diff --git a/asm/Kyoto_CWD/BodyState/CABSAim.s b/asm/Kyoto_CWD/BodyState/CABSAim.s new file mode 100644 index 00000000..22ebe663 --- /dev/null +++ b/asm/Kyoto_CWD/BodyState/CABSAim.s @@ -0,0 +1,536 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__7CABSAimFv +__dt__7CABSAimFv: +/* 801D9D18 001D6C78 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D9D1C 001D6C7C 7C 08 02 A6 */ mflr r0 +/* 801D9D20 001D6C80 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D9D24 001D6C84 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801D9D28 001D6C88 7C 7F 1B 79 */ or. r31, r3, r3 +/* 801D9D2C 001D6C8C 41 82 00 30 */ beq lbl_801D9D5C +/* 801D9D30 001D6C90 3C 60 80 3E */ lis r3, lbl_803E5CA0@ha +/* 801D9D34 001D6C94 38 03 5C A0 */ addi r0, r3, lbl_803E5CA0@l +/* 801D9D38 001D6C98 90 1F 00 00 */ stw r0, 0(r31) +/* 801D9D3C 001D6C9C 41 82 00 10 */ beq lbl_801D9D4C +/* 801D9D40 001D6CA0 3C 60 80 3E */ lis r3, lbl_803E1350@ha +/* 801D9D44 001D6CA4 38 03 13 50 */ addi r0, r3, lbl_803E1350@l +/* 801D9D48 001D6CA8 90 1F 00 00 */ stw r0, 0(r31) +lbl_801D9D4C: +/* 801D9D4C 001D6CAC 7C 80 07 35 */ extsh. r0, r4 +/* 801D9D50 001D6CB0 40 81 00 0C */ ble lbl_801D9D5C +/* 801D9D54 001D6CB4 7F E3 FB 78 */ mr r3, r31 +/* 801D9D58 001D6CB8 48 13 BB D9 */ bl Free__7CMemoryFPCv +lbl_801D9D5C: +/* 801D9D5C 001D6CBC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D9D60 001D6CC0 7F E3 FB 78 */ mr r3, r31 +/* 801D9D64 001D6CC4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801D9D68 001D6CC8 7C 08 03 A6 */ mtlr r0 +/* 801D9D6C 001D6CCC 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D9D70 001D6CD0 4E 80 00 20 */ blr + +.global GetBodyStateTransition__7CABSAimFfR15CBodyController +GetBodyStateTransition__7CABSAimFfR15CBodyController: +/* 801D9D74 001D6CD4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D9D78 001D6CD8 7C 08 02 A6 */ mflr r0 +/* 801D9D7C 001D6CDC 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D9D80 001D6CE0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801D9D84 001D6CE4 3B E4 00 04 */ addi r31, r4, 4 +/* 801D9D88 001D6CE8 38 80 00 1A */ li r4, 0x1a +/* 801D9D8C 001D6CEC 93 C1 00 08 */ stw r30, 8(r1) +/* 801D9D90 001D6CF0 7C 7E 1B 78 */ mr r30, r3 +/* 801D9D94 001D6CF4 7F E3 FB 78 */ mr r3, r31 +/* 801D9D98 001D6CF8 4B F5 76 B9 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801D9D9C 001D6CFC 28 03 00 00 */ cmplwi r3, 0 +/* 801D9DA0 001D6D00 41 82 00 0C */ beq lbl_801D9DAC +/* 801D9DA4 001D6D04 38 60 00 18 */ li r3, 0x18 +/* 801D9DA8 001D6D08 48 00 00 4C */ b lbl_801D9DF4 +lbl_801D9DAC: +/* 801D9DAC 001D6D0C 7F E3 FB 78 */ mr r3, r31 +/* 801D9DB0 001D6D10 38 80 00 19 */ li r4, 0x19 +/* 801D9DB4 001D6D14 4B F5 76 9D */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801D9DB8 001D6D18 28 03 00 00 */ cmplwi r3, 0 +/* 801D9DBC 001D6D1C 41 82 00 0C */ beq lbl_801D9DC8 +/* 801D9DC0 001D6D20 38 60 00 17 */ li r3, 0x17 +/* 801D9DC4 001D6D24 48 00 00 30 */ b lbl_801D9DF4 +lbl_801D9DC8: +/* 801D9DC8 001D6D28 7F E3 FB 78 */ mr r3, r31 +/* 801D9DCC 001D6D2C 38 80 00 17 */ li r4, 0x17 +/* 801D9DD0 001D6D30 4B F5 76 81 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801D9DD4 001D6D34 28 03 00 00 */ cmplwi r3, 0 +/* 801D9DD8 001D6D38 40 82 00 10 */ bne lbl_801D9DE8 +/* 801D9DDC 001D6D3C 88 1E 00 04 */ lbz r0, 4(r30) +/* 801D9DE0 001D6D40 28 00 00 00 */ cmplwi r0, 0 +/* 801D9DE4 001D6D44 41 82 00 0C */ beq lbl_801D9DF0 +lbl_801D9DE8: +/* 801D9DE8 001D6D48 38 60 00 15 */ li r3, 0x15 +/* 801D9DEC 001D6D4C 48 00 00 08 */ b lbl_801D9DF4 +lbl_801D9DF0: +/* 801D9DF0 001D6D50 38 60 FF FF */ li r3, -1 +lbl_801D9DF4: +/* 801D9DF4 001D6D54 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D9DF8 001D6D58 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801D9DFC 001D6D5C 83 C1 00 08 */ lwz r30, 8(r1) +/* 801D9E00 001D6D60 7C 08 03 A6 */ mtlr r0 +/* 801D9E04 001D6D64 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D9E08 001D6D68 4E 80 00 20 */ blr + +.global Shutdown__7CABSAimFR15CBodyController +Shutdown__7CABSAimFR15CBodyController: +/* 801D9E0C 001D6D6C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D9E10 001D6D70 7C 08 02 A6 */ mflr r0 +/* 801D9E14 001D6D74 C0 02 AC B0 */ lfs f0, lbl_805AC9D0@sda21(r2) +/* 801D9E18 001D6D78 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D9E1C 001D6D7C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801D9E20 001D6D80 93 C1 00 08 */ stw r30, 8(r1) +/* 801D9E24 001D6D84 7C 7E 1B 78 */ mr r30, r3 +/* 801D9E28 001D6D88 80 64 00 00 */ lwz r3, 0(r4) +/* 801D9E2C 001D6D8C C0 3E 00 28 */ lfs f1, 0x28(r30) +/* 801D9E30 001D6D90 80 63 00 64 */ lwz r3, 0x64(r3) +/* 801D9E34 001D6D94 FC 00 08 00 */ fcmpu cr0, f0, f1 +/* 801D9E38 001D6D98 83 E3 00 10 */ lwz r31, 0x10(r3) +/* 801D9E3C 001D6D9C 41 82 00 2C */ beq lbl_801D9E68 +/* 801D9E40 001D6DA0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801D9E44 001D6DA4 7F E3 FB 78 */ mr r3, r31 +/* 801D9E48 001D6DA8 40 80 00 0C */ bge lbl_801D9E54 +/* 801D9E4C 001D6DAC 38 00 00 00 */ li r0, 0 +/* 801D9E50 001D6DB0 48 00 00 08 */ b lbl_801D9E58 +lbl_801D9E54: +/* 801D9E54 001D6DB4 38 00 00 01 */ li r0, 1 +lbl_801D9E58: +/* 801D9E58 001D6DB8 54 00 10 3A */ slwi r0, r0, 2 +/* 801D9E5C 001D6DBC 7C 9E 02 14 */ add r4, r30, r0 +/* 801D9E60 001D6DC0 80 84 00 08 */ lwz r4, 8(r4) +/* 801D9E64 001D6DC4 4B E5 02 F5 */ bl DelAdditiveAnimation__9CAnimDataFUi +lbl_801D9E68: +/* 801D9E68 001D6DC8 C0 02 AC B0 */ lfs f0, lbl_805AC9D0@sda21(r2) +/* 801D9E6C 001D6DCC C0 3E 00 30 */ lfs f1, 0x30(r30) +/* 801D9E70 001D6DD0 FC 00 08 00 */ fcmpu cr0, f0, f1 +/* 801D9E74 001D6DD4 41 82 00 2C */ beq lbl_801D9EA0 +/* 801D9E78 001D6DD8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801D9E7C 001D6DDC 7F E3 FB 78 */ mr r3, r31 +/* 801D9E80 001D6DE0 40 81 00 0C */ ble lbl_801D9E8C +/* 801D9E84 001D6DE4 38 00 00 02 */ li r0, 2 +/* 801D9E88 001D6DE8 48 00 00 08 */ b lbl_801D9E90 +lbl_801D9E8C: +/* 801D9E8C 001D6DEC 38 00 00 03 */ li r0, 3 +lbl_801D9E90: +/* 801D9E90 001D6DF0 54 00 10 3A */ slwi r0, r0, 2 +/* 801D9E94 001D6DF4 7C 9E 02 14 */ add r4, r30, r0 +/* 801D9E98 001D6DF8 80 84 00 08 */ lwz r4, 8(r4) +/* 801D9E9C 001D6DFC 4B E5 02 BD */ bl DelAdditiveAnimation__9CAnimDataFUi +lbl_801D9EA0: +/* 801D9EA0 001D6E00 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D9EA4 001D6E04 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801D9EA8 001D6E08 83 C1 00 08 */ lwz r30, 8(r1) +/* 801D9EAC 001D6E0C 7C 08 03 A6 */ mtlr r0 +/* 801D9EB0 001D6E10 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D9EB4 001D6E14 4E 80 00 20 */ blr + +.global UpdateBody__7CABSAimFfR15CBodyControllerR13CStateManager +UpdateBody__7CABSAimFfR15CBodyControllerR13CStateManager: +/* 801D9EB8 001D6E18 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 801D9EBC 001D6E1C 7C 08 02 A6 */ mflr r0 +/* 801D9EC0 001D6E20 90 01 00 74 */ stw r0, 0x74(r1) +/* 801D9EC4 001D6E24 DB E1 00 60 */ stfd f31, 0x60(r1) +/* 801D9EC8 001D6E28 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 801D9ECC 001D6E2C DB C1 00 50 */ stfd f30, 0x50(r1) +/* 801D9ED0 001D6E30 F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 +/* 801D9ED4 001D6E34 DB A1 00 40 */ stfd f29, 0x40(r1) +/* 801D9ED8 001D6E38 F3 A1 00 48 */ psq_st f29, 72(r1), 0, qr0 +/* 801D9EDC 001D6E3C 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801D9EE0 001D6E40 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801D9EE4 001D6E44 93 A1 00 34 */ stw r29, 0x34(r1) +/* 801D9EE8 001D6E48 FF C0 08 90 */ fmr f30, f1 +/* 801D9EEC 001D6E4C 7C 7E 1B 78 */ mr r30, r3 +/* 801D9EF0 001D6E50 7C 9D 23 78 */ mr r29, r4 +/* 801D9EF4 001D6E54 4B FF FE 81 */ bl GetBodyStateTransition__7CABSAimFfR15CBodyController +/* 801D9EF8 001D6E58 7C 7F 1B 78 */ mr r31, r3 +/* 801D9EFC 001D6E5C 2C 1F FF FF */ cmpwi r31, -1 +/* 801D9F00 001D6E60 40 82 02 F4 */ bne lbl_801DA1F4 +/* 801D9F04 001D6E64 C0 1D 00 28 */ lfs f0, 0x28(r29) +/* 801D9F08 001D6E68 38 61 00 20 */ addi r3, r1, 0x20 +/* 801D9F0C 001D6E6C D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801D9F10 001D6E70 C0 1D 00 2C */ lfs f0, 0x2c(r29) +/* 801D9F14 001D6E74 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801D9F18 001D6E78 C0 1D 00 30 */ lfs f0, 0x30(r29) +/* 801D9F1C 001D6E7C D0 01 00 28 */ stfs f0, 0x28(r1) +/* 801D9F20 001D6E80 48 13 A7 D9 */ bl CanBeNormalized__9CVector3fCFv +/* 801D9F24 001D6E84 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801D9F28 001D6E88 41 82 02 CC */ beq lbl_801DA1F4 +/* 801D9F2C 001D6E8C C0 21 00 20 */ lfs f1, 0x20(r1) +/* 801D9F30 001D6E90 C0 41 00 24 */ lfs f2, 0x24(r1) +/* 801D9F34 001D6E94 48 1B AD 39 */ bl atan2 +/* 801D9F38 001D6E98 FC 00 08 18 */ frsp f0, f1 +/* 801D9F3C 001D6E9C 38 61 00 0C */ addi r3, r1, 0xc +/* 801D9F40 001D6EA0 38 81 00 1C */ addi r4, r1, 0x1c +/* 801D9F44 001D6EA4 38 BE 00 1C */ addi r5, r30, 0x1c +/* 801D9F48 001D6EA8 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801D9F4C 001D6EAC C0 1E 00 18 */ lfs f0, 0x18(r30) +/* 801D9F50 001D6EB0 FC 00 00 50 */ fneg f0, f0 +/* 801D9F54 001D6EB4 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801D9F58 001D6EB8 4B E3 23 5D */ bl "Clamp__5CMathFRCfRCfRCf" +/* 801D9F5C 001D6EBC C0 23 00 00 */ lfs f1, 0(r3) +/* 801D9F60 001D6EC0 38 81 00 18 */ addi r4, r1, 0x18 +/* 801D9F64 001D6EC4 C0 02 AC BC */ lfs f0, lbl_805AC9DC@sda21(r2) +/* 801D9F68 001D6EC8 38 6D 91 D8 */ addi r3, r13, lbl_805A7D98@sda21 +/* 801D9F6C 001D6ECC D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 801D9F70 001D6ED0 38 A2 AC B4 */ addi r5, r2, lbl_805AC9D4@sda21 +/* 801D9F74 001D6ED4 EC 40 00 72 */ fmuls f2, f0, f1 +/* 801D9F78 001D6ED8 C0 22 AC C0 */ lfs f1, lbl_805AC9E0@sda21(r2) +/* 801D9F7C 001D6EDC D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 801D9F80 001D6EE0 C0 1E 00 28 */ lfs f0, 0x28(r30) +/* 801D9F84 001D6EE4 EC 02 00 28 */ fsubs f0, f2, f0 +/* 801D9F88 001D6EE8 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801D9F8C 001D6EEC EC 00 F0 24 */ fdivs f0, f0, f30 +/* 801D9F90 001D6EF0 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801D9F94 001D6EF4 4B E3 23 21 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 801D9F98 001D6EF8 C0 23 00 00 */ lfs f1, 0(r3) +/* 801D9F9C 001D6EFC 38 81 00 14 */ addi r4, r1, 0x14 +/* 801D9FA0 001D6F00 38 6D 91 DC */ addi r3, r13, lbl_805A7D9C@sda21 +/* 801D9FA4 001D6F04 38 A2 AC B8 */ addi r5, r2, lbl_805AC9D8@sda21 +/* 801D9FA8 001D6F08 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801D9FAC 001D6F0C C0 1E 00 2C */ lfs f0, 0x2c(r30) +/* 801D9FB0 001D6F10 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801D9FB4 001D6F14 EC 00 F0 24 */ fdivs f0, f0, f30 +/* 801D9FB8 001D6F18 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801D9FBC 001D6F1C 4B E3 22 F9 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 801D9FC0 001D6F20 C0 23 00 00 */ lfs f1, 0(r3) +/* 801D9FC4 001D6F24 C0 1E 00 2C */ lfs f0, 0x2c(r30) +/* 801D9FC8 001D6F28 EC 1E 00 7A */ fmadds f0, f30, f1, f0 +/* 801D9FCC 001D6F2C D0 1E 00 2C */ stfs f0, 0x2c(r30) +/* 801D9FD0 001D6F30 C0 21 00 24 */ lfs f1, 0x24(r1) +/* 801D9FD4 001D6F34 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 801D9FD8 001D6F38 EC 21 00 72 */ fmuls f1, f1, f1 +/* 801D9FDC 001D6F3C EC 00 00 32 */ fmuls f0, f0, f0 +/* 801D9FE0 001D6F40 EC 21 00 2A */ fadds f1, f1, f0 +/* 801D9FE4 001D6F44 48 13 B5 1D */ bl SqrtF__5CMathFf +/* 801D9FE8 001D6F48 FC 40 08 90 */ fmr f2, f1 +/* 801D9FEC 001D6F4C C0 21 00 28 */ lfs f1, 0x28(r1) +/* 801D9FF0 001D6F50 48 1B AC 7D */ bl atan2 +/* 801D9FF4 001D6F54 FC 00 08 18 */ frsp f0, f1 +/* 801D9FF8 001D6F58 38 61 00 08 */ addi r3, r1, 8 +/* 801D9FFC 001D6F5C 38 81 00 10 */ addi r4, r1, 0x10 +/* 801DA000 001D6F60 38 BE 00 20 */ addi r5, r30, 0x20 +/* 801DA004 001D6F64 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801DA008 001D6F68 C0 1E 00 24 */ lfs f0, 0x24(r30) +/* 801DA00C 001D6F6C FC 00 00 50 */ fneg f0, f0 +/* 801DA010 001D6F70 D0 01 00 08 */ stfs f0, 8(r1) +/* 801DA014 001D6F74 4B E3 22 A1 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 801DA018 001D6F78 C0 23 00 00 */ lfs f1, 0(r3) +/* 801DA01C 001D6F7C 38 81 00 18 */ addi r4, r1, 0x18 +/* 801DA020 001D6F80 C0 02 AC BC */ lfs f0, lbl_805AC9DC@sda21(r2) +/* 801DA024 001D6F84 38 6D 91 E0 */ addi r3, r13, lbl_805A7DA0@sda21 +/* 801DA028 001D6F88 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 801DA02C 001D6F8C 38 A2 AC B4 */ addi r5, r2, lbl_805AC9D4@sda21 +/* 801DA030 001D6F90 EC 40 00 72 */ fmuls f2, f0, f1 +/* 801DA034 001D6F94 C0 22 AC C0 */ lfs f1, lbl_805AC9E0@sda21(r2) +/* 801DA038 001D6F98 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 801DA03C 001D6F9C C0 1E 00 30 */ lfs f0, 0x30(r30) +/* 801DA040 001D6FA0 EC 02 00 28 */ fsubs f0, f2, f0 +/* 801DA044 001D6FA4 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801DA048 001D6FA8 EC 00 F0 24 */ fdivs f0, f0, f30 +/* 801DA04C 001D6FAC D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801DA050 001D6FB0 4B E3 22 65 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 801DA054 001D6FB4 C0 23 00 00 */ lfs f1, 0(r3) +/* 801DA058 001D6FB8 38 81 00 14 */ addi r4, r1, 0x14 +/* 801DA05C 001D6FBC 38 6D 91 E4 */ addi r3, r13, lbl_805A7DA4@sda21 +/* 801DA060 001D6FC0 38 A2 AC B8 */ addi r5, r2, lbl_805AC9D8@sda21 +/* 801DA064 001D6FC4 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801DA068 001D6FC8 C0 1E 00 34 */ lfs f0, 0x34(r30) +/* 801DA06C 001D6FCC EC 01 00 28 */ fsubs f0, f1, f0 +/* 801DA070 001D6FD0 EC 00 F0 24 */ fdivs f0, f0, f30 +/* 801DA074 001D6FD4 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801DA078 001D6FD8 4B E3 22 3D */ bl "Clamp__5CMathFRCfRCfRCf" +/* 801DA07C 001D6FDC C0 23 00 00 */ lfs f1, 0(r3) +/* 801DA080 001D6FE0 C0 1E 00 34 */ lfs f0, 0x34(r30) +/* 801DA084 001D6FE4 EC 1E 00 7A */ fmadds f0, f30, f1, f0 +/* 801DA088 001D6FE8 D0 1E 00 34 */ stfs f0, 0x34(r30) +/* 801DA08C 001D6FEC C0 1E 00 2C */ lfs f0, 0x2c(r30) +/* 801DA090 001D6FF0 C0 7E 00 28 */ lfs f3, 0x28(r30) +/* 801DA094 001D6FF4 80 7D 00 00 */ lwz r3, 0(r29) +/* 801DA098 001D6FF8 EF FE 18 3A */ fmadds f31, f30, f0, f3 +/* 801DA09C 001D6FFC C0 3E 00 34 */ lfs f1, 0x34(r30) +/* 801DA0A0 001D7000 C0 1E 00 30 */ lfs f0, 0x30(r30) +/* 801DA0A4 001D7004 80 63 00 64 */ lwz r3, 0x64(r3) +/* 801DA0A8 001D7008 FC 1F 18 00 */ fcmpu cr0, f31, f3 +/* 801DA0AC 001D700C EF BE 00 7A */ fmadds f29, f30, f1, f0 +/* 801DA0B0 001D7010 83 A3 00 10 */ lwz r29, 0x10(r3) +/* 801DA0B4 001D7014 41 82 00 98 */ beq lbl_801DA14C +/* 801DA0B8 001D7018 FC 00 1A 10 */ fabs f0, f3 +/* 801DA0BC 001D701C C0 22 AC B0 */ lfs f1, lbl_805AC9D0@sda21(r2) +/* 801DA0C0 001D7020 FC 40 FA 10 */ fabs f2, f31 +/* 801DA0C4 001D7024 FC 00 00 18 */ frsp f0, f0 +/* 801DA0C8 001D7028 FF C0 10 18 */ frsp f30, f2 +/* 801DA0CC 001D702C FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801DA0D0 001D7030 40 81 00 3C */ ble lbl_801DA10C +/* 801DA0D4 001D7034 EC 03 07 F2 */ fmuls f0, f3, f31 +/* 801DA0D8 001D7038 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801DA0DC 001D703C 4C 40 13 82 */ cror 2, 0, 2 +/* 801DA0E0 001D7040 40 82 00 2C */ bne lbl_801DA10C +/* 801DA0E4 001D7044 FC 03 08 40 */ fcmpo cr0, f3, f1 +/* 801DA0E8 001D7048 7F A3 EB 78 */ mr r3, r29 +/* 801DA0EC 001D704C 40 80 00 0C */ bge lbl_801DA0F8 +/* 801DA0F0 001D7050 38 00 00 00 */ li r0, 0 +/* 801DA0F4 001D7054 48 00 00 08 */ b lbl_801DA0FC +lbl_801DA0F8: +/* 801DA0F8 001D7058 38 00 00 01 */ li r0, 1 +lbl_801DA0FC: +/* 801DA0FC 001D705C 54 00 10 3A */ slwi r0, r0, 2 +/* 801DA100 001D7060 7C 9E 02 14 */ add r4, r30, r0 +/* 801DA104 001D7064 80 84 00 08 */ lwz r4, 8(r4) +/* 801DA108 001D7068 4B E5 00 51 */ bl DelAdditiveAnimation__9CAnimDataFUi +lbl_801DA10C: +/* 801DA10C 001D706C C0 02 AC B0 */ lfs f0, lbl_805AC9D0@sda21(r2) +/* 801DA110 001D7070 FC 1E 00 40 */ fcmpo cr0, f30, f0 +/* 801DA114 001D7074 40 81 00 38 */ ble lbl_801DA14C +/* 801DA118 001D7078 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 801DA11C 001D707C 7F A3 EB 78 */ mr r3, r29 +/* 801DA120 001D7080 40 80 00 0C */ bge lbl_801DA12C +/* 801DA124 001D7084 38 00 00 00 */ li r0, 0 +/* 801DA128 001D7088 48 00 00 08 */ b lbl_801DA130 +lbl_801DA12C: +/* 801DA12C 001D708C 38 00 00 01 */ li r0, 1 +lbl_801DA130: +/* 801DA130 001D7090 54 00 10 3A */ slwi r0, r0, 2 +/* 801DA134 001D7094 FC 20 F0 90 */ fmr f1, f30 +/* 801DA138 001D7098 7C 9E 02 14 */ add r4, r30, r0 +/* 801DA13C 001D709C 38 A0 00 00 */ li r5, 0 +/* 801DA140 001D70A0 80 84 00 08 */ lwz r4, 8(r4) +/* 801DA144 001D70A4 38 C0 00 00 */ li r6, 0 +/* 801DA148 001D70A8 4B E5 00 89 */ bl AddAdditiveAnimation__9CAnimDataFUifbb +lbl_801DA14C: +/* 801DA14C 001D70AC C0 5E 00 30 */ lfs f2, 0x30(r30) +/* 801DA150 001D70B0 FC 1D 10 00 */ fcmpu cr0, f29, f2 +/* 801DA154 001D70B4 41 82 00 98 */ beq lbl_801DA1EC +/* 801DA158 001D70B8 FC 00 12 10 */ fabs f0, f2 +/* 801DA15C 001D70BC C0 22 AC B0 */ lfs f1, lbl_805AC9D0@sda21(r2) +/* 801DA160 001D70C0 FC 60 EA 10 */ fabs f3, f29 +/* 801DA164 001D70C4 FC 00 00 18 */ frsp f0, f0 +/* 801DA168 001D70C8 FF C0 18 18 */ frsp f30, f3 +/* 801DA16C 001D70CC FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801DA170 001D70D0 40 81 00 3C */ ble lbl_801DA1AC +/* 801DA174 001D70D4 EC 02 07 72 */ fmuls f0, f2, f29 +/* 801DA178 001D70D8 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801DA17C 001D70DC 4C 40 13 82 */ cror 2, 0, 2 +/* 801DA180 001D70E0 40 82 00 2C */ bne lbl_801DA1AC +/* 801DA184 001D70E4 FC 02 08 40 */ fcmpo cr0, f2, f1 +/* 801DA188 001D70E8 7F A3 EB 78 */ mr r3, r29 +/* 801DA18C 001D70EC 40 81 00 0C */ ble lbl_801DA198 +/* 801DA190 001D70F0 38 00 00 02 */ li r0, 2 +/* 801DA194 001D70F4 48 00 00 08 */ b lbl_801DA19C +lbl_801DA198: +/* 801DA198 001D70F8 38 00 00 03 */ li r0, 3 +lbl_801DA19C: +/* 801DA19C 001D70FC 54 00 10 3A */ slwi r0, r0, 2 +/* 801DA1A0 001D7100 7C 9E 02 14 */ add r4, r30, r0 +/* 801DA1A4 001D7104 80 84 00 08 */ lwz r4, 8(r4) +/* 801DA1A8 001D7108 4B E4 FF B1 */ bl DelAdditiveAnimation__9CAnimDataFUi +lbl_801DA1AC: +/* 801DA1AC 001D710C C0 02 AC B0 */ lfs f0, lbl_805AC9D0@sda21(r2) +/* 801DA1B0 001D7110 FC 1E 00 40 */ fcmpo cr0, f30, f0 +/* 801DA1B4 001D7114 40 81 00 38 */ ble lbl_801DA1EC +/* 801DA1B8 001D7118 FC 1D 00 40 */ fcmpo cr0, f29, f0 +/* 801DA1BC 001D711C 7F A3 EB 78 */ mr r3, r29 +/* 801DA1C0 001D7120 40 81 00 0C */ ble lbl_801DA1CC +/* 801DA1C4 001D7124 38 00 00 02 */ li r0, 2 +/* 801DA1C8 001D7128 48 00 00 08 */ b lbl_801DA1D0 +lbl_801DA1CC: +/* 801DA1CC 001D712C 38 00 00 03 */ li r0, 3 +lbl_801DA1D0: +/* 801DA1D0 001D7130 54 00 10 3A */ slwi r0, r0, 2 +/* 801DA1D4 001D7134 FC 20 F0 90 */ fmr f1, f30 +/* 801DA1D8 001D7138 7C 9E 02 14 */ add r4, r30, r0 +/* 801DA1DC 001D713C 38 A0 00 00 */ li r5, 0 +/* 801DA1E0 001D7140 80 84 00 08 */ lwz r4, 8(r4) +/* 801DA1E4 001D7144 38 C0 00 00 */ li r6, 0 +/* 801DA1E8 001D7148 4B E4 FF E9 */ bl AddAdditiveAnimation__9CAnimDataFUifbb +lbl_801DA1EC: +/* 801DA1EC 001D714C D3 FE 00 28 */ stfs f31, 0x28(r30) +/* 801DA1F0 001D7150 D3 BE 00 30 */ stfs f29, 0x30(r30) +lbl_801DA1F4: +/* 801DA1F4 001D7154 7F E3 FB 78 */ mr r3, r31 +/* 801DA1F8 001D7158 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 801DA1FC 001D715C CB E1 00 60 */ lfd f31, 0x60(r1) +/* 801DA200 001D7160 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 +/* 801DA204 001D7164 CB C1 00 50 */ lfd f30, 0x50(r1) +/* 801DA208 001D7168 E3 A1 00 48 */ psq_l f29, 72(r1), 0, qr0 +/* 801DA20C 001D716C CB A1 00 40 */ lfd f29, 0x40(r1) +/* 801DA210 001D7170 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801DA214 001D7174 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801DA218 001D7178 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801DA21C 001D717C 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 801DA220 001D7180 7C 08 03 A6 */ mtlr r0 +/* 801DA224 001D7184 38 21 00 70 */ addi r1, r1, 0x70 +/* 801DA228 001D7188 4E 80 00 20 */ blr + +.global Start__7CABSAimFR15CBodyControllerR13CStateManager +Start__7CABSAimFR15CBodyControllerR13CStateManager: +/* 801DA22C 001D718C 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 801DA230 001D7190 7C 08 02 A6 */ mflr r0 +/* 801DA234 001D7194 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 801DA238 001D7198 DB E1 00 E0 */ stfd f31, 0xe0(r1) +/* 801DA23C 001D719C F3 E1 00 E8 */ psq_st f31, 232(r1), 0, qr0 +/* 801DA240 001D71A0 BE E1 00 BC */ stmw r23, 0xbc(r1) +/* 801DA244 001D71A4 7C 9A 23 78 */ mr r26, r4 +/* 801DA248 001D71A8 7C 79 1B 78 */ mr r25, r3 +/* 801DA24C 001D71AC 7C BB 2B 78 */ mr r27, r5 +/* 801DA250 001D71B0 38 80 00 18 */ li r4, 0x18 +/* 801DA254 001D71B4 38 7A 00 04 */ addi r3, r26, 4 +/* 801DA258 001D71B8 4B F5 71 F9 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801DA25C 001D71BC 7F 43 D3 78 */ mr r3, r26 +/* 801DA260 001D71C0 4B F6 01 F5 */ bl GetPASDatabase__15CBodyControllerCFv +/* 801DA264 001D71C4 38 80 00 16 */ li r4, 0x16 +/* 801DA268 001D71C8 48 10 AC 5D */ bl GetAnimState__12CPASDatabaseCFi +/* 801DA26C 001D71CC C3 E2 AC C4 */ lfs f31, lbl_805AC9E4@sda21(r2) +/* 801DA270 001D71D0 7C 7D 1B 78 */ mr r29, r3 +/* 801DA274 001D71D4 7F 3F CB 78 */ mr r31, r25 +/* 801DA278 001D71D8 3B C1 00 6C */ addi r30, r1, 0x6c +/* 801DA27C 001D71DC 3A E1 00 28 */ addi r23, r1, 0x28 +/* 801DA280 001D71E0 3B 01 00 20 */ addi r24, r1, 0x20 +/* 801DA284 001D71E4 3B 80 00 00 */ li r28, 0 +lbl_801DA288: +/* 801DA288 001D71E8 38 61 00 20 */ addi r3, r1, 0x20 +/* 801DA28C 001D71EC 48 10 8D F1 */ bl NoParameter__12CPASAnimParmFv +/* 801DA290 001D71F0 38 61 00 28 */ addi r3, r1, 0x28 +/* 801DA294 001D71F4 48 10 8D E9 */ bl NoParameter__12CPASAnimParmFv +/* 801DA298 001D71F8 38 61 00 30 */ addi r3, r1, 0x30 +/* 801DA29C 001D71FC 48 10 8D E1 */ bl NoParameter__12CPASAnimParmFv +/* 801DA2A0 001D7200 38 61 00 38 */ addi r3, r1, 0x38 +/* 801DA2A4 001D7204 48 10 8D D9 */ bl NoParameter__12CPASAnimParmFv +/* 801DA2A8 001D7208 38 61 00 40 */ addi r3, r1, 0x40 +/* 801DA2AC 001D720C 48 10 8D D1 */ bl NoParameter__12CPASAnimParmFv +/* 801DA2B0 001D7210 38 61 00 48 */ addi r3, r1, 0x48 +/* 801DA2B4 001D7214 48 10 8D C9 */ bl NoParameter__12CPASAnimParmFv +/* 801DA2B8 001D7218 38 61 00 50 */ addi r3, r1, 0x50 +/* 801DA2BC 001D721C 48 10 8D C1 */ bl NoParameter__12CPASAnimParmFv +/* 801DA2C0 001D7220 7F 84 E3 78 */ mr r4, r28 +/* 801DA2C4 001D7224 38 61 00 58 */ addi r3, r1, 0x58 +/* 801DA2C8 001D7228 48 10 8C BD */ bl FromEnum__12CPASAnimParmFi +/* 801DA2CC 001D722C 92 E1 00 08 */ stw r23, 8(r1) +/* 801DA2D0 001D7230 38 61 00 68 */ addi r3, r1, 0x68 +/* 801DA2D4 001D7234 38 A1 00 58 */ addi r5, r1, 0x58 +/* 801DA2D8 001D7238 38 C1 00 50 */ addi r6, r1, 0x50 +/* 801DA2DC 001D723C 93 01 00 0C */ stw r24, 0xc(r1) +/* 801DA2E0 001D7240 38 E1 00 48 */ addi r7, r1, 0x48 +/* 801DA2E4 001D7244 39 01 00 40 */ addi r8, r1, 0x40 +/* 801DA2E8 001D7248 39 21 00 38 */ addi r9, r1, 0x38 +/* 801DA2EC 001D724C 39 41 00 30 */ addi r10, r1, 0x30 +/* 801DA2F0 001D7250 38 80 00 16 */ li r4, 0x16 +/* 801DA2F4 001D7254 4B EA 2F D1 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 801DA2F8 001D7258 7F 43 D3 78 */ mr r3, r26 +/* 801DA2FC 001D725C 4B F6 01 59 */ bl GetPASDatabase__15CBodyControllerCFv +/* 801DA300 001D7260 80 DB 09 00 */ lwz r6, 0x900(r27) +/* 801DA304 001D7264 7C 64 1B 78 */ mr r4, r3 +/* 801DA308 001D7268 38 61 00 18 */ addi r3, r1, 0x18 +/* 801DA30C 001D726C 38 A1 00 68 */ addi r5, r1, 0x68 +/* 801DA310 001D7270 38 E0 FF FF */ li r7, -1 +/* 801DA314 001D7274 48 10 AD 4D */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i +/* 801DA318 001D7278 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 801DA31C 001D727C 7F A4 EB 78 */ mr r4, r29 +/* 801DA320 001D7280 38 61 00 10 */ addi r3, r1, 0x10 +/* 801DA324 001D7284 38 C0 00 01 */ li r6, 1 +/* 801DA328 001D7288 90 1F 00 08 */ stw r0, 8(r31) +/* 801DA32C 001D728C 80 BF 00 08 */ lwz r5, 8(r31) +/* 801DA330 001D7290 48 10 9C C5 */ bl GetAnimParmData__13CPASAnimStateCFiUi +/* 801DA334 001D7294 80 81 00 10 */ lwz r4, 0x10(r1) +/* 801DA338 001D7298 38 61 00 60 */ addi r3, r1, 0x60 +/* 801DA33C 001D729C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801DA340 001D72A0 90 81 00 60 */ stw r4, 0x60(r1) +/* 801DA344 001D72A4 90 01 00 64 */ stw r0, 0x64(r1) +/* 801DA348 001D72A8 48 10 8C 25 */ bl GetReal32Value__12CPASAnimParmCFv +/* 801DA34C 001D72AC EC 1F 00 72 */ fmuls f0, f31, f1 +/* 801DA350 001D72B0 28 1E 00 00 */ cmplwi r30, 0 +/* 801DA354 001D72B4 D0 1F 00 18 */ stfs f0, 0x18(r31) +/* 801DA358 001D72B8 41 82 00 5C */ beq lbl_801DA3B4 +/* 801DA35C 001D72BC 80 A1 00 6C */ lwz r5, 0x6c(r1) +/* 801DA360 001D72C0 38 60 00 00 */ li r3, 0 +/* 801DA364 001D72C4 2C 05 00 00 */ cmpwi r5, 0 +/* 801DA368 001D72C8 40 81 00 44 */ ble lbl_801DA3AC +/* 801DA36C 001D72CC 2C 05 00 08 */ cmpwi r5, 8 +/* 801DA370 001D72D0 38 85 FF F8 */ addi r4, r5, -8 +/* 801DA374 001D72D4 40 81 00 20 */ ble lbl_801DA394 +/* 801DA378 001D72D8 38 04 00 07 */ addi r0, r4, 7 +/* 801DA37C 001D72DC 54 00 E8 FE */ srwi r0, r0, 3 +/* 801DA380 001D72E0 7C 09 03 A6 */ mtctr r0 +/* 801DA384 001D72E4 2C 04 00 00 */ cmpwi r4, 0 +/* 801DA388 001D72E8 40 81 00 0C */ ble lbl_801DA394 +lbl_801DA38C: +/* 801DA38C 001D72EC 38 63 00 08 */ addi r3, r3, 8 +/* 801DA390 001D72F0 42 00 FF FC */ bdnz lbl_801DA38C +lbl_801DA394: +/* 801DA394 001D72F4 7C 03 28 50 */ subf r0, r3, r5 +/* 801DA398 001D72F8 7C 09 03 A6 */ mtctr r0 +/* 801DA39C 001D72FC 7C 03 28 00 */ cmpw r3, r5 +/* 801DA3A0 001D7300 40 80 00 0C */ bge lbl_801DA3AC +lbl_801DA3A4: +/* 801DA3A4 001D7304 38 63 00 01 */ addi r3, r3, 1 +/* 801DA3A8 001D7308 42 00 FF FC */ bdnz lbl_801DA3A4 +lbl_801DA3AC: +/* 801DA3AC 001D730C 38 00 00 00 */ li r0, 0 +/* 801DA3B0 001D7310 90 01 00 6C */ stw r0, 0x6c(r1) +lbl_801DA3B4: +/* 801DA3B4 001D7314 3B 9C 00 01 */ addi r28, r28, 1 +/* 801DA3B8 001D7318 3B FF 00 04 */ addi r31, r31, 4 +/* 801DA3BC 001D731C 2C 1C 00 04 */ cmpwi r28, 4 +/* 801DA3C0 001D7320 41 80 FE C8 */ blt lbl_801DA288 +/* 801DA3C4 001D7324 80 7A 00 00 */ lwz r3, 0(r26) +/* 801DA3C8 001D7328 80 99 00 08 */ lwz r4, 8(r25) +/* 801DA3CC 001D732C 80 63 00 64 */ lwz r3, 0x64(r3) +/* 801DA3D0 001D7330 82 E3 00 10 */ lwz r23, 0x10(r3) +/* 801DA3D4 001D7334 7E E3 BB 78 */ mr r3, r23 +/* 801DA3D8 001D7338 4B E4 FD 39 */ bl GetAdditiveAnimationWeight__9CAnimDataFUi +/* 801DA3DC 001D733C FC 00 08 50 */ fneg f0, f1 +/* 801DA3E0 001D7340 7E E3 BB 78 */ mr r3, r23 +/* 801DA3E4 001D7344 D0 19 00 28 */ stfs f0, 0x28(r25) +/* 801DA3E8 001D7348 80 99 00 0C */ lwz r4, 0xc(r25) +/* 801DA3EC 001D734C 4B E4 FD 25 */ bl GetAdditiveAnimationWeight__9CAnimDataFUi +/* 801DA3F0 001D7350 C0 19 00 28 */ lfs f0, 0x28(r25) +/* 801DA3F4 001D7354 7E E3 BB 78 */ mr r3, r23 +/* 801DA3F8 001D7358 EC 00 08 2A */ fadds f0, f0, f1 +/* 801DA3FC 001D735C D0 19 00 28 */ stfs f0, 0x28(r25) +/* 801DA400 001D7360 80 99 00 14 */ lwz r4, 0x14(r25) +/* 801DA404 001D7364 4B E4 FD 0D */ bl GetAdditiveAnimationWeight__9CAnimDataFUi +/* 801DA408 001D7368 FC 00 08 50 */ fneg f0, f1 +/* 801DA40C 001D736C 7E E3 BB 78 */ mr r3, r23 +/* 801DA410 001D7370 D0 19 00 30 */ stfs f0, 0x30(r25) +/* 801DA414 001D7374 80 99 00 10 */ lwz r4, 0x10(r25) +/* 801DA418 001D7378 4B E4 FC F9 */ bl GetAdditiveAnimationWeight__9CAnimDataFUi +/* 801DA41C 001D737C C0 19 00 30 */ lfs f0, 0x30(r25) +/* 801DA420 001D7380 38 00 00 00 */ li r0, 0 +/* 801DA424 001D7384 38 7A 00 04 */ addi r3, r26, 4 +/* 801DA428 001D7388 38 80 00 17 */ li r4, 0x17 +/* 801DA42C 001D738C EC 00 08 2A */ fadds f0, f0, f1 +/* 801DA430 001D7390 D0 19 00 30 */ stfs f0, 0x30(r25) +/* 801DA434 001D7394 98 19 00 04 */ stb r0, 4(r25) +/* 801DA438 001D7398 4B F5 70 19 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801DA43C 001D739C 28 03 00 00 */ cmplwi r3, 0 +/* 801DA440 001D73A0 41 82 00 0C */ beq lbl_801DA44C +/* 801DA444 001D73A4 38 00 00 01 */ li r0, 1 +/* 801DA448 001D73A8 98 19 00 04 */ stb r0, 4(r25) +lbl_801DA44C: +/* 801DA44C 001D73AC E3 E1 00 E8 */ psq_l f31, 232(r1), 0, qr0 +/* 801DA450 001D73B0 CB E1 00 E0 */ lfd f31, 0xe0(r1) +/* 801DA454 001D73B4 BA E1 00 BC */ lmw r23, 0xbc(r1) +/* 801DA458 001D73B8 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 801DA45C 001D73BC 7C 08 03 A6 */ mtlr r0 +/* 801DA460 001D73C0 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 801DA464 001D73C4 4E 80 00 20 */ blr + +.global __ct__7CABSAimFv +__ct__7CABSAimFv: +/* 801DA468 001D73C8 3C A0 80 3E */ lis r5, lbl_803E1350@ha +/* 801DA46C 001D73CC 3C 80 80 3E */ lis r4, lbl_803E5CA0@ha +/* 801DA470 001D73D0 38 A5 13 50 */ addi r5, r5, lbl_803E1350@l +/* 801DA474 001D73D4 38 00 00 00 */ li r0, 0 +/* 801DA478 001D73D8 90 A3 00 00 */ stw r5, 0(r3) +/* 801DA47C 001D73DC 38 84 5C A0 */ addi r4, r4, lbl_803E5CA0@l +/* 801DA480 001D73E0 C0 02 AC B0 */ lfs f0, lbl_805AC9D0@sda21(r2) +/* 801DA484 001D73E4 90 83 00 00 */ stw r4, 0(r3) +/* 801DA488 001D73E8 98 03 00 04 */ stb r0, 4(r3) +/* 801DA48C 001D73EC D0 03 00 28 */ stfs f0, 0x28(r3) +/* 801DA490 001D73F0 D0 03 00 2C */ stfs f0, 0x2c(r3) +/* 801DA494 001D73F4 D0 03 00 30 */ stfs f0, 0x30(r3) +/* 801DA498 001D73F8 D0 03 00 34 */ stfs f0, 0x34(r3) +/* 801DA49C 001D73FC 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/BodyState/CABSFlinch.s b/asm/Kyoto_CWD/BodyState/CABSFlinch.s new file mode 100644 index 00000000..cf16c7b1 --- /dev/null +++ b/asm/Kyoto_CWD/BodyState/CABSFlinch.s @@ -0,0 +1,215 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__10CABSFlinchFv +__dt__10CABSFlinchFv: +/* 801D9A34 001D6994 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D9A38 001D6998 7C 08 02 A6 */ mflr r0 +/* 801D9A3C 001D699C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D9A40 001D69A0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801D9A44 001D69A4 7C 7F 1B 79 */ or. r31, r3, r3 +/* 801D9A48 001D69A8 41 82 00 30 */ beq lbl_801D9A78 +/* 801D9A4C 001D69AC 3C 60 80 3E */ lis r3, lbl_803E5C80@ha +/* 801D9A50 001D69B0 38 03 5C 80 */ addi r0, r3, lbl_803E5C80@l +/* 801D9A54 001D69B4 90 1F 00 00 */ stw r0, 0(r31) +/* 801D9A58 001D69B8 41 82 00 10 */ beq lbl_801D9A68 +/* 801D9A5C 001D69BC 3C 60 80 3E */ lis r3, lbl_803E1350@ha +/* 801D9A60 001D69C0 38 03 13 50 */ addi r0, r3, lbl_803E1350@l +/* 801D9A64 001D69C4 90 1F 00 00 */ stw r0, 0(r31) +lbl_801D9A68: +/* 801D9A68 001D69C8 7C 80 07 35 */ extsh. r0, r4 +/* 801D9A6C 001D69CC 40 81 00 0C */ ble lbl_801D9A78 +/* 801D9A70 001D69D0 7F E3 FB 78 */ mr r3, r31 +/* 801D9A74 001D69D4 48 13 BE BD */ bl Free__7CMemoryFPCv +lbl_801D9A78: +/* 801D9A78 001D69D8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D9A7C 001D69DC 7F E3 FB 78 */ mr r3, r31 +/* 801D9A80 001D69E0 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801D9A84 001D69E4 7C 08 03 A6 */ mtlr r0 +/* 801D9A88 001D69E8 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D9A8C 001D69EC 4E 80 00 20 */ blr + +.global GetBodyStateTransition__10CABSFlinchFfR15CBodyController +GetBodyStateTransition__10CABSFlinchFfR15CBodyController: +/* 801D9A90 001D69F0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D9A94 001D69F4 7C 08 02 A6 */ mflr r0 +/* 801D9A98 001D69F8 38 64 00 04 */ addi r3, r4, 4 +/* 801D9A9C 001D69FC 38 80 00 1A */ li r4, 0x1a +/* 801D9AA0 001D6A00 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D9AA4 001D6A04 4B F5 79 AD */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801D9AA8 001D6A08 28 03 00 00 */ cmplwi r3, 0 +/* 801D9AAC 001D6A0C 38 60 FF FF */ li r3, -1 +/* 801D9AB0 001D6A10 41 82 00 08 */ beq lbl_801D9AB8 +/* 801D9AB4 001D6A14 38 60 00 18 */ li r3, 0x18 +lbl_801D9AB8: +/* 801D9AB8 001D6A18 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D9ABC 001D6A1C 7C 08 03 A6 */ mtlr r0 +/* 801D9AC0 001D6A20 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D9AC4 001D6A24 4E 80 00 20 */ blr + +.global Shutdown__10CABSFlinchFR15CBodyController +Shutdown__10CABSFlinchFR15CBodyController: +/* 801D9AC8 001D6A28 4E 80 00 20 */ blr + +.global UpdateBody__10CABSFlinchFfR15CBodyControllerR13CStateManager +UpdateBody__10CABSFlinchFfR15CBodyControllerR13CStateManager: +/* 801D9ACC 001D6A2C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801D9AD0 001D6A30 7C 08 02 A6 */ mflr r0 +/* 801D9AD4 001D6A34 90 01 00 24 */ stw r0, 0x24(r1) +/* 801D9AD8 001D6A38 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801D9ADC 001D6A3C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801D9AE0 001D6A40 7C 9E 23 78 */ mr r30, r4 +/* 801D9AE4 001D6A44 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801D9AE8 001D6A48 7C 7D 1B 78 */ mr r29, r3 +/* 801D9AEC 001D6A4C 4B FF FF A5 */ bl GetBodyStateTransition__10CABSFlinchFfR15CBodyController +/* 801D9AF0 001D6A50 7C 7F 1B 78 */ mr r31, r3 +/* 801D9AF4 001D6A54 2C 1F FF FF */ cmpwi r31, -1 +/* 801D9AF8 001D6A58 40 82 00 58 */ bne lbl_801D9B50 +/* 801D9AFC 001D6A5C 80 7E 00 00 */ lwz r3, 0(r30) +/* 801D9B00 001D6A60 80 9D 00 08 */ lwz r4, 8(r29) +/* 801D9B04 001D6A64 80 63 00 64 */ lwz r3, 0x64(r3) +/* 801D9B08 001D6A68 80 63 00 10 */ lwz r3, 0x10(r3) +/* 801D9B0C 001D6A6C 4B E5 05 7D */ bl GetAdditiveAnimationTree__9CAnimDataCFUi +/* 801D9B10 001D6A70 7C 64 1B 78 */ mr r4, r3 +/* 801D9B14 001D6A74 38 61 00 08 */ addi r3, r1, 8 +/* 801D9B18 001D6A78 80 84 00 00 */ lwz r4, 0(r4) +/* 801D9B1C 001D6A7C 80 84 00 00 */ lwz r4, 0(r4) +/* 801D9B20 001D6A80 81 84 00 00 */ lwz r12, 0(r4) +/* 801D9B24 001D6A84 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 801D9B28 001D6A88 7D 89 03 A6 */ mtctr r12 +/* 801D9B2C 001D6A8C 4E 80 04 21 */ bctrl +/* 801D9B30 001D6A90 C0 41 00 08 */ lfs f2, 8(r1) +/* 801D9B34 001D6A94 C0 22 AC A0 */ lfs f1, lbl_805AC9C0@sda21(r2) +/* 801D9B38 001D6A98 C0 02 AC A4 */ lfs f0, lbl_805AC9C4@sda21(r2) +/* 801D9B3C 001D6A9C EC 22 08 28 */ fsubs f1, f2, f1 +/* 801D9B40 001D6AA0 FC 20 0A 10 */ fabs f1, f1 +/* 801D9B44 001D6AA4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801D9B48 001D6AA8 40 80 00 08 */ bge lbl_801D9B50 +/* 801D9B4C 001D6AAC 3B E0 00 15 */ li r31, 0x15 +lbl_801D9B50: +/* 801D9B50 001D6AB0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801D9B54 001D6AB4 7F E3 FB 78 */ mr r3, r31 +/* 801D9B58 001D6AB8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801D9B5C 001D6ABC 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801D9B60 001D6AC0 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801D9B64 001D6AC4 7C 08 03 A6 */ mtlr r0 +/* 801D9B68 001D6AC8 38 21 00 20 */ addi r1, r1, 0x20 +/* 801D9B6C 001D6ACC 4E 80 00 20 */ blr + +.global Start__10CABSFlinchFR15CBodyControllerR13CStateManager +Start__10CABSFlinchFR15CBodyControllerR13CStateManager: +/* 801D9B70 001D6AD0 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 801D9B74 001D6AD4 7C 08 02 A6 */ mflr r0 +/* 801D9B78 001D6AD8 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 801D9B7C 001D6ADC 93 E1 00 AC */ stw r31, 0xac(r1) +/* 801D9B80 001D6AE0 93 C1 00 A8 */ stw r30, 0xa8(r1) +/* 801D9B84 001D6AE4 7C BE 2B 78 */ mr r30, r5 +/* 801D9B88 001D6AE8 93 A1 00 A4 */ stw r29, 0xa4(r1) +/* 801D9B8C 001D6AEC 7C 9D 23 78 */ mr r29, r4 +/* 801D9B90 001D6AF0 38 80 00 19 */ li r4, 0x19 +/* 801D9B94 001D6AF4 93 81 00 A0 */ stw r28, 0xa0(r1) +/* 801D9B98 001D6AF8 7C 7C 1B 78 */ mr r28, r3 +/* 801D9B9C 001D6AFC 38 7D 00 04 */ addi r3, r29, 4 +/* 801D9BA0 001D6B00 4B F5 78 B1 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801D9BA4 001D6B04 C0 03 00 08 */ lfs f0, 8(r3) +/* 801D9BA8 001D6B08 7F A3 EB 78 */ mr r3, r29 +/* 801D9BAC 001D6B0C D0 1C 00 04 */ stfs f0, 4(r28) +/* 801D9BB0 001D6B10 4B F6 08 A5 */ bl GetPASDatabase__15CBodyControllerCFv +/* 801D9BB4 001D6B14 7C 60 1B 78 */ mr r0, r3 +/* 801D9BB8 001D6B18 38 61 00 18 */ addi r3, r1, 0x18 +/* 801D9BBC 001D6B1C 7C 1F 03 78 */ mr r31, r0 +/* 801D9BC0 001D6B20 48 10 94 BD */ bl NoParameter__12CPASAnimParmFv +/* 801D9BC4 001D6B24 38 61 00 20 */ addi r3, r1, 0x20 +/* 801D9BC8 001D6B28 48 10 94 B5 */ bl NoParameter__12CPASAnimParmFv +/* 801D9BCC 001D6B2C 38 61 00 28 */ addi r3, r1, 0x28 +/* 801D9BD0 001D6B30 48 10 94 AD */ bl NoParameter__12CPASAnimParmFv +/* 801D9BD4 001D6B34 38 61 00 30 */ addi r3, r1, 0x30 +/* 801D9BD8 001D6B38 48 10 94 A5 */ bl NoParameter__12CPASAnimParmFv +/* 801D9BDC 001D6B3C 38 61 00 38 */ addi r3, r1, 0x38 +/* 801D9BE0 001D6B40 48 10 94 9D */ bl NoParameter__12CPASAnimParmFv +/* 801D9BE4 001D6B44 38 61 00 40 */ addi r3, r1, 0x40 +/* 801D9BE8 001D6B48 48 10 94 95 */ bl NoParameter__12CPASAnimParmFv +/* 801D9BEC 001D6B4C 38 61 00 48 */ addi r3, r1, 0x48 +/* 801D9BF0 001D6B50 48 10 94 8D */ bl NoParameter__12CPASAnimParmFv +/* 801D9BF4 001D6B54 38 61 00 50 */ addi r3, r1, 0x50 +/* 801D9BF8 001D6B58 48 10 94 85 */ bl NoParameter__12CPASAnimParmFv +/* 801D9BFC 001D6B5C 38 61 00 20 */ addi r3, r1, 0x20 +/* 801D9C00 001D6B60 38 01 00 18 */ addi r0, r1, 0x18 +/* 801D9C04 001D6B64 90 61 00 08 */ stw r3, 8(r1) +/* 801D9C08 001D6B68 38 61 00 58 */ addi r3, r1, 0x58 +/* 801D9C0C 001D6B6C 38 A1 00 50 */ addi r5, r1, 0x50 +/* 801D9C10 001D6B70 38 C1 00 48 */ addi r6, r1, 0x48 +/* 801D9C14 001D6B74 90 01 00 0C */ stw r0, 0xc(r1) +/* 801D9C18 001D6B78 38 E1 00 40 */ addi r7, r1, 0x40 +/* 801D9C1C 001D6B7C 39 01 00 38 */ addi r8, r1, 0x38 +/* 801D9C20 001D6B80 39 21 00 30 */ addi r9, r1, 0x30 +/* 801D9C24 001D6B84 39 41 00 28 */ addi r10, r1, 0x28 +/* 801D9C28 001D6B88 38 80 00 17 */ li r4, 0x17 +/* 801D9C2C 001D6B8C 4B EA 36 99 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 801D9C30 001D6B90 80 DE 09 00 */ lwz r6, 0x900(r30) +/* 801D9C34 001D6B94 7F E4 FB 78 */ mr r4, r31 +/* 801D9C38 001D6B98 38 61 00 10 */ addi r3, r1, 0x10 +/* 801D9C3C 001D6B9C 38 A1 00 58 */ addi r5, r1, 0x58 +/* 801D9C40 001D6BA0 38 E0 FF FF */ li r7, -1 +/* 801D9C44 001D6BA4 48 10 B4 1D */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i +/* 801D9C48 001D6BA8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D9C4C 001D6BAC 38 A0 00 00 */ li r5, 0 +/* 801D9C50 001D6BB0 38 C0 00 01 */ li r6, 1 +/* 801D9C54 001D6BB4 90 1C 00 08 */ stw r0, 8(r28) +/* 801D9C58 001D6BB8 80 7D 00 00 */ lwz r3, 0(r29) +/* 801D9C5C 001D6BBC 80 9C 00 08 */ lwz r4, 8(r28) +/* 801D9C60 001D6BC0 80 63 00 64 */ lwz r3, 0x64(r3) +/* 801D9C64 001D6BC4 C0 3C 00 04 */ lfs f1, 4(r28) +/* 801D9C68 001D6BC8 80 63 00 10 */ lwz r3, 0x10(r3) +/* 801D9C6C 001D6BCC 4B E5 05 65 */ bl AddAdditiveAnimation__9CAnimDataFUifbb +/* 801D9C70 001D6BD0 34 A1 00 5C */ addic. r5, r1, 0x5c +/* 801D9C74 001D6BD4 41 82 00 58 */ beq lbl_801D9CCC +/* 801D9C78 001D6BD8 80 C5 00 00 */ lwz r6, 0(r5) +/* 801D9C7C 001D6BDC 38 60 00 00 */ li r3, 0 +/* 801D9C80 001D6BE0 2C 06 00 00 */ cmpwi r6, 0 +/* 801D9C84 001D6BE4 40 81 00 40 */ ble lbl_801D9CC4 +/* 801D9C88 001D6BE8 2C 06 00 08 */ cmpwi r6, 8 +/* 801D9C8C 001D6BEC 38 86 FF F8 */ addi r4, r6, -8 +/* 801D9C90 001D6BF0 40 81 00 20 */ ble lbl_801D9CB0 +/* 801D9C94 001D6BF4 38 04 00 07 */ addi r0, r4, 7 +/* 801D9C98 001D6BF8 54 00 E8 FE */ srwi r0, r0, 3 +/* 801D9C9C 001D6BFC 7C 09 03 A6 */ mtctr r0 +/* 801D9CA0 001D6C00 2C 04 00 00 */ cmpwi r4, 0 +/* 801D9CA4 001D6C04 40 81 00 0C */ ble lbl_801D9CB0 +lbl_801D9CA8: +/* 801D9CA8 001D6C08 38 63 00 08 */ addi r3, r3, 8 +/* 801D9CAC 001D6C0C 42 00 FF FC */ bdnz lbl_801D9CA8 +lbl_801D9CB0: +/* 801D9CB0 001D6C10 7C 03 30 50 */ subf r0, r3, r6 +/* 801D9CB4 001D6C14 7C 09 03 A6 */ mtctr r0 +/* 801D9CB8 001D6C18 7C 03 30 00 */ cmpw r3, r6 +/* 801D9CBC 001D6C1C 40 80 00 08 */ bge lbl_801D9CC4 +lbl_801D9CC0: +/* 801D9CC0 001D6C20 42 00 00 00 */ bdnz lbl_801D9CC0 +lbl_801D9CC4: +/* 801D9CC4 001D6C24 38 00 00 00 */ li r0, 0 +/* 801D9CC8 001D6C28 90 05 00 00 */ stw r0, 0(r5) +lbl_801D9CCC: +/* 801D9CCC 001D6C2C 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 801D9CD0 001D6C30 83 E1 00 AC */ lwz r31, 0xac(r1) +/* 801D9CD4 001D6C34 83 C1 00 A8 */ lwz r30, 0xa8(r1) +/* 801D9CD8 001D6C38 83 A1 00 A4 */ lwz r29, 0xa4(r1) +/* 801D9CDC 001D6C3C 83 81 00 A0 */ lwz r28, 0xa0(r1) +/* 801D9CE0 001D6C40 7C 08 03 A6 */ mtlr r0 +/* 801D9CE4 001D6C44 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 801D9CE8 001D6C48 4E 80 00 20 */ blr + +.global __ct__10CABSFlinchFv +__ct__10CABSFlinchFv: +/* 801D9CEC 001D6C4C 3C A0 80 3E */ lis r5, lbl_803E1350@ha +/* 801D9CF0 001D6C50 3C 80 80 3E */ lis r4, lbl_803E5C80@ha +/* 801D9CF4 001D6C54 38 05 13 50 */ addi r0, r5, lbl_803E1350@l +/* 801D9CF8 001D6C58 C0 02 AC A8 */ lfs f0, lbl_805AC9C8@sda21(r2) +/* 801D9CFC 001D6C5C 90 03 00 00 */ stw r0, 0(r3) +/* 801D9D00 001D6C60 38 84 5C 80 */ addi r4, r4, lbl_803E5C80@l +/* 801D9D04 001D6C64 38 00 00 00 */ li r0, 0 +/* 801D9D08 001D6C68 90 83 00 00 */ stw r4, 0(r3) +/* 801D9D0C 001D6C6C D0 03 00 04 */ stfs f0, 4(r3) +/* 801D9D10 001D6C70 90 03 00 08 */ stw r0, 8(r3) +/* 801D9D14 001D6C74 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/BodyState/CABSIdle.s b/asm/Kyoto_CWD/BodyState/CABSIdle.s new file mode 100644 index 00000000..150230b5 --- /dev/null +++ b/asm/Kyoto_CWD/BodyState/CABSIdle.s @@ -0,0 +1,87 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__8CABSIdleFv +__dt__8CABSIdleFv: +/* 801D9934 001D6894 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D9938 001D6898 7C 08 02 A6 */ mflr r0 +/* 801D993C 001D689C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D9940 001D68A0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801D9944 001D68A4 7C 7F 1B 79 */ or. r31, r3, r3 +/* 801D9948 001D68A8 41 82 00 30 */ beq lbl_801D9978 +/* 801D994C 001D68AC 3C 60 80 3E */ lis r3, lbl_803E5C60@ha +/* 801D9950 001D68B0 38 03 5C 60 */ addi r0, r3, lbl_803E5C60@l +/* 801D9954 001D68B4 90 1F 00 00 */ stw r0, 0(r31) +/* 801D9958 001D68B8 41 82 00 10 */ beq lbl_801D9968 +/* 801D995C 001D68BC 3C 60 80 3E */ lis r3, lbl_803E1350@ha +/* 801D9960 001D68C0 38 03 13 50 */ addi r0, r3, lbl_803E1350@l +/* 801D9964 001D68C4 90 1F 00 00 */ stw r0, 0(r31) +lbl_801D9968: +/* 801D9968 001D68C8 7C 80 07 35 */ extsh. r0, r4 +/* 801D996C 001D68CC 40 81 00 0C */ ble lbl_801D9978 +/* 801D9970 001D68D0 7F E3 FB 78 */ mr r3, r31 +/* 801D9974 001D68D4 48 13 BF BD */ bl Free__7CMemoryFPCv +lbl_801D9978: +/* 801D9978 001D68D8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D997C 001D68DC 7F E3 FB 78 */ mr r3, r31 +/* 801D9980 001D68E0 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801D9984 001D68E4 7C 08 03 A6 */ mtlr r0 +/* 801D9988 001D68E8 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D998C 001D68EC 4E 80 00 20 */ blr + +.global Start__8CABSIdleFR15CBodyControllerR13CStateManager +Start__8CABSIdleFR15CBodyControllerR13CStateManager: +/* 801D9990 001D68F0 4E 80 00 20 */ blr + +.global Shutdown__8CABSIdleFR15CBodyController +Shutdown__8CABSIdleFR15CBodyController: +/* 801D9994 001D68F4 4E 80 00 20 */ blr + +.global GetBodyStateTransition__8CABSIdleFfR15CBodyController +GetBodyStateTransition__8CABSIdleFfR15CBodyController: +/* 801D9998 001D68F8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D999C 001D68FC 7C 08 02 A6 */ mflr r0 +/* 801D99A0 001D6900 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D99A4 001D6904 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801D99A8 001D6908 3B E4 00 04 */ addi r31, r4, 4 +/* 801D99AC 001D690C 38 80 00 1A */ li r4, 0x1a +/* 801D99B0 001D6910 7F E3 FB 78 */ mr r3, r31 +/* 801D99B4 001D6914 4B F5 7A 9D */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801D99B8 001D6918 28 03 00 00 */ cmplwi r3, 0 +/* 801D99BC 001D691C 41 82 00 0C */ beq lbl_801D99C8 +/* 801D99C0 001D6920 38 60 00 18 */ li r3, 0x18 +/* 801D99C4 001D6924 48 00 00 3C */ b lbl_801D9A00 +lbl_801D99C8: +/* 801D99C8 001D6928 7F E3 FB 78 */ mr r3, r31 +/* 801D99CC 001D692C 38 80 00 19 */ li r4, 0x19 +/* 801D99D0 001D6930 4B F5 7A 81 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801D99D4 001D6934 28 03 00 00 */ cmplwi r3, 0 +/* 801D99D8 001D6938 41 82 00 0C */ beq lbl_801D99E4 +/* 801D99DC 001D693C 38 60 00 17 */ li r3, 0x17 +/* 801D99E0 001D6940 48 00 00 20 */ b lbl_801D9A00 +lbl_801D99E4: +/* 801D99E4 001D6944 7F E3 FB 78 */ mr r3, r31 +/* 801D99E8 001D6948 38 80 00 18 */ li r4, 0x18 +/* 801D99EC 001D694C 4B F5 7A 65 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801D99F0 001D6950 28 03 00 00 */ cmplwi r3, 0 +/* 801D99F4 001D6954 38 60 FF FF */ li r3, -1 +/* 801D99F8 001D6958 41 82 00 08 */ beq lbl_801D9A00 +/* 801D99FC 001D695C 38 60 00 16 */ li r3, 0x16 +lbl_801D9A00: +/* 801D9A00 001D6960 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D9A04 001D6964 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801D9A08 001D6968 7C 08 03 A6 */ mtlr r0 +/* 801D9A0C 001D696C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D9A10 001D6970 4E 80 00 20 */ blr + +.global UpdateBody__8CABSIdleFfR15CBodyControllerR13CStateManager +UpdateBody__8CABSIdleFfR15CBodyControllerR13CStateManager: +/* 801D9A14 001D6974 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D9A18 001D6978 7C 08 02 A6 */ mflr r0 +/* 801D9A1C 001D697C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D9A20 001D6980 4B FF FF 79 */ bl GetBodyStateTransition__8CABSIdleFfR15CBodyController +/* 801D9A24 001D6984 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D9A28 001D6988 7C 08 03 A6 */ mtlr r0 +/* 801D9A2C 001D698C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D9A30 001D6990 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/BodyState/CABSReaction.s b/asm/Kyoto_CWD/BodyState/CABSReaction.s new file mode 100644 index 00000000..361191ff --- /dev/null +++ b/asm/Kyoto_CWD/BodyState/CABSReaction.s @@ -0,0 +1,378 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__12CABSReactionFv +__dt__12CABSReactionFv: +/* 801F1540 001EE4A0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801F1544 001EE4A4 7C 08 02 A6 */ mflr r0 +/* 801F1548 001EE4A8 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F154C 001EE4AC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801F1550 001EE4B0 7C 7F 1B 79 */ or. r31, r3, r3 +/* 801F1554 001EE4B4 41 82 00 30 */ beq lbl_801F1584 +/* 801F1558 001EE4B8 3C 60 80 3E */ lis r3, lbl_803E6758@ha +/* 801F155C 001EE4BC 38 03 67 58 */ addi r0, r3, lbl_803E6758@l +/* 801F1560 001EE4C0 90 1F 00 00 */ stw r0, 0(r31) +/* 801F1564 001EE4C4 41 82 00 10 */ beq lbl_801F1574 +/* 801F1568 001EE4C8 3C 60 80 3E */ lis r3, lbl_803E1350@ha +/* 801F156C 001EE4CC 38 03 13 50 */ addi r0, r3, lbl_803E1350@l +/* 801F1570 001EE4D0 90 1F 00 00 */ stw r0, 0(r31) +lbl_801F1574: +/* 801F1574 001EE4D4 7C 80 07 35 */ extsh. r0, r4 +/* 801F1578 001EE4D8 40 81 00 0C */ ble lbl_801F1584 +/* 801F157C 001EE4DC 7F E3 FB 78 */ mr r3, r31 +/* 801F1580 001EE4E0 48 12 43 B1 */ bl Free__7CMemoryFPCv +lbl_801F1584: +/* 801F1584 001EE4E4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801F1588 001EE4E8 7F E3 FB 78 */ mr r3, r31 +/* 801F158C 001EE4EC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801F1590 001EE4F0 7C 08 03 A6 */ mtlr r0 +/* 801F1594 001EE4F4 38 21 00 10 */ addi r1, r1, 0x10 +/* 801F1598 001EE4F8 4E 80 00 20 */ blr + +.global StopAnimation__12CABSReactionFR15CBodyController +StopAnimation__12CABSReactionFR15CBodyController: +/* 801F159C 001EE4FC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801F15A0 001EE500 7C 08 02 A6 */ mflr r0 +/* 801F15A4 001EE504 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F15A8 001EE508 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801F15AC 001EE50C 7C 7F 1B 78 */ mr r31, r3 +/* 801F15B0 001EE510 80 03 00 08 */ lwz r0, 8(r3) +/* 801F15B4 001EE514 2C 00 FF FF */ cmpwi r0, -1 +/* 801F15B8 001EE518 41 82 00 20 */ beq lbl_801F15D8 +/* 801F15BC 001EE51C 80 64 00 00 */ lwz r3, 0(r4) +/* 801F15C0 001EE520 7C 04 03 78 */ mr r4, r0 +/* 801F15C4 001EE524 80 63 00 64 */ lwz r3, 0x64(r3) +/* 801F15C8 001EE528 80 63 00 10 */ lwz r3, 0x10(r3) +/* 801F15CC 001EE52C 4B E3 8B 8D */ bl DelAdditiveAnimation__9CAnimDataFUi +/* 801F15D0 001EE530 38 00 FF FF */ li r0, -1 +/* 801F15D4 001EE534 90 1F 00 08 */ stw r0, 8(r31) +lbl_801F15D8: +/* 801F15D8 001EE538 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801F15DC 001EE53C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801F15E0 001EE540 7C 08 03 A6 */ mtlr r0 +/* 801F15E4 001EE544 38 21 00 10 */ addi r1, r1, 0x10 +/* 801F15E8 001EE548 4E 80 00 20 */ blr + +.global GetBodyStateTransition__12CABSReactionFfR15CBodyController +GetBodyStateTransition__12CABSReactionFfR15CBodyController: +/* 801F15EC 001EE54C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801F15F0 001EE550 7C 08 02 A6 */ mflr r0 +/* 801F15F4 001EE554 38 64 00 04 */ addi r3, r4, 4 +/* 801F15F8 001EE558 38 80 00 1A */ li r4, 0x1a +/* 801F15FC 001EE55C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F1600 001EE560 4B F3 FE 51 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801F1604 001EE564 28 03 00 00 */ cmplwi r3, 0 +/* 801F1608 001EE568 41 82 00 18 */ beq lbl_801F1620 +/* 801F160C 001EE56C 80 03 00 0C */ lwz r0, 0xc(r3) +/* 801F1610 001EE570 2C 00 00 03 */ cmpwi r0, 3 +/* 801F1614 001EE574 40 82 00 0C */ bne lbl_801F1620 +/* 801F1618 001EE578 38 60 00 18 */ li r3, 0x18 +/* 801F161C 001EE57C 48 00 00 08 */ b lbl_801F1624 +lbl_801F1620: +/* 801F1620 001EE580 38 60 FF FF */ li r3, -1 +lbl_801F1624: +/* 801F1624 001EE584 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801F1628 001EE588 7C 08 03 A6 */ mtlr r0 +/* 801F162C 001EE58C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801F1630 001EE590 4E 80 00 20 */ blr + +.global HasIceBreakoutState__15CBodyControllerFv +HasIceBreakoutState__15CBodyControllerFv: +/* 801F1634 001EE594 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 801F1638 001EE598 7C 08 02 A6 */ mflr r0 +/* 801F163C 001EE59C 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 801F1640 001EE5A0 93 E1 00 AC */ stw r31, 0xac(r1) +/* 801F1644 001EE5A4 7C 7F 1B 78 */ mr r31, r3 +/* 801F1648 001EE5A8 38 61 00 18 */ addi r3, r1, 0x18 +/* 801F164C 001EE5AC 48 0F 1A 31 */ bl NoParameter__12CPASAnimParmFv +/* 801F1650 001EE5B0 38 61 00 20 */ addi r3, r1, 0x20 +/* 801F1654 001EE5B4 48 0F 1A 29 */ bl NoParameter__12CPASAnimParmFv +/* 801F1658 001EE5B8 38 61 00 28 */ addi r3, r1, 0x28 +/* 801F165C 001EE5BC 48 0F 1A 21 */ bl NoParameter__12CPASAnimParmFv +/* 801F1660 001EE5C0 38 61 00 30 */ addi r3, r1, 0x30 +/* 801F1664 001EE5C4 48 0F 1A 19 */ bl NoParameter__12CPASAnimParmFv +/* 801F1668 001EE5C8 38 61 00 38 */ addi r3, r1, 0x38 +/* 801F166C 001EE5CC 48 0F 1A 11 */ bl NoParameter__12CPASAnimParmFv +/* 801F1670 001EE5D0 38 61 00 40 */ addi r3, r1, 0x40 +/* 801F1674 001EE5D4 48 0F 1A 09 */ bl NoParameter__12CPASAnimParmFv +/* 801F1678 001EE5D8 38 61 00 48 */ addi r3, r1, 0x48 +/* 801F167C 001EE5DC 48 0F 1A 01 */ bl NoParameter__12CPASAnimParmFv +/* 801F1680 001EE5E0 38 61 00 50 */ addi r3, r1, 0x50 +/* 801F1684 001EE5E4 38 80 00 03 */ li r4, 3 +/* 801F1688 001EE5E8 48 0F 18 FD */ bl FromEnum__12CPASAnimParmFi +/* 801F168C 001EE5EC 38 61 00 20 */ addi r3, r1, 0x20 +/* 801F1690 001EE5F0 38 01 00 18 */ addi r0, r1, 0x18 +/* 801F1694 001EE5F4 90 61 00 08 */ stw r3, 8(r1) +/* 801F1698 001EE5F8 38 61 00 58 */ addi r3, r1, 0x58 +/* 801F169C 001EE5FC 38 A1 00 50 */ addi r5, r1, 0x50 +/* 801F16A0 001EE600 38 C1 00 48 */ addi r6, r1, 0x48 +/* 801F16A4 001EE604 90 01 00 0C */ stw r0, 0xc(r1) +/* 801F16A8 001EE608 38 E1 00 40 */ addi r7, r1, 0x40 +/* 801F16AC 001EE60C 39 01 00 38 */ addi r8, r1, 0x38 +/* 801F16B0 001EE610 39 21 00 30 */ addi r9, r1, 0x30 +/* 801F16B4 001EE614 39 41 00 28 */ addi r10, r1, 0x28 +/* 801F16B8 001EE618 38 80 00 18 */ li r4, 0x18 +/* 801F16BC 001EE61C 4B E8 BC 09 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 801F16C0 001EE620 7F E3 FB 78 */ mr r3, r31 +/* 801F16C4 001EE624 4B F4 8D 91 */ bl GetPASDatabase__15CBodyControllerCFv +/* 801F16C8 001EE628 7C 60 1B 78 */ mr r0, r3 +/* 801F16CC 001EE62C 38 61 00 10 */ addi r3, r1, 0x10 +/* 801F16D0 001EE630 7C 04 03 78 */ mr r4, r0 +/* 801F16D4 001EE634 38 A1 00 58 */ addi r5, r1, 0x58 +/* 801F16D8 001EE638 38 C0 FF FF */ li r6, -1 +/* 801F16DC 001EE63C 48 0F 3A 91 */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDatai +/* 801F16E0 001EE640 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 801F16E4 001EE644 C0 02 AE D0 */ lfs f0, lbl_805ACBF0@sda21(r2) +/* 801F16E8 001EE648 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F16EC 001EE64C 7C 00 00 26 */ mfcr r0 +/* 801F16F0 001EE650 34 C1 00 5C */ addic. r6, r1, 0x5c +/* 801F16F4 001EE654 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f +/* 801F16F8 001EE658 41 82 00 58 */ beq lbl_801F1750 +/* 801F16FC 001EE65C 80 E6 00 00 */ lwz r7, 0(r6) +/* 801F1700 001EE660 38 80 00 00 */ li r4, 0 +/* 801F1704 001EE664 2C 07 00 00 */ cmpwi r7, 0 +/* 801F1708 001EE668 40 81 00 40 */ ble lbl_801F1748 +/* 801F170C 001EE66C 2C 07 00 08 */ cmpwi r7, 8 +/* 801F1710 001EE670 38 A7 FF F8 */ addi r5, r7, -8 +/* 801F1714 001EE674 40 81 00 20 */ ble lbl_801F1734 +/* 801F1718 001EE678 38 05 00 07 */ addi r0, r5, 7 +/* 801F171C 001EE67C 54 00 E8 FE */ srwi r0, r0, 3 +/* 801F1720 001EE680 7C 09 03 A6 */ mtctr r0 +/* 801F1724 001EE684 2C 05 00 00 */ cmpwi r5, 0 +/* 801F1728 001EE688 40 81 00 0C */ ble lbl_801F1734 +lbl_801F172C: +/* 801F172C 001EE68C 38 84 00 08 */ addi r4, r4, 8 +/* 801F1730 001EE690 42 00 FF FC */ bdnz lbl_801F172C +lbl_801F1734: +/* 801F1734 001EE694 7C 04 38 50 */ subf r0, r4, r7 +/* 801F1738 001EE698 7C 09 03 A6 */ mtctr r0 +/* 801F173C 001EE69C 7C 04 38 00 */ cmpw r4, r7 +/* 801F1740 001EE6A0 40 80 00 08 */ bge lbl_801F1748 +lbl_801F1744: +/* 801F1744 001EE6A4 42 00 00 00 */ bdnz lbl_801F1744 +lbl_801F1748: +/* 801F1748 001EE6A8 38 00 00 00 */ li r0, 0 +/* 801F174C 001EE6AC 90 06 00 00 */ stw r0, 0(r6) +lbl_801F1750: +/* 801F1750 001EE6B0 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 801F1754 001EE6B4 83 E1 00 AC */ lwz r31, 0xac(r1) +/* 801F1758 001EE6B8 7C 08 03 A6 */ mtlr r0 +/* 801F175C 001EE6BC 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 801F1760 001EE6C0 4E 80 00 20 */ blr + +.global Shutdown__12CABSReactionFR15CBodyController +Shutdown__12CABSReactionFR15CBodyController: +/* 801F1764 001EE6C4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801F1768 001EE6C8 7C 08 02 A6 */ mflr r0 +/* 801F176C 001EE6CC 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F1770 001EE6D0 4B FF FE 2D */ bl StopAnimation__12CABSReactionFR15CBodyController +/* 801F1774 001EE6D4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801F1778 001EE6D8 7C 08 03 A6 */ mtlr r0 +/* 801F177C 001EE6DC 38 21 00 10 */ addi r1, r1, 0x10 +/* 801F1780 001EE6E0 4E 80 00 20 */ blr + +.global UpdateBody__12CABSReactionFfR15CBodyControllerR13CStateManager +UpdateBody__12CABSReactionFfR15CBodyControllerR13CStateManager: +/* 801F1784 001EE6E4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801F1788 001EE6E8 7C 08 02 A6 */ mflr r0 +/* 801F178C 001EE6EC 90 01 00 24 */ stw r0, 0x24(r1) +/* 801F1790 001EE6F0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801F1794 001EE6F4 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801F1798 001EE6F8 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801F179C 001EE6FC 7C 9D 23 78 */ mr r29, r4 +/* 801F17A0 001EE700 93 81 00 10 */ stw r28, 0x10(r1) +/* 801F17A4 001EE704 7C 7C 1B 78 */ mr r28, r3 +/* 801F17A8 001EE708 4B FF FE 45 */ bl GetBodyStateTransition__12CABSReactionFfR15CBodyController +/* 801F17AC 001EE70C 7C 7E 1B 78 */ mr r30, r3 +/* 801F17B0 001EE710 2C 1E FF FF */ cmpwi r30, -1 +/* 801F17B4 001EE714 40 82 00 D0 */ bne lbl_801F1884 +/* 801F17B8 001EE718 80 9C 00 08 */ lwz r4, 8(r28) +/* 801F17BC 001EE71C 2C 04 FF FF */ cmpwi r4, -1 +/* 801F17C0 001EE720 40 82 00 0C */ bne lbl_801F17CC +/* 801F17C4 001EE724 38 60 00 15 */ li r3, 0x15 +/* 801F17C8 001EE728 48 00 00 C0 */ b lbl_801F1888 +lbl_801F17CC: +/* 801F17CC 001EE72C 80 7D 00 00 */ lwz r3, 0(r29) +/* 801F17D0 001EE730 88 1C 00 10 */ lbz r0, 0x10(r28) +/* 801F17D4 001EE734 80 63 00 64 */ lwz r3, 0x64(r3) +/* 801F17D8 001EE738 28 00 00 00 */ cmplwi r0, 0 +/* 801F17DC 001EE73C 83 E3 00 10 */ lwz r31, 0x10(r3) +/* 801F17E0 001EE740 41 82 00 34 */ beq lbl_801F1814 +/* 801F17E4 001EE744 38 7D 00 04 */ addi r3, r29, 4 +/* 801F17E8 001EE748 38 80 00 1B */ li r4, 0x1b +/* 801F17EC 001EE74C 4B F3 FC 65 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801F17F0 001EE750 28 03 00 00 */ cmplwi r3, 0 +/* 801F17F4 001EE754 41 82 00 90 */ beq lbl_801F1884 +/* 801F17F8 001EE758 7F 83 E3 78 */ mr r3, r28 +/* 801F17FC 001EE75C 7F A4 EB 78 */ mr r4, r29 +/* 801F1800 001EE760 4B FF FD 9D */ bl StopAnimation__12CABSReactionFR15CBodyController +/* 801F1804 001EE764 80 7D 00 00 */ lwz r3, 0(r29) +/* 801F1808 001EE768 3B C0 00 15 */ li r30, 0x15 +/* 801F180C 001EE76C 4B E6 3A 39 */ bl RemoveEmitter__6CActorFv +/* 801F1810 001EE770 48 00 00 74 */ b lbl_801F1884 +lbl_801F1814: +/* 801F1814 001EE774 7F E3 FB 78 */ mr r3, r31 +/* 801F1818 001EE778 4B E3 88 B1 */ bl IsAdditiveAnimationAdded__9CAnimDataCFUi +/* 801F181C 001EE77C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801F1820 001EE780 41 82 00 60 */ beq lbl_801F1880 +/* 801F1824 001EE784 80 9C 00 08 */ lwz r4, 8(r28) +/* 801F1828 001EE788 7F E3 FB 78 */ mr r3, r31 +/* 801F182C 001EE78C 4B E3 88 5D */ bl GetAdditiveAnimationTree__9CAnimDataCFUi +/* 801F1830 001EE790 7C 64 1B 78 */ mr r4, r3 +/* 801F1834 001EE794 38 61 00 08 */ addi r3, r1, 8 +/* 801F1838 001EE798 80 84 00 00 */ lwz r4, 0(r4) +/* 801F183C 001EE79C 80 84 00 00 */ lwz r4, 0(r4) +/* 801F1840 001EE7A0 81 84 00 00 */ lwz r12, 0(r4) +/* 801F1844 001EE7A4 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 801F1848 001EE7A8 7D 89 03 A6 */ mtctr r12 +/* 801F184C 001EE7AC 4E 80 04 21 */ bctrl +/* 801F1850 001EE7B0 C0 41 00 08 */ lfs f2, 8(r1) +/* 801F1854 001EE7B4 C0 22 AE D0 */ lfs f1, lbl_805ACBF0@sda21(r2) +/* 801F1858 001EE7B8 C0 02 AE D4 */ lfs f0, lbl_805ACBF4@sda21(r2) +/* 801F185C 001EE7BC EC 22 08 28 */ fsubs f1, f2, f1 +/* 801F1860 001EE7C0 FC 20 0A 10 */ fabs f1, f1 +/* 801F1864 001EE7C4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F1868 001EE7C8 40 80 00 1C */ bge lbl_801F1884 +/* 801F186C 001EE7CC 7F 83 E3 78 */ mr r3, r28 +/* 801F1870 001EE7D0 7F A4 EB 78 */ mr r4, r29 +/* 801F1874 001EE7D4 4B FF FD 29 */ bl StopAnimation__12CABSReactionFR15CBodyController +/* 801F1878 001EE7D8 3B C0 00 15 */ li r30, 0x15 +/* 801F187C 001EE7DC 48 00 00 08 */ b lbl_801F1884 +lbl_801F1880: +/* 801F1880 001EE7E0 3B C0 00 15 */ li r30, 0x15 +lbl_801F1884: +/* 801F1884 001EE7E4 7F C3 F3 78 */ mr r3, r30 +lbl_801F1888: +/* 801F1888 001EE7E8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801F188C 001EE7EC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801F1890 001EE7F0 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801F1894 001EE7F4 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801F1898 001EE7F8 83 81 00 10 */ lwz r28, 0x10(r1) +/* 801F189C 001EE7FC 7C 08 03 A6 */ mtlr r0 +/* 801F18A0 001EE800 38 21 00 20 */ addi r1, r1, 0x20 +/* 801F18A4 001EE804 4E 80 00 20 */ blr + +.global Start__12CABSReactionFR15CBodyControllerR13CStateManager +Start__12CABSReactionFR15CBodyControllerR13CStateManager: +/* 801F18A8 001EE808 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 801F18AC 001EE80C 7C 08 02 A6 */ mflr r0 +/* 801F18B0 001EE810 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 801F18B4 001EE814 93 E1 00 AC */ stw r31, 0xac(r1) +/* 801F18B8 001EE818 7C BF 2B 78 */ mr r31, r5 +/* 801F18BC 001EE81C 93 C1 00 A8 */ stw r30, 0xa8(r1) +/* 801F18C0 001EE820 7C 9E 23 78 */ mr r30, r4 +/* 801F18C4 001EE824 38 80 00 1A */ li r4, 0x1a +/* 801F18C8 001EE828 93 A1 00 A4 */ stw r29, 0xa4(r1) +/* 801F18CC 001EE82C 7C 7D 1B 78 */ mr r29, r3 +/* 801F18D0 001EE830 38 7E 00 04 */ addi r3, r30, 4 +/* 801F18D4 001EE834 4B F3 FB 7D */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801F18D8 001EE838 C0 03 00 08 */ lfs f0, 8(r3) +/* 801F18DC 001EE83C D0 1D 00 04 */ stfs f0, 4(r29) +/* 801F18E0 001EE840 80 03 00 0C */ lwz r0, 0xc(r3) +/* 801F18E4 001EE844 90 1D 00 0C */ stw r0, 0xc(r29) +/* 801F18E8 001EE848 88 03 00 10 */ lbz r0, 0x10(r3) +/* 801F18EC 001EE84C 38 61 00 18 */ addi r3, r1, 0x18 +/* 801F18F0 001EE850 98 1D 00 10 */ stb r0, 0x10(r29) +/* 801F18F4 001EE854 48 0F 17 89 */ bl NoParameter__12CPASAnimParmFv +/* 801F18F8 001EE858 38 61 00 20 */ addi r3, r1, 0x20 +/* 801F18FC 001EE85C 48 0F 17 81 */ bl NoParameter__12CPASAnimParmFv +/* 801F1900 001EE860 38 61 00 28 */ addi r3, r1, 0x28 +/* 801F1904 001EE864 48 0F 17 79 */ bl NoParameter__12CPASAnimParmFv +/* 801F1908 001EE868 38 61 00 30 */ addi r3, r1, 0x30 +/* 801F190C 001EE86C 48 0F 17 71 */ bl NoParameter__12CPASAnimParmFv +/* 801F1910 001EE870 38 61 00 38 */ addi r3, r1, 0x38 +/* 801F1914 001EE874 48 0F 17 69 */ bl NoParameter__12CPASAnimParmFv +/* 801F1918 001EE878 38 61 00 40 */ addi r3, r1, 0x40 +/* 801F191C 001EE87C 48 0F 17 61 */ bl NoParameter__12CPASAnimParmFv +/* 801F1920 001EE880 38 61 00 48 */ addi r3, r1, 0x48 +/* 801F1924 001EE884 48 0F 17 59 */ bl NoParameter__12CPASAnimParmFv +/* 801F1928 001EE888 80 9D 00 0C */ lwz r4, 0xc(r29) +/* 801F192C 001EE88C 38 61 00 50 */ addi r3, r1, 0x50 +/* 801F1930 001EE890 48 0F 16 55 */ bl FromEnum__12CPASAnimParmFi +/* 801F1934 001EE894 38 61 00 20 */ addi r3, r1, 0x20 +/* 801F1938 001EE898 38 01 00 18 */ addi r0, r1, 0x18 +/* 801F193C 001EE89C 90 61 00 08 */ stw r3, 8(r1) +/* 801F1940 001EE8A0 38 61 00 58 */ addi r3, r1, 0x58 +/* 801F1944 001EE8A4 38 A1 00 50 */ addi r5, r1, 0x50 +/* 801F1948 001EE8A8 38 C1 00 48 */ addi r6, r1, 0x48 +/* 801F194C 001EE8AC 90 01 00 0C */ stw r0, 0xc(r1) +/* 801F1950 001EE8B0 38 E1 00 40 */ addi r7, r1, 0x40 +/* 801F1954 001EE8B4 39 01 00 38 */ addi r8, r1, 0x38 +/* 801F1958 001EE8B8 39 21 00 30 */ addi r9, r1, 0x30 +/* 801F195C 001EE8BC 39 41 00 28 */ addi r10, r1, 0x28 +/* 801F1960 001EE8C0 38 80 00 18 */ li r4, 0x18 +/* 801F1964 001EE8C4 4B E8 B9 61 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 801F1968 001EE8C8 7F C3 F3 78 */ mr r3, r30 +/* 801F196C 001EE8CC 4B F4 8A E9 */ bl GetPASDatabase__15CBodyControllerCFv +/* 801F1970 001EE8D0 80 DF 09 00 */ lwz r6, 0x900(r31) +/* 801F1974 001EE8D4 7C 64 1B 78 */ mr r4, r3 +/* 801F1978 001EE8D8 38 61 00 10 */ addi r3, r1, 0x10 +/* 801F197C 001EE8DC 38 A1 00 58 */ addi r5, r1, 0x58 +/* 801F1980 001EE8E0 38 E0 FF FF */ li r7, -1 +/* 801F1984 001EE8E4 48 0F 36 DD */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i +/* 801F1988 001EE8E8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801F198C 001EE8EC 90 1D 00 08 */ stw r0, 8(r29) +/* 801F1990 001EE8F0 80 9D 00 08 */ lwz r4, 8(r29) +/* 801F1994 001EE8F4 2C 04 FF FF */ cmpwi r4, -1 +/* 801F1998 001EE8F8 41 82 00 20 */ beq lbl_801F19B8 +/* 801F199C 001EE8FC 80 7E 00 00 */ lwz r3, 0(r30) +/* 801F19A0 001EE900 38 C0 00 00 */ li r6, 0 +/* 801F19A4 001EE904 88 BD 00 10 */ lbz r5, 0x10(r29) +/* 801F19A8 001EE908 80 63 00 64 */ lwz r3, 0x64(r3) +/* 801F19AC 001EE90C C0 3D 00 04 */ lfs f1, 4(r29) +/* 801F19B0 001EE910 80 63 00 10 */ lwz r3, 0x10(r3) +/* 801F19B4 001EE914 4B E3 88 1D */ bl AddAdditiveAnimation__9CAnimDataFUifbb +lbl_801F19B8: +/* 801F19B8 001EE918 34 A1 00 5C */ addic. r5, r1, 0x5c +/* 801F19BC 001EE91C 41 82 00 58 */ beq lbl_801F1A14 +/* 801F19C0 001EE920 80 C5 00 00 */ lwz r6, 0(r5) +/* 801F19C4 001EE924 38 60 00 00 */ li r3, 0 +/* 801F19C8 001EE928 2C 06 00 00 */ cmpwi r6, 0 +/* 801F19CC 001EE92C 40 81 00 40 */ ble lbl_801F1A0C +/* 801F19D0 001EE930 2C 06 00 08 */ cmpwi r6, 8 +/* 801F19D4 001EE934 38 86 FF F8 */ addi r4, r6, -8 +/* 801F19D8 001EE938 40 81 00 20 */ ble lbl_801F19F8 +/* 801F19DC 001EE93C 38 04 00 07 */ addi r0, r4, 7 +/* 801F19E0 001EE940 54 00 E8 FE */ srwi r0, r0, 3 +/* 801F19E4 001EE944 7C 09 03 A6 */ mtctr r0 +/* 801F19E8 001EE948 2C 04 00 00 */ cmpwi r4, 0 +/* 801F19EC 001EE94C 40 81 00 0C */ ble lbl_801F19F8 +lbl_801F19F0: +/* 801F19F0 001EE950 38 63 00 08 */ addi r3, r3, 8 +/* 801F19F4 001EE954 42 00 FF FC */ bdnz lbl_801F19F0 +lbl_801F19F8: +/* 801F19F8 001EE958 7C 03 30 50 */ subf r0, r3, r6 +/* 801F19FC 001EE95C 7C 09 03 A6 */ mtctr r0 +/* 801F1A00 001EE960 7C 03 30 00 */ cmpw r3, r6 +/* 801F1A04 001EE964 40 80 00 08 */ bge lbl_801F1A0C +lbl_801F1A08: +/* 801F1A08 001EE968 42 00 00 00 */ bdnz lbl_801F1A08 +lbl_801F1A0C: +/* 801F1A0C 001EE96C 38 00 00 00 */ li r0, 0 +/* 801F1A10 001EE970 90 05 00 00 */ stw r0, 0(r5) +lbl_801F1A14: +/* 801F1A14 001EE974 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 801F1A18 001EE978 83 E1 00 AC */ lwz r31, 0xac(r1) +/* 801F1A1C 001EE97C 83 C1 00 A8 */ lwz r30, 0xa8(r1) +/* 801F1A20 001EE980 83 A1 00 A4 */ lwz r29, 0xa4(r1) +/* 801F1A24 001EE984 7C 08 03 A6 */ mtlr r0 +/* 801F1A28 001EE988 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 801F1A2C 001EE98C 4E 80 00 20 */ blr + +.global __ct__12CABSReactionFv +__ct__12CABSReactionFv: +/* 801F1A30 001EE990 3C A0 80 3E */ lis r5, lbl_803E1350@ha +/* 801F1A34 001EE994 3C 80 80 3E */ lis r4, lbl_803E6758@ha +/* 801F1A38 001EE998 38 05 13 50 */ addi r0, r5, lbl_803E1350@l +/* 801F1A3C 001EE99C C0 02 AE D8 */ lfs f0, lbl_805ACBF8@sda21(r2) +/* 801F1A40 001EE9A0 90 03 00 00 */ stw r0, 0(r3) +/* 801F1A44 001EE9A4 38 A4 67 58 */ addi r5, r4, lbl_803E6758@l +/* 801F1A48 001EE9A8 38 80 FF FF */ li r4, -1 +/* 801F1A4C 001EE9AC 38 00 00 00 */ li r0, 0 +/* 801F1A50 001EE9B0 90 A3 00 00 */ stw r5, 0(r3) +/* 801F1A54 001EE9B4 D0 03 00 04 */ stfs f0, 4(r3) +/* 801F1A58 001EE9B8 90 83 00 08 */ stw r4, 8(r3) +/* 801F1A5C 001EE9BC 90 83 00 0C */ stw r4, 0xc(r3) +/* 801F1A60 001EE9C0 98 03 00 10 */ stb r0, 0x10(r3) +/* 801F1A64 001EE9C4 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CActorParticles.s b/asm/Kyoto_CWD/CActorParticles.s new file mode 100644 index 00000000..12ac4ea2 --- /dev/null +++ b/asm/Kyoto_CWD/CActorParticles.s @@ -0,0 +1,4359 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global GetAshyTexture__20CActorModelParticlesFR5CActor +GetAshyTexture__20CActorModelParticlesFR5CActor: +/* 801E38A4 001E0804 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801E38A8 001E0808 7C 08 02 A6 */ mflr r0 +/* 801E38AC 001E080C 90 01 00 34 */ stw r0, 0x34(r1) +/* 801E38B0 001E0810 38 A1 00 0C */ addi r5, r1, 0xc +/* 801E38B4 001E0814 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801E38B8 001E0818 7C 7F 1B 78 */ mr r31, r3 +/* 801E38BC 001E081C 38 61 00 10 */ addi r3, r1, 0x10 +/* 801E38C0 001E0820 A0 04 00 08 */ lhz r0, 8(r4) +/* 801E38C4 001E0824 7F E4 FB 78 */ mr r4, r31 +/* 801E38C8 001E0828 B0 01 00 08 */ sth r0, 8(r1) +/* 801E38CC 001E082C B0 01 00 0C */ sth r0, 0xc(r1) +/* 801E38D0 001E0830 48 00 0A 1D */ bl FindSystem__20CActorModelParticlesCF9TUniqueId +/* 801E38D4 001E0834 80 61 00 10 */ lwz r3, 0x10(r1) +/* 801E38D8 001E0838 80 1F 00 08 */ lwz r0, 8(r31) +/* 801E38DC 001E083C 7C 03 00 40 */ cmplw r3, r0 +/* 801E38E0 001E0840 41 82 00 4C */ beq lbl_801E392C +/* 801E38E4 001E0844 38 83 00 E4 */ addi r4, r3, 0xe4 +/* 801E38E8 001E0848 88 03 00 E8 */ lbz r0, 0xe8(r3) +/* 801E38EC 001E084C 28 00 00 00 */ cmplwi r0, 0 +/* 801E38F0 001E0850 41 82 00 3C */ beq lbl_801E392C +/* 801E38F4 001E0854 80 64 00 00 */ lwz r3, 0(r4) +/* 801E38F8 001E0858 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801E38FC 001E085C 28 00 00 00 */ cmplwi r0, 0 +/* 801E3900 001E0860 41 82 00 2C */ beq lbl_801E392C +/* 801E3904 001E0864 38 61 00 14 */ addi r3, r1, 0x14 +/* 801E3908 001E0868 48 15 D5 A1 */ bl __ct__6CTokenFRC6CToken +/* 801E390C 001E086C 38 61 00 14 */ addi r3, r1, 0x14 +/* 801E3910 001E0870 48 15 D4 FD */ bl GetObj__6CTokenFv +/* 801E3914 001E0874 83 E3 00 04 */ lwz r31, 4(r3) +/* 801E3918 001E0878 38 61 00 14 */ addi r3, r1, 0x14 +/* 801E391C 001E087C 38 80 00 00 */ li r4, 0 +/* 801E3920 001E0880 48 15 D5 21 */ bl __dt__6CTokenFv +/* 801E3924 001E0884 7F E3 FB 78 */ mr r3, r31 +/* 801E3928 001E0888 48 00 00 08 */ b lbl_801E3930 +lbl_801E392C: +/* 801E392C 001E088C 38 60 00 00 */ li r3, 0 +lbl_801E3930: +/* 801E3930 001E0890 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801E3934 001E0894 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801E3938 001E0898 7C 08 03 A6 */ mtlr r0 +/* 801E393C 001E089C 38 21 00 30 */ addi r1, r1, 0x30 +/* 801E3940 001E08A0 4E 80 00 20 */ blr + +.global StartBurnDeath__20CActorModelParticlesFR5CActor +StartBurnDeath__20CActorModelParticlesFR5CActor: +/* 801E3944 001E08A4 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801E3948 001E08A8 7C 08 02 A6 */ mflr r0 +/* 801E394C 001E08AC 90 01 00 34 */ stw r0, 0x34(r1) +/* 801E3950 001E08B0 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801E3954 001E08B4 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801E3958 001E08B8 7C 9E 23 78 */ mr r30, r4 +/* 801E395C 001E08BC 7C 64 1B 78 */ mr r4, r3 +/* 801E3960 001E08C0 38 61 00 0C */ addi r3, r1, 0xc +/* 801E3964 001E08C4 7F C5 F3 78 */ mr r5, r30 +/* 801E3968 001E08C8 48 00 09 BD */ bl FindOrCreateSystem__20CActorModelParticlesFR6CActor +/* 801E396C 001E08CC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801E3970 001E08D0 7F C3 F3 78 */ mr r3, r30 +/* 801E3974 001E08D4 48 00 3B 05 */ bl IsMediumOrLarge__FRCActor +/* 801E3978 001E08D8 54 64 06 3E */ clrlwi r4, r3, 0x18 +/* 801E397C 001E08DC 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801E3980 001E08E0 7C 04 00 D0 */ neg r0, r4 +/* 801E3984 001E08E4 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 801E3988 001E08E8 7C 00 23 78 */ or r0, r0, r4 +/* 801E398C 001E08EC C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 801E3990 001E08F0 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801E3994 001E08F4 38 C3 66 A0 */ addi r6, r3, skZero3f@l +/* 801E3998 001E08F8 7C 03 FE 70 */ srawi r3, r0, 0x1f +/* 801E399C 001E08FC A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) +/* 801E39A0 001E0900 38 03 04 7E */ addi r0, r3, 0x47e +/* 801E39A4 001E0904 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801E39A8 001E0908 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 801E39AC 001E090C 54 04 04 3E */ clrlwi r4, r0, 0x10 +/* 801E39B0 001E0910 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 801E39B4 001E0914 38 61 00 08 */ addi r3, r1, 8 +/* 801E39B8 001E0918 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801E39BC 001E091C 38 E0 00 01 */ li r7, 1 +/* 801E39C0 001E0920 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 801E39C4 001E0924 39 00 00 00 */ li r8, 0 +/* 801E39C8 001E0928 48 10 68 E9 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +/* 801E39CC 001E092C 38 7F 00 E4 */ addi r3, r31, 0xe4 +/* 801E39D0 001E0930 48 15 D3 B5 */ bl Lock__6CTokenFv +/* 801E39D4 001E0934 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801E39D8 001E0938 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801E39DC 001E093C 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801E39E0 001E0940 7C 08 03 A6 */ mtlr r0 +/* 801E39E4 001E0944 38 21 00 30 */ addi r1, r1, 0x30 +/* 801E39E8 001E0948 4E 80 00 20 */ blr + +.global UpdateLoad__20CActorModelParticlesFv +UpdateLoad__20CActorModelParticlesFv: +/* 801E39EC 001E094C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801E39F0 001E0950 7C 08 02 A6 */ mflr r0 +/* 801E39F4 001E0954 90 01 00 24 */ stw r0, 0x24(r1) +/* 801E39F8 001E0958 BF 61 00 0C */ stmw r27, 0xc(r1) +/* 801E39FC 001E095C 7C 7B 1B 78 */ mr r27, r3 +/* 801E3A00 001E0960 88 03 00 E4 */ lbz r0, 0xe4(r3) +/* 801E3A04 001E0964 28 00 00 00 */ cmplwi r0, 0 +/* 801E3A08 001E0968 41 82 00 78 */ beq lbl_801E3A80 +/* 801E3A0C 001E096C 38 00 00 00 */ li r0, 0 +/* 801E3A10 001E0970 3B DB 00 54 */ addi r30, r27, 0x54 +/* 801E3A14 001E0974 98 1B 00 E5 */ stb r0, 0xe5(r27) +/* 801E3A18 001E0978 3B A0 00 00 */ li r29, 0 +/* 801E3A1C 001E097C 3B E0 00 01 */ li r31, 1 +lbl_801E3A20: +/* 801E3A20 001E0980 7F E3 E8 30 */ slw r3, r31, r29 +/* 801E3A24 001E0984 88 1B 00 E4 */ lbz r0, 0xe4(r27) +/* 801E3A28 001E0988 54 7C 06 3E */ clrlwi r28, r3, 0x18 +/* 801E3A2C 001E098C 7C 00 E0 39 */ and. r0, r0, r28 +/* 801E3A30 001E0990 41 82 00 30 */ beq lbl_801E3A60 +/* 801E3A34 001E0994 7F C3 F3 78 */ mr r3, r30 +/* 801E3A38 001E0998 48 00 37 15 */ bl UpdateLoad__Q220CActorModelParticles10DependencyFv +/* 801E3A3C 001E099C 88 1E 00 14 */ lbz r0, 0x14(r30) +/* 801E3A40 001E09A0 28 00 00 00 */ cmplwi r0, 0 +/* 801E3A44 001E09A4 41 82 00 1C */ beq lbl_801E3A60 +/* 801E3A48 001E09A8 88 1B 00 E5 */ lbz r0, 0xe5(r27) +/* 801E3A4C 001E09AC 7C 00 E3 78 */ or r0, r0, r28 +/* 801E3A50 001E09B0 98 1B 00 E5 */ stb r0, 0xe5(r27) +/* 801E3A54 001E09B4 88 1B 00 E4 */ lbz r0, 0xe4(r27) +/* 801E3A58 001E09B8 7C 00 E0 78 */ andc r0, r0, r28 +/* 801E3A5C 001E09BC 98 1B 00 E4 */ stb r0, 0xe4(r27) +lbl_801E3A60: +/* 801E3A60 001E09C0 3B BD 00 01 */ addi r29, r29, 1 +/* 801E3A64 001E09C4 3B DE 00 18 */ addi r30, r30, 0x18 +/* 801E3A68 001E09C8 2C 1D 00 06 */ cmpwi r29, 6 +/* 801E3A6C 001E09CC 41 80 FF B4 */ blt lbl_801E3A20 +/* 801E3A70 001E09D0 88 7B 00 E6 */ lbz r3, 0xe6(r27) +/* 801E3A74 001E09D4 88 1B 00 E5 */ lbz r0, 0xe5(r27) +/* 801E3A78 001E09D8 7C 60 03 78 */ or r0, r3, r0 +/* 801E3A7C 001E09DC 98 1B 00 E6 */ stb r0, 0xe6(r27) +lbl_801E3A80: +/* 801E3A80 001E09E0 BB 61 00 0C */ lmw r27, 0xc(r1) +/* 801E3A84 001E09E4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801E3A88 001E09E8 7C 08 03 A6 */ mtlr r0 +/* 801E3A8C 001E09EC 38 21 00 20 */ addi r1, r1, 0x20 +/* 801E3A90 001E09F0 4E 80 00 20 */ blr + +.global DecrementDependency__20CActorModelParticlesF11EDependency +DecrementDependency__20CActorModelParticlesF11EDependency: +/* 801E3A94 001E09F4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801E3A98 001E09F8 7C 08 02 A6 */ mflr r0 +/* 801E3A9C 001E09FC 90 01 00 24 */ stw r0, 0x24(r1) +/* 801E3AA0 001E0A00 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801E3AA4 001E0A04 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801E3AA8 001E0A08 7C 9E 23 78 */ mr r30, r4 +/* 801E3AAC 001E0A0C 1C 1E 00 18 */ mulli r0, r30, 0x18 +/* 801E3AB0 001E0A10 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801E3AB4 001E0A14 7C 7D 1B 78 */ mr r29, r3 +/* 801E3AB8 001E0A18 7F FD 02 14 */ add r31, r29, r0 +/* 801E3ABC 001E0A1C 3B FF 00 54 */ addi r31, r31, 0x54 +/* 801E3AC0 001E0A20 7F E3 FB 78 */ mr r3, r31 +/* 801E3AC4 001E0A24 48 00 37 F1 */ bl Decrement__Q220CActorModelParticles10Dependency +/* 801E3AC8 001E0A28 80 1F 00 10 */ lwz r0, 0x10(r31) +/* 801E3ACC 001E0A2C 2C 00 00 00 */ cmpwi r0, 0 +/* 801E3AD0 001E0A30 40 82 00 38 */ bne lbl_801E3B08 +/* 801E3AD4 001E0A34 38 60 00 01 */ li r3, 1 +/* 801E3AD8 001E0A38 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 801E3ADC 001E0A3C 7C 63 F0 30 */ slw r3, r3, r30 +/* 801E3AE0 001E0A40 7C 63 18 F8 */ nor r3, r3, r3 +/* 801E3AE4 001E0A44 54 63 06 3E */ clrlwi r3, r3, 0x18 +/* 801E3AE8 001E0A48 7C 00 18 38 */ and r0, r0, r3 +/* 801E3AEC 001E0A4C 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 801E3AF0 001E0A50 88 1D 00 E6 */ lbz r0, 0xe6(r29) +/* 801E3AF4 001E0A54 7C 00 18 38 */ and r0, r0, r3 +/* 801E3AF8 001E0A58 98 1D 00 E6 */ stb r0, 0xe6(r29) +/* 801E3AFC 001E0A5C 88 1D 00 E5 */ lbz r0, 0xe5(r29) +/* 801E3B00 001E0A60 7C 00 18 38 */ and r0, r0, r3 +/* 801E3B04 001E0A64 98 1D 00 E5 */ stb r0, 0xe5(r29) +lbl_801E3B08: +/* 801E3B08 001E0A68 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801E3B0C 001E0A6C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801E3B10 001E0A70 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801E3B14 001E0A74 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801E3B18 001E0A78 7C 08 03 A6 */ mtlr r0 +/* 801E3B1C 001E0A7C 38 21 00 20 */ addi r1, r1, 0x20 +/* 801E3B20 001E0A80 4E 80 00 20 */ blr + +.global IncrementDependency__20CActorModelParticlesFi +IncrementDependency__20CActorModelParticlesFi: +/* 801E3B24 001E0A84 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801E3B28 001E0A88 7C 08 02 A6 */ mflr r0 +/* 801E3B2C 001E0A8C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801E3B30 001E0A90 1C 04 00 18 */ mulli r0, r4, 0x18 +/* 801E3B34 001E0A94 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801E3B38 001E0A98 93 C1 00 08 */ stw r30, 8(r1) +/* 801E3B3C 001E0A9C 7C 7E 1B 78 */ mr r30, r3 +/* 801E3B40 001E0AA0 38 60 00 01 */ li r3, 1 +/* 801E3B44 001E0AA4 7C 64 20 30 */ slw r4, r3, r4 +/* 801E3B48 001E0AA8 7C 7E 02 14 */ add r3, r30, r0 +/* 801E3B4C 001E0AAC 54 9F 06 3E */ clrlwi r31, r4, 0x18 +/* 801E3B50 001E0AB0 38 63 00 54 */ addi r3, r3, 0x54 +/* 801E3B54 001E0AB4 48 00 37 99 */ bl Increment__Q220CActorModelParticles10Dependency +/* 801E3B58 001E0AB8 88 1E 00 E6 */ lbz r0, 0xe6(r30) +/* 801E3B5C 001E0ABC 7C 00 F8 39 */ and. r0, r0, r31 +/* 801E3B60 001E0AC0 40 82 00 10 */ bne lbl_801E3B70 +/* 801E3B64 001E0AC4 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 801E3B68 001E0AC8 7C 00 FB 78 */ or r0, r0, r31 +/* 801E3B6C 001E0ACC 98 1E 00 E4 */ stb r0, 0xe4(r30) +lbl_801E3B70: +/* 801E3B70 001E0AD0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801E3B74 001E0AD4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801E3B78 001E0AD8 83 C1 00 08 */ lwz r30, 8(r1) +/* 801E3B7C 001E0ADC 7C 08 03 A6 */ mtlr r0 +/* 801E3B80 001E0AE0 38 21 00 10 */ addi r1, r1, 0x10 +/* 801E3B84 001E0AE4 4E 80 00 20 */ blr + +.global LoadParticleDGRPs__20CActorModelParticlesFv +LoadParticleDGRPs__20CActorModelParticlesFv: +/* 801E3B88 001E0AE8 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 801E3B8C 001E0AEC 7C 08 02 A6 */ mflr r0 +/* 801E3B90 001E0AF0 3C A0 80 3D */ lis r5, lbl_803D1E98@ha +/* 801E3B94 001E0AF4 3C 80 80 3D */ lis r4, lbl_803D1EB0@ha +/* 801E3B98 001E0AF8 90 01 00 94 */ stw r0, 0x94(r1) +/* 801E3B9C 001E0AFC BF 41 00 78 */ stmw r26, 0x78(r1) +/* 801E3BA0 001E0B00 3B A5 1E 98 */ addi r29, r5, lbl_803D1E98@l +/* 801E3BA4 001E0B04 7C 7A 1B 78 */ mr r26, r3 +/* 801E3BA8 001E0B08 3B C4 1E B0 */ addi r30, r4, lbl_803D1EB0@l +/* 801E3BAC 001E0B0C 3B 60 00 00 */ li r27, 0 +lbl_801E3BB0: +/* 801E3BB0 001E0B10 80 9D 00 00 */ lwz r4, 0(r29) +/* 801E3BB4 001E0B14 38 61 00 38 */ addi r3, r1, 0x38 +/* 801E3BB8 001E0B18 4B E2 11 01 */ bl string_l__4rstlFPCc +/* 801E3BBC 001E0B1C 38 61 00 28 */ addi r3, r1, 0x28 +/* 801E3BC0 001E0B20 38 9E 00 56 */ addi r4, r30, 0x56 +/* 801E3BC4 001E0B24 4B E2 10 F5 */ bl string_l__4rstlFPCc +/* 801E3BC8 001E0B28 38 61 00 18 */ addi r3, r1, 0x18 +/* 801E3BCC 001E0B2C 38 81 00 38 */ addi r4, r1, 0x38 +/* 801E3BD0 001E0B30 38 A1 00 28 */ addi r5, r1, 0x28 +/* 801E3BD4 001E0B34 4B E2 10 89 */ bl "__pl__4rstlFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801E3BD8 001E0B38 38 61 00 48 */ addi r3, r1, 0x48 +/* 801E3BDC 001E0B3C 38 81 00 18 */ addi r4, r1, 0x18 +/* 801E3BE0 001E0B40 48 15 A5 81 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801E3BE4 001E0B44 38 61 00 18 */ addi r3, r1, 0x18 +/* 801E3BE8 001E0B48 48 15 9E F9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801E3BEC 001E0B4C 38 61 00 28 */ addi r3, r1, 0x28 +/* 801E3BF0 001E0B50 48 15 9E F1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801E3BF4 001E0B54 38 61 00 38 */ addi r3, r1, 0x38 +/* 801E3BF8 001E0B58 48 15 9E E9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801E3BFC 001E0B5C 80 81 00 48 */ lwz r4, 0x48(r1) +/* 801E3C00 001E0B60 38 61 00 58 */ addi r3, r1, 0x58 +/* 801E3C04 001E0B64 48 00 37 21 */ bl GetParticleDGRPTokens__20CActorModelParticlesFRCQ24rstl6string +/* 801E3C08 001E0B68 38 7A 00 50 */ addi r3, r26, 0x50 +/* 801E3C0C 001E0B6C 38 81 00 58 */ addi r4, r1, 0x58 +/* 801E3C10 001E0B70 48 00 00 7D */ bl sub_801e3c8c +/* 801E3C14 001E0B74 80 01 00 5C */ lwz r0, 0x5c(r1) +/* 801E3C18 001E0B78 83 81 00 64 */ lwz r28, 0x64(r1) +/* 801E3C1C 001E0B7C 54 00 18 38 */ slwi r0, r0, 3 +/* 801E3C20 001E0B80 7F FC 02 14 */ add r31, r28, r0 +/* 801E3C24 001E0B84 93 81 00 0C */ stw r28, 0xc(r1) +/* 801E3C28 001E0B88 93 E1 00 14 */ stw r31, 0x14(r1) +/* 801E3C2C 001E0B8C 93 E1 00 10 */ stw r31, 0x10(r1) +/* 801E3C30 001E0B90 93 81 00 08 */ stw r28, 8(r1) +/* 801E3C34 001E0B94 48 00 00 14 */ b lbl_801E3C48 +lbl_801E3C38: +/* 801E3C38 001E0B98 7F 83 E3 78 */ mr r3, r28 +/* 801E3C3C 001E0B9C 38 80 FF FF */ li r4, -1 +/* 801E3C40 001E0BA0 48 15 D2 01 */ bl __dt__6CTokenFv +/* 801E3C44 001E0BA4 3B 9C 00 08 */ addi r28, r28, 8 +lbl_801E3C48: +/* 801E3C48 001E0BA8 7C 1C F8 40 */ cmplw r28, r31 +/* 801E3C4C 001E0BAC 40 82 FF EC */ bne lbl_801E3C38 +/* 801E3C50 001E0BB0 80 61 00 64 */ lwz r3, 0x64(r1) +/* 801E3C54 001E0BB4 28 03 00 00 */ cmplwi r3, 0 +/* 801E3C58 001E0BB8 41 82 00 08 */ beq lbl_801E3C60 +/* 801E3C5C 001E0BBC 48 13 1C D5 */ bl Free__7CMemoryFPCv +lbl_801E3C60: +/* 801E3C60 001E0BC0 38 61 00 48 */ addi r3, r1, 0x48 +/* 801E3C64 001E0BC4 48 15 9E 7D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801E3C68 001E0BC8 3B 7B 00 01 */ addi r27, r27, 1 +/* 801E3C6C 001E0BCC 3B BD 00 04 */ addi r29, r29, 4 +/* 801E3C70 001E0BD0 2C 1B 00 06 */ cmpwi r27, 6 +/* 801E3C74 001E0BD4 41 80 FF 3C */ blt lbl_801E3BB0 +/* 801E3C78 001E0BD8 BB 41 00 78 */ lmw r26, 0x78(r1) +/* 801E3C7C 001E0BDC 80 01 00 94 */ lwz r0, 0x94(r1) +/* 801E3C80 001E0BE0 7C 08 03 A6 */ mtlr r0 +/* 801E3C84 001E0BE4 38 21 00 90 */ addi r1, r1, 0x90 +/* 801E3C88 001E0BE8 4E 80 00 20 */ blr + +.global sub_801e3c8c +sub_801e3c8c: +/* 801E3C8C 001E0BEC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801E3C90 001E0BF0 7C 08 02 A6 */ mflr r0 +/* 801E3C94 001E0BF4 90 01 00 34 */ stw r0, 0x34(r1) +/* 801E3C98 001E0BF8 BF 21 00 14 */ stmw r25, 0x14(r1) +/* 801E3C9C 001E0BFC 7C 7E 1B 78 */ mr r30, r3 +/* 801E3CA0 001E0C00 7C 9F 23 78 */ mr r31, r4 +/* 801E3CA4 001E0C04 80 03 00 00 */ lwz r0, 0(r3) +/* 801E3CA8 001E0C08 1C 00 00 18 */ mulli r0, r0, 0x18 +/* 801E3CAC 001E0C0C 7F BE 02 14 */ add r29, r30, r0 +/* 801E3CB0 001E0C10 37 BD 00 04 */ addic. r29, r29, 4 +/* 801E3CB4 001E0C14 41 82 00 B4 */ beq lbl_801E3D68 +/* 801E3CB8 001E0C18 80 1F 00 04 */ lwz r0, 4(r31) +/* 801E3CBC 001E0C1C 90 1D 00 04 */ stw r0, 4(r29) +/* 801E3CC0 001E0C20 80 1F 00 08 */ lwz r0, 8(r31) +/* 801E3CC4 001E0C24 90 1D 00 08 */ stw r0, 8(r29) +/* 801E3CC8 001E0C28 80 1F 00 04 */ lwz r0, 4(r31) +/* 801E3CCC 001E0C2C 2C 00 00 00 */ cmpwi r0, 0 +/* 801E3CD0 001E0C30 40 82 00 1C */ bne lbl_801E3CEC +/* 801E3CD4 001E0C34 80 1F 00 08 */ lwz r0, 8(r31) +/* 801E3CD8 001E0C38 2C 00 00 00 */ cmpwi r0, 0 +/* 801E3CDC 001E0C3C 40 82 00 10 */ bne lbl_801E3CEC +/* 801E3CE0 001E0C40 38 00 00 00 */ li r0, 0 +/* 801E3CE4 001E0C44 90 1D 00 0C */ stw r0, 0xc(r29) +/* 801E3CE8 001E0C48 48 00 00 70 */ b lbl_801E3D58 +lbl_801E3CEC: +/* 801E3CEC 001E0C4C 80 1D 00 08 */ lwz r0, 8(r29) +/* 801E3CF0 001E0C50 54 03 18 39 */ rlwinm. r3, r0, 3, 0, 0x1c +/* 801E3CF4 001E0C54 40 82 00 10 */ bne lbl_801E3D04 +/* 801E3CF8 001E0C58 38 00 00 00 */ li r0, 0 +/* 801E3CFC 001E0C5C 90 1D 00 0C */ stw r0, 0xc(r29) +/* 801E3D00 001E0C60 48 00 00 1C */ b lbl_801E3D1C +lbl_801E3D04: +/* 801E3D04 001E0C64 3C 80 80 3D */ lis r4, lbl_803D1EB0@ha +/* 801E3D08 001E0C68 38 A0 00 00 */ li r5, 0 +/* 801E3D0C 001E0C6C 38 84 1E B0 */ addi r4, r4, lbl_803D1EB0@l +/* 801E3D10 001E0C70 38 84 00 5C */ addi r4, r4, 0x5c +/* 801E3D14 001E0C74 48 13 1B 05 */ bl __nwa__FUlPCcPCc +/* 801E3D18 001E0C78 90 7D 00 0C */ stw r3, 0xc(r29) +lbl_801E3D1C: +/* 801E3D1C 001E0C7C 83 3D 00 04 */ lwz r25, 4(r29) +/* 801E3D20 001E0C80 3B 80 00 00 */ li r28, 0 +/* 801E3D24 001E0C84 83 5F 00 0C */ lwz r26, 0xc(r31) +/* 801E3D28 001E0C88 83 7D 00 0C */ lwz r27, 0xc(r29) +/* 801E3D2C 001E0C8C 48 00 00 24 */ b lbl_801E3D50 +lbl_801E3D30: +/* 801E3D30 001E0C90 28 1B 00 00 */ cmplwi r27, 0 +/* 801E3D34 001E0C94 41 82 00 10 */ beq lbl_801E3D44 +/* 801E3D38 001E0C98 7F 63 DB 78 */ mr r3, r27 +/* 801E3D3C 001E0C9C 7F 44 D3 78 */ mr r4, r26 +/* 801E3D40 001E0CA0 48 15 D1 69 */ bl __ct__6CTokenFRC6CToken +lbl_801E3D44: +/* 801E3D44 001E0CA4 3B 7B 00 08 */ addi r27, r27, 8 +/* 801E3D48 001E0CA8 3B 9C 00 01 */ addi r28, r28, 1 +/* 801E3D4C 001E0CAC 3B 5A 00 08 */ addi r26, r26, 8 +lbl_801E3D50: +/* 801E3D50 001E0CB0 7C 1C C8 00 */ cmpw r28, r25 +/* 801E3D54 001E0CB4 41 80 FF DC */ blt lbl_801E3D30 +lbl_801E3D58: +/* 801E3D58 001E0CB8 80 1F 00 10 */ lwz r0, 0x10(r31) +/* 801E3D5C 001E0CBC 90 1D 00 10 */ stw r0, 0x10(r29) +/* 801E3D60 001E0CC0 88 1F 00 14 */ lbz r0, 0x14(r31) +/* 801E3D64 001E0CC4 98 1D 00 14 */ stb r0, 0x14(r29) +lbl_801E3D68: +/* 801E3D68 001E0CC8 80 7E 00 00 */ lwz r3, 0(r30) +/* 801E3D6C 001E0CCC 38 03 00 01 */ addi r0, r3, 1 +/* 801E3D70 001E0CD0 90 1E 00 00 */ stw r0, 0(r30) +/* 801E3D74 001E0CD4 BB 21 00 14 */ lmw r25, 0x14(r1) +/* 801E3D78 001E0CD8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801E3D7C 001E0CDC 7C 08 03 A6 */ mtlr r0 +/* 801E3D80 001E0CE0 38 21 00 30 */ addi r1, r1, 0x30 +/* 801E3D84 001E0CE4 4E 80 00 20 */ blr + +.global MakeIceGen__20CActorModelParticlesFv +MakeIceGen__20CActorModelParticlesFv: +/* 801E3D88 001E0CE8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801E3D8C 001E0CEC 7C 08 02 A6 */ mflr r0 +/* 801E3D90 001E0CF0 3C 80 80 3D */ lis r4, lbl_803D1EB0@ha +/* 801E3D94 001E0CF4 38 A0 00 00 */ li r5, 0 +/* 801E3D98 001E0CF8 90 01 00 24 */ stw r0, 0x24(r1) +/* 801E3D9C 001E0CFC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801E3DA0 001E0D00 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801E3DA4 001E0D04 7C 7E 1B 78 */ mr r30, r3 +/* 801E3DA8 001E0D08 38 64 1E B0 */ addi r3, r4, lbl_803D1EB0@l +/* 801E3DAC 001E0D0C 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801E3DB0 001E0D10 38 83 00 5C */ addi r4, r3, 0x5c +/* 801E3DB4 001E0D14 3B A0 00 00 */ li r29, 0 +/* 801E3DB8 001E0D18 38 60 03 40 */ li r3, 0x340 +/* 801E3DBC 001E0D1C 48 13 1A B1 */ bl __nw__FUlPCcPCc +/* 801E3DC0 001E0D20 7C 7F 1B 79 */ or. r31, r3, r3 +/* 801E3DC4 001E0D24 41 82 00 2C */ beq lbl_801E3DF0 +/* 801E3DC8 001E0D28 38 61 00 08 */ addi r3, r1, 8 +/* 801E3DCC 001E0D2C 38 9E 00 28 */ addi r4, r30, 0x28 +/* 801E3DD0 001E0D30 48 15 D0 D9 */ bl __ct__6CTokenFRC6CToken +/* 801E3DD4 001E0D34 7F E3 FB 78 */ mr r3, r31 +/* 801E3DD8 001E0D38 38 81 00 08 */ addi r4, r1, 8 +/* 801E3DDC 001E0D3C 3B A0 00 01 */ li r29, 1 +/* 801E3DE0 001E0D40 38 A0 00 00 */ li r5, 0 +/* 801E3DE4 001E0D44 38 C0 00 01 */ li r6, 1 +/* 801E3DE8 001E0D48 48 13 B5 F9 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 801E3DEC 001E0D4C 7C 7F 1B 78 */ mr r31, r3 +lbl_801E3DF0: +/* 801E3DF0 001E0D50 7F A0 07 75 */ extsb. r0, r29 +/* 801E3DF4 001E0D54 41 82 00 10 */ beq lbl_801E3E04 +/* 801E3DF8 001E0D58 38 61 00 08 */ addi r3, r1, 8 +/* 801E3DFC 001E0D5C 38 80 00 00 */ li r4, 0 +/* 801E3E00 001E0D60 48 15 D0 41 */ bl __dt__6CTokenFv +lbl_801E3E04: +/* 801E3E04 001E0D64 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801E3E08 001E0D68 7F E3 FB 78 */ mr r3, r31 +/* 801E3E0C 001E0D6C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801E3E10 001E0D70 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801E3E14 001E0D74 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801E3E18 001E0D78 7C 08 03 A6 */ mtlr r0 +/* 801E3E1C 001E0D7C 38 21 00 20 */ addi r1, r1, 0x20 +/* 801E3E20 001E0D80 4E 80 00 20 */ blr + +.global Render__20CActorModelParticlesCFRC6CActor +Render__20CActorModelParticlesCFRC6CActor: +/* 801E3E24 001E0D84 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801E3E28 001E0D88 7C 08 02 A6 */ mflr r0 +/* 801E3E2C 001E0D8C 3C C0 80 5A */ lis r6, lbl_805A6204@ha +/* 801E3E30 001E0D90 90 01 00 64 */ stw r0, 0x64(r1) +/* 801E3E34 001E0D94 38 06 62 04 */ addi r0, r6, lbl_805A6204@l +/* 801E3E38 001E0D98 BF 41 00 48 */ stmw r26, 0x48(r1) +/* 801E3E3C 001E0D9C 7C 7A 1B 78 */ mr r26, r3 +/* 801E3E40 001E0DA0 7C 9D 23 78 */ mr r29, r4 +/* 801E3E44 001E0DA4 7C BE 2B 78 */ mr r30, r5 +/* 801E3E48 001E0DA8 38 61 00 18 */ addi r3, r1, 0x18 +/* 801E3E4C 001E0DAC 7C 04 03 78 */ mr r4, r0 +/* 801E3E50 001E0DB0 48 12 ED 25 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801E3E54 001E0DB4 A0 1E 00 08 */ lhz r0, 8(r30) +/* 801E3E58 001E0DB8 7F 44 D3 78 */ mr r4, r26 +/* 801E3E5C 001E0DBC 38 61 00 14 */ addi r3, r1, 0x14 +/* 801E3E60 001E0DC0 38 A1 00 08 */ addi r5, r1, 8 +/* 801E3E64 001E0DC4 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801E3E68 001E0DC8 B0 01 00 08 */ sth r0, 8(r1) +/* 801E3E6C 001E0DCC 48 00 04 81 */ bl FindSystem__20CActorModelParticlesCF9TUniqueId +/* 801E3E70 001E0DD0 83 E1 00 14 */ lwz r31, 0x14(r1) +/* 801E3E74 001E0DD4 80 1A 00 08 */ lwz r0, 8(r26) +/* 801E3E78 001E0DD8 7C 1F 00 40 */ cmplw r31, r0 +/* 801E3E7C 001E0DDC 41 82 01 D0 */ beq lbl_801E404C +/* 801E3E80 001E0DE0 80 BF 00 0C */ lwz r5, 0xc(r31) +/* 801E3E84 001E0DE4 80 0D A3 90 */ lwz r0, lbl_805A8F50@sda21(r13) +/* 801E3E88 001E0DE8 7C 05 00 00 */ cmpw r5, r0 +/* 801E3E8C 001E0DEC 41 82 00 48 */ beq lbl_801E3ED4 +/* 801E3E90 001E0DF0 80 9D 08 50 */ lwz r4, 0x850(r29) +/* 801E3E94 001E0DF4 54 A3 18 38 */ slwi r3, r5, 3 +/* 801E3E98 001E0DF8 38 03 00 04 */ addi r0, r3, 4 +/* 801E3E9C 001E0DFC 90 A1 00 10 */ stw r5, 0x10(r1) +/* 801E3EA0 001E0E00 80 64 00 20 */ lwz r3, 0x20(r4) +/* 801E3EA4 001E0E04 7C 63 00 2E */ lwzx r3, r3, r0 +/* 801E3EA8 001E0E08 88 03 00 F0 */ lbz r0, 0xf0(r3) +/* 801E3EAC 001E0E0C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801E3EB0 001E0E10 41 82 01 9C */ beq lbl_801E404C +/* 801E3EB4 001E0E14 41 82 00 10 */ beq lbl_801E3EC4 +/* 801E3EB8 001E0E18 80 63 01 2C */ lwz r3, 0x12c(r3) +/* 801E3EBC 001E0E1C 80 03 10 DC */ lwz r0, 0x10dc(r3) +/* 801E3EC0 001E0E20 48 00 00 08 */ b lbl_801E3EC8 +lbl_801E3EC4: +/* 801E3EC4 001E0E24 38 00 00 00 */ li r0, 0 +lbl_801E3EC8: +/* 801E3EC8 001E0E28 2C 00 00 00 */ cmpwi r0, 0 +/* 801E3ECC 001E0E2C 40 82 00 08 */ bne lbl_801E3ED4 +/* 801E3ED0 001E0E30 48 00 01 7C */ b lbl_801E404C +lbl_801E3ED4: +/* 801E3ED4 001E0E34 80 7D 0F 34 */ lwz r3, 0xf34(r29) +/* 801E3ED8 001E0E38 7C 03 00 D0 */ neg r0, r3 +/* 801E3EDC 001E0E3C 2C 03 00 01 */ cmpwi r3, 1 +/* 801E3EE0 001E0E40 7C 00 1B 78 */ or r0, r0, r3 +/* 801E3EE4 001E0E44 54 1B 0F FE */ srwi r27, r0, 0x1f +/* 801E3EE8 001E0E48 41 82 00 A8 */ beq lbl_801E3F90 +/* 801E3EEC 001E0E4C 3B 40 00 00 */ li r26, 0 +/* 801E3EF0 001E0E50 3B 9F 00 14 */ addi r28, r31, 0x14 +lbl_801E3EF4: +/* 801E3EF4 001E0E54 80 7C 00 04 */ lwz r3, 4(r28) +/* 801E3EF8 001E0E58 28 03 00 00 */ cmplwi r3, 0 +/* 801E3EFC 001E0E5C 41 82 00 14 */ beq lbl_801E3F10 +/* 801E3F00 001E0E60 81 83 00 00 */ lwz r12, 0(r3) +/* 801E3F04 001E0E64 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801E3F08 001E0E68 7D 89 03 A6 */ mtctr r12 +/* 801E3F0C 001E0E6C 4E 80 04 21 */ bctrl +lbl_801E3F10: +/* 801E3F10 001E0E70 3B 5A 00 01 */ addi r26, r26, 1 +/* 801E3F14 001E0E74 3B 9C 00 0C */ addi r28, r28, 0xc +/* 801E3F18 001E0E78 2C 1A 00 08 */ cmpwi r26, 8 +/* 801E3F1C 001E0E7C 41 80 FF D8 */ blt lbl_801E3EF4 +/* 801E3F20 001E0E80 80 1D 0F 34 */ lwz r0, 0xf34(r29) +/* 801E3F24 001E0E84 2C 00 00 00 */ cmpwi r0, 0 +/* 801E3F28 001E0E88 41 82 00 20 */ beq lbl_801E3F48 +/* 801E3F2C 001E0E8C 80 7F 00 84 */ lwz r3, 0x84(r31) +/* 801E3F30 001E0E90 28 03 00 00 */ cmplwi r3, 0 +/* 801E3F34 001E0E94 41 82 00 14 */ beq lbl_801E3F48 +/* 801E3F38 001E0E98 81 83 00 00 */ lwz r12, 0(r3) +/* 801E3F3C 001E0E9C 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801E3F40 001E0EA0 7D 89 03 A6 */ mtctr r12 +/* 801E3F44 001E0EA4 4E 80 04 21 */ bctrl +lbl_801E3F48: +/* 801E3F48 001E0EA8 80 7F 00 C4 */ lwz r3, 0xc4(r31) +/* 801E3F4C 001E0EAC 28 03 00 00 */ cmplwi r3, 0 +/* 801E3F50 001E0EB0 41 82 00 14 */ beq lbl_801E3F64 +/* 801E3F54 001E0EB4 81 83 00 00 */ lwz r12, 0(r3) +/* 801E3F58 001E0EB8 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801E3F5C 001E0EBC 7D 89 03 A6 */ mtctr r12 +/* 801E3F60 001E0EC0 4E 80 04 21 */ bctrl +lbl_801E3F64: +/* 801E3F64 001E0EC4 80 7F 00 CC */ lwz r3, 0xcc(r31) +/* 801E3F68 001E0EC8 28 03 00 00 */ cmplwi r3, 0 +/* 801E3F6C 001E0ECC 41 82 00 14 */ beq lbl_801E3F80 +/* 801E3F70 001E0ED0 81 83 00 00 */ lwz r12, 0(r3) +/* 801E3F74 001E0ED4 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801E3F78 001E0ED8 7D 89 03 A6 */ mtctr r12 +/* 801E3F7C 001E0EDC 4E 80 04 21 */ bctrl +lbl_801E3F80: +/* 801E3F80 001E0EE0 88 1F 01 34 */ lbz r0, 0x134(r31) +/* 801E3F84 001E0EE4 38 60 00 01 */ li r3, 1 +/* 801E3F88 001E0EE8 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801E3F8C 001E0EEC 98 1F 01 34 */ stb r0, 0x134(r31) +lbl_801E3F90: +/* 801E3F90 001E0EF0 28 1B 00 00 */ cmplwi r27, 0 +/* 801E3F94 001E0EF4 41 82 00 B0 */ beq lbl_801E4044 +/* 801E3F98 001E0EF8 3B 9F 00 98 */ addi r28, r31, 0x98 +/* 801E3F9C 001E0EFC 7F 9A E3 78 */ mr r26, r28 +/* 801E3FA0 001E0F00 48 00 00 1C */ b lbl_801E3FBC +lbl_801E3FA4: +/* 801E3FA4 001E0F04 80 7A 00 04 */ lwz r3, 4(r26) +/* 801E3FA8 001E0F08 81 83 00 00 */ lwz r12, 0(r3) +/* 801E3FAC 001E0F0C 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801E3FB0 001E0F10 7D 89 03 A6 */ mtctr r12 +/* 801E3FB4 001E0F14 4E 80 04 21 */ bctrl +/* 801E3FB8 001E0F18 3B 5A 00 08 */ addi r26, r26, 8 +lbl_801E3FBC: +/* 801E3FBC 001E0F1C 80 1F 00 94 */ lwz r0, 0x94(r31) +/* 801E3FC0 001E0F20 54 00 18 38 */ slwi r0, r0, 3 +/* 801E3FC4 001E0F24 7C 1C 02 14 */ add r0, r28, r0 +/* 801E3FC8 001E0F28 7C 1A 00 40 */ cmplw r26, r0 +/* 801E3FCC 001E0F2C 40 82 FF D8 */ bne lbl_801E3FA4 +/* 801E3FD0 001E0F30 80 7F 00 E0 */ lwz r3, 0xe0(r31) +/* 801E3FD4 001E0F34 28 03 00 00 */ cmplwi r3, 0 +/* 801E3FD8 001E0F38 41 82 00 40 */ beq lbl_801E4018 +/* 801E3FDC 001E0F3C 80 BE 00 64 */ lwz r5, 0x64(r30) +/* 801E3FE0 001E0F40 38 80 00 00 */ li r4, 0 +/* 801E3FE4 001E0F44 28 05 00 00 */ cmplwi r5, 0 +/* 801E3FE8 001E0F48 41 82 00 20 */ beq lbl_801E4008 +/* 801E3FEC 001E0F4C 80 05 00 10 */ lwz r0, 0x10(r5) +/* 801E3FF0 001E0F50 28 00 00 00 */ cmplwi r0, 0 +/* 801E3FF4 001E0F54 40 82 00 10 */ bne lbl_801E4004 +/* 801E3FF8 001E0F58 88 05 00 28 */ lbz r0, 0x28(r5) +/* 801E3FFC 001E0F5C 28 00 00 00 */ cmplwi r0, 0 +/* 801E4000 001E0F60 41 82 00 08 */ beq lbl_801E4008 +lbl_801E4004: +/* 801E4004 001E0F64 38 80 00 01 */ li r4, 1 +lbl_801E4008: +/* 801E4008 001E0F68 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 801E400C 001E0F6C 41 82 00 0C */ beq lbl_801E4018 +/* 801E4010 001E0F70 38 9E 00 34 */ addi r4, r30, 0x34 +/* 801E4014 001E0F74 48 08 63 AD */ bl Draw__20CRainSplashGeneratorCFRC12CTransform4f +lbl_801E4018: +/* 801E4018 001E0F78 80 7F 00 F0 */ lwz r3, 0xf0(r31) +/* 801E401C 001E0F7C 28 03 00 00 */ cmplwi r3, 0 +/* 801E4020 001E0F80 41 82 00 14 */ beq lbl_801E4034 +/* 801E4024 001E0F84 81 83 00 00 */ lwz r12, 0(r3) +/* 801E4028 001E0F88 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801E402C 001E0F8C 7D 89 03 A6 */ mtctr r12 +/* 801E4030 001E0F90 4E 80 04 21 */ bctrl +lbl_801E4034: +/* 801E4034 001E0F94 88 1F 01 34 */ lbz r0, 0x134(r31) +/* 801E4038 001E0F98 38 60 00 01 */ li r3, 1 +/* 801E403C 001E0F9C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801E4040 001E0FA0 98 1F 01 34 */ stb r0, 0x134(r31) +lbl_801E4044: +/* 801E4044 001E0FA4 38 61 00 18 */ addi r3, r1, 0x18 +/* 801E4048 001E0FA8 48 12 85 99 */ bl SetModelMatrix__9CGraphicsFRC12CTransform4f +lbl_801E404C: +/* 801E404C 001E0FAC BB 41 00 48 */ lmw r26, 0x48(r1) +/* 801E4050 001E0FB0 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801E4054 001E0FB4 7C 08 03 A6 */ mtlr r0 +/* 801E4058 001E0FB8 38 21 00 60 */ addi r1, r1, 0x60 +/* 801E405C 001E0FBC 4E 80 00 20 */ blr + +.global AddStragglersToRenderer__20CActorModelParticlesCFRC13CStateManager +AddStragglersToRenderer__20CActorModelParticlesCFRC13CStateManager: +/* 801E4060 001E0FC0 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801E4064 001E0FC4 7C 08 02 A6 */ mflr r0 +/* 801E4068 001E0FC8 90 01 00 34 */ stw r0, 0x34(r1) +/* 801E406C 001E0FCC BF 21 00 14 */ stmw r25, 0x14(r1) +/* 801E4070 001E0FD0 7C 9C 23 78 */ mr r28, r4 +/* 801E4074 001E0FD4 7C 7B 1B 78 */ mr r27, r3 +/* 801E4078 001E0FD8 80 A4 0F 34 */ lwz r5, 0xf34(r4) +/* 801E407C 001E0FDC 83 E3 00 04 */ lwz r31, 4(r3) +/* 801E4080 001E0FE0 7C 05 00 D0 */ neg r0, r5 +/* 801E4084 001E0FE4 20 85 00 01 */ subfic r4, r5, 1 +/* 801E4088 001E0FE8 38 65 FF FF */ addi r3, r5, -1 +/* 801E408C 001E0FEC 7C 83 1B 78 */ or r3, r4, r3 +/* 801E4090 001E0FF0 7C 00 2B 78 */ or r0, r0, r5 +/* 801E4094 001E0FF4 54 7E 0F FE */ srwi r30, r3, 0x1f +/* 801E4098 001E0FF8 54 1D 0F FE */ srwi r29, r0, 0x1f +/* 801E409C 001E0FFC 48 00 01 F8 */ b lbl_801E4294 +lbl_801E40A0: +/* 801E40A0 001E1000 80 BF 00 0C */ lwz r5, 0xc(r31) +/* 801E40A4 001E1004 80 0D A3 90 */ lwz r0, lbl_805A8F50@sda21(r13) +/* 801E40A8 001E1008 7C 05 00 00 */ cmpw r5, r0 +/* 801E40AC 001E100C 41 82 00 44 */ beq lbl_801E40F0 +/* 801E40B0 001E1010 80 9C 08 50 */ lwz r4, 0x850(r28) +/* 801E40B4 001E1014 54 A3 18 38 */ slwi r3, r5, 3 +/* 801E40B8 001E1018 38 03 00 04 */ addi r0, r3, 4 +/* 801E40BC 001E101C 90 A1 00 0C */ stw r5, 0xc(r1) +/* 801E40C0 001E1020 80 64 00 20 */ lwz r3, 0x20(r4) +/* 801E40C4 001E1024 7C 63 00 2E */ lwzx r3, r3, r0 +/* 801E40C8 001E1028 88 03 00 F0 */ lbz r0, 0xf0(r3) +/* 801E40CC 001E102C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801E40D0 001E1030 41 82 01 C0 */ beq lbl_801E4290 +/* 801E40D4 001E1034 41 82 00 10 */ beq lbl_801E40E4 +/* 801E40D8 001E1038 80 63 01 2C */ lwz r3, 0x12c(r3) +/* 801E40DC 001E103C 80 03 10 DC */ lwz r0, 0x10dc(r3) +/* 801E40E0 001E1040 48 00 00 08 */ b lbl_801E40E8 +lbl_801E40E4: +/* 801E40E4 001E1044 38 00 00 00 */ li r0, 0 +lbl_801E40E8: +/* 801E40E8 001E1048 2C 00 00 00 */ cmpwi r0, 0 +/* 801E40EC 001E104C 41 82 01 A4 */ beq lbl_801E4290 +lbl_801E40F0: +/* 801E40F0 001E1050 A0 1F 00 08 */ lhz r0, 8(r31) +/* 801E40F4 001E1054 7F 83 E3 78 */ mr r3, r28 +/* 801E40F8 001E1058 38 81 00 08 */ addi r4, r1, 8 +/* 801E40FC 001E105C B0 01 00 08 */ sth r0, 8(r1) +/* 801E4100 001E1060 4B E6 84 A5 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801E4104 001E1064 28 03 00 00 */ cmplwi r3, 0 +/* 801E4108 001E1068 41 82 00 50 */ beq lbl_801E4158 +/* 801E410C 001E106C 28 1E 00 00 */ cmplwi r30, 0 +/* 801E4110 001E1070 41 82 00 10 */ beq lbl_801E4120 +/* 801E4114 001E1074 88 1F 01 34 */ lbz r0, 0x134(r31) +/* 801E4118 001E1078 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801E411C 001E107C 40 82 00 18 */ bne lbl_801E4134 +lbl_801E4120: +/* 801E4120 001E1080 28 1D 00 00 */ cmplwi r29, 0 +/* 801E4124 001E1084 41 82 00 34 */ beq lbl_801E4158 +/* 801E4128 001E1088 88 1F 01 34 */ lbz r0, 0x134(r31) +/* 801E412C 001E108C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801E4130 001E1090 41 82 00 28 */ beq lbl_801E4158 +lbl_801E4134: +/* 801E4134 001E1094 88 1F 01 34 */ lbz r0, 0x134(r31) +/* 801E4138 001E1098 38 60 00 00 */ li r3, 0 +/* 801E413C 001E109C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801E4140 001E10A0 98 1F 01 34 */ stb r0, 0x134(r31) +/* 801E4144 001E10A4 54 03 CF FE */ rlwinm r3, r0, 0x19, 0x1f, 0x1f +/* 801E4148 001E10A8 88 1F 01 34 */ lbz r0, 0x134(r31) +/* 801E414C 001E10AC 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801E4150 001E10B0 98 1F 01 34 */ stb r0, 0x134(r31) +/* 801E4154 001E10B4 48 00 01 3C */ b lbl_801E4290 +lbl_801E4158: +/* 801E4158 001E10B8 28 1E 00 00 */ cmplwi r30, 0 +/* 801E415C 001E10BC 41 82 00 A8 */ beq lbl_801E4204 +/* 801E4160 001E10C0 3B 20 00 00 */ li r25, 0 +/* 801E4164 001E10C4 3B 5F 00 14 */ addi r26, r31, 0x14 +lbl_801E4168: +/* 801E4168 001E10C8 80 9A 00 04 */ lwz r4, 4(r26) +/* 801E416C 001E10CC 28 04 00 00 */ cmplwi r4, 0 +/* 801E4170 001E10D0 41 82 00 18 */ beq lbl_801E4188 +/* 801E4174 001E10D4 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801E4178 001E10D8 81 83 00 00 */ lwz r12, 0(r3) +/* 801E417C 001E10DC 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801E4180 001E10E0 7D 89 03 A6 */ mtctr r12 +/* 801E4184 001E10E4 4E 80 04 21 */ bctrl +lbl_801E4188: +/* 801E4188 001E10E8 3B 39 00 01 */ addi r25, r25, 1 +/* 801E418C 001E10EC 3B 5A 00 0C */ addi r26, r26, 0xc +/* 801E4190 001E10F0 2C 19 00 08 */ cmpwi r25, 8 +/* 801E4194 001E10F4 41 80 FF D4 */ blt lbl_801E4168 +/* 801E4198 001E10F8 80 1C 0F 34 */ lwz r0, 0xf34(r28) +/* 801E419C 001E10FC 2C 00 00 00 */ cmpwi r0, 0 +/* 801E41A0 001E1100 41 82 00 24 */ beq lbl_801E41C4 +/* 801E41A4 001E1104 80 9F 00 84 */ lwz r4, 0x84(r31) +/* 801E41A8 001E1108 28 04 00 00 */ cmplwi r4, 0 +/* 801E41AC 001E110C 41 82 00 18 */ beq lbl_801E41C4 +/* 801E41B0 001E1110 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801E41B4 001E1114 81 83 00 00 */ lwz r12, 0(r3) +/* 801E41B8 001E1118 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801E41BC 001E111C 7D 89 03 A6 */ mtctr r12 +/* 801E41C0 001E1120 4E 80 04 21 */ bctrl +lbl_801E41C4: +/* 801E41C4 001E1124 80 9F 00 C4 */ lwz r4, 0xc4(r31) +/* 801E41C8 001E1128 28 04 00 00 */ cmplwi r4, 0 +/* 801E41CC 001E112C 41 82 00 18 */ beq lbl_801E41E4 +/* 801E41D0 001E1130 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801E41D4 001E1134 81 83 00 00 */ lwz r12, 0(r3) +/* 801E41D8 001E1138 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801E41DC 001E113C 7D 89 03 A6 */ mtctr r12 +/* 801E41E0 001E1140 4E 80 04 21 */ bctrl +lbl_801E41E4: +/* 801E41E4 001E1144 80 9F 00 CC */ lwz r4, 0xcc(r31) +/* 801E41E8 001E1148 28 04 00 00 */ cmplwi r4, 0 +/* 801E41EC 001E114C 41 82 00 18 */ beq lbl_801E4204 +/* 801E41F0 001E1150 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801E41F4 001E1154 81 83 00 00 */ lwz r12, 0(r3) +/* 801E41F8 001E1158 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801E41FC 001E115C 7D 89 03 A6 */ mtctr r12 +/* 801E4200 001E1160 4E 80 04 21 */ bctrl +lbl_801E4204: +/* 801E4204 001E1164 28 1D 00 00 */ cmplwi r29, 0 +/* 801E4208 001E1168 41 82 00 60 */ beq lbl_801E4268 +/* 801E420C 001E116C 3B 5F 00 98 */ addi r26, r31, 0x98 +/* 801E4210 001E1170 7F 59 D3 78 */ mr r25, r26 +/* 801E4214 001E1174 48 00 00 20 */ b lbl_801E4234 +lbl_801E4218: +/* 801E4218 001E1178 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801E421C 001E117C 80 99 00 04 */ lwz r4, 4(r25) +/* 801E4220 001E1180 81 83 00 00 */ lwz r12, 0(r3) +/* 801E4224 001E1184 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801E4228 001E1188 7D 89 03 A6 */ mtctr r12 +/* 801E422C 001E118C 4E 80 04 21 */ bctrl +/* 801E4230 001E1190 3B 39 00 08 */ addi r25, r25, 8 +lbl_801E4234: +/* 801E4234 001E1194 80 1F 00 94 */ lwz r0, 0x94(r31) +/* 801E4238 001E1198 54 00 18 38 */ slwi r0, r0, 3 +/* 801E423C 001E119C 7C 1A 02 14 */ add r0, r26, r0 +/* 801E4240 001E11A0 7C 19 00 40 */ cmplw r25, r0 +/* 801E4244 001E11A4 40 82 FF D4 */ bne lbl_801E4218 +/* 801E4248 001E11A8 80 9F 00 F0 */ lwz r4, 0xf0(r31) +/* 801E424C 001E11AC 28 04 00 00 */ cmplwi r4, 0 +/* 801E4250 001E11B0 41 82 00 18 */ beq lbl_801E4268 +/* 801E4254 001E11B4 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801E4258 001E11B8 81 83 00 00 */ lwz r12, 0(r3) +/* 801E425C 001E11BC 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801E4260 001E11C0 7D 89 03 A6 */ mtctr r12 +/* 801E4264 001E11C4 4E 80 04 21 */ bctrl +lbl_801E4268: +/* 801E4268 001E11C8 28 1E 00 00 */ cmplwi r30, 0 +/* 801E426C 001E11CC 41 82 00 24 */ beq lbl_801E4290 +/* 801E4270 001E11D0 88 1F 01 34 */ lbz r0, 0x134(r31) +/* 801E4274 001E11D4 38 60 00 00 */ li r3, 0 +/* 801E4278 001E11D8 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801E427C 001E11DC 98 1F 01 34 */ stb r0, 0x134(r31) +/* 801E4280 001E11E0 54 03 CF FE */ rlwinm r3, r0, 0x19, 0x1f, 0x1f +/* 801E4284 001E11E4 88 1F 01 34 */ lbz r0, 0x134(r31) +/* 801E4288 001E11E8 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801E428C 001E11EC 98 1F 01 34 */ stb r0, 0x134(r31) +lbl_801E4290: +/* 801E4290 001E11F0 83 FF 00 04 */ lwz r31, 4(r31) +lbl_801E4294: +/* 801E4294 001E11F4 80 1B 00 08 */ lwz r0, 8(r27) +/* 801E4298 001E11F8 7C 1F 00 40 */ cmplw r31, r0 +/* 801E429C 001E11FC 40 82 FE 04 */ bne lbl_801E40A0 +/* 801E42A0 001E1200 BB 21 00 14 */ lmw r25, 0x14(r1) +/* 801E42A4 001E1204 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801E42A8 001E1208 7C 08 03 A6 */ mtlr r0 +/* 801E42AC 001E120C 38 21 00 30 */ addi r1, r1, 0x30 +/* 801E42B0 001E1210 4E 80 00 20 */ blr + +.global FindSystem__20CActorModelParticlesF9TUniqueId +FindSystem__20CActorModelParticlesF9TUniqueId: +/* 801E42B4 001E1214 80 C4 00 04 */ lwz r6, 4(r4) +/* 801E42B8 001E1218 80 E4 00 08 */ lwz r7, 8(r4) +/* 801E42BC 001E121C 48 00 00 20 */ b lbl_801E42DC +lbl_801E42C0: +/* 801E42C0 001E1220 A0 86 00 08 */ lhz r4, 8(r6) +/* 801E42C4 001E1224 A0 05 00 00 */ lhz r0, 0(r5) +/* 801E42C8 001E1228 7C 04 00 40 */ cmplw r4, r0 +/* 801E42CC 001E122C 40 82 00 0C */ bne lbl_801E42D8 +/* 801E42D0 001E1230 90 C3 00 00 */ stw r6, 0(r3) +/* 801E42D4 001E1234 4E 80 00 20 */ blr +lbl_801E42D8: +/* 801E42D8 001E1238 80 C6 00 04 */ lwz r6, 4(r6) +lbl_801E42DC: +/* 801E42DC 001E123C 7C 06 38 40 */ cmplw r6, r7 +/* 801E42E0 001E1240 40 82 FF E0 */ bne lbl_801E42C0 +/* 801E42E4 001E1244 90 E3 00 00 */ stw r7, 0(r3) +/* 801E42E8 001E1248 4E 80 00 20 */ blr + +.global FindSystem__20CActorModelParticlesCF9TUniqueId +FindSystem__20CActorModelParticlesCF9TUniqueId: +/* 801E42EC 001E124C 80 C4 00 04 */ lwz r6, 4(r4) +/* 801E42F0 001E1250 80 E4 00 08 */ lwz r7, 8(r4) +/* 801E42F4 001E1254 48 00 00 20 */ b lbl_801E4314 +lbl_801E42F8: +/* 801E42F8 001E1258 A0 86 00 08 */ lhz r4, 8(r6) +/* 801E42FC 001E125C A0 05 00 00 */ lhz r0, 0(r5) +/* 801E4300 001E1260 7C 04 00 40 */ cmplw r4, r0 +/* 801E4304 001E1264 40 82 00 0C */ bne lbl_801E4310 +/* 801E4308 001E1268 90 C3 00 00 */ stw r6, 0(r3) +/* 801E430C 001E126C 4E 80 00 20 */ blr +lbl_801E4310: +/* 801E4310 001E1270 80 C6 00 04 */ lwz r6, 4(r6) +lbl_801E4314: +/* 801E4314 001E1274 7C 06 38 40 */ cmplw r6, r7 +/* 801E4318 001E1278 40 82 FF E0 */ bne lbl_801E42F8 +/* 801E431C 001E127C 90 E3 00 00 */ stw r7, 0(r3) +/* 801E4320 001E1280 4E 80 00 20 */ blr + +.global FindOrCreateSystem__20CActorModelParticlesFR6CActor +FindOrCreateSystem__20CActorModelParticlesFR6CActor: +/* 801E4324 001E1284 94 21 FE B0 */ stwu r1, -0x150(r1) +/* 801E4328 001E1288 7C 08 02 A6 */ mflr r0 +/* 801E432C 001E128C 90 01 01 54 */ stw r0, 0x154(r1) +/* 801E4330 001E1290 93 E1 01 4C */ stw r31, 0x14c(r1) +/* 801E4334 001E1294 7C 9F 23 78 */ mr r31, r4 +/* 801E4338 001E1298 93 C1 01 48 */ stw r30, 0x148(r1) +/* 801E433C 001E129C 7C 7E 1B 78 */ mr r30, r3 +/* 801E4340 001E12A0 88 05 00 E5 */ lbz r0, 0xe5(r5) +/* 801E4344 001E12A4 A0 65 00 08 */ lhz r3, 8(r5) +/* 801E4348 001E12A8 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 801E434C 001E12AC 41 82 00 30 */ beq lbl_801E437C +/* 801E4350 001E12B0 80 9F 00 04 */ lwz r4, 4(r31) +/* 801E4354 001E12B4 80 DF 00 08 */ lwz r6, 8(r31) +/* 801E4358 001E12B8 48 00 00 1C */ b lbl_801E4374 +lbl_801E435C: +/* 801E435C 001E12BC A0 04 00 08 */ lhz r0, 8(r4) +/* 801E4360 001E12C0 7C 00 18 40 */ cmplw r0, r3 +/* 801E4364 001E12C4 40 82 00 0C */ bne lbl_801E4370 +/* 801E4368 001E12C8 90 9E 00 00 */ stw r4, 0(r30) +/* 801E436C 001E12CC 48 00 00 58 */ b lbl_801E43C4 +lbl_801E4370: +/* 801E4370 001E12D0 80 84 00 04 */ lwz r4, 4(r4) +lbl_801E4374: +/* 801E4374 001E12D4 7C 04 30 40 */ cmplw r4, r6 +/* 801E4378 001E12D8 40 82 FF E4 */ bne lbl_801E435C +lbl_801E437C: +/* 801E437C 001E12DC 88 05 00 E5 */ lbz r0, 0xe5(r5) +/* 801E4380 001E12E0 38 60 00 01 */ li r3, 1 +/* 801E4384 001E12E4 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f +/* 801E4388 001E12E8 7C A4 2B 78 */ mr r4, r5 +/* 801E438C 001E12EC 98 05 00 E5 */ stb r0, 0xe5(r5) +/* 801E4390 001E12F0 7F E5 FB 78 */ mr r5, r31 +/* 801E4394 001E12F4 38 61 00 0C */ addi r3, r1, 0xc +/* 801E4398 001E12F8 48 00 2B 91 */ bl __ct__Q220CActorModelParticles5CItemFRC9TUniqueIdR20CActorModelParticles +/* 801E439C 001E12FC 80 1F 00 04 */ lwz r0, 4(r31) +/* 801E43A0 001E1300 7F C3 F3 78 */ mr r3, r30 +/* 801E43A4 001E1304 7F E4 FB 78 */ mr r4, r31 +/* 801E43A8 001E1308 38 A1 00 08 */ addi r5, r1, 8 +/* 801E43AC 001E130C 90 01 00 08 */ stw r0, 8(r1) +/* 801E43B0 001E1310 38 C1 00 0C */ addi r6, r1, 0xc +/* 801E43B4 001E1314 48 00 00 29 */ bl sub_801e43dc +/* 801E43B8 001E1318 38 61 00 0C */ addi r3, r1, 0xc +/* 801E43BC 001E131C 38 80 FF FF */ li r4, -1 +/* 801E43C0 001E1320 48 00 29 01 */ bl __dt__Q220CActorModelParticles5CItemFv +lbl_801E43C4: +/* 801E43C4 001E1324 80 01 01 54 */ lwz r0, 0x154(r1) +/* 801E43C8 001E1328 83 E1 01 4C */ lwz r31, 0x14c(r1) +/* 801E43CC 001E132C 83 C1 01 48 */ lwz r30, 0x148(r1) +/* 801E43D0 001E1330 7C 08 03 A6 */ mtlr r0 +/* 801E43D4 001E1334 38 21 01 50 */ addi r1, r1, 0x150 +/* 801E43D8 001E1338 4E 80 00 20 */ blr + +.global sub_801e43dc +sub_801e43dc: +/* 801E43DC 001E133C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801E43E0 001E1340 7C 08 02 A6 */ mflr r0 +/* 801E43E4 001E1344 90 01 00 14 */ stw r0, 0x14(r1) +/* 801E43E8 001E1348 7C 80 23 78 */ mr r0, r4 +/* 801E43EC 001E134C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801E43F0 001E1350 7C 7F 1B 78 */ mr r31, r3 +/* 801E43F4 001E1354 7C 03 03 78 */ mr r3, r0 +/* 801E43F8 001E1358 80 85 00 00 */ lwz r4, 0(r5) +/* 801E43FC 001E135C 7C C5 33 78 */ mr r5, r6 +/* 801E4400 001E1360 48 00 00 1D */ bl sub_801e441c +/* 801E4404 001E1364 90 7F 00 00 */ stw r3, 0(r31) +/* 801E4408 001E1368 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801E440C 001E136C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801E4410 001E1370 7C 08 03 A6 */ mtlr r0 +/* 801E4414 001E1374 38 21 00 10 */ addi r1, r1, 0x10 +/* 801E4418 001E1378 4E 80 00 20 */ blr + +.global sub_801e441c +sub_801e441c: +/* 801E441C 001E137C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801E4420 001E1380 7C 08 02 A6 */ mflr r0 +/* 801E4424 001E1384 7C A6 2B 78 */ mr r6, r5 +/* 801E4428 001E1388 90 01 00 14 */ stw r0, 0x14(r1) +/* 801E442C 001E138C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801E4430 001E1390 7C 9F 23 78 */ mr r31, r4 +/* 801E4434 001E1394 7F E5 FB 78 */ mr r5, r31 +/* 801E4438 001E1398 93 C1 00 08 */ stw r30, 8(r1) +/* 801E443C 001E139C 7C 7E 1B 78 */ mr r30, r3 +/* 801E4440 001E13A0 80 84 00 00 */ lwz r4, 0(r4) +/* 801E4444 001E13A4 48 00 00 49 */ bl sub_801e448c +/* 801E4448 001E13A8 80 1E 00 04 */ lwz r0, 4(r30) +/* 801E444C 001E13AC 7C 1F 00 40 */ cmplw r31, r0 +/* 801E4450 001E13B0 40 82 00 08 */ bne lbl_801E4458 +/* 801E4454 001E13B4 90 7E 00 04 */ stw r3, 4(r30) +lbl_801E4458: +/* 801E4458 001E13B8 80 83 00 00 */ lwz r4, 0(r3) +/* 801E445C 001E13BC 90 64 00 04 */ stw r3, 4(r4) +/* 801E4460 001E13C0 80 83 00 04 */ lwz r4, 4(r3) +/* 801E4464 001E13C4 90 64 00 00 */ stw r3, 0(r4) +/* 801E4468 001E13C8 80 9E 00 14 */ lwz r4, 0x14(r30) +/* 801E446C 001E13CC 38 04 00 01 */ addi r0, r4, 1 +/* 801E4470 001E13D0 90 1E 00 14 */ stw r0, 0x14(r30) +/* 801E4474 001E13D4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801E4478 001E13D8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801E447C 001E13DC 83 C1 00 08 */ lwz r30, 8(r1) +/* 801E4480 001E13E0 7C 08 03 A6 */ mtlr r0 +/* 801E4484 001E13E4 38 21 00 10 */ addi r1, r1, 0x10 +/* 801E4488 001E13E8 4E 80 00 20 */ blr + +.global sub_801e448c +sub_801e448c: +/* 801E448C 001E13EC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801E4490 001E13F0 7C 08 02 A6 */ mflr r0 +/* 801E4494 001E13F4 3C 60 80 3D */ lis r3, lbl_803D1EB0@ha +/* 801E4498 001E13F8 90 01 00 24 */ stw r0, 0x24(r1) +/* 801E449C 001E13FC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801E44A0 001E1400 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801E44A4 001E1404 7C DE 33 78 */ mr r30, r6 +/* 801E44A8 001E1408 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801E44AC 001E140C 7C BD 2B 78 */ mr r29, r5 +/* 801E44B0 001E1410 38 A3 1E B0 */ addi r5, r3, lbl_803D1EB0@l +/* 801E44B4 001E1414 38 60 01 40 */ li r3, 0x140 +/* 801E44B8 001E1418 93 81 00 10 */ stw r28, 0x10(r1) +/* 801E44BC 001E141C 7C 9C 23 78 */ mr r28, r4 +/* 801E44C0 001E1420 38 85 00 5C */ addi r4, r5, 0x5c +/* 801E44C4 001E1424 38 A0 00 00 */ li r5, 0 +/* 801E44C8 001E1428 48 13 13 51 */ bl __nwa__FUlPCcPCc +/* 801E44CC 001E142C 7C 7F 1B 79 */ or. r31, r3, r3 +/* 801E44D0 001E1430 41 82 00 0C */ beq lbl_801E44DC +/* 801E44D4 001E1434 93 9F 00 00 */ stw r28, 0(r31) +/* 801E44D8 001E1438 93 BF 00 04 */ stw r29, 4(r31) +lbl_801E44DC: +/* 801E44DC 001E143C 34 7F 00 08 */ addic. r3, r31, 8 +/* 801E44E0 001E1440 41 82 00 0C */ beq lbl_801E44EC +/* 801E44E4 001E1444 7F C4 F3 78 */ mr r4, r30 +/* 801E44E8 001E1448 48 00 00 29 */ bl sub_801e4510 +lbl_801E44EC: +/* 801E44EC 001E144C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801E44F0 001E1450 7F E3 FB 78 */ mr r3, r31 +/* 801E44F4 001E1454 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801E44F8 001E1458 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801E44FC 001E145C 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801E4500 001E1460 83 81 00 10 */ lwz r28, 0x10(r1) +/* 801E4504 001E1464 7C 08 03 A6 */ mtlr r0 +/* 801E4508 001E1468 38 21 00 20 */ addi r1, r1, 0x20 +/* 801E450C 001E146C 4E 80 00 20 */ blr + +.global sub_801e4510 +sub_801e4510: +/* 801E4510 001E1470 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801E4514 001E1474 7C 08 02 A6 */ mflr r0 +/* 801E4518 001E1478 90 01 00 14 */ stw r0, 0x14(r1) +/* 801E451C 001E147C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801E4520 001E1480 7C 9F 23 78 */ mr r31, r4 +/* 801E4524 001E1484 93 C1 00 08 */ stw r30, 8(r1) +/* 801E4528 001E1488 7C 7E 1B 78 */ mr r30, r3 +/* 801E452C 001E148C 38 BE 00 0C */ addi r5, r30, 0xc +/* 801E4530 001E1490 A0 04 00 00 */ lhz r0, 0(r4) +/* 801E4534 001E1494 38 9F 00 0C */ addi r4, r31, 0xc +/* 801E4538 001E1498 B0 03 00 00 */ sth r0, 0(r3) +/* 801E453C 001E149C 38 60 00 00 */ li r3, 0 +/* 801E4540 001E14A0 80 1F 00 04 */ lwz r0, 4(r31) +/* 801E4544 001E14A4 90 1E 00 04 */ stw r0, 4(r30) +/* 801E4548 001E14A8 80 1F 00 08 */ lwz r0, 8(r31) +/* 801E454C 001E14AC 90 1E 00 08 */ stw r0, 8(r30) +/* 801E4550 001E14B0 80 1E 00 08 */ lwz r0, 8(r30) +/* 801E4554 001E14B4 7C 09 03 A6 */ mtctr r0 +/* 801E4558 001E14B8 2C 00 00 00 */ cmpwi r0, 0 +/* 801E455C 001E14BC 40 81 00 34 */ ble lbl_801E4590 +lbl_801E4560: +/* 801E4560 001E14C0 28 05 00 00 */ cmplwi r5, 0 +/* 801E4564 001E14C4 41 82 00 20 */ beq lbl_801E4584 +/* 801E4568 001E14C8 88 04 00 00 */ lbz r0, 0(r4) +/* 801E456C 001E14CC 98 05 00 00 */ stb r0, 0(r5) +/* 801E4570 001E14D0 80 04 00 04 */ lwz r0, 4(r4) +/* 801E4574 001E14D4 90 05 00 04 */ stw r0, 4(r5) +/* 801E4578 001E14D8 98 64 00 00 */ stb r3, 0(r4) +/* 801E457C 001E14DC 80 04 00 08 */ lwz r0, 8(r4) +/* 801E4580 001E14E0 90 05 00 08 */ stw r0, 8(r5) +lbl_801E4584: +/* 801E4584 001E14E4 38 A5 00 0C */ addi r5, r5, 0xc +/* 801E4588 001E14E8 38 84 00 0C */ addi r4, r4, 0xc +/* 801E458C 001E14EC 42 00 FF D4 */ bdnz lbl_801E4560 +lbl_801E4590: +/* 801E4590 001E14F0 C0 1F 00 6C */ lfs f0, 0x6c(r31) +/* 801E4594 001E14F4 38 60 00 00 */ li r3, 0 +/* 801E4598 001E14F8 38 BE 00 90 */ addi r5, r30, 0x90 +/* 801E459C 001E14FC 38 9F 00 90 */ addi r4, r31, 0x90 +/* 801E45A0 001E1500 D0 1E 00 6C */ stfs f0, 0x6c(r30) +/* 801E45A4 001E1504 88 1F 00 70 */ lbz r0, 0x70(r31) +/* 801E45A8 001E1508 98 1E 00 70 */ stb r0, 0x70(r30) +/* 801E45AC 001E150C 80 1F 00 74 */ lwz r0, 0x74(r31) +/* 801E45B0 001E1510 90 1E 00 74 */ stw r0, 0x74(r30) +/* 801E45B4 001E1514 88 1F 00 78 */ lbz r0, 0x78(r31) +/* 801E45B8 001E1518 98 1E 00 78 */ stb r0, 0x78(r30) +/* 801E45BC 001E151C 80 1F 00 7C */ lwz r0, 0x7c(r31) +/* 801E45C0 001E1520 90 1E 00 7C */ stw r0, 0x7c(r30) +/* 801E45C4 001E1524 98 7F 00 78 */ stb r3, 0x78(r31) +/* 801E45C8 001E1528 80 1F 00 80 */ lwz r0, 0x80(r31) +/* 801E45CC 001E152C 90 1E 00 80 */ stw r0, 0x80(r30) +/* 801E45D0 001E1530 80 1F 00 84 */ lwz r0, 0x84(r31) +/* 801E45D4 001E1534 90 1E 00 84 */ stw r0, 0x84(r30) +/* 801E45D8 001E1538 80 1F 00 88 */ lwz r0, 0x88(r31) +/* 801E45DC 001E153C 90 1E 00 88 */ stw r0, 0x88(r30) +/* 801E45E0 001E1540 80 1F 00 8C */ lwz r0, 0x8c(r31) +/* 801E45E4 001E1544 90 1E 00 8C */ stw r0, 0x8c(r30) +/* 801E45E8 001E1548 80 1E 00 8C */ lwz r0, 0x8c(r30) +/* 801E45EC 001E154C 7C 09 03 A6 */ mtctr r0 +/* 801E45F0 001E1550 2C 00 00 00 */ cmpwi r0, 0 +/* 801E45F4 001E1554 40 81 00 2C */ ble lbl_801E4620 +lbl_801E45F8: +/* 801E45F8 001E1558 28 05 00 00 */ cmplwi r5, 0 +/* 801E45FC 001E155C 41 82 00 18 */ beq lbl_801E4614 +/* 801E4600 001E1560 88 04 00 00 */ lbz r0, 0(r4) +/* 801E4604 001E1564 98 05 00 00 */ stb r0, 0(r5) +/* 801E4608 001E1568 80 04 00 04 */ lwz r0, 4(r4) +/* 801E460C 001E156C 90 05 00 04 */ stw r0, 4(r5) +/* 801E4610 001E1570 98 64 00 00 */ stb r3, 0(r4) +lbl_801E4614: +/* 801E4614 001E1574 38 A5 00 08 */ addi r5, r5, 8 +/* 801E4618 001E1578 38 84 00 08 */ addi r4, r4, 8 +/* 801E461C 001E157C 42 00 FF DC */ bdnz lbl_801E45F8 +lbl_801E4620: +/* 801E4620 001E1580 80 1F 00 B0 */ lwz r0, 0xb0(r31) +/* 801E4624 001E1584 38 A0 00 00 */ li r5, 0 +/* 801E4628 001E1588 38 7E 00 DC */ addi r3, r30, 0xdc +/* 801E462C 001E158C 38 9F 00 DC */ addi r4, r31, 0xdc +/* 801E4630 001E1590 90 1E 00 B0 */ stw r0, 0xb0(r30) +/* 801E4634 001E1594 80 1F 00 B4 */ lwz r0, 0xb4(r31) +/* 801E4638 001E1598 90 1E 00 B4 */ stw r0, 0xb4(r30) +/* 801E463C 001E159C 88 1F 00 B8 */ lbz r0, 0xb8(r31) +/* 801E4640 001E15A0 98 1E 00 B8 */ stb r0, 0xb8(r30) +/* 801E4644 001E15A4 80 1F 00 BC */ lwz r0, 0xbc(r31) +/* 801E4648 001E15A8 90 1E 00 BC */ stw r0, 0xbc(r30) +/* 801E464C 001E15AC 98 BF 00 B8 */ stb r5, 0xb8(r31) +/* 801E4650 001E15B0 88 1F 00 C0 */ lbz r0, 0xc0(r31) +/* 801E4654 001E15B4 98 1E 00 C0 */ stb r0, 0xc0(r30) +/* 801E4658 001E15B8 80 1F 00 C4 */ lwz r0, 0xc4(r31) +/* 801E465C 001E15BC 90 1E 00 C4 */ stw r0, 0xc4(r30) +/* 801E4660 001E15C0 98 BF 00 C0 */ stb r5, 0xc0(r31) +/* 801E4664 001E15C4 80 1F 00 C8 */ lwz r0, 0xc8(r31) +/* 801E4668 001E15C8 90 1E 00 C8 */ stw r0, 0xc8(r30) +/* 801E466C 001E15CC 80 1F 00 CC */ lwz r0, 0xcc(r31) +/* 801E4670 001E15D0 90 1E 00 CC */ stw r0, 0xcc(r30) +/* 801E4674 001E15D4 80 1F 00 D0 */ lwz r0, 0xd0(r31) +/* 801E4678 001E15D8 90 1E 00 D0 */ stw r0, 0xd0(r30) +/* 801E467C 001E15DC 88 1F 00 D4 */ lbz r0, 0xd4(r31) +/* 801E4680 001E15E0 98 1E 00 D4 */ stb r0, 0xd4(r30) +/* 801E4684 001E15E4 80 1F 00 D8 */ lwz r0, 0xd8(r31) +/* 801E4688 001E15E8 90 1E 00 D8 */ stw r0, 0xd8(r30) +/* 801E468C 001E15EC 98 BF 00 D4 */ stb r5, 0xd4(r31) +/* 801E4690 001E15F0 48 15 C8 19 */ bl __ct__6CTokenFRC6CToken +/* 801E4694 001E15F4 88 BF 00 E4 */ lbz r5, 0xe4(r31) +/* 801E4698 001E15F8 38 00 00 00 */ li r0, 0 +/* 801E469C 001E15FC 38 7E 00 F8 */ addi r3, r30, 0xf8 +/* 801E46A0 001E1600 38 9F 00 F8 */ addi r4, r31, 0xf8 +/* 801E46A4 001E1604 98 BE 00 E4 */ stb r5, 0xe4(r30) +/* 801E46A8 001E1608 80 BF 00 E8 */ lwz r5, 0xe8(r31) +/* 801E46AC 001E160C 90 BE 00 E8 */ stw r5, 0xe8(r30) +/* 801E46B0 001E1610 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 801E46B4 001E1614 C0 1F 00 EC */ lfs f0, 0xec(r31) +/* 801E46B8 001E1618 D0 1E 00 EC */ stfs f0, 0xec(r30) +/* 801E46BC 001E161C C0 1F 00 F0 */ lfs f0, 0xf0(r31) +/* 801E46C0 001E1620 D0 1E 00 F0 */ stfs f0, 0xf0(r30) +/* 801E46C4 001E1624 C0 1F 00 F4 */ lfs f0, 0xf4(r31) +/* 801E46C8 001E1628 D0 1E 00 F4 */ stfs f0, 0xf4(r30) +/* 801E46CC 001E162C 48 12 E4 A9 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801E46D0 001E1630 80 1F 01 28 */ lwz r0, 0x128(r31) +/* 801E46D4 001E1634 7F C3 F3 78 */ mr r3, r30 +/* 801E46D8 001E1638 90 1E 01 28 */ stw r0, 0x128(r30) +/* 801E46DC 001E163C 88 1F 01 2C */ lbz r0, 0x12c(r31) +/* 801E46E0 001E1640 98 1E 01 2C */ stb r0, 0x12c(r30) +/* 801E46E4 001E1644 C0 1F 01 30 */ lfs f0, 0x130(r31) +/* 801E46E8 001E1648 D0 1E 01 30 */ stfs f0, 0x130(r30) +/* 801E46EC 001E164C 88 1F 01 34 */ lbz r0, 0x134(r31) +/* 801E46F0 001E1650 98 1E 01 34 */ stb r0, 0x134(r30) +/* 801E46F4 001E1654 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801E46F8 001E1658 83 C1 00 08 */ lwz r30, 8(r1) +/* 801E46FC 001E165C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801E4700 001E1660 7C 08 03 A6 */ mtlr r0 +/* 801E4704 001E1664 38 21 00 10 */ addi r1, r1, 0x10 +/* 801E4708 001E1668 4E 80 00 20 */ blr + +.global "__dt__Q24rstl32auto_ptr<20CRainSplashGenerator>" +"__dt__Q24rstl32auto_ptr<20CRainSplashGenerator>": +/* 801E470C 001E166C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801E4710 001E1670 7C 08 02 A6 */ mflr r0 +/* 801E4714 001E1674 90 01 00 14 */ stw r0, 0x14(r1) +/* 801E4718 001E1678 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801E471C 001E167C 7C 9F 23 78 */ mr r31, r4 +/* 801E4720 001E1680 93 C1 00 08 */ stw r30, 8(r1) +/* 801E4724 001E1684 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801E4728 001E1688 41 82 00 2C */ beq lbl_801E4754 +/* 801E472C 001E168C 88 1E 00 00 */ lbz r0, 0(r30) +/* 801E4730 001E1690 28 00 00 00 */ cmplwi r0, 0 +/* 801E4734 001E1694 41 82 00 10 */ beq lbl_801E4744 +/* 801E4738 001E1698 80 7E 00 04 */ lwz r3, 4(r30) +/* 801E473C 001E169C 38 80 00 01 */ li r4, 1 +/* 801E4740 001E16A0 4B E5 E8 91 */ bl __dt__20CRainSplashGeneratorFv +lbl_801E4744: +/* 801E4744 001E16A4 7F E0 07 35 */ extsh. r0, r31 +/* 801E4748 001E16A8 40 81 00 0C */ ble lbl_801E4754 +/* 801E474C 001E16AC 7F C3 F3 78 */ mr r3, r30 +/* 801E4750 001E16B0 48 13 11 E1 */ bl Free__7CMemoryFPCv +lbl_801E4754: +/* 801E4754 001E16B4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801E4758 001E16B8 7F C3 F3 78 */ mr r3, r30 +/* 801E475C 001E16BC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801E4760 001E16C0 83 C1 00 08 */ lwz r30, 8(r1) +/* 801E4764 001E16C4 7C 08 03 A6 */ mtlr r0 +/* 801E4768 001E16C8 38 21 00 10 */ addi r1, r1, 0x10 +/* 801E476C 001E16CC 4E 80 00 20 */ blr + +.global SetupHook__20CActorModelParticlesCF9TUniqueId +SetupHook__20CActorModelParticlesCF9TUniqueId: +/* 801E4770 001E16D0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801E4774 001E16D4 7C 08 02 A6 */ mflr r0 +/* 801E4778 001E16D8 90 01 00 24 */ stw r0, 0x24(r1) +/* 801E477C 001E16DC 38 A1 00 08 */ addi r5, r1, 8 +/* 801E4780 001E16E0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801E4784 001E16E4 7C 7F 1B 78 */ mr r31, r3 +/* 801E4788 001E16E8 38 61 00 0C */ addi r3, r1, 0xc +/* 801E478C 001E16EC A0 04 00 00 */ lhz r0, 0(r4) +/* 801E4790 001E16F0 7F E4 FB 78 */ mr r4, r31 +/* 801E4794 001E16F4 B0 01 00 08 */ sth r0, 8(r1) +/* 801E4798 001E16F8 4B FF FB 55 */ bl FindSystem__20CActorModelParticlesCF9TUniqueId +/* 801E479C 001E16FC 80 61 00 0C */ lwz r3, 0xc(r1) +/* 801E47A0 001E1700 80 1F 00 08 */ lwz r0, 8(r31) +/* 801E47A4 001E1704 7C 03 00 40 */ cmplw r3, r0 +/* 801E47A8 001E1708 41 82 00 14 */ beq lbl_801E47BC +/* 801E47AC 001E170C 3C 80 80 1E */ lis r4, PointGenerator__20CActorModelParticlesFUiPC9CVector3fPC9CVector3fi@ha +/* 801E47B0 001E1710 38 63 00 08 */ addi r3, r3, 8 +/* 801E47B4 001E1714 38 84 4E 20 */ addi r4, r4, PointGenerator__20CActorModelParticlesFUiPC9CVector3fPC9CVector3fi@l +/* 801E47B8 001E1718 48 16 DF 5D */ bl SetPointGeneratorFunc__13CSkinnedModelFUiPFUiPC9CVector3fPC9CVector3fi_v +lbl_801E47BC: +/* 801E47BC 001E171C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801E47C0 001E1720 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801E47C4 001E1724 7C 08 03 A6 */ mtlr r0 +/* 801E47C8 001E1728 38 21 00 20 */ addi r1, r1, 0x20 +/* 801E47CC 001E172C 4E 80 00 20 */ blr + +.global GeneratePoints__Q220CActorModelParticles5CItemFPC9CVector3fPC9CVector3fi +GeneratePoints__Q220CActorModelParticles5CItemFPC9CVector3fPC9CVector3fi: +/* 801E47D0 001E1730 94 21 FE F0 */ stwu r1, -0x110(r1) +/* 801E47D4 001E1734 7C 08 02 A6 */ mflr r0 +/* 801E47D8 001E1738 90 01 01 14 */ stw r0, 0x114(r1) +/* 801E47DC 001E173C DB E1 01 00 */ stfd f31, 0x100(r1) +/* 801E47E0 001E1740 F3 E1 01 08 */ psq_st f31, 264(r1), 0, qr0 +/* 801E47E4 001E1744 BE E1 00 DC */ stmw r23, 0xdc(r1) +/* 801E47E8 001E1748 7C 7A 1B 78 */ mr r26, r3 +/* 801E47EC 001E174C 7C 9B 23 78 */ mr r27, r4 +/* 801E47F0 001E1750 7C BC 2B 78 */ mr r28, r5 +/* 801E47F4 001E1754 7C DD 33 78 */ mr r29, r6 +/* 801E47F8 001E1758 3B 1A 00 0C */ addi r24, r26, 0xc +/* 801E47FC 001E175C 3B 20 00 00 */ li r25, 0 +lbl_801E4800: +/* 801E4800 001E1760 83 D8 00 04 */ lwz r30, 4(r24) +/* 801E4804 001E1764 28 1E 00 00 */ cmplwi r30, 0 +/* 801E4808 001E1768 41 82 00 98 */ beq lbl_801E48A0 +/* 801E480C 001E176C 80 98 00 08 */ lwz r4, 8(r24) +/* 801E4810 001E1770 38 61 00 14 */ addi r3, r1, 0x14 +/* 801E4814 001E1774 48 12 DD D9 */ bl __ct__9CRandom16FUi +/* 801E4818 001E1778 38 61 00 14 */ addi r3, r1, 0x14 +/* 801E481C 001E177C 48 12 DC C1 */ bl Float__9CRandom16Fv +/* 801E4820 001E1780 38 7D FF FF */ addi r3, r29, -1 +/* 801E4824 001E1784 3C 00 43 30 */ lis r0, 0x4330 +/* 801E4828 001E1788 6C 64 80 00 */ xoris r4, r3, 0x8000 +/* 801E482C 001E178C 90 01 00 C8 */ stw r0, 0xc8(r1) +/* 801E4830 001E1790 C8 42 AD 88 */ lfd f2, lbl_805ACAA8@sda21(r2) +/* 801E4834 001E1794 7F C3 F3 78 */ mr r3, r30 +/* 801E4838 001E1798 90 81 00 CC */ stw r4, 0xcc(r1) +/* 801E483C 001E179C 38 81 00 44 */ addi r4, r1, 0x44 +/* 801E4840 001E17A0 C0 BA 00 F4 */ lfs f5, 0xf4(r26) +/* 801E4844 001E17A4 C8 01 00 C8 */ lfd f0, 0xc8(r1) +/* 801E4848 001E17A8 C0 7A 00 F0 */ lfs f3, 0xf0(r26) +/* 801E484C 001E17AC EC 00 10 28 */ fsubs f0, f0, f2 +/* 801E4850 001E17B0 C0 5A 00 EC */ lfs f2, 0xec(r26) +/* 801E4854 001E17B4 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801E4858 001E17B8 FC 00 00 1E */ fctiwz f0, f0 +/* 801E485C 001E17BC D8 01 00 D0 */ stfd f0, 0xd0(r1) +/* 801E4860 001E17C0 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 801E4864 001E17C4 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801E4868 001E17C8 7C BB 02 14 */ add r5, r27, r0 +/* 801E486C 001E17CC C0 85 00 08 */ lfs f4, 8(r5) +/* 801E4870 001E17D0 C0 25 00 04 */ lfs f1, 4(r5) +/* 801E4874 001E17D4 C0 05 00 00 */ lfs f0, 0(r5) +/* 801E4878 001E17D8 EC 85 01 32 */ fmuls f4, f5, f4 +/* 801E487C 001E17DC EC 23 00 72 */ fmuls f1, f3, f1 +/* 801E4880 001E17E0 EC 02 00 32 */ fmuls f0, f2, f0 +/* 801E4884 001E17E4 D0 81 00 4C */ stfs f4, 0x4c(r1) +/* 801E4888 001E17E8 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 801E488C 001E17EC D0 21 00 48 */ stfs f1, 0x48(r1) +/* 801E4890 001E17F0 81 9E 00 00 */ lwz r12, 0(r30) +/* 801E4894 001E17F4 81 8C 00 18 */ lwz r12, 0x18(r12) +/* 801E4898 001E17F8 7D 89 03 A6 */ mtctr r12 +/* 801E489C 001E17FC 4E 80 04 21 */ bctrl +lbl_801E48A0: +/* 801E48A0 001E1800 3B 39 00 01 */ addi r25, r25, 1 +/* 801E48A4 001E1804 3B 18 00 0C */ addi r24, r24, 0xc +/* 801E48A8 001E1808 2C 19 00 08 */ cmpwi r25, 8 +/* 801E48AC 001E180C 41 80 FF 54 */ blt lbl_801E4800 +/* 801E48B0 001E1810 80 1A 00 84 */ lwz r0, 0x84(r26) +/* 801E48B4 001E1814 2C 00 00 00 */ cmpwi r0, 0 +/* 801E48B8 001E1818 40 81 01 90 */ ble lbl_801E4A48 +/* 801E48BC 001E181C 80 9A 00 88 */ lwz r4, 0x88(r26) +/* 801E48C0 001E1820 38 61 00 10 */ addi r3, r1, 0x10 +/* 801E48C4 001E1824 48 12 DD 29 */ bl __ct__9CRandom16FUi +/* 801E48C8 001E1828 80 7A 00 84 */ lwz r3, 0x84(r26) +/* 801E48CC 001E182C 80 0D 92 2C */ lwz r0, lbl_805A7DEC@sda21(r13) +/* 801E48D0 001E1830 7C 03 00 00 */ cmpw r3, r0 +/* 801E48D4 001E1834 40 80 00 0C */ bge lbl_801E48E0 +/* 801E48D8 001E1838 38 7A 00 84 */ addi r3, r26, 0x84 +/* 801E48DC 001E183C 48 00 00 08 */ b lbl_801E48E4 +lbl_801E48E0: +/* 801E48E0 001E1840 38 6D 92 2C */ addi r3, r13, lbl_805A7DEC@sda21 +lbl_801E48E4: +/* 801E48E4 001E1844 3C 80 80 5A */ lis r4, lbl_805A66F4@ha +/* 801E48E8 001E1848 83 E3 00 00 */ lwz r31, 0(r3) +/* 801E48EC 001E184C 80 7A 00 80 */ lwz r3, 0x80(r26) +/* 801E48F0 001E1850 3B 24 66 F4 */ addi r25, r4, lbl_805A66F4@l +/* 801E48F4 001E1854 C3 E2 AD 80 */ lfs f31, lbl_805ACAA0@sda21(r2) +/* 801E48F8 001E1858 3B C0 00 00 */ li r30, 0 +/* 801E48FC 001E185C 48 00 01 2C */ b lbl_801E4A28 +lbl_801E4900: +/* 801E4900 001E1860 7F 64 DB 78 */ mr r4, r27 +/* 801E4904 001E1864 7F A5 EB 78 */ mr r5, r29 +/* 801E4908 001E1868 38 C1 00 10 */ addi r6, r1, 0x10 +/* 801E490C 001E186C 48 00 04 45 */ bl GetNextBestPt__FiPC9CVector3fiR9CRandom16 +/* 801E4910 001E1870 7C 77 1B 78 */ mr r23, r3 +/* 801E4914 001E1874 C0 BA 00 F4 */ lfs f5, 0xf4(r26) +/* 801E4918 001E1878 1F 17 00 0C */ mulli r24, r23, 0xc +/* 801E491C 001E187C C0 7A 00 F0 */ lfs f3, 0xf0(r26) +/* 801E4920 001E1880 C0 3A 00 EC */ lfs f1, 0xec(r26) +/* 801E4924 001E1884 38 81 00 38 */ addi r4, r1, 0x38 +/* 801E4928 001E1888 7C 7B C2 14 */ add r3, r27, r24 +/* 801E492C 001E188C C0 83 00 08 */ lfs f4, 8(r3) +/* 801E4930 001E1890 C0 43 00 04 */ lfs f2, 4(r3) +/* 801E4934 001E1894 C0 03 00 00 */ lfs f0, 0(r3) +/* 801E4938 001E1898 EC 85 01 32 */ fmuls f4, f5, f4 +/* 801E493C 001E189C EC 43 00 B2 */ fmuls f2, f3, f2 +/* 801E4940 001E18A0 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801E4944 001E18A4 D0 81 00 40 */ stfs f4, 0x40(r1) +/* 801E4948 001E18A8 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 801E494C 001E18AC D0 41 00 3C */ stfs f2, 0x3c(r1) +/* 801E4950 001E18B0 80 7A 00 7C */ lwz r3, 0x7c(r26) +/* 801E4954 001E18B4 81 83 00 00 */ lwz r12, 0(r3) +/* 801E4958 001E18B8 81 8C 00 18 */ lwz r12, 0x18(r12) +/* 801E495C 001E18BC 7D 89 03 A6 */ mtctr r12 +/* 801E4960 001E18C0 4E 80 04 21 */ bctrl +/* 801E4964 001E18C4 7C 9C C2 14 */ add r4, r28, r24 +/* 801E4968 001E18C8 38 61 00 5C */ addi r3, r1, 0x5c +/* 801E496C 001E18CC C0 04 00 08 */ lfs f0, 8(r4) +/* 801E4970 001E18D0 C0 24 00 00 */ lfs f1, 0(r4) +/* 801E4974 001E18D4 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 801E4978 001E18D8 C0 04 00 04 */ lfs f0, 4(r4) +/* 801E497C 001E18DC D0 21 00 5C */ stfs f1, 0x5c(r1) +/* 801E4980 001E18E0 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 801E4984 001E18E4 D3 E1 00 64 */ stfs f31, 0x64(r1) +/* 801E4988 001E18E8 48 12 FD 71 */ bl CanBeNormalized__9CVector3fCFv +/* 801E498C 001E18EC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E4990 001E18F0 41 82 00 84 */ beq lbl_801E4A14 +/* 801E4994 001E18F4 38 61 00 5C */ addi r3, r1, 0x5c +/* 801E4998 001E18F8 48 12 FF 61 */ bl Normalize__9CVector3fFv +/* 801E499C 001E18FC 3C 80 80 5A */ lis r4, lbl_805A66F4@ha +/* 801E49A0 001E1900 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801E49A4 001E1904 38 C4 66 F4 */ addi r6, r4, lbl_805A66F4@l +/* 801E49A8 001E1908 C0 81 00 60 */ lfs f4, 0x60(r1) +/* 801E49AC 001E190C C0 46 00 00 */ lfs f2, 0(r6) +/* 801E49B0 001E1910 38 E3 66 A0 */ addi r7, r3, skZero3f@l +/* 801E49B4 001E1914 C0 A1 00 64 */ lfs f5, 0x64(r1) +/* 801E49B8 001E1918 38 61 00 98 */ addi r3, r1, 0x98 +/* 801E49BC 001E191C EC 02 01 32 */ fmuls f0, f2, f4 +/* 801E49C0 001E1920 C0 D9 00 04 */ lfs f6, 4(r25) +/* 801E49C4 001E1924 C0 21 00 5C */ lfs f1, 0x5c(r1) +/* 801E49C8 001E1928 38 81 00 2C */ addi r4, r1, 0x2c +/* 801E49CC 001E192C C0 F9 00 08 */ lfs f7, 8(r25) +/* 801E49D0 001E1930 EC 66 01 72 */ fmuls f3, f6, f5 +/* 801E49D4 001E1934 EC 01 01 B8 */ fmsubs f0, f1, f6, f0 +/* 801E49D8 001E1938 38 A1 00 5C */ addi r5, r1, 0x5c +/* 801E49DC 001E193C EC 27 00 72 */ fmuls f1, f7, f1 +/* 801E49E0 001E1940 EC 64 19 F8 */ fmsubs f3, f4, f7, f3 +/* 801E49E4 001E1944 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801E49E8 001E1948 EC 05 08 B8 */ fmsubs f0, f5, f2, f1 +/* 801E49EC 001E194C D0 61 00 2C */ stfs f3, 0x2c(r1) +/* 801E49F0 001E1950 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801E49F4 001E1954 83 1A 00 7C */ lwz r24, 0x7c(r26) +/* 801E49F8 001E1958 48 12 E4 65 */ bl __ct__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3fRC9CVector3f_0 +/* 801E49FC 001E195C 7F 03 C3 78 */ mr r3, r24 +/* 801E4A00 001E1960 38 81 00 98 */ addi r4, r1, 0x98 +/* 801E4A04 001E1964 81 98 00 00 */ lwz r12, 0(r24) +/* 801E4A08 001E1968 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 801E4A0C 001E196C 7D 89 03 A6 */ mtctr r12 +/* 801E4A10 001E1970 4E 80 04 21 */ bctrl +lbl_801E4A14: +/* 801E4A14 001E1974 80 7A 00 7C */ lwz r3, 0x7c(r26) +/* 801E4A18 001E1978 38 80 00 01 */ li r4, 1 +/* 801E4A1C 001E197C 48 13 7E A5 */ bl ForceParticleCreation__11CElementGenFi +/* 801E4A20 001E1980 7E E3 BB 78 */ mr r3, r23 +/* 801E4A24 001E1984 3B DE 00 01 */ addi r30, r30, 1 +lbl_801E4A28: +/* 801E4A28 001E1988 7C 1E F8 00 */ cmpw r30, r31 +/* 801E4A2C 001E198C 41 80 FE D4 */ blt lbl_801E4900 +/* 801E4A30 001E1990 80 1A 00 84 */ lwz r0, 0x84(r26) +/* 801E4A34 001E1994 7C 1F 00 50 */ subf r0, r31, r0 +/* 801E4A38 001E1998 90 1A 00 84 */ stw r0, 0x84(r26) +/* 801E4A3C 001E199C 80 01 00 10 */ lwz r0, 0x10(r1) +/* 801E4A40 001E19A0 90 1A 00 88 */ stw r0, 0x88(r26) +/* 801E4A44 001E19A4 90 7A 00 80 */ stw r3, 0x80(r26) +lbl_801E4A48: +/* 801E4A48 001E19A8 80 1A 00 B0 */ lwz r0, 0xb0(r26) +/* 801E4A4C 001E19AC 2C 00 FF FF */ cmpwi r0, -1 +/* 801E4A50 001E19B0 41 82 01 48 */ beq lbl_801E4B98 +/* 801E4A54 001E19B4 80 9A 00 B4 */ lwz r4, 0xb4(r26) +/* 801E4A58 001E19B8 38 61 00 0C */ addi r3, r1, 0xc +/* 801E4A5C 001E19BC 48 12 DB 91 */ bl __ct__9CRandom16FUi +/* 801E4A60 001E19C0 80 7A 01 28 */ lwz r3, 0x128(r26) +/* 801E4A64 001E19C4 4B FF F3 25 */ bl MakeIceGen__20CActorModelParticlesFv +/* 801E4A68 001E19C8 38 9A 00 F8 */ addi r4, r26, 0xf8 +/* 801E4A6C 001E19CC 7C 77 1B 78 */ mr r23, r3 +/* 801E4A70 001E19D0 48 13 A1 15 */ bl SetGlobalOrientAndTrans__11CElementGenFRC12CTransform4f +/* 801E4A74 001E19D4 80 7A 00 B0 */ lwz r3, 0xb0(r26) +/* 801E4A78 001E19D8 7F 64 DB 78 */ mr r4, r27 +/* 801E4A7C 001E19DC 7F A5 EB 78 */ mr r5, r29 +/* 801E4A80 001E19E0 38 C1 00 0C */ addi r6, r1, 0xc +/* 801E4A84 001E19E4 48 00 02 CD */ bl GetNextBestPt__FiPC9CVector3fiR9CRandom16 +/* 801E4A88 001E19E8 7C 7E 1B 78 */ mr r30, r3 +/* 801E4A8C 001E19EC C0 BA 00 F4 */ lfs f5, 0xf4(r26) +/* 801E4A90 001E19F0 1F 1E 00 0C */ mulli r24, r30, 0xc +/* 801E4A94 001E19F4 C0 7A 00 F0 */ lfs f3, 0xf0(r26) +/* 801E4A98 001E19F8 C0 3A 00 EC */ lfs f1, 0xec(r26) +/* 801E4A9C 001E19FC 7E E3 BB 78 */ mr r3, r23 +/* 801E4AA0 001E1A00 38 81 00 20 */ addi r4, r1, 0x20 +/* 801E4AA4 001E1A04 7C BB C2 14 */ add r5, r27, r24 +/* 801E4AA8 001E1A08 C0 85 00 08 */ lfs f4, 8(r5) +/* 801E4AAC 001E1A0C C0 45 00 04 */ lfs f2, 4(r5) +/* 801E4AB0 001E1A10 7C 1B C4 2E */ lfsx f0, r27, r24 +/* 801E4AB4 001E1A14 EC 85 01 32 */ fmuls f4, f5, f4 +/* 801E4AB8 001E1A18 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 801E4ABC 001E1A1C EC 01 00 32 */ fmuls f0, f1, f0 +/* 801E4AC0 001E1A20 D0 81 00 28 */ stfs f4, 0x28(r1) +/* 801E4AC4 001E1A24 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801E4AC8 001E1A28 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 801E4ACC 001E1A2C 81 97 00 00 */ lwz r12, 0(r23) +/* 801E4AD0 001E1A30 81 8C 00 18 */ lwz r12, 0x18(r12) +/* 801E4AD4 001E1A34 7D 89 03 A6 */ mtctr r12 +/* 801E4AD8 001E1A38 4E 80 04 21 */ bctrl +/* 801E4ADC 001E1A3C 38 61 00 50 */ addi r3, r1, 0x50 +/* 801E4AE0 001E1A40 7C 9C C2 14 */ add r4, r28, r24 +/* 801E4AE4 001E1A44 48 12 F2 ED */ bl __ct__11CUnitVectorFRC9CVector3f +/* 801E4AE8 001E1A48 38 61 00 68 */ addi r3, r1, 0x68 +/* 801E4AEC 001E1A4C 38 81 00 50 */ addi r4, r1, 0x50 +/* 801E4AF0 001E1A50 48 12 EE E9 */ bl MakeRotationsBasedOnY__12CTransform4fFRC13CUnitVector3f +/* 801E4AF4 001E1A54 7E E3 BB 78 */ mr r3, r23 +/* 801E4AF8 001E1A58 38 81 00 68 */ addi r4, r1, 0x68 +/* 801E4AFC 001E1A5C 81 97 00 00 */ lwz r12, 0(r23) +/* 801E4B00 001E1A60 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 801E4B04 001E1A64 7D 89 03 A6 */ mtctr r12 +/* 801E4B08 001E1A68 4E 80 04 21 */ bctrl +/* 801E4B0C 001E1A6C 80 1A 00 8C */ lwz r0, 0x8c(r26) +/* 801E4B10 001E1A70 7C 77 00 D0 */ neg r3, r23 +/* 801E4B14 001E1A74 7C 63 BB 78 */ or r3, r3, r23 +/* 801E4B18 001E1A78 92 E1 00 1C */ stw r23, 0x1c(r1) +/* 801E4B1C 001E1A7C 54 00 18 38 */ slwi r0, r0, 3 +/* 801E4B20 001E1A80 7C 9A 02 14 */ add r4, r26, r0 +/* 801E4B24 001E1A84 54 60 0F FE */ srwi r0, r3, 0x1f +/* 801E4B28 001E1A88 34 84 00 90 */ addic. r4, r4, 0x90 +/* 801E4B2C 001E1A8C 98 01 00 18 */ stb r0, 0x18(r1) +/* 801E4B30 001E1A90 41 82 00 14 */ beq lbl_801E4B44 +/* 801E4B34 001E1A94 98 04 00 00 */ stb r0, 0(r4) +/* 801E4B38 001E1A98 38 00 00 00 */ li r0, 0 +/* 801E4B3C 001E1A9C 92 E4 00 04 */ stw r23, 4(r4) +/* 801E4B40 001E1AA0 98 01 00 18 */ stb r0, 0x18(r1) +lbl_801E4B44: +/* 801E4B44 001E1AA4 80 7A 00 8C */ lwz r3, 0x8c(r26) +/* 801E4B48 001E1AA8 88 01 00 18 */ lbz r0, 0x18(r1) +/* 801E4B4C 001E1AAC 38 63 00 01 */ addi r3, r3, 1 +/* 801E4B50 001E1AB0 28 00 00 00 */ cmplwi r0, 0 +/* 801E4B54 001E1AB4 90 7A 00 8C */ stw r3, 0x8c(r26) +/* 801E4B58 001E1AB8 41 82 00 24 */ beq lbl_801E4B7C +/* 801E4B5C 001E1ABC 80 61 00 1C */ lwz r3, 0x1c(r1) +/* 801E4B60 001E1AC0 28 03 00 00 */ cmplwi r3, 0 +/* 801E4B64 001E1AC4 41 82 00 18 */ beq lbl_801E4B7C +/* 801E4B68 001E1AC8 81 83 00 00 */ lwz r12, 0(r3) +/* 801E4B6C 001E1ACC 38 80 00 01 */ li r4, 1 +/* 801E4B70 001E1AD0 81 8C 00 08 */ lwz r12, 8(r12) +/* 801E4B74 001E1AD4 7D 89 03 A6 */ mtctr r12 +/* 801E4B78 001E1AD8 4E 80 04 21 */ bctrl +lbl_801E4B7C: +/* 801E4B7C 001E1ADC 80 1A 00 8C */ lwz r0, 0x8c(r26) +/* 801E4B80 001E1AE0 2C 00 00 04 */ cmpwi r0, 4 +/* 801E4B84 001E1AE4 40 82 00 10 */ bne lbl_801E4B94 +/* 801E4B88 001E1AE8 38 00 FF FF */ li r0, -1 +/* 801E4B8C 001E1AEC 90 1A 00 B0 */ stw r0, 0xb0(r26) +/* 801E4B90 001E1AF0 48 00 00 08 */ b lbl_801E4B98 +lbl_801E4B94: +/* 801E4B94 001E1AF4 93 DA 00 B0 */ stw r30, 0xb0(r26) +lbl_801E4B98: +/* 801E4B98 001E1AF8 80 7A 00 C4 */ lwz r3, 0xc4(r26) +/* 801E4B9C 001E1AFC 28 03 00 00 */ cmplwi r3, 0 +/* 801E4BA0 001E1B00 41 82 01 6C */ beq lbl_801E4D0C +/* 801E4BA4 001E1B04 81 83 00 00 */ lwz r12, 0(r3) +/* 801E4BA8 001E1B08 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801E4BAC 001E1B0C 7D 89 03 A6 */ mtctr r12 +/* 801E4BB0 001E1B10 4E 80 04 21 */ bctrl +/* 801E4BB4 001E1B14 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E4BB8 001E1B18 41 82 01 54 */ beq lbl_801E4D0C +/* 801E4BBC 001E1B1C 80 9A 00 CC */ lwz r4, 0xcc(r26) +/* 801E4BC0 001E1B20 38 61 00 08 */ addi r3, r1, 8 +/* 801E4BC4 001E1B24 48 12 DA 29 */ bl __ct__9CRandom16FUi +/* 801E4BC8 001E1B28 80 6D 92 34 */ lwz r3, lbl_805A7DF4@sda21(r13) +/* 801E4BCC 001E1B2C 38 8D 92 30 */ addi r4, r13, lbl_805A7DF0@sda21 +/* 801E4BD0 001E1B30 80 0D 92 30 */ lwz r0, lbl_805A7DF0@sda21(r13) +/* 801E4BD4 001E1B34 7C 03 00 00 */ cmpw r3, r0 +/* 801E4BD8 001E1B38 40 80 00 08 */ bge lbl_801E4BE0 +/* 801E4BDC 001E1B3C 38 8D 92 34 */ addi r4, r13, lbl_805A7DF4@sda21 +lbl_801E4BE0: +/* 801E4BE0 001E1B40 83 C4 00 00 */ lwz r30, 0(r4) +/* 801E4BE4 001E1B44 3B E0 00 00 */ li r31, 0 +/* 801E4BE8 001E1B48 80 7A 00 C8 */ lwz r3, 0xc8(r26) +/* 801E4BEC 001E1B4C 48 00 01 0C */ b lbl_801E4CF8 +lbl_801E4BF0: +/* 801E4BF0 001E1B50 38 61 00 08 */ addi r3, r1, 8 +/* 801E4BF4 001E1B54 38 BD FF FF */ addi r5, r29, -1 +/* 801E4BF8 001E1B58 38 80 00 00 */ li r4, 0 +/* 801E4BFC 001E1B5C 48 12 D9 99 */ bl Range__9CRandom16Fii +/* 801E4C00 001E1B60 1C 63 00 0C */ mulli r3, r3, 0xc +/* 801E4C04 001E1B64 80 9A 00 C4 */ lwz r4, 0xc4(r26) +/* 801E4C08 001E1B68 C0 9A 00 F4 */ lfs f4, 0xf4(r26) +/* 801E4C0C 001E1B6C 88 04 01 84 */ lbz r0, 0x184(r4) +/* 801E4C10 001E1B70 7C 7B 1A 14 */ add r3, r27, r3 +/* 801E4C14 001E1B74 C0 7A 00 F0 */ lfs f3, 0xf0(r26) +/* 801E4C18 001E1B78 C0 03 00 08 */ lfs f0, 8(r3) +/* 801E4C1C 001E1B7C 28 00 00 00 */ cmplwi r0, 0 +/* 801E4C20 001E1B80 C0 43 00 04 */ lfs f2, 4(r3) +/* 801E4C24 001E1B84 C0 3A 00 EC */ lfs f1, 0xec(r26) +/* 801E4C28 001E1B88 EC 84 00 32 */ fmuls f4, f4, f0 +/* 801E4C2C 001E1B8C C0 03 00 00 */ lfs f0, 0(r3) +/* 801E4C30 001E1B90 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 801E4C34 001E1B94 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801E4C38 001E1B98 40 82 00 24 */ bne lbl_801E4C5C +/* 801E4C3C 001E1B9C 34 64 01 78 */ addic. r3, r4, 0x178 +/* 801E4C40 001E1BA0 41 82 00 10 */ beq lbl_801E4C50 +/* 801E4C44 001E1BA4 D0 03 00 00 */ stfs f0, 0(r3) +/* 801E4C48 001E1BA8 D0 43 00 04 */ stfs f2, 4(r3) +/* 801E4C4C 001E1BAC D0 83 00 08 */ stfs f4, 8(r3) +lbl_801E4C50: +/* 801E4C50 001E1BB0 38 00 00 01 */ li r0, 1 +/* 801E4C54 001E1BB4 98 04 01 84 */ stb r0, 0x184(r4) +/* 801E4C58 001E1BB8 48 00 00 10 */ b lbl_801E4C68 +lbl_801E4C5C: +/* 801E4C5C 001E1BBC D0 04 01 78 */ stfs f0, 0x178(r4) +/* 801E4C60 001E1BC0 D0 44 01 7C */ stfs f2, 0x17c(r4) +/* 801E4C64 001E1BC4 D0 84 01 80 */ stfs f4, 0x180(r4) +lbl_801E4C68: +/* 801E4C68 001E1BC8 38 61 00 08 */ addi r3, r1, 8 +/* 801E4C6C 001E1BCC 38 BD FF FF */ addi r5, r29, -1 +/* 801E4C70 001E1BD0 38 80 00 00 */ li r4, 0 +/* 801E4C74 001E1BD4 48 12 D9 21 */ bl Range__9CRandom16Fii +/* 801E4C78 001E1BD8 7C 77 1B 78 */ mr r23, r3 +/* 801E4C7C 001E1BDC 80 9A 00 C4 */ lwz r4, 0xc4(r26) +/* 801E4C80 001E1BE0 1C 77 00 0C */ mulli r3, r23, 0xc +/* 801E4C84 001E1BE4 C0 BA 00 F4 */ lfs f5, 0xf4(r26) +/* 801E4C88 001E1BE8 88 04 01 A4 */ lbz r0, 0x1a4(r4) +/* 801E4C8C 001E1BEC C0 7A 00 F0 */ lfs f3, 0xf0(r26) +/* 801E4C90 001E1BF0 7C 7B 1A 14 */ add r3, r27, r3 +/* 801E4C94 001E1BF4 C0 3A 00 EC */ lfs f1, 0xec(r26) +/* 801E4C98 001E1BF8 C0 83 00 08 */ lfs f4, 8(r3) +/* 801E4C9C 001E1BFC 28 00 00 00 */ cmplwi r0, 0 +/* 801E4CA0 001E1C00 C0 43 00 04 */ lfs f2, 4(r3) +/* 801E4CA4 001E1C04 C0 03 00 00 */ lfs f0, 0(r3) +/* 801E4CA8 001E1C08 EC 85 01 32 */ fmuls f4, f5, f4 +/* 801E4CAC 001E1C0C EC 43 00 B2 */ fmuls f2, f3, f2 +/* 801E4CB0 001E1C10 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801E4CB4 001E1C14 40 82 00 24 */ bne lbl_801E4CD8 +/* 801E4CB8 001E1C18 34 64 01 98 */ addic. r3, r4, 0x198 +/* 801E4CBC 001E1C1C 41 82 00 10 */ beq lbl_801E4CCC +/* 801E4CC0 001E1C20 D0 03 00 00 */ stfs f0, 0(r3) +/* 801E4CC4 001E1C24 D0 43 00 04 */ stfs f2, 4(r3) +/* 801E4CC8 001E1C28 D0 83 00 08 */ stfs f4, 8(r3) +lbl_801E4CCC: +/* 801E4CCC 001E1C2C 38 00 00 01 */ li r0, 1 +/* 801E4CD0 001E1C30 98 04 01 A4 */ stb r0, 0x1a4(r4) +/* 801E4CD4 001E1C34 48 00 00 10 */ b lbl_801E4CE4 +lbl_801E4CD8: +/* 801E4CD8 001E1C38 D0 04 01 98 */ stfs f0, 0x198(r4) +/* 801E4CDC 001E1C3C D0 44 01 9C */ stfs f2, 0x19c(r4) +/* 801E4CE0 001E1C40 D0 84 01 A0 */ stfs f4, 0x1a0(r4) +lbl_801E4CE4: +/* 801E4CE4 001E1C44 80 7A 00 C4 */ lwz r3, 0xc4(r26) +/* 801E4CE8 001E1C48 38 80 00 01 */ li r4, 1 +/* 801E4CEC 001E1C4C 48 17 A2 51 */ bl ForceParticleCreation__17CParticleElectricFi +/* 801E4CF0 001E1C50 7E E3 BB 78 */ mr r3, r23 +/* 801E4CF4 001E1C54 3B FF 00 01 */ addi r31, r31, 1 +lbl_801E4CF8: +/* 801E4CF8 001E1C58 7C 1F F0 00 */ cmpw r31, r30 +/* 801E4CFC 001E1C5C 41 80 FE F4 */ blt lbl_801E4BF0 +/* 801E4D00 001E1C60 80 01 00 08 */ lwz r0, 8(r1) +/* 801E4D04 001E1C64 90 1A 00 CC */ stw r0, 0xcc(r26) +/* 801E4D08 001E1C68 90 7A 00 C8 */ stw r3, 0xc8(r26) +lbl_801E4D0C: +/* 801E4D0C 001E1C6C 80 7A 00 D8 */ lwz r3, 0xd8(r26) +/* 801E4D10 001E1C70 28 03 00 00 */ cmplwi r3, 0 +/* 801E4D14 001E1C74 41 82 00 14 */ beq lbl_801E4D28 +/* 801E4D18 001E1C78 7F 64 DB 78 */ mr r4, r27 +/* 801E4D1C 001E1C7C 7F 85 E3 78 */ mr r5, r28 +/* 801E4D20 001E1C80 7F A6 EB 78 */ mr r6, r29 +/* 801E4D24 001E1C84 48 08 58 BD */ bl GeneratePoints__20CRainSplashGeneratorFPC9CVector3fPC9CVector3fi +lbl_801E4D28: +/* 801E4D28 001E1C88 E3 E1 01 08 */ psq_l f31, 264(r1), 0, qr0 +/* 801E4D2C 001E1C8C CB E1 01 00 */ lfd f31, 0x100(r1) +/* 801E4D30 001E1C90 BA E1 00 DC */ lmw r23, 0xdc(r1) +/* 801E4D34 001E1C94 80 01 01 14 */ lwz r0, 0x114(r1) +/* 801E4D38 001E1C98 7C 08 03 A6 */ mtlr r0 +/* 801E4D3C 001E1C9C 38 21 01 10 */ addi r1, r1, 0x110 +/* 801E4D40 001E1CA0 4E 80 00 20 */ blr + +.global GetParticleEmission__17CParticleElectricFv +GetParticleEmission__17CParticleElectricFv: +/* 801E4D44 001E1CA4 88 03 04 50 */ lbz r0, 0x450(r3) +/* 801E4D48 001E1CA8 54 03 CF FE */ rlwinm r3, r0, 0x19, 0x1f, 0x1f +/* 801E4D4C 001E1CAC 4E 80 00 20 */ blr + +.global GetNextBestPt__FiPC9CVector3fiR9CRandom16 +GetNextBestPt__FiPC9CVector3fiR9CRandom16: +/* 801E4D50 001E1CB0 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801E4D54 001E1CB4 7C 08 02 A6 */ mflr r0 +/* 801E4D58 001E1CB8 90 01 00 44 */ stw r0, 0x44(r1) +/* 801E4D5C 001E1CBC DB E1 00 30 */ stfd f31, 0x30(r1) +/* 801E4D60 001E1CC0 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 801E4D64 001E1CC4 BF 41 00 18 */ stmw r26, 0x18(r1) +/* 801E4D68 001E1CC8 1C 03 00 0C */ mulli r0, r3, 0xc +/* 801E4D6C 001E1CCC 7C 9A 23 78 */ mr r26, r4 +/* 801E4D70 001E1CD0 C3 E2 AD 80 */ lfs f31, lbl_805ACAA0@sda21(r2) +/* 801E4D74 001E1CD4 7C BB 2B 78 */ mr r27, r5 +/* 801E4D78 001E1CD8 7C DC 33 78 */ mr r28, r6 +/* 801E4D7C 001E1CDC 7C 7F 1B 78 */ mr r31, r3 +/* 801E4D80 001E1CE0 3B A0 00 00 */ li r29, 0 +/* 801E4D84 001E1CE4 7F DA 02 14 */ add r30, r26, r0 +lbl_801E4D88: +/* 801E4D88 001E1CE8 7F 83 E3 78 */ mr r3, r28 +/* 801E4D8C 001E1CEC 38 BB FF FF */ addi r5, r27, -1 +/* 801E4D90 001E1CF0 38 80 00 00 */ li r4, 0 +/* 801E4D94 001E1CF4 48 12 D8 01 */ bl Range__9CRandom16Fii +/* 801E4D98 001E1CF8 1C 03 00 0C */ mulli r0, r3, 0xc +/* 801E4D9C 001E1CFC C0 7E 00 04 */ lfs f3, 4(r30) +/* 801E4DA0 001E1D00 C0 3E 00 00 */ lfs f1, 0(r30) +/* 801E4DA4 001E1D04 C0 9E 00 08 */ lfs f4, 8(r30) +/* 801E4DA8 001E1D08 7C 9A 02 14 */ add r4, r26, r0 +/* 801E4DAC 001E1D0C C0 44 00 04 */ lfs f2, 4(r4) +/* 801E4DB0 001E1D10 C0 04 00 00 */ lfs f0, 0(r4) +/* 801E4DB4 001E1D14 EC A3 10 28 */ fsubs f5, f3, f2 +/* 801E4DB8 001E1D18 C0 44 00 08 */ lfs f2, 8(r4) +/* 801E4DBC 001E1D1C EC 61 00 28 */ fsubs f3, f1, f0 +/* 801E4DC0 001E1D20 EC 84 10 28 */ fsubs f4, f4, f2 +/* 801E4DC4 001E1D24 EC 05 01 72 */ fmuls f0, f5, f5 +/* 801E4DC8 001E1D28 D0 A1 00 0C */ stfs f5, 0xc(r1) +/* 801E4DCC 001E1D2C EC 23 00 F2 */ fmuls f1, f3, f3 +/* 801E4DD0 001E1D30 EC 44 01 32 */ fmuls f2, f4, f4 +/* 801E4DD4 001E1D34 D0 61 00 08 */ stfs f3, 8(r1) +/* 801E4DD8 001E1D38 EC 01 00 2A */ fadds f0, f1, f0 +/* 801E4DDC 001E1D3C D0 81 00 10 */ stfs f4, 0x10(r1) +/* 801E4DE0 001E1D40 EC 02 00 2A */ fadds f0, f2, f0 +/* 801E4DE4 001E1D44 FC 00 F8 40 */ fcmpo cr0, f0, f31 +/* 801E4DE8 001E1D48 40 81 00 0C */ ble lbl_801E4DF4 +/* 801E4DEC 001E1D4C 7C 7F 1B 78 */ mr r31, r3 +/* 801E4DF0 001E1D50 FF E0 00 90 */ fmr f31, f0 +lbl_801E4DF4: +/* 801E4DF4 001E1D54 3B BD 00 01 */ addi r29, r29, 1 +/* 801E4DF8 001E1D58 2C 1D 00 0A */ cmpwi r29, 0xa +/* 801E4DFC 001E1D5C 41 80 FF 8C */ blt lbl_801E4D88 +/* 801E4E00 001E1D60 7F E3 FB 78 */ mr r3, r31 +/* 801E4E04 001E1D64 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 801E4E08 001E1D68 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 801E4E0C 001E1D6C BB 41 00 18 */ lmw r26, 0x18(r1) +/* 801E4E10 001E1D70 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801E4E14 001E1D74 7C 08 03 A6 */ mtlr r0 +/* 801E4E18 001E1D78 38 21 00 40 */ addi r1, r1, 0x40 +/* 801E4E1C 001E1D7C 4E 80 00 20 */ blr + +.global PointGenerator__20CActorModelParticlesFUiPC9CVector3fPC9CVector3fi +PointGenerator__20CActorModelParticlesFUiPC9CVector3fPC9CVector3fi: +/* 801E4E20 001E1D80 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801E4E24 001E1D84 7C 08 02 A6 */ mflr r0 +/* 801E4E28 001E1D88 90 01 00 14 */ stw r0, 0x14(r1) +/* 801E4E2C 001E1D8C 4B FF F9 A5 */ bl GeneratePoints__Q220CActorModelParticles5CItemFPC9CVector3fPC9CVector3fi +/* 801E4E30 001E1D90 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801E4E34 001E1D94 7C 08 03 A6 */ mtlr r0 +/* 801E4E38 001E1D98 38 21 00 10 */ addi r1, r1, 0x10 +/* 801E4E3C 001E1D9C 4E 80 00 20 */ blr + +.global RemoveRainSplashGenerator__20CActorModelParticlesFR6CActor +RemoveRainSplashGenerator__20CActorModelParticlesFR6CActor: +/* 801E4E40 001E1DA0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801E4E44 001E1DA4 7C 08 02 A6 */ mflr r0 +/* 801E4E48 001E1DA8 7C 85 23 78 */ mr r5, r4 +/* 801E4E4C 001E1DAC 7C 64 1B 78 */ mr r4, r3 +/* 801E4E50 001E1DB0 90 01 00 24 */ stw r0, 0x24(r1) +/* 801E4E54 001E1DB4 38 61 00 08 */ addi r3, r1, 8 +/* 801E4E58 001E1DB8 4B FF F4 CD */ bl FindOrCreateSystem__20CActorModelParticlesFR6CActor +/* 801E4E5C 001E1DBC 80 61 00 08 */ lwz r3, 8(r1) +/* 801E4E60 001E1DC0 80 03 00 E0 */ lwz r0, 0xe0(r3) +/* 801E4E64 001E1DC4 28 00 00 00 */ cmplwi r0, 0 +/* 801E4E68 001E1DC8 41 82 00 28 */ beq lbl_801E4E90 +/* 801E4E6C 001E1DCC 38 00 00 00 */ li r0, 0 +/* 801E4E70 001E1DD0 38 63 00 DC */ addi r3, r3, 0xdc +/* 801E4E74 001E1DD4 98 01 00 0C */ stb r0, 0xc(r1) +/* 801E4E78 001E1DD8 38 81 00 0C */ addi r4, r1, 0xc +/* 801E4E7C 001E1DDC 90 01 00 10 */ stw r0, 0x10(r1) +/* 801E4E80 001E1DE0 48 00 00 21 */ bl "__as__Q24rstl32auto_ptr<20CRainSplashGenerator>FRCQ24rstl32auto_ptr<20CRainSplashGenerator>" +/* 801E4E84 001E1DE4 38 61 00 0C */ addi r3, r1, 0xc +/* 801E4E88 001E1DE8 38 80 FF FF */ li r4, -1 +/* 801E4E8C 001E1DEC 4B FF F8 81 */ bl "__dt__Q24rstl32auto_ptr<20CRainSplashGenerator>" +lbl_801E4E90: +/* 801E4E90 001E1DF0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801E4E94 001E1DF4 7C 08 03 A6 */ mtlr r0 +/* 801E4E98 001E1DF8 38 21 00 20 */ addi r1, r1, 0x20 +/* 801E4E9C 001E1DFC 4E 80 00 20 */ blr + +.global "__as__Q24rstl32auto_ptr<20CRainSplashGenerator>FRCQ24rstl32auto_ptr<20CRainSplashGenerator>" +"__as__Q24rstl32auto_ptr<20CRainSplashGenerator>FRCQ24rstl32auto_ptr<20CRainSplashGenerator>": +/* 801E4EA0 001E1E00 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801E4EA4 001E1E04 7C 08 02 A6 */ mflr r0 +/* 801E4EA8 001E1E08 90 01 00 14 */ stw r0, 0x14(r1) +/* 801E4EAC 001E1E0C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801E4EB0 001E1E10 7C 9F 23 78 */ mr r31, r4 +/* 801E4EB4 001E1E14 93 C1 00 08 */ stw r30, 8(r1) +/* 801E4EB8 001E1E18 7C 7E 1B 78 */ mr r30, r3 +/* 801E4EBC 001E1E1C 7C 1F F0 40 */ cmplw r31, r30 +/* 801E4EC0 001E1E20 41 82 00 34 */ beq lbl_801E4EF4 +/* 801E4EC4 001E1E24 88 1E 00 00 */ lbz r0, 0(r30) +/* 801E4EC8 001E1E28 28 00 00 00 */ cmplwi r0, 0 +/* 801E4ECC 001E1E2C 41 82 00 10 */ beq lbl_801E4EDC +/* 801E4ED0 001E1E30 80 7E 00 04 */ lwz r3, 4(r30) +/* 801E4ED4 001E1E34 38 80 00 01 */ li r4, 1 +/* 801E4ED8 001E1E38 4B E5 E0 F9 */ bl __dt__20CRainSplashGeneratorFv +lbl_801E4EDC: +/* 801E4EDC 001E1E3C 88 7F 00 00 */ lbz r3, 0(r31) +/* 801E4EE0 001E1E40 38 00 00 00 */ li r0, 0 +/* 801E4EE4 001E1E44 98 7E 00 00 */ stb r3, 0(r30) +/* 801E4EE8 001E1E48 80 7F 00 04 */ lwz r3, 4(r31) +/* 801E4EEC 001E1E4C 90 7E 00 04 */ stw r3, 4(r30) +/* 801E4EF0 001E1E50 98 1F 00 00 */ stb r0, 0(r31) +lbl_801E4EF4: +/* 801E4EF4 001E1E54 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801E4EF8 001E1E58 7F C3 F3 78 */ mr r3, r30 +/* 801E4EFC 001E1E5C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801E4F00 001E1E60 83 C1 00 08 */ lwz r30, 8(r1) +/* 801E4F04 001E1E64 7C 08 03 A6 */ mtlr r0 +/* 801E4F08 001E1E68 38 21 00 10 */ addi r1, r1, 0x10 +/* 801E4F0C 001E1E6C 4E 80 00 20 */ blr + +.global AddRainSplashGenerator__20CActorModelParticlesFR6CActorR13CStateManageriif +AddRainSplashGenerator__20CActorModelParticlesFR6CActorR13CStateManageriif: +/* 801E4F10 001E1E70 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801E4F14 001E1E74 7C 08 02 A6 */ mflr r0 +/* 801E4F18 001E1E78 90 01 00 44 */ stw r0, 0x44(r1) +/* 801E4F1C 001E1E7C DB E1 00 30 */ stfd f31, 0x30(r1) +/* 801E4F20 001E1E80 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 801E4F24 001E1E84 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801E4F28 001E1E88 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801E4F2C 001E1E8C 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801E4F30 001E1E90 93 81 00 20 */ stw r28, 0x20(r1) +/* 801E4F34 001E1E94 FF E0 08 90 */ fmr f31, f1 +/* 801E4F38 001E1E98 7C 9C 23 78 */ mr r28, r4 +/* 801E4F3C 001E1E9C 7C 64 1B 78 */ mr r4, r3 +/* 801E4F40 001E1EA0 7C DD 33 78 */ mr r29, r6 +/* 801E4F44 001E1EA4 7C FE 3B 78 */ mr r30, r7 +/* 801E4F48 001E1EA8 7F 85 E3 78 */ mr r5, r28 +/* 801E4F4C 001E1EAC 38 61 00 08 */ addi r3, r1, 8 +/* 801E4F50 001E1EB0 4B FF F3 D5 */ bl FindOrCreateSystem__20CActorModelParticlesFR6CActor +/* 801E4F54 001E1EB4 83 E1 00 08 */ lwz r31, 8(r1) +/* 801E4F58 001E1EB8 80 1F 00 E0 */ lwz r0, 0xe0(r31) +/* 801E4F5C 001E1EBC 28 00 00 00 */ cmplwi r0, 0 +/* 801E4F60 001E1EC0 40 82 00 BC */ bne lbl_801E501C +/* 801E4F64 001E1EC4 80 9C 00 64 */ lwz r4, 0x64(r28) +/* 801E4F68 001E1EC8 38 60 00 00 */ li r3, 0 +/* 801E4F6C 001E1ECC 28 04 00 00 */ cmplwi r4, 0 +/* 801E4F70 001E1ED0 41 82 00 20 */ beq lbl_801E4F90 +/* 801E4F74 001E1ED4 80 04 00 10 */ lwz r0, 0x10(r4) +/* 801E4F78 001E1ED8 28 00 00 00 */ cmplwi r0, 0 +/* 801E4F7C 001E1EDC 40 82 00 10 */ bne lbl_801E4F8C +/* 801E4F80 001E1EE0 88 04 00 28 */ lbz r0, 0x28(r4) +/* 801E4F84 001E1EE4 28 00 00 00 */ cmplwi r0, 0 +/* 801E4F88 001E1EE8 41 82 00 08 */ beq lbl_801E4F90 +lbl_801E4F8C: +/* 801E4F8C 001E1EEC 38 60 00 01 */ li r3, 1 +lbl_801E4F90: +/* 801E4F90 001E1EF0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E4F94 001E1EF4 41 82 00 88 */ beq lbl_801E501C +/* 801E4F98 001E1EF8 3C 80 80 3D */ lis r4, lbl_803D1EB0@ha +/* 801E4F9C 001E1EFC 38 60 00 4C */ li r3, 0x4c +/* 801E4FA0 001E1F00 38 84 1E B0 */ addi r4, r4, lbl_803D1EB0@l +/* 801E4FA4 001E1F04 38 A0 00 00 */ li r5, 0 +/* 801E4FA8 001E1F08 38 84 00 5C */ addi r4, r4, 0x5c +/* 801E4FAC 001E1F0C 48 13 08 C1 */ bl __nw__FUlPCcPCc +/* 801E4FB0 001E1F10 7C 64 1B 79 */ or. r4, r3, r3 +/* 801E4FB4 001E1F14 41 82 00 3C */ beq lbl_801E4FF0 +/* 801E4FB8 001E1F18 80 FC 00 64 */ lwz r7, 0x64(r28) +/* 801E4FBC 001E1F1C FC 20 F8 90 */ fmr f1, f31 +/* 801E4FC0 001E1F20 C0 42 AD 90 */ lfs f2, lbl_805ACAB0@sda21(r2) +/* 801E4FC4 001E1F24 7F A5 EB 78 */ mr r5, r29 +/* 801E4FC8 001E1F28 C0 07 00 00 */ lfs f0, 0(r7) +/* 801E4FCC 001E1F2C 7F C6 F3 78 */ mr r6, r30 +/* 801E4FD0 001E1F30 38 81 00 14 */ addi r4, r1, 0x14 +/* 801E4FD4 001E1F34 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801E4FD8 001E1F38 C0 07 00 04 */ lfs f0, 4(r7) +/* 801E4FDC 001E1F3C D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801E4FE0 001E1F40 C0 07 00 08 */ lfs f0, 8(r7) +/* 801E4FE4 001E1F44 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801E4FE8 001E1F48 48 08 57 51 */ bl __ct__20CRainSplashGeneratorFRC9CVector3fiiff +/* 801E4FEC 001E1F4C 7C 64 1B 78 */ mr r4, r3 +lbl_801E4FF0: +/* 801E4FF0 001E1F50 7C 04 00 D0 */ neg r0, r4 +/* 801E4FF4 001E1F54 90 81 00 10 */ stw r4, 0x10(r1) +/* 801E4FF8 001E1F58 7C 00 23 78 */ or r0, r0, r4 +/* 801E4FFC 001E1F5C 38 7F 00 DC */ addi r3, r31, 0xdc +/* 801E5000 001E1F60 54 00 0F FE */ srwi r0, r0, 0x1f +/* 801E5004 001E1F64 38 81 00 0C */ addi r4, r1, 0xc +/* 801E5008 001E1F68 98 01 00 0C */ stb r0, 0xc(r1) +/* 801E500C 001E1F6C 4B FF FE 95 */ bl "__as__Q24rstl32auto_ptr<20CRainSplashGenerator>FRCQ24rstl32auto_ptr<20CRainSplashGenerator>" +/* 801E5010 001E1F70 38 61 00 0C */ addi r3, r1, 0xc +/* 801E5014 001E1F74 38 80 FF FF */ li r4, -1 +/* 801E5018 001E1F78 4B FF F6 F5 */ bl "__dt__Q24rstl32auto_ptr<20CRainSplashGenerator>" +lbl_801E501C: +/* 801E501C 001E1F7C E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 801E5020 001E1F80 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801E5024 001E1F84 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 801E5028 001E1F88 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801E502C 001E1F8C 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801E5030 001E1F90 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801E5034 001E1F94 83 81 00 20 */ lwz r28, 0x20(r1) +/* 801E5038 001E1F98 7C 08 03 A6 */ mtlr r0 +/* 801E503C 001E1F9C 38 21 00 40 */ addi r1, r1, 0x40 +/* 801E5040 001E1FA0 4E 80 00 20 */ blr + +.global StopThermalHotParticles__20CActorModelParticlesFR5CActor +StopThermalHotParticles__20CActorModelParticlesFR5CActor: +/* 801E5044 001E1FA4 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801E5048 001E1FA8 7C 08 02 A6 */ mflr r0 +/* 801E504C 001E1FAC 90 01 00 34 */ stw r0, 0x34(r1) +/* 801E5050 001E1FB0 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801E5054 001E1FB4 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801E5058 001E1FB8 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801E505C 001E1FBC 7C 7D 1B 78 */ mr r29, r3 +/* 801E5060 001E1FC0 88 04 00 E5 */ lbz r0, 0xe5(r4) +/* 801E5064 001E1FC4 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 801E5068 001E1FC8 41 82 00 6C */ beq lbl_801E50D4 +/* 801E506C 001E1FCC A0 04 00 08 */ lhz r0, 8(r4) +/* 801E5070 001E1FD0 7F A4 EB 78 */ mr r4, r29 +/* 801E5074 001E1FD4 38 61 00 10 */ addi r3, r1, 0x10 +/* 801E5078 001E1FD8 38 A1 00 0C */ addi r5, r1, 0xc +/* 801E507C 001E1FDC B0 01 00 08 */ sth r0, 8(r1) +/* 801E5080 001E1FE0 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801E5084 001E1FE4 4B FF F2 31 */ bl FindSystem__20CActorModelParticlesF9TUniqueId +/* 801E5088 001E1FE8 83 C1 00 10 */ lwz r30, 0x10(r1) +/* 801E508C 001E1FEC 80 1D 00 08 */ lwz r0, 8(r29) +/* 801E5090 001E1FF0 7C 1E 00 40 */ cmplw r30, r0 +/* 801E5094 001E1FF4 41 82 00 40 */ beq lbl_801E50D4 +/* 801E5098 001E1FF8 3B A0 00 00 */ li r29, 0 +/* 801E509C 001E1FFC 3B E0 00 00 */ li r31, 0 +lbl_801E50A0: +/* 801E50A0 001E2000 7C 7E FA 14 */ add r3, r30, r31 +/* 801E50A4 001E2004 80 63 00 18 */ lwz r3, 0x18(r3) +/* 801E50A8 001E2008 28 03 00 00 */ cmplwi r3, 0 +/* 801E50AC 001E200C 41 82 00 18 */ beq lbl_801E50C4 +/* 801E50B0 001E2010 81 83 00 00 */ lwz r12, 0(r3) +/* 801E50B4 001E2014 38 80 00 00 */ li r4, 0 +/* 801E50B8 001E2018 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801E50BC 001E201C 7D 89 03 A6 */ mtctr r12 +/* 801E50C0 001E2020 4E 80 04 21 */ bctrl +lbl_801E50C4: +/* 801E50C4 001E2024 3B BD 00 01 */ addi r29, r29, 1 +/* 801E50C8 001E2028 3B FF 00 0C */ addi r31, r31, 0xc +/* 801E50CC 001E202C 2C 1D 00 08 */ cmpwi r29, 8 +/* 801E50D0 001E2030 41 80 FF D0 */ blt lbl_801E50A0 +lbl_801E50D4: +/* 801E50D4 001E2034 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801E50D8 001E2038 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801E50DC 001E203C 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801E50E0 001E2040 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801E50E4 001E2044 7C 08 03 A6 */ mtlr r0 +/* 801E50E8 001E2048 38 21 00 30 */ addi r1, r1, 0x30 +/* 801E50EC 001E204C 4E 80 00 20 */ blr + +.global LightDudeOnFire__20CActorModelParticlesFR5CActor +LightDudeOnFire__20CActorModelParticlesFR5CActor: +/* 801E50F0 001E2050 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801E50F4 001E2054 7C 08 02 A6 */ mflr r0 +/* 801E50F8 001E2058 7C 85 23 78 */ mr r5, r4 +/* 801E50FC 001E205C 7C 64 1B 78 */ mr r4, r3 +/* 801E5100 001E2060 90 01 00 24 */ stw r0, 0x24(r1) +/* 801E5104 001E2064 38 61 00 08 */ addi r3, r1, 8 +/* 801E5108 001E2068 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801E510C 001E206C 4B FF F2 19 */ bl FindOrCreateSystem__20CActorModelParticlesFR6CActor +/* 801E5110 001E2070 83 E1 00 08 */ lwz r31, 8(r1) +/* 801E5114 001E2074 38 80 00 00 */ li r4, 0 +/* 801E5118 001E2078 38 7F 00 08 */ addi r3, r31, 8 +/* 801E511C 001E207C 48 00 08 E9 */ bl EnsureLoaded__Q220CActorModelParticles5CItemFi +/* 801E5120 001E2080 C0 3F 00 74 */ lfs f1, 0x74(r31) +/* 801E5124 001E2084 C0 02 AD 80 */ lfs f0, lbl_805ACAA0@sda21(r2) +/* 801E5128 001E2088 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801E512C 001E208C 4C 40 13 82 */ cror 2, 0, 2 +/* 801E5130 001E2090 40 82 00 0C */ bne lbl_801E513C +/* 801E5134 001E2094 38 00 00 01 */ li r0, 1 +/* 801E5138 001E2098 98 1F 00 78 */ stb r0, 0x78(r31) +lbl_801E513C: +/* 801E513C 001E209C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801E5140 001E20A0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801E5144 001E20A4 7C 08 03 A6 */ mtlr r0 +/* 801E5148 001E20A8 38 21 00 20 */ addi r1, r1, 0x20 +/* 801E514C 001E20AC 4E 80 00 20 */ blr + +.global StopElectric__20CActorModelParticlesFR5CActor +StopElectric__20CActorModelParticlesFR5CActor: +/* 801E5150 001E20B0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801E5154 001E20B4 7C 08 02 A6 */ mflr r0 +/* 801E5158 001E20B8 90 01 00 24 */ stw r0, 0x24(r1) +/* 801E515C 001E20BC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801E5160 001E20C0 7C 7F 1B 78 */ mr r31, r3 +/* 801E5164 001E20C4 88 04 00 E5 */ lbz r0, 0xe5(r4) +/* 801E5168 001E20C8 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 801E516C 001E20CC 41 82 00 50 */ beq lbl_801E51BC +/* 801E5170 001E20D0 A0 04 00 08 */ lhz r0, 8(r4) +/* 801E5174 001E20D4 7F E4 FB 78 */ mr r4, r31 +/* 801E5178 001E20D8 38 61 00 10 */ addi r3, r1, 0x10 +/* 801E517C 001E20DC 38 A1 00 0C */ addi r5, r1, 0xc +/* 801E5180 001E20E0 B0 01 00 08 */ sth r0, 8(r1) +/* 801E5184 001E20E4 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801E5188 001E20E8 4B FF F1 2D */ bl FindSystem__20CActorModelParticlesF9TUniqueId +/* 801E518C 001E20EC 80 61 00 10 */ lwz r3, 0x10(r1) +/* 801E5190 001E20F0 80 1F 00 08 */ lwz r0, 8(r31) +/* 801E5194 001E20F4 7C 03 00 40 */ cmplw r3, r0 +/* 801E5198 001E20F8 41 82 00 24 */ beq lbl_801E51BC +/* 801E519C 001E20FC 80 63 00 CC */ lwz r3, 0xcc(r3) +/* 801E51A0 001E2100 28 03 00 00 */ cmplwi r3, 0 +/* 801E51A4 001E2104 41 82 00 18 */ beq lbl_801E51BC +/* 801E51A8 001E2108 81 83 00 00 */ lwz r12, 0(r3) +/* 801E51AC 001E210C 38 80 00 00 */ li r4, 0 +/* 801E51B0 001E2110 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801E51B4 001E2114 7D 89 03 A6 */ mtctr r12 +/* 801E51B8 001E2118 4E 80 04 21 */ bctrl +lbl_801E51BC: +/* 801E51BC 001E211C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801E51C0 001E2120 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801E51C4 001E2124 7C 08 03 A6 */ mtlr r0 +/* 801E51C8 001E2128 38 21 00 20 */ addi r1, r1, 0x20 +/* 801E51CC 001E212C 4E 80 00 20 */ blr + +.global LoadAndStartElectric__20CActorModelParticlesFR6CActor +LoadAndStartElectric__20CActorModelParticlesFR6CActor: +/* 801E51D0 001E2130 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801E51D4 001E2134 7C 08 02 A6 */ mflr r0 +/* 801E51D8 001E2138 7C 85 23 78 */ mr r5, r4 +/* 801E51DC 001E213C 7C 64 1B 78 */ mr r4, r3 +/* 801E51E0 001E2140 90 01 00 24 */ stw r0, 0x24(r1) +/* 801E51E4 001E2144 38 61 00 08 */ addi r3, r1, 8 +/* 801E51E8 001E2148 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801E51EC 001E214C 4B FF F1 39 */ bl FindOrCreateSystem__20CActorModelParticlesFR6CActor +/* 801E51F0 001E2150 80 81 00 08 */ lwz r4, 8(r1) +/* 801E51F4 001E2154 80 64 00 CC */ lwz r3, 0xcc(r4) +/* 801E51F8 001E2158 28 03 00 00 */ cmplwi r3, 0 +/* 801E51FC 001E215C 40 82 00 14 */ bne lbl_801E5210 +/* 801E5200 001E2160 38 64 00 08 */ addi r3, r4, 8 +/* 801E5204 001E2164 38 80 00 04 */ li r4, 4 +/* 801E5208 001E2168 48 00 07 FD */ bl EnsureLoaded__Q220CActorModelParticles5CItemFi +/* 801E520C 001E216C 48 00 00 38 */ b lbl_801E5244 +lbl_801E5210: +/* 801E5210 001E2170 81 83 00 00 */ lwz r12, 0(r3) +/* 801E5214 001E2174 7C 7F 1B 78 */ mr r31, r3 +/* 801E5218 001E2178 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801E521C 001E217C 7D 89 03 A6 */ mtctr r12 +/* 801E5220 001E2180 4E 80 04 21 */ bctrl +/* 801E5224 001E2184 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E5228 001E2188 40 82 00 1C */ bne lbl_801E5244 +/* 801E522C 001E218C 7F E3 FB 78 */ mr r3, r31 +/* 801E5230 001E2190 38 80 00 01 */ li r4, 1 +/* 801E5234 001E2194 81 9F 00 00 */ lwz r12, 0(r31) +/* 801E5238 001E2198 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801E523C 001E219C 7D 89 03 A6 */ mtctr r12 +/* 801E5240 001E21A0 4E 80 04 21 */ bctrl +lbl_801E5244: +/* 801E5244 001E21A4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801E5248 001E21A8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801E524C 001E21AC 7C 08 03 A6 */ mtlr r0 +/* 801E5250 001E21B0 38 21 00 20 */ addi r1, r1, 0x20 +/* 801E5254 001E21B4 4E 80 00 20 */ blr + +.global StartIce__20CActorModelParticlesFR6CActorR13CStateManager +StartIce__20CActorModelParticlesFR6CActorR13CStateManager: +/* 801E5258 001E21B8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801E525C 001E21BC 7C 08 02 A6 */ mflr r0 +/* 801E5260 001E21C0 7C 85 23 78 */ mr r5, r4 +/* 801E5264 001E21C4 7C 64 1B 78 */ mr r4, r3 +/* 801E5268 001E21C8 90 01 00 14 */ stw r0, 0x14(r1) +/* 801E526C 001E21CC 38 61 00 08 */ addi r3, r1, 8 +/* 801E5270 001E21D0 4B FF F0 B5 */ bl FindOrCreateSystem__20CActorModelParticlesFR6CActor +/* 801E5274 001E21D4 80 61 00 08 */ lwz r3, 8(r1) +/* 801E5278 001E21D8 38 80 00 01 */ li r4, 1 +/* 801E527C 001E21DC 38 63 00 08 */ addi r3, r3, 8 +/* 801E5280 001E21E0 48 00 07 85 */ bl EnsureLoaded__Q220CActorModelParticles5CItemFi +/* 801E5284 001E21E4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801E5288 001E21E8 7C 08 03 A6 */ mtlr r0 +/* 801E528C 001E21EC 38 21 00 10 */ addi r1, r1, 0x10 +/* 801E5290 001E21F0 4E 80 00 20 */ blr + +.global EnsureElectricLoaded__20CActorModelParticlesR5CActor +EnsureElectricLoaded__20CActorModelParticlesR5CActor: +/* 801E5294 001E21F4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801E5298 001E21F8 7C 08 02 A6 */ mflr r0 +/* 801E529C 001E21FC 7C 85 23 78 */ mr r5, r4 +/* 801E52A0 001E2200 7C 64 1B 78 */ mr r4, r3 +/* 801E52A4 001E2204 90 01 00 14 */ stw r0, 0x14(r1) +/* 801E52A8 001E2208 38 61 00 08 */ addi r3, r1, 8 +/* 801E52AC 001E220C 4B FF F0 79 */ bl FindOrCreateSystem__20CActorModelParticlesFR6CActor +/* 801E52B0 001E2210 80 61 00 08 */ lwz r3, 8(r1) +/* 801E52B4 001E2214 38 80 00 05 */ li r4, 5 +/* 801E52B8 001E2218 38 63 00 08 */ addi r3, r3, 8 +/* 801E52BC 001E221C 48 00 07 49 */ bl EnsureLoaded__Q220CActorModelParticles5CItemFi +/* 801E52C0 001E2220 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801E52C4 001E2224 7C 08 03 A6 */ mtlr r0 +/* 801E52C8 001E2228 38 21 00 10 */ addi r1, r1, 0x10 +/* 801E52CC 001E222C 4E 80 00 20 */ blr + +.global EnsureFirePopLoaded__20CActorModelParticlesR5CActor +EnsureFirePopLoaded__20CActorModelParticlesR5CActor: +/* 801E52D0 001E2230 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801E52D4 001E2234 7C 08 02 A6 */ mflr r0 +/* 801E52D8 001E2238 7C 85 23 78 */ mr r5, r4 +/* 801E52DC 001E223C 7C 64 1B 78 */ mr r4, r3 +/* 801E52E0 001E2240 90 01 00 14 */ stw r0, 0x14(r1) +/* 801E52E4 001E2244 38 61 00 08 */ addi r3, r1, 8 +/* 801E52E8 001E2248 4B FF F0 3D */ bl FindOrCreateSystem__20CActorModelParticlesFR6CActor +/* 801E52EC 001E224C 80 61 00 08 */ lwz r3, 8(r1) +/* 801E52F0 001E2250 38 80 00 03 */ li r4, 3 +/* 801E52F4 001E2254 38 63 00 08 */ addi r3, r3, 8 +/* 801E52F8 001E2258 48 00 07 0D */ bl EnsureLoaded__Q220CActorModelParticles5CItemFi +/* 801E52FC 001E225C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801E5300 001E2260 7C 08 03 A6 */ mtlr r0 +/* 801E5304 001E2264 38 21 00 10 */ addi r1, r1, 0x10 +/* 801E5308 001E2268 4E 80 00 20 */ blr + +.global EnsureIceBreakLoaded__20CActorModelParticlesR5CActor +EnsureIceBreakLoaded__20CActorModelParticlesR5CActor: +/* 801E530C 001E226C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801E5310 001E2270 7C 08 02 A6 */ mflr r0 +/* 801E5314 001E2274 7C 85 23 78 */ mr r5, r4 +/* 801E5318 001E2278 7C 64 1B 78 */ mr r4, r3 +/* 801E531C 001E227C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801E5320 001E2280 38 61 00 08 */ addi r3, r1, 8 +/* 801E5324 001E2284 4B FF F0 01 */ bl FindOrCreateSystem__20CActorModelParticlesFR6CActor +/* 801E5328 001E2288 80 61 00 08 */ lwz r3, 8(r1) +/* 801E532C 001E228C 38 80 00 02 */ li r4, 2 +/* 801E5330 001E2290 38 63 00 08 */ addi r3, r3, 8 +/* 801E5334 001E2294 48 00 06 D1 */ bl EnsureLoaded__Q220CActorModelParticles5CItemFi +/* 801E5338 001E2298 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801E533C 001E229C 7C 08 03 A6 */ mtlr r0 +/* 801E5340 001E22A0 38 21 00 10 */ addi r1, r1, 0x10 +/* 801E5344 001E22A4 4E 80 00 20 */ blr + +.global MakeOnFireGen__20CActorModelParticlesFv +MakeOnFireGen__20CActorModelParticlesFv: +/* 801E5348 001E22A8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801E534C 001E22AC 7C 08 02 A6 */ mflr r0 +/* 801E5350 001E22B0 3C 80 80 3D */ lis r4, lbl_803D1EB0@ha +/* 801E5354 001E22B4 38 A0 00 00 */ li r5, 0 +/* 801E5358 001E22B8 90 01 00 24 */ stw r0, 0x24(r1) +/* 801E535C 001E22BC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801E5360 001E22C0 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801E5364 001E22C4 7C 7E 1B 78 */ mr r30, r3 +/* 801E5368 001E22C8 38 64 1E B0 */ addi r3, r4, lbl_803D1EB0@l +/* 801E536C 001E22CC 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801E5370 001E22D0 38 83 00 5C */ addi r4, r3, 0x5c +/* 801E5374 001E22D4 3B A0 00 00 */ li r29, 0 +/* 801E5378 001E22D8 38 60 03 40 */ li r3, 0x340 +/* 801E537C 001E22DC 48 13 04 F1 */ bl __nw__FUlPCcPCc +/* 801E5380 001E22E0 7C 7F 1B 79 */ or. r31, r3, r3 +/* 801E5384 001E22E4 41 82 00 2C */ beq lbl_801E53B0 +/* 801E5388 001E22E8 38 61 00 08 */ addi r3, r1, 8 +/* 801E538C 001E22EC 38 9E 00 18 */ addi r4, r30, 0x18 +/* 801E5390 001E22F0 48 15 BB 19 */ bl __ct__6CTokenFRC6CToken +/* 801E5394 001E22F4 7F E3 FB 78 */ mr r3, r31 +/* 801E5398 001E22F8 38 81 00 08 */ addi r4, r1, 8 +/* 801E539C 001E22FC 3B A0 00 01 */ li r29, 1 +/* 801E53A0 001E2300 38 A0 00 00 */ li r5, 0 +/* 801E53A4 001E2304 38 C0 00 01 */ li r6, 1 +/* 801E53A8 001E2308 48 13 A0 39 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 801E53AC 001E230C 7C 7F 1B 78 */ mr r31, r3 +lbl_801E53B0: +/* 801E53B0 001E2310 7F A0 07 75 */ extsb. r0, r29 +/* 801E53B4 001E2314 41 82 00 10 */ beq lbl_801E53C4 +/* 801E53B8 001E2318 38 61 00 08 */ addi r3, r1, 8 +/* 801E53BC 001E231C 38 80 00 00 */ li r4, 0 +/* 801E53C0 001E2320 48 15 BA 81 */ bl __dt__6CTokenFv +lbl_801E53C4: +/* 801E53C4 001E2324 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801E53C8 001E2328 7F E3 FB 78 */ mr r3, r31 +/* 801E53CC 001E232C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801E53D0 001E2330 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801E53D4 001E2334 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801E53D8 001E2338 7C 08 03 A6 */ mtlr r0 +/* 801E53DC 001E233C 38 21 00 20 */ addi r1, r1, 0x20 +/* 801E53E0 001E2340 4E 80 00 20 */ blr + +.global MakeElectricGen__20CActorModelParticlesFv +MakeElectricGen__20CActorModelParticlesFv: +/* 801E53E4 001E2344 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801E53E8 001E2348 7C 08 02 A6 */ mflr r0 +/* 801E53EC 001E234C 3C 80 80 3D */ lis r4, lbl_803D1EB0@ha +/* 801E53F0 001E2350 38 A0 00 00 */ li r5, 0 +/* 801E53F4 001E2354 90 01 00 24 */ stw r0, 0x24(r1) +/* 801E53F8 001E2358 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801E53FC 001E235C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801E5400 001E2360 7C 7E 1B 78 */ mr r30, r3 +/* 801E5404 001E2364 38 64 1E B0 */ addi r3, r4, lbl_803D1EB0@l +/* 801E5408 001E2368 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801E540C 001E236C 38 83 00 5C */ addi r4, r3, 0x5c +/* 801E5410 001E2370 3B A0 00 00 */ li r29, 0 +/* 801E5414 001E2374 38 60 04 58 */ li r3, 0x458 +/* 801E5418 001E2378 48 13 04 55 */ bl __nw__FUlPCcPCc +/* 801E541C 001E237C 7C 7F 1B 79 */ or. r31, r3, r3 +/* 801E5420 001E2380 41 82 00 24 */ beq lbl_801E5444 +/* 801E5424 001E2384 38 61 00 08 */ addi r3, r1, 8 +/* 801E5428 001E2388 38 9E 00 40 */ addi r4, r30, 0x40 +/* 801E542C 001E238C 48 15 BA 7D */ bl __ct__6CTokenFRC6CToken +/* 801E5430 001E2390 7F E3 FB 78 */ mr r3, r31 +/* 801E5434 001E2394 38 81 00 08 */ addi r4, r1, 8 +/* 801E5438 001E2398 3B A0 00 01 */ li r29, 1 +/* 801E543C 001E239C 48 17 CD 35 */ bl "__ct__17CParticleElectricF30TToken<20CElectricDescription>" +/* 801E5440 001E23A0 7C 7F 1B 78 */ mr r31, r3 +lbl_801E5444: +/* 801E5444 001E23A4 7F A0 07 75 */ extsb. r0, r29 +/* 801E5448 001E23A8 41 82 00 10 */ beq lbl_801E5458 +/* 801E544C 001E23AC 38 61 00 08 */ addi r3, r1, 8 +/* 801E5450 001E23B0 38 80 00 00 */ li r4, 0 +/* 801E5454 001E23B4 48 15 B9 ED */ bl __dt__6CTokenFv +lbl_801E5458: +/* 801E5458 001E23B8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801E545C 001E23BC 7F E3 FB 78 */ mr r3, r31 +/* 801E5460 001E23C0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801E5464 001E23C4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801E5468 001E23C8 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801E546C 001E23CC 7C 08 03 A6 */ mtlr r0 +/* 801E5470 001E23D0 38 21 00 20 */ addi r1, r1, 0x20 +/* 801E5474 001E23D4 4E 80 00 20 */ blr + +.global MakeIcePopGen__20CActorModelParticlesFv +MakeIcePopGen__20CActorModelParticlesFv: +/* 801E5478 001E23D8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801E547C 001E23DC 7C 08 02 A6 */ mflr r0 +/* 801E5480 001E23E0 3C 80 80 3D */ lis r4, lbl_803D1EB0@ha +/* 801E5484 001E23E4 38 A0 00 00 */ li r5, 0 +/* 801E5488 001E23E8 90 01 00 24 */ stw r0, 0x24(r1) +/* 801E548C 001E23EC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801E5490 001E23F0 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801E5494 001E23F4 7C 7E 1B 78 */ mr r30, r3 +/* 801E5498 001E23F8 38 64 1E B0 */ addi r3, r4, lbl_803D1EB0@l +/* 801E549C 001E23FC 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801E54A0 001E2400 38 83 00 5C */ addi r4, r3, 0x5c +/* 801E54A4 001E2404 3B A0 00 00 */ li r29, 0 +/* 801E54A8 001E2408 38 60 03 40 */ li r3, 0x340 +/* 801E54AC 001E240C 48 13 03 C1 */ bl __nw__FUlPCcPCc +/* 801E54B0 001E2410 7C 7F 1B 79 */ or. r31, r3, r3 +/* 801E54B4 001E2414 41 82 00 2C */ beq lbl_801E54E0 +/* 801E54B8 001E2418 38 61 00 08 */ addi r3, r1, 8 +/* 801E54BC 001E241C 38 9E 00 38 */ addi r4, r30, 0x38 +/* 801E54C0 001E2420 48 15 B9 E9 */ bl __ct__6CTokenFRC6CToken +/* 801E54C4 001E2424 7F E3 FB 78 */ mr r3, r31 +/* 801E54C8 001E2428 38 81 00 08 */ addi r4, r1, 8 +/* 801E54CC 001E242C 3B A0 00 01 */ li r29, 1 +/* 801E54D0 001E2430 38 A0 00 00 */ li r5, 0 +/* 801E54D4 001E2434 38 C0 00 01 */ li r6, 1 +/* 801E54D8 001E2438 48 13 9F 09 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 801E54DC 001E243C 7C 7F 1B 78 */ mr r31, r3 +lbl_801E54E0: +/* 801E54E0 001E2440 7F A0 07 75 */ extsb. r0, r29 +/* 801E54E4 001E2444 41 82 00 10 */ beq lbl_801E54F4 +/* 801E54E8 001E2448 38 61 00 08 */ addi r3, r1, 8 +/* 801E54EC 001E244C 38 80 00 00 */ li r4, 0 +/* 801E54F0 001E2450 48 15 B9 51 */ bl __dt__6CTokenFv +lbl_801E54F4: +/* 801E54F4 001E2454 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801E54F8 001E2458 7F E3 FB 78 */ mr r3, r31 +/* 801E54FC 001E245C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801E5500 001E2460 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801E5504 001E2464 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801E5508 001E2468 7C 08 03 A6 */ mtlr r0 +/* 801E550C 001E246C 38 21 00 20 */ addi r1, r1, 0x20 +/* 801E5510 001E2470 4E 80 00 20 */ blr + +.global MakeFirePopGen__20CActorModelParticlesFv +MakeFirePopGen__20CActorModelParticlesFv: +/* 801E5514 001E2474 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801E5518 001E2478 7C 08 02 A6 */ mflr r0 +/* 801E551C 001E247C 3C 80 80 3D */ lis r4, lbl_803D1EB0@ha +/* 801E5520 001E2480 38 A0 00 00 */ li r5, 0 +/* 801E5524 001E2484 90 01 00 24 */ stw r0, 0x24(r1) +/* 801E5528 001E2488 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801E552C 001E248C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801E5530 001E2490 7C 7E 1B 78 */ mr r30, r3 +/* 801E5534 001E2494 38 64 1E B0 */ addi r3, r4, lbl_803D1EB0@l +/* 801E5538 001E2498 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801E553C 001E249C 38 83 00 5C */ addi r4, r3, 0x5c +/* 801E5540 001E24A0 3B A0 00 00 */ li r29, 0 +/* 801E5544 001E24A4 38 60 03 40 */ li r3, 0x340 +/* 801E5548 001E24A8 48 13 03 25 */ bl __nw__FUlPCcPCc +/* 801E554C 001E24AC 7C 7F 1B 79 */ or. r31, r3, r3 +/* 801E5550 001E24B0 41 82 00 2C */ beq lbl_801E557C +/* 801E5554 001E24B4 38 61 00 08 */ addi r3, r1, 8 +/* 801E5558 001E24B8 38 9E 00 30 */ addi r4, r30, 0x30 +/* 801E555C 001E24BC 48 15 B9 4D */ bl __ct__6CTokenFRC6CToken +/* 801E5560 001E24C0 7F E3 FB 78 */ mr r3, r31 +/* 801E5564 001E24C4 38 81 00 08 */ addi r4, r1, 8 +/* 801E5568 001E24C8 3B A0 00 01 */ li r29, 1 +/* 801E556C 001E24CC 38 A0 00 00 */ li r5, 0 +/* 801E5570 001E24D0 38 C0 00 01 */ li r6, 1 +/* 801E5574 001E24D4 48 13 9E 6D */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 801E5578 001E24D8 7C 7F 1B 78 */ mr r31, r3 +lbl_801E557C: +/* 801E557C 001E24DC 7F A0 07 75 */ extsb. r0, r29 +/* 801E5580 001E24E0 41 82 00 10 */ beq lbl_801E5590 +/* 801E5584 001E24E4 38 61 00 08 */ addi r3, r1, 8 +/* 801E5588 001E24E8 38 80 00 00 */ li r4, 0 +/* 801E558C 001E24EC 48 15 B8 B5 */ bl __dt__6CTokenFv +lbl_801E5590: +/* 801E5590 001E24F0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801E5594 001E24F4 7F E3 FB 78 */ mr r3, r31 +/* 801E5598 001E24F8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801E559C 001E24FC 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801E55A0 001E2500 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801E55A4 001E2504 7C 08 03 A6 */ mtlr r0 +/* 801E55A8 001E2508 38 21 00 20 */ addi r1, r1, 0x20 +/* 801E55AC 001E250C 4E 80 00 20 */ blr + +.global MakeAshGen__20CActorModelParticlesFv +MakeAshGen__20CActorModelParticlesFv: +/* 801E55B0 001E2510 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801E55B4 001E2514 7C 08 02 A6 */ mflr r0 +/* 801E55B8 001E2518 3C 80 80 3D */ lis r4, lbl_803D1EB0@ha +/* 801E55BC 001E251C 38 A0 00 00 */ li r5, 0 +/* 801E55C0 001E2520 90 01 00 24 */ stw r0, 0x24(r1) +/* 801E55C4 001E2524 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801E55C8 001E2528 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801E55CC 001E252C 7C 7E 1B 78 */ mr r30, r3 +/* 801E55D0 001E2530 38 64 1E B0 */ addi r3, r4, lbl_803D1EB0@l +/* 801E55D4 001E2534 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801E55D8 001E2538 38 83 00 5C */ addi r4, r3, 0x5c +/* 801E55DC 001E253C 3B A0 00 00 */ li r29, 0 +/* 801E55E0 001E2540 38 60 03 40 */ li r3, 0x340 +/* 801E55E4 001E2544 48 13 02 89 */ bl __nw__FUlPCcPCc +/* 801E55E8 001E2548 7C 7F 1B 79 */ or. r31, r3, r3 +/* 801E55EC 001E254C 41 82 00 2C */ beq lbl_801E5618 +/* 801E55F0 001E2550 38 61 00 08 */ addi r3, r1, 8 +/* 801E55F4 001E2554 38 9E 00 20 */ addi r4, r30, 0x20 +/* 801E55F8 001E2558 48 15 B8 B1 */ bl __ct__6CTokenFRC6CToken +/* 801E55FC 001E255C 7F E3 FB 78 */ mr r3, r31 +/* 801E5600 001E2560 38 81 00 08 */ addi r4, r1, 8 +/* 801E5604 001E2564 3B A0 00 01 */ li r29, 1 +/* 801E5608 001E2568 38 A0 00 00 */ li r5, 0 +/* 801E560C 001E256C 38 C0 00 01 */ li r6, 1 +/* 801E5610 001E2570 48 13 9D D1 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 801E5614 001E2574 7C 7F 1B 78 */ mr r31, r3 +lbl_801E5618: +/* 801E5618 001E2578 7F A0 07 75 */ extsb. r0, r29 +/* 801E561C 001E257C 41 82 00 10 */ beq lbl_801E562C +/* 801E5620 001E2580 38 61 00 08 */ addi r3, r1, 8 +/* 801E5624 001E2584 38 80 00 00 */ li r4, 0 +/* 801E5628 001E2588 48 15 B8 19 */ bl __dt__6CTokenFv +lbl_801E562C: +/* 801E562C 001E258C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801E5630 001E2590 7F E3 FB 78 */ mr r3, r31 +/* 801E5634 001E2594 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801E5638 001E2598 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801E563C 001E259C 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801E5640 001E25A0 7C 08 03 A6 */ mtlr r0 +/* 801E5644 001E25A4 38 21 00 20 */ addi r1, r1, 0x20 +/* 801E5648 001E25A8 4E 80 00 20 */ blr + +.global Update__20CActorModelParticlesFfR13CStateManager +Update__20CActorModelParticlesFfR13CStateManager: +/* 801E564C 001E25AC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801E5650 001E25B0 7C 08 02 A6 */ mflr r0 +/* 801E5654 001E25B4 90 01 00 34 */ stw r0, 0x34(r1) +/* 801E5658 001E25B8 DB E1 00 28 */ stfd f31, 0x28(r1) +/* 801E565C 001E25BC FF E0 08 90 */ fmr f31, f1 +/* 801E5660 001E25C0 93 E1 00 24 */ stw r31, 0x24(r1) +/* 801E5664 001E25C4 93 C1 00 20 */ stw r30, 0x20(r1) +/* 801E5668 001E25C8 7C 9E 23 78 */ mr r30, r4 +/* 801E566C 001E25CC 93 A1 00 1C */ stw r29, 0x1c(r1) +/* 801E5670 001E25D0 7C 7D 1B 78 */ mr r29, r3 +/* 801E5674 001E25D4 4B FF E3 79 */ bl UpdateLoad__20CActorModelParticlesFv +/* 801E5678 001E25D8 83 FD 00 04 */ lwz r31, 4(r29) +/* 801E567C 001E25DC 48 00 00 60 */ b lbl_801E56DC +lbl_801E5680: +/* 801E5680 001E25E0 FC 20 F8 90 */ fmr f1, f31 +/* 801E5684 001E25E4 7F C4 F3 78 */ mr r4, r30 +/* 801E5688 001E25E8 38 7F 00 08 */ addi r3, r31, 8 +/* 801E568C 001E25EC 48 00 13 D9 */ bl Update__Q220CActorModelParticles5CItemFfR13CStateManager +/* 801E5690 001E25F0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E5694 001E25F4 40 82 00 44 */ bne lbl_801E56D8 +/* 801E5698 001E25F8 A0 1F 00 08 */ lhz r0, 8(r31) +/* 801E569C 001E25FC 7F C3 F3 78 */ mr r3, r30 +/* 801E56A0 001E2600 38 81 00 08 */ addi r4, r1, 8 +/* 801E56A4 001E2604 B0 01 00 08 */ sth r0, 8(r1) +/* 801E56A8 001E2608 4B E6 6E CD */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801E56AC 001E260C 28 03 00 00 */ cmplwi r3, 0 +/* 801E56B0 001E2610 41 82 00 14 */ beq lbl_801E56C4 +/* 801E56B4 001E2614 88 03 00 E5 */ lbz r0, 0xe5(r3) +/* 801E56B8 001E2618 38 80 00 00 */ li r4, 0 +/* 801E56BC 001E261C 50 80 07 FE */ rlwimi r0, r4, 0, 0x1f, 0x1f +/* 801E56C0 001E2620 98 03 00 E5 */ stb r0, 0xe5(r3) +lbl_801E56C4: +/* 801E56C4 001E2624 7F A3 EB 78 */ mr r3, r29 +/* 801E56C8 001E2628 7F E4 FB 78 */ mr r4, r31 +/* 801E56CC 001E262C 48 00 1D F9 */ bl sub_801e74c4 +/* 801E56D0 001E2630 7C 7F 1B 78 */ mr r31, r3 +/* 801E56D4 001E2634 48 00 00 08 */ b lbl_801E56DC +lbl_801E56D8: +/* 801E56D8 001E2638 83 FF 00 04 */ lwz r31, 4(r31) +lbl_801E56DC: +/* 801E56DC 001E263C 80 1D 00 08 */ lwz r0, 8(r29) +/* 801E56E0 001E2640 7C 1F 00 40 */ cmplw r31, r0 +/* 801E56E4 001E2644 40 82 FF 9C */ bne lbl_801E5680 +/* 801E56E8 001E2648 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801E56EC 001E264C CB E1 00 28 */ lfd f31, 0x28(r1) +/* 801E56F0 001E2650 83 E1 00 24 */ lwz r31, 0x24(r1) +/* 801E56F4 001E2654 83 C1 00 20 */ lwz r30, 0x20(r1) +/* 801E56F8 001E2658 83 A1 00 1C */ lwz r29, 0x1c(r1) +/* 801E56FC 001E265C 7C 08 03 A6 */ mtlr r0 +/* 801E5700 001E2660 38 21 00 30 */ addi r1, r1, 0x30 +/* 801E5704 001E2664 4E 80 00 20 */ blr + +.global __ct__20CActorModelParticlesFv +__ct__20CActorModelParticlesFv: +/* 801E5708 001E2668 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801E570C 001E266C 7C 08 02 A6 */ mflr r0 +/* 801E5710 001E2670 90 01 00 54 */ stw r0, 0x54(r1) +/* 801E5714 001E2674 38 00 00 00 */ li r0, 0 +/* 801E5718 001E2678 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801E571C 001E267C 7C 7F 1B 78 */ mr r31, r3 +/* 801E5720 001E2680 38 BF 00 0C */ addi r5, r31, 0xc +/* 801E5724 001E2684 3C 60 80 3D */ lis r3, lbl_803D1E98@ha +/* 801E5728 001E2688 90 BF 00 04 */ stw r5, 4(r31) +/* 801E572C 001E268C 80 83 1E 98 */ lwz r4, lbl_803D1E98@l(r3) +/* 801E5730 001E2690 90 BF 00 08 */ stw r5, 8(r31) +/* 801E5734 001E2694 90 A5 00 00 */ stw r5, 0(r5) +/* 801E5738 001E2698 90 BF 00 10 */ stw r5, 0x10(r31) +/* 801E573C 001E269C 90 1F 00 14 */ stw r0, 0x14(r31) +/* 801E5740 001E26A0 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) +/* 801E5744 001E26A4 81 83 00 00 */ lwz r12, 0(r3) +/* 801E5748 001E26A8 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801E574C 001E26AC 7D 89 03 A6 */ mtctr r12 +/* 801E5750 001E26B0 4E 80 04 21 */ bctrl +/* 801E5754 001E26B4 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801E5758 001E26B8 7C 65 1B 78 */ mr r5, r3 +/* 801E575C 001E26BC 38 61 00 38 */ addi r3, r1, 0x38 +/* 801E5760 001E26C0 81 84 00 00 */ lwz r12, 0(r4) +/* 801E5764 001E26C4 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801E5768 001E26C8 7D 89 03 A6 */ mtctr r12 +/* 801E576C 001E26CC 4E 80 04 21 */ bctrl +/* 801E5770 001E26D0 38 7F 00 18 */ addi r3, r31, 0x18 +/* 801E5774 001E26D4 38 81 00 38 */ addi r4, r1, 0x38 +/* 801E5778 001E26D8 48 15 B7 31 */ bl __ct__6CTokenFRC6CToken +/* 801E577C 001E26DC 38 61 00 38 */ addi r3, r1, 0x38 +/* 801E5780 001E26E0 38 80 FF FF */ li r4, -1 +/* 801E5784 001E26E4 48 15 B6 BD */ bl __dt__6CTokenFv +/* 801E5788 001E26E8 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) +/* 801E578C 001E26EC 3C 80 80 3D */ lis r4, lbl_803D1E98@ha +/* 801E5790 001E26F0 38 84 1E 98 */ addi r4, r4, lbl_803D1E98@l +/* 801E5794 001E26F4 81 83 00 00 */ lwz r12, 0(r3) +/* 801E5798 001E26F8 80 84 00 08 */ lwz r4, 8(r4) +/* 801E579C 001E26FC 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801E57A0 001E2700 7D 89 03 A6 */ mtctr r12 +/* 801E57A4 001E2704 4E 80 04 21 */ bctrl +/* 801E57A8 001E2708 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801E57AC 001E270C 7C 65 1B 78 */ mr r5, r3 +/* 801E57B0 001E2710 38 61 00 30 */ addi r3, r1, 0x30 +/* 801E57B4 001E2714 81 84 00 00 */ lwz r12, 0(r4) +/* 801E57B8 001E2718 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801E57BC 001E271C 7D 89 03 A6 */ mtctr r12 +/* 801E57C0 001E2720 4E 80 04 21 */ bctrl +/* 801E57C4 001E2724 38 7F 00 20 */ addi r3, r31, 0x20 +/* 801E57C8 001E2728 38 81 00 30 */ addi r4, r1, 0x30 +/* 801E57CC 001E272C 48 15 B6 DD */ bl __ct__6CTokenFRC6CToken +/* 801E57D0 001E2730 38 61 00 30 */ addi r3, r1, 0x30 +/* 801E57D4 001E2734 38 80 FF FF */ li r4, -1 +/* 801E57D8 001E2738 48 15 B6 69 */ bl __dt__6CTokenFv +/* 801E57DC 001E273C 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) +/* 801E57E0 001E2740 3C 80 80 3D */ lis r4, lbl_803D1E98@ha +/* 801E57E4 001E2744 38 84 1E 98 */ addi r4, r4, lbl_803D1E98@l +/* 801E57E8 001E2748 81 83 00 00 */ lwz r12, 0(r3) +/* 801E57EC 001E274C 80 84 00 04 */ lwz r4, 4(r4) +/* 801E57F0 001E2750 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801E57F4 001E2754 7D 89 03 A6 */ mtctr r12 +/* 801E57F8 001E2758 4E 80 04 21 */ bctrl +/* 801E57FC 001E275C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801E5800 001E2760 7C 65 1B 78 */ mr r5, r3 +/* 801E5804 001E2764 38 61 00 28 */ addi r3, r1, 0x28 +/* 801E5808 001E2768 81 84 00 00 */ lwz r12, 0(r4) +/* 801E580C 001E276C 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801E5810 001E2770 7D 89 03 A6 */ mtctr r12 +/* 801E5814 001E2774 4E 80 04 21 */ bctrl +/* 801E5818 001E2778 38 7F 00 28 */ addi r3, r31, 0x28 +/* 801E581C 001E277C 38 81 00 28 */ addi r4, r1, 0x28 +/* 801E5820 001E2780 48 15 B6 89 */ bl __ct__6CTokenFRC6CToken +/* 801E5824 001E2784 38 61 00 28 */ addi r3, r1, 0x28 +/* 801E5828 001E2788 38 80 FF FF */ li r4, -1 +/* 801E582C 001E278C 48 15 B6 15 */ bl __dt__6CTokenFv +/* 801E5830 001E2790 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) +/* 801E5834 001E2794 3C 80 80 3D */ lis r4, lbl_803D1E98@ha +/* 801E5838 001E2798 38 84 1E 98 */ addi r4, r4, lbl_803D1E98@l +/* 801E583C 001E279C 81 83 00 00 */ lwz r12, 0(r3) +/* 801E5840 001E27A0 80 84 00 0C */ lwz r4, 0xc(r4) +/* 801E5844 001E27A4 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801E5848 001E27A8 7D 89 03 A6 */ mtctr r12 +/* 801E584C 001E27AC 4E 80 04 21 */ bctrl +/* 801E5850 001E27B0 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801E5854 001E27B4 7C 65 1B 78 */ mr r5, r3 +/* 801E5858 001E27B8 38 61 00 20 */ addi r3, r1, 0x20 +/* 801E585C 001E27BC 81 84 00 00 */ lwz r12, 0(r4) +/* 801E5860 001E27C0 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801E5864 001E27C4 7D 89 03 A6 */ mtctr r12 +/* 801E5868 001E27C8 4E 80 04 21 */ bctrl +/* 801E586C 001E27CC 38 7F 00 30 */ addi r3, r31, 0x30 +/* 801E5870 001E27D0 38 81 00 20 */ addi r4, r1, 0x20 +/* 801E5874 001E27D4 48 15 B6 35 */ bl __ct__6CTokenFRC6CToken +/* 801E5878 001E27D8 38 61 00 20 */ addi r3, r1, 0x20 +/* 801E587C 001E27DC 38 80 FF FF */ li r4, -1 +/* 801E5880 001E27E0 48 15 B5 C1 */ bl __dt__6CTokenFv +/* 801E5884 001E27E4 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) +/* 801E5888 001E27E8 3C 80 80 3D */ lis r4, lbl_803D1E98@ha +/* 801E588C 001E27EC 38 84 1E 98 */ addi r4, r4, lbl_803D1E98@l +/* 801E5890 001E27F0 81 83 00 00 */ lwz r12, 0(r3) +/* 801E5894 001E27F4 80 84 00 14 */ lwz r4, 0x14(r4) +/* 801E5898 001E27F8 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801E589C 001E27FC 7D 89 03 A6 */ mtctr r12 +/* 801E58A0 001E2800 4E 80 04 21 */ bctrl +/* 801E58A4 001E2804 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801E58A8 001E2808 7C 65 1B 78 */ mr r5, r3 +/* 801E58AC 001E280C 38 61 00 18 */ addi r3, r1, 0x18 +/* 801E58B0 001E2810 81 84 00 00 */ lwz r12, 0(r4) +/* 801E58B4 001E2814 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801E58B8 001E2818 7D 89 03 A6 */ mtctr r12 +/* 801E58BC 001E281C 4E 80 04 21 */ bctrl +/* 801E58C0 001E2820 38 7F 00 38 */ addi r3, r31, 0x38 +/* 801E58C4 001E2824 38 81 00 18 */ addi r4, r1, 0x18 +/* 801E58C8 001E2828 48 15 B5 E1 */ bl __ct__6CTokenFRC6CToken +/* 801E58CC 001E282C 38 61 00 18 */ addi r3, r1, 0x18 +/* 801E58D0 001E2830 38 80 FF FF */ li r4, -1 +/* 801E58D4 001E2834 48 15 B5 6D */ bl __dt__6CTokenFv +/* 801E58D8 001E2838 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) +/* 801E58DC 001E283C 3C 80 80 3D */ lis r4, lbl_803D1E98@ha +/* 801E58E0 001E2840 38 84 1E 98 */ addi r4, r4, lbl_803D1E98@l +/* 801E58E4 001E2844 81 83 00 00 */ lwz r12, 0(r3) +/* 801E58E8 001E2848 80 84 00 10 */ lwz r4, 0x10(r4) +/* 801E58EC 001E284C 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801E58F0 001E2850 7D 89 03 A6 */ mtctr r12 +/* 801E58F4 001E2854 4E 80 04 21 */ bctrl +/* 801E58F8 001E2858 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801E58FC 001E285C 7C 65 1B 78 */ mr r5, r3 +/* 801E5900 001E2860 38 61 00 10 */ addi r3, r1, 0x10 +/* 801E5904 001E2864 81 84 00 00 */ lwz r12, 0(r4) +/* 801E5908 001E2868 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801E590C 001E286C 7D 89 03 A6 */ mtctr r12 +/* 801E5910 001E2870 4E 80 04 21 */ bctrl +/* 801E5914 001E2874 38 7F 00 40 */ addi r3, r31, 0x40 +/* 801E5918 001E2878 38 81 00 10 */ addi r4, r1, 0x10 +/* 801E591C 001E287C 48 15 B5 8D */ bl __ct__6CTokenFRC6CToken +/* 801E5920 001E2880 38 61 00 10 */ addi r3, r1, 0x10 +/* 801E5924 001E2884 38 80 FF FF */ li r4, -1 +/* 801E5928 001E2888 48 15 B5 19 */ bl __dt__6CTokenFv +/* 801E592C 001E288C 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) +/* 801E5930 001E2890 3C 80 80 3D */ lis r4, lbl_803D1EB0@ha +/* 801E5934 001E2894 38 84 1E B0 */ addi r4, r4, lbl_803D1EB0@l +/* 801E5938 001E2898 81 83 00 00 */ lwz r12, 0(r3) +/* 801E593C 001E289C 38 84 00 63 */ addi r4, r4, 0x63 +/* 801E5940 001E28A0 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801E5944 001E28A4 7D 89 03 A6 */ mtctr r12 +/* 801E5948 001E28A8 4E 80 04 21 */ bctrl +/* 801E594C 001E28AC 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801E5950 001E28B0 7C 65 1B 78 */ mr r5, r3 +/* 801E5954 001E28B4 38 61 00 08 */ addi r3, r1, 8 +/* 801E5958 001E28B8 81 84 00 00 */ lwz r12, 0(r4) +/* 801E595C 001E28BC 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801E5960 001E28C0 7D 89 03 A6 */ mtctr r12 +/* 801E5964 001E28C4 4E 80 04 21 */ bctrl +/* 801E5968 001E28C8 38 7F 00 48 */ addi r3, r31, 0x48 +/* 801E596C 001E28CC 38 81 00 08 */ addi r4, r1, 8 +/* 801E5970 001E28D0 48 15 B5 39 */ bl __ct__6CTokenFRC6CToken +/* 801E5974 001E28D4 38 61 00 08 */ addi r3, r1, 8 +/* 801E5978 001E28D8 38 80 FF FF */ li r4, -1 +/* 801E597C 001E28DC 48 15 B4 C5 */ bl __dt__6CTokenFv +/* 801E5980 001E28E0 38 00 00 00 */ li r0, 0 +/* 801E5984 001E28E4 7F E3 FB 78 */ mr r3, r31 +/* 801E5988 001E28E8 90 1F 00 50 */ stw r0, 0x50(r31) +/* 801E598C 001E28EC 4B FF E1 FD */ bl LoadParticleDGRPs__20CActorModelParticlesFv +/* 801E5990 001E28F0 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801E5994 001E28F4 7F E3 FB 78 */ mr r3, r31 +/* 801E5998 001E28F8 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801E599C 001E28FC 7C 08 03 A6 */ mtlr r0 +/* 801E59A0 001E2900 38 21 00 50 */ addi r1, r1, 0x50 +/* 801E59A4 001E2904 4E 80 00 20 */ blr + +.global Unlock__Q220CActorModelParticles5CItemF11EDependency +Unlock__Q220CActorModelParticles5CItemF11EDependency: +/* 801E59A8 001E2908 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801E59AC 001E290C 7C 08 02 A6 */ mflr r0 +/* 801E59B0 001E2910 90 01 00 14 */ stw r0, 0x14(r1) +/* 801E59B4 001E2914 38 00 00 01 */ li r0, 1 +/* 801E59B8 001E2918 7C 00 20 30 */ slw r0, r0, r4 +/* 801E59BC 001E291C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801E59C0 001E2920 54 1F 06 3E */ clrlwi r31, r0, 0x18 +/* 801E59C4 001E2924 93 C1 00 08 */ stw r30, 8(r1) +/* 801E59C8 001E2928 7C 7E 1B 78 */ mr r30, r3 +/* 801E59CC 001E292C 88 63 01 34 */ lbz r3, 0x134(r3) +/* 801E59D0 001E2930 7C 60 F8 39 */ and. r0, r3, r31 +/* 801E59D4 001E2934 41 82 00 18 */ beq lbl_801E59EC +/* 801E59D8 001E2938 80 7E 01 28 */ lwz r3, 0x128(r30) +/* 801E59DC 001E293C 4B FF E0 B9 */ bl DecrementDependency__20CActorModelParticlesF11EDependency +/* 801E59E0 001E2940 88 1E 01 34 */ lbz r0, 0x134(r30) +/* 801E59E4 001E2944 7C 00 F8 78 */ andc r0, r0, r31 +/* 801E59E8 001E2948 98 1E 01 34 */ stb r0, 0x134(r30) +lbl_801E59EC: +/* 801E59EC 001E294C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801E59F0 001E2950 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801E59F4 001E2954 83 C1 00 08 */ lwz r30, 8(r1) +/* 801E59F8 001E2958 7C 08 03 A6 */ mtlr r0 +/* 801E59FC 001E295C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801E5A00 001E2960 4E 80 00 20 */ blr + +.global EnsureLoaded__Q220CActorModelParticles5CItemFi +EnsureLoaded__Q220CActorModelParticles5CItemFi: +/* 801E5A04 001E2964 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801E5A08 001E2968 7C 08 02 A6 */ mflr r0 +/* 801E5A0C 001E296C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801E5A10 001E2970 38 00 00 01 */ li r0, 1 +/* 801E5A14 001E2974 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801E5A18 001E2978 93 C1 00 08 */ stw r30, 8(r1) +/* 801E5A1C 001E297C 7C 7E 1B 78 */ mr r30, r3 +/* 801E5A20 001E2980 7C 03 20 30 */ slw r3, r0, r4 +/* 801E5A24 001E2984 88 1E 01 34 */ lbz r0, 0x134(r30) +/* 801E5A28 001E2988 54 7F 06 3E */ clrlwi r31, r3, 0x18 +/* 801E5A2C 001E298C 7C 00 F8 39 */ and. r0, r0, r31 +/* 801E5A30 001E2990 40 82 00 18 */ bne lbl_801E5A48 +/* 801E5A34 001E2994 80 7E 01 28 */ lwz r3, 0x128(r30) +/* 801E5A38 001E2998 4B FF E0 ED */ bl IncrementDependency__20CActorModelParticlesFi +/* 801E5A3C 001E299C 88 1E 01 34 */ lbz r0, 0x134(r30) +/* 801E5A40 001E29A0 7C 00 FB 78 */ or r0, r0, r31 +/* 801E5A44 001E29A4 98 1E 01 34 */ stb r0, 0x134(r30) +lbl_801E5A48: +/* 801E5A48 001E29A8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801E5A4C 001E29AC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801E5A50 001E29B0 83 C1 00 08 */ lwz r30, 8(r1) +/* 801E5A54 001E29B4 7C 08 03 A6 */ mtlr r0 +/* 801E5A58 001E29B8 38 21 00 10 */ addi r1, r1, 0x10 +/* 801E5A5C 001E29BC 4E 80 00 20 */ blr + +.global UpdateOnFire__Q220CActorModelParticles5CItemFfR6CActorR13CStateManager +UpdateOnFire__Q220CActorModelParticles5CItemFfR6CActorR13CStateManager: +/* 801E5A60 001E29C0 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 801E5A64 001E29C4 7C 08 02 A6 */ mflr r0 +/* 801E5A68 001E29C8 90 01 00 74 */ stw r0, 0x74(r1) +/* 801E5A6C 001E29CC DB E1 00 60 */ stfd f31, 0x60(r1) +/* 801E5A70 001E29D0 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 801E5A74 001E29D4 BF 21 00 44 */ stmw r25, 0x44(r1) +/* 801E5A78 001E29D8 7C 7B 1B 78 */ mr r27, r3 +/* 801E5A7C 001E29DC FF E0 08 90 */ fmr f31, f1 +/* 801E5A80 001E29E0 C0 23 00 6C */ lfs f1, 0x6c(r3) +/* 801E5A84 001E29E4 7C 9C 23 78 */ mr r28, r4 +/* 801E5A88 001E29E8 C0 02 AD 80 */ lfs f0, lbl_805ACAA0@sda21(r2) +/* 801E5A8C 001E29EC 7C BD 2B 78 */ mr r29, r5 +/* 801E5A90 001E29F0 EC 21 F8 28 */ fsubs f1, f1, f31 +/* 801E5A94 001E29F4 3B E0 00 00 */ li r31, 0 +/* 801E5A98 001E29F8 3B C0 00 00 */ li r30, 0 +/* 801E5A9C 001E29FC D0 23 00 6C */ stfs f1, 0x6c(r3) +/* 801E5AA0 001E2A00 C0 23 00 6C */ lfs f1, 0x6c(r3) +/* 801E5AA4 001E2A04 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801E5AA8 001E2A08 40 80 00 08 */ bge lbl_801E5AB0 +/* 801E5AAC 001E2A0C D0 1B 00 6C */ stfs f0, 0x6c(r27) +lbl_801E5AB0: +/* 801E5AB0 001E2A10 88 1B 01 34 */ lbz r0, 0x134(r27) +/* 801E5AB4 001E2A14 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 801E5AB8 001E2A18 41 82 03 44 */ beq lbl_801E5DFC +/* 801E5ABC 001E2A1C 80 7B 01 28 */ lwz r3, 0x128(r27) +/* 801E5AC0 001E2A20 88 03 00 E6 */ lbz r0, 0xe6(r3) +/* 801E5AC4 001E2A24 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 801E5AC8 001E2A28 41 82 03 30 */ beq lbl_801E5DF8 +/* 801E5ACC 001E2A2C 88 1B 00 70 */ lbz r0, 0x70(r27) +/* 801E5AD0 001E2A30 28 00 00 00 */ cmplwi r0, 0 +/* 801E5AD4 001E2A34 41 82 02 20 */ beq lbl_801E5CF4 +/* 801E5AD8 001E2A38 28 1C 00 00 */ cmplwi r28, 0 +/* 801E5ADC 001E2A3C 41 82 02 18 */ beq lbl_801E5CF4 +/* 801E5AE0 001E2A40 80 1B 00 7C */ lwz r0, 0x7c(r27) +/* 801E5AE4 001E2A44 3B 40 00 01 */ li r26, 1 +/* 801E5AE8 001E2A48 28 00 00 00 */ cmplwi r0, 0 +/* 801E5AEC 001E2A4C 40 82 00 10 */ bne lbl_801E5AFC +/* 801E5AF0 001E2A50 88 1B 00 E0 */ lbz r0, 0xe0(r27) +/* 801E5AF4 001E2A54 28 00 00 00 */ cmplwi r0, 0 +/* 801E5AF8 001E2A58 41 82 00 0C */ beq lbl_801E5B04 +lbl_801E5AFC: +/* 801E5AFC 001E2A5C 3B 40 00 00 */ li r26, 0 +/* 801E5B00 001E2A60 48 00 00 A4 */ b lbl_801E5BA4 +lbl_801E5B04: +/* 801E5B04 001E2A64 7F 83 E3 78 */ mr r3, r28 +/* 801E5B08 001E2A68 48 00 19 71 */ bl IsMediumOrLarge__FRCActor +/* 801E5B0C 001E2A6C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E5B10 001E2A70 40 82 00 94 */ bne lbl_801E5BA4 +/* 801E5B14 001E2A74 80 1B 00 10 */ lwz r0, 0x10(r27) +/* 801E5B18 001E2A78 38 60 00 00 */ li r3, 0 +/* 801E5B1C 001E2A7C 28 00 00 00 */ cmplwi r0, 0 +/* 801E5B20 001E2A80 41 82 00 08 */ beq lbl_801E5B28 +/* 801E5B24 001E2A84 38 60 00 01 */ li r3, 1 +lbl_801E5B28: +/* 801E5B28 001E2A88 80 1B 00 1C */ lwz r0, 0x1c(r27) +/* 801E5B2C 001E2A8C 28 00 00 00 */ cmplwi r0, 0 +/* 801E5B30 001E2A90 41 82 00 08 */ beq lbl_801E5B38 +/* 801E5B34 001E2A94 38 63 00 01 */ addi r3, r3, 1 +lbl_801E5B38: +/* 801E5B38 001E2A98 80 1B 00 28 */ lwz r0, 0x28(r27) +/* 801E5B3C 001E2A9C 28 00 00 00 */ cmplwi r0, 0 +/* 801E5B40 001E2AA0 41 82 00 08 */ beq lbl_801E5B48 +/* 801E5B44 001E2AA4 38 63 00 01 */ addi r3, r3, 1 +lbl_801E5B48: +/* 801E5B48 001E2AA8 80 1B 00 34 */ lwz r0, 0x34(r27) +/* 801E5B4C 001E2AAC 28 00 00 00 */ cmplwi r0, 0 +/* 801E5B50 001E2AB0 41 82 00 08 */ beq lbl_801E5B58 +/* 801E5B54 001E2AB4 38 63 00 01 */ addi r3, r3, 1 +lbl_801E5B58: +/* 801E5B58 001E2AB8 80 1B 00 40 */ lwz r0, 0x40(r27) +/* 801E5B5C 001E2ABC 28 00 00 00 */ cmplwi r0, 0 +/* 801E5B60 001E2AC0 41 82 00 08 */ beq lbl_801E5B68 +/* 801E5B64 001E2AC4 38 63 00 01 */ addi r3, r3, 1 +lbl_801E5B68: +/* 801E5B68 001E2AC8 80 1B 00 4C */ lwz r0, 0x4c(r27) +/* 801E5B6C 001E2ACC 28 00 00 00 */ cmplwi r0, 0 +/* 801E5B70 001E2AD0 41 82 00 08 */ beq lbl_801E5B78 +/* 801E5B74 001E2AD4 38 63 00 01 */ addi r3, r3, 1 +lbl_801E5B78: +/* 801E5B78 001E2AD8 80 1B 00 58 */ lwz r0, 0x58(r27) +/* 801E5B7C 001E2ADC 28 00 00 00 */ cmplwi r0, 0 +/* 801E5B80 001E2AE0 41 82 00 08 */ beq lbl_801E5B88 +/* 801E5B84 001E2AE4 38 63 00 01 */ addi r3, r3, 1 +lbl_801E5B88: +/* 801E5B88 001E2AE8 80 1B 00 64 */ lwz r0, 0x64(r27) +/* 801E5B8C 001E2AEC 28 00 00 00 */ cmplwi r0, 0 +/* 801E5B90 001E2AF0 41 82 00 08 */ beq lbl_801E5B98 +/* 801E5B94 001E2AF4 38 63 00 01 */ addi r3, r3, 1 +lbl_801E5B98: +/* 801E5B98 001E2AF8 2C 03 00 04 */ cmpwi r3, 4 +/* 801E5B9C 001E2AFC 41 80 00 08 */ blt lbl_801E5BA4 +/* 801E5BA0 001E2B00 3B 40 00 00 */ li r26, 0 +lbl_801E5BA4: +/* 801E5BA4 001E2B04 57 40 06 3F */ clrlwi. r0, r26, 0x18 +/* 801E5BA8 001E2B08 41 82 00 D4 */ beq lbl_801E5C7C +/* 801E5BAC 001E2B0C 38 00 00 08 */ li r0, 8 +/* 801E5BB0 001E2B10 3B 5B 00 0C */ addi r26, r27, 0xc +/* 801E5BB4 001E2B14 7C 09 03 A6 */ mtctr r0 +lbl_801E5BB8: +/* 801E5BB8 001E2B18 80 1A 00 04 */ lwz r0, 4(r26) +/* 801E5BBC 001E2B1C 28 00 00 00 */ cmplwi r0, 0 +/* 801E5BC0 001E2B20 40 82 00 B4 */ bne lbl_801E5C74 +/* 801E5BC4 001E2B24 80 7D 09 00 */ lwz r3, 0x900(r29) +/* 801E5BC8 001E2B28 48 12 C9 59 */ bl Next__9CRandom16Fv +/* 801E5BCC 001E2B2C 90 7A 00 08 */ stw r3, 8(r26) +/* 801E5BD0 001E2B30 80 7B 01 28 */ lwz r3, 0x128(r27) +/* 801E5BD4 001E2B34 4B FF F7 75 */ bl MakeOnFireGen__20CActorModelParticlesFv +/* 801E5BD8 001E2B38 7C 83 00 D0 */ neg r4, r3 +/* 801E5BDC 001E2B3C 38 01 00 1C */ addi r0, r1, 0x1c +/* 801E5BE0 001E2B40 7C 84 1B 78 */ or r4, r4, r3 +/* 801E5BE4 001E2B44 90 61 00 20 */ stw r3, 0x20(r1) +/* 801E5BE8 001E2B48 54 83 0F FE */ srwi r3, r4, 0x1f +/* 801E5BEC 001E2B4C 7C 00 D0 40 */ cmplw r0, r26 +/* 801E5BF0 001E2B50 98 61 00 1C */ stb r3, 0x1c(r1) +/* 801E5BF4 001E2B54 41 82 00 48 */ beq lbl_801E5C3C +/* 801E5BF8 001E2B58 88 1A 00 00 */ lbz r0, 0(r26) +/* 801E5BFC 001E2B5C 28 00 00 00 */ cmplwi r0, 0 +/* 801E5C00 001E2B60 41 82 00 24 */ beq lbl_801E5C24 +/* 801E5C04 001E2B64 80 7A 00 04 */ lwz r3, 4(r26) +/* 801E5C08 001E2B68 28 03 00 00 */ cmplwi r3, 0 +/* 801E5C0C 001E2B6C 41 82 00 18 */ beq lbl_801E5C24 +/* 801E5C10 001E2B70 81 83 00 00 */ lwz r12, 0(r3) +/* 801E5C14 001E2B74 38 80 00 01 */ li r4, 1 +/* 801E5C18 001E2B78 81 8C 00 08 */ lwz r12, 8(r12) +/* 801E5C1C 001E2B7C 7D 89 03 A6 */ mtctr r12 +/* 801E5C20 001E2B80 4E 80 04 21 */ bctrl +lbl_801E5C24: +/* 801E5C24 001E2B84 88 61 00 1C */ lbz r3, 0x1c(r1) +/* 801E5C28 001E2B88 38 00 00 00 */ li r0, 0 +/* 801E5C2C 001E2B8C 98 7A 00 00 */ stb r3, 0(r26) +/* 801E5C30 001E2B90 80 61 00 20 */ lwz r3, 0x20(r1) +/* 801E5C34 001E2B94 90 7A 00 04 */ stw r3, 4(r26) +/* 801E5C38 001E2B98 98 01 00 1C */ stb r0, 0x1c(r1) +lbl_801E5C3C: +/* 801E5C3C 001E2B9C 88 01 00 1C */ lbz r0, 0x1c(r1) +/* 801E5C40 001E2BA0 28 00 00 00 */ cmplwi r0, 0 +/* 801E5C44 001E2BA4 41 82 00 24 */ beq lbl_801E5C68 +/* 801E5C48 001E2BA8 80 61 00 20 */ lwz r3, 0x20(r1) +/* 801E5C4C 001E2BAC 28 03 00 00 */ cmplwi r3, 0 +/* 801E5C50 001E2BB0 41 82 00 18 */ beq lbl_801E5C68 +/* 801E5C54 001E2BB4 81 83 00 00 */ lwz r12, 0(r3) +/* 801E5C58 001E2BB8 38 80 00 01 */ li r4, 1 +/* 801E5C5C 001E2BBC 81 8C 00 08 */ lwz r12, 8(r12) +/* 801E5C60 001E2BC0 7D 89 03 A6 */ mtctr r12 +/* 801E5C64 001E2BC4 4E 80 04 21 */ bctrl +lbl_801E5C68: +/* 801E5C68 001E2BC8 C0 02 AD 94 */ lfs f0, lbl_805ACAB4@sda21(r2) +/* 801E5C6C 001E2BCC D0 1B 00 6C */ stfs f0, 0x6c(r27) +/* 801E5C70 001E2BD0 48 00 00 0C */ b lbl_801E5C7C +lbl_801E5C74: +/* 801E5C74 001E2BD4 3B 5A 00 0C */ addi r26, r26, 0xc +/* 801E5C78 001E2BD8 42 00 FF 40 */ bdnz lbl_801E5BB8 +lbl_801E5C7C: +/* 801E5C7C 001E2BDC 80 1B 00 74 */ lwz r0, 0x74(r27) +/* 801E5C80 001E2BE0 28 00 00 00 */ cmplwi r0, 0 +/* 801E5C84 001E2BE4 40 82 00 68 */ bne lbl_801E5CEC +/* 801E5C88 001E2BE8 7F 83 E3 78 */ mr r3, r28 +/* 801E5C8C 001E2BEC 48 00 17 ED */ bl IsMediumOrLarge__FRCActor +/* 801E5C90 001E2BF0 54 63 06 3E */ clrlwi r3, r3, 0x18 +/* 801E5C94 001E2BF4 C0 5C 00 60 */ lfs f2, 0x60(r28) +/* 801E5C98 001E2BF8 7C 03 00 D0 */ neg r0, r3 +/* 801E5C9C 001E2BFC C0 3C 00 50 */ lfs f1, 0x50(r28) +/* 801E5CA0 001E2C00 7C 00 1B 78 */ or r0, r0, r3 +/* 801E5CA4 001E2C04 C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 801E5CA8 001E2C08 7C 04 FE 70 */ srawi r4, r0, 0x1f +/* 801E5CAC 001E2C0C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801E5CB0 001E2C10 38 04 04 80 */ addi r0, r4, 0x480 +/* 801E5CB4 001E2C14 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801E5CB8 001E2C18 38 C3 66 A0 */ addi r6, r3, skZero3f@l +/* 801E5CBC 001E2C1C A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) +/* 801E5CC0 001E2C20 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 801E5CC4 001E2C24 54 04 04 3E */ clrlwi r4, r0, 0x10 +/* 801E5CC8 001E2C28 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 801E5CCC 001E2C2C 38 61 00 10 */ addi r3, r1, 0x10 +/* 801E5CD0 001E2C30 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 801E5CD4 001E2C34 38 A1 00 30 */ addi r5, r1, 0x30 +/* 801E5CD8 001E2C38 38 E0 00 01 */ li r7, 1 +/* 801E5CDC 001E2C3C 39 00 00 01 */ li r8, 1 +/* 801E5CE0 001E2C40 48 10 45 D1 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +/* 801E5CE4 001E2C44 80 01 00 10 */ lwz r0, 0x10(r1) +/* 801E5CE8 001E2C48 90 1B 00 74 */ stw r0, 0x74(r27) +lbl_801E5CEC: +/* 801E5CEC 001E2C4C 38 00 00 00 */ li r0, 0 +/* 801E5CF0 001E2C50 98 1B 00 70 */ stb r0, 0x70(r27) +lbl_801E5CF4: +/* 801E5CF4 001E2C54 3B A0 00 00 */ li r29, 0 +/* 801E5CF8 001E2C58 3B 5B 00 0C */ addi r26, r27, 0xc +lbl_801E5CFC: +/* 801E5CFC 001E2C5C 80 7A 00 04 */ lwz r3, 4(r26) +/* 801E5D00 001E2C60 28 03 00 00 */ cmplwi r3, 0 +/* 801E5D04 001E2C64 41 82 00 E0 */ beq lbl_801E5DE4 +/* 801E5D08 001E2C68 81 83 00 00 */ lwz r12, 0(r3) +/* 801E5D0C 001E2C6C 7C 79 1B 78 */ mr r25, r3 +/* 801E5D10 001E2C70 81 8C 00 58 */ lwz r12, 0x58(r12) +/* 801E5D14 001E2C74 7D 89 03 A6 */ mtctr r12 +/* 801E5D18 001E2C78 4E 80 04 21 */ bctrl +/* 801E5D1C 001E2C7C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E5D20 001E2C80 41 82 00 90 */ beq lbl_801E5DB0 +/* 801E5D24 001E2C84 38 01 00 14 */ addi r0, r1, 0x14 +/* 801E5D28 001E2C88 38 60 00 00 */ li r3, 0 +/* 801E5D2C 001E2C8C 7C 00 D0 40 */ cmplw r0, r26 +/* 801E5D30 001E2C90 98 61 00 14 */ stb r3, 0x14(r1) +/* 801E5D34 001E2C94 90 61 00 18 */ stw r3, 0x18(r1) +/* 801E5D38 001E2C98 41 82 00 48 */ beq lbl_801E5D80 +/* 801E5D3C 001E2C9C 88 1A 00 00 */ lbz r0, 0(r26) +/* 801E5D40 001E2CA0 28 00 00 00 */ cmplwi r0, 0 +/* 801E5D44 001E2CA4 41 82 00 24 */ beq lbl_801E5D68 +/* 801E5D48 001E2CA8 80 7A 00 04 */ lwz r3, 4(r26) +/* 801E5D4C 001E2CAC 28 03 00 00 */ cmplwi r3, 0 +/* 801E5D50 001E2CB0 41 82 00 18 */ beq lbl_801E5D68 +/* 801E5D54 001E2CB4 81 83 00 00 */ lwz r12, 0(r3) +/* 801E5D58 001E2CB8 38 80 00 01 */ li r4, 1 +/* 801E5D5C 001E2CBC 81 8C 00 08 */ lwz r12, 8(r12) +/* 801E5D60 001E2CC0 7D 89 03 A6 */ mtctr r12 +/* 801E5D64 001E2CC4 4E 80 04 21 */ bctrl +lbl_801E5D68: +/* 801E5D68 001E2CC8 88 61 00 14 */ lbz r3, 0x14(r1) +/* 801E5D6C 001E2CCC 38 00 00 00 */ li r0, 0 +/* 801E5D70 001E2CD0 98 7A 00 00 */ stb r3, 0(r26) +/* 801E5D74 001E2CD4 80 61 00 18 */ lwz r3, 0x18(r1) +/* 801E5D78 001E2CD8 90 7A 00 04 */ stw r3, 4(r26) +/* 801E5D7C 001E2CDC 98 01 00 14 */ stb r0, 0x14(r1) +lbl_801E5D80: +/* 801E5D80 001E2CE0 88 01 00 14 */ lbz r0, 0x14(r1) +/* 801E5D84 001E2CE4 28 00 00 00 */ cmplwi r0, 0 +/* 801E5D88 001E2CE8 41 82 00 5C */ beq lbl_801E5DE4 +/* 801E5D8C 001E2CEC 80 61 00 18 */ lwz r3, 0x18(r1) +/* 801E5D90 001E2CF0 28 03 00 00 */ cmplwi r3, 0 +/* 801E5D94 001E2CF4 41 82 00 50 */ beq lbl_801E5DE4 +/* 801E5D98 001E2CF8 81 83 00 00 */ lwz r12, 0(r3) +/* 801E5D9C 001E2CFC 38 80 00 01 */ li r4, 1 +/* 801E5DA0 001E2D00 81 8C 00 08 */ lwz r12, 8(r12) +/* 801E5DA4 001E2D04 7D 89 03 A6 */ mtctr r12 +/* 801E5DA8 001E2D08 4E 80 04 21 */ bctrl +/* 801E5DAC 001E2D0C 48 00 00 38 */ b lbl_801E5DE4 +lbl_801E5DB0: +/* 801E5DB0 001E2D10 28 1C 00 00 */ cmplwi r28, 0 +/* 801E5DB4 001E2D14 41 82 00 10 */ beq lbl_801E5DC4 +/* 801E5DB8 001E2D18 7F 23 CB 78 */ mr r3, r25 +/* 801E5DBC 001E2D1C 38 9C 00 34 */ addi r4, r28, 0x34 +/* 801E5DC0 001E2D20 48 13 8D C5 */ bl SetGlobalOrientAndTrans__11CElementGenFRC12CTransform4f +lbl_801E5DC4: +/* 801E5DC4 001E2D24 7F 23 CB 78 */ mr r3, r25 +/* 801E5DC8 001E2D28 FC 20 F8 90 */ fmr f1, f31 +/* 801E5DCC 001E2D2C 81 99 00 00 */ lwz r12, 0(r25) +/* 801E5DD0 001E2D30 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801E5DD4 001E2D34 7D 89 03 A6 */ mtctr r12 +/* 801E5DD8 001E2D38 4E 80 04 21 */ bctrl +/* 801E5DDC 001E2D3C 3B C0 00 01 */ li r30, 1 +/* 801E5DE0 001E2D40 3B E0 00 01 */ li r31, 1 +lbl_801E5DE4: +/* 801E5DE4 001E2D44 3B BD 00 01 */ addi r29, r29, 1 +/* 801E5DE8 001E2D48 3B 5A 00 0C */ addi r26, r26, 0xc +/* 801E5DEC 001E2D4C 2C 1D 00 08 */ cmpwi r29, 8 +/* 801E5DF0 001E2D50 41 80 FF 0C */ blt lbl_801E5CFC +/* 801E5DF4 001E2D54 48 00 00 08 */ b lbl_801E5DFC +lbl_801E5DF8: +/* 801E5DF8 001E2D58 3B C0 00 01 */ li r30, 1 +lbl_801E5DFC: +/* 801E5DFC 001E2D5C 80 1B 00 74 */ lwz r0, 0x74(r27) +/* 801E5E00 001E2D60 28 00 00 00 */ cmplwi r0, 0 +/* 801E5E04 001E2D64 41 82 00 60 */ beq lbl_801E5E64 +/* 801E5E08 001E2D68 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 801E5E0C 001E2D6C 41 82 00 40 */ beq lbl_801E5E4C +/* 801E5E10 001E2D70 C0 5B 01 24 */ lfs f2, 0x124(r27) +/* 801E5E14 001E2D74 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801E5E18 001E2D78 C0 3B 01 14 */ lfs f1, 0x114(r27) +/* 801E5E1C 001E2D7C 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 801E5E20 001E2D80 C0 1B 01 04 */ lfs f0, 0x104(r27) +/* 801E5E24 001E2D84 38 61 00 0C */ addi r3, r1, 0xc +/* 801E5E28 001E2D88 38 81 00 24 */ addi r4, r1, 0x24 +/* 801E5E2C 001E2D8C 38 C0 00 7F */ li r6, 0x7f +/* 801E5E30 001E2D90 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801E5E34 001E2D94 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 801E5E38 001E2D98 D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 801E5E3C 001E2D9C 80 1B 00 74 */ lwz r0, 0x74(r27) +/* 801E5E40 001E2DA0 90 01 00 0C */ stw r0, 0xc(r1) +/* 801E5E44 001E2DA4 48 10 40 6D */ bl UpdateEmitter__11CSfxManagerF10CSfxHandleRC9CVector3fRC9CVector3fUc +/* 801E5E48 001E2DA8 48 00 00 1C */ b lbl_801E5E64 +lbl_801E5E4C: +/* 801E5E4C 001E2DAC 80 1B 00 74 */ lwz r0, 0x74(r27) +/* 801E5E50 001E2DB0 38 61 00 08 */ addi r3, r1, 8 +/* 801E5E54 001E2DB4 90 01 00 08 */ stw r0, 8(r1) +/* 801E5E58 001E2DB8 48 10 40 2D */ bl RemoveEmitter__11CSfxManagerFRC10CSfxHandle +/* 801E5E5C 001E2DBC 38 00 00 00 */ li r0, 0 +/* 801E5E60 001E2DC0 90 1B 00 74 */ stw r0, 0x74(r27) +lbl_801E5E64: +/* 801E5E64 001E2DC4 57 C0 06 3F */ clrlwi. r0, r30, 0x18 +/* 801E5E68 001E2DC8 40 82 00 10 */ bne lbl_801E5E78 +/* 801E5E6C 001E2DCC 7F 63 DB 78 */ mr r3, r27 +/* 801E5E70 001E2DD0 38 80 00 00 */ li r4, 0 +/* 801E5E74 001E2DD4 4B FF FB 35 */ bl Unlock__Q220CActorModelParticles5CItemF11EDependency +lbl_801E5E78: +/* 801E5E78 001E2DD8 7F C3 F3 78 */ mr r3, r30 +/* 801E5E7C 001E2DDC E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 801E5E80 001E2DE0 CB E1 00 60 */ lfd f31, 0x60(r1) +/* 801E5E84 001E2DE4 BB 21 00 44 */ lmw r25, 0x44(r1) +/* 801E5E88 001E2DE8 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801E5E8C 001E2DEC 7C 08 03 A6 */ mtlr r0 +/* 801E5E90 001E2DF0 38 21 00 70 */ addi r1, r1, 0x70 +/* 801E5E94 001E2DF4 4E 80 00 20 */ blr + +.global sub_801e5e98 +sub_801e5e98: +/* 801E5E98 001E2DF8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801E5E9C 001E2DFC 7C 08 02 A6 */ mflr r0 +/* 801E5EA0 001E2E00 28 04 00 00 */ cmplwi r4, 0 +/* 801E5EA4 001E2E04 90 01 00 14 */ stw r0, 0x14(r1) +/* 801E5EA8 001E2E08 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801E5EAC 001E2E0C 7C 7F 1B 78 */ mr r31, r3 +/* 801E5EB0 001E2E10 40 82 00 0C */ bne lbl_801E5EBC +/* 801E5EB4 001E2E14 38 7F 00 DC */ addi r3, r31, 0xdc +/* 801E5EB8 001E2E18 48 15 AE 89 */ bl Unlock__6CTokenFv +lbl_801E5EBC: +/* 801E5EBC 001E2E1C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801E5EC0 001E2E20 88 7F 00 E0 */ lbz r3, 0xe0(r31) +/* 801E5EC4 001E2E24 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801E5EC8 001E2E28 7C 08 03 A6 */ mtlr r0 +/* 801E5ECC 001E2E2C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801E5ED0 001E2E30 4E 80 00 20 */ blr + +.global UpdateAshGen__Q220CActorModelParticles5CItemFfR6CActorR13CStateManager +UpdateAshGen__Q220CActorModelParticles5CItemFfR6CActorR13CStateManager: +/* 801E5ED4 001E2E34 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801E5ED8 001E2E38 7C 08 02 A6 */ mflr r0 +/* 801E5EDC 001E2E3C 90 01 00 44 */ stw r0, 0x44(r1) +/* 801E5EE0 001E2E40 DB E1 00 30 */ stfd f31, 0x30(r1) +/* 801E5EE4 001E2E44 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 801E5EE8 001E2E48 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801E5EEC 001E2E4C 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801E5EF0 001E2E50 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801E5EF4 001E2E54 93 81 00 20 */ stw r28, 0x20(r1) +/* 801E5EF8 001E2E58 7C 7C 1B 78 */ mr r28, r3 +/* 801E5EFC 001E2E5C FF E0 08 90 */ fmr f31, f1 +/* 801E5F00 001E2E60 80 63 00 7C */ lwz r3, 0x7c(r3) +/* 801E5F04 001E2E64 7C 9D 23 78 */ mr r29, r4 +/* 801E5F08 001E2E68 7C BE 2B 78 */ mr r30, r5 +/* 801E5F0C 001E2E6C 28 03 00 00 */ cmplwi r3, 0 +/* 801E5F10 001E2E70 41 82 00 EC */ beq lbl_801E5FFC +/* 801E5F14 001E2E74 80 1C 00 84 */ lwz r0, 0x84(r28) +/* 801E5F18 001E2E78 2C 00 00 00 */ cmpwi r0, 0 +/* 801E5F1C 001E2E7C 40 82 00 AC */ bne lbl_801E5FC8 +/* 801E5F20 001E2E80 81 83 00 00 */ lwz r12, 0(r3) +/* 801E5F24 001E2E84 81 8C 00 58 */ lwz r12, 0x58(r12) +/* 801E5F28 001E2E88 7D 89 03 A6 */ mtctr r12 +/* 801E5F2C 001E2E8C 4E 80 04 21 */ bctrl +/* 801E5F30 001E2E90 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E5F34 001E2E94 41 82 00 94 */ beq lbl_801E5FC8 +/* 801E5F38 001E2E98 38 61 00 10 */ addi r3, r1, 0x10 +/* 801E5F3C 001E2E9C 38 1C 00 78 */ addi r0, r28, 0x78 +/* 801E5F40 001E2EA0 38 80 00 00 */ li r4, 0 +/* 801E5F44 001E2EA4 7C 03 00 40 */ cmplw r3, r0 +/* 801E5F48 001E2EA8 98 81 00 10 */ stb r4, 0x10(r1) +/* 801E5F4C 001E2EAC 90 81 00 14 */ stw r4, 0x14(r1) +/* 801E5F50 001E2EB0 41 82 00 48 */ beq lbl_801E5F98 +/* 801E5F54 001E2EB4 88 1C 00 78 */ lbz r0, 0x78(r28) +/* 801E5F58 001E2EB8 28 00 00 00 */ cmplwi r0, 0 +/* 801E5F5C 001E2EBC 41 82 00 24 */ beq lbl_801E5F80 +/* 801E5F60 001E2EC0 80 7C 00 7C */ lwz r3, 0x7c(r28) +/* 801E5F64 001E2EC4 28 03 00 00 */ cmplwi r3, 0 +/* 801E5F68 001E2EC8 41 82 00 18 */ beq lbl_801E5F80 +/* 801E5F6C 001E2ECC 81 83 00 00 */ lwz r12, 0(r3) +/* 801E5F70 001E2ED0 38 80 00 01 */ li r4, 1 +/* 801E5F74 001E2ED4 81 8C 00 08 */ lwz r12, 8(r12) +/* 801E5F78 001E2ED8 7D 89 03 A6 */ mtctr r12 +/* 801E5F7C 001E2EDC 4E 80 04 21 */ bctrl +lbl_801E5F80: +/* 801E5F80 001E2EE0 88 61 00 10 */ lbz r3, 0x10(r1) +/* 801E5F84 001E2EE4 38 00 00 00 */ li r0, 0 +/* 801E5F88 001E2EE8 98 7C 00 78 */ stb r3, 0x78(r28) +/* 801E5F8C 001E2EEC 80 61 00 14 */ lwz r3, 0x14(r1) +/* 801E5F90 001E2EF0 90 7C 00 7C */ stw r3, 0x7c(r28) +/* 801E5F94 001E2EF4 98 01 00 10 */ stb r0, 0x10(r1) +lbl_801E5F98: +/* 801E5F98 001E2EF8 88 01 00 10 */ lbz r0, 0x10(r1) +/* 801E5F9C 001E2EFC 28 00 00 00 */ cmplwi r0, 0 +/* 801E5FA0 001E2F00 41 82 01 8C */ beq lbl_801E612C +/* 801E5FA4 001E2F04 80 61 00 14 */ lwz r3, 0x14(r1) +/* 801E5FA8 001E2F08 28 03 00 00 */ cmplwi r3, 0 +/* 801E5FAC 001E2F0C 41 82 01 80 */ beq lbl_801E612C +/* 801E5FB0 001E2F10 81 83 00 00 */ lwz r12, 0(r3) +/* 801E5FB4 001E2F14 38 80 00 01 */ li r4, 1 +/* 801E5FB8 001E2F18 81 8C 00 08 */ lwz r12, 8(r12) +/* 801E5FBC 001E2F1C 7D 89 03 A6 */ mtctr r12 +/* 801E5FC0 001E2F20 4E 80 04 21 */ bctrl +/* 801E5FC4 001E2F24 48 00 01 68 */ b lbl_801E612C +lbl_801E5FC8: +/* 801E5FC8 001E2F28 28 1D 00 00 */ cmplwi r29, 0 +/* 801E5FCC 001E2F2C 41 82 00 10 */ beq lbl_801E5FDC +/* 801E5FD0 001E2F30 80 7C 00 7C */ lwz r3, 0x7c(r28) +/* 801E5FD4 001E2F34 38 9D 00 34 */ addi r4, r29, 0x34 +/* 801E5FD8 001E2F38 48 13 8B AD */ bl SetGlobalOrientAndTrans__11CElementGenFRC12CTransform4f +lbl_801E5FDC: +/* 801E5FDC 001E2F3C 80 7C 00 7C */ lwz r3, 0x7c(r28) +/* 801E5FE0 001E2F40 FC 20 F8 90 */ fmr f1, f31 +/* 801E5FE4 001E2F44 81 83 00 00 */ lwz r12, 0(r3) +/* 801E5FE8 001E2F48 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801E5FEC 001E2F4C 7D 89 03 A6 */ mtctr r12 +/* 801E5FF0 001E2F50 4E 80 04 21 */ bctrl +/* 801E5FF4 001E2F54 38 60 00 01 */ li r3, 1 +/* 801E5FF8 001E2F58 48 00 01 44 */ b lbl_801E613C +lbl_801E5FFC: +/* 801E5FFC 001E2F5C 88 1C 01 34 */ lbz r0, 0x134(r28) +/* 801E6000 001E2F60 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d +/* 801E6004 001E2F64 41 82 01 28 */ beq lbl_801E612C +/* 801E6008 001E2F68 28 1D 00 00 */ cmplwi r29, 0 +/* 801E600C 001E2F6C 41 82 01 20 */ beq lbl_801E612C +/* 801E6010 001E2F70 80 7C 01 28 */ lwz r3, 0x128(r28) +/* 801E6014 001E2F74 88 03 00 E6 */ lbz r0, 0xe6(r3) +/* 801E6018 001E2F78 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d +/* 801E601C 001E2F7C 41 82 01 08 */ beq lbl_801E6124 +/* 801E6020 001E2F80 4B FF F5 91 */ bl MakeAshGen__20CActorModelParticlesFv +/* 801E6024 001E2F84 7C 7F 1B 78 */ mr r31, r3 +/* 801E6028 001E2F88 38 81 00 08 */ addi r4, r1, 8 +/* 801E602C 001E2F8C 7C 7F 00 D0 */ neg r3, r31 +/* 801E6030 001E2F90 38 1C 00 78 */ addi r0, r28, 0x78 +/* 801E6034 001E2F94 7C 63 FB 78 */ or r3, r3, r31 +/* 801E6038 001E2F98 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801E603C 001E2F9C 7C 04 00 40 */ cmplw r4, r0 +/* 801E6040 001E2FA0 54 60 0F FE */ srwi r0, r3, 0x1f +/* 801E6044 001E2FA4 98 01 00 08 */ stb r0, 8(r1) +/* 801E6048 001E2FA8 41 82 00 48 */ beq lbl_801E6090 +/* 801E604C 001E2FAC 88 1C 00 78 */ lbz r0, 0x78(r28) +/* 801E6050 001E2FB0 28 00 00 00 */ cmplwi r0, 0 +/* 801E6054 001E2FB4 41 82 00 24 */ beq lbl_801E6078 +/* 801E6058 001E2FB8 80 7C 00 7C */ lwz r3, 0x7c(r28) +/* 801E605C 001E2FBC 28 03 00 00 */ cmplwi r3, 0 +/* 801E6060 001E2FC0 41 82 00 18 */ beq lbl_801E6078 +/* 801E6064 001E2FC4 81 83 00 00 */ lwz r12, 0(r3) +/* 801E6068 001E2FC8 38 80 00 01 */ li r4, 1 +/* 801E606C 001E2FCC 81 8C 00 08 */ lwz r12, 8(r12) +/* 801E6070 001E2FD0 7D 89 03 A6 */ mtctr r12 +/* 801E6074 001E2FD4 4E 80 04 21 */ bctrl +lbl_801E6078: +/* 801E6078 001E2FD8 88 61 00 08 */ lbz r3, 8(r1) +/* 801E607C 001E2FDC 38 00 00 00 */ li r0, 0 +/* 801E6080 001E2FE0 98 7C 00 78 */ stb r3, 0x78(r28) +/* 801E6084 001E2FE4 80 61 00 0C */ lwz r3, 0xc(r1) +/* 801E6088 001E2FE8 90 7C 00 7C */ stw r3, 0x7c(r28) +/* 801E608C 001E2FEC 98 01 00 08 */ stb r0, 8(r1) +lbl_801E6090: +/* 801E6090 001E2FF0 88 01 00 08 */ lbz r0, 8(r1) +/* 801E6094 001E2FF4 28 00 00 00 */ cmplwi r0, 0 +/* 801E6098 001E2FF8 41 82 00 24 */ beq lbl_801E60BC +/* 801E609C 001E2FFC 80 61 00 0C */ lwz r3, 0xc(r1) +/* 801E60A0 001E3000 28 03 00 00 */ cmplwi r3, 0 +/* 801E60A4 001E3004 41 82 00 18 */ beq lbl_801E60BC +/* 801E60A8 001E3008 81 83 00 00 */ lwz r12, 0(r3) +/* 801E60AC 001E300C 38 80 00 01 */ li r4, 1 +/* 801E60B0 001E3010 81 8C 00 08 */ lwz r12, 8(r12) +/* 801E60B4 001E3014 7D 89 03 A6 */ mtctr r12 +/* 801E60B8 001E3018 4E 80 04 21 */ bctrl +lbl_801E60BC: +/* 801E60BC 001E301C 38 00 00 00 */ li r0, 0 +/* 801E60C0 001E3020 7F E3 FB 78 */ mr r3, r31 +/* 801E60C4 001E3024 90 1C 00 80 */ stw r0, 0x80(r28) +/* 801E60C8 001E3028 38 9D 00 34 */ addi r4, r29, 0x34 +/* 801E60CC 001E302C 48 13 8A B9 */ bl SetGlobalOrientAndTrans__11CElementGenFRC12CTransform4f +/* 801E60D0 001E3030 7F A3 EB 78 */ mr r3, r29 +/* 801E60D4 001E3034 48 00 13 A5 */ bl IsMediumOrLarge__FRCActor +/* 801E60D8 001E3038 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E60DC 001E303C 41 82 00 0C */ beq lbl_801E60E8 +/* 801E60E0 001E3040 C0 42 AD 98 */ lfs f2, lbl_805ACAB8@sda21(r2) +/* 801E60E4 001E3044 48 00 00 08 */ b lbl_801E60EC +lbl_801E60E8: +/* 801E60E8 001E3048 C0 42 AD 94 */ lfs f2, lbl_805ACAB4@sda21(r2) +lbl_801E60EC: +/* 801E60EC 001E304C 80 7F 00 90 */ lwz r3, 0x90(r31) +/* 801E60F0 001E3050 3C 00 43 30 */ lis r0, 0x4330 +/* 801E60F4 001E3054 90 01 00 18 */ stw r0, 0x18(r1) +/* 801E60F8 001E3058 6C 60 80 00 */ xoris r0, r3, 0x8000 +/* 801E60FC 001E305C C8 22 AD 88 */ lfd f1, lbl_805ACAA8@sda21(r2) +/* 801E6100 001E3060 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801E6104 001E3064 C8 01 00 18 */ lfd f0, 0x18(r1) +/* 801E6108 001E3068 EC 00 08 28 */ fsubs f0, f0, f1 +/* 801E610C 001E306C EC 22 00 32 */ fmuls f1, f2, f0 +/* 801E6110 001E3070 48 1A 38 45 */ bl __cvt_fp2unsigned +/* 801E6114 001E3074 90 7C 00 84 */ stw r3, 0x84(r28) +/* 801E6118 001E3078 80 7E 09 00 */ lwz r3, 0x900(r30) +/* 801E611C 001E307C 48 12 C4 05 */ bl Next__9CRandom16Fv +/* 801E6120 001E3080 90 7C 00 88 */ stw r3, 0x88(r28) +lbl_801E6124: +/* 801E6124 001E3084 38 60 00 01 */ li r3, 1 +/* 801E6128 001E3088 48 00 00 14 */ b lbl_801E613C +lbl_801E612C: +/* 801E612C 001E308C 7F 83 E3 78 */ mr r3, r28 +/* 801E6130 001E3090 38 80 00 02 */ li r4, 2 +/* 801E6134 001E3094 4B FF F8 75 */ bl Unlock__Q220CActorModelParticles5CItemF11EDependency +/* 801E6138 001E3098 38 60 00 00 */ li r3, 0 +lbl_801E613C: +/* 801E613C 001E309C E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 801E6140 001E30A0 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801E6144 001E30A4 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 801E6148 001E30A8 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801E614C 001E30AC 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801E6150 001E30B0 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801E6154 001E30B4 83 81 00 20 */ lwz r28, 0x20(r1) +/* 801E6158 001E30B8 7C 08 03 A6 */ mtlr r0 +/* 801E615C 001E30BC 38 21 00 40 */ addi r1, r1, 0x40 +/* 801E6160 001E30C0 4E 80 00 20 */ blr + +.global UpdateIcePop__Q220CActorModelParticles5CItemFfR6CActor +UpdateIcePop__Q220CActorModelParticles5CItemFfR6CActor: +/* 801E6164 001E30C4 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801E6168 001E30C8 7C 08 02 A6 */ mflr r0 +/* 801E616C 001E30CC 90 01 00 44 */ stw r0, 0x44(r1) +/* 801E6170 001E30D0 DB E1 00 38 */ stfd f31, 0x38(r1) +/* 801E6174 001E30D4 FF E0 08 90 */ fmr f31, f1 +/* 801E6178 001E30D8 93 E1 00 34 */ stw r31, 0x34(r1) +/* 801E617C 001E30DC 7C 7F 1B 78 */ mr r31, r3 +/* 801E6180 001E30E0 93 C1 00 30 */ stw r30, 0x30(r1) +/* 801E6184 001E30E4 93 A1 00 2C */ stw r29, 0x2c(r1) +/* 801E6188 001E30E8 7C 9D 23 78 */ mr r29, r4 +/* 801E618C 001E30EC 80 63 00 E8 */ lwz r3, 0xe8(r3) +/* 801E6190 001E30F0 28 03 00 00 */ cmplwi r3, 0 +/* 801E6194 001E30F4 41 82 00 CC */ beq lbl_801E6260 +/* 801E6198 001E30F8 81 83 00 00 */ lwz r12, 0(r3) +/* 801E619C 001E30FC 81 8C 00 58 */ lwz r12, 0x58(r12) +/* 801E61A0 001E3100 7D 89 03 A6 */ mtctr r12 +/* 801E61A4 001E3104 4E 80 04 21 */ bctrl +/* 801E61A8 001E3108 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E61AC 001E310C 41 82 00 94 */ beq lbl_801E6240 +/* 801E61B0 001E3110 38 61 00 10 */ addi r3, r1, 0x10 +/* 801E61B4 001E3114 38 1F 00 E4 */ addi r0, r31, 0xe4 +/* 801E61B8 001E3118 38 80 00 00 */ li r4, 0 +/* 801E61BC 001E311C 7C 03 00 40 */ cmplw r3, r0 +/* 801E61C0 001E3120 98 81 00 10 */ stb r4, 0x10(r1) +/* 801E61C4 001E3124 90 81 00 14 */ stw r4, 0x14(r1) +/* 801E61C8 001E3128 41 82 00 48 */ beq lbl_801E6210 +/* 801E61CC 001E312C 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 801E61D0 001E3130 28 00 00 00 */ cmplwi r0, 0 +/* 801E61D4 001E3134 41 82 00 24 */ beq lbl_801E61F8 +/* 801E61D8 001E3138 80 7F 00 E8 */ lwz r3, 0xe8(r31) +/* 801E61DC 001E313C 28 03 00 00 */ cmplwi r3, 0 +/* 801E61E0 001E3140 41 82 00 18 */ beq lbl_801E61F8 +/* 801E61E4 001E3144 81 83 00 00 */ lwz r12, 0(r3) +/* 801E61E8 001E3148 38 80 00 01 */ li r4, 1 +/* 801E61EC 001E314C 81 8C 00 08 */ lwz r12, 8(r12) +/* 801E61F0 001E3150 7D 89 03 A6 */ mtctr r12 +/* 801E61F4 001E3154 4E 80 04 21 */ bctrl +lbl_801E61F8: +/* 801E61F8 001E3158 88 61 00 10 */ lbz r3, 0x10(r1) +/* 801E61FC 001E315C 38 00 00 00 */ li r0, 0 +/* 801E6200 001E3160 98 7F 00 E4 */ stb r3, 0xe4(r31) +/* 801E6204 001E3164 80 61 00 14 */ lwz r3, 0x14(r1) +/* 801E6208 001E3168 90 7F 00 E8 */ stw r3, 0xe8(r31) +/* 801E620C 001E316C 98 01 00 10 */ stb r0, 0x10(r1) +lbl_801E6210: +/* 801E6210 001E3170 88 01 00 10 */ lbz r0, 0x10(r1) +/* 801E6214 001E3174 28 00 00 00 */ cmplwi r0, 0 +/* 801E6218 001E3178 41 82 01 48 */ beq lbl_801E6360 +/* 801E621C 001E317C 80 61 00 14 */ lwz r3, 0x14(r1) +/* 801E6220 001E3180 28 03 00 00 */ cmplwi r3, 0 +/* 801E6224 001E3184 41 82 01 3C */ beq lbl_801E6360 +/* 801E6228 001E3188 81 83 00 00 */ lwz r12, 0(r3) +/* 801E622C 001E318C 38 80 00 01 */ li r4, 1 +/* 801E6230 001E3190 81 8C 00 08 */ lwz r12, 8(r12) +/* 801E6234 001E3194 7D 89 03 A6 */ mtctr r12 +/* 801E6238 001E3198 4E 80 04 21 */ bctrl +/* 801E623C 001E319C 48 00 01 24 */ b lbl_801E6360 +lbl_801E6240: +/* 801E6240 001E31A0 80 7F 00 E8 */ lwz r3, 0xe8(r31) +/* 801E6244 001E31A4 FC 20 F8 90 */ fmr f1, f31 +/* 801E6248 001E31A8 81 83 00 00 */ lwz r12, 0(r3) +/* 801E624C 001E31AC 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801E6250 001E31B0 7D 89 03 A6 */ mtctr r12 +/* 801E6254 001E31B4 4E 80 04 21 */ bctrl +/* 801E6258 001E31B8 38 60 00 01 */ li r3, 1 +/* 801E625C 001E31BC 48 00 01 14 */ b lbl_801E6370 +lbl_801E6260: +/* 801E6260 001E31C0 88 1F 01 34 */ lbz r0, 0x134(r31) +/* 801E6264 001E31C4 54 00 06 B5 */ rlwinm. r0, r0, 0, 0x1a, 0x1a +/* 801E6268 001E31C8 41 82 00 F8 */ beq lbl_801E6360 +/* 801E626C 001E31CC 28 1D 00 00 */ cmplwi r29, 0 +/* 801E6270 001E31D0 41 82 00 F0 */ beq lbl_801E6360 +/* 801E6274 001E31D4 80 7F 01 28 */ lwz r3, 0x128(r31) +/* 801E6278 001E31D8 88 03 00 E6 */ lbz r0, 0xe6(r3) +/* 801E627C 001E31DC 54 00 06 B5 */ rlwinm. r0, r0, 0, 0x1a, 0x1a +/* 801E6280 001E31E0 41 82 00 D8 */ beq lbl_801E6358 +/* 801E6284 001E31E4 4B FF F1 F5 */ bl MakeIcePopGen__20CActorModelParticlesFv +/* 801E6288 001E31E8 81 83 00 00 */ lwz r12, 0(r3) +/* 801E628C 001E31EC 7C 7E 1B 78 */ mr r30, r3 +/* 801E6290 001E31F0 38 9D 00 34 */ addi r4, r29, 0x34 +/* 801E6294 001E31F4 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801E6298 001E31F8 7D 89 03 A6 */ mtctr r12 +/* 801E629C 001E31FC 4E 80 04 21 */ bctrl +/* 801E62A0 001E3200 38 61 00 18 */ addi r3, r1, 0x18 +/* 801E62A4 001E3204 38 9D 00 9C */ addi r4, r29, 0x9c +/* 801E62A8 001E3208 48 15 13 65 */ bl GetCenterPoint__6CAABoxCFv +/* 801E62AC 001E320C 7F C3 F3 78 */ mr r3, r30 +/* 801E62B0 001E3210 38 81 00 18 */ addi r4, r1, 0x18 +/* 801E62B4 001E3214 81 9E 00 00 */ lwz r12, 0(r30) +/* 801E62B8 001E3218 81 8C 00 20 */ lwz r12, 0x20(r12) +/* 801E62BC 001E321C 7D 89 03 A6 */ mtctr r12 +/* 801E62C0 001E3220 4E 80 04 21 */ bctrl +/* 801E62C4 001E3224 7C 1E 00 D0 */ neg r0, r30 +/* 801E62C8 001E3228 38 61 00 08 */ addi r3, r1, 8 +/* 801E62CC 001E322C 7C 04 F3 78 */ or r4, r0, r30 +/* 801E62D0 001E3230 38 1F 00 E4 */ addi r0, r31, 0xe4 +/* 801E62D4 001E3234 54 84 0F FE */ srwi r4, r4, 0x1f +/* 801E62D8 001E3238 93 C1 00 0C */ stw r30, 0xc(r1) +/* 801E62DC 001E323C 7C 03 00 40 */ cmplw r3, r0 +/* 801E62E0 001E3240 98 81 00 08 */ stb r4, 8(r1) +/* 801E62E4 001E3244 41 82 00 48 */ beq lbl_801E632C +/* 801E62E8 001E3248 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 801E62EC 001E324C 28 00 00 00 */ cmplwi r0, 0 +/* 801E62F0 001E3250 41 82 00 24 */ beq lbl_801E6314 +/* 801E62F4 001E3254 80 7F 00 E8 */ lwz r3, 0xe8(r31) +/* 801E62F8 001E3258 28 03 00 00 */ cmplwi r3, 0 +/* 801E62FC 001E325C 41 82 00 18 */ beq lbl_801E6314 +/* 801E6300 001E3260 81 83 00 00 */ lwz r12, 0(r3) +/* 801E6304 001E3264 38 80 00 01 */ li r4, 1 +/* 801E6308 001E3268 81 8C 00 08 */ lwz r12, 8(r12) +/* 801E630C 001E326C 7D 89 03 A6 */ mtctr r12 +/* 801E6310 001E3270 4E 80 04 21 */ bctrl +lbl_801E6314: +/* 801E6314 001E3274 88 61 00 08 */ lbz r3, 8(r1) +/* 801E6318 001E3278 38 00 00 00 */ li r0, 0 +/* 801E631C 001E327C 98 7F 00 E4 */ stb r3, 0xe4(r31) +/* 801E6320 001E3280 80 61 00 0C */ lwz r3, 0xc(r1) +/* 801E6324 001E3284 90 7F 00 E8 */ stw r3, 0xe8(r31) +/* 801E6328 001E3288 98 01 00 08 */ stb r0, 8(r1) +lbl_801E632C: +/* 801E632C 001E328C 88 01 00 08 */ lbz r0, 8(r1) +/* 801E6330 001E3290 28 00 00 00 */ cmplwi r0, 0 +/* 801E6334 001E3294 41 82 00 24 */ beq lbl_801E6358 +/* 801E6338 001E3298 80 61 00 0C */ lwz r3, 0xc(r1) +/* 801E633C 001E329C 28 03 00 00 */ cmplwi r3, 0 +/* 801E6340 001E32A0 41 82 00 18 */ beq lbl_801E6358 +/* 801E6344 001E32A4 81 83 00 00 */ lwz r12, 0(r3) +/* 801E6348 001E32A8 38 80 00 01 */ li r4, 1 +/* 801E634C 001E32AC 81 8C 00 08 */ lwz r12, 8(r12) +/* 801E6350 001E32B0 7D 89 03 A6 */ mtctr r12 +/* 801E6354 001E32B4 4E 80 04 21 */ bctrl +lbl_801E6358: +/* 801E6358 001E32B8 38 60 00 01 */ li r3, 1 +/* 801E635C 001E32BC 48 00 00 14 */ b lbl_801E6370 +lbl_801E6360: +/* 801E6360 001E32C0 7F E3 FB 78 */ mr r3, r31 +/* 801E6364 001E32C4 38 80 00 05 */ li r4, 5 +/* 801E6368 001E32C8 4B FF F6 41 */ bl Unlock__Q220CActorModelParticles5CItemF11EDependency +/* 801E636C 001E32CC 38 60 00 00 */ li r3, 0 +lbl_801E6370: +/* 801E6370 001E32D0 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801E6374 001E32D4 CB E1 00 38 */ lfd f31, 0x38(r1) +/* 801E6378 001E32D8 83 E1 00 34 */ lwz r31, 0x34(r1) +/* 801E637C 001E32DC 83 C1 00 30 */ lwz r30, 0x30(r1) +/* 801E6380 001E32E0 83 A1 00 2C */ lwz r29, 0x2c(r1) +/* 801E6384 001E32E4 7C 08 03 A6 */ mtlr r0 +/* 801E6388 001E32E8 38 21 00 40 */ addi r1, r1, 0x40 +/* 801E638C 001E32EC 4E 80 00 20 */ blr + +.global UpdateFirePop__Q220CActorModelParticles5CItemFfR6CActor +UpdateFirePop__Q220CActorModelParticles5CItemFfR6CActor: +/* 801E6390 001E32F0 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801E6394 001E32F4 7C 08 02 A6 */ mflr r0 +/* 801E6398 001E32F8 90 01 00 44 */ stw r0, 0x44(r1) +/* 801E639C 001E32FC DB E1 00 38 */ stfd f31, 0x38(r1) +/* 801E63A0 001E3300 FF E0 08 90 */ fmr f31, f1 +/* 801E63A4 001E3304 93 E1 00 34 */ stw r31, 0x34(r1) +/* 801E63A8 001E3308 7C 7F 1B 78 */ mr r31, r3 +/* 801E63AC 001E330C 93 C1 00 30 */ stw r30, 0x30(r1) +/* 801E63B0 001E3310 93 A1 00 2C */ stw r29, 0x2c(r1) +/* 801E63B4 001E3314 7C 9D 23 78 */ mr r29, r4 +/* 801E63B8 001E3318 80 63 00 BC */ lwz r3, 0xbc(r3) +/* 801E63BC 001E331C 28 03 00 00 */ cmplwi r3, 0 +/* 801E63C0 001E3320 41 82 00 CC */ beq lbl_801E648C +/* 801E63C4 001E3324 81 83 00 00 */ lwz r12, 0(r3) +/* 801E63C8 001E3328 81 8C 00 58 */ lwz r12, 0x58(r12) +/* 801E63CC 001E332C 7D 89 03 A6 */ mtctr r12 +/* 801E63D0 001E3330 4E 80 04 21 */ bctrl +/* 801E63D4 001E3334 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E63D8 001E3338 41 82 00 94 */ beq lbl_801E646C +/* 801E63DC 001E333C 38 61 00 10 */ addi r3, r1, 0x10 +/* 801E63E0 001E3340 38 1F 00 B8 */ addi r0, r31, 0xb8 +/* 801E63E4 001E3344 38 80 00 00 */ li r4, 0 +/* 801E63E8 001E3348 7C 03 00 40 */ cmplw r3, r0 +/* 801E63EC 001E334C 98 81 00 10 */ stb r4, 0x10(r1) +/* 801E63F0 001E3350 90 81 00 14 */ stw r4, 0x14(r1) +/* 801E63F4 001E3354 41 82 00 48 */ beq lbl_801E643C +/* 801E63F8 001E3358 88 1F 00 B8 */ lbz r0, 0xb8(r31) +/* 801E63FC 001E335C 28 00 00 00 */ cmplwi r0, 0 +/* 801E6400 001E3360 41 82 00 24 */ beq lbl_801E6424 +/* 801E6404 001E3364 80 7F 00 BC */ lwz r3, 0xbc(r31) +/* 801E6408 001E3368 28 03 00 00 */ cmplwi r3, 0 +/* 801E640C 001E336C 41 82 00 18 */ beq lbl_801E6424 +/* 801E6410 001E3370 81 83 00 00 */ lwz r12, 0(r3) +/* 801E6414 001E3374 38 80 00 01 */ li r4, 1 +/* 801E6418 001E3378 81 8C 00 08 */ lwz r12, 8(r12) +/* 801E641C 001E337C 7D 89 03 A6 */ mtctr r12 +/* 801E6420 001E3380 4E 80 04 21 */ bctrl +lbl_801E6424: +/* 801E6424 001E3384 88 61 00 10 */ lbz r3, 0x10(r1) +/* 801E6428 001E3388 38 00 00 00 */ li r0, 0 +/* 801E642C 001E338C 98 7F 00 B8 */ stb r3, 0xb8(r31) +/* 801E6430 001E3390 80 61 00 14 */ lwz r3, 0x14(r1) +/* 801E6434 001E3394 90 7F 00 BC */ stw r3, 0xbc(r31) +/* 801E6438 001E3398 98 01 00 10 */ stb r0, 0x10(r1) +lbl_801E643C: +/* 801E643C 001E339C 88 01 00 10 */ lbz r0, 0x10(r1) +/* 801E6440 001E33A0 28 00 00 00 */ cmplwi r0, 0 +/* 801E6444 001E33A4 41 82 01 48 */ beq lbl_801E658C +/* 801E6448 001E33A8 80 61 00 14 */ lwz r3, 0x14(r1) +/* 801E644C 001E33AC 28 03 00 00 */ cmplwi r3, 0 +/* 801E6450 001E33B0 41 82 01 3C */ beq lbl_801E658C +/* 801E6454 001E33B4 81 83 00 00 */ lwz r12, 0(r3) +/* 801E6458 001E33B8 38 80 00 01 */ li r4, 1 +/* 801E645C 001E33BC 81 8C 00 08 */ lwz r12, 8(r12) +/* 801E6460 001E33C0 7D 89 03 A6 */ mtctr r12 +/* 801E6464 001E33C4 4E 80 04 21 */ bctrl +/* 801E6468 001E33C8 48 00 01 24 */ b lbl_801E658C +lbl_801E646C: +/* 801E646C 001E33CC 80 7F 00 BC */ lwz r3, 0xbc(r31) +/* 801E6470 001E33D0 FC 20 F8 90 */ fmr f1, f31 +/* 801E6474 001E33D4 81 83 00 00 */ lwz r12, 0(r3) +/* 801E6478 001E33D8 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801E647C 001E33DC 7D 89 03 A6 */ mtctr r12 +/* 801E6480 001E33E0 4E 80 04 21 */ bctrl +/* 801E6484 001E33E4 38 60 00 01 */ li r3, 1 +/* 801E6488 001E33E8 48 00 01 14 */ b lbl_801E659C +lbl_801E648C: +/* 801E648C 001E33EC 88 1F 01 34 */ lbz r0, 0x134(r31) +/* 801E6490 001E33F0 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c +/* 801E6494 001E33F4 41 82 00 F8 */ beq lbl_801E658C +/* 801E6498 001E33F8 28 1D 00 00 */ cmplwi r29, 0 +/* 801E649C 001E33FC 41 82 00 F0 */ beq lbl_801E658C +/* 801E64A0 001E3400 80 7F 01 28 */ lwz r3, 0x128(r31) +/* 801E64A4 001E3404 88 03 00 E6 */ lbz r0, 0xe6(r3) +/* 801E64A8 001E3408 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c +/* 801E64AC 001E340C 41 82 00 D8 */ beq lbl_801E6584 +/* 801E64B0 001E3410 4B FF F0 65 */ bl MakeFirePopGen__20CActorModelParticlesFv +/* 801E64B4 001E3414 81 83 00 00 */ lwz r12, 0(r3) +/* 801E64B8 001E3418 7C 7E 1B 78 */ mr r30, r3 +/* 801E64BC 001E341C 38 9D 00 34 */ addi r4, r29, 0x34 +/* 801E64C0 001E3420 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801E64C4 001E3424 7D 89 03 A6 */ mtctr r12 +/* 801E64C8 001E3428 4E 80 04 21 */ bctrl +/* 801E64CC 001E342C 38 61 00 18 */ addi r3, r1, 0x18 +/* 801E64D0 001E3430 38 9D 00 9C */ addi r4, r29, 0x9c +/* 801E64D4 001E3434 48 15 11 39 */ bl GetCenterPoint__6CAABoxCFv +/* 801E64D8 001E3438 7F C3 F3 78 */ mr r3, r30 +/* 801E64DC 001E343C 38 81 00 18 */ addi r4, r1, 0x18 +/* 801E64E0 001E3440 81 9E 00 00 */ lwz r12, 0(r30) +/* 801E64E4 001E3444 81 8C 00 20 */ lwz r12, 0x20(r12) +/* 801E64E8 001E3448 7D 89 03 A6 */ mtctr r12 +/* 801E64EC 001E344C 4E 80 04 21 */ bctrl +/* 801E64F0 001E3450 7C 1E 00 D0 */ neg r0, r30 +/* 801E64F4 001E3454 38 61 00 08 */ addi r3, r1, 8 +/* 801E64F8 001E3458 7C 04 F3 78 */ or r4, r0, r30 +/* 801E64FC 001E345C 38 1F 00 B8 */ addi r0, r31, 0xb8 +/* 801E6500 001E3460 54 84 0F FE */ srwi r4, r4, 0x1f +/* 801E6504 001E3464 93 C1 00 0C */ stw r30, 0xc(r1) +/* 801E6508 001E3468 7C 03 00 40 */ cmplw r3, r0 +/* 801E650C 001E346C 98 81 00 08 */ stb r4, 8(r1) +/* 801E6510 001E3470 41 82 00 48 */ beq lbl_801E6558 +/* 801E6514 001E3474 88 1F 00 B8 */ lbz r0, 0xb8(r31) +/* 801E6518 001E3478 28 00 00 00 */ cmplwi r0, 0 +/* 801E651C 001E347C 41 82 00 24 */ beq lbl_801E6540 +/* 801E6520 001E3480 80 7F 00 BC */ lwz r3, 0xbc(r31) +/* 801E6524 001E3484 28 03 00 00 */ cmplwi r3, 0 +/* 801E6528 001E3488 41 82 00 18 */ beq lbl_801E6540 +/* 801E652C 001E348C 81 83 00 00 */ lwz r12, 0(r3) +/* 801E6530 001E3490 38 80 00 01 */ li r4, 1 +/* 801E6534 001E3494 81 8C 00 08 */ lwz r12, 8(r12) +/* 801E6538 001E3498 7D 89 03 A6 */ mtctr r12 +/* 801E653C 001E349C 4E 80 04 21 */ bctrl +lbl_801E6540: +/* 801E6540 001E34A0 88 61 00 08 */ lbz r3, 8(r1) +/* 801E6544 001E34A4 38 00 00 00 */ li r0, 0 +/* 801E6548 001E34A8 98 7F 00 B8 */ stb r3, 0xb8(r31) +/* 801E654C 001E34AC 80 61 00 0C */ lwz r3, 0xc(r1) +/* 801E6550 001E34B0 90 7F 00 BC */ stw r3, 0xbc(r31) +/* 801E6554 001E34B4 98 01 00 08 */ stb r0, 8(r1) +lbl_801E6558: +/* 801E6558 001E34B8 88 01 00 08 */ lbz r0, 8(r1) +/* 801E655C 001E34BC 28 00 00 00 */ cmplwi r0, 0 +/* 801E6560 001E34C0 41 82 00 24 */ beq lbl_801E6584 +/* 801E6564 001E34C4 80 61 00 0C */ lwz r3, 0xc(r1) +/* 801E6568 001E34C8 28 03 00 00 */ cmplwi r3, 0 +/* 801E656C 001E34CC 41 82 00 18 */ beq lbl_801E6584 +/* 801E6570 001E34D0 81 83 00 00 */ lwz r12, 0(r3) +/* 801E6574 001E34D4 38 80 00 01 */ li r4, 1 +/* 801E6578 001E34D8 81 8C 00 08 */ lwz r12, 8(r12) +/* 801E657C 001E34DC 7D 89 03 A6 */ mtctr r12 +/* 801E6580 001E34E0 4E 80 04 21 */ bctrl +lbl_801E6584: +/* 801E6584 001E34E4 38 60 00 01 */ li r3, 1 +/* 801E6588 001E34E8 48 00 00 14 */ b lbl_801E659C +lbl_801E658C: +/* 801E658C 001E34EC 7F E3 FB 78 */ mr r3, r31 +/* 801E6590 001E34F0 38 80 00 03 */ li r4, 3 +/* 801E6594 001E34F4 4B FF F4 15 */ bl Unlock__Q220CActorModelParticles5CItemF11EDependency +/* 801E6598 001E34F8 38 60 00 00 */ li r3, 0 +lbl_801E659C: +/* 801E659C 001E34FC 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801E65A0 001E3500 CB E1 00 38 */ lfd f31, 0x38(r1) +/* 801E65A4 001E3504 83 E1 00 34 */ lwz r31, 0x34(r1) +/* 801E65A8 001E3508 83 C1 00 30 */ lwz r30, 0x30(r1) +/* 801E65AC 001E350C 83 A1 00 2C */ lwz r29, 0x2c(r1) +/* 801E65B0 001E3510 7C 08 03 A6 */ mtlr r0 +/* 801E65B4 001E3514 38 21 00 40 */ addi r1, r1, 0x40 +/* 801E65B8 001E3518 4E 80 00 20 */ blr + +.global sub_801e65bc +sub_801e65bc: +/* 801E65BC 001E351C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801E65C0 001E3520 7C 08 02 A6 */ mflr r0 +/* 801E65C4 001E3524 90 01 00 34 */ stw r0, 0x34(r1) +/* 801E65C8 001E3528 DB E1 00 28 */ stfd f31, 0x28(r1) +/* 801E65CC 001E352C FF E0 08 90 */ fmr f31, f1 +/* 801E65D0 001E3530 BF 61 00 14 */ stmw r27, 0x14(r1) +/* 801E65D4 001E3534 7C 7F 1B 78 */ mr r31, r3 +/* 801E65D8 001E3538 80 03 00 B0 */ lwz r0, 0xb0(r3) +/* 801E65DC 001E353C 2C 00 FF FF */ cmpwi r0, -1 +/* 801E65E0 001E3540 41 82 00 0C */ beq lbl_801E65EC +/* 801E65E4 001E3544 38 60 00 01 */ li r3, 1 +/* 801E65E8 001E3548 48 00 01 30 */ b lbl_801E6718 +lbl_801E65EC: +/* 801E65EC 001E354C 80 1F 00 8C */ lwz r0, 0x8c(r31) +/* 801E65F0 001E3550 2C 00 00 00 */ cmpwi r0, 0 +/* 801E65F4 001E3554 41 82 00 D4 */ beq lbl_801E66C8 +/* 801E65F8 001E3558 3B BF 00 90 */ addi r29, r31, 0x90 +/* 801E65FC 001E355C 3B 80 00 00 */ li r28, 0 +/* 801E6600 001E3560 7F BB EB 78 */ mr r27, r29 +/* 801E6604 001E3564 48 00 00 44 */ b lbl_801E6648 +lbl_801E6608: +/* 801E6608 001E3568 83 DB 00 04 */ lwz r30, 4(r27) +/* 801E660C 001E356C 7F C3 F3 78 */ mr r3, r30 +/* 801E6610 001E3570 81 9E 00 00 */ lwz r12, 0(r30) +/* 801E6614 001E3574 81 8C 00 58 */ lwz r12, 0x58(r12) +/* 801E6618 001E3578 7D 89 03 A6 */ mtctr r12 +/* 801E661C 001E357C 4E 80 04 21 */ bctrl +/* 801E6620 001E3580 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E6624 001E3584 40 82 00 08 */ bne lbl_801E662C +/* 801E6628 001E3588 3B 80 00 01 */ li r28, 1 +lbl_801E662C: +/* 801E662C 001E358C 7F C3 F3 78 */ mr r3, r30 +/* 801E6630 001E3590 FC 20 F8 90 */ fmr f1, f31 +/* 801E6634 001E3594 81 9E 00 00 */ lwz r12, 0(r30) +/* 801E6638 001E3598 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801E663C 001E359C 7D 89 03 A6 */ mtctr r12 +/* 801E6640 001E35A0 4E 80 04 21 */ bctrl +/* 801E6644 001E35A4 3B 7B 00 08 */ addi r27, r27, 8 +lbl_801E6648: +/* 801E6648 001E35A8 80 1F 00 8C */ lwz r0, 0x8c(r31) +/* 801E664C 001E35AC 54 00 18 38 */ slwi r0, r0, 3 +/* 801E6650 001E35B0 7C 1D 02 14 */ add r0, r29, r0 +/* 801E6654 001E35B4 7C 1B 00 40 */ cmplw r27, r0 +/* 801E6658 001E35B8 40 82 FF B0 */ bne lbl_801E6608 +/* 801E665C 001E35BC 57 80 06 3F */ clrlwi. r0, r28, 0x18 +/* 801E6660 001E35C0 40 82 00 60 */ bne lbl_801E66C0 +/* 801E6664 001E35C4 3B C0 00 00 */ li r30, 0 +/* 801E6668 001E35C8 48 00 00 40 */ b lbl_801E66A8 +lbl_801E666C: +/* 801E666C 001E35CC 28 1D 00 00 */ cmplwi r29, 0 +/* 801E6670 001E35D0 41 82 00 30 */ beq lbl_801E66A0 +/* 801E6674 001E35D4 88 1D 00 00 */ lbz r0, 0(r29) +/* 801E6678 001E35D8 28 00 00 00 */ cmplwi r0, 0 +/* 801E667C 001E35DC 41 82 00 24 */ beq lbl_801E66A0 +/* 801E6680 001E35E0 80 7D 00 04 */ lwz r3, 4(r29) +/* 801E6684 001E35E4 28 03 00 00 */ cmplwi r3, 0 +/* 801E6688 001E35E8 41 82 00 18 */ beq lbl_801E66A0 +/* 801E668C 001E35EC 81 83 00 00 */ lwz r12, 0(r3) +/* 801E6690 001E35F0 38 80 00 01 */ li r4, 1 +/* 801E6694 001E35F4 81 8C 00 08 */ lwz r12, 8(r12) +/* 801E6698 001E35F8 7D 89 03 A6 */ mtctr r12 +/* 801E669C 001E35FC 4E 80 04 21 */ bctrl +lbl_801E66A0: +/* 801E66A0 001E3600 3B BD 00 08 */ addi r29, r29, 8 +/* 801E66A4 001E3604 3B DE 00 01 */ addi r30, r30, 1 +lbl_801E66A8: +/* 801E66A8 001E3608 80 1F 00 8C */ lwz r0, 0x8c(r31) +/* 801E66AC 001E360C 7C 1E 00 00 */ cmpw r30, r0 +/* 801E66B0 001E3610 41 80 FF BC */ blt lbl_801E666C +/* 801E66B4 001E3614 38 00 00 00 */ li r0, 0 +/* 801E66B8 001E3618 90 1F 00 8C */ stw r0, 0x8c(r31) +/* 801E66BC 001E361C 48 00 00 4C */ b lbl_801E6708 +lbl_801E66C0: +/* 801E66C0 001E3620 38 60 00 01 */ li r3, 1 +/* 801E66C4 001E3624 48 00 00 54 */ b lbl_801E6718 +lbl_801E66C8: +/* 801E66C8 001E3628 88 1F 01 34 */ lbz r0, 0x134(r31) +/* 801E66CC 001E362C 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e +/* 801E66D0 001E3630 41 82 00 38 */ beq lbl_801E6708 +/* 801E66D4 001E3634 28 04 00 00 */ cmplwi r4, 0 +/* 801E66D8 001E3638 41 82 00 30 */ beq lbl_801E6708 +/* 801E66DC 001E363C 80 7F 01 28 */ lwz r3, 0x128(r31) +/* 801E66E0 001E3640 88 03 00 E6 */ lbz r0, 0xe6(r3) +/* 801E66E4 001E3644 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e +/* 801E66E8 001E3648 41 82 00 18 */ beq lbl_801E6700 +/* 801E66EC 001E364C 38 00 00 00 */ li r0, 0 +/* 801E66F0 001E3650 90 1F 00 B0 */ stw r0, 0xb0(r31) +/* 801E66F4 001E3654 80 65 09 00 */ lwz r3, 0x900(r5) +/* 801E66F8 001E3658 48 12 BE 29 */ bl Next__9CRandom16Fv +/* 801E66FC 001E365C 90 7F 00 B4 */ stw r3, 0xb4(r31) +lbl_801E6700: +/* 801E6700 001E3660 38 60 00 01 */ li r3, 1 +/* 801E6704 001E3664 48 00 00 14 */ b lbl_801E6718 +lbl_801E6708: +/* 801E6708 001E3668 7F E3 FB 78 */ mr r3, r31 +/* 801E670C 001E366C 38 80 00 01 */ li r4, 1 +/* 801E6710 001E3670 4B FF F2 99 */ bl Unlock__Q220CActorModelParticles5CItemF11EDependency +/* 801E6714 001E3674 38 60 00 00 */ li r3, 0 +lbl_801E6718: +/* 801E6718 001E3678 CB E1 00 28 */ lfd f31, 0x28(r1) +/* 801E671C 001E367C BB 61 00 14 */ lmw r27, 0x14(r1) +/* 801E6720 001E3680 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801E6724 001E3684 7C 08 03 A6 */ mtlr r0 +/* 801E6728 001E3688 38 21 00 30 */ addi r1, r1, 0x30 +/* 801E672C 001E368C 4E 80 00 20 */ blr + +.global UpdateElectric__Q220CActorModelParticles5CItemFfR6CActorR13CStateManager +UpdateElectric__Q220CActorModelParticles5CItemFfR6CActorR13CStateManager: +/* 801E6730 001E3690 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 801E6734 001E3694 7C 08 02 A6 */ mflr r0 +/* 801E6738 001E3698 90 01 00 84 */ stw r0, 0x84(r1) +/* 801E673C 001E369C DB E1 00 70 */ stfd f31, 0x70(r1) +/* 801E6740 001E36A0 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 +/* 801E6744 001E36A4 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 801E6748 001E36A8 93 C1 00 68 */ stw r30, 0x68(r1) +/* 801E674C 001E36AC 93 A1 00 64 */ stw r29, 0x64(r1) +/* 801E6750 001E36B0 93 81 00 60 */ stw r28, 0x60(r1) +/* 801E6754 001E36B4 7C 7E 1B 78 */ mr r30, r3 +/* 801E6758 001E36B8 FF E0 08 90 */ fmr f31, f1 +/* 801E675C 001E36BC 80 63 00 C4 */ lwz r3, 0xc4(r3) +/* 801E6760 001E36C0 7C 9C 23 78 */ mr r28, r4 +/* 801E6764 001E36C4 7C BF 2B 78 */ mr r31, r5 +/* 801E6768 001E36C8 28 03 00 00 */ cmplwi r3, 0 +/* 801E676C 001E36CC 41 82 01 64 */ beq lbl_801E68D0 +/* 801E6770 001E36D0 81 83 00 00 */ lwz r12, 0(r3) +/* 801E6774 001E36D4 81 8C 00 58 */ lwz r12, 0x58(r12) +/* 801E6778 001E36D8 7D 89 03 A6 */ mtctr r12 +/* 801E677C 001E36DC 4E 80 04 21 */ bctrl +/* 801E6780 001E36E0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E6784 001E36E4 41 82 00 94 */ beq lbl_801E6818 +/* 801E6788 001E36E8 38 61 00 10 */ addi r3, r1, 0x10 +/* 801E678C 001E36EC 38 1E 00 C0 */ addi r0, r30, 0xc0 +/* 801E6790 001E36F0 38 80 00 00 */ li r4, 0 +/* 801E6794 001E36F4 7C 03 00 40 */ cmplw r3, r0 +/* 801E6798 001E36F8 98 81 00 10 */ stb r4, 0x10(r1) +/* 801E679C 001E36FC 90 81 00 14 */ stw r4, 0x14(r1) +/* 801E67A0 001E3700 41 82 00 48 */ beq lbl_801E67E8 +/* 801E67A4 001E3704 88 1E 00 C0 */ lbz r0, 0xc0(r30) +/* 801E67A8 001E3708 28 00 00 00 */ cmplwi r0, 0 +/* 801E67AC 001E370C 41 82 00 24 */ beq lbl_801E67D0 +/* 801E67B0 001E3710 80 7E 00 C4 */ lwz r3, 0xc4(r30) +/* 801E67B4 001E3714 28 03 00 00 */ cmplwi r3, 0 +/* 801E67B8 001E3718 41 82 00 18 */ beq lbl_801E67D0 +/* 801E67BC 001E371C 81 83 00 00 */ lwz r12, 0(r3) +/* 801E67C0 001E3720 38 80 00 01 */ li r4, 1 +/* 801E67C4 001E3724 81 8C 00 08 */ lwz r12, 8(r12) +/* 801E67C8 001E3728 7D 89 03 A6 */ mtctr r12 +/* 801E67CC 001E372C 4E 80 04 21 */ bctrl +lbl_801E67D0: +/* 801E67D0 001E3730 88 61 00 10 */ lbz r3, 0x10(r1) +/* 801E67D4 001E3734 38 00 00 00 */ li r0, 0 +/* 801E67D8 001E3738 98 7E 00 C0 */ stb r3, 0xc0(r30) +/* 801E67DC 001E373C 80 61 00 14 */ lwz r3, 0x14(r1) +/* 801E67E0 001E3740 90 7E 00 C4 */ stw r3, 0xc4(r30) +/* 801E67E4 001E3744 98 01 00 10 */ stb r0, 0x10(r1) +lbl_801E67E8: +/* 801E67E8 001E3748 88 01 00 10 */ lbz r0, 0x10(r1) +/* 801E67EC 001E374C 28 00 00 00 */ cmplwi r0, 0 +/* 801E67F0 001E3750 41 82 01 C8 */ beq lbl_801E69B8 +/* 801E67F4 001E3754 80 61 00 14 */ lwz r3, 0x14(r1) +/* 801E67F8 001E3758 28 03 00 00 */ cmplwi r3, 0 +/* 801E67FC 001E375C 41 82 01 BC */ beq lbl_801E69B8 +/* 801E6800 001E3760 81 83 00 00 */ lwz r12, 0(r3) +/* 801E6804 001E3764 38 80 00 01 */ li r4, 1 +/* 801E6808 001E3768 81 8C 00 08 */ lwz r12, 8(r12) +/* 801E680C 001E376C 7D 89 03 A6 */ mtctr r12 +/* 801E6810 001E3770 4E 80 04 21 */ bctrl +/* 801E6814 001E3774 48 00 01 A4 */ b lbl_801E69B8 +lbl_801E6818: +/* 801E6818 001E3778 28 1C 00 00 */ cmplwi r28, 0 +/* 801E681C 001E377C 41 82 00 68 */ beq lbl_801E6884 +/* 801E6820 001E3780 88 1C 00 30 */ lbz r0, 0x30(r28) +/* 801E6824 001E3784 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801E6828 001E3788 41 82 00 5C */ beq lbl_801E6884 +/* 801E682C 001E378C 83 BE 00 C4 */ lwz r29, 0xc4(r30) +/* 801E6830 001E3790 38 61 00 24 */ addi r3, r1, 0x24 +/* 801E6834 001E3794 38 9C 00 34 */ addi r4, r28, 0x34 +/* 801E6838 001E3798 48 12 C4 09 */ bl GetRotation__12CTransform4fCFv +/* 801E683C 001E379C 7F A3 EB 78 */ mr r3, r29 +/* 801E6840 001E37A0 38 81 00 24 */ addi r4, r1, 0x24 +/* 801E6844 001E37A4 81 9D 00 00 */ lwz r12, 0(r29) +/* 801E6848 001E37A8 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801E684C 001E37AC 7D 89 03 A6 */ mtctr r12 +/* 801E6850 001E37B0 4E 80 04 21 */ bctrl +/* 801E6854 001E37B4 C0 5C 00 60 */ lfs f2, 0x60(r28) +/* 801E6858 001E37B8 38 81 00 18 */ addi r4, r1, 0x18 +/* 801E685C 001E37BC C0 3C 00 50 */ lfs f1, 0x50(r28) +/* 801E6860 001E37C0 C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 801E6864 001E37C4 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 801E6868 001E37C8 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801E686C 001E37CC D0 41 00 20 */ stfs f2, 0x20(r1) +/* 801E6870 001E37D0 80 7E 00 C4 */ lwz r3, 0xc4(r30) +/* 801E6874 001E37D4 81 83 00 00 */ lwz r12, 0(r3) +/* 801E6878 001E37D8 81 8C 00 20 */ lwz r12, 0x20(r12) +/* 801E687C 001E37DC 7D 89 03 A6 */ mtctr r12 +/* 801E6880 001E37E0 4E 80 04 21 */ bctrl +lbl_801E6884: +/* 801E6884 001E37E4 28 1C 00 00 */ cmplwi r28, 0 +/* 801E6888 001E37E8 41 82 00 10 */ beq lbl_801E6898 +/* 801E688C 001E37EC 88 1C 00 30 */ lbz r0, 0x30(r28) +/* 801E6890 001E37F0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801E6894 001E37F4 41 82 01 24 */ beq lbl_801E69B8 +lbl_801E6898: +/* 801E6898 001E37F8 80 7E 00 C4 */ lwz r3, 0xc4(r30) +/* 801E689C 001E37FC 38 9E 00 D0 */ addi r4, r30, 0xd0 +/* 801E68A0 001E3800 81 83 00 00 */ lwz r12, 0(r3) +/* 801E68A4 001E3804 81 8C 00 30 */ lwz r12, 0x30(r12) +/* 801E68A8 001E3808 7D 89 03 A6 */ mtctr r12 +/* 801E68AC 001E380C 4E 80 04 21 */ bctrl +/* 801E68B0 001E3810 80 7E 00 C4 */ lwz r3, 0xc4(r30) +/* 801E68B4 001E3814 FC 20 F8 90 */ fmr f1, f31 +/* 801E68B8 001E3818 81 83 00 00 */ lwz r12, 0(r3) +/* 801E68BC 001E381C 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801E68C0 001E3820 7D 89 03 A6 */ mtctr r12 +/* 801E68C4 001E3824 4E 80 04 21 */ bctrl +/* 801E68C8 001E3828 38 60 00 01 */ li r3, 1 +/* 801E68CC 001E382C 48 00 00 FC */ b lbl_801E69C8 +lbl_801E68D0: +/* 801E68D0 001E3830 88 1E 01 34 */ lbz r0, 0x134(r30) +/* 801E68D4 001E3834 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b +/* 801E68D8 001E3838 41 82 00 E0 */ beq lbl_801E69B8 +/* 801E68DC 001E383C 80 7E 01 28 */ lwz r3, 0x128(r30) +/* 801E68E0 001E3840 88 03 00 E6 */ lbz r0, 0xe6(r3) +/* 801E68E4 001E3844 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b +/* 801E68E8 001E3848 41 82 00 C8 */ beq lbl_801E69B0 +/* 801E68EC 001E384C 4B FF EA F9 */ bl MakeElectricGen__20CActorModelParticlesFv +/* 801E68F0 001E3850 81 83 00 00 */ lwz r12, 0(r3) +/* 801E68F4 001E3854 7C 7D 1B 78 */ mr r29, r3 +/* 801E68F8 001E3858 38 9E 00 D0 */ addi r4, r30, 0xd0 +/* 801E68FC 001E385C 81 8C 00 30 */ lwz r12, 0x30(r12) +/* 801E6900 001E3860 7D 89 03 A6 */ mtctr r12 +/* 801E6904 001E3864 4E 80 04 21 */ bctrl +/* 801E6908 001E3868 7C 1D 00 D0 */ neg r0, r29 +/* 801E690C 001E386C 38 61 00 08 */ addi r3, r1, 8 +/* 801E6910 001E3870 7C 04 EB 78 */ or r4, r0, r29 +/* 801E6914 001E3874 38 1E 00 C0 */ addi r0, r30, 0xc0 +/* 801E6918 001E3878 54 84 0F FE */ srwi r4, r4, 0x1f +/* 801E691C 001E387C 93 A1 00 0C */ stw r29, 0xc(r1) +/* 801E6920 001E3880 7C 03 00 40 */ cmplw r3, r0 +/* 801E6924 001E3884 98 81 00 08 */ stb r4, 8(r1) +/* 801E6928 001E3888 41 82 00 48 */ beq lbl_801E6970 +/* 801E692C 001E388C 88 1E 00 C0 */ lbz r0, 0xc0(r30) +/* 801E6930 001E3890 28 00 00 00 */ cmplwi r0, 0 +/* 801E6934 001E3894 41 82 00 24 */ beq lbl_801E6958 +/* 801E6938 001E3898 80 7E 00 C4 */ lwz r3, 0xc4(r30) +/* 801E693C 001E389C 28 03 00 00 */ cmplwi r3, 0 +/* 801E6940 001E38A0 41 82 00 18 */ beq lbl_801E6958 +/* 801E6944 001E38A4 81 83 00 00 */ lwz r12, 0(r3) +/* 801E6948 001E38A8 38 80 00 01 */ li r4, 1 +/* 801E694C 001E38AC 81 8C 00 08 */ lwz r12, 8(r12) +/* 801E6950 001E38B0 7D 89 03 A6 */ mtctr r12 +/* 801E6954 001E38B4 4E 80 04 21 */ bctrl +lbl_801E6958: +/* 801E6958 001E38B8 88 61 00 08 */ lbz r3, 8(r1) +/* 801E695C 001E38BC 38 00 00 00 */ li r0, 0 +/* 801E6960 001E38C0 98 7E 00 C0 */ stb r3, 0xc0(r30) +/* 801E6964 001E38C4 80 61 00 0C */ lwz r3, 0xc(r1) +/* 801E6968 001E38C8 90 7E 00 C4 */ stw r3, 0xc4(r30) +/* 801E696C 001E38CC 98 01 00 08 */ stb r0, 8(r1) +lbl_801E6970: +/* 801E6970 001E38D0 88 01 00 08 */ lbz r0, 8(r1) +/* 801E6974 001E38D4 28 00 00 00 */ cmplwi r0, 0 +/* 801E6978 001E38D8 41 82 00 24 */ beq lbl_801E699C +/* 801E697C 001E38DC 80 61 00 0C */ lwz r3, 0xc(r1) +/* 801E6980 001E38E0 28 03 00 00 */ cmplwi r3, 0 +/* 801E6984 001E38E4 41 82 00 18 */ beq lbl_801E699C +/* 801E6988 001E38E8 81 83 00 00 */ lwz r12, 0(r3) +/* 801E698C 001E38EC 38 80 00 01 */ li r4, 1 +/* 801E6990 001E38F0 81 8C 00 08 */ lwz r12, 8(r12) +/* 801E6994 001E38F4 7D 89 03 A6 */ mtctr r12 +/* 801E6998 001E38F8 4E 80 04 21 */ bctrl +lbl_801E699C: +/* 801E699C 001E38FC 38 00 00 00 */ li r0, 0 +/* 801E69A0 001E3900 90 1E 00 C8 */ stw r0, 0xc8(r30) +/* 801E69A4 001E3904 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 801E69A8 001E3908 48 12 BB 79 */ bl Next__9CRandom16Fv +/* 801E69AC 001E390C 90 7E 00 CC */ stw r3, 0xcc(r30) +lbl_801E69B0: +/* 801E69B0 001E3910 38 60 00 01 */ li r3, 1 +/* 801E69B4 001E3914 48 00 00 14 */ b lbl_801E69C8 +lbl_801E69B8: +/* 801E69B8 001E3918 7F C3 F3 78 */ mr r3, r30 +/* 801E69BC 001E391C 38 80 00 04 */ li r4, 4 +/* 801E69C0 001E3920 4B FF EF E9 */ bl Unlock__Q220CActorModelParticles5CItemF11EDependency +/* 801E69C4 001E3924 38 60 00 00 */ li r3, 0 +lbl_801E69C8: +/* 801E69C8 001E3928 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 +/* 801E69CC 001E392C 80 01 00 84 */ lwz r0, 0x84(r1) +/* 801E69D0 001E3930 CB E1 00 70 */ lfd f31, 0x70(r1) +/* 801E69D4 001E3934 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 801E69D8 001E3938 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 801E69DC 001E393C 83 A1 00 64 */ lwz r29, 0x64(r1) +/* 801E69E0 001E3940 83 81 00 60 */ lwz r28, 0x60(r1) +/* 801E69E4 001E3944 7C 08 03 A6 */ mtlr r0 +/* 801E69E8 001E3948 38 21 00 80 */ addi r1, r1, 0x80 +/* 801E69EC 001E394C 4E 80 00 20 */ blr + +.global sub_801e69f0 +sub_801e69f0: +/* 801E69F0 001E3950 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801E69F4 001E3954 7C 08 02 A6 */ mflr r0 +/* 801E69F8 001E3958 90 01 00 14 */ stw r0, 0x14(r1) +/* 801E69FC 001E395C 80 83 00 D8 */ lwz r4, 0xd8(r3) +/* 801E6A00 001E3960 28 04 00 00 */ cmplwi r4, 0 +/* 801E6A04 001E3964 41 82 00 4C */ beq lbl_801E6A50 +/* 801E6A08 001E3968 88 04 00 48 */ lbz r0, 0x48(r4) +/* 801E6A0C 001E396C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801E6A10 001E3970 40 82 00 2C */ bne lbl_801E6A3C +/* 801E6A14 001E3974 38 00 00 00 */ li r0, 0 +/* 801E6A18 001E3978 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 801E6A1C 001E397C 98 01 00 08 */ stb r0, 8(r1) +/* 801E6A20 001E3980 38 81 00 08 */ addi r4, r1, 8 +/* 801E6A24 001E3984 90 01 00 0C */ stw r0, 0xc(r1) +/* 801E6A28 001E3988 4B FF E4 79 */ bl "__as__Q24rstl32auto_ptr<20CRainSplashGenerator>FRCQ24rstl32auto_ptr<20CRainSplashGenerator>" +/* 801E6A2C 001E398C 38 61 00 08 */ addi r3, r1, 8 +/* 801E6A30 001E3990 38 80 FF FF */ li r4, -1 +/* 801E6A34 001E3994 4B FF DC D9 */ bl "__dt__Q24rstl32auto_ptr<20CRainSplashGenerator>" +/* 801E6A38 001E3998 48 00 00 18 */ b lbl_801E6A50 +lbl_801E6A3C: +/* 801E6A3C 001E399C 7C 83 23 78 */ mr r3, r4 +/* 801E6A40 001E39A0 7C A4 2B 78 */ mr r4, r5 +/* 801E6A44 001E39A4 48 08 39 A9 */ bl Update__20CRainSplashGeneratorFfR13CStateManager +/* 801E6A48 001E39A8 38 60 00 01 */ li r3, 1 +/* 801E6A4C 001E39AC 48 00 00 08 */ b lbl_801E6A54 +lbl_801E6A50: +/* 801E6A50 001E39B0 38 60 00 00 */ li r3, 0 +lbl_801E6A54: +/* 801E6A54 001E39B4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801E6A58 001E39B8 7C 08 03 A6 */ mtlr r0 +/* 801E6A5C 001E39BC 38 21 00 10 */ addi r1, r1, 0x10 +/* 801E6A60 001E39C0 4E 80 00 20 */ blr + +.global Update__Q220CActorModelParticles5CItemFfR13CStateManager +Update__Q220CActorModelParticles5CItemFfR13CStateManager: +/* 801E6A64 001E39C4 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801E6A68 001E39C8 7C 08 02 A6 */ mflr r0 +/* 801E6A6C 001E39CC 90 01 00 34 */ stw r0, 0x34(r1) +/* 801E6A70 001E39D0 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 801E6A74 001E39D4 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 801E6A78 001E39D8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801E6A7C 001E39DC 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801E6A80 001E39E0 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801E6A84 001E39E4 93 81 00 10 */ stw r28, 0x10(r1) +/* 801E6A88 001E39E8 7C 7C 1B 78 */ mr r28, r3 +/* 801E6A8C 001E39EC 7C 9D 23 78 */ mr r29, r4 +/* 801E6A90 001E39F0 A0 03 00 00 */ lhz r0, 0(r3) +/* 801E6A94 001E39F4 FF E0 08 90 */ fmr f31, f1 +/* 801E6A98 001E39F8 7F A3 EB 78 */ mr r3, r29 +/* 801E6A9C 001E39FC 38 81 00 08 */ addi r4, r1, 8 +/* 801E6AA0 001E3A00 B0 01 00 08 */ sth r0, 8(r1) +/* 801E6AA4 001E3A04 3B E0 00 00 */ li r31, 0 +/* 801E6AA8 001E3A08 4B E6 5A CD */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801E6AAC 001E3A0C 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801E6AB0 001E3A10 41 82 00 68 */ beq lbl_801E6B18 +/* 801E6AB4 001E3A14 80 BE 00 64 */ lwz r5, 0x64(r30) +/* 801E6AB8 001E3A18 38 60 00 00 */ li r3, 0 +/* 801E6ABC 001E3A1C 28 05 00 00 */ cmplwi r5, 0 +/* 801E6AC0 001E3A20 41 82 00 20 */ beq lbl_801E6AE0 +/* 801E6AC4 001E3A24 80 05 00 10 */ lwz r0, 0x10(r5) +/* 801E6AC8 001E3A28 28 00 00 00 */ cmplwi r0, 0 +/* 801E6ACC 001E3A2C 40 82 00 10 */ bne lbl_801E6ADC +/* 801E6AD0 001E3A30 88 05 00 28 */ lbz r0, 0x28(r5) +/* 801E6AD4 001E3A34 28 00 00 00 */ cmplwi r0, 0 +/* 801E6AD8 001E3A38 41 82 00 08 */ beq lbl_801E6AE0 +lbl_801E6ADC: +/* 801E6ADC 001E3A3C 38 60 00 01 */ li r3, 1 +lbl_801E6AE0: +/* 801E6AE0 001E3A40 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E6AE4 001E3A44 41 82 00 34 */ beq lbl_801E6B18 +/* 801E6AE8 001E3A48 C0 25 00 04 */ lfs f1, 4(r5) +/* 801E6AEC 001E3A4C 38 7C 00 F8 */ addi r3, r28, 0xf8 +/* 801E6AF0 001E3A50 C0 45 00 08 */ lfs f2, 8(r5) +/* 801E6AF4 001E3A54 38 9E 00 34 */ addi r4, r30, 0x34 +/* 801E6AF8 001E3A58 C0 05 00 00 */ lfs f0, 0(r5) +/* 801E6AFC 001E3A5C D0 1C 00 EC */ stfs f0, 0xec(r28) +/* 801E6B00 001E3A60 D0 3C 00 F0 */ stfs f1, 0xf0(r28) +/* 801E6B04 001E3A64 D0 5C 00 F4 */ stfs f2, 0xf4(r28) +/* 801E6B08 001E3A68 48 12 C0 39 */ bl __as__12CTransform4fFRC12CTransform4f +/* 801E6B0C 001E3A6C 80 1E 00 04 */ lwz r0, 4(r30) +/* 801E6B10 001E3A70 90 1C 00 04 */ stw r0, 4(r28) +/* 801E6B14 001E3A74 48 00 00 88 */ b lbl_801E6B9C +lbl_801E6B18: +/* 801E6B18 001E3A78 A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 801E6B1C 001E3A7C 38 60 00 00 */ li r3, 0 +/* 801E6B20 001E3A80 38 00 FF FF */ li r0, -1 +/* 801E6B24 001E3A84 B0 9C 00 00 */ sth r4, 0(r28) +/* 801E6B28 001E3A88 90 7C 00 84 */ stw r3, 0x84(r28) +/* 801E6B2C 001E3A8C 90 1C 00 B0 */ stw r0, 0xb0(r28) +/* 801E6B30 001E3A90 80 7C 00 C4 */ lwz r3, 0xc4(r28) +/* 801E6B34 001E3A94 28 03 00 00 */ cmplwi r3, 0 +/* 801E6B38 001E3A98 41 82 00 18 */ beq lbl_801E6B50 +/* 801E6B3C 001E3A9C 81 83 00 00 */ lwz r12, 0(r3) +/* 801E6B40 001E3AA0 38 80 00 00 */ li r4, 0 +/* 801E6B44 001E3AA4 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801E6B48 001E3AA8 7D 89 03 A6 */ mtctr r12 +/* 801E6B4C 001E3AAC 4E 80 04 21 */ bctrl +lbl_801E6B50: +/* 801E6B50 001E3AB0 80 1C 00 74 */ lwz r0, 0x74(r28) +/* 801E6B54 001E3AB4 28 00 00 00 */ cmplwi r0, 0 +/* 801E6B58 001E3AB8 41 82 00 1C */ beq lbl_801E6B74 +/* 801E6B5C 001E3ABC 80 1C 00 74 */ lwz r0, 0x74(r28) +/* 801E6B60 001E3AC0 38 61 00 0C */ addi r3, r1, 0xc +/* 801E6B64 001E3AC4 90 01 00 0C */ stw r0, 0xc(r1) +/* 801E6B68 001E3AC8 48 10 33 1D */ bl RemoveEmitter__11CSfxManagerFRC10CSfxHandle +/* 801E6B6C 001E3ACC 38 00 00 00 */ li r0, 0 +/* 801E6B70 001E3AD0 90 1C 00 74 */ stw r0, 0x74(r28) +lbl_801E6B74: +/* 801E6B74 001E3AD4 C0 3C 01 30 */ lfs f1, 0x130(r28) +/* 801E6B78 001E3AD8 C0 02 AD 80 */ lfs f0, lbl_805ACAA0@sda21(r2) +/* 801E6B7C 001E3ADC EC 21 F8 28 */ fsubs f1, f1, f31 +/* 801E6B80 001E3AE0 D0 3C 01 30 */ stfs f1, 0x130(r28) +/* 801E6B84 001E3AE4 C0 3C 01 30 */ lfs f1, 0x130(r28) +/* 801E6B88 001E3AE8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801E6B8C 001E3AEC 4C 40 13 82 */ cror 2, 0, 2 +/* 801E6B90 001E3AF0 40 82 00 0C */ bne lbl_801E6B9C +/* 801E6B94 001E3AF4 38 60 00 00 */ li r3, 0 +/* 801E6B98 001E3AF8 48 00 01 00 */ b lbl_801E6C98 +lbl_801E6B9C: +/* 801E6B9C 001E3AFC FC 20 F8 90 */ fmr f1, f31 +/* 801E6BA0 001E3B00 7F 83 E3 78 */ mr r3, r28 +/* 801E6BA4 001E3B04 7F C4 F3 78 */ mr r4, r30 +/* 801E6BA8 001E3B08 7F A5 EB 78 */ mr r5, r29 +/* 801E6BAC 001E3B0C 4B FF EE B5 */ bl UpdateOnFire__Q220CActorModelParticles5CItemFfR6CActorR13CStateManager +/* 801E6BB0 001E3B10 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E6BB4 001E3B14 41 82 00 08 */ beq lbl_801E6BBC +/* 801E6BB8 001E3B18 3B E0 00 01 */ li r31, 1 +lbl_801E6BBC: +/* 801E6BBC 001E3B1C FC 20 F8 90 */ fmr f1, f31 +/* 801E6BC0 001E3B20 7F 83 E3 78 */ mr r3, r28 +/* 801E6BC4 001E3B24 7F C4 F3 78 */ mr r4, r30 +/* 801E6BC8 001E3B28 7F A5 EB 78 */ mr r5, r29 +/* 801E6BCC 001E3B2C 4B FF F3 09 */ bl UpdateAshGen__Q220CActorModelParticles5CItemFfR6CActorR13CStateManager +/* 801E6BD0 001E3B30 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E6BD4 001E3B34 41 82 00 08 */ beq lbl_801E6BDC +/* 801E6BD8 001E3B38 3B E0 00 01 */ li r31, 1 +lbl_801E6BDC: +/* 801E6BDC 001E3B3C FC 20 F8 90 */ fmr f1, f31 +/* 801E6BE0 001E3B40 7F 83 E3 78 */ mr r3, r28 +/* 801E6BE4 001E3B44 7F C4 F3 78 */ mr r4, r30 +/* 801E6BE8 001E3B48 7F A5 EB 78 */ mr r5, r29 +/* 801E6BEC 001E3B4C 4B FF F9 D1 */ bl sub_801e65bc +/* 801E6BF0 001E3B50 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E6BF4 001E3B54 41 82 00 08 */ beq lbl_801E6BFC +/* 801E6BF8 001E3B58 3B E0 00 01 */ li r31, 1 +lbl_801E6BFC: +/* 801E6BFC 001E3B5C FC 20 F8 90 */ fmr f1, f31 +/* 801E6C00 001E3B60 7F 83 E3 78 */ mr r3, r28 +/* 801E6C04 001E3B64 7F C4 F3 78 */ mr r4, r30 +/* 801E6C08 001E3B68 4B FF F7 89 */ bl UpdateFirePop__Q220CActorModelParticles5CItemFfR6CActor +/* 801E6C0C 001E3B6C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E6C10 001E3B70 41 82 00 08 */ beq lbl_801E6C18 +/* 801E6C14 001E3B74 3B E0 00 01 */ li r31, 1 +lbl_801E6C18: +/* 801E6C18 001E3B78 FC 20 F8 90 */ fmr f1, f31 +/* 801E6C1C 001E3B7C 7F 83 E3 78 */ mr r3, r28 +/* 801E6C20 001E3B80 7F C4 F3 78 */ mr r4, r30 +/* 801E6C24 001E3B84 7F A5 EB 78 */ mr r5, r29 +/* 801E6C28 001E3B88 4B FF FB 09 */ bl UpdateElectric__Q220CActorModelParticles5CItemFfR6CActorR13CStateManager +/* 801E6C2C 001E3B8C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E6C30 001E3B90 41 82 00 08 */ beq lbl_801E6C38 +/* 801E6C34 001E3B94 3B E0 00 01 */ li r31, 1 +lbl_801E6C38: +/* 801E6C38 001E3B98 FC 20 F8 90 */ fmr f1, f31 +/* 801E6C3C 001E3B9C 7F 83 E3 78 */ mr r3, r28 +/* 801E6C40 001E3BA0 7F C4 F3 78 */ mr r4, r30 +/* 801E6C44 001E3BA4 7F A5 EB 78 */ mr r5, r29 +/* 801E6C48 001E3BA8 4B FF FD A9 */ bl sub_801e69f0 +/* 801E6C4C 001E3BAC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E6C50 001E3BB0 41 82 00 08 */ beq lbl_801E6C58 +/* 801E6C54 001E3BB4 3B E0 00 01 */ li r31, 1 +lbl_801E6C58: +/* 801E6C58 001E3BB8 FC 20 F8 90 */ fmr f1, f31 +/* 801E6C5C 001E3BBC 7F 83 E3 78 */ mr r3, r28 +/* 801E6C60 001E3BC0 7F C4 F3 78 */ mr r4, r30 +/* 801E6C64 001E3BC4 7F A5 EB 78 */ mr r5, r29 +/* 801E6C68 001E3BC8 4B FF F2 31 */ bl sub_801e5e98 +/* 801E6C6C 001E3BCC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E6C70 001E3BD0 41 82 00 08 */ beq lbl_801E6C78 +/* 801E6C74 001E3BD4 3B E0 00 01 */ li r31, 1 +lbl_801E6C78: +/* 801E6C78 001E3BD8 FC 20 F8 90 */ fmr f1, f31 +/* 801E6C7C 001E3BDC 7F 83 E3 78 */ mr r3, r28 +/* 801E6C80 001E3BE0 7F C4 F3 78 */ mr r4, r30 +/* 801E6C84 001E3BE4 4B FF F4 E1 */ bl UpdateIcePop__Q220CActorModelParticles5CItemFfR6CActor +/* 801E6C88 001E3BE8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E6C8C 001E3BEC 41 82 00 08 */ beq lbl_801E6C94 +/* 801E6C90 001E3BF0 3B E0 00 01 */ li r31, 1 +lbl_801E6C94: +/* 801E6C94 001E3BF4 7F E3 FB 78 */ mr r3, r31 +lbl_801E6C98: +/* 801E6C98 001E3BF8 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 801E6C9C 001E3BFC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801E6CA0 001E3C00 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 801E6CA4 001E3C04 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801E6CA8 001E3C08 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801E6CAC 001E3C0C 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801E6CB0 001E3C10 83 81 00 10 */ lwz r28, 0x10(r1) +/* 801E6CB4 001E3C14 7C 08 03 A6 */ mtlr r0 +/* 801E6CB8 001E3C18 38 21 00 30 */ addi r1, r1, 0x30 +/* 801E6CBC 001E3C1C 4E 80 00 20 */ blr + +.global __dt__Q220CActorModelParticles5CItemFv +__dt__Q220CActorModelParticles5CItemFv: +/* 801E6CC0 001E3C20 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801E6CC4 001E3C24 7C 08 02 A6 */ mflr r0 +/* 801E6CC8 001E3C28 90 01 00 24 */ stw r0, 0x24(r1) +/* 801E6CCC 001E3C2C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801E6CD0 001E3C30 7C 9F 23 78 */ mr r31, r4 +/* 801E6CD4 001E3C34 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801E6CD8 001E3C38 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801E6CDC 001E3C3C 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801E6CE0 001E3C40 93 81 00 10 */ stw r28, 0x10(r1) +/* 801E6CE4 001E3C44 41 82 02 20 */ beq lbl_801E6F04 +/* 801E6CE8 001E3C48 80 1E 00 74 */ lwz r0, 0x74(r30) +/* 801E6CEC 001E3C4C 28 00 00 00 */ cmplwi r0, 0 +/* 801E6CF0 001E3C50 41 82 00 14 */ beq lbl_801E6D04 +/* 801E6CF4 001E3C54 80 1E 00 74 */ lwz r0, 0x74(r30) +/* 801E6CF8 001E3C58 38 61 00 08 */ addi r3, r1, 8 +/* 801E6CFC 001E3C5C 90 01 00 08 */ stw r0, 8(r1) +/* 801E6D00 001E3C60 48 10 31 85 */ bl RemoveEmitter__11CSfxManagerFRC10CSfxHandle +lbl_801E6D04: +/* 801E6D04 001E3C64 88 1E 01 34 */ lbz r0, 0x134(r30) +/* 801E6D08 001E3C68 28 00 00 00 */ cmplwi r0, 0 +/* 801E6D0C 001E3C6C 41 82 00 34 */ beq lbl_801E6D40 +/* 801E6D10 001E3C70 3B 80 00 00 */ li r28, 0 +/* 801E6D14 001E3C74 3B A0 00 01 */ li r29, 1 +lbl_801E6D18: +/* 801E6D18 001E3C78 88 7E 01 34 */ lbz r3, 0x134(r30) +/* 801E6D1C 001E3C7C 7F A0 E0 30 */ slw r0, r29, r28 +/* 801E6D20 001E3C80 7C 60 00 39 */ and. r0, r3, r0 +/* 801E6D24 001E3C84 41 82 00 10 */ beq lbl_801E6D34 +/* 801E6D28 001E3C88 80 7E 01 28 */ lwz r3, 0x128(r30) +/* 801E6D2C 001E3C8C 7F 84 E3 78 */ mr r4, r28 +/* 801E6D30 001E3C90 4B FF CD 65 */ bl DecrementDependency__20CActorModelParticlesF11EDependency +lbl_801E6D34: +/* 801E6D34 001E3C94 3B 9C 00 01 */ addi r28, r28, 1 +/* 801E6D38 001E3C98 2C 1C 00 06 */ cmpwi r28, 6 +/* 801E6D3C 001E3C9C 41 80 FF DC */ blt lbl_801E6D18 +lbl_801E6D40: +/* 801E6D40 001E3CA0 34 1E 00 E4 */ addic. r0, r30, 0xe4 +/* 801E6D44 001E3CA4 41 82 00 30 */ beq lbl_801E6D74 +/* 801E6D48 001E3CA8 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 801E6D4C 001E3CAC 28 00 00 00 */ cmplwi r0, 0 +/* 801E6D50 001E3CB0 41 82 00 24 */ beq lbl_801E6D74 +/* 801E6D54 001E3CB4 80 7E 00 E8 */ lwz r3, 0xe8(r30) +/* 801E6D58 001E3CB8 28 03 00 00 */ cmplwi r3, 0 +/* 801E6D5C 001E3CBC 41 82 00 18 */ beq lbl_801E6D74 +/* 801E6D60 001E3CC0 81 83 00 00 */ lwz r12, 0(r3) +/* 801E6D64 001E3CC4 38 80 00 01 */ li r4, 1 +/* 801E6D68 001E3CC8 81 8C 00 08 */ lwz r12, 8(r12) +/* 801E6D6C 001E3CCC 7D 89 03 A6 */ mtctr r12 +/* 801E6D70 001E3CD0 4E 80 04 21 */ bctrl +lbl_801E6D74: +/* 801E6D74 001E3CD4 38 7E 00 DC */ addi r3, r30, 0xdc +/* 801E6D78 001E3CD8 38 80 FF FF */ li r4, -1 +/* 801E6D7C 001E3CDC 48 15 A0 C5 */ bl __dt__6CTokenFv +/* 801E6D80 001E3CE0 38 7E 00 D4 */ addi r3, r30, 0xd4 +/* 801E6D84 001E3CE4 38 80 FF FF */ li r4, -1 +/* 801E6D88 001E3CE8 4B FF D9 85 */ bl "__dt__Q24rstl32auto_ptr<20CRainSplashGenerator>" +/* 801E6D8C 001E3CEC 34 1E 00 C0 */ addic. r0, r30, 0xc0 +/* 801E6D90 001E3CF0 41 82 00 30 */ beq lbl_801E6DC0 +/* 801E6D94 001E3CF4 88 1E 00 C0 */ lbz r0, 0xc0(r30) +/* 801E6D98 001E3CF8 28 00 00 00 */ cmplwi r0, 0 +/* 801E6D9C 001E3CFC 41 82 00 24 */ beq lbl_801E6DC0 +/* 801E6DA0 001E3D00 80 7E 00 C4 */ lwz r3, 0xc4(r30) +/* 801E6DA4 001E3D04 28 03 00 00 */ cmplwi r3, 0 +/* 801E6DA8 001E3D08 41 82 00 18 */ beq lbl_801E6DC0 +/* 801E6DAC 001E3D0C 81 83 00 00 */ lwz r12, 0(r3) +/* 801E6DB0 001E3D10 38 80 00 01 */ li r4, 1 +/* 801E6DB4 001E3D14 81 8C 00 08 */ lwz r12, 8(r12) +/* 801E6DB8 001E3D18 7D 89 03 A6 */ mtctr r12 +/* 801E6DBC 001E3D1C 4E 80 04 21 */ bctrl +lbl_801E6DC0: +/* 801E6DC0 001E3D20 34 1E 00 B8 */ addic. r0, r30, 0xb8 +/* 801E6DC4 001E3D24 41 82 00 30 */ beq lbl_801E6DF4 +/* 801E6DC8 001E3D28 88 1E 00 B8 */ lbz r0, 0xb8(r30) +/* 801E6DCC 001E3D2C 28 00 00 00 */ cmplwi r0, 0 +/* 801E6DD0 001E3D30 41 82 00 24 */ beq lbl_801E6DF4 +/* 801E6DD4 001E3D34 80 7E 00 BC */ lwz r3, 0xbc(r30) +/* 801E6DD8 001E3D38 28 03 00 00 */ cmplwi r3, 0 +/* 801E6DDC 001E3D3C 41 82 00 18 */ beq lbl_801E6DF4 +/* 801E6DE0 001E3D40 81 83 00 00 */ lwz r12, 0(r3) +/* 801E6DE4 001E3D44 38 80 00 01 */ li r4, 1 +/* 801E6DE8 001E3D48 81 8C 00 08 */ lwz r12, 8(r12) +/* 801E6DEC 001E3D4C 7D 89 03 A6 */ mtctr r12 +/* 801E6DF0 001E3D50 4E 80 04 21 */ bctrl +lbl_801E6DF4: +/* 801E6DF4 001E3D54 34 1E 00 8C */ addic. r0, r30, 0x8c +/* 801E6DF8 001E3D58 41 82 00 60 */ beq lbl_801E6E58 +/* 801E6DFC 001E3D5C 3B 9E 00 90 */ addi r28, r30, 0x90 +/* 801E6E00 001E3D60 3B A0 00 00 */ li r29, 0 +/* 801E6E04 001E3D64 48 00 00 40 */ b lbl_801E6E44 +lbl_801E6E08: +/* 801E6E08 001E3D68 28 1C 00 00 */ cmplwi r28, 0 +/* 801E6E0C 001E3D6C 41 82 00 30 */ beq lbl_801E6E3C +/* 801E6E10 001E3D70 88 1C 00 00 */ lbz r0, 0(r28) +/* 801E6E14 001E3D74 28 00 00 00 */ cmplwi r0, 0 +/* 801E6E18 001E3D78 41 82 00 24 */ beq lbl_801E6E3C +/* 801E6E1C 001E3D7C 80 7C 00 04 */ lwz r3, 4(r28) +/* 801E6E20 001E3D80 28 03 00 00 */ cmplwi r3, 0 +/* 801E6E24 001E3D84 41 82 00 18 */ beq lbl_801E6E3C +/* 801E6E28 001E3D88 81 83 00 00 */ lwz r12, 0(r3) +/* 801E6E2C 001E3D8C 38 80 00 01 */ li r4, 1 +/* 801E6E30 001E3D90 81 8C 00 08 */ lwz r12, 8(r12) +/* 801E6E34 001E3D94 7D 89 03 A6 */ mtctr r12 +/* 801E6E38 001E3D98 4E 80 04 21 */ bctrl +lbl_801E6E3C: +/* 801E6E3C 001E3D9C 3B 9C 00 08 */ addi r28, r28, 8 +/* 801E6E40 001E3DA0 3B BD 00 01 */ addi r29, r29, 1 +lbl_801E6E44: +/* 801E6E44 001E3DA4 80 1E 00 8C */ lwz r0, 0x8c(r30) +/* 801E6E48 001E3DA8 7C 1D 00 00 */ cmpw r29, r0 +/* 801E6E4C 001E3DAC 41 80 FF BC */ blt lbl_801E6E08 +/* 801E6E50 001E3DB0 38 00 00 00 */ li r0, 0 +/* 801E6E54 001E3DB4 90 1E 00 8C */ stw r0, 0x8c(r30) +lbl_801E6E58: +/* 801E6E58 001E3DB8 34 1E 00 78 */ addic. r0, r30, 0x78 +/* 801E6E5C 001E3DBC 41 82 00 30 */ beq lbl_801E6E8C +/* 801E6E60 001E3DC0 88 1E 00 78 */ lbz r0, 0x78(r30) +/* 801E6E64 001E3DC4 28 00 00 00 */ cmplwi r0, 0 +/* 801E6E68 001E3DC8 41 82 00 24 */ beq lbl_801E6E8C +/* 801E6E6C 001E3DCC 80 7E 00 7C */ lwz r3, 0x7c(r30) +/* 801E6E70 001E3DD0 28 03 00 00 */ cmplwi r3, 0 +/* 801E6E74 001E3DD4 41 82 00 18 */ beq lbl_801E6E8C +/* 801E6E78 001E3DD8 81 83 00 00 */ lwz r12, 0(r3) +/* 801E6E7C 001E3DDC 38 80 00 01 */ li r4, 1 +/* 801E6E80 001E3DE0 81 8C 00 08 */ lwz r12, 8(r12) +/* 801E6E84 001E3DE4 7D 89 03 A6 */ mtctr r12 +/* 801E6E88 001E3DE8 4E 80 04 21 */ bctrl +lbl_801E6E8C: +/* 801E6E8C 001E3DEC 34 1E 00 08 */ addic. r0, r30, 8 +/* 801E6E90 001E3DF0 41 82 00 64 */ beq lbl_801E6EF4 +/* 801E6E94 001E3DF4 3B 9E 00 0C */ addi r28, r30, 0xc +/* 801E6E98 001E3DF8 3B A0 00 00 */ li r29, 0 +/* 801E6E9C 001E3DFC 48 00 00 44 */ b lbl_801E6EE0 +lbl_801E6EA0: +/* 801E6EA0 001E3E00 28 1C 00 00 */ cmplwi r28, 0 +/* 801E6EA4 001E3E04 41 82 00 34 */ beq lbl_801E6ED8 +/* 801E6EA8 001E3E08 41 82 00 30 */ beq lbl_801E6ED8 +/* 801E6EAC 001E3E0C 88 1C 00 00 */ lbz r0, 0(r28) +/* 801E6EB0 001E3E10 28 00 00 00 */ cmplwi r0, 0 +/* 801E6EB4 001E3E14 41 82 00 24 */ beq lbl_801E6ED8 +/* 801E6EB8 001E3E18 80 7C 00 04 */ lwz r3, 4(r28) +/* 801E6EBC 001E3E1C 28 03 00 00 */ cmplwi r3, 0 +/* 801E6EC0 001E3E20 41 82 00 18 */ beq lbl_801E6ED8 +/* 801E6EC4 001E3E24 81 83 00 00 */ lwz r12, 0(r3) +/* 801E6EC8 001E3E28 38 80 00 01 */ li r4, 1 +/* 801E6ECC 001E3E2C 81 8C 00 08 */ lwz r12, 8(r12) +/* 801E6ED0 001E3E30 7D 89 03 A6 */ mtctr r12 +/* 801E6ED4 001E3E34 4E 80 04 21 */ bctrl +lbl_801E6ED8: +/* 801E6ED8 001E3E38 3B 9C 00 0C */ addi r28, r28, 0xc +/* 801E6EDC 001E3E3C 3B BD 00 01 */ addi r29, r29, 1 +lbl_801E6EE0: +/* 801E6EE0 001E3E40 80 1E 00 08 */ lwz r0, 8(r30) +/* 801E6EE4 001E3E44 7C 1D 00 00 */ cmpw r29, r0 +/* 801E6EE8 001E3E48 41 80 FF B8 */ blt lbl_801E6EA0 +/* 801E6EEC 001E3E4C 38 00 00 00 */ li r0, 0 +/* 801E6EF0 001E3E50 90 1E 00 08 */ stw r0, 8(r30) +lbl_801E6EF4: +/* 801E6EF4 001E3E54 7F E0 07 35 */ extsh. r0, r31 +/* 801E6EF8 001E3E58 40 81 00 0C */ ble lbl_801E6F04 +/* 801E6EFC 001E3E5C 7F C3 F3 78 */ mr r3, r30 +/* 801E6F00 001E3E60 48 12 EA 31 */ bl Free__7CMemoryFPCv +lbl_801E6F04: +/* 801E6F04 001E3E64 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801E6F08 001E3E68 7F C3 F3 78 */ mr r3, r30 +/* 801E6F0C 001E3E6C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801E6F10 001E3E70 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801E6F14 001E3E74 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801E6F18 001E3E78 83 81 00 10 */ lwz r28, 0x10(r1) +/* 801E6F1C 001E3E7C 7C 08 03 A6 */ mtlr r0 +/* 801E6F20 001E3E80 38 21 00 20 */ addi r1, r1, 0x20 +/* 801E6F24 001E3E84 4E 80 00 20 */ blr + +.global __ct__Q220CActorModelParticles5CItemFRC9TUniqueIdR20CActorModelParticles +__ct__Q220CActorModelParticles5CItemFRC9TUniqueIdR20CActorModelParticles: +/* 801E6F28 001E3E88 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801E6F2C 001E3E8C 7C 08 02 A6 */ mflr r0 +/* 801E6F30 001E3E90 38 C0 00 00 */ li r6, 0 +/* 801E6F34 001E3E94 90 01 00 34 */ stw r0, 0x34(r1) +/* 801E6F38 001E3E98 38 00 00 02 */ li r0, 2 +/* 801E6F3C 001E3E9C 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801E6F40 001E3EA0 7C BF 2B 78 */ mr r31, r5 +/* 801E6F44 001E3EA4 7C C5 33 78 */ mr r5, r6 +/* 801E6F48 001E3EA8 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801E6F4C 001E3EAC 7C 7E 1B 78 */ mr r30, r3 +/* 801E6F50 001E3EB0 38 60 00 08 */ li r3, 8 +/* 801E6F54 001E3EB4 A0 E4 00 08 */ lhz r7, 8(r4) +/* 801E6F58 001E3EB8 98 C1 00 08 */ stb r6, 8(r1) +/* 801E6F5C 001E3EBC B0 FE 00 00 */ sth r7, 0(r30) +/* 801E6F60 001E3EC0 38 FE 00 0C */ addi r7, r30, 0xc +/* 801E6F64 001E3EC4 80 84 00 04 */ lwz r4, 4(r4) +/* 801E6F68 001E3EC8 90 C1 00 0C */ stw r6, 0xc(r1) +/* 801E6F6C 001E3ECC 90 9E 00 04 */ stw r4, 4(r30) +/* 801E6F70 001E3ED0 80 8D 92 28 */ lwz r4, lbl_805A7DE8@sda21(r13) +/* 801E6F74 001E3ED4 98 C1 00 10 */ stb r6, 0x10(r1) +/* 801E6F78 001E3ED8 90 C1 00 14 */ stw r6, 0x14(r1) +/* 801E6F7C 001E3EDC 98 C1 00 08 */ stb r6, 8(r1) +/* 801E6F80 001E3EE0 90 81 00 18 */ stw r4, 0x18(r1) +/* 801E6F84 001E3EE4 90 7E 00 08 */ stw r3, 8(r30) +/* 801E6F88 001E3EE8 7C 09 03 A6 */ mtctr r0 +lbl_801E6F8C: +/* 801E6F8C 001E3EEC 28 07 00 00 */ cmplwi r7, 0 +/* 801E6F90 001E3EF0 41 82 00 18 */ beq lbl_801E6FA8 +/* 801E6F94 001E3EF4 88 01 00 10 */ lbz r0, 0x10(r1) +/* 801E6F98 001E3EF8 98 07 00 00 */ stb r0, 0(r7) +/* 801E6F9C 001E3EFC 90 C7 00 04 */ stw r6, 4(r7) +/* 801E6FA0 001E3F00 98 C1 00 10 */ stb r6, 0x10(r1) +/* 801E6FA4 001E3F04 90 87 00 08 */ stw r4, 8(r7) +lbl_801E6FA8: +/* 801E6FA8 001E3F08 34 E7 00 0C */ addic. r7, r7, 0xc +/* 801E6FAC 001E3F0C 41 82 00 18 */ beq lbl_801E6FC4 +/* 801E6FB0 001E3F10 88 01 00 10 */ lbz r0, 0x10(r1) +/* 801E6FB4 001E3F14 98 07 00 00 */ stb r0, 0(r7) +/* 801E6FB8 001E3F18 90 C7 00 04 */ stw r6, 4(r7) +/* 801E6FBC 001E3F1C 98 C1 00 10 */ stb r6, 0x10(r1) +/* 801E6FC0 001E3F20 90 87 00 08 */ stw r4, 8(r7) +lbl_801E6FC4: +/* 801E6FC4 001E3F24 34 E7 00 0C */ addic. r7, r7, 0xc +/* 801E6FC8 001E3F28 41 82 00 18 */ beq lbl_801E6FE0 +/* 801E6FCC 001E3F2C 88 01 00 10 */ lbz r0, 0x10(r1) +/* 801E6FD0 001E3F30 98 07 00 00 */ stb r0, 0(r7) +/* 801E6FD4 001E3F34 90 C7 00 04 */ stw r6, 4(r7) +/* 801E6FD8 001E3F38 98 C1 00 10 */ stb r6, 0x10(r1) +/* 801E6FDC 001E3F3C 90 87 00 08 */ stw r4, 8(r7) +lbl_801E6FE0: +/* 801E6FE0 001E3F40 34 E7 00 0C */ addic. r7, r7, 0xc +/* 801E6FE4 001E3F44 41 82 00 18 */ beq lbl_801E6FFC +/* 801E6FE8 001E3F48 88 01 00 10 */ lbz r0, 0x10(r1) +/* 801E6FEC 001E3F4C 98 07 00 00 */ stb r0, 0(r7) +/* 801E6FF0 001E3F50 90 C7 00 04 */ stw r6, 4(r7) +/* 801E6FF4 001E3F54 98 C1 00 10 */ stb r6, 0x10(r1) +/* 801E6FF8 001E3F58 90 87 00 08 */ stw r4, 8(r7) +lbl_801E6FFC: +/* 801E6FFC 001E3F5C 38 A5 00 03 */ addi r5, r5, 3 +/* 801E7000 001E3F60 38 E7 00 0C */ addi r7, r7, 0xc +/* 801E7004 001E3F64 42 00 FF 88 */ bdnz lbl_801E6F8C +/* 801E7008 001E3F68 88 01 00 10 */ lbz r0, 0x10(r1) +/* 801E700C 001E3F6C 28 00 00 00 */ cmplwi r0, 0 +/* 801E7010 001E3F70 41 82 00 24 */ beq lbl_801E7034 +/* 801E7014 001E3F74 80 61 00 14 */ lwz r3, 0x14(r1) +/* 801E7018 001E3F78 28 03 00 00 */ cmplwi r3, 0 +/* 801E701C 001E3F7C 41 82 00 18 */ beq lbl_801E7034 +/* 801E7020 001E3F80 81 83 00 00 */ lwz r12, 0(r3) +/* 801E7024 001E3F84 38 80 00 01 */ li r4, 1 +/* 801E7028 001E3F88 81 8C 00 08 */ lwz r12, 8(r12) +/* 801E702C 001E3F8C 7D 89 03 A6 */ mtctr r12 +/* 801E7030 001E3F90 4E 80 04 21 */ bctrl +lbl_801E7034: +/* 801E7034 001E3F94 88 01 00 08 */ lbz r0, 8(r1) +/* 801E7038 001E3F98 28 00 00 00 */ cmplwi r0, 0 +/* 801E703C 001E3F9C 41 82 00 24 */ beq lbl_801E7060 +/* 801E7040 001E3FA0 80 61 00 0C */ lwz r3, 0xc(r1) +/* 801E7044 001E3FA4 28 03 00 00 */ cmplwi r3, 0 +/* 801E7048 001E3FA8 41 82 00 18 */ beq lbl_801E7060 +/* 801E704C 001E3FAC 81 83 00 00 */ lwz r12, 0(r3) +/* 801E7050 001E3FB0 38 80 00 01 */ li r4, 1 +/* 801E7054 001E3FB4 81 8C 00 08 */ lwz r12, 8(r12) +/* 801E7058 001E3FB8 7D 89 03 A6 */ mtctr r12 +/* 801E705C 001E3FBC 4E 80 04 21 */ bctrl +lbl_801E7060: +/* 801E7060 001E3FC0 C0 02 AD 80 */ lfs f0, lbl_805ACAA0@sda21(r2) +/* 801E7064 001E3FC4 38 80 00 00 */ li r4, 0 +/* 801E7068 001E3FC8 38 60 FF FF */ li r3, -1 +/* 801E706C 001E3FCC 38 00 00 63 */ li r0, 0x63 +/* 801E7070 001E3FD0 D0 1E 00 6C */ stfs f0, 0x6c(r30) +/* 801E7074 001E3FD4 98 9E 00 70 */ stb r4, 0x70(r30) +/* 801E7078 001E3FD8 90 9E 00 74 */ stw r4, 0x74(r30) +/* 801E707C 001E3FDC 98 9E 00 78 */ stb r4, 0x78(r30) +/* 801E7080 001E3FE0 90 9E 00 7C */ stw r4, 0x7c(r30) +/* 801E7084 001E3FE4 90 9E 00 80 */ stw r4, 0x80(r30) +/* 801E7088 001E3FE8 90 7E 00 84 */ stw r3, 0x84(r30) +/* 801E708C 001E3FEC 90 1E 00 88 */ stw r0, 0x88(r30) +/* 801E7090 001E3FF0 90 9E 00 8C */ stw r4, 0x8c(r30) +/* 801E7094 001E3FF4 90 7E 00 B0 */ stw r3, 0xb0(r30) +/* 801E7098 001E3FF8 90 1E 00 B4 */ stw r0, 0xb4(r30) +/* 801E709C 001E3FFC 98 9E 00 B8 */ stb r4, 0xb8(r30) +/* 801E70A0 001E4000 90 9E 00 BC */ stw r4, 0xbc(r30) +/* 801E70A4 001E4004 98 9E 00 C0 */ stb r4, 0xc0(r30) +/* 801E70A8 001E4008 90 9E 00 C4 */ stw r4, 0xc4(r30) +/* 801E70AC 001E400C 90 9E 00 C8 */ stw r4, 0xc8(r30) +/* 801E70B0 001E4010 90 1E 00 CC */ stw r0, 0xcc(r30) +/* 801E70B4 001E4014 48 16 2E F9 */ bl White__6CColorFv +/* 801E70B8 001E4018 80 A3 00 00 */ lwz r5, 0(r3) +/* 801E70BC 001E401C 38 00 00 00 */ li r0, 0 +/* 801E70C0 001E4020 38 7E 00 DC */ addi r3, r30, 0xdc +/* 801E70C4 001E4024 38 9F 00 48 */ addi r4, r31, 0x48 +/* 801E70C8 001E4028 90 BE 00 D0 */ stw r5, 0xd0(r30) +/* 801E70CC 001E402C 98 1E 00 D4 */ stb r0, 0xd4(r30) +/* 801E70D0 001E4030 90 1E 00 D8 */ stw r0, 0xd8(r30) +/* 801E70D4 001E4034 48 15 9D D5 */ bl __ct__6CTokenFRC6CToken +/* 801E70D8 001E4038 38 00 00 00 */ li r0, 0 +/* 801E70DC 001E403C 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 801E70E0 001E4040 98 1E 00 E4 */ stb r0, 0xe4(r30) +/* 801E70E4 001E4044 38 83 66 70 */ addi r4, r3, skIdentity4f@l +/* 801E70E8 001E4048 C0 02 AD 98 */ lfs f0, lbl_805ACAB8@sda21(r2) +/* 801E70EC 001E404C 38 7E 00 F8 */ addi r3, r30, 0xf8 +/* 801E70F0 001E4050 90 1E 00 E8 */ stw r0, 0xe8(r30) +/* 801E70F4 001E4054 D0 1E 00 EC */ stfs f0, 0xec(r30) +/* 801E70F8 001E4058 D0 1E 00 F0 */ stfs f0, 0xf0(r30) +/* 801E70FC 001E405C D0 1E 00 F4 */ stfs f0, 0xf4(r30) +/* 801E7100 001E4060 48 12 BA 75 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801E7104 001E4064 93 FE 01 28 */ stw r31, 0x128(r30) +/* 801E7108 001E4068 38 80 00 00 */ li r4, 0 +/* 801E710C 001E406C C0 02 AD 9C */ lfs f0, lbl_805ACABC@sda21(r2) +/* 801E7110 001E4070 7F C3 F3 78 */ mr r3, r30 +/* 801E7114 001E4074 88 1E 01 2C */ lbz r0, 0x12c(r30) +/* 801E7118 001E4078 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801E711C 001E407C 98 1E 01 2C */ stb r0, 0x12c(r30) +/* 801E7120 001E4080 88 1E 01 2C */ lbz r0, 0x12c(r30) +/* 801E7124 001E4084 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 801E7128 001E4088 98 1E 01 2C */ stb r0, 0x12c(r30) +/* 801E712C 001E408C D0 1E 01 30 */ stfs f0, 0x130(r30) +/* 801E7130 001E4090 98 9E 01 34 */ stb r4, 0x134(r30) +/* 801E7134 001E4094 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801E7138 001E4098 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801E713C 001E409C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801E7140 001E40A0 7C 08 03 A6 */ mtlr r0 +/* 801E7144 001E40A4 38 21 00 30 */ addi r1, r1, 0x30 +/* 801E7148 001E40A8 4E 80 00 20 */ blr + +.global UpdateLoad__Q220CActorModelParticles10DependencyFv +UpdateLoad__Q220CActorModelParticles10DependencyFv: +/* 801E714C 001E40AC 88 03 00 14 */ lbz r0, 0x14(r3) +/* 801E7150 001E40B0 28 00 00 00 */ cmplwi r0, 0 +/* 801E7154 001E40B4 4C 82 00 20 */ bnelr +/* 801E7158 001E40B8 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801E715C 001E40BC 2C 00 00 00 */ cmpwi r0, 0 +/* 801E7160 001E40C0 40 82 00 08 */ bne lbl_801E7168 +/* 801E7164 001E40C4 4E 80 00 20 */ blr +lbl_801E7168: +/* 801E7168 001E40C8 80 03 00 04 */ lwz r0, 4(r3) +/* 801E716C 001E40CC 38 E0 00 00 */ li r7, 0 +/* 801E7170 001E40D0 80 C3 00 0C */ lwz r6, 0xc(r3) +/* 801E7174 001E40D4 54 00 18 38 */ slwi r0, r0, 3 +/* 801E7178 001E40D8 7C A6 02 14 */ add r5, r6, r0 +/* 801E717C 001E40DC 48 00 00 20 */ b lbl_801E719C +lbl_801E7180: +/* 801E7180 001E40E0 80 86 00 00 */ lwz r4, 0(r6) +/* 801E7184 001E40E4 80 04 00 10 */ lwz r0, 0x10(r4) +/* 801E7188 001E40E8 28 00 00 00 */ cmplwi r0, 0 +/* 801E718C 001E40EC 40 82 00 0C */ bne lbl_801E7198 +/* 801E7190 001E40F0 38 E0 00 01 */ li r7, 1 +/* 801E7194 001E40F4 48 00 00 10 */ b lbl_801E71A4 +lbl_801E7198: +/* 801E7198 001E40F8 38 C6 00 08 */ addi r6, r6, 8 +lbl_801E719C: +/* 801E719C 001E40FC 7C 06 28 40 */ cmplw r6, r5 +/* 801E71A0 001E4100 40 82 FF E0 */ bne lbl_801E7180 +lbl_801E71A4: +/* 801E71A4 001E4104 54 E0 06 3F */ clrlwi. r0, r7, 0x18 +/* 801E71A8 001E4108 4C 82 00 20 */ bnelr +/* 801E71AC 001E410C 38 00 00 01 */ li r0, 1 +/* 801E71B0 001E4110 98 03 00 14 */ stb r0, 0x14(r3) +/* 801E71B4 001E4114 4E 80 00 20 */ blr + +.global Unload__Q220CActorModelParticles10Dependency +Unload__Q220CActorModelParticles10Dependency: +/* 801E71B8 001E4118 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801E71BC 001E411C 7C 08 02 A6 */ mflr r0 +/* 801E71C0 001E4120 90 01 00 14 */ stw r0, 0x14(r1) +/* 801E71C4 001E4124 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801E71C8 001E4128 93 C1 00 08 */ stw r30, 8(r1) +/* 801E71CC 001E412C 7C 7E 1B 78 */ mr r30, r3 +/* 801E71D0 001E4130 83 E3 00 0C */ lwz r31, 0xc(r3) +/* 801E71D4 001E4134 48 00 00 10 */ b lbl_801E71E4 +lbl_801E71D8: +/* 801E71D8 001E4138 7F E3 FB 78 */ mr r3, r31 +/* 801E71DC 001E413C 48 15 9B 65 */ bl Unlock__6CTokenFv +/* 801E71E0 001E4140 3B FF 00 08 */ addi r31, r31, 8 +lbl_801E71E4: +/* 801E71E4 001E4144 80 1E 00 04 */ lwz r0, 4(r30) +/* 801E71E8 001E4148 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 801E71EC 001E414C 54 00 18 38 */ slwi r0, r0, 3 +/* 801E71F0 001E4150 7C 03 02 14 */ add r0, r3, r0 +/* 801E71F4 001E4154 7C 1F 00 40 */ cmplw r31, r0 +/* 801E71F8 001E4158 40 82 FF E0 */ bne lbl_801E71D8 +/* 801E71FC 001E415C 38 00 00 00 */ li r0, 0 +/* 801E7200 001E4160 98 1E 00 14 */ stb r0, 0x14(r30) +/* 801E7204 001E4164 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801E7208 001E4168 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801E720C 001E416C 83 C1 00 08 */ lwz r30, 8(r1) +/* 801E7210 001E4170 7C 08 03 A6 */ mtlr r0 +/* 801E7214 001E4174 38 21 00 10 */ addi r1, r1, 0x10 +/* 801E7218 001E4178 4E 80 00 20 */ blr + +.global Load__Q220CActorModelParticles10Dependency +Load__Q220CActorModelParticles10Dependency: +/* 801E721C 001E417C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801E7220 001E4180 7C 08 02 A6 */ mflr r0 +/* 801E7224 001E4184 38 80 00 00 */ li r4, 0 +/* 801E7228 001E4188 90 01 00 14 */ stw r0, 0x14(r1) +/* 801E722C 001E418C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801E7230 001E4190 93 C1 00 08 */ stw r30, 8(r1) +/* 801E7234 001E4194 7C 7E 1B 78 */ mr r30, r3 +/* 801E7238 001E4198 83 E3 00 0C */ lwz r31, 0xc(r3) +/* 801E723C 001E419C 48 00 00 38 */ b lbl_801E7274 +lbl_801E7240: +/* 801E7240 001E41A0 88 1F 00 04 */ lbz r0, 4(r31) +/* 801E7244 001E41A4 28 00 00 00 */ cmplwi r0, 0 +/* 801E7248 001E41A8 40 82 00 14 */ bne lbl_801E725C +/* 801E724C 001E41AC 7F E3 FB 78 */ mr r3, r31 +/* 801E7250 001E41B0 48 15 9B 35 */ bl Lock__6CTokenFv +/* 801E7254 001E41B4 38 80 00 01 */ li r4, 1 +/* 801E7258 001E41B8 48 00 00 18 */ b lbl_801E7270 +lbl_801E725C: +/* 801E725C 001E41BC 80 7F 00 00 */ lwz r3, 0(r31) +/* 801E7260 001E41C0 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801E7264 001E41C4 28 00 00 00 */ cmplwi r0, 0 +/* 801E7268 001E41C8 40 82 00 08 */ bne lbl_801E7270 +/* 801E726C 001E41CC 38 80 00 01 */ li r4, 1 +lbl_801E7270: +/* 801E7270 001E41D0 3B FF 00 08 */ addi r31, r31, 8 +lbl_801E7274: +/* 801E7274 001E41D4 80 1E 00 04 */ lwz r0, 4(r30) +/* 801E7278 001E41D8 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 801E727C 001E41DC 54 00 18 38 */ slwi r0, r0, 3 +/* 801E7280 001E41E0 7C 03 02 14 */ add r0, r3, r0 +/* 801E7284 001E41E4 7C 1F 00 40 */ cmplw r31, r0 +/* 801E7288 001E41E8 40 82 FF B8 */ bne lbl_801E7240 +/* 801E728C 001E41EC 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 801E7290 001E41F0 40 82 00 0C */ bne lbl_801E729C +/* 801E7294 001E41F4 38 00 00 01 */ li r0, 1 +/* 801E7298 001E41F8 98 1E 00 14 */ stb r0, 0x14(r30) +lbl_801E729C: +/* 801E729C 001E41FC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801E72A0 001E4200 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801E72A4 001E4204 83 C1 00 08 */ lwz r30, 8(r1) +/* 801E72A8 001E4208 7C 08 03 A6 */ mtlr r0 +/* 801E72AC 001E420C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801E72B0 001E4210 4E 80 00 20 */ blr + +.global Decrement__Q220CActorModelParticles10Dependency +Decrement__Q220CActorModelParticles10Dependency: +/* 801E72B4 001E4214 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801E72B8 001E4218 7C 08 02 A6 */ mflr r0 +/* 801E72BC 001E421C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801E72C0 001E4220 80 83 00 10 */ lwz r4, 0x10(r3) +/* 801E72C4 001E4224 38 04 FF FF */ addi r0, r4, -1 +/* 801E72C8 001E4228 90 03 00 10 */ stw r0, 0x10(r3) +/* 801E72CC 001E422C 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801E72D0 001E4230 2C 00 00 00 */ cmpwi r0, 0 +/* 801E72D4 001E4234 41 81 00 08 */ bgt lbl_801E72DC +/* 801E72D8 001E4238 4B FF FE E1 */ bl Unload__Q220CActorModelParticles10Dependency +lbl_801E72DC: +/* 801E72DC 001E423C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801E72E0 001E4240 7C 08 03 A6 */ mtlr r0 +/* 801E72E4 001E4244 38 21 00 10 */ addi r1, r1, 0x10 +/* 801E72E8 001E4248 4E 80 00 20 */ blr + +.global Increment__Q220CActorModelParticles10Dependency +Increment__Q220CActorModelParticles10Dependency: +/* 801E72EC 001E424C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801E72F0 001E4250 7C 08 02 A6 */ mflr r0 +/* 801E72F4 001E4254 90 01 00 14 */ stw r0, 0x14(r1) +/* 801E72F8 001E4258 80 83 00 10 */ lwz r4, 0x10(r3) +/* 801E72FC 001E425C 38 04 00 01 */ addi r0, r4, 1 +/* 801E7300 001E4260 90 03 00 10 */ stw r0, 0x10(r3) +/* 801E7304 001E4264 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801E7308 001E4268 2C 00 00 01 */ cmpwi r0, 1 +/* 801E730C 001E426C 40 82 00 08 */ bne lbl_801E7314 +/* 801E7310 001E4270 4B FF FF 0D */ bl Load__Q220CActorModelParticles10Dependency +lbl_801E7314: +/* 801E7314 001E4274 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801E7318 001E4278 7C 08 03 A6 */ mtlr r0 +/* 801E731C 001E427C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801E7320 001E4280 4E 80 00 20 */ blr + +.global GetParticleDGRPTokens__20CActorModelParticlesFRCQ24rstl6string +GetParticleDGRPTokens__20CActorModelParticlesFRCQ24rstl6string: +/* 801E7324 001E4284 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801E7328 001E4288 7C 08 02 A6 */ mflr r0 +/* 801E732C 001E428C 7C 85 23 78 */ mr r5, r4 +/* 801E7330 001E4290 90 01 00 44 */ stw r0, 0x44(r1) +/* 801E7334 001E4294 38 00 00 00 */ li r0, 0 +/* 801E7338 001E4298 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801E733C 001E429C 7C 7F 1B 78 */ mr r31, r3 +/* 801E7340 001E42A0 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801E7344 001E42A4 93 A1 00 34 */ stw r29, 0x34(r1) +/* 801E7348 001E42A8 90 03 00 04 */ stw r0, 4(r3) +/* 801E734C 001E42AC 38 61 00 10 */ addi r3, r1, 0x10 +/* 801E7350 001E42B0 90 1F 00 08 */ stw r0, 8(r31) +/* 801E7354 001E42B4 90 1F 00 0C */ stw r0, 0xc(r31) +/* 801E7358 001E42B8 90 1F 00 10 */ stw r0, 0x10(r31) +/* 801E735C 001E42BC 98 1F 00 14 */ stb r0, 0x14(r31) +/* 801E7360 001E42C0 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801E7364 001E42C4 81 84 00 00 */ lwz r12, 0(r4) +/* 801E7368 001E42C8 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801E736C 001E42CC 7D 89 03 A6 */ mtctr r12 +/* 801E7370 001E42D0 4E 80 04 21 */ bctrl +/* 801E7374 001E42D4 3B A1 00 18 */ addi r29, r1, 0x18 +/* 801E7378 001E42D8 38 81 00 10 */ addi r4, r1, 0x10 +/* 801E737C 001E42DC 7F A3 EB 78 */ mr r3, r29 +/* 801E7380 001E42E0 48 15 9B 29 */ bl __ct__6CTokenFRC6CToken +/* 801E7384 001E42E4 7F A3 EB 78 */ mr r3, r29 +/* 801E7388 001E42E8 48 15 9A 85 */ bl GetObj__6CTokenFv +/* 801E738C 001E42EC 80 03 00 04 */ lwz r0, 4(r3) +/* 801E7390 001E42F0 38 61 00 10 */ addi r3, r1, 0x10 +/* 801E7394 001E42F4 38 80 FF FF */ li r4, -1 +/* 801E7398 001E42F8 90 01 00 20 */ stw r0, 0x20(r1) +/* 801E739C 001E42FC 48 15 9A A5 */ bl __dt__6CTokenFv +/* 801E73A0 001E4300 83 C1 00 20 */ lwz r30, 0x20(r1) +/* 801E73A4 001E4304 7F E3 FB 78 */ mr r3, r31 +/* 801E73A8 001E4308 80 9E 00 04 */ lwz r4, 4(r30) +/* 801E73AC 001E430C 4B E2 15 B1 */ bl "reserve__Q24rstl42vector<6CToken,Q24rstl17rmemory_allocator>Fi" +/* 801E73B0 001E4310 83 BE 00 0C */ lwz r29, 0xc(r30) +/* 801E73B4 001E4314 48 00 00 80 */ b lbl_801E7434 +lbl_801E73B8: +/* 801E73B8 001E4318 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801E73BC 001E431C 7F A5 EB 78 */ mr r5, r29 +/* 801E73C0 001E4320 38 61 00 08 */ addi r3, r1, 8 +/* 801E73C4 001E4324 81 84 00 00 */ lwz r12, 0(r4) +/* 801E73C8 001E4328 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801E73CC 001E432C 7D 89 03 A6 */ mtctr r12 +/* 801E73D0 001E4330 4E 80 04 21 */ bctrl +/* 801E73D4 001E4334 80 1F 00 04 */ lwz r0, 4(r31) +/* 801E73D8 001E4338 80 BF 00 08 */ lwz r5, 8(r31) +/* 801E73DC 001E433C 7C 00 28 00 */ cmpw r0, r5 +/* 801E73E0 001E4340 41 80 00 1C */ blt lbl_801E73FC +/* 801E73E4 001E4344 2C 05 00 00 */ cmpwi r5, 0 +/* 801E73E8 001E4348 7F E3 FB 78 */ mr r3, r31 +/* 801E73EC 001E434C 38 80 00 04 */ li r4, 4 +/* 801E73F0 001E4350 41 82 00 08 */ beq lbl_801E73F8 +/* 801E73F4 001E4354 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801E73F8: +/* 801E73F8 001E4358 4B E2 15 65 */ bl "reserve__Q24rstl42vector<6CToken,Q24rstl17rmemory_allocator>Fi" +lbl_801E73FC: +/* 801E73FC 001E435C 80 1F 00 04 */ lwz r0, 4(r31) +/* 801E7400 001E4360 80 7F 00 0C */ lwz r3, 0xc(r31) +/* 801E7404 001E4364 54 00 18 38 */ slwi r0, r0, 3 +/* 801E7408 001E4368 7C 63 02 15 */ add. r3, r3, r0 +/* 801E740C 001E436C 41 82 00 0C */ beq lbl_801E7418 +/* 801E7410 001E4370 38 81 00 08 */ addi r4, r1, 8 +/* 801E7414 001E4374 48 15 9A 95 */ bl __ct__6CTokenFRC6CToken +lbl_801E7418: +/* 801E7418 001E4378 80 BF 00 04 */ lwz r5, 4(r31) +/* 801E741C 001E437C 38 61 00 08 */ addi r3, r1, 8 +/* 801E7420 001E4380 38 80 FF FF */ li r4, -1 +/* 801E7424 001E4384 38 05 00 01 */ addi r0, r5, 1 +/* 801E7428 001E4388 90 1F 00 04 */ stw r0, 4(r31) +/* 801E742C 001E438C 48 15 9A 15 */ bl __dt__6CTokenFv +/* 801E7430 001E4390 3B BD 00 08 */ addi r29, r29, 8 +lbl_801E7434: +/* 801E7434 001E4394 80 1E 00 04 */ lwz r0, 4(r30) +/* 801E7438 001E4398 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 801E743C 001E439C 54 00 18 38 */ slwi r0, r0, 3 +/* 801E7440 001E43A0 7C 03 02 14 */ add r0, r3, r0 +/* 801E7444 001E43A4 7C 1D 00 40 */ cmplw r29, r0 +/* 801E7448 001E43A8 40 82 FF 70 */ bne lbl_801E73B8 +/* 801E744C 001E43AC 38 61 00 18 */ addi r3, r1, 0x18 +/* 801E7450 001E43B0 38 80 00 00 */ li r4, 0 +/* 801E7454 001E43B4 48 15 99 ED */ bl __dt__6CTokenFv +/* 801E7458 001E43B8 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801E745C 001E43BC 7F E3 FB 78 */ mr r3, r31 +/* 801E7460 001E43C0 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801E7464 001E43C4 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801E7468 001E43C8 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 801E746C 001E43CC 7C 08 03 A6 */ mtlr r0 +/* 801E7470 001E43D0 38 21 00 40 */ addi r1, r1, 0x40 +/* 801E7474 001E43D4 4E 80 00 20 */ blr + +.global IsMediumOrLarge__FRCActor +IsMediumOrLarge__FRCActor: +/* 801E7478 001E43D8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801E747C 001E43DC 7C 08 02 A6 */ mflr r0 +/* 801E7480 001E43E0 7C 64 1B 78 */ mr r4, r3 +/* 801E7484 001E43E4 90 01 00 14 */ stw r0, 0x14(r1) +/* 801E7488 001E43E8 38 61 00 08 */ addi r3, r1, 8 +/* 801E748C 001E43EC 4B EC 55 D1 */ bl "__ct__16TCastToPtr<3CAi>FP7CEntity" +/* 801E7490 001E43F0 80 63 00 04 */ lwz r3, 4(r3) +/* 801E7494 001E43F4 28 03 00 00 */ cmplwi r3, 0 +/* 801E7498 001E43F8 41 82 00 18 */ beq lbl_801E74B0 +/* 801E749C 001E43FC 80 63 04 60 */ lwz r3, 0x460(r3) +/* 801E74A0 001E4400 7C 03 00 D0 */ neg r0, r3 +/* 801E74A4 001E4404 7C 00 1B 78 */ or r0, r0, r3 +/* 801E74A8 001E4408 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801E74AC 001E440C 48 00 00 08 */ b lbl_801E74B4 +lbl_801E74B0: +/* 801E74B0 001E4410 38 60 00 00 */ li r3, 0 +lbl_801E74B4: +/* 801E74B4 001E4414 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801E74B8 001E4418 7C 08 03 A6 */ mtlr r0 +/* 801E74BC 001E441C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801E74C0 001E4420 4E 80 00 20 */ blr + +.global sub_801e74c4 +sub_801e74c4: +/* 801E74C4 001E4424 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801E74C8 001E4428 7C 08 02 A6 */ mflr r0 +/* 801E74CC 001E442C 90 01 00 24 */ stw r0, 0x24(r1) +/* 801E74D0 001E4430 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801E74D4 001E4434 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801E74D8 001E4438 7C 9E 23 78 */ mr r30, r4 +/* 801E74DC 001E443C 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801E74E0 001E4440 7C 7D 1B 78 */ mr r29, r3 +/* 801E74E4 001E4444 80 03 00 04 */ lwz r0, 4(r3) +/* 801E74E8 001E4448 83 E4 00 04 */ lwz r31, 4(r4) +/* 801E74EC 001E444C 7C 1E 00 40 */ cmplw r30, r0 +/* 801E74F0 001E4450 40 82 00 08 */ bne lbl_801E74F8 +/* 801E74F4 001E4454 93 FD 00 04 */ stw r31, 4(r29) +lbl_801E74F8: +/* 801E74F8 001E4458 80 1E 00 04 */ lwz r0, 4(r30) +/* 801E74FC 001E445C 38 7E 00 08 */ addi r3, r30, 8 +/* 801E7500 001E4460 80 BE 00 00 */ lwz r5, 0(r30) +/* 801E7504 001E4464 38 80 FF FF */ li r4, -1 +/* 801E7508 001E4468 90 05 00 04 */ stw r0, 4(r5) +/* 801E750C 001E446C 80 1E 00 00 */ lwz r0, 0(r30) +/* 801E7510 001E4470 80 BE 00 04 */ lwz r5, 4(r30) +/* 801E7514 001E4474 90 05 00 00 */ stw r0, 0(r5) +/* 801E7518 001E4478 4B FF F7 A9 */ bl __dt__Q220CActorModelParticles5CItemFv +/* 801E751C 001E447C 28 1E 00 00 */ cmplwi r30, 0 +/* 801E7520 001E4480 41 82 00 0C */ beq lbl_801E752C +/* 801E7524 001E4484 7F C3 F3 78 */ mr r3, r30 +/* 801E7528 001E4488 48 12 E4 09 */ bl Free__7CMemoryFPCv +lbl_801E752C: +/* 801E752C 001E448C 80 9D 00 14 */ lwz r4, 0x14(r29) +/* 801E7530 001E4490 7F E3 FB 78 */ mr r3, r31 +/* 801E7534 001E4494 38 04 FF FF */ addi r0, r4, -1 +/* 801E7538 001E4498 90 1D 00 14 */ stw r0, 0x14(r29) +/* 801E753C 001E449C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801E7540 001E44A0 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801E7544 001E44A4 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801E7548 001E44A8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801E754C 001E44AC 7C 08 03 A6 */ mtlr r0 +/* 801E7550 001E44B0 38 21 00 20 */ addi r1, r1, 0x20 +/* 801E7554 001E44B4 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CBallCameraFailsafeState.s b/asm/Kyoto_CWD/CBallCameraFailsafeState.s new file mode 100644 index 00000000..4ffc9d59 --- /dev/null +++ b/asm/Kyoto_CWD/CBallCameraFailsafeState.s @@ -0,0 +1,901 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global nullsub_19 +nullsub_19: +/* 8023E604 0023B564 4E 80 00 20 */ blr + +.global __ct__Q211CBallCamera14SFailsafeStateFv +__ct__Q211CBallCamera14SFailsafeStateFv: +/* 8023E608 0023B568 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8023E60C 0023B56C 7C 08 02 A6 */ mflr r0 +/* 8023E610 0023B570 3C 80 80 5A */ lis r4, skIdentity4f@ha +/* 8023E614 0023B574 90 01 00 14 */ stw r0, 0x14(r1) +/* 8023E618 0023B578 38 84 66 70 */ addi r4, r4, skIdentity4f@l +/* 8023E61C 0023B57C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8023E620 0023B580 7C 7F 1B 78 */ mr r31, r3 +/* 8023E624 0023B584 48 0D 45 51 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8023E628 0023B588 3C 80 80 5A */ lis r4, skIdentity4f@ha +/* 8023E62C 0023B58C 38 7F 00 30 */ addi r3, r31, 0x30 +/* 8023E630 0023B590 38 84 66 70 */ addi r4, r4, skIdentity4f@l +/* 8023E634 0023B594 48 0D 45 41 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8023E638 0023B598 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8023E63C 0023B59C 38 00 00 00 */ li r0, 0 +/* 8023E640 0023B5A0 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 8023E644 0023B5A4 7F E3 FB 78 */ mr r3, r31 +/* 8023E648 0023B5A8 C0 04 00 00 */ lfs f0, 0(r4) +/* 8023E64C 0023B5AC D0 1F 00 60 */ stfs f0, 0x60(r31) +/* 8023E650 0023B5B0 C0 04 00 04 */ lfs f0, 4(r4) +/* 8023E654 0023B5B4 D0 1F 00 64 */ stfs f0, 0x64(r31) +/* 8023E658 0023B5B8 C0 04 00 08 */ lfs f0, 8(r4) +/* 8023E65C 0023B5BC D0 1F 00 68 */ stfs f0, 0x68(r31) +/* 8023E660 0023B5C0 C0 04 00 00 */ lfs f0, 0(r4) +/* 8023E664 0023B5C4 D0 1F 00 6C */ stfs f0, 0x6c(r31) +/* 8023E668 0023B5C8 C0 04 00 04 */ lfs f0, 4(r4) +/* 8023E66C 0023B5CC D0 1F 00 70 */ stfs f0, 0x70(r31) +/* 8023E670 0023B5D0 C0 04 00 08 */ lfs f0, 8(r4) +/* 8023E674 0023B5D4 D0 1F 00 74 */ stfs f0, 0x74(r31) +/* 8023E678 0023B5D8 C0 04 00 00 */ lfs f0, 0(r4) +/* 8023E67C 0023B5DC D0 1F 00 78 */ stfs f0, 0x78(r31) +/* 8023E680 0023B5E0 C0 04 00 04 */ lfs f0, 4(r4) +/* 8023E684 0023B5E4 D0 1F 00 7C */ stfs f0, 0x7c(r31) +/* 8023E688 0023B5E8 C0 04 00 08 */ lfs f0, 8(r4) +/* 8023E68C 0023B5EC D0 1F 00 80 */ stfs f0, 0x80(r31) +/* 8023E690 0023B5F0 C0 04 00 00 */ lfs f0, 0(r4) +/* 8023E694 0023B5F4 D0 1F 00 84 */ stfs f0, 0x84(r31) +/* 8023E698 0023B5F8 C0 04 00 04 */ lfs f0, 4(r4) +/* 8023E69C 0023B5FC D0 1F 00 88 */ stfs f0, 0x88(r31) +/* 8023E6A0 0023B600 C0 04 00 08 */ lfs f0, 8(r4) +/* 8023E6A4 0023B604 D0 1F 00 8C */ stfs f0, 0x8c(r31) +/* 8023E6A8 0023B608 90 1F 00 94 */ stw r0, 0x94(r31) +/* 8023E6AC 0023B60C 90 1F 00 98 */ stw r0, 0x98(r31) +/* 8023E6B0 0023B610 90 1F 00 9C */ stw r0, 0x9c(r31) +/* 8023E6B4 0023B614 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8023E6B8 0023B618 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8023E6BC 0023B61C 7C 08 03 A6 */ mtlr r0 +/* 8023E6C0 0023B620 38 21 00 10 */ addi r1, r1, 0x10 +/* 8023E6C4 0023B624 4E 80 00 20 */ blr + +.global UpdateTransitionFromBallCamera__11CBallCameraFR13CStateManager +UpdateTransitionFromBallCamera__11CBallCameraFR13CStateManager: +/* 8023E6C8 0023B628 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 8023E6CC 0023B62C 7C 08 02 A6 */ mflr r0 +/* 8023E6D0 0023B630 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 8023E6D4 0023B634 DB E1 00 C0 */ stfd f31, 0xc0(r1) +/* 8023E6D8 0023B638 F3 E1 00 C8 */ psq_st f31, 200(r1), 0, qr0 +/* 8023E6DC 0023B63C DB C1 00 B0 */ stfd f30, 0xb0(r1) +/* 8023E6E0 0023B640 F3 C1 00 B8 */ psq_st f30, 184(r1), 0, qr0 +/* 8023E6E4 0023B644 DB A1 00 A0 */ stfd f29, 0xa0(r1) +/* 8023E6E8 0023B648 F3 A1 00 A8 */ psq_st f29, 168(r1), 0, qr0 +/* 8023E6EC 0023B64C DB 81 00 90 */ stfd f28, 0x90(r1) +/* 8023E6F0 0023B650 F3 81 00 98 */ psq_st f28, 152(r1), 0, qr0 +/* 8023E6F4 0023B654 93 E1 00 8C */ stw r31, 0x8c(r1) +/* 8023E6F8 0023B658 93 C1 00 88 */ stw r30, 0x88(r1) +/* 8023E6FC 0023B65C 93 A1 00 84 */ stw r29, 0x84(r1) +/* 8023E700 0023B660 7C 9F 23 78 */ mr r31, r4 +/* 8023E704 0023B664 C3 82 B7 A0 */ lfs f28, lbl_805AD4C0@sda21(r2) +/* 8023E708 0023B668 83 A4 08 4C */ lwz r29, 0x84c(r4) +/* 8023E70C 0023B66C 7C 7E 1B 78 */ mr r30, r3 +/* 8023E710 0023B670 C0 3D 05 78 */ lfs f1, 0x578(r29) +/* 8023E714 0023B674 FC 1C 08 00 */ fcmpu cr0, f28, f1 +/* 8023E718 0023B678 40 82 00 08 */ bne lbl_8023E720 +/* 8023E71C 0023B67C 48 00 00 24 */ b lbl_8023E740 +lbl_8023E720: +/* 8023E720 0023B680 C0 1D 05 74 */ lfs f0, 0x574(r29) +/* 8023E724 0023B684 38 81 00 08 */ addi r4, r1, 8 +/* 8023E728 0023B688 38 6D 96 88 */ addi r3, r13, lbl_805A8248@sda21 +/* 8023E72C 0023B68C 38 AD 96 8C */ addi r5, r13, lbl_805A824C@sda21 +/* 8023E730 0023B690 EC 00 08 24 */ fdivs f0, f0, f1 +/* 8023E734 0023B694 D0 01 00 08 */ stfs f0, 8(r1) +/* 8023E738 0023B698 4B DC DB 7D */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8023E73C 0023B69C C3 83 00 00 */ lfs f28, 0(r3) +lbl_8023E740: +/* 8023E740 0023B6A0 7F A4 EB 78 */ mr r4, r29 +/* 8023E744 0023B6A4 38 61 00 1C */ addi r3, r1, 0x1c +/* 8023E748 0023B6A8 48 04 66 35 */ bl GetEyePosition__7CPlayerCFv +/* 8023E74C 0023B6AC C0 61 00 1C */ lfs f3, 0x1c(r1) +/* 8023E750 0023B6B0 FC 20 E0 90 */ fmr f1, f28 +/* 8023E754 0023B6B4 C0 41 00 20 */ lfs f2, 0x20(r1) +/* 8023E758 0023B6B8 38 61 00 10 */ addi r3, r1, 0x10 +/* 8023E75C 0023B6BC C0 01 00 24 */ lfs f0, 0x24(r1) +/* 8023E760 0023B6C0 D0 61 00 40 */ stfs f3, 0x40(r1) +/* 8023E764 0023B6C4 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 8023E768 0023B6C8 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 8023E76C 0023B6CC 80 BE 04 7C */ lwz r5, 0x47c(r30) +/* 8023E770 0023B6D0 C3 FD 00 40 */ lfs f31, 0x40(r29) +/* 8023E774 0023B6D4 C0 05 00 84 */ lfs f0, 0x84(r5) +/* 8023E778 0023B6D8 80 85 00 9C */ lwz r4, 0x9c(r5) +/* 8023E77C 0023B6DC EC 9F 00 28 */ fsubs f4, f31, f0 +/* 8023E780 0023B6E0 C3 BD 00 60 */ lfs f29, 0x60(r29) +/* 8023E784 0023B6E4 C0 04 00 0C */ lfs f0, 0xc(r4) +/* 8023E788 0023B6E8 C0 45 00 8C */ lfs f2, 0x8c(r5) +/* 8023E78C 0023B6EC EC 00 20 2A */ fadds f0, f0, f4 +/* 8023E790 0023B6F0 C3 DD 00 50 */ lfs f30, 0x50(r29) +/* 8023E794 0023B6F4 C0 65 00 88 */ lfs f3, 0x88(r5) +/* 8023E798 0023B6F8 EC 5D 10 28 */ fsubs f2, f29, f2 +/* 8023E79C 0023B6FC D0 04 00 0C */ stfs f0, 0xc(r4) +/* 8023E7A0 0023B700 EC 7E 18 28 */ fsubs f3, f30, f3 +/* 8023E7A4 0023B704 C0 04 00 10 */ lfs f0, 0x10(r4) +/* 8023E7A8 0023B708 EC 00 18 2A */ fadds f0, f0, f3 +/* 8023E7AC 0023B70C D0 04 00 10 */ stfs f0, 0x10(r4) +/* 8023E7B0 0023B710 C0 04 00 14 */ lfs f0, 0x14(r4) +/* 8023E7B4 0023B714 EC 00 10 2A */ fadds f0, f0, f2 +/* 8023E7B8 0023B718 D0 04 00 14 */ stfs f0, 0x14(r4) +/* 8023E7BC 0023B71C 80 9E 04 7C */ lwz r4, 0x47c(r30) +/* 8023E7C0 0023B720 80 84 00 9C */ lwz r4, 0x9c(r4) +/* 8023E7C4 0023B724 C0 04 00 18 */ lfs f0, 0x18(r4) +/* 8023E7C8 0023B728 EC 00 20 2A */ fadds f0, f0, f4 +/* 8023E7CC 0023B72C D0 04 00 18 */ stfs f0, 0x18(r4) +/* 8023E7D0 0023B730 C0 04 00 1C */ lfs f0, 0x1c(r4) +/* 8023E7D4 0023B734 EC 00 18 2A */ fadds f0, f0, f3 +/* 8023E7D8 0023B738 D0 04 00 1C */ stfs f0, 0x1c(r4) +/* 8023E7DC 0023B73C C0 04 00 20 */ lfs f0, 0x20(r4) +/* 8023E7E0 0023B740 EC 00 10 2A */ fadds f0, f0, f2 +/* 8023E7E4 0023B744 D0 04 00 20 */ stfs f0, 0x20(r4) +/* 8023E7E8 0023B748 80 9E 04 7C */ lwz r4, 0x47c(r30) +/* 8023E7EC 0023B74C 80 84 00 9C */ lwz r4, 0x9c(r4) +/* 8023E7F0 0023B750 C0 04 00 24 */ lfs f0, 0x24(r4) +/* 8023E7F4 0023B754 EC 00 20 2A */ fadds f0, f0, f4 +/* 8023E7F8 0023B758 D0 04 00 24 */ stfs f0, 0x24(r4) +/* 8023E7FC 0023B75C C0 04 00 28 */ lfs f0, 0x28(r4) +/* 8023E800 0023B760 EC 00 18 2A */ fadds f0, f0, f3 +/* 8023E804 0023B764 D0 04 00 28 */ stfs f0, 0x28(r4) +/* 8023E808 0023B768 C0 04 00 2C */ lfs f0, 0x2c(r4) +/* 8023E80C 0023B76C EC 00 10 2A */ fadds f0, f0, f2 +/* 8023E810 0023B770 D0 04 00 2C */ stfs f0, 0x2c(r4) +/* 8023E814 0023B774 80 9E 04 7C */ lwz r4, 0x47c(r30) +/* 8023E818 0023B778 38 84 00 90 */ addi r4, r4, 0x90 +/* 8023E81C 0023B77C 48 00 05 A9 */ bl "GetFailsafeBezierPoint__11CBallCameraFRCQ24rstl18vector<9CVector3f>f" +/* 8023E820 0023B780 C0 22 B7 A8 */ lfs f1, lbl_805AD4C8@sda21(r2) +/* 8023E824 0023B784 38 81 00 0C */ addi r4, r1, 0xc +/* 8023E828 0023B788 C0 02 B7 A4 */ lfs f0, lbl_805AD4C4@sda21(r2) +/* 8023E82C 0023B78C 38 6D 96 A8 */ addi r3, r13, lbl_805A8268@sda21 +/* 8023E830 0023B790 C0 41 00 18 */ lfs f2, 0x18(r1) +/* 8023E834 0023B794 38 AD 96 AC */ addi r5, r13, lbl_805A826C@sda21 +/* 8023E838 0023B798 EC 01 07 3C */ fnmsubs f0, f1, f28, f0 +/* 8023E83C 0023B79C C0 21 00 48 */ lfs f1, 0x48(r1) +/* 8023E840 0023B7A0 C0 81 00 10 */ lfs f4, 0x10(r1) +/* 8023E844 0023B7A4 C0 61 00 14 */ lfs f3, 0x14(r1) +/* 8023E848 0023B7A8 EF 82 08 28 */ fsubs f28, f2, f1 +/* 8023E84C 0023B7AC D0 81 00 34 */ stfs f4, 0x34(r1) +/* 8023E850 0023B7B0 D0 61 00 38 */ stfs f3, 0x38(r1) +/* 8023E854 0023B7B4 D0 41 00 3C */ stfs f2, 0x3c(r1) +/* 8023E858 0023B7B8 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 8023E85C 0023B7BC 4B DC DA 59 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8023E860 0023B7C0 C0 03 00 00 */ lfs f0, 0(r3) +/* 8023E864 0023B7C4 38 61 00 28 */ addi r3, r1, 0x28 +/* 8023E868 0023B7C8 C0 A1 00 48 */ lfs f5, 0x48(r1) +/* 8023E86C 0023B7CC EF 9C 00 32 */ fmuls f28, f28, f0 +/* 8023E870 0023B7D0 C0 61 00 44 */ lfs f3, 0x44(r1) +/* 8023E874 0023B7D4 C0 01 00 38 */ lfs f0, 0x38(r1) +/* 8023E878 0023B7D8 C0 41 00 40 */ lfs f2, 0x40(r1) +/* 8023E87C 0023B7DC EC 9C 28 2A */ fadds f4, f28, f5 +/* 8023E880 0023B7E0 C0 21 00 34 */ lfs f1, 0x34(r1) +/* 8023E884 0023B7E4 EC 63 00 28 */ fsubs f3, f3, f0 +/* 8023E888 0023B7E8 C0 02 B7 A0 */ lfs f0, lbl_805AD4C0@sda21(r2) +/* 8023E88C 0023B7EC EC 22 08 28 */ fsubs f1, f2, f1 +/* 8023E890 0023B7F0 EC 45 20 28 */ fsubs f2, f5, f4 +/* 8023E894 0023B7F4 D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 8023E898 0023B7F8 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 8023E89C 0023B7FC D0 21 00 28 */ stfs f1, 0x28(r1) +/* 8023E8A0 0023B800 D0 61 00 2C */ stfs f3, 0x2c(r1) +/* 8023E8A4 0023B804 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 8023E8A8 0023B808 48 0D 60 11 */ bl Magnitude__9CVector3fCFv +/* 8023E8AC 0023B80C C0 02 B7 AC */ lfs f0, lbl_805AD4CC@sda21(r2) +/* 8023E8B0 0023B810 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8023E8B4 0023B814 40 81 00 54 */ ble lbl_8023E908 +/* 8023E8B8 0023B818 3C 80 80 5A */ lis r4, lbl_805A66F4@ha +/* 8023E8BC 0023B81C 38 61 00 4C */ addi r3, r1, 0x4c +/* 8023E8C0 0023B820 38 C4 66 F4 */ addi r6, r4, lbl_805A66F4@l +/* 8023E8C4 0023B824 38 A1 00 40 */ addi r5, r1, 0x40 +/* 8023E8C8 0023B828 38 81 00 34 */ addi r4, r1, 0x34 +/* 8023E8CC 0023B82C 48 0D 52 45 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 8023E8D0 0023B830 38 7E 00 34 */ addi r3, r30, 0x34 +/* 8023E8D4 0023B834 38 81 00 4C */ addi r4, r1, 0x4c +/* 8023E8D8 0023B838 48 0D 42 69 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8023E8DC 0023B83C 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 8023E8E0 0023B840 38 60 00 01 */ li r3, 1 +/* 8023E8E4 0023B844 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 8023E8E8 0023B848 98 1E 00 E4 */ stb r0, 0xe4(r30) +/* 8023E8EC 0023B84C 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 8023E8F0 0023B850 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 8023E8F4 0023B854 98 1E 00 E4 */ stb r0, 0xe4(r30) +/* 8023E8F8 0023B858 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 8023E8FC 0023B85C 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 8023E900 0023B860 98 1E 00 E4 */ stb r0, 0xe4(r30) +/* 8023E904 0023B864 48 00 00 4C */ b lbl_8023E950 +lbl_8023E908: +/* 8023E908 0023B868 80 9F 08 70 */ lwz r4, 0x870(r31) +/* 8023E90C 0023B86C 38 7E 00 34 */ addi r3, r30, 0x34 +/* 8023E910 0023B870 80 84 00 7C */ lwz r4, 0x7c(r4) +/* 8023E914 0023B874 38 84 00 34 */ addi r4, r4, 0x34 +/* 8023E918 0023B878 48 0D 42 29 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8023E91C 0023B87C 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 8023E920 0023B880 38 A0 00 01 */ li r5, 1 +/* 8023E924 0023B884 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 8023E928 0023B888 7F C3 F3 78 */ mr r3, r30 +/* 8023E92C 0023B88C 98 1E 00 E4 */ stb r0, 0xe4(r30) +/* 8023E930 0023B890 38 81 00 34 */ addi r4, r1, 0x34 +/* 8023E934 0023B894 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 8023E938 0023B898 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 8023E93C 0023B89C 98 1E 00 E4 */ stb r0, 0xe4(r30) +/* 8023E940 0023B8A0 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 8023E944 0023B8A4 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d +/* 8023E948 0023B8A8 98 1E 00 E4 */ stb r0, 0xe4(r30) +/* 8023E94C 0023B8AC 4B E1 45 41 */ bl SetTranslation__6CActorFRC9CVector3f +lbl_8023E950: +/* 8023E950 0023B8B0 80 7F 08 70 */ lwz r3, 0x870(r31) +/* 8023E954 0023B8B4 7F E5 FB 78 */ mr r5, r31 +/* 8023E958 0023B8B8 38 9E 00 34 */ addi r4, r30, 0x34 +/* 8023E95C 0023B8BC 80 63 00 7C */ lwz r3, 0x7c(r3) +/* 8023E960 0023B8C0 81 83 00 00 */ lwz r12, 0(r3) +/* 8023E964 0023B8C4 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 8023E968 0023B8C8 7D 89 03 A6 */ mtctr r12 +/* 8023E96C 0023B8CC 4E 80 04 21 */ bctrl +/* 8023E970 0023B8D0 80 9E 04 7C */ lwz r4, 0x47c(r30) +/* 8023E974 0023B8D4 38 60 00 00 */ li r3, 0 +/* 8023E978 0023B8D8 D3 E4 00 84 */ stfs f31, 0x84(r4) +/* 8023E97C 0023B8DC D3 C4 00 88 */ stfs f30, 0x88(r4) +/* 8023E980 0023B8E0 D3 A4 00 8C */ stfs f29, 0x8c(r4) +/* 8023E984 0023B8E4 E3 E1 00 C8 */ psq_l f31, 200(r1), 0, qr0 +/* 8023E988 0023B8E8 CB E1 00 C0 */ lfd f31, 0xc0(r1) +/* 8023E98C 0023B8EC E3 C1 00 B8 */ psq_l f30, 184(r1), 0, qr0 +/* 8023E990 0023B8F0 CB C1 00 B0 */ lfd f30, 0xb0(r1) +/* 8023E994 0023B8F4 E3 A1 00 A8 */ psq_l f29, 168(r1), 0, qr0 +/* 8023E998 0023B8F8 CB A1 00 A0 */ lfd f29, 0xa0(r1) +/* 8023E99C 0023B8FC E3 81 00 98 */ psq_l f28, 152(r1), 0, qr0 +/* 8023E9A0 0023B900 CB 81 00 90 */ lfd f28, 0x90(r1) +/* 8023E9A4 0023B904 83 E1 00 8C */ lwz r31, 0x8c(r1) +/* 8023E9A8 0023B908 83 C1 00 88 */ lwz r30, 0x88(r1) +/* 8023E9AC 0023B90C 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 8023E9B0 0023B910 83 A1 00 84 */ lwz r29, 0x84(r1) +/* 8023E9B4 0023B914 7C 08 03 A6 */ mtlr r0 +/* 8023E9B8 0023B918 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 8023E9BC 0023B91C 4E 80 00 20 */ blr + +.global TransitionFromMorphBallState__11CBallCameraFR13CStateManager +TransitionFromMorphBallState__11CBallCameraFR13CStateManager: +/* 8023E9C0 0023B920 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 8023E9C4 0023B924 7C 08 02 A6 */ mflr r0 +/* 8023E9C8 0023B928 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 8023E9CC 0023B92C DB E1 00 90 */ stfd f31, 0x90(r1) +/* 8023E9D0 0023B930 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 +/* 8023E9D4 0023B934 DB C1 00 80 */ stfd f30, 0x80(r1) +/* 8023E9D8 0023B938 F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 +/* 8023E9DC 0023B93C DB A1 00 70 */ stfd f29, 0x70(r1) +/* 8023E9E0 0023B940 F3 A1 00 78 */ psq_st f29, 120(r1), 0, qr0 +/* 8023E9E4 0023B944 DB 81 00 60 */ stfd f28, 0x60(r1) +/* 8023E9E8 0023B948 F3 81 00 68 */ psq_st f28, 104(r1), 0, qr0 +/* 8023E9EC 0023B94C 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 8023E9F0 0023B950 93 C1 00 58 */ stw r30, 0x58(r1) +/* 8023E9F4 0023B954 93 A1 00 54 */ stw r29, 0x54(r1) +/* 8023E9F8 0023B958 93 81 00 50 */ stw r28, 0x50(r1) +/* 8023E9FC 0023B95C 7C 9F 23 78 */ mr r31, r4 +/* 8023EA00 0023B960 7C 7E 1B 78 */ mr r30, r3 +/* 8023EA04 0023B964 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 8023EA08 0023B968 80 63 04 7C */ lwz r3, 0x47c(r3) +/* 8023EA0C 0023B96C 38 84 00 34 */ addi r4, r4, 0x34 +/* 8023EA10 0023B970 48 0D 41 31 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8023EA14 0023B974 80 7E 04 7C */ lwz r3, 0x47c(r30) +/* 8023EA18 0023B978 38 9E 00 34 */ addi r4, r30, 0x34 +/* 8023EA1C 0023B97C 38 63 00 30 */ addi r3, r3, 0x30 +/* 8023EA20 0023B980 48 0D 41 21 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8023EA24 0023B984 80 9E 04 7C */ lwz r4, 0x47c(r30) +/* 8023EA28 0023B988 38 61 00 28 */ addi r3, r1, 0x28 +/* 8023EA2C 0023B98C C0 1E 01 D8 */ lfs f0, 0x1d8(r30) +/* 8023EA30 0023B990 D0 04 00 60 */ stfs f0, 0x60(r4) +/* 8023EA34 0023B994 C0 1E 01 DC */ lfs f0, 0x1dc(r30) +/* 8023EA38 0023B998 D0 04 00 64 */ stfs f0, 0x64(r4) +/* 8023EA3C 0023B99C C0 1E 01 E0 */ lfs f0, 0x1e0(r30) +/* 8023EA40 0023B9A0 D0 04 00 68 */ stfs f0, 0x68(r4) +/* 8023EA44 0023B9A4 80 9E 04 7C */ lwz r4, 0x47c(r30) +/* 8023EA48 0023B9A8 C0 44 00 2C */ lfs f2, 0x2c(r4) +/* 8023EA4C 0023B9AC C0 24 00 1C */ lfs f1, 0x1c(r4) +/* 8023EA50 0023B9B0 C0 04 00 0C */ lfs f0, 0xc(r4) +/* 8023EA54 0023B9B4 D0 04 00 84 */ stfs f0, 0x84(r4) +/* 8023EA58 0023B9B8 D0 24 00 88 */ stfs f1, 0x88(r4) +/* 8023EA5C 0023B9BC D0 44 00 8C */ stfs f2, 0x8c(r4) +/* 8023EA60 0023B9C0 80 BE 04 7C */ lwz r5, 0x47c(r30) +/* 8023EA64 0023B9C4 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 8023EA68 0023B9C8 C3 A5 00 5C */ lfs f29, 0x5c(r5) +/* 8023EA6C 0023B9CC C3 C5 00 4C */ lfs f30, 0x4c(r5) +/* 8023EA70 0023B9D0 C3 E5 00 3C */ lfs f31, 0x3c(r5) +/* 8023EA74 0023B9D4 48 04 63 09 */ bl GetEyePosition__7CPlayerCFv +/* 8023EA78 0023B9D8 C0 41 00 28 */ lfs f2, 0x28(r1) +/* 8023EA7C 0023B9DC 38 61 00 1C */ addi r3, r1, 0x1c +/* 8023EA80 0023B9E0 C0 21 00 2C */ lfs f1, 0x2c(r1) +/* 8023EA84 0023B9E4 C0 01 00 30 */ lfs f0, 0x30(r1) +/* 8023EA88 0023B9E8 D0 41 00 40 */ stfs f2, 0x40(r1) +/* 8023EA8C 0023B9EC D0 21 00 44 */ stfs f1, 0x44(r1) +/* 8023EA90 0023B9F0 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 8023EA94 0023B9F4 80 9E 04 7C */ lwz r4, 0x47c(r30) +/* 8023EA98 0023B9F8 C0 44 00 64 */ lfs f2, 0x64(r4) +/* 8023EA9C 0023B9FC C0 24 00 68 */ lfs f1, 0x68(r4) +/* 8023EAA0 0023BA00 C0 04 00 60 */ lfs f0, 0x60(r4) +/* 8023EAA4 0023BA04 EC 42 F0 28 */ fsubs f2, f2, f30 +/* 8023EAA8 0023BA08 EC 21 E8 28 */ fsubs f1, f1, f29 +/* 8023EAAC 0023BA0C EC 00 F8 28 */ fsubs f0, f0, f31 +/* 8023EAB0 0023BA10 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 8023EAB4 0023BA14 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8023EAB8 0023BA18 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 8023EABC 0023BA1C 48 0D 5D FD */ bl Magnitude__9CVector3fCFv +/* 8023EAC0 0023BA20 FF 80 08 90 */ fmr f28, f1 +/* 8023EAC4 0023BA24 80 9E 04 7C */ lwz r4, 0x47c(r30) +/* 8023EAC8 0023BA28 C0 22 B7 B0 */ lfs f1, lbl_805AD4D0@sda21(r2) +/* 8023EACC 0023BA2C 7F E6 FB 78 */ mr r6, r31 +/* 8023EAD0 0023BA30 C0 C4 00 04 */ lfs f6, 4(r4) +/* 8023EAD4 0023BA34 38 61 00 40 */ addi r3, r1, 0x40 +/* 8023EAD8 0023BA38 FC 00 E0 50 */ fneg f0, f28 +/* 8023EADC 0023BA3C C0 A4 00 14 */ lfs f5, 0x14(r4) +/* 8023EAE0 0023BA40 C0 64 00 24 */ lfs f3, 0x24(r4) +/* 8023EAE4 0023BA44 38 81 00 34 */ addi r4, r1, 0x34 +/* 8023EAE8 0023BA48 C0 81 00 44 */ lfs f4, 0x44(r1) +/* 8023EAEC 0023BA4C 38 A1 00 18 */ addi r5, r1, 0x18 +/* 8023EAF0 0023BA50 EC E1 00 32 */ fmuls f7, f1, f0 +/* 8023EAF4 0023BA54 C0 41 00 48 */ lfs f2, 0x48(r1) +/* 8023EAF8 0023BA58 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 8023EAFC 0023BA5C EC C7 01 B2 */ fmuls f6, f7, f6 +/* 8023EB00 0023BA60 EC A7 01 72 */ fmuls f5, f7, f5 +/* 8023EB04 0023BA64 EC 67 00 F2 */ fmuls f3, f7, f3 +/* 8023EB08 0023BA68 EC 06 00 2A */ fadds f0, f6, f0 +/* 8023EB0C 0023BA6C EC 85 20 2A */ fadds f4, f5, f4 +/* 8023EB10 0023BA70 EC 43 10 2A */ fadds f2, f3, f2 +/* 8023EB14 0023BA74 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 8023EB18 0023BA78 D0 81 00 38 */ stfs f4, 0x38(r1) +/* 8023EB1C 0023BA7C D0 41 00 3C */ stfs f2, 0x3c(r1) +/* 8023EB20 0023BA80 48 00 03 49 */ bl CheckTransitionLineOfSight__11CBallCameraFRC9CVector3fRC9CVector3fRffR13CStateManager +/* 8023EB24 0023BA84 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8023EB28 0023BA88 41 82 00 50 */ beq lbl_8023EB78 +/* 8023EB2C 0023BA8C C0 01 00 18 */ lfs f0, 0x18(r1) +/* 8023EB30 0023BA90 80 7E 04 7C */ lwz r3, 0x47c(r30) +/* 8023EB34 0023BA94 FC C0 00 50 */ fneg f6, f0 +/* 8023EB38 0023BA98 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 8023EB3C 0023BA9C C0 23 00 04 */ lfs f1, 4(r3) +/* 8023EB40 0023BAA0 C0 63 00 14 */ lfs f3, 0x14(r3) +/* 8023EB44 0023BAA4 EC 26 00 72 */ fmuls f1, f6, f1 +/* 8023EB48 0023BAA8 C0 43 00 24 */ lfs f2, 0x24(r3) +/* 8023EB4C 0023BAAC EC A6 00 F2 */ fmuls f5, f6, f3 +/* 8023EB50 0023BAB0 C0 81 00 44 */ lfs f4, 0x44(r1) +/* 8023EB54 0023BAB4 EC 66 00 B2 */ fmuls f3, f6, f2 +/* 8023EB58 0023BAB8 C0 41 00 48 */ lfs f2, 0x48(r1) +/* 8023EB5C 0023BABC EC 01 00 2A */ fadds f0, f1, f0 +/* 8023EB60 0023BAC0 EC 85 20 2A */ fadds f4, f5, f4 +/* 8023EB64 0023BAC4 EC 23 10 2A */ fadds f1, f3, f2 +/* 8023EB68 0023BAC8 D0 03 00 6C */ stfs f0, 0x6c(r3) +/* 8023EB6C 0023BACC D0 83 00 70 */ stfs f4, 0x70(r3) +/* 8023EB70 0023BAD0 D0 23 00 74 */ stfs f1, 0x74(r3) +/* 8023EB74 0023BAD4 48 00 00 24 */ b lbl_8023EB98 +lbl_8023EB78: +/* 8023EB78 0023BAD8 D3 81 00 18 */ stfs f28, 0x18(r1) +/* 8023EB7C 0023BADC C0 01 00 34 */ lfs f0, 0x34(r1) +/* 8023EB80 0023BAE0 80 7E 04 7C */ lwz r3, 0x47c(r30) +/* 8023EB84 0023BAE4 D0 03 00 6C */ stfs f0, 0x6c(r3) +/* 8023EB88 0023BAE8 C0 01 00 38 */ lfs f0, 0x38(r1) +/* 8023EB8C 0023BAEC D0 03 00 70 */ stfs f0, 0x70(r3) +/* 8023EB90 0023BAF0 C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 8023EB94 0023BAF4 D0 03 00 74 */ stfs f0, 0x74(r3) +lbl_8023EB98: +/* 8023EB98 0023BAF8 80 7E 04 7C */ lwz r3, 0x47c(r30) +/* 8023EB9C 0023BAFC 80 03 00 94 */ lwz r0, 0x94(r3) +/* 8023EBA0 0023BB00 80 83 00 9C */ lwz r4, 0x9c(r3) +/* 8023EBA4 0023BB04 1C 00 00 0C */ mulli r0, r0, 0xc +/* 8023EBA8 0023BB08 90 81 00 0C */ stw r4, 0xc(r1) +/* 8023EBAC 0023BB0C 7C 04 02 14 */ add r0, r4, r0 +/* 8023EBB0 0023BB10 90 81 00 08 */ stw r4, 8(r1) +/* 8023EBB4 0023BB14 90 01 00 14 */ stw r0, 0x14(r1) +/* 8023EBB8 0023BB18 90 01 00 10 */ stw r0, 0x10(r1) +/* 8023EBBC 0023BB1C 48 00 00 08 */ b lbl_8023EBC4 +lbl_8023EBC0: +/* 8023EBC0 0023BB20 38 84 00 0C */ addi r4, r4, 0xc +lbl_8023EBC4: +/* 8023EBC4 0023BB24 7C 04 00 40 */ cmplw r4, r0 +/* 8023EBC8 0023BB28 40 82 FF F8 */ bne lbl_8023EBC0 +/* 8023EBCC 0023BB2C 38 00 00 00 */ li r0, 0 +/* 8023EBD0 0023BB30 38 80 00 04 */ li r4, 4 +/* 8023EBD4 0023BB34 90 03 00 94 */ stw r0, 0x94(r3) +/* 8023EBD8 0023BB38 80 7E 04 7C */ lwz r3, 0x47c(r30) +/* 8023EBDC 0023BB3C 38 63 00 90 */ addi r3, r3, 0x90 +/* 8023EBE0 0023BB40 4B E1 F1 19 */ bl "reserve__Q24rstl45vector<9CVector3f,Q24rstl17rmemory_allocator>Fi" +/* 8023EBE4 0023BB44 80 7E 04 7C */ lwz r3, 0x47c(r30) +/* 8023EBE8 0023BB48 3B A3 00 90 */ addi r29, r3, 0x90 +/* 8023EBEC 0023BB4C 80 03 00 94 */ lwz r0, 0x94(r3) +/* 8023EBF0 0023BB50 80 A3 00 98 */ lwz r5, 0x98(r3) +/* 8023EBF4 0023BB54 7C 00 28 00 */ cmpw r0, r5 +/* 8023EBF8 0023BB58 41 80 00 1C */ blt lbl_8023EC14 +/* 8023EBFC 0023BB5C 2C 05 00 00 */ cmpwi r5, 0 +/* 8023EC00 0023BB60 7F A3 EB 78 */ mr r3, r29 +/* 8023EC04 0023BB64 38 80 00 04 */ li r4, 4 +/* 8023EC08 0023BB68 41 82 00 08 */ beq lbl_8023EC10 +/* 8023EC0C 0023BB6C 54 A4 08 3C */ slwi r4, r5, 1 +lbl_8023EC10: +/* 8023EC10 0023BB70 4B E1 F0 E9 */ bl "reserve__Q24rstl45vector<9CVector3f,Q24rstl17rmemory_allocator>Fi" +lbl_8023EC14: +/* 8023EC14 0023BB74 80 1D 00 04 */ lwz r0, 4(r29) +/* 8023EC18 0023BB78 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 8023EC1C 0023BB7C 1C 00 00 0C */ mulli r0, r0, 0xc +/* 8023EC20 0023BB80 7C 63 02 15 */ add. r3, r3, r0 +/* 8023EC24 0023BB84 41 82 00 10 */ beq lbl_8023EC34 +/* 8023EC28 0023BB88 D3 E3 00 00 */ stfs f31, 0(r3) +/* 8023EC2C 0023BB8C D3 C3 00 04 */ stfs f30, 4(r3) +/* 8023EC30 0023BB90 D3 A3 00 08 */ stfs f29, 8(r3) +lbl_8023EC34: +/* 8023EC34 0023BB94 80 7D 00 04 */ lwz r3, 4(r29) +/* 8023EC38 0023BB98 38 03 00 01 */ addi r0, r3, 1 +/* 8023EC3C 0023BB9C 90 1D 00 04 */ stw r0, 4(r29) +/* 8023EC40 0023BBA0 83 9E 04 7C */ lwz r28, 0x47c(r30) +/* 8023EC44 0023BBA4 3B BC 00 90 */ addi r29, r28, 0x90 +/* 8023EC48 0023BBA8 80 1C 00 94 */ lwz r0, 0x94(r28) +/* 8023EC4C 0023BBAC 80 BC 00 98 */ lwz r5, 0x98(r28) +/* 8023EC50 0023BBB0 7C 00 28 00 */ cmpw r0, r5 +/* 8023EC54 0023BBB4 41 80 00 1C */ blt lbl_8023EC70 +/* 8023EC58 0023BBB8 2C 05 00 00 */ cmpwi r5, 0 +/* 8023EC5C 0023BBBC 7F A3 EB 78 */ mr r3, r29 +/* 8023EC60 0023BBC0 38 80 00 04 */ li r4, 4 +/* 8023EC64 0023BBC4 41 82 00 08 */ beq lbl_8023EC6C +/* 8023EC68 0023BBC8 54 A4 08 3C */ slwi r4, r5, 1 +lbl_8023EC6C: +/* 8023EC6C 0023BBCC 4B E1 F0 8D */ bl "reserve__Q24rstl45vector<9CVector3f,Q24rstl17rmemory_allocator>Fi" +lbl_8023EC70: +/* 8023EC70 0023BBD0 80 1D 00 04 */ lwz r0, 4(r29) +/* 8023EC74 0023BBD4 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 8023EC78 0023BBD8 1C 00 00 0C */ mulli r0, r0, 0xc +/* 8023EC7C 0023BBDC 7C 63 02 15 */ add. r3, r3, r0 +/* 8023EC80 0023BBE0 41 82 00 1C */ beq lbl_8023EC9C +/* 8023EC84 0023BBE4 C0 1C 00 6C */ lfs f0, 0x6c(r28) +/* 8023EC88 0023BBE8 D0 03 00 00 */ stfs f0, 0(r3) +/* 8023EC8C 0023BBEC C0 1C 00 70 */ lfs f0, 0x70(r28) +/* 8023EC90 0023BBF0 D0 03 00 04 */ stfs f0, 4(r3) +/* 8023EC94 0023BBF4 C0 1C 00 74 */ lfs f0, 0x74(r28) +/* 8023EC98 0023BBF8 D0 03 00 08 */ stfs f0, 8(r3) +lbl_8023EC9C: +/* 8023EC9C 0023BBFC 80 7D 00 04 */ lwz r3, 4(r29) +/* 8023ECA0 0023BC00 38 03 00 01 */ addi r0, r3, 1 +/* 8023ECA4 0023BC04 90 1D 00 04 */ stw r0, 4(r29) +/* 8023ECA8 0023BC08 83 9E 04 7C */ lwz r28, 0x47c(r30) +/* 8023ECAC 0023BC0C 3B BC 00 90 */ addi r29, r28, 0x90 +/* 8023ECB0 0023BC10 80 1C 00 94 */ lwz r0, 0x94(r28) +/* 8023ECB4 0023BC14 80 BC 00 98 */ lwz r5, 0x98(r28) +/* 8023ECB8 0023BC18 7C 00 28 00 */ cmpw r0, r5 +/* 8023ECBC 0023BC1C 41 80 00 1C */ blt lbl_8023ECD8 +/* 8023ECC0 0023BC20 2C 05 00 00 */ cmpwi r5, 0 +/* 8023ECC4 0023BC24 7F A3 EB 78 */ mr r3, r29 +/* 8023ECC8 0023BC28 38 80 00 04 */ li r4, 4 +/* 8023ECCC 0023BC2C 41 82 00 08 */ beq lbl_8023ECD4 +/* 8023ECD0 0023BC30 54 A4 08 3C */ slwi r4, r5, 1 +lbl_8023ECD4: +/* 8023ECD4 0023BC34 4B E1 F0 25 */ bl "reserve__Q24rstl45vector<9CVector3f,Q24rstl17rmemory_allocator>Fi" +lbl_8023ECD8: +/* 8023ECD8 0023BC38 80 1D 00 04 */ lwz r0, 4(r29) +/* 8023ECDC 0023BC3C 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 8023ECE0 0023BC40 1C 00 00 0C */ mulli r0, r0, 0xc +/* 8023ECE4 0023BC44 7C 63 02 15 */ add. r3, r3, r0 +/* 8023ECE8 0023BC48 41 82 00 1C */ beq lbl_8023ED04 +/* 8023ECEC 0023BC4C C0 1C 00 6C */ lfs f0, 0x6c(r28) +/* 8023ECF0 0023BC50 D0 03 00 00 */ stfs f0, 0(r3) +/* 8023ECF4 0023BC54 C0 1C 00 70 */ lfs f0, 0x70(r28) +/* 8023ECF8 0023BC58 D0 03 00 04 */ stfs f0, 4(r3) +/* 8023ECFC 0023BC5C C0 1C 00 74 */ lfs f0, 0x74(r28) +/* 8023ED00 0023BC60 D0 03 00 08 */ stfs f0, 8(r3) +lbl_8023ED04: +/* 8023ED04 0023BC64 80 7D 00 04 */ lwz r3, 4(r29) +/* 8023ED08 0023BC68 38 03 00 01 */ addi r0, r3, 1 +/* 8023ED0C 0023BC6C 90 1D 00 04 */ stw r0, 4(r29) +/* 8023ED10 0023BC70 80 7E 04 7C */ lwz r3, 0x47c(r30) +/* 8023ED14 0023BC74 3B A3 00 90 */ addi r29, r3, 0x90 +/* 8023ED18 0023BC78 80 03 00 94 */ lwz r0, 0x94(r3) +/* 8023ED1C 0023BC7C 80 A3 00 98 */ lwz r5, 0x98(r3) +/* 8023ED20 0023BC80 7C 00 28 00 */ cmpw r0, r5 +/* 8023ED24 0023BC84 41 80 00 1C */ blt lbl_8023ED40 +/* 8023ED28 0023BC88 2C 05 00 00 */ cmpwi r5, 0 +/* 8023ED2C 0023BC8C 7F A3 EB 78 */ mr r3, r29 +/* 8023ED30 0023BC90 38 80 00 04 */ li r4, 4 +/* 8023ED34 0023BC94 41 82 00 08 */ beq lbl_8023ED3C +/* 8023ED38 0023BC98 54 A4 08 3C */ slwi r4, r5, 1 +lbl_8023ED3C: +/* 8023ED3C 0023BC9C 4B E1 EF BD */ bl "reserve__Q24rstl45vector<9CVector3f,Q24rstl17rmemory_allocator>Fi" +lbl_8023ED40: +/* 8023ED40 0023BCA0 80 1D 00 04 */ lwz r0, 4(r29) +/* 8023ED44 0023BCA4 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 8023ED48 0023BCA8 1C 00 00 0C */ mulli r0, r0, 0xc +/* 8023ED4C 0023BCAC 7C 63 02 15 */ add. r3, r3, r0 +/* 8023ED50 0023BCB0 41 82 00 1C */ beq lbl_8023ED6C +/* 8023ED54 0023BCB4 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 8023ED58 0023BCB8 D0 03 00 00 */ stfs f0, 0(r3) +/* 8023ED5C 0023BCBC C0 01 00 44 */ lfs f0, 0x44(r1) +/* 8023ED60 0023BCC0 D0 03 00 04 */ stfs f0, 4(r3) +/* 8023ED64 0023BCC4 C0 01 00 48 */ lfs f0, 0x48(r1) +/* 8023ED68 0023BCC8 D0 03 00 08 */ stfs f0, 8(r3) +lbl_8023ED6C: +/* 8023ED6C 0023BCCC 80 BD 00 04 */ lwz r5, 4(r29) +/* 8023ED70 0023BCD0 7F C3 F3 78 */ mr r3, r30 +/* 8023ED74 0023BCD4 7F E4 FB 78 */ mr r4, r31 +/* 8023ED78 0023BCD8 38 05 00 01 */ addi r0, r5, 1 +/* 8023ED7C 0023BCDC 90 1D 00 04 */ stw r0, 4(r29) +/* 8023ED80 0023BCE0 4B E4 2A 51 */ bl CheckFailsafeFromMorphBallState__11CBallCameraCFR13CStateManager +/* 8023ED84 0023BCE4 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 +/* 8023ED88 0023BCE8 CB E1 00 90 */ lfd f31, 0x90(r1) +/* 8023ED8C 0023BCEC E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 +/* 8023ED90 0023BCF0 CB C1 00 80 */ lfd f30, 0x80(r1) +/* 8023ED94 0023BCF4 E3 A1 00 78 */ psq_l f29, 120(r1), 0, qr0 +/* 8023ED98 0023BCF8 CB A1 00 70 */ lfd f29, 0x70(r1) +/* 8023ED9C 0023BCFC E3 81 00 68 */ psq_l f28, 104(r1), 0, qr0 +/* 8023EDA0 0023BD00 CB 81 00 60 */ lfd f28, 0x60(r1) +/* 8023EDA4 0023BD04 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 8023EDA8 0023BD08 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 8023EDAC 0023BD0C 83 A1 00 54 */ lwz r29, 0x54(r1) +/* 8023EDB0 0023BD10 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 8023EDB4 0023BD14 83 81 00 50 */ lwz r28, 0x50(r1) +/* 8023EDB8 0023BD18 7C 08 03 A6 */ mtlr r0 +/* 8023EDBC 0023BD1C 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 8023EDC0 0023BD20 4E 80 00 20 */ blr + +.global "GetFailsafeBezierPoint__11CBallCameraFRCQ24rstl18vector<9CVector3f>f" +"GetFailsafeBezierPoint__11CBallCameraFRCQ24rstl18vector<9CVector3f>f": +/* 8023EDC4 0023BD24 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8023EDC8 0023BD28 7C 08 02 A6 */ mflr r0 +/* 8023EDCC 0023BD2C C8 62 B7 B8 */ lfd f3, lbl_805AD4D8@sda21(r2) +/* 8023EDD0 0023BD30 38 E0 00 00 */ li r7, 0 +/* 8023EDD4 0023BD34 90 01 00 24 */ stw r0, 0x24(r1) +/* 8023EDD8 0023BD38 3C 00 43 30 */ lis r0, 0x4330 +/* 8023EDDC 0023BD3C C0 02 B7 A4 */ lfs f0, lbl_805AD4C4@sda21(r2) +/* 8023EDE0 0023BD40 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8023EDE4 0023BD44 7C 7F 1B 78 */ mr r31, r3 +/* 8023EDE8 0023BD48 80 A4 00 04 */ lwz r5, 4(r4) +/* 8023EDEC 0023BD4C 90 01 00 08 */ stw r0, 8(r1) +/* 8023EDF0 0023BD50 38 05 FF FD */ addi r0, r5, -3 +/* 8023EDF4 0023BD54 6C 00 80 00 */ xoris r0, r0, 0x8000 +/* 8023EDF8 0023BD58 90 01 00 0C */ stw r0, 0xc(r1) +/* 8023EDFC 0023BD5C C8 41 00 08 */ lfd f2, 8(r1) +/* 8023EE00 0023BD60 EC 42 18 28 */ fsubs f2, f2, f3 +/* 8023EE04 0023BD64 EC 21 00 B2 */ fmuls f1, f1, f2 +/* 8023EE08 0023BD68 48 00 00 0C */ b lbl_8023EE14 +lbl_8023EE0C: +/* 8023EE0C 0023BD6C EC 21 00 28 */ fsubs f1, f1, f0 +/* 8023EE10 0023BD70 38 E7 00 01 */ addi r7, r7, 1 +lbl_8023EE14: +/* 8023EE14 0023BD74 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8023EE18 0023BD78 41 81 FF F4 */ bgt lbl_8023EE0C +/* 8023EE1C 0023BD7C 38 67 00 03 */ addi r3, r7, 3 +/* 8023EE20 0023BD80 38 A7 00 01 */ addi r5, r7, 1 +/* 8023EE24 0023BD84 38 07 00 02 */ addi r0, r7, 2 +/* 8023EE28 0023BD88 81 04 00 0C */ lwz r8, 0xc(r4) +/* 8023EE2C 0023BD8C 1C C3 00 0C */ mulli r6, r3, 0xc +/* 8023EE30 0023BD90 7F E3 FB 78 */ mr r3, r31 +/* 8023EE34 0023BD94 1C 87 00 0C */ mulli r4, r7, 0xc +/* 8023EE38 0023BD98 7C E8 32 14 */ add r7, r8, r6 +/* 8023EE3C 0023BD9C 1C A5 00 0C */ mulli r5, r5, 0xc +/* 8023EE40 0023BDA0 7C 88 22 14 */ add r4, r8, r4 +/* 8023EE44 0023BDA4 1C 00 00 0C */ mulli r0, r0, 0xc +/* 8023EE48 0023BDA8 7C A8 2A 14 */ add r5, r8, r5 +/* 8023EE4C 0023BDAC 7C C8 02 14 */ add r6, r8, r0 +/* 8023EE50 0023BDB0 48 0D 60 C9 */ bl GetBezierPoint__5CMathFRC9CVector3fRC9CVector3fRC9CVector3fRC9CVector3ff +/* 8023EE54 0023BDB4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8023EE58 0023BDB8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8023EE5C 0023BDBC 7C 08 03 A6 */ mtlr r0 +/* 8023EE60 0023BDC0 38 21 00 20 */ addi r1, r1, 0x20 +/* 8023EE64 0023BDC4 4E 80 00 20 */ blr + +.global CheckTransitionLineOfSight__11CBallCameraFRC9CVector3fRC9CVector3fRffR13CStateManager +CheckTransitionLineOfSight__11CBallCameraFRC9CVector3fRC9CVector3fRffR13CStateManager: +/* 8023EE68 0023BDC8 94 21 DB 00 */ stwu r1, -0x2500(r1) +/* 8023EE6C 0023BDCC 7C 08 02 A6 */ mflr r0 +/* 8023EE70 0023BDD0 90 01 25 04 */ stw r0, 0x2504(r1) +/* 8023EE74 0023BDD4 38 00 24 F8 */ li r0, 0x24f8 +/* 8023EE78 0023BDD8 DB E1 24 F0 */ stfd f31, 0x24f0(r1) +/* 8023EE7C 0023BDDC 13 E1 00 0E */ psq_stx f31, r1, r0, 0, qr0 +/* 8023EE80 0023BDE0 38 00 24 E8 */ li r0, 0x24e8 +/* 8023EE84 0023BDE4 DB C1 24 E0 */ stfd f30, 0x24e0(r1) +/* 8023EE88 0023BDE8 13 C1 00 0E */ psq_stx f30, r1, r0, 0, qr0 +/* 8023EE8C 0023BDEC 38 00 24 D8 */ li r0, 0x24d8 +/* 8023EE90 0023BDF0 DB A1 24 D0 */ stfd f29, 0x24d0(r1) +/* 8023EE94 0023BDF4 13 A1 00 0E */ psq_stx f29, r1, r0, 0, qr0 +/* 8023EE98 0023BDF8 38 00 24 C8 */ li r0, 0x24c8 +/* 8023EE9C 0023BDFC DB 81 24 C0 */ stfd f28, 0x24c0(r1) +/* 8023EEA0 0023BE00 13 81 00 0E */ psq_stx f28, r1, r0, 0, qr0 +/* 8023EEA4 0023BE04 BF 41 24 A8 */ stmw r26, 0x24a8(r1) +/* 8023EEA8 0023BE08 7C 7C 1B 78 */ mr r28, r3 +/* 8023EEAC 0023BE0C 7C 9A 23 78 */ mr r26, r4 +/* 8023EEB0 0023BE10 C0 84 00 04 */ lfs f4, 4(r4) +/* 8023EEB4 0023BE14 FF A0 08 90 */ fmr f29, f1 +/* 8023EEB8 0023BE18 C0 03 00 04 */ lfs f0, 4(r3) +/* 8023EEBC 0023BE1C 7C BD 2B 78 */ mr r29, r5 +/* 8023EEC0 0023BE20 C0 64 00 08 */ lfs f3, 8(r4) +/* 8023EEC4 0023BE24 7C DE 33 78 */ mr r30, r6 +/* 8023EEC8 0023BE28 C0 43 00 08 */ lfs f2, 8(r3) +/* 8023EECC 0023BE2C EC 84 00 28 */ fsubs f4, f4, f0 +/* 8023EED0 0023BE30 C0 24 00 00 */ lfs f1, 0(r4) +/* 8023EED4 0023BE34 C0 03 00 00 */ lfs f0, 0(r3) +/* 8023EED8 0023BE38 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8023EEDC 0023BE3C 38 61 00 58 */ addi r3, r1, 0x58 +/* 8023EEE0 0023BE40 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8023EEE4 0023BE44 D0 81 00 5C */ stfs f4, 0x5c(r1) +/* 8023EEE8 0023BE48 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 8023EEEC 0023BE4C D0 41 00 60 */ stfs f2, 0x60(r1) +/* 8023EEF0 0023BE50 48 0D 59 C9 */ bl Magnitude__9CVector3fCFv +/* 8023EEF4 0023BE54 FF E0 08 90 */ fmr f31, f1 +/* 8023EEF8 0023BE58 C0 22 B7 A4 */ lfs f1, lbl_805AD4C4@sda21(r2) +/* 8023EEFC 0023BE5C C0 02 B7 C0 */ lfs f0, lbl_805AD4E0@sda21(r2) +/* 8023EF00 0023BE60 3B E0 00 01 */ li r31, 1 +/* 8023EF04 0023BE64 C0 61 00 58 */ lfs f3, 0x58(r1) +/* 8023EF08 0023BE68 EC 81 F8 24 */ fdivs f4, f1, f31 +/* 8023EF0C 0023BE6C C0 41 00 5C */ lfs f2, 0x5c(r1) +/* 8023EF10 0023BE70 C0 21 00 60 */ lfs f1, 0x60(r1) +/* 8023EF14 0023BE74 EC 64 00 F2 */ fmuls f3, f4, f3 +/* 8023EF18 0023BE78 EC 44 00 B2 */ fmuls f2, f4, f2 +/* 8023EF1C 0023BE7C EC 24 00 72 */ fmuls f1, f4, f1 +/* 8023EF20 0023BE80 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 8023EF24 0023BE84 D0 61 00 4C */ stfs f3, 0x4c(r1) +/* 8023EF28 0023BE88 D0 41 00 50 */ stfs f2, 0x50(r1) +/* 8023EF2C 0023BE8C D0 21 00 54 */ stfs f1, 0x54(r1) +/* 8023EF30 0023BE90 40 81 03 B0 */ ble lbl_8023F2E0 +/* 8023EF34 0023BE94 3C 60 80 5A */ lis r3, lbl_805A6754@ha +/* 8023EF38 0023BE98 C0 02 B7 C4 */ lfs f0, lbl_805AD4E4@sda21(r2) +/* 8023EF3C 0023BE9C 38 A3 67 54 */ addi r5, r3, lbl_805A6754@l +/* 8023EF40 0023BEA0 7F 84 E3 78 */ mr r4, r28 +/* 8023EF44 0023BEA4 C0 A5 00 00 */ lfs f5, 0(r5) +/* 8023EF48 0023BEA8 EF C0 07 72 */ fmuls f30, f0, f29 +/* 8023EF4C 0023BEAC C0 85 00 04 */ lfs f4, 4(r5) +/* 8023EF50 0023BEB0 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 8023EF54 0023BEB4 C0 65 00 08 */ lfs f3, 8(r5) +/* 8023EF58 0023BEB8 C0 45 00 0C */ lfs f2, 0xc(r5) +/* 8023EF5C 0023BEBC C0 25 00 10 */ lfs f1, 0x10(r5) +/* 8023EF60 0023BEC0 C0 05 00 14 */ lfs f0, 0x14(r5) +/* 8023EF64 0023BEC4 D0 A1 00 B8 */ stfs f5, 0xb8(r1) +/* 8023EF68 0023BEC8 D0 81 00 BC */ stfs f4, 0xbc(r1) +/* 8023EF6C 0023BECC D0 61 00 C0 */ stfs f3, 0xc0(r1) +/* 8023EF70 0023BED0 D0 41 00 C4 */ stfs f2, 0xc4(r1) +/* 8023EF74 0023BED4 D0 21 00 C8 */ stfs f1, 0xc8(r1) +/* 8023EF78 0023BED8 D0 01 00 CC */ stfs f0, 0xcc(r1) +/* 8023EF7C 0023BEDC 48 0F 8B 8D */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 8023EF80 0023BEE0 7F 44 D3 78 */ mr r4, r26 +/* 8023EF84 0023BEE4 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 8023EF88 0023BEE8 48 0F 8B 81 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 8023EF8C 0023BEEC C0 41 00 C8 */ lfs f2, 0xc8(r1) +/* 8023EF90 0023BEF0 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 8023EF94 0023BEF4 C0 21 00 CC */ lfs f1, 0xcc(r1) +/* 8023EF98 0023BEF8 38 81 00 40 */ addi r4, r1, 0x40 +/* 8023EF9C 0023BEFC C0 01 00 C4 */ lfs f0, 0xc4(r1) +/* 8023EFA0 0023BF00 EC A2 F0 2A */ fadds f5, f2, f30 +/* 8023EFA4 0023BF04 C0 41 00 BC */ lfs f2, 0xbc(r1) +/* 8023EFA8 0023BF08 EC 81 F0 2A */ fadds f4, f1, f30 +/* 8023EFAC 0023BF0C C0 21 00 C0 */ lfs f1, 0xc0(r1) +/* 8023EFB0 0023BF10 EC 60 F0 2A */ fadds f3, f0, f30 +/* 8023EFB4 0023BF14 C0 01 00 B8 */ lfs f0, 0xb8(r1) +/* 8023EFB8 0023BF18 EC 42 F0 28 */ fsubs f2, f2, f30 +/* 8023EFBC 0023BF1C D0 A1 00 38 */ stfs f5, 0x38(r1) +/* 8023EFC0 0023BF20 EC 21 F0 28 */ fsubs f1, f1, f30 +/* 8023EFC4 0023BF24 38 A1 00 34 */ addi r5, r1, 0x34 +/* 8023EFC8 0023BF28 EC 00 F0 28 */ fsubs f0, f0, f30 +/* 8023EFCC 0023BF2C D0 61 00 34 */ stfs f3, 0x34(r1) +/* 8023EFD0 0023BF30 D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 8023EFD4 0023BF34 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 8023EFD8 0023BF38 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 8023EFDC 0023BF3C D0 21 00 48 */ stfs f1, 0x48(r1) +/* 8023EFE0 0023BF40 48 0F 95 29 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 8023EFE4 0023BF44 80 A1 00 A0 */ lwz r5, 0xa0(r1) +/* 8023EFE8 0023BF48 38 00 00 00 */ li r0, 0 +/* 8023EFEC 0023BF4C 81 61 00 A4 */ lwz r11, 0xa4(r1) +/* 8023EFF0 0023BF50 7F C3 F3 78 */ mr r3, r30 +/* 8023EFF4 0023BF54 81 41 00 A8 */ lwz r10, 0xa8(r1) +/* 8023EFF8 0023BF58 38 81 1C A4 */ addi r4, r1, 0x1ca4 +/* 8023EFFC 0023BF5C 81 21 00 AC */ lwz r9, 0xac(r1) +/* 8023F000 0023BF60 38 C1 00 B8 */ addi r6, r1, 0xb8 +/* 8023F004 0023BF64 81 01 00 B0 */ lwz r8, 0xb0(r1) +/* 8023F008 0023BF68 80 E1 00 B4 */ lwz r7, 0xb4(r1) +/* 8023F00C 0023BF6C 90 A1 00 B8 */ stw r5, 0xb8(r1) +/* 8023F010 0023BF70 80 BE 08 4C */ lwz r5, 0x84c(r30) +/* 8023F014 0023BF74 91 61 00 BC */ stw r11, 0xbc(r1) +/* 8023F018 0023BF78 91 41 00 C0 */ stw r10, 0xc0(r1) +/* 8023F01C 0023BF7C 91 21 00 C4 */ stw r9, 0xc4(r1) +/* 8023F020 0023BF80 91 01 00 C8 */ stw r8, 0xc8(r1) +/* 8023F024 0023BF84 90 E1 00 CC */ stw r7, 0xcc(r1) +/* 8023F028 0023BF88 90 01 1C A4 */ stw r0, 0x1ca4(r1) +/* 8023F02C 0023BF8C 4B E0 D6 D1 */ bl "BuildColliderList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CActorRC6CAABox" +/* 8023F030 0023BF90 38 61 01 60 */ addi r3, r1, 0x160 +/* 8023F034 0023BF94 38 81 00 B8 */ addi r4, r1, 0xb8 +/* 8023F038 0023BF98 48 06 4A 59 */ bl __ct__19CAreaCollisionCacheFRC6CAABox +/* 8023F03C 0023BF9C 7F C3 F3 78 */ mr r3, r30 +/* 8023F040 0023BFA0 38 81 01 60 */ addi r4, r1, 0x160 +/* 8023F044 0023BFA4 4B F4 56 81 */ bl BuildAreaCollisionCache__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCache +/* 8023F048 0023BFA8 88 01 1C A0 */ lbz r0, 0x1ca0(r1) +/* 8023F04C 0023BFAC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8023F050 0023BFB0 41 82 00 08 */ beq lbl_8023F058 +/* 8023F054 0023BFB4 3B E0 00 00 */ li r31, 0 +lbl_8023F058: +/* 8023F058 0023BFB8 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 8023F05C 0023BFBC 41 82 01 98 */ beq lbl_8023F1F4 +/* 8023F060 0023BFC0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8023F064 0023BFC4 38 61 01 00 */ addi r3, r1, 0x100 +/* 8023F068 0023BFC8 38 80 00 00 */ li r4, 0 +/* 8023F06C 0023BFCC B0 01 00 10 */ sth r0, 0x10(r1) +/* 8023F070 0023BFD0 48 08 F1 19 */ bl __ct__14CCollisionInfoFQ214CCollisionInfo8EInvalid +/* 8023F074 0023BFD4 38 00 00 00 */ li r0, 0 +/* 8023F078 0023BFD8 80 AD 96 90 */ lwz r5, lbl_805A8250@sda21(r13) +/* 8023F07C 0023BFDC DB E1 00 20 */ stfd f31, 0x20(r1) +/* 8023F080 0023BFE0 38 60 00 00 */ li r3, 0 +/* 8023F084 0023BFE4 38 80 00 01 */ li r4, 1 +/* 8023F088 0023BFE8 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8023F08C 0023BFEC 90 01 00 18 */ stw r0, 0x18(r1) +/* 8023F090 0023BFF0 48 14 AE 65 */ bl __shl2i +/* 8023F094 0023BFF4 80 01 00 18 */ lwz r0, 0x18(r1) +/* 8023F098 0023BFF8 3C A0 80 5A */ lis r5, skZero3f@ha +/* 8023F09C 0023BFFC C7 C5 66 A0 */ lfsu f30, skZero3f@l(r5) +/* 8023F0A0 0023C000 7C 00 1B 78 */ or r0, r0, r3 +/* 8023F0A4 0023C004 80 C1 00 1C */ lwz r6, 0x1c(r1) +/* 8023F0A8 0023C008 90 01 00 18 */ stw r0, 0x18(r1) +/* 8023F0AC 0023C00C 38 61 00 80 */ addi r3, r1, 0x80 +/* 8023F0B0 0023C010 7C C4 23 78 */ or r4, r6, r4 +/* 8023F0B4 0023C014 C3 E5 00 04 */ lfs f31, 4(r5) +/* 8023F0B8 0023C018 90 81 00 1C */ stw r4, 0x1c(r1) +/* 8023F0BC 0023C01C 38 81 00 18 */ addi r4, r1, 0x18 +/* 8023F0C0 0023C020 C3 85 00 08 */ lfs f28, 8(r5) +/* 8023F0C4 0023C024 48 09 07 F1 */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList +/* 8023F0C8 0023C028 80 E1 00 4C */ lwz r7, 0x4c(r1) +/* 8023F0CC 0023C02C 3C 60 80 3F */ lis r3, lbl_803ECAF8@ha +/* 8023F0D0 0023C030 39 03 CA F8 */ addi r8, r3, lbl_803ECAF8@l +/* 8023F0D4 0023C034 80 C1 00 50 */ lwz r6, 0x50(r1) +/* 8023F0D8 0023C038 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8023F0DC 0023C03C 38 60 00 00 */ li r3, 0 +/* 8023F0E0 0023C040 80 AD 96 98 */ lwz r5, lbl_805A8258@sda21(r13) +/* 8023F0E4 0023C044 38 80 00 01 */ li r4, 1 +/* 8023F0E8 0023C048 91 01 00 80 */ stw r8, 0x80(r1) +/* 8023F0EC 0023C04C D3 C1 00 90 */ stfs f30, 0x90(r1) +/* 8023F0F0 0023C050 D3 E1 00 94 */ stfs f31, 0x94(r1) +/* 8023F0F4 0023C054 D3 81 00 98 */ stfs f28, 0x98(r1) +/* 8023F0F8 0023C058 D3 A1 00 9C */ stfs f29, 0x9c(r1) +/* 8023F0FC 0023C05C 90 E1 00 28 */ stw r7, 0x28(r1) +/* 8023F100 0023C060 90 C1 00 2C */ stw r6, 0x2c(r1) +/* 8023F104 0023C064 90 01 00 30 */ stw r0, 0x30(r1) +/* 8023F108 0023C068 48 14 AD ED */ bl __shl2i +/* 8023F10C 0023C06C 80 AD 96 9C */ lwz r5, lbl_805A825C@sda21(r13) +/* 8023F110 0023C070 7C 9A 23 78 */ mr r26, r4 +/* 8023F114 0023C074 7C 7B 1B 78 */ mr r27, r3 +/* 8023F118 0023C078 38 60 00 00 */ li r3, 0 +/* 8023F11C 0023C07C 38 80 00 01 */ li r4, 1 +/* 8023F120 0023C080 48 14 AD D5 */ bl __shl2i +/* 8023F124 0023C084 80 AD 96 A0 */ lwz r5, lbl_805A8260@sda21(r13) +/* 8023F128 0023C088 7F 5A 23 78 */ or r26, r26, r4 +/* 8023F12C 0023C08C 7F 7B 1B 78 */ or r27, r27, r3 +/* 8023F130 0023C090 38 60 00 00 */ li r3, 0 +/* 8023F134 0023C094 38 80 00 01 */ li r4, 1 +/* 8023F138 0023C098 48 14 AD BD */ bl __shl2i +/* 8023F13C 0023C09C 80 AD 96 A4 */ lwz r5, lbl_805A8264@sda21(r13) +/* 8023F140 0023C0A0 7F 5A 23 78 */ or r26, r26, r4 +/* 8023F144 0023C0A4 7F 7B 1B 78 */ or r27, r27, r3 +/* 8023F148 0023C0A8 38 60 00 00 */ li r3, 0 +/* 8023F14C 0023C0AC 38 80 00 01 */ li r4, 1 +/* 8023F150 0023C0B0 48 14 AD A5 */ bl __shl2i +/* 8023F154 0023C0B4 80 AD 96 94 */ lwz r5, lbl_805A8254@sda21(r13) +/* 8023F158 0023C0B8 7F 5A 23 78 */ or r26, r26, r4 +/* 8023F15C 0023C0BC 7F 7B 1B 78 */ or r27, r27, r3 +/* 8023F160 0023C0C0 38 60 00 00 */ li r3, 0 +/* 8023F164 0023C0C4 38 80 00 01 */ li r4, 1 +/* 8023F168 0023C0C8 48 14 AD 8D */ bl __shl2i +/* 8023F16C 0023C0CC 38 00 00 03 */ li r0, 3 +/* 8023F170 0023C0D0 90 81 00 6C */ stw r4, 0x6c(r1) +/* 8023F174 0023C0D4 7F 84 E3 78 */ mr r4, r28 +/* 8023F178 0023C0D8 90 61 00 68 */ stw r3, 0x68(r1) +/* 8023F17C 0023C0DC 38 61 00 D0 */ addi r3, r1, 0xd0 +/* 8023F180 0023C0E0 93 41 00 74 */ stw r26, 0x74(r1) +/* 8023F184 0023C0E4 93 61 00 70 */ stw r27, 0x70(r1) +/* 8023F188 0023C0E8 90 01 00 78 */ stw r0, 0x78(r1) +/* 8023F18C 0023C0EC 48 0D 3F B5 */ bl Translate__12CTransform4fFRC9CVector3f +/* 8023F190 0023C0F0 38 61 01 00 */ addi r3, r1, 0x100 +/* 8023F194 0023C0F4 38 01 00 20 */ addi r0, r1, 0x20 +/* 8023F198 0023C0F8 90 61 00 08 */ stw r3, 8(r1) +/* 8023F19C 0023C0FC 7F C3 F3 78 */ mr r3, r30 +/* 8023F1A0 0023C100 38 81 01 60 */ addi r4, r1, 0x160 +/* 8023F1A4 0023C104 38 A1 00 80 */ addi r5, r1, 0x80 +/* 8023F1A8 0023C108 90 01 00 0C */ stw r0, 0xc(r1) +/* 8023F1AC 0023C10C 38 C1 00 D0 */ addi r6, r1, 0xd0 +/* 8023F1B0 0023C110 38 E1 00 68 */ addi r7, r1, 0x68 +/* 8023F1B4 0023C114 39 01 1C A4 */ addi r8, r1, 0x1ca4 +/* 8023F1B8 0023C118 39 21 00 28 */ addi r9, r1, 0x28 +/* 8023F1BC 0023C11C 39 41 00 10 */ addi r10, r1, 0x10 +/* 8023F1C0 0023C120 4B F4 51 2D */ bl "DetectCollision_Cached_Moving__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>9CVector3fR9TUniqueIdR14CCollisionInfoRd" +/* 8023F1C4 0023C124 3C 80 80 3F */ lis r4, lbl_803ECAF8@ha +/* 8023F1C8 0023C128 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8023F1CC 0023C12C 38 84 CA F8 */ addi r4, r4, lbl_803ECAF8@l +/* 8023F1D0 0023C130 3C 60 80 3E */ lis r3, lbl_803D97E4@ha +/* 8023F1D4 0023C134 90 81 00 80 */ stw r4, 0x80(r1) +/* 8023F1D8 0023C138 38 63 97 E4 */ addi r3, r3, lbl_803D97E4@l +/* 8023F1DC 0023C13C 90 61 00 80 */ stw r3, 0x80(r1) +/* 8023F1E0 0023C140 41 82 00 14 */ beq lbl_8023F1F4 +/* 8023F1E4 0023C144 C8 01 00 20 */ lfd f0, 0x20(r1) +/* 8023F1E8 0023C148 3B E0 00 00 */ li r31, 0 +/* 8023F1EC 0023C14C FC 00 00 18 */ frsp f0, f0 +/* 8023F1F0 0023C150 D0 1D 00 00 */ stfs f0, 0(r29) +lbl_8023F1F4: +/* 8023F1F4 0023C154 34 E1 01 78 */ addic. r7, r1, 0x178 +/* 8023F1F8 0023C158 41 82 00 94 */ beq lbl_8023F28C +/* 8023F1FC 0023C15C 38 C7 00 04 */ addi r6, r7, 4 +/* 8023F200 0023C160 38 60 00 00 */ li r3, 0 +/* 8023F204 0023C164 48 00 00 74 */ b lbl_8023F278 +lbl_8023F208: +/* 8023F208 0023C168 28 06 00 00 */ cmplwi r6, 0 +/* 8023F20C 0023C16C 41 82 00 64 */ beq lbl_8023F270 +/* 8023F210 0023C170 34 06 00 04 */ addic. r0, r6, 4 +/* 8023F214 0023C174 41 82 00 5C */ beq lbl_8023F270 +/* 8023F218 0023C178 81 06 00 04 */ lwz r8, 4(r6) +/* 8023F21C 0023C17C 38 80 00 00 */ li r4, 0 +/* 8023F220 0023C180 2C 08 00 00 */ cmpwi r8, 0 +/* 8023F224 0023C184 40 81 00 44 */ ble lbl_8023F268 +/* 8023F228 0023C188 2C 08 00 08 */ cmpwi r8, 8 +/* 8023F22C 0023C18C 38 A8 FF F8 */ addi r5, r8, -8 +/* 8023F230 0023C190 40 81 00 20 */ ble lbl_8023F250 +/* 8023F234 0023C194 38 05 00 07 */ addi r0, r5, 7 +/* 8023F238 0023C198 54 00 E8 FE */ srwi r0, r0, 3 +/* 8023F23C 0023C19C 7C 09 03 A6 */ mtctr r0 +/* 8023F240 0023C1A0 2C 05 00 00 */ cmpwi r5, 0 +/* 8023F244 0023C1A4 40 81 00 0C */ ble lbl_8023F250 +lbl_8023F248: +/* 8023F248 0023C1A8 38 84 00 08 */ addi r4, r4, 8 +/* 8023F24C 0023C1AC 42 00 FF FC */ bdnz lbl_8023F248 +lbl_8023F250: +/* 8023F250 0023C1B0 7C 04 40 50 */ subf r0, r4, r8 +/* 8023F254 0023C1B4 7C 09 03 A6 */ mtctr r0 +/* 8023F258 0023C1B8 7C 04 40 00 */ cmpw r4, r8 +/* 8023F25C 0023C1BC 40 80 00 0C */ bge lbl_8023F268 +lbl_8023F260: +/* 8023F260 0023C1C0 38 84 00 01 */ addi r4, r4, 1 +/* 8023F264 0023C1C4 42 00 FF FC */ bdnz lbl_8023F260 +lbl_8023F268: +/* 8023F268 0023C1C8 38 00 00 00 */ li r0, 0 +/* 8023F26C 0023C1CC 90 06 00 04 */ stw r0, 4(r6) +lbl_8023F270: +/* 8023F270 0023C1D0 38 C6 09 0C */ addi r6, r6, 0x90c +/* 8023F274 0023C1D4 38 63 00 01 */ addi r3, r3, 1 +lbl_8023F278: +/* 8023F278 0023C1D8 80 07 00 00 */ lwz r0, 0(r7) +/* 8023F27C 0023C1DC 7C 03 00 00 */ cmpw r3, r0 +/* 8023F280 0023C1E0 41 80 FF 88 */ blt lbl_8023F208 +/* 8023F284 0023C1E4 38 00 00 00 */ li r0, 0 +/* 8023F288 0023C1E8 90 07 00 00 */ stw r0, 0(r7) +lbl_8023F28C: +/* 8023F28C 0023C1EC 80 A1 1C A4 */ lwz r5, 0x1ca4(r1) +/* 8023F290 0023C1F0 38 60 00 00 */ li r3, 0 +/* 8023F294 0023C1F4 2C 05 00 00 */ cmpwi r5, 0 +/* 8023F298 0023C1F8 40 81 00 40 */ ble lbl_8023F2D8 +/* 8023F29C 0023C1FC 2C 05 00 08 */ cmpwi r5, 8 +/* 8023F2A0 0023C200 38 85 FF F8 */ addi r4, r5, -8 +/* 8023F2A4 0023C204 40 81 00 20 */ ble lbl_8023F2C4 +/* 8023F2A8 0023C208 38 04 00 07 */ addi r0, r4, 7 +/* 8023F2AC 0023C20C 54 00 E8 FE */ srwi r0, r0, 3 +/* 8023F2B0 0023C210 7C 09 03 A6 */ mtctr r0 +/* 8023F2B4 0023C214 2C 04 00 00 */ cmpwi r4, 0 +/* 8023F2B8 0023C218 40 81 00 0C */ ble lbl_8023F2C4 +lbl_8023F2BC: +/* 8023F2BC 0023C21C 38 63 00 08 */ addi r3, r3, 8 +/* 8023F2C0 0023C220 42 00 FF FC */ bdnz lbl_8023F2BC +lbl_8023F2C4: +/* 8023F2C4 0023C224 7C 03 28 50 */ subf r0, r3, r5 +/* 8023F2C8 0023C228 7C 09 03 A6 */ mtctr r0 +/* 8023F2CC 0023C22C 7C 03 28 00 */ cmpw r3, r5 +/* 8023F2D0 0023C230 40 80 00 08 */ bge lbl_8023F2D8 +lbl_8023F2D4: +/* 8023F2D4 0023C234 42 00 00 00 */ bdnz lbl_8023F2D4 +lbl_8023F2D8: +/* 8023F2D8 0023C238 38 00 00 00 */ li r0, 0 +/* 8023F2DC 0023C23C 90 01 1C A4 */ stw r0, 0x1ca4(r1) +lbl_8023F2E0: +/* 8023F2E0 0023C240 57 E0 06 3E */ clrlwi r0, r31, 0x18 +/* 8023F2E4 0023C244 7C 00 00 34 */ cntlzw r0, r0 +/* 8023F2E8 0023C248 54 03 D9 7E */ srwi r3, r0, 5 +/* 8023F2EC 0023C24C 38 00 24 F8 */ li r0, 0x24f8 +/* 8023F2F0 0023C250 13 E1 00 0C */ psq_lx f31, r1, r0, 0, qr0 +/* 8023F2F4 0023C254 CB E1 24 F0 */ lfd f31, 0x24f0(r1) +/* 8023F2F8 0023C258 38 00 24 E8 */ li r0, 0x24e8 +/* 8023F2FC 0023C25C 13 C1 00 0C */ psq_lx f30, r1, r0, 0, qr0 +/* 8023F300 0023C260 CB C1 24 E0 */ lfd f30, 0x24e0(r1) +/* 8023F304 0023C264 38 00 24 D8 */ li r0, 0x24d8 +/* 8023F308 0023C268 13 A1 00 0C */ psq_lx f29, r1, r0, 0, qr0 +/* 8023F30C 0023C26C CB A1 24 D0 */ lfd f29, 0x24d0(r1) +/* 8023F310 0023C270 38 00 24 C8 */ li r0, 0x24c8 +/* 8023F314 0023C274 13 81 00 0C */ psq_lx f28, r1, r0, 0, qr0 +/* 8023F318 0023C278 CB 81 24 C0 */ lfd f28, 0x24c0(r1) +/* 8023F31C 0023C27C BB 41 24 A8 */ lmw r26, 0x24a8(r1) +/* 8023F320 0023C280 80 01 25 04 */ lwz r0, 0x2504(r1) +/* 8023F324 0023C284 7C 08 03 A6 */ mtlr r0 +/* 8023F328 0023C288 38 21 25 00 */ addi r1, r1, 0x2500 +/* 8023F32C 0023C28C 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CCollisionActor.s b/asm/Kyoto_CWD/CCollisionActor.s new file mode 100644 index 00000000..c7b51639 --- /dev/null +++ b/asm/Kyoto_CWD/CCollisionActor.s @@ -0,0 +1,1771 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__15CCollisionActorFv +__dt__15CCollisionActorFv: +/* 801A88CC 001A582C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801A88D0 001A5830 7C 08 02 A6 */ mflr r0 +/* 801A88D4 001A5834 90 01 00 14 */ stw r0, 0x14(r1) +/* 801A88D8 001A5838 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801A88DC 001A583C 7C 9F 23 78 */ mr r31, r4 +/* 801A88E0 001A5840 93 C1 00 08 */ stw r30, 8(r1) +/* 801A88E4 001A5844 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801A88E8 001A5848 41 82 00 B0 */ beq lbl_801A8998 +/* 801A88EC 001A584C 3C 60 80 3E */ lis r3, lbl_803E4B18@ha +/* 801A88F0 001A5850 34 1E 02 84 */ addic. r0, r30, 0x284 +/* 801A88F4 001A5854 38 03 4B 18 */ addi r0, r3, lbl_803E4B18@l +/* 801A88F8 001A5858 90 1E 00 00 */ stw r0, 0(r30) +/* 801A88FC 001A585C 41 82 00 24 */ beq lbl_801A8920 +/* 801A8900 001A5860 80 7E 02 84 */ lwz r3, 0x284(r30) +/* 801A8904 001A5864 28 03 00 00 */ cmplwi r3, 0 +/* 801A8908 001A5868 41 82 00 18 */ beq lbl_801A8920 +/* 801A890C 001A586C 81 83 00 00 */ lwz r12, 0(r3) +/* 801A8910 001A5870 38 80 00 01 */ li r4, 1 +/* 801A8914 001A5874 81 8C 00 20 */ lwz r12, 0x20(r12) +/* 801A8918 001A5878 7D 89 03 A6 */ mtctr r12 +/* 801A891C 001A587C 4E 80 04 21 */ bctrl +lbl_801A8920: +/* 801A8920 001A5880 34 1E 02 80 */ addic. r0, r30, 0x280 +/* 801A8924 001A5884 41 82 00 24 */ beq lbl_801A8948 +/* 801A8928 001A5888 80 7E 02 80 */ lwz r3, 0x280(r30) +/* 801A892C 001A588C 28 03 00 00 */ cmplwi r3, 0 +/* 801A8930 001A5890 41 82 00 18 */ beq lbl_801A8948 +/* 801A8934 001A5894 81 83 00 00 */ lwz r12, 0(r3) +/* 801A8938 001A5898 38 80 00 01 */ li r4, 1 +/* 801A893C 001A589C 81 8C 00 20 */ lwz r12, 0x20(r12) +/* 801A8940 001A58A0 7D 89 03 A6 */ mtctr r12 +/* 801A8944 001A58A4 4E 80 04 21 */ bctrl +lbl_801A8948: +/* 801A8948 001A58A8 34 1E 02 7C */ addic. r0, r30, 0x27c +/* 801A894C 001A58AC 41 82 00 24 */ beq lbl_801A8970 +/* 801A8950 001A58B0 80 7E 02 7C */ lwz r3, 0x27c(r30) +/* 801A8954 001A58B4 28 03 00 00 */ cmplwi r3, 0 +/* 801A8958 001A58B8 41 82 00 18 */ beq lbl_801A8970 +/* 801A895C 001A58BC 81 83 00 00 */ lwz r12, 0(r3) +/* 801A8960 001A58C0 38 80 00 01 */ li r4, 1 +/* 801A8964 001A58C4 81 8C 00 20 */ lwz r12, 0x20(r12) +/* 801A8968 001A58C8 7D 89 03 A6 */ mtctr r12 +/* 801A896C 001A58CC 4E 80 04 21 */ bctrl +lbl_801A8970: +/* 801A8970 001A58D0 38 7E 02 78 */ addi r3, r30, 0x278 +/* 801A8974 001A58D4 38 80 FF FF */ li r4, -1 +/* 801A8978 001A58D8 48 00 00 3D */ bl sub_801a89b4 +/* 801A897C 001A58DC 7F C3 F3 78 */ mr r3, r30 +/* 801A8980 001A58E0 38 80 00 00 */ li r4, 0 +/* 801A8984 001A58E4 4B F7 3A 91 */ bl __dt__13CPhysicsActorFv +/* 801A8988 001A58E8 7F E0 07 35 */ extsh. r0, r31 +/* 801A898C 001A58EC 40 81 00 0C */ ble lbl_801A8998 +/* 801A8990 001A58F0 7F C3 F3 78 */ mr r3, r30 +/* 801A8994 001A58F4 48 16 CF 9D */ bl Free__7CMemoryFPCv +lbl_801A8998: +/* 801A8998 001A58F8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801A899C 001A58FC 7F C3 F3 78 */ mr r3, r30 +/* 801A89A0 001A5900 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801A89A4 001A5904 83 C1 00 08 */ lwz r30, 8(r1) +/* 801A89A8 001A5908 7C 08 03 A6 */ mtlr r0 +/* 801A89AC 001A590C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801A89B0 001A5910 4E 80 00 20 */ blr + +.global sub_801a89b4 +sub_801a89b4: +/* 801A89B4 001A5914 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801A89B8 001A5918 7C 08 02 A6 */ mflr r0 +/* 801A89BC 001A591C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801A89C0 001A5920 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801A89C4 001A5924 7C 9F 23 78 */ mr r31, r4 +/* 801A89C8 001A5928 93 C1 00 08 */ stw r30, 8(r1) +/* 801A89CC 001A592C 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801A89D0 001A5930 41 82 00 20 */ beq lbl_801A89F0 +/* 801A89D4 001A5934 80 7E 00 00 */ lwz r3, 0(r30) +/* 801A89D8 001A5938 38 80 00 01 */ li r4, 1 +/* 801A89DC 001A593C 48 00 00 31 */ bl sub_801a8a0c +/* 801A89E0 001A5940 7F E0 07 35 */ extsh. r0, r31 +/* 801A89E4 001A5944 40 81 00 0C */ ble lbl_801A89F0 +/* 801A89E8 001A5948 7F C3 F3 78 */ mr r3, r30 +/* 801A89EC 001A594C 48 16 CF 45 */ bl Free__7CMemoryFPCv +lbl_801A89F0: +/* 801A89F0 001A5950 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801A89F4 001A5954 7F C3 F3 78 */ mr r3, r30 +/* 801A89F8 001A5958 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801A89FC 001A595C 83 C1 00 08 */ lwz r30, 8(r1) +/* 801A8A00 001A5960 7C 08 03 A6 */ mtlr r0 +/* 801A8A04 001A5964 38 21 00 10 */ addi r1, r1, 0x10 +/* 801A8A08 001A5968 4E 80 00 20 */ blr + +.global sub_801a8a0c +sub_801a8a0c: +/* 801A8A0C 001A596C 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801A8A10 001A5970 7C 08 02 A6 */ mflr r0 +/* 801A8A14 001A5974 90 01 00 44 */ stw r0, 0x44(r1) +/* 801A8A18 001A5978 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801A8A1C 001A597C 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801A8A20 001A5980 93 A1 00 34 */ stw r29, 0x34(r1) +/* 801A8A24 001A5984 7C 9D 23 78 */ mr r29, r4 +/* 801A8A28 001A5988 93 81 00 30 */ stw r28, 0x30(r1) +/* 801A8A2C 001A598C 7C 7C 1B 79 */ or. r28, r3, r3 +/* 801A8A30 001A5990 41 82 00 C4 */ beq lbl_801A8AF4 +/* 801A8A34 001A5994 34 1C 00 10 */ addic. r0, r28, 0x10 +/* 801A8A38 001A5998 41 82 00 44 */ beq lbl_801A8A7C +/* 801A8A3C 001A599C 80 1C 00 14 */ lwz r0, 0x14(r28) +/* 801A8A40 001A59A0 80 7C 00 1C */ lwz r3, 0x1c(r28) +/* 801A8A44 001A59A4 1C 00 00 18 */ mulli r0, r0, 0x18 +/* 801A8A48 001A59A8 90 61 00 1C */ stw r3, 0x1c(r1) +/* 801A8A4C 001A59AC 7C 64 1B 78 */ mr r4, r3 +/* 801A8A50 001A59B0 7C 03 02 14 */ add r0, r3, r0 +/* 801A8A54 001A59B4 90 61 00 18 */ stw r3, 0x18(r1) +/* 801A8A58 001A59B8 90 01 00 24 */ stw r0, 0x24(r1) +/* 801A8A5C 001A59BC 90 01 00 20 */ stw r0, 0x20(r1) +/* 801A8A60 001A59C0 48 00 00 08 */ b lbl_801A8A68 +lbl_801A8A64: +/* 801A8A64 001A59C4 38 84 00 18 */ addi r4, r4, 0x18 +lbl_801A8A68: +/* 801A8A68 001A59C8 7C 04 00 40 */ cmplw r4, r0 +/* 801A8A6C 001A59CC 40 82 FF F8 */ bne lbl_801A8A64 +/* 801A8A70 001A59D0 28 03 00 00 */ cmplwi r3, 0 +/* 801A8A74 001A59D4 41 82 00 08 */ beq lbl_801A8A7C +/* 801A8A78 001A59D8 48 16 CE B9 */ bl Free__7CMemoryFPCv +lbl_801A8A7C: +/* 801A8A7C 001A59DC 28 1C 00 00 */ cmplwi r28, 0 +/* 801A8A80 001A59E0 41 82 00 64 */ beq lbl_801A8AE4 +/* 801A8A84 001A59E4 80 1C 00 04 */ lwz r0, 4(r28) +/* 801A8A88 001A59E8 83 DC 00 0C */ lwz r30, 0xc(r28) +/* 801A8A8C 001A59EC 54 00 18 38 */ slwi r0, r0, 3 +/* 801A8A90 001A59F0 7F FE 02 14 */ add r31, r30, r0 +/* 801A8A94 001A59F4 93 C1 00 0C */ stw r30, 0xc(r1) +/* 801A8A98 001A59F8 93 E1 00 14 */ stw r31, 0x14(r1) +/* 801A8A9C 001A59FC 93 E1 00 10 */ stw r31, 0x10(r1) +/* 801A8AA0 001A5A00 93 C1 00 08 */ stw r30, 8(r1) +/* 801A8AA4 001A5A04 48 00 00 28 */ b lbl_801A8ACC +lbl_801A8AA8: +/* 801A8AA8 001A5A08 28 1E 00 00 */ cmplwi r30, 0 +/* 801A8AAC 001A5A0C 41 82 00 1C */ beq lbl_801A8AC8 +/* 801A8AB0 001A5A10 88 1E 00 00 */ lbz r0, 0(r30) +/* 801A8AB4 001A5A14 28 00 00 00 */ cmplwi r0, 0 +/* 801A8AB8 001A5A18 41 82 00 10 */ beq lbl_801A8AC8 +/* 801A8ABC 001A5A1C 80 7E 00 04 */ lwz r3, 4(r30) +/* 801A8AC0 001A5A20 38 80 00 01 */ li r4, 1 +/* 801A8AC4 001A5A24 48 10 02 4D */ bl __dt__8COBBTreeFv +lbl_801A8AC8: +/* 801A8AC8 001A5A28 3B DE 00 08 */ addi r30, r30, 8 +lbl_801A8ACC: +/* 801A8ACC 001A5A2C 7C 1E F8 40 */ cmplw r30, r31 +/* 801A8AD0 001A5A30 40 82 FF D8 */ bne lbl_801A8AA8 +/* 801A8AD4 001A5A34 80 7C 00 0C */ lwz r3, 0xc(r28) +/* 801A8AD8 001A5A38 28 03 00 00 */ cmplwi r3, 0 +/* 801A8ADC 001A5A3C 41 82 00 08 */ beq lbl_801A8AE4 +/* 801A8AE0 001A5A40 48 16 CE 51 */ bl Free__7CMemoryFPCv +lbl_801A8AE4: +/* 801A8AE4 001A5A44 7F A0 07 35 */ extsh. r0, r29 +/* 801A8AE8 001A5A48 40 81 00 0C */ ble lbl_801A8AF4 +/* 801A8AEC 001A5A4C 7F 83 E3 78 */ mr r3, r28 +/* 801A8AF0 001A5A50 48 16 CE 41 */ bl Free__7CMemoryFPCv +lbl_801A8AF4: +/* 801A8AF4 001A5A54 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801A8AF8 001A5A58 7F 83 E3 78 */ mr r3, r28 +/* 801A8AFC 001A5A5C 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801A8B00 001A5A60 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801A8B04 001A5A64 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 801A8B08 001A5A68 83 81 00 30 */ lwz r28, 0x30(r1) +/* 801A8B0C 001A5A6C 7C 08 03 A6 */ mtlr r0 +/* 801A8B10 001A5A70 38 21 00 40 */ addi r1, r1, 0x40 +/* 801A8B14 001A5A74 4E 80 00 20 */ blr + +.global GetCollisionResponseType__15CCollisionActorCFRC9CVector3fRC9CVector3fRC11CWeaponModei +GetCollisionResponseType__15CCollisionActorCFRC9CVector3fRC9CVector3fRC11CWeaponModei: +/* 801A8B18 001A5A78 80 63 03 00 */ lwz r3, 0x300(r3) +/* 801A8B1C 001A5A7C 4E 80 00 20 */ blr + +.global sub_801a8b20 +sub_801a8b20: +/* 801A8B20 001A5A80 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801A8B24 001A5A84 80 03 02 58 */ lwz r0, 0x258(r3) +/* 801A8B28 001A5A88 2C 00 00 02 */ cmpwi r0, 2 +/* 801A8B2C 001A5A8C 40 82 00 48 */ bne lbl_801A8B74 +/* 801A8B30 001A5A90 D0 23 02 88 */ stfs f1, 0x288(r3) +/* 801A8B34 001A5A94 FC 00 08 18 */ frsp f0, f1 +/* 801A8B38 001A5A98 80 83 02 84 */ lwz r4, 0x284(r3) +/* 801A8B3C 001A5A9C D0 21 00 14 */ stfs f1, 0x14(r1) +/* 801A8B40 001A5AA0 C0 24 00 10 */ lfs f1, 0x10(r4) +/* 801A8B44 001A5AA4 C0 44 00 14 */ lfs f2, 0x14(r4) +/* 801A8B48 001A5AA8 D0 21 00 08 */ stfs f1, 8(r1) +/* 801A8B4C 001A5AAC C0 24 00 18 */ lfs f1, 0x18(r4) +/* 801A8B50 001A5AB0 D0 41 00 0C */ stfs f2, 0xc(r1) +/* 801A8B54 001A5AB4 80 01 00 08 */ lwz r0, 8(r1) +/* 801A8B58 001A5AB8 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 801A8B5C 001A5ABC 80 61 00 0C */ lwz r3, 0xc(r1) +/* 801A8B60 001A5AC0 90 04 00 10 */ stw r0, 0x10(r4) +/* 801A8B64 001A5AC4 80 01 00 10 */ lwz r0, 0x10(r1) +/* 801A8B68 001A5AC8 90 64 00 14 */ stw r3, 0x14(r4) +/* 801A8B6C 001A5ACC 90 04 00 18 */ stw r0, 0x18(r4) +/* 801A8B70 001A5AD0 D0 04 00 1C */ stfs f0, 0x1c(r4) +lbl_801A8B74: +/* 801A8B74 001A5AD4 38 21 00 20 */ addi r1, r1, 0x20 +/* 801A8B78 001A5AD8 4E 80 00 20 */ blr + +.global GetSphereRadius__15CCollisionActorCFv +GetSphereRadius__15CCollisionActorCFv: +/* 801A8B7C 001A5ADC C0 23 02 88 */ lfs f1, 0x288(r3) +/* 801A8B80 001A5AE0 4E 80 00 20 */ blr + +.global GetBoxSize__15CCollisionActorCFv +GetBoxSize__15CCollisionActorCFv: +/* 801A8B84 001A5AE4 38 63 02 60 */ addi r3, r3, 0x260 +/* 801A8B88 001A5AE8 4E 80 00 20 */ blr + +.global GetLastTouchedObject__15CCollisionActorCFv +GetLastTouchedObject__15CCollisionActorCFv: +/* 801A8B8C 001A5AEC A0 04 02 FC */ lhz r0, 0x2fc(r4) +/* 801A8B90 001A5AF0 B0 03 00 00 */ sth r0, 0(r3) +/* 801A8B94 001A5AF4 4E 80 00 20 */ blr + +.global SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability +SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability: +/* 801A8B98 001A5AF8 80 A4 00 00 */ lwz r5, 0(r4) +/* 801A8B9C 001A5AFC 80 04 00 04 */ lwz r0, 4(r4) +/* 801A8BA0 001A5B00 90 A3 02 94 */ stw r5, 0x294(r3) +/* 801A8BA4 001A5B04 90 03 02 98 */ stw r0, 0x298(r3) +/* 801A8BA8 001A5B08 80 A4 00 08 */ lwz r5, 8(r4) +/* 801A8BAC 001A5B0C 80 04 00 0C */ lwz r0, 0xc(r4) +/* 801A8BB0 001A5B10 90 A3 02 9C */ stw r5, 0x29c(r3) +/* 801A8BB4 001A5B14 90 03 02 A0 */ stw r0, 0x2a0(r3) +/* 801A8BB8 001A5B18 80 A4 00 10 */ lwz r5, 0x10(r4) +/* 801A8BBC 001A5B1C 80 04 00 14 */ lwz r0, 0x14(r4) +/* 801A8BC0 001A5B20 90 A3 02 A4 */ stw r5, 0x2a4(r3) +/* 801A8BC4 001A5B24 90 03 02 A8 */ stw r0, 0x2a8(r3) +/* 801A8BC8 001A5B28 80 A4 00 18 */ lwz r5, 0x18(r4) +/* 801A8BCC 001A5B2C 80 04 00 1C */ lwz r0, 0x1c(r4) +/* 801A8BD0 001A5B30 90 A3 02 AC */ stw r5, 0x2ac(r3) +/* 801A8BD4 001A5B34 90 03 02 B0 */ stw r0, 0x2b0(r3) +/* 801A8BD8 001A5B38 80 A4 00 20 */ lwz r5, 0x20(r4) +/* 801A8BDC 001A5B3C 80 04 00 24 */ lwz r0, 0x24(r4) +/* 801A8BE0 001A5B40 90 A3 02 B4 */ stw r5, 0x2b4(r3) +/* 801A8BE4 001A5B44 90 03 02 B8 */ stw r0, 0x2b8(r3) +/* 801A8BE8 001A5B48 80 A4 00 28 */ lwz r5, 0x28(r4) +/* 801A8BEC 001A5B4C 80 04 00 2C */ lwz r0, 0x2c(r4) +/* 801A8BF0 001A5B50 90 A3 02 BC */ stw r5, 0x2bc(r3) +/* 801A8BF4 001A5B54 90 03 02 C0 */ stw r0, 0x2c0(r3) +/* 801A8BF8 001A5B58 80 A4 00 30 */ lwz r5, 0x30(r4) +/* 801A8BFC 001A5B5C 80 04 00 34 */ lwz r0, 0x34(r4) +/* 801A8C00 001A5B60 90 A3 02 C4 */ stw r5, 0x2c4(r3) +/* 801A8C04 001A5B64 90 03 02 C8 */ stw r0, 0x2c8(r3) +/* 801A8C08 001A5B68 80 04 00 38 */ lwz r0, 0x38(r4) +/* 801A8C0C 001A5B6C 90 03 02 CC */ stw r0, 0x2cc(r3) +/* 801A8C10 001A5B70 80 A4 00 3C */ lwz r5, 0x3c(r4) +/* 801A8C14 001A5B74 80 04 00 40 */ lwz r0, 0x40(r4) +/* 801A8C18 001A5B78 90 A3 02 D0 */ stw r5, 0x2d0(r3) +/* 801A8C1C 001A5B7C 90 03 02 D4 */ stw r0, 0x2d4(r3) +/* 801A8C20 001A5B80 80 A4 00 44 */ lwz r5, 0x44(r4) +/* 801A8C24 001A5B84 80 04 00 48 */ lwz r0, 0x48(r4) +/* 801A8C28 001A5B88 90 A3 02 D8 */ stw r5, 0x2d8(r3) +/* 801A8C2C 001A5B8C 90 03 02 DC */ stw r0, 0x2dc(r3) +/* 801A8C30 001A5B90 80 A4 00 4C */ lwz r5, 0x4c(r4) +/* 801A8C34 001A5B94 80 04 00 50 */ lwz r0, 0x50(r4) +/* 801A8C38 001A5B98 90 A3 02 E0 */ stw r5, 0x2e0(r3) +/* 801A8C3C 001A5B9C 90 03 02 E4 */ stw r0, 0x2e4(r3) +/* 801A8C40 001A5BA0 80 A4 00 54 */ lwz r5, 0x54(r4) +/* 801A8C44 001A5BA4 80 04 00 58 */ lwz r0, 0x58(r4) +/* 801A8C48 001A5BA8 90 A3 02 E8 */ stw r5, 0x2e8(r3) +/* 801A8C4C 001A5BAC 90 03 02 EC */ stw r0, 0x2ec(r3) +/* 801A8C50 001A5BB0 80 04 00 5C */ lwz r0, 0x5c(r4) +/* 801A8C54 001A5BB4 90 03 02 F0 */ stw r0, 0x2f0(r3) +/* 801A8C58 001A5BB8 80 04 00 60 */ lwz r0, 0x60(r4) +/* 801A8C5C 001A5BBC 90 03 02 F4 */ stw r0, 0x2f4(r3) +/* 801A8C60 001A5BC0 80 04 00 64 */ lwz r0, 0x64(r4) +/* 801A8C64 001A5BC4 90 03 02 F8 */ stw r0, 0x2f8(r3) +/* 801A8C68 001A5BC8 4E 80 00 20 */ blr + +.global GetDamageVulnerability__15CCollisionActorCFRC9CVector3fRC9CVector3fRC11CDamageInfo +GetDamageVulnerability__15CCollisionActorCFRC9CVector3fRC9CVector3fRC11CDamageInfo: +/* 801A8C6C 001A5BCC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801A8C70 001A5BD0 7C 08 02 A6 */ mflr r0 +/* 801A8C74 001A5BD4 90 01 00 14 */ stw r0, 0x14(r1) +/* 801A8C78 001A5BD8 81 83 00 00 */ lwz r12, 0(r3) +/* 801A8C7C 001A5BDC 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 801A8C80 001A5BE0 7D 89 03 A6 */ mtctr r12 +/* 801A8C84 001A5BE4 4E 80 04 21 */ bctrl +/* 801A8C88 001A5BE8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801A8C8C 001A5BEC 7C 08 03 A6 */ mtlr r0 +/* 801A8C90 001A5BF0 38 21 00 10 */ addi r1, r1, 0x10 +/* 801A8C94 001A5BF4 4E 80 00 20 */ blr + +.global GetDamageVulnerability__15CCollisionActorCFv +GetDamageVulnerability__15CCollisionActorCFv: +/* 801A8C98 001A5BF8 38 63 02 94 */ addi r3, r3, 0x294 +/* 801A8C9C 001A5BFC 4E 80 00 20 */ blr + +.global HealthInfo__15CCollisionActorFR13CStateManager +HealthInfo__15CCollisionActorFR13CStateManager: +/* 801A8CA0 001A5C00 38 63 02 8C */ addi r3, r3, 0x28c +/* 801A8CA4 001A5C04 4E 80 00 20 */ blr + +.global OnScanStateChange__15CCollisionActorFQ26CActor10EScanStateR13CStateManager +OnScanStateChange__15CCollisionActorFQ26CActor10EScanStateR13CStateManager: +/* 801A8CA8 001A5C08 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801A8CAC 001A5C0C 7C 08 02 A6 */ mflr r0 +/* 801A8CB0 001A5C10 90 01 00 34 */ stw r0, 0x34(r1) +/* 801A8CB4 001A5C14 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801A8CB8 001A5C18 7C BF 2B 78 */ mr r31, r5 +/* 801A8CBC 001A5C1C 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801A8CC0 001A5C20 7C 9E 23 78 */ mr r30, r4 +/* 801A8CC4 001A5C24 38 81 00 08 */ addi r4, r1, 8 +/* 801A8CC8 001A5C28 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801A8CCC 001A5C2C 7C 7D 1B 78 */ mr r29, r3 +/* 801A8CD0 001A5C30 A0 03 02 5C */ lhz r0, 0x25c(r3) +/* 801A8CD4 001A5C34 7F E3 FB 78 */ mr r3, r31 +/* 801A8CD8 001A5C38 B0 01 00 08 */ sth r0, 8(r1) +/* 801A8CDC 001A5C3C 4B EA 38 99 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801A8CE0 001A5C40 7C 64 1B 78 */ mr r4, r3 +/* 801A8CE4 001A5C44 38 61 00 0C */ addi r3, r1, 0xc +/* 801A8CE8 001A5C48 4B F0 6F A9 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 801A8CEC 001A5C4C 80 63 00 04 */ lwz r3, 4(r3) +/* 801A8CF0 001A5C50 28 03 00 00 */ cmplwi r3, 0 +/* 801A8CF4 001A5C54 41 82 00 1C */ beq lbl_801A8D10 +/* 801A8CF8 001A5C58 81 83 00 00 */ lwz r12, 0(r3) +/* 801A8CFC 001A5C5C 7F C4 F3 78 */ mr r4, r30 +/* 801A8D00 001A5C60 7F E5 FB 78 */ mr r5, r31 +/* 801A8D04 001A5C64 81 8C 00 60 */ lwz r12, 0x60(r12) +/* 801A8D08 001A5C68 7D 89 03 A6 */ mtctr r12 +/* 801A8D0C 001A5C6C 4E 80 04 21 */ bctrl +lbl_801A8D10: +/* 801A8D10 001A5C70 7F A3 EB 78 */ mr r3, r29 +/* 801A8D14 001A5C74 7F C4 F3 78 */ mr r4, r30 +/* 801A8D18 001A5C78 7F E5 FB 78 */ mr r5, r31 +/* 801A8D1C 001A5C7C 4B EA A8 55 */ bl OnScanStateChange__6CActorFQ26CActor10EScanStateR13CStateManager +/* 801A8D20 001A5C80 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801A8D24 001A5C84 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801A8D28 001A5C88 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801A8D2C 001A5C8C 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801A8D30 001A5C90 7C 08 03 A6 */ mtlr r0 +/* 801A8D34 001A5C94 38 21 00 30 */ addi r1, r1, 0x30 +/* 801A8D38 001A5C98 4E 80 00 20 */ blr + +.global AcceptScriptMsg__15CCollisionActorF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__15CCollisionActorF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 801A8D3C 001A5C9C 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801A8D40 001A5CA0 7C 08 02 A6 */ mflr r0 +/* 801A8D44 001A5CA4 90 01 00 44 */ stw r0, 0x44(r1) +/* 801A8D48 001A5CA8 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801A8D4C 001A5CAC 7C DF 33 78 */ mr r31, r6 +/* 801A8D50 001A5CB0 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801A8D54 001A5CB4 7C BE 2B 78 */ mr r30, r5 +/* 801A8D58 001A5CB8 93 A1 00 34 */ stw r29, 0x34(r1) +/* 801A8D5C 001A5CBC 7C 9D 23 78 */ mr r29, r4 +/* 801A8D60 001A5CC0 38 1D FF E6 */ addi r0, r29, -26 +/* 801A8D64 001A5CC4 28 00 00 10 */ cmplwi r0, 0x10 +/* 801A8D68 001A5CC8 93 81 00 30 */ stw r28, 0x30(r1) +/* 801A8D6C 001A5CCC 7C 7C 1B 78 */ mr r28, r3 +/* 801A8D70 001A5CD0 41 81 00 60 */ bgt lbl_801A8DD0 +/* 801A8D74 001A5CD4 3C 60 80 3E */ lis r3, lbl_803E4B9C@ha +/* 801A8D78 001A5CD8 54 00 10 3A */ slwi r0, r0, 2 +/* 801A8D7C 001A5CDC 38 63 4B 9C */ addi r3, r3, lbl_803E4B9C@l +/* 801A8D80 001A5CE0 7C 03 00 2E */ lwzx r0, r3, r0 +/* 801A8D84 001A5CE4 7C 09 03 A6 */ mtctr r0 +/* 801A8D88 001A5CE8 4E 80 04 20 */ bctr +/* 801A8D8C 001A5CEC A0 1C 02 5C */ lhz r0, 0x25c(r28) +/* 801A8D90 001A5CF0 7F E3 FB 78 */ mr r3, r31 +/* 801A8D94 001A5CF4 38 81 00 20 */ addi r4, r1, 0x20 +/* 801A8D98 001A5CF8 B0 01 00 20 */ sth r0, 0x20(r1) +/* 801A8D9C 001A5CFC 4B EA 37 D9 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801A8DA0 001A5D00 7C 64 1B 79 */ or. r4, r3, r3 +/* 801A8DA4 001A5D04 41 82 00 54 */ beq lbl_801A8DF8 +/* 801A8DA8 001A5D08 A0 1E 00 00 */ lhz r0, 0(r30) +/* 801A8DAC 001A5D0C 7F E3 FB 78 */ mr r3, r31 +/* 801A8DB0 001A5D10 7F A6 EB 78 */ mr r6, r29 +/* 801A8DB4 001A5D14 38 A1 00 1C */ addi r5, r1, 0x1c +/* 801A8DB8 001A5D18 B0 1C 02 FC */ sth r0, 0x2fc(r28) +/* 801A8DBC 001A5D1C A0 1C 00 08 */ lhz r0, 8(r28) +/* 801A8DC0 001A5D20 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801A8DC4 001A5D24 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 801A8DC8 001A5D28 4B E9 B1 09 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +/* 801A8DCC 001A5D2C 48 00 00 2C */ b lbl_801A8DF8 +lbl_801A8DD0: +/* 801A8DD0 001A5D30 A0 FC 00 08 */ lhz r7, 8(r28) +/* 801A8DD4 001A5D34 7F E3 FB 78 */ mr r3, r31 +/* 801A8DD8 001A5D38 7F A6 EB 78 */ mr r6, r29 +/* 801A8DDC 001A5D3C 38 81 00 14 */ addi r4, r1, 0x14 +/* 801A8DE0 001A5D40 B0 E1 00 10 */ sth r7, 0x10(r1) +/* 801A8DE4 001A5D44 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801A8DE8 001A5D48 A0 1C 02 5C */ lhz r0, 0x25c(r28) +/* 801A8DEC 001A5D4C B0 E1 00 0C */ sth r7, 0xc(r1) +/* 801A8DF0 001A5D50 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801A8DF4 001A5D54 4B E9 B0 61 */ bl SendScriptMsgAlways__13CStateManagerF9TUniqueId +lbl_801A8DF8: +/* 801A8DF8 001A5D58 A0 1E 00 00 */ lhz r0, 0(r30) +/* 801A8DFC 001A5D5C 7F 83 E3 78 */ mr r3, r28 +/* 801A8E00 001A5D60 7F A4 EB 78 */ mr r4, r29 +/* 801A8E04 001A5D64 7F E6 FB 78 */ mr r6, r31 +/* 801A8E08 001A5D68 B0 01 00 08 */ sth r0, 8(r1) +/* 801A8E0C 001A5D6C 38 A1 00 08 */ addi r5, r1, 8 +/* 801A8E10 001A5D70 4B EA A8 05 */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 801A8E14 001A5D74 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801A8E18 001A5D78 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801A8E1C 001A5D7C 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801A8E20 001A5D80 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 801A8E24 001A5D84 83 81 00 30 */ lwz r28, 0x30(r1) +/* 801A8E28 001A5D88 7C 08 03 A6 */ mtlr r0 +/* 801A8E2C 001A5D8C 38 21 00 40 */ addi r1, r1, 0x40 +/* 801A8E30 001A5D90 4E 80 00 20 */ blr + +.global GetPrimitiveTransform__15CCollisionActorCFv +GetPrimitiveTransform__15CCollisionActorCFv: +/* 801A8E34 001A5D94 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 801A8E38 001A5D98 7C 08 02 A6 */ mflr r0 +/* 801A8E3C 001A5D9C 90 01 00 74 */ stw r0, 0x74(r1) +/* 801A8E40 001A5DA0 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 801A8E44 001A5DA4 7C 9F 23 78 */ mr r31, r4 +/* 801A8E48 001A5DA8 38 9F 00 34 */ addi r4, r31, 0x34 +/* 801A8E4C 001A5DAC 93 C1 00 68 */ stw r30, 0x68(r1) +/* 801A8E50 001A5DB0 7C 7E 1B 78 */ mr r30, r3 +/* 801A8E54 001A5DB4 38 61 00 38 */ addi r3, r1, 0x38 +/* 801A8E58 001A5DB8 48 16 9D 1D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801A8E5C 001A5DBC 7F E4 FB 78 */ mr r4, r31 +/* 801A8E60 001A5DC0 38 61 00 08 */ addi r3, r1, 8 +/* 801A8E64 001A5DC4 4B F7 1B 69 */ bl GetPrimitiveTransform__13CPhysicsActorCFv +/* 801A8E68 001A5DC8 C0 41 00 34 */ lfs f2, 0x34(r1) +/* 801A8E6C 001A5DCC 7F C3 F3 78 */ mr r3, r30 +/* 801A8E70 001A5DD0 C0 21 00 24 */ lfs f1, 0x24(r1) +/* 801A8E74 001A5DD4 38 81 00 38 */ addi r4, r1, 0x38 +/* 801A8E78 001A5DD8 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 801A8E7C 001A5DDC D0 21 00 54 */ stfs f1, 0x54(r1) +/* 801A8E80 001A5DE0 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 801A8E84 001A5DE4 D0 41 00 64 */ stfs f2, 0x64(r1) +/* 801A8E88 001A5DE8 48 16 9C ED */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801A8E8C 001A5DEC 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801A8E90 001A5DF0 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 801A8E94 001A5DF4 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 801A8E98 001A5DF8 7C 08 03 A6 */ mtlr r0 +/* 801A8E9C 001A5DFC 38 21 00 70 */ addi r1, r1, 0x70 +/* 801A8EA0 001A5E00 4E 80 00 20 */ blr + +.global sub_801a8ea4 +sub_801a8ea4: +/* 801A8EA4 001A5E04 80 03 02 58 */ lwz r0, 0x258(r3) +/* 801A8EA8 001A5E08 2C 00 00 00 */ cmpwi r0, 0 +/* 801A8EAC 001A5E0C 40 82 00 0C */ bne lbl_801A8EB8 +/* 801A8EB0 001A5E10 80 63 02 7C */ lwz r3, 0x27c(r3) +/* 801A8EB4 001A5E14 4E 80 00 20 */ blr +lbl_801A8EB8: +/* 801A8EB8 001A5E18 2C 00 00 01 */ cmpwi r0, 1 +/* 801A8EBC 001A5E1C 40 82 00 0C */ bne lbl_801A8EC8 +/* 801A8EC0 001A5E20 80 63 02 80 */ lwz r3, 0x280(r3) +/* 801A8EC4 001A5E24 4E 80 00 20 */ blr +lbl_801A8EC8: +/* 801A8EC8 001A5E28 80 63 02 84 */ lwz r3, 0x284(r3) +/* 801A8ECC 001A5E2C 4E 80 00 20 */ blr + +.global Touch__15CCollisionActorFR6CActorR13CStateManager +Touch__15CCollisionActorFR6CActorR13CStateManager: +/* 801A8ED0 001A5E30 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801A8ED4 001A5E34 7C 08 02 A6 */ mflr r0 +/* 801A8ED8 001A5E38 7C A8 2B 78 */ mr r8, r5 +/* 801A8EDC 001A5E3C 38 C0 00 1E */ li r6, 0x1e +/* 801A8EE0 001A5E40 90 01 00 24 */ stw r0, 0x24(r1) +/* 801A8EE4 001A5E44 38 A1 00 0C */ addi r5, r1, 0xc +/* 801A8EE8 001A5E48 A0 04 00 08 */ lhz r0, 8(r4) +/* 801A8EEC 001A5E4C 38 81 00 10 */ addi r4, r1, 0x10 +/* 801A8EF0 001A5E50 B0 03 02 FC */ sth r0, 0x2fc(r3) +/* 801A8EF4 001A5E54 A0 E3 00 08 */ lhz r7, 8(r3) +/* 801A8EF8 001A5E58 B0 E1 00 0C */ sth r7, 0xc(r1) +/* 801A8EFC 001A5E5C A0 03 02 5C */ lhz r0, 0x25c(r3) +/* 801A8F00 001A5E60 7D 03 43 78 */ mr r3, r8 +/* 801A8F04 001A5E64 B0 E1 00 08 */ sth r7, 8(r1) +/* 801A8F08 001A5E68 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801A8F0C 001A5E6C 4B E9 AF 49 */ bl SendScriptMsgAlways__13CStateManagerF9TUniqueId +/* 801A8F10 001A5E70 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801A8F14 001A5E74 7C 08 03 A6 */ mtlr r0 +/* 801A8F18 001A5E78 38 21 00 20 */ addi r1, r1, 0x20 +/* 801A8F1C 001A5E7C 4E 80 00 20 */ blr + +.global GetScanObjectIndicatorPosition__15CCollisionActorCFRC13CStateManager +GetScanObjectIndicatorPosition__15CCollisionActorCFRC13CStateManager: +/* 801A8F20 001A5E80 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 801A8F24 001A5E84 7C 08 02 A6 */ mflr r0 +/* 801A8F28 001A5E88 90 01 00 94 */ stw r0, 0x94(r1) +/* 801A8F2C 001A5E8C DB E1 00 80 */ stfd f31, 0x80(r1) +/* 801A8F30 001A5E90 F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0 +/* 801A8F34 001A5E94 DB C1 00 70 */ stfd f30, 0x70(r1) +/* 801A8F38 001A5E98 F3 C1 00 78 */ psq_st f30, 120(r1), 0, qr0 +/* 801A8F3C 001A5E9C DB A1 00 60 */ stfd f29, 0x60(r1) +/* 801A8F40 001A5EA0 F3 A1 00 68 */ psq_st f29, 104(r1), 0, qr0 +/* 801A8F44 001A5EA4 DB 81 00 50 */ stfd f28, 0x50(r1) +/* 801A8F48 001A5EA8 F3 81 00 58 */ psq_st f28, 88(r1), 0, qr0 +/* 801A8F4C 001A5EAC 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801A8F50 001A5EB0 93 C1 00 48 */ stw r30, 0x48(r1) +/* 801A8F54 001A5EB4 93 A1 00 44 */ stw r29, 0x44(r1) +/* 801A8F58 001A5EB8 93 81 00 40 */ stw r28, 0x40(r1) +/* 801A8F5C 001A5EBC 7C BE 2B 78 */ mr r30, r5 +/* 801A8F60 001A5EC0 7C 7C 1B 78 */ mr r28, r3 +/* 801A8F64 001A5EC4 80 65 08 70 */ lwz r3, 0x870(r5) +/* 801A8F68 001A5EC8 7C 9D 23 78 */ mr r29, r4 +/* 801A8F6C 001A5ECC 7F C4 F3 78 */ mr r4, r30 +/* 801A8F70 001A5ED0 4B E6 2B A9 */ bl GetCurrentCamera__14CCameraManagerCFR13CStateManager +/* 801A8F74 001A5ED4 80 1D 02 58 */ lwz r0, 0x258(r29) +/* 801A8F78 001A5ED8 7C 7F 1B 78 */ mr r31, r3 +/* 801A8F7C 001A5EDC 2C 00 00 02 */ cmpwi r0, 2 +/* 801A8F80 001A5EE0 40 82 00 14 */ bne lbl_801A8F94 +/* 801A8F84 001A5EE4 7F A3 EB 78 */ mr r3, r29 +/* 801A8F88 001A5EE8 4B FF FB F5 */ bl GetSphereRadius__15CCollisionActorCFv +/* 801A8F8C 001A5EEC FF 80 08 90 */ fmr f28, f1 +/* 801A8F90 001A5EF0 48 00 00 54 */ b lbl_801A8FE4 +lbl_801A8F94: +/* 801A8F94 001A5EF4 7F A3 EB 78 */ mr r3, r29 +/* 801A8F98 001A5EF8 4B FF FB ED */ bl GetBoxSize__15CCollisionActorCFv +/* 801A8F9C 001A5EFC C0 03 00 00 */ lfs f0, 0(r3) +/* 801A8FA0 001A5F00 C0 23 00 04 */ lfs f1, 4(r3) +/* 801A8FA4 001A5F04 C0 43 00 08 */ lfs f2, 8(r3) +/* 801A8FA8 001A5F08 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801A8FAC 001A5F0C D0 41 00 08 */ stfs f2, 8(r1) +/* 801A8FB0 001A5F10 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 801A8FB4 001A5F14 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801A8FB8 001A5F18 40 80 00 0C */ bge lbl_801A8FC4 +/* 801A8FBC 001A5F1C 38 61 00 0C */ addi r3, r1, 0xc +/* 801A8FC0 001A5F20 48 00 00 08 */ b lbl_801A8FC8 +lbl_801A8FC4: +/* 801A8FC4 001A5F24 38 61 00 10 */ addi r3, r1, 0x10 +lbl_801A8FC8: +/* 801A8FC8 001A5F28 C0 03 00 00 */ lfs f0, 0(r3) +/* 801A8FCC 001A5F2C FC 00 10 40 */ fcmpo cr0, f0, f2 +/* 801A8FD0 001A5F30 40 80 00 08 */ bge lbl_801A8FD8 +/* 801A8FD4 001A5F34 38 61 00 08 */ addi r3, r1, 8 +lbl_801A8FD8: +/* 801A8FD8 001A5F38 C0 22 A8 20 */ lfs f1, lbl_805AC540@sda21(r2) +/* 801A8FDC 001A5F3C C0 03 00 00 */ lfs f0, 0(r3) +/* 801A8FE0 001A5F40 EF 81 00 32 */ fmuls f28, f1, f0 +lbl_801A8FE4: +/* 801A8FE4 001A5F44 7F A4 EB 78 */ mr r4, r29 +/* 801A8FE8 001A5F48 C0 02 A8 24 */ lfs f0, lbl_805AC544@sda21(r2) +/* 801A8FEC 001A5F4C 81 9D 00 00 */ lwz r12, 0(r29) +/* 801A8FF0 001A5F50 7F C5 F3 78 */ mr r5, r30 +/* 801A8FF4 001A5F54 EF 9C 00 32 */ fmuls f28, f28, f0 +/* 801A8FF8 001A5F58 38 61 00 2C */ addi r3, r1, 0x2c +/* 801A8FFC 001A5F5C 81 8C 00 48 */ lwz r12, 0x48(r12) +/* 801A9000 001A5F60 7D 89 03 A6 */ mtctr r12 +/* 801A9004 001A5F64 4E 80 04 21 */ bctrl +/* 801A9008 001A5F68 C3 A1 00 2C */ lfs f29, 0x2c(r1) +/* 801A900C 001A5F6C 38 61 00 20 */ addi r3, r1, 0x20 +/* 801A9010 001A5F70 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801A9014 001A5F74 38 81 00 14 */ addi r4, r1, 0x14 +/* 801A9018 001A5F78 C3 E1 00 30 */ lfs f31, 0x30(r1) +/* 801A901C 001A5F7C C0 5F 00 50 */ lfs f2, 0x50(r31) +/* 801A9020 001A5F80 EC 1D 00 28 */ fsubs f0, f29, f0 +/* 801A9024 001A5F84 C0 3F 00 60 */ lfs f1, 0x60(r31) +/* 801A9028 001A5F88 C3 C1 00 34 */ lfs f30, 0x34(r1) +/* 801A902C 001A5F8C EC 5F 10 28 */ fsubs f2, f31, f2 +/* 801A9030 001A5F90 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801A9034 001A5F94 EC 1E 08 28 */ fsubs f0, f30, f1 +/* 801A9038 001A5F98 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 801A903C 001A5F9C D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801A9040 001A5FA0 48 16 B8 11 */ bl AsNormalized__9CVector3fCFv +/* 801A9044 001A5FA4 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 801A9048 001A5FA8 C0 41 00 24 */ lfs f2, 0x24(r1) +/* 801A904C 001A5FAC EC 1C 00 32 */ fmuls f0, f28, f0 +/* 801A9050 001A5FB0 C0 21 00 28 */ lfs f1, 0x28(r1) +/* 801A9054 001A5FB4 EC 5C 00 B2 */ fmuls f2, f28, f2 +/* 801A9058 001A5FB8 EC 3C 00 72 */ fmuls f1, f28, f1 +/* 801A905C 001A5FBC EC 1D 00 28 */ fsubs f0, f29, f0 +/* 801A9060 001A5FC0 EC 5F 10 28 */ fsubs f2, f31, f2 +/* 801A9064 001A5FC4 EC 3E 08 28 */ fsubs f1, f30, f1 +/* 801A9068 001A5FC8 D0 1C 00 00 */ stfs f0, 0(r28) +/* 801A906C 001A5FCC D0 5C 00 04 */ stfs f2, 4(r28) +/* 801A9070 001A5FD0 D0 3C 00 08 */ stfs f1, 8(r28) +/* 801A9074 001A5FD4 E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0 +/* 801A9078 001A5FD8 CB E1 00 80 */ lfd f31, 0x80(r1) +/* 801A907C 001A5FDC E3 C1 00 78 */ psq_l f30, 120(r1), 0, qr0 +/* 801A9080 001A5FE0 CB C1 00 70 */ lfd f30, 0x70(r1) +/* 801A9084 001A5FE4 E3 A1 00 68 */ psq_l f29, 104(r1), 0, qr0 +/* 801A9088 001A5FE8 CB A1 00 60 */ lfd f29, 0x60(r1) +/* 801A908C 001A5FEC E3 81 00 58 */ psq_l f28, 88(r1), 0, qr0 +/* 801A9090 001A5FF0 CB 81 00 50 */ lfd f28, 0x50(r1) +/* 801A9094 001A5FF4 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801A9098 001A5FF8 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 801A909C 001A5FFC 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 801A90A0 001A6000 80 01 00 94 */ lwz r0, 0x94(r1) +/* 801A90A4 001A6004 83 81 00 40 */ lwz r28, 0x40(r1) +/* 801A90A8 001A6008 7C 08 03 A6 */ mtlr r0 +/* 801A90AC 001A600C 38 21 00 90 */ addi r1, r1, 0x90 +/* 801A90B0 001A6010 4E 80 00 20 */ blr + +.global GetOrbitPosition__15CCollisionActorCFRC13CStateManager +GetOrbitPosition__15CCollisionActorCFRC13CStateManager: +/* 801A90B4 001A6014 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801A90B8 001A6018 7C 08 02 A6 */ mflr r0 +/* 801A90BC 001A601C 90 01 00 34 */ stw r0, 0x34(r1) +/* 801A90C0 001A6020 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801A90C4 001A6024 7C 7F 1B 78 */ mr r31, r3 +/* 801A90C8 001A6028 38 61 00 08 */ addi r3, r1, 8 +/* 801A90CC 001A602C 81 84 00 00 */ lwz r12, 0(r4) +/* 801A90D0 001A6030 81 8C 00 40 */ lwz r12, 0x40(r12) +/* 801A90D4 001A6034 7D 89 03 A6 */ mtctr r12 +/* 801A90D8 001A6038 4E 80 04 21 */ bctrl +/* 801A90DC 001A603C 7F E3 FB 78 */ mr r3, r31 +/* 801A90E0 001A6040 38 81 00 08 */ addi r4, r1, 8 +/* 801A90E4 001A6044 48 18 E5 29 */ bl GetCenterPoint__6CAABoxCFv +/* 801A90E8 001A6048 38 00 00 00 */ li r0, 0 +/* 801A90EC 001A604C 98 01 00 20 */ stb r0, 0x20(r1) +/* 801A90F0 001A6050 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801A90F4 001A6054 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801A90F8 001A6058 7C 08 03 A6 */ mtlr r0 +/* 801A90FC 001A605C 38 21 00 30 */ addi r1, r1, 0x30 +/* 801A9100 001A6060 4E 80 00 20 */ blr + +.global GetTouchBounds__15CCollisionActorCFv +GetTouchBounds__15CCollisionActorCFv: +/* 801A9104 001A6064 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 801A9108 001A6068 7C 08 02 A6 */ mflr r0 +/* 801A910C 001A606C 90 01 00 94 */ stw r0, 0x94(r1) +/* 801A9110 001A6070 38 00 00 00 */ li r0, 0 +/* 801A9114 001A6074 93 E1 00 8C */ stw r31, 0x8c(r1) +/* 801A9118 001A6078 7C 9F 23 78 */ mr r31, r4 +/* 801A911C 001A607C 93 C1 00 88 */ stw r30, 0x88(r1) +/* 801A9120 001A6080 7C 7E 1B 78 */ mr r30, r3 +/* 801A9124 001A6084 80 84 02 58 */ lwz r4, 0x258(r4) +/* 801A9128 001A6088 98 01 00 80 */ stb r0, 0x80(r1) +/* 801A912C 001A608C 2C 04 00 00 */ cmpwi r4, 0 +/* 801A9130 001A6090 40 82 00 A4 */ bne lbl_801A91D4 +/* 801A9134 001A6094 80 9F 02 7C */ lwz r4, 0x27c(r31) +/* 801A9138 001A6098 38 61 00 50 */ addi r3, r1, 0x50 +/* 801A913C 001A609C 38 BF 00 34 */ addi r5, r31, 0x34 +/* 801A9140 001A60A0 81 84 00 00 */ lwz r12, 0(r4) +/* 801A9144 001A60A4 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 801A9148 001A60A8 7D 89 03 A6 */ mtctr r12 +/* 801A914C 001A60AC 4E 80 04 21 */ bctrl +/* 801A9150 001A60B0 88 01 00 80 */ lbz r0, 0x80(r1) +/* 801A9154 001A60B4 28 00 00 00 */ cmplwi r0, 0 +/* 801A9158 001A60B8 40 82 00 48 */ bne lbl_801A91A0 +/* 801A915C 001A60BC 34 61 00 68 */ addic. r3, r1, 0x68 +/* 801A9160 001A60C0 41 82 00 34 */ beq lbl_801A9194 +/* 801A9164 001A60C4 C0 01 00 50 */ lfs f0, 0x50(r1) +/* 801A9168 001A60C8 D0 03 00 00 */ stfs f0, 0(r3) +/* 801A916C 001A60CC C0 01 00 54 */ lfs f0, 0x54(r1) +/* 801A9170 001A60D0 D0 03 00 04 */ stfs f0, 4(r3) +/* 801A9174 001A60D4 C0 01 00 58 */ lfs f0, 0x58(r1) +/* 801A9178 001A60D8 D0 03 00 08 */ stfs f0, 8(r3) +/* 801A917C 001A60DC C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 801A9180 001A60E0 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 801A9184 001A60E4 C0 01 00 60 */ lfs f0, 0x60(r1) +/* 801A9188 001A60E8 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 801A918C 001A60EC C0 01 00 64 */ lfs f0, 0x64(r1) +/* 801A9190 001A60F0 D0 03 00 14 */ stfs f0, 0x14(r3) +lbl_801A9194: +/* 801A9194 001A60F4 38 00 00 01 */ li r0, 1 +/* 801A9198 001A60F8 98 01 00 80 */ stb r0, 0x80(r1) +/* 801A919C 001A60FC 48 00 01 7C */ b lbl_801A9318 +lbl_801A91A0: +/* 801A91A0 001A6100 80 E1 00 50 */ lwz r7, 0x50(r1) +/* 801A91A4 001A6104 80 C1 00 54 */ lwz r6, 0x54(r1) +/* 801A91A8 001A6108 80 A1 00 58 */ lwz r5, 0x58(r1) +/* 801A91AC 001A610C 80 81 00 5C */ lwz r4, 0x5c(r1) +/* 801A91B0 001A6110 80 61 00 60 */ lwz r3, 0x60(r1) +/* 801A91B4 001A6114 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801A91B8 001A6118 90 E1 00 68 */ stw r7, 0x68(r1) +/* 801A91BC 001A611C 90 C1 00 6C */ stw r6, 0x6c(r1) +/* 801A91C0 001A6120 90 A1 00 70 */ stw r5, 0x70(r1) +/* 801A91C4 001A6124 90 81 00 74 */ stw r4, 0x74(r1) +/* 801A91C8 001A6128 90 61 00 78 */ stw r3, 0x78(r1) +/* 801A91CC 001A612C 90 01 00 7C */ stw r0, 0x7c(r1) +/* 801A91D0 001A6130 48 00 01 48 */ b lbl_801A9318 +lbl_801A91D4: +/* 801A91D4 001A6134 2C 04 00 01 */ cmpwi r4, 1 +/* 801A91D8 001A6138 40 82 00 A4 */ bne lbl_801A927C +/* 801A91DC 001A613C 80 9F 02 80 */ lwz r4, 0x280(r31) +/* 801A91E0 001A6140 38 61 00 38 */ addi r3, r1, 0x38 +/* 801A91E4 001A6144 38 BF 00 34 */ addi r5, r31, 0x34 +/* 801A91E8 001A6148 81 84 00 00 */ lwz r12, 0(r4) +/* 801A91EC 001A614C 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 801A91F0 001A6150 7D 89 03 A6 */ mtctr r12 +/* 801A91F4 001A6154 4E 80 04 21 */ bctrl +/* 801A91F8 001A6158 88 01 00 80 */ lbz r0, 0x80(r1) +/* 801A91FC 001A615C 28 00 00 00 */ cmplwi r0, 0 +/* 801A9200 001A6160 40 82 00 48 */ bne lbl_801A9248 +/* 801A9204 001A6164 34 61 00 68 */ addic. r3, r1, 0x68 +/* 801A9208 001A6168 41 82 00 34 */ beq lbl_801A923C +/* 801A920C 001A616C C0 01 00 38 */ lfs f0, 0x38(r1) +/* 801A9210 001A6170 D0 03 00 00 */ stfs f0, 0(r3) +/* 801A9214 001A6174 C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 801A9218 001A6178 D0 03 00 04 */ stfs f0, 4(r3) +/* 801A921C 001A617C C0 01 00 40 */ lfs f0, 0x40(r1) +/* 801A9220 001A6180 D0 03 00 08 */ stfs f0, 8(r3) +/* 801A9224 001A6184 C0 01 00 44 */ lfs f0, 0x44(r1) +/* 801A9228 001A6188 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 801A922C 001A618C C0 01 00 48 */ lfs f0, 0x48(r1) +/* 801A9230 001A6190 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 801A9234 001A6194 C0 01 00 4C */ lfs f0, 0x4c(r1) +/* 801A9238 001A6198 D0 03 00 14 */ stfs f0, 0x14(r3) +lbl_801A923C: +/* 801A923C 001A619C 38 00 00 01 */ li r0, 1 +/* 801A9240 001A61A0 98 01 00 80 */ stb r0, 0x80(r1) +/* 801A9244 001A61A4 48 00 00 D4 */ b lbl_801A9318 +lbl_801A9248: +/* 801A9248 001A61A8 80 E1 00 38 */ lwz r7, 0x38(r1) +/* 801A924C 001A61AC 80 C1 00 3C */ lwz r6, 0x3c(r1) +/* 801A9250 001A61B0 80 A1 00 40 */ lwz r5, 0x40(r1) +/* 801A9254 001A61B4 80 81 00 44 */ lwz r4, 0x44(r1) +/* 801A9258 001A61B8 80 61 00 48 */ lwz r3, 0x48(r1) +/* 801A925C 001A61BC 80 01 00 4C */ lwz r0, 0x4c(r1) +/* 801A9260 001A61C0 90 E1 00 68 */ stw r7, 0x68(r1) +/* 801A9264 001A61C4 90 C1 00 6C */ stw r6, 0x6c(r1) +/* 801A9268 001A61C8 90 A1 00 70 */ stw r5, 0x70(r1) +/* 801A926C 001A61CC 90 81 00 74 */ stw r4, 0x74(r1) +/* 801A9270 001A61D0 90 61 00 78 */ stw r3, 0x78(r1) +/* 801A9274 001A61D4 90 01 00 7C */ stw r0, 0x7c(r1) +/* 801A9278 001A61D8 48 00 00 A0 */ b lbl_801A9318 +lbl_801A927C: +/* 801A927C 001A61DC 80 9F 02 84 */ lwz r4, 0x284(r31) +/* 801A9280 001A61E0 38 61 00 20 */ addi r3, r1, 0x20 +/* 801A9284 001A61E4 38 BF 00 34 */ addi r5, r31, 0x34 +/* 801A9288 001A61E8 81 84 00 00 */ lwz r12, 0(r4) +/* 801A928C 001A61EC 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 801A9290 001A61F0 7D 89 03 A6 */ mtctr r12 +/* 801A9294 001A61F4 4E 80 04 21 */ bctrl +/* 801A9298 001A61F8 88 01 00 80 */ lbz r0, 0x80(r1) +/* 801A929C 001A61FC 28 00 00 00 */ cmplwi r0, 0 +/* 801A92A0 001A6200 40 82 00 48 */ bne lbl_801A92E8 +/* 801A92A4 001A6204 34 61 00 68 */ addic. r3, r1, 0x68 +/* 801A92A8 001A6208 41 82 00 34 */ beq lbl_801A92DC +/* 801A92AC 001A620C C0 01 00 20 */ lfs f0, 0x20(r1) +/* 801A92B0 001A6210 D0 03 00 00 */ stfs f0, 0(r3) +/* 801A92B4 001A6214 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 801A92B8 001A6218 D0 03 00 04 */ stfs f0, 4(r3) +/* 801A92BC 001A621C C0 01 00 28 */ lfs f0, 0x28(r1) +/* 801A92C0 001A6220 D0 03 00 08 */ stfs f0, 8(r3) +/* 801A92C4 001A6224 C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 801A92C8 001A6228 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 801A92CC 001A622C C0 01 00 30 */ lfs f0, 0x30(r1) +/* 801A92D0 001A6230 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 801A92D4 001A6234 C0 01 00 34 */ lfs f0, 0x34(r1) +/* 801A92D8 001A6238 D0 03 00 14 */ stfs f0, 0x14(r3) +lbl_801A92DC: +/* 801A92DC 001A623C 38 00 00 01 */ li r0, 1 +/* 801A92E0 001A6240 98 01 00 80 */ stb r0, 0x80(r1) +/* 801A92E4 001A6244 48 00 00 34 */ b lbl_801A9318 +lbl_801A92E8: +/* 801A92E8 001A6248 80 E1 00 20 */ lwz r7, 0x20(r1) +/* 801A92EC 001A624C 80 C1 00 24 */ lwz r6, 0x24(r1) +/* 801A92F0 001A6250 80 A1 00 28 */ lwz r5, 0x28(r1) +/* 801A92F4 001A6254 80 81 00 2C */ lwz r4, 0x2c(r1) +/* 801A92F8 001A6258 80 61 00 30 */ lwz r3, 0x30(r1) +/* 801A92FC 001A625C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801A9300 001A6260 90 E1 00 68 */ stw r7, 0x68(r1) +/* 801A9304 001A6264 90 C1 00 6C */ stw r6, 0x6c(r1) +/* 801A9308 001A6268 90 A1 00 70 */ stw r5, 0x70(r1) +/* 801A930C 001A626C 90 81 00 74 */ stw r4, 0x74(r1) +/* 801A9310 001A6270 90 61 00 78 */ stw r3, 0x78(r1) +/* 801A9314 001A6274 90 01 00 7C */ stw r0, 0x7c(r1) +lbl_801A9318: +/* 801A9318 001A6278 C0 21 00 78 */ lfs f1, 0x78(r1) +/* 801A931C 001A627C 38 61 00 68 */ addi r3, r1, 0x68 +/* 801A9320 001A6280 C0 1F 03 08 */ lfs f0, 0x308(r31) +/* 801A9324 001A6284 38 81 00 14 */ addi r4, r1, 0x14 +/* 801A9328 001A6288 C0 61 00 7C */ lfs f3, 0x7c(r1) +/* 801A932C 001A628C C0 5F 03 0C */ lfs f2, 0x30c(r31) +/* 801A9330 001A6290 EC 81 00 2A */ fadds f4, f1, f0 +/* 801A9334 001A6294 C0 21 00 74 */ lfs f1, 0x74(r1) +/* 801A9338 001A6298 C0 1F 03 04 */ lfs f0, 0x304(r31) +/* 801A933C 001A629C EC 43 10 2A */ fadds f2, f3, f2 +/* 801A9340 001A62A0 D0 81 00 18 */ stfs f4, 0x18(r1) +/* 801A9344 001A62A4 EC 01 00 2A */ fadds f0, f1, f0 +/* 801A9348 001A62A8 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 801A934C 001A62AC D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801A9350 001A62B0 48 18 E7 B9 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 801A9354 001A62B4 C0 21 00 6C */ lfs f1, 0x6c(r1) +/* 801A9358 001A62B8 38 61 00 68 */ addi r3, r1, 0x68 +/* 801A935C 001A62BC C0 1F 03 08 */ lfs f0, 0x308(r31) +/* 801A9360 001A62C0 38 81 00 08 */ addi r4, r1, 8 +/* 801A9364 001A62C4 C0 61 00 70 */ lfs f3, 0x70(r1) +/* 801A9368 001A62C8 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801A936C 001A62CC C0 5F 03 0C */ lfs f2, 0x30c(r31) +/* 801A9370 001A62D0 C0 21 00 68 */ lfs f1, 0x68(r1) +/* 801A9374 001A62D4 C0 1F 03 04 */ lfs f0, 0x304(r31) +/* 801A9378 001A62D8 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801A937C 001A62DC D0 81 00 0C */ stfs f4, 0xc(r1) +/* 801A9380 001A62E0 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801A9384 001A62E4 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 801A9388 001A62E8 D0 01 00 08 */ stfs f0, 8(r1) +/* 801A938C 001A62EC 48 18 E7 7D */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 801A9390 001A62F0 88 01 00 80 */ lbz r0, 0x80(r1) +/* 801A9394 001A62F4 98 1E 00 18 */ stb r0, 0x18(r30) +/* 801A9398 001A62F8 88 01 00 80 */ lbz r0, 0x80(r1) +/* 801A939C 001A62FC 28 00 00 00 */ cmplwi r0, 0 +/* 801A93A0 001A6300 41 82 00 3C */ beq lbl_801A93DC +/* 801A93A4 001A6304 28 1E 00 00 */ cmplwi r30, 0 +/* 801A93A8 001A6308 41 82 00 34 */ beq lbl_801A93DC +/* 801A93AC 001A630C C0 01 00 68 */ lfs f0, 0x68(r1) +/* 801A93B0 001A6310 D0 1E 00 00 */ stfs f0, 0(r30) +/* 801A93B4 001A6314 C0 01 00 6C */ lfs f0, 0x6c(r1) +/* 801A93B8 001A6318 D0 1E 00 04 */ stfs f0, 4(r30) +/* 801A93BC 001A631C C0 01 00 70 */ lfs f0, 0x70(r1) +/* 801A93C0 001A6320 D0 1E 00 08 */ stfs f0, 8(r30) +/* 801A93C4 001A6324 C0 01 00 74 */ lfs f0, 0x74(r1) +/* 801A93C8 001A6328 D0 1E 00 0C */ stfs f0, 0xc(r30) +/* 801A93CC 001A632C C0 01 00 78 */ lfs f0, 0x78(r1) +/* 801A93D0 001A6330 D0 1E 00 10 */ stfs f0, 0x10(r30) +/* 801A93D4 001A6334 C0 01 00 7C */ lfs f0, 0x7c(r1) +/* 801A93D8 001A6338 D0 1E 00 14 */ stfs f0, 0x14(r30) +lbl_801A93DC: +/* 801A93DC 001A633C 38 00 00 00 */ li r0, 0 +/* 801A93E0 001A6340 98 01 00 80 */ stb r0, 0x80(r1) +/* 801A93E4 001A6344 80 01 00 94 */ lwz r0, 0x94(r1) +/* 801A93E8 001A6348 83 E1 00 8C */ lwz r31, 0x8c(r1) +/* 801A93EC 001A634C 83 C1 00 88 */ lwz r30, 0x88(r1) +/* 801A93F0 001A6350 7C 08 03 A6 */ mtlr r0 +/* 801A93F4 001A6354 38 21 00 90 */ addi r1, r1, 0x90 +/* 801A93F8 001A6358 4E 80 00 20 */ blr + +.global Accept__15CCollisionActorFR8IVisitor +Accept__15CCollisionActorFR8IVisitor: +/* 801A93FC 001A635C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801A9400 001A6360 7C 08 02 A6 */ mflr r0 +/* 801A9404 001A6364 90 01 00 14 */ stw r0, 0x14(r1) +/* 801A9408 001A6368 7C 60 1B 78 */ mr r0, r3 +/* 801A940C 001A636C 7C 83 23 78 */ mr r3, r4 +/* 801A9410 001A6370 81 84 00 00 */ lwz r12, 0(r4) +/* 801A9414 001A6374 7C 04 03 78 */ mr r4, r0 +/* 801A9418 001A6378 81 8C 00 18 */ lwz r12, 0x18(r12) +/* 801A941C 001A637C 7D 89 03 A6 */ mtctr r12 +/* 801A9420 001A6380 4E 80 04 21 */ bctrl +/* 801A9424 001A6384 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801A9428 001A6388 7C 08 03 A6 */ mtlr r0 +/* 801A942C 001A638C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801A9430 001A6390 4E 80 00 20 */ blr + +.global __ct__15CCollisionActorF9TUniqueId7TAreaId9TUniqueIdbff +__ct__15CCollisionActorF9TUniqueId7TAreaId9TUniqueIdbff: +/* 801A9434 001A6394 94 21 FE 40 */ stwu r1, -0x1c0(r1) +/* 801A9438 001A6398 7C 08 02 A6 */ mflr r0 +/* 801A943C 001A639C 90 01 01 C4 */ stw r0, 0x1c4(r1) +/* 801A9440 001A63A0 DB E1 01 B0 */ stfd f31, 0x1b0(r1) +/* 801A9444 001A63A4 F3 E1 01 B8 */ psq_st f31, 440(r1), 0, qr0 +/* 801A9448 001A63A8 DB C1 01 A0 */ stfd f30, 0x1a0(r1) +/* 801A944C 001A63AC F3 C1 01 A8 */ psq_st f30, 424(r1), 0, qr0 +/* 801A9450 001A63B0 DB A1 01 90 */ stfd f29, 0x190(r1) +/* 801A9454 001A63B4 F3 A1 01 98 */ psq_st f29, 408(r1), 0, qr0 +/* 801A9458 001A63B8 DB 81 01 80 */ stfd f28, 0x180(r1) +/* 801A945C 001A63BC F3 81 01 88 */ psq_st f28, 392(r1), 0, qr0 +/* 801A9460 001A63C0 BF 41 01 68 */ stmw r26, 0x168(r1) +/* 801A9464 001A63C4 3D 00 80 3D */ lis r8, lbl_803D14A0@ha +/* 801A9468 001A63C8 FF E0 08 90 */ fmr f31, f1 +/* 801A946C 001A63CC FF 80 10 90 */ fmr f28, f2 +/* 801A9470 001A63D0 38 08 14 A0 */ addi r0, r8, lbl_803D14A0@l +/* 801A9474 001A63D4 7C 7B 1B 78 */ mr r27, r3 +/* 801A9478 001A63D8 7C 9C 23 78 */ mr r28, r4 +/* 801A947C 001A63DC 7C BA 2B 78 */ mr r26, r5 +/* 801A9480 001A63E0 7C DD 33 78 */ mr r29, r6 +/* 801A9484 001A63E4 7C FE 3B 78 */ mr r30, r7 +/* 801A9488 001A63E8 7C 04 03 78 */ mr r4, r0 +/* 801A948C 001A63EC 38 61 00 40 */ addi r3, r1, 0x40 +/* 801A9490 001A63F0 4B E5 B8 29 */ bl string_l__4rstlFPCc +/* 801A9494 001A63F4 80 8D A3 88 */ lwz r4, lbl_805A8F48@sda21(r13) +/* 801A9498 001A63F8 3C 60 80 57 */ lis r3, lbl_8056D410@ha +/* 801A949C 001A63FC 80 1A 00 00 */ lwz r0, 0(r26) +/* 801A94A0 001A6400 38 A3 D4 10 */ addi r5, r3, lbl_8056D410@l +/* 801A94A4 001A6404 90 81 00 2C */ stw r4, 0x2c(r1) +/* 801A94A8 001A6408 38 61 00 68 */ addi r3, r1, 0x68 +/* 801A94AC 001A640C 38 81 00 30 */ addi r4, r1, 0x30 +/* 801A94B0 001A6410 38 C1 00 2C */ addi r6, r1, 0x2c +/* 801A94B4 001A6414 90 01 00 30 */ stw r0, 0x30(r1) +/* 801A94B8 001A6418 4B EA 7F CD */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" +/* 801A94BC 001A641C 38 61 01 1C */ addi r3, r1, 0x11c +/* 801A94C0 001A6420 4B E9 12 E5 */ bl CModelDataNull__10CModelDataFv +/* 801A94C4 001A6424 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 801A94C8 001A6428 4B E7 19 71 */ bl None__16CActorParametersFv +/* 801A94CC 001A642C 4B E7 20 69 */ bl Identity__10CAxisAngleFv +/* 801A94D0 001A6430 7C 7A 1B 78 */ mr r26, r3 +/* 801A94D4 001A6434 4B E7 20 61 */ bl Identity__10CAxisAngleFv +/* 801A94D8 001A6438 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801A94DC 001A643C 3C A0 80 5A */ lis r5, lbl_805A6784@ha +/* 801A94E0 001A6440 3B E4 66 A0 */ addi r31, r4, skZero3f@l +/* 801A94E4 001A6444 A3 9C 00 00 */ lhz r28, 0(r28) +/* 801A94E8 001A6448 C0 7F 00 00 */ lfs f3, 0(r31) +/* 801A94EC 001A644C 39 85 67 84 */ addi r12, r5, lbl_805A6784@l +/* 801A94F0 001A6450 C0 9F 00 04 */ lfs f4, 4(r31) +/* 801A94F4 001A6454 3C 80 80 5A */ lis r4, skIdentity4f@ha +/* 801A94F8 001A6458 C0 BF 00 08 */ lfs f5, 8(r31) +/* 801A94FC 001A645C 39 04 66 70 */ addi r8, r4, skIdentity4f@l +/* 801A9500 001A6460 D0 61 00 80 */ stfs f3, 0x80(r1) +/* 801A9504 001A6464 39 61 00 80 */ addi r11, r1, 0x80 +/* 801A9508 001A6468 38 01 00 B4 */ addi r0, r1, 0xb4 +/* 801A950C 001A646C C0 22 A8 28 */ lfs f1, lbl_805AC548@sda21(r2) +/* 801A9510 001A6470 D0 81 00 84 */ stfs f4, 0x84(r1) +/* 801A9514 001A6474 7F C5 F3 78 */ mr r5, r30 +/* 801A9518 001A6478 C0 42 A8 2C */ lfs f2, lbl_805AC54C@sda21(r2) +/* 801A951C 001A647C 38 81 00 18 */ addi r4, r1, 0x18 +/* 801A9520 001A6480 D0 A1 00 88 */ stfs f5, 0x88(r1) +/* 801A9524 001A6484 38 C1 00 40 */ addi r6, r1, 0x40 +/* 801A9528 001A6488 38 E1 00 68 */ addi r7, r1, 0x68 +/* 801A952C 001A648C 39 21 01 1C */ addi r9, r1, 0x11c +/* 801A9530 001A6490 C0 03 00 00 */ lfs f0, 0(r3) +/* 801A9534 001A6494 39 4D A4 90 */ addi r10, r13, lbl_805A9050@sda21 +/* 801A9538 001A6498 D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 801A953C 001A649C C0 03 00 04 */ lfs f0, 4(r3) +/* 801A9540 001A64A0 D0 01 00 90 */ stfs f0, 0x90(r1) +/* 801A9544 001A64A4 C0 03 00 08 */ lfs f0, 8(r3) +/* 801A9548 001A64A8 7F 63 DB 78 */ mr r3, r27 +/* 801A954C 001A64AC D0 01 00 94 */ stfs f0, 0x94(r1) +/* 801A9550 001A64B0 D0 61 00 98 */ stfs f3, 0x98(r1) +/* 801A9554 001A64B4 D0 81 00 9C */ stfs f4, 0x9c(r1) +/* 801A9558 001A64B8 D0 A1 00 A0 */ stfs f5, 0xa0(r1) +/* 801A955C 001A64BC C0 1A 00 00 */ lfs f0, 0(r26) +/* 801A9560 001A64C0 D0 01 00 A4 */ stfs f0, 0xa4(r1) +/* 801A9564 001A64C4 C0 1A 00 04 */ lfs f0, 4(r26) +/* 801A9568 001A64C8 D0 01 00 A8 */ stfs f0, 0xa8(r1) +/* 801A956C 001A64CC C0 1A 00 08 */ lfs f0, 8(r26) +/* 801A9570 001A64D0 D0 01 00 AC */ stfs f0, 0xac(r1) +/* 801A9574 001A64D4 D3 81 00 B0 */ stfs f28, 0xb0(r1) +/* 801A9578 001A64D8 B3 81 00 18 */ sth r28, 0x18(r1) +/* 801A957C 001A64DC 91 81 00 08 */ stw r12, 8(r1) +/* 801A9580 001A64E0 91 61 00 0C */ stw r11, 0xc(r1) +/* 801A9584 001A64E4 90 01 00 10 */ stw r0, 0x10(r1) +/* 801A9588 001A64E8 4B F7 2F 29 */ bl "__ct__13CPhysicsActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC6CAABoxRC10SMoverDataRC16CActorParametersff" +/* 801A958C 001A64EC 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 801A9590 001A64F0 38 80 FF FF */ li r4, -1 +/* 801A9594 001A64F4 4B F5 D0 75 */ bl __dt__16CActorParametersFv +/* 801A9598 001A64F8 38 61 01 1C */ addi r3, r1, 0x11c +/* 801A959C 001A64FC 38 80 FF FF */ li r4, -1 +/* 801A95A0 001A6500 4B F6 D4 AD */ bl __dt__10CModelDataFv +/* 801A95A4 001A6504 80 01 00 70 */ lwz r0, 0x70(r1) +/* 801A95A8 001A6508 80 61 00 78 */ lwz r3, 0x78(r1) +/* 801A95AC 001A650C 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801A95B0 001A6510 90 61 00 20 */ stw r3, 0x20(r1) +/* 801A95B4 001A6514 7C 64 1B 78 */ mr r4, r3 +/* 801A95B8 001A6518 7C 03 02 14 */ add r0, r3, r0 +/* 801A95BC 001A651C 90 61 00 1C */ stw r3, 0x1c(r1) +/* 801A95C0 001A6520 90 01 00 28 */ stw r0, 0x28(r1) +/* 801A95C4 001A6524 90 01 00 24 */ stw r0, 0x24(r1) +/* 801A95C8 001A6528 48 00 00 08 */ b lbl_801A95D0 +lbl_801A95CC: +/* 801A95CC 001A652C 38 84 00 0C */ addi r4, r4, 0xc +lbl_801A95D0: +/* 801A95D0 001A6530 7C 04 00 40 */ cmplw r4, r0 +/* 801A95D4 001A6534 40 82 FF F8 */ bne lbl_801A95CC +/* 801A95D8 001A6538 28 03 00 00 */ cmplwi r3, 0 +/* 801A95DC 001A653C 41 82 00 08 */ beq lbl_801A95E4 +/* 801A95E0 001A6540 48 16 C3 51 */ bl Free__7CMemoryFPCv +lbl_801A95E4: +/* 801A95E4 001A6544 38 61 00 40 */ addi r3, r1, 0x40 +/* 801A95E8 001A6548 48 19 44 F9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801A95EC 001A654C 3C 60 80 3E */ lis r3, lbl_803E4B18@ha +/* 801A95F0 001A6550 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801A95F4 001A6554 38 03 4B 18 */ addi r0, r3, lbl_803E4B18@l +/* 801A95F8 001A6558 3C 60 80 3D */ lis r3, lbl_803D14A0@ha +/* 801A95FC 001A655C 90 1B 00 00 */ stw r0, 0(r27) +/* 801A9600 001A6560 38 00 00 02 */ li r0, 2 +/* 801A9604 001A6564 38 63 14 A0 */ addi r3, r3, lbl_803D14A0@l +/* 801A9608 001A6568 38 C4 66 A0 */ addi r6, r4, skZero3f@l +/* 801A960C 001A656C 90 1B 02 58 */ stw r0, 0x258(r27) +/* 801A9610 001A6570 38 00 00 00 */ li r0, 0 +/* 801A9614 001A6574 38 83 00 0F */ addi r4, r3, 0xf +/* 801A9618 001A6578 38 60 00 20 */ li r3, 0x20 +/* 801A961C 001A657C A0 FD 00 00 */ lhz r7, 0(r29) +/* 801A9620 001A6580 38 A0 00 00 */ li r5, 0 +/* 801A9624 001A6584 B0 FB 02 5C */ sth r7, 0x25c(r27) +/* 801A9628 001A6588 C0 06 00 00 */ lfs f0, 0(r6) +/* 801A962C 001A658C D0 1B 02 60 */ stfs f0, 0x260(r27) +/* 801A9630 001A6590 C0 1F 00 04 */ lfs f0, 4(r31) +/* 801A9634 001A6594 D0 1B 02 64 */ stfs f0, 0x264(r27) +/* 801A9638 001A6598 C0 1F 00 08 */ lfs f0, 8(r31) +/* 801A963C 001A659C D0 1B 02 68 */ stfs f0, 0x268(r27) +/* 801A9640 001A65A0 C0 06 00 00 */ lfs f0, 0(r6) +/* 801A9644 001A65A4 D0 1B 02 6C */ stfs f0, 0x26c(r27) +/* 801A9648 001A65A8 C0 1F 00 04 */ lfs f0, 4(r31) +/* 801A964C 001A65AC D0 1B 02 70 */ stfs f0, 0x270(r27) +/* 801A9650 001A65B0 C0 1F 00 08 */ lfs f0, 8(r31) +/* 801A9654 001A65B4 D0 1B 02 74 */ stfs f0, 0x274(r27) +/* 801A9658 001A65B8 90 1B 02 78 */ stw r0, 0x278(r27) +/* 801A965C 001A65BC 90 1B 02 7C */ stw r0, 0x27c(r27) +/* 801A9660 001A65C0 90 1B 02 80 */ stw r0, 0x280(r27) +/* 801A9664 001A65C4 48 16 C2 09 */ bl __nw__FUlPCcPCc +/* 801A9668 001A65C8 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801A966C 001A65CC 41 82 00 9C */ beq lbl_801A9708 +/* 801A9670 001A65D0 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801A9674 001A65D4 38 00 00 00 */ li r0, 0 +/* 801A9678 001A65D8 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 801A967C 001A65DC 80 AD 90 60 */ lwz r5, lbl_805A7C20@sda21(r13) +/* 801A9680 001A65E0 C3 C4 00 00 */ lfs f30, 0(r4) +/* 801A9684 001A65E4 38 60 00 00 */ li r3, 0 +/* 801A9688 001A65E8 90 01 00 3C */ stw r0, 0x3c(r1) +/* 801A968C 001A65EC 38 80 00 01 */ li r4, 1 +/* 801A9690 001A65F0 C3 BF 00 04 */ lfs f29, 4(r31) +/* 801A9694 001A65F4 90 01 00 38 */ stw r0, 0x38(r1) +/* 801A9698 001A65F8 C3 9F 00 08 */ lfs f28, 8(r31) +/* 801A969C 001A65FC 48 1E 08 59 */ bl __shl2i +/* 801A96A0 001A6600 80 01 00 38 */ lwz r0, 0x38(r1) +/* 801A96A4 001A6604 80 C1 00 3C */ lwz r6, 0x3c(r1) +/* 801A96A8 001A6608 7C 00 1B 78 */ or r0, r0, r3 +/* 801A96AC 001A660C 80 AD 90 64 */ lwz r5, lbl_805A7C24@sda21(r13) +/* 801A96B0 001A6610 7C C4 23 78 */ or r4, r6, r4 +/* 801A96B4 001A6614 90 01 00 38 */ stw r0, 0x38(r1) +/* 801A96B8 001A6618 38 60 00 00 */ li r3, 0 +/* 801A96BC 001A661C 90 81 00 3C */ stw r4, 0x3c(r1) +/* 801A96C0 001A6620 38 80 00 01 */ li r4, 1 +/* 801A96C4 001A6624 48 1E 08 31 */ bl __shl2i +/* 801A96C8 001A6628 80 01 00 38 */ lwz r0, 0x38(r1) +/* 801A96CC 001A662C 80 A1 00 3C */ lwz r5, 0x3c(r1) +/* 801A96D0 001A6630 7C 00 1B 78 */ or r0, r0, r3 +/* 801A96D4 001A6634 7F C3 F3 78 */ mr r3, r30 +/* 801A96D8 001A6638 7C A5 23 78 */ or r5, r5, r4 +/* 801A96DC 001A663C 90 01 00 38 */ stw r0, 0x38(r1) +/* 801A96E0 001A6640 38 81 00 38 */ addi r4, r1, 0x38 +/* 801A96E4 001A6644 90 A1 00 3C */ stw r5, 0x3c(r1) +/* 801A96E8 001A6648 48 12 61 CD */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList +/* 801A96EC 001A664C 3C 60 80 3F */ lis r3, lbl_803ECAF8@ha +/* 801A96F0 001A6650 38 03 CA F8 */ addi r0, r3, lbl_803ECAF8@l +/* 801A96F4 001A6654 90 1E 00 00 */ stw r0, 0(r30) +/* 801A96F8 001A6658 D3 DE 00 10 */ stfs f30, 0x10(r30) +/* 801A96FC 001A665C D3 BE 00 14 */ stfs f29, 0x14(r30) +/* 801A9700 001A6660 D3 9E 00 18 */ stfs f28, 0x18(r30) +/* 801A9704 001A6664 D3 FE 00 1C */ stfs f31, 0x1c(r30) +lbl_801A9708: +/* 801A9708 001A6668 93 DB 02 84 */ stw r30, 0x284(r27) +/* 801A970C 001A666C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801A9710 001A6670 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 801A9714 001A6674 C0 02 A8 30 */ lfs f0, lbl_805AC550@sda21(r2) +/* 801A9718 001A6678 D3 FB 02 88 */ stfs f31, 0x288(r27) +/* 801A971C 001A667C 3C 80 80 57 */ lis r4, lbl_80570004@ha +/* 801A9720 001A6680 38 00 00 10 */ li r0, 0x10 +/* 801A9724 001A6684 C0 22 A8 20 */ lfs f1, lbl_805AC540@sda21(r2) +/* 801A9728 001A6688 D0 1B 02 8C */ stfs f0, 0x28c(r27) +/* 801A972C 001A668C 7F 63 DB 78 */ mr r3, r27 +/* 801A9730 001A6690 D0 1B 02 90 */ stfs f0, 0x290(r27) +/* 801A9734 001A6694 84 E4 D5 78 */ lwzu r7, -0x2a88(r4) +/* 801A9738 001A6698 80 C4 00 04 */ lwz r6, lbl_80570004@l(r4) +/* 801A973C 001A669C 90 FB 02 94 */ stw r7, 0x294(r27) +/* 801A9740 001A66A0 90 DB 02 98 */ stw r6, 0x298(r27) +/* 801A9744 001A66A4 80 E4 00 08 */ lwz r7, 8(r4) +/* 801A9748 001A66A8 80 C4 00 0C */ lwz r6, 0xc(r4) +/* 801A974C 001A66AC 90 FB 02 9C */ stw r7, 0x29c(r27) +/* 801A9750 001A66B0 90 DB 02 A0 */ stw r6, 0x2a0(r27) +/* 801A9754 001A66B4 80 E4 00 10 */ lwz r7, 0x10(r4) +/* 801A9758 001A66B8 80 C4 00 14 */ lwz r6, 0x14(r4) +/* 801A975C 001A66BC 90 FB 02 A4 */ stw r7, 0x2a4(r27) +/* 801A9760 001A66C0 90 DB 02 A8 */ stw r6, 0x2a8(r27) +/* 801A9764 001A66C4 80 E4 00 18 */ lwz r7, 0x18(r4) +/* 801A9768 001A66C8 80 C4 00 1C */ lwz r6, 0x1c(r4) +/* 801A976C 001A66CC 90 FB 02 AC */ stw r7, 0x2ac(r27) +/* 801A9770 001A66D0 90 DB 02 B0 */ stw r6, 0x2b0(r27) +/* 801A9774 001A66D4 80 E4 00 20 */ lwz r7, 0x20(r4) +/* 801A9778 001A66D8 80 C4 00 24 */ lwz r6, 0x24(r4) +/* 801A977C 001A66DC 90 FB 02 B4 */ stw r7, 0x2b4(r27) +/* 801A9780 001A66E0 90 DB 02 B8 */ stw r6, 0x2b8(r27) +/* 801A9784 001A66E4 80 E4 00 28 */ lwz r7, 0x28(r4) +/* 801A9788 001A66E8 80 C4 00 2C */ lwz r6, 0x2c(r4) +/* 801A978C 001A66EC 90 FB 02 BC */ stw r7, 0x2bc(r27) +/* 801A9790 001A66F0 90 DB 02 C0 */ stw r6, 0x2c0(r27) +/* 801A9794 001A66F4 80 E4 00 30 */ lwz r7, 0x30(r4) +/* 801A9798 001A66F8 80 C4 00 34 */ lwz r6, 0x34(r4) +/* 801A979C 001A66FC 90 FB 02 C4 */ stw r7, 0x2c4(r27) +/* 801A97A0 001A6700 90 DB 02 C8 */ stw r6, 0x2c8(r27) +/* 801A97A4 001A6704 80 C4 00 38 */ lwz r6, 0x38(r4) +/* 801A97A8 001A6708 90 DB 02 CC */ stw r6, 0x2cc(r27) +/* 801A97AC 001A670C 80 E4 00 3C */ lwz r7, 0x3c(r4) +/* 801A97B0 001A6710 80 C4 00 40 */ lwz r6, 0x40(r4) +/* 801A97B4 001A6714 90 FB 02 D0 */ stw r7, 0x2d0(r27) +/* 801A97B8 001A6718 90 DB 02 D4 */ stw r6, 0x2d4(r27) +/* 801A97BC 001A671C 80 E4 00 44 */ lwz r7, 0x44(r4) +/* 801A97C0 001A6720 80 C4 00 48 */ lwz r6, 0x48(r4) +/* 801A97C4 001A6724 90 FB 02 D8 */ stw r7, 0x2d8(r27) +/* 801A97C8 001A6728 90 DB 02 DC */ stw r6, 0x2dc(r27) +/* 801A97CC 001A672C 80 E4 00 4C */ lwz r7, 0x4c(r4) +/* 801A97D0 001A6730 80 C4 00 50 */ lwz r6, 0x50(r4) +/* 801A97D4 001A6734 90 FB 02 E0 */ stw r7, 0x2e0(r27) +/* 801A97D8 001A6738 90 DB 02 E4 */ stw r6, 0x2e4(r27) +/* 801A97DC 001A673C 80 E4 00 54 */ lwz r7, 0x54(r4) +/* 801A97E0 001A6740 80 C4 00 58 */ lwz r6, 0x58(r4) +/* 801A97E4 001A6744 90 FB 02 E8 */ stw r7, 0x2e8(r27) +/* 801A97E8 001A6748 90 DB 02 EC */ stw r6, 0x2ec(r27) +/* 801A97EC 001A674C 80 C4 00 5C */ lwz r6, 0x5c(r4) +/* 801A97F0 001A6750 90 DB 02 F0 */ stw r6, 0x2f0(r27) +/* 801A97F4 001A6754 80 C4 00 60 */ lwz r6, 0x60(r4) +/* 801A97F8 001A6758 90 DB 02 F4 */ stw r6, 0x2f4(r27) +/* 801A97FC 001A675C 80 84 00 64 */ lwz r4, 0x64(r4) +/* 801A9800 001A6760 90 9B 02 F8 */ stw r4, 0x2f8(r27) +/* 801A9804 001A6764 A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 801A9808 001A6768 B0 9B 02 FC */ sth r4, 0x2fc(r27) +/* 801A980C 001A676C 90 1B 03 00 */ stw r0, 0x300(r27) +/* 801A9810 001A6770 C0 05 00 00 */ lfs f0, 0(r5) +/* 801A9814 001A6774 D0 1B 03 04 */ stfs f0, 0x304(r27) +/* 801A9818 001A6778 C0 1F 00 04 */ lfs f0, 4(r31) +/* 801A981C 001A677C D0 1B 03 08 */ stfs f0, 0x308(r27) +/* 801A9820 001A6780 C0 1F 00 08 */ lfs f0, 8(r31) +/* 801A9824 001A6784 D0 1B 03 0C */ stfs f0, 0x30c(r27) +/* 801A9828 001A6788 4B F7 0C B9 */ bl SetCoefficientOfRestitutionModifier__13CPhysicsActorFf +/* 801A982C 001A678C 7F 63 DB 78 */ mr r3, r27 +/* 801A9830 001A6790 38 80 00 00 */ li r4, 0 +/* 801A9834 001A6794 4B EA AB 85 */ bl SetCallTouch__6CActorFb +/* 801A9838 001A6798 80 AD 90 6C */ lwz r5, lbl_805A7C2C@sda21(r13) +/* 801A983C 001A679C 38 60 00 00 */ li r3, 0 +/* 801A9840 001A67A0 38 80 00 01 */ li r4, 1 +/* 801A9844 001A67A4 48 1E 06 B1 */ bl __shl2i +/* 801A9848 001A67A8 80 AD 90 70 */ lwz r5, lbl_805A7C30@sda21(r13) +/* 801A984C 001A67AC 7C 9C 23 78 */ mr r28, r4 +/* 801A9850 001A67B0 7C 7A 1B 78 */ mr r26, r3 +/* 801A9854 001A67B4 38 60 00 00 */ li r3, 0 +/* 801A9858 001A67B8 38 80 00 01 */ li r4, 1 +/* 801A985C 001A67BC 48 1E 06 99 */ bl __shl2i +/* 801A9860 001A67C0 80 AD 90 68 */ lwz r5, lbl_805A7C28@sda21(r13) +/* 801A9864 001A67C4 7F 9C 23 78 */ or r28, r28, r4 +/* 801A9868 001A67C8 7F 5A 1B 78 */ or r26, r26, r3 +/* 801A986C 001A67CC 38 60 00 00 */ li r3, 0 +/* 801A9870 001A67D0 38 80 00 01 */ li r4, 1 +/* 801A9874 001A67D4 48 1E 06 81 */ bl __shl2i +/* 801A9878 001A67D8 38 00 00 03 */ li r0, 3 +/* 801A987C 001A67DC 90 81 00 54 */ stw r4, 0x54(r1) +/* 801A9880 001A67E0 38 81 00 50 */ addi r4, r1, 0x50 +/* 801A9884 001A67E4 90 61 00 50 */ stw r3, 0x50(r1) +/* 801A9888 001A67E8 7F 63 DB 78 */ mr r3, r27 +/* 801A988C 001A67EC 93 81 00 5C */ stw r28, 0x5c(r1) +/* 801A9890 001A67F0 93 41 00 58 */ stw r26, 0x58(r1) +/* 801A9894 001A67F4 90 01 00 60 */ stw r0, 0x60(r1) +/* 801A9898 001A67F8 4B EA A0 09 */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter +/* 801A989C 001A67FC 7F 63 DB 78 */ mr r3, r27 +/* 801A98A0 001A6800 E3 E1 01 B8 */ psq_l f31, 440(r1), 0, qr0 +/* 801A98A4 001A6804 CB E1 01 B0 */ lfd f31, 0x1b0(r1) +/* 801A98A8 001A6808 E3 C1 01 A8 */ psq_l f30, 424(r1), 0, qr0 +/* 801A98AC 001A680C CB C1 01 A0 */ lfd f30, 0x1a0(r1) +/* 801A98B0 001A6810 E3 A1 01 98 */ psq_l f29, 408(r1), 0, qr0 +/* 801A98B4 001A6814 CB A1 01 90 */ lfd f29, 0x190(r1) +/* 801A98B8 001A6818 E3 81 01 88 */ psq_l f28, 392(r1), 0, qr0 +/* 801A98BC 001A681C CB 81 01 80 */ lfd f28, 0x180(r1) +/* 801A98C0 001A6820 BB 41 01 68 */ lmw r26, 0x168(r1) +/* 801A98C4 001A6824 80 01 01 C4 */ lwz r0, 0x1c4(r1) +/* 801A98C8 001A6828 7C 08 03 A6 */ mtlr r0 +/* 801A98CC 001A682C 38 21 01 C0 */ addi r1, r1, 0x1c0 +/* 801A98D0 001A6830 4E 80 00 20 */ blr + +.global __ct__15CCollisionActorF9TUniqueId9TUniqueIdRC9CVector3fRC9CVector3fbf +__ct__15CCollisionActorF9TUniqueId9TUniqueIdRC9CVector3fRC9CVector3fbf: +/* 801A98D4 001A6834 94 21 FE 30 */ stwu r1, -0x1d0(r1) +/* 801A98D8 001A6838 7C 08 02 A6 */ mflr r0 +/* 801A98DC 001A683C 90 01 01 D4 */ stw r0, 0x1d4(r1) +/* 801A98E0 001A6840 DB E1 01 C0 */ stfd f31, 0x1c0(r1) +/* 801A98E4 001A6844 F3 E1 01 C8 */ psq_st f31, 456(r1), 0, qr0 +/* 801A98E8 001A6848 BF 21 01 A4 */ stmw r25, 0x1a4(r1) +/* 801A98EC 001A684C 3D 20 80 3D */ lis r9, lbl_803D14A0@ha +/* 801A98F0 001A6850 FF E0 08 90 */ fmr f31, f1 +/* 801A98F4 001A6854 38 09 14 A0 */ addi r0, r9, lbl_803D14A0@l +/* 801A98F8 001A6858 7C 7A 1B 78 */ mr r26, r3 +/* 801A98FC 001A685C 7C 9B 23 78 */ mr r27, r4 +/* 801A9900 001A6860 7C B9 2B 78 */ mr r25, r5 +/* 801A9904 001A6864 7C DC 33 78 */ mr r28, r6 +/* 801A9908 001A6868 7C FD 3B 78 */ mr r29, r7 +/* 801A990C 001A686C 7D 1E 43 78 */ mr r30, r8 +/* 801A9910 001A6870 7C 04 03 78 */ mr r4, r0 +/* 801A9914 001A6874 38 61 00 58 */ addi r3, r1, 0x58 +/* 801A9918 001A6878 4B E5 B3 A1 */ bl string_l__4rstlFPCc +/* 801A991C 001A687C 80 8D A3 88 */ lwz r4, lbl_805A8F48@sda21(r13) +/* 801A9920 001A6880 3C 60 80 57 */ lis r3, lbl_8056D410@ha +/* 801A9924 001A6884 80 19 00 00 */ lwz r0, 0(r25) +/* 801A9928 001A6888 38 A3 D4 10 */ addi r5, r3, lbl_8056D410@l +/* 801A992C 001A688C 90 81 00 2C */ stw r4, 0x2c(r1) +/* 801A9930 001A6890 38 61 00 98 */ addi r3, r1, 0x98 +/* 801A9934 001A6894 38 81 00 30 */ addi r4, r1, 0x30 +/* 801A9938 001A6898 38 C1 00 2C */ addi r6, r1, 0x2c +/* 801A993C 001A689C 90 01 00 30 */ stw r0, 0x30(r1) +/* 801A9940 001A68A0 4B EA 7B 45 */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" +/* 801A9944 001A68A4 38 61 01 4C */ addi r3, r1, 0x14c +/* 801A9948 001A68A8 4B E9 0E 5D */ bl CModelDataNull__10CModelDataFv +/* 801A994C 001A68AC 38 61 00 E4 */ addi r3, r1, 0xe4 +/* 801A9950 001A68B0 4B E7 14 E9 */ bl None__16CActorParametersFv +/* 801A9954 001A68B4 4B E7 1B E1 */ bl Identity__10CAxisAngleFv +/* 801A9958 001A68B8 7C 79 1B 78 */ mr r25, r3 +/* 801A995C 001A68BC 4B E7 1B D9 */ bl Identity__10CAxisAngleFv +/* 801A9960 001A68C0 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801A9964 001A68C4 3C A0 80 5A */ lis r5, lbl_805A6784@ha +/* 801A9968 001A68C8 3B E4 66 A0 */ addi r31, r4, skZero3f@l +/* 801A996C 001A68CC A3 7B 00 00 */ lhz r27, 0(r27) +/* 801A9970 001A68D0 C0 7F 00 00 */ lfs f3, 0(r31) +/* 801A9974 001A68D4 39 85 67 84 */ addi r12, r5, lbl_805A6784@l +/* 801A9978 001A68D8 C0 9F 00 04 */ lfs f4, 4(r31) +/* 801A997C 001A68DC 3C 80 80 5A */ lis r4, skIdentity4f@ha +/* 801A9980 001A68E0 C0 BF 00 08 */ lfs f5, 8(r31) +/* 801A9984 001A68E4 39 04 66 70 */ addi r8, r4, skIdentity4f@l +/* 801A9988 001A68E8 D0 61 00 B0 */ stfs f3, 0xb0(r1) +/* 801A998C 001A68EC 39 61 00 B0 */ addi r11, r1, 0xb0 +/* 801A9990 001A68F0 38 01 00 E4 */ addi r0, r1, 0xe4 +/* 801A9994 001A68F4 C0 22 A8 28 */ lfs f1, lbl_805AC548@sda21(r2) +/* 801A9998 001A68F8 D0 81 00 B4 */ stfs f4, 0xb4(r1) +/* 801A999C 001A68FC 7F C5 F3 78 */ mr r5, r30 +/* 801A99A0 001A6900 C0 42 A8 2C */ lfs f2, lbl_805AC54C@sda21(r2) +/* 801A99A4 001A6904 38 81 00 18 */ addi r4, r1, 0x18 +/* 801A99A8 001A6908 D0 A1 00 B8 */ stfs f5, 0xb8(r1) +/* 801A99AC 001A690C 38 C1 00 58 */ addi r6, r1, 0x58 +/* 801A99B0 001A6910 38 E1 00 98 */ addi r7, r1, 0x98 +/* 801A99B4 001A6914 39 21 01 4C */ addi r9, r1, 0x14c +/* 801A99B8 001A6918 C0 03 00 00 */ lfs f0, 0(r3) +/* 801A99BC 001A691C 39 4D A4 90 */ addi r10, r13, lbl_805A9050@sda21 +/* 801A99C0 001A6920 D0 01 00 BC */ stfs f0, 0xbc(r1) +/* 801A99C4 001A6924 C0 03 00 04 */ lfs f0, 4(r3) +/* 801A99C8 001A6928 D0 01 00 C0 */ stfs f0, 0xc0(r1) +/* 801A99CC 001A692C C0 03 00 08 */ lfs f0, 8(r3) +/* 801A99D0 001A6930 7F 43 D3 78 */ mr r3, r26 +/* 801A99D4 001A6934 D0 01 00 C4 */ stfs f0, 0xc4(r1) +/* 801A99D8 001A6938 D0 61 00 C8 */ stfs f3, 0xc8(r1) +/* 801A99DC 001A693C D0 81 00 CC */ stfs f4, 0xcc(r1) +/* 801A99E0 001A6940 D0 A1 00 D0 */ stfs f5, 0xd0(r1) +/* 801A99E4 001A6944 C0 19 00 00 */ lfs f0, 0(r25) +/* 801A99E8 001A6948 D0 01 00 D4 */ stfs f0, 0xd4(r1) +/* 801A99EC 001A694C C0 19 00 04 */ lfs f0, 4(r25) +/* 801A99F0 001A6950 D0 01 00 D8 */ stfs f0, 0xd8(r1) +/* 801A99F4 001A6954 C0 19 00 08 */ lfs f0, 8(r25) +/* 801A99F8 001A6958 D0 01 00 DC */ stfs f0, 0xdc(r1) +/* 801A99FC 001A695C D3 E1 00 E0 */ stfs f31, 0xe0(r1) +/* 801A9A00 001A6960 B3 61 00 18 */ sth r27, 0x18(r1) +/* 801A9A04 001A6964 91 81 00 08 */ stw r12, 8(r1) +/* 801A9A08 001A6968 91 61 00 0C */ stw r11, 0xc(r1) +/* 801A9A0C 001A696C 90 01 00 10 */ stw r0, 0x10(r1) +/* 801A9A10 001A6970 4B F7 2A A1 */ bl "__ct__13CPhysicsActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC6CAABoxRC10SMoverDataRC16CActorParametersff" +/* 801A9A14 001A6974 38 61 00 E4 */ addi r3, r1, 0xe4 +/* 801A9A18 001A6978 38 80 FF FF */ li r4, -1 +/* 801A9A1C 001A697C 4B F5 CB ED */ bl __dt__16CActorParametersFv +/* 801A9A20 001A6980 38 61 01 4C */ addi r3, r1, 0x14c +/* 801A9A24 001A6984 38 80 FF FF */ li r4, -1 +/* 801A9A28 001A6988 4B F6 D0 25 */ bl __dt__10CModelDataFv +/* 801A9A2C 001A698C 80 01 00 A0 */ lwz r0, 0xa0(r1) +/* 801A9A30 001A6990 80 61 00 A8 */ lwz r3, 0xa8(r1) +/* 801A9A34 001A6994 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801A9A38 001A6998 90 61 00 20 */ stw r3, 0x20(r1) +/* 801A9A3C 001A699C 7C 64 1B 78 */ mr r4, r3 +/* 801A9A40 001A69A0 7C 03 02 14 */ add r0, r3, r0 +/* 801A9A44 001A69A4 90 61 00 1C */ stw r3, 0x1c(r1) +/* 801A9A48 001A69A8 90 01 00 28 */ stw r0, 0x28(r1) +/* 801A9A4C 001A69AC 90 01 00 24 */ stw r0, 0x24(r1) +/* 801A9A50 001A69B0 48 00 00 08 */ b lbl_801A9A58 +lbl_801A9A54: +/* 801A9A54 001A69B4 38 84 00 0C */ addi r4, r4, 0xc +lbl_801A9A58: +/* 801A9A58 001A69B8 7C 04 00 40 */ cmplw r4, r0 +/* 801A9A5C 001A69BC 40 82 FF F8 */ bne lbl_801A9A54 +/* 801A9A60 001A69C0 28 03 00 00 */ cmplwi r3, 0 +/* 801A9A64 001A69C4 41 82 00 08 */ beq lbl_801A9A6C +/* 801A9A68 001A69C8 48 16 BE C9 */ bl Free__7CMemoryFPCv +lbl_801A9A6C: +/* 801A9A6C 001A69CC 38 61 00 58 */ addi r3, r1, 0x58 +/* 801A9A70 001A69D0 48 19 40 71 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801A9A74 001A69D4 3C 60 80 3E */ lis r3, lbl_803E4B18@ha +/* 801A9A78 001A69D8 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801A9A7C 001A69DC 38 03 4B 18 */ addi r0, r3, lbl_803E4B18@l +/* 801A9A80 001A69E0 3C 60 80 3D */ lis r3, lbl_803D14A0@ha +/* 801A9A84 001A69E4 90 1A 00 00 */ stw r0, 0(r26) +/* 801A9A88 001A69E8 38 00 00 01 */ li r0, 1 +/* 801A9A8C 001A69EC 38 63 14 A0 */ addi r3, r3, lbl_803D14A0@l +/* 801A9A90 001A69F0 38 C4 66 A0 */ addi r6, r4, skZero3f@l +/* 801A9A94 001A69F4 90 1A 02 58 */ stw r0, 0x258(r26) +/* 801A9A98 001A69F8 38 00 00 00 */ li r0, 0 +/* 801A9A9C 001A69FC 38 83 00 0F */ addi r4, r3, 0xf +/* 801A9AA0 001A6A00 38 60 00 28 */ li r3, 0x28 +/* 801A9AA4 001A6A04 A0 FC 00 00 */ lhz r7, 0(r28) +/* 801A9AA8 001A6A08 38 A0 00 00 */ li r5, 0 +/* 801A9AAC 001A6A0C B0 FA 02 5C */ sth r7, 0x25c(r26) +/* 801A9AB0 001A6A10 C0 1D 00 00 */ lfs f0, 0(r29) +/* 801A9AB4 001A6A14 D0 1A 02 60 */ stfs f0, 0x260(r26) +/* 801A9AB8 001A6A18 C0 1D 00 04 */ lfs f0, 4(r29) +/* 801A9ABC 001A6A1C D0 1A 02 64 */ stfs f0, 0x264(r26) +/* 801A9AC0 001A6A20 C0 1D 00 08 */ lfs f0, 8(r29) +/* 801A9AC4 001A6A24 D0 1A 02 68 */ stfs f0, 0x268(r26) +/* 801A9AC8 001A6A28 C0 06 00 00 */ lfs f0, 0(r6) +/* 801A9ACC 001A6A2C D0 1A 02 6C */ stfs f0, 0x26c(r26) +/* 801A9AD0 001A6A30 C0 1F 00 04 */ lfs f0, 4(r31) +/* 801A9AD4 001A6A34 D0 1A 02 70 */ stfs f0, 0x270(r26) +/* 801A9AD8 001A6A38 C0 1F 00 08 */ lfs f0, 8(r31) +/* 801A9ADC 001A6A3C D0 1A 02 74 */ stfs f0, 0x274(r26) +/* 801A9AE0 001A6A40 90 1A 02 78 */ stw r0, 0x278(r26) +/* 801A9AE4 001A6A44 90 1A 02 7C */ stw r0, 0x27c(r26) +/* 801A9AE8 001A6A48 48 16 BD 85 */ bl __nw__FUlPCcPCc +/* 801A9AEC 001A6A4C 7C 79 1B 79 */ or. r25, r3, r3 +/* 801A9AF0 001A6A50 41 82 00 FC */ beq lbl_801A9BEC +/* 801A9AF4 001A6A54 C0 82 A8 34 */ lfs f4, lbl_805AC554@sda21(r2) +/* 801A9AF8 001A6A58 38 00 00 00 */ li r0, 0 +/* 801A9AFC 001A6A5C C0 7A 02 60 */ lfs f3, 0x260(r26) +/* 801A9B00 001A6A60 38 60 00 00 */ li r3, 0 +/* 801A9B04 001A6A64 C0 5A 02 64 */ lfs f2, 0x264(r26) +/* 801A9B08 001A6A68 38 80 00 01 */ li r4, 1 +/* 801A9B0C 001A6A6C C0 3A 02 68 */ lfs f1, 0x268(r26) +/* 801A9B10 001A6A70 EC C4 00 F2 */ fmuls f6, f4, f3 +/* 801A9B14 001A6A74 EC A4 00 B2 */ fmuls f5, f4, f2 +/* 801A9B18 001A6A78 C0 02 A8 20 */ lfs f0, lbl_805AC540@sda21(r2) +/* 801A9B1C 001A6A7C EC 84 00 72 */ fmuls f4, f4, f1 +/* 801A9B20 001A6A80 80 AD 90 4C */ lwz r5, lbl_805A7C0C@sda21(r13) +/* 801A9B24 001A6A84 EC 40 00 B2 */ fmuls f2, f0, f2 +/* 801A9B28 001A6A88 EC 20 00 72 */ fmuls f1, f0, f1 +/* 801A9B2C 001A6A8C EC 00 00 F2 */ fmuls f0, f0, f3 +/* 801A9B30 001A6A90 D0 C1 00 40 */ stfs f6, 0x40(r1) +/* 801A9B34 001A6A94 D0 A1 00 44 */ stfs f5, 0x44(r1) +/* 801A9B38 001A6A98 D0 81 00 48 */ stfs f4, 0x48(r1) +/* 801A9B3C 001A6A9C D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 801A9B40 001A6AA0 D0 41 00 50 */ stfs f2, 0x50(r1) +/* 801A9B44 001A6AA4 D0 21 00 54 */ stfs f1, 0x54(r1) +/* 801A9B48 001A6AA8 90 01 00 3C */ stw r0, 0x3c(r1) +/* 801A9B4C 001A6AAC 90 01 00 38 */ stw r0, 0x38(r1) +/* 801A9B50 001A6AB0 48 1E 03 A5 */ bl __shl2i +/* 801A9B54 001A6AB4 80 01 00 38 */ lwz r0, 0x38(r1) +/* 801A9B58 001A6AB8 80 C1 00 3C */ lwz r6, 0x3c(r1) +/* 801A9B5C 001A6ABC 7C 00 1B 78 */ or r0, r0, r3 +/* 801A9B60 001A6AC0 80 AD 90 50 */ lwz r5, lbl_805A7C10@sda21(r13) +/* 801A9B64 001A6AC4 7C C4 23 78 */ or r4, r6, r4 +/* 801A9B68 001A6AC8 90 01 00 38 */ stw r0, 0x38(r1) +/* 801A9B6C 001A6ACC 38 60 00 00 */ li r3, 0 +/* 801A9B70 001A6AD0 90 81 00 3C */ stw r4, 0x3c(r1) +/* 801A9B74 001A6AD4 38 80 00 01 */ li r4, 1 +/* 801A9B78 001A6AD8 48 1E 03 7D */ bl __shl2i +/* 801A9B7C 001A6ADC 80 01 00 38 */ lwz r0, 0x38(r1) +/* 801A9B80 001A6AE0 38 A1 00 4C */ addi r5, r1, 0x4c +/* 801A9B84 001A6AE4 80 C1 00 3C */ lwz r6, 0x3c(r1) +/* 801A9B88 001A6AE8 7C 00 1B 78 */ or r0, r0, r3 +/* 801A9B8C 001A6AEC 38 61 00 80 */ addi r3, r1, 0x80 +/* 801A9B90 001A6AF0 7C C6 23 78 */ or r6, r6, r4 +/* 801A9B94 001A6AF4 90 01 00 38 */ stw r0, 0x38(r1) +/* 801A9B98 001A6AF8 38 81 00 40 */ addi r4, r1, 0x40 +/* 801A9B9C 001A6AFC 90 C1 00 3C */ stw r6, 0x3c(r1) +/* 801A9BA0 001A6B00 48 18 E9 69 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801A9BA4 001A6B04 7F 23 CB 78 */ mr r3, r25 +/* 801A9BA8 001A6B08 38 81 00 38 */ addi r4, r1, 0x38 +/* 801A9BAC 001A6B0C 48 12 5D 09 */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList +/* 801A9BB0 001A6B10 3C 60 80 3F */ lis r3, lbl_803ECAD0@ha +/* 801A9BB4 001A6B14 38 03 CA D0 */ addi r0, r3, lbl_803ECAD0@l +/* 801A9BB8 001A6B18 90 19 00 00 */ stw r0, 0(r25) +/* 801A9BBC 001A6B1C C0 01 00 80 */ lfs f0, 0x80(r1) +/* 801A9BC0 001A6B20 D0 19 00 10 */ stfs f0, 0x10(r25) +/* 801A9BC4 001A6B24 C0 01 00 84 */ lfs f0, 0x84(r1) +/* 801A9BC8 001A6B28 D0 19 00 14 */ stfs f0, 0x14(r25) +/* 801A9BCC 001A6B2C C0 01 00 88 */ lfs f0, 0x88(r1) +/* 801A9BD0 001A6B30 D0 19 00 18 */ stfs f0, 0x18(r25) +/* 801A9BD4 001A6B34 C0 01 00 8C */ lfs f0, 0x8c(r1) +/* 801A9BD8 001A6B38 D0 19 00 1C */ stfs f0, 0x1c(r25) +/* 801A9BDC 001A6B3C C0 01 00 90 */ lfs f0, 0x90(r1) +/* 801A9BE0 001A6B40 D0 19 00 20 */ stfs f0, 0x20(r25) +/* 801A9BE4 001A6B44 C0 01 00 94 */ lfs f0, 0x94(r1) +/* 801A9BE8 001A6B48 D0 19 00 24 */ stfs f0, 0x24(r25) +lbl_801A9BEC: +/* 801A9BEC 001A6B4C 93 3A 02 80 */ stw r25, 0x280(r26) +/* 801A9BF0 001A6B50 38 00 00 00 */ li r0, 0 +/* 801A9BF4 001A6B54 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801A9BF8 001A6B58 C0 02 A8 30 */ lfs f0, lbl_805AC550@sda21(r2) +/* 801A9BFC 001A6B5C 90 1A 02 84 */ stw r0, 0x284(r26) +/* 801A9C00 001A6B60 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 801A9C04 001A6B64 3C 80 80 57 */ lis r4, lbl_80570004@ha +/* 801A9C08 001A6B68 38 00 00 10 */ li r0, 0x10 +/* 801A9C0C 001A6B6C D0 1A 02 88 */ stfs f0, 0x288(r26) +/* 801A9C10 001A6B70 7F 43 D3 78 */ mr r3, r26 +/* 801A9C14 001A6B74 C0 22 A8 20 */ lfs f1, lbl_805AC540@sda21(r2) +/* 801A9C18 001A6B78 D0 1A 02 8C */ stfs f0, 0x28c(r26) +/* 801A9C1C 001A6B7C D0 1A 02 90 */ stfs f0, 0x290(r26) +/* 801A9C20 001A6B80 84 E4 D5 78 */ lwzu r7, -0x2a88(r4) +/* 801A9C24 001A6B84 80 C4 00 04 */ lwz r6, lbl_80570004@l(r4) +/* 801A9C28 001A6B88 90 FA 02 94 */ stw r7, 0x294(r26) +/* 801A9C2C 001A6B8C 90 DA 02 98 */ stw r6, 0x298(r26) +/* 801A9C30 001A6B90 80 E4 00 08 */ lwz r7, 8(r4) +/* 801A9C34 001A6B94 80 C4 00 0C */ lwz r6, 0xc(r4) +/* 801A9C38 001A6B98 90 FA 02 9C */ stw r7, 0x29c(r26) +/* 801A9C3C 001A6B9C 90 DA 02 A0 */ stw r6, 0x2a0(r26) +/* 801A9C40 001A6BA0 80 E4 00 10 */ lwz r7, 0x10(r4) +/* 801A9C44 001A6BA4 80 C4 00 14 */ lwz r6, 0x14(r4) +/* 801A9C48 001A6BA8 90 FA 02 A4 */ stw r7, 0x2a4(r26) +/* 801A9C4C 001A6BAC 90 DA 02 A8 */ stw r6, 0x2a8(r26) +/* 801A9C50 001A6BB0 80 E4 00 18 */ lwz r7, 0x18(r4) +/* 801A9C54 001A6BB4 80 C4 00 1C */ lwz r6, 0x1c(r4) +/* 801A9C58 001A6BB8 90 FA 02 AC */ stw r7, 0x2ac(r26) +/* 801A9C5C 001A6BBC 90 DA 02 B0 */ stw r6, 0x2b0(r26) +/* 801A9C60 001A6BC0 80 E4 00 20 */ lwz r7, 0x20(r4) +/* 801A9C64 001A6BC4 80 C4 00 24 */ lwz r6, 0x24(r4) +/* 801A9C68 001A6BC8 90 FA 02 B4 */ stw r7, 0x2b4(r26) +/* 801A9C6C 001A6BCC 90 DA 02 B8 */ stw r6, 0x2b8(r26) +/* 801A9C70 001A6BD0 80 E4 00 28 */ lwz r7, 0x28(r4) +/* 801A9C74 001A6BD4 80 C4 00 2C */ lwz r6, 0x2c(r4) +/* 801A9C78 001A6BD8 90 FA 02 BC */ stw r7, 0x2bc(r26) +/* 801A9C7C 001A6BDC 90 DA 02 C0 */ stw r6, 0x2c0(r26) +/* 801A9C80 001A6BE0 80 E4 00 30 */ lwz r7, 0x30(r4) +/* 801A9C84 001A6BE4 80 C4 00 34 */ lwz r6, 0x34(r4) +/* 801A9C88 001A6BE8 90 FA 02 C4 */ stw r7, 0x2c4(r26) +/* 801A9C8C 001A6BEC 90 DA 02 C8 */ stw r6, 0x2c8(r26) +/* 801A9C90 001A6BF0 80 C4 00 38 */ lwz r6, 0x38(r4) +/* 801A9C94 001A6BF4 90 DA 02 CC */ stw r6, 0x2cc(r26) +/* 801A9C98 001A6BF8 80 E4 00 3C */ lwz r7, 0x3c(r4) +/* 801A9C9C 001A6BFC 80 C4 00 40 */ lwz r6, 0x40(r4) +/* 801A9CA0 001A6C00 90 FA 02 D0 */ stw r7, 0x2d0(r26) +/* 801A9CA4 001A6C04 90 DA 02 D4 */ stw r6, 0x2d4(r26) +/* 801A9CA8 001A6C08 80 E4 00 44 */ lwz r7, 0x44(r4) +/* 801A9CAC 001A6C0C 80 C4 00 48 */ lwz r6, 0x48(r4) +/* 801A9CB0 001A6C10 90 FA 02 D8 */ stw r7, 0x2d8(r26) +/* 801A9CB4 001A6C14 90 DA 02 DC */ stw r6, 0x2dc(r26) +/* 801A9CB8 001A6C18 80 E4 00 4C */ lwz r7, 0x4c(r4) +/* 801A9CBC 001A6C1C 80 C4 00 50 */ lwz r6, 0x50(r4) +/* 801A9CC0 001A6C20 90 FA 02 E0 */ stw r7, 0x2e0(r26) +/* 801A9CC4 001A6C24 90 DA 02 E4 */ stw r6, 0x2e4(r26) +/* 801A9CC8 001A6C28 80 E4 00 54 */ lwz r7, 0x54(r4) +/* 801A9CCC 001A6C2C 80 C4 00 58 */ lwz r6, 0x58(r4) +/* 801A9CD0 001A6C30 90 FA 02 E8 */ stw r7, 0x2e8(r26) +/* 801A9CD4 001A6C34 90 DA 02 EC */ stw r6, 0x2ec(r26) +/* 801A9CD8 001A6C38 80 C4 00 5C */ lwz r6, 0x5c(r4) +/* 801A9CDC 001A6C3C 90 DA 02 F0 */ stw r6, 0x2f0(r26) +/* 801A9CE0 001A6C40 80 C4 00 60 */ lwz r6, 0x60(r4) +/* 801A9CE4 001A6C44 90 DA 02 F4 */ stw r6, 0x2f4(r26) +/* 801A9CE8 001A6C48 80 84 00 64 */ lwz r4, 0x64(r4) +/* 801A9CEC 001A6C4C 90 9A 02 F8 */ stw r4, 0x2f8(r26) +/* 801A9CF0 001A6C50 A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 801A9CF4 001A6C54 B0 9A 02 FC */ sth r4, 0x2fc(r26) +/* 801A9CF8 001A6C58 90 1A 03 00 */ stw r0, 0x300(r26) +/* 801A9CFC 001A6C5C C0 05 00 00 */ lfs f0, 0(r5) +/* 801A9D00 001A6C60 D0 1A 03 04 */ stfs f0, 0x304(r26) +/* 801A9D04 001A6C64 C0 1F 00 04 */ lfs f0, 4(r31) +/* 801A9D08 001A6C68 D0 1A 03 08 */ stfs f0, 0x308(r26) +/* 801A9D0C 001A6C6C C0 1F 00 08 */ lfs f0, 8(r31) +/* 801A9D10 001A6C70 D0 1A 03 0C */ stfs f0, 0x30c(r26) +/* 801A9D14 001A6C74 4B F7 07 CD */ bl SetCoefficientOfRestitutionModifier__13CPhysicsActorFf +/* 801A9D18 001A6C78 7F 43 D3 78 */ mr r3, r26 +/* 801A9D1C 001A6C7C 38 80 00 00 */ li r4, 0 +/* 801A9D20 001A6C80 4B EA A6 99 */ bl SetCallTouch__6CActorFb +/* 801A9D24 001A6C84 80 AD 90 58 */ lwz r5, lbl_805A7C18@sda21(r13) +/* 801A9D28 001A6C88 38 60 00 00 */ li r3, 0 +/* 801A9D2C 001A6C8C 38 80 00 01 */ li r4, 1 +/* 801A9D30 001A6C90 48 1E 01 C5 */ bl __shl2i +/* 801A9D34 001A6C94 80 AD 90 5C */ lwz r5, lbl_805A7C1C@sda21(r13) +/* 801A9D38 001A6C98 7C 9B 23 78 */ mr r27, r4 +/* 801A9D3C 001A6C9C 7C 79 1B 78 */ mr r25, r3 +/* 801A9D40 001A6CA0 38 60 00 00 */ li r3, 0 +/* 801A9D44 001A6CA4 38 80 00 01 */ li r4, 1 +/* 801A9D48 001A6CA8 48 1E 01 AD */ bl __shl2i +/* 801A9D4C 001A6CAC 80 AD 90 54 */ lwz r5, lbl_805A7C14@sda21(r13) +/* 801A9D50 001A6CB0 7F 7B 23 78 */ or r27, r27, r4 +/* 801A9D54 001A6CB4 7F 39 1B 78 */ or r25, r25, r3 +/* 801A9D58 001A6CB8 38 60 00 00 */ li r3, 0 +/* 801A9D5C 001A6CBC 38 80 00 01 */ li r4, 1 +/* 801A9D60 001A6CC0 48 1E 01 95 */ bl __shl2i +/* 801A9D64 001A6CC4 38 00 00 03 */ li r0, 3 +/* 801A9D68 001A6CC8 90 81 00 6C */ stw r4, 0x6c(r1) +/* 801A9D6C 001A6CCC 38 81 00 68 */ addi r4, r1, 0x68 +/* 801A9D70 001A6CD0 90 61 00 68 */ stw r3, 0x68(r1) +/* 801A9D74 001A6CD4 7F 43 D3 78 */ mr r3, r26 +/* 801A9D78 001A6CD8 93 61 00 74 */ stw r27, 0x74(r1) +/* 801A9D7C 001A6CDC 93 21 00 70 */ stw r25, 0x70(r1) +/* 801A9D80 001A6CE0 90 01 00 78 */ stw r0, 0x78(r1) +/* 801A9D84 001A6CE4 4B EA 9B 1D */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter +/* 801A9D88 001A6CE8 7F 43 D3 78 */ mr r3, r26 +/* 801A9D8C 001A6CEC E3 E1 01 C8 */ psq_l f31, 456(r1), 0, qr0 +/* 801A9D90 001A6CF0 CB E1 01 C0 */ lfd f31, 0x1c0(r1) +/* 801A9D94 001A6CF4 BB 21 01 A4 */ lmw r25, 0x1a4(r1) +/* 801A9D98 001A6CF8 80 01 01 D4 */ lwz r0, 0x1d4(r1) +/* 801A9D9C 001A6CFC 7C 08 03 A6 */ mtlr r0 +/* 801A9DA0 001A6D00 38 21 01 D0 */ addi r1, r1, 0x1d0 +/* 801A9DA4 001A6D04 4E 80 00 20 */ blr + +.global __ct__15CCollisionActorF9TUniqueIdCRi9TUniqueIdRC9CVector3fRC9CVector3fbf +__ct__15CCollisionActorF9TUniqueIdCRi9TUniqueIdRC9CVector3fRC9CVector3fbf: +/* 801A9DA8 001A6D08 94 21 FE 70 */ stwu r1, -0x190(r1) +/* 801A9DAC 001A6D0C 7C 08 02 A6 */ mflr r0 +/* 801A9DB0 001A6D10 90 01 01 94 */ stw r0, 0x194(r1) +/* 801A9DB4 001A6D14 DB E1 01 80 */ stfd f31, 0x180(r1) +/* 801A9DB8 001A6D18 F3 E1 01 88 */ psq_st f31, 392(r1), 0, qr0 +/* 801A9DBC 001A6D1C BF 01 01 60 */ stmw r24, 0x160(r1) +/* 801A9DC0 001A6D20 3D 40 80 3D */ lis r10, lbl_803D14A0@ha +/* 801A9DC4 001A6D24 FF E0 08 90 */ fmr f31, f1 +/* 801A9DC8 001A6D28 38 0A 14 A0 */ addi r0, r10, lbl_803D14A0@l +/* 801A9DCC 001A6D2C 7C 7F 1B 78 */ mr r31, r3 +/* 801A9DD0 001A6D30 7C 99 23 78 */ mr r25, r4 +/* 801A9DD4 001A6D34 7C B8 2B 78 */ mr r24, r5 +/* 801A9DD8 001A6D38 7C DA 33 78 */ mr r26, r6 +/* 801A9DDC 001A6D3C 7C FB 3B 78 */ mr r27, r7 +/* 801A9DE0 001A6D40 7D 1C 43 78 */ mr r28, r8 +/* 801A9DE4 001A6D44 7D 3D 4B 78 */ mr r29, r9 +/* 801A9DE8 001A6D48 7C 04 03 78 */ mr r4, r0 +/* 801A9DEC 001A6D4C 38 61 00 34 */ addi r3, r1, 0x34 +/* 801A9DF0 001A6D50 4B E5 AE C9 */ bl string_l__4rstlFPCc +/* 801A9DF4 001A6D54 80 8D A3 88 */ lwz r4, lbl_805A8F48@sda21(r13) +/* 801A9DF8 001A6D58 3C 60 80 57 */ lis r3, lbl_8056D410@ha +/* 801A9DFC 001A6D5C 80 18 00 00 */ lwz r0, 0(r24) +/* 801A9E00 001A6D60 38 A3 D4 10 */ addi r5, r3, lbl_8056D410@l +/* 801A9E04 001A6D64 90 81 00 2C */ stw r4, 0x2c(r1) +/* 801A9E08 001A6D68 38 61 00 60 */ addi r3, r1, 0x60 +/* 801A9E0C 001A6D6C 38 81 00 30 */ addi r4, r1, 0x30 +/* 801A9E10 001A6D70 38 C1 00 2C */ addi r6, r1, 0x2c +/* 801A9E14 001A6D74 90 01 00 30 */ stw r0, 0x30(r1) +/* 801A9E18 001A6D78 4B EA 76 6D */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" +/* 801A9E1C 001A6D7C 38 61 01 14 */ addi r3, r1, 0x114 +/* 801A9E20 001A6D80 4B E9 09 85 */ bl CModelDataNull__10CModelDataFv +/* 801A9E24 001A6D84 38 61 00 AC */ addi r3, r1, 0xac +/* 801A9E28 001A6D88 4B E7 10 11 */ bl None__16CActorParametersFv +/* 801A9E2C 001A6D8C 4B E7 17 09 */ bl Identity__10CAxisAngleFv +/* 801A9E30 001A6D90 7C 78 1B 78 */ mr r24, r3 +/* 801A9E34 001A6D94 4B E7 17 01 */ bl Identity__10CAxisAngleFv +/* 801A9E38 001A6D98 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801A9E3C 001A6D9C 3C A0 80 5A */ lis r5, lbl_805A6784@ha +/* 801A9E40 001A6DA0 3B C4 66 A0 */ addi r30, r4, skZero3f@l +/* 801A9E44 001A6DA4 A3 39 00 00 */ lhz r25, 0(r25) +/* 801A9E48 001A6DA8 C0 7E 00 00 */ lfs f3, 0(r30) +/* 801A9E4C 001A6DAC 39 85 67 84 */ addi r12, r5, lbl_805A6784@l +/* 801A9E50 001A6DB0 C0 9E 00 04 */ lfs f4, 4(r30) +/* 801A9E54 001A6DB4 3C 80 80 5A */ lis r4, skIdentity4f@ha +/* 801A9E58 001A6DB8 C0 BE 00 08 */ lfs f5, 8(r30) +/* 801A9E5C 001A6DBC 39 04 66 70 */ addi r8, r4, skIdentity4f@l +/* 801A9E60 001A6DC0 D0 61 00 78 */ stfs f3, 0x78(r1) +/* 801A9E64 001A6DC4 39 61 00 78 */ addi r11, r1, 0x78 +/* 801A9E68 001A6DC8 38 01 00 AC */ addi r0, r1, 0xac +/* 801A9E6C 001A6DCC C0 22 A8 28 */ lfs f1, lbl_805AC548@sda21(r2) +/* 801A9E70 001A6DD0 D0 81 00 7C */ stfs f4, 0x7c(r1) +/* 801A9E74 001A6DD4 7F A5 EB 78 */ mr r5, r29 +/* 801A9E78 001A6DD8 C0 42 A8 2C */ lfs f2, lbl_805AC54C@sda21(r2) +/* 801A9E7C 001A6DDC 38 81 00 18 */ addi r4, r1, 0x18 +/* 801A9E80 001A6DE0 D0 A1 00 80 */ stfs f5, 0x80(r1) +/* 801A9E84 001A6DE4 38 C1 00 34 */ addi r6, r1, 0x34 +/* 801A9E88 001A6DE8 38 E1 00 60 */ addi r7, r1, 0x60 +/* 801A9E8C 001A6DEC 39 21 01 14 */ addi r9, r1, 0x114 +/* 801A9E90 001A6DF0 C0 03 00 00 */ lfs f0, 0(r3) +/* 801A9E94 001A6DF4 39 4D A4 90 */ addi r10, r13, lbl_805A9050@sda21 +/* 801A9E98 001A6DF8 D0 01 00 84 */ stfs f0, 0x84(r1) +/* 801A9E9C 001A6DFC C0 03 00 04 */ lfs f0, 4(r3) +/* 801A9EA0 001A6E00 D0 01 00 88 */ stfs f0, 0x88(r1) +/* 801A9EA4 001A6E04 C0 03 00 08 */ lfs f0, 8(r3) +/* 801A9EA8 001A6E08 7F E3 FB 78 */ mr r3, r31 +/* 801A9EAC 001A6E0C D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 801A9EB0 001A6E10 D0 61 00 90 */ stfs f3, 0x90(r1) +/* 801A9EB4 001A6E14 D0 81 00 94 */ stfs f4, 0x94(r1) +/* 801A9EB8 001A6E18 D0 A1 00 98 */ stfs f5, 0x98(r1) +/* 801A9EBC 001A6E1C C0 18 00 00 */ lfs f0, 0(r24) +/* 801A9EC0 001A6E20 D0 01 00 9C */ stfs f0, 0x9c(r1) +/* 801A9EC4 001A6E24 C0 18 00 04 */ lfs f0, 4(r24) +/* 801A9EC8 001A6E28 D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 801A9ECC 001A6E2C C0 18 00 08 */ lfs f0, 8(r24) +/* 801A9ED0 001A6E30 D0 01 00 A4 */ stfs f0, 0xa4(r1) +/* 801A9ED4 001A6E34 D3 E1 00 A8 */ stfs f31, 0xa8(r1) +/* 801A9ED8 001A6E38 B3 21 00 18 */ sth r25, 0x18(r1) +/* 801A9EDC 001A6E3C 91 81 00 08 */ stw r12, 8(r1) +/* 801A9EE0 001A6E40 91 61 00 0C */ stw r11, 0xc(r1) +/* 801A9EE4 001A6E44 90 01 00 10 */ stw r0, 0x10(r1) +/* 801A9EE8 001A6E48 4B F7 25 C9 */ bl "__ct__13CPhysicsActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC6CAABoxRC10SMoverDataRC16CActorParametersff" +/* 801A9EEC 001A6E4C 38 61 00 AC */ addi r3, r1, 0xac +/* 801A9EF0 001A6E50 38 80 FF FF */ li r4, -1 +/* 801A9EF4 001A6E54 4B F5 C7 15 */ bl __dt__16CActorParametersFv +/* 801A9EF8 001A6E58 38 61 01 14 */ addi r3, r1, 0x114 +/* 801A9EFC 001A6E5C 38 80 FF FF */ li r4, -1 +/* 801A9F00 001A6E60 4B F6 CB 4D */ bl __dt__10CModelDataFv +/* 801A9F04 001A6E64 80 01 00 68 */ lwz r0, 0x68(r1) +/* 801A9F08 001A6E68 80 61 00 70 */ lwz r3, 0x70(r1) +/* 801A9F0C 001A6E6C 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801A9F10 001A6E70 90 61 00 20 */ stw r3, 0x20(r1) +/* 801A9F14 001A6E74 7C 64 1B 78 */ mr r4, r3 +/* 801A9F18 001A6E78 7C 03 02 14 */ add r0, r3, r0 +/* 801A9F1C 001A6E7C 90 61 00 1C */ stw r3, 0x1c(r1) +/* 801A9F20 001A6E80 90 01 00 28 */ stw r0, 0x28(r1) +/* 801A9F24 001A6E84 90 01 00 24 */ stw r0, 0x24(r1) +/* 801A9F28 001A6E88 48 00 00 08 */ b lbl_801A9F30 +lbl_801A9F2C: +/* 801A9F2C 001A6E8C 38 84 00 0C */ addi r4, r4, 0xc +lbl_801A9F30: +/* 801A9F30 001A6E90 7C 04 00 40 */ cmplw r4, r0 +/* 801A9F34 001A6E94 40 82 FF F8 */ bne lbl_801A9F2C +/* 801A9F38 001A6E98 28 03 00 00 */ cmplwi r3, 0 +/* 801A9F3C 001A6E9C 41 82 00 08 */ beq lbl_801A9F44 +/* 801A9F40 001A6EA0 48 16 B9 F1 */ bl Free__7CMemoryFPCv +lbl_801A9F44: +/* 801A9F44 001A6EA4 38 61 00 34 */ addi r3, r1, 0x34 +/* 801A9F48 001A6EA8 48 19 3B 99 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801A9F4C 001A6EAC 3C 80 80 3E */ lis r4, lbl_803E4B18@ha +/* 801A9F50 001A6EB0 3C 60 80 3D */ lis r3, lbl_803D14A0@ha +/* 801A9F54 001A6EB4 38 84 4B 18 */ addi r4, r4, lbl_803E4B18@l +/* 801A9F58 001A6EB8 38 00 00 00 */ li r0, 0 +/* 801A9F5C 001A6EBC 90 9F 00 00 */ stw r4, 0(r31) +/* 801A9F60 001A6EC0 38 63 14 A0 */ addi r3, r3, lbl_803D14A0@l +/* 801A9F64 001A6EC4 38 83 00 0F */ addi r4, r3, 0xf +/* 801A9F68 001A6EC8 38 60 00 38 */ li r3, 0x38 +/* 801A9F6C 001A6ECC 90 1F 02 58 */ stw r0, 0x258(r31) +/* 801A9F70 001A6ED0 38 A0 00 00 */ li r5, 0 +/* 801A9F74 001A6ED4 A0 1A 00 00 */ lhz r0, 0(r26) +/* 801A9F78 001A6ED8 B0 1F 02 5C */ sth r0, 0x25c(r31) +/* 801A9F7C 001A6EDC C0 1B 00 00 */ lfs f0, 0(r27) +/* 801A9F80 001A6EE0 D0 1F 02 60 */ stfs f0, 0x260(r31) +/* 801A9F84 001A6EE4 C0 1B 00 04 */ lfs f0, 4(r27) +/* 801A9F88 001A6EE8 D0 1F 02 64 */ stfs f0, 0x264(r31) +/* 801A9F8C 001A6EEC C0 1B 00 08 */ lfs f0, 8(r27) +/* 801A9F90 001A6EF0 D0 1F 02 68 */ stfs f0, 0x268(r31) +/* 801A9F94 001A6EF4 C0 1C 00 00 */ lfs f0, 0(r28) +/* 801A9F98 001A6EF8 D0 1F 02 6C */ stfs f0, 0x26c(r31) +/* 801A9F9C 001A6EFC C0 1C 00 04 */ lfs f0, 4(r28) +/* 801A9FA0 001A6F00 D0 1F 02 70 */ stfs f0, 0x270(r31) +/* 801A9FA4 001A6F04 C0 1C 00 08 */ lfs f0, 8(r28) +/* 801A9FA8 001A6F08 D0 1F 02 74 */ stfs f0, 0x274(r31) +/* 801A9FAC 001A6F0C 48 16 B8 C1 */ bl __nw__FUlPCcPCc +/* 801A9FB0 001A6F10 7C 60 1B 79 */ or. r0, r3, r3 +/* 801A9FB4 001A6F14 41 82 00 14 */ beq lbl_801A9FC8 +/* 801A9FB8 001A6F18 7F 64 DB 78 */ mr r4, r27 +/* 801A9FBC 001A6F1C 7F 85 E3 78 */ mr r5, r28 +/* 801A9FC0 001A6F20 48 10 3A 19 */ bl __ct__23CCollidableOBBTreeGroupFRC9CVector3fRC9CVector3f +/* 801A9FC4 001A6F24 7C 60 1B 78 */ mr r0, r3 +lbl_801A9FC8: +/* 801A9FC8 001A6F28 3C 60 80 3D */ lis r3, lbl_803D14A0@ha +/* 801A9FCC 001A6F2C 90 1F 02 78 */ stw r0, 0x278(r31) +/* 801A9FD0 001A6F30 38 83 14 A0 */ addi r4, r3, lbl_803D14A0@l +/* 801A9FD4 001A6F34 38 60 00 18 */ li r3, 0x18 +/* 801A9FD8 001A6F38 38 84 00 0F */ addi r4, r4, 0xf +/* 801A9FDC 001A6F3C 38 A0 00 00 */ li r5, 0 +/* 801A9FE0 001A6F40 48 16 B8 8D */ bl __nw__FUlPCcPCc +/* 801A9FE4 001A6F44 7C 60 1B 79 */ or. r0, r3, r3 +/* 801A9FE8 001A6F48 41 82 00 14 */ beq lbl_801A9FFC +/* 801A9FEC 001A6F4C 80 9F 02 78 */ lwz r4, 0x278(r31) +/* 801A9FF0 001A6F50 38 BF 00 68 */ addi r5, r31, 0x68 +/* 801A9FF4 001A6F54 48 10 39 71 */ bl "__ct__23CCollidableOBBTreeGroupFRCQ24rstl42vector<6CAABox,Q24rstl17rmemory_allocator>R14CCMaterialList" +/* 801A9FF8 001A6F58 7C 60 1B 78 */ mr r0, r3 +lbl_801A9FFC: +/* 801A9FFC 001A6F5C 90 1F 02 7C */ stw r0, 0x27c(r31) +/* 801AA000 001A6F60 38 A0 00 00 */ li r5, 0 +/* 801AA004 001A6F64 C0 02 A8 30 */ lfs f0, lbl_805AC550@sda21(r2) +/* 801AA008 001A6F68 3C 80 80 57 */ lis r4, lbl_80570004@ha +/* 801AA00C 001A6F6C 90 BF 02 80 */ stw r5, 0x280(r31) +/* 801AA010 001A6F70 38 00 00 10 */ li r0, 0x10 +/* 801AA014 001A6F74 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801AA018 001A6F78 C0 22 A8 20 */ lfs f1, lbl_805AC540@sda21(r2) +/* 801AA01C 001A6F7C 90 BF 02 84 */ stw r5, 0x284(r31) +/* 801AA020 001A6F80 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 801AA024 001A6F84 7F E3 FB 78 */ mr r3, r31 +/* 801AA028 001A6F88 D0 1F 02 88 */ stfs f0, 0x288(r31) +/* 801AA02C 001A6F8C D0 1F 02 8C */ stfs f0, 0x28c(r31) +/* 801AA030 001A6F90 D0 1F 02 90 */ stfs f0, 0x290(r31) +/* 801AA034 001A6F94 84 E4 D5 78 */ lwzu r7, -0x2a88(r4) +/* 801AA038 001A6F98 80 C4 00 04 */ lwz r6, lbl_80570004@l(r4) +/* 801AA03C 001A6F9C 90 FF 02 94 */ stw r7, 0x294(r31) +/* 801AA040 001A6FA0 90 DF 02 98 */ stw r6, 0x298(r31) +/* 801AA044 001A6FA4 80 E4 00 08 */ lwz r7, 8(r4) +/* 801AA048 001A6FA8 80 C4 00 0C */ lwz r6, 0xc(r4) +/* 801AA04C 001A6FAC 90 FF 02 9C */ stw r7, 0x29c(r31) +/* 801AA050 001A6FB0 90 DF 02 A0 */ stw r6, 0x2a0(r31) +/* 801AA054 001A6FB4 80 E4 00 10 */ lwz r7, 0x10(r4) +/* 801AA058 001A6FB8 80 C4 00 14 */ lwz r6, 0x14(r4) +/* 801AA05C 001A6FBC 90 FF 02 A4 */ stw r7, 0x2a4(r31) +/* 801AA060 001A6FC0 90 DF 02 A8 */ stw r6, 0x2a8(r31) +/* 801AA064 001A6FC4 80 E4 00 18 */ lwz r7, 0x18(r4) +/* 801AA068 001A6FC8 80 C4 00 1C */ lwz r6, 0x1c(r4) +/* 801AA06C 001A6FCC 90 FF 02 AC */ stw r7, 0x2ac(r31) +/* 801AA070 001A6FD0 90 DF 02 B0 */ stw r6, 0x2b0(r31) +/* 801AA074 001A6FD4 80 E4 00 20 */ lwz r7, 0x20(r4) +/* 801AA078 001A6FD8 80 C4 00 24 */ lwz r6, 0x24(r4) +/* 801AA07C 001A6FDC 90 FF 02 B4 */ stw r7, 0x2b4(r31) +/* 801AA080 001A6FE0 90 DF 02 B8 */ stw r6, 0x2b8(r31) +/* 801AA084 001A6FE4 80 E4 00 28 */ lwz r7, 0x28(r4) +/* 801AA088 001A6FE8 80 C4 00 2C */ lwz r6, 0x2c(r4) +/* 801AA08C 001A6FEC 90 FF 02 BC */ stw r7, 0x2bc(r31) +/* 801AA090 001A6FF0 90 DF 02 C0 */ stw r6, 0x2c0(r31) +/* 801AA094 001A6FF4 80 E4 00 30 */ lwz r7, 0x30(r4) +/* 801AA098 001A6FF8 80 C4 00 34 */ lwz r6, 0x34(r4) +/* 801AA09C 001A6FFC 90 FF 02 C4 */ stw r7, 0x2c4(r31) +/* 801AA0A0 001A7000 90 DF 02 C8 */ stw r6, 0x2c8(r31) +/* 801AA0A4 001A7004 80 C4 00 38 */ lwz r6, 0x38(r4) +/* 801AA0A8 001A7008 90 DF 02 CC */ stw r6, 0x2cc(r31) +/* 801AA0AC 001A700C 80 E4 00 3C */ lwz r7, 0x3c(r4) +/* 801AA0B0 001A7010 80 C4 00 40 */ lwz r6, 0x40(r4) +/* 801AA0B4 001A7014 90 FF 02 D0 */ stw r7, 0x2d0(r31) +/* 801AA0B8 001A7018 90 DF 02 D4 */ stw r6, 0x2d4(r31) +/* 801AA0BC 001A701C 80 E4 00 44 */ lwz r7, 0x44(r4) +/* 801AA0C0 001A7020 80 C4 00 48 */ lwz r6, 0x48(r4) +/* 801AA0C4 001A7024 90 FF 02 D8 */ stw r7, 0x2d8(r31) +/* 801AA0C8 001A7028 90 DF 02 DC */ stw r6, 0x2dc(r31) +/* 801AA0CC 001A702C 80 E4 00 4C */ lwz r7, 0x4c(r4) +/* 801AA0D0 001A7030 80 C4 00 50 */ lwz r6, 0x50(r4) +/* 801AA0D4 001A7034 90 FF 02 E0 */ stw r7, 0x2e0(r31) +/* 801AA0D8 001A7038 90 DF 02 E4 */ stw r6, 0x2e4(r31) +/* 801AA0DC 001A703C 80 E4 00 54 */ lwz r7, 0x54(r4) +/* 801AA0E0 001A7040 80 C4 00 58 */ lwz r6, 0x58(r4) +/* 801AA0E4 001A7044 90 FF 02 E8 */ stw r7, 0x2e8(r31) +/* 801AA0E8 001A7048 90 DF 02 EC */ stw r6, 0x2ec(r31) +/* 801AA0EC 001A704C 80 C4 00 5C */ lwz r6, 0x5c(r4) +/* 801AA0F0 001A7050 90 DF 02 F0 */ stw r6, 0x2f0(r31) +/* 801AA0F4 001A7054 80 C4 00 60 */ lwz r6, 0x60(r4) +/* 801AA0F8 001A7058 90 DF 02 F4 */ stw r6, 0x2f4(r31) +/* 801AA0FC 001A705C 80 84 00 64 */ lwz r4, 0x64(r4) +/* 801AA100 001A7060 90 9F 02 F8 */ stw r4, 0x2f8(r31) +/* 801AA104 001A7064 A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 801AA108 001A7068 B0 9F 02 FC */ sth r4, 0x2fc(r31) +/* 801AA10C 001A706C 90 1F 03 00 */ stw r0, 0x300(r31) +/* 801AA110 001A7070 C0 05 00 00 */ lfs f0, 0(r5) +/* 801AA114 001A7074 D0 1F 03 04 */ stfs f0, 0x304(r31) +/* 801AA118 001A7078 C0 1E 00 04 */ lfs f0, 4(r30) +/* 801AA11C 001A707C D0 1F 03 08 */ stfs f0, 0x308(r31) +/* 801AA120 001A7080 C0 1E 00 08 */ lfs f0, 8(r30) +/* 801AA124 001A7084 D0 1F 03 0C */ stfs f0, 0x30c(r31) +/* 801AA128 001A7088 4B F7 03 B9 */ bl SetCoefficientOfRestitutionModifier__13CPhysicsActorFf +/* 801AA12C 001A708C 7F E3 FB 78 */ mr r3, r31 +/* 801AA130 001A7090 38 80 00 00 */ li r4, 0 +/* 801AA134 001A7094 4B EA A2 85 */ bl SetCallTouch__6CActorFb +/* 801AA138 001A7098 80 AD 90 44 */ lwz r5, lbl_805A7C04@sda21(r13) +/* 801AA13C 001A709C 38 60 00 00 */ li r3, 0 +/* 801AA140 001A70A0 38 80 00 01 */ li r4, 1 +/* 801AA144 001A70A4 48 1D FD B1 */ bl __shl2i +/* 801AA148 001A70A8 80 AD 90 48 */ lwz r5, lbl_805A7C08@sda21(r13) +/* 801AA14C 001A70AC 7C 99 23 78 */ mr r25, r4 +/* 801AA150 001A70B0 7C 78 1B 78 */ mr r24, r3 +/* 801AA154 001A70B4 38 60 00 00 */ li r3, 0 +/* 801AA158 001A70B8 38 80 00 01 */ li r4, 1 +/* 801AA15C 001A70BC 48 1D FD 99 */ bl __shl2i +/* 801AA160 001A70C0 80 AD 90 40 */ lwz r5, lbl_805A7C00@sda21(r13) +/* 801AA164 001A70C4 7F 39 23 78 */ or r25, r25, r4 +/* 801AA168 001A70C8 7F 18 1B 78 */ or r24, r24, r3 +/* 801AA16C 001A70CC 38 60 00 00 */ li r3, 0 +/* 801AA170 001A70D0 38 80 00 01 */ li r4, 1 +/* 801AA174 001A70D4 48 1D FD 81 */ bl __shl2i +/* 801AA178 001A70D8 38 00 00 03 */ li r0, 3 +/* 801AA17C 001A70DC 90 81 00 4C */ stw r4, 0x4c(r1) +/* 801AA180 001A70E0 38 81 00 48 */ addi r4, r1, 0x48 +/* 801AA184 001A70E4 90 61 00 48 */ stw r3, 0x48(r1) +/* 801AA188 001A70E8 7F E3 FB 78 */ mr r3, r31 +/* 801AA18C 001A70EC 93 21 00 54 */ stw r25, 0x54(r1) +/* 801AA190 001A70F0 93 01 00 50 */ stw r24, 0x50(r1) +/* 801AA194 001A70F4 90 01 00 58 */ stw r0, 0x58(r1) +/* 801AA198 001A70F8 4B EA 97 09 */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter +/* 801AA19C 001A70FC 7F E3 FB 78 */ mr r3, r31 +/* 801AA1A0 001A7100 E3 E1 01 88 */ psq_l f31, 392(r1), 0, qr0 +/* 801AA1A4 001A7104 CB E1 01 80 */ lfd f31, 0x180(r1) +/* 801AA1A8 001A7108 BB 01 01 60 */ lmw r24, 0x160(r1) +/* 801AA1AC 001A710C 80 01 01 94 */ lwz r0, 0x194(r1) +/* 801AA1B0 001A7110 7C 08 03 A6 */ mtlr r0 +/* 801AA1B4 001A7114 38 21 01 90 */ addi r1, r1, 0x190 +/* 801AA1B8 001A7118 4E 80 00 20 */ blr + +.global __sinit_CCollisionActor_cpp +__sinit_CCollisionActor_cpp: +/* 801AA1BC 001A711C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801AA1C0 001A7120 7C 08 02 A6 */ mflr r0 +/* 801AA1C4 001A7124 38 60 00 00 */ li r3, 0 +/* 801AA1C8 001A7128 38 80 00 01 */ li r4, 1 +/* 801AA1CC 001A712C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801AA1D0 001A7130 38 00 00 00 */ li r0, 0 +/* 801AA1D4 001A7134 80 AD 90 30 */ lwz r5, lbl_805A7BF0@sda21(r13) +/* 801AA1D8 001A7138 90 0D A4 94 */ stw r0, lbl_805A9054@sda21(r13) +/* 801AA1DC 001A713C 90 0D A4 90 */ stw r0, lbl_805A9050@sda21(r13) +/* 801AA1E0 001A7140 48 1D FD 15 */ bl __shl2i +/* 801AA1E4 001A7144 80 0D A4 90 */ lwz r0, lbl_805A9050@sda21(r13) +/* 801AA1E8 001A7148 80 CD A4 94 */ lwz r6, lbl_805A9054@sda21(r13) +/* 801AA1EC 001A714C 7C 00 1B 78 */ or r0, r0, r3 +/* 801AA1F0 001A7150 80 AD 90 34 */ lwz r5, lbl_805A7BF4@sda21(r13) +/* 801AA1F4 001A7154 7C C4 23 78 */ or r4, r6, r4 +/* 801AA1F8 001A7158 90 0D A4 90 */ stw r0, lbl_805A9050@sda21(r13) +/* 801AA1FC 001A715C 38 60 00 00 */ li r3, 0 +/* 801AA200 001A7160 90 8D A4 94 */ stw r4, lbl_805A9054@sda21(r13) +/* 801AA204 001A7164 38 80 00 01 */ li r4, 1 +/* 801AA208 001A7168 48 1D FC ED */ bl __shl2i +/* 801AA20C 001A716C 80 0D A4 90 */ lwz r0, lbl_805A9050@sda21(r13) +/* 801AA210 001A7170 80 CD A4 94 */ lwz r6, lbl_805A9054@sda21(r13) +/* 801AA214 001A7174 7C 00 1B 78 */ or r0, r0, r3 +/* 801AA218 001A7178 80 AD 90 38 */ lwz r5, lbl_805A7BF8@sda21(r13) +/* 801AA21C 001A717C 7C C4 23 78 */ or r4, r6, r4 +/* 801AA220 001A7180 90 0D A4 90 */ stw r0, lbl_805A9050@sda21(r13) +/* 801AA224 001A7184 38 60 00 00 */ li r3, 0 +/* 801AA228 001A7188 90 8D A4 94 */ stw r4, lbl_805A9054@sda21(r13) +/* 801AA22C 001A718C 38 80 00 01 */ li r4, 1 +/* 801AA230 001A7190 48 1D FC C5 */ bl __shl2i +/* 801AA234 001A7194 80 0D A4 90 */ lwz r0, lbl_805A9050@sda21(r13) +/* 801AA238 001A7198 80 CD A4 94 */ lwz r6, lbl_805A9054@sda21(r13) +/* 801AA23C 001A719C 7C 00 1B 78 */ or r0, r0, r3 +/* 801AA240 001A71A0 80 AD 90 3C */ lwz r5, lbl_805A7BFC@sda21(r13) +/* 801AA244 001A71A4 7C C4 23 78 */ or r4, r6, r4 +/* 801AA248 001A71A8 90 0D A4 90 */ stw r0, lbl_805A9050@sda21(r13) +/* 801AA24C 001A71AC 38 60 00 00 */ li r3, 0 +/* 801AA250 001A71B0 90 8D A4 94 */ stw r4, lbl_805A9054@sda21(r13) +/* 801AA254 001A71B4 38 80 00 01 */ li r4, 1 +/* 801AA258 001A71B8 48 1D FC 9D */ bl __shl2i +/* 801AA25C 001A71BC 80 0D A4 90 */ lwz r0, lbl_805A9050@sda21(r13) +/* 801AA260 001A71C0 80 AD A4 94 */ lwz r5, lbl_805A9054@sda21(r13) +/* 801AA264 001A71C4 7C 00 1B 78 */ or r0, r0, r3 +/* 801AA268 001A71C8 7C A3 23 78 */ or r3, r5, r4 +/* 801AA26C 001A71CC 90 0D A4 90 */ stw r0, lbl_805A9050@sda21(r13) +/* 801AA270 001A71D0 90 6D A4 94 */ stw r3, lbl_805A9054@sda21(r13) +/* 801AA274 001A71D4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801AA278 001A71D8 7C 08 03 A6 */ mtlr r0 +/* 801AA27C 001A71DC 38 21 00 10 */ addi r1, r1, 0x10 +/* 801AA280 001A71E0 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CCollisionActorManager.s b/asm/Kyoto_CWD/CCollisionActorManager.s new file mode 100644 index 00000000..fd173995 --- /dev/null +++ b/asm/Kyoto_CWD/CCollisionActorManager.s @@ -0,0 +1,1779 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global SetMovable__22CCollisionActorManagerFb +SetMovable__22CCollisionActorManagerFb: +/* 801A6EC0 001A3E20 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801A6EC4 001A3E24 7C 08 02 A6 */ mflr r0 +/* 801A6EC8 001A3E28 90 01 00 34 */ stw r0, 0x34(r1) +/* 801A6ECC 001A3E2C 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801A6ED0 001A3E30 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801A6ED4 001A3E34 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801A6ED8 001A3E38 7C 9D 23 78 */ mr r29, r4 +/* 801A6EDC 001A3E3C 93 81 00 20 */ stw r28, 0x20(r1) +/* 801A6EE0 001A3E40 7C 7C 1B 78 */ mr r28, r3 +/* 801A6EE4 001A3E44 54 A3 06 3E */ clrlwi r3, r5, 0x18 +/* 801A6EE8 001A3E48 88 1C 00 14 */ lbz r0, 0x14(r28) +/* 801A6EEC 001A3E4C 7C 03 00 40 */ cmplw r3, r0 +/* 801A6EF0 001A3E50 41 82 00 78 */ beq lbl_801A6F68 +/* 801A6EF4 001A3E54 98 BC 00 14 */ stb r5, 0x14(r28) +/* 801A6EF8 001A3E58 3B C0 00 00 */ li r30, 0 +/* 801A6EFC 001A3E5C 3B E0 00 00 */ li r31, 0 +/* 801A6F00 001A3E60 48 00 00 5C */ b lbl_801A6F5C +lbl_801A6F04: +/* 801A6F04 001A3E64 80 BC 00 0C */ lwz r5, 0xc(r28) +/* 801A6F08 001A3E68 38 1F 00 3C */ addi r0, r31, 0x3c +/* 801A6F0C 001A3E6C 7F A3 EB 78 */ mr r3, r29 +/* 801A6F10 001A3E70 38 81 00 0C */ addi r4, r1, 0xc +/* 801A6F14 001A3E74 7C 05 02 2E */ lhzx r0, r5, r0 +/* 801A6F18 001A3E78 B0 01 00 08 */ sth r0, 8(r1) +/* 801A6F1C 001A3E7C B0 01 00 0C */ sth r0, 0xc(r1) +/* 801A6F20 001A3E80 4B EA 56 55 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801A6F24 001A3E84 7C 64 1B 78 */ mr r4, r3 +/* 801A6F28 001A3E88 38 61 00 10 */ addi r3, r1, 0x10 +/* 801A6F2C 001A3E8C 4B F0 84 21 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801A6F30 001A3E90 80 63 00 04 */ lwz r3, 4(r3) +/* 801A6F34 001A3E94 28 03 00 00 */ cmplwi r3, 0 +/* 801A6F38 001A3E98 41 82 00 1C */ beq lbl_801A6F54 +/* 801A6F3C 001A3E9C 88 9C 00 14 */ lbz r4, 0x14(r28) +/* 801A6F40 001A3EA0 88 03 00 F8 */ lbz r0, 0xf8(r3) +/* 801A6F44 001A3EA4 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801A6F48 001A3EA8 98 03 00 F8 */ stb r0, 0xf8(r3) +/* 801A6F4C 001A3EAC 88 9C 00 14 */ lbz r4, 0x14(r28) +/* 801A6F50 001A3EB0 4B EA D4 91 */ bl SetUseInSortedLists__6CActorFb +lbl_801A6F54: +/* 801A6F54 001A3EB4 3B FF 00 44 */ addi r31, r31, 0x44 +/* 801A6F58 001A3EB8 3B DE 00 01 */ addi r30, r30, 1 +lbl_801A6F5C: +/* 801A6F5C 001A3EBC 80 1C 00 04 */ lwz r0, 4(r28) +/* 801A6F60 001A3EC0 7C 1E 00 00 */ cmpw r30, r0 +/* 801A6F64 001A3EC4 41 80 FF A0 */ blt lbl_801A6F04 +lbl_801A6F68: +/* 801A6F68 001A3EC8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801A6F6C 001A3ECC 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801A6F70 001A3ED0 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801A6F74 001A3ED4 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801A6F78 001A3ED8 83 81 00 20 */ lwz r28, 0x20(r1) +/* 801A6F7C 001A3EDC 7C 08 03 A6 */ mtlr r0 +/* 801A6F80 001A3EE0 38 21 00 30 */ addi r1, r1, 0x30 +/* 801A6F84 001A3EE4 4E 80 00 20 */ blr + +.global GetWRLocatorTransform__22CCollisionActorManagerFRC9CAnimData6CSegIdRC12CTransform4fRC12CTransform4f +GetWRLocatorTransform__22CCollisionActorManagerFRC9CAnimData6CSegIdRC12CTransform4fRC12CTransform4f: +/* 801A6F88 001A3EE8 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 801A6F8C 001A3EEC 7C 08 02 A6 */ mflr r0 +/* 801A6F90 001A3EF0 90 01 01 04 */ stw r0, 0x104(r1) +/* 801A6F94 001A3EF4 DB E1 00 F0 */ stfd f31, 0xf0(r1) +/* 801A6F98 001A3EF8 F3 E1 00 F8 */ psq_st f31, 248(r1), 0, qr0 +/* 801A6F9C 001A3EFC DB C1 00 E0 */ stfd f30, 0xe0(r1) +/* 801A6FA0 001A3F00 F3 C1 00 E8 */ psq_st f30, 232(r1), 0, qr0 +/* 801A6FA4 001A3F04 DB A1 00 D0 */ stfd f29, 0xd0(r1) +/* 801A6FA8 001A3F08 F3 A1 00 D8 */ psq_st f29, 216(r1), 0, qr0 +/* 801A6FAC 001A3F0C 93 E1 00 CC */ stw r31, 0xcc(r1) +/* 801A6FB0 001A3F10 93 C1 00 C8 */ stw r30, 0xc8(r1) +/* 801A6FB4 001A3F14 93 A1 00 C4 */ stw r29, 0xc4(r1) +/* 801A6FB8 001A3F18 88 05 00 00 */ lbz r0, 0(r5) +/* 801A6FBC 001A3F1C 7C 7D 1B 78 */ mr r29, r3 +/* 801A6FC0 001A3F20 7C DE 33 78 */ mr r30, r6 +/* 801A6FC4 001A3F24 7C FF 3B 78 */ mr r31, r7 +/* 801A6FC8 001A3F28 98 01 00 08 */ stb r0, 8(r1) +/* 801A6FCC 001A3F2C 38 61 00 60 */ addi r3, r1, 0x60 +/* 801A6FD0 001A3F30 38 A1 00 08 */ addi r5, r1, 8 +/* 801A6FD4 001A3F34 38 C0 00 00 */ li r6, 0 +/* 801A6FD8 001A3F38 4B E8 52 9D */ bl GetLocatorTransform__9CAnimDataCF6CSegIdPC13CCharAnimTime +/* 801A6FDC 001A3F3C 38 61 00 90 */ addi r3, r1, 0x90 +/* 801A6FE0 001A3F40 38 81 00 60 */ addi r4, r1, 0x60 +/* 801A6FE4 001A3F44 48 16 BB 91 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801A6FE8 001A3F48 C0 41 00 9C */ lfs f2, 0x9c(r1) +/* 801A6FEC 001A3F4C 7F E4 FB 78 */ mr r4, r31 +/* 801A6FF0 001A3F50 C0 21 00 AC */ lfs f1, 0xac(r1) +/* 801A6FF4 001A3F54 38 61 00 18 */ addi r3, r1, 0x18 +/* 801A6FF8 001A3F58 C0 01 00 BC */ lfs f0, 0xbc(r1) +/* 801A6FFC 001A3F5C 38 A1 00 0C */ addi r5, r1, 0xc +/* 801A7000 001A3F60 D0 41 00 0C */ stfs f2, 0xc(r1) +/* 801A7004 001A3F64 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 801A7008 001A3F68 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801A700C 001A3F6C 48 16 BA DD */ bl __ml__12CTransform4fCFRC9CVector3f +/* 801A7010 001A3F70 7F C4 F3 78 */ mr r4, r30 +/* 801A7014 001A3F74 38 61 00 24 */ addi r3, r1, 0x24 +/* 801A7018 001A3F78 38 A1 00 18 */ addi r5, r1, 0x18 +/* 801A701C 001A3F7C 48 16 BA CD */ bl __ml__12CTransform4fCFRC9CVector3f +/* 801A7020 001A3F80 C3 E1 00 24 */ lfs f31, 0x24(r1) +/* 801A7024 001A3F84 7F C4 F3 78 */ mr r4, r30 +/* 801A7028 001A3F88 C3 C1 00 28 */ lfs f30, 0x28(r1) +/* 801A702C 001A3F8C 38 61 00 30 */ addi r3, r1, 0x30 +/* 801A7030 001A3F90 C3 A1 00 2C */ lfs f29, 0x2c(r1) +/* 801A7034 001A3F94 38 A1 00 90 */ addi r5, r1, 0x90 +/* 801A7038 001A3F98 48 16 BE F9 */ bl MultiplyIgnoreTranslation__12CTransform4fCFRC12CTransform4f +/* 801A703C 001A3F9C 38 61 00 90 */ addi r3, r1, 0x90 +/* 801A7040 001A3FA0 38 81 00 30 */ addi r4, r1, 0x30 +/* 801A7044 001A3FA4 48 16 BA FD */ bl __as__12CTransform4fFRC12CTransform4f +/* 801A7048 001A3FA8 D3 E1 00 9C */ stfs f31, 0x9c(r1) +/* 801A704C 001A3FAC 7F A3 EB 78 */ mr r3, r29 +/* 801A7050 001A3FB0 38 81 00 90 */ addi r4, r1, 0x90 +/* 801A7054 001A3FB4 D3 C1 00 AC */ stfs f30, 0xac(r1) +/* 801A7058 001A3FB8 D3 A1 00 BC */ stfs f29, 0xbc(r1) +/* 801A705C 001A3FBC 48 16 BB 19 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801A7060 001A3FC0 E3 E1 00 F8 */ psq_l f31, 248(r1), 0, qr0 +/* 801A7064 001A3FC4 CB E1 00 F0 */ lfd f31, 0xf0(r1) +/* 801A7068 001A3FC8 E3 C1 00 E8 */ psq_l f30, 232(r1), 0, qr0 +/* 801A706C 001A3FCC CB C1 00 E0 */ lfd f30, 0xe0(r1) +/* 801A7070 001A3FD0 E3 A1 00 D8 */ psq_l f29, 216(r1), 0, qr0 +/* 801A7074 001A3FD4 CB A1 00 D0 */ lfd f29, 0xd0(r1) +/* 801A7078 001A3FD8 83 E1 00 CC */ lwz r31, 0xcc(r1) +/* 801A707C 001A3FDC 83 C1 00 C8 */ lwz r30, 0xc8(r1) +/* 801A7080 001A3FE0 80 01 01 04 */ lwz r0, 0x104(r1) +/* 801A7084 001A3FE4 83 A1 00 C4 */ lwz r29, 0xc4(r1) +/* 801A7088 001A3FE8 7C 08 03 A6 */ mtlr r0 +/* 801A708C 001A3FEC 38 21 01 00 */ addi r1, r1, 0x100 +/* 801A7090 001A3FF0 4E 80 00 20 */ blr + +.global sub_801a7094 +sub_801a7094: +/* 801A7094 001A3FF4 94 21 FE 90 */ stwu r1, -0x170(r1) +/* 801A7098 001A3FF8 7C 08 02 A6 */ mflr r0 +/* 801A709C 001A3FFC 90 01 01 74 */ stw r0, 0x174(r1) +/* 801A70A0 001A4000 BE E1 01 4C */ stmw r23, 0x14c(r1) +/* 801A70A4 001A4004 7C 7C 1B 78 */ mr r28, r3 +/* 801A70A8 001A4008 7C 9D 23 78 */ mr r29, r4 +/* 801A70AC 001A400C 7C BE 2B 78 */ mr r30, r5 +/* 801A70B0 001A4010 7C DF 33 78 */ mr r31, r6 +/* 801A70B4 001A4014 3B 20 00 00 */ li r25, 0 +/* 801A70B8 001A4018 3B 40 00 00 */ li r26, 0 +/* 801A70BC 001A401C 48 00 01 54 */ b lbl_801A7210 +lbl_801A70C0: +/* 801A70C0 001A4020 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 801A70C4 001A4024 88 1F 00 00 */ lbz r0, 0(r31) +/* 801A70C8 001A4028 7F 63 D2 14 */ add r27, r3, r26 +/* 801A70CC 001A402C 88 7B 00 08 */ lbz r3, 8(r27) +/* 801A70D0 001A4030 7C 03 00 40 */ cmplw r3, r0 +/* 801A70D4 001A4034 40 82 01 34 */ bne lbl_801A7208 +/* 801A70D8 001A4038 A0 1D 00 10 */ lhz r0, 0x10(r29) +/* 801A70DC 001A403C 7F C3 F3 78 */ mr r3, r30 +/* 801A70E0 001A4040 38 81 00 18 */ addi r4, r1, 0x18 +/* 801A70E4 001A4044 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801A70E8 001A4048 4B EA 54 BD */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801A70EC 001A404C 7C 64 1B 78 */ mr r4, r3 +/* 801A70F0 001A4050 38 61 00 24 */ addi r3, r1, 0x24 +/* 801A70F4 001A4054 4B F0 8B 9D */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 801A70F8 001A4058 83 03 00 04 */ lwz r24, 4(r3) +/* 801A70FC 001A405C 28 18 00 00 */ cmplwi r24, 0 +/* 801A7100 001A4060 41 82 01 08 */ beq lbl_801A7208 +/* 801A7104 001A4064 A0 1B 00 3C */ lhz r0, 0x3c(r27) +/* 801A7108 001A4068 7F C3 F3 78 */ mr r3, r30 +/* 801A710C 001A406C 38 81 00 14 */ addi r4, r1, 0x14 +/* 801A7110 001A4070 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801A7114 001A4074 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801A7118 001A4078 4B EA 54 8D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801A711C 001A407C 7C 64 1B 78 */ mr r4, r3 +/* 801A7120 001A4080 38 61 00 1C */ addi r3, r1, 0x1c +/* 801A7124 001A4084 4B F0 82 29 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801A7128 001A4088 82 E3 00 04 */ lwz r23, 4(r3) +/* 801A712C 001A408C 28 17 00 00 */ cmplwi r23, 0 +/* 801A7130 001A4090 41 82 00 D8 */ beq lbl_801A7208 +/* 801A7134 001A4094 80 B8 00 64 */ lwz r5, 0x64(r24) +/* 801A7138 001A4098 38 61 01 10 */ addi r3, r1, 0x110 +/* 801A713C 001A409C 38 98 00 34 */ addi r4, r24, 0x34 +/* 801A7140 001A40A0 83 A5 00 10 */ lwz r29, 0x10(r5) +/* 801A7144 001A40A4 48 16 BA 31 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801A7148 001A40A8 80 B8 00 64 */ lwz r5, 0x64(r24) +/* 801A714C 001A40AC 38 61 00 80 */ addi r3, r1, 0x80 +/* 801A7150 001A40B0 38 81 00 44 */ addi r4, r1, 0x44 +/* 801A7154 001A40B4 C0 05 00 00 */ lfs f0, 0(r5) +/* 801A7158 001A40B8 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 801A715C 001A40BC C0 05 00 04 */ lfs f0, 4(r5) +/* 801A7160 001A40C0 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 801A7164 001A40C4 C0 05 00 08 */ lfs f0, 8(r5) +/* 801A7168 001A40C8 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 801A716C 001A40CC 48 16 C0 59 */ bl Scale__12CTransform4fFRC9CVector3f +/* 801A7170 001A40D0 38 61 00 E0 */ addi r3, r1, 0xe0 +/* 801A7174 001A40D4 38 81 00 80 */ addi r4, r1, 0x80 +/* 801A7178 001A40D8 48 16 B9 FD */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801A717C 001A40DC 88 1B 00 08 */ lbz r0, 8(r27) +/* 801A7180 001A40E0 7F A4 EB 78 */ mr r4, r29 +/* 801A7184 001A40E4 38 61 00 50 */ addi r3, r1, 0x50 +/* 801A7188 001A40E8 38 A1 00 0C */ addi r5, r1, 0xc +/* 801A718C 001A40EC 98 01 00 08 */ stb r0, 8(r1) +/* 801A7190 001A40F0 38 C1 01 10 */ addi r6, r1, 0x110 +/* 801A7194 001A40F4 38 E1 00 E0 */ addi r7, r1, 0xe0 +/* 801A7198 001A40F8 98 01 00 0C */ stb r0, 0xc(r1) +/* 801A719C 001A40FC 4B FF FD ED */ bl GetWRLocatorTransform__22CCollisionActorManagerFRC9CAnimData6CSegIdRC12CTransform4fRC12CTransform4f +/* 801A71A0 001A4100 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 801A71A4 001A4104 38 81 00 50 */ addi r4, r1, 0x50 +/* 801A71A8 001A4108 48 16 B9 CD */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801A71AC 001A410C C0 B7 00 60 */ lfs f5, 0x60(r23) +/* 801A71B0 001A4110 28 1C 00 00 */ cmplwi r28, 0 +/* 801A71B4 001A4114 C0 01 00 DC */ lfs f0, 0xdc(r1) +/* 801A71B8 001A4118 38 00 00 01 */ li r0, 1 +/* 801A71BC 001A411C C0 97 00 50 */ lfs f4, 0x50(r23) +/* 801A71C0 001A4120 C0 41 00 CC */ lfs f2, 0xcc(r1) +/* 801A71C4 001A4124 EC 25 00 28 */ fsubs f1, f5, f0 +/* 801A71C8 001A4128 C0 17 00 40 */ lfs f0, 0x40(r23) +/* 801A71CC 001A412C C0 61 00 BC */ lfs f3, 0xbc(r1) +/* 801A71D0 001A4130 EC 44 10 28 */ fsubs f2, f4, f2 +/* 801A71D4 001A4134 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801A71D8 001A4138 EC 00 18 28 */ fsubs f0, f0, f3 +/* 801A71DC 001A413C D0 81 00 30 */ stfs f4, 0x30(r1) +/* 801A71E0 001A4140 D0 A1 00 34 */ stfs f5, 0x34(r1) +/* 801A71E4 001A4144 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 801A71E8 001A4148 D0 41 00 3C */ stfs f2, 0x3c(r1) +/* 801A71EC 001A414C D0 21 00 40 */ stfs f1, 0x40(r1) +/* 801A71F0 001A4150 98 1C 00 0C */ stb r0, 0xc(r28) +/* 801A71F4 001A4154 41 82 00 30 */ beq lbl_801A7224 +/* 801A71F8 001A4158 D0 1C 00 00 */ stfs f0, 0(r28) +/* 801A71FC 001A415C D0 5C 00 04 */ stfs f2, 4(r28) +/* 801A7200 001A4160 D0 3C 00 08 */ stfs f1, 8(r28) +/* 801A7204 001A4164 48 00 00 20 */ b lbl_801A7224 +lbl_801A7208: +/* 801A7208 001A4168 3B 5A 00 44 */ addi r26, r26, 0x44 +/* 801A720C 001A416C 3B 39 00 01 */ addi r25, r25, 1 +lbl_801A7210: +/* 801A7210 001A4170 80 1D 00 04 */ lwz r0, 4(r29) +/* 801A7214 001A4174 7C 19 00 00 */ cmpw r25, r0 +/* 801A7218 001A4178 41 80 FE A8 */ blt lbl_801A70C0 +/* 801A721C 001A417C 38 00 00 00 */ li r0, 0 +/* 801A7220 001A4180 98 1C 00 0C */ stb r0, 0xc(r28) +lbl_801A7224: +/* 801A7224 001A4184 BA E1 01 4C */ lmw r23, 0x14c(r1) +/* 801A7228 001A4188 80 01 01 74 */ lwz r0, 0x174(r1) +/* 801A722C 001A418C 7C 08 03 A6 */ mtlr r0 +/* 801A7230 001A4190 38 21 01 70 */ addi r1, r1, 0x170 +/* 801A7234 001A4194 4E 80 00 20 */ blr + +.global GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +GetCollisionDescFromIndex__22CCollisionActorManagerCFUi: +/* 801A7238 001A4198 1C 04 00 44 */ mulli r0, r4, 0x44 +/* 801A723C 001A419C 80 63 00 0C */ lwz r3, 0xc(r3) +/* 801A7240 001A41A0 7C 63 02 14 */ add r3, r3, r0 +/* 801A7244 001A41A4 4E 80 00 20 */ blr + +.global GetNumCollisionActors__22CCollisionActorManagerCFv +GetNumCollisionActors__22CCollisionActorManagerCFv: +/* 801A7248 001A41A8 80 63 00 04 */ lwz r3, 4(r3) +/* 801A724C 001A41AC 4E 80 00 20 */ blr + +.global AddMaterial__22CCollisionActorManagerFR13CStateManagerRC13CMaterialList +AddMaterial__22CCollisionActorManagerFR13CStateManagerRC13CMaterialList: +/* 801A7250 001A41B0 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801A7254 001A41B4 7C 08 02 A6 */ mflr r0 +/* 801A7258 001A41B8 90 01 00 34 */ stw r0, 0x34(r1) +/* 801A725C 001A41BC BF 61 00 1C */ stmw r27, 0x1c(r1) +/* 801A7260 001A41C0 7C 7B 1B 78 */ mr r27, r3 +/* 801A7264 001A41C4 7C 9C 23 78 */ mr r28, r4 +/* 801A7268 001A41C8 7C BD 2B 78 */ mr r29, r5 +/* 801A726C 001A41CC 3B C0 00 00 */ li r30, 0 +/* 801A7270 001A41D0 3B E0 00 00 */ li r31, 0 +/* 801A7274 001A41D4 48 00 00 64 */ b lbl_801A72D8 +lbl_801A7278: +/* 801A7278 001A41D8 80 BB 00 0C */ lwz r5, 0xc(r27) +/* 801A727C 001A41DC 38 1F 00 3C */ addi r0, r31, 0x3c +/* 801A7280 001A41E0 7F 83 E3 78 */ mr r3, r28 +/* 801A7284 001A41E4 38 81 00 0C */ addi r4, r1, 0xc +/* 801A7288 001A41E8 7C 05 02 2E */ lhzx r0, r5, r0 +/* 801A728C 001A41EC B0 01 00 08 */ sth r0, 8(r1) +/* 801A7290 001A41F0 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801A7294 001A41F4 4B EA 52 E1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801A7298 001A41F8 7C 64 1B 78 */ mr r4, r3 +/* 801A729C 001A41FC 38 61 00 10 */ addi r3, r1, 0x10 +/* 801A72A0 001A4200 4B F0 89 F1 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 801A72A4 001A4204 80 C3 00 04 */ lwz r6, 4(r3) +/* 801A72A8 001A4208 28 06 00 00 */ cmplwi r6, 0 +/* 801A72AC 001A420C 41 82 00 24 */ beq lbl_801A72D0 +/* 801A72B0 001A4210 80 A6 00 6C */ lwz r5, 0x6c(r6) +/* 801A72B4 001A4214 80 1D 00 04 */ lwz r0, 4(r29) +/* 801A72B8 001A4218 80 86 00 68 */ lwz r4, 0x68(r6) +/* 801A72BC 001A421C 80 7D 00 00 */ lwz r3, 0(r29) +/* 801A72C0 001A4220 7C A0 03 78 */ or r0, r5, r0 +/* 801A72C4 001A4224 90 06 00 6C */ stw r0, 0x6c(r6) +/* 801A72C8 001A4228 7C 80 1B 78 */ or r0, r4, r3 +/* 801A72CC 001A422C 90 06 00 68 */ stw r0, 0x68(r6) +lbl_801A72D0: +/* 801A72D0 001A4230 3B FF 00 44 */ addi r31, r31, 0x44 +/* 801A72D4 001A4234 3B DE 00 01 */ addi r30, r30, 1 +lbl_801A72D8: +/* 801A72D8 001A4238 80 1B 00 04 */ lwz r0, 4(r27) +/* 801A72DC 001A423C 7C 1E 00 00 */ cmpw r30, r0 +/* 801A72E0 001A4240 41 80 FF 98 */ blt lbl_801A7278 +/* 801A72E4 001A4244 BB 61 00 1C */ lmw r27, 0x1c(r1) +/* 801A72E8 001A4248 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801A72EC 001A424C 7C 08 03 A6 */ mtlr r0 +/* 801A72F0 001A4250 38 21 00 30 */ addi r1, r1, 0x30 +/* 801A72F4 001A4254 4E 80 00 20 */ blr + +.global SetActive__22CCollisionActorManagerFR13CStateManagerb +SetActive__22CCollisionActorManagerFR13CStateManagerb: +/* 801A72F8 001A4258 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801A72FC 001A425C 7C 08 02 A6 */ mflr r0 +/* 801A7300 001A4260 90 01 00 34 */ stw r0, 0x34(r1) +/* 801A7304 001A4264 BF 41 00 18 */ stmw r26, 0x18(r1) +/* 801A7308 001A4268 7C BC 2B 78 */ mr r28, r5 +/* 801A730C 001A426C 7C 7A 1B 78 */ mr r26, r3 +/* 801A7310 001A4270 54 BE 06 3E */ clrlwi r30, r5, 0x18 +/* 801A7314 001A4274 7C 9B 23 78 */ mr r27, r4 +/* 801A7318 001A4278 3B A0 00 00 */ li r29, 0 +/* 801A731C 001A427C 3B E0 00 00 */ li r31, 0 +/* 801A7320 001A4280 9B 83 00 12 */ stb r28, 0x12(r3) +/* 801A7324 001A4284 48 00 00 78 */ b lbl_801A739C +lbl_801A7328: +/* 801A7328 001A4288 80 BA 00 0C */ lwz r5, 0xc(r26) +/* 801A732C 001A428C 38 1F 00 3C */ addi r0, r31, 0x3c +/* 801A7330 001A4290 7F 63 DB 78 */ mr r3, r27 +/* 801A7334 001A4294 38 81 00 0C */ addi r4, r1, 0xc +/* 801A7338 001A4298 7C 05 02 2E */ lhzx r0, r5, r0 +/* 801A733C 001A429C B0 01 00 08 */ sth r0, 8(r1) +/* 801A7340 001A42A0 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801A7344 001A42A4 4B EA 52 31 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801A7348 001A42A8 28 03 00 00 */ cmplwi r3, 0 +/* 801A734C 001A42AC 41 82 00 48 */ beq lbl_801A7394 +/* 801A7350 001A42B0 88 03 00 30 */ lbz r0, 0x30(r3) +/* 801A7354 001A42B4 57 84 06 3E */ clrlwi r4, r28, 0x18 +/* 801A7358 001A42B8 54 00 CF FE */ rlwinm r0, r0, 0x19, 0x1f, 0x1f +/* 801A735C 001A42BC 7C 04 00 40 */ cmplw r4, r0 +/* 801A7360 001A42C0 41 82 00 34 */ beq lbl_801A7394 +/* 801A7364 001A42C4 81 83 00 00 */ lwz r12, 0(r3) +/* 801A7368 001A42C8 7F C4 F3 78 */ mr r4, r30 +/* 801A736C 001A42CC 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801A7370 001A42D0 7D 89 03 A6 */ mtctr r12 +/* 801A7374 001A42D4 4E 80 04 21 */ bctrl +/* 801A7378 001A42D8 57 80 06 3F */ clrlwi. r0, r28, 0x18 +/* 801A737C 001A42DC 41 82 00 18 */ beq lbl_801A7394 +/* 801A7380 001A42E0 C0 22 A7 F8 */ lfs f1, lbl_805AC518@sda21(r2) +/* 801A7384 001A42E4 7F 43 D3 78 */ mr r3, r26 +/* 801A7388 001A42E8 7F 64 DB 78 */ mr r4, r27 +/* 801A738C 001A42EC 38 A0 00 01 */ li r5, 1 +/* 801A7390 001A42F0 48 00 00 C1 */ bl Update__22CCollisionActorManagerCFfR13CStateManagerQ222CCollisionActorManager14EUpdateOptions +lbl_801A7394: +/* 801A7394 001A42F4 3B FF 00 44 */ addi r31, r31, 0x44 +/* 801A7398 001A42F8 3B BD 00 01 */ addi r29, r29, 1 +lbl_801A739C: +/* 801A739C 001A42FC 80 1A 00 04 */ lwz r0, 4(r26) +/* 801A73A0 001A4300 7C 1D 00 00 */ cmpw r29, r0 +/* 801A73A4 001A4304 41 80 FF 84 */ blt lbl_801A7328 +/* 801A73A8 001A4308 BB 41 00 18 */ lmw r26, 0x18(r1) +/* 801A73AC 001A430C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801A73B0 001A4310 7C 08 03 A6 */ mtlr r0 +/* 801A73B4 001A4314 38 21 00 30 */ addi r1, r1, 0x30 +/* 801A73B8 001A4318 4E 80 00 20 */ blr + +.global GetActive__22CCollisionActorManagerCFv +GetActive__22CCollisionActorManagerCFv: +/* 801A73BC 001A431C 88 63 00 12 */ lbz r3, 0x12(r3) +/* 801A73C0 001A4320 4E 80 00 20 */ blr + +.global Destroy__22CCollisionActorManagerCFR13CStateManager +Destroy__22CCollisionActorManagerCFR13CStateManager: +/* 801A73C4 001A4324 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801A73C8 001A4328 7C 08 02 A6 */ mflr r0 +/* 801A73CC 001A432C 90 01 00 24 */ stw r0, 0x24(r1) +/* 801A73D0 001A4330 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801A73D4 001A4334 3B E0 00 00 */ li r31, 0 +/* 801A73D8 001A4338 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801A73DC 001A433C 3B C0 00 00 */ li r30, 0 +/* 801A73E0 001A4340 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801A73E4 001A4344 7C 9D 23 78 */ mr r29, r4 +/* 801A73E8 001A4348 93 81 00 10 */ stw r28, 0x10(r1) +/* 801A73EC 001A434C 7C 7C 1B 78 */ mr r28, r3 +/* 801A73F0 001A4350 48 00 00 2C */ b lbl_801A741C +lbl_801A73F4: +/* 801A73F4 001A4354 80 BC 00 0C */ lwz r5, 0xc(r28) +/* 801A73F8 001A4358 38 1F 00 3C */ addi r0, r31, 0x3c +/* 801A73FC 001A435C 7F A3 EB 78 */ mr r3, r29 +/* 801A7400 001A4360 38 81 00 0C */ addi r4, r1, 0xc +/* 801A7404 001A4364 7C 05 02 2E */ lhzx r0, r5, r0 +/* 801A7408 001A4368 B0 01 00 08 */ sth r0, 8(r1) +/* 801A740C 001A436C B0 01 00 0C */ sth r0, 0xc(r1) +/* 801A7410 001A4370 4B EA 4E 5D */ bl FreeScriptObject__13CStateManagerF9TUniqueId +/* 801A7414 001A4374 3B FF 00 44 */ addi r31, r31, 0x44 +/* 801A7418 001A4378 3B DE 00 01 */ addi r30, r30, 1 +lbl_801A741C: +/* 801A741C 001A437C 80 1C 00 04 */ lwz r0, 4(r28) +/* 801A7420 001A4380 7C 1E 00 00 */ cmpw r30, r0 +/* 801A7424 001A4384 41 80 FF D0 */ blt lbl_801A73F4 +/* 801A7428 001A4388 38 00 00 01 */ li r0, 1 +/* 801A742C 001A438C 98 1C 00 13 */ stb r0, 0x13(r28) +/* 801A7430 001A4390 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801A7434 001A4394 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801A7438 001A4398 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801A743C 001A439C 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801A7440 001A43A0 83 81 00 10 */ lwz r28, 0x10(r1) +/* 801A7444 001A43A4 7C 08 03 A6 */ mtlr r0 +/* 801A7448 001A43A8 38 21 00 20 */ addi r1, r1, 0x20 +/* 801A744C 001A43AC 4E 80 00 20 */ blr + +.global Update__22CCollisionActorManagerCFfR13CStateManagerQ222CCollisionActorManager14EUpdateOptions +Update__22CCollisionActorManagerCFfR13CStateManagerQ222CCollisionActorManager14EUpdateOptions: +/* 801A7450 001A43B0 94 21 FC 60 */ stwu r1, -0x3a0(r1) +/* 801A7454 001A43B4 7C 08 02 A6 */ mflr r0 +/* 801A7458 001A43B8 90 01 03 A4 */ stw r0, 0x3a4(r1) +/* 801A745C 001A43BC DB E1 03 90 */ stfd f31, 0x390(r1) +/* 801A7460 001A43C0 F3 E1 03 98 */ psq_st f31, 920(r1), 0, qr0 +/* 801A7464 001A43C4 DB C1 03 80 */ stfd f30, 0x380(r1) +/* 801A7468 001A43C8 F3 C1 03 88 */ psq_st f30, 904(r1), 0, qr0 +/* 801A746C 001A43CC BF 01 03 60 */ stmw r24, 0x360(r1) +/* 801A7470 001A43D0 7C 79 1B 78 */ mr r25, r3 +/* 801A7474 001A43D4 FF E0 08 90 */ fmr f31, f1 +/* 801A7478 001A43D8 88 03 00 14 */ lbz r0, 0x14(r3) +/* 801A747C 001A43DC 7C 9A 23 78 */ mr r26, r4 +/* 801A7480 001A43E0 7C BB 2B 78 */ mr r27, r5 +/* 801A7484 001A43E4 28 00 00 00 */ cmplwi r0, 0 +/* 801A7488 001A43E8 40 82 00 0C */ bne lbl_801A7494 +/* 801A748C 001A43EC 38 A0 00 01 */ li r5, 1 +/* 801A7490 001A43F0 4B FF FA 31 */ bl SetMovable__22CCollisionActorManagerFb +lbl_801A7494: +/* 801A7494 001A43F4 88 19 00 12 */ lbz r0, 0x12(r25) +/* 801A7498 001A43F8 28 00 00 00 */ cmplwi r0, 0 +/* 801A749C 001A43FC 41 82 04 1C */ beq lbl_801A78B8 +/* 801A74A0 001A4400 A0 19 00 10 */ lhz r0, 0x10(r25) +/* 801A74A4 001A4404 7F 43 D3 78 */ mr r3, r26 +/* 801A74A8 001A4408 38 81 00 28 */ addi r4, r1, 0x28 +/* 801A74AC 001A440C B0 01 00 28 */ sth r0, 0x28(r1) +/* 801A74B0 001A4410 4B EA 50 F5 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801A74B4 001A4414 7C 64 1B 78 */ mr r4, r3 +/* 801A74B8 001A4418 38 61 00 2C */ addi r3, r1, 0x2c +/* 801A74BC 001A441C 4B F0 87 D5 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 801A74C0 001A4420 83 03 00 04 */ lwz r24, 4(r3) +/* 801A74C4 001A4424 28 18 00 00 */ cmplwi r24, 0 +/* 801A74C8 001A4428 41 82 03 F0 */ beq lbl_801A78B8 +/* 801A74CC 001A442C 80 B8 00 64 */ lwz r5, 0x64(r24) +/* 801A74D0 001A4430 38 61 03 2C */ addi r3, r1, 0x32c +/* 801A74D4 001A4434 38 98 00 34 */ addi r4, r24, 0x34 +/* 801A74D8 001A4438 83 E5 00 10 */ lwz r31, 0x10(r5) +/* 801A74DC 001A443C 48 16 B6 99 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801A74E0 001A4440 80 B8 00 64 */ lwz r5, 0x64(r24) +/* 801A74E4 001A4444 38 61 02 3C */ addi r3, r1, 0x23c +/* 801A74E8 001A4448 38 81 00 C8 */ addi r4, r1, 0xc8 +/* 801A74EC 001A444C C0 05 00 00 */ lfs f0, 0(r5) +/* 801A74F0 001A4450 D0 01 00 C8 */ stfs f0, 0xc8(r1) +/* 801A74F4 001A4454 C0 05 00 04 */ lfs f0, 4(r5) +/* 801A74F8 001A4458 D0 01 00 CC */ stfs f0, 0xcc(r1) +/* 801A74FC 001A445C C0 05 00 08 */ lfs f0, 8(r5) +/* 801A7500 001A4460 D0 01 00 D0 */ stfs f0, 0xd0(r1) +/* 801A7504 001A4464 48 16 BC C1 */ bl Scale__12CTransform4fFRC9CVector3f +/* 801A7508 001A4468 38 61 02 FC */ addi r3, r1, 0x2fc +/* 801A750C 001A446C 38 81 02 3C */ addi r4, r1, 0x23c +/* 801A7510 001A4470 48 16 B6 65 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801A7514 001A4474 3B A0 00 00 */ li r29, 0 +/* 801A7518 001A4478 3B C0 00 00 */ li r30, 0 +/* 801A751C 001A447C 48 00 03 90 */ b lbl_801A78AC +lbl_801A7520: +/* 801A7520 001A4480 80 19 00 0C */ lwz r0, 0xc(r25) +/* 801A7524 001A4484 7F 43 D3 78 */ mr r3, r26 +/* 801A7528 001A4488 38 81 00 24 */ addi r4, r1, 0x24 +/* 801A752C 001A448C 7F 00 F2 14 */ add r24, r0, r30 +/* 801A7530 001A4490 A0 18 00 3C */ lhz r0, 0x3c(r24) +/* 801A7534 001A4494 B0 01 00 20 */ sth r0, 0x20(r1) +/* 801A7538 001A4498 B0 01 00 24 */ sth r0, 0x24(r1) +/* 801A753C 001A449C 4B EA 50 39 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801A7540 001A44A0 7C 64 1B 78 */ mr r4, r3 +/* 801A7544 001A44A4 38 61 00 34 */ addi r3, r1, 0x34 +/* 801A7548 001A44A8 4B F0 7E 05 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801A754C 001A44AC 83 83 00 04 */ lwz r28, 4(r3) +/* 801A7550 001A44B0 28 1C 00 00 */ cmplwi r28, 0 +/* 801A7554 001A44B4 41 82 03 50 */ beq lbl_801A78A4 +/* 801A7558 001A44B8 88 18 00 08 */ lbz r0, 8(r24) +/* 801A755C 001A44BC 7F E4 FB 78 */ mr r4, r31 +/* 801A7560 001A44C0 38 61 02 0C */ addi r3, r1, 0x20c +/* 801A7564 001A44C4 38 A1 00 1C */ addi r5, r1, 0x1c +/* 801A7568 001A44C8 98 01 00 18 */ stb r0, 0x18(r1) +/* 801A756C 001A44CC 38 C1 03 2C */ addi r6, r1, 0x32c +/* 801A7570 001A44D0 38 E1 02 FC */ addi r7, r1, 0x2fc +/* 801A7574 001A44D4 98 01 00 1C */ stb r0, 0x1c(r1) +/* 801A7578 001A44D8 4B FF FA 11 */ bl GetWRLocatorTransform__22CCollisionActorManagerFRC9CAnimData6CSegIdRC12CTransform4fRC12CTransform4f +/* 801A757C 001A44DC 38 61 02 CC */ addi r3, r1, 0x2cc +/* 801A7580 001A44E0 38 81 02 0C */ addi r4, r1, 0x20c +/* 801A7584 001A44E4 48 16 B5 F1 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801A7588 001A44E8 C0 E1 02 F8 */ lfs f7, 0x2f8(r1) +/* 801A758C 001A44EC C0 C1 02 E8 */ lfs f6, 0x2e8(r1) +/* 801A7590 001A44F0 C0 61 02 D8 */ lfs f3, 0x2d8(r1) +/* 801A7594 001A44F4 D0 C1 00 E4 */ stfs f6, 0xe4(r1) +/* 801A7598 001A44F8 D0 61 00 E0 */ stfs f3, 0xe0(r1) +/* 801A759C 001A44FC D0 E1 00 E8 */ stfs f7, 0xe8(r1) +/* 801A75A0 001A4500 80 18 00 00 */ lwz r0, 0(r24) +/* 801A75A4 001A4504 2C 00 00 04 */ cmpwi r0, 4 +/* 801A75A8 001A4508 41 82 00 0C */ beq lbl_801A75B4 +/* 801A75AC 001A450C 2C 00 00 03 */ cmpwi r0, 3 +/* 801A75B0 001A4510 40 82 01 74 */ bne lbl_801A7724 +lbl_801A75B4: +/* 801A75B4 001A4514 80 18 00 04 */ lwz r0, 4(r24) +/* 801A75B8 001A4518 2C 00 00 00 */ cmpwi r0, 0 +/* 801A75BC 001A451C 40 82 00 70 */ bne lbl_801A762C +/* 801A75C0 001A4520 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 801A75C4 001A4524 38 81 02 CC */ addi r4, r1, 0x2cc +/* 801A75C8 001A4528 48 16 AB 61 */ bl FromMatrix__11CQuaternionFRC12CTransform4f +/* 801A75CC 001A452C C0 5C 00 60 */ lfs f2, 0x60(r28) +/* 801A75D0 001A4530 38 61 01 1C */ addi r3, r1, 0x11c +/* 801A75D4 001A4534 C0 3C 00 50 */ lfs f1, 0x50(r28) +/* 801A75D8 001A4538 38 81 00 B8 */ addi r4, r1, 0xb8 +/* 801A75DC 001A453C C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 801A75E0 001A4540 38 A1 00 54 */ addi r5, r1, 0x54 +/* 801A75E4 001A4544 D0 01 00 54 */ stfs f0, 0x54(r1) +/* 801A75E8 001A4548 D0 21 00 58 */ stfs f1, 0x58(r1) +/* 801A75EC 001A454C D0 41 00 5C */ stfs f2, 0x5c(r1) +/* 801A75F0 001A4550 48 16 A8 CD */ bl BuildTransform4f__11CQuaternionCFRC9CVector3f +/* 801A75F4 001A4554 38 7C 00 34 */ addi r3, r28, 0x34 +/* 801A75F8 001A4558 38 81 01 1C */ addi r4, r1, 0x11c +/* 801A75FC 001A455C 48 16 B5 45 */ bl __as__12CTransform4fFRC12CTransform4f +/* 801A7600 001A4560 88 1C 00 E4 */ lbz r0, 0xe4(r28) +/* 801A7604 001A4564 38 60 00 01 */ li r3, 1 +/* 801A7608 001A4568 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801A760C 001A456C 98 1C 00 E4 */ stb r0, 0xe4(r28) +/* 801A7610 001A4570 88 1C 00 E4 */ lbz r0, 0xe4(r28) +/* 801A7614 001A4574 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801A7618 001A4578 98 1C 00 E4 */ stb r0, 0xe4(r28) +/* 801A761C 001A457C 88 1C 00 E4 */ lbz r0, 0xe4(r28) +/* 801A7620 001A4580 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801A7624 001A4584 98 1C 00 E4 */ stb r0, 0xe4(r28) +/* 801A7628 001A4588 48 00 01 FC */ b lbl_801A7824 +lbl_801A762C: +/* 801A762C 001A458C 88 18 00 09 */ lbz r0, 9(r24) +/* 801A7630 001A4590 7F E4 FB 78 */ mr r4, r31 +/* 801A7634 001A4594 38 61 01 DC */ addi r3, r1, 0x1dc +/* 801A7638 001A4598 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801A763C 001A459C 98 01 00 10 */ stb r0, 0x10(r1) +/* 801A7640 001A45A0 38 C1 03 2C */ addi r6, r1, 0x32c +/* 801A7644 001A45A4 38 E1 02 FC */ addi r7, r1, 0x2fc +/* 801A7648 001A45A8 98 01 00 14 */ stb r0, 0x14(r1) +/* 801A764C 001A45AC 4B FF F9 3D */ bl GetWRLocatorTransform__22CCollisionActorManagerFRC9CAnimData6CSegIdRC12CTransform4fRC12CTransform4f +/* 801A7650 001A45B0 38 61 02 9C */ addi r3, r1, 0x29c +/* 801A7654 001A45B4 38 81 01 DC */ addi r4, r1, 0x1dc +/* 801A7658 001A45B8 48 16 B5 1D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801A765C 001A45BC C1 01 02 D4 */ lfs f8, 0x2d4(r1) +/* 801A7660 001A45C0 38 61 01 AC */ addi r3, r1, 0x1ac +/* 801A7664 001A45C4 C0 E1 02 E4 */ lfs f7, 0x2e4(r1) +/* 801A7668 001A45C8 38 81 00 9C */ addi r4, r1, 0x9c +/* 801A766C 001A45CC C0 C1 02 F4 */ lfs f6, 0x2f4(r1) +/* 801A7670 001A45D0 38 A1 00 90 */ addi r5, r1, 0x90 +/* 801A7674 001A45D4 C0 A1 02 A8 */ lfs f5, 0x2a8(r1) +/* 801A7678 001A45D8 38 C1 00 84 */ addi r6, r1, 0x84 +/* 801A767C 001A45DC C0 81 02 B8 */ lfs f4, 0x2b8(r1) +/* 801A7680 001A45E0 C0 61 02 C8 */ lfs f3, 0x2c8(r1) +/* 801A7684 001A45E4 C0 41 02 D8 */ lfs f2, 0x2d8(r1) +/* 801A7688 001A45E8 C0 21 02 E8 */ lfs f1, 0x2e8(r1) +/* 801A768C 001A45EC C0 01 02 F8 */ lfs f0, 0x2f8(r1) +/* 801A7690 001A45F0 D1 01 00 84 */ stfs f8, 0x84(r1) +/* 801A7694 001A45F4 D0 E1 00 88 */ stfs f7, 0x88(r1) +/* 801A7698 001A45F8 D0 C1 00 8C */ stfs f6, 0x8c(r1) +/* 801A769C 001A45FC D0 A1 00 90 */ stfs f5, 0x90(r1) +/* 801A76A0 001A4600 D0 81 00 94 */ stfs f4, 0x94(r1) +/* 801A76A4 001A4604 D0 61 00 98 */ stfs f3, 0x98(r1) +/* 801A76A8 001A4608 D0 41 00 9C */ stfs f2, 0x9c(r1) +/* 801A76AC 001A460C D0 21 00 A0 */ stfs f1, 0xa0(r1) +/* 801A76B0 001A4610 D0 01 00 A4 */ stfs f0, 0xa4(r1) +/* 801A76B4 001A4614 48 16 C4 5D */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 801A76B8 001A4618 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 801A76BC 001A461C 38 81 01 AC */ addi r4, r1, 0x1ac +/* 801A76C0 001A4620 48 16 AA 69 */ bl FromMatrix__11CQuaternionFRC12CTransform4f +/* 801A76C4 001A4624 C0 5C 00 60 */ lfs f2, 0x60(r28) +/* 801A76C8 001A4628 38 61 00 EC */ addi r3, r1, 0xec +/* 801A76CC 001A462C C0 3C 00 50 */ lfs f1, 0x50(r28) +/* 801A76D0 001A4630 38 81 00 A8 */ addi r4, r1, 0xa8 +/* 801A76D4 001A4634 C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 801A76D8 001A4638 38 A1 00 48 */ addi r5, r1, 0x48 +/* 801A76DC 001A463C D0 01 00 48 */ stfs f0, 0x48(r1) +/* 801A76E0 001A4640 D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 801A76E4 001A4644 D0 41 00 50 */ stfs f2, 0x50(r1) +/* 801A76E8 001A4648 48 16 A7 D5 */ bl BuildTransform4f__11CQuaternionCFRC9CVector3f +/* 801A76EC 001A464C 38 7C 00 34 */ addi r3, r28, 0x34 +/* 801A76F0 001A4650 38 81 00 EC */ addi r4, r1, 0xec +/* 801A76F4 001A4654 48 16 B4 4D */ bl __as__12CTransform4fFRC12CTransform4f +/* 801A76F8 001A4658 88 1C 00 E4 */ lbz r0, 0xe4(r28) +/* 801A76FC 001A465C 38 60 00 01 */ li r3, 1 +/* 801A7700 001A4660 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801A7704 001A4664 98 1C 00 E4 */ stb r0, 0xe4(r28) +/* 801A7708 001A4668 88 1C 00 E4 */ lbz r0, 0xe4(r28) +/* 801A770C 001A466C 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801A7710 001A4670 98 1C 00 E4 */ stb r0, 0xe4(r28) +/* 801A7714 001A4674 88 1C 00 E4 */ lbz r0, 0xe4(r28) +/* 801A7718 001A4678 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801A771C 001A467C 98 1C 00 E4 */ stb r0, 0xe4(r28) +/* 801A7720 001A4680 48 00 01 04 */ b lbl_801A7824 +lbl_801A7724: +/* 801A7724 001A4684 2C 00 00 01 */ cmpwi r0, 1 +/* 801A7728 001A4688 40 82 00 FC */ bne lbl_801A7824 +/* 801A772C 001A468C 80 18 00 04 */ lwz r0, 4(r24) +/* 801A7730 001A4690 2C 00 00 00 */ cmpwi r0, 0 +/* 801A7734 001A4694 40 82 00 3C */ bne lbl_801A7770 +/* 801A7738 001A4698 C1 18 00 28 */ lfs f8, 0x28(r24) +/* 801A773C 001A469C C0 41 02 E0 */ lfs f2, 0x2e0(r1) +/* 801A7740 001A46A0 C0 21 02 F0 */ lfs f1, 0x2f0(r1) +/* 801A7744 001A46A4 C0 01 02 D0 */ lfs f0, 0x2d0(r1) +/* 801A7748 001A46A8 EC A8 00 B2 */ fmuls f5, f8, f2 +/* 801A774C 001A46AC EC 88 00 72 */ fmuls f4, f8, f1 +/* 801A7750 001A46B0 EC 48 00 32 */ fmuls f2, f8, f0 +/* 801A7754 001A46B4 EC 26 28 2A */ fadds f1, f6, f5 +/* 801A7758 001A46B8 EC 07 20 2A */ fadds f0, f7, f4 +/* 801A775C 001A46BC EC 43 10 2A */ fadds f2, f3, f2 +/* 801A7760 001A46C0 D0 21 00 E4 */ stfs f1, 0xe4(r1) +/* 801A7764 001A46C4 D0 41 00 E0 */ stfs f2, 0xe0(r1) +/* 801A7768 001A46C8 D0 01 00 E8 */ stfs f0, 0xe8(r1) +/* 801A776C 001A46CC 48 00 00 B8 */ b lbl_801A7824 +lbl_801A7770: +/* 801A7770 001A46D0 88 18 00 09 */ lbz r0, 9(r24) +/* 801A7774 001A46D4 7F E4 FB 78 */ mr r4, r31 +/* 801A7778 001A46D8 38 61 01 7C */ addi r3, r1, 0x17c +/* 801A777C 001A46DC 38 A1 00 0C */ addi r5, r1, 0xc +/* 801A7780 001A46E0 98 01 00 08 */ stb r0, 8(r1) +/* 801A7784 001A46E4 38 C1 03 2C */ addi r6, r1, 0x32c +/* 801A7788 001A46E8 38 E1 02 FC */ addi r7, r1, 0x2fc +/* 801A778C 001A46EC 98 01 00 0C */ stb r0, 0xc(r1) +/* 801A7790 001A46F0 4B FF F7 F9 */ bl GetWRLocatorTransform__22CCollisionActorManagerFRC9CAnimData6CSegIdRC12CTransform4fRC12CTransform4f +/* 801A7794 001A46F4 38 61 02 6C */ addi r3, r1, 0x26c +/* 801A7798 001A46F8 38 81 01 7C */ addi r4, r1, 0x17c +/* 801A779C 001A46FC 48 16 B3 D9 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801A77A0 001A4700 C3 D8 00 28 */ lfs f30, 0x28(r24) +/* 801A77A4 001A4704 38 61 01 4C */ addi r3, r1, 0x14c +/* 801A77A8 001A4708 C0 A1 02 D4 */ lfs f5, 0x2d4(r1) +/* 801A77AC 001A470C 38 81 00 E0 */ addi r4, r1, 0xe0 +/* 801A77B0 001A4710 C0 81 02 E4 */ lfs f4, 0x2e4(r1) +/* 801A77B4 001A4714 38 A1 00 78 */ addi r5, r1, 0x78 +/* 801A77B8 001A4718 C0 61 02 F4 */ lfs f3, 0x2f4(r1) +/* 801A77BC 001A471C 38 C1 00 6C */ addi r6, r1, 0x6c +/* 801A77C0 001A4720 C0 41 02 78 */ lfs f2, 0x278(r1) +/* 801A77C4 001A4724 C0 21 02 88 */ lfs f1, 0x288(r1) +/* 801A77C8 001A4728 C0 01 02 98 */ lfs f0, 0x298(r1) +/* 801A77CC 001A472C D0 A1 00 6C */ stfs f5, 0x6c(r1) +/* 801A77D0 001A4730 D0 81 00 70 */ stfs f4, 0x70(r1) +/* 801A77D4 001A4734 D0 61 00 74 */ stfs f3, 0x74(r1) +/* 801A77D8 001A4738 D0 41 00 78 */ stfs f2, 0x78(r1) +/* 801A77DC 001A473C D0 21 00 7C */ stfs f1, 0x7c(r1) +/* 801A77E0 001A4740 D0 01 00 80 */ stfs f0, 0x80(r1) +/* 801A77E4 001A4744 48 16 C3 2D */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 801A77E8 001A4748 C0 21 01 60 */ lfs f1, 0x160(r1) +/* 801A77EC 001A474C C0 01 01 70 */ lfs f0, 0x170(r1) +/* 801A77F0 001A4750 C0 41 01 50 */ lfs f2, 0x150(r1) +/* 801A77F4 001A4754 EC BE 00 72 */ fmuls f5, f30, f1 +/* 801A77F8 001A4758 C0 21 00 E4 */ lfs f1, 0xe4(r1) +/* 801A77FC 001A475C EC 9E 00 32 */ fmuls f4, f30, f0 +/* 801A7800 001A4760 C0 01 00 E8 */ lfs f0, 0xe8(r1) +/* 801A7804 001A4764 EC 5E 00 B2 */ fmuls f2, f30, f2 +/* 801A7808 001A4768 C0 61 00 E0 */ lfs f3, 0xe0(r1) +/* 801A780C 001A476C EC 21 28 2A */ fadds f1, f1, f5 +/* 801A7810 001A4770 EC 43 10 2A */ fadds f2, f3, f2 +/* 801A7814 001A4774 EC 00 20 2A */ fadds f0, f0, f4 +/* 801A7818 001A4778 D0 21 00 E4 */ stfs f1, 0xe4(r1) +/* 801A781C 001A477C D0 41 00 E0 */ stfs f2, 0xe0(r1) +/* 801A7820 001A4780 D0 01 00 E8 */ stfs f0, 0xe8(r1) +lbl_801A7824: +/* 801A7824 001A4784 2C 1B 00 00 */ cmpwi r27, 0 +/* 801A7828 001A4788 40 82 00 70 */ bne lbl_801A7898 +/* 801A782C 001A478C C0 21 00 E8 */ lfs f1, 0xe8(r1) +/* 801A7830 001A4790 38 9C 00 34 */ addi r4, r28, 0x34 +/* 801A7834 001A4794 C0 1C 00 60 */ lfs f0, 0x60(r28) +/* 801A7838 001A4798 38 61 00 60 */ addi r3, r1, 0x60 +/* 801A783C 001A479C C0 61 00 E4 */ lfs f3, 0xe4(r1) +/* 801A7840 001A47A0 38 A1 00 3C */ addi r5, r1, 0x3c +/* 801A7844 001A47A4 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801A7848 001A47A8 C0 5C 00 50 */ lfs f2, 0x50(r28) +/* 801A784C 001A47AC C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 801A7850 001A47B0 C0 21 00 E0 */ lfs f1, 0xe0(r1) +/* 801A7854 001A47B4 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801A7858 001A47B8 D0 81 00 44 */ stfs f4, 0x44(r1) +/* 801A785C 001A47BC EC 01 00 28 */ fsubs f0, f1, f0 +/* 801A7860 001A47C0 D0 41 00 40 */ stfs f2, 0x40(r1) +/* 801A7864 001A47C4 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 801A7868 001A47C8 48 16 B1 BD */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 801A786C 001A47CC C0 61 00 60 */ lfs f3, 0x60(r1) +/* 801A7870 001A47D0 FC 20 F8 90 */ fmr f1, f31 +/* 801A7874 001A47D4 C0 41 00 64 */ lfs f2, 0x64(r1) +/* 801A7878 001A47D8 7F 83 E3 78 */ mr r3, r28 +/* 801A787C 001A47DC C0 01 00 68 */ lfs f0, 0x68(r1) +/* 801A7880 001A47E0 38 81 00 D4 */ addi r4, r1, 0xd4 +/* 801A7884 001A47E4 D0 61 00 D4 */ stfs f3, 0xd4(r1) +/* 801A7888 001A47E8 D0 41 00 D8 */ stfs f2, 0xd8(r1) +/* 801A788C 001A47EC D0 01 00 DC */ stfs f0, 0xdc(r1) +/* 801A7890 001A47F0 4B F7 35 E9 */ bl MoveToOR__13CPhysicsActorFRC9CVector3ff +/* 801A7894 001A47F4 48 00 00 10 */ b lbl_801A78A4 +lbl_801A7898: +/* 801A7898 001A47F8 7F 83 E3 78 */ mr r3, r28 +/* 801A789C 001A47FC 38 81 00 E0 */ addi r4, r1, 0xe0 +/* 801A78A0 001A4800 4B EA B5 ED */ bl SetTranslation__6CActorFRC9CVector3f +lbl_801A78A4: +/* 801A78A4 001A4804 3B DE 00 44 */ addi r30, r30, 0x44 +/* 801A78A8 001A4808 3B BD 00 01 */ addi r29, r29, 1 +lbl_801A78AC: +/* 801A78AC 001A480C 80 19 00 04 */ lwz r0, 4(r25) +/* 801A78B0 001A4810 7C 1D 00 00 */ cmpw r29, r0 +/* 801A78B4 001A4814 41 80 FC 6C */ blt lbl_801A7520 +lbl_801A78B8: +/* 801A78B8 001A4818 E3 E1 03 98 */ psq_l f31, 920(r1), 0, qr0 +/* 801A78BC 001A481C CB E1 03 90 */ lfd f31, 0x390(r1) +/* 801A78C0 001A4820 E3 C1 03 88 */ psq_l f30, 904(r1), 0, qr0 +/* 801A78C4 001A4824 CB C1 03 80 */ lfd f30, 0x380(r1) +/* 801A78C8 001A4828 BB 01 03 60 */ lmw r24, 0x360(r1) +/* 801A78CC 001A482C 80 01 03 A4 */ lwz r0, 0x3a4(r1) +/* 801A78D0 001A4830 7C 08 03 A6 */ mtlr r0 +/* 801A78D4 001A4834 38 21 03 A0 */ addi r1, r1, 0x3a0 +/* 801A78D8 001A4838 4E 80 00 20 */ blr + +.global sub_801a78dc +sub_801a78dc: +/* 801A78DC 001A483C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801A78E0 001A4840 7C 08 02 A6 */ mflr r0 +/* 801A78E4 001A4844 90 01 00 14 */ stw r0, 0x14(r1) +/* 801A78E8 001A4848 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801A78EC 001A484C 7C 9F 23 78 */ mr r31, r4 +/* 801A78F0 001A4850 93 C1 00 08 */ stw r30, 8(r1) +/* 801A78F4 001A4854 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801A78F8 001A4858 41 82 00 1C */ beq lbl_801A7914 +/* 801A78FC 001A485C 38 80 FF FF */ li r4, -1 +/* 801A7900 001A4860 4B FA EA 2D */ bl sub_8015632c +/* 801A7904 001A4864 7F E0 07 35 */ extsh. r0, r31 +/* 801A7908 001A4868 40 81 00 0C */ ble lbl_801A7914 +/* 801A790C 001A486C 7F C3 F3 78 */ mr r3, r30 +/* 801A7910 001A4870 48 16 E0 21 */ bl Free__7CMemoryFPCv +lbl_801A7914: +/* 801A7914 001A4874 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801A7918 001A4878 7F C3 F3 78 */ mr r3, r30 +/* 801A791C 001A487C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801A7920 001A4880 83 C1 00 08 */ lwz r30, 8(r1) +/* 801A7924 001A4884 7C 08 03 A6 */ mtlr r0 +/* 801A7928 001A4888 38 21 00 10 */ addi r1, r1, 0x10 +/* 801A792C 001A488C 4E 80 00 20 */ blr + +.global "__ct__22CCollisionActorManagerFR13CStateManager9TUniqueId7TAreaIdRCQ24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>b" +"__ct__22CCollisionActorManagerFR13CStateManager9TUniqueId7TAreaIdRCQ24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>b": +/* 801A7930 001A4890 94 21 FA 40 */ stwu r1, -0x5c0(r1) +/* 801A7934 001A4894 7C 08 02 A6 */ mflr r0 +/* 801A7938 001A4898 90 01 05 C4 */ stw r0, 0x5c4(r1) +/* 801A793C 001A489C DB E1 05 B0 */ stfd f31, 0x5b0(r1) +/* 801A7940 001A48A0 F3 E1 05 B8 */ psq_st f31, 1464(r1), 0, qr0 +/* 801A7944 001A48A4 DB C1 05 A0 */ stfd f30, 0x5a0(r1) +/* 801A7948 001A48A8 F3 C1 05 A8 */ psq_st f30, 1448(r1), 0, qr0 +/* 801A794C 001A48AC DB A1 05 90 */ stfd f29, 0x590(r1) +/* 801A7950 001A48B0 F3 A1 05 98 */ psq_st f29, 1432(r1), 0, qr0 +/* 801A7954 001A48B4 BD E1 05 4C */ stmw r15, 0x54c(r1) +/* 801A7958 001A48B8 39 20 00 00 */ li r9, 0 +/* 801A795C 001A48BC 7C 9E 23 78 */ mr r30, r4 +/* 801A7960 001A48C0 91 23 00 04 */ stw r9, 4(r3) +/* 801A7964 001A48C4 7C 7F 1B 78 */ mr r31, r3 +/* 801A7968 001A48C8 7D 1C 43 78 */ mr r28, r8 +/* 801A796C 001A48CC 38 00 00 01 */ li r0, 1 +/* 801A7970 001A48D0 91 23 00 08 */ stw r9, 8(r3) +/* 801A7974 001A48D4 7C DB 33 78 */ mr r27, r6 +/* 801A7978 001A48D8 7C F4 3B 78 */ mr r20, r7 +/* 801A797C 001A48DC 7F C3 F3 78 */ mr r3, r30 +/* 801A7980 001A48E0 91 3F 00 0C */ stw r9, 0xc(r31) +/* 801A7984 001A48E4 38 81 00 80 */ addi r4, r1, 0x80 +/* 801A7988 001A48E8 A0 A5 00 00 */ lhz r5, 0(r5) +/* 801A798C 001A48EC B0 BF 00 10 */ sth r5, 0x10(r31) +/* 801A7990 001A48F0 9B 9F 00 12 */ stb r28, 0x12(r31) +/* 801A7994 001A48F4 99 3F 00 13 */ stb r9, 0x13(r31) +/* 801A7998 001A48F8 98 1F 00 14 */ stb r0, 0x14(r31) +/* 801A799C 001A48FC A0 1F 00 10 */ lhz r0, 0x10(r31) +/* 801A79A0 001A4900 B0 01 00 80 */ sth r0, 0x80(r1) +/* 801A79A4 001A4904 4B EA 4C 01 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801A79A8 001A4908 7C 64 1B 78 */ mr r4, r3 +/* 801A79AC 001A490C 38 61 00 AC */ addi r3, r1, 0xac +/* 801A79B0 001A4910 4B F0 82 E1 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 801A79B4 001A4914 81 E3 00 04 */ lwz r15, 4(r3) +/* 801A79B8 001A4918 28 0F 00 00 */ cmplwi r15, 0 +/* 801A79BC 001A491C 41 82 0A A8 */ beq lbl_801A8464 +/* 801A79C0 001A4920 80 AF 00 64 */ lwz r5, 0x64(r15) +/* 801A79C4 001A4924 38 61 04 38 */ addi r3, r1, 0x438 +/* 801A79C8 001A4928 38 8F 00 34 */ addi r4, r15, 0x34 +/* 801A79CC 001A492C 82 45 00 10 */ lwz r18, 0x10(r5) +/* 801A79D0 001A4930 48 16 B1 A5 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801A79D4 001A4934 80 AF 00 64 */ lwz r5, 0x64(r15) +/* 801A79D8 001A4938 38 61 02 E8 */ addi r3, r1, 0x2e8 +/* 801A79DC 001A493C 38 81 01 BC */ addi r4, r1, 0x1bc +/* 801A79E0 001A4940 C0 25 00 04 */ lfs f1, 4(r5) +/* 801A79E4 001A4944 C0 45 00 08 */ lfs f2, 8(r5) +/* 801A79E8 001A4948 C0 05 00 00 */ lfs f0, 0(r5) +/* 801A79EC 001A494C D0 01 01 BC */ stfs f0, 0x1bc(r1) +/* 801A79F0 001A4950 D0 21 01 C0 */ stfs f1, 0x1c0(r1) +/* 801A79F4 001A4954 D0 41 01 C4 */ stfs f2, 0x1c4(r1) +/* 801A79F8 001A4958 48 16 B7 CD */ bl Scale__12CTransform4fFRC9CVector3f +/* 801A79FC 001A495C 38 61 04 08 */ addi r3, r1, 0x408 +/* 801A7A00 001A4960 38 81 02 E8 */ addi r4, r1, 0x2e8 +/* 801A7A04 001A4964 48 16 B1 71 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801A7A08 001A4968 80 94 00 04 */ lwz r4, 4(r20) +/* 801A7A0C 001A496C 7F E3 FB 78 */ mr r3, r31 +/* 801A7A10 001A4970 4B FA ED A9 */ bl "reserve__Q24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>Fi" +/* 801A7A14 001A4974 83 B4 00 0C */ lwz r29, 0xc(r20) +/* 801A7A18 001A4978 3A 21 04 FC */ addi r17, r1, 0x4fc +/* 801A7A1C 001A497C 39 E1 05 08 */ addi r15, r1, 0x508 +/* 801A7A20 001A4980 3B 21 05 1C */ addi r25, r1, 0x51c +/* 801A7A24 001A4984 3A 01 04 D8 */ addi r16, r1, 0x4d8 +/* 801A7A28 001A4988 3B 41 04 94 */ addi r26, r1, 0x494 +/* 801A7A2C 001A498C 48 00 0A 20 */ b lbl_801A844C +lbl_801A7A30: +/* 801A7A30 001A4990 80 1D 00 00 */ lwz r0, 0(r29) +/* 801A7A34 001A4994 7F 23 CB 78 */ mr r3, r25 +/* 801A7A38 001A4998 38 9D 00 2C */ addi r4, r29, 0x2c +/* 801A7A3C 001A499C 90 01 04 F0 */ stw r0, 0x4f0(r1) +/* 801A7A40 001A49A0 80 1D 00 04 */ lwz r0, 4(r29) +/* 801A7A44 001A49A4 90 01 04 F4 */ stw r0, 0x4f4(r1) +/* 801A7A48 001A49A8 88 1D 00 08 */ lbz r0, 8(r29) +/* 801A7A4C 001A49AC 98 01 04 F8 */ stb r0, 0x4f8(r1) +/* 801A7A50 001A49B0 88 1D 00 09 */ lbz r0, 9(r29) +/* 801A7A54 001A49B4 98 01 04 F9 */ stb r0, 0x4f9(r1) +/* 801A7A58 001A49B8 C0 1D 00 0C */ lfs f0, 0xc(r29) +/* 801A7A5C 001A49BC D0 11 00 00 */ stfs f0, 0(r17) +/* 801A7A60 001A49C0 C0 1D 00 10 */ lfs f0, 0x10(r29) +/* 801A7A64 001A49C4 D0 01 05 00 */ stfs f0, 0x500(r1) +/* 801A7A68 001A49C8 C0 1D 00 14 */ lfs f0, 0x14(r29) +/* 801A7A6C 001A49CC D0 01 05 04 */ stfs f0, 0x504(r1) +/* 801A7A70 001A49D0 C0 1D 00 18 */ lfs f0, 0x18(r29) +/* 801A7A74 001A49D4 D0 01 05 08 */ stfs f0, 0x508(r1) +/* 801A7A78 001A49D8 C0 1D 00 1C */ lfs f0, 0x1c(r29) +/* 801A7A7C 001A49DC D0 01 05 0C */ stfs f0, 0x50c(r1) +/* 801A7A80 001A49E0 C0 1D 00 20 */ lfs f0, 0x20(r29) +/* 801A7A84 001A49E4 D0 01 05 10 */ stfs f0, 0x510(r1) +/* 801A7A88 001A49E8 C0 1D 00 24 */ lfs f0, 0x24(r29) +/* 801A7A8C 001A49EC D0 01 05 14 */ stfs f0, 0x514(r1) +/* 801A7A90 001A49F0 C0 1D 00 28 */ lfs f0, 0x28(r29) +/* 801A7A94 001A49F4 D0 01 05 18 */ stfs f0, 0x518(r1) +/* 801A7A98 001A49F8 48 19 66 C9 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801A7A9C 001A49FC A0 1D 00 3C */ lhz r0, 0x3c(r29) +/* 801A7AA0 001A4A00 38 61 04 F0 */ addi r3, r1, 0x4f0 +/* 801A7AA4 001A4A04 38 81 01 BC */ addi r4, r1, 0x1bc +/* 801A7AA8 001A4A08 B0 01 05 2C */ sth r0, 0x52c(r1) +/* 801A7AAC 001A4A0C C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 801A7AB0 001A4A10 D0 01 05 30 */ stfs f0, 0x530(r1) +/* 801A7AB4 001A4A14 48 00 09 E1 */ bl ScaleAllBounds__26CJointCollisionDescriptionFRC9CVector3f +/* 801A7AB8 001A4A18 88 01 04 F8 */ lbz r0, 0x4f8(r1) +/* 801A7ABC 001A4A1C 7E 44 93 78 */ mr r4, r18 +/* 801A7AC0 001A4A20 38 61 02 B8 */ addi r3, r1, 0x2b8 +/* 801A7AC4 001A4A24 38 A1 00 2C */ addi r5, r1, 0x2c +/* 801A7AC8 001A4A28 98 01 00 28 */ stb r0, 0x28(r1) +/* 801A7ACC 001A4A2C 38 C1 04 38 */ addi r6, r1, 0x438 +/* 801A7AD0 001A4A30 38 E1 04 08 */ addi r7, r1, 0x408 +/* 801A7AD4 001A4A34 98 01 00 2C */ stb r0, 0x2c(r1) +/* 801A7AD8 001A4A38 4B FF F4 B1 */ bl GetWRLocatorTransform__22CCollisionActorManagerFRC9CAnimData6CSegIdRC12CTransform4fRC12CTransform4f +/* 801A7ADC 001A4A3C 38 61 03 D8 */ addi r3, r1, 0x3d8 +/* 801A7AE0 001A4A40 38 81 02 B8 */ addi r4, r1, 0x2b8 +/* 801A7AE4 001A4A44 48 16 B0 91 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801A7AE8 001A4A48 88 01 04 F9 */ lbz r0, 0x4f9(r1) +/* 801A7AEC 001A4A4C 28 00 00 FF */ cmplwi r0, 0xff +/* 801A7AF0 001A4A50 41 82 07 A4 */ beq lbl_801A8294 +/* 801A7AF4 001A4A54 98 01 00 20 */ stb r0, 0x20(r1) +/* 801A7AF8 001A4A58 7E 44 93 78 */ mr r4, r18 +/* 801A7AFC 001A4A5C 38 61 02 88 */ addi r3, r1, 0x288 +/* 801A7B00 001A4A60 38 A1 00 24 */ addi r5, r1, 0x24 +/* 801A7B04 001A4A64 98 01 00 24 */ stb r0, 0x24(r1) +/* 801A7B08 001A4A68 38 C1 04 38 */ addi r6, r1, 0x438 +/* 801A7B0C 001A4A6C 38 E1 04 08 */ addi r7, r1, 0x408 +/* 801A7B10 001A4A70 4B FF F4 79 */ bl GetWRLocatorTransform__22CCollisionActorManagerFRC9CAnimData6CSegIdRC12CTransform4fRC12CTransform4f +/* 801A7B14 001A4A74 38 61 03 A8 */ addi r3, r1, 0x3a8 +/* 801A7B18 001A4A78 38 81 02 88 */ addi r4, r1, 0x288 +/* 801A7B1C 001A4A7C 48 16 B0 59 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801A7B20 001A4A80 C0 61 03 B4 */ lfs f3, 0x3b4(r1) +/* 801A7B24 001A4A84 38 61 01 80 */ addi r3, r1, 0x180 +/* 801A7B28 001A4A88 C0 01 03 E4 */ lfs f0, 0x3e4(r1) +/* 801A7B2C 001A4A8C C0 41 03 C4 */ lfs f2, 0x3c4(r1) +/* 801A7B30 001A4A90 C0 81 03 F4 */ lfs f4, 0x3f4(r1) +/* 801A7B34 001A4A94 EC 03 00 28 */ fsubs f0, f3, f0 +/* 801A7B38 001A4A98 C0 21 03 D4 */ lfs f1, 0x3d4(r1) +/* 801A7B3C 001A4A9C C0 A1 04 04 */ lfs f5, 0x404(r1) +/* 801A7B40 001A4AA0 EC 82 20 28 */ fsubs f4, f2, f4 +/* 801A7B44 001A4AA4 D0 61 01 74 */ stfs f3, 0x174(r1) +/* 801A7B48 001A4AA8 EC 61 28 28 */ fsubs f3, f1, f5 +/* 801A7B4C 001A4AAC D0 41 01 78 */ stfs f2, 0x178(r1) +/* 801A7B50 001A4AB0 D0 21 01 7C */ stfs f1, 0x17c(r1) +/* 801A7B54 001A4AB4 D0 01 01 80 */ stfs f0, 0x180(r1) +/* 801A7B58 001A4AB8 D0 81 01 84 */ stfs f4, 0x184(r1) +/* 801A7B5C 001A4ABC D0 61 01 88 */ stfs f3, 0x188(r1) +/* 801A7B60 001A4AC0 48 16 CD 59 */ bl Magnitude__9CVector3fCFv +/* 801A7B64 001A4AC4 80 01 04 F0 */ lwz r0, 0x4f0(r1) +/* 801A7B68 001A4AC8 FF A0 08 90 */ fmr f29, f1 +/* 801A7B6C 001A4ACC 2C 00 00 03 */ cmpwi r0, 3 +/* 801A7B70 001A4AD0 40 82 02 84 */ bne lbl_801A7DF4 +/* 801A7B74 001A4AD4 C0 02 A7 FC */ lfs f0, lbl_805AC51C@sda21(r2) +/* 801A7B78 001A4AD8 FC 1D 00 40 */ fcmpo cr0, f29, f0 +/* 801A7B7C 001A4ADC 4C 40 13 82 */ cror 2, 0, 2 +/* 801A7B80 001A4AE0 40 82 00 18 */ bne lbl_801A7B98 +/* 801A7B84 001A4AE4 28 19 00 00 */ cmplwi r25, 0 +/* 801A7B88 001A4AE8 41 82 08 C0 */ beq lbl_801A8448 +/* 801A7B8C 001A4AEC 7F 23 CB 78 */ mr r3, r25 +/* 801A7B90 001A4AF0 48 19 5F 51 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801A7B94 001A4AF4 48 00 08 B4 */ b lbl_801A8448 +lbl_801A7B98: +/* 801A7B98 001A4AF8 C0 01 05 00 */ lfs f0, 0x500(r1) +/* 801A7B9C 001A4AFC 7F C4 F3 78 */ mr r4, r30 +/* 801A7BA0 001A4B00 C0 51 00 00 */ lfs f2, 0(r17) +/* 801A7BA4 001A4B04 38 61 00 7C */ addi r3, r1, 0x7c +/* 801A7BA8 001A4B08 EC 3D 00 2A */ fadds f1, f29, f0 +/* 801A7BAC 001A4B0C C0 01 05 04 */ lfs f0, 0x504(r1) +/* 801A7BB0 001A4B10 D0 41 01 B0 */ stfs f2, 0x1b0(r1) +/* 801A7BB4 001A4B14 D0 21 01 B4 */ stfs f1, 0x1b4(r1) +/* 801A7BB8 001A4B18 D0 01 01 B8 */ stfs f0, 0x1b8(r1) +/* 801A7BBC 001A4B1C 4B EA 55 21 */ bl AllocateUniqueId__13CStateManagerFv +/* 801A7BC0 001A4B20 A0 01 00 7C */ lhz r0, 0x7c(r1) +/* 801A7BC4 001A4B24 3C 60 80 3D */ lis r3, lbl_803D1498@ha +/* 801A7BC8 001A4B28 38 83 14 98 */ addi r4, r3, lbl_803D1498@l +/* 801A7BCC 001A4B2C 38 A0 00 00 */ li r5, 0 +/* 801A7BD0 001A4B30 B0 01 00 90 */ sth r0, 0x90(r1) +/* 801A7BD4 001A4B34 38 60 03 10 */ li r3, 0x310 +/* 801A7BD8 001A4B38 48 16 DC 95 */ bl __nw__FUlPCcPCc +/* 801A7BDC 001A4B3C 7C 73 1B 79 */ or. r19, r3, r3 +/* 801A7BE0 001A4B40 41 82 00 58 */ beq lbl_801A7C38 +/* 801A7BE4 001A4B44 C0 02 A8 00 */ lfs f0, lbl_805AC520@sda21(r2) +/* 801A7BE8 001A4B48 7F 89 E3 78 */ mr r9, r28 +/* 801A7BEC 001A4B4C C0 42 A7 F8 */ lfs f2, lbl_805AC518@sda21(r2) +/* 801A7BF0 001A4B50 38 81 00 74 */ addi r4, r1, 0x74 +/* 801A7BF4 001A4B54 EC 00 07 72 */ fmuls f0, f0, f29 +/* 801A7BF8 001A4B58 81 5B 00 00 */ lwz r10, 0(r27) +/* 801A7BFC 001A4B5C D0 41 01 68 */ stfs f2, 0x168(r1) +/* 801A7C00 001A4B60 38 A1 00 A8 */ addi r5, r1, 0xa8 +/* 801A7C04 001A4B64 A0 01 00 90 */ lhz r0, 0x90(r1) +/* 801A7C08 001A4B68 38 C1 00 78 */ addi r6, r1, 0x78 +/* 801A7C0C 001A4B6C D0 01 01 6C */ stfs f0, 0x16c(r1) +/* 801A7C10 001A4B70 38 E1 01 B0 */ addi r7, r1, 0x1b0 +/* 801A7C14 001A4B74 C0 21 05 30 */ lfs f1, 0x530(r1) +/* 801A7C18 001A4B78 39 01 01 68 */ addi r8, r1, 0x168 +/* 801A7C1C 001A4B7C D0 41 01 70 */ stfs f2, 0x170(r1) +/* 801A7C20 001A4B80 A1 7F 00 10 */ lhz r11, 0x10(r31) +/* 801A7C24 001A4B84 B1 61 00 78 */ sth r11, 0x78(r1) +/* 801A7C28 001A4B88 91 41 00 A8 */ stw r10, 0xa8(r1) +/* 801A7C2C 001A4B8C B0 01 00 74 */ sth r0, 0x74(r1) +/* 801A7C30 001A4B90 48 00 21 79 */ bl __ct__15CCollisionActorF9TUniqueIdCRi9TUniqueIdRC9CVector3fRC9CVector3fbf +/* 801A7C34 001A4B94 7C 73 1B 78 */ mr r19, r3 +lbl_801A7C38: +/* 801A7C38 001A4B98 80 01 04 F4 */ lwz r0, 0x4f4(r1) +/* 801A7C3C 001A4B9C 2C 00 00 00 */ cmpwi r0, 0 +/* 801A7C40 001A4BA0 40 82 00 3C */ bne lbl_801A7C7C +/* 801A7C44 001A4BA4 38 73 00 34 */ addi r3, r19, 0x34 +/* 801A7C48 001A4BA8 38 81 03 D8 */ addi r4, r1, 0x3d8 +/* 801A7C4C 001A4BAC 48 16 AE F5 */ bl __as__12CTransform4fFRC12CTransform4f +/* 801A7C50 001A4BB0 88 13 00 E4 */ lbz r0, 0xe4(r19) +/* 801A7C54 001A4BB4 38 60 00 01 */ li r3, 1 +/* 801A7C58 001A4BB8 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801A7C5C 001A4BBC 98 13 00 E4 */ stb r0, 0xe4(r19) +/* 801A7C60 001A4BC0 88 13 00 E4 */ lbz r0, 0xe4(r19) +/* 801A7C64 001A4BC4 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801A7C68 001A4BC8 98 13 00 E4 */ stb r0, 0xe4(r19) +/* 801A7C6C 001A4BCC 88 13 00 E4 */ lbz r0, 0xe4(r19) +/* 801A7C70 001A4BD0 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801A7C74 001A4BD4 98 13 00 E4 */ stb r0, 0xe4(r19) +/* 801A7C78 001A4BD8 48 00 01 44 */ b lbl_801A7DBC +lbl_801A7C7C: +/* 801A7C7C 001A4BDC C0 61 03 B4 */ lfs f3, 0x3b4(r1) +/* 801A7C80 001A4BE0 38 61 01 5C */ addi r3, r1, 0x15c +/* 801A7C84 001A4BE4 C0 01 03 E4 */ lfs f0, 0x3e4(r1) +/* 801A7C88 001A4BE8 38 81 01 50 */ addi r4, r1, 0x150 +/* 801A7C8C 001A4BEC C0 41 03 C4 */ lfs f2, 0x3c4(r1) +/* 801A7C90 001A4BF0 C0 81 03 F4 */ lfs f4, 0x3f4(r1) +/* 801A7C94 001A4BF4 EC 03 00 28 */ fsubs f0, f3, f0 +/* 801A7C98 001A4BF8 C0 21 03 D4 */ lfs f1, 0x3d4(r1) +/* 801A7C9C 001A4BFC C0 A1 04 04 */ lfs f5, 0x404(r1) +/* 801A7CA0 001A4C00 EC C2 20 28 */ fsubs f6, f2, f4 +/* 801A7CA4 001A4C04 C1 01 04 00 */ lfs f8, 0x400(r1) +/* 801A7CA8 001A4C08 EC A1 28 28 */ fsubs f5, f1, f5 +/* 801A7CAC 001A4C0C C0 E1 03 F0 */ lfs f7, 0x3f0(r1) +/* 801A7CB0 001A4C10 C0 81 03 E0 */ lfs f4, 0x3e0(r1) +/* 801A7CB4 001A4C14 D0 E1 01 A8 */ stfs f7, 0x1a8(r1) +/* 801A7CB8 001A4C18 D0 81 01 A4 */ stfs f4, 0x1a4(r1) +/* 801A7CBC 001A4C1C D1 01 01 AC */ stfs f8, 0x1ac(r1) +/* 801A7CC0 001A4C20 D0 61 01 44 */ stfs f3, 0x144(r1) +/* 801A7CC4 001A4C24 D0 41 01 48 */ stfs f2, 0x148(r1) +/* 801A7CC8 001A4C28 D0 21 01 4C */ stfs f1, 0x14c(r1) +/* 801A7CCC 001A4C2C D0 01 01 50 */ stfs f0, 0x150(r1) +/* 801A7CD0 001A4C30 D0 C1 01 54 */ stfs f6, 0x154(r1) +/* 801A7CD4 001A4C34 D0 A1 01 58 */ stfs f5, 0x158(r1) +/* 801A7CD8 001A4C38 48 16 CB 79 */ bl AsNormalized__9CVector3fCFv +/* 801A7CDC 001A4C3C C0 81 01 60 */ lfs f4, 0x160(r1) +/* 801A7CE0 001A4C40 C0 01 01 A8 */ lfs f0, 0x1a8(r1) +/* 801A7CE4 001A4C44 C0 C1 01 5C */ lfs f6, 0x15c(r1) +/* 801A7CE8 001A4C48 EC 04 00 32 */ fmuls f0, f4, f0 +/* 801A7CEC 001A4C4C C0 21 01 A4 */ lfs f1, 0x1a4(r1) +/* 801A7CF0 001A4C50 C0 A1 01 64 */ lfs f5, 0x164(r1) +/* 801A7CF4 001A4C54 C0 61 01 AC */ lfs f3, 0x1ac(r1) +/* 801A7CF8 001A4C58 EC 26 00 7A */ fmadds f1, f6, f1, f0 +/* 801A7CFC 001A4C5C C0 42 A8 04 */ lfs f2, lbl_805AC524@sda21(r2) +/* 801A7D00 001A4C60 C8 02 A8 08 */ lfd f0, lbl_805AC528@sda21(r2) +/* 801A7D04 001A4C64 EC 25 08 FA */ fmadds f1, f5, f3, f1 +/* 801A7D08 001A4C68 FC 20 0A 10 */ fabs f1, f1 +/* 801A7D0C 001A4C6C FC 20 08 18 */ frsp f1, f1 +/* 801A7D10 001A4C70 EC 22 08 28 */ fsubs f1, f2, f1 +/* 801A7D14 001A4C74 FC 20 0A 10 */ fabs f1, f1 +/* 801A7D18 001A4C78 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801A7D1C 001A4C7C 40 80 00 1C */ bge lbl_801A7D38 +/* 801A7D20 001A4C80 C0 41 03 FC */ lfs f2, 0x3fc(r1) +/* 801A7D24 001A4C84 C0 21 03 EC */ lfs f1, 0x3ec(r1) +/* 801A7D28 001A4C88 C0 01 03 DC */ lfs f0, 0x3dc(r1) +/* 801A7D2C 001A4C8C D0 21 01 A8 */ stfs f1, 0x1a8(r1) +/* 801A7D30 001A4C90 D0 01 01 A4 */ stfs f0, 0x1a4(r1) +/* 801A7D34 001A4C94 D0 41 01 AC */ stfs f2, 0x1ac(r1) +lbl_801A7D38: +/* 801A7D38 001A4C98 C0 01 03 F4 */ lfs f0, 0x3f4(r1) +/* 801A7D3C 001A4C9C 38 61 02 58 */ addi r3, r1, 0x258 +/* 801A7D40 001A4CA0 C0 41 04 04 */ lfs f2, 0x404(r1) +/* 801A7D44 001A4CA4 38 81 01 38 */ addi r4, r1, 0x138 +/* 801A7D48 001A4CA8 C0 21 03 E4 */ lfs f1, 0x3e4(r1) +/* 801A7D4C 001A4CAC EC 80 20 2A */ fadds f4, f0, f4 +/* 801A7D50 001A4CB0 EC 62 28 2A */ fadds f3, f2, f5 +/* 801A7D54 001A4CB4 D0 01 01 3C */ stfs f0, 0x13c(r1) +/* 801A7D58 001A4CB8 EC 01 30 2A */ fadds f0, f1, f6 +/* 801A7D5C 001A4CBC 38 A1 01 2C */ addi r5, r1, 0x12c +/* 801A7D60 001A4CC0 D0 81 01 30 */ stfs f4, 0x130(r1) +/* 801A7D64 001A4CC4 38 C1 01 A4 */ addi r6, r1, 0x1a4 +/* 801A7D68 001A4CC8 D0 01 01 2C */ stfs f0, 0x12c(r1) +/* 801A7D6C 001A4CCC D0 61 01 34 */ stfs f3, 0x134(r1) +/* 801A7D70 001A4CD0 D0 21 01 38 */ stfs f1, 0x138(r1) +/* 801A7D74 001A4CD4 D0 41 01 40 */ stfs f2, 0x140(r1) +/* 801A7D78 001A4CD8 48 16 BD 99 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 801A7D7C 001A4CDC 38 61 03 78 */ addi r3, r1, 0x378 +/* 801A7D80 001A4CE0 38 81 02 58 */ addi r4, r1, 0x258 +/* 801A7D84 001A4CE4 48 16 AD F1 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801A7D88 001A4CE8 38 73 00 34 */ addi r3, r19, 0x34 +/* 801A7D8C 001A4CEC 38 81 03 78 */ addi r4, r1, 0x378 +/* 801A7D90 001A4CF0 48 16 AD B1 */ bl __as__12CTransform4fFRC12CTransform4f +/* 801A7D94 001A4CF4 88 13 00 E4 */ lbz r0, 0xe4(r19) +/* 801A7D98 001A4CF8 38 60 00 01 */ li r3, 1 +/* 801A7D9C 001A4CFC 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801A7DA0 001A4D00 98 13 00 E4 */ stb r0, 0xe4(r19) +/* 801A7DA4 001A4D04 88 13 00 E4 */ lbz r0, 0xe4(r19) +/* 801A7DA8 001A4D08 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801A7DAC 001A4D0C 98 13 00 E4 */ stb r0, 0xe4(r19) +/* 801A7DB0 001A4D10 88 13 00 E4 */ lbz r0, 0xe4(r19) +/* 801A7DB4 001A4D14 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801A7DB8 001A4D18 98 13 00 E4 */ stb r0, 0xe4(r19) +lbl_801A7DBC: +/* 801A7DBC 001A4D1C 7F C3 F3 78 */ mr r3, r30 +/* 801A7DC0 001A4D20 7E 64 9B 78 */ mr r4, r19 +/* 801A7DC4 001A4D24 4B EA 4D 51 */ bl AddObject__13CStateManagerFR7CEntity +/* 801A7DC8 001A4D28 7F E3 FB 78 */ mr r3, r31 +/* 801A7DCC 001A4D2C 7F A4 EB 78 */ mr r4, r29 +/* 801A7DD0 001A4D30 4B FA E4 61 */ bl sub_80156230 +/* 801A7DD4 001A4D34 80 1F 00 04 */ lwz r0, 4(r31) +/* 801A7DD8 001A4D38 A0 81 00 90 */ lhz r4, 0x90(r1) +/* 801A7DDC 001A4D3C 1C 00 00 44 */ mulli r0, r0, 0x44 +/* 801A7DE0 001A4D40 80 7F 00 0C */ lwz r3, 0xc(r31) +/* 801A7DE4 001A4D44 B0 81 00 70 */ sth r4, 0x70(r1) +/* 801A7DE8 001A4D48 7C 63 02 14 */ add r3, r3, r0 +/* 801A7DEC 001A4D4C B0 83 FF F8 */ sth r4, -8(r3) +/* 801A7DF0 001A4D50 48 00 06 48 */ b lbl_801A8438 +lbl_801A7DF4: +/* 801A7DF4 001A4D54 7F C4 F3 78 */ mr r4, r30 +/* 801A7DF8 001A4D58 38 61 00 6C */ addi r3, r1, 0x6c +/* 801A7DFC 001A4D5C 4B EA 52 E1 */ bl AllocateUniqueId__13CStateManagerFv +/* 801A7E00 001A4D60 A0 01 00 6C */ lhz r0, 0x6c(r1) +/* 801A7E04 001A4D64 3C 60 80 3D */ lis r3, lbl_803D1498@ha +/* 801A7E08 001A4D68 38 83 14 98 */ addi r4, r3, lbl_803D1498@l +/* 801A7E0C 001A4D6C 38 A0 00 00 */ li r5, 0 +/* 801A7E10 001A4D70 B0 01 00 8C */ sth r0, 0x8c(r1) +/* 801A7E14 001A4D74 38 60 03 10 */ li r3, 0x310 +/* 801A7E18 001A4D78 48 16 DA 55 */ bl __nw__FUlPCcPCc +/* 801A7E1C 001A4D7C 7C 73 1B 79 */ or. r19, r3, r3 +/* 801A7E20 001A4D80 41 82 00 3C */ beq lbl_801A7E5C +/* 801A7E24 001A4D84 A0 DF 00 10 */ lhz r6, 0x10(r31) +/* 801A7E28 001A4D88 7F 87 E3 78 */ mr r7, r28 +/* 801A7E2C 001A4D8C 81 1B 00 00 */ lwz r8, 0(r27) +/* 801A7E30 001A4D90 38 81 00 64 */ addi r4, r1, 0x64 +/* 801A7E34 001A4D94 A0 01 00 8C */ lhz r0, 0x8c(r1) +/* 801A7E38 001A4D98 38 A1 00 A4 */ addi r5, r1, 0xa4 +/* 801A7E3C 001A4D9C B0 C1 00 68 */ sth r6, 0x68(r1) +/* 801A7E40 001A4DA0 38 C1 00 68 */ addi r6, r1, 0x68 +/* 801A7E44 001A4DA4 C0 21 05 14 */ lfs f1, 0x514(r1) +/* 801A7E48 001A4DA8 91 01 00 A4 */ stw r8, 0xa4(r1) +/* 801A7E4C 001A4DAC C0 41 05 30 */ lfs f2, 0x530(r1) +/* 801A7E50 001A4DB0 B0 01 00 64 */ sth r0, 0x64(r1) +/* 801A7E54 001A4DB4 48 00 15 E1 */ bl __ct__15CCollisionActorF9TUniqueId7TAreaId9TUniqueIdbff +/* 801A7E58 001A4DB8 7C 73 1B 78 */ mr r19, r3 +lbl_801A7E5C: +/* 801A7E5C 001A4DBC 38 73 00 34 */ addi r3, r19, 0x34 +/* 801A7E60 001A4DC0 38 81 03 D8 */ addi r4, r1, 0x3d8 +/* 801A7E64 001A4DC4 48 16 AC DD */ bl __as__12CTransform4fFRC12CTransform4f +/* 801A7E68 001A4DC8 88 13 00 E4 */ lbz r0, 0xe4(r19) +/* 801A7E6C 001A4DCC 38 A0 00 01 */ li r5, 1 +/* 801A7E70 001A4DD0 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 801A7E74 001A4DD4 7F C3 F3 78 */ mr r3, r30 +/* 801A7E78 001A4DD8 98 13 00 E4 */ stb r0, 0xe4(r19) +/* 801A7E7C 001A4DDC 7E 64 9B 78 */ mr r4, r19 +/* 801A7E80 001A4DE0 88 13 00 E4 */ lbz r0, 0xe4(r19) +/* 801A7E84 001A4DE4 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 801A7E88 001A4DE8 98 13 00 E4 */ stb r0, 0xe4(r19) +/* 801A7E8C 001A4DEC 88 13 00 E4 */ lbz r0, 0xe4(r19) +/* 801A7E90 001A4DF0 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d +/* 801A7E94 001A4DF4 98 13 00 E4 */ stb r0, 0xe4(r19) +/* 801A7E98 001A4DF8 4B EA 4C 7D */ bl AddObject__13CStateManagerFR7CEntity +/* 801A7E9C 001A4DFC 88 01 04 F8 */ lbz r0, 0x4f8(r1) +/* 801A7EA0 001A4E00 7F 25 CB 78 */ mr r5, r25 +/* 801A7EA4 001A4E04 C0 21 05 14 */ lfs f1, 0x514(r1) +/* 801A7EA8 001A4E08 38 61 04 AC */ addi r3, r1, 0x4ac +/* 801A7EAC 001A4E0C 98 01 00 18 */ stb r0, 0x18(r1) +/* 801A7EB0 001A4E10 38 81 00 1C */ addi r4, r1, 0x1c +/* 801A7EB4 001A4E14 C0 42 A8 10 */ lfs f2, lbl_805AC530@sda21(r2) +/* 801A7EB8 001A4E18 98 01 00 1C */ stb r0, 0x1c(r1) +/* 801A7EBC 001A4E1C 48 00 09 51 */ bl "SphereCollision__26CJointCollisionDescriptionF6CSegIdfRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" +/* 801A7EC0 001A4E20 7F E3 FB 78 */ mr r3, r31 +/* 801A7EC4 001A4E24 38 81 04 AC */ addi r4, r1, 0x4ac +/* 801A7EC8 001A4E28 4B FA E3 69 */ bl sub_80156230 +/* 801A7ECC 001A4E2C 28 10 00 00 */ cmplwi r16, 0 +/* 801A7ED0 001A4E30 41 82 00 0C */ beq lbl_801A7EDC +/* 801A7ED4 001A4E34 7E 03 83 78 */ mr r3, r16 +/* 801A7ED8 001A4E38 48 19 5C 09 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801A7EDC: +/* 801A7EDC 001A4E3C 80 1F 00 04 */ lwz r0, 4(r31) +/* 801A7EE0 001A4E40 A0 81 00 8C */ lhz r4, 0x8c(r1) +/* 801A7EE4 001A4E44 1C 00 00 44 */ mulli r0, r0, 0x44 +/* 801A7EE8 001A4E48 80 7F 00 0C */ lwz r3, 0xc(r31) +/* 801A7EEC 001A4E4C B0 81 00 60 */ sth r4, 0x60(r1) +/* 801A7EF0 001A4E50 7C 63 02 14 */ add r3, r3, r0 +/* 801A7EF4 001A4E54 B0 83 FF F8 */ sth r4, -8(r3) +/* 801A7EF8 001A4E58 C0 01 05 18 */ lfs f0, 0x518(r1) +/* 801A7EFC 001A4E5C EC 3D 00 24 */ fdivs f1, f29, f0 +/* 801A7F00 001A4E60 48 1E 1A 55 */ bl __cvt_fp2unsigned +/* 801A7F04 001A4E64 7C 76 1B 79 */ or. r22, r3, r3 +/* 801A7F08 001A4E68 41 82 05 30 */ beq lbl_801A8438 +/* 801A7F0C 001A4E6C 80 1F 00 08 */ lwz r0, 8(r31) +/* 801A7F10 001A4E70 7F E3 FB 78 */ mr r3, r31 +/* 801A7F14 001A4E74 7C 96 02 14 */ add r4, r22, r0 +/* 801A7F18 001A4E78 4B FA E8 A1 */ bl "reserve__Q24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>Fi" +/* 801A7F1C 001A4E7C 38 16 00 01 */ addi r0, r22, 1 +/* 801A7F20 001A4E80 3E E0 43 30 */ lis r23, 0x4330 +/* 801A7F24 001A4E84 90 01 05 3C */ stw r0, 0x53c(r1) +/* 801A7F28 001A4E88 3C 60 80 3D */ lis r3, lbl_803D1498@ha +/* 801A7F2C 001A4E8C CB E2 A8 18 */ lfd f31, lbl_805AC538@sda21(r2) +/* 801A7F30 001A4E90 3B 03 14 98 */ addi r24, r3, lbl_803D1498@l +/* 801A7F34 001A4E94 92 E1 05 38 */ stw r23, 0x538(r1) +/* 801A7F38 001A4E98 3A A0 00 00 */ li r21, 0 +/* 801A7F3C 001A4E9C C8 01 05 38 */ lfd f0, 0x538(r1) +/* 801A7F40 001A4EA0 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 801A7F44 001A4EA4 EF DD 00 24 */ fdivs f30, f29, f0 +/* 801A7F48 001A4EA8 48 00 03 40 */ b lbl_801A8288 +lbl_801A7F4C: +/* 801A7F4C 001A4EAC 38 15 00 01 */ addi r0, r21, 1 +/* 801A7F50 001A4EB0 89 01 04 F9 */ lbz r8, 0x4f9(r1) +/* 801A7F54 001A4EB4 90 01 05 3C */ stw r0, 0x53c(r1) +/* 801A7F58 001A4EB8 7F 27 CB 78 */ mr r7, r25 +/* 801A7F5C 001A4EBC 88 01 04 F8 */ lbz r0, 0x4f8(r1) +/* 801A7F60 001A4EC0 38 61 04 68 */ addi r3, r1, 0x468 +/* 801A7F64 001A4EC4 92 E1 05 38 */ stw r23, 0x538(r1) +/* 801A7F68 001A4EC8 38 81 00 14 */ addi r4, r1, 0x14 +/* 801A7F6C 001A4ECC C0 21 05 14 */ lfs f1, 0x514(r1) +/* 801A7F70 001A4ED0 38 A1 00 0C */ addi r5, r1, 0xc +/* 801A7F74 001A4ED4 C8 01 05 38 */ lfd f0, 0x538(r1) +/* 801A7F78 001A4ED8 38 C0 00 01 */ li r6, 1 +/* 801A7F7C 001A4EDC 99 01 00 08 */ stb r8, 8(r1) +/* 801A7F80 001A4EE0 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 801A7F84 001A4EE4 C0 62 A8 10 */ lfs f3, lbl_805AC530@sda21(r2) +/* 801A7F88 001A4EE8 99 01 00 0C */ stb r8, 0xc(r1) +/* 801A7F8C 001A4EEC EF BE 00 32 */ fmuls f29, f30, f0 +/* 801A7F90 001A4EF0 98 01 00 10 */ stb r0, 0x10(r1) +/* 801A7F94 001A4EF4 98 01 00 14 */ stb r0, 0x14(r1) +/* 801A7F98 001A4EF8 FC 40 E8 90 */ fmr f2, f29 +/* 801A7F9C 001A4EFC 48 00 07 B9 */ bl "SphereSubdivideCollision__26CJointCollisionDescriptionF6CSegId6CSegIdffQ226CJointCollisionDescription16EOrientationTypeRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" +/* 801A7FA0 001A4F00 7F E3 FB 78 */ mr r3, r31 +/* 801A7FA4 001A4F04 38 81 04 68 */ addi r4, r1, 0x468 +/* 801A7FA8 001A4F08 4B FA E2 89 */ bl sub_80156230 +/* 801A7FAC 001A4F0C 28 1A 00 00 */ cmplwi r26, 0 +/* 801A7FB0 001A4F10 41 82 00 0C */ beq lbl_801A7FBC +/* 801A7FB4 001A4F14 7F 43 D3 78 */ mr r3, r26 +/* 801A7FB8 001A4F18 48 19 5B 29 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801A7FBC: +/* 801A7FBC 001A4F1C 7F C4 F3 78 */ mr r4, r30 +/* 801A7FC0 001A4F20 38 61 00 5C */ addi r3, r1, 0x5c +/* 801A7FC4 001A4F24 4B EA 51 19 */ bl AllocateUniqueId__13CStateManagerFv +/* 801A7FC8 001A4F28 A0 01 00 5C */ lhz r0, 0x5c(r1) +/* 801A7FCC 001A4F2C 7F 04 C3 78 */ mr r4, r24 +/* 801A7FD0 001A4F30 38 60 03 10 */ li r3, 0x310 +/* 801A7FD4 001A4F34 38 A0 00 00 */ li r5, 0 +/* 801A7FD8 001A4F38 B0 01 00 88 */ sth r0, 0x88(r1) +/* 801A7FDC 001A4F3C 48 16 D8 91 */ bl __nw__FUlPCcPCc +/* 801A7FE0 001A4F40 7C 73 1B 79 */ or. r19, r3, r3 +/* 801A7FE4 001A4F44 41 82 00 3C */ beq lbl_801A8020 +/* 801A7FE8 001A4F48 A0 DF 00 10 */ lhz r6, 0x10(r31) +/* 801A7FEC 001A4F4C 7F 87 E3 78 */ mr r7, r28 +/* 801A7FF0 001A4F50 81 1B 00 00 */ lwz r8, 0(r27) +/* 801A7FF4 001A4F54 38 81 00 54 */ addi r4, r1, 0x54 +/* 801A7FF8 001A4F58 A0 01 00 88 */ lhz r0, 0x88(r1) +/* 801A7FFC 001A4F5C 38 A1 00 A0 */ addi r5, r1, 0xa0 +/* 801A8000 001A4F60 B0 C1 00 58 */ sth r6, 0x58(r1) +/* 801A8004 001A4F64 38 C1 00 58 */ addi r6, r1, 0x58 +/* 801A8008 001A4F68 C0 21 05 14 */ lfs f1, 0x514(r1) +/* 801A800C 001A4F6C 91 01 00 A0 */ stw r8, 0xa0(r1) +/* 801A8010 001A4F70 C0 41 05 30 */ lfs f2, 0x530(r1) +/* 801A8014 001A4F74 B0 01 00 54 */ sth r0, 0x54(r1) +/* 801A8018 001A4F78 48 00 14 1D */ bl __ct__15CCollisionActorF9TUniqueId7TAreaId9TUniqueIdbff +/* 801A801C 001A4F7C 7C 73 1B 78 */ mr r19, r3 +lbl_801A8020: +/* 801A8020 001A4F80 80 01 04 F4 */ lwz r0, 0x4f4(r1) +/* 801A8024 001A4F84 2C 00 00 00 */ cmpwi r0, 0 +/* 801A8028 001A4F88 40 82 00 A8 */ bne lbl_801A80D0 +/* 801A802C 001A4F8C C0 41 03 EC */ lfs f2, 0x3ec(r1) +/* 801A8030 001A4F90 38 61 02 28 */ addi r3, r1, 0x228 +/* 801A8034 001A4F94 C0 21 03 FC */ lfs f1, 0x3fc(r1) +/* 801A8038 001A4F98 38 81 01 20 */ addi r4, r1, 0x120 +/* 801A803C 001A4F9C C0 01 03 DC */ lfs f0, 0x3dc(r1) +/* 801A8040 001A4FA0 EC DD 00 B2 */ fmuls f6, f29, f2 +/* 801A8044 001A4FA4 C0 41 03 F4 */ lfs f2, 0x3f4(r1) +/* 801A8048 001A4FA8 EC BD 00 72 */ fmuls f5, f29, f1 +/* 801A804C 001A4FAC C0 21 04 04 */ lfs f1, 0x404(r1) +/* 801A8050 001A4FB0 EC 9D 00 32 */ fmuls f4, f29, f0 +/* 801A8054 001A4FB4 C0 61 03 E4 */ lfs f3, 0x3e4(r1) +/* 801A8058 001A4FB8 EC E2 30 2A */ fadds f7, f2, f6 +/* 801A805C 001A4FBC D0 C1 01 0C */ stfs f6, 0x10c(r1) +/* 801A8060 001A4FC0 EC C1 28 2A */ fadds f6, f1, f5 +/* 801A8064 001A4FC4 EC 03 20 2A */ fadds f0, f3, f4 +/* 801A8068 001A4FC8 D0 81 01 08 */ stfs f4, 0x108(r1) +/* 801A806C 001A4FCC D0 A1 01 10 */ stfs f5, 0x110(r1) +/* 801A8070 001A4FD0 D0 61 01 14 */ stfs f3, 0x114(r1) +/* 801A8074 001A4FD4 D0 41 01 18 */ stfs f2, 0x118(r1) +/* 801A8078 001A4FD8 D0 21 01 1C */ stfs f1, 0x11c(r1) +/* 801A807C 001A4FDC D0 01 01 20 */ stfs f0, 0x120(r1) +/* 801A8080 001A4FE0 D0 E1 01 24 */ stfs f7, 0x124(r1) +/* 801A8084 001A4FE4 D0 C1 01 28 */ stfs f6, 0x128(r1) +/* 801A8088 001A4FE8 48 16 B0 B9 */ bl Translate__12CTransform4fFRC9CVector3f +/* 801A808C 001A4FEC 38 61 03 48 */ addi r3, r1, 0x348 +/* 801A8090 001A4FF0 38 81 02 28 */ addi r4, r1, 0x228 +/* 801A8094 001A4FF4 48 16 AA E1 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801A8098 001A4FF8 38 73 00 34 */ addi r3, r19, 0x34 +/* 801A809C 001A4FFC 38 81 03 48 */ addi r4, r1, 0x348 +/* 801A80A0 001A5000 48 16 AA A1 */ bl __as__12CTransform4fFRC12CTransform4f +/* 801A80A4 001A5004 88 13 00 E4 */ lbz r0, 0xe4(r19) +/* 801A80A8 001A5008 38 60 00 01 */ li r3, 1 +/* 801A80AC 001A500C 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801A80B0 001A5010 98 13 00 E4 */ stb r0, 0xe4(r19) +/* 801A80B4 001A5014 88 13 00 E4 */ lbz r0, 0xe4(r19) +/* 801A80B8 001A5018 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801A80BC 001A501C 98 13 00 E4 */ stb r0, 0xe4(r19) +/* 801A80C0 001A5020 88 13 00 E4 */ lbz r0, 0xe4(r19) +/* 801A80C4 001A5024 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801A80C8 001A5028 98 13 00 E4 */ stb r0, 0xe4(r19) +/* 801A80CC 001A502C 48 00 01 90 */ b lbl_801A825C +lbl_801A80D0: +/* 801A80D0 001A5030 C0 61 03 B4 */ lfs f3, 0x3b4(r1) +/* 801A80D4 001A5034 38 61 00 FC */ addi r3, r1, 0xfc +/* 801A80D8 001A5038 C0 01 03 E4 */ lfs f0, 0x3e4(r1) +/* 801A80DC 001A503C 38 81 00 F0 */ addi r4, r1, 0xf0 +/* 801A80E0 001A5040 C0 41 03 C4 */ lfs f2, 0x3c4(r1) +/* 801A80E4 001A5044 C0 81 03 F4 */ lfs f4, 0x3f4(r1) +/* 801A80E8 001A5048 EC 03 00 28 */ fsubs f0, f3, f0 +/* 801A80EC 001A504C C0 21 03 D4 */ lfs f1, 0x3d4(r1) +/* 801A80F0 001A5050 C0 A1 04 04 */ lfs f5, 0x404(r1) +/* 801A80F4 001A5054 EC C2 20 28 */ fsubs f6, f2, f4 +/* 801A80F8 001A5058 C1 01 04 00 */ lfs f8, 0x400(r1) +/* 801A80FC 001A505C EC A1 28 28 */ fsubs f5, f1, f5 +/* 801A8100 001A5060 C0 E1 03 F0 */ lfs f7, 0x3f0(r1) +/* 801A8104 001A5064 C0 81 03 E0 */ lfs f4, 0x3e0(r1) +/* 801A8108 001A5068 D0 E1 01 9C */ stfs f7, 0x19c(r1) +/* 801A810C 001A506C D0 81 01 98 */ stfs f4, 0x198(r1) +/* 801A8110 001A5070 D1 01 01 A0 */ stfs f8, 0x1a0(r1) +/* 801A8114 001A5074 D0 61 00 E4 */ stfs f3, 0xe4(r1) +/* 801A8118 001A5078 D0 41 00 E8 */ stfs f2, 0xe8(r1) +/* 801A811C 001A507C D0 21 00 EC */ stfs f1, 0xec(r1) +/* 801A8120 001A5080 D0 01 00 F0 */ stfs f0, 0xf0(r1) +/* 801A8124 001A5084 D0 C1 00 F4 */ stfs f6, 0xf4(r1) +/* 801A8128 001A5088 D0 A1 00 F8 */ stfs f5, 0xf8(r1) +/* 801A812C 001A508C 48 16 C7 25 */ bl AsNormalized__9CVector3fCFv +/* 801A8130 001A5090 C0 A1 01 00 */ lfs f5, 0x100(r1) +/* 801A8134 001A5094 C0 01 01 9C */ lfs f0, 0x19c(r1) +/* 801A8138 001A5098 C0 C1 00 FC */ lfs f6, 0xfc(r1) +/* 801A813C 001A509C EC 05 00 32 */ fmuls f0, f5, f0 +/* 801A8140 001A50A0 C0 21 01 98 */ lfs f1, 0x198(r1) +/* 801A8144 001A50A4 C0 81 01 04 */ lfs f4, 0x104(r1) +/* 801A8148 001A50A8 C0 61 01 A0 */ lfs f3, 0x1a0(r1) +/* 801A814C 001A50AC EC 26 00 7A */ fmadds f1, f6, f1, f0 +/* 801A8150 001A50B0 C0 42 A8 04 */ lfs f2, lbl_805AC524@sda21(r2) +/* 801A8154 001A50B4 C8 02 A8 08 */ lfd f0, lbl_805AC528@sda21(r2) +/* 801A8158 001A50B8 D0 C1 01 8C */ stfs f6, 0x18c(r1) +/* 801A815C 001A50BC EC 24 08 FA */ fmadds f1, f4, f3, f1 +/* 801A8160 001A50C0 D0 A1 01 90 */ stfs f5, 0x190(r1) +/* 801A8164 001A50C4 FC 20 0A 10 */ fabs f1, f1 +/* 801A8168 001A50C8 D0 81 01 94 */ stfs f4, 0x194(r1) +/* 801A816C 001A50CC FC 20 08 18 */ frsp f1, f1 +/* 801A8170 001A50D0 EC 22 08 28 */ fsubs f1, f2, f1 +/* 801A8174 001A50D4 FC 20 0A 10 */ fabs f1, f1 +/* 801A8178 001A50D8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801A817C 001A50DC 40 80 00 1C */ bge lbl_801A8198 +/* 801A8180 001A50E0 C0 41 03 FC */ lfs f2, 0x3fc(r1) +/* 801A8184 001A50E4 C0 21 03 EC */ lfs f1, 0x3ec(r1) +/* 801A8188 001A50E8 C0 01 03 DC */ lfs f0, 0x3dc(r1) +/* 801A818C 001A50EC D0 21 01 9C */ stfs f1, 0x19c(r1) +/* 801A8190 001A50F0 D0 01 01 98 */ stfs f0, 0x198(r1) +/* 801A8194 001A50F4 D0 41 01 A0 */ stfs f2, 0x1a0(r1) +lbl_801A8198: +/* 801A8198 001A50F8 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801A819C 001A50FC 38 61 01 C8 */ addi r3, r1, 0x1c8 +/* 801A81A0 001A5100 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 801A81A4 001A5104 38 A1 01 8C */ addi r5, r1, 0x18c +/* 801A81A8 001A5108 38 C1 01 98 */ addi r6, r1, 0x198 +/* 801A81AC 001A510C 48 16 B9 65 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 801A81B0 001A5110 C1 41 01 EC */ lfs f10, 0x1ec(r1) +/* 801A81B4 001A5114 38 61 01 F8 */ addi r3, r1, 0x1f8 +/* 801A81B8 001A5118 C1 21 01 DC */ lfs f9, 0x1dc(r1) +/* 801A81BC 001A511C 38 81 00 D8 */ addi r4, r1, 0xd8 +/* 801A81C0 001A5120 C0 01 01 CC */ lfs f0, 0x1cc(r1) +/* 801A81C4 001A5124 EC BD 02 B2 */ fmuls f5, f29, f10 +/* 801A81C8 001A5128 C0 21 04 04 */ lfs f1, 0x404(r1) +/* 801A81CC 001A512C EC DD 02 72 */ fmuls f6, f29, f9 +/* 801A81D0 001A5130 C0 41 03 F4 */ lfs f2, 0x3f4(r1) +/* 801A81D4 001A5134 EC 9D 00 32 */ fmuls f4, f29, f0 +/* 801A81D8 001A5138 C0 61 03 E4 */ lfs f3, 0x3e4(r1) +/* 801A81DC 001A513C ED 02 30 2A */ fadds f8, f2, f6 +/* 801A81E0 001A5140 D0 01 00 B4 */ stfs f0, 0xb4(r1) +/* 801A81E4 001A5144 EC E1 28 2A */ fadds f7, f1, f5 +/* 801A81E8 001A5148 EC 03 20 2A */ fadds f0, f3, f4 +/* 801A81EC 001A514C D1 21 00 B8 */ stfs f9, 0xb8(r1) +/* 801A81F0 001A5150 D1 41 00 BC */ stfs f10, 0xbc(r1) +/* 801A81F4 001A5154 D0 81 00 C0 */ stfs f4, 0xc0(r1) +/* 801A81F8 001A5158 D0 C1 00 C4 */ stfs f6, 0xc4(r1) +/* 801A81FC 001A515C D0 A1 00 C8 */ stfs f5, 0xc8(r1) +/* 801A8200 001A5160 D0 61 00 CC */ stfs f3, 0xcc(r1) +/* 801A8204 001A5164 D0 41 00 D0 */ stfs f2, 0xd0(r1) +/* 801A8208 001A5168 D0 21 00 D4 */ stfs f1, 0xd4(r1) +/* 801A820C 001A516C D0 01 00 D8 */ stfs f0, 0xd8(r1) +/* 801A8210 001A5170 D1 01 00 DC */ stfs f8, 0xdc(r1) +/* 801A8214 001A5174 D0 E1 00 E0 */ stfs f7, 0xe0(r1) +/* 801A8218 001A5178 48 16 AF 29 */ bl Translate__12CTransform4fFRC9CVector3f +/* 801A821C 001A517C 38 61 03 18 */ addi r3, r1, 0x318 +/* 801A8220 001A5180 38 81 01 F8 */ addi r4, r1, 0x1f8 +/* 801A8224 001A5184 48 16 A9 51 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801A8228 001A5188 38 73 00 34 */ addi r3, r19, 0x34 +/* 801A822C 001A518C 38 81 03 18 */ addi r4, r1, 0x318 +/* 801A8230 001A5190 48 16 A9 11 */ bl __as__12CTransform4fFRC12CTransform4f +/* 801A8234 001A5194 88 13 00 E4 */ lbz r0, 0xe4(r19) +/* 801A8238 001A5198 38 60 00 01 */ li r3, 1 +/* 801A823C 001A519C 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801A8240 001A51A0 98 13 00 E4 */ stb r0, 0xe4(r19) +/* 801A8244 001A51A4 88 13 00 E4 */ lbz r0, 0xe4(r19) +/* 801A8248 001A51A8 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801A824C 001A51AC 98 13 00 E4 */ stb r0, 0xe4(r19) +/* 801A8250 001A51B0 88 13 00 E4 */ lbz r0, 0xe4(r19) +/* 801A8254 001A51B4 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801A8258 001A51B8 98 13 00 E4 */ stb r0, 0xe4(r19) +lbl_801A825C: +/* 801A825C 001A51BC 7F C3 F3 78 */ mr r3, r30 +/* 801A8260 001A51C0 7E 64 9B 78 */ mr r4, r19 +/* 801A8264 001A51C4 4B EA 48 B1 */ bl AddObject__13CStateManagerFR7CEntity +/* 801A8268 001A51C8 80 1F 00 04 */ lwz r0, 4(r31) +/* 801A826C 001A51CC 3A B5 00 01 */ addi r21, r21, 1 +/* 801A8270 001A51D0 A0 81 00 88 */ lhz r4, 0x88(r1) +/* 801A8274 001A51D4 1C 00 00 44 */ mulli r0, r0, 0x44 +/* 801A8278 001A51D8 80 7F 00 0C */ lwz r3, 0xc(r31) +/* 801A827C 001A51DC B0 81 00 50 */ sth r4, 0x50(r1) +/* 801A8280 001A51E0 7C 63 02 14 */ add r3, r3, r0 +/* 801A8284 001A51E4 B0 83 FF F8 */ sth r4, -8(r3) +lbl_801A8288: +/* 801A8288 001A51E8 7C 15 B0 40 */ cmplw r21, r22 +/* 801A828C 001A51EC 41 80 FC C0 */ blt lbl_801A7F4C +/* 801A8290 001A51F0 48 00 01 A8 */ b lbl_801A8438 +lbl_801A8294: +/* 801A8294 001A51F4 7F C4 F3 78 */ mr r4, r30 +/* 801A8298 001A51F8 38 61 00 4C */ addi r3, r1, 0x4c +/* 801A829C 001A51FC 4B EA 4E 41 */ bl AllocateUniqueId__13CStateManagerFv +/* 801A82A0 001A5200 80 61 04 F0 */ lwz r3, 0x4f0(r1) +/* 801A82A4 001A5204 A0 01 00 4C */ lhz r0, 0x4c(r1) +/* 801A82A8 001A5208 2C 03 00 00 */ cmpwi r3, 0 +/* 801A82AC 001A520C B0 01 00 84 */ sth r0, 0x84(r1) +/* 801A82B0 001A5210 40 82 00 60 */ bne lbl_801A8310 +/* 801A82B4 001A5214 3C 80 80 3D */ lis r4, lbl_803D1498@ha +/* 801A82B8 001A5218 38 60 03 10 */ li r3, 0x310 +/* 801A82BC 001A521C 38 84 14 98 */ addi r4, r4, lbl_803D1498@l +/* 801A82C0 001A5220 38 A0 00 00 */ li r5, 0 +/* 801A82C4 001A5224 48 16 D5 A9 */ bl __nw__FUlPCcPCc +/* 801A82C8 001A5228 7C 60 1B 79 */ or. r0, r3, r3 +/* 801A82CC 001A522C 41 82 00 3C */ beq lbl_801A8308 +/* 801A82D0 001A5230 A0 DF 00 10 */ lhz r6, 0x10(r31) +/* 801A82D4 001A5234 7F 87 E3 78 */ mr r7, r28 +/* 801A82D8 001A5238 81 1B 00 00 */ lwz r8, 0(r27) +/* 801A82DC 001A523C 38 81 00 44 */ addi r4, r1, 0x44 +/* 801A82E0 001A5240 A0 01 00 84 */ lhz r0, 0x84(r1) +/* 801A82E4 001A5244 38 A1 00 9C */ addi r5, r1, 0x9c +/* 801A82E8 001A5248 B0 C1 00 48 */ sth r6, 0x48(r1) +/* 801A82EC 001A524C 38 C1 00 48 */ addi r6, r1, 0x48 +/* 801A82F0 001A5250 C0 21 05 14 */ lfs f1, 0x514(r1) +/* 801A82F4 001A5254 91 01 00 9C */ stw r8, 0x9c(r1) +/* 801A82F8 001A5258 C0 41 05 30 */ lfs f2, 0x530(r1) +/* 801A82FC 001A525C B0 01 00 44 */ sth r0, 0x44(r1) +/* 801A8300 001A5260 48 00 11 35 */ bl __ct__15CCollisionActorF9TUniqueId7TAreaId9TUniqueIdbff +/* 801A8304 001A5264 7C 60 1B 78 */ mr r0, r3 +lbl_801A8308: +/* 801A8308 001A5268 7C 13 03 78 */ mr r19, r0 +/* 801A830C 001A526C 48 00 00 C4 */ b lbl_801A83D0 +lbl_801A8310: +/* 801A8310 001A5270 2C 03 00 04 */ cmpwi r3, 4 +/* 801A8314 001A5274 40 82 00 64 */ bne lbl_801A8378 +/* 801A8318 001A5278 3C 80 80 3D */ lis r4, lbl_803D1498@ha +/* 801A831C 001A527C 38 60 03 10 */ li r3, 0x310 +/* 801A8320 001A5280 38 84 14 98 */ addi r4, r4, lbl_803D1498@l +/* 801A8324 001A5284 38 A0 00 00 */ li r5, 0 +/* 801A8328 001A5288 48 16 D5 45 */ bl __nw__FUlPCcPCc +/* 801A832C 001A528C 7C 60 1B 79 */ or. r0, r3, r3 +/* 801A8330 001A5290 41 82 00 40 */ beq lbl_801A8370 +/* 801A8334 001A5294 A0 9F 00 10 */ lhz r4, 0x10(r31) +/* 801A8338 001A5298 7E 27 8B 78 */ mr r7, r17 +/* 801A833C 001A529C 80 DB 00 00 */ lwz r6, 0(r27) +/* 801A8340 001A52A0 7D E8 7B 78 */ mr r8, r15 +/* 801A8344 001A52A4 A0 01 00 84 */ lhz r0, 0x84(r1) +/* 801A8348 001A52A8 7F 89 E3 78 */ mr r9, r28 +/* 801A834C 001A52AC B0 81 00 40 */ sth r4, 0x40(r1) +/* 801A8350 001A52B0 38 81 00 3C */ addi r4, r1, 0x3c +/* 801A8354 001A52B4 C0 21 05 30 */ lfs f1, 0x530(r1) +/* 801A8358 001A52B8 38 A1 00 98 */ addi r5, r1, 0x98 +/* 801A835C 001A52BC 90 C1 00 98 */ stw r6, 0x98(r1) +/* 801A8360 001A52C0 38 C1 00 40 */ addi r6, r1, 0x40 +/* 801A8364 001A52C4 B0 01 00 3C */ sth r0, 0x3c(r1) +/* 801A8368 001A52C8 48 00 1A 41 */ bl __ct__15CCollisionActorF9TUniqueIdCRi9TUniqueIdRC9CVector3fRC9CVector3fbf +/* 801A836C 001A52CC 7C 60 1B 78 */ mr r0, r3 +lbl_801A8370: +/* 801A8370 001A52D0 7C 13 03 78 */ mr r19, r0 +/* 801A8374 001A52D4 48 00 00 5C */ b lbl_801A83D0 +lbl_801A8378: +/* 801A8378 001A52D8 3C 80 80 3D */ lis r4, lbl_803D1498@ha +/* 801A837C 001A52DC 38 60 03 10 */ li r3, 0x310 +/* 801A8380 001A52E0 38 84 14 98 */ addi r4, r4, lbl_803D1498@l +/* 801A8384 001A52E4 38 A0 00 00 */ li r5, 0 +/* 801A8388 001A52E8 48 16 D4 E5 */ bl __nw__FUlPCcPCc +/* 801A838C 001A52EC 7C 60 1B 79 */ or. r0, r3, r3 +/* 801A8390 001A52F0 41 82 00 3C */ beq lbl_801A83CC +/* 801A8394 001A52F4 A0 BF 00 10 */ lhz r5, 0x10(r31) +/* 801A8398 001A52F8 7E 27 8B 78 */ mr r7, r17 +/* 801A839C 001A52FC 81 3B 00 00 */ lwz r9, 0(r27) +/* 801A83A0 001A5300 7F 88 E3 78 */ mr r8, r28 +/* 801A83A4 001A5304 A0 01 00 84 */ lhz r0, 0x84(r1) +/* 801A83A8 001A5308 38 81 00 34 */ addi r4, r1, 0x34 +/* 801A83AC 001A530C B0 A1 00 38 */ sth r5, 0x38(r1) +/* 801A83B0 001A5310 38 A1 00 94 */ addi r5, r1, 0x94 +/* 801A83B4 001A5314 C0 21 05 30 */ lfs f1, 0x530(r1) +/* 801A83B8 001A5318 38 C1 00 38 */ addi r6, r1, 0x38 +/* 801A83BC 001A531C 91 21 00 94 */ stw r9, 0x94(r1) +/* 801A83C0 001A5320 B0 01 00 34 */ sth r0, 0x34(r1) +/* 801A83C4 001A5324 48 00 15 11 */ bl __ct__15CCollisionActorF9TUniqueId9TUniqueIdRC9CVector3fRC9CVector3fbf +/* 801A83C8 001A5328 7C 60 1B 78 */ mr r0, r3 +lbl_801A83CC: +/* 801A83CC 001A532C 7C 13 03 78 */ mr r19, r0 +lbl_801A83D0: +/* 801A83D0 001A5330 38 73 00 34 */ addi r3, r19, 0x34 +/* 801A83D4 001A5334 38 81 03 D8 */ addi r4, r1, 0x3d8 +/* 801A83D8 001A5338 48 16 A7 69 */ bl __as__12CTransform4fFRC12CTransform4f +/* 801A83DC 001A533C 88 13 00 E4 */ lbz r0, 0xe4(r19) +/* 801A83E0 001A5340 38 A0 00 01 */ li r5, 1 +/* 801A83E4 001A5344 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 801A83E8 001A5348 7F C3 F3 78 */ mr r3, r30 +/* 801A83EC 001A534C 98 13 00 E4 */ stb r0, 0xe4(r19) +/* 801A83F0 001A5350 7E 64 9B 78 */ mr r4, r19 +/* 801A83F4 001A5354 88 13 00 E4 */ lbz r0, 0xe4(r19) +/* 801A83F8 001A5358 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 801A83FC 001A535C 98 13 00 E4 */ stb r0, 0xe4(r19) +/* 801A8400 001A5360 88 13 00 E4 */ lbz r0, 0xe4(r19) +/* 801A8404 001A5364 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d +/* 801A8408 001A5368 98 13 00 E4 */ stb r0, 0xe4(r19) +/* 801A840C 001A536C 4B EA 47 09 */ bl AddObject__13CStateManagerFR7CEntity +/* 801A8410 001A5370 7F E3 FB 78 */ mr r3, r31 +/* 801A8414 001A5374 7F A4 EB 78 */ mr r4, r29 +/* 801A8418 001A5378 4B FA DE 19 */ bl sub_80156230 +/* 801A841C 001A537C 80 1F 00 04 */ lwz r0, 4(r31) +/* 801A8420 001A5380 A0 81 00 84 */ lhz r4, 0x84(r1) +/* 801A8424 001A5384 1C 00 00 44 */ mulli r0, r0, 0x44 +/* 801A8428 001A5388 80 7F 00 0C */ lwz r3, 0xc(r31) +/* 801A842C 001A538C B0 81 00 30 */ sth r4, 0x30(r1) +/* 801A8430 001A5390 7C 63 02 14 */ add r3, r3, r0 +/* 801A8434 001A5394 B0 83 FF F8 */ sth r4, -8(r3) +lbl_801A8438: +/* 801A8438 001A5398 28 19 00 00 */ cmplwi r25, 0 +/* 801A843C 001A539C 41 82 00 0C */ beq lbl_801A8448 +/* 801A8440 001A53A0 7F 23 CB 78 */ mr r3, r25 +/* 801A8444 001A53A4 48 19 56 9D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801A8448: +/* 801A8448 001A53A8 3B BD 00 44 */ addi r29, r29, 0x44 +lbl_801A844C: +/* 801A844C 001A53AC 80 14 00 04 */ lwz r0, 4(r20) +/* 801A8450 001A53B0 80 74 00 0C */ lwz r3, 0xc(r20) +/* 801A8454 001A53B4 1C 00 00 44 */ mulli r0, r0, 0x44 +/* 801A8458 001A53B8 7C 03 02 14 */ add r0, r3, r0 +/* 801A845C 001A53BC 7C 1D 00 40 */ cmplw r29, r0 +/* 801A8460 001A53C0 40 82 F5 D0 */ bne lbl_801A7A30 +lbl_801A8464: +/* 801A8464 001A53C4 7F E3 FB 78 */ mr r3, r31 +/* 801A8468 001A53C8 E3 E1 05 B8 */ psq_l f31, 1464(r1), 0, qr0 +/* 801A846C 001A53CC CB E1 05 B0 */ lfd f31, 0x5b0(r1) +/* 801A8470 001A53D0 E3 C1 05 A8 */ psq_l f30, 1448(r1), 0, qr0 +/* 801A8474 001A53D4 CB C1 05 A0 */ lfd f30, 0x5a0(r1) +/* 801A8478 001A53D8 E3 A1 05 98 */ psq_l f29, 1432(r1), 0, qr0 +/* 801A847C 001A53DC CB A1 05 90 */ lfd f29, 0x590(r1) +/* 801A8480 001A53E0 B9 E1 05 4C */ lmw r15, 0x54c(r1) +/* 801A8484 001A53E4 80 01 05 C4 */ lwz r0, 0x5c4(r1) +/* 801A8488 001A53E8 7C 08 03 A6 */ mtlr r0 +/* 801A848C 001A53EC 38 21 05 C0 */ addi r1, r1, 0x5c0 +/* 801A8490 001A53F0 4E 80 00 20 */ blr + +.global ScaleAllBounds__26CJointCollisionDescriptionFRC9CVector3f +ScaleAllBounds__26CJointCollisionDescriptionFRC9CVector3f: +/* 801A8494 001A53F4 C0 24 00 00 */ lfs f1, 0(r4) +/* 801A8498 001A53F8 C0 03 00 0C */ lfs f0, 0xc(r3) +/* 801A849C 001A53FC C0 64 00 04 */ lfs f3, 4(r4) +/* 801A84A0 001A5400 C0 43 00 10 */ lfs f2, 0x10(r3) +/* 801A84A4 001A5404 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801A84A8 001A5408 C0 84 00 08 */ lfs f4, 8(r4) +/* 801A84AC 001A540C C0 23 00 14 */ lfs f1, 0x14(r3) +/* 801A84B0 001A5410 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 801A84B4 001A5414 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 801A84B8 001A5418 EC 04 00 72 */ fmuls f0, f4, f1 +/* 801A84BC 001A541C D0 43 00 10 */ stfs f2, 0x10(r3) +/* 801A84C0 001A5420 D0 03 00 14 */ stfs f0, 0x14(r3) +/* 801A84C4 001A5424 C0 23 00 24 */ lfs f1, 0x24(r3) +/* 801A84C8 001A5428 C0 04 00 00 */ lfs f0, 0(r4) +/* 801A84CC 001A542C EC 01 00 32 */ fmuls f0, f1, f0 +/* 801A84D0 001A5430 D0 03 00 24 */ stfs f0, 0x24(r3) +/* 801A84D4 001A5434 C0 23 00 28 */ lfs f1, 0x28(r3) +/* 801A84D8 001A5438 C0 04 00 00 */ lfs f0, 0(r4) +/* 801A84DC 001A543C EC 01 00 32 */ fmuls f0, f1, f0 +/* 801A84E0 001A5440 D0 03 00 28 */ stfs f0, 0x28(r3) +/* 801A84E4 001A5444 C0 24 00 00 */ lfs f1, 0(r4) +/* 801A84E8 001A5448 C0 03 00 18 */ lfs f0, 0x18(r3) +/* 801A84EC 001A544C C0 64 00 04 */ lfs f3, 4(r4) +/* 801A84F0 001A5450 C0 43 00 1C */ lfs f2, 0x1c(r3) +/* 801A84F4 001A5454 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801A84F8 001A5458 C0 84 00 08 */ lfs f4, 8(r4) +/* 801A84FC 001A545C C0 23 00 20 */ lfs f1, 0x20(r3) +/* 801A8500 001A5460 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 801A8504 001A5464 D0 03 00 18 */ stfs f0, 0x18(r3) +/* 801A8508 001A5468 EC 04 00 72 */ fmuls f0, f4, f1 +/* 801A850C 001A546C D0 43 00 1C */ stfs f2, 0x1c(r3) +/* 801A8510 001A5470 D0 03 00 20 */ stfs f0, 0x20(r3) +/* 801A8514 001A5474 4E 80 00 20 */ blr + +.global "OBBCollision__26CJointCollisionDescriptionF6CSegIdRC9CVector3fRC9CVector3fRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" +"OBBCollision__26CJointCollisionDescriptionF6CSegIdRC9CVector3fRC9CVector3fRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f": +/* 801A8518 001A5478 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801A851C 001A547C 7C 08 02 A6 */ mflr r0 +/* 801A8520 001A5480 90 01 00 34 */ stw r0, 0x34(r1) +/* 801A8524 001A5484 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 801A8528 001A5488 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 801A852C 001A548C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801A8530 001A5490 89 04 00 00 */ lbz r8, 0(r4) +/* 801A8534 001A5494 39 20 00 FF */ li r9, 0xff +/* 801A8538 001A5498 38 00 00 04 */ li r0, 4 +/* 801A853C 001A549C 7C 7F 1B 78 */ mr r31, r3 +/* 801A8540 001A54A0 90 03 00 00 */ stw r0, 0(r3) +/* 801A8544 001A54A4 38 00 00 00 */ li r0, 0 +/* 801A8548 001A54A8 FF E0 08 90 */ fmr f31, f1 +/* 801A854C 001A54AC C0 02 A7 F8 */ lfs f0, lbl_805AC518@sda21(r2) +/* 801A8550 001A54B0 90 03 00 04 */ stw r0, 4(r3) +/* 801A8554 001A54B4 7C E4 3B 78 */ mr r4, r7 +/* 801A8558 001A54B8 38 7F 00 2C */ addi r3, r31, 0x2c +/* 801A855C 001A54BC 99 1F 00 08 */ stb r8, 8(r31) +/* 801A8560 001A54C0 99 3F 00 09 */ stb r9, 9(r31) +/* 801A8564 001A54C4 C0 25 00 00 */ lfs f1, 0(r5) +/* 801A8568 001A54C8 99 21 00 08 */ stb r9, 8(r1) +/* 801A856C 001A54CC D0 3F 00 0C */ stfs f1, 0xc(r31) +/* 801A8570 001A54D0 C0 25 00 04 */ lfs f1, 4(r5) +/* 801A8574 001A54D4 99 21 00 0C */ stb r9, 0xc(r1) +/* 801A8578 001A54D8 D0 3F 00 10 */ stfs f1, 0x10(r31) +/* 801A857C 001A54DC C0 25 00 08 */ lfs f1, 8(r5) +/* 801A8580 001A54E0 99 01 00 10 */ stb r8, 0x10(r1) +/* 801A8584 001A54E4 D0 3F 00 14 */ stfs f1, 0x14(r31) +/* 801A8588 001A54E8 C0 26 00 00 */ lfs f1, 0(r6) +/* 801A858C 001A54EC D0 3F 00 18 */ stfs f1, 0x18(r31) +/* 801A8590 001A54F0 C0 26 00 04 */ lfs f1, 4(r6) +/* 801A8594 001A54F4 D0 3F 00 1C */ stfs f1, 0x1c(r31) +/* 801A8598 001A54F8 C0 26 00 08 */ lfs f1, 8(r6) +/* 801A859C 001A54FC D0 3F 00 20 */ stfs f1, 0x20(r31) +/* 801A85A0 001A5500 D0 1F 00 24 */ stfs f0, 0x24(r31) +/* 801A85A4 001A5504 D0 1F 00 28 */ stfs f0, 0x28(r31) +/* 801A85A8 001A5508 48 19 5B B9 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801A85AC 001A550C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801A85B0 001A5510 B0 1F 00 3C */ sth r0, 0x3c(r31) +/* 801A85B4 001A5514 D3 FF 00 40 */ stfs f31, 0x40(r31) +/* 801A85B8 001A5518 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 801A85BC 001A551C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801A85C0 001A5520 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 801A85C4 001A5524 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801A85C8 001A5528 7C 08 03 A6 */ mtlr r0 +/* 801A85CC 001A552C 38 21 00 30 */ addi r1, r1, 0x30 +/* 801A85D0 001A5530 4E 80 00 20 */ blr + +.global "OBBAutoSizeCollision__26CJointCollisionDescriptionF6CSegId6CSegIdRC9CVector3fQ226CJointCollisionDescription16EOrientationTypeRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" +"OBBAutoSizeCollision__26CJointCollisionDescriptionF6CSegId6CSegIdRC9CVector3fQ226CJointCollisionDescription16EOrientationTypeRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f": +/* 801A85D4 001A5534 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801A85D8 001A5538 7C 08 02 A6 */ mflr r0 +/* 801A85DC 001A553C 90 01 00 34 */ stw r0, 0x34(r1) +/* 801A85E0 001A5540 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 801A85E4 001A5544 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 801A85E8 001A5548 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801A85EC 001A554C 89 24 00 00 */ lbz r9, 0(r4) +/* 801A85F0 001A5550 7C 7F 1B 78 */ mr r31, r3 +/* 801A85F4 001A5554 89 45 00 00 */ lbz r10, 0(r5) +/* 801A85F8 001A5558 38 00 00 03 */ li r0, 3 +/* 801A85FC 001A555C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801A8600 001A5560 FF E0 08 90 */ fmr f31, f1 +/* 801A8604 001A5564 90 1F 00 00 */ stw r0, 0(r31) +/* 801A8608 001A5568 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 801A860C 001A556C C0 02 A7 F8 */ lfs f0, lbl_805AC518@sda21(r2) +/* 801A8610 001A5570 7D 04 43 78 */ mr r4, r8 +/* 801A8614 001A5574 90 FF 00 04 */ stw r7, 4(r31) +/* 801A8618 001A5578 38 7F 00 2C */ addi r3, r31, 0x2c +/* 801A861C 001A557C 99 3F 00 08 */ stb r9, 8(r31) +/* 801A8620 001A5580 99 5F 00 09 */ stb r10, 9(r31) +/* 801A8624 001A5584 C0 26 00 00 */ lfs f1, 0(r6) +/* 801A8628 001A5588 99 41 00 08 */ stb r10, 8(r1) +/* 801A862C 001A558C D0 3F 00 0C */ stfs f1, 0xc(r31) +/* 801A8630 001A5590 C0 26 00 04 */ lfs f1, 4(r6) +/* 801A8634 001A5594 99 21 00 0C */ stb r9, 0xc(r1) +/* 801A8638 001A5598 D0 3F 00 10 */ stfs f1, 0x10(r31) +/* 801A863C 001A559C C0 26 00 08 */ lfs f1, 8(r6) +/* 801A8640 001A55A0 D0 3F 00 14 */ stfs f1, 0x14(r31) +/* 801A8644 001A55A4 C0 25 00 00 */ lfs f1, 0(r5) +/* 801A8648 001A55A8 D0 3F 00 18 */ stfs f1, 0x18(r31) +/* 801A864C 001A55AC C0 25 00 04 */ lfs f1, 4(r5) +/* 801A8650 001A55B0 D0 3F 00 1C */ stfs f1, 0x1c(r31) +/* 801A8654 001A55B4 C0 25 00 08 */ lfs f1, 8(r5) +/* 801A8658 001A55B8 D0 3F 00 20 */ stfs f1, 0x20(r31) +/* 801A865C 001A55BC D0 1F 00 24 */ stfs f0, 0x24(r31) +/* 801A8660 001A55C0 D0 1F 00 28 */ stfs f0, 0x28(r31) +/* 801A8664 001A55C4 48 19 5A FD */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801A8668 001A55C8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801A866C 001A55CC B0 1F 00 3C */ sth r0, 0x3c(r31) +/* 801A8670 001A55D0 D3 FF 00 40 */ stfs f31, 0x40(r31) +/* 801A8674 001A55D4 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 801A8678 001A55D8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801A867C 001A55DC CB E1 00 20 */ lfd f31, 0x20(r1) +/* 801A8680 001A55E0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801A8684 001A55E4 7C 08 03 A6 */ mtlr r0 +/* 801A8688 001A55E8 38 21 00 30 */ addi r1, r1, 0x30 +/* 801A868C 001A55EC 4E 80 00 20 */ blr + +.global "AABoxCollision__26CJointCollisionDescriptionF6CSegIdRC9CVector3fRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" +"AABoxCollision__26CJointCollisionDescriptionF6CSegIdRC9CVector3fRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f": +/* 801A8690 001A55F0 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801A8694 001A55F4 7C 08 02 A6 */ mflr r0 +/* 801A8698 001A55F8 90 01 00 34 */ stw r0, 0x34(r1) +/* 801A869C 001A55FC DB E1 00 20 */ stfd f31, 0x20(r1) +/* 801A86A0 001A5600 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 801A86A4 001A5604 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801A86A8 001A5608 89 04 00 00 */ lbz r8, 0(r4) +/* 801A86AC 001A560C 39 20 00 FF */ li r9, 0xff +/* 801A86B0 001A5610 38 00 00 02 */ li r0, 2 +/* 801A86B4 001A5614 7C 7F 1B 78 */ mr r31, r3 +/* 801A86B8 001A5618 90 03 00 00 */ stw r0, 0(r3) +/* 801A86BC 001A561C 38 00 00 00 */ li r0, 0 +/* 801A86C0 001A5620 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801A86C4 001A5624 FF E0 08 90 */ fmr f31, f1 +/* 801A86C8 001A5628 90 1F 00 04 */ stw r0, 4(r31) +/* 801A86CC 001A562C 38 E3 66 A0 */ addi r7, r3, skZero3f@l +/* 801A86D0 001A5630 C0 02 A7 F8 */ lfs f0, lbl_805AC518@sda21(r2) +/* 801A86D4 001A5634 7C C4 33 78 */ mr r4, r6 +/* 801A86D8 001A5638 99 1F 00 08 */ stb r8, 8(r31) +/* 801A86DC 001A563C 38 7F 00 2C */ addi r3, r31, 0x2c +/* 801A86E0 001A5640 99 3F 00 09 */ stb r9, 9(r31) +/* 801A86E4 001A5644 C0 25 00 00 */ lfs f1, 0(r5) +/* 801A86E8 001A5648 99 21 00 08 */ stb r9, 8(r1) +/* 801A86EC 001A564C D0 3F 00 0C */ stfs f1, 0xc(r31) +/* 801A86F0 001A5650 C0 25 00 04 */ lfs f1, 4(r5) +/* 801A86F4 001A5654 99 21 00 0C */ stb r9, 0xc(r1) +/* 801A86F8 001A5658 D0 3F 00 10 */ stfs f1, 0x10(r31) +/* 801A86FC 001A565C C0 25 00 08 */ lfs f1, 8(r5) +/* 801A8700 001A5660 99 01 00 10 */ stb r8, 0x10(r1) +/* 801A8704 001A5664 D0 3F 00 14 */ stfs f1, 0x14(r31) +/* 801A8708 001A5668 C0 27 00 00 */ lfs f1, 0(r7) +/* 801A870C 001A566C D0 3F 00 18 */ stfs f1, 0x18(r31) +/* 801A8710 001A5670 C0 27 00 04 */ lfs f1, 4(r7) +/* 801A8714 001A5674 D0 3F 00 1C */ stfs f1, 0x1c(r31) +/* 801A8718 001A5678 C0 27 00 08 */ lfs f1, 8(r7) +/* 801A871C 001A567C D0 3F 00 20 */ stfs f1, 0x20(r31) +/* 801A8720 001A5680 D0 1F 00 24 */ stfs f0, 0x24(r31) +/* 801A8724 001A5684 D0 1F 00 28 */ stfs f0, 0x28(r31) +/* 801A8728 001A5688 48 19 5A 39 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801A872C 001A568C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801A8730 001A5690 B0 1F 00 3C */ sth r0, 0x3c(r31) +/* 801A8734 001A5694 D3 FF 00 40 */ stfs f31, 0x40(r31) +/* 801A8738 001A5698 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 801A873C 001A569C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801A8740 001A56A0 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 801A8744 001A56A4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801A8748 001A56A8 7C 08 03 A6 */ mtlr r0 +/* 801A874C 001A56AC 38 21 00 30 */ addi r1, r1, 0x30 +/* 801A8750 001A56B0 4E 80 00 20 */ blr + +.global "SphereSubdivideCollision__26CJointCollisionDescriptionF6CSegId6CSegIdffQ226CJointCollisionDescription16EOrientationTypeRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" +"SphereSubdivideCollision__26CJointCollisionDescriptionF6CSegId6CSegIdffQ226CJointCollisionDescription16EOrientationTypeRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f": +/* 801A8754 001A56B4 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801A8758 001A56B8 7C 08 02 A6 */ mflr r0 +/* 801A875C 001A56BC 90 01 00 34 */ stw r0, 0x34(r1) +/* 801A8760 001A56C0 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 801A8764 001A56C4 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 801A8768 001A56C8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801A876C 001A56CC 89 04 00 00 */ lbz r8, 0(r4) +/* 801A8770 001A56D0 7C 7F 1B 78 */ mr r31, r3 +/* 801A8774 001A56D4 89 25 00 00 */ lbz r9, 0(r5) +/* 801A8778 001A56D8 38 00 00 01 */ li r0, 1 +/* 801A877C 001A56DC 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801A8780 001A56E0 FF E0 18 90 */ fmr f31, f3 +/* 801A8784 001A56E4 90 1F 00 00 */ stw r0, 0(r31) +/* 801A8788 001A56E8 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 801A878C 001A56EC 7C E4 3B 78 */ mr r4, r7 +/* 801A8790 001A56F0 38 7F 00 2C */ addi r3, r31, 0x2c +/* 801A8794 001A56F4 90 DF 00 04 */ stw r6, 4(r31) +/* 801A8798 001A56F8 99 1F 00 08 */ stb r8, 8(r31) +/* 801A879C 001A56FC 99 3F 00 09 */ stb r9, 9(r31) +/* 801A87A0 001A5700 C0 05 00 00 */ lfs f0, 0(r5) +/* 801A87A4 001A5704 99 21 00 08 */ stb r9, 8(r1) +/* 801A87A8 001A5708 D0 1F 00 0C */ stfs f0, 0xc(r31) +/* 801A87AC 001A570C C0 05 00 04 */ lfs f0, 4(r5) +/* 801A87B0 001A5710 99 01 00 0C */ stb r8, 0xc(r1) +/* 801A87B4 001A5714 D0 1F 00 10 */ stfs f0, 0x10(r31) +/* 801A87B8 001A5718 C0 05 00 08 */ lfs f0, 8(r5) +/* 801A87BC 001A571C D0 1F 00 14 */ stfs f0, 0x14(r31) +/* 801A87C0 001A5720 C0 05 00 00 */ lfs f0, 0(r5) +/* 801A87C4 001A5724 D0 1F 00 18 */ stfs f0, 0x18(r31) +/* 801A87C8 001A5728 C0 05 00 04 */ lfs f0, 4(r5) +/* 801A87CC 001A572C D0 1F 00 1C */ stfs f0, 0x1c(r31) +/* 801A87D0 001A5730 C0 05 00 08 */ lfs f0, 8(r5) +/* 801A87D4 001A5734 D0 1F 00 20 */ stfs f0, 0x20(r31) +/* 801A87D8 001A5738 D0 3F 00 24 */ stfs f1, 0x24(r31) +/* 801A87DC 001A573C D0 5F 00 28 */ stfs f2, 0x28(r31) +/* 801A87E0 001A5740 48 19 59 81 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801A87E4 001A5744 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801A87E8 001A5748 B0 1F 00 3C */ sth r0, 0x3c(r31) +/* 801A87EC 001A574C D3 FF 00 40 */ stfs f31, 0x40(r31) +/* 801A87F0 001A5750 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 801A87F4 001A5754 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801A87F8 001A5758 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 801A87FC 001A575C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801A8800 001A5760 7C 08 03 A6 */ mtlr r0 +/* 801A8804 001A5764 38 21 00 30 */ addi r1, r1, 0x30 +/* 801A8808 001A5768 4E 80 00 20 */ blr + +.global "SphereCollision__26CJointCollisionDescriptionF6CSegIdfRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" +"SphereCollision__26CJointCollisionDescriptionF6CSegIdfRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f": +/* 801A880C 001A576C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801A8810 001A5770 7C 08 02 A6 */ mflr r0 +/* 801A8814 001A5774 90 01 00 34 */ stw r0, 0x34(r1) +/* 801A8818 001A5778 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 801A881C 001A577C F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 801A8820 001A5780 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801A8824 001A5784 88 E4 00 00 */ lbz r7, 0(r4) +/* 801A8828 001A5788 39 00 00 FF */ li r8, 0xff +/* 801A882C 001A578C 38 00 00 00 */ li r0, 0 +/* 801A8830 001A5790 7C 7F 1B 78 */ mr r31, r3 +/* 801A8834 001A5794 90 03 00 00 */ stw r0, 0(r3) +/* 801A8838 001A5798 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801A883C 001A579C 38 C3 66 A0 */ addi r6, r3, skZero3f@l +/* 801A8840 001A57A0 FF E0 10 90 */ fmr f31, f2 +/* 801A8844 001A57A4 90 1F 00 04 */ stw r0, 4(r31) +/* 801A8848 001A57A8 7C A4 2B 78 */ mr r4, r5 +/* 801A884C 001A57AC C0 02 A7 F8 */ lfs f0, lbl_805AC518@sda21(r2) +/* 801A8850 001A57B0 38 7F 00 2C */ addi r3, r31, 0x2c +/* 801A8854 001A57B4 98 FF 00 08 */ stb r7, 8(r31) +/* 801A8858 001A57B8 99 1F 00 09 */ stb r8, 9(r31) +/* 801A885C 001A57BC C0 46 00 00 */ lfs f2, 0(r6) +/* 801A8860 001A57C0 99 01 00 08 */ stb r8, 8(r1) +/* 801A8864 001A57C4 D0 5F 00 0C */ stfs f2, 0xc(r31) +/* 801A8868 001A57C8 C0 46 00 04 */ lfs f2, 4(r6) +/* 801A886C 001A57CC 99 01 00 0C */ stb r8, 0xc(r1) +/* 801A8870 001A57D0 D0 5F 00 10 */ stfs f2, 0x10(r31) +/* 801A8874 001A57D4 C0 46 00 08 */ lfs f2, 8(r6) +/* 801A8878 001A57D8 98 E1 00 10 */ stb r7, 0x10(r1) +/* 801A887C 001A57DC D0 5F 00 14 */ stfs f2, 0x14(r31) +/* 801A8880 001A57E0 C0 46 00 00 */ lfs f2, 0(r6) +/* 801A8884 001A57E4 D0 5F 00 18 */ stfs f2, 0x18(r31) +/* 801A8888 001A57E8 C0 46 00 04 */ lfs f2, 4(r6) +/* 801A888C 001A57EC D0 5F 00 1C */ stfs f2, 0x1c(r31) +/* 801A8890 001A57F0 C0 46 00 08 */ lfs f2, 8(r6) +/* 801A8894 001A57F4 D0 5F 00 20 */ stfs f2, 0x20(r31) +/* 801A8898 001A57F8 D0 3F 00 24 */ stfs f1, 0x24(r31) +/* 801A889C 001A57FC D0 1F 00 28 */ stfs f0, 0x28(r31) +/* 801A88A0 001A5800 48 19 58 C1 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801A88A4 001A5804 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801A88A8 001A5808 B0 1F 00 3C */ sth r0, 0x3c(r31) +/* 801A88AC 001A580C D3 FF 00 40 */ stfs f31, 0x40(r31) +/* 801A88B0 001A5810 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 801A88B4 001A5814 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801A88B8 001A5818 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 801A88BC 001A581C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801A88C0 001A5820 7C 08 03 A6 */ mtlr r0 +/* 801A88C4 001A5824 38 21 00 30 */ addi r1, r1, 0x30 +/* 801A88C8 001A5828 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CEnvFxManager.s b/asm/Kyoto_CWD/CEnvFxManager.s new file mode 100644 index 00000000..8355d1eb --- /dev/null +++ b/asm/Kyoto_CWD/CEnvFxManager.s @@ -0,0 +1,4225 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global AreaLoaded__13CEnvFxManagerFv +AreaLoaded__13CEnvFxManagerFv: +/* 8020FE14 0020CD74 38 A3 00 54 */ addi r5, r3, 0x54 +/* 8020FE18 0020CD78 38 C0 00 00 */ li r6, 0 +/* 8020FE1C 0020CD7C 38 80 00 01 */ li r4, 1 +/* 8020FE20 0020CD80 48 00 00 18 */ b lbl_8020FE38 +lbl_8020FE24: +/* 8020FE24 0020CD84 88 05 00 00 */ lbz r0, 0(r5) +/* 8020FE28 0020CD88 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 8020FE2C 0020CD8C 38 C6 00 01 */ addi r6, r6, 1 +/* 8020FE30 0020CD90 98 05 00 00 */ stb r0, 0(r5) +/* 8020FE34 0020CD94 38 A5 00 2C */ addi r5, r5, 0x2c +lbl_8020FE38: +/* 8020FE38 0020CD98 80 03 00 50 */ lwz r0, 0x50(r3) +/* 8020FE3C 0020CD9C 7C 06 00 00 */ cmpw r6, r0 +/* 8020FE40 0020CDA0 41 80 FF E4 */ blt lbl_8020FE24 +/* 8020FE44 0020CDA4 4E 80 00 20 */ blr + +.global "BuildBlockObjectList__13CEnvFxManagerFR27reserved_vector<9TUniqueId>R13CStateManager" +"BuildBlockObjectList__13CEnvFxManagerFR27reserved_vector<9TUniqueId>R13CStateManager": +/* 8020FE48 0020CDA8 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8020FE4C 0020CDAC 7C 08 02 A6 */ mflr r0 +/* 8020FE50 0020CDB0 90 01 00 34 */ stw r0, 0x34(r1) +/* 8020FE54 0020CDB4 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8020FE58 0020CDB8 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8020FE5C 0020CDBC 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8020FE60 0020CDC0 7C 7D 1B 78 */ mr r29, r3 +/* 8020FE64 0020CDC4 93 81 00 20 */ stw r28, 0x20(r1) +/* 8020FE68 0020CDC8 83 E4 08 10 */ lwz r31, 0x810(r4) +/* 8020FE6C 0020CDCC AB DF 20 08 */ lha r30, 0x2008(r31) +/* 8020FE70 0020CDD0 48 00 00 C4 */ b lbl_8020FF34 +lbl_8020FE74: +/* 8020FE74 0020CDD4 7F E3 FB 78 */ mr r3, r31 +/* 8020FE78 0020CDD8 7F C4 F3 78 */ mr r4, r30 +/* 8020FE7C 0020CDDC 4B DF FE 61 */ bl __vc__11CObjectListCFi +/* 8020FE80 0020CDE0 7C 60 1B 78 */ mr r0, r3 +/* 8020FE84 0020CDE4 38 61 00 10 */ addi r3, r1, 0x10 +/* 8020FE88 0020CDE8 7C 1C 03 78 */ mr r28, r0 +/* 8020FE8C 0020CDEC 7F 84 E3 78 */ mr r4, r28 +/* 8020FE90 0020CDF0 4B E9 70 59 */ bl "__ct__28TCastToPtr<14CScriptTrigger>FP7CEntity" +/* 8020FE94 0020CDF4 80 63 00 04 */ lwz r3, 4(r3) +/* 8020FE98 0020CDF8 28 03 00 00 */ cmplwi r3, 0 +/* 8020FE9C 0020CDFC 41 82 00 3C */ beq lbl_8020FED8 +/* 8020FEA0 0020CE00 80 03 01 2C */ lwz r0, 0x12c(r3) +/* 8020FEA4 0020CE04 54 00 03 9D */ rlwinm. r0, r0, 0, 0xe, 0xe +/* 8020FEA8 0020CE08 41 82 00 30 */ beq lbl_8020FED8 +/* 8020FEAC 0020CE0C 80 1D 00 00 */ lwz r0, 0(r29) +/* 8020FEB0 0020CE10 A0 9C 00 08 */ lhz r4, 8(r28) +/* 8020FEB4 0020CE14 54 00 08 3C */ slwi r0, r0, 1 +/* 8020FEB8 0020CE18 7C 7D 02 14 */ add r3, r29, r0 +/* 8020FEBC 0020CE1C 34 63 00 04 */ addic. r3, r3, 4 +/* 8020FEC0 0020CE20 41 82 00 08 */ beq lbl_8020FEC8 +/* 8020FEC4 0020CE24 B0 83 00 00 */ sth r4, 0(r3) +lbl_8020FEC8: +/* 8020FEC8 0020CE28 80 7D 00 00 */ lwz r3, 0(r29) +/* 8020FECC 0020CE2C 38 03 00 01 */ addi r0, r3, 1 +/* 8020FED0 0020CE30 90 1D 00 00 */ stw r0, 0(r29) +/* 8020FED4 0020CE34 48 00 00 44 */ b lbl_8020FF18 +lbl_8020FED8: +/* 8020FED8 0020CE38 7F 84 E3 78 */ mr r4, r28 +/* 8020FEDC 0020CE3C 38 61 00 08 */ addi r3, r1, 8 +/* 8020FEE0 0020CE40 4B E9 69 81 */ bl "__ct__26TCastToPtr<12CScriptWater>FP7CEntity" +/* 8020FEE4 0020CE44 80 03 00 04 */ lwz r0, 4(r3) +/* 8020FEE8 0020CE48 28 00 00 00 */ cmplwi r0, 0 +/* 8020FEEC 0020CE4C 41 82 00 2C */ beq lbl_8020FF18 +/* 8020FEF0 0020CE50 80 1D 00 00 */ lwz r0, 0(r29) +/* 8020FEF4 0020CE54 A0 9C 00 08 */ lhz r4, 8(r28) +/* 8020FEF8 0020CE58 54 00 08 3C */ slwi r0, r0, 1 +/* 8020FEFC 0020CE5C 7C 7D 02 14 */ add r3, r29, r0 +/* 8020FF00 0020CE60 34 63 00 04 */ addic. r3, r3, 4 +/* 8020FF04 0020CE64 41 82 00 08 */ beq lbl_8020FF0C +/* 8020FF08 0020CE68 B0 83 00 00 */ sth r4, 0(r3) +lbl_8020FF0C: +/* 8020FF0C 0020CE6C 80 7D 00 00 */ lwz r3, 0(r29) +/* 8020FF10 0020CE70 38 03 00 01 */ addi r0, r3, 1 +/* 8020FF14 0020CE74 90 1D 00 00 */ stw r0, 0(r29) +lbl_8020FF18: +/* 8020FF18 0020CE78 2C 1E FF FF */ cmpwi r30, -1 +/* 8020FF1C 0020CE7C 41 82 00 14 */ beq lbl_8020FF30 +/* 8020FF20 0020CE80 57 C3 18 38 */ slwi r3, r30, 3 +/* 8020FF24 0020CE84 38 03 00 08 */ addi r0, r3, 8 +/* 8020FF28 0020CE88 7F DF 02 AE */ lhax r30, r31, r0 +/* 8020FF2C 0020CE8C 48 00 00 08 */ b lbl_8020FF34 +lbl_8020FF30: +/* 8020FF30 0020CE90 3B C0 FF FF */ li r30, -1 +lbl_8020FF34: +/* 8020FF34 0020CE94 2C 1E FF FF */ cmpwi r30, -1 +/* 8020FF38 0020CE98 40 82 FF 3C */ bne lbl_8020FE74 +/* 8020FF3C 0020CE9C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8020FF40 0020CEA0 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8020FF44 0020CEA4 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8020FF48 0020CEA8 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8020FF4C 0020CEAC 83 81 00 20 */ lwz r28, 0x20(r1) +/* 8020FF50 0020CEB0 7C 08 03 A6 */ mtlr r0 +/* 8020FF54 0020CEB4 38 21 00 30 */ addi r1, r1, 0x30 +/* 8020FF58 0020CEB8 4E 80 00 20 */ blr + +.global sub_8020ff5c +sub_8020ff5c: +/* 8020FF5C 0020CEBC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8020FF60 0020CEC0 6C 84 80 00 */ xoris r4, r4, 0x8000 +/* 8020FF64 0020CEC4 3C 00 43 30 */ lis r0, 0x4330 +/* 8020FF68 0020CEC8 C8 42 B2 48 */ lfd f2, lbl_805ACF68@sda21(r2) +/* 8020FF6C 0020CECC 90 81 00 0C */ stw r4, 0xc(r1) +/* 8020FF70 0020CED0 90 01 00 08 */ stw r0, 8(r1) +/* 8020FF74 0020CED4 C8 01 00 08 */ lfd f0, 8(r1) +/* 8020FF78 0020CED8 D0 23 00 34 */ stfs f1, 0x34(r3) +/* 8020FF7C 0020CEDC EC 00 10 28 */ fsubs f0, f0, f2 +/* 8020FF80 0020CEE0 D0 03 00 38 */ stfs f0, 0x38(r3) +/* 8020FF84 0020CEE4 38 21 00 10 */ addi r1, r1, 0x10 +/* 8020FF88 0020CEE8 4E 80 00 20 */ blr + +.global UpdateRainSounds__13CEnvFxManagerFR13CStateManager +UpdateRainSounds__13CEnvFxManagerFR13CStateManager: +/* 8020FF8C 0020CEEC 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 8020FF90 0020CEF0 7C 08 02 A6 */ mflr r0 +/* 8020FF94 0020CEF4 7C 85 23 78 */ mr r5, r4 +/* 8020FF98 0020CEF8 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 8020FF9C 0020CEFC 93 E1 00 DC */ stw r31, 0xdc(r1) +/* 8020FFA0 0020CF00 7C 7F 1B 78 */ mr r31, r3 +/* 8020FFA4 0020CF04 93 C1 00 D8 */ stw r30, 0xd8(r1) +/* 8020FFA8 0020CF08 80 64 08 50 */ lwz r3, 0x850(r4) +/* 8020FFAC 0020CF0C 80 03 00 C4 */ lwz r0, 0xc4(r3) +/* 8020FFB0 0020CF10 2C 00 00 02 */ cmpwi r0, 2 +/* 8020FFB4 0020CF14 40 82 01 A8 */ bne lbl_8021015C +/* 8020FFB8 0020CF18 80 85 08 70 */ lwz r4, 0x870(r5) +/* 8020FFBC 0020CF1C 38 61 00 70 */ addi r3, r1, 0x70 +/* 8020FFC0 0020CF20 4B DF A9 A9 */ bl GetCurrentCameraTransform__14CCameraManagerCFRC13CStateManager +/* 8020FFC4 0020CF24 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 8020FFC8 0020CF28 38 81 00 70 */ addi r4, r1, 0x70 +/* 8020FFCC 0020CF2C 48 10 2B A9 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8020FFD0 0020CF30 C0 3F 00 30 */ lfs f1, 0x30(r31) +/* 8020FFD4 0020CF34 48 00 01 F5 */ bl CalcRainVolume__Ff +/* 8020FFD8 0020CF38 88 1F 0B 6A */ lbz r0, 0xb6a(r31) +/* 8020FFDC 0020CF3C 7C 7E 1B 78 */ mr r30, r3 +/* 8020FFE0 0020CF40 28 00 00 00 */ cmplwi r0, 0 +/* 8020FFE4 0020CF44 40 82 00 6C */ bne lbl_80210050 +/* 8020FFE8 0020CF48 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8020FFEC 0020CF4C A9 22 C5 F8 */ lha r9, lbl_805AE318@sda21(r2) +/* 8020FFF0 0020CF50 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 8020FFF4 0020CF54 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8020FFF8 0020CF58 38 61 00 24 */ addi r3, r1, 0x24 +/* 8020FFFC 0020CF5C 38 80 09 F0 */ li r4, 0x9f0 +/* 80210000 0020CF60 7C A6 2B 78 */ mr r6, r5 +/* 80210004 0020CF64 38 E0 00 00 */ li r7, 0 +/* 80210008 0020CF68 39 00 00 01 */ li r8, 1 +/* 8021000C 0020CF6C 48 0D A2 A5 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +/* 80210010 0020CF70 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80210014 0020CF74 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80210018 0020CF78 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 8021001C 0020CF7C A9 22 C5 F8 */ lha r9, lbl_805AE318@sda21(r2) +/* 80210020 0020CF80 90 1F 0B 6C */ stw r0, 0xb6c(r31) +/* 80210024 0020CF84 7C A6 2B 78 */ mr r6, r5 +/* 80210028 0020CF88 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8021002C 0020CF8C 38 61 00 20 */ addi r3, r1, 0x20 +/* 80210030 0020CF90 38 80 09 F1 */ li r4, 0x9f1 +/* 80210034 0020CF94 38 E0 00 00 */ li r7, 0 +/* 80210038 0020CF98 39 00 00 01 */ li r8, 1 +/* 8021003C 0020CF9C 48 0D A2 75 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +/* 80210040 0020CFA0 80 61 00 20 */ lwz r3, 0x20(r1) +/* 80210044 0020CFA4 38 00 00 01 */ li r0, 1 +/* 80210048 0020CFA8 90 7F 0B 70 */ stw r3, 0xb70(r31) +/* 8021004C 0020CFAC 98 1F 0B 6A */ stb r0, 0xb6a(r31) +lbl_80210050: +/* 80210050 0020CFB0 C0 61 00 A0 */ lfs f3, 0xa0(r1) +/* 80210054 0020CFB4 38 61 00 1C */ addi r3, r1, 0x1c +/* 80210058 0020CFB8 C0 A1 00 AC */ lfs f5, 0xac(r1) +/* 8021005C 0020CFBC 38 81 00 64 */ addi r4, r1, 0x64 +/* 80210060 0020CFC0 C0 E1 00 B0 */ lfs f7, 0xb0(r1) +/* 80210064 0020CFC4 38 A1 00 4C */ addi r5, r1, 0x4c +/* 80210068 0020CFC8 C0 41 00 BC */ lfs f2, 0xbc(r1) +/* 8021006C 0020CFCC EC 05 18 28 */ fsubs f0, f5, f3 +/* 80210070 0020CFD0 C0 C1 00 C0 */ lfs f6, 0xc0(r1) +/* 80210074 0020CFD4 57 C6 06 3E */ clrlwi r6, r30, 0x18 +/* 80210078 0020CFD8 C0 21 00 CC */ lfs f1, 0xcc(r1) +/* 8021007C 0020CFDC EC 82 38 28 */ fsubs f4, f2, f7 +/* 80210080 0020CFE0 D0 61 00 4C */ stfs f3, 0x4c(r1) +/* 80210084 0020CFE4 EC 61 30 28 */ fsubs f3, f1, f6 +/* 80210088 0020CFE8 D0 E1 00 50 */ stfs f7, 0x50(r1) +/* 8021008C 0020CFEC D0 C1 00 54 */ stfs f6, 0x54(r1) +/* 80210090 0020CFF0 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 80210094 0020CFF4 D0 81 00 68 */ stfs f4, 0x68(r1) +/* 80210098 0020CFF8 D0 61 00 6C */ stfs f3, 0x6c(r1) +/* 8021009C 0020CFFC 80 1F 0B 6C */ lwz r0, 0xb6c(r31) +/* 802100A0 0020D000 D0 A1 00 58 */ stfs f5, 0x58(r1) +/* 802100A4 0020D004 D0 41 00 5C */ stfs f2, 0x5c(r1) +/* 802100A8 0020D008 D0 21 00 60 */ stfs f1, 0x60(r1) +/* 802100AC 0020D00C 90 01 00 1C */ stw r0, 0x1c(r1) +/* 802100B0 0020D010 48 0D 9E 01 */ bl UpdateEmitter__11CSfxManagerF10CSfxHandleRC9CVector3fRC9CVector3fUc +/* 802100B4 0020D014 C0 61 00 C0 */ lfs f3, 0xc0(r1) +/* 802100B8 0020D018 38 61 00 18 */ addi r3, r1, 0x18 +/* 802100BC 0020D01C C0 21 00 CC */ lfs f1, 0xcc(r1) +/* 802100C0 0020D020 38 81 00 40 */ addi r4, r1, 0x40 +/* 802100C4 0020D024 C0 C1 00 B0 */ lfs f6, 0xb0(r1) +/* 802100C8 0020D028 FC 00 18 50 */ fneg f0, f3 +/* 802100CC 0020D02C C0 41 00 BC */ lfs f2, 0xbc(r1) +/* 802100D0 0020D030 EC A1 18 2A */ fadds f5, f1, f3 +/* 802100D4 0020D034 C1 01 00 A0 */ lfs f8, 0xa0(r1) +/* 802100D8 0020D038 FC 80 30 50 */ fneg f4, f6 +/* 802100DC 0020D03C C0 61 00 AC */ lfs f3, 0xac(r1) +/* 802100E0 0020D040 FC E0 40 50 */ fneg f7, f8 +/* 802100E4 0020D044 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 802100E8 0020D048 EC C2 30 2A */ fadds f6, f2, f6 +/* 802100EC 0020D04C 38 A1 00 28 */ addi r5, r1, 0x28 +/* 802100F0 0020D050 EC 03 40 2A */ fadds f0, f3, f8 +/* 802100F4 0020D054 D0 81 00 2C */ stfs f4, 0x2c(r1) +/* 802100F8 0020D058 D0 E1 00 28 */ stfs f7, 0x28(r1) +/* 802100FC 0020D05C 57 C6 06 3E */ clrlwi r6, r30, 0x18 +/* 80210100 0020D060 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 80210104 0020D064 D0 C1 00 44 */ stfs f6, 0x44(r1) +/* 80210108 0020D068 D0 A1 00 48 */ stfs f5, 0x48(r1) +/* 8021010C 0020D06C 80 1F 0B 70 */ lwz r0, 0xb70(r31) +/* 80210110 0020D070 D0 61 00 34 */ stfs f3, 0x34(r1) +/* 80210114 0020D074 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 80210118 0020D078 D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 8021011C 0020D07C 90 01 00 18 */ stw r0, 0x18(r1) +/* 80210120 0020D080 48 0D 9D 91 */ bl UpdateEmitter__11CSfxManagerF10CSfxHandleRC9CVector3fRC9CVector3fUc +/* 80210124 0020D084 C0 3F 00 30 */ lfs f1, 0x30(r31) +/* 80210128 0020D088 48 00 00 81 */ bl CalcRainPitch__Ff +/* 8021012C 0020D08C 80 1F 0B 6C */ lwz r0, 0xb6c(r31) +/* 80210130 0020D090 7C 7E 07 34 */ extsh r30, r3 +/* 80210134 0020D094 38 61 00 14 */ addi r3, r1, 0x14 +/* 80210138 0020D098 90 01 00 14 */ stw r0, 0x14(r1) +/* 8021013C 0020D09C 7F C4 F3 78 */ mr r4, r30 +/* 80210140 0020D0A0 48 0D 8D 6D */ bl PitchBend__11CSfxManagerF10CSfxHandlei +/* 80210144 0020D0A4 80 1F 0B 70 */ lwz r0, 0xb70(r31) +/* 80210148 0020D0A8 7F C4 F3 78 */ mr r4, r30 +/* 8021014C 0020D0AC 38 61 00 10 */ addi r3, r1, 0x10 +/* 80210150 0020D0B0 90 01 00 10 */ stw r0, 0x10(r1) +/* 80210154 0020D0B4 48 0D 8D 59 */ bl PitchBend__11CSfxManagerF10CSfxHandlei +/* 80210158 0020D0B8 48 00 00 38 */ b lbl_80210190 +lbl_8021015C: +/* 8021015C 0020D0BC 88 1F 0B 6A */ lbz r0, 0xb6a(r31) +/* 80210160 0020D0C0 28 00 00 00 */ cmplwi r0, 0 +/* 80210164 0020D0C4 41 82 00 2C */ beq lbl_80210190 +/* 80210168 0020D0C8 80 1F 0B 6C */ lwz r0, 0xb6c(r31) +/* 8021016C 0020D0CC 38 61 00 0C */ addi r3, r1, 0xc +/* 80210170 0020D0D0 90 01 00 0C */ stw r0, 0xc(r1) +/* 80210174 0020D0D4 48 0D 9D 11 */ bl RemoveEmitter__11CSfxManagerFRC10CSfxHandle +/* 80210178 0020D0D8 80 1F 0B 70 */ lwz r0, 0xb70(r31) +/* 8021017C 0020D0DC 38 61 00 08 */ addi r3, r1, 8 +/* 80210180 0020D0E0 90 01 00 08 */ stw r0, 8(r1) +/* 80210184 0020D0E4 48 0D 9D 01 */ bl RemoveEmitter__11CSfxManagerFRC10CSfxHandle +/* 80210188 0020D0E8 38 00 00 00 */ li r0, 0 +/* 8021018C 0020D0EC 98 1F 0B 6A */ stb r0, 0xb6a(r31) +lbl_80210190: +/* 80210190 0020D0F0 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 80210194 0020D0F4 83 E1 00 DC */ lwz r31, 0xdc(r1) +/* 80210198 0020D0F8 83 C1 00 D8 */ lwz r30, 0xd8(r1) +/* 8021019C 0020D0FC 7C 08 03 A6 */ mtlr r0 +/* 802101A0 0020D100 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 802101A4 0020D104 4E 80 00 20 */ blr + +.global CalcRainPitch__Ff +CalcRainPitch__Ff: +/* 802101A8 0020D108 C0 02 B2 50 */ lfs f0, lbl_805ACF70@sda21(r2) +/* 802101AC 0020D10C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 802101B0 0020D110 EC 00 00 72 */ fmuls f0, f0, f1 +/* 802101B4 0020D114 FC 00 00 1E */ fctiwz f0, f0 +/* 802101B8 0020D118 D8 01 00 08 */ stfd f0, 8(r1) +/* 802101BC 0020D11C 80 61 00 0C */ lwz r3, 0xc(r1) +/* 802101C0 0020D120 38 21 00 10 */ addi r1, r1, 0x10 +/* 802101C4 0020D124 4E 80 00 20 */ blr + +.global CalcRainVolume__Ff +CalcRainVolume__Ff: +/* 802101C8 0020D128 C0 02 B2 58 */ lfs f0, lbl_805ACF78@sda21(r2) +/* 802101CC 0020D12C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 802101D0 0020D130 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802101D4 0020D134 40 80 00 14 */ bge lbl_802101E8 +/* 802101D8 0020D138 EC 01 00 24 */ fdivs f0, f1, f0 +/* 802101DC 0020D13C C0 22 B2 54 */ lfs f1, lbl_805ACF74@sda21(r2) +/* 802101E0 0020D140 EC 01 00 32 */ fmuls f0, f1, f0 +/* 802101E4 0020D144 48 00 00 18 */ b lbl_802101FC +lbl_802101E8: +/* 802101E8 0020D148 C0 02 B2 60 */ lfs f0, lbl_805ACF80@sda21(r2) +/* 802101EC 0020D14C C0 42 B2 5C */ lfs f2, lbl_805ACF7C@sda21(r2) +/* 802101F0 0020D150 EC 21 00 24 */ fdivs f1, f1, f0 +/* 802101F4 0020D154 C0 02 B2 54 */ lfs f0, lbl_805ACF74@sda21(r2) +/* 802101F8 0020D158 EC 02 00 7A */ fmadds f0, f2, f1, f0 +lbl_802101FC: +/* 802101FC 0020D15C FC 00 00 1E */ fctiwz f0, f0 +/* 80210200 0020D160 D8 01 00 08 */ stfd f0, 8(r1) +/* 80210204 0020D164 80 61 00 0C */ lwz r3, 0xc(r1) +/* 80210208 0020D168 38 21 00 10 */ addi r1, r1, 0x10 +/* 8021020C 0020D16C 4E 80 00 20 */ blr + +.global Render__13CEnvFxManagerFRC13CStateManager +Render__13CEnvFxManagerFRC13CStateManager: +/* 80210210 0020D170 94 21 FE C0 */ stwu r1, -0x140(r1) +/* 80210214 0020D174 7C 08 02 A6 */ mflr r0 +/* 80210218 0020D178 90 01 01 44 */ stw r0, 0x144(r1) +/* 8021021C 0020D17C 93 E1 01 3C */ stw r31, 0x13c(r1) +/* 80210220 0020D180 93 C1 01 38 */ stw r30, 0x138(r1) +/* 80210224 0020D184 93 A1 01 34 */ stw r29, 0x134(r1) +/* 80210228 0020D188 7C 9D 23 78 */ mr r29, r4 +/* 8021022C 0020D18C 93 81 01 30 */ stw r28, 0x130(r1) +/* 80210230 0020D190 7C 7C 1B 78 */ mr r28, r3 +/* 80210234 0020D194 80 64 08 50 */ lwz r3, 0x850(r4) +/* 80210238 0020D198 83 E3 00 C4 */ lwz r31, 0xc4(r3) +/* 8021023C 0020D19C 2C 1F 00 00 */ cmpwi r31, 0 +/* 80210240 0020D1A0 41 82 01 4C */ beq lbl_8021038C +/* 80210244 0020D1A4 80 7D 08 4C */ lwz r3, 0x84c(r29) +/* 80210248 0020D1A8 80 03 02 F8 */ lwz r0, 0x2f8(r3) +/* 8021024C 0020D1AC 2C 00 00 00 */ cmpwi r0, 0 +/* 80210250 0020D1B0 40 82 00 28 */ bne lbl_80210278 +/* 80210254 0020D1B4 80 7D 08 B8 */ lwz r3, 0x8b8(r29) +/* 80210258 0020D1B8 80 63 00 00 */ lwz r3, 0(r3) +/* 8021025C 0020D1BC 80 03 00 14 */ lwz r0, 0x14(r3) +/* 80210260 0020D1C0 2C 00 00 03 */ cmpwi r0, 3 +/* 80210264 0020D1C4 41 82 01 28 */ beq lbl_8021038C +/* 80210268 0020D1C8 2C 1F 00 01 */ cmpwi r31, 1 +/* 8021026C 0020D1CC 40 82 00 0C */ bne lbl_80210278 +/* 80210270 0020D1D0 2C 00 00 01 */ cmpwi r0, 1 +/* 80210274 0020D1D4 41 82 01 18 */ beq lbl_8021038C +lbl_80210278: +/* 80210278 0020D1D8 38 60 00 00 */ li r3, 0 +/* 8021027C 0020D1DC 48 0F B7 F5 */ bl SetCullMode__9CGraphicsF12ERglCullMode +/* 80210280 0020D1E0 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 80210284 0020D1E4 38 80 00 01 */ li r4, 1 +/* 80210288 0020D1E8 38 A0 00 00 */ li r5, 0 +/* 8021028C 0020D1EC 81 83 00 00 */ lwz r12, 0(r3) +/* 80210290 0020D1F0 81 8C 00 60 */ lwz r12, 0x60(r12) +/* 80210294 0020D1F4 7D 89 03 A6 */ mtctr r12 +/* 80210298 0020D1F8 4E 80 04 21 */ bctrl +/* 8021029C 0020D1FC 7F 84 E3 78 */ mr r4, r28 +/* 802102A0 0020D200 38 61 00 68 */ addi r3, r1, 0x68 +/* 802102A4 0020D204 48 00 09 51 */ bl GetParticleBoundsToWorldTransform__13CEnvFxManagerCFv +/* 802102A8 0020D208 38 61 00 F8 */ addi r3, r1, 0xf8 +/* 802102AC 0020D20C 38 81 00 68 */ addi r4, r1, 0x68 +/* 802102B0 0020D210 48 10 28 C5 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 802102B4 0020D214 38 61 00 38 */ addi r3, r1, 0x38 +/* 802102B8 0020D218 38 81 00 F8 */ addi r4, r1, 0xf8 +/* 802102BC 0020D21C 48 10 24 25 */ bl GetInverse__12CTransform4fCFv +/* 802102C0 0020D220 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 802102C4 0020D224 38 81 00 38 */ addi r4, r1, 0x38 +/* 802102C8 0020D228 48 10 28 AD */ bl __ct__12CTransform4fFRC12CTransform4f +/* 802102CC 0020D22C 80 9D 08 70 */ lwz r4, 0x870(r29) +/* 802102D0 0020D230 7F A5 EB 78 */ mr r5, r29 +/* 802102D4 0020D234 38 61 00 08 */ addi r3, r1, 8 +/* 802102D8 0020D238 4B DF A6 91 */ bl GetCurrentCameraTransform__14CCameraManagerCFRC13CStateManager +/* 802102DC 0020D23C 38 61 00 98 */ addi r3, r1, 0x98 +/* 802102E0 0020D240 38 81 00 08 */ addi r4, r1, 8 +/* 802102E4 0020D244 48 10 28 91 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 802102E8 0020D248 2C 1F 00 02 */ cmpwi r31, 2 +/* 802102EC 0020D24C 41 82 00 30 */ beq lbl_8021031C +/* 802102F0 0020D250 40 80 00 10 */ bge lbl_80210300 +/* 802102F4 0020D254 2C 1F 00 01 */ cmpwi r31, 1 +/* 802102F8 0020D258 40 80 00 14 */ bge lbl_8021030C +/* 802102FC 0020D25C 48 00 00 3C */ b lbl_80210338 +lbl_80210300: +/* 80210300 0020D260 2C 1F 00 04 */ cmpwi r31, 4 +/* 80210304 0020D264 40 80 00 34 */ bge lbl_80210338 +/* 80210308 0020D268 48 00 00 20 */ b lbl_80210328 +lbl_8021030C: +/* 8021030C 0020D26C 7F 83 E3 78 */ mr r3, r28 +/* 80210310 0020D270 7F A4 EB 78 */ mr r4, r29 +/* 80210314 0020D274 48 00 05 89 */ bl SetupSnowTevs__13CEnvFxManagerFR13CStateManager +/* 80210318 0020D278 48 00 00 20 */ b lbl_80210338 +lbl_8021031C: +/* 8021031C 0020D27C 7F 83 E3 78 */ mr r3, r28 +/* 80210320 0020D280 48 00 00 8D */ bl SetupRainTevs__13CEnvFxManagerFv +/* 80210324 0020D284 48 00 00 14 */ b lbl_80210338 +lbl_80210328: +/* 80210328 0020D288 7F 83 E3 78 */ mr r3, r28 +/* 8021032C 0020D28C 7F A5 EB 78 */ mr r5, r29 +/* 80210330 0020D290 38 81 00 C8 */ addi r4, r1, 0xc8 +/* 80210334 0020D294 48 00 02 11 */ bl SetupUnderwaterTevs__13CEnvFxManagerFRC12CTransform4fR13CStateManager +lbl_80210338: +/* 80210338 0020D298 3B DC 00 54 */ addi r30, r28, 0x54 +/* 8021033C 0020D29C 3B A0 00 00 */ li r29, 0 +/* 80210340 0020D2A0 48 00 00 28 */ b lbl_80210368 +lbl_80210344: +/* 80210344 0020D2A4 C0 3C 00 30 */ lfs f1, 0x30(r28) +/* 80210348 0020D2A8 7F C3 F3 78 */ mr r3, r30 +/* 8021034C 0020D2AC 7F E7 FB 78 */ mr r7, r31 +/* 80210350 0020D2B0 38 81 00 F8 */ addi r4, r1, 0xf8 +/* 80210354 0020D2B4 38 A1 00 C8 */ addi r5, r1, 0xc8 +/* 80210358 0020D2B8 38 C1 00 98 */ addi r6, r1, 0x98 +/* 8021035C 0020D2BC 48 00 28 01 */ bl Render__17CEnvFxManagerGridFRC12CTransform4fRC12CTransform4fRC12CTransform4ff10EEnvFxType +/* 80210360 0020D2C0 3B DE 00 2C */ addi r30, r30, 0x2c +/* 80210364 0020D2C4 3B BD 00 01 */ addi r29, r29, 1 +lbl_80210368: +/* 80210368 0020D2C8 80 1C 00 50 */ lwz r0, 0x50(r28) +/* 8021036C 0020D2CC 7C 1D 00 00 */ cmpw r29, r0 +/* 80210370 0020D2D0 41 80 FF D4 */ blt lbl_80210344 +/* 80210374 0020D2D4 38 60 00 01 */ li r3, 1 +/* 80210378 0020D2D8 48 0F B6 F9 */ bl SetCullMode__9CGraphicsF12ERglCullMode +/* 8021037C 0020D2DC 2C 1F 00 03 */ cmpwi r31, 3 +/* 80210380 0020D2E0 40 82 00 0C */ bne lbl_8021038C +/* 80210384 0020D2E4 7F 83 E3 78 */ mr r3, r28 +/* 80210388 0020D2E8 48 00 01 91 */ bl sub_80210518 +lbl_8021038C: +/* 8021038C 0020D2EC 80 01 01 44 */ lwz r0, 0x144(r1) +/* 80210390 0020D2F0 83 E1 01 3C */ lwz r31, 0x13c(r1) +/* 80210394 0020D2F4 83 C1 01 38 */ lwz r30, 0x138(r1) +/* 80210398 0020D2F8 83 A1 01 34 */ lwz r29, 0x134(r1) +/* 8021039C 0020D2FC 83 81 01 30 */ lwz r28, 0x130(r1) +/* 802103A0 0020D300 7C 08 03 A6 */ mtlr r0 +/* 802103A4 0020D304 38 21 01 40 */ addi r1, r1, 0x140 +/* 802103A8 0020D308 4E 80 00 20 */ blr + +.global SetupRainTevs__13CEnvFxManagerFv +SetupRainTevs__13CEnvFxManagerFv: +/* 802103AC 0020D30C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 802103B0 0020D310 7C 08 02 A6 */ mflr r0 +/* 802103B4 0020D314 3C 80 80 3D */ lis r4, lbl_803D2800@ha +/* 802103B8 0020D318 90 01 00 24 */ stw r0, 0x24(r1) +/* 802103BC 0020D31C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 802103C0 0020D320 7C 7F 1B 78 */ mr r31, r3 +/* 802103C4 0020D324 38 64 28 00 */ addi r3, r4, lbl_803D2800@l +/* 802103C8 0020D328 48 0F 7A 61 */ bl SetVtxDescv__3CGXFPC14_GXVtxDescList +/* 802103CC 0020D32C 38 60 00 06 */ li r3, 6 +/* 802103D0 0020D330 38 80 00 09 */ li r4, 9 +/* 802103D4 0020D334 38 A0 00 01 */ li r5, 1 +/* 802103D8 0020D338 38 C0 00 03 */ li r6, 3 +/* 802103DC 0020D33C 38 E0 00 08 */ li r7, 8 +/* 802103E0 0020D340 48 16 73 AD */ bl GXSetVtxAttrFmt +/* 802103E4 0020D344 38 60 00 06 */ li r3, 6 +/* 802103E8 0020D348 38 80 00 0B */ li r4, 0xb +/* 802103EC 0020D34C 38 A0 00 01 */ li r5, 1 +/* 802103F0 0020D350 38 C0 00 03 */ li r6, 3 +/* 802103F4 0020D354 38 E0 00 00 */ li r7, 0 +/* 802103F8 0020D358 48 16 73 95 */ bl GXSetVtxAttrFmt +/* 802103FC 0020D35C 38 60 00 06 */ li r3, 6 +/* 80210400 0020D360 38 80 00 06 */ li r4, 6 +/* 80210404 0020D364 48 0F 80 B5 */ bl SetLineWidth__3CGXFUc12_GXTexOffset +/* 80210408 0020D368 38 60 00 01 */ li r3, 1 +/* 8021040C 0020D36C 38 80 00 04 */ li r4, 4 +/* 80210410 0020D370 38 A0 00 01 */ li r5, 1 +/* 80210414 0020D374 38 C0 00 00 */ li r6, 0 +/* 80210418 0020D378 48 0F 84 B9 */ bl SetBlendMode__3CGXF12_GXBlendMode14_GXBlendFactor14_GXBlendFactor10_GXLogicOp +/* 8021041C 0020D37C 38 60 00 01 */ li r3, 1 +/* 80210420 0020D380 48 0F 8A 31 */ bl SetNumChans__3CGXFUc +/* 80210424 0020D384 38 60 00 00 */ li r3, 0 +/* 80210428 0020D388 38 80 00 01 */ li r4, 1 +/* 8021042C 0020D38C 38 A0 00 01 */ li r5, 1 +/* 80210430 0020D390 38 C0 00 01 */ li r6, 1 +/* 80210434 0020D394 38 E0 00 00 */ li r7, 0 +/* 80210438 0020D398 39 00 00 00 */ li r8, 0 +/* 8021043C 0020D39C 39 20 00 02 */ li r9, 2 +/* 80210440 0020D3A0 48 0F 88 8D */ bl SetChanCtrl__3CGXFQ23CGX10EChannelIdUc11_GXColorSrc11_GXColorSrc10_GXLightID12_GXDiffuseFn9_GXAttnFn +/* 80210444 0020D3A4 38 60 00 01 */ li r3, 1 +/* 80210448 0020D3A8 48 0F 89 CD */ bl SetNumTexGens__3CGXFUc +/* 8021044C 0020D3AC 38 60 00 01 */ li r3, 1 +/* 80210450 0020D3B0 48 0F 88 41 */ bl SetNumTevStages__3CGXFUc +/* 80210454 0020D3B4 38 60 00 00 */ li r3, 0 +/* 80210458 0020D3B8 38 80 00 01 */ li r4, 1 +/* 8021045C 0020D3BC 38 A0 00 00 */ li r5, 0 +/* 80210460 0020D3C0 38 C0 00 2D */ li r6, 0x2d +/* 80210464 0020D3C4 38 E0 00 00 */ li r7, 0 +/* 80210468 0020D3C8 39 00 00 7D */ li r8, 0x7d +/* 8021046C 0020D3CC 48 0F 82 61 */ bl SetTexCoordGen__3CGXF13_GXTexCoordID13_GXTexGenType12_GXTexGenSrc9_GXTexMtxUc11_GXPTTexMtx +/* 80210470 0020D3D0 38 60 00 00 */ li r3, 0 +/* 80210474 0020D3D4 38 80 00 00 */ li r4, 0 +/* 80210478 0020D3D8 38 A0 00 00 */ li r5, 0 +/* 8021047C 0020D3DC 38 C0 00 04 */ li r6, 4 +/* 80210480 0020D3E0 48 0F 84 CD */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 80210484 0020D3E4 38 60 00 00 */ li r3, 0 +/* 80210488 0020D3E8 48 0F 77 C9 */ bl SetStandardTevColorAlphaOp__3CGXF13_GXTevStageID +/* 8021048C 0020D3EC 38 60 00 00 */ li r3, 0 +/* 80210490 0020D3F0 38 80 00 0F */ li r4, 0xf +/* 80210494 0020D3F4 38 A0 00 0F */ li r5, 0xf +/* 80210498 0020D3F8 38 C0 00 0F */ li r6, 0xf +/* 8021049C 0020D3FC 38 E0 00 08 */ li r7, 8 +/* 802104A0 0020D400 48 0F 87 4D */ bl SetTevColorIn__3CGXF13_GXTevStageID14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg +/* 802104A4 0020D404 38 60 00 00 */ li r3, 0 +/* 802104A8 0020D408 38 80 00 07 */ li r4, 7 +/* 802104AC 0020D40C 38 A0 00 05 */ li r5, 5 +/* 802104B0 0020D410 38 C0 00 06 */ li r6, 6 +/* 802104B4 0020D414 38 E0 00 07 */ li r7, 7 +/* 802104B8 0020D418 48 0F 86 DD */ bl SetTevAlphaIn__3CGXF13_GXTevStageID14_GXTevAlphaArg14_GXTevAlphaArg14_GXTevAlphaArg14_GXTevAlphaArg +/* 802104BC 0020D41C 38 60 00 00 */ li r3, 0 +/* 802104C0 0020D420 38 80 00 1C */ li r4, 0x1c +/* 802104C4 0020D424 48 0F 84 D9 */ bl SetTevKAlphaSel__3CGXF13_GXTevStageID15_GXTevKAlphaSel +/* 802104C8 0020D428 C0 22 B2 64 */ lfs f1, lbl_805ACF84@sda21(r2) +/* 802104CC 0020D42C 38 61 00 08 */ addi r3, r1, 8 +/* 802104D0 0020D430 C0 82 B2 68 */ lfs f4, lbl_805ACF88@sda21(r2) +/* 802104D4 0020D434 FC 40 08 90 */ fmr f2, f1 +/* 802104D8 0020D438 FC 60 08 90 */ fmr f3, f1 +/* 802104DC 0020D43C 48 15 2F 11 */ bl __ct__6CColorFffff +/* 802104E0 0020D440 80 01 00 08 */ lwz r0, 8(r1) +/* 802104E4 0020D444 38 81 00 0C */ addi r4, r1, 0xc +/* 802104E8 0020D448 38 60 00 00 */ li r3, 0 +/* 802104EC 0020D44C 90 01 00 0C */ stw r0, 0xc(r1) +/* 802104F0 0020D450 48 0F 87 55 */ bl SetTevKColor__3CGXF14_GXTevKColorIDRC8_GXColor +/* 802104F4 0020D454 80 7F 00 48 */ lwz r3, 0x48(r31) +/* 802104F8 0020D458 38 80 00 00 */ li r4, 0 +/* 802104FC 0020D45C 38 A0 00 00 */ li r5, 0 +/* 80210500 0020D460 48 0F F2 3D */ bl Load__8CTextureCF11_GXTexMapIDQ28CTexture10EClampMode +/* 80210504 0020D464 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80210508 0020D468 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8021050C 0020D46C 7C 08 03 A6 */ mtlr r0 +/* 80210510 0020D470 38 21 00 20 */ addi r1, r1, 0x20 +/* 80210514 0020D474 4E 80 00 20 */ blr + +.global sub_80210518 +sub_80210518: +/* 80210518 0020D478 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8021051C 0020D47C 7C 08 02 A6 */ mflr r0 +/* 80210520 0020D480 38 60 00 01 */ li r3, 1 +/* 80210524 0020D484 38 80 00 00 */ li r4, 0 +/* 80210528 0020D488 90 01 00 14 */ stw r0, 0x14(r1) +/* 8021052C 0020D48C 38 A0 00 00 */ li r5, 0 +/* 80210530 0020D490 48 16 B3 01 */ bl GXSetTevSwapMode +/* 80210534 0020D494 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80210538 0020D498 7C 08 03 A6 */ mtlr r0 +/* 8021053C 0020D49C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80210540 0020D4A0 4E 80 00 20 */ blr + +.global SetupUnderwaterTevs__13CEnvFxManagerFRC12CTransform4fR13CStateManager +SetupUnderwaterTevs__13CEnvFxManagerFRC12CTransform4fR13CStateManager: +/* 80210544 0020D4A4 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 80210548 0020D4A8 7C 08 02 A6 */ mflr r0 +/* 8021054C 0020D4AC 3C C0 80 3D */ lis r6, lbl_803D27C8@ha +/* 80210550 0020D4B0 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 80210554 0020D4B4 BF 61 00 8C */ stmw r27, 0x8c(r1) +/* 80210558 0020D4B8 7C 7E 1B 78 */ mr r30, r3 +/* 8021055C 0020D4BC 38 66 27 C8 */ addi r3, r6, lbl_803D27C8@l +/* 80210560 0020D4C0 7C 9F 23 78 */ mr r31, r4 +/* 80210564 0020D4C4 7C BB 2B 78 */ mr r27, r5 +/* 80210568 0020D4C8 48 0F 78 C1 */ bl SetVtxDescv__3CGXFPC14_GXVtxDescList +/* 8021056C 0020D4CC 38 60 00 06 */ li r3, 6 +/* 80210570 0020D4D0 38 80 00 09 */ li r4, 9 +/* 80210574 0020D4D4 38 A0 00 01 */ li r5, 1 +/* 80210578 0020D4D8 38 C0 00 03 */ li r6, 3 +/* 8021057C 0020D4DC 38 E0 00 08 */ li r7, 8 +/* 80210580 0020D4E0 48 16 72 0D */ bl GXSetVtxAttrFmt +/* 80210584 0020D4E4 38 60 00 06 */ li r3, 6 +/* 80210588 0020D4E8 38 80 00 0D */ li r4, 0xd +/* 8021058C 0020D4EC 38 A0 00 01 */ li r5, 1 +/* 80210590 0020D4F0 38 C0 00 01 */ li r6, 1 +/* 80210594 0020D4F4 38 E0 00 01 */ li r7, 1 +/* 80210598 0020D4F8 48 16 71 F5 */ bl GXSetVtxAttrFmt +/* 8021059C 0020D4FC 38 60 00 01 */ li r3, 1 +/* 802105A0 0020D500 38 80 00 04 */ li r4, 4 +/* 802105A4 0020D504 38 A0 00 05 */ li r5, 5 +/* 802105A8 0020D508 38 C0 00 00 */ li r6, 0 +/* 802105AC 0020D50C 48 0F 83 25 */ bl SetBlendMode__3CGXF12_GXBlendMode14_GXBlendFactor14_GXBlendFactor10_GXLogicOp +/* 802105B0 0020D510 38 60 00 00 */ li r3, 0 +/* 802105B4 0020D514 48 0F 88 9D */ bl SetNumChans__3CGXFUc +/* 802105B8 0020D518 38 60 00 02 */ li r3, 2 +/* 802105BC 0020D51C 48 0F 88 59 */ bl SetNumTexGens__3CGXFUc +/* 802105C0 0020D520 38 60 00 02 */ li r3, 2 +/* 802105C4 0020D524 48 0F 86 CD */ bl SetNumTevStages__3CGXFUc +/* 802105C8 0020D528 38 60 00 00 */ li r3, 0 +/* 802105CC 0020D52C 38 80 00 01 */ li r4, 1 +/* 802105D0 0020D530 38 A0 00 04 */ li r5, 4 +/* 802105D4 0020D534 38 C0 00 3C */ li r6, 0x3c +/* 802105D8 0020D538 38 E0 00 00 */ li r7, 0 +/* 802105DC 0020D53C 39 00 00 7D */ li r8, 0x7d +/* 802105E0 0020D540 48 0F 80 ED */ bl SetTexCoordGen__3CGXF13_GXTexCoordID13_GXTexGenType12_GXTexGenSrc9_GXTexMtxUc11_GXPTTexMtx +/* 802105E4 0020D544 38 60 00 00 */ li r3, 0 +/* 802105E8 0020D548 38 80 00 00 */ li r4, 0 +/* 802105EC 0020D54C 38 A0 00 00 */ li r5, 0 +/* 802105F0 0020D550 38 C0 00 FF */ li r6, 0xff +/* 802105F4 0020D554 48 0F 83 59 */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 802105F8 0020D558 38 60 00 00 */ li r3, 0 +/* 802105FC 0020D55C 48 0F 76 55 */ bl SetStandardTevColorAlphaOp__3CGXF13_GXTevStageID +/* 80210600 0020D560 38 60 00 00 */ li r3, 0 +/* 80210604 0020D564 38 80 00 0F */ li r4, 0xf +/* 80210608 0020D568 38 A0 00 0F */ li r5, 0xf +/* 8021060C 0020D56C 38 C0 00 0F */ li r6, 0xf +/* 80210610 0020D570 38 E0 00 08 */ li r7, 8 +/* 80210614 0020D574 48 0F 85 D9 */ bl SetTevColorIn__3CGXF13_GXTevStageID14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg +/* 80210618 0020D578 38 60 00 00 */ li r3, 0 +/* 8021061C 0020D57C 38 80 00 07 */ li r4, 7 +/* 80210620 0020D580 38 A0 00 07 */ li r5, 7 +/* 80210624 0020D584 38 C0 00 07 */ li r6, 7 +/* 80210628 0020D588 38 E0 00 04 */ li r7, 4 +/* 8021062C 0020D58C 48 0F 85 69 */ bl SetTevAlphaIn__3CGXF13_GXTevStageID14_GXTevAlphaArg14_GXTevAlphaArg14_GXTevAlphaArg14_GXTevAlphaArg +/* 80210630 0020D590 80 9E 0C 50 */ lwz r4, 0xc50(r30) +/* 80210634 0020D594 7F C3 F3 78 */ mr r3, r30 +/* 80210638 0020D598 48 00 04 B5 */ bl BlankFirstSnowflakeMip__13CEnvFxManagerFR8CTexture +/* 8021063C 0020D59C 80 7E 0C 50 */ lwz r3, 0xc50(r30) +/* 80210640 0020D5A0 38 80 00 00 */ li r4, 0 +/* 80210644 0020D5A4 38 A0 00 01 */ li r5, 1 +/* 80210648 0020D5A8 48 0F F0 F5 */ bl Load__8CTextureCF11_GXTexMapIDQ28CTexture10EClampMode +/* 8021064C 0020D5AC 38 60 00 01 */ li r3, 1 +/* 80210650 0020D5B0 38 80 00 01 */ li r4, 1 +/* 80210654 0020D5B4 38 A0 00 00 */ li r5, 0 +/* 80210658 0020D5B8 38 C0 00 2D */ li r6, 0x2d +/* 8021065C 0020D5BC 38 E0 00 00 */ li r7, 0 +/* 80210660 0020D5C0 39 00 00 7D */ li r8, 0x7d +/* 80210664 0020D5C4 48 0F 80 69 */ bl SetTexCoordGen__3CGXF13_GXTexCoordID13_GXTexGenType12_GXTexGenSrc9_GXTexMtxUc11_GXPTTexMtx +/* 80210668 0020D5C8 38 60 00 01 */ li r3, 1 +/* 8021066C 0020D5CC 38 80 00 01 */ li r4, 1 +/* 80210670 0020D5D0 38 A0 00 01 */ li r5, 1 +/* 80210674 0020D5D4 38 C0 00 FF */ li r6, 0xff +/* 80210678 0020D5D8 48 0F 82 D5 */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 8021067C 0020D5DC C0 02 B2 6C */ lfs f0, lbl_805ACF8C@sda21(r2) +/* 80210680 0020D5E0 83 BB 08 10 */ lwz r29, 0x810(r27) +/* 80210684 0020D5E4 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 80210688 0020D5E8 AB 9D 20 08 */ lha r28, 0x2008(r29) +/* 8021068C 0020D5EC 48 00 00 F0 */ b lbl_8021077C +lbl_80210690: +/* 80210690 0020D5F0 7F A3 EB 78 */ mr r3, r29 +/* 80210694 0020D5F4 7F 84 E3 78 */ mr r4, r28 +/* 80210698 0020D5F8 4B DF F6 45 */ bl __vc__11CObjectListCFi +/* 8021069C 0020D5FC 7C 60 1B 78 */ mr r0, r3 +/* 802106A0 0020D600 38 61 00 10 */ addi r3, r1, 0x10 +/* 802106A4 0020D604 7C 1B 03 78 */ mr r27, r0 +/* 802106A8 0020D608 7F 64 DB 78 */ mr r4, r27 +/* 802106AC 0020D60C 4B E9 61 B5 */ bl "__ct__26TCastToPtr<12CScriptWater>FP7CEntity" +/* 802106B0 0020D610 80 03 00 04 */ lwz r0, 4(r3) +/* 802106B4 0020D614 28 00 00 00 */ cmplwi r0, 0 +/* 802106B8 0020D618 41 82 00 A8 */ beq lbl_80210760 +/* 802106BC 0020D61C 7F 64 DB 78 */ mr r4, r27 +/* 802106C0 0020D620 38 61 00 30 */ addi r3, r1, 0x30 +/* 802106C4 0020D624 81 9B 00 00 */ lwz r12, 0(r27) +/* 802106C8 0020D628 81 8C 00 40 */ lwz r12, 0x40(r12) +/* 802106CC 0020D62C 7D 89 03 A6 */ mtctr r12 +/* 802106D0 0020D630 4E 80 04 21 */ bctrl +/* 802106D4 0020D634 88 01 00 48 */ lbz r0, 0x48(r1) +/* 802106D8 0020D638 28 00 00 00 */ cmplwi r0, 0 +/* 802106DC 0020D63C 98 01 00 84 */ stb r0, 0x84(r1) +/* 802106E0 0020D640 41 82 00 3C */ beq lbl_8021071C +/* 802106E4 0020D644 34 61 00 6C */ addic. r3, r1, 0x6c +/* 802106E8 0020D648 41 82 00 34 */ beq lbl_8021071C +/* 802106EC 0020D64C C0 01 00 30 */ lfs f0, 0x30(r1) +/* 802106F0 0020D650 D0 03 00 00 */ stfs f0, 0(r3) +/* 802106F4 0020D654 C0 01 00 34 */ lfs f0, 0x34(r1) +/* 802106F8 0020D658 D0 03 00 04 */ stfs f0, 4(r3) +/* 802106FC 0020D65C C0 01 00 38 */ lfs f0, 0x38(r1) +/* 80210700 0020D660 D0 03 00 08 */ stfs f0, 8(r3) +/* 80210704 0020D664 C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 80210708 0020D668 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 8021070C 0020D66C C0 01 00 40 */ lfs f0, 0x40(r1) +/* 80210710 0020D670 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 80210714 0020D674 C0 01 00 44 */ lfs f0, 0x44(r1) +/* 80210718 0020D678 D0 03 00 14 */ stfs f0, 0x14(r3) +lbl_8021071C: +/* 8021071C 0020D67C 88 01 00 84 */ lbz r0, 0x84(r1) +/* 80210720 0020D680 38 60 00 00 */ li r3, 0 +/* 80210724 0020D684 98 61 00 48 */ stb r3, 0x48(r1) +/* 80210728 0020D688 28 00 00 00 */ cmplwi r0, 0 +/* 8021072C 0020D68C 41 82 00 2C */ beq lbl_80210758 +/* 80210730 0020D690 C0 21 00 80 */ lfs f1, 0x80(r1) +/* 80210734 0020D694 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 80210738 0020D698 D0 21 00 08 */ stfs f1, 8(r1) +/* 8021073C 0020D69C FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80210740 0020D6A0 40 80 00 0C */ bge lbl_8021074C +/* 80210744 0020D6A4 38 61 00 0C */ addi r3, r1, 0xc +/* 80210748 0020D6A8 48 00 00 08 */ b lbl_80210750 +lbl_8021074C: +/* 8021074C 0020D6AC 38 61 00 08 */ addi r3, r1, 8 +lbl_80210750: +/* 80210750 0020D6B0 C0 03 00 00 */ lfs f0, 0(r3) +/* 80210754 0020D6B4 D0 01 00 0C */ stfs f0, 0xc(r1) +lbl_80210758: +/* 80210758 0020D6B8 38 00 00 00 */ li r0, 0 +/* 8021075C 0020D6BC 98 01 00 84 */ stb r0, 0x84(r1) +lbl_80210760: +/* 80210760 0020D6C0 2C 1C FF FF */ cmpwi r28, -1 +/* 80210764 0020D6C4 41 82 00 14 */ beq lbl_80210778 +/* 80210768 0020D6C8 57 83 18 38 */ slwi r3, r28, 3 +/* 8021076C 0020D6CC 38 03 00 08 */ addi r0, r3, 8 +/* 80210770 0020D6D0 7F 9D 02 AE */ lhax r28, r29, r0 +/* 80210774 0020D6D4 48 00 00 08 */ b lbl_8021077C +lbl_80210778: +/* 80210778 0020D6D8 3B 80 FF FF */ li r28, -1 +lbl_8021077C: +/* 8021077C 0020D6DC 2C 1C FF FF */ cmpwi r28, -1 +/* 80210780 0020D6E0 40 82 FF 10 */ bne lbl_80210690 +/* 80210784 0020D6E4 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 80210788 0020D6E8 C0 61 00 0C */ lfs f3, 0xc(r1) +/* 8021078C 0020D6EC 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 80210790 0020D6F0 7F E4 FB 78 */ mr r4, r31 +/* 80210794 0020D6F4 C0 46 00 00 */ lfs f2, 0(r6) +/* 80210798 0020D6F8 38 61 00 24 */ addi r3, r1, 0x24 +/* 8021079C 0020D6FC C0 26 00 04 */ lfs f1, 4(r6) +/* 802107A0 0020D700 38 A1 00 18 */ addi r5, r1, 0x18 +/* 802107A4 0020D704 C0 06 00 08 */ lfs f0, 8(r6) +/* 802107A8 0020D708 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 802107AC 0020D70C EC 23 00 72 */ fmuls f1, f3, f1 +/* 802107B0 0020D710 EC 03 00 32 */ fmuls f0, f3, f0 +/* 802107B4 0020D714 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 802107B8 0020D718 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 802107BC 0020D71C D0 01 00 20 */ stfs f0, 0x20(r1) +/* 802107C0 0020D720 48 10 23 29 */ bl __ml__12CTransform4fCFRC9CVector3f +/* 802107C4 0020D724 3C 60 80 3D */ lis r3, lbl_803D27E0@ha +/* 802107C8 0020D728 C0 42 B2 74 */ lfs f2, lbl_805ACF94@sda21(r2) +/* 802107CC 0020D72C 39 83 27 E0 */ addi r12, r3, lbl_803D27E0@l +/* 802107D0 0020D730 C0 21 00 2C */ lfs f1, 0x2c(r1) +/* 802107D4 0020D734 C0 02 B2 70 */ lfs f0, lbl_805ACF90@sda21(r2) +/* 802107D8 0020D738 38 61 00 4C */ addi r3, r1, 0x4c +/* 802107DC 0020D73C 80 0C 00 1C */ lwz r0, 0x1c(r12) +/* 802107E0 0020D740 38 80 00 2D */ li r4, 0x2d +/* 802107E4 0020D744 81 6C 00 00 */ lwz r11, 0(r12) +/* 802107E8 0020D748 EC 02 00 7E */ fnmadds f0, f2, f1, f0 +/* 802107EC 0020D74C 90 01 00 68 */ stw r0, 0x68(r1) +/* 802107F0 0020D750 38 A0 00 01 */ li r5, 1 +/* 802107F4 0020D754 81 4C 00 04 */ lwz r10, 4(r12) +/* 802107F8 0020D758 81 2C 00 08 */ lwz r9, 8(r12) +/* 802107FC 0020D75C 81 0C 00 0C */ lwz r8, 0xc(r12) +/* 80210800 0020D760 80 EC 00 10 */ lwz r7, 0x10(r12) +/* 80210804 0020D764 80 CC 00 14 */ lwz r6, 0x14(r12) +/* 80210808 0020D768 80 0C 00 18 */ lwz r0, 0x18(r12) +/* 8021080C 0020D76C 91 61 00 4C */ stw r11, 0x4c(r1) +/* 80210810 0020D770 91 41 00 50 */ stw r10, 0x50(r1) +/* 80210814 0020D774 91 21 00 54 */ stw r9, 0x54(r1) +/* 80210818 0020D778 91 01 00 58 */ stw r8, 0x58(r1) +/* 8021081C 0020D77C 90 E1 00 5C */ stw r7, 0x5c(r1) +/* 80210820 0020D780 90 C1 00 60 */ stw r6, 0x60(r1) +/* 80210824 0020D784 90 01 00 64 */ stw r0, 0x64(r1) +/* 80210828 0020D788 D0 01 00 68 */ stfs f0, 0x68(r1) +/* 8021082C 0020D78C 48 16 BC 65 */ bl GXLoadTexMtxImm +/* 80210830 0020D790 38 60 00 01 */ li r3, 1 +/* 80210834 0020D794 48 0F 74 1D */ bl SetStandardTevColorAlphaOp__3CGXF13_GXTevStageID +/* 80210838 0020D798 38 60 00 01 */ li r3, 1 +/* 8021083C 0020D79C 38 80 00 0F */ li r4, 0xf +/* 80210840 0020D7A0 38 A0 00 0C */ li r5, 0xc +/* 80210844 0020D7A4 38 C0 00 00 */ li r6, 0 +/* 80210848 0020D7A8 38 E0 00 0F */ li r7, 0xf +/* 8021084C 0020D7AC 48 0F 83 A1 */ bl SetTevColorIn__3CGXF13_GXTevStageID14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg +/* 80210850 0020D7B0 38 60 00 01 */ li r3, 1 +/* 80210854 0020D7B4 38 80 00 07 */ li r4, 7 +/* 80210858 0020D7B8 38 A0 00 04 */ li r5, 4 +/* 8021085C 0020D7BC 38 C0 00 00 */ li r6, 0 +/* 80210860 0020D7C0 38 E0 00 07 */ li r7, 7 +/* 80210864 0020D7C4 48 0F 83 31 */ bl SetTevAlphaIn__3CGXF13_GXTevStageID14_GXTevAlphaArg14_GXTevAlphaArg14_GXTevAlphaArg14_GXTevAlphaArg +/* 80210868 0020D7C8 38 60 00 01 */ li r3, 1 +/* 8021086C 0020D7CC 38 80 00 01 */ li r4, 1 +/* 80210870 0020D7D0 38 A0 00 01 */ li r5, 1 +/* 80210874 0020D7D4 48 16 AF BD */ bl GXSetTevSwapMode +/* 80210878 0020D7D8 80 7E 00 48 */ lwz r3, 0x48(r30) +/* 8021087C 0020D7DC 38 80 00 01 */ li r4, 1 +/* 80210880 0020D7E0 38 A0 00 00 */ li r5, 0 +/* 80210884 0020D7E4 48 0F EE B9 */ bl Load__8CTextureCF11_GXTexMapIDQ28CTexture10EClampMode +/* 80210888 0020D7E8 BB 61 00 8C */ lmw r27, 0x8c(r1) +/* 8021088C 0020D7EC 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 80210890 0020D7F0 7C 08 03 A6 */ mtlr r0 +/* 80210894 0020D7F4 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 80210898 0020D7F8 4E 80 00 20 */ blr + +.global SetupSnowTevs__13CEnvFxManagerFR13CStateManager +SetupSnowTevs__13CEnvFxManagerFR13CStateManager: +/* 8021089C 0020D7FC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 802108A0 0020D800 7C 08 02 A6 */ mflr r0 +/* 802108A4 0020D804 90 01 00 24 */ stw r0, 0x24(r1) +/* 802108A8 0020D808 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 802108AC 0020D80C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 802108B0 0020D810 7C 7E 1B 78 */ mr r30, r3 +/* 802108B4 0020D814 83 E4 08 70 */ lwz r31, 0x870(r4) +/* 802108B8 0020D818 7F E3 FB 78 */ mr r3, r31 +/* 802108BC 0020D81C 4B DF B2 5D */ bl GetCurrentCamera__14CCameraManagerCFR13CStateManager +/* 802108C0 0020D820 48 13 96 ED */ bl White__6CColorFv +/* 802108C4 0020D824 80 03 00 00 */ lwz r0, 0(r3) +/* 802108C8 0020D828 90 01 00 0C */ stw r0, 0xc(r1) +/* 802108CC 0020D82C 80 1F 00 74 */ lwz r0, 0x74(r31) +/* 802108D0 0020D830 2C 00 00 00 */ cmpwi r0, 0 +/* 802108D4 0020D834 41 82 00 50 */ beq lbl_80210924 +/* 802108D8 0020D838 48 13 96 DD */ bl Black__6CColorFv +/* 802108DC 0020D83C 7C 65 1B 78 */ mr r5, r3 +/* 802108E0 0020D840 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 802108E4 0020D844 C0 22 B2 78 */ lfs f1, lbl_805ACF98@sda21(r2) +/* 802108E8 0020D848 38 80 00 04 */ li r4, 4 +/* 802108EC 0020D84C 81 83 00 00 */ lwz r12, 0(r3) +/* 802108F0 0020D850 C0 42 B2 7C */ lfs f2, lbl_805ACF9C@sda21(r2) +/* 802108F4 0020D854 81 8C 00 E0 */ lwz r12, 0xe0(r12) +/* 802108F8 0020D858 7D 89 03 A6 */ mtctr r12 +/* 802108FC 0020D85C 4E 80 04 21 */ bctrl +/* 80210900 0020D860 C0 22 B2 64 */ lfs f1, lbl_805ACF84@sda21(r2) +/* 80210904 0020D864 38 61 00 08 */ addi r3, r1, 8 +/* 80210908 0020D868 C0 82 B2 70 */ lfs f4, lbl_805ACF90@sda21(r2) +/* 8021090C 0020D86C FC 40 08 90 */ fmr f2, f1 +/* 80210910 0020D870 FC 60 08 90 */ fmr f3, f1 +/* 80210914 0020D874 48 15 2A D9 */ bl __ct__6CColorFffff +/* 80210918 0020D878 80 01 00 08 */ lwz r0, 8(r1) +/* 8021091C 0020D87C 90 01 00 0C */ stw r0, 0xc(r1) +/* 80210920 0020D880 48 00 00 2C */ b lbl_8021094C +lbl_80210924: +/* 80210924 0020D884 48 13 96 91 */ bl Black__6CColorFv +/* 80210928 0020D888 7C 65 1B 78 */ mr r5, r3 +/* 8021092C 0020D88C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 80210930 0020D890 C0 22 B2 80 */ lfs f1, lbl_805ACFA0@sda21(r2) +/* 80210934 0020D894 38 80 00 02 */ li r4, 2 +/* 80210938 0020D898 81 83 00 00 */ lwz r12, 0(r3) +/* 8021093C 0020D89C C0 42 B2 84 */ lfs f2, lbl_805ACFA4@sda21(r2) +/* 80210940 0020D8A0 81 8C 00 E0 */ lwz r12, 0xe0(r12) +/* 80210944 0020D8A4 7D 89 03 A6 */ mtctr r12 +/* 80210948 0020D8A8 4E 80 04 21 */ bctrl +lbl_8021094C: +/* 8021094C 0020D8AC 3C 60 80 3D */ lis r3, lbl_803D27B0@ha +/* 80210950 0020D8B0 38 63 27 B0 */ addi r3, r3, lbl_803D27B0@l +/* 80210954 0020D8B4 48 0F 74 D5 */ bl SetVtxDescv__3CGXFPC14_GXVtxDescList +/* 80210958 0020D8B8 38 60 00 06 */ li r3, 6 +/* 8021095C 0020D8BC 38 80 00 09 */ li r4, 9 +/* 80210960 0020D8C0 38 A0 00 01 */ li r5, 1 +/* 80210964 0020D8C4 38 C0 00 03 */ li r6, 3 +/* 80210968 0020D8C8 38 E0 00 08 */ li r7, 8 +/* 8021096C 0020D8CC 48 16 6E 21 */ bl GXSetVtxAttrFmt +/* 80210970 0020D8D0 38 60 00 06 */ li r3, 6 +/* 80210974 0020D8D4 38 80 00 0D */ li r4, 0xd +/* 80210978 0020D8D8 38 A0 00 01 */ li r5, 1 +/* 8021097C 0020D8DC 38 C0 00 01 */ li r6, 1 +/* 80210980 0020D8E0 38 E0 00 01 */ li r7, 1 +/* 80210984 0020D8E4 48 16 6E 09 */ bl GXSetVtxAttrFmt +/* 80210988 0020D8E8 38 60 00 01 */ li r3, 1 +/* 8021098C 0020D8EC 38 80 00 01 */ li r4, 1 +/* 80210990 0020D8F0 38 A0 00 01 */ li r5, 1 +/* 80210994 0020D8F4 38 C0 00 00 */ li r6, 0 +/* 80210998 0020D8F8 48 0F 7F 39 */ bl SetBlendMode__3CGXF12_GXBlendMode14_GXBlendFactor14_GXBlendFactor10_GXLogicOp +/* 8021099C 0020D8FC 38 60 00 00 */ li r3, 0 +/* 802109A0 0020D900 48 0F 84 B1 */ bl SetNumChans__3CGXFUc +/* 802109A4 0020D904 38 60 00 02 */ li r3, 2 +/* 802109A8 0020D908 48 0F 84 6D */ bl SetNumTexGens__3CGXFUc +/* 802109AC 0020D90C 38 60 00 02 */ li r3, 2 +/* 802109B0 0020D910 48 0F 82 E1 */ bl SetNumTevStages__3CGXFUc +/* 802109B4 0020D914 38 60 00 00 */ li r3, 0 +/* 802109B8 0020D918 38 80 00 01 */ li r4, 1 +/* 802109BC 0020D91C 38 A0 00 04 */ li r5, 4 +/* 802109C0 0020D920 38 C0 00 3C */ li r6, 0x3c +/* 802109C4 0020D924 38 E0 00 00 */ li r7, 0 +/* 802109C8 0020D928 39 00 00 7D */ li r8, 0x7d +/* 802109CC 0020D92C 48 0F 7D 01 */ bl SetTexCoordGen__3CGXF13_GXTexCoordID13_GXTexGenType12_GXTexGenSrc9_GXTexMtxUc11_GXPTTexMtx +/* 802109D0 0020D930 38 60 00 00 */ li r3, 0 +/* 802109D4 0020D934 38 80 00 00 */ li r4, 0 +/* 802109D8 0020D938 38 A0 00 00 */ li r5, 0 +/* 802109DC 0020D93C 38 C0 00 FF */ li r6, 0xff +/* 802109E0 0020D940 48 0F 7F 6D */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 802109E4 0020D944 38 60 00 00 */ li r3, 0 +/* 802109E8 0020D948 48 0F 72 69 */ bl SetStandardTevColorAlphaOp__3CGXF13_GXTevStageID +/* 802109EC 0020D94C 38 60 00 00 */ li r3, 0 +/* 802109F0 0020D950 38 80 00 0F */ li r4, 0xf +/* 802109F4 0020D954 38 A0 00 0E */ li r5, 0xe +/* 802109F8 0020D958 38 C0 00 08 */ li r6, 8 +/* 802109FC 0020D95C 38 E0 00 0F */ li r7, 0xf +/* 80210A00 0020D960 48 0F 81 ED */ bl SetTevColorIn__3CGXF13_GXTevStageID14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg +/* 80210A04 0020D964 38 60 00 00 */ li r3, 0 +/* 80210A08 0020D968 38 80 00 07 */ li r4, 7 +/* 80210A0C 0020D96C 38 A0 00 06 */ li r5, 6 +/* 80210A10 0020D970 38 C0 00 04 */ li r6, 4 +/* 80210A14 0020D974 38 E0 00 07 */ li r7, 7 +/* 80210A18 0020D978 48 0F 81 7D */ bl SetTevAlphaIn__3CGXF13_GXTevStageID14_GXTevAlphaArg14_GXTevAlphaArg14_GXTevAlphaArg14_GXTevAlphaArg +/* 80210A1C 0020D97C 38 81 00 0C */ addi r4, r1, 0xc +/* 80210A20 0020D980 38 60 00 00 */ li r3, 0 +/* 80210A24 0020D984 48 0F 82 21 */ bl SetTevKColor__3CGXF14_GXTevKColorIDRC8_GXColor +/* 80210A28 0020D988 38 60 00 00 */ li r3, 0 +/* 80210A2C 0020D98C 38 80 00 0C */ li r4, 0xc +/* 80210A30 0020D990 48 0F 7F B1 */ bl SetTevKColorSel__3CGXF13_GXTevStageID15_GXTevKColorSel +/* 80210A34 0020D994 38 60 00 00 */ li r3, 0 +/* 80210A38 0020D998 38 80 00 1C */ li r4, 0x1c +/* 80210A3C 0020D99C 48 0F 7F 61 */ bl SetTevKAlphaSel__3CGXF13_GXTevStageID15_GXTevKAlphaSel +/* 80210A40 0020D9A0 80 9E 0B 7C */ lwz r4, 0xb7c(r30) +/* 80210A44 0020D9A4 7F C3 F3 78 */ mr r3, r30 +/* 80210A48 0020D9A8 48 00 00 A5 */ bl BlankFirstSnowflakeMip__13CEnvFxManagerFR8CTexture +/* 80210A4C 0020D9AC 80 7E 0B 7C */ lwz r3, 0xb7c(r30) +/* 80210A50 0020D9B0 38 80 00 00 */ li r4, 0 +/* 80210A54 0020D9B4 38 A0 00 01 */ li r5, 1 +/* 80210A58 0020D9B8 48 0F EC E5 */ bl Load__8CTextureCF11_GXTexMapIDQ28CTexture10EClampMode +/* 80210A5C 0020D9BC 38 60 00 01 */ li r3, 1 +/* 80210A60 0020D9C0 38 80 00 01 */ li r4, 1 +/* 80210A64 0020D9C4 38 A0 00 00 */ li r5, 0 +/* 80210A68 0020D9C8 38 C0 00 2D */ li r6, 0x2d +/* 80210A6C 0020D9CC 38 E0 00 00 */ li r7, 0 +/* 80210A70 0020D9D0 39 00 00 7D */ li r8, 0x7d +/* 80210A74 0020D9D4 48 0F 7C 59 */ bl SetTexCoordGen__3CGXF13_GXTexCoordID13_GXTexGenType12_GXTexGenSrc9_GXTexMtxUc11_GXPTTexMtx +/* 80210A78 0020D9D8 38 60 00 01 */ li r3, 1 +/* 80210A7C 0020D9DC 38 80 00 01 */ li r4, 1 +/* 80210A80 0020D9E0 38 A0 00 01 */ li r5, 1 +/* 80210A84 0020D9E4 38 C0 00 FF */ li r6, 0xff +/* 80210A88 0020D9E8 48 0F 7E C5 */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 80210A8C 0020D9EC 38 60 00 01 */ li r3, 1 +/* 80210A90 0020D9F0 48 0F 71 C1 */ bl SetStandardTevColorAlphaOp__3CGXF13_GXTevStageID +/* 80210A94 0020D9F4 38 60 00 01 */ li r3, 1 +/* 80210A98 0020D9F8 38 80 00 0F */ li r4, 0xf +/* 80210A9C 0020D9FC 38 A0 00 08 */ li r5, 8 +/* 80210AA0 0020DA00 38 C0 00 00 */ li r6, 0 +/* 80210AA4 0020DA04 38 E0 00 0F */ li r7, 0xf +/* 80210AA8 0020DA08 48 0F 81 45 */ bl SetTevColorIn__3CGXF13_GXTevStageID14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg +/* 80210AAC 0020DA0C 38 60 00 01 */ li r3, 1 +/* 80210AB0 0020DA10 38 80 00 07 */ li r4, 7 +/* 80210AB4 0020DA14 38 A0 00 07 */ li r5, 7 +/* 80210AB8 0020DA18 38 C0 00 07 */ li r6, 7 +/* 80210ABC 0020DA1C 38 E0 00 04 */ li r7, 4 +/* 80210AC0 0020DA20 48 0F 80 D5 */ bl SetTevAlphaIn__3CGXF13_GXTevStageID14_GXTevAlphaArg14_GXTevAlphaArg14_GXTevAlphaArg14_GXTevAlphaArg +/* 80210AC4 0020DA24 80 7E 00 48 */ lwz r3, 0x48(r30) +/* 80210AC8 0020DA28 38 80 00 01 */ li r4, 1 +/* 80210ACC 0020DA2C 38 A0 00 00 */ li r5, 0 +/* 80210AD0 0020DA30 48 0F EC 6D */ bl Load__8CTextureCF11_GXTexMapIDQ28CTexture10EClampMode +/* 80210AD4 0020DA34 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80210AD8 0020DA38 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80210ADC 0020DA3C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80210AE0 0020DA40 7C 08 03 A6 */ mtlr r0 +/* 80210AE4 0020DA44 38 21 00 20 */ addi r1, r1, 0x20 +/* 80210AE8 0020DA48 4E 80 00 20 */ blr + +.global BlankFirstSnowflakeMip__13CEnvFxManagerFR8CTexture +BlankFirstSnowflakeMip__13CEnvFxManagerFR8CTexture: +/* 80210AEC 0020DA4C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80210AF0 0020DA50 7C 08 02 A6 */ mflr r0 +/* 80210AF4 0020DA54 90 01 00 14 */ stw r0, 0x14(r1) +/* 80210AF8 0020DA58 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80210AFC 0020DA5C 7C 9F 23 78 */ mr r31, r4 +/* 80210B00 0020DA60 93 C1 00 08 */ stw r30, 8(r1) +/* 80210B04 0020DA64 7C 7E 1B 78 */ mr r30, r3 +/* 80210B08 0020DA68 88 03 00 3C */ lbz r0, 0x3c(r3) +/* 80210B0C 0020DA6C 28 00 00 00 */ cmplwi r0, 0 +/* 80210B10 0020DA70 40 82 00 CC */ bne lbl_80210BDC +/* 80210B14 0020DA74 88 1F 00 0A */ lbz r0, 0xa(r31) +/* 80210B18 0020DA78 38 60 00 01 */ li r3, 1 +/* 80210B1C 0020DA7C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80210B20 0020DA80 7F E3 FB 78 */ mr r3, r31 +/* 80210B24 0020DA84 98 1F 00 0A */ stb r0, 0xa(r31) +/* 80210B28 0020DA88 38 80 00 00 */ li r4, 0 +/* 80210B2C 0020DA8C 48 0F DA A9 */ bl GetBitMapData__8CTextureFi +/* 80210B30 0020DA90 A8 9F 00 04 */ lha r4, 4(r31) +/* 80210B34 0020DA94 38 E0 00 00 */ li r7, 0 +/* 80210B38 0020DA98 A8 1F 00 06 */ lha r0, 6(r31) +/* 80210B3C 0020DA9C 88 BF 00 09 */ lbz r5, 9(r31) +/* 80210B40 0020DAA0 7C 04 01 D6 */ mullw r0, r4, r0 +/* 80210B44 0020DAA4 7C A4 07 74 */ extsb r4, r5 +/* 80210B48 0020DAA8 7C 04 01 D6 */ mullw r0, r4, r0 +/* 80210B4C 0020DAAC 7C 00 1E 70 */ srawi r0, r0, 3 +/* 80210B50 0020DAB0 7C C0 01 95 */ addze. r6, r0 +/* 80210B54 0020DAB4 40 81 00 78 */ ble lbl_80210BCC +/* 80210B58 0020DAB8 2C 06 00 08 */ cmpwi r6, 8 +/* 80210B5C 0020DABC 38 A6 FF F8 */ addi r5, r6, -8 +/* 80210B60 0020DAC0 40 81 00 48 */ ble lbl_80210BA8 +/* 80210B64 0020DAC4 38 05 00 07 */ addi r0, r5, 7 +/* 80210B68 0020DAC8 38 80 00 00 */ li r4, 0 +/* 80210B6C 0020DACC 54 00 E8 FE */ srwi r0, r0, 3 +/* 80210B70 0020DAD0 7C 09 03 A6 */ mtctr r0 +/* 80210B74 0020DAD4 2C 05 00 00 */ cmpwi r5, 0 +/* 80210B78 0020DAD8 40 81 00 30 */ ble lbl_80210BA8 +lbl_80210B7C: +/* 80210B7C 0020DADC 7C A3 3A 14 */ add r5, r3, r7 +/* 80210B80 0020DAE0 38 E7 00 08 */ addi r7, r7, 8 +/* 80210B84 0020DAE4 98 85 00 00 */ stb r4, 0(r5) +/* 80210B88 0020DAE8 98 85 00 01 */ stb r4, 1(r5) +/* 80210B8C 0020DAEC 98 85 00 02 */ stb r4, 2(r5) +/* 80210B90 0020DAF0 98 85 00 03 */ stb r4, 3(r5) +/* 80210B94 0020DAF4 98 85 00 04 */ stb r4, 4(r5) +/* 80210B98 0020DAF8 98 85 00 05 */ stb r4, 5(r5) +/* 80210B9C 0020DAFC 98 85 00 06 */ stb r4, 6(r5) +/* 80210BA0 0020DB00 98 85 00 07 */ stb r4, 7(r5) +/* 80210BA4 0020DB04 42 00 FF D8 */ bdnz lbl_80210B7C +lbl_80210BA8: +/* 80210BA8 0020DB08 7C 07 30 50 */ subf r0, r7, r6 +/* 80210BAC 0020DB0C 7C 63 3A 14 */ add r3, r3, r7 +/* 80210BB0 0020DB10 38 80 00 00 */ li r4, 0 +/* 80210BB4 0020DB14 7C 09 03 A6 */ mtctr r0 +/* 80210BB8 0020DB18 7C 07 30 00 */ cmpw r7, r6 +/* 80210BBC 0020DB1C 40 80 00 10 */ bge lbl_80210BCC +lbl_80210BC0: +/* 80210BC0 0020DB20 98 83 00 00 */ stb r4, 0(r3) +/* 80210BC4 0020DB24 38 63 00 01 */ addi r3, r3, 1 +/* 80210BC8 0020DB28 42 00 FF F8 */ bdnz lbl_80210BC0 +lbl_80210BCC: +/* 80210BCC 0020DB2C 7F E3 FB 78 */ mr r3, r31 +/* 80210BD0 0020DB30 48 0F DD 4D */ bl UnLock__8CTextureFv +/* 80210BD4 0020DB34 38 00 00 01 */ li r0, 1 +/* 80210BD8 0020DB38 98 1E 00 3C */ stb r0, 0x3c(r30) +lbl_80210BDC: +/* 80210BDC 0020DB3C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80210BE0 0020DB40 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80210BE4 0020DB44 83 C1 00 08 */ lwz r30, 8(r1) +/* 80210BE8 0020DB48 7C 08 03 A6 */ mtlr r0 +/* 80210BEC 0020DB4C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80210BF0 0020DB50 4E 80 00 20 */ blr + +.global GetParticleBoundsToWorldTransform__13CEnvFxManagerCFv +GetParticleBoundsToWorldTransform__13CEnvFxManagerCFv: +/* 80210BF4 0020DB54 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 80210BF8 0020DB58 7C 08 02 A6 */ mflr r0 +/* 80210BFC 0020DB5C C0 02 B2 88 */ lfs f0, lbl_805ACFA8@sda21(r2) +/* 80210C00 0020DB60 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 80210C04 0020DB64 93 E1 00 EC */ stw r31, 0xec(r1) +/* 80210C08 0020DB68 7C 9F 23 78 */ mr r31, r4 +/* 80210C0C 0020DB6C 93 C1 00 E8 */ stw r30, 0xe8(r1) +/* 80210C10 0020DB70 7C 7E 1B 78 */ mr r30, r3 +/* 80210C14 0020DB74 38 61 00 08 */ addi r3, r1, 8 +/* 80210C18 0020DB78 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 80210C1C 0020DB7C D0 01 00 18 */ stfs f0, 0x18(r1) +/* 80210C20 0020DB80 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 80210C24 0020DB84 48 00 1E F5 */ bl GetParticleBoundsToWorldScale__13CEnvFxManagerCFv +/* 80210C28 0020DB88 38 61 00 20 */ addi r3, r1, 0x20 +/* 80210C2C 0020DB8C 38 81 00 08 */ addi r4, r1, 8 +/* 80210C30 0020DB90 48 10 25 95 */ bl Scale__12CTransform4fFRC9CVector3f +/* 80210C34 0020DB94 38 61 00 50 */ addi r3, r1, 0x50 +/* 80210C38 0020DB98 38 81 00 14 */ addi r4, r1, 0x14 +/* 80210C3C 0020DB9C 48 10 25 05 */ bl Translate__12CTransform4fFRC9CVector3f +/* 80210C40 0020DBA0 38 61 00 80 */ addi r3, r1, 0x80 +/* 80210C44 0020DBA4 38 9F 00 18 */ addi r4, r31, 0x18 +/* 80210C48 0020DBA8 48 10 24 F9 */ bl Translate__12CTransform4fFRC9CVector3f +/* 80210C4C 0020DBAC 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 80210C50 0020DBB0 38 81 00 80 */ addi r4, r1, 0x80 +/* 80210C54 0020DBB4 38 A1 00 50 */ addi r5, r1, 0x50 +/* 80210C58 0020DBB8 48 10 1C F9 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80210C5C 0020DBBC 7F C3 F3 78 */ mr r3, r30 +/* 80210C60 0020DBC0 38 81 00 B0 */ addi r4, r1, 0xb0 +/* 80210C64 0020DBC4 38 A1 00 20 */ addi r5, r1, 0x20 +/* 80210C68 0020DBC8 48 10 1C E9 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80210C6C 0020DBCC 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 80210C70 0020DBD0 83 E1 00 EC */ lwz r31, 0xec(r1) +/* 80210C74 0020DBD4 83 C1 00 E8 */ lwz r30, 0xe8(r1) +/* 80210C78 0020DBD8 7C 08 03 A6 */ mtlr r0 +/* 80210C7C 0020DBDC 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 80210C80 0020DBE0 4E 80 00 20 */ blr + +.global SetSplashEffectRate__13CEnvFxManagerFfR13CStateManager +SetSplashEffectRate__13CEnvFxManagerFfR13CStateManager: +/* 80210C84 0020DBE4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80210C88 0020DBE8 7C 08 02 A6 */ mflr r0 +/* 80210C8C 0020DBEC 90 01 00 24 */ stw r0, 0x24(r1) +/* 80210C90 0020DBF0 DB E1 00 18 */ stfd f31, 0x18(r1) +/* 80210C94 0020DBF4 FF E0 08 90 */ fmr f31, f1 +/* 80210C98 0020DBF8 A0 03 0B 68 */ lhz r0, 0xb68(r3) +/* 80210C9C 0020DBFC 7C 83 23 78 */ mr r3, r4 +/* 80210CA0 0020DC00 38 81 00 08 */ addi r4, r1, 8 +/* 80210CA4 0020DC04 B0 01 00 08 */ sth r0, 8(r1) +/* 80210CA8 0020DC08 4B E3 B8 CD */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80210CAC 0020DC0C 7C 64 1B 78 */ mr r4, r3 +/* 80210CB0 0020DC10 38 61 00 0C */ addi r3, r1, 0xc +/* 80210CB4 0020DC14 4B E9 C7 49 */ bl "__ct__33TCastToPtr<19CHUDBillboardEffect>FP7CEntity" +/* 80210CB8 0020DC18 80 63 00 04 */ lwz r3, 4(r3) +/* 80210CBC 0020DC1C 28 03 00 00 */ cmplwi r3, 0 +/* 80210CC0 0020DC20 41 82 00 28 */ beq lbl_80210CE8 +/* 80210CC4 0020DC24 88 03 01 04 */ lbz r0, 0x104(r3) +/* 80210CC8 0020DC28 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 80210CCC 0020DC2C 41 82 00 1C */ beq lbl_80210CE8 +/* 80210CD0 0020DC30 80 63 00 E8 */ lwz r3, 0xe8(r3) +/* 80210CD4 0020DC34 FC 20 F8 90 */ fmr f1, f31 +/* 80210CD8 0020DC38 81 83 00 00 */ lwz r12, 0(r3) +/* 80210CDC 0020DC3C 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80210CE0 0020DC40 7D 89 03 A6 */ mtctr r12 +/* 80210CE4 0020DC44 4E 80 04 21 */ bctrl +lbl_80210CE8: +/* 80210CE8 0020DC48 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80210CEC 0020DC4C CB E1 00 18 */ lfd f31, 0x18(r1) +/* 80210CF0 0020DC50 7C 08 03 A6 */ mtlr r0 +/* 80210CF4 0020DC54 38 21 00 20 */ addi r1, r1, 0x20 +/* 80210CF8 0020DC58 4E 80 00 20 */ blr + +.global UpdateVisorSplash__13CEnvFxManagerFR13CStateManagerfRC12CTransform4f +UpdateVisorSplash__13CEnvFxManagerFR13CStateManagerfRC12CTransform4f: +/* 80210CFC 0020DC5C 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 80210D00 0020DC60 7C 08 02 A6 */ mflr r0 +/* 80210D04 0020DC64 90 01 00 84 */ stw r0, 0x84(r1) +/* 80210D08 0020DC68 DB E1 00 70 */ stfd f31, 0x70(r1) +/* 80210D0C 0020DC6C F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 +/* 80210D10 0020DC70 DB C1 00 60 */ stfd f30, 0x60(r1) +/* 80210D14 0020DC74 F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 +/* 80210D18 0020DC78 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 80210D1C 0020DC7C 93 C1 00 58 */ stw r30, 0x58(r1) +/* 80210D20 0020DC80 93 A1 00 54 */ stw r29, 0x54(r1) +/* 80210D24 0020DC84 93 81 00 50 */ stw r28, 0x50(r1) +/* 80210D28 0020DC88 7C 7E 1B 78 */ mr r30, r3 +/* 80210D2C 0020DC8C 7C 9F 23 78 */ mr r31, r4 +/* 80210D30 0020DC90 A0 63 0B 68 */ lhz r3, 0xb68(r3) +/* 80210D34 0020DC94 7C BC 2B 78 */ mr r28, r5 +/* 80210D38 0020DC98 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80210D3C 0020DC9C 80 84 08 50 */ lwz r4, 0x850(r4) +/* 80210D40 0020DCA0 7C 03 00 40 */ cmplw r3, r0 +/* 80210D44 0020DCA4 83 A4 00 C4 */ lwz r29, 0xc4(r4) +/* 80210D48 0020DCA8 41 82 00 48 */ beq lbl_80210D90 +/* 80210D4C 0020DCAC A0 1E 0B 68 */ lhz r0, 0xb68(r30) +/* 80210D50 0020DCB0 7F E3 FB 78 */ mr r3, r31 +/* 80210D54 0020DCB4 38 81 00 08 */ addi r4, r1, 8 +/* 80210D58 0020DCB8 B0 01 00 08 */ sth r0, 8(r1) +/* 80210D5C 0020DCBC 4B E3 B8 19 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80210D60 0020DCC0 7C 64 1B 78 */ mr r4, r3 +/* 80210D64 0020DCC4 38 61 00 1C */ addi r3, r1, 0x1c +/* 80210D68 0020DCC8 4B E9 C6 95 */ bl "__ct__33TCastToPtr<19CHUDBillboardEffect>FP7CEntity" +/* 80210D6C 0020DCCC 80 83 00 04 */ lwz r4, 4(r3) +/* 80210D70 0020DCD0 28 04 00 00 */ cmplwi r4, 0 +/* 80210D74 0020DCD4 41 82 00 1C */ beq lbl_80210D90 +/* 80210D78 0020DCD8 80 1F 08 CC */ lwz r0, 0x8cc(r31) +/* 80210D7C 0020DCDC 7F E3 FB 78 */ mr r3, r31 +/* 80210D80 0020DCE0 38 A1 00 14 */ addi r5, r1, 0x14 +/* 80210D84 0020DCE4 90 01 00 10 */ stw r0, 0x10(r1) +/* 80210D88 0020DCE8 90 01 00 14 */ stw r0, 0x14(r1) +/* 80210D8C 0020DCEC 4B E3 44 ED */ bl SetActorAreaId__13CStateManagerFR6CActor7TAreaId +lbl_80210D90: +/* 80210D90 0020DCF0 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 80210D94 0020DCF4 C0 3C 00 14 */ lfs f1, 0x14(r28) +/* 80210D98 0020DCF8 38 63 66 F4 */ addi r3, r3, lbl_805A66F4@l +/* 80210D9C 0020DCFC C0 7C 00 04 */ lfs f3, 4(r28) +/* 80210DA0 0020DD00 C0 03 00 04 */ lfs f0, 4(r3) +/* 80210DA4 0020DD04 C0 43 00 00 */ lfs f2, 0(r3) +/* 80210DA8 0020DD08 EC 01 00 32 */ fmuls f0, f1, f0 +/* 80210DAC 0020DD0C C0 9C 00 24 */ lfs f4, 0x24(r28) +/* 80210DB0 0020DD10 C0 23 00 08 */ lfs f1, 8(r3) +/* 80210DB4 0020DD14 EC 03 00 BA */ fmadds f0, f3, f2, f0 +/* 80210DB8 0020DD18 EC 44 00 7A */ fmadds f2, f4, f1, f0 +/* 80210DBC 0020DD1C D0 41 00 18 */ stfs f2, 0x18(r1) +/* 80210DC0 0020DD20 88 1E 00 24 */ lbz r0, 0x24(r30) +/* 80210DC4 0020DD24 28 00 00 00 */ cmplwi r0, 0 +/* 80210DC8 0020DD28 41 82 00 2C */ beq lbl_80210DF4 +/* 80210DCC 0020DD2C C0 0D 94 D8 */ lfs f0, lbl_805A8098@sda21(r13) +/* 80210DD0 0020DD30 FC 00 10 40 */ fcmpo cr0, f0, f2 +/* 80210DD4 0020DD34 40 80 00 0C */ bge lbl_80210DE0 +/* 80210DD8 0020DD38 38 61 00 18 */ addi r3, r1, 0x18 +/* 80210DDC 0020DD3C 48 00 00 08 */ b lbl_80210DE4 +lbl_80210DE0: +/* 80210DE0 0020DD40 38 6D 94 D8 */ addi r3, r13, lbl_805A8098@sda21 +lbl_80210DE4: +/* 80210DE4 0020DD44 C0 3E 00 30 */ lfs f1, 0x30(r30) +/* 80210DE8 0020DD48 C0 03 00 00 */ lfs f0, 0(r3) +/* 80210DEC 0020DD4C EF E1 00 32 */ fmuls f31, f1, f0 +/* 80210DF0 0020DD50 48 00 00 08 */ b lbl_80210DF8 +lbl_80210DF4: +/* 80210DF4 0020DD54 C3 E2 B2 78 */ lfs f31, lbl_805ACF98@sda21(r2) +lbl_80210DF8: +/* 80210DF8 0020DD58 28 00 00 00 */ cmplwi r0, 0 +/* 80210DFC 0020DD5C C3 C2 B2 78 */ lfs f30, lbl_805ACF98@sda21(r2) +/* 80210E00 0020DD60 41 82 00 D0 */ beq lbl_80210ED0 +/* 80210E04 0020DD64 C0 02 B2 8C */ lfs f0, lbl_805ACFAC@sda21(r2) +/* 80210E08 0020DD68 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80210E0C 0020DD6C 4C 41 13 82 */ cror 2, 1, 2 +/* 80210E10 0020DD70 40 82 00 C0 */ bne lbl_80210ED0 +/* 80210E14 0020DD74 80 BF 08 4C */ lwz r5, 0x84c(r31) +/* 80210E18 0020DD78 38 61 00 30 */ addi r3, r1, 0x30 +/* 80210E1C 0020DD7C 38 85 00 34 */ addi r4, r5, 0x34 +/* 80210E20 0020DD80 38 A5 01 38 */ addi r5, r5, 0x138 +/* 80210E24 0020DD84 48 10 1C 01 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 80210E28 0020DD88 C0 41 00 30 */ lfs f2, 0x30(r1) +/* 80210E2C 0020DD8C 38 61 00 3C */ addi r3, r1, 0x3c +/* 80210E30 0020DD90 C0 21 00 34 */ lfs f1, 0x34(r1) +/* 80210E34 0020DD94 C0 01 00 38 */ lfs f0, 0x38(r1) +/* 80210E38 0020DD98 D0 41 00 3C */ stfs f2, 0x3c(r1) +/* 80210E3C 0020DD9C D0 21 00 40 */ stfs f1, 0x40(r1) +/* 80210E40 0020DDA0 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 80210E44 0020DDA4 48 10 38 B5 */ bl CanBeNormalized__9CVector3fCFv +/* 80210E48 0020DDA8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80210E4C 0020DDAC 41 82 00 84 */ beq lbl_80210ED0 +/* 80210E50 0020DDB0 38 61 00 3C */ addi r3, r1, 0x3c +/* 80210E54 0020DDB4 48 10 3A 65 */ bl Magnitude__9CVector3fCFv +/* 80210E58 0020DDB8 C0 42 B2 64 */ lfs f2, lbl_805ACF84@sda21(r2) +/* 80210E5C 0020DDBC 3C 60 80 5A */ lis r3, lbl_805A6724@ha +/* 80210E60 0020DDC0 38 63 67 24 */ addi r3, r3, lbl_805A6724@l +/* 80210E64 0020DDC4 C0 02 B2 90 */ lfs f0, lbl_805ACFB0@sda21(r2) +/* 80210E68 0020DDC8 ED 02 08 24 */ fdivs f8, f2, f1 +/* 80210E6C 0020DDCC C0 81 00 40 */ lfs f4, 0x40(r1) +/* 80210E70 0020DDD0 C0 A1 00 3C */ lfs f5, 0x3c(r1) +/* 80210E74 0020DDD4 C0 C1 00 44 */ lfs f6, 0x44(r1) +/* 80210E78 0020DDD8 C0 43 00 04 */ lfs f2, 4(r3) +/* 80210E7C 0020DDDC C0 63 00 00 */ lfs f3, 0(r3) +/* 80210E80 0020DDE0 EC E8 01 32 */ fmuls f7, f8, f4 +/* 80210E84 0020DDE4 C0 83 00 08 */ lfs f4, 8(r3) +/* 80210E88 0020DDE8 EC 21 00 24 */ fdivs f1, f1, f0 +/* 80210E8C 0020DDEC C0 0D 94 DC */ lfs f0, lbl_805A809C@sda21(r13) +/* 80210E90 0020DDF0 D0 E1 00 28 */ stfs f7, 0x28(r1) +/* 80210E94 0020DDF4 EC A8 01 72 */ fmuls f5, f8, f5 +/* 80210E98 0020DDF8 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 80210E9C 0020DDFC EC 47 00 B2 */ fmuls f2, f7, f2 +/* 80210EA0 0020DE00 EC C8 01 B2 */ fmuls f6, f8, f6 +/* 80210EA4 0020DE04 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80210EA8 0020DE08 D0 A1 00 24 */ stfs f5, 0x24(r1) +/* 80210EAC 0020DE0C EC 05 10 FA */ fmadds f0, f5, f3, f2 +/* 80210EB0 0020DE10 D0 C1 00 2C */ stfs f6, 0x2c(r1) +/* 80210EB4 0020DE14 EC 26 01 3A */ fmadds f1, f6, f4, f0 +/* 80210EB8 0020DE18 40 80 00 0C */ bge lbl_80210EC4 +/* 80210EBC 0020DE1C 38 61 00 0C */ addi r3, r1, 0xc +/* 80210EC0 0020DE20 48 00 00 08 */ b lbl_80210EC8 +lbl_80210EC4: +/* 80210EC4 0020DE24 38 6D 94 DC */ addi r3, r13, lbl_805A809C@sda21 +lbl_80210EC8: +/* 80210EC8 0020DE28 C0 03 00 00 */ lfs f0, 0(r3) +/* 80210ECC 0020DE2C EF C0 00 72 */ fmuls f30, f0, f1 +lbl_80210ED0: +/* 80210ED0 0020DE30 2C 1D 00 02 */ cmpwi r29, 2 +/* 80210ED4 0020DE34 C0 3E 0B 54 */ lfs f1, 0xb54(r30) +/* 80210ED8 0020DE38 40 82 00 0C */ bne lbl_80210EE4 +/* 80210EDC 0020DE3C EC 1F F0 2A */ fadds f0, f31, f30 +/* 80210EE0 0020DE40 48 00 00 08 */ b lbl_80210EE8 +lbl_80210EE4: +/* 80210EE4 0020DE44 C0 02 B2 78 */ lfs f0, lbl_805ACF98@sda21(r2) +lbl_80210EE8: +/* 80210EE8 0020DE48 EC 21 00 2A */ fadds f1, f1, f0 +/* 80210EEC 0020DE4C 7F C3 F3 78 */ mr r3, r30 +/* 80210EF0 0020DE50 7F E4 FB 78 */ mr r4, r31 +/* 80210EF4 0020DE54 4B FF FD 91 */ bl SetSplashEffectRate__13CEnvFxManagerFfR13CStateManager +/* 80210EF8 0020DE58 C0 02 B2 78 */ lfs f0, lbl_805ACF98@sda21(r2) +/* 80210EFC 0020DE5C D0 1E 0B 54 */ stfs f0, 0xb54(r30) +/* 80210F00 0020DE60 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 +/* 80210F04 0020DE64 CB E1 00 70 */ lfd f31, 0x70(r1) +/* 80210F08 0020DE68 E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 +/* 80210F0C 0020DE6C CB C1 00 60 */ lfd f30, 0x60(r1) +/* 80210F10 0020DE70 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 80210F14 0020DE74 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 80210F18 0020DE78 83 A1 00 54 */ lwz r29, 0x54(r1) +/* 80210F1C 0020DE7C 80 01 00 84 */ lwz r0, 0x84(r1) +/* 80210F20 0020DE80 83 81 00 50 */ lwz r28, 0x50(r1) +/* 80210F24 0020DE84 7C 08 03 A6 */ mtlr r0 +/* 80210F28 0020DE88 38 21 00 80 */ addi r1, r1, 0x80 +/* 80210F2C 0020DE8C 4E 80 00 20 */ blr + +.global UpdateUnderwaterParticles__13CEnvFxManagerFRC15CVectorFixed8_8 +UpdateUnderwaterParticles__13CEnvFxManagerFRC15CVectorFixed8_8: +/* 80210F30 0020DE90 80 A3 00 50 */ lwz r5, 0x50(r3) +/* 80210F34 0020DE94 A8 C4 00 04 */ lha r6, 4(r4) +/* 80210F38 0020DE98 39 05 FF FF */ addi r8, r5, -1 +/* 80210F3C 0020DE9C 1C 08 00 2C */ mulli r0, r8, 0x2c +/* 80210F40 0020DEA0 7C A3 02 14 */ add r5, r3, r0 +/* 80210F44 0020DEA4 38 A5 00 54 */ addi r5, r5, 0x54 +/* 80210F48 0020DEA8 48 00 01 3C */ b lbl_80211084 +lbl_80210F4C: +/* 80210F4C 0020DEAC 80 65 00 20 */ lwz r3, 0x20(r5) +/* 80210F50 0020DEB0 34 63 FF FF */ addic. r3, r3, -1 +/* 80210F54 0020DEB4 1C 83 00 06 */ mulli r4, r3, 6 +/* 80210F58 0020DEB8 38 63 00 01 */ addi r3, r3, 1 +/* 80210F5C 0020DEBC 41 80 01 20 */ blt lbl_8021107C +/* 80210F60 0020DEC0 54 60 E8 FF */ rlwinm. r0, r3, 0x1d, 3, 0x1f +/* 80210F64 0020DEC4 7C 09 03 A6 */ mtctr r0 +/* 80210F68 0020DEC8 41 82 00 F0 */ beq lbl_80211058 +lbl_80210F6C: +/* 80210F6C 0020DECC 80 05 00 28 */ lwz r0, 0x28(r5) +/* 80210F70 0020DED0 7C E0 22 14 */ add r7, r0, r4 +/* 80210F74 0020DED4 38 84 FF FA */ addi r4, r4, -6 +/* 80210F78 0020DED8 A8 07 00 04 */ lha r0, 4(r7) +/* 80210F7C 0020DEDC 7C 06 02 14 */ add r0, r6, r0 +/* 80210F80 0020DEE0 54 00 04 BE */ clrlwi r0, r0, 0x12 +/* 80210F84 0020DEE4 B0 07 00 04 */ sth r0, 4(r7) +/* 80210F88 0020DEE8 80 05 00 28 */ lwz r0, 0x28(r5) +/* 80210F8C 0020DEEC 7C E0 22 14 */ add r7, r0, r4 +/* 80210F90 0020DEF0 38 84 FF FA */ addi r4, r4, -6 +/* 80210F94 0020DEF4 A8 07 00 04 */ lha r0, 4(r7) +/* 80210F98 0020DEF8 7C 06 02 14 */ add r0, r6, r0 +/* 80210F9C 0020DEFC 54 00 04 BE */ clrlwi r0, r0, 0x12 +/* 80210FA0 0020DF00 B0 07 00 04 */ sth r0, 4(r7) +/* 80210FA4 0020DF04 80 05 00 28 */ lwz r0, 0x28(r5) +/* 80210FA8 0020DF08 7C E0 22 14 */ add r7, r0, r4 +/* 80210FAC 0020DF0C 38 84 FF FA */ addi r4, r4, -6 +/* 80210FB0 0020DF10 A8 07 00 04 */ lha r0, 4(r7) +/* 80210FB4 0020DF14 7C 06 02 14 */ add r0, r6, r0 +/* 80210FB8 0020DF18 54 00 04 BE */ clrlwi r0, r0, 0x12 +/* 80210FBC 0020DF1C B0 07 00 04 */ sth r0, 4(r7) +/* 80210FC0 0020DF20 80 05 00 28 */ lwz r0, 0x28(r5) +/* 80210FC4 0020DF24 7C E0 22 14 */ add r7, r0, r4 +/* 80210FC8 0020DF28 38 84 FF FA */ addi r4, r4, -6 +/* 80210FCC 0020DF2C A8 07 00 04 */ lha r0, 4(r7) +/* 80210FD0 0020DF30 7C 06 02 14 */ add r0, r6, r0 +/* 80210FD4 0020DF34 54 00 04 BE */ clrlwi r0, r0, 0x12 +/* 80210FD8 0020DF38 B0 07 00 04 */ sth r0, 4(r7) +/* 80210FDC 0020DF3C 80 05 00 28 */ lwz r0, 0x28(r5) +/* 80210FE0 0020DF40 7C E0 22 14 */ add r7, r0, r4 +/* 80210FE4 0020DF44 38 84 FF FA */ addi r4, r4, -6 +/* 80210FE8 0020DF48 A8 07 00 04 */ lha r0, 4(r7) +/* 80210FEC 0020DF4C 7C 06 02 14 */ add r0, r6, r0 +/* 80210FF0 0020DF50 54 00 04 BE */ clrlwi r0, r0, 0x12 +/* 80210FF4 0020DF54 B0 07 00 04 */ sth r0, 4(r7) +/* 80210FF8 0020DF58 80 05 00 28 */ lwz r0, 0x28(r5) +/* 80210FFC 0020DF5C 7C E0 22 14 */ add r7, r0, r4 +/* 80211000 0020DF60 38 84 FF FA */ addi r4, r4, -6 +/* 80211004 0020DF64 A8 07 00 04 */ lha r0, 4(r7) +/* 80211008 0020DF68 7C 06 02 14 */ add r0, r6, r0 +/* 8021100C 0020DF6C 54 00 04 BE */ clrlwi r0, r0, 0x12 +/* 80211010 0020DF70 B0 07 00 04 */ sth r0, 4(r7) +/* 80211014 0020DF74 80 05 00 28 */ lwz r0, 0x28(r5) +/* 80211018 0020DF78 7C E0 22 14 */ add r7, r0, r4 +/* 8021101C 0020DF7C 38 84 FF FA */ addi r4, r4, -6 +/* 80211020 0020DF80 A8 07 00 04 */ lha r0, 4(r7) +/* 80211024 0020DF84 7C 06 02 14 */ add r0, r6, r0 +/* 80211028 0020DF88 54 00 04 BE */ clrlwi r0, r0, 0x12 +/* 8021102C 0020DF8C B0 07 00 04 */ sth r0, 4(r7) +/* 80211030 0020DF90 80 05 00 28 */ lwz r0, 0x28(r5) +/* 80211034 0020DF94 7C E0 22 14 */ add r7, r0, r4 +/* 80211038 0020DF98 38 84 FF FA */ addi r4, r4, -6 +/* 8021103C 0020DF9C A8 07 00 04 */ lha r0, 4(r7) +/* 80211040 0020DFA0 7C 06 02 14 */ add r0, r6, r0 +/* 80211044 0020DFA4 54 00 04 BE */ clrlwi r0, r0, 0x12 +/* 80211048 0020DFA8 B0 07 00 04 */ sth r0, 4(r7) +/* 8021104C 0020DFAC 42 00 FF 20 */ bdnz lbl_80210F6C +/* 80211050 0020DFB0 70 63 00 07 */ andi. r3, r3, 7 +/* 80211054 0020DFB4 41 82 00 28 */ beq lbl_8021107C +lbl_80211058: +/* 80211058 0020DFB8 7C 69 03 A6 */ mtctr r3 +lbl_8021105C: +/* 8021105C 0020DFBC 80 05 00 28 */ lwz r0, 0x28(r5) +/* 80211060 0020DFC0 7C E0 22 14 */ add r7, r0, r4 +/* 80211064 0020DFC4 38 84 FF FA */ addi r4, r4, -6 +/* 80211068 0020DFC8 A8 07 00 04 */ lha r0, 4(r7) +/* 8021106C 0020DFCC 7C 06 02 14 */ add r0, r6, r0 +/* 80211070 0020DFD0 54 00 04 BE */ clrlwi r0, r0, 0x12 +/* 80211074 0020DFD4 B0 07 00 04 */ sth r0, 4(r7) +/* 80211078 0020DFD8 42 00 FF E4 */ bdnz lbl_8021105C +lbl_8021107C: +/* 8021107C 0020DFDC 38 A5 FF D4 */ addi r5, r5, -44 +/* 80211080 0020DFE0 39 08 FF FF */ addi r8, r8, -1 +lbl_80211084: +/* 80211084 0020DFE4 2C 08 00 00 */ cmpwi r8, 0 +/* 80211088 0020DFE8 40 80 FE C4 */ bge lbl_80210F4C + +.global sub_8021108c +sub_8021108c: +/* 8021108C 0020DFEC 4E 80 00 20 */ blr + +.global UpdateRainParticles__13CEnvFxManagerFRC15CVectorFixed8_8RC9CVector3ff +UpdateRainParticles__13CEnvFxManagerFRC15CVectorFixed8_8RC9CVector3ff: +/* 80211090 0020DFF0 C0 02 B2 98 */ lfs f0, lbl_805ACFB8@sda21(r2) +/* 80211094 0020DFF4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80211098 0020DFF8 EC 00 00 72 */ fmuls f0, f0, f1 +/* 8021109C 0020DFFC C0 42 B2 94 */ lfs f2, lbl_805ACFB4@sda21(r2) +/* 802110A0 0020E000 C0 25 00 08 */ lfs f1, 8(r5) +/* 802110A4 0020E004 80 C3 00 50 */ lwz r6, 0x50(r3) +/* 802110A8 0020E008 EC 01 00 32 */ fmuls f0, f1, f0 +/* 802110AC 0020E00C A8 84 00 04 */ lha r4, 4(r4) +/* 802110B0 0020E010 39 06 FF FF */ addi r8, r6, -1 +/* 802110B4 0020E014 1C 08 00 2C */ mulli r0, r8, 0x2c +/* 802110B8 0020E018 EC 02 00 32 */ fmuls f0, f2, f0 +/* 802110BC 0020E01C 7C C3 02 14 */ add r6, r3, r0 +/* 802110C0 0020E020 FC 00 00 1E */ fctiwz f0, f0 +/* 802110C4 0020E024 38 C6 00 54 */ addi r6, r6, 0x54 +/* 802110C8 0020E028 D8 01 00 10 */ stfd f0, 0x10(r1) +/* 802110CC 0020E02C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 802110D0 0020E030 7C 00 07 34 */ extsh r0, r0 +/* 802110D4 0020E034 7C 04 02 14 */ add r0, r4, r0 +/* 802110D8 0020E038 7C 04 07 34 */ extsh r4, r0 +/* 802110DC 0020E03C 48 00 01 54 */ b lbl_80211230 +lbl_802110E0: +/* 802110E0 0020E040 88 06 00 14 */ lbz r0, 0x14(r6) +/* 802110E4 0020E044 C0 06 00 18 */ lfs f0, 0x18(r6) +/* 802110E8 0020E048 28 00 00 00 */ cmplwi r0, 0 +/* 802110EC 0020E04C 98 01 00 08 */ stb r0, 8(r1) +/* 802110F0 0020E050 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 802110F4 0020E054 41 82 01 34 */ beq lbl_80211228 +/* 802110F8 0020E058 80 66 00 20 */ lwz r3, 0x20(r6) +/* 802110FC 0020E05C 34 63 FF FF */ addic. r3, r3, -1 +/* 80211100 0020E060 1C A3 00 06 */ mulli r5, r3, 6 +/* 80211104 0020E064 38 63 00 01 */ addi r3, r3, 1 +/* 80211108 0020E068 41 80 01 20 */ blt lbl_80211228 +/* 8021110C 0020E06C 54 60 E8 FF */ rlwinm. r0, r3, 0x1d, 3, 0x1f +/* 80211110 0020E070 7C 09 03 A6 */ mtctr r0 +/* 80211114 0020E074 41 82 00 F0 */ beq lbl_80211204 +lbl_80211118: +/* 80211118 0020E078 80 06 00 28 */ lwz r0, 0x28(r6) +/* 8021111C 0020E07C 7C E0 2A 14 */ add r7, r0, r5 +/* 80211120 0020E080 38 A5 FF FA */ addi r5, r5, -6 +/* 80211124 0020E084 A8 07 00 04 */ lha r0, 4(r7) +/* 80211128 0020E088 7C 04 02 14 */ add r0, r4, r0 +/* 8021112C 0020E08C 54 00 04 BE */ clrlwi r0, r0, 0x12 +/* 80211130 0020E090 B0 07 00 04 */ sth r0, 4(r7) +/* 80211134 0020E094 80 06 00 28 */ lwz r0, 0x28(r6) +/* 80211138 0020E098 7C E0 2A 14 */ add r7, r0, r5 +/* 8021113C 0020E09C 38 A5 FF FA */ addi r5, r5, -6 +/* 80211140 0020E0A0 A8 07 00 04 */ lha r0, 4(r7) +/* 80211144 0020E0A4 7C 04 02 14 */ add r0, r4, r0 +/* 80211148 0020E0A8 54 00 04 BE */ clrlwi r0, r0, 0x12 +/* 8021114C 0020E0AC B0 07 00 04 */ sth r0, 4(r7) +/* 80211150 0020E0B0 80 06 00 28 */ lwz r0, 0x28(r6) +/* 80211154 0020E0B4 7C E0 2A 14 */ add r7, r0, r5 +/* 80211158 0020E0B8 38 A5 FF FA */ addi r5, r5, -6 +/* 8021115C 0020E0BC A8 07 00 04 */ lha r0, 4(r7) +/* 80211160 0020E0C0 7C 04 02 14 */ add r0, r4, r0 +/* 80211164 0020E0C4 54 00 04 BE */ clrlwi r0, r0, 0x12 +/* 80211168 0020E0C8 B0 07 00 04 */ sth r0, 4(r7) +/* 8021116C 0020E0CC 80 06 00 28 */ lwz r0, 0x28(r6) +/* 80211170 0020E0D0 7C E0 2A 14 */ add r7, r0, r5 +/* 80211174 0020E0D4 38 A5 FF FA */ addi r5, r5, -6 +/* 80211178 0020E0D8 A8 07 00 04 */ lha r0, 4(r7) +/* 8021117C 0020E0DC 7C 04 02 14 */ add r0, r4, r0 +/* 80211180 0020E0E0 54 00 04 BE */ clrlwi r0, r0, 0x12 +/* 80211184 0020E0E4 B0 07 00 04 */ sth r0, 4(r7) +/* 80211188 0020E0E8 80 06 00 28 */ lwz r0, 0x28(r6) +/* 8021118C 0020E0EC 7C E0 2A 14 */ add r7, r0, r5 +/* 80211190 0020E0F0 38 A5 FF FA */ addi r5, r5, -6 +/* 80211194 0020E0F4 A8 07 00 04 */ lha r0, 4(r7) +/* 80211198 0020E0F8 7C 04 02 14 */ add r0, r4, r0 +/* 8021119C 0020E0FC 54 00 04 BE */ clrlwi r0, r0, 0x12 +/* 802111A0 0020E100 B0 07 00 04 */ sth r0, 4(r7) +/* 802111A4 0020E104 80 06 00 28 */ lwz r0, 0x28(r6) +/* 802111A8 0020E108 7C E0 2A 14 */ add r7, r0, r5 +/* 802111AC 0020E10C 38 A5 FF FA */ addi r5, r5, -6 +/* 802111B0 0020E110 A8 07 00 04 */ lha r0, 4(r7) +/* 802111B4 0020E114 7C 04 02 14 */ add r0, r4, r0 +/* 802111B8 0020E118 54 00 04 BE */ clrlwi r0, r0, 0x12 +/* 802111BC 0020E11C B0 07 00 04 */ sth r0, 4(r7) +/* 802111C0 0020E120 80 06 00 28 */ lwz r0, 0x28(r6) +/* 802111C4 0020E124 7C E0 2A 14 */ add r7, r0, r5 +/* 802111C8 0020E128 38 A5 FF FA */ addi r5, r5, -6 +/* 802111CC 0020E12C A8 07 00 04 */ lha r0, 4(r7) +/* 802111D0 0020E130 7C 04 02 14 */ add r0, r4, r0 +/* 802111D4 0020E134 54 00 04 BE */ clrlwi r0, r0, 0x12 +/* 802111D8 0020E138 B0 07 00 04 */ sth r0, 4(r7) +/* 802111DC 0020E13C 80 06 00 28 */ lwz r0, 0x28(r6) +/* 802111E0 0020E140 7C E0 2A 14 */ add r7, r0, r5 +/* 802111E4 0020E144 38 A5 FF FA */ addi r5, r5, -6 +/* 802111E8 0020E148 A8 07 00 04 */ lha r0, 4(r7) +/* 802111EC 0020E14C 7C 04 02 14 */ add r0, r4, r0 +/* 802111F0 0020E150 54 00 04 BE */ clrlwi r0, r0, 0x12 +/* 802111F4 0020E154 B0 07 00 04 */ sth r0, 4(r7) +/* 802111F8 0020E158 42 00 FF 20 */ bdnz lbl_80211118 +/* 802111FC 0020E15C 70 63 00 07 */ andi. r3, r3, 7 +/* 80211200 0020E160 41 82 00 28 */ beq lbl_80211228 +lbl_80211204: +/* 80211204 0020E164 7C 69 03 A6 */ mtctr r3 +lbl_80211208: +/* 80211208 0020E168 80 06 00 28 */ lwz r0, 0x28(r6) +/* 8021120C 0020E16C 7C E0 2A 14 */ add r7, r0, r5 +/* 80211210 0020E170 38 A5 FF FA */ addi r5, r5, -6 +/* 80211214 0020E174 A8 07 00 04 */ lha r0, 4(r7) +/* 80211218 0020E178 7C 04 02 14 */ add r0, r4, r0 +/* 8021121C 0020E17C 54 00 04 BE */ clrlwi r0, r0, 0x12 +/* 80211220 0020E180 B0 07 00 04 */ sth r0, 4(r7) +/* 80211224 0020E184 42 00 FF E4 */ bdnz lbl_80211208 +lbl_80211228: +/* 80211228 0020E188 38 C6 FF D4 */ addi r6, r6, -44 +/* 8021122C 0020E18C 39 08 FF FF */ addi r8, r8, -1 +lbl_80211230: +/* 80211230 0020E190 2C 08 00 00 */ cmpwi r8, 0 +/* 80211234 0020E194 40 80 FE AC */ bge lbl_802110E0 +/* 80211238 0020E198 38 21 00 20 */ addi r1, r1, 0x20 +/* 8021123C 0020E19C 4E 80 00 20 */ blr + +.global "UpdateSnowParticles__13CEnvFxManagerFR34reserved_vector<15CVectorFixed8_8>" +"UpdateSnowParticles__13CEnvFxManagerFR34reserved_vector<15CVectorFixed8_8>": +/* 80211240 0020E1A0 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80211244 0020E1A4 BF 61 00 1C */ stmw r27, 0x1c(r1) +/* 80211248 0020E1A8 80 A3 00 50 */ lwz r5, 0x50(r3) +/* 8021124C 0020E1AC 3B 85 FF FF */ addi r28, r5, -1 +/* 80211250 0020E1B0 1C 1C 00 2C */ mulli r0, r28, 0x2c +/* 80211254 0020E1B4 7F C3 02 14 */ add r30, r3, r0 +/* 80211258 0020E1B8 3B DE 00 54 */ addi r30, r30, 0x54 +/* 8021125C 0020E1BC 48 00 01 58 */ b lbl_802113B4 +lbl_80211260: +/* 80211260 0020E1C0 C0 03 00 28 */ lfs f0, 0x28(r3) +/* 80211264 0020E1C4 88 1E 00 14 */ lbz r0, 0x14(r30) +/* 80211268 0020E1C8 FC 20 00 1E */ fctiwz f1, f0 +/* 8021126C 0020E1CC C0 1E 00 18 */ lfs f0, 0x18(r30) +/* 80211270 0020E1D0 28 00 00 00 */ cmplwi r0, 0 +/* 80211274 0020E1D4 98 01 00 08 */ stb r0, 8(r1) +/* 80211278 0020E1D8 D8 21 00 10 */ stfd f1, 0x10(r1) +/* 8021127C 0020E1DC D0 01 00 0C */ stfs f0, 0xc(r1) +/* 80211280 0020E1E0 83 61 00 14 */ lwz r27, 0x14(r1) +/* 80211284 0020E1E4 41 82 01 28 */ beq lbl_802113AC +/* 80211288 0020E1E8 80 BE 00 20 */ lwz r5, 0x20(r30) +/* 8021128C 0020E1EC 34 A5 FF FF */ addic. r5, r5, -1 +/* 80211290 0020E1F0 1F E5 00 06 */ mulli r31, r5, 6 +/* 80211294 0020E1F4 38 A5 00 01 */ addi r5, r5, 1 +/* 80211298 0020E1F8 41 80 01 14 */ blt lbl_802113AC +/* 8021129C 0020E1FC 54 A0 F8 7F */ rlwinm. r0, r5, 0x1f, 1, 0x1f +/* 802112A0 0020E200 7C 09 03 A6 */ mtctr r0 +/* 802112A4 0020E204 41 82 00 B0 */ beq lbl_80211354 +lbl_802112A8: +/* 802112A8 0020E208 1D 7B 00 06 */ mulli r11, r27, 6 +/* 802112AC 0020E20C 80 FE 00 28 */ lwz r7, 0x28(r30) +/* 802112B0 0020E210 38 1B 00 01 */ addi r0, r27, 1 +/* 802112B4 0020E214 7F A7 FA 14 */ add r29, r7, r31 +/* 802112B8 0020E218 7D 84 5A 14 */ add r12, r4, r11 +/* 802112BC 0020E21C 54 1B 06 3E */ clrlwi r27, r0, 0x18 +/* 802112C0 0020E220 A8 FD 00 00 */ lha r7, 0(r29) +/* 802112C4 0020E224 1D 7B 00 06 */ mulli r11, r27, 6 +/* 802112C8 0020E228 A8 CC 00 04 */ lha r6, 4(r12) +/* 802112CC 0020E22C 38 1B 00 01 */ addi r0, r27, 1 +/* 802112D0 0020E230 A9 5D 00 02 */ lha r10, 2(r29) +/* 802112D4 0020E234 3B FF FF FA */ addi r31, r31, -6 +/* 802112D8 0020E238 A9 2C 00 06 */ lha r9, 6(r12) +/* 802112DC 0020E23C A9 0C 00 08 */ lha r8, 8(r12) +/* 802112E0 0020E240 7C C7 32 14 */ add r6, r7, r6 +/* 802112E4 0020E244 A8 FD 00 04 */ lha r7, 4(r29) +/* 802112E8 0020E248 7D 2A 4A 14 */ add r9, r10, r9 +/* 802112EC 0020E24C 7D 84 5A 14 */ add r12, r4, r11 +/* 802112F0 0020E250 54 1B 06 3E */ clrlwi r27, r0, 0x18 +/* 802112F4 0020E254 B0 DD 00 00 */ sth r6, 0(r29) +/* 802112F8 0020E258 7C C7 42 14 */ add r6, r7, r8 +/* 802112FC 0020E25C 54 C6 04 BE */ clrlwi r6, r6, 0x12 +/* 80211300 0020E260 B1 3D 00 02 */ sth r9, 2(r29) +/* 80211304 0020E264 B0 DD 00 04 */ sth r6, 4(r29) +/* 80211308 0020E268 80 FE 00 28 */ lwz r7, 0x28(r30) +/* 8021130C 0020E26C A8 CC 00 04 */ lha r6, 4(r12) +/* 80211310 0020E270 7F A7 FA 14 */ add r29, r7, r31 +/* 80211314 0020E274 A9 2C 00 06 */ lha r9, 6(r12) +/* 80211318 0020E278 A8 FD 00 00 */ lha r7, 0(r29) +/* 8021131C 0020E27C 3B FF FF FA */ addi r31, r31, -6 +/* 80211320 0020E280 A9 5D 00 02 */ lha r10, 2(r29) +/* 80211324 0020E284 7C C7 32 14 */ add r6, r7, r6 +/* 80211328 0020E288 A8 FD 00 04 */ lha r7, 4(r29) +/* 8021132C 0020E28C A9 0C 00 08 */ lha r8, 8(r12) +/* 80211330 0020E290 7D 2A 4A 14 */ add r9, r10, r9 +/* 80211334 0020E294 B0 DD 00 00 */ sth r6, 0(r29) +/* 80211338 0020E298 7C C7 42 14 */ add r6, r7, r8 +/* 8021133C 0020E29C 54 C6 04 BE */ clrlwi r6, r6, 0x12 +/* 80211340 0020E2A0 B1 3D 00 02 */ sth r9, 2(r29) +/* 80211344 0020E2A4 B0 DD 00 04 */ sth r6, 4(r29) +/* 80211348 0020E2A8 42 00 FF 60 */ bdnz lbl_802112A8 +/* 8021134C 0020E2AC 70 A5 00 01 */ andi. r5, r5, 1 +/* 80211350 0020E2B0 41 82 00 5C */ beq lbl_802113AC +lbl_80211354: +/* 80211354 0020E2B4 7C A9 03 A6 */ mtctr r5 +lbl_80211358: +/* 80211358 0020E2B8 1D 7B 00 06 */ mulli r11, r27, 6 +/* 8021135C 0020E2BC 80 FE 00 28 */ lwz r7, 0x28(r30) +/* 80211360 0020E2C0 38 1B 00 01 */ addi r0, r27, 1 +/* 80211364 0020E2C4 7F A7 FA 14 */ add r29, r7, r31 +/* 80211368 0020E2C8 7D 84 5A 14 */ add r12, r4, r11 +/* 8021136C 0020E2CC A8 FD 00 00 */ lha r7, 0(r29) +/* 80211370 0020E2D0 A8 CC 00 04 */ lha r6, 4(r12) +/* 80211374 0020E2D4 54 1B 06 3E */ clrlwi r27, r0, 0x18 +/* 80211378 0020E2D8 A9 5D 00 02 */ lha r10, 2(r29) +/* 8021137C 0020E2DC 3B FF FF FA */ addi r31, r31, -6 +/* 80211380 0020E2E0 A9 2C 00 06 */ lha r9, 6(r12) +/* 80211384 0020E2E4 7C C7 32 14 */ add r6, r7, r6 +/* 80211388 0020E2E8 A8 FD 00 04 */ lha r7, 4(r29) +/* 8021138C 0020E2EC A9 0C 00 08 */ lha r8, 8(r12) +/* 80211390 0020E2F0 7D 2A 4A 14 */ add r9, r10, r9 +/* 80211394 0020E2F4 B0 DD 00 00 */ sth r6, 0(r29) +/* 80211398 0020E2F8 7C C7 42 14 */ add r6, r7, r8 +/* 8021139C 0020E2FC 54 C6 04 BE */ clrlwi r6, r6, 0x12 +/* 802113A0 0020E300 B1 3D 00 02 */ sth r9, 2(r29) +/* 802113A4 0020E304 B0 DD 00 04 */ sth r6, 4(r29) +/* 802113A8 0020E308 42 00 FF B0 */ bdnz lbl_80211358 +lbl_802113AC: +/* 802113AC 0020E30C 3B DE FF D4 */ addi r30, r30, -44 +/* 802113B0 0020E310 3B 9C FF FF */ addi r28, r28, -1 +lbl_802113B4: +/* 802113B4 0020E314 2C 1C 00 00 */ cmpwi r28, 0 +/* 802113B8 0020E318 40 80 FE A8 */ bge lbl_80211260 +/* 802113BC 0020E31C BB 61 00 1C */ lmw r27, 0x1c(r1) +/* 802113C0 0020E320 38 21 00 30 */ addi r1, r1, 0x30 +/* 802113C4 0020E324 4E 80 00 20 */ blr + +.global UpdateBlockedGrids__13CEnvFxManagerFR13CStateManager10EEnvFxTypeRC12CTransform4fRC12CTransform4fRC12CTransform4f +UpdateBlockedGrids__13CEnvFxManagerFR13CStateManager10EEnvFxTypeRC12CTransform4fRC12CTransform4fRC12CTransform4f: +/* 802113C8 0020E328 94 21 F4 D0 */ stwu r1, -0xb30(r1) +/* 802113CC 0020E32C 7C 08 02 A6 */ mflr r0 +/* 802113D0 0020E330 90 01 0B 34 */ stw r0, 0xb34(r1) +/* 802113D4 0020E334 DB E1 0B 20 */ stfd f31, 0xb20(r1) +/* 802113D8 0020E338 F3 E1 0B 28 */ psq_st f31, -1240(r1), 0, qr0 +/* 802113DC 0020E33C DB C1 0B 10 */ stfd f30, 0xb10(r1) +/* 802113E0 0020E340 F3 C1 0B 18 */ psq_st f30, -1256(r1), 0, qr0 +/* 802113E4 0020E344 DB A1 0B 00 */ stfd f29, 0xb00(r1) +/* 802113E8 0020E348 F3 A1 0B 08 */ psq_st f29, -1272(r1), 0, qr0 +/* 802113EC 0020E34C BE 01 0A C0 */ stmw r16, 0xac0(r1) +/* 802113F0 0020E350 7C 9D 23 78 */ mr r29, r4 +/* 802113F4 0020E354 7C 7C 1B 78 */ mr r28, r3 +/* 802113F8 0020E358 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 802113FC 0020E35C 7C B4 2B 78 */ mr r20, r5 +/* 80211400 0020E360 7C F3 3B 78 */ mr r19, r7 +/* 80211404 0020E364 7D 10 43 78 */ mr r16, r8 +/* 80211408 0020E368 80 04 02 F8 */ lwz r0, 0x2f8(r4) +/* 8021140C 0020E36C 2C 00 00 00 */ cmpwi r0, 0 +/* 80211410 0020E370 40 82 00 24 */ bne lbl_80211434 +/* 80211414 0020E374 C0 46 00 2C */ lfs f2, 0x2c(r6) +/* 80211418 0020E378 38 E1 00 9C */ addi r7, r1, 0x9c +/* 8021141C 0020E37C C0 26 00 1C */ lfs f1, 0x1c(r6) +/* 80211420 0020E380 C0 06 00 0C */ lfs f0, 0xc(r6) +/* 80211424 0020E384 D0 21 00 A0 */ stfs f1, 0xa0(r1) +/* 80211428 0020E388 D0 01 00 9C */ stfs f0, 0x9c(r1) +/* 8021142C 0020E38C D0 41 00 A4 */ stfs f2, 0xa4(r1) +/* 80211430 0020E390 48 00 00 10 */ b lbl_80211440 +lbl_80211434: +/* 80211434 0020E394 38 61 00 90 */ addi r3, r1, 0x90 +/* 80211438 0020E398 48 07 39 11 */ bl GetBallPosition__7CPlayerCFv +/* 8021143C 0020E39C 38 E1 00 90 */ addi r7, r1, 0x90 +lbl_80211440: +/* 80211440 0020E3A0 C0 07 00 00 */ lfs f0, 0(r7) +/* 80211444 0020E3A4 7E 04 83 78 */ mr r4, r16 +/* 80211448 0020E3A8 38 61 00 84 */ addi r3, r1, 0x84 +/* 8021144C 0020E3AC 38 A1 00 D8 */ addi r5, r1, 0xd8 +/* 80211450 0020E3B0 D0 01 00 D8 */ stfs f0, 0xd8(r1) +/* 80211454 0020E3B4 C0 07 00 04 */ lfs f0, 4(r7) +/* 80211458 0020E3B8 D0 01 00 DC */ stfs f0, 0xdc(r1) +/* 8021145C 0020E3BC C0 07 00 08 */ lfs f0, 8(r7) +/* 80211460 0020E3C0 D0 01 00 E0 */ stfs f0, 0xe0(r1) +/* 80211464 0020E3C4 48 10 16 85 */ bl __ml__12CTransform4fCFRC9CVector3f +/* 80211468 0020E3C8 C0 81 00 84 */ lfs f4, 0x84(r1) +/* 8021146C 0020E3CC 38 61 00 70 */ addi r3, r1, 0x70 +/* 80211470 0020E3D0 C0 61 00 88 */ lfs f3, 0x88(r1) +/* 80211474 0020E3D4 C0 02 B2 94 */ lfs f0, lbl_805ACFB4@sda21(r2) +/* 80211478 0020E3D8 C0 41 00 8C */ lfs f2, 0x8c(r1) +/* 8021147C 0020E3DC EC 20 01 32 */ fmuls f1, f0, f4 +/* 80211480 0020E3E0 D0 81 00 CC */ stfs f4, 0xcc(r1) +/* 80211484 0020E3E4 EC 00 00 F2 */ fmuls f0, f0, f3 +/* 80211488 0020E3E8 D0 61 00 D0 */ stfs f3, 0xd0(r1) +/* 8021148C 0020E3EC FC 20 08 1E */ fctiwz f1, f1 +/* 80211490 0020E3F0 FC 00 00 1E */ fctiwz f0, f0 +/* 80211494 0020E3F4 D0 41 00 D4 */ stfs f2, 0xd4(r1) +/* 80211498 0020E3F8 D8 21 0A B0 */ stfd f1, 0xab0(r1) +/* 8021149C 0020E3FC D8 01 0A B8 */ stfd f0, 0xab8(r1) +/* 802114A0 0020E400 80 81 0A B4 */ lwz r4, 0xab4(r1) +/* 802114A4 0020E404 80 01 0A BC */ lwz r0, 0xabc(r1) +/* 802114A8 0020E408 7C 84 07 34 */ extsh r4, r4 +/* 802114AC 0020E40C 7C 05 07 34 */ extsh r5, r0 +/* 802114B0 0020E410 48 10 2E 9D */ bl __ct__9CVector2iFii +/* 802114B4 0020E414 38 00 FF FF */ li r0, -1 +/* 802114B8 0020E418 3C 80 80 5A */ lis r4, lbl_805A66F4@ha +/* 802114BC 0020E41C 90 1C 00 2C */ stw r0, 0x2c(r28) +/* 802114C0 0020E420 38 00 00 00 */ li r0, 0 +/* 802114C4 0020E424 3C 60 80 5A */ lis r3, lbl_805A6700@ha +/* 802114C8 0020E428 3B 5C 00 54 */ addi r26, r28, 0x54 +/* 802114CC 0020E42C 98 1C 00 24 */ stb r0, 0x24(r28) +/* 802114D0 0020E430 3B 64 66 F4 */ addi r27, r4, lbl_805A66F4@l +/* 802114D4 0020E434 3A E3 67 00 */ addi r23, r3, lbl_805A6700@l +/* 802114D8 0020E438 3B 21 02 AC */ addi r25, r1, 0x2ac +/* 802114DC 0020E43C 90 01 02 A8 */ stw r0, 0x2a8(r1) +/* 802114E0 0020E440 3B 01 02 74 */ addi r24, r1, 0x274 +/* 802114E4 0020E444 3A C0 00 00 */ li r22, 0 +/* 802114E8 0020E448 3B E0 00 00 */ li r31, 0 +/* 802114EC 0020E44C 3B C0 00 00 */ li r30, 0 +/* 802114F0 0020E450 48 00 05 7C */ b lbl_80211A6C +lbl_802114F4: +/* 802114F4 0020E454 2C 1F 00 08 */ cmpwi r31, 8 +/* 802114F8 0020E458 40 80 04 E8 */ bge lbl_802119E0 +/* 802114FC 0020E45C 88 1A 00 00 */ lbz r0, 0(r26) +/* 80211500 0020E460 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80211504 0020E464 41 82 04 DC */ beq lbl_802119E0 +/* 80211508 0020E468 2C 14 00 03 */ cmpwi r20, 3 +/* 8021150C 0020E46C 40 82 00 38 */ bne lbl_80211544 +/* 80211510 0020E470 88 0D 94 C0 */ lbz r0, lbl_805A8080@sda21(r13) +/* 80211514 0020E474 C0 02 B2 9C */ lfs f0, lbl_805ACFBC@sda21(r2) +/* 80211518 0020E478 98 01 00 58 */ stb r0, 0x58(r1) +/* 8021151C 0020E47C D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 80211520 0020E480 80 61 00 58 */ lwz r3, 0x58(r1) +/* 80211524 0020E484 80 01 00 5C */ lwz r0, 0x5c(r1) +/* 80211528 0020E488 90 61 00 60 */ stw r3, 0x60(r1) +/* 8021152C 0020E48C 90 01 00 64 */ stw r0, 0x64(r1) +/* 80211530 0020E490 88 01 00 60 */ lbz r0, 0x60(r1) +/* 80211534 0020E494 C0 01 00 64 */ lfs f0, 0x64(r1) +/* 80211538 0020E498 98 1A 00 14 */ stb r0, 0x14(r26) +/* 8021153C 0020E49C D0 1A 00 18 */ stfs f0, 0x18(r26) +/* 80211540 0020E4A0 48 00 04 90 */ b lbl_802119D0 +lbl_80211544: +/* 80211544 0020E4A4 80 AD 94 CC */ lwz r5, lbl_805A808C@sda21(r13) +/* 80211548 0020E4A8 38 60 00 00 */ li r3, 0 +/* 8021154C 0020E4AC 38 80 00 01 */ li r4, 1 +/* 80211550 0020E4B0 48 17 89 A5 */ bl __shl2i +/* 80211554 0020E4B4 80 AD 94 D0 */ lwz r5, lbl_805A8090@sda21(r13) +/* 80211558 0020E4B8 7C 92 23 78 */ mr r18, r4 +/* 8021155C 0020E4BC 7C 75 1B 78 */ mr r21, r3 +/* 80211560 0020E4C0 38 60 00 00 */ li r3, 0 +/* 80211564 0020E4C4 38 80 00 01 */ li r4, 1 +/* 80211568 0020E4C8 48 17 89 8D */ bl __shl2i +/* 8021156C 0020E4CC 80 AD 94 C4 */ lwz r5, lbl_805A8084@sda21(r13) +/* 80211570 0020E4D0 7E 52 23 78 */ or r18, r18, r4 +/* 80211574 0020E4D4 7E B5 1B 78 */ or r21, r21, r3 +/* 80211578 0020E4D8 38 60 00 00 */ li r3, 0 +/* 8021157C 0020E4DC 38 80 00 01 */ li r4, 1 +/* 80211580 0020E4E0 48 17 89 75 */ bl __shl2i +/* 80211584 0020E4E4 80 AD 94 C8 */ lwz r5, lbl_805A8088@sda21(r13) +/* 80211588 0020E4E8 7C 90 23 78 */ mr r16, r4 +/* 8021158C 0020E4EC 7C 71 1B 78 */ mr r17, r3 +/* 80211590 0020E4F0 38 60 00 00 */ li r3, 0 +/* 80211594 0020E4F4 38 80 00 01 */ li r4, 1 +/* 80211598 0020E4F8 48 17 89 5D */ bl __shl2i +/* 8021159C 0020E4FC 7E 10 23 78 */ or r16, r16, r4 +/* 802115A0 0020E500 7E 31 1B 78 */ or r17, r17, r3 +/* 802115A4 0020E504 38 00 00 03 */ li r0, 3 +/* 802115A8 0020E508 92 01 01 3C */ stw r16, 0x13c(r1) +/* 802115AC 0020E50C 38 61 00 48 */ addi r3, r1, 0x48 +/* 802115B0 0020E510 38 9A 00 0C */ addi r4, r26, 0xc +/* 802115B4 0020E514 90 01 01 10 */ stw r0, 0x110(r1) +/* 802115B8 0020E518 38 A0 00 00 */ li r5, 0 +/* 802115BC 0020E51C 92 21 01 38 */ stw r17, 0x138(r1) +/* 802115C0 0020E520 92 41 01 44 */ stw r18, 0x144(r1) +/* 802115C4 0020E524 92 A1 01 40 */ stw r21, 0x140(r1) +/* 802115C8 0020E528 90 01 01 48 */ stw r0, 0x148(r1) +/* 802115CC 0020E52C 48 10 2C B1 */ bl __ml__FRC9CVector2ii +/* 802115D0 0020E530 38 61 00 50 */ addi r3, r1, 0x50 +/* 802115D4 0020E534 38 9A 00 04 */ addi r4, r26, 4 +/* 802115D8 0020E538 38 A1 00 48 */ addi r5, r1, 0x48 +/* 802115DC 0020E53C 48 10 2D 39 */ bl __pl__FRC9CVector2iRC9CVector2i +/* 802115E0 0020E540 81 21 00 50 */ lwz r9, 0x50(r1) +/* 802115E4 0020E544 3C E0 43 30 */ lis r7, 0x4330 +/* 802115E8 0020E548 81 01 00 54 */ lwz r8, 0x54(r1) +/* 802115EC 0020E54C 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 802115F0 0020E550 7D 20 07 34 */ extsh r0, r9 +/* 802115F4 0020E554 C0 62 B2 78 */ lfs f3, lbl_805ACF98@sda21(r2) +/* 802115F8 0020E558 7D 04 07 34 */ extsh r4, r8 +/* 802115FC 0020E55C 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 80211600 0020E560 6C 83 80 00 */ xoris r3, r4, 0x8000 +/* 80211604 0020E564 6C 00 80 00 */ xoris r0, r0, 0x8000 +/* 80211608 0020E568 90 61 0A BC */ stw r3, 0xabc(r1) +/* 8021160C 0020E56C 7E 64 9B 78 */ mr r4, r19 +/* 80211610 0020E570 C8 A2 B2 48 */ lfd f5, lbl_805ACF68@sda21(r2) +/* 80211614 0020E574 38 61 00 78 */ addi r3, r1, 0x78 +/* 80211618 0020E578 90 E1 0A B8 */ stw r7, 0xab8(r1) +/* 8021161C 0020E57C 38 A1 00 C0 */ addi r5, r1, 0xc0 +/* 80211620 0020E580 C0 C2 B2 A0 */ lfs f6, lbl_805ACFC0@sda21(r2) +/* 80211624 0020E584 C8 01 0A B8 */ lfd f0, 0xab8(r1) +/* 80211628 0020E588 90 01 0A B4 */ stw r0, 0xab4(r1) +/* 8021162C 0020E58C EC 20 28 28 */ fsubs f1, f0, f5 +/* 80211630 0020E590 C0 42 B2 A4 */ lfs f2, lbl_805ACFC4@sda21(r2) +/* 80211634 0020E594 90 E1 0A B0 */ stw r7, 0xab0(r1) +/* 80211638 0020E598 C0 06 00 00 */ lfs f0, 0(r6) +/* 8021163C 0020E59C C8 81 0A B0 */ lfd f4, 0xab0(r1) +/* 80211640 0020E5A0 EC E6 00 72 */ fmuls f7, f6, f1 +/* 80211644 0020E5A4 C0 3B 00 04 */ lfs f1, 4(r27) +/* 80211648 0020E5A8 EF A2 00 32 */ fmuls f29, f2, f0 +/* 8021164C 0020E5AC EC 84 28 28 */ fsubs f4, f4, f5 +/* 80211650 0020E5B0 C0 1B 00 08 */ lfs f0, 8(r27) +/* 80211654 0020E5B4 EF C2 00 72 */ fmuls f30, f2, f1 +/* 80211658 0020E5B8 EF E2 00 32 */ fmuls f31, f2, f0 +/* 8021165C 0020E5BC 91 21 00 68 */ stw r9, 0x68(r1) +/* 80211660 0020E5C0 EC 06 01 32 */ fmuls f0, f6, f4 +/* 80211664 0020E5C4 91 01 00 6C */ stw r8, 0x6c(r1) +/* 80211668 0020E5C8 D0 01 00 C0 */ stfs f0, 0xc0(r1) +/* 8021166C 0020E5CC D0 E1 00 C4 */ stfs f7, 0xc4(r1) +/* 80211670 0020E5D0 D0 61 00 C8 */ stfs f3, 0xc8(r1) +/* 80211674 0020E5D4 48 10 14 75 */ bl __ml__12CTransform4fCFRC9CVector3f +/* 80211678 0020E5D8 C0 41 00 7C */ lfs f2, 0x7c(r1) +/* 8021167C 0020E5DC 3C 60 80 5A */ lis r3, lbl_805A6700@ha +/* 80211680 0020E5E0 C0 21 00 80 */ lfs f1, 0x80(r1) +/* 80211684 0020E5E4 7F A4 EB 78 */ mr r4, r29 +/* 80211688 0020E5E8 EC C2 F0 2A */ fadds f6, f2, f30 +/* 8021168C 0020E5EC C0 01 00 78 */ lfs f0, 0x78(r1) +/* 80211690 0020E5F0 EC A1 F8 2A */ fadds f5, f1, f31 +/* 80211694 0020E5F4 C0 63 67 00 */ lfs f3, lbl_805A6700@l(r3) +/* 80211698 0020E5F8 EC 80 E8 2A */ fadds f4, f0, f29 +/* 8021169C 0020E5FC C0 57 00 04 */ lfs f2, 4(r23) +/* 802116A0 0020E600 C0 17 00 08 */ lfs f0, 8(r23) +/* 802116A4 0020E604 38 61 01 80 */ addi r3, r1, 0x180 +/* 802116A8 0020E608 D0 C1 00 B8 */ stfs f6, 0xb8(r1) +/* 802116AC 0020E60C 38 A1 00 B4 */ addi r5, r1, 0xb4 +/* 802116B0 0020E610 C0 22 B2 A8 */ lfs f1, lbl_805ACFC8@sda21(r2) +/* 802116B4 0020E614 38 C1 00 A8 */ addi r6, r1, 0xa8 +/* 802116B8 0020E618 D0 81 00 B4 */ stfs f4, 0xb4(r1) +/* 802116BC 0020E61C 38 E1 01 38 */ addi r7, r1, 0x138 +/* 802116C0 0020E620 D0 A1 00 BC */ stfs f5, 0xbc(r1) +/* 802116C4 0020E624 D0 61 00 A8 */ stfs f3, 0xa8(r1) +/* 802116C8 0020E628 D0 41 00 AC */ stfs f2, 0xac(r1) +/* 802116CC 0020E62C D0 01 00 B0 */ stfs f0, 0xb0(r1) +/* 802116D0 0020E630 4B F7 31 39 */ bl RayStaticIntersection__14CGameCollisionFRC13CStateManagerRC9CVector3fRC9CVector3ffRC15CMaterialFilter +/* 802116D4 0020E634 88 81 01 A0 */ lbz r4, 0x1a0(r1) +/* 802116D8 0020E638 C0 E1 01 80 */ lfs f7, 0x180(r1) +/* 802116DC 0020E63C C0 C1 01 84 */ lfs f6, 0x184(r1) +/* 802116E0 0020E640 28 04 00 00 */ cmplwi r4, 0 +/* 802116E4 0020E644 C0 A1 01 88 */ lfs f5, 0x188(r1) +/* 802116E8 0020E648 C0 81 01 8C */ lfs f4, 0x18c(r1) +/* 802116EC 0020E64C C0 61 01 90 */ lfs f3, 0x190(r1) +/* 802116F0 0020E650 C0 41 01 94 */ lfs f2, 0x194(r1) +/* 802116F4 0020E654 C0 21 01 98 */ lfs f1, 0x198(r1) +/* 802116F8 0020E658 C0 01 01 9C */ lfs f0, 0x19c(r1) +/* 802116FC 0020E65C 80 01 01 A8 */ lwz r0, 0x1a8(r1) +/* 80211700 0020E660 80 61 01 AC */ lwz r3, 0x1ac(r1) +/* 80211704 0020E664 D0 E1 02 08 */ stfs f7, 0x208(r1) +/* 80211708 0020E668 D0 C1 02 0C */ stfs f6, 0x20c(r1) +/* 8021170C 0020E66C D0 A1 02 10 */ stfs f5, 0x210(r1) +/* 80211710 0020E670 D0 81 02 14 */ stfs f4, 0x214(r1) +/* 80211714 0020E674 D0 61 02 18 */ stfs f3, 0x218(r1) +/* 80211718 0020E678 D0 41 02 1C */ stfs f2, 0x21c(r1) +/* 8021171C 0020E67C D0 21 02 20 */ stfs f1, 0x220(r1) +/* 80211720 0020E680 D0 01 02 24 */ stfs f0, 0x224(r1) +/* 80211724 0020E684 98 81 02 28 */ stb r4, 0x228(r1) +/* 80211728 0020E688 90 61 02 34 */ stw r3, 0x234(r1) +/* 8021172C 0020E68C 90 01 02 30 */ stw r0, 0x230(r1) +/* 80211730 0020E690 41 82 02 6C */ beq lbl_8021199C +/* 80211734 0020E694 56 C0 06 3F */ clrlwi. r0, r22, 0x18 +/* 80211738 0020E698 40 82 00 14 */ bne lbl_8021174C +/* 8021173C 0020E69C 7F A4 EB 78 */ mr r4, r29 +/* 80211740 0020E6A0 38 61 02 A8 */ addi r3, r1, 0x2a8 +/* 80211744 0020E6A4 4B FF E7 05 */ bl "BuildBlockObjectList__13CEnvFxManagerFR27reserved_vector<9TUniqueId>R13CStateManager" +/* 80211748 0020E6A8 3A C0 00 01 */ li r22, 1 +lbl_8021174C: +/* 8021174C 0020E6AC 7F 35 CB 78 */ mr r21, r25 +/* 80211750 0020E6B0 48 00 02 38 */ b lbl_80211988 +lbl_80211754: +/* 80211754 0020E6B4 A0 15 00 00 */ lhz r0, 0(r21) +/* 80211758 0020E6B8 7F A3 EB 78 */ mr r3, r29 +/* 8021175C 0020E6BC 38 81 00 08 */ addi r4, r1, 8 +/* 80211760 0020E6C0 B0 01 00 08 */ sth r0, 8(r1) +/* 80211764 0020E6C4 4B E3 AE 41 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80211768 0020E6C8 7C 64 1B 78 */ mr r4, r3 +/* 8021176C 0020E6CC 38 61 00 0C */ addi r3, r1, 0xc +/* 80211770 0020E6D0 4B E9 57 79 */ bl "__ct__28TCastToPtr<14CScriptTrigger>FP7CEntity" +/* 80211774 0020E6D4 80 83 00 04 */ lwz r4, 4(r3) +/* 80211778 0020E6D8 28 04 00 00 */ cmplwi r4, 0 +/* 8021177C 0020E6DC 41 82 02 08 */ beq lbl_80211984 +/* 80211780 0020E6E0 81 84 00 00 */ lwz r12, 0(r4) +/* 80211784 0020E6E4 38 61 00 E4 */ addi r3, r1, 0xe4 +/* 80211788 0020E6E8 81 8C 00 40 */ lwz r12, 0x40(r12) +/* 8021178C 0020E6EC 7D 89 03 A6 */ mtctr r12 +/* 80211790 0020E6F0 4E 80 04 21 */ bctrl +/* 80211794 0020E6F4 88 01 00 FC */ lbz r0, 0xfc(r1) +/* 80211798 0020E6F8 28 00 00 00 */ cmplwi r0, 0 +/* 8021179C 0020E6FC 98 01 01 30 */ stb r0, 0x130(r1) +/* 802117A0 0020E700 41 82 00 3C */ beq lbl_802117DC +/* 802117A4 0020E704 34 61 01 18 */ addic. r3, r1, 0x118 +/* 802117A8 0020E708 41 82 00 34 */ beq lbl_802117DC +/* 802117AC 0020E70C C0 01 00 E4 */ lfs f0, 0xe4(r1) +/* 802117B0 0020E710 D0 03 00 00 */ stfs f0, 0(r3) +/* 802117B4 0020E714 C0 01 00 E8 */ lfs f0, 0xe8(r1) +/* 802117B8 0020E718 D0 03 00 04 */ stfs f0, 4(r3) +/* 802117BC 0020E71C C0 01 00 EC */ lfs f0, 0xec(r1) +/* 802117C0 0020E720 D0 03 00 08 */ stfs f0, 8(r3) +/* 802117C4 0020E724 C0 01 00 F0 */ lfs f0, 0xf0(r1) +/* 802117C8 0020E728 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 802117CC 0020E72C C0 01 00 F4 */ lfs f0, 0xf4(r1) +/* 802117D0 0020E730 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 802117D4 0020E734 C0 01 00 F8 */ lfs f0, 0xf8(r1) +/* 802117D8 0020E738 D0 03 00 14 */ stfs f0, 0x14(r3) +lbl_802117DC: +/* 802117DC 0020E73C 88 01 01 30 */ lbz r0, 0x130(r1) +/* 802117E0 0020E740 38 C0 00 00 */ li r6, 0 +/* 802117E4 0020E744 98 C1 00 FC */ stb r6, 0xfc(r1) +/* 802117E8 0020E748 28 00 00 00 */ cmplwi r0, 0 +/* 802117EC 0020E74C 40 82 00 0C */ bne lbl_802117F8 +/* 802117F0 0020E750 98 C1 01 30 */ stb r6, 0x130(r1) +/* 802117F4 0020E754 48 00 01 90 */ b lbl_80211984 +lbl_802117F8: +/* 802117F8 0020E758 80 AD 94 D4 */ lwz r5, lbl_805A8094@sda21(r13) +/* 802117FC 0020E75C 38 60 00 00 */ li r3, 0 +/* 80211800 0020E760 90 C1 00 44 */ stw r6, 0x44(r1) +/* 80211804 0020E764 38 80 00 01 */ li r4, 1 +/* 80211808 0020E768 90 C1 00 40 */ stw r6, 0x40(r1) +/* 8021180C 0020E76C 48 17 86 E9 */ bl __shl2i +/* 80211810 0020E770 80 01 00 40 */ lwz r0, 0x40(r1) +/* 80211814 0020E774 80 A1 00 44 */ lwz r5, 0x44(r1) +/* 80211818 0020E778 7C 00 1B 78 */ or r0, r0, r3 +/* 8021181C 0020E77C 38 61 01 E0 */ addi r3, r1, 0x1e0 +/* 80211820 0020E780 7C A5 23 78 */ or r5, r5, r4 +/* 80211824 0020E784 90 01 00 40 */ stw r0, 0x40(r1) +/* 80211828 0020E788 38 81 00 40 */ addi r4, r1, 0x40 +/* 8021182C 0020E78C 90 A1 00 44 */ stw r5, 0x44(r1) +/* 80211830 0020E790 48 0B E0 85 */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList +/* 80211834 0020E794 C0 C1 01 18 */ lfs f6, 0x118(r1) +/* 80211838 0020E798 3C 60 80 3F */ lis r3, lbl_803ECAD0@ha +/* 8021183C 0020E79C C0 A1 01 1C */ lfs f5, 0x11c(r1) +/* 80211840 0020E7A0 38 03 CA D0 */ addi r0, r3, lbl_803ECAD0@l +/* 80211844 0020E7A4 C0 81 01 20 */ lfs f4, 0x120(r1) +/* 80211848 0020E7A8 38 61 02 38 */ addi r3, r1, 0x238 +/* 8021184C 0020E7AC C0 61 01 24 */ lfs f3, 0x124(r1) +/* 80211850 0020E7B0 38 81 00 B4 */ addi r4, r1, 0xb4 +/* 80211854 0020E7B4 C0 41 01 28 */ lfs f2, 0x128(r1) +/* 80211858 0020E7B8 38 A1 00 A8 */ addi r5, r1, 0xa8 +/* 8021185C 0020E7BC C0 01 01 2C */ lfs f0, 0x12c(r1) +/* 80211860 0020E7C0 90 01 01 E0 */ stw r0, 0x1e0(r1) +/* 80211864 0020E7C4 C0 22 B2 A8 */ lfs f1, lbl_805ACFC8@sda21(r2) +/* 80211868 0020E7C8 D0 C1 01 F0 */ stfs f6, 0x1f0(r1) +/* 8021186C 0020E7CC D0 A1 01 F4 */ stfs f5, 0x1f4(r1) +/* 80211870 0020E7D0 D0 81 01 F8 */ stfs f4, 0x1f8(r1) +/* 80211874 0020E7D4 D0 61 01 FC */ stfs f3, 0x1fc(r1) +/* 80211878 0020E7D8 D0 41 02 00 */ stfs f2, 0x200(r1) +/* 8021187C 0020E7DC D0 01 02 04 */ stfs f0, 0x204(r1) +/* 80211880 0020E7E0 48 0C 47 ED */ bl __ct__5CMRayFRC9CVector3fRC9CVector3ff +/* 80211884 0020E7E4 C0 02 B2 A8 */ lfs f0, lbl_805ACFC8@sda21(r2) +/* 80211888 0020E7E8 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 8021188C 0020E7EC 38 83 66 70 */ addi r4, r3, skIdentity4f@l +/* 80211890 0020E7F0 D0 01 02 70 */ stfs f0, 0x270(r1) +/* 80211894 0020E7F4 7F 03 C3 78 */ mr r3, r24 +/* 80211898 0020E7F8 48 10 12 DD */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8021189C 0020E7FC 38 01 01 38 */ addi r0, r1, 0x138 +/* 802118A0 0020E800 81 81 01 E0 */ lwz r12, 0x1e0(r1) +/* 802118A4 0020E804 90 01 02 A4 */ stw r0, 0x2a4(r1) +/* 802118A8 0020E808 38 61 01 50 */ addi r3, r1, 0x150 +/* 802118AC 0020E80C 38 81 01 E0 */ addi r4, r1, 0x1e0 +/* 802118B0 0020E810 38 A1 02 38 */ addi r5, r1, 0x238 +/* 802118B4 0020E814 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 802118B8 0020E818 7D 89 03 A6 */ mtctr r12 +/* 802118BC 0020E81C 4E 80 04 21 */ bctrl +/* 802118C0 0020E820 88 A1 01 70 */ lbz r5, 0x170(r1) +/* 802118C4 0020E824 C0 E1 01 50 */ lfs f7, 0x150(r1) +/* 802118C8 0020E828 C0 C1 01 54 */ lfs f6, 0x154(r1) +/* 802118CC 0020E82C 28 05 00 00 */ cmplwi r5, 0 +/* 802118D0 0020E830 C0 A1 01 58 */ lfs f5, 0x158(r1) +/* 802118D4 0020E834 C0 01 01 5C */ lfs f0, 0x15c(r1) +/* 802118D8 0020E838 C0 81 01 60 */ lfs f4, 0x160(r1) +/* 802118DC 0020E83C C0 61 01 64 */ lfs f3, 0x164(r1) +/* 802118E0 0020E840 C0 41 01 68 */ lfs f2, 0x168(r1) +/* 802118E4 0020E844 C0 21 01 6C */ lfs f1, 0x16c(r1) +/* 802118E8 0020E848 80 01 01 78 */ lwz r0, 0x178(r1) +/* 802118EC 0020E84C 80 61 01 7C */ lwz r3, 0x17c(r1) +/* 802118F0 0020E850 D0 E1 01 B0 */ stfs f7, 0x1b0(r1) +/* 802118F4 0020E854 D0 C1 01 B4 */ stfs f6, 0x1b4(r1) +/* 802118F8 0020E858 D0 A1 01 B8 */ stfs f5, 0x1b8(r1) +/* 802118FC 0020E85C D0 01 01 BC */ stfs f0, 0x1bc(r1) +/* 80211900 0020E860 D0 81 01 C0 */ stfs f4, 0x1c0(r1) +/* 80211904 0020E864 D0 61 01 C4 */ stfs f3, 0x1c4(r1) +/* 80211908 0020E868 D0 41 01 C8 */ stfs f2, 0x1c8(r1) +/* 8021190C 0020E86C D0 21 01 CC */ stfs f1, 0x1cc(r1) +/* 80211910 0020E870 98 A1 01 D0 */ stb r5, 0x1d0(r1) +/* 80211914 0020E874 90 61 01 DC */ stw r3, 0x1dc(r1) +/* 80211918 0020E878 90 01 01 D8 */ stw r0, 0x1d8(r1) +/* 8021191C 0020E87C 41 82 00 48 */ beq lbl_80211964 +/* 80211920 0020E880 C0 01 02 08 */ lfs f0, 0x208(r1) +/* 80211924 0020E884 FC 07 00 40 */ fcmpo cr0, f7, f0 +/* 80211928 0020E888 40 80 00 3C */ bge lbl_80211964 +/* 8021192C 0020E88C 80 81 01 B4 */ lwz r4, 0x1b4(r1) +/* 80211930 0020E890 80 61 01 B8 */ lwz r3, 0x1b8(r1) +/* 80211934 0020E894 80 01 01 BC */ lwz r0, 0x1bc(r1) +/* 80211938 0020E898 C8 01 01 D8 */ lfd f0, 0x1d8(r1) +/* 8021193C 0020E89C D0 E1 02 08 */ stfs f7, 0x208(r1) +/* 80211940 0020E8A0 90 81 02 0C */ stw r4, 0x20c(r1) +/* 80211944 0020E8A4 90 61 02 10 */ stw r3, 0x210(r1) +/* 80211948 0020E8A8 90 01 02 14 */ stw r0, 0x214(r1) +/* 8021194C 0020E8AC D0 81 02 18 */ stfs f4, 0x218(r1) +/* 80211950 0020E8B0 D0 61 02 1C */ stfs f3, 0x21c(r1) +/* 80211954 0020E8B4 D0 41 02 20 */ stfs f2, 0x220(r1) +/* 80211958 0020E8B8 D0 21 02 24 */ stfs f1, 0x224(r1) +/* 8021195C 0020E8BC 98 A1 02 28 */ stb r5, 0x228(r1) +/* 80211960 0020E8C0 D8 01 02 30 */ stfd f0, 0x230(r1) +lbl_80211964: +/* 80211964 0020E8C4 3C 80 80 3F */ lis r4, lbl_803ECAD0@ha +/* 80211968 0020E8C8 3C 60 80 3E */ lis r3, lbl_803D97E4@ha +/* 8021196C 0020E8CC 38 84 CA D0 */ addi r4, r4, lbl_803ECAD0@l +/* 80211970 0020E8D0 38 00 00 00 */ li r0, 0 +/* 80211974 0020E8D4 90 81 01 E0 */ stw r4, 0x1e0(r1) +/* 80211978 0020E8D8 38 63 97 E4 */ addi r3, r3, lbl_803D97E4@l +/* 8021197C 0020E8DC 90 61 01 E0 */ stw r3, 0x1e0(r1) +/* 80211980 0020E8E0 98 01 01 30 */ stb r0, 0x130(r1) +lbl_80211984: +/* 80211984 0020E8E4 3A B5 00 02 */ addi r21, r21, 2 +lbl_80211988: +/* 80211988 0020E8E8 80 01 02 A8 */ lwz r0, 0x2a8(r1) +/* 8021198C 0020E8EC 54 00 08 3C */ slwi r0, r0, 1 +/* 80211990 0020E8F0 7C 19 02 14 */ add r0, r25, r0 +/* 80211994 0020E8F4 7C 15 00 40 */ cmplw r21, r0 +/* 80211998 0020E8F8 40 82 FD BC */ bne lbl_80211754 +lbl_8021199C: +/* 8021199C 0020E8FC 88 01 02 28 */ lbz r0, 0x228(r1) +/* 802119A0 0020E900 3B FF 00 01 */ addi r31, r31, 1 +/* 802119A4 0020E904 C0 01 02 14 */ lfs f0, 0x214(r1) +/* 802119A8 0020E908 98 01 00 2C */ stb r0, 0x2c(r1) +/* 802119AC 0020E90C D0 01 00 30 */ stfs f0, 0x30(r1) +/* 802119B0 0020E910 80 61 00 2C */ lwz r3, 0x2c(r1) +/* 802119B4 0020E914 80 01 00 30 */ lwz r0, 0x30(r1) +/* 802119B8 0020E918 90 61 00 34 */ stw r3, 0x34(r1) +/* 802119BC 0020E91C 90 01 00 38 */ stw r0, 0x38(r1) +/* 802119C0 0020E920 88 01 00 34 */ lbz r0, 0x34(r1) +/* 802119C4 0020E924 C0 01 00 38 */ lfs f0, 0x38(r1) +/* 802119C8 0020E928 98 1A 00 14 */ stb r0, 0x14(r26) +/* 802119CC 0020E92C D0 1A 00 18 */ stfs f0, 0x18(r26) +lbl_802119D0: +/* 802119D0 0020E930 88 1A 00 00 */ lbz r0, 0(r26) +/* 802119D4 0020E934 38 60 00 00 */ li r3, 0 +/* 802119D8 0020E938 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 802119DC 0020E93C 98 1A 00 00 */ stb r0, 0(r26) +lbl_802119E0: +/* 802119E0 0020E940 38 61 00 24 */ addi r3, r1, 0x24 +/* 802119E4 0020E944 38 9A 00 04 */ addi r4, r26, 4 +/* 802119E8 0020E948 38 BA 00 0C */ addi r5, r26, 0xc +/* 802119EC 0020E94C 48 10 29 29 */ bl __pl__FRC9CVector2iRC9CVector2i +/* 802119F0 0020E950 80 A1 00 70 */ lwz r5, 0x70(r1) +/* 802119F4 0020E954 80 1A 00 04 */ lwz r0, 4(r26) +/* 802119F8 0020E958 80 61 00 24 */ lwz r3, 0x24(r1) +/* 802119FC 0020E95C 7C 05 00 00 */ cmpw r5, r0 +/* 80211A00 0020E960 80 81 00 28 */ lwz r4, 0x28(r1) +/* 80211A04 0020E964 41 80 00 60 */ blt lbl_80211A64 +/* 80211A08 0020E968 80 C1 00 74 */ lwz r6, 0x74(r1) +/* 80211A0C 0020E96C 80 1A 00 08 */ lwz r0, 8(r26) +/* 80211A10 0020E970 7C 06 00 00 */ cmpw r6, r0 +/* 80211A14 0020E974 41 80 00 50 */ blt lbl_80211A64 +/* 80211A18 0020E978 7C 05 18 00 */ cmpw r5, r3 +/* 80211A1C 0020E97C 40 80 00 48 */ bge lbl_80211A64 +/* 80211A20 0020E980 7C 06 20 00 */ cmpw r6, r4 +/* 80211A24 0020E984 40 80 00 40 */ bge lbl_80211A64 +/* 80211A28 0020E988 88 1A 00 14 */ lbz r0, 0x14(r26) +/* 80211A2C 0020E98C C0 3A 00 18 */ lfs f1, 0x18(r26) +/* 80211A30 0020E990 28 00 00 00 */ cmplwi r0, 0 +/* 80211A34 0020E994 98 01 00 1C */ stb r0, 0x1c(r1) +/* 80211A38 0020E998 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 80211A3C 0020E99C 41 82 00 28 */ beq lbl_80211A64 +/* 80211A40 0020E9A0 C0 01 00 E0 */ lfs f0, 0xe0(r1) +/* 80211A44 0020E9A4 98 01 00 14 */ stb r0, 0x14(r1) +/* 80211A48 0020E9A8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80211A4C 0020E9AC D0 21 00 18 */ stfs f1, 0x18(r1) +/* 80211A50 0020E9B0 4C 40 13 82 */ cror 2, 0, 2 +/* 80211A54 0020E9B4 40 82 00 10 */ bne lbl_80211A64 +/* 80211A58 0020E9B8 38 00 00 01 */ li r0, 1 +/* 80211A5C 0020E9BC 98 1C 00 24 */ stb r0, 0x24(r28) +/* 80211A60 0020E9C0 93 DC 00 2C */ stw r30, 0x2c(r28) +lbl_80211A64: +/* 80211A64 0020E9C4 3B 5A 00 2C */ addi r26, r26, 0x2c +/* 80211A68 0020E9C8 3B DE 00 01 */ addi r30, r30, 1 +lbl_80211A6C: +/* 80211A6C 0020E9CC 80 1C 00 50 */ lwz r0, 0x50(r28) +/* 80211A70 0020E9D0 7C 1E 00 00 */ cmpw r30, r0 +/* 80211A74 0020E9D4 41 80 FA 80 */ blt lbl_802114F4 +/* 80211A78 0020E9D8 80 A1 02 A8 */ lwz r5, 0x2a8(r1) +/* 80211A7C 0020E9DC 38 60 00 00 */ li r3, 0 +/* 80211A80 0020E9E0 2C 05 00 00 */ cmpwi r5, 0 +/* 80211A84 0020E9E4 40 81 00 40 */ ble lbl_80211AC4 +/* 80211A88 0020E9E8 2C 05 00 08 */ cmpwi r5, 8 +/* 80211A8C 0020E9EC 38 85 FF F8 */ addi r4, r5, -8 +/* 80211A90 0020E9F0 40 81 00 20 */ ble lbl_80211AB0 +/* 80211A94 0020E9F4 38 04 00 07 */ addi r0, r4, 7 +/* 80211A98 0020E9F8 54 00 E8 FE */ srwi r0, r0, 3 +/* 80211A9C 0020E9FC 7C 09 03 A6 */ mtctr r0 +/* 80211AA0 0020EA00 2C 04 00 00 */ cmpwi r4, 0 +/* 80211AA4 0020EA04 40 81 00 0C */ ble lbl_80211AB0 +lbl_80211AA8: +/* 80211AA8 0020EA08 38 63 00 08 */ addi r3, r3, 8 +/* 80211AAC 0020EA0C 42 00 FF FC */ bdnz lbl_80211AA8 +lbl_80211AB0: +/* 80211AB0 0020EA10 7C 03 28 50 */ subf r0, r3, r5 +/* 80211AB4 0020EA14 7C 09 03 A6 */ mtctr r0 +/* 80211AB8 0020EA18 7C 03 28 00 */ cmpw r3, r5 +/* 80211ABC 0020EA1C 40 80 00 08 */ bge lbl_80211AC4 +lbl_80211AC0: +/* 80211AC0 0020EA20 42 00 00 00 */ bdnz lbl_80211AC0 +lbl_80211AC4: +/* 80211AC4 0020EA24 38 00 00 00 */ li r0, 0 +/* 80211AC8 0020EA28 90 01 02 A8 */ stw r0, 0x2a8(r1) +/* 80211ACC 0020EA2C E3 E1 0B 28 */ psq_l f31, -1240(r1), 0, qr0 +/* 80211AD0 0020EA30 CB E1 0B 20 */ lfd f31, 0xb20(r1) +/* 80211AD4 0020EA34 E3 C1 0B 18 */ psq_l f30, -1256(r1), 0, qr0 +/* 80211AD8 0020EA38 CB C1 0B 10 */ lfd f30, 0xb10(r1) +/* 80211ADC 0020EA3C E3 A1 0B 08 */ psq_l f29, -1272(r1), 0, qr0 +/* 80211AE0 0020EA40 CB A1 0B 00 */ lfd f29, 0xb00(r1) +/* 80211AE4 0020EA44 BA 01 0A C0 */ lmw r16, 0xac0(r1) +/* 80211AE8 0020EA48 80 01 0B 34 */ lwz r0, 0xb34(r1) +/* 80211AEC 0020EA4C 7C 08 03 A6 */ mtlr r0 +/* 80211AF0 0020EA50 38 21 0B 30 */ addi r1, r1, 0xb30 +/* 80211AF4 0020EA54 4E 80 00 20 */ blr + +.global "CalculateSnowForces__13CEnvFxManagerFRC15CVectorFixed8_8R34reserved_vector<15CVectorFixed8_8>10EEnvFxTypeRC9CVector3ff" +"CalculateSnowForces__13CEnvFxManagerFRC15CVectorFixed8_8R34reserved_vector<15CVectorFixed8_8>10EEnvFxTypeRC9CVector3ff": +/* 80211AF8 0020EA58 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80211AFC 0020EA5C 2C 06 00 01 */ cmpwi r6, 1 +/* 80211B00 0020EA60 BF 61 00 4C */ stmw r27, 0x4c(r1) +/* 80211B04 0020EA64 40 82 01 24 */ bne lbl_80211C28 +/* 80211B08 0020EA68 39 06 FF FF */ addi r8, r6, -1 +/* 80211B0C 0020EA6C 20 06 00 01 */ subfic r0, r6, 1 +/* 80211B10 0020EA70 7D 00 00 F8 */ nor r0, r8, r0 +/* 80211B14 0020EA74 3D 00 80 47 */ lis r8, lbl_8046CB40@ha +/* 80211B18 0020EA78 3D 20 80 5A */ lis r9, skZero3f@ha +/* 80211B1C 0020EA7C 39 60 00 00 */ li r11, 0 +/* 80211B20 0020EA80 39 49 66 A0 */ addi r10, r9, skZero3f@l +/* 80211B24 0020EA84 7C 09 FE 70 */ srawi r9, r0, 0x1f +/* 80211B28 0020EA88 38 08 CB 40 */ addi r0, r8, lbl_8046CB40@l +/* 80211B2C 0020EA8C C0 EA 00 00 */ lfs f7, 0(r10) +/* 80211B30 0020EA90 7C 08 48 39 */ and. r8, r0, r9 +/* 80211B34 0020EA94 C1 0A 00 04 */ lfs f8, 4(r10) +/* 80211B38 0020EA98 C1 2A 00 08 */ lfs f9, 8(r10) +/* 80211B3C 0020EA9C 7D 6C 5B 78 */ mr r12, r11 +/* 80211B40 0020EAA0 7D 7B 5B 78 */ mr r27, r11 +/* 80211B44 0020EAA4 41 82 00 E4 */ beq lbl_80211C28 +/* 80211B48 0020EAA8 C0 02 B2 78 */ lfs f0, lbl_805ACF98@sda21(r2) +/* 80211B4C 0020EAAC 38 00 01 00 */ li r0, 0x100 +/* 80211B50 0020EAB0 3B E8 07 F8 */ addi r31, r8, 0x7f8 +/* 80211B54 0020EAB4 C0 82 B2 94 */ lfs f4, lbl_805ACFB4@sda21(r2) +/* 80211B58 0020EAB8 ED 41 00 32 */ fmuls f10, f1, f0 +/* 80211B5C 0020EABC 7C 09 03 A6 */ mtctr r0 +lbl_80211B60: +/* 80211B60 0020EAC0 C0 1F 00 00 */ lfs f0, 0(r31) +/* 80211B64 0020EAC4 C0 5F 00 04 */ lfs f2, 4(r31) +/* 80211B68 0020EAC8 EC A1 00 32 */ fmuls f5, f1, f0 +/* 80211B6C 0020EACC C0 C7 00 00 */ lfs f6, 0(r7) +/* 80211B70 0020EAD0 C0 07 00 08 */ lfs f0, 8(r7) +/* 80211B74 0020EAD4 EC 41 00 B2 */ fmuls f2, f1, f2 +/* 80211B78 0020EAD8 C0 67 00 04 */ lfs f3, 4(r7) +/* 80211B7C 0020EADC EC A6 01 72 */ fmuls f5, f6, f5 +/* 80211B80 0020EAE0 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 80211B84 0020EAE4 80 05 00 00 */ lwz r0, 0(r5) +/* 80211B88 0020EAE8 EC 00 02 B2 */ fmuls f0, f0, f10 +/* 80211B8C 0020EAEC EC E7 28 2A */ fadds f7, f7, f5 +/* 80211B90 0020EAF0 1C 00 00 06 */ mulli r0, r0, 6 +/* 80211B94 0020EAF4 ED 08 10 2A */ fadds f8, f8, f2 +/* 80211B98 0020EAF8 ED 29 00 2A */ fadds f9, f9, f0 +/* 80211B9C 0020EAFC EC 64 01 F2 */ fmuls f3, f4, f7 +/* 80211BA0 0020EB00 7D 45 02 14 */ add r10, r5, r0 +/* 80211BA4 0020EB04 EC 44 02 32 */ fmuls f2, f4, f8 +/* 80211BA8 0020EB08 35 4A 00 04 */ addic. r10, r10, 4 +/* 80211BAC 0020EB0C EC 04 02 72 */ fmuls f0, f4, f9 +/* 80211BB0 0020EB10 FC 60 18 1E */ fctiwz f3, f3 +/* 80211BB4 0020EB14 FC 40 10 1E */ fctiwz f2, f2 +/* 80211BB8 0020EB18 FC 00 00 1E */ fctiwz f0, f0 +/* 80211BBC 0020EB1C D8 61 00 30 */ stfd f3, 0x30(r1) +/* 80211BC0 0020EB20 D8 41 00 38 */ stfd f2, 0x38(r1) +/* 80211BC4 0020EB24 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80211BC8 0020EB28 D8 01 00 40 */ stfd f0, 0x40(r1) +/* 80211BCC 0020EB2C 81 21 00 3C */ lwz r9, 0x3c(r1) +/* 80211BD0 0020EB30 7C 1C 07 34 */ extsh r28, r0 +/* 80211BD4 0020EB34 81 01 00 44 */ lwz r8, 0x44(r1) +/* 80211BD8 0020EB38 7C 0B E0 50 */ subf r0, r11, r28 +/* 80211BDC 0020EB3C 7D 3D 07 34 */ extsh r29, r9 +/* 80211BE0 0020EB40 7D 1E 07 34 */ extsh r30, r8 +/* 80211BE4 0020EB44 7C 09 07 34 */ extsh r9, r0 +/* 80211BE8 0020EB48 7D 0C E8 50 */ subf r8, r12, r29 +/* 80211BEC 0020EB4C 7C 1B F0 50 */ subf r0, r27, r30 +/* 80211BF0 0020EB50 7D 08 07 34 */ extsh r8, r8 +/* 80211BF4 0020EB54 7C 00 07 34 */ extsh r0, r0 +/* 80211BF8 0020EB58 41 82 00 10 */ beq lbl_80211C08 +/* 80211BFC 0020EB5C B1 2A 00 00 */ sth r9, 0(r10) +/* 80211C00 0020EB60 B1 0A 00 02 */ sth r8, 2(r10) +/* 80211C04 0020EB64 B0 0A 00 04 */ sth r0, 4(r10) +lbl_80211C08: +/* 80211C08 0020EB68 81 05 00 00 */ lwz r8, 0(r5) +/* 80211C0C 0020EB6C 7F 8B E3 78 */ mr r11, r28 +/* 80211C10 0020EB70 7F AC EB 78 */ mr r12, r29 +/* 80211C14 0020EB74 7F DB F3 78 */ mr r27, r30 +/* 80211C18 0020EB78 38 08 00 01 */ addi r0, r8, 1 +/* 80211C1C 0020EB7C 3B FF FF F8 */ addi r31, r31, -8 +/* 80211C20 0020EB80 90 05 00 00 */ stw r0, 0(r5) +/* 80211C24 0020EB84 42 00 FF 3C */ bdnz lbl_80211B60 +lbl_80211C28: +/* 80211C28 0020EB88 2C 06 00 01 */ cmpwi r6, 1 +/* 80211C2C 0020EB8C 40 82 01 1C */ bne lbl_80211D48 +/* 80211C30 0020EB90 C0 82 B2 94 */ lfs f4, lbl_805ACFB4@sda21(r2) +/* 80211C34 0020EB94 38 C5 00 04 */ addi r6, r5, 4 +/* 80211C38 0020EB98 38 03 0B 88 */ addi r0, r3, 0xb88 +/* 80211C3C 0020EB9C 38 60 00 00 */ li r3, 0 +/* 80211C40 0020EBA0 48 00 00 FC */ b lbl_80211D3C +lbl_80211C44: +/* 80211C44 0020EBA4 54 68 07 3E */ clrlwi r8, r3, 0x1c +/* 80211C48 0020EBA8 C0 07 00 00 */ lfs f0, 0(r7) +/* 80211C4C 0020EBAC 1D 08 00 0C */ mulli r8, r8, 0xc +/* 80211C50 0020EBB0 C0 47 00 04 */ lfs f2, 4(r7) +/* 80211C54 0020EBB4 C0 67 00 08 */ lfs f3, 8(r7) +/* 80211C58 0020EBB8 38 63 00 01 */ addi r3, r3, 1 +/* 80211C5C 0020EBBC A9 66 00 00 */ lha r11, 0(r6) +/* 80211C60 0020EBC0 7D 00 42 14 */ add r8, r0, r8 +/* 80211C64 0020EBC4 C0 A8 00 00 */ lfs f5, 0(r8) +/* 80211C68 0020EBC8 C0 E8 00 04 */ lfs f7, 4(r8) +/* 80211C6C 0020EBCC EC C1 01 72 */ fmuls f6, f1, f5 +/* 80211C70 0020EBD0 C0 A8 00 08 */ lfs f5, 8(r8) +/* 80211C74 0020EBD4 ED 01 01 F2 */ fmuls f8, f1, f7 +/* 80211C78 0020EBD8 A9 04 00 00 */ lha r8, 0(r4) +/* 80211C7C 0020EBDC EC E1 01 72 */ fmuls f7, f1, f5 +/* 80211C80 0020EBE0 AB E6 00 02 */ lha r31, 2(r6) +/* 80211C84 0020EBE4 EC A0 01 B2 */ fmuls f5, f0, f6 +/* 80211C88 0020EBE8 AB C6 00 04 */ lha r30, 4(r6) +/* 80211C8C 0020EBEC ED 22 02 32 */ fmuls f9, f2, f8 +/* 80211C90 0020EBF0 A9 44 00 02 */ lha r10, 2(r4) +/* 80211C94 0020EBF4 ED 43 01 F2 */ fmuls f10, f3, f7 +/* 80211C98 0020EBF8 A9 24 00 04 */ lha r9, 4(r4) +/* 80211C9C 0020EBFC EC 04 01 72 */ fmuls f0, f4, f5 +/* 80211CA0 0020EC00 D0 C1 00 18 */ stfs f6, 0x18(r1) +/* 80211CA4 0020EC04 EC 44 02 72 */ fmuls f2, f4, f9 +/* 80211CA8 0020EC08 EC 64 02 B2 */ fmuls f3, f4, f10 +/* 80211CAC 0020EC0C D1 01 00 1C */ stfs f8, 0x1c(r1) +/* 80211CB0 0020EC10 FC 00 00 1E */ fctiwz f0, f0 +/* 80211CB4 0020EC14 FC 40 10 1E */ fctiwz f2, f2 +/* 80211CB8 0020EC18 D0 E1 00 20 */ stfs f7, 0x20(r1) +/* 80211CBC 0020EC1C FC 60 18 1E */ fctiwz f3, f3 +/* 80211CC0 0020EC20 D8 01 00 30 */ stfd f0, 0x30(r1) +/* 80211CC4 0020EC24 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 80211CC8 0020EC28 D8 41 00 38 */ stfd f2, 0x38(r1) +/* 80211CCC 0020EC2C 7F AC 07 34 */ extsh r12, r29 +/* 80211CD0 0020EC30 7D 8B 62 14 */ add r12, r11, r12 +/* 80211CD4 0020EC34 83 61 00 3C */ lwz r27, 0x3c(r1) +/* 80211CD8 0020EC38 D8 61 00 40 */ stfd f3, 0x40(r1) +/* 80211CDC 0020EC3C 7D 8B 07 34 */ extsh r11, r12 +/* 80211CE0 0020EC40 7D 0B 42 14 */ add r8, r11, r8 +/* 80211CE4 0020EC44 7F 6B 07 34 */ extsh r11, r27 +/* 80211CE8 0020EC48 83 81 00 44 */ lwz r28, 0x44(r1) +/* 80211CEC 0020EC4C 7D 7F 5A 14 */ add r11, r31, r11 +/* 80211CF0 0020EC50 B1 06 00 00 */ sth r8, 0(r6) +/* 80211CF4 0020EC54 7D 7F 07 34 */ extsh r31, r11 +/* 80211CF8 0020EC58 7D 1F 52 14 */ add r8, r31, r10 +/* 80211CFC 0020EC5C 7F 8A 07 34 */ extsh r10, r28 +/* 80211D00 0020EC60 7D 5E 52 14 */ add r10, r30, r10 +/* 80211D04 0020EC64 B1 06 00 02 */ sth r8, 2(r6) +/* 80211D08 0020EC68 7D 48 07 34 */ extsh r8, r10 +/* 80211D0C 0020EC6C 7D 08 4A 14 */ add r8, r8, r9 +/* 80211D10 0020EC70 D0 A1 00 24 */ stfs f5, 0x24(r1) +/* 80211D14 0020EC74 B1 06 00 04 */ sth r8, 4(r6) +/* 80211D18 0020EC78 38 C6 00 06 */ addi r6, r6, 6 +/* 80211D1C 0020EC7C D1 21 00 28 */ stfs f9, 0x28(r1) +/* 80211D20 0020EC80 D1 41 00 2C */ stfs f10, 0x2c(r1) +/* 80211D24 0020EC84 B3 A1 00 08 */ sth r29, 8(r1) +/* 80211D28 0020EC88 B3 61 00 0A */ sth r27, 0xa(r1) +/* 80211D2C 0020EC8C B3 81 00 0C */ sth r28, 0xc(r1) +/* 80211D30 0020EC90 B1 81 00 10 */ sth r12, 0x10(r1) +/* 80211D34 0020EC94 B1 61 00 12 */ sth r11, 0x12(r1) +/* 80211D38 0020EC98 B1 41 00 14 */ sth r10, 0x14(r1) +lbl_80211D3C: +/* 80211D3C 0020EC9C 81 05 00 00 */ lwz r8, 0(r5) +/* 80211D40 0020ECA0 7C 03 40 00 */ cmpw r3, r8 +/* 80211D44 0020ECA4 41 80 FF 00 */ blt lbl_80211C44 +lbl_80211D48: +/* 80211D48 0020ECA8 BB 61 00 4C */ lmw r27, 0x4c(r1) +/* 80211D4C 0020ECAC 38 21 00 60 */ addi r1, r1, 0x60 +/* 80211D50 0020ECB0 4E 80 00 20 */ blr + +.global CreateNewParticles__13CEnvFxManagerF10EEnvFxType +CreateNewParticles__13CEnvFxManagerF10EEnvFxType: +/* 80211D54 0020ECB4 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 80211D58 0020ECB8 7C 08 02 A6 */ mflr r0 +/* 80211D5C 0020ECBC 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 80211D60 0020ECC0 DB E1 00 A0 */ stfd f31, 0xa0(r1) +/* 80211D64 0020ECC4 F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0 +/* 80211D68 0020ECC8 DB C1 00 90 */ stfd f30, 0x90(r1) +/* 80211D6C 0020ECCC F3 C1 00 98 */ psq_st f30, 152(r1), 0, qr0 +/* 80211D70 0020ECD0 DB A1 00 80 */ stfd f29, 0x80(r1) +/* 80211D74 0020ECD4 F3 A1 00 88 */ psq_st f29, 136(r1), 0, qr0 +/* 80211D78 0020ECD8 BE A1 00 54 */ stmw r21, 0x54(r1) +/* 80211D7C 0020ECDC 2C 04 00 01 */ cmpwi r4, 1 +/* 80211D80 0020ECE0 7C 77 1B 78 */ mr r23, r3 +/* 80211D84 0020ECE4 40 82 00 0C */ bne lbl_80211D90 +/* 80211D88 0020ECE8 38 00 1C 98 */ li r0, 0x1c98 +/* 80211D8C 0020ECEC 48 00 00 2C */ b lbl_80211DB8 +lbl_80211D90: +/* 80211D90 0020ECF0 2C 04 00 02 */ cmpwi r4, 2 +/* 80211D94 0020ECF4 40 82 00 0C */ bne lbl_80211DA0 +/* 80211D98 0020ECF8 38 00 2A F8 */ li r0, 0x2af8 +/* 80211D9C 0020ECFC 48 00 00 1C */ b lbl_80211DB8 +lbl_80211DA0: +/* 80211DA0 0020ED00 38 64 FF FD */ addi r3, r4, -3 +/* 80211DA4 0020ED04 20 04 00 03 */ subfic r0, r4, 3 +/* 80211DA8 0020ED08 7C 63 00 F8 */ nor r3, r3, r0 +/* 80211DAC 0020ED0C 38 00 1F D6 */ li r0, 0x1fd6 +/* 80211DB0 0020ED10 7C 63 FE 70 */ srawi r3, r3, 0x1f +/* 80211DB4 0020ED14 7C 00 18 38 */ and r0, r0, r3 +lbl_80211DB8: +/* 80211DB8 0020ED18 7C 00 36 70 */ srawi r0, r0, 6 +/* 80211DBC 0020ED1C 3C 60 43 30 */ lis r3, 0x4330 +/* 80211DC0 0020ED20 7C A0 01 94 */ addze r5, r0 +/* 80211DC4 0020ED24 88 0D A4 F4 */ lbz r0, lbl_805A90B4@sda21(r13) +/* 80211DC8 0020ED28 6C A4 80 00 */ xoris r4, r5, 0x8000 +/* 80211DCC 0020ED2C 90 61 00 20 */ stw r3, 0x20(r1) +/* 80211DD0 0020ED30 C8 22 B2 48 */ lfd f1, lbl_805ACF68@sda21(r2) +/* 80211DD4 0020ED34 7C 00 07 75 */ extsb. r0, r0 +/* 80211DD8 0020ED38 90 81 00 24 */ stw r4, 0x24(r1) +/* 80211DDC 0020ED3C 7C B5 2B 78 */ mr r21, r5 +/* 80211DE0 0020ED40 C0 57 00 30 */ lfs f2, 0x30(r23) +/* 80211DE4 0020ED44 C8 01 00 20 */ lfd f0, 0x20(r1) +/* 80211DE8 0020ED48 EC 00 08 28 */ fsubs f0, f0, f1 +/* 80211DEC 0020ED4C EC 02 00 32 */ fmuls f0, f2, f0 +/* 80211DF0 0020ED50 FC 00 00 1E */ fctiwz f0, f0 +/* 80211DF4 0020ED54 D8 01 00 28 */ stfd f0, 0x28(r1) +/* 80211DF8 0020ED58 83 41 00 2C */ lwz r26, 0x2c(r1) +/* 80211DFC 0020ED5C 40 82 00 14 */ bne lbl_80211E10 +/* 80211E00 0020ED60 38 60 00 00 */ li r3, 0 +/* 80211E04 0020ED64 38 00 00 01 */ li r0, 1 +/* 80211E08 0020ED68 90 6D A4 F0 */ stw r3, lbl_805A90B0@sda21(r13) +/* 80211E0C 0020ED6C 98 0D A4 F4 */ stb r0, lbl_805A90B4@sda21(r13) +lbl_80211E10: +/* 80211E10 0020ED70 80 8D A4 F0 */ lwz r4, lbl_805A90B0@sda21(r13) +/* 80211E14 0020ED74 38 61 00 08 */ addi r3, r1, 8 +/* 80211E18 0020ED78 48 10 07 D5 */ bl __ct__9CRandom16FUi +/* 80211E1C 0020ED7C 80 77 00 50 */ lwz r3, 0x50(r23) +/* 80211E20 0020ED80 7E BB AB 78 */ mr r27, r21 +/* 80211E24 0020ED84 3B 23 FF FF */ addi r25, r3, -1 +/* 80211E28 0020ED88 1C 19 00 2C */ mulli r0, r25, 0x2c +/* 80211E2C 0020ED8C 7F 97 02 14 */ add r28, r23, r0 +/* 80211E30 0020ED90 3B 9C 00 54 */ addi r28, r28, 0x54 +/* 80211E34 0020ED94 48 00 01 7C */ b lbl_80211FB0 +lbl_80211E38: +/* 80211E38 0020ED98 88 1C 00 14 */ lbz r0, 0x14(r28) +/* 80211E3C 0020ED9C C0 1C 00 18 */ lfs f0, 0x18(r28) +/* 80211E40 0020EDA0 28 00 00 00 */ cmplwi r0, 0 +/* 80211E44 0020EDA4 98 01 00 14 */ stb r0, 0x14(r1) +/* 80211E48 0020EDA8 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 80211E4C 0020EDAC 41 82 01 5C */ beq lbl_80211FA8 +/* 80211E50 0020EDB0 80 1C 00 20 */ lwz r0, 0x20(r28) +/* 80211E54 0020EDB4 3B DC 00 1C */ addi r30, r28, 0x1c +/* 80211E58 0020EDB8 7C 1A 00 00 */ cmpw r26, r0 +/* 80211E5C 0020EDBC 40 81 01 2C */ ble lbl_80211F88 +/* 80211E60 0020EDC0 80 1E 00 08 */ lwz r0, 8(r30) +/* 80211E64 0020EDC4 7C 1A 00 00 */ cmpw r26, r0 +/* 80211E68 0020EDC8 40 81 00 10 */ ble lbl_80211E78 +/* 80211E6C 0020EDCC 7F C3 F3 78 */ mr r3, r30 +/* 80211E70 0020EDD0 7F 64 DB 78 */ mr r4, r27 +/* 80211E74 0020EDD4 48 00 1B 55 */ bl sub_802139c8 +lbl_80211E78: +/* 80211E78 0020EDD8 80 1E 00 04 */ lwz r0, 4(r30) +/* 80211E7C 0020EDDC 3A E0 00 00 */ li r23, 0 +/* 80211E80 0020EDE0 CB C2 B2 48 */ lfd f30, lbl_805ACF68@sda21(r2) +/* 80211E84 0020EDE4 3F E0 43 30 */ lis r31, 0x4330 +/* 80211E88 0020EDE8 C3 E2 B2 94 */ lfs f31, lbl_805ACFB4@sda21(r2) +/* 80211E8C 0020EDEC 7F 00 D0 50 */ subf r24, r0, r26 +/* 80211E90 0020EDF0 48 00 00 EC */ b lbl_80211F7C +lbl_80211E94: +/* 80211E94 0020EDF4 C0 22 B2 78 */ lfs f1, lbl_805ACF98@sda21(r2) +/* 80211E98 0020EDF8 38 61 00 08 */ addi r3, r1, 8 +/* 80211E9C 0020EDFC C0 42 B2 AC */ lfs f2, lbl_805ACFCC@sda21(r2) +/* 80211EA0 0020EE00 48 10 06 A5 */ bl Range__9CRandom16Fff +/* 80211EA4 0020EE04 80 1C 00 10 */ lwz r0, 0x10(r28) +/* 80211EA8 0020EE08 FF A0 08 90 */ fmr f29, f1 +/* 80211EAC 0020EE0C 93 E1 00 28 */ stw r31, 0x28(r1) +/* 80211EB0 0020EE10 38 61 00 08 */ addi r3, r1, 8 +/* 80211EB4 0020EE14 6C 00 80 00 */ xoris r0, r0, 0x8000 +/* 80211EB8 0020EE18 C0 22 B2 78 */ lfs f1, lbl_805ACF98@sda21(r2) +/* 80211EBC 0020EE1C 90 01 00 2C */ stw r0, 0x2c(r1) +/* 80211EC0 0020EE20 C8 01 00 28 */ lfd f0, 0x28(r1) +/* 80211EC4 0020EE24 EC 40 F0 28 */ fsubs f2, f0, f30 +/* 80211EC8 0020EE28 48 10 06 7D */ bl Range__9CRandom16Fff +/* 80211ECC 0020EE2C 80 1C 00 0C */ lwz r0, 0xc(r28) +/* 80211ED0 0020EE30 FC 40 08 1E */ fctiwz f2, f1 +/* 80211ED4 0020EE34 93 E1 00 30 */ stw r31, 0x30(r1) +/* 80211ED8 0020EE38 38 61 00 08 */ addi r3, r1, 8 +/* 80211EDC 0020EE3C 6C 00 80 00 */ xoris r0, r0, 0x8000 +/* 80211EE0 0020EE40 C0 22 B2 78 */ lfs f1, lbl_805ACF98@sda21(r2) +/* 80211EE4 0020EE44 90 01 00 34 */ stw r0, 0x34(r1) +/* 80211EE8 0020EE48 C8 01 00 30 */ lfd f0, 0x30(r1) +/* 80211EEC 0020EE4C D8 41 00 20 */ stfd f2, 0x20(r1) +/* 80211EF0 0020EE50 EC 40 F0 28 */ fsubs f2, f0, f30 +/* 80211EF4 0020EE54 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 80211EF8 0020EE58 48 10 06 4D */ bl Range__9CRandom16Fff +/* 80211EFC 0020EE5C EC 1F 07 72 */ fmuls f0, f31, f29 +/* 80211F00 0020EE60 80 1E 00 04 */ lwz r0, 4(r30) +/* 80211F04 0020EE64 FC 20 08 1E */ fctiwz f1, f1 +/* 80211F08 0020EE68 80 BE 00 08 */ lwz r5, 8(r30) +/* 80211F0C 0020EE6C 7F BD 07 34 */ extsh r29, r29 +/* 80211F10 0020EE70 FC 00 00 1E */ fctiwz f0, f0 +/* 80211F14 0020EE74 D8 21 00 38 */ stfd f1, 0x38(r1) +/* 80211F18 0020EE78 7C 00 28 00 */ cmpw r0, r5 +/* 80211F1C 0020EE7C D8 01 00 40 */ stfd f0, 0x40(r1) +/* 80211F20 0020EE80 80 61 00 3C */ lwz r3, 0x3c(r1) +/* 80211F24 0020EE84 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80211F28 0020EE88 7C 76 07 34 */ extsh r22, r3 +/* 80211F2C 0020EE8C 7C 15 07 34 */ extsh r21, r0 +/* 80211F30 0020EE90 41 80 00 1C */ blt lbl_80211F4C +/* 80211F34 0020EE94 2C 05 00 00 */ cmpwi r5, 0 +/* 80211F38 0020EE98 7F C3 F3 78 */ mr r3, r30 +/* 80211F3C 0020EE9C 38 80 00 04 */ li r4, 4 +/* 80211F40 0020EEA0 41 82 00 08 */ beq lbl_80211F48 +/* 80211F44 0020EEA4 54 A4 08 3C */ slwi r4, r5, 1 +lbl_80211F48: +/* 80211F48 0020EEA8 48 00 1A 81 */ bl sub_802139c8 +lbl_80211F4C: +/* 80211F4C 0020EEAC 80 1E 00 04 */ lwz r0, 4(r30) +/* 80211F50 0020EEB0 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 80211F54 0020EEB4 1C 00 00 06 */ mulli r0, r0, 6 +/* 80211F58 0020EEB8 7C 63 02 15 */ add. r3, r3, r0 +/* 80211F5C 0020EEBC 41 82 00 10 */ beq lbl_80211F6C +/* 80211F60 0020EEC0 B2 C3 00 00 */ sth r22, 0(r3) +/* 80211F64 0020EEC4 B3 A3 00 02 */ sth r29, 2(r3) +/* 80211F68 0020EEC8 B2 A3 00 04 */ sth r21, 4(r3) +lbl_80211F6C: +/* 80211F6C 0020EECC 80 7E 00 04 */ lwz r3, 4(r30) +/* 80211F70 0020EED0 3A F7 00 01 */ addi r23, r23, 1 +/* 80211F74 0020EED4 38 03 00 01 */ addi r0, r3, 1 +/* 80211F78 0020EED8 90 1E 00 04 */ stw r0, 4(r30) +lbl_80211F7C: +/* 80211F7C 0020EEDC 7C 17 C0 00 */ cmpw r23, r24 +/* 80211F80 0020EEE0 41 80 FF 14 */ blt lbl_80211E94 +/* 80211F84 0020EEE4 48 00 00 24 */ b lbl_80211FA8 +lbl_80211F88: +/* 80211F88 0020EEE8 38 00 00 00 */ li r0, 0 +/* 80211F8C 0020EEEC 7F C3 F3 78 */ mr r3, r30 +/* 80211F90 0020EEF0 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80211F94 0020EEF4 7F 44 D3 78 */ mr r4, r26 +/* 80211F98 0020EEF8 38 A1 00 0C */ addi r5, r1, 0xc +/* 80211F9C 0020EEFC B0 01 00 0E */ sth r0, 0xe(r1) +/* 80211FA0 0020EF00 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80211FA4 0020EF04 48 00 00 49 */ bl sub_80211fec +lbl_80211FA8: +/* 80211FA8 0020EF08 3B 9C FF D4 */ addi r28, r28, -44 +/* 80211FAC 0020EF0C 3B 39 FF FF */ addi r25, r25, -1 +lbl_80211FB0: +/* 80211FB0 0020EF10 2C 19 00 00 */ cmpwi r25, 0 +/* 80211FB4 0020EF14 40 80 FE 84 */ bge lbl_80211E38 +/* 80211FB8 0020EF18 80 01 00 08 */ lwz r0, 8(r1) +/* 80211FBC 0020EF1C 90 0D A4 F0 */ stw r0, lbl_805A90B0@sda21(r13) +/* 80211FC0 0020EF20 E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0 +/* 80211FC4 0020EF24 CB E1 00 A0 */ lfd f31, 0xa0(r1) +/* 80211FC8 0020EF28 E3 C1 00 98 */ psq_l f30, 152(r1), 0, qr0 +/* 80211FCC 0020EF2C CB C1 00 90 */ lfd f30, 0x90(r1) +/* 80211FD0 0020EF30 E3 A1 00 88 */ psq_l f29, 136(r1), 0, qr0 +/* 80211FD4 0020EF34 CB A1 00 80 */ lfd f29, 0x80(r1) +/* 80211FD8 0020EF38 BA A1 00 54 */ lmw r21, 0x54(r1) +/* 80211FDC 0020EF3C 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 80211FE0 0020EF40 7C 08 03 A6 */ mtlr r0 +/* 80211FE4 0020EF44 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 80211FE8 0020EF48 4E 80 00 20 */ blr + +.global sub_80211fec +sub_80211fec: +/* 80211FEC 0020EF4C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80211FF0 0020EF50 7C 08 02 A6 */ mflr r0 +/* 80211FF4 0020EF54 90 01 00 34 */ stw r0, 0x34(r1) +/* 80211FF8 0020EF58 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80211FFC 0020EF5C 7C 9F 23 78 */ mr r31, r4 +/* 80212000 0020EF60 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80212004 0020EF64 7C 7E 1B 78 */ mr r30, r3 +/* 80212008 0020EF68 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8021200C 0020EF6C 7C BD 2B 78 */ mr r29, r5 +/* 80212010 0020EF70 80 03 00 04 */ lwz r0, 4(r3) +/* 80212014 0020EF74 7C 00 F8 00 */ cmpw r0, r31 +/* 80212018 0020EF78 41 82 00 90 */ beq lbl_802120A8 +/* 8021201C 0020EF7C 7C 1F 00 00 */ cmpw r31, r0 +/* 80212020 0020EF80 40 81 00 50 */ ble lbl_80212070 +/* 80212024 0020EF84 48 00 19 A5 */ bl sub_802139c8 +/* 80212028 0020EF88 80 9E 00 04 */ lwz r4, 4(r30) +/* 8021202C 0020EF8C 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 80212030 0020EF90 1C 04 00 06 */ mulli r0, r4, 6 +/* 80212034 0020EF94 7C 84 F8 51 */ subf. r4, r4, r31 +/* 80212038 0020EF98 7C 63 02 14 */ add r3, r3, r0 +/* 8021203C 0020EF9C 7C 89 03 A6 */ mtctr r4 +/* 80212040 0020EFA0 40 81 00 64 */ ble lbl_802120A4 +lbl_80212044: +/* 80212044 0020EFA4 28 03 00 00 */ cmplwi r3, 0 +/* 80212048 0020EFA8 41 82 00 1C */ beq lbl_80212064 +/* 8021204C 0020EFAC A8 1D 00 00 */ lha r0, 0(r29) +/* 80212050 0020EFB0 B0 03 00 00 */ sth r0, 0(r3) +/* 80212054 0020EFB4 A8 1D 00 02 */ lha r0, 2(r29) +/* 80212058 0020EFB8 B0 03 00 02 */ sth r0, 2(r3) +/* 8021205C 0020EFBC A8 1D 00 04 */ lha r0, 4(r29) +/* 80212060 0020EFC0 B0 03 00 04 */ sth r0, 4(r3) +lbl_80212064: +/* 80212064 0020EFC4 38 63 00 06 */ addi r3, r3, 6 +/* 80212068 0020EFC8 42 00 FF DC */ bdnz lbl_80212044 +/* 8021206C 0020EFCC 48 00 00 38 */ b lbl_802120A4 +lbl_80212070: +/* 80212070 0020EFD0 1C 00 00 06 */ mulli r0, r0, 6 +/* 80212074 0020EFD4 80 9E 00 0C */ lwz r4, 0xc(r30) +/* 80212078 0020EFD8 7C 64 02 14 */ add r3, r4, r0 +/* 8021207C 0020EFDC 1C 1F 00 06 */ mulli r0, r31, 6 +/* 80212080 0020EFE0 90 61 00 08 */ stw r3, 8(r1) +/* 80212084 0020EFE4 90 61 00 0C */ stw r3, 0xc(r1) +/* 80212088 0020EFE8 7C 84 02 14 */ add r4, r4, r0 +/* 8021208C 0020EFEC 90 81 00 10 */ stw r4, 0x10(r1) +/* 80212090 0020EFF0 90 81 00 14 */ stw r4, 0x14(r1) +/* 80212094 0020EFF4 48 00 00 08 */ b lbl_8021209C +lbl_80212098: +/* 80212098 0020EFF8 38 84 00 06 */ addi r4, r4, 6 +lbl_8021209C: +/* 8021209C 0020EFFC 7C 04 18 40 */ cmplw r4, r3 +/* 802120A0 0020F000 40 82 FF F8 */ bne lbl_80212098 +lbl_802120A4: +/* 802120A4 0020F004 93 FE 00 04 */ stw r31, 4(r30) +lbl_802120A8: +/* 802120A8 0020F008 80 01 00 34 */ lwz r0, 0x34(r1) +/* 802120AC 0020F00C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 802120B0 0020F010 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 802120B4 0020F014 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 802120B8 0020F018 7C 08 03 A6 */ mtlr r0 +/* 802120BC 0020F01C 38 21 00 30 */ addi r1, r1, 0x30 +/* 802120C0 0020F020 4E 80 00 20 */ blr + +.global Update__13CEnvFxManagerFfR13CStateManager +Update__13CEnvFxManagerFfR13CStateManager: +/* 802120C4 0020F024 94 21 F8 10 */ stwu r1, -0x7f0(r1) +/* 802120C8 0020F028 7C 08 02 A6 */ mflr r0 +/* 802120CC 0020F02C 90 01 07 F4 */ stw r0, 0x7f4(r1) +/* 802120D0 0020F030 DB E1 07 E0 */ stfd f31, 0x7e0(r1) +/* 802120D4 0020F034 F3 E1 07 E8 */ psq_st f31, 2024(r1), 0, qr0 +/* 802120D8 0020F038 DB C1 07 D0 */ stfd f30, 0x7d0(r1) +/* 802120DC 0020F03C F3 C1 07 D8 */ psq_st f30, 2008(r1), 0, qr0 +/* 802120E0 0020F040 93 E1 07 CC */ stw r31, 0x7cc(r1) +/* 802120E4 0020F044 93 C1 07 C8 */ stw r30, 0x7c8(r1) +/* 802120E8 0020F048 93 A1 07 C4 */ stw r29, 0x7c4(r1) +/* 802120EC 0020F04C 7C 9D 23 78 */ mr r29, r4 +/* 802120F0 0020F050 7C 7F 1B 78 */ mr r31, r3 +/* 802120F4 0020F054 80 64 08 50 */ lwz r3, 0x850(r4) +/* 802120F8 0020F058 FF E0 08 90 */ fmr f31, f1 +/* 802120FC 0020F05C 80 84 08 70 */ lwz r4, 0x870(r4) +/* 80212100 0020F060 7F A5 EB 78 */ mr r5, r29 +/* 80212104 0020F064 83 C3 00 C4 */ lwz r30, 0xc4(r3) +/* 80212108 0020F068 38 61 00 CC */ addi r3, r1, 0xcc +/* 8021210C 0020F06C 4B DF 88 5D */ bl GetCurrentCameraTransform__14CCameraManagerCFRC13CStateManager +/* 80212110 0020F070 38 61 01 5C */ addi r3, r1, 0x15c +/* 80212114 0020F074 38 81 00 CC */ addi r4, r1, 0xcc +/* 80212118 0020F078 48 10 0A 5D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8021211C 0020F07C 80 7D 08 70 */ lwz r3, 0x870(r29) +/* 80212120 0020F080 80 03 00 74 */ lwz r0, 0x74(r3) +/* 80212124 0020F084 2C 00 00 00 */ cmpwi r0, 0 +/* 80212128 0020F088 41 82 00 24 */ beq lbl_8021214C +/* 8021212C 0020F08C 38 60 FF FF */ li r3, -1 +/* 80212130 0020F090 38 00 00 00 */ li r0, 0 +/* 80212134 0020F094 90 7F 00 2C */ stw r3, 0x2c(r31) +/* 80212138 0020F098 7F E3 FB 78 */ mr r3, r31 +/* 8021213C 0020F09C C0 22 B2 78 */ lfs f1, lbl_805ACF98@sda21(r2) +/* 80212140 0020F0A0 7F A4 EB 78 */ mr r4, r29 +/* 80212144 0020F0A4 98 1F 00 24 */ stb r0, 0x24(r31) +/* 80212148 0020F0A8 4B FF EB 3D */ bl SetSplashEffectRate__13CEnvFxManagerFfR13CStateManager +lbl_8021214C: +/* 8021214C 0020F0AC 7F E3 FB 78 */ mr r3, r31 +/* 80212150 0020F0B0 7F A4 EB 78 */ mr r4, r29 +/* 80212154 0020F0B4 4B FF DE 39 */ bl UpdateRainSounds__13CEnvFxManagerFR13CStateManager +/* 80212158 0020F0B8 FC 20 F8 90 */ fmr f1, f31 +/* 8021215C 0020F0BC 7F E3 FB 78 */ mr r3, r31 +/* 80212160 0020F0C0 7F A4 EB 78 */ mr r4, r29 +/* 80212164 0020F0C4 38 A1 01 5C */ addi r5, r1, 0x15c +/* 80212168 0020F0C8 4B FF EB 95 */ bl UpdateVisorSplash__13CEnvFxManagerFR13CStateManagerfRC12CTransform4f +/* 8021216C 0020F0CC 2C 1E 00 00 */ cmpwi r30, 0 +/* 80212170 0020F0D0 40 82 00 A4 */ bne lbl_80212214 +/* 80212174 0020F0D4 80 7F 00 50 */ lwz r3, 0x50(r31) +/* 80212178 0020F0D8 3B A3 FF FF */ addi r29, r3, -1 +/* 8021217C 0020F0DC 1C 1D 00 2C */ mulli r0, r29, 0x2c +/* 80212180 0020F0E0 7F DF 02 14 */ add r30, r31, r0 +/* 80212184 0020F0E4 3B DE 00 54 */ addi r30, r30, 0x54 +/* 80212188 0020F0E8 48 00 00 80 */ b lbl_80212208 +lbl_8021218C: +/* 8021218C 0020F0EC 88 1E 00 14 */ lbz r0, 0x14(r30) +/* 80212190 0020F0F0 C0 1E 00 18 */ lfs f0, 0x18(r30) +/* 80212194 0020F0F4 28 00 00 00 */ cmplwi r0, 0 +/* 80212198 0020F0F8 98 01 00 1C */ stb r0, 0x1c(r1) +/* 8021219C 0020F0FC D0 01 00 20 */ stfs f0, 0x20(r1) +/* 802121A0 0020F100 41 82 00 60 */ beq lbl_80212200 +/* 802121A4 0020F104 38 00 00 00 */ li r0, 0 +/* 802121A8 0020F108 38 7E 00 1C */ addi r3, r30, 0x1c +/* 802121AC 0020F10C 90 01 00 3C */ stw r0, 0x3c(r1) +/* 802121B0 0020F110 38 81 00 38 */ addi r4, r1, 0x38 +/* 802121B4 0020F114 90 01 00 40 */ stw r0, 0x40(r1) +/* 802121B8 0020F118 90 01 00 44 */ stw r0, 0x44(r1) +/* 802121BC 0020F11C 48 00 04 05 */ bl sub_802125c0 +/* 802121C0 0020F120 80 01 00 3C */ lwz r0, 0x3c(r1) +/* 802121C4 0020F124 80 61 00 44 */ lwz r3, 0x44(r1) +/* 802121C8 0020F128 1C 00 00 06 */ mulli r0, r0, 6 +/* 802121CC 0020F12C 90 61 00 0C */ stw r3, 0xc(r1) +/* 802121D0 0020F130 7C 64 1B 78 */ mr r4, r3 +/* 802121D4 0020F134 7C 03 02 14 */ add r0, r3, r0 +/* 802121D8 0020F138 90 61 00 08 */ stw r3, 8(r1) +/* 802121DC 0020F13C 90 01 00 14 */ stw r0, 0x14(r1) +/* 802121E0 0020F140 90 01 00 10 */ stw r0, 0x10(r1) +/* 802121E4 0020F144 48 00 00 08 */ b lbl_802121EC +lbl_802121E8: +/* 802121E8 0020F148 38 84 00 06 */ addi r4, r4, 6 +lbl_802121EC: +/* 802121EC 0020F14C 7C 04 00 40 */ cmplw r4, r0 +/* 802121F0 0020F150 40 82 FF F8 */ bne lbl_802121E8 +/* 802121F4 0020F154 28 03 00 00 */ cmplwi r3, 0 +/* 802121F8 0020F158 41 82 00 08 */ beq lbl_80212200 +/* 802121FC 0020F15C 48 10 37 35 */ bl Free__7CMemoryFPCv +lbl_80212200: +/* 80212200 0020F160 3B DE FF D4 */ addi r30, r30, -44 +/* 80212204 0020F164 3B BD FF FF */ addi r29, r29, -1 +lbl_80212208: +/* 80212208 0020F168 2C 1D 00 00 */ cmpwi r29, 0 +/* 8021220C 0020F16C 40 80 FF 80 */ bge lbl_8021218C +/* 80212210 0020F170 48 00 03 84 */ b lbl_80212594 +lbl_80212214: +/* 80212214 0020F174 C0 5F 00 34 */ lfs f2, 0x34(r31) +/* 80212218 0020F178 C0 1F 00 30 */ lfs f0, 0x30(r31) +/* 8021221C 0020F17C C0 22 B2 68 */ lfs f1, lbl_805ACF88@sda21(r2) +/* 80212220 0020F180 EC 62 00 28 */ fsubs f3, f2, f0 +/* 80212224 0020F184 C0 0D 94 BC */ lfs f0, lbl_805A807C@sda21(r13) +/* 80212228 0020F188 FC 40 1A 10 */ fabs f2, f3 +/* 8021222C 0020F18C FC 40 10 18 */ frsp f2, f2 +/* 80212230 0020F190 EC 22 08 24 */ fdivs f1, f2, f1 +/* 80212234 0020F194 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80212238 0020F198 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 8021223C 0020F19C 40 80 00 0C */ bge lbl_80212248 +/* 80212240 0020F1A0 38 61 00 18 */ addi r3, r1, 0x18 +/* 80212244 0020F1A4 48 00 00 08 */ b lbl_8021224C +lbl_80212248: +/* 80212248 0020F1A8 38 6D 94 BC */ addi r3, r13, lbl_805A807C@sda21 +lbl_8021224C: +/* 8021224C 0020F1AC C0 3F 00 38 */ lfs f1, 0x38(r31) +/* 80212250 0020F1B0 FC 40 1A 10 */ fabs f2, f3 +/* 80212254 0020F1B4 C0 02 B2 B0 */ lfs f0, lbl_805ACFD0@sda21(r2) +/* 80212258 0020F1B8 EC 01 00 24 */ fdivs f0, f1, f0 +/* 8021225C 0020F1BC EC 1F 00 32 */ fmuls f0, f31, f0 +/* 80212260 0020F1C0 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80212264 0020F1C4 40 81 00 18 */ ble lbl_8021227C +/* 80212268 0020F1C8 C0 42 B2 B4 */ lfs f2, lbl_805ACFD4@sda21(r2) +/* 8021226C 0020F1CC C0 22 B2 64 */ lfs f1, lbl_805ACF84@sda21(r2) +/* 80212270 0020F1D0 FC 23 10 6E */ fsel f1, f3, f1, f2 +/* 80212274 0020F1D4 EC 40 00 72 */ fmuls f2, f0, f1 +/* 80212278 0020F1D8 48 00 00 08 */ b lbl_80212280 +lbl_8021227C: +/* 8021227C 0020F1DC FC 40 18 90 */ fmr f2, f3 +lbl_80212280: +/* 80212280 0020F1E0 C0 23 00 00 */ lfs f1, 0(r3) +/* 80212284 0020F1E4 7F E4 FB 78 */ mr r4, r31 +/* 80212288 0020F1E8 C0 1F 00 30 */ lfs f0, 0x30(r31) +/* 8021228C 0020F1EC 38 61 00 2C */ addi r3, r1, 0x2c +/* 80212290 0020F1F0 EC 01 00 BA */ fmadds f0, f1, f2, f0 +/* 80212294 0020F1F4 D0 1F 00 30 */ stfs f0, 0x30(r31) +/* 80212298 0020F1F8 48 00 08 81 */ bl GetParticleBoundsToWorldScale__13CEnvFxManagerCFv +/* 8021229C 0020F1FC C1 42 B2 64 */ lfs f10, lbl_805ACF84@sda21(r2) +/* 802122A0 0020F200 C0 01 00 34 */ lfs f0, 0x34(r1) +/* 802122A4 0020F204 C0 41 00 2C */ lfs f2, 0x2c(r1) +/* 802122A8 0020F208 ED 6A 00 24 */ fdivs f11, f10, f0 +/* 802122AC 0020F20C C1 01 00 30 */ lfs f8, 0x30(r1) +/* 802122B0 0020F210 C0 C2 B2 B8 */ lfs f6, lbl_805ACFD8@sda21(r2) +/* 802122B4 0020F214 C0 01 01 70 */ lfs f0, 0x170(r1) +/* 802122B8 0020F218 C0 A1 01 80 */ lfs f5, 0x180(r1) +/* 802122BC 0020F21C C0 61 01 60 */ lfs f3, 0x160(r1) +/* 802122C0 0020F220 ED 2A 10 24 */ fdivs f9, f10, f2 +/* 802122C4 0020F224 C0 21 01 78 */ lfs f1, 0x178(r1) +/* 802122C8 0020F228 C0 E1 01 88 */ lfs f7, 0x188(r1) +/* 802122CC 0020F22C C0 81 01 68 */ lfs f4, 0x168(r1) +/* 802122D0 0020F230 D1 61 00 68 */ stfs f11, 0x68(r1) +/* 802122D4 0020F234 C8 42 B2 C0 */ lfd f2, lbl_805ACFE0@sda21(r2) +/* 802122D8 0020F238 ED 0A 40 24 */ fdivs f8, f10, f8 +/* 802122DC 0020F23C D1 21 00 60 */ stfs f9, 0x60(r1) +/* 802122E0 0020F240 EC 06 00 32 */ fmuls f0, f6, f0 +/* 802122E4 0020F244 D1 01 00 64 */ stfs f8, 0x64(r1) +/* 802122E8 0020F248 EC A6 01 72 */ fmuls f5, f6, f5 +/* 802122EC 0020F24C EC 66 00 F2 */ fmuls f3, f6, f3 +/* 802122F0 0020F250 EC 21 00 2A */ fadds f1, f1, f0 +/* 802122F4 0020F254 EC A7 28 2A */ fadds f5, f7, f5 +/* 802122F8 0020F258 EC 04 18 2A */ fadds f0, f4, f3 +/* 802122FC 0020F25C D0 21 00 58 */ stfs f1, 0x58(r1) +/* 80212300 0020F260 D0 01 00 54 */ stfs f0, 0x54(r1) +/* 80212304 0020F264 D0 A1 00 5C */ stfs f5, 0x5c(r1) +/* 80212308 0020F268 48 18 29 A5 */ bl fmod +/* 8021230C 0020F26C FF C0 08 18 */ frsp f30, f1 +/* 80212310 0020F270 C0 21 00 54 */ lfs f1, 0x54(r1) +/* 80212314 0020F274 C8 42 B2 C0 */ lfd f2, lbl_805ACFE0@sda21(r2) +/* 80212318 0020F278 48 18 29 95 */ bl fmod +/* 8021231C 0020F27C FC 60 08 18 */ frsp f3, f1 +/* 80212320 0020F280 C0 41 00 54 */ lfs f2, 0x54(r1) +/* 80212324 0020F284 C0 01 00 58 */ lfs f0, 0x58(r1) +/* 80212328 0020F288 7F E3 FB 78 */ mr r3, r31 +/* 8021232C 0020F28C C0 3F 00 1C */ lfs f1, 0x1c(r31) +/* 80212330 0020F290 EC C0 F0 28 */ fsubs f6, f0, f30 +/* 80212334 0020F294 EC 82 18 28 */ fsubs f4, f2, f3 +/* 80212338 0020F298 C0 1F 00 18 */ lfs f0, 0x18(r31) +/* 8021233C 0020F29C C0 7F 00 20 */ lfs f3, 0x20(r31) +/* 80212340 0020F2A0 EC E1 30 28 */ fsubs f7, f1, f6 +/* 80212344 0020F2A4 C0 22 B2 C8 */ lfs f1, lbl_805ACFE8@sda21(r2) +/* 80212348 0020F2A8 EC 40 20 28 */ fsubs f2, f0, f4 +/* 8021234C 0020F2AC D0 9F 00 18 */ stfs f4, 0x18(r31) +/* 80212350 0020F2B0 EC 07 08 24 */ fdivs f0, f7, f1 +/* 80212354 0020F2B4 C0 A1 00 5C */ lfs f5, 0x5c(r1) +/* 80212358 0020F2B8 C0 82 B2 78 */ lfs f4, lbl_805ACF98@sda21(r2) +/* 8021235C 0020F2BC D0 DF 00 1C */ stfs f6, 0x1c(r31) +/* 80212360 0020F2C0 D0 41 00 48 */ stfs f2, 0x48(r1) +/* 80212364 0020F2C4 D0 E1 00 4C */ stfs f7, 0x4c(r1) +/* 80212368 0020F2C8 EC 85 20 28 */ fsubs f4, f5, f4 +/* 8021236C 0020F2CC EC 22 08 24 */ fdivs f1, f2, f1 +/* 80212370 0020F2D0 D0 9F 00 20 */ stfs f4, 0x20(r31) +/* 80212374 0020F2D4 FC 20 08 1E */ fctiwz f1, f1 +/* 80212378 0020F2D8 FC 00 00 1E */ fctiwz f0, f0 +/* 8021237C 0020F2DC EC 43 20 28 */ fsubs f2, f3, f4 +/* 80212380 0020F2E0 D8 21 07 90 */ stfd f1, 0x790(r1) +/* 80212384 0020F2E4 D8 01 07 98 */ stfd f0, 0x798(r1) +/* 80212388 0020F2E8 80 81 07 94 */ lwz r4, 0x794(r1) +/* 8021238C 0020F2EC D0 41 00 50 */ stfs f2, 0x50(r1) +/* 80212390 0020F2F0 80 A1 07 9C */ lwz r5, 0x79c(r1) +/* 80212394 0020F2F4 48 00 05 F1 */ bl MoveWrapCells__13CEnvFxManagerFii +/* 80212398 0020F2F8 C0 61 00 68 */ lfs f3, 0x68(r1) +/* 8021239C 0020F2FC 2C 1E 00 03 */ cmpwi r30, 3 +/* 802123A0 0020F300 C0 01 00 50 */ lfs f0, 0x50(r1) +/* 802123A4 0020F304 C0 21 00 64 */ lfs f1, 0x64(r1) +/* 802123A8 0020F308 C0 42 B2 78 */ lfs f2, lbl_805ACF98@sda21(r2) +/* 802123AC 0020F30C EC 63 00 32 */ fmuls f3, f3, f0 +/* 802123B0 0020F310 C0 01 00 60 */ lfs f0, 0x60(r1) +/* 802123B4 0020F314 EC 21 00 B2 */ fmuls f1, f1, f2 +/* 802123B8 0020F318 C0 82 B2 94 */ lfs f4, lbl_805ACFB4@sda21(r2) +/* 802123BC 0020F31C EC 00 00 B2 */ fmuls f0, f0, f2 +/* 802123C0 0020F320 EC 44 00 F2 */ fmuls f2, f4, f3 +/* 802123C4 0020F324 EC 24 00 72 */ fmuls f1, f4, f1 +/* 802123C8 0020F328 EC 04 00 32 */ fmuls f0, f4, f0 +/* 802123CC 0020F32C FC 40 10 1E */ fctiwz f2, f2 +/* 802123D0 0020F330 FC 20 08 1E */ fctiwz f1, f1 +/* 802123D4 0020F334 FC 00 00 1E */ fctiwz f0, f0 +/* 802123D8 0020F338 D8 41 07 A0 */ stfd f2, 0x7a0(r1) +/* 802123DC 0020F33C 80 81 07 A4 */ lwz r4, 0x7a4(r1) +/* 802123E0 0020F340 D8 21 07 A8 */ stfd f1, 0x7a8(r1) +/* 802123E4 0020F344 7C 83 07 34 */ extsh r3, r4 +/* 802123E8 0020F348 D8 01 07 B0 */ stfd f0, 0x7b0(r1) +/* 802123EC 0020F34C 80 A1 07 AC */ lwz r5, 0x7ac(r1) +/* 802123F0 0020F350 80 01 07 B4 */ lwz r0, 0x7b4(r1) +/* 802123F4 0020F354 B0 A1 00 26 */ sth r5, 0x26(r1) +/* 802123F8 0020F358 B0 01 00 24 */ sth r0, 0x24(r1) +/* 802123FC 0020F35C B0 81 00 28 */ sth r4, 0x28(r1) +/* 80212400 0020F360 40 82 00 28 */ bne lbl_80212428 +/* 80212404 0020F364 C0 02 B2 70 */ lfs f0, lbl_805ACF90@sda21(r2) +/* 80212408 0020F368 EC 00 07 F2 */ fmuls f0, f0, f31 +/* 8021240C 0020F36C EC 04 00 32 */ fmuls f0, f4, f0 +/* 80212410 0020F370 FC 00 00 1E */ fctiwz f0, f0 +/* 80212414 0020F374 D8 01 07 B0 */ stfd f0, 0x7b0(r1) +/* 80212418 0020F378 80 01 07 B4 */ lwz r0, 0x7b4(r1) +/* 8021241C 0020F37C 7C 00 07 34 */ extsh r0, r0 +/* 80212420 0020F380 7C 03 02 14 */ add r0, r3, r0 +/* 80212424 0020F384 B0 01 00 28 */ sth r0, 0x28(r1) +lbl_80212428: +/* 80212428 0020F388 38 00 00 00 */ li r0, 0 +/* 8021242C 0020F38C FC 20 F8 90 */ fmr f1, f31 +/* 80212430 0020F390 90 01 01 8C */ stw r0, 0x18c(r1) +/* 80212434 0020F394 7F E3 FB 78 */ mr r3, r31 +/* 80212438 0020F398 7F C6 F3 78 */ mr r6, r30 +/* 8021243C 0020F39C 38 81 00 24 */ addi r4, r1, 0x24 +/* 80212440 0020F3A0 38 A1 01 8C */ addi r5, r1, 0x18c +/* 80212444 0020F3A4 38 E1 00 60 */ addi r7, r1, 0x60 +/* 80212448 0020F3A8 4B FF F6 B1 */ bl "CalculateSnowForces__13CEnvFxManagerFRC15CVectorFixed8_8R34reserved_vector<15CVectorFixed8_8>10EEnvFxTypeRC9CVector3ff" +/* 8021244C 0020F3AC 7F E4 FB 78 */ mr r4, r31 +/* 80212450 0020F3B0 38 61 00 9C */ addi r3, r1, 0x9c +/* 80212454 0020F3B4 4B FF E7 A1 */ bl GetParticleBoundsToWorldTransform__13CEnvFxManagerCFv +/* 80212458 0020F3B8 38 61 01 2C */ addi r3, r1, 0x12c +/* 8021245C 0020F3BC 38 81 00 9C */ addi r4, r1, 0x9c +/* 80212460 0020F3C0 48 10 07 15 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80212464 0020F3C4 38 61 00 6C */ addi r3, r1, 0x6c +/* 80212468 0020F3C8 38 81 01 2C */ addi r4, r1, 0x12c +/* 8021246C 0020F3CC 48 10 02 75 */ bl GetInverse__12CTransform4fCFv +/* 80212470 0020F3D0 38 61 00 FC */ addi r3, r1, 0xfc +/* 80212474 0020F3D4 38 81 00 6C */ addi r4, r1, 0x6c +/* 80212478 0020F3D8 48 10 06 FD */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8021247C 0020F3DC 7F E3 FB 78 */ mr r3, r31 +/* 80212480 0020F3E0 7F A4 EB 78 */ mr r4, r29 +/* 80212484 0020F3E4 7F C5 F3 78 */ mr r5, r30 +/* 80212488 0020F3E8 38 C1 01 5C */ addi r6, r1, 0x15c +/* 8021248C 0020F3EC 38 E1 01 2C */ addi r7, r1, 0x12c +/* 80212490 0020F3F0 39 01 00 FC */ addi r8, r1, 0xfc +/* 80212494 0020F3F4 4B FF EF 35 */ bl UpdateBlockedGrids__13CEnvFxManagerFR13CStateManager10EEnvFxTypeRC12CTransform4fRC12CTransform4fRC12CTransform4f +/* 80212498 0020F3F8 7F E3 FB 78 */ mr r3, r31 +/* 8021249C 0020F3FC 7F C4 F3 78 */ mr r4, r30 +/* 802124A0 0020F400 4B FF F8 B5 */ bl CreateNewParticles__13CEnvFxManagerF10EEnvFxType +/* 802124A4 0020F404 2C 1E 00 02 */ cmpwi r30, 2 +/* 802124A8 0020F408 41 82 00 30 */ beq lbl_802124D8 +/* 802124AC 0020F40C 40 80 00 10 */ bge lbl_802124BC +/* 802124B0 0020F410 2C 1E 00 01 */ cmpwi r30, 1 +/* 802124B4 0020F414 40 80 00 14 */ bge lbl_802124C8 +/* 802124B8 0020F418 48 00 00 44 */ b lbl_802124FC +lbl_802124BC: +/* 802124BC 0020F41C 2C 1E 00 04 */ cmpwi r30, 4 +/* 802124C0 0020F420 40 80 00 3C */ bge lbl_802124FC +/* 802124C4 0020F424 48 00 00 2C */ b lbl_802124F0 +lbl_802124C8: +/* 802124C8 0020F428 7F E3 FB 78 */ mr r3, r31 +/* 802124CC 0020F42C 38 81 01 8C */ addi r4, r1, 0x18c +/* 802124D0 0020F430 4B FF ED 71 */ bl "UpdateSnowParticles__13CEnvFxManagerFR34reserved_vector<15CVectorFixed8_8>" +/* 802124D4 0020F434 48 00 00 28 */ b lbl_802124FC +lbl_802124D8: +/* 802124D8 0020F438 FC 20 F8 90 */ fmr f1, f31 +/* 802124DC 0020F43C 7F E3 FB 78 */ mr r3, r31 +/* 802124E0 0020F440 38 81 00 24 */ addi r4, r1, 0x24 +/* 802124E4 0020F444 38 A1 00 60 */ addi r5, r1, 0x60 +/* 802124E8 0020F448 4B FF EB A9 */ bl UpdateRainParticles__13CEnvFxManagerFRC15CVectorFixed8_8RC9CVector3ff +/* 802124EC 0020F44C 48 00 00 10 */ b lbl_802124FC +lbl_802124F0: +/* 802124F0 0020F450 7F E3 FB 78 */ mr r3, r31 +/* 802124F4 0020F454 38 81 00 24 */ addi r4, r1, 0x24 +/* 802124F8 0020F458 4B FF EA 39 */ bl UpdateUnderwaterParticles__13CEnvFxManagerFRC15CVectorFixed8_8 +lbl_802124FC: +/* 802124FC 0020F45C 2C 1E 00 01 */ cmpwi r30, 1 +/* 80212500 0020F460 40 82 00 24 */ bne lbl_80212524 +/* 80212504 0020F464 C0 22 B2 64 */ lfs f1, lbl_805ACF84@sda21(r2) +/* 80212508 0020F468 C0 1F 00 28 */ lfs f0, 0x28(r31) +/* 8021250C 0020F46C C8 42 B2 D0 */ lfd f2, lbl_805ACFF0@sda21(r2) +/* 80212510 0020F470 EC 21 00 2A */ fadds f1, f1, f0 +/* 80212514 0020F474 48 18 27 99 */ bl fmod +/* 80212518 0020F478 FC 00 08 18 */ frsp f0, f1 +/* 8021251C 0020F47C D0 1F 00 28 */ stfs f0, 0x28(r31) +/* 80212520 0020F480 48 00 00 20 */ b lbl_80212540 +lbl_80212524: +/* 80212524 0020F484 C0 22 B2 D8 */ lfs f1, lbl_805ACFF8@sda21(r2) +/* 80212528 0020F488 C0 1F 00 28 */ lfs f0, 0x28(r31) +/* 8021252C 0020F48C C8 42 B2 D0 */ lfd f2, lbl_805ACFF0@sda21(r2) +/* 80212530 0020F490 EC 21 00 2A */ fadds f1, f1, f0 +/* 80212534 0020F494 48 18 27 79 */ bl fmod +/* 80212538 0020F498 FC 00 08 18 */ frsp f0, f1 +/* 8021253C 0020F49C D0 1F 00 28 */ stfs f0, 0x28(r31) +lbl_80212540: +/* 80212540 0020F4A0 80 A1 01 8C */ lwz r5, 0x18c(r1) +/* 80212544 0020F4A4 38 60 00 00 */ li r3, 0 +/* 80212548 0020F4A8 2C 05 00 00 */ cmpwi r5, 0 +/* 8021254C 0020F4AC 40 81 00 40 */ ble lbl_8021258C +/* 80212550 0020F4B0 2C 05 00 08 */ cmpwi r5, 8 +/* 80212554 0020F4B4 38 85 FF F8 */ addi r4, r5, -8 +/* 80212558 0020F4B8 40 81 00 20 */ ble lbl_80212578 +/* 8021255C 0020F4BC 38 04 00 07 */ addi r0, r4, 7 +/* 80212560 0020F4C0 54 00 E8 FE */ srwi r0, r0, 3 +/* 80212564 0020F4C4 7C 09 03 A6 */ mtctr r0 +/* 80212568 0020F4C8 2C 04 00 00 */ cmpwi r4, 0 +/* 8021256C 0020F4CC 40 81 00 0C */ ble lbl_80212578 +lbl_80212570: +/* 80212570 0020F4D0 38 63 00 08 */ addi r3, r3, 8 +/* 80212574 0020F4D4 42 00 FF FC */ bdnz lbl_80212570 +lbl_80212578: +/* 80212578 0020F4D8 7C 03 28 50 */ subf r0, r3, r5 +/* 8021257C 0020F4DC 7C 09 03 A6 */ mtctr r0 +/* 80212580 0020F4E0 7C 03 28 00 */ cmpw r3, r5 +/* 80212584 0020F4E4 40 80 00 08 */ bge lbl_8021258C +lbl_80212588: +/* 80212588 0020F4E8 42 00 00 00 */ bdnz lbl_80212588 +lbl_8021258C: +/* 8021258C 0020F4EC 38 00 00 00 */ li r0, 0 +/* 80212590 0020F4F0 90 01 01 8C */ stw r0, 0x18c(r1) +lbl_80212594: +/* 80212594 0020F4F4 E3 E1 07 E8 */ psq_l f31, 2024(r1), 0, qr0 +/* 80212598 0020F4F8 CB E1 07 E0 */ lfd f31, 0x7e0(r1) +/* 8021259C 0020F4FC E3 C1 07 D8 */ psq_l f30, 2008(r1), 0, qr0 +/* 802125A0 0020F500 CB C1 07 D0 */ lfd f30, 0x7d0(r1) +/* 802125A4 0020F504 83 E1 07 CC */ lwz r31, 0x7cc(r1) +/* 802125A8 0020F508 83 C1 07 C8 */ lwz r30, 0x7c8(r1) +/* 802125AC 0020F50C 80 01 07 F4 */ lwz r0, 0x7f4(r1) +/* 802125B0 0020F510 83 A1 07 C4 */ lwz r29, 0x7c4(r1) +/* 802125B4 0020F514 7C 08 03 A6 */ mtlr r0 +/* 802125B8 0020F518 38 21 07 F0 */ addi r1, r1, 0x7f0 +/* 802125BC 0020F51C 4E 80 00 20 */ blr + +.global sub_802125c0 +sub_802125c0: +/* 802125C0 0020F520 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 802125C4 0020F524 7C 08 02 A6 */ mflr r0 +/* 802125C8 0020F528 90 01 00 24 */ stw r0, 0x24(r1) +/* 802125CC 0020F52C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 802125D0 0020F530 7C 9F 23 78 */ mr r31, r4 +/* 802125D4 0020F534 93 C1 00 18 */ stw r30, 0x18(r1) +/* 802125D8 0020F538 7C 7E 1B 78 */ mr r30, r3 +/* 802125DC 0020F53C 7C 1E F8 40 */ cmplw r30, r31 +/* 802125E0 0020F540 40 82 00 08 */ bne lbl_802125E8 +/* 802125E4 0020F544 48 00 00 C8 */ b lbl_802126AC +lbl_802125E8: +/* 802125E8 0020F548 80 1E 00 04 */ lwz r0, 4(r30) +/* 802125EC 0020F54C 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 802125F0 0020F550 1C 00 00 06 */ mulli r0, r0, 6 +/* 802125F4 0020F554 90 61 00 0C */ stw r3, 0xc(r1) +/* 802125F8 0020F558 7C 03 02 14 */ add r0, r3, r0 +/* 802125FC 0020F55C 90 61 00 08 */ stw r3, 8(r1) +/* 80212600 0020F560 90 01 00 14 */ stw r0, 0x14(r1) +/* 80212604 0020F564 90 01 00 10 */ stw r0, 0x10(r1) +/* 80212608 0020F568 48 00 00 08 */ b lbl_80212610 +lbl_8021260C: +/* 8021260C 0020F56C 38 63 00 06 */ addi r3, r3, 6 +lbl_80212610: +/* 80212610 0020F570 7C 03 00 40 */ cmplw r3, r0 +/* 80212614 0020F574 40 82 FF F8 */ bne lbl_8021260C +/* 80212618 0020F578 38 00 00 00 */ li r0, 0 +/* 8021261C 0020F57C 90 1E 00 04 */ stw r0, 4(r30) +/* 80212620 0020F580 80 9F 00 04 */ lwz r4, 4(r31) +/* 80212624 0020F584 2C 04 00 00 */ cmpwi r4, 0 +/* 80212628 0020F588 40 82 00 28 */ bne lbl_80212650 +/* 8021262C 0020F58C 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 80212630 0020F590 28 03 00 00 */ cmplwi r3, 0 +/* 80212634 0020F594 41 82 00 08 */ beq lbl_8021263C +/* 80212638 0020F598 48 10 32 F9 */ bl Free__7CMemoryFPCv +lbl_8021263C: +/* 8021263C 0020F59C 38 00 00 00 */ li r0, 0 +/* 80212640 0020F5A0 90 1E 00 04 */ stw r0, 4(r30) +/* 80212644 0020F5A4 90 1E 00 08 */ stw r0, 8(r30) +/* 80212648 0020F5A8 90 1E 00 0C */ stw r0, 0xc(r30) +/* 8021264C 0020F5AC 48 00 00 5C */ b lbl_802126A8 +lbl_80212650: +/* 80212650 0020F5B0 7F C3 F3 78 */ mr r3, r30 +/* 80212654 0020F5B4 48 00 13 75 */ bl sub_802139c8 +/* 80212658 0020F5B8 80 1F 00 04 */ lwz r0, 4(r31) +/* 8021265C 0020F5BC 80 BF 00 0C */ lwz r5, 0xc(r31) +/* 80212660 0020F5C0 1C 00 00 06 */ mulli r0, r0, 6 +/* 80212664 0020F5C4 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 80212668 0020F5C8 7C 85 02 14 */ add r4, r5, r0 +/* 8021266C 0020F5CC 48 00 00 2C */ b lbl_80212698 +lbl_80212670: +/* 80212670 0020F5D0 28 03 00 00 */ cmplwi r3, 0 +/* 80212674 0020F5D4 41 82 00 1C */ beq lbl_80212690 +/* 80212678 0020F5D8 A8 05 00 00 */ lha r0, 0(r5) +/* 8021267C 0020F5DC B0 03 00 00 */ sth r0, 0(r3) +/* 80212680 0020F5E0 A8 05 00 02 */ lha r0, 2(r5) +/* 80212684 0020F5E4 B0 03 00 02 */ sth r0, 2(r3) +/* 80212688 0020F5E8 A8 05 00 04 */ lha r0, 4(r5) +/* 8021268C 0020F5EC B0 03 00 04 */ sth r0, 4(r3) +lbl_80212690: +/* 80212690 0020F5F0 38 63 00 06 */ addi r3, r3, 6 +/* 80212694 0020F5F4 38 A5 00 06 */ addi r5, r5, 6 +lbl_80212698: +/* 80212698 0020F5F8 7C 05 20 40 */ cmplw r5, r4 +/* 8021269C 0020F5FC 40 82 FF D4 */ bne lbl_80212670 +/* 802126A0 0020F600 80 1F 00 04 */ lwz r0, 4(r31) +/* 802126A4 0020F604 90 1E 00 04 */ stw r0, 4(r30) +lbl_802126A8: +/* 802126A8 0020F608 7F C3 F3 78 */ mr r3, r30 +lbl_802126AC: +/* 802126AC 0020F60C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 802126B0 0020F610 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 802126B4 0020F614 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 802126B8 0020F618 7C 08 03 A6 */ mtlr r0 +/* 802126BC 0020F61C 38 21 00 20 */ addi r1, r1, 0x20 +/* 802126C0 0020F620 4E 80 00 20 */ blr + +.global sub_802126c4 +sub_802126c4: +/* 802126C4 0020F624 A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 802126C8 0020F628 38 00 00 00 */ li r0, 0 +/* 802126CC 0020F62C B0 83 0B 68 */ sth r4, 0xb68(r3) +/* 802126D0 0020F630 98 03 0B 6A */ stb r0, 0xb6a(r3) +/* 802126D4 0020F634 90 03 0B 6C */ stw r0, 0xb6c(r3) +/* 802126D8 0020F638 90 03 0B 70 */ stw r0, 0xb70(r3) +/* 802126DC 0020F63C 4E 80 00 20 */ blr + +.global Initialize__13CEnvFxManagerFv +Initialize__13CEnvFxManagerFv: +/* 802126E0 0020F640 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 802126E4 0020F644 7C 08 02 A6 */ mflr r0 +/* 802126E8 0020F648 3C 80 80 3D */ lis r4, lbl_803D2818@ha +/* 802126EC 0020F64C 90 01 00 24 */ stw r0, 0x24(r1) +/* 802126F0 0020F650 38 84 28 18 */ addi r4, r4, lbl_803D2818@l +/* 802126F4 0020F654 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 802126F8 0020F658 93 C1 00 18 */ stw r30, 0x18(r1) +/* 802126FC 0020F65C 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80212700 0020F660 93 81 00 10 */ stw r28, 0x10(r1) +/* 80212704 0020F664 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) +/* 80212708 0020F668 81 83 00 00 */ lwz r12, 0(r3) +/* 8021270C 0020F66C 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80212710 0020F670 7D 89 03 A6 */ mtctr r12 +/* 80212714 0020F674 4E 80 04 21 */ bctrl +/* 80212718 0020F678 80 CD A0 60 */ lwz r6, gpResourceFactory@sda21(r13) +/* 8021271C 0020F67C 7C 64 1B 78 */ mr r4, r3 +/* 80212720 0020F680 38 A0 00 00 */ li r5, 0 +/* 80212724 0020F684 38 66 00 04 */ addi r3, r6, 4 +/* 80212728 0020F688 48 12 92 41 */ bl LoadNewResourceSync__10CResLoaderFRC10SObjectTagPc +/* 8021272C 0020F68C 7C 03 00 D0 */ neg r0, r3 +/* 80212730 0020F690 3C 80 80 47 */ lis r4, lbl_8046CB40@ha +/* 80212734 0020F694 7C 00 1B 78 */ or r0, r0, r3 +/* 80212738 0020F698 90 61 00 0C */ stw r3, 0xc(r1) +/* 8021273C 0020F69C 54 00 0F FE */ srwi r0, r0, 0x1f +/* 80212740 0020F6A0 3B C4 CB 40 */ addi r30, r4, lbl_8046CB40@l +/* 80212744 0020F6A4 98 01 00 08 */ stb r0, 8(r1) +/* 80212748 0020F6A8 3B A0 00 00 */ li r29, 0 +lbl_8021274C: +/* 8021274C 0020F6AC 3B 80 00 00 */ li r28, 0 +/* 80212750 0020F6B0 7F DF F3 78 */ mr r31, r30 +lbl_80212754: +/* 80212754 0020F6B4 80 61 00 0C */ lwz r3, 0xc(r1) +/* 80212758 0020F6B8 48 12 C4 D1 */ bl ReadFloat__12CInputStreamFv +/* 8021275C 0020F6BC 3B 9C 00 01 */ addi r28, r28, 1 +/* 80212760 0020F6C0 D0 3F 00 00 */ stfs f1, 0(r31) +/* 80212764 0020F6C4 2C 1C 00 02 */ cmpwi r28, 2 +/* 80212768 0020F6C8 3B FF 00 04 */ addi r31, r31, 4 +/* 8021276C 0020F6CC 41 80 FF E8 */ blt lbl_80212754 +/* 80212770 0020F6D0 3B BD 00 01 */ addi r29, r29, 1 +/* 80212774 0020F6D4 3B DE 00 08 */ addi r30, r30, 8 +/* 80212778 0020F6D8 2C 1D 01 00 */ cmpwi r29, 0x100 +/* 8021277C 0020F6DC 41 80 FF D0 */ blt lbl_8021274C +/* 80212780 0020F6E0 88 01 00 08 */ lbz r0, 8(r1) +/* 80212784 0020F6E4 28 00 00 00 */ cmplwi r0, 0 +/* 80212788 0020F6E8 41 82 00 24 */ beq lbl_802127AC +/* 8021278C 0020F6EC 80 61 00 0C */ lwz r3, 0xc(r1) +/* 80212790 0020F6F0 28 03 00 00 */ cmplwi r3, 0 +/* 80212794 0020F6F4 41 82 00 18 */ beq lbl_802127AC +/* 80212798 0020F6F8 81 83 00 00 */ lwz r12, 0(r3) +/* 8021279C 0020F6FC 38 80 00 01 */ li r4, 1 +/* 802127A0 0020F700 81 8C 00 08 */ lwz r12, 8(r12) +/* 802127A4 0020F704 7D 89 03 A6 */ mtctr r12 +/* 802127A8 0020F708 4E 80 04 21 */ bctrl +lbl_802127AC: +/* 802127AC 0020F70C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 802127B0 0020F710 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 802127B4 0020F714 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 802127B8 0020F718 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 802127BC 0020F71C 83 81 00 10 */ lwz r28, 0x10(r1) +/* 802127C0 0020F720 7C 08 03 A6 */ mtlr r0 +/* 802127C4 0020F724 38 21 00 20 */ addi r1, r1, 0x20 +/* 802127C8 0020F728 4E 80 00 20 */ blr + +.global AsyncLoadResources__13CEnvFXManagerFR13CStateManager +AsyncLoadResources__13CEnvFXManagerFR13CStateManager: +/* 802127CC 0020F72C 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 802127D0 0020F730 7C 08 02 A6 */ mflr r0 +/* 802127D4 0020F734 90 01 00 84 */ stw r0, 0x84(r1) +/* 802127D8 0020F738 BF 21 00 64 */ stmw r25, 0x64(r1) +/* 802127DC 0020F73C 7C 7B 1B 78 */ mr r27, r3 +/* 802127E0 0020F740 7C 9E 23 78 */ mr r30, r4 +/* 802127E4 0020F744 38 61 00 14 */ addi r3, r1, 0x14 +/* 802127E8 0020F748 4B E3 A8 F5 */ bl AllocateUniqueId__13CStateManagerFv +/* 802127EC 0020F74C A0 01 00 14 */ lhz r0, 0x14(r1) +/* 802127F0 0020F750 3C 60 80 3D */ lis r3, lbl_803D2818@ha +/* 802127F4 0020F754 38 63 28 18 */ addi r3, r3, lbl_803D2818@l +/* 802127F8 0020F758 3B A0 00 00 */ li r29, 0 +/* 802127FC 0020F75C B0 1B 0B 68 */ sth r0, 0xb68(r27) +/* 80212800 0020F760 38 83 00 10 */ addi r4, r3, 0x10 +/* 80212804 0020F764 3B 40 00 00 */ li r26, 0 +/* 80212808 0020F768 3B 20 00 00 */ li r25, 0 +/* 8021280C 0020F76C 38 60 01 10 */ li r3, 0x110 +/* 80212810 0020F770 38 A0 00 00 */ li r5, 0 +/* 80212814 0020F774 48 10 30 59 */ bl __nw__FUlPCcPCc +/* 80212818 0020F778 7C 7F 1B 79 */ or. r31, r3, r3 +/* 8021281C 0020F77C 41 82 00 D0 */ beq lbl_802128EC +/* 80212820 0020F780 38 00 00 01 */ li r0, 1 +/* 80212824 0020F784 34 61 00 1C */ addic. r3, r1, 0x1c +/* 80212828 0020F788 98 01 00 24 */ stb r0, 0x24(r1) +/* 8021282C 0020F78C 38 9B 0B 58 */ addi r4, r27, 0xb58 +/* 80212830 0020F790 41 82 00 08 */ beq lbl_80212838 +/* 80212834 0020F794 48 12 E6 75 */ bl __ct__6CTokenFRC6CToken +lbl_80212838: +/* 80212838 0020F798 38 00 00 00 */ li r0, 0 +/* 8021283C 0020F79C 3C 60 80 3D */ lis r3, lbl_803D2818@ha +/* 80212840 0020F7A0 98 01 00 30 */ stb r0, 0x30(r1) +/* 80212844 0020F7A4 38 83 28 18 */ addi r4, r3, lbl_803D2818@l +/* 80212848 0020F7A8 38 61 00 34 */ addi r3, r1, 0x34 +/* 8021284C 0020F7AC 3B 20 00 01 */ li r25, 1 +/* 80212850 0020F7B0 A0 1B 0B 68 */ lhz r0, 0xb68(r27) +/* 80212854 0020F7B4 38 84 00 17 */ addi r4, r4, 0x17 +/* 80212858 0020F7B8 3B 40 00 01 */ li r26, 1 +/* 8021285C 0020F7BC B0 01 00 10 */ sth r0, 0x10(r1) +/* 80212860 0020F7C0 4B DF 24 59 */ bl string_l__4rstlFPCc +/* 80212864 0020F7C4 C0 22 B2 64 */ lfs f1, lbl_805ACF84@sda21(r2) +/* 80212868 0020F7C8 38 61 00 18 */ addi r3, r1, 0x18 +/* 8021286C 0020F7CC C0 02 B2 78 */ lfs f0, lbl_805ACF98@sda21(r2) +/* 80212870 0020F7D0 3B A0 00 01 */ li r29, 1 +/* 80212874 0020F7D4 FC 40 08 90 */ fmr f2, f1 +/* 80212878 0020F7D8 D0 21 00 44 */ stfs f1, 0x44(r1) +/* 8021287C 0020F7DC FC 60 08 90 */ fmr f3, f1 +/* 80212880 0020F7E0 FC 80 08 90 */ fmr f4, f1 +/* 80212884 0020F7E4 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 80212888 0020F7E8 D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 8021288C 0020F7EC D0 01 00 50 */ stfs f0, 0x50(r1) +/* 80212890 0020F7F0 D0 01 00 54 */ stfs f0, 0x54(r1) +/* 80212894 0020F7F4 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 80212898 0020F7F8 48 15 0B 55 */ bl __ct__6CColorFffff +/* 8021289C 0020F7FC 7C 7B 1B 78 */ mr r27, r3 +/* 802128A0 0020F800 7F C3 F3 78 */ mr r3, r30 +/* 802128A4 0020F804 4B F1 D9 89 */ bl GetScaleForPOV__19CHUDBillboardEffectFRC13CStateManager +/* 802128A8 0020F808 7C 7C 1B 78 */ mr r28, r3 +/* 802128AC 0020F80C 7F C3 F3 78 */ mr r3, r30 +/* 802128B0 0020F810 4B F1 D9 49 */ bl GetNearClipDistance__19CHUDBillboardEffectFRC13CStateManager +/* 802128B4 0020F814 38 61 00 44 */ addi r3, r1, 0x44 +/* 802128B8 0020F818 38 01 00 50 */ addi r0, r1, 0x50 +/* 802128BC 0020F81C 90 61 00 08 */ stw r3, 8(r1) +/* 802128C0 0020F820 7F E3 FB 78 */ mr r3, r31 +/* 802128C4 0020F824 7F 89 E3 78 */ mr r9, r28 +/* 802128C8 0020F828 7F 6A DB 78 */ mr r10, r27 +/* 802128CC 0020F82C 90 01 00 0C */ stw r0, 0xc(r1) +/* 802128D0 0020F830 38 81 00 1C */ addi r4, r1, 0x1c +/* 802128D4 0020F834 38 A1 00 28 */ addi r5, r1, 0x28 +/* 802128D8 0020F838 38 C1 00 10 */ addi r6, r1, 0x10 +/* 802128DC 0020F83C 39 01 00 34 */ addi r8, r1, 0x34 +/* 802128E0 0020F840 38 E0 00 01 */ li r7, 1 +/* 802128E4 0020F844 4B F1 D6 15 */ bl "__ct__19CHUDBillboardEffectFRCQ24rstl44optional_object<25TToken<15CGenDescription>>RCQ24rstl49optional_object<30TToken<20CElectricDescription>>9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>fRC9CVector3fRC6CColorRC9CVector3fRC9CVector3f" +/* 802128E8 0020F848 7C 7F 1B 78 */ mr r31, r3 +lbl_802128EC: +/* 802128EC 0020F84C 7F 20 07 75 */ extsb. r0, r25 +/* 802128F0 0020F850 41 82 00 28 */ beq lbl_80212918 +/* 802128F4 0020F854 88 01 00 24 */ lbz r0, 0x24(r1) +/* 802128F8 0020F858 28 00 00 00 */ cmplwi r0, 0 +/* 802128FC 0020F85C 41 82 00 14 */ beq lbl_80212910 +/* 80212900 0020F860 34 61 00 1C */ addic. r3, r1, 0x1c +/* 80212904 0020F864 41 82 00 0C */ beq lbl_80212910 +/* 80212908 0020F868 38 80 00 00 */ li r4, 0 +/* 8021290C 0020F86C 48 12 E5 35 */ bl __dt__6CTokenFv +lbl_80212910: +/* 80212910 0020F870 38 00 00 00 */ li r0, 0 +/* 80212914 0020F874 98 01 00 24 */ stb r0, 0x24(r1) +lbl_80212918: +/* 80212918 0020F878 7F 40 07 75 */ extsb. r0, r26 +/* 8021291C 0020F87C 41 82 00 28 */ beq lbl_80212944 +/* 80212920 0020F880 88 01 00 30 */ lbz r0, 0x30(r1) +/* 80212924 0020F884 28 00 00 00 */ cmplwi r0, 0 +/* 80212928 0020F888 41 82 00 14 */ beq lbl_8021293C +/* 8021292C 0020F88C 34 61 00 28 */ addic. r3, r1, 0x28 +/* 80212930 0020F890 41 82 00 0C */ beq lbl_8021293C +/* 80212934 0020F894 38 80 00 00 */ li r4, 0 +/* 80212938 0020F898 48 12 E5 09 */ bl __dt__6CTokenFv +lbl_8021293C: +/* 8021293C 0020F89C 38 00 00 00 */ li r0, 0 +/* 80212940 0020F8A0 98 01 00 30 */ stb r0, 0x30(r1) +lbl_80212944: +/* 80212944 0020F8A4 7F A0 07 75 */ extsb. r0, r29 +/* 80212948 0020F8A8 41 82 00 0C */ beq lbl_80212954 +/* 8021294C 0020F8AC 38 61 00 34 */ addi r3, r1, 0x34 +/* 80212950 0020F8B0 48 12 B1 91 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80212954: +/* 80212954 0020F8B4 88 1F 01 04 */ lbz r0, 0x104(r31) +/* 80212958 0020F8B8 38 60 00 01 */ li r3, 1 +/* 8021295C 0020F8BC 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 80212960 0020F8C0 7F C3 F3 78 */ mr r3, r30 +/* 80212964 0020F8C4 98 1F 01 04 */ stb r0, 0x104(r31) +/* 80212968 0020F8C8 7F E4 FB 78 */ mr r4, r31 +/* 8021296C 0020F8CC 4B E3 A3 89 */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +/* 80212970 0020F8D0 BB 21 00 64 */ lmw r25, 0x64(r1) +/* 80212974 0020F8D4 80 01 00 84 */ lwz r0, 0x84(r1) +/* 80212978 0020F8D8 7C 08 03 A6 */ mtlr r0 +/* 8021297C 0020F8DC 38 21 00 80 */ addi r1, r1, 0x80 +/* 80212980 0020F8E0 4E 80 00 20 */ blr + +.global MoveWrapCells__13CEnvFxManagerFii +MoveWrapCells__13CEnvFxManagerFii: +/* 80212984 0020F8E4 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80212988 0020F8E8 7C 08 02 A6 */ mflr r0 +/* 8021298C 0020F8EC 90 01 00 64 */ stw r0, 0x64(r1) +/* 80212990 0020F8F0 BE 61 00 2C */ stmw r19, 0x2c(r1) +/* 80212994 0020F8F4 7C 94 23 79 */ or. r20, r4, r4 +/* 80212998 0020F8F8 7C B5 2B 78 */ mr r21, r5 +/* 8021299C 0020F8FC 40 82 00 0C */ bne lbl_802129A8 +/* 802129A0 0020F900 2C 15 00 00 */ cmpwi r21, 0 +/* 802129A4 0020F904 41 82 01 60 */ beq lbl_80212B04 +lbl_802129A8: +/* 802129A8 0020F908 6E 80 80 00 */ xoris r0, r20, 0x8000 +/* 802129AC 0020F90C 3C 80 43 30 */ lis r4, 0x4330 +/* 802129B0 0020F910 90 01 00 24 */ stw r0, 0x24(r1) +/* 802129B4 0020F914 38 A0 00 01 */ li r5, 1 +/* 802129B8 0020F918 C8 42 B2 48 */ lfd f2, lbl_805ACF68@sda21(r2) +/* 802129BC 0020F91C 90 81 00 20 */ stw r4, 0x20(r1) +/* 802129C0 0020F920 C8 22 B2 E0 */ lfd f1, lbl_805AD000@sda21(r2) +/* 802129C4 0020F924 C8 01 00 20 */ lfd f0, 0x20(r1) +/* 802129C8 0020F928 FC 00 10 28 */ fsub f0, f0, f2 +/* 802129CC 0020F92C FC 00 02 10 */ fabs f0, f0 +/* 802129D0 0020F930 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 802129D4 0020F934 4C 41 13 82 */ cror 2, 1, 2 +/* 802129D8 0020F938 41 82 00 2C */ beq lbl_80212A04 +/* 802129DC 0020F93C 6E A0 80 00 */ xoris r0, r21, 0x8000 +/* 802129E0 0020F940 90 81 00 20 */ stw r4, 0x20(r1) +/* 802129E4 0020F944 90 01 00 24 */ stw r0, 0x24(r1) +/* 802129E8 0020F948 C8 01 00 20 */ lfd f0, 0x20(r1) +/* 802129EC 0020F94C FC 00 10 28 */ fsub f0, f0, f2 +/* 802129F0 0020F950 FC 00 02 10 */ fabs f0, f0 +/* 802129F4 0020F954 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 802129F8 0020F958 4C 41 13 82 */ cror 2, 1, 2 +/* 802129FC 0020F95C 41 82 00 08 */ beq lbl_80212A04 +/* 80212A00 0020F960 38 A0 00 00 */ li r5, 0 +lbl_80212A04: +/* 80212A04 0020F964 3B 43 00 54 */ addi r26, r3, 0x54 +/* 80212A08 0020F968 56 B9 58 28 */ slwi r25, r21, 0xb +/* 80212A0C 0020F96C 56 98 58 28 */ slwi r24, r20, 0xb +/* 80212A10 0020F970 54 BF 06 3E */ clrlwi r31, r5, 0x18 +/* 80212A14 0020F974 3A E0 00 00 */ li r23, 0 +/* 80212A18 0020F978 3B 60 00 00 */ li r27, 0 +lbl_80212A1C: +/* 80212A1C 0020F97C 1E 7B 00 2C */ mulli r19, r27, 0x2c +/* 80212A20 0020F980 7F 7D DB 78 */ mr r29, r27 +/* 80212A24 0020F984 7F 95 B8 50 */ subf r28, r21, r23 +/* 80212A28 0020F988 3A C0 00 00 */ li r22, 0 +lbl_80212A2C: +/* 80212A2C 0020F98C 7F DA 9A 14 */ add r30, r26, r19 +/* 80212A30 0020F990 28 1F 00 00 */ cmplwi r31, 0 +/* 80212A34 0020F994 80 9E 00 04 */ lwz r4, 4(r30) +/* 80212A38 0020F998 7C 74 B0 50 */ subf r3, r20, r22 +/* 80212A3C 0020F99C 80 BE 00 08 */ lwz r5, 8(r30) +/* 80212A40 0020F9A0 40 82 00 68 */ bne lbl_80212AA8 +/* 80212A44 0020F9A4 2C 16 00 00 */ cmpwi r22, 0 +/* 80212A48 0020F9A8 41 80 00 60 */ blt lbl_80212AA8 +/* 80212A4C 0020F9AC 2C 16 00 08 */ cmpwi r22, 8 +/* 80212A50 0020F9B0 40 80 00 58 */ bge lbl_80212AA8 +/* 80212A54 0020F9B4 2C 17 00 00 */ cmpwi r23, 0 +/* 80212A58 0020F9B8 41 80 00 50 */ blt lbl_80212AA8 +/* 80212A5C 0020F9BC 2C 17 00 08 */ cmpwi r23, 8 +/* 80212A60 0020F9C0 40 80 00 48 */ bge lbl_80212AA8 +/* 80212A64 0020F9C4 57 80 18 38 */ slwi r0, r28, 3 +/* 80212A68 0020F9C8 7C 03 02 14 */ add r0, r3, r0 +/* 80212A6C 0020F9CC 1C 00 00 2C */ mulli r0, r0, 0x2c +/* 80212A70 0020F9D0 7C 7A 02 14 */ add r3, r26, r0 +/* 80212A74 0020F9D4 88 03 00 14 */ lbz r0, 0x14(r3) +/* 80212A78 0020F9D8 C0 03 00 18 */ lfs f0, 0x18(r3) +/* 80212A7C 0020F9DC 98 01 00 10 */ stb r0, 0x10(r1) +/* 80212A80 0020F9E0 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 80212A84 0020F9E4 80 61 00 10 */ lwz r3, 0x10(r1) +/* 80212A88 0020F9E8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80212A8C 0020F9EC 90 61 00 18 */ stw r3, 0x18(r1) +/* 80212A90 0020F9F0 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80212A94 0020F9F4 88 01 00 18 */ lbz r0, 0x18(r1) +/* 80212A98 0020F9F8 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 80212A9C 0020F9FC 98 1E 00 14 */ stb r0, 0x14(r30) +/* 80212AA0 0020FA00 D0 1E 00 18 */ stfs f0, 0x18(r30) +/* 80212AA4 0020FA04 48 00 00 14 */ b lbl_80212AB8 +lbl_80212AA8: +/* 80212AA8 0020FA08 88 1E 00 00 */ lbz r0, 0(r30) +/* 80212AAC 0020FA0C 38 60 00 01 */ li r3, 1 +/* 80212AB0 0020FA10 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80212AB4 0020FA14 98 1E 00 00 */ stb r0, 0(r30) +lbl_80212AB8: +/* 80212AB8 0020FA18 7C 98 22 14 */ add r4, r24, r4 +/* 80212ABC 0020FA1C 7C 19 2A 14 */ add r0, r25, r5 +/* 80212AC0 0020FA20 38 61 00 08 */ addi r3, r1, 8 +/* 80212AC4 0020FA24 54 84 04 BE */ clrlwi r4, r4, 0x12 +/* 80212AC8 0020FA28 54 05 04 BE */ clrlwi r5, r0, 0x12 +/* 80212ACC 0020FA2C 48 10 18 81 */ bl __ct__9CVector2iFii +/* 80212AD0 0020FA30 80 61 00 0C */ lwz r3, 0xc(r1) +/* 80212AD4 0020FA34 3A D6 00 01 */ addi r22, r22, 1 +/* 80212AD8 0020FA38 80 01 00 08 */ lwz r0, 8(r1) +/* 80212ADC 0020FA3C 2C 16 00 08 */ cmpwi r22, 8 +/* 80212AE0 0020FA40 3B BD 00 01 */ addi r29, r29, 1 +/* 80212AE4 0020FA44 3A 73 00 2C */ addi r19, r19, 0x2c +/* 80212AE8 0020FA48 90 1E 00 04 */ stw r0, 4(r30) +/* 80212AEC 0020FA4C 90 7E 00 08 */ stw r3, 8(r30) +/* 80212AF0 0020FA50 41 80 FF 3C */ blt lbl_80212A2C +/* 80212AF4 0020FA54 3A F7 00 01 */ addi r23, r23, 1 +/* 80212AF8 0020FA58 3B 7B 00 08 */ addi r27, r27, 8 +/* 80212AFC 0020FA5C 2C 17 00 08 */ cmpwi r23, 8 +/* 80212B00 0020FA60 41 80 FF 1C */ blt lbl_80212A1C +lbl_80212B04: +/* 80212B04 0020FA64 BA 61 00 2C */ lmw r19, 0x2c(r1) +/* 80212B08 0020FA68 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80212B0C 0020FA6C 7C 08 03 A6 */ mtlr r0 +/* 80212B10 0020FA70 38 21 00 60 */ addi r1, r1, 0x60 +/* 80212B14 0020FA74 4E 80 00 20 */ blr + +.global GetParticleBoundsToWorldScale__13CEnvFxManagerCFv +GetParticleBoundsToWorldScale__13CEnvFxManagerCFv: +/* 80212B18 0020FA78 C0 24 00 0C */ lfs f1, 0xc(r4) +/* 80212B1C 0020FA7C C0 04 00 00 */ lfs f0, 0(r4) +/* 80212B20 0020FA80 C0 64 00 10 */ lfs f3, 0x10(r4) +/* 80212B24 0020FA84 C0 44 00 04 */ lfs f2, 4(r4) +/* 80212B28 0020FA88 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80212B2C 0020FA8C C0 82 B2 E8 */ lfs f4, lbl_805AD008@sda21(r2) +/* 80212B30 0020FA90 EC 63 10 28 */ fsubs f3, f3, f2 +/* 80212B34 0020FA94 C0 44 00 14 */ lfs f2, 0x14(r4) +/* 80212B38 0020FA98 C0 24 00 08 */ lfs f1, 8(r4) +/* 80212B3C 0020FA9C EC 04 00 32 */ fmuls f0, f4, f0 +/* 80212B40 0020FAA0 EC 22 08 28 */ fsubs f1, f2, f1 +/* 80212B44 0020FAA4 EC 44 00 F2 */ fmuls f2, f4, f3 +/* 80212B48 0020FAA8 D0 03 00 00 */ stfs f0, 0(r3) +/* 80212B4C 0020FAAC EC 04 00 72 */ fmuls f0, f4, f1 +/* 80212B50 0020FAB0 D0 43 00 04 */ stfs f2, 4(r3) +/* 80212B54 0020FAB4 D0 03 00 08 */ stfs f0, 8(r3) +/* 80212B58 0020FAB8 4E 80 00 20 */ blr + +.global Render__17CEnvFxManagerGridFRC12CTransform4fRC12CTransform4fRC12CTransform4ff10EEnvFxType +Render__17CEnvFxManagerGridFRC12CTransform4fRC12CTransform4fRC12CTransform4ff10EEnvFxType: +/* 80212B5C 0020FABC 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 80212B60 0020FAC0 7C 08 02 A6 */ mflr r0 +/* 80212B64 0020FAC4 90 01 01 04 */ stw r0, 0x104(r1) +/* 80212B68 0020FAC8 BF 61 00 EC */ stmw r27, 0xec(r1) +/* 80212B6C 0020FACC 7C 7D 1B 78 */ mr r29, r3 +/* 80212B70 0020FAD0 7C 9B 23 78 */ mr r27, r4 +/* 80212B74 0020FAD4 7C BC 2B 78 */ mr r28, r5 +/* 80212B78 0020FAD8 7C DE 33 78 */ mr r30, r6 +/* 80212B7C 0020FADC 7C FF 3B 78 */ mr r31, r7 +/* 80212B80 0020FAE0 80 03 00 20 */ lwz r0, 0x20(r3) +/* 80212B84 0020FAE4 2C 00 00 00 */ cmpwi r0, 0 +/* 80212B88 0020FAE8 41 82 01 A8 */ beq lbl_80212D30 +/* 80212B8C 0020FAEC 88 1D 00 14 */ lbz r0, 0x14(r29) +/* 80212B90 0020FAF0 28 00 00 00 */ cmplwi r0, 0 +/* 80212B94 0020FAF4 41 82 01 9C */ beq lbl_80212D30 +/* 80212B98 0020FAF8 80 BD 00 04 */ lwz r5, 4(r29) +/* 80212B9C 0020FAFC 3C 80 43 30 */ lis r4, 0x4330 +/* 80212BA0 0020FB00 80 1D 00 08 */ lwz r0, 8(r29) +/* 80212BA4 0020FB04 38 61 00 40 */ addi r3, r1, 0x40 +/* 80212BA8 0020FB08 7C A5 07 34 */ extsh r5, r5 +/* 80212BAC 0020FB0C 90 81 00 D0 */ stw r4, 0xd0(r1) +/* 80212BB0 0020FB10 7C 00 07 34 */ extsh r0, r0 +/* 80212BB4 0020FB14 C8 42 B2 48 */ lfd f2, lbl_805ACF68@sda21(r2) +/* 80212BB8 0020FB18 6C A5 80 00 */ xoris r5, r5, 0x8000 +/* 80212BBC 0020FB1C 90 81 00 D8 */ stw r4, 0xd8(r1) +/* 80212BC0 0020FB20 6C 00 80 00 */ xoris r0, r0, 0x8000 +/* 80212BC4 0020FB24 C0 82 B2 A0 */ lfs f4, lbl_805ACFC0@sda21(r2) +/* 80212BC8 0020FB28 90 A1 00 D4 */ stw r5, 0xd4(r1) +/* 80212BCC 0020FB2C C0 62 B2 78 */ lfs f3, lbl_805ACF98@sda21(r2) +/* 80212BD0 0020FB30 90 01 00 DC */ stw r0, 0xdc(r1) +/* 80212BD4 0020FB34 C8 21 00 D0 */ lfd f1, 0xd0(r1) +/* 80212BD8 0020FB38 C8 01 00 D8 */ lfd f0, 0xd8(r1) +/* 80212BDC 0020FB3C EC 21 10 28 */ fsubs f1, f1, f2 +/* 80212BE0 0020FB40 EC 00 10 28 */ fsubs f0, f0, f2 +/* 80212BE4 0020FB44 EC 24 00 72 */ fmuls f1, f4, f1 +/* 80212BE8 0020FB48 EC 44 00 32 */ fmuls f2, f4, f0 +/* 80212BEC 0020FB4C 48 10 05 9D */ bl Translate__12CTransform4fFfff +/* 80212BF0 0020FB50 7F 64 DB 78 */ mr r4, r27 +/* 80212BF4 0020FB54 38 61 00 70 */ addi r3, r1, 0x70 +/* 80212BF8 0020FB58 38 A1 00 40 */ addi r5, r1, 0x40 +/* 80212BFC 0020FB5C 48 0F FD 55 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80212C00 0020FB60 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 80212C04 0020FB64 38 81 00 70 */ addi r4, r1, 0x70 +/* 80212C08 0020FB68 48 0F FF 6D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80212C0C 0020FB6C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 80212C10 0020FB70 38 81 00 A0 */ addi r4, r1, 0xa0 +/* 80212C14 0020FB74 81 83 00 00 */ lwz r12, 0(r3) +/* 80212C18 0020FB78 81 8C 00 30 */ lwz r12, 0x30(r12) +/* 80212C1C 0020FB7C 7D 89 03 A6 */ mtctr r12 +/* 80212C20 0020FB80 4E 80 04 21 */ bctrl +/* 80212C24 0020FB84 2C 1F 00 01 */ cmpwi r31, 1 +/* 80212C28 0020FB88 41 82 00 0C */ beq lbl_80212C34 +/* 80212C2C 0020FB8C 2C 1F 00 02 */ cmpwi r31, 2 +/* 80212C30 0020FB90 40 82 00 B0 */ bne lbl_80212CE0 +lbl_80212C34: +/* 80212C34 0020FB94 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 80212C38 0020FB98 C0 7D 00 18 */ lfs f3, 0x18(r29) +/* 80212C3C 0020FB9C 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 80212C40 0020FBA0 7F 84 E3 78 */ mr r4, r28 +/* 80212C44 0020FBA4 C0 46 00 00 */ lfs f2, 0(r6) +/* 80212C48 0020FBA8 38 61 00 14 */ addi r3, r1, 0x14 +/* 80212C4C 0020FBAC C0 26 00 04 */ lfs f1, 4(r6) +/* 80212C50 0020FBB0 38 A1 00 08 */ addi r5, r1, 8 +/* 80212C54 0020FBB4 C0 06 00 08 */ lfs f0, 8(r6) +/* 80212C58 0020FBB8 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 80212C5C 0020FBBC EC 23 00 72 */ fmuls f1, f3, f1 +/* 80212C60 0020FBC0 EC 03 00 32 */ fmuls f0, f3, f0 +/* 80212C64 0020FBC4 D0 41 00 08 */ stfs f2, 8(r1) +/* 80212C68 0020FBC8 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 80212C6C 0020FBCC D0 01 00 10 */ stfs f0, 0x10(r1) +/* 80212C70 0020FBD0 48 0F FE 79 */ bl __ml__12CTransform4fCFRC9CVector3f +/* 80212C74 0020FBD4 3C 60 80 3D */ lis r3, lbl_803D2790@ha +/* 80212C78 0020FBD8 C0 42 B2 EC */ lfs f2, lbl_805AD00C@sda21(r2) +/* 80212C7C 0020FBDC 39 83 27 90 */ addi r12, r3, lbl_803D2790@l +/* 80212C80 0020FBE0 C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 80212C84 0020FBE4 C0 02 B2 70 */ lfs f0, lbl_805ACF90@sda21(r2) +/* 80212C88 0020FBE8 38 61 00 20 */ addi r3, r1, 0x20 +/* 80212C8C 0020FBEC 80 0C 00 1C */ lwz r0, 0x1c(r12) +/* 80212C90 0020FBF0 38 80 00 2D */ li r4, 0x2d +/* 80212C94 0020FBF4 81 6C 00 00 */ lwz r11, 0(r12) +/* 80212C98 0020FBF8 EC 02 00 7E */ fnmadds f0, f2, f1, f0 +/* 80212C9C 0020FBFC 90 01 00 3C */ stw r0, 0x3c(r1) +/* 80212CA0 0020FC00 38 A0 00 01 */ li r5, 1 +/* 80212CA4 0020FC04 81 4C 00 04 */ lwz r10, 4(r12) +/* 80212CA8 0020FC08 81 2C 00 08 */ lwz r9, 8(r12) +/* 80212CAC 0020FC0C 81 0C 00 0C */ lwz r8, 0xc(r12) +/* 80212CB0 0020FC10 80 EC 00 10 */ lwz r7, 0x10(r12) +/* 80212CB4 0020FC14 80 CC 00 14 */ lwz r6, 0x14(r12) +/* 80212CB8 0020FC18 80 0C 00 18 */ lwz r0, 0x18(r12) +/* 80212CBC 0020FC1C 91 61 00 20 */ stw r11, 0x20(r1) +/* 80212CC0 0020FC20 91 41 00 24 */ stw r10, 0x24(r1) +/* 80212CC4 0020FC24 91 21 00 28 */ stw r9, 0x28(r1) +/* 80212CC8 0020FC28 91 01 00 2C */ stw r8, 0x2c(r1) +/* 80212CCC 0020FC2C 90 E1 00 30 */ stw r7, 0x30(r1) +/* 80212CD0 0020FC30 90 C1 00 34 */ stw r6, 0x34(r1) +/* 80212CD4 0020FC34 90 01 00 38 */ stw r0, 0x38(r1) +/* 80212CD8 0020FC38 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 80212CDC 0020FC3C 48 16 97 B5 */ bl GXLoadTexMtxImm +lbl_80212CE0: +/* 80212CE0 0020FC40 2C 1F 00 02 */ cmpwi r31, 2 +/* 80212CE4 0020FC44 41 82 00 30 */ beq lbl_80212D14 +/* 80212CE8 0020FC48 40 80 00 10 */ bge lbl_80212CF8 +/* 80212CEC 0020FC4C 2C 1F 00 01 */ cmpwi r31, 1 +/* 80212CF0 0020FC50 40 80 00 14 */ bge lbl_80212D04 +/* 80212CF4 0020FC54 48 00 00 3C */ b lbl_80212D30 +lbl_80212CF8: +/* 80212CF8 0020FC58 2C 1F 00 04 */ cmpwi r31, 4 +/* 80212CFC 0020FC5C 40 80 00 34 */ bge lbl_80212D30 +/* 80212D00 0020FC60 48 00 00 24 */ b lbl_80212D24 +lbl_80212D04: +/* 80212D04 0020FC64 7F A3 EB 78 */ mr r3, r29 +/* 80212D08 0020FC68 7F C4 F3 78 */ mr r4, r30 +/* 80212D0C 0020FC6C 48 00 01 D9 */ bl RenderSnowParticles__17CEnvFxManagerGridFR12CTransform4f +/* 80212D10 0020FC70 48 00 00 20 */ b lbl_80212D30 +lbl_80212D14: +/* 80212D14 0020FC74 7F A3 EB 78 */ mr r3, r29 +/* 80212D18 0020FC78 7F C4 F3 78 */ mr r4, r30 +/* 80212D1C 0020FC7C 48 00 03 69 */ bl RenderRainParticles__17CEnvFxManagerGridFR12CTransform4f +/* 80212D20 0020FC80 48 00 00 10 */ b lbl_80212D30 +lbl_80212D24: +/* 80212D24 0020FC84 7F A3 EB 78 */ mr r3, r29 +/* 80212D28 0020FC88 7F C4 F3 78 */ mr r4, r30 +/* 80212D2C 0020FC8C 48 00 00 19 */ bl RenderUnderwaterParticles__17CEnvFxManagerGridFR12CTransform4f +lbl_80212D30: +/* 80212D30 0020FC90 BB 61 00 EC */ lmw r27, 0xec(r1) +/* 80212D34 0020FC94 80 01 01 04 */ lwz r0, 0x104(r1) +/* 80212D38 0020FC98 7C 08 03 A6 */ mtlr r0 +/* 80212D3C 0020FC9C 38 21 01 00 */ addi r1, r1, 0x100 +/* 80212D40 0020FCA0 4E 80 00 20 */ blr + +.global RenderUnderwaterParticles__17CEnvFxManagerGridFR12CTransform4f +RenderUnderwaterParticles__17CEnvFxManagerGridFR12CTransform4f: +/* 80212D44 0020FCA4 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80212D48 0020FCA8 7C 08 02 A6 */ mflr r0 +/* 80212D4C 0020FCAC C0 C2 B2 70 */ lfs f6, lbl_805ACF90@sda21(r2) +/* 80212D50 0020FCB0 90 01 00 64 */ stw r0, 0x64(r1) +/* 80212D54 0020FCB4 C0 E2 B2 94 */ lfs f7, lbl_805ACFB4@sda21(r2) +/* 80212D58 0020FCB8 BF 01 00 40 */ stmw r24, 0x40(r1) +/* 80212D5C 0020FCBC 7C 7F 1B 78 */ mr r31, r3 +/* 80212D60 0020FCC0 38 60 00 80 */ li r3, 0x80 +/* 80212D64 0020FCC4 C0 44 00 08 */ lfs f2, 8(r4) +/* 80212D68 0020FCC8 C0 24 00 18 */ lfs f1, 0x18(r4) +/* 80212D6C 0020FCCC EC A6 00 B2 */ fmuls f5, f6, f2 +/* 80212D70 0020FCD0 C0 04 00 28 */ lfs f0, 0x28(r4) +/* 80212D74 0020FCD4 EC 86 00 72 */ fmuls f4, f6, f1 +/* 80212D78 0020FCD8 C0 44 00 00 */ lfs f2, 0(r4) +/* 80212D7C 0020FCDC EC 66 00 32 */ fmuls f3, f6, f0 +/* 80212D80 0020FCE0 C0 24 00 10 */ lfs f1, 0x10(r4) +/* 80212D84 0020FCE4 C0 04 00 20 */ lfs f0, 0x20(r4) +/* 80212D88 0020FCE8 EC 46 00 B2 */ fmuls f2, f6, f2 +/* 80212D8C 0020FCEC EC A7 01 72 */ fmuls f5, f7, f5 +/* 80212D90 0020FCF0 83 DF 00 20 */ lwz r30, 0x20(r31) +/* 80212D94 0020FCF4 EC 87 01 32 */ fmuls f4, f7, f4 +/* 80212D98 0020FCF8 38 80 00 06 */ li r4, 6 +/* 80212D9C 0020FCFC EC 26 00 72 */ fmuls f1, f6, f1 +/* 80212DA0 0020FD00 EC 06 00 32 */ fmuls f0, f6, f0 +/* 80212DA4 0020FD04 EC 67 00 F2 */ fmuls f3, f7, f3 +/* 80212DA8 0020FD08 57 C5 14 3A */ rlwinm r5, r30, 2, 0x10, 0x1d +/* 80212DAC 0020FD0C EC 47 00 B2 */ fmuls f2, f7, f2 +/* 80212DB0 0020FD10 FC A0 28 1E */ fctiwz f5, f5 +/* 80212DB4 0020FD14 FC 80 20 1E */ fctiwz f4, f4 +/* 80212DB8 0020FD18 EC 27 00 72 */ fmuls f1, f7, f1 +/* 80212DBC 0020FD1C EC 07 00 32 */ fmuls f0, f7, f0 +/* 80212DC0 0020FD20 D8 A1 00 08 */ stfd f5, 8(r1) +/* 80212DC4 0020FD24 FC 60 18 1E */ fctiwz f3, f3 +/* 80212DC8 0020FD28 FC 40 10 1E */ fctiwz f2, f2 +/* 80212DCC 0020FD2C D8 81 00 10 */ stfd f4, 0x10(r1) +/* 80212DD0 0020FD30 FC 20 08 1E */ fctiwz f1, f1 +/* 80212DD4 0020FD34 FC 00 00 1E */ fctiwz f0, f0 +/* 80212DD8 0020FD38 80 C1 00 0C */ lwz r6, 0xc(r1) +/* 80212DDC 0020FD3C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80212DE0 0020FD40 D8 61 00 18 */ stfd f3, 0x18(r1) +/* 80212DE4 0020FD44 7C DD 07 34 */ extsh r29, r6 +/* 80212DE8 0020FD48 7C 1C 07 34 */ extsh r28, r0 +/* 80212DEC 0020FD4C D8 41 00 20 */ stfd f2, 0x20(r1) +/* 80212DF0 0020FD50 80 C1 00 1C */ lwz r6, 0x1c(r1) +/* 80212DF4 0020FD54 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80212DF8 0020FD58 D8 21 00 28 */ stfd f1, 0x28(r1) +/* 80212DFC 0020FD5C 7C DB 07 34 */ extsh r27, r6 +/* 80212E00 0020FD60 7C 1A 07 34 */ extsh r26, r0 +/* 80212E04 0020FD64 D8 01 00 30 */ stfd f0, 0x30(r1) +/* 80212E08 0020FD68 80 C1 00 2C */ lwz r6, 0x2c(r1) +/* 80212E0C 0020FD6C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80212E10 0020FD70 7C D9 07 34 */ extsh r25, r6 +/* 80212E14 0020FD74 7C 18 07 34 */ extsh r24, r0 +/* 80212E18 0020FD78 48 0F 57 6D */ bl Begin__3CGXF12_GXPrimitive9_GXVtxFmtUs +/* 80212E1C 0020FD7C 34 7E FF FF */ addic. r3, r30, -1 +/* 80212E20 0020FD80 3C 80 CC 01 */ lis r4, 0xcc01 +/* 80212E24 0020FD84 38 03 00 01 */ addi r0, r3, 1 +/* 80212E28 0020FD88 1D 03 00 06 */ mulli r8, r3, 6 +/* 80212E2C 0020FD8C 7C 09 03 A6 */ mtctr r0 +/* 80212E30 0020FD90 41 80 00 9C */ blt lbl_80212ECC +lbl_80212E34: +/* 80212E34 0020FD94 80 BF 00 28 */ lwz r5, 0x28(r31) +/* 80212E38 0020FD98 38 60 00 00 */ li r3, 0 +/* 80212E3C 0020FD9C 38 00 00 02 */ li r0, 2 +/* 80212E40 0020FDA0 7C A5 42 14 */ add r5, r5, r8 +/* 80212E44 0020FDA4 39 08 FF FA */ addi r8, r8, -6 +/* 80212E48 0020FDA8 A8 C5 00 00 */ lha r6, 0(r5) +/* 80212E4C 0020FDAC A8 E5 00 02 */ lha r7, 2(r5) +/* 80212E50 0020FDB0 A8 A5 00 04 */ lha r5, 4(r5) +/* 80212E54 0020FDB4 B0 C4 80 00 */ sth r6, 0xCC008000@l(r4) +/* 80212E58 0020FDB8 7C C6 EA 14 */ add r6, r6, r29 +/* 80212E5C 0020FDBC B0 E4 80 00 */ sth r7, 0xCC008000@l(r4) +/* 80212E60 0020FDC0 7C E7 E2 14 */ add r7, r7, r28 +/* 80212E64 0020FDC4 B0 A4 80 00 */ sth r5, 0xCC008000@l(r4) +/* 80212E68 0020FDC8 7C A5 DA 14 */ add r5, r5, r27 +/* 80212E6C 0020FDCC 98 64 80 00 */ stb r3, 0xCC008000@l(r4) +/* 80212E70 0020FDD0 98 64 80 00 */ stb r3, 0xCC008000@l(r4) +/* 80212E74 0020FDD4 B0 C4 80 00 */ sth r6, 0xCC008000@l(r4) +/* 80212E78 0020FDD8 7C C6 D2 14 */ add r6, r6, r26 +/* 80212E7C 0020FDDC B0 E4 80 00 */ sth r7, 0xCC008000@l(r4) +/* 80212E80 0020FDE0 7C E7 CA 14 */ add r7, r7, r25 +/* 80212E84 0020FDE4 B0 A4 80 00 */ sth r5, 0xCC008000@l(r4) +/* 80212E88 0020FDE8 7C A5 C2 14 */ add r5, r5, r24 +/* 80212E8C 0020FDEC 98 64 80 00 */ stb r3, 0xCC008000@l(r4) +/* 80212E90 0020FDF0 98 04 80 00 */ stb r0, 0xCC008000@l(r4) +/* 80212E94 0020FDF4 B0 C4 80 00 */ sth r6, 0xCC008000@l(r4) +/* 80212E98 0020FDF8 7C DD 30 50 */ subf r6, r29, r6 +/* 80212E9C 0020FDFC B0 E4 80 00 */ sth r7, 0xCC008000@l(r4) +/* 80212EA0 0020FE00 7C FC 38 50 */ subf r7, r28, r7 +/* 80212EA4 0020FE04 B0 A4 80 00 */ sth r5, 0xCC008000@l(r4) +/* 80212EA8 0020FE08 7C BB 28 50 */ subf r5, r27, r5 +/* 80212EAC 0020FE0C 98 04 80 00 */ stb r0, 0xCC008000@l(r4) +/* 80212EB0 0020FE10 98 04 80 00 */ stb r0, 0xCC008000@l(r4) +/* 80212EB4 0020FE14 B0 C4 80 00 */ sth r6, 0xCC008000@l(r4) +/* 80212EB8 0020FE18 B0 E4 80 00 */ sth r7, 0xCC008000@l(r4) +/* 80212EBC 0020FE1C B0 A4 80 00 */ sth r5, 0xCC008000@l(r4) +/* 80212EC0 0020FE20 98 04 80 00 */ stb r0, 0xCC008000@l(r4) +/* 80212EC4 0020FE24 98 64 80 00 */ stb r3, 0xCC008000@l(r4) +/* 80212EC8 0020FE28 42 00 FF 6C */ bdnz lbl_80212E34 +lbl_80212ECC: +/* 80212ECC 0020FE2C 48 0F 56 B5 */ bl End__3CGXFv +/* 80212ED0 0020FE30 BB 01 00 40 */ lmw r24, 0x40(r1) +/* 80212ED4 0020FE34 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80212ED8 0020FE38 7C 08 03 A6 */ mtlr r0 +/* 80212EDC 0020FE3C 38 21 00 60 */ addi r1, r1, 0x60 +/* 80212EE0 0020FE40 4E 80 00 20 */ blr + +.global RenderSnowParticles__17CEnvFxManagerGridFR12CTransform4f +RenderSnowParticles__17CEnvFxManagerGridFR12CTransform4f: +/* 80212EE4 0020FE44 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80212EE8 0020FE48 7C 08 02 A6 */ mflr r0 +/* 80212EEC 0020FE4C C0 C2 B2 F0 */ lfs f6, lbl_805AD010@sda21(r2) +/* 80212EF0 0020FE50 90 01 00 64 */ stw r0, 0x64(r1) +/* 80212EF4 0020FE54 C0 E2 B2 94 */ lfs f7, lbl_805ACFB4@sda21(r2) +/* 80212EF8 0020FE58 BF 01 00 40 */ stmw r24, 0x40(r1) +/* 80212EFC 0020FE5C 7C 7F 1B 78 */ mr r31, r3 +/* 80212F00 0020FE60 38 60 00 80 */ li r3, 0x80 +/* 80212F04 0020FE64 C0 44 00 08 */ lfs f2, 8(r4) +/* 80212F08 0020FE68 C0 24 00 18 */ lfs f1, 0x18(r4) +/* 80212F0C 0020FE6C EC A6 00 B2 */ fmuls f5, f6, f2 +/* 80212F10 0020FE70 C0 04 00 28 */ lfs f0, 0x28(r4) +/* 80212F14 0020FE74 EC 86 00 72 */ fmuls f4, f6, f1 +/* 80212F18 0020FE78 C0 44 00 00 */ lfs f2, 0(r4) +/* 80212F1C 0020FE7C EC 66 00 32 */ fmuls f3, f6, f0 +/* 80212F20 0020FE80 C0 24 00 10 */ lfs f1, 0x10(r4) +/* 80212F24 0020FE84 C0 04 00 20 */ lfs f0, 0x20(r4) +/* 80212F28 0020FE88 EC 46 00 B2 */ fmuls f2, f6, f2 +/* 80212F2C 0020FE8C EC A7 01 72 */ fmuls f5, f7, f5 +/* 80212F30 0020FE90 83 DF 00 20 */ lwz r30, 0x20(r31) +/* 80212F34 0020FE94 EC 87 01 32 */ fmuls f4, f7, f4 +/* 80212F38 0020FE98 38 80 00 06 */ li r4, 6 +/* 80212F3C 0020FE9C EC 26 00 72 */ fmuls f1, f6, f1 +/* 80212F40 0020FEA0 EC 06 00 32 */ fmuls f0, f6, f0 +/* 80212F44 0020FEA4 EC 67 00 F2 */ fmuls f3, f7, f3 +/* 80212F48 0020FEA8 57 C5 14 3A */ rlwinm r5, r30, 2, 0x10, 0x1d +/* 80212F4C 0020FEAC EC 47 00 B2 */ fmuls f2, f7, f2 +/* 80212F50 0020FEB0 FC A0 28 1E */ fctiwz f5, f5 +/* 80212F54 0020FEB4 FC 80 20 1E */ fctiwz f4, f4 +/* 80212F58 0020FEB8 EC 27 00 72 */ fmuls f1, f7, f1 +/* 80212F5C 0020FEBC EC 07 00 32 */ fmuls f0, f7, f0 +/* 80212F60 0020FEC0 D8 A1 00 08 */ stfd f5, 8(r1) +/* 80212F64 0020FEC4 FC 60 18 1E */ fctiwz f3, f3 +/* 80212F68 0020FEC8 FC 40 10 1E */ fctiwz f2, f2 +/* 80212F6C 0020FECC D8 81 00 10 */ stfd f4, 0x10(r1) +/* 80212F70 0020FED0 FC 20 08 1E */ fctiwz f1, f1 +/* 80212F74 0020FED4 FC 00 00 1E */ fctiwz f0, f0 +/* 80212F78 0020FED8 80 C1 00 0C */ lwz r6, 0xc(r1) +/* 80212F7C 0020FEDC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80212F80 0020FEE0 D8 61 00 18 */ stfd f3, 0x18(r1) +/* 80212F84 0020FEE4 7C DD 07 34 */ extsh r29, r6 +/* 80212F88 0020FEE8 7C 1C 07 34 */ extsh r28, r0 +/* 80212F8C 0020FEEC D8 41 00 20 */ stfd f2, 0x20(r1) +/* 80212F90 0020FEF0 80 C1 00 1C */ lwz r6, 0x1c(r1) +/* 80212F94 0020FEF4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80212F98 0020FEF8 D8 21 00 28 */ stfd f1, 0x28(r1) +/* 80212F9C 0020FEFC 7C DB 07 34 */ extsh r27, r6 +/* 80212FA0 0020FF00 7C 1A 07 34 */ extsh r26, r0 +/* 80212FA4 0020FF04 D8 01 00 30 */ stfd f0, 0x30(r1) +/* 80212FA8 0020FF08 80 C1 00 2C */ lwz r6, 0x2c(r1) +/* 80212FAC 0020FF0C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80212FB0 0020FF10 7C D9 07 34 */ extsh r25, r6 +/* 80212FB4 0020FF14 7C 18 07 34 */ extsh r24, r0 +/* 80212FB8 0020FF18 48 0F 55 CD */ bl Begin__3CGXF12_GXPrimitive9_GXVtxFmtUs +/* 80212FBC 0020FF1C 34 7E FF FF */ addic. r3, r30, -1 +/* 80212FC0 0020FF20 3C 80 CC 01 */ lis r4, 0xcc01 +/* 80212FC4 0020FF24 38 03 00 01 */ addi r0, r3, 1 +/* 80212FC8 0020FF28 1D 03 00 06 */ mulli r8, r3, 6 +/* 80212FCC 0020FF2C 7C 09 03 A6 */ mtctr r0 +/* 80212FD0 0020FF30 41 80 00 9C */ blt lbl_8021306C +lbl_80212FD4: +/* 80212FD4 0020FF34 80 BF 00 28 */ lwz r5, 0x28(r31) +/* 80212FD8 0020FF38 38 60 00 00 */ li r3, 0 +/* 80212FDC 0020FF3C 38 00 00 02 */ li r0, 2 +/* 80212FE0 0020FF40 7C A5 42 14 */ add r5, r5, r8 +/* 80212FE4 0020FF44 39 08 FF FA */ addi r8, r8, -6 +/* 80212FE8 0020FF48 A8 C5 00 00 */ lha r6, 0(r5) +/* 80212FEC 0020FF4C A8 E5 00 02 */ lha r7, 2(r5) +/* 80212FF0 0020FF50 A8 A5 00 04 */ lha r5, 4(r5) +/* 80212FF4 0020FF54 B0 C4 80 00 */ sth r6, 0xCC008000@l(r4) +/* 80212FF8 0020FF58 7C C6 EA 14 */ add r6, r6, r29 +/* 80212FFC 0020FF5C B0 E4 80 00 */ sth r7, 0xCC008000@l(r4) +/* 80213000 0020FF60 7C E7 E2 14 */ add r7, r7, r28 +/* 80213004 0020FF64 B0 A4 80 00 */ sth r5, 0xCC008000@l(r4) +/* 80213008 0020FF68 7C A5 DA 14 */ add r5, r5, r27 +/* 8021300C 0020FF6C 98 64 80 00 */ stb r3, 0xCC008000@l(r4) +/* 80213010 0020FF70 98 64 80 00 */ stb r3, 0xCC008000@l(r4) +/* 80213014 0020FF74 B0 C4 80 00 */ sth r6, 0xCC008000@l(r4) +/* 80213018 0020FF78 7C C6 D2 14 */ add r6, r6, r26 +/* 8021301C 0020FF7C B0 E4 80 00 */ sth r7, 0xCC008000@l(r4) +/* 80213020 0020FF80 7C E7 CA 14 */ add r7, r7, r25 +/* 80213024 0020FF84 B0 A4 80 00 */ sth r5, 0xCC008000@l(r4) +/* 80213028 0020FF88 7C A5 C2 14 */ add r5, r5, r24 +/* 8021302C 0020FF8C 98 64 80 00 */ stb r3, 0xCC008000@l(r4) +/* 80213030 0020FF90 98 04 80 00 */ stb r0, 0xCC008000@l(r4) +/* 80213034 0020FF94 B0 C4 80 00 */ sth r6, 0xCC008000@l(r4) +/* 80213038 0020FF98 7C DD 30 50 */ subf r6, r29, r6 +/* 8021303C 0020FF9C B0 E4 80 00 */ sth r7, 0xCC008000@l(r4) +/* 80213040 0020FFA0 7C FC 38 50 */ subf r7, r28, r7 +/* 80213044 0020FFA4 B0 A4 80 00 */ sth r5, 0xCC008000@l(r4) +/* 80213048 0020FFA8 7C BB 28 50 */ subf r5, r27, r5 +/* 8021304C 0020FFAC 98 04 80 00 */ stb r0, 0xCC008000@l(r4) +/* 80213050 0020FFB0 98 04 80 00 */ stb r0, 0xCC008000@l(r4) +/* 80213054 0020FFB4 B0 C4 80 00 */ sth r6, 0xCC008000@l(r4) +/* 80213058 0020FFB8 B0 E4 80 00 */ sth r7, 0xCC008000@l(r4) +/* 8021305C 0020FFBC B0 A4 80 00 */ sth r5, 0xCC008000@l(r4) +/* 80213060 0020FFC0 98 04 80 00 */ stb r0, 0xCC008000@l(r4) +/* 80213064 0020FFC4 98 64 80 00 */ stb r3, 0xCC008000@l(r4) +/* 80213068 0020FFC8 42 00 FF 6C */ bdnz lbl_80212FD4 +lbl_8021306C: +/* 8021306C 0020FFCC 48 0F 55 15 */ bl End__3CGXFv +/* 80213070 0020FFD0 BB 01 00 40 */ lmw r24, 0x40(r1) +/* 80213074 0020FFD4 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80213078 0020FFD8 7C 08 03 A6 */ mtlr r0 +/* 8021307C 0020FFDC 38 21 00 60 */ addi r1, r1, 0x60 +/* 80213080 0020FFE0 4E 80 00 20 */ blr + +.global RenderRainParticles__17CEnvFxManagerGridFR12CTransform4f +RenderRainParticles__17CEnvFxManagerGridFR12CTransform4f: +/* 80213084 0020FFE4 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80213088 0020FFE8 7C 08 02 A6 */ mflr r0 +/* 8021308C 0020FFEC 90 01 00 34 */ stw r0, 0x34(r1) +/* 80213090 0020FFF0 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 80213094 0020FFF4 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 80213098 0020FFF8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8021309C 0020FFFC 93 C1 00 18 */ stw r30, 0x18(r1) +/* 802130A0 00210000 3C A0 80 5A */ lis r5, lbl_805A66F4@ha +/* 802130A4 00210004 C0 24 00 18 */ lfs f1, 0x18(r4) +/* 802130A8 00210008 38 C5 66 F4 */ addi r6, r5, lbl_805A66F4@l +/* 802130AC 0021000C 83 C3 00 20 */ lwz r30, 0x20(r3) +/* 802130B0 00210010 C0 06 00 04 */ lfs f0, 4(r6) +/* 802130B4 00210014 7C 7F 1B 78 */ mr r31, r3 +/* 802130B8 00210018 C0 44 00 08 */ lfs f2, 8(r4) +/* 802130BC 0021001C 38 60 00 A8 */ li r3, 0xa8 +/* 802130C0 00210020 EC 01 00 32 */ fmuls f0, f1, f0 +/* 802130C4 00210024 C0 26 00 00 */ lfs f1, 0(r6) +/* 802130C8 00210028 C0 84 00 28 */ lfs f4, 0x28(r4) +/* 802130CC 0021002C 57 C5 0C 3C */ rlwinm r5, r30, 1, 0x10, 0x1e +/* 802130D0 00210030 C0 66 00 08 */ lfs f3, 8(r6) +/* 802130D4 00210034 38 80 00 06 */ li r4, 6 +/* 802130D8 00210038 EC 02 00 7A */ fmadds f0, f2, f1, f0 +/* 802130DC 0021003C EC 04 00 FA */ fmadds f0, f4, f3, f0 +/* 802130E0 00210040 FF E0 02 10 */ fabs f31, f0 +/* 802130E4 00210044 48 0F 54 A1 */ bl Begin__3CGXF12_GXPrimitive9_GXVtxFmtUs +/* 802130E8 00210048 FC 20 F8 18 */ frsp f1, f31 +/* 802130EC 0021004C C0 42 B2 64 */ lfs f2, lbl_805ACF84@sda21(r2) +/* 802130F0 00210050 39 20 00 00 */ li r9, 0 +/* 802130F4 00210054 C0 62 B2 F4 */ lfs f3, lbl_805AD014@sda21(r2) +/* 802130F8 00210058 C0 02 B2 94 */ lfs f0, lbl_805ACFB4@sda21(r2) +/* 802130FC 0021005C 2C 1E 00 00 */ cmpwi r30, 0 +/* 80213100 00210060 EC 22 08 28 */ fsubs f1, f2, f1 +/* 80213104 00210064 7D 23 4B 78 */ mr r3, r9 +/* 80213108 00210068 3C A0 CC 01 */ lis r5, 0xcc01 +/* 8021310C 0021006C 38 80 00 0A */ li r4, 0xa +/* 80213110 00210070 EC 03 00 7A */ fmadds f0, f3, f1, f0 +/* 80213114 00210074 FC 00 00 1E */ fctiwz f0, f0 +/* 80213118 00210078 D8 01 00 08 */ stfd f0, 8(r1) +/* 8021311C 0021007C 80 01 00 0C */ lwz r0, 0xc(r1) +/* 80213120 00210080 7C 0A 07 34 */ extsh r10, r0 +/* 80213124 00210084 40 81 01 50 */ ble lbl_80213274 +/* 80213128 00210088 57 C0 F0 BF */ rlwinm. r0, r30, 0x1e, 2, 0x1f +/* 8021312C 0021008C 7C 09 03 A6 */ mtctr r0 +/* 80213130 00210090 41 82 01 00 */ beq lbl_80213230 +lbl_80213134: +/* 80213134 00210094 80 1F 00 28 */ lwz r0, 0x28(r31) +/* 80213138 00210098 7C C0 4A 14 */ add r6, r0, r9 +/* 8021313C 0021009C 39 29 00 06 */ addi r9, r9, 6 +/* 80213140 002100A0 A9 06 00 04 */ lha r8, 4(r6) +/* 80213144 002100A4 A8 E6 00 00 */ lha r7, 0(r6) +/* 80213148 002100A8 A8 C6 00 02 */ lha r6, 2(r6) +/* 8021314C 002100AC 7C 08 52 14 */ add r0, r8, r10 +/* 80213150 002100B0 B0 E5 80 00 */ sth r7, 0xCC008000@l(r5) +/* 80213154 002100B4 B0 C5 80 00 */ sth r6, 0xCC008000@l(r5) +/* 80213158 002100B8 B1 05 80 00 */ sth r8, 0xCC008000@l(r5) +/* 8021315C 002100BC B0 85 80 00 */ sth r4, 0xCC008000@l(r5) +/* 80213160 002100C0 B0 E5 80 00 */ sth r7, 0xCC008000@l(r5) +/* 80213164 002100C4 B0 C5 80 00 */ sth r6, 0xCC008000@l(r5) +/* 80213168 002100C8 B0 05 80 00 */ sth r0, 0xCC008000@l(r5) +/* 8021316C 002100CC B0 65 80 00 */ sth r3, 0xCC008000@l(r5) +/* 80213170 002100D0 80 1F 00 28 */ lwz r0, 0x28(r31) +/* 80213174 002100D4 7C C0 4A 14 */ add r6, r0, r9 +/* 80213178 002100D8 39 29 00 06 */ addi r9, r9, 6 +/* 8021317C 002100DC A9 06 00 04 */ lha r8, 4(r6) +/* 80213180 002100E0 A8 E6 00 00 */ lha r7, 0(r6) +/* 80213184 002100E4 A8 C6 00 02 */ lha r6, 2(r6) +/* 80213188 002100E8 7C 08 52 14 */ add r0, r8, r10 +/* 8021318C 002100EC B0 E5 80 00 */ sth r7, 0xCC008000@l(r5) +/* 80213190 002100F0 B0 C5 80 00 */ sth r6, 0xCC008000@l(r5) +/* 80213194 002100F4 B1 05 80 00 */ sth r8, 0xCC008000@l(r5) +/* 80213198 002100F8 B0 85 80 00 */ sth r4, 0xCC008000@l(r5) +/* 8021319C 002100FC B0 E5 80 00 */ sth r7, 0xCC008000@l(r5) +/* 802131A0 00210100 B0 C5 80 00 */ sth r6, 0xCC008000@l(r5) +/* 802131A4 00210104 B0 05 80 00 */ sth r0, 0xCC008000@l(r5) +/* 802131A8 00210108 B0 65 80 00 */ sth r3, 0xCC008000@l(r5) +/* 802131AC 0021010C 80 1F 00 28 */ lwz r0, 0x28(r31) +/* 802131B0 00210110 7C C0 4A 14 */ add r6, r0, r9 +/* 802131B4 00210114 39 29 00 06 */ addi r9, r9, 6 +/* 802131B8 00210118 A9 06 00 04 */ lha r8, 4(r6) +/* 802131BC 0021011C A8 E6 00 00 */ lha r7, 0(r6) +/* 802131C0 00210120 A8 C6 00 02 */ lha r6, 2(r6) +/* 802131C4 00210124 7C 08 52 14 */ add r0, r8, r10 +/* 802131C8 00210128 B0 E5 80 00 */ sth r7, 0xCC008000@l(r5) +/* 802131CC 0021012C B0 C5 80 00 */ sth r6, 0xCC008000@l(r5) +/* 802131D0 00210130 B1 05 80 00 */ sth r8, 0xCC008000@l(r5) +/* 802131D4 00210134 B0 85 80 00 */ sth r4, 0xCC008000@l(r5) +/* 802131D8 00210138 B0 E5 80 00 */ sth r7, 0xCC008000@l(r5) +/* 802131DC 0021013C B0 C5 80 00 */ sth r6, 0xCC008000@l(r5) +/* 802131E0 00210140 B0 05 80 00 */ sth r0, 0xCC008000@l(r5) +/* 802131E4 00210144 B0 65 80 00 */ sth r3, 0xCC008000@l(r5) +/* 802131E8 00210148 80 1F 00 28 */ lwz r0, 0x28(r31) +/* 802131EC 0021014C 7C C0 4A 14 */ add r6, r0, r9 +/* 802131F0 00210150 39 29 00 06 */ addi r9, r9, 6 +/* 802131F4 00210154 A9 06 00 04 */ lha r8, 4(r6) +/* 802131F8 00210158 A8 E6 00 00 */ lha r7, 0(r6) +/* 802131FC 0021015C A8 C6 00 02 */ lha r6, 2(r6) +/* 80213200 00210160 7C 08 52 14 */ add r0, r8, r10 +/* 80213204 00210164 B0 E5 80 00 */ sth r7, 0xCC008000@l(r5) +/* 80213208 00210168 B0 C5 80 00 */ sth r6, 0xCC008000@l(r5) +/* 8021320C 0021016C B1 05 80 00 */ sth r8, 0xCC008000@l(r5) +/* 80213210 00210170 B0 85 80 00 */ sth r4, 0xCC008000@l(r5) +/* 80213214 00210174 B0 E5 80 00 */ sth r7, 0xCC008000@l(r5) +/* 80213218 00210178 B0 C5 80 00 */ sth r6, 0xCC008000@l(r5) +/* 8021321C 0021017C B0 05 80 00 */ sth r0, 0xCC008000@l(r5) +/* 80213220 00210180 B0 65 80 00 */ sth r3, 0xCC008000@l(r5) +/* 80213224 00210184 42 00 FF 10 */ bdnz lbl_80213134 +/* 80213228 00210188 73 DE 00 03 */ andi. r30, r30, 3 +/* 8021322C 0021018C 41 82 00 48 */ beq lbl_80213274 +lbl_80213230: +/* 80213230 00210190 7F C9 03 A6 */ mtctr r30 +lbl_80213234: +/* 80213234 00210194 80 1F 00 28 */ lwz r0, 0x28(r31) +/* 80213238 00210198 7C C0 4A 14 */ add r6, r0, r9 +/* 8021323C 0021019C 39 29 00 06 */ addi r9, r9, 6 +/* 80213240 002101A0 A9 06 00 04 */ lha r8, 4(r6) +/* 80213244 002101A4 A8 E6 00 00 */ lha r7, 0(r6) +/* 80213248 002101A8 A8 C6 00 02 */ lha r6, 2(r6) +/* 8021324C 002101AC 7C 08 52 14 */ add r0, r8, r10 +/* 80213250 002101B0 B0 E5 80 00 */ sth r7, 0xCC008000@l(r5) +/* 80213254 002101B4 B0 C5 80 00 */ sth r6, 0xCC008000@l(r5) +/* 80213258 002101B8 B1 05 80 00 */ sth r8, 0xCC008000@l(r5) +/* 8021325C 002101BC B0 85 80 00 */ sth r4, 0xCC008000@l(r5) +/* 80213260 002101C0 B0 E5 80 00 */ sth r7, 0xCC008000@l(r5) +/* 80213264 002101C4 B0 C5 80 00 */ sth r6, 0xCC008000@l(r5) +/* 80213268 002101C8 B0 05 80 00 */ sth r0, 0xCC008000@l(r5) +/* 8021326C 002101CC B0 65 80 00 */ sth r3, 0xCC008000@l(r5) +/* 80213270 002101D0 42 00 FF C4 */ bdnz lbl_80213234 +lbl_80213274: +/* 80213274 002101D4 48 0F 53 0D */ bl End__3CGXFv +/* 80213278 002101D8 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 8021327C 002101DC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80213280 002101E0 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 80213284 002101E4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80213288 002101E8 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8021328C 002101EC 7C 08 03 A6 */ mtlr r0 +/* 80213290 002101F0 38 21 00 30 */ addi r1, r1, 0x30 +/* 80213294 002101F4 4E 80 00 20 */ blr + +.global __ct__13CEnvFxManagerFv +__ct__13CEnvFxManagerFv: +/* 80213298 002101F8 94 21 FE F0 */ stwu r1, -0x110(r1) +/* 8021329C 002101FC 7C 08 02 A6 */ mflr r0 +/* 802132A0 00210200 90 01 01 14 */ stw r0, 0x114(r1) +/* 802132A4 00210204 DB E1 01 00 */ stfd f31, 0x100(r1) +/* 802132A8 00210208 F3 E1 01 08 */ psq_st f31, 264(r1), 0, qr0 +/* 802132AC 0021020C BF 21 00 E4 */ stmw r25, 0xe4(r1) +/* 802132B0 00210210 C0 22 B2 F8 */ lfs f1, lbl_805AD018@sda21(r2) +/* 802132B4 00210214 7C 7A 1B 78 */ mr r26, r3 +/* 802132B8 00210218 C0 02 B2 FC */ lfs f0, lbl_805AD01C@sda21(r2) +/* 802132BC 0021021C 38 81 00 A8 */ addi r4, r1, 0xa8 +/* 802132C0 00210220 D0 21 00 9C */ stfs f1, 0x9c(r1) +/* 802132C4 00210224 38 A1 00 9C */ addi r5, r1, 0x9c +/* 802132C8 00210228 D0 21 00 A0 */ stfs f1, 0xa0(r1) +/* 802132CC 0021022C D0 21 00 A4 */ stfs f1, 0xa4(r1) +/* 802132D0 00210230 D0 01 00 A8 */ stfs f0, 0xa8(r1) +/* 802132D4 00210234 D0 01 00 AC */ stfs f0, 0xac(r1) +/* 802132D8 00210238 D0 01 00 B0 */ stfs f0, 0xb0(r1) +/* 802132DC 0021023C 48 12 52 2D */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 802132E0 00210240 3C 80 80 5A */ lis r4, skZero3f@ha +/* 802132E4 00210244 3C 60 80 3D */ lis r3, lbl_803D2818@ha +/* 802132E8 00210248 38 E4 66 A0 */ addi r7, r4, skZero3f@l +/* 802132EC 0021024C 38 C0 00 00 */ li r6, 0 +/* 802132F0 00210250 C0 27 00 00 */ lfs f1, 0(r7) +/* 802132F4 00210254 38 83 28 18 */ addi r4, r3, lbl_803D2818@l +/* 802132F8 00210258 C0 02 B2 78 */ lfs f0, lbl_805ACF98@sda21(r2) +/* 802132FC 0021025C 38 00 FF FF */ li r0, -1 +/* 80213300 00210260 D0 3A 00 18 */ stfs f1, 0x18(r26) +/* 80213304 00210264 38 61 00 54 */ addi r3, r1, 0x54 +/* 80213308 00210268 38 A4 00 29 */ addi r5, r4, 0x29 +/* 8021330C 0021026C C0 27 00 04 */ lfs f1, 4(r7) +/* 80213310 00210270 D0 3A 00 1C */ stfs f1, 0x1c(r26) +/* 80213314 00210274 C0 27 00 08 */ lfs f1, 8(r7) +/* 80213318 00210278 D0 3A 00 20 */ stfs f1, 0x20(r26) +/* 8021331C 0021027C 98 DA 00 24 */ stb r6, 0x24(r26) +/* 80213320 00210280 D0 1A 00 28 */ stfs f0, 0x28(r26) +/* 80213324 00210284 90 1A 00 2C */ stw r0, 0x2c(r26) +/* 80213328 00210288 D0 1A 00 30 */ stfs f0, 0x30(r26) +/* 8021332C 0021028C D0 1A 00 34 */ stfs f0, 0x34(r26) +/* 80213330 00210290 D0 1A 00 38 */ stfs f0, 0x38(r26) +/* 80213334 00210294 98 DA 00 3C */ stb r6, 0x3c(r26) +/* 80213338 00210298 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8021333C 0021029C 81 84 00 00 */ lwz r12, 0(r4) +/* 80213340 002102A0 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 80213344 002102A4 7D 89 03 A6 */ mtctr r12 +/* 80213348 002102A8 4E 80 04 21 */ bctrl +/* 8021334C 002102AC 3B 21 00 90 */ addi r25, r1, 0x90 +/* 80213350 002102B0 38 81 00 54 */ addi r4, r1, 0x54 +/* 80213354 002102B4 7F 23 CB 78 */ mr r3, r25 +/* 80213358 002102B8 48 12 DB 51 */ bl __ct__6CTokenFRC6CToken +/* 8021335C 002102BC 7F 23 CB 78 */ mr r3, r25 +/* 80213360 002102C0 48 12 DA AD */ bl GetObj__6CTokenFv +/* 80213364 002102C4 80 63 00 04 */ lwz r3, 4(r3) +/* 80213368 002102C8 37 3A 00 40 */ addic. r25, r26, 0x40 +/* 8021336C 002102CC 38 00 00 01 */ li r0, 1 +/* 80213370 002102D0 90 61 00 98 */ stw r3, 0x98(r1) +/* 80213374 002102D4 98 1A 00 4C */ stb r0, 0x4c(r26) +/* 80213378 002102D8 41 82 00 20 */ beq lbl_80213398 +/* 8021337C 002102DC 7F 23 CB 78 */ mr r3, r25 +/* 80213380 002102E0 38 81 00 90 */ addi r4, r1, 0x90 +/* 80213384 002102E4 48 12 DB 25 */ bl __ct__6CTokenFRC6CToken +/* 80213388 002102E8 80 01 00 98 */ lwz r0, 0x98(r1) +/* 8021338C 002102EC 7F 23 CB 78 */ mr r3, r25 +/* 80213390 002102F0 90 19 00 08 */ stw r0, 8(r25) +/* 80213394 002102F4 48 12 D9 F1 */ bl Lock__6CTokenFv +lbl_80213398: +/* 80213398 002102F8 38 61 00 90 */ addi r3, r1, 0x90 +/* 8021339C 002102FC 38 80 00 00 */ li r4, 0 +/* 802133A0 00210300 48 12 DA A1 */ bl __dt__6CTokenFv +/* 802133A4 00210304 38 61 00 54 */ addi r3, r1, 0x54 +/* 802133A8 00210308 38 80 FF FF */ li r4, -1 +/* 802133AC 0021030C 48 12 DA 95 */ bl __dt__6CTokenFv +/* 802133B0 00210310 38 00 00 00 */ li r0, 0 +/* 802133B4 00210314 3C 60 80 3D */ lis r3, lbl_803D2818@ha +/* 802133B8 00210318 90 1A 00 50 */ stw r0, 0x50(r26) +/* 802133BC 0021031C 38 A3 28 18 */ addi r5, r3, lbl_803D2818@l +/* 802133C0 00210320 38 61 00 4C */ addi r3, r1, 0x4c +/* 802133C4 00210324 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 802133C8 00210328 38 A5 00 3A */ addi r5, r5, 0x3a +/* 802133CC 0021032C 81 84 00 00 */ lwz r12, 0(r4) +/* 802133D0 00210330 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 802133D4 00210334 7D 89 03 A6 */ mtctr r12 +/* 802133D8 00210338 4E 80 04 21 */ bctrl +/* 802133DC 0021033C 3B 21 00 84 */ addi r25, r1, 0x84 +/* 802133E0 00210340 38 81 00 4C */ addi r4, r1, 0x4c +/* 802133E4 00210344 7F 23 CB 78 */ mr r3, r25 +/* 802133E8 00210348 48 12 DA C1 */ bl __ct__6CTokenFRC6CToken +/* 802133EC 0021034C 7F 23 CB 78 */ mr r3, r25 +/* 802133F0 00210350 48 12 DA 1D */ bl GetObj__6CTokenFv +/* 802133F4 00210354 80 63 00 04 */ lwz r3, 4(r3) +/* 802133F8 00210358 37 3A 0B 58 */ addic. r25, r26, 0xb58 +/* 802133FC 0021035C 38 00 00 01 */ li r0, 1 +/* 80213400 00210360 90 61 00 8C */ stw r3, 0x8c(r1) +/* 80213404 00210364 98 1A 0B 64 */ stb r0, 0xb64(r26) +/* 80213408 00210368 41 82 00 20 */ beq lbl_80213428 +/* 8021340C 0021036C 7F 23 CB 78 */ mr r3, r25 +/* 80213410 00210370 38 81 00 84 */ addi r4, r1, 0x84 +/* 80213414 00210374 48 12 DA 95 */ bl __ct__6CTokenFRC6CToken +/* 80213418 00210378 80 01 00 8C */ lwz r0, 0x8c(r1) +/* 8021341C 0021037C 7F 23 CB 78 */ mr r3, r25 +/* 80213420 00210380 90 19 00 08 */ stw r0, 8(r25) +/* 80213424 00210384 48 12 D9 61 */ bl Lock__6CTokenFv +lbl_80213428: +/* 80213428 00210388 38 61 00 84 */ addi r3, r1, 0x84 +/* 8021342C 0021038C 38 80 00 00 */ li r4, 0 +/* 80213430 00210390 48 12 DA 11 */ bl __dt__6CTokenFv +/* 80213434 00210394 38 61 00 4C */ addi r3, r1, 0x4c +/* 80213438 00210398 38 80 FF FF */ li r4, -1 +/* 8021343C 0021039C 48 12 DA 05 */ bl __dt__6CTokenFv +/* 80213440 002103A0 A0 AD A3 8C */ lhz r5, lbl_805A8F4C@sda21(r13) +/* 80213444 002103A4 3C 60 80 3D */ lis r3, lbl_803D2818@ha +/* 80213448 002103A8 38 83 28 18 */ addi r4, r3, lbl_803D2818@l +/* 8021344C 002103AC 38 00 00 00 */ li r0, 0 +/* 80213450 002103B0 B0 BA 0B 68 */ sth r5, 0xb68(r26) +/* 80213454 002103B4 38 61 00 44 */ addi r3, r1, 0x44 +/* 80213458 002103B8 38 A4 00 4D */ addi r5, r4, 0x4d +/* 8021345C 002103BC 98 1A 0B 6A */ stb r0, 0xb6a(r26) +/* 80213460 002103C0 90 1A 0B 6C */ stw r0, 0xb6c(r26) +/* 80213464 002103C4 90 1A 0B 70 */ stw r0, 0xb70(r26) +/* 80213468 002103C8 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8021346C 002103CC 81 84 00 00 */ lwz r12, 0(r4) +/* 80213470 002103D0 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 80213474 002103D4 7D 89 03 A6 */ mtctr r12 +/* 80213478 002103D8 4E 80 04 21 */ bctrl +/* 8021347C 002103DC 3B 21 00 78 */ addi r25, r1, 0x78 +/* 80213480 002103E0 38 81 00 44 */ addi r4, r1, 0x44 +/* 80213484 002103E4 7F 23 CB 78 */ mr r3, r25 +/* 80213488 002103E8 48 12 DA 21 */ bl __ct__6CTokenFRC6CToken +/* 8021348C 002103EC 7F 23 CB 78 */ mr r3, r25 +/* 80213490 002103F0 48 12 D9 7D */ bl GetObj__6CTokenFv +/* 80213494 002103F4 80 63 00 04 */ lwz r3, 4(r3) +/* 80213498 002103F8 37 3A 0B 74 */ addic. r25, r26, 0xb74 +/* 8021349C 002103FC 38 00 00 01 */ li r0, 1 +/* 802134A0 00210400 90 61 00 80 */ stw r3, 0x80(r1) +/* 802134A4 00210404 98 1A 0B 80 */ stb r0, 0xb80(r26) +/* 802134A8 00210408 41 82 00 20 */ beq lbl_802134C8 +/* 802134AC 0021040C 7F 23 CB 78 */ mr r3, r25 +/* 802134B0 00210410 38 81 00 78 */ addi r4, r1, 0x78 +/* 802134B4 00210414 48 12 D9 F5 */ bl __ct__6CTokenFRC6CToken +/* 802134B8 00210418 80 01 00 80 */ lwz r0, 0x80(r1) +/* 802134BC 0021041C 7F 23 CB 78 */ mr r3, r25 +/* 802134C0 00210420 90 19 00 08 */ stw r0, 8(r25) +/* 802134C4 00210424 48 12 D8 C1 */ bl Lock__6CTokenFv +lbl_802134C8: +/* 802134C8 00210428 38 61 00 78 */ addi r3, r1, 0x78 +/* 802134CC 0021042C 38 80 00 00 */ li r4, 0 +/* 802134D0 00210430 48 12 D9 71 */ bl __dt__6CTokenFv +/* 802134D4 00210434 38 61 00 44 */ addi r3, r1, 0x44 +/* 802134D8 00210438 38 80 FF FF */ li r4, -1 +/* 802134DC 0021043C 48 12 D9 65 */ bl __dt__6CTokenFv +/* 802134E0 00210440 38 00 00 00 */ li r0, 0 +/* 802134E4 00210444 3C 60 80 3D */ lis r3, lbl_803D2818@ha +/* 802134E8 00210448 90 1A 0B 84 */ stw r0, 0xb84(r26) +/* 802134EC 0021044C 38 A3 28 18 */ addi r5, r3, lbl_803D2818@l +/* 802134F0 00210450 38 61 00 3C */ addi r3, r1, 0x3c +/* 802134F4 00210454 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 802134F8 00210458 38 A5 00 5C */ addi r5, r5, 0x5c +/* 802134FC 0021045C 81 84 00 00 */ lwz r12, 0(r4) +/* 80213500 00210460 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 80213504 00210464 7D 89 03 A6 */ mtctr r12 +/* 80213508 00210468 4E 80 04 21 */ bctrl +/* 8021350C 0021046C 3B 21 00 6C */ addi r25, r1, 0x6c +/* 80213510 00210470 38 81 00 3C */ addi r4, r1, 0x3c +/* 80213514 00210474 7F 23 CB 78 */ mr r3, r25 +/* 80213518 00210478 48 12 D9 91 */ bl __ct__6CTokenFRC6CToken +/* 8021351C 0021047C 7F 23 CB 78 */ mr r3, r25 +/* 80213520 00210480 48 12 D8 ED */ bl GetObj__6CTokenFv +/* 80213524 00210484 80 63 00 04 */ lwz r3, 4(r3) +/* 80213528 00210488 37 3A 0C 48 */ addic. r25, r26, 0xc48 +/* 8021352C 0021048C 38 00 00 01 */ li r0, 1 +/* 80213530 00210490 90 61 00 74 */ stw r3, 0x74(r1) +/* 80213534 00210494 98 1A 0C 54 */ stb r0, 0xc54(r26) +/* 80213538 00210498 41 82 00 20 */ beq lbl_80213558 +/* 8021353C 0021049C 7F 23 CB 78 */ mr r3, r25 +/* 80213540 002104A0 38 81 00 6C */ addi r4, r1, 0x6c +/* 80213544 002104A4 48 12 D9 65 */ bl __ct__6CTokenFRC6CToken +/* 80213548 002104A8 80 01 00 74 */ lwz r0, 0x74(r1) +/* 8021354C 002104AC 7F 23 CB 78 */ mr r3, r25 +/* 80213550 002104B0 90 19 00 08 */ stw r0, 8(r25) +/* 80213554 002104B4 48 12 D8 31 */ bl Lock__6CTokenFv +lbl_80213558: +/* 80213558 002104B8 38 61 00 6C */ addi r3, r1, 0x6c +/* 8021355C 002104BC 38 80 00 00 */ li r4, 0 +/* 80213560 002104C0 48 12 D8 E1 */ bl __dt__6CTokenFv +/* 80213564 002104C4 38 61 00 3C */ addi r3, r1, 0x3c +/* 80213568 002104C8 38 80 FF FF */ li r4, -1 +/* 8021356C 002104CC 48 12 D8 D5 */ bl __dt__6CTokenFv +/* 80213570 002104D0 38 61 00 28 */ addi r3, r1, 0x28 +/* 80213574 002104D4 38 80 00 00 */ li r4, 0 +/* 80213578 002104D8 48 0F F0 75 */ bl __ct__9CRandom16FUi +/* 8021357C 002104DC 3B A1 00 D0 */ addi r29, r1, 0xd0 +/* 80213580 002104E0 3B 80 00 00 */ li r28, 0 +/* 80213584 002104E4 3B C0 00 00 */ li r30, 0 +lbl_80213588: +/* 80213588 002104E8 3B 60 00 00 */ li r27, 0 +/* 8021358C 002104EC 3B E0 00 00 */ li r31, 0 +lbl_80213590: +/* 80213590 002104F0 38 00 00 00 */ li r0, 0 +/* 80213594 002104F4 38 61 00 2C */ addi r3, r1, 0x2c +/* 80213598 002104F8 90 01 00 60 */ stw r0, 0x60(r1) +/* 8021359C 002104FC 38 80 08 00 */ li r4, 0x800 +/* 802135A0 00210500 38 A0 08 00 */ li r5, 0x800 +/* 802135A4 00210504 90 01 00 64 */ stw r0, 0x64(r1) +/* 802135A8 00210508 90 01 00 68 */ stw r0, 0x68(r1) +/* 802135AC 0021050C 48 10 0D A1 */ bl __ct__9CVector2iFii +/* 802135B0 00210510 7C 79 1B 78 */ mr r25, r3 +/* 802135B4 00210514 7F E4 FB 78 */ mr r4, r31 +/* 802135B8 00210518 7F C5 F3 78 */ mr r5, r30 +/* 802135BC 0021051C 38 61 00 34 */ addi r3, r1, 0x34 +/* 802135C0 00210520 48 10 0D 8D */ bl __ct__9CVector2iFii +/* 802135C4 00210524 7C 64 1B 78 */ mr r4, r3 +/* 802135C8 00210528 7F 25 CB 78 */ mr r5, r25 +/* 802135CC 0021052C 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 802135D0 00210530 38 C1 00 5C */ addi r6, r1, 0x5c +/* 802135D4 00210534 38 E0 00 AB */ li r7, 0xab +/* 802135D8 00210538 48 00 02 B5 */ bl "__ct__17CEnvFxManagerGridFRC9CVector2iRC9CVector2iRCQ24rstl52vector<15CVectorFixed8_8,Q24rstl17rmemory_allocator>i" +/* 802135DC 0021053C 38 7A 00 50 */ addi r3, r26, 0x50 +/* 802135E0 00210540 38 81 00 B4 */ addi r4, r1, 0xb4 +/* 802135E4 00210544 48 00 01 1D */ bl sub_80213700 +/* 802135E8 00210548 28 1D 00 00 */ cmplwi r29, 0 +/* 802135EC 0021054C 41 82 00 44 */ beq lbl_80213630 +/* 802135F0 00210550 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 802135F4 00210554 80 61 00 DC */ lwz r3, 0xdc(r1) +/* 802135F8 00210558 1C 00 00 06 */ mulli r0, r0, 6 +/* 802135FC 0021055C 90 61 00 0C */ stw r3, 0xc(r1) +/* 80213600 00210560 7C 64 1B 78 */ mr r4, r3 +/* 80213604 00210564 7C 03 02 14 */ add r0, r3, r0 +/* 80213608 00210568 90 61 00 08 */ stw r3, 8(r1) +/* 8021360C 0021056C 90 01 00 14 */ stw r0, 0x14(r1) +/* 80213610 00210570 90 01 00 10 */ stw r0, 0x10(r1) +/* 80213614 00210574 48 00 00 08 */ b lbl_8021361C +lbl_80213618: +/* 80213618 00210578 38 84 00 06 */ addi r4, r4, 6 +lbl_8021361C: +/* 8021361C 0021057C 7C 04 00 40 */ cmplw r4, r0 +/* 80213620 00210580 40 82 FF F8 */ bne lbl_80213618 +/* 80213624 00210584 28 03 00 00 */ cmplwi r3, 0 +/* 80213628 00210588 41 82 00 08 */ beq lbl_80213630 +/* 8021362C 0021058C 48 10 23 05 */ bl Free__7CMemoryFPCv +lbl_80213630: +/* 80213630 00210590 80 01 00 60 */ lwz r0, 0x60(r1) +/* 80213634 00210594 80 61 00 68 */ lwz r3, 0x68(r1) +/* 80213638 00210598 1C 00 00 06 */ mulli r0, r0, 6 +/* 8021363C 0021059C 90 61 00 1C */ stw r3, 0x1c(r1) +/* 80213640 002105A0 7C 64 1B 78 */ mr r4, r3 +/* 80213644 002105A4 7C 03 02 14 */ add r0, r3, r0 +/* 80213648 002105A8 90 61 00 18 */ stw r3, 0x18(r1) +/* 8021364C 002105AC 90 01 00 24 */ stw r0, 0x24(r1) +/* 80213650 002105B0 90 01 00 20 */ stw r0, 0x20(r1) +/* 80213654 002105B4 48 00 00 08 */ b lbl_8021365C +lbl_80213658: +/* 80213658 002105B8 38 84 00 06 */ addi r4, r4, 6 +lbl_8021365C: +/* 8021365C 002105BC 7C 04 00 40 */ cmplw r4, r0 +/* 80213660 002105C0 40 82 FF F8 */ bne lbl_80213658 +/* 80213664 002105C4 28 03 00 00 */ cmplwi r3, 0 +/* 80213668 002105C8 41 82 00 08 */ beq lbl_80213670 +/* 8021366C 002105CC 48 10 22 C5 */ bl Free__7CMemoryFPCv +lbl_80213670: +/* 80213670 002105D0 3B 7B 00 01 */ addi r27, r27, 1 +/* 80213674 002105D4 3B FF 08 00 */ addi r31, r31, 0x800 +/* 80213678 002105D8 2C 1B 00 08 */ cmpwi r27, 8 +/* 8021367C 002105DC 41 80 FF 14 */ blt lbl_80213590 +/* 80213680 002105E0 3B 9C 00 01 */ addi r28, r28, 1 +/* 80213684 002105E4 3B DE 08 00 */ addi r30, r30, 0x800 +/* 80213688 002105E8 2C 1C 00 08 */ cmpwi r28, 8 +/* 8021368C 002105EC 41 80 FE FC */ blt lbl_80213588 +/* 80213690 002105F0 C3 E2 B2 78 */ lfs f31, lbl_805ACF98@sda21(r2) +/* 80213694 002105F4 3B 3A 0B 84 */ addi r25, r26, 0xb84 +/* 80213698 002105F8 3B 60 00 0F */ li r27, 0xf +lbl_8021369C: +/* 8021369C 002105FC C0 22 B3 00 */ lfs f1, lbl_805AD020@sda21(r2) +/* 802136A0 00210600 38 61 00 28 */ addi r3, r1, 0x28 +/* 802136A4 00210604 C0 42 B3 04 */ lfs f2, lbl_805AD024@sda21(r2) +/* 802136A8 00210608 48 0F EE 9D */ bl Range__9CRandom16Fff +/* 802136AC 0021060C 80 19 00 00 */ lwz r0, 0(r25) +/* 802136B0 00210610 1C 00 00 0C */ mulli r0, r0, 0xc +/* 802136B4 00210614 7C 79 02 14 */ add r3, r25, r0 +/* 802136B8 00210618 34 63 00 04 */ addic. r3, r3, 4 +/* 802136BC 0021061C 41 82 00 10 */ beq lbl_802136CC +/* 802136C0 00210620 D3 E3 00 00 */ stfs f31, 0(r3) +/* 802136C4 00210624 D3 E3 00 04 */ stfs f31, 4(r3) +/* 802136C8 00210628 D0 23 00 08 */ stfs f1, 8(r3) +lbl_802136CC: +/* 802136CC 0021062C 80 7A 0B 84 */ lwz r3, 0xb84(r26) +/* 802136D0 00210630 37 7B FF FF */ addic. r27, r27, -1 +/* 802136D4 00210634 38 03 00 01 */ addi r0, r3, 1 +/* 802136D8 00210638 90 1A 0B 84 */ stw r0, 0xb84(r26) +/* 802136DC 0021063C 40 80 FF C0 */ bge lbl_8021369C +/* 802136E0 00210640 7F 43 D3 78 */ mr r3, r26 +/* 802136E4 00210644 E3 E1 01 08 */ psq_l f31, 264(r1), 0, qr0 +/* 802136E8 00210648 CB E1 01 00 */ lfd f31, 0x100(r1) +/* 802136EC 0021064C BB 21 00 E4 */ lmw r25, 0xe4(r1) +/* 802136F0 00210650 80 01 01 14 */ lwz r0, 0x114(r1) +/* 802136F4 00210654 7C 08 03 A6 */ mtlr r0 +/* 802136F8 00210658 38 21 01 10 */ addi r1, r1, 0x110 +/* 802136FC 0021065C 4E 80 00 20 */ blr + +.global sub_80213700 +sub_80213700: +/* 80213700 00210660 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80213704 00210664 7C 08 02 A6 */ mflr r0 +/* 80213708 00210668 90 01 00 14 */ stw r0, 0x14(r1) +/* 8021370C 0021066C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80213710 00210670 7C 7F 1B 78 */ mr r31, r3 +/* 80213714 00210674 80 03 00 00 */ lwz r0, 0(r3) +/* 80213718 00210678 1C 00 00 2C */ mulli r0, r0, 0x2c +/* 8021371C 0021067C 7C 7F 02 14 */ add r3, r31, r0 +/* 80213720 00210680 38 63 00 04 */ addi r3, r3, 4 +/* 80213724 00210684 48 00 00 25 */ bl sub_80213748 +/* 80213728 00210688 80 7F 00 00 */ lwz r3, 0(r31) +/* 8021372C 0021068C 38 03 00 01 */ addi r0, r3, 1 +/* 80213730 00210690 90 1F 00 00 */ stw r0, 0(r31) +/* 80213734 00210694 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80213738 00210698 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8021373C 0021069C 7C 08 03 A6 */ mtlr r0 +/* 80213740 002106A0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80213744 002106A4 4E 80 00 20 */ blr + +.global sub_80213748 +sub_80213748: +/* 80213748 002106A8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8021374C 002106AC 7C 08 02 A6 */ mflr r0 +/* 80213750 002106B0 28 03 00 00 */ cmplwi r3, 0 +/* 80213754 002106B4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80213758 002106B8 41 82 00 08 */ beq lbl_80213760 +/* 8021375C 002106BC 48 00 00 15 */ bl sub_80213770 +lbl_80213760: +/* 80213760 002106C0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80213764 002106C4 7C 08 03 A6 */ mtlr r0 +/* 80213768 002106C8 38 21 00 10 */ addi r1, r1, 0x10 +/* 8021376C 002106CC 4E 80 00 20 */ blr + +.global sub_80213770 +sub_80213770: +/* 80213770 002106D0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80213774 002106D4 7C 08 02 A6 */ mflr r0 +/* 80213778 002106D8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8021377C 002106DC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80213780 002106E0 7C 7F 1B 78 */ mr r31, r3 +/* 80213784 002106E4 93 C1 00 08 */ stw r30, 8(r1) +/* 80213788 002106E8 7C 9E 23 78 */ mr r30, r4 +/* 8021378C 002106EC 88 04 00 00 */ lbz r0, 0(r4) +/* 80213790 002106F0 98 03 00 00 */ stb r0, 0(r3) +/* 80213794 002106F4 80 04 00 04 */ lwz r0, 4(r4) +/* 80213798 002106F8 90 03 00 04 */ stw r0, 4(r3) +/* 8021379C 002106FC 80 04 00 08 */ lwz r0, 8(r4) +/* 802137A0 00210700 90 03 00 08 */ stw r0, 8(r3) +/* 802137A4 00210704 80 04 00 0C */ lwz r0, 0xc(r4) +/* 802137A8 00210708 90 03 00 0C */ stw r0, 0xc(r3) +/* 802137AC 0021070C 80 04 00 10 */ lwz r0, 0x10(r4) +/* 802137B0 00210710 90 03 00 10 */ stw r0, 0x10(r3) +/* 802137B4 00210714 88 04 00 14 */ lbz r0, 0x14(r4) +/* 802137B8 00210718 98 03 00 14 */ stb r0, 0x14(r3) +/* 802137BC 0021071C C0 04 00 18 */ lfs f0, 0x18(r4) +/* 802137C0 00210720 D0 03 00 18 */ stfs f0, 0x18(r3) +/* 802137C4 00210724 80 04 00 20 */ lwz r0, 0x20(r4) +/* 802137C8 00210728 90 03 00 20 */ stw r0, 0x20(r3) +/* 802137CC 0021072C 80 04 00 24 */ lwz r0, 0x24(r4) +/* 802137D0 00210730 90 03 00 24 */ stw r0, 0x24(r3) +/* 802137D4 00210734 80 04 00 20 */ lwz r0, 0x20(r4) +/* 802137D8 00210738 2C 00 00 00 */ cmpwi r0, 0 +/* 802137DC 0021073C 40 82 00 1C */ bne lbl_802137F8 +/* 802137E0 00210740 80 1E 00 24 */ lwz r0, 0x24(r30) +/* 802137E4 00210744 2C 00 00 00 */ cmpwi r0, 0 +/* 802137E8 00210748 40 82 00 10 */ bne lbl_802137F8 +/* 802137EC 0021074C 38 00 00 00 */ li r0, 0 +/* 802137F0 00210750 90 1F 00 28 */ stw r0, 0x28(r31) +/* 802137F4 00210754 48 00 00 7C */ b lbl_80213870 +lbl_802137F8: +/* 802137F8 00210758 80 1F 00 24 */ lwz r0, 0x24(r31) +/* 802137FC 0021075C 1C 60 00 06 */ mulli r3, r0, 6 +/* 80213800 00210760 2C 03 00 00 */ cmpwi r3, 0 +/* 80213804 00210764 40 82 00 10 */ bne lbl_80213814 +/* 80213808 00210768 38 00 00 00 */ li r0, 0 +/* 8021380C 0021076C 90 1F 00 28 */ stw r0, 0x28(r31) +/* 80213810 00210770 48 00 00 1C */ b lbl_8021382C +lbl_80213814: +/* 80213814 00210774 3C 80 80 3D */ lis r4, lbl_803D2818@ha +/* 80213818 00210778 38 A0 00 00 */ li r5, 0 +/* 8021381C 0021077C 38 84 28 18 */ addi r4, r4, lbl_803D2818@l +/* 80213820 00210780 38 84 00 10 */ addi r4, r4, 0x10 +/* 80213824 00210784 48 10 1F F5 */ bl __nwa__FUlPCcPCc +/* 80213828 00210788 90 7F 00 28 */ stw r3, 0x28(r31) +lbl_8021382C: +/* 8021382C 0021078C 80 1F 00 20 */ lwz r0, 0x20(r31) +/* 80213830 00210790 80 9E 00 28 */ lwz r4, 0x28(r30) +/* 80213834 00210794 80 7F 00 28 */ lwz r3, 0x28(r31) +/* 80213838 00210798 7C 09 03 A6 */ mtctr r0 +/* 8021383C 0021079C 2C 00 00 00 */ cmpwi r0, 0 +/* 80213840 002107A0 40 81 00 30 */ ble lbl_80213870 +lbl_80213844: +/* 80213844 002107A4 28 03 00 00 */ cmplwi r3, 0 +/* 80213848 002107A8 41 82 00 1C */ beq lbl_80213864 +/* 8021384C 002107AC A8 04 00 00 */ lha r0, 0(r4) +/* 80213850 002107B0 B0 03 00 00 */ sth r0, 0(r3) +/* 80213854 002107B4 A8 04 00 02 */ lha r0, 2(r4) +/* 80213858 002107B8 B0 03 00 02 */ sth r0, 2(r3) +/* 8021385C 002107BC A8 04 00 04 */ lha r0, 4(r4) +/* 80213860 002107C0 B0 03 00 04 */ sth r0, 4(r3) +lbl_80213864: +/* 80213864 002107C4 38 63 00 06 */ addi r3, r3, 6 +/* 80213868 002107C8 38 84 00 06 */ addi r4, r4, 6 +/* 8021386C 002107CC 42 00 FF D8 */ bdnz lbl_80213844 +lbl_80213870: +/* 80213870 002107D0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80213874 002107D4 7F E3 FB 78 */ mr r3, r31 +/* 80213878 002107D8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8021387C 002107DC 83 C1 00 08 */ lwz r30, 8(r1) +/* 80213880 002107E0 7C 08 03 A6 */ mtlr r0 +/* 80213884 002107E4 38 21 00 10 */ addi r1, r1, 0x10 +/* 80213888 002107E8 4E 80 00 20 */ blr + +.global "__ct__17CEnvFxManagerGridFRC9CVector2iRC9CVector2iRCQ24rstl52vector<15CVectorFixed8_8,Q24rstl17rmemory_allocator>i" +"__ct__17CEnvFxManagerGridFRC9CVector2iRC9CVector2iRCQ24rstl52vector<15CVectorFixed8_8,Q24rstl17rmemory_allocator>i": +/* 8021388C 002107EC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80213890 002107F0 7C 08 02 A6 */ mflr r0 +/* 80213894 002107F4 C0 02 B3 08 */ lfs f0, lbl_805AD028@sda21(r2) +/* 80213898 002107F8 90 01 00 24 */ stw r0, 0x24(r1) +/* 8021389C 002107FC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 802138A0 00210800 7C FF 3B 78 */ mr r31, r7 +/* 802138A4 00210804 93 C1 00 18 */ stw r30, 0x18(r1) +/* 802138A8 00210808 7C DE 33 78 */ mr r30, r6 +/* 802138AC 0021080C 93 A1 00 14 */ stw r29, 0x14(r1) +/* 802138B0 00210810 7C 7D 1B 78 */ mr r29, r3 +/* 802138B4 00210814 38 60 00 01 */ li r3, 1 +/* 802138B8 00210818 88 1D 00 00 */ lbz r0, 0(r29) +/* 802138BC 0021081C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 802138C0 00210820 98 1D 00 00 */ stb r0, 0(r29) +/* 802138C4 00210824 80 04 00 00 */ lwz r0, 0(r4) +/* 802138C8 00210828 90 1D 00 04 */ stw r0, 4(r29) +/* 802138CC 0021082C 80 04 00 04 */ lwz r0, 4(r4) +/* 802138D0 00210830 90 1D 00 08 */ stw r0, 8(r29) +/* 802138D4 00210834 80 05 00 00 */ lwz r0, 0(r5) +/* 802138D8 00210838 90 1D 00 0C */ stw r0, 0xc(r29) +/* 802138DC 0021083C 80 05 00 04 */ lwz r0, 4(r5) +/* 802138E0 00210840 90 1D 00 10 */ stw r0, 0x10(r29) +/* 802138E4 00210844 88 0D 94 B8 */ lbz r0, lbl_805A8078@sda21(r13) +/* 802138E8 00210848 98 1D 00 14 */ stb r0, 0x14(r29) +/* 802138EC 0021084C D0 1D 00 18 */ stfs f0, 0x18(r29) +/* 802138F0 00210850 80 06 00 04 */ lwz r0, 4(r6) +/* 802138F4 00210854 90 1D 00 20 */ stw r0, 0x20(r29) +/* 802138F8 00210858 80 06 00 08 */ lwz r0, 8(r6) +/* 802138FC 0021085C 90 1D 00 24 */ stw r0, 0x24(r29) +/* 80213900 00210860 80 06 00 04 */ lwz r0, 4(r6) +/* 80213904 00210864 2C 00 00 00 */ cmpwi r0, 0 +/* 80213908 00210868 40 82 00 1C */ bne lbl_80213924 +/* 8021390C 0021086C 80 1E 00 08 */ lwz r0, 8(r30) +/* 80213910 00210870 2C 00 00 00 */ cmpwi r0, 0 +/* 80213914 00210874 40 82 00 10 */ bne lbl_80213924 +/* 80213918 00210878 38 00 00 00 */ li r0, 0 +/* 8021391C 0021087C 90 1D 00 28 */ stw r0, 0x28(r29) +/* 80213920 00210880 48 00 00 7C */ b lbl_8021399C +lbl_80213924: +/* 80213924 00210884 80 1D 00 24 */ lwz r0, 0x24(r29) +/* 80213928 00210888 1C 60 00 06 */ mulli r3, r0, 6 +/* 8021392C 0021088C 2C 03 00 00 */ cmpwi r3, 0 +/* 80213930 00210890 40 82 00 10 */ bne lbl_80213940 +/* 80213934 00210894 38 00 00 00 */ li r0, 0 +/* 80213938 00210898 90 1D 00 28 */ stw r0, 0x28(r29) +/* 8021393C 0021089C 48 00 00 1C */ b lbl_80213958 +lbl_80213940: +/* 80213940 002108A0 3C 80 80 3D */ lis r4, lbl_803D2818@ha +/* 80213944 002108A4 38 A0 00 00 */ li r5, 0 +/* 80213948 002108A8 38 84 28 18 */ addi r4, r4, lbl_803D2818@l +/* 8021394C 002108AC 38 84 00 10 */ addi r4, r4, 0x10 +/* 80213950 002108B0 48 10 1E C9 */ bl __nwa__FUlPCcPCc +/* 80213954 002108B4 90 7D 00 28 */ stw r3, 0x28(r29) +lbl_80213958: +/* 80213958 002108B8 80 1D 00 20 */ lwz r0, 0x20(r29) +/* 8021395C 002108BC 80 9E 00 0C */ lwz r4, 0xc(r30) +/* 80213960 002108C0 80 7D 00 28 */ lwz r3, 0x28(r29) +/* 80213964 002108C4 7C 09 03 A6 */ mtctr r0 +/* 80213968 002108C8 2C 00 00 00 */ cmpwi r0, 0 +/* 8021396C 002108CC 40 81 00 30 */ ble lbl_8021399C +lbl_80213970: +/* 80213970 002108D0 28 03 00 00 */ cmplwi r3, 0 +/* 80213974 002108D4 41 82 00 1C */ beq lbl_80213990 +/* 80213978 002108D8 A8 04 00 00 */ lha r0, 0(r4) +/* 8021397C 002108DC B0 03 00 00 */ sth r0, 0(r3) +/* 80213980 002108E0 A8 04 00 02 */ lha r0, 2(r4) +/* 80213984 002108E4 B0 03 00 02 */ sth r0, 2(r3) +/* 80213988 002108E8 A8 04 00 04 */ lha r0, 4(r4) +/* 8021398C 002108EC B0 03 00 04 */ sth r0, 4(r3) +lbl_80213990: +/* 80213990 002108F0 38 63 00 06 */ addi r3, r3, 6 +/* 80213994 002108F4 38 84 00 06 */ addi r4, r4, 6 +/* 80213998 002108F8 42 00 FF D8 */ bdnz lbl_80213970 +lbl_8021399C: +/* 8021399C 002108FC 7F E4 FB 78 */ mr r4, r31 +/* 802139A0 00210900 38 7D 00 1C */ addi r3, r29, 0x1c +/* 802139A4 00210904 48 00 00 25 */ bl sub_802139c8 +/* 802139A8 00210908 80 01 00 24 */ lwz r0, 0x24(r1) +/* 802139AC 0021090C 7F A3 EB 78 */ mr r3, r29 +/* 802139B0 00210910 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 802139B4 00210914 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 802139B8 00210918 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 802139BC 0021091C 7C 08 03 A6 */ mtlr r0 +/* 802139C0 00210920 38 21 00 20 */ addi r1, r1, 0x20 +/* 802139C4 00210924 4E 80 00 20 */ blr + +.global sub_802139c8 +sub_802139c8: +/* 802139C8 00210928 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 802139CC 0021092C 7C 08 02 A6 */ mflr r0 +/* 802139D0 00210930 90 01 00 34 */ stw r0, 0x34(r1) +/* 802139D4 00210934 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 802139D8 00210938 7C 9F 23 78 */ mr r31, r4 +/* 802139DC 0021093C 93 C1 00 28 */ stw r30, 0x28(r1) +/* 802139E0 00210940 7C 7E 1B 78 */ mr r30, r3 +/* 802139E4 00210944 93 A1 00 24 */ stw r29, 0x24(r1) +/* 802139E8 00210948 80 03 00 08 */ lwz r0, 8(r3) +/* 802139EC 0021094C 7C 1F 00 00 */ cmpw r31, r0 +/* 802139F0 00210950 40 81 00 C0 */ ble lbl_80213AB0 +/* 802139F4 00210954 1C 7F 00 06 */ mulli r3, r31, 6 +/* 802139F8 00210958 2C 03 00 00 */ cmpwi r3, 0 +/* 802139FC 0021095C 40 82 00 0C */ bne lbl_80213A08 +/* 80213A00 00210960 3B A0 00 00 */ li r29, 0 +/* 80213A04 00210964 48 00 00 1C */ b lbl_80213A20 +lbl_80213A08: +/* 80213A08 00210968 3C 80 80 3D */ lis r4, lbl_803D2818@ha +/* 80213A0C 0021096C 38 A0 00 00 */ li r5, 0 +/* 80213A10 00210970 38 84 28 18 */ addi r4, r4, lbl_803D2818@l +/* 80213A14 00210974 38 84 00 10 */ addi r4, r4, 0x10 +/* 80213A18 00210978 48 10 1E 01 */ bl __nwa__FUlPCcPCc +/* 80213A1C 0021097C 7C 7D 1B 78 */ mr r29, r3 +lbl_80213A20: +/* 80213A20 00210980 80 1E 00 04 */ lwz r0, 4(r30) +/* 80213A24 00210984 7F A4 EB 78 */ mr r4, r29 +/* 80213A28 00210988 80 BE 00 0C */ lwz r5, 0xc(r30) +/* 80213A2C 0021098C 1C 00 00 06 */ mulli r0, r0, 6 +/* 80213A30 00210990 90 A1 00 10 */ stw r5, 0x10(r1) +/* 80213A34 00210994 7C 65 02 14 */ add r3, r5, r0 +/* 80213A38 00210998 90 A1 00 14 */ stw r5, 0x14(r1) +/* 80213A3C 0021099C 90 61 00 08 */ stw r3, 8(r1) +/* 80213A40 002109A0 90 61 00 0C */ stw r3, 0xc(r1) +/* 80213A44 002109A4 48 00 00 2C */ b lbl_80213A70 +lbl_80213A48: +/* 80213A48 002109A8 28 04 00 00 */ cmplwi r4, 0 +/* 80213A4C 002109AC 41 82 00 1C */ beq lbl_80213A68 +/* 80213A50 002109B0 A8 05 00 00 */ lha r0, 0(r5) +/* 80213A54 002109B4 B0 04 00 00 */ sth r0, 0(r4) +/* 80213A58 002109B8 A8 05 00 02 */ lha r0, 2(r5) +/* 80213A5C 002109BC B0 04 00 02 */ sth r0, 2(r4) +/* 80213A60 002109C0 A8 05 00 04 */ lha r0, 4(r5) +/* 80213A64 002109C4 B0 04 00 04 */ sth r0, 4(r4) +lbl_80213A68: +/* 80213A68 002109C8 38 84 00 06 */ addi r4, r4, 6 +/* 80213A6C 002109CC 38 A5 00 06 */ addi r5, r5, 6 +lbl_80213A70: +/* 80213A70 002109D0 7C 05 18 40 */ cmplw r5, r3 +/* 80213A74 002109D4 40 82 FF D4 */ bne lbl_80213A48 +/* 80213A78 002109D8 80 1E 00 04 */ lwz r0, 4(r30) +/* 80213A7C 002109DC 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 80213A80 002109E0 1C 00 00 06 */ mulli r0, r0, 6 +/* 80213A84 002109E4 7C 64 1B 78 */ mr r4, r3 +/* 80213A88 002109E8 7C 03 02 14 */ add r0, r3, r0 +/* 80213A8C 002109EC 48 00 00 08 */ b lbl_80213A94 +lbl_80213A90: +/* 80213A90 002109F0 38 84 00 06 */ addi r4, r4, 6 +lbl_80213A94: +/* 80213A94 002109F4 7C 04 00 40 */ cmplw r4, r0 +/* 80213A98 002109F8 40 82 FF F8 */ bne lbl_80213A90 +/* 80213A9C 002109FC 28 03 00 00 */ cmplwi r3, 0 +/* 80213AA0 00210A00 41 82 00 08 */ beq lbl_80213AA8 +/* 80213AA4 00210A04 48 10 1E 8D */ bl Free__7CMemoryFPCv +lbl_80213AA8: +/* 80213AA8 00210A08 93 BE 00 0C */ stw r29, 0xc(r30) +/* 80213AAC 00210A0C 93 FE 00 08 */ stw r31, 8(r30) +lbl_80213AB0: +/* 80213AB0 00210A10 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80213AB4 00210A14 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80213AB8 00210A18 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80213ABC 00210A1C 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 80213AC0 00210A20 7C 08 03 A6 */ mtlr r0 +/* 80213AC4 00210A24 38 21 00 30 */ addi r1, r1, 0x30 +/* 80213AC8 00210A28 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CFlameWarp.s b/asm/Kyoto_CWD/CFlameWarp.s new file mode 100644 index 00000000..cedb3be1 --- /dev/null +++ b/asm/Kyoto_CWD/CFlameWarp.s @@ -0,0 +1,872 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global Get4CharID__10CFlameWarpFv +Get4CharID__10CFlameWarpFv: +/* 801B4F5C 001B1EBC 3C 60 46 57 */ lis r3, 0x46575250@ha +/* 801B4F60 001B1EC0 38 63 52 50 */ addi r3, r3, 0x46575250@l +/* 801B4F64 001B1EC4 4E 80 00 20 */ blr + +.global IsActivated__10CFlameWarpFv +IsActivated__10CFlameWarpFv: +/* 801B4F68 001B1EC8 88 03 00 A0 */ lbz r0, 0xa0(r3) +/* 801B4F6C 001B1ECC 54 03 CF FE */ rlwinm r3, r0, 0x19, 0x1f, 0x1f +/* 801B4F70 001B1ED0 4E 80 00 20 */ blr + +.global sub_801b4f74 +sub_801b4f74: +/* 801B4F74 001B1ED4 38 A3 00 08 */ addi r5, r3, 8 +/* 801B4F78 001B1ED8 7C A6 2B 78 */ mr r6, r5 +/* 801B4F7C 001B1EDC 48 00 00 20 */ b lbl_801B4F9C +lbl_801B4F80: +/* 801B4F80 001B1EE0 C0 04 00 00 */ lfs f0, 0(r4) +/* 801B4F84 001B1EE4 D0 06 00 00 */ stfs f0, 0(r6) +/* 801B4F88 001B1EE8 C0 04 00 04 */ lfs f0, 4(r4) +/* 801B4F8C 001B1EEC D0 06 00 04 */ stfs f0, 4(r6) +/* 801B4F90 001B1EF0 C0 04 00 08 */ lfs f0, 8(r4) +/* 801B4F94 001B1EF4 D0 06 00 08 */ stfs f0, 8(r6) +/* 801B4F98 001B1EF8 38 C6 00 0C */ addi r6, r6, 0xc +lbl_801B4F9C: +/* 801B4F9C 001B1EFC 80 03 00 04 */ lwz r0, 4(r3) +/* 801B4FA0 001B1F00 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801B4FA4 001B1F04 7C 05 02 14 */ add r0, r5, r0 +/* 801B4FA8 001B1F08 7C 06 00 40 */ cmplw r6, r0 +/* 801B4FAC 001B1F0C 40 82 FF D4 */ bne lbl_801B4F80 +/* 801B4FB0 001B1F10 88 03 00 A0 */ lbz r0, 0xa0(r3) +/* 801B4FB4 001B1F14 38 80 00 00 */ li r4, 0 +/* 801B4FB8 001B1F18 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 801B4FBC 001B1F1C 98 03 00 A0 */ stb r0, 0xa0(r3) +/* 801B4FC0 001B1F20 4E 80 00 20 */ blr + +.global ModifyParticles__10CFlameWarpFiiPiP9CVector3fP9CVector3fP9CVector3fP6CColorPfPf +ModifyParticles__10CFlameWarpFiiPiP9CVector3fP9CVector3fP9CVector3fP6CColorPfPf: +/* 801B4FC4 001B1F24 94 21 FE 50 */ stwu r1, -0x1b0(r1) +/* 801B4FC8 001B1F28 7C 08 02 A6 */ mflr r0 +/* 801B4FCC 001B1F2C 90 01 01 B4 */ stw r0, 0x1b4(r1) +/* 801B4FD0 001B1F30 DB E1 01 A0 */ stfd f31, 0x1a0(r1) +/* 801B4FD4 001B1F34 F3 E1 01 A8 */ psq_st f31, 424(r1), 0, qr0 +/* 801B4FD8 001B1F38 DB C1 01 90 */ stfd f30, 0x190(r1) +/* 801B4FDC 001B1F3C F3 C1 01 98 */ psq_st f30, 408(r1), 0, qr0 +/* 801B4FE0 001B1F40 DB A1 01 80 */ stfd f29, 0x180(r1) +/* 801B4FE4 001B1F44 F3 A1 01 88 */ psq_st f29, 392(r1), 0, qr0 +/* 801B4FE8 001B1F48 DB 81 01 70 */ stfd f28, 0x170(r1) +/* 801B4FEC 001B1F4C F3 81 01 78 */ psq_st f28, 376(r1), 0, qr0 +/* 801B4FF0 001B1F50 DB 61 01 60 */ stfd f27, 0x160(r1) +/* 801B4FF4 001B1F54 F3 61 01 68 */ psq_st f27, 360(r1), 0, qr0 +/* 801B4FF8 001B1F58 DB 41 01 50 */ stfd f26, 0x150(r1) +/* 801B4FFC 001B1F5C F3 41 01 58 */ psq_st f26, 344(r1), 0, qr0 +/* 801B5000 001B1F60 BE 41 01 18 */ stmw r18, 0x118(r1) +/* 801B5004 001B1F64 7C 7E 1B 78 */ mr r30, r3 +/* 801B5008 001B1F68 83 21 01 B8 */ lwz r25, 0x1b8(r1) +/* 801B500C 001B1F6C 80 03 00 9C */ lwz r0, 0x9c(r3) +/* 801B5010 001B1F70 7C 94 23 78 */ mr r20, r4 +/* 801B5014 001B1F74 7C BF 2B 78 */ mr r31, r5 +/* 801B5018 001B1F78 7C F5 3B 78 */ mr r21, r7 +/* 801B501C 001B1F7C 28 00 00 00 */ cmplwi r0, 0 +/* 801B5020 001B1F80 7D 16 43 78 */ mr r22, r8 +/* 801B5024 001B1F84 7D 37 4B 78 */ mr r23, r9 +/* 801B5028 001B1F88 7D 58 53 78 */ mr r24, r10 +/* 801B502C 001B1F8C 41 82 05 EC */ beq lbl_801B5618 +/* 801B5030 001B1F90 2C 14 00 09 */ cmpwi r20, 9 +/* 801B5034 001B1F94 40 80 00 08 */ bge lbl_801B503C +/* 801B5038 001B1F98 48 00 05 E0 */ b lbl_801B5618 +lbl_801B503C: +/* 801B503C 001B1F9C 38 00 00 00 */ li r0, 0 +/* 801B5040 001B1FA0 38 61 00 88 */ addi r3, r1, 0x88 +/* 801B5044 001B1FA4 90 01 00 8C */ stw r0, 0x8c(r1) +/* 801B5048 001B1FA8 90 01 00 90 */ stw r0, 0x90(r1) +/* 801B504C 001B1FAC 90 01 00 94 */ stw r0, 0x94(r1) +/* 801B5050 001B1FB0 48 00 09 7D */ bl sub_801b59cc +/* 801B5054 001B1FB4 C0 22 A9 4C */ lfs f1, lbl_805AC66C@sda21(r2) +/* 801B5058 001B1FB8 3B 60 00 00 */ li r27, 0 +/* 801B505C 001B1FBC C0 02 A9 50 */ lfs f0, lbl_805AC670@sda21(r2) +/* 801B5060 001B1FC0 3B A0 00 00 */ li r29, 0 +/* 801B5064 001B1FC4 D0 3E 00 90 */ stfs f1, 0x90(r30) +/* 801B5068 001B1FC8 C3 A2 A9 48 */ lfs f29, lbl_805AC668@sda21(r2) +/* 801B506C 001B1FCC D0 1E 00 94 */ stfs f0, 0x94(r30) +/* 801B5070 001B1FD0 C3 C2 A9 54 */ lfs f30, lbl_805AC674@sda21(r2) +/* 801B5074 001B1FD4 C3 E2 A9 58 */ lfs f31, lbl_805AC678@sda21(r2) +/* 801B5078 001B1FD8 48 00 03 DC */ b lbl_801B5454 +lbl_801B507C: +/* 801B507C 001B1FDC 38 1D 00 03 */ addi r0, r29, 3 +/* 801B5080 001B1FE0 7F 96 EA 14 */ add r28, r22, r29 +/* 801B5084 001B1FE4 10 18 05 0C */ psq_lx f0, r24, r0, 1, qr2 +/* 801B5088 001B1FE8 EC 1F 00 32 */ fmuls f0, f31, f0 +/* 801B508C 001B1FEC EF 9E 00 28 */ fsubs f28, f30, f0 +/* 801B5090 001B1FF0 FC 1C E8 40 */ fcmpo cr0, f28, f29 +/* 801B5094 001B1FF4 40 81 00 6C */ ble lbl_801B5100 +/* 801B5098 001B1FF8 C0 3C 00 04 */ lfs f1, 4(r28) +/* 801B509C 001B1FFC C0 1E 00 78 */ lfs f0, 0x78(r30) +/* 801B50A0 001B2000 C0 7C 00 00 */ lfs f3, 0(r28) +/* 801B50A4 001B2004 EC 21 00 28 */ fsubs f1, f1, f0 +/* 801B50A8 001B2008 C0 1E 00 74 */ lfs f0, 0x74(r30) +/* 801B50AC 001B200C C0 5C 00 08 */ lfs f2, 8(r28) +/* 801B50B0 001B2010 EC 63 00 28 */ fsubs f3, f3, f0 +/* 801B50B4 001B2014 C0 1E 00 7C */ lfs f0, 0x7c(r30) +/* 801B50B8 001B2018 EC 21 00 72 */ fmuls f1, f1, f1 +/* 801B50BC 001B201C EC 42 00 28 */ fsubs f2, f2, f0 +/* 801B50C0 001B2020 C0 1E 00 8C */ lfs f0, 0x8c(r30) +/* 801B50C4 001B2024 EC 23 08 FA */ fmadds f1, f3, f3, f1 +/* 801B50C8 001B2028 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 801B50CC 001B202C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B50D0 001B2030 40 81 00 30 */ ble lbl_801B5100 +/* 801B50D4 001B2034 C0 1E 00 98 */ lfs f0, 0x98(r30) +/* 801B50D8 001B2038 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B50DC 001B203C 40 80 00 24 */ bge lbl_801B5100 +/* 801B50E0 001B2040 D0 3E 00 8C */ stfs f1, 0x8c(r30) +/* 801B50E4 001B2044 FF A0 E0 90 */ fmr f29, f28 +/* 801B50E8 001B2048 C0 1C 00 00 */ lfs f0, 0(r28) +/* 801B50EC 001B204C D0 1E 00 80 */ stfs f0, 0x80(r30) +/* 801B50F0 001B2050 C0 1C 00 04 */ lfs f0, 4(r28) +/* 801B50F4 001B2054 D0 1E 00 84 */ stfs f0, 0x84(r30) +/* 801B50F8 001B2058 C0 1C 00 08 */ lfs f0, 8(r28) +/* 801B50FC 001B205C D0 1E 00 88 */ stfs f0, 0x88(r30) +lbl_801B5100: +/* 801B5100 001B2060 7C 39 EC 2E */ lfsx f1, r25, r29 +/* 801B5104 001B2064 C0 1E 00 90 */ lfs f0, 0x90(r30) +/* 801B5108 001B2068 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B510C 001B206C 40 80 00 08 */ bge lbl_801B5114 +/* 801B5110 001B2070 D0 3E 00 90 */ stfs f1, 0x90(r30) +lbl_801B5114: +/* 801B5114 001B2074 7C 39 EC 2E */ lfsx f1, r25, r29 +/* 801B5118 001B2078 C0 1E 00 94 */ lfs f0, 0x94(r30) +/* 801B511C 001B207C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B5120 001B2080 40 81 00 08 */ ble lbl_801B5128 +/* 801B5124 001B2084 D0 3E 00 94 */ stfs f1, 0x94(r30) +lbl_801B5128: +/* 801B5128 001B2088 80 01 00 8C */ lwz r0, 0x8c(r1) +/* 801B512C 001B208C 57 7A 06 3E */ clrlwi r26, r27, 0x18 +/* 801B5130 001B2090 80 A1 00 90 */ lwz r5, 0x90(r1) +/* 801B5134 001B2094 7C 00 28 00 */ cmpw r0, r5 +/* 801B5138 001B2098 41 80 00 1C */ blt lbl_801B5154 +/* 801B513C 001B209C 2C 05 00 00 */ cmpwi r5, 0 +/* 801B5140 001B20A0 38 61 00 88 */ addi r3, r1, 0x88 +/* 801B5144 001B20A4 38 80 00 04 */ li r4, 4 +/* 801B5148 001B20A8 41 82 00 08 */ beq lbl_801B5150 +/* 801B514C 001B20AC 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801B5150: +/* 801B5150 001B20B0 48 00 08 7D */ bl sub_801b59cc +lbl_801B5154: +/* 801B5154 001B20B4 80 01 00 8C */ lwz r0, 0x8c(r1) +/* 801B5158 001B20B8 80 61 00 94 */ lwz r3, 0x94(r1) +/* 801B515C 001B20BC 54 00 18 38 */ slwi r0, r0, 3 +/* 801B5160 001B20C0 7C 63 02 15 */ add. r3, r3, r0 +/* 801B5164 001B20C4 41 82 00 0C */ beq lbl_801B5170 +/* 801B5168 001B20C8 D3 83 00 00 */ stfs f28, 0(r3) +/* 801B516C 001B20CC 9B 43 00 04 */ stb r26, 4(r3) +lbl_801B5170: +/* 801B5170 001B20D0 80 61 00 8C */ lwz r3, 0x8c(r1) +/* 801B5174 001B20D4 38 03 00 01 */ addi r0, r3, 1 +/* 801B5178 001B20D8 90 01 00 8C */ stw r0, 0x8c(r1) +/* 801B517C 001B20DC 88 1E 00 A0 */ lbz r0, 0xa0(r30) +/* 801B5180 001B20E0 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801B5184 001B20E4 41 82 02 C8 */ beq lbl_801B544C +/* 801B5188 001B20E8 7E 55 EA 14 */ add r18, r21, r29 +/* 801B518C 001B20EC C0 7C 00 04 */ lfs f3, 4(r28) +/* 801B5190 001B20F0 C0 52 00 04 */ lfs f2, 4(r18) +/* 801B5194 001B20F4 7F 57 EA 14 */ add r26, r23, r29 +/* 801B5198 001B20F8 C0 3C 00 00 */ lfs f1, 0(r28) +/* 801B519C 001B20FC C0 12 00 00 */ lfs f0, 0(r18) +/* 801B51A0 001B2100 EC A3 10 28 */ fsubs f5, f3, f2 +/* 801B51A4 001B2104 C0 9C 00 08 */ lfs f4, 8(r28) +/* 801B51A8 001B2108 C0 52 00 08 */ lfs f2, 8(r18) +/* 801B51AC 001B210C EC 61 00 28 */ fsubs f3, f1, f0 +/* 801B51B0 001B2110 EC 25 01 72 */ fmuls f1, f5, f5 +/* 801B51B4 001B2114 C0 02 A9 5C */ lfs f0, lbl_805AC67C@sda21(r2) +/* 801B51B8 001B2118 EC 84 10 28 */ fsubs f4, f4, f2 +/* 801B51BC 001B211C D0 A1 00 80 */ stfs f5, 0x80(r1) +/* 801B51C0 001B2120 EC 43 00 F2 */ fmuls f2, f3, f3 +/* 801B51C4 001B2124 D0 61 00 7C */ stfs f3, 0x7c(r1) +/* 801B51C8 001B2128 EC 64 01 32 */ fmuls f3, f4, f4 +/* 801B51CC 001B212C EC 22 08 2A */ fadds f1, f2, f1 +/* 801B51D0 001B2130 D0 81 00 84 */ stfs f4, 0x84(r1) +/* 801B51D4 001B2134 EC 23 08 2A */ fadds f1, f3, f1 +/* 801B51D8 001B2138 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B51DC 001B213C 41 80 02 70 */ blt lbl_801B544C +/* 801B51E0 001B2140 38 61 00 4C */ addi r3, r1, 0x4c +/* 801B51E4 001B2144 38 81 00 7C */ addi r4, r1, 0x7c +/* 801B51E8 001B2148 48 15 F6 69 */ bl AsNormalized__9CVector3fCFv +/* 801B51EC 001B214C C0 A1 00 4C */ lfs f5, 0x4c(r1) +/* 801B51F0 001B2150 38 61 00 40 */ addi r3, r1, 0x40 +/* 801B51F4 001B2154 C0 61 00 50 */ lfs f3, 0x50(r1) +/* 801B51F8 001B2158 C0 02 A9 60 */ lfs f0, lbl_805AC680@sda21(r2) +/* 801B51FC 001B215C C0 21 00 54 */ lfs f1, 0x54(r1) +/* 801B5200 001B2160 D0 A1 00 70 */ stfs f5, 0x70(r1) +/* 801B5204 001B2164 EC 80 00 F2 */ fmuls f4, f0, f3 +/* 801B5208 001B2168 EC 40 00 72 */ fmuls f2, f0, f1 +/* 801B520C 001B216C D0 61 00 74 */ stfs f3, 0x74(r1) +/* 801B5210 001B2170 EC 00 01 72 */ fmuls f0, f0, f5 +/* 801B5214 001B2174 D0 21 00 78 */ stfs f1, 0x78(r1) +/* 801B5218 001B2178 C0 B2 00 04 */ lfs f5, 4(r18) +/* 801B521C 001B217C C0 72 00 08 */ lfs f3, 8(r18) +/* 801B5220 001B2180 C0 32 00 00 */ lfs f1, 0(r18) +/* 801B5224 001B2184 EC A5 20 28 */ fsubs f5, f5, f4 +/* 801B5228 001B2188 EC 83 10 28 */ fsubs f4, f3, f2 +/* 801B522C 001B218C EC 61 00 28 */ fsubs f3, f1, f0 +/* 801B5230 001B2190 D0 A1 00 68 */ stfs f5, 0x68(r1) +/* 801B5234 001B2194 D0 61 00 64 */ stfs f3, 0x64(r1) +/* 801B5238 001B2198 D0 81 00 6C */ stfs f4, 0x6c(r1) +/* 801B523C 001B219C C0 5C 00 04 */ lfs f2, 4(r28) +/* 801B5240 001B21A0 C0 3C 00 08 */ lfs f1, 8(r28) +/* 801B5244 001B21A4 C0 1C 00 00 */ lfs f0, 0(r28) +/* 801B5248 001B21A8 EC 42 28 28 */ fsubs f2, f2, f5 +/* 801B524C 001B21AC EC 21 20 28 */ fsubs f1, f1, f4 +/* 801B5250 001B21B0 EC 00 18 28 */ fsubs f0, f0, f3 +/* 801B5254 001B21B4 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 801B5258 001B21B8 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 801B525C 001B21BC D0 21 00 48 */ stfs f1, 0x48(r1) +/* 801B5260 001B21C0 48 15 F6 59 */ bl Magnitude__9CVector3fCFv +/* 801B5264 001B21C4 FF 40 08 90 */ fmr f26, f1 +/* 801B5268 001B21C8 80 AD 90 D4 */ lwz r5, lbl_805A7C94@sda21(r13) +/* 801B526C 001B21CC 38 60 00 00 */ li r3, 0 +/* 801B5270 001B21D0 38 80 00 01 */ li r4, 1 +/* 801B5274 001B21D4 48 1D 4C 81 */ bl __shl2i +/* 801B5278 001B21D8 80 AD 90 D0 */ lwz r5, lbl_805A7C90@sda21(r13) +/* 801B527C 001B21DC 7C 92 23 78 */ mr r18, r4 +/* 801B5280 001B21E0 7C 73 1B 78 */ mr r19, r3 +/* 801B5284 001B21E4 38 60 00 00 */ li r3, 0 +/* 801B5288 001B21E8 38 80 00 01 */ li r4, 1 +/* 801B528C 001B21EC 48 1D 4C 69 */ bl __shl2i +/* 801B5290 001B21F0 38 00 00 03 */ li r0, 3 +/* 801B5294 001B21F4 90 61 00 98 */ stw r3, 0x98(r1) +/* 801B5298 001B21F8 FC 20 D0 90 */ fmr f1, f26 +/* 801B529C 001B21FC 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 801B52A0 001B2200 90 81 00 9C */ stw r4, 0x9c(r1) +/* 801B52A4 001B2204 38 A1 00 64 */ addi r5, r1, 0x64 +/* 801B52A8 001B2208 38 C1 00 70 */ addi r6, r1, 0x70 +/* 801B52AC 001B220C 38 E1 00 98 */ addi r7, r1, 0x98 +/* 801B52B0 001B2210 92 41 00 A4 */ stw r18, 0xa4(r1) +/* 801B52B4 001B2214 92 61 00 A0 */ stw r19, 0xa0(r1) +/* 801B52B8 001B2218 90 01 00 A8 */ stw r0, 0xa8(r1) +/* 801B52BC 001B221C 80 9E 00 9C */ lwz r4, 0x9c(r30) +/* 801B52C0 001B2220 4B E9 7C D9 */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter +/* 801B52C4 001B2224 88 81 00 D0 */ lbz r4, 0xd0(r1) +/* 801B52C8 001B2228 C0 E1 00 B0 */ lfs f7, 0xb0(r1) +/* 801B52CC 001B222C C0 C1 00 B4 */ lfs f6, 0xb4(r1) +/* 801B52D0 001B2230 28 04 00 00 */ cmplwi r4, 0 +/* 801B52D4 001B2234 C0 A1 00 B8 */ lfs f5, 0xb8(r1) +/* 801B52D8 001B2238 C0 81 00 BC */ lfs f4, 0xbc(r1) +/* 801B52DC 001B223C C0 61 00 C0 */ lfs f3, 0xc0(r1) +/* 801B52E0 001B2240 C0 41 00 C4 */ lfs f2, 0xc4(r1) +/* 801B52E4 001B2244 C0 21 00 C8 */ lfs f1, 0xc8(r1) +/* 801B52E8 001B2248 C0 01 00 CC */ lfs f0, 0xcc(r1) +/* 801B52EC 001B224C 80 01 00 D8 */ lwz r0, 0xd8(r1) +/* 801B52F0 001B2250 80 61 00 DC */ lwz r3, 0xdc(r1) +/* 801B52F4 001B2254 D0 E1 00 E0 */ stfs f7, 0xe0(r1) +/* 801B52F8 001B2258 D0 C1 00 E4 */ stfs f6, 0xe4(r1) +/* 801B52FC 001B225C D0 A1 00 E8 */ stfs f5, 0xe8(r1) +/* 801B5300 001B2260 D0 81 00 EC */ stfs f4, 0xec(r1) +/* 801B5304 001B2264 D0 61 00 F0 */ stfs f3, 0xf0(r1) +/* 801B5308 001B2268 D0 41 00 F4 */ stfs f2, 0xf4(r1) +/* 801B530C 001B226C D0 21 00 F8 */ stfs f1, 0xf8(r1) +/* 801B5310 001B2270 D0 01 00 FC */ stfs f0, 0xfc(r1) +/* 801B5314 001B2274 98 81 01 00 */ stb r4, 0x100(r1) +/* 801B5318 001B2278 90 61 01 0C */ stw r3, 0x10c(r1) +/* 801B531C 001B227C 90 01 01 08 */ stw r0, 0x108(r1) +/* 801B5320 001B2280 41 82 01 2C */ beq lbl_801B544C +/* 801B5324 001B2284 C0 9C 00 04 */ lfs f4, 4(r28) +/* 801B5328 001B2288 C0 BC 00 00 */ lfs f5, 0(r28) +/* 801B532C 001B228C EC 82 01 32 */ fmuls f4, f2, f4 +/* 801B5330 001B2290 C0 DC 00 08 */ lfs f6, 8(r28) +/* 801B5334 001B2294 C1 02 A9 48 */ lfs f8, lbl_805AC668@sda21(r2) +/* 801B5338 001B2298 EC 83 21 7A */ fmadds f4, f3, f5, f4 +/* 801B533C 001B229C EC 81 21 BA */ fmadds f4, f1, f6, f4 +/* 801B5340 001B22A0 EC 84 00 28 */ fsubs f4, f4, f0 +/* 801B5344 001B22A4 FC 04 40 40 */ fcmpo cr0, f4, f8 +/* 801B5348 001B22A8 41 81 01 04 */ bgt lbl_801B544C +/* 801B534C 001B22AC EC C4 00 F2 */ fmuls f6, f4, f3 +/* 801B5350 001B22B0 C0 FC 00 00 */ lfs f7, 0(r28) +/* 801B5354 001B22B4 EC A4 00 B2 */ fmuls f5, f4, f2 +/* 801B5358 001B22B8 EC 84 00 72 */ fmuls f4, f4, f1 +/* 801B535C 001B22BC EC C7 30 28 */ fsubs f6, f7, f6 +/* 801B5360 001B22C0 D0 DC 00 00 */ stfs f6, 0(r28) +/* 801B5364 001B22C4 C0 DC 00 04 */ lfs f6, 4(r28) +/* 801B5368 001B22C8 EC A6 28 28 */ fsubs f5, f6, f5 +/* 801B536C 001B22CC D0 BC 00 04 */ stfs f5, 4(r28) +/* 801B5370 001B22D0 C0 BC 00 08 */ lfs f5, 8(r28) +/* 801B5374 001B22D4 EC 85 20 28 */ fsubs f4, f5, f4 +/* 801B5378 001B22D8 D0 9C 00 08 */ stfs f4, 8(r28) +/* 801B537C 001B22DC C3 7A 00 04 */ lfs f27, 4(r26) +/* 801B5380 001B22E0 C3 9A 00 00 */ lfs f28, 0(r26) +/* 801B5384 001B22E4 EC A2 06 F2 */ fmuls f5, f2, f27 +/* 801B5388 001B22E8 C3 5A 00 08 */ lfs f26, 8(r26) +/* 801B538C 001B22EC EC 83 2F 3A */ fmadds f4, f3, f28, f5 +/* 801B5390 001B22F0 EC 81 26 BA */ fmadds f4, f1, f26, f4 +/* 801B5394 001B22F4 FC 04 40 40 */ fcmpo cr0, f4, f8 +/* 801B5398 001B22F8 40 80 00 B4 */ bge lbl_801B544C +/* 801B539C 001B22FC C1 7C 00 04 */ lfs f11, 4(r28) +/* 801B53A0 001B2300 EC DC 28 FA */ fmadds f6, f28, f3, f5 +/* 801B53A4 001B2304 C1 3C 00 00 */ lfs f9, 0(r28) +/* 801B53A8 001B2308 ED AB D8 28 */ fsubs f13, f11, f27 +/* 801B53AC 001B230C C1 5C 00 08 */ lfs f10, 8(r28) +/* 801B53B0 001B2310 ED 09 E0 28 */ fsubs f8, f9, f28 +/* 801B53B4 001B2314 C0 A2 A9 54 */ lfs f5, lbl_805AC674@sda21(r2) +/* 801B53B8 001B2318 ED 8A D0 28 */ fsubs f12, f10, f26 +/* 801B53BC 001B231C C0 82 A9 64 */ lfs f4, lbl_805AC684@sda21(r2) +/* 801B53C0 001B2320 EC ED 00 B2 */ fmuls f7, f13, f2 +/* 801B53C4 001B2324 D1 01 00 34 */ stfs f8, 0x34(r1) +/* 801B53C8 001B2328 EC 5A 30 7A */ fmadds f2, f26, f1, f6 +/* 801B53CC 001B232C D1 A1 00 38 */ stfs f13, 0x38(r1) +/* 801B53D0 001B2330 EC 68 38 FA */ fmadds f3, f8, f3, f7 +/* 801B53D4 001B2334 D1 81 00 3C */ stfs f12, 0x3c(r1) +/* 801B53D8 001B2338 EC 2C 18 7A */ fmadds f1, f12, f1, f3 +/* 801B53DC 001B233C EC 01 00 28 */ fsubs f0, f1, f0 +/* 801B53E0 001B2340 FC 00 00 50 */ fneg f0, f0 +/* 801B53E4 001B2344 EC 00 10 24 */ fdivs f0, f0, f2 +/* 801B53E8 001B2348 EC 20 28 28 */ fsubs f1, f0, f5 +/* 801B53EC 001B234C EC 01 07 32 */ fmuls f0, f1, f28 +/* 801B53F0 001B2350 EC 41 06 F2 */ fmuls f2, f1, f27 +/* 801B53F4 001B2354 EC 21 06 B2 */ fmuls f1, f1, f26 +/* 801B53F8 001B2358 EC 09 00 2A */ fadds f0, f9, f0 +/* 801B53FC 001B235C EC 4B 10 2A */ fadds f2, f11, f2 +/* 801B5400 001B2360 EC 2A 08 2A */ fadds f1, f10, f1 +/* 801B5404 001B2364 D0 1C 00 00 */ stfs f0, 0(r28) +/* 801B5408 001B2368 D0 5C 00 04 */ stfs f2, 4(r28) +/* 801B540C 001B236C D0 3C 00 08 */ stfs f1, 8(r28) +/* 801B5410 001B2370 C0 1A 00 00 */ lfs f0, 0(r26) +/* 801B5414 001B2374 C0 7A 00 04 */ lfs f3, 4(r26) +/* 801B5418 001B2378 EC 04 00 32 */ fmuls f0, f4, f0 +/* 801B541C 001B237C C0 3A 00 00 */ lfs f1, 0(r26) +/* 801B5420 001B2380 C0 5A 00 08 */ lfs f2, 8(r26) +/* 801B5424 001B2384 EC 64 00 F2 */ fmuls f3, f4, f3 +/* 801B5428 001B2388 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801B542C 001B238C EC 24 00 B2 */ fmuls f1, f4, f2 +/* 801B5430 001B2390 D0 1A 00 00 */ stfs f0, 0(r26) +/* 801B5434 001B2394 C0 1A 00 04 */ lfs f0, 4(r26) +/* 801B5438 001B2398 EC 00 18 28 */ fsubs f0, f0, f3 +/* 801B543C 001B239C D0 1A 00 04 */ stfs f0, 4(r26) +/* 801B5440 001B23A0 C0 1A 00 08 */ lfs f0, 8(r26) +/* 801B5444 001B23A4 EC 00 08 28 */ fsubs f0, f0, f1 +/* 801B5448 001B23A8 D0 1A 00 08 */ stfs f0, 8(r26) +lbl_801B544C: +/* 801B544C 001B23AC 7F BD FA 14 */ add r29, r29, r31 +/* 801B5450 001B23B0 3B 7B 00 01 */ addi r27, r27, 1 +lbl_801B5454: +/* 801B5454 001B23B4 7C 1B A0 00 */ cmpw r27, r20 +/* 801B5458 001B23B8 41 80 FC 24 */ blt lbl_801B507C +/* 801B545C 001B23BC 80 01 00 8C */ lwz r0, 0x8c(r1) +/* 801B5460 001B23C0 38 61 00 24 */ addi r3, r1, 0x24 +/* 801B5464 001B23C4 80 A1 00 94 */ lwz r5, 0x94(r1) +/* 801B5468 001B23C8 38 81 00 1C */ addi r4, r1, 0x1c +/* 801B546C 001B23CC 54 00 18 38 */ slwi r0, r0, 3 +/* 801B5470 001B23D0 7C 05 02 14 */ add r0, r5, r0 +/* 801B5474 001B23D4 90 A1 00 20 */ stw r5, 0x20(r1) +/* 801B5478 001B23D8 90 01 00 18 */ stw r0, 0x18(r1) +/* 801B547C 001B23DC 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801B5480 001B23E0 90 A1 00 24 */ stw r5, 0x24(r1) +/* 801B5484 001B23E4 48 00 03 C1 */ bl sub_801b5844 +/* 801B5488 001B23E8 3C 60 38 E4 */ lis r3, 0x38E38E39@ha +/* 801B548C 001B23EC 3B 7E 00 08 */ addi r27, r30, 8 +/* 801B5490 001B23F0 38 03 8E 39 */ addi r0, r3, 0x38E38E39@l +/* 801B5494 001B23F4 3B 40 00 00 */ li r26, 0 +/* 801B5498 001B23F8 7C 00 A0 96 */ mulhw r0, r0, r20 +/* 801B549C 001B23FC 7F 7C DB 78 */ mr r28, r27 +/* 801B54A0 001B2400 3B A0 00 00 */ li r29, 0 +/* 801B54A4 001B2404 7C 00 0E 70 */ srawi r0, r0, 1 +/* 801B54A8 001B2408 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801B54AC 001B240C 7C 00 1A 14 */ add r0, r0, r3 +/* 801B54B0 001B2410 54 12 18 38 */ slwi r18, r0, 3 +lbl_801B54B4: +/* 801B54B4 001B2414 80 61 00 94 */ lwz r3, 0x94(r1) +/* 801B54B8 001B2418 38 1D 00 04 */ addi r0, r29, 4 +/* 801B54BC 001B241C 2C 1A 00 00 */ cmpwi r26, 0 +/* 801B54C0 001B2420 7C 03 00 AE */ lbzx r0, r3, r0 +/* 801B54C4 001B2424 7C 00 F9 D6 */ mullw r0, r0, r31 +/* 801B54C8 001B2428 7C 76 02 14 */ add r3, r22, r0 +/* 801B54CC 001B242C C0 03 00 00 */ lfs f0, 0(r3) +/* 801B54D0 001B2430 D0 1C 00 00 */ stfs f0, 0(r28) +/* 801B54D4 001B2434 C0 03 00 04 */ lfs f0, 4(r3) +/* 801B54D8 001B2438 D0 1C 00 04 */ stfs f0, 4(r28) +/* 801B54DC 001B243C C0 03 00 08 */ lfs f0, 8(r3) +/* 801B54E0 001B2440 D0 1C 00 08 */ stfs f0, 8(r28) +/* 801B54E4 001B2444 40 81 00 A0 */ ble lbl_801B5584 +/* 801B54E8 001B2448 38 1A FF FF */ addi r0, r26, -1 +/* 801B54EC 001B244C C0 BC 00 04 */ lfs f5, 4(r28) +/* 801B54F0 001B2450 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801B54F4 001B2454 C0 7C 00 08 */ lfs f3, 8(r28) +/* 801B54F8 001B2458 C0 3C 00 00 */ lfs f1, 0(r28) +/* 801B54FC 001B245C 38 61 00 58 */ addi r3, r1, 0x58 +/* 801B5500 001B2460 7C 9B 02 14 */ add r4, r27, r0 +/* 801B5504 001B2464 C0 84 00 04 */ lfs f4, 4(r4) +/* 801B5508 001B2468 C0 44 00 08 */ lfs f2, 8(r4) +/* 801B550C 001B246C C0 04 00 00 */ lfs f0, 0(r4) +/* 801B5510 001B2470 EC 85 20 28 */ fsubs f4, f5, f4 +/* 801B5514 001B2474 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801B5518 001B2478 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801B551C 001B247C D0 81 00 5C */ stfs f4, 0x5c(r1) +/* 801B5520 001B2480 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 801B5524 001B2484 D0 41 00 60 */ stfs f2, 0x60(r1) +/* 801B5528 001B2488 48 15 F3 91 */ bl Magnitude__9CVector3fCFv +/* 801B552C 001B248C C0 02 A9 5C */ lfs f0, lbl_805AC67C@sda21(r2) +/* 801B5530 001B2490 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B5534 001B2494 40 80 00 50 */ bge lbl_801B5584 +/* 801B5538 001B2498 38 61 00 28 */ addi r3, r1, 0x28 +/* 801B553C 001B249C 38 81 00 58 */ addi r4, r1, 0x58 +/* 801B5540 001B24A0 48 15 F3 11 */ bl AsNormalized__9CVector3fCFv +/* 801B5544 001B24A4 C0 82 A9 5C */ lfs f4, lbl_805AC67C@sda21(r2) +/* 801B5548 001B24A8 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 801B554C 001B24AC C0 61 00 2C */ lfs f3, 0x2c(r1) +/* 801B5550 001B24B0 EC 04 00 32 */ fmuls f0, f4, f0 +/* 801B5554 001B24B4 C0 3C 00 00 */ lfs f1, 0(r28) +/* 801B5558 001B24B8 C0 41 00 30 */ lfs f2, 0x30(r1) +/* 801B555C 001B24BC EC 64 00 F2 */ fmuls f3, f4, f3 +/* 801B5560 001B24C0 EC 01 00 2A */ fadds f0, f1, f0 +/* 801B5564 001B24C4 EC 24 00 B2 */ fmuls f1, f4, f2 +/* 801B5568 001B24C8 D0 1C 00 00 */ stfs f0, 0(r28) +/* 801B556C 001B24CC C0 1C 00 04 */ lfs f0, 4(r28) +/* 801B5570 001B24D0 EC 00 18 2A */ fadds f0, f0, f3 +/* 801B5574 001B24D4 D0 1C 00 04 */ stfs f0, 4(r28) +/* 801B5578 001B24D8 C0 1C 00 08 */ lfs f0, 8(r28) +/* 801B557C 001B24DC EC 00 08 2A */ fadds f0, f0, f1 +/* 801B5580 001B24E0 D0 1C 00 08 */ stfs f0, 8(r28) +lbl_801B5584: +/* 801B5584 001B24E4 3B 5A 00 01 */ addi r26, r26, 1 +/* 801B5588 001B24E8 7F BD 92 14 */ add r29, r29, r18 +/* 801B558C 001B24EC 2C 1A 00 09 */ cmpwi r26, 9 +/* 801B5590 001B24F0 3B 9C 00 0C */ addi r28, r28, 0xc +/* 801B5594 001B24F4 41 80 FF 20 */ blt lbl_801B54B4 +/* 801B5598 001B24F8 C0 1E 00 74 */ lfs f0, 0x74(r30) +/* 801B559C 001B24FC 38 60 00 01 */ li r3, 1 +/* 801B55A0 001B2500 D0 1B 00 00 */ stfs f0, 0(r27) +/* 801B55A4 001B2504 C0 1E 00 78 */ lfs f0, 0x78(r30) +/* 801B55A8 001B2508 D0 1B 00 04 */ stfs f0, 4(r27) +/* 801B55AC 001B250C C0 1E 00 7C */ lfs f0, 0x7c(r30) +/* 801B55B0 001B2510 D0 1B 00 08 */ stfs f0, 8(r27) +/* 801B55B4 001B2514 C0 1B 00 60 */ lfs f0, 0x60(r27) +/* 801B55B8 001B2518 D0 1E 00 80 */ stfs f0, 0x80(r30) +/* 801B55BC 001B251C C0 1B 00 64 */ lfs f0, 0x64(r27) +/* 801B55C0 001B2520 D0 1E 00 84 */ stfs f0, 0x84(r30) +/* 801B55C4 001B2524 C0 1B 00 68 */ lfs f0, 0x68(r27) +/* 801B55C8 001B2528 D0 1E 00 88 */ stfs f0, 0x88(r30) +/* 801B55CC 001B252C 88 1E 00 A0 */ lbz r0, 0xa0(r30) +/* 801B55D0 001B2530 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 801B55D4 001B2534 98 1E 00 A0 */ stb r0, 0xa0(r30) +/* 801B55D8 001B2538 80 01 00 8C */ lwz r0, 0x8c(r1) +/* 801B55DC 001B253C 80 61 00 94 */ lwz r3, 0x94(r1) +/* 801B55E0 001B2540 54 00 18 38 */ slwi r0, r0, 3 +/* 801B55E4 001B2544 7C 03 02 14 */ add r0, r3, r0 +/* 801B55E8 001B2548 90 61 00 0C */ stw r3, 0xc(r1) +/* 801B55EC 001B254C 7C 64 1B 78 */ mr r4, r3 +/* 801B55F0 001B2550 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B55F4 001B2554 90 01 00 10 */ stw r0, 0x10(r1) +/* 801B55F8 001B2558 90 61 00 08 */ stw r3, 8(r1) +/* 801B55FC 001B255C 48 00 00 08 */ b lbl_801B5604 +lbl_801B5600: +/* 801B5600 001B2560 38 84 00 08 */ addi r4, r4, 8 +lbl_801B5604: +/* 801B5604 001B2564 7C 04 00 40 */ cmplw r4, r0 +/* 801B5608 001B2568 40 82 FF F8 */ bne lbl_801B5600 +/* 801B560C 001B256C 28 03 00 00 */ cmplwi r3, 0 +/* 801B5610 001B2570 41 82 00 08 */ beq lbl_801B5618 +/* 801B5614 001B2574 48 16 03 1D */ bl Free__7CMemoryFPCv +lbl_801B5618: +/* 801B5618 001B2578 E3 E1 01 A8 */ psq_l f31, 424(r1), 0, qr0 +/* 801B561C 001B257C CB E1 01 A0 */ lfd f31, 0x1a0(r1) +/* 801B5620 001B2580 E3 C1 01 98 */ psq_l f30, 408(r1), 0, qr0 +/* 801B5624 001B2584 CB C1 01 90 */ lfd f30, 0x190(r1) +/* 801B5628 001B2588 E3 A1 01 88 */ psq_l f29, 392(r1), 0, qr0 +/* 801B562C 001B258C CB A1 01 80 */ lfd f29, 0x180(r1) +/* 801B5630 001B2590 E3 81 01 78 */ psq_l f28, 376(r1), 0, qr0 +/* 801B5634 001B2594 CB 81 01 70 */ lfd f28, 0x170(r1) +/* 801B5638 001B2598 E3 61 01 68 */ psq_l f27, 360(r1), 0, qr0 +/* 801B563C 001B259C CB 61 01 60 */ lfd f27, 0x160(r1) +/* 801B5640 001B25A0 E3 41 01 58 */ psq_l f26, 344(r1), 0, qr0 +/* 801B5644 001B25A4 CB 41 01 50 */ lfd f26, 0x150(r1) +/* 801B5648 001B25A8 BA 41 01 18 */ lmw r18, 0x118(r1) +/* 801B564C 001B25AC 80 01 01 B4 */ lwz r0, 0x1b4(r1) +/* 801B5650 001B25B0 7C 08 03 A6 */ mtlr r0 +/* 801B5654 001B25B4 38 21 01 B0 */ addi r1, r1, 0x1b0 +/* 801B5658 001B25B8 4E 80 00 20 */ blr + +.global UpdateWarp__10CFlameWarpFv +UpdateWarp__10CFlameWarpFv: +/* 801B565C 001B25BC 88 03 00 A0 */ lbz r0, 0xa0(r3) +/* 801B5660 001B25C0 54 03 CF FE */ rlwinm r3, r0, 0x19, 0x1f, 0x1f +/* 801B5664 001B25C4 4E 80 00 20 */ blr + +.global __dt__10CFlameWarpFv +__dt__10CFlameWarpFv: +/* 801B5668 001B25C8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B566C 001B25CC 7C 08 02 A6 */ mflr r0 +/* 801B5670 001B25D0 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B5674 001B25D4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801B5678 001B25D8 7C 9F 23 78 */ mr r31, r4 +/* 801B567C 001B25DC 93 C1 00 08 */ stw r30, 8(r1) +/* 801B5680 001B25E0 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801B5684 001B25E4 41 82 00 88 */ beq lbl_801B570C +/* 801B5688 001B25E8 3C 60 80 3E */ lis r3, lbl_803E51C8@ha +/* 801B568C 001B25EC 34 1E 00 04 */ addic. r0, r30, 4 +/* 801B5690 001B25F0 38 03 51 C8 */ addi r0, r3, lbl_803E51C8@l +/* 801B5694 001B25F4 90 1E 00 00 */ stw r0, 0(r30) +/* 801B5698 001B25F8 41 82 00 58 */ beq lbl_801B56F0 +/* 801B569C 001B25FC 80 BE 00 04 */ lwz r5, 4(r30) +/* 801B56A0 001B2600 38 60 00 00 */ li r3, 0 +/* 801B56A4 001B2604 2C 05 00 00 */ cmpwi r5, 0 +/* 801B56A8 001B2608 40 81 00 40 */ ble lbl_801B56E8 +/* 801B56AC 001B260C 2C 05 00 08 */ cmpwi r5, 8 +/* 801B56B0 001B2610 38 85 FF F8 */ addi r4, r5, -8 +/* 801B56B4 001B2614 40 81 00 20 */ ble lbl_801B56D4 +/* 801B56B8 001B2618 38 04 00 07 */ addi r0, r4, 7 +/* 801B56BC 001B261C 54 00 E8 FE */ srwi r0, r0, 3 +/* 801B56C0 001B2620 7C 09 03 A6 */ mtctr r0 +/* 801B56C4 001B2624 2C 04 00 00 */ cmpwi r4, 0 +/* 801B56C8 001B2628 40 81 00 0C */ ble lbl_801B56D4 +lbl_801B56CC: +/* 801B56CC 001B262C 38 63 00 08 */ addi r3, r3, 8 +/* 801B56D0 001B2630 42 00 FF FC */ bdnz lbl_801B56CC +lbl_801B56D4: +/* 801B56D4 001B2634 7C 03 28 50 */ subf r0, r3, r5 +/* 801B56D8 001B2638 7C 09 03 A6 */ mtctr r0 +/* 801B56DC 001B263C 7C 03 28 00 */ cmpw r3, r5 +/* 801B56E0 001B2640 40 80 00 08 */ bge lbl_801B56E8 +lbl_801B56E4: +/* 801B56E4 001B2644 42 00 00 00 */ bdnz lbl_801B56E4 +lbl_801B56E8: +/* 801B56E8 001B2648 38 00 00 00 */ li r0, 0 +/* 801B56EC 001B264C 90 1E 00 04 */ stw r0, 4(r30) +lbl_801B56F0: +/* 801B56F0 001B2650 7F C3 F3 78 */ mr r3, r30 +/* 801B56F4 001B2654 38 80 00 00 */ li r4, 0 +/* 801B56F8 001B2658 48 18 18 CD */ bl __dt__5CWarpFv +/* 801B56FC 001B265C 7F E0 07 35 */ extsh. r0, r31 +/* 801B5700 001B2660 40 81 00 0C */ ble lbl_801B570C +/* 801B5704 001B2664 7F C3 F3 78 */ mr r3, r30 +/* 801B5708 001B2668 48 16 02 29 */ bl Free__7CMemoryFPCv +lbl_801B570C: +/* 801B570C 001B266C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B5710 001B2670 7F C3 F3 78 */ mr r3, r30 +/* 801B5714 001B2674 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801B5718 001B2678 83 C1 00 08 */ lwz r30, 8(r1) +/* 801B571C 001B267C 7C 08 03 A6 */ mtlr r0 +/* 801B5720 001B2680 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B5724 001B2684 4E 80 00 20 */ blr + +.global __ct__10CFlameWarpFfRC9CVector3fb +__ct__10CFlameWarpFfRC9CVector3fb: +/* 801B5728 001B2688 3C C0 80 3F */ lis r6, lbl_803EE2F8@ha +/* 801B572C 001B268C 39 03 00 08 */ addi r8, r3, 8 +/* 801B5730 001B2690 38 06 E2 F8 */ addi r0, r6, lbl_803EE2F8@l +/* 801B5734 001B2694 3C C0 80 3E */ lis r6, lbl_803E51C8@ha +/* 801B5738 001B2698 90 03 00 00 */ stw r0, 0(r3) +/* 801B573C 001B269C 38 E6 51 C8 */ addi r7, r6, lbl_803E51C8@l +/* 801B5740 001B26A0 38 00 00 03 */ li r0, 3 +/* 801B5744 001B26A4 90 E3 00 00 */ stw r7, 0(r3) +/* 801B5748 001B26A8 38 C0 00 09 */ li r6, 9 +/* 801B574C 001B26AC 38 E0 00 00 */ li r7, 0 +/* 801B5750 001B26B0 90 C3 00 04 */ stw r6, 4(r3) +/* 801B5754 001B26B4 7C 09 03 A6 */ mtctr r0 +lbl_801B5758: +/* 801B5758 001B26B8 28 08 00 00 */ cmplwi r8, 0 +/* 801B575C 001B26BC 41 82 00 1C */ beq lbl_801B5778 +/* 801B5760 001B26C0 C0 04 00 00 */ lfs f0, 0(r4) +/* 801B5764 001B26C4 D0 08 00 00 */ stfs f0, 0(r8) +/* 801B5768 001B26C8 C0 04 00 04 */ lfs f0, 4(r4) +/* 801B576C 001B26CC D0 08 00 04 */ stfs f0, 4(r8) +/* 801B5770 001B26D0 C0 04 00 08 */ lfs f0, 8(r4) +/* 801B5774 001B26D4 D0 08 00 08 */ stfs f0, 8(r8) +lbl_801B5778: +/* 801B5778 001B26D8 35 08 00 0C */ addic. r8, r8, 0xc +/* 801B577C 001B26DC 41 82 00 1C */ beq lbl_801B5798 +/* 801B5780 001B26E0 C0 04 00 00 */ lfs f0, 0(r4) +/* 801B5784 001B26E4 D0 08 00 00 */ stfs f0, 0(r8) +/* 801B5788 001B26E8 C0 04 00 04 */ lfs f0, 4(r4) +/* 801B578C 001B26EC D0 08 00 04 */ stfs f0, 4(r8) +/* 801B5790 001B26F0 C0 04 00 08 */ lfs f0, 8(r4) +/* 801B5794 001B26F4 D0 08 00 08 */ stfs f0, 8(r8) +lbl_801B5798: +/* 801B5798 001B26F8 35 08 00 0C */ addic. r8, r8, 0xc +/* 801B579C 001B26FC 41 82 00 1C */ beq lbl_801B57B8 +/* 801B57A0 001B2700 C0 04 00 00 */ lfs f0, 0(r4) +/* 801B57A4 001B2704 D0 08 00 00 */ stfs f0, 0(r8) +/* 801B57A8 001B2708 C0 04 00 04 */ lfs f0, 4(r4) +/* 801B57AC 001B270C D0 08 00 04 */ stfs f0, 4(r8) +/* 801B57B0 001B2710 C0 04 00 08 */ lfs f0, 8(r4) +/* 801B57B4 001B2714 D0 08 00 08 */ stfs f0, 8(r8) +lbl_801B57B8: +/* 801B57B8 001B2718 38 E7 00 02 */ addi r7, r7, 2 +/* 801B57BC 001B271C 39 08 00 0C */ addi r8, r8, 0xc +/* 801B57C0 001B2720 42 00 FF 98 */ bdnz lbl_801B5758 +/* 801B57C4 001B2724 C0 44 00 00 */ lfs f2, 0(r4) +/* 801B57C8 001B2728 EC 01 00 72 */ fmuls f0, f1, f1 +/* 801B57CC 001B272C C0 62 A9 48 */ lfs f3, lbl_805AC668@sda21(r2) +/* 801B57D0 001B2730 38 C0 00 00 */ li r6, 0 +/* 801B57D4 001B2734 D0 43 00 74 */ stfs f2, 0x74(r3) +/* 801B57D8 001B2738 C0 42 A9 4C */ lfs f2, lbl_805AC66C@sda21(r2) +/* 801B57DC 001B273C C0 84 00 04 */ lfs f4, 4(r4) +/* 801B57E0 001B2740 C0 22 A9 50 */ lfs f1, lbl_805AC670@sda21(r2) +/* 801B57E4 001B2744 D0 83 00 78 */ stfs f4, 0x78(r3) +/* 801B57E8 001B2748 C0 84 00 08 */ lfs f4, 8(r4) +/* 801B57EC 001B274C D0 83 00 7C */ stfs f4, 0x7c(r3) +/* 801B57F0 001B2750 C0 84 00 00 */ lfs f4, 0(r4) +/* 801B57F4 001B2754 D0 83 00 80 */ stfs f4, 0x80(r3) +/* 801B57F8 001B2758 C0 84 00 04 */ lfs f4, 4(r4) +/* 801B57FC 001B275C D0 83 00 84 */ stfs f4, 0x84(r3) +/* 801B5800 001B2760 C0 84 00 08 */ lfs f4, 8(r4) +/* 801B5804 001B2764 D0 83 00 88 */ stfs f4, 0x88(r3) +/* 801B5808 001B2768 D0 63 00 8C */ stfs f3, 0x8c(r3) +/* 801B580C 001B276C D0 43 00 90 */ stfs f2, 0x90(r3) +/* 801B5810 001B2770 D0 23 00 94 */ stfs f1, 0x94(r3) +/* 801B5814 001B2774 D0 03 00 98 */ stfs f0, 0x98(r3) +/* 801B5818 001B2778 90 C3 00 9C */ stw r6, 0x9c(r3) +/* 801B581C 001B277C 88 03 00 A0 */ lbz r0, 0xa0(r3) +/* 801B5820 001B2780 50 C0 3E 30 */ rlwimi r0, r6, 7, 0x18, 0x18 +/* 801B5824 001B2784 98 03 00 A0 */ stb r0, 0xa0(r3) +/* 801B5828 001B2788 88 03 00 A0 */ lbz r0, 0xa0(r3) +/* 801B582C 001B278C 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 801B5830 001B2790 98 03 00 A0 */ stb r0, 0xa0(r3) +/* 801B5834 001B2794 88 03 00 A0 */ lbz r0, 0xa0(r3) +/* 801B5838 001B2798 50 C0 2E B4 */ rlwimi r0, r6, 5, 0x1a, 0x1a +/* 801B583C 001B279C 98 03 00 A0 */ stb r0, 0xa0(r3) +/* 801B5840 001B27A0 4E 80 00 20 */ blr + +.global sub_801b5844 +sub_801b5844: +/* 801B5844 001B27A4 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801B5848 001B27A8 7C 08 02 A6 */ mflr r0 +/* 801B584C 001B27AC 90 01 00 44 */ stw r0, 0x44(r1) +/* 801B5850 001B27B0 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801B5854 001B27B4 7C 9F 23 78 */ mr r31, r4 +/* 801B5858 001B27B8 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801B585C 001B27BC 7C 7E 1B 78 */ mr r30, r3 +/* 801B5860 001B27C0 93 A1 00 34 */ stw r29, 0x34(r1) +/* 801B5864 001B27C4 80 63 00 00 */ lwz r3, 0(r3) +/* 801B5868 001B27C8 80 A4 00 00 */ lwz r5, 0(r4) +/* 801B586C 001B27CC 7C 03 28 50 */ subf r0, r3, r5 +/* 801B5870 001B27D0 7C 00 1E 70 */ srawi r0, r0, 3 +/* 801B5874 001B27D4 7C 80 01 94 */ addze r4, r0 +/* 801B5878 001B27D8 2C 04 00 01 */ cmpwi r4, 1 +/* 801B587C 001B27DC 40 81 01 34 */ ble lbl_801B59B0 +/* 801B5880 001B27E0 2C 04 00 14 */ cmpwi r4, 0x14 +/* 801B5884 001B27E4 41 81 00 24 */ bgt lbl_801B58A8 +/* 801B5888 001B27E8 80 BF 00 00 */ lwz r5, 0(r31) +/* 801B588C 001B27EC 38 61 00 24 */ addi r3, r1, 0x24 +/* 801B5890 001B27F0 80 1E 00 00 */ lwz r0, 0(r30) +/* 801B5894 001B27F4 38 81 00 20 */ addi r4, r1, 0x20 +/* 801B5898 001B27F8 90 A1 00 20 */ stw r5, 0x20(r1) +/* 801B589C 001B27FC 90 01 00 24 */ stw r0, 0x24(r1) +/* 801B58A0 001B2800 48 00 02 99 */ bl sub_801b5b38 +/* 801B58A4 001B2804 48 00 01 0C */ b lbl_801B59B0 +lbl_801B58A8: +/* 801B58A8 001B2808 54 80 0F FE */ srwi r0, r4, 0x1f +/* 801B58AC 001B280C 38 A5 FF F8 */ addi r5, r5, -8 +/* 801B58B0 001B2810 7C 00 22 14 */ add r0, r0, r4 +/* 801B58B4 001B2814 90 A1 00 2C */ stw r5, 0x2c(r1) +/* 801B58B8 001B2818 7C 00 0E 70 */ srawi r0, r0, 1 +/* 801B58BC 001B281C 54 00 18 38 */ slwi r0, r0, 3 +/* 801B58C0 001B2820 7F A3 02 14 */ add r29, r3, r0 +/* 801B58C4 001B2824 7F A4 EB 78 */ mr r4, r29 +/* 801B58C8 001B2828 48 00 01 F9 */ bl sub_801b5ac0 +/* 801B58CC 001B282C 80 9E 00 00 */ lwz r4, 0(r30) +/* 801B58D0 001B2830 80 61 00 2C */ lwz r3, 0x2c(r1) +/* 801B58D4 001B2834 38 84 00 08 */ addi r4, r4, 8 +/* 801B58D8 001B2838 C0 3D 00 00 */ lfs f1, 0(r29) +/* 801B58DC 001B283C 38 03 FF F8 */ addi r0, r3, -8 +/* 801B58E0 001B2840 90 81 00 28 */ stw r4, 0x28(r1) +/* 801B58E4 001B2844 90 01 00 2C */ stw r0, 0x2c(r1) +/* 801B58E8 001B2848 48 00 00 10 */ b lbl_801B58F8 +lbl_801B58EC: +/* 801B58EC 001B284C 80 61 00 28 */ lwz r3, 0x28(r1) +/* 801B58F0 001B2850 38 03 00 08 */ addi r0, r3, 8 +/* 801B58F4 001B2854 90 01 00 28 */ stw r0, 0x28(r1) +lbl_801B58F8: +/* 801B58F8 001B2858 80 61 00 28 */ lwz r3, 0x28(r1) +/* 801B58FC 001B285C C0 03 00 00 */ lfs f0, 0(r3) +/* 801B5900 001B2860 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801B5904 001B2864 41 80 FF E8 */ blt lbl_801B58EC +/* 801B5908 001B2868 48 00 00 10 */ b lbl_801B5918 +lbl_801B590C: +/* 801B590C 001B286C 80 61 00 2C */ lwz r3, 0x2c(r1) +/* 801B5910 001B2870 38 03 FF F8 */ addi r0, r3, -8 +/* 801B5914 001B2874 90 01 00 2C */ stw r0, 0x2c(r1) +lbl_801B5918: +/* 801B5918 001B2878 80 61 00 2C */ lwz r3, 0x2c(r1) +/* 801B591C 001B287C C0 03 00 00 */ lfs f0, 0(r3) +/* 801B5920 001B2880 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B5924 001B2884 41 80 FF E8 */ blt lbl_801B590C +/* 801B5928 001B2888 80 01 00 28 */ lwz r0, 0x28(r1) +/* 801B592C 001B288C 7C 00 18 40 */ cmplw r0, r3 +/* 801B5930 001B2890 40 80 00 48 */ bge lbl_801B5978 +/* 801B5934 001B2894 80 A1 00 28 */ lwz r5, 0x28(r1) +/* 801B5938 001B2898 80 C1 00 2C */ lwz r6, 0x2c(r1) +/* 801B593C 001B289C C0 45 00 00 */ lfs f2, 0(r5) +/* 801B5940 001B28A0 38 65 00 08 */ addi r3, r5, 8 +/* 801B5944 001B28A4 88 E5 00 04 */ lbz r7, 4(r5) +/* 801B5948 001B28A8 38 06 FF F8 */ addi r0, r6, -8 +/* 801B594C 001B28AC C0 06 00 00 */ lfs f0, 0(r6) +/* 801B5950 001B28B0 90 C1 00 18 */ stw r6, 0x18(r1) +/* 801B5954 001B28B4 D0 05 00 00 */ stfs f0, 0(r5) +/* 801B5958 001B28B8 88 86 00 04 */ lbz r4, 4(r6) +/* 801B595C 001B28BC 90 A1 00 1C */ stw r5, 0x1c(r1) +/* 801B5960 001B28C0 98 85 00 04 */ stb r4, 4(r5) +/* 801B5964 001B28C4 D0 46 00 00 */ stfs f2, 0(r6) +/* 801B5968 001B28C8 98 E6 00 04 */ stb r7, 4(r6) +/* 801B596C 001B28CC 90 61 00 28 */ stw r3, 0x28(r1) +/* 801B5970 001B28D0 90 01 00 2C */ stw r0, 0x2c(r1) +/* 801B5974 001B28D4 4B FF FF 84 */ b lbl_801B58F8 +lbl_801B5978: +/* 801B5978 001B28D8 80 A1 00 28 */ lwz r5, 0x28(r1) +/* 801B597C 001B28DC 38 61 00 14 */ addi r3, r1, 0x14 +/* 801B5980 001B28E0 80 1E 00 00 */ lwz r0, 0(r30) +/* 801B5984 001B28E4 38 81 00 10 */ addi r4, r1, 0x10 +/* 801B5988 001B28E8 90 A1 00 10 */ stw r5, 0x10(r1) +/* 801B598C 001B28EC 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B5990 001B28F0 4B FF FE B5 */ bl sub_801b5844 +/* 801B5994 001B28F4 80 BF 00 00 */ lwz r5, 0(r31) +/* 801B5998 001B28F8 38 61 00 0C */ addi r3, r1, 0xc +/* 801B599C 001B28FC 80 01 00 28 */ lwz r0, 0x28(r1) +/* 801B59A0 001B2900 38 81 00 08 */ addi r4, r1, 8 +/* 801B59A4 001B2904 90 A1 00 08 */ stw r5, 8(r1) +/* 801B59A8 001B2908 90 01 00 0C */ stw r0, 0xc(r1) +/* 801B59AC 001B290C 4B FF FE 99 */ bl sub_801b5844 +lbl_801B59B0: +/* 801B59B0 001B2910 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801B59B4 001B2914 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801B59B8 001B2918 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801B59BC 001B291C 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 801B59C0 001B2920 7C 08 03 A6 */ mtlr r0 +/* 801B59C4 001B2924 38 21 00 40 */ addi r1, r1, 0x40 +/* 801B59C8 001B2928 4E 80 00 20 */ blr + +.global sub_801b59cc +sub_801b59cc: +/* 801B59CC 001B292C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801B59D0 001B2930 7C 08 02 A6 */ mflr r0 +/* 801B59D4 001B2934 90 01 00 34 */ stw r0, 0x34(r1) +/* 801B59D8 001B2938 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801B59DC 001B293C 7C 9F 23 78 */ mr r31, r4 +/* 801B59E0 001B2940 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801B59E4 001B2944 7C 7E 1B 78 */ mr r30, r3 +/* 801B59E8 001B2948 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801B59EC 001B294C 80 03 00 08 */ lwz r0, 8(r3) +/* 801B59F0 001B2950 7C 1F 00 00 */ cmpw r31, r0 +/* 801B59F4 001B2954 40 81 00 B0 */ ble lbl_801B5AA4 +/* 801B59F8 001B2958 57 E3 18 39 */ rlwinm. r3, r31, 3, 0, 0x1c +/* 801B59FC 001B295C 40 82 00 0C */ bne lbl_801B5A08 +/* 801B5A00 001B2960 3B A0 00 00 */ li r29, 0 +/* 801B5A04 001B2964 48 00 00 18 */ b lbl_801B5A1C +lbl_801B5A08: +/* 801B5A08 001B2968 3C 80 80 3D */ lis r4, lbl_803D1638@ha +/* 801B5A0C 001B296C 38 A0 00 00 */ li r5, 0 +/* 801B5A10 001B2970 38 84 16 38 */ addi r4, r4, lbl_803D1638@l +/* 801B5A14 001B2974 48 15 FE 05 */ bl __nwa__FUlPCcPCc +/* 801B5A18 001B2978 7C 7D 1B 78 */ mr r29, r3 +lbl_801B5A1C: +/* 801B5A1C 001B297C 80 1E 00 04 */ lwz r0, 4(r30) +/* 801B5A20 001B2980 7F A4 EB 78 */ mr r4, r29 +/* 801B5A24 001B2984 80 BE 00 0C */ lwz r5, 0xc(r30) +/* 801B5A28 001B2988 54 00 18 38 */ slwi r0, r0, 3 +/* 801B5A2C 001B298C 7C 65 02 14 */ add r3, r5, r0 +/* 801B5A30 001B2990 90 A1 00 10 */ stw r5, 0x10(r1) +/* 801B5A34 001B2994 90 61 00 08 */ stw r3, 8(r1) +/* 801B5A38 001B2998 90 61 00 0C */ stw r3, 0xc(r1) +/* 801B5A3C 001B299C 90 A1 00 14 */ stw r5, 0x14(r1) +/* 801B5A40 001B29A0 48 00 00 24 */ b lbl_801B5A64 +lbl_801B5A44: +/* 801B5A44 001B29A4 28 04 00 00 */ cmplwi r4, 0 +/* 801B5A48 001B29A8 41 82 00 14 */ beq lbl_801B5A5C +/* 801B5A4C 001B29AC C0 05 00 00 */ lfs f0, 0(r5) +/* 801B5A50 001B29B0 D0 04 00 00 */ stfs f0, 0(r4) +/* 801B5A54 001B29B4 88 05 00 04 */ lbz r0, 4(r5) +/* 801B5A58 001B29B8 98 04 00 04 */ stb r0, 4(r4) +lbl_801B5A5C: +/* 801B5A5C 001B29BC 38 84 00 08 */ addi r4, r4, 8 +/* 801B5A60 001B29C0 38 A5 00 08 */ addi r5, r5, 8 +lbl_801B5A64: +/* 801B5A64 001B29C4 7C 05 18 40 */ cmplw r5, r3 +/* 801B5A68 001B29C8 40 82 FF DC */ bne lbl_801B5A44 +/* 801B5A6C 001B29CC 80 1E 00 04 */ lwz r0, 4(r30) +/* 801B5A70 001B29D0 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 801B5A74 001B29D4 54 00 18 38 */ slwi r0, r0, 3 +/* 801B5A78 001B29D8 7C 64 1B 78 */ mr r4, r3 +/* 801B5A7C 001B29DC 7C 03 02 14 */ add r0, r3, r0 +/* 801B5A80 001B29E0 48 00 00 08 */ b lbl_801B5A88 +lbl_801B5A84: +/* 801B5A84 001B29E4 38 84 00 08 */ addi r4, r4, 8 +lbl_801B5A88: +/* 801B5A88 001B29E8 7C 04 00 40 */ cmplw r4, r0 +/* 801B5A8C 001B29EC 40 82 FF F8 */ bne lbl_801B5A84 +/* 801B5A90 001B29F0 28 03 00 00 */ cmplwi r3, 0 +/* 801B5A94 001B29F4 41 82 00 08 */ beq lbl_801B5A9C +/* 801B5A98 001B29F8 48 15 FE 99 */ bl Free__7CMemoryFPCv +lbl_801B5A9C: +/* 801B5A9C 001B29FC 93 BE 00 0C */ stw r29, 0xc(r30) +/* 801B5AA0 001B2A00 93 FE 00 08 */ stw r31, 8(r30) +lbl_801B5AA4: +/* 801B5AA4 001B2A04 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801B5AA8 001B2A08 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801B5AAC 001B2A0C 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801B5AB0 001B2A10 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801B5AB4 001B2A14 7C 08 03 A6 */ mtlr r0 +/* 801B5AB8 001B2A18 38 21 00 30 */ addi r1, r1, 0x30 +/* 801B5ABC 001B2A1C 4E 80 00 20 */ blr + +.global sub_801b5ac0 +sub_801b5ac0: +/* 801B5AC0 001B2A20 C0 24 00 00 */ lfs f1, 0(r4) +/* 801B5AC4 001B2A24 C0 03 00 00 */ lfs f0, 0(r3) +/* 801B5AC8 001B2A28 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B5ACC 001B2A2C 40 80 00 1C */ bge lbl_801B5AE8 +/* 801B5AD0 001B2A30 88 C3 00 04 */ lbz r6, 4(r3) +/* 801B5AD4 001B2A34 D0 23 00 00 */ stfs f1, 0(r3) +/* 801B5AD8 001B2A38 88 04 00 04 */ lbz r0, 4(r4) +/* 801B5ADC 001B2A3C 98 03 00 04 */ stb r0, 4(r3) +/* 801B5AE0 001B2A40 D0 04 00 00 */ stfs f0, 0(r4) +/* 801B5AE4 001B2A44 98 C4 00 04 */ stb r6, 4(r4) +lbl_801B5AE8: +/* 801B5AE8 001B2A48 C0 05 00 00 */ lfs f0, 0(r5) +/* 801B5AEC 001B2A4C C0 24 00 00 */ lfs f1, 0(r4) +/* 801B5AF0 001B2A50 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801B5AF4 001B2A54 4C 80 00 20 */ bgelr +/* 801B5AF8 001B2A58 88 C5 00 04 */ lbz r6, 4(r5) +/* 801B5AFC 001B2A5C D0 25 00 00 */ stfs f1, 0(r5) +/* 801B5B00 001B2A60 88 04 00 04 */ lbz r0, 4(r4) +/* 801B5B04 001B2A64 98 05 00 04 */ stb r0, 4(r5) +/* 801B5B08 001B2A68 C0 23 00 00 */ lfs f1, 0(r3) +/* 801B5B0C 001B2A6C FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801B5B10 001B2A70 40 80 00 1C */ bge lbl_801B5B2C +/* 801B5B14 001B2A74 D0 24 00 00 */ stfs f1, 0(r4) +/* 801B5B18 001B2A78 88 03 00 04 */ lbz r0, 4(r3) +/* 801B5B1C 001B2A7C 98 04 00 04 */ stb r0, 4(r4) +/* 801B5B20 001B2A80 D0 03 00 00 */ stfs f0, 0(r3) +/* 801B5B24 001B2A84 98 C3 00 04 */ stb r6, 4(r3) +/* 801B5B28 001B2A88 4E 80 00 20 */ blr +lbl_801B5B2C: +/* 801B5B2C 001B2A8C D0 04 00 00 */ stfs f0, 0(r4) +/* 801B5B30 001B2A90 98 C4 00 04 */ stb r6, 4(r4) +/* 801B5B34 001B2A94 4E 80 00 20 */ blr + +.global sub_801b5b38 +sub_801b5b38: +/* 801B5B38 001B2A98 80 A3 00 00 */ lwz r5, 0(r3) +/* 801B5B3C 001B2A9C 38 A5 00 08 */ addi r5, r5, 8 +/* 801B5B40 001B2AA0 48 00 00 54 */ b lbl_801B5B94 +lbl_801B5B44: +/* 801B5B44 001B2AA4 C0 25 00 00 */ lfs f1, 0(r5) +/* 801B5B48 001B2AA8 7C A8 2B 78 */ mr r8, r5 +/* 801B5B4C 001B2AAC 88 C5 00 04 */ lbz r6, 4(r5) +/* 801B5B50 001B2AB0 38 E5 FF F8 */ addi r7, r5, -8 +/* 801B5B54 001B2AB4 48 00 00 1C */ b lbl_801B5B70 +lbl_801B5B58: +/* 801B5B58 001B2AB8 C0 07 00 00 */ lfs f0, 0(r7) +/* 801B5B5C 001B2ABC D0 08 00 00 */ stfs f0, 0(r8) +/* 801B5B60 001B2AC0 88 07 00 04 */ lbz r0, 4(r7) +/* 801B5B64 001B2AC4 38 E7 FF F8 */ addi r7, r7, -8 +/* 801B5B68 001B2AC8 98 08 00 04 */ stb r0, 4(r8) +/* 801B5B6C 001B2ACC 39 08 FF F8 */ addi r8, r8, -8 +lbl_801B5B70: +/* 801B5B70 001B2AD0 80 03 00 00 */ lwz r0, 0(r3) +/* 801B5B74 001B2AD4 7C 00 40 40 */ cmplw r0, r8 +/* 801B5B78 001B2AD8 40 80 00 10 */ bge lbl_801B5B88 +/* 801B5B7C 001B2ADC C0 07 00 00 */ lfs f0, 0(r7) +/* 801B5B80 001B2AE0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B5B84 001B2AE4 41 80 FF D4 */ blt lbl_801B5B58 +lbl_801B5B88: +/* 801B5B88 001B2AE8 D0 28 00 00 */ stfs f1, 0(r8) +/* 801B5B8C 001B2AEC 38 A5 00 08 */ addi r5, r5, 8 +/* 801B5B90 001B2AF0 98 C8 00 04 */ stb r6, 4(r8) +lbl_801B5B94: +/* 801B5B94 001B2AF4 80 04 00 00 */ lwz r0, 0(r4) +/* 801B5B98 001B2AF8 7C 05 00 40 */ cmplw r5, r0 +/* 801B5B9C 001B2AFC 41 80 FF A8 */ blt lbl_801B5B44 +/* 801B5BA0 001B2B00 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CFluidPlaneCPU.s b/asm/Kyoto_CWD/CFluidPlaneCPU.s new file mode 100644 index 00000000..4105e00f --- /dev/null +++ b/asm/Kyoto_CWD/CFluidPlaneCPU.s @@ -0,0 +1,4031 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global RenderCleanup__14CFluidPlaneCPUCFv +RenderCleanup__14CFluidPlaneCPUCFv: +/* 80199894 001967F4 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 80199898 001967F8 7C 08 02 A6 */ mflr r0 +/* 8019989C 001967FC 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 801998A0 00196800 88 02 98 E8 */ lbz r0, lbl_805AB608@sda21(r2) +/* 801998A4 00196804 28 00 00 00 */ cmplwi r0, 0 +/* 801998A8 00196808 41 82 01 B0 */ beq lbl_80199A58 +/* 801998AC 0019680C 38 60 00 00 */ li r3, 0 +/* 801998B0 00196810 48 1E 56 15 */ bl LCQueueWait +/* 801998B4 00196814 38 60 00 00 */ li r3, 0 +/* 801998B8 00196818 38 80 00 00 */ li r4, 0 +/* 801998BC 0019681C 38 A0 00 04 */ li r5, 4 +/* 801998C0 00196820 38 C0 00 3C */ li r6, 0x3c +/* 801998C4 00196824 38 E0 00 00 */ li r7, 0 +/* 801998C8 00196828 39 00 00 7D */ li r8, 0x7d +/* 801998CC 0019682C 48 16 EE 01 */ bl SetTexCoordGen__3CGXF13_GXTexCoordID13_GXTexGenType12_GXTexGenSrc9_GXTexMtxUc11_GXPTTexMtx +/* 801998D0 00196830 38 60 00 01 */ li r3, 1 +/* 801998D4 00196834 38 80 00 00 */ li r4, 0 +/* 801998D8 00196838 38 A0 00 05 */ li r5, 5 +/* 801998DC 0019683C 38 C0 00 3C */ li r6, 0x3c +/* 801998E0 00196840 38 E0 00 00 */ li r7, 0 +/* 801998E4 00196844 39 00 00 7D */ li r8, 0x7d +/* 801998E8 00196848 48 16 ED E5 */ bl SetTexCoordGen__3CGXF13_GXTexCoordID13_GXTexGenType12_GXTexGenSrc9_GXTexMtxUc11_GXPTTexMtx +/* 801998EC 0019684C 38 60 00 02 */ li r3, 2 +/* 801998F0 00196850 38 80 00 00 */ li r4, 0 +/* 801998F4 00196854 38 A0 00 06 */ li r5, 6 +/* 801998F8 00196858 38 C0 00 3C */ li r6, 0x3c +/* 801998FC 0019685C 38 E0 00 00 */ li r7, 0 +/* 80199900 00196860 39 00 00 7D */ li r8, 0x7d +/* 80199904 00196864 48 16 ED C9 */ bl SetTexCoordGen__3CGXF13_GXTexCoordID13_GXTexGenType12_GXTexGenSrc9_GXTexMtxUc11_GXPTTexMtx +/* 80199908 00196868 38 60 00 03 */ li r3, 3 +/* 8019990C 0019686C 38 80 00 00 */ li r4, 0 +/* 80199910 00196870 38 A0 00 07 */ li r5, 7 +/* 80199914 00196874 38 C0 00 3C */ li r6, 0x3c +/* 80199918 00196878 38 E0 00 00 */ li r7, 0 +/* 8019991C 0019687C 39 00 00 7D */ li r8, 0x7d +/* 80199920 00196880 48 16 ED AD */ bl SetTexCoordGen__3CGXF13_GXTexCoordID13_GXTexGenType12_GXTexGenSrc9_GXTexMtxUc11_GXPTTexMtx +/* 80199924 00196884 38 60 00 04 */ li r3, 4 +/* 80199928 00196888 38 80 00 00 */ li r4, 0 +/* 8019992C 0019688C 38 A0 00 08 */ li r5, 8 +/* 80199930 00196890 38 C0 00 3C */ li r6, 0x3c +/* 80199934 00196894 38 E0 00 00 */ li r7, 0 +/* 80199938 00196898 39 00 00 7D */ li r8, 0x7d +/* 8019993C 0019689C 48 16 ED 91 */ bl SetTexCoordGen__3CGXF13_GXTexCoordID13_GXTexGenType12_GXTexGenSrc9_GXTexMtxUc11_GXPTTexMtx +/* 80199940 001968A0 38 60 00 05 */ li r3, 5 +/* 80199944 001968A4 38 80 00 00 */ li r4, 0 +/* 80199948 001968A8 38 A0 00 09 */ li r5, 9 +/* 8019994C 001968AC 38 C0 00 3C */ li r6, 0x3c +/* 80199950 001968B0 38 E0 00 00 */ li r7, 0 +/* 80199954 001968B4 39 00 00 7D */ li r8, 0x7d +/* 80199958 001968B8 48 16 ED 75 */ bl SetTexCoordGen__3CGXF13_GXTexCoordID13_GXTexGenType12_GXTexGenSrc9_GXTexMtxUc11_GXPTTexMtx +/* 8019995C 001968BC 38 60 00 06 */ li r3, 6 +/* 80199960 001968C0 38 80 00 00 */ li r4, 0 +/* 80199964 001968C4 38 A0 00 0A */ li r5, 0xa +/* 80199968 001968C8 38 C0 00 3C */ li r6, 0x3c +/* 8019996C 001968CC 38 E0 00 00 */ li r7, 0 +/* 80199970 001968D0 39 00 00 7D */ li r8, 0x7d +/* 80199974 001968D4 48 16 ED 59 */ bl SetTexCoordGen__3CGXF13_GXTexCoordID13_GXTexGenType12_GXTexGenSrc9_GXTexMtxUc11_GXPTTexMtx +/* 80199978 001968D8 38 60 00 03 */ li r3, 3 +/* 8019997C 001968DC 48 16 ED C9 */ bl SetTevDirect__3CGXF13_GXTevStageID +/* 80199980 001968E0 38 60 00 06 */ li r3, 6 +/* 80199984 001968E4 48 16 ED C1 */ bl SetTevDirect__3CGXF13_GXTevStageID +/* 80199988 001968E8 38 60 00 00 */ li r3, 0 +/* 8019998C 001968EC 48 16 ED 05 */ bl SetNumIndStages__3CGXFUc +/* 80199990 001968F0 48 16 E4 ED */ bl SetIndexedPositionVtxFmt__14CFluidPlaneCPUFv +/* 80199994 001968F4 3C 80 80 5A */ lis r4, lbl_805A61D4@ha +/* 80199998 001968F8 38 61 00 08 */ addi r3, r1, 8 +/* 8019999C 001968FC 38 84 61 D4 */ addi r4, r4, lbl_805A61D4@l +/* 801999A0 00196900 48 17 92 A1 */ bl GetRotation__12CTransform4fCFv +/* 801999A4 00196904 38 61 00 38 */ addi r3, r1, 0x38 +/* 801999A8 00196908 38 81 00 08 */ addi r4, r1, 8 +/* 801999AC 0019690C 48 17 92 F1 */ bl GetQuickInverse__12CTransform4fCFv +/* 801999B0 00196910 38 61 00 68 */ addi r3, r1, 0x68 +/* 801999B4 00196914 38 81 00 38 */ addi r4, r1, 0x38 +/* 801999B8 00196918 48 17 91 BD */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801999BC 0019691C C1 61 00 68 */ lfs f11, 0x68(r1) +/* 801999C0 00196920 38 61 00 98 */ addi r3, r1, 0x98 +/* 801999C4 00196924 C1 41 00 6C */ lfs f10, 0x6c(r1) +/* 801999C8 00196928 38 80 00 00 */ li r4, 0 +/* 801999CC 0019692C C1 21 00 70 */ lfs f9, 0x70(r1) +/* 801999D0 00196930 C1 01 00 74 */ lfs f8, 0x74(r1) +/* 801999D4 00196934 C0 E1 00 78 */ lfs f7, 0x78(r1) +/* 801999D8 00196938 C0 C1 00 7C */ lfs f6, 0x7c(r1) +/* 801999DC 0019693C C0 A1 00 80 */ lfs f5, 0x80(r1) +/* 801999E0 00196940 C0 81 00 84 */ lfs f4, 0x84(r1) +/* 801999E4 00196944 C0 61 00 88 */ lfs f3, 0x88(r1) +/* 801999E8 00196948 C0 41 00 8C */ lfs f2, 0x8c(r1) +/* 801999EC 0019694C C0 21 00 90 */ lfs f1, 0x90(r1) +/* 801999F0 00196950 C0 01 00 94 */ lfs f0, 0x94(r1) +/* 801999F4 00196954 D1 61 00 98 */ stfs f11, 0x98(r1) +/* 801999F8 00196958 D1 41 00 9C */ stfs f10, 0x9c(r1) +/* 801999FC 0019695C D1 21 00 A0 */ stfs f9, 0xa0(r1) +/* 80199A00 00196960 D1 01 00 A4 */ stfs f8, 0xa4(r1) +/* 80199A04 00196964 D0 E1 00 A8 */ stfs f7, 0xa8(r1) +/* 80199A08 00196968 D0 C1 00 AC */ stfs f6, 0xac(r1) +/* 80199A0C 0019696C D0 A1 00 B0 */ stfs f5, 0xb0(r1) +/* 80199A10 00196970 D0 81 00 B4 */ stfs f4, 0xb4(r1) +/* 80199A14 00196974 D0 61 00 B8 */ stfs f3, 0xb8(r1) +/* 80199A18 00196978 D0 41 00 BC */ stfs f2, 0xbc(r1) +/* 80199A1C 0019697C D0 21 00 C0 */ stfs f1, 0xc0(r1) +/* 80199A20 00196980 D0 01 00 C4 */ stfs f0, 0xc4(r1) +/* 80199A24 00196984 48 1E 29 E5 */ bl GXLoadNrmMtxImm +/* 80199A28 00196988 38 60 00 01 */ li r3, 1 +/* 80199A2C 0019698C 38 80 00 00 */ li r4, 0 +/* 80199A30 00196990 38 A0 00 00 */ li r5, 0 +/* 80199A34 00196994 38 C0 00 00 */ li r6, 0 +/* 80199A38 00196998 38 E0 00 00 */ li r7, 0 +/* 80199A3C 0019699C 39 00 00 02 */ li r8, 2 +/* 80199A40 001969A0 39 20 00 01 */ li r9, 1 +/* 80199A44 001969A4 48 16 F2 89 */ bl SetChanCtrl__3CGXFQ23CGX10EChannelIdUc11_GXColorSrc11_GXColorSrc10_GXLightID12_GXDiffuseFn9_GXAttnFn +/* 80199A48 001969A8 38 60 00 01 */ li r3, 1 +/* 80199A4C 001969AC 48 16 F4 05 */ bl SetNumChans__3CGXFUc +/* 80199A50 001969B0 88 6D A8 16 */ lbz r3, lbl_805A93D6@sda21(r13) +/* 80199A54 001969B4 48 17 2E 7D */ bl SetLightState__9CGraphicsFUc +lbl_80199A58: +/* 80199A58 001969B8 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 80199A5C 001969BC 7C 08 03 A6 */ mtlr r0 +/* 80199A60 001969C0 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 80199A64 001969C4 4E 80 00 20 */ blr + +.global "Render__14CFluidPlaneCPUCFRC13CStateManagerRC6CAABoxRC12CTransform4fRC12CTransform4fbRC14CFrustumPlanesRCQ24rstl33optional_object<14CRippleManager>9TUniqueIdPCbiiRC9CVector3f" +"Render__14CFluidPlaneCPUCFRC13CStateManagerRC6CAABoxRC12CTransform4fRC12CTransform4fbRC14CFrustumPlanesRCQ24rstl33optional_object<14CRippleManager>9TUniqueIdPCbiiRC9CVector3f": +/* 80199A68 001969C8 94 21 FD 70 */ stwu r1, -0x290(r1) +/* 80199A6C 001969CC 7C 08 02 A6 */ mflr r0 +/* 80199A70 001969D0 90 01 02 94 */ stw r0, 0x294(r1) +/* 80199A74 001969D4 DB E1 02 80 */ stfd f31, 0x280(r1) +/* 80199A78 001969D8 F3 E1 02 88 */ psq_st f31, 648(r1), 0, qr0 +/* 80199A7C 001969DC DB C1 02 70 */ stfd f30, 0x270(r1) +/* 80199A80 001969E0 F3 C1 02 78 */ psq_st f30, 632(r1), 0, qr0 +/* 80199A84 001969E4 DB A1 02 60 */ stfd f29, 0x260(r1) +/* 80199A88 001969E8 F3 A1 02 68 */ psq_st f29, 616(r1), 0, qr0 +/* 80199A8C 001969EC DB 81 02 50 */ stfd f28, 0x250(r1) +/* 80199A90 001969F0 F3 81 02 58 */ psq_st f28, 600(r1), 0, qr0 +/* 80199A94 001969F4 DB 61 02 40 */ stfd f27, 0x240(r1) +/* 80199A98 001969F8 F3 61 02 48 */ psq_st f27, 584(r1), 0, qr0 +/* 80199A9C 001969FC DB 41 02 30 */ stfd f26, 0x230(r1) +/* 80199AA0 00196A00 F3 41 02 38 */ psq_st f26, 568(r1), 0, qr0 +/* 80199AA4 00196A04 DB 21 02 20 */ stfd f25, 0x220(r1) +/* 80199AA8 00196A08 F3 21 02 28 */ psq_st f25, 552(r1), 0, qr0 +/* 80199AAC 00196A0C DB 01 02 10 */ stfd f24, 0x210(r1) +/* 80199AB0 00196A10 F3 01 02 18 */ psq_st f24, 536(r1), 0, qr0 +/* 80199AB4 00196A14 DA E1 02 00 */ stfd f23, 0x200(r1) +/* 80199AB8 00196A18 F2 E1 02 08 */ psq_st f23, 520(r1), 0, qr0 +/* 80199ABC 00196A1C DA C1 01 F0 */ stfd f22, 0x1f0(r1) +/* 80199AC0 00196A20 F2 C1 01 F8 */ psq_st f22, 504(r1), 0, qr0 +/* 80199AC4 00196A24 DA A1 01 E0 */ stfd f21, 0x1e0(r1) +/* 80199AC8 00196A28 F2 A1 01 E8 */ psq_st f21, 488(r1), 0, qr0 +/* 80199ACC 00196A2C DA 81 01 D0 */ stfd f20, 0x1d0(r1) +/* 80199AD0 00196A30 F2 81 01 D8 */ psq_st f20, 472(r1), 0, qr0 +/* 80199AD4 00196A34 DA 61 01 C0 */ stfd f19, 0x1c0(r1) +/* 80199AD8 00196A38 F2 61 01 C8 */ psq_st f19, 456(r1), 0, qr0 +/* 80199ADC 00196A3C DA 41 01 B0 */ stfd f18, 0x1b0(r1) +/* 80199AE0 00196A40 F2 41 01 B8 */ psq_st f18, 440(r1), 0, qr0 +/* 80199AE4 00196A44 DA 21 01 A0 */ stfd f17, 0x1a0(r1) +/* 80199AE8 00196A48 F2 21 01 A8 */ psq_st f17, 424(r1), 0, qr0 +/* 80199AEC 00196A4C BD C1 01 58 */ stmw r14, 0x158(r1) +/* 80199AF0 00196A50 88 02 98 E8 */ lbz r0, lbl_805AB608@sda21(r2) +/* 80199AF4 00196A54 FE 20 08 90 */ fmr f17, f1 +/* 80199AF8 00196A58 81 61 02 98 */ lwz r11, 0x298(r1) +/* 80199AFC 00196A5C 7C 6F 1B 78 */ mr r15, r3 +/* 80199B00 00196A60 28 00 00 00 */ cmplwi r0, 0 +/* 80199B04 00196A64 82 61 02 A0 */ lwz r19, 0x2a0(r1) +/* 80199B08 00196A68 82 81 02 A4 */ lwz r20, 0x2a4(r1) +/* 80199B0C 00196A6C 82 A1 02 A8 */ lwz r21, 0x2a8(r1) +/* 80199B10 00196A70 7C 98 23 78 */ mr r24, r4 +/* 80199B14 00196A74 7C AE 2B 78 */ mr r14, r5 +/* 80199B18 00196A78 7C D0 33 78 */ mr r16, r6 +/* 80199B1C 00196A7C 7C F7 3B 78 */ mr r23, r7 +/* 80199B20 00196A80 7D 16 43 78 */ mr r22, r8 +/* 80199B24 00196A84 7D 31 4B 78 */ mr r17, r9 +/* 80199B28 00196A88 7D 52 53 78 */ mr r18, r10 +/* 80199B2C 00196A8C 41 82 06 F0 */ beq lbl_8019A21C +/* 80199B30 00196A90 A0 0B 00 00 */ lhz r0, 0(r11) +/* 80199B34 00196A94 7F 03 C3 78 */ mr r3, r24 +/* 80199B38 00196A98 38 81 00 2C */ addi r4, r1, 0x2c +/* 80199B3C 00196A9C B0 01 00 2C */ sth r0, 0x2c(r1) +/* 80199B40 00196AA0 4B EB 2A 65 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80199B44 00196AA4 7C 64 1B 78 */ mr r4, r3 +/* 80199B48 00196AA8 38 61 00 38 */ addi r3, r1, 0x38 +/* 80199B4C 00196AAC 4B F0 CD 15 */ bl "__ct__26TCastToPtr<12CScriptWater>FP7CEntity" +/* 80199B50 00196AB0 83 43 00 04 */ lwz r26, 4(r3) +/* 80199B54 00196AB4 FC 20 88 90 */ fmr f1, f17 +/* 80199B58 00196AB8 7D E3 7B 78 */ mr r3, r15 +/* 80199B5C 00196ABC 7F 04 C3 78 */ mr r4, r24 +/* 80199B60 00196AC0 7E 05 83 78 */ mr r5, r16 +/* 80199B64 00196AC4 7E E6 BB 78 */ mr r6, r23 +/* 80199B68 00196AC8 7D C7 73 78 */ mr r7, r14 +/* 80199B6C 00196ACC 7F 48 D3 78 */ mr r8, r26 +/* 80199B70 00196AD0 48 00 08 C1 */ bl RenderSetup__14CFluidPlaneCPUCFRC13CStateManagerfRC12CTransform4fRC12CTransform4fRC6CAABoxP12CScriptWater +/* 80199B74 00196AD4 80 78 08 7C */ lwz r3, 0x87c(r24) +/* 80199B78 00196AD8 C3 63 01 1C */ lfs f27, 0x11c(r3) +/* 80199B7C 00196ADC 48 16 E3 01 */ bl SetIndexedPositionVtxFmt__14CFluidPlaneCPUFv +/* 80199B80 00196AE0 88 0F 00 BC */ lbz r0, 0xbc(r15) +/* 80199B84 00196AE4 28 00 00 00 */ cmplwi r0, 0 +/* 80199B88 00196AE8 41 82 00 18 */ beq lbl_80199BA0 +/* 80199B8C 00196AEC 88 02 98 EA */ lbz r0, lbl_805AB60A@sda21(r2) +/* 80199B90 00196AF0 28 00 00 00 */ cmplwi r0, 0 +/* 80199B94 00196AF4 41 82 00 0C */ beq lbl_80199BA0 +/* 80199B98 00196AF8 3B 20 00 03 */ li r25, 3 +/* 80199B9C 00196AFC 48 00 00 18 */ b lbl_80199BB4 +lbl_80199BA0: +/* 80199BA0 00196B00 56 C0 06 3F */ clrlwi. r0, r22, 0x18 +/* 80199BA4 00196B04 40 82 00 0C */ bne lbl_80199BB0 +/* 80199BA8 00196B08 3B 20 00 02 */ li r25, 2 +/* 80199BAC 00196B0C 48 00 00 08 */ b lbl_80199BB4 +lbl_80199BB0: +/* 80199BB0 00196B10 3B 20 00 01 */ li r25, 1 +lbl_80199BB4: +/* 80199BB4 00196B14 38 60 00 09 */ li r3, 9 +/* 80199BB8 00196B18 38 80 00 01 */ li r4, 1 +/* 80199BBC 00196B1C 48 16 E2 E9 */ bl SetAttrFmt__11CFluidPlaneF6GXAttr10GXAttrType +/* 80199BC0 00196B20 38 60 00 0B */ li r3, 0xb +/* 80199BC4 00196B24 38 80 00 01 */ li r4, 1 +/* 80199BC8 00196B28 48 16 E2 DD */ bl SetAttrFmt__11CFluidPlaneF6GXAttr10GXAttrType +/* 80199BCC 00196B2C 2C 19 00 03 */ cmpwi r25, 3 +/* 80199BD0 00196B30 41 82 00 14 */ beq lbl_80199BE4 +/* 80199BD4 00196B34 40 80 00 5C */ bge lbl_80199C30 +/* 80199BD8 00196B38 2C 19 00 02 */ cmpwi r25, 2 +/* 80199BDC 00196B3C 40 80 00 30 */ bge lbl_80199C0C +/* 80199BE0 00196B40 48 00 00 50 */ b lbl_80199C30 +lbl_80199BE4: +/* 80199BE4 00196B44 38 60 00 00 */ li r3, 0 +/* 80199BE8 00196B48 38 80 00 19 */ li r4, 0x19 +/* 80199BEC 00196B4C 38 A0 00 01 */ li r5, 1 +/* 80199BF0 00196B50 38 C0 00 01 */ li r6, 1 +/* 80199BF4 00196B54 38 E0 00 06 */ li r7, 6 +/* 80199BF8 00196B58 48 1D DB 95 */ bl GXSetVtxAttrFmt +/* 80199BFC 00196B5C 38 60 00 19 */ li r3, 0x19 +/* 80199C00 00196B60 38 80 00 01 */ li r4, 1 +/* 80199C04 00196B64 48 1D D3 15 */ bl GXSetVtxDesc +/* 80199C08 00196B68 48 00 00 28 */ b lbl_80199C30 +lbl_80199C0C: +/* 80199C0C 00196B6C 38 60 00 00 */ li r3, 0 +/* 80199C10 00196B70 38 80 00 0A */ li r4, 0xa +/* 80199C14 00196B74 38 A0 00 00 */ li r5, 0 +/* 80199C18 00196B78 38 C0 00 01 */ li r6, 1 +/* 80199C1C 00196B7C 38 E0 00 06 */ li r7, 6 +/* 80199C20 00196B80 48 1D DB 6D */ bl GXSetVtxAttrFmt +/* 80199C24 00196B84 38 60 00 0A */ li r3, 0xa +/* 80199C28 00196B88 38 80 00 01 */ li r4, 1 +/* 80199C2C 00196B8C 48 16 E2 79 */ bl SetAttrFmt__11CFluidPlaneF6GXAttr10GXAttrType +lbl_80199C30: +/* 80199C30 00196B90 80 CF 01 04 */ lwz r6, 0x104(r15) +/* 80199C34 00196B94 38 00 00 2A */ li r0, 0x2a +/* 80199C38 00196B98 C3 4F 01 08 */ lfs f26, 0x108(r15) +/* 80199C3C 00196B9C 38 61 00 34 */ addi r3, r1, 0x34 +/* 80199C40 00196BA0 7C 80 33 D6 */ divw r4, r0, r6 +/* 80199C44 00196BA4 C0 02 A6 DC */ lfs f0, lbl_805AC3FC@sda21(r2) +/* 80199C48 00196BA8 80 0D 8F E8 */ lwz r0, lbl_805A7BA8@sda21(r13) +/* 80199C4C 00196BAC EE 40 D0 24 */ fdivs f18, f0, f26 +/* 80199C50 00196BB0 90 CD A5 74 */ stw r6, lbl_805A9134@sda21(r13) +/* 80199C54 00196BB4 7C 00 20 00 */ cmpw r0, r4 +/* 80199C58 00196BB8 90 81 00 34 */ stw r4, 0x34(r1) +/* 80199C5C 00196BBC 40 80 00 08 */ bge lbl_80199C64 +/* 80199C60 00196BC0 38 6D 8F E8 */ addi r3, r13, lbl_805A7BA8@sda21 +lbl_80199C64: +/* 80199C64 00196BC4 80 A3 00 00 */ lwz r5, 0(r3) +/* 80199C68 00196BC8 7D C4 73 78 */ mr r4, r14 +/* 80199C6C 00196BCC 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 80199C70 00196BD0 7C 05 31 D6 */ mullw r0, r5, r6 +/* 80199C74 00196BD4 90 AD A5 70 */ stw r5, lbl_805A9130@sda21(r13) +/* 80199C78 00196BD8 90 0D A5 78 */ stw r0, lbl_805A9138@sda21(r13) +/* 80199C7C 00196BDC 48 19 D9 91 */ bl GetCenterPoint__6CAABoxCFv +/* 80199C80 00196BE0 C2 21 00 AC */ lfs f17, 0xac(r1) +/* 80199C84 00196BE4 7D C4 73 78 */ mr r4, r14 +/* 80199C88 00196BE8 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 80199C8C 00196BEC 48 19 D9 81 */ bl GetCenterPoint__6CAABoxCFv +/* 80199C90 00196BF0 FC 40 88 90 */ fmr f2, f17 +/* 80199C94 00196BF4 C0 21 00 B4 */ lfs f1, 0xb4(r1) +/* 80199C98 00196BF8 38 61 00 48 */ addi r3, r1, 0x48 +/* 80199C9C 00196BFC 48 17 A5 65 */ bl __ct__9CVector2fFff +/* 80199CA0 00196C00 80 8D A5 78 */ lwz r4, lbl_805A9138@sda21(r13) +/* 80199CA4 00196C04 3C 00 43 30 */ lis r0, 0x4330 +/* 80199CA8 00196C08 90 01 01 38 */ stw r0, 0x138(r1) +/* 80199CAC 00196C0C 38 61 00 40 */ addi r3, r1, 0x40 +/* 80199CB0 00196C10 6C 84 80 00 */ xoris r4, r4, 0x8000 +/* 80199CB4 00196C14 C8 22 A6 F0 */ lfd f1, lbl_805AC410@sda21(r2) +/* 80199CB8 00196C18 90 81 01 3C */ stw r4, 0x13c(r1) +/* 80199CBC 00196C1C C3 2E 00 00 */ lfs f25, 0(r14) +/* 80199CC0 00196C20 C8 01 01 38 */ lfd f0, 0x138(r1) +/* 80199CC4 00196C24 90 81 01 44 */ stw r4, 0x144(r1) +/* 80199CC8 00196C28 EC 40 08 28 */ fsubs f2, f0, f1 +/* 80199CCC 00196C2C C3 0E 00 04 */ lfs f24, 4(r14) +/* 80199CD0 00196C30 90 01 01 40 */ stw r0, 0x140(r1) +/* 80199CD4 00196C34 C2 EE 00 08 */ lfs f23, 8(r14) +/* 80199CD8 00196C38 C8 01 01 40 */ lfd f0, 0x140(r1) +/* 80199CDC 00196C3C EC 5A 00 B2 */ fmuls f2, f26, f2 +/* 80199CE0 00196C40 C2 CE 00 0C */ lfs f22, 0xc(r14) +/* 80199CE4 00196C44 EC 00 08 28 */ fsubs f0, f0, f1 +/* 80199CE8 00196C48 C2 AE 00 10 */ lfs f21, 0x10(r14) +/* 80199CEC 00196C4C C2 8E 00 14 */ lfs f20, 0x14(r14) +/* 80199CF0 00196C50 EC 3A 00 32 */ fmuls f1, f26, f0 +/* 80199CF4 00196C54 48 17 A5 0D */ bl __ct__9CVector2fFff +/* 80199CF8 00196C58 80 0F 00 44 */ lwz r0, 0x44(r15) +/* 80199CFC 00196C5C 39 C0 00 00 */ li r14, 0 +/* 80199D00 00196C60 80 6D A1 20 */ lwz r3, gpTweakGame@sda21(r13) +/* 80199D04 00196C64 3A C0 00 00 */ li r22, 0 +/* 80199D08 00196C68 2C 00 00 02 */ cmpwi r0, 2 +/* 80199D0C 00196C6C 3A E0 00 00 */ li r23, 0 +/* 80199D10 00196C70 C2 23 00 34 */ lfs f17, 0x34(r3) +/* 80199D14 00196C74 41 82 00 30 */ beq lbl_80199D44 +/* 80199D18 00196C78 40 80 00 10 */ bge lbl_80199D28 +/* 80199D1C 00196C7C 2C 00 00 01 */ cmpwi r0, 1 +/* 80199D20 00196C80 40 80 00 14 */ bge lbl_80199D34 +/* 80199D24 00196C84 48 00 00 2C */ b lbl_80199D50 +lbl_80199D28: +/* 80199D28 00196C88 2C 00 00 05 */ cmpwi r0, 5 +/* 80199D2C 00196C8C 41 82 00 18 */ beq lbl_80199D44 +/* 80199D30 00196C90 48 00 00 20 */ b lbl_80199D50 +lbl_80199D34: +/* 80199D34 00196C94 C2 23 00 38 */ lfs f17, 0x38(r3) +/* 80199D38 00196C98 39 C0 00 01 */ li r14, 1 +/* 80199D3C 00196C9C 3A E0 00 01 */ li r23, 1 +/* 80199D40 00196CA0 48 00 00 10 */ b lbl_80199D50 +lbl_80199D44: +/* 80199D44 00196CA4 C2 23 00 3C */ lfs f17, 0x3c(r3) +/* 80199D48 00196CA8 3A E0 00 08 */ li r23, 8 +/* 80199D4C 00196CAC 3A C0 00 08 */ li r22, 8 +lbl_80199D50: +/* 80199D50 00196CB0 28 1A 00 00 */ cmplwi r26, 0 +/* 80199D54 00196CB4 41 82 00 B4 */ beq lbl_80199E08 +/* 80199D58 00196CB8 80 78 08 70 */ lwz r3, 0x870(r24) +/* 80199D5C 00196CBC 7F 04 C3 78 */ mr r4, r24 +/* 80199D60 00196CC0 4B E7 1D B9 */ bl GetCurrentCamera__14CCameraManagerCFR13CStateManager +/* 80199D64 00196CC4 C3 83 00 60 */ lfs f28, 0x60(r3) +/* 80199D68 00196CC8 C3 A3 00 50 */ lfs f29, 0x50(r3) +/* 80199D6C 00196CCC C3 C3 00 40 */ lfs f30, 0x40(r3) +/* 80199D70 00196CD0 38 61 00 50 */ addi r3, r1, 0x50 +/* 80199D74 00196CD4 C0 22 A6 E0 */ lfs f1, lbl_805AC400@sda21(r2) +/* 80199D78 00196CD8 C0 02 A6 DC */ lfs f0, lbl_805AC3FC@sda21(r2) +/* 80199D7C 00196CDC D0 21 00 50 */ stfs f1, 0x50(r1) +/* 80199D80 00196CE0 D0 21 00 54 */ stfs f1, 0x54(r1) +/* 80199D84 00196CE4 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 80199D88 00196CE8 48 17 AB 71 */ bl Normalize__9CVector3fFv +/* 80199D8C 00196CEC 7F 44 D3 78 */ mr r4, r26 +/* 80199D90 00196CF0 38 61 00 CC */ addi r3, r1, 0xcc +/* 80199D94 00196CF4 4B ED C9 39 */ bl GetTriggerBoundsWR__14CScriptTriggerCFv +/* 80199D98 00196CF8 C0 61 00 54 */ lfs f3, 0x54(r1) +/* 80199D9C 00196CFC 38 00 00 00 */ li r0, 0 +/* 80199DA0 00196D00 C0 81 00 50 */ lfs f4, 0x50(r1) +/* 80199DA4 00196D04 EC 23 07 72 */ fmuls f1, f3, f29 +/* 80199DA8 00196D08 C0 41 00 58 */ lfs f2, 0x58(r1) +/* 80199DAC 00196D0C C0 A1 00 E0 */ lfs f5, 0xe0(r1) +/* 80199DB0 00196D10 C0 02 A6 E8 */ lfs f0, lbl_805AC408@sda21(r2) +/* 80199DB4 00196D14 EC 24 0F BA */ fmadds f1, f4, f30, f1 +/* 80199DB8 00196D18 D0 81 00 98 */ stfs f4, 0x98(r1) +/* 80199DBC 00196D1C D0 61 00 9C */ stfs f3, 0x9c(r1) +/* 80199DC0 00196D20 EC 22 0F 3A */ fmadds f1, f2, f28, f1 +/* 80199DC4 00196D24 D0 41 00 A0 */ stfs f2, 0xa0(r1) +/* 80199DC8 00196D28 EC 21 28 28 */ fsubs f1, f1, f5 +/* 80199DCC 00196D2C D0 A1 00 A4 */ stfs f5, 0xa4(r1) +/* 80199DD0 00196D30 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80199DD4 00196D34 4C 41 13 82 */ cror 2, 1, 2 +/* 80199DD8 00196D38 41 82 00 10 */ beq lbl_80199DE8 +/* 80199DDC 00196D3C C0 02 A6 E0 */ lfs f0, lbl_805AC400@sda21(r2) +/* 80199DE0 00196D40 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80199DE4 00196D44 40 80 00 08 */ bge lbl_80199DEC +lbl_80199DE8: +/* 80199DE8 00196D48 38 00 00 01 */ li r0, 1 +lbl_80199DEC: +/* 80199DEC 00196D4C 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 80199DF0 00196D50 41 82 00 0C */ beq lbl_80199DFC +/* 80199DF4 00196D54 C0 02 A6 DC */ lfs f0, lbl_805AC3FC@sda21(r2) +/* 80199DF8 00196D58 48 00 00 0C */ b lbl_80199E04 +lbl_80199DFC: +/* 80199DFC 00196D5C C0 02 A6 E4 */ lfs f0, lbl_805AC404@sda21(r2) +/* 80199E00 00196D60 EC 00 00 72 */ fmuls f0, f0, f1 +lbl_80199E04: +/* 80199E04 00196D64 EE 31 00 32 */ fmuls f17, f17, f0 +lbl_80199E08: +/* 80199E08 00196D68 28 1A 00 00 */ cmplwi r26, 0 +/* 80199E0C 00196D6C 38 60 00 00 */ li r3, 0 +/* 80199E10 00196D70 41 82 00 14 */ beq lbl_80199E24 +/* 80199E14 00196D74 80 1A 02 D0 */ lwz r0, 0x2d0(r26) +/* 80199E18 00196D78 2C 00 00 00 */ cmpwi r0, 0 +/* 80199E1C 00196D7C 41 82 00 08 */ beq lbl_80199E24 +/* 80199E20 00196D80 38 60 00 01 */ li r3, 1 +lbl_80199E24: +/* 80199E24 00196D84 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80199E28 00196D88 41 82 00 0C */ beq lbl_80199E34 +/* 80199E2C 00196D8C 83 DA 02 D0 */ lwz r30, 0x2d0(r26) +/* 80199E30 00196D90 48 00 00 08 */ b lbl_80199E38 +lbl_80199E34: +/* 80199E34 00196D94 3B C0 00 80 */ li r30, 0x80 +lbl_80199E38: +/* 80199E38 00196D98 28 1A 00 00 */ cmplwi r26, 0 +/* 80199E3C 00196D9C 38 60 00 00 */ li r3, 0 +/* 80199E40 00196DA0 41 82 00 14 */ beq lbl_80199E54 +/* 80199E44 00196DA4 80 1A 02 D4 */ lwz r0, 0x2d4(r26) +/* 80199E48 00196DA8 2C 00 00 00 */ cmpwi r0, 0 +/* 80199E4C 00196DAC 41 82 00 08 */ beq lbl_80199E54 +/* 80199E50 00196DB0 38 60 00 01 */ li r3, 1 +lbl_80199E54: +/* 80199E54 00196DB4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80199E58 00196DB8 41 82 00 10 */ beq lbl_80199E68 +/* 80199E5C 00196DBC 80 1A 02 D4 */ lwz r0, 0x2d4(r26) +/* 80199E60 00196DC0 90 01 01 48 */ stw r0, 0x148(r1) +/* 80199E64 00196DC4 48 00 00 0C */ b lbl_80199E70 +lbl_80199E68: +/* 80199E68 00196DC8 38 00 00 80 */ li r0, 0x80 +/* 80199E6C 00196DCC 90 01 01 48 */ stw r0, 0x148(r1) +lbl_80199E70: +/* 80199E70 00196DD0 55 DB 06 3E */ clrlwi r27, r14, 0x18 +/* 80199E74 00196DD4 56 DC 06 3E */ clrlwi r28, r22, 0x18 +/* 80199E78 00196DD8 56 EE 06 3E */ clrlwi r14, r23, 0x18 +/* 80199E7C 00196DDC 3B 00 00 00 */ li r24, 0 +/* 80199E80 00196DE0 3B A0 00 00 */ li r29, 0 +/* 80199E84 00196DE4 48 00 03 38 */ b lbl_8019A1BC +lbl_80199E88: +/* 80199E88 00196DE8 EC 15 C0 28 */ fsubs f0, f21, f24 +/* 80199E8C 00196DEC 3A E0 00 00 */ li r23, 0 +/* 80199E90 00196DF0 FF 80 C8 90 */ fmr f28, f25 +/* 80199E94 00196DF4 3A C0 00 00 */ li r22, 0 +/* 80199E98 00196DF8 EE 72 00 32 */ fmuls f19, f18, f0 +/* 80199E9C 00196DFC 48 00 02 FC */ b lbl_8019A198 +lbl_80199EA0: +/* 80199EA0 00196E00 7F 43 D3 78 */ mr r3, r26 +/* 80199EA4 00196E04 7E C4 B3 78 */ mr r4, r22 +/* 80199EA8 00196E08 7F A5 EB 78 */ mr r5, r29 +/* 80199EAC 00196E0C 4B F6 4D E9 */ bl GetPatchRenderFlags__12CScriptWaterCFii +/* 80199EB0 00196E10 7C 7F 1B 79 */ or. r31, r3, r3 +/* 80199EB4 00196E14 41 82 02 D0 */ beq lbl_8019A184 +/* 80199EB8 00196E18 EC 16 E0 28 */ fsubs f0, f22, f28 +/* 80199EBC 00196E1C EF F2 00 32 */ fmuls f31, f18, f0 +/* 80199EC0 00196E20 F3 E1 D0 22 */ psq_st f31, 34(r1), 1, qr5 +/* 80199EC4 00196E24 38 61 00 2A */ addi r3, r1, 0x2a +/* 80199EC8 00196E28 80 8D A5 78 */ lwz r4, lbl_805A9138@sda21(r13) +/* 80199ECC 00196E2C A8 A1 00 22 */ lha r5, 0x22(r1) +/* 80199ED0 00196E30 7C 80 07 34 */ extsh r0, r4 +/* 80199ED4 00196E34 B0 81 00 2A */ sth r4, 0x2a(r1) +/* 80199ED8 00196E38 7C 05 00 00 */ cmpw r5, r0 +/* 80199EDC 00196E3C B0 A1 00 28 */ sth r5, 0x28(r1) +/* 80199EE0 00196E40 40 80 00 08 */ bge lbl_80199EE8 +/* 80199EE4 00196E44 38 61 00 28 */ addi r3, r1, 0x28 +lbl_80199EE8: +/* 80199EE8 00196E48 A8 03 00 00 */ lha r0, 0(r3) +/* 80199EEC 00196E4C B0 01 00 32 */ sth r0, 0x32(r1) +/* 80199EF0 00196E50 F2 61 D0 20 */ psq_st f19, 32(r1), 1, qr5 +/* 80199EF4 00196E54 38 61 00 26 */ addi r3, r1, 0x26 +/* 80199EF8 00196E58 80 8D A5 78 */ lwz r4, lbl_805A9138@sda21(r13) +/* 80199EFC 00196E5C A8 A1 00 20 */ lha r5, 0x20(r1) +/* 80199F00 00196E60 7C 80 07 34 */ extsh r0, r4 +/* 80199F04 00196E64 B0 81 00 26 */ sth r4, 0x26(r1) +/* 80199F08 00196E68 7C 05 00 00 */ cmpw r5, r0 +/* 80199F0C 00196E6C B0 A1 00 24 */ sth r5, 0x24(r1) +/* 80199F10 00196E70 40 80 00 08 */ bge lbl_80199F18 +/* 80199F14 00196E74 38 61 00 24 */ addi r3, r1, 0x24 +lbl_80199F18: +/* 80199F18 00196E78 A8 03 00 00 */ lha r0, 0(r3) +/* 80199F1C 00196E7C B0 01 00 30 */ sth r0, 0x30(r1) +/* 80199F20 00196E80 E0 01 D0 30 */ psq_l f0, 48(r1), 1, qr5 +/* 80199F24 00196E84 E0 41 D0 32 */ psq_l f2, 50(r1), 1, qr5 +/* 80199F28 00196E88 FC 20 C0 18 */ frsp f1, f24 +/* 80199F2C 00196E8C EC DA C0 3A */ fmadds f6, f26, f0, f24 +/* 80199F30 00196E90 C0 B0 00 1C */ lfs f5, 0x1c(r16) +/* 80199F34 00196E94 C0 90 00 2C */ lfs f4, 0x2c(r16) +/* 80199F38 00196E98 EC 5A E0 BA */ fmadds f2, f26, f2, f28 +/* 80199F3C 00196E9C C0 70 00 0C */ lfs f3, 0xc(r16) +/* 80199F40 00196EA0 FC 00 E0 18 */ frsp f0, f28 +/* 80199F44 00196EA4 ED 06 28 2A */ fadds f8, f6, f5 +/* 80199F48 00196EA8 D0 41 00 C0 */ stfs f2, 0xc0(r1) +/* 80199F4C 00196EAC EC F4 20 2A */ fadds f7, f20, f4 +/* 80199F50 00196EB0 38 61 00 E4 */ addi r3, r1, 0xe4 +/* 80199F54 00196EB4 EC 42 18 2A */ fadds f2, f2, f3 +/* 80199F58 00196EB8 EC A1 28 2A */ fadds f5, f1, f5 +/* 80199F5C 00196EBC EC 37 20 2A */ fadds f1, f23, f4 +/* 80199F60 00196EC0 D0 C1 00 C4 */ stfs f6, 0xc4(r1) +/* 80199F64 00196EC4 EC 00 18 2A */ fadds f0, f0, f3 +/* 80199F68 00196EC8 38 81 00 8C */ addi r4, r1, 0x8c +/* 80199F6C 00196ECC D2 81 00 C8 */ stfs f20, 0xc8(r1) +/* 80199F70 00196ED0 38 A1 00 74 */ addi r5, r1, 0x74 +/* 80199F74 00196ED4 D0 41 00 74 */ stfs f2, 0x74(r1) +/* 80199F78 00196ED8 D1 01 00 78 */ stfs f8, 0x78(r1) +/* 80199F7C 00196EDC D0 E1 00 7C */ stfs f7, 0x7c(r1) +/* 80199F80 00196EE0 D3 81 00 80 */ stfs f28, 0x80(r1) +/* 80199F84 00196EE4 D3 01 00 84 */ stfs f24, 0x84(r1) +/* 80199F88 00196EE8 D2 E1 00 88 */ stfs f23, 0x88(r1) +/* 80199F8C 00196EEC D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 80199F90 00196EF0 D0 A1 00 90 */ stfs f5, 0x90(r1) +/* 80199F94 00196EF4 D0 21 00 94 */ stfs f1, 0x94(r1) +/* 80199F98 00196EF8 48 19 E5 71 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 80199F9C 00196EFC 7E 23 8B 78 */ mr r3, r17 +/* 80199FA0 00196F00 38 81 00 E4 */ addi r4, r1, 0xe4 +/* 80199FA4 00196F04 48 1A B2 2D */ bl BoxInFrustumPlanes__14CFrustumPlanesCFRC6CAABox +/* 80199FA8 00196F08 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80199FAC 00196F0C 41 82 01 D8 */ beq lbl_8019A184 +/* 80199FB0 00196F10 C0 B0 00 2C */ lfs f5, 0x2c(r16) +/* 80199FB4 00196F14 FC 20 D0 90 */ fmr f1, f26 +/* 80199FB8 00196F18 C0 90 00 1C */ lfs f4, 0x1c(r16) +/* 80199FBC 00196F1C FC 60 88 90 */ fmr f3, f17 +/* 80199FC0 00196F20 C0 10 00 0C */ lfs f0, 0xc(r16) +/* 80199FC4 00196F24 7F 28 CB 78 */ mr r8, r25 +/* 80199FC8 00196F28 C0 4F 01 00 */ lfs f2, 0x100(r15) +/* 80199FCC 00196F2C D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 80199FD0 00196F30 7F 69 DB 78 */ mr r9, r27 +/* 80199FD4 00196F34 80 01 02 9C */ lwz r0, 0x29c(r1) +/* 80199FD8 00196F38 7F 8A E3 78 */ mr r10, r28 +/* 80199FDC 00196F3C D0 81 00 60 */ stfs f4, 0x60(r1) +/* 80199FE0 00196F40 38 61 00 FC */ addi r3, r1, 0xfc +/* 80199FE4 00196F44 38 81 00 68 */ addi r4, r1, 0x68 +/* 80199FE8 00196F48 38 A1 00 C0 */ addi r5, r1, 0xc0 +/* 80199FEC 00196F4C D0 A1 00 64 */ stfs f5, 0x64(r1) +/* 80199FF0 00196F50 38 C1 00 5C */ addi r6, r1, 0x5c +/* 80199FF4 00196F54 D3 81 00 68 */ stfs f28, 0x68(r1) +/* 80199FF8 00196F58 D3 01 00 6C */ stfs f24, 0x6c(r1) +/* 80199FFC 00196F5C D2 E1 00 70 */ stfs f23, 0x70(r1) +/* 8019A000 00196F60 91 C1 00 08 */ stw r14, 8(r1) +/* 8019A004 00196F64 92 E1 00 0C */ stw r23, 0xc(r1) +/* 8019A008 00196F68 92 61 00 10 */ stw r19, 0x10(r1) +/* 8019A00C 00196F6C 92 81 00 14 */ stw r20, 0x14(r1) +/* 8019A010 00196F70 93 01 00 18 */ stw r24, 0x18(r1) +/* 8019A014 00196F74 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8019A018 00196F78 80 ED A5 78 */ lwz r7, lbl_805A9138@sda21(r13) +/* 8019A01C 00196F7C 48 00 02 8D */ bl __ct__Q220CFluidPlaneCPURender10SPatchInfoFRC9CVector3fRC9CVector3fRC9CVector3fffb +/* 8019A020 00196F80 88 A1 00 FC */ lbz r5, 0xfc(r1) +/* 8019A024 00196F84 3C 60 E0 00 */ lis r3, 0xE0000000@ha +/* 8019A028 00196F88 7C 97 00 D0 */ neg r4, r23 +/* 8019A02C 00196F8C 38 13 FF FF */ addi r0, r19, -1 +/* 8019A030 00196F90 98 A3 00 00 */ stb r5, 0xE0000000@l(r3) +/* 8019A034 00196F94 7C 84 BB 78 */ or r4, r4, r23 +/* 8019A038 00196F98 7C 17 00 00 */ cmpw r23, r0 +/* 8019A03C 00196F9C 88 01 00 FD */ lbz r0, 0xfd(r1) +/* 8019A040 00196FA0 7C 85 FE 70 */ srawi r5, r4, 0x1f +/* 8019A044 00196FA4 98 03 00 01 */ stb r0, 1(r3) +/* 8019A048 00196FA8 C0 01 01 00 */ lfs f0, 0x100(r1) +/* 8019A04C 00196FAC D0 03 00 04 */ stfs f0, 4(r3) +/* 8019A050 00196FB0 C0 01 01 04 */ lfs f0, 0x104(r1) +/* 8019A054 00196FB4 D0 03 00 08 */ stfs f0, 8(r3) +/* 8019A058 00196FB8 C0 01 01 08 */ lfs f0, 0x108(r1) +/* 8019A05C 00196FBC D0 03 00 0C */ stfs f0, 0xc(r3) +/* 8019A060 00196FC0 C0 01 01 0C */ lfs f0, 0x10c(r1) +/* 8019A064 00196FC4 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 8019A068 00196FC8 C0 01 01 10 */ lfs f0, 0x110(r1) +/* 8019A06C 00196FCC D0 03 00 14 */ stfs f0, 0x14(r3) +/* 8019A070 00196FD0 C0 01 01 14 */ lfs f0, 0x114(r1) +/* 8019A074 00196FD4 D0 03 00 18 */ stfs f0, 0x18(r3) +/* 8019A078 00196FD8 C0 01 01 18 */ lfs f0, 0x118(r1) +/* 8019A07C 00196FDC D0 03 00 1C */ stfs f0, 0x1c(r3) +/* 8019A080 00196FE0 C0 01 01 1C */ lfs f0, 0x11c(r1) +/* 8019A084 00196FE4 D0 03 00 20 */ stfs f0, 0x20(r3) +/* 8019A088 00196FE8 C0 01 01 20 */ lfs f0, 0x120(r1) +/* 8019A08C 00196FEC D0 03 00 24 */ stfs f0, 0x24(r3) +/* 8019A090 00196FF0 A8 01 01 24 */ lha r0, 0x124(r1) +/* 8019A094 00196FF4 B0 03 00 28 */ sth r0, 0x28(r3) +/* 8019A098 00196FF8 A8 01 01 26 */ lha r0, 0x126(r1) +/* 8019A09C 00196FFC B0 03 00 2A */ sth r0, 0x2a(r3) +/* 8019A0A0 00197000 A8 01 01 28 */ lha r0, 0x128(r1) +/* 8019A0A4 00197004 B0 03 00 2C */ sth r0, 0x2c(r3) +/* 8019A0A8 00197008 A8 01 01 2A */ lha r0, 0x12a(r1) +/* 8019A0AC 0019700C B0 03 00 2E */ sth r0, 0x2e(r3) +/* 8019A0B0 00197010 80 01 01 2C */ lwz r0, 0x12c(r1) +/* 8019A0B4 00197014 90 03 00 30 */ stw r0, 0x30(r3) +/* 8019A0B8 00197018 88 01 01 30 */ lbz r0, 0x130(r1) +/* 8019A0BC 0019701C 98 03 00 34 */ stb r0, 0x34(r3) +/* 8019A0C0 00197020 88 01 01 31 */ lbz r0, 0x131(r1) +/* 8019A0C4 00197024 98 03 00 35 */ stb r0, 0x35(r3) +/* 8019A0C8 00197028 88 01 01 32 */ lbz r0, 0x132(r1) +/* 8019A0CC 0019702C 98 03 00 36 */ stb r0, 0x36(r3) +/* 8019A0D0 00197030 88 01 01 33 */ lbz r0, 0x133(r1) +/* 8019A0D4 00197034 98 03 00 37 */ stb r0, 0x37(r3) +/* 8019A0D8 00197038 C0 01 01 34 */ lfs f0, 0x134(r1) +/* 8019A0DC 0019703C D0 03 00 38 */ stfs f0, 0x38(r3) +/* 8019A0E0 00197040 80 8D A5 74 */ lwz r4, lbl_805A9134@sda21(r13) +/* 8019A0E4 00197044 20 04 00 02 */ subfic r0, r4, 2 +/* 8019A0E8 00197048 7C 07 28 38 */ and r7, r0, r5 +/* 8019A0EC 0019704C 41 82 00 18 */ beq lbl_8019A104 +/* 8019A0F0 00197050 88 03 00 00 */ lbz r0, 0(r3) +/* 8019A0F4 00197054 39 04 FF FE */ addi r8, r4, -2 +/* 8019A0F8 00197058 7C 00 07 74 */ extsb r0, r0 +/* 8019A0FC 0019705C 7D 00 42 14 */ add r8, r0, r8 +/* 8019A100 00197060 48 00 00 0C */ b lbl_8019A10C +lbl_8019A104: +/* 8019A104 00197064 89 03 00 00 */ lbz r8, 0(r3) +/* 8019A108 00197068 7D 08 07 74 */ extsb r8, r8 +lbl_8019A10C: +/* 8019A10C 0019706C 7C 78 00 D0 */ neg r3, r24 +/* 8019A110 00197070 38 14 FF FF */ addi r0, r20, -1 +/* 8019A114 00197074 7C 63 C3 78 */ or r3, r3, r24 +/* 8019A118 00197078 81 4D A5 74 */ lwz r10, lbl_805A9134@sda21(r13) +/* 8019A11C 0019707C 7C 64 FE 70 */ srawi r4, r3, 0x1f +/* 8019A120 00197080 FC 20 D8 90 */ fmr f1, f27 +/* 8019A124 00197084 20 6A 00 02 */ subfic r3, r10, 2 +/* 8019A128 00197088 7C 18 00 00 */ cmpw r24, r0 +/* 8019A12C 0019708C 7C 69 20 38 */ and r9, r3, r4 +/* 8019A130 00197090 7D E4 7B 78 */ mr r4, r15 +/* 8019A134 00197094 7E A5 AB 78 */ mr r5, r21 +/* 8019A138 00197098 7E 46 93 78 */ mr r6, r18 +/* 8019A13C 0019709C 3C 60 E0 00 */ lis r3, 0xe000 +/* 8019A140 001970A0 41 82 00 1C */ beq lbl_8019A15C +/* 8019A144 001970A4 3D 60 E0 00 */ lis r11, 0xE0000001@ha +/* 8019A148 001970A8 39 4A FF FE */ addi r10, r10, -2 +/* 8019A14C 001970AC 88 0B 00 01 */ lbz r0, 0xE0000001@l(r11) +/* 8019A150 001970B0 7C 00 07 74 */ extsb r0, r0 +/* 8019A154 001970B4 7D 40 52 14 */ add r10, r0, r10 +/* 8019A158 001970B8 48 00 00 10 */ b lbl_8019A168 +lbl_8019A15C: +/* 8019A15C 001970BC 3D 40 E0 00 */ lis r10, 0xE0000001@ha +/* 8019A160 001970C0 89 4A 00 01 */ lbz r10, 0xE0000001@l(r10) +/* 8019A164 001970C4 7D 4A 07 74 */ extsb r10, r10 +lbl_8019A168: +/* 8019A168 001970C8 48 00 1C 41 */ bl UpdatePatch__FfRQ220CFluidPlaneCPURender10SPatchInfoRC14CFluidPlaneCPURC9CVector3fRC14CRippleManageriiii +/* 8019A16C 001970CC 20 1F 00 01 */ subfic r0, r31, 1 +/* 8019A170 001970D0 7C 64 1B 78 */ mr r4, r3 +/* 8019A174 001970D4 7C 00 00 34 */ cntlzw r0, r0 +/* 8019A178 001970D8 3C 60 E0 00 */ lis r3, 0xe000 +/* 8019A17C 001970DC 54 05 D9 7E */ srwi r5, r0, 5 +/* 8019A180 001970E0 48 0D 1A 71 */ bl RenderPatch__FRCQ220CFluidPlaneCPURender10SPatchInfob +lbl_8019A184: +/* 8019A184 001970E4 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 8019A188 001970E8 3A D6 00 01 */ addi r22, r22, 1 +/* 8019A18C 001970EC 80 0D A5 70 */ lwz r0, lbl_805A9130@sda21(r13) +/* 8019A190 001970F0 EF 9C 00 2A */ fadds f28, f28, f0 +/* 8019A194 001970F4 7E F7 02 14 */ add r23, r23, r0 +lbl_8019A198: +/* 8019A198 001970F8 FC 1C B0 40 */ fcmpo cr0, f28, f22 +/* 8019A19C 001970FC 40 80 00 0C */ bge lbl_8019A1A8 +/* 8019A1A0 00197100 7C 16 F0 00 */ cmpw r22, r30 +/* 8019A1A4 00197104 41 80 FC FC */ blt lbl_80199EA0 +lbl_8019A1A8: +/* 8019A1A8 00197108 C0 01 00 44 */ lfs f0, 0x44(r1) +/* 8019A1AC 0019710C 3B BD 00 01 */ addi r29, r29, 1 +/* 8019A1B0 00197110 80 0D A5 70 */ lwz r0, lbl_805A9130@sda21(r13) +/* 8019A1B4 00197114 EF 18 00 2A */ fadds f24, f24, f0 +/* 8019A1B8 00197118 7F 18 02 14 */ add r24, r24, r0 +lbl_8019A1BC: +/* 8019A1BC 0019711C FC 18 A8 40 */ fcmpo cr0, f24, f21 +/* 8019A1C0 00197120 40 80 00 10 */ bge lbl_8019A1D0 +/* 8019A1C4 00197124 80 01 01 48 */ lwz r0, 0x148(r1) +/* 8019A1C8 00197128 7C 1D 00 00 */ cmpw r29, r0 +/* 8019A1CC 0019712C 41 80 FC BC */ blt lbl_80199E88 +lbl_8019A1D0: +/* 8019A1D0 00197130 38 60 00 00 */ li r3, 0 +/* 8019A1D4 00197134 38 80 00 19 */ li r4, 0x19 +/* 8019A1D8 00197138 38 A0 00 01 */ li r5, 1 +/* 8019A1DC 0019713C 38 C0 00 04 */ li r6, 4 +/* 8019A1E0 00197140 38 E0 00 06 */ li r7, 6 +/* 8019A1E4 00197144 48 1D D5 A9 */ bl GXSetVtxAttrFmt +/* 8019A1E8 00197148 38 60 00 00 */ li r3, 0 +/* 8019A1EC 0019714C 38 80 00 0A */ li r4, 0xa +/* 8019A1F0 00197150 38 A0 00 00 */ li r5, 0 +/* 8019A1F4 00197154 38 C0 00 04 */ li r6, 4 +/* 8019A1F8 00197158 38 E0 00 06 */ li r7, 6 +/* 8019A1FC 0019715C 48 1D D5 91 */ bl GXSetVtxAttrFmt +/* 8019A200 00197160 38 60 00 19 */ li r3, 0x19 +/* 8019A204 00197164 38 80 00 00 */ li r4, 0 +/* 8019A208 00197168 48 1D CD 11 */ bl GXSetVtxDesc +/* 8019A20C 0019716C 38 60 00 01 */ li r3, 1 +/* 8019A210 00197170 48 1D E9 49 */ bl GXSetCullMode +/* 8019A214 00197174 7D E3 7B 78 */ mr r3, r15 +/* 8019A218 00197178 4B FF F6 7D */ bl RenderCleanup__14CFluidPlaneCPUCFv +lbl_8019A21C: +/* 8019A21C 0019717C E3 E1 02 88 */ psq_l f31, 648(r1), 0, qr0 +/* 8019A220 00197180 CB E1 02 80 */ lfd f31, 0x280(r1) +/* 8019A224 00197184 E3 C1 02 78 */ psq_l f30, 632(r1), 0, qr0 +/* 8019A228 00197188 CB C1 02 70 */ lfd f30, 0x270(r1) +/* 8019A22C 0019718C E3 A1 02 68 */ psq_l f29, 616(r1), 0, qr0 +/* 8019A230 00197190 CB A1 02 60 */ lfd f29, 0x260(r1) +/* 8019A234 00197194 E3 81 02 58 */ psq_l f28, 600(r1), 0, qr0 +/* 8019A238 00197198 CB 81 02 50 */ lfd f28, 0x250(r1) +/* 8019A23C 0019719C E3 61 02 48 */ psq_l f27, 584(r1), 0, qr0 +/* 8019A240 001971A0 CB 61 02 40 */ lfd f27, 0x240(r1) +/* 8019A244 001971A4 E3 41 02 38 */ psq_l f26, 568(r1), 0, qr0 +/* 8019A248 001971A8 CB 41 02 30 */ lfd f26, 0x230(r1) +/* 8019A24C 001971AC E3 21 02 28 */ psq_l f25, 552(r1), 0, qr0 +/* 8019A250 001971B0 CB 21 02 20 */ lfd f25, 0x220(r1) +/* 8019A254 001971B4 E3 01 02 18 */ psq_l f24, 536(r1), 0, qr0 +/* 8019A258 001971B8 CB 01 02 10 */ lfd f24, 0x210(r1) +/* 8019A25C 001971BC E2 E1 02 08 */ psq_l f23, 520(r1), 0, qr0 +/* 8019A260 001971C0 CA E1 02 00 */ lfd f23, 0x200(r1) +/* 8019A264 001971C4 E2 C1 01 F8 */ psq_l f22, 504(r1), 0, qr0 +/* 8019A268 001971C8 CA C1 01 F0 */ lfd f22, 0x1f0(r1) +/* 8019A26C 001971CC E2 A1 01 E8 */ psq_l f21, 488(r1), 0, qr0 +/* 8019A270 001971D0 CA A1 01 E0 */ lfd f21, 0x1e0(r1) +/* 8019A274 001971D4 E2 81 01 D8 */ psq_l f20, 472(r1), 0, qr0 +/* 8019A278 001971D8 CA 81 01 D0 */ lfd f20, 0x1d0(r1) +/* 8019A27C 001971DC E2 61 01 C8 */ psq_l f19, 456(r1), 0, qr0 +/* 8019A280 001971E0 CA 61 01 C0 */ lfd f19, 0x1c0(r1) +/* 8019A284 001971E4 E2 41 01 B8 */ psq_l f18, 440(r1), 0, qr0 +/* 8019A288 001971E8 CA 41 01 B0 */ lfd f18, 0x1b0(r1) +/* 8019A28C 001971EC E2 21 01 A8 */ psq_l f17, 424(r1), 0, qr0 +/* 8019A290 001971F0 CA 21 01 A0 */ lfd f17, 0x1a0(r1) +/* 8019A294 001971F4 B9 C1 01 58 */ lmw r14, 0x158(r1) +/* 8019A298 001971F8 80 01 02 94 */ lwz r0, 0x294(r1) +/* 8019A29C 001971FC 7C 08 03 A6 */ mtlr r0 +/* 8019A2A0 00197200 38 21 02 90 */ addi r1, r1, 0x290 +/* 8019A2A4 00197204 4E 80 00 20 */ blr + +.global __ct__Q220CFluidPlaneCPURender10SPatchInfoFRC9CVector3fRC9CVector3fRC9CVector3fffb +__ct__Q220CFluidPlaneCPURender10SPatchInfoFRC9CVector3fRC9CVector3fRC9CVector3fffb: +/* 8019A2A8 00197208 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8019A2AC 0019720C C0 A2 A6 DC */ lfs f5, lbl_805AC3FC@sda21(r2) +/* 8019A2B0 00197210 BF 21 00 24 */ stmw r25, 0x24(r1) +/* 8019A2B4 00197214 8B A1 00 4B */ lbz r29, 0x4b(r1) +/* 8019A2B8 00197218 83 C1 00 4C */ lwz r30, 0x4c(r1) +/* 8019A2BC 0019721C 83 E1 00 50 */ lwz r31, 0x50(r1) +/* 8019A2C0 00197220 81 81 00 54 */ lwz r12, 0x54(r1) +/* 8019A2C4 00197224 81 61 00 58 */ lwz r11, 0x58(r1) +/* 8019A2C8 00197228 80 01 00 5C */ lwz r0, 0x5c(r1) +/* 8019A2CC 0019722C C0 85 00 00 */ lfs f4, 0(r5) +/* 8019A2D0 00197230 C0 04 00 00 */ lfs f0, 0(r4) +/* 8019A2D4 00197234 EC 84 00 28 */ fsubs f4, f4, f0 +/* 8019A2D8 00197238 C0 02 A6 F8 */ lfs f0, lbl_805AC418@sda21(r2) +/* 8019A2DC 0019723C EC 84 08 24 */ fdivs f4, f4, f1 +/* 8019A2E0 00197240 EC 85 20 2A */ fadds f4, f5, f4 +/* 8019A2E4 00197244 EC C4 00 28 */ fsubs f6, f4, f0 +/* 8019A2E8 00197248 F0 C1 D0 0A */ psq_st f6, 10(r1), 1, qr5 +/* 8019A2EC 0019724C 3B 47 00 02 */ addi r26, r7, 2 +/* 8019A2F0 00197250 7F 5C 07 34 */ extsh r28, r26 +/* 8019A2F4 00197254 3B 61 00 12 */ addi r27, r1, 0x12 +/* 8019A2F8 00197258 AB 21 00 0A */ lha r25, 0xa(r1) +/* 8019A2FC 0019725C B3 41 00 12 */ sth r26, 0x12(r1) +/* 8019A300 00197260 3B 39 00 02 */ addi r25, r25, 2 +/* 8019A304 00197264 7F 3A 07 34 */ extsh r26, r25 +/* 8019A308 00197268 B3 21 00 10 */ sth r25, 0x10(r1) +/* 8019A30C 0019726C 7C 1A E0 00 */ cmpw r26, r28 +/* 8019A310 00197270 40 80 00 08 */ bge lbl_8019A318 +/* 8019A314 00197274 3B 61 00 10 */ addi r27, r1, 0x10 +lbl_8019A318: +/* 8019A318 00197278 AB 7B 00 00 */ lha r27, 0(r27) +/* 8019A31C 0019727C C0 C2 A6 DC */ lfs f6, lbl_805AC3FC@sda21(r2) +/* 8019A320 00197280 9B 63 00 00 */ stb r27, 0(r3) +/* 8019A324 00197284 C0 02 A6 F8 */ lfs f0, lbl_805AC418@sda21(r2) +/* 8019A328 00197288 C0 A5 00 04 */ lfs f5, 4(r5) +/* 8019A32C 0019728C C0 84 00 04 */ lfs f4, 4(r4) +/* 8019A330 00197290 EC 85 20 28 */ fsubs f4, f5, f4 +/* 8019A334 00197294 EC 84 08 24 */ fdivs f4, f4, f1 +/* 8019A338 00197298 EC 86 20 2A */ fadds f4, f6, f4 +/* 8019A33C 0019729C EC E4 00 28 */ fsubs f7, f4, f0 +/* 8019A340 001972A0 F0 E1 D0 08 */ psq_st f7, 8(r1), 1, qr5 +/* 8019A344 001972A4 3B 87 00 02 */ addi r28, r7, 2 +/* 8019A348 001972A8 7F 87 07 34 */ extsh r7, r28 +/* 8019A34C 001972AC 38 A1 00 0E */ addi r5, r1, 0xe +/* 8019A350 001972B0 AB 61 00 08 */ lha r27, 8(r1) +/* 8019A354 001972B4 B3 81 00 0E */ sth r28, 0xe(r1) +/* 8019A358 001972B8 3B 7B 00 02 */ addi r27, r27, 2 +/* 8019A35C 001972BC 7F 7C 07 34 */ extsh r28, r27 +/* 8019A360 001972C0 B3 61 00 0C */ sth r27, 0xc(r1) +/* 8019A364 001972C4 7C 1C 38 00 */ cmpw r28, r7 +/* 8019A368 001972C8 40 80 00 08 */ bge lbl_8019A370 +/* 8019A36C 001972CC 38 A1 00 0C */ addi r5, r1, 0xc +lbl_8019A370: +/* 8019A370 001972D0 A8 A5 00 00 */ lha r5, 0(r5) +/* 8019A374 001972D4 EC 02 00 B2 */ fmuls f0, f2, f2 +/* 8019A378 001972D8 C0 A2 A6 FC */ lfs f5, lbl_805AC41C@sda21(r2) +/* 8019A37C 001972DC 98 A3 00 01 */ stb r5, 1(r3) +/* 8019A380 001972E0 EC 80 00 2A */ fadds f4, f0, f0 +/* 8019A384 001972E4 C0 02 A6 E0 */ lfs f0, lbl_805AC400@sda21(r2) +/* 8019A388 001972E8 C0 C4 00 00 */ lfs f6, 0(r4) +/* 8019A38C 001972EC D0 C3 00 04 */ stfs f6, 4(r3) +/* 8019A390 001972F0 ED 05 01 32 */ fmuls f8, f5, f4 +/* 8019A394 001972F4 C0 84 00 04 */ lfs f4, 4(r4) +/* 8019A398 001972F8 FC 00 40 00 */ fcmpu cr0, f0, f8 +/* 8019A39C 001972FC D0 83 00 08 */ stfs f4, 8(r3) +/* 8019A3A0 00197300 C0 83 00 04 */ lfs f4, 4(r3) +/* 8019A3A4 00197304 C0 06 00 00 */ lfs f0, 0(r6) +/* 8019A3A8 00197308 EC 04 00 2A */ fadds f0, f4, f0 +/* 8019A3AC 0019730C D0 03 00 0C */ stfs f0, 0xc(r3) +/* 8019A3B0 00197310 C0 83 00 08 */ lfs f4, 8(r3) +/* 8019A3B4 00197314 C0 06 00 04 */ lfs f0, 4(r6) +/* 8019A3B8 00197318 EC 04 00 2A */ fadds f0, f4, f0 +/* 8019A3BC 0019731C D0 03 00 10 */ stfs f0, 0x10(r3) +/* 8019A3C0 00197320 D0 43 00 14 */ stfs f2, 0x14(r3) +/* 8019A3C4 00197324 D0 23 00 18 */ stfs f1, 0x18(r3) +/* 8019A3C8 00197328 40 82 00 08 */ bne lbl_8019A3D0 +/* 8019A3CC 0019732C 48 00 00 10 */ b lbl_8019A3DC +lbl_8019A3D0: +/* 8019A3D0 00197330 10 00 40 34 */ ps_rsqrte f0, f8 +/* 8019A3D4 00197334 10 00 02 32 */ ps_mul f0, f0, f8 +/* 8019A3D8 00197338 FD 00 00 90 */ fmr f8, f0 +lbl_8019A3DC: +/* 8019A3DC 0019733C D1 03 00 1C */ stfs f8, 0x1c(r3) +/* 8019A3E0 00197340 C0 22 A6 DC */ lfs f1, lbl_805AC3FC@sda21(r2) +/* 8019A3E4 00197344 C0 03 00 14 */ lfs f0, 0x14(r3) +/* 8019A3E8 00197348 EC 01 00 24 */ fdivs f0, f1, f0 +/* 8019A3EC 0019734C D0 03 00 20 */ stfs f0, 0x20(r3) +/* 8019A3F0 00197350 C0 03 00 18 */ lfs f0, 0x18(r3) +/* 8019A3F4 00197354 EC 01 00 24 */ fdivs f0, f1, f0 +/* 8019A3F8 00197358 D0 03 00 24 */ stfs f0, 0x24(r3) +/* 8019A3FC 0019735C B3 C3 00 28 */ sth r30, 0x28(r3) +/* 8019A400 00197360 B3 E3 00 2A */ sth r31, 0x2a(r3) +/* 8019A404 00197364 B1 83 00 2C */ sth r12, 0x2c(r3) +/* 8019A408 00197368 B1 63 00 2E */ sth r11, 0x2e(r3) +/* 8019A40C 0019736C 90 03 00 30 */ stw r0, 0x30(r3) +/* 8019A410 00197370 99 23 00 34 */ stb r9, 0x34(r3) +/* 8019A414 00197374 99 43 00 35 */ stb r10, 0x35(r3) +/* 8019A418 00197378 9B A3 00 36 */ stb r29, 0x36(r3) +/* 8019A41C 0019737C 99 03 00 37 */ stb r8, 0x37(r3) +/* 8019A420 00197380 D0 63 00 38 */ stfs f3, 0x38(r3) +/* 8019A424 00197384 BB 21 00 24 */ lmw r25, 0x24(r1) +/* 8019A428 00197388 38 21 00 40 */ addi r1, r1, 0x40 +/* 8019A42C 0019738C 4E 80 00 20 */ blr + +.global RenderSetup__14CFluidPlaneCPUCFRC13CStateManagerfRC12CTransform4fRC12CTransform4fRC6CAABoxP12CScriptWater +RenderSetup__14CFluidPlaneCPUCFRC13CStateManagerfRC12CTransform4fRC12CTransform4fRC6CAABoxP12CScriptWater: +/* 8019A430 00197390 94 21 FB C0 */ stwu r1, -0x440(r1) +/* 8019A434 00197394 7C 08 02 A6 */ mflr r0 +/* 8019A438 00197398 90 01 04 44 */ stw r0, 0x444(r1) +/* 8019A43C 0019739C DB E1 04 30 */ stfd f31, 0x430(r1) +/* 8019A440 001973A0 F3 E1 04 38 */ psq_st f31, 1080(r1), 0, qr0 +/* 8019A444 001973A4 DB C1 04 20 */ stfd f30, 0x420(r1) +/* 8019A448 001973A8 F3 C1 04 28 */ psq_st f30, 1064(r1), 0, qr0 +/* 8019A44C 001973AC DB A1 04 10 */ stfd f29, 0x410(r1) +/* 8019A450 001973B0 F3 A1 04 18 */ psq_st f29, 1048(r1), 0, qr0 +/* 8019A454 001973B4 DB 81 04 00 */ stfd f28, 0x400(r1) +/* 8019A458 001973B8 F3 81 04 08 */ psq_st f28, 1032(r1), 0, qr0 +/* 8019A45C 001973BC BD C1 03 B8 */ stmw r14, 0x3b8(r1) +/* 8019A460 001973C0 88 02 98 E8 */ lbz r0, lbl_805AB608@sda21(r2) +/* 8019A464 001973C4 3D 20 80 3D */ lis r9, lbl_803D1230@ha +/* 8019A468 001973C8 FF E0 08 90 */ fmr f31, f1 +/* 8019A46C 001973CC 7C 72 1B 78 */ mr r18, r3 +/* 8019A470 001973D0 28 00 00 00 */ cmplwi r0, 0 +/* 8019A474 001973D4 7C 93 23 78 */ mr r19, r4 +/* 8019A478 001973D8 7C B4 2B 78 */ mr r20, r5 +/* 8019A47C 001973DC 7C D5 33 78 */ mr r21, r6 +/* 8019A480 001973E0 7C F6 3B 78 */ mr r22, r7 +/* 8019A484 001973E4 7D 17 43 78 */ mr r23, r8 +/* 8019A488 001973E8 3B E9 12 30 */ addi r31, r9, lbl_803D1230@l +/* 8019A48C 001973EC 41 82 15 40 */ beq lbl_8019B9CC +/* 8019A490 001973F0 88 12 00 BC */ lbz r0, 0xbc(r18) +/* 8019A494 001973F4 3B C0 00 00 */ li r30, 0 +/* 8019A498 001973F8 80 73 08 7C */ lwz r3, 0x87c(r19) +/* 8019A49C 001973FC 28 00 00 00 */ cmplwi r0, 0 +/* 8019A4A0 00197400 C3 C3 01 1C */ lfs f30, 0x11c(r3) +/* 8019A4A4 00197404 41 82 00 14 */ beq lbl_8019A4B8 +/* 8019A4A8 00197408 88 02 98 EA */ lbz r0, lbl_805AB60A@sda21(r2) +/* 8019A4AC 0019740C 28 00 00 00 */ cmplwi r0, 0 +/* 8019A4B0 00197410 41 82 00 08 */ beq lbl_8019A4B8 +/* 8019A4B4 00197414 3B C0 00 01 */ li r30, 1 +lbl_8019A4B8: +/* 8019A4B8 00197418 80 73 08 70 */ lwz r3, 0x870(r19) +/* 8019A4BC 0019741C 3B 40 00 00 */ li r26, 0 +/* 8019A4C0 00197420 8B B2 00 EC */ lbz r29, 0xec(r18) +/* 8019A4C4 00197424 80 03 00 74 */ lwz r0, 0x74(r3) +/* 8019A4C8 00197428 2C 00 00 00 */ cmpwi r0, 0 +/* 8019A4CC 0019742C 41 82 00 0C */ beq lbl_8019A4D8 +/* 8019A4D0 00197430 3B 80 00 00 */ li r28, 0 +/* 8019A4D4 00197434 48 00 00 1C */ b lbl_8019A4F0 +lbl_8019A4D8: +/* 8019A4D8 00197438 88 92 00 CC */ lbz r4, 0xcc(r18) +/* 8019A4DC 0019743C 80 02 98 EC */ lwz r0, lbl_805AB60C@sda21(r2) +/* 8019A4E0 00197440 7C 64 00 D0 */ neg r3, r4 +/* 8019A4E4 00197444 7C 63 23 78 */ or r3, r3, r4 +/* 8019A4E8 00197448 7C 63 FE 70 */ srawi r3, r3, 0x1f +/* 8019A4EC 0019744C 7C 1C 18 38 */ and r28, r0, r3 +lbl_8019A4F0: +/* 8019A4F0 00197450 8B 72 00 DC */ lbz r27, 0xdc(r18) +/* 8019A4F4 00197454 48 0D 55 81 */ bl InitializeSineWave__Fv +/* 8019A4F8 00197458 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 8019A4FC 0019745C 7E 84 A3 78 */ mr r4, r20 +/* 8019A500 00197460 81 83 00 00 */ lwz r12, 0(r3) +/* 8019A504 00197464 81 8C 00 30 */ lwz r12, 0x30(r12) +/* 8019A508 00197468 7D 89 03 A6 */ mtctr r12 +/* 8019A50C 0019746C 4E 80 04 21 */ bctrl +/* 8019A510 00197470 80 82 D7 40 */ lwz r4, lbl_805AF460@sda21(r2) +/* 8019A514 00197474 57 C0 06 3F */ clrlwi. r0, r30, 0x18 +/* 8019A518 00197478 80 62 A6 D8 */ lwz r3, lbl_805AC3F8@sda21(r2) +/* 8019A51C 0019747C 90 81 00 38 */ stw r4, 0x38(r1) +/* 8019A520 00197480 90 61 00 34 */ stw r3, 0x34(r1) +/* 8019A524 00197484 41 82 00 D0 */ beq lbl_8019A5F4 +/* 8019A528 00197488 C0 22 A6 E8 */ lfs f1, lbl_805AC408@sda21(r2) +/* 8019A52C 0019748C 38 61 00 30 */ addi r3, r1, 0x30 +/* 8019A530 00197490 C0 82 A6 DC */ lfs f4, lbl_805AC3FC@sda21(r2) +/* 8019A534 00197494 FC 40 08 90 */ fmr f2, f1 +/* 8019A538 00197498 FC 60 08 90 */ fmr f3, f1 +/* 8019A53C 0019749C 48 1C 8E B1 */ bl __ct__6CColorFffff +/* 8019A540 001974A0 7C 6E 1B 78 */ mr r14, r3 +/* 8019A544 001974A4 38 61 00 84 */ addi r3, r1, 0x84 +/* 8019A548 001974A8 38 92 00 F0 */ addi r4, r18, 0xf0 +/* 8019A54C 001974AC 48 17 A3 05 */ bl AsNormalized__9CVector3fCFv +/* 8019A550 001974B0 7D C5 73 78 */ mr r5, r14 +/* 8019A554 001974B4 38 61 02 E0 */ addi r3, r1, 0x2e0 +/* 8019A558 001974B8 38 81 00 84 */ addi r4, r1, 0x84 +/* 8019A55C 001974BC 48 16 BF 11 */ bl BuildDirectional__6CLightFRC9CVector3fRC6CColor +/* 8019A560 001974C0 38 61 03 30 */ addi r3, r1, 0x330 +/* 8019A564 001974C4 38 81 02 E0 */ addi r4, r1, 0x2e0 +/* 8019A568 001974C8 4B EA 10 09 */ bl __ct__6CLightFCR6CLight +/* 8019A56C 001974CC 38 81 03 30 */ addi r4, r1, 0x330 +/* 8019A570 001974D0 38 60 00 03 */ li r3, 3 +/* 8019A574 001974D4 48 17 24 51 */ bl LoadLight__9CGraphicsF9ERglLightRC6CLight +/* 8019A578 001974D8 38 60 00 02 */ li r3, 2 +/* 8019A57C 001974DC 48 16 E8 D5 */ bl SetNumChans__3CGXFUc +/* 8019A580 001974E0 38 60 00 01 */ li r3, 1 +/* 8019A584 001974E4 38 80 00 01 */ li r4, 1 +/* 8019A588 001974E8 38 A0 00 00 */ li r5, 0 +/* 8019A58C 001974EC 38 C0 00 00 */ li r6, 0 +/* 8019A590 001974F0 38 E0 00 08 */ li r7, 8 +/* 8019A594 001974F4 39 00 00 02 */ li r8, 2 +/* 8019A598 001974F8 39 20 00 01 */ li r9, 1 +/* 8019A59C 001974FC 48 16 E7 31 */ bl SetChanCtrl__3CGXFQ23CGX10EChannelIdUc11_GXColorSrc11_GXColorSrc10_GXLightID12_GXDiffuseFn9_GXAttnFn +/* 8019A5A0 00197500 38 81 00 34 */ addi r4, r1, 0x34 +/* 8019A5A4 00197504 38 60 00 01 */ li r3, 1 +/* 8019A5A8 00197508 48 16 E7 B5 */ bl SetChanMatColor__3CGXFQ23CGX10EChannelIdRC8_GXColor +/* 8019A5AC 0019750C 38 81 00 38 */ addi r4, r1, 0x38 +/* 8019A5B0 00197510 38 60 00 01 */ li r3, 1 +/* 8019A5B4 00197514 48 16 E8 11 */ bl SetChanAmbColor__3CGXFQ23CGX10EChannelIdRC8_GXColor +/* 8019A5B8 00197518 38 60 00 00 */ li r3, 0 +/* 8019A5BC 0019751C 38 80 00 01 */ li r4, 1 +/* 8019A5C0 00197520 38 A0 00 00 */ li r5, 0 +/* 8019A5C4 00197524 38 C0 00 01 */ li r6, 1 +/* 8019A5C8 00197528 38 E0 00 00 */ li r7, 0 +/* 8019A5CC 0019752C 39 00 00 02 */ li r8, 2 +/* 8019A5D0 00197530 39 20 00 01 */ li r9, 1 +/* 8019A5D4 00197534 48 16 E6 F9 */ bl SetChanCtrl__3CGXFQ23CGX10EChannelIdUc11_GXColorSrc11_GXColorSrc10_GXLightID12_GXDiffuseFn9_GXAttnFn +/* 8019A5D8 00197538 38 81 00 34 */ addi r4, r1, 0x34 +/* 8019A5DC 0019753C 38 60 00 00 */ li r3, 0 +/* 8019A5E0 00197540 48 16 E7 7D */ bl SetChanMatColor__3CGXFQ23CGX10EChannelIdRC8_GXColor +/* 8019A5E4 00197544 38 81 00 38 */ addi r4, r1, 0x38 +/* 8019A5E8 00197548 38 60 00 00 */ li r3, 0 +/* 8019A5EC 0019754C 48 16 E7 D9 */ bl SetChanAmbColor__3CGXFQ23CGX10EChannelIdRC8_GXColor +/* 8019A5F0 00197550 48 00 00 94 */ b lbl_8019A684 +lbl_8019A5F4: +/* 8019A5F4 00197554 38 60 00 02 */ li r3, 2 +/* 8019A5F8 00197558 48 16 E8 59 */ bl SetNumChans__3CGXFUc +/* 8019A5FC 0019755C 88 ED A8 16 */ lbz r7, lbl_805A93D6@sda21(r13) +/* 8019A600 00197560 38 60 00 01 */ li r3, 1 +/* 8019A604 00197564 38 80 00 01 */ li r4, 1 +/* 8019A608 00197568 38 A0 00 00 */ li r5, 0 +/* 8019A60C 0019756C 38 C0 00 00 */ li r6, 0 +/* 8019A610 00197570 39 00 00 02 */ li r8, 2 +/* 8019A614 00197574 39 20 00 01 */ li r9, 1 +/* 8019A618 00197578 48 16 E6 B5 */ bl SetChanCtrl__3CGXFQ23CGX10EChannelIdUc11_GXColorSrc11_GXColorSrc10_GXLightID12_GXDiffuseFn9_GXAttnFn +/* 8019A61C 0019757C 88 0D A8 16 */ lbz r0, lbl_805A93D6@sda21(r13) +/* 8019A620 00197580 38 81 00 38 */ addi r4, r1, 0x38 +/* 8019A624 00197584 38 60 00 01 */ li r3, 1 +/* 8019A628 00197588 28 00 00 00 */ cmplwi r0, 0 +/* 8019A62C 0019758C 41 82 00 08 */ beq lbl_8019A634 +/* 8019A630 00197590 38 81 00 34 */ addi r4, r1, 0x34 +lbl_8019A634: +/* 8019A634 00197594 48 16 E7 29 */ bl SetChanMatColor__3CGXFQ23CGX10EChannelIdRC8_GXColor +/* 8019A638 00197598 28 1D 00 00 */ cmplwi r29, 0 +/* 8019A63C 0019759C 41 82 00 10 */ beq lbl_8019A64C +/* 8019A640 001975A0 38 81 00 38 */ addi r4, r1, 0x38 +/* 8019A644 001975A4 38 60 00 01 */ li r3, 1 +/* 8019A648 001975A8 48 16 E7 7D */ bl SetChanAmbColor__3CGXFQ23CGX10EChannelIdRC8_GXColor +lbl_8019A64C: +/* 8019A64C 001975AC 38 60 00 00 */ li r3, 0 +/* 8019A650 001975B0 38 80 00 01 */ li r4, 1 +/* 8019A654 001975B4 38 A0 00 00 */ li r5, 0 +/* 8019A658 001975B8 38 C0 00 01 */ li r6, 1 +/* 8019A65C 001975BC 38 E0 00 00 */ li r7, 0 +/* 8019A660 001975C0 39 00 00 02 */ li r8, 2 +/* 8019A664 001975C4 39 20 00 01 */ li r9, 1 +/* 8019A668 001975C8 48 16 E6 65 */ bl SetChanCtrl__3CGXFQ23CGX10EChannelIdUc11_GXColorSrc11_GXColorSrc10_GXLightID12_GXDiffuseFn9_GXAttnFn +/* 8019A66C 001975CC 38 81 00 34 */ addi r4, r1, 0x34 +/* 8019A670 001975D0 38 60 00 00 */ li r3, 0 +/* 8019A674 001975D4 48 16 E6 E9 */ bl SetChanMatColor__3CGXFQ23CGX10EChannelIdRC8_GXColor +/* 8019A678 001975D8 38 81 00 38 */ addi r4, r1, 0x38 +/* 8019A67C 001975DC 38 60 00 00 */ li r3, 0 +/* 8019A680 001975E0 48 16 E7 45 */ bl SetChanAmbColor__3CGXFQ23CGX10EChannelIdRC8_GXColor +lbl_8019A684: +/* 8019A684 001975E4 88 12 00 1C */ lbz r0, 0x1c(r18) +/* 8019A688 001975E8 3B 20 00 00 */ li r25, 0 +/* 8019A68C 001975EC 80 6D A5 F0 */ lwz r3, lbl_805A91B0@sda21(r13) +/* 8019A690 001975F0 3B 00 00 00 */ li r24, 0 +/* 8019A694 001975F4 28 00 00 00 */ cmplwi r0, 0 +/* 8019A698 001975F8 39 C3 00 E4 */ addi r14, r3, 0xe4 +/* 8019A69C 001975FC 41 82 00 18 */ beq lbl_8019A6B4 +/* 8019A6A0 00197600 80 72 00 18 */ lwz r3, 0x18(r18) +/* 8019A6A4 00197604 38 80 00 00 */ li r4, 0 +/* 8019A6A8 00197608 38 A0 00 01 */ li r5, 1 +/* 8019A6AC 0019760C 48 17 50 91 */ bl Load__8CTextureCF11_GXTexMapIDQ28CTexture10EClampMode +/* 8019A6B0 00197610 48 00 00 14 */ b lbl_8019A6C4 +lbl_8019A6B4: +/* 8019A6B4 00197614 7D C3 73 78 */ mr r3, r14 +/* 8019A6B8 00197618 38 80 00 00 */ li r4, 0 +/* 8019A6BC 0019761C 38 A0 00 01 */ li r5, 1 +/* 8019A6C0 00197620 48 17 50 7D */ bl Load__8CTextureCF11_GXTexMapIDQ28CTexture10EClampMode +lbl_8019A6C4: +/* 8019A6C4 00197624 88 12 00 2C */ lbz r0, 0x2c(r18) +/* 8019A6C8 00197628 93 21 01 40 */ stw r25, 0x140(r1) +/* 8019A6CC 0019762C 3B 20 00 01 */ li r25, 1 +/* 8019A6D0 00197630 28 00 00 00 */ cmplwi r0, 0 +/* 8019A6D4 00197634 41 82 00 18 */ beq lbl_8019A6EC +/* 8019A6D8 00197638 80 72 00 28 */ lwz r3, 0x28(r18) +/* 8019A6DC 0019763C 38 80 00 01 */ li r4, 1 +/* 8019A6E0 00197640 38 A0 00 01 */ li r5, 1 +/* 8019A6E4 00197644 48 17 50 59 */ bl Load__8CTextureCF11_GXTexMapIDQ28CTexture10EClampMode +/* 8019A6E8 00197648 48 00 00 14 */ b lbl_8019A6FC +lbl_8019A6EC: +/* 8019A6EC 0019764C 7D C3 73 78 */ mr r3, r14 +/* 8019A6F0 00197650 38 80 00 01 */ li r4, 1 +/* 8019A6F4 00197654 38 A0 00 01 */ li r5, 1 +/* 8019A6F8 00197658 48 17 50 45 */ bl Load__8CTextureCF11_GXTexMapIDQ28CTexture10EClampMode +lbl_8019A6FC: +/* 8019A6FC 0019765C 88 12 00 3C */ lbz r0, 0x3c(r18) +/* 8019A700 00197660 93 21 01 44 */ stw r25, 0x144(r1) +/* 8019A704 00197664 3B 20 00 02 */ li r25, 2 +/* 8019A708 00197668 28 00 00 00 */ cmplwi r0, 0 +/* 8019A70C 0019766C 41 82 00 18 */ beq lbl_8019A724 +/* 8019A710 00197670 80 72 00 38 */ lwz r3, 0x38(r18) +/* 8019A714 00197674 38 80 00 02 */ li r4, 2 +/* 8019A718 00197678 38 A0 00 01 */ li r5, 1 +/* 8019A71C 0019767C 48 17 50 21 */ bl Load__8CTextureCF11_GXTexMapIDQ28CTexture10EClampMode +/* 8019A720 00197680 48 00 00 14 */ b lbl_8019A734 +lbl_8019A724: +/* 8019A724 00197684 7D C3 73 78 */ mr r3, r14 +/* 8019A728 00197688 38 80 00 02 */ li r4, 2 +/* 8019A72C 0019768C 38 A0 00 01 */ li r5, 1 +/* 8019A730 00197690 48 17 50 0D */ bl Load__8CTextureCF11_GXTexMapIDQ28CTexture10EClampMode +lbl_8019A734: +/* 8019A734 00197694 57 C0 06 3F */ clrlwi. r0, r30, 0x18 +/* 8019A738 00197698 93 21 01 48 */ stw r25, 0x148(r1) +/* 8019A73C 0019769C 3B 20 00 03 */ li r25, 3 +/* 8019A740 001976A0 41 82 00 1C */ beq lbl_8019A75C +/* 8019A744 001976A4 93 21 01 4C */ stw r25, 0x14c(r1) +/* 8019A748 001976A8 38 80 00 03 */ li r4, 3 +/* 8019A74C 001976AC 80 72 00 B8 */ lwz r3, 0xb8(r18) +/* 8019A750 001976B0 38 A0 00 01 */ li r5, 1 +/* 8019A754 001976B4 3B 20 00 04 */ li r25, 4 +/* 8019A758 001976B8 48 17 4F E5 */ bl Load__8CTextureCF11_GXTexMapIDQ28CTexture10EClampMode +lbl_8019A75C: +/* 8019A75C 001976BC 2C 1C 00 00 */ cmpwi r28, 0 +/* 8019A760 001976C0 41 82 00 1C */ beq lbl_8019A77C +/* 8019A764 001976C4 93 21 01 50 */ stw r25, 0x150(r1) +/* 8019A768 001976C8 7F 24 CB 78 */ mr r4, r25 +/* 8019A76C 001976CC 80 72 00 C8 */ lwz r3, 0xc8(r18) +/* 8019A770 001976D0 38 A0 00 01 */ li r5, 1 +/* 8019A774 001976D4 3B 39 00 01 */ addi r25, r25, 1 +/* 8019A778 001976D8 48 17 4F C5 */ bl Load__8CTextureCF11_GXTexMapIDQ28CTexture10EClampMode +lbl_8019A77C: +/* 8019A77C 001976DC 28 1B 00 00 */ cmplwi r27, 0 +/* 8019A780 001976E0 41 82 00 1C */ beq lbl_8019A79C +/* 8019A784 001976E4 93 21 01 54 */ stw r25, 0x154(r1) +/* 8019A788 001976E8 7F 24 CB 78 */ mr r4, r25 +/* 8019A78C 001976EC 80 72 00 D8 */ lwz r3, 0xd8(r18) +/* 8019A790 001976F0 38 A0 00 01 */ li r5, 1 +/* 8019A794 001976F4 3B 39 00 01 */ addi r25, r25, 1 +/* 8019A798 001976F8 48 17 4F A5 */ bl Load__8CTextureCF11_GXTexMapIDQ28CTexture10EClampMode +lbl_8019A79C: +/* 8019A79C 001976FC FC 20 F0 90 */ fmr f1, f30 +/* 8019A7A0 00197700 38 72 00 4C */ addi r3, r18, 0x4c +/* 8019A7A4 00197704 38 81 01 08 */ addi r4, r1, 0x108 +/* 8019A7A8 00197708 4B F8 23 3D */ bl CalculateFluidTextureOffset__14CFluidUVMotionCFfPA2_f +/* 8019A7AC 0019770C 80 1F 00 4C */ lwz r0, 0x4c(r31) +/* 8019A7B0 00197710 38 61 00 E8 */ addi r3, r1, 0xe8 +/* 8019A7B4 00197714 80 DF 00 40 */ lwz r6, 0x40(r31) +/* 8019A7B8 00197718 38 80 00 1E */ li r4, 0x1e +/* 8019A7BC 0019771C 90 01 03 B0 */ stw r0, 0x3b0(r1) +/* 8019A7C0 00197720 38 A0 00 01 */ li r5, 1 +/* 8019A7C4 00197724 80 1F 00 54 */ lwz r0, 0x54(r31) +/* 8019A7C8 00197728 90 C1 00 C8 */ stw r6, 0xc8(r1) +/* 8019A7CC 0019772C 80 C1 03 B0 */ lwz r6, 0x3b0(r1) +/* 8019A7D0 00197730 90 01 03 84 */ stw r0, 0x384(r1) +/* 8019A7D4 00197734 80 1F 00 5C */ lwz r0, 0x5c(r31) +/* 8019A7D8 00197738 81 FF 00 50 */ lwz r15, 0x50(r31) +/* 8019A7DC 0019773C 90 01 03 8C */ stw r0, 0x38c(r1) +/* 8019A7E0 00197740 80 1F 00 60 */ lwz r0, 0x60(r31) +/* 8019A7E4 00197744 90 C1 00 D4 */ stw r6, 0xd4(r1) +/* 8019A7E8 00197748 80 C1 03 84 */ lwz r6, 0x384(r1) +/* 8019A7EC 0019774C 90 01 03 90 */ stw r0, 0x390(r1) +/* 8019A7F0 00197750 80 1F 00 6C */ lwz r0, 0x6c(r31) +/* 8019A7F4 00197754 91 E1 03 80 */ stw r15, 0x380(r1) +/* 8019A7F8 00197758 81 FF 00 58 */ lwz r15, 0x58(r31) +/* 8019A7FC 0019775C 90 01 03 9C */ stw r0, 0x39c(r1) +/* 8019A800 00197760 80 1F 00 74 */ lwz r0, 0x74(r31) +/* 8019A804 00197764 90 C1 00 DC */ stw r6, 0xdc(r1) +/* 8019A808 00197768 80 C1 03 8C */ lwz r6, 0x38c(r1) +/* 8019A80C 0019776C 90 01 03 A4 */ stw r0, 0x3a4(r1) +/* 8019A810 00197770 80 1F 00 7C */ lwz r0, 0x7c(r31) +/* 8019A814 00197774 91 E1 03 88 */ stw r15, 0x388(r1) +/* 8019A818 00197778 81 FF 00 64 */ lwz r15, 0x64(r31) +/* 8019A81C 0019777C C0 F2 00 94 */ lfs f7, 0x94(r18) +/* 8019A820 00197780 90 01 03 AC */ stw r0, 0x3ac(r1) +/* 8019A824 00197784 80 1F 00 44 */ lwz r0, 0x44(r31) +/* 8019A828 00197788 90 C1 00 E4 */ stw r6, 0xe4(r1) +/* 8019A82C 0019778C 80 C1 03 90 */ lwz r6, 0x390(r1) +/* 8019A830 00197790 90 01 00 CC */ stw r0, 0xcc(r1) +/* 8019A834 00197794 80 01 03 80 */ lwz r0, 0x380(r1) +/* 8019A838 00197798 91 E1 03 94 */ stw r15, 0x394(r1) +/* 8019A83C 0019779C 81 FF 00 68 */ lwz r15, 0x68(r31) +/* 8019A840 001977A0 90 01 00 D8 */ stw r0, 0xd8(r1) +/* 8019A844 001977A4 80 01 03 88 */ lwz r0, 0x388(r1) +/* 8019A848 001977A8 90 C1 00 A8 */ stw r6, 0xa8(r1) +/* 8019A84C 001977AC 80 C1 03 9C */ lwz r6, 0x39c(r1) +/* 8019A850 001977B0 91 E1 03 98 */ stw r15, 0x398(r1) +/* 8019A854 001977B4 81 FF 00 70 */ lwz r15, 0x70(r31) +/* 8019A858 001977B8 90 01 00 E0 */ stw r0, 0xe0(r1) +/* 8019A85C 001977BC 80 01 03 94 */ lwz r0, 0x394(r1) +/* 8019A860 001977C0 90 C1 00 B4 */ stw r6, 0xb4(r1) +/* 8019A864 001977C4 80 C1 03 A4 */ lwz r6, 0x3a4(r1) +/* 8019A868 001977C8 91 E1 03 A0 */ stw r15, 0x3a0(r1) +/* 8019A86C 001977CC 82 1F 00 20 */ lwz r16, 0x20(r31) +/* 8019A870 001977D0 90 01 00 AC */ stw r0, 0xac(r1) +/* 8019A874 001977D4 80 01 03 98 */ lwz r0, 0x398(r1) +/* 8019A878 001977D8 81 7F 00 2C */ lwz r11, 0x2c(r31) +/* 8019A87C 001977DC 81 3F 00 34 */ lwz r9, 0x34(r31) +/* 8019A880 001977E0 80 FF 00 3C */ lwz r7, 0x3c(r31) +/* 8019A884 001977E4 90 C1 00 BC */ stw r6, 0xbc(r1) +/* 8019A888 001977E8 C0 D2 00 64 */ lfs f6, 0x64(r18) +/* 8019A88C 001977EC 80 C1 03 AC */ lwz r6, 0x3ac(r1) +/* 8019A890 001977F0 81 FF 00 78 */ lwz r15, 0x78(r31) +/* 8019A894 001977F4 90 01 00 B0 */ stw r0, 0xb0(r1) +/* 8019A898 001977F8 80 01 03 A0 */ lwz r0, 0x3a0(r1) +/* 8019A89C 001977FC 82 3F 00 24 */ lwz r17, 0x24(r31) +/* 8019A8A0 00197800 81 9F 00 28 */ lwz r12, 0x28(r31) +/* 8019A8A4 00197804 81 5F 00 30 */ lwz r10, 0x30(r31) +/* 8019A8A8 00197808 81 1F 00 38 */ lwz r8, 0x38(r31) +/* 8019A8AC 0019780C 81 DF 00 48 */ lwz r14, 0x48(r31) +/* 8019A8B0 00197810 C0 61 01 18 */ lfs f3, 0x118(r1) +/* 8019A8B4 00197814 C0 41 01 1C */ lfs f2, 0x11c(r1) +/* 8019A8B8 00197818 C0 21 01 08 */ lfs f1, 0x108(r1) +/* 8019A8BC 0019781C 90 01 00 B8 */ stw r0, 0xb8(r1) +/* 8019A8C0 00197820 7D E0 7B 78 */ mr r0, r15 +/* 8019A8C4 00197824 C1 12 00 7C */ lfs f8, 0x7c(r18) +/* 8019A8C8 00197828 92 01 00 E8 */ stw r16, 0xe8(r1) +/* 8019A8CC 0019782C C0 A1 01 10 */ lfs f5, 0x110(r1) +/* 8019A8D0 00197830 91 21 00 FC */ stw r9, 0xfc(r1) +/* 8019A8D4 00197834 C0 81 01 14 */ lfs f4, 0x114(r1) +/* 8019A8D8 00197838 91 61 00 F4 */ stw r11, 0xf4(r1) +/* 8019A8DC 0019783C C0 01 01 0C */ lfs f0, 0x10c(r1) +/* 8019A8E0 00197840 90 E1 01 04 */ stw r7, 0x104(r1) +/* 8019A8E4 00197844 90 C1 00 C4 */ stw r6, 0xc4(r1) +/* 8019A8E8 00197848 91 E1 03 A8 */ stw r15, 0x3a8(r1) +/* 8019A8EC 0019784C 92 21 00 EC */ stw r17, 0xec(r1) +/* 8019A8F0 00197850 91 81 00 F0 */ stw r12, 0xf0(r1) +/* 8019A8F4 00197854 91 41 00 F8 */ stw r10, 0xf8(r1) +/* 8019A8F8 00197858 91 01 01 00 */ stw r8, 0x100(r1) +/* 8019A8FC 0019785C D1 01 00 E8 */ stfs f8, 0xe8(r1) +/* 8019A900 00197860 D0 A1 00 F4 */ stfs f5, 0xf4(r1) +/* 8019A904 00197864 D1 01 00 FC */ stfs f8, 0xfc(r1) +/* 8019A908 00197868 D0 81 01 04 */ stfs f4, 0x104(r1) +/* 8019A90C 0019786C 91 C1 00 D0 */ stw r14, 0xd0(r1) +/* 8019A910 00197870 D0 E1 00 C8 */ stfs f7, 0xc8(r1) +/* 8019A914 00197874 D0 61 00 D4 */ stfs f3, 0xd4(r1) +/* 8019A918 00197878 D0 E1 00 DC */ stfs f7, 0xdc(r1) +/* 8019A91C 0019787C D0 41 00 E4 */ stfs f2, 0xe4(r1) +/* 8019A920 00197880 90 01 00 C0 */ stw r0, 0xc0(r1) +/* 8019A924 00197884 D0 C1 00 A8 */ stfs f6, 0xa8(r1) +/* 8019A928 00197888 D0 21 00 B4 */ stfs f1, 0xb4(r1) +/* 8019A92C 0019788C D0 C1 00 BC */ stfs f6, 0xbc(r1) +/* 8019A930 00197890 D0 01 00 C4 */ stfs f0, 0xc4(r1) +/* 8019A934 00197894 48 1E 1B 5D */ bl GXLoadTexMtxImm +/* 8019A938 00197898 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 8019A93C 0019789C 38 80 00 21 */ li r4, 0x21 +/* 8019A940 001978A0 38 A0 00 01 */ li r5, 1 +/* 8019A944 001978A4 48 1E 1B 4D */ bl GXLoadTexMtxImm +/* 8019A948 001978A8 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 8019A94C 001978AC 38 80 00 24 */ li r4, 0x24 +/* 8019A950 001978B0 38 A0 00 01 */ li r5, 1 +/* 8019A954 001978B4 48 1E 1B 3D */ bl GXLoadTexMtxImm +/* 8019A958 001978B8 57 C0 06 3F */ clrlwi. r0, r30, 0x18 +/* 8019A95C 001978BC 39 E0 00 27 */ li r15, 0x27 +/* 8019A960 001978C0 41 82 00 B4 */ beq lbl_8019AA14 +/* 8019A964 001978C4 3C 60 80 5A */ lis r3, lbl_805A61D4@ha +/* 8019A968 001978C8 C3 B2 00 FC */ lfs f29, 0xfc(r18) +/* 8019A96C 001978CC 38 83 61 D4 */ addi r4, r3, lbl_805A61D4@l +/* 8019A970 001978D0 38 61 01 90 */ addi r3, r1, 0x190 +/* 8019A974 001978D4 48 17 82 CD */ bl GetRotation__12CTransform4fCFv +/* 8019A978 001978D8 38 61 01 C0 */ addi r3, r1, 0x1c0 +/* 8019A97C 001978DC 38 81 01 90 */ addi r4, r1, 0x190 +/* 8019A980 001978E0 48 17 83 1D */ bl GetQuickInverse__12CTransform4fCFv +/* 8019A984 001978E4 38 61 02 80 */ addi r3, r1, 0x280 +/* 8019A988 001978E8 38 81 01 C0 */ addi r4, r1, 0x1c0 +/* 8019A98C 001978EC 48 17 81 E9 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8019A990 001978F0 C3 C1 02 80 */ lfs f30, 0x280(r1) +/* 8019A994 001978F4 38 61 02 B0 */ addi r3, r1, 0x2b0 +/* 8019A998 001978F8 C1 A1 02 84 */ lfs f13, 0x284(r1) +/* 8019A99C 001978FC FC 20 E8 90 */ fmr f1, f29 +/* 8019A9A0 00197900 C1 81 02 88 */ lfs f12, 0x288(r1) +/* 8019A9A4 00197904 FC 40 E8 90 */ fmr f2, f29 +/* 8019A9A8 00197908 C1 61 02 8C */ lfs f11, 0x28c(r1) +/* 8019A9AC 0019790C FC 60 E8 90 */ fmr f3, f29 +/* 8019A9B0 00197910 C1 41 02 90 */ lfs f10, 0x290(r1) +/* 8019A9B4 00197914 C1 21 02 94 */ lfs f9, 0x294(r1) +/* 8019A9B8 00197918 7C 64 1B 78 */ mr r4, r3 +/* 8019A9BC 0019791C C1 01 02 98 */ lfs f8, 0x298(r1) +/* 8019A9C0 00197920 C0 E1 02 9C */ lfs f7, 0x29c(r1) +/* 8019A9C4 00197924 C0 C1 02 A0 */ lfs f6, 0x2a0(r1) +/* 8019A9C8 00197928 C0 A1 02 A4 */ lfs f5, 0x2a4(r1) +/* 8019A9CC 0019792C C0 81 02 A8 */ lfs f4, 0x2a8(r1) +/* 8019A9D0 00197930 C0 01 02 AC */ lfs f0, 0x2ac(r1) +/* 8019A9D4 00197934 D3 C1 02 B0 */ stfs f30, 0x2b0(r1) +/* 8019A9D8 00197938 D1 A1 02 B4 */ stfs f13, 0x2b4(r1) +/* 8019A9DC 0019793C D1 81 02 B8 */ stfs f12, 0x2b8(r1) +/* 8019A9E0 00197940 D1 61 02 BC */ stfs f11, 0x2bc(r1) +/* 8019A9E4 00197944 D1 41 02 C0 */ stfs f10, 0x2c0(r1) +/* 8019A9E8 00197948 D1 21 02 C4 */ stfs f9, 0x2c4(r1) +/* 8019A9EC 0019794C D1 01 02 C8 */ stfs f8, 0x2c8(r1) +/* 8019A9F0 00197950 D0 E1 02 CC */ stfs f7, 0x2cc(r1) +/* 8019A9F4 00197954 D0 C1 02 D0 */ stfs f6, 0x2d0(r1) +/* 8019A9F8 00197958 D0 A1 02 D4 */ stfs f5, 0x2d4(r1) +/* 8019A9FC 0019795C D0 81 02 D8 */ stfs f4, 0x2d8(r1) +/* 8019AA00 00197960 D0 01 02 DC */ stfs f0, 0x2dc(r1) +/* 8019AA04 00197964 48 1E 28 8D */ bl PSMTXScaleApply +/* 8019AA08 00197968 38 61 02 B0 */ addi r3, r1, 0x2b0 +/* 8019AA0C 0019796C 38 80 00 00 */ li r4, 0 +/* 8019AA10 00197970 48 1E 19 F9 */ bl GXLoadNrmMtxImm +lbl_8019AA14: +/* 8019AA14 00197974 93 01 01 20 */ stw r24, 0x120(r1) +/* 8019AA18 00197978 38 60 00 00 */ li r3, 0 +/* 8019AA1C 0019797C 38 80 00 01 */ li r4, 1 +/* 8019AA20 00197980 38 A0 00 00 */ li r5, 0 +/* 8019AA24 00197984 38 C0 00 1E */ li r6, 0x1e +/* 8019AA28 00197988 38 E0 00 00 */ li r7, 0 +/* 8019AA2C 0019798C 39 00 00 7D */ li r8, 0x7d +/* 8019AA30 00197990 3B 00 00 01 */ li r24, 1 +/* 8019AA34 00197994 48 16 DC 99 */ bl SetTexCoordGen__3CGXF13_GXTexCoordID13_GXTexGenType12_GXTexGenSrc9_GXTexMtxUc11_GXPTTexMtx +/* 8019AA38 00197998 93 01 01 24 */ stw r24, 0x124(r1) +/* 8019AA3C 0019799C 38 60 00 01 */ li r3, 1 +/* 8019AA40 001979A0 38 80 00 01 */ li r4, 1 +/* 8019AA44 001979A4 38 A0 00 00 */ li r5, 0 +/* 8019AA48 001979A8 38 C0 00 21 */ li r6, 0x21 +/* 8019AA4C 001979AC 38 E0 00 00 */ li r7, 0 +/* 8019AA50 001979B0 39 00 00 7D */ li r8, 0x7d +/* 8019AA54 001979B4 3B 00 00 02 */ li r24, 2 +/* 8019AA58 001979B8 48 16 DC 75 */ bl SetTexCoordGen__3CGXF13_GXTexCoordID13_GXTexGenType12_GXTexGenSrc9_GXTexMtxUc11_GXPTTexMtx +/* 8019AA5C 001979BC 93 01 01 28 */ stw r24, 0x128(r1) +/* 8019AA60 001979C0 38 60 00 02 */ li r3, 2 +/* 8019AA64 001979C4 38 80 00 01 */ li r4, 1 +/* 8019AA68 001979C8 38 A0 00 00 */ li r5, 0 +/* 8019AA6C 001979CC 38 C0 00 24 */ li r6, 0x24 +/* 8019AA70 001979D0 38 E0 00 00 */ li r7, 0 +/* 8019AA74 001979D4 39 00 00 7D */ li r8, 0x7d +/* 8019AA78 001979D8 3B 00 00 03 */ li r24, 3 +/* 8019AA7C 001979DC 48 16 DC 51 */ bl SetTexCoordGen__3CGXF13_GXTexCoordID13_GXTexGenType12_GXTexGenSrc9_GXTexMtxUc11_GXPTTexMtx +/* 8019AA80 001979E0 57 C0 06 3F */ clrlwi. r0, r30, 0x18 +/* 8019AA84 001979E4 41 82 00 44 */ beq lbl_8019AAC8 +/* 8019AA88 001979E8 93 01 01 2C */ stw r24, 0x12c(r1) +/* 8019AA8C 001979EC 38 60 00 03 */ li r3, 3 +/* 8019AA90 001979F0 38 80 00 01 */ li r4, 1 +/* 8019AA94 001979F4 38 A0 00 00 */ li r5, 0 +/* 8019AA98 001979F8 38 C0 00 1E */ li r6, 0x1e +/* 8019AA9C 001979FC 38 E0 00 00 */ li r7, 0 +/* 8019AAA0 00197A00 39 00 00 7D */ li r8, 0x7d +/* 8019AAA4 00197A04 48 16 DC 29 */ bl SetTexCoordGen__3CGXF13_GXTexCoordID13_GXTexGenType12_GXTexGenSrc9_GXTexMtxUc11_GXPTTexMtx +/* 8019AAA8 00197A08 38 60 00 04 */ li r3, 4 +/* 8019AAAC 00197A0C 38 80 00 05 */ li r4, 5 +/* 8019AAB0 00197A10 38 A0 00 0F */ li r5, 0xf +/* 8019AAB4 00197A14 38 C0 00 3C */ li r6, 0x3c +/* 8019AAB8 00197A18 38 E0 00 00 */ li r7, 0 +/* 8019AABC 00197A1C 39 00 00 7D */ li r8, 0x7d +/* 8019AAC0 00197A20 48 16 DC 0D */ bl SetTexCoordGen__3CGXF13_GXTexCoordID13_GXTexGenType12_GXTexGenSrc9_GXTexMtxUc11_GXPTTexMtx +/* 8019AAC4 00197A24 3B 00 00 05 */ li r24, 5 +lbl_8019AAC8: +/* 8019AAC8 00197A28 28 1B 00 00 */ cmplwi r27, 0 +/* 8019AACC 00197A2C 41 82 01 4C */ beq lbl_8019AC18 +/* 8019AAD0 00197A30 2C 1C 00 00 */ cmpwi r28, 0 +/* 8019AAD4 00197A34 41 82 00 1C */ beq lbl_8019AAF0 +/* 8019AAD8 00197A38 C0 22 A6 DC */ lfs f1, lbl_805AC3FC@sda21(r2) +/* 8019AADC 00197A3C C0 12 01 18 */ lfs f0, 0x118(r18) +/* 8019AAE0 00197A40 C0 42 A6 E8 */ lfs f2, lbl_805AC408@sda21(r2) +/* 8019AAE4 00197A44 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8019AAE8 00197A48 EF A2 00 32 */ fmuls f29, f2, f0 +/* 8019AAEC 00197A4C 48 00 00 14 */ b lbl_8019AB00 +lbl_8019AAF0: +/* 8019AAF0 00197A50 80 6D A1 20 */ lwz r3, gpTweakGame@sda21(r13) +/* 8019AAF4 00197A54 C0 12 00 64 */ lfs f0, 0x64(r18) +/* 8019AAF8 00197A58 C0 23 00 4C */ lfs f1, 0x4c(r3) +/* 8019AAFC 00197A5C EF A1 00 32 */ fmuls f29, f1, f0 +lbl_8019AB00: +/* 8019AB00 00197A60 2C 1C 00 00 */ cmpwi r28, 0 +/* 8019AB04 00197A64 40 82 00 10 */ bne lbl_8019AB14 +/* 8019AB08 00197A68 38 61 02 50 */ addi r3, r1, 0x250 +/* 8019AB0C 00197A6C 48 1E 25 35 */ bl PSMTXIdentity +/* 8019AB10 00197A70 48 00 00 0C */ b lbl_8019AB1C +lbl_8019AB14: +/* 8019AB14 00197A74 38 61 02 50 */ addi r3, r1, 0x250 +/* 8019AB18 00197A78 48 1E 25 29 */ bl PSMTXIdentity +lbl_8019AB1C: +/* 8019AB1C 00197A7C 38 61 02 50 */ addi r3, r1, 0x250 +/* 8019AB20 00197A80 38 80 00 27 */ li r4, 0x27 +/* 8019AB24 00197A84 38 A0 00 01 */ li r5, 1 +/* 8019AB28 00197A88 48 1E 19 69 */ bl GXLoadTexMtxImm +/* 8019AB2C 00197A8C FC 20 E8 90 */ fmr f1, f29 +/* 8019AB30 00197A90 C0 62 A6 DC */ lfs f3, lbl_805AC3FC@sda21(r2) +/* 8019AB34 00197A94 FC 40 E8 50 */ fneg f2, f29 +/* 8019AB38 00197A98 38 61 02 20 */ addi r3, r1, 0x220 +/* 8019AB3C 00197A9C 48 1E 27 2D */ bl PSMTXScale +/* 8019AB40 00197AA0 C0 02 A6 E8 */ lfs f0, lbl_805AC408@sda21(r2) +/* 8019AB44 00197AA4 38 61 02 20 */ addi r3, r1, 0x220 +/* 8019AB48 00197AA8 38 80 00 40 */ li r4, 0x40 +/* 8019AB4C 00197AAC 38 A0 00 00 */ li r5, 0 +/* 8019AB50 00197AB0 D0 01 02 2C */ stfs f0, 0x22c(r1) +/* 8019AB54 00197AB4 D0 01 02 3C */ stfs f0, 0x23c(r1) +/* 8019AB58 00197AB8 48 1E 19 39 */ bl GXLoadTexMtxImm +/* 8019AB5C 00197ABC 93 01 01 34 */ stw r24, 0x134(r1) +/* 8019AB60 00197AC0 7F 0E C3 78 */ mr r14, r24 +/* 8019AB64 00197AC4 7F 03 C3 78 */ mr r3, r24 +/* 8019AB68 00197AC8 38 80 00 01 */ li r4, 1 +/* 8019AB6C 00197ACC 38 A0 00 01 */ li r5, 1 +/* 8019AB70 00197AD0 38 C0 00 27 */ li r6, 0x27 +/* 8019AB74 00197AD4 38 E0 00 01 */ li r7, 1 +/* 8019AB78 00197AD8 39 00 00 40 */ li r8, 0x40 +/* 8019AB7C 00197ADC 3B 18 00 01 */ addi r24, r24, 1 +/* 8019AB80 00197AE0 48 16 DB 4D */ bl SetTexCoordGen__3CGXF13_GXTexCoordID13_GXTexGenType12_GXTexGenSrc9_GXTexMtxUc11_GXPTTexMtx +/* 8019AB84 00197AE4 2C 1C 00 00 */ cmpwi r28, 0 +/* 8019AB88 00197AE8 C0 22 A6 E8 */ lfs f1, lbl_805AC408@sda21(r2) +/* 8019AB8C 00197AEC 39 E0 00 2A */ li r15, 0x2a +/* 8019AB90 00197AF0 41 82 00 0C */ beq lbl_8019AB9C +/* 8019AB94 00197AF4 C0 12 01 18 */ lfs f0, 0x118(r18) +/* 8019AB98 00197AF8 48 00 00 08 */ b lbl_8019ABA0 +lbl_8019AB9C: +/* 8019AB9C 00197AFC C0 02 A6 DC */ lfs f0, lbl_805AC3FC@sda21(r2) +lbl_8019ABA0: +/* 8019ABA0 00197B00 EC 21 00 32 */ fmuls f1, f1, f0 +/* 8019ABA4 00197B04 80 7F 00 80 */ lwz r3, 0x80(r31) +/* 8019ABA8 00197B08 80 1F 00 90 */ lwz r0, 0x90(r31) +/* 8019ABAC 00197B0C 38 81 00 90 */ addi r4, r1, 0x90 +/* 8019ABB0 00197B10 90 61 00 90 */ stw r3, 0x90(r1) +/* 8019ABB4 00197B14 38 60 00 01 */ li r3, 1 +/* 8019ABB8 00197B18 81 1F 00 84 */ lwz r8, 0x84(r31) +/* 8019ABBC 00197B1C FC 00 08 50 */ fneg f0, f1 +/* 8019ABC0 00197B20 90 01 00 A0 */ stw r0, 0xa0(r1) +/* 8019ABC4 00197B24 38 A0 00 01 */ li r5, 1 +/* 8019ABC8 00197B28 80 FF 00 88 */ lwz r7, 0x88(r31) +/* 8019ABCC 00197B2C 80 DF 00 8C */ lwz r6, 0x8c(r31) +/* 8019ABD0 00197B30 80 1F 00 94 */ lwz r0, 0x94(r31) +/* 8019ABD4 00197B34 91 01 00 94 */ stw r8, 0x94(r1) +/* 8019ABD8 00197B38 90 E1 00 98 */ stw r7, 0x98(r1) +/* 8019ABDC 00197B3C 90 C1 00 9C */ stw r6, 0x9c(r1) +/* 8019ABE0 00197B40 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 8019ABE4 00197B44 D0 21 00 90 */ stfs f1, 0x90(r1) +/* 8019ABE8 00197B48 D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 8019ABEC 00197B4C 48 1E 02 DD */ bl GXSetIndTexMtx +/* 8019ABF0 00197B50 38 60 00 00 */ li r3, 0 +/* 8019ABF4 00197B54 38 80 00 00 */ li r4, 0 +/* 8019ABF8 00197B58 38 A0 00 00 */ li r5, 0 +/* 8019ABFC 00197B5C 48 1E 04 2D */ bl GXSetIndTexCoordScale +/* 8019AC00 00197B60 80 A1 01 54 */ lwz r5, 0x154(r1) +/* 8019AC04 00197B64 7D C4 73 78 */ mr r4, r14 +/* 8019AC08 00197B68 38 60 00 00 */ li r3, 0 +/* 8019AC0C 00197B6C 48 1E 05 99 */ bl GXSetIndTexOrder +/* 8019AC10 00197B70 38 60 00 01 */ li r3, 1 +/* 8019AC14 00197B74 48 16 DA 7D */ bl SetNumIndStages__3CGXFUc +lbl_8019AC18: +/* 8019AC18 00197B78 2C 1C 00 00 */ cmpwi r28, 0 +/* 8019AC1C 00197B7C 41 82 01 2C */ beq lbl_8019AD48 +/* 8019AC20 00197B80 C0 76 00 10 */ lfs f3, 0x10(r22) +/* 8019AC24 00197B84 C0 56 00 04 */ lfs f2, 4(r22) +/* 8019AC28 00197B88 C0 36 00 0C */ lfs f1, 0xc(r22) +/* 8019AC2C 00197B8C C0 16 00 00 */ lfs f0, 0(r22) +/* 8019AC30 00197B90 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8019AC34 00197B94 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8019AC38 00197B98 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 8019AC3C 00197B9C FC 00 10 40 */ fcmpo cr0, f0, f2 +/* 8019AC40 00197BA0 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 8019AC44 00197BA4 40 80 00 0C */ bge lbl_8019AC50 +/* 8019AC48 00197BA8 38 61 00 28 */ addi r3, r1, 0x28 +/* 8019AC4C 00197BAC 48 00 00 08 */ b lbl_8019AC54 +lbl_8019AC50: +/* 8019AC50 00197BB0 38 61 00 2C */ addi r3, r1, 0x2c +lbl_8019AC54: +/* 8019AC54 00197BB4 C3 A3 00 00 */ lfs f29, 0(r3) +/* 8019AC58 00197BB8 7E C4 B3 78 */ mr r4, r22 +/* 8019AC5C 00197BBC C0 02 A6 DC */ lfs f0, lbl_805AC3FC@sda21(r2) +/* 8019AC60 00197BC0 38 61 00 78 */ addi r3, r1, 0x78 +/* 8019AC64 00197BC4 80 1F 00 98 */ lwz r0, 0x98(r31) +/* 8019AC68 00197BC8 EF 80 E8 24 */ fdivs f28, f0, f29 +/* 8019AC6C 00197BCC 82 1F 00 9C */ lwz r16, 0x9c(r31) +/* 8019AC70 00197BD0 90 01 01 F0 */ stw r0, 0x1f0(r1) +/* 8019AC74 00197BD4 81 DF 00 A0 */ lwz r14, 0xa0(r31) +/* 8019AC78 00197BD8 81 9F 00 A4 */ lwz r12, 0xa4(r31) +/* 8019AC7C 00197BDC 81 7F 00 A8 */ lwz r11, 0xa8(r31) +/* 8019AC80 00197BE0 81 5F 00 AC */ lwz r10, 0xac(r31) +/* 8019AC84 00197BE4 81 3F 00 B0 */ lwz r9, 0xb0(r31) +/* 8019AC88 00197BE8 81 1F 00 B4 */ lwz r8, 0xb4(r31) +/* 8019AC8C 00197BEC 80 FF 00 B8 */ lwz r7, 0xb8(r31) +/* 8019AC90 00197BF0 80 DF 00 BC */ lwz r6, 0xbc(r31) +/* 8019AC94 00197BF4 80 BF 00 C0 */ lwz r5, 0xc0(r31) +/* 8019AC98 00197BF8 80 1F 00 C4 */ lwz r0, 0xc4(r31) +/* 8019AC9C 00197BFC 92 01 01 F4 */ stw r16, 0x1f4(r1) +/* 8019ACA0 00197C00 91 C1 01 F8 */ stw r14, 0x1f8(r1) +/* 8019ACA4 00197C04 91 81 01 FC */ stw r12, 0x1fc(r1) +/* 8019ACA8 00197C08 91 61 02 00 */ stw r11, 0x200(r1) +/* 8019ACAC 00197C0C 91 41 02 04 */ stw r10, 0x204(r1) +/* 8019ACB0 00197C10 91 21 02 08 */ stw r9, 0x208(r1) +/* 8019ACB4 00197C14 91 01 02 0C */ stw r8, 0x20c(r1) +/* 8019ACB8 00197C18 90 E1 02 10 */ stw r7, 0x210(r1) +/* 8019ACBC 00197C1C 90 C1 02 14 */ stw r6, 0x214(r1) +/* 8019ACC0 00197C20 90 A1 02 18 */ stw r5, 0x218(r1) +/* 8019ACC4 00197C24 90 01 02 1C */ stw r0, 0x21c(r1) +/* 8019ACC8 00197C28 D3 81 01 F0 */ stfs f28, 0x1f0(r1) +/* 8019ACCC 00197C2C 48 19 C9 41 */ bl GetCenterPoint__6CAABoxCFv +/* 8019ACD0 00197C30 C0 01 00 78 */ lfs f0, 0x78(r1) +/* 8019ACD4 00197C34 7E C4 B3 78 */ mr r4, r22 +/* 8019ACD8 00197C38 C0 22 A6 E8 */ lfs f1, lbl_805AC408@sda21(r2) +/* 8019ACDC 00197C3C 38 61 00 6C */ addi r3, r1, 0x6c +/* 8019ACE0 00197C40 FC 00 00 50 */ fneg f0, f0 +/* 8019ACE4 00197C44 D3 81 02 04 */ stfs f28, 0x204(r1) +/* 8019ACE8 00197C48 EC 00 E8 24 */ fdivs f0, f0, f29 +/* 8019ACEC 00197C4C EC 01 00 2A */ fadds f0, f1, f0 +/* 8019ACF0 00197C50 D0 01 01 FC */ stfs f0, 0x1fc(r1) +/* 8019ACF4 00197C54 48 19 C9 19 */ bl GetCenterPoint__6CAABoxCFv +/* 8019ACF8 00197C58 C0 01 00 70 */ lfs f0, 0x70(r1) +/* 8019ACFC 00197C5C 7D E4 7B 78 */ mr r4, r15 +/* 8019AD00 00197C60 C0 22 A6 E8 */ lfs f1, lbl_805AC408@sda21(r2) +/* 8019AD04 00197C64 38 61 01 F0 */ addi r3, r1, 0x1f0 +/* 8019AD08 00197C68 FC 00 00 50 */ fneg f0, f0 +/* 8019AD0C 00197C6C 38 A0 00 01 */ li r5, 1 +/* 8019AD10 00197C70 EC 00 E8 24 */ fdivs f0, f0, f29 +/* 8019AD14 00197C74 EC 01 00 2A */ fadds f0, f1, f0 +/* 8019AD18 00197C78 D0 01 02 0C */ stfs f0, 0x20c(r1) +/* 8019AD1C 00197C7C 48 1E 17 75 */ bl GXLoadTexMtxImm +/* 8019AD20 00197C80 93 01 01 30 */ stw r24, 0x130(r1) +/* 8019AD24 00197C84 7F 03 C3 78 */ mr r3, r24 +/* 8019AD28 00197C88 7D E6 7B 78 */ mr r6, r15 +/* 8019AD2C 00197C8C 38 80 00 01 */ li r4, 1 +/* 8019AD30 00197C90 38 A0 00 00 */ li r5, 0 +/* 8019AD34 00197C94 38 E0 00 00 */ li r7, 0 +/* 8019AD38 00197C98 39 00 00 7D */ li r8, 0x7d +/* 8019AD3C 00197C9C 3B 18 00 01 */ addi r24, r24, 1 +/* 8019AD40 00197CA0 48 16 D9 8D */ bl SetTexCoordGen__3CGXF13_GXTexCoordID13_GXTexGenType12_GXTexGenSrc9_GXTexMtxUc11_GXPTTexMtx +/* 8019AD44 00197CA4 39 EF 00 03 */ addi r15, r15, 3 +lbl_8019AD48: +/* 8019AD48 00197CA8 28 1D 00 00 */ cmplwi r29, 0 +/* 8019AD4C 00197CAC 41 82 02 5C */ beq lbl_8019AFA8 +/* 8019AD50 00197CB0 80 F3 08 CC */ lwz r7, 0x8cc(r19) +/* 8019AD54 00197CB4 7E E3 BB 78 */ mr r3, r23 +/* 8019AD58 00197CB8 80 D3 08 50 */ lwz r6, 0x850(r19) +/* 8019AD5C 00197CBC 7E 64 9B 78 */ mr r4, r19 +/* 8019AD60 00197CC0 54 E5 18 38 */ slwi r5, r7, 3 +/* 8019AD64 00197CC4 90 E1 00 20 */ stw r7, 0x20(r1) +/* 8019AD68 00197CC8 80 C6 00 20 */ lwz r6, 0x20(r6) +/* 8019AD6C 00197CCC 38 05 00 04 */ addi r0, r5, 4 +/* 8019AD70 00197CD0 90 E1 00 24 */ stw r7, 0x24(r1) +/* 8019AD74 00197CD4 7C A6 00 2E */ lwzx r5, r6, r0 +/* 8019AD78 00197CD8 C3 82 A6 DC */ lfs f28, lbl_805AC3FC@sda21(r2) +/* 8019AD7C 00197CDC 80 A5 01 2C */ lwz r5, 0x12c(r5) +/* 8019AD80 00197CE0 C3 A5 11 28 */ lfs f29, 0x1128(r5) +/* 8019AD84 00197CE4 4B F6 5B E9 */ bl GetNextConnectedWater__12CScriptWaterFR13CStateManager +/* 8019AD88 00197CE8 C0 57 01 F8 */ lfs f2, 0x1f8(r23) +/* 8019AD8C 00197CEC 7C 6E 1B 78 */ mr r14, r3 +/* 8019AD90 00197CF0 C0 22 A6 E0 */ lfs f1, lbl_805AC400@sda21(r2) +/* 8019AD94 00197CF4 C0 02 A7 00 */ lfs f0, lbl_805AC420@sda21(r2) +/* 8019AD98 00197CF8 EC 22 08 28 */ fsubs f1, f2, f1 +/* 8019AD9C 00197CFC FC 20 0A 10 */ fabs f1, f1 +/* 8019ADA0 00197D00 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8019ADA4 00197D04 41 80 00 20 */ blt lbl_8019ADC4 +/* 8019ADA8 00197D08 28 0E 00 00 */ cmplwi r14, 0 +/* 8019ADAC 00197D0C 41 82 00 18 */ beq lbl_8019ADC4 +/* 8019ADB0 00197D10 41 82 00 68 */ beq lbl_8019AE18 +/* 8019ADB4 00197D14 80 6E 01 B4 */ lwz r3, 0x1b4(r14) +/* 8019ADB8 00197D18 88 03 00 EC */ lbz r0, 0xec(r3) +/* 8019ADBC 00197D1C 28 00 00 00 */ cmplwi r0, 0 +/* 8019ADC0 00197D20 40 82 00 58 */ bne lbl_8019AE18 +lbl_8019ADC4: +/* 8019ADC4 00197D24 93 21 01 58 */ stw r25, 0x158(r1) +/* 8019ADC8 00197D28 7F 24 CB 78 */ mr r4, r25 +/* 8019ADCC 00197D2C 80 72 00 E8 */ lwz r3, 0xe8(r18) +/* 8019ADD0 00197D30 38 A0 00 01 */ li r5, 1 +/* 8019ADD4 00197D34 48 17 49 69 */ bl Load__8CTextureCF11_GXTexMapIDQ28CTexture10EClampMode +/* 8019ADD8 00197D38 7E 43 93 78 */ mr r3, r18 +/* 8019ADDC 00197D3C 7E A4 AB 78 */ mr r4, r21 +/* 8019ADE0 00197D40 7E 85 A3 78 */ mr r5, r20 +/* 8019ADE4 00197D44 7E C6 B3 78 */ mr r6, r22 +/* 8019ADE8 00197D48 7D E7 7B 78 */ mr r7, r15 +/* 8019ADEC 00197D4C 48 00 0C 15 */ bl CalculateLightmapMtx__14CFluidPlaneCPUFRC12CTransform4fRC12CTransform4fRC6CAABoxi +/* 8019ADF0 00197D50 93 01 01 38 */ stw r24, 0x138(r1) +/* 8019ADF4 00197D54 7F 03 C3 78 */ mr r3, r24 +/* 8019ADF8 00197D58 7D E6 7B 78 */ mr r6, r15 +/* 8019ADFC 00197D5C 38 80 00 01 */ li r4, 1 +/* 8019AE00 00197D60 38 A0 00 00 */ li r5, 0 +/* 8019AE04 00197D64 38 E0 00 00 */ li r7, 0 +/* 8019AE08 00197D68 39 00 00 7D */ li r8, 0x7d +/* 8019AE0C 00197D6C 3B 18 00 01 */ addi r24, r24, 1 +/* 8019AE10 00197D70 48 16 D8 BD */ bl SetTexCoordGen__3CGXF13_GXTexCoordID13_GXTexGenType12_GXTexGenSrc9_GXTexMtxUc11_GXPTTexMtx +/* 8019AE14 00197D74 48 00 01 6C */ b lbl_8019AF80 +lbl_8019AE18: +/* 8019AE18 00197D78 28 0E 00 00 */ cmplwi r14, 0 +/* 8019AE1C 00197D7C 41 82 01 64 */ beq lbl_8019AF80 +/* 8019AE20 00197D80 80 6E 01 B4 */ lwz r3, 0x1b4(r14) +/* 8019AE24 00197D84 88 03 00 EC */ lbz r0, 0xec(r3) +/* 8019AE28 00197D88 28 00 00 00 */ cmplwi r0, 0 +/* 8019AE2C 00197D8C 41 82 01 54 */ beq lbl_8019AF80 +/* 8019AE30 00197D90 C0 57 01 F8 */ lfs f2, 0x1f8(r23) +/* 8019AE34 00197D94 C0 22 A6 DC */ lfs f1, lbl_805AC3FC@sda21(r2) +/* 8019AE38 00197D98 C0 02 A7 00 */ lfs f0, lbl_805AC420@sda21(r2) +/* 8019AE3C 00197D9C EC 22 08 28 */ fsubs f1, f2, f1 +/* 8019AE40 00197DA0 FC 20 0A 10 */ fabs f1, f1 +/* 8019AE44 00197DA4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8019AE48 00197DA8 40 80 00 58 */ bge lbl_8019AEA0 +/* 8019AE4C 00197DAC 93 21 01 58 */ stw r25, 0x158(r1) +/* 8019AE50 00197DB0 7F 24 CB 78 */ mr r4, r25 +/* 8019AE54 00197DB4 80 63 00 E8 */ lwz r3, 0xe8(r3) +/* 8019AE58 00197DB8 38 A0 00 01 */ li r5, 1 +/* 8019AE5C 00197DBC 48 17 48 E1 */ bl Load__8CTextureCF11_GXTexMapIDQ28CTexture10EClampMode +/* 8019AE60 00197DC0 80 6E 01 B4 */ lwz r3, 0x1b4(r14) +/* 8019AE64 00197DC4 7E A4 AB 78 */ mr r4, r21 +/* 8019AE68 00197DC8 7E 85 A3 78 */ mr r5, r20 +/* 8019AE6C 00197DCC 7E C6 B3 78 */ mr r6, r22 +/* 8019AE70 00197DD0 7D E7 7B 78 */ mr r7, r15 +/* 8019AE74 00197DD4 48 00 0B 8D */ bl CalculateLightmapMtx__14CFluidPlaneCPUFRC12CTransform4fRC12CTransform4fRC6CAABoxi +/* 8019AE78 00197DD8 93 01 01 38 */ stw r24, 0x138(r1) +/* 8019AE7C 00197DDC 7F 03 C3 78 */ mr r3, r24 +/* 8019AE80 00197DE0 7D E6 7B 78 */ mr r6, r15 +/* 8019AE84 00197DE4 38 80 00 01 */ li r4, 1 +/* 8019AE88 00197DE8 38 A0 00 00 */ li r5, 0 +/* 8019AE8C 00197DEC 38 E0 00 00 */ li r7, 0 +/* 8019AE90 00197DF0 39 00 00 7D */ li r8, 0x7d +/* 8019AE94 00197DF4 3B 18 00 01 */ addi r24, r24, 1 +/* 8019AE98 00197DF8 48 16 D8 35 */ bl SetTexCoordGen__3CGXF13_GXTexCoordID13_GXTexGenType12_GXTexGenSrc9_GXTexMtxUc11_GXPTTexMtx +/* 8019AE9C 00197DFC 48 00 00 E4 */ b lbl_8019AF80 +lbl_8019AEA0: +/* 8019AEA0 00197E00 93 21 01 58 */ stw r25, 0x158(r1) +/* 8019AEA4 00197E04 7F 24 CB 78 */ mr r4, r25 +/* 8019AEA8 00197E08 80 72 00 E8 */ lwz r3, 0xe8(r18) +/* 8019AEAC 00197E0C 38 A0 00 01 */ li r5, 1 +/* 8019AEB0 00197E10 3B 39 00 01 */ addi r25, r25, 1 +/* 8019AEB4 00197E14 48 17 48 89 */ bl Load__8CTextureCF11_GXTexMapIDQ28CTexture10EClampMode +/* 8019AEB8 00197E18 7E 43 93 78 */ mr r3, r18 +/* 8019AEBC 00197E1C 7E A4 AB 78 */ mr r4, r21 +/* 8019AEC0 00197E20 7E 85 A3 78 */ mr r5, r20 +/* 8019AEC4 00197E24 7E C6 B3 78 */ mr r6, r22 +/* 8019AEC8 00197E28 7D E7 7B 78 */ mr r7, r15 +/* 8019AECC 00197E2C 48 00 0B 35 */ bl CalculateLightmapMtx__14CFluidPlaneCPUFRC12CTransform4fRC12CTransform4fRC6CAABoxi +/* 8019AED0 00197E30 93 01 01 38 */ stw r24, 0x138(r1) +/* 8019AED4 00197E34 7F 03 C3 78 */ mr r3, r24 +/* 8019AED8 00197E38 7D E6 7B 78 */ mr r6, r15 +/* 8019AEDC 00197E3C 38 80 00 01 */ li r4, 1 +/* 8019AEE0 00197E40 38 A0 00 00 */ li r5, 0 +/* 8019AEE4 00197E44 38 E0 00 00 */ li r7, 0 +/* 8019AEE8 00197E48 39 00 00 7D */ li r8, 0x7d +/* 8019AEEC 00197E4C 3B 18 00 01 */ addi r24, r24, 1 +/* 8019AEF0 00197E50 48 16 D7 DD */ bl SetTexCoordGen__3CGXF13_GXTexCoordID13_GXTexGenType12_GXTexGenSrc9_GXTexMtxUc11_GXPTTexMtx +/* 8019AEF4 00197E54 80 6E 01 B4 */ lwz r3, 0x1b4(r14) +/* 8019AEF8 00197E58 7F 24 CB 78 */ mr r4, r25 +/* 8019AEFC 00197E5C 93 21 01 5C */ stw r25, 0x15c(r1) +/* 8019AF00 00197E60 38 A0 00 01 */ li r5, 1 +/* 8019AF04 00197E64 80 63 00 E8 */ lwz r3, 0xe8(r3) +/* 8019AF08 00197E68 48 17 48 35 */ bl Load__8CTextureCF11_GXTexMapIDQ28CTexture10EClampMode +/* 8019AF0C 00197E6C 80 6E 01 B4 */ lwz r3, 0x1b4(r14) +/* 8019AF10 00197E70 7E A4 AB 78 */ mr r4, r21 +/* 8019AF14 00197E74 7E 85 A3 78 */ mr r5, r20 +/* 8019AF18 00197E78 7E C6 B3 78 */ mr r6, r22 +/* 8019AF1C 00197E7C 38 EF 00 03 */ addi r7, r15, 3 +/* 8019AF20 00197E80 48 00 0A E1 */ bl CalculateLightmapMtx__14CFluidPlaneCPUFRC12CTransform4fRC12CTransform4fRC6CAABoxi +/* 8019AF24 00197E84 93 01 01 3C */ stw r24, 0x13c(r1) +/* 8019AF28 00197E88 7F 03 C3 78 */ mr r3, r24 +/* 8019AF2C 00197E8C 38 CF 00 03 */ addi r6, r15, 3 +/* 8019AF30 00197E90 38 80 00 01 */ li r4, 1 +/* 8019AF34 00197E94 38 A0 00 00 */ li r5, 0 +/* 8019AF38 00197E98 38 E0 00 00 */ li r7, 0 +/* 8019AF3C 00197E9C 39 00 00 7D */ li r8, 0x7d +/* 8019AF40 00197EA0 3B 18 00 01 */ addi r24, r24, 1 +/* 8019AF44 00197EA4 48 16 D7 89 */ bl SetTexCoordGen__3CGXF13_GXTexCoordID13_GXTexGenType12_GXTexGenSrc9_GXTexMtxUc11_GXPTTexMtx +/* 8019AF48 00197EA8 C0 17 01 F8 */ lfs f0, 0x1f8(r23) +/* 8019AF4C 00197EAC 38 61 00 1C */ addi r3, r1, 0x1c +/* 8019AF50 00197EB0 C0 82 A6 DC */ lfs f4, lbl_805AC3FC@sda21(r2) +/* 8019AF54 00197EB4 EC 3D 00 32 */ fmuls f1, f29, f0 +/* 8019AF58 00197EB8 EC 64 00 28 */ fsubs f3, f4, f0 +/* 8019AF5C 00197EBC EC 04 08 28 */ fsubs f0, f4, f1 +/* 8019AF60 00197EC0 FC 40 08 90 */ fmr f2, f1 +/* 8019AF64 00197EC4 EF 83 00 24 */ fdivs f28, f3, f0 +/* 8019AF68 00197EC8 FC 60 08 90 */ fmr f3, f1 +/* 8019AF6C 00197ECC 48 1C 84 81 */ bl __ct__6CColorFffff +/* 8019AF70 00197ED0 7C 64 1B 78 */ mr r4, r3 +/* 8019AF74 00197ED4 38 60 00 03 */ li r3, 3 +/* 8019AF78 00197ED8 48 16 DC CD */ bl SetTevKColor__3CGXF14_GXTevKColorIDRC8_GXColor +/* 8019AF7C 00197EDC 3B 40 00 01 */ li r26, 1 +lbl_8019AF80: +/* 8019AF80 00197EE0 EF 9C 07 72 */ fmuls f28, f28, f29 +/* 8019AF84 00197EE4 C0 82 A6 DC */ lfs f4, lbl_805AC3FC@sda21(r2) +/* 8019AF88 00197EE8 38 61 00 18 */ addi r3, r1, 0x18 +/* 8019AF8C 00197EEC FC 20 E0 90 */ fmr f1, f28 +/* 8019AF90 00197EF0 FC 40 E0 90 */ fmr f2, f28 +/* 8019AF94 00197EF4 FC 60 E0 90 */ fmr f3, f28 +/* 8019AF98 00197EF8 48 1C 84 55 */ bl __ct__6CColorFffff +/* 8019AF9C 00197EFC 7C 64 1B 78 */ mr r4, r3 +/* 8019AFA0 00197F00 38 60 00 02 */ li r3, 2 +/* 8019AFA4 00197F04 48 16 DC A1 */ bl SetTevKColor__3CGXF14_GXTevKColorIDRC8_GXColor +lbl_8019AFA8: +/* 8019AFA8 00197F08 C0 22 A6 E0 */ lfs f1, lbl_805AC400@sda21(r2) +/* 8019AFAC 00197F0C 7E 84 A3 78 */ mr r4, r20 +/* 8019AFB0 00197F10 C0 02 A6 DC */ lfs f0, lbl_805AC3FC@sda21(r2) +/* 8019AFB4 00197F14 38 61 00 60 */ addi r3, r1, 0x60 +/* 8019AFB8 00197F18 D0 21 00 54 */ stfs f1, 0x54(r1) +/* 8019AFBC 00197F1C 38 A1 00 54 */ addi r5, r1, 0x54 +/* 8019AFC0 00197F20 D0 21 00 58 */ stfs f1, 0x58(r1) +/* 8019AFC4 00197F24 D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 8019AFC8 00197F28 48 17 7A 5D */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 8019AFCC 00197F2C C0 22 A6 E0 */ lfs f1, lbl_805AC400@sda21(r2) +/* 8019AFD0 00197F30 3C 60 80 5A */ lis r3, lbl_805A61D4@ha +/* 8019AFD4 00197F34 C0 02 A6 DC */ lfs f0, lbl_805AC3FC@sda21(r2) +/* 8019AFD8 00197F38 38 83 61 D4 */ addi r4, r3, lbl_805A61D4@l +/* 8019AFDC 00197F3C D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 8019AFE0 00197F40 38 61 01 60 */ addi r3, r1, 0x160 +/* 8019AFE4 00197F44 C3 A1 00 60 */ lfs f29, 0x60(r1) +/* 8019AFE8 00197F48 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 8019AFEC 00197F4C C3 C1 00 64 */ lfs f30, 0x64(r1) +/* 8019AFF0 00197F50 D0 21 00 44 */ stfs f1, 0x44(r1) +/* 8019AFF4 00197F54 C3 81 00 68 */ lfs f28, 0x68(r1) +/* 8019AFF8 00197F58 48 17 7C A5 */ bl GetQuickInverse__12CTransform4fCFv +/* 8019AFFC 00197F5C 38 61 00 48 */ addi r3, r1, 0x48 +/* 8019B000 00197F60 38 81 01 60 */ addi r4, r1, 0x160 +/* 8019B004 00197F64 38 A1 00 3C */ addi r5, r1, 0x3c +/* 8019B008 00197F68 48 17 7A 1D */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 8019B00C 00197F6C C0 01 00 4C */ lfs f0, 0x4c(r1) +/* 8019B010 00197F70 C0 41 00 48 */ lfs f2, 0x48(r1) +/* 8019B014 00197F74 EC 3E 00 32 */ fmuls f1, f30, f0 +/* 8019B018 00197F78 C0 61 00 50 */ lfs f3, 0x50(r1) +/* 8019B01C 00197F7C C0 02 A6 E0 */ lfs f0, lbl_805AC400@sda21(r2) +/* 8019B020 00197F80 EC 3D 08 BA */ fmadds f1, f29, f2, f1 +/* 8019B024 00197F84 EC 3C 08 FA */ fmadds f1, f28, f3, f1 +/* 8019B028 00197F88 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8019B02C 00197F8C 40 80 00 08 */ bge lbl_8019B034 +/* 8019B030 00197F90 FC 20 08 50 */ fneg f1, f1 +lbl_8019B034: +/* 8019B034 00197F94 C0 82 A6 DC */ lfs f4, lbl_805AC3FC@sda21(r2) +/* 8019B038 00197F98 2C 1C 00 02 */ cmpwi r28, 2 +/* 8019B03C 00197F9C C0 52 01 0C */ lfs f2, 0x10c(r18) +/* 8019B040 00197FA0 38 61 00 14 */ addi r3, r1, 0x14 +/* 8019B044 00197FA4 C0 12 01 10 */ lfs f0, 0x110(r18) +/* 8019B048 00197FA8 EC 24 08 28 */ fsubs f1, f4, f1 +/* 8019B04C 00197FAC EC 00 10 28 */ fsubs f0, f0, f2 +/* 8019B050 00197FB0 EC 21 10 3A */ fmadds f1, f1, f0, f2 +/* 8019B054 00197FB4 FC 40 08 90 */ fmr f2, f1 +/* 8019B058 00197FB8 FC 60 08 90 */ fmr f3, f1 +/* 8019B05C 00197FBC 40 82 00 08 */ bne lbl_8019B064 +/* 8019B060 00197FC0 48 00 00 08 */ b lbl_8019B068 +lbl_8019B064: +/* 8019B064 00197FC4 FC 80 F8 90 */ fmr f4, f31 +lbl_8019B068: +/* 8019B068 00197FC8 48 1C 83 85 */ bl __ct__6CColorFffff +/* 8019B06C 00197FCC 7C 64 1B 78 */ mr r4, r3 +/* 8019B070 00197FD0 38 60 00 00 */ li r3, 0 +/* 8019B074 00197FD4 48 16 DB D1 */ bl SetTevKColor__3CGXF14_GXTevKColorIDRC8_GXColor +/* 8019B078 00197FD8 C0 32 01 14 */ lfs f1, 0x114(r18) +/* 8019B07C 00197FDC 38 61 00 10 */ addi r3, r1, 0x10 +/* 8019B080 00197FE0 C0 82 A6 DC */ lfs f4, lbl_805AC3FC@sda21(r2) +/* 8019B084 00197FE4 FC 40 08 90 */ fmr f2, f1 +/* 8019B088 00197FE8 FC 60 08 90 */ fmr f3, f1 +/* 8019B08C 00197FEC 48 1C 83 61 */ bl __ct__6CColorFffff +/* 8019B090 00197FF0 7C 64 1B 78 */ mr r4, r3 +/* 8019B094 00197FF4 38 60 00 01 */ li r3, 1 +/* 8019B098 00197FF8 48 16 DB AD */ bl SetTevKColor__3CGXF14_GXTevKColorIDRC8_GXColor +/* 8019B09C 00197FFC 57 03 06 3E */ clrlwi r3, r24, 0x18 +/* 8019B0A0 00198000 48 16 DD 75 */ bl SetNumTexGens__3CGXFUc +/* 8019B0A4 00198004 80 12 00 44 */ lwz r0, 0x44(r18) +/* 8019B0A8 00198008 39 C0 00 00 */ li r14, 0 +/* 8019B0AC 0019800C 2C 00 00 02 */ cmpwi r0, 2 +/* 8019B0B0 00198010 41 82 05 0C */ beq lbl_8019B5BC +/* 8019B0B4 00198014 40 80 00 14 */ bge lbl_8019B0C8 +/* 8019B0B8 00198018 2C 00 00 00 */ cmpwi r0, 0 +/* 8019B0BC 0019801C 41 82 00 18 */ beq lbl_8019B0D4 +/* 8019B0C0 00198020 40 80 02 EC */ bge lbl_8019B3AC +/* 8019B0C4 00198024 48 00 08 10 */ b lbl_8019B8D4 +lbl_8019B0C8: +/* 8019B0C8 00198028 2C 00 00 05 */ cmpwi r0, 5 +/* 8019B0CC 0019802C 41 82 06 C8 */ beq lbl_8019B794 +/* 8019B0D0 00198030 40 80 08 04 */ bge lbl_8019B8D4 +lbl_8019B0D4: +/* 8019B0D4 00198034 28 1D 00 00 */ cmplwi r29, 0 +/* 8019B0D8 00198038 41 82 00 D4 */ beq lbl_8019B1AC +/* 8019B0DC 0019803C 57 40 06 3F */ clrlwi. r0, r26, 0x18 +/* 8019B0E0 00198040 80 81 01 38 */ lwz r4, 0x138(r1) +/* 8019B0E4 00198044 80 A1 01 58 */ lwz r5, 0x158(r1) +/* 8019B0E8 00198048 38 60 00 00 */ li r3, 0 +/* 8019B0EC 0019804C 38 C0 00 05 */ li r6, 5 +/* 8019B0F0 00198050 41 82 00 08 */ beq lbl_8019B0F8 +/* 8019B0F4 00198054 38 C0 00 FF */ li r6, 0xff +lbl_8019B0F8: +/* 8019B0F8 00198058 48 16 D8 55 */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 8019B0FC 0019805C 57 40 06 3F */ clrlwi. r0, r26, 0x18 +/* 8019B100 00198060 38 60 00 00 */ li r3, 0 +/* 8019B104 00198064 38 80 00 0F */ li r4, 0xf +/* 8019B108 00198068 38 A0 00 08 */ li r5, 8 +/* 8019B10C 0019806C 38 C0 00 0E */ li r6, 0xe +/* 8019B110 00198070 38 E0 00 0A */ li r7, 0xa +/* 8019B114 00198074 41 82 00 08 */ beq lbl_8019B11C +/* 8019B118 00198078 38 E0 00 0F */ li r7, 0xf +lbl_8019B11C: +/* 8019B11C 0019807C 48 16 DA D1 */ bl SetTevColorIn__3CGXF13_GXTevStageID14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg +/* 8019B120 00198080 38 60 00 00 */ li r3, 0 +/* 8019B124 00198084 38 80 00 00 */ li r4, 0 +/* 8019B128 00198088 38 A0 00 00 */ li r5, 0 +/* 8019B12C 0019808C 38 C0 00 00 */ li r6, 0 +/* 8019B130 00198090 38 E0 00 01 */ li r7, 1 +/* 8019B134 00198094 39 00 00 03 */ li r8, 3 +/* 8019B138 00198098 48 16 DA 01 */ bl SetTevColorOp__3CGXF13_GXTevStageID8_GXTevOp10_GXTevBias11_GXTevScaleUc11_GXTevRegID +/* 8019B13C 0019809C 38 60 00 00 */ li r3, 0 +/* 8019B140 001980A0 38 80 00 0E */ li r4, 0xe +/* 8019B144 001980A4 48 16 D8 9D */ bl SetTevKColorSel__3CGXF13_GXTevStageID15_GXTevKColorSel +/* 8019B148 001980A8 57 40 06 3F */ clrlwi. r0, r26, 0x18 +/* 8019B14C 001980AC 39 C0 00 01 */ li r14, 1 +/* 8019B150 001980B0 41 82 00 5C */ beq lbl_8019B1AC +/* 8019B154 001980B4 80 81 01 3C */ lwz r4, 0x13c(r1) +/* 8019B158 001980B8 38 60 00 01 */ li r3, 1 +/* 8019B15C 001980BC 80 A1 01 5C */ lwz r5, 0x15c(r1) +/* 8019B160 001980C0 38 C0 00 05 */ li r6, 5 +/* 8019B164 001980C4 48 16 D7 E9 */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 8019B168 001980C8 38 60 00 01 */ li r3, 1 +/* 8019B16C 001980CC 38 80 00 06 */ li r4, 6 +/* 8019B170 001980D0 38 A0 00 08 */ li r5, 8 +/* 8019B174 001980D4 38 C0 00 0E */ li r6, 0xe +/* 8019B178 001980D8 38 E0 00 0A */ li r7, 0xa +/* 8019B17C 001980DC 48 16 DA 71 */ bl SetTevColorIn__3CGXF13_GXTevStageID14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg +/* 8019B180 001980E0 38 60 00 01 */ li r3, 1 +/* 8019B184 001980E4 38 80 00 00 */ li r4, 0 +/* 8019B188 001980E8 38 A0 00 00 */ li r5, 0 +/* 8019B18C 001980EC 38 C0 00 00 */ li r6, 0 +/* 8019B190 001980F0 38 E0 00 01 */ li r7, 1 +/* 8019B194 001980F4 39 00 00 03 */ li r8, 3 +/* 8019B198 001980F8 48 16 D9 A1 */ bl SetTevColorOp__3CGXF13_GXTevStageID8_GXTevOp10_GXTevBias11_GXTevScaleUc11_GXTevRegID +/* 8019B19C 001980FC 38 60 00 01 */ li r3, 1 +/* 8019B1A0 00198100 38 80 00 0F */ li r4, 0xf +/* 8019B1A4 00198104 48 16 D8 3D */ bl SetTevKColorSel__3CGXF13_GXTevStageID15_GXTevKColorSel +/* 8019B1A8 00198108 39 C0 00 02 */ li r14, 2 +lbl_8019B1AC: +/* 8019B1AC 0019810C 80 81 01 20 */ lwz r4, 0x120(r1) +/* 8019B1B0 00198110 7D C3 73 78 */ mr r3, r14 +/* 8019B1B4 00198114 80 A1 01 40 */ lwz r5, 0x140(r1) +/* 8019B1B8 00198118 38 C0 00 05 */ li r6, 5 +/* 8019B1BC 0019811C 48 16 D7 91 */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 8019B1C0 00198120 7D C3 73 78 */ mr r3, r14 +/* 8019B1C4 00198124 38 80 00 0F */ li r4, 0xf +/* 8019B1C8 00198128 38 A0 00 08 */ li r5, 8 +/* 8019B1CC 0019812C 38 C0 00 0E */ li r6, 0xe +/* 8019B1D0 00198130 38 E0 00 0A */ li r7, 0xa +/* 8019B1D4 00198134 48 16 DA 19 */ bl SetTevColorIn__3CGXF13_GXTevStageID14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg +/* 8019B1D8 00198138 7D C3 73 78 */ mr r3, r14 +/* 8019B1DC 0019813C 38 80 00 00 */ li r4, 0 +/* 8019B1E0 00198140 38 A0 00 00 */ li r5, 0 +/* 8019B1E4 00198144 38 C0 00 00 */ li r6, 0 +/* 8019B1E8 00198148 38 E0 00 01 */ li r7, 1 +/* 8019B1EC 0019814C 39 00 00 00 */ li r8, 0 +/* 8019B1F0 00198150 48 16 D9 49 */ bl SetTevColorOp__3CGXF13_GXTevStageID8_GXTevOp10_GXTevBias11_GXTevScaleUc11_GXTevRegID +/* 8019B1F4 00198154 7D C3 73 78 */ mr r3, r14 +/* 8019B1F8 00198158 38 80 00 0C */ li r4, 0xc +/* 8019B1FC 0019815C 48 16 D7 E5 */ bl SetTevKColorSel__3CGXF13_GXTevStageID15_GXTevKColorSel +/* 8019B200 00198160 39 CE 00 01 */ addi r14, r14, 1 +/* 8019B204 00198164 80 81 01 24 */ lwz r4, 0x124(r1) +/* 8019B208 00198168 80 A1 01 44 */ lwz r5, 0x144(r1) +/* 8019B20C 0019816C 7D C3 73 78 */ mr r3, r14 +/* 8019B210 00198170 38 C0 00 04 */ li r6, 4 +/* 8019B214 00198174 48 16 D7 39 */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 8019B218 00198178 7D C3 73 78 */ mr r3, r14 +/* 8019B21C 0019817C 38 80 00 0F */ li r4, 0xf +/* 8019B220 00198180 38 A0 00 08 */ li r5, 8 +/* 8019B224 00198184 38 C0 00 00 */ li r6, 0 +/* 8019B228 00198188 38 E0 00 0A */ li r7, 0xa +/* 8019B22C 0019818C 48 16 D9 C1 */ bl SetTevColorIn__3CGXF13_GXTevStageID14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg +/* 8019B230 00198190 7D C3 73 78 */ mr r3, r14 +/* 8019B234 00198194 38 80 00 00 */ li r4, 0 +/* 8019B238 00198198 38 A0 00 00 */ li r5, 0 +/* 8019B23C 0019819C 38 C0 00 00 */ li r6, 0 +/* 8019B240 001981A0 38 E0 00 01 */ li r7, 1 +/* 8019B244 001981A4 39 00 00 00 */ li r8, 0 +/* 8019B248 001981A8 48 16 D8 F1 */ bl SetTevColorOp__3CGXF13_GXTevStageID8_GXTevOp10_GXTevBias11_GXTevScaleUc11_GXTevRegID +/* 8019B24C 001981AC 39 CE 00 01 */ addi r14, r14, 1 +/* 8019B250 001981B0 80 81 01 28 */ lwz r4, 0x128(r1) +/* 8019B254 001981B4 80 A1 01 48 */ lwz r5, 0x148(r1) +/* 8019B258 001981B8 7D C3 73 78 */ mr r3, r14 +/* 8019B25C 001981BC 38 C0 00 05 */ li r6, 5 +/* 8019B260 001981C0 48 16 D6 ED */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 8019B264 001981C4 28 1D 00 00 */ cmplwi r29, 0 +/* 8019B268 001981C8 7D C3 73 78 */ mr r3, r14 +/* 8019B26C 001981CC 38 80 00 0F */ li r4, 0xf +/* 8019B270 001981D0 38 A0 00 08 */ li r5, 8 +/* 8019B274 001981D4 38 C0 00 0A */ li r6, 0xa +/* 8019B278 001981D8 41 82 00 08 */ beq lbl_8019B280 +/* 8019B27C 001981DC 38 C0 00 06 */ li r6, 6 +lbl_8019B280: +/* 8019B280 001981E0 38 E0 00 00 */ li r7, 0 +/* 8019B284 001981E4 48 16 D9 69 */ bl SetTevColorIn__3CGXF13_GXTevStageID14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg +/* 8019B288 001981E8 7D C3 73 78 */ mr r3, r14 +/* 8019B28C 001981EC 38 80 00 00 */ li r4, 0 +/* 8019B290 001981F0 38 A0 00 00 */ li r5, 0 +/* 8019B294 001981F4 38 C0 00 00 */ li r6, 0 +/* 8019B298 001981F8 38 E0 00 01 */ li r7, 1 +/* 8019B29C 001981FC 39 00 00 00 */ li r8, 0 +/* 8019B2A0 00198200 48 16 D8 99 */ bl SetTevColorOp__3CGXF13_GXTevStageID8_GXTevOp10_GXTevBias11_GXTevScaleUc11_GXTevRegID +/* 8019B2A4 00198204 2C 1C 00 00 */ cmpwi r28, 0 +/* 8019B2A8 00198208 40 82 00 3C */ bne lbl_8019B2E4 +/* 8019B2AC 0019820C 28 1B 00 00 */ cmplwi r27, 0 +/* 8019B2B0 00198210 41 82 00 34 */ beq lbl_8019B2E4 +/* 8019B2B4 00198214 38 00 00 00 */ li r0, 0 +/* 8019B2B8 00198218 7D C3 73 78 */ mr r3, r14 +/* 8019B2BC 0019821C 90 01 00 08 */ stw r0, 8(r1) +/* 8019B2C0 00198220 38 80 00 00 */ li r4, 0 +/* 8019B2C4 00198224 38 A0 00 00 */ li r5, 0 +/* 8019B2C8 00198228 38 C0 00 07 */ li r6, 7 +/* 8019B2CC 0019822C 90 01 00 0C */ stw r0, 0xc(r1) +/* 8019B2D0 00198230 38 E0 00 01 */ li r7, 1 +/* 8019B2D4 00198234 39 00 00 00 */ li r8, 0 +/* 8019B2D8 00198238 39 20 00 00 */ li r9, 0 +/* 8019B2DC 0019823C 39 40 00 00 */ li r10, 0 +/* 8019B2E0 00198240 48 16 D4 AD */ bl SetTevIndirect__3CGXF13_GXTevStageID16_GXIndTexStageID15_GXIndTexFormat16_GXIndTexBiasSel14_GXIndTexMtxID13_GXIndTexWrap13_GXIndTexWrapUcUc17_GXIndTexAlphaSel +lbl_8019B2E4: +/* 8019B2E4 00198244 2C 1C 00 00 */ cmpwi r28, 0 +/* 8019B2E8 00198248 39 CE 00 01 */ addi r14, r14, 1 +/* 8019B2EC 0019824C 40 81 06 18 */ ble lbl_8019B904 +/* 8019B2F0 00198250 80 81 01 30 */ lwz r4, 0x130(r1) +/* 8019B2F4 00198254 7D C3 73 78 */ mr r3, r14 +/* 8019B2F8 00198258 80 A1 01 50 */ lwz r5, 0x150(r1) +/* 8019B2FC 0019825C 38 C0 00 FF */ li r6, 0xff +/* 8019B300 00198260 48 16 D6 4D */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 8019B304 00198264 2C 1C 00 01 */ cmpwi r28, 1 +/* 8019B308 00198268 38 E0 00 08 */ li r7, 8 +/* 8019B30C 0019826C 40 82 00 08 */ bne lbl_8019B314 +/* 8019B310 00198270 38 E0 00 0F */ li r7, 0xf +lbl_8019B314: +/* 8019B314 00198274 2C 1C 00 01 */ cmpwi r28, 1 +/* 8019B318 00198278 38 C0 00 0F */ li r6, 0xf +/* 8019B31C 0019827C 40 82 00 08 */ bne lbl_8019B324 +/* 8019B320 00198280 38 C0 00 0E */ li r6, 0xe +lbl_8019B324: +/* 8019B324 00198284 2C 1C 00 01 */ cmpwi r28, 1 +/* 8019B328 00198288 38 A0 00 0F */ li r5, 0xf +/* 8019B32C 0019828C 40 82 00 08 */ bne lbl_8019B334 +/* 8019B330 00198290 38 A0 00 08 */ li r5, 8 +lbl_8019B334: +/* 8019B334 00198294 2C 1C 00 01 */ cmpwi r28, 1 +/* 8019B338 00198298 7D C3 73 78 */ mr r3, r14 +/* 8019B33C 0019829C 38 80 00 0F */ li r4, 0xf +/* 8019B340 001982A0 40 82 00 08 */ bne lbl_8019B348 +/* 8019B344 001982A4 38 80 00 00 */ li r4, 0 +lbl_8019B348: +/* 8019B348 001982A8 48 16 D8 A5 */ bl SetTevColorIn__3CGXF13_GXTevStageID14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg +/* 8019B34C 001982AC 7D C3 73 78 */ mr r3, r14 +/* 8019B350 001982B0 38 80 00 00 */ li r4, 0 +/* 8019B354 001982B4 38 A0 00 00 */ li r5, 0 +/* 8019B358 001982B8 38 C0 00 00 */ li r6, 0 +/* 8019B35C 001982BC 38 E0 00 01 */ li r7, 1 +/* 8019B360 001982C0 39 00 00 00 */ li r8, 0 +/* 8019B364 001982C4 48 16 D7 D5 */ bl SetTevColorOp__3CGXF13_GXTevStageID8_GXTevOp10_GXTevBias11_GXTevScaleUc11_GXTevRegID +/* 8019B368 001982C8 7D C3 73 78 */ mr r3, r14 +/* 8019B36C 001982CC 38 80 00 0D */ li r4, 0xd +/* 8019B370 001982D0 48 16 D6 71 */ bl SetTevKColorSel__3CGXF13_GXTevStageID15_GXTevKColorSel +/* 8019B374 001982D4 38 00 00 00 */ li r0, 0 +/* 8019B378 001982D8 7D C3 73 78 */ mr r3, r14 +/* 8019B37C 001982DC 90 01 00 08 */ stw r0, 8(r1) +/* 8019B380 001982E0 38 80 00 00 */ li r4, 0 +/* 8019B384 001982E4 38 A0 00 00 */ li r5, 0 +/* 8019B388 001982E8 38 C0 00 07 */ li r6, 7 +/* 8019B38C 001982EC 90 01 00 0C */ stw r0, 0xc(r1) +/* 8019B390 001982F0 38 E0 00 01 */ li r7, 1 +/* 8019B394 001982F4 39 00 00 00 */ li r8, 0 +/* 8019B398 001982F8 39 20 00 00 */ li r9, 0 +/* 8019B39C 001982FC 39 40 00 00 */ li r10, 0 +/* 8019B3A0 00198300 48 16 D3 ED */ bl SetTevIndirect__3CGXF13_GXTevStageID16_GXIndTexStageID15_GXIndTexFormat16_GXIndTexBiasSel14_GXIndTexMtxID13_GXIndTexWrap13_GXIndTexWrapUcUc17_GXIndTexAlphaSel +/* 8019B3A4 00198304 39 CE 00 01 */ addi r14, r14, 1 +/* 8019B3A8 00198308 48 00 05 5C */ b lbl_8019B904 +lbl_8019B3AC: +/* 8019B3AC 0019830C 28 1D 00 00 */ cmplwi r29, 0 +/* 8019B3B0 00198310 41 82 00 D4 */ beq lbl_8019B484 +/* 8019B3B4 00198314 57 40 06 3F */ clrlwi. r0, r26, 0x18 +/* 8019B3B8 00198318 80 81 01 38 */ lwz r4, 0x138(r1) +/* 8019B3BC 0019831C 80 A1 01 58 */ lwz r5, 0x158(r1) +/* 8019B3C0 00198320 38 60 00 00 */ li r3, 0 +/* 8019B3C4 00198324 38 C0 00 05 */ li r6, 5 +/* 8019B3C8 00198328 41 82 00 08 */ beq lbl_8019B3D0 +/* 8019B3CC 0019832C 38 C0 00 FF */ li r6, 0xff +lbl_8019B3D0: +/* 8019B3D0 00198330 48 16 D5 7D */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 8019B3D4 00198334 57 40 06 3F */ clrlwi. r0, r26, 0x18 +/* 8019B3D8 00198338 38 60 00 00 */ li r3, 0 +/* 8019B3DC 0019833C 38 80 00 0F */ li r4, 0xf +/* 8019B3E0 00198340 38 A0 00 08 */ li r5, 8 +/* 8019B3E4 00198344 38 C0 00 0E */ li r6, 0xe +/* 8019B3E8 00198348 38 E0 00 0A */ li r7, 0xa +/* 8019B3EC 0019834C 41 82 00 08 */ beq lbl_8019B3F4 +/* 8019B3F0 00198350 38 E0 00 0F */ li r7, 0xf +lbl_8019B3F4: +/* 8019B3F4 00198354 48 16 D7 F9 */ bl SetTevColorIn__3CGXF13_GXTevStageID14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg +/* 8019B3F8 00198358 38 60 00 00 */ li r3, 0 +/* 8019B3FC 0019835C 38 80 00 00 */ li r4, 0 +/* 8019B400 00198360 38 A0 00 00 */ li r5, 0 +/* 8019B404 00198364 38 C0 00 00 */ li r6, 0 +/* 8019B408 00198368 38 E0 00 01 */ li r7, 1 +/* 8019B40C 0019836C 39 00 00 03 */ li r8, 3 +/* 8019B410 00198370 48 16 D7 29 */ bl SetTevColorOp__3CGXF13_GXTevStageID8_GXTevOp10_GXTevBias11_GXTevScaleUc11_GXTevRegID +/* 8019B414 00198374 38 60 00 00 */ li r3, 0 +/* 8019B418 00198378 38 80 00 0E */ li r4, 0xe +/* 8019B41C 0019837C 48 16 D5 C5 */ bl SetTevKColorSel__3CGXF13_GXTevStageID15_GXTevKColorSel +/* 8019B420 00198380 57 40 06 3F */ clrlwi. r0, r26, 0x18 +/* 8019B424 00198384 39 C0 00 01 */ li r14, 1 +/* 8019B428 00198388 41 82 00 5C */ beq lbl_8019B484 +/* 8019B42C 0019838C 80 81 01 3C */ lwz r4, 0x13c(r1) +/* 8019B430 00198390 38 60 00 01 */ li r3, 1 +/* 8019B434 00198394 80 A1 01 5C */ lwz r5, 0x15c(r1) +/* 8019B438 00198398 38 C0 00 05 */ li r6, 5 +/* 8019B43C 0019839C 48 16 D5 11 */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 8019B440 001983A0 38 60 00 01 */ li r3, 1 +/* 8019B444 001983A4 38 80 00 06 */ li r4, 6 +/* 8019B448 001983A8 38 A0 00 08 */ li r5, 8 +/* 8019B44C 001983AC 38 C0 00 0E */ li r6, 0xe +/* 8019B450 001983B0 38 E0 00 0A */ li r7, 0xa +/* 8019B454 001983B4 48 16 D7 99 */ bl SetTevColorIn__3CGXF13_GXTevStageID14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg +/* 8019B458 001983B8 38 60 00 01 */ li r3, 1 +/* 8019B45C 001983BC 38 80 00 00 */ li r4, 0 +/* 8019B460 001983C0 38 A0 00 00 */ li r5, 0 +/* 8019B464 001983C4 38 C0 00 00 */ li r6, 0 +/* 8019B468 001983C8 38 E0 00 01 */ li r7, 1 +/* 8019B46C 001983CC 39 00 00 03 */ li r8, 3 +/* 8019B470 001983D0 48 16 D6 C9 */ bl SetTevColorOp__3CGXF13_GXTevStageID8_GXTevOp10_GXTevBias11_GXTevScaleUc11_GXTevRegID +/* 8019B474 001983D4 38 60 00 01 */ li r3, 1 +/* 8019B478 001983D8 38 80 00 0F */ li r4, 0xf +/* 8019B47C 001983DC 48 16 D5 65 */ bl SetTevKColorSel__3CGXF13_GXTevStageID15_GXTevKColorSel +/* 8019B480 001983E0 39 C0 00 02 */ li r14, 2 +lbl_8019B484: +/* 8019B484 001983E4 80 81 01 20 */ lwz r4, 0x120(r1) +/* 8019B488 001983E8 7D C3 73 78 */ mr r3, r14 +/* 8019B48C 001983EC 80 A1 01 40 */ lwz r5, 0x140(r1) +/* 8019B490 001983F0 38 C0 00 05 */ li r6, 5 +/* 8019B494 001983F4 48 16 D4 B9 */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 8019B498 001983F8 7D C3 73 78 */ mr r3, r14 +/* 8019B49C 001983FC 38 80 00 0F */ li r4, 0xf +/* 8019B4A0 00198400 38 A0 00 08 */ li r5, 8 +/* 8019B4A4 00198404 38 C0 00 0E */ li r6, 0xe +/* 8019B4A8 00198408 38 E0 00 0A */ li r7, 0xa +/* 8019B4AC 0019840C 48 16 D7 41 */ bl SetTevColorIn__3CGXF13_GXTevStageID14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg +/* 8019B4B0 00198410 7D C3 73 78 */ mr r3, r14 +/* 8019B4B4 00198414 38 80 00 00 */ li r4, 0 +/* 8019B4B8 00198418 38 A0 00 00 */ li r5, 0 +/* 8019B4BC 0019841C 38 C0 00 00 */ li r6, 0 +/* 8019B4C0 00198420 38 E0 00 01 */ li r7, 1 +/* 8019B4C4 00198424 39 00 00 00 */ li r8, 0 +/* 8019B4C8 00198428 48 16 D6 71 */ bl SetTevColorOp__3CGXF13_GXTevStageID8_GXTevOp10_GXTevBias11_GXTevScaleUc11_GXTevRegID +/* 8019B4CC 0019842C 7D C3 73 78 */ mr r3, r14 +/* 8019B4D0 00198430 38 80 00 0C */ li r4, 0xc +/* 8019B4D4 00198434 48 16 D5 0D */ bl SetTevKColorSel__3CGXF13_GXTevStageID15_GXTevKColorSel +/* 8019B4D8 00198438 39 CE 00 01 */ addi r14, r14, 1 +/* 8019B4DC 0019843C 80 81 01 24 */ lwz r4, 0x124(r1) +/* 8019B4E0 00198440 80 A1 01 44 */ lwz r5, 0x144(r1) +/* 8019B4E4 00198444 7D C3 73 78 */ mr r3, r14 +/* 8019B4E8 00198448 38 C0 00 04 */ li r6, 4 +/* 8019B4EC 0019844C 48 16 D4 61 */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 8019B4F0 00198450 7D C3 73 78 */ mr r3, r14 +/* 8019B4F4 00198454 38 80 00 0F */ li r4, 0xf +/* 8019B4F8 00198458 38 A0 00 08 */ li r5, 8 +/* 8019B4FC 0019845C 38 C0 00 00 */ li r6, 0 +/* 8019B500 00198460 38 E0 00 0A */ li r7, 0xa +/* 8019B504 00198464 48 16 D6 E9 */ bl SetTevColorIn__3CGXF13_GXTevStageID14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg +/* 8019B508 00198468 7D C3 73 78 */ mr r3, r14 +/* 8019B50C 0019846C 38 80 00 00 */ li r4, 0 +/* 8019B510 00198470 38 A0 00 00 */ li r5, 0 +/* 8019B514 00198474 38 C0 00 00 */ li r6, 0 +/* 8019B518 00198478 38 E0 00 01 */ li r7, 1 +/* 8019B51C 0019847C 39 00 00 00 */ li r8, 0 +/* 8019B520 00198480 48 16 D6 19 */ bl SetTevColorOp__3CGXF13_GXTevStageID8_GXTevOp10_GXTevBias11_GXTevScaleUc11_GXTevRegID +/* 8019B524 00198484 39 CE 00 01 */ addi r14, r14, 1 +/* 8019B528 00198488 80 81 01 28 */ lwz r4, 0x128(r1) +/* 8019B52C 0019848C 80 A1 01 48 */ lwz r5, 0x148(r1) +/* 8019B530 00198490 7D C3 73 78 */ mr r3, r14 +/* 8019B534 00198494 38 C0 00 05 */ li r6, 5 +/* 8019B538 00198498 48 16 D4 15 */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 8019B53C 0019849C 28 1D 00 00 */ cmplwi r29, 0 +/* 8019B540 001984A0 7D C3 73 78 */ mr r3, r14 +/* 8019B544 001984A4 38 80 00 0F */ li r4, 0xf +/* 8019B548 001984A8 38 A0 00 08 */ li r5, 8 +/* 8019B54C 001984AC 38 C0 00 0A */ li r6, 0xa +/* 8019B550 001984B0 41 82 00 08 */ beq lbl_8019B558 +/* 8019B554 001984B4 38 C0 00 06 */ li r6, 6 +lbl_8019B558: +/* 8019B558 001984B8 38 E0 00 00 */ li r7, 0 +/* 8019B55C 001984BC 48 16 D6 91 */ bl SetTevColorIn__3CGXF13_GXTevStageID14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg +/* 8019B560 001984C0 7D C3 73 78 */ mr r3, r14 +/* 8019B564 001984C4 38 80 00 00 */ li r4, 0 +/* 8019B568 001984C8 38 A0 00 00 */ li r5, 0 +/* 8019B56C 001984CC 38 C0 00 00 */ li r6, 0 +/* 8019B570 001984D0 38 E0 00 01 */ li r7, 1 +/* 8019B574 001984D4 39 00 00 00 */ li r8, 0 +/* 8019B578 001984D8 48 16 D5 C1 */ bl SetTevColorOp__3CGXF13_GXTevStageID8_GXTevOp10_GXTevBias11_GXTevScaleUc11_GXTevRegID +/* 8019B57C 001984DC 28 1B 00 00 */ cmplwi r27, 0 +/* 8019B580 001984E0 41 82 00 34 */ beq lbl_8019B5B4 +/* 8019B584 001984E4 38 00 00 00 */ li r0, 0 +/* 8019B588 001984E8 7D C3 73 78 */ mr r3, r14 +/* 8019B58C 001984EC 90 01 00 08 */ stw r0, 8(r1) +/* 8019B590 001984F0 38 80 00 00 */ li r4, 0 +/* 8019B594 001984F4 38 A0 00 00 */ li r5, 0 +/* 8019B598 001984F8 38 C0 00 07 */ li r6, 7 +/* 8019B59C 001984FC 90 01 00 0C */ stw r0, 0xc(r1) +/* 8019B5A0 00198500 38 E0 00 01 */ li r7, 1 +/* 8019B5A4 00198504 39 00 00 00 */ li r8, 0 +/* 8019B5A8 00198508 39 20 00 00 */ li r9, 0 +/* 8019B5AC 0019850C 39 40 00 00 */ li r10, 0 +/* 8019B5B0 00198510 48 16 D1 DD */ bl SetTevIndirect__3CGXF13_GXTevStageID16_GXIndTexStageID15_GXIndTexFormat16_GXIndTexBiasSel14_GXIndTexMtxID13_GXIndTexWrap13_GXIndTexWrapUcUc17_GXIndTexAlphaSel +lbl_8019B5B4: +/* 8019B5B4 00198514 39 CE 00 01 */ addi r14, r14, 1 +/* 8019B5B8 00198518 48 00 03 4C */ b lbl_8019B904 +lbl_8019B5BC: +/* 8019B5BC 0019851C 80 81 01 20 */ lwz r4, 0x120(r1) +/* 8019B5C0 00198520 38 60 00 00 */ li r3, 0 +/* 8019B5C4 00198524 80 A1 01 40 */ lwz r5, 0x140(r1) +/* 8019B5C8 00198528 38 C0 00 04 */ li r6, 4 +/* 8019B5CC 0019852C 48 16 D3 81 */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 8019B5D0 00198530 38 60 00 00 */ li r3, 0 +/* 8019B5D4 00198534 38 80 00 0F */ li r4, 0xf +/* 8019B5D8 00198538 38 A0 00 08 */ li r5, 8 +/* 8019B5DC 0019853C 38 C0 00 0E */ li r6, 0xe +/* 8019B5E0 00198540 38 E0 00 0A */ li r7, 0xa +/* 8019B5E4 00198544 48 16 D6 09 */ bl SetTevColorIn__3CGXF13_GXTevStageID14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg +/* 8019B5E8 00198548 38 60 00 00 */ li r3, 0 +/* 8019B5EC 0019854C 38 80 00 00 */ li r4, 0 +/* 8019B5F0 00198550 38 A0 00 00 */ li r5, 0 +/* 8019B5F4 00198554 38 C0 00 00 */ li r6, 0 +/* 8019B5F8 00198558 38 E0 00 01 */ li r7, 1 +/* 8019B5FC 0019855C 39 00 00 00 */ li r8, 0 +/* 8019B600 00198560 48 16 D5 39 */ bl SetTevColorOp__3CGXF13_GXTevStageID8_GXTevOp10_GXTevBias11_GXTevScaleUc11_GXTevRegID +/* 8019B604 00198564 38 60 00 00 */ li r3, 0 +/* 8019B608 00198568 38 80 00 0C */ li r4, 0xc +/* 8019B60C 0019856C 48 16 D3 D5 */ bl SetTevKColorSel__3CGXF13_GXTevStageID15_GXTevKColorSel +/* 8019B610 00198570 80 81 01 24 */ lwz r4, 0x124(r1) +/* 8019B614 00198574 38 60 00 01 */ li r3, 1 +/* 8019B618 00198578 80 A1 01 44 */ lwz r5, 0x144(r1) +/* 8019B61C 0019857C 38 C0 00 04 */ li r6, 4 +/* 8019B620 00198580 48 16 D3 2D */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 8019B624 00198584 38 60 00 01 */ li r3, 1 +/* 8019B628 00198588 38 80 00 0F */ li r4, 0xf +/* 8019B62C 0019858C 38 A0 00 08 */ li r5, 8 +/* 8019B630 00198590 38 C0 00 00 */ li r6, 0 +/* 8019B634 00198594 38 E0 00 0A */ li r7, 0xa +/* 8019B638 00198598 48 16 D5 B5 */ bl SetTevColorIn__3CGXF13_GXTevStageID14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg +/* 8019B63C 0019859C 38 60 00 01 */ li r3, 1 +/* 8019B640 001985A0 38 80 00 00 */ li r4, 0 +/* 8019B644 001985A4 38 A0 00 00 */ li r5, 0 +/* 8019B648 001985A8 38 C0 00 00 */ li r6, 0 +/* 8019B64C 001985AC 38 E0 00 01 */ li r7, 1 +/* 8019B650 001985B0 39 00 00 00 */ li r8, 0 +/* 8019B654 001985B4 48 16 D4 E5 */ bl SetTevColorOp__3CGXF13_GXTevStageID8_GXTevOp10_GXTevBias11_GXTevScaleUc11_GXTevRegID +/* 8019B658 001985B8 80 81 01 28 */ lwz r4, 0x128(r1) +/* 8019B65C 001985BC 38 60 00 02 */ li r3, 2 +/* 8019B660 001985C0 80 A1 01 48 */ lwz r5, 0x148(r1) +/* 8019B664 001985C4 38 C0 00 FF */ li r6, 0xff +/* 8019B668 001985C8 48 16 D2 E5 */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 8019B66C 001985CC 38 60 00 02 */ li r3, 2 +/* 8019B670 001985D0 38 80 00 0F */ li r4, 0xf +/* 8019B674 001985D4 38 A0 00 08 */ li r5, 8 +/* 8019B678 001985D8 38 C0 00 0C */ li r6, 0xc +/* 8019B67C 001985DC 38 E0 00 00 */ li r7, 0 +/* 8019B680 001985E0 48 16 D5 6D */ bl SetTevColorIn__3CGXF13_GXTevStageID14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg +/* 8019B684 001985E4 38 60 00 02 */ li r3, 2 +/* 8019B688 001985E8 38 80 00 00 */ li r4, 0 +/* 8019B68C 001985EC 38 A0 00 00 */ li r5, 0 +/* 8019B690 001985F0 38 C0 00 00 */ li r6, 0 +/* 8019B694 001985F4 38 E0 00 01 */ li r7, 1 +/* 8019B698 001985F8 39 00 00 00 */ li r8, 0 +/* 8019B69C 001985FC 48 16 D4 9D */ bl SetTevColorOp__3CGXF13_GXTevStageID8_GXTevOp10_GXTevBias11_GXTevScaleUc11_GXTevRegID +/* 8019B6A0 00198600 57 C0 06 3F */ clrlwi. r0, r30, 0x18 +/* 8019B6A4 00198604 39 C0 00 03 */ li r14, 3 +/* 8019B6A8 00198608 41 82 02 5C */ beq lbl_8019B904 +/* 8019B6AC 0019860C 81 C1 01 4C */ lwz r14, 0x14c(r1) +/* 8019B6B0 00198610 38 60 00 03 */ li r3, 3 +/* 8019B6B4 00198614 80 81 01 2C */ lwz r4, 0x12c(r1) +/* 8019B6B8 00198618 38 C0 00 FF */ li r6, 0xff +/* 8019B6BC 0019861C 7D C5 73 78 */ mr r5, r14 +/* 8019B6C0 00198620 48 16 D2 8D */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 8019B6C4 00198624 38 60 00 03 */ li r3, 3 +/* 8019B6C8 00198628 38 80 00 0F */ li r4, 0xf +/* 8019B6CC 0019862C 38 A0 00 08 */ li r5, 8 +/* 8019B6D0 00198630 38 C0 00 0C */ li r6, 0xc +/* 8019B6D4 00198634 38 E0 00 0D */ li r7, 0xd +/* 8019B6D8 00198638 48 16 D5 15 */ bl SetTevColorIn__3CGXF13_GXTevStageID14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg +/* 8019B6DC 0019863C 38 60 00 03 */ li r3, 3 +/* 8019B6E0 00198640 38 80 00 00 */ li r4, 0 +/* 8019B6E4 00198644 38 A0 00 00 */ li r5, 0 +/* 8019B6E8 00198648 38 C0 00 00 */ li r6, 0 +/* 8019B6EC 0019864C 38 E0 00 00 */ li r7, 0 +/* 8019B6F0 00198650 39 00 00 01 */ li r8, 1 +/* 8019B6F4 00198654 48 16 D4 45 */ bl SetTevColorOp__3CGXF13_GXTevStageID8_GXTevOp10_GXTevBias11_GXTevScaleUc11_GXTevRegID +/* 8019B6F8 00198658 80 81 01 2C */ lwz r4, 0x12c(r1) +/* 8019B6FC 0019865C 7D C5 73 78 */ mr r5, r14 +/* 8019B700 00198660 38 60 00 04 */ li r3, 4 +/* 8019B704 00198664 38 C0 00 FF */ li r6, 0xff +/* 8019B708 00198668 38 84 00 01 */ addi r4, r4, 1 +/* 8019B70C 0019866C 48 16 D2 41 */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 8019B710 00198670 38 60 00 04 */ li r3, 4 +/* 8019B714 00198674 38 80 00 0F */ li r4, 0xf +/* 8019B718 00198678 38 A0 00 08 */ li r5, 8 +/* 8019B71C 0019867C 38 C0 00 0C */ li r6, 0xc +/* 8019B720 00198680 38 E0 00 02 */ li r7, 2 +/* 8019B724 00198684 48 16 D4 C9 */ bl SetTevColorIn__3CGXF13_GXTevStageID14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg +/* 8019B728 00198688 38 60 00 04 */ li r3, 4 +/* 8019B72C 0019868C 38 80 00 01 */ li r4, 1 +/* 8019B730 00198690 38 A0 00 00 */ li r5, 0 +/* 8019B734 00198694 38 C0 00 00 */ li r6, 0 +/* 8019B738 00198698 38 E0 00 01 */ li r7, 1 +/* 8019B73C 0019869C 39 00 00 01 */ li r8, 1 +/* 8019B740 001986A0 48 16 D3 F9 */ bl SetTevColorOp__3CGXF13_GXTevStageID8_GXTevOp10_GXTevBias11_GXTevScaleUc11_GXTevRegID +/* 8019B744 001986A4 38 60 00 05 */ li r3, 5 +/* 8019B748 001986A8 38 80 00 FF */ li r4, 0xff +/* 8019B74C 001986AC 38 A0 00 FF */ li r5, 0xff +/* 8019B750 001986B0 38 C0 00 FF */ li r6, 0xff +/* 8019B754 001986B4 48 16 D1 F9 */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 8019B758 001986B8 38 60 00 05 */ li r3, 5 +/* 8019B75C 001986BC 38 80 00 0F */ li r4, 0xf +/* 8019B760 001986C0 38 A0 00 00 */ li r5, 0 +/* 8019B764 001986C4 38 C0 00 02 */ li r6, 2 +/* 8019B768 001986C8 38 E0 00 0F */ li r7, 0xf +/* 8019B76C 001986CC 48 16 D4 81 */ bl SetTevColorIn__3CGXF13_GXTevStageID14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg +/* 8019B770 001986D0 38 60 00 05 */ li r3, 5 +/* 8019B774 001986D4 38 80 00 00 */ li r4, 0 +/* 8019B778 001986D8 38 A0 00 00 */ li r5, 0 +/* 8019B77C 001986DC 38 C0 00 01 */ li r6, 1 +/* 8019B780 001986E0 38 E0 00 01 */ li r7, 1 +/* 8019B784 001986E4 39 00 00 00 */ li r8, 0 +/* 8019B788 001986E8 48 16 D3 B1 */ bl SetTevColorOp__3CGXF13_GXTevStageID8_GXTevOp10_GXTevBias11_GXTevScaleUc11_GXTevRegID +/* 8019B78C 001986EC 39 C0 00 06 */ li r14, 6 +/* 8019B790 001986F0 48 00 01 74 */ b lbl_8019B904 +lbl_8019B794: +/* 8019B794 001986F4 80 81 01 20 */ lwz r4, 0x120(r1) +/* 8019B798 001986F8 38 60 00 00 */ li r3, 0 +/* 8019B79C 001986FC 80 A1 01 40 */ lwz r5, 0x140(r1) +/* 8019B7A0 00198700 38 C0 00 04 */ li r6, 4 +/* 8019B7A4 00198704 48 16 D1 A9 */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 8019B7A8 00198708 38 60 00 00 */ li r3, 0 +/* 8019B7AC 0019870C 38 80 00 0F */ li r4, 0xf +/* 8019B7B0 00198710 38 A0 00 08 */ li r5, 8 +/* 8019B7B4 00198714 38 C0 00 0E */ li r6, 0xe +/* 8019B7B8 00198718 38 E0 00 0A */ li r7, 0xa +/* 8019B7BC 0019871C 48 16 D4 31 */ bl SetTevColorIn__3CGXF13_GXTevStageID14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg +/* 8019B7C0 00198720 38 60 00 00 */ li r3, 0 +/* 8019B7C4 00198724 38 80 00 00 */ li r4, 0 +/* 8019B7C8 00198728 38 A0 00 00 */ li r5, 0 +/* 8019B7CC 0019872C 38 C0 00 00 */ li r6, 0 +/* 8019B7D0 00198730 38 E0 00 01 */ li r7, 1 +/* 8019B7D4 00198734 39 00 00 00 */ li r8, 0 +/* 8019B7D8 00198738 48 16 D3 61 */ bl SetTevColorOp__3CGXF13_GXTevStageID8_GXTevOp10_GXTevBias11_GXTevScaleUc11_GXTevRegID +/* 8019B7DC 0019873C 38 60 00 00 */ li r3, 0 +/* 8019B7E0 00198740 38 80 00 0C */ li r4, 0xc +/* 8019B7E4 00198744 48 16 D1 FD */ bl SetTevKColorSel__3CGXF13_GXTevStageID15_GXTevKColorSel +/* 8019B7E8 00198748 80 81 01 24 */ lwz r4, 0x124(r1) +/* 8019B7EC 0019874C 38 60 00 01 */ li r3, 1 +/* 8019B7F0 00198750 80 A1 01 44 */ lwz r5, 0x144(r1) +/* 8019B7F4 00198754 38 C0 00 04 */ li r6, 4 +/* 8019B7F8 00198758 48 16 D1 55 */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 8019B7FC 0019875C 38 60 00 01 */ li r3, 1 +/* 8019B800 00198760 38 80 00 0F */ li r4, 0xf +/* 8019B804 00198764 38 A0 00 08 */ li r5, 8 +/* 8019B808 00198768 38 C0 00 00 */ li r6, 0 +/* 8019B80C 0019876C 38 E0 00 0A */ li r7, 0xa +/* 8019B810 00198770 48 16 D3 DD */ bl SetTevColorIn__3CGXF13_GXTevStageID14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg +/* 8019B814 00198774 38 60 00 01 */ li r3, 1 +/* 8019B818 00198778 38 80 00 00 */ li r4, 0 +/* 8019B81C 0019877C 38 A0 00 00 */ li r5, 0 +/* 8019B820 00198780 38 C0 00 00 */ li r6, 0 +/* 8019B824 00198784 38 E0 00 01 */ li r7, 1 +/* 8019B828 00198788 39 00 00 00 */ li r8, 0 +/* 8019B82C 0019878C 48 16 D3 0D */ bl SetTevColorOp__3CGXF13_GXTevStageID8_GXTevOp10_GXTevBias11_GXTevScaleUc11_GXTevRegID +/* 8019B830 00198790 80 81 01 28 */ lwz r4, 0x128(r1) +/* 8019B834 00198794 38 60 00 02 */ li r3, 2 +/* 8019B838 00198798 80 A1 01 48 */ lwz r5, 0x148(r1) +/* 8019B83C 0019879C 38 C0 00 FF */ li r6, 0xff +/* 8019B840 001987A0 48 16 D1 0D */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 8019B844 001987A4 38 60 00 02 */ li r3, 2 +/* 8019B848 001987A8 38 80 00 0F */ li r4, 0xf +/* 8019B84C 001987AC 38 A0 00 08 */ li r5, 8 +/* 8019B850 001987B0 38 C0 00 0C */ li r6, 0xc +/* 8019B854 001987B4 38 E0 00 00 */ li r7, 0 +/* 8019B858 001987B8 48 16 D3 95 */ bl SetTevColorIn__3CGXF13_GXTevStageID14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg +/* 8019B85C 001987BC 38 60 00 02 */ li r3, 2 +/* 8019B860 001987C0 38 80 00 00 */ li r4, 0 +/* 8019B864 001987C4 38 A0 00 00 */ li r5, 0 +/* 8019B868 001987C8 38 C0 00 00 */ li r6, 0 +/* 8019B86C 001987CC 38 E0 00 01 */ li r7, 1 +/* 8019B870 001987D0 39 00 00 00 */ li r8, 0 +/* 8019B874 001987D4 48 16 D2 C5 */ bl SetTevColorOp__3CGXF13_GXTevStageID8_GXTevOp10_GXTevBias11_GXTevScaleUc11_GXTevRegID +/* 8019B878 001987D8 57 C0 06 3F */ clrlwi. r0, r30, 0x18 +/* 8019B87C 001987DC 39 C0 00 03 */ li r14, 3 +/* 8019B880 001987E0 41 82 00 84 */ beq lbl_8019B904 +/* 8019B884 001987E4 80 81 01 2C */ lwz r4, 0x12c(r1) +/* 8019B888 001987E8 38 60 00 03 */ li r3, 3 +/* 8019B88C 001987EC 80 A1 01 4C */ lwz r5, 0x14c(r1) +/* 8019B890 001987F0 38 C0 00 FF */ li r6, 0xff +/* 8019B894 001987F4 48 16 D0 B9 */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 8019B898 001987F8 38 60 00 03 */ li r3, 3 +/* 8019B89C 001987FC 38 80 00 0F */ li r4, 0xf +/* 8019B8A0 00198800 38 A0 00 08 */ li r5, 8 +/* 8019B8A4 00198804 38 C0 00 00 */ li r6, 0 +/* 8019B8A8 00198808 38 E0 00 0F */ li r7, 0xf +/* 8019B8AC 0019880C 48 16 D3 41 */ bl SetTevColorIn__3CGXF13_GXTevStageID14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg +/* 8019B8B0 00198810 38 60 00 03 */ li r3, 3 +/* 8019B8B4 00198814 38 80 00 00 */ li r4, 0 +/* 8019B8B8 00198818 38 A0 00 00 */ li r5, 0 +/* 8019B8BC 0019881C 38 C0 00 01 */ li r6, 1 +/* 8019B8C0 00198820 38 E0 00 01 */ li r7, 1 +/* 8019B8C4 00198824 39 00 00 00 */ li r8, 0 +/* 8019B8C8 00198828 48 16 D2 71 */ bl SetTevColorOp__3CGXF13_GXTevStageID8_GXTevOp10_GXTevBias11_GXTevScaleUc11_GXTevRegID +/* 8019B8CC 0019882C 39 C0 00 04 */ li r14, 4 +/* 8019B8D0 00198830 48 00 00 34 */ b lbl_8019B904 +lbl_8019B8D4: +/* 8019B8D4 00198834 88 0D A4 81 */ lbz r0, lbl_805A9041@sda21(r13) +/* 8019B8D8 00198838 7C 00 07 75 */ extsb. r0, r0 +/* 8019B8DC 0019883C 40 82 00 14 */ bne lbl_8019B8F0 +/* 8019B8E0 00198840 38 60 00 00 */ li r3, 0 +/* 8019B8E4 00198844 38 00 00 01 */ li r0, 1 +/* 8019B8E8 00198848 98 6D A4 80 */ stb r3, lbl_805A9040@sda21(r13) +/* 8019B8EC 0019884C 98 0D A4 81 */ stb r0, lbl_805A9041@sda21(r13) +lbl_8019B8F0: +/* 8019B8F0 00198850 88 0D A4 80 */ lbz r0, lbl_805A9040@sda21(r13) +/* 8019B8F4 00198854 28 00 00 00 */ cmplwi r0, 0 +/* 8019B8F8 00198858 40 82 00 0C */ bne lbl_8019B904 +/* 8019B8FC 0019885C 38 00 00 01 */ li r0, 1 +/* 8019B900 00198860 98 0D A4 80 */ stb r0, lbl_805A9040@sda21(r13) +lbl_8019B904: +/* 8019B904 00198864 55 C3 06 3E */ clrlwi r3, r14, 0x18 +/* 8019B908 00198868 48 16 D3 89 */ bl SetNumTevStages__3CGXFUc +/* 8019B90C 0019886C 39 CE FF FF */ addi r14, r14, -1 +/* 8019B910 00198870 38 80 00 07 */ li r4, 7 +/* 8019B914 00198874 7D C3 73 78 */ mr r3, r14 +/* 8019B918 00198878 38 A0 00 07 */ li r5, 7 +/* 8019B91C 0019887C 38 C0 00 07 */ li r6, 7 +/* 8019B920 00198880 38 E0 00 06 */ li r7, 6 +/* 8019B924 00198884 48 16 D2 71 */ bl SetTevAlphaIn__3CGXF13_GXTevStageID14_GXTevAlphaArg14_GXTevAlphaArg14_GXTevAlphaArg14_GXTevAlphaArg +/* 8019B928 00198888 7D C3 73 78 */ mr r3, r14 +/* 8019B92C 0019888C 38 80 00 00 */ li r4, 0 +/* 8019B930 00198890 38 A0 00 00 */ li r5, 0 +/* 8019B934 00198894 38 C0 00 00 */ li r6, 0 +/* 8019B938 00198898 38 E0 00 01 */ li r7, 1 +/* 8019B93C 0019889C 39 00 00 00 */ li r8, 0 +/* 8019B940 001988A0 48 16 D1 41 */ bl SetTevAlphaOp__3CGXF13_GXTevStageID8_GXTevOp10_GXTevBias11_GXTevScaleUc11_GXTevRegID +/* 8019B944 001988A4 7D C3 73 78 */ mr r3, r14 +/* 8019B948 001988A8 38 80 00 1C */ li r4, 0x1c +/* 8019B94C 001988AC 48 16 D0 51 */ bl SetTevKAlphaSel__3CGXF13_GXTevStageID15_GXTevKAlphaSel +/* 8019B950 001988B0 80 13 0F 34 */ lwz r0, 0xf34(r19) +/* 8019B954 001988B4 2C 00 00 00 */ cmpwi r0, 0 +/* 8019B958 001988B8 40 82 00 1C */ bne lbl_8019B974 +/* 8019B95C 001988BC 38 60 00 01 */ li r3, 1 +/* 8019B960 001988C0 38 80 00 01 */ li r4, 1 +/* 8019B964 001988C4 38 A0 00 01 */ li r5, 1 +/* 8019B968 001988C8 38 C0 00 00 */ li r6, 0 +/* 8019B96C 001988CC 48 16 CF 65 */ bl SetBlendMode__3CGXF12_GXBlendMode14_GXBlendFactor14_GXBlendFactor10_GXLogicOp +/* 8019B970 001988D0 48 00 00 2C */ b lbl_8019B99C +lbl_8019B974: +/* 8019B974 001988D4 C0 02 A6 DC */ lfs f0, lbl_805AC3FC@sda21(r2) +/* 8019B978 001988D8 FC 00 F8 00 */ fcmpu cr0, f0, f31 +/* 8019B97C 001988DC 40 82 00 0C */ bne lbl_8019B988 +/* 8019B980 001988E0 38 60 00 00 */ li r3, 0 +/* 8019B984 001988E4 48 00 00 08 */ b lbl_8019B98C +lbl_8019B988: +/* 8019B988 001988E8 38 60 00 01 */ li r3, 1 +lbl_8019B98C: +/* 8019B98C 001988EC 38 80 00 04 */ li r4, 4 +/* 8019B990 001988F0 38 A0 00 05 */ li r5, 5 +/* 8019B994 001988F4 38 C0 00 00 */ li r6, 0 +/* 8019B998 001988F8 48 16 CF 39 */ bl SetBlendMode__3CGXF12_GXBlendMode14_GXBlendFactor14_GXBlendFactor10_GXLogicOp +lbl_8019B99C: +/* 8019B99C 001988FC 38 60 00 01 */ li r3, 1 +/* 8019B9A0 00198900 38 80 00 03 */ li r4, 3 +/* 8019B9A4 00198904 38 A0 00 00 */ li r5, 0 +/* 8019B9A8 00198908 48 16 CE D5 */ bl SetZMode__3CGXFb10_GXCompareb +/* 8019B9AC 0019890C 38 60 00 07 */ li r3, 7 +/* 8019B9B0 00198910 38 80 00 00 */ li r4, 0 +/* 8019B9B4 00198914 38 A0 00 00 */ li r5, 0 +/* 8019B9B8 00198918 38 C0 00 07 */ li r6, 7 +/* 8019B9BC 0019891C 38 E0 00 00 */ li r7, 0 +/* 8019B9C0 00198920 48 16 CE 55 */ bl SetAlphaCompare__3CGXF10_GXCompareUc10_GXAlphaOp10_GXCompareUc +/* 8019B9C4 00198924 38 60 00 00 */ li r3, 0 +/* 8019B9C8 00198928 48 1D D1 91 */ bl GXSetCullMode +lbl_8019B9CC: +/* 8019B9CC 0019892C E3 E1 04 38 */ psq_l f31, 1080(r1), 0, qr0 +/* 8019B9D0 00198930 CB E1 04 30 */ lfd f31, 0x430(r1) +/* 8019B9D4 00198934 E3 C1 04 28 */ psq_l f30, 1064(r1), 0, qr0 +/* 8019B9D8 00198938 CB C1 04 20 */ lfd f30, 0x420(r1) +/* 8019B9DC 0019893C E3 A1 04 18 */ psq_l f29, 1048(r1), 0, qr0 +/* 8019B9E0 00198940 CB A1 04 10 */ lfd f29, 0x410(r1) +/* 8019B9E4 00198944 E3 81 04 08 */ psq_l f28, 1032(r1), 0, qr0 +/* 8019B9E8 00198948 CB 81 04 00 */ lfd f28, 0x400(r1) +/* 8019B9EC 0019894C B9 C1 03 B8 */ lmw r14, 0x3b8(r1) +/* 8019B9F0 00198950 80 01 04 44 */ lwz r0, 0x444(r1) +/* 8019B9F4 00198954 7C 08 03 A6 */ mtlr r0 +/* 8019B9F8 00198958 38 21 04 40 */ addi r1, r1, 0x440 +/* 8019B9FC 0019895C 4E 80 00 20 */ blr + +.global CalculateLightmapMtx__14CFluidPlaneCPUFRC12CTransform4fRC12CTransform4fRC6CAABoxi +CalculateLightmapMtx__14CFluidPlaneCPUFRC12CTransform4fRC12CTransform4fRC6CAABoxi: +/* 8019BA00 00198960 94 21 FD 90 */ stwu r1, -0x270(r1) +/* 8019BA04 00198964 7C 08 02 A6 */ mflr r0 +/* 8019BA08 00198968 90 01 02 74 */ stw r0, 0x274(r1) +/* 8019BA0C 0019896C DB E1 02 60 */ stfd f31, 0x260(r1) +/* 8019BA10 00198970 F3 E1 02 68 */ psq_st f31, 616(r1), 0, qr0 +/* 8019BA14 00198974 DB C1 02 50 */ stfd f30, 0x250(r1) +/* 8019BA18 00198978 F3 C1 02 58 */ psq_st f30, 600(r1), 0, qr0 +/* 8019BA1C 0019897C DB A1 02 40 */ stfd f29, 0x240(r1) +/* 8019BA20 00198980 F3 A1 02 48 */ psq_st f29, 584(r1), 0, qr0 +/* 8019BA24 00198984 DB 81 02 30 */ stfd f28, 0x230(r1) +/* 8019BA28 00198988 F3 81 02 38 */ psq_st f28, 568(r1), 0, qr0 +/* 8019BA2C 0019898C DB 61 02 20 */ stfd f27, 0x220(r1) +/* 8019BA30 00198990 F3 61 02 28 */ psq_st f27, 552(r1), 0, qr0 +/* 8019BA34 00198994 DB 41 02 10 */ stfd f26, 0x210(r1) +/* 8019BA38 00198998 F3 41 02 18 */ psq_st f26, 536(r1), 0, qr0 +/* 8019BA3C 0019899C DB 21 02 00 */ stfd f25, 0x200(r1) +/* 8019BA40 001989A0 F3 21 02 08 */ psq_st f25, 520(r1), 0, qr0 +/* 8019BA44 001989A4 DB 01 01 F0 */ stfd f24, 0x1f0(r1) +/* 8019BA48 001989A8 F3 01 01 F8 */ psq_st f24, 504(r1), 0, qr0 +/* 8019BA4C 001989AC DA E1 01 E0 */ stfd f23, 0x1e0(r1) +/* 8019BA50 001989B0 F2 E1 01 E8 */ psq_st f23, 488(r1), 0, qr0 +/* 8019BA54 001989B4 BF 21 01 C4 */ stmw r25, 0x1c4(r1) +/* 8019BA58 001989B8 7C 79 1B 78 */ mr r25, r3 +/* 8019BA5C 001989BC 7C 9A 23 78 */ mr r26, r4 +/* 8019BA60 001989C0 80 83 00 E8 */ lwz r4, 0xe8(r3) +/* 8019BA64 001989C4 7C BB 2B 78 */ mr r27, r5 +/* 8019BA68 001989C8 7C DC 33 78 */ mr r28, r6 +/* 8019BA6C 001989CC 7C FF 3B 78 */ mr r31, r7 +/* 8019BA70 001989D0 AB C4 00 04 */ lha r30, 4(r4) +/* 8019BA74 001989D4 38 61 00 20 */ addi r3, r1, 0x20 +/* 8019BA78 001989D8 AB A4 00 06 */ lha r29, 6(r4) +/* 8019BA7C 001989DC 38 9A 00 20 */ addi r4, r26, 0x20 +/* 8019BA80 001989E0 48 17 8D D1 */ bl AsNormalized__9CVector3fCFv +/* 8019BA84 001989E4 7F 44 D3 78 */ mr r4, r26 +/* 8019BA88 001989E8 38 61 00 94 */ addi r3, r1, 0x94 +/* 8019BA8C 001989EC 48 17 71 B5 */ bl GetRotation__12CTransform4fCFv +/* 8019BA90 001989F0 38 61 00 C4 */ addi r3, r1, 0xc4 +/* 8019BA94 001989F4 38 81 00 94 */ addi r4, r1, 0x94 +/* 8019BA98 001989F8 48 17 72 05 */ bl GetQuickInverse__12CTransform4fCFv +/* 8019BA9C 001989FC 38 61 01 54 */ addi r3, r1, 0x154 +/* 8019BAA0 00198A00 38 81 00 C4 */ addi r4, r1, 0xc4 +/* 8019BAA4 00198A04 48 17 70 D1 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8019BAA8 00198A08 7F 84 E3 78 */ mr r4, r28 +/* 8019BAAC 00198A0C 38 61 00 2C */ addi r3, r1, 0x2c +/* 8019BAB0 00198A10 38 A1 01 54 */ addi r5, r1, 0x154 +/* 8019BAB4 00198A14 48 19 BE 49 */ bl GetTransformedAABox__6CAABoxCFRC12CTransform4f +/* 8019BAB8 00198A18 3C 60 43 30 */ lis r3, 0x4330 +/* 8019BABC 00198A1C 6F C4 80 00 */ xoris r4, r30, 0x8000 +/* 8019BAC0 00198A20 90 81 01 8C */ stw r4, 0x18c(r1) +/* 8019BAC4 00198A24 6F A0 80 00 */ xoris r0, r29, 0x8000 +/* 8019BAC8 00198A28 C8 62 A6 F0 */ lfd f3, lbl_805AC410@sda21(r2) +/* 8019BACC 00198A2C 90 61 01 88 */ stw r3, 0x188(r1) +/* 8019BAD0 00198A30 C0 59 01 1C */ lfs f2, 0x11c(r25) +/* 8019BAD4 00198A34 C8 01 01 88 */ lfd f0, 0x188(r1) +/* 8019BAD8 00198A38 90 01 01 94 */ stw r0, 0x194(r1) +/* 8019BADC 00198A3C EC 20 18 28 */ fsubs f1, f0, f3 +/* 8019BAE0 00198A40 C3 81 00 2C */ lfs f28, 0x2c(r1) +/* 8019BAE4 00198A44 90 61 01 90 */ stw r3, 0x190(r1) +/* 8019BAE8 00198A48 C3 C1 00 38 */ lfs f30, 0x38(r1) +/* 8019BAEC 00198A4C C8 01 01 90 */ lfd f0, 0x190(r1) +/* 8019BAF0 00198A50 EC 21 00 B2 */ fmuls f1, f1, f2 +/* 8019BAF4 00198A54 EC 9E E0 28 */ fsubs f4, f30, f28 +/* 8019BAF8 00198A58 C3 E1 00 30 */ lfs f31, 0x30(r1) +/* 8019BAFC 00198A5C EC 00 18 28 */ fsubs f0, f0, f3 +/* 8019BB00 00198A60 C3 A1 00 3C */ lfs f29, 0x3c(r1) +/* 8019BB04 00198A64 C0 7B 00 0C */ lfs f3, 0xc(r27) +/* 8019BB08 00198A68 EF 44 08 24 */ fdivs f26, f4, f1 +/* 8019BB0C 00198A6C EF 7D F8 28 */ fsubs f27, f29, f31 +/* 8019BB10 00198A70 EC 00 00 B2 */ fmuls f0, f0, f2 +/* 8019BB14 00198A74 EC 3C 18 2A */ fadds f1, f28, f3 +/* 8019BB18 00198A78 EF 3B 00 24 */ fdivs f25, f27, f0 +/* 8019BB1C 00198A7C 48 1F 91 91 */ bl fmod +/* 8019BB20 00198A80 6F C3 80 00 */ xoris r3, r30, 0x8000 +/* 8019BB24 00198A84 3C 00 43 30 */ lis r0, 0x4330 +/* 8019BB28 00198A88 90 61 01 9C */ stw r3, 0x19c(r1) +/* 8019BB2C 00198A8C C8 02 A7 08 */ lfd f0, lbl_805AC428@sda21(r2) +/* 8019BB30 00198A90 90 01 01 98 */ stw r0, 0x198(r1) +/* 8019BB34 00198A94 C8 42 A6 F0 */ lfd f2, lbl_805AC410@sda21(r2) +/* 8019BB38 00198A98 FC 60 08 2A */ fadd f3, f0, f1 +/* 8019BB3C 00198A9C C8 01 01 98 */ lfd f0, 0x198(r1) +/* 8019BB40 00198AA0 C0 3B 00 0C */ lfs f1, 0xc(r27) +/* 8019BB44 00198AA4 FC 00 10 28 */ fsub f0, f0, f2 +/* 8019BB48 00198AA8 C0 59 01 1C */ lfs f2, 0x11c(r25) +/* 8019BB4C 00198AAC EC 3E 08 2A */ fadds f1, f30, f1 +/* 8019BB50 00198AB0 FF 03 00 24 */ fdiv f24, f3, f0 +/* 8019BB54 00198AB4 FF 00 C0 18 */ frsp f24, f24 +/* 8019BB58 00198AB8 48 1F 91 55 */ bl fmod +/* 8019BB5C 00198ABC 6F C3 80 00 */ xoris r3, r30, 0x8000 +/* 8019BB60 00198AC0 3C 00 43 30 */ lis r0, 0x4330 +/* 8019BB64 00198AC4 C8 02 A7 10 */ lfd f0, lbl_805AC430@sda21(r2) +/* 8019BB68 00198AC8 90 61 01 A4 */ stw r3, 0x1a4(r1) +/* 8019BB6C 00198ACC C8 42 A6 F0 */ lfd f2, lbl_805AC410@sda21(r2) +/* 8019BB70 00198AD0 FC 80 08 28 */ fsub f4, f0, f1 +/* 8019BB74 00198AD4 90 01 01 A0 */ stw r0, 0x1a0(r1) +/* 8019BB78 00198AD8 C0 BB 00 1C */ lfs f5, 0x1c(r27) +/* 8019BB7C 00198ADC C8 01 01 A0 */ lfd f0, 0x1a0(r1) +/* 8019BB80 00198AE0 C0 DB 00 2C */ lfs f6, 0x2c(r27) +/* 8019BB84 00198AE4 EC 3F 28 2A */ fadds f1, f31, f5 +/* 8019BB88 00198AE8 FC 60 10 28 */ fsub f3, f0, f2 +/* 8019BB8C 00198AEC C0 1B 00 0C */ lfs f0, 0xc(r27) +/* 8019BB90 00198AF0 C0 59 01 1C */ lfs f2, 0x11c(r25) +/* 8019BB94 00198AF4 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 8019BB98 00198AF8 FE E4 18 24 */ fdiv f23, f4, f3 +/* 8019BB9C 00198AFC D0 A1 00 18 */ stfs f5, 0x18(r1) +/* 8019BBA0 00198B00 D0 C1 00 1C */ stfs f6, 0x1c(r1) +/* 8019BBA4 00198B04 FE E0 B8 18 */ frsp f23, f23 +/* 8019BBA8 00198B08 48 1F 91 05 */ bl fmod +/* 8019BBAC 00198B0C 6F A3 80 00 */ xoris r3, r29, 0x8000 +/* 8019BBB0 00198B10 3C 00 43 30 */ lis r0, 0x4330 +/* 8019BBB4 00198B14 C8 02 A7 08 */ lfd f0, lbl_805AC428@sda21(r2) +/* 8019BBB8 00198B18 90 61 01 AC */ stw r3, 0x1ac(r1) +/* 8019BBBC 00198B1C C8 42 A6 F0 */ lfd f2, lbl_805AC410@sda21(r2) +/* 8019BBC0 00198B20 FC 80 08 2A */ fadd f4, f0, f1 +/* 8019BBC4 00198B24 90 01 01 A8 */ stw r0, 0x1a8(r1) +/* 8019BBC8 00198B28 C0 BB 00 1C */ lfs f5, 0x1c(r27) +/* 8019BBCC 00198B2C C8 01 01 A8 */ lfd f0, 0x1a8(r1) +/* 8019BBD0 00198B30 C0 DB 00 2C */ lfs f6, 0x2c(r27) +/* 8019BBD4 00198B34 EC 3D 28 2A */ fadds f1, f29, f5 +/* 8019BBD8 00198B38 FC 60 10 28 */ fsub f3, f0, f2 +/* 8019BBDC 00198B3C C0 1B 00 0C */ lfs f0, 0xc(r27) +/* 8019BBE0 00198B40 C0 59 01 1C */ lfs f2, 0x11c(r25) +/* 8019BBE4 00198B44 D0 01 00 08 */ stfs f0, 8(r1) +/* 8019BBE8 00198B48 FF A4 18 24 */ fdiv f29, f4, f3 +/* 8019BBEC 00198B4C D0 A1 00 0C */ stfs f5, 0xc(r1) +/* 8019BBF0 00198B50 D0 C1 00 10 */ stfs f6, 0x10(r1) +/* 8019BBF4 00198B54 FF A0 E8 18 */ frsp f29, f29 +/* 8019BBF8 00198B58 48 1F 90 B5 */ bl fmod +/* 8019BBFC 00198B5C 6F A3 80 00 */ xoris r3, r29, 0x8000 +/* 8019BC00 00198B60 3C 00 43 30 */ lis r0, 0x4330 +/* 8019BC04 00198B64 90 61 01 B4 */ stw r3, 0x1b4(r1) +/* 8019BC08 00198B68 FC 60 E0 50 */ fneg f3, f28 +/* 8019BC0C 00198B6C C0 82 A6 E0 */ lfs f4, lbl_805AC400@sda21(r2) +/* 8019BC10 00198B70 EC BA C0 28 */ fsubs f5, f26, f24 +/* 8019BC14 00198B74 90 01 01 B0 */ stw r0, 0x1b0(r1) +/* 8019BC18 00198B78 EC 19 07 F2 */ fmuls f0, f25, f31 +/* 8019BC1C 00198B7C C9 02 A7 10 */ lfd f8, lbl_805AC430@sda21(r2) +/* 8019BC20 00198B80 C8 E2 A6 F0 */ lfd f7, lbl_805AC410@sda21(r2) +/* 8019BC24 00198B84 EC 59 E8 28 */ fsubs f2, f25, f29 +/* 8019BC28 00198B88 C8 C1 01 B0 */ lfd f6, 0x1b0(r1) +/* 8019BC2C 00198B8C FD 08 08 28 */ fsub f8, f8, f1 +/* 8019BC30 00198B90 ED 3E E0 28 */ fsubs f9, f30, f28 +/* 8019BC34 00198B94 D0 81 01 28 */ stfs f4, 0x128(r1) +/* 8019BC38 00198B98 FC C6 38 28 */ fsub f6, f6, f7 +/* 8019BC3C 00198B9C EC 3A 00 F2 */ fmuls f1, f26, f3 +/* 8019BC40 00198BA0 D0 81 01 2C */ stfs f4, 0x12c(r1) +/* 8019BC44 00198BA4 EC A5 B8 28 */ fsubs f5, f5, f23 +/* 8019BC48 00198BA8 FC C8 30 24 */ fdiv f6, f8, f6 +/* 8019BC4C 00198BAC D0 81 01 34 */ stfs f4, 0x134(r1) +/* 8019BC50 00198BB0 38 61 00 64 */ addi r3, r1, 0x64 +/* 8019BC54 00198BB4 D0 81 01 3C */ stfs f4, 0x13c(r1) +/* 8019BC58 00198BB8 38 81 01 24 */ addi r4, r1, 0x124 +/* 8019BC5C 00198BBC 38 A1 01 54 */ addi r5, r1, 0x154 +/* 8019BC60 00198BC0 FC C0 30 18 */ frsp f6, f6 +/* 8019BC64 00198BC4 D0 81 01 44 */ stfs f4, 0x144(r1) +/* 8019BC68 00198BC8 EC 61 48 24 */ fdivs f3, f1, f9 +/* 8019BC6C 00198BCC D0 81 01 48 */ stfs f4, 0x148(r1) +/* 8019BC70 00198BD0 D0 81 01 4C */ stfs f4, 0x14c(r1) +/* 8019BC74 00198BD4 D0 81 01 50 */ stfs f4, 0x150(r1) +/* 8019BC78 00198BD8 EC 22 30 28 */ fsubs f1, f2, f6 +/* 8019BC7C 00198BDC EC 00 D8 24 */ fdivs f0, f0, f27 +/* 8019BC80 00198BE0 FC 20 08 50 */ fneg f1, f1 +/* 8019BC84 00198BE4 EC 45 48 24 */ fdivs f2, f5, f9 +/* 8019BC88 00198BE8 EC 21 D8 24 */ fdivs f1, f1, f27 +/* 8019BC8C 00198BEC D0 41 01 24 */ stfs f2, 0x124(r1) +/* 8019BC90 00198BF0 EC 58 18 2A */ fadds f2, f24, f3 +/* 8019BC94 00198BF4 D0 21 01 38 */ stfs f1, 0x138(r1) +/* 8019BC98 00198BF8 EC 00 30 28 */ fsubs f0, f0, f6 +/* 8019BC9C 00198BFC D0 41 01 30 */ stfs f2, 0x130(r1) +/* 8019BCA0 00198C00 D0 01 01 40 */ stfs f0, 0x140(r1) +/* 8019BCA4 00198C04 48 17 6C AD */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 8019BCA8 00198C08 38 61 00 F4 */ addi r3, r1, 0xf4 +/* 8019BCAC 00198C0C 38 81 00 64 */ addi r4, r1, 0x64 +/* 8019BCB0 00198C10 48 17 6E C5 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8019BCB4 00198C14 3C 60 80 3D */ lis r3, lbl_803D1230@ha +/* 8019BCB8 00198C18 C0 E1 00 F4 */ lfs f7, 0xf4(r1) +/* 8019BCBC 00198C1C 3B C3 12 30 */ addi r30, r3, lbl_803D1230@l +/* 8019BCC0 00198C20 C0 C1 00 F8 */ lfs f6, 0xf8(r1) +/* 8019BCC4 00198C24 81 9E 00 00 */ lwz r12, 0(r30) +/* 8019BCC8 00198C28 7F E4 FB 78 */ mr r4, r31 +/* 8019BCCC 00198C2C 81 7E 00 04 */ lwz r11, 4(r30) +/* 8019BCD0 00198C30 38 61 00 44 */ addi r3, r1, 0x44 +/* 8019BCD4 00198C34 81 5E 00 08 */ lwz r10, 8(r30) +/* 8019BCD8 00198C38 38 A0 00 01 */ li r5, 1 +/* 8019BCDC 00198C3C 81 3E 00 0C */ lwz r9, 0xc(r30) +/* 8019BCE0 00198C40 81 1E 00 10 */ lwz r8, 0x10(r30) +/* 8019BCE4 00198C44 80 FE 00 14 */ lwz r7, 0x14(r30) +/* 8019BCE8 00198C48 80 DE 00 18 */ lwz r6, 0x18(r30) +/* 8019BCEC 00198C4C 80 1E 00 1C */ lwz r0, 0x1c(r30) +/* 8019BCF0 00198C50 91 81 00 44 */ stw r12, 0x44(r1) +/* 8019BCF4 00198C54 C0 A1 00 FC */ lfs f5, 0xfc(r1) +/* 8019BCF8 00198C58 91 61 00 48 */ stw r11, 0x48(r1) +/* 8019BCFC 00198C5C C0 81 01 00 */ lfs f4, 0x100(r1) +/* 8019BD00 00198C60 91 41 00 4C */ stw r10, 0x4c(r1) +/* 8019BD04 00198C64 C0 61 01 04 */ lfs f3, 0x104(r1) +/* 8019BD08 00198C68 91 21 00 50 */ stw r9, 0x50(r1) +/* 8019BD0C 00198C6C C0 41 01 08 */ lfs f2, 0x108(r1) +/* 8019BD10 00198C70 91 01 00 54 */ stw r8, 0x54(r1) +/* 8019BD14 00198C74 C0 21 01 0C */ lfs f1, 0x10c(r1) +/* 8019BD18 00198C78 90 E1 00 58 */ stw r7, 0x58(r1) +/* 8019BD1C 00198C7C C0 01 01 10 */ lfs f0, 0x110(r1) +/* 8019BD20 00198C80 90 C1 00 5C */ stw r6, 0x5c(r1) +/* 8019BD24 00198C84 90 01 00 60 */ stw r0, 0x60(r1) +/* 8019BD28 00198C88 D0 E1 00 44 */ stfs f7, 0x44(r1) +/* 8019BD2C 00198C8C D0 C1 00 48 */ stfs f6, 0x48(r1) +/* 8019BD30 00198C90 D0 A1 00 4C */ stfs f5, 0x4c(r1) +/* 8019BD34 00198C94 D0 81 00 50 */ stfs f4, 0x50(r1) +/* 8019BD38 00198C98 D0 61 00 54 */ stfs f3, 0x54(r1) +/* 8019BD3C 00198C9C D0 41 00 58 */ stfs f2, 0x58(r1) +/* 8019BD40 00198CA0 D0 21 00 5C */ stfs f1, 0x5c(r1) +/* 8019BD44 00198CA4 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 8019BD48 00198CA8 48 1E 07 49 */ bl GXLoadTexMtxImm +/* 8019BD4C 00198CAC E3 E1 02 68 */ psq_l f31, 616(r1), 0, qr0 +/* 8019BD50 00198CB0 CB E1 02 60 */ lfd f31, 0x260(r1) +/* 8019BD54 00198CB4 E3 C1 02 58 */ psq_l f30, 600(r1), 0, qr0 +/* 8019BD58 00198CB8 CB C1 02 50 */ lfd f30, 0x250(r1) +/* 8019BD5C 00198CBC E3 A1 02 48 */ psq_l f29, 584(r1), 0, qr0 +/* 8019BD60 00198CC0 CB A1 02 40 */ lfd f29, 0x240(r1) +/* 8019BD64 00198CC4 E3 81 02 38 */ psq_l f28, 568(r1), 0, qr0 +/* 8019BD68 00198CC8 CB 81 02 30 */ lfd f28, 0x230(r1) +/* 8019BD6C 00198CCC E3 61 02 28 */ psq_l f27, 552(r1), 0, qr0 +/* 8019BD70 00198CD0 CB 61 02 20 */ lfd f27, 0x220(r1) +/* 8019BD74 00198CD4 E3 41 02 18 */ psq_l f26, 536(r1), 0, qr0 +/* 8019BD78 00198CD8 CB 41 02 10 */ lfd f26, 0x210(r1) +/* 8019BD7C 00198CDC E3 21 02 08 */ psq_l f25, 520(r1), 0, qr0 +/* 8019BD80 00198CE0 CB 21 02 00 */ lfd f25, 0x200(r1) +/* 8019BD84 00198CE4 E3 01 01 F8 */ psq_l f24, 504(r1), 0, qr0 +/* 8019BD88 00198CE8 CB 01 01 F0 */ lfd f24, 0x1f0(r1) +/* 8019BD8C 00198CEC E2 E1 01 E8 */ psq_l f23, 488(r1), 0, qr0 +/* 8019BD90 00198CF0 CA E1 01 E0 */ lfd f23, 0x1e0(r1) +/* 8019BD94 00198CF4 BB 21 01 C4 */ lmw r25, 0x1c4(r1) +/* 8019BD98 00198CF8 80 01 02 74 */ lwz r0, 0x274(r1) +/* 8019BD9C 00198CFC 7C 08 03 A6 */ mtlr r0 +/* 8019BDA0 00198D00 38 21 02 70 */ addi r1, r1, 0x270 +/* 8019BDA4 00198D04 4E 80 00 20 */ blr + +.global UpdatePatch__FfRQ220CFluidPlaneCPURender10SPatchInfoRC14CFluidPlaneCPURC9CVector3fRC14CRippleManageriiii +UpdatePatch__FfRQ220CFluidPlaneCPURender10SPatchInfoRC14CFluidPlaneCPURC9CVector3fRC14CRippleManageriiii: +/* 8019BDA8 00198D08 94 21 FB 10 */ stwu r1, -0x4f0(r1) +/* 8019BDAC 00198D0C 7C 08 02 A6 */ mflr r0 +/* 8019BDB0 00198D10 90 01 04 F4 */ stw r0, 0x4f4(r1) +/* 8019BDB4 00198D14 DB E1 04 E0 */ stfd f31, 0x4e0(r1) +/* 8019BDB8 00198D18 F3 E1 04 E8 */ psq_st f31, 1256(r1), 0, qr0 +/* 8019BDBC 00198D1C BE 81 04 B0 */ stmw r20, 0x4b0(r1) +/* 8019BDC0 00198D20 FF E0 08 90 */ fmr f31, f1 +/* 8019BDC4 00198D24 7C 74 1B 78 */ mr r20, r3 +/* 8019BDC8 00198D28 7C 95 23 78 */ mr r21, r4 +/* 8019BDCC 00198D2C 7C B6 2B 78 */ mr r22, r5 +/* 8019BDD0 00198D30 7C D7 33 78 */ mr r23, r6 +/* 8019BDD4 00198D34 7C F8 3B 78 */ mr r24, r7 +/* 8019BDD8 00198D38 7D 19 43 78 */ mr r25, r8 +/* 8019BDDC 00198D3C 7D 3A 4B 78 */ mr r26, r9 +/* 8019BDE0 00198D40 7D 5B 53 78 */ mr r27, r10 +/* 8019BDE4 00198D44 48 0D 3C 85 */ bl GetGlobalSineWave__Fv +/* 8019BDE8 00198D48 3C A0 E0 00 */ lis r5, 0xE0000040@ha +/* 8019BDEC 00198D4C 7C 7D 1B 78 */ mr r29, r3 +/* 8019BDF0 00198D50 38 80 00 51 */ li r4, 0x51 +/* 8019BDF4 00198D54 38 65 00 40 */ addi r3, r5, 0xE0000040@l +/* 8019BDF8 00198D58 48 1E 2D 71 */ bl DCZeroRange +/* 8019BDFC 00198D5C 88 17 00 18 */ lbz r0, 0x18(r23) +/* 8019BE00 00198D60 38 60 00 00 */ li r3, 0 +/* 8019BE04 00198D64 90 61 00 2C */ stw r3, 0x2c(r1) +/* 8019BE08 00198D68 3B 80 00 01 */ li r28, 1 +/* 8019BE0C 00198D6C 28 00 00 00 */ cmplwi r0, 0 +/* 8019BE10 00198D70 41 82 00 E0 */ beq lbl_8019BEF0 +/* 8019BE14 00198D74 83 F7 00 10 */ lwz r31, 0x10(r23) +/* 8019BE18 00198D78 3B C1 00 30 */ addi r30, r1, 0x30 +/* 8019BE1C 00198D7C 48 00 00 AC */ b lbl_8019BEC8 +lbl_8019BE20: +/* 8019BE20 00198D80 C0 3F 00 04 */ lfs f1, 4(r31) +/* 8019BE24 00198D84 C0 1F 00 14 */ lfs f0, 0x14(r31) +/* 8019BE28 00198D88 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8019BE2C 00198D8C 4C 41 13 82 */ cror 2, 1, 2 +/* 8019BE30 00198D90 41 82 00 94 */ beq lbl_8019BEC4 +/* 8019BE34 00198D94 93 E1 00 08 */ stw r31, 8(r1) +/* 8019BE38 00198D98 7F E3 FB 78 */ mr r3, r31 +/* 8019BE3C 00198D9C 7E 84 A3 78 */ mr r4, r20 +/* 8019BE40 00198DA0 38 A1 00 08 */ addi r5, r1, 8 +/* 8019BE44 00198DA4 93 01 00 1C */ stw r24, 0x1c(r1) +/* 8019BE48 00198DA8 93 21 00 20 */ stw r25, 0x20(r1) +/* 8019BE4C 00198DAC 93 41 00 24 */ stw r26, 0x24(r1) +/* 8019BE50 00198DB0 93 61 00 28 */ stw r27, 0x28(r1) +/* 8019BE54 00198DB4 48 0D 39 B1 */ bl PrepareRipple__FRC7CRippleRCQ220CFluidPlaneCPURender10SPatchInfoRQ220CFluidPlaneCPURender11SRippleInfo +/* 8019BE58 00198DB8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8019BE5C 00198DBC 41 82 00 68 */ beq lbl_8019BEC4 +/* 8019BE60 00198DC0 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 8019BE64 00198DC4 1C 00 00 24 */ mulli r0, r0, 0x24 +/* 8019BE68 00198DC8 7C 9E 02 15 */ add. r4, r30, r0 +/* 8019BE6C 00198DCC 41 82 00 4C */ beq lbl_8019BEB8 +/* 8019BE70 00198DD0 80 01 00 08 */ lwz r0, 8(r1) +/* 8019BE74 00198DD4 80 61 00 0C */ lwz r3, 0xc(r1) +/* 8019BE78 00198DD8 90 04 00 00 */ stw r0, 0(r4) +/* 8019BE7C 00198DDC 80 01 00 10 */ lwz r0, 0x10(r1) +/* 8019BE80 00198DE0 90 64 00 04 */ stw r3, 4(r4) +/* 8019BE84 00198DE4 80 61 00 14 */ lwz r3, 0x14(r1) +/* 8019BE88 00198DE8 90 04 00 08 */ stw r0, 8(r4) +/* 8019BE8C 00198DEC 80 01 00 18 */ lwz r0, 0x18(r1) +/* 8019BE90 00198DF0 90 64 00 0C */ stw r3, 0xc(r4) +/* 8019BE94 00198DF4 80 61 00 1C */ lwz r3, 0x1c(r1) +/* 8019BE98 00198DF8 90 04 00 10 */ stw r0, 0x10(r4) +/* 8019BE9C 00198DFC 80 01 00 20 */ lwz r0, 0x20(r1) +/* 8019BEA0 00198E00 90 64 00 14 */ stw r3, 0x14(r4) +/* 8019BEA4 00198E04 80 61 00 24 */ lwz r3, 0x24(r1) +/* 8019BEA8 00198E08 90 04 00 18 */ stw r0, 0x18(r4) +/* 8019BEAC 00198E0C 80 01 00 28 */ lwz r0, 0x28(r1) +/* 8019BEB0 00198E10 90 64 00 1C */ stw r3, 0x1c(r4) +/* 8019BEB4 00198E14 90 04 00 20 */ stw r0, 0x20(r4) +lbl_8019BEB8: +/* 8019BEB8 00198E18 80 61 00 2C */ lwz r3, 0x2c(r1) +/* 8019BEBC 00198E1C 38 03 00 01 */ addi r0, r3, 1 +/* 8019BEC0 00198E20 90 01 00 2C */ stw r0, 0x2c(r1) +lbl_8019BEC4: +/* 8019BEC4 00198E24 3B FF 00 40 */ addi r31, r31, 0x40 +lbl_8019BEC8: +/* 8019BEC8 00198E28 80 17 00 08 */ lwz r0, 8(r23) +/* 8019BECC 00198E2C 80 77 00 10 */ lwz r3, 0x10(r23) +/* 8019BED0 00198E30 54 00 30 32 */ slwi r0, r0, 6 +/* 8019BED4 00198E34 7C 03 02 14 */ add r0, r3, r0 +/* 8019BED8 00198E38 7C 1F 00 40 */ cmplw r31, r0 +/* 8019BEDC 00198E3C 40 82 FF 44 */ bne lbl_8019BE20 +/* 8019BEE0 00198E40 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 8019BEE4 00198E44 2C 00 00 00 */ cmpwi r0, 0 +/* 8019BEE8 00198E48 41 82 00 08 */ beq lbl_8019BEF0 +/* 8019BEEC 00198E4C 3B 80 00 00 */ li r28, 0 +lbl_8019BEF0: +/* 8019BEF0 00198E50 57 83 06 3F */ clrlwi. r3, r28, 0x18 +/* 8019BEF4 00198E54 41 82 00 5C */ beq lbl_8019BF50 +/* 8019BEF8 00198E58 80 C1 00 2C */ lwz r6, 0x2c(r1) +/* 8019BEFC 00198E5C 38 80 00 00 */ li r4, 0 +/* 8019BF00 00198E60 2C 06 00 00 */ cmpwi r6, 0 +/* 8019BF04 00198E64 40 81 00 40 */ ble lbl_8019BF44 +/* 8019BF08 00198E68 2C 06 00 08 */ cmpwi r6, 8 +/* 8019BF0C 00198E6C 38 A6 FF F8 */ addi r5, r6, -8 +/* 8019BF10 00198E70 40 81 00 20 */ ble lbl_8019BF30 +/* 8019BF14 00198E74 38 05 00 07 */ addi r0, r5, 7 +/* 8019BF18 00198E78 54 00 E8 FE */ srwi r0, r0, 3 +/* 8019BF1C 00198E7C 7C 09 03 A6 */ mtctr r0 +/* 8019BF20 00198E80 2C 05 00 00 */ cmpwi r5, 0 +/* 8019BF24 00198E84 40 81 00 0C */ ble lbl_8019BF30 +lbl_8019BF28: +/* 8019BF28 00198E88 38 84 00 08 */ addi r4, r4, 8 +/* 8019BF2C 00198E8C 42 00 FF FC */ bdnz lbl_8019BF28 +lbl_8019BF30: +/* 8019BF30 00198E90 7C 04 30 50 */ subf r0, r4, r6 +/* 8019BF34 00198E94 7C 09 03 A6 */ mtctr r0 +/* 8019BF38 00198E98 7C 04 30 00 */ cmpw r4, r6 +/* 8019BF3C 00198E9C 40 80 00 08 */ bge lbl_8019BF44 +lbl_8019BF40: +/* 8019BF40 00198EA0 42 00 00 00 */ bdnz lbl_8019BF40 +lbl_8019BF44: +/* 8019BF44 00198EA4 38 00 00 00 */ li r0, 0 +/* 8019BF48 00198EA8 90 01 00 2C */ stw r0, 0x2c(r1) +/* 8019BF4C 00198EAC 48 00 00 D4 */ b lbl_8019C020 +lbl_8019BF50: +/* 8019BF50 00198EB0 FC 20 F8 90 */ fmr f1, f31 +/* 8019BF54 00198EB4 3C 80 E0 00 */ lis r4, 0xE00000A0@ha +/* 8019BF58 00198EB8 7F A5 EB 78 */ mr r5, r29 +/* 8019BF5C 00198EBC 7E 86 A3 78 */ mr r6, r20 +/* 8019BF60 00198EC0 7E A7 AB 78 */ mr r7, r21 +/* 8019BF64 00198EC4 7E C8 B3 78 */ mr r8, r22 +/* 8019BF68 00198EC8 38 64 00 A0 */ addi r3, r4, 0xE00000A0@l +/* 8019BF6C 00198ECC 38 84 00 40 */ addi r4, r4, 0x40 +/* 8019BF70 00198ED0 48 00 00 CD */ bl ApplyTurbulence__FfRA45_A45_Q220CFluidPlaneCPURender13SHFieldSamplePCUcRA256_CfRCQ220CFluidPlaneCPURender10SPatchInfoRC14CFluidPlaneCPURC9CVector3f +/* 8019BF74 00198ED4 3C A0 E0 00 */ lis r5, 0xE00000A0@ha +/* 8019BF78 00198ED8 7F A6 EB 78 */ mr r6, r29 +/* 8019BF7C 00198EDC 7E 87 A3 78 */ mr r7, r20 +/* 8019BF80 00198EE0 38 61 00 2C */ addi r3, r1, 0x2c +/* 8019BF84 00198EE4 38 85 00 A0 */ addi r4, r5, 0xE00000A0@l +/* 8019BF88 00198EE8 38 A5 00 40 */ addi r5, r5, 0x40 +/* 8019BF8C 00198EEC 48 0D 09 FD */ bl ApplyRipples__FRC14CRippleManagerRA43_A43_Q220CFluidPlaneCPURender13SHFieldSampleRA22_A22_UcRA256_CfRQ220CFluidPlaneCPURender10SPatchInfo +/* 8019BF90 00198EF0 88 14 00 37 */ lbz r0, 0x37(r20) +/* 8019BF94 00198EF4 2C 00 00 01 */ cmpwi r0, 1 +/* 8019BF98 00198EF8 40 82 00 1C */ bne lbl_8019BFB4 +/* 8019BF9C 00198EFC 3C 80 E0 00 */ lis r4, 0xE00000A0@ha +/* 8019BFA0 00198F00 7E 85 A3 78 */ mr r5, r20 +/* 8019BFA4 00198F04 38 64 00 A0 */ addi r3, r4, 0xE00000A0@l +/* 8019BFA8 00198F08 38 84 00 40 */ addi r4, r4, 0x40 +/* 8019BFAC 00198F0C 48 00 01 F5 */ bl UpdatePatchNoNormals__FPCUcPCUcQ220CFluidPlaneCPURender10SPatchInfo +/* 8019BFB0 00198F10 48 00 00 18 */ b lbl_8019BFC8 +lbl_8019BFB4: +/* 8019BFB4 00198F14 3C 80 E0 00 */ lis r4, 0xE00000A0@ha +/* 8019BFB8 00198F18 7E 85 A3 78 */ mr r5, r20 +/* 8019BFBC 00198F1C 38 64 00 A0 */ addi r3, r4, 0xE00000A0@l +/* 8019BFC0 00198F20 38 84 00 40 */ addi r4, r4, 0x40 +/* 8019BFC4 00198F24 48 00 05 05 */ bl UpdatePatchWithNormals__FPCUcPCUcQ220CFluidPlaneCPURender10SPatchInfo +lbl_8019BFC8: +/* 8019BFC8 00198F28 80 C1 00 2C */ lwz r6, 0x2c(r1) +/* 8019BFCC 00198F2C 57 83 06 3E */ clrlwi r3, r28, 0x18 +/* 8019BFD0 00198F30 38 80 00 00 */ li r4, 0 +/* 8019BFD4 00198F34 2C 06 00 00 */ cmpwi r6, 0 +/* 8019BFD8 00198F38 40 81 00 40 */ ble lbl_8019C018 +/* 8019BFDC 00198F3C 2C 06 00 08 */ cmpwi r6, 8 +/* 8019BFE0 00198F40 38 A6 FF F8 */ addi r5, r6, -8 +/* 8019BFE4 00198F44 40 81 00 20 */ ble lbl_8019C004 +/* 8019BFE8 00198F48 38 05 00 07 */ addi r0, r5, 7 +/* 8019BFEC 00198F4C 54 00 E8 FE */ srwi r0, r0, 3 +/* 8019BFF0 00198F50 7C 09 03 A6 */ mtctr r0 +/* 8019BFF4 00198F54 2C 05 00 00 */ cmpwi r5, 0 +/* 8019BFF8 00198F58 40 81 00 0C */ ble lbl_8019C004 +lbl_8019BFFC: +/* 8019BFFC 00198F5C 38 84 00 08 */ addi r4, r4, 8 +/* 8019C000 00198F60 42 00 FF FC */ bdnz lbl_8019BFFC +lbl_8019C004: +/* 8019C004 00198F64 7C 04 30 50 */ subf r0, r4, r6 +/* 8019C008 00198F68 7C 09 03 A6 */ mtctr r0 +/* 8019C00C 00198F6C 7C 04 30 00 */ cmpw r4, r6 +/* 8019C010 00198F70 40 80 00 08 */ bge lbl_8019C018 +lbl_8019C014: +/* 8019C014 00198F74 42 00 00 00 */ bdnz lbl_8019C014 +lbl_8019C018: +/* 8019C018 00198F78 38 00 00 00 */ li r0, 0 +/* 8019C01C 00198F7C 90 01 00 2C */ stw r0, 0x2c(r1) +lbl_8019C020: +/* 8019C020 00198F80 E3 E1 04 E8 */ psq_l f31, 1256(r1), 0, qr0 +/* 8019C024 00198F84 CB E1 04 E0 */ lfd f31, 0x4e0(r1) +/* 8019C028 00198F88 BA 81 04 B0 */ lmw r20, 0x4b0(r1) +/* 8019C02C 00198F8C 80 01 04 F4 */ lwz r0, 0x4f4(r1) +/* 8019C030 00198F90 7C 08 03 A6 */ mtlr r0 +/* 8019C034 00198F94 38 21 04 F0 */ addi r1, r1, 0x4f0 +/* 8019C038 00198F98 4E 80 00 20 */ blr + +.global ApplyTurbulence__FfRA45_A45_Q220CFluidPlaneCPURender13SHFieldSamplePCUcRA256_CfRCQ220CFluidPlaneCPURender10SPatchInfoRC14CFluidPlaneCPURC9CVector3f +ApplyTurbulence__FfRA45_A45_Q220CFluidPlaneCPURender13SHFieldSamplePCUcRA256_CfRCQ220CFluidPlaneCPURender10SPatchInfoRC14CFluidPlaneCPURC9CVector3f: +/* 8019C03C 00198F9C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8019C040 00198FA0 7C 08 02 A6 */ mflr r0 +/* 8019C044 00198FA4 90 01 00 24 */ stw r0, 0x24(r1) +/* 8019C048 00198FA8 88 02 98 E9 */ lbz r0, lbl_805AB609@sda21(r2) +/* 8019C04C 00198FAC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8019C050 00198FB0 28 00 00 00 */ cmplwi r0, 0 +/* 8019C054 00198FB4 41 82 00 0C */ beq lbl_8019C060 +/* 8019C058 00198FB8 88 07 01 54 */ lbz r0, 0x154(r7) +/* 8019C05C 00198FBC 48 00 00 08 */ b lbl_8019C064 +lbl_8019C060: +/* 8019C060 00198FC0 38 00 00 00 */ li r0, 0 +lbl_8019C064: +/* 8019C064 00198FC4 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 8019C068 00198FC8 40 82 00 10 */ bne lbl_8019C078 +/* 8019C06C 00198FCC 38 80 3F 48 */ li r4, 0x3f48 +/* 8019C070 00198FD0 48 1E 2A F9 */ bl DCZeroRange +/* 8019C074 00198FD4 48 00 01 18 */ b lbl_8019C18C +lbl_8019C078: +/* 8019C078 00198FD8 88 A6 00 00 */ lbz r5, 0(r6) +/* 8019C07C 00198FDC 38 80 00 00 */ li r4, 0 +/* 8019C080 00198FE0 88 06 00 01 */ lbz r0, 1(r6) +/* 8019C084 00198FE4 81 4D A5 74 */ lwz r10, lbl_805A9134@sda21(r13) +/* 8019C088 00198FE8 7C A5 07 74 */ extsb r5, r5 +/* 8019C08C 00198FEC 7C 00 07 74 */ extsb r0, r0 +/* 8019C090 00198FF0 C0 07 01 4C */ lfs f0, 0x14c(r7) +/* 8019C094 00198FF4 7C A5 52 14 */ add r5, r5, r10 +/* 8019C098 00198FF8 C0 86 00 18 */ lfs f4, 0x18(r6) +/* 8019C09C 00198FFC 39 25 FF FC */ addi r9, r5, -4 +/* 8019C0A0 00199000 C0 62 A6 DC */ lfs f3, lbl_805AC3FC@sda21(r2) +/* 8019C0A4 00199004 7C A0 52 14 */ add r5, r0, r10 +/* 8019C0A8 00199008 C0 46 00 08 */ lfs f2, 8(r6) +/* 8019C0AC 0019900C 7D 29 53 D6 */ divw r9, r9, r10 +/* 8019C0B0 00199010 EC E4 00 F2 */ fmuls f7, f4, f3 +/* 8019C0B4 00199014 38 05 FF FC */ addi r0, r5, -4 +/* 8019C0B8 00199018 C0 68 00 04 */ lfs f3, 4(r8) +/* 8019C0BC 0019901C ED 01 00 32 */ fmuls f8, f1, f0 +/* 8019C0C0 00199020 C0 C7 01 50 */ lfs f6, 0x150(r7) +/* 8019C0C4 00199024 EC 82 38 28 */ fsubs f4, f2, f7 +/* 8019C0C8 00199028 7C 00 53 D6 */ divw r0, r0, r10 +/* 8019C0CC 0019902C C0 42 A6 E0 */ lfs f2, lbl_805AC400@sda21(r2) +/* 8019C0D0 00199030 EC 64 18 28 */ fsubs f3, f4, f3 +/* 8019C0D4 00199034 7D 2A 49 D6 */ mullw r9, r10, r9 +/* 8019C0D8 00199038 7C AA 01 D6 */ mullw r5, r10, r0 +/* 8019C0DC 0019903C 39 89 00 02 */ addi r12, r9, 2 +/* 8019C0E0 00199040 38 0C 00 01 */ addi r0, r12, 1 +/* 8019C0E4 00199044 3B E5 00 02 */ addi r31, r5, 2 +/* 8019C0E8 00199048 48 00 00 9C */ b lbl_8019C184 +lbl_8019C0EC: +/* 8019C0EC 0019904C C0 26 00 04 */ lfs f1, 4(r6) +/* 8019C0F0 00199050 7C 6B 1B 78 */ mr r11, r3 +/* 8019C0F4 00199054 C0 08 00 00 */ lfs f0, 0(r8) +/* 8019C0F8 00199058 EC 83 00 F2 */ fmuls f4, f3, f3 +/* 8019C0FC 0019905C EC 21 38 28 */ fsubs f1, f1, f7 +/* 8019C100 00199060 ED 21 00 28 */ fsubs f9, f1, f0 +/* 8019C104 00199064 7C 09 03 A6 */ mtctr r0 +/* 8019C108 00199068 2C 0C 00 00 */ cmpwi r12, 0 +/* 8019C10C 0019906C 41 80 00 68 */ blt lbl_8019C174 +lbl_8019C110: +/* 8019C110 00199070 EC A9 22 7A */ fmadds f5, f9, f9, f4 +/* 8019C114 00199074 FC 02 28 00 */ fcmpu cr0, f2, f5 +/* 8019C118 00199078 40 82 00 0C */ bne lbl_8019C124 +/* 8019C11C 0019907C FC 00 28 90 */ fmr f0, f5 +/* 8019C120 00199080 48 00 00 0C */ b lbl_8019C12C +lbl_8019C124: +/* 8019C124 00199084 10 00 28 34 */ ps_rsqrte f0, f5 +/* 8019C128 00199088 10 00 01 72 */ ps_mul f0, f0, f5 +lbl_8019C12C: +/* 8019C12C 0019908C EC 26 00 32 */ fmuls f1, f6, f0 +/* 8019C130 00199090 80 A7 01 44 */ lwz r5, 0x144(r7) +/* 8019C134 00199094 C0 07 01 48 */ lfs f0, 0x148(r7) +/* 8019C138 00199098 39 25 FF FF */ addi r9, r5, -1 +/* 8019C13C 0019909C 81 47 01 40 */ lwz r10, 0x140(r7) +/* 8019C140 001990A0 EC 21 40 2A */ fadds f1, f1, f8 +/* 8019C144 001990A4 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8019C148 001990A8 FC 00 00 1E */ fctiwz f0, f0 +/* 8019C14C 001990AC D8 01 00 08 */ stfd f0, 8(r1) +/* 8019C150 001990B0 80 A1 00 0C */ lwz r5, 0xc(r1) +/* 8019C154 001990B4 7D 25 28 38 */ and r5, r9, r5 +/* 8019C158 001990B8 54 A5 10 3A */ slwi r5, r5, 2 +/* 8019C15C 001990BC 7C 0A 2C 2E */ lfsx f0, r10, r5 +/* 8019C160 001990C0 D0 0B 00 00 */ stfs f0, 0(r11) +/* 8019C164 001990C4 39 6B 00 08 */ addi r11, r11, 8 +/* 8019C168 001990C8 C0 06 00 18 */ lfs f0, 0x18(r6) +/* 8019C16C 001990CC ED 29 00 2A */ fadds f9, f9, f0 +/* 8019C170 001990D0 42 00 FF A0 */ bdnz lbl_8019C110 +lbl_8019C174: +/* 8019C174 001990D4 C0 06 00 18 */ lfs f0, 0x18(r6) +/* 8019C178 001990D8 38 63 01 68 */ addi r3, r3, 0x168 +/* 8019C17C 001990DC 38 84 00 01 */ addi r4, r4, 1 +/* 8019C180 001990E0 EC 63 00 2A */ fadds f3, f3, f0 +lbl_8019C184: +/* 8019C184 001990E4 7C 04 F8 00 */ cmpw r4, r31 +/* 8019C188 001990E8 40 81 FF 64 */ ble lbl_8019C0EC +lbl_8019C18C: +/* 8019C18C 001990EC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8019C190 001990F0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8019C194 001990F4 7C 08 03 A6 */ mtlr r0 +/* 8019C198 001990F8 38 21 00 20 */ addi r1, r1, 0x20 +/* 8019C19C 001990FC 4E 80 00 20 */ blr + +.global UpdatePatchNoNormals__FPCUcPCUcQ220CFluidPlaneCPURender10SPatchInfo +UpdatePatchNoNormals__FPCUcPCUcQ220CFluidPlaneCPURender10SPatchInfo: +/* 8019C1A0 00199100 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8019C1A4 00199104 38 C4 00 09 */ addi r6, r4, 9 +/* 8019C1A8 00199108 39 00 00 01 */ li r8, 1 +/* 8019C1AC 0019910C 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8019C1B0 00199110 93 C1 00 38 */ stw r30, 0x38(r1) +/* 8019C1B4 00199114 93 A1 00 34 */ stw r29, 0x34(r1) +/* 8019C1B8 00199118 93 81 00 30 */ stw r28, 0x30(r1) +/* 8019C1BC 0019911C 48 00 02 D4 */ b lbl_8019C490 +lbl_8019C1C0: +/* 8019C1C0 00199120 7C 88 49 D6 */ mullw r4, r8, r9 +/* 8019C1C4 00199124 80 0D 8F E0 */ lwz r0, lbl_805A7BA0@sda21(r13) +/* 8019C1C8 00199128 38 ED 8F E0 */ addi r7, r13, lbl_805A7BA0@sda21 +/* 8019C1CC 0019912C 39 44 00 01 */ addi r10, r4, 1 +/* 8019C1D0 00199130 7C 89 50 50 */ subf r4, r9, r10 +/* 8019C1D4 00199134 91 41 00 1C */ stw r10, 0x1c(r1) +/* 8019C1D8 00199138 7C 00 20 00 */ cmpw r0, r4 +/* 8019C1DC 0019913C 90 81 00 14 */ stw r4, 0x14(r1) +/* 8019C1E0 00199140 40 80 00 08 */ bge lbl_8019C1E8 +/* 8019C1E4 00199144 38 E1 00 14 */ addi r7, r1, 0x14 +lbl_8019C1E8: +/* 8019C1E8 00199148 88 05 00 01 */ lbz r0, 1(r5) +/* 8019C1EC 0019914C 38 81 00 10 */ addi r4, r1, 0x10 +/* 8019C1F0 00199150 81 27 00 00 */ lwz r9, 0(r7) +/* 8019C1F4 00199154 7C 07 07 74 */ extsb r7, r0 +/* 8019C1F8 00199158 38 07 00 01 */ addi r0, r7, 1 +/* 8019C1FC 0019915C 7C 0A 00 00 */ cmpw r10, r0 +/* 8019C200 00199160 90 01 00 10 */ stw r0, 0x10(r1) +/* 8019C204 00199164 40 80 00 08 */ bge lbl_8019C20C +/* 8019C208 00199168 38 81 00 1C */ addi r4, r1, 0x1c +lbl_8019C20C: +/* 8019C20C 0019916C 1C 09 01 68 */ mulli r0, r9, 0x168 +/* 8019C210 00199170 80 E4 00 00 */ lwz r7, 0(r4) +/* 8019C214 00199174 38 86 00 01 */ addi r4, r6, 1 +/* 8019C218 00199178 90 E1 00 1C */ stw r7, 0x1c(r1) +/* 8019C21C 0019917C 39 40 00 01 */ li r10, 1 +/* 8019C220 00199180 7C E3 02 14 */ add r7, r3, r0 +/* 8019C224 00199184 48 00 02 44 */ b lbl_8019C468 +lbl_8019C228: +/* 8019C228 00199188 7D 8A 01 D6 */ mullw r12, r10, r0 +/* 8019C22C 0019918C 81 6D 8F E4 */ lwz r11, lbl_805A7BA4@sda21(r13) +/* 8019C230 00199190 3B CD 8F E4 */ addi r30, r13, lbl_805A7BA4@sda21 +/* 8019C234 00199194 3B AC 00 01 */ addi r29, r12, 1 +/* 8019C238 00199198 7D 80 E8 50 */ subf r12, r0, r29 +/* 8019C23C 0019919C 93 A1 00 18 */ stw r29, 0x18(r1) +/* 8019C240 001991A0 7C 0B 60 00 */ cmpw r11, r12 +/* 8019C244 001991A4 91 81 00 0C */ stw r12, 0xc(r1) +/* 8019C248 001991A8 40 80 00 08 */ bge lbl_8019C250 +/* 8019C24C 001991AC 3B C1 00 0C */ addi r30, r1, 0xc +lbl_8019C250: +/* 8019C250 001991B0 89 85 00 00 */ lbz r12, 0(r5) +/* 8019C254 001991B4 3B E1 00 08 */ addi r31, r1, 8 +/* 8019C258 001991B8 81 7E 00 00 */ lwz r11, 0(r30) +/* 8019C25C 001991BC 7D 8C 07 74 */ extsb r12, r12 +/* 8019C260 001991C0 39 8C 00 01 */ addi r12, r12, 1 +/* 8019C264 001991C4 7C 1D 60 00 */ cmpw r29, r12 +/* 8019C268 001991C8 91 81 00 08 */ stw r12, 8(r1) +/* 8019C26C 001991CC 40 80 00 08 */ bge lbl_8019C274 +/* 8019C270 001991D0 3B E1 00 18 */ addi r31, r1, 0x18 +lbl_8019C274: +/* 8019C274 001991D4 89 84 00 00 */ lbz r12, 0(r4) +/* 8019C278 001991D8 83 FF 00 00 */ lwz r31, 0(r31) +/* 8019C27C 001991DC 55 8C 06 FE */ clrlwi r12, r12, 0x1b +/* 8019C280 001991E0 2C 0C 00 1F */ cmpwi r12, 0x1f +/* 8019C284 001991E4 93 E1 00 18 */ stw r31, 0x18(r1) +/* 8019C288 001991E8 40 82 00 84 */ bne lbl_8019C30C +/* 8019C28C 001991EC C0 22 A6 E0 */ lfs f1, lbl_805AC400@sda21(r2) +/* 8019C290 001991F0 7D 3F 4B 78 */ mr r31, r9 +/* 8019C294 001991F4 7C FE 3B 78 */ mr r30, r7 +/* 8019C298 001991F8 55 6C 18 38 */ slwi r12, r11, 3 +/* 8019C29C 001991FC 48 00 00 60 */ b lbl_8019C2FC +lbl_8019C2A0: +/* 8019C2A0 00199200 7D 7C 5B 78 */ mr r28, r11 +/* 8019C2A4 00199204 7F BE 62 14 */ add r29, r30, r12 +/* 8019C2A8 00199208 48 00 00 40 */ b lbl_8019C2E8 +lbl_8019C2AC: +/* 8019C2AC 0019920C C0 5D 00 00 */ lfs f2, 0(r29) +/* 8019C2B0 00199210 38 00 00 00 */ li r0, 0 +/* 8019C2B4 00199214 C0 05 00 38 */ lfs f0, 0x38(r5) +/* 8019C2B8 00199218 FC 02 08 40 */ fcmpo cr0, f2, f1 +/* 8019C2BC 0019921C 40 81 00 20 */ ble lbl_8019C2DC +/* 8019C2C0 00199220 EC 00 00 B2 */ fmuls f0, f0, f2 +/* 8019C2C4 00199224 FC 00 00 1E */ fctiwz f0, f0 +/* 8019C2C8 00199228 D8 01 00 20 */ stfd f0, 0x20(r1) +/* 8019C2CC 0019922C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8019C2D0 00199230 2C 00 00 FF */ cmpwi r0, 0xff +/* 8019C2D4 00199234 40 81 00 08 */ ble lbl_8019C2DC +/* 8019C2D8 00199238 38 00 00 FF */ li r0, 0xff +lbl_8019C2DC: +/* 8019C2DC 0019923C 98 1D 00 07 */ stb r0, 7(r29) +/* 8019C2E0 00199240 3B BD 00 08 */ addi r29, r29, 8 +/* 8019C2E4 00199244 3B 9C 00 01 */ addi r28, r28, 1 +lbl_8019C2E8: +/* 8019C2E8 00199248 80 01 00 18 */ lwz r0, 0x18(r1) +/* 8019C2EC 0019924C 7C 1C 00 00 */ cmpw r28, r0 +/* 8019C2F0 00199250 41 80 FF BC */ blt lbl_8019C2AC +/* 8019C2F4 00199254 3B DE 01 68 */ addi r30, r30, 0x168 +/* 8019C2F8 00199258 3B FF 00 01 */ addi r31, r31, 1 +lbl_8019C2FC: +/* 8019C2FC 0019925C 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 8019C300 00199260 7C 1F 00 00 */ cmpw r31, r0 +/* 8019C304 00199264 41 80 FF 9C */ blt lbl_8019C2A0 +/* 8019C308 00199268 48 00 01 58 */ b lbl_8019C460 +lbl_8019C30C: +/* 8019C30C 0019926C 2C 08 00 00 */ cmpwi r8, 0 +/* 8019C310 00199270 40 81 00 80 */ ble lbl_8019C390 +/* 8019C314 00199274 81 8D A5 70 */ lwz r12, lbl_805A9130@sda21(r13) +/* 8019C318 00199278 39 8C 00 01 */ addi r12, r12, 1 +/* 8019C31C 0019927C 7C 08 60 00 */ cmpw r8, r12 +/* 8019C320 00199280 40 80 00 70 */ bge lbl_8019C390 +/* 8019C324 00199284 2C 0A 00 00 */ cmpwi r10, 0 +/* 8019C328 00199288 40 81 00 68 */ ble lbl_8019C390 +/* 8019C32C 0019928C 7C 0A 60 00 */ cmpw r10, r12 +/* 8019C330 00199290 40 80 00 60 */ bge lbl_8019C390 +/* 8019C334 00199294 54 0C 0F FE */ srwi r12, r0, 0x1f +/* 8019C338 00199298 C0 02 A6 E0 */ lfs f0, lbl_805AC400@sda21(r2) +/* 8019C33C 0019929C 7C 0C 02 14 */ add r0, r12, r0 +/* 8019C340 001992A0 C0 25 00 38 */ lfs f1, 0x38(r5) +/* 8019C344 001992A4 7C 1E 0E 70 */ srawi r30, r0, 1 +/* 8019C348 001992A8 3B A0 00 00 */ li r29, 0 +/* 8019C34C 001992AC 7C 09 F2 14 */ add r0, r9, r30 +/* 8019C350 001992B0 1D 80 01 68 */ mulli r12, r0, 0x168 +/* 8019C354 001992B4 7C 0B F2 14 */ add r0, r11, r30 +/* 8019C358 001992B8 54 00 18 38 */ slwi r0, r0, 3 +/* 8019C35C 001992BC 7D 8C 02 14 */ add r12, r12, r0 +/* 8019C360 001992C0 7D 83 62 14 */ add r12, r3, r12 +/* 8019C364 001992C4 C0 4C 00 00 */ lfs f2, 0(r12) +/* 8019C368 001992C8 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8019C36C 001992CC 40 81 00 20 */ ble lbl_8019C38C +/* 8019C370 001992D0 EC 01 00 B2 */ fmuls f0, f1, f2 +/* 8019C374 001992D4 FC 00 00 1E */ fctiwz f0, f0 +/* 8019C378 001992D8 D8 01 00 20 */ stfd f0, 0x20(r1) +/* 8019C37C 001992DC 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8019C380 001992E0 2C 1D 00 FF */ cmpwi r29, 0xff +/* 8019C384 001992E4 40 81 00 08 */ ble lbl_8019C38C +/* 8019C388 001992E8 3B A0 00 FF */ li r29, 0xff +lbl_8019C38C: +/* 8019C38C 001992EC 9B AC 00 07 */ stb r29, 7(r12) +lbl_8019C390: +/* 8019C390 001992F0 2C 08 00 00 */ cmpwi r8, 0 +/* 8019C394 001992F4 41 82 00 60 */ beq lbl_8019C3F4 +/* 8019C398 001992F8 55 60 18 38 */ slwi r0, r11, 3 +/* 8019C39C 001992FC C0 22 A6 E0 */ lfs f1, lbl_805AC400@sda21(r2) +/* 8019C3A0 00199300 7D 7C 5B 78 */ mr r28, r11 +/* 8019C3A4 00199304 7D 87 02 14 */ add r12, r7, r0 +/* 8019C3A8 00199308 48 00 00 40 */ b lbl_8019C3E8 +lbl_8019C3AC: +/* 8019C3AC 0019930C C0 4C 00 00 */ lfs f2, 0(r12) +/* 8019C3B0 00199310 38 00 00 00 */ li r0, 0 +/* 8019C3B4 00199314 C0 05 00 38 */ lfs f0, 0x38(r5) +/* 8019C3B8 00199318 FC 02 08 40 */ fcmpo cr0, f2, f1 +/* 8019C3BC 0019931C 40 81 00 20 */ ble lbl_8019C3DC +/* 8019C3C0 00199320 EC 00 00 B2 */ fmuls f0, f0, f2 +/* 8019C3C4 00199324 FC 00 00 1E */ fctiwz f0, f0 +/* 8019C3C8 00199328 D8 01 00 20 */ stfd f0, 0x20(r1) +/* 8019C3CC 0019932C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8019C3D0 00199330 2C 00 00 FF */ cmpwi r0, 0xff +/* 8019C3D4 00199334 40 81 00 08 */ ble lbl_8019C3DC +/* 8019C3D8 00199338 38 00 00 FF */ li r0, 0xff +lbl_8019C3DC: +/* 8019C3DC 0019933C 98 0C 00 07 */ stb r0, 7(r12) +/* 8019C3E0 00199340 39 8C 00 08 */ addi r12, r12, 8 +/* 8019C3E4 00199344 3B 9C 00 01 */ addi r28, r28, 1 +lbl_8019C3E8: +/* 8019C3E8 00199348 80 01 00 18 */ lwz r0, 0x18(r1) +/* 8019C3EC 0019934C 7C 1C 00 00 */ cmpw r28, r0 +/* 8019C3F0 00199350 41 80 FF BC */ blt lbl_8019C3AC +lbl_8019C3F4: +/* 8019C3F4 00199354 2C 0A 00 00 */ cmpwi r10, 0 +/* 8019C3F8 00199358 41 82 00 68 */ beq lbl_8019C460 +/* 8019C3FC 0019935C 39 89 00 01 */ addi r12, r9, 1 +/* 8019C400 00199360 55 6B 18 38 */ slwi r11, r11, 3 +/* 8019C404 00199364 1C 0C 01 68 */ mulli r0, r12, 0x168 +/* 8019C408 00199368 C0 22 A6 E0 */ lfs f1, lbl_805AC400@sda21(r2) +/* 8019C40C 0019936C 7D 6B 02 14 */ add r11, r11, r0 +/* 8019C410 00199370 7D 63 5A 14 */ add r11, r3, r11 +/* 8019C414 00199374 48 00 00 40 */ b lbl_8019C454 +lbl_8019C418: +/* 8019C418 00199378 C0 4B 00 00 */ lfs f2, 0(r11) +/* 8019C41C 0019937C 38 00 00 00 */ li r0, 0 +/* 8019C420 00199380 C0 05 00 38 */ lfs f0, 0x38(r5) +/* 8019C424 00199384 FC 02 08 40 */ fcmpo cr0, f2, f1 +/* 8019C428 00199388 40 81 00 20 */ ble lbl_8019C448 +/* 8019C42C 0019938C EC 00 00 B2 */ fmuls f0, f0, f2 +/* 8019C430 00199390 FC 00 00 1E */ fctiwz f0, f0 +/* 8019C434 00199394 D8 01 00 20 */ stfd f0, 0x20(r1) +/* 8019C438 00199398 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8019C43C 0019939C 2C 00 00 FF */ cmpwi r0, 0xff +/* 8019C440 001993A0 40 81 00 08 */ ble lbl_8019C448 +/* 8019C444 001993A4 38 00 00 FF */ li r0, 0xff +lbl_8019C448: +/* 8019C448 001993A8 98 0B 00 07 */ stb r0, 7(r11) +/* 8019C44C 001993AC 39 6B 01 68 */ addi r11, r11, 0x168 +/* 8019C450 001993B0 39 8C 00 01 */ addi r12, r12, 1 +lbl_8019C454: +/* 8019C454 001993B4 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 8019C458 001993B8 7C 0C 00 00 */ cmpw r12, r0 +/* 8019C45C 001993BC 41 80 FF BC */ blt lbl_8019C418 +lbl_8019C460: +/* 8019C460 001993C0 38 84 00 01 */ addi r4, r4, 1 +/* 8019C464 001993C4 39 4A 00 01 */ addi r10, r10, 1 +lbl_8019C468: +/* 8019C468 001993C8 89 65 00 00 */ lbz r11, 0(r5) +/* 8019C46C 001993CC 80 0D A5 74 */ lwz r0, lbl_805A9134@sda21(r13) +/* 8019C470 001993D0 7D 6B 07 74 */ extsb r11, r11 +/* 8019C474 001993D4 7D 6B 02 14 */ add r11, r11, r0 +/* 8019C478 001993D8 39 6B FF FE */ addi r11, r11, -2 +/* 8019C47C 001993DC 7D 6B 03 D6 */ divw r11, r11, r0 +/* 8019C480 001993E0 7C 0A 58 00 */ cmpw r10, r11 +/* 8019C484 001993E4 40 81 FD A4 */ ble lbl_8019C228 +/* 8019C488 001993E8 38 C6 00 09 */ addi r6, r6, 9 +/* 8019C48C 001993EC 39 08 00 01 */ addi r8, r8, 1 +lbl_8019C490: +/* 8019C490 001993F0 88 05 00 01 */ lbz r0, 1(r5) +/* 8019C494 001993F4 81 2D A5 74 */ lwz r9, lbl_805A9134@sda21(r13) +/* 8019C498 001993F8 7C 00 07 74 */ extsb r0, r0 +/* 8019C49C 001993FC 7C 80 4A 14 */ add r4, r0, r9 +/* 8019C4A0 00199400 38 04 FF FE */ addi r0, r4, -2 +/* 8019C4A4 00199404 7C 00 4B D6 */ divw r0, r0, r9 +/* 8019C4A8 00199408 7C 08 00 00 */ cmpw r8, r0 +/* 8019C4AC 0019940C 40 81 FD 14 */ ble lbl_8019C1C0 +/* 8019C4B0 00199410 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8019C4B4 00199414 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 8019C4B8 00199418 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 8019C4BC 0019941C 83 81 00 30 */ lwz r28, 0x30(r1) +/* 8019C4C0 00199420 38 21 00 40 */ addi r1, r1, 0x40 +/* 8019C4C4 00199424 4E 80 00 20 */ blr + +.global UpdatePatchWithNormals__FPCUcPCUcQ220CFluidPlaneCPURender10SPatchInfo +UpdatePatchWithNormals__FPCUcPCUcQ220CFluidPlaneCPURender10SPatchInfo: +/* 8019C4C8 00199428 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 8019C4CC 0019942C 38 E3 01 70 */ addi r7, r3, 0x170 +/* 8019C4D0 00199430 C0 E2 A6 E4 */ lfs f7, lbl_805AC404@sda21(r2) +/* 8019C4D4 00199434 38 84 00 09 */ addi r4, r4, 9 +/* 8019C4D8 00199438 BF 41 00 38 */ stmw r26, 0x38(r1) +/* 8019C4DC 0019943C 39 00 00 01 */ li r8, 1 +/* 8019C4E0 00199440 C0 C2 A6 FC */ lfs f6, lbl_805AC41C@sda21(r2) +/* 8019C4E4 00199444 A8 C5 00 2E */ lha r6, 0x2e(r5) +/* 8019C4E8 00199448 A8 05 00 2A */ lha r0, 0x2a(r5) +/* 8019C4EC 0019944C C0 A5 00 18 */ lfs f5, 0x18(r5) +/* 8019C4F0 00199450 7C 66 01 D6 */ mullw r3, r6, r0 +/* 8019C4F4 00199454 A8 05 00 28 */ lha r0, 0x28(r5) +/* 8019C4F8 00199458 EC E7 01 72 */ fmuls f7, f7, f5 +/* 8019C4FC 0019945C FC A0 38 50 */ fneg f5, f7 +/* 8019C500 00199460 38 C3 FF FF */ addi r6, r3, -1 +/* 8019C504 00199464 EC C6 01 F2 */ fmuls f6, f6, f7 +/* 8019C508 00199468 7C C0 32 14 */ add r6, r0, r6 +/* 8019C50C 0019946C 48 00 05 FC */ b lbl_8019CB08 +lbl_8019C510: +/* 8019C510 00199470 7C 68 51 D6 */ mullw r3, r8, r10 +/* 8019C514 00199474 80 0D 8F DC */ lwz r0, lbl_805A7B9C@sda21(r13) +/* 8019C518 00199478 39 2D 8F DC */ addi r9, r13, lbl_805A7B9C@sda21 +/* 8019C51C 0019947C 39 63 00 01 */ addi r11, r3, 1 +/* 8019C520 00199480 7C 6A 58 50 */ subf r3, r10, r11 +/* 8019C524 00199484 91 61 00 18 */ stw r11, 0x18(r1) +/* 8019C528 00199488 7C 00 18 00 */ cmpw r0, r3 +/* 8019C52C 0019948C 90 61 00 10 */ stw r3, 0x10(r1) +/* 8019C530 00199490 40 80 00 08 */ bge lbl_8019C538 +/* 8019C534 00199494 39 21 00 10 */ addi r9, r1, 0x10 +lbl_8019C538: +/* 8019C538 00199498 88 05 00 01 */ lbz r0, 1(r5) +/* 8019C53C 0019949C 38 61 00 0C */ addi r3, r1, 0xc +/* 8019C540 001994A0 81 29 00 00 */ lwz r9, 0(r9) +/* 8019C544 001994A4 7C 0A 07 74 */ extsb r10, r0 +/* 8019C548 001994A8 38 0A 00 01 */ addi r0, r10, 1 +/* 8019C54C 001994AC 7C 0B 00 00 */ cmpw r11, r0 +/* 8019C550 001994B0 90 01 00 0C */ stw r0, 0xc(r1) +/* 8019C554 001994B4 40 80 00 08 */ bge lbl_8019C55C +/* 8019C558 001994B8 38 61 00 18 */ addi r3, r1, 0x18 +lbl_8019C55C: +/* 8019C55C 001994BC 80 03 00 00 */ lwz r0, 0(r3) +/* 8019C560 001994C0 7C EA 3B 78 */ mr r10, r7 +/* 8019C564 001994C4 38 64 00 01 */ addi r3, r4, 1 +/* 8019C568 001994C8 39 60 00 01 */ li r11, 1 +/* 8019C56C 001994CC 90 01 00 18 */ stw r0, 0x18(r1) +/* 8019C570 001994D0 48 00 05 60 */ b lbl_8019CAD0 +lbl_8019C574: +/* 8019C574 001994D4 7F AB 01 D6 */ mullw r29, r11, r0 +/* 8019C578 001994D8 89 85 00 00 */ lbz r12, 0(r5) +/* 8019C57C 001994DC 3B E1 00 08 */ addi r31, r1, 8 +/* 8019C580 001994E0 7D 8C 07 74 */ extsb r12, r12 +/* 8019C584 001994E4 3B CC 00 01 */ addi r30, r12, 1 +/* 8019C588 001994E8 39 9D 00 01 */ addi r12, r29, 1 +/* 8019C58C 001994EC 7C 0C F0 00 */ cmpw r12, r30 +/* 8019C590 001994F0 91 81 00 14 */ stw r12, 0x14(r1) +/* 8019C594 001994F4 7D 80 60 50 */ subf r12, r0, r12 +/* 8019C598 001994F8 93 C1 00 08 */ stw r30, 8(r1) +/* 8019C59C 001994FC 40 80 00 08 */ bge lbl_8019C5A4 +/* 8019C5A0 00199500 3B E1 00 14 */ addi r31, r1, 0x14 +lbl_8019C5A4: +/* 8019C5A4 00199504 8B C3 00 00 */ lbz r30, 0(r3) +/* 8019C5A8 00199508 83 FF 00 00 */ lwz r31, 0(r31) +/* 8019C5AC 0019950C 57 DE 06 FE */ clrlwi r30, r30, 0x1b +/* 8019C5B0 00199510 2C 1E 00 1F */ cmpwi r30, 0x1f +/* 8019C5B4 00199514 93 E1 00 14 */ stw r31, 0x14(r1) +/* 8019C5B8 00199518 40 82 01 08 */ bne lbl_8019C6C0 +/* 8019C5BC 0019951C C1 62 A6 E0 */ lfs f11, lbl_805AC400@sda21(r2) +/* 8019C5C0 00199520 7D 5F 53 78 */ mr r31, r10 +/* 8019C5C4 00199524 C1 42 A7 18 */ lfs f10, lbl_805AC438@sda21(r2) +/* 8019C5C8 00199528 7D 3C 4B 78 */ mr r28, r9 +/* 8019C5CC 0019952C 48 00 00 E4 */ b lbl_8019C6B0 +lbl_8019C5D0: +/* 8019C5D0 00199530 7F FB FB 78 */ mr r27, r31 +/* 8019C5D4 00199534 7D 9A 63 78 */ mr r26, r12 +/* 8019C5D8 00199538 48 00 00 C4 */ b lbl_8019C69C +lbl_8019C5DC: +/* 8019C5DC 0019953C C1 1B 01 68 */ lfs f8, 0x168(r27) +/* 8019C5E0 00199540 C0 FB FE 98 */ lfs f7, -0x168(r27) +/* 8019C5E4 00199544 C1 3B 00 08 */ lfs f9, 8(r27) +/* 8019C5E8 00199548 EC E8 38 28 */ fsubs f7, f8, f7 +/* 8019C5EC 0019954C C1 1B FF F8 */ lfs f8, -8(r27) +/* 8019C5F0 00199550 ED 09 40 28 */ fsubs f8, f9, f8 +/* 8019C5F4 00199554 ED 85 01 F2 */ fmuls f12, f5, f7 +/* 8019C5F8 00199558 ED 05 02 32 */ fmuls f8, f5, f8 +/* 8019C5FC 0019955C EC EC 03 32 */ fmuls f7, f12, f12 +/* 8019C600 00199560 EC E8 3A 3A */ fmadds f7, f8, f8, f7 +/* 8019C604 00199564 EC 06 39 BA */ fmadds f0, f6, f6, f7 +/* 8019C608 00199568 FC 0B 00 00 */ fcmpu cr0, f11, f0 +/* 8019C60C 0019956C 40 82 00 0C */ bne lbl_8019C618 +/* 8019C610 00199570 FC E0 00 90 */ fmr f7, f0 +/* 8019C614 00199574 48 00 00 0C */ b lbl_8019C620 +lbl_8019C618: +/* 8019C618 00199578 10 E0 00 34 */ ps_rsqrte f7, f0 +/* 8019C61C 0019957C 10 E7 00 32 */ ps_mul f7, f7, f0 +lbl_8019C620: +/* 8019C620 00199580 EC EA 38 24 */ fdivs f7, f10, f7 +/* 8019C624 00199584 3B A0 00 00 */ li r29, 0 +/* 8019C628 00199588 ED 27 02 32 */ fmuls f9, f7, f8 +/* 8019C62C 0019958C ED 07 03 32 */ fmuls f8, f7, f12 +/* 8019C630 00199590 EC E7 01 B2 */ fmuls f7, f7, f6 +/* 8019C634 00199594 FD 20 48 1E */ fctiwz f9, f9 +/* 8019C638 00199598 FD 00 40 1E */ fctiwz f8, f8 +/* 8019C63C 0019959C FC E0 38 1E */ fctiwz f7, f7 +/* 8019C640 001995A0 D9 21 00 20 */ stfd f9, 0x20(r1) +/* 8019C644 001995A4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8019C648 001995A8 D9 01 00 28 */ stfd f8, 0x28(r1) +/* 8019C64C 001995AC D8 E1 00 30 */ stfd f7, 0x30(r1) +/* 8019C650 001995B0 83 C1 00 2C */ lwz r30, 0x2c(r1) +/* 8019C654 001995B4 98 1B 00 04 */ stb r0, 4(r27) +/* 8019C658 001995B8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8019C65C 001995BC 9B DB 00 05 */ stb r30, 5(r27) +/* 8019C660 001995C0 98 1B 00 06 */ stb r0, 6(r27) +/* 8019C664 001995C4 C1 1B 00 00 */ lfs f8, 0(r27) +/* 8019C668 001995C8 C0 E5 00 38 */ lfs f7, 0x38(r5) +/* 8019C66C 001995CC FC 08 58 40 */ fcmpo cr0, f8, f11 +/* 8019C670 001995D0 40 81 00 20 */ ble lbl_8019C690 +/* 8019C674 001995D4 EC E8 01 F2 */ fmuls f7, f8, f7 +/* 8019C678 001995D8 FC E0 38 1E */ fctiwz f7, f7 +/* 8019C67C 001995DC D8 E1 00 30 */ stfd f7, 0x30(r1) +/* 8019C680 001995E0 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 8019C684 001995E4 2C 1D 00 FF */ cmpwi r29, 0xff +/* 8019C688 001995E8 40 81 00 08 */ ble lbl_8019C690 +/* 8019C68C 001995EC 3B A0 00 FF */ li r29, 0xff +lbl_8019C690: +/* 8019C690 001995F0 9B BB 00 07 */ stb r29, 7(r27) +/* 8019C694 001995F4 3B 5A 00 01 */ addi r26, r26, 1 +/* 8019C698 001995F8 3B 7B 00 08 */ addi r27, r27, 8 +lbl_8019C69C: +/* 8019C69C 001995FC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8019C6A0 00199600 7C 1A 00 00 */ cmpw r26, r0 +/* 8019C6A4 00199604 41 80 FF 38 */ blt lbl_8019C5DC +/* 8019C6A8 00199608 3B 9C 00 01 */ addi r28, r28, 1 +/* 8019C6AC 0019960C 3B FF 01 68 */ addi r31, r31, 0x168 +lbl_8019C6B0: +/* 8019C6B0 00199610 80 01 00 18 */ lwz r0, 0x18(r1) +/* 8019C6B4 00199614 7C 1C 00 00 */ cmpw r28, r0 +/* 8019C6B8 00199618 41 80 FF 18 */ blt lbl_8019C5D0 +/* 8019C6BC 0019961C 48 00 04 00 */ b lbl_8019CABC +lbl_8019C6C0: +/* 8019C6C0 00199620 83 A5 00 30 */ lwz r29, 0x30(r5) +/* 8019C6C4 00199624 28 1D 00 00 */ cmplwi r29, 0 +/* 8019C6C8 00199628 41 82 00 18 */ beq lbl_8019C6E0 +/* 8019C6CC 0019962C 41 82 01 2C */ beq lbl_8019C7F8 +/* 8019C6D0 00199630 7F DD 5A 14 */ add r30, r29, r11 +/* 8019C6D4 00199634 7F C6 F0 AE */ lbzx r30, r6, r30 +/* 8019C6D8 00199638 7F DE 07 75 */ extsb. r30, r30 +/* 8019C6DC 0019963C 41 82 01 1C */ beq lbl_8019C7F8 +lbl_8019C6E0: +/* 8019C6E0 00199640 2C 08 00 00 */ cmpwi r8, 0 +/* 8019C6E4 00199644 40 81 01 14 */ ble lbl_8019C7F8 +/* 8019C6E8 00199648 83 CD A5 70 */ lwz r30, lbl_805A9130@sda21(r13) +/* 8019C6EC 0019964C 3B BE 00 01 */ addi r29, r30, 1 +/* 8019C6F0 00199650 7C 08 E8 00 */ cmpw r8, r29 +/* 8019C6F4 00199654 40 80 01 04 */ bge lbl_8019C7F8 +/* 8019C6F8 00199658 2C 0B 00 00 */ cmpwi r11, 0 +/* 8019C6FC 0019965C 40 81 00 FC */ ble lbl_8019C7F8 +/* 8019C700 00199660 7C 0B E8 00 */ cmpw r11, r29 +/* 8019C704 00199664 40 80 00 F4 */ bge lbl_8019C7F8 +/* 8019C708 00199668 1F C0 00 2D */ mulli r30, r0, 0x2d +/* 8019C70C 0019966C 54 1F 0F FE */ srwi r31, r0, 0x1f +/* 8019C710 00199670 C0 E2 A6 E0 */ lfs f7, lbl_805AC400@sda21(r2) +/* 8019C714 00199674 7C 1F 02 14 */ add r0, r31, r0 +/* 8019C718 00199678 57 DF 0F FE */ srwi r31, r30, 0x1f +/* 8019C71C 0019967C 7F FF F2 14 */ add r31, r31, r30 +/* 8019C720 00199680 7F FF 0E 70 */ srawi r31, r31, 1 +/* 8019C724 00199684 7C 00 0E 70 */ srawi r0, r0, 1 +/* 8019C728 00199688 57 FF 18 38 */ slwi r31, r31, 3 +/* 8019C72C 0019968C 54 00 18 38 */ slwi r0, r0, 3 +/* 8019C730 00199690 7F 5F 02 14 */ add r26, r31, r0 +/* 8019C734 00199694 7F 4A D2 14 */ add r26, r10, r26 +/* 8019C738 00199698 C1 3A 01 68 */ lfs f9, 0x168(r26) +/* 8019C73C 0019969C C1 1A FE 98 */ lfs f8, -0x168(r26) +/* 8019C740 001996A0 C1 5A 00 08 */ lfs f10, 8(r26) +/* 8019C744 001996A4 ED 09 40 28 */ fsubs f8, f9, f8 +/* 8019C748 001996A8 C1 3A FF F8 */ lfs f9, -8(r26) +/* 8019C74C 001996AC ED 2A 48 28 */ fsubs f9, f10, f9 +/* 8019C750 001996B0 ED 65 02 32 */ fmuls f11, f5, f8 +/* 8019C754 001996B4 ED 45 02 72 */ fmuls f10, f5, f9 +/* 8019C758 001996B8 ED 0B 02 F2 */ fmuls f8, f11, f11 +/* 8019C75C 001996BC ED 0A 42 BA */ fmadds f8, f10, f10, f8 +/* 8019C760 001996C0 EC 26 41 BA */ fmadds f1, f6, f6, f8 +/* 8019C764 001996C4 FC 07 08 00 */ fcmpu cr0, f7, f1 +/* 8019C768 001996C8 40 82 00 0C */ bne lbl_8019C774 +/* 8019C76C 001996CC FD 20 08 90 */ fmr f9, f1 +/* 8019C770 001996D0 48 00 00 0C */ b lbl_8019C77C +lbl_8019C774: +/* 8019C774 001996D4 11 20 08 34 */ ps_rsqrte f9, f1 +/* 8019C778 001996D8 11 29 00 72 */ ps_mul f9, f9, f1 +lbl_8019C77C: +/* 8019C77C 001996DC C1 02 A7 18 */ lfs f8, lbl_805AC438@sda21(r2) +/* 8019C780 001996E0 3B A0 00 00 */ li r29, 0 +/* 8019C784 001996E4 C0 E2 A6 E0 */ lfs f7, lbl_805AC400@sda21(r2) +/* 8019C788 001996E8 ED 08 48 24 */ fdivs f8, f8, f9 +/* 8019C78C 001996EC ED 48 02 B2 */ fmuls f10, f8, f10 +/* 8019C790 001996F0 ED 28 02 F2 */ fmuls f9, f8, f11 +/* 8019C794 001996F4 ED 08 01 B2 */ fmuls f8, f8, f6 +/* 8019C798 001996F8 FD 40 50 1E */ fctiwz f10, f10 +/* 8019C79C 001996FC FD 20 48 1E */ fctiwz f9, f9 +/* 8019C7A0 00199700 FD 00 40 1E */ fctiwz f8, f8 +/* 8019C7A4 00199704 D9 41 00 30 */ stfd f10, 0x30(r1) +/* 8019C7A8 00199708 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8019C7AC 0019970C D9 21 00 28 */ stfd f9, 0x28(r1) +/* 8019C7B0 00199710 D9 01 00 20 */ stfd f8, 0x20(r1) +/* 8019C7B4 00199714 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8019C7B8 00199718 98 1A 00 04 */ stb r0, 4(r26) +/* 8019C7BC 0019971C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8019C7C0 00199720 9B FA 00 05 */ stb r31, 5(r26) +/* 8019C7C4 00199724 98 1A 00 06 */ stb r0, 6(r26) +/* 8019C7C8 00199728 C1 3A 00 00 */ lfs f9, 0(r26) +/* 8019C7CC 0019972C C1 05 00 38 */ lfs f8, 0x38(r5) +/* 8019C7D0 00199730 FC 09 38 40 */ fcmpo cr0, f9, f7 +/* 8019C7D4 00199734 40 81 00 20 */ ble lbl_8019C7F4 +/* 8019C7D8 00199738 EC E9 02 32 */ fmuls f7, f9, f8 +/* 8019C7DC 0019973C FC E0 38 1E */ fctiwz f7, f7 +/* 8019C7E0 00199740 D8 E1 00 30 */ stfd f7, 0x30(r1) +/* 8019C7E4 00199744 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 8019C7E8 00199748 2C 1D 00 FF */ cmpwi r29, 0xff +/* 8019C7EC 0019974C 40 81 00 08 */ ble lbl_8019C7F4 +/* 8019C7F0 00199750 3B A0 00 FF */ li r29, 0xff +lbl_8019C7F4: +/* 8019C7F4 00199754 9B BA 00 07 */ stb r29, 7(r26) +lbl_8019C7F8: +/* 8019C7F8 00199758 2C 0B 00 00 */ cmpwi r11, 0 +/* 8019C7FC 0019975C 41 82 02 C0 */ beq lbl_8019CABC +/* 8019C800 00199760 2C 08 00 00 */ cmpwi r8, 0 +/* 8019C804 00199764 41 82 02 B8 */ beq lbl_8019CABC +/* 8019C808 00199768 8B A3 00 00 */ lbz r29, 0(r3) +/* 8019C80C 0019976C 57 A0 07 BD */ rlwinm. r0, r29, 0, 0x1e, 0x1e +/* 8019C810 00199770 40 82 00 24 */ bne lbl_8019C834 +/* 8019C814 00199774 88 03 FF F7 */ lbz r0, -9(r3) +/* 8019C818 00199778 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 8019C81C 0019977C 40 82 00 18 */ bne lbl_8019C834 +/* 8019C820 00199780 57 A0 07 7B */ rlwinm. r0, r29, 0, 0x1d, 0x1d +/* 8019C824 00199784 40 82 00 10 */ bne lbl_8019C834 +/* 8019C828 00199788 88 03 FF FF */ lbz r0, -1(r3) +/* 8019C82C 0019978C 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c +/* 8019C830 00199790 41 82 01 C8 */ beq lbl_8019C9F8 +lbl_8019C834: +/* 8019C834 00199794 C1 62 A6 E0 */ lfs f11, lbl_805AC400@sda21(r2) +/* 8019C838 00199798 7D 5A 53 78 */ mr r26, r10 +/* 8019C83C 0019979C C1 42 A7 18 */ lfs f10, lbl_805AC438@sda21(r2) +/* 8019C840 001997A0 7D 9B 63 78 */ mr r27, r12 +/* 8019C844 001997A4 48 00 00 C4 */ b lbl_8019C908 +lbl_8019C848: +/* 8019C848 001997A8 C1 1A 01 68 */ lfs f8, 0x168(r26) +/* 8019C84C 001997AC C0 FA FE 98 */ lfs f7, -0x168(r26) +/* 8019C850 001997B0 C1 3A 00 08 */ lfs f9, 8(r26) +/* 8019C854 001997B4 EC E8 38 28 */ fsubs f7, f8, f7 +/* 8019C858 001997B8 C1 1A FF F8 */ lfs f8, -8(r26) +/* 8019C85C 001997BC ED 09 40 28 */ fsubs f8, f9, f8 +/* 8019C860 001997C0 ED 85 01 F2 */ fmuls f12, f5, f7 +/* 8019C864 001997C4 ED 05 02 32 */ fmuls f8, f5, f8 +/* 8019C868 001997C8 EC EC 03 32 */ fmuls f7, f12, f12 +/* 8019C86C 001997CC EC E8 3A 3A */ fmadds f7, f8, f8, f7 +/* 8019C870 001997D0 EC 46 39 BA */ fmadds f2, f6, f6, f7 +/* 8019C874 001997D4 FC 0B 10 00 */ fcmpu cr0, f11, f2 +/* 8019C878 001997D8 40 82 00 0C */ bne lbl_8019C884 +/* 8019C87C 001997DC FC E0 10 90 */ fmr f7, f2 +/* 8019C880 001997E0 48 00 00 0C */ b lbl_8019C88C +lbl_8019C884: +/* 8019C884 001997E4 10 E0 10 34 */ ps_rsqrte f7, f2 +/* 8019C888 001997E8 10 E7 00 B2 */ ps_mul f7, f7, f2 +lbl_8019C88C: +/* 8019C88C 001997EC EC EA 38 24 */ fdivs f7, f10, f7 +/* 8019C890 001997F0 3B A0 00 00 */ li r29, 0 +/* 8019C894 001997F4 ED 27 02 32 */ fmuls f9, f7, f8 +/* 8019C898 001997F8 ED 07 03 32 */ fmuls f8, f7, f12 +/* 8019C89C 001997FC EC E7 01 B2 */ fmuls f7, f7, f6 +/* 8019C8A0 00199800 FD 20 48 1E */ fctiwz f9, f9 +/* 8019C8A4 00199804 FD 00 40 1E */ fctiwz f8, f8 +/* 8019C8A8 00199808 FC E0 38 1E */ fctiwz f7, f7 +/* 8019C8AC 0019980C D9 21 00 30 */ stfd f9, 0x30(r1) +/* 8019C8B0 00199810 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8019C8B4 00199814 D9 01 00 28 */ stfd f8, 0x28(r1) +/* 8019C8B8 00199818 D8 E1 00 20 */ stfd f7, 0x20(r1) +/* 8019C8BC 0019981C 81 81 00 2C */ lwz r12, 0x2c(r1) +/* 8019C8C0 00199820 98 1A 00 04 */ stb r0, 4(r26) +/* 8019C8C4 00199824 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8019C8C8 00199828 99 9A 00 05 */ stb r12, 5(r26) +/* 8019C8CC 0019982C 98 1A 00 06 */ stb r0, 6(r26) +/* 8019C8D0 00199830 C1 1A 00 00 */ lfs f8, 0(r26) +/* 8019C8D4 00199834 C0 E5 00 38 */ lfs f7, 0x38(r5) +/* 8019C8D8 00199838 FC 08 58 40 */ fcmpo cr0, f8, f11 +/* 8019C8DC 0019983C 40 81 00 20 */ ble lbl_8019C8FC +/* 8019C8E0 00199840 EC E8 01 F2 */ fmuls f7, f8, f7 +/* 8019C8E4 00199844 FC E0 38 1E */ fctiwz f7, f7 +/* 8019C8E8 00199848 D8 E1 00 30 */ stfd f7, 0x30(r1) +/* 8019C8EC 0019984C 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 8019C8F0 00199850 2C 1D 00 FF */ cmpwi r29, 0xff +/* 8019C8F4 00199854 40 81 00 08 */ ble lbl_8019C8FC +/* 8019C8F8 00199858 3B A0 00 FF */ li r29, 0xff +lbl_8019C8FC: +/* 8019C8FC 0019985C 9B BA 00 07 */ stb r29, 7(r26) +/* 8019C900 00199860 3B 7B 00 01 */ addi r27, r27, 1 +/* 8019C904 00199864 3B 5A 00 08 */ addi r26, r26, 8 +lbl_8019C908: +/* 8019C908 00199868 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8019C90C 0019986C 7C 1B 00 00 */ cmpw r27, r0 +/* 8019C910 00199870 41 80 FF 38 */ blt lbl_8019C848 +/* 8019C914 00199874 C1 62 A6 E0 */ lfs f11, lbl_805AC400@sda21(r2) +/* 8019C918 00199878 3B 4A 01 68 */ addi r26, r10, 0x168 +/* 8019C91C 0019987C C1 42 A7 18 */ lfs f10, lbl_805AC438@sda21(r2) +/* 8019C920 00199880 3B 69 00 01 */ addi r27, r9, 1 +/* 8019C924 00199884 48 00 00 C4 */ b lbl_8019C9E8 +lbl_8019C928: +/* 8019C928 00199888 C1 1A 01 68 */ lfs f8, 0x168(r26) +/* 8019C92C 0019988C C0 FA FE 98 */ lfs f7, -0x168(r26) +/* 8019C930 00199890 C1 3A 00 08 */ lfs f9, 8(r26) +/* 8019C934 00199894 EC E8 38 28 */ fsubs f7, f8, f7 +/* 8019C938 00199898 C1 1A FF F8 */ lfs f8, -8(r26) +/* 8019C93C 0019989C ED 09 40 28 */ fsubs f8, f9, f8 +/* 8019C940 001998A0 ED 85 01 F2 */ fmuls f12, f5, f7 +/* 8019C944 001998A4 ED 05 02 32 */ fmuls f8, f5, f8 +/* 8019C948 001998A8 EC EC 03 32 */ fmuls f7, f12, f12 +/* 8019C94C 001998AC EC E8 3A 3A */ fmadds f7, f8, f8, f7 +/* 8019C950 001998B0 EC 66 39 BA */ fmadds f3, f6, f6, f7 +/* 8019C954 001998B4 FC 0B 18 00 */ fcmpu cr0, f11, f3 +/* 8019C958 001998B8 40 82 00 0C */ bne lbl_8019C964 +/* 8019C95C 001998BC FC E0 18 90 */ fmr f7, f3 +/* 8019C960 001998C0 48 00 00 0C */ b lbl_8019C96C +lbl_8019C964: +/* 8019C964 001998C4 10 E0 18 34 */ ps_rsqrte f7, f3 +/* 8019C968 001998C8 10 E7 00 F2 */ ps_mul f7, f7, f3 +lbl_8019C96C: +/* 8019C96C 001998CC EC EA 38 24 */ fdivs f7, f10, f7 +/* 8019C970 001998D0 3B A0 00 00 */ li r29, 0 +/* 8019C974 001998D4 ED 27 02 32 */ fmuls f9, f7, f8 +/* 8019C978 001998D8 ED 07 03 32 */ fmuls f8, f7, f12 +/* 8019C97C 001998DC EC E7 01 B2 */ fmuls f7, f7, f6 +/* 8019C980 001998E0 FD 20 48 1E */ fctiwz f9, f9 +/* 8019C984 001998E4 FD 00 40 1E */ fctiwz f8, f8 +/* 8019C988 001998E8 FC E0 38 1E */ fctiwz f7, f7 +/* 8019C98C 001998EC D9 21 00 30 */ stfd f9, 0x30(r1) +/* 8019C990 001998F0 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8019C994 001998F4 D9 01 00 28 */ stfd f8, 0x28(r1) +/* 8019C998 001998F8 D8 E1 00 20 */ stfd f7, 0x20(r1) +/* 8019C99C 001998FC 81 81 00 2C */ lwz r12, 0x2c(r1) +/* 8019C9A0 00199900 98 1A 00 04 */ stb r0, 4(r26) +/* 8019C9A4 00199904 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8019C9A8 00199908 99 9A 00 05 */ stb r12, 5(r26) +/* 8019C9AC 0019990C 98 1A 00 06 */ stb r0, 6(r26) +/* 8019C9B0 00199910 C1 1A 00 00 */ lfs f8, 0(r26) +/* 8019C9B4 00199914 C0 E5 00 38 */ lfs f7, 0x38(r5) +/* 8019C9B8 00199918 FC 08 58 40 */ fcmpo cr0, f8, f11 +/* 8019C9BC 0019991C 40 81 00 20 */ ble lbl_8019C9DC +/* 8019C9C0 00199920 EC E8 01 F2 */ fmuls f7, f8, f7 +/* 8019C9C4 00199924 FC E0 38 1E */ fctiwz f7, f7 +/* 8019C9C8 00199928 D8 E1 00 30 */ stfd f7, 0x30(r1) +/* 8019C9CC 0019992C 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 8019C9D0 00199930 2C 1D 00 FF */ cmpwi r29, 0xff +/* 8019C9D4 00199934 40 81 00 08 */ ble lbl_8019C9DC +/* 8019C9D8 00199938 3B A0 00 FF */ li r29, 0xff +lbl_8019C9DC: +/* 8019C9DC 0019993C 9B BA 00 07 */ stb r29, 7(r26) +/* 8019C9E0 00199940 3B 7B 00 01 */ addi r27, r27, 1 +/* 8019C9E4 00199944 3B 5A 01 68 */ addi r26, r26, 0x168 +lbl_8019C9E8: +/* 8019C9E8 00199948 80 01 00 18 */ lwz r0, 0x18(r1) +/* 8019C9EC 0019994C 7C 1B 00 00 */ cmpw r27, r0 +/* 8019C9F0 00199950 41 80 FF 38 */ blt lbl_8019C928 +/* 8019C9F4 00199954 48 00 00 C8 */ b lbl_8019CABC +lbl_8019C9F8: +/* 8019C9F8 00199958 C1 0A 01 68 */ lfs f8, 0x168(r10) +/* 8019C9FC 0019995C C0 EA FE 98 */ lfs f7, -0x168(r10) +/* 8019CA00 00199960 C1 4A 00 08 */ lfs f10, 8(r10) +/* 8019CA04 00199964 ED 08 38 28 */ fsubs f8, f8, f7 +/* 8019CA08 00199968 C1 2A FF F8 */ lfs f9, -8(r10) +/* 8019CA0C 0019996C C0 E2 A6 E0 */ lfs f7, lbl_805AC400@sda21(r2) +/* 8019CA10 00199970 ED 2A 48 28 */ fsubs f9, f10, f9 +/* 8019CA14 00199974 ED 65 02 32 */ fmuls f11, f5, f8 +/* 8019CA18 00199978 ED 45 02 72 */ fmuls f10, f5, f9 +/* 8019CA1C 0019997C ED 0B 02 F2 */ fmuls f8, f11, f11 +/* 8019CA20 00199980 ED 0A 42 BA */ fmadds f8, f10, f10, f8 +/* 8019CA24 00199984 EC 86 41 BA */ fmadds f4, f6, f6, f8 +/* 8019CA28 00199988 FC 07 20 00 */ fcmpu cr0, f7, f4 +/* 8019CA2C 0019998C 40 82 00 0C */ bne lbl_8019CA38 +/* 8019CA30 00199990 FD 20 20 90 */ fmr f9, f4 +/* 8019CA34 00199994 48 00 00 0C */ b lbl_8019CA40 +lbl_8019CA38: +/* 8019CA38 00199998 11 20 20 34 */ ps_rsqrte f9, f4 +/* 8019CA3C 0019999C 11 29 01 32 */ ps_mul f9, f9, f4 +lbl_8019CA40: +/* 8019CA40 001999A0 C1 02 A7 18 */ lfs f8, lbl_805AC438@sda21(r2) +/* 8019CA44 001999A4 3B A0 00 00 */ li r29, 0 +/* 8019CA48 001999A8 C0 E2 A6 E0 */ lfs f7, lbl_805AC400@sda21(r2) +/* 8019CA4C 001999AC ED 08 48 24 */ fdivs f8, f8, f9 +/* 8019CA50 001999B0 ED 48 02 B2 */ fmuls f10, f8, f10 +/* 8019CA54 001999B4 ED 28 02 F2 */ fmuls f9, f8, f11 +/* 8019CA58 001999B8 ED 08 01 B2 */ fmuls f8, f8, f6 +/* 8019CA5C 001999BC FD 40 50 1E */ fctiwz f10, f10 +/* 8019CA60 001999C0 FD 20 48 1E */ fctiwz f9, f9 +/* 8019CA64 001999C4 FD 00 40 1E */ fctiwz f8, f8 +/* 8019CA68 001999C8 D9 41 00 30 */ stfd f10, 0x30(r1) +/* 8019CA6C 001999CC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8019CA70 001999D0 D9 21 00 28 */ stfd f9, 0x28(r1) +/* 8019CA74 001999D4 D9 01 00 20 */ stfd f8, 0x20(r1) +/* 8019CA78 001999D8 81 81 00 2C */ lwz r12, 0x2c(r1) +/* 8019CA7C 001999DC 98 0A 00 04 */ stb r0, 4(r10) +/* 8019CA80 001999E0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8019CA84 001999E4 99 8A 00 05 */ stb r12, 5(r10) +/* 8019CA88 001999E8 98 0A 00 06 */ stb r0, 6(r10) +/* 8019CA8C 001999EC C1 2A 00 00 */ lfs f9, 0(r10) +/* 8019CA90 001999F0 C1 05 00 38 */ lfs f8, 0x38(r5) +/* 8019CA94 001999F4 FC 09 38 40 */ fcmpo cr0, f9, f7 +/* 8019CA98 001999F8 40 81 00 20 */ ble lbl_8019CAB8 +/* 8019CA9C 001999FC EC E9 02 32 */ fmuls f7, f9, f8 +/* 8019CAA0 00199A00 FC E0 38 1E */ fctiwz f7, f7 +/* 8019CAA4 00199A04 D8 E1 00 30 */ stfd f7, 0x30(r1) +/* 8019CAA8 00199A08 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 8019CAAC 00199A0C 2C 1D 00 FF */ cmpwi r29, 0xff +/* 8019CAB0 00199A10 40 81 00 08 */ ble lbl_8019CAB8 +/* 8019CAB4 00199A14 3B A0 00 FF */ li r29, 0xff +lbl_8019CAB8: +/* 8019CAB8 00199A18 9B AA 00 07 */ stb r29, 7(r10) +lbl_8019CABC: +/* 8019CABC 00199A1C 80 0D A5 74 */ lwz r0, lbl_805A9134@sda21(r13) +/* 8019CAC0 00199A20 38 63 00 01 */ addi r3, r3, 1 +/* 8019CAC4 00199A24 39 6B 00 01 */ addi r11, r11, 1 +/* 8019CAC8 00199A28 54 00 18 38 */ slwi r0, r0, 3 +/* 8019CACC 00199A2C 7D 4A 02 14 */ add r10, r10, r0 +lbl_8019CAD0: +/* 8019CAD0 00199A30 89 85 00 00 */ lbz r12, 0(r5) +/* 8019CAD4 00199A34 80 0D A5 74 */ lwz r0, lbl_805A9134@sda21(r13) +/* 8019CAD8 00199A38 7D 8C 07 74 */ extsb r12, r12 +/* 8019CADC 00199A3C 7D 8C 02 14 */ add r12, r12, r0 +/* 8019CAE0 00199A40 39 8C FF FE */ addi r12, r12, -2 +/* 8019CAE4 00199A44 7D 8C 03 D6 */ divw r12, r12, r0 +/* 8019CAE8 00199A48 7C 0B 60 00 */ cmpw r11, r12 +/* 8019CAEC 00199A4C 40 81 FA 88 */ ble lbl_8019C574 +/* 8019CAF0 00199A50 1C 00 01 68 */ mulli r0, r0, 0x168 +/* 8019CAF4 00199A54 A8 65 00 2A */ lha r3, 0x2a(r5) +/* 8019CAF8 00199A58 39 08 00 01 */ addi r8, r8, 1 +/* 8019CAFC 00199A5C 7C C6 1A 14 */ add r6, r6, r3 +/* 8019CB00 00199A60 7C E7 02 14 */ add r7, r7, r0 +/* 8019CB04 00199A64 38 84 00 09 */ addi r4, r4, 9 +lbl_8019CB08: +/* 8019CB08 00199A68 88 05 00 01 */ lbz r0, 1(r5) +/* 8019CB0C 00199A6C 81 4D A5 74 */ lwz r10, lbl_805A9134@sda21(r13) +/* 8019CB10 00199A70 7C 00 07 74 */ extsb r0, r0 +/* 8019CB14 00199A74 7C 60 52 14 */ add r3, r0, r10 +/* 8019CB18 00199A78 38 03 FF FE */ addi r0, r3, -2 +/* 8019CB1C 00199A7C 7C 00 53 D6 */ divw r0, r0, r10 +/* 8019CB20 00199A80 7C 08 00 00 */ cmpw r8, r0 +/* 8019CB24 00199A84 40 81 F9 EC */ ble lbl_8019C510 +/* 8019CB28 00199A88 BB 41 00 38 */ lmw r26, 0x38(r1) +/* 8019CB2C 00199A8C 38 21 00 50 */ addi r1, r1, 0x50 +/* 8019CB30 00199A90 4E 80 00 20 */ blr + +.global __dt__11CTurbulenceFv +__dt__11CTurbulenceFv: +/* 8019CB34 00199A94 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8019CB38 00199A98 7C 08 02 A6 */ mflr r0 +/* 8019CB3C 00199A9C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8019CB40 00199AA0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8019CB44 00199AA4 7C 9F 23 78 */ mr r31, r4 +/* 8019CB48 00199AA8 93 C1 00 08 */ stw r30, 8(r1) +/* 8019CB4C 00199AAC 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8019CB50 00199AB0 41 82 00 1C */ beq lbl_8019CB6C +/* 8019CB54 00199AB4 80 7E 00 20 */ lwz r3, 0x20(r30) +/* 8019CB58 00199AB8 48 17 8D D9 */ bl Free__7CMemoryFPCv +/* 8019CB5C 00199ABC 7F E0 07 35 */ extsh. r0, r31 +/* 8019CB60 00199AC0 40 81 00 0C */ ble lbl_8019CB6C +/* 8019CB64 00199AC4 7F C3 F3 78 */ mr r3, r30 +/* 8019CB68 00199AC8 48 17 8D C9 */ bl Free__7CMemoryFPCv +lbl_8019CB6C: +/* 8019CB6C 00199ACC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8019CB70 00199AD0 7F C3 F3 78 */ mr r3, r30 +/* 8019CB74 00199AD4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8019CB78 00199AD8 83 C1 00 08 */ lwz r30, 8(r1) +/* 8019CB7C 00199ADC 7C 08 03 A6 */ mtlr r0 +/* 8019CB80 00199AE0 38 21 00 10 */ addi r1, r1, 0x10 +/* 8019CB84 00199AE4 4E 80 00 20 */ blr + +.global __ct__Q214CFluidPlaneCPU11CTurbulenceFffffffff +__ct__Q214CFluidPlaneCPU11CTurbulenceFffffffff: +/* 8019CB88 00199AE8 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 8019CB8C 00199AEC 7C 08 02 A6 */ mflr r0 +/* 8019CB90 00199AF0 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 8019CB94 00199AF4 DB E1 00 A0 */ stfd f31, 0xa0(r1) +/* 8019CB98 00199AF8 F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0 +/* 8019CB9C 00199AFC DB C1 00 90 */ stfd f30, 0x90(r1) +/* 8019CBA0 00199B00 F3 C1 00 98 */ psq_st f30, 152(r1), 0, qr0 +/* 8019CBA4 00199B04 DB A1 00 80 */ stfd f29, 0x80(r1) +/* 8019CBA8 00199B08 F3 A1 00 88 */ psq_st f29, 136(r1), 0, qr0 +/* 8019CBAC 00199B0C DB 81 00 70 */ stfd f28, 0x70(r1) +/* 8019CBB0 00199B10 F3 81 00 78 */ psq_st f28, 120(r1), 0, qr0 +/* 8019CBB4 00199B14 DB 61 00 60 */ stfd f27, 0x60(r1) +/* 8019CBB8 00199B18 F3 61 00 68 */ psq_st f27, 104(r1), 0, qr0 +/* 8019CBBC 00199B1C DB 41 00 50 */ stfd f26, 0x50(r1) +/* 8019CBC0 00199B20 F3 41 00 58 */ psq_st f26, 88(r1), 0, qr0 +/* 8019CBC4 00199B24 DB 21 00 40 */ stfd f25, 0x40(r1) +/* 8019CBC8 00199B28 F3 21 00 48 */ psq_st f25, 72(r1), 0, qr0 +/* 8019CBCC 00199B2C DB 01 00 30 */ stfd f24, 0x30(r1) +/* 8019CBD0 00199B30 F3 01 00 38 */ psq_st f24, 56(r1), 0, qr0 +/* 8019CBD4 00199B34 DA E1 00 20 */ stfd f23, 0x20(r1) +/* 8019CBD8 00199B38 F2 E1 00 28 */ psq_st f23, 40(r1), 0, qr0 +/* 8019CBDC 00199B3C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8019CBE0 00199B40 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8019CBE4 00199B44 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8019CBE8 00199B48 7C 7D 1B 78 */ mr r29, r3 +/* 8019CBEC 00199B4C 38 00 00 00 */ li r0, 0 +/* 8019CBF0 00199B50 D0 23 00 00 */ stfs f1, 0(r3) +/* 8019CBF4 00199B54 C1 22 A6 E0 */ lfs f9, lbl_805AC400@sda21(r2) +/* 8019CBF8 00199B58 D0 43 00 04 */ stfs f2, 4(r3) +/* 8019CBFC 00199B5C C0 22 A6 DC */ lfs f1, lbl_805AC3FC@sda21(r2) +/* 8019CC00 00199B60 D0 63 00 08 */ stfs f3, 8(r3) +/* 8019CC04 00199B64 D0 83 00 0C */ stfs f4, 0xc(r3) +/* 8019CC08 00199B68 D0 A3 00 10 */ stfs f5, 0x10(r3) +/* 8019CC0C 00199B6C D0 C3 00 14 */ stfs f6, 0x14(r3) +/* 8019CC10 00199B70 D0 E3 00 18 */ stfs f7, 0x18(r3) +/* 8019CC14 00199B74 D1 03 00 1C */ stfs f8, 0x1c(r3) +/* 8019CC18 00199B78 90 03 00 20 */ stw r0, 0x20(r3) +/* 8019CC1C 00199B7C 90 03 00 24 */ stw r0, 0x24(r3) +/* 8019CC20 00199B80 D1 23 00 28 */ stfs f9, 0x28(r3) +/* 8019CC24 00199B84 C0 03 00 00 */ lfs f0, 0(r3) +/* 8019CC28 00199B88 EC 01 00 24 */ fdivs f0, f1, f0 +/* 8019CC2C 00199B8C D0 03 00 2C */ stfs f0, 0x2c(r3) +/* 8019CC30 00199B90 C0 03 00 04 */ lfs f0, 4(r3) +/* 8019CC34 00199B94 EC 01 00 24 */ fdivs f0, f1, f0 +/* 8019CC38 00199B98 D0 03 00 30 */ stfs f0, 0x30(r3) +/* 8019CC3C 00199B9C 98 03 00 34 */ stb r0, 0x34(r3) +/* 8019CC40 00199BA0 C0 03 00 18 */ lfs f0, 0x18(r3) +/* 8019CC44 00199BA4 FC 09 00 00 */ fcmpu cr0, f9, f0 +/* 8019CC48 00199BA8 40 82 00 14 */ bne lbl_8019CC5C +/* 8019CC4C 00199BAC C0 1D 00 1C */ lfs f0, 0x1c(r29) +/* 8019CC50 00199BB0 FC 09 00 00 */ fcmpu cr0, f9, f0 +/* 8019CC54 00199BB4 40 82 00 08 */ bne lbl_8019CC5C +/* 8019CC58 00199BB8 48 00 01 04 */ b lbl_8019CD5C +lbl_8019CC5C: +/* 8019CC5C 00199BBC 80 AD 8F D8 */ lwz r5, lbl_805A7B98@sda21(r13) +/* 8019CC60 00199BC0 3C 00 43 30 */ lis r0, 0x4330 +/* 8019CC64 00199BC4 3C 60 80 3D */ lis r3, lbl_803D12F8@ha +/* 8019CC68 00199BC8 90 01 00 08 */ stw r0, 8(r1) +/* 8019CC6C 00199BCC C8 22 A6 F0 */ lfd f1, lbl_805AC410@sda21(r2) +/* 8019CC70 00199BD0 38 83 12 F8 */ addi r4, r3, lbl_803D12F8@l +/* 8019CC74 00199BD4 90 BD 00 24 */ stw r5, 0x24(r29) +/* 8019CC78 00199BD8 38 A0 00 00 */ li r5, 0 +/* 8019CC7C 00199BDC 80 1D 00 24 */ lwz r0, 0x24(r29) +/* 8019CC80 00199BE0 6C 00 80 00 */ xoris r0, r0, 0x8000 +/* 8019CC84 00199BE4 90 01 00 0C */ stw r0, 0xc(r1) +/* 8019CC88 00199BE8 C8 01 00 08 */ lfd f0, 8(r1) +/* 8019CC8C 00199BEC EC 00 08 28 */ fsubs f0, f0, f1 +/* 8019CC90 00199BF0 D0 1D 00 28 */ stfs f0, 0x28(r29) +/* 8019CC94 00199BF4 80 1D 00 24 */ lwz r0, 0x24(r29) +/* 8019CC98 00199BF8 54 03 10 3A */ slwi r3, r0, 2 +/* 8019CC9C 00199BFC 48 17 8B 7D */ bl __nwa__FUlPCcPCc +/* 8019CCA0 00199C00 90 7D 00 20 */ stw r3, 0x20(r29) +/* 8019CCA4 00199C04 3B C0 00 00 */ li r30, 0 +/* 8019CCA8 00199C08 C0 22 A7 1C */ lfs f1, lbl_805AC43C@sda21(r2) +/* 8019CCAC 00199C0C 3B E0 00 00 */ li r31, 0 +/* 8019CCB0 00199C10 C0 1D 00 28 */ lfs f0, 0x28(r29) +/* 8019CCB4 00199C14 C0 5D 00 08 */ lfs f2, 8(r29) +/* 8019CCB8 00199C18 EF C1 00 24 */ fdivs f30, f1, f0 +/* 8019CCBC 00199C1C C0 1D 00 0C */ lfs f0, 0xc(r29) +/* 8019CCC0 00199C20 C0 FD 00 10 */ lfs f7, 0x10(r29) +/* 8019CCC4 00199C24 C0 3D 00 14 */ lfs f1, 0x14(r29) +/* 8019CCC8 00199C28 C1 3D 00 18 */ lfs f9, 0x18(r29) +/* 8019CCCC 00199C2C C1 1D 00 1C */ lfs f8, 0x1c(r29) +/* 8019CCD0 00199C30 EC A2 00 2A */ fadds f5, f2, f0 +/* 8019CCD4 00199C34 C0 C2 A6 E8 */ lfs f6, lbl_805AC408@sda21(r2) +/* 8019CCD8 00199C38 EC 82 00 28 */ fsubs f4, f2, f0 +/* 8019CCDC 00199C3C C3 E2 A6 E0 */ lfs f31, lbl_805AC400@sda21(r2) +/* 8019CCE0 00199C40 EC 67 08 2A */ fadds f3, f7, f1 +/* 8019CCE4 00199C44 EC 47 08 28 */ fsubs f2, f7, f1 +/* 8019CCE8 00199C48 EC 29 40 2A */ fadds f1, f9, f8 +/* 8019CCEC 00199C4C EC 09 40 28 */ fsubs f0, f9, f8 +/* 8019CCF0 00199C50 EF 86 01 72 */ fmuls f28, f6, f5 +/* 8019CCF4 00199C54 EF 66 01 32 */ fmuls f27, f6, f4 +/* 8019CCF8 00199C58 EF 46 00 F2 */ fmuls f26, f6, f3 +/* 8019CCFC 00199C5C EF 26 00 B2 */ fmuls f25, f6, f2 +/* 8019CD00 00199C60 EF 06 00 72 */ fmuls f24, f6, f1 +/* 8019CD04 00199C64 EE E6 00 32 */ fmuls f23, f6, f0 +/* 8019CD08 00199C68 48 00 00 3C */ b lbl_8019CD44 +lbl_8019CD0C: +/* 8019CD0C 00199C6C FC 20 F8 90 */ fmr f1, f31 +/* 8019CD10 00199C70 48 17 80 35 */ bl FastCosR__5CMathFf +/* 8019CD14 00199C74 FF A0 08 90 */ fmr f29, f1 +/* 8019CD18 00199C78 EC 3B E7 7A */ fmadds f1, f27, f29, f28 +/* 8019CD1C 00199C7C EC 19 D7 7A */ fmadds f0, f25, f29, f26 +/* 8019CD20 00199C80 EC 21 07 FA */ fmadds f1, f1, f31, f0 +/* 8019CD24 00199C84 48 17 80 CD */ bl FastSinR__5CMathFf +/* 8019CD28 00199C88 EC 17 C7 7A */ fmadds f0, f23, f29, f24 +/* 8019CD2C 00199C8C 80 7D 00 20 */ lwz r3, 0x20(r29) +/* 8019CD30 00199C90 EF FF F0 2A */ fadds f31, f31, f30 +/* 8019CD34 00199C94 3B DE 00 01 */ addi r30, r30, 1 +/* 8019CD38 00199C98 EC 00 00 72 */ fmuls f0, f0, f1 +/* 8019CD3C 00199C9C 7C 03 FD 2E */ stfsx f0, r3, r31 +/* 8019CD40 00199CA0 3B FF 00 04 */ addi r31, r31, 4 +lbl_8019CD44: +/* 8019CD44 00199CA4 80 1D 00 24 */ lwz r0, 0x24(r29) +/* 8019CD48 00199CA8 7C 1E 00 00 */ cmpw r30, r0 +/* 8019CD4C 00199CAC 41 80 FF C0 */ blt lbl_8019CD0C +/* 8019CD50 00199CB0 38 00 00 01 */ li r0, 1 +/* 8019CD54 00199CB4 7F A3 EB 78 */ mr r3, r29 +/* 8019CD58 00199CB8 98 1D 00 34 */ stb r0, 0x34(r29) +lbl_8019CD5C: +/* 8019CD5C 00199CBC E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0 +/* 8019CD60 00199CC0 CB E1 00 A0 */ lfd f31, 0xa0(r1) +/* 8019CD64 00199CC4 E3 C1 00 98 */ psq_l f30, 152(r1), 0, qr0 +/* 8019CD68 00199CC8 CB C1 00 90 */ lfd f30, 0x90(r1) +/* 8019CD6C 00199CCC E3 A1 00 88 */ psq_l f29, 136(r1), 0, qr0 +/* 8019CD70 00199CD0 CB A1 00 80 */ lfd f29, 0x80(r1) +/* 8019CD74 00199CD4 E3 81 00 78 */ psq_l f28, 120(r1), 0, qr0 +/* 8019CD78 00199CD8 CB 81 00 70 */ lfd f28, 0x70(r1) +/* 8019CD7C 00199CDC E3 61 00 68 */ psq_l f27, 104(r1), 0, qr0 +/* 8019CD80 00199CE0 CB 61 00 60 */ lfd f27, 0x60(r1) +/* 8019CD84 00199CE4 E3 41 00 58 */ psq_l f26, 88(r1), 0, qr0 +/* 8019CD88 00199CE8 CB 41 00 50 */ lfd f26, 0x50(r1) +/* 8019CD8C 00199CEC E3 21 00 48 */ psq_l f25, 72(r1), 0, qr0 +/* 8019CD90 00199CF0 CB 21 00 40 */ lfd f25, 0x40(r1) +/* 8019CD94 00199CF4 E3 01 00 38 */ psq_l f24, 56(r1), 0, qr0 +/* 8019CD98 00199CF8 CB 01 00 30 */ lfd f24, 0x30(r1) +/* 8019CD9C 00199CFC E2 E1 00 28 */ psq_l f23, 40(r1), 0, qr0 +/* 8019CDA0 00199D00 CA E1 00 20 */ lfd f23, 0x20(r1) +/* 8019CDA4 00199D04 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8019CDA8 00199D08 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8019CDAC 00199D0C 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 8019CDB0 00199D10 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8019CDB4 00199D14 7C 08 03 A6 */ mtlr r0 +/* 8019CDB8 00199D18 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 8019CDBC 00199D1C 4E 80 00 20 */ blr + +.global __ct__14CFluidPlaneCPUFUiUiUiUiUiUifUiQ211CFluidPlane10EFluidTypefRC9CVector3ffRC14CFluidUVMotionfffffffffffff +__ct__14CFluidPlaneCPUFUiUiUiUiUiUifUiQ211CFluidPlane10EFluidTypefRC9CVector3ffRC14CFluidUVMotionfffffffffffff: +/* 8019CDC0 00199D20 94 21 FE 60 */ stwu r1, -0x1a0(r1) +/* 8019CDC4 00199D24 7C 08 02 A6 */ mflr r0 +/* 8019CDC8 00199D28 90 01 01 A4 */ stw r0, 0x1a4(r1) +/* 8019CDCC 00199D2C DB E1 01 90 */ stfd f31, 0x190(r1) +/* 8019CDD0 00199D30 F3 E1 01 98 */ psq_st f31, 408(r1), 0, qr0 +/* 8019CDD4 00199D34 DB C1 01 80 */ stfd f30, 0x180(r1) +/* 8019CDD8 00199D38 F3 C1 01 88 */ psq_st f30, 392(r1), 0, qr0 +/* 8019CDDC 00199D3C DB A1 01 70 */ stfd f29, 0x170(r1) +/* 8019CDE0 00199D40 F3 A1 01 78 */ psq_st f29, 376(r1), 0, qr0 +/* 8019CDE4 00199D44 DB 81 01 60 */ stfd f28, 0x160(r1) +/* 8019CDE8 00199D48 F3 81 01 68 */ psq_st f28, 360(r1), 0, qr0 +/* 8019CDEC 00199D4C DB 61 01 50 */ stfd f27, 0x150(r1) +/* 8019CDF0 00199D50 F3 61 01 58 */ psq_st f27, 344(r1), 0, qr0 +/* 8019CDF4 00199D54 DB 41 01 40 */ stfd f26, 0x140(r1) +/* 8019CDF8 00199D58 F3 41 01 48 */ psq_st f26, 328(r1), 0, qr0 +/* 8019CDFC 00199D5C DB 21 01 30 */ stfd f25, 0x130(r1) +/* 8019CE00 00199D60 F3 21 01 38 */ psq_st f25, 312(r1), 0, qr0 +/* 8019CE04 00199D64 DB 01 01 20 */ stfd f24, 0x120(r1) +/* 8019CE08 00199D68 F3 01 01 28 */ psq_st f24, 296(r1), 0, qr0 +/* 8019CE0C 00199D6C DA E1 01 10 */ stfd f23, 0x110(r1) +/* 8019CE10 00199D70 F2 E1 01 18 */ psq_st f23, 280(r1), 0, qr0 +/* 8019CE14 00199D74 DA C1 01 00 */ stfd f22, 0x100(r1) +/* 8019CE18 00199D78 F2 C1 01 08 */ psq_st f22, 264(r1), 0, qr0 +/* 8019CE1C 00199D7C DA A1 00 F0 */ stfd f21, 0xf0(r1) +/* 8019CE20 00199D80 F2 A1 00 F8 */ psq_st f21, 248(r1), 0, qr0 +/* 8019CE24 00199D84 DA 81 00 E0 */ stfd f20, 0xe0(r1) +/* 8019CE28 00199D88 F2 81 00 E8 */ psq_st f20, 232(r1), 0, qr0 +/* 8019CE2C 00199D8C DA 61 00 D0 */ stfd f19, 0xd0(r1) +/* 8019CE30 00199D90 F2 61 00 D8 */ psq_st f19, 216(r1), 0, qr0 +/* 8019CE34 00199D94 DA 41 00 C0 */ stfd f18, 0xc0(r1) +/* 8019CE38 00199D98 F2 41 00 C8 */ psq_st f18, 200(r1), 0, qr0 +/* 8019CE3C 00199D9C DA 21 00 B0 */ stfd f17, 0xb0(r1) +/* 8019CE40 00199DA0 F2 21 00 B8 */ psq_st f17, 184(r1), 0, qr0 +/* 8019CE44 00199DA4 BF 01 00 90 */ stmw r24, 0x90(r1) +/* 8019CE48 00199DA8 C0 01 01 D8 */ lfs f0, 0x1d8(r1) +/* 8019CE4C 00199DAC FE 20 08 90 */ fmr f17, f1 +/* 8019CE50 00199DB0 FE 40 10 90 */ fmr f18, f2 +/* 8019CE54 00199DB4 83 E1 01 AC */ lwz r31, 0x1ac(r1) +/* 8019CE58 00199DB8 FE 60 20 90 */ fmr f19, f4 +/* 8019CE5C 00199DBC 80 01 01 B4 */ lwz r0, 0x1b4(r1) +/* 8019CE60 00199DC0 FE 80 28 90 */ fmr f20, f5 +/* 8019CE64 00199DC4 7C F8 3B 78 */ mr r24, r7 +/* 8019CE68 00199DC8 7D 19 43 78 */ mr r25, r8 +/* 8019CE6C 00199DCC FE A0 30 90 */ fmr f21, f6 +/* 8019CE70 00199DD0 FE C0 38 90 */ fmr f22, f7 +/* 8019CE74 00199DD4 83 81 01 A8 */ lwz r28, 0x1a8(r1) +/* 8019CE78 00199DD8 FE E0 40 90 */ fmr f23, f8 +/* 8019CE7C 00199DDC 83 A1 01 B0 */ lwz r29, 0x1b0(r1) +/* 8019CE80 00199DE0 FC 20 18 90 */ fmr f1, f3 +/* 8019CE84 00199DE4 FC 40 00 90 */ fmr f2, f0 +/* 8019CE88 00199DE8 C3 01 01 B8 */ lfs f24, 0x1b8(r1) +/* 8019CE8C 00199DEC 7C 7E 1B 78 */ mr r30, r3 +/* 8019CE90 00199DF0 C3 21 01 BC */ lfs f25, 0x1bc(r1) +/* 8019CE94 00199DF4 7D 3A 4B 78 */ mr r26, r9 +/* 8019CE98 00199DF8 C3 41 01 C0 */ lfs f26, 0x1c0(r1) +/* 8019CE9C 00199DFC C3 61 01 C4 */ lfs f27, 0x1c4(r1) +/* 8019CEA0 00199E00 7D 5B 53 78 */ mr r27, r10 +/* 8019CEA4 00199E04 C3 81 01 C8 */ lfs f28, 0x1c8(r1) +/* 8019CEA8 00199E08 7F E7 FB 78 */ mr r7, r31 +/* 8019CEAC 00199E0C C3 A1 01 CC */ lfs f29, 0x1cc(r1) +/* 8019CEB0 00199E10 7C 08 03 78 */ mr r8, r0 +/* 8019CEB4 00199E14 C3 C1 01 D0 */ lfs f30, 0x1d0(r1) +/* 8019CEB8 00199E18 C3 E1 01 D4 */ lfs f31, 0x1d4(r1) +/* 8019CEBC 00199E1C 4B F9 1E 79 */ bl __ct__11CFluidPlaneFUiUiUifQ211CFluidPlane10EFluidTypefRC14CFluidUVMotion +/* 8019CEC0 00199E20 3C 60 80 3E */ lis r3, lbl_803E46C8@ha +/* 8019CEC4 00199E24 38 00 00 00 */ li r0, 0 +/* 8019CEC8 00199E28 38 63 46 C8 */ addi r3, r3, lbl_803E46C8@l +/* 8019CECC 00199E2C 7F A4 EB 78 */ mr r4, r29 +/* 8019CED0 00199E30 90 7E 00 00 */ stw r3, 0(r30) +/* 8019CED4 00199E34 38 61 00 78 */ addi r3, r1, 0x78 +/* 8019CED8 00199E38 93 1E 00 A0 */ stw r24, 0xa0(r30) +/* 8019CEDC 00199E3C 93 3E 00 A4 */ stw r25, 0xa4(r30) +/* 8019CEE0 00199E40 93 5E 00 A8 */ stw r26, 0xa8(r30) +/* 8019CEE4 00199E44 93 7E 00 AC */ stw r27, 0xac(r30) +/* 8019CEE8 00199E48 98 1E 00 BC */ stb r0, 0xbc(r30) +/* 8019CEEC 00199E4C 98 1E 00 CC */ stb r0, 0xcc(r30) +/* 8019CEF0 00199E50 98 1E 00 DC */ stb r0, 0xdc(r30) +/* 8019CEF4 00199E54 98 1E 00 EC */ stb r0, 0xec(r30) +/* 8019CEF8 00199E58 48 17 79 59 */ bl AsNormalized__9CVector3fCFv +/* 8019CEFC 00199E5C C0 01 00 78 */ lfs f0, 0x78(r1) +/* 8019CF00 00199E60 3C 00 43 30 */ lis r0, 0x4330 +/* 8019CF04 00199E64 57 84 00 3C */ rlwinm r4, r28, 0, 0, 0x1e +/* 8019CF08 00199E68 90 01 00 88 */ stw r0, 0x88(r1) +/* 8019CF0C 00199E6C C9 22 A6 F0 */ lfd f9, lbl_805AC410@sda21(r2) +/* 8019CF10 00199E70 FC 20 A0 90 */ fmr f1, f20 +/* 8019CF14 00199E74 D0 1E 00 F0 */ stfs f0, 0xf0(r30) +/* 8019CF18 00199E78 FC 40 A8 90 */ fmr f2, f21 +/* 8019CF1C 00199E7C FC 60 B0 90 */ fmr f3, f22 +/* 8019CF20 00199E80 38 7E 01 20 */ addi r3, r30, 0x120 +/* 8019CF24 00199E84 C0 01 00 7C */ lfs f0, 0x7c(r1) +/* 8019CF28 00199E88 FC 80 B8 90 */ fmr f4, f23 +/* 8019CF2C 00199E8C D0 1E 00 F4 */ stfs f0, 0xf4(r30) +/* 8019CF30 00199E90 FC A0 C0 90 */ fmr f5, f24 +/* 8019CF34 00199E94 FC C0 C8 90 */ fmr f6, f25 +/* 8019CF38 00199E98 C0 01 00 80 */ lfs f0, 0x80(r1) +/* 8019CF3C 00199E9C FC E0 D0 90 */ fmr f7, f26 +/* 8019CF40 00199EA0 FD 00 D8 90 */ fmr f8, f27 +/* 8019CF44 00199EA4 D0 1E 00 F8 */ stfs f0, 0xf8(r30) +/* 8019CF48 00199EA8 D2 7E 00 FC */ stfs f19, 0xfc(r30) +/* 8019CF4C 00199EAC D2 5E 01 00 */ stfs f18, 0x100(r30) +/* 8019CF50 00199EB0 90 9E 01 04 */ stw r4, 0x104(r30) +/* 8019CF54 00199EB4 80 1E 01 04 */ lwz r0, 0x104(r30) +/* 8019CF58 00199EB8 6C 00 80 00 */ xoris r0, r0, 0x8000 +/* 8019CF5C 00199EBC 90 01 00 8C */ stw r0, 0x8c(r1) +/* 8019CF60 00199EC0 C8 01 00 88 */ lfd f0, 0x88(r1) +/* 8019CF64 00199EC4 EC 00 48 28 */ fsubs f0, f0, f9 +/* 8019CF68 00199EC8 EC 12 00 24 */ fdivs f0, f18, f0 +/* 8019CF6C 00199ECC D0 1E 01 08 */ stfs f0, 0x108(r30) +/* 8019CF70 00199ED0 D3 9E 01 0C */ stfs f28, 0x10c(r30) +/* 8019CF74 00199ED4 D3 BE 01 10 */ stfs f29, 0x110(r30) +/* 8019CF78 00199ED8 D3 DE 01 14 */ stfs f30, 0x114(r30) +/* 8019CF7C 00199EDC D3 FE 01 18 */ stfs f31, 0x118(r30) +/* 8019CF80 00199EE0 D2 3E 01 1C */ stfs f17, 0x11c(r30) +/* 8019CF84 00199EE4 4B FF FC 05 */ bl __ct__Q214CFluidPlaneCPU11CTurbulenceFffffffff +/* 8019CF88 00199EE8 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) +/* 8019CF8C 00199EEC 80 9E 00 A0 */ lwz r4, 0xa0(r30) +/* 8019CF90 00199EF0 38 63 00 04 */ addi r3, r3, 4 +/* 8019CF94 00199EF4 48 19 ED 39 */ bl GetResourceTypeById__10CResLoaderCFUi +/* 8019CF98 00199EF8 3C 03 AB A8 */ addis r0, r3, 0xaba8 +/* 8019CF9C 00199EFC 28 00 54 52 */ cmplwi r0, 0x5452 +/* 8019CFA0 00199F00 40 82 00 D0 */ bne lbl_8019D070 +/* 8019CFA4 00199F04 2C 1F 00 02 */ cmpwi r31, 2 +/* 8019CFA8 00199F08 41 82 00 0C */ beq lbl_8019CFB4 +/* 8019CFAC 00199F0C 2C 1F 00 05 */ cmpwi r31, 5 +/* 8019CFB0 00199F10 40 82 00 C0 */ bne lbl_8019D070 +lbl_8019CFB4: +/* 8019CFB4 00199F14 80 DE 00 A0 */ lwz r6, 0xa0(r30) +/* 8019CFB8 00199F18 3C 60 54 58 */ lis r3, 0x54585452@ha +/* 8019CFBC 00199F1C 38 03 54 52 */ addi r0, r3, 0x54585452@l +/* 8019CFC0 00199F20 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8019CFC4 00199F24 90 01 00 40 */ stw r0, 0x40(r1) +/* 8019CFC8 00199F28 38 61 00 38 */ addi r3, r1, 0x38 +/* 8019CFCC 00199F2C 38 A1 00 40 */ addi r5, r1, 0x40 +/* 8019CFD0 00199F30 90 C1 00 44 */ stw r6, 0x44(r1) +/* 8019CFD4 00199F34 81 84 00 00 */ lwz r12, 0(r4) +/* 8019CFD8 00199F38 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8019CFDC 00199F3C 7D 89 03 A6 */ mtctr r12 +/* 8019CFE0 00199F40 4E 80 04 21 */ bctrl +/* 8019CFE4 00199F44 3B 01 00 6C */ addi r24, r1, 0x6c +/* 8019CFE8 00199F48 38 81 00 38 */ addi r4, r1, 0x38 +/* 8019CFEC 00199F4C 7F 03 C3 78 */ mr r3, r24 +/* 8019CFF0 00199F50 48 1A 3E B9 */ bl __ct__6CTokenFRC6CToken +/* 8019CFF4 00199F54 7F 03 C3 78 */ mr r3, r24 +/* 8019CFF8 00199F58 48 1A 3E 15 */ bl GetObj__6CTokenFv +/* 8019CFFC 00199F5C 80 03 00 04 */ lwz r0, 4(r3) +/* 8019D000 00199F60 90 01 00 74 */ stw r0, 0x74(r1) +/* 8019D004 00199F64 88 1E 00 BC */ lbz r0, 0xbc(r30) +/* 8019D008 00199F68 28 00 00 00 */ cmplwi r0, 0 +/* 8019D00C 00199F6C 40 82 00 34 */ bne lbl_8019D040 +/* 8019D010 00199F70 37 BE 00 B0 */ addic. r29, r30, 0xb0 +/* 8019D014 00199F74 41 82 00 20 */ beq lbl_8019D034 +/* 8019D018 00199F78 7F A3 EB 78 */ mr r3, r29 +/* 8019D01C 00199F7C 7F 04 C3 78 */ mr r4, r24 +/* 8019D020 00199F80 48 1A 3E 89 */ bl __ct__6CTokenFRC6CToken +/* 8019D024 00199F84 80 01 00 74 */ lwz r0, 0x74(r1) +/* 8019D028 00199F88 7F A3 EB 78 */ mr r3, r29 +/* 8019D02C 00199F8C 90 1D 00 08 */ stw r0, 8(r29) +/* 8019D030 00199F90 48 1A 3D 55 */ bl Lock__6CTokenFv +lbl_8019D034: +/* 8019D034 00199F94 38 00 00 01 */ li r0, 1 +/* 8019D038 00199F98 98 1E 00 BC */ stb r0, 0xbc(r30) +/* 8019D03C 00199F9C 48 00 00 1C */ b lbl_8019D058 +lbl_8019D040: +/* 8019D040 00199FA0 3B BE 00 B0 */ addi r29, r30, 0xb0 +/* 8019D044 00199FA4 7F 04 C3 78 */ mr r4, r24 +/* 8019D048 00199FA8 7F A3 EB 78 */ mr r3, r29 +/* 8019D04C 00199FAC 48 1A 3C 79 */ bl __as__6CTokenFRC6CToken +/* 8019D050 00199FB0 80 01 00 74 */ lwz r0, 0x74(r1) +/* 8019D054 00199FB4 90 1D 00 08 */ stw r0, 8(r29) +lbl_8019D058: +/* 8019D058 00199FB8 38 61 00 6C */ addi r3, r1, 0x6c +/* 8019D05C 00199FBC 38 80 00 00 */ li r4, 0 +/* 8019D060 00199FC0 48 1A 3D E1 */ bl __dt__6CTokenFv +/* 8019D064 00199FC4 38 61 00 38 */ addi r3, r1, 0x38 +/* 8019D068 00199FC8 38 80 FF FF */ li r4, -1 +/* 8019D06C 00199FCC 48 1A 3D D5 */ bl __dt__6CTokenFv +lbl_8019D070: +/* 8019D070 00199FD0 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) +/* 8019D074 00199FD4 80 9E 00 A4 */ lwz r4, 0xa4(r30) +/* 8019D078 00199FD8 38 63 00 04 */ addi r3, r3, 4 +/* 8019D07C 00199FDC 48 19 EC 51 */ bl GetResourceTypeById__10CResLoaderCFUi +/* 8019D080 00199FE0 3C 03 AB A8 */ addis r0, r3, 0xaba8 +/* 8019D084 00199FE4 28 00 54 52 */ cmplwi r0, 0x5452 +/* 8019D088 00199FE8 40 82 00 C8 */ bne lbl_8019D150 +/* 8019D08C 00199FEC 2C 1F 00 00 */ cmpwi r31, 0 +/* 8019D090 00199FF0 40 82 00 C0 */ bne lbl_8019D150 +/* 8019D094 00199FF4 80 DE 00 A4 */ lwz r6, 0xa4(r30) +/* 8019D098 00199FF8 3C 60 54 58 */ lis r3, 0x54585452@ha +/* 8019D09C 00199FFC 38 03 54 52 */ addi r0, r3, 0x54585452@l +/* 8019D0A0 0019A000 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8019D0A4 0019A004 90 01 00 30 */ stw r0, 0x30(r1) +/* 8019D0A8 0019A008 38 61 00 28 */ addi r3, r1, 0x28 +/* 8019D0AC 0019A00C 38 A1 00 30 */ addi r5, r1, 0x30 +/* 8019D0B0 0019A010 90 C1 00 34 */ stw r6, 0x34(r1) +/* 8019D0B4 0019A014 81 84 00 00 */ lwz r12, 0(r4) +/* 8019D0B8 0019A018 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8019D0BC 0019A01C 7D 89 03 A6 */ mtctr r12 +/* 8019D0C0 0019A020 4E 80 04 21 */ bctrl +/* 8019D0C4 0019A024 3B 01 00 60 */ addi r24, r1, 0x60 +/* 8019D0C8 0019A028 38 81 00 28 */ addi r4, r1, 0x28 +/* 8019D0CC 0019A02C 7F 03 C3 78 */ mr r3, r24 +/* 8019D0D0 0019A030 48 1A 3D D9 */ bl __ct__6CTokenFRC6CToken +/* 8019D0D4 0019A034 7F 03 C3 78 */ mr r3, r24 +/* 8019D0D8 0019A038 48 1A 3D 35 */ bl GetObj__6CTokenFv +/* 8019D0DC 0019A03C 80 03 00 04 */ lwz r0, 4(r3) +/* 8019D0E0 0019A040 90 01 00 68 */ stw r0, 0x68(r1) +/* 8019D0E4 0019A044 88 1E 00 CC */ lbz r0, 0xcc(r30) +/* 8019D0E8 0019A048 28 00 00 00 */ cmplwi r0, 0 +/* 8019D0EC 0019A04C 40 82 00 34 */ bne lbl_8019D120 +/* 8019D0F0 0019A050 37 BE 00 C0 */ addic. r29, r30, 0xc0 +/* 8019D0F4 0019A054 41 82 00 20 */ beq lbl_8019D114 +/* 8019D0F8 0019A058 7F A3 EB 78 */ mr r3, r29 +/* 8019D0FC 0019A05C 7F 04 C3 78 */ mr r4, r24 +/* 8019D100 0019A060 48 1A 3D A9 */ bl __ct__6CTokenFRC6CToken +/* 8019D104 0019A064 80 01 00 68 */ lwz r0, 0x68(r1) +/* 8019D108 0019A068 7F A3 EB 78 */ mr r3, r29 +/* 8019D10C 0019A06C 90 1D 00 08 */ stw r0, 8(r29) +/* 8019D110 0019A070 48 1A 3C 75 */ bl Lock__6CTokenFv +lbl_8019D114: +/* 8019D114 0019A074 38 00 00 01 */ li r0, 1 +/* 8019D118 0019A078 98 1E 00 CC */ stb r0, 0xcc(r30) +/* 8019D11C 0019A07C 48 00 00 1C */ b lbl_8019D138 +lbl_8019D120: +/* 8019D120 0019A080 3B BE 00 C0 */ addi r29, r30, 0xc0 +/* 8019D124 0019A084 7F 04 C3 78 */ mr r4, r24 +/* 8019D128 0019A088 7F A3 EB 78 */ mr r3, r29 +/* 8019D12C 0019A08C 48 1A 3B 99 */ bl __as__6CTokenFRC6CToken +/* 8019D130 0019A090 80 01 00 68 */ lwz r0, 0x68(r1) +/* 8019D134 0019A094 90 1D 00 08 */ stw r0, 8(r29) +lbl_8019D138: +/* 8019D138 0019A098 38 61 00 60 */ addi r3, r1, 0x60 +/* 8019D13C 0019A09C 38 80 00 00 */ li r4, 0 +/* 8019D140 0019A0A0 48 1A 3D 01 */ bl __dt__6CTokenFv +/* 8019D144 0019A0A4 38 61 00 28 */ addi r3, r1, 0x28 +/* 8019D148 0019A0A8 38 80 FF FF */ li r4, -1 +/* 8019D14C 0019A0AC 48 1A 3C F5 */ bl __dt__6CTokenFv +lbl_8019D150: +/* 8019D150 0019A0B0 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) +/* 8019D154 0019A0B4 80 9E 00 A8 */ lwz r4, 0xa8(r30) +/* 8019D158 0019A0B8 38 63 00 04 */ addi r3, r3, 4 +/* 8019D15C 0019A0BC 48 19 EB 71 */ bl GetResourceTypeById__10CResLoaderCFUi +/* 8019D160 0019A0C0 3C 03 AB A8 */ addis r0, r3, 0xaba8 +/* 8019D164 0019A0C4 28 00 54 52 */ cmplwi r0, 0x5452 +/* 8019D168 0019A0C8 40 82 00 C0 */ bne lbl_8019D228 +/* 8019D16C 0019A0CC 80 DE 00 A8 */ lwz r6, 0xa8(r30) +/* 8019D170 0019A0D0 3C 60 54 58 */ lis r3, 0x54585452@ha +/* 8019D174 0019A0D4 38 03 54 52 */ addi r0, r3, 0x54585452@l +/* 8019D178 0019A0D8 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8019D17C 0019A0DC 90 01 00 20 */ stw r0, 0x20(r1) +/* 8019D180 0019A0E0 38 61 00 18 */ addi r3, r1, 0x18 +/* 8019D184 0019A0E4 38 A1 00 20 */ addi r5, r1, 0x20 +/* 8019D188 0019A0E8 90 C1 00 24 */ stw r6, 0x24(r1) +/* 8019D18C 0019A0EC 81 84 00 00 */ lwz r12, 0(r4) +/* 8019D190 0019A0F0 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8019D194 0019A0F4 7D 89 03 A6 */ mtctr r12 +/* 8019D198 0019A0F8 4E 80 04 21 */ bctrl +/* 8019D19C 0019A0FC 3B 01 00 54 */ addi r24, r1, 0x54 +/* 8019D1A0 0019A100 38 81 00 18 */ addi r4, r1, 0x18 +/* 8019D1A4 0019A104 7F 03 C3 78 */ mr r3, r24 +/* 8019D1A8 0019A108 48 1A 3D 01 */ bl __ct__6CTokenFRC6CToken +/* 8019D1AC 0019A10C 7F 03 C3 78 */ mr r3, r24 +/* 8019D1B0 0019A110 48 1A 3C 5D */ bl GetObj__6CTokenFv +/* 8019D1B4 0019A114 80 03 00 04 */ lwz r0, 4(r3) +/* 8019D1B8 0019A118 90 01 00 5C */ stw r0, 0x5c(r1) +/* 8019D1BC 0019A11C 88 1E 00 DC */ lbz r0, 0xdc(r30) +/* 8019D1C0 0019A120 28 00 00 00 */ cmplwi r0, 0 +/* 8019D1C4 0019A124 40 82 00 34 */ bne lbl_8019D1F8 +/* 8019D1C8 0019A128 37 BE 00 D0 */ addic. r29, r30, 0xd0 +/* 8019D1CC 0019A12C 41 82 00 20 */ beq lbl_8019D1EC +/* 8019D1D0 0019A130 7F A3 EB 78 */ mr r3, r29 +/* 8019D1D4 0019A134 7F 04 C3 78 */ mr r4, r24 +/* 8019D1D8 0019A138 48 1A 3C D1 */ bl __ct__6CTokenFRC6CToken +/* 8019D1DC 0019A13C 80 01 00 5C */ lwz r0, 0x5c(r1) +/* 8019D1E0 0019A140 7F A3 EB 78 */ mr r3, r29 +/* 8019D1E4 0019A144 90 1D 00 08 */ stw r0, 8(r29) +/* 8019D1E8 0019A148 48 1A 3B 9D */ bl Lock__6CTokenFv +lbl_8019D1EC: +/* 8019D1EC 0019A14C 38 00 00 01 */ li r0, 1 +/* 8019D1F0 0019A150 98 1E 00 DC */ stb r0, 0xdc(r30) +/* 8019D1F4 0019A154 48 00 00 1C */ b lbl_8019D210 +lbl_8019D1F8: +/* 8019D1F8 0019A158 3B BE 00 D0 */ addi r29, r30, 0xd0 +/* 8019D1FC 0019A15C 7F 04 C3 78 */ mr r4, r24 +/* 8019D200 0019A160 7F A3 EB 78 */ mr r3, r29 +/* 8019D204 0019A164 48 1A 3A C1 */ bl __as__6CTokenFRC6CToken +/* 8019D208 0019A168 80 01 00 5C */ lwz r0, 0x5c(r1) +/* 8019D20C 0019A16C 90 1D 00 08 */ stw r0, 8(r29) +lbl_8019D210: +/* 8019D210 0019A170 38 61 00 54 */ addi r3, r1, 0x54 +/* 8019D214 0019A174 38 80 00 00 */ li r4, 0 +/* 8019D218 0019A178 48 1A 3C 29 */ bl __dt__6CTokenFv +/* 8019D21C 0019A17C 38 61 00 18 */ addi r3, r1, 0x18 +/* 8019D220 0019A180 38 80 FF FF */ li r4, -1 +/* 8019D224 0019A184 48 1A 3C 1D */ bl __dt__6CTokenFv +lbl_8019D228: +/* 8019D228 0019A188 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) +/* 8019D22C 0019A18C 80 9E 00 AC */ lwz r4, 0xac(r30) +/* 8019D230 0019A190 38 63 00 04 */ addi r3, r3, 4 +/* 8019D234 0019A194 48 19 EA 99 */ bl GetResourceTypeById__10CResLoaderCFUi +/* 8019D238 0019A198 3C 03 AB A8 */ addis r0, r3, 0xaba8 +/* 8019D23C 0019A19C 28 00 54 52 */ cmplwi r0, 0x5452 +/* 8019D240 0019A1A0 40 82 00 D0 */ bne lbl_8019D310 +/* 8019D244 0019A1A4 2C 1F 00 02 */ cmpwi r31, 2 +/* 8019D248 0019A1A8 41 82 00 C8 */ beq lbl_8019D310 +/* 8019D24C 0019A1AC 2C 1F 00 05 */ cmpwi r31, 5 +/* 8019D250 0019A1B0 41 82 00 C0 */ beq lbl_8019D310 +/* 8019D254 0019A1B4 80 DE 00 AC */ lwz r6, 0xac(r30) +/* 8019D258 0019A1B8 3C 60 54 58 */ lis r3, 0x54585452@ha +/* 8019D25C 0019A1BC 38 03 54 52 */ addi r0, r3, 0x54585452@l +/* 8019D260 0019A1C0 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8019D264 0019A1C4 90 01 00 10 */ stw r0, 0x10(r1) +/* 8019D268 0019A1C8 38 61 00 08 */ addi r3, r1, 8 +/* 8019D26C 0019A1CC 38 A1 00 10 */ addi r5, r1, 0x10 +/* 8019D270 0019A1D0 90 C1 00 14 */ stw r6, 0x14(r1) +/* 8019D274 0019A1D4 81 84 00 00 */ lwz r12, 0(r4) +/* 8019D278 0019A1D8 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8019D27C 0019A1DC 7D 89 03 A6 */ mtctr r12 +/* 8019D280 0019A1E0 4E 80 04 21 */ bctrl +/* 8019D284 0019A1E4 3B 01 00 48 */ addi r24, r1, 0x48 +/* 8019D288 0019A1E8 38 81 00 08 */ addi r4, r1, 8 +/* 8019D28C 0019A1EC 7F 03 C3 78 */ mr r3, r24 +/* 8019D290 0019A1F0 48 1A 3C 19 */ bl __ct__6CTokenFRC6CToken +/* 8019D294 0019A1F4 7F 03 C3 78 */ mr r3, r24 +/* 8019D298 0019A1F8 48 1A 3B 75 */ bl GetObj__6CTokenFv +/* 8019D29C 0019A1FC 80 03 00 04 */ lwz r0, 4(r3) +/* 8019D2A0 0019A200 90 01 00 50 */ stw r0, 0x50(r1) +/* 8019D2A4 0019A204 88 1E 00 EC */ lbz r0, 0xec(r30) +/* 8019D2A8 0019A208 28 00 00 00 */ cmplwi r0, 0 +/* 8019D2AC 0019A20C 40 82 00 34 */ bne lbl_8019D2E0 +/* 8019D2B0 0019A210 37 BE 00 E0 */ addic. r29, r30, 0xe0 +/* 8019D2B4 0019A214 41 82 00 20 */ beq lbl_8019D2D4 +/* 8019D2B8 0019A218 7F A3 EB 78 */ mr r3, r29 +/* 8019D2BC 0019A21C 7F 04 C3 78 */ mr r4, r24 +/* 8019D2C0 0019A220 48 1A 3B E9 */ bl __ct__6CTokenFRC6CToken +/* 8019D2C4 0019A224 80 01 00 50 */ lwz r0, 0x50(r1) +/* 8019D2C8 0019A228 7F A3 EB 78 */ mr r3, r29 +/* 8019D2CC 0019A22C 90 1D 00 08 */ stw r0, 8(r29) +/* 8019D2D0 0019A230 48 1A 3A B5 */ bl Lock__6CTokenFv +lbl_8019D2D4: +/* 8019D2D4 0019A234 38 00 00 01 */ li r0, 1 +/* 8019D2D8 0019A238 98 1E 00 EC */ stb r0, 0xec(r30) +/* 8019D2DC 0019A23C 48 00 00 1C */ b lbl_8019D2F8 +lbl_8019D2E0: +/* 8019D2E0 0019A240 3B BE 00 E0 */ addi r29, r30, 0xe0 +/* 8019D2E4 0019A244 7F 04 C3 78 */ mr r4, r24 +/* 8019D2E8 0019A248 7F A3 EB 78 */ mr r3, r29 +/* 8019D2EC 0019A24C 48 1A 39 D9 */ bl __as__6CTokenFRC6CToken +/* 8019D2F0 0019A250 80 01 00 50 */ lwz r0, 0x50(r1) +/* 8019D2F4 0019A254 90 1D 00 08 */ stw r0, 8(r29) +lbl_8019D2F8: +/* 8019D2F8 0019A258 38 61 00 48 */ addi r3, r1, 0x48 +/* 8019D2FC 0019A25C 38 80 00 00 */ li r4, 0 +/* 8019D300 0019A260 48 1A 3B 41 */ bl __dt__6CTokenFv +/* 8019D304 0019A264 38 61 00 08 */ addi r3, r1, 8 +/* 8019D308 0019A268 38 80 FF FF */ li r4, -1 +/* 8019D30C 0019A26C 48 1A 3B 35 */ bl __dt__6CTokenFv +lbl_8019D310: +/* 8019D310 0019A270 7F C3 F3 78 */ mr r3, r30 +/* 8019D314 0019A274 E3 E1 01 98 */ psq_l f31, 408(r1), 0, qr0 +/* 8019D318 0019A278 CB E1 01 90 */ lfd f31, 0x190(r1) +/* 8019D31C 0019A27C E3 C1 01 88 */ psq_l f30, 392(r1), 0, qr0 +/* 8019D320 0019A280 CB C1 01 80 */ lfd f30, 0x180(r1) +/* 8019D324 0019A284 E3 A1 01 78 */ psq_l f29, 376(r1), 0, qr0 +/* 8019D328 0019A288 CB A1 01 70 */ lfd f29, 0x170(r1) +/* 8019D32C 0019A28C E3 81 01 68 */ psq_l f28, 360(r1), 0, qr0 +/* 8019D330 0019A290 CB 81 01 60 */ lfd f28, 0x160(r1) +/* 8019D334 0019A294 E3 61 01 58 */ psq_l f27, 344(r1), 0, qr0 +/* 8019D338 0019A298 CB 61 01 50 */ lfd f27, 0x150(r1) +/* 8019D33C 0019A29C E3 41 01 48 */ psq_l f26, 328(r1), 0, qr0 +/* 8019D340 0019A2A0 CB 41 01 40 */ lfd f26, 0x140(r1) +/* 8019D344 0019A2A4 E3 21 01 38 */ psq_l f25, 312(r1), 0, qr0 +/* 8019D348 0019A2A8 CB 21 01 30 */ lfd f25, 0x130(r1) +/* 8019D34C 0019A2AC E3 01 01 28 */ psq_l f24, 296(r1), 0, qr0 +/* 8019D350 0019A2B0 CB 01 01 20 */ lfd f24, 0x120(r1) +/* 8019D354 0019A2B4 E2 E1 01 18 */ psq_l f23, 280(r1), 0, qr0 +/* 8019D358 0019A2B8 CA E1 01 10 */ lfd f23, 0x110(r1) +/* 8019D35C 0019A2BC E2 C1 01 08 */ psq_l f22, 264(r1), 0, qr0 +/* 8019D360 0019A2C0 CA C1 01 00 */ lfd f22, 0x100(r1) +/* 8019D364 0019A2C4 E2 A1 00 F8 */ psq_l f21, 248(r1), 0, qr0 +/* 8019D368 0019A2C8 CA A1 00 F0 */ lfd f21, 0xf0(r1) +/* 8019D36C 0019A2CC E2 81 00 E8 */ psq_l f20, 232(r1), 0, qr0 +/* 8019D370 0019A2D0 CA 81 00 E0 */ lfd f20, 0xe0(r1) +/* 8019D374 0019A2D4 E2 61 00 D8 */ psq_l f19, 216(r1), 0, qr0 +/* 8019D378 0019A2D8 CA 61 00 D0 */ lfd f19, 0xd0(r1) +/* 8019D37C 0019A2DC E2 41 00 C8 */ psq_l f18, 200(r1), 0, qr0 +/* 8019D380 0019A2E0 CA 41 00 C0 */ lfd f18, 0xc0(r1) +/* 8019D384 0019A2E4 E2 21 00 B8 */ psq_l f17, 184(r1), 0, qr0 +/* 8019D388 0019A2E8 CA 21 00 B0 */ lfd f17, 0xb0(r1) +/* 8019D38C 0019A2EC BB 01 00 90 */ lmw r24, 0x90(r1) +/* 8019D390 0019A2F0 80 01 01 A4 */ lwz r0, 0x1a4(r1) +/* 8019D394 0019A2F4 7C 08 03 A6 */ mtlr r0 +/* 8019D398 0019A2F8 38 21 01 A0 */ addi r1, r1, 0x1a0 +/* 8019D39C 0019A2FC 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CFluidPlaneDoor.s b/asm/Kyoto_CWD/CFluidPlaneDoor.s new file mode 100644 index 00000000..7e42ba03 --- /dev/null +++ b/asm/Kyoto_CWD/CFluidPlaneDoor.s @@ -0,0 +1,642 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global nullsub_143 +nullsub_143: +/* 8019D3A0 0019A300 4E 80 00 20 */ blr + +.global nullsub_144 +nullsub_144: +/* 8019D3A4 0019A304 4E 80 00 20 */ blr + +.global nullsub_145 +nullsub_145: +/* 8019D3A8 0019A308 4E 80 00 20 */ blr + +.global RenderCleanup__15CFluidPlaneDoorCFv +RenderCleanup__15CFluidPlaneDoorCFv: +/* 8019D3AC 0019A30C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8019D3B0 0019A310 7C 08 02 A6 */ mflr r0 +/* 8019D3B4 0019A314 38 60 00 00 */ li r3, 0 +/* 8019D3B8 0019A318 90 01 00 14 */ stw r0, 0x14(r1) +/* 8019D3BC 0019A31C 48 1E 1B 09 */ bl LCQueueWait +/* 8019D3C0 0019A320 38 60 00 00 */ li r3, 0 +/* 8019D3C4 0019A324 38 80 00 00 */ li r4, 0 +/* 8019D3C8 0019A328 38 A0 00 04 */ li r5, 4 +/* 8019D3CC 0019A32C 38 C0 00 3C */ li r6, 0x3c +/* 8019D3D0 0019A330 38 E0 00 00 */ li r7, 0 +/* 8019D3D4 0019A334 39 00 00 7D */ li r8, 0x7d +/* 8019D3D8 0019A338 48 16 B2 F5 */ bl SetTexCoordGen__3CGXF13_GXTexCoordID13_GXTexGenType12_GXTexGenSrc9_GXTexMtxUc11_GXPTTexMtx +/* 8019D3DC 0019A33C 38 60 00 01 */ li r3, 1 +/* 8019D3E0 0019A340 38 80 00 00 */ li r4, 0 +/* 8019D3E4 0019A344 38 A0 00 05 */ li r5, 5 +/* 8019D3E8 0019A348 38 C0 00 3C */ li r6, 0x3c +/* 8019D3EC 0019A34C 38 E0 00 00 */ li r7, 0 +/* 8019D3F0 0019A350 39 00 00 7D */ li r8, 0x7d +/* 8019D3F4 0019A354 48 16 B2 D9 */ bl SetTexCoordGen__3CGXF13_GXTexCoordID13_GXTexGenType12_GXTexGenSrc9_GXTexMtxUc11_GXPTTexMtx +/* 8019D3F8 0019A358 38 60 00 02 */ li r3, 2 +/* 8019D3FC 0019A35C 38 80 00 00 */ li r4, 0 +/* 8019D400 0019A360 38 A0 00 06 */ li r5, 6 +/* 8019D404 0019A364 38 C0 00 3C */ li r6, 0x3c +/* 8019D408 0019A368 38 E0 00 00 */ li r7, 0 +/* 8019D40C 0019A36C 39 00 00 7D */ li r8, 0x7d +/* 8019D410 0019A370 48 16 B2 BD */ bl SetTexCoordGen__3CGXF13_GXTexCoordID13_GXTexGenType12_GXTexGenSrc9_GXTexMtxUc11_GXPTTexMtx +/* 8019D414 0019A374 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8019D418 0019A378 7C 08 03 A6 */ mtlr r0 +/* 8019D41C 0019A37C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8019D420 0019A380 4E 80 00 20 */ blr + +.global Render__15CFluidPlaneDoorCFRC13CStateManagerRC6CAABoxRC14CFrustumPlanesRC14CRippleManagerRC9CVector3f +Render__15CFluidPlaneDoorCFRC13CStateManagerRC6CAABoxRC14CFrustumPlanesRC14CRippleManagerRC9CVector3f: +/* 8019D424 0019A384 94 21 FE 50 */ stwu r1, -0x1b0(r1) +/* 8019D428 0019A388 7C 08 02 A6 */ mflr r0 +/* 8019D42C 0019A38C 90 01 01 B4 */ stw r0, 0x1b4(r1) +/* 8019D430 0019A390 DB E1 01 A0 */ stfd f31, 0x1a0(r1) +/* 8019D434 0019A394 F3 E1 01 A8 */ psq_st f31, 424(r1), 0, qr0 +/* 8019D438 0019A398 DB C1 01 90 */ stfd f30, 0x190(r1) +/* 8019D43C 0019A39C F3 C1 01 98 */ psq_st f30, 408(r1), 0, qr0 +/* 8019D440 0019A3A0 DB A1 01 80 */ stfd f29, 0x180(r1) +/* 8019D444 0019A3A4 F3 A1 01 88 */ psq_st f29, 392(r1), 0, qr0 +/* 8019D448 0019A3A8 DB 81 01 70 */ stfd f28, 0x170(r1) +/* 8019D44C 0019A3AC F3 81 01 78 */ psq_st f28, 376(r1), 0, qr0 +/* 8019D450 0019A3B0 DB 61 01 60 */ stfd f27, 0x160(r1) +/* 8019D454 0019A3B4 F3 61 01 68 */ psq_st f27, 360(r1), 0, qr0 +/* 8019D458 0019A3B8 DB 41 01 50 */ stfd f26, 0x150(r1) +/* 8019D45C 0019A3BC F3 41 01 58 */ psq_st f26, 344(r1), 0, qr0 +/* 8019D460 0019A3C0 DB 21 01 40 */ stfd f25, 0x140(r1) +/* 8019D464 0019A3C4 F3 21 01 48 */ psq_st f25, 328(r1), 0, qr0 +/* 8019D468 0019A3C8 DB 01 01 30 */ stfd f24, 0x130(r1) +/* 8019D46C 0019A3CC F3 01 01 38 */ psq_st f24, 312(r1), 0, qr0 +/* 8019D470 0019A3D0 DA E1 01 20 */ stfd f23, 0x120(r1) +/* 8019D474 0019A3D4 F2 E1 01 28 */ psq_st f23, 296(r1), 0, qr0 +/* 8019D478 0019A3D8 93 E1 01 1C */ stw r31, 0x11c(r1) +/* 8019D47C 0019A3DC 93 C1 01 18 */ stw r30, 0x118(r1) +/* 8019D480 0019A3E0 93 A1 01 14 */ stw r29, 0x114(r1) +/* 8019D484 0019A3E4 93 81 01 10 */ stw r28, 0x110(r1) +/* 8019D488 0019A3E8 88 02 98 E8 */ lbz r0, lbl_805AB608@sda21(r2) +/* 8019D48C 0019A3EC 7C 7D 1B 78 */ mr r29, r3 +/* 8019D490 0019A3F0 7C BC 2B 78 */ mr r28, r5 +/* 8019D494 0019A3F4 7C DE 33 78 */ mr r30, r6 +/* 8019D498 0019A3F8 28 00 00 00 */ cmplwi r0, 0 +/* 8019D49C 0019A3FC 7D 3F 4B 78 */ mr r31, r9 +/* 8019D4A0 0019A400 41 82 03 04 */ beq lbl_8019D7A4 +/* 8019D4A4 0019A404 7F C5 F3 78 */ mr r5, r30 +/* 8019D4A8 0019A408 7F 86 E3 78 */ mr r6, r28 +/* 8019D4AC 0019A40C 7D 07 43 78 */ mr r7, r8 +/* 8019D4B0 0019A410 48 00 03 5D */ bl RenderSetup__15CFluidPlaneDoorCFRC13CStateManagerfRC12CTransform4fRC6CAABox +/* 8019D4B4 0019A414 48 16 A9 C9 */ bl SetIndexedPositionVtxFmt__14CFluidPlaneCPUFv +/* 8019D4B8 0019A418 38 60 00 09 */ li r3, 9 +/* 8019D4BC 0019A41C 38 80 00 01 */ li r4, 1 +/* 8019D4C0 0019A420 48 16 A9 E5 */ bl SetAttrFmt__11CFluidPlaneF6GXAttr10GXAttrType +/* 8019D4C4 0019A424 80 DD 00 A4 */ lwz r6, 0xa4(r29) +/* 8019D4C8 0019A428 38 00 00 2A */ li r0, 0x2a +/* 8019D4CC 0019A42C C3 DD 00 A8 */ lfs f30, 0xa8(r29) +/* 8019D4D0 0019A430 7F 84 E3 78 */ mr r4, r28 +/* 8019D4D4 0019A434 7C A0 33 D6 */ divw r5, r0, r6 +/* 8019D4D8 0019A438 C0 02 A7 20 */ lfs f0, lbl_805AC440@sda21(r2) +/* 8019D4DC 0019A43C 90 CD A5 74 */ stw r6, lbl_805A9134@sda21(r13) +/* 8019D4E0 0019A440 38 61 00 58 */ addi r3, r1, 0x58 +/* 8019D4E4 0019A444 EF 20 F0 24 */ fdivs f25, f0, f30 +/* 8019D4E8 0019A448 7C 05 31 D6 */ mullw r0, r5, r6 +/* 8019D4EC 0019A44C 90 AD A5 70 */ stw r5, lbl_805A9130@sda21(r13) +/* 8019D4F0 0019A450 90 0D A5 78 */ stw r0, lbl_805A9138@sda21(r13) +/* 8019D4F4 0019A454 48 19 A1 19 */ bl GetCenterPoint__6CAABoxCFv +/* 8019D4F8 0019A458 C2 E1 00 5C */ lfs f23, 0x5c(r1) +/* 8019D4FC 0019A45C 7F 84 E3 78 */ mr r4, r28 +/* 8019D500 0019A460 38 61 00 64 */ addi r3, r1, 0x64 +/* 8019D504 0019A464 48 19 A1 09 */ bl GetCenterPoint__6CAABoxCFv +/* 8019D508 0019A468 FC 40 B8 90 */ fmr f2, f23 +/* 8019D50C 0019A46C C0 21 00 64 */ lfs f1, 0x64(r1) +/* 8019D510 0019A470 38 61 00 38 */ addi r3, r1, 0x38 +/* 8019D514 0019A474 48 17 6C ED */ bl __ct__9CVector2fFff +/* 8019D518 0019A478 80 8D A5 78 */ lwz r4, lbl_805A9138@sda21(r13) +/* 8019D51C 0019A47C 3C 00 43 30 */ lis r0, 0x4330 +/* 8019D520 0019A480 C0 BC 00 00 */ lfs f5, 0(r28) +/* 8019D524 0019A484 38 61 00 30 */ addi r3, r1, 0x30 +/* 8019D528 0019A488 6C 84 80 00 */ xoris r4, r4, 0x8000 +/* 8019D52C 0019A48C C0 9C 00 04 */ lfs f4, 4(r28) +/* 8019D530 0019A490 90 81 00 FC */ stw r4, 0xfc(r1) +/* 8019D534 0019A494 C0 7C 00 08 */ lfs f3, 8(r28) +/* 8019D538 0019A498 90 01 00 F8 */ stw r0, 0xf8(r1) +/* 8019D53C 0019A49C C8 22 A7 28 */ lfd f1, lbl_805AC448@sda21(r2) +/* 8019D540 0019A4A0 C8 01 00 F8 */ lfd f0, 0xf8(r1) +/* 8019D544 0019A4A4 90 81 01 04 */ stw r4, 0x104(r1) +/* 8019D548 0019A4A8 EC 40 08 28 */ fsubs f2, f0, f1 +/* 8019D54C 0019A4AC C3 BC 00 0C */ lfs f29, 0xc(r28) +/* 8019D550 0019A4B0 90 01 01 00 */ stw r0, 0x100(r1) +/* 8019D554 0019A4B4 C3 9C 00 10 */ lfs f28, 0x10(r28) +/* 8019D558 0019A4B8 C8 01 01 00 */ lfd f0, 0x100(r1) +/* 8019D55C 0019A4BC EC 5E 00 B2 */ fmuls f2, f30, f2 +/* 8019D560 0019A4C0 D0 A1 00 7C */ stfs f5, 0x7c(r1) +/* 8019D564 0019A4C4 EC 00 08 28 */ fsubs f0, f0, f1 +/* 8019D568 0019A4C8 C3 7C 00 14 */ lfs f27, 0x14(r28) +/* 8019D56C 0019A4CC D0 81 00 80 */ stfs f4, 0x80(r1) +/* 8019D570 0019A4D0 EC 3E 00 32 */ fmuls f1, f30, f0 +/* 8019D574 0019A4D4 D0 61 00 84 */ stfs f3, 0x84(r1) +/* 8019D578 0019A4D8 48 17 6C 89 */ bl __ct__9CVector2fFff +/* 8019D57C 0019A4DC C3 01 00 7C */ lfs f24, 0x7c(r1) +/* 8019D580 0019A4E0 48 00 02 14 */ b lbl_8019D794 +lbl_8019D584: +/* 8019D584 0019A4E4 EC 1D C0 28 */ fsubs f0, f29, f24 +/* 8019D588 0019A4E8 C2 E1 00 80 */ lfs f23, 0x80(r1) +/* 8019D58C 0019A4EC EF 59 00 32 */ fmuls f26, f25, f0 +/* 8019D590 0019A4F0 48 00 01 F4 */ b lbl_8019D784 +lbl_8019D594: +/* 8019D594 0019A4F4 F3 41 D0 22 */ psq_st f26, 34(r1), 1, qr5 +/* 8019D598 0019A4F8 38 61 00 2A */ addi r3, r1, 0x2a +/* 8019D59C 0019A4FC 80 8D A5 78 */ lwz r4, lbl_805A9138@sda21(r13) +/* 8019D5A0 0019A500 A8 A1 00 22 */ lha r5, 0x22(r1) +/* 8019D5A4 0019A504 7C 80 07 34 */ extsh r0, r4 +/* 8019D5A8 0019A508 B0 81 00 2A */ sth r4, 0x2a(r1) +/* 8019D5AC 0019A50C 7C 05 00 00 */ cmpw r5, r0 +/* 8019D5B0 0019A510 B0 A1 00 28 */ sth r5, 0x28(r1) +/* 8019D5B4 0019A514 40 80 00 08 */ bge lbl_8019D5BC +/* 8019D5B8 0019A518 38 61 00 28 */ addi r3, r1, 0x28 +lbl_8019D5BC: +/* 8019D5BC 0019A51C EC 1C B8 28 */ fsubs f0, f28, f23 +/* 8019D5C0 0019A520 A8 03 00 00 */ lha r0, 0(r3) +/* 8019D5C4 0019A524 B0 01 00 2E */ sth r0, 0x2e(r1) +/* 8019D5C8 0019A528 EF F9 00 32 */ fmuls f31, f25, f0 +/* 8019D5CC 0019A52C F3 E1 D0 20 */ psq_st f31, 32(r1), 1, qr5 +/* 8019D5D0 0019A530 38 61 00 26 */ addi r3, r1, 0x26 +/* 8019D5D4 0019A534 80 8D A5 78 */ lwz r4, lbl_805A9138@sda21(r13) +/* 8019D5D8 0019A538 A8 A1 00 20 */ lha r5, 0x20(r1) +/* 8019D5DC 0019A53C 7C 80 07 34 */ extsh r0, r4 +/* 8019D5E0 0019A540 B0 81 00 26 */ sth r4, 0x26(r1) +/* 8019D5E4 0019A544 7C 05 00 00 */ cmpw r5, r0 +/* 8019D5E8 0019A548 B0 A1 00 24 */ sth r5, 0x24(r1) +/* 8019D5EC 0019A54C 40 80 00 08 */ bge lbl_8019D5F4 +/* 8019D5F0 0019A550 38 61 00 24 */ addi r3, r1, 0x24 +lbl_8019D5F4: +/* 8019D5F4 0019A554 A8 03 00 00 */ lha r0, 0(r3) +/* 8019D5F8 0019A558 B0 01 00 2C */ sth r0, 0x2c(r1) +/* 8019D5FC 0019A55C E0 01 D0 2C */ psq_l f0, 44(r1), 1, qr5 +/* 8019D600 0019A560 E0 21 D0 2E */ psq_l f1, 46(r1), 1, qr5 +/* 8019D604 0019A564 38 61 00 88 */ addi r3, r1, 0x88 +/* 8019D608 0019A568 EC 1E B8 3A */ fmadds f0, f30, f0, f23 +/* 8019D60C 0019A56C D3 61 00 78 */ stfs f27, 0x78(r1) +/* 8019D610 0019A570 EC 3E C0 7A */ fmadds f1, f30, f1, f24 +/* 8019D614 0019A574 38 81 00 7C */ addi r4, r1, 0x7c +/* 8019D618 0019A578 38 A1 00 70 */ addi r5, r1, 0x70 +/* 8019D61C 0019A57C D0 01 00 74 */ stfs f0, 0x74(r1) +/* 8019D620 0019A580 D0 21 00 70 */ stfs f1, 0x70(r1) +/* 8019D624 0019A584 48 19 AE E5 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 8019D628 0019A588 7C 64 1B 78 */ mr r4, r3 +/* 8019D62C 0019A58C 7F C5 F3 78 */ mr r5, r30 +/* 8019D630 0019A590 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 8019D634 0019A594 48 19 A2 C9 */ bl GetTransformedAABox__6CAABoxCFRC12CTransform4f +/* 8019D638 0019A598 7F E3 FB 78 */ mr r3, r31 +/* 8019D63C 0019A59C 38 81 00 A0 */ addi r4, r1, 0xa0 +/* 8019D640 0019A5A0 48 1A 7B 91 */ bl BoxInFrustumPlanes__14CFrustumPlanesCFRC6CAABox +/* 8019D644 0019A5A4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8019D648 0019A5A8 41 82 01 34 */ beq lbl_8019D77C +/* 8019D64C 0019A5AC C0 BE 00 2C */ lfs f5, 0x2c(r30) +/* 8019D650 0019A5B0 38 00 00 00 */ li r0, 0 +/* 8019D654 0019A5B4 C0 9E 00 1C */ lfs f4, 0x1c(r30) +/* 8019D658 0019A5B8 FC 20 F0 90 */ fmr f1, f30 +/* 8019D65C 0019A5BC C0 1E 00 0C */ lfs f0, 0xc(r30) +/* 8019D660 0019A5C0 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 8019D664 0019A5C4 C0 C1 00 84 */ lfs f6, 0x84(r1) +/* 8019D668 0019A5C8 38 81 00 4C */ addi r4, r1, 0x4c +/* 8019D66C 0019A5CC C0 5D 00 A0 */ lfs f2, 0xa0(r29) +/* 8019D670 0019A5D0 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 8019D674 0019A5D4 38 A1 00 70 */ addi r5, r1, 0x70 +/* 8019D678 0019A5D8 C0 62 A7 24 */ lfs f3, lbl_805AC444@sda21(r2) +/* 8019D67C 0019A5DC 38 C1 00 40 */ addi r6, r1, 0x40 +/* 8019D680 0019A5E0 D0 81 00 44 */ stfs f4, 0x44(r1) +/* 8019D684 0019A5E4 39 00 00 00 */ li r8, 0 +/* 8019D688 0019A5E8 39 20 00 00 */ li r9, 0 +/* 8019D68C 0019A5EC 39 40 00 00 */ li r10, 0 +/* 8019D690 0019A5F0 D0 A1 00 48 */ stfs f5, 0x48(r1) +/* 8019D694 0019A5F4 D3 01 00 4C */ stfs f24, 0x4c(r1) +/* 8019D698 0019A5F8 D2 E1 00 50 */ stfs f23, 0x50(r1) +/* 8019D69C 0019A5FC D0 C1 00 54 */ stfs f6, 0x54(r1) +/* 8019D6A0 0019A600 90 01 00 08 */ stw r0, 8(r1) +/* 8019D6A4 0019A604 90 01 00 0C */ stw r0, 0xc(r1) +/* 8019D6A8 0019A608 90 01 00 10 */ stw r0, 0x10(r1) +/* 8019D6AC 0019A60C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8019D6B0 0019A610 90 01 00 18 */ stw r0, 0x18(r1) +/* 8019D6B4 0019A614 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8019D6B8 0019A618 80 ED A5 78 */ lwz r7, lbl_805A9138@sda21(r13) +/* 8019D6BC 0019A61C 4B FF CB ED */ bl __ct__Q220CFluidPlaneCPURender10SPatchInfoFRC9CVector3fRC9CVector3fRC9CVector3fffb +/* 8019D6C0 0019A620 88 01 00 B8 */ lbz r0, 0xb8(r1) +/* 8019D6C4 0019A624 3C C0 E0 00 */ lis r6, 0xE0000000@ha +/* 8019D6C8 0019A628 3C 60 E0 00 */ lis r3, 0xe000 +/* 8019D6CC 0019A62C 38 80 00 01 */ li r4, 1 +/* 8019D6D0 0019A630 98 06 00 00 */ stb r0, 0xE0000000@l(r6) +/* 8019D6D4 0019A634 38 A0 00 01 */ li r5, 1 +/* 8019D6D8 0019A638 88 01 00 B9 */ lbz r0, 0xb9(r1) +/* 8019D6DC 0019A63C 98 06 00 01 */ stb r0, 1(r6) +/* 8019D6E0 0019A640 C0 01 00 BC */ lfs f0, 0xbc(r1) +/* 8019D6E4 0019A644 D0 06 00 04 */ stfs f0, 4(r6) +/* 8019D6E8 0019A648 C0 01 00 C0 */ lfs f0, 0xc0(r1) +/* 8019D6EC 0019A64C D0 06 00 08 */ stfs f0, 8(r6) +/* 8019D6F0 0019A650 C0 01 00 C4 */ lfs f0, 0xc4(r1) +/* 8019D6F4 0019A654 D0 06 00 0C */ stfs f0, 0xc(r6) +/* 8019D6F8 0019A658 C0 01 00 C8 */ lfs f0, 0xc8(r1) +/* 8019D6FC 0019A65C D0 06 00 10 */ stfs f0, 0x10(r6) +/* 8019D700 0019A660 C0 01 00 CC */ lfs f0, 0xcc(r1) +/* 8019D704 0019A664 D0 06 00 14 */ stfs f0, 0x14(r6) +/* 8019D708 0019A668 C0 01 00 D0 */ lfs f0, 0xd0(r1) +/* 8019D70C 0019A66C D0 06 00 18 */ stfs f0, 0x18(r6) +/* 8019D710 0019A670 C0 01 00 D4 */ lfs f0, 0xd4(r1) +/* 8019D714 0019A674 D0 06 00 1C */ stfs f0, 0x1c(r6) +/* 8019D718 0019A678 C0 01 00 D8 */ lfs f0, 0xd8(r1) +/* 8019D71C 0019A67C D0 06 00 20 */ stfs f0, 0x20(r6) +/* 8019D720 0019A680 C0 01 00 DC */ lfs f0, 0xdc(r1) +/* 8019D724 0019A684 D0 06 00 24 */ stfs f0, 0x24(r6) +/* 8019D728 0019A688 A8 01 00 E0 */ lha r0, 0xe0(r1) +/* 8019D72C 0019A68C B0 06 00 28 */ sth r0, 0x28(r6) +/* 8019D730 0019A690 A8 01 00 E2 */ lha r0, 0xe2(r1) +/* 8019D734 0019A694 B0 06 00 2A */ sth r0, 0x2a(r6) +/* 8019D738 0019A698 A8 01 00 E4 */ lha r0, 0xe4(r1) +/* 8019D73C 0019A69C B0 06 00 2C */ sth r0, 0x2c(r6) +/* 8019D740 0019A6A0 A8 01 00 E6 */ lha r0, 0xe6(r1) +/* 8019D744 0019A6A4 B0 06 00 2E */ sth r0, 0x2e(r6) +/* 8019D748 0019A6A8 80 01 00 E8 */ lwz r0, 0xe8(r1) +/* 8019D74C 0019A6AC 90 06 00 30 */ stw r0, 0x30(r6) +/* 8019D750 0019A6B0 88 01 00 EC */ lbz r0, 0xec(r1) +/* 8019D754 0019A6B4 98 06 00 34 */ stb r0, 0x34(r6) +/* 8019D758 0019A6B8 88 01 00 ED */ lbz r0, 0xed(r1) +/* 8019D75C 0019A6BC 98 06 00 35 */ stb r0, 0x35(r6) +/* 8019D760 0019A6C0 88 01 00 EE */ lbz r0, 0xee(r1) +/* 8019D764 0019A6C4 98 06 00 36 */ stb r0, 0x36(r6) +/* 8019D768 0019A6C8 88 01 00 EF */ lbz r0, 0xef(r1) +/* 8019D76C 0019A6CC 98 06 00 37 */ stb r0, 0x37(r6) +/* 8019D770 0019A6D0 C0 01 00 F0 */ lfs f0, 0xf0(r1) +/* 8019D774 0019A6D4 D0 06 00 38 */ stfs f0, 0x38(r6) +/* 8019D778 0019A6D8 48 0C E4 79 */ bl RenderPatch__FRCQ220CFluidPlaneCPURender10SPatchInfob +lbl_8019D77C: +/* 8019D77C 0019A6DC C0 01 00 34 */ lfs f0, 0x34(r1) +/* 8019D780 0019A6E0 EE F7 00 2A */ fadds f23, f23, f0 +lbl_8019D784: +/* 8019D784 0019A6E4 FC 17 E0 40 */ fcmpo cr0, f23, f28 +/* 8019D788 0019A6E8 41 80 FE 0C */ blt lbl_8019D594 +/* 8019D78C 0019A6EC C0 01 00 30 */ lfs f0, 0x30(r1) +/* 8019D790 0019A6F0 EF 18 00 2A */ fadds f24, f24, f0 +lbl_8019D794: +/* 8019D794 0019A6F4 FC 18 E8 40 */ fcmpo cr0, f24, f29 +/* 8019D798 0019A6F8 41 80 FD EC */ blt lbl_8019D584 +/* 8019D79C 0019A6FC 7F A3 EB 78 */ mr r3, r29 +/* 8019D7A0 0019A700 4B FF FC 0D */ bl RenderCleanup__15CFluidPlaneDoorCFv +lbl_8019D7A4: +/* 8019D7A4 0019A704 E3 E1 01 A8 */ psq_l f31, 424(r1), 0, qr0 +/* 8019D7A8 0019A708 CB E1 01 A0 */ lfd f31, 0x1a0(r1) +/* 8019D7AC 0019A70C E3 C1 01 98 */ psq_l f30, 408(r1), 0, qr0 +/* 8019D7B0 0019A710 CB C1 01 90 */ lfd f30, 0x190(r1) +/* 8019D7B4 0019A714 E3 A1 01 88 */ psq_l f29, 392(r1), 0, qr0 +/* 8019D7B8 0019A718 CB A1 01 80 */ lfd f29, 0x180(r1) +/* 8019D7BC 0019A71C E3 81 01 78 */ psq_l f28, 376(r1), 0, qr0 +/* 8019D7C0 0019A720 CB 81 01 70 */ lfd f28, 0x170(r1) +/* 8019D7C4 0019A724 E3 61 01 68 */ psq_l f27, 360(r1), 0, qr0 +/* 8019D7C8 0019A728 CB 61 01 60 */ lfd f27, 0x160(r1) +/* 8019D7CC 0019A72C E3 41 01 58 */ psq_l f26, 344(r1), 0, qr0 +/* 8019D7D0 0019A730 CB 41 01 50 */ lfd f26, 0x150(r1) +/* 8019D7D4 0019A734 E3 21 01 48 */ psq_l f25, 328(r1), 0, qr0 +/* 8019D7D8 0019A738 CB 21 01 40 */ lfd f25, 0x140(r1) +/* 8019D7DC 0019A73C E3 01 01 38 */ psq_l f24, 312(r1), 0, qr0 +/* 8019D7E0 0019A740 CB 01 01 30 */ lfd f24, 0x130(r1) +/* 8019D7E4 0019A744 E2 E1 01 28 */ psq_l f23, 296(r1), 0, qr0 +/* 8019D7E8 0019A748 CA E1 01 20 */ lfd f23, 0x120(r1) +/* 8019D7EC 0019A74C 83 E1 01 1C */ lwz r31, 0x11c(r1) +/* 8019D7F0 0019A750 83 C1 01 18 */ lwz r30, 0x118(r1) +/* 8019D7F4 0019A754 83 A1 01 14 */ lwz r29, 0x114(r1) +/* 8019D7F8 0019A758 80 01 01 B4 */ lwz r0, 0x1b4(r1) +/* 8019D7FC 0019A75C 83 81 01 10 */ lwz r28, 0x110(r1) +/* 8019D800 0019A760 7C 08 03 A6 */ mtlr r0 +/* 8019D804 0019A764 38 21 01 B0 */ addi r1, r1, 0x1b0 +/* 8019D808 0019A768 4E 80 00 20 */ blr + +.global RenderSetup__15CFluidPlaneDoorCFRC13CStateManagerfRC12CTransform4fRC6CAABox +RenderSetup__15CFluidPlaneDoorCFRC13CStateManagerfRC12CTransform4fRC6CAABox: +/* 8019D80C 0019A76C 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 8019D810 0019A770 7C 08 02 A6 */ mflr r0 +/* 8019D814 0019A774 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 8019D818 0019A778 DB E1 00 E0 */ stfd f31, 0xe0(r1) +/* 8019D81C 0019A77C F3 E1 00 E8 */ psq_st f31, 232(r1), 0, qr0 +/* 8019D820 0019A780 DB C1 00 D0 */ stfd f30, 0xd0(r1) +/* 8019D824 0019A784 F3 C1 00 D8 */ psq_st f30, 216(r1), 0, qr0 +/* 8019D828 0019A788 BD E1 00 8C */ stmw r15, 0x8c(r1) +/* 8019D82C 0019A78C 7C 7E 1B 78 */ mr r30, r3 +/* 8019D830 0019A790 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 8019D834 0019A794 80 C4 08 7C */ lwz r6, 0x87c(r4) +/* 8019D838 0019A798 3C E0 80 3D */ lis r7, lbl_803D1300@ha +/* 8019D83C 0019A79C 81 83 00 00 */ lwz r12, 0(r3) +/* 8019D840 0019A7A0 FF C0 08 90 */ fmr f30, f1 +/* 8019D844 0019A7A4 7C A4 2B 78 */ mr r4, r5 +/* 8019D848 0019A7A8 3B E7 13 00 */ addi r31, r7, lbl_803D1300@l +/* 8019D84C 0019A7AC 81 8C 00 30 */ lwz r12, 0x30(r12) +/* 8019D850 0019A7B0 C3 E6 01 1C */ lfs f31, 0x11c(r6) +/* 8019D854 0019A7B4 7D 89 03 A6 */ mtctr r12 +/* 8019D858 0019A7B8 4E 80 04 21 */ bctrl +/* 8019D85C 0019A7BC 38 60 00 00 */ li r3, 0 +/* 8019D860 0019A7C0 38 8D 8F F0 */ addi r4, r13, lbl_805A7BB0@sda21 +/* 8019D864 0019A7C4 48 16 B4 F9 */ bl SetChanMatColor__3CGXFQ23CGX10EChannelIdRC8_GXColor +/* 8019D868 0019A7C8 38 60 00 00 */ li r3, 0 +/* 8019D86C 0019A7CC 38 80 00 00 */ li r4, 0 +/* 8019D870 0019A7D0 38 A0 00 00 */ li r5, 0 +/* 8019D874 0019A7D4 38 C0 00 00 */ li r6, 0 +/* 8019D878 0019A7D8 38 E0 00 00 */ li r7, 0 +/* 8019D87C 0019A7DC 39 00 00 00 */ li r8, 0 +/* 8019D880 0019A7E0 39 20 00 02 */ li r9, 2 +/* 8019D884 0019A7E4 48 16 B4 49 */ bl SetChanCtrl__3CGXFQ23CGX10EChannelIdUc11_GXColorSrc11_GXColorSrc10_GXLightID12_GXDiffuseFn9_GXAttnFn +/* 8019D888 0019A7E8 38 60 00 00 */ li r3, 0 +/* 8019D88C 0019A7EC 48 16 B5 C5 */ bl SetNumChans__3CGXFUc +/* 8019D890 0019A7F0 88 1E 00 1C */ lbz r0, 0x1c(r30) +/* 8019D894 0019A7F4 28 00 00 00 */ cmplwi r0, 0 +/* 8019D898 0019A7F8 41 82 00 14 */ beq lbl_8019D8AC +/* 8019D89C 0019A7FC 80 7E 00 18 */ lwz r3, 0x18(r30) +/* 8019D8A0 0019A800 38 80 00 00 */ li r4, 0 +/* 8019D8A4 0019A804 38 A0 00 01 */ li r5, 1 +/* 8019D8A8 0019A808 48 17 1E 95 */ bl Load__8CTextureCF11_GXTexMapIDQ28CTexture10EClampMode +lbl_8019D8AC: +/* 8019D8AC 0019A80C 88 1E 00 2C */ lbz r0, 0x2c(r30) +/* 8019D8B0 0019A810 28 00 00 00 */ cmplwi r0, 0 +/* 8019D8B4 0019A814 41 82 00 14 */ beq lbl_8019D8C8 +/* 8019D8B8 0019A818 80 7E 00 28 */ lwz r3, 0x28(r30) +/* 8019D8BC 0019A81C 38 80 00 01 */ li r4, 1 +/* 8019D8C0 0019A820 38 A0 00 01 */ li r5, 1 +/* 8019D8C4 0019A824 48 17 1E 79 */ bl Load__8CTextureCF11_GXTexMapIDQ28CTexture10EClampMode +lbl_8019D8C8: +/* 8019D8C8 0019A828 88 1E 00 3C */ lbz r0, 0x3c(r30) +/* 8019D8CC 0019A82C 28 00 00 00 */ cmplwi r0, 0 +/* 8019D8D0 0019A830 41 82 00 14 */ beq lbl_8019D8E4 +/* 8019D8D4 0019A834 80 7E 00 38 */ lwz r3, 0x38(r30) +/* 8019D8D8 0019A838 38 80 00 02 */ li r4, 2 +/* 8019D8DC 0019A83C 38 A0 00 01 */ li r5, 1 +/* 8019D8E0 0019A840 48 17 1E 5D */ bl Load__8CTextureCF11_GXTexMapIDQ28CTexture10EClampMode +lbl_8019D8E4: +/* 8019D8E4 0019A844 38 60 00 03 */ li r3, 3 +/* 8019D8E8 0019A848 48 16 B5 2D */ bl SetNumTexGens__3CGXFUc +/* 8019D8EC 0019A84C FC 20 F8 90 */ fmr f1, f31 +/* 8019D8F0 0019A850 38 7E 00 4C */ addi r3, r30, 0x4c +/* 8019D8F4 0019A854 38 81 00 6C */ addi r4, r1, 0x6c +/* 8019D8F8 0019A858 4B F7 F1 ED */ bl CalculateFluidTextureOffset__14CFluidUVMotionCFfPA2_f +/* 8019D8FC 0019A85C 82 1F 00 00 */ lwz r16, 0(r31) +/* 8019D900 0019A860 38 61 00 4C */ addi r3, r1, 0x4c +/* 8019D904 0019A864 82 7F 00 0C */ lwz r19, 0xc(r31) +/* 8019D908 0019A868 38 80 00 2D */ li r4, 0x2d +/* 8019D90C 0019A86C 82 BF 00 14 */ lwz r21, 0x14(r31) +/* 8019D910 0019A870 38 A0 00 01 */ li r5, 1 +/* 8019D914 0019A874 82 FF 00 1C */ lwz r23, 0x1c(r31) +/* 8019D918 0019A878 83 1F 00 20 */ lwz r24, 0x20(r31) +/* 8019D91C 0019A87C 83 7F 00 2C */ lwz r27, 0x2c(r31) +/* 8019D920 0019A880 83 BF 00 34 */ lwz r29, 0x34(r31) +/* 8019D924 0019A884 81 7F 00 3C */ lwz r11, 0x3c(r31) +/* 8019D928 0019A888 81 5F 00 40 */ lwz r10, 0x40(r31) +/* 8019D92C 0019A88C 80 FF 00 4C */ lwz r7, 0x4c(r31) +/* 8019D930 0019A890 80 1F 00 54 */ lwz r0, 0x54(r31) +/* 8019D934 0019A894 81 FF 00 5C */ lwz r15, 0x5c(r31) +/* 8019D938 0019A898 82 3F 00 04 */ lwz r17, 4(r31) +/* 8019D93C 0019A89C 82 5F 00 08 */ lwz r18, 8(r31) +/* 8019D940 0019A8A0 82 9F 00 10 */ lwz r20, 0x10(r31) +/* 8019D944 0019A8A4 82 DF 00 18 */ lwz r22, 0x18(r31) +/* 8019D948 0019A8A8 83 3F 00 24 */ lwz r25, 0x24(r31) +/* 8019D94C 0019A8AC 83 5F 00 28 */ lwz r26, 0x28(r31) +/* 8019D950 0019A8B0 83 9F 00 30 */ lwz r28, 0x30(r31) +/* 8019D954 0019A8B4 81 9F 00 38 */ lwz r12, 0x38(r31) +/* 8019D958 0019A8B8 81 3F 00 44 */ lwz r9, 0x44(r31) +/* 8019D95C 0019A8BC 81 1F 00 48 */ lwz r8, 0x48(r31) +/* 8019D960 0019A8C0 80 DF 00 50 */ lwz r6, 0x50(r31) +/* 8019D964 0019A8C4 83 FF 00 58 */ lwz r31, 0x58(r31) +/* 8019D968 0019A8C8 92 01 00 4C */ stw r16, 0x4c(r1) +/* 8019D96C 0019A8CC C0 DE 00 7C */ lfs f6, 0x7c(r30) +/* 8019D970 0019A8D0 92 A1 00 60 */ stw r21, 0x60(r1) +/* 8019D974 0019A8D4 C1 01 00 74 */ lfs f8, 0x74(r1) +/* 8019D978 0019A8D8 92 61 00 58 */ stw r19, 0x58(r1) +/* 8019D97C 0019A8DC C0 E1 00 78 */ lfs f7, 0x78(r1) +/* 8019D980 0019A8E0 92 E1 00 68 */ stw r23, 0x68(r1) +/* 8019D984 0019A8E4 C0 A1 00 7C */ lfs f5, 0x7c(r1) +/* 8019D988 0019A8E8 93 61 00 38 */ stw r27, 0x38(r1) +/* 8019D98C 0019A8EC C0 81 00 80 */ lfs f4, 0x80(r1) +/* 8019D990 0019A8F0 91 61 00 48 */ stw r11, 0x48(r1) +/* 8019D994 0019A8F4 C0 7E 00 94 */ lfs f3, 0x94(r30) +/* 8019D998 0019A8F8 93 01 00 2C */ stw r24, 0x2c(r1) +/* 8019D99C 0019A8FC C0 41 00 6C */ lfs f2, 0x6c(r1) +/* 8019D9A0 0019A900 93 A1 00 40 */ stw r29, 0x40(r1) +/* 8019D9A4 0019A904 C0 21 00 70 */ lfs f1, 0x70(r1) +/* 8019D9A8 0019A908 90 E1 00 18 */ stw r7, 0x18(r1) +/* 8019D9AC 0019A90C C0 1E 00 64 */ lfs f0, 0x64(r30) +/* 8019D9B0 0019A910 91 41 00 0C */ stw r10, 0xc(r1) +/* 8019D9B4 0019A914 90 01 00 20 */ stw r0, 0x20(r1) +/* 8019D9B8 0019A918 91 E1 00 28 */ stw r15, 0x28(r1) +/* 8019D9BC 0019A91C 92 21 00 50 */ stw r17, 0x50(r1) +/* 8019D9C0 0019A920 92 41 00 54 */ stw r18, 0x54(r1) +/* 8019D9C4 0019A924 92 81 00 5C */ stw r20, 0x5c(r1) +/* 8019D9C8 0019A928 92 C1 00 64 */ stw r22, 0x64(r1) +/* 8019D9CC 0019A92C D1 01 00 58 */ stfs f8, 0x58(r1) +/* 8019D9D0 0019A930 D0 E1 00 68 */ stfs f7, 0x68(r1) +/* 8019D9D4 0019A934 D0 C1 00 60 */ stfs f6, 0x60(r1) +/* 8019D9D8 0019A938 D0 C1 00 4C */ stfs f6, 0x4c(r1) +/* 8019D9DC 0019A93C 93 21 00 30 */ stw r25, 0x30(r1) +/* 8019D9E0 0019A940 93 41 00 34 */ stw r26, 0x34(r1) +/* 8019D9E4 0019A944 93 81 00 3C */ stw r28, 0x3c(r1) +/* 8019D9E8 0019A948 91 81 00 44 */ stw r12, 0x44(r1) +/* 8019D9EC 0019A94C D0 A1 00 38 */ stfs f5, 0x38(r1) +/* 8019D9F0 0019A950 D0 81 00 48 */ stfs f4, 0x48(r1) +/* 8019D9F4 0019A954 D0 61 00 40 */ stfs f3, 0x40(r1) +/* 8019D9F8 0019A958 D0 61 00 2C */ stfs f3, 0x2c(r1) +/* 8019D9FC 0019A95C 91 21 00 10 */ stw r9, 0x10(r1) +/* 8019DA00 0019A960 91 01 00 14 */ stw r8, 0x14(r1) +/* 8019DA04 0019A964 90 C1 00 1C */ stw r6, 0x1c(r1) +/* 8019DA08 0019A968 93 E1 00 24 */ stw r31, 0x24(r1) +/* 8019DA0C 0019A96C D0 41 00 18 */ stfs f2, 0x18(r1) +/* 8019DA10 0019A970 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 8019DA14 0019A974 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 8019DA18 0019A978 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 8019DA1C 0019A97C 48 1D EA 75 */ bl GXLoadTexMtxImm +/* 8019DA20 0019A980 38 61 00 2C */ addi r3, r1, 0x2c +/* 8019DA24 0019A984 38 80 00 30 */ li r4, 0x30 +/* 8019DA28 0019A988 38 A0 00 01 */ li r5, 1 +/* 8019DA2C 0019A98C 48 1D EA 65 */ bl GXLoadTexMtxImm +/* 8019DA30 0019A990 38 61 00 0C */ addi r3, r1, 0xc +/* 8019DA34 0019A994 38 80 00 33 */ li r4, 0x33 +/* 8019DA38 0019A998 38 A0 00 01 */ li r5, 1 +/* 8019DA3C 0019A99C 48 1D EA 55 */ bl GXLoadTexMtxImm +/* 8019DA40 0019A9A0 38 60 00 00 */ li r3, 0 +/* 8019DA44 0019A9A4 38 80 00 01 */ li r4, 1 +/* 8019DA48 0019A9A8 38 A0 00 00 */ li r5, 0 +/* 8019DA4C 0019A9AC 38 C0 00 2D */ li r6, 0x2d +/* 8019DA50 0019A9B0 38 E0 00 00 */ li r7, 0 +/* 8019DA54 0019A9B4 39 00 00 7D */ li r8, 0x7d +/* 8019DA58 0019A9B8 48 16 AC 75 */ bl SetTexCoordGen__3CGXF13_GXTexCoordID13_GXTexGenType12_GXTexGenSrc9_GXTexMtxUc11_GXPTTexMtx +/* 8019DA5C 0019A9BC 38 60 00 01 */ li r3, 1 +/* 8019DA60 0019A9C0 38 80 00 01 */ li r4, 1 +/* 8019DA64 0019A9C4 38 A0 00 00 */ li r5, 0 +/* 8019DA68 0019A9C8 38 C0 00 30 */ li r6, 0x30 +/* 8019DA6C 0019A9CC 38 E0 00 00 */ li r7, 0 +/* 8019DA70 0019A9D0 39 00 00 7D */ li r8, 0x7d +/* 8019DA74 0019A9D4 48 16 AC 59 */ bl SetTexCoordGen__3CGXF13_GXTexCoordID13_GXTexGenType12_GXTexGenSrc9_GXTexMtxUc11_GXPTTexMtx +/* 8019DA78 0019A9D8 38 60 00 02 */ li r3, 2 +/* 8019DA7C 0019A9DC 38 80 00 01 */ li r4, 1 +/* 8019DA80 0019A9E0 38 A0 00 00 */ li r5, 0 +/* 8019DA84 0019A9E4 38 C0 00 33 */ li r6, 0x33 +/* 8019DA88 0019A9E8 38 E0 00 00 */ li r7, 0 +/* 8019DA8C 0019A9EC 39 00 00 7D */ li r8, 0x7d +/* 8019DA90 0019A9F0 48 16 AC 3D */ bl SetTexCoordGen__3CGXF13_GXTexCoordID13_GXTexGenType12_GXTexGenSrc9_GXTexMtxUc11_GXPTTexMtx +/* 8019DA94 0019A9F4 38 60 00 00 */ li r3, 0 +/* 8019DA98 0019A9F8 38 80 00 00 */ li r4, 0 +/* 8019DA9C 0019A9FC 38 A0 00 00 */ li r5, 0 +/* 8019DAA0 0019AA00 38 C0 00 FF */ li r6, 0xff +/* 8019DAA4 0019AA04 48 16 AE A9 */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 8019DAA8 0019AA08 38 60 00 01 */ li r3, 1 +/* 8019DAAC 0019AA0C 38 80 00 01 */ li r4, 1 +/* 8019DAB0 0019AA10 38 A0 00 01 */ li r5, 1 +/* 8019DAB4 0019AA14 38 C0 00 FF */ li r6, 0xff +/* 8019DAB8 0019AA18 48 16 AE 95 */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 8019DABC 0019AA1C 38 60 00 02 */ li r3, 2 +/* 8019DAC0 0019AA20 38 80 00 02 */ li r4, 2 +/* 8019DAC4 0019AA24 38 A0 00 02 */ li r5, 2 +/* 8019DAC8 0019AA28 38 C0 00 FF */ li r6, 0xff +/* 8019DACC 0019AA2C 48 16 AE 81 */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 8019DAD0 0019AA30 38 60 00 03 */ li r3, 3 +/* 8019DAD4 0019AA34 48 16 B1 BD */ bl SetNumTevStages__3CGXFUc +/* 8019DAD8 0019AA38 38 60 00 00 */ li r3, 0 +/* 8019DADC 0019AA3C 38 80 00 0F */ li r4, 0xf +/* 8019DAE0 0019AA40 38 A0 00 08 */ li r5, 8 +/* 8019DAE4 0019AA44 38 C0 00 0E */ li r6, 0xe +/* 8019DAE8 0019AA48 38 E0 00 0F */ li r7, 0xf +/* 8019DAEC 0019AA4C 48 16 B1 01 */ bl SetTevColorIn__3CGXF13_GXTevStageID14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg +/* 8019DAF0 0019AA50 38 60 00 01 */ li r3, 1 +/* 8019DAF4 0019AA54 38 80 00 0F */ li r4, 0xf +/* 8019DAF8 0019AA58 38 A0 00 08 */ li r5, 8 +/* 8019DAFC 0019AA5C 38 C0 00 00 */ li r6, 0 +/* 8019DB00 0019AA60 38 E0 00 0F */ li r7, 0xf +/* 8019DB04 0019AA64 48 16 B0 E9 */ bl SetTevColorIn__3CGXF13_GXTevStageID14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg +/* 8019DB08 0019AA68 38 60 00 02 */ li r3, 2 +/* 8019DB0C 0019AA6C 38 80 00 0F */ li r4, 0xf +/* 8019DB10 0019AA70 38 A0 00 08 */ li r5, 8 +/* 8019DB14 0019AA74 38 C0 00 0C */ li r6, 0xc +/* 8019DB18 0019AA78 38 E0 00 00 */ li r7, 0 +/* 8019DB1C 0019AA7C 48 16 B0 D1 */ bl SetTevColorIn__3CGXF13_GXTevStageID14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg +/* 8019DB20 0019AA80 38 60 00 02 */ li r3, 2 +/* 8019DB24 0019AA84 38 80 00 07 */ li r4, 7 +/* 8019DB28 0019AA88 38 A0 00 07 */ li r5, 7 +/* 8019DB2C 0019AA8C 38 C0 00 07 */ li r6, 7 +/* 8019DB30 0019AA90 38 E0 00 06 */ li r7, 6 +/* 8019DB34 0019AA94 48 16 B0 61 */ bl SetTevAlphaIn__3CGXF13_GXTevStageID14_GXTevAlphaArg14_GXTevAlphaArg14_GXTevAlphaArg14_GXTevAlphaArg +/* 8019DB38 0019AA98 C0 22 A7 20 */ lfs f1, lbl_805AC440@sda21(r2) +/* 8019DB3C 0019AA9C FC 80 F0 90 */ fmr f4, f30 +/* 8019DB40 0019AAA0 38 61 00 08 */ addi r3, r1, 8 +/* 8019DB44 0019AAA4 FC 40 08 90 */ fmr f2, f1 +/* 8019DB48 0019AAA8 FC 60 08 90 */ fmr f3, f1 +/* 8019DB4C 0019AAAC 48 1C 58 A1 */ bl __ct__6CColorFffff +/* 8019DB50 0019AAB0 7C 64 1B 78 */ mr r4, r3 +/* 8019DB54 0019AAB4 38 60 00 00 */ li r3, 0 +/* 8019DB58 0019AAB8 48 16 B0 ED */ bl SetTevKColor__3CGXF14_GXTevKColorIDRC8_GXColor +/* 8019DB5C 0019AABC 38 60 00 00 */ li r3, 0 +/* 8019DB60 0019AAC0 38 80 00 0C */ li r4, 0xc +/* 8019DB64 0019AAC4 48 16 AE 7D */ bl SetTevKColorSel__3CGXF13_GXTevStageID15_GXTevKColorSel +/* 8019DB68 0019AAC8 38 60 00 02 */ li r3, 2 +/* 8019DB6C 0019AACC 38 80 00 1C */ li r4, 0x1c +/* 8019DB70 0019AAD0 48 16 AE 2D */ bl SetTevKAlphaSel__3CGXF13_GXTevStageID15_GXTevKAlphaSel +/* 8019DB74 0019AAD4 38 60 00 00 */ li r3, 0 +/* 8019DB78 0019AAD8 48 16 A0 D9 */ bl SetStandardTevColorAlphaOp__3CGXF13_GXTevStageID +/* 8019DB7C 0019AADC 38 60 00 01 */ li r3, 1 +/* 8019DB80 0019AAE0 48 16 A0 D1 */ bl SetStandardTevColorAlphaOp__3CGXF13_GXTevStageID +/* 8019DB84 0019AAE4 38 60 00 02 */ li r3, 2 +/* 8019DB88 0019AAE8 48 16 A0 C9 */ bl SetStandardTevColorAlphaOp__3CGXF13_GXTevStageID +/* 8019DB8C 0019AAEC C0 02 A7 20 */ lfs f0, lbl_805AC440@sda21(r2) +/* 8019DB90 0019AAF0 FC 00 F0 00 */ fcmpu cr0, f0, f30 +/* 8019DB94 0019AAF4 40 82 00 0C */ bne lbl_8019DBA0 +/* 8019DB98 0019AAF8 38 60 00 00 */ li r3, 0 +/* 8019DB9C 0019AAFC 48 00 00 08 */ b lbl_8019DBA4 +lbl_8019DBA0: +/* 8019DBA0 0019AB00 38 60 00 01 */ li r3, 1 +lbl_8019DBA4: +/* 8019DBA4 0019AB04 38 80 00 04 */ li r4, 4 +/* 8019DBA8 0019AB08 38 A0 00 05 */ li r5, 5 +/* 8019DBAC 0019AB0C 38 C0 00 00 */ li r6, 0 +/* 8019DBB0 0019AB10 48 16 AD 21 */ bl SetBlendMode__3CGXF12_GXBlendMode14_GXBlendFactor14_GXBlendFactor10_GXLogicOp +/* 8019DBB4 0019AB14 38 60 00 01 */ li r3, 1 +/* 8019DBB8 0019AB18 38 80 00 03 */ li r4, 3 +/* 8019DBBC 0019AB1C 38 A0 00 00 */ li r5, 0 +/* 8019DBC0 0019AB20 48 16 AC BD */ bl SetZMode__3CGXFb10_GXCompareb +/* 8019DBC4 0019AB24 38 60 00 07 */ li r3, 7 +/* 8019DBC8 0019AB28 38 80 00 00 */ li r4, 0 +/* 8019DBCC 0019AB2C 38 A0 00 00 */ li r5, 0 +/* 8019DBD0 0019AB30 38 C0 00 07 */ li r6, 7 +/* 8019DBD4 0019AB34 38 E0 00 00 */ li r7, 0 +/* 8019DBD8 0019AB38 48 16 AC 3D */ bl SetAlphaCompare__3CGXF10_GXCompareUc10_GXAlphaOp10_GXCompareUc +/* 8019DBDC 0019AB3C E3 E1 00 E8 */ psq_l f31, 232(r1), 0, qr0 +/* 8019DBE0 0019AB40 CB E1 00 E0 */ lfd f31, 0xe0(r1) +/* 8019DBE4 0019AB44 E3 C1 00 D8 */ psq_l f30, 216(r1), 0, qr0 +/* 8019DBE8 0019AB48 CB C1 00 D0 */ lfd f30, 0xd0(r1) +/* 8019DBEC 0019AB4C B9 E1 00 8C */ lmw r15, 0x8c(r1) +/* 8019DBF0 0019AB50 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 8019DBF4 0019AB54 7C 08 03 A6 */ mtlr r0 +/* 8019DBF8 0019AB58 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 8019DBFC 0019AB5C 4E 80 00 20 */ blr + +.global __dt__15CFluidPlaneDoorFv +__dt__15CFluidPlaneDoorFv: +/* 8019DC00 0019AB60 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8019DC04 0019AB64 7C 08 02 A6 */ mflr r0 +/* 8019DC08 0019AB68 90 01 00 14 */ stw r0, 0x14(r1) +/* 8019DC0C 0019AB6C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8019DC10 0019AB70 7C 9F 23 78 */ mr r31, r4 +/* 8019DC14 0019AB74 93 C1 00 08 */ stw r30, 8(r1) +/* 8019DC18 0019AB78 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8019DC1C 0019AB7C 41 82 00 28 */ beq lbl_8019DC44 +/* 8019DC20 0019AB80 3C A0 80 3E */ lis r5, lbl_803E46E8@ha +/* 8019DC24 0019AB84 38 80 00 00 */ li r4, 0 +/* 8019DC28 0019AB88 38 05 46 E8 */ addi r0, r5, lbl_803E46E8@l +/* 8019DC2C 0019AB8C 90 1E 00 00 */ stw r0, 0(r30) +/* 8019DC30 0019AB90 4B F9 0F AD */ bl __dt__11CFluidPlaneFv +/* 8019DC34 0019AB94 7F E0 07 35 */ extsh. r0, r31 +/* 8019DC38 0019AB98 40 81 00 0C */ ble lbl_8019DC44 +/* 8019DC3C 0019AB9C 7F C3 F3 78 */ mr r3, r30 +/* 8019DC40 0019ABA0 48 17 7C F1 */ bl Free__7CMemoryFPCv +lbl_8019DC44: +/* 8019DC44 0019ABA4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8019DC48 0019ABA8 7F C3 F3 78 */ mr r3, r30 +/* 8019DC4C 0019ABAC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8019DC50 0019ABB0 83 C1 00 08 */ lwz r30, 8(r1) +/* 8019DC54 0019ABB4 7C 08 03 A6 */ mtlr r0 +/* 8019DC58 0019ABB8 38 21 00 10 */ addi r1, r1, 0x10 +/* 8019DC5C 0019ABBC 4E 80 00 20 */ blr + +.global __ct__15CFluidPlaneDoorFUiUiUifUiQ211CFluidPlane10EFluidTypefRC14CFluidUVMotion +__ct__15CFluidPlaneDoorFUiUiUifUiQ211CFluidPlane10EFluidTypefRC14CFluidUVMotion: +/* 8019DC60 0019ABC0 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8019DC64 0019ABC4 7C 08 02 A6 */ mflr r0 +/* 8019DC68 0019ABC8 90 01 00 34 */ stw r0, 0x34(r1) +/* 8019DC6C 0019ABCC DB E1 00 20 */ stfd f31, 0x20(r1) +/* 8019DC70 0019ABD0 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 8019DC74 0019ABD4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8019DC78 0019ABD8 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8019DC7C 0019ABDC FC 00 10 90 */ fmr f0, f2 +/* 8019DC80 0019ABE0 7C FF 3B 78 */ mr r31, r7 +/* 8019DC84 0019ABE4 FF E0 08 90 */ fmr f31, f1 +/* 8019DC88 0019ABE8 7D 07 43 78 */ mr r7, r8 +/* 8019DC8C 0019ABEC C0 42 A7 30 */ lfs f2, lbl_805AC450@sda21(r2) +/* 8019DC90 0019ABF0 7C 7E 1B 78 */ mr r30, r3 +/* 8019DC94 0019ABF4 FC 20 00 90 */ fmr f1, f0 +/* 8019DC98 0019ABF8 7D 28 4B 78 */ mr r8, r9 +/* 8019DC9C 0019ABFC 4B F9 10 99 */ bl __ct__11CFluidPlaneFUiUiUifQ211CFluidPlane10EFluidTypefRC14CFluidUVMotion +/* 8019DCA0 0019AC00 3C 60 80 3E */ lis r3, lbl_803E46E8@ha +/* 8019DCA4 0019AC04 3C 00 43 30 */ lis r0, 0x4330 +/* 8019DCA8 0019AC08 38 63 46 E8 */ addi r3, r3, lbl_803E46E8@l +/* 8019DCAC 0019AC0C 57 E4 00 3C */ rlwinm r4, r31, 0, 0, 0x1e +/* 8019DCB0 0019AC10 90 7E 00 00 */ stw r3, 0(r30) +/* 8019DCB4 0019AC14 7F C3 F3 78 */ mr r3, r30 +/* 8019DCB8 0019AC18 C8 22 A7 28 */ lfd f1, lbl_805AC448@sda21(r2) +/* 8019DCBC 0019AC1C D3 FE 00 A0 */ stfs f31, 0xa0(r30) +/* 8019DCC0 0019AC20 90 9E 00 A4 */ stw r4, 0xa4(r30) +/* 8019DCC4 0019AC24 80 9E 00 A4 */ lwz r4, 0xa4(r30) +/* 8019DCC8 0019AC28 90 01 00 08 */ stw r0, 8(r1) +/* 8019DCCC 0019AC2C 6C 80 80 00 */ xoris r0, r4, 0x8000 +/* 8019DCD0 0019AC30 90 01 00 0C */ stw r0, 0xc(r1) +/* 8019DCD4 0019AC34 C8 01 00 08 */ lfd f0, 8(r1) +/* 8019DCD8 0019AC38 EC 00 08 28 */ fsubs f0, f0, f1 +/* 8019DCDC 0019AC3C EC 1F 00 24 */ fdivs f0, f31, f0 +/* 8019DCE0 0019AC40 D0 1E 00 A8 */ stfs f0, 0xa8(r30) +/* 8019DCE4 0019AC44 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 8019DCE8 0019AC48 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8019DCEC 0019AC4C CB E1 00 20 */ lfd f31, 0x20(r1) +/* 8019DCF0 0019AC50 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8019DCF4 0019AC54 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8019DCF8 0019AC58 7C 08 03 A6 */ mtlr r0 +/* 8019DCFC 0019AC5C 38 21 00 30 */ addi r1, r1, 0x30 +/* 8019DD00 0019AC60 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CGBASupport.s b/asm/Kyoto_CWD/CGBASupport.s new file mode 100644 index 00000000..04806bff --- /dev/null +++ b/asm/Kyoto_CWD/CGBASupport.s @@ -0,0 +1,591 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global PollResponse__11CGBASupportFv +PollResponse__11CGBASupportFv: +/* 802485D4 00245534 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 802485D8 00245538 7C 08 02 A6 */ mflr r0 +/* 802485DC 0024553C 90 01 00 34 */ stw r0, 0x34(r1) +/* 802485E0 00245540 38 81 00 08 */ addi r4, r1, 8 +/* 802485E4 00245544 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 802485E8 00245548 7C 7F 1B 78 */ mr r31, r3 +/* 802485EC 0024554C 93 C1 00 28 */ stw r30, 0x28(r1) +/* 802485F0 00245550 93 A1 00 24 */ stw r29, 0x24(r1) +/* 802485F4 00245554 93 81 00 20 */ stw r28, 0x20(r1) +/* 802485F8 00245558 80 63 00 40 */ lwz r3, 0x40(r3) +/* 802485FC 0024555C 48 18 12 4D */ bl GBAReset +/* 80248600 00245560 2C 03 00 01 */ cmpwi r3, 1 +/* 80248604 00245564 40 82 00 20 */ bne lbl_80248624 +/* 80248608 00245568 80 7F 00 40 */ lwz r3, 0x40(r31) +/* 8024860C 0024556C 38 81 00 08 */ addi r4, r1, 8 +/* 80248610 00245570 48 18 12 39 */ bl GBAReset +/* 80248614 00245574 2C 03 00 01 */ cmpwi r3, 1 +/* 80248618 00245578 40 82 00 0C */ bne lbl_80248624 +/* 8024861C 0024557C 38 60 00 00 */ li r3, 0 +/* 80248620 00245580 48 00 02 D8 */ b lbl_802488F8 +lbl_80248624: +/* 80248624 00245584 80 7F 00 40 */ lwz r3, 0x40(r31) +/* 80248628 00245588 38 81 00 08 */ addi r4, r1, 8 +/* 8024862C 0024558C 48 18 11 29 */ bl GBAGetStatus +/* 80248630 00245590 2C 03 00 01 */ cmpwi r3, 1 +/* 80248634 00245594 40 82 00 0C */ bne lbl_80248640 +/* 80248638 00245598 38 60 00 00 */ li r3, 0 +/* 8024863C 0024559C 48 00 02 BC */ b lbl_802488F8 +lbl_80248640: +/* 80248640 002455A0 88 01 00 08 */ lbz r0, 8(r1) +/* 80248644 002455A4 28 00 00 28 */ cmplwi r0, 0x28 +/* 80248648 002455A8 41 82 00 0C */ beq lbl_80248654 +/* 8024864C 002455AC 38 60 00 00 */ li r3, 0 +/* 80248650 002455B0 48 00 02 A8 */ b lbl_802488F8 +lbl_80248654: +/* 80248654 002455B4 80 7F 00 40 */ lwz r3, 0x40(r31) +/* 80248658 002455B8 38 81 00 14 */ addi r4, r1, 0x14 +/* 8024865C 002455BC 38 A1 00 08 */ addi r5, r1, 8 +/* 80248660 002455C0 48 18 23 8D */ bl GBARead +/* 80248664 002455C4 2C 03 00 01 */ cmpwi r3, 1 +/* 80248668 002455C8 40 82 00 0C */ bne lbl_80248674 +/* 8024866C 002455CC 38 60 00 00 */ li r3, 0 +/* 80248670 002455D0 48 00 02 88 */ b lbl_802488F8 +lbl_80248674: +/* 80248674 002455D4 80 61 00 14 */ lwz r3, 0x14(r1) +/* 80248678 002455D8 3C 03 BE B3 */ addis r0, r3, 0xbeb3 +/* 8024867C 002455DC 28 00 54 45 */ cmplwi r0, 0x5445 +/* 80248680 002455E0 41 82 00 0C */ beq lbl_8024868C +/* 80248684 002455E4 38 60 00 00 */ li r3, 0 +/* 80248688 002455E8 48 00 02 70 */ b lbl_802488F8 +lbl_8024868C: +/* 8024868C 002455EC 80 7F 00 40 */ lwz r3, 0x40(r31) +/* 80248690 002455F0 38 81 00 08 */ addi r4, r1, 8 +/* 80248694 002455F4 48 18 10 C1 */ bl GBAGetStatus +/* 80248698 002455F8 2C 03 00 01 */ cmpwi r3, 1 +/* 8024869C 002455FC 40 82 00 0C */ bne lbl_802486A8 +/* 802486A0 00245600 38 60 00 00 */ li r3, 0 +/* 802486A4 00245604 48 00 02 54 */ b lbl_802488F8 +lbl_802486A8: +/* 802486A8 00245608 88 01 00 08 */ lbz r0, 8(r1) +/* 802486AC 0024560C 28 00 00 20 */ cmplwi r0, 0x20 +/* 802486B0 00245610 41 82 00 0C */ beq lbl_802486BC +/* 802486B4 00245614 38 60 00 00 */ li r3, 0 +/* 802486B8 00245618 48 00 02 40 */ b lbl_802488F8 +lbl_802486BC: +/* 802486BC 0024561C 80 7F 00 40 */ lwz r3, 0x40(r31) +/* 802486C0 00245620 38 A1 00 08 */ addi r5, r1, 8 +/* 802486C4 00245624 38 82 B8 78 */ addi r4, r2, lbl_805AD598@sda21 +/* 802486C8 00245628 48 18 24 7D */ bl GBAWrite +/* 802486CC 0024562C 2C 03 00 01 */ cmpwi r3, 1 +/* 802486D0 00245630 40 82 00 0C */ bne lbl_802486DC +/* 802486D4 00245634 38 60 00 00 */ li r3, 0 +/* 802486D8 00245638 48 00 02 20 */ b lbl_802488F8 +lbl_802486DC: +/* 802486DC 0024563C 80 7F 00 40 */ lwz r3, 0x40(r31) +/* 802486E0 00245640 38 81 00 08 */ addi r4, r1, 8 +/* 802486E4 00245644 48 18 10 71 */ bl GBAGetStatus +/* 802486E8 00245648 2C 03 00 01 */ cmpwi r3, 1 +/* 802486EC 0024564C 40 82 00 0C */ bne lbl_802486F8 +/* 802486F0 00245650 38 60 00 00 */ li r3, 0 +/* 802486F4 00245654 48 00 02 04 */ b lbl_802488F8 +lbl_802486F8: +/* 802486F8 00245658 88 01 00 08 */ lbz r0, 8(r1) +/* 802486FC 0024565C 54 00 06 B6 */ rlwinm r0, r0, 0, 0x1a, 0x1b +/* 80248700 00245660 2C 00 00 30 */ cmpwi r0, 0x30 +/* 80248704 00245664 41 82 00 0C */ beq lbl_80248710 +/* 80248708 00245668 38 60 00 00 */ li r3, 0 +/* 8024870C 0024566C 48 00 01 EC */ b lbl_802488F8 +lbl_80248710: +/* 80248710 00245670 48 13 CC B1 */ bl OSGetTick +/* 80248714 00245674 3C 80 43 1C */ lis r4, 0x431BDE83@ha +/* 80248718 00245678 7C 7C 1B 78 */ mr r28, r3 +/* 8024871C 0024567C 3B A4 DE 83 */ addi r29, r4, 0x431BDE83@l +/* 80248720 00245680 3F C0 80 00 */ lis r30, 0x8000 +lbl_80248724: +/* 80248724 00245684 48 13 CC 9D */ bl OSGetTick +/* 80248728 00245688 80 1E 00 F8 */ lwz r0, 0xf8(r30) +/* 8024872C 0024568C 7C 7C 18 50 */ subf r3, r28, r3 +/* 80248730 00245690 54 63 18 38 */ slwi r3, r3, 3 +/* 80248734 00245694 54 00 F0 BE */ srwi r0, r0, 2 +/* 80248738 00245698 7C 1D 00 16 */ mulhwu r0, r29, r0 +/* 8024873C 0024569C 54 00 8B FE */ srwi r0, r0, 0xf +/* 80248740 002456A0 7C 03 03 96 */ divwu r0, r3, r0 +/* 80248744 002456A4 28 00 01 F4 */ cmplwi r0, 0x1f4 +/* 80248748 002456A8 41 81 01 AC */ bgt lbl_802488F4 +/* 8024874C 002456AC 80 7F 00 40 */ lwz r3, 0x40(r31) +/* 80248750 002456B0 38 81 00 08 */ addi r4, r1, 8 +/* 80248754 002456B4 48 18 10 01 */ bl GBAGetStatus +/* 80248758 002456B8 2C 03 00 01 */ cmpwi r3, 1 +/* 8024875C 002456BC 41 82 FF C8 */ beq lbl_80248724 +/* 80248760 002456C0 88 01 00 08 */ lbz r0, 8(r1) +/* 80248764 002456C4 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c +/* 80248768 002456C8 41 82 FF BC */ beq lbl_80248724 +/* 8024876C 002456CC 80 7F 00 40 */ lwz r3, 0x40(r31) +/* 80248770 002456D0 38 81 00 08 */ addi r4, r1, 8 +/* 80248774 002456D4 48 18 0F E1 */ bl GBAGetStatus +/* 80248778 002456D8 2C 03 00 00 */ cmpwi r3, 0 +/* 8024877C 002456DC 40 82 FF A8 */ bne lbl_80248724 +/* 80248780 002456E0 88 01 00 08 */ lbz r0, 8(r1) +/* 80248784 002456E4 28 00 00 38 */ cmplwi r0, 0x38 +/* 80248788 002456E8 40 82 FF 9C */ bne lbl_80248724 +/* 8024878C 002456EC 80 7F 00 40 */ lwz r3, 0x40(r31) +/* 80248790 002456F0 38 81 00 10 */ addi r4, r1, 0x10 +/* 80248794 002456F4 38 A1 00 08 */ addi r5, r1, 8 +/* 80248798 002456F8 48 18 22 55 */ bl GBARead +/* 8024879C 002456FC 2C 03 00 00 */ cmpwi r3, 0 +/* 802487A0 00245700 41 82 00 0C */ beq lbl_802487AC +/* 802487A4 00245704 38 60 00 00 */ li r3, 0 +/* 802487A8 00245708 48 00 01 50 */ b lbl_802488F8 +lbl_802487AC: +/* 802487AC 0024570C 81 01 00 10 */ lwz r8, 0x10(r1) +/* 802487B0 00245710 38 C1 00 0C */ addi r6, r1, 0xc +/* 802487B4 00245714 38 E0 00 03 */ li r7, 3 +/* 802487B8 00245718 38 A0 FF FF */ li r5, -1 +/* 802487BC 0024571C 55 04 46 3E */ srwi r4, r8, 0x18 +/* 802487C0 00245720 55 03 86 3E */ rlwinm r3, r8, 0x10, 0x18, 0x1f +/* 802487C4 00245724 55 00 C6 3E */ rlwinm r0, r8, 0x18, 0x18, 0x1f +/* 802487C8 00245728 98 81 00 0C */ stb r4, 0xc(r1) +/* 802487CC 0024572C 98 61 00 0D */ stb r3, 0xd(r1) +/* 802487D0 00245730 98 01 00 0E */ stb r0, 0xe(r1) +/* 802487D4 00245734 99 01 00 0F */ stb r8, 0xf(r1) +lbl_802487D8: +/* 802487D8 00245738 88 06 00 00 */ lbz r0, 0(r6) +/* 802487DC 0024573C 38 C6 00 01 */ addi r6, r6, 1 +/* 802487E0 00245740 7C A5 02 78 */ xor r5, r5, r0 +/* 802487E4 00245744 54 A0 07 FF */ clrlwi. r0, r5, 0x1f +/* 802487E8 00245748 41 82 00 10 */ beq lbl_802487F8 +/* 802487EC 0024574C 54 A5 F8 7E */ srwi r5, r5, 1 +/* 802487F0 00245750 68 A5 B0 10 */ xori r5, r5, 0xb010 +/* 802487F4 00245754 48 00 00 08 */ b lbl_802487FC +lbl_802487F8: +/* 802487F8 00245758 54 A5 F8 7E */ srwi r5, r5, 1 +lbl_802487FC: +/* 802487FC 0024575C 54 A0 07 FF */ clrlwi. r0, r5, 0x1f +/* 80248800 00245760 41 82 00 10 */ beq lbl_80248810 +/* 80248804 00245764 54 A5 F8 7E */ srwi r5, r5, 1 +/* 80248808 00245768 68 A5 B0 10 */ xori r5, r5, 0xb010 +/* 8024880C 0024576C 48 00 00 08 */ b lbl_80248814 +lbl_80248810: +/* 80248810 00245770 54 A5 F8 7E */ srwi r5, r5, 1 +lbl_80248814: +/* 80248814 00245774 54 A0 07 FF */ clrlwi. r0, r5, 0x1f +/* 80248818 00245778 41 82 00 10 */ beq lbl_80248828 +/* 8024881C 0024577C 54 A5 F8 7E */ srwi r5, r5, 1 +/* 80248820 00245780 68 A5 B0 10 */ xori r5, r5, 0xb010 +/* 80248824 00245784 48 00 00 08 */ b lbl_8024882C +lbl_80248828: +/* 80248828 00245788 54 A5 F8 7E */ srwi r5, r5, 1 +lbl_8024882C: +/* 8024882C 0024578C 54 A0 07 FF */ clrlwi. r0, r5, 0x1f +/* 80248830 00245790 41 82 00 10 */ beq lbl_80248840 +/* 80248834 00245794 54 A5 F8 7E */ srwi r5, r5, 1 +/* 80248838 00245798 68 A5 B0 10 */ xori r5, r5, 0xb010 +/* 8024883C 0024579C 48 00 00 08 */ b lbl_80248844 +lbl_80248840: +/* 80248840 002457A0 54 A5 F8 7E */ srwi r5, r5, 1 +lbl_80248844: +/* 80248844 002457A4 54 A0 07 FF */ clrlwi. r0, r5, 0x1f +/* 80248848 002457A8 41 82 00 10 */ beq lbl_80248858 +/* 8024884C 002457AC 54 A5 F8 7E */ srwi r5, r5, 1 +/* 80248850 002457B0 68 A5 B0 10 */ xori r5, r5, 0xb010 +/* 80248854 002457B4 48 00 00 08 */ b lbl_8024885C +lbl_80248858: +/* 80248858 002457B8 54 A5 F8 7E */ srwi r5, r5, 1 +lbl_8024885C: +/* 8024885C 002457BC 54 A0 07 FF */ clrlwi. r0, r5, 0x1f +/* 80248860 002457C0 41 82 00 10 */ beq lbl_80248870 +/* 80248864 002457C4 54 A5 F8 7E */ srwi r5, r5, 1 +/* 80248868 002457C8 68 A5 B0 10 */ xori r5, r5, 0xb010 +/* 8024886C 002457CC 48 00 00 08 */ b lbl_80248874 +lbl_80248870: +/* 80248870 002457D0 54 A5 F8 7E */ srwi r5, r5, 1 +lbl_80248874: +/* 80248874 002457D4 54 A0 07 FF */ clrlwi. r0, r5, 0x1f +/* 80248878 002457D8 41 82 00 10 */ beq lbl_80248888 +/* 8024887C 002457DC 54 A5 F8 7E */ srwi r5, r5, 1 +/* 80248880 002457E0 68 A5 B0 10 */ xori r5, r5, 0xb010 +/* 80248884 002457E4 48 00 00 08 */ b lbl_8024888C +lbl_80248888: +/* 80248888 002457E8 54 A5 F8 7E */ srwi r5, r5, 1 +lbl_8024888C: +/* 8024888C 002457EC 54 A0 07 FF */ clrlwi. r0, r5, 0x1f +/* 80248890 002457F0 41 82 00 10 */ beq lbl_802488A0 +/* 80248894 002457F4 54 A5 F8 7E */ srwi r5, r5, 1 +/* 80248898 002457F8 68 A5 B0 10 */ xori r5, r5, 0xb010 +/* 8024889C 002457FC 48 00 00 08 */ b lbl_802488A4 +lbl_802488A0: +/* 802488A0 00245800 54 A5 F8 7E */ srwi r5, r5, 1 +lbl_802488A4: +/* 802488A4 00245804 34 E7 FF FF */ addic. r7, r7, -1 +/* 802488A8 00245808 40 82 FF 30 */ bne lbl_802487D8 +/* 802488AC 0024580C 88 61 00 0F */ lbz r3, 0xf(r1) +/* 802488B0 00245810 54 A0 06 3E */ clrlwi r0, r5, 0x18 +/* 802488B4 00245814 7C 03 00 40 */ cmplw r3, r0 +/* 802488B8 00245818 41 82 00 0C */ beq lbl_802488C4 +/* 802488BC 0024581C 38 60 00 00 */ li r3, 0 +/* 802488C0 00245820 48 00 00 38 */ b lbl_802488F8 +lbl_802488C4: +/* 802488C4 00245824 88 81 00 0E */ lbz r4, 0xe(r1) +/* 802488C8 00245828 38 60 00 00 */ li r3, 0 +/* 802488CC 0024582C 54 80 FF FE */ rlwinm r0, r4, 0x1f, 0x1f, 0x1f +/* 802488D0 00245830 68 00 00 01 */ xori r0, r0, 1 +/* 802488D4 00245834 98 1F 00 44 */ stb r0, 0x44(r31) +/* 802488D8 00245838 88 1F 00 44 */ lbz r0, 0x44(r31) +/* 802488DC 0024583C 28 00 00 00 */ cmplwi r0, 0 +/* 802488E0 00245840 41 82 00 10 */ beq lbl_802488F0 +/* 802488E4 00245844 54 80 07 FF */ clrlwi. r0, r4, 0x1f +/* 802488E8 00245848 40 81 00 08 */ ble lbl_802488F0 +/* 802488EC 0024584C 38 60 00 01 */ li r3, 1 +lbl_802488F0: +/* 802488F0 00245850 98 7F 00 45 */ stb r3, 0x45(r31) +lbl_802488F4: +/* 802488F4 00245854 38 60 00 01 */ li r3, 1 +lbl_802488F8: +/* 802488F8 00245858 80 01 00 34 */ lwz r0, 0x34(r1) +/* 802488FC 0024585C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80248900 00245860 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80248904 00245864 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 80248908 00245868 83 81 00 20 */ lwz r28, 0x20(r1) +/* 8024890C 0024586C 7C 08 03 A6 */ mtlr r0 +/* 80248910 00245870 38 21 00 30 */ addi r1, r1, 0x30 +/* 80248914 00245874 4E 80 00 20 */ blr + +.global Update__11CGBASupportFv +Update__11CGBASupportFv: +/* 80248918 00245878 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8024891C 0024587C 7C 08 02 A6 */ mflr r0 +/* 80248920 00245880 90 01 00 34 */ stw r0, 0x34(r1) +/* 80248924 00245884 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 80248928 00245888 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 8024892C 0024588C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80248930 00245890 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80248934 00245894 7C 7F 1B 78 */ mr r31, r3 +/* 80248938 00245898 FF E0 08 90 */ fmr f31, f1 +/* 8024893C 0024589C 80 A3 00 34 */ lwz r5, 0x34(r3) +/* 80248940 002458A0 28 05 00 08 */ cmplwi r5, 8 +/* 80248944 002458A4 41 81 02 10 */ bgt lbl_80248B54 +/* 80248948 002458A8 3C 80 80 3F */ lis r4, lbl_803E8C18@ha +/* 8024894C 002458AC 54 A0 10 3A */ slwi r0, r5, 2 +/* 80248950 002458B0 38 84 8C 18 */ addi r4, r4, lbl_803E8C18@l +/* 80248954 002458B4 7C 04 00 2E */ lwzx r0, r4, r0 +/* 80248958 002458B8 7C 09 03 A6 */ mtctr r0 +/* 8024895C 002458BC 4E 80 04 20 */ bctr +/* 80248960 002458C0 2C 05 00 00 */ cmpwi r5, 0 +/* 80248964 002458C4 40 82 01 F0 */ bne lbl_80248B54 +/* 80248968 002458C8 80 7F 00 30 */ lwz r3, 0x30(r31) +/* 8024896C 002458CC 81 83 00 00 */ lwz r12, 0(r3) +/* 80248970 002458D0 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 80248974 002458D4 7D 89 03 A6 */ mtctr r12 +/* 80248978 002458D8 4E 80 04 21 */ bctrl +/* 8024897C 002458DC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80248980 002458E0 41 82 01 D4 */ beq lbl_80248B54 +/* 80248984 002458E4 80 7F 00 30 */ lwz r3, 0x30(r31) +/* 80248988 002458E8 28 03 00 00 */ cmplwi r3, 0 +/* 8024898C 002458EC 41 82 00 18 */ beq lbl_802489A4 +/* 80248990 002458F0 81 83 00 00 */ lwz r12, 0(r3) +/* 80248994 002458F4 38 80 00 01 */ li r4, 1 +/* 80248998 002458F8 81 8C 00 08 */ lwz r12, 8(r12) +/* 8024899C 002458FC 7D 89 03 A6 */ mtctr r12 +/* 802489A0 00245900 4E 80 04 21 */ bctrl +lbl_802489A4: +/* 802489A4 00245904 38 60 00 00 */ li r3, 0 +/* 802489A8 00245908 38 00 00 01 */ li r0, 1 +/* 802489AC 0024590C 90 7F 00 30 */ stw r3, 0x30(r31) +/* 802489B0 00245910 90 1F 00 34 */ stw r0, 0x34(r31) +/* 802489B4 00245914 83 FF 00 2C */ lwz r31, 0x2c(r31) +/* 802489B8 00245918 48 13 CA 09 */ bl OSGetTick +/* 802489BC 0024591C 98 7F 00 C8 */ stb r3, 0xc8(r31) +/* 802489C0 00245920 54 60 C6 3E */ rlwinm r0, r3, 0x18, 0x18, 0x1f +/* 802489C4 00245924 54 65 86 3E */ rlwinm r5, r3, 0x10, 0x18, 0x1f +/* 802489C8 00245928 54 64 46 3E */ srwi r4, r3, 0x18 +/* 802489CC 0024592C 98 1F 00 C9 */ stb r0, 0xc9(r31) +/* 802489D0 00245930 38 60 00 45 */ li r3, 0x45 +/* 802489D4 00245934 38 00 00 C9 */ li r0, 0xc9 +/* 802489D8 00245938 98 BF 00 CA */ stb r5, 0xca(r31) +/* 802489DC 0024593C 98 9F 00 CB */ stb r4, 0xcb(r31) +/* 802489E0 00245940 98 7F 00 AF */ stb r3, 0xaf(r31) +/* 802489E4 00245944 98 1F 00 BD */ stb r0, 0xbd(r31) +/* 802489E8 00245948 48 00 01 6C */ b lbl_80248B54 +/* 802489EC 0024594C C0 02 B8 7C */ lfs f0, lbl_805AD59C@sda21(r2) +/* 802489F0 00245950 38 00 00 03 */ li r0, 3 +/* 802489F4 00245954 D0 1F 00 38 */ stfs f0, 0x38(r31) +/* 802489F8 00245958 90 1F 00 34 */ stw r0, 0x34(r31) +/* 802489FC 0024595C 3B C0 00 01 */ li r30, 1 +lbl_80248A00: +/* 80248A00 00245960 7F C3 F3 78 */ mr r3, r30 +/* 80248A04 00245964 48 17 74 E5 */ bl SIProbe +/* 80248A08 00245968 3C 03 FF FC */ addis r0, r3, 0xfffc +/* 80248A0C 0024596C 28 00 00 00 */ cmplwi r0, 0 +/* 80248A10 00245970 40 82 00 1C */ bne lbl_80248A2C +/* 80248A14 00245974 93 DF 00 40 */ stw r30, 0x40(r31) +/* 80248A18 00245978 38 00 00 04 */ li r0, 4 +/* 80248A1C 0024597C C0 02 B8 7C */ lfs f0, lbl_805AD59C@sda21(r2) +/* 80248A20 00245980 90 1F 00 34 */ stw r0, 0x34(r31) +/* 80248A24 00245984 D0 1F 00 38 */ stfs f0, 0x38(r31) +/* 80248A28 00245988 48 00 01 2C */ b lbl_80248B54 +lbl_80248A2C: +/* 80248A2C 0024598C 3B DE 00 01 */ addi r30, r30, 1 +/* 80248A30 00245990 2C 1E 00 04 */ cmpwi r30, 4 +/* 80248A34 00245994 41 80 FF CC */ blt lbl_80248A00 +/* 80248A38 00245998 C0 3F 00 38 */ lfs f1, 0x38(r31) +/* 80248A3C 0024599C C0 0D 96 F8 */ lfs f0, lbl_805A82B8@sda21(r13) +/* 80248A40 002459A0 EC 21 F8 28 */ fsubs f1, f1, f31 +/* 80248A44 002459A4 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80248A48 002459A8 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 80248A4C 002459AC 40 80 00 0C */ bge lbl_80248A58 +/* 80248A50 002459B0 38 61 00 0C */ addi r3, r1, 0xc +/* 80248A54 002459B4 48 00 00 08 */ b lbl_80248A5C +lbl_80248A58: +/* 80248A58 002459B8 38 6D 96 F8 */ addi r3, r13, lbl_805A82B8@sda21 +lbl_80248A5C: +/* 80248A5C 002459BC C0 03 00 00 */ lfs f0, 0(r3) +/* 80248A60 002459C0 C0 22 B8 80 */ lfs f1, lbl_805AD5A0@sda21(r2) +/* 80248A64 002459C4 D0 1F 00 38 */ stfs f0, 0x38(r31) +/* 80248A68 002459C8 C0 1F 00 38 */ lfs f0, 0x38(r31) +/* 80248A6C 002459CC FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 80248A70 002459D0 40 82 00 E4 */ bne lbl_80248B54 +/* 80248A74 002459D4 38 00 00 08 */ li r0, 8 +/* 80248A78 002459D8 90 1F 00 34 */ stw r0, 0x34(r31) +/* 80248A7C 002459DC 48 00 00 D8 */ b lbl_80248B54 +/* 80248A80 002459E0 38 00 00 05 */ li r0, 5 +/* 80248A84 002459E4 3C 60 80 25 */ lis r3, nullsub_130@ha +/* 80248A88 002459E8 90 1F 00 34 */ stw r0, 0x34(r31) +/* 80248A8C 002459EC 39 23 8D D8 */ addi r9, r3, nullsub_130@l +/* 80248A90 002459F0 39 1F 00 3C */ addi r8, r31, 0x3c +/* 80248A94 002459F4 38 A0 00 02 */ li r5, 2 +/* 80248A98 002459F8 80 7F 00 40 */ lwz r3, 0x40(r31) +/* 80248A9C 002459FC 80 DF 00 2C */ lwz r6, 0x2c(r31) +/* 80248AA0 00245A00 80 FF 00 14 */ lwz r7, 0x14(r31) +/* 80248AA4 00245A04 54 64 08 3C */ slwi r4, r3, 1 +/* 80248AA8 00245A08 48 18 0F B5 */ bl GBAJoyBootAsync +/* 80248AAC 00245A0C 48 00 00 A8 */ b lbl_80248B54 +/* 80248AB0 00245A10 80 7F 00 40 */ lwz r3, 0x40(r31) +/* 80248AB4 00245A14 38 9F 00 3C */ addi r4, r31, 0x3c +/* 80248AB8 00245A18 48 18 0E 31 */ bl GBAGetProcessStatus +/* 80248ABC 00245A1C 2C 03 00 02 */ cmpwi r3, 2 +/* 80248AC0 00245A20 41 82 00 94 */ beq lbl_80248B54 +/* 80248AC4 00245A24 80 7F 00 40 */ lwz r3, 0x40(r31) +/* 80248AC8 00245A28 38 9F 00 3C */ addi r4, r31, 0x3c +/* 80248ACC 00245A2C 48 18 0C 89 */ bl GBAGetStatus +/* 80248AD0 00245A30 2C 03 00 01 */ cmpwi r3, 1 +/* 80248AD4 00245A34 40 82 00 10 */ bne lbl_80248AE4 +/* 80248AD8 00245A38 38 00 00 08 */ li r0, 8 +/* 80248ADC 00245A3C 90 1F 00 34 */ stw r0, 0x34(r31) +/* 80248AE0 00245A40 48 00 00 74 */ b lbl_80248B54 +lbl_80248AE4: +/* 80248AE4 00245A44 C0 02 B8 7C */ lfs f0, lbl_805AD59C@sda21(r2) +/* 80248AE8 00245A48 38 00 00 06 */ li r0, 6 +/* 80248AEC 00245A4C D0 1F 00 38 */ stfs f0, 0x38(r31) +/* 80248AF0 00245A50 90 1F 00 34 */ stw r0, 0x34(r31) +/* 80248AF4 00245A54 48 00 00 60 */ b lbl_80248B54 +/* 80248AF8 00245A58 4B FF FA DD */ bl PollResponse__11CGBASupportFv +/* 80248AFC 00245A5C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80248B00 00245A60 41 82 00 10 */ beq lbl_80248B10 +/* 80248B04 00245A64 38 00 00 07 */ li r0, 7 +/* 80248B08 00245A68 90 1F 00 34 */ stw r0, 0x34(r31) +/* 80248B0C 00245A6C 48 00 00 48 */ b lbl_80248B54 +lbl_80248B10: +/* 80248B10 00245A70 C0 3F 00 38 */ lfs f1, 0x38(r31) +/* 80248B14 00245A74 C0 0D 96 FC */ lfs f0, lbl_805A82BC@sda21(r13) +/* 80248B18 00245A78 EC 21 F8 28 */ fsubs f1, f1, f31 +/* 80248B1C 00245A7C FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80248B20 00245A80 D0 21 00 08 */ stfs f1, 8(r1) +/* 80248B24 00245A84 40 80 00 0C */ bge lbl_80248B30 +/* 80248B28 00245A88 38 61 00 08 */ addi r3, r1, 8 +/* 80248B2C 00245A8C 48 00 00 08 */ b lbl_80248B34 +lbl_80248B30: +/* 80248B30 00245A90 38 6D 96 FC */ addi r3, r13, lbl_805A82BC@sda21 +lbl_80248B34: +/* 80248B34 00245A94 C0 03 00 00 */ lfs f0, 0(r3) +/* 80248B38 00245A98 C0 22 B8 80 */ lfs f1, lbl_805AD5A0@sda21(r2) +/* 80248B3C 00245A9C D0 1F 00 38 */ stfs f0, 0x38(r31) +/* 80248B40 00245AA0 C0 1F 00 38 */ lfs f0, 0x38(r31) +/* 80248B44 00245AA4 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 80248B48 00245AA8 40 82 00 0C */ bne lbl_80248B54 +/* 80248B4C 00245AAC 38 00 00 08 */ li r0, 8 +/* 80248B50 00245AB0 90 1F 00 34 */ stw r0, 0x34(r31) +lbl_80248B54: +/* 80248B54 00245AB4 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 80248B58 00245AB8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80248B5C 00245ABC CB E1 00 20 */ lfd f31, 0x20(r1) +/* 80248B60 00245AC0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80248B64 00245AC4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80248B68 00245AC8 7C 08 03 A6 */ mtlr r0 +/* 80248B6C 00245ACC 38 21 00 30 */ addi r1, r1, 0x30 +/* 80248B70 00245AD0 4E 80 00 20 */ blr + +.global IsReady__11CGBASupportFv +IsReady__11CGBASupportFv: +/* 80248B74 00245AD4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80248B78 00245AD8 7C 08 02 A6 */ mflr r0 +/* 80248B7C 00245ADC 90 01 00 14 */ stw r0, 0x14(r1) +/* 80248B80 00245AE0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80248B84 00245AE4 7C 7F 1B 78 */ mr r31, r3 +/* 80248B88 00245AE8 80 03 00 34 */ lwz r0, 0x34(r3) +/* 80248B8C 00245AEC 2C 00 00 00 */ cmpwi r0, 0 +/* 80248B90 00245AF0 41 82 00 0C */ beq lbl_80248B9C +/* 80248B94 00245AF4 38 60 00 01 */ li r3, 1 +/* 80248B98 00245AF8 48 00 00 90 */ b lbl_80248C28 +lbl_80248B9C: +/* 80248B9C 00245AFC 80 7F 00 30 */ lwz r3, 0x30(r31) +/* 80248BA0 00245B00 81 83 00 00 */ lwz r12, 0(r3) +/* 80248BA4 00245B04 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 80248BA8 00245B08 7D 89 03 A6 */ mtctr r12 +/* 80248BAC 00245B0C 4E 80 04 21 */ bctrl +/* 80248BB0 00245B10 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80248BB4 00245B14 41 82 00 70 */ beq lbl_80248C24 +/* 80248BB8 00245B18 80 7F 00 30 */ lwz r3, 0x30(r31) +/* 80248BBC 00245B1C 28 03 00 00 */ cmplwi r3, 0 +/* 80248BC0 00245B20 41 82 00 18 */ beq lbl_80248BD8 +/* 80248BC4 00245B24 81 83 00 00 */ lwz r12, 0(r3) +/* 80248BC8 00245B28 38 80 00 01 */ li r4, 1 +/* 80248BCC 00245B2C 81 8C 00 08 */ lwz r12, 8(r12) +/* 80248BD0 00245B30 7D 89 03 A6 */ mtctr r12 +/* 80248BD4 00245B34 4E 80 04 21 */ bctrl +lbl_80248BD8: +/* 80248BD8 00245B38 38 60 00 00 */ li r3, 0 +/* 80248BDC 00245B3C 38 00 00 01 */ li r0, 1 +/* 80248BE0 00245B40 90 7F 00 30 */ stw r3, 0x30(r31) +/* 80248BE4 00245B44 90 1F 00 34 */ stw r0, 0x34(r31) +/* 80248BE8 00245B48 83 FF 00 2C */ lwz r31, 0x2c(r31) +/* 80248BEC 00245B4C 48 13 C7 D5 */ bl OSGetTick +/* 80248BF0 00245B50 98 7F 00 C8 */ stb r3, 0xc8(r31) +/* 80248BF4 00245B54 54 60 C6 3E */ rlwinm r0, r3, 0x18, 0x18, 0x1f +/* 80248BF8 00245B58 54 66 86 3E */ rlwinm r6, r3, 0x10, 0x18, 0x1f +/* 80248BFC 00245B5C 54 65 46 3E */ srwi r5, r3, 0x18 +/* 80248C00 00245B60 98 1F 00 C9 */ stb r0, 0xc9(r31) +/* 80248C04 00245B64 38 80 00 45 */ li r4, 0x45 +/* 80248C08 00245B68 38 00 00 C9 */ li r0, 0xc9 +/* 80248C0C 00245B6C 38 60 00 01 */ li r3, 1 +/* 80248C10 00245B70 98 DF 00 CA */ stb r6, 0xca(r31) +/* 80248C14 00245B74 98 BF 00 CB */ stb r5, 0xcb(r31) +/* 80248C18 00245B78 98 9F 00 AF */ stb r4, 0xaf(r31) +/* 80248C1C 00245B7C 98 1F 00 BD */ stb r0, 0xbd(r31) +/* 80248C20 00245B80 48 00 00 08 */ b lbl_80248C28 +lbl_80248C24: +/* 80248C24 00245B84 38 60 00 00 */ li r3, 0 +lbl_80248C28: +/* 80248C28 00245B88 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80248C2C 00245B8C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80248C30 00245B90 7C 08 03 A6 */ mtlr r0 +/* 80248C34 00245B94 38 21 00 10 */ addi r1, r1, 0x10 +/* 80248C38 00245B98 4E 80 00 20 */ blr + +.global StartLink__11CGBASupportFv +StartLink__11CGBASupportFv: +/* 80248C3C 00245B9C 38 80 00 02 */ li r4, 2 +/* 80248C40 00245BA0 38 00 FF FF */ li r0, -1 +/* 80248C44 00245BA4 90 83 00 34 */ stw r4, 0x34(r3) +/* 80248C48 00245BA8 90 03 00 40 */ stw r0, 0x40(r3) +/* 80248C4C 00245BAC 4E 80 00 20 */ blr + +.global InitializeSupport__11CGBASupportFv +InitializeSupport__11CGBASupportFv: +/* 80248C50 00245BB0 38 00 00 01 */ li r0, 1 +/* 80248C54 00245BB4 C0 02 B8 80 */ lfs f0, lbl_805AD5A0@sda21(r2) +/* 80248C58 00245BB8 90 03 00 34 */ stw r0, 0x34(r3) +/* 80248C5C 00245BBC 38 80 00 00 */ li r4, 0 +/* 80248C60 00245BC0 38 00 FF FF */ li r0, -1 +/* 80248C64 00245BC4 D0 03 00 38 */ stfs f0, 0x38(r3) +/* 80248C68 00245BC8 98 83 00 3C */ stb r4, 0x3c(r3) +/* 80248C6C 00245BCC 90 03 00 40 */ stw r0, 0x40(r3) +/* 80248C70 00245BD0 98 83 00 44 */ stb r4, 0x44(r3) +/* 80248C74 00245BD4 98 83 00 45 */ stb r4, 0x45(r3) +/* 80248C78 00245BD8 4E 80 00 20 */ blr + +.global __dt__11CGBASupportFv +__dt__11CGBASupportFv: +/* 80248C7C 00245BDC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80248C80 00245BE0 7C 08 02 A6 */ mflr r0 +/* 80248C84 00245BE4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80248C88 00245BE8 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80248C8C 00245BEC 7C 9F 23 78 */ mr r31, r4 +/* 80248C90 00245BF0 93 C1 00 08 */ stw r30, 8(r1) +/* 80248C94 00245BF4 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80248C98 00245BF8 41 82 00 60 */ beq lbl_80248CF8 +/* 80248C9C 00245BFC 38 60 00 00 */ li r3, 0 +/* 80248CA0 00245C00 34 1E 00 30 */ addic. r0, r30, 0x30 +/* 80248CA4 00245C04 90 6D A5 50 */ stw r3, lbl_805A9110@sda21(r13) +/* 80248CA8 00245C08 41 82 00 24 */ beq lbl_80248CCC +/* 80248CAC 00245C0C 80 7E 00 30 */ lwz r3, 0x30(r30) +/* 80248CB0 00245C10 28 03 00 00 */ cmplwi r3, 0 +/* 80248CB4 00245C14 41 82 00 18 */ beq lbl_80248CCC +/* 80248CB8 00245C18 81 83 00 00 */ lwz r12, 0(r3) +/* 80248CBC 00245C1C 38 80 00 01 */ li r4, 1 +/* 80248CC0 00245C20 81 8C 00 08 */ lwz r12, 8(r12) +/* 80248CC4 00245C24 7D 89 03 A6 */ mtctr r12 +/* 80248CC8 00245C28 4E 80 04 21 */ bctrl +lbl_80248CCC: +/* 80248CCC 00245C2C 34 1E 00 2C */ addic. r0, r30, 0x2c +/* 80248CD0 00245C30 41 82 00 0C */ beq lbl_80248CDC +/* 80248CD4 00245C34 80 7E 00 2C */ lwz r3, 0x2c(r30) +/* 80248CD8 00245C38 48 0C CC 59 */ bl Free__7CMemoryFPCv +lbl_80248CDC: +/* 80248CDC 00245C3C 7F C3 F3 78 */ mr r3, r30 +/* 80248CE0 00245C40 38 80 FF FF */ li r4, -1 +/* 80248CE4 00245C44 48 10 6F 2D */ bl __dt__8CDvdFileFv +/* 80248CE8 00245C48 7F E0 07 35 */ extsh. r0, r31 +/* 80248CEC 00245C4C 40 81 00 0C */ ble lbl_80248CF8 +/* 80248CF0 00245C50 7F C3 F3 78 */ mr r3, r30 +/* 80248CF4 00245C54 48 0C CC 3D */ bl Free__7CMemoryFPCv +lbl_80248CF8: +/* 80248CF8 00245C58 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80248CFC 00245C5C 7F C3 F3 78 */ mr r3, r30 +/* 80248D00 00245C60 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80248D04 00245C64 83 C1 00 08 */ lwz r30, 8(r1) +/* 80248D08 00245C68 7C 08 03 A6 */ mtlr r0 +/* 80248D0C 00245C6C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80248D10 00245C70 4E 80 00 20 */ blr + +.global __ct__11CGBASupportFv +__ct__11CGBASupportFv: +/* 80248D14 00245C74 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80248D18 00245C78 7C 08 02 A6 */ mflr r0 +/* 80248D1C 00245C7C 3C 80 80 3D */ lis r4, lbl_803D4768@ha +/* 80248D20 00245C80 90 01 00 24 */ stw r0, 0x24(r1) +/* 80248D24 00245C84 38 84 47 68 */ addi r4, r4, lbl_803D4768@l +/* 80248D28 00245C88 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80248D2C 00245C8C 7C 7F 1B 78 */ mr r31, r3 +/* 80248D30 00245C90 48 10 6F A1 */ bl __ct__8CDvdFileFPCc +/* 80248D34 00245C94 80 DF 00 14 */ lwz r6, 0x14(r31) +/* 80248D38 00245C98 3C A0 80 3D */ lis r5, lbl_803D4768@ha +/* 80248D3C 00245C9C 38 A5 47 68 */ addi r5, r5, lbl_803D4768@l +/* 80248D40 00245CA0 3C 80 80 3D */ lis r4, lbl_803D6AA8@ha +/* 80248D44 00245CA4 38 06 00 1F */ addi r0, r6, 0x1f +/* 80248D48 00245CA8 38 61 00 08 */ addi r3, r1, 8 +/* 80248D4C 00245CAC 54 00 00 34 */ rlwinm r0, r0, 0, 0, 0x1a +/* 80248D50 00245CB0 38 C4 6A A8 */ addi r6, r4, lbl_803D6AA8@l +/* 80248D54 00245CB4 90 1F 00 28 */ stw r0, 0x28(r31) +/* 80248D58 00245CB8 38 A5 00 0F */ addi r5, r5, 0xf +/* 80248D5C 00245CBC 38 80 FF FF */ li r4, -1 +/* 80248D60 00245CC0 48 08 D6 75 */ bl __ct__10CCallStackFUiPCcPCc +/* 80248D64 00245CC4 7C 67 1B 78 */ mr r7, r3 +/* 80248D68 00245CC8 80 7F 00 28 */ lwz r3, 0x28(r31) +/* 80248D6C 00245CCC 38 80 00 02 */ li r4, 2 +/* 80248D70 00245CD0 38 A0 00 01 */ li r5, 1 +/* 80248D74 00245CD4 38 C0 00 00 */ li r6, 0 +/* 80248D78 00245CD8 48 0C CC 1D */ bl Alloc__7CMemoryFUlQ210IAllocator5EHintQ210IAllocator6EScopeQ210IAllocator5ETypeRC10CCallStack +/* 80248D7C 00245CDC 90 7F 00 2C */ stw r3, 0x2c(r31) +/* 80248D80 00245CE0 7F E3 FB 78 */ mr r3, r31 +/* 80248D84 00245CE4 80 9F 00 2C */ lwz r4, 0x2c(r31) +/* 80248D88 00245CE8 80 BF 00 28 */ lwz r5, 0x28(r31) +/* 80248D8C 00245CEC 48 10 6E 5D */ bl SyncRead__8CDvdFileFPvUi +/* 80248D90 00245CF0 90 7F 00 30 */ stw r3, 0x30(r31) +/* 80248D94 00245CF4 38 60 00 00 */ li r3, 0 +/* 80248D98 00245CF8 C0 02 B8 80 */ lfs f0, lbl_805AD5A0@sda21(r2) +/* 80248D9C 00245CFC 38 00 FF FF */ li r0, -1 +/* 80248DA0 00245D00 90 7F 00 34 */ stw r3, 0x34(r31) +/* 80248DA4 00245D04 D0 1F 00 38 */ stfs f0, 0x38(r31) +/* 80248DA8 00245D08 98 7F 00 3C */ stb r3, 0x3c(r31) +/* 80248DAC 00245D0C 90 1F 00 40 */ stw r0, 0x40(r31) +/* 80248DB0 00245D10 98 7F 00 44 */ stb r3, 0x44(r31) +/* 80248DB4 00245D14 98 7F 00 45 */ stb r3, 0x45(r31) +/* 80248DB8 00245D18 48 18 08 95 */ bl GBAInit +/* 80248DBC 00245D1C 93 ED A5 50 */ stw r31, lbl_805A9110@sda21(r13) +/* 80248DC0 00245D20 7F E3 FB 78 */ mr r3, r31 +/* 80248DC4 00245D24 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80248DC8 00245D28 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80248DCC 00245D2C 7C 08 03 A6 */ mtlr r0 +/* 80248DD0 00245D30 38 21 00 20 */ addi r1, r1, 0x20 +/* 80248DD4 00245D34 4E 80 00 20 */ blr + +.global nullsub_130 +nullsub_130: +/* 80248DD8 00245D38 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CHealthInfo.s b/asm/Kyoto_CWD/CHealthInfo.s new file mode 100644 index 00000000..9ca80b14 --- /dev/null +++ b/asm/Kyoto_CWD/CHealthInfo.s @@ -0,0 +1,28 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __ct__11CHealthInfoFR12CInputStream +__ct__11CHealthInfoFR12CInputStream: +/* 801D3844 001D07A4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D3848 001D07A8 7C 08 02 A6 */ mflr r0 +/* 801D384C 001D07AC 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D3850 001D07B0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801D3854 001D07B4 7C 9F 23 78 */ mr r31, r4 +/* 801D3858 001D07B8 93 C1 00 08 */ stw r30, 8(r1) +/* 801D385C 001D07BC 7C 7E 1B 78 */ mr r30, r3 +/* 801D3860 001D07C0 7F E3 FB 78 */ mr r3, r31 +/* 801D3864 001D07C4 48 16 B4 21 */ bl ReadLong__12CInputStreamFv +/* 801D3868 001D07C8 7F E3 FB 78 */ mr r3, r31 +/* 801D386C 001D07CC 48 16 B3 BD */ bl ReadFloat__12CInputStreamFv +/* 801D3870 001D07D0 D0 3E 00 00 */ stfs f1, 0(r30) +/* 801D3874 001D07D4 7F E3 FB 78 */ mr r3, r31 +/* 801D3878 001D07D8 48 16 B3 B1 */ bl ReadFloat__12CInputStreamFv +/* 801D387C 001D07DC D0 3E 00 04 */ stfs f1, 4(r30) +/* 801D3880 001D07E0 7F C3 F3 78 */ mr r3, r30 +/* 801D3884 001D07E4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D3888 001D07E8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801D388C 001D07EC 83 C1 00 08 */ lwz r30, 8(r1) +/* 801D3890 001D07F0 7C 08 03 A6 */ mtlr r0 +/* 801D3894 001D07F4 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D3898 001D07F8 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CIkChain.s b/asm/Kyoto_CWD/CIkChain.s new file mode 100644 index 00000000..d0af8f8e --- /dev/null +++ b/asm/Kyoto_CWD/CIkChain.s @@ -0,0 +1,795 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global Update__8CIkChainFf +Update__8CIkChainFf: +/* 802258E8 00222848 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 802258EC 0022284C 7C 08 02 A6 */ mflr r0 +/* 802258F0 00222850 90 01 00 24 */ stw r0, 0x24(r1) +/* 802258F4 00222854 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 802258F8 00222858 7C 7F 1B 78 */ mr r31, r3 +/* 802258FC 0022285C 88 03 00 44 */ lbz r0, 0x44(r3) +/* 80225900 00222860 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80225904 00222864 41 82 00 28 */ beq lbl_8022592C +/* 80225908 00222868 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8022590C 0022286C 38 61 00 0C */ addi r3, r1, 0xc +/* 80225910 00222870 38 8D 95 58 */ addi r4, r13, lbl_805A8118@sda21 +/* 80225914 00222874 EC 00 08 2A */ fadds f0, f0, f1 +/* 80225918 00222878 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 8022591C 0022287C 4B E5 84 C5 */ bl "Min__5CMathFRCfRCf" +/* 80225920 00222880 C0 03 00 00 */ lfs f0, 0(r3) +/* 80225924 00222884 D0 1F 00 40 */ stfs f0, 0x40(r31) +/* 80225928 00222888 48 00 00 24 */ b lbl_8022594C +lbl_8022592C: +/* 8022592C 0022288C C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 80225930 00222890 38 81 00 08 */ addi r4, r1, 8 +/* 80225934 00222894 38 6D 95 5C */ addi r3, r13, lbl_805A811C@sda21 +/* 80225938 00222898 EC 00 08 28 */ fsubs f0, f0, f1 +/* 8022593C 0022289C D0 01 00 08 */ stfs f0, 8(r1) +/* 80225940 002228A0 4B E2 9D F1 */ bl "Max__5CMathFRCfRCf" +/* 80225944 002228A4 C0 03 00 00 */ lfs f0, 0(r3) +/* 80225948 002228A8 D0 1F 00 40 */ stfs f0, 0x40(r31) +lbl_8022594C: +/* 8022594C 002228AC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80225950 002228B0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80225954 002228B4 7C 08 03 A6 */ mtlr r0 +/* 80225958 002228B8 38 21 00 20 */ addi r1, r1, 0x20 +/* 8022595C 002228BC 4E 80 00 20 */ blr + +.global Deactivate__8CIkChainFv +Deactivate__8CIkChainFv: +/* 80225960 002228C0 88 03 00 44 */ lbz r0, 0x44(r3) +/* 80225964 002228C4 38 80 00 00 */ li r4, 0 +/* 80225968 002228C8 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 8022596C 002228CC 98 03 00 44 */ stb r0, 0x44(r3) +/* 80225970 002228D0 4E 80 00 20 */ blr + +.global PreRender__8CIkChainFR9CAnimDataRC12CTransform4fRC9CVector3f +PreRender__8CIkChainFR9CAnimDataRC12CTransform4fRC9CVector3f: +/* 80225974 002228D4 94 21 FE 00 */ stwu r1, -0x200(r1) +/* 80225978 002228D8 7C 08 02 A6 */ mflr r0 +/* 8022597C 002228DC C0 02 B4 A8 */ lfs f0, lbl_805AD1C8@sda21(r2) +/* 80225980 002228E0 90 01 02 04 */ stw r0, 0x204(r1) +/* 80225984 002228E4 93 E1 01 FC */ stw r31, 0x1fc(r1) +/* 80225988 002228E8 7C DF 33 78 */ mr r31, r6 +/* 8022598C 002228EC 93 C1 01 F8 */ stw r30, 0x1f8(r1) +/* 80225990 002228F0 7C 9E 23 78 */ mr r30, r4 +/* 80225994 002228F4 93 A1 01 F4 */ stw r29, 0x1f4(r1) +/* 80225998 002228F8 7C 7D 1B 78 */ mr r29, r3 +/* 8022599C 002228FC 93 81 01 F0 */ stw r28, 0x1f0(r1) +/* 802259A0 00222900 7C BC 2B 78 */ mr r28, r5 +/* 802259A4 00222904 C0 23 00 40 */ lfs f1, 0x40(r3) +/* 802259A8 00222908 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802259AC 0022290C 40 81 04 50 */ ble lbl_80225DFC +/* 802259B0 00222910 88 1D 00 02 */ lbz r0, 2(r29) +/* 802259B4 00222914 38 61 01 88 */ addi r3, r1, 0x188 +/* 802259B8 00222918 38 A1 00 08 */ addi r5, r1, 8 +/* 802259BC 0022291C 38 C0 00 00 */ li r6, 0 +/* 802259C0 00222920 98 01 00 08 */ stb r0, 8(r1) +/* 802259C4 00222924 4B E0 68 B1 */ bl GetLocatorTransform__9CAnimDataCF6CSegIdPC13CCharAnimTime +/* 802259C8 00222928 38 61 01 B8 */ addi r3, r1, 0x1b8 +/* 802259CC 0022292C 38 81 01 88 */ addi r4, r1, 0x188 +/* 802259D0 00222930 48 0E D1 A5 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 802259D4 00222934 C0 3D 00 3C */ lfs f1, 0x3c(r29) +/* 802259D8 00222938 7F 84 E3 78 */ mr r4, r28 +/* 802259DC 0022293C C0 1C 00 2C */ lfs f0, 0x2c(r28) +/* 802259E0 00222940 38 61 00 D0 */ addi r3, r1, 0xd0 +/* 802259E4 00222944 C0 7D 00 38 */ lfs f3, 0x38(r29) +/* 802259E8 00222948 38 A1 00 18 */ addi r5, r1, 0x18 +/* 802259EC 0022294C C0 5C 00 1C */ lfs f2, 0x1c(r28) +/* 802259F0 00222950 EC 81 00 28 */ fsubs f4, f1, f0 +/* 802259F4 00222954 C0 3D 00 34 */ lfs f1, 0x34(r29) +/* 802259F8 00222958 C0 1C 00 0C */ lfs f0, 0xc(r28) +/* 802259FC 0022295C EC 43 10 28 */ fsubs f2, f3, f2 +/* 80225A00 00222960 D0 81 00 20 */ stfs f4, 0x20(r1) +/* 80225A04 00222964 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80225A08 00222968 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 80225A0C 0022296C D0 01 00 18 */ stfs f0, 0x18(r1) +/* 80225A10 00222970 48 0E D0 15 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 80225A14 00222974 C0 21 00 D0 */ lfs f1, 0xd0(r1) +/* 80225A18 00222978 38 61 00 C4 */ addi r3, r1, 0xc4 +/* 80225A1C 0022297C C0 E1 00 D4 */ lfs f7, 0xd4(r1) +/* 80225A20 00222980 38 81 01 B8 */ addi r4, r1, 0x1b8 +/* 80225A24 00222984 C0 C1 00 D8 */ lfs f6, 0xd8(r1) +/* 80225A28 00222988 38 A1 00 0C */ addi r5, r1, 0xc +/* 80225A2C 0022298C C0 1F 00 00 */ lfs f0, 0(r31) +/* 80225A30 00222990 C0 9F 00 04 */ lfs f4, 4(r31) +/* 80225A34 00222994 C0 7F 00 08 */ lfs f3, 8(r31) +/* 80225A38 00222998 EC A1 00 24 */ fdivs f5, f1, f0 +/* 80225A3C 0022299C C0 41 01 C4 */ lfs f2, 0x1c4(r1) +/* 80225A40 002229A0 D0 21 01 4C */ stfs f1, 0x14c(r1) +/* 80225A44 002229A4 C0 21 01 D4 */ lfs f1, 0x1d4(r1) +/* 80225A48 002229A8 C0 01 01 E4 */ lfs f0, 0x1e4(r1) +/* 80225A4C 002229AC D0 E1 01 50 */ stfs f7, 0x150(r1) +/* 80225A50 002229B0 EC 87 20 24 */ fdivs f4, f7, f4 +/* 80225A54 002229B4 D0 C1 01 54 */ stfs f6, 0x154(r1) +/* 80225A58 002229B8 D0 A1 01 4C */ stfs f5, 0x14c(r1) +/* 80225A5C 002229BC EC 66 18 24 */ fdivs f3, f6, f3 +/* 80225A60 002229C0 D0 81 01 50 */ stfs f4, 0x150(r1) +/* 80225A64 002229C4 EC 45 10 28 */ fsubs f2, f5, f2 +/* 80225A68 002229C8 D0 61 01 54 */ stfs f3, 0x154(r1) +/* 80225A6C 002229CC EC 24 08 28 */ fsubs f1, f4, f1 +/* 80225A70 002229D0 EC 03 00 28 */ fsubs f0, f3, f0 +/* 80225A74 002229D4 D0 41 00 0C */ stfs f2, 0xc(r1) +/* 80225A78 002229D8 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 80225A7C 002229DC D0 01 00 14 */ stfs f0, 0x14(r1) +/* 80225A80 002229E0 48 0E CF A5 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 80225A84 002229E4 C0 41 00 C4 */ lfs f2, 0xc4(r1) +/* 80225A88 002229E8 3B FE 03 3C */ addi r31, r30, 0x33c +/* 80225A8C 002229EC C0 21 00 C8 */ lfs f1, 0xc8(r1) +/* 80225A90 002229F0 7F 84 E3 78 */ mr r4, r28 +/* 80225A94 002229F4 C0 01 00 CC */ lfs f0, 0xcc(r1) +/* 80225A98 002229F8 38 61 01 58 */ addi r3, r1, 0x158 +/* 80225A9C 002229FC D0 41 01 4C */ stfs f2, 0x14c(r1) +/* 80225AA0 00222A00 38 A1 01 B8 */ addi r5, r1, 0x1b8 +/* 80225AA4 00222A04 D0 21 01 50 */ stfs f1, 0x150(r1) +/* 80225AA8 00222A08 D0 01 01 54 */ stfs f0, 0x154(r1) +/* 80225AAC 00222A0C 88 1D 00 02 */ lbz r0, 2(r29) +/* 80225AB0 00222A10 80 FE 04 04 */ lwz r7, 0x404(r30) +/* 80225AB4 00222A14 54 00 08 3C */ slwi r0, r0, 1 +/* 80225AB8 00222A18 7C DF 02 14 */ add r6, r31, r0 +/* 80225ABC 00222A1C 88 06 00 01 */ lbz r0, 1(r6) +/* 80225AC0 00222A20 54 06 2C F4 */ rlwinm r6, r0, 5, 0x13, 0x1a +/* 80225AC4 00222A24 38 C6 00 04 */ addi r6, r6, 4 +/* 80225AC8 00222A28 7C C7 32 14 */ add r6, r7, r6 +/* 80225ACC 00222A2C C0 06 00 04 */ lfs f0, 4(r6) +/* 80225AD0 00222A30 C0 A6 00 08 */ lfs f5, 8(r6) +/* 80225AD4 00222A34 C0 C6 00 0C */ lfs f6, 0xc(r6) +/* 80225AD8 00222A38 FC 40 00 50 */ fneg f2, f0 +/* 80225ADC 00222A3C C0 26 00 00 */ lfs f1, 0(r6) +/* 80225AE0 00222A40 FC 60 28 50 */ fneg f3, f5 +/* 80225AE4 00222A44 FC 80 30 50 */ fneg f4, f6 +/* 80225AE8 00222A48 D0 21 01 3C */ stfs f1, 0x13c(r1) +/* 80225AEC 00222A4C D0 01 01 40 */ stfs f0, 0x140(r1) +/* 80225AF0 00222A50 D0 A1 01 44 */ stfs f5, 0x144(r1) +/* 80225AF4 00222A54 D0 C1 01 48 */ stfs f6, 0x148(r1) +/* 80225AF8 00222A58 88 1D 00 01 */ lbz r0, 1(r29) +/* 80225AFC 00222A5C 54 06 08 3C */ slwi r6, r0, 1 +/* 80225B00 00222A60 38 06 00 01 */ addi r0, r6, 1 +/* 80225B04 00222A64 7C 1F 00 AE */ lbzx r0, r31, r0 +/* 80225B08 00222A68 54 06 2C F4 */ rlwinm r6, r0, 5, 0x13, 0x1a +/* 80225B0C 00222A6C 38 C6 00 04 */ addi r6, r6, 4 +/* 80225B10 00222A70 7C C7 32 14 */ add r6, r7, r6 +/* 80225B14 00222A74 C0 A6 00 04 */ lfs f5, 4(r6) +/* 80225B18 00222A78 C0 C6 00 08 */ lfs f6, 8(r6) +/* 80225B1C 00222A7C C0 E6 00 0C */ lfs f7, 0xc(r6) +/* 80225B20 00222A80 C0 06 00 00 */ lfs f0, 0(r6) +/* 80225B24 00222A84 D0 01 01 2C */ stfs f0, 0x12c(r1) +/* 80225B28 00222A88 D0 A1 01 30 */ stfs f5, 0x130(r1) +/* 80225B2C 00222A8C D0 C1 01 34 */ stfs f6, 0x134(r1) +/* 80225B30 00222A90 D0 E1 01 38 */ stfs f7, 0x138(r1) +/* 80225B34 00222A94 88 1D 00 00 */ lbz r0, 0(r29) +/* 80225B38 00222A98 54 06 08 3C */ slwi r6, r0, 1 +/* 80225B3C 00222A9C 38 06 00 01 */ addi r0, r6, 1 +/* 80225B40 00222AA0 7C 1F 00 AE */ lbzx r0, r31, r0 +/* 80225B44 00222AA4 54 06 2C F4 */ rlwinm r6, r0, 5, 0x13, 0x1a +/* 80225B48 00222AA8 38 C6 00 04 */ addi r6, r6, 4 +/* 80225B4C 00222AAC 7C C7 32 14 */ add r6, r7, r6 +/* 80225B50 00222AB0 C0 A6 00 04 */ lfs f5, 4(r6) +/* 80225B54 00222AB4 C0 C6 00 08 */ lfs f6, 8(r6) +/* 80225B58 00222AB8 C0 E6 00 0C */ lfs f7, 0xc(r6) +/* 80225B5C 00222ABC C0 06 00 00 */ lfs f0, 0(r6) +/* 80225B60 00222AC0 D0 01 01 1C */ stfs f0, 0x11c(r1) +/* 80225B64 00222AC4 D0 A1 01 20 */ stfs f5, 0x120(r1) +/* 80225B68 00222AC8 D0 C1 01 24 */ stfs f6, 0x124(r1) +/* 80225B6C 00222ACC D0 E1 01 28 */ stfs f7, 0x128(r1) +/* 80225B70 00222AD0 D0 21 00 94 */ stfs f1, 0x94(r1) +/* 80225B74 00222AD4 D0 41 00 98 */ stfs f2, 0x98(r1) +/* 80225B78 00222AD8 D0 61 00 9C */ stfs f3, 0x9c(r1) +/* 80225B7C 00222ADC D0 81 00 A0 */ stfs f4, 0xa0(r1) +/* 80225B80 00222AE0 48 0E CD D1 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80225B84 00222AE4 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 80225B88 00222AE8 38 81 01 58 */ addi r4, r1, 0x158 +/* 80225B8C 00222AEC 48 0E C5 9D */ bl FromMatrix__11CQuaternionFRC12CTransform4f +/* 80225B90 00222AF0 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 80225B94 00222AF4 38 81 00 A4 */ addi r4, r1, 0xa4 +/* 80225B98 00222AF8 38 A1 00 94 */ addi r5, r1, 0x94 +/* 80225B9C 00222AFC 48 0E B6 05 */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 80225BA0 00222B00 C1 61 00 B4 */ lfs f11, 0xb4(r1) +/* 80225BA4 00222B04 7F A3 EB 78 */ mr r3, r29 +/* 80225BA8 00222B08 C1 41 00 B8 */ lfs f10, 0xb8(r1) +/* 80225BAC 00222B0C 38 81 00 FC */ addi r4, r1, 0xfc +/* 80225BB0 00222B10 C1 21 00 BC */ lfs f9, 0xbc(r1) +/* 80225BB4 00222B14 38 A1 00 EC */ addi r5, r1, 0xec +/* 80225BB8 00222B18 C1 01 00 C0 */ lfs f8, 0xc0(r1) +/* 80225BBC 00222B1C 38 C1 01 4C */ addi r6, r1, 0x14c +/* 80225BC0 00222B20 C0 E1 01 3C */ lfs f7, 0x13c(r1) +/* 80225BC4 00222B24 C0 C1 01 40 */ lfs f6, 0x140(r1) +/* 80225BC8 00222B28 C0 A1 01 44 */ lfs f5, 0x144(r1) +/* 80225BCC 00222B2C C0 81 01 48 */ lfs f4, 0x148(r1) +/* 80225BD0 00222B30 C0 61 01 2C */ lfs f3, 0x12c(r1) +/* 80225BD4 00222B34 C0 41 01 30 */ lfs f2, 0x130(r1) +/* 80225BD8 00222B38 C0 21 01 34 */ lfs f1, 0x134(r1) +/* 80225BDC 00222B3C C0 01 01 38 */ lfs f0, 0x138(r1) +/* 80225BE0 00222B40 D1 61 01 0C */ stfs f11, 0x10c(r1) +/* 80225BE4 00222B44 D1 41 01 10 */ stfs f10, 0x110(r1) +/* 80225BE8 00222B48 D1 21 01 14 */ stfs f9, 0x114(r1) +/* 80225BEC 00222B4C D1 01 01 18 */ stfs f8, 0x118(r1) +/* 80225BF0 00222B50 D0 E1 00 FC */ stfs f7, 0xfc(r1) +/* 80225BF4 00222B54 D0 C1 01 00 */ stfs f6, 0x100(r1) +/* 80225BF8 00222B58 D0 A1 01 04 */ stfs f5, 0x104(r1) +/* 80225BFC 00222B5C D0 81 01 08 */ stfs f4, 0x108(r1) +/* 80225C00 00222B60 D0 61 00 EC */ stfs f3, 0xec(r1) +/* 80225C04 00222B64 D0 41 00 F0 */ stfs f2, 0xf0(r1) +/* 80225C08 00222B68 D0 21 00 F4 */ stfs f1, 0xf4(r1) +/* 80225C0C 00222B6C D0 01 00 F8 */ stfs f0, 0xf8(r1) +/* 80225C10 00222B70 48 00 04 21 */ bl Solve__8CIkChainFR11CQuaternionR11CQuaternionRC9CVector3f +/* 80225C14 00222B74 38 61 00 74 */ addi r3, r1, 0x74 +/* 80225C18 00222B78 38 81 01 0C */ addi r4, r1, 0x10c +/* 80225C1C 00222B7C 38 A1 00 FC */ addi r5, r1, 0xfc +/* 80225C20 00222B80 48 0E B5 81 */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 80225C24 00222B84 38 61 00 84 */ addi r3, r1, 0x84 +/* 80225C28 00222B88 38 81 00 74 */ addi r4, r1, 0x74 +/* 80225C2C 00222B8C 38 A1 00 EC */ addi r5, r1, 0xec +/* 80225C30 00222B90 48 0E B5 71 */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 80225C34 00222B94 C0 41 00 88 */ lfs f2, 0x88(r1) +/* 80225C38 00222B98 38 61 00 64 */ addi r3, r1, 0x64 +/* 80225C3C 00222B9C C0 21 00 8C */ lfs f1, 0x8c(r1) +/* 80225C40 00222BA0 38 81 00 54 */ addi r4, r1, 0x54 +/* 80225C44 00222BA4 C0 01 00 90 */ lfs f0, 0x90(r1) +/* 80225C48 00222BA8 FC 40 10 50 */ fneg f2, f2 +/* 80225C4C 00222BAC FC 20 08 50 */ fneg f1, f1 +/* 80225C50 00222BB0 C0 61 00 84 */ lfs f3, 0x84(r1) +/* 80225C54 00222BB4 FC 00 00 50 */ fneg f0, f0 +/* 80225C58 00222BB8 38 BD 00 24 */ addi r5, r29, 0x24 +/* 80225C5C 00222BBC D0 61 00 54 */ stfs f3, 0x54(r1) +/* 80225C60 00222BC0 D0 41 00 58 */ stfs f2, 0x58(r1) +/* 80225C64 00222BC4 D0 21 00 5C */ stfs f1, 0x5c(r1) +/* 80225C68 00222BC8 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 80225C6C 00222BCC 48 0E B5 35 */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 80225C70 00222BD0 C0 01 00 64 */ lfs f0, 0x64(r1) +/* 80225C74 00222BD4 C0 61 00 68 */ lfs f3, 0x68(r1) +/* 80225C78 00222BD8 C0 41 00 6C */ lfs f2, 0x6c(r1) +/* 80225C7C 00222BDC C0 21 00 70 */ lfs f1, 0x70(r1) +/* 80225C80 00222BE0 D0 01 00 DC */ stfs f0, 0xdc(r1) +/* 80225C84 00222BE4 C0 02 B4 AC */ lfs f0, lbl_805AD1CC@sda21(r2) +/* 80225C88 00222BE8 D0 61 00 E0 */ stfs f3, 0xe0(r1) +/* 80225C8C 00222BEC D0 41 00 E4 */ stfs f2, 0xe4(r1) +/* 80225C90 00222BF0 D0 21 00 E8 */ stfs f1, 0xe8(r1) +/* 80225C94 00222BF4 C0 3D 00 40 */ lfs f1, 0x40(r29) +/* 80225C98 00222BF8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80225C9C 00222BFC 40 80 00 9C */ bge lbl_80225D38 +/* 80225CA0 00222C00 38 61 00 44 */ addi r3, r1, 0x44 +/* 80225CA4 00222C04 38 81 01 3C */ addi r4, r1, 0x13c +/* 80225CA8 00222C08 38 A1 00 FC */ addi r5, r1, 0xfc +/* 80225CAC 00222C0C 48 0E B9 0D */ bl SlerpLocal__11CQuaternionFRC11CQuaternionRC11CQuaternionf +/* 80225CB0 00222C10 C0 01 00 44 */ lfs f0, 0x44(r1) +/* 80225CB4 00222C14 38 61 00 34 */ addi r3, r1, 0x34 +/* 80225CB8 00222C18 80 E1 00 48 */ lwz r7, 0x48(r1) +/* 80225CBC 00222C1C 38 81 01 2C */ addi r4, r1, 0x12c +/* 80225CC0 00222C20 80 C1 00 4C */ lwz r6, 0x4c(r1) +/* 80225CC4 00222C24 38 A1 00 EC */ addi r5, r1, 0xec +/* 80225CC8 00222C28 80 01 00 50 */ lwz r0, 0x50(r1) +/* 80225CCC 00222C2C D0 01 00 FC */ stfs f0, 0xfc(r1) +/* 80225CD0 00222C30 90 E1 01 00 */ stw r7, 0x100(r1) +/* 80225CD4 00222C34 90 C1 01 04 */ stw r6, 0x104(r1) +/* 80225CD8 00222C38 90 01 01 08 */ stw r0, 0x108(r1) +/* 80225CDC 00222C3C C0 3D 00 40 */ lfs f1, 0x40(r29) +/* 80225CE0 00222C40 48 0E B8 D9 */ bl SlerpLocal__11CQuaternionFRC11CQuaternionRC11CQuaternionf +/* 80225CE4 00222C44 C0 01 00 34 */ lfs f0, 0x34(r1) +/* 80225CE8 00222C48 38 61 00 24 */ addi r3, r1, 0x24 +/* 80225CEC 00222C4C 80 E1 00 38 */ lwz r7, 0x38(r1) +/* 80225CF0 00222C50 38 81 01 1C */ addi r4, r1, 0x11c +/* 80225CF4 00222C54 80 C1 00 3C */ lwz r6, 0x3c(r1) +/* 80225CF8 00222C58 38 A1 00 DC */ addi r5, r1, 0xdc +/* 80225CFC 00222C5C 80 01 00 40 */ lwz r0, 0x40(r1) +/* 80225D00 00222C60 D0 01 00 EC */ stfs f0, 0xec(r1) +/* 80225D04 00222C64 90 E1 00 F0 */ stw r7, 0xf0(r1) +/* 80225D08 00222C68 90 C1 00 F4 */ stw r6, 0xf4(r1) +/* 80225D0C 00222C6C 90 01 00 F8 */ stw r0, 0xf8(r1) +/* 80225D10 00222C70 C0 3D 00 40 */ lfs f1, 0x40(r29) +/* 80225D14 00222C74 48 0E B8 A5 */ bl SlerpLocal__11CQuaternionFRC11CQuaternionRC11CQuaternionf +/* 80225D18 00222C78 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 80225D1C 00222C7C 80 81 00 28 */ lwz r4, 0x28(r1) +/* 80225D20 00222C80 80 61 00 2C */ lwz r3, 0x2c(r1) +/* 80225D24 00222C84 80 01 00 30 */ lwz r0, 0x30(r1) +/* 80225D28 00222C88 D0 01 00 DC */ stfs f0, 0xdc(r1) +/* 80225D2C 00222C8C 90 81 00 E0 */ stw r4, 0xe0(r1) +/* 80225D30 00222C90 90 61 00 E4 */ stw r3, 0xe4(r1) +/* 80225D34 00222C94 90 01 00 E8 */ stw r0, 0xe8(r1) +lbl_80225D38: +/* 80225D38 00222C98 88 1D 00 02 */ lbz r0, 2(r29) +/* 80225D3C 00222C9C 38 60 00 00 */ li r3, 0 +/* 80225D40 00222CA0 80 BE 04 04 */ lwz r5, 0x404(r30) +/* 80225D44 00222CA4 54 04 08 3C */ slwi r4, r0, 1 +/* 80225D48 00222CA8 C0 01 00 FC */ lfs f0, 0xfc(r1) +/* 80225D4C 00222CAC 38 04 00 01 */ addi r0, r4, 1 +/* 80225D50 00222CB0 7C 1F 00 AE */ lbzx r0, r31, r0 +/* 80225D54 00222CB4 54 00 2C F4 */ rlwinm r0, r0, 5, 0x13, 0x1a +/* 80225D58 00222CB8 7C A5 02 14 */ add r5, r5, r0 +/* 80225D5C 00222CBC D0 05 00 04 */ stfs f0, 4(r5) +/* 80225D60 00222CC0 80 81 01 00 */ lwz r4, 0x100(r1) +/* 80225D64 00222CC4 80 01 01 04 */ lwz r0, 0x104(r1) +/* 80225D68 00222CC8 90 85 00 08 */ stw r4, 8(r5) +/* 80225D6C 00222CCC 90 05 00 0C */ stw r0, 0xc(r5) +/* 80225D70 00222CD0 80 01 01 08 */ lwz r0, 0x108(r1) +/* 80225D74 00222CD4 90 05 00 10 */ stw r0, 0x10(r5) +/* 80225D78 00222CD8 88 1D 00 01 */ lbz r0, 1(r29) +/* 80225D7C 00222CDC 80 BE 04 04 */ lwz r5, 0x404(r30) +/* 80225D80 00222CE0 54 04 08 3C */ slwi r4, r0, 1 +/* 80225D84 00222CE4 C0 01 00 EC */ lfs f0, 0xec(r1) +/* 80225D88 00222CE8 38 04 00 01 */ addi r0, r4, 1 +/* 80225D8C 00222CEC 7C 1F 00 AE */ lbzx r0, r31, r0 +/* 80225D90 00222CF0 54 00 2C F4 */ rlwinm r0, r0, 5, 0x13, 0x1a +/* 80225D94 00222CF4 7C A5 02 14 */ add r5, r5, r0 +/* 80225D98 00222CF8 D0 05 00 04 */ stfs f0, 4(r5) +/* 80225D9C 00222CFC 80 81 00 F0 */ lwz r4, 0xf0(r1) +/* 80225DA0 00222D00 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 80225DA4 00222D04 90 85 00 08 */ stw r4, 8(r5) +/* 80225DA8 00222D08 90 05 00 0C */ stw r0, 0xc(r5) +/* 80225DAC 00222D0C 80 01 00 F8 */ lwz r0, 0xf8(r1) +/* 80225DB0 00222D10 90 05 00 10 */ stw r0, 0x10(r5) +/* 80225DB4 00222D14 88 1D 00 00 */ lbz r0, 0(r29) +/* 80225DB8 00222D18 80 BE 04 04 */ lwz r5, 0x404(r30) +/* 80225DBC 00222D1C 54 04 08 3C */ slwi r4, r0, 1 +/* 80225DC0 00222D20 C0 01 00 DC */ lfs f0, 0xdc(r1) +/* 80225DC4 00222D24 38 04 00 01 */ addi r0, r4, 1 +/* 80225DC8 00222D28 7C 1F 00 AE */ lbzx r0, r31, r0 +/* 80225DCC 00222D2C 54 00 2C F4 */ rlwinm r0, r0, 5, 0x13, 0x1a +/* 80225DD0 00222D30 7C A5 02 14 */ add r5, r5, r0 +/* 80225DD4 00222D34 D0 05 00 04 */ stfs f0, 4(r5) +/* 80225DD8 00222D38 80 81 00 E0 */ lwz r4, 0xe0(r1) +/* 80225DDC 00222D3C 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 80225DE0 00222D40 90 85 00 08 */ stw r4, 8(r5) +/* 80225DE4 00222D44 90 05 00 0C */ stw r0, 0xc(r5) +/* 80225DE8 00222D48 80 01 00 E8 */ lwz r0, 0xe8(r1) +/* 80225DEC 00222D4C 90 05 00 10 */ stw r0, 0x10(r5) +/* 80225DF0 00222D50 88 1E 02 20 */ lbz r0, 0x220(r30) +/* 80225DF4 00222D54 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 80225DF8 00222D58 98 1E 02 20 */ stb r0, 0x220(r30) +lbl_80225DFC: +/* 80225DFC 00222D5C 80 01 02 04 */ lwz r0, 0x204(r1) +/* 80225E00 00222D60 83 E1 01 FC */ lwz r31, 0x1fc(r1) +/* 80225E04 00222D64 83 C1 01 F8 */ lwz r30, 0x1f8(r1) +/* 80225E08 00222D68 83 A1 01 F4 */ lwz r29, 0x1f4(r1) +/* 80225E0C 00222D6C 83 81 01 F0 */ lwz r28, 0x1f0(r1) +/* 80225E10 00222D70 7C 08 03 A6 */ mtlr r0 +/* 80225E14 00222D74 38 21 02 00 */ addi r1, r1, 0x200 +/* 80225E18 00222D78 4E 80 00 20 */ blr + +.global Activate__8CIkChainFRC9CAnimData6CSegIdRC12CTransform4f +Activate__8CIkChainFRC9CAnimData6CSegIdRC12CTransform4f: +/* 80225E1C 00222D7C 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80225E20 00222D80 7C 08 02 A6 */ mflr r0 +/* 80225E24 00222D84 90 01 00 44 */ stw r0, 0x44(r1) +/* 80225E28 00222D88 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80225E2C 00222D8C 3B E4 02 FC */ addi r31, r4, 0x2fc +/* 80225E30 00222D90 93 C1 00 38 */ stw r30, 0x38(r1) +/* 80225E34 00222D94 7C DE 33 78 */ mr r30, r6 +/* 80225E38 00222D98 93 A1 00 34 */ stw r29, 0x34(r1) +/* 80225E3C 00222D9C 7C 7D 1B 78 */ mr r29, r3 +/* 80225E40 00222DA0 88 05 00 00 */ lbz r0, 0(r5) +/* 80225E44 00222DA4 98 03 00 00 */ stb r0, 0(r3) +/* 80225E48 00222DA8 88 04 03 28 */ lbz r0, 0x328(r4) +/* 80225E4C 00222DAC 28 00 00 00 */ cmplwi r0, 0 +/* 80225E50 00222DB0 41 82 00 0C */ beq lbl_80225E5C +/* 80225E54 00222DB4 38 7F 00 0C */ addi r3, r31, 0xc +/* 80225E58 00222DB8 48 00 00 08 */ b lbl_80225E60 +lbl_80225E5C: +/* 80225E5C 00222DBC 7F E3 FB 78 */ mr r3, r31 +lbl_80225E60: +/* 80225E60 00222DC0 80 63 00 08 */ lwz r3, 8(r3) +/* 80225E64 00222DC4 88 1D 00 00 */ lbz r0, 0(r29) +/* 80225E68 00222DC8 80 83 00 00 */ lwz r4, 0(r3) +/* 80225E6C 00222DCC 54 00 08 3C */ slwi r0, r0, 1 +/* 80225E70 00222DD0 7C 64 02 14 */ add r3, r4, r0 +/* 80225E74 00222DD4 80 84 00 D0 */ lwz r4, 0xd0(r4) +/* 80225E78 00222DD8 88 03 00 09 */ lbz r0, 9(r3) +/* 80225E7C 00222DDC 54 00 2C F4 */ rlwinm r0, r0, 5, 0x13, 0x1a +/* 80225E80 00222DE0 7C 04 00 AE */ lbzx r0, r4, r0 +/* 80225E84 00222DE4 98 1D 00 01 */ stb r0, 1(r29) +/* 80225E88 00222DE8 88 9D 00 01 */ lbz r4, 1(r29) +/* 80225E8C 00222DEC 28 04 00 02 */ cmplwi r4, 2 +/* 80225E90 00222DF0 41 82 01 84 */ beq lbl_80226014 +/* 80225E94 00222DF4 88 1F 00 2C */ lbz r0, 0x2c(r31) +/* 80225E98 00222DF8 28 00 00 00 */ cmplwi r0, 0 +/* 80225E9C 00222DFC 41 82 00 0C */ beq lbl_80225EA8 +/* 80225EA0 00222E00 38 7F 00 0C */ addi r3, r31, 0xc +/* 80225EA4 00222E04 48 00 00 08 */ b lbl_80225EAC +lbl_80225EA8: +/* 80225EA8 00222E08 7F E3 FB 78 */ mr r3, r31 +lbl_80225EAC: +/* 80225EAC 00222E0C 80 63 00 08 */ lwz r3, 8(r3) +/* 80225EB0 00222E10 54 80 0D FC */ rlwinm r0, r4, 1, 0x17, 0x1e +/* 80225EB4 00222E14 80 83 00 00 */ lwz r4, 0(r3) +/* 80225EB8 00222E18 7C 64 02 14 */ add r3, r4, r0 +/* 80225EBC 00222E1C 80 84 00 D0 */ lwz r4, 0xd0(r4) +/* 80225EC0 00222E20 88 03 00 09 */ lbz r0, 9(r3) +/* 80225EC4 00222E24 54 00 2C F4 */ rlwinm r0, r0, 5, 0x13, 0x1a +/* 80225EC8 00222E28 7C 04 00 AE */ lbzx r0, r4, r0 +/* 80225ECC 00222E2C 98 1D 00 02 */ stb r0, 2(r29) +/* 80225ED0 00222E30 88 1F 00 2C */ lbz r0, 0x2c(r31) +/* 80225ED4 00222E34 28 00 00 00 */ cmplwi r0, 0 +/* 80225ED8 00222E38 41 82 00 0C */ beq lbl_80225EE4 +/* 80225EDC 00222E3C 38 7F 00 0C */ addi r3, r31, 0xc +/* 80225EE0 00222E40 48 00 00 08 */ b lbl_80225EE8 +lbl_80225EE4: +/* 80225EE4 00222E44 7F E3 FB 78 */ mr r3, r31 +lbl_80225EE8: +/* 80225EE8 00222E48 80 83 00 08 */ lwz r4, 8(r3) +/* 80225EEC 00222E4C 38 61 00 24 */ addi r3, r1, 0x24 +/* 80225EF0 00222E50 38 BD 00 01 */ addi r5, r29, 1 +/* 80225EF4 00222E54 4B F0 5A AD */ bl GetFromParentUnrotated__15CCharLayoutInfoCFRC6CSegId +/* 80225EF8 00222E58 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 80225EFC 00222E5C 38 7D 00 04 */ addi r3, r29, 4 +/* 80225F00 00222E60 D0 1D 00 04 */ stfs f0, 4(r29) +/* 80225F04 00222E64 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 80225F08 00222E68 D0 1D 00 08 */ stfs f0, 8(r29) +/* 80225F0C 00222E6C C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 80225F10 00222E70 D0 1D 00 0C */ stfs f0, 0xc(r29) +/* 80225F14 00222E74 48 0E E9 A5 */ bl Magnitude__9CVector3fCFv +/* 80225F18 00222E78 D0 3D 00 1C */ stfs f1, 0x1c(r29) +/* 80225F1C 00222E7C C0 42 B4 AC */ lfs f2, lbl_805AD1CC@sda21(r2) +/* 80225F20 00222E80 C0 3D 00 1C */ lfs f1, 0x1c(r29) +/* 80225F24 00222E84 C0 1D 00 04 */ lfs f0, 4(r29) +/* 80225F28 00222E88 EC 22 08 24 */ fdivs f1, f2, f1 +/* 80225F2C 00222E8C EC 00 00 72 */ fmuls f0, f0, f1 +/* 80225F30 00222E90 D0 1D 00 04 */ stfs f0, 4(r29) +/* 80225F34 00222E94 C0 1D 00 08 */ lfs f0, 8(r29) +/* 80225F38 00222E98 EC 00 00 72 */ fmuls f0, f0, f1 +/* 80225F3C 00222E9C D0 1D 00 08 */ stfs f0, 8(r29) +/* 80225F40 00222EA0 C0 1D 00 0C */ lfs f0, 0xc(r29) +/* 80225F44 00222EA4 EC 00 00 72 */ fmuls f0, f0, f1 +/* 80225F48 00222EA8 D0 1D 00 0C */ stfs f0, 0xc(r29) +/* 80225F4C 00222EAC 88 1F 00 2C */ lbz r0, 0x2c(r31) +/* 80225F50 00222EB0 28 00 00 00 */ cmplwi r0, 0 +/* 80225F54 00222EB4 41 82 00 08 */ beq lbl_80225F5C +/* 80225F58 00222EB8 3B FF 00 0C */ addi r31, r31, 0xc +lbl_80225F5C: +/* 80225F5C 00222EBC 80 9F 00 08 */ lwz r4, 8(r31) +/* 80225F60 00222EC0 7F A5 EB 78 */ mr r5, r29 +/* 80225F64 00222EC4 38 61 00 18 */ addi r3, r1, 0x18 +/* 80225F68 00222EC8 4B F0 5A 39 */ bl GetFromParentUnrotated__15CCharLayoutInfoCFRC6CSegId +/* 80225F6C 00222ECC C0 01 00 18 */ lfs f0, 0x18(r1) +/* 80225F70 00222ED0 38 7D 00 10 */ addi r3, r29, 0x10 +/* 80225F74 00222ED4 D0 1D 00 10 */ stfs f0, 0x10(r29) +/* 80225F78 00222ED8 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 80225F7C 00222EDC D0 1D 00 14 */ stfs f0, 0x14(r29) +/* 80225F80 00222EE0 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 80225F84 00222EE4 D0 1D 00 18 */ stfs f0, 0x18(r29) +/* 80225F88 00222EE8 48 0E E9 31 */ bl Magnitude__9CVector3fCFv +/* 80225F8C 00222EEC D0 3D 00 20 */ stfs f1, 0x20(r29) +/* 80225F90 00222EF0 7F C4 F3 78 */ mr r4, r30 +/* 80225F94 00222EF4 C0 42 B4 AC */ lfs f2, lbl_805AD1CC@sda21(r2) +/* 80225F98 00222EF8 38 61 00 08 */ addi r3, r1, 8 +/* 80225F9C 00222EFC C0 3D 00 20 */ lfs f1, 0x20(r29) +/* 80225FA0 00222F00 C0 1D 00 10 */ lfs f0, 0x10(r29) +/* 80225FA4 00222F04 EC 22 08 24 */ fdivs f1, f2, f1 +/* 80225FA8 00222F08 EC 00 00 72 */ fmuls f0, f0, f1 +/* 80225FAC 00222F0C D0 1D 00 10 */ stfs f0, 0x10(r29) +/* 80225FB0 00222F10 C0 1D 00 14 */ lfs f0, 0x14(r29) +/* 80225FB4 00222F14 EC 00 00 72 */ fmuls f0, f0, f1 +/* 80225FB8 00222F18 D0 1D 00 14 */ stfs f0, 0x14(r29) +/* 80225FBC 00222F1C C0 1D 00 18 */ lfs f0, 0x18(r29) +/* 80225FC0 00222F20 EC 00 00 72 */ fmuls f0, f0, f1 +/* 80225FC4 00222F24 D0 1D 00 18 */ stfs f0, 0x18(r29) +/* 80225FC8 00222F28 C0 5E 00 2C */ lfs f2, 0x2c(r30) +/* 80225FCC 00222F2C C0 3E 00 1C */ lfs f1, 0x1c(r30) +/* 80225FD0 00222F30 C0 1E 00 0C */ lfs f0, 0xc(r30) +/* 80225FD4 00222F34 D0 1D 00 34 */ stfs f0, 0x34(r29) +/* 80225FD8 00222F38 D0 3D 00 38 */ stfs f1, 0x38(r29) +/* 80225FDC 00222F3C D0 5D 00 3C */ stfs f2, 0x3c(r29) +/* 80225FE0 00222F40 48 0E C1 49 */ bl FromMatrix__11CQuaternionFRC12CTransform4f +/* 80225FE4 00222F44 C0 01 00 08 */ lfs f0, 8(r1) +/* 80225FE8 00222F48 38 60 00 01 */ li r3, 1 +/* 80225FEC 00222F4C D0 1D 00 24 */ stfs f0, 0x24(r29) +/* 80225FF0 00222F50 80 81 00 0C */ lwz r4, 0xc(r1) +/* 80225FF4 00222F54 80 01 00 10 */ lwz r0, 0x10(r1) +/* 80225FF8 00222F58 90 9D 00 28 */ stw r4, 0x28(r29) +/* 80225FFC 00222F5C 90 1D 00 2C */ stw r0, 0x2c(r29) +/* 80226000 00222F60 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80226004 00222F64 90 1D 00 30 */ stw r0, 0x30(r29) +/* 80226008 00222F68 88 1D 00 44 */ lbz r0, 0x44(r29) +/* 8022600C 00222F6C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80226010 00222F70 98 1D 00 44 */ stb r0, 0x44(r29) +lbl_80226014: +/* 80226014 00222F74 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80226018 00222F78 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8022601C 00222F7C 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 80226020 00222F80 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 80226024 00222F84 7C 08 03 A6 */ mtlr r0 +/* 80226028 00222F88 38 21 00 40 */ addi r1, r1, 0x40 +/* 8022602C 00222F8C 4E 80 00 20 */ blr + +.global Solve__8CIkChainFR11CQuaternionR11CQuaternionRC9CVector3f +Solve__8CIkChainFR11CQuaternionR11CQuaternionRC9CVector3f: +/* 80226030 00222F90 94 21 FE 80 */ stwu r1, -0x180(r1) +/* 80226034 00222F94 7C 08 02 A6 */ mflr r0 +/* 80226038 00222F98 90 01 01 84 */ stw r0, 0x184(r1) +/* 8022603C 00222F9C DB E1 01 70 */ stfd f31, 0x170(r1) +/* 80226040 00222FA0 F3 E1 01 78 */ psq_st f31, 376(r1), 0, qr0 +/* 80226044 00222FA4 DB C1 01 60 */ stfd f30, 0x160(r1) +/* 80226048 00222FA8 F3 C1 01 68 */ psq_st f30, 360(r1), 0, qr0 +/* 8022604C 00222FAC DB A1 01 50 */ stfd f29, 0x150(r1) +/* 80226050 00222FB0 F3 A1 01 58 */ psq_st f29, 344(r1), 0, qr0 +/* 80226054 00222FB4 DB 81 01 40 */ stfd f28, 0x140(r1) +/* 80226058 00222FB8 F3 81 01 48 */ psq_st f28, 328(r1), 0, qr0 +/* 8022605C 00222FBC DB 61 01 30 */ stfd f27, 0x130(r1) +/* 80226060 00222FC0 F3 61 01 38 */ psq_st f27, 312(r1), 0, qr0 +/* 80226064 00222FC4 DB 41 01 20 */ stfd f26, 0x120(r1) +/* 80226068 00222FC8 F3 41 01 28 */ psq_st f26, 296(r1), 0, qr0 +/* 8022606C 00222FCC 93 E1 01 1C */ stw r31, 0x11c(r1) +/* 80226070 00222FD0 93 C1 01 18 */ stw r30, 0x118(r1) +/* 80226074 00222FD4 93 A1 01 14 */ stw r29, 0x114(r1) +/* 80226078 00222FD8 93 81 01 10 */ stw r28, 0x110(r1) +/* 8022607C 00222FDC 7C DF 33 78 */ mr r31, r6 +/* 80226080 00222FE0 7C 7C 1B 78 */ mr r28, r3 +/* 80226084 00222FE4 7C 9D 23 78 */ mr r29, r4 +/* 80226088 00222FE8 7C BE 2B 78 */ mr r30, r5 +/* 8022608C 00222FEC 7F E3 FB 78 */ mr r3, r31 +/* 80226090 00222FF0 48 0E E8 29 */ bl Magnitude__9CVector3fCFv +/* 80226094 00222FF4 FF E0 08 90 */ fmr f31, f1 +/* 80226098 00222FF8 C0 3C 00 1C */ lfs f1, 0x1c(r28) +/* 8022609C 00222FFC C0 02 B4 B0 */ lfs f0, lbl_805AD1D0@sda21(r2) +/* 802260A0 00223000 38 81 00 18 */ addi r4, r1, 0x18 +/* 802260A4 00223004 C0 7C 00 20 */ lfs f3, 0x20(r28) +/* 802260A8 00223008 EC 21 00 72 */ fmuls f1, f1, f1 +/* 802260AC 0022300C EF 5F 07 F2 */ fmuls f26, f31, f31 +/* 802260B0 00223010 38 6D 95 40 */ addi r3, r13, lbl_805A8100@sda21 +/* 802260B4 00223014 EF 60 07 F2 */ fmuls f27, f0, f31 +/* 802260B8 00223018 38 AD 95 44 */ addi r5, r13, lbl_805A8104@sda21 +/* 802260BC 0022301C EC 43 D0 FA */ fmadds f2, f3, f3, f26 +/* 802260C0 00223020 EC 1B 00 F2 */ fmuls f0, f27, f3 +/* 802260C4 00223024 EC 22 08 28 */ fsubs f1, f2, f1 +/* 802260C8 00223028 EC 01 00 24 */ fdivs f0, f1, f0 +/* 802260CC 0022302C D0 01 00 18 */ stfs f0, 0x18(r1) +/* 802260D0 00223030 4B DE 61 E5 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 802260D4 00223034 C0 23 00 00 */ lfs f1, 0(r3) +/* 802260D8 00223038 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 802260DC 0022303C 48 16 EB 51 */ bl acos +/* 802260E0 00223040 C0 1C 00 20 */ lfs f0, 0x20(r28) +/* 802260E4 00223044 FF A0 08 18 */ frsp f29, f1 +/* 802260E8 00223048 C0 5C 00 1C */ lfs f2, 0x1c(r28) +/* 802260EC 0022304C 38 81 00 14 */ addi r4, r1, 0x14 +/* 802260F0 00223050 EC 20 00 32 */ fmuls f1, f0, f0 +/* 802260F4 00223054 38 6D 95 48 */ addi r3, r13, lbl_805A8108@sda21 +/* 802260F8 00223058 EC 1B 00 B2 */ fmuls f0, f27, f2 +/* 802260FC 0022305C 38 AD 95 4C */ addi r5, r13, lbl_805A810C@sda21 +/* 80226100 00223060 EC 3A 08 28 */ fsubs f1, f26, f1 +/* 80226104 00223064 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 80226108 00223068 EC 01 00 24 */ fdivs f0, f1, f0 +/* 8022610C 0022306C D0 01 00 14 */ stfs f0, 0x14(r1) +/* 80226110 00223070 4B DE 61 A5 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 80226114 00223074 C0 23 00 00 */ lfs f1, 0(r3) +/* 80226118 00223078 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 8022611C 0022307C 48 16 EB 11 */ bl acos +/* 80226120 00223080 FF C0 08 18 */ frsp f30, f1 +/* 80226124 00223084 7F C4 F3 78 */ mr r4, r30 +/* 80226128 00223088 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 8022612C 0022308C 38 BC 00 10 */ addi r5, r28, 0x10 +/* 80226130 00223090 48 0E B1 35 */ bl Transform__11CQuaternionCFRC9CVector3f +/* 80226134 00223094 C3 41 00 C8 */ lfs f26, 0xc8(r1) +/* 80226138 00223098 38 61 01 00 */ addi r3, r1, 0x100 +/* 8022613C 0022309C C0 7C 00 08 */ lfs f3, 8(r28) +/* 80226140 002230A0 C3 81 00 CC */ lfs f28, 0xcc(r1) +/* 80226144 002230A4 C0 9C 00 0C */ lfs f4, 0xc(r28) +/* 80226148 002230A8 EC 1A 00 F2 */ fmuls f0, f26, f3 +/* 8022614C 002230AC C0 3C 00 04 */ lfs f1, 4(r28) +/* 80226150 002230B0 C3 61 00 D0 */ lfs f27, 0xd0(r1) +/* 80226154 002230B4 EC 5C 01 32 */ fmuls f2, f28, f4 +/* 80226158 002230B8 EC 01 07 38 */ fmsubs f0, f1, f28, f0 +/* 8022615C 002230BC EC 3B 00 72 */ fmuls f1, f27, f1 +/* 80226160 002230C0 EC 43 16 F8 */ fmsubs f2, f3, f27, f2 +/* 80226164 002230C4 D0 01 01 08 */ stfs f0, 0x108(r1) +/* 80226168 002230C8 EC 04 0E B8 */ fmsubs f0, f4, f26, f1 +/* 8022616C 002230CC D0 41 01 00 */ stfs f2, 0x100(r1) +/* 80226170 002230D0 D0 01 01 04 */ stfs f0, 0x104(r1) +/* 80226174 002230D4 48 0E E7 45 */ bl Magnitude__9CVector3fCFv +/* 80226178 002230D8 FC 00 08 18 */ frsp f0, f1 +/* 8022617C 002230DC C0 82 B4 AC */ lfs f4, lbl_805AD1CC@sda21(r2) +/* 80226180 002230E0 C0 61 01 00 */ lfs f3, 0x100(r1) +/* 80226184 002230E4 38 61 00 10 */ addi r3, r1, 0x10 +/* 80226188 002230E8 C0 41 01 04 */ lfs f2, 0x104(r1) +/* 8022618C 002230EC 38 8D 95 50 */ addi r4, r13, lbl_805A8110@sda21 +/* 80226190 002230F0 EC 84 00 24 */ fdivs f4, f4, f0 +/* 80226194 002230F4 C0 01 01 08 */ lfs f0, 0x108(r1) +/* 80226198 002230F8 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 8022619C 002230FC EC 63 01 32 */ fmuls f3, f3, f4 +/* 802261A0 00223100 EC 22 01 32 */ fmuls f1, f2, f4 +/* 802261A4 00223104 EC 00 01 32 */ fmuls f0, f0, f4 +/* 802261A8 00223108 D0 61 01 00 */ stfs f3, 0x100(r1) +/* 802261AC 0022310C D0 21 01 04 */ stfs f1, 0x104(r1) +/* 802261B0 00223110 D0 01 01 08 */ stfs f0, 0x108(r1) +/* 802261B4 00223114 4B E5 7C 2D */ bl "Min__5CMathFRCfRCf" +/* 802261B8 00223118 C0 23 00 00 */ lfs f1, 0(r3) +/* 802261BC 0022311C D0 21 00 10 */ stfs f1, 0x10(r1) +/* 802261C0 00223120 48 16 EA 8D */ bl asin +/* 802261C4 00223124 C0 1C 00 08 */ lfs f0, 8(r28) +/* 802261C8 00223128 FC 80 08 18 */ frsp f4, f1 +/* 802261CC 0022312C C0 5C 00 04 */ lfs f2, 4(r28) +/* 802261D0 00223130 EC 20 07 32 */ fmuls f1, f0, f28 +/* 802261D4 00223134 C0 7C 00 0C */ lfs f3, 0xc(r28) +/* 802261D8 00223138 C0 02 B4 A8 */ lfs f0, lbl_805AD1C8@sda21(r2) +/* 802261DC 0022313C EC 22 0E BA */ fmadds f1, f2, f26, f1 +/* 802261E0 00223140 EC 23 0E FA */ fmadds f1, f3, f27, f1 +/* 802261E4 00223144 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802261E8 00223148 40 80 00 0C */ bge lbl_802261F4 +/* 802261EC 0022314C C0 02 B4 B4 */ lfs f0, lbl_805AD1D4@sda21(r2) +/* 802261F0 00223150 EC 80 20 28 */ fsubs f4, f0, f4 +lbl_802261F4: +/* 802261F4 00223154 EC 7E E8 2A */ fadds f3, f30, f29 +/* 802261F8 00223158 C0 41 01 00 */ lfs f2, 0x100(r1) +/* 802261FC 0022315C C0 21 01 04 */ lfs f1, 0x104(r1) +/* 80226200 00223160 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 80226204 00223164 C0 01 01 08 */ lfs f0, 0x108(r1) +/* 80226208 00223168 38 81 00 AC */ addi r4, r1, 0xac +/* 8022620C 0022316C EC 63 20 28 */ fsubs f3, f3, f4 +/* 80226210 00223170 D0 41 00 AC */ stfs f2, 0xac(r1) +/* 80226214 00223174 38 A1 00 0C */ addi r5, r1, 0xc +/* 80226218 00223178 D0 21 00 B0 */ stfs f1, 0xb0(r1) +/* 8022621C 0022317C D0 61 00 0C */ stfs f3, 0xc(r1) +/* 80226220 00223180 D0 01 00 B4 */ stfs f0, 0xb4(r1) +/* 80226224 00223184 48 0E B0 D1 */ bl AxisAngle__11CQuaternionFRC13CUnitVector3fRC9CRelAngle +/* 80226228 00223188 C0 61 00 B8 */ lfs f3, 0xb8(r1) +/* 8022622C 0022318C 7F C5 F3 78 */ mr r5, r30 +/* 80226230 00223190 C0 41 00 BC */ lfs f2, 0xbc(r1) +/* 80226234 00223194 38 61 00 9C */ addi r3, r1, 0x9c +/* 80226238 00223198 C0 21 00 C0 */ lfs f1, 0xc0(r1) +/* 8022623C 0022319C 38 81 00 F0 */ addi r4, r1, 0xf0 +/* 80226240 002231A0 C0 01 00 C4 */ lfs f0, 0xc4(r1) +/* 80226244 002231A4 D0 61 00 F0 */ stfs f3, 0xf0(r1) +/* 80226248 002231A8 D0 41 00 F4 */ stfs f2, 0xf4(r1) +/* 8022624C 002231AC D0 21 00 F8 */ stfs f1, 0xf8(r1) +/* 80226250 002231B0 D0 01 00 FC */ stfs f0, 0xfc(r1) +/* 80226254 002231B4 48 0E AF 4D */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 80226258 002231B8 C0 01 00 9C */ lfs f0, 0x9c(r1) +/* 8022625C 002231BC 7F C4 F3 78 */ mr r4, r30 +/* 80226260 002231C0 38 61 00 60 */ addi r3, r1, 0x60 +/* 80226264 002231C4 38 BC 00 10 */ addi r5, r28, 0x10 +/* 80226268 002231C8 D0 1E 00 00 */ stfs f0, 0(r30) +/* 8022626C 002231CC 80 C1 00 A0 */ lwz r6, 0xa0(r1) +/* 80226270 002231D0 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 80226274 002231D4 90 DE 00 04 */ stw r6, 4(r30) +/* 80226278 002231D8 90 1E 00 08 */ stw r0, 8(r30) +/* 8022627C 002231DC 80 01 00 A8 */ lwz r0, 0xa8(r1) +/* 80226280 002231E0 90 1E 00 0C */ stw r0, 0xc(r30) +/* 80226284 002231E4 48 0E AF E1 */ bl Transform__11CQuaternionCFRC9CVector3f +/* 80226288 002231E8 C0 9C 00 20 */ lfs f4, 0x20(r28) +/* 8022628C 002231EC 7F A4 EB 78 */ mr r4, r29 +/* 80226290 002231F0 C0 41 00 68 */ lfs f2, 0x68(r1) +/* 80226294 002231F4 38 61 00 90 */ addi r3, r1, 0x90 +/* 80226298 002231F8 C0 21 00 60 */ lfs f1, 0x60(r1) +/* 8022629C 002231FC 38 A1 00 84 */ addi r5, r1, 0x84 +/* 802262A0 00223200 C0 01 00 64 */ lfs f0, 0x64(r1) +/* 802262A4 00223204 EC E4 00 B2 */ fmuls f7, f4, f2 +/* 802262A8 00223208 EC 64 00 72 */ fmuls f3, f4, f1 +/* 802262AC 0022320C C0 DC 00 1C */ lfs f6, 0x1c(r28) +/* 802262B0 00223210 C0 3C 00 08 */ lfs f1, 8(r28) +/* 802262B4 00223214 EC 44 00 32 */ fmuls f2, f4, f0 +/* 802262B8 00223218 C0 1C 00 0C */ lfs f0, 0xc(r28) +/* 802262BC 0022321C EC A6 00 72 */ fmuls f5, f6, f1 +/* 802262C0 00223220 EC 86 00 32 */ fmuls f4, f6, f0 +/* 802262C4 00223224 C0 1C 00 04 */ lfs f0, 4(r28) +/* 802262C8 00223228 D0 61 00 6C */ stfs f3, 0x6c(r1) +/* 802262CC 0022322C EC 26 00 32 */ fmuls f1, f6, f0 +/* 802262D0 00223230 EC C5 10 2A */ fadds f6, f5, f2 +/* 802262D4 00223234 D0 41 00 70 */ stfs f2, 0x70(r1) +/* 802262D8 00223238 EC 44 38 2A */ fadds f2, f4, f7 +/* 802262DC 0022323C EC 01 18 2A */ fadds f0, f1, f3 +/* 802262E0 00223240 D0 E1 00 74 */ stfs f7, 0x74(r1) +/* 802262E4 00223244 D0 21 00 78 */ stfs f1, 0x78(r1) +/* 802262E8 00223248 D0 A1 00 7C */ stfs f5, 0x7c(r1) +/* 802262EC 0022324C D0 81 00 80 */ stfs f4, 0x80(r1) +/* 802262F0 00223250 D0 01 00 84 */ stfs f0, 0x84(r1) +/* 802262F4 00223254 D0 C1 00 88 */ stfs f6, 0x88(r1) +/* 802262F8 00223258 D0 41 00 8C */ stfs f2, 0x8c(r1) +/* 802262FC 0022325C 48 0E AF 69 */ bl Transform__11CQuaternionCFRC9CVector3f +/* 80226300 00223260 C0 41 00 90 */ lfs f2, 0x90(r1) +/* 80226304 00223264 7F A4 EB 78 */ mr r4, r29 +/* 80226308 00223268 C0 21 00 94 */ lfs f1, 0x94(r1) +/* 8022630C 0022326C 7F E5 FB 78 */ mr r5, r31 +/* 80226310 00223270 C0 01 00 98 */ lfs f0, 0x98(r1) +/* 80226314 00223274 38 61 00 54 */ addi r3, r1, 0x54 +/* 80226318 00223278 D0 41 00 E4 */ stfs f2, 0xe4(r1) +/* 8022631C 0022327C D0 21 00 E8 */ stfs f1, 0xe8(r1) +/* 80226320 00223280 D0 01 00 EC */ stfs f0, 0xec(r1) +/* 80226324 00223284 48 0E AF 41 */ bl Transform__11CQuaternionCFRC9CVector3f +/* 80226328 00223288 C0 02 B4 AC */ lfs f0, lbl_805AD1CC@sda21(r2) +/* 8022632C 0022328C 38 61 00 48 */ addi r3, r1, 0x48 +/* 80226330 00223290 C0 41 00 54 */ lfs f2, 0x54(r1) +/* 80226334 00223294 38 81 00 E4 */ addi r4, r1, 0xe4 +/* 80226338 00223298 EC 60 F8 24 */ fdivs f3, f0, f31 +/* 8022633C 0022329C C0 21 00 58 */ lfs f1, 0x58(r1) +/* 80226340 002232A0 C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 80226344 002232A4 EF A3 00 B2 */ fmuls f29, f3, f2 +/* 80226348 002232A8 EF C3 00 72 */ fmuls f30, f3, f1 +/* 8022634C 002232AC EF E3 00 32 */ fmuls f31, f3, f0 +/* 80226350 002232B0 48 0E E5 01 */ bl AsNormalized__9CVector3fCFv +/* 80226354 002232B4 C0 61 00 4C */ lfs f3, 0x4c(r1) +/* 80226358 002232B8 38 61 01 00 */ addi r3, r1, 0x100 +/* 8022635C 002232BC C0 81 00 50 */ lfs f4, 0x50(r1) +/* 80226360 002232C0 C0 A1 00 48 */ lfs f5, 0x48(r1) +/* 80226364 002232C4 EC 5D 00 F2 */ fmuls f2, f29, f3 +/* 80226368 002232C8 EC 3E 01 32 */ fmuls f1, f30, f4 +/* 8022636C 002232CC EC 1F 01 72 */ fmuls f0, f31, f5 +/* 80226370 002232D0 EC 45 17 B8 */ fmsubs f2, f5, f30, f2 +/* 80226374 002232D4 EC 23 0F F8 */ fmsubs f1, f3, f31, f1 +/* 80226378 002232D8 EC 04 07 78 */ fmsubs f0, f4, f29, f0 +/* 8022637C 002232DC D0 41 01 08 */ stfs f2, 0x108(r1) +/* 80226380 002232E0 D0 21 01 00 */ stfs f1, 0x100(r1) +/* 80226384 002232E4 D0 01 01 04 */ stfs f0, 0x104(r1) +/* 80226388 002232E8 48 0E E5 31 */ bl Magnitude__9CVector3fCFv +/* 8022638C 002232EC FC 00 08 18 */ frsp f0, f1 +/* 80226390 002232F0 C0 82 B4 AC */ lfs f4, lbl_805AD1CC@sda21(r2) +/* 80226394 002232F4 C0 61 01 00 */ lfs f3, 0x100(r1) +/* 80226398 002232F8 38 61 00 10 */ addi r3, r1, 0x10 +/* 8022639C 002232FC C0 41 01 04 */ lfs f2, 0x104(r1) +/* 802263A0 00223300 38 8D 95 54 */ addi r4, r13, lbl_805A8114@sda21 +/* 802263A4 00223304 EC 84 00 24 */ fdivs f4, f4, f0 +/* 802263A8 00223308 C0 01 01 08 */ lfs f0, 0x108(r1) +/* 802263AC 0022330C D0 21 00 10 */ stfs f1, 0x10(r1) +/* 802263B0 00223310 EC 63 01 32 */ fmuls f3, f3, f4 +/* 802263B4 00223314 EC 22 01 32 */ fmuls f1, f2, f4 +/* 802263B8 00223318 EC 00 01 32 */ fmuls f0, f0, f4 +/* 802263BC 0022331C D0 61 01 00 */ stfs f3, 0x100(r1) +/* 802263C0 00223320 D0 21 01 04 */ stfs f1, 0x104(r1) +/* 802263C4 00223324 D0 01 01 08 */ stfs f0, 0x108(r1) +/* 802263C8 00223328 4B E5 7A 19 */ bl "Min__5CMathFRCfRCf" +/* 802263CC 0022332C C0 23 00 00 */ lfs f1, 0(r3) +/* 802263D0 00223330 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 802263D4 00223334 48 16 E8 79 */ bl asin +/* 802263D8 00223338 C0 01 00 E8 */ lfs f0, 0xe8(r1) +/* 802263DC 0022333C FC 80 08 18 */ frsp f4, f1 +/* 802263E0 00223340 C0 41 00 E4 */ lfs f2, 0xe4(r1) +/* 802263E4 00223344 EC 20 07 B2 */ fmuls f1, f0, f30 +/* 802263E8 00223348 C0 61 00 EC */ lfs f3, 0xec(r1) +/* 802263EC 0022334C C0 02 B4 A8 */ lfs f0, lbl_805AD1C8@sda21(r2) +/* 802263F0 00223350 EC 22 0F 7A */ fmadds f1, f2, f29, f1 +/* 802263F4 00223354 EC 23 0F FA */ fmadds f1, f3, f31, f1 +/* 802263F8 00223358 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802263FC 0022335C 40 80 00 0C */ bge lbl_80226408 +/* 80226400 00223360 C0 02 B4 B4 */ lfs f0, lbl_805AD1D4@sda21(r2) +/* 80226404 00223364 EC 80 20 28 */ fsubs f4, f0, f4 +lbl_80226408: +/* 80226408 00223368 C0 41 01 00 */ lfs f2, 0x100(r1) +/* 8022640C 0022336C 38 61 00 38 */ addi r3, r1, 0x38 +/* 80226410 00223370 C0 21 01 04 */ lfs f1, 0x104(r1) +/* 80226414 00223374 38 81 00 2C */ addi r4, r1, 0x2c +/* 80226418 00223378 C0 01 01 08 */ lfs f0, 0x108(r1) +/* 8022641C 0022337C 38 A1 00 08 */ addi r5, r1, 8 +/* 80226420 00223380 D0 81 00 08 */ stfs f4, 8(r1) +/* 80226424 00223384 D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 80226428 00223388 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 8022642C 0022338C D0 01 00 34 */ stfs f0, 0x34(r1) +/* 80226430 00223390 48 0E AE C5 */ bl AxisAngle__11CQuaternionFRC13CUnitVector3fRC9CRelAngle +/* 80226434 00223394 C0 61 00 38 */ lfs f3, 0x38(r1) +/* 80226438 00223398 7F A5 EB 78 */ mr r5, r29 +/* 8022643C 0022339C C0 41 00 3C */ lfs f2, 0x3c(r1) +/* 80226440 002233A0 38 61 00 1C */ addi r3, r1, 0x1c +/* 80226444 002233A4 C0 21 00 40 */ lfs f1, 0x40(r1) +/* 80226448 002233A8 38 81 00 D4 */ addi r4, r1, 0xd4 +/* 8022644C 002233AC C0 01 00 44 */ lfs f0, 0x44(r1) +/* 80226450 002233B0 D0 61 00 D4 */ stfs f3, 0xd4(r1) +/* 80226454 002233B4 D0 41 00 D8 */ stfs f2, 0xd8(r1) +/* 80226458 002233B8 D0 21 00 DC */ stfs f1, 0xdc(r1) +/* 8022645C 002233BC D0 01 00 E0 */ stfs f0, 0xe0(r1) +/* 80226460 002233C0 48 0E AD 41 */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 80226464 002233C4 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 80226468 002233C8 D0 1D 00 00 */ stfs f0, 0(r29) +/* 8022646C 002233CC 80 61 00 20 */ lwz r3, 0x20(r1) +/* 80226470 002233D0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80226474 002233D4 90 7D 00 04 */ stw r3, 4(r29) +/* 80226478 002233D8 90 1D 00 08 */ stw r0, 8(r29) +/* 8022647C 002233DC 80 01 00 28 */ lwz r0, 0x28(r1) +/* 80226480 002233E0 90 1D 00 0C */ stw r0, 0xc(r29) +/* 80226484 002233E4 E3 E1 01 78 */ psq_l f31, 376(r1), 0, qr0 +/* 80226488 002233E8 CB E1 01 70 */ lfd f31, 0x170(r1) +/* 8022648C 002233EC E3 C1 01 68 */ psq_l f30, 360(r1), 0, qr0 +/* 80226490 002233F0 CB C1 01 60 */ lfd f30, 0x160(r1) +/* 80226494 002233F4 E3 A1 01 58 */ psq_l f29, 344(r1), 0, qr0 +/* 80226498 002233F8 CB A1 01 50 */ lfd f29, 0x150(r1) +/* 8022649C 002233FC E3 81 01 48 */ psq_l f28, 328(r1), 0, qr0 +/* 802264A0 00223400 CB 81 01 40 */ lfd f28, 0x140(r1) +/* 802264A4 00223404 E3 61 01 38 */ psq_l f27, 312(r1), 0, qr0 +/* 802264A8 00223408 CB 61 01 30 */ lfd f27, 0x130(r1) +/* 802264AC 0022340C E3 41 01 28 */ psq_l f26, 296(r1), 0, qr0 +/* 802264B0 00223410 CB 41 01 20 */ lfd f26, 0x120(r1) +/* 802264B4 00223414 83 E1 01 1C */ lwz r31, 0x11c(r1) +/* 802264B8 00223418 83 C1 01 18 */ lwz r30, 0x118(r1) +/* 802264BC 0022341C 83 A1 01 14 */ lwz r29, 0x114(r1) +/* 802264C0 00223420 80 01 01 84 */ lwz r0, 0x184(r1) +/* 802264C4 00223424 83 81 01 10 */ lwz r28, 0x110(r1) +/* 802264C8 00223428 7C 08 03 A6 */ mtlr r0 +/* 802264CC 0022342C 38 21 01 80 */ addi r1, r1, 0x180 +/* 802264D0 00223430 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CInGameTweakManager.s b/asm/Kyoto_CWD/CInGameTweakManager.s new file mode 100644 index 00000000..c4955f61 --- /dev/null +++ b/asm/Kyoto_CWD/CInGameTweakManager.s @@ -0,0 +1,1412 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global sub_8021c164 +sub_8021c164: +/* 8021C164 002190C4 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 8021C168 002190C8 7C 08 02 A6 */ mflr r0 +/* 8021C16C 002190CC 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 8021C170 002190D0 BE E1 00 CC */ stmw r23, 0xcc(r1) +/* 8021C174 002190D4 7C 79 1B 78 */ mr r25, r3 +/* 8021C178 002190D8 38 61 00 90 */ addi r3, r1, 0x90 +/* 8021C17C 002190DC 48 00 04 A9 */ bl sub_8021c624 +/* 8021C180 002190E0 80 01 00 94 */ lwz r0, 0x94(r1) +/* 8021C184 002190E4 80 61 00 98 */ lwz r3, 0x98(r1) +/* 8021C188 002190E8 2C 00 00 00 */ cmpwi r0, 0 +/* 8021C18C 002190EC 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 8021C190 002190F0 90 61 00 B8 */ stw r3, 0xb8(r1) +/* 8021C194 002190F4 40 82 00 18 */ bne lbl_8021C1AC +/* 8021C198 002190F8 2C 03 00 00 */ cmpwi r3, 0 +/* 8021C19C 002190FC 40 82 00 10 */ bne lbl_8021C1AC +/* 8021C1A0 00219100 38 00 00 00 */ li r0, 0 +/* 8021C1A4 00219104 90 01 00 BC */ stw r0, 0xbc(r1) +/* 8021C1A8 00219108 48 00 00 BC */ b lbl_8021C264 +lbl_8021C1AC: +/* 8021C1AC 0021910C 80 01 00 B8 */ lwz r0, 0xb8(r1) +/* 8021C1B0 00219110 1C 60 00 48 */ mulli r3, r0, 0x48 +/* 8021C1B4 00219114 2C 03 00 00 */ cmpwi r3, 0 +/* 8021C1B8 00219118 40 82 00 10 */ bne lbl_8021C1C8 +/* 8021C1BC 0021911C 38 00 00 00 */ li r0, 0 +/* 8021C1C0 00219120 90 01 00 BC */ stw r0, 0xbc(r1) +/* 8021C1C4 00219124 48 00 00 1C */ b lbl_8021C1E0 +lbl_8021C1C8: +/* 8021C1C8 00219128 3C 80 80 3D */ lis r4, lbl_803D3038@ha +/* 8021C1CC 0021912C 38 A0 00 00 */ li r5, 0 +/* 8021C1D0 00219130 38 84 30 38 */ addi r4, r4, lbl_803D3038@l +/* 8021C1D4 00219134 38 84 00 1B */ addi r4, r4, 0x1b +/* 8021C1D8 00219138 48 0F 96 41 */ bl __nwa__FUlPCcPCc +/* 8021C1DC 0021913C 90 61 00 BC */ stw r3, 0xbc(r1) +lbl_8021C1E0: +/* 8021C1E0 00219140 83 61 00 B4 */ lwz r27, 0xb4(r1) +/* 8021C1E4 00219144 3A E0 00 00 */ li r23, 0 +/* 8021C1E8 00219148 83 41 00 9C */ lwz r26, 0x9c(r1) +/* 8021C1EC 0021914C 83 01 00 BC */ lwz r24, 0xbc(r1) +/* 8021C1F0 00219150 48 00 00 6C */ b lbl_8021C25C +lbl_8021C1F4: +/* 8021C1F4 00219154 28 18 00 00 */ cmplwi r24, 0 +/* 8021C1F8 00219158 41 82 00 58 */ beq lbl_8021C250 +/* 8021C1FC 0021915C 80 1A 00 00 */ lwz r0, 0(r26) +/* 8021C200 00219160 38 78 00 04 */ addi r3, r24, 4 +/* 8021C204 00219164 38 9A 00 04 */ addi r4, r26, 4 +/* 8021C208 00219168 90 18 00 00 */ stw r0, 0(r24) +/* 8021C20C 0021916C 48 12 1F 55 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8021C210 00219170 38 78 00 14 */ addi r3, r24, 0x14 +/* 8021C214 00219174 38 9A 00 14 */ addi r4, r26, 0x14 +/* 8021C218 00219178 48 12 1F 49 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8021C21C 0021917C C0 1A 00 24 */ lfs f0, 0x24(r26) +/* 8021C220 00219180 38 78 00 30 */ addi r3, r24, 0x30 +/* 8021C224 00219184 38 9A 00 30 */ addi r4, r26, 0x30 +/* 8021C228 00219188 D0 18 00 24 */ stfs f0, 0x24(r24) +/* 8021C22C 0021918C C0 1A 00 28 */ lfs f0, 0x28(r26) +/* 8021C230 00219190 D0 18 00 28 */ stfs f0, 0x28(r24) +/* 8021C234 00219194 C0 1A 00 2C */ lfs f0, 0x2c(r26) +/* 8021C238 00219198 D0 18 00 2C */ stfs f0, 0x2c(r24) +/* 8021C23C 0021919C 48 12 1F 25 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8021C240 002191A0 80 1A 00 40 */ lwz r0, 0x40(r26) +/* 8021C244 002191A4 90 18 00 40 */ stw r0, 0x40(r24) +/* 8021C248 002191A8 80 1A 00 44 */ lwz r0, 0x44(r26) +/* 8021C24C 002191AC 90 18 00 44 */ stw r0, 0x44(r24) +lbl_8021C250: +/* 8021C250 002191B0 3B 18 00 48 */ addi r24, r24, 0x48 +/* 8021C254 002191B4 3A F7 00 01 */ addi r23, r23, 1 +/* 8021C258 002191B8 3B 5A 00 48 */ addi r26, r26, 0x48 +lbl_8021C25C: +/* 8021C25C 002191BC 7C 17 D8 00 */ cmpw r23, r27 +/* 8021C260 002191C0 41 80 FF 94 */ blt lbl_8021C1F4 +lbl_8021C264: +/* 8021C264 002191C4 80 01 00 94 */ lwz r0, 0x94(r1) +/* 8021C268 002191C8 82 E1 00 9C */ lwz r23, 0x9c(r1) +/* 8021C26C 002191CC 1C 00 00 48 */ mulli r0, r0, 0x48 +/* 8021C270 002191D0 92 E1 00 2C */ stw r23, 0x2c(r1) +/* 8021C274 002191D4 7F 17 02 14 */ add r24, r23, r0 +/* 8021C278 002191D8 92 E1 00 28 */ stw r23, 0x28(r1) +/* 8021C27C 002191DC 93 01 00 34 */ stw r24, 0x34(r1) +/* 8021C280 002191E0 93 01 00 30 */ stw r24, 0x30(r1) +/* 8021C284 002191E4 48 00 00 44 */ b lbl_8021C2C8 +lbl_8021C288: +/* 8021C288 002191E8 28 17 00 00 */ cmplwi r23, 0 +/* 8021C28C 002191EC 41 82 00 38 */ beq lbl_8021C2C4 +/* 8021C290 002191F0 34 17 00 24 */ addic. r0, r23, 0x24 +/* 8021C294 002191F4 41 82 00 10 */ beq lbl_8021C2A4 +/* 8021C298 002191F8 34 77 00 30 */ addic. r3, r23, 0x30 +/* 8021C29C 002191FC 41 82 00 08 */ beq lbl_8021C2A4 +/* 8021C2A0 00219200 48 12 18 41 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8021C2A4: +/* 8021C2A4 00219204 34 17 00 14 */ addic. r0, r23, 0x14 +/* 8021C2A8 00219208 41 82 00 0C */ beq lbl_8021C2B4 +/* 8021C2AC 0021920C 38 77 00 14 */ addi r3, r23, 0x14 +/* 8021C2B0 00219210 48 12 18 31 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8021C2B4: +/* 8021C2B4 00219214 34 17 00 04 */ addic. r0, r23, 4 +/* 8021C2B8 00219218 41 82 00 0C */ beq lbl_8021C2C4 +/* 8021C2BC 0021921C 38 77 00 04 */ addi r3, r23, 4 +/* 8021C2C0 00219220 48 12 18 21 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8021C2C4: +/* 8021C2C4 00219224 3A F7 00 48 */ addi r23, r23, 0x48 +lbl_8021C2C8: +/* 8021C2C8 00219228 7C 17 C0 40 */ cmplw r23, r24 +/* 8021C2CC 0021922C 40 82 FF BC */ bne lbl_8021C288 +/* 8021C2D0 00219230 80 61 00 9C */ lwz r3, 0x9c(r1) +/* 8021C2D4 00219234 28 03 00 00 */ cmplwi r3, 0 +/* 8021C2D8 00219238 41 82 00 08 */ beq lbl_8021C2E0 +/* 8021C2DC 0021923C 48 0F 96 55 */ bl Free__7CMemoryFPCv +lbl_8021C2E0: +/* 8021C2E0 00219240 38 00 00 00 */ li r0, 0 +/* 8021C2E4 00219244 80 81 00 B4 */ lwz r4, 0xb4(r1) +/* 8021C2E8 00219248 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 8021C2EC 0021924C 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 8021C2F0 00219250 90 01 00 A8 */ stw r0, 0xa8(r1) +/* 8021C2F4 00219254 90 01 00 AC */ stw r0, 0xac(r1) +/* 8021C2F8 00219258 4B E4 78 2D */ bl "reserve__Q24rstl37vectorFi" +/* 8021C2FC 0021925C 3B E1 00 80 */ addi r31, r1, 0x80 +/* 8021C300 00219260 3C 60 80 3D */ lis r3, lbl_803D3038@ha +/* 8021C304 00219264 93 E1 00 68 */ stw r31, 0x68(r1) +/* 8021C308 00219268 3B C3 30 38 */ addi r30, r3, lbl_803D3038@l +/* 8021C30C 0021926C 83 A1 00 BC */ lwz r29, 0xbc(r1) +/* 8021C310 00219270 3B 40 00 00 */ li r26, 0 +/* 8021C314 00219274 93 E1 00 78 */ stw r31, 0x78(r1) +/* 8021C318 00219278 3B 60 00 00 */ li r27, 0 +/* 8021C31C 0021927C 83 01 00 B4 */ lwz r24, 0xb4(r1) +/* 8021C320 00219280 93 E1 00 60 */ stw r31, 0x60(r1) +/* 8021C324 00219284 93 E1 00 70 */ stw r31, 0x70(r1) +/* 8021C328 00219288 48 00 01 8C */ b lbl_8021C4B4 +lbl_8021C32C: +/* 8021C32C 0021928C 7F 9D DA 14 */ add r28, r29, r27 +/* 8021C330 00219290 38 61 00 80 */ addi r3, r1, 0x80 +/* 8021C334 00219294 38 9E 00 22 */ addi r4, r30, 0x22 +/* 8021C338 00219298 4B DE 89 81 */ bl string_l__4rstlFPCc +/* 8021C33C 0021929C 80 1C 00 0C */ lwz r0, 0xc(r28) +/* 8021C340 002192A0 38 FC 00 04 */ addi r7, r28, 4 +/* 8021C344 002192A4 38 60 00 00 */ li r3, 0 +/* 8021C348 002192A8 80 C1 00 88 */ lwz r6, 0x88(r1) +/* 8021C34C 002192AC 6C 05 80 00 */ xoris r5, r0, 0x8000 +/* 8021C350 002192B0 7C 80 00 D0 */ neg r4, r0 +/* 8021C354 002192B4 7C 84 28 14 */ addc r4, r4, r5 +/* 8021C358 002192B8 90 E1 00 48 */ stw r7, 0x48(r1) +/* 8021C35C 002192BC 7C 84 21 10 */ subfe r4, r4, r4 +/* 8021C360 002192C0 7C 08 20 38 */ and r8, r0, r4 +/* 8021C364 002192C4 90 61 00 4C */ stw r3, 0x4c(r1) +/* 8021C368 002192C8 7D 09 43 78 */ mr r9, r8 +/* 8021C36C 002192CC 90 E1 00 40 */ stw r7, 0x40(r1) +/* 8021C370 002192D0 91 01 00 44 */ stw r8, 0x44(r1) +/* 8021C374 002192D4 90 E1 00 38 */ stw r7, 0x38(r1) +/* 8021C378 002192D8 91 01 00 3C */ stw r8, 0x3c(r1) +/* 8021C37C 002192DC 90 E1 00 58 */ stw r7, 0x58(r1) +/* 8021C380 002192E0 90 01 00 5C */ stw r0, 0x5c(r1) +/* 8021C384 002192E4 90 E1 00 50 */ stw r7, 0x50(r1) +/* 8021C388 002192E8 90 01 00 54 */ stw r0, 0x54(r1) +/* 8021C38C 002192EC 90 61 00 6C */ stw r3, 0x6c(r1) +/* 8021C390 002192F0 90 61 00 64 */ stw r3, 0x64(r1) +/* 8021C394 002192F4 90 C1 00 7C */ stw r6, 0x7c(r1) +/* 8021C398 002192F8 90 C1 00 74 */ stw r6, 0x74(r1) +/* 8021C39C 002192FC 48 00 00 5C */ b lbl_8021C3F8 +lbl_8021C3A0: +/* 8021C3A0 00219300 39 40 00 00 */ li r10, 0 +/* 8021C3A4 00219304 48 00 00 2C */ b lbl_8021C3D0 +lbl_8021C3A8: +/* 8021C3A8 00219308 80 A7 00 00 */ lwz r5, 0(r7) +/* 8021C3AC 0021930C 80 9F 00 00 */ lwz r4, 0(r31) +/* 8021C3B0 00219310 7C A5 48 AE */ lbzx r5, r5, r9 +/* 8021C3B4 00219314 7C 84 50 AE */ lbzx r4, r4, r10 +/* 8021C3B8 00219318 7C A5 07 74 */ extsb r5, r5 +/* 8021C3BC 0021931C 7C 84 07 74 */ extsb r4, r4 +/* 8021C3C0 00219320 7C 05 20 00 */ cmpw r5, r4 +/* 8021C3C4 00219324 40 82 00 08 */ bne lbl_8021C3CC +/* 8021C3C8 00219328 48 00 00 54 */ b lbl_8021C41C +lbl_8021C3CC: +/* 8021C3CC 0021932C 39 4A 00 01 */ addi r10, r10, 1 +lbl_8021C3D0: +/* 8021C3D0 00219330 7C 1F F8 40 */ cmplw r31, r31 +/* 8021C3D4 00219334 38 80 00 00 */ li r4, 0 +/* 8021C3D8 00219338 40 82 00 0C */ bne lbl_8021C3E4 +/* 8021C3DC 0021933C 7C 0A 30 00 */ cmpw r10, r6 +/* 8021C3E0 00219340 41 82 00 08 */ beq lbl_8021C3E8 +lbl_8021C3E4: +/* 8021C3E4 00219344 38 80 00 01 */ li r4, 1 +lbl_8021C3E8: +/* 8021C3E8 00219348 54 84 06 3F */ clrlwi. r4, r4, 0x18 +/* 8021C3EC 0021934C 40 82 FF BC */ bne lbl_8021C3A8 +/* 8021C3F0 00219350 39 29 00 01 */ addi r9, r9, 1 +/* 8021C3F4 00219354 38 63 00 01 */ addi r3, r3, 1 +lbl_8021C3F8: +/* 8021C3F8 00219358 7C 07 38 40 */ cmplw r7, r7 +/* 8021C3FC 0021935C 38 80 00 00 */ li r4, 0 +/* 8021C400 00219360 40 82 00 0C */ bne lbl_8021C40C +/* 8021C404 00219364 7C 09 00 00 */ cmpw r9, r0 +/* 8021C408 00219368 41 82 00 08 */ beq lbl_8021C410 +lbl_8021C40C: +/* 8021C40C 0021936C 38 80 00 01 */ li r4, 1 +lbl_8021C410: +/* 8021C410 00219370 54 84 06 3F */ clrlwi. r4, r4, 0x18 +/* 8021C414 00219374 40 82 FF 8C */ bne lbl_8021C3A0 +/* 8021C418 00219378 38 60 FF FF */ li r3, -1 +lbl_8021C41C: +/* 8021C41C 0021937C 2C 03 FF FF */ cmpwi r3, -1 +/* 8021C420 00219380 7C 83 42 14 */ add r4, r3, r8 +/* 8021C424 00219384 40 82 00 08 */ bne lbl_8021C42C +/* 8021C428 00219388 7C 64 1B 78 */ mr r4, r3 +lbl_8021C42C: +/* 8021C42C 0021938C 20 64 FF FF */ subfic r3, r4, -1 +/* 8021C430 00219390 38 04 00 01 */ addi r0, r4, 1 +/* 8021C434 00219394 7C 60 03 78 */ or r0, r3, r0 +/* 8021C438 00219398 38 61 00 80 */ addi r3, r1, 0x80 +/* 8021C43C 0021939C 54 17 0F FE */ srwi r23, r0, 0x1f +/* 8021C440 002193A0 48 12 16 A1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8021C444 002193A4 28 17 00 00 */ cmplwi r23, 0 +/* 8021C448 002193A8 41 82 00 64 */ beq lbl_8021C4AC +/* 8021C44C 002193AC 80 7C 00 40 */ lwz r3, 0x40(r28) +/* 8021C450 002193B0 3C 03 00 01 */ addis r0, r3, 1 +/* 8021C454 002193B4 28 00 FF FF */ cmplwi r0, 0xffff +/* 8021C458 002193B8 41 82 00 54 */ beq lbl_8021C4AC +/* 8021C45C 002193BC 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 8021C460 002193C0 80 A1 00 A8 */ lwz r5, 0xa8(r1) +/* 8021C464 002193C4 7C 00 28 00 */ cmpw r0, r5 +/* 8021C468 002193C8 41 80 00 1C */ blt lbl_8021C484 +/* 8021C46C 002193CC 2C 05 00 00 */ cmpwi r5, 0 +/* 8021C470 002193D0 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 8021C474 002193D4 38 80 00 04 */ li r4, 4 +/* 8021C478 002193D8 41 82 00 08 */ beq lbl_8021C480 +/* 8021C47C 002193DC 54 A4 08 3C */ slwi r4, r5, 1 +lbl_8021C480: +/* 8021C480 002193E0 4B E4 76 A5 */ bl "reserve__Q24rstl37vectorFi" +lbl_8021C484: +/* 8021C484 002193E4 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 8021C488 002193E8 80 61 00 AC */ lwz r3, 0xac(r1) +/* 8021C48C 002193EC 54 00 10 3A */ slwi r0, r0, 2 +/* 8021C490 002193F0 7C 63 02 15 */ add. r3, r3, r0 +/* 8021C494 002193F4 41 82 00 0C */ beq lbl_8021C4A0 +/* 8021C498 002193F8 80 1C 00 40 */ lwz r0, 0x40(r28) +/* 8021C49C 002193FC 90 03 00 00 */ stw r0, 0(r3) +lbl_8021C4A0: +/* 8021C4A0 00219400 80 61 00 A4 */ lwz r3, 0xa4(r1) +/* 8021C4A4 00219404 38 03 00 01 */ addi r0, r3, 1 +/* 8021C4A8 00219408 90 01 00 A4 */ stw r0, 0xa4(r1) +lbl_8021C4AC: +/* 8021C4AC 0021940C 3B 7B 00 48 */ addi r27, r27, 0x48 +/* 8021C4B0 00219410 3B 5A 00 01 */ addi r26, r26, 1 +lbl_8021C4B4: +/* 8021C4B4 00219414 7C 1A C0 00 */ cmpw r26, r24 +/* 8021C4B8 00219418 41 80 FE 74 */ blt lbl_8021C32C +/* 8021C4BC 0021941C 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 8021C4C0 00219420 90 19 00 04 */ stw r0, 4(r25) +/* 8021C4C4 00219424 80 01 00 A8 */ lwz r0, 0xa8(r1) +/* 8021C4C8 00219428 90 19 00 08 */ stw r0, 8(r25) +/* 8021C4CC 0021942C 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 8021C4D0 00219430 2C 00 00 00 */ cmpwi r0, 0 +/* 8021C4D4 00219434 40 82 00 1C */ bne lbl_8021C4F0 +/* 8021C4D8 00219438 80 01 00 A8 */ lwz r0, 0xa8(r1) +/* 8021C4DC 0021943C 2C 00 00 00 */ cmpwi r0, 0 +/* 8021C4E0 00219440 40 82 00 10 */ bne lbl_8021C4F0 +/* 8021C4E4 00219444 38 00 00 00 */ li r0, 0 +/* 8021C4E8 00219448 90 19 00 0C */ stw r0, 0xc(r25) +/* 8021C4EC 0021944C 48 00 00 68 */ b lbl_8021C554 +lbl_8021C4F0: +/* 8021C4F0 00219450 80 19 00 08 */ lwz r0, 8(r25) +/* 8021C4F4 00219454 54 03 10 3B */ rlwinm. r3, r0, 2, 0, 0x1d +/* 8021C4F8 00219458 40 82 00 10 */ bne lbl_8021C508 +/* 8021C4FC 0021945C 38 00 00 00 */ li r0, 0 +/* 8021C500 00219460 90 19 00 0C */ stw r0, 0xc(r25) +/* 8021C504 00219464 48 00 00 1C */ b lbl_8021C520 +lbl_8021C508: +/* 8021C508 00219468 3C 80 80 3D */ lis r4, lbl_803D3038@ha +/* 8021C50C 0021946C 38 A0 00 00 */ li r5, 0 +/* 8021C510 00219470 38 84 30 38 */ addi r4, r4, lbl_803D3038@l +/* 8021C514 00219474 38 84 00 1B */ addi r4, r4, 0x1b +/* 8021C518 00219478 48 0F 93 01 */ bl __nwa__FUlPCcPCc +/* 8021C51C 0021947C 90 79 00 0C */ stw r3, 0xc(r25) +lbl_8021C520: +/* 8021C520 00219480 80 19 00 04 */ lwz r0, 4(r25) +/* 8021C524 00219484 80 81 00 AC */ lwz r4, 0xac(r1) +/* 8021C528 00219488 80 79 00 0C */ lwz r3, 0xc(r25) +/* 8021C52C 0021948C 7C 09 03 A6 */ mtctr r0 +/* 8021C530 00219490 2C 00 00 00 */ cmpwi r0, 0 +/* 8021C534 00219494 40 81 00 20 */ ble lbl_8021C554 +lbl_8021C538: +/* 8021C538 00219498 28 03 00 00 */ cmplwi r3, 0 +/* 8021C53C 0021949C 41 82 00 0C */ beq lbl_8021C548 +/* 8021C540 002194A0 80 04 00 00 */ lwz r0, 0(r4) +/* 8021C544 002194A4 90 03 00 00 */ stw r0, 0(r3) +lbl_8021C548: +/* 8021C548 002194A8 38 63 00 04 */ addi r3, r3, 4 +/* 8021C54C 002194AC 38 84 00 04 */ addi r4, r4, 4 +/* 8021C550 002194B0 42 00 FF E8 */ bdnz lbl_8021C538 +lbl_8021C554: +/* 8021C554 002194B4 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 8021C558 002194B8 80 61 00 AC */ lwz r3, 0xac(r1) +/* 8021C55C 002194BC 54 00 10 3A */ slwi r0, r0, 2 +/* 8021C560 002194C0 7C 03 02 14 */ add r0, r3, r0 +/* 8021C564 002194C4 90 61 00 1C */ stw r3, 0x1c(r1) +/* 8021C568 002194C8 7C 64 1B 78 */ mr r4, r3 +/* 8021C56C 002194CC 90 01 00 24 */ stw r0, 0x24(r1) +/* 8021C570 002194D0 90 01 00 20 */ stw r0, 0x20(r1) +/* 8021C574 002194D4 90 61 00 18 */ stw r3, 0x18(r1) +/* 8021C578 002194D8 48 00 00 08 */ b lbl_8021C580 +lbl_8021C57C: +/* 8021C57C 002194DC 38 84 00 04 */ addi r4, r4, 4 +lbl_8021C580: +/* 8021C580 002194E0 7C 04 00 40 */ cmplw r4, r0 +/* 8021C584 002194E4 40 82 FF F8 */ bne lbl_8021C57C +/* 8021C588 002194E8 28 03 00 00 */ cmplwi r3, 0 +/* 8021C58C 002194EC 41 82 00 08 */ beq lbl_8021C594 +/* 8021C590 002194F0 48 0F 93 A1 */ bl Free__7CMemoryFPCv +lbl_8021C594: +/* 8021C594 002194F4 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 8021C598 002194F8 82 E1 00 BC */ lwz r23, 0xbc(r1) +/* 8021C59C 002194FC 1C 00 00 48 */ mulli r0, r0, 0x48 +/* 8021C5A0 00219500 92 E1 00 0C */ stw r23, 0xc(r1) +/* 8021C5A4 00219504 7F 37 02 14 */ add r25, r23, r0 +/* 8021C5A8 00219508 92 E1 00 08 */ stw r23, 8(r1) +/* 8021C5AC 0021950C 93 21 00 14 */ stw r25, 0x14(r1) +/* 8021C5B0 00219510 93 21 00 10 */ stw r25, 0x10(r1) +/* 8021C5B4 00219514 48 00 00 44 */ b lbl_8021C5F8 +lbl_8021C5B8: +/* 8021C5B8 00219518 28 17 00 00 */ cmplwi r23, 0 +/* 8021C5BC 0021951C 41 82 00 38 */ beq lbl_8021C5F4 +/* 8021C5C0 00219520 34 17 00 24 */ addic. r0, r23, 0x24 +/* 8021C5C4 00219524 41 82 00 10 */ beq lbl_8021C5D4 +/* 8021C5C8 00219528 34 77 00 30 */ addic. r3, r23, 0x30 +/* 8021C5CC 0021952C 41 82 00 08 */ beq lbl_8021C5D4 +/* 8021C5D0 00219530 48 12 15 11 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8021C5D4: +/* 8021C5D4 00219534 34 17 00 14 */ addic. r0, r23, 0x14 +/* 8021C5D8 00219538 41 82 00 0C */ beq lbl_8021C5E4 +/* 8021C5DC 0021953C 38 77 00 14 */ addi r3, r23, 0x14 +/* 8021C5E0 00219540 48 12 15 01 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8021C5E4: +/* 8021C5E4 00219544 34 17 00 04 */ addic. r0, r23, 4 +/* 8021C5E8 00219548 41 82 00 0C */ beq lbl_8021C5F4 +/* 8021C5EC 0021954C 38 77 00 04 */ addi r3, r23, 4 +/* 8021C5F0 00219550 48 12 14 F1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8021C5F4: +/* 8021C5F4 00219554 3A F7 00 48 */ addi r23, r23, 0x48 +lbl_8021C5F8: +/* 8021C5F8 00219558 7C 17 C8 40 */ cmplw r23, r25 +/* 8021C5FC 0021955C 40 82 FF BC */ bne lbl_8021C5B8 +/* 8021C600 00219560 80 61 00 BC */ lwz r3, 0xbc(r1) +/* 8021C604 00219564 28 03 00 00 */ cmplwi r3, 0 +/* 8021C608 00219568 41 82 00 08 */ beq lbl_8021C610 +/* 8021C60C 0021956C 48 0F 93 25 */ bl Free__7CMemoryFPCv +lbl_8021C610: +/* 8021C610 00219570 BA E1 00 CC */ lmw r23, 0xcc(r1) +/* 8021C614 00219574 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 8021C618 00219578 7C 08 03 A6 */ mtlr r0 +/* 8021C61C 0021957C 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 8021C620 00219580 4E 80 00 20 */ blr + +.global sub_8021c624 +sub_8021c624: +/* 8021C624 00219584 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 8021C628 00219588 7C 08 02 A6 */ mflr r0 +/* 8021C62C 0021958C 90 01 00 74 */ stw r0, 0x74(r1) +/* 8021C630 00219590 38 00 00 00 */ li r0, 0 +/* 8021C634 00219594 BF 41 00 58 */ stmw r26, 0x58(r1) +/* 8021C638 00219598 7C 7B 1B 78 */ mr r27, r3 +/* 8021C63C 0021959C 7C 9C 23 78 */ mr r28, r4 +/* 8021C640 002195A0 7C BA 2B 78 */ mr r26, r5 +/* 8021C644 002195A4 38 61 00 40 */ addi r3, r1, 0x40 +/* 8021C648 002195A8 38 80 00 08 */ li r4, 8 +/* 8021C64C 002195AC 90 01 00 44 */ stw r0, 0x44(r1) +/* 8021C650 002195B0 90 01 00 48 */ stw r0, 0x48(r1) +/* 8021C654 002195B4 90 01 00 4C */ stw r0, 0x4c(r1) +/* 8021C658 002195B8 48 00 0C 79 */ bl sub_8021d2d0 +/* 8021C65C 002195BC 3C 60 80 3D */ lis r3, lbl_803D3038@ha +/* 8021C660 002195C0 7F 44 D3 78 */ mr r4, r26 +/* 8021C664 002195C4 38 63 30 38 */ addi r3, r3, lbl_803D3038@l +/* 8021C668 002195C8 38 63 00 2D */ addi r3, r3, 0x2d +/* 8021C66C 002195CC 4C C6 31 82 */ crclr 6 +/* 8021C670 002195D0 48 0B 9B 41 */ bl Stringize__7CBasicsFPCce +/* 8021C674 002195D4 7C 64 1B 78 */ mr r4, r3 +/* 8021C678 002195D8 38 61 00 30 */ addi r3, r1, 0x30 +/* 8021C67C 002195DC 38 C1 00 0C */ addi r6, r1, 0xc +/* 8021C680 002195E0 38 A0 FF FF */ li r5, -1 +/* 8021C684 002195E4 48 12 07 0D */ bl "__ct__Q24rstl83basic_string,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator" +/* 8021C688 002195E8 3B A0 00 00 */ li r29, 0 +/* 8021C68C 002195EC 3B C0 00 00 */ li r30, 0 +/* 8021C690 002195F0 48 00 01 04 */ b lbl_8021C794 +lbl_8021C694: +/* 8021C694 002195F4 80 1C 00 0C */ lwz r0, 0xc(r28) +/* 8021C698 002195F8 38 61 00 20 */ addi r3, r1, 0x20 +/* 8021C69C 002195FC 38 C1 00 08 */ addi r6, r1, 8 +/* 8021C6A0 00219600 38 A0 FF FF */ li r5, -1 +/* 8021C6A4 00219604 7F E0 F2 14 */ add r31, r0, r30 +/* 8021C6A8 00219608 80 9F 00 04 */ lwz r4, 4(r31) +/* 8021C6AC 0021960C 48 12 06 E5 */ bl "__ct__Q24rstl83basic_string,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator" +/* 8021C6B0 00219610 38 61 00 20 */ addi r3, r1, 0x20 +/* 8021C6B4 00219614 38 81 00 30 */ addi r4, r1, 0x30 +/* 8021C6B8 00219618 38 A0 00 00 */ li r5, 0 +/* 8021C6BC 0021961C 48 00 02 69 */ bl sub_8021c924 +/* 8021C6C0 00219620 20 83 FF FF */ subfic r4, r3, -1 +/* 8021C6C4 00219624 38 03 00 01 */ addi r0, r3, 1 +/* 8021C6C8 00219628 7C 80 03 78 */ or r0, r4, r0 +/* 8021C6CC 0021962C 38 61 00 20 */ addi r3, r1, 0x20 +/* 8021C6D0 00219630 54 1A 0F FE */ srwi r26, r0, 0x1f +/* 8021C6D4 00219634 48 12 05 F9 */ bl "internal_dereference__Q24rstl83basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8021C6D8 00219638 28 1A 00 00 */ cmplwi r26, 0 +/* 8021C6DC 0021963C 41 82 00 B0 */ beq lbl_8021C78C +/* 8021C6E0 00219640 80 81 00 44 */ lwz r4, 0x44(r1) +/* 8021C6E4 00219644 38 61 00 40 */ addi r3, r1, 0x40 +/* 8021C6E8 00219648 38 84 00 01 */ addi r4, r4, 1 +/* 8021C6EC 0021964C 48 00 0B E5 */ bl sub_8021d2d0 +/* 8021C6F0 00219650 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8021C6F4 00219654 80 A1 00 48 */ lwz r5, 0x48(r1) +/* 8021C6F8 00219658 7C 00 28 00 */ cmpw r0, r5 +/* 8021C6FC 0021965C 41 80 00 1C */ blt lbl_8021C718 +/* 8021C700 00219660 2C 05 00 00 */ cmpwi r5, 0 +/* 8021C704 00219664 38 61 00 40 */ addi r3, r1, 0x40 +/* 8021C708 00219668 38 80 00 04 */ li r4, 4 +/* 8021C70C 0021966C 41 82 00 08 */ beq lbl_8021C714 +/* 8021C710 00219670 54 A4 08 3C */ slwi r4, r5, 1 +lbl_8021C714: +/* 8021C714 00219674 48 00 0B BD */ bl sub_8021d2d0 +lbl_8021C718: +/* 8021C718 00219678 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8021C71C 0021967C 80 61 00 4C */ lwz r3, 0x4c(r1) +/* 8021C720 00219680 1C 00 00 48 */ mulli r0, r0, 0x48 +/* 8021C724 00219684 7F 43 02 15 */ add. r26, r3, r0 +/* 8021C728 00219688 41 82 00 58 */ beq lbl_8021C780 +/* 8021C72C 0021968C 80 1F 00 00 */ lwz r0, 0(r31) +/* 8021C730 00219690 38 7A 00 04 */ addi r3, r26, 4 +/* 8021C734 00219694 38 9F 00 04 */ addi r4, r31, 4 +/* 8021C738 00219698 90 1A 00 00 */ stw r0, 0(r26) +/* 8021C73C 0021969C 48 12 1A 25 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8021C740 002196A0 38 7A 00 14 */ addi r3, r26, 0x14 +/* 8021C744 002196A4 38 9F 00 14 */ addi r4, r31, 0x14 +/* 8021C748 002196A8 48 12 1A 19 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8021C74C 002196AC C0 1F 00 24 */ lfs f0, 0x24(r31) +/* 8021C750 002196B0 38 7A 00 30 */ addi r3, r26, 0x30 +/* 8021C754 002196B4 38 9F 00 30 */ addi r4, r31, 0x30 +/* 8021C758 002196B8 D0 1A 00 24 */ stfs f0, 0x24(r26) +/* 8021C75C 002196BC C0 1F 00 28 */ lfs f0, 0x28(r31) +/* 8021C760 002196C0 D0 1A 00 28 */ stfs f0, 0x28(r26) +/* 8021C764 002196C4 C0 1F 00 2C */ lfs f0, 0x2c(r31) +/* 8021C768 002196C8 D0 1A 00 2C */ stfs f0, 0x2c(r26) +/* 8021C76C 002196CC 48 12 19 F5 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8021C770 002196D0 80 1F 00 40 */ lwz r0, 0x40(r31) +/* 8021C774 002196D4 90 1A 00 40 */ stw r0, 0x40(r26) +/* 8021C778 002196D8 80 1F 00 44 */ lwz r0, 0x44(r31) +/* 8021C77C 002196DC 90 1A 00 44 */ stw r0, 0x44(r26) +lbl_8021C780: +/* 8021C780 002196E0 80 61 00 44 */ lwz r3, 0x44(r1) +/* 8021C784 002196E4 38 03 00 01 */ addi r0, r3, 1 +/* 8021C788 002196E8 90 01 00 44 */ stw r0, 0x44(r1) +lbl_8021C78C: +/* 8021C78C 002196EC 3B DE 00 48 */ addi r30, r30, 0x48 +/* 8021C790 002196F0 3B BD 00 01 */ addi r29, r29, 1 +lbl_8021C794: +/* 8021C794 002196F4 80 1C 00 04 */ lwz r0, 4(r28) +/* 8021C798 002196F8 7C 1D 00 00 */ cmpw r29, r0 +/* 8021C79C 002196FC 41 80 FE F8 */ blt lbl_8021C694 +/* 8021C7A0 00219700 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8021C7A4 00219704 90 1B 00 04 */ stw r0, 4(r27) +/* 8021C7A8 00219708 80 01 00 48 */ lwz r0, 0x48(r1) +/* 8021C7AC 0021970C 90 1B 00 08 */ stw r0, 8(r27) +/* 8021C7B0 00219710 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8021C7B4 00219714 2C 00 00 00 */ cmpwi r0, 0 +/* 8021C7B8 00219718 40 82 00 1C */ bne lbl_8021C7D4 +/* 8021C7BC 0021971C 80 01 00 48 */ lwz r0, 0x48(r1) +/* 8021C7C0 00219720 2C 00 00 00 */ cmpwi r0, 0 +/* 8021C7C4 00219724 40 82 00 10 */ bne lbl_8021C7D4 +/* 8021C7C8 00219728 38 00 00 00 */ li r0, 0 +/* 8021C7CC 0021972C 90 1B 00 0C */ stw r0, 0xc(r27) +/* 8021C7D0 00219730 48 00 00 BC */ b lbl_8021C88C +lbl_8021C7D4: +/* 8021C7D4 00219734 80 1B 00 08 */ lwz r0, 8(r27) +/* 8021C7D8 00219738 1C 60 00 48 */ mulli r3, r0, 0x48 +/* 8021C7DC 0021973C 2C 03 00 00 */ cmpwi r3, 0 +/* 8021C7E0 00219740 40 82 00 10 */ bne lbl_8021C7F0 +/* 8021C7E4 00219744 38 00 00 00 */ li r0, 0 +/* 8021C7E8 00219748 90 1B 00 0C */ stw r0, 0xc(r27) +/* 8021C7EC 0021974C 48 00 00 1C */ b lbl_8021C808 +lbl_8021C7F0: +/* 8021C7F0 00219750 3C 80 80 3D */ lis r4, lbl_803D3038@ha +/* 8021C7F4 00219754 38 A0 00 00 */ li r5, 0 +/* 8021C7F8 00219758 38 84 30 38 */ addi r4, r4, lbl_803D3038@l +/* 8021C7FC 0021975C 38 84 00 1B */ addi r4, r4, 0x1b +/* 8021C800 00219760 48 0F 90 19 */ bl __nwa__FUlPCcPCc +/* 8021C804 00219764 90 7B 00 0C */ stw r3, 0xc(r27) +lbl_8021C808: +/* 8021C808 00219768 83 BB 00 04 */ lwz r29, 4(r27) +/* 8021C80C 0021976C 3B 40 00 00 */ li r26, 0 +/* 8021C810 00219770 83 81 00 4C */ lwz r28, 0x4c(r1) +/* 8021C814 00219774 83 7B 00 0C */ lwz r27, 0xc(r27) +/* 8021C818 00219778 48 00 00 6C */ b lbl_8021C884 +lbl_8021C81C: +/* 8021C81C 0021977C 28 1B 00 00 */ cmplwi r27, 0 +/* 8021C820 00219780 41 82 00 58 */ beq lbl_8021C878 +/* 8021C824 00219784 80 1C 00 00 */ lwz r0, 0(r28) +/* 8021C828 00219788 38 7B 00 04 */ addi r3, r27, 4 +/* 8021C82C 0021978C 38 9C 00 04 */ addi r4, r28, 4 +/* 8021C830 00219790 90 1B 00 00 */ stw r0, 0(r27) +/* 8021C834 00219794 48 12 19 2D */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8021C838 00219798 38 7B 00 14 */ addi r3, r27, 0x14 +/* 8021C83C 0021979C 38 9C 00 14 */ addi r4, r28, 0x14 +/* 8021C840 002197A0 48 12 19 21 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8021C844 002197A4 C0 1C 00 24 */ lfs f0, 0x24(r28) +/* 8021C848 002197A8 38 7B 00 30 */ addi r3, r27, 0x30 +/* 8021C84C 002197AC 38 9C 00 30 */ addi r4, r28, 0x30 +/* 8021C850 002197B0 D0 1B 00 24 */ stfs f0, 0x24(r27) +/* 8021C854 002197B4 C0 1C 00 28 */ lfs f0, 0x28(r28) +/* 8021C858 002197B8 D0 1B 00 28 */ stfs f0, 0x28(r27) +/* 8021C85C 002197BC C0 1C 00 2C */ lfs f0, 0x2c(r28) +/* 8021C860 002197C0 D0 1B 00 2C */ stfs f0, 0x2c(r27) +/* 8021C864 002197C4 48 12 18 FD */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8021C868 002197C8 80 1C 00 40 */ lwz r0, 0x40(r28) +/* 8021C86C 002197CC 90 1B 00 40 */ stw r0, 0x40(r27) +/* 8021C870 002197D0 80 1C 00 44 */ lwz r0, 0x44(r28) +/* 8021C874 002197D4 90 1B 00 44 */ stw r0, 0x44(r27) +lbl_8021C878: +/* 8021C878 002197D8 3B 7B 00 48 */ addi r27, r27, 0x48 +/* 8021C87C 002197DC 3B 5A 00 01 */ addi r26, r26, 1 +/* 8021C880 002197E0 3B 9C 00 48 */ addi r28, r28, 0x48 +lbl_8021C884: +/* 8021C884 002197E4 7C 1A E8 00 */ cmpw r26, r29 +/* 8021C888 002197E8 41 80 FF 94 */ blt lbl_8021C81C +lbl_8021C88C: +/* 8021C88C 002197EC 38 61 00 30 */ addi r3, r1, 0x30 +/* 8021C890 002197F0 48 12 04 3D */ bl "internal_dereference__Q24rstl83basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8021C894 002197F4 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8021C898 002197F8 83 41 00 4C */ lwz r26, 0x4c(r1) +/* 8021C89C 002197FC 1C 00 00 48 */ mulli r0, r0, 0x48 +/* 8021C8A0 00219800 93 41 00 14 */ stw r26, 0x14(r1) +/* 8021C8A4 00219804 7F 7A 02 14 */ add r27, r26, r0 +/* 8021C8A8 00219808 93 41 00 10 */ stw r26, 0x10(r1) +/* 8021C8AC 0021980C 93 61 00 1C */ stw r27, 0x1c(r1) +/* 8021C8B0 00219810 93 61 00 18 */ stw r27, 0x18(r1) +/* 8021C8B4 00219814 48 00 00 44 */ b lbl_8021C8F8 +lbl_8021C8B8: +/* 8021C8B8 00219818 28 1A 00 00 */ cmplwi r26, 0 +/* 8021C8BC 0021981C 41 82 00 38 */ beq lbl_8021C8F4 +/* 8021C8C0 00219820 34 1A 00 24 */ addic. r0, r26, 0x24 +/* 8021C8C4 00219824 41 82 00 10 */ beq lbl_8021C8D4 +/* 8021C8C8 00219828 34 7A 00 30 */ addic. r3, r26, 0x30 +/* 8021C8CC 0021982C 41 82 00 08 */ beq lbl_8021C8D4 +/* 8021C8D0 00219830 48 12 12 11 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8021C8D4: +/* 8021C8D4 00219834 34 1A 00 14 */ addic. r0, r26, 0x14 +/* 8021C8D8 00219838 41 82 00 0C */ beq lbl_8021C8E4 +/* 8021C8DC 0021983C 38 7A 00 14 */ addi r3, r26, 0x14 +/* 8021C8E0 00219840 48 12 12 01 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8021C8E4: +/* 8021C8E4 00219844 34 1A 00 04 */ addic. r0, r26, 4 +/* 8021C8E8 00219848 41 82 00 0C */ beq lbl_8021C8F4 +/* 8021C8EC 0021984C 38 7A 00 04 */ addi r3, r26, 4 +/* 8021C8F0 00219850 48 12 11 F1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8021C8F4: +/* 8021C8F4 00219854 3B 5A 00 48 */ addi r26, r26, 0x48 +lbl_8021C8F8: +/* 8021C8F8 00219858 7C 1A D8 40 */ cmplw r26, r27 +/* 8021C8FC 0021985C 40 82 FF BC */ bne lbl_8021C8B8 +/* 8021C900 00219860 80 61 00 4C */ lwz r3, 0x4c(r1) +/* 8021C904 00219864 28 03 00 00 */ cmplwi r3, 0 +/* 8021C908 00219868 41 82 00 08 */ beq lbl_8021C910 +/* 8021C90C 0021986C 48 0F 90 25 */ bl Free__7CMemoryFPCv +lbl_8021C910: +/* 8021C910 00219870 BB 41 00 58 */ lmw r26, 0x58(r1) +/* 8021C914 00219874 80 01 00 74 */ lwz r0, 0x74(r1) +/* 8021C918 00219878 7C 08 03 A6 */ mtlr r0 +/* 8021C91C 0021987C 38 21 00 70 */ addi r1, r1, 0x70 +/* 8021C920 00219880 4E 80 00 20 */ blr + +.global sub_8021c924 +sub_8021c924: +/* 8021C924 00219884 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 8021C928 00219888 2C 05 FF FF */ cmpwi r5, -1 +/* 8021C92C 0021988C 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 8021C930 00219890 41 82 00 10 */ beq lbl_8021C940 +/* 8021C934 00219894 80 03 00 08 */ lwz r0, 8(r3) +/* 8021C938 00219898 7C 05 00 00 */ cmpw r5, r0 +/* 8021C93C 0021989C 41 80 00 08 */ blt lbl_8021C944 +lbl_8021C940: +/* 8021C940 002198A0 80 A3 00 08 */ lwz r5, 8(r3) +lbl_8021C944: +/* 8021C944 002198A4 80 C3 00 08 */ lwz r6, 8(r3) +/* 8021C948 002198A8 38 E0 00 00 */ li r7, 0 +/* 8021C94C 002198AC 80 04 00 08 */ lwz r0, 8(r4) +/* 8021C950 002198B0 7C A8 2B 78 */ mr r8, r5 +/* 8021C954 002198B4 90 61 00 38 */ stw r3, 0x38(r1) +/* 8021C958 002198B8 90 E1 00 3C */ stw r7, 0x3c(r1) +/* 8021C95C 002198BC 90 61 00 40 */ stw r3, 0x40(r1) +/* 8021C960 002198C0 90 A1 00 44 */ stw r5, 0x44(r1) +/* 8021C964 002198C4 90 61 00 48 */ stw r3, 0x48(r1) +/* 8021C968 002198C8 90 A1 00 4C */ stw r5, 0x4c(r1) +/* 8021C96C 002198CC 90 61 00 28 */ stw r3, 0x28(r1) +/* 8021C970 002198D0 90 C1 00 2C */ stw r6, 0x2c(r1) +/* 8021C974 002198D4 90 61 00 30 */ stw r3, 0x30(r1) +/* 8021C978 002198D8 90 C1 00 34 */ stw r6, 0x34(r1) +/* 8021C97C 002198DC 90 81 00 18 */ stw r4, 0x18(r1) +/* 8021C980 002198E0 90 E1 00 1C */ stw r7, 0x1c(r1) +/* 8021C984 002198E4 90 81 00 20 */ stw r4, 0x20(r1) +/* 8021C988 002198E8 90 E1 00 24 */ stw r7, 0x24(r1) +/* 8021C98C 002198EC 90 81 00 08 */ stw r4, 8(r1) +/* 8021C990 002198F0 90 01 00 0C */ stw r0, 0xc(r1) +/* 8021C994 002198F4 90 81 00 10 */ stw r4, 0x10(r1) +/* 8021C998 002198F8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8021C99C 002198FC 48 00 01 5C */ b lbl_8021CAF8 +lbl_8021C9A0: +/* 8021C9A0 00219900 39 20 00 00 */ li r9, 0 +/* 8021C9A4 00219904 48 00 01 2C */ b lbl_8021CAD0 +lbl_8021C9A8: +/* 8021C9A8 00219908 81 44 00 00 */ lwz r10, 0(r4) +/* 8021C9AC 0021990C 39 60 00 00 */ li r11, 0 +/* 8021C9B0 00219910 81 83 00 00 */ lwz r12, 0(r3) +/* 8021C9B4 00219914 7F EA 48 AE */ lbzx r31, r10, r9 +/* 8021C9B8 00219918 7F EA 07 74 */ extsb r10, r31 +/* 8021C9BC 0021991C 2C 0A 00 61 */ cmpwi r10, 0x61 +/* 8021C9C0 00219920 41 80 00 10 */ blt lbl_8021C9D0 +/* 8021C9C4 00219924 2C 0A 00 7A */ cmpwi r10, 0x7a +/* 8021C9C8 00219928 41 81 00 08 */ bgt lbl_8021C9D0 +/* 8021C9CC 0021992C 39 60 00 01 */ li r11, 1 +lbl_8021C9D0: +/* 8021C9D0 00219930 55 6A 06 3F */ clrlwi. r10, r11, 0x18 +/* 8021C9D4 00219934 41 82 00 10 */ beq lbl_8021C9E4 +/* 8021C9D8 00219938 7F EA 07 74 */ extsb r10, r31 +/* 8021C9DC 0021993C 39 6A FF E0 */ addi r11, r10, -32 +/* 8021C9E0 00219940 48 00 00 54 */ b lbl_8021CA34 +lbl_8021C9E4: +/* 8021C9E4 00219944 7F EB 07 74 */ extsb r11, r31 +/* 8021C9E8 00219948 39 40 00 00 */ li r10, 0 +/* 8021C9EC 0021994C 2C 0B 00 E0 */ cmpwi r11, 0xe0 +/* 8021C9F0 00219950 41 80 00 10 */ blt lbl_8021CA00 +/* 8021C9F4 00219954 2C 0B 00 FE */ cmpwi r11, 0xfe +/* 8021C9F8 00219958 41 81 00 08 */ bgt lbl_8021CA00 +/* 8021C9FC 0021995C 39 40 00 01 */ li r10, 1 +lbl_8021CA00: +/* 8021CA00 00219960 55 4A 06 3F */ clrlwi. r10, r10, 0x18 +/* 8021CA04 00219964 41 82 00 0C */ beq lbl_8021CA10 +/* 8021CA08 00219968 39 6B FF E0 */ addi r11, r11, -32 +/* 8021CA0C 0021996C 48 00 00 28 */ b lbl_8021CA34 +lbl_8021CA10: +/* 8021CA10 00219970 2C 0B 30 A0 */ cmpwi r11, 0x30a0 +/* 8021CA14 00219974 39 40 00 00 */ li r10, 0 +/* 8021CA18 00219978 41 80 00 10 */ blt lbl_8021CA28 +/* 8021CA1C 0021997C 2C 0B 30 FF */ cmpwi r11, 0x30ff +/* 8021CA20 00219980 41 81 00 08 */ bgt lbl_8021CA28 +/* 8021CA24 00219984 39 40 00 01 */ li r10, 1 +lbl_8021CA28: +/* 8021CA28 00219988 55 4A 06 3F */ clrlwi. r10, r10, 0x18 +/* 8021CA2C 0021998C 41 82 00 08 */ beq lbl_8021CA34 +/* 8021CA30 00219990 39 6B FF A0 */ addi r11, r11, -96 +lbl_8021CA34: +/* 8021CA34 00219994 7D 8C 40 AE */ lbzx r12, r12, r8 +/* 8021CA38 00219998 7D 7F 07 74 */ extsb r31, r11 +/* 8021CA3C 0021999C 39 60 00 00 */ li r11, 0 +/* 8021CA40 002199A0 7D 8A 07 74 */ extsb r10, r12 +/* 8021CA44 002199A4 2C 0A 00 61 */ cmpwi r10, 0x61 +/* 8021CA48 002199A8 41 80 00 10 */ blt lbl_8021CA58 +/* 8021CA4C 002199AC 2C 0A 00 7A */ cmpwi r10, 0x7a +/* 8021CA50 002199B0 41 81 00 08 */ bgt lbl_8021CA58 +/* 8021CA54 002199B4 39 60 00 01 */ li r11, 1 +lbl_8021CA58: +/* 8021CA58 002199B8 55 6A 06 3F */ clrlwi. r10, r11, 0x18 +/* 8021CA5C 002199BC 41 82 00 10 */ beq lbl_8021CA6C +/* 8021CA60 002199C0 7D 8A 07 74 */ extsb r10, r12 +/* 8021CA64 002199C4 39 6A FF E0 */ addi r11, r10, -32 +/* 8021CA68 002199C8 48 00 00 54 */ b lbl_8021CABC +lbl_8021CA6C: +/* 8021CA6C 002199CC 7D 8B 07 74 */ extsb r11, r12 +/* 8021CA70 002199D0 39 40 00 00 */ li r10, 0 +/* 8021CA74 002199D4 2C 0B 00 E0 */ cmpwi r11, 0xe0 +/* 8021CA78 002199D8 41 80 00 10 */ blt lbl_8021CA88 +/* 8021CA7C 002199DC 2C 0B 00 FE */ cmpwi r11, 0xfe +/* 8021CA80 002199E0 41 81 00 08 */ bgt lbl_8021CA88 +/* 8021CA84 002199E4 39 40 00 01 */ li r10, 1 +lbl_8021CA88: +/* 8021CA88 002199E8 55 4A 06 3F */ clrlwi. r10, r10, 0x18 +/* 8021CA8C 002199EC 41 82 00 0C */ beq lbl_8021CA98 +/* 8021CA90 002199F0 39 6B FF E0 */ addi r11, r11, -32 +/* 8021CA94 002199F4 48 00 00 28 */ b lbl_8021CABC +lbl_8021CA98: +/* 8021CA98 002199F8 2C 0B 30 A0 */ cmpwi r11, 0x30a0 +/* 8021CA9C 002199FC 39 40 00 00 */ li r10, 0 +/* 8021CAA0 00219A00 41 80 00 10 */ blt lbl_8021CAB0 +/* 8021CAA4 00219A04 2C 0B 30 FF */ cmpwi r11, 0x30ff +/* 8021CAA8 00219A08 41 81 00 08 */ bgt lbl_8021CAB0 +/* 8021CAAC 00219A0C 39 40 00 01 */ li r10, 1 +lbl_8021CAB0: +/* 8021CAB0 00219A10 55 4A 06 3F */ clrlwi. r10, r10, 0x18 +/* 8021CAB4 00219A14 41 82 00 08 */ beq lbl_8021CABC +/* 8021CAB8 00219A18 39 6B FF A0 */ addi r11, r11, -96 +lbl_8021CABC: +/* 8021CABC 00219A1C 7D 6A 07 74 */ extsb r10, r11 +/* 8021CAC0 00219A20 7C 0A F8 00 */ cmpw r10, r31 +/* 8021CAC4 00219A24 40 82 00 08 */ bne lbl_8021CACC +/* 8021CAC8 00219A28 48 00 00 54 */ b lbl_8021CB1C +lbl_8021CACC: +/* 8021CACC 00219A2C 39 29 00 01 */ addi r9, r9, 1 +lbl_8021CAD0: +/* 8021CAD0 00219A30 7C 04 20 40 */ cmplw r4, r4 +/* 8021CAD4 00219A34 39 40 00 00 */ li r10, 0 +/* 8021CAD8 00219A38 40 82 00 0C */ bne lbl_8021CAE4 +/* 8021CADC 00219A3C 7C 09 00 00 */ cmpw r9, r0 +/* 8021CAE0 00219A40 41 82 00 08 */ beq lbl_8021CAE8 +lbl_8021CAE4: +/* 8021CAE4 00219A44 39 40 00 01 */ li r10, 1 +lbl_8021CAE8: +/* 8021CAE8 00219A48 55 4A 06 3F */ clrlwi. r10, r10, 0x18 +/* 8021CAEC 00219A4C 40 82 FE BC */ bne lbl_8021C9A8 +/* 8021CAF0 00219A50 39 08 00 01 */ addi r8, r8, 1 +/* 8021CAF4 00219A54 38 E7 00 01 */ addi r7, r7, 1 +lbl_8021CAF8: +/* 8021CAF8 00219A58 7C 03 18 40 */ cmplw r3, r3 +/* 8021CAFC 00219A5C 39 20 00 00 */ li r9, 0 +/* 8021CB00 00219A60 40 82 00 0C */ bne lbl_8021CB0C +/* 8021CB04 00219A64 7C 08 30 00 */ cmpw r8, r6 +/* 8021CB08 00219A68 41 82 00 08 */ beq lbl_8021CB10 +lbl_8021CB0C: +/* 8021CB0C 00219A6C 39 20 00 01 */ li r9, 1 +lbl_8021CB10: +/* 8021CB10 00219A70 55 29 06 3F */ clrlwi. r9, r9, 0x18 +/* 8021CB14 00219A74 40 82 FE 8C */ bne lbl_8021C9A0 +/* 8021CB18 00219A78 38 E0 FF FF */ li r7, -1 +lbl_8021CB1C: +/* 8021CB1C 00219A7C 2C 07 FF FF */ cmpwi r7, -1 +/* 8021CB20 00219A80 7C 67 2A 14 */ add r3, r7, r5 +/* 8021CB24 00219A84 40 82 00 08 */ bne lbl_8021CB2C +/* 8021CB28 00219A88 7C E3 3B 78 */ mr r3, r7 +lbl_8021CB2C: +/* 8021CB2C 00219A8C 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 8021CB30 00219A90 38 21 00 60 */ addi r1, r1, 0x60 +/* 8021CB34 00219A94 4E 80 00 20 */ blr + +.global sub_8021cb38 +sub_8021cb38: +/* 8021CB38 00219A98 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8021CB3C 00219A9C 7C 08 02 A6 */ mflr r0 +/* 8021CB40 00219AA0 3C C0 80 3D */ lis r6, lbl_803D3038@ha +/* 8021CB44 00219AA4 90 01 00 24 */ stw r0, 0x24(r1) +/* 8021CB48 00219AA8 38 C6 30 38 */ addi r6, r6, lbl_803D3038@l +/* 8021CB4C 00219AAC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8021CB50 00219AB0 7C 7F 1B 78 */ mr r31, r3 +/* 8021CB54 00219AB4 38 66 00 39 */ addi r3, r6, 0x39 +/* 8021CB58 00219AB8 80 A5 00 00 */ lwz r5, 0(r5) +/* 8021CB5C 00219ABC 4C C6 31 82 */ crclr 6 +/* 8021CB60 00219AC0 48 0B 96 51 */ bl Stringize__7CBasicsFPCce +/* 8021CB64 00219AC4 7C 64 1B 78 */ mr r4, r3 +/* 8021CB68 00219AC8 7F E3 FB 78 */ mr r3, r31 +/* 8021CB6C 00219ACC 38 C1 00 08 */ addi r6, r1, 8 +/* 8021CB70 00219AD0 38 A0 FF FF */ li r5, -1 +/* 8021CB74 00219AD4 48 12 16 21 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator" +/* 8021CB78 00219AD8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8021CB7C 00219ADC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8021CB80 00219AE0 7C 08 03 A6 */ mtlr r0 +/* 8021CB84 00219AE4 38 21 00 20 */ addi r1, r1, 0x20 +/* 8021CB88 00219AE8 4E 80 00 20 */ blr + +.global "GetIdentifierForMidiEvent__19CInGameTweakManagerFUiUiRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +"GetIdentifierForMidiEvent__19CInGameTweakManagerFUiUiRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>": +/* 8021CB8C 00219AEC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8021CB90 00219AF0 7C 08 02 A6 */ mflr r0 +/* 8021CB94 00219AF4 3C E0 80 3D */ lis r7, lbl_803D3038@ha +/* 8021CB98 00219AF8 90 01 00 24 */ stw r0, 0x24(r1) +/* 8021CB9C 00219AFC 7C 80 23 78 */ mr r0, r4 +/* 8021CBA0 00219B00 7C A4 2B 78 */ mr r4, r5 +/* 8021CBA4 00219B04 38 E7 30 38 */ addi r7, r7, lbl_803D3038@l +/* 8021CBA8 00219B08 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8021CBAC 00219B0C 7C 7F 1B 78 */ mr r31, r3 +/* 8021CBB0 00219B10 7C 05 03 78 */ mr r5, r0 +/* 8021CBB4 00219B14 38 67 00 54 */ addi r3, r7, 0x54 +/* 8021CBB8 00219B18 80 C6 00 00 */ lwz r6, 0(r6) +/* 8021CBBC 00219B1C 4C C6 31 82 */ crclr 6 +/* 8021CBC0 00219B20 48 0B 95 F1 */ bl Stringize__7CBasicsFPCce +/* 8021CBC4 00219B24 7C 64 1B 78 */ mr r4, r3 +/* 8021CBC8 00219B28 7F E3 FB 78 */ mr r3, r31 +/* 8021CBCC 00219B2C 38 C1 00 08 */ addi r6, r1, 8 +/* 8021CBD0 00219B30 38 A0 FF FF */ li r5, -1 +/* 8021CBD4 00219B34 48 12 15 C1 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator" +/* 8021CBD8 00219B38 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8021CBDC 00219B3C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8021CBE0 00219B40 7C 08 03 A6 */ mtlr r0 +/* 8021CBE4 00219B44 38 21 00 20 */ addi r1, r1, 0x20 +/* 8021CBE8 00219B48 4E 80 00 20 */ blr + +.global sub_8021cbec +sub_8021cbec: +/* 8021CBEC 00219B4C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8021CBF0 00219B50 7C 08 02 A6 */ mflr r0 +/* 8021CBF4 00219B54 3C A0 80 3D */ lis r5, lbl_803D3038@ha +/* 8021CBF8 00219B58 90 01 00 24 */ stw r0, 0x24(r1) +/* 8021CBFC 00219B5C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8021CC00 00219B60 7C 7F 1B 78 */ mr r31, r3 +/* 8021CC04 00219B64 38 65 30 38 */ addi r3, r5, lbl_803D3038@l +/* 8021CC08 00219B68 38 63 00 7A */ addi r3, r3, 0x7a +/* 8021CC0C 00219B6C 4C C6 31 82 */ crclr 6 +/* 8021CC10 00219B70 48 0B 95 A1 */ bl Stringize__7CBasicsFPCce +/* 8021CC14 00219B74 7C 64 1B 78 */ mr r4, r3 +/* 8021CC18 00219B78 7F E3 FB 78 */ mr r3, r31 +/* 8021CC1C 00219B7C 38 C1 00 08 */ addi r6, r1, 8 +/* 8021CC20 00219B80 38 A0 FF FF */ li r5, -1 +/* 8021CC24 00219B84 48 12 15 71 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator" +/* 8021CC28 00219B88 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8021CC2C 00219B8C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8021CC30 00219B90 7C 08 03 A6 */ mtlr r0 +/* 8021CC34 00219B94 38 21 00 20 */ addi r1, r1, 0x20 +/* 8021CC38 00219B98 4E 80 00 20 */ blr + +.global sub_8021cc3c +sub_8021cc3c: +/* 8021CC3C 00219B9C 90 83 00 00 */ stw r4, 0(r3) +/* 8021CC40 00219BA0 38 00 00 00 */ li r0, 0 +/* 8021CC44 00219BA4 7C 85 23 78 */ mr r5, r4 +/* 8021CC48 00219BA8 90 03 00 04 */ stw r0, 4(r3) +/* 8021CC4C 00219BAC 48 00 00 08 */ b lbl_8021CC54 +lbl_8021CC50: +/* 8021CC50 00219BB0 38 A5 00 01 */ addi r5, r5, 1 +lbl_8021CC54: +/* 8021CC54 00219BB4 88 05 00 00 */ lbz r0, 0(r5) +/* 8021CC58 00219BB8 7C 00 07 75 */ extsb. r0, r0 +/* 8021CC5C 00219BBC 40 82 FF F4 */ bne lbl_8021CC50 +/* 8021CC60 00219BC0 7C 04 28 50 */ subf r0, r4, r5 +/* 8021CC64 00219BC4 90 03 00 08 */ stw r0, 8(r3) +/* 8021CC68 00219BC8 4E 80 00 20 */ blr + +.global sub_8021cc6c +sub_8021cc6c: +/* 8021CC6C 00219BCC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8021CC70 00219BD0 7C 08 02 A6 */ mflr r0 +/* 8021CC74 00219BD4 38 84 00 04 */ addi r4, r4, 4 +/* 8021CC78 00219BD8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8021CC7C 00219BDC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8021CC80 00219BE0 7C 7F 1B 78 */ mr r31, r3 +/* 8021CC84 00219BE4 48 11 E1 39 */ bl sub_8033adbc +/* 8021CC88 00219BE8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8021CC8C 00219BEC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8021CC90 00219BF0 7C 08 03 A6 */ mtlr r0 +/* 8021CC94 00219BF4 38 21 00 10 */ addi r1, r1, 0x10 +/* 8021CC98 00219BF8 4E 80 00 20 */ blr + +.global "ReadFromMemoryCard__19CInGameTweakManagerFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +"ReadFromMemoryCard__19CInGameTweakManagerFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>": +/* 8021CC9C 00219BFC 38 60 00 00 */ li r3, 0 +/* 8021CCA0 00219C00 4E 80 00 20 */ blr + +.global "GetTweakValue__19CInGameTweakManagerCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +"GetTweakValue__19CInGameTweakManagerCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>": +/* 8021CCA4 00219C04 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8021CCA8 00219C08 7C 08 02 A6 */ mflr r0 +/* 8021CCAC 00219C0C 90 01 00 44 */ stw r0, 0x44(r1) +/* 8021CCB0 00219C10 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8021CCB4 00219C14 93 C1 00 38 */ stw r30, 0x38(r1) +/* 8021CCB8 00219C18 93 A1 00 34 */ stw r29, 0x34(r1) +/* 8021CCBC 00219C1C 7C 9D 23 78 */ mr r29, r4 +/* 8021CCC0 00219C20 93 81 00 30 */ stw r28, 0x30(r1) +/* 8021CCC4 00219C24 7C 7C 1B 78 */ mr r28, r3 +/* 8021CCC8 00219C28 83 C3 00 0C */ lwz r30, 0xc(r3) +/* 8021CCCC 00219C2C 48 00 00 60 */ b lbl_8021CD2C +lbl_8021CCD0: +/* 8021CCD0 00219C30 80 9E 00 04 */ lwz r4, 4(r30) +/* 8021CCD4 00219C34 38 61 00 20 */ addi r3, r1, 0x20 +/* 8021CCD8 00219C38 38 C1 00 0C */ addi r6, r1, 0xc +/* 8021CCDC 00219C3C 38 A0 FF FF */ li r5, -1 +/* 8021CCE0 00219C40 48 12 00 B1 */ bl "__ct__Q24rstl83basic_string,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator" +/* 8021CCE4 00219C44 80 9D 00 00 */ lwz r4, 0(r29) +/* 8021CCE8 00219C48 38 61 00 10 */ addi r3, r1, 0x10 +/* 8021CCEC 00219C4C 38 C1 00 08 */ addi r6, r1, 8 +/* 8021CCF0 00219C50 38 A0 FF FF */ li r5, -1 +/* 8021CCF4 00219C54 48 12 00 9D */ bl "__ct__Q24rstl83basic_string,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator" +/* 8021CCF8 00219C58 38 61 00 20 */ addi r3, r1, 0x20 +/* 8021CCFC 00219C5C 38 81 00 10 */ addi r4, r1, 0x10 +/* 8021CD00 00219C60 48 00 00 69 */ bl sub_8021cd68 +/* 8021CD04 00219C64 7C 7F 1B 78 */ mr r31, r3 +/* 8021CD08 00219C68 38 61 00 10 */ addi r3, r1, 0x10 +/* 8021CD0C 00219C6C 48 11 FF C1 */ bl "internal_dereference__Q24rstl83basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8021CD10 00219C70 38 61 00 20 */ addi r3, r1, 0x20 +/* 8021CD14 00219C74 48 11 FF B9 */ bl "internal_dereference__Q24rstl83basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8021CD18 00219C78 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 8021CD1C 00219C7C 41 82 00 0C */ beq lbl_8021CD28 +/* 8021CD20 00219C80 7F C3 F3 78 */ mr r3, r30 +/* 8021CD24 00219C84 48 00 00 24 */ b lbl_8021CD48 +lbl_8021CD28: +/* 8021CD28 00219C88 3B DE 00 48 */ addi r30, r30, 0x48 +lbl_8021CD2C: +/* 8021CD2C 00219C8C 80 1C 00 04 */ lwz r0, 4(r28) +/* 8021CD30 00219C90 80 7C 00 0C */ lwz r3, 0xc(r28) +/* 8021CD34 00219C94 1C 00 00 48 */ mulli r0, r0, 0x48 +/* 8021CD38 00219C98 7C 03 02 14 */ add r0, r3, r0 +/* 8021CD3C 00219C9C 7C 1E 00 40 */ cmplw r30, r0 +/* 8021CD40 00219CA0 40 82 FF 90 */ bne lbl_8021CCD0 +/* 8021CD44 00219CA4 38 60 00 00 */ li r3, 0 +lbl_8021CD48: +/* 8021CD48 00219CA8 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8021CD4C 00219CAC 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8021CD50 00219CB0 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 8021CD54 00219CB4 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 8021CD58 00219CB8 83 81 00 30 */ lwz r28, 0x30(r1) +/* 8021CD5C 00219CBC 7C 08 03 A6 */ mtlr r0 +/* 8021CD60 00219CC0 38 21 00 40 */ addi r1, r1, 0x40 +/* 8021CD64 00219CC4 4E 80 00 20 */ blr + +.global sub_8021cd68 +sub_8021cd68: +/* 8021CD68 00219CC8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8021CD6C 00219CCC 7C 08 02 A6 */ mflr r0 +/* 8021CD70 00219CD0 90 01 00 14 */ stw r0, 0x14(r1) +/* 8021CD74 00219CD4 48 00 00 1D */ bl sub_8021cd90 +/* 8021CD78 00219CD8 7C 60 00 34 */ cntlzw r0, r3 +/* 8021CD7C 00219CDC 54 03 D9 7E */ srwi r3, r0, 5 +/* 8021CD80 00219CE0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8021CD84 00219CE4 7C 08 03 A6 */ mtlr r0 +/* 8021CD88 00219CE8 38 21 00 10 */ addi r1, r1, 0x10 +/* 8021CD8C 00219CEC 4E 80 00 20 */ blr + +.global sub_8021cd90 +sub_8021cd90: +/* 8021CD90 00219CF0 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 8021CD94 00219CF4 39 00 00 00 */ li r8, 0 +/* 8021CD98 00219CF8 38 C0 00 00 */ li r6, 0 +/* 8021CD9C 00219CFC 80 A3 00 08 */ lwz r5, 8(r3) +/* 8021CDA0 00219D00 7C C7 33 78 */ mr r7, r6 +/* 8021CDA4 00219D04 80 04 00 08 */ lwz r0, 8(r4) +/* 8021CDA8 00219D08 90 61 00 38 */ stw r3, 0x38(r1) +/* 8021CDAC 00219D0C 91 01 00 3C */ stw r8, 0x3c(r1) +/* 8021CDB0 00219D10 90 61 00 40 */ stw r3, 0x40(r1) +/* 8021CDB4 00219D14 91 01 00 44 */ stw r8, 0x44(r1) +/* 8021CDB8 00219D18 90 61 00 28 */ stw r3, 0x28(r1) +/* 8021CDBC 00219D1C 90 A1 00 2C */ stw r5, 0x2c(r1) +/* 8021CDC0 00219D20 90 61 00 30 */ stw r3, 0x30(r1) +/* 8021CDC4 00219D24 90 A1 00 34 */ stw r5, 0x34(r1) +/* 8021CDC8 00219D28 90 81 00 18 */ stw r4, 0x18(r1) +/* 8021CDCC 00219D2C 91 01 00 1C */ stw r8, 0x1c(r1) +/* 8021CDD0 00219D30 90 81 00 20 */ stw r4, 0x20(r1) +/* 8021CDD4 00219D34 91 01 00 24 */ stw r8, 0x24(r1) +/* 8021CDD8 00219D38 90 81 00 08 */ stw r4, 8(r1) +/* 8021CDDC 00219D3C 90 01 00 0C */ stw r0, 0xc(r1) +/* 8021CDE0 00219D40 90 81 00 10 */ stw r4, 0x10(r1) +/* 8021CDE4 00219D44 90 01 00 14 */ stw r0, 0x14(r1) +/* 8021CDE8 00219D48 48 00 01 30 */ b lbl_8021CF18 +lbl_8021CDEC: +/* 8021CDEC 00219D4C 81 03 00 00 */ lwz r8, 0(r3) +/* 8021CDF0 00219D50 39 20 00 00 */ li r9, 0 +/* 8021CDF4 00219D54 81 44 00 00 */ lwz r10, 0(r4) +/* 8021CDF8 00219D58 7D 68 30 AE */ lbzx r11, r8, r6 +/* 8021CDFC 00219D5C 7D 68 07 74 */ extsb r8, r11 +/* 8021CE00 00219D60 2C 08 00 61 */ cmpwi r8, 0x61 +/* 8021CE04 00219D64 41 80 00 10 */ blt lbl_8021CE14 +/* 8021CE08 00219D68 2C 08 00 7A */ cmpwi r8, 0x7a +/* 8021CE0C 00219D6C 41 81 00 08 */ bgt lbl_8021CE14 +/* 8021CE10 00219D70 39 20 00 01 */ li r9, 1 +lbl_8021CE14: +/* 8021CE14 00219D74 55 28 06 3F */ clrlwi. r8, r9, 0x18 +/* 8021CE18 00219D78 41 82 00 10 */ beq lbl_8021CE28 +/* 8021CE1C 00219D7C 7D 68 07 74 */ extsb r8, r11 +/* 8021CE20 00219D80 39 28 FF E0 */ addi r9, r8, -32 +/* 8021CE24 00219D84 48 00 00 54 */ b lbl_8021CE78 +lbl_8021CE28: +/* 8021CE28 00219D88 7D 69 07 74 */ extsb r9, r11 +/* 8021CE2C 00219D8C 39 00 00 00 */ li r8, 0 +/* 8021CE30 00219D90 2C 09 00 E0 */ cmpwi r9, 0xe0 +/* 8021CE34 00219D94 41 80 00 10 */ blt lbl_8021CE44 +/* 8021CE38 00219D98 2C 09 00 FE */ cmpwi r9, 0xfe +/* 8021CE3C 00219D9C 41 81 00 08 */ bgt lbl_8021CE44 +/* 8021CE40 00219DA0 39 00 00 01 */ li r8, 1 +lbl_8021CE44: +/* 8021CE44 00219DA4 55 08 06 3F */ clrlwi. r8, r8, 0x18 +/* 8021CE48 00219DA8 41 82 00 0C */ beq lbl_8021CE54 +/* 8021CE4C 00219DAC 39 29 FF E0 */ addi r9, r9, -32 +/* 8021CE50 00219DB0 48 00 00 28 */ b lbl_8021CE78 +lbl_8021CE54: +/* 8021CE54 00219DB4 2C 09 30 A0 */ cmpwi r9, 0x30a0 +/* 8021CE58 00219DB8 39 00 00 00 */ li r8, 0 +/* 8021CE5C 00219DBC 41 80 00 10 */ blt lbl_8021CE6C +/* 8021CE60 00219DC0 2C 09 30 FF */ cmpwi r9, 0x30ff +/* 8021CE64 00219DC4 41 81 00 08 */ bgt lbl_8021CE6C +/* 8021CE68 00219DC8 39 00 00 01 */ li r8, 1 +lbl_8021CE6C: +/* 8021CE6C 00219DCC 55 08 06 3F */ clrlwi. r8, r8, 0x18 +/* 8021CE70 00219DD0 41 82 00 08 */ beq lbl_8021CE78 +/* 8021CE74 00219DD4 39 29 FF A0 */ addi r9, r9, -96 +lbl_8021CE78: +/* 8021CE78 00219DD8 7D 4A 38 AE */ lbzx r10, r10, r7 +/* 8021CE7C 00219DDC 7D 2B 07 74 */ extsb r11, r9 +/* 8021CE80 00219DE0 39 20 00 00 */ li r9, 0 +/* 8021CE84 00219DE4 7D 48 07 74 */ extsb r8, r10 +/* 8021CE88 00219DE8 2C 08 00 61 */ cmpwi r8, 0x61 +/* 8021CE8C 00219DEC 41 80 00 10 */ blt lbl_8021CE9C +/* 8021CE90 00219DF0 2C 08 00 7A */ cmpwi r8, 0x7a +/* 8021CE94 00219DF4 41 81 00 08 */ bgt lbl_8021CE9C +/* 8021CE98 00219DF8 39 20 00 01 */ li r9, 1 +lbl_8021CE9C: +/* 8021CE9C 00219DFC 55 28 06 3F */ clrlwi. r8, r9, 0x18 +/* 8021CEA0 00219E00 41 82 00 10 */ beq lbl_8021CEB0 +/* 8021CEA4 00219E04 7D 48 07 74 */ extsb r8, r10 +/* 8021CEA8 00219E08 39 28 FF E0 */ addi r9, r8, -32 +/* 8021CEAC 00219E0C 48 00 00 54 */ b lbl_8021CF00 +lbl_8021CEB0: +/* 8021CEB0 00219E10 7D 49 07 74 */ extsb r9, r10 +/* 8021CEB4 00219E14 39 00 00 00 */ li r8, 0 +/* 8021CEB8 00219E18 2C 09 00 E0 */ cmpwi r9, 0xe0 +/* 8021CEBC 00219E1C 41 80 00 10 */ blt lbl_8021CECC +/* 8021CEC0 00219E20 2C 09 00 FE */ cmpwi r9, 0xfe +/* 8021CEC4 00219E24 41 81 00 08 */ bgt lbl_8021CECC +/* 8021CEC8 00219E28 39 00 00 01 */ li r8, 1 +lbl_8021CECC: +/* 8021CECC 00219E2C 55 08 06 3F */ clrlwi. r8, r8, 0x18 +/* 8021CED0 00219E30 41 82 00 0C */ beq lbl_8021CEDC +/* 8021CED4 00219E34 39 29 FF E0 */ addi r9, r9, -32 +/* 8021CED8 00219E38 48 00 00 28 */ b lbl_8021CF00 +lbl_8021CEDC: +/* 8021CEDC 00219E3C 2C 09 30 A0 */ cmpwi r9, 0x30a0 +/* 8021CEE0 00219E40 39 00 00 00 */ li r8, 0 +/* 8021CEE4 00219E44 41 80 00 10 */ blt lbl_8021CEF4 +/* 8021CEE8 00219E48 2C 09 30 FF */ cmpwi r9, 0x30ff +/* 8021CEEC 00219E4C 41 81 00 08 */ bgt lbl_8021CEF4 +/* 8021CEF0 00219E50 39 00 00 01 */ li r8, 1 +lbl_8021CEF4: +/* 8021CEF4 00219E54 55 08 06 3F */ clrlwi. r8, r8, 0x18 +/* 8021CEF8 00219E58 41 82 00 08 */ beq lbl_8021CF00 +/* 8021CEFC 00219E5C 39 29 FF A0 */ addi r9, r9, -96 +lbl_8021CF00: +/* 8021CF00 00219E60 7D 28 07 74 */ extsb r8, r9 +/* 8021CF04 00219E64 7D 0B 40 51 */ subf. r8, r11, r8 +/* 8021CF08 00219E68 41 82 00 08 */ beq lbl_8021CF10 +/* 8021CF0C 00219E6C 48 00 00 D8 */ b lbl_8021CFE4 +lbl_8021CF10: +/* 8021CF10 00219E70 38 C6 00 01 */ addi r6, r6, 1 +/* 8021CF14 00219E74 38 E7 00 01 */ addi r7, r7, 1 +lbl_8021CF18: +/* 8021CF18 00219E78 7C 03 18 40 */ cmplw r3, r3 +/* 8021CF1C 00219E7C 39 00 00 00 */ li r8, 0 +/* 8021CF20 00219E80 40 82 00 0C */ bne lbl_8021CF2C +/* 8021CF24 00219E84 7C 06 28 00 */ cmpw r6, r5 +/* 8021CF28 00219E88 41 82 00 08 */ beq lbl_8021CF30 +lbl_8021CF2C: +/* 8021CF2C 00219E8C 39 00 00 01 */ li r8, 1 +lbl_8021CF30: +/* 8021CF30 00219E90 55 08 06 3F */ clrlwi. r8, r8, 0x18 +/* 8021CF34 00219E94 41 82 00 24 */ beq lbl_8021CF58 +/* 8021CF38 00219E98 7C 04 20 40 */ cmplw r4, r4 +/* 8021CF3C 00219E9C 39 00 00 00 */ li r8, 0 +/* 8021CF40 00219EA0 40 82 00 0C */ bne lbl_8021CF4C +/* 8021CF44 00219EA4 7C 07 00 00 */ cmpw r7, r0 +/* 8021CF48 00219EA8 41 82 00 08 */ beq lbl_8021CF50 +lbl_8021CF4C: +/* 8021CF4C 00219EAC 39 00 00 01 */ li r8, 1 +lbl_8021CF50: +/* 8021CF50 00219EB0 55 08 06 3F */ clrlwi. r8, r8, 0x18 +/* 8021CF54 00219EB4 40 82 FE 98 */ bne lbl_8021CDEC +lbl_8021CF58: +/* 8021CF58 00219EB8 80 81 00 40 */ lwz r4, 0x40(r1) +/* 8021CF5C 00219EBC 39 00 00 00 */ li r8, 0 +/* 8021CF60 00219EC0 80 61 00 30 */ lwz r3, 0x30(r1) +/* 8021CF64 00219EC4 7C 04 18 40 */ cmplw r4, r3 +/* 8021CF68 00219EC8 40 82 00 10 */ bne lbl_8021CF78 +/* 8021CF6C 00219ECC 7C 06 28 00 */ cmpw r6, r5 +/* 8021CF70 00219ED0 40 82 00 08 */ bne lbl_8021CF78 +/* 8021CF74 00219ED4 39 00 00 01 */ li r8, 1 +lbl_8021CF78: +/* 8021CF78 00219ED8 55 03 06 3F */ clrlwi. r3, r8, 0x18 +/* 8021CF7C 00219EDC 41 82 00 34 */ beq lbl_8021CFB0 +/* 8021CF80 00219EE0 80 81 00 20 */ lwz r4, 0x20(r1) +/* 8021CF84 00219EE4 39 00 00 00 */ li r8, 0 +/* 8021CF88 00219EE8 80 61 00 10 */ lwz r3, 0x10(r1) +/* 8021CF8C 00219EEC 7C 04 18 40 */ cmplw r4, r3 +/* 8021CF90 00219EF0 40 82 00 0C */ bne lbl_8021CF9C +/* 8021CF94 00219EF4 7C 07 00 00 */ cmpw r7, r0 +/* 8021CF98 00219EF8 41 82 00 08 */ beq lbl_8021CFA0 +lbl_8021CF9C: +/* 8021CF9C 00219EFC 39 00 00 01 */ li r8, 1 +lbl_8021CFA0: +/* 8021CFA0 00219F00 55 00 06 3F */ clrlwi. r0, r8, 0x18 +/* 8021CFA4 00219F04 41 82 00 0C */ beq lbl_8021CFB0 +/* 8021CFA8 00219F08 39 00 FF FF */ li r8, -1 +/* 8021CFAC 00219F0C 48 00 00 38 */ b lbl_8021CFE4 +lbl_8021CFB0: +/* 8021CFB0 00219F10 80 61 00 40 */ lwz r3, 0x40(r1) +/* 8021CFB4 00219F14 38 80 00 00 */ li r4, 0 +/* 8021CFB8 00219F18 80 01 00 30 */ lwz r0, 0x30(r1) +/* 8021CFBC 00219F1C 7C 03 00 40 */ cmplw r3, r0 +/* 8021CFC0 00219F20 40 82 00 10 */ bne lbl_8021CFD0 +/* 8021CFC4 00219F24 7C 06 28 00 */ cmpw r6, r5 +/* 8021CFC8 00219F28 40 82 00 08 */ bne lbl_8021CFD0 +/* 8021CFCC 00219F2C 38 80 00 01 */ li r4, 1 +lbl_8021CFD0: +/* 8021CFD0 00219F30 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 8021CFD4 00219F34 41 82 00 0C */ beq lbl_8021CFE0 +/* 8021CFD8 00219F38 39 00 00 00 */ li r8, 0 +/* 8021CFDC 00219F3C 48 00 00 08 */ b lbl_8021CFE4 +lbl_8021CFE0: +/* 8021CFE0 00219F40 39 00 00 01 */ li r8, 1 +lbl_8021CFE4: +/* 8021CFE4 00219F44 7D 03 43 78 */ mr r3, r8 +/* 8021CFE8 00219F48 38 21 00 50 */ addi r1, r1, 0x50 +/* 8021CFEC 00219F4C 4E 80 00 20 */ blr + +.global "HasTweakValue__19CInGameTweakManagerCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +"HasTweakValue__19CInGameTweakManagerCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>": +/* 8021CFF0 00219F50 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8021CFF4 00219F54 7C 08 02 A6 */ mflr r0 +/* 8021CFF8 00219F58 90 01 00 44 */ stw r0, 0x44(r1) +/* 8021CFFC 00219F5C 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8021D000 00219F60 93 C1 00 38 */ stw r30, 0x38(r1) +/* 8021D004 00219F64 93 A1 00 34 */ stw r29, 0x34(r1) +/* 8021D008 00219F68 7C 9D 23 78 */ mr r29, r4 +/* 8021D00C 00219F6C 93 81 00 30 */ stw r28, 0x30(r1) +/* 8021D010 00219F70 7C 7C 1B 78 */ mr r28, r3 +/* 8021D014 00219F74 83 C3 00 0C */ lwz r30, 0xc(r3) +/* 8021D018 00219F78 48 00 00 60 */ b lbl_8021D078 +lbl_8021D01C: +/* 8021D01C 00219F7C 80 9E 00 04 */ lwz r4, 4(r30) +/* 8021D020 00219F80 38 61 00 20 */ addi r3, r1, 0x20 +/* 8021D024 00219F84 38 C1 00 0C */ addi r6, r1, 0xc +/* 8021D028 00219F88 38 A0 FF FF */ li r5, -1 +/* 8021D02C 00219F8C 48 11 FD 65 */ bl "__ct__Q24rstl83basic_string,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator" +/* 8021D030 00219F90 80 9D 00 00 */ lwz r4, 0(r29) +/* 8021D034 00219F94 38 61 00 10 */ addi r3, r1, 0x10 +/* 8021D038 00219F98 38 C1 00 08 */ addi r6, r1, 8 +/* 8021D03C 00219F9C 38 A0 FF FF */ li r5, -1 +/* 8021D040 00219FA0 48 11 FD 51 */ bl "__ct__Q24rstl83basic_string,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator" +/* 8021D044 00219FA4 38 61 00 20 */ addi r3, r1, 0x20 +/* 8021D048 00219FA8 38 81 00 10 */ addi r4, r1, 0x10 +/* 8021D04C 00219FAC 4B FF FD 1D */ bl sub_8021cd68 +/* 8021D050 00219FB0 7C 7F 1B 78 */ mr r31, r3 +/* 8021D054 00219FB4 38 61 00 10 */ addi r3, r1, 0x10 +/* 8021D058 00219FB8 48 11 FC 75 */ bl "internal_dereference__Q24rstl83basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8021D05C 00219FBC 38 61 00 20 */ addi r3, r1, 0x20 +/* 8021D060 00219FC0 48 11 FC 6D */ bl "internal_dereference__Q24rstl83basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8021D064 00219FC4 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 8021D068 00219FC8 41 82 00 0C */ beq lbl_8021D074 +/* 8021D06C 00219FCC 38 60 00 01 */ li r3, 1 +/* 8021D070 00219FD0 48 00 00 24 */ b lbl_8021D094 +lbl_8021D074: +/* 8021D074 00219FD4 3B DE 00 48 */ addi r30, r30, 0x48 +lbl_8021D078: +/* 8021D078 00219FD8 80 1C 00 04 */ lwz r0, 4(r28) +/* 8021D07C 00219FDC 80 7C 00 0C */ lwz r3, 0xc(r28) +/* 8021D080 00219FE0 1C 00 00 48 */ mulli r0, r0, 0x48 +/* 8021D084 00219FE4 7C 03 02 14 */ add r0, r3, r0 +/* 8021D088 00219FE8 7C 1E 00 40 */ cmplw r30, r0 +/* 8021D08C 00219FEC 40 82 FF 90 */ bne lbl_8021D01C +/* 8021D090 00219FF0 38 60 00 00 */ li r3, 0 +lbl_8021D094: +/* 8021D094 00219FF4 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8021D098 00219FF8 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8021D09C 00219FFC 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 8021D0A0 0021A000 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 8021D0A4 0021A004 83 81 00 30 */ lwz r28, 0x30(r1) +/* 8021D0A8 0021A008 7C 08 03 A6 */ mtlr r0 +/* 8021D0AC 0021A00C 38 21 00 40 */ addi r1, r1, 0x40 +/* 8021D0B0 0021A010 4E 80 00 20 */ blr + +.global __ct__19CInGameTweakManagerFv +__ct__19CInGameTweakManagerFv: +/* 8021D0B4 0021A014 38 00 00 00 */ li r0, 0 +/* 8021D0B8 0021A018 90 03 00 04 */ stw r0, 4(r3) +/* 8021D0BC 0021A01C 90 03 00 08 */ stw r0, 8(r3) +/* 8021D0C0 0021A020 90 03 00 0C */ stw r0, 0xc(r3) +/* 8021D0C4 0021A024 4E 80 00 20 */ blr + +.global "substr__Q24rstl66basic_string,Q24rstl17rmemory_allocator>CFii" +"substr__Q24rstl66basic_string,Q24rstl17rmemory_allocator>CFii": +/* 8021D0C8 0021A028 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 8021D0CC 0021A02C 7C 08 02 A6 */ mflr r0 +/* 8021D0D0 0021A030 90 01 00 64 */ stw r0, 0x64(r1) +/* 8021D0D4 0021A034 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 8021D0D8 0021A038 7C 7F 1B 78 */ mr r31, r3 +/* 8021D0DC 0021A03C 38 61 00 30 */ addi r3, r1, 0x30 +/* 8021D0E0 0021A040 93 C1 00 58 */ stw r30, 0x58(r1) +/* 8021D0E4 0021A044 48 12 0A C1 */ bl "range_iterator__Q24rstl66basic_string,Q24rstl17rmemory_allocator>CFii" +/* 8021D0E8 0021A048 80 E1 00 30 */ lwz r7, 0x30(r1) +/* 8021D0EC 0021A04C 38 61 00 10 */ addi r3, r1, 0x10 +/* 8021D0F0 0021A050 80 C1 00 34 */ lwz r6, 0x34(r1) +/* 8021D0F4 0021A054 38 81 00 18 */ addi r4, r1, 0x18 +/* 8021D0F8 0021A058 80 A1 00 38 */ lwz r5, 0x38(r1) +/* 8021D0FC 0021A05C 80 01 00 3C */ lwz r0, 0x3c(r1) +/* 8021D100 0021A060 90 E1 00 40 */ stw r7, 0x40(r1) +/* 8021D104 0021A064 90 C1 00 44 */ stw r6, 0x44(r1) +/* 8021D108 0021A068 90 A1 00 48 */ stw r5, 0x48(r1) +/* 8021D10C 0021A06C 90 01 00 4C */ stw r0, 0x4c(r1) +/* 8021D110 0021A070 90 A1 00 20 */ stw r5, 0x20(r1) +/* 8021D114 0021A074 90 01 00 24 */ stw r0, 0x24(r1) +/* 8021D118 0021A078 90 E1 00 08 */ stw r7, 8(r1) +/* 8021D11C 0021A07C 90 C1 00 0C */ stw r6, 0xc(r1) +/* 8021D120 0021A080 90 E1 00 28 */ stw r7, 0x28(r1) +/* 8021D124 0021A084 90 C1 00 2C */ stw r6, 0x2c(r1) +/* 8021D128 0021A088 90 A1 00 18 */ stw r5, 0x18(r1) +/* 8021D12C 0021A08C 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8021D130 0021A090 90 E1 00 10 */ stw r7, 0x10(r1) +/* 8021D134 0021A094 90 C1 00 14 */ stw r6, 0x14(r1) +/* 8021D138 0021A098 4B FE F6 B9 */ bl sub_8020c7f0 +/* 8021D13C 0021A09C 7C 7E 1B 78 */ mr r30, r3 +/* 8021D140 0021A0A0 7F E3 FB 78 */ mr r3, r31 +/* 8021D144 0021A0A4 38 9E 00 01 */ addi r4, r30, 1 +/* 8021D148 0021A0A8 48 12 09 E1 */ bl "internal_allocate__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fi" +/* 8021D14C 0021A0AC 81 01 00 2C */ lwz r8, 0x2c(r1) +/* 8021D150 0021A0B0 38 E0 00 00 */ li r7, 0 +/* 8021D154 0021A0B4 81 21 00 24 */ lwz r9, 0x24(r1) +/* 8021D158 0021A0B8 80 A1 00 28 */ lwz r5, 0x28(r1) +/* 8021D15C 0021A0BC 80 61 00 20 */ lwz r3, 0x20(r1) +/* 8021D160 0021A0C0 48 00 00 1C */ b lbl_8021D17C +lbl_8021D164: +/* 8021D164 0021A0C4 80 85 00 00 */ lwz r4, 0(r5) +/* 8021D168 0021A0C8 80 DF 00 00 */ lwz r6, 0(r31) +/* 8021D16C 0021A0CC 7C 04 40 AE */ lbzx r0, r4, r8 +/* 8021D170 0021A0D0 39 08 00 01 */ addi r8, r8, 1 +/* 8021D174 0021A0D4 7C 06 39 AE */ stbx r0, r6, r7 +/* 8021D178 0021A0D8 38 E7 00 01 */ addi r7, r7, 1 +lbl_8021D17C: +/* 8021D17C 0021A0DC 7C 05 18 40 */ cmplw r5, r3 +/* 8021D180 0021A0E0 38 00 00 00 */ li r0, 0 +/* 8021D184 0021A0E4 40 82 00 0C */ bne lbl_8021D190 +/* 8021D188 0021A0E8 7C 08 48 00 */ cmpw r8, r9 +/* 8021D18C 0021A0EC 41 82 00 08 */ beq lbl_8021D194 +lbl_8021D190: +/* 8021D190 0021A0F0 38 00 00 01 */ li r0, 1 +lbl_8021D194: +/* 8021D194 0021A0F4 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 8021D198 0021A0F8 40 82 FF CC */ bne lbl_8021D164 +/* 8021D19C 0021A0FC 80 7F 00 00 */ lwz r3, 0(r31) +/* 8021D1A0 0021A100 38 00 00 00 */ li r0, 0 +/* 8021D1A4 0021A104 7C 03 39 AE */ stbx r0, r3, r7 +/* 8021D1A8 0021A108 93 DF 00 08 */ stw r30, 8(r31) +/* 8021D1AC 0021A10C 80 01 00 64 */ lwz r0, 0x64(r1) +/* 8021D1B0 0021A110 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 8021D1B4 0021A114 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 8021D1B8 0021A118 7C 08 03 A6 */ mtlr r0 +/* 8021D1BC 0021A11C 38 21 00 60 */ addi r1, r1, 0x60 +/* 8021D1C0 0021A120 4E 80 00 20 */ blr + +.global "reserve__Q24rstl138vector,Q24rstl17rmemory_allocator>,10SObjectTag>,Q24rstl17rmemory_allocator>Fi" +"reserve__Q24rstl138vector,Q24rstl17rmemory_allocator>,10SObjectTag>,Q24rstl17rmemory_allocator>Fi": +/* 8021D1C4 0021A124 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8021D1C8 0021A128 7C 08 02 A6 */ mflr r0 +/* 8021D1CC 0021A12C 90 01 00 34 */ stw r0, 0x34(r1) +/* 8021D1D0 0021A130 BF 41 00 18 */ stmw r26, 0x18(r1) +/* 8021D1D4 0021A134 7C 9F 23 78 */ mr r31, r4 +/* 8021D1D8 0021A138 7C 7E 1B 78 */ mr r30, r3 +/* 8021D1DC 0021A13C 80 03 00 08 */ lwz r0, 8(r3) +/* 8021D1E0 0021A140 7C 1F 00 00 */ cmpw r31, r0 +/* 8021D1E4 0021A144 40 81 00 D8 */ ble lbl_8021D2BC +/* 8021D1E8 0021A148 1C 7F 00 18 */ mulli r3, r31, 0x18 +/* 8021D1EC 0021A14C 2C 03 00 00 */ cmpwi r3, 0 +/* 8021D1F0 0021A150 40 82 00 0C */ bne lbl_8021D1FC +/* 8021D1F4 0021A154 3B 80 00 00 */ li r28, 0 +/* 8021D1F8 0021A158 48 00 00 1C */ b lbl_8021D214 +lbl_8021D1FC: +/* 8021D1FC 0021A15C 3C 80 80 3D */ lis r4, lbl_803D3038@ha +/* 8021D200 0021A160 38 A0 00 00 */ li r5, 0 +/* 8021D204 0021A164 38 84 30 38 */ addi r4, r4, lbl_803D3038@l +/* 8021D208 0021A168 38 84 00 1B */ addi r4, r4, 0x1b +/* 8021D20C 0021A16C 48 0F 86 0D */ bl __nwa__FUlPCcPCc +/* 8021D210 0021A170 7C 7C 1B 78 */ mr r28, r3 +lbl_8021D214: +/* 8021D214 0021A174 80 1E 00 04 */ lwz r0, 4(r30) +/* 8021D218 0021A178 7F 9B E3 78 */ mr r27, r28 +/* 8021D21C 0021A17C 83 5E 00 0C */ lwz r26, 0xc(r30) +/* 8021D220 0021A180 1C 00 00 18 */ mulli r0, r0, 0x18 +/* 8021D224 0021A184 93 41 00 10 */ stw r26, 0x10(r1) +/* 8021D228 0021A188 7F BA 02 14 */ add r29, r26, r0 +/* 8021D22C 0021A18C 93 41 00 14 */ stw r26, 0x14(r1) +/* 8021D230 0021A190 93 A1 00 08 */ stw r29, 8(r1) +/* 8021D234 0021A194 93 A1 00 0C */ stw r29, 0xc(r1) +/* 8021D238 0021A198 48 00 00 30 */ b lbl_8021D268 +lbl_8021D23C: +/* 8021D23C 0021A19C 28 1B 00 00 */ cmplwi r27, 0 +/* 8021D240 0021A1A0 41 82 00 20 */ beq lbl_8021D260 +/* 8021D244 0021A1A4 7F 63 DB 78 */ mr r3, r27 +/* 8021D248 0021A1A8 7F 44 D3 78 */ mr r4, r26 +/* 8021D24C 0021A1AC 48 12 0F 15 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8021D250 0021A1B0 80 1A 00 10 */ lwz r0, 0x10(r26) +/* 8021D254 0021A1B4 90 1B 00 10 */ stw r0, 0x10(r27) +/* 8021D258 0021A1B8 80 1A 00 14 */ lwz r0, 0x14(r26) +/* 8021D25C 0021A1BC 90 1B 00 14 */ stw r0, 0x14(r27) +lbl_8021D260: +/* 8021D260 0021A1C0 3B 7B 00 18 */ addi r27, r27, 0x18 +/* 8021D264 0021A1C4 3B 5A 00 18 */ addi r26, r26, 0x18 +lbl_8021D268: +/* 8021D268 0021A1C8 7C 1A E8 40 */ cmplw r26, r29 +/* 8021D26C 0021A1CC 40 82 FF D0 */ bne lbl_8021D23C +/* 8021D270 0021A1D0 80 1E 00 04 */ lwz r0, 4(r30) +/* 8021D274 0021A1D4 83 5E 00 0C */ lwz r26, 0xc(r30) +/* 8021D278 0021A1D8 1C 00 00 18 */ mulli r0, r0, 0x18 +/* 8021D27C 0021A1DC 7F 7A 02 14 */ add r27, r26, r0 +/* 8021D280 0021A1E0 48 00 00 1C */ b lbl_8021D29C +lbl_8021D284: +/* 8021D284 0021A1E4 28 1A 00 00 */ cmplwi r26, 0 +/* 8021D288 0021A1E8 41 82 00 10 */ beq lbl_8021D298 +/* 8021D28C 0021A1EC 41 82 00 0C */ beq lbl_8021D298 +/* 8021D290 0021A1F0 7F 43 D3 78 */ mr r3, r26 +/* 8021D294 0021A1F4 48 12 08 4D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8021D298: +/* 8021D298 0021A1F8 3B 5A 00 18 */ addi r26, r26, 0x18 +lbl_8021D29C: +/* 8021D29C 0021A1FC 7C 1A D8 40 */ cmplw r26, r27 +/* 8021D2A0 0021A200 40 82 FF E4 */ bne lbl_8021D284 +/* 8021D2A4 0021A204 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 8021D2A8 0021A208 28 03 00 00 */ cmplwi r3, 0 +/* 8021D2AC 0021A20C 41 82 00 08 */ beq lbl_8021D2B4 +/* 8021D2B0 0021A210 48 0F 86 81 */ bl Free__7CMemoryFPCv +lbl_8021D2B4: +/* 8021D2B4 0021A214 93 9E 00 0C */ stw r28, 0xc(r30) +/* 8021D2B8 0021A218 93 FE 00 08 */ stw r31, 8(r30) +lbl_8021D2BC: +/* 8021D2BC 0021A21C BB 41 00 18 */ lmw r26, 0x18(r1) +/* 8021D2C0 0021A220 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8021D2C4 0021A224 7C 08 03 A6 */ mtlr r0 +/* 8021D2C8 0021A228 38 21 00 30 */ addi r1, r1, 0x30 +/* 8021D2CC 0021A22C 4E 80 00 20 */ blr + +.global sub_8021d2d0 +sub_8021d2d0: +/* 8021D2D0 0021A230 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8021D2D4 0021A234 7C 08 02 A6 */ mflr r0 +/* 8021D2D8 0021A238 90 01 00 34 */ stw r0, 0x34(r1) +/* 8021D2DC 0021A23C BF 41 00 18 */ stmw r26, 0x18(r1) +/* 8021D2E0 0021A240 7C 9E 23 78 */ mr r30, r4 +/* 8021D2E4 0021A244 7C 7D 1B 78 */ mr r29, r3 +/* 8021D2E8 0021A248 80 03 00 08 */ lwz r0, 8(r3) +/* 8021D2EC 0021A24C 7C 1E 00 00 */ cmpw r30, r0 +/* 8021D2F0 0021A250 40 81 01 38 */ ble lbl_8021D428 +/* 8021D2F4 0021A254 1C 7E 00 48 */ mulli r3, r30, 0x48 +/* 8021D2F8 0021A258 2C 03 00 00 */ cmpwi r3, 0 +/* 8021D2FC 0021A25C 40 82 00 0C */ bne lbl_8021D308 +/* 8021D300 0021A260 3B E0 00 00 */ li r31, 0 +/* 8021D304 0021A264 48 00 00 1C */ b lbl_8021D320 +lbl_8021D308: +/* 8021D308 0021A268 3C 80 80 3D */ lis r4, lbl_803D3038@ha +/* 8021D30C 0021A26C 38 A0 00 00 */ li r5, 0 +/* 8021D310 0021A270 38 84 30 38 */ addi r4, r4, lbl_803D3038@l +/* 8021D314 0021A274 38 84 00 1B */ addi r4, r4, 0x1b +/* 8021D318 0021A278 48 0F 85 01 */ bl __nwa__FUlPCcPCc +/* 8021D31C 0021A27C 7C 7F 1B 78 */ mr r31, r3 +lbl_8021D320: +/* 8021D320 0021A280 80 1D 00 04 */ lwz r0, 4(r29) +/* 8021D324 0021A284 7F FB FB 78 */ mr r27, r31 +/* 8021D328 0021A288 83 5D 00 0C */ lwz r26, 0xc(r29) +/* 8021D32C 0021A28C 1C 00 00 48 */ mulli r0, r0, 0x48 +/* 8021D330 0021A290 93 41 00 10 */ stw r26, 0x10(r1) +/* 8021D334 0021A294 7F 9A 02 14 */ add r28, r26, r0 +/* 8021D338 0021A298 93 41 00 14 */ stw r26, 0x14(r1) +/* 8021D33C 0021A29C 93 81 00 08 */ stw r28, 8(r1) +/* 8021D340 0021A2A0 93 81 00 0C */ stw r28, 0xc(r1) +/* 8021D344 0021A2A4 48 00 00 68 */ b lbl_8021D3AC +lbl_8021D348: +/* 8021D348 0021A2A8 28 1B 00 00 */ cmplwi r27, 0 +/* 8021D34C 0021A2AC 41 82 00 58 */ beq lbl_8021D3A4 +/* 8021D350 0021A2B0 80 1A 00 00 */ lwz r0, 0(r26) +/* 8021D354 0021A2B4 38 7B 00 04 */ addi r3, r27, 4 +/* 8021D358 0021A2B8 38 9A 00 04 */ addi r4, r26, 4 +/* 8021D35C 0021A2BC 90 1B 00 00 */ stw r0, 0(r27) +/* 8021D360 0021A2C0 48 12 0E 01 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8021D364 0021A2C4 38 7B 00 14 */ addi r3, r27, 0x14 +/* 8021D368 0021A2C8 38 9A 00 14 */ addi r4, r26, 0x14 +/* 8021D36C 0021A2CC 48 12 0D F5 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8021D370 0021A2D0 C0 1A 00 24 */ lfs f0, 0x24(r26) +/* 8021D374 0021A2D4 38 7B 00 30 */ addi r3, r27, 0x30 +/* 8021D378 0021A2D8 38 9A 00 30 */ addi r4, r26, 0x30 +/* 8021D37C 0021A2DC D0 1B 00 24 */ stfs f0, 0x24(r27) +/* 8021D380 0021A2E0 C0 1A 00 28 */ lfs f0, 0x28(r26) +/* 8021D384 0021A2E4 D0 1B 00 28 */ stfs f0, 0x28(r27) +/* 8021D388 0021A2E8 C0 1A 00 2C */ lfs f0, 0x2c(r26) +/* 8021D38C 0021A2EC D0 1B 00 2C */ stfs f0, 0x2c(r27) +/* 8021D390 0021A2F0 48 12 0D D1 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8021D394 0021A2F4 80 1A 00 40 */ lwz r0, 0x40(r26) +/* 8021D398 0021A2F8 90 1B 00 40 */ stw r0, 0x40(r27) +/* 8021D39C 0021A2FC 80 1A 00 44 */ lwz r0, 0x44(r26) +/* 8021D3A0 0021A300 90 1B 00 44 */ stw r0, 0x44(r27) +lbl_8021D3A4: +/* 8021D3A4 0021A304 3B 7B 00 48 */ addi r27, r27, 0x48 +/* 8021D3A8 0021A308 3B 5A 00 48 */ addi r26, r26, 0x48 +lbl_8021D3AC: +/* 8021D3AC 0021A30C 7C 1A E0 40 */ cmplw r26, r28 +/* 8021D3B0 0021A310 40 82 FF 98 */ bne lbl_8021D348 +/* 8021D3B4 0021A314 80 1D 00 04 */ lwz r0, 4(r29) +/* 8021D3B8 0021A318 83 5D 00 0C */ lwz r26, 0xc(r29) +/* 8021D3BC 0021A31C 1C 00 00 48 */ mulli r0, r0, 0x48 +/* 8021D3C0 0021A320 7F 7A 02 14 */ add r27, r26, r0 +/* 8021D3C4 0021A324 48 00 00 44 */ b lbl_8021D408 +lbl_8021D3C8: +/* 8021D3C8 0021A328 28 1A 00 00 */ cmplwi r26, 0 +/* 8021D3CC 0021A32C 41 82 00 38 */ beq lbl_8021D404 +/* 8021D3D0 0021A330 34 1A 00 24 */ addic. r0, r26, 0x24 +/* 8021D3D4 0021A334 41 82 00 10 */ beq lbl_8021D3E4 +/* 8021D3D8 0021A338 34 7A 00 30 */ addic. r3, r26, 0x30 +/* 8021D3DC 0021A33C 41 82 00 08 */ beq lbl_8021D3E4 +/* 8021D3E0 0021A340 48 12 07 01 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8021D3E4: +/* 8021D3E4 0021A344 34 1A 00 14 */ addic. r0, r26, 0x14 +/* 8021D3E8 0021A348 41 82 00 0C */ beq lbl_8021D3F4 +/* 8021D3EC 0021A34C 38 7A 00 14 */ addi r3, r26, 0x14 +/* 8021D3F0 0021A350 48 12 06 F1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8021D3F4: +/* 8021D3F4 0021A354 34 1A 00 04 */ addic. r0, r26, 4 +/* 8021D3F8 0021A358 41 82 00 0C */ beq lbl_8021D404 +/* 8021D3FC 0021A35C 38 7A 00 04 */ addi r3, r26, 4 +/* 8021D400 0021A360 48 12 06 E1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8021D404: +/* 8021D404 0021A364 3B 5A 00 48 */ addi r26, r26, 0x48 +lbl_8021D408: +/* 8021D408 0021A368 7C 1A D8 40 */ cmplw r26, r27 +/* 8021D40C 0021A36C 40 82 FF BC */ bne lbl_8021D3C8 +/* 8021D410 0021A370 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 8021D414 0021A374 28 03 00 00 */ cmplwi r3, 0 +/* 8021D418 0021A378 41 82 00 08 */ beq lbl_8021D420 +/* 8021D41C 0021A37C 48 0F 85 15 */ bl Free__7CMemoryFPCv +lbl_8021D420: +/* 8021D420 0021A380 93 FD 00 0C */ stw r31, 0xc(r29) +/* 8021D424 0021A384 93 DD 00 08 */ stw r30, 8(r29) +lbl_8021D428: +/* 8021D428 0021A388 BB 41 00 18 */ lmw r26, 0x18(r1) +/* 8021D42C 0021A38C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8021D430 0021A390 7C 08 03 A6 */ mtlr r0 +/* 8021D434 0021A394 38 21 00 30 */ addi r1, r1, 0x30 +/* 8021D438 0021A398 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CInventoryScreen.s b/asm/Kyoto_CWD/CInventoryScreen.s new file mode 100644 index 00000000..a7a6a6e8 --- /dev/null +++ b/asm/Kyoto_CWD/CInventoryScreen.s @@ -0,0 +1,1751 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global IsRightLogDynamic__16CInventoryScreenCFv +IsRightLogDynamic__16CInventoryScreenCFv: +/* 80205D34 00202C94 38 60 00 01 */ li r3, 1 +/* 80205D38 00202C98 4E 80 00 20 */ blr + +.global IsRightInventoryItemEquipped__16CInventoryScreenCFi +IsRightInventoryItemEquipped__16CInventoryScreenCFi: +/* 80205D3C 00202C9C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80205D40 00202CA0 7C 08 02 A6 */ mflr r0 +/* 80205D44 00202CA4 28 04 00 17 */ cmplwi r4, 0x17 +/* 80205D48 00202CA8 90 01 00 14 */ stw r0, 0x14(r1) +/* 80205D4C 00202CAC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80205D50 00202CB0 93 C1 00 08 */ stw r30, 8(r1) +/* 80205D54 00202CB4 80 63 00 04 */ lwz r3, 4(r3) +/* 80205D58 00202CB8 80 63 08 B8 */ lwz r3, 0x8b8(r3) +/* 80205D5C 00202CBC 83 C3 00 00 */ lwz r30, 0(r3) +/* 80205D60 00202CC0 41 81 02 14 */ bgt lbl_80205F74 +/* 80205D64 00202CC4 3C 60 80 3E */ lis r3, lbl_803E6F04@ha +/* 80205D68 00202CC8 54 80 10 3A */ slwi r0, r4, 2 +/* 80205D6C 00202CCC 38 63 6F 04 */ addi r3, r3, lbl_803E6F04@l +/* 80205D70 00202CD0 7C 03 00 2E */ lwzx r0, r3, r0 +/* 80205D74 00202CD4 7C 09 03 A6 */ mtctr r0 +/* 80205D78 00202CD8 4E 80 04 20 */ bctr +/* 80205D7C 00202CDC 80 1E 00 08 */ lwz r0, 8(r30) +/* 80205D80 00202CE0 7C 00 00 34 */ cntlzw r0, r0 +/* 80205D84 00202CE4 54 03 D9 7E */ srwi r3, r0, 5 +/* 80205D88 00202CE8 48 00 01 F0 */ b lbl_80205F78 +/* 80205D8C 00202CEC 80 1E 00 08 */ lwz r0, 8(r30) +/* 80205D90 00202CF0 20 00 00 01 */ subfic r0, r0, 1 +/* 80205D94 00202CF4 7C 00 00 34 */ cntlzw r0, r0 +/* 80205D98 00202CF8 54 03 D9 7E */ srwi r3, r0, 5 +/* 80205D9C 00202CFC 48 00 01 DC */ b lbl_80205F78 +/* 80205DA0 00202D00 80 1E 00 08 */ lwz r0, 8(r30) +/* 80205DA4 00202D04 20 00 00 02 */ subfic r0, r0, 2 +/* 80205DA8 00202D08 7C 00 00 34 */ cntlzw r0, r0 +/* 80205DAC 00202D0C 54 03 D9 7E */ srwi r3, r0, 5 +/* 80205DB0 00202D10 48 00 01 C8 */ b lbl_80205F78 +/* 80205DB4 00202D14 80 1E 00 08 */ lwz r0, 8(r30) +/* 80205DB8 00202D18 20 00 00 03 */ subfic r0, r0, 3 +/* 80205DBC 00202D1C 7C 00 00 34 */ cntlzw r0, r0 +/* 80205DC0 00202D20 54 03 D9 7E */ srwi r3, r0, 5 +/* 80205DC4 00202D24 48 00 01 B4 */ b lbl_80205F78 +/* 80205DC8 00202D28 80 1E 00 08 */ lwz r0, 8(r30) +/* 80205DCC 00202D2C 20 00 00 1B */ subfic r0, r0, 0x1b +/* 80205DD0 00202D30 7C 00 00 34 */ cntlzw r0, r0 +/* 80205DD4 00202D34 54 03 D9 7E */ srwi r3, r0, 5 +/* 80205DD8 00202D38 48 00 01 A0 */ b lbl_80205F78 +/* 80205DDC 00202D3C 7F C3 F3 78 */ mr r3, r30 +/* 80205DE0 00202D40 38 80 00 10 */ li r4, 0x10 +/* 80205DE4 00202D44 4B E8 BC DD */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80205DE8 00202D48 48 00 01 90 */ b lbl_80205F78 +/* 80205DEC 00202D4C 7F C3 F3 78 */ mr r3, r30 +/* 80205DF0 00202D50 38 80 00 12 */ li r4, 0x12 +/* 80205DF4 00202D54 4B E8 BC CD */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80205DF8 00202D58 48 00 01 80 */ b lbl_80205F78 +/* 80205DFC 00202D5C 7F C3 F3 78 */ mr r3, r30 +/* 80205E00 00202D60 38 80 00 13 */ li r4, 0x13 +/* 80205E04 00202D64 4B E8 BC BD */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80205E08 00202D68 48 00 01 70 */ b lbl_80205F78 +/* 80205E0C 00202D6C 7F C3 F3 78 */ mr r3, r30 +/* 80205E10 00202D70 38 80 00 06 */ li r4, 6 +/* 80205E14 00202D74 4B E8 BC AD */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80205E18 00202D78 48 00 01 60 */ b lbl_80205F78 +/* 80205E1C 00202D7C 7F C3 F3 78 */ mr r3, r30 +/* 80205E20 00202D80 38 80 00 07 */ li r4, 7 +/* 80205E24 00202D84 4B E8 BC 9D */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80205E28 00202D88 48 00 01 50 */ b lbl_80205F78 +/* 80205E2C 00202D8C 80 1E 00 20 */ lwz r0, 0x20(r30) +/* 80205E30 00202D90 7C 00 00 34 */ cntlzw r0, r0 +/* 80205E34 00202D94 54 03 D9 7E */ srwi r3, r0, 5 +/* 80205E38 00202D98 48 00 01 40 */ b lbl_80205F78 +/* 80205E3C 00202D9C 80 1E 00 20 */ lwz r0, 0x20(r30) +/* 80205E40 00202DA0 20 00 00 02 */ subfic r0, r0, 2 +/* 80205E44 00202DA4 7C 00 00 34 */ cntlzw r0, r0 +/* 80205E48 00202DA8 54 03 D9 7E */ srwi r3, r0, 5 +/* 80205E4C 00202DAC 48 00 01 2C */ b lbl_80205F78 +/* 80205E50 00202DB0 80 1E 00 20 */ lwz r0, 0x20(r30) +/* 80205E54 00202DB4 20 00 00 01 */ subfic r0, r0, 1 +/* 80205E58 00202DB8 7C 00 00 34 */ cntlzw r0, r0 +/* 80205E5C 00202DBC 54 03 D9 7E */ srwi r3, r0, 5 +/* 80205E60 00202DC0 48 00 01 18 */ b lbl_80205F78 +/* 80205E64 00202DC4 80 1E 00 20 */ lwz r0, 0x20(r30) +/* 80205E68 00202DC8 20 00 00 03 */ subfic r0, r0, 3 +/* 80205E6C 00202DCC 7C 00 00 34 */ cntlzw r0, r0 +/* 80205E70 00202DD0 54 03 D9 7E */ srwi r3, r0, 5 +/* 80205E74 00202DD4 48 00 01 04 */ b lbl_80205F78 +/* 80205E78 00202DD8 7F C3 F3 78 */ mr r3, r30 +/* 80205E7C 00202DDC 38 80 00 18 */ li r4, 0x18 +/* 80205E80 00202DE0 4B E8 BC 41 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80205E84 00202DE4 48 00 00 F4 */ b lbl_80205F78 +/* 80205E88 00202DE8 80 1E 00 14 */ lwz r0, 0x14(r30) +/* 80205E8C 00202DEC 7C 00 00 34 */ cntlzw r0, r0 +/* 80205E90 00202DF0 54 03 D9 7E */ srwi r3, r0, 5 +/* 80205E94 00202DF4 48 00 00 E4 */ b lbl_80205F78 +/* 80205E98 00202DF8 80 1E 00 14 */ lwz r0, 0x14(r30) +/* 80205E9C 00202DFC 20 00 00 02 */ subfic r0, r0, 2 +/* 80205EA0 00202E00 7C 00 00 34 */ cntlzw r0, r0 +/* 80205EA4 00202E04 54 03 D9 7E */ srwi r3, r0, 5 +/* 80205EA8 00202E08 48 00 00 D0 */ b lbl_80205F78 +/* 80205EAC 00202E0C 80 1E 00 14 */ lwz r0, 0x14(r30) +/* 80205EB0 00202E10 20 00 00 01 */ subfic r0, r0, 1 +/* 80205EB4 00202E14 7C 00 00 34 */ cntlzw r0, r0 +/* 80205EB8 00202E18 54 03 D9 7E */ srwi r3, r0, 5 +/* 80205EBC 00202E1C 48 00 00 BC */ b lbl_80205F78 +/* 80205EC0 00202E20 80 1E 00 14 */ lwz r0, 0x14(r30) +/* 80205EC4 00202E24 20 00 00 03 */ subfic r0, r0, 3 +/* 80205EC8 00202E28 7C 00 00 34 */ cntlzw r0, r0 +/* 80205ECC 00202E2C 54 03 D9 7E */ srwi r3, r0, 5 +/* 80205ED0 00202E30 48 00 00 A8 */ b lbl_80205F78 +/* 80205ED4 00202E34 7F C3 F3 78 */ mr r3, r30 +/* 80205ED8 00202E38 38 80 00 0F */ li r4, 0xf +/* 80205EDC 00202E3C 4B E8 BB E5 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80205EE0 00202E40 48 00 00 98 */ b lbl_80205F78 +/* 80205EE4 00202E44 7F C3 F3 78 */ mr r3, r30 +/* 80205EE8 00202E48 38 80 00 0C */ li r4, 0xc +/* 80205EEC 00202E4C 4B E8 BB D5 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80205EF0 00202E50 48 00 00 88 */ b lbl_80205F78 +/* 80205EF4 00202E54 7F C3 F3 78 */ mr r3, r30 +/* 80205EF8 00202E58 38 80 00 04 */ li r4, 4 +/* 80205EFC 00202E5C 4B E8 BB C5 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80205F00 00202E60 48 00 00 78 */ b lbl_80205F78 +/* 80205F04 00202E64 7F C3 F3 78 */ mr r3, r30 +/* 80205F08 00202E68 38 80 00 0A */ li r4, 0xa +/* 80205F0C 00202E6C 4B E8 BB B5 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80205F10 00202E70 48 00 00 68 */ b lbl_80205F78 +/* 80205F14 00202E74 7F C3 F3 78 */ mr r3, r30 +/* 80205F18 00202E78 3B E0 00 00 */ li r31, 0 +/* 80205F1C 00202E7C 38 80 00 0B */ li r4, 0xb +/* 80205F20 00202E80 4B E8 BB A1 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80205F24 00202E84 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80205F28 00202E88 40 82 00 40 */ bne lbl_80205F68 +/* 80205F2C 00202E8C 7F C3 F3 78 */ mr r3, r30 +/* 80205F30 00202E90 38 80 00 0E */ li r4, 0xe +/* 80205F34 00202E94 4B E8 BB 8D */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80205F38 00202E98 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80205F3C 00202E9C 40 82 00 2C */ bne lbl_80205F68 +/* 80205F40 00202EA0 7F C3 F3 78 */ mr r3, r30 +/* 80205F44 00202EA4 38 80 00 1C */ li r4, 0x1c +/* 80205F48 00202EA8 4B E8 BB 79 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80205F4C 00202EAC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80205F50 00202EB0 40 82 00 18 */ bne lbl_80205F68 +/* 80205F54 00202EB4 7F C3 F3 78 */ mr r3, r30 +/* 80205F58 00202EB8 38 80 00 08 */ li r4, 8 +/* 80205F5C 00202EBC 4B E8 BB 65 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80205F60 00202EC0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80205F64 00202EC4 41 82 00 08 */ beq lbl_80205F6C +lbl_80205F68: +/* 80205F68 00202EC8 3B E0 00 01 */ li r31, 1 +lbl_80205F6C: +/* 80205F6C 00202ECC 7F E3 FB 78 */ mr r3, r31 +/* 80205F70 00202ED0 48 00 00 08 */ b lbl_80205F78 +lbl_80205F74: +/* 80205F74 00202ED4 38 60 00 00 */ li r3, 0 +lbl_80205F78: +/* 80205F78 00202ED8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80205F7C 00202EDC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80205F80 00202EE0 83 C1 00 08 */ lwz r30, 8(r1) +/* 80205F84 00202EE4 7C 08 03 A6 */ mtlr r0 +/* 80205F88 00202EE8 38 21 00 10 */ addi r1, r1, 0x10 +/* 80205F8C 00202EEC 4E 80 00 20 */ blr + +.global HasRightInventoryItem__16CInventoryScreenCFi +HasRightInventoryItem__16CInventoryScreenCFi: +/* 80205F90 00202EF0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80205F94 00202EF4 7C 08 02 A6 */ mflr r0 +/* 80205F98 00202EF8 28 04 00 17 */ cmplwi r4, 0x17 +/* 80205F9C 00202EFC 90 01 00 14 */ stw r0, 0x14(r1) +/* 80205FA0 00202F00 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80205FA4 00202F04 93 C1 00 08 */ stw r30, 8(r1) +/* 80205FA8 00202F08 80 63 00 04 */ lwz r3, 4(r3) +/* 80205FAC 00202F0C 80 63 08 B8 */ lwz r3, 0x8b8(r3) +/* 80205FB0 00202F10 83 C3 00 00 */ lwz r30, 0(r3) +/* 80205FB4 00202F14 41 81 01 D4 */ bgt lbl_80206188 +/* 80205FB8 00202F18 3C 60 80 3E */ lis r3, lbl_803E6F64@ha +/* 80205FBC 00202F1C 54 80 10 3A */ slwi r0, r4, 2 +/* 80205FC0 00202F20 38 63 6F 64 */ addi r3, r3, lbl_803E6F64@l +/* 80205FC4 00202F24 7C 03 00 2E */ lwzx r0, r3, r0 +/* 80205FC8 00202F28 7C 09 03 A6 */ mtctr r0 +/* 80205FCC 00202F2C 4E 80 04 20 */ bctr +/* 80205FD0 00202F30 38 60 00 01 */ li r3, 1 +/* 80205FD4 00202F34 48 00 01 B8 */ b lbl_8020618C +/* 80205FD8 00202F38 7F C3 F3 78 */ mr r3, r30 +/* 80205FDC 00202F3C 38 80 00 01 */ li r4, 1 +/* 80205FE0 00202F40 4B E8 BA E1 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80205FE4 00202F44 48 00 01 A8 */ b lbl_8020618C +/* 80205FE8 00202F48 7F C3 F3 78 */ mr r3, r30 +/* 80205FEC 00202F4C 38 80 00 02 */ li r4, 2 +/* 80205FF0 00202F50 4B E8 BA D1 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80205FF4 00202F54 48 00 01 98 */ b lbl_8020618C +/* 80205FF8 00202F58 7F C3 F3 78 */ mr r3, r30 +/* 80205FFC 00202F5C 38 80 00 03 */ li r4, 3 +/* 80206000 00202F60 4B E8 BA C1 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80206004 00202F64 48 00 01 88 */ b lbl_8020618C +/* 80206008 00202F68 7F C3 F3 78 */ mr r3, r30 +/* 8020600C 00202F6C 38 80 00 17 */ li r4, 0x17 +/* 80206010 00202F70 4B E8 BA B1 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80206014 00202F74 48 00 01 78 */ b lbl_8020618C +/* 80206018 00202F78 7F C3 F3 78 */ mr r3, r30 +/* 8020601C 00202F7C 38 80 00 10 */ li r4, 0x10 +/* 80206020 00202F80 4B E8 BA A1 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80206024 00202F84 48 00 01 68 */ b lbl_8020618C +/* 80206028 00202F88 7F C3 F3 78 */ mr r3, r30 +/* 8020602C 00202F8C 38 80 00 12 */ li r4, 0x12 +/* 80206030 00202F90 4B E8 BA 91 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80206034 00202F94 48 00 01 58 */ b lbl_8020618C +/* 80206038 00202F98 7F C3 F3 78 */ mr r3, r30 +/* 8020603C 00202F9C 38 80 00 13 */ li r4, 0x13 +/* 80206040 00202FA0 4B E8 BA 81 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80206044 00202FA4 48 00 01 48 */ b lbl_8020618C +/* 80206048 00202FA8 7F C3 F3 78 */ mr r3, r30 +/* 8020604C 00202FAC 38 80 00 06 */ li r4, 6 +/* 80206050 00202FB0 4B E8 BA 71 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80206054 00202FB4 48 00 01 38 */ b lbl_8020618C +/* 80206058 00202FB8 7F C3 F3 78 */ mr r3, r30 +/* 8020605C 00202FBC 38 80 00 07 */ li r4, 7 +/* 80206060 00202FC0 4B E8 BA 61 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80206064 00202FC4 48 00 01 28 */ b lbl_8020618C +/* 80206068 00202FC8 38 60 00 01 */ li r3, 1 +/* 8020606C 00202FCC 48 00 01 20 */ b lbl_8020618C +/* 80206070 00202FD0 7F C3 F3 78 */ mr r3, r30 +/* 80206074 00202FD4 38 80 00 16 */ li r4, 0x16 +/* 80206078 00202FD8 4B E8 BA 49 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 8020607C 00202FDC 48 00 01 10 */ b lbl_8020618C +/* 80206080 00202FE0 7F C3 F3 78 */ mr r3, r30 +/* 80206084 00202FE4 38 80 00 15 */ li r4, 0x15 +/* 80206088 00202FE8 4B E8 BA 39 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 8020608C 00202FEC 48 00 01 00 */ b lbl_8020618C +/* 80206090 00202FF0 7F C3 F3 78 */ mr r3, r30 +/* 80206094 00202FF4 38 80 00 17 */ li r4, 0x17 +/* 80206098 00202FF8 4B E8 BA 29 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 8020609C 00202FFC 48 00 00 F0 */ b lbl_8020618C +/* 802060A0 00203000 7F C3 F3 78 */ mr r3, r30 +/* 802060A4 00203004 38 80 00 18 */ li r4, 0x18 +/* 802060A8 00203008 4B E8 BA 19 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 802060AC 0020300C 48 00 00 E0 */ b lbl_8020618C +/* 802060B0 00203010 38 60 00 01 */ li r3, 1 +/* 802060B4 00203014 48 00 00 D8 */ b lbl_8020618C +/* 802060B8 00203018 7F C3 F3 78 */ mr r3, r30 +/* 802060BC 0020301C 38 80 00 05 */ li r4, 5 +/* 802060C0 00203020 4B E8 BA 01 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 802060C4 00203024 48 00 00 C8 */ b lbl_8020618C +/* 802060C8 00203028 7F C3 F3 78 */ mr r3, r30 +/* 802060CC 0020302C 38 80 00 0D */ li r4, 0xd +/* 802060D0 00203030 4B E8 B9 F1 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 802060D4 00203034 48 00 00 B8 */ b lbl_8020618C +/* 802060D8 00203038 7F C3 F3 78 */ mr r3, r30 +/* 802060DC 0020303C 38 80 00 09 */ li r4, 9 +/* 802060E0 00203040 4B E8 B9 E1 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 802060E4 00203044 48 00 00 A8 */ b lbl_8020618C +/* 802060E8 00203048 7F C3 F3 78 */ mr r3, r30 +/* 802060EC 0020304C 38 80 00 0F */ li r4, 0xf +/* 802060F0 00203050 4B E8 B9 D1 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 802060F4 00203054 48 00 00 98 */ b lbl_8020618C +/* 802060F8 00203058 7F C3 F3 78 */ mr r3, r30 +/* 802060FC 0020305C 38 80 00 0C */ li r4, 0xc +/* 80206100 00203060 4B E8 B9 C1 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80206104 00203064 48 00 00 88 */ b lbl_8020618C +/* 80206108 00203068 7F C3 F3 78 */ mr r3, r30 +/* 8020610C 0020306C 38 80 00 04 */ li r4, 4 +/* 80206110 00203070 4B E8 B9 B1 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80206114 00203074 48 00 00 78 */ b lbl_8020618C +/* 80206118 00203078 7F C3 F3 78 */ mr r3, r30 +/* 8020611C 0020307C 38 80 00 0A */ li r4, 0xa +/* 80206120 00203080 4B E8 B9 A1 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80206124 00203084 48 00 00 68 */ b lbl_8020618C +/* 80206128 00203088 7F C3 F3 78 */ mr r3, r30 +/* 8020612C 0020308C 3B E0 00 00 */ li r31, 0 +/* 80206130 00203090 38 80 00 0B */ li r4, 0xb +/* 80206134 00203094 4B E8 B9 8D */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80206138 00203098 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8020613C 0020309C 40 82 00 40 */ bne lbl_8020617C +/* 80206140 002030A0 7F C3 F3 78 */ mr r3, r30 +/* 80206144 002030A4 38 80 00 0E */ li r4, 0xe +/* 80206148 002030A8 4B E8 B9 79 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 8020614C 002030AC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80206150 002030B0 40 82 00 2C */ bne lbl_8020617C +/* 80206154 002030B4 7F C3 F3 78 */ mr r3, r30 +/* 80206158 002030B8 38 80 00 1C */ li r4, 0x1c +/* 8020615C 002030BC 4B E8 B9 65 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80206160 002030C0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80206164 002030C4 40 82 00 18 */ bne lbl_8020617C +/* 80206168 002030C8 7F C3 F3 78 */ mr r3, r30 +/* 8020616C 002030CC 38 80 00 08 */ li r4, 8 +/* 80206170 002030D0 4B E8 B9 51 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80206174 002030D4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80206178 002030D8 41 82 00 08 */ beq lbl_80206180 +lbl_8020617C: +/* 8020617C 002030DC 3B E0 00 01 */ li r31, 1 +lbl_80206180: +/* 80206180 002030E0 7F E3 FB 78 */ mr r3, r31 +/* 80206184 002030E4 48 00 00 08 */ b lbl_8020618C +lbl_80206188: +/* 80206188 002030E8 38 60 00 00 */ li r3, 0 +lbl_8020618C: +/* 8020618C 002030EC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80206190 002030F0 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80206194 002030F4 83 C1 00 08 */ lwz r30, 8(r1) +/* 80206198 002030F8 7C 08 03 A6 */ mtlr r0 +/* 8020619C 002030FC 38 21 00 10 */ addi r1, r1, 0x10 +/* 802061A0 00203100 4E 80 00 20 */ blr + +.global HasLeftInventoryItem__16CInventoryScreenCFi +HasLeftInventoryItem__16CInventoryScreenCFi: +/* 802061A4 00203104 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 802061A8 00203108 7C 08 02 A6 */ mflr r0 +/* 802061AC 0020310C 2C 04 00 02 */ cmpwi r4, 2 +/* 802061B0 00203110 90 01 00 14 */ stw r0, 0x14(r1) +/* 802061B4 00203114 93 E1 00 0C */ stw r31, 0xc(r1) +/* 802061B8 00203118 93 C1 00 08 */ stw r30, 8(r1) +/* 802061BC 0020311C 80 63 00 04 */ lwz r3, 4(r3) +/* 802061C0 00203120 80 63 08 B8 */ lwz r3, 0x8b8(r3) +/* 802061C4 00203124 83 C3 00 00 */ lwz r30, 0(r3) +/* 802061C8 00203128 41 82 00 40 */ beq lbl_80206208 +/* 802061CC 0020312C 40 80 00 14 */ bge lbl_802061E0 +/* 802061D0 00203130 2C 04 00 00 */ cmpwi r4, 0 +/* 802061D4 00203134 41 82 00 1C */ beq lbl_802061F0 +/* 802061D8 00203138 40 80 00 20 */ bge lbl_802061F8 +/* 802061DC 0020313C 48 00 00 EC */ b lbl_802062C8 +lbl_802061E0: +/* 802061E0 00203140 2C 04 00 04 */ cmpwi r4, 4 +/* 802061E4 00203144 41 82 00 34 */ beq lbl_80206218 +/* 802061E8 00203148 40 80 00 E0 */ bge lbl_802062C8 +/* 802061EC 0020314C 48 00 00 24 */ b lbl_80206210 +lbl_802061F0: +/* 802061F0 00203150 38 60 00 01 */ li r3, 1 +/* 802061F4 00203154 48 00 00 D8 */ b lbl_802062CC +lbl_802061F8: +/* 802061F8 00203158 7F C3 F3 78 */ mr r3, r30 +/* 802061FC 0020315C 38 80 00 10 */ li r4, 0x10 +/* 80206200 00203160 4B E8 B8 C1 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80206204 00203164 48 00 00 C8 */ b lbl_802062CC +lbl_80206208: +/* 80206208 00203168 38 60 00 01 */ li r3, 1 +/* 8020620C 0020316C 48 00 00 C0 */ b lbl_802062CC +lbl_80206210: +/* 80206210 00203170 38 60 00 01 */ li r3, 1 +/* 80206214 00203174 48 00 00 B8 */ b lbl_802062CC +lbl_80206218: +/* 80206218 00203178 7F C3 F3 78 */ mr r3, r30 +/* 8020621C 0020317C 3B E0 00 00 */ li r31, 0 +/* 80206220 00203180 38 80 00 0F */ li r4, 0xf +/* 80206224 00203184 4B E8 B8 9D */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80206228 00203188 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8020622C 0020318C 40 82 00 90 */ bne lbl_802062BC +/* 80206230 00203190 7F C3 F3 78 */ mr r3, r30 +/* 80206234 00203194 38 80 00 0C */ li r4, 0xc +/* 80206238 00203198 4B E8 B8 89 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 8020623C 0020319C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80206240 002031A0 40 82 00 7C */ bne lbl_802062BC +/* 80206244 002031A4 7F C3 F3 78 */ mr r3, r30 +/* 80206248 002031A8 38 80 00 04 */ li r4, 4 +/* 8020624C 002031AC 4B E8 B8 75 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80206250 002031B0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80206254 002031B4 40 82 00 68 */ bne lbl_802062BC +/* 80206258 002031B8 7F C3 F3 78 */ mr r3, r30 +/* 8020625C 002031BC 38 80 00 0A */ li r4, 0xa +/* 80206260 002031C0 4B E8 B8 61 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80206264 002031C4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80206268 002031C8 40 82 00 54 */ bne lbl_802062BC +/* 8020626C 002031CC 7F C3 F3 78 */ mr r3, r30 +/* 80206270 002031D0 38 80 00 0B */ li r4, 0xb +/* 80206274 002031D4 4B E8 B8 4D */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80206278 002031D8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8020627C 002031DC 40 82 00 40 */ bne lbl_802062BC +/* 80206280 002031E0 7F C3 F3 78 */ mr r3, r30 +/* 80206284 002031E4 38 80 00 0E */ li r4, 0xe +/* 80206288 002031E8 4B E8 B8 39 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 8020628C 002031EC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80206290 002031F0 40 82 00 2C */ bne lbl_802062BC +/* 80206294 002031F4 7F C3 F3 78 */ mr r3, r30 +/* 80206298 002031F8 38 80 00 1C */ li r4, 0x1c +/* 8020629C 002031FC 4B E8 B8 25 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 802062A0 00203200 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 802062A4 00203204 40 82 00 18 */ bne lbl_802062BC +/* 802062A8 00203208 7F C3 F3 78 */ mr r3, r30 +/* 802062AC 0020320C 38 80 00 08 */ li r4, 8 +/* 802062B0 00203210 4B E8 B8 11 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 802062B4 00203214 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 802062B8 00203218 41 82 00 08 */ beq lbl_802062C0 +lbl_802062BC: +/* 802062BC 0020321C 3B E0 00 01 */ li r31, 1 +lbl_802062C0: +/* 802062C0 00203220 7F E3 FB 78 */ mr r3, r31 +/* 802062C4 00203224 48 00 00 08 */ b lbl_802062CC +lbl_802062C8: +/* 802062C8 00203228 38 60 00 00 */ li r3, 0 +lbl_802062CC: +/* 802062CC 0020322C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 802062D0 00203230 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 802062D4 00203234 83 C1 00 08 */ lwz r30, 8(r1) +/* 802062D8 00203238 7C 08 03 A6 */ mtlr r0 +/* 802062DC 0020323C 38 21 00 10 */ addi r1, r1, 0x10 +/* 802062E0 00203240 4E 80 00 20 */ blr + +.global UpdateSamusDollPulses__16CInventoryScreenFv +UpdateSamusDollPulses__16CInventoryScreenFv: +/* 802062E4 00203244 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 802062E8 00203248 7C 08 02 A6 */ mflr r0 +/* 802062EC 0020324C 38 80 00 00 */ li r4, 0 +/* 802062F0 00203250 90 01 00 24 */ stw r0, 0x24(r1) +/* 802062F4 00203254 BF 61 00 0C */ stmw r27, 0xc(r1) +/* 802062F8 00203258 7C 7B 1B 78 */ mr r27, r3 +/* 802062FC 0020325C 3B E0 00 00 */ li r31, 0 +/* 80206300 00203260 3B C0 00 00 */ li r30, 0 +/* 80206304 00203264 3B A0 00 00 */ li r29, 0 +/* 80206308 00203268 3B 80 00 00 */ li r28, 0 +/* 8020630C 0020326C 80 03 00 10 */ lwz r0, 0x10(r3) +/* 80206310 00203270 80 63 00 70 */ lwz r3, 0x70(r3) +/* 80206314 00203274 2C 00 00 01 */ cmpwi r0, 1 +/* 80206318 00203278 80 03 00 C4 */ lwz r0, 0xc4(r3) +/* 8020631C 0020327C 40 82 00 74 */ bne lbl_80206390 +/* 80206320 00203280 2C 00 00 02 */ cmpwi r0, 2 +/* 80206324 00203284 40 82 00 0C */ bne lbl_80206330 +/* 80206328 00203288 38 80 00 01 */ li r4, 1 +/* 8020632C 0020328C 48 00 00 64 */ b lbl_80206390 +lbl_80206330: +/* 80206330 00203290 2C 00 00 00 */ cmpwi r0, 0 +/* 80206334 00203294 40 82 00 0C */ bne lbl_80206340 +/* 80206338 00203298 3B E0 00 01 */ li r31, 1 +/* 8020633C 0020329C 48 00 00 54 */ b lbl_80206390 +lbl_80206340: +/* 80206340 002032A0 2C 00 00 03 */ cmpwi r0, 3 +/* 80206344 002032A4 40 82 00 0C */ bne lbl_80206350 +/* 80206348 002032A8 3B 80 00 01 */ li r28, 1 +/* 8020634C 002032AC 48 00 00 44 */ b lbl_80206390 +lbl_80206350: +/* 80206350 002032B0 2C 00 00 04 */ cmpwi r0, 4 +/* 80206354 002032B4 40 82 00 3C */ bne lbl_80206390 +/* 80206358 002032B8 80 1B 00 1C */ lwz r0, 0x1c(r27) +/* 8020635C 002032BC 3C 60 80 3D */ lis r3, lbl_803D26B4@ha +/* 80206360 002032C0 38 63 26 B4 */ addi r3, r3, lbl_803D26B4@l +/* 80206364 002032C4 1C 00 00 0C */ mulli r0, r0, 0xc +/* 80206368 002032C8 7C 03 00 2E */ lwzx r0, r3, r0 +/* 8020636C 002032CC 20 60 00 14 */ subfic r3, r0, 0x14 +/* 80206370 002032D0 2C 00 00 15 */ cmpwi r0, 0x15 +/* 80206374 002032D4 20 00 00 13 */ subfic r0, r0, 0x13 +/* 80206378 002032D8 7C 63 00 34 */ cntlzw r3, r3 +/* 8020637C 002032DC 7C 00 00 34 */ cntlzw r0, r0 +/* 80206380 002032E0 54 7E D9 7E */ srwi r30, r3, 5 +/* 80206384 002032E4 54 1D D9 7E */ srwi r29, r0, 5 +/* 80206388 002032E8 40 82 00 08 */ bne lbl_80206390 +/* 8020638C 002032EC 3B E0 00 01 */ li r31, 1 +lbl_80206390: +/* 80206390 002032F0 80 7B 01 9C */ lwz r3, 0x19c(r27) +/* 80206394 002032F4 54 84 06 3E */ clrlwi r4, r4, 0x18 +/* 80206398 002032F8 4B ED 50 99 */ bl SetPulseSuit__10CSamusDollFb +/* 8020639C 002032FC 80 7B 01 9C */ lwz r3, 0x19c(r27) +/* 802063A0 00203300 57 E4 06 3E */ clrlwi r4, r31, 0x18 +/* 802063A4 00203304 4B ED 50 CD */ bl SetPulseBeam__10CSamusDollFb +/* 802063A8 00203308 80 7B 01 9C */ lwz r3, 0x19c(r27) +/* 802063AC 0020330C 57 C4 06 3E */ clrlwi r4, r30, 0x18 +/* 802063B0 00203310 4B ED 50 B1 */ bl SetPulseGrapple__10CSamusDollFb +/* 802063B4 00203314 80 7B 01 9C */ lwz r3, 0x19c(r27) +/* 802063B8 00203318 57 A4 06 3E */ clrlwi r4, r29, 0x18 +/* 802063BC 0020331C 4B ED 50 95 */ bl SetPulseBoots__10CSamusDollFb +/* 802063C0 00203320 80 7B 01 9C */ lwz r3, 0x19c(r27) +/* 802063C4 00203324 57 84 06 3E */ clrlwi r4, r28, 0x18 +/* 802063C8 00203328 4B ED 50 79 */ bl SetPulseVisor__10CSamusDollFb +/* 802063CC 0020332C BB 61 00 0C */ lmw r27, 0xc(r1) +/* 802063D0 00203330 80 01 00 24 */ lwz r0, 0x24(r1) +/* 802063D4 00203334 7C 08 03 A6 */ mtlr r0 +/* 802063D8 00203338 38 21 00 20 */ addi r1, r1, 0x20 +/* 802063DC 0020333C 4E 80 00 20 */ blr + +.global nullsub_125 +nullsub_125: +/* 802063E0 00203340 4E 80 00 20 */ blr + +.global InputDisabled__16CInventoryScreenCFv +InputDisabled__16CInventoryScreenCFv: +/* 802063E4 00203344 80 83 01 9C */ lwz r4, 0x19c(r3) +/* 802063E8 00203348 C0 02 B0 C4 */ lfs f0, lbl_805ACDE4@sda21(r2) +/* 802063EC 0020334C C0 24 00 C4 */ lfs f1, 0xc4(r4) +/* 802063F0 00203350 FC 20 0A 10 */ fabs f1, f1 +/* 802063F4 00203354 FC 20 08 18 */ frsp f1, f1 +/* 802063F8 00203358 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802063FC 0020335C 40 81 00 0C */ ble lbl_80206408 +/* 80206400 00203360 38 60 00 01 */ li r3, 1 +/* 80206404 00203364 4E 80 00 20 */ blr +lbl_80206408: +/* 80206408 00203368 80 03 01 A8 */ lwz r0, 0x1a8(r3) +/* 8020640C 0020336C 20 00 00 01 */ subfic r0, r0, 1 +/* 80206410 00203370 7C 00 00 34 */ cntlzw r0, r0 +/* 80206414 00203374 54 03 D9 7E */ srwi r3, r0, 5 +/* 80206418 00203378 4E 80 00 20 */ blr + +.global TransitioningAway__16CInventoryScreenFv +TransitioningAway__16CInventoryScreenFv: +/* 8020641C 0020337C 38 00 00 01 */ li r0, 1 +/* 80206420 00203380 90 03 01 A8 */ stw r0, 0x1a8(r3) +/* 80206424 00203384 4E 80 00 20 */ blr + +.global UpdateRightLogHighlight__16CInventoryScreenFbiRC6CColorRC6CColor +UpdateRightLogHighlight__16CInventoryScreenFbiRC6CColorRC6CColor: +/* 80206428 00203388 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 8020642C 0020338C 7C 08 02 A6 */ mflr r0 +/* 80206430 00203390 90 01 00 54 */ stw r0, 0x54(r1) +/* 80206434 00203394 BE E1 00 2C */ stmw r23, 0x2c(r1) +/* 80206438 00203398 7C 79 1B 78 */ mr r25, r3 +/* 8020643C 0020339C 7C D8 33 78 */ mr r24, r6 +/* 80206440 002033A0 7C BB 2B 78 */ mr r27, r5 +/* 80206444 002033A4 7C 9A 23 78 */ mr r26, r4 +/* 80206448 002033A8 7C F7 3B 78 */ mr r23, r7 +/* 8020644C 002033AC 7F 05 C3 78 */ mr r5, r24 +/* 80206450 002033B0 38 61 00 14 */ addi r3, r1, 0x14 +/* 80206454 002033B4 81 0D A1 3C */ lwz r8, gpTweakGuiColors@sda21(r13) +/* 80206458 002033B8 38 88 01 C0 */ addi r4, r8, 0x1c0 +/* 8020645C 002033BC 48 15 CD 1D */ bl Modulate__6CColorFRC6CColorRC6CColor +/* 80206460 002033C0 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80206464 002033C4 7E E5 BB 78 */ mr r5, r23 +/* 80206468 002033C8 38 61 00 10 */ addi r3, r1, 0x10 +/* 8020646C 002033CC 38 84 01 C0 */ addi r4, r4, 0x1c0 +/* 80206470 002033D0 48 15 CD 09 */ bl Modulate__6CColorFRC6CColorRC6CColor +/* 80206474 002033D4 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80206478 002033D8 7F 05 C3 78 */ mr r5, r24 +/* 8020647C 002033DC 38 61 00 0C */ addi r3, r1, 0xc +/* 80206480 002033E0 38 84 01 BC */ addi r4, r4, 0x1bc +/* 80206484 002033E4 48 15 CC F5 */ bl Modulate__6CColorFRC6CColorRC6CColor +/* 80206488 002033E8 80 01 00 0C */ lwz r0, 0xc(r1) +/* 8020648C 002033EC 7E E5 BB 78 */ mr r5, r23 +/* 80206490 002033F0 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80206494 002033F4 38 61 00 08 */ addi r3, r1, 8 +/* 80206498 002033F8 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8020649C 002033FC 38 84 01 BC */ addi r4, r4, 0x1bc +/* 802064A0 00203400 48 15 CC D9 */ bl Modulate__6CColorFRC6CColorRC6CColor +/* 802064A4 00203404 80 81 00 08 */ lwz r4, 8(r1) +/* 802064A8 00203408 3C 60 80 3D */ lis r3, lbl_803D26F0@ha +/* 802064AC 0020340C 38 03 26 F0 */ addi r0, r3, lbl_803D26F0@l +/* 802064B0 00203410 3B D9 01 48 */ addi r30, r25, 0x148 +/* 802064B4 00203414 90 81 00 18 */ stw r4, 0x18(r1) +/* 802064B8 00203418 3B 80 00 00 */ li r28, 0 +/* 802064BC 0020341C 3B E0 00 00 */ li r31, 0 +/* 802064C0 00203420 80 79 00 70 */ lwz r3, 0x70(r25) +/* 802064C4 00203424 80 63 00 C4 */ lwz r3, 0xc4(r3) +/* 802064C8 00203428 54 63 18 38 */ slwi r3, r3, 3 +/* 802064CC 0020342C 7F A0 1A 14 */ add r29, r0, r3 +lbl_802064D0: +/* 802064D0 00203430 7C 1B E0 00 */ cmpw r27, r28 +/* 802064D4 00203434 3B 00 00 00 */ li r24, 0 +/* 802064D8 00203438 40 82 00 10 */ bne lbl_802064E8 +/* 802064DC 0020343C 57 40 06 3F */ clrlwi. r0, r26, 0x18 +/* 802064E0 00203440 41 82 00 08 */ beq lbl_802064E8 +/* 802064E4 00203444 3B 00 00 01 */ li r24, 1 +lbl_802064E8: +/* 802064E8 00203448 80 1D 00 00 */ lwz r0, 0(r29) +/* 802064EC 0020344C 3A E0 00 01 */ li r23, 1 +/* 802064F0 00203450 7C 1C 00 00 */ cmpw r28, r0 +/* 802064F4 00203454 40 80 00 38 */ bge lbl_8020652C +/* 802064F8 00203458 80 9D 00 04 */ lwz r4, 4(r29) +/* 802064FC 0020345C 7F 23 CB 78 */ mr r3, r25 +/* 80206500 00203460 7C 84 F8 2E */ lwzx r4, r4, r31 +/* 80206504 00203464 4B FF F8 39 */ bl IsRightInventoryItemEquipped__16CInventoryScreenCFi +/* 80206508 00203468 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8020650C 0020346C 41 82 00 20 */ beq lbl_8020652C +/* 80206510 00203470 57 00 06 3F */ clrlwi. r0, r24, 0x18 +/* 80206514 00203474 41 82 00 18 */ beq lbl_8020652C +/* 80206518 00203478 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 8020651C 0020347C 3A E0 00 00 */ li r23, 0 +/* 80206520 00203480 80 79 00 8C */ lwz r3, 0x8c(r25) +/* 80206524 00203484 38 84 01 C0 */ addi r4, r4, 0x1c0 +/* 80206528 00203488 48 0C 43 45 */ bl SetColor__10CGuiWidgetFRC6CColor +lbl_8020652C: +/* 8020652C 0020348C 57 00 06 3F */ clrlwi. r0, r24, 0x18 +/* 80206530 00203490 80 7E 00 00 */ lwz r3, 0(r30) +/* 80206534 00203494 38 81 00 18 */ addi r4, r1, 0x18 +/* 80206538 00203498 41 82 00 08 */ beq lbl_80206540 +/* 8020653C 0020349C 38 81 00 1C */ addi r4, r1, 0x1c +lbl_80206540: +/* 80206540 002034A0 48 0C 43 2D */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80206544 002034A4 56 E0 06 3F */ clrlwi. r0, r23, 0x18 +/* 80206548 002034A8 41 82 00 18 */ beq lbl_80206560 +/* 8020654C 002034AC 57 00 06 3F */ clrlwi. r0, r24, 0x18 +/* 80206550 002034B0 41 82 00 10 */ beq lbl_80206560 +/* 80206554 002034B4 80 79 00 8C */ lwz r3, 0x8c(r25) +/* 80206558 002034B8 38 81 00 1C */ addi r4, r1, 0x1c +/* 8020655C 002034BC 48 0C 43 11 */ bl SetColor__10CGuiWidgetFRC6CColor +lbl_80206560: +/* 80206560 002034C0 3B 9C 00 01 */ addi r28, r28, 1 +/* 80206564 002034C4 3B DE 00 04 */ addi r30, r30, 4 +/* 80206568 002034C8 2C 1C 00 05 */ cmpwi r28, 5 +/* 8020656C 002034CC 3B FF 00 0C */ addi r31, r31, 0xc +/* 80206570 002034D0 41 80 FF 60 */ blt lbl_802064D0 +/* 80206574 002034D4 BA E1 00 2C */ lmw r23, 0x2c(r1) +/* 80206578 002034D8 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8020657C 002034DC 7C 08 03 A6 */ mtlr r0 +/* 80206580 002034E0 38 21 00 50 */ addi r1, r1, 0x50 +/* 80206584 002034E4 4E 80 00 20 */ blr + +.global UpdateRightLogColors__16CInventoryScreenFbRC6CColor +UpdateRightLogColors__16CInventoryScreenFbRC6CColor: +/* 80206588 002034E8 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 8020658C 002034EC 7C 08 02 A6 */ mflr r0 +/* 80206590 002034F0 90 01 00 54 */ stw r0, 0x54(r1) +/* 80206594 002034F4 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 80206598 002034F8 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 8020659C 002034FC BE E1 00 1C */ stmw r23, 0x1c(r1) +/* 802065A0 00203500 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 802065A4 00203504 7C 7E 1B 78 */ mr r30, r3 +/* 802065A8 00203508 7C BF 2B 78 */ mr r31, r5 +/* 802065AC 0020350C 41 82 00 10 */ beq lbl_802065BC +/* 802065B0 00203510 48 14 39 FD */ bl White__6CColorFv +/* 802065B4 00203514 7C 64 1B 78 */ mr r4, r3 +/* 802065B8 00203518 48 00 00 24 */ b lbl_802065DC +lbl_802065BC: +/* 802065BC 0020351C 48 14 39 F1 */ bl White__6CColorFv +/* 802065C0 00203520 C3 E2 B0 C8 */ lfs f31, lbl_805ACDE8@sda21(r2) +/* 802065C4 00203524 F3 E1 A0 08 */ psq_st f31, 8(r1), 1, qr2 +/* 802065C8 00203528 38 81 00 0C */ addi r4, r1, 0xc +/* 802065CC 0020352C 80 63 00 00 */ lwz r3, 0(r3) +/* 802065D0 00203530 88 01 00 08 */ lbz r0, 8(r1) +/* 802065D4 00203534 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 802065D8 00203538 90 01 00 0C */ stw r0, 0xc(r1) +lbl_802065DC: +/* 802065DC 0020353C 80 7E 00 80 */ lwz r3, 0x80(r30) +/* 802065E0 00203540 48 0C 42 8D */ bl SetColor__10CGuiWidgetFRC6CColor +/* 802065E4 00203544 80 9E 00 70 */ lwz r4, 0x70(r30) +/* 802065E8 00203548 3C 60 80 3D */ lis r3, lbl_803D26F0@ha +/* 802065EC 0020354C 38 03 26 F0 */ addi r0, r3, lbl_803D26F0@l +/* 802065F0 00203550 3B BE 00 DC */ addi r29, r30, 0xdc +/* 802065F4 00203554 80 64 00 C4 */ lwz r3, 0xc4(r4) +/* 802065F8 00203558 3B 7E 01 60 */ addi r27, r30, 0x160 +/* 802065FC 0020355C 3B 20 00 00 */ li r25, 0 +/* 80206600 00203560 3B 80 00 00 */ li r28, 0 +/* 80206604 00203564 54 63 18 38 */ slwi r3, r3, 3 +/* 80206608 00203568 7F 40 1A 14 */ add r26, r0, r3 +lbl_8020660C: +/* 8020660C 0020356C 80 1A 00 00 */ lwz r0, 0(r26) +/* 80206610 00203570 3A E0 00 01 */ li r23, 1 +/* 80206614 00203574 83 1D 00 00 */ lwz r24, 0(r29) +/* 80206618 00203578 7C 19 00 00 */ cmpw r25, r0 +/* 8020661C 0020357C 40 80 00 40 */ bge lbl_8020665C +/* 80206620 00203580 80 9A 00 04 */ lwz r4, 4(r26) +/* 80206624 00203584 7F C3 F3 78 */ mr r3, r30 +/* 80206628 00203588 7C 84 E0 2E */ lwzx r4, r4, r28 +/* 8020662C 0020358C 4B FF F7 11 */ bl IsRightInventoryItemEquipped__16CInventoryScreenCFi +/* 80206630 00203590 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80206634 00203594 41 82 00 28 */ beq lbl_8020665C +/* 80206638 00203598 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 8020663C 0020359C 80 7B 00 00 */ lwz r3, 0(r27) +/* 80206640 002035A0 38 84 01 C0 */ addi r4, r4, 0x1c0 +/* 80206644 002035A4 48 0C 42 29 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80206648 002035A8 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 8020664C 002035AC 38 78 00 D4 */ addi r3, r24, 0xd4 +/* 80206650 002035B0 38 84 01 C0 */ addi r4, r4, 0x1c0 +/* 80206654 002035B4 48 0C 30 15 */ bl SetFontColor__15CGuiTextSupportFRC6CColor +/* 80206658 002035B8 3A E0 00 00 */ li r23, 0 +lbl_8020665C: +/* 8020665C 002035BC 56 E0 06 3F */ clrlwi. r0, r23, 0x18 +/* 80206660 002035C0 41 82 00 1C */ beq lbl_8020667C +/* 80206664 002035C4 80 7B 00 00 */ lwz r3, 0(r27) +/* 80206668 002035C8 7F E4 FB 78 */ mr r4, r31 +/* 8020666C 002035CC 48 0C 42 01 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80206670 002035D0 7F E4 FB 78 */ mr r4, r31 +/* 80206674 002035D4 38 78 00 D4 */ addi r3, r24, 0xd4 +/* 80206678 002035D8 48 0C 2F F1 */ bl SetFontColor__15CGuiTextSupportFRC6CColor +lbl_8020667C: +/* 8020667C 002035DC 3B 39 00 01 */ addi r25, r25, 1 +/* 80206680 002035E0 3B 9C 00 0C */ addi r28, r28, 0xc +/* 80206684 002035E4 2C 19 00 05 */ cmpwi r25, 5 +/* 80206688 002035E8 3B 7B 00 04 */ addi r27, r27, 4 +/* 8020668C 002035EC 3B BD 00 04 */ addi r29, r29, 4 +/* 80206690 002035F0 41 80 FF 7C */ blt lbl_8020660C +/* 80206694 002035F4 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 80206698 002035F8 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 8020669C 002035FC BA E1 00 1C */ lmw r23, 0x1c(r1) +/* 802066A0 00203600 80 01 00 54 */ lwz r0, 0x54(r1) +/* 802066A4 00203604 7C 08 03 A6 */ mtlr r0 +/* 802066A8 00203608 38 21 00 50 */ addi r1, r1, 0x50 +/* 802066AC 0020360C 4E 80 00 20 */ blr + +.global UpdateRightTable__16CInventoryScreenFv +UpdateRightTable__16CInventoryScreenFv: +/* 802066B0 00203610 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 802066B4 00203614 7C 08 02 A6 */ mflr r0 +/* 802066B8 00203618 90 01 00 84 */ stw r0, 0x84(r1) +/* 802066BC 0020361C DB E1 00 70 */ stfd f31, 0x70(r1) +/* 802066C0 00203620 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 +/* 802066C4 00203624 BF 01 00 50 */ stmw r24, 0x50(r1) +/* 802066C8 00203628 7C 7C 1B 78 */ mr r28, r3 +/* 802066CC 0020362C 4B E6 A7 01 */ bl UpdateRightTable__16CPauseScreenBaseFv +/* 802066D0 00203630 80 9C 00 70 */ lwz r4, 0x70(r28) +/* 802066D4 00203634 3C 60 80 3D */ lis r3, lbl_803D26F0@ha +/* 802066D8 00203638 3C A0 80 00 */ lis r5, 0x7FFFFFFF@ha +/* 802066DC 0020363C 3B FC 00 DC */ addi r31, r28, 0xdc +/* 802066E0 00203640 80 84 00 C4 */ lwz r4, 0xc4(r4) +/* 802066E4 00203644 38 03 26 F0 */ addi r0, r3, lbl_803D26F0@l +/* 802066E8 00203648 3B C5 FF FF */ addi r30, r5, 0x7FFFFFFF@l +/* 802066EC 0020364C 3B A0 00 00 */ li r29, 0 +/* 802066F0 00203650 54 83 18 38 */ slwi r3, r4, 3 +/* 802066F4 00203654 3B 60 00 00 */ li r27, 0 +/* 802066F8 00203658 7F 40 1A 14 */ add r26, r0, r3 +lbl_802066FC: +/* 802066FC 0020365C 80 1A 00 00 */ lwz r0, 0(r26) +/* 80206700 00203660 83 3F 00 00 */ lwz r25, 0(r31) +/* 80206704 00203664 7C 1D 00 00 */ cmpw r29, r0 +/* 80206708 00203668 40 80 00 E0 */ bge lbl_802067E8 +/* 8020670C 0020366C 80 1A 00 04 */ lwz r0, 4(r26) +/* 80206710 00203670 7F 83 E3 78 */ mr r3, r28 +/* 80206714 00203674 7F 00 DA 14 */ add r24, r0, r27 +/* 80206718 00203678 80 98 00 00 */ lwz r4, 0(r24) +/* 8020671C 0020367C 4B FF F8 75 */ bl HasRightInventoryItem__16CInventoryScreenCFi +/* 80206720 00203680 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80206724 00203684 41 82 00 74 */ beq lbl_80206798 +/* 80206728 00203688 80 7C 00 0C */ lwz r3, 0xc(r28) +/* 8020672C 0020368C 80 98 00 04 */ lwz r4, 4(r24) +/* 80206730 00203690 48 14 FF CD */ bl GetString__12CStringTableCFi +/* 80206734 00203694 7C 64 1B 78 */ mr r4, r3 +/* 80206738 00203698 38 61 00 34 */ addi r3, r1, 0x34 +/* 8020673C 0020369C 38 C1 00 0C */ addi r6, r1, 0xc +/* 80206740 002036A0 38 A0 FF FF */ li r5, -1 +/* 80206744 002036A4 48 13 70 79 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCwiRCQ24rstl17rmemory_allocator" +/* 80206748 002036A8 38 79 00 D4 */ addi r3, r25, 0xd4 +/* 8020674C 002036AC 38 81 00 34 */ addi r4, r1, 0x34 +/* 80206750 002036B0 38 A0 00 00 */ li r5, 0 +/* 80206754 002036B4 48 0C 31 31 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80206758 002036B8 38 61 00 34 */ addi r3, r1, 0x34 +/* 8020675C 002036BC 48 13 69 D9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80206760 002036C0 80 7C 00 84 */ lwz r3, 0x84(r28) +/* 80206764 002036C4 38 9D 00 01 */ addi r4, r29, 1 +/* 80206768 002036C8 81 83 00 00 */ lwz r12, 0(r3) +/* 8020676C 002036CC 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 80206770 002036D0 7D 89 03 A6 */ mtctr r12 +/* 80206774 002036D4 4E 80 04 21 */ bctrl +/* 80206778 002036D8 88 03 00 B6 */ lbz r0, 0xb6(r3) +/* 8020677C 002036DC 38 80 00 01 */ li r4, 1 +/* 80206780 002036E0 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 80206784 002036E4 7C 1D F0 00 */ cmpw r29, r30 +/* 80206788 002036E8 98 03 00 B6 */ stb r0, 0xb6(r3) +/* 8020678C 002036EC 40 80 00 88 */ bge lbl_80206814 +/* 80206790 002036F0 7F BE EB 78 */ mr r30, r29 +/* 80206794 002036F4 48 00 00 80 */ b lbl_80206814 +lbl_80206798: +/* 80206798 002036F8 80 82 B0 C0 */ lwz r4, lbl_805ACDE0@sda21(r2) +/* 8020679C 002036FC 38 61 00 24 */ addi r3, r1, 0x24 +/* 802067A0 00203700 4B E0 F2 51 */ bl wstring_l__4rstlFPCw +/* 802067A4 00203704 38 79 00 D4 */ addi r3, r25, 0xd4 +/* 802067A8 00203708 38 81 00 24 */ addi r4, r1, 0x24 +/* 802067AC 0020370C 38 A0 00 00 */ li r5, 0 +/* 802067B0 00203710 48 0C 30 D5 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 802067B4 00203714 38 61 00 24 */ addi r3, r1, 0x24 +/* 802067B8 00203718 48 13 69 7D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 802067BC 0020371C 80 7C 00 84 */ lwz r3, 0x84(r28) +/* 802067C0 00203720 38 9D 00 01 */ addi r4, r29, 1 +/* 802067C4 00203724 81 83 00 00 */ lwz r12, 0(r3) +/* 802067C8 00203728 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 802067CC 0020372C 7D 89 03 A6 */ mtctr r12 +/* 802067D0 00203730 4E 80 04 21 */ bctrl +/* 802067D4 00203734 88 03 00 B6 */ lbz r0, 0xb6(r3) +/* 802067D8 00203738 38 80 00 00 */ li r4, 0 +/* 802067DC 0020373C 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 802067E0 00203740 98 03 00 B6 */ stb r0, 0xb6(r3) +/* 802067E4 00203744 48 00 00 30 */ b lbl_80206814 +lbl_802067E8: +/* 802067E8 00203748 3C 80 80 3E */ lis r4, lbl_803E6FC4@ha +/* 802067EC 0020374C 38 61 00 14 */ addi r3, r1, 0x14 +/* 802067F0 00203750 38 84 6F C4 */ addi r4, r4, lbl_803E6FC4@l +/* 802067F4 00203754 38 84 00 0E */ addi r4, r4, 0xe +/* 802067F8 00203758 4B E0 F1 F9 */ bl wstring_l__4rstlFPCw +/* 802067FC 0020375C 38 79 00 D4 */ addi r3, r25, 0xd4 +/* 80206800 00203760 38 81 00 14 */ addi r4, r1, 0x14 +/* 80206804 00203764 38 A0 00 00 */ li r5, 0 +/* 80206808 00203768 48 0C 30 7D */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8020680C 0020376C 38 61 00 14 */ addi r3, r1, 0x14 +/* 80206810 00203770 48 13 69 25 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80206814: +/* 80206814 00203774 3B BD 00 01 */ addi r29, r29, 1 +/* 80206818 00203778 3B 7B 00 0C */ addi r27, r27, 0xc +/* 8020681C 0020377C 2C 1D 00 05 */ cmpwi r29, 5 +/* 80206820 00203780 3B FF 00 04 */ addi r31, r31, 4 +/* 80206824 00203784 41 80 FE D8 */ blt lbl_802066FC +/* 80206828 00203788 3C 1E 80 01 */ addis r0, r30, 0x8001 +/* 8020682C 0020378C 28 00 FF FF */ cmplwi r0, 0xffff +/* 80206830 00203790 41 82 00 18 */ beq lbl_80206848 +/* 80206834 00203794 93 DC 00 1C */ stw r30, 0x1c(r28) +/* 80206838 00203798 7F 83 E3 78 */ mr r3, r28 +/* 8020683C 0020379C 80 9C 00 1C */ lwz r4, 0x1c(r28) +/* 80206840 002037A0 7C 85 23 78 */ mr r5, r4 +/* 80206844 002037A4 4B E6 A2 AD */ bl SetRightTableSelection__16CPauseScreenBaseFii +lbl_80206848: +/* 80206848 002037A8 80 7C 00 84 */ lwz r3, 0x84(r28) +/* 8020684C 002037AC 38 80 00 00 */ li r4, 0 +/* 80206850 002037B0 81 83 00 00 */ lwz r12, 0(r3) +/* 80206854 002037B4 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 80206858 002037B8 7D 89 03 A6 */ mtctr r12 +/* 8020685C 002037BC 4E 80 04 21 */ bctrl +/* 80206860 002037C0 88 03 00 B6 */ lbz r0, 0xb6(r3) +/* 80206864 002037C4 38 80 00 00 */ li r4, 0 +/* 80206868 002037C8 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 8020686C 002037CC 98 03 00 B6 */ stb r0, 0xb6(r3) +/* 80206870 002037D0 80 7C 00 84 */ lwz r3, 0x84(r28) +/* 80206874 002037D4 81 83 00 00 */ lwz r12, 0(r3) +/* 80206878 002037D8 80 83 00 C0 */ lwz r4, 0xc0(r3) +/* 8020687C 002037DC 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 80206880 002037E0 38 84 FF FF */ addi r4, r4, -1 +/* 80206884 002037E4 7D 89 03 A6 */ mtctr r12 +/* 80206888 002037E8 4E 80 04 21 */ bctrl +/* 8020688C 002037EC 88 03 00 B6 */ lbz r0, 0xb6(r3) +/* 80206890 002037F0 38 80 00 00 */ li r4, 0 +/* 80206894 002037F4 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 80206898 002037F8 C3 E2 B0 CC */ lfs f31, lbl_805ACDEC@sda21(r2) +/* 8020689C 002037FC 98 03 00 B6 */ stb r0, 0xb6(r3) +/* 802068A0 00203800 80 6D A1 3C */ lwz r3, gpTweakGuiColors@sda21(r13) +/* 802068A4 00203804 38 A3 01 BC */ addi r5, r3, 0x1bc +/* 802068A8 00203808 F3 E1 A0 08 */ psq_st f31, 8(r1), 1, qr2 +/* 802068AC 0020380C 80 E3 01 BC */ lwz r7, 0x1bc(r3) +/* 802068B0 00203810 7F 83 E3 78 */ mr r3, r28 +/* 802068B4 00203814 88 01 00 08 */ lbz r0, 8(r1) +/* 802068B8 00203818 38 C1 00 10 */ addi r6, r1, 0x10 +/* 802068BC 0020381C 50 E0 00 2E */ rlwimi r0, r7, 0, 0, 0x17 +/* 802068C0 00203820 38 80 00 00 */ li r4, 0 +/* 802068C4 00203824 90 01 00 10 */ stw r0, 0x10(r1) +/* 802068C8 00203828 81 9C 00 00 */ lwz r12, 0(r28) +/* 802068CC 0020382C 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 802068D0 00203830 7D 89 03 A6 */ mtctr r12 +/* 802068D4 00203834 4E 80 04 21 */ bctrl +/* 802068D8 00203838 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 +/* 802068DC 0020383C CB E1 00 70 */ lfd f31, 0x70(r1) +/* 802068E0 00203840 BB 01 00 50 */ lmw r24, 0x50(r1) +/* 802068E4 00203844 80 01 00 84 */ lwz r0, 0x84(r1) +/* 802068E8 00203848 7C 08 03 A6 */ mtlr r0 +/* 802068EC 0020384C 38 21 00 80 */ addi r1, r1, 0x80 +/* 802068F0 00203850 4E 80 00 20 */ blr + +.global Update__16CInventoryScreenFfR9CRandom16R18CArchitectureQueue +Update__16CInventoryScreenFfR9CRandom16R18CArchitectureQueue: +/* 802068F4 00203854 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 802068F8 00203858 7C 08 02 A6 */ mflr r0 +/* 802068FC 0020385C 90 01 00 64 */ stw r0, 0x64(r1) +/* 80206900 00203860 DB E1 00 50 */ stfd f31, 0x50(r1) +/* 80206904 00203864 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 80206908 00203868 DB C1 00 40 */ stfd f30, 0x40(r1) +/* 8020690C 0020386C F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0 +/* 80206910 00203870 DB A1 00 30 */ stfd f29, 0x30(r1) +/* 80206914 00203874 F3 A1 00 38 */ psq_st f29, 56(r1), 0, qr0 +/* 80206918 00203878 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8020691C 0020387C 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80206920 00203880 FF E0 08 90 */ fmr f31, f1 +/* 80206924 00203884 7C 7F 1B 78 */ mr r31, r3 +/* 80206928 00203888 7C 9E 23 78 */ mr r30, r4 +/* 8020692C 0020388C 4B E6 AB 75 */ bl Update__16CPauseScreenBaseFfR9CRandom16R18CArchitectureQueue +/* 80206930 00203890 FC 20 F8 90 */ fmr f1, f31 +/* 80206934 00203894 80 7F 01 9C */ lwz r3, 0x19c(r31) +/* 80206938 00203898 7F C4 F3 78 */ mr r4, r30 +/* 8020693C 0020389C 4B ED 5F 21 */ bl Update__10CSamusDollFfR9CRandom16 +/* 80206940 002038A0 80 1F 00 10 */ lwz r0, 0x10(r31) +/* 80206944 002038A4 2C 00 00 02 */ cmpwi r0, 2 +/* 80206948 002038A8 40 82 01 04 */ bne lbl_80206A4C +/* 8020694C 002038AC 88 1F 01 AD */ lbz r0, 0x1ad(r31) +/* 80206950 002038B0 28 00 00 00 */ cmplwi r0, 0 +/* 80206954 002038B4 41 82 00 38 */ beq lbl_8020698C +/* 80206958 002038B8 C0 42 B0 D0 */ lfs f2, lbl_805ACDF0@sda21(r2) +/* 8020695C 002038BC C0 3F 01 A4 */ lfs f1, 0x1a4(r31) +/* 80206960 002038C0 C0 0D 93 84 */ lfs f0, lbl_805A7F44@sda21(r13) +/* 80206964 002038C4 EC 22 0F FA */ fmadds f1, f2, f31, f1 +/* 80206968 002038C8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8020696C 002038CC D0 21 00 14 */ stfs f1, 0x14(r1) +/* 80206970 002038D0 40 80 00 0C */ bge lbl_8020697C +/* 80206974 002038D4 38 61 00 14 */ addi r3, r1, 0x14 +/* 80206978 002038D8 48 00 00 08 */ b lbl_80206980 +lbl_8020697C: +/* 8020697C 002038DC 38 6D 93 84 */ addi r3, r13, lbl_805A7F44@sda21 +lbl_80206980: +/* 80206980 002038E0 C0 03 00 00 */ lfs f0, 0(r3) +/* 80206984 002038E4 D0 1F 01 A4 */ stfs f0, 0x1a4(r31) +/* 80206988 002038E8 48 00 00 34 */ b lbl_802069BC +lbl_8020698C: +/* 8020698C 002038EC C0 42 B0 D0 */ lfs f2, lbl_805ACDF0@sda21(r2) +/* 80206990 002038F0 C0 3F 01 A4 */ lfs f1, 0x1a4(r31) +/* 80206994 002038F4 C0 0D 93 88 */ lfs f0, lbl_805A7F48@sda21(r13) +/* 80206998 002038F8 EC 22 0F FC */ fnmsubs f1, f2, f31, f1 +/* 8020699C 002038FC FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 802069A0 00203900 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 802069A4 00203904 40 80 00 0C */ bge lbl_802069B0 +/* 802069A8 00203908 38 61 00 10 */ addi r3, r1, 0x10 +/* 802069AC 0020390C 48 00 00 08 */ b lbl_802069B4 +lbl_802069B0: +/* 802069B0 00203910 38 6D 93 88 */ addi r3, r13, lbl_805A7F48@sda21 +lbl_802069B4: +/* 802069B4 00203914 C0 03 00 00 */ lfs f0, 0(r3) +/* 802069B8 00203918 D0 1F 01 A4 */ stfs f0, 0x1a4(r31) +lbl_802069BC: +/* 802069BC 0020391C C3 FF 01 A4 */ lfs f31, 0x1a4(r31) +/* 802069C0 00203920 48 14 35 ED */ bl White__6CColorFv +/* 802069C4 00203924 C0 02 B0 D4 */ lfs f0, lbl_805ACDF4@sda21(r2) +/* 802069C8 00203928 EF A0 07 F2 */ fmuls f29, f0, f31 +/* 802069CC 0020392C F3 A1 A0 08 */ psq_st f29, 8(r1), 1, qr2 +/* 802069D0 00203930 38 81 00 18 */ addi r4, r1, 0x18 +/* 802069D4 00203934 80 63 00 00 */ lwz r3, 0(r3) +/* 802069D8 00203938 88 01 00 08 */ lbz r0, 8(r1) +/* 802069DC 0020393C 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 802069E0 00203940 90 01 00 18 */ stw r0, 0x18(r1) +/* 802069E4 00203944 80 7F 01 74 */ lwz r3, 0x174(r31) +/* 802069E8 00203948 48 0C 3E 85 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 802069EC 0020394C C0 22 B0 D8 */ lfs f1, lbl_805ACDF8@sda21(r2) +/* 802069F0 00203950 C0 1F 01 A4 */ lfs f0, 0x1a4(r31) +/* 802069F4 00203954 EF E1 00 28 */ fsubs f31, f1, f0 +/* 802069F8 00203958 48 14 35 B5 */ bl White__6CColorFv +/* 802069FC 0020395C C0 02 B0 D4 */ lfs f0, lbl_805ACDF4@sda21(r2) +/* 80206A00 00203960 EF C0 07 F2 */ fmuls f30, f0, f31 +/* 80206A04 00203964 F3 C1 A0 09 */ psq_st f30, 9(r1), 1, qr2 +/* 80206A08 00203968 38 81 00 0C */ addi r4, r1, 0xc +/* 80206A0C 0020396C 80 63 00 00 */ lwz r3, 0(r3) +/* 80206A10 00203970 88 01 00 09 */ lbz r0, 9(r1) +/* 80206A14 00203974 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 80206A18 00203978 90 01 00 0C */ stw r0, 0xc(r1) +/* 80206A1C 0020397C 80 7F 01 80 */ lwz r3, 0x180(r31) +/* 80206A20 00203980 48 0C 3E 4D */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80206A24 00203984 C0 22 B0 C4 */ lfs f1, lbl_805ACDE4@sda21(r2) +/* 80206A28 00203988 C0 1F 01 A4 */ lfs f0, 0x1a4(r31) +/* 80206A2C 0020398C FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 80206A30 00203990 40 82 00 1C */ bne lbl_80206A4C +/* 80206A34 00203994 80 1F 01 A8 */ lwz r0, 0x1a8(r31) +/* 80206A38 00203998 2C 00 00 00 */ cmpwi r0, 0 +/* 80206A3C 0020399C 40 82 00 10 */ bne lbl_80206A4C +/* 80206A40 002039A0 7F E3 FB 78 */ mr r3, r31 +/* 80206A44 002039A4 38 80 00 01 */ li r4, 1 +/* 80206A48 002039A8 4B E6 A3 CD */ bl ChangeMode__16CPauseScreenBaseFQ216CPauseScreenBase5EMode +lbl_80206A4C: +/* 80206A4C 002039AC 80 9F 00 70 */ lwz r4, 0x70(r31) +/* 80206A50 002039B0 38 A0 00 00 */ li r5, 0 +/* 80206A54 002039B4 80 7F 01 9C */ lwz r3, 0x19c(r31) +/* 80206A58 002039B8 80 04 00 C4 */ lwz r0, 0xc4(r4) +/* 80206A5C 002039BC 2C 00 00 01 */ cmpwi r0, 1 +/* 80206A60 002039C0 40 82 00 14 */ bne lbl_80206A74 +/* 80206A64 002039C4 80 1F 00 10 */ lwz r0, 0x10(r31) +/* 80206A68 002039C8 2C 00 00 00 */ cmpwi r0, 0 +/* 80206A6C 002039CC 41 82 00 08 */ beq lbl_80206A74 +/* 80206A70 002039D0 38 A0 00 01 */ li r5, 1 +lbl_80206A74: +/* 80206A74 002039D4 54 A4 06 3E */ clrlwi r4, r5, 0x18 +/* 80206A78 002039D8 4B ED 4B 95 */ bl CheckTransition__10CSamusDollFb +/* 80206A7C 002039DC 7F E3 FB 78 */ mr r3, r31 +/* 80206A80 002039E0 4B FF F8 65 */ bl UpdateSamusDollPulses__16CInventoryScreenFv +/* 80206A84 002039E4 80 1F 01 A8 */ lwz r0, 0x1a8(r31) +/* 80206A88 002039E8 2C 00 00 01 */ cmpwi r0, 1 +/* 80206A8C 002039EC 40 82 00 1C */ bne lbl_80206AA8 +/* 80206A90 002039F0 C0 22 B0 C4 */ lfs f1, lbl_805ACDE4@sda21(r2) +/* 80206A94 002039F4 C0 1F 01 A4 */ lfs f0, 0x1a4(r31) +/* 80206A98 002039F8 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 80206A9C 002039FC 40 82 00 0C */ bne lbl_80206AA8 +/* 80206AA0 00203A00 38 00 00 02 */ li r0, 2 +/* 80206AA4 00203A04 90 1F 01 A8 */ stw r0, 0x1a8(r31) +lbl_80206AA8: +/* 80206AA8 00203A08 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 +/* 80206AAC 00203A0C CB E1 00 50 */ lfd f31, 0x50(r1) +/* 80206AB0 00203A10 E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0 +/* 80206AB4 00203A14 CB C1 00 40 */ lfd f30, 0x40(r1) +/* 80206AB8 00203A18 E3 A1 00 38 */ psq_l f29, 56(r1), 0, qr0 +/* 80206ABC 00203A1C CB A1 00 30 */ lfd f29, 0x30(r1) +/* 80206AC0 00203A20 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80206AC4 00203A24 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80206AC8 00203A28 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80206ACC 00203A2C 7C 08 03 A6 */ mtlr r0 +/* 80206AD0 00203A30 38 21 00 60 */ addi r1, r1, 0x60 +/* 80206AD4 00203A34 4E 80 00 20 */ blr + +.global Touch__16CInventoryScreenFv +Touch__16CInventoryScreenFv: +/* 80206AD8 00203A38 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80206ADC 00203A3C 7C 08 02 A6 */ mflr r0 +/* 80206AE0 00203A40 90 01 00 14 */ stw r0, 0x14(r1) +/* 80206AE4 00203A44 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80206AE8 00203A48 7C 7F 1B 78 */ mr r31, r3 +/* 80206AEC 00203A4C 4B E6 A9 B1 */ bl Touch__16CPauseScreenBaseFv +/* 80206AF0 00203A50 80 7F 01 9C */ lwz r3, 0x19c(r31) +/* 80206AF4 00203A54 4B ED 69 7D */ bl Touch__10CSamusDollFv +/* 80206AF8 00203A58 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80206AFC 00203A5C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80206B00 00203A60 7C 08 03 A6 */ mtlr r0 +/* 80206B04 00203A64 38 21 00 10 */ addi r1, r1, 0x10 +/* 80206B08 00203A68 4E 80 00 20 */ blr + +.global Draw__16CInventoryScreenCFfff +Draw__16CInventoryScreenCFfff: +/* 80206B0C 00203A6C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80206B10 00203A70 7C 08 02 A6 */ mflr r0 +/* 80206B14 00203A74 90 01 00 24 */ stw r0, 0x24(r1) +/* 80206B18 00203A78 DB E1 00 10 */ stfd f31, 0x10(r1) +/* 80206B1C 00203A7C F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 +/* 80206B20 00203A80 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80206B24 00203A84 7C 7F 1B 78 */ mr r31, r3 +/* 80206B28 00203A88 FF E0 08 90 */ fmr f31, f1 +/* 80206B2C 00203A8C 80 83 01 9C */ lwz r4, 0x19c(r3) +/* 80206B30 00203A90 C0 04 00 C4 */ lfs f0, 0xc4(r4) +/* 80206B34 00203A94 FC 00 02 10 */ fabs f0, f0 +/* 80206B38 00203A98 FC 60 00 18 */ frsp f3, f0 +/* 80206B3C 00203A9C 4B E6 A8 55 */ bl Draw__16CPauseScreenBaseCFfff +/* 80206B40 00203AA0 C0 22 B0 D8 */ lfs f1, lbl_805ACDF8@sda21(r2) +/* 80206B44 00203AA4 C0 1F 01 A4 */ lfs f0, 0x1a4(r31) +/* 80206B48 00203AA8 80 7F 01 9C */ lwz r3, 0x19c(r31) +/* 80206B4C 00203AAC EC 01 00 28 */ fsubs f0, f1, f0 +/* 80206B50 00203AB0 80 9F 00 04 */ lwz r4, 4(r31) +/* 80206B54 00203AB4 EC 3F 00 32 */ fmuls f1, f31, f0 +/* 80206B58 00203AB8 4B ED 4A FD */ bl Draw__10CSamusDollFRC13CStateManagerf +/* 80206B5C 00203ABC E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 +/* 80206B60 00203AC0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80206B64 00203AC4 CB E1 00 10 */ lfd f31, 0x10(r1) +/* 80206B68 00203AC8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80206B6C 00203ACC 7C 08 03 A6 */ mtlr r0 +/* 80206B70 00203AD0 38 21 00 20 */ addi r1, r1, 0x20 +/* 80206B74 00203AD4 4E 80 00 20 */ blr + +.global GetRightTableCount__16CInventoryScreenCFv +GetRightTableCount__16CInventoryScreenCFv: +/* 80206B78 00203AD8 80 83 00 70 */ lwz r4, 0x70(r3) +/* 80206B7C 00203ADC 3C 60 80 3D */ lis r3, lbl_803D26F0@ha +/* 80206B80 00203AE0 38 63 26 F0 */ addi r3, r3, lbl_803D26F0@l +/* 80206B84 00203AE4 80 04 00 C4 */ lwz r0, 0xc4(r4) +/* 80206B88 00203AE8 54 00 18 38 */ slwi r0, r0, 3 +/* 80206B8C 00203AEC 7C 63 00 2E */ lwzx r3, r3, r0 +/* 80206B90 00203AF0 4E 80 00 20 */ blr + +.global ShouldRightTableAdvance__16CInventoryScreenFv +ShouldRightTableAdvance__16CInventoryScreenFv: +/* 80206B94 00203AF4 80 63 01 9C */ lwz r3, 0x19c(r3) +/* 80206B98 00203AF8 C0 22 B0 C4 */ lfs f1, lbl_805ACDE4@sda21(r2) +/* 80206B9C 00203AFC C0 03 00 C4 */ lfs f0, 0xc4(r3) +/* 80206BA0 00203B00 FC 00 02 10 */ fabs f0, f0 +/* 80206BA4 00203B04 FC 00 00 18 */ frsp f0, f0 +/* 80206BA8 00203B08 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 80206BAC 00203B0C 7C 00 00 26 */ mfcr r0 +/* 80206BB0 00203B10 54 03 1F FE */ rlwinm r3, r0, 3, 0x1f, 0x1f +/* 80206BB4 00203B14 4E 80 00 20 */ blr + +.global ShouldLeftTableAdvance__16CInventoryScreenFv +ShouldLeftTableAdvance__16CInventoryScreenFv: +/* 80206BB8 00203B18 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80206BBC 00203B1C 7C 08 02 A6 */ mflr r0 +/* 80206BC0 00203B20 90 01 00 14 */ stw r0, 0x14(r1) +/* 80206BC4 00203B24 80 63 01 9C */ lwz r3, 0x19c(r3) +/* 80206BC8 00203B28 4B ED 6F 9D */ bl IsLoaded__10CSamusDollCFv +/* 80206BCC 00203B2C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80206BD0 00203B30 7C 08 03 A6 */ mtlr r0 +/* 80206BD4 00203B34 38 21 00 10 */ addi r1, r1, 0x10 +/* 80206BD8 00203B38 4E 80 00 20 */ blr + +.global VActivate__16CInventoryScreenFv +VActivate__16CInventoryScreenFv: +/* 80206BDC 00203B3C 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80206BE0 00203B40 7C 08 02 A6 */ mflr r0 +/* 80206BE4 00203B44 90 01 00 54 */ stw r0, 0x54(r1) +/* 80206BE8 00203B48 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 80206BEC 00203B4C 93 C1 00 48 */ stw r30, 0x48(r1) +/* 80206BF0 00203B50 3B C0 00 00 */ li r30, 0 +/* 80206BF4 00203B54 93 A1 00 44 */ stw r29, 0x44(r1) +/* 80206BF8 00203B58 93 81 00 40 */ stw r28, 0x40(r1) +/* 80206BFC 00203B5C 7C 7C 1B 78 */ mr r28, r3 +/* 80206C00 00203B60 3B FC 00 AC */ addi r31, r28, 0xac +lbl_80206C04: +/* 80206C04 00203B64 83 BF 00 00 */ lwz r29, 0(r31) +/* 80206C08 00203B68 7F 83 E3 78 */ mr r3, r28 +/* 80206C0C 00203B6C 7F C4 F3 78 */ mr r4, r30 +/* 80206C10 00203B70 4B FF F5 95 */ bl HasLeftInventoryItem__16CInventoryScreenCFi +/* 80206C14 00203B74 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80206C18 00203B78 41 82 00 40 */ beq lbl_80206C58 +/* 80206C1C 00203B7C 80 7C 00 0C */ lwz r3, 0xc(r28) +/* 80206C20 00203B80 38 9E 00 0A */ addi r4, r30, 0xa +/* 80206C24 00203B84 48 14 FA D9 */ bl GetString__12CStringTableCFi +/* 80206C28 00203B88 7C 64 1B 78 */ mr r4, r3 +/* 80206C2C 00203B8C 38 61 00 30 */ addi r3, r1, 0x30 +/* 80206C30 00203B90 38 C1 00 0C */ addi r6, r1, 0xc +/* 80206C34 00203B94 38 A0 FF FF */ li r5, -1 +/* 80206C38 00203B98 48 13 6B 85 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCwiRCQ24rstl17rmemory_allocator" +/* 80206C3C 00203B9C 38 7D 00 D4 */ addi r3, r29, 0xd4 +/* 80206C40 00203BA0 38 81 00 30 */ addi r4, r1, 0x30 +/* 80206C44 00203BA4 38 A0 00 00 */ li r5, 0 +/* 80206C48 00203BA8 48 0C 2C 3D */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80206C4C 00203BAC 38 61 00 30 */ addi r3, r1, 0x30 +/* 80206C50 00203BB0 48 13 64 E5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80206C54 00203BB4 48 00 00 50 */ b lbl_80206CA4 +lbl_80206C58: +/* 80206C58 00203BB8 80 82 B0 C0 */ lwz r4, lbl_805ACDE0@sda21(r2) +/* 80206C5C 00203BBC 38 61 00 20 */ addi r3, r1, 0x20 +/* 80206C60 00203BC0 4B E0 ED 91 */ bl wstring_l__4rstlFPCw +/* 80206C64 00203BC4 38 7D 00 D4 */ addi r3, r29, 0xd4 +/* 80206C68 00203BC8 38 81 00 20 */ addi r4, r1, 0x20 +/* 80206C6C 00203BCC 38 A0 00 00 */ li r5, 0 +/* 80206C70 00203BD0 48 0C 2C 15 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80206C74 00203BD4 38 61 00 20 */ addi r3, r1, 0x20 +/* 80206C78 00203BD8 48 13 64 BD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80206C7C 00203BDC 80 7C 00 70 */ lwz r3, 0x70(r28) +/* 80206C80 00203BE0 7F C4 F3 78 */ mr r4, r30 +/* 80206C84 00203BE4 81 83 00 00 */ lwz r12, 0(r3) +/* 80206C88 00203BE8 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 80206C8C 00203BEC 7D 89 03 A6 */ mtctr r12 +/* 80206C90 00203BF0 4E 80 04 21 */ bctrl +/* 80206C94 00203BF4 88 03 00 B6 */ lbz r0, 0xb6(r3) +/* 80206C98 00203BF8 38 80 00 00 */ li r4, 0 +/* 80206C9C 00203BFC 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 80206CA0 00203C00 98 03 00 B6 */ stb r0, 0xb6(r3) +lbl_80206CA4: +/* 80206CA4 00203C04 3B DE 00 01 */ addi r30, r30, 1 +/* 80206CA8 00203C08 3B FF 00 04 */ addi r31, r31, 4 +/* 80206CAC 00203C0C 2C 1E 00 05 */ cmpwi r30, 5 +/* 80206CB0 00203C10 41 80 FF 54 */ blt lbl_80206C04 +/* 80206CB4 00203C14 80 7C 00 0C */ lwz r3, 0xc(r28) +/* 80206CB8 00203C18 38 80 00 09 */ li r4, 9 +/* 80206CBC 00203C1C 48 14 FA 41 */ bl GetString__12CStringTableCFi +/* 80206CC0 00203C20 7C 64 1B 78 */ mr r4, r3 +/* 80206CC4 00203C24 38 61 00 10 */ addi r3, r1, 0x10 +/* 80206CC8 00203C28 38 C1 00 08 */ addi r6, r1, 8 +/* 80206CCC 00203C2C 38 A0 FF FF */ li r5, -1 +/* 80206CD0 00203C30 48 13 6A ED */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCwiRCQ24rstl17rmemory_allocator" +/* 80206CD4 00203C34 80 7C 01 78 */ lwz r3, 0x178(r28) +/* 80206CD8 00203C38 38 81 00 10 */ addi r4, r1, 0x10 +/* 80206CDC 00203C3C 38 A0 00 00 */ li r5, 0 +/* 80206CE0 00203C40 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80206CE4 00203C44 48 0C 2B A1 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80206CE8 00203C48 38 61 00 10 */ addi r3, r1, 0x10 +/* 80206CEC 00203C4C 48 13 64 49 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80206CF0 00203C50 80 7C 01 80 */ lwz r3, 0x180(r28) +/* 80206CF4 00203C54 38 80 00 01 */ li r4, 1 +/* 80206CF8 00203C58 38 A0 00 01 */ li r5, 1 +/* 80206CFC 00203C5C 48 0C 39 ED */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80206D00 00203C60 3B A0 00 05 */ li r29, 5 +/* 80206D04 00203C64 3B E0 00 00 */ li r31, 0 +/* 80206D08 00203C68 48 00 00 2C */ b lbl_80206D34 +lbl_80206D0C: +/* 80206D0C 00203C6C 80 7C 00 70 */ lwz r3, 0x70(r28) +/* 80206D10 00203C70 7F A4 EB 78 */ mr r4, r29 +/* 80206D14 00203C74 81 83 00 00 */ lwz r12, 0(r3) +/* 80206D18 00203C78 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 80206D1C 00203C7C 7D 89 03 A6 */ mtctr r12 +/* 80206D20 00203C80 4E 80 04 21 */ bctrl +/* 80206D24 00203C84 88 03 00 B6 */ lbz r0, 0xb6(r3) +/* 80206D28 00203C88 53 E0 26 F6 */ rlwimi r0, r31, 4, 0x1b, 0x1b +/* 80206D2C 00203C8C 3B BD 00 01 */ addi r29, r29, 1 +/* 80206D30 00203C90 98 03 00 B6 */ stb r0, 0xb6(r3) +lbl_80206D34: +/* 80206D34 00203C94 2C 1D 00 05 */ cmpwi r29, 5 +/* 80206D38 00203C98 41 80 FF D4 */ blt lbl_80206D0C +/* 80206D3C 00203C9C 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80206D40 00203CA0 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 80206D44 00203CA4 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 80206D48 00203CA8 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 80206D4C 00203CAC 83 81 00 40 */ lwz r28, 0x40(r1) +/* 80206D50 00203CB0 7C 08 03 A6 */ mtlr r0 +/* 80206D54 00203CB4 38 21 00 50 */ addi r1, r1, 0x50 +/* 80206D58 00203CB8 4E 80 00 20 */ blr + +.global VReady__16CInventoryScreenCFv +VReady__16CInventoryScreenCFv: +/* 80206D5C 00203CBC 38 60 00 01 */ li r3, 1 +/* 80206D60 00203CC0 4E 80 00 20 */ blr + +.global UpdateTextBody__16CInventoryScreenFv +UpdateTextBody__16CInventoryScreenFv: +/* 80206D64 00203CC4 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80206D68 00203CC8 7C 08 02 A6 */ mflr r0 +/* 80206D6C 00203CCC 90 01 00 34 */ stw r0, 0x34(r1) +/* 80206D70 00203CD0 38 00 00 00 */ li r0, 0 +/* 80206D74 00203CD4 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80206D78 00203CD8 7C 7F 1B 78 */ mr r31, r3 +/* 80206D7C 00203CDC 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80206D80 00203CE0 98 03 01 AC */ stb r0, 0x1ac(r3) +/* 80206D84 00203CE4 3C 60 80 3D */ lis r3, lbl_803D26F0@ha +/* 80206D88 00203CE8 38 83 26 F0 */ addi r4, r3, lbl_803D26F0@l +/* 80206D8C 00203CEC 80 7F 00 70 */ lwz r3, 0x70(r31) +/* 80206D90 00203CF0 80 1F 00 1C */ lwz r0, 0x1c(r31) +/* 80206D94 00203CF4 80 A3 00 C4 */ lwz r5, 0xc4(r3) +/* 80206D98 00203CF8 1C 00 00 0C */ mulli r0, r0, 0xc +/* 80206D9C 00203CFC 80 7F 00 0C */ lwz r3, 0xc(r31) +/* 80206DA0 00203D00 54 A5 18 38 */ slwi r5, r5, 3 +/* 80206DA4 00203D04 7C 84 2A 14 */ add r4, r4, r5 +/* 80206DA8 00203D08 80 84 00 04 */ lwz r4, 4(r4) +/* 80206DAC 00203D0C 7F C4 02 14 */ add r30, r4, r0 +/* 80206DB0 00203D10 80 9E 00 08 */ lwz r4, 8(r30) +/* 80206DB4 00203D14 48 14 F9 49 */ bl GetString__12CStringTableCFi +/* 80206DB8 00203D18 7C 64 1B 78 */ mr r4, r3 +/* 80206DBC 00203D1C 38 61 00 0C */ addi r3, r1, 0xc +/* 80206DC0 00203D20 38 C1 00 08 */ addi r6, r1, 8 +/* 80206DC4 00203D24 38 A0 FF FF */ li r5, -1 +/* 80206DC8 00203D28 48 13 69 F5 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCwiRCQ24rstl17rmemory_allocator" +/* 80206DCC 00203D2C 80 1E 00 00 */ lwz r0, 0(r30) +/* 80206DD0 00203D30 2C 00 00 17 */ cmpwi r0, 0x17 +/* 80206DD4 00203D34 40 82 00 E0 */ bne lbl_80206EB4 +/* 80206DD8 00203D38 80 7F 00 04 */ lwz r3, 4(r31) +/* 80206DDC 00203D3C 38 80 00 0B */ li r4, 0xb +/* 80206DE0 00203D40 80 63 08 B8 */ lwz r3, 0x8b8(r3) +/* 80206DE4 00203D44 83 C3 00 00 */ lwz r30, 0(r3) +/* 80206DE8 00203D48 7F C3 F3 78 */ mr r3, r30 +/* 80206DEC 00203D4C 4B E8 AC D5 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80206DF0 00203D50 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80206DF4 00203D54 38 80 00 41 */ li r4, 0x41 +/* 80206DF8 00203D58 41 82 00 08 */ beq lbl_80206E00 +/* 80206DFC 00203D5C 38 80 00 47 */ li r4, 0x47 +lbl_80206E00: +/* 80206E00 00203D60 80 7F 00 0C */ lwz r3, 0xc(r31) +/* 80206E04 00203D64 48 14 F8 F9 */ bl GetString__12CStringTableCFi +/* 80206E08 00203D68 7C 64 1B 78 */ mr r4, r3 +/* 80206E0C 00203D6C 38 61 00 0C */ addi r3, r1, 0xc +/* 80206E10 00203D70 38 A0 FF FF */ li r5, -1 +/* 80206E14 00203D74 48 13 66 D1 */ bl sub_8033d4e4 +/* 80206E18 00203D78 7F C3 F3 78 */ mr r3, r30 +/* 80206E1C 00203D7C 38 80 00 0E */ li r4, 0xe +/* 80206E20 00203D80 4B E8 AC A1 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80206E24 00203D84 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80206E28 00203D88 38 80 00 41 */ li r4, 0x41 +/* 80206E2C 00203D8C 41 82 00 08 */ beq lbl_80206E34 +/* 80206E30 00203D90 38 80 00 49 */ li r4, 0x49 +lbl_80206E34: +/* 80206E34 00203D94 80 7F 00 0C */ lwz r3, 0xc(r31) +/* 80206E38 00203D98 48 14 F8 C5 */ bl GetString__12CStringTableCFi +/* 80206E3C 00203D9C 7C 64 1B 78 */ mr r4, r3 +/* 80206E40 00203DA0 38 61 00 0C */ addi r3, r1, 0xc +/* 80206E44 00203DA4 38 A0 FF FF */ li r5, -1 +/* 80206E48 00203DA8 48 13 66 9D */ bl sub_8033d4e4 +/* 80206E4C 00203DAC 7F C3 F3 78 */ mr r3, r30 +/* 80206E50 00203DB0 38 80 00 1C */ li r4, 0x1c +/* 80206E54 00203DB4 4B E8 AC 6D */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80206E58 00203DB8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80206E5C 00203DBC 38 80 00 41 */ li r4, 0x41 +/* 80206E60 00203DC0 41 82 00 08 */ beq lbl_80206E68 +/* 80206E64 00203DC4 38 80 00 4B */ li r4, 0x4b +lbl_80206E68: +/* 80206E68 00203DC8 80 7F 00 0C */ lwz r3, 0xc(r31) +/* 80206E6C 00203DCC 48 14 F8 91 */ bl GetString__12CStringTableCFi +/* 80206E70 00203DD0 7C 64 1B 78 */ mr r4, r3 +/* 80206E74 00203DD4 38 61 00 0C */ addi r3, r1, 0xc +/* 80206E78 00203DD8 38 A0 FF FF */ li r5, -1 +/* 80206E7C 00203DDC 48 13 66 69 */ bl sub_8033d4e4 +/* 80206E80 00203DE0 7F C3 F3 78 */ mr r3, r30 +/* 80206E84 00203DE4 38 80 00 08 */ li r4, 8 +/* 80206E88 00203DE8 4B E8 AC 39 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80206E8C 00203DEC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80206E90 00203DF0 38 80 00 41 */ li r4, 0x41 +/* 80206E94 00203DF4 41 82 00 08 */ beq lbl_80206E9C +/* 80206E98 00203DF8 38 80 00 4D */ li r4, 0x4d +lbl_80206E9C: +/* 80206E9C 00203DFC 80 7F 00 0C */ lwz r3, 0xc(r31) +/* 80206EA0 00203E00 48 14 F8 5D */ bl GetString__12CStringTableCFi +/* 80206EA4 00203E04 7C 64 1B 78 */ mr r4, r3 +/* 80206EA8 00203E08 38 61 00 0C */ addi r3, r1, 0xc +/* 80206EAC 00203E0C 38 A0 FF FF */ li r5, -1 +/* 80206EB0 00203E10 48 13 66 35 */ bl sub_8033d4e4 +lbl_80206EB4: +/* 80206EB4 00203E14 80 7F 01 74 */ lwz r3, 0x174(r31) +/* 80206EB8 00203E18 38 81 00 0C */ addi r4, r1, 0xc +/* 80206EBC 00203E1C 38 A0 00 01 */ li r5, 1 +/* 80206EC0 00203E20 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80206EC4 00203E24 48 0C 29 C1 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80206EC8 00203E28 80 7F 01 74 */ lwz r3, 0x174(r31) +/* 80206ECC 00203E2C 38 80 00 00 */ li r4, 0 +/* 80206ED0 00203E30 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80206ED4 00203E34 48 0C 0F 35 */ bl SetPage__15CGuiTextSupportFi +/* 80206ED8 00203E38 38 61 00 0C */ addi r3, r1, 0xc +/* 80206EDC 00203E3C 48 13 62 59 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80206EE0 00203E40 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80206EE4 00203E44 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80206EE8 00203E48 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80206EEC 00203E4C 7C 08 03 A6 */ mtlr r0 +/* 80206EF0 00203E50 38 21 00 30 */ addi r1, r1, 0x30 +/* 80206EF4 00203E54 4E 80 00 20 */ blr + +.global ChangedMode__16CInventoryScreenQ216CPauseScreenBase5EMode +ChangedMode__16CInventoryScreenQ216CPauseScreenBase5EMode: +/* 80206EF8 00203E58 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80206EFC 00203E5C 7C 08 02 A6 */ mflr r0 +/* 80206F00 00203E60 90 01 00 14 */ stw r0, 0x14(r1) +/* 80206F04 00203E64 80 03 00 10 */ lwz r0, 0x10(r3) +/* 80206F08 00203E68 2C 00 00 02 */ cmpwi r0, 2 +/* 80206F0C 00203E6C 40 82 00 10 */ bne lbl_80206F1C +/* 80206F10 00203E70 38 00 00 01 */ li r0, 1 +/* 80206F14 00203E74 98 03 01 AD */ stb r0, 0x1ad(r3) +/* 80206F18 00203E78 4B FF FE 4D */ bl UpdateTextBody__16CInventoryScreenFv +lbl_80206F1C: +/* 80206F1C 00203E7C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80206F20 00203E80 7C 08 03 A6 */ mtlr r0 +/* 80206F24 00203E84 38 21 00 10 */ addi r1, r1, 0x10 +/* 80206F28 00203E88 4E 80 00 20 */ blr + +.global ProcessInput__16CInventoryScreenFRC11CFinalInput +ProcessInput__16CInventoryScreenFRC11CFinalInput: +/* 80206F2C 00203E8C 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 80206F30 00203E90 7C 08 02 A6 */ mflr r0 +/* 80206F34 00203E94 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 80206F38 00203E98 DB E1 00 D0 */ stfd f31, 0xd0(r1) +/* 80206F3C 00203E9C F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 +/* 80206F40 00203EA0 DB C1 00 C0 */ stfd f30, 0xc0(r1) +/* 80206F44 00203EA4 F3 C1 00 C8 */ psq_st f30, 200(r1), 0, qr0 +/* 80206F48 00203EA8 DB A1 00 B0 */ stfd f29, 0xb0(r1) +/* 80206F4C 00203EAC F3 A1 00 B8 */ psq_st f29, 184(r1), 0, qr0 +/* 80206F50 00203EB0 DB 81 00 A0 */ stfd f28, 0xa0(r1) +/* 80206F54 00203EB4 F3 81 00 A8 */ psq_st f28, 168(r1), 0, qr0 +/* 80206F58 00203EB8 DB 61 00 90 */ stfd f27, 0x90(r1) +/* 80206F5C 00203EBC F3 61 00 98 */ psq_st f27, 152(r1), 0, qr0 +/* 80206F60 00203EC0 DB 41 00 80 */ stfd f26, 0x80(r1) +/* 80206F64 00203EC4 F3 41 00 88 */ psq_st f26, 136(r1), 0, qr0 +/* 80206F68 00203EC8 DB 21 00 70 */ stfd f25, 0x70(r1) +/* 80206F6C 00203ECC F3 21 00 78 */ psq_st f25, 120(r1), 0, qr0 +/* 80206F70 00203ED0 DB 01 00 60 */ stfd f24, 0x60(r1) +/* 80206F74 00203ED4 F3 01 00 68 */ psq_st f24, 104(r1), 0, qr0 +/* 80206F78 00203ED8 DA E1 00 50 */ stfd f23, 0x50(r1) +/* 80206F7C 00203EDC F2 E1 00 58 */ psq_st f23, 88(r1), 0, qr0 +/* 80206F80 00203EE0 DA C1 00 40 */ stfd f22, 0x40(r1) +/* 80206F84 00203EE4 F2 C1 00 48 */ psq_st f22, 72(r1), 0, qr0 +/* 80206F88 00203EE8 BF 61 00 2C */ stmw r27, 0x2c(r1) +/* 80206F8C 00203EEC 7C 7B 1B 78 */ mr r27, r3 +/* 80206F90 00203EF0 7C 9C 23 78 */ mr r28, r4 +/* 80206F94 00203EF4 80 03 01 A8 */ lwz r0, 0x1a8(r3) +/* 80206F98 00203EF8 2C 00 00 02 */ cmpwi r0, 2 +/* 80206F9C 00203EFC 41 82 04 28 */ beq lbl_802073C4 +/* 80206FA0 00203F00 80 7B 01 9C */ lwz r3, 0x19c(r27) +/* 80206FA4 00203F04 38 00 00 00 */ li r0, 0 +/* 80206FA8 00203F08 C0 02 B0 C4 */ lfs f0, lbl_805ACDE4@sda21(r2) +/* 80206FAC 00203F0C C0 23 00 C4 */ lfs f1, 0xc4(r3) +/* 80206FB0 00203F10 FC 00 08 00 */ fcmpu cr0, f0, f1 +/* 80206FB4 00203F14 41 82 00 14 */ beq lbl_80206FC8 +/* 80206FB8 00203F18 C0 02 B0 D8 */ lfs f0, lbl_805ACDF8@sda21(r2) +/* 80206FBC 00203F1C FC 00 08 00 */ fcmpu cr0, f0, f1 +/* 80206FC0 00203F20 41 82 00 08 */ beq lbl_80206FC8 +/* 80206FC4 00203F24 38 00 00 01 */ li r0, 1 +lbl_80206FC8: +/* 80206FC8 00203F28 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 80206FCC 00203F2C 40 82 03 F8 */ bne lbl_802073C4 +/* 80206FD0 00203F30 C0 03 00 C4 */ lfs f0, 0xc4(r3) +/* 80206FD4 00203F34 88 1C 00 2D */ lbz r0, 0x2d(r28) +/* 80206FD8 00203F38 FC 00 02 10 */ fabs f0, f0 +/* 80206FDC 00203F3C 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 80206FE0 00203F40 FE E0 00 18 */ frsp f23, f0 +/* 80206FE4 00203F44 41 82 00 44 */ beq lbl_80207028 +/* 80206FE8 00203F48 80 7B 01 9C */ lwz r3, 0x19c(r27) +/* 80206FEC 00203F4C 4B ED 6B 79 */ bl IsLoaded__10CSamusDollCFv +/* 80206FF0 00203F50 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80206FF4 00203F54 41 82 00 34 */ beq lbl_80207028 +/* 80206FF8 00203F58 C0 02 B0 C4 */ lfs f0, lbl_805ACDE4@sda21(r2) +/* 80206FFC 00203F5C FC 17 00 40 */ fcmpo cr0, f23, f0 +/* 80207000 00203F60 41 81 00 10 */ bgt lbl_80207010 +/* 80207004 00203F64 80 1B 00 10 */ lwz r0, 0x10(r27) +/* 80207008 00203F68 2C 00 00 02 */ cmpwi r0, 2 +/* 8020700C 00203F6C 41 82 00 1C */ beq lbl_80207028 +lbl_80207010: +/* 80207010 00203F70 C0 02 B0 C4 */ lfs f0, lbl_805ACDE4@sda21(r2) +/* 80207014 00203F74 80 7B 01 9C */ lwz r3, 0x19c(r27) +/* 80207018 00203F78 FC 00 B8 00 */ fcmpu cr0, f0, f23 +/* 8020701C 00203F7C 7C 00 00 26 */ mfcr r0 +/* 80207020 00203F80 54 04 1F FE */ rlwinm r4, r0, 3, 0x1f, 0x1f +/* 80207024 00203F84 4B ED 3B 99 */ bl BeginViewInterpolate__10CSamusDollFb +lbl_80207028: +/* 80207028 00203F88 C0 02 B0 D8 */ lfs f0, lbl_805ACDF8@sda21(r2) +/* 8020702C 00203F8C FC 00 B8 00 */ fcmpu cr0, f0, f23 +/* 80207030 00203F90 40 82 00 48 */ bne lbl_80207078 +/* 80207034 00203F94 88 1C 00 2E */ lbz r0, 0x2e(r28) +/* 80207038 00203F98 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 8020703C 00203F9C 41 82 00 24 */ beq lbl_80207060 +/* 80207040 00203FA0 80 7B 01 9C */ lwz r3, 0x19c(r27) +/* 80207044 00203FA4 38 80 00 00 */ li r4, 0 +/* 80207048 00203FA8 4B ED 3B 75 */ bl BeginViewInterpolate__10CSamusDollFb +/* 8020704C 00203FAC 88 1B 01 98 */ lbz r0, 0x198(r27) +/* 80207050 00203FB0 38 60 00 01 */ li r3, 1 +/* 80207054 00203FB4 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 80207058 00203FB8 98 1B 01 98 */ stb r0, 0x198(r27) +/* 8020705C 00203FBC 48 00 00 1C */ b lbl_80207078 +lbl_80207060: +/* 80207060 00203FC0 88 1C 00 2D */ lbz r0, 0x2d(r28) +/* 80207064 00203FC4 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 80207068 00203FC8 41 82 00 10 */ beq lbl_80207078 +/* 8020706C 00203FCC 80 7B 01 9C */ lwz r3, 0x19c(r27) +/* 80207070 00203FD0 38 80 00 00 */ li r4, 0 +/* 80207074 00203FD4 4B ED 3B 49 */ bl BeginViewInterpolate__10CSamusDollFb +lbl_80207078: +/* 80207078 00203FD8 80 7B 01 9C */ lwz r3, 0x19c(r27) +/* 8020707C 00203FDC C0 02 B0 C4 */ lfs f0, lbl_805ACDE4@sda21(r2) +/* 80207080 00203FE0 C0 23 00 C4 */ lfs f1, 0xc4(r3) +/* 80207084 00203FE4 FC 20 0A 10 */ fabs f1, f1 +/* 80207088 00203FE8 FC 20 08 18 */ frsp f1, f1 +/* 8020708C 00203FEC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80207090 00203FF0 40 81 01 10 */ ble lbl_802071A0 +/* 80207094 00203FF4 C0 22 B0 DC */ lfs f1, lbl_805ACDFC@sda21(r2) +/* 80207098 00203FF8 7F 84 E3 78 */ mr r4, r28 +/* 8020709C 00203FFC C0 1C 00 00 */ lfs f0, 0(r28) +/* 802070A0 00204000 38 60 00 26 */ li r3, 0x26 +/* 802070A4 00204004 EE C1 00 32 */ fmuls f22, f1, f0 +/* 802070A8 00204008 4B E0 58 71 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 802070AC 0020400C FE E0 08 90 */ fmr f23, f1 +/* 802070B0 00204010 7F 84 E3 78 */ mr r4, r28 +/* 802070B4 00204014 38 60 00 27 */ li r3, 0x27 +/* 802070B8 00204018 4B E0 58 61 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 802070BC 0020401C FF 00 08 90 */ fmr f24, f1 +/* 802070C0 00204020 7F 84 E3 78 */ mr r4, r28 +/* 802070C4 00204024 38 60 00 28 */ li r3, 0x28 +/* 802070C8 00204028 4B E0 58 51 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 802070CC 0020402C FF 20 08 90 */ fmr f25, f1 +/* 802070D0 00204030 7F 84 E3 78 */ mr r4, r28 +/* 802070D4 00204034 38 60 00 29 */ li r3, 0x29 +/* 802070D8 00204038 4B E0 58 41 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 802070DC 0020403C FF 40 08 90 */ fmr f26, f1 +/* 802070E0 00204040 7F 84 E3 78 */ mr r4, r28 +/* 802070E4 00204044 38 60 00 2A */ li r3, 0x2a +/* 802070E8 00204048 4B E0 58 31 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 802070EC 0020404C FF 60 08 90 */ fmr f27, f1 +/* 802070F0 00204050 7F 84 E3 78 */ mr r4, r28 +/* 802070F4 00204054 38 60 00 2B */ li r3, 0x2b +/* 802070F8 00204058 4B E0 58 21 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 802070FC 0020405C FF 80 08 90 */ fmr f28, f1 +/* 80207100 00204060 7F 84 E3 78 */ mr r4, r28 +/* 80207104 00204064 38 60 00 2C */ li r3, 0x2c +/* 80207108 00204068 4B E0 58 11 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 8020710C 0020406C FF A0 08 90 */ fmr f29, f1 +/* 80207110 00204070 7F 84 E3 78 */ mr r4, r28 +/* 80207114 00204074 38 60 00 2D */ li r3, 0x2d +/* 80207118 00204078 4B E0 58 01 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 8020711C 0020407C FF C0 08 90 */ fmr f30, f1 +/* 80207120 00204080 7F 84 E3 78 */ mr r4, r28 +/* 80207124 00204084 38 60 00 2E */ li r3, 0x2e +/* 80207128 00204088 4B E0 57 F1 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 8020712C 0020408C FF E0 08 90 */ fmr f31, f1 +/* 80207130 00204090 7F 84 E3 78 */ mr r4, r28 +/* 80207134 00204094 38 60 00 2F */ li r3, 0x2f +/* 80207138 00204098 4B E0 57 E1 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 8020713C 0020409C C0 82 B0 E0 */ lfs f4, lbl_805ACE00@sda21(r2) +/* 80207140 002040A0 EC 5F 08 28 */ fsubs f2, f31, f1 +/* 80207144 002040A4 C0 02 B0 E4 */ lfs f0, lbl_805ACE04@sda21(r2) +/* 80207148 002040A8 EC 7E E8 28 */ fsubs f3, f30, f29 +/* 8020714C 002040AC EC 84 05 B2 */ fmuls f4, f4, f22 +/* 80207150 002040B0 C0 3C 00 00 */ lfs f1, 0(r28) +/* 80207154 002040B4 EF A0 05 B2 */ fmuls f29, f0, f22 +/* 80207158 002040B8 EC 1B E0 28 */ fsubs f0, f27, f28 +/* 8020715C 002040BC 38 81 00 18 */ addi r4, r1, 0x18 +/* 80207160 002040C0 EC 64 00 F2 */ fmuls f3, f4, f3 +/* 80207164 002040C4 EC 5D 00 B2 */ fmuls f2, f29, f2 +/* 80207168 002040C8 EC 04 00 32 */ fmuls f0, f4, f0 +/* 8020716C 002040CC D0 61 00 18 */ stfs f3, 0x18(r1) +/* 80207170 002040D0 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 80207174 002040D4 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 80207178 002040D8 80 7B 01 9C */ lwz r3, 0x19c(r27) +/* 8020717C 002040DC 4B ED 3B 75 */ bl SetOffset__10CSamusDollFRC9CVector3ff +/* 80207180 002040E0 EC 38 B8 28 */ fsubs f1, f24, f23 +/* 80207184 002040E4 80 7B 01 9C */ lwz r3, 0x19c(r27) +/* 80207188 002040E8 EC 1A C8 28 */ fsubs f0, f26, f25 +/* 8020718C 002040EC C0 7C 00 00 */ lfs f3, 0(r28) +/* 80207190 002040F0 EC 3D 00 72 */ fmuls f1, f29, f1 +/* 80207194 002040F4 EC 5D 00 32 */ fmuls f2, f29, f0 +/* 80207198 002040F8 4B ED 3F BD */ bl SetRotation__10CSamusDollFfff +/* 8020719C 002040FC 48 00 02 28 */ b lbl_802073C4 +lbl_802071A0: +/* 802071A0 00204100 38 60 00 00 */ li r3, 0 +/* 802071A4 00204104 98 7B 01 AD */ stb r3, 0x1ad(r27) +/* 802071A8 00204108 80 1B 00 10 */ lwz r0, 0x10(r27) +/* 802071AC 0020410C 2C 00 00 02 */ cmpwi r0, 2 +/* 802071B0 00204110 40 82 01 D8 */ bne lbl_80207388 +/* 802071B4 00204114 80 7B 01 74 */ lwz r3, 0x174(r27) +/* 802071B8 00204118 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 802071BC 0020411C 83 E3 03 04 */ lwz r31, 0x304(r3) +/* 802071C0 00204120 7F FE FB 78 */ mr r30, r31 +/* 802071C4 00204124 48 0C 0C 95 */ bl GetTotalPageCount__15CGuiTextSupportFv +/* 802071C8 00204128 38 03 FF FF */ addi r0, r3, -1 +/* 802071CC 0020412C 2C 03 FF FF */ cmpwi r3, -1 +/* 802071D0 00204130 7C 1F 00 50 */ subf r0, r31, r0 +/* 802071D4 00204134 7C 00 00 34 */ cntlzw r0, r0 +/* 802071D8 00204138 54 1D D9 7E */ srwi r29, r0, 5 +/* 802071DC 0020413C 41 82 01 34 */ beq lbl_80207310 +/* 802071E0 00204140 C0 02 CC 28 */ lfs f0, lbl_805AE948@sda21(r2) +/* 802071E4 00204144 38 80 00 00 */ li r4, 0 +/* 802071E8 00204148 C0 3C 00 0C */ lfs f1, 0xc(r28) +/* 802071EC 0020414C FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 802071F0 00204150 40 80 00 0C */ bge lbl_802071FC +/* 802071F4 00204154 38 00 00 01 */ li r0, 1 +/* 802071F8 00204158 48 00 00 08 */ b lbl_80207200 +lbl_802071FC: +/* 802071FC 0020415C 7C 80 23 78 */ mr r0, r4 +lbl_80207200: +/* 80207200 00204160 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 80207204 00204164 41 82 00 14 */ beq lbl_80207218 +/* 80207208 00204168 88 1C 00 21 */ lbz r0, 0x21(r28) +/* 8020720C 0020416C 28 00 00 00 */ cmplwi r0, 0 +/* 80207210 00204170 41 82 00 08 */ beq lbl_80207218 +/* 80207214 00204174 38 80 00 01 */ li r4, 1 +lbl_80207218: +/* 80207218 00204178 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 8020721C 0020417C 41 82 00 28 */ beq lbl_80207244 +/* 80207220 00204180 80 0D 93 80 */ lwz r0, lbl_805A7F40@sda21(r13) +/* 80207224 00204184 38 9F FF FF */ addi r4, r31, -1 +/* 80207228 00204188 90 81 00 14 */ stw r4, 0x14(r1) +/* 8020722C 0020418C 38 6D 93 80 */ addi r3, r13, lbl_805A7F40@sda21 +/* 80207230 00204190 7C 00 20 00 */ cmpw r0, r4 +/* 80207234 00204194 40 80 00 08 */ bge lbl_8020723C +/* 80207238 00204198 38 61 00 14 */ addi r3, r1, 0x14 +lbl_8020723C: +/* 8020723C 0020419C 83 C3 00 00 */ lwz r30, 0(r3) +/* 80207240 002041A0 48 00 00 64 */ b lbl_802072A4 +lbl_80207244: +/* 80207244 002041A4 FC 00 00 50 */ fneg f0, f0 +/* 80207248 002041A8 38 80 00 00 */ li r4, 0 +/* 8020724C 002041AC FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80207250 002041B0 40 81 00 14 */ ble lbl_80207264 +/* 80207254 002041B4 88 1C 00 21 */ lbz r0, 0x21(r28) +/* 80207258 002041B8 28 00 00 00 */ cmplwi r0, 0 +/* 8020725C 002041BC 41 82 00 08 */ beq lbl_80207264 +/* 80207260 002041C0 38 80 00 01 */ li r4, 1 +lbl_80207264: +/* 80207264 002041C4 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 80207268 002041C8 40 82 00 18 */ bne lbl_80207280 +/* 8020726C 002041CC 88 1C 00 2D */ lbz r0, 0x2d(r28) +/* 80207270 002041D0 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 80207274 002041D4 41 82 00 30 */ beq lbl_802072A4 +/* 80207278 002041D8 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 8020727C 002041DC 40 82 00 28 */ bne lbl_802072A4 +lbl_80207280: +/* 80207280 002041E0 38 9F 00 01 */ addi r4, r31, 1 +/* 80207284 002041E4 38 03 FF FF */ addi r0, r3, -1 +/* 80207288 002041E8 7C 04 00 00 */ cmpw r4, r0 +/* 8020728C 002041EC 90 81 00 0C */ stw r4, 0xc(r1) +/* 80207290 002041F0 38 61 00 10 */ addi r3, r1, 0x10 +/* 80207294 002041F4 90 01 00 10 */ stw r0, 0x10(r1) +/* 80207298 002041F8 40 80 00 08 */ bge lbl_802072A0 +/* 8020729C 002041FC 38 61 00 0C */ addi r3, r1, 0xc +lbl_802072A0: +/* 802072A0 00204200 83 C3 00 00 */ lwz r30, 0(r3) +lbl_802072A4: +/* 802072A4 00204204 80 7B 01 74 */ lwz r3, 0x174(r27) +/* 802072A8 00204208 7F C4 F3 78 */ mr r4, r30 +/* 802072AC 0020420C 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 802072B0 00204210 48 0C 0B 59 */ bl SetPage__15CGuiTextSupportFi +/* 802072B4 00204214 7C 1F F0 00 */ cmpw r31, r30 +/* 802072B8 00204218 41 82 00 28 */ beq lbl_802072E0 +/* 802072BC 0020421C A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 802072C0 00204220 38 61 00 08 */ addi r3, r1, 8 +/* 802072C4 00204224 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 802072C8 00204228 38 80 05 A4 */ li r4, 0x5a4 +/* 802072CC 0020422C 38 A0 00 7F */ li r5, 0x7f +/* 802072D0 00204230 38 C0 00 40 */ li r6, 0x40 +/* 802072D4 00204234 38 E0 00 00 */ li r7, 0 +/* 802072D8 00204238 39 20 00 00 */ li r9, 0 +/* 802072DC 0020423C 48 0E 2A 99 */ bl SfxStart__11CSfxManagerFUsssbsbi +lbl_802072E0: +/* 802072E0 00204240 7C 7E 00 D0 */ neg r3, r30 +/* 802072E4 00204244 57 A0 06 3E */ clrlwi r0, r29, 0x18 +/* 802072E8 00204248 7C 64 F0 78 */ andc r4, r3, r30 +/* 802072EC 0020424C 88 7B 01 98 */ lbz r3, 0x198(r27) +/* 802072F0 00204250 50 83 27 38 */ rlwimi r3, r4, 4, 0x1c, 0x1c +/* 802072F4 00204254 7C 00 00 34 */ cntlzw r0, r0 +/* 802072F8 00204258 98 7B 01 98 */ stb r3, 0x198(r27) +/* 802072FC 0020425C 54 03 D9 7E */ srwi r3, r0, 5 +/* 80207300 00204260 88 1B 01 98 */ lbz r0, 0x198(r27) +/* 80207304 00204264 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 80207308 00204268 98 1B 01 98 */ stb r0, 0x198(r27) +/* 8020730C 0020426C 48 00 00 24 */ b lbl_80207330 +lbl_80207310: +/* 80207310 00204270 88 1B 01 98 */ lbz r0, 0x198(r27) +/* 80207314 00204274 38 60 00 00 */ li r3, 0 +/* 80207318 00204278 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 8020731C 0020427C 98 1B 01 98 */ stb r0, 0x198(r27) +/* 80207320 00204280 54 03 F7 FE */ rlwinm r3, r0, 0x1e, 0x1f, 0x1f +/* 80207324 00204284 88 1B 01 98 */ lbz r0, 0x198(r27) +/* 80207328 00204288 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 8020732C 0020428C 98 1B 01 98 */ stb r0, 0x198(r27) +lbl_80207330: +/* 80207330 00204290 88 1B 01 AC */ lbz r0, 0x1ac(r27) +/* 80207334 00204294 28 00 00 00 */ cmplwi r0, 0 +/* 80207338 00204298 40 82 00 3C */ bne lbl_80207374 +/* 8020733C 0020429C 88 7C 00 2D */ lbz r3, 0x2d(r28) +/* 80207340 002042A0 38 80 00 01 */ li r4, 1 +/* 80207344 002042A4 54 60 F7 FF */ rlwinm. r0, r3, 0x1e, 0x1f, 0x1f +/* 80207348 002042A8 40 82 00 28 */ bne lbl_80207370 +/* 8020734C 002042AC 54 60 EF FF */ rlwinm. r0, r3, 0x1d, 0x1f, 0x1f +/* 80207350 002042B0 38 60 00 00 */ li r3, 0 +/* 80207354 002042B4 41 82 00 10 */ beq lbl_80207364 +/* 80207358 002042B8 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 8020735C 002042BC 41 82 00 08 */ beq lbl_80207364 +/* 80207360 002042C0 7C 83 23 78 */ mr r3, r4 +lbl_80207364: +/* 80207364 002042C4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80207368 002042C8 40 82 00 08 */ bne lbl_80207370 +/* 8020736C 002042CC 38 80 00 00 */ li r4, 0 +lbl_80207370: +/* 80207370 002042D0 98 9B 01 AC */ stb r4, 0x1ac(r27) +lbl_80207374: +/* 80207374 002042D4 88 1B 01 AC */ lbz r0, 0x1ac(r27) +/* 80207378 002042D8 7C 00 00 34 */ cntlzw r0, r0 +/* 8020737C 002042DC 54 00 D9 7E */ srwi r0, r0, 5 +/* 80207380 002042E0 98 1B 01 AD */ stb r0, 0x1ad(r27) +/* 80207384 002042E4 48 00 00 20 */ b lbl_802073A4 +lbl_80207388: +/* 80207388 002042E8 88 1B 01 98 */ lbz r0, 0x198(r27) +/* 8020738C 002042EC 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 80207390 002042F0 98 1B 01 98 */ stb r0, 0x198(r27) +/* 80207394 002042F4 54 03 F7 FE */ rlwinm r3, r0, 0x1e, 0x1f, 0x1f +/* 80207398 002042F8 88 1B 01 98 */ lbz r0, 0x198(r27) +/* 8020739C 002042FC 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 802073A0 00204300 98 1B 01 98 */ stb r0, 0x198(r27) +lbl_802073A4: +/* 802073A4 00204304 80 1B 01 A8 */ lwz r0, 0x1a8(r27) +/* 802073A8 00204308 2C 00 00 00 */ cmpwi r0, 0 +/* 802073AC 0020430C 41 82 00 0C */ beq lbl_802073B8 +/* 802073B0 00204310 38 00 00 00 */ li r0, 0 +/* 802073B4 00204314 98 1B 01 AD */ stb r0, 0x1ad(r27) +lbl_802073B8: +/* 802073B8 00204318 7F 63 DB 78 */ mr r3, r27 +/* 802073BC 0020431C 7F 84 E3 78 */ mr r4, r28 +/* 802073C0 00204320 4B E6 9F 9D */ bl ProcessInput__16CPauseScreenBaseFRC11CFinalInput +lbl_802073C4: +/* 802073C4 00204324 E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 +/* 802073C8 00204328 CB E1 00 D0 */ lfd f31, 0xd0(r1) +/* 802073CC 0020432C E3 C1 00 C8 */ psq_l f30, 200(r1), 0, qr0 +/* 802073D0 00204330 CB C1 00 C0 */ lfd f30, 0xc0(r1) +/* 802073D4 00204334 E3 A1 00 B8 */ psq_l f29, 184(r1), 0, qr0 +/* 802073D8 00204338 CB A1 00 B0 */ lfd f29, 0xb0(r1) +/* 802073DC 0020433C E3 81 00 A8 */ psq_l f28, 168(r1), 0, qr0 +/* 802073E0 00204340 CB 81 00 A0 */ lfd f28, 0xa0(r1) +/* 802073E4 00204344 E3 61 00 98 */ psq_l f27, 152(r1), 0, qr0 +/* 802073E8 00204348 CB 61 00 90 */ lfd f27, 0x90(r1) +/* 802073EC 0020434C E3 41 00 88 */ psq_l f26, 136(r1), 0, qr0 +/* 802073F0 00204350 CB 41 00 80 */ lfd f26, 0x80(r1) +/* 802073F4 00204354 E3 21 00 78 */ psq_l f25, 120(r1), 0, qr0 +/* 802073F8 00204358 CB 21 00 70 */ lfd f25, 0x70(r1) +/* 802073FC 0020435C E3 01 00 68 */ psq_l f24, 104(r1), 0, qr0 +/* 80207400 00204360 CB 01 00 60 */ lfd f24, 0x60(r1) +/* 80207404 00204364 E2 E1 00 58 */ psq_l f23, 88(r1), 0, qr0 +/* 80207408 00204368 CA E1 00 50 */ lfd f23, 0x50(r1) +/* 8020740C 0020436C E2 C1 00 48 */ psq_l f22, 72(r1), 0, qr0 +/* 80207410 00204370 CA C1 00 40 */ lfd f22, 0x40(r1) +/* 80207414 00204374 BB 61 00 2C */ lmw r27, 0x2c(r1) +/* 80207418 00204378 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 8020741C 0020437C 7C 08 03 A6 */ mtlr r0 +/* 80207420 00204380 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 80207424 00204384 4E 80 00 20 */ blr + +.global GetCameraYBias__16CInventoryScreenCFv +GetCameraYBias__16CInventoryScreenCFv: +/* 80207428 00204388 80 63 01 9C */ lwz r3, 0x19c(r3) +/* 8020742C 0020438C C0 03 00 C4 */ lfs f0, 0xc4(r3) +/* 80207430 00204390 FC 00 02 10 */ fabs f0, f0 +/* 80207434 00204394 FC 20 00 18 */ frsp f1, f0 +/* 80207438 00204398 4E 80 00 20 */ blr + +.global __dt__16CInventoryScreenFv +__dt__16CInventoryScreenFv: +/* 8020743C 0020439C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80207440 002043A0 7C 08 02 A6 */ mflr r0 +/* 80207444 002043A4 90 01 00 34 */ stw r0, 0x34(r1) +/* 80207448 002043A8 BF 21 00 14 */ stmw r25, 0x14(r1) +/* 8020744C 002043AC 7C 79 1B 79 */ or. r25, r3, r3 +/* 80207450 002043B0 7C 9A 23 78 */ mr r26, r4 +/* 80207454 002043B4 41 82 00 B0 */ beq lbl_80207504 +/* 80207458 002043B8 3C 60 80 3E */ lis r3, lbl_803E6EB0@ha +/* 8020745C 002043BC 3B D9 00 DC */ addi r30, r25, 0xdc +/* 80207460 002043C0 38 03 6E B0 */ addi r0, r3, lbl_803E6EB0@l +/* 80207464 002043C4 3B B9 01 60 */ addi r29, r25, 0x160 +/* 80207468 002043C8 90 19 00 00 */ stw r0, 0(r25) +/* 8020746C 002043CC 3B 99 01 48 */ addi r28, r25, 0x148 +/* 80207470 002043D0 3B 60 00 00 */ li r27, 0 +lbl_80207474: +/* 80207474 002043D4 80 7E 00 00 */ lwz r3, 0(r30) +/* 80207478 002043D8 3B E3 00 D4 */ addi r31, r3, 0xd4 +/* 8020747C 002043DC 48 14 2B 31 */ bl White__6CColorFv +/* 80207480 002043E0 7C 64 1B 78 */ mr r4, r3 +/* 80207484 002043E4 7F E3 FB 78 */ mr r3, r31 +/* 80207488 002043E8 48 0C 21 E1 */ bl SetFontColor__15CGuiTextSupportFRC6CColor +/* 8020748C 002043EC 48 14 2B 21 */ bl White__6CColorFv +/* 80207490 002043F0 7C 64 1B 78 */ mr r4, r3 +/* 80207494 002043F4 80 7D 00 00 */ lwz r3, 0(r29) +/* 80207498 002043F8 48 0C 33 D5 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 8020749C 002043FC 48 14 2B 11 */ bl White__6CColorFv +/* 802074A0 00204400 7C 64 1B 78 */ mr r4, r3 +/* 802074A4 00204404 80 7C 00 00 */ lwz r3, 0(r28) +/* 802074A8 00204408 48 0C 33 C5 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 802074AC 0020440C 3B 7B 00 01 */ addi r27, r27, 1 +/* 802074B0 00204410 3B BD 00 04 */ addi r29, r29, 4 +/* 802074B4 00204414 2C 1B 00 05 */ cmpwi r27, 5 +/* 802074B8 00204418 3B 9C 00 04 */ addi r28, r28, 4 +/* 802074BC 0020441C 3B DE 00 04 */ addi r30, r30, 4 +/* 802074C0 00204420 41 80 FF B4 */ blt lbl_80207474 +/* 802074C4 00204424 48 14 2A E9 */ bl White__6CColorFv +/* 802074C8 00204428 7C 64 1B 78 */ mr r4, r3 +/* 802074CC 0020442C 80 79 00 8C */ lwz r3, 0x8c(r25) +/* 802074D0 00204430 48 0C 33 9D */ bl SetColor__10CGuiWidgetFRC6CColor +/* 802074D4 00204434 34 19 01 9C */ addic. r0, r25, 0x19c +/* 802074D8 00204438 41 82 00 10 */ beq lbl_802074E8 +/* 802074DC 0020443C 80 79 01 9C */ lwz r3, 0x19c(r25) +/* 802074E0 00204440 38 80 00 01 */ li r4, 1 +/* 802074E4 00204444 4B ED 63 51 */ bl __dt__10CSamusDollFv +lbl_802074E8: +/* 802074E8 00204448 7F 23 CB 78 */ mr r3, r25 +/* 802074EC 0020444C 38 80 00 00 */ li r4, 0 +/* 802074F0 00204450 4B E6 B0 DD */ bl __dt__16CPauseScreenBaseFv +/* 802074F4 00204454 7F 40 07 35 */ extsh. r0, r26 +/* 802074F8 00204458 40 81 00 0C */ ble lbl_80207504 +/* 802074FC 0020445C 7F 23 CB 78 */ mr r3, r25 +/* 80207500 00204460 48 10 E4 31 */ bl Free__7CMemoryFPCv +lbl_80207504: +/* 80207504 00204464 7F 23 CB 78 */ mr r3, r25 +/* 80207508 00204468 BB 21 00 14 */ lmw r25, 0x14(r1) +/* 8020750C 0020446C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80207510 00204470 7C 08 03 A6 */ mtlr r0 +/* 80207514 00204474 38 21 00 30 */ addi r1, r1, 0x30 +/* 80207518 00204478 4E 80 00 20 */ blr + +.global __ct__16CInventoryScreenFRC13CStateManagerRC9CGuiFrameRC12CStringTableRC16CDependencyGroupRC16CDependencyGroup +__ct__16CInventoryScreenFRC13CStateManagerRC9CGuiFrameRC12CStringTableRC16CDependencyGroupRC16CDependencyGroup: +/* 8020751C 0020447C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80207520 00204480 7C 08 02 A6 */ mflr r0 +/* 80207524 00204484 90 01 00 34 */ stw r0, 0x34(r1) +/* 80207528 00204488 BE E1 00 0C */ stmw r23, 0xc(r1) +/* 8020752C 0020448C 7C 7F 1B 78 */ mr r31, r3 +/* 80207530 00204490 7C 99 23 78 */ mr r25, r4 +/* 80207534 00204494 7C F7 3B 78 */ mr r23, r7 +/* 80207538 00204498 7D 18 43 78 */ mr r24, r8 +/* 8020753C 0020449C 4B E6 B3 15 */ bl __ct__16CPauseScreenBaseFRC13CStateManagerRC9CGuiFrameRC12CStringTable +/* 80207540 002044A0 3C 60 80 3E */ lis r3, lbl_803E6EB0@ha +/* 80207544 002044A4 3C 80 80 3D */ lis r4, lbl_803D2718@ha +/* 80207548 002044A8 38 03 6E B0 */ addi r0, r3, lbl_803E6EB0@l +/* 8020754C 002044AC 38 A0 00 00 */ li r5, 0 +/* 80207550 002044B0 90 1F 00 00 */ stw r0, 0(r31) +/* 80207554 002044B4 38 60 02 74 */ li r3, 0x274 +/* 80207558 002044B8 38 84 27 18 */ addi r4, r4, lbl_803D2718@l +/* 8020755C 002044BC 48 10 E3 11 */ bl __nw__FUlPCcPCc +/* 80207560 002044C0 7C 7C 1B 79 */ or. r28, r3, r3 +/* 80207564 002044C4 41 82 00 64 */ beq lbl_802075C8 +/* 80207568 002044C8 80 79 08 B8 */ lwz r3, 0x8b8(r25) +/* 8020756C 002044CC 38 80 00 0C */ li r4, 0xc +/* 80207570 002044D0 83 23 00 00 */ lwz r25, 0(r3) +/* 80207574 002044D4 83 79 00 08 */ lwz r27, 8(r25) +/* 80207578 002044D8 7F 23 CB 78 */ mr r3, r25 +/* 8020757C 002044DC 83 59 00 20 */ lwz r26, 0x20(r25) +/* 80207580 002044E0 4B E8 A5 41 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80207584 002044E4 7C 7D 1B 78 */ mr r29, r3 +/* 80207588 002044E8 7F 23 CB 78 */ mr r3, r25 +/* 8020758C 002044EC 38 80 00 13 */ li r4, 0x13 +/* 80207590 002044F0 4B E8 A5 31 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80207594 002044F4 7C 7E 1B 78 */ mr r30, r3 +/* 80207598 002044F8 7F 23 CB 78 */ mr r3, r25 +/* 8020759C 002044FC 4B E8 9F 29 */ bl GetIsFusionEnabled__12CPlayerStateFv +/* 802075A0 00204500 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d +/* 802075A4 00204504 7F 83 E3 78 */ mr r3, r28 +/* 802075A8 00204508 7E E4 BB 78 */ mr r4, r23 +/* 802075AC 0020450C 7F 05 C3 78 */ mr r5, r24 +/* 802075B0 00204510 7F 67 DB 78 */ mr r7, r27 +/* 802075B4 00204514 7F C8 F3 78 */ mr r8, r30 +/* 802075B8 00204518 7F A9 EB 78 */ mr r9, r29 +/* 802075BC 0020451C 7C DA 02 14 */ add r6, r26, r0 +/* 802075C0 00204520 4B ED 69 59 */ bl __ct__10CSamusDollFRC16CDependencyGroupRC16CDependencyGroupQ212CPlayerState11EPlayerSuitQ212CPlayerState7EBeamIdbb +/* 802075C4 00204524 7C 7C 1B 78 */ mr r28, r3 +lbl_802075C8: +/* 802075C8 00204528 93 9F 01 9C */ stw r28, 0x19c(r31) +/* 802075CC 0020452C 38 00 00 00 */ li r0, 0 +/* 802075D0 00204530 C0 02 B0 C4 */ lfs f0, lbl_805ACDE4@sda21(r2) +/* 802075D4 00204534 7F E3 FB 78 */ mr r3, r31 +/* 802075D8 00204538 D0 1F 01 A0 */ stfs f0, 0x1a0(r31) +/* 802075DC 0020453C D0 1F 01 A4 */ stfs f0, 0x1a4(r31) +/* 802075E0 00204540 90 1F 01 A8 */ stw r0, 0x1a8(r31) +/* 802075E4 00204544 98 1F 01 AC */ stb r0, 0x1ac(r31) +/* 802075E8 00204548 BA E1 00 0C */ lmw r23, 0xc(r1) +/* 802075EC 0020454C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 802075F0 00204550 7C 08 03 A6 */ mtlr r0 +/* 802075F4 00204554 38 21 00 30 */ addi r1, r1, 0x30 +/* 802075F8 00204558 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CLogBookScreen.s b/asm/Kyoto_CWD/CLogBookScreen.s new file mode 100644 index 00000000..1b330714 --- /dev/null +++ b/asm/Kyoto_CWD/CLogBookScreen.s @@ -0,0 +1,3173 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global IsScanComplete__14CLogBookScreenF13EScanCategoryUiRC12CPlayerState +IsScanComplete__14CLogBookScreenF13EScanCategoryUiRC12CPlayerState: +/* 80245A30 00242990 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80245A34 00242994 7C 08 02 A6 */ mflr r0 +/* 80245A38 00242998 90 01 00 14 */ stw r0, 0x14(r1) +/* 80245A3C 0024299C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80245A40 002429A0 7C 7F 1B 78 */ mr r31, r3 +/* 80245A44 002429A4 7C A3 2B 78 */ mr r3, r5 +/* 80245A48 002429A8 4B E4 BC 49 */ bl GetScanTime__12CPlayerStateCFUi +/* 80245A4C 002429AC 2C 1F 00 05 */ cmpwi r31, 5 +/* 80245A50 002429B0 40 82 00 1C */ bne lbl_80245A6C +/* 80245A54 002429B4 C0 02 B8 5C */ lfs f0, lbl_805AD57C@sda21(r2) +/* 80245A58 002429B8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80245A5C 002429BC 4C 41 13 82 */ cror 2, 1, 2 +/* 80245A60 002429C0 7C 00 00 26 */ mfcr r0 +/* 80245A64 002429C4 54 03 1F FE */ rlwinm r3, r0, 3, 0x1f, 0x1f +/* 80245A68 002429C8 48 00 00 18 */ b lbl_80245A80 +lbl_80245A6C: +/* 80245A6C 002429CC C0 02 B8 60 */ lfs f0, lbl_805AD580@sda21(r2) +/* 80245A70 002429D0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80245A74 002429D4 4C 41 13 82 */ cror 2, 1, 2 +/* 80245A78 002429D8 7C 00 00 26 */ mfcr r0 +/* 80245A7C 002429DC 54 03 1F FE */ rlwinm r3, r0, 3, 0x1f, 0x1f +lbl_80245A80: +/* 80245A80 002429E0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80245A84 002429E4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80245A88 002429E8 7C 08 03 A6 */ mtlr r0 +/* 80245A8C 002429EC 38 21 00 10 */ addi r1, r1, 0x10 +/* 80245A90 002429F0 4E 80 00 20 */ blr + +.global IsScanCategoryReady__14CLogBookScreenF13EScanCategory +IsScanCategoryReady__14CLogBookScreenF13EScanCategory: +/* 80245A94 002429F4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80245A98 002429F8 7C 08 02 A6 */ mflr r0 +/* 80245A9C 002429FC 90 01 00 24 */ stw r0, 0x24(r1) +/* 80245AA0 00242A00 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80245AA4 00242A04 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80245AA8 00242A08 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80245AAC 00242A0C 93 81 00 10 */ stw r28, 0x10(r1) +/* 80245AB0 00242A10 7C 9C 23 78 */ mr r28, r4 +/* 80245AB4 00242A14 80 63 00 04 */ lwz r3, 4(r3) +/* 80245AB8 00242A18 83 ED A0 84 */ lwz r31, gpMemoryCard@sda21(r13) +/* 80245ABC 00242A1C 80 63 08 B8 */ lwz r3, 0x8b8(r3) +/* 80245AC0 00242A20 83 BF 00 2C */ lwz r29, 0x2c(r31) +/* 80245AC4 00242A24 83 C3 00 00 */ lwz r30, 0(r3) +/* 80245AC8 00242A28 48 00 00 30 */ b lbl_80245AF8 +lbl_80245ACC: +/* 80245ACC 00242A2C 80 7D 00 04 */ lwz r3, 4(r29) +/* 80245AD0 00242A30 7C 03 E0 40 */ cmplw r3, r28 +/* 80245AD4 00242A34 40 82 00 20 */ bne lbl_80245AF4 +/* 80245AD8 00242A38 80 9D 00 00 */ lwz r4, 0(r29) +/* 80245ADC 00242A3C 7F C5 F3 78 */ mr r5, r30 +/* 80245AE0 00242A40 4B FF FF 51 */ bl IsScanComplete__14CLogBookScreenF13EScanCategoryUiRC12CPlayerState +/* 80245AE4 00242A44 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80245AE8 00242A48 41 82 00 0C */ beq lbl_80245AF4 +/* 80245AEC 00242A4C 38 60 00 01 */ li r3, 1 +/* 80245AF0 00242A50 48 00 00 24 */ b lbl_80245B14 +lbl_80245AF4: +/* 80245AF4 00242A54 3B BD 00 08 */ addi r29, r29, 8 +lbl_80245AF8: +/* 80245AF8 00242A58 80 1F 00 24 */ lwz r0, 0x24(r31) +/* 80245AFC 00242A5C 80 7F 00 2C */ lwz r3, 0x2c(r31) +/* 80245B00 00242A60 54 00 18 38 */ slwi r0, r0, 3 +/* 80245B04 00242A64 7C 03 02 14 */ add r0, r3, r0 +/* 80245B08 00242A68 7C 1D 00 40 */ cmplw r29, r0 +/* 80245B0C 00242A6C 40 82 FF C0 */ bne lbl_80245ACC +/* 80245B10 00242A70 38 60 00 00 */ li r3, 0 +lbl_80245B14: +/* 80245B14 00242A74 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80245B18 00242A78 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80245B1C 00242A7C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80245B20 00242A80 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80245B24 00242A84 83 81 00 10 */ lwz r28, 0x10(r1) +/* 80245B28 00242A88 7C 08 03 A6 */ mtlr r0 +/* 80245B2C 00242A8C 38 21 00 20 */ addi r1, r1, 0x20 +/* 80245B30 00242A90 4E 80 00 20 */ blr + +.global InputDisabled__14CLogBookScreenCFv +InputDisabled__14CLogBookScreenCFv: +/* 80245B34 00242A94 80 03 02 5C */ lwz r0, 0x25c(r3) +/* 80245B38 00242A98 20 00 00 01 */ subfic r0, r0, 1 +/* 80245B3C 00242A9C 7C 00 00 34 */ cntlzw r0, r0 +/* 80245B40 00242AA0 54 03 D9 7E */ srwi r3, r0, 5 +/* 80245B44 00242AA4 4E 80 00 20 */ blr + +.global TransitioningAway__14CLogBookScreenFv +TransitioningAway__14CLogBookScreenFv: +/* 80245B48 00242AA8 38 00 00 01 */ li r0, 1 +/* 80245B4C 00242AAC 90 03 02 5C */ stw r0, 0x25c(r3) +/* 80245B50 00242AB0 4E 80 00 20 */ blr + +.global UpdateRightTitles__14CLogBookScreenFv +UpdateRightTitles__14CLogBookScreenFv: +/* 80245B54 00242AB4 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 80245B58 00242AB8 7C 08 02 A6 */ mflr r0 +/* 80245B5C 00242ABC 90 01 01 04 */ stw r0, 0x104(r1) +/* 80245B60 00242AC0 DB E1 00 F0 */ stfd f31, 0xf0(r1) +/* 80245B64 00242AC4 F3 E1 00 F8 */ psq_st f31, 248(r1), 0, qr0 +/* 80245B68 00242AC8 BF 21 00 D4 */ stmw r25, 0xd4(r1) +/* 80245B6C 00242ACC 7C 7C 1B 78 */ mr r28, r3 +/* 80245B70 00242AD0 3B A0 00 00 */ li r29, 0 +/* 80245B74 00242AD4 80 63 00 70 */ lwz r3, 0x70(r3) +/* 80245B78 00242AD8 3B DC 00 DC */ addi r30, r28, 0xdc +/* 80245B7C 00242ADC 80 03 00 C4 */ lwz r0, 0xc4(r3) +/* 80245B80 00242AE0 54 00 20 36 */ slwi r0, r0, 4 +/* 80245B84 00242AE4 7F FC 02 14 */ add r31, r28, r0 +/* 80245B88 00242AE8 48 00 01 54 */ b lbl_80245CDC +lbl_80245B8C: +/* 80245B8C 00242AEC 80 9C 00 18 */ lwz r4, 0x18(r28) +/* 80245B90 00242AF0 38 00 00 00 */ li r0, 0 +/* 80245B94 00242AF4 38 6D A9 1A */ addi r3, r13, lbl_805A94DA@sda21 +/* 80245B98 00242AF8 90 61 00 4C */ stw r3, 0x4c(r1) +/* 80245B9C 00242AFC 7C 84 EA 14 */ add r4, r4, r29 +/* 80245BA0 00242B00 90 01 00 50 */ stw r0, 0x50(r1) +/* 80245BA4 00242B04 90 01 00 54 */ stw r0, 0x54(r1) +/* 80245BA8 00242B08 80 1C 01 F4 */ lwz r0, 0x1f4(r28) +/* 80245BAC 00242B0C 7C 04 00 00 */ cmpw r4, r0 +/* 80245BB0 00242B10 40 80 01 08 */ bge lbl_80245CB8 +/* 80245BB4 00242B14 1C 64 00 1C */ mulli r3, r4, 0x1c +/* 80245BB8 00242B18 80 1C 01 FC */ lwz r0, 0x1fc(r28) +/* 80245BBC 00242B1C 38 63 00 0C */ addi r3, r3, 0xc +/* 80245BC0 00242B20 7C 60 1A 14 */ add r3, r0, r3 +/* 80245BC4 00242B24 88 03 00 0C */ lbz r0, 0xc(r3) +/* 80245BC8 00242B28 28 00 00 00 */ cmplwi r0, 0 +/* 80245BCC 00242B2C 41 82 00 B8 */ beq lbl_80245C84 +/* 80245BD0 00242B30 80 63 00 08 */ lwz r3, 8(r3) +/* 80245BD4 00242B34 28 03 00 00 */ cmplwi r3, 0 +/* 80245BD8 00242B38 41 82 00 AC */ beq lbl_80245C84 +/* 80245BDC 00242B3C 54 84 18 38 */ slwi r4, r4, 3 +/* 80245BE0 00242B40 80 BF 01 AC */ lwz r5, 0x1ac(r31) +/* 80245BE4 00242B44 38 04 00 04 */ addi r0, r4, 4 +/* 80245BE8 00242B48 7C 05 00 AE */ lbzx r0, r5, r0 +/* 80245BEC 00242B4C 28 00 00 00 */ cmplwi r0, 0 +/* 80245BF0 00242B50 41 82 00 6C */ beq lbl_80245C5C +/* 80245BF4 00242B54 80 03 00 00 */ lwz r0, 0(r3) +/* 80245BF8 00242B58 2C 00 00 01 */ cmpwi r0, 1 +/* 80245BFC 00242B5C 40 81 00 38 */ ble lbl_80245C34 +/* 80245C00 00242B60 38 80 00 01 */ li r4, 1 +/* 80245C04 00242B64 48 11 0A F9 */ bl GetString__12CStringTableCFi +/* 80245C08 00242B68 7C 64 1B 78 */ mr r4, r3 +/* 80245C0C 00242B6C 38 61 00 3C */ addi r3, r1, 0x3c +/* 80245C10 00242B70 38 C1 00 08 */ addi r6, r1, 8 +/* 80245C14 00242B74 38 A0 FF FF */ li r5, -1 +/* 80245C18 00242B78 48 0F 7B A5 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCwiRCQ24rstl17rmemory_allocator" +/* 80245C1C 00242B7C 38 61 00 4C */ addi r3, r1, 0x4c +/* 80245C20 00242B80 38 81 00 3C */ addi r4, r1, 0x3c +/* 80245C24 00242B84 48 0F 77 29 */ bl sub_8033d34c +/* 80245C28 00242B88 38 61 00 3C */ addi r3, r1, 0x3c +/* 80245C2C 00242B8C 48 0F 75 09 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80245C30 00242B90 48 00 00 54 */ b lbl_80245C84 +lbl_80245C34: +/* 80245C34 00242B94 3C 80 80 3F */ lis r4, lbl_803E8BCC@ha +/* 80245C38 00242B98 38 61 00 2C */ addi r3, r1, 0x2c +/* 80245C3C 00242B9C 38 84 8B CC */ addi r4, r4, lbl_803E8BCC@l +/* 80245C40 00242BA0 4B DC FD B1 */ bl wstring_l__4rstlFPCw +/* 80245C44 00242BA4 38 61 00 4C */ addi r3, r1, 0x4c +/* 80245C48 00242BA8 38 81 00 2C */ addi r4, r1, 0x2c +/* 80245C4C 00242BAC 48 0F 77 01 */ bl sub_8033d34c +/* 80245C50 00242BB0 38 61 00 2C */ addi r3, r1, 0x2c +/* 80245C54 00242BB4 48 0F 74 E1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80245C58 00242BB8 48 00 00 2C */ b lbl_80245C84 +lbl_80245C5C: +/* 80245C5C 00242BBC 3C 80 80 3F */ lis r4, lbl_803E8BCC@ha +/* 80245C60 00242BC0 38 61 00 1C */ addi r3, r1, 0x1c +/* 80245C64 00242BC4 38 84 8B CC */ addi r4, r4, lbl_803E8BCC@l +/* 80245C68 00242BC8 38 84 00 14 */ addi r4, r4, 0x14 +/* 80245C6C 00242BCC 4B DC FD 85 */ bl wstring_l__4rstlFPCw +/* 80245C70 00242BD0 38 61 00 4C */ addi r3, r1, 0x4c +/* 80245C74 00242BD4 38 81 00 1C */ addi r4, r1, 0x1c +/* 80245C78 00242BD8 48 0F 76 D5 */ bl sub_8033d34c +/* 80245C7C 00242BDC 38 61 00 1C */ addi r3, r1, 0x1c +/* 80245C80 00242BE0 48 0F 74 B5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80245C84: +/* 80245C84 00242BE4 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80245C88 00242BE8 2C 00 00 00 */ cmpwi r0, 0 +/* 80245C8C 00242BEC 40 82 00 2C */ bne lbl_80245CB8 +/* 80245C90 00242BF0 3C 80 80 3F */ lis r4, lbl_803E8BCC@ha +/* 80245C94 00242BF4 38 61 00 0C */ addi r3, r1, 0xc +/* 80245C98 00242BF8 38 84 8B CC */ addi r4, r4, lbl_803E8BCC@l +/* 80245C9C 00242BFC 38 84 00 22 */ addi r4, r4, 0x22 +/* 80245CA0 00242C00 4B DC FD 51 */ bl wstring_l__4rstlFPCw +/* 80245CA4 00242C04 38 61 00 4C */ addi r3, r1, 0x4c +/* 80245CA8 00242C08 38 81 00 0C */ addi r4, r1, 0xc +/* 80245CAC 00242C0C 48 0F 76 A1 */ bl sub_8033d34c +/* 80245CB0 00242C10 38 61 00 0C */ addi r3, r1, 0xc +/* 80245CB4 00242C14 48 0F 74 81 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80245CB8: +/* 80245CB8 00242C18 80 7E 00 00 */ lwz r3, 0(r30) +/* 80245CBC 00242C1C 38 81 00 4C */ addi r4, r1, 0x4c +/* 80245CC0 00242C20 38 A0 00 00 */ li r5, 0 +/* 80245CC4 00242C24 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80245CC8 00242C28 48 08 3B BD */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80245CCC 00242C2C 38 61 00 4C */ addi r3, r1, 0x4c +/* 80245CD0 00242C30 48 0F 74 65 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80245CD4 00242C34 3B DE 00 04 */ addi r30, r30, 4 +/* 80245CD8 00242C38 3B BD 00 01 */ addi r29, r29, 1 +lbl_80245CDC: +/* 80245CDC 00242C3C 80 1C 00 D8 */ lwz r0, 0xd8(r28) +/* 80245CE0 00242C40 7C 1D 00 00 */ cmpw r29, r0 +/* 80245CE4 00242C44 41 80 FE A8 */ blt lbl_80245B8C +/* 80245CE8 00242C48 3C 60 66 66 */ lis r3, 0x66666667@ha +/* 80245CEC 00242C4C 80 9C 00 18 */ lwz r4, 0x18(r28) +/* 80245CF0 00242C50 38 03 66 67 */ addi r0, r3, 0x66666667@l +/* 80245CF4 00242C54 CB E2 B8 68 */ lfd f31, lbl_805AD588@sda21(r2) +/* 80245CF8 00242C58 7C 00 20 96 */ mulhw r0, r0, r4 +/* 80245CFC 00242C5C 3B DC 01 48 */ addi r30, r28, 0x148 +/* 80245D00 00242C60 3B 40 00 00 */ li r26, 0 +/* 80245D04 00242C64 3F A0 43 30 */ lis r29, 0x4330 +/* 80245D08 00242C68 7C 00 0E 70 */ srawi r0, r0, 1 +/* 80245D0C 00242C6C 54 03 0F FE */ srwi r3, r0, 0x1f +/* 80245D10 00242C70 7C 00 1A 14 */ add r0, r0, r3 +/* 80245D14 00242C74 1C 00 00 05 */ mulli r0, r0, 5 +/* 80245D18 00242C78 7F 60 20 50 */ subf r27, r0, r4 +/* 80245D1C 00242C7C 23 FB 00 05 */ subfic r31, r27, 5 +/* 80245D20 00242C80 48 00 00 70 */ b lbl_80245D90 +lbl_80245D24: +/* 80245D24 00242C84 7C 1A D8 00 */ cmpw r26, r27 +/* 80245D28 00242C88 83 3E 00 00 */ lwz r25, 0(r30) +/* 80245D2C 00242C8C 7F E0 FB 78 */ mr r0, r31 +/* 80245D30 00242C90 41 80 00 08 */ blt lbl_80245D38 +/* 80245D34 00242C94 38 1F FF FB */ addi r0, r31, -5 +lbl_80245D38: +/* 80245D38 00242C98 6C 00 80 00 */ xoris r0, r0, 0x8000 +/* 80245D3C 00242C9C C0 22 B8 58 */ lfs f1, lbl_805AD578@sda21(r2) +/* 80245D40 00242CA0 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 80245D44 00242CA4 38 61 00 5C */ addi r3, r1, 0x5c +/* 80245D48 00242CA8 C0 7C 00 38 */ lfs f3, 0x38(r28) +/* 80245D4C 00242CAC FC 40 08 90 */ fmr f2, f1 +/* 80245D50 00242CB0 93 A1 00 C0 */ stw r29, 0xc0(r1) +/* 80245D54 00242CB4 C8 01 00 C0 */ lfd f0, 0xc0(r1) +/* 80245D58 00242CB8 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 80245D5C 00242CBC EC 63 00 32 */ fmuls f3, f3, f0 +/* 80245D60 00242CC0 48 0C D4 29 */ bl Translate__12CTransform4fFfff +/* 80245D64 00242CC4 38 61 00 8C */ addi r3, r1, 0x8c +/* 80245D68 00242CC8 38 81 00 5C */ addi r4, r1, 0x5c +/* 80245D6C 00242CCC 38 B9 00 74 */ addi r5, r25, 0x74 +/* 80245D70 00242CD0 48 0C CB E1 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80245D74 00242CD4 38 79 00 04 */ addi r3, r25, 4 +/* 80245D78 00242CD8 38 81 00 8C */ addi r4, r1, 0x8c +/* 80245D7C 00242CDC 48 0C CD C5 */ bl __as__12CTransform4fFRC12CTransform4f +/* 80245D80 00242CE0 7F 23 CB 78 */ mr r3, r25 +/* 80245D84 00242CE4 48 07 EA 65 */ bl RecalculateTransforms__10CGuiObjectFv +/* 80245D88 00242CE8 3B DE 00 04 */ addi r30, r30, 4 +/* 80245D8C 00242CEC 3B 5A 00 01 */ addi r26, r26, 1 +lbl_80245D90: +/* 80245D90 00242CF0 80 1C 01 44 */ lwz r0, 0x144(r28) +/* 80245D94 00242CF4 7C 1A 00 00 */ cmpw r26, r0 +/* 80245D98 00242CF8 41 80 FF 8C */ blt lbl_80245D24 +/* 80245D9C 00242CFC E3 E1 00 F8 */ psq_l f31, 248(r1), 0, qr0 +/* 80245DA0 00242D00 CB E1 00 F0 */ lfd f31, 0xf0(r1) +/* 80245DA4 00242D04 BB 21 00 D4 */ lmw r25, 0xd4(r1) +/* 80245DA8 00242D08 80 01 01 04 */ lwz r0, 0x104(r1) +/* 80245DAC 00242D0C 7C 08 03 A6 */ mtlr r0 +/* 80245DB0 00242D10 38 21 01 00 */ addi r1, r1, 0x100 +/* 80245DB4 00242D14 4E 80 00 20 */ blr + +.global UpdateBodyText__14CLogBookScreenFv +UpdateBodyText__14CLogBookScreenFv: +/* 80245DB8 00242D18 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80245DBC 00242D1C 7C 08 02 A6 */ mflr r0 +/* 80245DC0 00242D20 90 01 00 64 */ stw r0, 0x64(r1) +/* 80245DC4 00242D24 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 80245DC8 00242D28 7C 7F 1B 78 */ mr r31, r3 +/* 80245DCC 00242D2C 93 C1 00 58 */ stw r30, 0x58(r1) +/* 80245DD0 00242D30 93 A1 00 54 */ stw r29, 0x54(r1) +/* 80245DD4 00242D34 80 03 00 10 */ lwz r0, 0x10(r3) +/* 80245DD8 00242D38 2C 00 00 02 */ cmpwi r0, 2 +/* 80245DDC 00242D3C 41 82 00 38 */ beq lbl_80245E14 +/* 80245DE0 00242D40 3C 80 80 3F */ lis r4, lbl_803E8BCC@ha +/* 80245DE4 00242D44 38 61 00 30 */ addi r3, r1, 0x30 +/* 80245DE8 00242D48 38 84 8B CC */ addi r4, r4, lbl_803E8BCC@l +/* 80245DEC 00242D4C 38 84 00 34 */ addi r4, r4, 0x34 +/* 80245DF0 00242D50 4B DC FC 01 */ bl wstring_l__4rstlFPCw +/* 80245DF4 00242D54 80 7F 01 74 */ lwz r3, 0x174(r31) +/* 80245DF8 00242D58 38 81 00 30 */ addi r4, r1, 0x30 +/* 80245DFC 00242D5C 38 A0 00 00 */ li r5, 0 +/* 80245E00 00242D60 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80245E04 00242D64 48 08 3A 81 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80245E08 00242D68 38 61 00 30 */ addi r3, r1, 0x30 +/* 80245E0C 00242D6C 48 0F 73 29 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80245E10 00242D70 48 00 01 A4 */ b lbl_80245FB4 +lbl_80245E14: +/* 80245E14 00242D74 80 1F 00 1C */ lwz r0, 0x1c(r31) +/* 80245E18 00242D78 80 9F 01 FC */ lwz r4, 0x1fc(r31) +/* 80245E1C 00242D7C 1C 60 00 1C */ mulli r3, r0, 0x1c +/* 80245E20 00242D80 3B A3 00 0C */ addi r29, r3, 0xc +/* 80245E24 00242D84 7F A4 EA 14 */ add r29, r4, r29 +/* 80245E28 00242D88 88 1D 00 0C */ lbz r0, 0xc(r29) +/* 80245E2C 00242D8C 28 00 00 00 */ cmplwi r0, 0 +/* 80245E30 00242D90 41 82 01 84 */ beq lbl_80245FB4 +/* 80245E34 00242D94 80 1D 00 08 */ lwz r0, 8(r29) +/* 80245E38 00242D98 28 00 00 00 */ cmplwi r0, 0 +/* 80245E3C 00242D9C 41 82 00 0C */ beq lbl_80245E48 +/* 80245E40 00242DA0 38 60 00 01 */ li r3, 1 +/* 80245E44 00242DA4 48 00 00 3C */ b lbl_80245E80 +lbl_80245E48: +/* 80245E48 00242DA8 88 1D 00 04 */ lbz r0, 4(r29) +/* 80245E4C 00242DAC 28 00 00 00 */ cmplwi r0, 0 +/* 80245E50 00242DB0 41 82 00 2C */ beq lbl_80245E7C +/* 80245E54 00242DB4 80 7D 00 00 */ lwz r3, 0(r29) +/* 80245E58 00242DB8 80 03 00 10 */ lwz r0, 0x10(r3) +/* 80245E5C 00242DBC 28 00 00 00 */ cmplwi r0, 0 +/* 80245E60 00242DC0 41 82 00 1C */ beq lbl_80245E7C +/* 80245E64 00242DC4 7F A3 EB 78 */ mr r3, r29 +/* 80245E68 00242DC8 48 0F AF A5 */ bl GetObj__6CTokenFv +/* 80245E6C 00242DCC 80 03 00 04 */ lwz r0, 4(r3) +/* 80245E70 00242DD0 38 60 00 01 */ li r3, 1 +/* 80245E74 00242DD4 90 1D 00 08 */ stw r0, 8(r29) +/* 80245E78 00242DD8 48 00 00 08 */ b lbl_80245E80 +lbl_80245E7C: +/* 80245E7C 00242DDC 38 60 00 00 */ li r3, 0 +lbl_80245E80: +/* 80245E80 00242DE0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80245E84 00242DE4 41 82 01 30 */ beq lbl_80245FB4 +/* 80245E88 00242DE8 80 7F 01 74 */ lwz r3, 0x174(r31) +/* 80245E8C 00242DEC 80 03 00 DC */ lwz r0, 0xdc(r3) +/* 80245E90 00242DF0 2C 00 00 00 */ cmpwi r0, 0 +/* 80245E94 00242DF4 40 82 01 20 */ bne lbl_80245FB4 +/* 80245E98 00242DF8 83 BD 00 08 */ lwz r29, 8(r29) +/* 80245E9C 00242DFC 38 80 00 00 */ li r4, 0 +/* 80245EA0 00242E00 7F A3 EB 78 */ mr r3, r29 +/* 80245EA4 00242E04 48 11 08 59 */ bl GetString__12CStringTableCFi +/* 80245EA8 00242E08 7C 64 1B 78 */ mr r4, r3 +/* 80245EAC 00242E0C 38 61 00 40 */ addi r3, r1, 0x40 +/* 80245EB0 00242E10 38 C1 00 08 */ addi r6, r1, 8 +/* 80245EB4 00242E14 38 A0 FF FF */ li r5, -1 +/* 80245EB8 00242E18 48 0F 79 05 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCwiRCQ24rstl17rmemory_allocator" +/* 80245EBC 00242E1C 80 1D 00 00 */ lwz r0, 0(r29) +/* 80245EC0 00242E20 2C 00 00 02 */ cmpwi r0, 2 +/* 80245EC4 00242E24 40 81 00 38 */ ble lbl_80245EFC +/* 80245EC8 00242E28 3C 80 80 3F */ lis r4, lbl_803E8BCC@ha +/* 80245ECC 00242E2C 38 61 00 40 */ addi r3, r1, 0x40 +/* 80245ED0 00242E30 38 84 8B CC */ addi r4, r4, lbl_803E8BCC@l +/* 80245ED4 00242E34 38 A0 FF FF */ li r5, -1 +/* 80245ED8 00242E38 38 84 00 36 */ addi r4, r4, 0x36 +/* 80245EDC 00242E3C 48 0F 76 09 */ bl sub_8033d4e4 +/* 80245EE0 00242E40 7F A3 EB 78 */ mr r3, r29 +/* 80245EE4 00242E44 38 80 00 02 */ li r4, 2 +/* 80245EE8 00242E48 48 11 08 15 */ bl GetString__12CStringTableCFi +/* 80245EEC 00242E4C 7C 64 1B 78 */ mr r4, r3 +/* 80245EF0 00242E50 38 61 00 40 */ addi r3, r1, 0x40 +/* 80245EF4 00242E54 38 A0 FF FF */ li r5, -1 +/* 80245EF8 00242E58 48 0F 75 ED */ bl sub_8033d4e4 +lbl_80245EFC: +/* 80245EFC 00242E5C 7F E3 FB 78 */ mr r3, r31 +/* 80245F00 00242E60 48 00 17 99 */ bl IsArtifactCategorySelected__14CLogBookScreenCFv +/* 80245F04 00242E64 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80245F08 00242E68 41 82 00 90 */ beq lbl_80245F98 +/* 80245F0C 00242E6C 7F E3 FB 78 */ mr r3, r31 +/* 80245F10 00242E70 48 00 17 35 */ bl GetSelectedArtifactHeadScanIndex__14CLogBookScreenFv +/* 80245F14 00242E74 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80245F18 00242E78 41 80 00 80 */ blt lbl_80245F98 +/* 80245F1C 00242E7C 80 8D A0 80 */ lwz r4, gpGameState@sda21(r13) +/* 80245F20 00242E80 38 61 00 0C */ addi r3, r1, 0xc +/* 80245F24 00242E84 4B F8 D9 FD */ bl GetPlayerState__10CGameStateCFv +/* 80245F28 00242E88 80 81 00 0C */ lwz r4, 0xc(r1) +/* 80245F2C 00242E8C 38 61 00 0C */ addi r3, r1, 0xc +/* 80245F30 00242E90 83 A4 00 00 */ lwz r29, 0(r4) +/* 80245F34 00242E94 4B DC 2F D9 */ bl sub_80008f0c +/* 80245F38 00242E98 7F A3 EB 78 */ mr r3, r29 +/* 80245F3C 00242E9C 38 9E 00 1D */ addi r4, r30, 0x1d +/* 80245F40 00242EA0 4B E4 BB 81 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80245F44 00242EA4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80245F48 00242EA8 41 82 00 50 */ beq lbl_80245F98 +/* 80245F4C 00242EAC 3C 80 80 3F */ lis r4, lbl_803E8BCC@ha +/* 80245F50 00242EB0 38 61 00 20 */ addi r3, r1, 0x20 +/* 80245F54 00242EB4 38 84 8B CC */ addi r4, r4, lbl_803E8BCC@l +/* 80245F58 00242EB8 38 84 00 3C */ addi r4, r4, 0x3c +/* 80245F5C 00242EBC 4B DC FA 95 */ bl wstring_l__4rstlFPCw +/* 80245F60 00242EC0 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 80245F64 00242EC4 38 80 00 69 */ li r4, 0x69 +/* 80245F68 00242EC8 48 11 07 95 */ bl GetString__12CStringTableCFi +/* 80245F6C 00242ECC 7C 65 1B 78 */ mr r5, r3 +/* 80245F70 00242ED0 38 61 00 10 */ addi r3, r1, 0x10 +/* 80245F74 00242ED4 38 81 00 20 */ addi r4, r1, 0x20 +/* 80245F78 00242ED8 48 00 00 59 */ bl sub_80245fd0 +/* 80245F7C 00242EDC 38 61 00 40 */ addi r3, r1, 0x40 +/* 80245F80 00242EE0 38 81 00 10 */ addi r4, r1, 0x10 +/* 80245F84 00242EE4 48 0F 73 C9 */ bl sub_8033d34c +/* 80245F88 00242EE8 38 61 00 10 */ addi r3, r1, 0x10 +/* 80245F8C 00242EEC 48 0F 71 A9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80245F90 00242EF0 38 61 00 20 */ addi r3, r1, 0x20 +/* 80245F94 00242EF4 48 0F 71 A1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80245F98: +/* 80245F98 00242EF8 80 7F 01 74 */ lwz r3, 0x174(r31) +/* 80245F9C 00242EFC 38 81 00 40 */ addi r4, r1, 0x40 +/* 80245FA0 00242F00 38 A0 00 01 */ li r5, 1 +/* 80245FA4 00242F04 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80245FA8 00242F08 48 08 38 DD */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80245FAC 00242F0C 38 61 00 40 */ addi r3, r1, 0x40 +/* 80245FB0 00242F10 48 0F 71 85 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80245FB4: +/* 80245FB4 00242F14 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80245FB8 00242F18 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 80245FBC 00242F1C 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 80245FC0 00242F20 83 A1 00 54 */ lwz r29, 0x54(r1) +/* 80245FC4 00242F24 7C 08 03 A6 */ mtlr r0 +/* 80245FC8 00242F28 38 21 00 60 */ addi r1, r1, 0x60 +/* 80245FCC 00242F2C 4E 80 00 20 */ blr + +.global sub_80245fd0 +sub_80245fd0: +/* 80245FD0 00242F30 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80245FD4 00242F34 7C 08 02 A6 */ mflr r0 +/* 80245FD8 00242F38 90 01 00 24 */ stw r0, 0x24(r1) +/* 80245FDC 00242F3C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80245FE0 00242F40 7C BF 2B 78 */ mr r31, r5 +/* 80245FE4 00242F44 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80245FE8 00242F48 7C 7E 1B 78 */ mr r30, r3 +/* 80245FEC 00242F4C 38 61 00 08 */ addi r3, r1, 8 +/* 80245FF0 00242F50 48 0F 77 99 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80245FF4 00242F54 7F E4 FB 78 */ mr r4, r31 +/* 80245FF8 00242F58 38 61 00 08 */ addi r3, r1, 8 +/* 80245FFC 00242F5C 38 A0 FF FF */ li r5, -1 +/* 80246000 00242F60 48 0F 74 E5 */ bl sub_8033d4e4 +/* 80246004 00242F64 7F C3 F3 78 */ mr r3, r30 +/* 80246008 00242F68 38 81 00 08 */ addi r4, r1, 8 +/* 8024600C 00242F6C 48 0F 77 7D */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80246010 00242F70 38 61 00 08 */ addi r3, r1, 8 +/* 80246014 00242F74 48 0F 71 21 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80246018 00242F78 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8024601C 00242F7C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80246020 00242F80 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80246024 00242F84 7C 08 03 A6 */ mtlr r0 +/* 80246028 00242F88 38 21 00 20 */ addi r1, r1, 0x20 +/* 8024602C 00242F8C 4E 80 00 20 */ blr + +.global UpdateBodyImagesAndText__14CLogBookScreenFv +UpdateBodyImagesAndText__14CLogBookScreenFv: +/* 80246030 00242F90 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80246034 00242F94 7C 08 02 A6 */ mflr r0 +/* 80246038 00242F98 90 01 00 54 */ stw r0, 0x54(r1) +/* 8024603C 00242F9C DB E1 00 40 */ stfd f31, 0x40(r1) +/* 80246040 00242FA0 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 80246044 00242FA4 BF 41 00 28 */ stmw r26, 0x28(r1) +/* 80246048 00242FA8 7C 7F 1B 78 */ mr r31, r3 +/* 8024604C 00242FAC 3B 60 00 00 */ li r27, 0 +/* 80246050 00242FB0 80 03 00 1C */ lwz r0, 0x1c(r3) +/* 80246054 00242FB4 3B BF 00 F4 */ addi r29, r31, 0xf4 +/* 80246058 00242FB8 80 83 01 FC */ lwz r4, 0x1fc(r3) +/* 8024605C 00242FBC 7F BE EB 78 */ mr r30, r29 +/* 80246060 00242FC0 1C 60 00 1C */ mulli r3, r0, 0x1c +/* 80246064 00242FC4 38 03 00 08 */ addi r0, r3, 8 +/* 80246068 00242FC8 7F 84 00 2E */ lwzx r28, r4, r0 +/* 8024606C 00242FCC 48 00 00 34 */ b lbl_802460A0 +lbl_80246070: +/* 80246070 00242FD0 83 5E 00 00 */ lwz r26, 0(r30) +/* 80246074 00242FD4 38 80 FF FF */ li r4, -1 +/* 80246078 00242FD8 80 AD A0 64 */ lwz r5, gpSimplePool@sda21(r13) +/* 8024607C 00242FDC 7F 43 D3 78 */ mr r3, r26 +/* 80246080 00242FE0 48 08 5E 4D */ bl SetTextureID0__13CAuiImagePaneFUib +/* 80246084 00242FE4 C0 22 B8 58 */ lfs f1, lbl_805AD578@sda21(r2) +/* 80246088 00242FE8 7F 43 D3 78 */ mr r3, r26 +/* 8024608C 00242FEC 38 8D A8 98 */ addi r4, r13, lbl_805A9458@sda21 +/* 80246090 00242FF0 FC 40 08 90 */ fmr f2, f1 +/* 80246094 00242FF4 48 08 6E 15 */ bl SetAnimationParms__13CAuiImagePaneFRC9CVector2fff +/* 80246098 00242FF8 3B DE 00 04 */ addi r30, r30, 4 +/* 8024609C 00242FFC 3B 7B 00 01 */ addi r27, r27, 1 +lbl_802460A0: +/* 802460A0 00243000 80 1F 00 F0 */ lwz r0, 0xf0(r31) +/* 802460A4 00243004 7C 1B 00 00 */ cmpw r27, r0 +/* 802460A8 00243008 41 80 FF C8 */ blt lbl_80246070 +/* 802460AC 0024300C 3B 40 00 00 */ li r26, 0 +/* 802460B0 00243010 3B DC 00 18 */ addi r30, r28, 0x18 +lbl_802460B4: +/* 802460B4 00243014 80 1E 00 08 */ lwz r0, 8(r30) +/* 802460B8 00243018 2C 00 FF FF */ cmpwi r0, -1 +/* 802460BC 0024301C 41 82 00 88 */ beq lbl_80246144 +/* 802460C0 00243020 C3 FE 00 14 */ lfs f31, 0x14(r30) +/* 802460C4 00243024 54 00 10 3A */ slwi r0, r0, 2 +/* 802460C8 00243028 C0 02 B8 58 */ lfs f0, lbl_805AD578@sda21(r2) +/* 802460CC 0024302C 7F 7D 00 2E */ lwzx r27, r29, r0 +/* 802460D0 00243030 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 802460D4 00243034 40 81 00 58 */ ble lbl_8024612C +/* 802460D8 00243038 80 BE 00 0C */ lwz r5, 0xc(r30) +/* 802460DC 0024303C 3C 80 43 30 */ lis r4, 0x4330 +/* 802460E0 00243040 80 1E 00 10 */ lwz r0, 0x10(r30) +/* 802460E4 00243044 38 61 00 08 */ addi r3, r1, 8 +/* 802460E8 00243048 6C A5 80 00 */ xoris r5, r5, 0x8000 +/* 802460EC 0024304C 90 81 00 10 */ stw r4, 0x10(r1) +/* 802460F0 00243050 6C 00 80 00 */ xoris r0, r0, 0x8000 +/* 802460F4 00243054 C8 42 B8 68 */ lfd f2, lbl_805AD588@sda21(r2) +/* 802460F8 00243058 90 A1 00 14 */ stw r5, 0x14(r1) +/* 802460FC 0024305C C8 01 00 10 */ lfd f0, 0x10(r1) +/* 80246100 00243060 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80246104 00243064 EC 20 10 28 */ fsubs f1, f0, f2 +/* 80246108 00243068 90 81 00 18 */ stw r4, 0x18(r1) +/* 8024610C 0024306C C8 01 00 18 */ lfd f0, 0x18(r1) +/* 80246110 00243070 EC 40 10 28 */ fsubs f2, f0, f2 +/* 80246114 00243074 48 0C E0 ED */ bl __ct__9CVector2fFff +/* 80246118 00243078 FC 20 F8 90 */ fmr f1, f31 +/* 8024611C 0024307C 7C 64 1B 78 */ mr r4, r3 +/* 80246120 00243080 C0 5E 00 18 */ lfs f2, 0x18(r30) +/* 80246124 00243084 7F 63 DB 78 */ mr r3, r27 +/* 80246128 00243088 48 08 6D 81 */ bl SetAnimationParms__13CAuiImagePaneFRC9CVector2fff +lbl_8024612C: +/* 8024612C 0024308C 80 9E 00 00 */ lwz r4, 0(r30) +/* 80246130 00243090 7F 63 DB 78 */ mr r3, r27 +/* 80246134 00243094 80 AD A0 64 */ lwz r5, gpSimplePool@sda21(r13) +/* 80246138 00243098 48 08 5D 95 */ bl SetTextureID0__13CAuiImagePaneFUib +/* 8024613C 0024309C C0 02 B8 58 */ lfs f0, lbl_805AD578@sda21(r2) +/* 80246140 002430A0 D0 1B 01 50 */ stfs f0, 0x150(r27) +lbl_80246144: +/* 80246144 002430A4 3B 5A 00 01 */ addi r26, r26, 1 +/* 80246148 002430A8 3B DE 00 1C */ addi r30, r30, 0x1c +/* 8024614C 002430AC 2C 1A 00 04 */ cmpwi r26, 4 +/* 80246150 002430B0 41 80 FF 64 */ blt lbl_802460B4 +/* 80246154 002430B4 88 1F 02 60 */ lbz r0, 0x260(r31) +/* 80246158 002430B8 38 60 00 00 */ li r3, 0 +/* 8024615C 002430BC 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 80246160 002430C0 7F E3 FB 78 */ mr r3, r31 +/* 80246164 002430C4 98 1F 02 60 */ stb r0, 0x260(r31) +/* 80246168 002430C8 4B FF FC 51 */ bl UpdateBodyText__14CLogBookScreenFv +/* 8024616C 002430CC E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 80246170 002430D0 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 80246174 002430D4 BB 41 00 28 */ lmw r26, 0x28(r1) +/* 80246178 002430D8 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8024617C 002430DC 7C 08 03 A6 */ mtlr r0 +/* 80246180 002430E0 38 21 00 50 */ addi r1, r1, 0x50 +/* 80246184 002430E4 4E 80 00 20 */ blr + +.global NextSurroundingArticleIndex__14CLogBookScreenFi +NextSurroundingArticleIndex__14CLogBookScreenFi: +/* 80246188 002430E8 80 C3 00 18 */ lwz r6, 0x18(r3) +/* 8024618C 002430EC 7C 04 30 00 */ cmpw r4, r6 +/* 80246190 002430F0 40 80 00 28 */ bge lbl_802461B8 +/* 80246194 002430F4 7C A4 30 50 */ subf r5, r4, r6 +/* 80246198 002430F8 80 03 01 F4 */ lwz r0, 0x1f4(r3) +/* 8024619C 002430FC 38 A5 00 06 */ addi r5, r5, 6 +/* 802461A0 00243100 38 64 FF FF */ addi r3, r4, -1 +/* 802461A4 00243104 7C A6 2A 14 */ add r5, r6, r5 +/* 802461A8 00243108 7C 05 00 00 */ cmpw r5, r0 +/* 802461AC 0024310C 4C 80 00 20 */ bgelr +/* 802461B0 00243110 7C A3 2B 78 */ mr r3, r5 +/* 802461B4 00243114 4E 80 00 20 */ blr +lbl_802461B8: +/* 802461B8 00243118 38 06 00 06 */ addi r0, r6, 6 +/* 802461BC 0024311C 7C 04 00 00 */ cmpw r4, r0 +/* 802461C0 00243120 40 80 00 28 */ bge lbl_802461E8 +/* 802461C4 00243124 80 03 01 F4 */ lwz r0, 0x1f4(r3) +/* 802461C8 00243128 38 64 00 01 */ addi r3, r4, 1 +/* 802461CC 0024312C 7C 03 00 00 */ cmpw r3, r0 +/* 802461D0 00243130 4D 80 00 20 */ bltlr +/* 802461D4 00243134 2C 06 00 00 */ cmpwi r6, 0 +/* 802461D8 00243138 38 60 FF FF */ li r3, -1 +/* 802461DC 0024313C 4D 82 00 20 */ beqlr +/* 802461E0 00243140 38 66 FF FF */ addi r3, r6, -1 +/* 802461E4 00243144 4E 80 00 20 */ blr +lbl_802461E8: +/* 802461E8 00243148 38 06 00 05 */ addi r0, r6, 5 +/* 802461EC 0024314C 7C 00 20 50 */ subf r0, r0, r4 +/* 802461F0 00243150 7C 00 30 51 */ subf. r0, r0, r6 +/* 802461F4 00243154 41 80 00 0C */ blt lbl_80246200 +/* 802461F8 00243158 7C 03 03 78 */ mr r3, r0 +/* 802461FC 0024315C 4E 80 00 20 */ blr +lbl_80246200: +/* 80246200 00243160 80 A3 01 F4 */ lwz r5, 0x1f4(r3) +/* 80246204 00243164 38 60 FF FF */ li r3, -1 +/* 80246208 00243168 38 05 FF FF */ addi r0, r5, -1 +/* 8024620C 0024316C 7C 04 00 00 */ cmpw r4, r0 +/* 80246210 00243170 4C 80 00 20 */ bgelr +/* 80246214 00243174 38 64 00 01 */ addi r3, r4, 1 +/* 80246218 00243178 4E 80 00 20 */ blr + +.global PumpArticleLoad__14CLogBookScreenFv +PumpArticleLoad__14CLogBookScreenFv: +/* 8024621C 0024317C 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80246220 00243180 7C 08 02 A6 */ mflr r0 +/* 80246224 00243184 90 01 00 64 */ stw r0, 0x64(r1) +/* 80246228 00243188 BF 61 00 4C */ stmw r27, 0x4c(r1) +/* 8024622C 0024318C 7C 7B 1B 78 */ mr r27, r3 +/* 80246230 00243190 3B DB 02 04 */ addi r30, r27, 0x204 +/* 80246234 00243194 38 60 00 01 */ li r3, 1 +/* 80246238 00243198 7F DD F3 78 */ mr r29, r30 +/* 8024623C 0024319C 88 1B 02 60 */ lbz r0, 0x260(r27) +/* 80246240 002431A0 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80246244 002431A4 98 1B 02 60 */ stb r0, 0x260(r27) +/* 80246248 002431A8 48 00 01 A0 */ b lbl_802463E8 +lbl_8024624C: +/* 8024624C 002431AC 83 FD 00 0C */ lwz r31, 0xc(r29) +/* 80246250 002431B0 48 00 01 7C */ b lbl_802463CC +lbl_80246254: +/* 80246254 002431B4 80 1F 00 08 */ lwz r0, 8(r31) +/* 80246258 002431B8 28 00 00 00 */ cmplwi r0, 0 +/* 8024625C 002431BC 41 82 00 0C */ beq lbl_80246268 +/* 80246260 002431C0 38 60 00 01 */ li r3, 1 +/* 80246264 002431C4 48 00 00 3C */ b lbl_802462A0 +lbl_80246268: +/* 80246268 002431C8 88 1F 00 04 */ lbz r0, 4(r31) +/* 8024626C 002431CC 28 00 00 00 */ cmplwi r0, 0 +/* 80246270 002431D0 41 82 00 2C */ beq lbl_8024629C +/* 80246274 002431D4 80 7F 00 00 */ lwz r3, 0(r31) +/* 80246278 002431D8 80 03 00 10 */ lwz r0, 0x10(r3) +/* 8024627C 002431DC 28 00 00 00 */ cmplwi r0, 0 +/* 80246280 002431E0 41 82 00 1C */ beq lbl_8024629C +/* 80246284 002431E4 7F E3 FB 78 */ mr r3, r31 +/* 80246288 002431E8 48 0F AB 85 */ bl GetObj__6CTokenFv +/* 8024628C 002431EC 80 03 00 04 */ lwz r0, 4(r3) +/* 80246290 002431F0 38 60 00 01 */ li r3, 1 +/* 80246294 002431F4 90 1F 00 08 */ stw r0, 8(r31) +/* 80246298 002431F8 48 00 00 08 */ b lbl_802462A0 +lbl_8024629C: +/* 8024629C 002431FC 38 60 00 00 */ li r3, 0 +lbl_802462A0: +/* 802462A0 00243200 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 802462A4 00243204 41 82 01 14 */ beq lbl_802463B8 +/* 802462A8 00243208 3B 9F 00 0C */ addi r28, r31, 0xc +/* 802462AC 0024320C 88 1F 00 18 */ lbz r0, 0x18(r31) +/* 802462B0 00243210 28 00 00 00 */ cmplwi r0, 0 +/* 802462B4 00243214 41 82 00 40 */ beq lbl_802462F4 +/* 802462B8 00243218 80 1C 00 08 */ lwz r0, 8(r28) +/* 802462BC 0024321C 28 00 00 00 */ cmplwi r0, 0 +/* 802462C0 00243220 40 82 01 08 */ bne lbl_802463C8 +/* 802462C4 00243224 88 1C 00 04 */ lbz r0, 4(r28) +/* 802462C8 00243228 28 00 00 00 */ cmplwi r0, 0 +/* 802462CC 0024322C 41 82 00 FC */ beq lbl_802463C8 +/* 802462D0 00243230 80 7C 00 00 */ lwz r3, 0(r28) +/* 802462D4 00243234 80 03 00 10 */ lwz r0, 0x10(r3) +/* 802462D8 00243238 28 00 00 00 */ cmplwi r0, 0 +/* 802462DC 0024323C 41 82 00 EC */ beq lbl_802463C8 +/* 802462E0 00243240 7F 83 E3 78 */ mr r3, r28 +/* 802462E4 00243244 48 0F AB 29 */ bl GetObj__6CTokenFv +/* 802462E8 00243248 80 03 00 04 */ lwz r0, 4(r3) +/* 802462EC 0024324C 90 1C 00 08 */ stw r0, 8(r28) +/* 802462F0 00243250 48 00 00 D8 */ b lbl_802463C8 +lbl_802462F4: +/* 802462F4 00243254 80 BF 00 08 */ lwz r5, 8(r31) +/* 802462F8 00243258 3C 60 53 54 */ lis r3, 0x53545247@ha +/* 802462FC 0024325C 38 03 52 47 */ addi r0, r3, 0x53545247@l +/* 80246300 00243260 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80246304 00243264 80 C5 00 04 */ lwz r6, 4(r5) +/* 80246308 00243268 38 61 00 18 */ addi r3, r1, 0x18 +/* 8024630C 0024326C 38 A1 00 20 */ addi r5, r1, 0x20 +/* 80246310 00243270 90 01 00 20 */ stw r0, 0x20(r1) +/* 80246314 00243274 90 C1 00 24 */ stw r6, 0x24(r1) +/* 80246318 00243278 81 84 00 00 */ lwz r12, 0(r4) +/* 8024631C 0024327C 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80246320 00243280 7D 89 03 A6 */ mtctr r12 +/* 80246324 00243284 4E 80 04 21 */ bctrl +/* 80246328 00243288 38 61 00 34 */ addi r3, r1, 0x34 +/* 8024632C 0024328C 38 81 00 18 */ addi r4, r1, 0x18 +/* 80246330 00243290 48 0F AB 79 */ bl __ct__6CTokenFRC6CToken +/* 80246334 00243294 38 00 00 00 */ li r0, 0 +/* 80246338 00243298 90 01 00 3C */ stw r0, 0x3c(r1) +/* 8024633C 0024329C 88 1C 00 0C */ lbz r0, 0xc(r28) +/* 80246340 002432A0 28 00 00 00 */ cmplwi r0, 0 +/* 80246344 002432A4 40 82 00 2C */ bne lbl_80246370 +/* 80246348 002432A8 28 1C 00 00 */ cmplwi r28, 0 +/* 8024634C 002432AC 41 82 00 18 */ beq lbl_80246364 +/* 80246350 002432B0 7F 83 E3 78 */ mr r3, r28 +/* 80246354 002432B4 38 81 00 34 */ addi r4, r1, 0x34 +/* 80246358 002432B8 48 0F AB 51 */ bl __ct__6CTokenFRC6CToken +/* 8024635C 002432BC 80 01 00 3C */ lwz r0, 0x3c(r1) +/* 80246360 002432C0 90 1C 00 08 */ stw r0, 8(r28) +lbl_80246364: +/* 80246364 002432C4 38 00 00 01 */ li r0, 1 +/* 80246368 002432C8 98 1C 00 0C */ stb r0, 0xc(r28) +/* 8024636C 002432CC 48 00 00 18 */ b lbl_80246384 +lbl_80246370: +/* 80246370 002432D0 7F 83 E3 78 */ mr r3, r28 +/* 80246374 002432D4 38 81 00 34 */ addi r4, r1, 0x34 +/* 80246378 002432D8 48 0F A9 4D */ bl __as__6CTokenFRC6CToken +/* 8024637C 002432DC 80 01 00 3C */ lwz r0, 0x3c(r1) +/* 80246380 002432E0 90 1C 00 08 */ stw r0, 8(r28) +lbl_80246384: +/* 80246384 002432E4 38 61 00 34 */ addi r3, r1, 0x34 +/* 80246388 002432E8 38 80 00 00 */ li r4, 0 +/* 8024638C 002432EC 48 0F AA B5 */ bl __dt__6CTokenFv +/* 80246390 002432F0 38 61 00 18 */ addi r3, r1, 0x18 +/* 80246394 002432F4 38 80 FF FF */ li r4, -1 +/* 80246398 002432F8 48 0F AA A9 */ bl __dt__6CTokenFv +/* 8024639C 002432FC 7F 83 E3 78 */ mr r3, r28 +/* 802463A0 00243300 48 0F A9 E5 */ bl Lock__6CTokenFv +/* 802463A4 00243304 88 1B 02 60 */ lbz r0, 0x260(r27) +/* 802463A8 00243308 38 60 00 00 */ li r3, 0 +/* 802463AC 0024330C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 802463B0 00243310 98 1B 02 60 */ stb r0, 0x260(r27) +/* 802463B4 00243314 48 00 00 14 */ b lbl_802463C8 +lbl_802463B8: +/* 802463B8 00243318 88 1B 02 60 */ lbz r0, 0x260(r27) +/* 802463BC 0024331C 38 60 00 00 */ li r3, 0 +/* 802463C0 00243320 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 802463C4 00243324 98 1B 02 60 */ stb r0, 0x260(r27) +lbl_802463C8: +/* 802463C8 00243328 3B FF 00 1C */ addi r31, r31, 0x1c +lbl_802463CC: +/* 802463CC 0024332C 80 1D 00 04 */ lwz r0, 4(r29) +/* 802463D0 00243330 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 802463D4 00243334 1C 00 00 1C */ mulli r0, r0, 0x1c +/* 802463D8 00243338 7C 03 02 14 */ add r0, r3, r0 +/* 802463DC 0024333C 7C 1F 00 40 */ cmplw r31, r0 +/* 802463E0 00243340 40 82 FE 74 */ bne lbl_80246254 +/* 802463E4 00243344 3B BD 00 10 */ addi r29, r29, 0x10 +lbl_802463E8: +/* 802463E8 00243348 80 1B 02 00 */ lwz r0, 0x200(r27) +/* 802463EC 0024334C 54 00 20 36 */ slwi r0, r0, 4 +/* 802463F0 00243350 7C 1E 02 14 */ add r0, r30, r0 +/* 802463F4 00243354 7C 1D 00 40 */ cmplw r29, r0 +/* 802463F8 00243358 40 82 FE 54 */ bne lbl_8024624C +/* 802463FC 0024335C 83 FB 01 FC */ lwz r31, 0x1fc(r27) +/* 80246400 00243360 3B 80 00 06 */ li r28, 6 +/* 80246404 00243364 48 00 01 54 */ b lbl_80246558 +lbl_80246408: +/* 80246408 00243368 80 1F 00 08 */ lwz r0, 8(r31) +/* 8024640C 0024336C 38 80 00 00 */ li r4, 0 +/* 80246410 00243370 28 00 00 00 */ cmplwi r0, 0 +/* 80246414 00243374 40 82 00 14 */ bne lbl_80246428 +/* 80246418 00243378 80 7F 00 00 */ lwz r3, 0(r31) +/* 8024641C 0024337C 80 03 00 10 */ lwz r0, 0x10(r3) +/* 80246420 00243380 28 00 00 00 */ cmplwi r0, 0 +/* 80246424 00243384 41 82 00 08 */ beq lbl_8024642C +lbl_80246428: +/* 80246428 00243388 38 80 00 01 */ li r4, 1 +lbl_8024642C: +/* 8024642C 0024338C 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 80246430 00243390 41 82 01 0C */ beq lbl_8024653C +/* 80246434 00243394 7F E3 FB 78 */ mr r3, r31 +/* 80246438 00243398 48 0F A9 4D */ bl Lock__6CTokenFv +/* 8024643C 0024339C 80 1F 00 08 */ lwz r0, 8(r31) +/* 80246440 002433A0 28 00 00 00 */ cmplwi r0, 0 +/* 80246444 002433A4 40 82 00 30 */ bne lbl_80246474 +/* 80246448 002433A8 88 1F 00 04 */ lbz r0, 4(r31) +/* 8024644C 002433AC 28 00 00 00 */ cmplwi r0, 0 +/* 80246450 002433B0 41 82 00 24 */ beq lbl_80246474 +/* 80246454 002433B4 80 7F 00 00 */ lwz r3, 0(r31) +/* 80246458 002433B8 80 03 00 10 */ lwz r0, 0x10(r3) +/* 8024645C 002433BC 28 00 00 00 */ cmplwi r0, 0 +/* 80246460 002433C0 41 82 00 14 */ beq lbl_80246474 +/* 80246464 002433C4 7F E3 FB 78 */ mr r3, r31 +/* 80246468 002433C8 48 0F A9 A5 */ bl GetObj__6CTokenFv +/* 8024646C 002433CC 80 03 00 04 */ lwz r0, 4(r3) +/* 80246470 002433D0 90 1F 00 08 */ stw r0, 8(r31) +lbl_80246474: +/* 80246474 002433D4 3B BF 00 0C */ addi r29, r31, 0xc +/* 80246478 002433D8 88 1F 00 18 */ lbz r0, 0x18(r31) +/* 8024647C 002433DC 28 00 00 00 */ cmplwi r0, 0 +/* 80246480 002433E0 40 82 00 CC */ bne lbl_8024654C +/* 80246484 002433E4 80 BF 00 08 */ lwz r5, 8(r31) +/* 80246488 002433E8 3C 60 53 54 */ lis r3, 0x53545247@ha +/* 8024648C 002433EC 38 03 52 47 */ addi r0, r3, 0x53545247@l +/* 80246490 002433F0 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80246494 002433F4 80 C5 00 04 */ lwz r6, 4(r5) +/* 80246498 002433F8 38 61 00 08 */ addi r3, r1, 8 +/* 8024649C 002433FC 38 A1 00 10 */ addi r5, r1, 0x10 +/* 802464A0 00243400 90 01 00 10 */ stw r0, 0x10(r1) +/* 802464A4 00243404 90 C1 00 14 */ stw r6, 0x14(r1) +/* 802464A8 00243408 81 84 00 00 */ lwz r12, 0(r4) +/* 802464AC 0024340C 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 802464B0 00243410 7D 89 03 A6 */ mtctr r12 +/* 802464B4 00243414 4E 80 04 21 */ bctrl +/* 802464B8 00243418 38 61 00 28 */ addi r3, r1, 0x28 +/* 802464BC 0024341C 38 81 00 08 */ addi r4, r1, 8 +/* 802464C0 00243420 48 0F A9 E9 */ bl __ct__6CTokenFRC6CToken +/* 802464C4 00243424 38 00 00 00 */ li r0, 0 +/* 802464C8 00243428 90 01 00 30 */ stw r0, 0x30(r1) +/* 802464CC 0024342C 88 1D 00 0C */ lbz r0, 0xc(r29) +/* 802464D0 00243430 28 00 00 00 */ cmplwi r0, 0 +/* 802464D4 00243434 40 82 00 2C */ bne lbl_80246500 +/* 802464D8 00243438 28 1D 00 00 */ cmplwi r29, 0 +/* 802464DC 0024343C 41 82 00 18 */ beq lbl_802464F4 +/* 802464E0 00243440 7F A3 EB 78 */ mr r3, r29 +/* 802464E4 00243444 38 81 00 28 */ addi r4, r1, 0x28 +/* 802464E8 00243448 48 0F A9 C1 */ bl __ct__6CTokenFRC6CToken +/* 802464EC 0024344C 80 01 00 30 */ lwz r0, 0x30(r1) +/* 802464F0 00243450 90 1D 00 08 */ stw r0, 8(r29) +lbl_802464F4: +/* 802464F4 00243454 38 00 00 01 */ li r0, 1 +/* 802464F8 00243458 98 1D 00 0C */ stb r0, 0xc(r29) +/* 802464FC 0024345C 48 00 00 18 */ b lbl_80246514 +lbl_80246500: +/* 80246500 00243460 7F A3 EB 78 */ mr r3, r29 +/* 80246504 00243464 38 81 00 28 */ addi r4, r1, 0x28 +/* 80246508 00243468 48 0F A7 BD */ bl __as__6CTokenFRC6CToken +/* 8024650C 0024346C 80 01 00 30 */ lwz r0, 0x30(r1) +/* 80246510 00243470 90 1D 00 08 */ stw r0, 8(r29) +lbl_80246514: +/* 80246514 00243474 38 61 00 28 */ addi r3, r1, 0x28 +/* 80246518 00243478 38 80 00 00 */ li r4, 0 +/* 8024651C 0024347C 48 0F A9 25 */ bl __dt__6CTokenFv +/* 80246520 00243480 38 61 00 08 */ addi r3, r1, 8 +/* 80246524 00243484 38 80 FF FF */ li r4, -1 +/* 80246528 00243488 48 0F A9 19 */ bl __dt__6CTokenFv +/* 8024652C 0024348C 7F A3 EB 78 */ mr r3, r29 +/* 80246530 00243490 48 0F A8 55 */ bl Lock__6CTokenFv +/* 80246534 00243494 3B 9C FF FF */ addi r28, r28, -1 +/* 80246538 00243498 48 00 00 14 */ b lbl_8024654C +lbl_8024653C: +/* 8024653C 0024349C 88 1F 00 04 */ lbz r0, 4(r31) +/* 80246540 002434A0 28 00 00 00 */ cmplwi r0, 0 +/* 80246544 002434A4 41 82 00 08 */ beq lbl_8024654C +/* 80246548 002434A8 3B 9C FF FF */ addi r28, r28, -1 +lbl_8024654C: +/* 8024654C 002434AC 2C 1C 00 00 */ cmpwi r28, 0 +/* 80246550 002434B0 41 82 00 20 */ beq lbl_80246570 +/* 80246554 002434B4 3B FF 00 1C */ addi r31, r31, 0x1c +lbl_80246558: +/* 80246558 002434B8 80 1B 01 F4 */ lwz r0, 0x1f4(r27) +/* 8024655C 002434BC 80 7B 01 FC */ lwz r3, 0x1fc(r27) +/* 80246560 002434C0 1C 00 00 1C */ mulli r0, r0, 0x1c +/* 80246564 002434C4 7C 03 02 14 */ add r0, r3, r0 +/* 80246568 002434C8 7C 1F 00 40 */ cmplw r31, r0 +/* 8024656C 002434CC 40 82 FE 9C */ bne lbl_80246408 +lbl_80246570: +/* 80246570 002434D0 80 1B 01 F4 */ lwz r0, 0x1f4(r27) +/* 80246574 002434D4 80 7B 00 18 */ lwz r3, 0x18(r27) +/* 80246578 002434D8 2C 00 00 00 */ cmpwi r0, 0 +/* 8024657C 002434DC 41 82 00 48 */ beq lbl_802465C4 +/* 80246580 002434E0 48 00 00 3C */ b lbl_802465BC +lbl_80246584: +/* 80246584 002434E4 1C 03 00 1C */ mulli r0, r3, 0x1c +/* 80246588 002434E8 80 9B 01 FC */ lwz r4, 0x1fc(r27) +/* 8024658C 002434EC 7C 7D 1B 78 */ mr r29, r3 +/* 80246590 002434F0 7C 64 02 14 */ add r3, r4, r0 +/* 80246594 002434F4 88 03 00 04 */ lbz r0, 4(r3) +/* 80246598 002434F8 28 00 00 00 */ cmplwi r0, 0 +/* 8024659C 002434FC 40 82 00 0C */ bne lbl_802465A8 +/* 802465A0 00243500 48 0F A7 E5 */ bl Lock__6CTokenFv +/* 802465A4 00243504 3B 9C FF FF */ addi r28, r28, -1 +lbl_802465A8: +/* 802465A8 00243508 7F 63 DB 78 */ mr r3, r27 +/* 802465AC 0024350C 7F A4 EB 78 */ mr r4, r29 +/* 802465B0 00243510 4B FF FB D9 */ bl NextSurroundingArticleIndex__14CLogBookScreenFi +/* 802465B4 00243514 2C 03 FF FF */ cmpwi r3, -1 +/* 802465B8 00243518 41 82 00 0C */ beq lbl_802465C4 +lbl_802465BC: +/* 802465BC 0024351C 2C 1C 00 00 */ cmpwi r28, 0 +/* 802465C0 00243520 41 81 FF C4 */ bgt lbl_80246584 +lbl_802465C4: +/* 802465C4 00243524 3B 80 00 00 */ li r28, 0 +/* 802465C8 00243528 3B E0 00 00 */ li r31, 0 +/* 802465CC 0024352C 48 00 00 E4 */ b lbl_802466B0 +lbl_802465D0: +/* 802465D0 00243530 80 1B 01 FC */ lwz r0, 0x1fc(r27) +/* 802465D4 00243534 7F A0 FA 14 */ add r29, r0, r31 +/* 802465D8 00243538 80 1D 00 08 */ lwz r0, 8(r29) +/* 802465DC 0024353C 28 00 00 00 */ cmplwi r0, 0 +/* 802465E0 00243540 41 82 00 0C */ beq lbl_802465EC +/* 802465E4 00243544 38 60 00 01 */ li r3, 1 +/* 802465E8 00243548 48 00 00 3C */ b lbl_80246624 +lbl_802465EC: +/* 802465EC 0024354C 88 1D 00 04 */ lbz r0, 4(r29) +/* 802465F0 00243550 28 00 00 00 */ cmplwi r0, 0 +/* 802465F4 00243554 41 82 00 2C */ beq lbl_80246620 +/* 802465F8 00243558 80 7D 00 00 */ lwz r3, 0(r29) +/* 802465FC 0024355C 80 03 00 10 */ lwz r0, 0x10(r3) +/* 80246600 00243560 28 00 00 00 */ cmplwi r0, 0 +/* 80246604 00243564 41 82 00 1C */ beq lbl_80246620 +/* 80246608 00243568 7F A3 EB 78 */ mr r3, r29 +/* 8024660C 0024356C 48 0F A8 01 */ bl GetObj__6CTokenFv +/* 80246610 00243570 80 03 00 04 */ lwz r0, 4(r3) +/* 80246614 00243574 38 60 00 01 */ li r3, 1 +/* 80246618 00243578 90 1D 00 08 */ stw r0, 8(r29) +/* 8024661C 0024357C 48 00 00 08 */ b lbl_80246624 +lbl_80246620: +/* 80246620 00243580 38 60 00 00 */ li r3, 0 +lbl_80246624: +/* 80246624 00243584 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80246628 00243588 41 82 00 80 */ beq lbl_802466A8 +/* 8024662C 0024358C 80 1B 01 FC */ lwz r0, 0x1fc(r27) +/* 80246630 00243590 3B BF 00 0C */ addi r29, r31, 0xc +/* 80246634 00243594 7F A0 EA 14 */ add r29, r0, r29 +/* 80246638 00243598 88 1D 00 0C */ lbz r0, 0xc(r29) +/* 8024663C 0024359C 28 00 00 00 */ cmplwi r0, 0 +/* 80246640 002435A0 41 82 00 68 */ beq lbl_802466A8 +/* 80246644 002435A4 80 1D 00 08 */ lwz r0, 8(r29) +/* 80246648 002435A8 28 00 00 00 */ cmplwi r0, 0 +/* 8024664C 002435AC 41 82 00 0C */ beq lbl_80246658 +/* 80246650 002435B0 38 60 00 01 */ li r3, 1 +/* 80246654 002435B4 48 00 00 3C */ b lbl_80246690 +lbl_80246658: +/* 80246658 002435B8 88 1D 00 04 */ lbz r0, 4(r29) +/* 8024665C 002435BC 28 00 00 00 */ cmplwi r0, 0 +/* 80246660 002435C0 41 82 00 2C */ beq lbl_8024668C +/* 80246664 002435C4 80 7D 00 00 */ lwz r3, 0(r29) +/* 80246668 002435C8 80 03 00 10 */ lwz r0, 0x10(r3) +/* 8024666C 002435CC 28 00 00 00 */ cmplwi r0, 0 +/* 80246670 002435D0 41 82 00 1C */ beq lbl_8024668C +/* 80246674 002435D4 7F A3 EB 78 */ mr r3, r29 +/* 80246678 002435D8 48 0F A7 95 */ bl GetObj__6CTokenFv +/* 8024667C 002435DC 80 03 00 04 */ lwz r0, 4(r3) +/* 80246680 002435E0 38 60 00 01 */ li r3, 1 +/* 80246684 002435E4 90 1D 00 08 */ stw r0, 8(r29) +/* 80246688 002435E8 48 00 00 08 */ b lbl_80246690 +lbl_8024668C: +/* 8024668C 002435EC 38 60 00 00 */ li r3, 0 +lbl_80246690: +/* 80246690 002435F0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80246694 002435F4 41 82 00 14 */ beq lbl_802466A8 +/* 80246698 002435F8 7F 63 DB 78 */ mr r3, r27 +/* 8024669C 002435FC 4B FF F4 B9 */ bl UpdateRightTitles__14CLogBookScreenFv +/* 802466A0 00243600 7F 63 DB 78 */ mr r3, r27 +/* 802466A4 00243604 4B FF F7 15 */ bl UpdateBodyText__14CLogBookScreenFv +lbl_802466A8: +/* 802466A8 00243608 3B FF 00 1C */ addi r31, r31, 0x1c +/* 802466AC 0024360C 3B 9C 00 01 */ addi r28, r28, 1 +lbl_802466B0: +/* 802466B0 00243610 80 1B 01 F4 */ lwz r0, 0x1f4(r27) +/* 802466B4 00243614 7C 1C 00 00 */ cmpw r28, r0 +/* 802466B8 00243618 41 80 FF 18 */ blt lbl_802465D0 +/* 802466BC 0024361C BB 61 00 4C */ lmw r27, 0x4c(r1) +/* 802466C0 00243620 80 01 00 64 */ lwz r0, 0x64(r1) +/* 802466C4 00243624 7C 08 03 A6 */ mtlr r0 +/* 802466C8 00243628 38 21 00 60 */ addi r1, r1, 0x60 +/* 802466CC 0024362C 4E 80 00 20 */ blr + +.global InitializeLogBook__14CLogBookScreenFv +InitializeLogBook__14CLogBookScreenFv: +/* 802466D0 00243630 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 802466D4 00243634 7C 08 02 A6 */ mflr r0 +/* 802466D8 00243638 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 802466DC 0024363C BE 81 00 70 */ stmw r20, 0x70(r1) +/* 802466E0 00243640 7C 7F 1B 78 */ mr r31, r3 +/* 802466E4 00243644 3B 3F 01 A0 */ addi r25, r31, 0x1a0 +/* 802466E8 00243648 3A A0 00 00 */ li r21, 0 +/* 802466EC 0024364C 7F 34 CB 78 */ mr r20, r25 +/* 802466F0 00243650 82 C3 00 04 */ lwz r22, 4(r3) +lbl_802466F4: +/* 802466F4 00243654 38 15 00 01 */ addi r0, r21, 1 +/* 802466F8 00243658 80 8D A0 84 */ lwz r4, gpMemoryCard@sda21(r13) +/* 802466FC 0024365C 54 00 10 3A */ slwi r0, r0, 2 +/* 80246700 00243660 7E 83 A3 78 */ mr r3, r20 +/* 80246704 00243664 7C 84 02 14 */ add r4, r4, r0 +/* 80246708 00243668 80 84 00 34 */ lwz r4, 0x34(r4) +/* 8024670C 0024366C 48 00 1A A1 */ bl sub_802481ac +/* 80246710 00243670 3A B5 00 01 */ addi r21, r21, 1 +/* 80246714 00243674 3A 94 00 10 */ addi r20, r20, 0x10 +/* 80246718 00243678 2C 15 00 05 */ cmpwi r21, 5 +/* 8024671C 0024367C 41 80 FF D8 */ blt lbl_802466F4 +/* 80246720 00243680 82 AD A0 84 */ lwz r21, gpMemoryCard@sda21(r13) +/* 80246724 00243684 80 76 08 B8 */ lwz r3, 0x8b8(r22) +/* 80246728 00243688 82 D5 00 2C */ lwz r22, 0x2c(r21) +/* 8024672C 0024368C 82 83 00 00 */ lwz r20, 0(r3) +/* 80246730 00243690 48 00 00 84 */ b lbl_802467B4 +lbl_80246734: +/* 80246734 00243694 80 76 00 04 */ lwz r3, 4(r22) +/* 80246738 00243698 28 03 00 00 */ cmplwi r3, 0 +/* 8024673C 0024369C 41 82 00 74 */ beq lbl_802467B0 +/* 80246740 002436A0 38 03 FF FF */ addi r0, r3, -1 +/* 80246744 002436A4 82 F6 00 00 */ lwz r23, 0(r22) +/* 80246748 002436A8 54 00 20 36 */ slwi r0, r0, 4 +/* 8024674C 002436AC 7E 85 A3 78 */ mr r5, r20 +/* 80246750 002436B0 7E E4 BB 78 */ mr r4, r23 +/* 80246754 002436B4 7F 19 02 14 */ add r24, r25, r0 +/* 80246758 002436B8 4B FF F2 D9 */ bl IsScanComplete__14CLogBookScreenF13EScanCategoryUiRC12CPlayerState +/* 8024675C 002436BC 80 18 00 04 */ lwz r0, 4(r24) +/* 80246760 002436C0 54 7A 06 3E */ clrlwi r26, r3, 0x18 +/* 80246764 002436C4 80 B8 00 08 */ lwz r5, 8(r24) +/* 80246768 002436C8 7C 00 28 00 */ cmpw r0, r5 +/* 8024676C 002436CC 41 80 00 1C */ blt lbl_80246788 +/* 80246770 002436D0 2C 05 00 00 */ cmpwi r5, 0 +/* 80246774 002436D4 7F 03 C3 78 */ mr r3, r24 +/* 80246778 002436D8 38 80 00 04 */ li r4, 4 +/* 8024677C 002436DC 41 82 00 08 */ beq lbl_80246784 +/* 80246780 002436E0 54 A4 08 3C */ slwi r4, r5, 1 +lbl_80246784: +/* 80246784 002436E4 48 00 1A 29 */ bl sub_802481ac +lbl_80246788: +/* 80246788 002436E8 80 18 00 04 */ lwz r0, 4(r24) +/* 8024678C 002436EC 80 78 00 0C */ lwz r3, 0xc(r24) +/* 80246790 002436F0 54 00 18 38 */ slwi r0, r0, 3 +/* 80246794 002436F4 7C 63 02 15 */ add. r3, r3, r0 +/* 80246798 002436F8 41 82 00 0C */ beq lbl_802467A4 +/* 8024679C 002436FC 92 E3 00 00 */ stw r23, 0(r3) +/* 802467A0 00243700 9B 43 00 04 */ stb r26, 4(r3) +lbl_802467A4: +/* 802467A4 00243704 80 78 00 04 */ lwz r3, 4(r24) +/* 802467A8 00243708 38 03 00 01 */ addi r0, r3, 1 +/* 802467AC 0024370C 90 18 00 04 */ stw r0, 4(r24) +lbl_802467B0: +/* 802467B0 00243710 3A D6 00 08 */ addi r22, r22, 8 +lbl_802467B4: +/* 802467B4 00243714 80 15 00 24 */ lwz r0, 0x24(r21) +/* 802467B8 00243718 80 75 00 2C */ lwz r3, 0x2c(r21) +/* 802467BC 0024371C 54 00 18 38 */ slwi r0, r0, 3 +/* 802467C0 00243720 7C 03 02 14 */ add r0, r3, r0 +/* 802467C4 00243724 7C 16 00 40 */ cmplw r22, r0 +/* 802467C8 00243728 40 82 FF 6C */ bne lbl_80246734 +/* 802467CC 0024372C 88 0D A5 48 */ lbz r0, lbl_805A9108@sda21(r13) +/* 802467D0 00243730 38 61 00 1C */ addi r3, r1, 0x1c +/* 802467D4 00243734 38 81 00 14 */ addi r4, r1, 0x14 +/* 802467D8 00243738 38 A1 00 08 */ addi r5, r1, 8 +/* 802467DC 0024373C 98 01 00 08 */ stb r0, 8(r1) +/* 802467E0 00243740 80 19 00 44 */ lwz r0, 0x44(r25) +/* 802467E4 00243744 80 D9 00 4C */ lwz r6, 0x4c(r25) +/* 802467E8 00243748 54 00 18 38 */ slwi r0, r0, 3 +/* 802467EC 0024374C 7C C6 02 14 */ add r6, r6, r0 +/* 802467F0 00243750 90 C1 00 14 */ stw r6, 0x14(r1) +/* 802467F4 00243754 80 19 00 4C */ lwz r0, 0x4c(r25) +/* 802467F8 00243758 90 C1 00 10 */ stw r6, 0x10(r1) +/* 802467FC 0024375C 90 01 00 18 */ stw r0, 0x18(r1) +/* 80246800 00243760 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80246804 00243764 48 00 17 D9 */ bl sub_80247fdc +/* 80246808 00243768 3C 60 53 43 */ lis r3, 0x5343414E@ha +/* 8024680C 0024376C 3B 41 00 58 */ addi r26, r1, 0x58 +/* 80246810 00243770 3A A1 00 4C */ addi r21, r1, 0x4c +/* 80246814 00243774 3B 7F 02 04 */ addi r27, r31, 0x204 +/* 80246818 00243778 3B C3 41 4E */ addi r30, r3, 0x5343414E@l +/* 8024681C 0024377C 3B 00 00 00 */ li r24, 0 +/* 80246820 00243780 48 00 02 00 */ b lbl_80246A20 +lbl_80246824: +/* 80246824 00243784 80 99 00 04 */ lwz r4, 4(r25) +/* 80246828 00243788 38 6D 96 F4 */ addi r3, r13, lbl_805A82B4@sda21 +/* 8024682C 0024378C 80 0D 96 F4 */ lwz r0, lbl_805A82B4@sda21(r13) +/* 80246830 00243790 90 81 00 0C */ stw r4, 0xc(r1) +/* 80246834 00243794 7C 04 00 00 */ cmpw r4, r0 +/* 80246838 00243798 40 80 00 08 */ bge lbl_80246840 +/* 8024683C 0024379C 38 61 00 0C */ addi r3, r1, 0xc +lbl_80246840: +/* 80246840 002437A0 82 E3 00 00 */ lwz r23, 0(r3) +/* 80246844 002437A4 7F 63 DB 78 */ mr r3, r27 +/* 80246848 002437A8 7E E4 BB 78 */ mr r4, r23 +/* 8024684C 002437AC 48 00 1A 55 */ bl sub_802482a0 +/* 80246850 002437B0 3B A0 00 00 */ li r29, 0 +/* 80246854 002437B4 3A C0 00 00 */ li r22, 0 +/* 80246858 002437B8 7F BC EB 78 */ mr r28, r29 +/* 8024685C 002437BC 48 00 01 B0 */ b lbl_80246A0C +lbl_80246860: +/* 80246860 002437C0 80 D9 00 0C */ lwz r6, 0xc(r25) +/* 80246864 002437C4 38 61 00 20 */ addi r3, r1, 0x20 +/* 80246868 002437C8 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8024686C 002437CC 38 A1 00 28 */ addi r5, r1, 0x28 +/* 80246870 002437D0 7C 06 E8 2E */ lwzx r0, r6, r29 +/* 80246874 002437D4 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80246878 002437D8 90 01 00 2C */ stw r0, 0x2c(r1) +/* 8024687C 002437DC 81 84 00 00 */ lwz r12, 0(r4) +/* 80246880 002437E0 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80246884 002437E4 7D 89 03 A6 */ mtctr r12 +/* 80246888 002437E8 4E 80 04 21 */ bctrl +/* 8024688C 002437EC 38 61 00 40 */ addi r3, r1, 0x40 +/* 80246890 002437F0 38 81 00 20 */ addi r4, r1, 0x20 +/* 80246894 002437F4 48 0F A6 15 */ bl __ct__6CTokenFRC6CToken +/* 80246898 002437F8 38 00 00 00 */ li r0, 0 +/* 8024689C 002437FC 7E A3 AB 78 */ mr r3, r21 +/* 802468A0 00243800 90 01 00 48 */ stw r0, 0x48(r1) +/* 802468A4 00243804 38 81 00 40 */ addi r4, r1, 0x40 +/* 802468A8 00243808 98 01 00 3C */ stb r0, 0x3c(r1) +/* 802468AC 0024380C 48 0F A5 FD */ bl __ct__6CTokenFRC6CToken +/* 802468B0 00243810 88 01 00 3C */ lbz r0, 0x3c(r1) +/* 802468B4 00243814 80 61 00 48 */ lwz r3, 0x48(r1) +/* 802468B8 00243818 28 00 00 00 */ cmplwi r0, 0 +/* 802468BC 0024381C 98 01 00 64 */ stb r0, 0x64(r1) +/* 802468C0 00243820 90 75 00 08 */ stw r3, 8(r21) +/* 802468C4 00243824 41 82 00 20 */ beq lbl_802468E4 +/* 802468C8 00243828 36 95 00 0C */ addic. r20, r21, 0xc +/* 802468CC 0024382C 38 81 00 30 */ addi r4, r1, 0x30 +/* 802468D0 00243830 41 82 00 14 */ beq lbl_802468E4 +/* 802468D4 00243834 7E 83 A3 78 */ mr r3, r20 +/* 802468D8 00243838 48 0F A5 D1 */ bl __ct__6CTokenFRC6CToken +/* 802468DC 0024383C 80 01 00 38 */ lwz r0, 0x38(r1) +/* 802468E0 00243840 90 14 00 08 */ stw r0, 8(r20) +lbl_802468E4: +/* 802468E4 00243844 80 1B 00 04 */ lwz r0, 4(r27) +/* 802468E8 00243848 80 BB 00 08 */ lwz r5, 8(r27) +/* 802468EC 0024384C 7C 00 28 00 */ cmpw r0, r5 +/* 802468F0 00243850 41 80 00 1C */ blt lbl_8024690C +/* 802468F4 00243854 2C 05 00 00 */ cmpwi r5, 0 +/* 802468F8 00243858 7F 63 DB 78 */ mr r3, r27 +/* 802468FC 0024385C 38 80 00 04 */ li r4, 4 +/* 80246900 00243860 41 82 00 08 */ beq lbl_80246908 +/* 80246904 00243864 54 A4 08 3C */ slwi r4, r5, 1 +lbl_80246908: +/* 80246908 00243868 48 00 19 99 */ bl sub_802482a0 +lbl_8024690C: +/* 8024690C 0024386C 80 1B 00 04 */ lwz r0, 4(r27) +/* 80246910 00243870 80 7B 00 0C */ lwz r3, 0xc(r27) +/* 80246914 00243874 1C 00 00 1C */ mulli r0, r0, 0x1c +/* 80246918 00243878 7E 83 02 15 */ add. r20, r3, r0 +/* 8024691C 0024387C 41 82 00 48 */ beq lbl_80246964 +/* 80246920 00243880 7E 83 A3 78 */ mr r3, r20 +/* 80246924 00243884 38 81 00 4C */ addi r4, r1, 0x4c +/* 80246928 00243888 48 0F A5 81 */ bl __ct__6CTokenFRC6CToken +/* 8024692C 0024388C 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80246930 00243890 90 14 00 08 */ stw r0, 8(r20) +/* 80246934 00243894 88 01 00 64 */ lbz r0, 0x64(r1) +/* 80246938 00243898 98 14 00 18 */ stb r0, 0x18(r20) +/* 8024693C 0024389C 88 01 00 64 */ lbz r0, 0x64(r1) +/* 80246940 002438A0 28 00 00 00 */ cmplwi r0, 0 +/* 80246944 002438A4 41 82 00 20 */ beq lbl_80246964 +/* 80246948 002438A8 36 94 00 0C */ addic. r20, r20, 0xc +/* 8024694C 002438AC 41 82 00 18 */ beq lbl_80246964 +/* 80246950 002438B0 7E 83 A3 78 */ mr r3, r20 +/* 80246954 002438B4 7F 44 D3 78 */ mr r4, r26 +/* 80246958 002438B8 48 0F A5 51 */ bl __ct__6CTokenFRC6CToken +/* 8024695C 002438BC 80 1A 00 08 */ lwz r0, 8(r26) +/* 80246960 002438C0 90 14 00 08 */ stw r0, 8(r20) +lbl_80246964: +/* 80246964 002438C4 80 7B 00 04 */ lwz r3, 4(r27) +/* 80246968 002438C8 28 1A 00 00 */ cmplwi r26, 0 +/* 8024696C 002438CC 38 03 00 01 */ addi r0, r3, 1 +/* 80246970 002438D0 90 1B 00 04 */ stw r0, 4(r27) +/* 80246974 002438D4 41 82 00 30 */ beq lbl_802469A4 +/* 80246978 002438D8 88 01 00 64 */ lbz r0, 0x64(r1) +/* 8024697C 002438DC 28 00 00 00 */ cmplwi r0, 0 +/* 80246980 002438E0 41 82 00 1C */ beq lbl_8024699C +/* 80246984 002438E4 28 1A 00 00 */ cmplwi r26, 0 +/* 80246988 002438E8 41 82 00 14 */ beq lbl_8024699C +/* 8024698C 002438EC 41 82 00 10 */ beq lbl_8024699C +/* 80246990 002438F0 7F 43 D3 78 */ mr r3, r26 +/* 80246994 002438F4 38 80 00 00 */ li r4, 0 +/* 80246998 002438F8 48 0F A4 A9 */ bl __dt__6CTokenFv +lbl_8024699C: +/* 8024699C 002438FC 38 00 00 00 */ li r0, 0 +/* 802469A0 00243900 98 01 00 64 */ stb r0, 0x64(r1) +lbl_802469A4: +/* 802469A4 00243904 38 61 00 4C */ addi r3, r1, 0x4c +/* 802469A8 00243908 38 80 00 00 */ li r4, 0 +/* 802469AC 0024390C 48 0F A4 95 */ bl __dt__6CTokenFv +/* 802469B0 00243910 88 01 00 3C */ lbz r0, 0x3c(r1) +/* 802469B4 00243914 28 00 00 00 */ cmplwi r0, 0 +/* 802469B8 00243918 41 82 00 1C */ beq lbl_802469D4 +/* 802469BC 0024391C 34 61 00 30 */ addic. r3, r1, 0x30 +/* 802469C0 00243920 41 82 00 14 */ beq lbl_802469D4 +/* 802469C4 00243924 28 03 00 00 */ cmplwi r3, 0 +/* 802469C8 00243928 41 82 00 0C */ beq lbl_802469D4 +/* 802469CC 0024392C 38 80 00 00 */ li r4, 0 +/* 802469D0 00243930 48 0F A4 71 */ bl __dt__6CTokenFv +lbl_802469D4: +/* 802469D4 00243934 38 00 00 00 */ li r0, 0 +/* 802469D8 00243938 38 61 00 40 */ addi r3, r1, 0x40 +/* 802469DC 0024393C 98 01 00 3C */ stb r0, 0x3c(r1) +/* 802469E0 00243940 38 80 00 00 */ li r4, 0 +/* 802469E4 00243944 48 0F A4 5D */ bl __dt__6CTokenFv +/* 802469E8 00243948 38 61 00 20 */ addi r3, r1, 0x20 +/* 802469EC 0024394C 38 80 FF FF */ li r4, -1 +/* 802469F0 00243950 48 0F A4 51 */ bl __dt__6CTokenFv +/* 802469F4 00243954 80 1B 00 0C */ lwz r0, 0xc(r27) +/* 802469F8 00243958 7C 60 E2 14 */ add r3, r0, r28 +/* 802469FC 0024395C 48 0F A3 89 */ bl Lock__6CTokenFv +/* 80246A00 00243960 3B BD 00 08 */ addi r29, r29, 8 +/* 80246A04 00243964 3B 9C 00 1C */ addi r28, r28, 0x1c +/* 80246A08 00243968 3A D6 00 01 */ addi r22, r22, 1 +lbl_80246A0C: +/* 80246A0C 0024396C 7C 16 B8 00 */ cmpw r22, r23 +/* 80246A10 00243970 41 80 FE 50 */ blt lbl_80246860 +/* 80246A14 00243974 3B 39 00 10 */ addi r25, r25, 0x10 +/* 80246A18 00243978 3B 7B 00 10 */ addi r27, r27, 0x10 +/* 80246A1C 0024397C 3B 18 00 01 */ addi r24, r24, 1 +lbl_80246A20: +/* 80246A20 00243980 80 1F 01 9C */ lwz r0, 0x19c(r31) +/* 80246A24 00243984 7C 18 00 00 */ cmpw r24, r0 +/* 80246A28 00243988 41 80 FD FC */ blt lbl_80246824 +/* 80246A2C 0024398C BA 81 00 70 */ lmw r20, 0x70(r1) +/* 80246A30 00243990 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 80246A34 00243994 7C 08 03 A6 */ mtlr r0 +/* 80246A38 00243998 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 80246A3C 0024399C 4E 80 00 20 */ blr + +.global RightTableSelectionChanged__14CLogBookScreenFii +RightTableSelectionChanged__14CLogBookScreenFii: +/* 80246A40 002439A0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80246A44 002439A4 7C 08 02 A6 */ mflr r0 +/* 80246A48 002439A8 90 01 00 14 */ stw r0, 0x14(r1) +/* 80246A4C 002439AC 4B FF F1 09 */ bl UpdateRightTitles__14CLogBookScreenFv +/* 80246A50 002439B0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80246A54 002439B4 7C 08 03 A6 */ mtlr r0 +/* 80246A58 002439B8 38 21 00 10 */ addi r1, r1, 0x10 +/* 80246A5C 002439BC 4E 80 00 20 */ blr + +.global GetRightTableCount__14CLogBookScreenCFv +GetRightTableCount__14CLogBookScreenCFv: +/* 80246A60 002439C0 80 63 01 F4 */ lwz r3, 0x1f4(r3) +/* 80246A64 002439C4 4E 80 00 20 */ blr + +.global ShouldRightTableAdvance__14CLogBookScreenFv +ShouldRightTableAdvance__14CLogBookScreenFv: +/* 80246A68 002439C8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80246A6C 002439CC 7C 08 02 A6 */ mflr r0 +/* 80246A70 002439D0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80246A74 002439D4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80246A78 002439D8 7C 7F 1B 78 */ mr r31, r3 +/* 80246A7C 002439DC 93 C1 00 08 */ stw r30, 8(r1) +/* 80246A80 002439E0 80 03 00 1C */ lwz r0, 0x1c(r3) +/* 80246A84 002439E4 80 63 01 FC */ lwz r3, 0x1fc(r3) +/* 80246A88 002439E8 1C 00 00 1C */ mulli r0, r0, 0x1c +/* 80246A8C 002439EC 7F C3 02 14 */ add r30, r3, r0 +/* 80246A90 002439F0 80 1E 00 08 */ lwz r0, 8(r30) +/* 80246A94 002439F4 28 00 00 00 */ cmplwi r0, 0 +/* 80246A98 002439F8 41 82 00 0C */ beq lbl_80246AA4 +/* 80246A9C 002439FC 38 60 00 01 */ li r3, 1 +/* 80246AA0 00243A00 48 00 00 3C */ b lbl_80246ADC +lbl_80246AA4: +/* 80246AA4 00243A04 88 1E 00 04 */ lbz r0, 4(r30) +/* 80246AA8 00243A08 28 00 00 00 */ cmplwi r0, 0 +/* 80246AAC 00243A0C 41 82 00 2C */ beq lbl_80246AD8 +/* 80246AB0 00243A10 80 7E 00 00 */ lwz r3, 0(r30) +/* 80246AB4 00243A14 80 03 00 10 */ lwz r0, 0x10(r3) +/* 80246AB8 00243A18 28 00 00 00 */ cmplwi r0, 0 +/* 80246ABC 00243A1C 41 82 00 1C */ beq lbl_80246AD8 +/* 80246AC0 00243A20 7F C3 F3 78 */ mr r3, r30 +/* 80246AC4 00243A24 48 0F A3 49 */ bl GetObj__6CTokenFv +/* 80246AC8 00243A28 80 03 00 04 */ lwz r0, 4(r3) +/* 80246ACC 00243A2C 38 60 00 01 */ li r3, 1 +/* 80246AD0 00243A30 90 1E 00 08 */ stw r0, 8(r30) +/* 80246AD4 00243A34 48 00 00 08 */ b lbl_80246ADC +lbl_80246AD8: +/* 80246AD8 00243A38 38 60 00 00 */ li r3, 0 +lbl_80246ADC: +/* 80246ADC 00243A3C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80246AE0 00243A40 40 82 00 0C */ bne lbl_80246AEC +/* 80246AE4 00243A44 38 60 00 00 */ li r3, 0 +/* 80246AE8 00243A48 48 00 00 BC */ b lbl_80246BA4 +lbl_80246AEC: +/* 80246AEC 00243A4C 88 1E 00 18 */ lbz r0, 0x18(r30) +/* 80246AF0 00243A50 28 00 00 00 */ cmplwi r0, 0 +/* 80246AF4 00243A54 40 82 00 0C */ bne lbl_80246B00 +/* 80246AF8 00243A58 38 60 00 00 */ li r3, 0 +/* 80246AFC 00243A5C 48 00 00 A8 */ b lbl_80246BA4 +lbl_80246B00: +/* 80246B00 00243A60 3B DE 00 0C */ addi r30, r30, 0xc +/* 80246B04 00243A64 80 1E 00 08 */ lwz r0, 8(r30) +/* 80246B08 00243A68 28 00 00 00 */ cmplwi r0, 0 +/* 80246B0C 00243A6C 41 82 00 0C */ beq lbl_80246B18 +/* 80246B10 00243A70 38 60 00 01 */ li r3, 1 +/* 80246B14 00243A74 48 00 00 3C */ b lbl_80246B50 +lbl_80246B18: +/* 80246B18 00243A78 88 1E 00 04 */ lbz r0, 4(r30) +/* 80246B1C 00243A7C 28 00 00 00 */ cmplwi r0, 0 +/* 80246B20 00243A80 41 82 00 2C */ beq lbl_80246B4C +/* 80246B24 00243A84 80 7E 00 00 */ lwz r3, 0(r30) +/* 80246B28 00243A88 80 03 00 10 */ lwz r0, 0x10(r3) +/* 80246B2C 00243A8C 28 00 00 00 */ cmplwi r0, 0 +/* 80246B30 00243A90 41 82 00 1C */ beq lbl_80246B4C +/* 80246B34 00243A94 7F C3 F3 78 */ mr r3, r30 +/* 80246B38 00243A98 48 0F A2 D5 */ bl GetObj__6CTokenFv +/* 80246B3C 00243A9C 80 03 00 04 */ lwz r0, 4(r3) +/* 80246B40 00243AA0 38 60 00 01 */ li r3, 1 +/* 80246B44 00243AA4 90 1E 00 08 */ stw r0, 8(r30) +/* 80246B48 00243AA8 48 00 00 08 */ b lbl_80246B50 +lbl_80246B4C: +/* 80246B4C 00243AAC 38 60 00 00 */ li r3, 0 +lbl_80246B50: +/* 80246B50 00243AB0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80246B54 00243AB4 40 82 00 0C */ bne lbl_80246B60 +/* 80246B58 00243AB8 38 60 00 00 */ li r3, 0 +/* 80246B5C 00243ABC 48 00 00 48 */ b lbl_80246BA4 +lbl_80246B60: +/* 80246B60 00243AC0 88 1F 01 98 */ lbz r0, 0x198(r31) +/* 80246B64 00243AC4 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80246B68 00243AC8 40 82 00 38 */ bne lbl_80246BA0 +/* 80246B6C 00243ACC 80 7F 00 70 */ lwz r3, 0x70(r31) +/* 80246B70 00243AD0 80 1F 00 1C */ lwz r0, 0x1c(r31) +/* 80246B74 00243AD4 80 83 00 C4 */ lwz r4, 0xc4(r3) +/* 80246B78 00243AD8 54 03 18 38 */ slwi r3, r0, 3 +/* 80246B7C 00243ADC 54 80 20 36 */ slwi r0, r4, 4 +/* 80246B80 00243AE0 7C 9F 02 14 */ add r4, r31, r0 +/* 80246B84 00243AE4 38 03 00 04 */ addi r0, r3, 4 +/* 80246B88 00243AE8 80 64 01 AC */ lwz r3, 0x1ac(r4) +/* 80246B8C 00243AEC 7C 03 00 AE */ lbzx r0, r3, r0 +/* 80246B90 00243AF0 28 00 00 00 */ cmplwi r0, 0 +/* 80246B94 00243AF4 41 82 00 0C */ beq lbl_80246BA0 +/* 80246B98 00243AF8 38 60 00 01 */ li r3, 1 +/* 80246B9C 00243AFC 48 00 00 08 */ b lbl_80246BA4 +lbl_80246BA0: +/* 80246BA0 00243B00 38 60 00 00 */ li r3, 0 +lbl_80246BA4: +/* 80246BA4 00243B04 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80246BA8 00243B08 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80246BAC 00243B0C 83 C1 00 08 */ lwz r30, 8(r1) +/* 80246BB0 00243B10 7C 08 03 A6 */ mtlr r0 +/* 80246BB4 00243B14 38 21 00 10 */ addi r1, r1, 0x10 +/* 80246BB8 00243B18 4E 80 00 20 */ blr + +.global ShouldLeftTableAdvance__14CLogBookScreenFv +ShouldLeftTableAdvance__14CLogBookScreenFv: +/* 80246BBC 00243B1C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80246BC0 00243B20 7C 08 02 A6 */ mflr r0 +/* 80246BC4 00243B24 90 01 00 14 */ stw r0, 0x14(r1) +/* 80246BC8 00243B28 88 03 02 60 */ lbz r0, 0x260(r3) +/* 80246BCC 00243B2C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80246BD0 00243B30 41 82 00 10 */ beq lbl_80246BE0 +/* 80246BD4 00243B34 80 03 01 F4 */ lwz r0, 0x1f4(r3) +/* 80246BD8 00243B38 2C 00 00 00 */ cmpwi r0, 0 +/* 80246BDC 00243B3C 40 82 00 0C */ bne lbl_80246BE8 +lbl_80246BE0: +/* 80246BE0 00243B40 38 60 00 00 */ li r3, 0 +/* 80246BE4 00243B44 48 00 00 14 */ b lbl_80246BF8 +lbl_80246BE8: +/* 80246BE8 00243B48 80 83 00 70 */ lwz r4, 0x70(r3) +/* 80246BEC 00243B4C 80 84 00 C4 */ lwz r4, 0xc4(r4) +/* 80246BF0 00243B50 38 84 00 01 */ addi r4, r4, 1 +/* 80246BF4 00243B54 4B FF EE A1 */ bl IsScanCategoryReady__14CLogBookScreenF13EScanCategory +lbl_80246BF8: +/* 80246BF8 00243B58 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80246BFC 00243B5C 7C 08 03 A6 */ mtlr r0 +/* 80246C00 00243B60 38 21 00 10 */ addi r1, r1, 0x10 +/* 80246C04 00243B64 4E 80 00 20 */ blr + +.global UpdateRightTable__14CLogBookScreenFv +UpdateRightTable__14CLogBookScreenFv: +/* 80246C08 00243B68 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 80246C0C 00243B6C 7C 08 02 A6 */ mflr r0 +/* 80246C10 00243B70 90 01 00 84 */ stw r0, 0x84(r1) +/* 80246C14 00243B74 BF 21 00 64 */ stmw r25, 0x64(r1) +/* 80246C18 00243B78 7C 7B 1B 78 */ mr r27, r3 +/* 80246C1C 00243B7C 4B E2 A1 B1 */ bl UpdateRightTable__16CPauseScreenBaseFv +/* 80246C20 00243B80 80 BB 00 70 */ lwz r5, 0x70(r27) +/* 80246C24 00243B84 38 00 00 00 */ li r0, 0 +/* 80246C28 00243B88 38 7B 01 F0 */ addi r3, r27, 0x1f0 +/* 80246C2C 00243B8C 38 81 00 28 */ addi r4, r1, 0x28 +/* 80246C30 00243B90 80 A5 00 C4 */ lwz r5, 0xc4(r5) +/* 80246C34 00243B94 54 A5 20 36 */ slwi r5, r5, 4 +/* 80246C38 00243B98 7F DB 2A 14 */ add r30, r27, r5 +/* 80246C3C 00243B9C 83 3E 01 A4 */ lwz r25, 0x1a4(r30) +/* 80246C40 00243BA0 90 01 00 2C */ stw r0, 0x2c(r1) +/* 80246C44 00243BA4 90 01 00 30 */ stw r0, 0x30(r1) +/* 80246C48 00243BA8 90 01 00 34 */ stw r0, 0x34(r1) +/* 80246C4C 00243BAC 48 00 02 09 */ bl sub_80246e54 +/* 80246C50 00243BB0 38 61 00 28 */ addi r3, r1, 0x28 +/* 80246C54 00243BB4 38 80 FF FF */ li r4, -1 +/* 80246C58 00243BB8 48 00 03 F1 */ bl sub_80247048 +/* 80246C5C 00243BBC 7F 24 CB 78 */ mr r4, r25 +/* 80246C60 00243BC0 38 7B 01 F0 */ addi r3, r27, 0x1f0 +/* 80246C64 00243BC4 48 00 16 3D */ bl sub_802482a0 +/* 80246C68 00243BC8 3C 60 53 43 */ lis r3, 0x5343414E@ha +/* 80246C6C 00243BCC 83 BE 01 AC */ lwz r29, 0x1ac(r30) +/* 80246C70 00243BD0 3B 41 00 44 */ addi r26, r1, 0x44 +/* 80246C74 00243BD4 3B 81 00 50 */ addi r28, r1, 0x50 +/* 80246C78 00243BD8 3B E3 41 4E */ addi r31, r3, 0x5343414E@l +/* 80246C7C 00243BDC 48 00 01 9C */ b lbl_80246E18 +lbl_80246C80: +/* 80246C80 00243BE0 80 1D 00 00 */ lwz r0, 0(r29) +/* 80246C84 00243BE4 38 61 00 08 */ addi r3, r1, 8 +/* 80246C88 00243BE8 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80246C8C 00243BEC 38 A1 00 10 */ addi r5, r1, 0x10 +/* 80246C90 00243BF0 93 E1 00 10 */ stw r31, 0x10(r1) +/* 80246C94 00243BF4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80246C98 00243BF8 81 84 00 00 */ lwz r12, 0(r4) +/* 80246C9C 00243BFC 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80246CA0 00243C00 7D 89 03 A6 */ mtctr r12 +/* 80246CA4 00243C04 4E 80 04 21 */ bctrl +/* 80246CA8 00243C08 38 61 00 38 */ addi r3, r1, 0x38 +/* 80246CAC 00243C0C 38 81 00 08 */ addi r4, r1, 8 +/* 80246CB0 00243C10 48 0F A1 F9 */ bl __ct__6CTokenFRC6CToken +/* 80246CB4 00243C14 38 00 00 00 */ li r0, 0 +/* 80246CB8 00243C18 38 61 00 08 */ addi r3, r1, 8 +/* 80246CBC 00243C1C 90 01 00 40 */ stw r0, 0x40(r1) +/* 80246CC0 00243C20 38 80 FF FF */ li r4, -1 +/* 80246CC4 00243C24 48 0F A1 7D */ bl __dt__6CTokenFv +/* 80246CC8 00243C28 38 00 00 00 */ li r0, 0 +/* 80246CCC 00243C2C 7F 43 D3 78 */ mr r3, r26 +/* 80246CD0 00243C30 98 01 00 24 */ stb r0, 0x24(r1) +/* 80246CD4 00243C34 38 81 00 38 */ addi r4, r1, 0x38 +/* 80246CD8 00243C38 48 0F A1 D1 */ bl __ct__6CTokenFRC6CToken +/* 80246CDC 00243C3C 88 01 00 24 */ lbz r0, 0x24(r1) +/* 80246CE0 00243C40 80 61 00 40 */ lwz r3, 0x40(r1) +/* 80246CE4 00243C44 28 00 00 00 */ cmplwi r0, 0 +/* 80246CE8 00243C48 98 01 00 5C */ stb r0, 0x5c(r1) +/* 80246CEC 00243C4C 90 7A 00 08 */ stw r3, 8(r26) +/* 80246CF0 00243C50 41 82 00 20 */ beq lbl_80246D10 +/* 80246CF4 00243C54 37 3A 00 0C */ addic. r25, r26, 0xc +/* 80246CF8 00243C58 38 81 00 18 */ addi r4, r1, 0x18 +/* 80246CFC 00243C5C 41 82 00 14 */ beq lbl_80246D10 +/* 80246D00 00243C60 7F 23 CB 78 */ mr r3, r25 +/* 80246D04 00243C64 48 0F A1 A5 */ bl __ct__6CTokenFRC6CToken +/* 80246D08 00243C68 80 01 00 20 */ lwz r0, 0x20(r1) +/* 80246D0C 00243C6C 90 19 00 08 */ stw r0, 8(r25) +lbl_80246D10: +/* 80246D10 00243C70 80 1B 01 F4 */ lwz r0, 0x1f4(r27) +/* 80246D14 00243C74 80 BB 01 F8 */ lwz r5, 0x1f8(r27) +/* 80246D18 00243C78 7C 00 28 00 */ cmpw r0, r5 +/* 80246D1C 00243C7C 41 80 00 1C */ blt lbl_80246D38 +/* 80246D20 00243C80 2C 05 00 00 */ cmpwi r5, 0 +/* 80246D24 00243C84 38 7B 01 F0 */ addi r3, r27, 0x1f0 +/* 80246D28 00243C88 38 80 00 04 */ li r4, 4 +/* 80246D2C 00243C8C 41 82 00 08 */ beq lbl_80246D34 +/* 80246D30 00243C90 54 A4 08 3C */ slwi r4, r5, 1 +lbl_80246D34: +/* 80246D34 00243C94 48 00 15 6D */ bl sub_802482a0 +lbl_80246D38: +/* 80246D38 00243C98 80 1B 01 F4 */ lwz r0, 0x1f4(r27) +/* 80246D3C 00243C9C 80 7B 01 FC */ lwz r3, 0x1fc(r27) +/* 80246D40 00243CA0 1C 00 00 1C */ mulli r0, r0, 0x1c +/* 80246D44 00243CA4 7F 23 02 15 */ add. r25, r3, r0 +/* 80246D48 00243CA8 41 82 00 48 */ beq lbl_80246D90 +/* 80246D4C 00243CAC 7F 23 CB 78 */ mr r3, r25 +/* 80246D50 00243CB0 38 81 00 44 */ addi r4, r1, 0x44 +/* 80246D54 00243CB4 48 0F A1 55 */ bl __ct__6CTokenFRC6CToken +/* 80246D58 00243CB8 80 01 00 4C */ lwz r0, 0x4c(r1) +/* 80246D5C 00243CBC 90 19 00 08 */ stw r0, 8(r25) +/* 80246D60 00243CC0 88 01 00 5C */ lbz r0, 0x5c(r1) +/* 80246D64 00243CC4 98 19 00 18 */ stb r0, 0x18(r25) +/* 80246D68 00243CC8 88 01 00 5C */ lbz r0, 0x5c(r1) +/* 80246D6C 00243CCC 28 00 00 00 */ cmplwi r0, 0 +/* 80246D70 00243CD0 41 82 00 20 */ beq lbl_80246D90 +/* 80246D74 00243CD4 37 39 00 0C */ addic. r25, r25, 0xc +/* 80246D78 00243CD8 41 82 00 18 */ beq lbl_80246D90 +/* 80246D7C 00243CDC 7F 23 CB 78 */ mr r3, r25 +/* 80246D80 00243CE0 7F 84 E3 78 */ mr r4, r28 +/* 80246D84 00243CE4 48 0F A1 25 */ bl __ct__6CTokenFRC6CToken +/* 80246D88 00243CE8 80 01 00 58 */ lwz r0, 0x58(r1) +/* 80246D8C 00243CEC 90 19 00 08 */ stw r0, 8(r25) +lbl_80246D90: +/* 80246D90 00243CF0 80 7B 01 F4 */ lwz r3, 0x1f4(r27) +/* 80246D94 00243CF4 28 1C 00 00 */ cmplwi r28, 0 +/* 80246D98 00243CF8 38 03 00 01 */ addi r0, r3, 1 +/* 80246D9C 00243CFC 90 1B 01 F4 */ stw r0, 0x1f4(r27) +/* 80246DA0 00243D00 41 82 00 30 */ beq lbl_80246DD0 +/* 80246DA4 00243D04 88 01 00 5C */ lbz r0, 0x5c(r1) +/* 80246DA8 00243D08 28 00 00 00 */ cmplwi r0, 0 +/* 80246DAC 00243D0C 41 82 00 1C */ beq lbl_80246DC8 +/* 80246DB0 00243D10 28 1C 00 00 */ cmplwi r28, 0 +/* 80246DB4 00243D14 41 82 00 14 */ beq lbl_80246DC8 +/* 80246DB8 00243D18 41 82 00 10 */ beq lbl_80246DC8 +/* 80246DBC 00243D1C 7F 83 E3 78 */ mr r3, r28 +/* 80246DC0 00243D20 38 80 00 00 */ li r4, 0 +/* 80246DC4 00243D24 48 0F A0 7D */ bl __dt__6CTokenFv +lbl_80246DC8: +/* 80246DC8 00243D28 38 00 00 00 */ li r0, 0 +/* 80246DCC 00243D2C 98 01 00 5C */ stb r0, 0x5c(r1) +lbl_80246DD0: +/* 80246DD0 00243D30 38 61 00 44 */ addi r3, r1, 0x44 +/* 80246DD4 00243D34 38 80 00 00 */ li r4, 0 +/* 80246DD8 00243D38 48 0F A0 69 */ bl __dt__6CTokenFv +/* 80246DDC 00243D3C 88 01 00 24 */ lbz r0, 0x24(r1) +/* 80246DE0 00243D40 28 00 00 00 */ cmplwi r0, 0 +/* 80246DE4 00243D44 41 82 00 1C */ beq lbl_80246E00 +/* 80246DE8 00243D48 34 61 00 18 */ addic. r3, r1, 0x18 +/* 80246DEC 00243D4C 41 82 00 14 */ beq lbl_80246E00 +/* 80246DF0 00243D50 28 03 00 00 */ cmplwi r3, 0 +/* 80246DF4 00243D54 41 82 00 0C */ beq lbl_80246E00 +/* 80246DF8 00243D58 38 80 00 00 */ li r4, 0 +/* 80246DFC 00243D5C 48 0F A0 45 */ bl __dt__6CTokenFv +lbl_80246E00: +/* 80246E00 00243D60 38 00 00 00 */ li r0, 0 +/* 80246E04 00243D64 38 61 00 38 */ addi r3, r1, 0x38 +/* 80246E08 00243D68 98 01 00 24 */ stb r0, 0x24(r1) +/* 80246E0C 00243D6C 38 80 00 00 */ li r4, 0 +/* 80246E10 00243D70 48 0F A0 31 */ bl __dt__6CTokenFv +/* 80246E14 00243D74 3B BD 00 08 */ addi r29, r29, 8 +lbl_80246E18: +/* 80246E18 00243D78 80 1E 01 A4 */ lwz r0, 0x1a4(r30) +/* 80246E1C 00243D7C 80 7E 01 AC */ lwz r3, 0x1ac(r30) +/* 80246E20 00243D80 54 00 18 38 */ slwi r0, r0, 3 +/* 80246E24 00243D84 7C 03 02 14 */ add r0, r3, r0 +/* 80246E28 00243D88 7C 1D 00 40 */ cmplw r29, r0 +/* 80246E2C 00243D8C 40 82 FE 54 */ bne lbl_80246C80 +/* 80246E30 00243D90 7F 63 DB 78 */ mr r3, r27 +/* 80246E34 00243D94 4B FF F3 E9 */ bl PumpArticleLoad__14CLogBookScreenFv +/* 80246E38 00243D98 7F 63 DB 78 */ mr r3, r27 +/* 80246E3C 00243D9C 4B FF ED 19 */ bl UpdateRightTitles__14CLogBookScreenFv +/* 80246E40 00243DA0 BB 21 00 64 */ lmw r25, 0x64(r1) +/* 80246E44 00243DA4 80 01 00 84 */ lwz r0, 0x84(r1) +/* 80246E48 00243DA8 7C 08 03 A6 */ mtlr r0 +/* 80246E4C 00243DAC 38 21 00 80 */ addi r1, r1, 0x80 +/* 80246E50 00243DB0 4E 80 00 20 */ blr + +.global sub_80246e54 +sub_80246e54: +/* 80246E54 00243DB4 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80246E58 00243DB8 7C 08 02 A6 */ mflr r0 +/* 80246E5C 00243DBC 90 01 00 34 */ stw r0, 0x34(r1) +/* 80246E60 00243DC0 BF 21 00 14 */ stmw r25, 0x14(r1) +/* 80246E64 00243DC4 7C 79 1B 78 */ mr r25, r3 +/* 80246E68 00243DC8 7C 9A 23 78 */ mr r26, r4 +/* 80246E6C 00243DCC 7C 19 D0 40 */ cmplw r25, r26 +/* 80246E70 00243DD0 40 82 00 08 */ bne lbl_80246E78 +/* 80246E74 00243DD4 48 00 00 C4 */ b lbl_80246F38 +lbl_80246E78: +/* 80246E78 00243DD8 48 00 00 D5 */ bl sub_80246f4c +/* 80246E7C 00243DDC 80 9A 00 04 */ lwz r4, 4(r26) +/* 80246E80 00243DE0 2C 04 00 00 */ cmpwi r4, 0 +/* 80246E84 00243DE4 40 82 00 28 */ bne lbl_80246EAC +/* 80246E88 00243DE8 80 79 00 0C */ lwz r3, 0xc(r25) +/* 80246E8C 00243DEC 28 03 00 00 */ cmplwi r3, 0 +/* 80246E90 00243DF0 41 82 00 08 */ beq lbl_80246E98 +/* 80246E94 00243DF4 48 0C EA 9D */ bl Free__7CMemoryFPCv +lbl_80246E98: +/* 80246E98 00243DF8 38 00 00 00 */ li r0, 0 +/* 80246E9C 00243DFC 90 19 00 04 */ stw r0, 4(r25) +/* 80246EA0 00243E00 90 19 00 08 */ stw r0, 8(r25) +/* 80246EA4 00243E04 90 19 00 0C */ stw r0, 0xc(r25) +/* 80246EA8 00243E08 48 00 00 8C */ b lbl_80246F34 +lbl_80246EAC: +/* 80246EAC 00243E0C 7F 23 CB 78 */ mr r3, r25 +/* 80246EB0 00243E10 48 00 13 F1 */ bl sub_802482a0 +/* 80246EB4 00243E14 80 1A 00 04 */ lwz r0, 4(r26) +/* 80246EB8 00243E18 83 7A 00 0C */ lwz r27, 0xc(r26) +/* 80246EBC 00243E1C 1C 00 00 1C */ mulli r0, r0, 0x1c +/* 80246EC0 00243E20 83 F9 00 0C */ lwz r31, 0xc(r25) +/* 80246EC4 00243E24 7F DB 02 14 */ add r30, r27, r0 +/* 80246EC8 00243E28 48 00 00 5C */ b lbl_80246F24 +lbl_80246ECC: +/* 80246ECC 00243E2C 28 1F 00 00 */ cmplwi r31, 0 +/* 80246ED0 00243E30 41 82 00 4C */ beq lbl_80246F1C +/* 80246ED4 00243E34 7F E3 FB 78 */ mr r3, r31 +/* 80246ED8 00243E38 7F 64 DB 78 */ mr r4, r27 +/* 80246EDC 00243E3C 48 0F 9F CD */ bl __ct__6CTokenFRC6CToken +/* 80246EE0 00243E40 80 1B 00 08 */ lwz r0, 8(r27) +/* 80246EE4 00243E44 90 1F 00 08 */ stw r0, 8(r31) +/* 80246EE8 00243E48 88 1B 00 18 */ lbz r0, 0x18(r27) +/* 80246EEC 00243E4C 98 1F 00 18 */ stb r0, 0x18(r31) +/* 80246EF0 00243E50 88 1B 00 18 */ lbz r0, 0x18(r27) +/* 80246EF4 00243E54 28 00 00 00 */ cmplwi r0, 0 +/* 80246EF8 00243E58 41 82 00 24 */ beq lbl_80246F1C +/* 80246EFC 00243E5C 37 BF 00 0C */ addic. r29, r31, 0xc +/* 80246F00 00243E60 3B 9B 00 0C */ addi r28, r27, 0xc +/* 80246F04 00243E64 41 82 00 18 */ beq lbl_80246F1C +/* 80246F08 00243E68 7F A3 EB 78 */ mr r3, r29 +/* 80246F0C 00243E6C 7F 84 E3 78 */ mr r4, r28 +/* 80246F10 00243E70 48 0F 9F 99 */ bl __ct__6CTokenFRC6CToken +/* 80246F14 00243E74 80 1C 00 08 */ lwz r0, 8(r28) +/* 80246F18 00243E78 90 1D 00 08 */ stw r0, 8(r29) +lbl_80246F1C: +/* 80246F1C 00243E7C 3B FF 00 1C */ addi r31, r31, 0x1c +/* 80246F20 00243E80 3B 7B 00 1C */ addi r27, r27, 0x1c +lbl_80246F24: +/* 80246F24 00243E84 7C 1B F0 40 */ cmplw r27, r30 +/* 80246F28 00243E88 40 82 FF A4 */ bne lbl_80246ECC +/* 80246F2C 00243E8C 80 1A 00 04 */ lwz r0, 4(r26) +/* 80246F30 00243E90 90 19 00 04 */ stw r0, 4(r25) +lbl_80246F34: +/* 80246F34 00243E94 7F 23 CB 78 */ mr r3, r25 +lbl_80246F38: +/* 80246F38 00243E98 BB 21 00 14 */ lmw r25, 0x14(r1) +/* 80246F3C 00243E9C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80246F40 00243EA0 7C 08 03 A6 */ mtlr r0 +/* 80246F44 00243EA4 38 21 00 30 */ addi r1, r1, 0x30 +/* 80246F48 00243EA8 4E 80 00 20 */ blr + +.global sub_80246f4c +sub_80246f4c: +/* 80246F4C 00243EAC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80246F50 00243EB0 7C 08 02 A6 */ mflr r0 +/* 80246F54 00243EB4 90 01 00 24 */ stw r0, 0x24(r1) +/* 80246F58 00243EB8 38 81 00 0C */ addi r4, r1, 0xc +/* 80246F5C 00243EBC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80246F60 00243EC0 7C 7F 1B 78 */ mr r31, r3 +/* 80246F64 00243EC4 38 61 00 14 */ addi r3, r1, 0x14 +/* 80246F68 00243EC8 80 1F 00 04 */ lwz r0, 4(r31) +/* 80246F6C 00243ECC 80 BF 00 0C */ lwz r5, 0xc(r31) +/* 80246F70 00243ED0 1C 00 00 1C */ mulli r0, r0, 0x1c +/* 80246F74 00243ED4 7C A5 02 14 */ add r5, r5, r0 +/* 80246F78 00243ED8 90 A1 00 0C */ stw r5, 0xc(r1) +/* 80246F7C 00243EDC 80 1F 00 0C */ lwz r0, 0xc(r31) +/* 80246F80 00243EE0 90 A1 00 08 */ stw r5, 8(r1) +/* 80246F84 00243EE4 90 01 00 10 */ stw r0, 0x10(r1) +/* 80246F88 00243EE8 90 01 00 14 */ stw r0, 0x14(r1) +/* 80246F8C 00243EEC 48 00 00 21 */ bl sub_80246fac +/* 80246F90 00243EF0 38 00 00 00 */ li r0, 0 +/* 80246F94 00243EF4 90 1F 00 04 */ stw r0, 4(r31) +/* 80246F98 00243EF8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80246F9C 00243EFC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80246FA0 00243F00 7C 08 03 A6 */ mtlr r0 +/* 80246FA4 00243F04 38 21 00 20 */ addi r1, r1, 0x20 +/* 80246FA8 00243F08 4E 80 00 20 */ blr + +.global sub_80246fac +sub_80246fac: +/* 80246FAC 00243F0C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80246FB0 00243F10 7C 08 02 A6 */ mflr r0 +/* 80246FB4 00243F14 90 01 00 14 */ stw r0, 0x14(r1) +/* 80246FB8 00243F18 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80246FBC 00243F1C 93 C1 00 08 */ stw r30, 8(r1) +/* 80246FC0 00243F20 7C 9E 23 78 */ mr r30, r4 +/* 80246FC4 00243F24 83 E3 00 00 */ lwz r31, 0(r3) +/* 80246FC8 00243F28 48 00 00 5C */ b lbl_80247024 +lbl_80246FCC: +/* 80246FCC 00243F2C 28 1F 00 00 */ cmplwi r31, 0 +/* 80246FD0 00243F30 41 82 00 50 */ beq lbl_80247020 +/* 80246FD4 00243F34 34 1F 00 0C */ addic. r0, r31, 0xc +/* 80246FD8 00243F38 41 82 00 30 */ beq lbl_80247008 +/* 80246FDC 00243F3C 88 1F 00 18 */ lbz r0, 0x18(r31) +/* 80246FE0 00243F40 28 00 00 00 */ cmplwi r0, 0 +/* 80246FE4 00243F44 41 82 00 1C */ beq lbl_80247000 +/* 80246FE8 00243F48 34 7F 00 0C */ addic. r3, r31, 0xc +/* 80246FEC 00243F4C 41 82 00 14 */ beq lbl_80247000 +/* 80246FF0 00243F50 28 03 00 00 */ cmplwi r3, 0 +/* 80246FF4 00243F54 41 82 00 0C */ beq lbl_80247000 +/* 80246FF8 00243F58 38 80 00 00 */ li r4, 0 +/* 80246FFC 00243F5C 48 0F 9E 45 */ bl __dt__6CTokenFv +lbl_80247000: +/* 80247000 00243F60 38 00 00 00 */ li r0, 0 +/* 80247004 00243F64 98 1F 00 18 */ stb r0, 0x18(r31) +lbl_80247008: +/* 80247008 00243F68 28 1F 00 00 */ cmplwi r31, 0 +/* 8024700C 00243F6C 41 82 00 14 */ beq lbl_80247020 +/* 80247010 00243F70 41 82 00 10 */ beq lbl_80247020 +/* 80247014 00243F74 7F E3 FB 78 */ mr r3, r31 +/* 80247018 00243F78 38 80 00 00 */ li r4, 0 +/* 8024701C 00243F7C 48 0F 9E 25 */ bl __dt__6CTokenFv +lbl_80247020: +/* 80247020 00243F80 3B FF 00 1C */ addi r31, r31, 0x1c +lbl_80247024: +/* 80247024 00243F84 80 1E 00 00 */ lwz r0, 0(r30) +/* 80247028 00243F88 7C 1F 00 40 */ cmplw r31, r0 +/* 8024702C 00243F8C 40 82 FF A0 */ bne lbl_80246FCC +/* 80247030 00243F90 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80247034 00243F94 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80247038 00243F98 83 C1 00 08 */ lwz r30, 8(r1) +/* 8024703C 00243F9C 7C 08 03 A6 */ mtlr r0 +/* 80247040 00243FA0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80247044 00243FA4 4E 80 00 20 */ blr + +.global sub_80247048 +sub_80247048: +/* 80247048 00243FA8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8024704C 00243FAC 7C 08 02 A6 */ mflr r0 +/* 80247050 00243FB0 90 01 00 24 */ stw r0, 0x24(r1) +/* 80247054 00243FB4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80247058 00243FB8 7C 9F 23 78 */ mr r31, r4 +/* 8024705C 00243FBC 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80247060 00243FC0 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80247064 00243FC4 41 82 00 54 */ beq lbl_802470B8 +/* 80247068 00243FC8 80 1E 00 04 */ lwz r0, 4(r30) +/* 8024706C 00243FCC 38 61 00 14 */ addi r3, r1, 0x14 +/* 80247070 00243FD0 80 BE 00 0C */ lwz r5, 0xc(r30) +/* 80247074 00243FD4 38 81 00 0C */ addi r4, r1, 0xc +/* 80247078 00243FD8 1C 00 00 1C */ mulli r0, r0, 0x1c +/* 8024707C 00243FDC 7C A5 02 14 */ add r5, r5, r0 +/* 80247080 00243FE0 90 A1 00 0C */ stw r5, 0xc(r1) +/* 80247084 00243FE4 80 1E 00 0C */ lwz r0, 0xc(r30) +/* 80247088 00243FE8 90 A1 00 08 */ stw r5, 8(r1) +/* 8024708C 00243FEC 90 01 00 10 */ stw r0, 0x10(r1) +/* 80247090 00243FF0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80247094 00243FF4 4B FF FF 19 */ bl sub_80246fac +/* 80247098 00243FF8 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 8024709C 00243FFC 28 03 00 00 */ cmplwi r3, 0 +/* 802470A0 00244000 41 82 00 08 */ beq lbl_802470A8 +/* 802470A4 00244004 48 0C E8 8D */ bl Free__7CMemoryFPCv +lbl_802470A8: +/* 802470A8 00244008 7F E0 07 35 */ extsh. r0, r31 +/* 802470AC 0024400C 40 81 00 0C */ ble lbl_802470B8 +/* 802470B0 00244010 7F C3 F3 78 */ mr r3, r30 +/* 802470B4 00244014 48 0C E8 7D */ bl Free__7CMemoryFPCv +lbl_802470B8: +/* 802470B8 00244018 80 01 00 24 */ lwz r0, 0x24(r1) +/* 802470BC 0024401C 7F C3 F3 78 */ mr r3, r30 +/* 802470C0 00244020 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 802470C4 00244024 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 802470C8 00244028 7C 08 03 A6 */ mtlr r0 +/* 802470CC 0024402C 38 21 00 20 */ addi r1, r1, 0x20 +/* 802470D0 00244030 4E 80 00 20 */ blr + +.global ChangedMode__14CLogBookScreenQ216CPauseScreenBase5EMode +ChangedMode__14CLogBookScreenQ216CPauseScreenBase5EMode: +/* 802470D4 00244034 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 802470D8 00244038 7C 08 02 A6 */ mflr r0 +/* 802470DC 0024403C 2C 04 00 02 */ cmpwi r4, 2 +/* 802470E0 00244040 90 01 00 14 */ stw r0, 0x14(r1) +/* 802470E4 00244044 93 E1 00 0C */ stw r31, 0xc(r1) +/* 802470E8 00244048 7C 7F 1B 78 */ mr r31, r3 +/* 802470EC 0024404C 40 82 00 40 */ bne lbl_8024712C +/* 802470F0 00244050 80 7F 00 74 */ lwz r3, 0x74(r31) +/* 802470F4 00244054 38 80 00 00 */ li r4, 0 +/* 802470F8 00244058 38 A0 00 01 */ li r5, 1 +/* 802470FC 0024405C 48 08 35 ED */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80247100 00244060 80 7F 00 88 */ lwz r3, 0x88(r31) +/* 80247104 00244064 38 80 00 00 */ li r4, 0 +/* 80247108 00244068 38 A0 00 01 */ li r5, 1 +/* 8024710C 0024406C 48 08 35 DD */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80247110 00244070 7F E3 FB 78 */ mr r3, r31 +/* 80247114 00244074 4B FF EC A5 */ bl UpdateBodyText__14CLogBookScreenFv +/* 80247118 00244078 80 7F 01 74 */ lwz r3, 0x174(r31) +/* 8024711C 0024407C 38 80 00 00 */ li r4, 0 +/* 80247120 00244080 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80247124 00244084 48 08 0C E5 */ bl SetPage__15CGuiTextSupportFi +/* 80247128 00244088 48 00 00 48 */ b lbl_80247170 +lbl_8024712C: +/* 8024712C 0024408C 80 1F 00 10 */ lwz r0, 0x10(r31) +/* 80247130 00244090 2C 00 00 02 */ cmpwi r0, 2 +/* 80247134 00244094 40 82 00 3C */ bne lbl_80247170 +/* 80247138 00244098 80 7F 00 74 */ lwz r3, 0x74(r31) +/* 8024713C 0024409C 38 80 00 01 */ li r4, 1 +/* 80247140 002440A0 38 A0 00 01 */ li r5, 1 +/* 80247144 002440A4 48 08 35 A5 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80247148 002440A8 80 7F 00 88 */ lwz r3, 0x88(r31) +/* 8024714C 002440AC 38 80 00 01 */ li r4, 1 +/* 80247150 002440B0 38 A0 00 01 */ li r5, 1 +/* 80247154 002440B4 48 08 35 95 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80247158 002440B8 88 1F 02 60 */ lbz r0, 0x260(r31) +/* 8024715C 002440BC 38 60 00 01 */ li r3, 1 +/* 80247160 002440C0 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 80247164 002440C4 7F E3 FB 78 */ mr r3, r31 +/* 80247168 002440C8 98 1F 02 60 */ stb r0, 0x260(r31) +/* 8024716C 002440CC 4B FF EE C5 */ bl UpdateBodyImagesAndText__14CLogBookScreenFv +lbl_80247170: +/* 80247170 002440D0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80247174 002440D4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80247178 002440D8 7C 08 03 A6 */ mtlr r0 +/* 8024717C 002440DC 38 21 00 10 */ addi r1, r1, 0x10 +/* 80247180 002440E0 4E 80 00 20 */ blr + +.global VActivate__14CLogBookScreenFv +VActivate__14CLogBookScreenFv: +/* 80247184 002440E4 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80247188 002440E8 7C 08 02 A6 */ mflr r0 +/* 8024718C 002440EC 90 01 00 54 */ stw r0, 0x54(r1) +/* 80247190 002440F0 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 80247194 002440F4 93 C1 00 48 */ stw r30, 0x48(r1) +/* 80247198 002440F8 3B C0 00 00 */ li r30, 0 +/* 8024719C 002440FC 93 A1 00 44 */ stw r29, 0x44(r1) +/* 802471A0 00244100 93 81 00 40 */ stw r28, 0x40(r1) +/* 802471A4 00244104 7C 7C 1B 78 */ mr r28, r3 +/* 802471A8 00244108 3B FC 00 AC */ addi r31, r28, 0xac +lbl_802471AC: +/* 802471AC 0024410C 83 BF 00 00 */ lwz r29, 0(r31) +/* 802471B0 00244110 7F 83 E3 78 */ mr r3, r28 +/* 802471B4 00244114 38 9E 00 01 */ addi r4, r30, 1 +/* 802471B8 00244118 4B FF E8 DD */ bl IsScanCategoryReady__14CLogBookScreenF13EScanCategory +/* 802471BC 0024411C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 802471C0 00244120 41 82 00 40 */ beq lbl_80247200 +/* 802471C4 00244124 80 7C 00 0C */ lwz r3, 0xc(r28) +/* 802471C8 00244128 38 9E 00 01 */ addi r4, r30, 1 +/* 802471CC 0024412C 48 10 F5 31 */ bl GetString__12CStringTableCFi +/* 802471D0 00244130 7C 64 1B 78 */ mr r4, r3 +/* 802471D4 00244134 38 61 00 30 */ addi r3, r1, 0x30 +/* 802471D8 00244138 38 C1 00 0C */ addi r6, r1, 0xc +/* 802471DC 0024413C 38 A0 FF FF */ li r5, -1 +/* 802471E0 00244140 48 0F 65 DD */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCwiRCQ24rstl17rmemory_allocator" +/* 802471E4 00244144 38 7D 00 D4 */ addi r3, r29, 0xd4 +/* 802471E8 00244148 38 81 00 30 */ addi r4, r1, 0x30 +/* 802471EC 0024414C 38 A0 00 00 */ li r5, 0 +/* 802471F0 00244150 48 08 26 95 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 802471F4 00244154 38 61 00 30 */ addi r3, r1, 0x30 +/* 802471F8 00244158 48 0F 5F 3D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 802471FC 0024415C 48 00 00 58 */ b lbl_80247254 +lbl_80247200: +/* 80247200 00244160 3C 80 80 3F */ lis r4, lbl_803E8BCC@ha +/* 80247204 00244164 38 61 00 20 */ addi r3, r1, 0x20 +/* 80247208 00244168 38 84 8B CC */ addi r4, r4, lbl_803E8BCC@l +/* 8024720C 0024416C 38 84 00 14 */ addi r4, r4, 0x14 +/* 80247210 00244170 4B DC E7 E1 */ bl wstring_l__4rstlFPCw +/* 80247214 00244174 38 7D 00 D4 */ addi r3, r29, 0xd4 +/* 80247218 00244178 38 81 00 20 */ addi r4, r1, 0x20 +/* 8024721C 0024417C 38 A0 00 00 */ li r5, 0 +/* 80247220 00244180 48 08 26 65 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80247224 00244184 38 61 00 20 */ addi r3, r1, 0x20 +/* 80247228 00244188 48 0F 5F 0D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8024722C 0024418C 80 7C 00 70 */ lwz r3, 0x70(r28) +/* 80247230 00244190 7F C4 F3 78 */ mr r4, r30 +/* 80247234 00244194 81 83 00 00 */ lwz r12, 0(r3) +/* 80247238 00244198 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 8024723C 0024419C 7D 89 03 A6 */ mtctr r12 +/* 80247240 002441A0 4E 80 04 21 */ bctrl +/* 80247244 002441A4 88 03 00 B6 */ lbz r0, 0xb6(r3) +/* 80247248 002441A8 38 80 00 00 */ li r4, 0 +/* 8024724C 002441AC 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 80247250 002441B0 98 03 00 B6 */ stb r0, 0xb6(r3) +lbl_80247254: +/* 80247254 002441B4 3B DE 00 01 */ addi r30, r30, 1 +/* 80247258 002441B8 3B FF 00 04 */ addi r31, r31, 4 +/* 8024725C 002441BC 2C 1E 00 05 */ cmpwi r30, 5 +/* 80247260 002441C0 41 80 FF 4C */ blt lbl_802471AC +/* 80247264 002441C4 80 7C 00 0C */ lwz r3, 0xc(r28) +/* 80247268 002441C8 38 80 00 00 */ li r4, 0 +/* 8024726C 002441CC 48 10 F4 91 */ bl GetString__12CStringTableCFi +/* 80247270 002441D0 7C 64 1B 78 */ mr r4, r3 +/* 80247274 002441D4 38 61 00 10 */ addi r3, r1, 0x10 +/* 80247278 002441D8 38 C1 00 08 */ addi r6, r1, 8 +/* 8024727C 002441DC 38 A0 FF FF */ li r5, -1 +/* 80247280 002441E0 48 0F 65 3D */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCwiRCQ24rstl17rmemory_allocator" +/* 80247284 002441E4 80 7C 01 78 */ lwz r3, 0x178(r28) +/* 80247288 002441E8 38 81 00 10 */ addi r4, r1, 0x10 +/* 8024728C 002441EC 38 A0 00 00 */ li r5, 0 +/* 80247290 002441F0 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80247294 002441F4 48 08 25 F1 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80247298 002441F8 38 61 00 10 */ addi r3, r1, 0x10 +/* 8024729C 002441FC 48 0F 5E 99 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 802472A0 00244200 3B A0 00 05 */ li r29, 5 +/* 802472A4 00244204 3B E0 00 00 */ li r31, 0 +/* 802472A8 00244208 48 00 00 2C */ b lbl_802472D4 +lbl_802472AC: +/* 802472AC 0024420C 80 7C 00 70 */ lwz r3, 0x70(r28) +/* 802472B0 00244210 7F A4 EB 78 */ mr r4, r29 +/* 802472B4 00244214 81 83 00 00 */ lwz r12, 0(r3) +/* 802472B8 00244218 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 802472BC 0024421C 7D 89 03 A6 */ mtctr r12 +/* 802472C0 00244220 4E 80 04 21 */ bctrl +/* 802472C4 00244224 88 03 00 B6 */ lbz r0, 0xb6(r3) +/* 802472C8 00244228 53 E0 26 F6 */ rlwimi r0, r31, 4, 0x1b, 0x1b +/* 802472CC 0024422C 3B BD 00 01 */ addi r29, r29, 1 +/* 802472D0 00244230 98 03 00 B6 */ stb r0, 0xb6(r3) +lbl_802472D4: +/* 802472D4 00244234 2C 1D 00 05 */ cmpwi r29, 5 +/* 802472D8 00244238 41 80 FF D4 */ blt lbl_802472AC +/* 802472DC 0024423C 80 01 00 54 */ lwz r0, 0x54(r1) +/* 802472E0 00244240 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 802472E4 00244244 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 802472E8 00244248 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 802472EC 0024424C 83 81 00 40 */ lwz r28, 0x40(r1) +/* 802472F0 00244250 7C 08 03 A6 */ mtlr r0 +/* 802472F4 00244254 38 21 00 50 */ addi r1, r1, 0x50 +/* 802472F8 00244258 4E 80 00 20 */ blr + +.global VReady__14CLogBookScreenCFv +VReady__14CLogBookScreenCFv: +/* 802472FC 0024425C 38 60 00 01 */ li r3, 1 +/* 80247300 00244260 4E 80 00 20 */ blr + +.global ProcessInput__14CLogBookScreenFRC11CFinalInput +ProcessInput__14CLogBookScreenFRC11CFinalInput: +/* 80247304 00244264 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80247308 00244268 7C 08 02 A6 */ mflr r0 +/* 8024730C 0024426C 90 01 00 34 */ stw r0, 0x34(r1) +/* 80247310 00244270 BF 61 00 1C */ stmw r27, 0x1c(r1) +/* 80247314 00244274 7C 7B 1B 78 */ mr r27, r3 +/* 80247318 00244278 38 60 00 00 */ li r3, 0 +/* 8024731C 0024427C 7C 9C 23 78 */ mr r28, r4 +/* 80247320 00244280 88 1B 02 60 */ lbz r0, 0x260(r27) +/* 80247324 00244284 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 80247328 00244288 98 1B 02 60 */ stb r0, 0x260(r27) +/* 8024732C 0024428C 80 1B 02 5C */ lwz r0, 0x25c(r27) +/* 80247330 00244290 2C 00 00 02 */ cmpwi r0, 2 +/* 80247334 00244294 41 82 02 64 */ beq lbl_80247598 +/* 80247338 00244298 80 1B 00 10 */ lwz r0, 0x10(r27) +/* 8024733C 0024429C 2C 00 00 02 */ cmpwi r0, 2 +/* 80247340 002442A0 40 82 02 14 */ bne lbl_80247554 +/* 80247344 002442A4 80 7B 01 74 */ lwz r3, 0x174(r27) +/* 80247348 002442A8 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 8024734C 002442AC 83 E3 03 04 */ lwz r31, 0x304(r3) +/* 80247350 002442B0 7F FE FB 78 */ mr r30, r31 +/* 80247354 002442B4 48 08 0B 05 */ bl GetTotalPageCount__15CGuiTextSupportFv +/* 80247358 002442B8 38 03 FF FF */ addi r0, r3, -1 +/* 8024735C 002442BC 2C 03 FF FF */ cmpwi r3, -1 +/* 80247360 002442C0 7C 1F 00 50 */ subf r0, r31, r0 +/* 80247364 002442C4 7C 00 00 34 */ cntlzw r0, r0 +/* 80247368 002442C8 54 1D D9 7E */ srwi r29, r0, 5 +/* 8024736C 002442CC 41 82 01 34 */ beq lbl_802474A0 +/* 80247370 002442D0 C0 02 CC 28 */ lfs f0, lbl_805AE948@sda21(r2) +/* 80247374 002442D4 38 80 00 00 */ li r4, 0 +/* 80247378 002442D8 C0 3C 00 0C */ lfs f1, 0xc(r28) +/* 8024737C 002442DC FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80247380 002442E0 40 80 00 0C */ bge lbl_8024738C +/* 80247384 002442E4 38 00 00 01 */ li r0, 1 +/* 80247388 002442E8 48 00 00 08 */ b lbl_80247390 +lbl_8024738C: +/* 8024738C 002442EC 7C 80 23 78 */ mr r0, r4 +lbl_80247390: +/* 80247390 002442F0 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 80247394 002442F4 41 82 00 14 */ beq lbl_802473A8 +/* 80247398 002442F8 88 1C 00 21 */ lbz r0, 0x21(r28) +/* 8024739C 002442FC 28 00 00 00 */ cmplwi r0, 0 +/* 802473A0 00244300 41 82 00 08 */ beq lbl_802473A8 +/* 802473A4 00244304 38 80 00 01 */ li r4, 1 +lbl_802473A8: +/* 802473A8 00244308 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 802473AC 0024430C 41 82 00 28 */ beq lbl_802473D4 +/* 802473B0 00244310 80 0D 96 F0 */ lwz r0, lbl_805A82B0@sda21(r13) +/* 802473B4 00244314 38 9F FF FF */ addi r4, r31, -1 +/* 802473B8 00244318 90 81 00 14 */ stw r4, 0x14(r1) +/* 802473BC 0024431C 38 6D 96 F0 */ addi r3, r13, lbl_805A82B0@sda21 +/* 802473C0 00244320 7C 00 20 00 */ cmpw r0, r4 +/* 802473C4 00244324 40 80 00 08 */ bge lbl_802473CC +/* 802473C8 00244328 38 61 00 14 */ addi r3, r1, 0x14 +lbl_802473CC: +/* 802473CC 0024432C 83 C3 00 00 */ lwz r30, 0(r3) +/* 802473D0 00244330 48 00 00 64 */ b lbl_80247434 +lbl_802473D4: +/* 802473D4 00244334 FC 00 00 50 */ fneg f0, f0 +/* 802473D8 00244338 38 80 00 00 */ li r4, 0 +/* 802473DC 0024433C FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 802473E0 00244340 40 81 00 14 */ ble lbl_802473F4 +/* 802473E4 00244344 88 1C 00 21 */ lbz r0, 0x21(r28) +/* 802473E8 00244348 28 00 00 00 */ cmplwi r0, 0 +/* 802473EC 0024434C 41 82 00 08 */ beq lbl_802473F4 +/* 802473F0 00244350 38 80 00 01 */ li r4, 1 +lbl_802473F4: +/* 802473F4 00244354 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 802473F8 00244358 40 82 00 18 */ bne lbl_80247410 +/* 802473FC 0024435C 88 1C 00 2D */ lbz r0, 0x2d(r28) +/* 80247400 00244360 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 80247404 00244364 41 82 00 30 */ beq lbl_80247434 +/* 80247408 00244368 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 8024740C 0024436C 40 82 00 28 */ bne lbl_80247434 +lbl_80247410: +/* 80247410 00244370 38 9F 00 01 */ addi r4, r31, 1 +/* 80247414 00244374 38 03 FF FF */ addi r0, r3, -1 +/* 80247418 00244378 7C 04 00 00 */ cmpw r4, r0 +/* 8024741C 0024437C 90 81 00 0C */ stw r4, 0xc(r1) +/* 80247420 00244380 38 61 00 10 */ addi r3, r1, 0x10 +/* 80247424 00244384 90 01 00 10 */ stw r0, 0x10(r1) +/* 80247428 00244388 40 80 00 08 */ bge lbl_80247430 +/* 8024742C 0024438C 38 61 00 0C */ addi r3, r1, 0xc +lbl_80247430: +/* 80247430 00244390 83 C3 00 00 */ lwz r30, 0(r3) +lbl_80247434: +/* 80247434 00244394 80 7B 01 74 */ lwz r3, 0x174(r27) +/* 80247438 00244398 7F C4 F3 78 */ mr r4, r30 +/* 8024743C 0024439C 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80247440 002443A0 48 08 09 C9 */ bl SetPage__15CGuiTextSupportFi +/* 80247444 002443A4 7C 1F F0 00 */ cmpw r31, r30 +/* 80247448 002443A8 41 82 00 28 */ beq lbl_80247470 +/* 8024744C 002443AC A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80247450 002443B0 38 61 00 08 */ addi r3, r1, 8 +/* 80247454 002443B4 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80247458 002443B8 38 80 05 A4 */ li r4, 0x5a4 +/* 8024745C 002443BC 38 A0 00 7F */ li r5, 0x7f +/* 80247460 002443C0 38 C0 00 40 */ li r6, 0x40 +/* 80247464 002443C4 38 E0 00 00 */ li r7, 0 +/* 80247468 002443C8 39 20 00 00 */ li r9, 0 +/* 8024746C 002443CC 48 0A 29 09 */ bl SfxStart__11CSfxManagerFUsssbsbi +lbl_80247470: +/* 80247470 002443D0 7C 7E 00 D0 */ neg r3, r30 +/* 80247474 002443D4 57 A0 06 3E */ clrlwi r0, r29, 0x18 +/* 80247478 002443D8 7C 64 F0 78 */ andc r4, r3, r30 +/* 8024747C 002443DC 88 7B 01 98 */ lbz r3, 0x198(r27) +/* 80247480 002443E0 50 83 27 38 */ rlwimi r3, r4, 4, 0x1c, 0x1c +/* 80247484 002443E4 7C 00 00 34 */ cntlzw r0, r0 +/* 80247488 002443E8 98 7B 01 98 */ stb r3, 0x198(r27) +/* 8024748C 002443EC 54 03 D9 7E */ srwi r3, r0, 5 +/* 80247490 002443F0 88 1B 01 98 */ lbz r0, 0x198(r27) +/* 80247494 002443F4 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 80247498 002443F8 98 1B 01 98 */ stb r0, 0x198(r27) +/* 8024749C 002443FC 48 00 00 24 */ b lbl_802474C0 +lbl_802474A0: +/* 802474A0 00244400 88 1B 01 98 */ lbz r0, 0x198(r27) +/* 802474A4 00244404 38 60 00 00 */ li r3, 0 +/* 802474A8 00244408 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 802474AC 0024440C 98 1B 01 98 */ stb r0, 0x198(r27) +/* 802474B0 00244410 54 03 F7 FE */ rlwinm r3, r0, 0x1e, 0x1f, 0x1f +/* 802474B4 00244414 88 1B 01 98 */ lbz r0, 0x198(r27) +/* 802474B8 00244418 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 802474BC 0024441C 98 1B 01 98 */ stb r0, 0x198(r27) +lbl_802474C0: +/* 802474C0 00244420 88 1B 02 60 */ lbz r0, 0x260(r27) +/* 802474C4 00244424 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 802474C8 00244428 40 82 00 44 */ bne lbl_8024750C +/* 802474CC 0024442C 88 7C 00 2D */ lbz r3, 0x2d(r28) +/* 802474D0 00244430 38 80 00 01 */ li r4, 1 +/* 802474D4 00244434 54 60 F7 FF */ rlwinm. r0, r3, 0x1e, 0x1f, 0x1f +/* 802474D8 00244438 40 82 00 28 */ bne lbl_80247500 +/* 802474DC 0024443C 54 60 EF FF */ rlwinm. r0, r3, 0x1d, 0x1f, 0x1f +/* 802474E0 00244440 38 60 00 00 */ li r3, 0 +/* 802474E4 00244444 41 82 00 10 */ beq lbl_802474F4 +/* 802474E8 00244448 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 802474EC 0024444C 41 82 00 08 */ beq lbl_802474F4 +/* 802474F0 00244450 7C 83 23 78 */ mr r3, r4 +lbl_802474F4: +/* 802474F4 00244454 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 802474F8 00244458 40 82 00 08 */ bne lbl_80247500 +/* 802474FC 0024445C 38 80 00 00 */ li r4, 0 +lbl_80247500: +/* 80247500 00244460 88 1B 02 60 */ lbz r0, 0x260(r27) +/* 80247504 00244464 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 80247508 00244468 98 1B 02 60 */ stb r0, 0x260(r27) +lbl_8024750C: +/* 8024750C 0024446C 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) +/* 80247510 00244470 88 03 02 75 */ lbz r0, 0x275(r3) +/* 80247514 00244474 28 00 00 00 */ cmplwi r0, 0 +/* 80247518 00244478 41 82 00 18 */ beq lbl_80247530 +/* 8024751C 0024447C 88 1B 02 60 */ lbz r0, 0x260(r27) +/* 80247520 00244480 54 00 DF FE */ rlwinm r0, r0, 0x1b, 0x1f, 0x1f +/* 80247524 00244484 7C 00 00 34 */ cntlzw r0, r0 +/* 80247528 00244488 54 03 D9 7E */ srwi r3, r0, 5 +/* 8024752C 0024448C 48 00 00 18 */ b lbl_80247544 +lbl_80247530: +/* 80247530 00244490 88 1C 00 2C */ lbz r0, 0x2c(r28) +/* 80247534 00244494 54 03 CF FE */ rlwinm r3, r0, 0x19, 0x1f, 0x1f +/* 80247538 00244498 7C 03 00 D0 */ neg r0, r3 +/* 8024753C 0024449C 7C 00 1B 78 */ or r0, r0, r3 +/* 80247540 002444A0 54 03 0F FE */ srwi r3, r0, 0x1f +lbl_80247544: +/* 80247544 002444A4 88 1B 02 60 */ lbz r0, 0x260(r27) +/* 80247548 002444A8 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 8024754C 002444AC 98 1B 02 60 */ stb r0, 0x260(r27) +/* 80247550 002444B0 48 00 00 20 */ b lbl_80247570 +lbl_80247554: +/* 80247554 002444B4 88 1B 01 98 */ lbz r0, 0x198(r27) +/* 80247558 002444B8 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 8024755C 002444BC 98 1B 01 98 */ stb r0, 0x198(r27) +/* 80247560 002444C0 54 03 F7 FE */ rlwinm r3, r0, 0x1e, 0x1f, 0x1f +/* 80247564 002444C4 88 1B 01 98 */ lbz r0, 0x198(r27) +/* 80247568 002444C8 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 8024756C 002444CC 98 1B 01 98 */ stb r0, 0x198(r27) +lbl_80247570: +/* 80247570 002444D0 80 1B 02 5C */ lwz r0, 0x25c(r27) +/* 80247574 002444D4 2C 00 00 01 */ cmpwi r0, 1 +/* 80247578 002444D8 40 82 00 14 */ bne lbl_8024758C +/* 8024757C 002444DC 88 1B 02 60 */ lbz r0, 0x260(r27) +/* 80247580 002444E0 38 60 00 00 */ li r3, 0 +/* 80247584 002444E4 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 80247588 002444E8 98 1B 02 60 */ stb r0, 0x260(r27) +lbl_8024758C: +/* 8024758C 002444EC 7F 63 DB 78 */ mr r3, r27 +/* 80247590 002444F0 7F 84 E3 78 */ mr r4, r28 +/* 80247594 002444F4 4B E2 9D C9 */ bl ProcessInput__16CPauseScreenBaseFRC11CFinalInput +lbl_80247598: +/* 80247598 002444F8 BB 61 00 1C */ lmw r27, 0x1c(r1) +/* 8024759C 002444FC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 802475A0 00244500 7C 08 03 A6 */ mtlr r0 +/* 802475A4 00244504 38 21 00 30 */ addi r1, r1, 0x30 +/* 802475A8 00244508 4E 80 00 20 */ blr + +.global Draw__14CLogBookScreenCFfff +Draw__14CLogBookScreenCFfff: +/* 802475AC 0024450C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 802475B0 00244510 7C 08 02 A6 */ mflr r0 +/* 802475B4 00244514 90 01 00 24 */ stw r0, 0x24(r1) +/* 802475B8 00244518 DB E1 00 10 */ stfd f31, 0x10(r1) +/* 802475BC 0024451C F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 +/* 802475C0 00244520 93 E1 00 0C */ stw r31, 0xc(r1) +/* 802475C4 00244524 93 C1 00 08 */ stw r30, 8(r1) +/* 802475C8 00244528 7C 7E 1B 78 */ mr r30, r3 +/* 802475CC 0024452C FF E0 08 90 */ fmr f31, f1 +/* 802475D0 00244530 4B E2 9D C1 */ bl Draw__16CPauseScreenBaseCFfff +/* 802475D4 00244534 80 1E 00 10 */ lwz r0, 0x10(r30) +/* 802475D8 00244538 3B E0 00 00 */ li r31, 0 +/* 802475DC 0024453C 2C 00 00 01 */ cmpwi r0, 1 +/* 802475E0 00244540 40 82 00 18 */ bne lbl_802475F8 +/* 802475E4 00244544 7F C3 F3 78 */ mr r3, r30 +/* 802475E8 00244548 48 00 00 B1 */ bl IsArtifactCategorySelected__14CLogBookScreenCFv +/* 802475EC 0024454C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 802475F0 00244550 41 82 00 08 */ beq lbl_802475F8 +/* 802475F4 00244554 3B E0 00 01 */ li r31, 1 +lbl_802475F8: +/* 802475F8 00244558 7F C3 F3 78 */ mr r3, r30 +/* 802475FC 0024455C 48 00 00 49 */ bl GetSelectedArtifactHeadScanIndex__14CLogBookScreenFv +/* 80247600 00244560 C0 22 B8 60 */ lfs f1, lbl_805AD580@sda21(r2) +/* 80247604 00244564 7C 66 1B 78 */ mr r6, r3 +/* 80247608 00244568 C0 1E 02 54 */ lfs f0, 0x254(r30) +/* 8024760C 0024456C 7F E5 FB 78 */ mr r5, r31 +/* 80247610 00244570 80 7E 02 58 */ lwz r3, 0x258(r30) +/* 80247614 00244574 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80247618 00244578 80 9E 00 04 */ lwz r4, 4(r30) +/* 8024761C 0024457C EC 3F 00 32 */ fmuls f1, f31, f0 +/* 80247620 00244580 48 05 53 49 */ bl Draw__13CArtifactDollFfRC13CStateManagerbUi +/* 80247624 00244584 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 +/* 80247628 00244588 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8024762C 0024458C CB E1 00 10 */ lfd f31, 0x10(r1) +/* 80247630 00244590 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80247634 00244594 83 C1 00 08 */ lwz r30, 8(r1) +/* 80247638 00244598 7C 08 03 A6 */ mtlr r0 +/* 8024763C 0024459C 38 21 00 20 */ addi r1, r1, 0x20 +/* 80247640 002445A0 4E 80 00 20 */ blr + +.global GetSelectedArtifactHeadScanIndex__14CLogBookScreenFv +GetSelectedArtifactHeadScanIndex__14CLogBookScreenFv: +/* 80247644 002445A4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80247648 002445A8 7C 08 02 A6 */ mflr r0 +/* 8024764C 002445AC 90 01 00 14 */ stw r0, 0x14(r1) +/* 80247650 002445B0 80 83 00 70 */ lwz r4, 0x70(r3) +/* 80247654 002445B4 80 A3 00 1C */ lwz r5, 0x1c(r3) +/* 80247658 002445B8 80 04 00 C4 */ lwz r0, 0xc4(r4) +/* 8024765C 002445BC 54 00 20 36 */ slwi r0, r0, 4 +/* 80247660 002445C0 7C 63 02 14 */ add r3, r3, r0 +/* 80247664 002445C4 80 03 01 A4 */ lwz r0, 0x1a4(r3) +/* 80247668 002445C8 7C 05 00 00 */ cmpw r5, r0 +/* 8024766C 002445CC 40 80 00 18 */ bge lbl_80247684 +/* 80247670 002445D0 80 63 01 AC */ lwz r3, 0x1ac(r3) +/* 80247674 002445D4 54 A0 18 38 */ slwi r0, r5, 3 +/* 80247678 002445D8 7C 63 00 2E */ lwzx r3, r3, r0 +/* 8024767C 002445DC 48 05 52 09 */ bl GetArtifactHeadScanIndex__13CArtifactDollFUi +/* 80247680 002445E0 48 00 00 08 */ b lbl_80247688 +lbl_80247684: +/* 80247684 002445E4 38 60 FF FF */ li r3, -1 +lbl_80247688: +/* 80247688 002445E8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024768C 002445EC 7C 08 03 A6 */ mtlr r0 +/* 80247690 002445F0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80247694 002445F4 4E 80 00 20 */ blr + +.global IsArtifactCategorySelected__14CLogBookScreenCFv +IsArtifactCategorySelected__14CLogBookScreenCFv: +/* 80247698 002445F8 80 63 00 70 */ lwz r3, 0x70(r3) +/* 8024769C 002445FC 80 63 00 C4 */ lwz r3, 0xc4(r3) +/* 802476A0 00244600 38 03 00 01 */ addi r0, r3, 1 +/* 802476A4 00244604 20 00 00 05 */ subfic r0, r0, 5 +/* 802476A8 00244608 7C 00 00 34 */ cntlzw r0, r0 +/* 802476AC 0024460C 54 03 D9 7E */ srwi r3, r0, 5 +/* 802476B0 00244610 4E 80 00 20 */ blr + +.global Touch__14CLogBookScreenFv +Touch__14CLogBookScreenFv: +/* 802476B4 00244614 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 802476B8 00244618 7C 08 02 A6 */ mflr r0 +/* 802476BC 0024461C 90 01 00 14 */ stw r0, 0x14(r1) +/* 802476C0 00244620 93 E1 00 0C */ stw r31, 0xc(r1) +/* 802476C4 00244624 7C 7F 1B 78 */ mr r31, r3 +/* 802476C8 00244628 4B E2 9D D5 */ bl Touch__16CPauseScreenBaseFv +/* 802476CC 0024462C 80 7F 02 58 */ lwz r3, 0x258(r31) +/* 802476D0 00244630 48 05 58 E1 */ bl Touch__13CArtifactDollFv +/* 802476D4 00244634 80 01 00 14 */ lwz r0, 0x14(r1) +/* 802476D8 00244638 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 802476DC 0024463C 7C 08 03 A6 */ mtlr r0 +/* 802476E0 00244640 38 21 00 10 */ addi r1, r1, 0x10 +/* 802476E4 00244644 4E 80 00 20 */ blr + +.global Update__14CLogBookScreenFfR9CRandom16R18CArchitectureQueue +Update__14CLogBookScreenFfR9CRandom16R18CArchitectureQueue: +/* 802476E8 00244648 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 802476EC 0024464C 7C 08 02 A6 */ mflr r0 +/* 802476F0 00244650 90 01 00 64 */ stw r0, 0x64(r1) +/* 802476F4 00244654 DB E1 00 50 */ stfd f31, 0x50(r1) +/* 802476F8 00244658 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 802476FC 0024465C DB C1 00 40 */ stfd f30, 0x40(r1) +/* 80247700 00244660 F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0 +/* 80247704 00244664 DB A1 00 30 */ stfd f29, 0x30(r1) +/* 80247708 00244668 F3 A1 00 38 */ psq_st f29, 56(r1), 0, qr0 +/* 8024770C 0024466C 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80247710 00244670 7C 7F 1B 78 */ mr r31, r3 +/* 80247714 00244674 FF E0 08 90 */ fmr f31, f1 +/* 80247718 00244678 4B E2 9D 89 */ bl Update__16CPauseScreenBaseFfR9CRandom16R18CArchitectureQueue +/* 8024771C 0024467C FC 20 F8 90 */ fmr f1, f31 +/* 80247720 00244680 80 7F 02 58 */ lwz r3, 0x258(r31) +/* 80247724 00244684 80 9F 00 04 */ lwz r4, 4(r31) +/* 80247728 00244688 48 05 57 CD */ bl Update__13CArtifactDollFfRC13CStateManager +/* 8024772C 0024468C 7F E3 FB 78 */ mr r3, r31 +/* 80247730 00244690 4B FF EA ED */ bl PumpArticleLoad__14CLogBookScreenFv +/* 80247734 00244694 80 1F 00 10 */ lwz r0, 0x10(r31) +/* 80247738 00244698 2C 00 00 02 */ cmpwi r0, 2 +/* 8024773C 0024469C 40 82 01 68 */ bne lbl_802478A4 +/* 80247740 002446A0 88 1F 02 60 */ lbz r0, 0x260(r31) +/* 80247744 002446A4 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80247748 002446A8 41 82 00 38 */ beq lbl_80247780 +/* 8024774C 002446AC C0 42 B8 70 */ lfs f2, lbl_805AD590@sda21(r2) +/* 80247750 002446B0 C0 3F 02 54 */ lfs f1, 0x254(r31) +/* 80247754 002446B4 C0 0D 96 E8 */ lfs f0, lbl_805A82A8@sda21(r13) +/* 80247758 002446B8 EC 22 0F FA */ fmadds f1, f2, f31, f1 +/* 8024775C 002446BC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80247760 002446C0 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 80247764 002446C4 40 80 00 0C */ bge lbl_80247770 +/* 80247768 002446C8 38 61 00 10 */ addi r3, r1, 0x10 +/* 8024776C 002446CC 48 00 00 08 */ b lbl_80247774 +lbl_80247770: +/* 80247770 002446D0 38 6D 96 E8 */ addi r3, r13, lbl_805A82A8@sda21 +lbl_80247774: +/* 80247774 002446D4 C0 03 00 00 */ lfs f0, 0(r3) +/* 80247778 002446D8 D0 1F 02 54 */ stfs f0, 0x254(r31) +/* 8024777C 002446DC 48 00 00 34 */ b lbl_802477B0 +lbl_80247780: +/* 80247780 002446E0 C0 42 B8 70 */ lfs f2, lbl_805AD590@sda21(r2) +/* 80247784 002446E4 C0 3F 02 54 */ lfs f1, 0x254(r31) +/* 80247788 002446E8 C0 0D 96 EC */ lfs f0, lbl_805A82AC@sda21(r13) +/* 8024778C 002446EC EC 22 0F FC */ fnmsubs f1, f2, f31, f1 +/* 80247790 002446F0 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80247794 002446F4 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 80247798 002446F8 40 80 00 0C */ bge lbl_802477A4 +/* 8024779C 002446FC 38 61 00 0C */ addi r3, r1, 0xc +/* 802477A0 00244700 48 00 00 08 */ b lbl_802477A8 +lbl_802477A4: +/* 802477A4 00244704 38 6D 96 EC */ addi r3, r13, lbl_805A82AC@sda21 +lbl_802477A8: +/* 802477A8 00244708 C0 03 00 00 */ lfs f0, 0(r3) +/* 802477AC 0024470C D0 1F 02 54 */ stfs f0, 0x254(r31) +lbl_802477B0: +/* 802477B0 00244710 C3 FF 02 54 */ lfs f31, 0x254(r31) +/* 802477B4 00244714 48 10 27 F9 */ bl White__6CColorFv +/* 802477B8 00244718 C0 02 B8 74 */ lfs f0, lbl_805AD594@sda21(r2) +/* 802477BC 0024471C EF C0 07 F2 */ fmuls f30, f0, f31 +/* 802477C0 00244720 F3 C1 A0 09 */ psq_st f30, 9(r1), 1, qr2 +/* 802477C4 00244724 38 81 00 18 */ addi r4, r1, 0x18 +/* 802477C8 00244728 80 63 00 00 */ lwz r3, 0(r3) +/* 802477CC 0024472C 88 01 00 09 */ lbz r0, 9(r1) +/* 802477D0 00244730 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 802477D4 00244734 90 01 00 18 */ stw r0, 0x18(r1) +/* 802477D8 00244738 80 7F 00 74 */ lwz r3, 0x74(r31) +/* 802477DC 0024473C 48 08 30 91 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 802477E0 00244740 80 7F 00 88 */ lwz r3, 0x88(r31) +/* 802477E4 00244744 38 81 00 18 */ addi r4, r1, 0x18 +/* 802477E8 00244748 48 08 30 85 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 802477EC 0024474C C0 22 B8 60 */ lfs f1, lbl_805AD580@sda21(r2) +/* 802477F0 00244750 C0 1F 02 54 */ lfs f0, 0x254(r31) +/* 802477F4 00244754 EF E1 00 28 */ fsubs f31, f1, f0 +/* 802477F8 00244758 48 10 27 B5 */ bl White__6CColorFv +/* 802477FC 0024475C C0 02 B8 74 */ lfs f0, lbl_805AD594@sda21(r2) +/* 80247800 00244760 EF A0 07 F2 */ fmuls f29, f0, f31 +/* 80247804 00244764 F3 A1 A0 08 */ psq_st f29, 8(r1), 1, qr2 +/* 80247808 00244768 38 81 00 14 */ addi r4, r1, 0x14 +/* 8024780C 0024476C 80 63 00 00 */ lwz r3, 0(r3) +/* 80247810 00244770 88 01 00 08 */ lbz r0, 8(r1) +/* 80247814 00244774 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 80247818 00244778 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024781C 0024477C 80 7F 00 70 */ lwz r3, 0x70(r31) +/* 80247820 00244780 48 08 30 4D */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80247824 00244784 80 7F 00 84 */ lwz r3, 0x84(r31) +/* 80247828 00244788 38 81 00 14 */ addi r4, r1, 0x14 +/* 8024782C 0024478C 48 08 30 41 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80247830 00244790 80 7F 01 7C */ lwz r3, 0x17c(r31) +/* 80247834 00244794 38 81 00 14 */ addi r4, r1, 0x14 +/* 80247838 00244798 48 08 30 35 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 8024783C 0024479C 80 7F 01 74 */ lwz r3, 0x174(r31) +/* 80247840 002447A0 38 81 00 18 */ addi r4, r1, 0x18 +/* 80247844 002447A4 48 08 30 29 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80247848 002447A8 C0 22 B8 60 */ lfs f1, lbl_805AD580@sda21(r2) +/* 8024784C 002447AC 38 9F 00 F4 */ addi r4, r31, 0xf4 +/* 80247850 002447B0 38 A0 00 00 */ li r5, 0 +/* 80247854 002447B4 48 00 00 1C */ b lbl_80247870 +lbl_80247858: +/* 80247858 002447B8 C0 1F 02 54 */ lfs f0, 0x254(r31) +/* 8024785C 002447BC 38 A5 00 01 */ addi r5, r5, 1 +/* 80247860 002447C0 80 64 00 00 */ lwz r3, 0(r4) +/* 80247864 002447C4 38 84 00 04 */ addi r4, r4, 4 +/* 80247868 002447C8 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8024786C 002447CC D0 03 01 4C */ stfs f0, 0x14c(r3) +lbl_80247870: +/* 80247870 002447D0 80 1F 00 F0 */ lwz r0, 0xf0(r31) +/* 80247874 002447D4 7C 05 00 00 */ cmpw r5, r0 +/* 80247878 002447D8 41 80 FF E0 */ blt lbl_80247858 +/* 8024787C 002447DC C0 22 B8 58 */ lfs f1, lbl_805AD578@sda21(r2) +/* 80247880 002447E0 C0 1F 02 54 */ lfs f0, 0x254(r31) +/* 80247884 002447E4 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 80247888 002447E8 40 82 00 1C */ bne lbl_802478A4 +/* 8024788C 002447EC 80 1F 02 5C */ lwz r0, 0x25c(r31) +/* 80247890 002447F0 2C 00 00 00 */ cmpwi r0, 0 +/* 80247894 002447F4 40 82 00 10 */ bne lbl_802478A4 +/* 80247898 002447F8 7F E3 FB 78 */ mr r3, r31 +/* 8024789C 002447FC 38 80 00 01 */ li r4, 1 +/* 802478A0 00244800 4B E2 95 75 */ bl ChangeMode__16CPauseScreenBaseFQ216CPauseScreenBase5EMode +lbl_802478A4: +/* 802478A4 00244804 80 1F 02 5C */ lwz r0, 0x25c(r31) +/* 802478A8 00244808 2C 00 00 01 */ cmpwi r0, 1 +/* 802478AC 0024480C 40 82 00 1C */ bne lbl_802478C8 +/* 802478B0 00244810 C0 22 B8 58 */ lfs f1, lbl_805AD578@sda21(r2) +/* 802478B4 00244814 C0 1F 02 54 */ lfs f0, 0x254(r31) +/* 802478B8 00244818 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 802478BC 0024481C 40 82 00 0C */ bne lbl_802478C8 +/* 802478C0 00244820 38 00 00 02 */ li r0, 2 +/* 802478C4 00244824 90 1F 02 5C */ stw r0, 0x25c(r31) +lbl_802478C8: +/* 802478C8 00244828 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 +/* 802478CC 0024482C CB E1 00 50 */ lfd f31, 0x50(r1) +/* 802478D0 00244830 E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0 +/* 802478D4 00244834 CB C1 00 40 */ lfd f30, 0x40(r1) +/* 802478D8 00244838 E3 A1 00 38 */ psq_l f29, 56(r1), 0, qr0 +/* 802478DC 0024483C CB A1 00 30 */ lfd f29, 0x30(r1) +/* 802478E0 00244840 80 01 00 64 */ lwz r0, 0x64(r1) +/* 802478E4 00244844 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 802478E8 00244848 7C 08 03 A6 */ mtlr r0 +/* 802478EC 0024484C 38 21 00 60 */ addi r1, r1, 0x60 +/* 802478F0 00244850 4E 80 00 20 */ blr + +.global __dt__14CLogBookScreenFv +__dt__14CLogBookScreenFv: +/* 802478F4 00244854 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 802478F8 00244858 7C 08 02 A6 */ mflr r0 +/* 802478FC 0024485C 90 01 00 24 */ stw r0, 0x24(r1) +/* 80247900 00244860 BF 61 00 0C */ stmw r27, 0xc(r1) +/* 80247904 00244864 7C 7B 1B 79 */ or. r27, r3, r3 +/* 80247908 00244868 7C 9C 23 78 */ mr r28, r4 +/* 8024790C 0024486C 41 82 00 B4 */ beq lbl_802479C0 +/* 80247910 00244870 3C 60 80 3F */ lis r3, lbl_803E8B78@ha +/* 80247914 00244874 38 03 8B 78 */ addi r0, r3, lbl_803E8B78@l +/* 80247918 00244878 90 1B 00 00 */ stw r0, 0(r27) +/* 8024791C 0024487C 80 7B 02 58 */ lwz r3, 0x258(r27) +/* 80247920 00244880 80 9B 00 04 */ lwz r4, 4(r27) +/* 80247924 00244884 48 05 55 A9 */ bl CompleteArtifactHeadScan__13CArtifactDollFRC13CStateManager +/* 80247928 00244888 3B FB 01 48 */ addi r31, r27, 0x148 +/* 8024792C 0024488C 3B C0 00 00 */ li r30, 0 +/* 80247930 00244890 48 00 00 24 */ b lbl_80247954 +lbl_80247934: +/* 80247934 00244894 83 BF 00 00 */ lwz r29, 0(r31) +/* 80247938 00244898 38 7D 00 04 */ addi r3, r29, 4 +/* 8024793C 0024489C 38 9D 00 74 */ addi r4, r29, 0x74 +/* 80247940 002448A0 48 0C B2 01 */ bl __as__12CTransform4fFRC12CTransform4f +/* 80247944 002448A4 7F A3 EB 78 */ mr r3, r29 +/* 80247948 002448A8 48 07 CE A1 */ bl RecalculateTransforms__10CGuiObjectFv +/* 8024794C 002448AC 3B FF 00 04 */ addi r31, r31, 4 +/* 80247950 002448B0 3B DE 00 01 */ addi r30, r30, 1 +lbl_80247954: +/* 80247954 002448B4 80 1B 01 44 */ lwz r0, 0x144(r27) +/* 80247958 002448B8 7C 1E 00 00 */ cmpw r30, r0 +/* 8024795C 002448BC 41 80 FF D8 */ blt lbl_80247934 +/* 80247960 002448C0 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) +/* 80247964 002448C4 4B F8 C0 6D */ bl CurrentWorldAssetId__10CGameStateCFv +/* 80247968 002448C8 4B DB CF 15 */ bl EnsureWorldPakReady__5CMainFUi +/* 8024796C 002448CC 34 1B 02 58 */ addic. r0, r27, 0x258 +/* 80247970 002448D0 41 82 00 10 */ beq lbl_80247980 +/* 80247974 002448D4 80 7B 02 58 */ lwz r3, 0x258(r27) +/* 80247978 002448D8 38 80 00 01 */ li r4, 1 +/* 8024797C 002448DC 48 05 59 99 */ bl __dt__13CArtifactDollFv +lbl_80247980: +/* 80247980 002448E0 38 7B 02 00 */ addi r3, r27, 0x200 +/* 80247984 002448E4 38 80 FF FF */ li r4, -1 +/* 80247988 002448E8 48 00 01 49 */ bl sub_80247ad0 +/* 8024798C 002448EC 38 7B 01 F0 */ addi r3, r27, 0x1f0 +/* 80247990 002448F0 38 80 FF FF */ li r4, -1 +/* 80247994 002448F4 4B FF F6 B5 */ bl sub_80247048 +/* 80247998 002448F8 38 7B 01 9C */ addi r3, r27, 0x19c +/* 8024799C 002448FC 38 80 FF FF */ li r4, -1 +/* 802479A0 00244900 48 00 00 39 */ bl sub_802479d8 +/* 802479A4 00244904 7F 63 DB 78 */ mr r3, r27 +/* 802479A8 00244908 38 80 00 00 */ li r4, 0 +/* 802479AC 0024490C 4B E2 AC 21 */ bl __dt__16CPauseScreenBaseFv +/* 802479B0 00244910 7F 80 07 35 */ extsh. r0, r28 +/* 802479B4 00244914 40 81 00 0C */ ble lbl_802479C0 +/* 802479B8 00244918 7F 63 DB 78 */ mr r3, r27 +/* 802479BC 0024491C 48 0C DF 75 */ bl Free__7CMemoryFPCv +lbl_802479C0: +/* 802479C0 00244920 7F 63 DB 78 */ mr r3, r27 +/* 802479C4 00244924 BB 61 00 0C */ lmw r27, 0xc(r1) +/* 802479C8 00244928 80 01 00 24 */ lwz r0, 0x24(r1) +/* 802479CC 0024492C 7C 08 03 A6 */ mtlr r0 +/* 802479D0 00244930 38 21 00 20 */ addi r1, r1, 0x20 +/* 802479D4 00244934 4E 80 00 20 */ blr + +.global sub_802479d8 +sub_802479d8: +/* 802479D8 00244938 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 802479DC 0024493C 7C 08 02 A6 */ mflr r0 +/* 802479E0 00244940 90 01 00 14 */ stw r0, 0x14(r1) +/* 802479E4 00244944 93 E1 00 0C */ stw r31, 0xc(r1) +/* 802479E8 00244948 7C 9F 23 78 */ mr r31, r4 +/* 802479EC 0024494C 93 C1 00 08 */ stw r30, 8(r1) +/* 802479F0 00244950 7C 7E 1B 79 */ or. r30, r3, r3 +/* 802479F4 00244954 41 82 00 18 */ beq lbl_80247A0C +/* 802479F8 00244958 48 00 00 31 */ bl sub_80247a28 +/* 802479FC 0024495C 7F E0 07 35 */ extsh. r0, r31 +/* 80247A00 00244960 40 81 00 0C */ ble lbl_80247A0C +/* 80247A04 00244964 7F C3 F3 78 */ mr r3, r30 +/* 80247A08 00244968 48 0C DF 29 */ bl Free__7CMemoryFPCv +lbl_80247A0C: +/* 80247A0C 0024496C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80247A10 00244970 7F C3 F3 78 */ mr r3, r30 +/* 80247A14 00244974 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80247A18 00244978 83 C1 00 08 */ lwz r30, 8(r1) +/* 80247A1C 0024497C 7C 08 03 A6 */ mtlr r0 +/* 80247A20 00244980 38 21 00 10 */ addi r1, r1, 0x10 +/* 80247A24 00244984 4E 80 00 20 */ blr + +.global sub_80247a28 +sub_80247a28: +/* 80247A28 00244988 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80247A2C 0024498C 7C 08 02 A6 */ mflr r0 +/* 80247A30 00244990 90 01 00 34 */ stw r0, 0x34(r1) +/* 80247A34 00244994 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80247A38 00244998 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80247A3C 0024499C 3B C0 00 00 */ li r30, 0 +/* 80247A40 002449A0 93 A1 00 24 */ stw r29, 0x24(r1) +/* 80247A44 002449A4 7C 7D 1B 78 */ mr r29, r3 +/* 80247A48 002449A8 3B FD 00 04 */ addi r31, r29, 4 +/* 80247A4C 002449AC 48 00 00 54 */ b lbl_80247AA0 +lbl_80247A50: +/* 80247A50 002449B0 28 1F 00 00 */ cmplwi r31, 0 +/* 80247A54 002449B4 41 82 00 44 */ beq lbl_80247A98 +/* 80247A58 002449B8 80 1F 00 04 */ lwz r0, 4(r31) +/* 80247A5C 002449BC 80 7F 00 0C */ lwz r3, 0xc(r31) +/* 80247A60 002449C0 54 00 18 38 */ slwi r0, r0, 3 +/* 80247A64 002449C4 7C 03 02 14 */ add r0, r3, r0 +/* 80247A68 002449C8 90 61 00 0C */ stw r3, 0xc(r1) +/* 80247A6C 002449CC 7C 64 1B 78 */ mr r4, r3 +/* 80247A70 002449D0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80247A74 002449D4 90 01 00 10 */ stw r0, 0x10(r1) +/* 80247A78 002449D8 90 61 00 08 */ stw r3, 8(r1) +/* 80247A7C 002449DC 48 00 00 08 */ b lbl_80247A84 +lbl_80247A80: +/* 80247A80 002449E0 38 84 00 08 */ addi r4, r4, 8 +lbl_80247A84: +/* 80247A84 002449E4 7C 04 00 40 */ cmplw r4, r0 +/* 80247A88 002449E8 40 82 FF F8 */ bne lbl_80247A80 +/* 80247A8C 002449EC 28 03 00 00 */ cmplwi r3, 0 +/* 80247A90 002449F0 41 82 00 08 */ beq lbl_80247A98 +/* 80247A94 002449F4 48 0C DE 9D */ bl Free__7CMemoryFPCv +lbl_80247A98: +/* 80247A98 002449F8 3B FF 00 10 */ addi r31, r31, 0x10 +/* 80247A9C 002449FC 3B DE 00 01 */ addi r30, r30, 1 +lbl_80247AA0: +/* 80247AA0 00244A00 80 1D 00 00 */ lwz r0, 0(r29) +/* 80247AA4 00244A04 7C 1E 00 00 */ cmpw r30, r0 +/* 80247AA8 00244A08 41 80 FF A8 */ blt lbl_80247A50 +/* 80247AAC 00244A0C 38 00 00 00 */ li r0, 0 +/* 80247AB0 00244A10 90 1D 00 00 */ stw r0, 0(r29) +/* 80247AB4 00244A14 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80247AB8 00244A18 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80247ABC 00244A1C 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80247AC0 00244A20 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 80247AC4 00244A24 7C 08 03 A6 */ mtlr r0 +/* 80247AC8 00244A28 38 21 00 30 */ addi r1, r1, 0x30 +/* 80247ACC 00244A2C 4E 80 00 20 */ blr + +.global sub_80247ad0 +sub_80247ad0: +/* 80247AD0 00244A30 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80247AD4 00244A34 7C 08 02 A6 */ mflr r0 +/* 80247AD8 00244A38 90 01 00 14 */ stw r0, 0x14(r1) +/* 80247ADC 00244A3C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80247AE0 00244A40 7C 9F 23 78 */ mr r31, r4 +/* 80247AE4 00244A44 93 C1 00 08 */ stw r30, 8(r1) +/* 80247AE8 00244A48 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80247AEC 00244A4C 41 82 00 18 */ beq lbl_80247B04 +/* 80247AF0 00244A50 48 00 00 31 */ bl sub_80247b20 +/* 80247AF4 00244A54 7F E0 07 35 */ extsh. r0, r31 +/* 80247AF8 00244A58 40 81 00 0C */ ble lbl_80247B04 +/* 80247AFC 00244A5C 7F C3 F3 78 */ mr r3, r30 +/* 80247B00 00244A60 48 0C DE 31 */ bl Free__7CMemoryFPCv +lbl_80247B04: +/* 80247B04 00244A64 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80247B08 00244A68 7F C3 F3 78 */ mr r3, r30 +/* 80247B0C 00244A6C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80247B10 00244A70 83 C1 00 08 */ lwz r30, 8(r1) +/* 80247B14 00244A74 7C 08 03 A6 */ mtlr r0 +/* 80247B18 00244A78 38 21 00 10 */ addi r1, r1, 0x10 +/* 80247B1C 00244A7C 4E 80 00 20 */ blr + +.global sub_80247b20 +sub_80247b20: +/* 80247B20 00244A80 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80247B24 00244A84 7C 08 02 A6 */ mflr r0 +/* 80247B28 00244A88 90 01 00 24 */ stw r0, 0x24(r1) +/* 80247B2C 00244A8C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80247B30 00244A90 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80247B34 00244A94 3B C0 00 00 */ li r30, 0 +/* 80247B38 00244A98 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80247B3C 00244A9C 7C 7D 1B 78 */ mr r29, r3 +/* 80247B40 00244AA0 3B FD 00 04 */ addi r31, r29, 4 +/* 80247B44 00244AA4 48 00 00 14 */ b lbl_80247B58 +lbl_80247B48: +/* 80247B48 00244AA8 7F E3 FB 78 */ mr r3, r31 +/* 80247B4C 00244AAC 48 00 00 3D */ bl sub_80247b88 +/* 80247B50 00244AB0 3B FF 00 10 */ addi r31, r31, 0x10 +/* 80247B54 00244AB4 3B DE 00 01 */ addi r30, r30, 1 +lbl_80247B58: +/* 80247B58 00244AB8 80 1D 00 00 */ lwz r0, 0(r29) +/* 80247B5C 00244ABC 7C 1E 00 00 */ cmpw r30, r0 +/* 80247B60 00244AC0 41 80 FF E8 */ blt lbl_80247B48 +/* 80247B64 00244AC4 38 00 00 00 */ li r0, 0 +/* 80247B68 00244AC8 90 1D 00 00 */ stw r0, 0(r29) +/* 80247B6C 00244ACC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80247B70 00244AD0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80247B74 00244AD4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80247B78 00244AD8 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80247B7C 00244ADC 7C 08 03 A6 */ mtlr r0 +/* 80247B80 00244AE0 38 21 00 20 */ addi r1, r1, 0x20 +/* 80247B84 00244AE4 4E 80 00 20 */ blr + +.global sub_80247b88 +sub_80247b88: +/* 80247B88 00244AE8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80247B8C 00244AEC 7C 08 02 A6 */ mflr r0 +/* 80247B90 00244AF0 38 80 FF FF */ li r4, -1 +/* 80247B94 00244AF4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80247B98 00244AF8 4B FF F4 B1 */ bl sub_80247048 +/* 80247B9C 00244AFC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80247BA0 00244B00 7C 08 03 A6 */ mtlr r0 +/* 80247BA4 00244B04 38 21 00 10 */ addi r1, r1, 0x10 +/* 80247BA8 00244B08 4E 80 00 20 */ blr + +.global __ct__14CLogBookScreenFRC13CStateManagerRC9CGuiFrameRC12CStringTable +__ct__14CLogBookScreenFRC13CStateManagerRC9CGuiFrameRC12CStringTable: +/* 80247BAC 00244B0C 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80247BB0 00244B10 7C 08 02 A6 */ mflr r0 +/* 80247BB4 00244B14 90 01 00 44 */ stw r0, 0x44(r1) +/* 80247BB8 00244B18 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80247BBC 00244B1C 7C 7F 1B 78 */ mr r31, r3 +/* 80247BC0 00244B20 4B E2 AC 91 */ bl __ct__16CPauseScreenBaseFRC13CStateManagerRC9CGuiFrameRC12CStringTable +/* 80247BC4 00244B24 3C 60 80 3F */ lis r3, lbl_803E8B78@ha +/* 80247BC8 00244B28 38 00 00 00 */ li r0, 0 +/* 80247BCC 00244B2C 38 83 8B 78 */ addi r4, r3, lbl_803E8B78@l +/* 80247BD0 00244B30 38 7F 01 9C */ addi r3, r31, 0x19c +/* 80247BD4 00244B34 90 9F 00 00 */ stw r4, 0(r31) +/* 80247BD8 00244B38 38 A1 00 28 */ addi r5, r1, 0x28 +/* 80247BDC 00244B3C 38 80 00 05 */ li r4, 5 +/* 80247BE0 00244B40 90 01 00 2C */ stw r0, 0x2c(r1) +/* 80247BE4 00244B44 90 01 00 30 */ stw r0, 0x30(r1) +/* 80247BE8 00244B48 90 01 00 34 */ stw r0, 0x34(r1) +/* 80247BEC 00244B4C 48 00 02 B5 */ bl sub_80247ea0 +/* 80247BF0 00244B50 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 80247BF4 00244B54 80 61 00 34 */ lwz r3, 0x34(r1) +/* 80247BF8 00244B58 54 00 18 38 */ slwi r0, r0, 3 +/* 80247BFC 00244B5C 7C 03 02 14 */ add r0, r3, r0 +/* 80247C00 00244B60 90 61 00 0C */ stw r3, 0xc(r1) +/* 80247C04 00244B64 7C 64 1B 78 */ mr r4, r3 +/* 80247C08 00244B68 90 01 00 14 */ stw r0, 0x14(r1) +/* 80247C0C 00244B6C 90 01 00 10 */ stw r0, 0x10(r1) +/* 80247C10 00244B70 90 61 00 08 */ stw r3, 8(r1) +/* 80247C14 00244B74 48 00 00 08 */ b lbl_80247C1C +lbl_80247C18: +/* 80247C18 00244B78 38 84 00 08 */ addi r4, r4, 8 +lbl_80247C1C: +/* 80247C1C 00244B7C 7C 04 00 40 */ cmplw r4, r0 +/* 80247C20 00244B80 40 82 FF F8 */ bne lbl_80247C18 +/* 80247C24 00244B84 28 03 00 00 */ cmplwi r3, 0 +/* 80247C28 00244B88 41 82 00 08 */ beq lbl_80247C30 +/* 80247C2C 00244B8C 48 0C DD 05 */ bl Free__7CMemoryFPCv +lbl_80247C30: +/* 80247C30 00244B90 38 00 00 00 */ li r0, 0 +/* 80247C34 00244B94 38 7F 02 00 */ addi r3, r31, 0x200 +/* 80247C38 00244B98 90 1F 01 F4 */ stw r0, 0x1f4(r31) +/* 80247C3C 00244B9C 38 A1 00 18 */ addi r5, r1, 0x18 +/* 80247C40 00244BA0 38 80 00 05 */ li r4, 5 +/* 80247C44 00244BA4 90 1F 01 F8 */ stw r0, 0x1f8(r31) +/* 80247C48 00244BA8 90 1F 01 FC */ stw r0, 0x1fc(r31) +/* 80247C4C 00244BAC 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80247C50 00244BB0 90 01 00 20 */ stw r0, 0x20(r1) +/* 80247C54 00244BB4 90 01 00 24 */ stw r0, 0x24(r1) +/* 80247C58 00244BB8 48 00 00 91 */ bl sub_80247ce8 +/* 80247C5C 00244BBC 38 61 00 18 */ addi r3, r1, 0x18 +/* 80247C60 00244BC0 38 80 FF FF */ li r4, -1 +/* 80247C64 00244BC4 4B FF F3 E5 */ bl sub_80247048 +/* 80247C68 00244BC8 C0 02 B8 58 */ lfs f0, lbl_805AD578@sda21(r2) +/* 80247C6C 00244BCC 3C 60 80 3D */ lis r3, lbl_803D4760@ha +/* 80247C70 00244BD0 38 83 47 60 */ addi r4, r3, lbl_803D4760@l +/* 80247C74 00244BD4 38 A0 00 00 */ li r5, 0 +/* 80247C78 00244BD8 D0 1F 02 54 */ stfs f0, 0x254(r31) +/* 80247C7C 00244BDC 38 60 00 2C */ li r3, 0x2c +/* 80247C80 00244BE0 48 0C DB ED */ bl __nw__FUlPCcPCc +/* 80247C84 00244BE4 7C 60 1B 79 */ or. r0, r3, r3 +/* 80247C88 00244BE8 41 82 00 0C */ beq lbl_80247C94 +/* 80247C8C 00244BEC 48 05 58 35 */ bl __ct__13CArtifactDollFv +/* 80247C90 00244BF0 7C 60 1B 78 */ mr r0, r3 +lbl_80247C94: +/* 80247C94 00244BF4 90 1F 02 58 */ stw r0, 0x258(r31) +/* 80247C98 00244BF8 38 60 00 00 */ li r3, 0 +/* 80247C9C 00244BFC 90 7F 02 5C */ stw r3, 0x25c(r31) +/* 80247CA0 00244C00 88 1F 02 60 */ lbz r0, 0x260(r31) +/* 80247CA4 00244C04 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80247CA8 00244C08 98 1F 02 60 */ stb r0, 0x260(r31) +/* 80247CAC 00244C0C 88 1F 02 60 */ lbz r0, 0x260(r31) +/* 80247CB0 00244C10 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 80247CB4 00244C14 98 1F 02 60 */ stb r0, 0x260(r31) +/* 80247CB8 00244C18 88 1F 02 60 */ lbz r0, 0x260(r31) +/* 80247CBC 00244C1C 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 80247CC0 00244C20 98 1F 02 60 */ stb r0, 0x260(r31) +/* 80247CC4 00244C24 4B DB CB 4D */ bl EnsureWorldPaksReady__5CMainFv +/* 80247CC8 00244C28 7F E3 FB 78 */ mr r3, r31 +/* 80247CCC 00244C2C 4B FF EA 05 */ bl InitializeLogBook__14CLogBookScreenFv +/* 80247CD0 00244C30 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80247CD4 00244C34 7F E3 FB 78 */ mr r3, r31 +/* 80247CD8 00244C38 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 80247CDC 00244C3C 7C 08 03 A6 */ mtlr r0 +/* 80247CE0 00244C40 38 21 00 40 */ addi r1, r1, 0x40 +/* 80247CE4 00244C44 4E 80 00 20 */ blr + +.global sub_80247ce8 +sub_80247ce8: +/* 80247CE8 00244C48 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80247CEC 00244C4C 7C 08 02 A6 */ mflr r0 +/* 80247CF0 00244C50 90 01 00 14 */ stw r0, 0x14(r1) +/* 80247CF4 00244C54 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80247CF8 00244C58 7C 7F 1B 78 */ mr r31, r3 +/* 80247CFC 00244C5C 90 83 00 00 */ stw r4, 0(r3) +/* 80247D00 00244C60 38 7F 00 04 */ addi r3, r31, 4 +/* 80247D04 00244C64 48 00 00 1D */ bl sub_80247d20 +/* 80247D08 00244C68 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80247D0C 00244C6C 7F E3 FB 78 */ mr r3, r31 +/* 80247D10 00244C70 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80247D14 00244C74 7C 08 03 A6 */ mtlr r0 +/* 80247D18 00244C78 38 21 00 10 */ addi r1, r1, 0x10 +/* 80247D1C 00244C7C 4E 80 00 20 */ blr + +.global sub_80247d20 +sub_80247d20: +/* 80247D20 00244C80 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80247D24 00244C84 7C 08 02 A6 */ mflr r0 +/* 80247D28 00244C88 90 01 00 24 */ stw r0, 0x24(r1) +/* 80247D2C 00244C8C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80247D30 00244C90 7C 7F 1B 78 */ mr r31, r3 +/* 80247D34 00244C94 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80247D38 00244C98 3B C0 00 00 */ li r30, 0 +/* 80247D3C 00244C9C 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80247D40 00244CA0 7C BD 2B 78 */ mr r29, r5 +/* 80247D44 00244CA4 93 81 00 10 */ stw r28, 0x10(r1) +/* 80247D48 00244CA8 7C 9C 23 78 */ mr r28, r4 +/* 80247D4C 00244CAC 48 00 00 20 */ b lbl_80247D6C +lbl_80247D50: +/* 80247D50 00244CB0 28 1F 00 00 */ cmplwi r31, 0 +/* 80247D54 00244CB4 41 82 00 10 */ beq lbl_80247D64 +/* 80247D58 00244CB8 7F E3 FB 78 */ mr r3, r31 +/* 80247D5C 00244CBC 7F A4 EB 78 */ mr r4, r29 +/* 80247D60 00244CC0 48 00 00 35 */ bl sub_80247d94 +lbl_80247D64: +/* 80247D64 00244CC4 3B DE 00 01 */ addi r30, r30, 1 +/* 80247D68 00244CC8 3B FF 00 10 */ addi r31, r31, 0x10 +lbl_80247D6C: +/* 80247D6C 00244CCC 7C 1E E0 00 */ cmpw r30, r28 +/* 80247D70 00244CD0 41 80 FF E0 */ blt lbl_80247D50 +/* 80247D74 00244CD4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80247D78 00244CD8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80247D7C 00244CDC 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80247D80 00244CE0 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80247D84 00244CE4 83 81 00 10 */ lwz r28, 0x10(r1) +/* 80247D88 00244CE8 7C 08 03 A6 */ mtlr r0 +/* 80247D8C 00244CEC 38 21 00 20 */ addi r1, r1, 0x20 +/* 80247D90 00244CF0 4E 80 00 20 */ blr + +.global sub_80247d94 +sub_80247d94: +/* 80247D94 00244CF4 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80247D98 00244CF8 7C 08 02 A6 */ mflr r0 +/* 80247D9C 00244CFC 90 01 00 34 */ stw r0, 0x34(r1) +/* 80247DA0 00244D00 BF 21 00 14 */ stmw r25, 0x14(r1) +/* 80247DA4 00244D04 7C 99 23 78 */ mr r25, r4 +/* 80247DA8 00244D08 7C 7F 1B 78 */ mr r31, r3 +/* 80247DAC 00244D0C 80 04 00 04 */ lwz r0, 4(r4) +/* 80247DB0 00244D10 90 03 00 04 */ stw r0, 4(r3) +/* 80247DB4 00244D14 80 04 00 08 */ lwz r0, 8(r4) +/* 80247DB8 00244D18 90 03 00 08 */ stw r0, 8(r3) +/* 80247DBC 00244D1C 80 04 00 04 */ lwz r0, 4(r4) +/* 80247DC0 00244D20 2C 00 00 00 */ cmpwi r0, 0 +/* 80247DC4 00244D24 40 82 00 1C */ bne lbl_80247DE0 +/* 80247DC8 00244D28 80 19 00 08 */ lwz r0, 8(r25) +/* 80247DCC 00244D2C 2C 00 00 00 */ cmpwi r0, 0 +/* 80247DD0 00244D30 40 82 00 10 */ bne lbl_80247DE0 +/* 80247DD4 00244D34 38 00 00 00 */ li r0, 0 +/* 80247DD8 00244D38 90 1F 00 0C */ stw r0, 0xc(r31) +/* 80247DDC 00244D3C 48 00 00 AC */ b lbl_80247E88 +lbl_80247DE0: +/* 80247DE0 00244D40 80 1F 00 08 */ lwz r0, 8(r31) +/* 80247DE4 00244D44 1C 60 00 1C */ mulli r3, r0, 0x1c +/* 80247DE8 00244D48 2C 03 00 00 */ cmpwi r3, 0 +/* 80247DEC 00244D4C 40 82 00 10 */ bne lbl_80247DFC +/* 80247DF0 00244D50 38 00 00 00 */ li r0, 0 +/* 80247DF4 00244D54 90 1F 00 0C */ stw r0, 0xc(r31) +/* 80247DF8 00244D58 48 00 00 18 */ b lbl_80247E10 +lbl_80247DFC: +/* 80247DFC 00244D5C 3C 80 80 3D */ lis r4, lbl_803D4760@ha +/* 80247E00 00244D60 38 A0 00 00 */ li r5, 0 +/* 80247E04 00244D64 38 84 47 60 */ addi r4, r4, lbl_803D4760@l +/* 80247E08 00244D68 48 0C DA 11 */ bl __nwa__FUlPCcPCc +/* 80247E0C 00244D6C 90 7F 00 0C */ stw r3, 0xc(r31) +lbl_80247E10: +/* 80247E10 00244D70 83 7F 00 04 */ lwz r27, 4(r31) +/* 80247E14 00244D74 3B C0 00 00 */ li r30, 0 +/* 80247E18 00244D78 83 99 00 0C */ lwz r28, 0xc(r25) +/* 80247E1C 00244D7C 83 BF 00 0C */ lwz r29, 0xc(r31) +/* 80247E20 00244D80 48 00 00 60 */ b lbl_80247E80 +lbl_80247E24: +/* 80247E24 00244D84 28 1D 00 00 */ cmplwi r29, 0 +/* 80247E28 00244D88 41 82 00 4C */ beq lbl_80247E74 +/* 80247E2C 00244D8C 7F A3 EB 78 */ mr r3, r29 +/* 80247E30 00244D90 7F 84 E3 78 */ mr r4, r28 +/* 80247E34 00244D94 48 0F 90 75 */ bl __ct__6CTokenFRC6CToken +/* 80247E38 00244D98 80 1C 00 08 */ lwz r0, 8(r28) +/* 80247E3C 00244D9C 90 1D 00 08 */ stw r0, 8(r29) +/* 80247E40 00244DA0 88 1C 00 18 */ lbz r0, 0x18(r28) +/* 80247E44 00244DA4 98 1D 00 18 */ stb r0, 0x18(r29) +/* 80247E48 00244DA8 88 1C 00 18 */ lbz r0, 0x18(r28) +/* 80247E4C 00244DAC 28 00 00 00 */ cmplwi r0, 0 +/* 80247E50 00244DB0 41 82 00 24 */ beq lbl_80247E74 +/* 80247E54 00244DB4 37 5D 00 0C */ addic. r26, r29, 0xc +/* 80247E58 00244DB8 3B 3C 00 0C */ addi r25, r28, 0xc +/* 80247E5C 00244DBC 41 82 00 18 */ beq lbl_80247E74 +/* 80247E60 00244DC0 7F 43 D3 78 */ mr r3, r26 +/* 80247E64 00244DC4 7F 24 CB 78 */ mr r4, r25 +/* 80247E68 00244DC8 48 0F 90 41 */ bl __ct__6CTokenFRC6CToken +/* 80247E6C 00244DCC 80 19 00 08 */ lwz r0, 8(r25) +/* 80247E70 00244DD0 90 1A 00 08 */ stw r0, 8(r26) +lbl_80247E74: +/* 80247E74 00244DD4 3B BD 00 1C */ addi r29, r29, 0x1c +/* 80247E78 00244DD8 3B DE 00 01 */ addi r30, r30, 1 +/* 80247E7C 00244DDC 3B 9C 00 1C */ addi r28, r28, 0x1c +lbl_80247E80: +/* 80247E80 00244DE0 7C 1E D8 00 */ cmpw r30, r27 +/* 80247E84 00244DE4 41 80 FF A0 */ blt lbl_80247E24 +lbl_80247E88: +/* 80247E88 00244DE8 7F E3 FB 78 */ mr r3, r31 +/* 80247E8C 00244DEC BB 21 00 14 */ lmw r25, 0x14(r1) +/* 80247E90 00244DF0 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80247E94 00244DF4 7C 08 03 A6 */ mtlr r0 +/* 80247E98 00244DF8 38 21 00 30 */ addi r1, r1, 0x30 +/* 80247E9C 00244DFC 4E 80 00 20 */ blr + +.global sub_80247ea0 +sub_80247ea0: +/* 80247EA0 00244E00 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80247EA4 00244E04 7C 08 02 A6 */ mflr r0 +/* 80247EA8 00244E08 90 01 00 14 */ stw r0, 0x14(r1) +/* 80247EAC 00244E0C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80247EB0 00244E10 7C 7F 1B 78 */ mr r31, r3 +/* 80247EB4 00244E14 90 83 00 00 */ stw r4, 0(r3) +/* 80247EB8 00244E18 38 7F 00 04 */ addi r3, r31, 4 +/* 80247EBC 00244E1C 48 00 00 1D */ bl sub_80247ed8 +/* 80247EC0 00244E20 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80247EC4 00244E24 7F E3 FB 78 */ mr r3, r31 +/* 80247EC8 00244E28 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80247ECC 00244E2C 7C 08 03 A6 */ mtlr r0 +/* 80247ED0 00244E30 38 21 00 10 */ addi r1, r1, 0x10 +/* 80247ED4 00244E34 4E 80 00 20 */ blr + +.global sub_80247ed8 +sub_80247ed8: +/* 80247ED8 00244E38 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80247EDC 00244E3C 7C 08 02 A6 */ mflr r0 +/* 80247EE0 00244E40 90 01 00 24 */ stw r0, 0x24(r1) +/* 80247EE4 00244E44 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80247EE8 00244E48 7C 7F 1B 78 */ mr r31, r3 +/* 80247EEC 00244E4C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80247EF0 00244E50 3B C0 00 00 */ li r30, 0 +/* 80247EF4 00244E54 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80247EF8 00244E58 7C BD 2B 78 */ mr r29, r5 +/* 80247EFC 00244E5C 93 81 00 10 */ stw r28, 0x10(r1) +/* 80247F00 00244E60 7C 9C 23 78 */ mr r28, r4 +/* 80247F04 00244E64 48 00 00 B0 */ b lbl_80247FB4 +lbl_80247F08: +/* 80247F08 00244E68 28 1F 00 00 */ cmplwi r31, 0 +/* 80247F0C 00244E6C 41 82 00 A0 */ beq lbl_80247FAC +/* 80247F10 00244E70 80 1D 00 04 */ lwz r0, 4(r29) +/* 80247F14 00244E74 90 1F 00 04 */ stw r0, 4(r31) +/* 80247F18 00244E78 80 1D 00 08 */ lwz r0, 8(r29) +/* 80247F1C 00244E7C 90 1F 00 08 */ stw r0, 8(r31) +/* 80247F20 00244E80 80 1D 00 04 */ lwz r0, 4(r29) +/* 80247F24 00244E84 2C 00 00 00 */ cmpwi r0, 0 +/* 80247F28 00244E88 40 82 00 1C */ bne lbl_80247F44 +/* 80247F2C 00244E8C 80 1D 00 08 */ lwz r0, 8(r29) +/* 80247F30 00244E90 2C 00 00 00 */ cmpwi r0, 0 +/* 80247F34 00244E94 40 82 00 10 */ bne lbl_80247F44 +/* 80247F38 00244E98 38 00 00 00 */ li r0, 0 +/* 80247F3C 00244E9C 90 1F 00 0C */ stw r0, 0xc(r31) +/* 80247F40 00244EA0 48 00 00 6C */ b lbl_80247FAC +lbl_80247F44: +/* 80247F44 00244EA4 80 1F 00 08 */ lwz r0, 8(r31) +/* 80247F48 00244EA8 54 03 18 39 */ rlwinm. r3, r0, 3, 0, 0x1c +/* 80247F4C 00244EAC 40 82 00 10 */ bne lbl_80247F5C +/* 80247F50 00244EB0 38 00 00 00 */ li r0, 0 +/* 80247F54 00244EB4 90 1F 00 0C */ stw r0, 0xc(r31) +/* 80247F58 00244EB8 48 00 00 18 */ b lbl_80247F70 +lbl_80247F5C: +/* 80247F5C 00244EBC 3C 80 80 3D */ lis r4, lbl_803D4760@ha +/* 80247F60 00244EC0 38 A0 00 00 */ li r5, 0 +/* 80247F64 00244EC4 38 84 47 60 */ addi r4, r4, lbl_803D4760@l +/* 80247F68 00244EC8 48 0C D8 B1 */ bl __nwa__FUlPCcPCc +/* 80247F6C 00244ECC 90 7F 00 0C */ stw r3, 0xc(r31) +lbl_80247F70: +/* 80247F70 00244ED0 80 1F 00 04 */ lwz r0, 4(r31) +/* 80247F74 00244ED4 80 9D 00 0C */ lwz r4, 0xc(r29) +/* 80247F78 00244ED8 80 7F 00 0C */ lwz r3, 0xc(r31) +/* 80247F7C 00244EDC 7C 09 03 A6 */ mtctr r0 +/* 80247F80 00244EE0 2C 00 00 00 */ cmpwi r0, 0 +/* 80247F84 00244EE4 40 81 00 28 */ ble lbl_80247FAC +lbl_80247F88: +/* 80247F88 00244EE8 28 03 00 00 */ cmplwi r3, 0 +/* 80247F8C 00244EEC 41 82 00 14 */ beq lbl_80247FA0 +/* 80247F90 00244EF0 80 04 00 00 */ lwz r0, 0(r4) +/* 80247F94 00244EF4 90 03 00 00 */ stw r0, 0(r3) +/* 80247F98 00244EF8 88 04 00 04 */ lbz r0, 4(r4) +/* 80247F9C 00244EFC 98 03 00 04 */ stb r0, 4(r3) +lbl_80247FA0: +/* 80247FA0 00244F00 38 63 00 08 */ addi r3, r3, 8 +/* 80247FA4 00244F04 38 84 00 08 */ addi r4, r4, 8 +/* 80247FA8 00244F08 42 00 FF E0 */ bdnz lbl_80247F88 +lbl_80247FAC: +/* 80247FAC 00244F0C 3B DE 00 01 */ addi r30, r30, 1 +/* 80247FB0 00244F10 3B FF 00 10 */ addi r31, r31, 0x10 +lbl_80247FB4: +/* 80247FB4 00244F14 7C 1E E0 00 */ cmpw r30, r28 +/* 80247FB8 00244F18 41 80 FF 50 */ blt lbl_80247F08 +/* 80247FBC 00244F1C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80247FC0 00244F20 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80247FC4 00244F24 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80247FC8 00244F28 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80247FCC 00244F2C 83 81 00 10 */ lwz r28, 0x10(r1) +/* 80247FD0 00244F30 7C 08 03 A6 */ mtlr r0 +/* 80247FD4 00244F34 38 21 00 20 */ addi r1, r1, 0x20 +/* 80247FD8 00244F38 4E 80 00 20 */ blr + +.global sub_80247fdc +sub_80247fdc: +/* 80247FDC 00244F3C 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80247FE0 00244F40 7C 08 02 A6 */ mflr r0 +/* 80247FE4 00244F44 90 01 00 64 */ stw r0, 0x64(r1) +/* 80247FE8 00244F48 BF 61 00 4C */ stmw r27, 0x4c(r1) +/* 80247FEC 00244F4C 7C 7C 1B 78 */ mr r28, r3 +/* 80247FF0 00244F50 7C BE 2B 78 */ mr r30, r5 +/* 80247FF4 00244F54 7C 9D 23 78 */ mr r29, r4 +/* 80247FF8 00244F58 80 63 00 00 */ lwz r3, 0(r3) +/* 80247FFC 00244F5C 80 A4 00 00 */ lwz r5, 0(r4) +/* 80248000 00244F60 7C 03 28 50 */ subf r0, r3, r5 +/* 80248004 00244F64 7C 00 1E 70 */ srawi r0, r0, 3 +/* 80248008 00244F68 7C 80 01 94 */ addze r4, r0 +/* 8024800C 00244F6C 2C 04 00 01 */ cmpwi r4, 1 +/* 80248010 00244F70 40 81 01 88 */ ble lbl_80248198 +/* 80248014 00244F74 2C 04 00 14 */ cmpwi r4, 0x14 +/* 80248018 00244F78 41 81 00 30 */ bgt lbl_80248048 +/* 8024801C 00244F7C 88 FE 00 00 */ lbz r7, 0(r30) +/* 80248020 00244F80 38 61 00 34 */ addi r3, r1, 0x34 +/* 80248024 00244F84 80 DD 00 00 */ lwz r6, 0(r29) +/* 80248028 00244F88 38 81 00 30 */ addi r4, r1, 0x30 +/* 8024802C 00244F8C 80 1C 00 00 */ lwz r0, 0(r28) +/* 80248030 00244F90 38 A1 00 14 */ addi r5, r1, 0x14 +/* 80248034 00244F94 98 E1 00 14 */ stb r7, 0x14(r1) +/* 80248038 00244F98 90 C1 00 30 */ stw r6, 0x30(r1) +/* 8024803C 00244F9C 90 01 00 34 */ stw r0, 0x34(r1) +/* 80248040 00244FA0 48 00 04 F1 */ bl sub_80248530 +/* 80248044 00244FA4 48 00 01 54 */ b lbl_80248198 +lbl_80248048: +/* 80248048 00244FA8 54 80 0F FE */ srwi r0, r4, 0x1f +/* 8024804C 00244FAC 38 A5 FF F8 */ addi r5, r5, -8 +/* 80248050 00244FB0 7C 80 22 14 */ add r4, r0, r4 +/* 80248054 00244FB4 88 1E 00 00 */ lbz r0, 0(r30) +/* 80248058 00244FB8 7C 84 0E 70 */ srawi r4, r4, 1 +/* 8024805C 00244FBC 90 A1 00 3C */ stw r5, 0x3c(r1) +/* 80248060 00244FC0 54 84 18 38 */ slwi r4, r4, 3 +/* 80248064 00244FC4 38 C1 00 10 */ addi r6, r1, 0x10 +/* 80248068 00244FC8 7F 63 22 14 */ add r27, r3, r4 +/* 8024806C 00244FCC 98 01 00 10 */ stb r0, 0x10(r1) +/* 80248070 00244FD0 7F 64 DB 78 */ mr r4, r27 +/* 80248074 00244FD4 48 00 03 DD */ bl sub_80248450 +/* 80248078 00244FD8 80 9C 00 00 */ lwz r4, 0(r28) +/* 8024807C 00244FDC 80 61 00 3C */ lwz r3, 0x3c(r1) +/* 80248080 00244FE0 38 84 00 08 */ addi r4, r4, 8 +/* 80248084 00244FE4 83 FB 00 00 */ lwz r31, 0(r27) +/* 80248088 00244FE8 38 03 FF F8 */ addi r0, r3, -8 +/* 8024808C 00244FEC 90 81 00 38 */ stw r4, 0x38(r1) +/* 80248090 00244FF0 90 01 00 3C */ stw r0, 0x3c(r1) +/* 80248094 00244FF4 48 00 00 10 */ b lbl_802480A4 +lbl_80248098: +/* 80248098 00244FF8 80 61 00 38 */ lwz r3, 0x38(r1) +/* 8024809C 00244FFC 38 03 00 08 */ addi r0, r3, 8 +/* 802480A0 00245000 90 01 00 38 */ stw r0, 0x38(r1) +lbl_802480A4: +/* 802480A4 00245004 7F E3 FB 78 */ mr r3, r31 +/* 802480A8 00245008 48 05 47 DD */ bl GetArtifactHeadScanIndex__13CArtifactDollFUi +/* 802480AC 0024500C 80 81 00 38 */ lwz r4, 0x38(r1) +/* 802480B0 00245010 7C 7B 1B 78 */ mr r27, r3 +/* 802480B4 00245014 80 64 00 00 */ lwz r3, 0(r4) +/* 802480B8 00245018 48 05 47 CD */ bl GetArtifactHeadScanIndex__13CArtifactDollFUi +/* 802480BC 0024501C 7C 03 D8 00 */ cmpw r3, r27 +/* 802480C0 00245020 41 80 FF D8 */ blt lbl_80248098 +/* 802480C4 00245024 48 00 00 10 */ b lbl_802480D4 +lbl_802480C8: +/* 802480C8 00245028 80 61 00 3C */ lwz r3, 0x3c(r1) +/* 802480CC 0024502C 38 03 FF F8 */ addi r0, r3, -8 +/* 802480D0 00245030 90 01 00 3C */ stw r0, 0x3c(r1) +lbl_802480D4: +/* 802480D4 00245034 80 61 00 3C */ lwz r3, 0x3c(r1) +/* 802480D8 00245038 80 63 00 00 */ lwz r3, 0(r3) +/* 802480DC 0024503C 48 05 47 A9 */ bl GetArtifactHeadScanIndex__13CArtifactDollFUi +/* 802480E0 00245040 7C 7B 1B 78 */ mr r27, r3 +/* 802480E4 00245044 7F E3 FB 78 */ mr r3, r31 +/* 802480E8 00245048 48 05 47 9D */ bl GetArtifactHeadScanIndex__13CArtifactDollFUi +/* 802480EC 0024504C 7C 03 D8 00 */ cmpw r3, r27 +/* 802480F0 00245050 41 80 FF D8 */ blt lbl_802480C8 +/* 802480F4 00245054 80 61 00 38 */ lwz r3, 0x38(r1) +/* 802480F8 00245058 80 01 00 3C */ lwz r0, 0x3c(r1) +/* 802480FC 0024505C 7C 03 00 40 */ cmplw r3, r0 +/* 80248100 00245060 40 80 00 48 */ bge lbl_80248148 +/* 80248104 00245064 80 A1 00 38 */ lwz r5, 0x38(r1) +/* 80248108 00245068 80 C1 00 3C */ lwz r6, 0x3c(r1) +/* 8024810C 0024506C 80 E5 00 00 */ lwz r7, 0(r5) +/* 80248110 00245070 38 65 00 08 */ addi r3, r5, 8 +/* 80248114 00245074 89 05 00 04 */ lbz r8, 4(r5) +/* 80248118 00245078 38 06 FF F8 */ addi r0, r6, -8 +/* 8024811C 0024507C 80 86 00 00 */ lwz r4, 0(r6) +/* 80248120 00245080 90 C1 00 28 */ stw r6, 0x28(r1) +/* 80248124 00245084 90 85 00 00 */ stw r4, 0(r5) +/* 80248128 00245088 88 86 00 04 */ lbz r4, 4(r6) +/* 8024812C 0024508C 90 A1 00 2C */ stw r5, 0x2c(r1) +/* 80248130 00245090 98 85 00 04 */ stb r4, 4(r5) +/* 80248134 00245094 90 E6 00 00 */ stw r7, 0(r6) +/* 80248138 00245098 99 06 00 04 */ stb r8, 4(r6) +/* 8024813C 0024509C 90 61 00 38 */ stw r3, 0x38(r1) +/* 80248140 002450A0 90 01 00 3C */ stw r0, 0x3c(r1) +/* 80248144 002450A4 4B FF FF 60 */ b lbl_802480A4 +lbl_80248148: +/* 80248148 002450A8 88 FE 00 00 */ lbz r7, 0(r30) +/* 8024814C 002450AC 38 61 00 24 */ addi r3, r1, 0x24 +/* 80248150 002450B0 80 C1 00 38 */ lwz r6, 0x38(r1) +/* 80248154 002450B4 38 81 00 20 */ addi r4, r1, 0x20 +/* 80248158 002450B8 80 1C 00 00 */ lwz r0, 0(r28) +/* 8024815C 002450BC 38 A1 00 0C */ addi r5, r1, 0xc +/* 80248160 002450C0 98 E1 00 0C */ stb r7, 0xc(r1) +/* 80248164 002450C4 90 C1 00 20 */ stw r6, 0x20(r1) +/* 80248168 002450C8 90 01 00 24 */ stw r0, 0x24(r1) +/* 8024816C 002450CC 4B FF FE 71 */ bl sub_80247fdc +/* 80248170 002450D0 88 FE 00 00 */ lbz r7, 0(r30) +/* 80248174 002450D4 38 61 00 1C */ addi r3, r1, 0x1c +/* 80248178 002450D8 80 DD 00 00 */ lwz r6, 0(r29) +/* 8024817C 002450DC 38 81 00 18 */ addi r4, r1, 0x18 +/* 80248180 002450E0 80 01 00 38 */ lwz r0, 0x38(r1) +/* 80248184 002450E4 38 A1 00 08 */ addi r5, r1, 8 +/* 80248188 002450E8 98 E1 00 08 */ stb r7, 8(r1) +/* 8024818C 002450EC 90 C1 00 18 */ stw r6, 0x18(r1) +/* 80248190 002450F0 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80248194 002450F4 4B FF FE 49 */ bl sub_80247fdc +lbl_80248198: +/* 80248198 002450F8 BB 61 00 4C */ lmw r27, 0x4c(r1) +/* 8024819C 002450FC 80 01 00 64 */ lwz r0, 0x64(r1) +/* 802481A0 00245100 7C 08 03 A6 */ mtlr r0 +/* 802481A4 00245104 38 21 00 60 */ addi r1, r1, 0x60 +/* 802481A8 00245108 4E 80 00 20 */ blr + +.global sub_802481ac +sub_802481ac: +/* 802481AC 0024510C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 802481B0 00245110 7C 08 02 A6 */ mflr r0 +/* 802481B4 00245114 90 01 00 34 */ stw r0, 0x34(r1) +/* 802481B8 00245118 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 802481BC 0024511C 7C 9F 23 78 */ mr r31, r4 +/* 802481C0 00245120 93 C1 00 28 */ stw r30, 0x28(r1) +/* 802481C4 00245124 7C 7E 1B 78 */ mr r30, r3 +/* 802481C8 00245128 93 A1 00 24 */ stw r29, 0x24(r1) +/* 802481CC 0024512C 80 03 00 08 */ lwz r0, 8(r3) +/* 802481D0 00245130 7C 1F 00 00 */ cmpw r31, r0 +/* 802481D4 00245134 40 81 00 B0 */ ble lbl_80248284 +/* 802481D8 00245138 57 E3 18 39 */ rlwinm. r3, r31, 3, 0, 0x1c +/* 802481DC 0024513C 40 82 00 0C */ bne lbl_802481E8 +/* 802481E0 00245140 3B A0 00 00 */ li r29, 0 +/* 802481E4 00245144 48 00 00 18 */ b lbl_802481FC +lbl_802481E8: +/* 802481E8 00245148 3C 80 80 3D */ lis r4, lbl_803D4760@ha +/* 802481EC 0024514C 38 A0 00 00 */ li r5, 0 +/* 802481F0 00245150 38 84 47 60 */ addi r4, r4, lbl_803D4760@l +/* 802481F4 00245154 48 0C D6 25 */ bl __nwa__FUlPCcPCc +/* 802481F8 00245158 7C 7D 1B 78 */ mr r29, r3 +lbl_802481FC: +/* 802481FC 0024515C 80 1E 00 04 */ lwz r0, 4(r30) +/* 80248200 00245160 7F A4 EB 78 */ mr r4, r29 +/* 80248204 00245164 80 BE 00 0C */ lwz r5, 0xc(r30) +/* 80248208 00245168 54 00 18 38 */ slwi r0, r0, 3 +/* 8024820C 0024516C 7C 65 02 14 */ add r3, r5, r0 +/* 80248210 00245170 90 A1 00 10 */ stw r5, 0x10(r1) +/* 80248214 00245174 90 61 00 08 */ stw r3, 8(r1) +/* 80248218 00245178 90 61 00 0C */ stw r3, 0xc(r1) +/* 8024821C 0024517C 90 A1 00 14 */ stw r5, 0x14(r1) +/* 80248220 00245180 48 00 00 24 */ b lbl_80248244 +lbl_80248224: +/* 80248224 00245184 28 04 00 00 */ cmplwi r4, 0 +/* 80248228 00245188 41 82 00 14 */ beq lbl_8024823C +/* 8024822C 0024518C 80 05 00 00 */ lwz r0, 0(r5) +/* 80248230 00245190 90 04 00 00 */ stw r0, 0(r4) +/* 80248234 00245194 88 05 00 04 */ lbz r0, 4(r5) +/* 80248238 00245198 98 04 00 04 */ stb r0, 4(r4) +lbl_8024823C: +/* 8024823C 0024519C 38 84 00 08 */ addi r4, r4, 8 +/* 80248240 002451A0 38 A5 00 08 */ addi r5, r5, 8 +lbl_80248244: +/* 80248244 002451A4 7C 05 18 40 */ cmplw r5, r3 +/* 80248248 002451A8 40 82 FF DC */ bne lbl_80248224 +/* 8024824C 002451AC 80 1E 00 04 */ lwz r0, 4(r30) +/* 80248250 002451B0 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 80248254 002451B4 54 00 18 38 */ slwi r0, r0, 3 +/* 80248258 002451B8 7C 64 1B 78 */ mr r4, r3 +/* 8024825C 002451BC 7C 03 02 14 */ add r0, r3, r0 +/* 80248260 002451C0 48 00 00 08 */ b lbl_80248268 +lbl_80248264: +/* 80248264 002451C4 38 84 00 08 */ addi r4, r4, 8 +lbl_80248268: +/* 80248268 002451C8 7C 04 00 40 */ cmplw r4, r0 +/* 8024826C 002451CC 40 82 FF F8 */ bne lbl_80248264 +/* 80248270 002451D0 28 03 00 00 */ cmplwi r3, 0 +/* 80248274 002451D4 41 82 00 08 */ beq lbl_8024827C +/* 80248278 002451D8 48 0C D6 B9 */ bl Free__7CMemoryFPCv +lbl_8024827C: +/* 8024827C 002451DC 93 BE 00 0C */ stw r29, 0xc(r30) +/* 80248280 002451E0 93 FE 00 08 */ stw r31, 8(r30) +lbl_80248284: +/* 80248284 002451E4 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80248288 002451E8 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8024828C 002451EC 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80248290 002451F0 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 80248294 002451F4 7C 08 03 A6 */ mtlr r0 +/* 80248298 002451F8 38 21 00 30 */ addi r1, r1, 0x30 +/* 8024829C 002451FC 4E 80 00 20 */ blr + +.global sub_802482a0 +sub_802482a0: +/* 802482A0 00245200 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 802482A4 00245204 7C 08 02 A6 */ mflr r0 +/* 802482A8 00245208 90 01 00 44 */ stw r0, 0x44(r1) +/* 802482AC 0024520C BF 01 00 20 */ stmw r24, 0x20(r1) +/* 802482B0 00245210 7C 9F 23 78 */ mr r31, r4 +/* 802482B4 00245214 7C 7E 1B 78 */ mr r30, r3 +/* 802482B8 00245218 80 03 00 08 */ lwz r0, 8(r3) +/* 802482BC 0024521C 7C 1F 00 00 */ cmpw r31, r0 +/* 802482C0 00245220 40 81 00 E0 */ ble lbl_802483A0 +/* 802482C4 00245224 1C 7F 00 1C */ mulli r3, r31, 0x1c +/* 802482C8 00245228 2C 03 00 00 */ cmpwi r3, 0 +/* 802482CC 0024522C 40 82 00 0C */ bne lbl_802482D8 +/* 802482D0 00245230 3B 80 00 00 */ li r28, 0 +/* 802482D4 00245234 48 00 00 18 */ b lbl_802482EC +lbl_802482D8: +/* 802482D8 00245238 3C 80 80 3D */ lis r4, lbl_803D4760@ha +/* 802482DC 0024523C 38 A0 00 00 */ li r5, 0 +/* 802482E0 00245240 38 84 47 60 */ addi r4, r4, lbl_803D4760@l +/* 802482E4 00245244 48 0C D5 35 */ bl __nwa__FUlPCcPCc +/* 802482E8 00245248 7C 7C 1B 78 */ mr r28, r3 +lbl_802482EC: +/* 802482EC 0024524C 80 1E 00 04 */ lwz r0, 4(r30) +/* 802482F0 00245250 7F 9B E3 78 */ mr r27, r28 +/* 802482F4 00245254 83 1E 00 0C */ lwz r24, 0xc(r30) +/* 802482F8 00245258 1C 00 00 1C */ mulli r0, r0, 0x1c +/* 802482FC 0024525C 93 01 00 10 */ stw r24, 0x10(r1) +/* 80248300 00245260 7F B8 02 14 */ add r29, r24, r0 +/* 80248304 00245264 93 01 00 14 */ stw r24, 0x14(r1) +/* 80248308 00245268 93 A1 00 08 */ stw r29, 8(r1) +/* 8024830C 0024526C 93 A1 00 0C */ stw r29, 0xc(r1) +/* 80248310 00245270 48 00 00 5C */ b lbl_8024836C +lbl_80248314: +/* 80248314 00245274 28 1B 00 00 */ cmplwi r27, 0 +/* 80248318 00245278 41 82 00 4C */ beq lbl_80248364 +/* 8024831C 0024527C 7F 63 DB 78 */ mr r3, r27 +/* 80248320 00245280 7F 04 C3 78 */ mr r4, r24 +/* 80248324 00245284 48 0F 8B 85 */ bl __ct__6CTokenFRC6CToken +/* 80248328 00245288 80 18 00 08 */ lwz r0, 8(r24) +/* 8024832C 0024528C 90 1B 00 08 */ stw r0, 8(r27) +/* 80248330 00245290 88 18 00 18 */ lbz r0, 0x18(r24) +/* 80248334 00245294 98 1B 00 18 */ stb r0, 0x18(r27) +/* 80248338 00245298 88 18 00 18 */ lbz r0, 0x18(r24) +/* 8024833C 0024529C 28 00 00 00 */ cmplwi r0, 0 +/* 80248340 002452A0 41 82 00 24 */ beq lbl_80248364 +/* 80248344 002452A4 37 5B 00 0C */ addic. r26, r27, 0xc +/* 80248348 002452A8 3B 38 00 0C */ addi r25, r24, 0xc +/* 8024834C 002452AC 41 82 00 18 */ beq lbl_80248364 +/* 80248350 002452B0 7F 43 D3 78 */ mr r3, r26 +/* 80248354 002452B4 7F 24 CB 78 */ mr r4, r25 +/* 80248358 002452B8 48 0F 8B 51 */ bl __ct__6CTokenFRC6CToken +/* 8024835C 002452BC 80 19 00 08 */ lwz r0, 8(r25) +/* 80248360 002452C0 90 1A 00 08 */ stw r0, 8(r26) +lbl_80248364: +/* 80248364 002452C4 3B 7B 00 1C */ addi r27, r27, 0x1c +/* 80248368 002452C8 3B 18 00 1C */ addi r24, r24, 0x1c +lbl_8024836C: +/* 8024836C 002452CC 7C 18 E8 40 */ cmplw r24, r29 +/* 80248370 002452D0 40 82 FF A4 */ bne lbl_80248314 +/* 80248374 002452D4 80 1E 00 04 */ lwz r0, 4(r30) +/* 80248378 002452D8 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 8024837C 002452DC 1C 00 00 1C */ mulli r0, r0, 0x1c +/* 80248380 002452E0 7C 83 02 14 */ add r4, r3, r0 +/* 80248384 002452E4 48 00 00 31 */ bl sub_802483b4 +/* 80248388 002452E8 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 8024838C 002452EC 28 03 00 00 */ cmplwi r3, 0 +/* 80248390 002452F0 41 82 00 08 */ beq lbl_80248398 +/* 80248394 002452F4 48 0C D5 9D */ bl Free__7CMemoryFPCv +lbl_80248398: +/* 80248398 002452F8 93 9E 00 0C */ stw r28, 0xc(r30) +/* 8024839C 002452FC 93 FE 00 08 */ stw r31, 8(r30) +lbl_802483A0: +/* 802483A0 00245300 BB 01 00 20 */ lmw r24, 0x20(r1) +/* 802483A4 00245304 80 01 00 44 */ lwz r0, 0x44(r1) +/* 802483A8 00245308 7C 08 03 A6 */ mtlr r0 +/* 802483AC 0024530C 38 21 00 40 */ addi r1, r1, 0x40 +/* 802483B0 00245310 4E 80 00 20 */ blr + +.global sub_802483b4 +sub_802483b4: +/* 802483B4 00245314 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 802483B8 00245318 7C 08 02 A6 */ mflr r0 +/* 802483BC 0024531C 90 01 00 24 */ stw r0, 0x24(r1) +/* 802483C0 00245320 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 802483C4 00245324 3B E0 00 00 */ li r31, 0 +/* 802483C8 00245328 93 C1 00 18 */ stw r30, 0x18(r1) +/* 802483CC 0024532C 7C 7E 1B 78 */ mr r30, r3 +/* 802483D0 00245330 93 A1 00 14 */ stw r29, 0x14(r1) +/* 802483D4 00245334 7C 9D 23 78 */ mr r29, r4 +/* 802483D8 00245338 48 00 00 54 */ b lbl_8024842C +lbl_802483DC: +/* 802483DC 0024533C 28 1E 00 00 */ cmplwi r30, 0 +/* 802483E0 00245340 41 82 00 48 */ beq lbl_80248428 +/* 802483E4 00245344 34 7E 00 0C */ addic. r3, r30, 0xc +/* 802483E8 00245348 41 82 00 28 */ beq lbl_80248410 +/* 802483EC 0024534C 88 1E 00 18 */ lbz r0, 0x18(r30) +/* 802483F0 00245350 28 00 00 00 */ cmplwi r0, 0 +/* 802483F4 00245354 41 82 00 18 */ beq lbl_8024840C +/* 802483F8 00245358 28 03 00 00 */ cmplwi r3, 0 +/* 802483FC 0024535C 41 82 00 10 */ beq lbl_8024840C +/* 80248400 00245360 41 82 00 0C */ beq lbl_8024840C +/* 80248404 00245364 38 80 00 00 */ li r4, 0 +/* 80248408 00245368 48 0F 8A 39 */ bl __dt__6CTokenFv +lbl_8024840C: +/* 8024840C 0024536C 9B FE 00 18 */ stb r31, 0x18(r30) +lbl_80248410: +/* 80248410 00245370 28 1E 00 00 */ cmplwi r30, 0 +/* 80248414 00245374 41 82 00 14 */ beq lbl_80248428 +/* 80248418 00245378 41 82 00 10 */ beq lbl_80248428 +/* 8024841C 0024537C 7F C3 F3 78 */ mr r3, r30 +/* 80248420 00245380 38 80 00 00 */ li r4, 0 +/* 80248424 00245384 48 0F 8A 1D */ bl __dt__6CTokenFv +lbl_80248428: +/* 80248428 00245388 3B DE 00 1C */ addi r30, r30, 0x1c +lbl_8024842C: +/* 8024842C 0024538C 7C 1E E8 40 */ cmplw r30, r29 +/* 80248430 00245390 40 82 FF AC */ bne lbl_802483DC +/* 80248434 00245394 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80248438 00245398 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8024843C 0024539C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80248440 002453A0 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80248444 002453A4 7C 08 03 A6 */ mtlr r0 +/* 80248448 002453A8 38 21 00 20 */ addi r1, r1, 0x20 +/* 8024844C 002453AC 4E 80 00 20 */ blr + +.global sub_80248450 +sub_80248450: +/* 80248450 002453B0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80248454 002453B4 7C 08 02 A6 */ mflr r0 +/* 80248458 002453B8 90 01 00 24 */ stw r0, 0x24(r1) +/* 8024845C 002453BC BF 41 00 08 */ stmw r26, 8(r1) +/* 80248460 002453C0 7C 7A 1B 78 */ mr r26, r3 +/* 80248464 002453C4 7C 9B 23 78 */ mr r27, r4 +/* 80248468 002453C8 7C BC 2B 78 */ mr r28, r5 +/* 8024846C 002453CC 80 63 00 00 */ lwz r3, 0(r3) +/* 80248470 002453D0 48 05 44 15 */ bl GetArtifactHeadScanIndex__13CArtifactDollFUi +/* 80248474 002453D4 7C 7F 1B 78 */ mr r31, r3 +/* 80248478 002453D8 80 7B 00 00 */ lwz r3, 0(r27) +/* 8024847C 002453DC 48 05 44 09 */ bl GetArtifactHeadScanIndex__13CArtifactDollFUi +/* 80248480 002453E0 7C 03 F8 00 */ cmpw r3, r31 +/* 80248484 002453E4 40 80 00 24 */ bge lbl_802484A8 +/* 80248488 002453E8 80 7A 00 00 */ lwz r3, 0(r26) +/* 8024848C 002453EC 88 9A 00 04 */ lbz r4, 4(r26) +/* 80248490 002453F0 80 1B 00 00 */ lwz r0, 0(r27) +/* 80248494 002453F4 90 1A 00 00 */ stw r0, 0(r26) +/* 80248498 002453F8 88 1B 00 04 */ lbz r0, 4(r27) +/* 8024849C 002453FC 98 1A 00 04 */ stb r0, 4(r26) +/* 802484A0 00245400 90 7B 00 00 */ stw r3, 0(r27) +/* 802484A4 00245404 98 9B 00 04 */ stb r4, 4(r27) +lbl_802484A8: +/* 802484A8 00245408 80 7B 00 00 */ lwz r3, 0(r27) +/* 802484AC 0024540C 48 05 43 D9 */ bl GetArtifactHeadScanIndex__13CArtifactDollFUi +/* 802484B0 00245410 7C 7F 1B 78 */ mr r31, r3 +/* 802484B4 00245414 80 7C 00 00 */ lwz r3, 0(r28) +/* 802484B8 00245418 48 05 43 CD */ bl GetArtifactHeadScanIndex__13CArtifactDollFUi +/* 802484BC 0024541C 7C 03 F8 00 */ cmpw r3, r31 +/* 802484C0 00245420 40 80 00 5C */ bge lbl_8024851C +/* 802484C4 00245424 83 DC 00 00 */ lwz r30, 0(r28) +/* 802484C8 00245428 8B BC 00 04 */ lbz r29, 4(r28) +/* 802484CC 0024542C 80 1B 00 00 */ lwz r0, 0(r27) +/* 802484D0 00245430 90 1C 00 00 */ stw r0, 0(r28) +/* 802484D4 00245434 88 1B 00 04 */ lbz r0, 4(r27) +/* 802484D8 00245438 98 1C 00 04 */ stb r0, 4(r28) +/* 802484DC 0024543C 80 7A 00 00 */ lwz r3, 0(r26) +/* 802484E0 00245440 48 05 43 A5 */ bl GetArtifactHeadScanIndex__13CArtifactDollFUi +/* 802484E4 00245444 7C 7F 1B 78 */ mr r31, r3 +/* 802484E8 00245448 7F C3 F3 78 */ mr r3, r30 +/* 802484EC 0024544C 48 05 43 99 */ bl GetArtifactHeadScanIndex__13CArtifactDollFUi +/* 802484F0 00245450 7C 03 F8 00 */ cmpw r3, r31 +/* 802484F4 00245454 40 80 00 20 */ bge lbl_80248514 +/* 802484F8 00245458 80 1A 00 00 */ lwz r0, 0(r26) +/* 802484FC 0024545C 90 1B 00 00 */ stw r0, 0(r27) +/* 80248500 00245460 88 1A 00 04 */ lbz r0, 4(r26) +/* 80248504 00245464 98 1B 00 04 */ stb r0, 4(r27) +/* 80248508 00245468 93 DA 00 00 */ stw r30, 0(r26) +/* 8024850C 0024546C 9B BA 00 04 */ stb r29, 4(r26) +/* 80248510 00245470 48 00 00 0C */ b lbl_8024851C +lbl_80248514: +/* 80248514 00245474 93 DB 00 00 */ stw r30, 0(r27) +/* 80248518 00245478 9B BB 00 04 */ stb r29, 4(r27) +lbl_8024851C: +/* 8024851C 0024547C BB 41 00 08 */ lmw r26, 8(r1) +/* 80248520 00245480 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80248524 00245484 7C 08 03 A6 */ mtlr r0 +/* 80248528 00245488 38 21 00 20 */ addi r1, r1, 0x20 +/* 8024852C 0024548C 4E 80 00 20 */ blr + +.global sub_80248530 +sub_80248530: +/* 80248530 00245490 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80248534 00245494 7C 08 02 A6 */ mflr r0 +/* 80248538 00245498 90 01 00 34 */ stw r0, 0x34(r1) +/* 8024853C 0024549C BF 01 00 10 */ stmw r24, 0x10(r1) +/* 80248540 002454A0 7C 78 1B 78 */ mr r24, r3 +/* 80248544 002454A4 7C 99 23 78 */ mr r25, r4 +/* 80248548 002454A8 83 C3 00 00 */ lwz r30, 0(r3) +/* 8024854C 002454AC 3B DE 00 08 */ addi r30, r30, 8 +/* 80248550 002454B0 48 00 00 64 */ b lbl_802485B4 +lbl_80248554: +/* 80248554 002454B4 83 BE 00 00 */ lwz r29, 0(r30) +/* 80248558 002454B8 7F DA F3 78 */ mr r26, r30 +/* 8024855C 002454BC 8B 9E 00 04 */ lbz r28, 4(r30) +/* 80248560 002454C0 3B 7E FF F8 */ addi r27, r30, -8 +/* 80248564 002454C4 48 00 00 1C */ b lbl_80248580 +lbl_80248568: +/* 80248568 002454C8 80 1B 00 00 */ lwz r0, 0(r27) +/* 8024856C 002454CC 90 1A 00 00 */ stw r0, 0(r26) +/* 80248570 002454D0 88 1B 00 04 */ lbz r0, 4(r27) +/* 80248574 002454D4 3B 7B FF F8 */ addi r27, r27, -8 +/* 80248578 002454D8 98 1A 00 04 */ stb r0, 4(r26) +/* 8024857C 002454DC 3B 5A FF F8 */ addi r26, r26, -8 +lbl_80248580: +/* 80248580 002454E0 80 18 00 00 */ lwz r0, 0(r24) +/* 80248584 002454E4 7C 00 D0 40 */ cmplw r0, r26 +/* 80248588 002454E8 40 80 00 20 */ bge lbl_802485A8 +/* 8024858C 002454EC 80 7B 00 00 */ lwz r3, 0(r27) +/* 80248590 002454F0 48 05 42 F5 */ bl GetArtifactHeadScanIndex__13CArtifactDollFUi +/* 80248594 002454F4 7C 7F 1B 78 */ mr r31, r3 +/* 80248598 002454F8 7F A3 EB 78 */ mr r3, r29 +/* 8024859C 002454FC 48 05 42 E9 */ bl GetArtifactHeadScanIndex__13CArtifactDollFUi +/* 802485A0 00245500 7C 03 F8 00 */ cmpw r3, r31 +/* 802485A4 00245504 41 80 FF C4 */ blt lbl_80248568 +lbl_802485A8: +/* 802485A8 00245508 93 BA 00 00 */ stw r29, 0(r26) +/* 802485AC 0024550C 3B DE 00 08 */ addi r30, r30, 8 +/* 802485B0 00245510 9B 9A 00 04 */ stb r28, 4(r26) +lbl_802485B4: +/* 802485B4 00245514 80 19 00 00 */ lwz r0, 0(r25) +/* 802485B8 00245518 7C 1E 00 40 */ cmplw r30, r0 +/* 802485BC 0024551C 41 80 FF 98 */ blt lbl_80248554 +/* 802485C0 00245520 BB 01 00 10 */ lmw r24, 0x10(r1) +/* 802485C4 00245524 80 01 00 34 */ lwz r0, 0x34(r1) +/* 802485C8 00245528 7C 08 03 A6 */ mtlr r0 +/* 802485CC 0024552C 38 21 00 30 */ addi r1, r1, 0x30 +/* 802485D0 00245530 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CMapUniverse.s b/asm/Kyoto_CWD/CMapUniverse.s new file mode 100644 index 00000000..cf9d4ab4 --- /dev/null +++ b/asm/Kyoto_CWD/CMapUniverse.s @@ -0,0 +1,1869 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global FMapUniverseFactory__FRC10SObjectTagR12CInputStreamRC15CVParamTransfer +FMapUniverseFactory__FRC10SObjectTagR12CInputStreamRC15CVParamTransfer: +/* 80201D10 001FEC70 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80201D14 001FEC74 7C 08 02 A6 */ mflr r0 +/* 80201D18 001FEC78 90 01 00 34 */ stw r0, 0x34(r1) +/* 80201D1C 001FEC7C 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80201D20 001FEC80 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80201D24 001FEC84 7C BE 2B 78 */ mr r30, r5 +/* 80201D28 001FEC88 93 A1 00 24 */ stw r29, 0x24(r1) +/* 80201D2C 001FEC8C 7C 7D 1B 78 */ mr r29, r3 +/* 80201D30 001FEC90 7F C3 F3 78 */ mr r3, r30 +/* 80201D34 001FEC94 48 13 CF 51 */ bl ReadLong__12CInputStreamFv +/* 80201D38 001FEC98 7F C3 F3 78 */ mr r3, r30 +/* 80201D3C 001FEC9C 48 13 CF 49 */ bl ReadLong__12CInputStreamFv +/* 80201D40 001FECA0 3C 80 80 3D */ lis r4, lbl_803D2588@ha +/* 80201D44 001FECA4 7C 7F 1B 78 */ mr r31, r3 +/* 80201D48 001FECA8 38 84 25 88 */ addi r4, r4, lbl_803D2588@l +/* 80201D4C 001FECAC 38 60 00 30 */ li r3, 0x30 +/* 80201D50 001FECB0 38 A0 00 00 */ li r5, 0 +/* 80201D54 001FECB4 48 11 3B 19 */ bl __nw__FUlPCcPCc +/* 80201D58 001FECB8 7C 64 1B 79 */ or. r4, r3, r3 +/* 80201D5C 001FECBC 41 82 00 14 */ beq lbl_80201D70 +/* 80201D60 001FECC0 7F C4 F3 78 */ mr r4, r30 +/* 80201D64 001FECC4 7F E5 FB 78 */ mr r5, r31 +/* 80201D68 001FECC8 48 00 0E 65 */ bl __ct__12CMapUniverseFR12CInputStream +/* 80201D6C 001FECCC 7C 64 1B 78 */ mr r4, r3 +lbl_80201D70: +/* 80201D70 001FECD0 7C 04 00 D0 */ neg r0, r4 +/* 80201D74 001FECD4 90 81 00 0C */ stw r4, 0xc(r1) +/* 80201D78 001FECD8 7C 00 23 78 */ or r0, r0, r4 +/* 80201D7C 001FECDC 38 61 00 10 */ addi r3, r1, 0x10 +/* 80201D80 001FECE0 54 00 0F FE */ srwi r0, r0, 0x1f +/* 80201D84 001FECE4 38 81 00 08 */ addi r4, r1, 8 +/* 80201D88 001FECE8 98 01 00 08 */ stb r0, 8(r1) +/* 80201D8C 001FECEC 48 00 01 15 */ bl "GetIObjObjectFor__22TToken<12CMapUniverse>FRCQ24rstl24auto_ptr<12CMapUniverse>" +/* 80201D90 001FECF0 80 61 00 14 */ lwz r3, 0x14(r1) +/* 80201D94 001FECF4 38 00 00 00 */ li r0, 0 +/* 80201D98 001FECF8 98 01 00 10 */ stb r0, 0x10(r1) +/* 80201D9C 001FECFC 7C 03 00 D0 */ neg r0, r3 +/* 80201DA0 001FED00 7C 00 1B 78 */ or r0, r0, r3 +/* 80201DA4 001FED04 54 00 0F FE */ srwi r0, r0, 0x1f +/* 80201DA8 001FED08 98 1D 00 00 */ stb r0, 0(r29) +/* 80201DAC 001FED0C 90 7D 00 04 */ stw r3, 4(r29) +/* 80201DB0 001FED10 88 01 00 10 */ lbz r0, 0x10(r1) +/* 80201DB4 001FED14 28 00 00 00 */ cmplwi r0, 0 +/* 80201DB8 001FED18 41 82 00 24 */ beq lbl_80201DDC +/* 80201DBC 001FED1C 80 61 00 14 */ lwz r3, 0x14(r1) +/* 80201DC0 001FED20 28 03 00 00 */ cmplwi r3, 0 +/* 80201DC4 001FED24 41 82 00 18 */ beq lbl_80201DDC +/* 80201DC8 001FED28 81 83 00 00 */ lwz r12, 0(r3) +/* 80201DCC 001FED2C 38 80 00 01 */ li r4, 1 +/* 80201DD0 001FED30 81 8C 00 08 */ lwz r12, 8(r12) +/* 80201DD4 001FED34 7D 89 03 A6 */ mtctr r12 +/* 80201DD8 001FED38 4E 80 04 21 */ bctrl +lbl_80201DDC: +/* 80201DDC 001FED3C 88 01 00 08 */ lbz r0, 8(r1) +/* 80201DE0 001FED40 28 00 00 00 */ cmplwi r0, 0 +/* 80201DE4 001FED44 41 82 00 10 */ beq lbl_80201DF4 +/* 80201DE8 001FED48 80 61 00 0C */ lwz r3, 0xc(r1) +/* 80201DEC 001FED4C 38 80 00 01 */ li r4, 1 +/* 80201DF0 001FED50 48 00 0B C5 */ bl sub_802029b4 +lbl_80201DF4: +/* 80201DF4 001FED54 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80201DF8 001FED58 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80201DFC 001FED5C 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80201E00 001FED60 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 80201E04 001FED64 7C 08 03 A6 */ mtlr r0 +/* 80201E08 001FED68 38 21 00 30 */ addi r1, r1, 0x30 +/* 80201E0C 001FED6C 4E 80 00 20 */ blr + +.global "__dt__40TObjOwnerDerivedFromIObj<12CMapUniverse>Fv" +"__dt__40TObjOwnerDerivedFromIObj<12CMapUniverse>Fv": +/* 80201E10 001FED70 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80201E14 001FED74 7C 08 02 A6 */ mflr r0 +/* 80201E18 001FED78 90 01 00 14 */ stw r0, 0x14(r1) +/* 80201E1C 001FED7C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80201E20 001FED80 7C 9F 23 78 */ mr r31, r4 +/* 80201E24 001FED84 93 C1 00 08 */ stw r30, 8(r1) +/* 80201E28 001FED88 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80201E2C 001FED8C 41 82 00 58 */ beq lbl_80201E84 +/* 80201E30 001FED90 3C 60 80 3E */ lis r3, lbl_803E6BD0@ha +/* 80201E34 001FED94 38 03 6B D0 */ addi r0, r3, lbl_803E6BD0@l +/* 80201E38 001FED98 90 1E 00 00 */ stw r0, 0(r30) +/* 80201E3C 001FED9C 80 7E 00 04 */ lwz r3, 4(r30) +/* 80201E40 001FEDA0 28 03 00 00 */ cmplwi r3, 0 +/* 80201E44 001FEDA4 41 82 00 0C */ beq lbl_80201E50 +/* 80201E48 001FEDA8 38 80 00 01 */ li r4, 1 +/* 80201E4C 001FEDAC 48 00 0B 69 */ bl sub_802029b4 +lbl_80201E50: +/* 80201E50 001FEDB0 28 1E 00 00 */ cmplwi r30, 0 +/* 80201E54 001FEDB4 41 82 00 20 */ beq lbl_80201E74 +/* 80201E58 001FEDB8 3C 60 80 3E */ lis r3, lbl_803D8D78@ha +/* 80201E5C 001FEDBC 38 03 8D 78 */ addi r0, r3, lbl_803D8D78@l +/* 80201E60 001FEDC0 90 1E 00 00 */ stw r0, 0(r30) +/* 80201E64 001FEDC4 41 82 00 10 */ beq lbl_80201E74 +/* 80201E68 001FEDC8 3C 60 80 3E */ lis r3, lbl_803D8D6C@ha +/* 80201E6C 001FEDCC 38 03 8D 6C */ addi r0, r3, lbl_803D8D6C@l +/* 80201E70 001FEDD0 90 1E 00 00 */ stw r0, 0(r30) +lbl_80201E74: +/* 80201E74 001FEDD4 7F E0 07 35 */ extsh. r0, r31 +/* 80201E78 001FEDD8 40 81 00 0C */ ble lbl_80201E84 +/* 80201E7C 001FEDDC 7F C3 F3 78 */ mr r3, r30 +/* 80201E80 001FEDE0 48 11 3A B1 */ bl Free__7CMemoryFPCv +lbl_80201E84: +/* 80201E84 001FEDE4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80201E88 001FEDE8 7F C3 F3 78 */ mr r3, r30 +/* 80201E8C 001FEDEC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80201E90 001FEDF0 83 C1 00 08 */ lwz r30, 8(r1) +/* 80201E94 001FEDF4 7C 08 03 A6 */ mtlr r0 +/* 80201E98 001FEDF8 38 21 00 10 */ addi r1, r1, 0x10 +/* 80201E9C 001FEDFC 4E 80 00 20 */ blr + +.global "GetIObjObjectFor__22TToken<12CMapUniverse>FRCQ24rstl24auto_ptr<12CMapUniverse>" +"GetIObjObjectFor__22TToken<12CMapUniverse>FRCQ24rstl24auto_ptr<12CMapUniverse>": +/* 80201EA0 001FEE00 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80201EA4 001FEE04 7C 08 02 A6 */ mflr r0 +/* 80201EA8 001FEE08 90 01 00 14 */ stw r0, 0x14(r1) +/* 80201EAC 001FEE0C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80201EB0 001FEE10 7C 7F 1B 78 */ mr r31, r3 +/* 80201EB4 001FEE14 48 00 00 19 */ bl "GetNewDerivedObject__40TObjOwnerDerivedFromIObj<12CMapUniverse>FRCQ24rstl24auto_ptr<12CMapUniverse>" +/* 80201EB8 001FEE18 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80201EBC 001FEE1C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80201EC0 001FEE20 7C 08 03 A6 */ mtlr r0 +/* 80201EC4 001FEE24 38 21 00 10 */ addi r1, r1, 0x10 +/* 80201EC8 001FEE28 4E 80 00 20 */ blr + +.global "GetNewDerivedObject__40TObjOwnerDerivedFromIObj<12CMapUniverse>FRCQ24rstl24auto_ptr<12CMapUniverse>" +"GetNewDerivedObject__40TObjOwnerDerivedFromIObj<12CMapUniverse>FRCQ24rstl24auto_ptr<12CMapUniverse>": +/* 80201ECC 001FEE2C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80201ED0 001FEE30 7C 08 02 A6 */ mflr r0 +/* 80201ED4 001FEE34 3C A0 80 3D */ lis r5, lbl_803D2588@ha +/* 80201ED8 001FEE38 90 01 00 14 */ stw r0, 0x14(r1) +/* 80201EDC 001FEE3C 38 05 25 88 */ addi r0, r5, lbl_803D2588@l +/* 80201EE0 001FEE40 38 A0 00 00 */ li r5, 0 +/* 80201EE4 001FEE44 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80201EE8 001FEE48 7C 9F 23 78 */ mr r31, r4 +/* 80201EEC 001FEE4C 7C 04 03 78 */ mr r4, r0 +/* 80201EF0 001FEE50 93 C1 00 08 */ stw r30, 8(r1) +/* 80201EF4 001FEE54 7C 7E 1B 78 */ mr r30, r3 +/* 80201EF8 001FEE58 38 60 00 08 */ li r3, 8 +/* 80201EFC 001FEE5C 48 11 39 71 */ bl __nw__FUlPCcPCc +/* 80201F00 001FEE60 28 03 00 00 */ cmplwi r3, 0 +/* 80201F04 001FEE64 41 82 00 38 */ beq lbl_80201F3C +/* 80201F08 001FEE68 3C 80 80 3E */ lis r4, lbl_803D8D6C@ha +/* 80201F0C 001FEE6C 3C A0 80 3E */ lis r5, lbl_803D8D78@ha +/* 80201F10 001FEE70 38 04 8D 6C */ addi r0, r4, lbl_803D8D6C@l +/* 80201F14 001FEE74 3C 80 80 3E */ lis r4, lbl_803E6BD0@ha +/* 80201F18 001FEE78 90 03 00 00 */ stw r0, 0(r3) +/* 80201F1C 001FEE7C 38 C5 8D 78 */ addi r6, r5, lbl_803D8D78@l +/* 80201F20 001FEE80 38 A0 00 00 */ li r5, 0 +/* 80201F24 001FEE84 38 04 6B D0 */ addi r0, r4, lbl_803E6BD0@l +/* 80201F28 001FEE88 90 C3 00 00 */ stw r6, 0(r3) +/* 80201F2C 001FEE8C 98 BF 00 00 */ stb r5, 0(r31) +/* 80201F30 001FEE90 80 9F 00 04 */ lwz r4, 4(r31) +/* 80201F34 001FEE94 90 83 00 04 */ stw r4, 4(r3) +/* 80201F38 001FEE98 90 03 00 00 */ stw r0, 0(r3) +lbl_80201F3C: +/* 80201F3C 001FEE9C 7C 03 00 D0 */ neg r0, r3 +/* 80201F40 001FEEA0 7C 00 1B 78 */ or r0, r0, r3 +/* 80201F44 001FEEA4 54 00 0F FE */ srwi r0, r0, 0x1f +/* 80201F48 001FEEA8 98 1E 00 00 */ stb r0, 0(r30) +/* 80201F4C 001FEEAC 90 7E 00 04 */ stw r3, 4(r30) +/* 80201F50 001FEEB0 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80201F54 001FEEB4 83 C1 00 08 */ lwz r30, 8(r1) +/* 80201F58 001FEEB8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80201F5C 001FEEBC 7C 08 03 A6 */ mtlr r0 +/* 80201F60 001FEEC0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80201F64 001FEEC4 4E 80 00 20 */ blr + +.global GetMapWorldDataByWorldId__12CMapUniverseFUi +GetMapWorldDataByWorldId__12CMapUniverseFUi: +/* 80201F68 001FEEC8 80 03 00 14 */ lwz r0, 0x14(r3) +/* 80201F6C 001FEECC 38 C0 00 00 */ li r6, 0 +/* 80201F70 001FEED0 7C 09 03 A6 */ mtctr r0 +/* 80201F74 001FEED4 2C 00 00 00 */ cmpwi r0, 0 +/* 80201F78 001FEED8 40 81 00 28 */ ble lbl_80201FA0 +lbl_80201F7C: +/* 80201F7C 001FEEDC 80 03 00 1C */ lwz r0, 0x1c(r3) +/* 80201F80 001FEEE0 7C A0 32 14 */ add r5, r0, r6 +/* 80201F84 001FEEE4 80 05 00 10 */ lwz r0, 0x10(r5) +/* 80201F88 001FEEE8 7C 04 00 40 */ cmplw r4, r0 +/* 80201F8C 001FEEEC 40 82 00 0C */ bne lbl_80201F98 +/* 80201F90 001FEEF0 7C A3 2B 78 */ mr r3, r5 +/* 80201F94 001FEEF4 4E 80 00 20 */ blr +lbl_80201F98: +/* 80201F98 001FEEF8 38 C6 00 70 */ addi r6, r6, 0x70 +/* 80201F9C 001FEEFC 42 00 FF E0 */ bdnz lbl_80201F7C +lbl_80201FA0: +/* 80201FA0 001FEF00 80 63 00 1C */ lwz r3, 0x1c(r3) +/* 80201FA4 001FEF04 4E 80 00 20 */ blr + +.global __ct__Q212CMapUniverse13CMapWorldDataFR12CInputStream +__ct__Q212CMapUniverse13CMapWorldDataFR12CInputStream: +/* 80201FA8 001FEF08 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 80201FAC 001FEF0C 7C 08 02 A6 */ mflr r0 +/* 80201FB0 001FEF10 90 01 00 94 */ stw r0, 0x94(r1) +/* 80201FB4 001FEF14 DB E1 00 80 */ stfd f31, 0x80(r1) +/* 80201FB8 001FEF18 F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0 +/* 80201FBC 001FEF1C BF 61 00 6C */ stmw r27, 0x6c(r1) +/* 80201FC0 001FEF20 7C BF 2B 78 */ mr r31, r5 +/* 80201FC4 001FEF24 7C 7E 1B 78 */ mr r30, r3 +/* 80201FC8 001FEF28 7C 9B 23 78 */ mr r27, r4 +/* 80201FCC 001FEF2C 38 A1 00 0C */ addi r5, r1, 0xc +/* 80201FD0 001FEF30 48 13 C3 29 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FR12CInputStreamRCQ24rstl17rmemory_allocator" +/* 80201FD4 001FEF34 7F 63 DB 78 */ mr r3, r27 +/* 80201FD8 001FEF38 48 13 CC AD */ bl ReadLong__12CInputStreamFv +/* 80201FDC 001FEF3C 90 7E 00 10 */ stw r3, 0x10(r30) +/* 80201FE0 001FEF40 7F 64 DB 78 */ mr r4, r27 +/* 80201FE4 001FEF44 38 7E 00 14 */ addi r3, r30, 0x14 +/* 80201FE8 001FEF48 48 11 12 F5 */ bl __ct__12CTransform4fFR12CInputStream +/* 80201FEC 001FEF4C 38 00 00 00 */ li r0, 0 +/* 80201FF0 001FEF50 7F 63 DB 78 */ mr r3, r27 +/* 80201FF4 001FEF54 90 1E 00 48 */ stw r0, 0x48(r30) +/* 80201FF8 001FEF58 90 1E 00 4C */ stw r0, 0x4c(r30) +/* 80201FFC 001FEF5C 90 1E 00 50 */ stw r0, 0x50(r30) +/* 80202000 001FEF60 48 13 CC 85 */ bl ReadLong__12CInputStreamFv +/* 80202004 001FEF64 7C 7C 1B 78 */ mr r28, r3 +/* 80202008 001FEF68 38 7E 00 44 */ addi r3, r30, 0x44 +/* 8020200C 001FEF6C 7F 84 E3 78 */ mr r4, r28 +/* 80202010 001FEF70 48 00 11 51 */ bl sub_80203160 +/* 80202014 001FEF74 3B A0 00 00 */ li r29, 0 +/* 80202018 001FEF78 48 00 00 64 */ b lbl_8020207C +lbl_8020201C: +/* 8020201C 001FEF7C 7F 64 DB 78 */ mr r4, r27 +/* 80202020 001FEF80 38 61 00 24 */ addi r3, r1, 0x24 +/* 80202024 001FEF84 48 00 02 21 */ bl __ct__Q212CMapUniverse12CMapAreaDataFR12CInputStream +/* 80202028 001FEF88 80 1E 00 48 */ lwz r0, 0x48(r30) +/* 8020202C 001FEF8C 80 BE 00 4C */ lwz r5, 0x4c(r30) +/* 80202030 001FEF90 7C 00 28 00 */ cmpw r0, r5 +/* 80202034 001FEF94 41 80 00 1C */ blt lbl_80202050 +/* 80202038 001FEF98 2C 05 00 00 */ cmpwi r5, 0 +/* 8020203C 001FEF9C 38 7E 00 44 */ addi r3, r30, 0x44 +/* 80202040 001FEFA0 38 80 00 04 */ li r4, 4 +/* 80202044 001FEFA4 41 82 00 08 */ beq lbl_8020204C +/* 80202048 001FEFA8 54 A4 08 3C */ slwi r4, r5, 1 +lbl_8020204C: +/* 8020204C 001FEFAC 48 00 11 15 */ bl sub_80203160 +lbl_80202050: +/* 80202050 001FEFB0 80 1E 00 48 */ lwz r0, 0x48(r30) +/* 80202054 001FEFB4 80 7E 00 50 */ lwz r3, 0x50(r30) +/* 80202058 001FEFB8 1C 00 00 30 */ mulli r0, r0, 0x30 +/* 8020205C 001FEFBC 7C 63 02 15 */ add. r3, r3, r0 +/* 80202060 001FEFC0 41 82 00 0C */ beq lbl_8020206C +/* 80202064 001FEFC4 38 81 00 24 */ addi r4, r1, 0x24 +/* 80202068 001FEFC8 48 11 0B 0D */ bl __ct__12CTransform4fFRC12CTransform4f +lbl_8020206C: +/* 8020206C 001FEFCC 80 7E 00 48 */ lwz r3, 0x48(r30) +/* 80202070 001FEFD0 3B BD 00 01 */ addi r29, r29, 1 +/* 80202074 001FEFD4 38 03 00 01 */ addi r0, r3, 1 +/* 80202078 001FEFD8 90 1E 00 48 */ stw r0, 0x48(r30) +lbl_8020207C: +/* 8020207C 001FEFDC 7C 1D E0 00 */ cmpw r29, r28 +/* 80202080 001FEFE0 41 80 FF 9C */ blt lbl_8020201C +/* 80202084 001FEFE4 28 1F 00 00 */ cmplwi r31, 0 +/* 80202088 001FEFE8 41 82 00 14 */ beq lbl_8020209C +/* 8020208C 001FEFEC 7F 64 DB 78 */ mr r4, r27 +/* 80202090 001FEFF0 38 61 00 20 */ addi r3, r1, 0x20 +/* 80202094 001FEFF4 48 16 13 B9 */ bl __ct__6CColorFR12CInputStream +/* 80202098 001FEFF8 48 00 00 10 */ b lbl_802020A8 +lbl_8020209C: +/* 8020209C 001FEFFC 38 00 00 00 */ li r0, 0 +/* 802020A0 001FF000 38 61 00 1C */ addi r3, r1, 0x1c +/* 802020A4 001FF004 90 01 00 1C */ stw r0, 0x1c(r1) +lbl_802020A8: +/* 802020A8 001FF008 80 A3 00 00 */ lwz r5, 0(r3) +/* 802020AC 001FF00C 38 80 00 FF */ li r4, 0xff +/* 802020B0 001FF010 38 00 00 00 */ li r0, 0 +/* 802020B4 001FF014 3C 60 80 5A */ lis r3, skZero3f@ha +/* 802020B8 001FF018 90 BE 00 54 */ stw r5, 0x54(r30) +/* 802020BC 001FF01C 28 1F 00 00 */ cmplwi r31, 0 +/* 802020C0 001FF020 98 9E 00 58 */ stb r4, 0x58(r30) +/* 802020C4 001FF024 98 1E 00 59 */ stb r0, 0x59(r30) +/* 802020C8 001FF028 98 9E 00 5A */ stb r4, 0x5a(r30) +/* 802020CC 001FF02C 98 9E 00 5B */ stb r4, 0x5b(r30) +/* 802020D0 001FF030 98 9E 00 5C */ stb r4, 0x5c(r30) +/* 802020D4 001FF034 98 1E 00 5D */ stb r0, 0x5d(r30) +/* 802020D8 001FF038 98 9E 00 5E */ stb r4, 0x5e(r30) +/* 802020DC 001FF03C 98 9E 00 5F */ stb r4, 0x5f(r30) +/* 802020E0 001FF040 98 9E 00 60 */ stb r4, 0x60(r30) +/* 802020E4 001FF044 98 1E 00 61 */ stb r0, 0x61(r30) +/* 802020E8 001FF048 98 9E 00 62 */ stb r4, 0x62(r30) +/* 802020EC 001FF04C 98 9E 00 63 */ stb r4, 0x63(r30) +/* 802020F0 001FF050 C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) +/* 802020F4 001FF054 D0 1E 00 64 */ stfs f0, 0x64(r30) +/* 802020F8 001FF058 C0 03 00 04 */ lfs f0, 4(r3) +/* 802020FC 001FF05C D0 1E 00 68 */ stfs f0, 0x68(r30) +/* 80202100 001FF060 C0 03 00 08 */ lfs f0, 8(r3) +/* 80202104 001FF064 D0 1E 00 6C */ stfs f0, 0x6c(r30) +/* 80202108 001FF068 40 82 00 1C */ bne lbl_80202124 +/* 8020210C 001FF06C C3 E2 B0 48 */ lfs f31, lbl_805ACD68@sda21(r2) +/* 80202110 001FF070 80 7E 00 10 */ lwz r3, 0x10(r30) +/* 80202114 001FF074 F3 E1 A0 08 */ psq_st f31, 8(r1), 1, qr2 +/* 80202118 001FF078 88 01 00 08 */ lbz r0, 8(r1) +/* 8020211C 001FF07C 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 80202120 001FF080 90 1E 00 54 */ stw r0, 0x54(r30) +lbl_80202124: +/* 80202124 001FF084 48 14 7E 89 */ bl White__6CColorFv +/* 80202128 001FF088 C0 22 B0 4C */ lfs f1, lbl_805ACD6C@sda21(r2) +/* 8020212C 001FF08C 7C 64 1B 78 */ mr r4, r3 +/* 80202130 001FF090 38 61 00 18 */ addi r3, r1, 0x18 +/* 80202134 001FF094 38 BE 00 54 */ addi r5, r30, 0x54 +/* 80202138 001FF098 48 16 11 75 */ bl Lerp__6CColorFRC6CColorRC6CColorf +/* 8020213C 001FF09C 80 01 00 18 */ lwz r0, 0x18(r1) +/* 80202140 001FF0A0 90 1E 00 58 */ stw r0, 0x58(r30) +/* 80202144 001FF0A4 48 14 7E 71 */ bl Black__6CColorFv +/* 80202148 001FF0A8 C0 22 B0 4C */ lfs f1, lbl_805ACD6C@sda21(r2) +/* 8020214C 001FF0AC 7C 64 1B 78 */ mr r4, r3 +/* 80202150 001FF0B0 38 61 00 14 */ addi r3, r1, 0x14 +/* 80202154 001FF0B4 38 BE 00 54 */ addi r5, r30, 0x54 +/* 80202158 001FF0B8 48 16 11 55 */ bl Lerp__6CColorFRC6CColorRC6CColorf +/* 8020215C 001FF0BC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80202160 001FF0C0 90 1E 00 5C */ stw r0, 0x5c(r30) +/* 80202164 001FF0C4 48 14 7E 49 */ bl White__6CColorFv +/* 80202168 001FF0C8 C0 22 B0 4C */ lfs f1, lbl_805ACD6C@sda21(r2) +/* 8020216C 001FF0CC 7C 64 1B 78 */ mr r4, r3 +/* 80202170 001FF0D0 38 61 00 10 */ addi r3, r1, 0x10 +/* 80202174 001FF0D4 38 BE 00 5C */ addi r5, r30, 0x5c +/* 80202178 001FF0D8 48 16 11 35 */ bl Lerp__6CColorFRC6CColorRC6CColorf +/* 8020217C 001FF0DC 80 01 00 10 */ lwz r0, 0x10(r1) +/* 80202180 001FF0E0 38 A0 00 00 */ li r5, 0 +/* 80202184 001FF0E4 38 80 00 00 */ li r4, 0 +/* 80202188 001FF0E8 90 1E 00 60 */ stw r0, 0x60(r30) +/* 8020218C 001FF0EC 48 00 00 44 */ b lbl_802021D0 +lbl_80202190: +/* 80202190 001FF0F0 80 1E 00 50 */ lwz r0, 0x50(r30) +/* 80202194 001FF0F4 38 A5 00 01 */ addi r5, r5, 1 +/* 80202198 001FF0F8 C0 3E 00 64 */ lfs f1, 0x64(r30) +/* 8020219C 001FF0FC 7C 60 22 14 */ add r3, r0, r4 +/* 802021A0 001FF100 38 84 00 30 */ addi r4, r4, 0x30 +/* 802021A4 001FF104 C0 03 00 0C */ lfs f0, 0xc(r3) +/* 802021A8 001FF108 C0 43 00 2C */ lfs f2, 0x2c(r3) +/* 802021AC 001FF10C EC 01 00 2A */ fadds f0, f1, f0 +/* 802021B0 001FF110 C0 23 00 1C */ lfs f1, 0x1c(r3) +/* 802021B4 001FF114 D0 1E 00 64 */ stfs f0, 0x64(r30) +/* 802021B8 001FF118 C0 1E 00 68 */ lfs f0, 0x68(r30) +/* 802021BC 001FF11C EC 00 08 2A */ fadds f0, f0, f1 +/* 802021C0 001FF120 D0 1E 00 68 */ stfs f0, 0x68(r30) +/* 802021C4 001FF124 C0 1E 00 6C */ lfs f0, 0x6c(r30) +/* 802021C8 001FF128 EC 00 10 2A */ fadds f0, f0, f2 +/* 802021CC 001FF12C D0 1E 00 6C */ stfs f0, 0x6c(r30) +lbl_802021D0: +/* 802021D0 001FF130 80 1E 00 48 */ lwz r0, 0x48(r30) +/* 802021D4 001FF134 7C 05 00 00 */ cmpw r5, r0 +/* 802021D8 001FF138 41 80 FF B8 */ blt lbl_80202190 +/* 802021DC 001FF13C 6C 03 80 00 */ xoris r3, r0, 0x8000 +/* 802021E0 001FF140 3C 00 43 30 */ lis r0, 0x4330 +/* 802021E4 001FF144 90 61 00 5C */ stw r3, 0x5c(r1) +/* 802021E8 001FF148 7F C3 F3 78 */ mr r3, r30 +/* 802021EC 001FF14C C8 42 B0 58 */ lfd f2, lbl_805ACD78@sda21(r2) +/* 802021F0 001FF150 90 01 00 58 */ stw r0, 0x58(r1) +/* 802021F4 001FF154 C0 62 B0 50 */ lfs f3, lbl_805ACD70@sda21(r2) +/* 802021F8 001FF158 C8 21 00 58 */ lfd f1, 0x58(r1) +/* 802021FC 001FF15C C0 1E 00 64 */ lfs f0, 0x64(r30) +/* 80202200 001FF160 EC 21 10 28 */ fsubs f1, f1, f2 +/* 80202204 001FF164 EC 23 08 24 */ fdivs f1, f3, f1 +/* 80202208 001FF168 EC 00 00 72 */ fmuls f0, f0, f1 +/* 8020220C 001FF16C D0 1E 00 64 */ stfs f0, 0x64(r30) +/* 80202210 001FF170 C0 1E 00 68 */ lfs f0, 0x68(r30) +/* 80202214 001FF174 EC 00 00 72 */ fmuls f0, f0, f1 +/* 80202218 001FF178 D0 1E 00 68 */ stfs f0, 0x68(r30) +/* 8020221C 001FF17C C0 1E 00 6C */ lfs f0, 0x6c(r30) +/* 80202220 001FF180 EC 00 00 72 */ fmuls f0, f0, f1 +/* 80202224 001FF184 D0 1E 00 6C */ stfs f0, 0x6c(r30) +/* 80202228 001FF188 E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0 +/* 8020222C 001FF18C CB E1 00 80 */ lfd f31, 0x80(r1) +/* 80202230 001FF190 BB 61 00 6C */ lmw r27, 0x6c(r1) +/* 80202234 001FF194 80 01 00 94 */ lwz r0, 0x94(r1) +/* 80202238 001FF198 7C 08 03 A6 */ mtlr r0 +/* 8020223C 001FF19C 38 21 00 90 */ addi r1, r1, 0x90 +/* 80202240 001FF1A0 4E 80 00 20 */ blr + +.global __ct__Q212CMapUniverse12CMapAreaDataFR12CInputStream +__ct__Q212CMapUniverse12CMapAreaDataFR12CInputStream: +/* 80202244 001FF1A4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80202248 001FF1A8 7C 08 02 A6 */ mflr r0 +/* 8020224C 001FF1AC 90 01 00 14 */ stw r0, 0x14(r1) +/* 80202250 001FF1B0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80202254 001FF1B4 7C 7F 1B 78 */ mr r31, r3 +/* 80202258 001FF1B8 48 11 10 85 */ bl __ct__12CTransform4fFR12CInputStream +/* 8020225C 001FF1BC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80202260 001FF1C0 7F E3 FB 78 */ mr r3, r31 +/* 80202264 001FF1C4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80202268 001FF1C8 7C 08 03 A6 */ mtlr r0 +/* 8020226C 001FF1CC 38 21 00 10 */ addi r1, r1, 0x10 +/* 80202270 001FF1D0 4E 80 00 20 */ blr + +.global Draw__12CMapUniverseCFRCQ212CMapUniverse21CMapUniverseDrawParmsRC9CVector3fff +Draw__12CMapUniverseCFRCQ212CMapUniverse21CMapUniverseDrawParmsRC9CVector3fff: +/* 80202274 001FF1D4 94 21 FD A0 */ stwu r1, -0x260(r1) +/* 80202278 001FF1D8 7C 08 02 A6 */ mflr r0 +/* 8020227C 001FF1DC 90 01 02 64 */ stw r0, 0x264(r1) +/* 80202280 001FF1E0 DB E1 02 50 */ stfd f31, 0x250(r1) +/* 80202284 001FF1E4 F3 E1 02 58 */ psq_st f31, 600(r1), 0, qr0 +/* 80202288 001FF1E8 DB C1 02 40 */ stfd f30, 0x240(r1) +/* 8020228C 001FF1EC F3 C1 02 48 */ psq_st f30, 584(r1), 0, qr0 +/* 80202290 001FF1F0 DB A1 02 30 */ stfd f29, 0x230(r1) +/* 80202294 001FF1F4 F3 A1 02 38 */ psq_st f29, 568(r1), 0, qr0 +/* 80202298 001FF1F8 DB 81 02 20 */ stfd f28, 0x220(r1) +/* 8020229C 001FF1FC F3 81 02 28 */ psq_st f28, 552(r1), 0, qr0 +/* 802022A0 001FF200 DB 61 02 10 */ stfd f27, 0x210(r1) +/* 802022A4 001FF204 F3 61 02 18 */ psq_st f27, 536(r1), 0, qr0 +/* 802022A8 001FF208 BE 21 01 D4 */ stmw r17, 0x1d4(r1) +/* 802022AC 001FF20C 7C 7C 1B 78 */ mr r28, r3 +/* 802022B0 001FF210 7C 9D 23 78 */ mr r29, r4 +/* 802022B4 001FF214 80 03 00 0C */ lwz r0, 0xc(r3) +/* 802022B8 001FF218 28 00 00 00 */ cmplwi r0, 0 +/* 802022BC 001FF21C 41 82 00 0C */ beq lbl_802022C8 +/* 802022C0 001FF220 38 60 00 01 */ li r3, 1 +/* 802022C4 001FF224 48 00 00 3C */ b lbl_80202300 +lbl_802022C8: +/* 802022C8 001FF228 88 1C 00 08 */ lbz r0, 8(r28) +/* 802022CC 001FF22C 28 00 00 00 */ cmplwi r0, 0 +/* 802022D0 001FF230 41 82 00 2C */ beq lbl_802022FC +/* 802022D4 001FF234 80 7C 00 04 */ lwz r3, 4(r28) +/* 802022D8 001FF238 80 03 00 10 */ lwz r0, 0x10(r3) +/* 802022DC 001FF23C 28 00 00 00 */ cmplwi r0, 0 +/* 802022E0 001FF240 41 82 00 1C */ beq lbl_802022FC +/* 802022E4 001FF244 38 7C 00 04 */ addi r3, r28, 4 +/* 802022E8 001FF248 48 13 EB 25 */ bl GetObj__6CTokenFv +/* 802022EC 001FF24C 80 03 00 04 */ lwz r0, 4(r3) +/* 802022F0 001FF250 38 60 00 01 */ li r3, 1 +/* 802022F4 001FF254 90 1C 00 0C */ stw r0, 0xc(r28) +/* 802022F8 001FF258 48 00 00 08 */ b lbl_80202300 +lbl_802022FC: +/* 802022FC 001FF25C 38 60 00 00 */ li r3, 0 +lbl_80202300: +/* 80202300 001FF260 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80202304 001FF264 41 82 06 74 */ beq lbl_80202978 +/* 80202308 001FF268 80 7C 00 14 */ lwz r3, 0x14(r28) +/* 8020230C 001FF26C 38 80 00 00 */ li r4, 0 +/* 80202310 001FF270 80 DC 00 0C */ lwz r6, 0xc(r28) +/* 80202314 001FF274 38 A0 00 00 */ li r5, 0 +/* 80202318 001FF278 2C 03 00 00 */ cmpwi r3, 0 +/* 8020231C 001FF27C 80 06 00 30 */ lwz r0, 0x30(r6) +/* 80202320 001FF280 40 81 00 CC */ ble lbl_802023EC +/* 80202324 001FF284 2C 03 00 08 */ cmpwi r3, 8 +/* 80202328 001FF288 38 E3 FF F8 */ addi r7, r3, -8 +/* 8020232C 001FF28C 40 81 00 90 */ ble lbl_802023BC +/* 80202330 001FF290 38 C7 00 07 */ addi r6, r7, 7 +/* 80202334 001FF294 3A 20 00 00 */ li r17, 0 +/* 80202338 001FF298 54 C6 E8 FE */ srwi r6, r6, 3 +/* 8020233C 001FF29C 7C C9 03 A6 */ mtctr r6 +/* 80202340 001FF2A0 2C 07 00 00 */ cmpwi r7, 0 +/* 80202344 001FF2A4 40 81 00 78 */ ble lbl_802023BC +lbl_80202348: +/* 80202348 001FF2A8 80 DC 00 1C */ lwz r6, 0x1c(r28) +/* 8020234C 001FF2AC 38 A5 00 08 */ addi r5, r5, 8 +/* 80202350 001FF2B0 7E 66 8A 14 */ add r19, r6, r17 +/* 80202354 001FF2B4 3A 31 03 80 */ addi r17, r17, 0x380 +/* 80202358 001FF2B8 80 D3 00 48 */ lwz r6, 0x48(r19) +/* 8020235C 001FF2BC 81 93 00 B8 */ lwz r12, 0xb8(r19) +/* 80202360 001FF2C0 7E 40 31 D6 */ mullw r18, r0, r6 +/* 80202364 001FF2C4 81 73 01 28 */ lwz r11, 0x128(r19) +/* 80202368 001FF2C8 81 53 01 98 */ lwz r10, 0x198(r19) +/* 8020236C 001FF2CC 81 33 02 08 */ lwz r9, 0x208(r19) +/* 80202370 001FF2D0 81 13 02 78 */ lwz r8, 0x278(r19) +/* 80202374 001FF2D4 80 F3 02 E8 */ lwz r7, 0x2e8(r19) +/* 80202378 001FF2D8 80 D3 03 58 */ lwz r6, 0x358(r19) +/* 8020237C 001FF2DC 7D 80 61 D6 */ mullw r12, r0, r12 +/* 80202380 001FF2E0 7C 84 92 14 */ add r4, r4, r18 +/* 80202384 001FF2E4 7D 60 59 D6 */ mullw r11, r0, r11 +/* 80202388 001FF2E8 7C 84 62 14 */ add r4, r4, r12 +/* 8020238C 001FF2EC 7D 40 51 D6 */ mullw r10, r0, r10 +/* 80202390 001FF2F0 7C 84 5A 14 */ add r4, r4, r11 +/* 80202394 001FF2F4 7D 20 49 D6 */ mullw r9, r0, r9 +/* 80202398 001FF2F8 7C 84 52 14 */ add r4, r4, r10 +/* 8020239C 001FF2FC 7D 00 41 D6 */ mullw r8, r0, r8 +/* 802023A0 001FF300 7C 84 4A 14 */ add r4, r4, r9 +/* 802023A4 001FF304 7C E0 39 D6 */ mullw r7, r0, r7 +/* 802023A8 001FF308 7C 84 42 14 */ add r4, r4, r8 +/* 802023AC 001FF30C 7C C0 31 D6 */ mullw r6, r0, r6 +/* 802023B0 001FF310 7C 84 3A 14 */ add r4, r4, r7 +/* 802023B4 001FF314 7C 84 32 14 */ add r4, r4, r6 +/* 802023B8 001FF318 42 00 FF 90 */ bdnz lbl_80202348 +lbl_802023BC: +/* 802023BC 001FF31C 7C C5 18 50 */ subf r6, r5, r3 +/* 802023C0 001FF320 1C E5 00 70 */ mulli r7, r5, 0x70 +/* 802023C4 001FF324 7C C9 03 A6 */ mtctr r6 +/* 802023C8 001FF328 7C 05 18 00 */ cmpw r5, r3 +/* 802023CC 001FF32C 40 80 00 20 */ bge lbl_802023EC +lbl_802023D0: +/* 802023D0 001FF330 80 BC 00 1C */ lwz r5, 0x1c(r28) +/* 802023D4 001FF334 38 67 00 48 */ addi r3, r7, 0x48 +/* 802023D8 001FF338 38 E7 00 70 */ addi r7, r7, 0x70 +/* 802023DC 001FF33C 7C 65 18 2E */ lwzx r3, r5, r3 +/* 802023E0 001FF340 7C 60 19 D6 */ mullw r3, r0, r3 +/* 802023E4 001FF344 7C 84 1A 14 */ add r4, r4, r3 +/* 802023E8 001FF348 42 00 FF E8 */ bdnz lbl_802023D0 +lbl_802023EC: +/* 802023EC 001FF34C 38 00 00 00 */ li r0, 0 +/* 802023F0 001FF350 38 61 00 AC */ addi r3, r1, 0xac +/* 802023F4 001FF354 90 01 00 B0 */ stw r0, 0xb0(r1) +/* 802023F8 001FF358 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 802023FC 001FF35C 90 01 00 B8 */ stw r0, 0xb8(r1) +/* 80202400 001FF360 48 00 0F C9 */ bl sub_802033c8 +/* 80202404 001FF364 C3 7D 00 00 */ lfs f27, 0(r29) +/* 80202408 001FF368 3B C0 00 00 */ li r30, 0 +/* 8020240C 001FF36C 83 3D 00 18 */ lwz r25, 0x18(r29) +/* 80202410 001FF370 3B E0 00 00 */ li r31, 0 +/* 80202414 001FF374 83 1D 00 1C */ lwz r24, 0x1c(r29) +/* 80202418 001FF378 82 FC 00 0C */ lwz r23, 0xc(r28) +/* 8020241C 001FF37C 48 00 02 98 */ b lbl_802026B4 +lbl_80202420: +/* 80202420 001FF380 80 1C 00 1C */ lwz r0, 0x1c(r28) +/* 80202424 001FF384 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) +/* 80202428 001FF388 7E C0 FA 14 */ add r22, r0, r31 +/* 8020242C 001FF38C 80 96 00 10 */ lwz r4, 0x10(r22) +/* 80202430 001FF390 4B FD 15 A9 */ bl StateForWorld__10CGameStateFUi +/* 80202434 001FF394 7C 64 1B 78 */ mr r4, r3 +/* 80202438 001FF398 38 61 00 5C */ addi r3, r1, 0x5c +/* 8020243C 001FF39C 4B FD 29 29 */ bl GetMapWorldInfo__11CWorldStateCFv +/* 80202440 001FF3A0 80 61 00 5C */ lwz r3, 0x5c(r1) +/* 80202444 001FF3A4 80 63 00 00 */ lwz r3, 0(r3) +/* 80202448 001FF3A8 4B F6 57 CD */ bl IsAnythingSet__13CMapWorldInfoFv +/* 8020244C 001FF3AC 7C 72 1B 78 */ mr r18, r3 +/* 80202450 001FF3B0 38 61 00 5C */ addi r3, r1, 0x5c +/* 80202454 001FF3B4 4B E0 67 E9 */ bl sub_80008c3c +/* 80202458 001FF3B8 56 40 06 3F */ clrlwi. r0, r18, 0x18 +/* 8020245C 001FF3BC 41 82 02 50 */ beq lbl_802026AC +/* 80202460 001FF3C0 80 1D 00 04 */ lwz r0, 4(r29) +/* 80202464 001FF3C4 7C 1E 00 50 */ subf r0, r30, r0 +/* 80202468 001FF3C8 7C 03 00 34 */ cntlzw r3, r0 +/* 8020246C 001FF3CC 54 60 DE 3F */ rlwinm. r0, r3, 0x1b, 0x18, 0x1f +/* 80202470 001FF3D0 54 64 D9 7E */ srwi r4, r3, 5 +/* 80202474 001FF3D4 41 82 00 40 */ beq lbl_802024B4 +/* 80202478 001FF3D8 88 76 00 57 */ lbz r3, 0x57(r22) +/* 8020247C 001FF3DC 3C 00 43 30 */ lis r0, 0x4330 +/* 80202480 001FF3E0 90 01 01 C8 */ stw r0, 0x1c8(r1) +/* 80202484 001FF3E4 C8 22 B0 68 */ lfd f1, lbl_805ACD88@sda21(r2) +/* 80202488 001FF3E8 90 61 01 CC */ stw r3, 0x1cc(r1) +/* 8020248C 001FF3EC C8 01 01 C8 */ lfd f0, 0x1c8(r1) +/* 80202490 001FF3F0 EC 00 08 28 */ fsubs f0, f0, f1 +/* 80202494 001FF3F4 EF FB 00 32 */ fmuls f31, f27, f0 +/* 80202498 001FF3F8 F3 E1 A0 0B */ psq_st f31, 11(r1), 1, qr2 +/* 8020249C 001FF3FC 3B 61 00 58 */ addi r27, r1, 0x58 +/* 802024A0 001FF400 80 76 00 54 */ lwz r3, 0x54(r22) +/* 802024A4 001FF404 88 01 00 0B */ lbz r0, 0xb(r1) +/* 802024A8 001FF408 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 802024AC 001FF40C 90 01 00 58 */ stw r0, 0x58(r1) +/* 802024B0 001FF410 48 00 00 3C */ b lbl_802024EC +lbl_802024B4: +/* 802024B4 001FF414 88 76 00 5F */ lbz r3, 0x5f(r22) +/* 802024B8 001FF418 3C 00 43 30 */ lis r0, 0x4330 +/* 802024BC 001FF41C 90 01 01 C8 */ stw r0, 0x1c8(r1) +/* 802024C0 001FF420 C8 22 B0 68 */ lfd f1, lbl_805ACD88@sda21(r2) +/* 802024C4 001FF424 90 61 01 CC */ stw r3, 0x1cc(r1) +/* 802024C8 001FF428 C8 01 01 C8 */ lfd f0, 0x1c8(r1) +/* 802024CC 001FF42C EC 00 08 28 */ fsubs f0, f0, f1 +/* 802024D0 001FF430 EF DB 00 32 */ fmuls f30, f27, f0 +/* 802024D4 001FF434 F3 C1 A0 0A */ psq_st f30, 10(r1), 1, qr2 +/* 802024D8 001FF438 3B 61 00 54 */ addi r27, r1, 0x54 +/* 802024DC 001FF43C 80 76 00 5C */ lwz r3, 0x5c(r22) +/* 802024E0 001FF440 88 01 00 0A */ lbz r0, 0xa(r1) +/* 802024E4 001FF444 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 802024E8 001FF448 90 01 00 54 */ stw r0, 0x54(r1) +lbl_802024EC: +/* 802024EC 001FF44C 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 802024F0 001FF450 41 82 00 40 */ beq lbl_80202530 +/* 802024F4 001FF454 88 76 00 5B */ lbz r3, 0x5b(r22) +/* 802024F8 001FF458 3C 00 43 30 */ lis r0, 0x4330 +/* 802024FC 001FF45C 90 01 01 C8 */ stw r0, 0x1c8(r1) +/* 80202500 001FF460 C8 22 B0 68 */ lfd f1, lbl_805ACD88@sda21(r2) +/* 80202504 001FF464 90 61 01 CC */ stw r3, 0x1cc(r1) +/* 80202508 001FF468 C8 01 01 C8 */ lfd f0, 0x1c8(r1) +/* 8020250C 001FF46C EC 00 08 28 */ fsubs f0, f0, f1 +/* 80202510 001FF470 EF BB 00 32 */ fmuls f29, f27, f0 +/* 80202514 001FF474 F3 A1 A0 09 */ psq_st f29, 9(r1), 1, qr2 +/* 80202518 001FF478 3B 41 00 50 */ addi r26, r1, 0x50 +/* 8020251C 001FF47C 80 76 00 58 */ lwz r3, 0x58(r22) +/* 80202520 001FF480 88 01 00 09 */ lbz r0, 9(r1) +/* 80202524 001FF484 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 80202528 001FF488 90 01 00 50 */ stw r0, 0x50(r1) +/* 8020252C 001FF48C 48 00 00 3C */ b lbl_80202568 +lbl_80202530: +/* 80202530 001FF490 88 76 00 5F */ lbz r3, 0x5f(r22) +/* 80202534 001FF494 3C 00 43 30 */ lis r0, 0x4330 +/* 80202538 001FF498 90 01 01 C8 */ stw r0, 0x1c8(r1) +/* 8020253C 001FF49C C8 22 B0 68 */ lfd f1, lbl_805ACD88@sda21(r2) +/* 80202540 001FF4A0 90 61 01 CC */ stw r3, 0x1cc(r1) +/* 80202544 001FF4A4 C8 01 01 C8 */ lfd f0, 0x1c8(r1) +/* 80202548 001FF4A8 EC 00 08 28 */ fsubs f0, f0, f1 +/* 8020254C 001FF4AC EF 9B 00 32 */ fmuls f28, f27, f0 +/* 80202550 001FF4B0 F3 81 A0 08 */ psq_st f28, 8(r1), 1, qr2 +/* 80202554 001FF4B4 3B 41 00 4C */ addi r26, r1, 0x4c +/* 80202558 001FF4B8 80 76 00 5C */ lwz r3, 0x5c(r22) +/* 8020255C 001FF4BC 88 01 00 08 */ lbz r0, 8(r1) +/* 80202560 001FF4C0 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 80202564 001FF4C4 90 01 00 4C */ stw r0, 0x4c(r1) +lbl_80202568: +/* 80202568 001FF4C8 3A 80 00 00 */ li r20, 0 +/* 8020256C 001FF4CC 3A 60 00 00 */ li r19, 0 +/* 80202570 001FF4D0 48 00 01 30 */ b lbl_802026A0 +lbl_80202574: +/* 80202574 001FF4D4 7F 04 C3 78 */ mr r4, r24 +/* 80202578 001FF4D8 38 61 01 04 */ addi r3, r1, 0x104 +/* 8020257C 001FF4DC 48 11 07 21 */ bl GetQuickInverse__12CTransform4fCFv +/* 80202580 001FF4E0 80 16 00 50 */ lwz r0, 0x50(r22) +/* 80202584 001FF4E4 38 61 01 34 */ addi r3, r1, 0x134 +/* 80202588 001FF4E8 38 81 01 04 */ addi r4, r1, 0x104 +/* 8020258C 001FF4EC 7C A0 9A 14 */ add r5, r0, r19 +/* 80202590 001FF4F0 48 11 03 C1 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80202594 001FF4F4 38 61 01 94 */ addi r3, r1, 0x194 +/* 80202598 001FF4F8 38 81 01 34 */ addi r4, r1, 0x134 +/* 8020259C 001FF4FC 48 11 05 D9 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 802025A0 001FF500 3A 40 00 00 */ li r18, 0 +/* 802025A4 001FF504 3A A0 00 00 */ li r21, 0 +/* 802025A8 001FF508 48 00 00 E4 */ b lbl_8020268C +lbl_802025AC: +/* 802025AC 001FF50C 80 17 00 40 */ lwz r0, 0x40(r23) +/* 802025B0 001FF510 38 61 00 94 */ addi r3, r1, 0x94 +/* 802025B4 001FF514 38 81 01 94 */ addi r4, r1, 0x194 +/* 802025B8 001FF518 38 A1 00 A0 */ addi r5, r1, 0xa0 +/* 802025BC 001FF51C 7C C0 AA 14 */ add r6, r0, r21 +/* 802025C0 001FF520 C0 26 00 10 */ lfs f1, 0x10(r6) +/* 802025C4 001FF524 C0 46 00 14 */ lfs f2, 0x14(r6) +/* 802025C8 001FF528 C0 06 00 0C */ lfs f0, 0xc(r6) +/* 802025CC 001FF52C D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 802025D0 001FF530 D0 21 00 A4 */ stfs f1, 0xa4(r1) +/* 802025D4 001FF534 D0 41 00 A8 */ stfs f2, 0xa8(r1) +/* 802025D8 001FF538 48 11 05 11 */ bl __ml__12CTransform4fCFRC9CVector3f +/* 802025DC 001FF53C 80 1A 00 00 */ lwz r0, 0(r26) +/* 802025E0 001FF540 7F C4 F3 78 */ mr r4, r30 +/* 802025E4 001FF544 C0 21 00 98 */ lfs f1, 0x98(r1) +/* 802025E8 001FF548 7E 85 A3 78 */ mr r5, r20 +/* 802025EC 001FF54C 90 01 00 44 */ stw r0, 0x44(r1) +/* 802025F0 001FF550 7E 46 93 78 */ mr r6, r18 +/* 802025F4 001FF554 38 61 00 BC */ addi r3, r1, 0xbc +/* 802025F8 001FF558 38 E1 00 48 */ addi r7, r1, 0x48 +/* 802025FC 001FF55C 80 1B 00 00 */ lwz r0, 0(r27) +/* 80202600 001FF560 39 01 00 44 */ addi r8, r1, 0x44 +/* 80202604 001FF564 90 01 00 48 */ stw r0, 0x48(r1) +/* 80202608 001FF568 48 00 08 ED */ bl __ct__Q212CMapUniverse18CMapObjectSortInfoFfiii6CColor6CColor +/* 8020260C 001FF56C 80 01 00 B0 */ lwz r0, 0xb0(r1) +/* 80202610 001FF570 80 A1 00 B4 */ lwz r5, 0xb4(r1) +/* 80202614 001FF574 7C 00 28 00 */ cmpw r0, r5 +/* 80202618 001FF578 41 80 00 1C */ blt lbl_80202634 +/* 8020261C 001FF57C 2C 05 00 00 */ cmpwi r5, 0 +/* 80202620 001FF580 38 61 00 AC */ addi r3, r1, 0xac +/* 80202624 001FF584 38 80 00 04 */ li r4, 4 +/* 80202628 001FF588 41 82 00 08 */ beq lbl_80202630 +/* 8020262C 001FF58C 54 A4 08 3C */ slwi r4, r5, 1 +lbl_80202630: +/* 80202630 001FF590 48 00 0D 99 */ bl sub_802033c8 +lbl_80202634: +/* 80202634 001FF594 80 01 00 B0 */ lwz r0, 0xb0(r1) +/* 80202638 001FF598 80 61 00 B8 */ lwz r3, 0xb8(r1) +/* 8020263C 001FF59C 1C 00 00 18 */ mulli r0, r0, 0x18 +/* 80202640 001FF5A0 7C 63 02 15 */ add. r3, r3, r0 +/* 80202644 001FF5A4 41 82 00 34 */ beq lbl_80202678 +/* 80202648 001FF5A8 C0 01 00 BC */ lfs f0, 0xbc(r1) +/* 8020264C 001FF5AC D0 03 00 00 */ stfs f0, 0(r3) +/* 80202650 001FF5B0 80 01 00 C0 */ lwz r0, 0xc0(r1) +/* 80202654 001FF5B4 90 03 00 04 */ stw r0, 4(r3) +/* 80202658 001FF5B8 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 8020265C 001FF5BC 90 03 00 08 */ stw r0, 8(r3) +/* 80202660 001FF5C0 80 01 00 C8 */ lwz r0, 0xc8(r1) +/* 80202664 001FF5C4 90 03 00 0C */ stw r0, 0xc(r3) +/* 80202668 001FF5C8 80 01 00 CC */ lwz r0, 0xcc(r1) +/* 8020266C 001FF5CC 90 03 00 10 */ stw r0, 0x10(r3) +/* 80202670 001FF5D0 80 01 00 D0 */ lwz r0, 0xd0(r1) +/* 80202674 001FF5D4 90 03 00 14 */ stw r0, 0x14(r3) +lbl_80202678: +/* 80202678 001FF5D8 80 61 00 B0 */ lwz r3, 0xb0(r1) +/* 8020267C 001FF5DC 3A B5 00 20 */ addi r21, r21, 0x20 +/* 80202680 001FF5E0 3A 52 00 01 */ addi r18, r18, 1 +/* 80202684 001FF5E4 38 03 00 01 */ addi r0, r3, 1 +/* 80202688 001FF5E8 90 01 00 B0 */ stw r0, 0xb0(r1) +lbl_8020268C: +/* 8020268C 001FF5EC 80 17 00 30 */ lwz r0, 0x30(r23) +/* 80202690 001FF5F0 7C 12 00 00 */ cmpw r18, r0 +/* 80202694 001FF5F4 41 80 FF 18 */ blt lbl_802025AC +/* 80202698 001FF5F8 3A 73 00 30 */ addi r19, r19, 0x30 +/* 8020269C 001FF5FC 3A 94 00 01 */ addi r20, r20, 1 +lbl_802026A0: +/* 802026A0 001FF600 80 16 00 48 */ lwz r0, 0x48(r22) +/* 802026A4 001FF604 7C 14 00 00 */ cmpw r20, r0 +/* 802026A8 001FF608 41 80 FE CC */ blt lbl_80202574 +lbl_802026AC: +/* 802026AC 001FF60C 3B FF 00 70 */ addi r31, r31, 0x70 +/* 802026B0 001FF610 3B DE 00 01 */ addi r30, r30, 1 +lbl_802026B4: +/* 802026B4 001FF614 80 1C 00 14 */ lwz r0, 0x14(r28) +/* 802026B8 001FF618 7C 1E 00 00 */ cmpw r30, r0 +/* 802026BC 001FF61C 41 80 FD 64 */ blt lbl_80202420 +/* 802026C0 001FF620 80 01 00 B0 */ lwz r0, 0xb0(r1) +/* 802026C4 001FF624 2C 00 00 00 */ cmpwi r0, 0 +/* 802026C8 001FF628 40 81 02 70 */ ble lbl_80202938 +/* 802026CC 001FF62C 1C 00 00 18 */ mulli r0, r0, 0x18 +/* 802026D0 001FF630 80 C1 00 B8 */ lwz r6, 0xb8(r1) +/* 802026D4 001FF634 88 A1 00 0C */ lbz r5, 0xc(r1) +/* 802026D8 001FF638 38 61 00 40 */ addi r3, r1, 0x40 +/* 802026DC 001FF63C 90 C1 00 3C */ stw r6, 0x3c(r1) +/* 802026E0 001FF640 38 81 00 38 */ addi r4, r1, 0x38 +/* 802026E4 001FF644 7C 06 02 14 */ add r0, r6, r0 +/* 802026E8 001FF648 98 A1 00 10 */ stb r5, 0x10(r1) +/* 802026EC 001FF64C 38 A1 00 10 */ addi r5, r1, 0x10 +/* 802026F0 001FF650 90 01 00 34 */ stw r0, 0x34(r1) +/* 802026F4 001FF654 90 01 00 38 */ stw r0, 0x38(r1) +/* 802026F8 001FF658 90 C1 00 40 */ stw r6, 0x40(r1) +/* 802026FC 001FF65C 48 00 08 1D */ bl sub_80202f18 +/* 80202700 001FF660 4B E7 DE 71 */ bl SetupGXMaterial__Q28CMapArea15CMapAreaSurfaceFv +/* 80202704 001FF664 C3 A2 B0 60 */ lfs f29, lbl_805ACD80@sda21(r2) +/* 80202708 001FF668 3A 40 FF FF */ li r18, -1 +/* 8020270C 001FF66C 3A 80 FF FF */ li r20, -1 +/* 80202710 001FF670 3A A0 00 00 */ li r21, 0 +/* 80202714 001FF674 3A 60 00 00 */ li r19, 0 +/* 80202718 001FF678 48 00 02 14 */ b lbl_8020292C +lbl_8020271C: +/* 8020271C 001FF67C 81 01 00 B8 */ lwz r8, 0xb8(r1) +/* 80202720 001FF680 38 F3 00 14 */ addi r7, r19, 0x14 +/* 80202724 001FF684 80 BC 00 1C */ lwz r5, 0x1c(r28) +/* 80202728 001FF688 7C C8 9A 14 */ add r6, r8, r19 +/* 8020272C 001FF68C 80 7D 00 08 */ lwz r3, 8(r29) +/* 80202730 001FF690 82 C6 00 04 */ lwz r22, 4(r6) +/* 80202734 001FF694 83 46 00 08 */ lwz r26, 8(r6) +/* 80202738 001FF698 80 86 00 0C */ lwz r4, 0xc(r6) +/* 8020273C 001FF69C 1C 16 00 70 */ mulli r0, r22, 0x70 +/* 80202740 001FF6A0 80 C6 00 10 */ lwz r6, 0x10(r6) +/* 80202744 001FF6A4 54 84 28 34 */ slwi r4, r4, 5 +/* 80202748 001FF6A8 90 C1 00 6C */ stw r6, 0x6c(r1) +/* 8020274C 001FF6AC 7C A5 02 14 */ add r5, r5, r0 +/* 80202750 001FF6B0 1C DA 00 30 */ mulli r6, r26, 0x30 +/* 80202754 001FF6B4 7C 08 38 2E */ lwzx r0, r8, r7 +/* 80202758 001FF6B8 90 01 00 68 */ stw r0, 0x68(r1) +/* 8020275C 001FF6BC 80 05 00 10 */ lwz r0, 0x10(r5) +/* 80202760 001FF6C0 80 E5 00 50 */ lwz r7, 0x50(r5) +/* 80202764 001FF6C4 80 B7 00 40 */ lwz r5, 0x40(r23) +/* 80202768 001FF6C8 7C 03 00 40 */ cmplw r3, r0 +/* 8020276C 001FF6CC 7F 67 32 14 */ add r27, r7, r6 +/* 80202770 001FF6D0 7F C5 22 14 */ add r30, r5, r4 +/* 80202774 001FF6D4 40 82 00 60 */ bne lbl_802027D4 +/* 80202778 001FF6D8 80 1D 00 0C */ lwz r0, 0xc(r29) +/* 8020277C 001FF6DC 7C 1A 00 00 */ cmpw r26, r0 +/* 80202780 001FF6E0 40 82 00 54 */ bne lbl_802027D4 +/* 80202784 001FF6E4 80 AD A1 44 */ lwz r5, gpTweakAutoMapper@sda21(r13) +/* 80202788 001FF6E8 38 61 00 30 */ addi r3, r1, 0x30 +/* 8020278C 001FF6EC 8B E1 00 6F */ lbz r31, 0x6f(r1) +/* 80202790 001FF6F0 8A 21 00 6B */ lbz r17, 0x6b(r1) +/* 80202794 001FF6F4 38 85 00 4C */ addi r4, r5, 0x4c +/* 80202798 001FF6F8 C0 3D 00 10 */ lfs f1, 0x10(r29) +/* 8020279C 001FF6FC 38 A5 00 F4 */ addi r5, r5, 0xf4 +/* 802027A0 001FF700 48 16 0B 0D */ bl Lerp__6CColorFRC6CColorRC6CColorf +/* 802027A4 001FF704 80 01 00 30 */ lwz r0, 0x30(r1) +/* 802027A8 001FF708 38 61 00 2C */ addi r3, r1, 0x2c +/* 802027AC 001FF70C 80 AD A1 44 */ lwz r5, gpTweakAutoMapper@sda21(r13) +/* 802027B0 001FF710 90 01 00 6C */ stw r0, 0x6c(r1) +/* 802027B4 001FF714 C0 3D 00 10 */ lfs f1, 0x10(r29) +/* 802027B8 001FF718 38 85 00 50 */ addi r4, r5, 0x50 +/* 802027BC 001FF71C 38 A5 00 F4 */ addi r5, r5, 0xf4 +/* 802027C0 001FF720 48 16 0A ED */ bl Lerp__6CColorFRC6CColorRC6CColorf +/* 802027C4 001FF724 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 802027C8 001FF728 9B E1 00 6F */ stb r31, 0x6f(r1) +/* 802027CC 001FF72C 90 01 00 68 */ stw r0, 0x68(r1) +/* 802027D0 001FF730 9A 21 00 6B */ stb r17, 0x6b(r1) +lbl_802027D4: +/* 802027D4 001FF734 7F 64 DB 78 */ mr r4, r27 +/* 802027D8 001FF738 38 61 01 64 */ addi r3, r1, 0x164 +/* 802027DC 001FF73C 48 11 03 99 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 802027E0 001FF740 38 61 01 64 */ addi r3, r1, 0x164 +/* 802027E4 001FF744 48 11 0B C1 */ bl Orthonormalize__12CTransform4fFv +/* 802027E8 001FF748 80 CD A1 44 */ lwz r6, gpTweakAutoMapper@sda21(r13) +/* 802027EC 001FF74C 38 61 00 7C */ addi r3, r1, 0x7c +/* 802027F0 001FF750 C0 1E 00 00 */ lfs f0, 0(r30) +/* 802027F4 001FF754 38 81 01 64 */ addi r4, r1, 0x164 +/* 802027F8 001FF758 C3 66 00 54 */ lfs f27, 0x54(r6) +/* 802027FC 001FF75C 38 A1 00 70 */ addi r5, r1, 0x70 +/* 80202800 001FF760 C3 86 00 58 */ lfs f28, 0x58(r6) +/* 80202804 001FF764 D0 01 00 70 */ stfs f0, 0x70(r1) +/* 80202808 001FF768 C0 1E 00 04 */ lfs f0, 4(r30) +/* 8020280C 001FF76C D0 01 00 74 */ stfs f0, 0x74(r1) +/* 80202810 001FF770 C0 1E 00 08 */ lfs f0, 8(r30) +/* 80202814 001FF774 D0 01 00 78 */ stfs f0, 0x78(r1) +/* 80202818 001FF778 48 11 02 69 */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 8020281C 001FF77C C0 18 00 14 */ lfs f0, 0x14(r24) +/* 80202820 001FF780 C0 38 00 04 */ lfs f1, 4(r24) +/* 80202824 001FF784 EC DD 00 32 */ fmuls f6, f29, f0 +/* 80202828 001FF788 C0 01 00 80 */ lfs f0, 0x80(r1) +/* 8020282C 001FF78C EC 9D 00 72 */ fmuls f4, f29, f1 +/* 80202830 001FF790 C0 78 00 24 */ lfs f3, 0x24(r24) +/* 80202834 001FF794 C0 41 00 7C */ lfs f2, 0x7c(r1) +/* 80202838 001FF798 EC 26 00 32 */ fmuls f1, f6, f0 +/* 8020283C 001FF79C EC BD 00 F2 */ fmuls f5, f29, f3 +/* 80202840 001FF7A0 C0 61 00 84 */ lfs f3, 0x84(r1) +/* 80202844 001FF7A4 C0 0D 93 48 */ lfs f0, lbl_805A7F08@sda21(r13) +/* 80202848 001FF7A8 EC 24 08 BA */ fmadds f1, f4, f2, f1 +/* 8020284C 001FF7AC D0 81 00 88 */ stfs f4, 0x88(r1) +/* 80202850 001FF7B0 D0 C1 00 8C */ stfs f6, 0x8c(r1) +/* 80202854 001FF7B4 EC 25 08 FA */ fmadds f1, f5, f3, f1 +/* 80202858 001FF7B8 D0 A1 00 90 */ stfs f5, 0x90(r1) +/* 8020285C 001FF7BC FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80202860 001FF7C0 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 80202864 001FF7C4 40 80 00 0C */ bge lbl_80202870 +/* 80202868 001FF7C8 38 61 00 28 */ addi r3, r1, 0x28 +/* 8020286C 001FF7CC 48 00 00 08 */ b lbl_80202874 +lbl_80202870: +/* 80202870 001FF7D0 38 6D 93 48 */ addi r3, r13, lbl_805A7F08@sda21 +lbl_80202874: +/* 80202874 001FF7D4 C0 03 00 00 */ lfs f0, 0(r3) +/* 80202878 001FF7D8 38 61 00 64 */ addi r3, r1, 0x64 +/* 8020287C 001FF7DC C0 82 B0 50 */ lfs f4, lbl_805ACD70@sda21(r2) +/* 80202880 001FF7E0 EC 1B 00 32 */ fmuls f0, f27, f0 +/* 80202884 001FF7E4 EC 3C 00 2A */ fadds f1, f28, f0 +/* 80202888 001FF7E8 FC 40 08 90 */ fmr f2, f1 +/* 8020288C 001FF7EC FC 60 08 90 */ fmr f3, f1 +/* 80202890 001FF7F0 48 16 0B 5D */ bl __ct__6CColorFffff +/* 80202894 001FF7F4 38 61 00 24 */ addi r3, r1, 0x24 +/* 80202898 001FF7F8 38 81 00 6C */ addi r4, r1, 0x6c +/* 8020289C 001FF7FC 38 A1 00 64 */ addi r5, r1, 0x64 +/* 802028A0 001FF800 48 16 08 D9 */ bl Modulate__6CColorFRC6CColorRC6CColor +/* 802028A4 001FF804 80 01 00 24 */ lwz r0, 0x24(r1) +/* 802028A8 001FF808 7C 14 D0 00 */ cmpw r20, r26 +/* 802028AC 001FF80C 3A 80 00 00 */ li r20, 0 +/* 802028B0 001FF810 90 01 00 60 */ stw r0, 0x60(r1) +/* 802028B4 001FF814 40 82 00 0C */ bne lbl_802028C0 +/* 802028B8 001FF818 7C 12 B0 00 */ cmpw r18, r22 +/* 802028BC 001FF81C 41 82 00 08 */ beq lbl_802028C4 +lbl_802028C0: +/* 802028C0 001FF820 3A 80 00 01 */ li r20, 1 +lbl_802028C4: +/* 802028C4 001FF824 56 80 06 3F */ clrlwi. r0, r20, 0x18 +/* 802028C8 001FF828 41 82 00 2C */ beq lbl_802028F4 +/* 802028CC 001FF82C 7F 24 CB 78 */ mr r4, r25 +/* 802028D0 001FF830 7F 65 DB 78 */ mr r5, r27 +/* 802028D4 001FF834 38 61 00 D4 */ addi r3, r1, 0xd4 +/* 802028D8 001FF838 48 11 00 79 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 802028DC 001FF83C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 802028E0 001FF840 38 81 00 D4 */ addi r4, r1, 0xd4 +/* 802028E4 001FF844 81 83 00 00 */ lwz r12, 0(r3) +/* 802028E8 001FF848 81 8C 00 30 */ lwz r12, 0x30(r12) +/* 802028EC 001FF84C 7D 89 03 A6 */ mtctr r12 +/* 802028F0 001FF850 4E 80 04 21 */ bctrl +lbl_802028F4: +/* 802028F4 001FF854 56 80 06 3F */ clrlwi. r0, r20, 0x18 +/* 802028F8 001FF858 41 82 00 0C */ beq lbl_80202904 +/* 802028FC 001FF85C 80 97 00 3C */ lwz r4, 0x3c(r23) +/* 80202900 001FF860 48 00 00 08 */ b lbl_80202908 +lbl_80202904: +/* 80202904 001FF864 38 80 00 00 */ li r4, 0 +lbl_80202908: +/* 80202908 001FF868 C0 22 B0 64 */ lfs f1, lbl_805ACD84@sda21(r2) +/* 8020290C 001FF86C 7F C3 F3 78 */ mr r3, r30 +/* 80202910 001FF870 38 A1 00 60 */ addi r5, r1, 0x60 +/* 80202914 001FF874 38 C1 00 68 */ addi r6, r1, 0x68 +/* 80202918 001FF878 4B E7 DD 5D */ bl Draw__Q28CMapArea15CMapAreaSurfaceCFPC9CVector3fRC6CColorRC6CColorf +/* 8020291C 001FF87C 7E D2 B3 78 */ mr r18, r22 +/* 80202920 001FF880 7F 54 D3 78 */ mr r20, r26 +/* 80202924 001FF884 3A 73 00 18 */ addi r19, r19, 0x18 +/* 80202928 001FF888 3A B5 00 01 */ addi r21, r21, 1 +lbl_8020292C: +/* 8020292C 001FF88C 80 01 00 B0 */ lwz r0, 0xb0(r1) +/* 80202930 001FF890 7C 15 00 00 */ cmpw r21, r0 +/* 80202934 001FF894 41 80 FD E8 */ blt lbl_8020271C +lbl_80202938: +/* 80202938 001FF898 80 01 00 B0 */ lwz r0, 0xb0(r1) +/* 8020293C 001FF89C 80 61 00 B8 */ lwz r3, 0xb8(r1) +/* 80202940 001FF8A0 1C 00 00 18 */ mulli r0, r0, 0x18 +/* 80202944 001FF8A4 90 61 00 18 */ stw r3, 0x18(r1) +/* 80202948 001FF8A8 7C 64 1B 78 */ mr r4, r3 +/* 8020294C 001FF8AC 7C 03 02 14 */ add r0, r3, r0 +/* 80202950 001FF8B0 90 61 00 14 */ stw r3, 0x14(r1) +/* 80202954 001FF8B4 90 01 00 20 */ stw r0, 0x20(r1) +/* 80202958 001FF8B8 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8020295C 001FF8BC 48 00 00 08 */ b lbl_80202964 +lbl_80202960: +/* 80202960 001FF8C0 38 84 00 18 */ addi r4, r4, 0x18 +lbl_80202964: +/* 80202964 001FF8C4 7C 04 00 40 */ cmplw r4, r0 +/* 80202968 001FF8C8 40 82 FF F8 */ bne lbl_80202960 +/* 8020296C 001FF8CC 28 03 00 00 */ cmplwi r3, 0 +/* 80202970 001FF8D0 41 82 00 08 */ beq lbl_80202978 +/* 80202974 001FF8D4 48 11 2F BD */ bl Free__7CMemoryFPCv +lbl_80202978: +/* 80202978 001FF8D8 E3 E1 02 58 */ psq_l f31, 600(r1), 0, qr0 +/* 8020297C 001FF8DC CB E1 02 50 */ lfd f31, 0x250(r1) +/* 80202980 001FF8E0 E3 C1 02 48 */ psq_l f30, 584(r1), 0, qr0 +/* 80202984 001FF8E4 CB C1 02 40 */ lfd f30, 0x240(r1) +/* 80202988 001FF8E8 E3 A1 02 38 */ psq_l f29, 568(r1), 0, qr0 +/* 8020298C 001FF8EC CB A1 02 30 */ lfd f29, 0x230(r1) +/* 80202990 001FF8F0 E3 81 02 28 */ psq_l f28, 552(r1), 0, qr0 +/* 80202994 001FF8F4 CB 81 02 20 */ lfd f28, 0x220(r1) +/* 80202998 001FF8F8 E3 61 02 18 */ psq_l f27, 536(r1), 0, qr0 +/* 8020299C 001FF8FC CB 61 02 10 */ lfd f27, 0x210(r1) +/* 802029A0 001FF900 BA 21 01 D4 */ lmw r17, 0x1d4(r1) +/* 802029A4 001FF904 80 01 02 64 */ lwz r0, 0x264(r1) +/* 802029A8 001FF908 7C 08 03 A6 */ mtlr r0 +/* 802029AC 001FF90C 38 21 02 60 */ addi r1, r1, 0x260 +/* 802029B0 001FF910 4E 80 00 20 */ blr + +.global sub_802029b4 +sub_802029b4: +/* 802029B4 001FF914 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 802029B8 001FF918 7C 08 02 A6 */ mflr r0 +/* 802029BC 001FF91C 90 01 00 14 */ stw r0, 0x14(r1) +/* 802029C0 001FF920 93 E1 00 0C */ stw r31, 0xc(r1) +/* 802029C4 001FF924 7C 9F 23 78 */ mr r31, r4 +/* 802029C8 001FF928 93 C1 00 08 */ stw r30, 8(r1) +/* 802029CC 001FF92C 7C 7E 1B 79 */ or. r30, r3, r3 +/* 802029D0 001FF930 41 82 00 3C */ beq lbl_80202A0C +/* 802029D4 001FF934 38 7E 00 10 */ addi r3, r30, 0x10 +/* 802029D8 001FF938 38 80 FF FF */ li r4, -1 +/* 802029DC 001FF93C 48 00 00 4D */ bl sub_80202a28 +/* 802029E0 001FF940 34 1E 00 04 */ addic. r0, r30, 4 +/* 802029E4 001FF944 41 82 00 18 */ beq lbl_802029FC +/* 802029E8 001FF948 34 1E 00 04 */ addic. r0, r30, 4 +/* 802029EC 001FF94C 41 82 00 10 */ beq lbl_802029FC +/* 802029F0 001FF950 38 7E 00 04 */ addi r3, r30, 4 +/* 802029F4 001FF954 38 80 00 00 */ li r4, 0 +/* 802029F8 001FF958 48 13 E4 49 */ bl __dt__6CTokenFv +lbl_802029FC: +/* 802029FC 001FF95C 7F E0 07 35 */ extsh. r0, r31 +/* 80202A00 001FF960 40 81 00 0C */ ble lbl_80202A0C +/* 80202A04 001FF964 7F C3 F3 78 */ mr r3, r30 +/* 80202A08 001FF968 48 11 2F 29 */ bl Free__7CMemoryFPCv +lbl_80202A0C: +/* 80202A0C 001FF96C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80202A10 001FF970 7F C3 F3 78 */ mr r3, r30 +/* 80202A14 001FF974 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80202A18 001FF978 83 C1 00 08 */ lwz r30, 8(r1) +/* 80202A1C 001FF97C 7C 08 03 A6 */ mtlr r0 +/* 80202A20 001FF980 38 21 00 10 */ addi r1, r1, 0x10 +/* 80202A24 001FF984 4E 80 00 20 */ blr + +.global sub_80202a28 +sub_80202a28: +/* 80202A28 001FF988 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80202A2C 001FF98C 7C 08 02 A6 */ mflr r0 +/* 80202A30 001FF990 90 01 00 24 */ stw r0, 0x24(r1) +/* 80202A34 001FF994 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80202A38 001FF998 7C 9F 23 78 */ mr r31, r4 +/* 80202A3C 001FF99C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80202A40 001FF9A0 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80202A44 001FF9A4 41 82 00 54 */ beq lbl_80202A98 +/* 80202A48 001FF9A8 80 1E 00 04 */ lwz r0, 4(r30) +/* 80202A4C 001FF9AC 38 61 00 14 */ addi r3, r1, 0x14 +/* 80202A50 001FF9B0 80 BE 00 0C */ lwz r5, 0xc(r30) +/* 80202A54 001FF9B4 38 81 00 0C */ addi r4, r1, 0xc +/* 80202A58 001FF9B8 1C 00 00 70 */ mulli r0, r0, 0x70 +/* 80202A5C 001FF9BC 7C A5 02 14 */ add r5, r5, r0 +/* 80202A60 001FF9C0 90 A1 00 0C */ stw r5, 0xc(r1) +/* 80202A64 001FF9C4 80 1E 00 0C */ lwz r0, 0xc(r30) +/* 80202A68 001FF9C8 90 A1 00 08 */ stw r5, 8(r1) +/* 80202A6C 001FF9CC 90 01 00 10 */ stw r0, 0x10(r1) +/* 80202A70 001FF9D0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80202A74 001FF9D4 48 00 00 41 */ bl sub_80202ab4 +/* 80202A78 001FF9D8 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 80202A7C 001FF9DC 28 03 00 00 */ cmplwi r3, 0 +/* 80202A80 001FF9E0 41 82 00 08 */ beq lbl_80202A88 +/* 80202A84 001FF9E4 48 11 2E AD */ bl Free__7CMemoryFPCv +lbl_80202A88: +/* 80202A88 001FF9E8 7F E0 07 35 */ extsh. r0, r31 +/* 80202A8C 001FF9EC 40 81 00 0C */ ble lbl_80202A98 +/* 80202A90 001FF9F0 7F C3 F3 78 */ mr r3, r30 +/* 80202A94 001FF9F4 48 11 2E 9D */ bl Free__7CMemoryFPCv +lbl_80202A98: +/* 80202A98 001FF9F8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80202A9C 001FF9FC 7F C3 F3 78 */ mr r3, r30 +/* 80202AA0 001FFA00 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80202AA4 001FFA04 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80202AA8 001FFA08 7C 08 03 A6 */ mtlr r0 +/* 80202AAC 001FFA0C 38 21 00 20 */ addi r1, r1, 0x20 +/* 80202AB0 001FFA10 4E 80 00 20 */ blr + +.global sub_80202ab4 +sub_80202ab4: +/* 80202AB4 001FFA14 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80202AB8 001FFA18 7C 08 02 A6 */ mflr r0 +/* 80202ABC 001FFA1C 90 01 00 14 */ stw r0, 0x14(r1) +/* 80202AC0 001FFA20 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80202AC4 001FFA24 93 C1 00 08 */ stw r30, 8(r1) +/* 80202AC8 001FFA28 7C 9E 23 78 */ mr r30, r4 +/* 80202ACC 001FFA2C 83 E3 00 00 */ lwz r31, 0(r3) +/* 80202AD0 001FFA30 48 00 00 10 */ b lbl_80202AE0 +lbl_80202AD4: +/* 80202AD4 001FFA34 7F E3 FB 78 */ mr r3, r31 +/* 80202AD8 001FFA38 48 00 00 2D */ bl sub_80202b04 +/* 80202ADC 001FFA3C 3B FF 00 70 */ addi r31, r31, 0x70 +lbl_80202AE0: +/* 80202AE0 001FFA40 80 1E 00 00 */ lwz r0, 0(r30) +/* 80202AE4 001FFA44 7C 1F 00 40 */ cmplw r31, r0 +/* 80202AE8 001FFA48 40 82 FF EC */ bne lbl_80202AD4 +/* 80202AEC 001FFA4C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80202AF0 001FFA50 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80202AF4 001FFA54 83 C1 00 08 */ lwz r30, 8(r1) +/* 80202AF8 001FFA58 7C 08 03 A6 */ mtlr r0 +/* 80202AFC 001FFA5C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80202B00 001FFA60 4E 80 00 20 */ blr + +.global sub_80202b04 +sub_80202b04: +/* 80202B04 001FFA64 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80202B08 001FFA68 7C 08 02 A6 */ mflr r0 +/* 80202B0C 001FFA6C 38 80 FF FF */ li r4, -1 +/* 80202B10 001FFA70 90 01 00 14 */ stw r0, 0x14(r1) +/* 80202B14 001FFA74 48 00 00 15 */ bl sub_80202b28 +/* 80202B18 001FFA78 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80202B1C 001FFA7C 7C 08 03 A6 */ mtlr r0 +/* 80202B20 001FFA80 38 21 00 10 */ addi r1, r1, 0x10 +/* 80202B24 001FFA84 4E 80 00 20 */ blr + +.global sub_80202b28 +sub_80202b28: +/* 80202B28 001FFA88 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80202B2C 001FFA8C 7C 08 02 A6 */ mflr r0 +/* 80202B30 001FFA90 90 01 00 24 */ stw r0, 0x24(r1) +/* 80202B34 001FFA94 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80202B38 001FFA98 7C 9F 23 78 */ mr r31, r4 +/* 80202B3C 001FFA9C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80202B40 001FFAA0 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80202B44 001FFAA4 41 82 00 6C */ beq lbl_80202BB0 +/* 80202B48 001FFAA8 34 1E 00 44 */ addic. r0, r30, 0x44 +/* 80202B4C 001FFAAC 41 82 00 44 */ beq lbl_80202B90 +/* 80202B50 001FFAB0 80 1E 00 48 */ lwz r0, 0x48(r30) +/* 80202B54 001FFAB4 80 7E 00 50 */ lwz r3, 0x50(r30) +/* 80202B58 001FFAB8 1C 00 00 30 */ mulli r0, r0, 0x30 +/* 80202B5C 001FFABC 90 61 00 0C */ stw r3, 0xc(r1) +/* 80202B60 001FFAC0 7C 64 1B 78 */ mr r4, r3 +/* 80202B64 001FFAC4 7C 03 02 14 */ add r0, r3, r0 +/* 80202B68 001FFAC8 90 61 00 08 */ stw r3, 8(r1) +/* 80202B6C 001FFACC 90 01 00 14 */ stw r0, 0x14(r1) +/* 80202B70 001FFAD0 90 01 00 10 */ stw r0, 0x10(r1) +/* 80202B74 001FFAD4 48 00 00 08 */ b lbl_80202B7C +lbl_80202B78: +/* 80202B78 001FFAD8 38 84 00 30 */ addi r4, r4, 0x30 +lbl_80202B7C: +/* 80202B7C 001FFADC 7C 04 00 40 */ cmplw r4, r0 +/* 80202B80 001FFAE0 40 82 FF F8 */ bne lbl_80202B78 +/* 80202B84 001FFAE4 28 03 00 00 */ cmplwi r3, 0 +/* 80202B88 001FFAE8 41 82 00 08 */ beq lbl_80202B90 +/* 80202B8C 001FFAEC 48 11 2D A5 */ bl Free__7CMemoryFPCv +lbl_80202B90: +/* 80202B90 001FFAF0 28 1E 00 00 */ cmplwi r30, 0 +/* 80202B94 001FFAF4 41 82 00 0C */ beq lbl_80202BA0 +/* 80202B98 001FFAF8 7F C3 F3 78 */ mr r3, r30 +/* 80202B9C 001FFAFC 48 13 AF 45 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80202BA0: +/* 80202BA0 001FFB00 7F E0 07 35 */ extsh. r0, r31 +/* 80202BA4 001FFB04 40 81 00 0C */ ble lbl_80202BB0 +/* 80202BA8 001FFB08 7F C3 F3 78 */ mr r3, r30 +/* 80202BAC 001FFB0C 48 11 2D 85 */ bl Free__7CMemoryFPCv +lbl_80202BB0: +/* 80202BB0 001FFB10 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80202BB4 001FFB14 7F C3 F3 78 */ mr r3, r30 +/* 80202BB8 001FFB18 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80202BBC 001FFB1C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80202BC0 001FFB20 7C 08 03 A6 */ mtlr r0 +/* 80202BC4 001FFB24 38 21 00 20 */ addi r1, r1, 0x20 +/* 80202BC8 001FFB28 4E 80 00 20 */ blr + +.global __ct__12CMapUniverseFR12CInputStream +__ct__12CMapUniverseFR12CInputStream: +/* 80202BCC 001FFB2C 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 80202BD0 001FFB30 7C 08 02 A6 */ mflr r0 +/* 80202BD4 001FFB34 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 80202BD8 001FFB38 93 E1 00 9C */ stw r31, 0x9c(r1) +/* 80202BDC 001FFB3C 93 C1 00 98 */ stw r30, 0x98(r1) +/* 80202BE0 001FFB40 7C BE 2B 78 */ mr r30, r5 +/* 80202BE4 001FFB44 93 A1 00 94 */ stw r29, 0x94(r1) +/* 80202BE8 001FFB48 7C 9D 23 78 */ mr r29, r4 +/* 80202BEC 001FFB4C 93 81 00 90 */ stw r28, 0x90(r1) +/* 80202BF0 001FFB50 7C 7C 1B 78 */ mr r28, r3 +/* 80202BF4 001FFB54 7F A3 EB 78 */ mr r3, r29 +/* 80202BF8 001FFB58 48 13 C0 8D */ bl ReadLong__12CInputStreamFv +/* 80202BFC 001FFB5C 90 7C 00 00 */ stw r3, 0(r28) +/* 80202C00 001FFB60 3C 60 4D 41 */ lis r3, 0x4D415041@ha +/* 80202C04 001FFB64 38 03 50 41 */ addi r0, r3, 0x4D415041@l +/* 80202C08 001FFB68 38 61 00 08 */ addi r3, r1, 8 +/* 80202C0C 001FFB6C 80 DC 00 00 */ lwz r6, 0(r28) +/* 80202C10 001FFB70 38 A1 00 10 */ addi r5, r1, 0x10 +/* 80202C14 001FFB74 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80202C18 001FFB78 90 01 00 10 */ stw r0, 0x10(r1) +/* 80202C1C 001FFB7C 90 C1 00 14 */ stw r6, 0x14(r1) +/* 80202C20 001FFB80 81 84 00 00 */ lwz r12, 0(r4) +/* 80202C24 001FFB84 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80202C28 001FFB88 7D 89 03 A6 */ mtctr r12 +/* 80202C2C 001FFB8C 4E 80 04 21 */ bctrl +/* 80202C30 001FFB90 3B FC 00 04 */ addi r31, r28, 4 +/* 80202C34 001FFB94 38 81 00 08 */ addi r4, r1, 8 +/* 80202C38 001FFB98 7F E3 FB 78 */ mr r3, r31 +/* 80202C3C 001FFB9C 48 13 E2 6D */ bl __ct__6CTokenFRC6CToken +/* 80202C40 001FFBA0 38 00 00 00 */ li r0, 0 +/* 80202C44 001FFBA4 38 61 00 08 */ addi r3, r1, 8 +/* 80202C48 001FFBA8 90 1F 00 08 */ stw r0, 8(r31) +/* 80202C4C 001FFBAC 38 80 FF FF */ li r4, -1 +/* 80202C50 001FFBB0 48 13 E1 F1 */ bl __dt__6CTokenFv +/* 80202C54 001FFBB4 38 00 00 00 */ li r0, 0 +/* 80202C58 001FFBB8 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80202C5C 001FFBBC 90 1C 00 14 */ stw r0, 0x14(r28) +/* 80202C60 001FFBC0 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 80202C64 001FFBC4 C0 02 B0 70 */ lfs f0, lbl_805ACD90@sda21(r2) +/* 80202C68 001FFBC8 7F A3 EB 78 */ mr r3, r29 +/* 80202C6C 001FFBCC 90 1C 00 18 */ stw r0, 0x18(r28) +/* 80202C70 001FFBD0 90 1C 00 1C */ stw r0, 0x1c(r28) +/* 80202C74 001FFBD4 C0 24 00 00 */ lfs f1, 0(r4) +/* 80202C78 001FFBD8 D0 3C 00 20 */ stfs f1, 0x20(r28) +/* 80202C7C 001FFBDC C0 24 00 04 */ lfs f1, 4(r4) +/* 80202C80 001FFBE0 D0 3C 00 24 */ stfs f1, 0x24(r28) +/* 80202C84 001FFBE4 C0 24 00 08 */ lfs f1, 8(r4) +/* 80202C88 001FFBE8 D0 3C 00 28 */ stfs f1, 0x28(r28) +/* 80202C8C 001FFBEC D0 1C 00 2C */ stfs f0, 0x2c(r28) +/* 80202C90 001FFBF0 48 13 BF F5 */ bl ReadLong__12CInputStreamFv +/* 80202C94 001FFBF4 7C 64 1B 78 */ mr r4, r3 +/* 80202C98 001FFBF8 38 7C 00 10 */ addi r3, r28, 0x10 +/* 80202C9C 001FFBFC 48 00 05 A9 */ bl sub_80203244 +/* 80202CA0 001FFC00 3B E0 00 00 */ li r31, 0 +/* 80202CA4 001FFC04 48 00 00 30 */ b lbl_80202CD4 +lbl_80202CA8: +/* 80202CA8 001FFC08 7F A4 EB 78 */ mr r4, r29 +/* 80202CAC 001FFC0C 7F C5 F3 78 */ mr r5, r30 +/* 80202CB0 001FFC10 38 61 00 18 */ addi r3, r1, 0x18 +/* 80202CB4 001FFC14 4B FF F2 F5 */ bl __ct__Q212CMapUniverse13CMapWorldDataFR12CInputStream +/* 80202CB8 001FFC18 38 7C 00 10 */ addi r3, r28, 0x10 +/* 80202CBC 001FFC1C 38 81 00 18 */ addi r4, r1, 0x18 +/* 80202CC0 001FFC20 48 00 00 4D */ bl sub_80202d0c +/* 80202CC4 001FFC24 38 61 00 18 */ addi r3, r1, 0x18 +/* 80202CC8 001FFC28 38 80 FF FF */ li r4, -1 +/* 80202CCC 001FFC2C 4B FF FE 5D */ bl sub_80202b28 +/* 80202CD0 001FFC30 3B FF 00 01 */ addi r31, r31, 1 +lbl_80202CD4: +/* 80202CD4 001FFC34 80 1C 00 18 */ lwz r0, 0x18(r28) +/* 80202CD8 001FFC38 7C 1F 00 00 */ cmpw r31, r0 +/* 80202CDC 001FFC3C 41 80 FF CC */ blt lbl_80202CA8 +/* 80202CE0 001FFC40 38 7C 00 04 */ addi r3, r28, 4 +/* 80202CE4 001FFC44 48 13 E0 A1 */ bl Lock__6CTokenFv +/* 80202CE8 001FFC48 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 80202CEC 001FFC4C 7F 83 E3 78 */ mr r3, r28 +/* 80202CF0 001FFC50 83 E1 00 9C */ lwz r31, 0x9c(r1) +/* 80202CF4 001FFC54 83 C1 00 98 */ lwz r30, 0x98(r1) +/* 80202CF8 001FFC58 83 A1 00 94 */ lwz r29, 0x94(r1) +/* 80202CFC 001FFC5C 83 81 00 90 */ lwz r28, 0x90(r1) +/* 80202D00 001FFC60 7C 08 03 A6 */ mtlr r0 +/* 80202D04 001FFC64 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 80202D08 001FFC68 4E 80 00 20 */ blr + +.global sub_80202d0c +sub_80202d0c: +/* 80202D0C 001FFC6C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80202D10 001FFC70 7C 08 02 A6 */ mflr r0 +/* 80202D14 001FFC74 90 01 00 14 */ stw r0, 0x14(r1) +/* 80202D18 001FFC78 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80202D1C 001FFC7C 7C 9F 23 78 */ mr r31, r4 +/* 80202D20 001FFC80 93 C1 00 08 */ stw r30, 8(r1) +/* 80202D24 001FFC84 7C 7E 1B 78 */ mr r30, r3 +/* 80202D28 001FFC88 80 03 00 04 */ lwz r0, 4(r3) +/* 80202D2C 001FFC8C 80 A3 00 08 */ lwz r5, 8(r3) +/* 80202D30 001FFC90 7C 00 28 00 */ cmpw r0, r5 +/* 80202D34 001FFC94 41 80 00 18 */ blt lbl_80202D4C +/* 80202D38 001FFC98 2C 05 00 00 */ cmpwi r5, 0 +/* 80202D3C 001FFC9C 38 80 00 04 */ li r4, 4 +/* 80202D40 001FFCA0 41 82 00 08 */ beq lbl_80202D48 +/* 80202D44 001FFCA4 54 A4 08 3C */ slwi r4, r5, 1 +lbl_80202D48: +/* 80202D48 001FFCA8 48 00 04 FD */ bl sub_80203244 +lbl_80202D4C: +/* 80202D4C 001FFCAC 80 1E 00 04 */ lwz r0, 4(r30) +/* 80202D50 001FFCB0 7F E4 FB 78 */ mr r4, r31 +/* 80202D54 001FFCB4 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 80202D58 001FFCB8 1C 00 00 70 */ mulli r0, r0, 0x70 +/* 80202D5C 001FFCBC 7C 63 02 14 */ add r3, r3, r0 +/* 80202D60 001FFCC0 48 00 00 29 */ bl sub_80202d88 +/* 80202D64 001FFCC4 80 7E 00 04 */ lwz r3, 4(r30) +/* 80202D68 001FFCC8 38 03 00 01 */ addi r0, r3, 1 +/* 80202D6C 001FFCCC 90 1E 00 04 */ stw r0, 4(r30) +/* 80202D70 001FFCD0 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80202D74 001FFCD4 83 C1 00 08 */ lwz r30, 8(r1) +/* 80202D78 001FFCD8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80202D7C 001FFCDC 7C 08 03 A6 */ mtlr r0 +/* 80202D80 001FFCE0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80202D84 001FFCE4 4E 80 00 20 */ blr + +.global sub_80202d88 +sub_80202d88: +/* 80202D88 001FFCE8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80202D8C 001FFCEC 7C 08 02 A6 */ mflr r0 +/* 80202D90 001FFCF0 28 03 00 00 */ cmplwi r3, 0 +/* 80202D94 001FFCF4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80202D98 001FFCF8 41 82 00 08 */ beq lbl_80202DA0 +/* 80202D9C 001FFCFC 48 00 00 15 */ bl sub_80202db0 +lbl_80202DA0: +/* 80202DA0 001FFD00 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80202DA4 001FFD04 7C 08 03 A6 */ mtlr r0 +/* 80202DA8 001FFD08 38 21 00 10 */ addi r1, r1, 0x10 +/* 80202DAC 001FFD0C 4E 80 00 20 */ blr + +.global sub_80202db0 +sub_80202db0: +/* 80202DB0 001FFD10 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80202DB4 001FFD14 7C 08 02 A6 */ mflr r0 +/* 80202DB8 001FFD18 90 01 00 24 */ stw r0, 0x24(r1) +/* 80202DBC 001FFD1C BF 41 00 08 */ stmw r26, 8(r1) +/* 80202DC0 001FFD20 7C 7E 1B 78 */ mr r30, r3 +/* 80202DC4 001FFD24 7C 9F 23 78 */ mr r31, r4 +/* 80202DC8 001FFD28 48 13 B3 99 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80202DCC 001FFD2C 80 1F 00 10 */ lwz r0, 0x10(r31) +/* 80202DD0 001FFD30 38 7E 00 14 */ addi r3, r30, 0x14 +/* 80202DD4 001FFD34 38 9F 00 14 */ addi r4, r31, 0x14 +/* 80202DD8 001FFD38 90 1E 00 10 */ stw r0, 0x10(r30) +/* 80202DDC 001FFD3C 48 10 FD 99 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80202DE0 001FFD40 80 1F 00 48 */ lwz r0, 0x48(r31) +/* 80202DE4 001FFD44 90 1E 00 48 */ stw r0, 0x48(r30) +/* 80202DE8 001FFD48 80 1F 00 4C */ lwz r0, 0x4c(r31) +/* 80202DEC 001FFD4C 90 1E 00 4C */ stw r0, 0x4c(r30) +/* 80202DF0 001FFD50 80 1F 00 48 */ lwz r0, 0x48(r31) +/* 80202DF4 001FFD54 2C 00 00 00 */ cmpwi r0, 0 +/* 80202DF8 001FFD58 40 82 00 1C */ bne lbl_80202E14 +/* 80202DFC 001FFD5C 80 1F 00 4C */ lwz r0, 0x4c(r31) +/* 80202E00 001FFD60 2C 00 00 00 */ cmpwi r0, 0 +/* 80202E04 001FFD64 40 82 00 10 */ bne lbl_80202E14 +/* 80202E08 001FFD68 38 00 00 00 */ li r0, 0 +/* 80202E0C 001FFD6C 90 1E 00 50 */ stw r0, 0x50(r30) +/* 80202E10 001FFD70 48 00 00 70 */ b lbl_80202E80 +lbl_80202E14: +/* 80202E14 001FFD74 80 1E 00 4C */ lwz r0, 0x4c(r30) +/* 80202E18 001FFD78 1C 60 00 30 */ mulli r3, r0, 0x30 +/* 80202E1C 001FFD7C 2C 03 00 00 */ cmpwi r3, 0 +/* 80202E20 001FFD80 40 82 00 10 */ bne lbl_80202E30 +/* 80202E24 001FFD84 38 00 00 00 */ li r0, 0 +/* 80202E28 001FFD88 90 1E 00 50 */ stw r0, 0x50(r30) +/* 80202E2C 001FFD8C 48 00 00 18 */ b lbl_80202E44 +lbl_80202E30: +/* 80202E30 001FFD90 3C 80 80 3D */ lis r4, lbl_803D2588@ha +/* 80202E34 001FFD94 38 A0 00 00 */ li r5, 0 +/* 80202E38 001FFD98 38 84 25 88 */ addi r4, r4, lbl_803D2588@l +/* 80202E3C 001FFD9C 48 11 29 DD */ bl __nwa__FUlPCcPCc +/* 80202E40 001FFDA0 90 7E 00 50 */ stw r3, 0x50(r30) +lbl_80202E44: +/* 80202E44 001FFDA4 83 5E 00 48 */ lwz r26, 0x48(r30) +/* 80202E48 001FFDA8 3B A0 00 00 */ li r29, 0 +/* 80202E4C 001FFDAC 83 7F 00 50 */ lwz r27, 0x50(r31) +/* 80202E50 001FFDB0 83 9E 00 50 */ lwz r28, 0x50(r30) +/* 80202E54 001FFDB4 48 00 00 24 */ b lbl_80202E78 +lbl_80202E58: +/* 80202E58 001FFDB8 28 1C 00 00 */ cmplwi r28, 0 +/* 80202E5C 001FFDBC 41 82 00 10 */ beq lbl_80202E6C +/* 80202E60 001FFDC0 7F 83 E3 78 */ mr r3, r28 +/* 80202E64 001FFDC4 7F 64 DB 78 */ mr r4, r27 +/* 80202E68 001FFDC8 48 10 FD 0D */ bl __ct__12CTransform4fFRC12CTransform4f +lbl_80202E6C: +/* 80202E6C 001FFDCC 3B 9C 00 30 */ addi r28, r28, 0x30 +/* 80202E70 001FFDD0 3B BD 00 01 */ addi r29, r29, 1 +/* 80202E74 001FFDD4 3B 7B 00 30 */ addi r27, r27, 0x30 +lbl_80202E78: +/* 80202E78 001FFDD8 7C 1D D0 00 */ cmpw r29, r26 +/* 80202E7C 001FFDDC 41 80 FF DC */ blt lbl_80202E58 +lbl_80202E80: +/* 80202E80 001FFDE0 80 1F 00 54 */ lwz r0, 0x54(r31) +/* 80202E84 001FFDE4 7F C3 F3 78 */ mr r3, r30 +/* 80202E88 001FFDE8 90 1E 00 54 */ stw r0, 0x54(r30) +/* 80202E8C 001FFDEC 80 1F 00 58 */ lwz r0, 0x58(r31) +/* 80202E90 001FFDF0 90 1E 00 58 */ stw r0, 0x58(r30) +/* 80202E94 001FFDF4 80 1F 00 5C */ lwz r0, 0x5c(r31) +/* 80202E98 001FFDF8 90 1E 00 5C */ stw r0, 0x5c(r30) +/* 80202E9C 001FFDFC 80 1F 00 60 */ lwz r0, 0x60(r31) +/* 80202EA0 001FFE00 90 1E 00 60 */ stw r0, 0x60(r30) +/* 80202EA4 001FFE04 C0 1F 00 64 */ lfs f0, 0x64(r31) +/* 80202EA8 001FFE08 D0 1E 00 64 */ stfs f0, 0x64(r30) +/* 80202EAC 001FFE0C C0 1F 00 68 */ lfs f0, 0x68(r31) +/* 80202EB0 001FFE10 D0 1E 00 68 */ stfs f0, 0x68(r30) +/* 80202EB4 001FFE14 C0 1F 00 6C */ lfs f0, 0x6c(r31) +/* 80202EB8 001FFE18 D0 1E 00 6C */ stfs f0, 0x6c(r30) +/* 80202EBC 001FFE1C BB 41 00 08 */ lmw r26, 8(r1) +/* 80202EC0 001FFE20 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80202EC4 001FFE24 7C 08 03 A6 */ mtlr r0 +/* 80202EC8 001FFE28 38 21 00 20 */ addi r1, r1, 0x20 +/* 80202ECC 001FFE2C 4E 80 00 20 */ blr + +.global sub_80202ed0 +sub_80202ed0: +/* 80202ED0 001FFE30 D0 23 00 00 */ stfs f1, 0(r3) +/* 80202ED4 001FFE34 90 83 00 04 */ stw r4, 4(r3) +/* 80202ED8 001FFE38 90 A3 00 08 */ stw r5, 8(r3) +/* 80202EDC 001FFE3C 90 C3 00 0C */ stw r6, 0xc(r3) +/* 80202EE0 001FFE40 D0 43 00 10 */ stfs f2, 0x10(r3) +/* 80202EE4 001FFE44 90 E3 00 14 */ stw r7, 0x14(r3) +/* 80202EE8 001FFE48 91 03 00 18 */ stw r8, 0x18(r3) +/* 80202EEC 001FFE4C 91 23 00 1C */ stw r9, 0x1c(r3) +/* 80202EF0 001FFE50 4E 80 00 20 */ blr + +.global __ct__Q212CMapUniverse18CMapObjectSortInfoFfiii6CColor6CColor +__ct__Q212CMapUniverse18CMapObjectSortInfoFfiii6CColor6CColor: +/* 80202EF4 001FFE54 D0 23 00 00 */ stfs f1, 0(r3) +/* 80202EF8 001FFE58 90 83 00 04 */ stw r4, 4(r3) +/* 80202EFC 001FFE5C 90 A3 00 08 */ stw r5, 8(r3) +/* 80202F00 001FFE60 90 C3 00 0C */ stw r6, 0xc(r3) +/* 80202F04 001FFE64 80 07 00 00 */ lwz r0, 0(r7) +/* 80202F08 001FFE68 90 03 00 10 */ stw r0, 0x10(r3) +/* 80202F0C 001FFE6C 80 08 00 00 */ lwz r0, 0(r8) +/* 80202F10 001FFE70 90 03 00 14 */ stw r0, 0x14(r3) +/* 80202F14 001FFE74 4E 80 00 20 */ blr + +.global sub_80202f18 +sub_80202f18: +/* 80202F18 001FFE78 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80202F1C 001FFE7C 7C 08 02 A6 */ mflr r0 +/* 80202F20 001FFE80 90 01 00 64 */ stw r0, 0x64(r1) +/* 80202F24 001FFE84 DB E1 00 50 */ stfd f31, 0x50(r1) +/* 80202F28 001FFE88 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 80202F2C 001FFE8C 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 80202F30 001FFE90 93 C1 00 48 */ stw r30, 0x48(r1) +/* 80202F34 001FFE94 93 A1 00 44 */ stw r29, 0x44(r1) +/* 80202F38 001FFE98 93 81 00 40 */ stw r28, 0x40(r1) +/* 80202F3C 001FFE9C 7C 7D 1B 78 */ mr r29, r3 +/* 80202F40 001FFEA0 7C 9E 23 78 */ mr r30, r4 +/* 80202F44 001FFEA4 80 63 00 00 */ lwz r3, 0(r3) +/* 80202F48 001FFEA8 3C 80 2A AB */ lis r4, 0x2AAAAAAB@ha +/* 80202F4C 001FFEAC 80 DE 00 00 */ lwz r6, 0(r30) +/* 80202F50 001FFEB0 38 84 AA AB */ addi r4, r4, 0x2AAAAAAB@l +/* 80202F54 001FFEB4 7C BF 2B 78 */ mr r31, r5 +/* 80202F58 001FFEB8 7C 03 30 50 */ subf r0, r3, r6 +/* 80202F5C 001FFEBC 7C 04 00 96 */ mulhw r0, r4, r0 +/* 80202F60 001FFEC0 7C 00 16 70 */ srawi r0, r0, 2 +/* 80202F64 001FFEC4 54 04 0F FE */ srwi r4, r0, 0x1f +/* 80202F68 001FFEC8 7C 80 22 14 */ add r4, r0, r4 +/* 80202F6C 001FFECC 2C 04 00 01 */ cmpwi r4, 1 +/* 80202F70 001FFED0 40 81 01 58 */ ble lbl_802030C8 +/* 80202F74 001FFED4 2C 04 00 14 */ cmpwi r4, 0x14 +/* 80202F78 001FFED8 41 81 00 30 */ bgt lbl_80202FA8 +/* 80202F7C 001FFEDC 88 FF 00 00 */ lbz r7, 0(r31) +/* 80202F80 001FFEE0 38 61 00 34 */ addi r3, r1, 0x34 +/* 80202F84 001FFEE4 80 DE 00 00 */ lwz r6, 0(r30) +/* 80202F88 001FFEE8 38 81 00 30 */ addi r4, r1, 0x30 +/* 80202F8C 001FFEEC 80 1D 00 00 */ lwz r0, 0(r29) +/* 80202F90 001FFEF0 38 A1 00 14 */ addi r5, r1, 0x14 +/* 80202F94 001FFEF4 98 E1 00 14 */ stb r7, 0x14(r1) +/* 80202F98 001FFEF8 90 C1 00 30 */ stw r6, 0x30(r1) +/* 80202F9C 001FFEFC 90 01 00 34 */ stw r0, 0x34(r1) +/* 80202FA0 001FFF00 48 00 06 B5 */ bl "__insertion_sort,Q24rstl17rmemory_allocator>,29CMapObjectSortInfoGreaterThan>__4rstlFQ24rstl162pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl162pointer_iterator,Q24rstl17rmemory_allocator>,29CMapObjectSortInfoGreaterThan>__4rstlFQ24rstl162pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl162pointer_iterator,Q24rstl17rmemory_allocator>,29CMapObjectSortInfoGreaterThan>__4rstlFQ24rstl162pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl162pointer_iterator,Q24rstl17rmemory_allocator>PCc" +/* 8024D29C 0024A1FC 7F E3 FB 78 */ mr r3, r31 +/* 8024D2A0 0024A200 38 81 00 10 */ addi r4, r1, 0x10 +/* 8024D2A4 0024A204 48 10 12 69 */ bl SetComment__13CCardFileInfoFv +/* 8024D2A8 0024A208 38 61 00 10 */ addi r3, r1, 0x10 +/* 8024D2AC 0024A20C 48 0F 08 35 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8024D2B0 0024A210 38 61 00 20 */ addi r3, r1, 0x20 +/* 8024D2B4 0024A214 48 0F 08 2D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8024D2B8 0024A218 80 9E 00 04 */ lwz r4, 4(r30) +/* 8024D2BC 0024A21C 7F E3 FB 78 */ mr r3, r31 +/* 8024D2C0 0024A220 80 AD A0 64 */ lwz r5, gpSimplePool@sda21(r13) +/* 8024D2C4 0024A224 48 10 0E 45 */ bl LockBannerToken__13CCardFileInfoFiR11CSimplePool +/* 8024D2C8 0024A228 80 9E 00 08 */ lwz r4, 8(r30) +/* 8024D2CC 0024A22C 7F E3 FB 78 */ mr r3, r31 +/* 8024D2D0 0024A230 80 CD A0 64 */ lwz r6, gpSimplePool@sda21(r13) +/* 8024D2D4 0024A234 38 A0 00 02 */ li r5, 2 +/* 8024D2D8 0024A238 48 10 0D 91 */ bl LockIconToken__13CCardFileInfoFiiR11CSimplePool +/* 8024D2DC 0024A23C 80 7E 01 98 */ lwz r3, 0x198(r30) +/* 8024D2E0 0024A240 38 80 0B BC */ li r4, 0xbbc +/* 8024D2E4 0024A244 38 AD 97 11 */ addi r5, r13, lbl_805A82D1@sda21 +/* 8024D2E8 0024A248 3B E3 00 F4 */ addi r31, r3, 0xf4 +/* 8024D2EC 0024A24C 7F E3 FB 78 */ mr r3, r31 +/* 8024D2F0 0024A250 4B F8 69 2D */ bl "resize__Q24rstl37vectorFiRCUc" +/* 8024D2F4 0024A254 80 9F 00 0C */ lwz r4, 0xc(r31) +/* 8024D2F8 0024A258 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 8024D2FC 0024A25C 38 A0 0B BC */ li r5, 0xbbc +/* 8024D300 0024A260 38 C0 00 01 */ li r6, 1 +/* 8024D304 0024A264 38 E0 10 00 */ li r7, 0x1000 +/* 8024D308 0024A268 48 0F 20 35 */ bl __ct__16CMemoryStreamOutFPvUlQ216CMemoryStreamOut10EOwnerShipi +/* 8024D30C 0024A26C 38 61 00 08 */ addi r3, r1, 8 +/* 8024D310 0024A270 38 80 00 00 */ li r4, 0 +/* 8024D314 0024A274 4B FF F4 C1 */ bl __ct__11SSaveHeaderFi +/* 8024D318 0024A278 80 1E 00 EC */ lwz r0, 0xec(r30) +/* 8024D31C 0024A27C 3B FE 00 E8 */ addi r31, r30, 0xe8 +/* 8024D320 0024A280 38 61 00 08 */ addi r3, r1, 8 +/* 8024D324 0024A284 38 81 00 A0 */ addi r4, r1, 0xa0 +/* 8024D328 0024A288 7C 00 00 34 */ cntlzw r0, r0 +/* 8024D32C 0024A28C 54 00 DE 3E */ rlwinm r0, r0, 0x1b, 0x18, 0x1f +/* 8024D330 0024A290 7C 00 00 34 */ cntlzw r0, r0 +/* 8024D334 0024A294 54 00 DE 3E */ rlwinm r0, r0, 0x1b, 0x18, 0x1f +/* 8024D338 0024A298 98 01 00 0C */ stb r0, 0xc(r1) +/* 8024D33C 0024A29C 80 1E 00 F4 */ lwz r0, 0xf4(r30) +/* 8024D340 0024A2A0 7C 00 00 34 */ cntlzw r0, r0 +/* 8024D344 0024A2A4 54 00 DE 3E */ rlwinm r0, r0, 0x1b, 0x18, 0x1f +/* 8024D348 0024A2A8 7C 00 00 34 */ cntlzw r0, r0 +/* 8024D34C 0024A2AC 54 00 DE 3E */ rlwinm r0, r0, 0x1b, 0x18, 0x1f +/* 8024D350 0024A2B0 98 01 00 0D */ stb r0, 0xd(r1) +/* 8024D354 0024A2B4 80 BE 00 FC */ lwz r5, 0xfc(r30) +/* 8024D358 0024A2B8 7C 05 00 D0 */ neg r0, r5 +/* 8024D35C 0024A2BC 7C 00 2B 78 */ or r0, r0, r5 +/* 8024D360 0024A2C0 54 00 0F FE */ srwi r0, r0, 0x1f +/* 8024D364 0024A2C4 98 01 00 0E */ stb r0, 0xe(r1) +/* 8024D368 0024A2C8 4B FF F3 39 */ bl DoPut__11SSaveHeaderFv +/* 8024D36C 0024A2CC 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 8024D370 0024A2D0 48 0F 21 49 */ bl FlushShiftRegister__13COutputStreamFv +/* 8024D374 0024A2D4 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 8024D378 0024A2D8 38 9E 00 34 */ addi r4, r30, 0x34 +/* 8024D37C 0024A2DC 38 A0 00 AE */ li r5, 0xae +/* 8024D380 0024A2E0 48 0F 22 29 */ bl DoPut__13COutputStreamFPCvUl +/* 8024D384 0024A2E4 7F FD FB 78 */ mr r29, r31 +/* 8024D388 0024A2E8 48 00 00 1C */ b lbl_8024D3A4 +lbl_8024D38C: +/* 8024D38C 0024A2EC 80 7D 00 04 */ lwz r3, 4(r29) +/* 8024D390 0024A2F0 28 03 00 00 */ cmplwi r3, 0 +/* 8024D394 0024A2F4 41 82 00 0C */ beq lbl_8024D3A0 +/* 8024D398 0024A2F8 38 81 00 A0 */ addi r4, r1, 0xa0 +/* 8024D39C 0024A2FC 4B FF F0 75 */ bl DoPut__13SGameFileSlotFv +lbl_8024D3A0: +/* 8024D3A0 0024A300 3B BD 00 08 */ addi r29, r29, 8 +lbl_8024D3A4: +/* 8024D3A4 0024A304 80 1E 00 E4 */ lwz r0, 0xe4(r30) +/* 8024D3A8 0024A308 54 00 18 38 */ slwi r0, r0, 3 +/* 8024D3AC 0024A30C 7C 1F 02 14 */ add r0, r31, r0 +/* 8024D3B0 0024A310 7C 1D 00 40 */ cmplw r29, r0 +/* 8024D3B4 0024A314 40 82 FF D8 */ bne lbl_8024D38C +/* 8024D3B8 0024A318 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 8024D3BC 0024A31C 38 80 FF FF */ li r4, -1 +/* 8024D3C0 0024A320 48 0F 1F 01 */ bl __dt__16CMemoryStreamOutFv +/* 8024D3C4 0024A324 80 01 01 44 */ lwz r0, 0x144(r1) +/* 8024D3C8 0024A328 83 E1 01 3C */ lwz r31, 0x13c(r1) +/* 8024D3CC 0024A32C 83 C1 01 38 */ lwz r30, 0x138(r1) +/* 8024D3D0 0024A330 83 A1 01 34 */ lwz r29, 0x134(r1) +/* 8024D3D4 0024A334 7C 08 03 A6 */ mtlr r0 +/* 8024D3D8 0024A338 38 21 01 40 */ addi r1, r1, 0x140 +/* 8024D3DC 0024A33C 4E 80 00 20 */ blr + +.global StartCardFormat__17CMemoryCardDriverFv +StartCardFormat__17CMemoryCardDriverFv: +/* 8024D3E0 0024A340 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024D3E4 0024A344 7C 08 02 A6 */ mflr r0 +/* 8024D3E8 0024A348 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024D3EC 0024A34C 38 00 00 00 */ li r0, 0 +/* 8024D3F0 0024A350 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024D3F4 0024A354 7C 7F 1B 78 */ mr r31, r3 +/* 8024D3F8 0024A358 90 03 00 14 */ stw r0, 0x14(r3) +/* 8024D3FC 0024A35C 38 00 00 25 */ li r0, 0x25 +/* 8024D400 0024A360 90 03 00 10 */ stw r0, 0x10(r3) +/* 8024D404 0024A364 80 63 00 00 */ lwz r3, 0(r3) +/* 8024D408 0024A368 48 10 0F 41 */ bl FormatCard__14CMemoryCardSysFQ214CMemoryCardSys15EMemoryCardPort +/* 8024D40C 0024A36C 7C 64 1B 79 */ or. r4, r3, r3 +/* 8024D410 0024A370 41 82 00 0C */ beq lbl_8024D41C +/* 8024D414 0024A374 7F E3 FB 78 */ mr r3, r31 +/* 8024D418 0024A378 48 00 0A D1 */ bl UpdateCardFormat__17CMemoryCardDriverFv +lbl_8024D41C: +/* 8024D41C 0024A37C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024D420 0024A380 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024D424 0024A384 7C 08 03 A6 */ mtlr r0 +/* 8024D428 0024A388 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024D42C 0024A38C 4E 80 00 20 */ blr + +.global StartFileDeleteAltTransactional__17CMemoryCardDriverFv +StartFileDeleteAltTransactional__17CMemoryCardDriverFv: +/* 8024D430 0024A390 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8024D434 0024A394 7C 08 02 A6 */ mflr r0 +/* 8024D438 0024A398 38 82 B8 B0 */ addi r4, r2, lbl_805AD5D0@sda21 +/* 8024D43C 0024A39C 90 01 00 24 */ stw r0, 0x24(r1) +/* 8024D440 0024A3A0 38 00 00 00 */ li r0, 0 +/* 8024D444 0024A3A4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8024D448 0024A3A8 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8024D44C 0024A3AC 7C 7E 1B 78 */ mr r30, r3 +/* 8024D450 0024A3B0 90 03 00 14 */ stw r0, 0x14(r3) +/* 8024D454 0024A3B4 38 00 00 23 */ li r0, 0x23 +/* 8024D458 0024A3B8 38 61 00 08 */ addi r3, r1, 8 +/* 8024D45C 0024A3BC 90 1E 00 10 */ stw r0, 0x10(r30) +/* 8024D460 0024A3C0 80 1E 01 94 */ lwz r0, 0x194(r30) +/* 8024D464 0024A3C4 7C 00 00 34 */ cntlzw r0, r0 +/* 8024D468 0024A3C8 54 00 E8 FA */ rlwinm r0, r0, 0x1d, 3, 0x1d +/* 8024D46C 0024A3CC 7C 84 00 2E */ lwzx r4, r4, r0 +/* 8024D470 0024A3D0 4B DB 78 49 */ bl string_l__4rstlFPCc +/* 8024D474 0024A3D4 80 7E 00 00 */ lwz r3, 0(r30) +/* 8024D478 0024A3D8 38 81 00 08 */ addi r4, r1, 8 +/* 8024D47C 0024A3DC 48 10 0B 35 */ bl DeleteFile__14CMemoryCardSysFiPCc +/* 8024D480 0024A3E0 7C 60 1B 78 */ mr r0, r3 +/* 8024D484 0024A3E4 38 61 00 08 */ addi r3, r1, 8 +/* 8024D488 0024A3E8 7C 1F 03 78 */ mr r31, r0 +/* 8024D48C 0024A3EC 48 0F 06 55 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8024D490 0024A3F0 2C 1F 00 00 */ cmpwi r31, 0 +/* 8024D494 0024A3F4 41 82 00 10 */ beq lbl_8024D4A4 +/* 8024D498 0024A3F8 7F C3 F3 78 */ mr r3, r30 +/* 8024D49C 0024A3FC 7F E4 FB 78 */ mr r4, r31 +/* 8024D4A0 0024A400 48 00 0A 9D */ bl UpdateFileAltDeleteTransactional__17CMemoryCardDriverFv +lbl_8024D4A4: +/* 8024D4A4 0024A404 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8024D4A8 0024A408 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8024D4AC 0024A40C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8024D4B0 0024A410 7C 08 03 A6 */ mtlr r0 +/* 8024D4B4 0024A414 38 21 00 20 */ addi r1, r1, 0x20 +/* 8024D4B8 0024A418 4E 80 00 20 */ blr + +.global StartFileWriteTransactional__17CMemoryCardDriverFv +StartFileWriteTransactional__17CMemoryCardDriverFv: +/* 8024D4BC 0024A41C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024D4C0 0024A420 7C 08 02 A6 */ mflr r0 +/* 8024D4C4 0024A424 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024D4C8 0024A428 38 00 00 00 */ li r0, 0 +/* 8024D4CC 0024A42C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024D4D0 0024A430 7C 7F 1B 78 */ mr r31, r3 +/* 8024D4D4 0024A434 90 03 00 14 */ stw r0, 0x14(r3) +/* 8024D4D8 0024A438 38 00 00 22 */ li r0, 0x22 +/* 8024D4DC 0024A43C 90 03 00 10 */ stw r0, 0x10(r3) +/* 8024D4E0 0024A440 80 63 01 98 */ lwz r3, 0x198(r3) +/* 8024D4E4 0024A444 48 10 09 61 */ bl Write__14CMemoryCardSysFRQ214CMemoryCardSys13CCardFileInfoPCvUlUl +/* 8024D4E8 0024A448 7C 64 1B 79 */ or. r4, r3, r3 +/* 8024D4EC 0024A44C 41 82 00 0C */ beq lbl_8024D4F8 +/* 8024D4F0 0024A450 7F E3 FB 78 */ mr r3, r31 +/* 8024D4F4 0024A454 48 00 0B ED */ bl UpdateFileWriteTransactional__17CMemoryCardDriverFv +lbl_8024D4F8: +/* 8024D4F8 0024A458 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024D4FC 0024A45C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024D500 0024A460 7C 08 03 A6 */ mtlr r0 +/* 8024D504 0024A464 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024D508 0024A468 4E 80 00 20 */ blr + +.global StartFileCreateTransactional__17CMemoryCardDriverFv +StartFileCreateTransactional__17CMemoryCardDriverFv: +/* 8024D50C 0024A46C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8024D510 0024A470 7C 08 02 A6 */ mflr r0 +/* 8024D514 0024A474 90 01 00 34 */ stw r0, 0x34(r1) +/* 8024D518 0024A478 38 00 00 00 */ li r0, 0 +/* 8024D51C 0024A47C 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8024D520 0024A480 7C 7F 1B 78 */ mr r31, r3 +/* 8024D524 0024A484 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8024D528 0024A488 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8024D52C 0024A48C 90 03 00 14 */ stw r0, 0x14(r3) +/* 8024D530 0024A490 38 00 00 21 */ li r0, 0x21 +/* 8024D534 0024A494 90 03 00 10 */ stw r0, 0x10(r3) +/* 8024D538 0024A498 48 00 16 B9 */ bl ClearFileInfo__17CMemoryCardDriverFv +/* 8024D53C 0024A49C 80 1F 00 18 */ lwz r0, 0x18(r31) +/* 8024D540 0024A4A0 28 00 20 00 */ cmplwi r0, 0x2000 +/* 8024D544 0024A4A4 41 80 00 10 */ blt lbl_8024D554 +/* 8024D548 0024A4A8 80 1F 00 1C */ lwz r0, 0x1c(r31) +/* 8024D54C 0024A4AC 28 00 00 01 */ cmplwi r0, 1 +/* 8024D550 0024A4B0 40 80 00 18 */ bge lbl_8024D568 +lbl_8024D554: +/* 8024D554 0024A4B4 38 60 00 14 */ li r3, 0x14 +/* 8024D558 0024A4B8 38 00 00 05 */ li r0, 5 +/* 8024D55C 0024A4BC 90 7F 00 10 */ stw r3, 0x10(r31) +/* 8024D560 0024A4C0 90 1F 00 14 */ stw r0, 0x14(r31) +/* 8024D564 0024A4C4 48 00 00 A4 */ b lbl_8024D608 +lbl_8024D568: +/* 8024D568 0024A4C8 80 1F 01 94 */ lwz r0, 0x194(r31) +/* 8024D56C 0024A4CC 3C 60 80 3D */ lis r3, lbl_803D47CC@ha +/* 8024D570 0024A4D0 38 83 47 CC */ addi r4, r3, lbl_803D47CC@l +/* 8024D574 0024A4D4 3B A0 00 00 */ li r29, 0 +/* 8024D578 0024A4D8 7C 00 00 34 */ cntlzw r0, r0 +/* 8024D57C 0024A4DC 38 60 01 14 */ li r3, 0x114 +/* 8024D580 0024A4E0 54 00 D9 7E */ srwi r0, r0, 5 +/* 8024D584 0024A4E4 38 84 02 A1 */ addi r4, r4, 0x2a1 +/* 8024D588 0024A4E8 90 1F 01 94 */ stw r0, 0x194(r31) +/* 8024D58C 0024A4EC 38 A0 00 00 */ li r5, 0 +/* 8024D590 0024A4F0 48 0C 82 DD */ bl __nw__FUlPCcPCc +/* 8024D594 0024A4F4 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8024D598 0024A4F8 41 82 00 34 */ beq lbl_8024D5CC +/* 8024D59C 0024A4FC 80 1F 01 94 */ lwz r0, 0x194(r31) +/* 8024D5A0 0024A500 38 82 B8 B0 */ addi r4, r2, lbl_805AD5D0@sda21 +/* 8024D5A4 0024A504 38 61 00 08 */ addi r3, r1, 8 +/* 8024D5A8 0024A508 54 00 10 3A */ slwi r0, r0, 2 +/* 8024D5AC 0024A50C 7C 84 00 2E */ lwzx r4, r4, r0 +/* 8024D5B0 0024A510 4B DB 77 09 */ bl string_l__4rstlFPCc +/* 8024D5B4 0024A514 80 9F 00 00 */ lwz r4, 0(r31) +/* 8024D5B8 0024A518 7F C3 F3 78 */ mr r3, r30 +/* 8024D5BC 0024A51C 38 A1 00 08 */ addi r5, r1, 8 +/* 8024D5C0 0024A520 3B A0 00 01 */ li r29, 1 +/* 8024D5C4 0024A524 48 10 0C 35 */ bl __ct__13CCardFileInfoFRCQ24rstl6string +/* 8024D5C8 0024A528 7C 7E 1B 78 */ mr r30, r3 +lbl_8024D5CC: +/* 8024D5CC 0024A52C 7F C4 F3 78 */ mr r4, r30 +/* 8024D5D0 0024A530 38 7F 01 98 */ addi r3, r31, 0x198 +/* 8024D5D4 0024A534 48 00 00 51 */ bl sub_8024d624 +/* 8024D5D8 0024A538 7F A0 07 75 */ extsb. r0, r29 +/* 8024D5DC 0024A53C 41 82 00 0C */ beq lbl_8024D5E8 +/* 8024D5E0 0024A540 38 61 00 08 */ addi r3, r1, 8 +/* 8024D5E4 0024A544 48 0F 04 FD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8024D5E8: +/* 8024D5E8 0024A548 7F E3 FB 78 */ mr r3, r31 +/* 8024D5EC 0024A54C 4B FF FB C5 */ bl InitializeFileInfo__17CMemoryCardDriverFv +/* 8024D5F0 0024A550 80 7F 01 98 */ lwz r3, 0x198(r31) +/* 8024D5F4 0024A554 48 10 09 E5 */ bl "CreateFile__14CMemoryCardSysFQ214CMemoryCardSys15EMemoryCardPortRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>UiRQ214CMemoryCardSys13CCardFileInfo" +/* 8024D5F8 0024A558 7C 64 1B 79 */ or. r4, r3, r3 +/* 8024D5FC 0024A55C 41 82 00 0C */ beq lbl_8024D608 +/* 8024D600 0024A560 7F E3 FB 78 */ mr r3, r31 +/* 8024D604 0024A564 48 00 0B 85 */ bl UpdateFileCreateTransactional__17CMemoryCardDriverFv +lbl_8024D608: +/* 8024D608 0024A568 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8024D60C 0024A56C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8024D610 0024A570 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8024D614 0024A574 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8024D618 0024A578 7C 08 03 A6 */ mtlr r0 +/* 8024D61C 0024A57C 38 21 00 30 */ addi r1, r1, 0x30 +/* 8024D620 0024A580 4E 80 00 20 */ blr + +.global sub_8024d624 +sub_8024d624: +/* 8024D624 0024A584 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024D628 0024A588 7C 08 02 A6 */ mflr r0 +/* 8024D62C 0024A58C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024D630 0024A590 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024D634 0024A594 7C 9F 23 78 */ mr r31, r4 +/* 8024D638 0024A598 38 80 00 01 */ li r4, 1 +/* 8024D63C 0024A59C 93 C1 00 08 */ stw r30, 8(r1) +/* 8024D640 0024A5A0 7C 7E 1B 78 */ mr r30, r3 +/* 8024D644 0024A5A4 80 63 00 00 */ lwz r3, 0(r3) +/* 8024D648 0024A5A8 48 00 00 25 */ bl __dt__13CCardFileInfoFv +/* 8024D64C 0024A5AC 93 FE 00 00 */ stw r31, 0(r30) +/* 8024D650 0024A5B0 7F C3 F3 78 */ mr r3, r30 +/* 8024D654 0024A5B4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024D658 0024A5B8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024D65C 0024A5BC 83 C1 00 08 */ lwz r30, 8(r1) +/* 8024D660 0024A5C0 7C 08 03 A6 */ mtlr r0 +/* 8024D664 0024A5C4 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024D668 0024A5C8 4E 80 00 20 */ blr + +.global __dt__13CCardFileInfoFv +__dt__13CCardFileInfoFv: +/* 8024D66C 0024A5CC 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8024D670 0024A5D0 7C 08 02 A6 */ mflr r0 +/* 8024D674 0024A5D4 90 01 00 44 */ stw r0, 0x44(r1) +/* 8024D678 0024A5D8 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8024D67C 0024A5DC 7C 9F 23 78 */ mr r31, r4 +/* 8024D680 0024A5E0 93 C1 00 38 */ stw r30, 0x38(r1) +/* 8024D684 0024A5E4 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8024D688 0024A5E8 93 A1 00 34 */ stw r29, 0x34(r1) +/* 8024D68C 0024A5EC 93 81 00 30 */ stw r28, 0x30(r1) +/* 8024D690 0024A5F0 41 82 01 3C */ beq lbl_8024D7CC +/* 8024D694 0024A5F4 34 1E 01 04 */ addic. r0, r30, 0x104 +/* 8024D698 0024A5F8 41 82 00 38 */ beq lbl_8024D6D0 +/* 8024D69C 0024A5FC 80 7E 01 10 */ lwz r3, 0x110(r30) +/* 8024D6A0 0024A600 80 1E 01 08 */ lwz r0, 0x108(r30) +/* 8024D6A4 0024A604 90 61 00 1C */ stw r3, 0x1c(r1) +/* 8024D6A8 0024A608 7C 83 02 14 */ add r4, r3, r0 +/* 8024D6AC 0024A60C 7C 03 20 50 */ subf r0, r3, r4 +/* 8024D6B0 0024A610 90 81 00 24 */ stw r4, 0x24(r1) +/* 8024D6B4 0024A614 90 81 00 20 */ stw r4, 0x20(r1) +/* 8024D6B8 0024A618 90 61 00 18 */ stw r3, 0x18(r1) +/* 8024D6BC 0024A61C 7C 09 03 A6 */ mtctr r0 +/* 8024D6C0 0024A620 7C 03 20 40 */ cmplw r3, r4 +/* 8024D6C4 0024A624 41 82 00 08 */ beq lbl_8024D6CC +lbl_8024D6C8: +/* 8024D6C8 0024A628 42 00 00 00 */ bdnz lbl_8024D6C8 +lbl_8024D6CC: +/* 8024D6CC 0024A62C 48 0C 82 65 */ bl Free__7CMemoryFPCv +lbl_8024D6D0: +/* 8024D6D0 0024A630 34 1E 00 F4 */ addic. r0, r30, 0xf4 +/* 8024D6D4 0024A634 41 82 00 40 */ beq lbl_8024D714 +/* 8024D6D8 0024A638 80 7E 01 00 */ lwz r3, 0x100(r30) +/* 8024D6DC 0024A63C 80 1E 00 F8 */ lwz r0, 0xf8(r30) +/* 8024D6E0 0024A640 90 61 00 0C */ stw r3, 0xc(r1) +/* 8024D6E4 0024A644 7C 83 02 14 */ add r4, r3, r0 +/* 8024D6E8 0024A648 7C 03 20 50 */ subf r0, r3, r4 +/* 8024D6EC 0024A64C 90 81 00 14 */ stw r4, 0x14(r1) +/* 8024D6F0 0024A650 90 81 00 10 */ stw r4, 0x10(r1) +/* 8024D6F4 0024A654 90 61 00 08 */ stw r3, 8(r1) +/* 8024D6F8 0024A658 7C 09 03 A6 */ mtctr r0 +/* 8024D6FC 0024A65C 7C 03 20 40 */ cmplw r3, r4 +/* 8024D700 0024A660 41 82 00 08 */ beq lbl_8024D708 +lbl_8024D704: +/* 8024D704 0024A664 42 00 00 00 */ bdnz lbl_8024D704 +lbl_8024D708: +/* 8024D708 0024A668 28 03 00 00 */ cmplwi r3, 0 +/* 8024D70C 0024A66C 41 82 00 08 */ beq lbl_8024D714 +/* 8024D710 0024A670 48 0C 82 21 */ bl Free__7CMemoryFPCv +lbl_8024D714: +/* 8024D714 0024A674 34 1E 00 50 */ addic. r0, r30, 0x50 +/* 8024D718 0024A678 41 82 00 50 */ beq lbl_8024D768 +/* 8024D71C 0024A67C 3B 9E 00 54 */ addi r28, r30, 0x54 +/* 8024D720 0024A680 3B A0 00 00 */ li r29, 0 +/* 8024D724 0024A684 48 00 00 30 */ b lbl_8024D754 +lbl_8024D728: +/* 8024D728 0024A688 28 1C 00 00 */ cmplwi r28, 0 +/* 8024D72C 0024A68C 41 82 00 20 */ beq lbl_8024D74C +/* 8024D730 0024A690 34 1C 00 08 */ addic. r0, r28, 8 +/* 8024D734 0024A694 41 82 00 18 */ beq lbl_8024D74C +/* 8024D738 0024A698 34 1C 00 08 */ addic. r0, r28, 8 +/* 8024D73C 0024A69C 41 82 00 10 */ beq lbl_8024D74C +/* 8024D740 0024A6A0 38 7C 00 08 */ addi r3, r28, 8 +/* 8024D744 0024A6A4 38 80 00 00 */ li r4, 0 +/* 8024D748 0024A6A8 48 0F 36 F9 */ bl __dt__6CTokenFv +lbl_8024D74C: +/* 8024D74C 0024A6AC 3B 9C 00 14 */ addi r28, r28, 0x14 +/* 8024D750 0024A6B0 3B BD 00 01 */ addi r29, r29, 1 +lbl_8024D754: +/* 8024D754 0024A6B4 80 1E 00 50 */ lwz r0, 0x50(r30) +/* 8024D758 0024A6B8 7C 1D 00 00 */ cmpw r29, r0 +/* 8024D75C 0024A6BC 41 80 FF CC */ blt lbl_8024D728 +/* 8024D760 0024A6C0 38 00 00 00 */ li r0, 0 +/* 8024D764 0024A6C4 90 1E 00 50 */ stw r0, 0x50(r30) +lbl_8024D768: +/* 8024D768 0024A6C8 34 1E 00 40 */ addic. r0, r30, 0x40 +/* 8024D76C 0024A6CC 41 82 00 30 */ beq lbl_8024D79C +/* 8024D770 0024A6D0 88 1E 00 4C */ lbz r0, 0x4c(r30) +/* 8024D774 0024A6D4 28 00 00 00 */ cmplwi r0, 0 +/* 8024D778 0024A6D8 41 82 00 1C */ beq lbl_8024D794 +/* 8024D77C 0024A6DC 34 7E 00 40 */ addic. r3, r30, 0x40 +/* 8024D780 0024A6E0 41 82 00 14 */ beq lbl_8024D794 +/* 8024D784 0024A6E4 28 03 00 00 */ cmplwi r3, 0 +/* 8024D788 0024A6E8 41 82 00 0C */ beq lbl_8024D794 +/* 8024D78C 0024A6EC 38 80 00 00 */ li r4, 0 +/* 8024D790 0024A6F0 48 0F 36 B1 */ bl __dt__6CTokenFv +lbl_8024D794: +/* 8024D794 0024A6F4 38 00 00 00 */ li r0, 0 +/* 8024D798 0024A6F8 98 1E 00 4C */ stb r0, 0x4c(r30) +lbl_8024D79C: +/* 8024D79C 0024A6FC 34 1E 00 28 */ addic. r0, r30, 0x28 +/* 8024D7A0 0024A700 41 82 00 0C */ beq lbl_8024D7AC +/* 8024D7A4 0024A704 38 7E 00 28 */ addi r3, r30, 0x28 +/* 8024D7A8 0024A708 48 0F 03 39 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8024D7AC: +/* 8024D7AC 0024A70C 34 1E 00 18 */ addic. r0, r30, 0x18 +/* 8024D7B0 0024A710 41 82 00 0C */ beq lbl_8024D7BC +/* 8024D7B4 0024A714 38 7E 00 18 */ addi r3, r30, 0x18 +/* 8024D7B8 0024A718 48 0F 03 29 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8024D7BC: +/* 8024D7BC 0024A71C 7F E0 07 35 */ extsh. r0, r31 +/* 8024D7C0 0024A720 40 81 00 0C */ ble lbl_8024D7CC +/* 8024D7C4 0024A724 7F C3 F3 78 */ mr r3, r30 +/* 8024D7C8 0024A728 48 0C 81 69 */ bl Free__7CMemoryFPCv +lbl_8024D7CC: +/* 8024D7CC 0024A72C 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8024D7D0 0024A730 7F C3 F3 78 */ mr r3, r30 +/* 8024D7D4 0024A734 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8024D7D8 0024A738 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 8024D7DC 0024A73C 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 8024D7E0 0024A740 83 81 00 30 */ lwz r28, 0x30(r1) +/* 8024D7E4 0024A744 7C 08 03 A6 */ mtlr r0 +/* 8024D7E8 0024A748 38 21 00 40 */ addi r1, r1, 0x40 +/* 8024D7EC 0024A74C 4E 80 00 20 */ blr + +.global StartFileWrite__17CMemoryCardDriverFv +StartFileWrite__17CMemoryCardDriverFv: +/* 8024D7F0 0024A750 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024D7F4 0024A754 7C 08 02 A6 */ mflr r0 +/* 8024D7F8 0024A758 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024D7FC 0024A75C 38 00 00 00 */ li r0, 0 +/* 8024D800 0024A760 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024D804 0024A764 7C 7F 1B 78 */ mr r31, r3 +/* 8024D808 0024A768 90 03 00 14 */ stw r0, 0x14(r3) +/* 8024D80C 0024A76C 38 00 00 20 */ li r0, 0x20 +/* 8024D810 0024A770 90 03 00 10 */ stw r0, 0x10(r3) +/* 8024D814 0024A774 80 63 01 98 */ lwz r3, 0x198(r3) +/* 8024D818 0024A778 48 10 06 2D */ bl Write__14CMemoryCardSysFRQ214CMemoryCardSys13CCardFileInfoPCvUlUl +/* 8024D81C 0024A77C 7C 64 1B 79 */ or. r4, r3, r3 +/* 8024D820 0024A780 41 82 00 0C */ beq lbl_8024D82C +/* 8024D824 0024A784 7F E3 FB 78 */ mr r3, r31 +/* 8024D828 0024A788 48 00 09 9D */ bl UpdateFileWrite__17CMemoryCardDriverFv +lbl_8024D82C: +/* 8024D82C 0024A78C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024D830 0024A790 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024D834 0024A794 7C 08 03 A6 */ mtlr r0 +/* 8024D838 0024A798 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024D83C 0024A79C 4E 80 00 20 */ blr + +.global StartFileCreate__17CMemoryCardDriverFv +StartFileCreate__17CMemoryCardDriverFv: +/* 8024D840 0024A7A0 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8024D844 0024A7A4 7C 08 02 A6 */ mflr r0 +/* 8024D848 0024A7A8 38 80 00 00 */ li r4, 0 +/* 8024D84C 0024A7AC 90 01 00 34 */ stw r0, 0x34(r1) +/* 8024D850 0024A7B0 38 00 00 1F */ li r0, 0x1f +/* 8024D854 0024A7B4 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8024D858 0024A7B8 7C 7F 1B 78 */ mr r31, r3 +/* 8024D85C 0024A7BC 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8024D860 0024A7C0 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8024D864 0024A7C4 90 83 00 14 */ stw r4, 0x14(r3) +/* 8024D868 0024A7C8 90 03 00 10 */ stw r0, 0x10(r3) +/* 8024D86C 0024A7CC 80 03 00 18 */ lwz r0, 0x18(r3) +/* 8024D870 0024A7D0 28 00 40 00 */ cmplwi r0, 0x4000 +/* 8024D874 0024A7D4 41 80 00 10 */ blt lbl_8024D884 +/* 8024D878 0024A7D8 80 1F 00 1C */ lwz r0, 0x1c(r31) +/* 8024D87C 0024A7DC 28 00 00 02 */ cmplwi r0, 2 +/* 8024D880 0024A7E0 40 80 00 18 */ bge lbl_8024D898 +lbl_8024D884: +/* 8024D884 0024A7E4 38 60 00 12 */ li r3, 0x12 +/* 8024D888 0024A7E8 38 00 00 05 */ li r0, 5 +/* 8024D88C 0024A7EC 90 7F 00 10 */ stw r3, 0x10(r31) +/* 8024D890 0024A7F0 90 1F 00 14 */ stw r0, 0x14(r31) +/* 8024D894 0024A7F4 48 00 00 98 */ b lbl_8024D92C +lbl_8024D898: +/* 8024D898 0024A7F8 3C 60 80 3D */ lis r3, lbl_803D47CC@ha +/* 8024D89C 0024A7FC 90 9F 01 94 */ stw r4, 0x194(r31) +/* 8024D8A0 0024A800 38 63 47 CC */ addi r3, r3, lbl_803D47CC@l +/* 8024D8A4 0024A804 3B A0 00 00 */ li r29, 0 +/* 8024D8A8 0024A808 38 83 02 A1 */ addi r4, r3, 0x2a1 +/* 8024D8AC 0024A80C 38 60 01 14 */ li r3, 0x114 +/* 8024D8B0 0024A810 38 A0 00 00 */ li r5, 0 +/* 8024D8B4 0024A814 48 0C 7F B9 */ bl __nw__FUlPCcPCc +/* 8024D8B8 0024A818 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8024D8BC 0024A81C 41 82 00 34 */ beq lbl_8024D8F0 +/* 8024D8C0 0024A820 80 1F 01 94 */ lwz r0, 0x194(r31) +/* 8024D8C4 0024A824 38 82 B8 B0 */ addi r4, r2, lbl_805AD5D0@sda21 +/* 8024D8C8 0024A828 38 61 00 08 */ addi r3, r1, 8 +/* 8024D8CC 0024A82C 54 00 10 3A */ slwi r0, r0, 2 +/* 8024D8D0 0024A830 7C 84 00 2E */ lwzx r4, r4, r0 +/* 8024D8D4 0024A834 4B DB 73 E5 */ bl string_l__4rstlFPCc +/* 8024D8D8 0024A838 80 9F 00 00 */ lwz r4, 0(r31) +/* 8024D8DC 0024A83C 7F C3 F3 78 */ mr r3, r30 +/* 8024D8E0 0024A840 38 A1 00 08 */ addi r5, r1, 8 +/* 8024D8E4 0024A844 3B A0 00 01 */ li r29, 1 +/* 8024D8E8 0024A848 48 10 09 11 */ bl __ct__13CCardFileInfoFRCQ24rstl6string +/* 8024D8EC 0024A84C 7C 7E 1B 78 */ mr r30, r3 +lbl_8024D8F0: +/* 8024D8F0 0024A850 7F C4 F3 78 */ mr r4, r30 +/* 8024D8F4 0024A854 38 7F 01 98 */ addi r3, r31, 0x198 +/* 8024D8F8 0024A858 4B FF FD 2D */ bl sub_8024d624 +/* 8024D8FC 0024A85C 7F A0 07 75 */ extsb. r0, r29 +/* 8024D900 0024A860 41 82 00 0C */ beq lbl_8024D90C +/* 8024D904 0024A864 38 61 00 08 */ addi r3, r1, 8 +/* 8024D908 0024A868 48 0F 01 D9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8024D90C: +/* 8024D90C 0024A86C 7F E3 FB 78 */ mr r3, r31 +/* 8024D910 0024A870 4B FF F8 A1 */ bl InitializeFileInfo__17CMemoryCardDriverFv +/* 8024D914 0024A874 80 7F 01 98 */ lwz r3, 0x198(r31) +/* 8024D918 0024A878 48 10 06 C1 */ bl "CreateFile__14CMemoryCardSysFQ214CMemoryCardSys15EMemoryCardPortRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>UiRQ214CMemoryCardSys13CCardFileInfo" +/* 8024D91C 0024A87C 7C 64 1B 79 */ or. r4, r3, r3 +/* 8024D920 0024A880 41 82 00 0C */ beq lbl_8024D92C +/* 8024D924 0024A884 7F E3 FB 78 */ mr r3, r31 +/* 8024D928 0024A888 48 00 09 39 */ bl UpdateFileCreate__17CMemoryCardDriverFv +lbl_8024D92C: +/* 8024D92C 0024A88C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8024D930 0024A890 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8024D934 0024A894 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8024D938 0024A898 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8024D93C 0024A89C 7C 08 03 A6 */ mtlr r0 +/* 8024D940 0024A8A0 38 21 00 30 */ addi r1, r1, 0x30 +/* 8024D944 0024A8A4 4E 80 00 20 */ blr + +.global StartFileRead__17CMemoryCardDriverFv +StartFileRead__17CMemoryCardDriverFv: +/* 8024D948 0024A8A8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024D94C 0024A8AC 7C 08 02 A6 */ mflr r0 +/* 8024D950 0024A8B0 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024D954 0024A8B4 38 00 00 00 */ li r0, 0 +/* 8024D958 0024A8B8 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024D95C 0024A8BC 93 C1 00 08 */ stw r30, 8(r1) +/* 8024D960 0024A8C0 7C 7E 1B 78 */ mr r30, r3 +/* 8024D964 0024A8C4 3B FE 01 04 */ addi r31, r30, 0x104 +/* 8024D968 0024A8C8 90 03 00 14 */ stw r0, 0x14(r3) +/* 8024D96C 0024A8CC 38 00 00 1D */ li r0, 0x1d +/* 8024D970 0024A8D0 90 03 00 10 */ stw r0, 0x10(r3) +/* 8024D974 0024A8D4 80 03 01 94 */ lwz r0, 0x194(r3) +/* 8024D978 0024A8D8 1C 00 00 48 */ mulli r0, r0, 0x48 +/* 8024D97C 0024A8DC 7C 7F 02 14 */ add r3, r31, r0 +/* 8024D980 0024A8E0 38 63 00 04 */ addi r3, r3, 4 +/* 8024D984 0024A8E4 48 10 06 AD */ bl "OpenFile__14CMemoryCardSysFQ214CMemoryCardSys15EMemoryCardPortRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RQ214CMemoryCardSys13CCardFileInfo" +/* 8024D988 0024A8E8 7C 64 1B 79 */ or. r4, r3, r3 +/* 8024D98C 0024A8EC 41 82 00 10 */ beq lbl_8024D99C +/* 8024D990 0024A8F0 7F C3 F3 78 */ mr r3, r30 +/* 8024D994 0024A8F4 48 00 09 F9 */ bl UpdateFileRead__17CMemoryCardDriverFv +/* 8024D998 0024A8F8 48 00 00 28 */ b lbl_8024D9C0 +lbl_8024D99C: +/* 8024D99C 0024A8FC 80 1E 01 94 */ lwz r0, 0x194(r30) +/* 8024D9A0 0024A900 1C 60 00 48 */ mulli r3, r0, 0x48 +/* 8024D9A4 0024A904 38 63 00 04 */ addi r3, r3, 4 +/* 8024D9A8 0024A908 7C 7F 1A 14 */ add r3, r31, r3 +/* 8024D9AC 0024A90C 48 0F FF 45 */ bl StartRead__19SMemoryCardFileInfoFv +/* 8024D9B0 0024A910 7C 64 1B 79 */ or. r4, r3, r3 +/* 8024D9B4 0024A914 41 82 00 0C */ beq lbl_8024D9C0 +/* 8024D9B8 0024A918 7F C3 F3 78 */ mr r3, r30 +/* 8024D9BC 0024A91C 48 00 09 D1 */ bl UpdateFileRead__17CMemoryCardDriverFv +lbl_8024D9C0: +/* 8024D9C0 0024A920 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024D9C4 0024A924 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024D9C8 0024A928 83 C1 00 08 */ lwz r30, 8(r1) +/* 8024D9CC 0024A92C 7C 08 03 A6 */ mtlr r0 +/* 8024D9D0 0024A930 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024D9D4 0024A934 4E 80 00 20 */ blr + +.global StartFileDeleteAlt__17CMemoryCardDriverFv +StartFileDeleteAlt__17CMemoryCardDriverFv: +/* 8024D9D8 0024A938 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024D9DC 0024A93C 7C 08 02 A6 */ mflr r0 +/* 8024D9E0 0024A940 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024D9E4 0024A944 38 00 00 00 */ li r0, 0 +/* 8024D9E8 0024A948 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024D9EC 0024A94C 7C 7F 1B 78 */ mr r31, r3 +/* 8024D9F0 0024A950 90 03 00 14 */ stw r0, 0x14(r3) +/* 8024D9F4 0024A954 38 00 00 1E */ li r0, 0x1e +/* 8024D9F8 0024A958 90 03 00 10 */ stw r0, 0x10(r3) +/* 8024D9FC 0024A95C 80 03 01 94 */ lwz r0, 0x194(r3) +/* 8024DA00 0024A960 7C 00 00 34 */ cntlzw r0, r0 +/* 8024DA04 0024A964 54 00 D9 7E */ srwi r0, r0, 5 +/* 8024DA08 0024A968 1C 00 00 48 */ mulli r0, r0, 0x48 +/* 8024DA0C 0024A96C 7C 7F 02 14 */ add r3, r31, r0 +/* 8024DA10 0024A970 38 63 01 08 */ addi r3, r3, 0x108 +/* 8024DA14 0024A974 48 10 10 91 */ bl GetFileNo__19SMemoryCardFileInfoFv +/* 8024DA18 0024A978 7C 64 1B 78 */ mr r4, r3 +/* 8024DA1C 0024A97C 80 7F 00 00 */ lwz r3, 0(r31) +/* 8024DA20 0024A980 48 10 05 6D */ bl FastDeleteFile__14CMemoryCardSysFii +/* 8024DA24 0024A984 7C 64 1B 79 */ or. r4, r3, r3 +/* 8024DA28 0024A988 41 82 00 0C */ beq lbl_8024DA34 +/* 8024DA2C 0024A98C 7F E3 FB 78 */ mr r3, r31 +/* 8024DA30 0024A990 48 00 09 05 */ bl UpdateFileDeleteAlt__17CMemoryCardDriverFv +lbl_8024DA34: +/* 8024DA34 0024A994 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024DA38 0024A998 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024DA3C 0024A99C 7C 08 03 A6 */ mtlr r0 +/* 8024DA40 0024A9A0 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024DA44 0024A9A4 4E 80 00 20 */ blr + +.global StartFileDeleteBad__17CMemoryCardDriverFv +StartFileDeleteBad__17CMemoryCardDriverFv: +/* 8024DA48 0024A9A8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024DA4C 0024A9AC 7C 08 02 A6 */ mflr r0 +/* 8024DA50 0024A9B0 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024DA54 0024A9B4 38 00 00 00 */ li r0, 0 +/* 8024DA58 0024A9B8 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024DA5C 0024A9BC 7C 7F 1B 78 */ mr r31, r3 +/* 8024DA60 0024A9C0 38 9F 01 04 */ addi r4, r31, 0x104 +/* 8024DA64 0024A9C4 90 03 00 14 */ stw r0, 0x14(r3) +/* 8024DA68 0024A9C8 38 60 00 1C */ li r3, 0x1c +/* 8024DA6C 0024A9CC 38 00 00 02 */ li r0, 2 +/* 8024DA70 0024A9D0 90 7F 00 10 */ stw r3, 0x10(r31) +/* 8024DA74 0024A9D4 38 60 00 00 */ li r3, 0 +/* 8024DA78 0024A9D8 7C 09 03 A6 */ mtctr r0 +lbl_8024DA7C: +/* 8024DA7C 0024A9DC 80 04 00 00 */ lwz r0, 0(r4) +/* 8024DA80 0024A9E0 2C 00 00 03 */ cmpwi r0, 3 +/* 8024DA84 0024A9E4 40 82 00 30 */ bne lbl_8024DAB4 +/* 8024DA88 0024A9E8 90 7F 01 94 */ stw r3, 0x194(r31) +/* 8024DA8C 0024A9EC 38 64 00 04 */ addi r3, r4, 4 +/* 8024DA90 0024A9F0 48 10 10 15 */ bl GetFileNo__19SMemoryCardFileInfoFv +/* 8024DA94 0024A9F4 7C 64 1B 78 */ mr r4, r3 +/* 8024DA98 0024A9F8 80 7F 00 00 */ lwz r3, 0(r31) +/* 8024DA9C 0024A9FC 48 10 04 F1 */ bl FastDeleteFile__14CMemoryCardSysFii +/* 8024DAA0 0024AA00 7C 64 1B 79 */ or. r4, r3, r3 +/* 8024DAA4 0024AA04 41 82 00 1C */ beq lbl_8024DAC0 +/* 8024DAA8 0024AA08 7F E3 FB 78 */ mr r3, r31 +/* 8024DAAC 0024AA0C 48 00 07 F1 */ bl UpdateFileDeleteBad__17CMemoryCardDriverFv +/* 8024DAB0 0024AA10 48 00 00 10 */ b lbl_8024DAC0 +lbl_8024DAB4: +/* 8024DAB4 0024AA14 38 84 00 48 */ addi r4, r4, 0x48 +/* 8024DAB8 0024AA18 38 63 00 01 */ addi r3, r3, 1 +/* 8024DABC 0024AA1C 42 00 FF C0 */ bdnz lbl_8024DA7C +lbl_8024DAC0: +/* 8024DAC0 0024AA20 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024DAC4 0024AA24 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024DAC8 0024AA28 7C 08 03 A6 */ mtlr r0 +/* 8024DACC 0024AA2C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024DAD0 0024AA30 4E 80 00 20 */ blr + +.global IndexFiles__17CMemoryCardDriverFv +IndexFiles__17CMemoryCardDriverFv: +/* 8024DAD4 0024AA34 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 8024DAD8 0024AA38 7C 08 02 A6 */ mflr r0 +/* 8024DADC 0024AA3C 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 8024DAE0 0024AA40 38 00 00 00 */ li r0, 0 +/* 8024DAE4 0024AA44 93 E1 00 EC */ stw r31, 0xec(r1) +/* 8024DAE8 0024AA48 7C 7F 1B 78 */ mr r31, r3 +/* 8024DAEC 0024AA4C 93 C1 00 E8 */ stw r30, 0xe8(r1) +/* 8024DAF0 0024AA50 93 A1 00 E4 */ stw r29, 0xe4(r1) +/* 8024DAF4 0024AA54 3B BF 01 04 */ addi r29, r31, 0x104 +/* 8024DAF8 0024AA58 7F BE EB 78 */ mr r30, r29 +/* 8024DAFC 0024AA5C 93 81 00 E0 */ stw r28, 0xe0(r1) +/* 8024DB00 0024AA60 3B 80 00 00 */ li r28, 0 +/* 8024DB04 0024AA64 90 03 00 14 */ stw r0, 0x14(r3) +lbl_8024DB08: +/* 8024DB08 0024AA68 80 1E 00 00 */ lwz r0, 0(r30) +/* 8024DB0C 0024AA6C 2C 00 00 00 */ cmpwi r0, 0 +/* 8024DB10 0024AA70 40 82 00 B4 */ bne lbl_8024DBC4 +/* 8024DB14 0024AA74 38 7E 00 04 */ addi r3, r30, 4 +/* 8024DB18 0024AA78 48 10 05 19 */ bl "OpenFile__14CMemoryCardSysFQ214CMemoryCardSys15EMemoryCardPortRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RQ214CMemoryCardSys13CCardFileInfo" +/* 8024DB1C 0024AA7C 2C 03 FF FC */ cmpwi r3, -4 +/* 8024DB20 0024AA80 40 82 00 10 */ bne lbl_8024DB30 +/* 8024DB24 0024AA84 38 00 00 01 */ li r0, 1 +/* 8024DB28 0024AA88 90 1E 00 00 */ stw r0, 0(r30) +/* 8024DB2C 0024AA8C 48 00 00 98 */ b lbl_8024DBC4 +lbl_8024DB30: +/* 8024DB30 0024AA90 2C 03 00 00 */ cmpwi r3, 0 +/* 8024DB34 0024AA94 40 82 00 84 */ bne lbl_8024DBB8 +/* 8024DB38 0024AA98 38 61 00 74 */ addi r3, r1, 0x74 +/* 8024DB3C 0024AA9C 38 80 00 00 */ li r4, 0 +/* 8024DB40 0024AAA0 38 A0 00 6C */ li r5, 0x6c +/* 8024DB44 0024AAA4 4B DB 58 65 */ bl memset +/* 8024DB48 0024AAA8 38 7E 00 04 */ addi r3, r30, 4 +/* 8024DB4C 0024AAAC 48 10 0F 59 */ bl GetFileNo__19SMemoryCardFileInfoFv +/* 8024DB50 0024AAB0 7C 64 1B 78 */ mr r4, r3 +/* 8024DB54 0024AAB4 80 7F 00 00 */ lwz r3, 0(r31) +/* 8024DB58 0024AAB8 38 A1 00 74 */ addi r5, r1, 0x74 +/* 8024DB5C 0024AABC 48 0F FC D5 */ bl GetStatus__14CMemoryCardSysFiiP8CARDStat +/* 8024DB60 0024AAC0 2C 03 00 00 */ cmpwi r3, 0 +/* 8024DB64 0024AAC4 40 82 00 2C */ bne lbl_8024DB90 +/* 8024DB68 0024AAC8 38 61 00 74 */ addi r3, r1, 0x74 +/* 8024DB6C 0024AACC 48 10 0A 31 */ bl GetCommentAddr__8CARDStatFv +/* 8024DB70 0024AAD0 2C 03 FF FF */ cmpwi r3, -1 +/* 8024DB74 0024AAD4 40 82 00 10 */ bne lbl_8024DB84 +/* 8024DB78 0024AAD8 38 00 00 03 */ li r0, 3 +/* 8024DB7C 0024AADC 90 1E 00 00 */ stw r0, 0(r30) +/* 8024DB80 0024AAE0 48 00 00 1C */ b lbl_8024DB9C +lbl_8024DB84: +/* 8024DB84 0024AAE4 38 00 00 02 */ li r0, 2 +/* 8024DB88 0024AAE8 90 1E 00 00 */ stw r0, 0(r30) +/* 8024DB8C 0024AAEC 48 00 00 10 */ b lbl_8024DB9C +lbl_8024DB90: +/* 8024DB90 0024AAF0 7F E3 FB 78 */ mr r3, r31 +/* 8024DB94 0024AAF4 48 00 01 85 */ bl NoCardFound__17CMemoryCardDriverFv +/* 8024DB98 0024AAF8 48 00 01 60 */ b lbl_8024DCF8 +lbl_8024DB9C: +/* 8024DB9C 0024AAFC 38 7E 00 04 */ addi r3, r30, 4 +/* 8024DBA0 0024AB00 48 10 03 A9 */ bl Close__19SMemoryCardFileInfo +/* 8024DBA4 0024AB04 2C 03 FF FD */ cmpwi r3, -3 +/* 8024DBA8 0024AB08 40 82 00 1C */ bne lbl_8024DBC4 +/* 8024DBAC 0024AB0C 7F E3 FB 78 */ mr r3, r31 +/* 8024DBB0 0024AB10 48 00 01 69 */ bl NoCardFound__17CMemoryCardDriverFv +/* 8024DBB4 0024AB14 48 00 01 44 */ b lbl_8024DCF8 +lbl_8024DBB8: +/* 8024DBB8 0024AB18 7F E3 FB 78 */ mr r3, r31 +/* 8024DBBC 0024AB1C 48 00 01 5D */ bl NoCardFound__17CMemoryCardDriverFv +/* 8024DBC0 0024AB20 48 00 01 38 */ b lbl_8024DCF8 +lbl_8024DBC4: +/* 8024DBC4 0024AB24 3B 9C 00 01 */ addi r28, r28, 1 +/* 8024DBC8 0024AB28 3B DE 00 48 */ addi r30, r30, 0x48 +/* 8024DBCC 0024AB2C 2C 1C 00 02 */ cmpwi r28, 2 +/* 8024DBD0 0024AB30 41 80 FF 38 */ blt lbl_8024DB08 +/* 8024DBD4 0024AB34 80 1D 00 00 */ lwz r0, 0(r29) +/* 8024DBD8 0024AB38 2C 00 00 02 */ cmpwi r0, 2 +/* 8024DBDC 0024AB3C 40 82 00 C8 */ bne lbl_8024DCA4 +/* 8024DBE0 0024AB40 80 1D 00 48 */ lwz r0, 0x48(r29) +/* 8024DBE4 0024AB44 2C 00 00 02 */ cmpwi r0, 2 +/* 8024DBE8 0024AB48 40 82 00 A8 */ bne lbl_8024DC90 +/* 8024DBEC 0024AB4C 38 61 00 08 */ addi r3, r1, 8 +/* 8024DBF0 0024AB50 38 80 00 00 */ li r4, 0 +/* 8024DBF4 0024AB54 38 A0 00 6C */ li r5, 0x6c +/* 8024DBF8 0024AB58 4B DB 57 B1 */ bl memset +/* 8024DBFC 0024AB5C 38 7D 00 04 */ addi r3, r29, 4 +/* 8024DC00 0024AB60 48 10 0E A5 */ bl GetFileNo__19SMemoryCardFileInfoFv +/* 8024DC04 0024AB64 7C 64 1B 78 */ mr r4, r3 +/* 8024DC08 0024AB68 80 7F 00 00 */ lwz r3, 0(r31) +/* 8024DC0C 0024AB6C 38 A1 00 08 */ addi r5, r1, 8 +/* 8024DC10 0024AB70 48 0F FC 21 */ bl GetStatus__14CMemoryCardSysFiiP8CARDStat +/* 8024DC14 0024AB74 2C 03 00 00 */ cmpwi r3, 0 +/* 8024DC18 0024AB78 40 82 00 6C */ bne lbl_8024DC84 +/* 8024DC1C 0024AB7C 38 61 00 08 */ addi r3, r1, 8 +/* 8024DC20 0024AB80 48 10 09 A5 */ bl GetTime__8CARDStatFv +/* 8024DC24 0024AB84 7C 7E 1B 78 */ mr r30, r3 +/* 8024DC28 0024AB88 38 7D 00 4C */ addi r3, r29, 0x4c +/* 8024DC2C 0024AB8C 48 10 0E 79 */ bl GetFileNo__19SMemoryCardFileInfoFv +/* 8024DC30 0024AB90 7C 64 1B 78 */ mr r4, r3 +/* 8024DC34 0024AB94 80 7F 00 00 */ lwz r3, 0(r31) +/* 8024DC38 0024AB98 38 A1 00 08 */ addi r5, r1, 8 +/* 8024DC3C 0024AB9C 48 0F FB F5 */ bl GetStatus__14CMemoryCardSysFiiP8CARDStat +/* 8024DC40 0024ABA0 2C 03 00 00 */ cmpwi r3, 0 +/* 8024DC44 0024ABA4 40 82 00 34 */ bne lbl_8024DC78 +/* 8024DC48 0024ABA8 38 61 00 08 */ addi r3, r1, 8 +/* 8024DC4C 0024ABAC 48 10 09 79 */ bl GetTime__8CARDStatFv +/* 8024DC50 0024ABB0 7C 1E 18 40 */ cmplw r30, r3 +/* 8024DC54 0024ABB4 40 81 00 10 */ ble lbl_8024DC64 +/* 8024DC58 0024ABB8 38 00 00 00 */ li r0, 0 +/* 8024DC5C 0024ABBC 90 1F 01 94 */ stw r0, 0x194(r31) +/* 8024DC60 0024ABC0 48 00 00 0C */ b lbl_8024DC6C +lbl_8024DC64: +/* 8024DC64 0024ABC4 38 00 00 01 */ li r0, 1 +/* 8024DC68 0024ABC8 90 1F 01 94 */ stw r0, 0x194(r31) +lbl_8024DC6C: +/* 8024DC6C 0024ABCC 7F E3 FB 78 */ mr r3, r31 +/* 8024DC70 0024ABD0 4B FF FC D9 */ bl StartFileRead__17CMemoryCardDriverFv +/* 8024DC74 0024ABD4 48 00 00 84 */ b lbl_8024DCF8 +lbl_8024DC78: +/* 8024DC78 0024ABD8 7F E3 FB 78 */ mr r3, r31 +/* 8024DC7C 0024ABDC 48 00 00 9D */ bl NoCardFound__17CMemoryCardDriverFv +/* 8024DC80 0024ABE0 48 00 00 78 */ b lbl_8024DCF8 +lbl_8024DC84: +/* 8024DC84 0024ABE4 7F E3 FB 78 */ mr r3, r31 +/* 8024DC88 0024ABE8 48 00 00 91 */ bl NoCardFound__17CMemoryCardDriverFv +/* 8024DC8C 0024ABEC 48 00 00 6C */ b lbl_8024DCF8 +lbl_8024DC90: +/* 8024DC90 0024ABF0 38 00 00 00 */ li r0, 0 +/* 8024DC94 0024ABF4 7F E3 FB 78 */ mr r3, r31 +/* 8024DC98 0024ABF8 90 1F 01 94 */ stw r0, 0x194(r31) +/* 8024DC9C 0024ABFC 4B FF FC AD */ bl StartFileRead__17CMemoryCardDriverFv +/* 8024DCA0 0024AC00 48 00 00 58 */ b lbl_8024DCF8 +lbl_8024DCA4: +/* 8024DCA4 0024AC04 80 7D 00 48 */ lwz r3, 0x48(r29) +/* 8024DCA8 0024AC08 2C 03 00 02 */ cmpwi r3, 2 +/* 8024DCAC 0024AC0C 40 82 00 18 */ bne lbl_8024DCC4 +/* 8024DCB0 0024AC10 38 00 00 01 */ li r0, 1 +/* 8024DCB4 0024AC14 7F E3 FB 78 */ mr r3, r31 +/* 8024DCB8 0024AC18 90 1F 01 94 */ stw r0, 0x194(r31) +/* 8024DCBC 0024AC1C 4B FF FC 8D */ bl StartFileRead__17CMemoryCardDriverFv +/* 8024DCC0 0024AC20 48 00 00 38 */ b lbl_8024DCF8 +lbl_8024DCC4: +/* 8024DCC4 0024AC24 2C 00 00 03 */ cmpwi r0, 3 +/* 8024DCC8 0024AC28 41 82 00 0C */ beq lbl_8024DCD4 +/* 8024DCCC 0024AC2C 2C 03 00 03 */ cmpwi r3, 3 +/* 8024DCD0 0024AC30 40 82 00 18 */ bne lbl_8024DCE8 +lbl_8024DCD4: +/* 8024DCD4 0024AC34 38 60 00 09 */ li r3, 9 +/* 8024DCD8 0024AC38 38 00 00 11 */ li r0, 0x11 +/* 8024DCDC 0024AC3C 90 7F 00 14 */ stw r3, 0x14(r31) +/* 8024DCE0 0024AC40 90 1F 00 10 */ stw r0, 0x10(r31) +/* 8024DCE4 0024AC44 48 00 00 14 */ b lbl_8024DCF8 +lbl_8024DCE8: +/* 8024DCE8 0024AC48 38 60 00 08 */ li r3, 8 +/* 8024DCEC 0024AC4C 38 00 00 11 */ li r0, 0x11 +/* 8024DCF0 0024AC50 90 7F 00 14 */ stw r3, 0x14(r31) +/* 8024DCF4 0024AC54 90 1F 00 10 */ stw r0, 0x10(r31) +lbl_8024DCF8: +/* 8024DCF8 0024AC58 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 8024DCFC 0024AC5C 83 E1 00 EC */ lwz r31, 0xec(r1) +/* 8024DD00 0024AC60 83 C1 00 E8 */ lwz r30, 0xe8(r1) +/* 8024DD04 0024AC64 83 A1 00 E4 */ lwz r29, 0xe4(r1) +/* 8024DD08 0024AC68 83 81 00 E0 */ lwz r28, 0xe0(r1) +/* 8024DD0C 0024AC6C 7C 08 03 A6 */ mtlr r0 +/* 8024DD10 0024AC70 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 8024DD14 0024AC74 4E 80 00 20 */ blr + +.global NoCardFound__17CMemoryCardDriverFv +NoCardFound__17CMemoryCardDriverFv: +/* 8024DD18 0024AC78 38 00 00 02 */ li r0, 2 +/* 8024DD1C 0024AC7C 38 80 00 00 */ li r4, 0 +/* 8024DD20 0024AC80 90 03 00 10 */ stw r0, 0x10(r3) +/* 8024DD24 0024AC84 80 6D A0 78 */ lwz r3, gpMain@sda21(r13) +/* 8024DD28 0024AC88 88 03 01 60 */ lbz r0, 0x160(r3) +/* 8024DD2C 0024AC8C 50 80 07 FE */ rlwimi r0, r4, 0, 0x1f, 0x1f +/* 8024DD30 0024AC90 98 03 01 60 */ stb r0, 0x160(r3) +/* 8024DD34 0024AC94 4E 80 00 20 */ blr + +.global CheckCardCapacity__17CMemoryCardDriverFv +CheckCardCapacity__17CMemoryCardDriverFv: +/* 8024DD38 0024AC98 80 03 00 18 */ lwz r0, 0x18(r3) +/* 8024DD3C 0024AC9C 28 00 20 00 */ cmplwi r0, 0x2000 +/* 8024DD40 0024ACA0 41 80 00 10 */ blt lbl_8024DD50 +/* 8024DD44 0024ACA4 80 03 00 1C */ lwz r0, 0x1c(r3) +/* 8024DD48 0024ACA8 28 00 00 01 */ cmplwi r0, 1 +/* 8024DD4C 0024ACAC 4C 80 00 20 */ bgelr +lbl_8024DD50: +/* 8024DD50 0024ACB0 38 00 00 06 */ li r0, 6 +/* 8024DD54 0024ACB4 90 03 00 14 */ stw r0, 0x14(r3) +/* 8024DD58 0024ACB8 4E 80 00 20 */ blr + +.global ClearError__17CMemoryCardDriverFv +ClearError__17CMemoryCardDriverFv: +/* 8024DD5C 0024ACBC 38 00 00 00 */ li r0, 0 +/* 8024DD60 0024ACC0 90 03 00 14 */ stw r0, 0x14(r3) +/* 8024DD64 0024ACC4 4E 80 00 20 */ blr + +.global StartCardCheck__17CMemoryCardDriverFv +StartCardCheck__17CMemoryCardDriverFv: +/* 8024DD68 0024ACC8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024DD6C 0024ACCC 7C 08 02 A6 */ mflr r0 +/* 8024DD70 0024ACD0 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024DD74 0024ACD4 38 00 00 00 */ li r0, 0 +/* 8024DD78 0024ACD8 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024DD7C 0024ACDC 7C 7F 1B 78 */ mr r31, r3 +/* 8024DD80 0024ACE0 90 03 00 14 */ stw r0, 0x14(r3) +/* 8024DD84 0024ACE4 38 00 00 1B */ li r0, 0x1b +/* 8024DD88 0024ACE8 90 03 00 10 */ stw r0, 0x10(r3) +/* 8024DD8C 0024ACEC 80 63 00 00 */ lwz r3, 0(r3) +/* 8024DD90 0024ACF0 48 10 01 25 */ bl CheckCard__14CMemoryCardSysFv +/* 8024DD94 0024ACF4 7C 64 1B 79 */ or. r4, r3, r3 +/* 8024DD98 0024ACF8 41 82 00 0C */ beq lbl_8024DDA4 +/* 8024DD9C 0024ACFC 7F E3 FB 78 */ mr r3, r31 +/* 8024DDA0 0024AD00 48 00 07 19 */ bl UpdateCardCheck__17CMemoryCardDriverFv +lbl_8024DDA4: +/* 8024DDA4 0024AD04 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024DDA8 0024AD08 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024DDAC 0024AD0C 7C 08 03 A6 */ mtlr r0 +/* 8024DDB0 0024AD10 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024DDB4 0024AD14 4E 80 00 20 */ blr + +.global StartMountCard__17CMemoryCardDriverFv +StartMountCard__17CMemoryCardDriverFv: +/* 8024DDB8 0024AD18 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024DDBC 0024AD1C 7C 08 02 A6 */ mflr r0 +/* 8024DDC0 0024AD20 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024DDC4 0024AD24 38 00 00 1A */ li r0, 0x1a +/* 8024DDC8 0024AD28 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024DDCC 0024AD2C 7C 7F 1B 78 */ mr r31, r3 +/* 8024DDD0 0024AD30 90 03 00 10 */ stw r0, 0x10(r3) +/* 8024DDD4 0024AD34 38 00 00 00 */ li r0, 0 +/* 8024DDD8 0024AD38 90 03 00 14 */ stw r0, 0x14(r3) +/* 8024DDDC 0024AD3C 80 63 00 00 */ lwz r3, 0(r3) +/* 8024DDE0 0024AD40 48 10 05 CD */ bl MountCard__14CMemoryCardSysFQ214CMemoryCardSys15EMemoryCardPort +/* 8024DDE4 0024AD44 7C 64 1B 79 */ or. r4, r3, r3 +/* 8024DDE8 0024AD48 41 82 00 0C */ beq lbl_8024DDF4 +/* 8024DDEC 0024AD4C 7F E3 FB 78 */ mr r3, r31 +/* 8024DDF0 0024AD50 48 00 07 51 */ bl UpdateMountCard__17CMemoryCardDriverFi +lbl_8024DDF4: +/* 8024DDF4 0024AD54 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024DDF8 0024AD58 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024DDFC 0024AD5C 7C 08 03 A6 */ mtlr r0 +/* 8024DE00 0024AD60 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024DE04 0024AD64 4E 80 00 20 */ blr + +.global UpdateCardProbe__17CMemoryCardDriverFv +UpdateCardProbe__17CMemoryCardDriverFv: +/* 8024DE08 0024AD68 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8024DE0C 0024AD6C 7C 08 02 A6 */ mflr r0 +/* 8024DE10 0024AD70 90 01 00 34 */ stw r0, 0x34(r1) +/* 8024DE14 0024AD74 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8024DE18 0024AD78 7C 7F 1B 78 */ mr r31, r3 +/* 8024DE1C 0024AD7C 38 61 00 08 */ addi r3, r1, 8 +/* 8024DE20 0024AD80 80 9F 00 00 */ lwz r4, 0(r31) +/* 8024DE24 0024AD84 48 10 05 E9 */ bl IsMemoryCardInserted__14CMemoryCardSysFQ214CMemoryCardSys15EMemoryCardPort +/* 8024DE28 0024AD88 80 81 00 08 */ lwz r4, 8(r1) +/* 8024DE2C 0024AD8C 80 61 00 0C */ lwz r3, 0xc(r1) +/* 8024DE30 0024AD90 80 01 00 10 */ lwz r0, 0x10(r1) +/* 8024DE34 0024AD94 2C 04 00 00 */ cmpwi r4, 0 +/* 8024DE38 0024AD98 90 81 00 14 */ stw r4, 0x14(r1) +/* 8024DE3C 0024AD9C 90 61 00 18 */ stw r3, 0x18(r1) +/* 8024DE40 0024ADA0 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8024DE44 0024ADA4 40 82 00 20 */ bne lbl_8024DE64 +/* 8024DE48 0024ADA8 2C 00 20 00 */ cmpwi r0, 0x2000 +/* 8024DE4C 0024ADAC 41 82 00 48 */ beq lbl_8024DE94 +/* 8024DE50 0024ADB0 38 60 00 0C */ li r3, 0xc +/* 8024DE54 0024ADB4 38 00 00 07 */ li r0, 7 +/* 8024DE58 0024ADB8 90 7F 00 10 */ stw r3, 0x10(r31) +/* 8024DE5C 0024ADBC 90 1F 00 14 */ stw r0, 0x14(r31) +/* 8024DE60 0024ADC0 48 00 00 44 */ b lbl_8024DEA4 +lbl_8024DE64: +/* 8024DE64 0024ADC4 2C 04 FF FF */ cmpwi r4, -1 +/* 8024DE68 0024ADC8 41 82 00 3C */ beq lbl_8024DEA4 +/* 8024DE6C 0024ADCC 2C 04 FF FE */ cmpwi r4, -2 +/* 8024DE70 0024ADD0 40 82 00 18 */ bne lbl_8024DE88 +/* 8024DE74 0024ADD4 38 60 00 0C */ li r3, 0xc +/* 8024DE78 0024ADD8 38 00 00 04 */ li r0, 4 +/* 8024DE7C 0024ADDC 90 7F 00 10 */ stw r3, 0x10(r31) +/* 8024DE80 0024ADE0 90 1F 00 14 */ stw r0, 0x14(r31) +/* 8024DE84 0024ADE4 48 00 00 20 */ b lbl_8024DEA4 +lbl_8024DE88: +/* 8024DE88 0024ADE8 7F E3 FB 78 */ mr r3, r31 +/* 8024DE8C 0024ADEC 4B FF FE 8D */ bl NoCardFound__17CMemoryCardDriverFv +/* 8024DE90 0024ADF0 48 00 00 14 */ b lbl_8024DEA4 +lbl_8024DE94: +/* 8024DE94 0024ADF4 38 00 00 05 */ li r0, 5 +/* 8024DE98 0024ADF8 7F E3 FB 78 */ mr r3, r31 +/* 8024DE9C 0024ADFC 90 1F 00 10 */ stw r0, 0x10(r31) +/* 8024DEA0 0024AE00 4B FF FF 19 */ bl StartMountCard__17CMemoryCardDriverFv +lbl_8024DEA4: +/* 8024DEA4 0024AE04 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8024DEA8 0024AE08 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8024DEAC 0024AE0C 7C 08 03 A6 */ mtlr r0 +/* 8024DEB0 0024AE10 38 21 00 30 */ addi r1, r1, 0x30 +/* 8024DEB4 0024AE14 4E 80 00 20 */ blr + +.global StartCardProbe__17CMemoryCardDriverFv +StartCardProbe__17CMemoryCardDriverFv: +/* 8024DEB8 0024AE18 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024DEBC 0024AE1C 7C 08 02 A6 */ mflr r0 +/* 8024DEC0 0024AE20 38 80 00 19 */ li r4, 0x19 +/* 8024DEC4 0024AE24 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024DEC8 0024AE28 38 00 00 00 */ li r0, 0 +/* 8024DECC 0024AE2C 90 83 00 10 */ stw r4, 0x10(r3) +/* 8024DED0 0024AE30 90 03 00 14 */ stw r0, 0x14(r3) +/* 8024DED4 0024AE34 4B FF FF 35 */ bl UpdateCardProbe__17CMemoryCardDriverFv +/* 8024DED8 0024AE38 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024DEDC 0024AE3C 7C 08 03 A6 */ mtlr r0 +/* 8024DEE0 0024AE40 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024DEE4 0024AE44 4E 80 00 20 */ blr + +.global UpdateCardFormat__17CMemoryCardDriverFv +UpdateCardFormat__17CMemoryCardDriverFv: +/* 8024DEE8 0024AE48 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024DEEC 0024AE4C 7C 08 02 A6 */ mflr r0 +/* 8024DEF0 0024AE50 2C 04 00 00 */ cmpwi r4, 0 +/* 8024DEF4 0024AE54 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024DEF8 0024AE58 40 82 00 10 */ bne lbl_8024DF08 +/* 8024DEFC 0024AE5C 38 00 00 04 */ li r0, 4 +/* 8024DF00 0024AE60 90 03 00 10 */ stw r0, 0x10(r3) +/* 8024DF04 0024AE64 48 00 00 28 */ b lbl_8024DF2C +lbl_8024DF08: +/* 8024DF08 0024AE68 2C 04 FF FA */ cmpwi r4, -6 +/* 8024DF0C 0024AE6C 40 82 00 18 */ bne lbl_8024DF24 +/* 8024DF10 0024AE70 38 80 00 18 */ li r4, 0x18 +/* 8024DF14 0024AE74 38 00 00 03 */ li r0, 3 +/* 8024DF18 0024AE78 90 83 00 10 */ stw r4, 0x10(r3) +/* 8024DF1C 0024AE7C 90 03 00 14 */ stw r0, 0x14(r3) +/* 8024DF20 0024AE80 48 00 00 0C */ b lbl_8024DF2C +lbl_8024DF24: +/* 8024DF24 0024AE84 38 A0 00 18 */ li r5, 0x18 +/* 8024DF28 0024AE88 48 00 06 75 */ bl HandleCardError__17CMemoryCardDriverFi +lbl_8024DF2C: +/* 8024DF2C 0024AE8C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024DF30 0024AE90 7C 08 03 A6 */ mtlr r0 +/* 8024DF34 0024AE94 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024DF38 0024AE98 4E 80 00 20 */ blr + +.global UpdateFileAltDeleteTransactional__17CMemoryCardDriverFv +UpdateFileAltDeleteTransactional__17CMemoryCardDriverFv: +/* 8024DF3C 0024AE9C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024DF40 0024AEA0 7C 08 02 A6 */ mflr r0 +/* 8024DF44 0024AEA4 2C 04 00 00 */ cmpwi r4, 0 +/* 8024DF48 0024AEA8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024DF4C 0024AEAC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024DF50 0024AEB0 7C 7F 1B 78 */ mr r31, r3 +/* 8024DF54 0024AEB4 40 82 00 24 */ bne lbl_8024DF78 +/* 8024DF58 0024AEB8 38 00 00 0B */ li r0, 0xb +/* 8024DF5C 0024AEBC 90 1F 00 10 */ stw r0, 0x10(r31) +/* 8024DF60 0024AEC0 4B FF E3 31 */ bl GetCardFreeBytes__17CMemoryCardDriverFv +/* 8024DF64 0024AEC4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8024DF68 0024AEC8 41 82 00 18 */ beq lbl_8024DF80 +/* 8024DF6C 0024AECC 7F E3 FB 78 */ mr r3, r31 +/* 8024DF70 0024AED0 48 00 00 69 */ bl StartFileRenameBtoA__17CMemoryCardDriverFv +/* 8024DF74 0024AED4 48 00 00 0C */ b lbl_8024DF80 +lbl_8024DF78: +/* 8024DF78 0024AED8 38 A0 00 16 */ li r5, 0x16 +/* 8024DF7C 0024AEDC 48 00 06 21 */ bl HandleCardError__17CMemoryCardDriverFi +lbl_8024DF80: +/* 8024DF80 0024AEE0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024DF84 0024AEE4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024DF88 0024AEE8 7C 08 03 A6 */ mtlr r0 +/* 8024DF8C 0024AEEC 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024DF90 0024AEF0 4E 80 00 20 */ blr + +.global WriteBackupBuf__17CMemoryCardDriverFv +WriteBackupBuf__17CMemoryCardDriverFv: +/* 8024DF94 0024AEF4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024DF98 0024AEF8 7C 08 02 A6 */ mflr r0 +/* 8024DF9C 0024AEFC 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024DFA0 0024AF00 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024DFA4 0024AF04 7C 7F 1B 78 */ mr r31, r3 +/* 8024DFA8 0024AF08 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) +/* 8024DFAC 0024AF0C 4B F8 5C 09 */ bl WriteBackupBuf__10CGameStateFv +/* 8024DFB0 0024AF10 80 1F 00 28 */ lwz r0, 0x28(r31) +/* 8024DFB4 0024AF14 80 9F 00 2C */ lwz r4, 0x2c(r31) +/* 8024DFB8 0024AF18 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) +/* 8024DFBC 0024AF1C 90 83 02 14 */ stw r4, 0x214(r3) +/* 8024DFC0 0024AF20 90 03 02 10 */ stw r0, 0x210(r3) +/* 8024DFC4 0024AF24 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024DFC8 0024AF28 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024DFCC 0024AF2C 7C 08 03 A6 */ mtlr r0 +/* 8024DFD0 0024AF30 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024DFD4 0024AF34 4E 80 00 20 */ blr + +.global StartFileRenameBtoA__17CMemoryCardDriverFv +StartFileRenameBtoA__17CMemoryCardDriverFv: +/* 8024DFD8 0024AF38 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8024DFDC 0024AF3C 7C 08 02 A6 */ mflr r0 +/* 8024DFE0 0024AF40 90 01 00 34 */ stw r0, 0x34(r1) +/* 8024DFE4 0024AF44 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8024DFE8 0024AF48 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8024DFEC 0024AF4C 7C 7E 1B 78 */ mr r30, r3 +/* 8024DFF0 0024AF50 80 03 01 94 */ lwz r0, 0x194(r3) +/* 8024DFF4 0024AF54 2C 00 00 01 */ cmpwi r0, 1 +/* 8024DFF8 0024AF58 40 82 00 88 */ bne lbl_8024E080 +/* 8024DFFC 0024AF5C 38 60 00 00 */ li r3, 0 +/* 8024E000 0024AF60 38 00 00 24 */ li r0, 0x24 +/* 8024E004 0024AF64 90 7E 00 14 */ stw r3, 0x14(r30) +/* 8024E008 0024AF68 38 82 B8 B0 */ addi r4, r2, lbl_805AD5D0@sda21 +/* 8024E00C 0024AF6C 38 61 00 18 */ addi r3, r1, 0x18 +/* 8024E010 0024AF70 90 1E 00 10 */ stw r0, 0x10(r30) +/* 8024E014 0024AF74 80 BE 01 94 */ lwz r5, 0x194(r30) +/* 8024E018 0024AF78 54 A0 10 3A */ slwi r0, r5, 2 +/* 8024E01C 0024AF7C 7C A5 00 34 */ cntlzw r5, r5 +/* 8024E020 0024AF80 7C 84 00 2E */ lwzx r4, r4, r0 +/* 8024E024 0024AF84 54 BF D9 7E */ srwi r31, r5, 5 +/* 8024E028 0024AF88 4B DB 6C 91 */ bl string_l__4rstlFPCc +/* 8024E02C 0024AF8C 57 E0 10 3A */ slwi r0, r31, 2 +/* 8024E030 0024AF90 38 62 B8 B0 */ addi r3, r2, lbl_805AD5D0@sda21 +/* 8024E034 0024AF94 7C 83 00 2E */ lwzx r4, r3, r0 +/* 8024E038 0024AF98 38 61 00 08 */ addi r3, r1, 8 +/* 8024E03C 0024AF9C 4B DB 6C 7D */ bl string_l__4rstlFPCc +/* 8024E040 0024AFA0 80 7E 00 00 */ lwz r3, 0(r30) +/* 8024E044 0024AFA4 38 81 00 18 */ addi r4, r1, 0x18 +/* 8024E048 0024AFA8 38 A1 00 08 */ addi r5, r1, 8 +/* 8024E04C 0024AFAC 48 0F FE 8D */ bl Rename__14CMemoryCardSysFiPCcPCc +/* 8024E050 0024AFB0 7C 60 1B 78 */ mr r0, r3 +/* 8024E054 0024AFB4 38 61 00 08 */ addi r3, r1, 8 +/* 8024E058 0024AFB8 7C 1F 03 78 */ mr r31, r0 +/* 8024E05C 0024AFBC 48 0E FA 85 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8024E060 0024AFC0 38 61 00 18 */ addi r3, r1, 0x18 +/* 8024E064 0024AFC4 48 0E FA 7D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8024E068 0024AFC8 2C 1F 00 00 */ cmpwi r31, 0 +/* 8024E06C 0024AFCC 41 82 00 20 */ beq lbl_8024E08C +/* 8024E070 0024AFD0 7F C3 F3 78 */ mr r3, r30 +/* 8024E074 0024AFD4 7F E4 FB 78 */ mr r4, r31 +/* 8024E078 0024AFD8 48 00 00 2D */ bl UpdateFileRenameBtoA__17CMemoryCardDriverFv +/* 8024E07C 0024AFDC 48 00 00 10 */ b lbl_8024E08C +lbl_8024E080: +/* 8024E080 0024AFE0 38 00 00 03 */ li r0, 3 +/* 8024E084 0024AFE4 90 1E 00 10 */ stw r0, 0x10(r30) +/* 8024E088 0024AFE8 4B FF FF 0D */ bl WriteBackupBuf__17CMemoryCardDriverFv +lbl_8024E08C: +/* 8024E08C 0024AFEC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8024E090 0024AFF0 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8024E094 0024AFF4 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8024E098 0024AFF8 7C 08 03 A6 */ mtlr r0 +/* 8024E09C 0024AFFC 38 21 00 30 */ addi r1, r1, 0x30 +/* 8024E0A0 0024B000 4E 80 00 20 */ blr + +.global UpdateFileRenameBtoA__17CMemoryCardDriverFv +UpdateFileRenameBtoA__17CMemoryCardDriverFv: +/* 8024E0A4 0024B004 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024E0A8 0024B008 7C 08 02 A6 */ mflr r0 +/* 8024E0AC 0024B00C 2C 04 00 00 */ cmpwi r4, 0 +/* 8024E0B0 0024B010 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024E0B4 0024B014 40 82 00 14 */ bne lbl_8024E0C8 +/* 8024E0B8 0024B018 38 00 00 03 */ li r0, 3 +/* 8024E0BC 0024B01C 90 03 00 10 */ stw r0, 0x10(r3) +/* 8024E0C0 0024B020 4B FF FE D5 */ bl WriteBackupBuf__17CMemoryCardDriverFv +/* 8024E0C4 0024B024 48 00 00 0C */ b lbl_8024E0D0 +lbl_8024E0C8: +/* 8024E0C8 0024B028 38 A0 00 17 */ li r5, 0x17 +/* 8024E0CC 0024B02C 48 00 04 D1 */ bl HandleCardError__17CMemoryCardDriverFi +lbl_8024E0D0: +/* 8024E0D0 0024B030 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024E0D4 0024B034 7C 08 03 A6 */ mtlr r0 +/* 8024E0D8 0024B038 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024E0DC 0024B03C 4E 80 00 20 */ blr + +.global UpdateFileWriteTransactional__17CMemoryCardDriverFv +UpdateFileWriteTransactional__17CMemoryCardDriverFv: +/* 8024E0E0 0024B040 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024E0E4 0024B044 7C 08 02 A6 */ mflr r0 +/* 8024E0E8 0024B048 2C 04 00 00 */ cmpwi r4, 0 +/* 8024E0EC 0024B04C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024E0F0 0024B050 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024E0F4 0024B054 7C 7F 1B 78 */ mr r31, r3 +/* 8024E0F8 0024B058 40 82 00 74 */ bne lbl_8024E16C +/* 8024E0FC 0024B05C 80 7F 01 98 */ lwz r3, 0x198(r31) +/* 8024E100 0024B060 48 0F FB 15 */ bl PumpCardTransfer__13CCardFileInfoFv +/* 8024E104 0024B064 2C 03 00 00 */ cmpwi r3, 0 +/* 8024E108 0024B068 40 82 00 34 */ bne lbl_8024E13C +/* 8024E10C 0024B06C 38 00 00 0A */ li r0, 0xa +/* 8024E110 0024B070 90 1F 00 10 */ stw r0, 0x10(r31) +/* 8024E114 0024B074 80 7F 01 98 */ lwz r3, 0x198(r31) +/* 8024E118 0024B078 48 0F FD ED */ bl Close__13CCardFileInfoFv +/* 8024E11C 0024B07C 2C 03 00 00 */ cmpwi r3, 0 +/* 8024E120 0024B080 41 82 00 10 */ beq lbl_8024E130 +/* 8024E124 0024B084 7F E3 FB 78 */ mr r3, r31 +/* 8024E128 0024B088 4B FF FB F1 */ bl NoCardFound__17CMemoryCardDriverFv +/* 8024E12C 0024B08C 48 00 00 48 */ b lbl_8024E174 +lbl_8024E130: +/* 8024E130 0024B090 7F E3 FB 78 */ mr r3, r31 +/* 8024E134 0024B094 4B FF F2 FD */ bl StartFileDeleteAltTransactional__17CMemoryCardDriverFv +/* 8024E138 0024B098 48 00 00 3C */ b lbl_8024E174 +lbl_8024E13C: +/* 8024E13C 0024B09C 2C 03 FF FF */ cmpwi r3, -1 +/* 8024E140 0024B0A0 41 82 00 34 */ beq lbl_8024E174 +/* 8024E144 0024B0A4 2C 03 FF FB */ cmpwi r3, -5 +/* 8024E148 0024B0A8 40 82 00 18 */ bne lbl_8024E160 +/* 8024E14C 0024B0AC 38 60 00 15 */ li r3, 0x15 +/* 8024E150 0024B0B0 38 00 00 03 */ li r0, 3 +/* 8024E154 0024B0B4 90 7F 00 10 */ stw r3, 0x10(r31) +/* 8024E158 0024B0B8 90 1F 00 14 */ stw r0, 0x14(r31) +/* 8024E15C 0024B0BC 48 00 00 18 */ b lbl_8024E174 +lbl_8024E160: +/* 8024E160 0024B0C0 7F E3 FB 78 */ mr r3, r31 +/* 8024E164 0024B0C4 4B FF FB B5 */ bl NoCardFound__17CMemoryCardDriverFv +/* 8024E168 0024B0C8 48 00 00 0C */ b lbl_8024E174 +lbl_8024E16C: +/* 8024E16C 0024B0CC 38 A0 00 15 */ li r5, 0x15 +/* 8024E170 0024B0D0 48 00 04 2D */ bl HandleCardError__17CMemoryCardDriverFi +lbl_8024E174: +/* 8024E174 0024B0D4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024E178 0024B0D8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024E17C 0024B0DC 7C 08 03 A6 */ mtlr r0 +/* 8024E180 0024B0E0 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024E184 0024B0E4 4E 80 00 20 */ blr + +.global UpdateFileCreateTransactional__17CMemoryCardDriverFv +UpdateFileCreateTransactional__17CMemoryCardDriverFv: +/* 8024E188 0024B0E8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024E18C 0024B0EC 7C 08 02 A6 */ mflr r0 +/* 8024E190 0024B0F0 2C 04 00 00 */ cmpwi r4, 0 +/* 8024E194 0024B0F4 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024E198 0024B0F8 40 82 00 14 */ bne lbl_8024E1AC +/* 8024E19C 0024B0FC 38 00 00 09 */ li r0, 9 +/* 8024E1A0 0024B100 90 03 00 10 */ stw r0, 0x10(r3) +/* 8024E1A4 0024B104 4B FF F3 19 */ bl StartFileWriteTransactional__17CMemoryCardDriverFv +/* 8024E1A8 0024B108 48 00 00 0C */ b lbl_8024E1B4 +lbl_8024E1AC: +/* 8024E1AC 0024B10C 38 A0 00 14 */ li r5, 0x14 +/* 8024E1B0 0024B110 48 00 03 ED */ bl HandleCardError__17CMemoryCardDriverFi +lbl_8024E1B4: +/* 8024E1B4 0024B114 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024E1B8 0024B118 7C 08 03 A6 */ mtlr r0 +/* 8024E1BC 0024B11C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024E1C0 0024B120 4E 80 00 20 */ blr + +.global UpdateFileWrite__17CMemoryCardDriverFv +UpdateFileWrite__17CMemoryCardDriverFv: +/* 8024E1C4 0024B124 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024E1C8 0024B128 7C 08 02 A6 */ mflr r0 +/* 8024E1CC 0024B12C 2C 04 00 00 */ cmpwi r4, 0 +/* 8024E1D0 0024B130 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024E1D4 0024B134 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024E1D8 0024B138 7C 7F 1B 78 */ mr r31, r3 +/* 8024E1DC 0024B13C 40 82 00 68 */ bne lbl_8024E244 +/* 8024E1E0 0024B140 80 7F 01 98 */ lwz r3, 0x198(r31) +/* 8024E1E4 0024B144 48 0F FA 31 */ bl PumpCardTransfer__13CCardFileInfoFv +/* 8024E1E8 0024B148 2C 03 00 00 */ cmpwi r3, 0 +/* 8024E1EC 0024B14C 40 82 00 28 */ bne lbl_8024E214 +/* 8024E1F0 0024B150 38 00 00 01 */ li r0, 1 +/* 8024E1F4 0024B154 90 1F 00 10 */ stw r0, 0x10(r31) +/* 8024E1F8 0024B158 80 7F 01 98 */ lwz r3, 0x198(r31) +/* 8024E1FC 0024B15C 48 0F FD 09 */ bl Close__13CCardFileInfoFv +/* 8024E200 0024B160 2C 03 00 00 */ cmpwi r3, 0 +/* 8024E204 0024B164 41 82 00 48 */ beq lbl_8024E24C +/* 8024E208 0024B168 7F E3 FB 78 */ mr r3, r31 +/* 8024E20C 0024B16C 4B FF FB 0D */ bl NoCardFound__17CMemoryCardDriverFv +/* 8024E210 0024B170 48 00 00 3C */ b lbl_8024E24C +lbl_8024E214: +/* 8024E214 0024B174 2C 03 FF FF */ cmpwi r3, -1 +/* 8024E218 0024B178 41 82 00 34 */ beq lbl_8024E24C +/* 8024E21C 0024B17C 2C 03 FF FB */ cmpwi r3, -5 +/* 8024E220 0024B180 40 82 00 18 */ bne lbl_8024E238 +/* 8024E224 0024B184 38 60 00 13 */ li r3, 0x13 +/* 8024E228 0024B188 38 00 00 03 */ li r0, 3 +/* 8024E22C 0024B18C 90 7F 00 10 */ stw r3, 0x10(r31) +/* 8024E230 0024B190 90 1F 00 14 */ stw r0, 0x14(r31) +/* 8024E234 0024B194 48 00 00 18 */ b lbl_8024E24C +lbl_8024E238: +/* 8024E238 0024B198 7F E3 FB 78 */ mr r3, r31 +/* 8024E23C 0024B19C 4B FF FA DD */ bl NoCardFound__17CMemoryCardDriverFv +/* 8024E240 0024B1A0 48 00 00 0C */ b lbl_8024E24C +lbl_8024E244: +/* 8024E244 0024B1A4 38 A0 00 13 */ li r5, 0x13 +/* 8024E248 0024B1A8 48 00 03 55 */ bl HandleCardError__17CMemoryCardDriverFi +lbl_8024E24C: +/* 8024E24C 0024B1AC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024E250 0024B1B0 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024E254 0024B1B4 7C 08 03 A6 */ mtlr r0 +/* 8024E258 0024B1B8 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024E25C 0024B1BC 4E 80 00 20 */ blr + +.global UpdateFileCreate__17CMemoryCardDriverFv +UpdateFileCreate__17CMemoryCardDriverFv: +/* 8024E260 0024B1C0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024E264 0024B1C4 7C 08 02 A6 */ mflr r0 +/* 8024E268 0024B1C8 2C 04 00 00 */ cmpwi r4, 0 +/* 8024E26C 0024B1CC 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024E270 0024B1D0 40 82 00 14 */ bne lbl_8024E284 +/* 8024E274 0024B1D4 38 00 00 08 */ li r0, 8 +/* 8024E278 0024B1D8 90 03 00 10 */ stw r0, 0x10(r3) +/* 8024E27C 0024B1DC 4B FF F5 75 */ bl StartFileWrite__17CMemoryCardDriverFv +/* 8024E280 0024B1E0 48 00 00 0C */ b lbl_8024E28C +lbl_8024E284: +/* 8024E284 0024B1E4 38 A0 00 12 */ li r5, 0x12 +/* 8024E288 0024B1E8 48 00 03 15 */ bl HandleCardError__17CMemoryCardDriverFi +lbl_8024E28C: +/* 8024E28C 0024B1EC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024E290 0024B1F0 7C 08 03 A6 */ mtlr r0 +/* 8024E294 0024B1F4 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024E298 0024B1F8 4E 80 00 20 */ blr + +.global UpdateFileDeleteBad__17CMemoryCardDriverFv +UpdateFileDeleteBad__17CMemoryCardDriverFv: +/* 8024E29C 0024B1FC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024E2A0 0024B200 7C 08 02 A6 */ mflr r0 +/* 8024E2A4 0024B204 2C 04 00 00 */ cmpwi r4, 0 +/* 8024E2A8 0024B208 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024E2AC 0024B20C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024E2B0 0024B210 7C 7F 1B 78 */ mr r31, r3 +/* 8024E2B4 0024B214 40 82 00 64 */ bne lbl_8024E318 +/* 8024E2B8 0024B218 80 9F 01 94 */ lwz r4, 0x194(r31) +/* 8024E2BC 0024B21C 38 BF 01 04 */ addi r5, r31, 0x104 +/* 8024E2C0 0024B220 38 00 00 01 */ li r0, 1 +/* 8024E2C4 0024B224 1C 84 00 48 */ mulli r4, r4, 0x48 +/* 8024E2C8 0024B228 7C 05 21 2E */ stwx r0, r5, r4 +/* 8024E2CC 0024B22C 80 1F 01 94 */ lwz r0, 0x194(r31) +/* 8024E2D0 0024B230 7C 00 00 34 */ cntlzw r0, r0 +/* 8024E2D4 0024B234 54 00 D9 7E */ srwi r0, r0, 5 +/* 8024E2D8 0024B238 1C 00 00 48 */ mulli r0, r0, 0x48 +/* 8024E2DC 0024B23C 7C 05 00 2E */ lwzx r0, r5, r0 +/* 8024E2E0 0024B240 2C 00 00 03 */ cmpwi r0, 3 +/* 8024E2E4 0024B244 40 82 00 14 */ bne lbl_8024E2F8 +/* 8024E2E8 0024B248 38 00 00 11 */ li r0, 0x11 +/* 8024E2EC 0024B24C 90 1F 00 10 */ stw r0, 0x10(r31) +/* 8024E2F0 0024B250 4B FF F7 59 */ bl StartFileDeleteBad__17CMemoryCardDriverFv +/* 8024E2F4 0024B254 48 00 00 2C */ b lbl_8024E320 +lbl_8024E2F8: +/* 8024E2F8 0024B258 38 00 00 07 */ li r0, 7 +/* 8024E2FC 0024B25C 90 1F 00 10 */ stw r0, 0x10(r31) +/* 8024E300 0024B260 4B FF DF 91 */ bl GetCardFreeBytes__17CMemoryCardDriverFv +/* 8024E304 0024B264 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8024E308 0024B268 41 82 00 18 */ beq lbl_8024E320 +/* 8024E30C 0024B26C 7F E3 FB 78 */ mr r3, r31 +/* 8024E310 0024B270 4B FF F7 C5 */ bl IndexFiles__17CMemoryCardDriverFv +/* 8024E314 0024B274 48 00 00 0C */ b lbl_8024E320 +lbl_8024E318: +/* 8024E318 0024B278 38 A0 00 0F */ li r5, 0xf +/* 8024E31C 0024B27C 48 00 02 81 */ bl HandleCardError__17CMemoryCardDriverFi +lbl_8024E320: +/* 8024E320 0024B280 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024E324 0024B284 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024E328 0024B288 7C 08 03 A6 */ mtlr r0 +/* 8024E32C 0024B28C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024E330 0024B290 4E 80 00 20 */ blr + +.global UpdateFileDeleteAlt__17CMemoryCardDriverFv +UpdateFileDeleteAlt__17CMemoryCardDriverFv: +/* 8024E334 0024B294 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024E338 0024B298 7C 08 02 A6 */ mflr r0 +/* 8024E33C 0024B29C 2C 04 00 00 */ cmpwi r4, 0 +/* 8024E340 0024B2A0 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024E344 0024B2A4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024E348 0024B2A8 7C 7F 1B 78 */ mr r31, r3 +/* 8024E34C 0024B2AC 40 82 00 24 */ bne lbl_8024E370 +/* 8024E350 0024B2B0 38 00 00 01 */ li r0, 1 +/* 8024E354 0024B2B4 90 1F 00 10 */ stw r0, 0x10(r31) +/* 8024E358 0024B2B8 4B FF DF 39 */ bl GetCardFreeBytes__17CMemoryCardDriverFv +/* 8024E35C 0024B2BC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8024E360 0024B2C0 41 82 00 18 */ beq lbl_8024E378 +/* 8024E364 0024B2C4 7F E3 FB 78 */ mr r3, r31 +/* 8024E368 0024B2C8 4B FF F9 D1 */ bl CheckCardCapacity__17CMemoryCardDriverFv +/* 8024E36C 0024B2CC 48 00 00 0C */ b lbl_8024E378 +lbl_8024E370: +/* 8024E370 0024B2D0 38 A0 00 10 */ li r5, 0x10 +/* 8024E374 0024B2D4 48 00 02 29 */ bl HandleCardError__17CMemoryCardDriverFi +lbl_8024E378: +/* 8024E378 0024B2D8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024E37C 0024B2DC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024E380 0024B2E0 7C 08 03 A6 */ mtlr r0 +/* 8024E384 0024B2E4 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024E388 0024B2E8 4E 80 00 20 */ blr + +.global UpdateFileRead__17CMemoryCardDriverFv +UpdateFileRead__17CMemoryCardDriverFv: +/* 8024E38C 0024B2EC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8024E390 0024B2F0 7C 08 02 A6 */ mflr r0 +/* 8024E394 0024B2F4 2C 04 00 00 */ cmpwi r4, 0 +/* 8024E398 0024B2F8 90 01 00 24 */ stw r0, 0x24(r1) +/* 8024E39C 0024B2FC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8024E3A0 0024B300 7C 7F 1B 78 */ mr r31, r3 +/* 8024E3A4 0024B304 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8024E3A8 0024B308 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8024E3AC 0024B30C 93 81 00 10 */ stw r28, 0x10(r1) +/* 8024E3B0 0024B310 40 82 00 E0 */ bne lbl_8024E490 +/* 8024E3B4 0024B314 80 1F 01 94 */ lwz r0, 0x194(r31) +/* 8024E3B8 0024B318 3B BF 01 04 */ addi r29, r31, 0x104 +/* 8024E3BC 0024B31C 1C 00 00 48 */ mulli r0, r0, 0x48 +/* 8024E3C0 0024B320 7C 7D 02 14 */ add r3, r29, r0 +/* 8024E3C4 0024B324 38 63 00 04 */ addi r3, r3, 4 +/* 8024E3C8 0024B328 48 0F F4 E5 */ bl TryFileRead__19SMemoryCardFileInfoFv +/* 8024E3CC 0024B32C 80 1F 01 94 */ lwz r0, 0x194(r31) +/* 8024E3D0 0024B330 7C 7E 1B 78 */ mr r30, r3 +/* 8024E3D4 0024B334 1C 60 00 48 */ mulli r3, r0, 0x48 +/* 8024E3D8 0024B338 38 63 00 04 */ addi r3, r3, 4 +/* 8024E3DC 0024B33C 7C 7D 1A 14 */ add r3, r29, r3 +/* 8024E3E0 0024B340 48 0F FB 69 */ bl Close__19SMemoryCardFileInfo +/* 8024E3E4 0024B344 2C 03 00 00 */ cmpwi r3, 0 +/* 8024E3E8 0024B348 41 82 00 10 */ beq lbl_8024E3F8 +/* 8024E3EC 0024B34C 7F E3 FB 78 */ mr r3, r31 +/* 8024E3F0 0024B350 4B FF F9 29 */ bl NoCardFound__17CMemoryCardDriverFv +/* 8024E3F4 0024B354 48 00 00 A4 */ b lbl_8024E498 +lbl_8024E3F8: +/* 8024E3F8 0024B358 80 7F 01 94 */ lwz r3, 0x194(r31) +/* 8024E3FC 0024B35C 2C 1E 00 00 */ cmpwi r30, 0 +/* 8024E400 0024B360 7C 60 00 34 */ cntlzw r0, r3 +/* 8024E404 0024B364 54 1C D9 7E */ srwi r28, r0, 5 +/* 8024E408 0024B368 40 82 00 3C */ bne lbl_8024E444 +/* 8024E40C 0024B36C 38 00 00 01 */ li r0, 1 +/* 8024E410 0024B370 7F E3 FB 78 */ mr r3, r31 +/* 8024E414 0024B374 90 1F 00 10 */ stw r0, 0x10(r31) +/* 8024E418 0024B378 4B FF EA 09 */ bl ReadFinished__17CMemoryCardDriverFv +/* 8024E41C 0024B37C 1C 1C 00 48 */ mulli r0, r28, 0x48 +/* 8024E420 0024B380 7C 1D 00 2E */ lwzx r0, r29, r0 +/* 8024E424 0024B384 2C 00 00 01 */ cmpwi r0, 1 +/* 8024E428 0024B388 41 82 00 10 */ beq lbl_8024E438 +/* 8024E42C 0024B38C 7F E3 FB 78 */ mr r3, r31 +/* 8024E430 0024B390 4B FF F5 A9 */ bl StartFileDeleteAlt__17CMemoryCardDriverFv +/* 8024E434 0024B394 48 00 00 64 */ b lbl_8024E498 +lbl_8024E438: +/* 8024E438 0024B398 7F E3 FB 78 */ mr r3, r31 +/* 8024E43C 0024B39C 4B FF F8 FD */ bl CheckCardCapacity__17CMemoryCardDriverFv +/* 8024E440 0024B3A0 48 00 00 58 */ b lbl_8024E498 +lbl_8024E444: +/* 8024E444 0024B3A4 2C 1E FC 15 */ cmpwi r30, -1003 +/* 8024E448 0024B3A8 40 82 00 50 */ bne lbl_8024E498 +/* 8024E44C 0024B3AC 1C 63 00 48 */ mulli r3, r3, 0x48 +/* 8024E450 0024B3B0 38 80 00 03 */ li r4, 3 +/* 8024E454 0024B3B4 1C 1C 00 48 */ mulli r0, r28, 0x48 +/* 8024E458 0024B3B8 7C 9D 19 2E */ stwx r4, r29, r3 +/* 8024E45C 0024B3BC 7C 1D 00 2E */ lwzx r0, r29, r0 +/* 8024E460 0024B3C0 2C 00 00 02 */ cmpwi r0, 2 +/* 8024E464 0024B3C4 40 82 00 18 */ bne lbl_8024E47C +/* 8024E468 0024B3C8 38 00 00 07 */ li r0, 7 +/* 8024E46C 0024B3CC 7F E3 FB 78 */ mr r3, r31 +/* 8024E470 0024B3D0 90 1F 00 10 */ stw r0, 0x10(r31) +/* 8024E474 0024B3D4 4B FF F6 61 */ bl IndexFiles__17CMemoryCardDriverFv +/* 8024E478 0024B3D8 48 00 00 20 */ b lbl_8024E498 +lbl_8024E47C: +/* 8024E47C 0024B3DC 38 60 00 11 */ li r3, 0x11 +/* 8024E480 0024B3E0 38 00 00 09 */ li r0, 9 +/* 8024E484 0024B3E4 90 7F 00 10 */ stw r3, 0x10(r31) +/* 8024E488 0024B3E8 90 1F 00 14 */ stw r0, 0x14(r31) +/* 8024E48C 0024B3EC 48 00 00 0C */ b lbl_8024E498 +lbl_8024E490: +/* 8024E490 0024B3F0 38 A0 00 11 */ li r5, 0x11 +/* 8024E494 0024B3F4 48 00 01 09 */ bl HandleCardError__17CMemoryCardDriverFi +lbl_8024E498: +/* 8024E498 0024B3F8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8024E49C 0024B3FC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8024E4A0 0024B400 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8024E4A4 0024B404 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8024E4A8 0024B408 83 81 00 10 */ lwz r28, 0x10(r1) +/* 8024E4AC 0024B40C 7C 08 03 A6 */ mtlr r0 +/* 8024E4B0 0024B410 38 21 00 20 */ addi r1, r1, 0x20 +/* 8024E4B4 0024B414 4E 80 00 20 */ blr + +.global UpdateCardCheck__17CMemoryCardDriverFv +UpdateCardCheck__17CMemoryCardDriverFv: +/* 8024E4B8 0024B418 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024E4BC 0024B41C 7C 08 02 A6 */ mflr r0 +/* 8024E4C0 0024B420 2C 04 00 00 */ cmpwi r4, 0 +/* 8024E4C4 0024B424 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024E4C8 0024B428 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024E4CC 0024B42C 7C 7F 1B 78 */ mr r31, r3 +/* 8024E4D0 0024B430 40 82 00 38 */ bne lbl_8024E508 +/* 8024E4D4 0024B434 38 00 00 07 */ li r0, 7 +/* 8024E4D8 0024B438 90 1F 00 10 */ stw r0, 0x10(r31) +/* 8024E4DC 0024B43C 4B FF DD B5 */ bl GetCardFreeBytes__17CMemoryCardDriverFv +/* 8024E4E0 0024B440 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8024E4E4 0024B444 41 82 00 48 */ beq lbl_8024E52C +/* 8024E4E8 0024B448 80 7F 00 00 */ lwz r3, 0(r31) +/* 8024E4EC 0024B44C 38 9F 00 28 */ addi r4, r31, 0x28 +/* 8024E4F0 0024B450 48 0F F3 9D */ bl GetSerialNo__14CMemoryCardSysFiRx +/* 8024E4F4 0024B454 2C 03 00 00 */ cmpwi r3, 0 +/* 8024E4F8 0024B458 41 82 00 34 */ beq lbl_8024E52C +/* 8024E4FC 0024B45C 7F E3 FB 78 */ mr r3, r31 +/* 8024E500 0024B460 4B FF F8 19 */ bl NoCardFound__17CMemoryCardDriverFv +/* 8024E504 0024B464 48 00 00 28 */ b lbl_8024E52C +lbl_8024E508: +/* 8024E508 0024B468 2C 04 FF FA */ cmpwi r4, -6 +/* 8024E50C 0024B46C 40 82 00 18 */ bne lbl_8024E524 +/* 8024E510 0024B470 38 60 00 0E */ li r3, 0xe +/* 8024E514 0024B474 38 00 00 01 */ li r0, 1 +/* 8024E518 0024B478 90 7F 00 10 */ stw r3, 0x10(r31) +/* 8024E51C 0024B47C 90 1F 00 14 */ stw r0, 0x14(r31) +/* 8024E520 0024B480 48 00 00 0C */ b lbl_8024E52C +lbl_8024E524: +/* 8024E524 0024B484 38 A0 00 0E */ li r5, 0xe +/* 8024E528 0024B488 48 00 00 75 */ bl HandleCardError__17CMemoryCardDriverFi +lbl_8024E52C: +/* 8024E52C 0024B48C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024E530 0024B490 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024E534 0024B494 7C 08 03 A6 */ mtlr r0 +/* 8024E538 0024B498 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024E53C 0024B49C 4E 80 00 20 */ blr + +.global UpdateMountCard__17CMemoryCardDriverFi +UpdateMountCard__17CMemoryCardDriverFi: +/* 8024E540 0024B4A0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024E544 0024B4A4 7C 08 02 A6 */ mflr r0 +/* 8024E548 0024B4A8 2C 04 00 00 */ cmpwi r4, 0 +/* 8024E54C 0024B4AC 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024E550 0024B4B0 40 82 00 14 */ bne lbl_8024E564 +/* 8024E554 0024B4B4 38 00 00 06 */ li r0, 6 +/* 8024E558 0024B4B8 90 03 00 10 */ stw r0, 0x10(r3) +/* 8024E55C 0024B4BC 4B FF F8 0D */ bl StartCardCheck__17CMemoryCardDriverFv +/* 8024E560 0024B4C0 48 00 00 2C */ b lbl_8024E58C +lbl_8024E564: +/* 8024E564 0024B4C4 2C 04 FF FA */ cmpwi r4, -6 +/* 8024E568 0024B4C8 40 82 00 1C */ bne lbl_8024E584 +/* 8024E56C 0024B4CC 38 80 00 06 */ li r4, 6 +/* 8024E570 0024B4D0 38 00 00 01 */ li r0, 1 +/* 8024E574 0024B4D4 90 83 00 10 */ stw r4, 0x10(r3) +/* 8024E578 0024B4D8 90 03 00 14 */ stw r0, 0x14(r3) +/* 8024E57C 0024B4DC 4B FF F7 ED */ bl StartCardCheck__17CMemoryCardDriverFv +/* 8024E580 0024B4E0 48 00 00 0C */ b lbl_8024E58C +lbl_8024E584: +/* 8024E584 0024B4E4 38 A0 00 0D */ li r5, 0xd +/* 8024E588 0024B4E8 48 00 00 15 */ bl HandleCardError__17CMemoryCardDriverFi +lbl_8024E58C: +/* 8024E58C 0024B4EC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024E590 0024B4F0 7C 08 03 A6 */ mtlr r0 +/* 8024E594 0024B4F4 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024E598 0024B4F8 4E 80 00 20 */ blr + +.global HandleCardError__17CMemoryCardDriverFi +HandleCardError__17CMemoryCardDriverFi: +/* 8024E59C 0024B4FC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024E5A0 0024B500 7C 08 02 A6 */ mflr r0 +/* 8024E5A4 0024B504 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024E5A8 0024B508 38 04 00 0D */ addi r0, r4, 0xd +/* 8024E5AC 0024B50C 28 00 00 0C */ cmplwi r0, 0xc +/* 8024E5B0 0024B510 41 81 00 50 */ bgt lbl_8024E600 +/* 8024E5B4 0024B514 3C 80 80 3F */ lis r4, lbl_803E8D38@ha +/* 8024E5B8 0024B518 54 00 10 3A */ slwi r0, r0, 2 +/* 8024E5BC 0024B51C 38 84 8D 38 */ addi r4, r4, lbl_803E8D38@l +/* 8024E5C0 0024B520 7C 04 00 2E */ lwzx r0, r4, r0 +/* 8024E5C4 0024B524 7C 09 03 A6 */ mtctr r0 +/* 8024E5C8 0024B528 4E 80 04 20 */ bctr +/* 8024E5CC 0024B52C 90 A3 00 10 */ stw r5, 0x10(r3) +/* 8024E5D0 0024B530 38 00 00 04 */ li r0, 4 +/* 8024E5D4 0024B534 90 03 00 14 */ stw r0, 0x14(r3) +/* 8024E5D8 0024B538 48 00 00 28 */ b lbl_8024E600 +/* 8024E5DC 0024B53C 4B FF F7 3D */ bl NoCardFound__17CMemoryCardDriverFv +/* 8024E5E0 0024B540 48 00 00 20 */ b lbl_8024E600 +/* 8024E5E4 0024B544 90 A3 00 10 */ stw r5, 0x10(r3) +/* 8024E5E8 0024B548 38 00 00 03 */ li r0, 3 +/* 8024E5EC 0024B54C 90 03 00 14 */ stw r0, 0x14(r3) +/* 8024E5F0 0024B550 48 00 00 10 */ b lbl_8024E600 +/* 8024E5F4 0024B554 90 A3 00 10 */ stw r5, 0x10(r3) +/* 8024E5F8 0024B558 38 00 00 02 */ li r0, 2 +/* 8024E5FC 0024B55C 90 03 00 14 */ stw r0, 0x14(r3) +lbl_8024E600: +/* 8024E600 0024B560 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024E604 0024B564 7C 08 03 A6 */ mtlr r0 +/* 8024E608 0024B568 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024E60C 0024B56C 4E 80 00 20 */ blr + +.global Update__17CMemoryCardDriverFv +Update__17CMemoryCardDriverFv: +/* 8024E610 0024B570 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8024E614 0024B574 7C 08 02 A6 */ mflr r0 +/* 8024E618 0024B578 90 01 00 34 */ stw r0, 0x34(r1) +/* 8024E61C 0024B57C 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8024E620 0024B580 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8024E624 0024B584 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8024E628 0024B588 7C 7D 1B 78 */ mr r29, r3 +/* 8024E62C 0024B58C 38 61 00 08 */ addi r3, r1, 8 +/* 8024E630 0024B590 80 9D 00 00 */ lwz r4, 0(r29) +/* 8024E634 0024B594 48 0F FD D9 */ bl IsMemoryCardInserted__14CMemoryCardSysFQ214CMemoryCardSys15EMemoryCardPort +/* 8024E638 0024B598 80 81 00 08 */ lwz r4, 8(r1) +/* 8024E63C 0024B59C 80 61 00 0C */ lwz r3, 0xc(r1) +/* 8024E640 0024B5A0 80 01 00 10 */ lwz r0, 0x10(r1) +/* 8024E644 0024B5A4 2C 04 FF FD */ cmpwi r4, -3 +/* 8024E648 0024B5A8 90 81 00 14 */ stw r4, 0x14(r1) +/* 8024E64C 0024B5AC 90 61 00 18 */ stw r3, 0x18(r1) +/* 8024E650 0024B5B0 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8024E654 0024B5B4 40 82 00 30 */ bne lbl_8024E684 +/* 8024E658 0024B5B8 80 1D 00 10 */ lwz r0, 0x10(r29) +/* 8024E65C 0024B5BC 2C 00 00 02 */ cmpwi r0, 2 +/* 8024E660 0024B5C0 41 82 00 0C */ beq lbl_8024E66C +/* 8024E664 0024B5C4 7F A3 EB 78 */ mr r3, r29 +/* 8024E668 0024B5C8 4B FF F6 B1 */ bl NoCardFound__17CMemoryCardDriverFv +lbl_8024E66C: +/* 8024E66C 0024B5CC 80 6D A0 78 */ lwz r3, gpMain@sda21(r13) +/* 8024E670 0024B5D0 38 80 00 00 */ li r4, 0 +/* 8024E674 0024B5D4 88 03 01 60 */ lbz r0, 0x160(r3) +/* 8024E678 0024B5D8 50 80 07 FE */ rlwimi r0, r4, 0, 0x1f, 0x1f +/* 8024E67C 0024B5DC 98 03 01 60 */ stb r0, 0x160(r3) +/* 8024E680 0024B5E0 48 00 01 4C */ b lbl_8024E7CC +lbl_8024E684: +/* 8024E684 0024B5E4 80 1D 00 10 */ lwz r0, 0x10(r29) +/* 8024E688 0024B5E8 2C 00 00 19 */ cmpwi r0, 0x19 +/* 8024E68C 0024B5EC 40 82 00 24 */ bne lbl_8024E6B0 +/* 8024E690 0024B5F0 7F A3 EB 78 */ mr r3, r29 +/* 8024E694 0024B5F4 4B FF F7 75 */ bl UpdateCardProbe__17CMemoryCardDriverFv +/* 8024E698 0024B5F8 80 6D A0 78 */ lwz r3, gpMain@sda21(r13) +/* 8024E69C 0024B5FC 38 80 00 00 */ li r4, 0 +/* 8024E6A0 0024B600 88 03 01 60 */ lbz r0, 0x160(r3) +/* 8024E6A4 0024B604 50 80 07 FE */ rlwimi r0, r4, 0, 0x1f, 0x1f +/* 8024E6A8 0024B608 98 03 01 60 */ stb r0, 0x160(r3) +/* 8024E6AC 0024B60C 48 00 01 20 */ b lbl_8024E7CC +lbl_8024E6B0: +/* 8024E6B0 0024B610 80 7D 00 00 */ lwz r3, 0(r29) +/* 8024E6B4 0024B614 48 0F FD 39 */ bl GetResultCode__14CMemoryCardSysFi +/* 8024E6B8 0024B618 7C 60 1B 78 */ mr r0, r3 +/* 8024E6BC 0024B61C 80 7D 00 10 */ lwz r3, 0x10(r29) +/* 8024E6C0 0024B620 7C 1F 03 78 */ mr r31, r0 +/* 8024E6C4 0024B624 3B C0 00 00 */ li r30, 0 +/* 8024E6C8 0024B628 48 00 0A 85 */ bl IsCardBusy__17CMemoryCardDriverF6EState +/* 8024E6CC 0024B62C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8024E6D0 0024B630 41 82 00 EC */ beq lbl_8024E7BC +/* 8024E6D4 0024B634 80 7D 00 10 */ lwz r3, 0x10(r29) +/* 8024E6D8 0024B638 3B C0 00 01 */ li r30, 1 +/* 8024E6DC 0024B63C 38 03 FF E7 */ addi r0, r3, -25 +/* 8024E6E0 0024B640 28 00 00 0C */ cmplwi r0, 0xc +/* 8024E6E4 0024B644 41 81 00 D8 */ bgt lbl_8024E7BC +/* 8024E6E8 0024B648 3C 60 80 3F */ lis r3, lbl_803E8D6C@ha +/* 8024E6EC 0024B64C 54 00 10 3A */ slwi r0, r0, 2 +/* 8024E6F0 0024B650 38 63 8D 6C */ addi r3, r3, lbl_803E8D6C@l +/* 8024E6F4 0024B654 7C 03 00 2E */ lwzx r0, r3, r0 +/* 8024E6F8 0024B658 7C 09 03 A6 */ mtctr r0 +/* 8024E6FC 0024B65C 4E 80 04 20 */ bctr +/* 8024E700 0024B660 7F A3 EB 78 */ mr r3, r29 +/* 8024E704 0024B664 7F E4 FB 78 */ mr r4, r31 +/* 8024E708 0024B668 4B FF FE 39 */ bl UpdateMountCard__17CMemoryCardDriverFi +/* 8024E70C 0024B66C 48 00 00 B0 */ b lbl_8024E7BC +/* 8024E710 0024B670 7F A3 EB 78 */ mr r3, r29 +/* 8024E714 0024B674 7F E4 FB 78 */ mr r4, r31 +/* 8024E718 0024B678 4B FF FD A1 */ bl UpdateCardCheck__17CMemoryCardDriverFv +/* 8024E71C 0024B67C 48 00 00 A0 */ b lbl_8024E7BC +/* 8024E720 0024B680 7F A3 EB 78 */ mr r3, r29 +/* 8024E724 0024B684 7F E4 FB 78 */ mr r4, r31 +/* 8024E728 0024B688 4B FF FB 75 */ bl UpdateFileDeleteBad__17CMemoryCardDriverFv +/* 8024E72C 0024B68C 48 00 00 90 */ b lbl_8024E7BC +/* 8024E730 0024B690 7F A3 EB 78 */ mr r3, r29 +/* 8024E734 0024B694 7F E4 FB 78 */ mr r4, r31 +/* 8024E738 0024B698 4B FF FC 55 */ bl UpdateFileRead__17CMemoryCardDriverFv +/* 8024E73C 0024B69C 48 00 00 80 */ b lbl_8024E7BC +/* 8024E740 0024B6A0 7F A3 EB 78 */ mr r3, r29 +/* 8024E744 0024B6A4 7F E4 FB 78 */ mr r4, r31 +/* 8024E748 0024B6A8 4B FF FB ED */ bl UpdateFileDeleteAlt__17CMemoryCardDriverFv +/* 8024E74C 0024B6AC 48 00 00 70 */ b lbl_8024E7BC +/* 8024E750 0024B6B0 7F A3 EB 78 */ mr r3, r29 +/* 8024E754 0024B6B4 7F E4 FB 78 */ mr r4, r31 +/* 8024E758 0024B6B8 4B FF FB 09 */ bl UpdateFileCreate__17CMemoryCardDriverFv +/* 8024E75C 0024B6BC 48 00 00 60 */ b lbl_8024E7BC +/* 8024E760 0024B6C0 7F A3 EB 78 */ mr r3, r29 +/* 8024E764 0024B6C4 7F E4 FB 78 */ mr r4, r31 +/* 8024E768 0024B6C8 4B FF FA 5D */ bl UpdateFileWrite__17CMemoryCardDriverFv +/* 8024E76C 0024B6CC 48 00 00 50 */ b lbl_8024E7BC +/* 8024E770 0024B6D0 7F A3 EB 78 */ mr r3, r29 +/* 8024E774 0024B6D4 7F E4 FB 78 */ mr r4, r31 +/* 8024E778 0024B6D8 4B FF FA 11 */ bl UpdateFileCreateTransactional__17CMemoryCardDriverFv +/* 8024E77C 0024B6DC 48 00 00 40 */ b lbl_8024E7BC +/* 8024E780 0024B6E0 7F A3 EB 78 */ mr r3, r29 +/* 8024E784 0024B6E4 7F E4 FB 78 */ mr r4, r31 +/* 8024E788 0024B6E8 4B FF F9 59 */ bl UpdateFileWriteTransactional__17CMemoryCardDriverFv +/* 8024E78C 0024B6EC 48 00 00 30 */ b lbl_8024E7BC +/* 8024E790 0024B6F0 7F A3 EB 78 */ mr r3, r29 +/* 8024E794 0024B6F4 7F E4 FB 78 */ mr r4, r31 +/* 8024E798 0024B6F8 4B FF F7 A5 */ bl UpdateFileAltDeleteTransactional__17CMemoryCardDriverFv +/* 8024E79C 0024B6FC 48 00 00 20 */ b lbl_8024E7BC +/* 8024E7A0 0024B700 7F A3 EB 78 */ mr r3, r29 +/* 8024E7A4 0024B704 7F E4 FB 78 */ mr r4, r31 +/* 8024E7A8 0024B708 4B FF F8 FD */ bl UpdateFileRenameBtoA__17CMemoryCardDriverFv +/* 8024E7AC 0024B70C 48 00 00 10 */ b lbl_8024E7BC +/* 8024E7B0 0024B710 7F A3 EB 78 */ mr r3, r29 +/* 8024E7B4 0024B714 7F E4 FB 78 */ mr r4, r31 +/* 8024E7B8 0024B718 4B FF F7 31 */ bl UpdateCardFormat__17CMemoryCardDriverFv +lbl_8024E7BC: +/* 8024E7BC 0024B71C 80 6D A0 78 */ lwz r3, gpMain@sda21(r13) +/* 8024E7C0 0024B720 88 03 01 60 */ lbz r0, 0x160(r3) +/* 8024E7C4 0024B724 53 C0 07 FE */ rlwimi r0, r30, 0, 0x1f, 0x1f +/* 8024E7C8 0024B728 98 03 01 60 */ stb r0, 0x160(r3) +lbl_8024E7CC: +/* 8024E7CC 0024B72C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8024E7D0 0024B730 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8024E7D4 0024B734 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8024E7D8 0024B738 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8024E7DC 0024B73C 7C 08 03 A6 */ mtlr r0 +/* 8024E7E0 0024B740 38 21 00 30 */ addi r1, r1, 0x30 +/* 8024E7E4 0024B744 4E 80 00 20 */ blr + +.global __dt__17CMemoryCardDriverFv +__dt__17CMemoryCardDriverFv: +/* 8024E7E8 0024B748 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8024E7EC 0024B74C 7C 08 02 A6 */ mflr r0 +/* 8024E7F0 0024B750 90 01 00 24 */ stw r0, 0x24(r1) +/* 8024E7F4 0024B754 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8024E7F8 0024B758 7C 9F 23 78 */ mr r31, r4 +/* 8024E7FC 0024B75C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8024E800 0024B760 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8024E804 0024B764 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8024E808 0024B768 93 81 00 10 */ stw r28, 0x10(r1) +/* 8024E80C 0024B76C 41 82 01 58 */ beq lbl_8024E964 +/* 8024E810 0024B770 80 7E 00 00 */ lwz r3, 0(r30) +/* 8024E814 0024B774 48 0F FB 59 */ bl UnmountCard__14CMemoryCardSysFQ214CMemoryCardSys15EMemoryCardPort +/* 8024E818 0024B778 38 C0 00 00 */ li r6, 0 +/* 8024E81C 0024B77C 80 AD A0 78 */ lwz r5, gpMain@sda21(r13) +/* 8024E820 0024B780 98 CD A5 58 */ stb r6, lbl_805A9118@sda21(r13) +/* 8024E824 0024B784 38 7E 01 98 */ addi r3, r30, 0x198 +/* 8024E828 0024B788 38 80 FF FF */ li r4, -1 +/* 8024E82C 0024B78C 88 05 01 60 */ lbz r0, 0x160(r5) +/* 8024E830 0024B790 50 C0 07 FE */ rlwimi r0, r6, 0, 0x1f, 0x1f +/* 8024E834 0024B794 98 05 01 60 */ stb r0, 0x160(r5) +/* 8024E838 0024B798 48 00 03 61 */ bl sub_8024eb98 +/* 8024E83C 0024B79C 38 7E 01 00 */ addi r3, r30, 0x100 +/* 8024E840 0024B7A0 38 80 FF FF */ li r4, -1 +/* 8024E844 0024B7A4 48 00 01 45 */ bl sub_8024e988 +/* 8024E848 0024B7A8 34 1E 00 E4 */ addic. r0, r30, 0xe4 +/* 8024E84C 0024B7AC 41 82 00 AC */ beq lbl_8024E8F8 +/* 8024E850 0024B7B0 3B 9E 00 E8 */ addi r28, r30, 0xe8 +/* 8024E854 0024B7B4 3B A0 00 00 */ li r29, 0 +/* 8024E858 0024B7B8 48 00 00 8C */ b lbl_8024E8E4 +lbl_8024E85C: +/* 8024E85C 0024B7BC 28 1C 00 00 */ cmplwi r28, 0 +/* 8024E860 0024B7C0 41 82 00 7C */ beq lbl_8024E8DC +/* 8024E864 0024B7C4 88 1C 00 00 */ lbz r0, 0(r28) +/* 8024E868 0024B7C8 28 00 00 00 */ cmplwi r0, 0 +/* 8024E86C 0024B7CC 41 82 00 70 */ beq lbl_8024E8DC +/* 8024E870 0024B7D0 80 7C 00 04 */ lwz r3, 4(r28) +/* 8024E874 0024B7D4 28 03 00 00 */ cmplwi r3, 0 +/* 8024E878 0024B7D8 41 82 00 64 */ beq lbl_8024E8DC +/* 8024E87C 0024B7DC 41 82 00 5C */ beq lbl_8024E8D8 +/* 8024E880 0024B7E0 80 C3 00 00 */ lwz r6, 0(r3) +/* 8024E884 0024B7E4 38 80 00 00 */ li r4, 0 +/* 8024E888 0024B7E8 2C 06 00 00 */ cmpwi r6, 0 +/* 8024E88C 0024B7EC 40 81 00 44 */ ble lbl_8024E8D0 +/* 8024E890 0024B7F0 2C 06 00 08 */ cmpwi r6, 8 +/* 8024E894 0024B7F4 38 A6 FF F8 */ addi r5, r6, -8 +/* 8024E898 0024B7F8 40 81 00 20 */ ble lbl_8024E8B8 +/* 8024E89C 0024B7FC 38 05 00 07 */ addi r0, r5, 7 +/* 8024E8A0 0024B800 54 00 E8 FE */ srwi r0, r0, 3 +/* 8024E8A4 0024B804 7C 09 03 A6 */ mtctr r0 +/* 8024E8A8 0024B808 2C 05 00 00 */ cmpwi r5, 0 +/* 8024E8AC 0024B80C 40 81 00 0C */ ble lbl_8024E8B8 +lbl_8024E8B0: +/* 8024E8B0 0024B810 38 84 00 08 */ addi r4, r4, 8 +/* 8024E8B4 0024B814 42 00 FF FC */ bdnz lbl_8024E8B0 +lbl_8024E8B8: +/* 8024E8B8 0024B818 7C 04 30 50 */ subf r0, r4, r6 +/* 8024E8BC 0024B81C 7C 09 03 A6 */ mtctr r0 +/* 8024E8C0 0024B820 7C 04 30 00 */ cmpw r4, r6 +/* 8024E8C4 0024B824 40 80 00 0C */ bge lbl_8024E8D0 +lbl_8024E8C8: +/* 8024E8C8 0024B828 38 84 00 01 */ addi r4, r4, 1 +/* 8024E8CC 0024B82C 42 00 FF FC */ bdnz lbl_8024E8C8 +lbl_8024E8D0: +/* 8024E8D0 0024B830 38 00 00 00 */ li r0, 0 +/* 8024E8D4 0024B834 90 03 00 00 */ stw r0, 0(r3) +lbl_8024E8D8: +/* 8024E8D8 0024B838 48 0C 70 59 */ bl Free__7CMemoryFPCv +lbl_8024E8DC: +/* 8024E8DC 0024B83C 3B 9C 00 08 */ addi r28, r28, 8 +/* 8024E8E0 0024B840 3B BD 00 01 */ addi r29, r29, 1 +lbl_8024E8E4: +/* 8024E8E4 0024B844 80 1E 00 E4 */ lwz r0, 0xe4(r30) +/* 8024E8E8 0024B848 7C 1D 00 00 */ cmpw r29, r0 +/* 8024E8EC 0024B84C 41 80 FF 70 */ blt lbl_8024E85C +/* 8024E8F0 0024B850 38 00 00 00 */ li r0, 0 +/* 8024E8F4 0024B854 90 1E 00 E4 */ stw r0, 0xe4(r30) +lbl_8024E8F8: +/* 8024E8F8 0024B858 34 1E 00 30 */ addic. r0, r30, 0x30 +/* 8024E8FC 0024B85C 41 82 00 58 */ beq lbl_8024E954 +/* 8024E900 0024B860 80 BE 00 30 */ lwz r5, 0x30(r30) +/* 8024E904 0024B864 38 60 00 00 */ li r3, 0 +/* 8024E908 0024B868 2C 05 00 00 */ cmpwi r5, 0 +/* 8024E90C 0024B86C 40 81 00 40 */ ble lbl_8024E94C +/* 8024E910 0024B870 2C 05 00 08 */ cmpwi r5, 8 +/* 8024E914 0024B874 38 85 FF F8 */ addi r4, r5, -8 +/* 8024E918 0024B878 40 81 00 20 */ ble lbl_8024E938 +/* 8024E91C 0024B87C 38 04 00 07 */ addi r0, r4, 7 +/* 8024E920 0024B880 54 00 E8 FE */ srwi r0, r0, 3 +/* 8024E924 0024B884 7C 09 03 A6 */ mtctr r0 +/* 8024E928 0024B888 2C 04 00 00 */ cmpwi r4, 0 +/* 8024E92C 0024B88C 40 81 00 0C */ ble lbl_8024E938 +lbl_8024E930: +/* 8024E930 0024B890 38 63 00 08 */ addi r3, r3, 8 +/* 8024E934 0024B894 42 00 FF FC */ bdnz lbl_8024E930 +lbl_8024E938: +/* 8024E938 0024B898 7C 03 28 50 */ subf r0, r3, r5 +/* 8024E93C 0024B89C 7C 09 03 A6 */ mtctr r0 +/* 8024E940 0024B8A0 7C 03 28 00 */ cmpw r3, r5 +/* 8024E944 0024B8A4 40 80 00 08 */ bge lbl_8024E94C +lbl_8024E948: +/* 8024E948 0024B8A8 42 00 00 00 */ bdnz lbl_8024E948 +lbl_8024E94C: +/* 8024E94C 0024B8AC 38 00 00 00 */ li r0, 0 +/* 8024E950 0024B8B0 90 1E 00 30 */ stw r0, 0x30(r30) +lbl_8024E954: +/* 8024E954 0024B8B4 7F E0 07 35 */ extsh. r0, r31 +/* 8024E958 0024B8B8 40 81 00 0C */ ble lbl_8024E964 +/* 8024E95C 0024B8BC 7F C3 F3 78 */ mr r3, r30 +/* 8024E960 0024B8C0 48 0C 6F D1 */ bl Free__7CMemoryFPCv +lbl_8024E964: +/* 8024E964 0024B8C4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8024E968 0024B8C8 7F C3 F3 78 */ mr r3, r30 +/* 8024E96C 0024B8CC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8024E970 0024B8D0 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8024E974 0024B8D4 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8024E978 0024B8D8 83 81 00 10 */ lwz r28, 0x10(r1) +/* 8024E97C 0024B8DC 7C 08 03 A6 */ mtlr r0 +/* 8024E980 0024B8E0 38 21 00 20 */ addi r1, r1, 0x20 +/* 8024E984 0024B8E4 4E 80 00 20 */ blr + +.global sub_8024e988 +sub_8024e988: +/* 8024E988 0024B8E8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024E98C 0024B8EC 7C 08 02 A6 */ mflr r0 +/* 8024E990 0024B8F0 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024E994 0024B8F4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024E998 0024B8F8 7C 9F 23 78 */ mr r31, r4 +/* 8024E99C 0024B8FC 93 C1 00 08 */ stw r30, 8(r1) +/* 8024E9A0 0024B900 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8024E9A4 0024B904 41 82 00 18 */ beq lbl_8024E9BC +/* 8024E9A8 0024B908 48 00 00 31 */ bl sub_8024e9d8 +/* 8024E9AC 0024B90C 7F E0 07 35 */ extsh. r0, r31 +/* 8024E9B0 0024B910 40 81 00 0C */ ble lbl_8024E9BC +/* 8024E9B4 0024B914 7F C3 F3 78 */ mr r3, r30 +/* 8024E9B8 0024B918 48 0C 6F 79 */ bl Free__7CMemoryFPCv +lbl_8024E9BC: +/* 8024E9BC 0024B91C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024E9C0 0024B920 7F C3 F3 78 */ mr r3, r30 +/* 8024E9C4 0024B924 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024E9C8 0024B928 83 C1 00 08 */ lwz r30, 8(r1) +/* 8024E9CC 0024B92C 7C 08 03 A6 */ mtlr r0 +/* 8024E9D0 0024B930 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024E9D4 0024B934 4E 80 00 20 */ blr + +.global sub_8024e9d8 +sub_8024e9d8: +/* 8024E9D8 0024B938 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8024E9DC 0024B93C 7C 08 02 A6 */ mflr r0 +/* 8024E9E0 0024B940 90 01 00 24 */ stw r0, 0x24(r1) +/* 8024E9E4 0024B944 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8024E9E8 0024B948 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8024E9EC 0024B94C 3B C0 00 00 */ li r30, 0 +/* 8024E9F0 0024B950 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8024E9F4 0024B954 7C 7D 1B 78 */ mr r29, r3 +/* 8024E9F8 0024B958 3B FD 00 04 */ addi r31, r29, 4 +/* 8024E9FC 0024B95C 48 00 00 14 */ b lbl_8024EA10 +lbl_8024EA00: +/* 8024EA00 0024B960 7F E3 FB 78 */ mr r3, r31 +/* 8024EA04 0024B964 48 00 00 3D */ bl sub_8024ea40 +/* 8024EA08 0024B968 3B FF 00 48 */ addi r31, r31, 0x48 +/* 8024EA0C 0024B96C 3B DE 00 01 */ addi r30, r30, 1 +lbl_8024EA10: +/* 8024EA10 0024B970 80 1D 00 00 */ lwz r0, 0(r29) +/* 8024EA14 0024B974 7C 1E 00 00 */ cmpw r30, r0 +/* 8024EA18 0024B978 41 80 FF E8 */ blt lbl_8024EA00 +/* 8024EA1C 0024B97C 38 00 00 00 */ li r0, 0 +/* 8024EA20 0024B980 90 1D 00 00 */ stw r0, 0(r29) +/* 8024EA24 0024B984 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8024EA28 0024B988 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8024EA2C 0024B98C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8024EA30 0024B990 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8024EA34 0024B994 7C 08 03 A6 */ mtlr r0 +/* 8024EA38 0024B998 38 21 00 20 */ addi r1, r1, 0x20 +/* 8024EA3C 0024B99C 4E 80 00 20 */ blr + +.global sub_8024ea40 +sub_8024ea40: +/* 8024EA40 0024B9A0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024EA44 0024B9A4 7C 08 02 A6 */ mflr r0 +/* 8024EA48 0024B9A8 38 80 FF FF */ li r4, -1 +/* 8024EA4C 0024B9AC 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024EA50 0024B9B0 48 00 00 15 */ bl "__dt__Q24rstl29pairFv" +/* 8024EA54 0024B9B4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024EA58 0024B9B8 7C 08 03 A6 */ mtlr r0 +/* 8024EA5C 0024B9BC 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024EA60 0024B9C0 4E 80 00 20 */ blr + +.global "__dt__Q24rstl29pairFv" +"__dt__Q24rstl29pairFv": +/* 8024EA64 0024B9C4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024EA68 0024B9C8 7C 08 02 A6 */ mflr r0 +/* 8024EA6C 0024B9CC 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024EA70 0024B9D0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024EA74 0024B9D4 7C 9F 23 78 */ mr r31, r4 +/* 8024EA78 0024B9D8 93 C1 00 08 */ stw r30, 8(r1) +/* 8024EA7C 0024B9DC 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8024EA80 0024B9E0 41 82 00 20 */ beq lbl_8024EAA0 +/* 8024EA84 0024B9E4 38 7E 00 04 */ addi r3, r30, 4 +/* 8024EA88 0024B9E8 38 80 FF FF */ li r4, -1 +/* 8024EA8C 0024B9EC 48 00 00 31 */ bl __dt__19SMemoryCardFileInfoFv +/* 8024EA90 0024B9F0 7F E0 07 35 */ extsh. r0, r31 +/* 8024EA94 0024B9F4 40 81 00 0C */ ble lbl_8024EAA0 +/* 8024EA98 0024B9F8 7F C3 F3 78 */ mr r3, r30 +/* 8024EA9C 0024B9FC 48 0C 6E 95 */ bl Free__7CMemoryFPCv +lbl_8024EAA0: +/* 8024EAA0 0024BA00 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024EAA4 0024BA04 7F C3 F3 78 */ mr r3, r30 +/* 8024EAA8 0024BA08 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024EAAC 0024BA0C 83 C1 00 08 */ lwz r30, 8(r1) +/* 8024EAB0 0024BA10 7C 08 03 A6 */ mtlr r0 +/* 8024EAB4 0024BA14 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024EAB8 0024BA18 4E 80 00 20 */ blr + +.global __dt__19SMemoryCardFileInfoFv +__dt__19SMemoryCardFileInfoFv: +/* 8024EABC 0024BA1C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8024EAC0 0024BA20 7C 08 02 A6 */ mflr r0 +/* 8024EAC4 0024BA24 90 01 00 34 */ stw r0, 0x34(r1) +/* 8024EAC8 0024BA28 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8024EACC 0024BA2C 7C 9F 23 78 */ mr r31, r4 +/* 8024EAD0 0024BA30 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8024EAD4 0024BA34 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8024EAD8 0024BA38 41 82 00 A4 */ beq lbl_8024EB7C +/* 8024EADC 0024BA3C 34 1E 00 34 */ addic. r0, r30, 0x34 +/* 8024EAE0 0024BA40 41 82 00 40 */ beq lbl_8024EB20 +/* 8024EAE4 0024BA44 80 7E 00 40 */ lwz r3, 0x40(r30) +/* 8024EAE8 0024BA48 80 1E 00 38 */ lwz r0, 0x38(r30) +/* 8024EAEC 0024BA4C 90 61 00 1C */ stw r3, 0x1c(r1) +/* 8024EAF0 0024BA50 7C 83 02 14 */ add r4, r3, r0 +/* 8024EAF4 0024BA54 7C 03 20 50 */ subf r0, r3, r4 +/* 8024EAF8 0024BA58 90 81 00 24 */ stw r4, 0x24(r1) +/* 8024EAFC 0024BA5C 90 81 00 20 */ stw r4, 0x20(r1) +/* 8024EB00 0024BA60 90 61 00 18 */ stw r3, 0x18(r1) +/* 8024EB04 0024BA64 7C 09 03 A6 */ mtctr r0 +/* 8024EB08 0024BA68 7C 03 20 40 */ cmplw r3, r4 +/* 8024EB0C 0024BA6C 41 82 00 08 */ beq lbl_8024EB14 +lbl_8024EB10: +/* 8024EB10 0024BA70 42 00 00 00 */ bdnz lbl_8024EB10 +lbl_8024EB14: +/* 8024EB14 0024BA74 28 03 00 00 */ cmplwi r3, 0 +/* 8024EB18 0024BA78 41 82 00 08 */ beq lbl_8024EB20 +/* 8024EB1C 0024BA7C 48 0C 6E 15 */ bl Free__7CMemoryFPCv +lbl_8024EB20: +/* 8024EB20 0024BA80 34 1E 00 24 */ addic. r0, r30, 0x24 +/* 8024EB24 0024BA84 41 82 00 38 */ beq lbl_8024EB5C +/* 8024EB28 0024BA88 80 7E 00 30 */ lwz r3, 0x30(r30) +/* 8024EB2C 0024BA8C 80 1E 00 28 */ lwz r0, 0x28(r30) +/* 8024EB30 0024BA90 90 61 00 0C */ stw r3, 0xc(r1) +/* 8024EB34 0024BA94 7C 83 02 14 */ add r4, r3, r0 +/* 8024EB38 0024BA98 7C 03 20 50 */ subf r0, r3, r4 +/* 8024EB3C 0024BA9C 90 81 00 14 */ stw r4, 0x14(r1) +/* 8024EB40 0024BAA0 90 81 00 10 */ stw r4, 0x10(r1) +/* 8024EB44 0024BAA4 90 61 00 08 */ stw r3, 8(r1) +/* 8024EB48 0024BAA8 7C 09 03 A6 */ mtctr r0 +/* 8024EB4C 0024BAAC 7C 03 20 40 */ cmplw r3, r4 +/* 8024EB50 0024BAB0 41 82 00 08 */ beq lbl_8024EB58 +lbl_8024EB54: +/* 8024EB54 0024BAB4 42 00 00 00 */ bdnz lbl_8024EB54 +lbl_8024EB58: +/* 8024EB58 0024BAB8 48 0C 6D D9 */ bl Free__7CMemoryFPCv +lbl_8024EB5C: +/* 8024EB5C 0024BABC 34 1E 00 14 */ addic. r0, r30, 0x14 +/* 8024EB60 0024BAC0 41 82 00 0C */ beq lbl_8024EB6C +/* 8024EB64 0024BAC4 38 7E 00 14 */ addi r3, r30, 0x14 +/* 8024EB68 0024BAC8 48 0E EF 79 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8024EB6C: +/* 8024EB6C 0024BACC 7F E0 07 35 */ extsh. r0, r31 +/* 8024EB70 0024BAD0 40 81 00 0C */ ble lbl_8024EB7C +/* 8024EB74 0024BAD4 7F C3 F3 78 */ mr r3, r30 +/* 8024EB78 0024BAD8 48 0C 6D B9 */ bl Free__7CMemoryFPCv +lbl_8024EB7C: +/* 8024EB7C 0024BADC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8024EB80 0024BAE0 7F C3 F3 78 */ mr r3, r30 +/* 8024EB84 0024BAE4 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8024EB88 0024BAE8 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8024EB8C 0024BAEC 7C 08 03 A6 */ mtlr r0 +/* 8024EB90 0024BAF0 38 21 00 30 */ addi r1, r1, 0x30 +/* 8024EB94 0024BAF4 4E 80 00 20 */ blr + +.global sub_8024eb98 +sub_8024eb98: +/* 8024EB98 0024BAF8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024EB9C 0024BAFC 7C 08 02 A6 */ mflr r0 +/* 8024EBA0 0024BB00 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024EBA4 0024BB04 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024EBA8 0024BB08 7C 9F 23 78 */ mr r31, r4 +/* 8024EBAC 0024BB0C 93 C1 00 08 */ stw r30, 8(r1) +/* 8024EBB0 0024BB10 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8024EBB4 0024BB14 41 82 00 20 */ beq lbl_8024EBD4 +/* 8024EBB8 0024BB18 80 7E 00 00 */ lwz r3, 0(r30) +/* 8024EBBC 0024BB1C 38 80 00 01 */ li r4, 1 +/* 8024EBC0 0024BB20 4B FF EA AD */ bl __dt__13CCardFileInfoFv +/* 8024EBC4 0024BB24 7F E0 07 35 */ extsh. r0, r31 +/* 8024EBC8 0024BB28 40 81 00 0C */ ble lbl_8024EBD4 +/* 8024EBCC 0024BB2C 7F C3 F3 78 */ mr r3, r30 +/* 8024EBD0 0024BB30 48 0C 6D 61 */ bl Free__7CMemoryFPCv +lbl_8024EBD4: +/* 8024EBD4 0024BB34 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024EBD8 0024BB38 7F C3 F3 78 */ mr r3, r30 +/* 8024EBDC 0024BB3C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024EBE0 0024BB40 83 C1 00 08 */ lwz r30, 8(r1) +/* 8024EBE4 0024BB44 7C 08 03 A6 */ mtlr r0 +/* 8024EBE8 0024BB48 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024EBEC 0024BB4C 4E 80 00 20 */ blr + +.global ClearFileInfo__17CMemoryCardDriverFv +ClearFileInfo__17CMemoryCardDriverFv: +/* 8024EBF0 0024BB50 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024EBF4 0024BB54 7C 08 02 A6 */ mflr r0 +/* 8024EBF8 0024BB58 38 80 00 00 */ li r4, 0 +/* 8024EBFC 0024BB5C 38 63 01 98 */ addi r3, r3, 0x198 +/* 8024EC00 0024BB60 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024EC04 0024BB64 4B FF EA 21 */ bl sub_8024d624 +/* 8024EC08 0024BB68 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024EC0C 0024BB6C 7C 08 03 A6 */ mtlr r0 +/* 8024EC10 0024BB70 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024EC14 0024BB74 4E 80 00 20 */ blr + +.global __ct__17CMemoryCardDriverFv +__ct__17CMemoryCardDriverFv: +/* 8024EC18 0024BB78 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 8024EC1C 0024BB7C 7C 08 02 A6 */ mflr r0 +/* 8024EC20 0024BB80 39 20 00 00 */ li r9, 0 +/* 8024EC24 0024BB84 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 8024EC28 0024BB88 38 00 00 1D */ li r0, 0x1d +/* 8024EC2C 0024BB8C 93 E1 00 CC */ stw r31, 0xcc(r1) +/* 8024EC30 0024BB90 7D 1F 43 78 */ mr r31, r8 +/* 8024EC34 0024BB94 93 C1 00 C8 */ stw r30, 0xc8(r1) +/* 8024EC38 0024BB98 7C 7E 1B 78 */ mr r30, r3 +/* 8024EC3C 0024BB9C 90 83 00 00 */ stw r4, 0(r3) +/* 8024EC40 0024BBA0 38 60 00 AE */ li r3, 0xae +/* 8024EC44 0024BBA4 38 9E 00 34 */ addi r4, r30, 0x34 +/* 8024EC48 0024BBA8 90 BE 00 04 */ stw r5, 4(r30) +/* 8024EC4C 0024BBAC 90 DE 00 08 */ stw r6, 8(r30) +/* 8024EC50 0024BBB0 90 FE 00 0C */ stw r7, 0xc(r30) +/* 8024EC54 0024BBB4 91 3E 00 10 */ stw r9, 0x10(r30) +/* 8024EC58 0024BBB8 91 3E 00 14 */ stw r9, 0x14(r30) +/* 8024EC5C 0024BBBC 91 3E 00 18 */ stw r9, 0x18(r30) +/* 8024EC60 0024BBC0 91 3E 00 1C */ stw r9, 0x1c(r30) +/* 8024EC64 0024BBC4 91 3E 00 20 */ stw r9, 0x20(r30) +/* 8024EC68 0024BBC8 91 3E 00 2C */ stw r9, 0x2c(r30) +/* 8024EC6C 0024BBCC 91 3E 00 28 */ stw r9, 0x28(r30) +/* 8024EC70 0024BBD0 90 7E 00 30 */ stw r3, 0x30(r30) +/* 8024EC74 0024BBD4 7C 09 03 A6 */ mtctr r0 +lbl_8024EC78: +/* 8024EC78 0024BBD8 28 04 00 00 */ cmplwi r4, 0 +/* 8024EC7C 0024BBDC 41 82 00 0C */ beq lbl_8024EC88 +/* 8024EC80 0024BBE0 88 0D 97 10 */ lbz r0, lbl_805A82D0@sda21(r13) +/* 8024EC84 0024BBE4 98 04 00 00 */ stb r0, 0(r4) +lbl_8024EC88: +/* 8024EC88 0024BBE8 34 84 00 01 */ addic. r4, r4, 1 +/* 8024EC8C 0024BBEC 41 82 00 0C */ beq lbl_8024EC98 +/* 8024EC90 0024BBF0 88 0D 97 10 */ lbz r0, lbl_805A82D0@sda21(r13) +/* 8024EC94 0024BBF4 98 04 00 00 */ stb r0, 0(r4) +lbl_8024EC98: +/* 8024EC98 0024BBF8 34 84 00 01 */ addic. r4, r4, 1 +/* 8024EC9C 0024BBFC 41 82 00 0C */ beq lbl_8024ECA8 +/* 8024ECA0 0024BC00 88 0D 97 10 */ lbz r0, lbl_805A82D0@sda21(r13) +/* 8024ECA4 0024BC04 98 04 00 00 */ stb r0, 0(r4) +lbl_8024ECA8: +/* 8024ECA8 0024BC08 34 84 00 01 */ addic. r4, r4, 1 +/* 8024ECAC 0024BC0C 41 82 00 0C */ beq lbl_8024ECB8 +/* 8024ECB0 0024BC10 88 0D 97 10 */ lbz r0, lbl_805A82D0@sda21(r13) +/* 8024ECB4 0024BC14 98 04 00 00 */ stb r0, 0(r4) +lbl_8024ECB8: +/* 8024ECB8 0024BC18 34 84 00 01 */ addic. r4, r4, 1 +/* 8024ECBC 0024BC1C 41 82 00 0C */ beq lbl_8024ECC8 +/* 8024ECC0 0024BC20 88 0D 97 10 */ lbz r0, lbl_805A82D0@sda21(r13) +/* 8024ECC4 0024BC24 98 04 00 00 */ stb r0, 0(r4) +lbl_8024ECC8: +/* 8024ECC8 0024BC28 34 84 00 01 */ addic. r4, r4, 1 +/* 8024ECCC 0024BC2C 41 82 00 0C */ beq lbl_8024ECD8 +/* 8024ECD0 0024BC30 88 0D 97 10 */ lbz r0, lbl_805A82D0@sda21(r13) +/* 8024ECD4 0024BC34 98 04 00 00 */ stb r0, 0(r4) +lbl_8024ECD8: +/* 8024ECD8 0024BC38 39 29 00 05 */ addi r9, r9, 5 +/* 8024ECDC 0024BC3C 38 84 00 01 */ addi r4, r4, 1 +/* 8024ECE0 0024BC40 42 00 FF 98 */ bdnz lbl_8024EC78 +/* 8024ECE4 0024BC44 38 60 00 00 */ li r3, 0 +/* 8024ECE8 0024BC48 38 00 00 03 */ li r0, 3 +/* 8024ECEC 0024BC4C 34 9E 00 E8 */ addic. r4, r30, 0xe8 +/* 8024ECF0 0024BC50 98 61 00 08 */ stb r3, 8(r1) +/* 8024ECF4 0024BC54 90 61 00 0C */ stw r3, 0xc(r1) +/* 8024ECF8 0024BC58 90 1E 00 E4 */ stw r0, 0xe4(r30) +/* 8024ECFC 0024BC5C 41 82 00 10 */ beq lbl_8024ED0C +/* 8024ED00 0024BC60 98 64 00 00 */ stb r3, 0(r4) +/* 8024ED04 0024BC64 98 61 00 08 */ stb r3, 8(r1) +/* 8024ED08 0024BC68 90 64 00 04 */ stw r3, 4(r4) +lbl_8024ED0C: +/* 8024ED0C 0024BC6C 34 84 00 08 */ addic. r4, r4, 8 +/* 8024ED10 0024BC70 41 82 00 14 */ beq lbl_8024ED24 +/* 8024ED14 0024BC74 88 01 00 08 */ lbz r0, 8(r1) +/* 8024ED18 0024BC78 98 04 00 00 */ stb r0, 0(r4) +/* 8024ED1C 0024BC7C 90 64 00 04 */ stw r3, 4(r4) +/* 8024ED20 0024BC80 98 61 00 08 */ stb r3, 8(r1) +lbl_8024ED24: +/* 8024ED24 0024BC84 34 84 00 08 */ addic. r4, r4, 8 +/* 8024ED28 0024BC88 41 82 00 14 */ beq lbl_8024ED3C +/* 8024ED2C 0024BC8C 88 01 00 08 */ lbz r0, 8(r1) +/* 8024ED30 0024BC90 98 04 00 00 */ stb r0, 0(r4) +/* 8024ED34 0024BC94 90 64 00 04 */ stw r3, 4(r4) +/* 8024ED38 0024BC98 98 61 00 08 */ stb r3, 8(r1) +lbl_8024ED3C: +/* 8024ED3C 0024BC9C 88 01 00 08 */ lbz r0, 8(r1) +/* 8024ED40 0024BCA0 28 00 00 00 */ cmplwi r0, 0 +/* 8024ED44 0024BCA4 41 82 00 6C */ beq lbl_8024EDB0 +/* 8024ED48 0024BCA8 80 61 00 0C */ lwz r3, 0xc(r1) +/* 8024ED4C 0024BCAC 28 03 00 00 */ cmplwi r3, 0 +/* 8024ED50 0024BCB0 41 82 00 60 */ beq lbl_8024EDB0 +/* 8024ED54 0024BCB4 41 82 00 58 */ beq lbl_8024EDAC +/* 8024ED58 0024BCB8 80 C3 00 00 */ lwz r6, 0(r3) +/* 8024ED5C 0024BCBC 38 80 00 00 */ li r4, 0 +/* 8024ED60 0024BCC0 2C 06 00 00 */ cmpwi r6, 0 +/* 8024ED64 0024BCC4 40 81 00 40 */ ble lbl_8024EDA4 +/* 8024ED68 0024BCC8 2C 06 00 08 */ cmpwi r6, 8 +/* 8024ED6C 0024BCCC 38 A6 FF F8 */ addi r5, r6, -8 +/* 8024ED70 0024BCD0 40 81 00 20 */ ble lbl_8024ED90 +/* 8024ED74 0024BCD4 38 05 00 07 */ addi r0, r5, 7 +/* 8024ED78 0024BCD8 54 00 E8 FE */ srwi r0, r0, 3 +/* 8024ED7C 0024BCDC 7C 09 03 A6 */ mtctr r0 +/* 8024ED80 0024BCE0 2C 05 00 00 */ cmpwi r5, 0 +/* 8024ED84 0024BCE4 40 81 00 0C */ ble lbl_8024ED90 +lbl_8024ED88: +/* 8024ED88 0024BCE8 38 84 00 08 */ addi r4, r4, 8 +/* 8024ED8C 0024BCEC 42 00 FF FC */ bdnz lbl_8024ED88 +lbl_8024ED90: +/* 8024ED90 0024BCF0 7C 04 30 50 */ subf r0, r4, r6 +/* 8024ED94 0024BCF4 7C 09 03 A6 */ mtctr r0 +/* 8024ED98 0024BCF8 7C 04 30 00 */ cmpw r4, r6 +/* 8024ED9C 0024BCFC 40 80 00 08 */ bge lbl_8024EDA4 +lbl_8024EDA0: +/* 8024EDA0 0024BD00 42 00 00 00 */ bdnz lbl_8024EDA0 +lbl_8024EDA4: +/* 8024EDA4 0024BD04 38 00 00 00 */ li r0, 0 +/* 8024EDA8 0024BD08 90 03 00 00 */ stw r0, 0(r3) +lbl_8024EDAC: +/* 8024EDAC 0024BD0C 48 0C 6B 85 */ bl Free__7CMemoryFPCv +lbl_8024EDB0: +/* 8024EDB0 0024BD10 38 A0 00 00 */ li r5, 0 +/* 8024EDB4 0024BD14 38 60 FF FF */ li r3, -1 +/* 8024EDB8 0024BD18 90 BE 01 00 */ stw r5, 0x100(r30) +/* 8024EDBC 0024BD1C 38 00 00 01 */ li r0, 1 +/* 8024EDC0 0024BD20 80 82 B8 B0 */ lwz r4, lbl_805AD5D0@sda21(r2) +/* 8024EDC4 0024BD24 90 7E 01 94 */ stw r3, 0x194(r30) +/* 8024EDC8 0024BD28 38 61 00 20 */ addi r3, r1, 0x20 +/* 8024EDCC 0024BD2C 90 BE 01 98 */ stw r5, 0x198(r30) +/* 8024EDD0 0024BD30 98 BE 01 9C */ stb r5, 0x19c(r30) +/* 8024EDD4 0024BD34 9B FE 01 9D */ stb r31, 0x19d(r30) +/* 8024EDD8 0024BD38 98 0D A5 58 */ stb r0, lbl_805A9118@sda21(r13) +/* 8024EDDC 0024BD3C 4B DB 5E DD */ bl string_l__4rstlFPCc +/* 8024EDE0 0024BD40 80 9E 00 00 */ lwz r4, 0(r30) +/* 8024EDE4 0024BD44 38 00 00 00 */ li r0, 0 +/* 8024EDE8 0024BD48 38 61 00 7C */ addi r3, r1, 0x7c +/* 8024EDEC 0024BD4C 38 A1 00 20 */ addi r5, r1, 0x20 +/* 8024EDF0 0024BD50 90 01 00 78 */ stw r0, 0x78(r1) +/* 8024EDF4 0024BD54 48 0F F4 99 */ bl __ct__19SMemoryCardFileInfoFiRCQ24rstl6string +/* 8024EDF8 0024BD58 38 7E 01 00 */ addi r3, r30, 0x100 +/* 8024EDFC 0024BD5C 38 81 00 78 */ addi r4, r1, 0x78 +/* 8024EE00 0024BD60 48 00 00 7D */ bl sub_8024ee7c +/* 8024EE04 0024BD64 38 61 00 78 */ addi r3, r1, 0x78 +/* 8024EE08 0024BD68 38 80 FF FF */ li r4, -1 +/* 8024EE0C 0024BD6C 4B FF FC 59 */ bl "__dt__Q24rstl29pairFv" +/* 8024EE10 0024BD70 38 61 00 20 */ addi r3, r1, 0x20 +/* 8024EE14 0024BD74 48 0E EC CD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8024EE18 0024BD78 38 82 B8 B0 */ addi r4, r2, lbl_805AD5D0@sda21 +/* 8024EE1C 0024BD7C 38 61 00 10 */ addi r3, r1, 0x10 +/* 8024EE20 0024BD80 80 84 00 04 */ lwz r4, 4(r4) +/* 8024EE24 0024BD84 4B DB 5E 95 */ bl string_l__4rstlFPCc +/* 8024EE28 0024BD88 80 9E 00 00 */ lwz r4, 0(r30) +/* 8024EE2C 0024BD8C 38 00 00 00 */ li r0, 0 +/* 8024EE30 0024BD90 38 61 00 34 */ addi r3, r1, 0x34 +/* 8024EE34 0024BD94 38 A1 00 10 */ addi r5, r1, 0x10 +/* 8024EE38 0024BD98 90 01 00 30 */ stw r0, 0x30(r1) +/* 8024EE3C 0024BD9C 48 0F F4 51 */ bl __ct__19SMemoryCardFileInfoFiRCQ24rstl6string +/* 8024EE40 0024BDA0 38 7E 01 00 */ addi r3, r30, 0x100 +/* 8024EE44 0024BDA4 38 81 00 30 */ addi r4, r1, 0x30 +/* 8024EE48 0024BDA8 48 00 00 35 */ bl sub_8024ee7c +/* 8024EE4C 0024BDAC 38 61 00 30 */ addi r3, r1, 0x30 +/* 8024EE50 0024BDB0 38 80 FF FF */ li r4, -1 +/* 8024EE54 0024BDB4 4B FF FC 11 */ bl "__dt__Q24rstl29pairFv" +/* 8024EE58 0024BDB8 38 61 00 10 */ addi r3, r1, 0x10 +/* 8024EE5C 0024BDBC 48 0E EC 85 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8024EE60 0024BDC0 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 8024EE64 0024BDC4 7F C3 F3 78 */ mr r3, r30 +/* 8024EE68 0024BDC8 83 E1 00 CC */ lwz r31, 0xcc(r1) +/* 8024EE6C 0024BDCC 83 C1 00 C8 */ lwz r30, 0xc8(r1) +/* 8024EE70 0024BDD0 7C 08 03 A6 */ mtlr r0 +/* 8024EE74 0024BDD4 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 8024EE78 0024BDD8 4E 80 00 20 */ blr + +.global sub_8024ee7c +sub_8024ee7c: +/* 8024EE7C 0024BDDC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024EE80 0024BDE0 7C 08 02 A6 */ mflr r0 +/* 8024EE84 0024BDE4 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024EE88 0024BDE8 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024EE8C 0024BDEC 7C 7F 1B 78 */ mr r31, r3 +/* 8024EE90 0024BDF0 80 03 00 00 */ lwz r0, 0(r3) +/* 8024EE94 0024BDF4 1C 00 00 48 */ mulli r0, r0, 0x48 +/* 8024EE98 0024BDF8 7C 7F 02 14 */ add r3, r31, r0 +/* 8024EE9C 0024BDFC 38 63 00 04 */ addi r3, r3, 4 +/* 8024EEA0 0024BE00 48 00 00 25 */ bl sub_8024eec4 +/* 8024EEA4 0024BE04 80 7F 00 00 */ lwz r3, 0(r31) +/* 8024EEA8 0024BE08 38 03 00 01 */ addi r0, r3, 1 +/* 8024EEAC 0024BE0C 90 1F 00 00 */ stw r0, 0(r31) +/* 8024EEB0 0024BE10 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024EEB4 0024BE14 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024EEB8 0024BE18 7C 08 03 A6 */ mtlr r0 +/* 8024EEBC 0024BE1C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024EEC0 0024BE20 4E 80 00 20 */ blr + +.global sub_8024eec4 +sub_8024eec4: +/* 8024EEC4 0024BE24 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024EEC8 0024BE28 7C 08 02 A6 */ mflr r0 +/* 8024EECC 0024BE2C 28 03 00 00 */ cmplwi r3, 0 +/* 8024EED0 0024BE30 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024EED4 0024BE34 41 82 00 08 */ beq lbl_8024EEDC +/* 8024EED8 0024BE38 48 00 00 15 */ bl sub_8024eeec +lbl_8024EEDC: +/* 8024EEDC 0024BE3C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024EEE0 0024BE40 7C 08 03 A6 */ mtlr r0 +/* 8024EEE4 0024BE44 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024EEE8 0024BE48 4E 80 00 20 */ blr + +.global sub_8024eeec +sub_8024eeec: +/* 8024EEEC 0024BE4C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024EEF0 0024BE50 7C 08 02 A6 */ mflr r0 +/* 8024EEF4 0024BE54 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024EEF8 0024BE58 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024EEFC 0024BE5C 7C 7F 1B 78 */ mr r31, r3 +/* 8024EF00 0024BE60 38 7F 00 04 */ addi r3, r31, 4 +/* 8024EF04 0024BE64 80 04 00 00 */ lwz r0, 0(r4) +/* 8024EF08 0024BE68 38 84 00 04 */ addi r4, r4, 4 +/* 8024EF0C 0024BE6C 90 1F 00 00 */ stw r0, 0(r31) +/* 8024EF10 0024BE70 48 00 00 1D */ bl sub_8024ef2c +/* 8024EF14 0024BE74 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024EF18 0024BE78 7F E3 FB 78 */ mr r3, r31 +/* 8024EF1C 0024BE7C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024EF20 0024BE80 7C 08 03 A6 */ mtlr r0 +/* 8024EF24 0024BE84 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024EF28 0024BE88 4E 80 00 20 */ blr + +.global sub_8024ef2c +sub_8024ef2c: +/* 8024EF2C 0024BE8C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8024EF30 0024BE90 7C 08 02 A6 */ mflr r0 +/* 8024EF34 0024BE94 90 01 00 24 */ stw r0, 0x24(r1) +/* 8024EF38 0024BE98 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8024EF3C 0024BE9C 7C 9F 23 78 */ mr r31, r4 +/* 8024EF40 0024BEA0 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8024EF44 0024BEA4 7C 7E 1B 78 */ mr r30, r3 +/* 8024EF48 0024BEA8 38 7E 00 14 */ addi r3, r30, 0x14 +/* 8024EF4C 0024BEAC 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8024EF50 0024BEB0 80 A4 00 00 */ lwz r5, 0(r4) +/* 8024EF54 0024BEB4 80 04 00 04 */ lwz r0, 4(r4) +/* 8024EF58 0024BEB8 38 9F 00 14 */ addi r4, r31, 0x14 +/* 8024EF5C 0024BEBC 90 BE 00 00 */ stw r5, 0(r30) +/* 8024EF60 0024BEC0 90 1E 00 04 */ stw r0, 4(r30) +/* 8024EF64 0024BEC4 80 BF 00 08 */ lwz r5, 8(r31) +/* 8024EF68 0024BEC8 80 1F 00 0C */ lwz r0, 0xc(r31) +/* 8024EF6C 0024BECC 90 BE 00 08 */ stw r5, 8(r30) +/* 8024EF70 0024BED0 90 1E 00 0C */ stw r0, 0xc(r30) +/* 8024EF74 0024BED4 80 1F 00 10 */ lwz r0, 0x10(r31) +/* 8024EF78 0024BED8 90 1E 00 10 */ stw r0, 0x10(r30) +/* 8024EF7C 0024BEDC 48 0E F1 E5 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8024EF80 0024BEE0 80 1F 00 28 */ lwz r0, 0x28(r31) +/* 8024EF84 0024BEE4 90 1E 00 28 */ stw r0, 0x28(r30) +/* 8024EF88 0024BEE8 80 1F 00 2C */ lwz r0, 0x2c(r31) +/* 8024EF8C 0024BEEC 90 1E 00 2C */ stw r0, 0x2c(r30) +/* 8024EF90 0024BEF0 80 1F 00 28 */ lwz r0, 0x28(r31) +/* 8024EF94 0024BEF4 2C 00 00 00 */ cmpwi r0, 0 +/* 8024EF98 0024BEF8 40 82 00 1C */ bne lbl_8024EFB4 +/* 8024EF9C 0024BEFC 80 1F 00 2C */ lwz r0, 0x2c(r31) +/* 8024EFA0 0024BF00 2C 00 00 00 */ cmpwi r0, 0 +/* 8024EFA4 0024BF04 40 82 00 10 */ bne lbl_8024EFB4 +/* 8024EFA8 0024BF08 38 00 00 00 */ li r0, 0 +/* 8024EFAC 0024BF0C 90 1E 00 30 */ stw r0, 0x30(r30) +/* 8024EFB0 0024BF10 48 00 00 88 */ b lbl_8024F038 +lbl_8024EFB4: +/* 8024EFB4 0024BF14 83 BE 00 2C */ lwz r29, 0x2c(r30) +/* 8024EFB8 0024BF18 2C 1D 00 00 */ cmpwi r29, 0 +/* 8024EFBC 0024BF1C 40 82 00 0C */ bne lbl_8024EFC8 +/* 8024EFC0 0024BF20 38 60 00 00 */ li r3, 0 +/* 8024EFC4 0024BF24 48 00 00 3C */ b lbl_8024F000 +lbl_8024EFC8: +/* 8024EFC8 0024BF28 3C 60 80 3D */ lis r3, lbl_803D47CC@ha +/* 8024EFCC 0024BF2C 3C 80 80 3D */ lis r4, lbl_803D6AA8@ha +/* 8024EFD0 0024BF30 38 A3 47 CC */ addi r5, r3, lbl_803D47CC@l +/* 8024EFD4 0024BF34 38 C4 6A A8 */ addi r6, r4, lbl_803D6AA8@l +/* 8024EFD8 0024BF38 38 61 00 08 */ addi r3, r1, 8 +/* 8024EFDC 0024BF3C 38 80 FF FF */ li r4, -1 +/* 8024EFE0 0024BF40 38 A5 02 A1 */ addi r5, r5, 0x2a1 +/* 8024EFE4 0024BF44 48 08 73 F1 */ bl __ct__10CCallStackFUiPCcPCc +/* 8024EFE8 0024BF48 7C 67 1B 78 */ mr r7, r3 +/* 8024EFEC 0024BF4C 7F A3 EB 78 */ mr r3, r29 +/* 8024EFF0 0024BF50 38 80 00 02 */ li r4, 2 +/* 8024EFF4 0024BF54 38 A0 00 01 */ li r5, 1 +/* 8024EFF8 0024BF58 38 C0 00 00 */ li r6, 0 +/* 8024EFFC 0024BF5C 48 0C 69 99 */ bl Alloc__7CMemoryFUlQ210IAllocator5EHintQ210IAllocator6EScopeQ210IAllocator5ETypeRC10CCallStack +lbl_8024F000: +/* 8024F000 0024BF60 90 7E 00 30 */ stw r3, 0x30(r30) +/* 8024F004 0024BF64 80 1E 00 28 */ lwz r0, 0x28(r30) +/* 8024F008 0024BF68 80 9F 00 30 */ lwz r4, 0x30(r31) +/* 8024F00C 0024BF6C 80 7E 00 30 */ lwz r3, 0x30(r30) +/* 8024F010 0024BF70 7C 09 03 A6 */ mtctr r0 +/* 8024F014 0024BF74 2C 00 00 00 */ cmpwi r0, 0 +/* 8024F018 0024BF78 40 81 00 20 */ ble lbl_8024F038 +lbl_8024F01C: +/* 8024F01C 0024BF7C 28 03 00 00 */ cmplwi r3, 0 +/* 8024F020 0024BF80 41 82 00 0C */ beq lbl_8024F02C +/* 8024F024 0024BF84 88 04 00 00 */ lbz r0, 0(r4) +/* 8024F028 0024BF88 98 03 00 00 */ stb r0, 0(r3) +lbl_8024F02C: +/* 8024F02C 0024BF8C 38 63 00 01 */ addi r3, r3, 1 +/* 8024F030 0024BF90 38 84 00 01 */ addi r4, r4, 1 +/* 8024F034 0024BF94 42 00 FF E8 */ bdnz lbl_8024F01C +lbl_8024F038: +/* 8024F038 0024BF98 80 1F 00 38 */ lwz r0, 0x38(r31) +/* 8024F03C 0024BF9C 90 1E 00 38 */ stw r0, 0x38(r30) +/* 8024F040 0024BFA0 80 1F 00 3C */ lwz r0, 0x3c(r31) +/* 8024F044 0024BFA4 90 1E 00 3C */ stw r0, 0x3c(r30) +/* 8024F048 0024BFA8 80 1F 00 38 */ lwz r0, 0x38(r31) +/* 8024F04C 0024BFAC 2C 00 00 00 */ cmpwi r0, 0 +/* 8024F050 0024BFB0 40 82 00 1C */ bne lbl_8024F06C +/* 8024F054 0024BFB4 80 1F 00 3C */ lwz r0, 0x3c(r31) +/* 8024F058 0024BFB8 2C 00 00 00 */ cmpwi r0, 0 +/* 8024F05C 0024BFBC 40 82 00 10 */ bne lbl_8024F06C +/* 8024F060 0024BFC0 38 00 00 00 */ li r0, 0 +/* 8024F064 0024BFC4 90 1E 00 40 */ stw r0, 0x40(r30) +/* 8024F068 0024BFC8 48 00 00 68 */ b lbl_8024F0D0 +lbl_8024F06C: +/* 8024F06C 0024BFCC 80 7E 00 3C */ lwz r3, 0x3c(r30) +/* 8024F070 0024BFD0 2C 03 00 00 */ cmpwi r3, 0 +/* 8024F074 0024BFD4 40 82 00 10 */ bne lbl_8024F084 +/* 8024F078 0024BFD8 38 00 00 00 */ li r0, 0 +/* 8024F07C 0024BFDC 90 1E 00 40 */ stw r0, 0x40(r30) +/* 8024F080 0024BFE0 48 00 00 1C */ b lbl_8024F09C +lbl_8024F084: +/* 8024F084 0024BFE4 3C 80 80 3D */ lis r4, lbl_803D47CC@ha +/* 8024F088 0024BFE8 38 A0 00 00 */ li r5, 0 +/* 8024F08C 0024BFEC 38 84 47 CC */ addi r4, r4, lbl_803D47CC@l +/* 8024F090 0024BFF0 38 84 02 A1 */ addi r4, r4, 0x2a1 +/* 8024F094 0024BFF4 48 0C 67 85 */ bl __nwa__FUlPCcPCc +/* 8024F098 0024BFF8 90 7E 00 40 */ stw r3, 0x40(r30) +lbl_8024F09C: +/* 8024F09C 0024BFFC 80 1E 00 38 */ lwz r0, 0x38(r30) +/* 8024F0A0 0024C000 80 9F 00 40 */ lwz r4, 0x40(r31) +/* 8024F0A4 0024C004 80 7E 00 40 */ lwz r3, 0x40(r30) +/* 8024F0A8 0024C008 7C 09 03 A6 */ mtctr r0 +/* 8024F0AC 0024C00C 2C 00 00 00 */ cmpwi r0, 0 +/* 8024F0B0 0024C010 40 81 00 20 */ ble lbl_8024F0D0 +lbl_8024F0B4: +/* 8024F0B4 0024C014 28 03 00 00 */ cmplwi r3, 0 +/* 8024F0B8 0024C018 41 82 00 0C */ beq lbl_8024F0C4 +/* 8024F0BC 0024C01C 88 04 00 00 */ lbz r0, 0(r4) +/* 8024F0C0 0024C020 98 03 00 00 */ stb r0, 0(r3) +lbl_8024F0C4: +/* 8024F0C4 0024C024 38 63 00 01 */ addi r3, r3, 1 +/* 8024F0C8 0024C028 38 84 00 01 */ addi r4, r4, 1 +/* 8024F0CC 0024C02C 42 00 FF E8 */ bdnz lbl_8024F0B4 +lbl_8024F0D0: +/* 8024F0D0 0024C030 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8024F0D4 0024C034 7F C3 F3 78 */ mr r3, r30 +/* 8024F0D8 0024C038 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8024F0DC 0024C03C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8024F0E0 0024C040 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8024F0E4 0024C044 7C 08 03 A6 */ mtlr r0 +/* 8024F0E8 0024C048 38 21 00 20 */ addi r1, r1, 0x20 +/* 8024F0EC 0024C04C 4E 80 00 20 */ blr + +.global IsCardWriting__17CMemoryCardDriverF6EState +IsCardWriting__17CMemoryCardDriverF6EState: +/* 8024F0F0 0024C050 38 83 FF E7 */ addi r4, r3, -25 +/* 8024F0F4 0024C054 38 A0 00 01 */ li r5, 1 +/* 8024F0F8 0024C058 20 04 00 01 */ subfic r0, r4, 1 +/* 8024F0FC 0024C05C 7C A4 23 38 */ orc r4, r5, r4 +/* 8024F100 0024C060 7C A6 2B 78 */ mr r6, r5 +/* 8024F104 0024C064 54 00 F8 7E */ srwi r0, r0, 1 +/* 8024F108 0024C068 7C A7 2B 78 */ mr r7, r5 +/* 8024F10C 0024C06C 7C 00 20 50 */ subf r0, r0, r4 +/* 8024F110 0024C070 54 00 0F FF */ rlwinm. r0, r0, 1, 0x1f, 0x1f +/* 8024F114 0024C074 40 82 00 08 */ bne lbl_8024F11C +/* 8024F118 0024C078 38 E0 00 00 */ li r7, 0 +lbl_8024F11C: +/* 8024F11C 0024C07C 54 E0 06 3F */ clrlwi. r0, r7, 0x18 +/* 8024F120 0024C080 40 82 00 10 */ bne lbl_8024F130 +/* 8024F124 0024C084 2C 03 00 1B */ cmpwi r3, 0x1b +/* 8024F128 0024C088 41 82 00 08 */ beq lbl_8024F130 +/* 8024F12C 0024C08C 38 C0 00 00 */ li r6, 0 +lbl_8024F130: +/* 8024F130 0024C090 54 C0 06 3F */ clrlwi. r0, r6, 0x18 +/* 8024F134 0024C094 40 82 00 10 */ bne lbl_8024F144 +/* 8024F138 0024C098 2C 03 00 1D */ cmpwi r3, 0x1d +/* 8024F13C 0024C09C 41 82 00 08 */ beq lbl_8024F144 +/* 8024F140 0024C0A0 38 A0 00 00 */ li r5, 0 +lbl_8024F144: +/* 8024F144 0024C0A4 7C A3 2B 78 */ mr r3, r5 +/* 8024F148 0024C0A8 4E 80 00 20 */ blr + +.global IsCardBusy__17CMemoryCardDriverF6EState +IsCardBusy__17CMemoryCardDriverF6EState: +/* 8024F14C 0024C0AC 2C 03 00 1A */ cmpwi r3, 0x1a +/* 8024F150 0024C0B0 38 00 00 00 */ li r0, 0 +/* 8024F154 0024C0B4 41 80 00 10 */ blt lbl_8024F164 +/* 8024F158 0024C0B8 2C 03 00 25 */ cmpwi r3, 0x25 +/* 8024F15C 0024C0BC 41 81 00 08 */ bgt lbl_8024F164 +/* 8024F160 0024C0C0 38 00 00 01 */ li r0, 1 +lbl_8024F164: +/* 8024F164 0024C0C4 7C 03 03 78 */ mr r3, r0 +/* 8024F168 0024C0C8 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CMessageScreen.s b/asm/Kyoto_CWD/CMessageScreen.s new file mode 100644 index 00000000..d02487f1 --- /dev/null +++ b/asm/Kyoto_CWD/CMessageScreen.s @@ -0,0 +1,705 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global Draw__14CMessageScreenCFv +Draw__14CMessageScreenCFv: +/* 801EF604 001EC564 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801EF608 001EC568 7C 08 02 A6 */ mflr r0 +/* 801EF60C 001EC56C 90 01 00 24 */ stw r0, 0x24(r1) +/* 801EF610 001EC570 80 03 00 18 */ lwz r0, 0x18(r3) +/* 801EF614 001EC574 28 00 00 00 */ cmplwi r0, 0 +/* 801EF618 001EC578 41 82 00 38 */ beq lbl_801EF650 +/* 801EF61C 001EC57C 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801EF620 001EC580 C0 63 00 70 */ lfs f3, 0x70(r3) +/* 801EF624 001EC584 38 A4 66 A0 */ addi r5, r4, skZero3f@l +/* 801EF628 001EC588 7C 03 03 78 */ mr r3, r0 +/* 801EF62C 001EC58C C0 45 00 00 */ lfs f2, 0(r5) +/* 801EF630 001EC590 38 81 00 08 */ addi r4, r1, 8 +/* 801EF634 001EC594 C0 25 00 04 */ lfs f1, 4(r5) +/* 801EF638 001EC598 C0 05 00 08 */ lfs f0, 8(r5) +/* 801EF63C 001EC59C D0 61 00 08 */ stfs f3, 8(r1) +/* 801EF640 001EC5A0 D0 41 00 0C */ stfs f2, 0xc(r1) +/* 801EF644 001EC5A4 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 801EF648 001EC5A8 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801EF64C 001EC5AC 48 0D 30 E9 */ bl Draw__9CGuiFrameCFRC19CGuiWidgetDrawParms +lbl_801EF650: +/* 801EF650 001EC5B0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801EF654 001EC5B4 7C 08 03 A6 */ mtlr r0 +/* 801EF658 001EC5B8 38 21 00 20 */ addi r1, r1, 0x20 +/* 801EF65C 001EC5BC 4E 80 00 20 */ blr + +.global ProcessControllerInput__14CMessageScreenFRC11CFinalInput +ProcessControllerInput__14CMessageScreenFRC11CFinalInput: +/* 801EF660 001EC5C0 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801EF664 001EC5C4 7C 08 02 A6 */ mflr r0 +/* 801EF668 001EC5C8 90 01 00 44 */ stw r0, 0x44(r1) +/* 801EF66C 001EC5CC DB E1 00 30 */ stfd f31, 0x30(r1) +/* 801EF670 001EC5D0 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 801EF674 001EC5D4 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801EF678 001EC5D8 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801EF67C 001EC5DC 7C 7E 1B 78 */ mr r30, r3 +/* 801EF680 001EC5E0 80 03 00 18 */ lwz r0, 0x18(r3) +/* 801EF684 001EC5E4 28 00 00 00 */ cmplwi r0, 0 +/* 801EF688 001EC5E8 41 82 00 FC */ beq lbl_801EF784 +/* 801EF68C 001EC5EC C0 3E 00 74 */ lfs f1, 0x74(r30) +/* 801EF690 001EC5F0 C0 02 AE 48 */ lfs f0, lbl_805ACB68@sda21(r2) +/* 801EF694 001EC5F4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801EF698 001EC5F8 4C 40 13 82 */ cror 2, 0, 2 +/* 801EF69C 001EC5FC 40 82 00 E8 */ bne lbl_801EF784 +/* 801EF6A0 001EC600 88 04 00 2D */ lbz r0, 0x2d(r4) +/* 801EF6A4 001EC604 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 801EF6A8 001EC608 41 82 00 DC */ beq lbl_801EF784 +/* 801EF6AC 001EC60C 80 7E 00 1C */ lwz r3, 0x1c(r30) +/* 801EF6B0 001EC610 3B E3 00 D4 */ addi r31, r3, 0xd4 +/* 801EF6B4 001EC614 C3 E3 01 10 */ lfs f31, 0x110(r3) +/* 801EF6B8 001EC618 7F E3 FB 78 */ mr r3, r31 +/* 801EF6BC 001EC61C 48 0D 89 ED */ bl GetTotalAnimationTime__15CGuiTextSupportCFv +/* 801EF6C0 001EC620 FC 1F 08 40 */ fcmpo cr0, f31, f1 +/* 801EF6C4 001EC624 40 80 00 14 */ bge lbl_801EF6D8 +/* 801EF6C8 001EC628 7F E3 FB 78 */ mr r3, r31 +/* 801EF6CC 001EC62C 48 0D 89 DD */ bl GetTotalAnimationTime__15CGuiTextSupportCFv +/* 801EF6D0 001EC630 D0 3F 00 3C */ stfs f1, 0x3c(r31) +/* 801EF6D4 001EC634 48 00 00 B0 */ b lbl_801EF784 +lbl_801EF6D8: +/* 801EF6D8 001EC638 80 7E 00 6C */ lwz r3, 0x6c(r30) +/* 801EF6DC 001EC63C 38 03 00 01 */ addi r0, r3, 1 +/* 801EF6E0 001EC640 90 1E 00 6C */ stw r0, 0x6c(r30) +/* 801EF6E4 001EC644 80 7E 00 08 */ lwz r3, 8(r30) +/* 801EF6E8 001EC648 80 9E 00 6C */ lwz r4, 0x6c(r30) +/* 801EF6EC 001EC64C 80 03 00 00 */ lwz r0, 0(r3) +/* 801EF6F0 001EC650 7C 04 00 00 */ cmpw r4, r0 +/* 801EF6F4 001EC654 41 80 00 18 */ blt lbl_801EF70C +/* 801EF6F8 001EC658 88 1E 00 78 */ lbz r0, 0x78(r30) +/* 801EF6FC 001EC65C 38 60 00 01 */ li r3, 1 +/* 801EF700 001EC660 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801EF704 001EC664 98 1E 00 78 */ stb r0, 0x78(r30) +/* 801EF708 001EC668 48 00 00 7C */ b lbl_801EF784 +lbl_801EF70C: +/* 801EF70C 001EC66C C0 22 AE 4C */ lfs f1, lbl_805ACB6C@sda21(r2) +/* 801EF710 001EC670 7F E3 FB 78 */ mr r3, r31 +/* 801EF714 001EC674 C0 42 AE 50 */ lfs f2, lbl_805ACB70@sda21(r2) +/* 801EF718 001EC678 38 80 00 00 */ li r4, 0 +/* 801EF71C 001EC67C 48 0D 89 FD */ bl SetTypeWriteEffectOptions__15CGuiTextSupportFbff +/* 801EF720 001EC680 80 7E 00 08 */ lwz r3, 8(r30) +/* 801EF724 001EC684 80 9E 00 6C */ lwz r4, 0x6c(r30) +/* 801EF728 001EC688 48 16 6F D5 */ bl GetString__12CStringTableCFi +/* 801EF72C 001EC68C 7C 64 1B 78 */ mr r4, r3 +/* 801EF730 001EC690 38 61 00 10 */ addi r3, r1, 0x10 +/* 801EF734 001EC694 38 C1 00 08 */ addi r6, r1, 8 +/* 801EF738 001EC698 38 A0 FF FF */ li r5, -1 +/* 801EF73C 001EC69C 48 14 E0 81 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCwiRCQ24rstl17rmemory_allocator" +/* 801EF740 001EC6A0 7F E3 FB 78 */ mr r3, r31 +/* 801EF744 001EC6A4 38 81 00 10 */ addi r4, r1, 0x10 +/* 801EF748 001EC6A8 38 A0 00 00 */ li r5, 0 +/* 801EF74C 001EC6AC 48 0D A1 39 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801EF750 001EC6B0 38 61 00 10 */ addi r3, r1, 0x10 +/* 801EF754 001EC6B4 48 14 D9 E1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801EF758 001EC6B8 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 801EF75C 001EC6BC 38 61 00 0C */ addi r3, r1, 0xc +/* 801EF760 001EC6C0 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 801EF764 001EC6C4 38 80 05 8D */ li r4, 0x58d +/* 801EF768 001EC6C8 38 A0 00 7F */ li r5, 0x7f +/* 801EF76C 001EC6CC 38 C0 00 40 */ li r6, 0x40 +/* 801EF770 001EC6D0 38 E0 00 00 */ li r7, 0 +/* 801EF774 001EC6D4 39 20 00 00 */ li r9, 0 +/* 801EF778 001EC6D8 48 0F A5 FD */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 801EF77C 001EC6DC C0 02 AE 54 */ lfs f0, lbl_805ACB74@sda21(r2) +/* 801EF780 001EC6E0 D0 1E 00 74 */ stfs f0, 0x74(r30) +lbl_801EF784: +/* 801EF784 001EC6E4 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 801EF788 001EC6E8 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801EF78C 001EC6EC CB E1 00 30 */ lfd f31, 0x30(r1) +/* 801EF790 001EC6F0 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801EF794 001EC6F4 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801EF798 001EC6F8 7C 08 03 A6 */ mtlr r0 +/* 801EF79C 001EC6FC 38 21 00 40 */ addi r1, r1, 0x40 +/* 801EF7A0 001EC700 4E 80 00 20 */ blr + +.global Update__14CMessageScreenFf +Update__14CMessageScreenFf: +/* 801EF7A4 001EC704 94 21 FE 60 */ stwu r1, -0x1a0(r1) +/* 801EF7A8 001EC708 7C 08 02 A6 */ mflr r0 +/* 801EF7AC 001EC70C 90 01 01 A4 */ stw r0, 0x1a4(r1) +/* 801EF7B0 001EC710 DB E1 01 90 */ stfd f31, 0x190(r1) +/* 801EF7B4 001EC714 F3 E1 01 98 */ psq_st f31, 408(r1), 0, qr0 +/* 801EF7B8 001EC718 DB C1 01 80 */ stfd f30, 0x180(r1) +/* 801EF7BC 001EC71C F3 C1 01 88 */ psq_st f30, 392(r1), 0, qr0 +/* 801EF7C0 001EC720 DB A1 01 70 */ stfd f29, 0x170(r1) +/* 801EF7C4 001EC724 F3 A1 01 78 */ psq_st f29, 376(r1), 0, qr0 +/* 801EF7C8 001EC728 DB 81 01 60 */ stfd f28, 0x160(r1) +/* 801EF7CC 001EC72C F3 81 01 68 */ psq_st f28, 360(r1), 0, qr0 +/* 801EF7D0 001EC730 DB 61 01 50 */ stfd f27, 0x150(r1) +/* 801EF7D4 001EC734 F3 61 01 58 */ psq_st f27, 344(r1), 0, qr0 +/* 801EF7D8 001EC738 DB 41 01 40 */ stfd f26, 0x140(r1) +/* 801EF7DC 001EC73C F3 41 01 48 */ psq_st f26, 328(r1), 0, qr0 +/* 801EF7E0 001EC740 93 E1 01 3C */ stw r31, 0x13c(r1) +/* 801EF7E4 001EC744 93 C1 01 38 */ stw r30, 0x138(r1) +/* 801EF7E8 001EC748 7C 7F 1B 78 */ mr r31, r3 +/* 801EF7EC 001EC74C FF 40 08 90 */ fmr f26, f1 +/* 801EF7F0 001EC750 D0 43 00 70 */ stfs f2, 0x70(r3) +/* 801EF7F4 001EC754 80 03 00 18 */ lwz r0, 0x18(r3) +/* 801EF7F8 001EC758 28 00 00 00 */ cmplwi r0, 0 +/* 801EF7FC 001EC75C 40 82 03 5C */ bne lbl_801EFB58 +/* 801EF800 001EC760 80 1F 00 14 */ lwz r0, 0x14(r31) +/* 801EF804 001EC764 28 00 00 00 */ cmplwi r0, 0 +/* 801EF808 001EC768 41 82 00 0C */ beq lbl_801EF814 +/* 801EF80C 001EC76C 38 60 00 01 */ li r3, 1 +/* 801EF810 001EC770 48 00 00 3C */ b lbl_801EF84C +lbl_801EF814: +/* 801EF814 001EC774 88 1F 00 10 */ lbz r0, 0x10(r31) +/* 801EF818 001EC778 28 00 00 00 */ cmplwi r0, 0 +/* 801EF81C 001EC77C 41 82 00 2C */ beq lbl_801EF848 +/* 801EF820 001EC780 80 7F 00 0C */ lwz r3, 0xc(r31) +/* 801EF824 001EC784 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801EF828 001EC788 28 00 00 00 */ cmplwi r0, 0 +/* 801EF82C 001EC78C 41 82 00 1C */ beq lbl_801EF848 +/* 801EF830 001EC790 38 7F 00 0C */ addi r3, r31, 0xc +/* 801EF834 001EC794 48 15 15 D9 */ bl GetObj__6CTokenFv +/* 801EF838 001EC798 80 03 00 04 */ lwz r0, 4(r3) +/* 801EF83C 001EC79C 38 60 00 01 */ li r3, 1 +/* 801EF840 001EC7A0 90 1F 00 14 */ stw r0, 0x14(r31) +/* 801EF844 001EC7A4 48 00 00 08 */ b lbl_801EF84C +lbl_801EF848: +/* 801EF848 001EC7A8 38 60 00 00 */ li r3, 0 +lbl_801EF84C: +/* 801EF84C 001EC7AC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801EF850 001EC7B0 41 82 00 50 */ beq lbl_801EF8A0 +/* 801EF854 001EC7B4 80 1F 00 08 */ lwz r0, 8(r31) +/* 801EF858 001EC7B8 28 00 00 00 */ cmplwi r0, 0 +/* 801EF85C 001EC7BC 41 82 00 0C */ beq lbl_801EF868 +/* 801EF860 001EC7C0 38 60 00 01 */ li r3, 1 +/* 801EF864 001EC7C4 48 00 00 3C */ b lbl_801EF8A0 +lbl_801EF868: +/* 801EF868 001EC7C8 88 1F 00 04 */ lbz r0, 4(r31) +/* 801EF86C 001EC7CC 28 00 00 00 */ cmplwi r0, 0 +/* 801EF870 001EC7D0 41 82 00 2C */ beq lbl_801EF89C +/* 801EF874 001EC7D4 80 7F 00 00 */ lwz r3, 0(r31) +/* 801EF878 001EC7D8 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801EF87C 001EC7DC 28 00 00 00 */ cmplwi r0, 0 +/* 801EF880 001EC7E0 41 82 00 1C */ beq lbl_801EF89C +/* 801EF884 001EC7E4 7F E3 FB 78 */ mr r3, r31 +/* 801EF888 001EC7E8 48 15 15 85 */ bl GetObj__6CTokenFv +/* 801EF88C 001EC7EC 80 03 00 04 */ lwz r0, 4(r3) +/* 801EF890 001EC7F0 38 60 00 01 */ li r3, 1 +/* 801EF894 001EC7F4 90 1F 00 08 */ stw r0, 8(r31) +/* 801EF898 001EC7F8 48 00 00 08 */ b lbl_801EF8A0 +lbl_801EF89C: +/* 801EF89C 001EC7FC 38 60 00 00 */ li r3, 0 +lbl_801EF8A0: +/* 801EF8A0 001EC800 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801EF8A4 001EC804 41 82 02 B4 */ beq lbl_801EFB58 +/* 801EF8A8 001EC808 80 1F 00 14 */ lwz r0, 0x14(r31) +/* 801EF8AC 001EC80C 3C 60 80 3D */ lis r3, lbl_803D1F48@ha +/* 801EF8B0 001EC810 38 83 1F 48 */ addi r4, r3, lbl_803D1F48@l +/* 801EF8B4 001EC814 90 1F 00 18 */ stw r0, 0x18(r31) +/* 801EF8B8 001EC818 80 7F 00 18 */ lwz r3, 0x18(r31) +/* 801EF8BC 001EC81C 48 0D 28 99 */ bl FindWidget__9CGuiFrameCFPCc +/* 801EF8C0 001EC820 90 7F 00 1C */ stw r3, 0x1c(r31) +/* 801EF8C4 001EC824 3C 60 80 3D */ lis r3, lbl_803D1F48@ha +/* 801EF8C8 001EC828 38 83 1F 48 */ addi r4, r3, lbl_803D1F48@l +/* 801EF8CC 001EC82C 80 7F 00 18 */ lwz r3, 0x18(r31) +/* 801EF8D0 001EC830 38 84 00 11 */ addi r4, r4, 0x11 +/* 801EF8D4 001EC834 48 0D 28 81 */ bl FindWidget__9CGuiFrameCFPCc +/* 801EF8D8 001EC838 90 7F 00 20 */ stw r3, 0x20(r31) +/* 801EF8DC 001EC83C 3C 60 80 3D */ lis r3, lbl_803D1F48@ha +/* 801EF8E0 001EC840 38 83 1F 48 */ addi r4, r3, lbl_803D1F48@l +/* 801EF8E4 001EC844 80 7F 00 18 */ lwz r3, 0x18(r31) +/* 801EF8E8 001EC848 38 84 00 20 */ addi r4, r4, 0x20 +/* 801EF8EC 001EC84C 48 0D 28 69 */ bl FindWidget__9CGuiFrameCFPCc +/* 801EF8F0 001EC850 90 7F 00 24 */ stw r3, 0x24(r31) +/* 801EF8F4 001EC854 3C 60 80 3D */ lis r3, lbl_803D1F48@ha +/* 801EF8F8 001EC858 38 83 1F 48 */ addi r4, r3, lbl_803D1F48@l +/* 801EF8FC 001EC85C 80 7F 00 18 */ lwz r3, 0x18(r31) +/* 801EF900 001EC860 38 84 00 32 */ addi r4, r4, 0x32 +/* 801EF904 001EC864 48 0D 28 51 */ bl FindWidget__9CGuiFrameCFPCc +/* 801EF908 001EC868 90 7F 00 28 */ stw r3, 0x28(r31) +/* 801EF90C 001EC86C 3C 60 80 3D */ lis r3, lbl_803D1F48@ha +/* 801EF910 001EC870 38 83 1F 48 */ addi r4, r3, lbl_803D1F48@l +/* 801EF914 001EC874 80 7F 00 18 */ lwz r3, 0x18(r31) +/* 801EF918 001EC878 38 84 00 44 */ addi r4, r4, 0x44 +/* 801EF91C 001EC87C 48 0D 28 39 */ bl FindWidget__9CGuiFrameCFPCc +/* 801EF920 001EC880 90 7F 00 2C */ stw r3, 0x2c(r31) +/* 801EF924 001EC884 3C 60 80 3D */ lis r3, lbl_803D1F48@ha +/* 801EF928 001EC888 38 83 1F 48 */ addi r4, r3, lbl_803D1F48@l +/* 801EF92C 001EC88C 80 7F 00 18 */ lwz r3, 0x18(r31) +/* 801EF930 001EC890 38 84 00 52 */ addi r4, r4, 0x52 +/* 801EF934 001EC894 48 0D 28 21 */ bl FindWidget__9CGuiFrameCFPCc +/* 801EF938 001EC898 90 7F 00 30 */ stw r3, 0x30(r31) +/* 801EF93C 001EC89C 3C 60 80 3D */ lis r3, lbl_803D1F48@ha +/* 801EF940 001EC8A0 38 83 1F 48 */ addi r4, r3, lbl_803D1F48@l +/* 801EF944 001EC8A4 80 7F 00 18 */ lwz r3, 0x18(r31) +/* 801EF948 001EC8A8 38 84 00 5C */ addi r4, r4, 0x5c +/* 801EF94C 001EC8AC 48 0D 28 09 */ bl FindWidget__9CGuiFrameCFPCc +/* 801EF950 001EC8B0 90 7F 00 38 */ stw r3, 0x38(r31) +/* 801EF954 001EC8B4 3C 60 80 3D */ lis r3, lbl_803D1F48@ha +/* 801EF958 001EC8B8 38 83 1F 48 */ addi r4, r3, lbl_803D1F48@l +/* 801EF95C 001EC8BC 80 7F 00 18 */ lwz r3, 0x18(r31) +/* 801EF960 001EC8C0 38 84 00 69 */ addi r4, r4, 0x69 +/* 801EF964 001EC8C4 48 0D 27 F1 */ bl FindWidget__9CGuiFrameCFPCc +/* 801EF968 001EC8C8 90 7F 00 34 */ stw r3, 0x34(r31) +/* 801EF96C 001EC8CC 3C 60 80 3D */ lis r3, lbl_803D1F48@ha +/* 801EF970 001EC8D0 38 83 1F 48 */ addi r4, r3, lbl_803D1F48@l +/* 801EF974 001EC8D4 80 7F 00 18 */ lwz r3, 0x18(r31) +/* 801EF978 001EC8D8 38 84 00 76 */ addi r4, r4, 0x76 +/* 801EF97C 001EC8DC 48 0D 27 D9 */ bl FindWidget__9CGuiFrameCFPCc +/* 801EF980 001EC8E0 90 7F 00 3C */ stw r3, 0x3c(r31) +/* 801EF984 001EC8E4 3C 60 80 3D */ lis r3, lbl_803D1F48@ha +/* 801EF988 001EC8E8 38 83 1F 48 */ addi r4, r3, lbl_803D1F48@l +/* 801EF98C 001EC8EC 80 7F 00 18 */ lwz r3, 0x18(r31) +/* 801EF990 001EC8F0 38 84 00 7F */ addi r4, r4, 0x7f +/* 801EF994 001EC8F4 48 0D 27 C1 */ bl FindWidget__9CGuiFrameCFPCc +/* 801EF998 001EC8F8 90 7F 00 40 */ stw r3, 0x40(r31) +/* 801EF99C 001EC8FC 38 61 00 60 */ addi r3, r1, 0x60 +/* 801EF9A0 001EC900 80 9F 00 20 */ lwz r4, 0x20(r31) +/* 801EF9A4 001EC904 48 0D 58 79 */ bl GetLocalPosition__10CGuiObjectCFv +/* 801EF9A8 001EC908 C0 01 00 60 */ lfs f0, 0x60(r1) +/* 801EF9AC 001EC90C 38 61 00 54 */ addi r3, r1, 0x54 +/* 801EF9B0 001EC910 D0 1F 00 44 */ stfs f0, 0x44(r31) +/* 801EF9B4 001EC914 C0 01 00 64 */ lfs f0, 0x64(r1) +/* 801EF9B8 001EC918 D0 1F 00 48 */ stfs f0, 0x48(r31) +/* 801EF9BC 001EC91C C0 01 00 68 */ lfs f0, 0x68(r1) +/* 801EF9C0 001EC920 D0 1F 00 4C */ stfs f0, 0x4c(r31) +/* 801EF9C4 001EC924 80 9F 00 28 */ lwz r4, 0x28(r31) +/* 801EF9C8 001EC928 48 0D 58 55 */ bl GetLocalPosition__10CGuiObjectCFv +/* 801EF9CC 001EC92C C0 01 00 54 */ lfs f0, 0x54(r1) +/* 801EF9D0 001EC930 38 61 00 48 */ addi r3, r1, 0x48 +/* 801EF9D4 001EC934 D0 1F 00 50 */ stfs f0, 0x50(r31) +/* 801EF9D8 001EC938 C0 01 00 58 */ lfs f0, 0x58(r1) +/* 801EF9DC 001EC93C D0 1F 00 54 */ stfs f0, 0x54(r31) +/* 801EF9E0 001EC940 C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 801EF9E4 001EC944 D0 1F 00 58 */ stfs f0, 0x58(r31) +/* 801EF9E8 001EC948 80 9F 00 40 */ lwz r4, 0x40(r31) +/* 801EF9EC 001EC94C 48 0D 58 31 */ bl GetLocalPosition__10CGuiObjectCFv +/* 801EF9F0 001EC950 C0 01 00 48 */ lfs f0, 0x48(r1) +/* 801EF9F4 001EC954 3C 60 80 3D */ lis r3, lbl_803D1F48@ha +/* 801EF9F8 001EC958 38 63 1F 48 */ addi r3, r3, lbl_803D1F48@l +/* 801EF9FC 001EC95C D0 1F 00 5C */ stfs f0, 0x5c(r31) +/* 801EFA00 001EC960 38 83 00 11 */ addi r4, r3, 0x11 +/* 801EFA04 001EC964 C0 01 00 4C */ lfs f0, 0x4c(r1) +/* 801EFA08 001EC968 D0 1F 00 60 */ stfs f0, 0x60(r31) +/* 801EFA0C 001EC96C C0 01 00 50 */ lfs f0, 0x50(r1) +/* 801EFA10 001EC970 D0 1F 00 64 */ stfs f0, 0x64(r31) +/* 801EFA14 001EC974 80 7F 00 18 */ lwz r3, 0x18(r31) +/* 801EFA18 001EC978 48 0D 27 3D */ bl FindWidget__9CGuiFrameCFPCc +/* 801EFA1C 001EC97C 28 03 00 00 */ cmplwi r3, 0 +/* 801EFA20 001EC980 41 82 00 10 */ beq lbl_801EFA30 +/* 801EFA24 001EC984 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 801EFA28 001EC988 38 84 00 1C */ addi r4, r4, 0x1c +/* 801EFA2C 001EC98C 48 0D AE 41 */ bl SetColor__10CGuiWidgetFRC6CColor +lbl_801EFA30: +/* 801EFA30 001EC990 3C 80 80 3D */ lis r4, lbl_803D1F48@ha +/* 801EFA34 001EC994 80 7F 00 18 */ lwz r3, 0x18(r31) +/* 801EFA38 001EC998 38 84 1F 48 */ addi r4, r4, lbl_803D1F48@l +/* 801EFA3C 001EC99C 38 84 00 8F */ addi r4, r4, 0x8f +/* 801EFA40 001EC9A0 48 0D 27 15 */ bl FindWidget__9CGuiFrameCFPCc +/* 801EFA44 001EC9A4 28 03 00 00 */ cmplwi r3, 0 +/* 801EFA48 001EC9A8 41 82 00 10 */ beq lbl_801EFA58 +/* 801EFA4C 001EC9AC 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 801EFA50 001EC9B0 38 84 00 1C */ addi r4, r4, 0x1c +/* 801EFA54 001EC9B4 48 0D AE 19 */ bl SetColor__10CGuiWidgetFRC6CColor +lbl_801EFA58: +/* 801EFA58 001EC9B8 3C 80 80 3D */ lis r4, lbl_803D1F48@ha +/* 801EFA5C 001EC9BC 80 7F 00 18 */ lwz r3, 0x18(r31) +/* 801EFA60 001EC9C0 38 84 1F 48 */ addi r4, r4, lbl_803D1F48@l +/* 801EFA64 001EC9C4 38 84 00 5C */ addi r4, r4, 0x5c +/* 801EFA68 001EC9C8 48 0D 26 ED */ bl FindWidget__9CGuiFrameCFPCc +/* 801EFA6C 001EC9CC 28 03 00 00 */ cmplwi r3, 0 +/* 801EFA70 001EC9D0 41 82 00 10 */ beq lbl_801EFA80 +/* 801EFA74 001EC9D4 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 801EFA78 001EC9D8 38 84 00 1C */ addi r4, r4, 0x1c +/* 801EFA7C 001EC9DC 48 0D AD F1 */ bl SetColor__10CGuiWidgetFRC6CColor +lbl_801EFA80: +/* 801EFA80 001EC9E0 80 7F 00 40 */ lwz r3, 0x40(r31) +/* 801EFA84 001EC9E4 38 80 00 01 */ li r4, 1 +/* 801EFA88 001EC9E8 88 03 00 B6 */ lbz r0, 0xb6(r3) +/* 801EFA8C 001EC9EC 50 80 0F BC */ rlwimi r0, r4, 1, 0x1e, 0x1e +/* 801EFA90 001EC9F0 98 03 00 B6 */ stb r0, 0xb6(r3) +/* 801EFA94 001EC9F4 80 7F 00 30 */ lwz r3, 0x30(r31) +/* 801EFA98 001EC9F8 88 03 00 B7 */ lbz r0, 0xb7(r3) +/* 801EFA9C 001EC9FC 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801EFAA0 001ECA00 98 03 00 B7 */ stb r0, 0xb7(r3) +/* 801EFAA4 001ECA04 80 7F 00 38 */ lwz r3, 0x38(r31) +/* 801EFAA8 001ECA08 88 03 00 B7 */ lbz r0, 0xb7(r3) +/* 801EFAAC 001ECA0C 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801EFAB0 001ECA10 98 03 00 B7 */ stb r0, 0xb7(r3) +/* 801EFAB4 001ECA14 80 7F 00 34 */ lwz r3, 0x34(r31) +/* 801EFAB8 001ECA18 88 03 00 B7 */ lbz r0, 0xb7(r3) +/* 801EFABC 001ECA1C 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801EFAC0 001ECA20 98 03 00 B7 */ stb r0, 0xb7(r3) +/* 801EFAC4 001ECA24 80 7F 00 3C */ lwz r3, 0x3c(r31) +/* 801EFAC8 001ECA28 88 03 00 B7 */ lbz r0, 0xb7(r3) +/* 801EFACC 001ECA2C 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801EFAD0 001ECA30 98 03 00 B7 */ stb r0, 0xb7(r3) +/* 801EFAD4 001ECA34 80 7F 00 08 */ lwz r3, 8(r31) +/* 801EFAD8 001ECA38 80 03 00 00 */ lwz r0, 0(r3) +/* 801EFADC 001ECA3C 2C 00 00 00 */ cmpwi r0, 0 +/* 801EFAE0 001ECA40 40 81 00 78 */ ble lbl_801EFB58 +/* 801EFAE4 001ECA44 80 7F 00 1C */ lwz r3, 0x1c(r31) +/* 801EFAE8 001ECA48 38 80 00 00 */ li r4, 0 +/* 801EFAEC 001ECA4C C0 22 AE 4C */ lfs f1, lbl_805ACB6C@sda21(r2) +/* 801EFAF0 001ECA50 3B C3 00 D4 */ addi r30, r3, 0xd4 +/* 801EFAF4 001ECA54 C0 42 AE 50 */ lfs f2, lbl_805ACB70@sda21(r2) +/* 801EFAF8 001ECA58 7F C3 F3 78 */ mr r3, r30 +/* 801EFAFC 001ECA5C 48 0D 86 1D */ bl SetTypeWriteEffectOptions__15CGuiTextSupportFbff +/* 801EFB00 001ECA60 80 7F 00 08 */ lwz r3, 8(r31) +/* 801EFB04 001ECA64 38 80 00 00 */ li r4, 0 +/* 801EFB08 001ECA68 48 16 6B F5 */ bl GetString__12CStringTableCFi +/* 801EFB0C 001ECA6C 7C 64 1B 78 */ mr r4, r3 +/* 801EFB10 001ECA70 38 61 00 38 */ addi r3, r1, 0x38 +/* 801EFB14 001ECA74 38 C1 00 0C */ addi r6, r1, 0xc +/* 801EFB18 001ECA78 38 A0 FF FF */ li r5, -1 +/* 801EFB1C 001ECA7C 48 14 DC A1 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCwiRCQ24rstl17rmemory_allocator" +/* 801EFB20 001ECA80 7F C3 F3 78 */ mr r3, r30 +/* 801EFB24 001ECA84 38 81 00 38 */ addi r4, r1, 0x38 +/* 801EFB28 001ECA88 38 A0 00 00 */ li r5, 0 +/* 801EFB2C 001ECA8C 48 0D 9D 59 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801EFB30 001ECA90 38 61 00 38 */ addi r3, r1, 0x38 +/* 801EFB34 001ECA94 48 14 D6 01 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801EFB38 001ECA98 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 801EFB3C 001ECA9C 7F C3 F3 78 */ mr r3, r30 +/* 801EFB40 001ECAA0 38 84 00 14 */ addi r4, r4, 0x14 +/* 801EFB44 001ECAA4 48 0D 9B 25 */ bl SetFontColor__15CGuiTextSupportFRC6CColor +/* 801EFB48 001ECAA8 80 8D A0 80 */ lwz r4, gpGameState@sda21(r13) +/* 801EFB4C 001ECAAC 7F C3 F3 78 */ mr r3, r30 +/* 801EFB50 001ECAB0 38 84 01 E8 */ addi r4, r4, 0x1e8 +/* 801EFB54 001ECAB4 48 0D 9A 89 */ bl "SetScanStates__15CGuiTextSupportFPCQ24rstl20vector<10SScanState>" +lbl_801EFB58: +/* 801EFB58 001ECAB8 80 1F 00 18 */ lwz r0, 0x18(r31) +/* 801EFB5C 001ECABC 28 00 00 00 */ cmplwi r0, 0 +/* 801EFB60 001ECAC0 41 82 03 48 */ beq lbl_801EFEA8 +/* 801EFB64 001ECAC4 C0 3F 00 74 */ lfs f1, 0x74(r31) +/* 801EFB68 001ECAC8 C0 02 AE 48 */ lfs f0, lbl_805ACB68@sda21(r2) +/* 801EFB6C 001ECACC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801EFB70 001ECAD0 40 81 00 0C */ ble lbl_801EFB7C +/* 801EFB74 001ECAD4 EC 01 D0 28 */ fsubs f0, f1, f26 +/* 801EFB78 001ECAD8 D0 1F 00 74 */ stfs f0, 0x74(r31) +lbl_801EFB7C: +/* 801EFB7C 001ECADC C0 3F 00 70 */ lfs f1, 0x70(r31) +/* 801EFB80 001ECAE0 C0 42 AE 58 */ lfs f2, lbl_805ACB78@sda21(r2) +/* 801EFB84 001ECAE4 C0 0D 92 70 */ lfs f0, lbl_805A7E30@sda21(r13) +/* 801EFB88 001ECAE8 EC 21 10 28 */ fsubs f1, f1, f2 +/* 801EFB8C 001ECAEC EC 21 10 24 */ fdivs f1, f1, f2 +/* 801EFB90 001ECAF0 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801EFB94 001ECAF4 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 801EFB98 001ECAF8 40 80 00 0C */ bge lbl_801EFBA4 +/* 801EFB9C 001ECAFC 38 61 00 28 */ addi r3, r1, 0x28 +/* 801EFBA0 001ECB00 48 00 00 08 */ b lbl_801EFBA8 +lbl_801EFBA4: +/* 801EFBA4 001ECB04 38 6D 92 70 */ addi r3, r13, lbl_805A7E30@sda21 +lbl_801EFBA8: +/* 801EFBA8 001ECB08 C3 63 00 00 */ lfs f27, 0(r3) +/* 801EFBAC 001ECB0C C0 22 AE 5C */ lfs f1, lbl_805ACB7C@sda21(r2) +/* 801EFBB0 001ECB10 FC 1B 08 40 */ fcmpo cr0, f27, f1 +/* 801EFBB4 001ECB14 40 80 00 0C */ bge lbl_801EFBC0 +/* 801EFBB8 001ECB18 EC 3B 08 24 */ fdivs f1, f27, f1 +/* 801EFBBC 001ECB1C 48 00 00 54 */ b lbl_801EFC10 +lbl_801EFBC0: +/* 801EFBC0 001ECB20 C0 02 AE 60 */ lfs f0, lbl_805ACB80@sda21(r2) +/* 801EFBC4 001ECB24 FC 1B 00 40 */ fcmpo cr0, f27, f0 +/* 801EFBC8 001ECB28 40 80 00 28 */ bge lbl_801EFBF0 +/* 801EFBCC 001ECB2C EC 3B 08 28 */ fsubs f1, f27, f1 +/* 801EFBD0 001ECB30 C0 02 AE 70 */ lfs f0, lbl_805ACB90@sda21(r2) +/* 801EFBD4 001ECB34 C0 42 AE 6C */ lfs f2, lbl_805ACB8C@sda21(r2) +/* 801EFBD8 001ECB38 C0 62 AE 68 */ lfs f3, lbl_805ACB88@sda21(r2) +/* 801EFBDC 001ECB3C EC 21 00 24 */ fdivs f1, f1, f0 +/* 801EFBE0 001ECB40 C0 02 AE 64 */ lfs f0, lbl_805ACB84@sda21(r2) +/* 801EFBE4 001ECB44 EC 22 08 28 */ fsubs f1, f2, f1 +/* 801EFBE8 001ECB48 EC 23 00 7A */ fmadds f1, f3, f1, f0 +/* 801EFBEC 001ECB4C 48 00 00 24 */ b lbl_801EFC10 +lbl_801EFBF0: +/* 801EFBF0 001ECB50 EC 5B 08 28 */ fsubs f2, f27, f1 +/* 801EFBF4 001ECB54 C0 02 AE 70 */ lfs f0, lbl_805ACB90@sda21(r2) +/* 801EFBF8 001ECB58 C0 22 AE 74 */ lfs f1, lbl_805ACB94@sda21(r2) +/* 801EFBFC 001ECB5C C0 62 AE 68 */ lfs f3, lbl_805ACB88@sda21(r2) +/* 801EFC00 001ECB60 EC 42 00 28 */ fsubs f2, f2, f0 +/* 801EFC04 001ECB64 C0 02 AE 64 */ lfs f0, lbl_805ACB84@sda21(r2) +/* 801EFC08 001ECB68 EC 22 08 24 */ fdivs f1, f2, f1 +/* 801EFC0C 001ECB6C EC 23 00 7A */ fmadds f1, f3, f1, f0 +lbl_801EFC10: +/* 801EFC10 001ECB70 C0 42 AE 6C */ lfs f2, lbl_805ACB8C@sda21(r2) +/* 801EFC14 001ECB74 38 61 00 FC */ addi r3, r1, 0xfc +/* 801EFC18 001ECB78 FC 60 10 90 */ fmr f3, f2 +/* 801EFC1C 001ECB7C 48 12 35 ED */ bl Scale__12CTransform4fFfff +/* 801EFC20 001ECB80 83 DF 00 24 */ lwz r30, 0x24(r31) +/* 801EFC24 001ECB84 38 81 00 FC */ addi r4, r1, 0xfc +/* 801EFC28 001ECB88 38 7E 00 04 */ addi r3, r30, 4 +/* 801EFC2C 001ECB8C 48 12 2F 15 */ bl __as__12CTransform4fFRC12CTransform4f +/* 801EFC30 001ECB90 7F C3 F3 78 */ mr r3, r30 +/* 801EFC34 001ECB94 48 0D 4B B5 */ bl RecalculateTransforms__10CGuiObjectFv +/* 801EFC38 001ECB98 C0 02 AE 6C */ lfs f0, lbl_805ACB8C@sda21(r2) +/* 801EFC3C 001ECB9C 38 61 00 CC */ addi r3, r1, 0xcc +/* 801EFC40 001ECBA0 C0 22 AE 48 */ lfs f1, lbl_805ACB68@sda21(r2) +/* 801EFC44 001ECBA4 EF 60 D8 28 */ fsubs f27, f0, f27 +/* 801EFC48 001ECBA8 C0 02 AE 78 */ lfs f0, lbl_805ACB98@sda21(r2) +/* 801EFC4C 001ECBAC FC 40 08 90 */ fmr f2, f1 +/* 801EFC50 001ECBB0 EC 60 06 F2 */ fmuls f3, f0, f27 +/* 801EFC54 001ECBB4 48 12 35 35 */ bl Translate__12CTransform4fFfff +/* 801EFC58 001ECBB8 83 DF 00 20 */ lwz r30, 0x20(r31) +/* 801EFC5C 001ECBBC 38 81 00 CC */ addi r4, r1, 0xcc +/* 801EFC60 001ECBC0 38 7E 00 04 */ addi r3, r30, 4 +/* 801EFC64 001ECBC4 48 12 2E DD */ bl __as__12CTransform4fFRC12CTransform4f +/* 801EFC68 001ECBC8 7F C3 F3 78 */ mr r3, r30 +/* 801EFC6C 001ECBCC 48 0D 4B 7D */ bl RecalculateTransforms__10CGuiObjectFv +/* 801EFC70 001ECBD0 C0 22 AE 48 */ lfs f1, lbl_805ACB68@sda21(r2) +/* 801EFC74 001ECBD4 38 61 00 9C */ addi r3, r1, 0x9c +/* 801EFC78 001ECBD8 C0 02 AE 7C */ lfs f0, lbl_805ACB9C@sda21(r2) +/* 801EFC7C 001ECBDC FC 40 08 90 */ fmr f2, f1 +/* 801EFC80 001ECBE0 EC 60 06 F2 */ fmuls f3, f0, f27 +/* 801EFC84 001ECBE4 48 12 35 05 */ bl Translate__12CTransform4fFfff +/* 801EFC88 001ECBE8 83 DF 00 28 */ lwz r30, 0x28(r31) +/* 801EFC8C 001ECBEC 38 81 00 9C */ addi r4, r1, 0x9c +/* 801EFC90 001ECBF0 38 7E 00 04 */ addi r3, r30, 4 +/* 801EFC94 001ECBF4 48 12 2E AD */ bl __as__12CTransform4fFRC12CTransform4f +/* 801EFC98 001ECBF8 7F C3 F3 78 */ mr r3, r30 +/* 801EFC9C 001ECBFC 48 0D 4B 4D */ bl RecalculateTransforms__10CGuiObjectFv +/* 801EFCA0 001ECC00 C0 5F 00 70 */ lfs f2, 0x70(r31) +/* 801EFCA4 001ECC04 C0 02 AE 5C */ lfs f0, lbl_805ACB7C@sda21(r2) +/* 801EFCA8 001ECC08 C0 22 AE 74 */ lfs f1, lbl_805ACB94@sda21(r2) +/* 801EFCAC 001ECC0C EC 42 00 28 */ fsubs f2, f2, f0 +/* 801EFCB0 001ECC10 C0 0D 92 74 */ lfs f0, lbl_805A7E34@sda21(r13) +/* 801EFCB4 001ECC14 EC 22 08 24 */ fdivs f1, f2, f1 +/* 801EFCB8 001ECC18 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801EFCBC 001ECC1C D0 21 00 24 */ stfs f1, 0x24(r1) +/* 801EFCC0 001ECC20 40 80 00 0C */ bge lbl_801EFCCC +/* 801EFCC4 001ECC24 38 81 00 24 */ addi r4, r1, 0x24 +/* 801EFCC8 001ECC28 48 00 00 08 */ b lbl_801EFCD0 +lbl_801EFCCC: +/* 801EFCCC 001ECC2C 38 8D 92 74 */ addi r4, r13, lbl_805A7E34@sda21 +lbl_801EFCD0: +/* 801EFCD0 001ECC30 80 6D A1 3C */ lwz r3, gpTweakGuiColors@sda21(r13) +/* 801EFCD4 001ECC34 3C 00 43 30 */ lis r0, 0x4330 +/* 801EFCD8 001ECC38 90 01 01 30 */ stw r0, 0x130(r1) +/* 801EFCDC 001ECC3C 88 03 00 1F */ lbz r0, 0x1f(r3) +/* 801EFCE0 001ECC40 C8 22 AE A0 */ lfd f1, lbl_805ACBC0@sda21(r2) +/* 801EFCE4 001ECC44 90 01 01 34 */ stw r0, 0x134(r1) +/* 801EFCE8 001ECC48 C3 64 00 00 */ lfs f27, 0(r4) +/* 801EFCEC 001ECC4C C8 01 01 30 */ lfd f0, 0x130(r1) +/* 801EFCF0 001ECC50 EC 00 08 28 */ fsubs f0, f0, f1 +/* 801EFCF4 001ECC54 EF FB 00 32 */ fmuls f31, f27, f0 +/* 801EFCF8 001ECC58 F3 E1 A0 0B */ psq_st f31, 11(r1), 1, qr2 +/* 801EFCFC 001ECC5C 38 81 00 20 */ addi r4, r1, 0x20 +/* 801EFD00 001ECC60 80 63 00 1C */ lwz r3, 0x1c(r3) +/* 801EFD04 001ECC64 88 01 00 0B */ lbz r0, 0xb(r1) +/* 801EFD08 001ECC68 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 801EFD0C 001ECC6C 90 01 00 20 */ stw r0, 0x20(r1) +/* 801EFD10 001ECC70 80 7F 00 20 */ lwz r3, 0x20(r31) +/* 801EFD14 001ECC74 48 0D AB 59 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 801EFD18 001ECC78 48 15 A2 95 */ bl White__6CColorFv +/* 801EFD1C 001ECC7C C0 02 AE 80 */ lfs f0, lbl_805ACBA0@sda21(r2) +/* 801EFD20 001ECC80 EF C0 06 F2 */ fmuls f30, f0, f27 +/* 801EFD24 001ECC84 F3 C1 A0 0A */ psq_st f30, 10(r1), 1, qr2 +/* 801EFD28 001ECC88 38 81 00 1C */ addi r4, r1, 0x1c +/* 801EFD2C 001ECC8C 80 63 00 00 */ lwz r3, 0(r3) +/* 801EFD30 001ECC90 88 01 00 0A */ lbz r0, 0xa(r1) +/* 801EFD34 001ECC94 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 801EFD38 001ECC98 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801EFD3C 001ECC9C 80 7F 00 28 */ lwz r3, 0x28(r31) +/* 801EFD40 001ECCA0 48 0D AB 2D */ bl SetColor__10CGuiWidgetFRC6CColor +/* 801EFD44 001ECCA4 C0 1F 00 74 */ lfs f0, 0x74(r31) +/* 801EFD48 001ECCA8 C3 62 AE 48 */ lfs f27, lbl_805ACB68@sda21(r2) +/* 801EFD4C 001ECCAC FC 00 D8 40 */ fcmpo cr0, f0, f27 +/* 801EFD50 001ECCB0 4C 40 13 82 */ cror 2, 0, 2 +/* 801EFD54 001ECCB4 40 82 00 40 */ bne lbl_801EFD94 +/* 801EFD58 001ECCB8 48 11 A1 89 */ bl GetSecondsMod900__9CGraphicsFv +/* 801EFD5C 001ECCBC C0 42 AE 84 */ lfs f2, lbl_805ACBA4@sda21(r2) +/* 801EFD60 001ECCC0 C0 02 AE 88 */ lfs f0, lbl_805ACBA8@sda21(r2) +/* 801EFD64 001ECCC4 EC 22 00 78 */ fmsubs f1, f2, f1, f0 +/* 801EFD68 001ECCC8 48 12 50 89 */ bl FastSinR__5CMathFf +/* 801EFD6C 001ECCCC C0 42 AE 6C */ lfs f2, lbl_805ACB8C@sda21(r2) +/* 801EFD70 001ECCD0 38 81 00 18 */ addi r4, r1, 0x18 +/* 801EFD74 001ECCD4 C0 02 AE 58 */ lfs f0, lbl_805ACB78@sda21(r2) +/* 801EFD78 001ECCD8 38 6D 92 78 */ addi r3, r13, lbl_805A7E38@sda21 +/* 801EFD7C 001ECCDC EC 22 08 2A */ fadds f1, f2, f1 +/* 801EFD80 001ECCE0 38 AD 92 7C */ addi r5, r13, lbl_805A7E3C@sda21 +/* 801EFD84 001ECCE4 EC 00 00 72 */ fmuls f0, f0, f1 +/* 801EFD88 001ECCE8 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801EFD8C 001ECCEC 4B E1 C5 29 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 801EFD90 001ECCF0 C3 63 00 00 */ lfs f27, 0(r3) +lbl_801EFD94: +/* 801EFD94 001ECCF4 48 15 A2 19 */ bl White__6CColorFv +/* 801EFD98 001ECCF8 C0 02 AE 80 */ lfs f0, lbl_805ACBA0@sda21(r2) +/* 801EFD9C 001ECCFC EF A0 06 F2 */ fmuls f29, f0, f27 +/* 801EFDA0 001ECD00 F3 A1 A0 09 */ psq_st f29, 9(r1), 1, qr2 +/* 801EFDA4 001ECD04 38 81 00 14 */ addi r4, r1, 0x14 +/* 801EFDA8 001ECD08 80 63 00 00 */ lwz r3, 0(r3) +/* 801EFDAC 001ECD0C 88 01 00 09 */ lbz r0, 9(r1) +/* 801EFDB0 001ECD10 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 801EFDB4 001ECD14 90 01 00 14 */ stw r0, 0x14(r1) +/* 801EFDB8 001ECD18 80 7F 00 2C */ lwz r3, 0x2c(r31) +/* 801EFDBC 001ECD1C 48 0D AA B1 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 801EFDC0 001ECD20 C0 42 AE 78 */ lfs f2, lbl_805ACB98@sda21(r2) +/* 801EFDC4 001ECD24 C0 3F 00 68 */ lfs f1, 0x68(r31) +/* 801EFDC8 001ECD28 C0 02 AE 8C */ lfs f0, lbl_805ACBAC@sda21(r2) +/* 801EFDCC 001ECD2C EC 22 0E BA */ fmadds f1, f2, f26, f1 +/* 801EFDD0 001ECD30 D0 3F 00 68 */ stfs f1, 0x68(r31) +/* 801EFDD4 001ECD34 C0 3F 00 68 */ lfs f1, 0x68(r31) +/* 801EFDD8 001ECD38 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801EFDDC 001ECD3C 40 81 00 10 */ ble lbl_801EFDEC +/* 801EFDE0 001ECD40 C0 02 AE 90 */ lfs f0, lbl_805ACBB0@sda21(r2) +/* 801EFDE4 001ECD44 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801EFDE8 001ECD48 D0 1F 00 68 */ stfs f0, 0x68(r31) +lbl_801EFDEC: +/* 801EFDEC 001ECD4C 48 1A 00 91 */ bl rand +/* 801EFDF0 001ECD50 6C 63 80 00 */ xoris r3, r3, 0x8000 +/* 801EFDF4 001ECD54 3C 00 43 30 */ lis r0, 0x4330 +/* 801EFDF8 001ECD58 90 61 01 34 */ stw r3, 0x134(r1) +/* 801EFDFC 001ECD5C C8 42 AE A8 */ lfd f2, lbl_805ACBC8@sda21(r2) +/* 801EFE00 001ECD60 90 01 01 30 */ stw r0, 0x130(r1) +/* 801EFE04 001ECD64 C0 02 AE 94 */ lfs f0, lbl_805ACBB4@sda21(r2) +/* 801EFE08 001ECD68 C8 21 01 30 */ lfd f1, 0x130(r1) +/* 801EFE0C 001ECD6C EC 21 10 28 */ fsubs f1, f1, f2 +/* 801EFE10 001ECD70 EF 61 00 24 */ fdivs f27, f1, f0 +/* 801EFE14 001ECD74 48 15 A1 99 */ bl White__6CColorFv +/* 801EFE18 001ECD78 C0 22 AE 9C */ lfs f1, lbl_805ACBBC@sda21(r2) +/* 801EFE1C 001ECD7C C0 02 AE 98 */ lfs f0, lbl_805ACBB8@sda21(r2) +/* 801EFE20 001ECD80 C0 42 AE 80 */ lfs f2, lbl_805ACBA0@sda21(r2) +/* 801EFE24 001ECD84 EC 01 06 FA */ fmadds f0, f1, f27, f0 +/* 801EFE28 001ECD88 EF 82 00 32 */ fmuls f28, f2, f0 +/* 801EFE2C 001ECD8C F3 81 A0 08 */ psq_st f28, 8(r1), 1, qr2 +/* 801EFE30 001ECD90 38 81 00 10 */ addi r4, r1, 0x10 +/* 801EFE34 001ECD94 80 63 00 00 */ lwz r3, 0(r3) +/* 801EFE38 001ECD98 88 01 00 08 */ lbz r0, 8(r1) +/* 801EFE3C 001ECD9C 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 801EFE40 001ECDA0 90 01 00 10 */ stw r0, 0x10(r1) +/* 801EFE44 001ECDA4 80 7F 00 40 */ lwz r3, 0x40(r31) +/* 801EFE48 001ECDA8 48 0D AA 25 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 801EFE4C 001ECDAC C0 3F 00 60 */ lfs f1, 0x60(r31) +/* 801EFE50 001ECDB0 38 61 00 6C */ addi r3, r1, 0x6c +/* 801EFE54 001ECDB4 C0 62 AE 48 */ lfs f3, lbl_805ACB68@sda21(r2) +/* 801EFE58 001ECDB8 38 81 00 2C */ addi r4, r1, 0x2c +/* 801EFE5C 001ECDBC C0 1F 00 5C */ lfs f0, 0x5c(r31) +/* 801EFE60 001ECDC0 C0 5F 00 64 */ lfs f2, 0x64(r31) +/* 801EFE64 001ECDC4 EC 81 18 2A */ fadds f4, f1, f3 +/* 801EFE68 001ECDC8 C0 3F 00 68 */ lfs f1, 0x68(r31) +/* 801EFE6C 001ECDCC EC 00 18 2A */ fadds f0, f0, f3 +/* 801EFE70 001ECDD0 EC 22 08 2A */ fadds f1, f2, f1 +/* 801EFE74 001ECDD4 D0 81 00 30 */ stfs f4, 0x30(r1) +/* 801EFE78 001ECDD8 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801EFE7C 001ECDDC D0 21 00 34 */ stfs f1, 0x34(r1) +/* 801EFE80 001ECDE0 48 12 32 C1 */ bl Translate__12CTransform4fFRC9CVector3f +/* 801EFE84 001ECDE4 83 DF 00 40 */ lwz r30, 0x40(r31) +/* 801EFE88 001ECDE8 38 81 00 6C */ addi r4, r1, 0x6c +/* 801EFE8C 001ECDEC 38 7E 00 04 */ addi r3, r30, 4 +/* 801EFE90 001ECDF0 48 12 2C B1 */ bl __as__12CTransform4fFRC12CTransform4f +/* 801EFE94 001ECDF4 7F C3 F3 78 */ mr r3, r30 +/* 801EFE98 001ECDF8 48 0D 49 51 */ bl RecalculateTransforms__10CGuiObjectFv +/* 801EFE9C 001ECDFC FC 20 D0 90 */ fmr f1, f26 +/* 801EFEA0 001ECE00 80 7F 00 18 */ lwz r3, 0x18(r31) +/* 801EFEA4 001ECE04 48 0D 28 61 */ bl Update__9CGuiFrameFf +lbl_801EFEA8: +/* 801EFEA8 001ECE08 88 1F 00 78 */ lbz r0, 0x78(r31) +/* 801EFEAC 001ECE0C 54 00 CF FE */ rlwinm r0, r0, 0x19, 0x1f, 0x1f +/* 801EFEB0 001ECE10 7C 00 00 34 */ cntlzw r0, r0 +/* 801EFEB4 001ECE14 54 03 D9 7E */ srwi r3, r0, 5 +/* 801EFEB8 001ECE18 E3 E1 01 98 */ psq_l f31, 408(r1), 0, qr0 +/* 801EFEBC 001ECE1C CB E1 01 90 */ lfd f31, 0x190(r1) +/* 801EFEC0 001ECE20 E3 C1 01 88 */ psq_l f30, 392(r1), 0, qr0 +/* 801EFEC4 001ECE24 CB C1 01 80 */ lfd f30, 0x180(r1) +/* 801EFEC8 001ECE28 E3 A1 01 78 */ psq_l f29, 376(r1), 0, qr0 +/* 801EFECC 001ECE2C CB A1 01 70 */ lfd f29, 0x170(r1) +/* 801EFED0 001ECE30 E3 81 01 68 */ psq_l f28, 360(r1), 0, qr0 +/* 801EFED4 001ECE34 CB 81 01 60 */ lfd f28, 0x160(r1) +/* 801EFED8 001ECE38 E3 61 01 58 */ psq_l f27, 344(r1), 0, qr0 +/* 801EFEDC 001ECE3C CB 61 01 50 */ lfd f27, 0x150(r1) +/* 801EFEE0 001ECE40 E3 41 01 48 */ psq_l f26, 328(r1), 0, qr0 +/* 801EFEE4 001ECE44 CB 41 01 40 */ lfd f26, 0x140(r1) +/* 801EFEE8 001ECE48 83 E1 01 3C */ lwz r31, 0x13c(r1) +/* 801EFEEC 001ECE4C 80 01 01 A4 */ lwz r0, 0x1a4(r1) +/* 801EFEF0 001ECE50 83 C1 01 38 */ lwz r30, 0x138(r1) +/* 801EFEF4 001ECE54 7C 08 03 A6 */ mtlr r0 +/* 801EFEF8 001ECE58 38 21 01 A0 */ addi r1, r1, 0x1a0 +/* 801EFEFC 001ECE5C 4E 80 00 20 */ blr + +.global __ct__14CMessageScreenFUif +__ct__14CMessageScreenFUif: +/* 801EFF00 001ECE60 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801EFF04 001ECE64 7C 08 02 A6 */ mflr r0 +/* 801EFF08 001ECE68 90 01 00 44 */ stw r0, 0x44(r1) +/* 801EFF0C 001ECE6C DB E1 00 30 */ stfd f31, 0x30(r1) +/* 801EFF10 001ECE70 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 801EFF14 001ECE74 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801EFF18 001ECE78 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801EFF1C 001ECE7C 3C A0 53 54 */ lis r5, 0x53545247@ha +/* 801EFF20 001ECE80 90 81 00 1C */ stw r4, 0x1c(r1) +/* 801EFF24 001ECE84 38 05 52 47 */ addi r0, r5, 0x53545247@l +/* 801EFF28 001ECE88 7C 7F 1B 78 */ mr r31, r3 +/* 801EFF2C 001ECE8C 90 01 00 18 */ stw r0, 0x18(r1) +/* 801EFF30 001ECE90 FF E0 08 90 */ fmr f31, f1 +/* 801EFF34 001ECE94 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801EFF38 001ECE98 38 61 00 10 */ addi r3, r1, 0x10 +/* 801EFF3C 001ECE9C 38 A1 00 18 */ addi r5, r1, 0x18 +/* 801EFF40 001ECEA0 81 84 00 00 */ lwz r12, 0(r4) +/* 801EFF44 001ECEA4 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801EFF48 001ECEA8 7D 89 03 A6 */ mtctr r12 +/* 801EFF4C 001ECEAC 4E 80 04 21 */ bctrl +/* 801EFF50 001ECEB0 7F E3 FB 78 */ mr r3, r31 +/* 801EFF54 001ECEB4 38 81 00 10 */ addi r4, r1, 0x10 +/* 801EFF58 001ECEB8 48 15 0F 51 */ bl __ct__6CTokenFRC6CToken +/* 801EFF5C 001ECEBC 38 00 00 00 */ li r0, 0 +/* 801EFF60 001ECEC0 38 61 00 10 */ addi r3, r1, 0x10 +/* 801EFF64 001ECEC4 90 1F 00 08 */ stw r0, 8(r31) +/* 801EFF68 001ECEC8 38 80 FF FF */ li r4, -1 +/* 801EFF6C 001ECECC 48 15 0E D5 */ bl __dt__6CTokenFv +/* 801EFF70 001ECED0 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801EFF74 001ECED4 3C 60 80 3D */ lis r3, lbl_803D1F48@ha +/* 801EFF78 001ECED8 38 A3 1F 48 */ addi r5, r3, lbl_803D1F48@l +/* 801EFF7C 001ECEDC 38 61 00 08 */ addi r3, r1, 8 +/* 801EFF80 001ECEE0 81 84 00 00 */ lwz r12, 0(r4) +/* 801EFF84 001ECEE4 38 A5 00 A5 */ addi r5, r5, 0xa5 +/* 801EFF88 001ECEE8 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801EFF8C 001ECEEC 7D 89 03 A6 */ mtctr r12 +/* 801EFF90 001ECEF0 4E 80 04 21 */ bctrl +/* 801EFF94 001ECEF4 3B DF 00 0C */ addi r30, r31, 0xc +/* 801EFF98 001ECEF8 38 81 00 08 */ addi r4, r1, 8 +/* 801EFF9C 001ECEFC 7F C3 F3 78 */ mr r3, r30 +/* 801EFFA0 001ECF00 48 15 0F 09 */ bl __ct__6CTokenFRC6CToken +/* 801EFFA4 001ECF04 38 00 00 00 */ li r0, 0 +/* 801EFFA8 001ECF08 38 61 00 08 */ addi r3, r1, 8 +/* 801EFFAC 001ECF0C 90 1E 00 08 */ stw r0, 8(r30) +/* 801EFFB0 001ECF10 38 80 FF FF */ li r4, -1 +/* 801EFFB4 001ECF14 48 15 0E 8D */ bl __dt__6CTokenFv +/* 801EFFB8 001ECF18 38 A0 00 00 */ li r5, 0 +/* 801EFFBC 001ECF1C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801EFFC0 001ECF20 90 BF 00 18 */ stw r5, 0x18(r31) +/* 801EFFC4 001ECF24 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 801EFFC8 001ECF28 C0 22 AE 8C */ lfs f1, lbl_805ACBAC@sda21(r2) +/* 801EFFCC 001ECF2C 7F C3 F3 78 */ mr r3, r30 +/* 801EFFD0 001ECF30 C0 44 00 00 */ lfs f2, 0(r4) +/* 801EFFD4 001ECF34 C0 02 AE 48 */ lfs f0, lbl_805ACB68@sda21(r2) +/* 801EFFD8 001ECF38 D0 5F 00 44 */ stfs f2, 0x44(r31) +/* 801EFFDC 001ECF3C C0 44 00 04 */ lfs f2, 4(r4) +/* 801EFFE0 001ECF40 D0 5F 00 48 */ stfs f2, 0x48(r31) +/* 801EFFE4 001ECF44 C0 44 00 08 */ lfs f2, 8(r4) +/* 801EFFE8 001ECF48 D0 5F 00 4C */ stfs f2, 0x4c(r31) +/* 801EFFEC 001ECF4C C0 44 00 00 */ lfs f2, 0(r4) +/* 801EFFF0 001ECF50 D0 5F 00 50 */ stfs f2, 0x50(r31) +/* 801EFFF4 001ECF54 C0 44 00 04 */ lfs f2, 4(r4) +/* 801EFFF8 001ECF58 D0 5F 00 54 */ stfs f2, 0x54(r31) +/* 801EFFFC 001ECF5C C0 44 00 08 */ lfs f2, 8(r4) +/* 801F0000 001ECF60 D0 5F 00 58 */ stfs f2, 0x58(r31) +/* 801F0004 001ECF64 C0 44 00 00 */ lfs f2, 0(r4) +/* 801F0008 001ECF68 D0 5F 00 5C */ stfs f2, 0x5c(r31) +/* 801F000C 001ECF6C C0 44 00 04 */ lfs f2, 4(r4) +/* 801F0010 001ECF70 D0 5F 00 60 */ stfs f2, 0x60(r31) +/* 801F0014 001ECF74 C0 44 00 08 */ lfs f2, 8(r4) +/* 801F0018 001ECF78 D0 5F 00 64 */ stfs f2, 0x64(r31) +/* 801F001C 001ECF7C D0 3F 00 68 */ stfs f1, 0x68(r31) +/* 801F0020 001ECF80 90 BF 00 6C */ stw r5, 0x6c(r31) +/* 801F0024 001ECF84 D0 1F 00 70 */ stfs f0, 0x70(r31) +/* 801F0028 001ECF88 D3 FF 00 74 */ stfs f31, 0x74(r31) +/* 801F002C 001ECF8C 88 1F 00 78 */ lbz r0, 0x78(r31) +/* 801F0030 001ECF90 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 801F0034 001ECF94 98 1F 00 78 */ stb r0, 0x78(r31) +/* 801F0038 001ECF98 48 15 0D 4D */ bl Lock__6CTokenFv +/* 801F003C 001ECF9C 7F E3 FB 78 */ mr r3, r31 +/* 801F0040 001ECFA0 48 15 0D 45 */ bl Lock__6CTokenFv +/* 801F0044 001ECFA4 7F E3 FB 78 */ mr r3, r31 +/* 801F0048 001ECFA8 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 801F004C 001ECFAC 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801F0050 001ECFB0 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 801F0054 001ECFB4 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801F0058 001ECFB8 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801F005C 001ECFBC 7C 08 03 A6 */ mtlr r0 +/* 801F0060 001ECFC0 38 21 00 40 */ addi r1, r1, 0x40 +/* 801F0064 001ECFC4 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CPauseScreenFrame.s b/asm/Kyoto_CWD/CPauseScreenFrame.s new file mode 100644 index 00000000..88fffe92 --- /dev/null +++ b/asm/Kyoto_CWD/CPauseScreenFrame.s @@ -0,0 +1,2888 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global DoSliderChange__21SOptionsFrontEndFrameFP15CGuiSliderGroup +DoSliderChange__21SOptionsFrontEndFrameFP15CGuiSliderGroup: +/* 80241AF8 0023EA58 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80241AFC 0023EA5C 7C 08 02 A6 */ mflr r0 +/* 80241B00 0023EA60 90 01 00 24 */ stw r0, 0x24(r1) +/* 80241B04 0023EA64 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80241B08 0023EA68 7C 9F 23 78 */ mr r31, r4 +/* 80241B0C 0023EA6C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80241B10 0023EA70 7C 7E 1B 78 */ mr r30, r3 +/* 80241B14 0023EA74 80 63 00 28 */ lwz r3, 0x28(r3) +/* 80241B18 0023EA78 81 83 00 00 */ lwz r12, 0(r3) +/* 80241B1C 0023EA7C 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 80241B20 0023EA80 7D 89 03 A6 */ mtctr r12 +/* 80241B24 0023EA84 4E 80 04 21 */ bctrl +/* 80241B28 0023EA88 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80241B2C 0023EA8C 41 82 00 44 */ beq lbl_80241B70 +/* 80241B30 0023EA90 80 BE 00 24 */ lwz r5, 0x24(r30) +/* 80241B34 0023EA94 3C 80 80 3F */ lis r4, lbl_803E8720@ha +/* 80241B38 0023EA98 80 7E 00 28 */ lwz r3, 0x28(r30) +/* 80241B3C 0023EA9C 38 84 87 20 */ addi r4, r4, lbl_803E8720@l +/* 80241B40 0023EAA0 C0 1F 00 C0 */ lfs f0, 0xc0(r31) +/* 80241B44 0023EAA4 80 A5 00 C4 */ lwz r5, 0xc4(r5) +/* 80241B48 0023EAA8 FC 00 00 1E */ fctiwz f0, f0 +/* 80241B4C 0023EAAC 80 03 00 C4 */ lwz r0, 0xc4(r3) +/* 80241B50 0023EAB0 54 A3 18 38 */ slwi r3, r5, 3 +/* 80241B54 0023EAB4 7C 64 1A 14 */ add r3, r4, r3 +/* 80241B58 0023EAB8 D8 01 00 08 */ stfd f0, 8(r1) +/* 80241B5C 0023EABC 1C 00 00 18 */ mulli r0, r0, 0x18 +/* 80241B60 0023EAC0 80 63 00 04 */ lwz r3, 4(r3) +/* 80241B64 0023EAC4 80 81 00 0C */ lwz r4, 0xc(r1) +/* 80241B68 0023EAC8 7C 63 00 2E */ lwzx r3, r3, r0 +/* 80241B6C 0023EACC 48 00 26 3D */ bl SetOption__12CGameOptionsF11EGameOptioni +lbl_80241B70: +/* 80241B70 0023EAD0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80241B74 0023EAD4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80241B78 0023EAD8 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80241B7C 0023EADC 7C 08 03 A6 */ mtlr r0 +/* 80241B80 0023EAE0 38 21 00 20 */ addi r1, r1, 0x20 +/* 80241B84 0023EAE4 4E 80 00 20 */ blr + +.global SetTableColors__21SOptionsFrontEndFrameFP14CGuiTableGroup +SetTableColors__21SOptionsFrontEndFrameFP14CGuiTableGroup: +/* 80241B88 0023EAE8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80241B8C 0023EAEC 7C 08 02 A6 */ mflr r0 +/* 80241B90 0023EAF0 7C 83 23 78 */ mr r3, r4 +/* 80241B94 0023EAF4 38 E0 00 FF */ li r7, 0xff +/* 80241B98 0023EAF8 90 01 00 14 */ stw r0, 0x14(r1) +/* 80241B9C 0023EAFC 38 C0 00 A0 */ li r6, 0xa0 +/* 80241BA0 0023EB00 38 00 00 C8 */ li r0, 0xc8 +/* 80241BA4 0023EB04 38 81 00 0C */ addi r4, r1, 0xc +/* 80241BA8 0023EB08 98 E1 00 0C */ stb r7, 0xc(r1) +/* 80241BAC 0023EB0C 38 A1 00 08 */ addi r5, r1, 8 +/* 80241BB0 0023EB10 98 E1 00 0D */ stb r7, 0xd(r1) +/* 80241BB4 0023EB14 98 E1 00 0E */ stb r7, 0xe(r1) +/* 80241BB8 0023EB18 98 E1 00 0F */ stb r7, 0xf(r1) +/* 80241BBC 0023EB1C 98 C1 00 08 */ stb r6, 8(r1) +/* 80241BC0 0023EB20 98 C1 00 09 */ stb r6, 9(r1) +/* 80241BC4 0023EB24 98 C1 00 0A */ stb r6, 0xa(r1) +/* 80241BC8 0023EB28 98 01 00 0B */ stb r0, 0xb(r1) +/* 80241BCC 0023EB2C 48 08 4A 31 */ bl SetColors__14CGuiTableGroupCFRC6CColorRC6CColor +/* 80241BD0 0023EB30 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80241BD4 0023EB34 7C 08 03 A6 */ mtlr r0 +/* 80241BD8 0023EB38 38 21 00 10 */ addi r1, r1, 0x10 +/* 80241BDC 0023EB3C 4E 80 00 20 */ blr + +.global Draw__21SOptionsFrontEndFrameFv +Draw__21SOptionsFrontEndFrameFv: +/* 80241BE0 0023EB40 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80241BE4 0023EB44 7C 08 02 A6 */ mflr r0 +/* 80241BE8 0023EB48 90 01 00 24 */ stw r0, 0x24(r1) +/* 80241BEC 0023EB4C 80 C3 00 1C */ lwz r6, 0x1c(r3) +/* 80241BF0 0023EB50 28 06 00 00 */ cmplwi r6, 0 +/* 80241BF4 0023EB54 41 82 00 44 */ beq lbl_80241C38 +/* 80241BF8 0023EB58 88 03 01 34 */ lbz r0, 0x134(r3) +/* 80241BFC 0023EB5C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80241C00 0023EB60 41 82 00 38 */ beq lbl_80241C38 +/* 80241C04 0023EB64 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80241C08 0023EB68 C0 63 00 00 */ lfs f3, 0(r3) +/* 80241C0C 0023EB6C 38 A4 66 A0 */ addi r5, r4, skZero3f@l +/* 80241C10 0023EB70 7C C3 33 78 */ mr r3, r6 +/* 80241C14 0023EB74 C0 45 00 00 */ lfs f2, 0(r5) +/* 80241C18 0023EB78 38 81 00 08 */ addi r4, r1, 8 +/* 80241C1C 0023EB7C C0 25 00 04 */ lfs f1, 4(r5) +/* 80241C20 0023EB80 C0 05 00 08 */ lfs f0, 8(r5) +/* 80241C24 0023EB84 D0 61 00 08 */ stfs f3, 8(r1) +/* 80241C28 0023EB88 D0 41 00 0C */ stfs f2, 0xc(r1) +/* 80241C2C 0023EB8C D0 21 00 10 */ stfs f1, 0x10(r1) +/* 80241C30 0023EB90 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 80241C34 0023EB94 48 08 0B 01 */ bl Draw__9CGuiFrameCFRC19CGuiWidgetDrawParms +lbl_80241C38: +/* 80241C38 0023EB98 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80241C3C 0023EB9C 7C 08 03 A6 */ mtlr r0 +/* 80241C40 0023EBA0 38 21 00 20 */ addi r1, r1, 0x20 +/* 80241C44 0023EBA4 4E 80 00 20 */ blr + +.global ProcessUserInput__21SOptionsFrontEndFrameFRC11CFinalInputPC15CSaveGameScreen +ProcessUserInput__21SOptionsFrontEndFrameFRC11CFinalInputPC15CSaveGameScreen: +/* 80241C48 0023EBA8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80241C4C 0023EBAC 7C 08 02 A6 */ mflr r0 +/* 80241C50 0023EBB0 28 05 00 00 */ cmplwi r5, 0 +/* 80241C54 0023EBB4 90 01 00 24 */ stw r0, 0x24(r1) +/* 80241C58 0023EBB8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80241C5C 0023EBBC 7C 9F 23 78 */ mr r31, r4 +/* 80241C60 0023EBC0 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80241C64 0023EBC4 7C 7E 1B 78 */ mr r30, r3 +/* 80241C68 0023EBC8 88 03 01 34 */ lbz r0, 0x134(r3) +/* 80241C6C 0023EBCC 38 60 00 00 */ li r3, 0 +/* 80241C70 0023EBD0 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 80241C74 0023EBD4 98 1E 01 34 */ stb r0, 0x134(r30) +/* 80241C78 0023EBD8 41 82 00 0C */ beq lbl_80241C84 +/* 80241C7C 0023EBDC 7C A3 2B 78 */ mr r3, r5 +/* 80241C80 0023EBE0 48 00 DA F1 */ bl ProcessUserInput__15CSaveGameScreenFRC11CFinalInput +lbl_80241C84: +/* 80241C84 0023EBE4 80 1E 00 1C */ lwz r0, 0x1c(r30) +/* 80241C88 0023EBE8 28 00 00 00 */ cmplwi r0, 0 +/* 80241C8C 0023EBEC 41 82 00 98 */ beq lbl_80241D24 +/* 80241C90 0023EBF0 88 1E 01 34 */ lbz r0, 0x134(r30) +/* 80241C94 0023EBF4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80241C98 0023EBF8 41 82 00 8C */ beq lbl_80241D24 +/* 80241C9C 0023EBFC 88 1F 00 2D */ lbz r0, 0x2d(r31) +/* 80241CA0 0023EC00 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 80241CA4 0023EC04 41 82 00 58 */ beq lbl_80241CFC +/* 80241CA8 0023EC08 80 7E 00 24 */ lwz r3, 0x24(r30) +/* 80241CAC 0023EC0C 81 83 00 00 */ lwz r12, 0(r3) +/* 80241CB0 0023EC10 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 80241CB4 0023EC14 7D 89 03 A6 */ mtctr r12 +/* 80241CB8 0023EC18 4E 80 04 21 */ bctrl +/* 80241CBC 0023EC1C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80241CC0 0023EC20 41 82 00 3C */ beq lbl_80241CFC +/* 80241CC4 0023EC24 88 1E 01 34 */ lbz r0, 0x134(r30) +/* 80241CC8 0023EC28 38 60 00 01 */ li r3, 1 +/* 80241CCC 0023EC2C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 80241CD0 0023EC30 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80241CD4 0023EC34 98 1E 01 34 */ stb r0, 0x134(r30) +/* 80241CD8 0023EC38 38 61 00 08 */ addi r3, r1, 8 +/* 80241CDC 0023EC3C 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80241CE0 0023EC40 38 80 04 46 */ li r4, 0x446 +/* 80241CE4 0023EC44 38 A0 00 7F */ li r5, 0x7f +/* 80241CE8 0023EC48 38 C0 00 40 */ li r6, 0x40 +/* 80241CEC 0023EC4C 38 E0 00 00 */ li r7, 0 +/* 80241CF0 0023EC50 39 20 00 00 */ li r9, 0 +/* 80241CF4 0023EC54 48 0A 80 81 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80241CF8 0023EC58 48 00 00 2C */ b lbl_80241D24 +lbl_80241CFC: +/* 80241CFC 0023EC5C 80 7E 00 1C */ lwz r3, 0x1c(r30) +/* 80241D00 0023EC60 7F E4 FB 78 */ mr r4, r31 +/* 80241D04 0023EC64 48 08 09 55 */ bl ProcessUserInput__9CGuiFrameFRC11CFinalInput +/* 80241D08 0023EC68 80 9E 00 24 */ lwz r4, 0x24(r30) +/* 80241D0C 0023EC6C 7F E3 FB 78 */ mr r3, r31 +/* 80241D10 0023EC70 80 BE 00 28 */ lwz r5, 0x28(r30) +/* 80241D14 0023EC74 38 C0 00 01 */ li r6, 1 +/* 80241D18 0023EC78 80 84 00 C4 */ lwz r4, 0xc4(r4) +/* 80241D1C 0023EC7C 80 A5 00 C4 */ lwz r5, 0xc4(r5) +/* 80241D20 0023EC80 48 00 22 A9 */ bl TryRestoreDefaults__12CGameOptionsFRC11CFinalInputiib +lbl_80241D24: +/* 80241D24 0023EC84 88 1E 01 34 */ lbz r0, 0x134(r30) +/* 80241D28 0023EC88 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80241D2C 0023EC8C 54 00 D7 FE */ rlwinm r0, r0, 0x1a, 0x1f, 0x1f +/* 80241D30 0023EC90 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80241D34 0023EC94 7C 00 00 34 */ cntlzw r0, r0 +/* 80241D38 0023EC98 54 03 D9 7E */ srwi r3, r0, 5 +/* 80241D3C 0023EC9C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80241D40 0023ECA0 7C 08 03 A6 */ mtlr r0 +/* 80241D44 0023ECA4 38 21 00 20 */ addi r1, r1, 0x20 +/* 80241D48 0023ECA8 4E 80 00 20 */ blr + +.global Update__21SOptionsFrontEndFrameFfPC15CSaveGameScreen +Update__21SOptionsFrontEndFrameFfPC15CSaveGameScreen: +/* 80241D4C 0023ECAC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80241D50 0023ECB0 7C 08 02 A6 */ mflr r0 +/* 80241D54 0023ECB4 90 01 00 34 */ stw r0, 0x34(r1) +/* 80241D58 0023ECB8 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 80241D5C 0023ECBC F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 80241D60 0023ECC0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80241D64 0023ECC4 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80241D68 0023ECC8 FF E0 08 90 */ fmr f31, f1 +/* 80241D6C 0023ECCC 7C 7F 1B 78 */ mr r31, r3 +/* 80241D70 0023ECD0 7C 9E 23 78 */ mr r30, r4 +/* 80241D74 0023ECD4 38 7F 00 40 */ addi r3, r31, 0x40 +/* 80241D78 0023ECD8 48 12 80 69 */ bl Update__16CRumbleGeneratorFf +/* 80241D7C 0023ECDC 28 1E 00 00 */ cmplwi r30, 0 +/* 80241D80 0023ECE0 38 60 00 00 */ li r3, 0 +/* 80241D84 0023ECE4 41 82 00 10 */ beq lbl_80241D94 +/* 80241D88 0023ECE8 80 1E 00 10 */ lwz r0, 0x10(r30) +/* 80241D8C 0023ECEC 2C 00 00 10 */ cmpwi r0, 0x10 +/* 80241D90 0023ECF0 40 82 00 08 */ bne lbl_80241D98 +lbl_80241D94: +/* 80241D94 0023ECF4 38 60 00 01 */ li r3, 1 +lbl_80241D98: +/* 80241D98 0023ECF8 88 1F 01 34 */ lbz r0, 0x134(r31) +/* 80241D9C 0023ECFC 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80241DA0 0023ED00 7F E3 FB 78 */ mr r3, r31 +/* 80241DA4 0023ED04 98 1F 01 34 */ stb r0, 0x134(r31) +/* 80241DA8 0023ED08 48 00 0F 2D */ bl PumpLoad__21SOptionsFrontEndFrameFv +/* 80241DAC 0023ED0C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80241DB0 0023ED10 41 82 00 B8 */ beq lbl_80241E68 +/* 80241DB4 0023ED14 C0 3F 00 00 */ lfs f1, 0(r31) +/* 80241DB8 0023ED18 C0 0D 96 D8 */ lfs f0, lbl_805A8298@sda21(r13) +/* 80241DBC 0023ED1C EC 21 F8 2A */ fadds f1, f1, f31 +/* 80241DC0 0023ED20 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80241DC4 0023ED24 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 80241DC8 0023ED28 40 80 00 0C */ bge lbl_80241DD4 +/* 80241DCC 0023ED2C 38 61 00 10 */ addi r3, r1, 0x10 +/* 80241DD0 0023ED30 48 00 00 08 */ b lbl_80241DD8 +lbl_80241DD4: +/* 80241DD4 0023ED34 38 6D 96 D8 */ addi r3, r13, lbl_805A8298@sda21 +lbl_80241DD8: +/* 80241DD8 0023ED38 C0 03 00 00 */ lfs f0, 0(r3) +/* 80241DDC 0023ED3C FC 20 F8 90 */ fmr f1, f31 +/* 80241DE0 0023ED40 D0 1F 00 00 */ stfs f0, 0(r31) +/* 80241DE4 0023ED44 80 7F 00 1C */ lwz r3, 0x1c(r31) +/* 80241DE8 0023ED48 48 08 09 1D */ bl Update__9CGuiFrameFf +/* 80241DEC 0023ED4C 80 9F 00 34 */ lwz r4, 0x34(r31) +/* 80241DF0 0023ED50 80 7F 00 3C */ lwz r3, 0x3c(r31) +/* 80241DF4 0023ED54 80 A4 00 F0 */ lwz r5, 0xf0(r4) +/* 80241DF8 0023ED58 7C 03 00 D0 */ neg r0, r3 +/* 80241DFC 0023ED5C 7C 85 00 D0 */ neg r4, r5 +/* 80241E00 0023ED60 7C 84 2B 78 */ or r4, r4, r5 +/* 80241E04 0023ED64 7C 00 1B 78 */ or r0, r0, r3 +/* 80241E08 0023ED68 54 83 0F FE */ srwi r3, r4, 0x1f +/* 80241E0C 0023ED6C 54 00 0F FE */ srwi r0, r0, 0x1f +/* 80241E10 0023ED70 7C 03 00 40 */ cmplw r3, r0 +/* 80241E14 0023ED74 41 82 00 54 */ beq lbl_80241E68 +/* 80241E18 0023ED78 28 03 00 00 */ cmplwi r3, 0 +/* 80241E1C 0023ED7C 41 82 00 34 */ beq lbl_80241E50 +/* 80241E20 0023ED80 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80241E24 0023ED84 38 61 00 0C */ addi r3, r1, 0xc +/* 80241E28 0023ED88 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80241E2C 0023ED8C 38 80 05 B2 */ li r4, 0x5b2 +/* 80241E30 0023ED90 38 A0 00 7F */ li r5, 0x7f +/* 80241E34 0023ED94 38 C0 00 40 */ li r6, 0x40 +/* 80241E38 0023ED98 38 E0 00 00 */ li r7, 0 +/* 80241E3C 0023ED9C 39 20 00 00 */ li r9, 0 +/* 80241E40 0023EDA0 48 0A 7F 35 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80241E44 0023EDA4 80 01 00 0C */ lwz r0, 0xc(r1) +/* 80241E48 0023EDA8 90 1F 00 3C */ stw r0, 0x3c(r31) +/* 80241E4C 0023EDAC 48 00 00 1C */ b lbl_80241E68 +lbl_80241E50: +/* 80241E50 0023EDB0 80 1F 00 3C */ lwz r0, 0x3c(r31) +/* 80241E54 0023EDB4 38 61 00 08 */ addi r3, r1, 8 +/* 80241E58 0023EDB8 90 01 00 08 */ stw r0, 8(r1) +/* 80241E5C 0023EDBC 48 0A 7E ED */ bl SfxStop__11CSfxManagerFRC10CSfxHandle +/* 80241E60 0023EDC0 38 00 00 00 */ li r0, 0 +/* 80241E64 0023EDC4 90 1F 00 3C */ stw r0, 0x3c(r31) +lbl_80241E68: +/* 80241E68 0023EDC8 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 80241E6C 0023EDCC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80241E70 0023EDD0 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 80241E74 0023EDD4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80241E78 0023EDD8 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80241E7C 0023EDDC 7C 08 03 A6 */ mtlr r0 +/* 80241E80 0023EDE0 38 21 00 30 */ addi r1, r1, 0x30 +/* 80241E84 0023EDE4 4E 80 00 20 */ blr + +.global DoMenuCancel__21SOptionsFrontEndFrameFP14CGuiTableGroup +DoMenuCancel__21SOptionsFrontEndFrameFP14CGuiTableGroup: +/* 80241E88 0023EDE8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80241E8C 0023EDEC 7C 08 02 A6 */ mflr r0 +/* 80241E90 0023EDF0 90 01 00 24 */ stw r0, 0x24(r1) +/* 80241E94 0023EDF4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80241E98 0023EDF8 7C 7F 1B 78 */ mr r31, r3 +/* 80241E9C 0023EDFC 80 03 00 28 */ lwz r0, 0x28(r3) +/* 80241EA0 0023EE00 7C 04 00 40 */ cmplw r4, r0 +/* 80241EA4 0023EE04 40 82 00 64 */ bne lbl_80241F08 +/* 80241EA8 0023EE08 48 00 02 A9 */ bl DeactivateRightMenu__21SOptionsFrontEndFrameFv +/* 80241EAC 0023EE0C 80 7F 00 24 */ lwz r3, 0x24(r31) +/* 80241EB0 0023EE10 38 80 00 01 */ li r4, 1 +/* 80241EB4 0023EE14 48 08 87 31 */ bl SetIsActive__10CGuiWidgetFb +/* 80241EB8 0023EE18 80 7F 00 28 */ lwz r3, 0x28(r31) +/* 80241EBC 0023EE1C 38 80 00 00 */ li r4, 0 +/* 80241EC0 0023EE20 48 08 87 25 */ bl SetIsActive__10CGuiWidgetFb +/* 80241EC4 0023EE24 80 BF 00 28 */ lwz r5, 0x28(r31) +/* 80241EC8 0023EE28 38 00 00 00 */ li r0, 0 +/* 80241ECC 0023EE2C 7F E3 FB 78 */ mr r3, r31 +/* 80241ED0 0023EE30 80 85 00 C4 */ lwz r4, 0xc4(r5) +/* 80241ED4 0023EE34 90 85 00 C8 */ stw r4, 0xc8(r5) +/* 80241ED8 0023EE38 90 05 00 C4 */ stw r0, 0xc4(r5) +/* 80241EDC 0023EE3C 80 9F 00 28 */ lwz r4, 0x28(r31) +/* 80241EE0 0023EE40 4B FF FC A9 */ bl SetTableColors__21SOptionsFrontEndFrameFP14CGuiTableGroup +/* 80241EE4 0023EE44 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80241EE8 0023EE48 38 61 00 08 */ addi r3, r1, 8 +/* 80241EEC 0023EE4C 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80241EF0 0023EE50 38 80 04 46 */ li r4, 0x446 +/* 80241EF4 0023EE54 38 A0 00 7F */ li r5, 0x7f +/* 80241EF8 0023EE58 38 C0 00 40 */ li r6, 0x40 +/* 80241EFC 0023EE5C 38 E0 00 00 */ li r7, 0 +/* 80241F00 0023EE60 39 20 00 00 */ li r9, 0 +/* 80241F04 0023EE64 48 0A 7E 71 */ bl SfxStart__11CSfxManagerFUsssbsbi +lbl_80241F08: +/* 80241F08 0023EE68 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80241F0C 0023EE6C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80241F10 0023EE70 7C 08 03 A6 */ mtlr r0 +/* 80241F14 0023EE74 38 21 00 20 */ addi r1, r1, 0x20 +/* 80241F18 0023EE78 4E 80 00 20 */ blr + +.global DoMenuSelectionChange__21SOptionsFrontEndFrameFP14CGuiTableGroup +DoMenuSelectionChange__21SOptionsFrontEndFrameFP14CGuiTableGroup: +/* 80241F1C 0023EE7C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80241F20 0023EE80 7C 08 02 A6 */ mflr r0 +/* 80241F24 0023EE84 90 01 00 34 */ stw r0, 0x34(r1) +/* 80241F28 0023EE88 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80241F2C 0023EE8C 7C 7F 1B 78 */ mr r31, r3 +/* 80241F30 0023EE90 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80241F34 0023EE94 93 A1 00 24 */ stw r29, 0x24(r1) +/* 80241F38 0023EE98 93 81 00 20 */ stw r28, 0x20(r1) +/* 80241F3C 0023EE9C 7C 9C 23 78 */ mr r28, r4 +/* 80241F40 0023EEA0 4B FF FC 49 */ bl SetTableColors__21SOptionsFrontEndFrameFP14CGuiTableGroup +/* 80241F44 0023EEA4 80 1F 00 24 */ lwz r0, 0x24(r31) +/* 80241F48 0023EEA8 7C 1C 00 40 */ cmplw r28, r0 +/* 80241F4C 0023EEAC 40 82 00 34 */ bne lbl_80241F80 +/* 80241F50 0023EEB0 7F E3 FB 78 */ mr r3, r31 +/* 80241F54 0023EEB4 48 00 05 25 */ bl SetRightUIText__21SOptionsFrontEndFrameFv +/* 80241F58 0023EEB8 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80241F5C 0023EEBC 38 61 00 10 */ addi r3, r1, 0x10 +/* 80241F60 0023EEC0 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80241F64 0023EEC4 38 80 04 45 */ li r4, 0x445 +/* 80241F68 0023EEC8 38 A0 00 7F */ li r5, 0x7f +/* 80241F6C 0023EECC 38 C0 00 40 */ li r6, 0x40 +/* 80241F70 0023EED0 38 E0 00 00 */ li r7, 0 +/* 80241F74 0023EED4 39 20 00 00 */ li r9, 0 +/* 80241F78 0023EED8 48 0A 7D FD */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80241F7C 0023EEDC 48 00 01 08 */ b lbl_80242084 +lbl_80241F80: +/* 80241F80 0023EEE0 80 7F 00 28 */ lwz r3, 0x28(r31) +/* 80241F84 0023EEE4 7C 1C 18 40 */ cmplw r28, r3 +/* 80241F88 0023EEE8 40 82 00 34 */ bne lbl_80241FBC +/* 80241F8C 0023EEEC 7F E3 FB 78 */ mr r3, r31 +/* 80241F90 0023EEF0 48 00 02 3D */ bl HandleRightSelectionChange__21SOptionsFrontEndFrameFv +/* 80241F94 0023EEF4 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80241F98 0023EEF8 38 61 00 0C */ addi r3, r1, 0xc +/* 80241F9C 0023EEFC 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80241FA0 0023EF00 38 80 04 45 */ li r4, 0x445 +/* 80241FA4 0023EF04 38 A0 00 7F */ li r5, 0x7f +/* 80241FA8 0023EF08 38 C0 00 40 */ li r6, 0x40 +/* 80241FAC 0023EF0C 38 E0 00 00 */ li r7, 0 +/* 80241FB0 0023EF10 39 20 00 00 */ li r9, 0 +/* 80241FB4 0023EF14 48 0A 7D C1 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80241FB8 0023EF18 48 00 00 CC */ b lbl_80242084 +lbl_80241FBC: +/* 80241FBC 0023EF1C 80 1F 00 2C */ lwz r0, 0x2c(r31) +/* 80241FC0 0023EF20 7C 1C 00 40 */ cmplw r28, r0 +/* 80241FC4 0023EF24 41 82 00 10 */ beq lbl_80241FD4 +/* 80241FC8 0023EF28 80 1F 00 30 */ lwz r0, 0x30(r31) +/* 80241FCC 0023EF2C 7C 1C 00 40 */ cmplw r28, r0 +/* 80241FD0 0023EF30 40 82 00 B4 */ bne lbl_80242084 +lbl_80241FD4: +/* 80241FD4 0023EF34 81 83 00 00 */ lwz r12, 0(r3) +/* 80241FD8 0023EF38 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 80241FDC 0023EF3C 7D 89 03 A6 */ mtctr r12 +/* 80241FE0 0023EF40 4E 80 04 21 */ bctrl +/* 80241FE4 0023EF44 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80241FE8 0023EF48 41 82 00 9C */ beq lbl_80242084 +/* 80241FEC 0023EF4C 80 BF 00 24 */ lwz r5, 0x24(r31) +/* 80241FF0 0023EF50 3C 80 80 3F */ lis r4, lbl_803E8720@ha +/* 80241FF4 0023EF54 80 7F 00 28 */ lwz r3, 0x28(r31) +/* 80241FF8 0023EF58 38 84 87 20 */ addi r4, r4, lbl_803E8720@l +/* 80241FFC 0023EF5C 80 A5 00 C4 */ lwz r5, 0xc4(r5) +/* 80242000 0023EF60 80 03 00 C4 */ lwz r0, 0xc4(r3) +/* 80242004 0023EF64 54 A3 18 38 */ slwi r3, r5, 3 +/* 80242008 0023EF68 83 9C 00 C4 */ lwz r28, 0xc4(r28) +/* 8024200C 0023EF6C 7C 64 1A 14 */ add r3, r4, r3 +/* 80242010 0023EF70 1F C0 00 18 */ mulli r30, r0, 0x18 +/* 80242014 0023EF74 83 A3 00 04 */ lwz r29, 4(r3) +/* 80242018 0023EF78 7F 84 E3 78 */ mr r4, r28 +/* 8024201C 0023EF7C 7C 7D F0 2E */ lwzx r3, r29, r30 +/* 80242020 0023EF80 48 00 21 89 */ bl SetOption__12CGameOptionsF11EGameOptioni +/* 80242024 0023EF84 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80242028 0023EF88 38 61 00 08 */ addi r3, r1, 8 +/* 8024202C 0023EF8C 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80242030 0023EF90 38 80 04 47 */ li r4, 0x447 +/* 80242034 0023EF94 38 A0 00 7F */ li r5, 0x7f +/* 80242038 0023EF98 38 C0 00 40 */ li r6, 0x40 +/* 8024203C 0023EF9C 38 E0 00 00 */ li r7, 0 +/* 80242040 0023EFA0 39 20 00 00 */ li r9, 0 +/* 80242044 0023EFA4 48 0A 7D 31 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80242048 0023EFA8 7C 1D F0 2E */ lwzx r0, r29, r30 +/* 8024204C 0023EFAC 2C 00 00 0C */ cmpwi r0, 0xc +/* 80242050 0023EFB0 40 82 00 34 */ bne lbl_80242084 +/* 80242054 0023EFB4 2C 1C 00 00 */ cmpwi r28, 0 +/* 80242058 0023EFB8 40 81 00 2C */ ble lbl_80242084 +/* 8024205C 0023EFBC 38 7F 00 40 */ addi r3, r31, 0x40 +/* 80242060 0023EFC0 48 12 7C ED */ bl HardStopAll__16CRumbleGeneratorFv +/* 80242064 0023EFC4 3C 60 80 57 */ lis r3, lbl_80572140@ha +/* 80242068 0023EFC8 C0 22 B8 14 */ lfs f1, lbl_805AD534@sda21(r2) +/* 8024206C 0023EFCC 38 83 21 40 */ addi r4, r3, lbl_80572140@l +/* 80242070 0023EFD0 38 7F 00 40 */ addi r3, r31, 0x40 +/* 80242074 0023EFD4 38 84 01 34 */ addi r4, r4, 0x134 +/* 80242078 0023EFD8 38 A0 00 01 */ li r5, 1 +/* 8024207C 0023EFDC 38 C0 00 00 */ li r6, 0 +/* 80242080 0023EFE0 48 12 7E CD */ bl Rumble__16CRumbleGeneratorFRC9SAdsrDataf15ERumblePriority7EIOPort +lbl_80242084: +/* 80242084 0023EFE4 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80242088 0023EFE8 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8024208C 0023EFEC 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80242090 0023EFF0 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 80242094 0023EFF4 83 81 00 20 */ lwz r28, 0x20(r1) +/* 80242098 0023EFF8 7C 08 03 A6 */ mtlr r0 +/* 8024209C 0023EFFC 38 21 00 30 */ addi r1, r1, 0x30 +/* 802420A0 0023F000 4E 80 00 20 */ blr + +.global DoLeftMenuAdvance__21SOptionsFrontEndFrameFP14CGuiTableGroup +DoLeftMenuAdvance__21SOptionsFrontEndFrameFP14CGuiTableGroup: +/* 802420A4 0023F004 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 802420A8 0023F008 7C 08 02 A6 */ mflr r0 +/* 802420AC 0023F00C 90 01 00 24 */ stw r0, 0x24(r1) +/* 802420B0 0023F010 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 802420B4 0023F014 7C 7F 1B 78 */ mr r31, r3 +/* 802420B8 0023F018 80 03 00 24 */ lwz r0, 0x24(r3) +/* 802420BC 0023F01C 7C 04 00 40 */ cmplw r4, r0 +/* 802420C0 0023F020 40 82 00 7C */ bne lbl_8024213C +/* 802420C4 0023F024 48 00 01 09 */ bl HandleRightSelectionChange__21SOptionsFrontEndFrameFv +/* 802420C8 0023F028 80 BF 00 28 */ lwz r5, 0x28(r31) +/* 802420CC 0023F02C 38 00 00 00 */ li r0, 0 +/* 802420D0 0023F030 38 80 00 00 */ li r4, 0 +/* 802420D4 0023F034 80 65 00 C4 */ lwz r3, 0xc4(r5) +/* 802420D8 0023F038 90 65 00 C8 */ stw r3, 0xc8(r5) +/* 802420DC 0023F03C 90 05 00 C4 */ stw r0, 0xc4(r5) +/* 802420E0 0023F040 80 7F 00 24 */ lwz r3, 0x24(r31) +/* 802420E4 0023F044 48 08 85 01 */ bl SetIsActive__10CGuiWidgetFb +/* 802420E8 0023F048 80 7F 00 28 */ lwz r3, 0x28(r31) +/* 802420EC 0023F04C 38 80 00 01 */ li r4, 1 +/* 802420F0 0023F050 48 08 84 F5 */ bl SetIsActive__10CGuiWidgetFb +/* 802420F4 0023F054 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 802420F8 0023F058 38 61 00 0C */ addi r3, r1, 0xc +/* 802420FC 0023F05C 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80242100 0023F060 38 80 04 48 */ li r4, 0x448 +/* 80242104 0023F064 38 A0 00 7F */ li r5, 0x7f +/* 80242108 0023F068 38 C0 00 40 */ li r6, 0x40 +/* 8024210C 0023F06C 38 E0 00 00 */ li r7, 0 +/* 80242110 0023F070 39 20 00 00 */ li r9, 0 +/* 80242114 0023F074 48 0A 7C 61 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80242118 0023F078 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 8024211C 0023F07C 38 61 00 08 */ addi r3, r1, 8 +/* 80242120 0023F080 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80242124 0023F084 38 80 04 43 */ li r4, 0x443 +/* 80242128 0023F088 38 A0 00 7F */ li r5, 0x7f +/* 8024212C 0023F08C 38 C0 00 40 */ li r6, 0x40 +/* 80242130 0023F090 38 E0 00 00 */ li r7, 0 +/* 80242134 0023F094 39 20 00 00 */ li r9, 0 +/* 80242138 0023F098 48 0A 7C 3D */ bl SfxStart__11CSfxManagerFUsssbsbi +lbl_8024213C: +/* 8024213C 0023F09C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80242140 0023F0A0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80242144 0023F0A4 7C 08 03 A6 */ mtlr r0 +/* 80242148 0023F0A8 38 21 00 20 */ addi r1, r1, 0x20 +/* 8024214C 0023F0AC 4E 80 00 20 */ blr + +.global DeactivateRightMenu__21SOptionsFrontEndFrameFv +DeactivateRightMenu__21SOptionsFrontEndFrameFv: +/* 80242150 0023F0B0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80242154 0023F0B4 7C 08 02 A6 */ mflr r0 +/* 80242158 0023F0B8 38 80 00 00 */ li r4, 0 +/* 8024215C 0023F0BC 90 01 00 14 */ stw r0, 0x14(r1) +/* 80242160 0023F0C0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80242164 0023F0C4 7C 7F 1B 78 */ mr r31, r3 +/* 80242168 0023F0C8 80 63 00 2C */ lwz r3, 0x2c(r3) +/* 8024216C 0023F0CC 48 08 84 79 */ bl SetIsActive__10CGuiWidgetFb +/* 80242170 0023F0D0 80 7F 00 30 */ lwz r3, 0x30(r31) +/* 80242174 0023F0D4 38 80 00 00 */ li r4, 0 +/* 80242178 0023F0D8 48 08 84 6D */ bl SetIsActive__10CGuiWidgetFb +/* 8024217C 0023F0DC 80 7F 00 34 */ lwz r3, 0x34(r31) +/* 80242180 0023F0E0 38 80 00 00 */ li r4, 0 +/* 80242184 0023F0E4 48 08 84 61 */ bl SetIsActive__10CGuiWidgetFb +/* 80242188 0023F0E8 80 7F 00 2C */ lwz r3, 0x2c(r31) +/* 8024218C 0023F0EC 38 80 00 00 */ li r4, 0 +/* 80242190 0023F0F0 38 A0 00 01 */ li r5, 1 +/* 80242194 0023F0F4 48 08 85 55 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80242198 0023F0F8 80 7F 00 30 */ lwz r3, 0x30(r31) +/* 8024219C 0023F0FC 38 80 00 00 */ li r4, 0 +/* 802421A0 0023F100 38 A0 00 01 */ li r5, 1 +/* 802421A4 0023F104 48 08 85 45 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 802421A8 0023F108 80 7F 00 34 */ lwz r3, 0x34(r31) +/* 802421AC 0023F10C 38 80 00 00 */ li r4, 0 +/* 802421B0 0023F110 38 A0 00 01 */ li r5, 1 +/* 802421B4 0023F114 48 08 85 35 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 802421B8 0023F118 80 01 00 14 */ lwz r0, 0x14(r1) +/* 802421BC 0023F11C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 802421C0 0023F120 7C 08 03 A6 */ mtlr r0 +/* 802421C4 0023F124 38 21 00 10 */ addi r1, r1, 0x10 +/* 802421C8 0023F128 4E 80 00 20 */ blr + +.global HandleRightSelectionChange__21SOptionsFrontEndFrameFv +HandleRightSelectionChange__21SOptionsFrontEndFrameFv: +/* 802421CC 0023F12C 94 21 FE C0 */ stwu r1, -0x140(r1) +/* 802421D0 0023F130 7C 08 02 A6 */ mflr r0 +/* 802421D4 0023F134 90 01 01 44 */ stw r0, 0x144(r1) +/* 802421D8 0023F138 93 E1 01 3C */ stw r31, 0x13c(r1) +/* 802421DC 0023F13C 7C 7F 1B 78 */ mr r31, r3 +/* 802421E0 0023F140 93 C1 01 38 */ stw r30, 0x138(r1) +/* 802421E4 0023F144 4B FF FF 6D */ bl DeactivateRightMenu__21SOptionsFrontEndFrameFv +/* 802421E8 0023F148 80 BF 00 24 */ lwz r5, 0x24(r31) +/* 802421EC 0023F14C 3C 80 80 3F */ lis r4, lbl_803E8720@ha +/* 802421F0 0023F150 80 7F 00 28 */ lwz r3, 0x28(r31) +/* 802421F4 0023F154 38 84 87 20 */ addi r4, r4, lbl_803E8720@l +/* 802421F8 0023F158 80 A5 00 C4 */ lwz r5, 0xc4(r5) +/* 802421FC 0023F15C 80 03 00 C4 */ lwz r0, 0xc4(r3) +/* 80242200 0023F160 54 A3 18 38 */ slwi r3, r5, 3 +/* 80242204 0023F164 7C 64 1A 14 */ add r3, r4, r3 +/* 80242208 0023F168 1C 00 00 18 */ mulli r0, r0, 0x18 +/* 8024220C 0023F16C 80 63 00 04 */ lwz r3, 4(r3) +/* 80242210 0023F170 7F C3 02 14 */ add r30, r3, r0 +/* 80242214 0023F174 80 1E 00 14 */ lwz r0, 0x14(r30) +/* 80242218 0023F178 2C 00 00 01 */ cmpwi r0, 1 +/* 8024221C 0023F17C 41 82 00 F8 */ beq lbl_80242314 +/* 80242220 0023F180 40 80 00 10 */ bge lbl_80242230 +/* 80242224 0023F184 2C 00 00 00 */ cmpwi r0, 0 +/* 80242228 0023F188 40 80 00 14 */ bge lbl_8024223C +/* 8024222C 0023F18C 48 00 02 34 */ b lbl_80242460 +lbl_80242230: +/* 80242230 0023F190 2C 00 00 03 */ cmpwi r0, 3 +/* 80242234 0023F194 40 80 02 2C */ bge lbl_80242460 +/* 80242238 0023F198 48 00 01 84 */ b lbl_802423BC +lbl_8024223C: +/* 8024223C 0023F19C 80 7F 00 34 */ lwz r3, 0x34(r31) +/* 80242240 0023F1A0 38 80 00 01 */ li r4, 1 +/* 80242244 0023F1A4 48 08 83 A1 */ bl SetIsActive__10CGuiWidgetFb +/* 80242248 0023F1A8 80 7F 00 34 */ lwz r3, 0x34(r31) +/* 8024224C 0023F1AC 38 80 00 01 */ li r4, 1 +/* 80242250 0023F1B0 38 A0 00 01 */ li r5, 1 +/* 80242254 0023F1B4 48 08 84 95 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80242258 0023F1B8 80 7F 00 34 */ lwz r3, 0x34(r31) +/* 8024225C 0023F1BC C0 3E 00 08 */ lfs f1, 8(r30) +/* 80242260 0023F1C0 48 08 3A 79 */ bl SetMinVal__15CGuiSliderGroupFf +/* 80242264 0023F1C4 80 7F 00 34 */ lwz r3, 0x34(r31) +/* 80242268 0023F1C8 C0 3E 00 0C */ lfs f1, 0xc(r30) +/* 8024226C 0023F1CC 48 08 3A 95 */ bl SetMaxVal__15CGuiSliderGroupFf +/* 80242270 0023F1D0 80 7F 00 34 */ lwz r3, 0x34(r31) +/* 80242274 0023F1D4 C0 3E 00 10 */ lfs f1, 0x10(r30) +/* 80242278 0023F1D8 48 08 3A 59 */ bl SetIncrement__15CGuiSliderGroupFf +/* 8024227C 0023F1DC 80 7E 00 00 */ lwz r3, 0(r30) +/* 80242280 0023F1E0 48 00 20 65 */ bl GetOption__11CGameOptionF11EGameOption +/* 80242284 0023F1E4 6C 63 80 00 */ xoris r3, r3, 0x8000 +/* 80242288 0023F1E8 3C 00 43 30 */ lis r0, 0x4330 +/* 8024228C 0023F1EC 90 61 01 2C */ stw r3, 0x12c(r1) +/* 80242290 0023F1F0 C8 22 B8 18 */ lfd f1, lbl_805AD538@sda21(r2) +/* 80242294 0023F1F4 90 01 01 28 */ stw r0, 0x128(r1) +/* 80242298 0023F1F8 80 7F 00 34 */ lwz r3, 0x34(r31) +/* 8024229C 0023F1FC C8 01 01 28 */ lfd f0, 0x128(r1) +/* 802422A0 0023F200 EC 20 08 28 */ fsubs f1, f0, f1 +/* 802422A4 0023F204 48 08 3A 85 */ bl SetCurVal__15CGuiSliderGroupFf +/* 802422A8 0023F208 80 9F 00 28 */ lwz r4, 0x28(r31) +/* 802422AC 0023F20C 3C 00 43 30 */ lis r0, 0x4330 +/* 802422B0 0023F210 C0 22 B8 10 */ lfs f1, lbl_805AD530@sda21(r2) +/* 802422B4 0023F214 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 802422B8 0023F218 80 84 00 C4 */ lwz r4, 0xc4(r4) +/* 802422BC 0023F21C 90 01 01 30 */ stw r0, 0x130(r1) +/* 802422C0 0023F220 FC 40 08 90 */ fmr f2, f1 +/* 802422C4 0023F224 6C 80 80 00 */ xoris r0, r4, 0x8000 +/* 802422C8 0023F228 C8 62 B8 18 */ lfd f3, lbl_805AD538@sda21(r2) +/* 802422CC 0023F22C 90 01 01 34 */ stw r0, 0x134(r1) +/* 802422D0 0023F230 C0 9F 00 38 */ lfs f4, 0x38(r31) +/* 802422D4 0023F234 C8 01 01 30 */ lfd f0, 0x130(r1) +/* 802422D8 0023F238 EC 00 18 28 */ fsubs f0, f0, f3 +/* 802422DC 0023F23C EC 64 00 32 */ fmuls f3, f4, f0 +/* 802422E0 0023F240 48 0D 0E A9 */ bl Translate__12CTransform4fFfff +/* 802422E4 0023F244 80 BF 00 34 */ lwz r5, 0x34(r31) +/* 802422E8 0023F248 38 61 00 F8 */ addi r3, r1, 0xf8 +/* 802422EC 0023F24C 38 81 00 C8 */ addi r4, r1, 0xc8 +/* 802422F0 0023F250 38 A5 00 74 */ addi r5, r5, 0x74 +/* 802422F4 0023F254 48 0D 06 5D */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 802422F8 0023F258 83 FF 00 34 */ lwz r31, 0x34(r31) +/* 802422FC 0023F25C 38 81 00 F8 */ addi r4, r1, 0xf8 +/* 80242300 0023F260 38 7F 00 04 */ addi r3, r31, 4 +/* 80242304 0023F264 48 0D 08 3D */ bl __as__12CTransform4fFRC12CTransform4f +/* 80242308 0023F268 7F E3 FB 78 */ mr r3, r31 +/* 8024230C 0023F26C 48 08 24 DD */ bl RecalculateTransforms__10CGuiObjectFv +/* 80242310 0023F270 48 00 01 50 */ b lbl_80242460 +lbl_80242314: +/* 80242314 0023F274 80 7E 00 00 */ lwz r3, 0(r30) +/* 80242318 0023F278 48 00 1F CD */ bl GetOption__11CGameOptionF11EGameOption +/* 8024231C 0023F27C 80 BF 00 2C */ lwz r5, 0x2c(r31) +/* 80242320 0023F280 38 80 00 01 */ li r4, 1 +/* 80242324 0023F284 80 05 00 C4 */ lwz r0, 0xc4(r5) +/* 80242328 0023F288 90 05 00 C8 */ stw r0, 0xc8(r5) +/* 8024232C 0023F28C 90 65 00 C4 */ stw r3, 0xc4(r5) +/* 80242330 0023F290 80 7F 00 2C */ lwz r3, 0x2c(r31) +/* 80242334 0023F294 48 08 82 F9 */ bl SetIsVisible__10CGuiWidgetFb +/* 80242338 0023F298 80 7F 00 2C */ lwz r3, 0x2c(r31) +/* 8024233C 0023F29C 38 80 00 01 */ li r4, 1 +/* 80242340 0023F2A0 48 08 82 A5 */ bl SetIsActive__10CGuiWidgetFb +/* 80242344 0023F2A4 80 9F 00 28 */ lwz r4, 0x28(r31) +/* 80242348 0023F2A8 3C 00 43 30 */ lis r0, 0x4330 +/* 8024234C 0023F2AC C0 22 B8 10 */ lfs f1, lbl_805AD530@sda21(r2) +/* 80242350 0023F2B0 38 61 00 68 */ addi r3, r1, 0x68 +/* 80242354 0023F2B4 80 84 00 C4 */ lwz r4, 0xc4(r4) +/* 80242358 0023F2B8 90 01 01 30 */ stw r0, 0x130(r1) +/* 8024235C 0023F2BC FC 40 08 90 */ fmr f2, f1 +/* 80242360 0023F2C0 6C 80 80 00 */ xoris r0, r4, 0x8000 +/* 80242364 0023F2C4 C8 62 B8 18 */ lfd f3, lbl_805AD538@sda21(r2) +/* 80242368 0023F2C8 90 01 01 34 */ stw r0, 0x134(r1) +/* 8024236C 0023F2CC C0 9F 00 38 */ lfs f4, 0x38(r31) +/* 80242370 0023F2D0 C8 01 01 30 */ lfd f0, 0x130(r1) +/* 80242374 0023F2D4 EC 00 18 28 */ fsubs f0, f0, f3 +/* 80242378 0023F2D8 EC 64 00 32 */ fmuls f3, f4, f0 +/* 8024237C 0023F2DC 48 0D 0E 0D */ bl Translate__12CTransform4fFfff +/* 80242380 0023F2E0 80 BF 00 2C */ lwz r5, 0x2c(r31) +/* 80242384 0023F2E4 38 61 00 98 */ addi r3, r1, 0x98 +/* 80242388 0023F2E8 38 81 00 68 */ addi r4, r1, 0x68 +/* 8024238C 0023F2EC 38 A5 00 74 */ addi r5, r5, 0x74 +/* 80242390 0023F2F0 48 0D 05 C1 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80242394 0023F2F4 83 DF 00 2C */ lwz r30, 0x2c(r31) +/* 80242398 0023F2F8 38 81 00 98 */ addi r4, r1, 0x98 +/* 8024239C 0023F2FC 38 7E 00 04 */ addi r3, r30, 4 +/* 802423A0 0023F300 48 0D 07 A1 */ bl __as__12CTransform4fFRC12CTransform4f +/* 802423A4 0023F304 7F C3 F3 78 */ mr r3, r30 +/* 802423A8 0023F308 48 08 24 41 */ bl RecalculateTransforms__10CGuiObjectFv +/* 802423AC 0023F30C 80 9F 00 2C */ lwz r4, 0x2c(r31) +/* 802423B0 0023F310 7F E3 FB 78 */ mr r3, r31 +/* 802423B4 0023F314 4B FF F7 D5 */ bl SetTableColors__21SOptionsFrontEndFrameFP14CGuiTableGroup +/* 802423B8 0023F318 48 00 00 A8 */ b lbl_80242460 +lbl_802423BC: +/* 802423BC 0023F31C 80 7E 00 00 */ lwz r3, 0(r30) +/* 802423C0 0023F320 48 00 1F 25 */ bl GetOption__11CGameOptionF11EGameOption +/* 802423C4 0023F324 80 BF 00 30 */ lwz r5, 0x30(r31) +/* 802423C8 0023F328 38 80 00 01 */ li r4, 1 +/* 802423CC 0023F32C 80 05 00 C4 */ lwz r0, 0xc4(r5) +/* 802423D0 0023F330 90 05 00 C8 */ stw r0, 0xc8(r5) +/* 802423D4 0023F334 90 65 00 C4 */ stw r3, 0xc4(r5) +/* 802423D8 0023F338 80 7F 00 30 */ lwz r3, 0x30(r31) +/* 802423DC 0023F33C 48 08 82 51 */ bl SetIsVisible__10CGuiWidgetFb +/* 802423E0 0023F340 80 7F 00 30 */ lwz r3, 0x30(r31) +/* 802423E4 0023F344 38 80 00 01 */ li r4, 1 +/* 802423E8 0023F348 48 08 81 FD */ bl SetIsActive__10CGuiWidgetFb +/* 802423EC 0023F34C 80 9F 00 28 */ lwz r4, 0x28(r31) +/* 802423F0 0023F350 3C 00 43 30 */ lis r0, 0x4330 +/* 802423F4 0023F354 C0 22 B8 10 */ lfs f1, lbl_805AD530@sda21(r2) +/* 802423F8 0023F358 38 61 00 08 */ addi r3, r1, 8 +/* 802423FC 0023F35C 80 84 00 C4 */ lwz r4, 0xc4(r4) +/* 80242400 0023F360 90 01 01 30 */ stw r0, 0x130(r1) +/* 80242404 0023F364 FC 40 08 90 */ fmr f2, f1 +/* 80242408 0023F368 6C 80 80 00 */ xoris r0, r4, 0x8000 +/* 8024240C 0023F36C C8 62 B8 18 */ lfd f3, lbl_805AD538@sda21(r2) +/* 80242410 0023F370 90 01 01 34 */ stw r0, 0x134(r1) +/* 80242414 0023F374 C0 9F 00 38 */ lfs f4, 0x38(r31) +/* 80242418 0023F378 C8 01 01 30 */ lfd f0, 0x130(r1) +/* 8024241C 0023F37C EC 00 18 28 */ fsubs f0, f0, f3 +/* 80242420 0023F380 EC 64 00 32 */ fmuls f3, f4, f0 +/* 80242424 0023F384 48 0D 0D 65 */ bl Translate__12CTransform4fFfff +/* 80242428 0023F388 80 BF 00 30 */ lwz r5, 0x30(r31) +/* 8024242C 0023F38C 38 61 00 38 */ addi r3, r1, 0x38 +/* 80242430 0023F390 38 81 00 08 */ addi r4, r1, 8 +/* 80242434 0023F394 38 A5 00 74 */ addi r5, r5, 0x74 +/* 80242438 0023F398 48 0D 05 19 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 8024243C 0023F39C 83 DF 00 30 */ lwz r30, 0x30(r31) +/* 80242440 0023F3A0 38 81 00 38 */ addi r4, r1, 0x38 +/* 80242444 0023F3A4 38 7E 00 04 */ addi r3, r30, 4 +/* 80242448 0023F3A8 48 0D 06 F9 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8024244C 0023F3AC 7F C3 F3 78 */ mr r3, r30 +/* 80242450 0023F3B0 48 08 23 99 */ bl RecalculateTransforms__10CGuiObjectFv +/* 80242454 0023F3B4 80 9F 00 30 */ lwz r4, 0x30(r31) +/* 80242458 0023F3B8 7F E3 FB 78 */ mr r3, r31 +/* 8024245C 0023F3BC 4B FF F7 2D */ bl SetTableColors__21SOptionsFrontEndFrameFP14CGuiTableGroup +lbl_80242460: +/* 80242460 0023F3C0 80 01 01 44 */ lwz r0, 0x144(r1) +/* 80242464 0023F3C4 83 E1 01 3C */ lwz r31, 0x13c(r1) +/* 80242468 0023F3C8 83 C1 01 38 */ lwz r30, 0x138(r1) +/* 8024246C 0023F3CC 7C 08 03 A6 */ mtlr r0 +/* 80242470 0023F3D0 38 21 01 40 */ addi r1, r1, 0x140 +/* 80242474 0023F3D4 4E 80 00 20 */ blr + +.global SetRightUIText__21SOptionsFrontEndFrameFv +SetRightUIText__21SOptionsFrontEndFrameFv: +/* 80242478 0023F3D8 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8024247C 0023F3DC 7C 08 02 A6 */ mflr r0 +/* 80242480 0023F3E0 3C 80 80 3F */ lis r4, lbl_803E8720@ha +/* 80242484 0023F3E4 90 01 00 44 */ stw r0, 0x44(r1) +/* 80242488 0023F3E8 38 04 87 20 */ addi r0, r4, lbl_803E8720@l +/* 8024248C 0023F3EC BF 61 00 2C */ stmw r27, 0x2c(r1) +/* 80242490 0023F3F0 7C 7E 1B 78 */ mr r30, r3 +/* 80242494 0023F3F4 3B E0 00 00 */ li r31, 0 +/* 80242498 0023F3F8 3B 80 00 00 */ li r28, 0 +/* 8024249C 0023F3FC 80 A3 00 24 */ lwz r5, 0x24(r3) +/* 802424A0 0023F400 3C 60 80 3D */ lis r3, lbl_803D45B4@ha +/* 802424A4 0023F404 3B A3 45 B4 */ addi r29, r3, lbl_803D45B4@l +/* 802424A8 0023F408 80 85 00 C4 */ lwz r4, 0xc4(r5) +/* 802424AC 0023F40C 54 83 18 38 */ slwi r3, r4, 3 +/* 802424B0 0023F410 7F 60 1A 14 */ add r27, r0, r3 +lbl_802424B4: +/* 802424B4 0023F414 7F A4 EB 78 */ mr r4, r29 +/* 802424B8 0023F418 7F E5 FB 78 */ mr r5, r31 +/* 802424BC 0023F41C 38 61 00 08 */ addi r3, r1, 8 +/* 802424C0 0023F420 4C C6 31 82 */ crclr 6 +/* 802424C4 0023F424 48 14 B8 19 */ bl sprintf +/* 802424C8 0023F428 80 1B 00 00 */ lwz r0, 0(r27) +/* 802424CC 0023F42C 7C 1F 00 00 */ cmpw r31, r0 +/* 802424D0 0023F430 40 80 00 54 */ bge lbl_80242524 +/* 802424D4 0023F434 80 9B 00 04 */ lwz r4, 4(r27) +/* 802424D8 0023F438 38 1C 00 04 */ addi r0, r28, 4 +/* 802424DC 0023F43C 80 7E 00 20 */ lwz r3, 0x20(r30) +/* 802424E0 0023F440 7C 84 00 2E */ lwzx r4, r4, r0 +/* 802424E4 0023F444 48 11 42 19 */ bl GetString__12CStringTableCFi +/* 802424E8 0023F448 7C 65 1B 78 */ mr r5, r3 +/* 802424EC 0023F44C 80 7E 00 1C */ lwz r3, 0x1c(r30) +/* 802424F0 0023F450 38 81 00 08 */ addi r4, r1, 8 +/* 802424F4 0023F454 48 00 1E DD */ bl sub_802443d0 +/* 802424F8 0023F458 80 7E 00 28 */ lwz r3, 0x28(r30) +/* 802424FC 0023F45C 7F E4 FB 78 */ mr r4, r31 +/* 80242500 0023F460 81 83 00 00 */ lwz r12, 0(r3) +/* 80242504 0023F464 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 80242508 0023F468 7D 89 03 A6 */ mtctr r12 +/* 8024250C 0023F46C 4E 80 04 21 */ bctrl +/* 80242510 0023F470 88 03 00 B6 */ lbz r0, 0xb6(r3) +/* 80242514 0023F474 38 80 00 01 */ li r4, 1 +/* 80242518 0023F478 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 8024251C 0023F47C 98 03 00 B6 */ stb r0, 0xb6(r3) +/* 80242520 0023F480 48 00 00 3C */ b lbl_8024255C +lbl_80242524: +/* 80242524 0023F484 80 7E 00 1C */ lwz r3, 0x1c(r30) +/* 80242528 0023F488 38 81 00 08 */ addi r4, r1, 8 +/* 8024252C 0023F48C 38 AD 96 DC */ addi r5, r13, lbl_805A829C@sda21 +/* 80242530 0023F490 48 00 1E A1 */ bl sub_802443d0 +/* 80242534 0023F494 80 7E 00 28 */ lwz r3, 0x28(r30) +/* 80242538 0023F498 7F E4 FB 78 */ mr r4, r31 +/* 8024253C 0023F49C 81 83 00 00 */ lwz r12, 0(r3) +/* 80242540 0023F4A0 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 80242544 0023F4A4 7D 89 03 A6 */ mtctr r12 +/* 80242548 0023F4A8 4E 80 04 21 */ bctrl +/* 8024254C 0023F4AC 88 03 00 B6 */ lbz r0, 0xb6(r3) +/* 80242550 0023F4B0 38 80 00 00 */ li r4, 0 +/* 80242554 0023F4B4 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 80242558 0023F4B8 98 03 00 B6 */ stb r0, 0xb6(r3) +lbl_8024255C: +/* 8024255C 0023F4BC 3B FF 00 01 */ addi r31, r31, 1 +/* 80242560 0023F4C0 3B 9C 00 18 */ addi r28, r28, 0x18 +/* 80242564 0023F4C4 2C 1F 00 05 */ cmpwi r31, 5 +/* 80242568 0023F4C8 41 80 FF 4C */ blt lbl_802424B4 +/* 8024256C 0023F4CC BB 61 00 2C */ lmw r27, 0x2c(r1) +/* 80242570 0023F4D0 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80242574 0023F4D4 7C 08 03 A6 */ mtlr r0 +/* 80242578 0023F4D8 38 21 00 40 */ addi r1, r1, 0x40 +/* 8024257C 0023F4DC 4E 80 00 20 */ blr + +.global FinishedLoading__21SOptionsFrontEndFrameFv +FinishedLoading__21SOptionsFrontEndFrameFv: +/* 80242580 0023F4E0 94 21 FD D0 */ stwu r1, -0x230(r1) +/* 80242584 0023F4E4 7C 08 02 A6 */ mflr r0 +/* 80242588 0023F4E8 90 01 02 34 */ stw r0, 0x234(r1) +/* 8024258C 0023F4EC DB E1 02 20 */ stfd f31, 0x220(r1) +/* 80242590 0023F4F0 F3 E1 02 28 */ psq_st f31, 552(r1), 0, qr0 +/* 80242594 0023F4F4 93 E1 02 1C */ stw r31, 0x21c(r1) +/* 80242598 0023F4F8 93 C1 02 18 */ stw r30, 0x218(r1) +/* 8024259C 0023F4FC 93 A1 02 14 */ stw r29, 0x214(r1) +/* 802425A0 0023F500 7C 7E 1B 78 */ mr r30, r3 +/* 802425A4 0023F504 3C 60 80 3D */ lis r3, lbl_803D45B4@ha +/* 802425A8 0023F508 38 83 45 B4 */ addi r4, r3, lbl_803D45B4@l +/* 802425AC 0023F50C 3C A0 80 3F */ lis r5, lbl_803E8708@ha +/* 802425B0 0023F510 80 7E 00 1C */ lwz r3, 0x1c(r30) +/* 802425B4 0023F514 3B E5 87 08 */ addi r31, r5, lbl_803E8708@l +/* 802425B8 0023F518 38 84 00 11 */ addi r4, r4, 0x11 +/* 802425BC 0023F51C 48 07 FB 99 */ bl FindWidget__9CGuiFrameCFPCc +/* 802425C0 0023F520 90 7E 00 24 */ stw r3, 0x24(r30) +/* 802425C4 0023F524 3C 60 80 3D */ lis r3, lbl_803D45B4@ha +/* 802425C8 0023F528 38 83 45 B4 */ addi r4, r3, lbl_803D45B4@l +/* 802425CC 0023F52C 80 7E 00 1C */ lwz r3, 0x1c(r30) +/* 802425D0 0023F530 38 84 00 25 */ addi r4, r4, 0x25 +/* 802425D4 0023F534 48 07 FB 81 */ bl FindWidget__9CGuiFrameCFPCc +/* 802425D8 0023F538 90 7E 00 28 */ stw r3, 0x28(r30) +/* 802425DC 0023F53C 3C 60 80 3D */ lis r3, lbl_803D45B4@ha +/* 802425E0 0023F540 38 83 45 B4 */ addi r4, r3, lbl_803D45B4@l +/* 802425E4 0023F544 80 7E 00 1C */ lwz r3, 0x1c(r30) +/* 802425E8 0023F548 38 84 00 3A */ addi r4, r4, 0x3a +/* 802425EC 0023F54C 48 07 FB 69 */ bl FindWidget__9CGuiFrameCFPCc +/* 802425F0 0023F550 90 7E 00 2C */ stw r3, 0x2c(r30) +/* 802425F4 0023F554 3C 60 80 3D */ lis r3, lbl_803D45B4@ha +/* 802425F8 0023F558 38 83 45 B4 */ addi r4, r3, lbl_803D45B4@l +/* 802425FC 0023F55C 80 7E 00 1C */ lwz r3, 0x1c(r30) +/* 80242600 0023F560 38 84 00 4C */ addi r4, r4, 0x4c +/* 80242604 0023F564 48 07 FB 51 */ bl FindWidget__9CGuiFrameCFPCc +/* 80242608 0023F568 90 7E 00 30 */ stw r3, 0x30(r30) +/* 8024260C 0023F56C 3C 60 80 3D */ lis r3, lbl_803D45B4@ha +/* 80242610 0023F570 38 83 45 B4 */ addi r4, r3, lbl_803D45B4@l +/* 80242614 0023F574 80 7E 00 1C */ lwz r3, 0x1c(r30) +/* 80242618 0023F578 38 84 00 5E */ addi r4, r4, 0x5e +/* 8024261C 0023F57C 48 07 FB 39 */ bl FindWidget__9CGuiFrameCFPCc +/* 80242620 0023F580 90 7E 00 34 */ stw r3, 0x34(r30) +/* 80242624 0023F584 38 61 00 68 */ addi r3, r1, 0x68 +/* 80242628 0023F588 38 81 01 0C */ addi r4, r1, 0x10c +/* 8024262C 0023F58C 38 A0 00 0C */ li r5, 0xc +/* 80242630 0023F590 80 FF 00 64 */ lwz r7, 0x64(r31) +/* 80242634 0023F594 80 DF 00 68 */ lwz r6, 0x68(r31) +/* 80242638 0023F598 80 1F 00 6C */ lwz r0, 0x6c(r31) +/* 8024263C 0023F59C 90 E1 01 0C */ stw r7, 0x10c(r1) +/* 80242640 0023F5A0 90 C1 01 10 */ stw r6, 0x110(r1) +/* 80242644 0023F5A4 90 01 01 14 */ stw r0, 0x114(r1) +/* 80242648 0023F5A8 4B DC 0E 49 */ bl memcpy +/* 8024264C 0023F5AC 3C 60 80 24 */ lis r3, sub_80242c80@ha +/* 80242650 0023F5B0 93 C1 01 DC */ stw r30, 0x1dc(r1) +/* 80242654 0023F5B4 38 03 2C 80 */ addi r0, r3, sub_80242c80@l +/* 80242658 0023F5B8 38 61 01 E0 */ addi r3, r1, 0x1e0 +/* 8024265C 0023F5BC 90 01 01 D8 */ stw r0, 0x1d8(r1) +/* 80242660 0023F5C0 38 81 00 68 */ addi r4, r1, 0x68 +/* 80242664 0023F5C4 38 A0 00 0C */ li r5, 0xc +/* 80242668 0023F5C8 4B DC 0E 29 */ bl memcpy +/* 8024266C 0023F5CC 80 7E 00 24 */ lwz r3, 0x24(r30) +/* 80242670 0023F5D0 38 81 01 D8 */ addi r4, r1, 0x1d8 +/* 80242674 0023F5D4 48 08 41 E5 */ bl "SetMenuAdvanceCallback__14CGuiTableGroupFRC29TFunctor1" +/* 80242678 0023F5D8 80 FF 00 70 */ lwz r7, 0x70(r31) +/* 8024267C 0023F5DC 38 61 00 5C */ addi r3, r1, 0x5c +/* 80242680 0023F5E0 80 DF 00 74 */ lwz r6, 0x74(r31) +/* 80242684 0023F5E4 38 81 01 00 */ addi r4, r1, 0x100 +/* 80242688 0023F5E8 80 1F 00 78 */ lwz r0, 0x78(r31) +/* 8024268C 0023F5EC 38 A0 00 0C */ li r5, 0xc +/* 80242690 0023F5F0 90 E1 01 00 */ stw r7, 0x100(r1) +/* 80242694 0023F5F4 90 C1 01 04 */ stw r6, 0x104(r1) +/* 80242698 0023F5F8 90 01 01 08 */ stw r0, 0x108(r1) +/* 8024269C 0023F5FC 4B DC 0D F5 */ bl memcpy +/* 802426A0 0023F600 3C 60 80 24 */ lis r3, sub_80242c1c@ha +/* 802426A4 0023F604 93 C1 01 C4 */ stw r30, 0x1c4(r1) +/* 802426A8 0023F608 38 03 2C 1C */ addi r0, r3, sub_80242c1c@l +/* 802426AC 0023F60C 38 61 01 C8 */ addi r3, r1, 0x1c8 +/* 802426B0 0023F610 90 01 01 C0 */ stw r0, 0x1c0(r1) +/* 802426B4 0023F614 38 81 00 5C */ addi r4, r1, 0x5c +/* 802426B8 0023F618 38 A0 00 0C */ li r5, 0xc +/* 802426BC 0023F61C 4B DC 0D D5 */ bl memcpy +/* 802426C0 0023F620 80 7E 00 24 */ lwz r3, 0x24(r30) +/* 802426C4 0023F624 38 81 01 C0 */ addi r4, r1, 0x1c0 +/* 802426C8 0023F628 48 08 41 29 */ bl "SetMenuSelectionChangeCallback__14CGuiTableGroupFRC35TFunctor3" +/* 802426CC 0023F62C 80 7E 00 24 */ lwz r3, 0x24(r30) +/* 802426D0 0023F630 38 80 00 00 */ li r4, 0 +/* 802426D4 0023F634 81 83 00 00 */ lwz r12, 0(r3) +/* 802426D8 0023F638 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 802426DC 0023F63C 7D 89 03 A6 */ mtctr r12 +/* 802426E0 0023F640 4E 80 04 21 */ bctrl +/* 802426E4 0023F644 7C 64 1B 78 */ mr r4, r3 +/* 802426E8 0023F648 38 61 00 E8 */ addi r3, r1, 0xe8 +/* 802426EC 0023F64C 48 08 7F C1 */ bl GetIdlePosition__10CGuiWidgetFv +/* 802426F0 0023F650 80 7E 00 24 */ lwz r3, 0x24(r30) +/* 802426F4 0023F654 38 80 00 01 */ li r4, 1 +/* 802426F8 0023F658 C3 E1 00 F0 */ lfs f31, 0xf0(r1) +/* 802426FC 0023F65C 81 83 00 00 */ lwz r12, 0(r3) +/* 80242700 0023F660 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 80242704 0023F664 7D 89 03 A6 */ mtctr r12 +/* 80242708 0023F668 4E 80 04 21 */ bctrl +/* 8024270C 0023F66C 7C 64 1B 78 */ mr r4, r3 +/* 80242710 0023F670 38 61 00 F4 */ addi r3, r1, 0xf4 +/* 80242714 0023F674 48 08 7F 99 */ bl GetIdlePosition__10CGuiWidgetFv +/* 80242718 0023F678 C0 01 00 FC */ lfs f0, 0xfc(r1) +/* 8024271C 0023F67C 38 61 00 50 */ addi r3, r1, 0x50 +/* 80242720 0023F680 38 81 00 DC */ addi r4, r1, 0xdc +/* 80242724 0023F684 38 A0 00 0C */ li r5, 0xc +/* 80242728 0023F688 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 8024272C 0023F68C D0 1E 00 38 */ stfs f0, 0x38(r30) +/* 80242730 0023F690 80 FF 00 7C */ lwz r7, 0x7c(r31) +/* 80242734 0023F694 80 DF 00 80 */ lwz r6, 0x80(r31) +/* 80242738 0023F698 80 1F 00 84 */ lwz r0, 0x84(r31) +/* 8024273C 0023F69C 90 E1 00 DC */ stw r7, 0xdc(r1) +/* 80242740 0023F6A0 90 C1 00 E0 */ stw r6, 0xe0(r1) +/* 80242744 0023F6A4 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 80242748 0023F6A8 4B DC 0D 49 */ bl memcpy +/* 8024274C 0023F6AC 3C 60 80 24 */ lis r3, sub_80242c1c@ha +/* 80242750 0023F6B0 93 C1 01 AC */ stw r30, 0x1ac(r1) +/* 80242754 0023F6B4 38 03 2C 1C */ addi r0, r3, sub_80242c1c@l +/* 80242758 0023F6B8 38 61 01 B0 */ addi r3, r1, 0x1b0 +/* 8024275C 0023F6BC 90 01 01 A8 */ stw r0, 0x1a8(r1) +/* 80242760 0023F6C0 38 81 00 50 */ addi r4, r1, 0x50 +/* 80242764 0023F6C4 38 A0 00 0C */ li r5, 0xc +/* 80242768 0023F6C8 4B DC 0D 29 */ bl memcpy +/* 8024276C 0023F6CC 80 7E 00 28 */ lwz r3, 0x28(r30) +/* 80242770 0023F6D0 38 81 01 A8 */ addi r4, r1, 0x1a8 +/* 80242774 0023F6D4 48 08 40 7D */ bl "SetMenuSelectionChangeCallback__14CGuiTableGroupFRC35TFunctor3" +/* 80242778 0023F6D8 80 FF 00 88 */ lwz r7, 0x88(r31) +/* 8024277C 0023F6DC 38 61 00 44 */ addi r3, r1, 0x44 +/* 80242780 0023F6E0 80 DF 00 8C */ lwz r6, 0x8c(r31) +/* 80242784 0023F6E4 38 81 00 D0 */ addi r4, r1, 0xd0 +/* 80242788 0023F6E8 80 1F 00 90 */ lwz r0, 0x90(r31) +/* 8024278C 0023F6EC 38 A0 00 0C */ li r5, 0xc +/* 80242790 0023F6F0 90 E1 00 D0 */ stw r7, 0xd0(r1) +/* 80242794 0023F6F4 90 C1 00 D4 */ stw r6, 0xd4(r1) +/* 80242798 0023F6F8 90 01 00 D8 */ stw r0, 0xd8(r1) +/* 8024279C 0023F6FC 4B DC 0C F5 */ bl memcpy +/* 802427A0 0023F700 3C 60 80 24 */ lis r3, sub_80242c80@ha +/* 802427A4 0023F704 93 C1 01 94 */ stw r30, 0x194(r1) +/* 802427A8 0023F708 38 03 2C 80 */ addi r0, r3, sub_80242c80@l +/* 802427AC 0023F70C 38 61 01 98 */ addi r3, r1, 0x198 +/* 802427B0 0023F710 90 01 01 90 */ stw r0, 0x190(r1) +/* 802427B4 0023F714 38 81 00 44 */ addi r4, r1, 0x44 +/* 802427B8 0023F718 38 A0 00 0C */ li r5, 0xc +/* 802427BC 0023F71C 4B DC 0C D5 */ bl memcpy +/* 802427C0 0023F720 80 7E 00 28 */ lwz r3, 0x28(r30) +/* 802427C4 0023F724 38 81 01 90 */ addi r4, r1, 0x190 +/* 802427C8 0023F728 48 08 40 5D */ bl "SetMenuCancelCallback__14CGuiTableGroupFRC29TFunctor1" +/* 802427CC 0023F72C 80 FF 00 94 */ lwz r7, 0x94(r31) +/* 802427D0 0023F730 38 61 00 38 */ addi r3, r1, 0x38 +/* 802427D4 0023F734 80 DF 00 98 */ lwz r6, 0x98(r31) +/* 802427D8 0023F738 38 81 00 C4 */ addi r4, r1, 0xc4 +/* 802427DC 0023F73C 80 1F 00 9C */ lwz r0, 0x9c(r31) +/* 802427E0 0023F740 38 A0 00 0C */ li r5, 0xc +/* 802427E4 0023F744 90 E1 00 C4 */ stw r7, 0xc4(r1) +/* 802427E8 0023F748 90 C1 00 C8 */ stw r6, 0xc8(r1) +/* 802427EC 0023F74C 90 01 00 CC */ stw r0, 0xcc(r1) +/* 802427F0 0023F750 4B DC 0C A1 */ bl memcpy +/* 802427F4 0023F754 3C 60 80 24 */ lis r3, sub_80242c1c@ha +/* 802427F8 0023F758 93 C1 01 7C */ stw r30, 0x17c(r1) +/* 802427FC 0023F75C 38 03 2C 1C */ addi r0, r3, sub_80242c1c@l +/* 80242800 0023F760 38 61 01 80 */ addi r3, r1, 0x180 +/* 80242804 0023F764 90 01 01 78 */ stw r0, 0x178(r1) +/* 80242808 0023F768 38 81 00 38 */ addi r4, r1, 0x38 +/* 8024280C 0023F76C 38 A0 00 0C */ li r5, 0xc +/* 80242810 0023F770 4B DC 0C 81 */ bl memcpy +/* 80242814 0023F774 80 7E 00 2C */ lwz r3, 0x2c(r30) +/* 80242818 0023F778 38 81 01 78 */ addi r4, r1, 0x178 +/* 8024281C 0023F77C 48 08 3F D5 */ bl "SetMenuSelectionChangeCallback__14CGuiTableGroupFRC35TFunctor3" +/* 80242820 0023F780 80 FF 00 A0 */ lwz r7, 0xa0(r31) +/* 80242824 0023F784 38 61 00 2C */ addi r3, r1, 0x2c +/* 80242828 0023F788 80 DF 00 A4 */ lwz r6, 0xa4(r31) +/* 8024282C 0023F78C 38 81 00 B8 */ addi r4, r1, 0xb8 +/* 80242830 0023F790 80 1F 00 A8 */ lwz r0, 0xa8(r31) +/* 80242834 0023F794 38 A0 00 0C */ li r5, 0xc +/* 80242838 0023F798 90 E1 00 B8 */ stw r7, 0xb8(r1) +/* 8024283C 0023F79C 90 C1 00 BC */ stw r6, 0xbc(r1) +/* 80242840 0023F7A0 90 01 00 C0 */ stw r0, 0xc0(r1) +/* 80242844 0023F7A4 4B DC 0C 4D */ bl memcpy +/* 80242848 0023F7A8 3C 60 80 24 */ lis r3, sub_80242c80@ha +/* 8024284C 0023F7AC 93 C1 01 64 */ stw r30, 0x164(r1) +/* 80242850 0023F7B0 38 03 2C 80 */ addi r0, r3, sub_80242c80@l +/* 80242854 0023F7B4 38 61 01 68 */ addi r3, r1, 0x168 +/* 80242858 0023F7B8 90 01 01 60 */ stw r0, 0x160(r1) +/* 8024285C 0023F7BC 38 81 00 2C */ addi r4, r1, 0x2c +/* 80242860 0023F7C0 38 A0 00 0C */ li r5, 0xc +/* 80242864 0023F7C4 4B DC 0C 2D */ bl memcpy +/* 80242868 0023F7C8 80 7E 00 2C */ lwz r3, 0x2c(r30) +/* 8024286C 0023F7CC 38 81 01 60 */ addi r4, r1, 0x160 +/* 80242870 0023F7D0 48 08 3F B5 */ bl "SetMenuCancelCallback__14CGuiTableGroupFRC29TFunctor1" +/* 80242874 0023F7D4 80 FF 00 AC */ lwz r7, 0xac(r31) +/* 80242878 0023F7D8 38 61 00 20 */ addi r3, r1, 0x20 +/* 8024287C 0023F7DC 80 DF 00 B0 */ lwz r6, 0xb0(r31) +/* 80242880 0023F7E0 38 81 00 AC */ addi r4, r1, 0xac +/* 80242884 0023F7E4 80 1F 00 B4 */ lwz r0, 0xb4(r31) +/* 80242888 0023F7E8 38 A0 00 0C */ li r5, 0xc +/* 8024288C 0023F7EC 90 E1 00 AC */ stw r7, 0xac(r1) +/* 80242890 0023F7F0 90 C1 00 B0 */ stw r6, 0xb0(r1) +/* 80242894 0023F7F4 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 80242898 0023F7F8 4B DC 0B F9 */ bl memcpy +/* 8024289C 0023F7FC 3C 60 80 24 */ lis r3, sub_80242c1c@ha +/* 802428A0 0023F800 93 C1 01 4C */ stw r30, 0x14c(r1) +/* 802428A4 0023F804 38 03 2C 1C */ addi r0, r3, sub_80242c1c@l +/* 802428A8 0023F808 38 61 01 50 */ addi r3, r1, 0x150 +/* 802428AC 0023F80C 90 01 01 48 */ stw r0, 0x148(r1) +/* 802428B0 0023F810 38 81 00 20 */ addi r4, r1, 0x20 +/* 802428B4 0023F814 38 A0 00 0C */ li r5, 0xc +/* 802428B8 0023F818 4B DC 0B D9 */ bl memcpy +/* 802428BC 0023F81C 80 7E 00 30 */ lwz r3, 0x30(r30) +/* 802428C0 0023F820 38 81 01 48 */ addi r4, r1, 0x148 +/* 802428C4 0023F824 48 08 3F 2D */ bl "SetMenuSelectionChangeCallback__14CGuiTableGroupFRC35TFunctor3" +/* 802428C8 0023F828 80 FF 00 B8 */ lwz r7, 0xb8(r31) +/* 802428CC 0023F82C 38 61 00 14 */ addi r3, r1, 0x14 +/* 802428D0 0023F830 80 DF 00 BC */ lwz r6, 0xbc(r31) +/* 802428D4 0023F834 38 81 00 A0 */ addi r4, r1, 0xa0 +/* 802428D8 0023F838 80 1F 00 C0 */ lwz r0, 0xc0(r31) +/* 802428DC 0023F83C 38 A0 00 0C */ li r5, 0xc +/* 802428E0 0023F840 90 E1 00 A0 */ stw r7, 0xa0(r1) +/* 802428E4 0023F844 90 C1 00 A4 */ stw r6, 0xa4(r1) +/* 802428E8 0023F848 90 01 00 A8 */ stw r0, 0xa8(r1) +/* 802428EC 0023F84C 4B DC 0B A5 */ bl memcpy +/* 802428F0 0023F850 3C 60 80 24 */ lis r3, sub_80242c80@ha +/* 802428F4 0023F854 93 C1 01 34 */ stw r30, 0x134(r1) +/* 802428F8 0023F858 38 03 2C 80 */ addi r0, r3, sub_80242c80@l +/* 802428FC 0023F85C 38 61 01 38 */ addi r3, r1, 0x138 +/* 80242900 0023F860 90 01 01 30 */ stw r0, 0x130(r1) +/* 80242904 0023F864 38 81 00 14 */ addi r4, r1, 0x14 +/* 80242908 0023F868 38 A0 00 0C */ li r5, 0xc +/* 8024290C 0023F86C 4B DC 0B 85 */ bl memcpy +/* 80242910 0023F870 80 7E 00 30 */ lwz r3, 0x30(r30) +/* 80242914 0023F874 38 81 01 30 */ addi r4, r1, 0x130 +/* 80242918 0023F878 48 08 3F 0D */ bl "SetMenuCancelCallback__14CGuiTableGroupFRC29TFunctor1" +/* 8024291C 0023F87C 80 FF 00 C4 */ lwz r7, 0xc4(r31) +/* 80242920 0023F880 38 61 00 08 */ addi r3, r1, 8 +/* 80242924 0023F884 80 DF 00 C8 */ lwz r6, 0xc8(r31) +/* 80242928 0023F888 38 81 00 94 */ addi r4, r1, 0x94 +/* 8024292C 0023F88C 80 1F 00 CC */ lwz r0, 0xcc(r31) +/* 80242930 0023F890 38 A0 00 0C */ li r5, 0xc +/* 80242934 0023F894 90 E1 00 94 */ stw r7, 0x94(r1) +/* 80242938 0023F898 90 C1 00 98 */ stw r6, 0x98(r1) +/* 8024293C 0023F89C 90 01 00 9C */ stw r0, 0x9c(r1) +/* 80242940 0023F8A0 4B DC 0B 51 */ bl memcpy +/* 80242944 0023F8A4 3C 60 80 24 */ lis r3, sub_80242bb8@ha +/* 80242948 0023F8A8 93 C1 01 1C */ stw r30, 0x11c(r1) +/* 8024294C 0023F8AC 38 03 2B B8 */ addi r0, r3, sub_80242bb8@l +/* 80242950 0023F8B0 38 61 01 20 */ addi r3, r1, 0x120 +/* 80242954 0023F8B4 90 01 01 18 */ stw r0, 0x118(r1) +/* 80242958 0023F8B8 38 81 00 08 */ addi r4, r1, 8 +/* 8024295C 0023F8BC 38 A0 00 0C */ li r5, 0xc +/* 80242960 0023F8C0 4B DC 0B 31 */ bl memcpy +/* 80242964 0023F8C4 80 7E 00 34 */ lwz r3, 0x34(r30) +/* 80242968 0023F8C8 38 81 01 18 */ addi r4, r1, 0x118 +/* 8024296C 0023F8CC 48 08 32 F5 */ bl "SetSelectionChangedCallback__15CGuiSliderGroupFRC33TFunctor2" +/* 80242970 0023F8D0 80 7E 00 20 */ lwz r3, 0x20(r30) +/* 80242974 0023F8D4 38 80 00 5F */ li r4, 0x5f +/* 80242978 0023F8D8 48 11 3D 85 */ bl GetString__12CStringTableCFi +/* 8024297C 0023F8DC 3C 80 80 3D */ lis r4, lbl_803D45B4@ha +/* 80242980 0023F8E0 7C 65 1B 78 */ mr r5, r3 +/* 80242984 0023F8E4 38 84 45 B4 */ addi r4, r4, lbl_803D45B4@l +/* 80242988 0023F8E8 80 7E 00 1C */ lwz r3, 0x1c(r30) +/* 8024298C 0023F8EC 38 84 00 71 */ addi r4, r4, 0x71 +/* 80242990 0023F8F0 48 00 1A 41 */ bl sub_802443d0 +/* 80242994 0023F8F4 80 7E 00 20 */ lwz r3, 0x20(r30) +/* 80242998 0023F8F8 38 80 00 5E */ li r4, 0x5e +/* 8024299C 0023F8FC 48 11 3D 61 */ bl GetString__12CStringTableCFi +/* 802429A0 0023F900 3C 80 80 3D */ lis r4, lbl_803D45B4@ha +/* 802429A4 0023F904 7C 65 1B 78 */ mr r5, r3 +/* 802429A8 0023F908 38 84 45 B4 */ addi r4, r4, lbl_803D45B4@l +/* 802429AC 0023F90C 80 7E 00 1C */ lwz r3, 0x1c(r30) +/* 802429B0 0023F910 38 84 00 82 */ addi r4, r4, 0x82 +/* 802429B4 0023F914 48 00 1A 1D */ bl sub_802443d0 +/* 802429B8 0023F918 80 7E 00 20 */ lwz r3, 0x20(r30) +/* 802429BC 0023F91C 38 80 00 60 */ li r4, 0x60 +/* 802429C0 0023F920 48 11 3D 3D */ bl GetString__12CStringTableCFi +/* 802429C4 0023F924 3C 80 80 3D */ lis r4, lbl_803D45B4@ha +/* 802429C8 0023F928 7C 65 1B 78 */ mr r5, r3 +/* 802429CC 0023F92C 38 84 45 B4 */ addi r4, r4, lbl_803D45B4@l +/* 802429D0 0023F930 80 7E 00 1C */ lwz r3, 0x1c(r30) +/* 802429D4 0023F934 38 84 00 93 */ addi r4, r4, 0x93 +/* 802429D8 0023F938 48 00 19 F9 */ bl sub_802443d0 +/* 802429DC 0023F93C 80 7E 00 20 */ lwz r3, 0x20(r30) +/* 802429E0 0023F940 38 80 00 61 */ li r4, 0x61 +/* 802429E4 0023F944 48 11 3D 19 */ bl GetString__12CStringTableCFi +/* 802429E8 0023F948 3C 80 80 3D */ lis r4, lbl_803D45B4@ha +/* 802429EC 0023F94C 7C 65 1B 78 */ mr r5, r3 +/* 802429F0 0023F950 38 84 45 B4 */ addi r4, r4, lbl_803D45B4@l +/* 802429F4 0023F954 80 7E 00 1C */ lwz r3, 0x1c(r30) +/* 802429F8 0023F958 38 84 00 A4 */ addi r4, r4, 0xa4 +/* 802429FC 0023F95C 48 00 19 D5 */ bl sub_802443d0 +/* 80242A00 0023F960 80 7E 00 20 */ lwz r3, 0x20(r30) +/* 80242A04 0023F964 38 80 00 62 */ li r4, 0x62 +/* 80242A08 0023F968 48 11 3C F5 */ bl GetString__12CStringTableCFi +/* 80242A0C 0023F96C 3C 80 80 3D */ lis r4, lbl_803D45B4@ha +/* 80242A10 0023F970 7C 65 1B 78 */ mr r5, r3 +/* 80242A14 0023F974 38 84 45 B4 */ addi r4, r4, lbl_803D45B4@l +/* 80242A18 0023F978 80 7E 00 1C */ lwz r3, 0x1c(r30) +/* 80242A1C 0023F97C 38 84 00 B5 */ addi r4, r4, 0xb5 +/* 80242A20 0023F980 48 00 19 B1 */ bl sub_802443d0 +/* 80242A24 0023F984 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 80242A28 0023F988 38 80 00 63 */ li r4, 0x63 +/* 80242A2C 0023F98C 48 11 3C D1 */ bl GetString__12CStringTableCFi +/* 80242A30 0023F990 3C 80 80 3D */ lis r4, lbl_803D45B4@ha +/* 80242A34 0023F994 7C 65 1B 78 */ mr r5, r3 +/* 80242A38 0023F998 38 84 45 B4 */ addi r4, r4, lbl_803D45B4@l +/* 80242A3C 0023F99C 80 7E 00 1C */ lwz r3, 0x1c(r30) +/* 80242A40 0023F9A0 38 84 00 C6 */ addi r4, r4, 0xc6 +/* 80242A44 0023F9A4 48 00 19 8D */ bl sub_802443d0 +/* 80242A48 0023F9A8 3C 80 80 3D */ lis r4, lbl_803D45B4@ha +/* 80242A4C 0023F9AC 80 7E 00 1C */ lwz r3, 0x1c(r30) +/* 80242A50 0023F9B0 38 84 45 B4 */ addi r4, r4, lbl_803D45B4@l +/* 80242A54 0023F9B4 38 84 00 D5 */ addi r4, r4, 0xd5 +/* 80242A58 0023F9B8 48 07 F6 FD */ bl FindWidget__9CGuiFrameCFPCc +/* 80242A5C 0023F9BC 7C 7F 1B 79 */ or. r31, r3, r3 +/* 80242A60 0023F9C0 41 82 00 34 */ beq lbl_80242A94 +/* 80242A64 0023F9C4 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 80242A68 0023F9C8 38 80 00 55 */ li r4, 0x55 +/* 80242A6C 0023F9CC 48 11 3C 91 */ bl GetString__12CStringTableCFi +/* 80242A70 0023F9D0 7C 64 1B 78 */ mr r4, r3 +/* 80242A74 0023F9D4 38 61 00 84 */ addi r3, r1, 0x84 +/* 80242A78 0023F9D8 4B DD 2F 79 */ bl wstring_l__4rstlFPCw +/* 80242A7C 0023F9DC 38 7F 00 D4 */ addi r3, r31, 0xd4 +/* 80242A80 0023F9E0 38 81 00 84 */ addi r4, r1, 0x84 +/* 80242A84 0023F9E4 38 A0 00 00 */ li r5, 0 +/* 80242A88 0023F9E8 48 08 6D FD */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80242A8C 0023F9EC 38 61 00 84 */ addi r3, r1, 0x84 +/* 80242A90 0023F9F0 48 0F A6 A5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80242A94: +/* 80242A94 0023F9F4 3C 80 80 3D */ lis r4, lbl_803D45B4@ha +/* 80242A98 0023F9F8 80 7E 00 1C */ lwz r3, 0x1c(r30) +/* 80242A9C 0023F9FC 38 84 45 B4 */ addi r4, r4, lbl_803D45B4@l +/* 80242AA0 0023FA00 38 84 00 E6 */ addi r4, r4, 0xe6 +/* 80242AA4 0023FA04 48 07 F6 B1 */ bl FindWidget__9CGuiFrameCFPCc +/* 80242AA8 0023FA08 7C 7F 1B 79 */ or. r31, r3, r3 +/* 80242AAC 0023FA0C 41 82 00 34 */ beq lbl_80242AE0 +/* 80242AB0 0023FA10 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 80242AB4 0023FA14 38 80 00 52 */ li r4, 0x52 +/* 80242AB8 0023FA18 48 11 3C 45 */ bl GetString__12CStringTableCFi +/* 80242ABC 0023FA1C 7C 64 1B 78 */ mr r4, r3 +/* 80242AC0 0023FA20 38 61 00 74 */ addi r3, r1, 0x74 +/* 80242AC4 0023FA24 4B DD 2F 2D */ bl wstring_l__4rstlFPCw +/* 80242AC8 0023FA28 38 7F 00 D4 */ addi r3, r31, 0xd4 +/* 80242ACC 0023FA2C 38 81 00 74 */ addi r4, r1, 0x74 +/* 80242AD0 0023FA30 38 A0 00 00 */ li r5, 0 +/* 80242AD4 0023FA34 48 08 6D B1 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80242AD8 0023FA38 38 61 00 74 */ addi r3, r1, 0x74 +/* 80242ADC 0023FA3C 48 0F A6 59 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80242AE0: +/* 80242AE0 0023FA40 3C 60 80 3D */ lis r3, lbl_803D45B4@ha +/* 80242AE4 0023FA44 3B A0 00 00 */ li r29, 0 +/* 80242AE8 0023FA48 3B E3 45 B4 */ addi r31, r3, lbl_803D45B4@l +lbl_80242AEC: +/* 80242AEC 0023FA4C 7F A5 EB 78 */ mr r5, r29 +/* 80242AF0 0023FA50 38 61 01 F0 */ addi r3, r1, 0x1f0 +/* 80242AF4 0023FA54 38 9F 00 F6 */ addi r4, r31, 0xf6 +/* 80242AF8 0023FA58 4C C6 31 82 */ crclr 6 +/* 80242AFC 0023FA5C 48 14 B1 E1 */ bl sprintf +/* 80242B00 0023FA60 80 7E 00 20 */ lwz r3, 0x20(r30) +/* 80242B04 0023FA64 38 9D 00 10 */ addi r4, r29, 0x10 +/* 80242B08 0023FA68 48 11 3B F5 */ bl GetString__12CStringTableCFi +/* 80242B0C 0023FA6C 7C 65 1B 78 */ mr r5, r3 +/* 80242B10 0023FA70 80 7E 00 1C */ lwz r3, 0x1c(r30) +/* 80242B14 0023FA74 38 81 01 F0 */ addi r4, r1, 0x1f0 +/* 80242B18 0023FA78 48 00 18 B9 */ bl sub_802443d0 +/* 80242B1C 0023FA7C 3B BD 00 01 */ addi r29, r29, 1 +/* 80242B20 0023FA80 2C 1D 00 04 */ cmpwi r29, 4 +/* 80242B24 0023FA84 41 80 FF C8 */ blt lbl_80242AEC +/* 80242B28 0023FA88 80 7E 00 2C */ lwz r3, 0x2c(r30) +/* 80242B2C 0023FA8C 38 00 00 00 */ li r0, 0 +/* 80242B30 0023FA90 38 80 00 01 */ li r4, 1 +/* 80242B34 0023FA94 98 03 00 D1 */ stb r0, 0xd1(r3) +/* 80242B38 0023FA98 80 7E 00 30 */ lwz r3, 0x30(r30) +/* 80242B3C 0023FA9C 98 03 00 D1 */ stb r0, 0xd1(r3) +/* 80242B40 0023FAA0 80 7E 00 24 */ lwz r3, 0x24(r30) +/* 80242B44 0023FAA4 48 08 7A A1 */ bl SetIsActive__10CGuiWidgetFb +/* 80242B48 0023FAA8 80 7E 00 28 */ lwz r3, 0x28(r30) +/* 80242B4C 0023FAAC 38 80 00 00 */ li r4, 0 +/* 80242B50 0023FAB0 48 08 7A 95 */ bl SetIsActive__10CGuiWidgetFb +/* 80242B54 0023FAB4 80 9E 00 24 */ lwz r4, 0x24(r30) +/* 80242B58 0023FAB8 7F C3 F3 78 */ mr r3, r30 +/* 80242B5C 0023FABC 4B FF F0 2D */ bl SetTableColors__21SOptionsFrontEndFrameFP14CGuiTableGroup +/* 80242B60 0023FAC0 80 9E 00 28 */ lwz r4, 0x28(r30) +/* 80242B64 0023FAC4 7F C3 F3 78 */ mr r3, r30 +/* 80242B68 0023FAC8 4B FF F0 21 */ bl SetTableColors__21SOptionsFrontEndFrameFP14CGuiTableGroup +/* 80242B6C 0023FACC 80 9E 00 2C */ lwz r4, 0x2c(r30) +/* 80242B70 0023FAD0 7F C3 F3 78 */ mr r3, r30 +/* 80242B74 0023FAD4 4B FF F0 15 */ bl SetTableColors__21SOptionsFrontEndFrameFP14CGuiTableGroup +/* 80242B78 0023FAD8 80 9E 00 30 */ lwz r4, 0x30(r30) +/* 80242B7C 0023FADC 7F C3 F3 78 */ mr r3, r30 +/* 80242B80 0023FAE0 4B FF F0 09 */ bl SetTableColors__21SOptionsFrontEndFrameFP14CGuiTableGroup +/* 80242B84 0023FAE4 7F C3 F3 78 */ mr r3, r30 +/* 80242B88 0023FAE8 4B FF F8 F1 */ bl SetRightUIText__21SOptionsFrontEndFrameFv +/* 80242B8C 0023FAEC 7F C3 F3 78 */ mr r3, r30 +/* 80242B90 0023FAF0 4B FF F5 C1 */ bl DeactivateRightMenu__21SOptionsFrontEndFrameFv +/* 80242B94 0023FAF4 E3 E1 02 28 */ psq_l f31, 552(r1), 0, qr0 +/* 80242B98 0023FAF8 80 01 02 34 */ lwz r0, 0x234(r1) +/* 80242B9C 0023FAFC CB E1 02 20 */ lfd f31, 0x220(r1) +/* 80242BA0 0023FB00 83 E1 02 1C */ lwz r31, 0x21c(r1) +/* 80242BA4 0023FB04 83 C1 02 18 */ lwz r30, 0x218(r1) +/* 80242BA8 0023FB08 83 A1 02 14 */ lwz r29, 0x214(r1) +/* 80242BAC 0023FB0C 7C 08 03 A6 */ mtlr r0 +/* 80242BB0 0023FB10 38 21 02 30 */ addi r1, r1, 0x230 +/* 80242BB4 0023FB14 4E 80 00 20 */ blr + +.global sub_80242bb8 +sub_80242bb8: +/* 80242BB8 0023FB18 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80242BBC 0023FB1C 7C 08 02 A6 */ mflr r0 +/* 80242BC0 0023FB20 90 01 00 34 */ stw r0, 0x34(r1) +/* 80242BC4 0023FB24 DB E1 00 28 */ stfd f31, 0x28(r1) +/* 80242BC8 0023FB28 FF E0 08 90 */ fmr f31, f1 +/* 80242BCC 0023FB2C 93 E1 00 24 */ stw r31, 0x24(r1) +/* 80242BD0 0023FB30 7C BF 2B 78 */ mr r31, r5 +/* 80242BD4 0023FB34 38 A0 00 0C */ li r5, 0xc +/* 80242BD8 0023FB38 93 C1 00 20 */ stw r30, 0x20(r1) +/* 80242BDC 0023FB3C 7C 7E 1B 78 */ mr r30, r3 +/* 80242BE0 0023FB40 38 61 00 08 */ addi r3, r1, 8 +/* 80242BE4 0023FB44 4B DC 08 AD */ bl memcpy +/* 80242BE8 0023FB48 FC 20 F8 90 */ fmr f1, f31 +/* 80242BEC 0023FB4C 7F C3 F3 78 */ mr r3, r30 +/* 80242BF0 0023FB50 7F E4 FB 78 */ mr r4, r31 +/* 80242BF4 0023FB54 39 81 00 08 */ addi r12, r1, 8 +/* 80242BF8 0023FB58 48 14 6D 35 */ bl __ptmf_scall +/* 80242BFC 0023FB5C 60 00 00 00 */ nop +/* 80242C00 0023FB60 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80242C04 0023FB64 CB E1 00 28 */ lfd f31, 0x28(r1) +/* 80242C08 0023FB68 83 E1 00 24 */ lwz r31, 0x24(r1) +/* 80242C0C 0023FB6C 83 C1 00 20 */ lwz r30, 0x20(r1) +/* 80242C10 0023FB70 7C 08 03 A6 */ mtlr r0 +/* 80242C14 0023FB74 38 21 00 30 */ addi r1, r1, 0x30 +/* 80242C18 0023FB78 4E 80 00 20 */ blr + +.global sub_80242c1c +sub_80242c1c: +/* 80242C1C 0023FB7C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80242C20 0023FB80 7C 08 02 A6 */ mflr r0 +/* 80242C24 0023FB84 90 01 00 34 */ stw r0, 0x34(r1) +/* 80242C28 0023FB88 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80242C2C 0023FB8C 7C DF 33 78 */ mr r31, r6 +/* 80242C30 0023FB90 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80242C34 0023FB94 7C BE 2B 78 */ mr r30, r5 +/* 80242C38 0023FB98 38 A0 00 0C */ li r5, 0xc +/* 80242C3C 0023FB9C 93 A1 00 24 */ stw r29, 0x24(r1) +/* 80242C40 0023FBA0 7C 7D 1B 78 */ mr r29, r3 +/* 80242C44 0023FBA4 38 61 00 08 */ addi r3, r1, 8 +/* 80242C48 0023FBA8 4B DC 08 49 */ bl memcpy +/* 80242C4C 0023FBAC 7F A3 EB 78 */ mr r3, r29 +/* 80242C50 0023FBB0 7F C4 F3 78 */ mr r4, r30 +/* 80242C54 0023FBB4 7F E5 FB 78 */ mr r5, r31 +/* 80242C58 0023FBB8 39 81 00 08 */ addi r12, r1, 8 +/* 80242C5C 0023FBBC 48 14 6C D1 */ bl __ptmf_scall +/* 80242C60 0023FBC0 60 00 00 00 */ nop +/* 80242C64 0023FBC4 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80242C68 0023FBC8 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80242C6C 0023FBCC 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80242C70 0023FBD0 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 80242C74 0023FBD4 7C 08 03 A6 */ mtlr r0 +/* 80242C78 0023FBD8 38 21 00 30 */ addi r1, r1, 0x30 +/* 80242C7C 0023FBDC 4E 80 00 20 */ blr + +.global sub_80242c80 +sub_80242c80: +/* 80242C80 0023FBE0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80242C84 0023FBE4 7C 08 02 A6 */ mflr r0 +/* 80242C88 0023FBE8 90 01 00 24 */ stw r0, 0x24(r1) +/* 80242C8C 0023FBEC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80242C90 0023FBF0 7C BF 2B 78 */ mr r31, r5 +/* 80242C94 0023FBF4 38 A0 00 0C */ li r5, 0xc +/* 80242C98 0023FBF8 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80242C9C 0023FBFC 7C 7E 1B 78 */ mr r30, r3 +/* 80242CA0 0023FC00 38 61 00 08 */ addi r3, r1, 8 +/* 80242CA4 0023FC04 4B DC 07 ED */ bl memcpy +/* 80242CA8 0023FC08 7F C3 F3 78 */ mr r3, r30 +/* 80242CAC 0023FC0C 7F E4 FB 78 */ mr r4, r31 +/* 80242CB0 0023FC10 39 81 00 08 */ addi r12, r1, 8 +/* 80242CB4 0023FC14 48 14 6C 79 */ bl __ptmf_scall +/* 80242CB8 0023FC18 60 00 00 00 */ nop +/* 80242CBC 0023FC1C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80242CC0 0023FC20 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80242CC4 0023FC24 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80242CC8 0023FC28 7C 08 03 A6 */ mtlr r0 +/* 80242CCC 0023FC2C 38 21 00 20 */ addi r1, r1, 0x20 +/* 80242CD0 0023FC30 4E 80 00 20 */ blr + +.global PumpLoad__21SOptionsFrontEndFrameFv +PumpLoad__21SOptionsFrontEndFrameFv: +/* 80242CD4 0023FC34 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80242CD8 0023FC38 7C 08 02 A6 */ mflr r0 +/* 80242CDC 0023FC3C 90 01 00 14 */ stw r0, 0x14(r1) +/* 80242CE0 0023FC40 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80242CE4 0023FC44 7C 7F 1B 78 */ mr r31, r3 +/* 80242CE8 0023FC48 93 C1 00 08 */ stw r30, 8(r1) +/* 80242CEC 0023FC4C 80 03 00 1C */ lwz r0, 0x1c(r3) +/* 80242CF0 0023FC50 28 00 00 00 */ cmplwi r0, 0 +/* 80242CF4 0023FC54 41 82 00 0C */ beq lbl_80242D00 +/* 80242CF8 0023FC58 38 60 00 01 */ li r3, 1 +/* 80242CFC 0023FC5C 48 00 00 E0 */ b lbl_80242DDC +lbl_80242D00: +/* 80242D00 0023FC60 80 1F 00 0C */ lwz r0, 0xc(r31) +/* 80242D04 0023FC64 28 00 00 00 */ cmplwi r0, 0 +/* 80242D08 0023FC68 41 82 00 0C */ beq lbl_80242D14 +/* 80242D0C 0023FC6C 38 60 00 01 */ li r3, 1 +/* 80242D10 0023FC70 48 00 00 3C */ b lbl_80242D4C +lbl_80242D14: +/* 80242D14 0023FC74 88 1F 00 08 */ lbz r0, 8(r31) +/* 80242D18 0023FC78 28 00 00 00 */ cmplwi r0, 0 +/* 80242D1C 0023FC7C 41 82 00 2C */ beq lbl_80242D48 +/* 80242D20 0023FC80 80 7F 00 04 */ lwz r3, 4(r31) +/* 80242D24 0023FC84 80 03 00 10 */ lwz r0, 0x10(r3) +/* 80242D28 0023FC88 28 00 00 00 */ cmplwi r0, 0 +/* 80242D2C 0023FC8C 41 82 00 1C */ beq lbl_80242D48 +/* 80242D30 0023FC90 38 7F 00 04 */ addi r3, r31, 4 +/* 80242D34 0023FC94 48 0F E0 D9 */ bl GetObj__6CTokenFv +/* 80242D38 0023FC98 80 03 00 04 */ lwz r0, 4(r3) +/* 80242D3C 0023FC9C 38 60 00 01 */ li r3, 1 +/* 80242D40 0023FCA0 90 1F 00 0C */ stw r0, 0xc(r31) +/* 80242D44 0023FCA4 48 00 00 08 */ b lbl_80242D4C +lbl_80242D48: +/* 80242D48 0023FCA8 38 60 00 00 */ li r3, 0 +lbl_80242D4C: +/* 80242D4C 0023FCAC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80242D50 0023FCB0 41 82 00 88 */ beq lbl_80242DD8 +/* 80242D54 0023FCB4 80 1F 00 18 */ lwz r0, 0x18(r31) +/* 80242D58 0023FCB8 28 00 00 00 */ cmplwi r0, 0 +/* 80242D5C 0023FCBC 41 82 00 0C */ beq lbl_80242D68 +/* 80242D60 0023FCC0 38 60 00 01 */ li r3, 1 +/* 80242D64 0023FCC4 48 00 00 3C */ b lbl_80242DA0 +lbl_80242D68: +/* 80242D68 0023FCC8 88 1F 00 14 */ lbz r0, 0x14(r31) +/* 80242D6C 0023FCCC 28 00 00 00 */ cmplwi r0, 0 +/* 80242D70 0023FCD0 41 82 00 2C */ beq lbl_80242D9C +/* 80242D74 0023FCD4 80 7F 00 10 */ lwz r3, 0x10(r31) +/* 80242D78 0023FCD8 80 03 00 10 */ lwz r0, 0x10(r3) +/* 80242D7C 0023FCDC 28 00 00 00 */ cmplwi r0, 0 +/* 80242D80 0023FCE0 41 82 00 1C */ beq lbl_80242D9C +/* 80242D84 0023FCE4 38 7F 00 10 */ addi r3, r31, 0x10 +/* 80242D88 0023FCE8 48 0F E0 85 */ bl GetObj__6CTokenFv +/* 80242D8C 0023FCEC 80 03 00 04 */ lwz r0, 4(r3) +/* 80242D90 0023FCF0 38 60 00 01 */ li r3, 1 +/* 80242D94 0023FCF4 90 1F 00 18 */ stw r0, 0x18(r31) +/* 80242D98 0023FCF8 48 00 00 08 */ b lbl_80242DA0 +lbl_80242D9C: +/* 80242D9C 0023FCFC 38 60 00 00 */ li r3, 0 +lbl_80242DA0: +/* 80242DA0 0023FD00 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80242DA4 0023FD04 41 82 00 34 */ beq lbl_80242DD8 +/* 80242DA8 0023FD08 83 DF 00 0C */ lwz r30, 0xc(r31) +/* 80242DAC 0023FD0C 7F C3 F3 78 */ mr r3, r30 +/* 80242DB0 0023FD10 48 07 F7 A1 */ bl GetIsFinishedLoading__9CGuiFrameCFv +/* 80242DB4 0023FD14 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80242DB8 0023FD18 41 82 00 20 */ beq lbl_80242DD8 +/* 80242DBC 0023FD1C 93 DF 00 1C */ stw r30, 0x1c(r31) +/* 80242DC0 0023FD20 7F E3 FB 78 */ mr r3, r31 +/* 80242DC4 0023FD24 80 1F 00 18 */ lwz r0, 0x18(r31) +/* 80242DC8 0023FD28 90 1F 00 20 */ stw r0, 0x20(r31) +/* 80242DCC 0023FD2C 4B FF F7 B5 */ bl FinishedLoading__21SOptionsFrontEndFrameFv +/* 80242DD0 0023FD30 38 60 00 01 */ li r3, 1 +/* 80242DD4 0023FD34 48 00 00 08 */ b lbl_80242DDC +lbl_80242DD8: +/* 80242DD8 0023FD38 38 60 00 00 */ li r3, 0 +lbl_80242DDC: +/* 80242DDC 0023FD3C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80242DE0 0023FD40 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80242DE4 0023FD44 83 C1 00 08 */ lwz r30, 8(r1) +/* 80242DE8 0023FD48 7C 08 03 A6 */ mtlr r0 +/* 80242DEC 0023FD4C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80242DF0 0023FD50 4E 80 00 20 */ blr + +.global __dt__21SOptionsFrontEndFrameFv +__dt__21SOptionsFrontEndFrameFv: +/* 80242DF4 0023FD54 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80242DF8 0023FD58 7C 08 02 A6 */ mflr r0 +/* 80242DFC 0023FD5C 90 01 00 24 */ stw r0, 0x24(r1) +/* 80242E00 0023FD60 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80242E04 0023FD64 7C 9F 23 78 */ mr r31, r4 +/* 80242E08 0023FD68 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80242E0C 0023FD6C 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80242E10 0023FD70 41 82 00 68 */ beq lbl_80242E78 +/* 80242E14 0023FD74 80 1E 00 3C */ lwz r0, 0x3c(r30) +/* 80242E18 0023FD78 38 61 00 08 */ addi r3, r1, 8 +/* 80242E1C 0023FD7C 90 01 00 08 */ stw r0, 8(r1) +/* 80242E20 0023FD80 48 0A 6F 29 */ bl SfxStop__11CSfxManagerFRC10CSfxHandle +/* 80242E24 0023FD84 38 7E 00 40 */ addi r3, r30, 0x40 +/* 80242E28 0023FD88 38 80 FF FF */ li r4, -1 +/* 80242E2C 0023FD8C 48 12 71 C9 */ bl __dt__16CRumbleGeneratorFv +/* 80242E30 0023FD90 34 1E 00 10 */ addic. r0, r30, 0x10 +/* 80242E34 0023FD94 41 82 00 18 */ beq lbl_80242E4C +/* 80242E38 0023FD98 34 1E 00 10 */ addic. r0, r30, 0x10 +/* 80242E3C 0023FD9C 41 82 00 10 */ beq lbl_80242E4C +/* 80242E40 0023FDA0 38 7E 00 10 */ addi r3, r30, 0x10 +/* 80242E44 0023FDA4 38 80 00 00 */ li r4, 0 +/* 80242E48 0023FDA8 48 0F DF F9 */ bl __dt__6CTokenFv +lbl_80242E4C: +/* 80242E4C 0023FDAC 34 1E 00 04 */ addic. r0, r30, 4 +/* 80242E50 0023FDB0 41 82 00 18 */ beq lbl_80242E68 +/* 80242E54 0023FDB4 34 1E 00 04 */ addic. r0, r30, 4 +/* 80242E58 0023FDB8 41 82 00 10 */ beq lbl_80242E68 +/* 80242E5C 0023FDBC 38 7E 00 04 */ addi r3, r30, 4 +/* 80242E60 0023FDC0 38 80 00 00 */ li r4, 0 +/* 80242E64 0023FDC4 48 0F DF DD */ bl __dt__6CTokenFv +lbl_80242E68: +/* 80242E68 0023FDC8 7F E0 07 35 */ extsh. r0, r31 +/* 80242E6C 0023FDCC 40 81 00 0C */ ble lbl_80242E78 +/* 80242E70 0023FDD0 7F C3 F3 78 */ mr r3, r30 +/* 80242E74 0023FDD4 48 0D 2A BD */ bl Free__7CMemoryFPCv +lbl_80242E78: +/* 80242E78 0023FDD8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80242E7C 0023FDDC 7F C3 F3 78 */ mr r3, r30 +/* 80242E80 0023FDE0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80242E84 0023FDE4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80242E88 0023FDE8 7C 08 03 A6 */ mtlr r0 +/* 80242E8C 0023FDEC 38 21 00 20 */ addi r1, r1, 0x20 +/* 80242E90 0023FDF0 4E 80 00 20 */ blr + +.global __ct__21SOptionsFrontEndFrameFv +__ct__21SOptionsFrontEndFrameFv: +/* 80242E94 0023FDF4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80242E98 0023FDF8 7C 08 02 A6 */ mflr r0 +/* 80242E9C 0023FDFC 3C 80 80 3D */ lis r4, lbl_803D45B4@ha +/* 80242EA0 0023FE00 C0 02 B8 10 */ lfs f0, lbl_805AD530@sda21(r2) +/* 80242EA4 0023FE04 90 01 00 24 */ stw r0, 0x24(r1) +/* 80242EA8 0023FE08 38 84 45 B4 */ addi r4, r4, lbl_803D45B4@l +/* 80242EAC 0023FE0C 38 A4 01 0A */ addi r5, r4, 0x10a +/* 80242EB0 0023FE10 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80242EB4 0023FE14 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80242EB8 0023FE18 7C 7E 1B 78 */ mr r30, r3 +/* 80242EBC 0023FE1C 38 61 00 10 */ addi r3, r1, 0x10 +/* 80242EC0 0023FE20 D0 1E 00 00 */ stfs f0, 0(r30) +/* 80242EC4 0023FE24 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80242EC8 0023FE28 81 84 00 00 */ lwz r12, 0(r4) +/* 80242ECC 0023FE2C 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 80242ED0 0023FE30 7D 89 03 A6 */ mtctr r12 +/* 80242ED4 0023FE34 4E 80 04 21 */ bctrl +/* 80242ED8 0023FE38 3B FE 00 04 */ addi r31, r30, 4 +/* 80242EDC 0023FE3C 38 81 00 10 */ addi r4, r1, 0x10 +/* 80242EE0 0023FE40 7F E3 FB 78 */ mr r3, r31 +/* 80242EE4 0023FE44 48 0F DF C5 */ bl __ct__6CTokenFRC6CToken +/* 80242EE8 0023FE48 38 00 00 00 */ li r0, 0 +/* 80242EEC 0023FE4C 38 61 00 10 */ addi r3, r1, 0x10 +/* 80242EF0 0023FE50 90 1F 00 08 */ stw r0, 8(r31) +/* 80242EF4 0023FE54 38 80 FF FF */ li r4, -1 +/* 80242EF8 0023FE58 48 0F DF 49 */ bl __dt__6CTokenFv +/* 80242EFC 0023FE5C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80242F00 0023FE60 3C 60 80 3D */ lis r3, lbl_803D45B4@ha +/* 80242F04 0023FE64 38 A3 45 B4 */ addi r5, r3, lbl_803D45B4@l +/* 80242F08 0023FE68 38 61 00 08 */ addi r3, r1, 8 +/* 80242F0C 0023FE6C 81 84 00 00 */ lwz r12, 0(r4) +/* 80242F10 0023FE70 38 A5 01 1F */ addi r5, r5, 0x11f +/* 80242F14 0023FE74 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 80242F18 0023FE78 7D 89 03 A6 */ mtctr r12 +/* 80242F1C 0023FE7C 4E 80 04 21 */ bctrl +/* 80242F20 0023FE80 3B FE 00 10 */ addi r31, r30, 0x10 +/* 80242F24 0023FE84 38 81 00 08 */ addi r4, r1, 8 +/* 80242F28 0023FE88 7F E3 FB 78 */ mr r3, r31 +/* 80242F2C 0023FE8C 48 0F DF 7D */ bl __ct__6CTokenFRC6CToken +/* 80242F30 0023FE90 38 00 00 00 */ li r0, 0 +/* 80242F34 0023FE94 38 61 00 08 */ addi r3, r1, 8 +/* 80242F38 0023FE98 90 1F 00 08 */ stw r0, 8(r31) +/* 80242F3C 0023FE9C 38 80 FF FF */ li r4, -1 +/* 80242F40 0023FEA0 48 0F DF 01 */ bl __dt__6CTokenFv +/* 80242F44 0023FEA4 38 00 00 00 */ li r0, 0 +/* 80242F48 0023FEA8 C0 02 B8 10 */ lfs f0, lbl_805AD530@sda21(r2) +/* 80242F4C 0023FEAC 90 1E 00 1C */ stw r0, 0x1c(r30) +/* 80242F50 0023FEB0 38 7E 00 40 */ addi r3, r30, 0x40 +/* 80242F54 0023FEB4 90 1E 00 20 */ stw r0, 0x20(r30) +/* 80242F58 0023FEB8 90 1E 00 24 */ stw r0, 0x24(r30) +/* 80242F5C 0023FEBC 90 1E 00 28 */ stw r0, 0x28(r30) +/* 80242F60 0023FEC0 90 1E 00 2C */ stw r0, 0x2c(r30) +/* 80242F64 0023FEC4 90 1E 00 30 */ stw r0, 0x30(r30) +/* 80242F68 0023FEC8 90 1E 00 34 */ stw r0, 0x34(r30) +/* 80242F6C 0023FECC D0 1E 00 38 */ stfs f0, 0x38(r30) +/* 80242F70 0023FED0 90 1E 00 3C */ stw r0, 0x3c(r30) +/* 80242F74 0023FED4 48 12 72 21 */ bl __ct__16CRumbleGeneratorFv +/* 80242F78 0023FED8 88 1E 01 34 */ lbz r0, 0x134(r30) +/* 80242F7C 0023FEDC 38 60 00 01 */ li r3, 1 +/* 80242F80 0023FEE0 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80242F84 0023FEE4 38 80 00 00 */ li r4, 0 +/* 80242F88 0023FEE8 98 1E 01 34 */ stb r0, 0x134(r30) +/* 80242F8C 0023FEEC 38 7E 00 04 */ addi r3, r30, 4 +/* 80242F90 0023FEF0 88 1E 01 34 */ lbz r0, 0x134(r30) +/* 80242F94 0023FEF4 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 80242F98 0023FEF8 98 1E 01 34 */ stb r0, 0x134(r30) +/* 80242F9C 0023FEFC 48 0F DD E9 */ bl Lock__6CTokenFv +/* 80242FA0 0023FF00 7F E3 FB 78 */ mr r3, r31 +/* 80242FA4 0023FF04 48 0F DD E1 */ bl Lock__6CTokenFv +/* 80242FA8 0023FF08 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80242FAC 0023FF0C 7F C3 F3 78 */ mr r3, r30 +/* 80242FB0 0023FF10 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80242FB4 0023FF14 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80242FB8 0023FF18 7C 08 03 A6 */ mtlr r0 +/* 80242FBC 0023FF1C 38 21 00 20 */ addi r1, r1, 0x20 +/* 80242FC0 0023FF20 4E 80 00 20 */ blr + +.global OnEnumChanged__14COptionsScreenFP14CGuiTableGroupi +OnEnumChanged__14COptionsScreenFP14CGuiTableGroupi: +/* 80242FC4 0023FF24 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80242FC8 0023FF28 7C 08 02 A6 */ mflr r0 +/* 80242FCC 0023FF2C 90 01 00 34 */ stw r0, 0x34(r1) +/* 80242FD0 0023FF30 BF 61 00 1C */ stmw r27, 0x1c(r1) +/* 80242FD4 0023FF34 7C 7B 1B 78 */ mr r27, r3 +/* 80242FD8 0023FF38 7C 9C 23 78 */ mr r28, r4 +/* 80242FDC 0023FF3C 80 03 00 10 */ lwz r0, 0x10(r3) +/* 80242FE0 0023FF40 2C 00 00 01 */ cmpwi r0, 1 +/* 80242FE4 0023FF44 40 82 00 A4 */ bne lbl_80243088 +/* 80242FE8 0023FF48 80 9B 00 70 */ lwz r4, 0x70(r27) +/* 80242FEC 0023FF4C 3C 60 80 3F */ lis r3, lbl_803E8720@ha +/* 80242FF0 0023FF50 80 1B 00 1C */ lwz r0, 0x1c(r27) +/* 80242FF4 0023FF54 38 63 87 20 */ addi r3, r3, lbl_803E8720@l +/* 80242FF8 0023FF58 80 84 00 C4 */ lwz r4, 0xc4(r4) +/* 80242FFC 0023FF5C 83 BC 00 C4 */ lwz r29, 0xc4(r28) +/* 80243000 0023FF60 1F E0 00 18 */ mulli r31, r0, 0x18 +/* 80243004 0023FF64 54 80 18 38 */ slwi r0, r4, 3 +/* 80243008 0023FF68 7F A4 EB 78 */ mr r4, r29 +/* 8024300C 0023FF6C 7C 63 02 14 */ add r3, r3, r0 +/* 80243010 0023FF70 83 C3 00 04 */ lwz r30, 4(r3) +/* 80243014 0023FF74 7C 7E F8 2E */ lwzx r3, r30, r31 +/* 80243018 0023FF78 48 00 11 91 */ bl SetOption__12CGameOptionsF11EGameOptioni +/* 8024301C 0023FF7C 7C 1E F8 2E */ lwzx r0, r30, r31 +/* 80243020 0023FF80 2C 00 00 0C */ cmpwi r0, 0xc +/* 80243024 0023FF84 40 82 00 34 */ bne lbl_80243058 +/* 80243028 0023FF88 2C 1D 00 00 */ cmpwi r29, 0 +/* 8024302C 0023FF8C 40 81 00 2C */ ble lbl_80243058 +/* 80243030 0023FF90 38 7B 01 A8 */ addi r3, r27, 0x1a8 +/* 80243034 0023FF94 48 12 6D 19 */ bl HardStopAll__16CRumbleGeneratorFv +/* 80243038 0023FF98 3C 60 80 57 */ lis r3, lbl_80572140@ha +/* 8024303C 0023FF9C C0 22 B8 14 */ lfs f1, lbl_805AD534@sda21(r2) +/* 80243040 0023FFA0 38 83 21 40 */ addi r4, r3, lbl_80572140@l +/* 80243044 0023FFA4 38 7B 01 A8 */ addi r3, r27, 0x1a8 +/* 80243048 0023FFA8 38 84 01 34 */ addi r4, r4, 0x134 +/* 8024304C 0023FFAC 38 A0 00 01 */ li r5, 1 +/* 80243050 0023FFB0 38 C0 00 00 */ li r6, 0 +/* 80243054 0023FFB4 48 12 6E F9 */ bl Rumble__16CRumbleGeneratorFRC9SAdsrDataf15ERumblePriority7EIOPort +lbl_80243058: +/* 80243058 0023FFB8 7F 63 DB 78 */ mr r3, r27 +/* 8024305C 0023FFBC 7F 84 E3 78 */ mr r4, r28 +/* 80243060 0023FFC0 4B E2 E0 85 */ bl UpdateSideTable__16CPauseScreenBaseFP14CGuiTableGroup +/* 80243064 0023FFC4 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80243068 0023FFC8 38 61 00 08 */ addi r3, r1, 8 +/* 8024306C 0023FFCC 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80243070 0023FFD0 38 80 05 9D */ li r4, 0x59d +/* 80243074 0023FFD4 38 A0 00 7F */ li r5, 0x7f +/* 80243078 0023FFD8 38 C0 00 40 */ li r6, 0x40 +/* 8024307C 0023FFDC 38 E0 00 00 */ li r7, 0 +/* 80243080 0023FFE0 39 20 00 00 */ li r9, 0 +/* 80243084 0023FFE4 48 0A 6C F1 */ bl SfxStart__11CSfxManagerFUsssbsbi +lbl_80243088: +/* 80243088 0023FFE8 BB 61 00 1C */ lmw r27, 0x1c(r1) +/* 8024308C 0023FFEC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80243090 0023FFF0 7C 08 03 A6 */ mtlr r0 +/* 80243094 0023FFF4 38 21 00 30 */ addi r1, r1, 0x30 +/* 80243098 0023FFF8 4E 80 00 20 */ blr + +.global OnSliderChanged__14COptionsScreenFP15CGuiSliderGroupf +OnSliderChanged__14COptionsScreenFP15CGuiSliderGroupf: +/* 8024309C 0023FFFC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 802430A0 00240000 7C 08 02 A6 */ mflr r0 +/* 802430A4 00240004 90 01 00 14 */ stw r0, 0x14(r1) +/* 802430A8 00240008 80 03 00 10 */ lwz r0, 0x10(r3) +/* 802430AC 0024000C 2C 00 00 01 */ cmpwi r0, 1 +/* 802430B0 00240010 40 82 00 40 */ bne lbl_802430F0 +/* 802430B4 00240014 80 C3 00 70 */ lwz r6, 0x70(r3) +/* 802430B8 00240018 3C A0 80 3F */ lis r5, lbl_803E8720@ha +/* 802430BC 0024001C C0 04 00 C0 */ lfs f0, 0xc0(r4) +/* 802430C0 00240020 38 85 87 20 */ addi r4, r5, lbl_803E8720@l +/* 802430C4 00240024 80 A6 00 C4 */ lwz r5, 0xc4(r6) +/* 802430C8 00240028 FC 00 00 1E */ fctiwz f0, f0 +/* 802430CC 0024002C 80 03 00 1C */ lwz r0, 0x1c(r3) +/* 802430D0 00240030 54 A3 18 38 */ slwi r3, r5, 3 +/* 802430D4 00240034 7C 64 1A 14 */ add r3, r4, r3 +/* 802430D8 00240038 D8 01 00 08 */ stfd f0, 8(r1) +/* 802430DC 0024003C 1C 00 00 18 */ mulli r0, r0, 0x18 +/* 802430E0 00240040 80 63 00 04 */ lwz r3, 4(r3) +/* 802430E4 00240044 80 81 00 0C */ lwz r4, 0xc(r1) +/* 802430E8 00240048 7C 63 00 2E */ lwzx r3, r3, r0 +/* 802430EC 0024004C 48 00 10 BD */ bl SetOption__12CGameOptionsF11EGameOptioni +lbl_802430F0: +/* 802430F0 00240050 80 01 00 14 */ lwz r0, 0x14(r1) +/* 802430F4 00240054 7C 08 03 A6 */ mtlr r0 +/* 802430F8 00240058 38 21 00 10 */ addi r1, r1, 0x10 +/* 802430FC 0024005C 4E 80 00 20 */ blr + +.global UpdateOptionView__14COptionsScreenFv +UpdateOptionView__14COptionsScreenFv: +/* 80243100 00240060 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80243104 00240064 7C 08 02 A6 */ mflr r0 +/* 80243108 00240068 90 01 00 54 */ stw r0, 0x54(r1) +/* 8024310C 0024006C DB E1 00 40 */ stfd f31, 0x40(r1) +/* 80243110 00240070 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 80243114 00240074 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80243118 00240078 93 C1 00 38 */ stw r30, 0x38(r1) +/* 8024311C 0024007C 7C 7F 1B 78 */ mr r31, r3 +/* 80243120 00240080 48 00 02 29 */ bl ResetOptionWidgetVisibility__14COptionsScreenFv +/* 80243124 00240084 80 9F 00 70 */ lwz r4, 0x70(r31) +/* 80243128 00240088 3C 60 80 3F */ lis r3, lbl_803E8720@ha +/* 8024312C 0024008C 38 03 87 20 */ addi r0, r3, lbl_803E8720@l +/* 80243130 00240090 80 64 00 C4 */ lwz r3, 0xc4(r4) +/* 80243134 00240094 54 63 18 38 */ slwi r3, r3, 3 +/* 80243138 00240098 7C 60 1A 14 */ add r3, r0, r3 +/* 8024313C 0024009C 80 03 00 00 */ lwz r0, 0(r3) +/* 80243140 002400A0 2C 00 00 00 */ cmpwi r0, 0 +/* 80243144 002400A4 41 82 01 E4 */ beq lbl_80243328 +/* 80243148 002400A8 80 9F 00 1C */ lwz r4, 0x1c(r31) +/* 8024314C 002400AC 3C 00 43 30 */ lis r0, 0x4330 +/* 80243150 002400B0 90 01 00 30 */ stw r0, 0x30(r1) +/* 80243154 002400B4 6C 80 80 00 */ xoris r0, r4, 0x8000 +/* 80243158 002400B8 80 63 00 04 */ lwz r3, 4(r3) +/* 8024315C 002400BC 90 01 00 34 */ stw r0, 0x34(r1) +/* 80243160 002400C0 1C 04 00 18 */ mulli r0, r4, 0x18 +/* 80243164 002400C4 C8 22 B8 18 */ lfd f1, lbl_805AD538@sda21(r2) +/* 80243168 002400C8 C8 01 00 30 */ lfd f0, 0x30(r1) +/* 8024316C 002400CC 7F C3 02 14 */ add r30, r3, r0 +/* 80243170 002400D0 C0 5F 00 38 */ lfs f2, 0x38(r31) +/* 80243174 002400D4 EC 00 08 28 */ fsubs f0, f0, f1 +/* 80243178 002400D8 80 1E 00 14 */ lwz r0, 0x14(r30) +/* 8024317C 002400DC 2C 00 00 02 */ cmpwi r0, 2 +/* 80243180 002400E0 EF E2 00 32 */ fmuls f31, f2, f0 +/* 80243184 002400E4 41 82 01 34 */ beq lbl_802432B8 +/* 80243188 002400E8 40 80 01 A0 */ bge lbl_80243328 +/* 8024318C 002400EC 2C 00 00 00 */ cmpwi r0, 0 +/* 80243190 002400F0 41 82 00 10 */ beq lbl_802431A0 +/* 80243194 002400F4 40 80 00 B0 */ bge lbl_80243244 +/* 80243198 002400F8 48 00 01 90 */ b lbl_80243328 +/* 8024319C 002400FC 48 00 01 8C */ b lbl_80243328 +lbl_802431A0: +/* 802431A0 00240100 80 7F 01 8C */ lwz r3, 0x18c(r31) +/* 802431A4 00240104 38 80 00 01 */ li r4, 1 +/* 802431A8 00240108 48 08 74 3D */ bl SetIsActive__10CGuiWidgetFb +/* 802431AC 0024010C 80 7F 01 8C */ lwz r3, 0x18c(r31) +/* 802431B0 00240110 38 80 00 01 */ li r4, 1 +/* 802431B4 00240114 38 A0 00 01 */ li r5, 1 +/* 802431B8 00240118 48 08 75 31 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 802431BC 0024011C 80 7F 01 8C */ lwz r3, 0x18c(r31) +/* 802431C0 00240120 C0 3E 00 08 */ lfs f1, 8(r30) +/* 802431C4 00240124 48 08 2B 15 */ bl SetMinVal__15CGuiSliderGroupFf +/* 802431C8 00240128 80 7F 01 8C */ lwz r3, 0x18c(r31) +/* 802431CC 0024012C C0 3E 00 0C */ lfs f1, 0xc(r30) +/* 802431D0 00240130 48 08 2B 31 */ bl SetMaxVal__15CGuiSliderGroupFf +/* 802431D4 00240134 80 7F 01 8C */ lwz r3, 0x18c(r31) +/* 802431D8 00240138 C0 3E 00 10 */ lfs f1, 0x10(r30) +/* 802431DC 0024013C 48 08 2A F5 */ bl SetIncrement__15CGuiSliderGroupFf +/* 802431E0 00240140 80 7E 00 00 */ lwz r3, 0(r30) +/* 802431E4 00240144 48 00 11 01 */ bl GetOption__11CGameOptionF11EGameOption +/* 802431E8 00240148 6C 63 80 00 */ xoris r3, r3, 0x8000 +/* 802431EC 0024014C 3C 00 43 30 */ lis r0, 0x4330 +/* 802431F0 00240150 90 61 00 34 */ stw r3, 0x34(r1) +/* 802431F4 00240154 C8 22 B8 18 */ lfd f1, lbl_805AD538@sda21(r2) +/* 802431F8 00240158 90 01 00 30 */ stw r0, 0x30(r1) +/* 802431FC 0024015C 80 7F 01 8C */ lwz r3, 0x18c(r31) +/* 80243200 00240160 C8 01 00 30 */ lfd f0, 0x30(r1) +/* 80243204 00240164 EC 20 08 28 */ fsubs f1, f0, f1 +/* 80243208 00240168 48 08 2B 21 */ bl SetCurVal__15CGuiSliderGroupFf +/* 8024320C 0024016C C0 1F 00 44 */ lfs f0, 0x44(r31) +/* 80243210 00240170 38 81 00 20 */ addi r4, r1, 0x20 +/* 80243214 00240174 C0 5F 00 40 */ lfs f2, 0x40(r31) +/* 80243218 00240178 C0 22 B8 10 */ lfs f1, lbl_805AD530@sda21(r2) +/* 8024321C 0024017C EC 60 F8 2A */ fadds f3, f0, f31 +/* 80243220 00240180 C0 1F 00 3C */ lfs f0, 0x3c(r31) +/* 80243224 00240184 EC 42 08 2A */ fadds f2, f2, f1 +/* 80243228 00240188 EC 00 08 2A */ fadds f0, f0, f1 +/* 8024322C 0024018C D0 61 00 28 */ stfs f3, 0x28(r1) +/* 80243230 00240190 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 80243234 00240194 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 80243238 00240198 80 7F 01 8C */ lwz r3, 0x18c(r31) +/* 8024323C 0024019C 48 08 1F 8D */ bl SetLocalPosition__10CGuiObjectFRC9CVector3f +/* 80243240 002401A0 48 00 00 E8 */ b lbl_80243328 +lbl_80243244: +/* 80243244 002401A4 80 7E 00 00 */ lwz r3, 0(r30) +/* 80243248 002401A8 48 00 10 9D */ bl GetOption__11CGameOptionF11EGameOption +/* 8024324C 002401AC 80 BF 01 90 */ lwz r5, 0x190(r31) +/* 80243250 002401B0 38 80 00 01 */ li r4, 1 +/* 80243254 002401B4 80 05 00 C4 */ lwz r0, 0xc4(r5) +/* 80243258 002401B8 90 05 00 C8 */ stw r0, 0xc8(r5) +/* 8024325C 002401BC 90 65 00 C4 */ stw r3, 0xc4(r5) +/* 80243260 002401C0 80 7F 01 90 */ lwz r3, 0x190(r31) +/* 80243264 002401C4 48 08 73 C9 */ bl SetIsVisible__10CGuiWidgetFb +/* 80243268 002401C8 80 7F 01 90 */ lwz r3, 0x190(r31) +/* 8024326C 002401CC 38 80 00 01 */ li r4, 1 +/* 80243270 002401D0 48 08 73 75 */ bl SetIsActive__10CGuiWidgetFb +/* 80243274 002401D4 80 9F 01 90 */ lwz r4, 0x190(r31) +/* 80243278 002401D8 7F E3 FB 78 */ mr r3, r31 +/* 8024327C 002401DC 4B E2 DE 69 */ bl UpdateSideTable__16CPauseScreenBaseFP14CGuiTableGroup +/* 80243280 002401E0 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 80243284 002401E4 38 81 00 14 */ addi r4, r1, 0x14 +/* 80243288 002401E8 C0 5F 00 4C */ lfs f2, 0x4c(r31) +/* 8024328C 002401EC C0 22 B8 10 */ lfs f1, lbl_805AD530@sda21(r2) +/* 80243290 002401F0 EC 60 F8 2A */ fadds f3, f0, f31 +/* 80243294 002401F4 C0 1F 00 48 */ lfs f0, 0x48(r31) +/* 80243298 002401F8 EC 42 08 2A */ fadds f2, f2, f1 +/* 8024329C 002401FC EC 00 08 2A */ fadds f0, f0, f1 +/* 802432A0 00240200 D0 61 00 1C */ stfs f3, 0x1c(r1) +/* 802432A4 00240204 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 802432A8 00240208 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 802432AC 0024020C 80 7F 01 90 */ lwz r3, 0x190(r31) +/* 802432B0 00240210 48 08 1F 19 */ bl SetLocalPosition__10CGuiObjectFRC9CVector3f +/* 802432B4 00240214 48 00 00 74 */ b lbl_80243328 +lbl_802432B8: +/* 802432B8 00240218 80 7E 00 00 */ lwz r3, 0(r30) +/* 802432BC 0024021C 48 00 10 29 */ bl GetOption__11CGameOptionF11EGameOption +/* 802432C0 00240220 80 BF 01 94 */ lwz r5, 0x194(r31) +/* 802432C4 00240224 38 80 00 01 */ li r4, 1 +/* 802432C8 00240228 80 05 00 C4 */ lwz r0, 0xc4(r5) +/* 802432CC 0024022C 90 05 00 C8 */ stw r0, 0xc8(r5) +/* 802432D0 00240230 90 65 00 C4 */ stw r3, 0xc4(r5) +/* 802432D4 00240234 80 7F 01 94 */ lwz r3, 0x194(r31) +/* 802432D8 00240238 48 08 73 55 */ bl SetIsVisible__10CGuiWidgetFb +/* 802432DC 0024023C 80 7F 01 94 */ lwz r3, 0x194(r31) +/* 802432E0 00240240 38 80 00 01 */ li r4, 1 +/* 802432E4 00240244 48 08 73 01 */ bl SetIsActive__10CGuiWidgetFb +/* 802432E8 00240248 80 9F 01 94 */ lwz r4, 0x194(r31) +/* 802432EC 0024024C 7F E3 FB 78 */ mr r3, r31 +/* 802432F0 00240250 4B E2 DD F5 */ bl UpdateSideTable__16CPauseScreenBaseFP14CGuiTableGroup +/* 802432F4 00240254 C0 1F 00 5C */ lfs f0, 0x5c(r31) +/* 802432F8 00240258 38 81 00 08 */ addi r4, r1, 8 +/* 802432FC 0024025C C0 5F 00 58 */ lfs f2, 0x58(r31) +/* 80243300 00240260 C0 22 B8 10 */ lfs f1, lbl_805AD530@sda21(r2) +/* 80243304 00240264 EC 60 F8 2A */ fadds f3, f0, f31 +/* 80243308 00240268 C0 1F 00 54 */ lfs f0, 0x54(r31) +/* 8024330C 0024026C EC 42 08 2A */ fadds f2, f2, f1 +/* 80243310 00240270 EC 00 08 2A */ fadds f0, f0, f1 +/* 80243314 00240274 D0 61 00 10 */ stfs f3, 0x10(r1) +/* 80243318 00240278 D0 41 00 0C */ stfs f2, 0xc(r1) +/* 8024331C 0024027C D0 01 00 08 */ stfs f0, 8(r1) +/* 80243320 00240280 80 7F 01 94 */ lwz r3, 0x194(r31) +/* 80243324 00240284 48 08 1E A5 */ bl SetLocalPosition__10CGuiObjectFRC9CVector3f +lbl_80243328: +/* 80243328 00240288 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 8024332C 0024028C 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80243330 00240290 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 80243334 00240294 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 80243338 00240298 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 8024333C 0024029C 7C 08 03 A6 */ mtlr r0 +/* 80243340 002402A0 38 21 00 50 */ addi r1, r1, 0x50 +/* 80243344 002402A4 4E 80 00 20 */ blr + +.global ResetOptionWidgetVisibility__14COptionsScreenFv +ResetOptionWidgetVisibility__14COptionsScreenFv: +/* 80243348 002402A8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024334C 002402AC 7C 08 02 A6 */ mflr r0 +/* 80243350 002402B0 38 80 00 00 */ li r4, 0 +/* 80243354 002402B4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80243358 002402B8 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024335C 002402BC 7C 7F 1B 78 */ mr r31, r3 +/* 80243360 002402C0 80 63 01 8C */ lwz r3, 0x18c(r3) +/* 80243364 002402C4 48 08 72 81 */ bl SetIsActive__10CGuiWidgetFb +/* 80243368 002402C8 80 7F 01 8C */ lwz r3, 0x18c(r31) +/* 8024336C 002402CC 38 80 00 00 */ li r4, 0 +/* 80243370 002402D0 38 A0 00 01 */ li r5, 1 +/* 80243374 002402D4 48 08 73 75 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80243378 002402D8 80 7F 01 90 */ lwz r3, 0x190(r31) +/* 8024337C 002402DC 38 80 00 00 */ li r4, 0 +/* 80243380 002402E0 48 08 72 AD */ bl SetIsVisible__10CGuiWidgetFb +/* 80243384 002402E4 80 7F 01 90 */ lwz r3, 0x190(r31) +/* 80243388 002402E8 38 80 00 00 */ li r4, 0 +/* 8024338C 002402EC 48 08 72 59 */ bl SetIsActive__10CGuiWidgetFb +/* 80243390 002402F0 80 7F 01 94 */ lwz r3, 0x194(r31) +/* 80243394 002402F4 38 80 00 00 */ li r4, 0 +/* 80243398 002402F8 48 08 72 4D */ bl SetIsActive__10CGuiWidgetFb +/* 8024339C 002402FC 80 7F 01 94 */ lwz r3, 0x194(r31) +/* 802433A0 00240300 38 80 00 00 */ li r4, 0 +/* 802433A4 00240304 48 08 72 89 */ bl SetIsVisible__10CGuiWidgetFb +/* 802433A8 00240308 80 01 00 14 */ lwz r0, 0x14(r1) +/* 802433AC 0024030C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 802433B0 00240310 7C 08 03 A6 */ mtlr r0 +/* 802433B4 00240314 38 21 00 10 */ addi r1, r1, 0x10 +/* 802433B8 00240318 4E 80 00 20 */ blr + +.global RightTableSelectionChanged__14COptionsScreenFii +RightTableSelectionChanged__14COptionsScreenFii: +/* 802433BC 0024031C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 802433C0 00240320 7C 08 02 A6 */ mflr r0 +/* 802433C4 00240324 90 01 00 14 */ stw r0, 0x14(r1) +/* 802433C8 00240328 4B FF FD 39 */ bl UpdateOptionView__14COptionsScreenFv +/* 802433CC 0024032C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 802433D0 00240330 7C 08 03 A6 */ mtlr r0 +/* 802433D4 00240334 38 21 00 10 */ addi r1, r1, 0x10 +/* 802433D8 00240338 4E 80 00 20 */ blr + +.global ChangedMode__14COptionsScreenQ216CPauseScreenBase5EMode +ChangedMode__14COptionsScreenQ216CPauseScreenBase5EMode: +/* 802433DC 0024033C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 802433E0 00240340 7C 08 02 A6 */ mflr r0 +/* 802433E4 00240344 90 01 00 14 */ stw r0, 0x14(r1) +/* 802433E8 00240348 93 E1 00 0C */ stw r31, 0xc(r1) +/* 802433EC 0024034C 7C 7F 1B 78 */ mr r31, r3 +/* 802433F0 00240350 80 03 00 10 */ lwz r0, 0x10(r3) +/* 802433F4 00240354 2C 00 00 01 */ cmpwi r0, 1 +/* 802433F8 00240358 40 82 00 2C */ bne lbl_80243424 +/* 802433FC 0024035C 80 7F 01 74 */ lwz r3, 0x174(r31) +/* 80243400 00240360 38 80 00 01 */ li r4, 1 +/* 80243404 00240364 48 08 72 29 */ bl SetIsVisible__10CGuiWidgetFb +/* 80243408 00240368 7F E3 FB 78 */ mr r3, r31 +/* 8024340C 0024036C 4B FF FC F5 */ bl UpdateOptionView__14COptionsScreenFv +/* 80243410 00240370 88 1F 02 A0 */ lbz r0, 0x2a0(r31) +/* 80243414 00240374 38 60 00 01 */ li r3, 1 +/* 80243418 00240378 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8024341C 0024037C 98 1F 02 A0 */ stb r0, 0x2a0(r31) +/* 80243420 00240380 48 00 00 14 */ b lbl_80243434 +lbl_80243424: +/* 80243424 00240384 88 1F 02 A0 */ lbz r0, 0x2a0(r31) +/* 80243428 00240388 38 60 00 00 */ li r3, 0 +/* 8024342C 0024038C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80243430 00240390 98 1F 02 A0 */ stb r0, 0x2a0(r31) +lbl_80243434: +/* 80243434 00240394 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80243438 00240398 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024343C 0024039C 7C 08 03 A6 */ mtlr r0 +/* 80243440 002403A0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80243444 002403A4 4E 80 00 20 */ blr + +.global UpdateRightTable__14COptionsScreenFv +UpdateRightTable__14COptionsScreenFv: +/* 80243448 002403A8 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 8024344C 002403AC 7C 08 02 A6 */ mflr r0 +/* 80243450 002403B0 90 01 00 54 */ stw r0, 0x54(r1) +/* 80243454 002403B4 BF 41 00 38 */ stmw r26, 0x38(r1) +/* 80243458 002403B8 7C 7A 1B 78 */ mr r26, r3 +/* 8024345C 002403BC 4B E2 D9 71 */ bl UpdateRightTable__16CPauseScreenBaseFv +/* 80243460 002403C0 80 9A 00 70 */ lwz r4, 0x70(r26) +/* 80243464 002403C4 3C 60 80 3F */ lis r3, lbl_803E8720@ha +/* 80243468 002403C8 38 03 87 20 */ addi r0, r3, lbl_803E8720@l +/* 8024346C 002403CC 3B FA 00 DC */ addi r31, r26, 0xdc +/* 80243470 002403D0 80 64 00 C4 */ lwz r3, 0xc4(r4) +/* 80243474 002403D4 3B 80 00 00 */ li r28, 0 +/* 80243478 002403D8 3B C0 00 00 */ li r30, 0 +/* 8024347C 002403DC 54 63 18 38 */ slwi r3, r3, 3 +/* 80243480 002403E0 7F A0 1A 14 */ add r29, r0, r3 +lbl_80243484: +/* 80243484 002403E4 80 1D 00 00 */ lwz r0, 0(r29) +/* 80243488 002403E8 83 7F 00 00 */ lwz r27, 0(r31) +/* 8024348C 002403EC 7C 1C 00 00 */ cmpw r28, r0 +/* 80243490 002403F0 40 80 00 48 */ bge lbl_802434D8 +/* 80243494 002403F4 80 9D 00 04 */ lwz r4, 4(r29) +/* 80243498 002403F8 38 1E 00 04 */ addi r0, r30, 4 +/* 8024349C 002403FC 80 7A 00 0C */ lwz r3, 0xc(r26) +/* 802434A0 00240400 7C 84 00 2E */ lwzx r4, r4, r0 +/* 802434A4 00240404 48 11 32 59 */ bl GetString__12CStringTableCFi +/* 802434A8 00240408 7C 64 1B 78 */ mr r4, r3 +/* 802434AC 0024040C 38 61 00 1C */ addi r3, r1, 0x1c +/* 802434B0 00240410 38 C1 00 08 */ addi r6, r1, 8 +/* 802434B4 00240414 38 A0 FF FF */ li r5, -1 +/* 802434B8 00240418 48 0F A3 05 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCwiRCQ24rstl17rmemory_allocator" +/* 802434BC 0024041C 38 7B 00 D4 */ addi r3, r27, 0xd4 +/* 802434C0 00240420 38 81 00 1C */ addi r4, r1, 0x1c +/* 802434C4 00240424 38 A0 00 00 */ li r5, 0 +/* 802434C8 00240428 48 08 63 BD */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 802434CC 0024042C 38 61 00 1C */ addi r3, r1, 0x1c +/* 802434D0 00240430 48 0F 9C 65 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 802434D4 00240434 48 00 00 28 */ b lbl_802434FC +lbl_802434D8: +/* 802434D8 00240438 38 61 00 0C */ addi r3, r1, 0xc +/* 802434DC 0024043C 38 8D 96 DC */ addi r4, r13, lbl_805A829C@sda21 +/* 802434E0 00240440 4B DD 25 11 */ bl wstring_l__4rstlFPCw +/* 802434E4 00240444 38 7B 00 D4 */ addi r3, r27, 0xd4 +/* 802434E8 00240448 38 81 00 0C */ addi r4, r1, 0xc +/* 802434EC 0024044C 38 A0 00 00 */ li r5, 0 +/* 802434F0 00240450 48 08 63 95 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 802434F4 00240454 38 61 00 0C */ addi r3, r1, 0xc +/* 802434F8 00240458 48 0F 9C 3D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_802434FC: +/* 802434FC 0024045C 3B 9C 00 01 */ addi r28, r28, 1 +/* 80243500 00240460 3B DE 00 18 */ addi r30, r30, 0x18 +/* 80243504 00240464 2C 1C 00 05 */ cmpwi r28, 5 +/* 80243508 00240468 3B FF 00 04 */ addi r31, r31, 4 +/* 8024350C 0024046C 41 80 FF 78 */ blt lbl_80243484 +/* 80243510 00240470 BB 41 00 38 */ lmw r26, 0x38(r1) +/* 80243514 00240474 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80243518 00240478 7C 08 03 A6 */ mtlr r0 +/* 8024351C 0024047C 38 21 00 50 */ addi r1, r1, 0x50 +/* 80243520 00240480 4E 80 00 20 */ blr + +.global GetRightTableCount__14COptionsScreenCFv +GetRightTableCount__14COptionsScreenCFv: +/* 80243524 00240484 80 83 00 70 */ lwz r4, 0x70(r3) +/* 80243528 00240488 3C 60 80 3F */ lis r3, lbl_803E8720@ha +/* 8024352C 0024048C 38 63 87 20 */ addi r3, r3, lbl_803E8720@l +/* 80243530 00240490 80 04 00 C4 */ lwz r0, 0xc4(r4) +/* 80243534 00240494 54 00 18 38 */ slwi r0, r0, 3 +/* 80243538 00240498 7C 63 00 2E */ lwzx r3, r3, r0 +/* 8024353C 0024049C 4E 80 00 20 */ blr + +.global ShouldLeftTableAdvance__14COptionsScreenFv +ShouldLeftTableAdvance__14COptionsScreenFv: +/* 80243540 002404A0 80 63 00 70 */ lwz r3, 0x70(r3) +/* 80243544 002404A4 80 83 00 C4 */ lwz r4, 0xc4(r3) +/* 80243548 002404A8 20 64 00 04 */ subfic r3, r4, 4 +/* 8024354C 002404AC 38 04 FF FC */ addi r0, r4, -4 +/* 80243550 002404B0 7C 60 03 78 */ or r0, r3, r0 +/* 80243554 002404B4 54 03 0F FE */ srwi r3, r0, 0x1f +/* 80243558 002404B8 4E 80 00 20 */ blr + +.global ShouldRightTableAdvance__14COptionsScreenFv +ShouldRightTableAdvance__14COptionsScreenFv: +/* 8024355C 002404BC 38 60 00 00 */ li r3, 0 +/* 80243560 002404C0 4E 80 00 20 */ blr + +.global VActivate__14COptionsScreenFv +VActivate__14COptionsScreenFv: +/* 80243564 002404C4 94 21 FE D0 */ stwu r1, -0x130(r1) +/* 80243568 002404C8 7C 08 02 A6 */ mflr r0 +/* 8024356C 002404CC 90 01 01 34 */ stw r0, 0x134(r1) +/* 80243570 002404D0 BF 61 01 1C */ stmw r27, 0x11c(r1) +/* 80243574 002404D4 7C 7E 1B 78 */ mr r30, r3 +/* 80243578 002404D8 3C 60 80 3F */ lis r3, lbl_803E8708@ha +/* 8024357C 002404DC 3B 80 00 00 */ li r28, 0 +/* 80243580 002404E0 3B E3 87 08 */ addi r31, r3, lbl_803E8708@l +/* 80243584 002404E4 3B BE 00 AC */ addi r29, r30, 0xac +lbl_80243588: +/* 80243588 002404E8 83 7D 00 00 */ lwz r27, 0(r29) +/* 8024358C 002404EC 38 9C 00 10 */ addi r4, r28, 0x10 +/* 80243590 002404F0 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 80243594 002404F4 48 11 31 69 */ bl GetString__12CStringTableCFi +/* 80243598 002404F8 7C 64 1B 78 */ mr r4, r3 +/* 8024359C 002404FC 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 802435A0 00240500 38 C1 00 0C */ addi r6, r1, 0xc +/* 802435A4 00240504 38 A0 FF FF */ li r5, -1 +/* 802435A8 00240508 48 0F A2 15 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCwiRCQ24rstl17rmemory_allocator" +/* 802435AC 0024050C 38 7B 00 D4 */ addi r3, r27, 0xd4 +/* 802435B0 00240510 38 81 00 B8 */ addi r4, r1, 0xb8 +/* 802435B4 00240514 38 A0 00 00 */ li r5, 0 +/* 802435B8 00240518 48 08 62 CD */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 802435BC 0024051C 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 802435C0 00240520 48 0F 9B 75 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 802435C4 00240524 3B 9C 00 01 */ addi r28, r28, 1 +/* 802435C8 00240528 3B BD 00 04 */ addi r29, r29, 4 +/* 802435CC 0024052C 2C 1C 00 05 */ cmpwi r28, 5 +/* 802435D0 00240530 41 80 FF B8 */ blt lbl_80243588 +/* 802435D4 00240534 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 802435D8 00240538 38 80 00 0F */ li r4, 0xf +/* 802435DC 0024053C 48 11 31 21 */ bl GetString__12CStringTableCFi +/* 802435E0 00240540 7C 64 1B 78 */ mr r4, r3 +/* 802435E4 00240544 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 802435E8 00240548 38 C1 00 08 */ addi r6, r1, 8 +/* 802435EC 0024054C 38 A0 FF FF */ li r5, -1 +/* 802435F0 00240550 48 0F A1 CD */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCwiRCQ24rstl17rmemory_allocator" +/* 802435F4 00240554 80 7E 01 78 */ lwz r3, 0x178(r30) +/* 802435F8 00240558 38 81 00 A8 */ addi r4, r1, 0xa8 +/* 802435FC 0024055C 38 A0 00 00 */ li r5, 0 +/* 80243600 00240560 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80243604 00240564 48 08 62 81 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80243608 00240568 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 8024360C 0024056C 48 0F 9B 29 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80243610 00240570 3B 60 00 05 */ li r27, 5 +/* 80243614 00240574 3B A0 00 00 */ li r29, 0 +/* 80243618 00240578 48 00 00 2C */ b lbl_80243644 +lbl_8024361C: +/* 8024361C 0024057C 80 7E 00 70 */ lwz r3, 0x70(r30) +/* 80243620 00240580 7F 64 DB 78 */ mr r4, r27 +/* 80243624 00240584 81 83 00 00 */ lwz r12, 0(r3) +/* 80243628 00240588 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 8024362C 0024058C 7D 89 03 A6 */ mtctr r12 +/* 80243630 00240590 4E 80 04 21 */ bctrl +/* 80243634 00240594 88 03 00 B6 */ lbz r0, 0xb6(r3) +/* 80243638 00240598 53 A0 26 F6 */ rlwimi r0, r29, 4, 0x1b, 0x1b +/* 8024363C 0024059C 3B 7B 00 01 */ addi r27, r27, 1 +/* 80243640 002405A0 98 03 00 B6 */ stb r0, 0xb6(r3) +lbl_80243644: +/* 80243644 002405A4 2C 1B 00 05 */ cmpwi r27, 5 +/* 80243648 002405A8 41 80 FF D4 */ blt lbl_8024361C +/* 8024364C 002405AC 80 7E 01 74 */ lwz r3, 0x174(r30) +/* 80243650 002405B0 38 80 00 01 */ li r4, 1 +/* 80243654 002405B4 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80243658 002405B8 48 08 60 91 */ bl SetJustification__15CGuiTextSupportF14EJustification +/* 8024365C 002405BC 80 7E 01 74 */ lwz r3, 0x174(r30) +/* 80243660 002405C0 38 80 00 02 */ li r4, 2 +/* 80243664 002405C4 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80243668 002405C8 48 08 60 51 */ bl SetVerticalJustification__15CGuiTextSupportF22EVerticalJustification +/* 8024366C 002405CC 80 7E 01 90 */ lwz r3, 0x190(r30) +/* 80243670 002405D0 38 80 00 00 */ li r4, 0 +/* 80243674 002405D4 81 83 00 00 */ lwz r12, 0(r3) +/* 80243678 002405D8 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 8024367C 002405DC 7D 89 03 A6 */ mtctr r12 +/* 80243680 002405E0 4E 80 04 21 */ bctrl +/* 80243684 002405E4 7C 7D 1B 78 */ mr r29, r3 +/* 80243688 002405E8 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 8024368C 002405EC 38 80 00 5F */ li r4, 0x5f +/* 80243690 002405F0 48 11 30 6D */ bl GetString__12CStringTableCFi +/* 80243694 002405F4 7C 64 1B 78 */ mr r4, r3 +/* 80243698 002405F8 38 61 00 98 */ addi r3, r1, 0x98 +/* 8024369C 002405FC 4B DD 23 55 */ bl wstring_l__4rstlFPCw +/* 802436A0 00240600 38 7D 00 D4 */ addi r3, r29, 0xd4 +/* 802436A4 00240604 38 81 00 98 */ addi r4, r1, 0x98 +/* 802436A8 00240608 38 A0 00 00 */ li r5, 0 +/* 802436AC 0024060C 48 08 61 D9 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 802436B0 00240610 38 61 00 98 */ addi r3, r1, 0x98 +/* 802436B4 00240614 48 0F 9A 81 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 802436B8 00240618 80 7E 01 90 */ lwz r3, 0x190(r30) +/* 802436BC 0024061C 38 80 00 01 */ li r4, 1 +/* 802436C0 00240620 81 83 00 00 */ lwz r12, 0(r3) +/* 802436C4 00240624 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 802436C8 00240628 7D 89 03 A6 */ mtctr r12 +/* 802436CC 0024062C 4E 80 04 21 */ bctrl +/* 802436D0 00240630 7C 7D 1B 78 */ mr r29, r3 +/* 802436D4 00240634 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 802436D8 00240638 38 80 00 5E */ li r4, 0x5e +/* 802436DC 0024063C 48 11 30 21 */ bl GetString__12CStringTableCFi +/* 802436E0 00240640 7C 64 1B 78 */ mr r4, r3 +/* 802436E4 00240644 38 61 00 88 */ addi r3, r1, 0x88 +/* 802436E8 00240648 4B DD 23 09 */ bl wstring_l__4rstlFPCw +/* 802436EC 0024064C 38 7D 00 D4 */ addi r3, r29, 0xd4 +/* 802436F0 00240650 38 81 00 88 */ addi r4, r1, 0x88 +/* 802436F4 00240654 38 A0 00 00 */ li r5, 0 +/* 802436F8 00240658 48 08 61 8D */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 802436FC 0024065C 38 61 00 88 */ addi r3, r1, 0x88 +/* 80243700 00240660 48 0F 9A 35 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80243704 00240664 80 7E 01 94 */ lwz r3, 0x194(r30) +/* 80243708 00240668 38 80 00 00 */ li r4, 0 +/* 8024370C 0024066C 81 83 00 00 */ lwz r12, 0(r3) +/* 80243710 00240670 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 80243714 00240674 7D 89 03 A6 */ mtctr r12 +/* 80243718 00240678 4E 80 04 21 */ bctrl +/* 8024371C 0024067C 7C 7D 1B 78 */ mr r29, r3 +/* 80243720 00240680 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 80243724 00240684 38 80 00 60 */ li r4, 0x60 +/* 80243728 00240688 48 11 2F D5 */ bl GetString__12CStringTableCFi +/* 8024372C 0024068C 7C 64 1B 78 */ mr r4, r3 +/* 80243730 00240690 38 61 00 78 */ addi r3, r1, 0x78 +/* 80243734 00240694 4B DD 22 BD */ bl wstring_l__4rstlFPCw +/* 80243738 00240698 38 7D 00 D4 */ addi r3, r29, 0xd4 +/* 8024373C 0024069C 38 81 00 78 */ addi r4, r1, 0x78 +/* 80243740 002406A0 38 A0 00 00 */ li r5, 0 +/* 80243744 002406A4 48 08 61 41 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80243748 002406A8 38 61 00 78 */ addi r3, r1, 0x78 +/* 8024374C 002406AC 48 0F 99 E9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80243750 002406B0 80 7E 01 94 */ lwz r3, 0x194(r30) +/* 80243754 002406B4 38 80 00 01 */ li r4, 1 +/* 80243758 002406B8 81 83 00 00 */ lwz r12, 0(r3) +/* 8024375C 002406BC 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 80243760 002406C0 7D 89 03 A6 */ mtctr r12 +/* 80243764 002406C4 4E 80 04 21 */ bctrl +/* 80243768 002406C8 7C 7D 1B 78 */ mr r29, r3 +/* 8024376C 002406CC 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 80243770 002406D0 38 80 00 61 */ li r4, 0x61 +/* 80243774 002406D4 48 11 2F 89 */ bl GetString__12CStringTableCFi +/* 80243778 002406D8 7C 64 1B 78 */ mr r4, r3 +/* 8024377C 002406DC 38 61 00 68 */ addi r3, r1, 0x68 +/* 80243780 002406E0 4B DD 22 71 */ bl wstring_l__4rstlFPCw +/* 80243784 002406E4 38 7D 00 D4 */ addi r3, r29, 0xd4 +/* 80243788 002406E8 38 81 00 68 */ addi r4, r1, 0x68 +/* 8024378C 002406EC 38 A0 00 00 */ li r5, 0 +/* 80243790 002406F0 48 08 60 F5 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80243794 002406F4 38 61 00 68 */ addi r3, r1, 0x68 +/* 80243798 002406F8 48 0F 99 9D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8024379C 002406FC 80 7E 01 94 */ lwz r3, 0x194(r30) +/* 802437A0 00240700 38 80 00 02 */ li r4, 2 +/* 802437A4 00240704 81 83 00 00 */ lwz r12, 0(r3) +/* 802437A8 00240708 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 802437AC 0024070C 7D 89 03 A6 */ mtctr r12 +/* 802437B0 00240710 4E 80 04 21 */ bctrl +/* 802437B4 00240714 7C 7D 1B 78 */ mr r29, r3 +/* 802437B8 00240718 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 802437BC 0024071C 38 80 00 62 */ li r4, 0x62 +/* 802437C0 00240720 48 11 2F 3D */ bl GetString__12CStringTableCFi +/* 802437C4 00240724 7C 64 1B 78 */ mr r4, r3 +/* 802437C8 00240728 38 61 00 58 */ addi r3, r1, 0x58 +/* 802437CC 0024072C 4B DD 22 25 */ bl wstring_l__4rstlFPCw +/* 802437D0 00240730 38 7D 00 D4 */ addi r3, r29, 0xd4 +/* 802437D4 00240734 38 81 00 58 */ addi r4, r1, 0x58 +/* 802437D8 00240738 38 A0 00 00 */ li r5, 0 +/* 802437DC 0024073C 48 08 60 A9 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 802437E0 00240740 38 61 00 58 */ addi r3, r1, 0x58 +/* 802437E4 00240744 48 0F 99 51 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 802437E8 00240748 80 FF 00 40 */ lwz r7, 0x40(r31) +/* 802437EC 0024074C 38 61 00 28 */ addi r3, r1, 0x28 +/* 802437F0 00240750 80 DF 00 44 */ lwz r6, 0x44(r31) +/* 802437F4 00240754 38 81 00 4C */ addi r4, r1, 0x4c +/* 802437F8 00240758 80 1F 00 48 */ lwz r0, 0x48(r31) +/* 802437FC 0024075C 38 A0 00 0C */ li r5, 0xc +/* 80243800 00240760 90 E1 00 4C */ stw r7, 0x4c(r1) +/* 80243804 00240764 90 C1 00 50 */ stw r6, 0x50(r1) +/* 80243808 00240768 90 01 00 54 */ stw r0, 0x54(r1) +/* 8024380C 0024076C 4B DB FC 85 */ bl memcpy +/* 80243810 00240770 3C 60 80 24 */ lis r3, sub_8024395c@ha +/* 80243814 00240774 93 C1 00 FC */ stw r30, 0xfc(r1) +/* 80243818 00240778 38 03 39 5C */ addi r0, r3, sub_8024395c@l +/* 8024381C 0024077C 38 61 01 00 */ addi r3, r1, 0x100 +/* 80243820 00240780 90 01 00 F8 */ stw r0, 0xf8(r1) +/* 80243824 00240784 38 81 00 28 */ addi r4, r1, 0x28 +/* 80243828 00240788 38 A0 00 0C */ li r5, 0xc +/* 8024382C 0024078C 4B DB FC 65 */ bl memcpy +/* 80243830 00240790 80 7E 01 8C */ lwz r3, 0x18c(r30) +/* 80243834 00240794 38 81 00 F8 */ addi r4, r1, 0xf8 +/* 80243838 00240798 48 08 24 29 */ bl "SetSelectionChangedCallback__15CGuiSliderGroupFRC33TFunctor2" +/* 8024383C 0024079C 80 FF 00 4C */ lwz r7, 0x4c(r31) +/* 80243840 002407A0 38 61 00 1C */ addi r3, r1, 0x1c +/* 80243844 002407A4 80 DF 00 50 */ lwz r6, 0x50(r31) +/* 80243848 002407A8 38 81 00 40 */ addi r4, r1, 0x40 +/* 8024384C 002407AC 80 1F 00 54 */ lwz r0, 0x54(r31) +/* 80243850 002407B0 38 A0 00 0C */ li r5, 0xc +/* 80243854 002407B4 90 E1 00 40 */ stw r7, 0x40(r1) +/* 80243858 002407B8 90 C1 00 44 */ stw r6, 0x44(r1) +/* 8024385C 002407BC 90 01 00 48 */ stw r0, 0x48(r1) +/* 80243860 002407C0 4B DB FC 31 */ bl memcpy +/* 80243864 002407C4 3C 60 80 24 */ lis r3, sub_802438f8@ha +/* 80243868 002407C8 93 C1 00 E4 */ stw r30, 0xe4(r1) +/* 8024386C 002407CC 38 03 38 F8 */ addi r0, r3, sub_802438f8@l +/* 80243870 002407D0 38 61 00 E8 */ addi r3, r1, 0xe8 +/* 80243874 002407D4 90 01 00 E0 */ stw r0, 0xe0(r1) +/* 80243878 002407D8 38 81 00 1C */ addi r4, r1, 0x1c +/* 8024387C 002407DC 38 A0 00 0C */ li r5, 0xc +/* 80243880 002407E0 4B DB FC 11 */ bl memcpy +/* 80243884 002407E4 80 7E 01 90 */ lwz r3, 0x190(r30) +/* 80243888 002407E8 38 81 00 E0 */ addi r4, r1, 0xe0 +/* 8024388C 002407EC 48 08 2F 65 */ bl "SetMenuSelectionChangeCallback__14CGuiTableGroupFRC35TFunctor3" +/* 80243890 002407F0 80 FF 00 58 */ lwz r7, 0x58(r31) +/* 80243894 002407F4 38 61 00 10 */ addi r3, r1, 0x10 +/* 80243898 002407F8 80 DF 00 5C */ lwz r6, 0x5c(r31) +/* 8024389C 002407FC 38 81 00 34 */ addi r4, r1, 0x34 +/* 802438A0 00240800 80 1F 00 60 */ lwz r0, 0x60(r31) +/* 802438A4 00240804 38 A0 00 0C */ li r5, 0xc +/* 802438A8 00240808 90 E1 00 34 */ stw r7, 0x34(r1) +/* 802438AC 0024080C 90 C1 00 38 */ stw r6, 0x38(r1) +/* 802438B0 00240810 90 01 00 3C */ stw r0, 0x3c(r1) +/* 802438B4 00240814 4B DB FB DD */ bl memcpy +/* 802438B8 00240818 3C 60 80 24 */ lis r3, sub_802438f8@ha +/* 802438BC 0024081C 93 C1 00 CC */ stw r30, 0xcc(r1) +/* 802438C0 00240820 38 03 38 F8 */ addi r0, r3, sub_802438f8@l +/* 802438C4 00240824 38 61 00 D0 */ addi r3, r1, 0xd0 +/* 802438C8 00240828 90 01 00 C8 */ stw r0, 0xc8(r1) +/* 802438CC 0024082C 38 81 00 10 */ addi r4, r1, 0x10 +/* 802438D0 00240830 38 A0 00 0C */ li r5, 0xc +/* 802438D4 00240834 4B DB FB BD */ bl memcpy +/* 802438D8 00240838 80 7E 01 94 */ lwz r3, 0x194(r30) +/* 802438DC 0024083C 38 81 00 C8 */ addi r4, r1, 0xc8 +/* 802438E0 00240840 48 08 2F 11 */ bl "SetMenuSelectionChangeCallback__14CGuiTableGroupFRC35TFunctor3" +/* 802438E4 00240844 BB 61 01 1C */ lmw r27, 0x11c(r1) +/* 802438E8 00240848 80 01 01 34 */ lwz r0, 0x134(r1) +/* 802438EC 0024084C 7C 08 03 A6 */ mtlr r0 +/* 802438F0 00240850 38 21 01 30 */ addi r1, r1, 0x130 +/* 802438F4 00240854 4E 80 00 20 */ blr + +.global sub_802438f8 +sub_802438f8: +/* 802438F8 00240858 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 802438FC 0024085C 7C 08 02 A6 */ mflr r0 +/* 80243900 00240860 90 01 00 34 */ stw r0, 0x34(r1) +/* 80243904 00240864 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80243908 00240868 7C DF 33 78 */ mr r31, r6 +/* 8024390C 0024086C 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80243910 00240870 7C BE 2B 78 */ mr r30, r5 +/* 80243914 00240874 38 A0 00 0C */ li r5, 0xc +/* 80243918 00240878 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8024391C 0024087C 7C 7D 1B 78 */ mr r29, r3 +/* 80243920 00240880 38 61 00 08 */ addi r3, r1, 8 +/* 80243924 00240884 4B DB FB 6D */ bl memcpy +/* 80243928 00240888 7F A3 EB 78 */ mr r3, r29 +/* 8024392C 0024088C 7F C4 F3 78 */ mr r4, r30 +/* 80243930 00240890 7F E5 FB 78 */ mr r5, r31 +/* 80243934 00240894 39 81 00 08 */ addi r12, r1, 8 +/* 80243938 00240898 48 14 5F F5 */ bl __ptmf_scall +/* 8024393C 0024089C 60 00 00 00 */ nop +/* 80243940 002408A0 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80243944 002408A4 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80243948 002408A8 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8024394C 002408AC 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 80243950 002408B0 7C 08 03 A6 */ mtlr r0 +/* 80243954 002408B4 38 21 00 30 */ addi r1, r1, 0x30 +/* 80243958 002408B8 4E 80 00 20 */ blr + +.global sub_8024395c +sub_8024395c: +/* 8024395C 002408BC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80243960 002408C0 7C 08 02 A6 */ mflr r0 +/* 80243964 002408C4 90 01 00 34 */ stw r0, 0x34(r1) +/* 80243968 002408C8 DB E1 00 28 */ stfd f31, 0x28(r1) +/* 8024396C 002408CC FF E0 08 90 */ fmr f31, f1 +/* 80243970 002408D0 93 E1 00 24 */ stw r31, 0x24(r1) +/* 80243974 002408D4 7C BF 2B 78 */ mr r31, r5 +/* 80243978 002408D8 38 A0 00 0C */ li r5, 0xc +/* 8024397C 002408DC 93 C1 00 20 */ stw r30, 0x20(r1) +/* 80243980 002408E0 7C 7E 1B 78 */ mr r30, r3 +/* 80243984 002408E4 38 61 00 08 */ addi r3, r1, 8 +/* 80243988 002408E8 4B DB FB 09 */ bl memcpy +/* 8024398C 002408EC FC 20 F8 90 */ fmr f1, f31 +/* 80243990 002408F0 7F C3 F3 78 */ mr r3, r30 +/* 80243994 002408F4 7F E4 FB 78 */ mr r4, r31 +/* 80243998 002408F8 39 81 00 08 */ addi r12, r1, 8 +/* 8024399C 002408FC 48 14 5F 91 */ bl __ptmf_scall +/* 802439A0 00240900 60 00 00 00 */ nop +/* 802439A4 00240904 80 01 00 34 */ lwz r0, 0x34(r1) +/* 802439A8 00240908 CB E1 00 28 */ lfd f31, 0x28(r1) +/* 802439AC 0024090C 83 E1 00 24 */ lwz r31, 0x24(r1) +/* 802439B0 00240910 83 C1 00 20 */ lwz r30, 0x20(r1) +/* 802439B4 00240914 7C 08 03 A6 */ mtlr r0 +/* 802439B8 00240918 38 21 00 30 */ addi r1, r1, 0x30 +/* 802439BC 0024091C 4E 80 00 20 */ blr + +.global Draw__14COptionsScreenCFfff +Draw__14COptionsScreenCFfff: +/* 802439C0 00240920 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 802439C4 00240924 7C 08 02 A6 */ mflr r0 +/* 802439C8 00240928 90 01 00 24 */ stw r0, 0x24(r1) +/* 802439CC 0024092C DB E1 00 10 */ stfd f31, 0x10(r1) +/* 802439D0 00240930 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 +/* 802439D4 00240934 93 E1 00 0C */ stw r31, 0xc(r1) +/* 802439D8 00240938 7C 7F 1B 78 */ mr r31, r3 +/* 802439DC 0024093C FF E0 08 90 */ fmr f31, f1 +/* 802439E0 00240940 4B E2 D9 B1 */ bl Draw__16CPauseScreenBaseCFfff +/* 802439E4 00240944 C0 22 B8 14 */ lfs f1, lbl_805AD534@sda21(r2) +/* 802439E8 00240948 C0 1F 02 9C */ lfs f0, 0x29c(r31) +/* 802439EC 0024094C 80 7F 01 A0 */ lwz r3, 0x1a0(r31) +/* 802439F0 00240950 EC 01 00 28 */ fsubs f0, f1, f0 +/* 802439F4 00240954 EC 3F 00 32 */ fmuls f1, f31, f0 +/* 802439F8 00240958 48 05 AC 4D */ bl Draw__13CGameCubeDollFf +/* 802439FC 0024095C 80 1F 01 9C */ lwz r0, 0x19c(r31) +/* 80243A00 00240960 28 00 00 00 */ cmplwi r0, 0 +/* 80243A04 00240964 41 82 00 24 */ beq lbl_80243A28 +/* 80243A08 00240968 C0 22 B8 10 */ lfs f1, lbl_805AD530@sda21(r2) +/* 80243A0C 0024096C C0 42 B8 20 */ lfs f2, lbl_805AD540@sda21(r2) +/* 80243A10 00240970 48 0C 69 D1 */ bl SetDepthRange__9CGraphicsFff +/* 80243A14 00240974 80 7F 01 9C */ lwz r3, 0x19c(r31) +/* 80243A18 00240978 48 00 0F A5 */ bl Draw__15CQuitGameScreenFv +/* 80243A1C 0024097C C0 22 B8 10 */ lfs f1, lbl_805AD530@sda21(r2) +/* 80243A20 00240980 C0 42 B8 14 */ lfs f2, lbl_805AD534@sda21(r2) +/* 80243A24 00240984 48 0C 69 BD */ bl SetDepthRange__9CGraphicsFff +lbl_80243A28: +/* 80243A28 00240988 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 +/* 80243A2C 0024098C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80243A30 00240990 CB E1 00 10 */ lfd f31, 0x10(r1) +/* 80243A34 00240994 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80243A38 00240998 7C 08 03 A6 */ mtlr r0 +/* 80243A3C 0024099C 38 21 00 20 */ addi r1, r1, 0x20 +/* 80243A40 002409A0 4E 80 00 20 */ blr + +.global ProcessInput__14COptionsScreenFRC11CFinalInput +ProcessInput__14COptionsScreenFRC11CFinalInput: +/* 80243A44 002409A4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80243A48 002409A8 7C 08 02 A6 */ mflr r0 +/* 80243A4C 002409AC 90 01 00 24 */ stw r0, 0x24(r1) +/* 80243A50 002409B0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80243A54 002409B4 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80243A58 002409B8 7C 9E 23 78 */ mr r30, r4 +/* 80243A5C 002409BC 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80243A60 002409C0 7C 7D 1B 78 */ mr r29, r3 +/* 80243A64 002409C4 80 03 01 9C */ lwz r0, 0x19c(r3) +/* 80243A68 002409C8 28 00 00 00 */ cmplwi r0, 0 +/* 80243A6C 002409CC 40 82 00 A0 */ bne lbl_80243B0C +/* 80243A70 002409D0 4B E2 D8 ED */ bl ProcessInput__16CPauseScreenBaseFRC11CFinalInput +/* 80243A74 002409D4 80 9D 00 70 */ lwz r4, 0x70(r29) +/* 80243A78 002409D8 7F C3 F3 78 */ mr r3, r30 +/* 80243A7C 002409DC 80 BD 00 1C */ lwz r5, 0x1c(r29) +/* 80243A80 002409E0 38 C0 00 00 */ li r6, 0 +/* 80243A84 002409E4 80 84 00 C4 */ lwz r4, 0xc4(r4) +/* 80243A88 002409E8 48 00 05 41 */ bl TryRestoreDefaults__12CGameOptionsFRC11CFinalInputiib +/* 80243A8C 002409EC 80 7D 00 70 */ lwz r3, 0x70(r29) +/* 80243A90 002409F0 80 03 00 C4 */ lwz r0, 0xc4(r3) +/* 80243A94 002409F4 2C 00 00 04 */ cmpwi r0, 4 +/* 80243A98 002409F8 40 82 00 7C */ bne lbl_80243B14 +/* 80243A9C 002409FC 88 1E 00 2D */ lbz r0, 0x2d(r30) +/* 80243AA0 00240A00 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 80243AA4 00240A04 41 82 00 70 */ beq lbl_80243B14 +/* 80243AA8 00240A08 3C 80 80 3D */ lis r4, lbl_803D45B4@ha +/* 80243AAC 00240A0C 38 60 00 1C */ li r3, 0x1c +/* 80243AB0 00240A10 38 84 45 B4 */ addi r4, r4, lbl_803D45B4@l +/* 80243AB4 00240A14 38 A0 00 00 */ li r5, 0 +/* 80243AB8 00240A18 38 84 01 30 */ addi r4, r4, 0x130 +/* 80243ABC 00240A1C 48 0D 1D B1 */ bl __nw__FUlPCcPCc +/* 80243AC0 00240A20 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80243AC4 00240A24 41 82 00 10 */ beq lbl_80243AD4 +/* 80243AC8 00240A28 38 80 00 00 */ li r4, 0 +/* 80243ACC 00240A2C 48 00 10 45 */ bl __ct__15CQuitGameScreenF9EQuitType +/* 80243AD0 00240A30 7C 7E 1B 78 */ mr r30, r3 +lbl_80243AD4: +/* 80243AD4 00240A34 83 FD 01 9C */ lwz r31, 0x19c(r29) +/* 80243AD8 00240A38 28 1F 00 00 */ cmplwi r31, 0 +/* 80243ADC 00240A3C 41 82 00 28 */ beq lbl_80243B04 +/* 80243AE0 00240A40 34 1F 00 04 */ addic. r0, r31, 4 +/* 80243AE4 00240A44 41 82 00 18 */ beq lbl_80243AFC +/* 80243AE8 00240A48 34 1F 00 04 */ addic. r0, r31, 4 +/* 80243AEC 00240A4C 41 82 00 10 */ beq lbl_80243AFC +/* 80243AF0 00240A50 38 7F 00 04 */ addi r3, r31, 4 +/* 80243AF4 00240A54 38 80 00 00 */ li r4, 0 +/* 80243AF8 00240A58 48 0F D3 49 */ bl __dt__6CTokenFv +lbl_80243AFC: +/* 80243AFC 00240A5C 7F E3 FB 78 */ mr r3, r31 +/* 80243B00 00240A60 48 0D 1E 31 */ bl Free__7CMemoryFPCv +lbl_80243B04: +/* 80243B04 00240A64 93 DD 01 9C */ stw r30, 0x19c(r29) +/* 80243B08 00240A68 48 00 00 0C */ b lbl_80243B14 +lbl_80243B0C: +/* 80243B0C 00240A6C 7C 03 03 78 */ mr r3, r0 +/* 80243B10 00240A70 48 00 0F 91 */ bl ProcessUserInput__15CQuitGameScreenFRC11CFinalInput +lbl_80243B14: +/* 80243B14 00240A74 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80243B18 00240A78 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80243B1C 00240A7C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80243B20 00240A80 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80243B24 00240A84 7C 08 03 A6 */ mtlr r0 +/* 80243B28 00240A88 38 21 00 20 */ addi r1, r1, 0x20 +/* 80243B2C 00240A8C 4E 80 00 20 */ blr + +.global Touch__14COptionsScreenFv +Touch__14COptionsScreenFv: +/* 80243B30 00240A90 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80243B34 00240A94 7C 08 02 A6 */ mflr r0 +/* 80243B38 00240A98 90 01 00 14 */ stw r0, 0x14(r1) +/* 80243B3C 00240A9C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80243B40 00240AA0 7C 7F 1B 78 */ mr r31, r3 +/* 80243B44 00240AA4 4B E2 D9 59 */ bl Touch__16CPauseScreenBaseFv +/* 80243B48 00240AA8 80 7F 01 A0 */ lwz r3, 0x1a0(r31) +/* 80243B4C 00240AAC 48 05 AD 01 */ bl Touch__13CGameCubeDollFv +/* 80243B50 00240AB0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80243B54 00240AB4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80243B58 00240AB8 7C 08 03 A6 */ mtlr r0 +/* 80243B5C 00240ABC 38 21 00 10 */ addi r1, r1, 0x10 +/* 80243B60 00240AC0 4E 80 00 20 */ blr + +.global Update__14COptionsScreenFfR9CRandom16R18CArchitectureQueue +Update__14COptionsScreenFfR9CRandom16R18CArchitectureQueue: +/* 80243B64 00240AC4 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 80243B68 00240AC8 7C 08 02 A6 */ mflr r0 +/* 80243B6C 00240ACC 90 01 00 74 */ stw r0, 0x74(r1) +/* 80243B70 00240AD0 DB E1 00 60 */ stfd f31, 0x60(r1) +/* 80243B74 00240AD4 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 80243B78 00240AD8 DB C1 00 50 */ stfd f30, 0x50(r1) +/* 80243B7C 00240ADC F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 +/* 80243B80 00240AE0 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 80243B84 00240AE4 93 C1 00 48 */ stw r30, 0x48(r1) +/* 80243B88 00240AE8 93 A1 00 44 */ stw r29, 0x44(r1) +/* 80243B8C 00240AEC FF C0 08 90 */ fmr f30, f1 +/* 80243B90 00240AF0 7C 7E 1B 78 */ mr r30, r3 +/* 80243B94 00240AF4 7C 9D 23 78 */ mr r29, r4 +/* 80243B98 00240AF8 7C BF 2B 78 */ mr r31, r5 +/* 80243B9C 00240AFC 38 7E 01 A8 */ addi r3, r30, 0x1a8 +/* 80243BA0 00240B00 48 12 62 41 */ bl Update__16CRumbleGeneratorFf +/* 80243BA4 00240B04 FC 20 F0 90 */ fmr f1, f30 +/* 80243BA8 00240B08 7F C3 F3 78 */ mr r3, r30 +/* 80243BAC 00240B0C 7F A4 EB 78 */ mr r4, r29 +/* 80243BB0 00240B10 7F E5 FB 78 */ mr r5, r31 +/* 80243BB4 00240B14 4B E2 D8 ED */ bl Update__16CPauseScreenBaseFfR9CRandom16R18CArchitectureQueue +/* 80243BB8 00240B18 80 9E 01 8C */ lwz r4, 0x18c(r30) +/* 80243BBC 00240B1C 80 7E 01 A4 */ lwz r3, 0x1a4(r30) +/* 80243BC0 00240B20 80 A4 00 F0 */ lwz r5, 0xf0(r4) +/* 80243BC4 00240B24 7C 03 00 D0 */ neg r0, r3 +/* 80243BC8 00240B28 7C 85 00 D0 */ neg r4, r5 +/* 80243BCC 00240B2C 7C 84 2B 78 */ or r4, r4, r5 +/* 80243BD0 00240B30 7C 00 1B 78 */ or r0, r0, r3 +/* 80243BD4 00240B34 54 83 0F FE */ srwi r3, r4, 0x1f +/* 80243BD8 00240B38 54 00 0F FE */ srwi r0, r0, 0x1f +/* 80243BDC 00240B3C 7C 03 00 40 */ cmplw r3, r0 +/* 80243BE0 00240B40 41 82 00 54 */ beq lbl_80243C34 +/* 80243BE4 00240B44 28 03 00 00 */ cmplwi r3, 0 +/* 80243BE8 00240B48 41 82 00 34 */ beq lbl_80243C1C +/* 80243BEC 00240B4C A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80243BF0 00240B50 38 61 00 20 */ addi r3, r1, 0x20 +/* 80243BF4 00240B54 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80243BF8 00240B58 38 80 05 AB */ li r4, 0x5ab +/* 80243BFC 00240B5C 38 A0 00 7F */ li r5, 0x7f +/* 80243C00 00240B60 38 C0 00 40 */ li r6, 0x40 +/* 80243C04 00240B64 38 E0 00 00 */ li r7, 0 +/* 80243C08 00240B68 39 20 00 00 */ li r9, 0 +/* 80243C0C 00240B6C 48 0A 61 69 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80243C10 00240B70 80 01 00 20 */ lwz r0, 0x20(r1) +/* 80243C14 00240B74 90 1E 01 A4 */ stw r0, 0x1a4(r30) +/* 80243C18 00240B78 48 00 00 1C */ b lbl_80243C34 +lbl_80243C1C: +/* 80243C1C 00240B7C 80 1E 01 A4 */ lwz r0, 0x1a4(r30) +/* 80243C20 00240B80 38 61 00 1C */ addi r3, r1, 0x1c +/* 80243C24 00240B84 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80243C28 00240B88 48 0A 61 21 */ bl SfxStop__11CSfxManagerFRC10CSfxHandle +/* 80243C2C 00240B8C 38 00 00 00 */ li r0, 0 +/* 80243C30 00240B90 90 1E 01 A4 */ stw r0, 0x1a4(r30) +lbl_80243C34: +/* 80243C34 00240B94 88 1E 02 A0 */ lbz r0, 0x2a0(r30) +/* 80243C38 00240B98 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80243C3C 00240B9C 41 82 00 38 */ beq lbl_80243C74 +/* 80243C40 00240BA0 C0 42 B8 24 */ lfs f2, lbl_805AD544@sda21(r2) +/* 80243C44 00240BA4 C0 3E 02 9C */ lfs f1, 0x29c(r30) +/* 80243C48 00240BA8 C0 0D 96 D0 */ lfs f0, lbl_805A8290@sda21(r13) +/* 80243C4C 00240BAC EC 22 0F BA */ fmadds f1, f2, f30, f1 +/* 80243C50 00240BB0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80243C54 00240BB4 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 80243C58 00240BB8 40 80 00 0C */ bge lbl_80243C64 +/* 80243C5C 00240BBC 38 61 00 18 */ addi r3, r1, 0x18 +/* 80243C60 00240BC0 48 00 00 08 */ b lbl_80243C68 +lbl_80243C64: +/* 80243C64 00240BC4 38 6D 96 D0 */ addi r3, r13, lbl_805A8290@sda21 +lbl_80243C68: +/* 80243C68 00240BC8 C0 03 00 00 */ lfs f0, 0(r3) +/* 80243C6C 00240BCC D0 1E 02 9C */ stfs f0, 0x29c(r30) +/* 80243C70 00240BD0 48 00 00 34 */ b lbl_80243CA4 +lbl_80243C74: +/* 80243C74 00240BD4 C0 42 B8 24 */ lfs f2, lbl_805AD544@sda21(r2) +/* 80243C78 00240BD8 C0 3E 02 9C */ lfs f1, 0x29c(r30) +/* 80243C7C 00240BDC C0 0D 96 D4 */ lfs f0, lbl_805A8294@sda21(r13) +/* 80243C80 00240BE0 EC 22 0F BC */ fnmsubs f1, f2, f30, f1 +/* 80243C84 00240BE4 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80243C88 00240BE8 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 80243C8C 00240BEC 40 80 00 0C */ bge lbl_80243C98 +/* 80243C90 00240BF0 38 61 00 14 */ addi r3, r1, 0x14 +/* 80243C94 00240BF4 48 00 00 08 */ b lbl_80243C9C +lbl_80243C98: +/* 80243C98 00240BF8 38 6D 96 D4 */ addi r3, r13, lbl_805A8294@sda21 +lbl_80243C9C: +/* 80243C9C 00240BFC C0 03 00 00 */ lfs f0, 0(r3) +/* 80243CA0 00240C00 D0 1E 02 9C */ stfs f0, 0x29c(r30) +lbl_80243CA4: +/* 80243CA4 00240C04 C0 5E 02 9C */ lfs f2, 0x29c(r30) +/* 80243CA8 00240C08 C0 22 B8 10 */ lfs f1, lbl_805AD530@sda21(r2) +/* 80243CAC 00240C0C C0 02 B8 28 */ lfs f0, lbl_805AD548@sda21(r2) +/* 80243CB0 00240C10 EC 22 08 28 */ fsubs f1, f2, f1 +/* 80243CB4 00240C14 FC 20 0A 10 */ fabs f1, f1 +/* 80243CB8 00240C18 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80243CBC 00240C1C 40 80 00 18 */ bge lbl_80243CD4 +/* 80243CC0 00240C20 7F C3 F3 78 */ mr r3, r30 +/* 80243CC4 00240C24 4B FF F6 85 */ bl ResetOptionWidgetVisibility__14COptionsScreenFv +/* 80243CC8 00240C28 80 7E 01 74 */ lwz r3, 0x174(r30) +/* 80243CCC 00240C2C 38 80 00 00 */ li r4, 0 +/* 80243CD0 00240C30 48 08 69 5D */ bl SetIsVisible__10CGuiWidgetFb +lbl_80243CD4: +/* 80243CD4 00240C34 80 6D A1 3C */ lwz r3, gpTweakGuiColors@sda21(r13) +/* 80243CD8 00240C38 3C 00 43 30 */ lis r0, 0x4330 +/* 80243CDC 00240C3C 90 01 00 38 */ stw r0, 0x38(r1) +/* 80243CE0 00240C40 88 03 01 BF */ lbz r0, 0x1bf(r3) +/* 80243CE4 00240C44 C8 22 B8 30 */ lfd f1, lbl_805AD550@sda21(r2) +/* 80243CE8 00240C48 90 01 00 3C */ stw r0, 0x3c(r1) +/* 80243CEC 00240C4C C0 5E 02 9C */ lfs f2, 0x29c(r30) +/* 80243CF0 00240C50 C8 01 00 38 */ lfd f0, 0x38(r1) +/* 80243CF4 00240C54 EC 00 08 28 */ fsubs f0, f0, f1 +/* 80243CF8 00240C58 EF E2 00 32 */ fmuls f31, f2, f0 +/* 80243CFC 00240C5C F3 E1 A0 08 */ psq_st f31, 8(r1), 1, qr2 +/* 80243D00 00240C60 38 81 00 24 */ addi r4, r1, 0x24 +/* 80243D04 00240C64 80 63 01 BC */ lwz r3, 0x1bc(r3) +/* 80243D08 00240C68 88 01 00 08 */ lbz r0, 8(r1) +/* 80243D0C 00240C6C 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 80243D10 00240C70 90 01 00 24 */ stw r0, 0x24(r1) +/* 80243D14 00240C74 80 7E 01 8C */ lwz r3, 0x18c(r30) +/* 80243D18 00240C78 48 08 6B 55 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80243D1C 00240C7C 80 7E 01 90 */ lwz r3, 0x190(r30) +/* 80243D20 00240C80 38 81 00 24 */ addi r4, r1, 0x24 +/* 80243D24 00240C84 48 08 6B 49 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80243D28 00240C88 80 7E 01 94 */ lwz r3, 0x194(r30) +/* 80243D2C 00240C8C 38 81 00 24 */ addi r4, r1, 0x24 +/* 80243D30 00240C90 48 08 6B 3D */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80243D34 00240C94 80 7E 01 9C */ lwz r3, 0x19c(r30) +/* 80243D38 00240C98 28 03 00 00 */ cmplwi r3, 0 +/* 80243D3C 00240C9C 41 82 00 CC */ beq lbl_80243E08 +/* 80243D40 00240CA0 FC 20 F0 90 */ fmr f1, f30 +/* 80243D44 00240CA4 48 00 0B E5 */ bl Update__15CQuitGameScreenFv +/* 80243D48 00240CA8 2C 03 00 01 */ cmpwi r3, 1 +/* 80243D4C 00240CAC 40 82 00 58 */ bne lbl_80243DA4 +/* 80243D50 00240CB0 38 61 00 28 */ addi r3, r1, 0x28 +/* 80243D54 00240CB4 38 80 00 01 */ li r4, 1 +/* 80243D58 00240CB8 4B E0 DC 09 */ bl CreateQuitGameplay__7MakeMsgF14EArchMsgTarget +/* 80243D5C 00240CBC 7F E3 FB 78 */ mr r3, r31 +/* 80243D60 00240CC0 38 81 00 28 */ addi r4, r1, 0x28 +/* 80243D64 00240CC4 4B DC 2F 9D */ bl InsertMsg__18CArchitectureQueueFRC20CArchitectureMessage +/* 80243D68 00240CC8 34 61 00 30 */ addic. r3, r1, 0x30 +/* 80243D6C 00240CCC 41 82 00 08 */ beq lbl_80243D74 +/* 80243D70 00240CD0 4B DC 49 9D */ bl sub_8000870c +lbl_80243D74: +/* 80243D74 00240CD4 38 60 00 00 */ li r3, 0 +/* 80243D78 00240CD8 48 0A 5B 3D */ bl SetChannel__11CSfxManagerFQ211CSfxManager12ESfxChannels +/* 80243D7C 00240CDC A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80243D80 00240CE0 38 61 00 10 */ addi r3, r1, 0x10 +/* 80243D84 00240CE4 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80243D88 00240CE8 38 80 05 8E */ li r4, 0x58e +/* 80243D8C 00240CEC 38 A0 00 7F */ li r5, 0x7f +/* 80243D90 00240CF0 38 C0 00 40 */ li r6, 0x40 +/* 80243D94 00240CF4 38 E0 00 00 */ li r7, 0 +/* 80243D98 00240CF8 39 20 00 00 */ li r9, 0 +/* 80243D9C 00240CFC 48 0A 5F D9 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80243DA0 00240D00 48 00 00 68 */ b lbl_80243E08 +lbl_80243DA4: +/* 80243DA4 00240D04 2C 03 00 02 */ cmpwi r3, 2 +/* 80243DA8 00240D08 40 82 00 60 */ bne lbl_80243E08 +/* 80243DAC 00240D0C A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80243DB0 00240D10 38 61 00 0C */ addi r3, r1, 0xc +/* 80243DB4 00240D14 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80243DB8 00240D18 38 80 05 8F */ li r4, 0x58f +/* 80243DBC 00240D1C 38 A0 00 7F */ li r5, 0x7f +/* 80243DC0 00240D20 38 C0 00 40 */ li r6, 0x40 +/* 80243DC4 00240D24 38 E0 00 00 */ li r7, 0 +/* 80243DC8 00240D28 39 20 00 00 */ li r9, 0 +/* 80243DCC 00240D2C 48 0A 5F A9 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80243DD0 00240D30 83 FE 01 9C */ lwz r31, 0x19c(r30) +/* 80243DD4 00240D34 28 1F 00 00 */ cmplwi r31, 0 +/* 80243DD8 00240D38 41 82 00 28 */ beq lbl_80243E00 +/* 80243DDC 00240D3C 34 1F 00 04 */ addic. r0, r31, 4 +/* 80243DE0 00240D40 41 82 00 18 */ beq lbl_80243DF8 +/* 80243DE4 00240D44 34 1F 00 04 */ addic. r0, r31, 4 +/* 80243DE8 00240D48 41 82 00 10 */ beq lbl_80243DF8 +/* 80243DEC 00240D4C 38 7F 00 04 */ addi r3, r31, 4 +/* 80243DF0 00240D50 38 80 00 00 */ li r4, 0 +/* 80243DF4 00240D54 48 0F D0 4D */ bl __dt__6CTokenFv +lbl_80243DF8: +/* 80243DF8 00240D58 7F E3 FB 78 */ mr r3, r31 +/* 80243DFC 00240D5C 48 0D 1B 35 */ bl Free__7CMemoryFPCv +lbl_80243E00: +/* 80243E00 00240D60 38 00 00 00 */ li r0, 0 +/* 80243E04 00240D64 90 1E 01 9C */ stw r0, 0x19c(r30) +lbl_80243E08: +/* 80243E08 00240D68 FC 20 F0 90 */ fmr f1, f30 +/* 80243E0C 00240D6C 80 7E 01 A0 */ lwz r3, 0x1a0(r30) +/* 80243E10 00240D70 48 05 A9 BD */ bl Update__13CGameCubeDollFf +/* 80243E14 00240D74 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 80243E18 00240D78 CB E1 00 60 */ lfd f31, 0x60(r1) +/* 80243E1C 00240D7C E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 +/* 80243E20 00240D80 CB C1 00 50 */ lfd f30, 0x50(r1) +/* 80243E24 00240D84 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 80243E28 00240D88 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 80243E2C 00240D8C 80 01 00 74 */ lwz r0, 0x74(r1) +/* 80243E30 00240D90 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 80243E34 00240D94 7C 08 03 A6 */ mtlr r0 +/* 80243E38 00240D98 38 21 00 70 */ addi r1, r1, 0x70 +/* 80243E3C 00240D9C 4E 80 00 20 */ blr + +.global InputDisabled__14COptionsScreenCFv +InputDisabled__14COptionsScreenCFv: +/* 80243E40 00240DA0 80 63 01 9C */ lwz r3, 0x19c(r3) +/* 80243E44 00240DA4 7C 03 00 D0 */ neg r0, r3 +/* 80243E48 00240DA8 7C 00 1B 78 */ or r0, r0, r3 +/* 80243E4C 00240DAC 54 03 0F FE */ srwi r3, r0, 0x1f +/* 80243E50 00240DB0 4E 80 00 20 */ blr + +.global VReady__14COptionsScreenCFv +VReady__14COptionsScreenCFv: +/* 80243E54 00240DB4 38 60 00 01 */ li r3, 1 +/* 80243E58 00240DB8 4E 80 00 20 */ blr + +.global __dt__14COptionsScreenFv +__dt__14COptionsScreenFv: +/* 80243E5C 00240DBC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80243E60 00240DC0 7C 08 02 A6 */ mflr r0 +/* 80243E64 00240DC4 90 01 00 24 */ stw r0, 0x24(r1) +/* 80243E68 00240DC8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80243E6C 00240DCC 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80243E70 00240DD0 7C 9E 23 78 */ mr r30, r4 +/* 80243E74 00240DD4 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80243E78 00240DD8 7C 7D 1B 79 */ or. r29, r3, r3 +/* 80243E7C 00240DDC 41 82 00 94 */ beq lbl_80243F10 +/* 80243E80 00240DE0 3C 80 80 3F */ lis r4, lbl_803E87D8@ha +/* 80243E84 00240DE4 38 61 00 08 */ addi r3, r1, 8 +/* 80243E88 00240DE8 38 04 87 D8 */ addi r0, r4, lbl_803E87D8@l +/* 80243E8C 00240DEC 90 1D 00 00 */ stw r0, 0(r29) +/* 80243E90 00240DF0 80 1D 01 A4 */ lwz r0, 0x1a4(r29) +/* 80243E94 00240DF4 90 01 00 08 */ stw r0, 8(r1) +/* 80243E98 00240DF8 48 0A 5E B1 */ bl SfxStop__11CSfxManagerFRC10CSfxHandle +/* 80243E9C 00240DFC 38 7D 01 A8 */ addi r3, r29, 0x1a8 +/* 80243EA0 00240E00 38 80 FF FF */ li r4, -1 +/* 80243EA4 00240E04 48 12 61 51 */ bl __dt__16CRumbleGeneratorFv +/* 80243EA8 00240E08 34 1D 01 A0 */ addic. r0, r29, 0x1a0 +/* 80243EAC 00240E0C 41 82 00 10 */ beq lbl_80243EBC +/* 80243EB0 00240E10 80 7D 01 A0 */ lwz r3, 0x1a0(r29) +/* 80243EB4 00240E14 38 80 00 01 */ li r4, 1 +/* 80243EB8 00240E18 48 05 AB CD */ bl __dt__13CGameCubeDollFv +lbl_80243EBC: +/* 80243EBC 00240E1C 34 1D 01 9C */ addic. r0, r29, 0x19c +/* 80243EC0 00240E20 41 82 00 34 */ beq lbl_80243EF4 +/* 80243EC4 00240E24 83 FD 01 9C */ lwz r31, 0x19c(r29) +/* 80243EC8 00240E28 28 1F 00 00 */ cmplwi r31, 0 +/* 80243ECC 00240E2C 41 82 00 28 */ beq lbl_80243EF4 +/* 80243ED0 00240E30 34 1F 00 04 */ addic. r0, r31, 4 +/* 80243ED4 00240E34 41 82 00 18 */ beq lbl_80243EEC +/* 80243ED8 00240E38 34 1F 00 04 */ addic. r0, r31, 4 +/* 80243EDC 00240E3C 41 82 00 10 */ beq lbl_80243EEC +/* 80243EE0 00240E40 38 7F 00 04 */ addi r3, r31, 4 +/* 80243EE4 00240E44 38 80 00 00 */ li r4, 0 +/* 80243EE8 00240E48 48 0F CF 59 */ bl __dt__6CTokenFv +lbl_80243EEC: +/* 80243EEC 00240E4C 7F E3 FB 78 */ mr r3, r31 +/* 80243EF0 00240E50 48 0D 1A 41 */ bl Free__7CMemoryFPCv +lbl_80243EF4: +/* 80243EF4 00240E54 7F A3 EB 78 */ mr r3, r29 +/* 80243EF8 00240E58 38 80 00 00 */ li r4, 0 +/* 80243EFC 00240E5C 4B E2 E6 D1 */ bl __dt__16CPauseScreenBaseFv +/* 80243F00 00240E60 7F C0 07 35 */ extsh. r0, r30 +/* 80243F04 00240E64 40 81 00 0C */ ble lbl_80243F10 +/* 80243F08 00240E68 7F A3 EB 78 */ mr r3, r29 +/* 80243F0C 00240E6C 48 0D 1A 25 */ bl Free__7CMemoryFPCv +lbl_80243F10: +/* 80243F10 00240E70 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80243F14 00240E74 7F A3 EB 78 */ mr r3, r29 +/* 80243F18 00240E78 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80243F1C 00240E7C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80243F20 00240E80 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80243F24 00240E84 7C 08 03 A6 */ mtlr r0 +/* 80243F28 00240E88 38 21 00 20 */ addi r1, r1, 0x20 +/* 80243F2C 00240E8C 4E 80 00 20 */ blr + +.global __ct__14COptionsScreenFRC13CStateManagerRC9CGuiFrameRC12CStringTable +__ct__14COptionsScreenFRC13CStateManagerRC9CGuiFrameRC12CStringTable: +/* 80243F30 00240E90 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80243F34 00240E94 7C 08 02 A6 */ mflr r0 +/* 80243F38 00240E98 90 01 00 14 */ stw r0, 0x14(r1) +/* 80243F3C 00240E9C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80243F40 00240EA0 7C 7F 1B 78 */ mr r31, r3 +/* 80243F44 00240EA4 4B E2 E9 0D */ bl __ct__16CPauseScreenBaseFRC13CStateManagerRC9CGuiFrameRC12CStringTable +/* 80243F48 00240EA8 3C 80 80 3F */ lis r4, lbl_803E87D8@ha +/* 80243F4C 00240EAC 3C 60 80 3D */ lis r3, lbl_803D45B4@ha +/* 80243F50 00240EB0 38 84 87 D8 */ addi r4, r4, lbl_803E87D8@l +/* 80243F54 00240EB4 38 00 00 00 */ li r0, 0 +/* 80243F58 00240EB8 90 9F 00 00 */ stw r4, 0(r31) +/* 80243F5C 00240EBC 38 63 45 B4 */ addi r3, r3, lbl_803D45B4@l +/* 80243F60 00240EC0 38 83 01 30 */ addi r4, r3, 0x130 +/* 80243F64 00240EC4 38 60 00 24 */ li r3, 0x24 +/* 80243F68 00240EC8 90 1F 01 9C */ stw r0, 0x19c(r31) +/* 80243F6C 00240ECC 38 A0 00 00 */ li r5, 0 +/* 80243F70 00240ED0 48 0D 18 FD */ bl __nw__FUlPCcPCc +/* 80243F74 00240ED4 7C 60 1B 79 */ or. r0, r3, r3 +/* 80243F78 00240ED8 41 82 00 0C */ beq lbl_80243F84 +/* 80243F7C 00240EDC 48 05 AC 3D */ bl __ct__13CGameCubeDollFv +/* 80243F80 00240EE0 7C 60 1B 78 */ mr r0, r3 +lbl_80243F84: +/* 80243F84 00240EE4 90 1F 01 A0 */ stw r0, 0x1a0(r31) +/* 80243F88 00240EE8 38 00 00 00 */ li r0, 0 +/* 80243F8C 00240EEC 38 7F 01 A8 */ addi r3, r31, 0x1a8 +/* 80243F90 00240EF0 90 1F 01 A4 */ stw r0, 0x1a4(r31) +/* 80243F94 00240EF4 48 12 62 01 */ bl __ct__16CRumbleGeneratorFv +/* 80243F98 00240EF8 C0 02 B8 10 */ lfs f0, lbl_805AD530@sda21(r2) +/* 80243F9C 00240EFC 38 80 00 00 */ li r4, 0 +/* 80243FA0 00240F00 7F E3 FB 78 */ mr r3, r31 +/* 80243FA4 00240F04 D0 1F 02 9C */ stfs f0, 0x29c(r31) +/* 80243FA8 00240F08 88 1F 02 A0 */ lbz r0, 0x2a0(r31) +/* 80243FAC 00240F0C 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 80243FB0 00240F10 98 1F 02 A0 */ stb r0, 0x2a0(r31) +/* 80243FB4 00240F14 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80243FB8 00240F18 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80243FBC 00240F1C 7C 08 03 A6 */ mtlr r0 +/* 80243FC0 00240F20 38 21 00 10 */ addi r1, r1, 0x10 +/* 80243FC4 00240F24 4E 80 00 20 */ blr + +.global TryRestoreDefaults__12CGameOptionsFRC11CFinalInputiib +TryRestoreDefaults__12CGameOptionsFRC11CFinalInputiib: +/* 80243FC8 00240F28 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80243FCC 00240F2C 7C 08 02 A6 */ mflr r0 +/* 80243FD0 00240F30 90 01 00 24 */ stw r0, 0x24(r1) +/* 80243FD4 00240F34 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80243FD8 00240F38 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80243FDC 00240F3C 7C 9E 23 78 */ mr r30, r4 +/* 80243FE0 00240F40 3C 80 80 3F */ lis r4, lbl_803E8720@ha +/* 80243FE4 00240F44 57 C7 18 38 */ slwi r7, r30, 3 +/* 80243FE8 00240F48 38 04 87 20 */ addi r0, r4, lbl_803E8720@l +/* 80243FEC 00240F4C 7C 80 3A 14 */ add r4, r0, r7 +/* 80243FF0 00240F50 80 04 00 00 */ lwz r0, 0(r4) +/* 80243FF4 00240F54 2C 00 00 00 */ cmpwi r0, 0 +/* 80243FF8 00240F58 41 82 01 98 */ beq lbl_80244190 +/* 80243FFC 00240F5C 1C 05 00 18 */ mulli r0, r5, 0x18 +/* 80244000 00240F60 80 84 00 04 */ lwz r4, 4(r4) +/* 80244004 00240F64 7C 04 00 2E */ lwzx r0, r4, r0 +/* 80244008 00240F68 2C 00 00 0E */ cmpwi r0, 0xe +/* 8024400C 00240F6C 40 82 01 84 */ bne lbl_80244190 +/* 80244010 00240F70 88 03 00 2D */ lbz r0, 0x2d(r3) +/* 80244014 00240F74 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 80244018 00240F78 41 82 01 78 */ beq lbl_80244190 +/* 8024401C 00240F7C 54 C0 06 3F */ clrlwi. r0, r6, 0x18 +/* 80244020 00240F80 41 82 00 50 */ beq lbl_80244070 +/* 80244024 00240F84 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80244028 00240F88 38 61 00 10 */ addi r3, r1, 0x10 +/* 8024402C 00240F8C 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80244030 00240F90 38 80 04 48 */ li r4, 0x448 +/* 80244034 00240F94 38 A0 00 7F */ li r5, 0x7f +/* 80244038 00240F98 38 C0 00 40 */ li r6, 0x40 +/* 8024403C 00240F9C 38 E0 00 00 */ li r7, 0 +/* 80244040 00240FA0 39 20 00 00 */ li r9, 0 +/* 80244044 00240FA4 48 0A 5D 31 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80244048 00240FA8 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 8024404C 00240FAC 38 61 00 0C */ addi r3, r1, 0xc +/* 80244050 00240FB0 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80244054 00240FB4 38 80 04 43 */ li r4, 0x443 +/* 80244058 00240FB8 38 A0 00 7F */ li r5, 0x7f +/* 8024405C 00240FBC 38 C0 00 40 */ li r6, 0x40 +/* 80244060 00240FC0 38 E0 00 00 */ li r7, 0 +/* 80244064 00240FC4 39 20 00 00 */ li r9, 0 +/* 80244068 00240FC8 48 0A 5D 0D */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 8024406C 00240FCC 48 00 00 28 */ b lbl_80244094 +lbl_80244070: +/* 80244070 00240FD0 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80244074 00240FD4 38 61 00 08 */ addi r3, r1, 8 +/* 80244078 00240FD8 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8024407C 00240FDC 38 80 05 98 */ li r4, 0x598 +/* 80244080 00240FE0 38 A0 00 7F */ li r5, 0x7f +/* 80244084 00240FE4 38 C0 00 40 */ li r6, 0x40 +/* 80244088 00240FE8 38 E0 00 00 */ li r7, 0 +/* 8024408C 00240FEC 39 20 00 00 */ li r9, 0 +/* 80244090 00240FF0 48 0A 5C E5 */ bl SfxStart__11CSfxManagerFUsssbsbi +lbl_80244094: +/* 80244094 00240FF4 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) +/* 80244098 00240FF8 2C 1E 00 02 */ cmpwi r30, 2 +/* 8024409C 00240FFC 3B E3 01 7C */ addi r31, r3, 0x17c +/* 802440A0 00241000 41 82 00 98 */ beq lbl_80244138 +/* 802440A4 00241004 40 80 00 14 */ bge lbl_802440B8 +/* 802440A8 00241008 2C 1E 00 00 */ cmpwi r30, 0 +/* 802440AC 0024100C 41 82 00 18 */ beq lbl_802440C4 +/* 802440B0 00241010 40 80 00 44 */ bge lbl_802440F4 +/* 802440B4 00241014 48 00 00 DC */ b lbl_80244190 +lbl_802440B8: +/* 802440B8 00241018 2C 1E 00 04 */ cmpwi r30, 4 +/* 802440BC 0024101C 40 80 00 D4 */ bge lbl_80244190 +/* 802440C0 00241020 48 00 00 AC */ b lbl_8024416C +lbl_802440C4: +/* 802440C4 00241024 38 00 00 FF */ li r0, 0xff +/* 802440C8 00241028 7F E3 FB 78 */ mr r3, r31 +/* 802440CC 0024102C 90 1F 00 60 */ stw r0, 0x60(r31) +/* 802440D0 00241030 38 80 00 FF */ li r4, 0xff +/* 802440D4 00241034 4B FC AC 65 */ bl SetHelmetAlpha__12CGameOptionsFi +/* 802440D8 00241038 88 82 B2 20 */ lbz r4, lbl_805ACF40@sda21(r2) +/* 802440DC 0024103C 7F E3 FB 78 */ mr r3, r31 +/* 802440E0 00241040 4B FC AC 49 */ bl SetHUDLag__12CGameOptionsFb +/* 802440E4 00241044 88 82 B2 24 */ lbz r4, lbl_805ACF44@sda21(r2) +/* 802440E8 00241048 7F E3 FB 78 */ mr r3, r31 +/* 802440EC 0024104C 4B FC AC 2D */ bl SetIsHintSystemEnabled__12CGameOptionsFb +/* 802440F0 00241050 48 00 00 A0 */ b lbl_80244190 +lbl_802440F4: +/* 802440F4 00241054 7F E3 FB 78 */ mr r3, r31 +/* 802440F8 00241058 38 80 00 04 */ li r4, 4 +/* 802440FC 0024105C 38 A0 00 01 */ li r5, 1 +/* 80244100 00241060 4B FC AF 99 */ bl SetScreenBrightness__12CGameOptionsFib +/* 80244104 00241064 7F E3 FB 78 */ mr r3, r31 +/* 80244108 00241068 38 80 00 00 */ li r4, 0 +/* 8024410C 0024106C 38 A0 00 01 */ li r5, 1 +/* 80244110 00241070 4B FC AE CD */ bl SetScreenPositionX__12CGameOptionsFib +/* 80244114 00241074 7F E3 FB 78 */ mr r3, r31 +/* 80244118 00241078 38 80 00 00 */ li r4, 0 +/* 8024411C 0024107C 38 A0 00 01 */ li r5, 1 +/* 80244120 00241080 4B FC AE 45 */ bl SetScreenPositionY__12CGameOptionsFib +/* 80244124 00241084 7F E3 FB 78 */ mr r3, r31 +/* 80244128 00241088 38 80 00 00 */ li r4, 0 +/* 8024412C 0024108C 38 A0 00 01 */ li r5, 1 +/* 80244130 00241090 4B FC AD BD */ bl SetScreenStretch__12CGameOptionsFib +/* 80244134 00241094 48 00 00 5C */ b lbl_80244190 +lbl_80244138: +/* 80244138 00241098 7F E3 FB 78 */ mr r3, r31 +/* 8024413C 0024109C 38 80 00 7F */ li r4, 0x7f +/* 80244140 002410A0 38 A0 00 01 */ li r5, 1 +/* 80244144 002410A4 4B FC AD 25 */ bl SetSfxVolume__12CGameOptionsFib +/* 80244148 002410A8 7F E3 FB 78 */ mr r3, r31 +/* 8024414C 002410AC 38 80 00 7F */ li r4, 0x7f +/* 80244150 002410B0 38 A0 00 01 */ li r5, 1 +/* 80244154 002410B4 4B FC AC B5 */ bl SetMusicVolume__12CGameOptionsFib +/* 80244158 002410B8 7F E3 FB 78 */ mr r3, r31 +/* 8024415C 002410BC 38 80 00 01 */ li r4, 1 +/* 80244160 002410C0 38 A0 00 01 */ li r5, 1 +/* 80244164 002410C4 4B FC AC 45 */ bl SetSurroundMode__12CGameOptionsFQ29CAudioSys14ESurroundModesi +/* 80244168 002410C8 48 00 00 28 */ b lbl_80244190 +lbl_8024416C: +/* 8024416C 002410CC 88 82 B2 21 */ lbz r4, lbl_805ACF41@sda21(r2) +/* 80244170 002410D0 7F E3 FB 78 */ mr r3, r31 +/* 80244174 002410D4 4B FC AB 95 */ bl SetInvertYAxis__12CGameOptionsFb +/* 80244178 002410D8 88 82 B2 22 */ lbz r4, lbl_805ACF42@sda21(r2) +/* 8024417C 002410DC 7F E3 FB 78 */ mr r3, r31 +/* 80244180 002410E0 4B FC AB 79 */ bl SetIsRumbleEnabled__12CGameOptionsFb +/* 80244184 002410E4 88 82 B2 23 */ lbz r4, lbl_805ACF43@sda21(r2) +/* 80244188 002410E8 7F E3 FB 78 */ mr r3, r31 +/* 8024418C 002410EC 4B FC AB 29 */ bl ToggleControls__12CGameOptionsFb +lbl_80244190: +/* 80244190 002410F0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80244194 002410F4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80244198 002410F8 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8024419C 002410FC 7C 08 03 A6 */ mtlr r0 +/* 802441A0 00241100 38 21 00 20 */ addi r1, r1, 0x20 +/* 802441A4 00241104 4E 80 00 20 */ blr + +.global SetOption__12CGameOptionsF11EGameOptioni +SetOption__12CGameOptionsF11EGameOptioni: +/* 802441A8 00241108 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 802441AC 0024110C 7C 08 02 A6 */ mflr r0 +/* 802441B0 00241110 28 03 00 0D */ cmplwi r3, 0xd +/* 802441B4 00241114 90 01 00 14 */ stw r0, 0x14(r1) +/* 802441B8 00241118 80 AD A0 80 */ lwz r5, gpGameState@sda21(r13) +/* 802441BC 0024111C 38 C5 01 7C */ addi r6, r5, 0x17c +/* 802441C0 00241120 41 81 01 14 */ bgt lbl_802442D4 +/* 802441C4 00241124 3C A0 80 3F */ lis r5, lbl_803E882C@ha +/* 802441C8 00241128 54 60 10 3A */ slwi r0, r3, 2 +/* 802441CC 0024112C 38 65 88 2C */ addi r3, r5, lbl_803E882C@l +/* 802441D0 00241130 7C 03 00 2E */ lwzx r0, r3, r0 +/* 802441D4 00241134 7C 09 03 A6 */ mtctr r0 +/* 802441D8 00241138 4E 80 04 20 */ bctr +/* 802441DC 0024113C 90 86 00 60 */ stw r4, 0x60(r6) +/* 802441E0 00241140 48 00 00 F4 */ b lbl_802442D4 +/* 802441E4 00241144 7C C3 33 78 */ mr r3, r6 +/* 802441E8 00241148 4B FC AB 51 */ bl SetHelmetAlpha__12CGameOptionsFi +/* 802441EC 0024114C 48 00 00 E8 */ b lbl_802442D4 +/* 802441F0 00241150 7C 04 00 D0 */ neg r0, r4 +/* 802441F4 00241154 7C C3 33 78 */ mr r3, r6 +/* 802441F8 00241158 7C 00 20 78 */ andc r0, r0, r4 +/* 802441FC 0024115C 54 04 0F FE */ srwi r4, r0, 0x1f +/* 80244200 00241160 4B FC AB 29 */ bl SetHUDLag__12CGameOptionsFb +/* 80244204 00241164 48 00 00 D0 */ b lbl_802442D4 +/* 80244208 00241168 7C 04 00 D0 */ neg r0, r4 +/* 8024420C 0024116C 7C C3 33 78 */ mr r3, r6 +/* 80244210 00241170 7C 00 20 78 */ andc r0, r0, r4 +/* 80244214 00241174 54 04 0F FE */ srwi r4, r0, 0x1f +/* 80244218 00241178 4B FC AB 01 */ bl SetIsHintSystemEnabled__12CGameOptionsFb +/* 8024421C 0024117C 48 00 00 B8 */ b lbl_802442D4 +/* 80244220 00241180 7C C3 33 78 */ mr r3, r6 +/* 80244224 00241184 38 A0 00 01 */ li r5, 1 +/* 80244228 00241188 4B FC AE 71 */ bl SetScreenBrightness__12CGameOptionsFib +/* 8024422C 0024118C 48 00 00 A8 */ b lbl_802442D4 +/* 80244230 00241190 7C C3 33 78 */ mr r3, r6 +/* 80244234 00241194 38 A0 00 01 */ li r5, 1 +/* 80244238 00241198 4B FC AD A5 */ bl SetScreenPositionX__12CGameOptionsFib +/* 8024423C 0024119C 48 00 00 98 */ b lbl_802442D4 +/* 80244240 002411A0 7C C3 33 78 */ mr r3, r6 +/* 80244244 002411A4 38 A0 00 01 */ li r5, 1 +/* 80244248 002411A8 4B FC AD 1D */ bl SetScreenPositionY__12CGameOptionsFib +/* 8024424C 002411AC 48 00 00 88 */ b lbl_802442D4 +/* 80244250 002411B0 7C C3 33 78 */ mr r3, r6 +/* 80244254 002411B4 38 A0 00 01 */ li r5, 1 +/* 80244258 002411B8 4B FC AC 95 */ bl SetScreenStretch__12CGameOptionsFib +/* 8024425C 002411BC 48 00 00 78 */ b lbl_802442D4 +/* 80244260 002411C0 7C C3 33 78 */ mr r3, r6 +/* 80244264 002411C4 38 A0 00 01 */ li r5, 1 +/* 80244268 002411C8 4B FC AC 01 */ bl SetSfxVolume__12CGameOptionsFib +/* 8024426C 002411CC 48 00 00 68 */ b lbl_802442D4 +/* 80244270 002411D0 7C C3 33 78 */ mr r3, r6 +/* 80244274 002411D4 38 A0 00 01 */ li r5, 1 +/* 80244278 002411D8 4B FC AB 91 */ bl SetMusicVolume__12CGameOptionsFib +/* 8024427C 002411DC 48 00 00 58 */ b lbl_802442D4 +/* 80244280 002411E0 7C C3 33 78 */ mr r3, r6 +/* 80244284 002411E4 38 A0 00 01 */ li r5, 1 +/* 80244288 002411E8 4B FC AB 21 */ bl SetSurroundMode__12CGameOptionsFQ29CAudioSys14ESurroundModesi +/* 8024428C 002411EC 48 00 00 48 */ b lbl_802442D4 +/* 80244290 002411F0 7C 04 00 D0 */ neg r0, r4 +/* 80244294 002411F4 7C C3 33 78 */ mr r3, r6 +/* 80244298 002411F8 7C 00 20 78 */ andc r0, r0, r4 +/* 8024429C 002411FC 54 04 0F FE */ srwi r4, r0, 0x1f +/* 802442A0 00241200 4B FC AA 69 */ bl SetInvertYAxis__12CGameOptionsFb +/* 802442A4 00241204 48 00 00 30 */ b lbl_802442D4 +/* 802442A8 00241208 7C 04 00 D0 */ neg r0, r4 +/* 802442AC 0024120C 7C C3 33 78 */ mr r3, r6 +/* 802442B0 00241210 7C 00 20 78 */ andc r0, r0, r4 +/* 802442B4 00241214 54 04 0F FE */ srwi r4, r0, 0x1f +/* 802442B8 00241218 4B FC AA 41 */ bl SetIsRumbleEnabled__12CGameOptionsFb +/* 802442BC 0024121C 48 00 00 18 */ b lbl_802442D4 +/* 802442C0 00241220 7C 04 00 D0 */ neg r0, r4 +/* 802442C4 00241224 7C C3 33 78 */ mr r3, r6 +/* 802442C8 00241228 7C 00 20 78 */ andc r0, r0, r4 +/* 802442CC 0024122C 54 04 0F FE */ srwi r4, r0, 0x1f +/* 802442D0 00241230 4B FC A9 E5 */ bl ToggleControls__12CGameOptionsFb +lbl_802442D4: +/* 802442D4 00241234 80 01 00 14 */ lwz r0, 0x14(r1) +/* 802442D8 00241238 7C 08 03 A6 */ mtlr r0 +/* 802442DC 0024123C 38 21 00 10 */ addi r1, r1, 0x10 +/* 802442E0 00241240 4E 80 00 20 */ blr + +.global GetOption__11CGameOptionF11EGameOption +GetOption__11CGameOptionF11EGameOption: +/* 802442E4 00241244 28 03 00 0D */ cmplwi r3, 0xd +/* 802442E8 00241248 80 AD A0 80 */ lwz r5, gpGameState@sda21(r13) +/* 802442EC 0024124C 41 81 00 DC */ bgt lbl_802443C8 +/* 802442F0 00241250 3C 80 80 3F */ lis r4, lbl_803E8864@ha +/* 802442F4 00241254 54 60 10 3A */ slwi r0, r3, 2 +/* 802442F8 00241258 38 64 88 64 */ addi r3, r4, lbl_803E8864@l +/* 802442FC 0024125C 7C 03 00 2E */ lwzx r0, r3, r0 +/* 80244300 00241260 7C 09 03 A6 */ mtctr r0 +/* 80244304 00241264 4E 80 04 20 */ bctr +/* 80244308 00241268 80 65 01 DC */ lwz r3, 0x1dc(r5) +/* 8024430C 0024126C 4E 80 00 20 */ blr +/* 80244310 00241270 80 65 01 E0 */ lwz r3, 0x1e0(r5) +/* 80244314 00241274 4E 80 00 20 */ blr +/* 80244318 00241278 88 05 01 E4 */ lbz r0, 0x1e4(r5) +/* 8024431C 0024127C 54 03 CF FE */ rlwinm r3, r0, 0x19, 0x1f, 0x1f +/* 80244320 00241280 7C 03 00 D0 */ neg r0, r3 +/* 80244324 00241284 7C 00 1B 78 */ or r0, r0, r3 +/* 80244328 00241288 54 03 0F FE */ srwi r3, r0, 0x1f +/* 8024432C 0024128C 4E 80 00 20 */ blr +/* 80244330 00241290 88 05 01 E4 */ lbz r0, 0x1e4(r5) +/* 80244334 00241294 54 03 EF FE */ rlwinm r3, r0, 0x1d, 0x1f, 0x1f +/* 80244338 00241298 7C 03 00 D0 */ neg r0, r3 +/* 8024433C 0024129C 7C 00 1B 78 */ or r0, r0, r3 +/* 80244340 002412A0 54 03 0F FE */ srwi r3, r0, 0x1f +/* 80244344 002412A4 4E 80 00 20 */ blr +/* 80244348 002412A8 80 65 01 C4 */ lwz r3, 0x1c4(r5) +/* 8024434C 002412AC 4E 80 00 20 */ blr +/* 80244350 002412B0 80 65 01 C8 */ lwz r3, 0x1c8(r5) +/* 80244354 002412B4 4E 80 00 20 */ blr +/* 80244358 002412B8 80 65 01 CC */ lwz r3, 0x1cc(r5) +/* 8024435C 002412BC 4E 80 00 20 */ blr +/* 80244360 002412C0 80 65 01 D0 */ lwz r3, 0x1d0(r5) +/* 80244364 002412C4 4E 80 00 20 */ blr +/* 80244368 002412C8 80 65 01 D4 */ lwz r3, 0x1d4(r5) +/* 8024436C 002412CC 4E 80 00 20 */ blr +/* 80244370 002412D0 80 65 01 D8 */ lwz r3, 0x1d8(r5) +/* 80244374 002412D4 4E 80 00 20 */ blr +/* 80244378 002412D8 80 65 01 C0 */ lwz r3, 0x1c0(r5) +/* 8024437C 002412DC 4E 80 00 20 */ blr +/* 80244380 002412E0 88 05 01 E4 */ lbz r0, 0x1e4(r5) +/* 80244384 002412E4 54 03 D7 FE */ rlwinm r3, r0, 0x1a, 0x1f, 0x1f +/* 80244388 002412E8 7C 03 00 D0 */ neg r0, r3 +/* 8024438C 002412EC 7C 00 1B 78 */ or r0, r0, r3 +/* 80244390 002412F0 54 03 0F FE */ srwi r3, r0, 0x1f +/* 80244394 002412F4 4E 80 00 20 */ blr +/* 80244398 002412F8 88 05 01 E4 */ lbz r0, 0x1e4(r5) +/* 8024439C 002412FC 54 03 DF FE */ rlwinm r3, r0, 0x1b, 0x1f, 0x1f +/* 802443A0 00241300 7C 03 00 D0 */ neg r0, r3 +/* 802443A4 00241304 7C 00 1B 78 */ or r0, r0, r3 +/* 802443A8 00241308 54 03 0F FE */ srwi r3, r0, 0x1f +/* 802443AC 0024130C 4E 80 00 20 */ blr +/* 802443B0 00241310 88 05 01 E4 */ lbz r0, 0x1e4(r5) +/* 802443B4 00241314 54 03 E7 FE */ rlwinm r3, r0, 0x1c, 0x1f, 0x1f +/* 802443B8 00241318 7C 03 00 D0 */ neg r0, r3 +/* 802443BC 0024131C 7C 00 1B 78 */ or r0, r0, r3 +/* 802443C0 00241320 54 03 0F FE */ srwi r3, r0, 0x1f +/* 802443C4 00241324 4E 80 00 20 */ blr +lbl_802443C8: +/* 802443C8 00241328 38 60 00 00 */ li r3, 0 +/* 802443CC 0024132C 4E 80 00 20 */ blr + +.global sub_802443d0 +sub_802443d0: +/* 802443D0 00241330 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 802443D4 00241334 7C 08 02 A6 */ mflr r0 +/* 802443D8 00241338 90 01 00 44 */ stw r0, 0x44(r1) +/* 802443DC 0024133C 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 802443E0 00241340 93 C1 00 38 */ stw r30, 0x38(r1) +/* 802443E4 00241344 7C BE 2B 78 */ mr r30, r5 +/* 802443E8 00241348 93 A1 00 34 */ stw r29, 0x34(r1) +/* 802443EC 0024134C 7C 9D 23 78 */ mr r29, r4 +/* 802443F0 00241350 93 81 00 30 */ stw r28, 0x30(r1) +/* 802443F4 00241354 7C 7C 1B 78 */ mr r28, r3 +/* 802443F8 00241358 48 07 DD 5D */ bl FindWidget__9CGuiFrameCFPCc +/* 802443FC 0024135C 7C 7F 1B 78 */ mr r31, r3 +/* 80244400 00241360 7F C4 F3 78 */ mr r4, r30 +/* 80244404 00241364 38 61 00 20 */ addi r3, r1, 0x20 +/* 80244408 00241368 38 C1 00 0C */ addi r6, r1, 0xc +/* 8024440C 0024136C 38 A0 FF FF */ li r5, -1 +/* 80244410 00241370 48 0F 93 AD */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCwiRCQ24rstl17rmemory_allocator" +/* 80244414 00241374 38 7F 00 D4 */ addi r3, r31, 0xd4 +/* 80244418 00241378 38 81 00 20 */ addi r4, r1, 0x20 +/* 8024441C 0024137C 38 A0 00 00 */ li r5, 0 +/* 80244420 00241380 48 08 54 65 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80244424 00241384 38 61 00 20 */ addi r3, r1, 0x20 +/* 80244428 00241388 48 0F 8D 0D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8024442C 0024138C 3C 60 80 3D */ lis r3, lbl_803D45B4@ha +/* 80244430 00241390 7F A4 EB 78 */ mr r4, r29 +/* 80244434 00241394 38 63 45 B4 */ addi r3, r3, lbl_803D45B4@l +/* 80244438 00241398 38 63 01 37 */ addi r3, r3, 0x137 +/* 8024443C 0024139C 4C C6 31 82 */ crclr 6 +/* 80244440 002413A0 48 09 1D 71 */ bl Stringize__7CBasicsFPCce +/* 80244444 002413A4 7C 64 1B 78 */ mr r4, r3 +/* 80244448 002413A8 7F 83 E3 78 */ mr r3, r28 +/* 8024444C 002413AC 48 07 DD 09 */ bl FindWidget__9CGuiFrameCFPCc +/* 80244450 002413B0 7C 7F 1B 78 */ mr r31, r3 +/* 80244454 002413B4 7F C4 F3 78 */ mr r4, r30 +/* 80244458 002413B8 38 61 00 10 */ addi r3, r1, 0x10 +/* 8024445C 002413BC 38 C1 00 08 */ addi r6, r1, 8 +/* 80244460 002413C0 38 A0 FF FF */ li r5, -1 +/* 80244464 002413C4 48 0F 93 59 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCwiRCQ24rstl17rmemory_allocator" +/* 80244468 002413C8 38 7F 00 D4 */ addi r3, r31, 0xd4 +/* 8024446C 002413CC 38 81 00 10 */ addi r4, r1, 0x10 +/* 80244470 002413D0 38 A0 00 00 */ li r5, 0 +/* 80244474 002413D4 48 08 54 11 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80244478 002413D8 38 61 00 10 */ addi r3, r1, 0x10 +/* 8024447C 002413DC 48 0F 8C B9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80244480 002413E0 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80244484 002413E4 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 80244488 002413E8 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 8024448C 002413EC 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 80244490 002413F0 83 81 00 30 */ lwz r28, 0x30(r1) +/* 80244494 002413F4 7C 08 03 A6 */ mtlr r0 +/* 80244498 002413F8 38 21 00 40 */ addi r1, r1, 0x40 +/* 8024449C 002413FC 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CQuitGameScreen.s b/asm/Kyoto_CWD/CQuitGameScreen.s new file mode 100644 index 00000000..14db87d9 --- /dev/null +++ b/asm/Kyoto_CWD/CQuitGameScreen.s @@ -0,0 +1,494 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global SetColors__15CQuitGameScreenFv +SetColors__15CQuitGameScreenFv: +/* 802444A0 00241400 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 802444A4 00241404 7C 08 02 A6 */ mflr r0 +/* 802444A8 00241408 38 A0 00 C8 */ li r5, 0xc8 +/* 802444AC 0024140C 38 80 00 FF */ li r4, 0xff +/* 802444B0 00241410 90 01 00 24 */ stw r0, 0x24(r1) +/* 802444B4 00241414 38 00 00 32 */ li r0, 0x32 +/* 802444B8 00241418 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 802444BC 0024141C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 802444C0 00241420 3B C0 00 00 */ li r30, 0 +/* 802444C4 00241424 93 A1 00 14 */ stw r29, 0x14(r1) +/* 802444C8 00241428 7C 7D 1B 78 */ mr r29, r3 +/* 802444CC 0024142C 98 A1 00 0C */ stb r5, 0xc(r1) +/* 802444D0 00241430 98 A1 00 0D */ stb r5, 0xd(r1) +/* 802444D4 00241434 98 A1 00 0E */ stb r5, 0xe(r1) +/* 802444D8 00241438 98 81 00 0F */ stb r4, 0xf(r1) +/* 802444DC 0024143C 98 01 00 08 */ stb r0, 8(r1) +/* 802444E0 00241440 98 01 00 09 */ stb r0, 9(r1) +/* 802444E4 00241444 98 01 00 0A */ stb r0, 0xa(r1) +/* 802444E8 00241448 98 81 00 0B */ stb r4, 0xb(r1) +/* 802444EC 0024144C 80 63 00 14 */ lwz r3, 0x14(r3) +/* 802444F0 00241450 83 E3 00 C4 */ lwz r31, 0xc4(r3) +lbl_802444F4: +/* 802444F4 00241454 80 7D 00 14 */ lwz r3, 0x14(r29) +/* 802444F8 00241458 7F C4 F3 78 */ mr r4, r30 +/* 802444FC 0024145C 81 83 00 00 */ lwz r12, 0(r3) +/* 80244500 00241460 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 80244504 00241464 7D 89 03 A6 */ mtctr r12 +/* 80244508 00241468 4E 80 04 21 */ bctrl +/* 8024450C 0024146C 7C 1E F8 00 */ cmpw r30, r31 +/* 80244510 00241470 38 81 00 08 */ addi r4, r1, 8 +/* 80244514 00241474 40 82 00 08 */ bne lbl_8024451C +/* 80244518 00241478 38 81 00 0C */ addi r4, r1, 0xc +lbl_8024451C: +/* 8024451C 0024147C 48 08 63 51 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80244520 00241480 3B DE 00 01 */ addi r30, r30, 1 +/* 80244524 00241484 2C 1E 00 02 */ cmpwi r30, 2 +/* 80244528 00241488 41 80 FF CC */ blt lbl_802444F4 +/* 8024452C 0024148C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80244530 00241490 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80244534 00241494 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80244538 00241498 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8024453C 0024149C 7C 08 03 A6 */ mtlr r0 +/* 80244540 002414A0 38 21 00 20 */ addi r1, r1, 0x20 +/* 80244544 002414A4 4E 80 00 20 */ blr + +.global FinishedLoading__15CQuitGameScreenFv +FinishedLoading__15CQuitGameScreenFv: +/* 80244548 002414A8 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 8024454C 002414AC 7C 08 02 A6 */ mflr r0 +/* 80244550 002414B0 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 80244554 002414B4 93 E1 00 BC */ stw r31, 0xbc(r1) +/* 80244558 002414B8 7C 7F 1B 78 */ mr r31, r3 +/* 8024455C 002414BC 3C 60 80 3D */ lis r3, lbl_803D45B4@ha +/* 80244560 002414C0 93 C1 00 B8 */ stw r30, 0xb8(r1) +/* 80244564 002414C4 38 63 45 B4 */ addi r3, r3, lbl_803D45B4@l +/* 80244568 002414C8 38 83 01 3B */ addi r4, r3, 0x13b +/* 8024456C 002414CC 80 1F 00 0C */ lwz r0, 0xc(r31) +/* 80244570 002414D0 90 1F 00 10 */ stw r0, 0x10(r31) +/* 80244574 002414D4 80 7F 00 10 */ lwz r3, 0x10(r31) +/* 80244578 002414D8 48 07 DB DD */ bl FindWidget__9CGuiFrameCFPCc +/* 8024457C 002414DC 90 7F 00 14 */ stw r3, 0x14(r31) +/* 80244580 002414E0 3C 80 80 3F */ lis r4, lbl_803E8708@ha +/* 80244584 002414E4 38 00 00 00 */ li r0, 0 +/* 80244588 002414E8 38 61 00 14 */ addi r3, r1, 0x14 +/* 8024458C 002414EC 80 DF 00 14 */ lwz r6, 0x14(r31) +/* 80244590 002414F0 39 04 87 08 */ addi r8, r4, lbl_803E8708@l +/* 80244594 002414F4 38 81 00 5C */ addi r4, r1, 0x5c +/* 80244598 002414F8 38 A0 00 0C */ li r5, 0xc +/* 8024459C 002414FC 98 06 00 D1 */ stb r0, 0xd1(r6) +/* 802445A0 00241500 80 E8 00 00 */ lwz r7, 0(r8) +/* 802445A4 00241504 80 C8 00 04 */ lwz r6, 4(r8) +/* 802445A8 00241508 80 08 00 08 */ lwz r0, 8(r8) +/* 802445AC 0024150C 90 E1 00 5C */ stw r7, 0x5c(r1) +/* 802445B0 00241510 90 C1 00 60 */ stw r6, 0x60(r1) +/* 802445B4 00241514 90 01 00 64 */ stw r0, 0x64(r1) +/* 802445B8 00241518 4B DB EE D9 */ bl memcpy +/* 802445BC 0024151C 3C 60 80 24 */ lis r3, sub_80244800@ha +/* 802445C0 00241520 93 E1 00 84 */ stw r31, 0x84(r1) +/* 802445C4 00241524 38 03 48 00 */ addi r0, r3, sub_80244800@l +/* 802445C8 00241528 38 61 00 88 */ addi r3, r1, 0x88 +/* 802445CC 0024152C 90 01 00 80 */ stw r0, 0x80(r1) +/* 802445D0 00241530 38 81 00 14 */ addi r4, r1, 0x14 +/* 802445D4 00241534 38 A0 00 0C */ li r5, 0xc +/* 802445D8 00241538 4B DB EE B9 */ bl memcpy +/* 802445DC 0024153C 80 7F 00 14 */ lwz r3, 0x14(r31) +/* 802445E0 00241540 38 81 00 80 */ addi r4, r1, 0x80 +/* 802445E4 00241544 48 08 22 75 */ bl "SetMenuAdvanceCallback__14CGuiTableGroupFRC29TFunctor1" +/* 802445E8 00241548 3C 80 80 3F */ lis r4, lbl_803E8714@ha +/* 802445EC 0024154C 38 61 00 08 */ addi r3, r1, 8 +/* 802445F0 00241550 39 04 87 14 */ addi r8, r4, lbl_803E8714@l +/* 802445F4 00241554 38 81 00 50 */ addi r4, r1, 0x50 +/* 802445F8 00241558 80 E8 00 00 */ lwz r7, 0(r8) +/* 802445FC 0024155C 38 A0 00 0C */ li r5, 0xc +/* 80244600 00241560 80 C8 00 04 */ lwz r6, 4(r8) +/* 80244604 00241564 80 08 00 08 */ lwz r0, 8(r8) +/* 80244608 00241568 90 E1 00 50 */ stw r7, 0x50(r1) +/* 8024460C 0024156C 90 C1 00 54 */ stw r6, 0x54(r1) +/* 80244610 00241570 90 01 00 58 */ stw r0, 0x58(r1) +/* 80244614 00241574 4B DB EE 7D */ bl memcpy +/* 80244618 00241578 3C 60 80 24 */ lis r3, sub_8024479c@ha +/* 8024461C 0024157C 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 80244620 00241580 38 03 47 9C */ addi r0, r3, sub_8024479c@l +/* 80244624 00241584 38 61 00 70 */ addi r3, r1, 0x70 +/* 80244628 00241588 90 01 00 68 */ stw r0, 0x68(r1) +/* 8024462C 0024158C 38 81 00 08 */ addi r4, r1, 8 +/* 80244630 00241590 38 A0 00 0C */ li r5, 0xc +/* 80244634 00241594 4B DB EE 5D */ bl memcpy +/* 80244638 00241598 80 7F 00 14 */ lwz r3, 0x14(r31) +/* 8024463C 0024159C 38 81 00 68 */ addi r4, r1, 0x68 +/* 80244640 002415A0 48 08 21 B1 */ bl "SetMenuSelectionChangeCallback__14CGuiTableGroupFRC35TFunctor3" +/* 80244644 002415A4 3C 80 80 3D */ lis r4, lbl_803D45B4@ha +/* 80244648 002415A8 80 7F 00 10 */ lwz r3, 0x10(r31) +/* 8024464C 002415AC 38 84 45 B4 */ addi r4, r4, lbl_803D45B4@l +/* 80244650 002415B0 38 84 00 C6 */ addi r4, r4, 0xc6 +/* 80244654 002415B4 48 07 DB 01 */ bl FindWidget__9CGuiFrameCFPCc +/* 80244658 002415B8 80 1F 00 00 */ lwz r0, 0(r31) +/* 8024465C 002415BC 3C 80 80 3D */ lis r4, lbl_803D43C8@ha +/* 80244660 002415C0 7C 7E 1B 78 */ mr r30, r3 +/* 80244664 002415C4 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 80244668 002415C8 54 00 10 3A */ slwi r0, r0, 2 +/* 8024466C 002415CC 38 84 43 C8 */ addi r4, r4, lbl_803D43C8@l +/* 80244670 002415D0 7C 84 00 2E */ lwzx r4, r4, r0 +/* 80244674 002415D4 48 11 20 89 */ bl GetString__12CStringTableCFi +/* 80244678 002415D8 7C 64 1B 78 */ mr r4, r3 +/* 8024467C 002415DC 38 61 00 40 */ addi r3, r1, 0x40 +/* 80244680 002415E0 4B DD 13 71 */ bl wstring_l__4rstlFPCw +/* 80244684 002415E4 38 7E 00 D4 */ addi r3, r30, 0xd4 +/* 80244688 002415E8 38 81 00 40 */ addi r4, r1, 0x40 +/* 8024468C 002415EC 38 A0 00 00 */ li r5, 0 +/* 80244690 002415F0 48 08 51 F5 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80244694 002415F4 38 61 00 40 */ addi r3, r1, 0x40 +/* 80244698 002415F8 48 0F 8A 9D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8024469C 002415FC 3C 80 80 3D */ lis r4, lbl_803D45B4@ha +/* 802446A0 00241600 80 7F 00 10 */ lwz r3, 0x10(r31) +/* 802446A4 00241604 38 84 45 B4 */ addi r4, r4, lbl_803D45B4@l +/* 802446A8 00241608 38 84 01 4F */ addi r4, r4, 0x14f +/* 802446AC 0024160C 48 07 DA A9 */ bl FindWidget__9CGuiFrameCFPCc +/* 802446B0 00241610 7C 7E 1B 78 */ mr r30, r3 +/* 802446B4 00241614 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 802446B8 00241618 38 80 00 16 */ li r4, 0x16 +/* 802446BC 0024161C 48 11 20 41 */ bl GetString__12CStringTableCFi +/* 802446C0 00241620 7C 64 1B 78 */ mr r4, r3 +/* 802446C4 00241624 38 61 00 30 */ addi r3, r1, 0x30 +/* 802446C8 00241628 4B DD 13 29 */ bl wstring_l__4rstlFPCw +/* 802446CC 0024162C 38 7E 00 D4 */ addi r3, r30, 0xd4 +/* 802446D0 00241630 38 81 00 30 */ addi r4, r1, 0x30 +/* 802446D4 00241634 38 A0 00 00 */ li r5, 0 +/* 802446D8 00241638 48 08 51 AD */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 802446DC 0024163C 38 61 00 30 */ addi r3, r1, 0x30 +/* 802446E0 00241640 48 0F 8A 55 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 802446E4 00241644 3C 80 80 3D */ lis r4, lbl_803D45B4@ha +/* 802446E8 00241648 80 7F 00 10 */ lwz r3, 0x10(r31) +/* 802446EC 0024164C 38 84 45 B4 */ addi r4, r4, lbl_803D45B4@l +/* 802446F0 00241650 38 84 01 5C */ addi r4, r4, 0x15c +/* 802446F4 00241654 48 07 DA 61 */ bl FindWidget__9CGuiFrameCFPCc +/* 802446F8 00241658 7C 7E 1B 78 */ mr r30, r3 +/* 802446FC 0024165C 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 80244700 00241660 38 80 00 17 */ li r4, 0x17 +/* 80244704 00241664 48 11 1F F9 */ bl GetString__12CStringTableCFi +/* 80244708 00241668 7C 64 1B 78 */ mr r4, r3 +/* 8024470C 0024166C 38 61 00 20 */ addi r3, r1, 0x20 +/* 80244710 00241670 4B DD 12 E1 */ bl wstring_l__4rstlFPCw +/* 80244714 00241674 38 7E 00 D4 */ addi r3, r30, 0xd4 +/* 80244718 00241678 38 81 00 20 */ addi r4, r1, 0x20 +/* 8024471C 0024167C 38 A0 00 00 */ li r5, 0 +/* 80244720 00241680 48 08 51 65 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80244724 00241684 38 61 00 20 */ addi r3, r1, 0x20 +/* 80244728 00241688 48 0F 8A 0D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8024472C 0024168C 3C 60 80 3D */ lis r3, lbl_803D43F0@ha +/* 80244730 00241690 81 7F 00 14 */ lwz r11, 0x14(r31) +/* 80244734 00241694 38 C3 43 F0 */ addi r6, r3, lbl_803D43F0@l +/* 80244738 00241698 80 1F 00 00 */ lwz r0, 0(r31) +/* 8024473C 0024169C 81 46 00 00 */ lwz r10, 0(r6) +/* 80244740 002416A0 38 81 00 98 */ addi r4, r1, 0x98 +/* 80244744 002416A4 81 26 00 04 */ lwz r9, 4(r6) +/* 80244748 002416A8 54 05 10 3A */ slwi r5, r0, 2 +/* 8024474C 002416AC 81 06 00 08 */ lwz r8, 8(r6) +/* 80244750 002416B0 7F E3 FB 78 */ mr r3, r31 +/* 80244754 002416B4 80 E6 00 0C */ lwz r7, 0xc(r6) +/* 80244758 002416B8 80 C6 00 10 */ lwz r6, 0x10(r6) +/* 8024475C 002416BC 80 0B 00 C4 */ lwz r0, 0xc4(r11) +/* 80244760 002416C0 91 41 00 98 */ stw r10, 0x98(r1) +/* 80244764 002416C4 91 21 00 9C */ stw r9, 0x9c(r1) +/* 80244768 002416C8 91 01 00 A0 */ stw r8, 0xa0(r1) +/* 8024476C 002416CC 90 E1 00 A4 */ stw r7, 0xa4(r1) +/* 80244770 002416D0 90 C1 00 A8 */ stw r6, 0xa8(r1) +/* 80244774 002416D4 90 0B 00 C8 */ stw r0, 0xc8(r11) +/* 80244778 002416D8 7C 04 28 2E */ lwzx r0, r4, r5 +/* 8024477C 002416DC 90 0B 00 C4 */ stw r0, 0xc4(r11) +/* 80244780 002416E0 4B FF FD 21 */ bl SetColors__15CQuitGameScreenFv +/* 80244784 002416E4 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 80244788 002416E8 83 E1 00 BC */ lwz r31, 0xbc(r1) +/* 8024478C 002416EC 83 C1 00 B8 */ lwz r30, 0xb8(r1) +/* 80244790 002416F0 7C 08 03 A6 */ mtlr r0 +/* 80244794 002416F4 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 80244798 002416F8 4E 80 00 20 */ blr + +.global sub_8024479c +sub_8024479c: +/* 8024479C 002416FC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 802447A0 00241700 7C 08 02 A6 */ mflr r0 +/* 802447A4 00241704 90 01 00 34 */ stw r0, 0x34(r1) +/* 802447A8 00241708 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 802447AC 0024170C 7C DF 33 78 */ mr r31, r6 +/* 802447B0 00241710 93 C1 00 28 */ stw r30, 0x28(r1) +/* 802447B4 00241714 7C BE 2B 78 */ mr r30, r5 +/* 802447B8 00241718 38 A0 00 0C */ li r5, 0xc +/* 802447BC 0024171C 93 A1 00 24 */ stw r29, 0x24(r1) +/* 802447C0 00241720 7C 7D 1B 78 */ mr r29, r3 +/* 802447C4 00241724 38 61 00 08 */ addi r3, r1, 8 +/* 802447C8 00241728 4B DB EC C9 */ bl memcpy +/* 802447CC 0024172C 7F A3 EB 78 */ mr r3, r29 +/* 802447D0 00241730 7F C4 F3 78 */ mr r4, r30 +/* 802447D4 00241734 7F E5 FB 78 */ mr r5, r31 +/* 802447D8 00241738 39 81 00 08 */ addi r12, r1, 8 +/* 802447DC 0024173C 48 14 51 51 */ bl __ptmf_scall +/* 802447E0 00241740 60 00 00 00 */ nop +/* 802447E4 00241744 80 01 00 34 */ lwz r0, 0x34(r1) +/* 802447E8 00241748 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 802447EC 0024174C 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 802447F0 00241750 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 802447F4 00241754 7C 08 03 A6 */ mtlr r0 +/* 802447F8 00241758 38 21 00 30 */ addi r1, r1, 0x30 +/* 802447FC 0024175C 4E 80 00 20 */ blr + +.global sub_80244800 +sub_80244800: +/* 80244800 00241760 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80244804 00241764 7C 08 02 A6 */ mflr r0 +/* 80244808 00241768 90 01 00 24 */ stw r0, 0x24(r1) +/* 8024480C 0024176C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80244810 00241770 7C BF 2B 78 */ mr r31, r5 +/* 80244814 00241774 38 A0 00 0C */ li r5, 0xc +/* 80244818 00241778 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8024481C 0024177C 7C 7E 1B 78 */ mr r30, r3 +/* 80244820 00241780 38 61 00 08 */ addi r3, r1, 8 +/* 80244824 00241784 4B DB EC 6D */ bl memcpy +/* 80244828 00241788 7F C3 F3 78 */ mr r3, r30 +/* 8024482C 0024178C 7F E4 FB 78 */ mr r4, r31 +/* 80244830 00241790 39 81 00 08 */ addi r12, r1, 8 +/* 80244834 00241794 48 14 50 F9 */ bl __ptmf_scall +/* 80244838 00241798 60 00 00 00 */ nop +/* 8024483C 0024179C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80244840 002417A0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80244844 002417A4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80244848 002417A8 7C 08 03 A6 */ mtlr r0 +/* 8024484C 002417AC 38 21 00 20 */ addi r1, r1, 0x20 +/* 80244850 002417B0 4E 80 00 20 */ blr + +.global DoSelectionChange__15CQuitGameScreenFP14CGuiTableGroup +DoSelectionChange__15CQuitGameScreenFP14CGuiTableGroup: +/* 80244854 002417B4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80244858 002417B8 7C 08 02 A6 */ mflr r0 +/* 8024485C 002417BC 90 01 00 14 */ stw r0, 0x14(r1) +/* 80244860 002417C0 4B FF FC 41 */ bl SetColors__15CQuitGameScreenFv +/* 80244864 002417C4 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80244868 002417C8 38 61 00 08 */ addi r3, r1, 8 +/* 8024486C 002417CC 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80244870 002417D0 38 80 05 90 */ li r4, 0x590 +/* 80244874 002417D4 38 A0 00 7F */ li r5, 0x7f +/* 80244878 002417D8 38 C0 00 40 */ li r6, 0x40 +/* 8024487C 002417DC 38 E0 00 00 */ li r7, 0 +/* 80244880 002417E0 39 20 00 00 */ li r9, 0 +/* 80244884 002417E4 48 0A 54 F1 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80244888 002417E8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024488C 002417EC 7C 08 03 A6 */ mtlr r0 +/* 80244890 002417F0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80244894 002417F4 4E 80 00 20 */ blr + +.global DoAdvance__15CQuitGameScreenFP14CGuiTableGroup +DoAdvance__15CQuitGameScreenFP14CGuiTableGroup: +/* 80244898 002417F8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8024489C 002417FC 7C 08 02 A6 */ mflr r0 +/* 802448A0 00241800 90 01 00 24 */ stw r0, 0x24(r1) +/* 802448A4 00241804 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 802448A8 00241808 7C 7F 1B 78 */ mr r31, r3 +/* 802448AC 0024180C 80 04 00 C4 */ lwz r0, 0xc4(r4) +/* 802448B0 00241810 2C 00 00 00 */ cmpwi r0, 0 +/* 802448B4 00241814 40 82 00 34 */ bne lbl_802448E8 +/* 802448B8 00241818 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 802448BC 0024181C 38 61 00 0C */ addi r3, r1, 0xc +/* 802448C0 00241820 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 802448C4 00241824 38 80 05 98 */ li r4, 0x598 +/* 802448C8 00241828 38 A0 00 7F */ li r5, 0x7f +/* 802448CC 0024182C 38 C0 00 40 */ li r6, 0x40 +/* 802448D0 00241830 38 E0 00 00 */ li r7, 0 +/* 802448D4 00241834 39 20 00 00 */ li r9, 0 +/* 802448D8 00241838 48 0A 54 9D */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 802448DC 0024183C 38 00 00 01 */ li r0, 1 +/* 802448E0 00241840 90 1F 00 18 */ stw r0, 0x18(r31) +/* 802448E4 00241844 48 00 00 30 */ b lbl_80244914 +lbl_802448E8: +/* 802448E8 00241848 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 802448EC 0024184C 38 61 00 08 */ addi r3, r1, 8 +/* 802448F0 00241850 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 802448F4 00241854 38 80 05 97 */ li r4, 0x597 +/* 802448F8 00241858 38 A0 00 7F */ li r5, 0x7f +/* 802448FC 0024185C 38 C0 00 40 */ li r6, 0x40 +/* 80244900 00241860 38 E0 00 00 */ li r7, 0 +/* 80244904 00241864 39 20 00 00 */ li r9, 0 +/* 80244908 00241868 48 0A 54 6D */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 8024490C 0024186C 38 00 00 02 */ li r0, 2 +/* 80244910 00241870 90 1F 00 18 */ stw r0, 0x18(r31) +lbl_80244914: +/* 80244914 00241874 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80244918 00241878 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8024491C 0024187C 7C 08 03 A6 */ mtlr r0 +/* 80244920 00241880 38 21 00 20 */ addi r1, r1, 0x20 +/* 80244924 00241884 4E 80 00 20 */ blr + +.global Update__15CQuitGameScreenFv +Update__15CQuitGameScreenFv: +/* 80244928 00241888 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024492C 0024188C 7C 08 02 A6 */ mflr r0 +/* 80244930 00241890 90 01 00 14 */ stw r0, 0x14(r1) +/* 80244934 00241894 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80244938 00241898 7C 7F 1B 78 */ mr r31, r3 +/* 8024493C 0024189C 80 03 00 10 */ lwz r0, 0x10(r3) +/* 80244940 002418A0 28 00 00 00 */ cmplwi r0, 0 +/* 80244944 002418A4 40 82 00 60 */ bne lbl_802449A4 +/* 80244948 002418A8 80 1F 00 0C */ lwz r0, 0xc(r31) +/* 8024494C 002418AC 28 00 00 00 */ cmplwi r0, 0 +/* 80244950 002418B0 41 82 00 0C */ beq lbl_8024495C +/* 80244954 002418B4 38 60 00 01 */ li r3, 1 +/* 80244958 002418B8 48 00 00 3C */ b lbl_80244994 +lbl_8024495C: +/* 8024495C 002418BC 88 1F 00 08 */ lbz r0, 8(r31) +/* 80244960 002418C0 28 00 00 00 */ cmplwi r0, 0 +/* 80244964 002418C4 41 82 00 2C */ beq lbl_80244990 +/* 80244968 002418C8 80 7F 00 04 */ lwz r3, 4(r31) +/* 8024496C 002418CC 80 03 00 10 */ lwz r0, 0x10(r3) +/* 80244970 002418D0 28 00 00 00 */ cmplwi r0, 0 +/* 80244974 002418D4 41 82 00 1C */ beq lbl_80244990 +/* 80244978 002418D8 38 7F 00 04 */ addi r3, r31, 4 +/* 8024497C 002418DC 48 0F C4 91 */ bl GetObj__6CTokenFv +/* 80244980 002418E0 80 03 00 04 */ lwz r0, 4(r3) +/* 80244984 002418E4 38 60 00 01 */ li r3, 1 +/* 80244988 002418E8 90 1F 00 0C */ stw r0, 0xc(r31) +/* 8024498C 002418EC 48 00 00 08 */ b lbl_80244994 +lbl_80244990: +/* 80244990 002418F0 38 60 00 00 */ li r3, 0 +lbl_80244994: +/* 80244994 002418F4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80244998 002418F8 41 82 00 0C */ beq lbl_802449A4 +/* 8024499C 002418FC 7F E3 FB 78 */ mr r3, r31 +/* 802449A0 00241900 4B FF FB A9 */ bl FinishedLoading__15CQuitGameScreenFv +lbl_802449A4: +/* 802449A4 00241904 80 01 00 14 */ lwz r0, 0x14(r1) +/* 802449A8 00241908 80 7F 00 18 */ lwz r3, 0x18(r31) +/* 802449AC 0024190C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 802449B0 00241910 7C 08 03 A6 */ mtlr r0 +/* 802449B4 00241914 38 21 00 10 */ addi r1, r1, 0x10 +/* 802449B8 00241918 4E 80 00 20 */ blr + +.global Draw__15CQuitGameScreenFv +Draw__15CQuitGameScreenFv: +/* 802449BC 0024191C 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 802449C0 00241920 7C 08 02 A6 */ mflr r0 +/* 802449C4 00241924 90 01 00 54 */ stw r0, 0x54(r1) +/* 802449C8 00241928 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 802449CC 0024192C F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 802449D0 00241930 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 802449D4 00241934 7C 7F 1B 78 */ mr r31, r3 +/* 802449D8 00241938 80 03 00 00 */ lwz r0, 0(r3) +/* 802449DC 0024193C 2C 00 00 00 */ cmpwi r0, 0 +/* 802449E0 00241940 40 82 00 38 */ bne lbl_80244A18 +/* 802449E4 00241944 48 10 55 D1 */ bl Black__6CColorFv +/* 802449E8 00241948 C3 E2 B8 38 */ lfs f31, lbl_805AD558@sda21(r2) +/* 802449EC 0024194C F3 E1 A0 08 */ psq_st f31, 8(r1), 1, qr2 +/* 802449F0 00241950 38 A1 00 0C */ addi r5, r1, 0xc +/* 802449F4 00241954 80 E3 00 00 */ lwz r7, 0(r3) +/* 802449F8 00241958 38 60 00 05 */ li r3, 5 +/* 802449FC 0024195C 88 01 00 08 */ lbz r0, 8(r1) +/* 80244A00 00241960 38 80 00 00 */ li r4, 0 +/* 80244A04 00241964 50 E0 00 2E */ rlwimi r0, r7, 0, 0, 0x17 +/* 80244A08 00241968 C0 22 B8 14 */ lfs f1, lbl_805AD534@sda21(r2) +/* 80244A0C 0024196C 90 01 00 0C */ stw r0, 0xc(r1) +/* 80244A10 00241970 38 C0 00 00 */ li r6, 0 +/* 80244A14 00241974 4B EA 77 35 */ bl DrawFilter__17CCameraFilterPassFQ217CCameraFilterPass11EFilterTypeQ217CCameraFilterPass12EFilterShapeRC6CColorPC8CTexturef +lbl_80244A18: +/* 80244A18 00241978 3C 80 80 3D */ lis r4, lbl_803D43DC@ha +/* 80244A1C 0024197C 80 7F 00 10 */ lwz r3, 0x10(r31) +/* 80244A20 00241980 39 04 43 DC */ addi r8, r4, lbl_803D43DC@l +/* 80244A24 00241984 80 E8 00 00 */ lwz r7, 0(r8) +/* 80244A28 00241988 28 03 00 00 */ cmplwi r3, 0 +/* 80244A2C 0024198C 80 C8 00 04 */ lwz r6, 4(r8) +/* 80244A30 00241990 80 A8 00 08 */ lwz r5, 8(r8) +/* 80244A34 00241994 80 88 00 0C */ lwz r4, 0xc(r8) +/* 80244A38 00241998 80 08 00 10 */ lwz r0, 0x10(r8) +/* 80244A3C 0024199C 90 E1 00 20 */ stw r7, 0x20(r1) +/* 80244A40 002419A0 90 C1 00 24 */ stw r6, 0x24(r1) +/* 80244A44 002419A4 90 A1 00 28 */ stw r5, 0x28(r1) +/* 80244A48 002419A8 90 81 00 2C */ stw r4, 0x2c(r1) +/* 80244A4C 002419AC 90 01 00 30 */ stw r0, 0x30(r1) +/* 80244A50 002419B0 41 82 00 34 */ beq lbl_80244A84 +/* 80244A54 002419B4 80 1F 00 00 */ lwz r0, 0(r31) +/* 80244A58 002419B8 38 81 00 20 */ addi r4, r1, 0x20 +/* 80244A5C 002419BC C0 02 B8 10 */ lfs f0, lbl_805AD530@sda21(r2) +/* 80244A60 002419C0 54 00 10 3A */ slwi r0, r0, 2 +/* 80244A64 002419C4 C0 22 B8 14 */ lfs f1, lbl_805AD534@sda21(r2) +/* 80244A68 002419C8 7C 44 04 2E */ lfsx f2, r4, r0 +/* 80244A6C 002419CC 38 81 00 10 */ addi r4, r1, 0x10 +/* 80244A70 002419D0 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 80244A74 002419D4 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 80244A78 002419D8 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 80244A7C 002419DC D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 80244A80 002419E0 48 07 DC B5 */ bl Draw__9CGuiFrameCFRC19CGuiWidgetDrawParms +lbl_80244A84: +/* 80244A84 002419E4 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 80244A88 002419E8 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80244A8C 002419EC CB E1 00 40 */ lfd f31, 0x40(r1) +/* 80244A90 002419F0 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 80244A94 002419F4 7C 08 03 A6 */ mtlr r0 +/* 80244A98 002419F8 38 21 00 50 */ addi r1, r1, 0x50 +/* 80244A9C 002419FC 4E 80 00 20 */ blr + +.global ProcessUserInput__15CQuitGameScreenFRC11CFinalInput +ProcessUserInput__15CQuitGameScreenFRC11CFinalInput: +/* 80244AA0 00241A00 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80244AA4 00241A04 7C 08 02 A6 */ mflr r0 +/* 80244AA8 00241A08 90 01 00 14 */ stw r0, 0x14(r1) +/* 80244AAC 00241A0C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80244AB0 00241A10 7C 9F 23 78 */ mr r31, r4 +/* 80244AB4 00241A14 93 C1 00 08 */ stw r30, 8(r1) +/* 80244AB8 00241A18 7C 7E 1B 78 */ mr r30, r3 +/* 80244ABC 00241A1C 80 04 00 04 */ lwz r0, 4(r4) +/* 80244AC0 00241A20 2C 00 00 00 */ cmpwi r0, 0 +/* 80244AC4 00241A24 40 82 00 34 */ bne lbl_80244AF8 +/* 80244AC8 00241A28 80 7E 00 10 */ lwz r3, 0x10(r30) +/* 80244ACC 00241A2C 28 03 00 00 */ cmplwi r3, 0 +/* 80244AD0 00241A30 41 82 00 28 */ beq lbl_80244AF8 +/* 80244AD4 00241A34 48 07 DB 85 */ bl ProcessUserInput__9CGuiFrameFRC11CFinalInput +/* 80244AD8 00241A38 88 1F 00 2D */ lbz r0, 0x2d(r31) +/* 80244ADC 00241A3C 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 80244AE0 00241A40 41 82 00 18 */ beq lbl_80244AF8 +/* 80244AE4 00241A44 80 1E 00 00 */ lwz r0, 0(r30) +/* 80244AE8 00241A48 2C 00 00 01 */ cmpwi r0, 1 +/* 80244AEC 00241A4C 41 82 00 0C */ beq lbl_80244AF8 +/* 80244AF0 00241A50 38 00 00 02 */ li r0, 2 +/* 80244AF4 00241A54 90 1E 00 18 */ stw r0, 0x18(r30) +lbl_80244AF8: +/* 80244AF8 00241A58 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80244AFC 00241A5C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80244B00 00241A60 83 C1 00 08 */ lwz r30, 8(r1) +/* 80244B04 00241A64 7C 08 03 A6 */ mtlr r0 +/* 80244B08 00241A68 38 21 00 10 */ addi r1, r1, 0x10 +/* 80244B0C 00241A6C 4E 80 00 20 */ blr + +.global __ct__15CQuitGameScreenF9EQuitType +__ct__15CQuitGameScreenF9EQuitType: +/* 80244B10 00241A70 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80244B14 00241A74 7C 08 02 A6 */ mflr r0 +/* 80244B18 00241A78 90 01 00 24 */ stw r0, 0x24(r1) +/* 80244B1C 00241A7C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80244B20 00241A80 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80244B24 00241A84 7C 7E 1B 78 */ mr r30, r3 +/* 80244B28 00241A88 3C 60 80 3D */ lis r3, lbl_803D45B4@ha +/* 80244B2C 00241A8C 90 9E 00 00 */ stw r4, 0(r30) +/* 80244B30 00241A90 38 A3 45 B4 */ addi r5, r3, lbl_803D45B4@l +/* 80244B34 00241A94 38 61 00 08 */ addi r3, r1, 8 +/* 80244B38 00241A98 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80244B3C 00241A9C 38 A5 01 68 */ addi r5, r5, 0x168 +/* 80244B40 00241AA0 81 84 00 00 */ lwz r12, 0(r4) +/* 80244B44 00241AA4 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 80244B48 00241AA8 7D 89 03 A6 */ mtctr r12 +/* 80244B4C 00241AAC 4E 80 04 21 */ bctrl +/* 80244B50 00241AB0 3B FE 00 04 */ addi r31, r30, 4 +/* 80244B54 00241AB4 38 81 00 08 */ addi r4, r1, 8 +/* 80244B58 00241AB8 7F E3 FB 78 */ mr r3, r31 +/* 80244B5C 00241ABC 48 0F C3 4D */ bl __ct__6CTokenFRC6CToken +/* 80244B60 00241AC0 38 00 00 00 */ li r0, 0 +/* 80244B64 00241AC4 38 61 00 08 */ addi r3, r1, 8 +/* 80244B68 00241AC8 90 1F 00 08 */ stw r0, 8(r31) +/* 80244B6C 00241ACC 38 80 FF FF */ li r4, -1 +/* 80244B70 00241AD0 48 0F C2 D1 */ bl __dt__6CTokenFv +/* 80244B74 00241AD4 38 00 00 00 */ li r0, 0 +/* 80244B78 00241AD8 7F E3 FB 78 */ mr r3, r31 +/* 80244B7C 00241ADC 90 1E 00 10 */ stw r0, 0x10(r30) +/* 80244B80 00241AE0 90 1E 00 14 */ stw r0, 0x14(r30) +/* 80244B84 00241AE4 90 1E 00 18 */ stw r0, 0x18(r30) +/* 80244B88 00241AE8 48 0F C1 FD */ bl Lock__6CTokenFv +/* 80244B8C 00241AEC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80244B90 00241AF0 7F C3 F3 78 */ mr r3, r30 +/* 80244B94 00241AF4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80244B98 00241AF8 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80244B9C 00241AFC 7C 08 03 A6 */ mtlr r0 +/* 80244BA0 00241B00 38 21 00 20 */ addi r1, r1, 0x20 +/* 80244BA4 00241B04 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CRagDoll.s b/asm/Kyoto_CWD/CRagDoll.s new file mode 100644 index 00000000..fb89403c --- /dev/null +++ b/asm/Kyoto_CWD/CRagDoll.s @@ -0,0 +1,2294 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global PreRender__8CRagDollFRC9CVector3fR10CModelData +PreRender__8CRagDollFRC9CVector3fR10CModelData: +/* 8020C854 002097B4 4E 80 00 20 */ blr + +.global CalculateRenderBounds__8CRagDollCFv +CalculateRenderBounds__8CRagDollCFv: +/* 8020C858 002097B8 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 8020C85C 002097BC 7C 08 02 A6 */ mflr r0 +/* 8020C860 002097C0 C0 22 B1 C8 */ lfs f1, lbl_805ACEE8@sda21(r2) +/* 8020C864 002097C4 90 01 00 54 */ stw r0, 0x54(r1) +/* 8020C868 002097C8 C0 02 B1 CC */ lfs f0, lbl_805ACEEC@sda21(r2) +/* 8020C86C 002097CC BF 01 00 30 */ stmw r24, 0x30(r1) +/* 8020C870 002097D0 7C 78 1B 78 */ mr r24, r3 +/* 8020C874 002097D4 7C 99 23 78 */ mr r25, r4 +/* 8020C878 002097D8 3B 60 00 00 */ li r27, 0 +/* 8020C87C 002097DC 3B 80 00 00 */ li r28, 0 +/* 8020C880 002097E0 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 8020C884 002097E4 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 8020C888 002097E8 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 8020C88C 002097EC D0 01 00 10 */ stfs f0, 0x10(r1) +/* 8020C890 002097F0 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 8020C894 002097F4 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 8020C898 002097F8 48 00 00 94 */ b lbl_8020C92C +lbl_8020C89C: +/* 8020C89C 002097FC 3B C1 00 1C */ addi r30, r1, 0x1c +/* 8020C8A0 00209800 3B A1 00 10 */ addi r29, r1, 0x10 +/* 8020C8A4 00209804 3B 40 00 00 */ li r26, 0 +/* 8020C8A8 00209808 3B E0 00 00 */ li r31, 0 +lbl_8020C8AC: +/* 8020C8AC 0020980C 80 19 00 10 */ lwz r0, 0x10(r25) +/* 8020C8B0 00209810 7F C3 F3 78 */ mr r3, r30 +/* 8020C8B4 00209814 38 81 00 0C */ addi r4, r1, 0xc +/* 8020C8B8 00209818 7C C0 E2 14 */ add r6, r0, r28 +/* 8020C8BC 0020981C 7C A6 FA 14 */ add r5, r6, r31 +/* 8020C8C0 00209820 C0 06 00 10 */ lfs f0, 0x10(r6) +/* 8020C8C4 00209824 C0 25 00 04 */ lfs f1, 4(r5) +/* 8020C8C8 00209828 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8020C8CC 0020982C D0 01 00 0C */ stfs f0, 0xc(r1) +/* 8020C8D0 00209830 4B E7 15 11 */ bl "Min__5CMathFRCfRCf" +/* 8020C8D4 00209834 C0 03 00 00 */ lfs f0, 0(r3) +/* 8020C8D8 00209838 7F A3 EB 78 */ mr r3, r29 +/* 8020C8DC 0020983C 80 19 00 10 */ lwz r0, 0x10(r25) +/* 8020C8E0 00209840 38 81 00 08 */ addi r4, r1, 8 +/* 8020C8E4 00209844 D0 1E 00 00 */ stfs f0, 0(r30) +/* 8020C8E8 00209848 7C C0 E2 14 */ add r6, r0, r28 +/* 8020C8EC 0020984C 7C A6 FA 14 */ add r5, r6, r31 +/* 8020C8F0 00209850 C0 06 00 10 */ lfs f0, 0x10(r6) +/* 8020C8F4 00209854 C0 25 00 04 */ lfs f1, 4(r5) +/* 8020C8F8 00209858 EC 01 00 2A */ fadds f0, f1, f0 +/* 8020C8FC 0020985C D0 01 00 08 */ stfs f0, 8(r1) +/* 8020C900 00209860 4B E4 2E 31 */ bl "Max__5CMathFRCfRCf" +/* 8020C904 00209864 C0 03 00 00 */ lfs f0, 0(r3) +/* 8020C908 00209868 3B 5A 00 01 */ addi r26, r26, 1 +/* 8020C90C 0020986C 2C 1A 00 03 */ cmpwi r26, 3 +/* 8020C910 00209870 3B DE 00 04 */ addi r30, r30, 4 +/* 8020C914 00209874 D0 1D 00 00 */ stfs f0, 0(r29) +/* 8020C918 00209878 3B BD 00 04 */ addi r29, r29, 4 +/* 8020C91C 0020987C 3B FF 00 04 */ addi r31, r31, 4 +/* 8020C920 00209880 41 80 FF 8C */ blt lbl_8020C8AC +/* 8020C924 00209884 3B 9C 00 40 */ addi r28, r28, 0x40 +/* 8020C928 00209888 3B 7B 00 01 */ addi r27, r27, 1 +lbl_8020C92C: +/* 8020C92C 0020988C 80 19 00 08 */ lwz r0, 8(r25) +/* 8020C930 00209890 7C 1B 00 00 */ cmpw r27, r0 +/* 8020C934 00209894 41 80 FF 68 */ blt lbl_8020C89C +/* 8020C938 00209898 7F 03 C3 78 */ mr r3, r24 +/* 8020C93C 0020989C 38 81 00 1C */ addi r4, r1, 0x1c +/* 8020C940 002098A0 38 A1 00 10 */ addi r5, r1, 0x10 +/* 8020C944 002098A4 48 12 BB C5 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 8020C948 002098A8 BB 01 00 30 */ lmw r24, 0x30(r1) +/* 8020C94C 002098AC 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8020C950 002098B0 7C 08 03 A6 */ mtlr r0 +/* 8020C954 002098B4 38 21 00 50 */ addi r1, r1, 0x50 +/* 8020C958 002098B8 4E 80 00 20 */ blr + +.global BoneAlign__8CRagDollFR21CHierarchyPoseBuilderRC15CCharLayoutInfoiiRC11CQuaternion +BoneAlign__8CRagDollFR21CHierarchyPoseBuilderRC15CCharLayoutInfoiiRC11CQuaternion: +/* 8020C95C 002098BC 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 8020C960 002098C0 7C 08 02 A6 */ mflr r0 +/* 8020C964 002098C4 90 01 00 94 */ stw r0, 0x94(r1) +/* 8020C968 002098C8 BF 41 00 78 */ stmw r26, 0x78(r1) +/* 8020C96C 002098CC 7C 7E 1B 78 */ mr r30, r3 +/* 8020C970 002098D0 55 1D 30 32 */ slwi r29, r8, 6 +/* 8020C974 002098D4 7C 9A 23 78 */ mr r26, r4 +/* 8020C978 002098D8 7C BF 2B 78 */ mr r31, r5 +/* 8020C97C 002098DC 7C FC 3B 78 */ mr r28, r7 +/* 8020C980 002098E0 7D 3B 4B 78 */ mr r27, r9 +/* 8020C984 002098E4 38 61 00 40 */ addi r3, r1, 0x40 +/* 8020C988 002098E8 80 04 00 10 */ lwz r0, 0x10(r4) +/* 8020C98C 002098EC 7C C4 33 78 */ mr r4, r6 +/* 8020C990 002098F0 7C A0 EA 14 */ add r5, r0, r29 +/* 8020C994 002098F4 4B F1 F0 0D */ bl GetFromParentUnrotated__15CCharLayoutInfoCFRC6CSegId +/* 8020C998 002098F8 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 8020C99C 002098FC 57 9C 30 32 */ slwi r28, r28, 6 +/* 8020C9A0 00209900 C0 61 00 44 */ lfs f3, 0x44(r1) +/* 8020C9A4 00209904 38 DD 00 04 */ addi r6, r29, 4 +/* 8020C9A8 00209908 C0 41 00 48 */ lfs f2, 0x48(r1) +/* 8020C9AC 0020990C 38 61 00 34 */ addi r3, r1, 0x34 +/* 8020C9B0 00209910 D0 01 00 68 */ stfs f0, 0x68(r1) +/* 8020C9B4 00209914 38 81 00 24 */ addi r4, r1, 0x24 +/* 8020C9B8 00209918 C0 1B 00 0C */ lfs f0, 0xc(r27) +/* 8020C9BC 0020991C 38 A1 00 5C */ addi r5, r1, 0x5c +/* 8020C9C0 00209920 C0 3B 00 08 */ lfs f1, 8(r27) +/* 8020C9C4 00209924 FD 40 00 50 */ fneg f10, f0 +/* 8020C9C8 00209928 C0 1B 00 04 */ lfs f0, 4(r27) +/* 8020C9CC 0020992C FD 20 08 50 */ fneg f9, f1 +/* 8020C9D0 00209930 D0 61 00 6C */ stfs f3, 0x6c(r1) +/* 8020C9D4 00209934 FC 80 00 50 */ fneg f4, f0 +/* 8020C9D8 00209938 C0 7B 00 00 */ lfs f3, 0(r27) +/* 8020C9DC 0020993C D0 41 00 70 */ stfs f2, 0x70(r1) +/* 8020C9E0 00209940 FC 20 48 18 */ frsp f1, f9 +/* 8020C9E4 00209944 FC 40 20 18 */ frsp f2, f4 +/* 8020C9E8 00209948 80 1A 00 10 */ lwz r0, 0x10(r26) +/* 8020C9EC 0020994C FC 00 50 18 */ frsp f0, f10 +/* 8020C9F0 00209950 D0 81 00 08 */ stfs f4, 8(r1) +/* 8020C9F4 00209954 7C E0 E2 14 */ add r7, r0, r28 +/* 8020C9F8 00209958 7C C0 32 14 */ add r6, r0, r6 +/* 8020C9FC 0020995C C0 A6 00 04 */ lfs f5, 4(r6) +/* 8020CA00 00209960 C0 87 00 08 */ lfs f4, 8(r7) +/* 8020CA04 00209964 C0 E6 00 08 */ lfs f7, 8(r6) +/* 8020CA08 00209968 C0 C7 00 0C */ lfs f6, 0xc(r7) +/* 8020CA0C 0020996C ED 05 20 28 */ fsubs f8, f5, f4 +/* 8020CA10 00209970 C0 A6 00 00 */ lfs f5, 0(r6) +/* 8020CA14 00209974 C0 87 00 04 */ lfs f4, 4(r7) +/* 8020CA18 00209978 EC C7 30 28 */ fsubs f6, f7, f6 +/* 8020CA1C 0020997C D1 21 00 0C */ stfs f9, 0xc(r1) +/* 8020CA20 00209980 EC 85 20 28 */ fsubs f4, f5, f4 +/* 8020CA24 00209984 D1 01 00 60 */ stfs f8, 0x60(r1) +/* 8020CA28 00209988 D0 81 00 5C */ stfs f4, 0x5c(r1) +/* 8020CA2C 0020998C D0 C1 00 64 */ stfs f6, 0x64(r1) +/* 8020CA30 00209990 D1 41 00 10 */ stfs f10, 0x10(r1) +/* 8020CA34 00209994 D0 61 00 24 */ stfs f3, 0x24(r1) +/* 8020CA38 00209998 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 8020CA3C 0020999C D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 8020CA40 002099A0 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 8020CA44 002099A4 48 10 48 21 */ bl Transform__11CQuaternionCFRC9CVector3f +/* 8020CA48 002099A8 C0 41 00 34 */ lfs f2, 0x34(r1) +/* 8020CA4C 002099AC 38 61 00 14 */ addi r3, r1, 0x14 +/* 8020CA50 002099B0 C0 21 00 38 */ lfs f1, 0x38(r1) +/* 8020CA54 002099B4 38 81 00 68 */ addi r4, r1, 0x68 +/* 8020CA58 002099B8 C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 8020CA5C 002099BC 38 A1 00 5C */ addi r5, r1, 0x5c +/* 8020CA60 002099C0 D0 41 00 5C */ stfs f2, 0x5c(r1) +/* 8020CA64 002099C4 D0 21 00 60 */ stfs f1, 0x60(r1) +/* 8020CA68 002099C8 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 8020CA6C 002099CC 48 10 50 4D */ bl ShortestRotationArc__11CQuaternionFRC9CVector3fRC9CVector3f +/* 8020CA70 002099D0 80 7A 00 10 */ lwz r3, 0x10(r26) +/* 8020CA74 002099D4 C0 41 00 18 */ lfs f2, 0x18(r1) +/* 8020CA78 002099D8 7C 03 E0 AE */ lbzx r0, r3, r28 +/* 8020CA7C 002099DC C0 61 00 14 */ lfs f3, 0x14(r1) +/* 8020CA80 002099E0 54 00 08 3C */ slwi r0, r0, 1 +/* 8020CA84 002099E4 C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 8020CA88 002099E8 7C 7F 02 14 */ add r3, r31, r0 +/* 8020CA8C 002099EC C0 01 00 20 */ lfs f0, 0x20(r1) +/* 8020CA90 002099F0 88 03 00 41 */ lbz r0, 0x41(r3) +/* 8020CA94 002099F4 80 7F 01 08 */ lwz r3, 0x108(r31) +/* 8020CA98 002099F8 54 00 2C F4 */ rlwinm r0, r0, 5, 0x13, 0x1a +/* 8020CA9C 002099FC D0 41 00 50 */ stfs f2, 0x50(r1) +/* 8020CAA0 00209A00 7C 83 02 14 */ add r4, r3, r0 +/* 8020CAA4 00209A04 D0 21 00 54 */ stfs f1, 0x54(r1) +/* 8020CAA8 00209A08 80 01 00 50 */ lwz r0, 0x50(r1) +/* 8020CAAC 00209A0C D0 64 00 04 */ stfs f3, 4(r4) +/* 8020CAB0 00209A10 80 61 00 54 */ lwz r3, 0x54(r1) +/* 8020CAB4 00209A14 90 04 00 08 */ stw r0, 8(r4) +/* 8020CAB8 00209A18 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 8020CABC 00209A1C 80 01 00 58 */ lwz r0, 0x58(r1) +/* 8020CAC0 00209A20 90 64 00 0C */ stw r3, 0xc(r4) +/* 8020CAC4 00209A24 90 04 00 10 */ stw r0, 0x10(r4) +/* 8020CAC8 00209A28 D0 7E 00 00 */ stfs f3, 0(r30) +/* 8020CACC 00209A2C D0 5E 00 04 */ stfs f2, 4(r30) +/* 8020CAD0 00209A30 D0 3E 00 08 */ stfs f1, 8(r30) +/* 8020CAD4 00209A34 D0 1E 00 0C */ stfs f0, 0xc(r30) +/* 8020CAD8 00209A38 BB 41 00 78 */ lmw r26, 0x78(r1) +/* 8020CADC 00209A3C 80 01 00 94 */ lwz r0, 0x94(r1) +/* 8020CAE0 00209A40 D0 61 00 4C */ stfs f3, 0x4c(r1) +/* 8020CAE4 00209A44 7C 08 03 A6 */ mtlr r0 +/* 8020CAE8 00209A48 38 21 00 90 */ addi r1, r1, 0x90 +/* 8020CAEC 00209A4C 4E 80 00 20 */ blr + +.global AddJointConstraint__8CRagDollFiiiiii +AddJointConstraint__8CRagDollFiiiiii: +/* 8020CAF0 00209A50 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8020CAF4 00209A54 7C 08 02 A6 */ mflr r0 +/* 8020CAF8 00209A58 55 29 30 32 */ slwi r9, r9, 6 +/* 8020CAFC 00209A5C 55 08 30 32 */ slwi r8, r8, 6 +/* 8020CB00 00209A60 90 01 00 34 */ stw r0, 0x34(r1) +/* 8020CB04 00209A64 54 E7 30 32 */ slwi r7, r7, 6 +/* 8020CB08 00209A68 54 C6 30 32 */ slwi r6, r6, 6 +/* 8020CB0C 00209A6C 54 A5 30 32 */ slwi r5, r5, 6 +/* 8020CB10 00209A70 BF 21 00 14 */ stmw r25, 0x14(r1) +/* 8020CB14 00209A74 7C 7F 1B 78 */ mr r31, r3 +/* 8020CB18 00209A78 80 03 00 28 */ lwz r0, 0x28(r3) +/* 8020CB1C 00209A7C 81 63 00 2C */ lwz r11, 0x2c(r3) +/* 8020CB20 00209A80 81 43 00 10 */ lwz r10, 0x10(r3) +/* 8020CB24 00209A84 54 83 30 32 */ slwi r3, r4, 6 +/* 8020CB28 00209A88 7C 00 58 00 */ cmpw r0, r11 +/* 8020CB2C 00209A8C 7F CA 4A 14 */ add r30, r10, r9 +/* 8020CB30 00209A90 7F AA 42 14 */ add r29, r10, r8 +/* 8020CB34 00209A94 7F 8A 3A 14 */ add r28, r10, r7 +/* 8020CB38 00209A98 7F 6A 32 14 */ add r27, r10, r6 +/* 8020CB3C 00209A9C 7F 4A 2A 14 */ add r26, r10, r5 +/* 8020CB40 00209AA0 7F 2A 1A 14 */ add r25, r10, r3 +/* 8020CB44 00209AA4 41 80 00 1C */ blt lbl_8020CB60 +/* 8020CB48 00209AA8 2C 0B 00 00 */ cmpwi r11, 0 +/* 8020CB4C 00209AAC 38 7F 00 24 */ addi r3, r31, 0x24 +/* 8020CB50 00209AB0 38 80 00 04 */ li r4, 4 +/* 8020CB54 00209AB4 41 82 00 08 */ beq lbl_8020CB5C +/* 8020CB58 00209AB8 55 64 08 3C */ slwi r4, r11, 1 +lbl_8020CB5C: +/* 8020CB5C 00209ABC 4B F2 01 F9 */ bl "reserve__Q24rstl71vectorFi" +lbl_8020CB60: +/* 8020CB60 00209AC0 80 1F 00 28 */ lwz r0, 0x28(r31) +/* 8020CB64 00209AC4 80 7F 00 30 */ lwz r3, 0x30(r31) +/* 8020CB68 00209AC8 1C 00 00 18 */ mulli r0, r0, 0x18 +/* 8020CB6C 00209ACC 7C 63 02 15 */ add. r3, r3, r0 +/* 8020CB70 00209AD0 41 82 00 1C */ beq lbl_8020CB8C +/* 8020CB74 00209AD4 93 23 00 00 */ stw r25, 0(r3) +/* 8020CB78 00209AD8 93 43 00 04 */ stw r26, 4(r3) +/* 8020CB7C 00209ADC 93 63 00 08 */ stw r27, 8(r3) +/* 8020CB80 00209AE0 93 83 00 0C */ stw r28, 0xc(r3) +/* 8020CB84 00209AE4 93 A3 00 10 */ stw r29, 0x10(r3) +/* 8020CB88 00209AE8 93 C3 00 14 */ stw r30, 0x14(r3) +lbl_8020CB8C: +/* 8020CB8C 00209AEC 80 7F 00 28 */ lwz r3, 0x28(r31) +/* 8020CB90 00209AF0 38 03 00 01 */ addi r0, r3, 1 +/* 8020CB94 00209AF4 90 1F 00 28 */ stw r0, 0x28(r31) +/* 8020CB98 00209AF8 BB 21 00 14 */ lmw r25, 0x14(r1) +/* 8020CB9C 00209AFC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8020CBA0 00209B00 7C 08 03 A6 */ mtlr r0 +/* 8020CBA4 00209B04 38 21 00 30 */ addi r1, r1, 0x30 +/* 8020CBA8 00209B08 4E 80 00 20 */ blr + +.global AddMaxLengthConstraint__8CRagDollFiif +AddMaxLengthConstraint__8CRagDollFiif: +/* 8020CBAC 00209B0C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8020CBB0 00209B10 7C 08 02 A6 */ mflr r0 +/* 8020CBB4 00209B14 54 A5 30 32 */ slwi r5, r5, 6 +/* 8020CBB8 00209B18 90 01 00 24 */ stw r0, 0x24(r1) +/* 8020CBBC 00209B1C DB E1 00 18 */ stfd f31, 0x18(r1) +/* 8020CBC0 00209B20 FF E0 08 90 */ fmr f31, f1 +/* 8020CBC4 00209B24 93 E1 00 14 */ stw r31, 0x14(r1) +/* 8020CBC8 00209B28 93 C1 00 10 */ stw r30, 0x10(r1) +/* 8020CBCC 00209B2C 93 A1 00 0C */ stw r29, 0xc(r1) +/* 8020CBD0 00209B30 7C 7D 1B 78 */ mr r29, r3 +/* 8020CBD4 00209B34 80 03 00 18 */ lwz r0, 0x18(r3) +/* 8020CBD8 00209B38 80 C3 00 1C */ lwz r6, 0x1c(r3) +/* 8020CBDC 00209B3C 54 83 30 32 */ slwi r3, r4, 6 +/* 8020CBE0 00209B40 80 9D 00 10 */ lwz r4, 0x10(r29) +/* 8020CBE4 00209B44 7C 00 30 00 */ cmpw r0, r6 +/* 8020CBE8 00209B48 7F E4 2A 14 */ add r31, r4, r5 +/* 8020CBEC 00209B4C 7F C4 1A 14 */ add r30, r4, r3 +/* 8020CBF0 00209B50 41 80 00 1C */ blt lbl_8020CC0C +/* 8020CBF4 00209B54 2C 06 00 00 */ cmpwi r6, 0 +/* 8020CBF8 00209B58 38 7D 00 14 */ addi r3, r29, 0x14 +/* 8020CBFC 00209B5C 38 80 00 04 */ li r4, 4 +/* 8020CC00 00209B60 41 82 00 08 */ beq lbl_8020CC08 +/* 8020CC04 00209B64 54 C4 08 3C */ slwi r4, r6, 1 +lbl_8020CC08: +/* 8020CC08 00209B68 4B F2 00 45 */ bl "reserve__Q24rstl72vectorFi" +lbl_8020CC0C: +/* 8020CC0C 00209B6C 80 1D 00 18 */ lwz r0, 0x18(r29) +/* 8020CC10 00209B70 80 7D 00 20 */ lwz r3, 0x20(r29) +/* 8020CC14 00209B74 54 00 20 36 */ slwi r0, r0, 4 +/* 8020CC18 00209B78 7C 63 02 15 */ add. r3, r3, r0 +/* 8020CC1C 00209B7C 41 82 00 18 */ beq lbl_8020CC34 +/* 8020CC20 00209B80 93 C3 00 00 */ stw r30, 0(r3) +/* 8020CC24 00209B84 38 00 00 02 */ li r0, 2 +/* 8020CC28 00209B88 93 E3 00 04 */ stw r31, 4(r3) +/* 8020CC2C 00209B8C D3 E3 00 08 */ stfs f31, 8(r3) +/* 8020CC30 00209B90 90 03 00 0C */ stw r0, 0xc(r3) +lbl_8020CC34: +/* 8020CC34 00209B94 80 7D 00 18 */ lwz r3, 0x18(r29) +/* 8020CC38 00209B98 38 03 00 01 */ addi r0, r3, 1 +/* 8020CC3C 00209B9C 90 1D 00 18 */ stw r0, 0x18(r29) +/* 8020CC40 00209BA0 CB E1 00 18 */ lfd f31, 0x18(r1) +/* 8020CC44 00209BA4 83 E1 00 14 */ lwz r31, 0x14(r1) +/* 8020CC48 00209BA8 83 C1 00 10 */ lwz r30, 0x10(r1) +/* 8020CC4C 00209BAC 83 A1 00 0C */ lwz r29, 0xc(r1) +/* 8020CC50 00209BB0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8020CC54 00209BB4 7C 08 03 A6 */ mtlr r0 +/* 8020CC58 00209BB8 38 21 00 20 */ addi r1, r1, 0x20 +/* 8020CC5C 00209BBC 4E 80 00 20 */ blr + +.global AddMinLengthConstraint__8CRagDollFiif +AddMinLengthConstraint__8CRagDollFiif: +/* 8020CC60 00209BC0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8020CC64 00209BC4 7C 08 02 A6 */ mflr r0 +/* 8020CC68 00209BC8 54 A5 30 32 */ slwi r5, r5, 6 +/* 8020CC6C 00209BCC 90 01 00 24 */ stw r0, 0x24(r1) +/* 8020CC70 00209BD0 DB E1 00 18 */ stfd f31, 0x18(r1) +/* 8020CC74 00209BD4 FF E0 08 90 */ fmr f31, f1 +/* 8020CC78 00209BD8 93 E1 00 14 */ stw r31, 0x14(r1) +/* 8020CC7C 00209BDC 93 C1 00 10 */ stw r30, 0x10(r1) +/* 8020CC80 00209BE0 93 A1 00 0C */ stw r29, 0xc(r1) +/* 8020CC84 00209BE4 7C 7D 1B 78 */ mr r29, r3 +/* 8020CC88 00209BE8 80 03 00 18 */ lwz r0, 0x18(r3) +/* 8020CC8C 00209BEC 80 C3 00 1C */ lwz r6, 0x1c(r3) +/* 8020CC90 00209BF0 54 83 30 32 */ slwi r3, r4, 6 +/* 8020CC94 00209BF4 80 9D 00 10 */ lwz r4, 0x10(r29) +/* 8020CC98 00209BF8 7C 00 30 00 */ cmpw r0, r6 +/* 8020CC9C 00209BFC 7F E4 2A 14 */ add r31, r4, r5 +/* 8020CCA0 00209C00 7F C4 1A 14 */ add r30, r4, r3 +/* 8020CCA4 00209C04 41 80 00 1C */ blt lbl_8020CCC0 +/* 8020CCA8 00209C08 2C 06 00 00 */ cmpwi r6, 0 +/* 8020CCAC 00209C0C 38 7D 00 14 */ addi r3, r29, 0x14 +/* 8020CCB0 00209C10 38 80 00 04 */ li r4, 4 +/* 8020CCB4 00209C14 41 82 00 08 */ beq lbl_8020CCBC +/* 8020CCB8 00209C18 54 C4 08 3C */ slwi r4, r6, 1 +lbl_8020CCBC: +/* 8020CCBC 00209C1C 4B F1 FF 91 */ bl "reserve__Q24rstl72vectorFi" +lbl_8020CCC0: +/* 8020CCC0 00209C20 80 1D 00 18 */ lwz r0, 0x18(r29) +/* 8020CCC4 00209C24 80 7D 00 20 */ lwz r3, 0x20(r29) +/* 8020CCC8 00209C28 54 00 20 36 */ slwi r0, r0, 4 +/* 8020CCCC 00209C2C 7C 63 02 15 */ add. r3, r3, r0 +/* 8020CCD0 00209C30 41 82 00 18 */ beq lbl_8020CCE8 +/* 8020CCD4 00209C34 93 C3 00 00 */ stw r30, 0(r3) +/* 8020CCD8 00209C38 38 00 00 01 */ li r0, 1 +/* 8020CCDC 00209C3C 93 E3 00 04 */ stw r31, 4(r3) +/* 8020CCE0 00209C40 D3 E3 00 08 */ stfs f31, 8(r3) +/* 8020CCE4 00209C44 90 03 00 0C */ stw r0, 0xc(r3) +lbl_8020CCE8: +/* 8020CCE8 00209C48 80 7D 00 18 */ lwz r3, 0x18(r29) +/* 8020CCEC 00209C4C 38 03 00 01 */ addi r0, r3, 1 +/* 8020CCF0 00209C50 90 1D 00 18 */ stw r0, 0x18(r29) +/* 8020CCF4 00209C54 CB E1 00 18 */ lfd f31, 0x18(r1) +/* 8020CCF8 00209C58 83 E1 00 14 */ lwz r31, 0x14(r1) +/* 8020CCFC 00209C5C 83 C1 00 10 */ lwz r30, 0x10(r1) +/* 8020CD00 00209C60 83 A1 00 0C */ lwz r29, 0xc(r1) +/* 8020CD04 00209C64 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8020CD08 00209C68 7C 08 03 A6 */ mtlr r0 +/* 8020CD0C 00209C6C 38 21 00 20 */ addi r1, r1, 0x20 +/* 8020CD10 00209C70 4E 80 00 20 */ blr + +.global AddLengthConstraint__8CRagDollFii +AddLengthConstraint__8CRagDollFii: +/* 8020CD14 00209C74 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8020CD18 00209C78 7C 08 02 A6 */ mflr r0 +/* 8020CD1C 00209C7C 90 01 00 44 */ stw r0, 0x44(r1) +/* 8020CD20 00209C80 DB E1 00 30 */ stfd f31, 0x30(r1) +/* 8020CD24 00209C84 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 8020CD28 00209C88 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8020CD2C 00209C8C 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8020CD30 00209C90 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8020CD34 00209C94 93 81 00 20 */ stw r28, 0x20(r1) +/* 8020CD38 00209C98 7C 7F 1B 78 */ mr r31, r3 +/* 8020CD3C 00209C9C 54 BD 30 32 */ slwi r29, r5, 6 +/* 8020CD40 00209CA0 80 03 00 10 */ lwz r0, 0x10(r3) +/* 8020CD44 00209CA4 54 9C 30 32 */ slwi r28, r4, 6 +/* 8020CD48 00209CA8 38 61 00 08 */ addi r3, r1, 8 +/* 8020CD4C 00209CAC 7C 80 EA 14 */ add r4, r0, r29 +/* 8020CD50 00209CB0 7C A0 E2 14 */ add r5, r0, r28 +/* 8020CD54 00209CB4 C0 25 00 08 */ lfs f1, 8(r5) +/* 8020CD58 00209CB8 C0 04 00 08 */ lfs f0, 8(r4) +/* 8020CD5C 00209CBC C0 65 00 0C */ lfs f3, 0xc(r5) +/* 8020CD60 00209CC0 C0 44 00 0C */ lfs f2, 0xc(r4) +/* 8020CD64 00209CC4 EC 81 00 28 */ fsubs f4, f1, f0 +/* 8020CD68 00209CC8 C0 25 00 04 */ lfs f1, 4(r5) +/* 8020CD6C 00209CCC C0 04 00 04 */ lfs f0, 4(r4) +/* 8020CD70 00209CD0 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8020CD74 00209CD4 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8020CD78 00209CD8 D0 81 00 0C */ stfs f4, 0xc(r1) +/* 8020CD7C 00209CDC D0 41 00 10 */ stfs f2, 0x10(r1) +/* 8020CD80 00209CE0 D0 01 00 08 */ stfs f0, 8(r1) +/* 8020CD84 00209CE4 48 10 7B 35 */ bl Magnitude__9CVector3fCFv +/* 8020CD88 00209CE8 80 1F 00 18 */ lwz r0, 0x18(r31) +/* 8020CD8C 00209CEC FF E0 08 90 */ fmr f31, f1 +/* 8020CD90 00209CF0 80 BF 00 1C */ lwz r5, 0x1c(r31) +/* 8020CD94 00209CF4 80 7F 00 10 */ lwz r3, 0x10(r31) +/* 8020CD98 00209CF8 7C 00 28 00 */ cmpw r0, r5 +/* 8020CD9C 00209CFC 7F C3 EA 14 */ add r30, r3, r29 +/* 8020CDA0 00209D00 7F A3 E2 14 */ add r29, r3, r28 +/* 8020CDA4 00209D04 41 80 00 1C */ blt lbl_8020CDC0 +/* 8020CDA8 00209D08 2C 05 00 00 */ cmpwi r5, 0 +/* 8020CDAC 00209D0C 38 7F 00 14 */ addi r3, r31, 0x14 +/* 8020CDB0 00209D10 38 80 00 04 */ li r4, 4 +/* 8020CDB4 00209D14 41 82 00 08 */ beq lbl_8020CDBC +/* 8020CDB8 00209D18 54 A4 08 3C */ slwi r4, r5, 1 +lbl_8020CDBC: +/* 8020CDBC 00209D1C 4B F1 FE 91 */ bl "reserve__Q24rstl72vectorFi" +lbl_8020CDC0: +/* 8020CDC0 00209D20 80 1F 00 18 */ lwz r0, 0x18(r31) +/* 8020CDC4 00209D24 80 7F 00 20 */ lwz r3, 0x20(r31) +/* 8020CDC8 00209D28 54 00 20 36 */ slwi r0, r0, 4 +/* 8020CDCC 00209D2C 7C 63 02 15 */ add. r3, r3, r0 +/* 8020CDD0 00209D30 41 82 00 18 */ beq lbl_8020CDE8 +/* 8020CDD4 00209D34 93 A3 00 00 */ stw r29, 0(r3) +/* 8020CDD8 00209D38 38 00 00 00 */ li r0, 0 +/* 8020CDDC 00209D3C 93 C3 00 04 */ stw r30, 4(r3) +/* 8020CDE0 00209D40 D3 E3 00 08 */ stfs f31, 8(r3) +/* 8020CDE4 00209D44 90 03 00 0C */ stw r0, 0xc(r3) +lbl_8020CDE8: +/* 8020CDE8 00209D48 80 7F 00 18 */ lwz r3, 0x18(r31) +/* 8020CDEC 00209D4C 38 03 00 01 */ addi r0, r3, 1 +/* 8020CDF0 00209D50 90 1F 00 18 */ stw r0, 0x18(r31) +/* 8020CDF4 00209D54 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 8020CDF8 00209D58 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8020CDFC 00209D5C CB E1 00 30 */ lfd f31, 0x30(r1) +/* 8020CE00 00209D60 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8020CE04 00209D64 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8020CE08 00209D68 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8020CE0C 00209D6C 83 81 00 20 */ lwz r28, 0x20(r1) +/* 8020CE10 00209D70 7C 08 03 A6 */ mtlr r0 +/* 8020CE14 00209D74 38 21 00 40 */ addi r1, r1, 0x40 +/* 8020CE18 00209D78 4E 80 00 20 */ blr + +.global AddParticle__8CRagDollFRC6CSegIdRC9CVector3fRC9CVector3ff +AddParticle__8CRagDollFRC6CSegIdRC9CVector3fRC9CVector3ff: +/* 8020CE1C 00209D7C 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 8020CE20 00209D80 7C 08 02 A6 */ mflr r0 +/* 8020CE24 00209D84 3D 00 80 5A */ lis r8, skZero3f@ha +/* 8020CE28 00209D88 C0 02 B1 C4 */ lfs f0, lbl_805ACEE4@sda21(r2) +/* 8020CE2C 00209D8C 90 01 00 54 */ stw r0, 0x54(r1) +/* 8020CE30 00209D90 39 28 66 A0 */ addi r9, r8, skZero3f@l +/* 8020CE34 00209D94 39 00 00 00 */ li r8, 0 +/* 8020CE38 00209D98 38 63 00 04 */ addi r3, r3, 4 +/* 8020CE3C 00209D9C 88 E1 00 44 */ lbz r7, 0x44(r1) +/* 8020CE40 00209DA0 51 07 3E 30 */ rlwimi r7, r8, 7, 0x18, 0x18 +/* 8020CE44 00209DA4 89 44 00 00 */ lbz r10, 0(r4) +/* 8020CE48 00209DA8 38 81 00 08 */ addi r4, r1, 8 +/* 8020CE4C 00209DAC C1 09 00 00 */ lfs f8, 0(r9) +/* 8020CE50 00209DB0 54 E0 06 3E */ clrlwi r0, r7, 0x18 +/* 8020CE54 00209DB4 C1 29 00 04 */ lfs f9, 4(r9) +/* 8020CE58 00209DB8 51 00 36 72 */ rlwimi r0, r8, 6, 0x19, 0x19 +/* 8020CE5C 00209DBC C1 49 00 08 */ lfs f10, 8(r9) +/* 8020CE60 00209DC0 98 E1 00 44 */ stb r7, 0x44(r1) +/* 8020CE64 00209DC4 C0 E6 00 00 */ lfs f7, 0(r6) +/* 8020CE68 00209DC8 C0 C6 00 04 */ lfs f6, 4(r6) +/* 8020CE6C 00209DCC C0 A6 00 08 */ lfs f5, 8(r6) +/* 8020CE70 00209DD0 C0 85 00 00 */ lfs f4, 0(r5) +/* 8020CE74 00209DD4 C0 65 00 04 */ lfs f3, 4(r5) +/* 8020CE78 00209DD8 C0 45 00 08 */ lfs f2, 8(r5) +/* 8020CE7C 00209DDC 99 41 00 08 */ stb r10, 8(r1) +/* 8020CE80 00209DE0 D0 E1 00 0C */ stfs f7, 0xc(r1) +/* 8020CE84 00209DE4 D0 C1 00 10 */ stfs f6, 0x10(r1) +/* 8020CE88 00209DE8 D0 A1 00 14 */ stfs f5, 0x14(r1) +/* 8020CE8C 00209DEC D0 21 00 18 */ stfs f1, 0x18(r1) +/* 8020CE90 00209DF0 D0 81 00 1C */ stfs f4, 0x1c(r1) +/* 8020CE94 00209DF4 D0 61 00 20 */ stfs f3, 0x20(r1) +/* 8020CE98 00209DF8 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 8020CE9C 00209DFC D1 01 00 28 */ stfs f8, 0x28(r1) +/* 8020CEA0 00209E00 D1 21 00 2C */ stfs f9, 0x2c(r1) +/* 8020CEA4 00209E04 D1 41 00 30 */ stfs f10, 0x30(r1) +/* 8020CEA8 00209E08 D1 01 00 34 */ stfs f8, 0x34(r1) +/* 8020CEAC 00209E0C D1 21 00 38 */ stfs f9, 0x38(r1) +/* 8020CEB0 00209E10 D1 41 00 3C */ stfs f10, 0x3c(r1) +/* 8020CEB4 00209E14 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 8020CEB8 00209E18 98 01 00 44 */ stb r0, 0x44(r1) +/* 8020CEBC 00209E1C 48 00 00 15 */ bl "push_back__Q24rstl64vectorFRCQ28CRagDoll16CRagDollParticle" +/* 8020CEC0 00209E20 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8020CEC4 00209E24 7C 08 03 A6 */ mtlr r0 +/* 8020CEC8 00209E28 38 21 00 50 */ addi r1, r1, 0x50 +/* 8020CECC 00209E2C 4E 80 00 20 */ blr + +.global "push_back__Q24rstl64vectorFRCQ28CRagDoll16CRagDollParticle" +"push_back__Q24rstl64vectorFRCQ28CRagDoll16CRagDollParticle": +/* 8020CED0 00209E30 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8020CED4 00209E34 7C 08 02 A6 */ mflr r0 +/* 8020CED8 00209E38 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020CEDC 00209E3C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8020CEE0 00209E40 7C 9F 23 78 */ mr r31, r4 +/* 8020CEE4 00209E44 93 C1 00 08 */ stw r30, 8(r1) +/* 8020CEE8 00209E48 7C 7E 1B 78 */ mr r30, r3 +/* 8020CEEC 00209E4C 80 03 00 04 */ lwz r0, 4(r3) +/* 8020CEF0 00209E50 80 A3 00 08 */ lwz r5, 8(r3) +/* 8020CEF4 00209E54 7C 00 28 00 */ cmpw r0, r5 +/* 8020CEF8 00209E58 41 80 00 18 */ blt lbl_8020CF10 +/* 8020CEFC 00209E5C 2C 05 00 00 */ cmpwi r5, 0 +/* 8020CF00 00209E60 38 80 00 04 */ li r4, 4 +/* 8020CF04 00209E64 41 82 00 08 */ beq lbl_8020CF0C +/* 8020CF08 00209E68 54 A4 08 3C */ slwi r4, r5, 1 +lbl_8020CF0C: +/* 8020CF0C 00209E6C 4B F1 FB B9 */ bl "reserve__Q24rstl64vectorFi" +lbl_8020CF10: +/* 8020CF10 00209E70 80 1E 00 04 */ lwz r0, 4(r30) +/* 8020CF14 00209E74 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 8020CF18 00209E78 54 00 30 32 */ slwi r0, r0, 6 +/* 8020CF1C 00209E7C 7C 63 02 15 */ add. r3, r3, r0 +/* 8020CF20 00209E80 41 82 00 84 */ beq lbl_8020CFA4 +/* 8020CF24 00209E84 88 1F 00 00 */ lbz r0, 0(r31) +/* 8020CF28 00209E88 98 03 00 00 */ stb r0, 0(r3) +/* 8020CF2C 00209E8C C0 1F 00 04 */ lfs f0, 4(r31) +/* 8020CF30 00209E90 D0 03 00 04 */ stfs f0, 4(r3) +/* 8020CF34 00209E94 C0 1F 00 08 */ lfs f0, 8(r31) +/* 8020CF38 00209E98 D0 03 00 08 */ stfs f0, 8(r3) +/* 8020CF3C 00209E9C C0 1F 00 0C */ lfs f0, 0xc(r31) +/* 8020CF40 00209EA0 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 8020CF44 00209EA4 C0 1F 00 10 */ lfs f0, 0x10(r31) +/* 8020CF48 00209EA8 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 8020CF4C 00209EAC C0 1F 00 14 */ lfs f0, 0x14(r31) +/* 8020CF50 00209EB0 D0 03 00 14 */ stfs f0, 0x14(r3) +/* 8020CF54 00209EB4 C0 1F 00 18 */ lfs f0, 0x18(r31) +/* 8020CF58 00209EB8 D0 03 00 18 */ stfs f0, 0x18(r3) +/* 8020CF5C 00209EBC C0 1F 00 1C */ lfs f0, 0x1c(r31) +/* 8020CF60 00209EC0 D0 03 00 1C */ stfs f0, 0x1c(r3) +/* 8020CF64 00209EC4 C0 1F 00 20 */ lfs f0, 0x20(r31) +/* 8020CF68 00209EC8 D0 03 00 20 */ stfs f0, 0x20(r3) +/* 8020CF6C 00209ECC C0 1F 00 24 */ lfs f0, 0x24(r31) +/* 8020CF70 00209ED0 D0 03 00 24 */ stfs f0, 0x24(r3) +/* 8020CF74 00209ED4 C0 1F 00 28 */ lfs f0, 0x28(r31) +/* 8020CF78 00209ED8 D0 03 00 28 */ stfs f0, 0x28(r3) +/* 8020CF7C 00209EDC C0 1F 00 2C */ lfs f0, 0x2c(r31) +/* 8020CF80 00209EE0 D0 03 00 2C */ stfs f0, 0x2c(r3) +/* 8020CF84 00209EE4 C0 1F 00 30 */ lfs f0, 0x30(r31) +/* 8020CF88 00209EE8 D0 03 00 30 */ stfs f0, 0x30(r3) +/* 8020CF8C 00209EEC C0 1F 00 34 */ lfs f0, 0x34(r31) +/* 8020CF90 00209EF0 D0 03 00 34 */ stfs f0, 0x34(r3) +/* 8020CF94 00209EF4 C0 1F 00 38 */ lfs f0, 0x38(r31) +/* 8020CF98 00209EF8 D0 03 00 38 */ stfs f0, 0x38(r3) +/* 8020CF9C 00209EFC 88 1F 00 3C */ lbz r0, 0x3c(r31) +/* 8020CFA0 00209F00 98 03 00 3C */ stb r0, 0x3c(r3) +lbl_8020CFA4: +/* 8020CFA4 00209F04 80 7E 00 04 */ lwz r3, 4(r30) +/* 8020CFA8 00209F08 38 03 00 01 */ addi r0, r3, 1 +/* 8020CFAC 00209F0C 90 1E 00 04 */ stw r0, 4(r30) +/* 8020CFB0 00209F10 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8020CFB4 00209F14 83 C1 00 08 */ lwz r30, 8(r1) +/* 8020CFB8 00209F18 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8020CFBC 00209F1C 7C 08 03 A6 */ mtlr r0 +/* 8020CFC0 00209F20 38 21 00 10 */ addi r1, r1, 0x10 +/* 8020CFC4 00209F24 4E 80 00 20 */ blr + +.global Update__Q28CRagDoll23CRagDollPlaneConstraintFv +Update__Q28CRagDoll23CRagDollPlaneConstraintFv: +/* 8020CFC8 00209F28 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8020CFCC 00209F2C 7C 08 02 A6 */ mflr r0 +/* 8020CFD0 00209F30 90 01 00 34 */ stw r0, 0x34(r1) +/* 8020CFD4 00209F34 38 81 00 08 */ addi r4, r1, 8 +/* 8020CFD8 00209F38 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8020CFDC 00209F3C 7C 7F 1B 78 */ mr r31, r3 +/* 8020CFE0 00209F40 38 61 00 14 */ addi r3, r1, 0x14 +/* 8020CFE4 00209F44 80 DF 00 00 */ lwz r6, 0(r31) +/* 8020CFE8 00209F48 80 BF 00 04 */ lwz r5, 4(r31) +/* 8020CFEC 00209F4C C0 06 00 08 */ lfs f0, 8(r6) +/* 8020CFF0 00209F50 C0 25 00 08 */ lfs f1, 8(r5) +/* 8020CFF4 00209F54 C0 65 00 0C */ lfs f3, 0xc(r5) +/* 8020CFF8 00209F58 EC 81 00 28 */ fsubs f4, f1, f0 +/* 8020CFFC 00209F5C C0 46 00 0C */ lfs f2, 0xc(r6) +/* 8020D000 00209F60 C0 25 00 04 */ lfs f1, 4(r5) +/* 8020D004 00209F64 C0 06 00 04 */ lfs f0, 4(r6) +/* 8020D008 00209F68 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8020D00C 00209F6C EC 01 00 28 */ fsubs f0, f1, f0 +/* 8020D010 00209F70 D0 81 00 0C */ stfs f4, 0xc(r1) +/* 8020D014 00209F74 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 8020D018 00209F78 D0 01 00 08 */ stfs f0, 8(r1) +/* 8020D01C 00209F7C 48 10 78 35 */ bl AsNormalized__9CVector3fCFv +/* 8020D020 00209F80 80 9F 00 08 */ lwz r4, 8(r31) +/* 8020D024 00209F84 80 7F 00 0C */ lwz r3, 0xc(r31) +/* 8020D028 00209F88 C0 04 00 08 */ lfs f0, 8(r4) +/* 8020D02C 00209F8C C0 23 00 08 */ lfs f1, 8(r3) +/* 8020D030 00209F90 C0 81 00 18 */ lfs f4, 0x18(r1) +/* 8020D034 00209F94 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8020D038 00209F98 C0 43 00 04 */ lfs f2, 4(r3) +/* 8020D03C 00209F9C C0 24 00 04 */ lfs f1, 4(r4) +/* 8020D040 00209FA0 C0 C1 00 14 */ lfs f6, 0x14(r1) +/* 8020D044 00209FA4 EC 22 08 28 */ fsubs f1, f2, f1 +/* 8020D048 00209FA8 C0 63 00 0C */ lfs f3, 0xc(r3) +/* 8020D04C 00209FAC EC 04 00 32 */ fmuls f0, f4, f0 +/* 8020D050 00209FB0 C0 44 00 0C */ lfs f2, 0xc(r4) +/* 8020D054 00209FB4 C0 A1 00 1C */ lfs f5, 0x1c(r1) +/* 8020D058 00209FB8 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8020D05C 00209FBC EC 26 00 7A */ fmadds f1, f6, f1, f0 +/* 8020D060 00209FC0 C0 02 B1 C4 */ lfs f0, lbl_805ACEE4@sda21(r2) +/* 8020D064 00209FC4 EC 45 08 BA */ fmadds f2, f5, f2, f1 +/* 8020D068 00209FC8 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8020D06C 00209FCC 40 80 00 64 */ bge lbl_8020D0D0 +/* 8020D070 00209FD0 C0 22 B1 D0 */ lfs f1, lbl_805ACEF0@sda21(r2) +/* 8020D074 00209FD4 C0 03 00 04 */ lfs f0, 4(r3) +/* 8020D078 00209FD8 EC 21 00 B2 */ fmuls f1, f1, f2 +/* 8020D07C 00209FDC EC 61 01 B2 */ fmuls f3, f1, f6 +/* 8020D080 00209FE0 EC 41 01 32 */ fmuls f2, f1, f4 +/* 8020D084 00209FE4 EC 21 01 72 */ fmuls f1, f1, f5 +/* 8020D088 00209FE8 EC 00 18 28 */ fsubs f0, f0, f3 +/* 8020D08C 00209FEC D0 03 00 04 */ stfs f0, 4(r3) +/* 8020D090 00209FF0 C0 03 00 08 */ lfs f0, 8(r3) +/* 8020D094 00209FF4 EC 00 10 28 */ fsubs f0, f0, f2 +/* 8020D098 00209FF8 D0 03 00 08 */ stfs f0, 8(r3) +/* 8020D09C 00209FFC C0 03 00 0C */ lfs f0, 0xc(r3) +/* 8020D0A0 0020A000 EC 00 08 28 */ fsubs f0, f0, f1 +/* 8020D0A4 0020A004 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 8020D0A8 0020A008 80 7F 00 10 */ lwz r3, 0x10(r31) +/* 8020D0AC 0020A00C C0 03 00 04 */ lfs f0, 4(r3) +/* 8020D0B0 0020A010 EC 00 18 2A */ fadds f0, f0, f3 +/* 8020D0B4 0020A014 D0 03 00 04 */ stfs f0, 4(r3) +/* 8020D0B8 0020A018 C0 03 00 08 */ lfs f0, 8(r3) +/* 8020D0BC 0020A01C EC 00 10 2A */ fadds f0, f0, f2 +/* 8020D0C0 0020A020 D0 03 00 08 */ stfs f0, 8(r3) +/* 8020D0C4 0020A024 C0 03 00 0C */ lfs f0, 0xc(r3) +/* 8020D0C8 0020A028 EC 00 08 2A */ fadds f0, f0, f1 +/* 8020D0CC 0020A02C D0 03 00 0C */ stfs f0, 0xc(r3) +lbl_8020D0D0: +/* 8020D0D0 0020A030 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8020D0D4 0020A034 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8020D0D8 0020A038 7C 08 03 A6 */ mtlr r0 +/* 8020D0DC 0020A03C 38 21 00 30 */ addi r1, r1, 0x30 +/* 8020D0E0 0020A040 4E 80 00 20 */ blr + +.global Update__Q28CRagDoll23CRagDollJointConstraintFv +Update__Q28CRagDoll23CRagDollJointConstraintFv: +/* 8020D0E4 0020A044 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 8020D0E8 0020A048 7C 08 02 A6 */ mflr r0 +/* 8020D0EC 0020A04C 90 01 00 74 */ stw r0, 0x74(r1) +/* 8020D0F0 0020A050 DB E1 00 60 */ stfd f31, 0x60(r1) +/* 8020D0F4 0020A054 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 8020D0F8 0020A058 DB C1 00 50 */ stfd f30, 0x50(r1) +/* 8020D0FC 0020A05C F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 +/* 8020D100 0020A060 DB A1 00 40 */ stfd f29, 0x40(r1) +/* 8020D104 0020A064 F3 A1 00 48 */ psq_st f29, 72(r1), 0, qr0 +/* 8020D108 0020A068 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8020D10C 0020A06C 7C 7F 1B 78 */ mr r31, r3 +/* 8020D110 0020A070 38 61 00 20 */ addi r3, r1, 0x20 +/* 8020D114 0020A074 81 1F 00 00 */ lwz r8, 0(r31) +/* 8020D118 0020A078 80 FF 00 04 */ lwz r7, 4(r31) +/* 8020D11C 0020A07C 80 DF 00 08 */ lwz r6, 8(r31) +/* 8020D120 0020A080 C0 47 00 04 */ lfs f2, 4(r7) +/* 8020D124 0020A084 C0 28 00 04 */ lfs f1, 4(r8) +/* 8020D128 0020A088 C0 06 00 04 */ lfs f0, 4(r6) +/* 8020D12C 0020A08C 80 BF 00 0C */ lwz r5, 0xc(r31) +/* 8020D130 0020A090 ED 62 08 28 */ fsubs f11, f2, f1 +/* 8020D134 0020A094 80 9F 00 10 */ lwz r4, 0x10(r31) +/* 8020D138 0020A098 EF A0 08 28 */ fsubs f29, f0, f1 +/* 8020D13C 0020A09C C0 27 00 08 */ lfs f1, 8(r7) +/* 8020D140 0020A0A0 C0 68 00 08 */ lfs f3, 8(r8) +/* 8020D144 0020A0A4 C0 06 00 08 */ lfs f0, 8(r6) +/* 8020D148 0020A0A8 C0 47 00 0C */ lfs f2, 0xc(r7) +/* 8020D14C 0020A0AC ED 41 18 28 */ fsubs f10, f1, f3 +/* 8020D150 0020A0B0 C0 28 00 0C */ lfs f1, 0xc(r8) +/* 8020D154 0020A0B4 ED A0 18 28 */ fsubs f13, f0, f3 +/* 8020D158 0020A0B8 C0 06 00 0C */ lfs f0, 0xc(r6) +/* 8020D15C 0020A0BC ED 22 08 28 */ fsubs f9, f2, f1 +/* 8020D160 0020A0C0 C0 A4 00 04 */ lfs f5, 4(r4) +/* 8020D164 0020A0C4 ED 80 08 28 */ fsubs f12, f0, f1 +/* 8020D168 0020A0C8 C0 85 00 04 */ lfs f4, 4(r5) +/* 8020D16C 0020A0CC ED 0B 03 72 */ fmuls f8, f11, f13 +/* 8020D170 0020A0D0 C0 64 00 08 */ lfs f3, 8(r4) +/* 8020D174 0020A0D4 EC E9 07 72 */ fmuls f7, f9, f29 +/* 8020D178 0020A0D8 C0 45 00 08 */ lfs f2, 8(r5) +/* 8020D17C 0020A0DC EC CA 03 32 */ fmuls f6, f10, f12 +/* 8020D180 0020A0E0 C0 24 00 0C */ lfs f1, 0xc(r4) +/* 8020D184 0020A0E4 C0 05 00 0C */ lfs f0, 0xc(r5) +/* 8020D188 0020A0E8 ED 1D 42 B8 */ fmsubs f8, f29, f10, f8 +/* 8020D18C 0020A0EC EF E5 20 28 */ fsubs f31, f5, f4 +/* 8020D190 0020A0F0 EC AC 3A F8 */ fmsubs f5, f12, f11, f7 +/* 8020D194 0020A0F4 EF C1 00 28 */ fsubs f30, f1, f0 +/* 8020D198 0020A0F8 EC 8D 32 78 */ fmsubs f4, f13, f9, f6 +/* 8020D19C 0020A0FC EF A3 10 28 */ fsubs f29, f3, f2 +/* 8020D1A0 0020A100 EC 45 07 B2 */ fmuls f2, f5, f30 +/* 8020D1A4 0020A104 EC 28 07 F2 */ fmuls f1, f8, f31 +/* 8020D1A8 0020A108 EC 04 07 72 */ fmuls f0, f4, f29 +/* 8020D1AC 0020A10C EC 5D 12 38 */ fmsubs f2, f29, f8, f2 +/* 8020D1B0 0020A110 EC 3E 09 38 */ fmsubs f1, f30, f4, f1 +/* 8020D1B4 0020A114 EC 1F 01 78 */ fmsubs f0, f31, f5, f0 +/* 8020D1B8 0020A118 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 8020D1BC 0020A11C D0 21 00 24 */ stfs f1, 0x24(r1) +/* 8020D1C0 0020A120 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 8020D1C4 0020A124 48 10 75 35 */ bl CanBeNormalized__9CVector3fCFv +/* 8020D1C8 0020A128 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8020D1CC 0020A12C 41 82 00 F0 */ beq lbl_8020D2BC +/* 8020D1D0 0020A130 C0 61 00 24 */ lfs f3, 0x24(r1) +/* 8020D1D4 0020A134 38 61 00 14 */ addi r3, r1, 0x14 +/* 8020D1D8 0020A138 C0 81 00 28 */ lfs f4, 0x28(r1) +/* 8020D1DC 0020A13C 38 81 00 08 */ addi r4, r1, 8 +/* 8020D1E0 0020A140 C0 A1 00 20 */ lfs f5, 0x20(r1) +/* 8020D1E4 0020A144 EC 1F 00 F2 */ fmuls f0, f31, f3 +/* 8020D1E8 0020A148 EC 5D 01 32 */ fmuls f2, f29, f4 +/* 8020D1EC 0020A14C EC 3E 01 72 */ fmuls f1, f30, f5 +/* 8020D1F0 0020A150 EC 05 07 78 */ fmsubs f0, f5, f29, f0 +/* 8020D1F4 0020A154 EC 43 17 B8 */ fmsubs f2, f3, f30, f2 +/* 8020D1F8 0020A158 EC 24 0F F8 */ fmsubs f1, f4, f31, f1 +/* 8020D1FC 0020A15C D0 01 00 10 */ stfs f0, 0x10(r1) +/* 8020D200 0020A160 D0 41 00 08 */ stfs f2, 8(r1) +/* 8020D204 0020A164 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 8020D208 0020A168 48 10 76 49 */ bl AsNormalized__9CVector3fCFv +/* 8020D20C 0020A16C 80 9F 00 10 */ lwz r4, 0x10(r31) +/* 8020D210 0020A170 80 7F 00 14 */ lwz r3, 0x14(r31) +/* 8020D214 0020A174 C0 04 00 08 */ lfs f0, 8(r4) +/* 8020D218 0020A178 C0 23 00 08 */ lfs f1, 8(r3) +/* 8020D21C 0020A17C C0 81 00 18 */ lfs f4, 0x18(r1) +/* 8020D220 0020A180 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8020D224 0020A184 C0 43 00 04 */ lfs f2, 4(r3) +/* 8020D228 0020A188 C0 24 00 04 */ lfs f1, 4(r4) +/* 8020D22C 0020A18C C0 C1 00 14 */ lfs f6, 0x14(r1) +/* 8020D230 0020A190 EC 22 08 28 */ fsubs f1, f2, f1 +/* 8020D234 0020A194 C0 63 00 0C */ lfs f3, 0xc(r3) +/* 8020D238 0020A198 EC 00 01 32 */ fmuls f0, f0, f4 +/* 8020D23C 0020A19C C0 44 00 0C */ lfs f2, 0xc(r4) +/* 8020D240 0020A1A0 C0 A1 00 1C */ lfs f5, 0x1c(r1) +/* 8020D244 0020A1A4 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8020D248 0020A1A8 EC 21 01 BA */ fmadds f1, f1, f6, f0 +/* 8020D24C 0020A1AC C0 02 B1 C4 */ lfs f0, lbl_805ACEE4@sda21(r2) +/* 8020D250 0020A1B0 EC 42 09 7A */ fmadds f2, f2, f5, f1 +/* 8020D254 0020A1B4 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8020D258 0020A1B8 40 81 00 64 */ ble lbl_8020D2BC +/* 8020D25C 0020A1BC C0 22 B1 D0 */ lfs f1, lbl_805ACEF0@sda21(r2) +/* 8020D260 0020A1C0 C0 03 00 04 */ lfs f0, 4(r3) +/* 8020D264 0020A1C4 EC 21 00 B2 */ fmuls f1, f1, f2 +/* 8020D268 0020A1C8 EC 61 01 B2 */ fmuls f3, f1, f6 +/* 8020D26C 0020A1CC EC 41 01 32 */ fmuls f2, f1, f4 +/* 8020D270 0020A1D0 EC 21 01 72 */ fmuls f1, f1, f5 +/* 8020D274 0020A1D4 EC 00 18 28 */ fsubs f0, f0, f3 +/* 8020D278 0020A1D8 D0 03 00 04 */ stfs f0, 4(r3) +/* 8020D27C 0020A1DC C0 03 00 08 */ lfs f0, 8(r3) +/* 8020D280 0020A1E0 EC 00 10 28 */ fsubs f0, f0, f2 +/* 8020D284 0020A1E4 D0 03 00 08 */ stfs f0, 8(r3) +/* 8020D288 0020A1E8 C0 03 00 0C */ lfs f0, 0xc(r3) +/* 8020D28C 0020A1EC EC 00 08 28 */ fsubs f0, f0, f1 +/* 8020D290 0020A1F0 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 8020D294 0020A1F4 80 7F 00 10 */ lwz r3, 0x10(r31) +/* 8020D298 0020A1F8 C0 03 00 04 */ lfs f0, 4(r3) +/* 8020D29C 0020A1FC EC 00 18 2A */ fadds f0, f0, f3 +/* 8020D2A0 0020A200 D0 03 00 04 */ stfs f0, 4(r3) +/* 8020D2A4 0020A204 C0 03 00 08 */ lfs f0, 8(r3) +/* 8020D2A8 0020A208 EC 00 10 2A */ fadds f0, f0, f2 +/* 8020D2AC 0020A20C D0 03 00 08 */ stfs f0, 8(r3) +/* 8020D2B0 0020A210 C0 03 00 0C */ lfs f0, 0xc(r3) +/* 8020D2B4 0020A214 EC 00 08 2A */ fadds f0, f0, f1 +/* 8020D2B8 0020A218 D0 03 00 0C */ stfs f0, 0xc(r3) +lbl_8020D2BC: +/* 8020D2BC 0020A21C E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 8020D2C0 0020A220 CB E1 00 60 */ lfd f31, 0x60(r1) +/* 8020D2C4 0020A224 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 +/* 8020D2C8 0020A228 CB C1 00 50 */ lfd f30, 0x50(r1) +/* 8020D2CC 0020A22C E3 A1 00 48 */ psq_l f29, 72(r1), 0, qr0 +/* 8020D2D0 0020A230 CB A1 00 40 */ lfd f29, 0x40(r1) +/* 8020D2D4 0020A234 80 01 00 74 */ lwz r0, 0x74(r1) +/* 8020D2D8 0020A238 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8020D2DC 0020A23C 7C 08 03 A6 */ mtlr r0 +/* 8020D2E0 0020A240 38 21 00 70 */ addi r1, r1, 0x70 +/* 8020D2E4 0020A244 4E 80 00 20 */ blr + +.global Update__Q28CRagDoll24CRagDollLengthConstraintFv +Update__Q28CRagDoll24CRagDollLengthConstraintFv: +/* 8020D2E8 0020A248 80 A3 00 00 */ lwz r5, 0(r3) +/* 8020D2EC 0020A24C 38 C0 00 01 */ li r6, 1 +/* 8020D2F0 0020A250 80 83 00 04 */ lwz r4, 4(r3) +/* 8020D2F4 0020A254 C0 05 00 08 */ lfs f0, 8(r5) +/* 8020D2F8 0020A258 C0 24 00 08 */ lfs f1, 8(r4) +/* 8020D2FC 0020A25C C0 43 00 08 */ lfs f2, 8(r3) +/* 8020D300 0020A260 EC 81 00 28 */ fsubs f4, f1, f0 +/* 8020D304 0020A264 C0 24 00 04 */ lfs f1, 4(r4) +/* 8020D308 0020A268 C0 05 00 04 */ lfs f0, 4(r5) +/* 8020D30C 0020A26C EC C2 00 B2 */ fmuls f6, f2, f2 +/* 8020D310 0020A270 80 03 00 0C */ lwz r0, 0xc(r3) +/* 8020D314 0020A274 EC A1 00 28 */ fsubs f5, f1, f0 +/* 8020D318 0020A278 EC 04 01 32 */ fmuls f0, f4, f4 +/* 8020D31C 0020A27C C0 44 00 0C */ lfs f2, 0xc(r4) +/* 8020D320 0020A280 C0 25 00 0C */ lfs f1, 0xc(r5) +/* 8020D324 0020A284 2C 00 00 02 */ cmpwi r0, 2 +/* 8020D328 0020A288 EC 62 08 28 */ fsubs f3, f2, f1 +/* 8020D32C 0020A28C EC 05 01 7A */ fmadds f0, f5, f5, f0 +/* 8020D330 0020A290 EC 03 00 FA */ fmadds f0, f3, f3, f0 +/* 8020D334 0020A294 41 82 00 24 */ beq lbl_8020D358 +/* 8020D338 0020A298 40 80 00 2C */ bge lbl_8020D364 +/* 8020D33C 0020A29C 2C 00 00 01 */ cmpwi r0, 1 +/* 8020D340 0020A2A0 40 80 00 08 */ bge lbl_8020D348 +/* 8020D344 0020A2A4 48 00 00 20 */ b lbl_8020D364 +lbl_8020D348: +/* 8020D348 0020A2A8 FC 00 30 40 */ fcmpo cr0, f0, f6 +/* 8020D34C 0020A2AC 7C 00 00 26 */ mfcr r0 +/* 8020D350 0020A2B0 54 06 0F FE */ srwi r6, r0, 0x1f +/* 8020D354 0020A2B4 48 00 00 10 */ b lbl_8020D364 +lbl_8020D358: +/* 8020D358 0020A2B8 FC 00 30 40 */ fcmpo cr0, f0, f6 +/* 8020D35C 0020A2BC 7C 00 00 26 */ mfcr r0 +/* 8020D360 0020A2C0 54 06 17 FE */ rlwinm r6, r0, 2, 0x1f, 0x1f +lbl_8020D364: +/* 8020D364 0020A2C4 54 C0 06 3F */ clrlwi. r0, r6, 0x18 +/* 8020D368 0020A2C8 4D 82 00 20 */ beqlr +/* 8020D36C 0020A2CC EC 40 30 2A */ fadds f2, f0, f6 +/* 8020D370 0020A2D0 C0 22 B1 D0 */ lfs f1, lbl_805ACEF0@sda21(r2) +/* 8020D374 0020A2D4 C0 05 00 04 */ lfs f0, 4(r5) +/* 8020D378 0020A2D8 EC 46 10 24 */ fdivs f2, f6, f2 +/* 8020D37C 0020A2DC EC 22 08 28 */ fsubs f1, f2, f1 +/* 8020D380 0020A2E0 EC A1 01 72 */ fmuls f5, f1, f5 +/* 8020D384 0020A2E4 EC 41 01 32 */ fmuls f2, f1, f4 +/* 8020D388 0020A2E8 EC 21 00 F2 */ fmuls f1, f1, f3 +/* 8020D38C 0020A2EC EC 00 28 28 */ fsubs f0, f0, f5 +/* 8020D390 0020A2F0 D0 05 00 04 */ stfs f0, 4(r5) +/* 8020D394 0020A2F4 C0 05 00 08 */ lfs f0, 8(r5) +/* 8020D398 0020A2F8 EC 00 10 28 */ fsubs f0, f0, f2 +/* 8020D39C 0020A2FC D0 05 00 08 */ stfs f0, 8(r5) +/* 8020D3A0 0020A300 C0 05 00 0C */ lfs f0, 0xc(r5) +/* 8020D3A4 0020A304 EC 00 08 28 */ fsubs f0, f0, f1 +/* 8020D3A8 0020A308 D0 05 00 0C */ stfs f0, 0xc(r5) +/* 8020D3AC 0020A30C C0 04 00 04 */ lfs f0, 4(r4) +/* 8020D3B0 0020A310 EC 00 28 2A */ fadds f0, f0, f5 +/* 8020D3B4 0020A314 D0 04 00 04 */ stfs f0, 4(r4) +/* 8020D3B8 0020A318 C0 04 00 08 */ lfs f0, 8(r4) +/* 8020D3BC 0020A31C EC 00 10 2A */ fadds f0, f0, f2 +/* 8020D3C0 0020A320 D0 04 00 08 */ stfs f0, 8(r4) +/* 8020D3C4 0020A324 C0 04 00 0C */ lfs f0, 0xc(r4) +/* 8020D3C8 0020A328 EC 00 08 2A */ fadds f0, f0, f1 +/* 8020D3CC 0020A32C D0 04 00 0C */ stfs f0, 0xc(r4) +/* 8020D3D0 0020A330 4E 80 00 20 */ blr + +.global Update__8CRagDollFR13CStateManagerff +Update__8CRagDollFR13CStateManagerff: +/* 8020D3D4 0020A334 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8020D3D8 0020A338 7C 08 02 A6 */ mflr r0 +/* 8020D3DC 0020A33C 90 01 00 24 */ stw r0, 0x24(r1) +/* 8020D3E0 0020A340 DB E1 00 18 */ stfd f31, 0x18(r1) +/* 8020D3E4 0020A344 FF E0 08 90 */ fmr f31, f1 +/* 8020D3E8 0020A348 93 E1 00 14 */ stw r31, 0x14(r1) +/* 8020D3EC 0020A34C 7C 9F 23 78 */ mr r31, r4 +/* 8020D3F0 0020A350 93 C1 00 10 */ stw r30, 0x10(r1) +/* 8020D3F4 0020A354 7C 7E 1B 78 */ mr r30, r3 +/* 8020D3F8 0020A358 88 03 00 68 */ lbz r0, 0x68(r3) +/* 8020D3FC 0020A35C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8020D400 0020A360 41 82 00 10 */ beq lbl_8020D410 +/* 8020D404 0020A364 88 1E 00 68 */ lbz r0, 0x68(r30) +/* 8020D408 0020A368 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 8020D40C 0020A36C 41 82 00 3C */ beq lbl_8020D448 +lbl_8020D410: +/* 8020D410 0020A370 FC 20 F8 90 */ fmr f1, f31 +/* 8020D414 0020A374 7F C3 F3 78 */ mr r3, r30 +/* 8020D418 0020A378 48 00 0C 01 */ bl AccumulateForces__8CRagDollFff +/* 8020D41C 0020A37C FC 20 F8 90 */ fmr f1, f31 +/* 8020D420 0020A380 7F C3 F3 78 */ mr r3, r30 +/* 8020D424 0020A384 48 00 10 49 */ bl Verlet__8CRagDollFf +/* 8020D428 0020A388 7F C3 F3 78 */ mr r3, r30 +/* 8020D42C 0020A38C 7F E4 FB 78 */ mr r4, r31 +/* 8020D430 0020A390 48 00 02 AD */ bl SatisfyConstraints__8CRagDollFR13CStateManager +/* 8020D434 0020A394 7F C3 F3 78 */ mr r3, r30 +/* 8020D438 0020A398 48 00 02 55 */ bl ClearForces__8CRagDollFv +/* 8020D43C 0020A39C FC 20 F8 90 */ fmr f1, f31 +/* 8020D440 0020A3A0 7F C3 F3 78 */ mr r3, r30 +/* 8020D444 0020A3A4 48 00 00 21 */ bl CheckStatic__8CRagDollFf +lbl_8020D448: +/* 8020D448 0020A3A8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8020D44C 0020A3AC CB E1 00 18 */ lfd f31, 0x18(r1) +/* 8020D450 0020A3B0 83 E1 00 14 */ lwz r31, 0x14(r1) +/* 8020D454 0020A3B4 83 C1 00 10 */ lwz r30, 0x10(r1) +/* 8020D458 0020A3B8 7C 08 03 A6 */ mtlr r0 +/* 8020D45C 0020A3BC 38 21 00 20 */ addi r1, r1, 0x20 +/* 8020D460 0020A3C0 4E 80 00 20 */ blr + +.global CheckStatic__8CRagDollFf +CheckStatic__8CRagDollFf: +/* 8020D464 0020A3C4 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8020D468 0020A3C8 7C 08 02 A6 */ mflr r0 +/* 8020D46C 0020A3CC 90 01 00 44 */ stw r0, 0x44(r1) +/* 8020D470 0020A3D0 DB E1 00 30 */ stfd f31, 0x30(r1) +/* 8020D474 0020A3D4 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 8020D478 0020A3D8 DB C1 00 20 */ stfd f30, 0x20(r1) +/* 8020D47C 0020A3DC F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 +/* 8020D480 0020A3E0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8020D484 0020A3E4 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8020D488 0020A3E8 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8020D48C 0020A3EC 93 81 00 10 */ stw r28, 0x10(r1) +/* 8020D490 0020A3F0 3B A0 00 00 */ li r29, 0 +/* 8020D494 0020A3F4 FF C0 08 90 */ fmr f30, f1 +/* 8020D498 0020A3F8 93 A3 00 4C */ stw r29, 0x4c(r3) +/* 8020D49C 0020A3FC 7C 7E 1B 78 */ mr r30, r3 +/* 8020D4A0 0020A400 C0 02 B1 C4 */ lfs f0, lbl_805ACEE4@sda21(r2) +/* 8020D4A4 0020A404 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8020D4A8 0020A408 C0 22 B1 D0 */ lfs f1, lbl_805ACEF0@sda21(r2) +/* 8020D4AC 0020A40C D0 1E 00 54 */ stfs f0, 0x54(r30) +/* 8020D4B0 0020A410 3B E0 00 01 */ li r31, 1 +/* 8020D4B4 0020A414 EC 21 07 B2 */ fmuls f1, f1, f30 +/* 8020D4B8 0020A418 3B 80 00 00 */ li r28, 0 +/* 8020D4BC 0020A41C C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) +/* 8020D4C0 0020A420 D0 1E 00 58 */ stfs f0, 0x58(r30) +/* 8020D4C4 0020A424 EF E1 00 72 */ fmuls f31, f1, f1 +/* 8020D4C8 0020A428 C0 03 00 04 */ lfs f0, 4(r3) +/* 8020D4CC 0020A42C D0 1E 00 5C */ stfs f0, 0x5c(r30) +/* 8020D4D0 0020A430 C0 03 00 08 */ lfs f0, 8(r3) +/* 8020D4D4 0020A434 D0 1E 00 60 */ stfs f0, 0x60(r30) +/* 8020D4D8 0020A438 48 00 00 B0 */ b lbl_8020D588 +lbl_8020D4DC: +/* 8020D4DC 0020A43C 80 1E 00 10 */ lwz r0, 0x10(r30) +/* 8020D4E0 0020A440 C0 1E 00 58 */ lfs f0, 0x58(r30) +/* 8020D4E4 0020A444 7C 60 EA 14 */ add r3, r0, r29 +/* 8020D4E8 0020A448 C0 43 00 04 */ lfs f2, 4(r3) +/* 8020D4EC 0020A44C C0 23 00 14 */ lfs f1, 0x14(r3) +/* 8020D4F0 0020A450 C0 83 00 08 */ lfs f4, 8(r3) +/* 8020D4F4 0020A454 EC A2 08 28 */ fsubs f5, f2, f1 +/* 8020D4F8 0020A458 C0 23 00 18 */ lfs f1, 0x18(r3) +/* 8020D4FC 0020A45C C0 63 00 0C */ lfs f3, 0xc(r3) +/* 8020D500 0020A460 C0 43 00 1C */ lfs f2, 0x1c(r3) +/* 8020D504 0020A464 EC 84 08 28 */ fsubs f4, f4, f1 +/* 8020D508 0020A468 EC 20 28 2A */ fadds f1, f0, f5 +/* 8020D50C 0020A46C EC 43 10 28 */ fsubs f2, f3, f2 +/* 8020D510 0020A470 EC 04 01 32 */ fmuls f0, f4, f4 +/* 8020D514 0020A474 D0 3E 00 58 */ stfs f1, 0x58(r30) +/* 8020D518 0020A478 C0 3E 00 5C */ lfs f1, 0x5c(r30) +/* 8020D51C 0020A47C EC 05 01 7A */ fmadds f0, f5, f5, f0 +/* 8020D520 0020A480 EC 21 20 2A */ fadds f1, f1, f4 +/* 8020D524 0020A484 EC 02 00 BA */ fmadds f0, f2, f2, f0 +/* 8020D528 0020A488 D0 3E 00 5C */ stfs f1, 0x5c(r30) +/* 8020D52C 0020A48C FC 00 F8 40 */ fcmpo cr0, f0, f31 +/* 8020D530 0020A490 C0 1E 00 60 */ lfs f0, 0x60(r30) +/* 8020D534 0020A494 EC 00 10 2A */ fadds f0, f0, f2 +/* 8020D538 0020A498 D0 1E 00 60 */ stfs f0, 0x60(r30) +/* 8020D53C 0020A49C 40 81 00 08 */ ble lbl_8020D544 +/* 8020D540 0020A4A0 3B E0 00 00 */ li r31, 0 +lbl_8020D544: +/* 8020D544 0020A4A4 80 7E 00 10 */ lwz r3, 0x10(r30) +/* 8020D548 0020A4A8 38 1D 00 3C */ addi r0, r29, 0x3c +/* 8020D54C 0020A4AC 7C 03 00 AE */ lbzx r0, r3, r0 +/* 8020D550 0020A4B0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8020D554 0020A4B4 41 82 00 2C */ beq lbl_8020D580 +/* 8020D558 0020A4B8 80 BE 00 4C */ lwz r5, 0x4c(r30) +/* 8020D55C 0020A4BC 38 9D 00 38 */ addi r4, r29, 0x38 +/* 8020D560 0020A4C0 38 7E 00 54 */ addi r3, r30, 0x54 +/* 8020D564 0020A4C4 38 05 00 01 */ addi r0, r5, 1 +/* 8020D568 0020A4C8 90 1E 00 4C */ stw r0, 0x4c(r30) +/* 8020D56C 0020A4CC 80 1E 00 10 */ lwz r0, 0x10(r30) +/* 8020D570 0020A4D0 7C 80 22 14 */ add r4, r0, r4 +/* 8020D574 0020A4D4 4B E4 21 BD */ bl "Max__5CMathFRCfRCf" +/* 8020D578 0020A4D8 C0 03 00 00 */ lfs f0, 0(r3) +/* 8020D57C 0020A4DC D0 1E 00 54 */ stfs f0, 0x54(r30) +lbl_8020D580: +/* 8020D580 0020A4E0 3B BD 00 40 */ addi r29, r29, 0x40 +/* 8020D584 0020A4E4 3B 9C 00 01 */ addi r28, r28, 1 +lbl_8020D588: +/* 8020D588 0020A4E8 80 1E 00 08 */ lwz r0, 8(r30) +/* 8020D58C 0020A4EC 7C 1C 00 00 */ cmpw r28, r0 +/* 8020D590 0020A4F0 41 80 FF 4C */ blt lbl_8020D4DC +/* 8020D594 0020A4F4 2C 00 00 00 */ cmpwi r0, 0 +/* 8020D598 0020A4F8 41 82 00 50 */ beq lbl_8020D5E8 +/* 8020D59C 0020A4FC 6C 03 80 00 */ xoris r3, r0, 0x8000 +/* 8020D5A0 0020A500 3C 00 43 30 */ lis r0, 0x4330 +/* 8020D5A4 0020A504 90 61 00 0C */ stw r3, 0xc(r1) +/* 8020D5A8 0020A508 C8 42 B1 D8 */ lfd f2, lbl_805ACEF8@sda21(r2) +/* 8020D5AC 0020A50C 90 01 00 08 */ stw r0, 8(r1) +/* 8020D5B0 0020A510 C0 62 B1 C0 */ lfs f3, lbl_805ACEE0@sda21(r2) +/* 8020D5B4 0020A514 C8 21 00 08 */ lfd f1, 8(r1) +/* 8020D5B8 0020A518 C0 1E 00 58 */ lfs f0, 0x58(r30) +/* 8020D5BC 0020A51C EC 21 10 28 */ fsubs f1, f1, f2 +/* 8020D5C0 0020A520 EC 3E 00 72 */ fmuls f1, f30, f1 +/* 8020D5C4 0020A524 EC 23 08 24 */ fdivs f1, f3, f1 +/* 8020D5C8 0020A528 EC 00 00 72 */ fmuls f0, f0, f1 +/* 8020D5CC 0020A52C D0 1E 00 58 */ stfs f0, 0x58(r30) +/* 8020D5D0 0020A530 C0 1E 00 5C */ lfs f0, 0x5c(r30) +/* 8020D5D4 0020A534 EC 00 00 72 */ fmuls f0, f0, f1 +/* 8020D5D8 0020A538 D0 1E 00 5C */ stfs f0, 0x5c(r30) +/* 8020D5DC 0020A53C C0 1E 00 60 */ lfs f0, 0x60(r30) +/* 8020D5E0 0020A540 EC 00 00 72 */ fmuls f0, f0, f1 +/* 8020D5E4 0020A544 D0 1E 00 60 */ stfs f0, 0x60(r30) +lbl_8020D5E8: +/* 8020D5E8 0020A548 C0 1E 00 54 */ lfs f0, 0x54(r30) +/* 8020D5EC 0020A54C EC 00 F0 24 */ fdivs f0, f0, f30 +/* 8020D5F0 0020A550 D0 1E 00 54 */ stfs f0, 0x54(r30) +/* 8020D5F4 0020A554 88 1E 00 68 */ lbz r0, 0x68(r30) +/* 8020D5F8 0020A558 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 8020D5FC 0020A55C 40 82 00 34 */ bne lbl_8020D630 +/* 8020D600 0020A560 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 8020D604 0020A564 C0 02 B1 C4 */ lfs f0, lbl_805ACEE4@sda21(r2) +/* 8020D608 0020A568 EC 21 F0 28 */ fsubs f1, f1, f30 +/* 8020D60C 0020A56C D0 3E 00 50 */ stfs f1, 0x50(r30) +/* 8020D610 0020A570 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 8020D614 0020A574 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8020D618 0020A578 4C 40 13 82 */ cror 2, 0, 2 +/* 8020D61C 0020A57C 40 82 00 14 */ bne lbl_8020D630 +/* 8020D620 0020A580 88 1E 00 68 */ lbz r0, 0x68(r30) +/* 8020D624 0020A584 38 60 00 01 */ li r3, 1 +/* 8020D628 0020A588 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 8020D62C 0020A58C 98 1E 00 68 */ stb r0, 0x68(r30) +lbl_8020D630: +/* 8020D630 0020A590 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 8020D634 0020A594 41 82 00 1C */ beq lbl_8020D650 +/* 8020D638 0020A598 88 7E 00 68 */ lbz r3, 0x68(r30) +/* 8020D63C 0020A59C 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f +/* 8020D640 0020A5A0 41 82 00 10 */ beq lbl_8020D650 +/* 8020D644 0020A5A4 38 00 00 01 */ li r0, 1 +/* 8020D648 0020A5A8 50 03 36 72 */ rlwimi r3, r0, 6, 0x19, 0x19 +/* 8020D64C 0020A5AC 98 7E 00 68 */ stb r3, 0x68(r30) +lbl_8020D650: +/* 8020D650 0020A5B0 88 1E 00 68 */ lbz r0, 0x68(r30) +/* 8020D654 0020A5B4 53 E0 3E 30 */ rlwimi r0, r31, 7, 0x18, 0x18 +/* 8020D658 0020A5B8 98 1E 00 68 */ stb r0, 0x68(r30) +/* 8020D65C 0020A5BC E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 8020D660 0020A5C0 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 8020D664 0020A5C4 E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 +/* 8020D668 0020A5C8 CB C1 00 20 */ lfd f30, 0x20(r1) +/* 8020D66C 0020A5CC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8020D670 0020A5D0 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8020D674 0020A5D4 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8020D678 0020A5D8 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8020D67C 0020A5DC 83 81 00 10 */ lwz r28, 0x10(r1) +/* 8020D680 0020A5E0 7C 08 03 A6 */ mtlr r0 +/* 8020D684 0020A5E4 38 21 00 40 */ addi r1, r1, 0x40 +/* 8020D688 0020A5E8 4E 80 00 20 */ blr + +.global ClearForces__8CRagDollFv +ClearForces__8CRagDollFv: +/* 8020D68C 0020A5EC 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8020D690 0020A5F0 38 E0 00 00 */ li r7, 0 +/* 8020D694 0020A5F4 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 8020D698 0020A5F8 38 C0 00 00 */ li r6, 0 +/* 8020D69C 0020A5FC 48 00 00 30 */ b lbl_8020D6CC +lbl_8020D6A0: +/* 8020D6A0 0020A600 80 03 00 10 */ lwz r0, 0x10(r3) +/* 8020D6A4 0020A604 38 A6 00 20 */ addi r5, r6, 0x20 +/* 8020D6A8 0020A608 C0 04 00 00 */ lfs f0, 0(r4) +/* 8020D6AC 0020A60C 38 E7 00 01 */ addi r7, r7, 1 +/* 8020D6B0 0020A610 7C A0 2A 14 */ add r5, r0, r5 +/* 8020D6B4 0020A614 38 C6 00 40 */ addi r6, r6, 0x40 +/* 8020D6B8 0020A618 D0 05 00 00 */ stfs f0, 0(r5) +/* 8020D6BC 0020A61C C0 04 00 04 */ lfs f0, 4(r4) +/* 8020D6C0 0020A620 D0 05 00 04 */ stfs f0, 4(r5) +/* 8020D6C4 0020A624 C0 04 00 08 */ lfs f0, 8(r4) +/* 8020D6C8 0020A628 D0 05 00 08 */ stfs f0, 8(r5) +lbl_8020D6CC: +/* 8020D6CC 0020A62C 80 03 00 08 */ lwz r0, 8(r3) +/* 8020D6D0 0020A630 7C 07 00 00 */ cmpw r7, r0 +/* 8020D6D4 0020A634 41 80 FF CC */ blt lbl_8020D6A0 + +.global sub_8020d6d8 +sub_8020d6d8: +/* 8020D6D8 0020A638 4E 80 00 20 */ blr + +.global SatisfyConstraints__8CRagDollFR13CStateManager +SatisfyConstraints__8CRagDollFR13CStateManager: +/* 8020D6DC 0020A63C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8020D6E0 0020A640 7C 08 02 A6 */ mflr r0 +/* 8020D6E4 0020A644 90 01 00 24 */ stw r0, 0x24(r1) +/* 8020D6E8 0020A648 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8020D6EC 0020A64C 3B E0 00 00 */ li r31, 0 +/* 8020D6F0 0020A650 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8020D6F4 0020A654 3B C0 00 00 */ li r30, 0 +/* 8020D6F8 0020A658 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8020D6FC 0020A65C 7C 9D 23 78 */ mr r29, r4 +/* 8020D700 0020A660 93 81 00 10 */ stw r28, 0x10(r1) +/* 8020D704 0020A664 7C 7C 1B 78 */ mr r28, r3 +/* 8020D708 0020A668 48 00 00 18 */ b lbl_8020D720 +lbl_8020D70C: +/* 8020D70C 0020A66C 80 1C 00 20 */ lwz r0, 0x20(r28) +/* 8020D710 0020A670 7C 60 FA 14 */ add r3, r0, r31 +/* 8020D714 0020A674 4B FF FB D5 */ bl Update__Q28CRagDoll24CRagDollLengthConstraintFv +/* 8020D718 0020A678 3B FF 00 10 */ addi r31, r31, 0x10 +/* 8020D71C 0020A67C 3B DE 00 01 */ addi r30, r30, 1 +lbl_8020D720: +/* 8020D720 0020A680 80 1C 00 18 */ lwz r0, 0x18(r28) +/* 8020D724 0020A684 7C 1E 00 00 */ cmpw r30, r0 +/* 8020D728 0020A688 41 80 FF E4 */ blt lbl_8020D70C +/* 8020D72C 0020A68C 3B C0 00 00 */ li r30, 0 +/* 8020D730 0020A690 7F DF F3 78 */ mr r31, r30 +/* 8020D734 0020A694 48 00 00 18 */ b lbl_8020D74C +lbl_8020D738: +/* 8020D738 0020A698 80 1C 00 30 */ lwz r0, 0x30(r28) +/* 8020D73C 0020A69C 7C 60 FA 14 */ add r3, r0, r31 +/* 8020D740 0020A6A0 4B FF F9 A5 */ bl Update__Q28CRagDoll23CRagDollJointConstraintFv +/* 8020D744 0020A6A4 3B FF 00 18 */ addi r31, r31, 0x18 +/* 8020D748 0020A6A8 3B DE 00 01 */ addi r30, r30, 1 +lbl_8020D74C: +/* 8020D74C 0020A6AC 80 1C 00 28 */ lwz r0, 0x28(r28) +/* 8020D750 0020A6B0 7C 1E 00 00 */ cmpw r30, r0 +/* 8020D754 0020A6B4 41 80 FF E4 */ blt lbl_8020D738 +/* 8020D758 0020A6B8 3B C0 00 00 */ li r30, 0 +/* 8020D75C 0020A6BC 7F DF F3 78 */ mr r31, r30 +/* 8020D760 0020A6C0 48 00 00 18 */ b lbl_8020D778 +lbl_8020D764: +/* 8020D764 0020A6C4 80 1C 00 40 */ lwz r0, 0x40(r28) +/* 8020D768 0020A6C8 7C 60 FA 14 */ add r3, r0, r31 +/* 8020D76C 0020A6CC 4B FF F8 5D */ bl Update__Q28CRagDoll23CRagDollPlaneConstraintFv +/* 8020D770 0020A6D0 3B FF 00 14 */ addi r31, r31, 0x14 +/* 8020D774 0020A6D4 3B DE 00 01 */ addi r30, r30, 1 +lbl_8020D778: +/* 8020D778 0020A6D8 80 1C 00 38 */ lwz r0, 0x38(r28) +/* 8020D77C 0020A6DC 7C 1E 00 00 */ cmpw r30, r0 +/* 8020D780 0020A6E0 41 80 FF E4 */ blt lbl_8020D764 +/* 8020D784 0020A6E4 7F 83 E3 78 */ mr r3, r28 +/* 8020D788 0020A6E8 7F A4 EB 78 */ mr r4, r29 +/* 8020D78C 0020A6EC 38 A0 00 01 */ li r5, 1 +/* 8020D790 0020A6F0 48 00 00 3D */ bl SatisfyWorldConstraints__8CRagDollFR13CStateManageri +/* 8020D794 0020A6F4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8020D798 0020A6F8 41 82 00 14 */ beq lbl_8020D7AC +/* 8020D79C 0020A6FC 7F 83 E3 78 */ mr r3, r28 +/* 8020D7A0 0020A700 7F A4 EB 78 */ mr r4, r29 +/* 8020D7A4 0020A704 38 A0 00 02 */ li r5, 2 +/* 8020D7A8 0020A708 48 00 00 25 */ bl SatisfyWorldConstraints__8CRagDollFR13CStateManageri +lbl_8020D7AC: +/* 8020D7AC 0020A70C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8020D7B0 0020A710 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8020D7B4 0020A714 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8020D7B8 0020A718 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8020D7BC 0020A71C 83 81 00 10 */ lwz r28, 0x10(r1) +/* 8020D7C0 0020A720 7C 08 03 A6 */ mtlr r0 +/* 8020D7C4 0020A724 38 21 00 20 */ addi r1, r1, 0x20 +/* 8020D7C8 0020A728 4E 80 00 20 */ blr + +.global SatisfyWorldConstraints__8CRagDollFR13CStateManageri +SatisfyWorldConstraints__8CRagDollFR13CStateManageri: +/* 8020D7CC 0020A72C 94 21 DA F0 */ stwu r1, -0x2510(r1) +/* 8020D7D0 0020A730 7C 08 02 A6 */ mflr r0 +/* 8020D7D4 0020A734 90 01 25 14 */ stw r0, 0x2514(r1) +/* 8020D7D8 0020A738 38 00 25 08 */ li r0, 0x2508 +/* 8020D7DC 0020A73C DB E1 25 00 */ stfd f31, 0x2500(r1) +/* 8020D7E0 0020A740 13 E1 00 0E */ psq_stx f31, r1, r0, 0, qr0 +/* 8020D7E4 0020A744 38 00 24 F8 */ li r0, 0x24f8 +/* 8020D7E8 0020A748 DB C1 24 F0 */ stfd f30, 0x24f0(r1) +/* 8020D7EC 0020A74C 13 C1 00 0E */ psq_stx f30, r1, r0, 0, qr0 +/* 8020D7F0 0020A750 38 00 24 E8 */ li r0, 0x24e8 +/* 8020D7F4 0020A754 DB A1 24 E0 */ stfd f29, 0x24e0(r1) +/* 8020D7F8 0020A758 13 A1 00 0E */ psq_stx f29, r1, r0, 0, qr0 +/* 8020D7FC 0020A75C 38 00 24 D8 */ li r0, 0x24d8 +/* 8020D800 0020A760 DB 81 24 D0 */ stfd f28, 0x24d0(r1) +/* 8020D804 0020A764 13 81 00 0E */ psq_stx f28, r1, r0, 0, qr0 +/* 8020D808 0020A768 38 00 24 C8 */ li r0, 0x24c8 +/* 8020D80C 0020A76C DB 61 24 C0 */ stfd f27, 0x24c0(r1) +/* 8020D810 0020A770 13 61 00 0E */ psq_stx f27, r1, r0, 0, qr0 +/* 8020D814 0020A774 BF 01 24 A0 */ stmw r24, 0x24a0(r1) +/* 8020D818 0020A778 3C C0 80 5A */ lis r6, lbl_805A6754@ha +/* 8020D81C 0020A77C 7C 7D 1B 78 */ mr r29, r3 +/* 8020D820 0020A780 38 66 67 54 */ addi r3, r6, lbl_805A6754@l +/* 8020D824 0020A784 7C 9E 23 78 */ mr r30, r4 +/* 8020D828 0020A788 C0 A3 00 00 */ lfs f5, 0(r3) +/* 8020D82C 0020A78C 7C BF 2B 78 */ mr r31, r5 +/* 8020D830 0020A790 C0 83 00 04 */ lfs f4, 4(r3) +/* 8020D834 0020A794 3B 60 00 00 */ li r27, 0 +/* 8020D838 0020A798 C0 63 00 08 */ lfs f3, 8(r3) +/* 8020D83C 0020A79C 3B 80 00 00 */ li r28, 0 +/* 8020D840 0020A7A0 C0 43 00 0C */ lfs f2, 0xc(r3) +/* 8020D844 0020A7A4 C0 23 00 10 */ lfs f1, 0x10(r3) +/* 8020D848 0020A7A8 C0 03 00 14 */ lfs f0, 0x14(r3) +/* 8020D84C 0020A7AC D0 A1 00 E0 */ stfs f5, 0xe0(r1) +/* 8020D850 0020A7B0 D0 81 00 E4 */ stfs f4, 0xe4(r1) +/* 8020D854 0020A7B4 D0 61 00 E8 */ stfs f3, 0xe8(r1) +/* 8020D858 0020A7B8 D0 41 00 EC */ stfs f2, 0xec(r1) +/* 8020D85C 0020A7BC D0 21 00 F0 */ stfs f1, 0xf0(r1) +/* 8020D860 0020A7C0 D0 01 00 F4 */ stfs f0, 0xf4(r1) +/* 8020D864 0020A7C4 48 00 01 18 */ b lbl_8020D97C +lbl_8020D868: +/* 8020D868 0020A7C8 2C 1F 00 01 */ cmpwi r31, 1 +/* 8020D86C 0020A7CC 41 82 00 18 */ beq lbl_8020D884 +/* 8020D870 0020A7D0 80 7D 00 10 */ lwz r3, 0x10(r29) +/* 8020D874 0020A7D4 38 1C 00 3C */ addi r0, r28, 0x3c +/* 8020D878 0020A7D8 7C 03 00 AE */ lbzx r0, r3, r0 +/* 8020D87C 0020A7DC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8020D880 0020A7E0 41 82 00 F4 */ beq lbl_8020D974 +lbl_8020D884: +/* 8020D884 0020A7E4 80 1D 00 10 */ lwz r0, 0x10(r29) +/* 8020D888 0020A7E8 38 61 00 E0 */ addi r3, r1, 0xe0 +/* 8020D88C 0020A7EC 38 81 00 78 */ addi r4, r1, 0x78 +/* 8020D890 0020A7F0 7C A0 E2 14 */ add r5, r0, r28 +/* 8020D894 0020A7F4 C3 E5 00 10 */ lfs f31, 0x10(r5) +/* 8020D898 0020A7F8 C0 45 00 18 */ lfs f2, 0x18(r5) +/* 8020D89C 0020A7FC C0 25 00 1C */ lfs f1, 0x1c(r5) +/* 8020D8A0 0020A800 C0 05 00 14 */ lfs f0, 0x14(r5) +/* 8020D8A4 0020A804 EC 42 F8 28 */ fsubs f2, f2, f31 +/* 8020D8A8 0020A808 EC 21 F8 28 */ fsubs f1, f1, f31 +/* 8020D8AC 0020A80C EC 00 F8 28 */ fsubs f0, f0, f31 +/* 8020D8B0 0020A810 D0 41 00 7C */ stfs f2, 0x7c(r1) +/* 8020D8B4 0020A814 D0 01 00 78 */ stfs f0, 0x78(r1) +/* 8020D8B8 0020A818 D0 21 00 80 */ stfs f1, 0x80(r1) +/* 8020D8BC 0020A81C 48 12 A2 4D */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 8020D8C0 0020A820 80 1D 00 10 */ lwz r0, 0x10(r29) +/* 8020D8C4 0020A824 38 BC 00 14 */ addi r5, r28, 0x14 +/* 8020D8C8 0020A828 38 61 00 E0 */ addi r3, r1, 0xe0 +/* 8020D8CC 0020A82C 38 81 00 6C */ addi r4, r1, 0x6c +/* 8020D8D0 0020A830 7C A0 2A 14 */ add r5, r0, r5 +/* 8020D8D4 0020A834 C0 45 00 04 */ lfs f2, 4(r5) +/* 8020D8D8 0020A838 C0 25 00 08 */ lfs f1, 8(r5) +/* 8020D8DC 0020A83C C0 05 00 00 */ lfs f0, 0(r5) +/* 8020D8E0 0020A840 EC 42 F8 2A */ fadds f2, f2, f31 +/* 8020D8E4 0020A844 EC 21 F8 2A */ fadds f1, f1, f31 +/* 8020D8E8 0020A848 EC 00 F8 2A */ fadds f0, f0, f31 +/* 8020D8EC 0020A84C D0 41 00 70 */ stfs f2, 0x70(r1) +/* 8020D8F0 0020A850 D0 01 00 6C */ stfs f0, 0x6c(r1) +/* 8020D8F4 0020A854 D0 21 00 74 */ stfs f1, 0x74(r1) +/* 8020D8F8 0020A858 48 12 A2 11 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 8020D8FC 0020A85C 80 1D 00 10 */ lwz r0, 0x10(r29) +/* 8020D900 0020A860 38 BC 00 04 */ addi r5, r28, 4 +/* 8020D904 0020A864 38 61 00 E0 */ addi r3, r1, 0xe0 +/* 8020D908 0020A868 38 81 00 60 */ addi r4, r1, 0x60 +/* 8020D90C 0020A86C 7C A0 2A 14 */ add r5, r0, r5 +/* 8020D910 0020A870 C0 45 00 04 */ lfs f2, 4(r5) +/* 8020D914 0020A874 C0 25 00 08 */ lfs f1, 8(r5) +/* 8020D918 0020A878 C0 05 00 00 */ lfs f0, 0(r5) +/* 8020D91C 0020A87C EC 42 F8 28 */ fsubs f2, f2, f31 +/* 8020D920 0020A880 EC 21 F8 28 */ fsubs f1, f1, f31 +/* 8020D924 0020A884 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 8020D928 0020A888 D0 41 00 64 */ stfs f2, 0x64(r1) +/* 8020D92C 0020A88C D0 01 00 60 */ stfs f0, 0x60(r1) +/* 8020D930 0020A890 D0 21 00 68 */ stfs f1, 0x68(r1) +/* 8020D934 0020A894 48 12 A1 D5 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 8020D938 0020A898 80 1D 00 10 */ lwz r0, 0x10(r29) +/* 8020D93C 0020A89C 38 BC 00 04 */ addi r5, r28, 4 +/* 8020D940 0020A8A0 38 61 00 E0 */ addi r3, r1, 0xe0 +/* 8020D944 0020A8A4 38 81 00 54 */ addi r4, r1, 0x54 +/* 8020D948 0020A8A8 7C A0 2A 14 */ add r5, r0, r5 +/* 8020D94C 0020A8AC C0 45 00 04 */ lfs f2, 4(r5) +/* 8020D950 0020A8B0 C0 25 00 08 */ lfs f1, 8(r5) +/* 8020D954 0020A8B4 C0 05 00 00 */ lfs f0, 0(r5) +/* 8020D958 0020A8B8 EC 42 F8 2A */ fadds f2, f2, f31 +/* 8020D95C 0020A8BC EC 21 F8 2A */ fadds f1, f1, f31 +/* 8020D960 0020A8C0 EC 00 F8 2A */ fadds f0, f0, f31 +/* 8020D964 0020A8C4 D0 41 00 58 */ stfs f2, 0x58(r1) +/* 8020D968 0020A8C8 D0 01 00 54 */ stfs f0, 0x54(r1) +/* 8020D96C 0020A8CC D0 21 00 5C */ stfs f1, 0x5c(r1) +/* 8020D970 0020A8D0 48 12 A1 99 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +lbl_8020D974: +/* 8020D974 0020A8D4 3B 9C 00 40 */ addi r28, r28, 0x40 +/* 8020D978 0020A8D8 3B 7B 00 01 */ addi r27, r27, 1 +lbl_8020D97C: +/* 8020D97C 0020A8DC 80 1D 00 08 */ lwz r0, 8(r29) +/* 8020D980 0020A8E0 7C 1B 00 00 */ cmpw r27, r0 +/* 8020D984 0020A8E4 41 80 FE E4 */ blt lbl_8020D868 +/* 8020D988 0020A8E8 38 61 09 5C */ addi r3, r1, 0x95c +/* 8020D98C 0020A8EC 38 81 00 E0 */ addi r4, r1, 0xe0 +/* 8020D990 0020A8F0 48 09 61 01 */ bl __ct__19CAreaCollisionCacheFRC6CAABox +/* 8020D994 0020A8F4 7F C3 F3 78 */ mr r3, r30 +/* 8020D998 0020A8F8 38 81 09 5C */ addi r4, r1, 0x95c +/* 8020D99C 0020A8FC 4B F7 6D 29 */ bl BuildAreaCollisionCache__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCache +/* 8020D9A0 0020A900 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8020D9A4 0020A904 3B 60 00 00 */ li r27, 0 +/* 8020D9A8 0020A908 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8020D9AC 0020A90C 88 1D 00 68 */ lbz r0, 0x68(r29) +/* 8020D9B0 0020A910 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 8020D9B4 0020A914 41 82 00 40 */ beq lbl_8020D9F4 +/* 8020D9B8 0020A918 38 00 00 00 */ li r0, 0 +/* 8020D9BC 0020A91C 80 AD 93 F8 */ lwz r5, lbl_805A7FB8@sda21(r13) +/* 8020D9C0 0020A920 90 01 00 34 */ stw r0, 0x34(r1) +/* 8020D9C4 0020A924 38 60 00 00 */ li r3, 0 +/* 8020D9C8 0020A928 38 80 00 01 */ li r4, 1 +/* 8020D9CC 0020A92C 90 01 00 30 */ stw r0, 0x30(r1) +/* 8020D9D0 0020A930 48 17 C5 25 */ bl __shl2i +/* 8020D9D4 0020A934 80 01 00 30 */ lwz r0, 0x30(r1) +/* 8020D9D8 0020A938 38 C1 00 30 */ addi r6, r1, 0x30 +/* 8020D9DC 0020A93C 80 A1 00 34 */ lwz r5, 0x34(r1) +/* 8020D9E0 0020A940 7C 00 1B 78 */ or r0, r0, r3 +/* 8020D9E4 0020A944 7C A3 23 78 */ or r3, r5, r4 +/* 8020D9E8 0020A948 90 01 00 30 */ stw r0, 0x30(r1) +/* 8020D9EC 0020A94C 90 61 00 34 */ stw r3, 0x34(r1) +/* 8020D9F0 0020A950 48 00 00 64 */ b lbl_8020DA54 +lbl_8020D9F4: +/* 8020D9F4 0020A954 38 00 00 00 */ li r0, 0 +/* 8020D9F8 0020A958 80 AD 93 FC */ lwz r5, lbl_805A7FBC@sda21(r13) +/* 8020D9FC 0020A95C 90 01 00 2C */ stw r0, 0x2c(r1) +/* 8020DA00 0020A960 38 60 00 00 */ li r3, 0 +/* 8020DA04 0020A964 38 80 00 01 */ li r4, 1 +/* 8020DA08 0020A968 90 01 00 28 */ stw r0, 0x28(r1) +/* 8020DA0C 0020A96C 48 17 C4 E9 */ bl __shl2i +/* 8020DA10 0020A970 80 01 00 28 */ lwz r0, 0x28(r1) +/* 8020DA14 0020A974 80 C1 00 2C */ lwz r6, 0x2c(r1) +/* 8020DA18 0020A978 7C 00 1B 78 */ or r0, r0, r3 +/* 8020DA1C 0020A97C 80 AD 94 00 */ lwz r5, lbl_805A7FC0@sda21(r13) +/* 8020DA20 0020A980 7C C4 23 78 */ or r4, r6, r4 +/* 8020DA24 0020A984 90 01 00 28 */ stw r0, 0x28(r1) +/* 8020DA28 0020A988 38 60 00 00 */ li r3, 0 +/* 8020DA2C 0020A98C 90 81 00 2C */ stw r4, 0x2c(r1) +/* 8020DA30 0020A990 38 80 00 01 */ li r4, 1 +/* 8020DA34 0020A994 48 17 C4 C1 */ bl __shl2i +/* 8020DA38 0020A998 80 01 00 28 */ lwz r0, 0x28(r1) +/* 8020DA3C 0020A99C 38 C1 00 28 */ addi r6, r1, 0x28 +/* 8020DA40 0020A9A0 80 A1 00 2C */ lwz r5, 0x2c(r1) +/* 8020DA44 0020A9A4 7C 00 1B 78 */ or r0, r0, r3 +/* 8020DA48 0020A9A8 7C A3 23 78 */ or r3, r5, r4 +/* 8020DA4C 0020A9AC 90 01 00 28 */ stw r0, 0x28(r1) +/* 8020DA50 0020A9B0 90 61 00 2C */ stw r3, 0x2c(r1) +lbl_8020DA54: +/* 8020DA54 0020A9B4 80 06 00 00 */ lwz r0, 0(r6) +/* 8020DA58 0020A9B8 80 66 00 04 */ lwz r3, 4(r6) +/* 8020DA5C 0020A9BC 90 61 00 44 */ stw r3, 0x44(r1) +/* 8020DA60 0020A9C0 90 01 00 40 */ stw r0, 0x40(r1) +/* 8020DA64 0020A9C4 88 1D 00 68 */ lbz r0, 0x68(r29) +/* 8020DA68 0020A9C8 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 8020DA6C 0020A9CC 41 82 00 B8 */ beq lbl_8020DB24 +/* 8020DA70 0020A9D0 38 00 00 00 */ li r0, 0 +/* 8020DA74 0020A9D4 80 AD 94 04 */ lwz r5, lbl_805A7FC4@sda21(r13) +/* 8020DA78 0020A9D8 90 01 00 24 */ stw r0, 0x24(r1) +/* 8020DA7C 0020A9DC 38 60 00 00 */ li r3, 0 +/* 8020DA80 0020A9E0 38 80 00 01 */ li r4, 1 +/* 8020DA84 0020A9E4 90 01 00 20 */ stw r0, 0x20(r1) +/* 8020DA88 0020A9E8 48 17 C4 6D */ bl __shl2i +/* 8020DA8C 0020A9EC 80 01 00 20 */ lwz r0, 0x20(r1) +/* 8020DA90 0020A9F0 80 C1 00 24 */ lwz r6, 0x24(r1) +/* 8020DA94 0020A9F4 7C 00 1B 78 */ or r0, r0, r3 +/* 8020DA98 0020A9F8 80 AD 94 08 */ lwz r5, lbl_805A7FC8@sda21(r13) +/* 8020DA9C 0020A9FC 7C C4 23 78 */ or r4, r6, r4 +/* 8020DAA0 0020AA00 90 01 00 20 */ stw r0, 0x20(r1) +/* 8020DAA4 0020AA04 38 60 00 00 */ li r3, 0 +/* 8020DAA8 0020AA08 90 81 00 24 */ stw r4, 0x24(r1) +/* 8020DAAC 0020AA0C 38 80 00 01 */ li r4, 1 +/* 8020DAB0 0020AA10 48 17 C4 45 */ bl __shl2i +/* 8020DAB4 0020AA14 80 01 00 20 */ lwz r0, 0x20(r1) +/* 8020DAB8 0020AA18 80 C1 00 24 */ lwz r6, 0x24(r1) +/* 8020DABC 0020AA1C 7C 00 1B 78 */ or r0, r0, r3 +/* 8020DAC0 0020AA20 80 AD 94 0C */ lwz r5, lbl_805A7FCC@sda21(r13) +/* 8020DAC4 0020AA24 7C C4 23 78 */ or r4, r6, r4 +/* 8020DAC8 0020AA28 90 01 00 20 */ stw r0, 0x20(r1) +/* 8020DACC 0020AA2C 38 60 00 00 */ li r3, 0 +/* 8020DAD0 0020AA30 90 81 00 24 */ stw r4, 0x24(r1) +/* 8020DAD4 0020AA34 38 80 00 01 */ li r4, 1 +/* 8020DAD8 0020AA38 48 17 C4 1D */ bl __shl2i +/* 8020DADC 0020AA3C 80 01 00 20 */ lwz r0, 0x20(r1) +/* 8020DAE0 0020AA40 80 C1 00 24 */ lwz r6, 0x24(r1) +/* 8020DAE4 0020AA44 7C 00 1B 78 */ or r0, r0, r3 +/* 8020DAE8 0020AA48 80 AD 94 10 */ lwz r5, lbl_805A7FD0@sda21(r13) +/* 8020DAEC 0020AA4C 7C C4 23 78 */ or r4, r6, r4 +/* 8020DAF0 0020AA50 90 01 00 20 */ stw r0, 0x20(r1) +/* 8020DAF4 0020AA54 38 60 00 00 */ li r3, 0 +/* 8020DAF8 0020AA58 90 81 00 24 */ stw r4, 0x24(r1) +/* 8020DAFC 0020AA5C 38 80 00 01 */ li r4, 1 +/* 8020DB00 0020AA60 48 17 C3 F5 */ bl __shl2i +/* 8020DB04 0020AA64 80 01 00 20 */ lwz r0, 0x20(r1) +/* 8020DB08 0020AA68 38 C1 00 20 */ addi r6, r1, 0x20 +/* 8020DB0C 0020AA6C 80 A1 00 24 */ lwz r5, 0x24(r1) +/* 8020DB10 0020AA70 7C 00 1B 78 */ or r0, r0, r3 +/* 8020DB14 0020AA74 7C A3 23 78 */ or r3, r5, r4 +/* 8020DB18 0020AA78 90 01 00 20 */ stw r0, 0x20(r1) +/* 8020DB1C 0020AA7C 90 61 00 24 */ stw r3, 0x24(r1) +/* 8020DB20 0020AA80 48 00 00 64 */ b lbl_8020DB84 +lbl_8020DB24: +/* 8020DB24 0020AA84 38 00 00 00 */ li r0, 0 +/* 8020DB28 0020AA88 80 AD 94 14 */ lwz r5, lbl_805A7FD4@sda21(r13) +/* 8020DB2C 0020AA8C 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8020DB30 0020AA90 38 60 00 00 */ li r3, 0 +/* 8020DB34 0020AA94 38 80 00 01 */ li r4, 1 +/* 8020DB38 0020AA98 90 01 00 18 */ stw r0, 0x18(r1) +/* 8020DB3C 0020AA9C 48 17 C3 B9 */ bl __shl2i +/* 8020DB40 0020AAA0 80 01 00 18 */ lwz r0, 0x18(r1) +/* 8020DB44 0020AAA4 80 C1 00 1C */ lwz r6, 0x1c(r1) +/* 8020DB48 0020AAA8 7C 00 1B 78 */ or r0, r0, r3 +/* 8020DB4C 0020AAAC 80 AD 94 18 */ lwz r5, lbl_805A7FD8@sda21(r13) +/* 8020DB50 0020AAB0 7C C4 23 78 */ or r4, r6, r4 +/* 8020DB54 0020AAB4 90 01 00 18 */ stw r0, 0x18(r1) +/* 8020DB58 0020AAB8 38 60 00 00 */ li r3, 0 +/* 8020DB5C 0020AABC 90 81 00 1C */ stw r4, 0x1c(r1) +/* 8020DB60 0020AAC0 38 80 00 01 */ li r4, 1 +/* 8020DB64 0020AAC4 48 17 C3 91 */ bl __shl2i +/* 8020DB68 0020AAC8 80 01 00 18 */ lwz r0, 0x18(r1) +/* 8020DB6C 0020AACC 38 C1 00 18 */ addi r6, r1, 0x18 +/* 8020DB70 0020AAD0 80 A1 00 1C */ lwz r5, 0x1c(r1) +/* 8020DB74 0020AAD4 7C 00 1B 78 */ or r0, r0, r3 +/* 8020DB78 0020AAD8 7C A3 23 78 */ or r3, r5, r4 +/* 8020DB7C 0020AADC 90 01 00 18 */ stw r0, 0x18(r1) +/* 8020DB80 0020AAE0 90 61 00 1C */ stw r3, 0x1c(r1) +lbl_8020DB84: +/* 8020DB84 0020AAE4 81 66 00 00 */ lwz r11, 0(r6) +/* 8020DB88 0020AAE8 39 40 00 03 */ li r10, 3 +/* 8020DB8C 0020AAEC 81 86 00 04 */ lwz r12, 4(r6) +/* 8020DB90 0020AAF0 38 00 00 00 */ li r0, 0 +/* 8020DB94 0020AAF4 81 01 00 40 */ lwz r8, 0x40(r1) +/* 8020DB98 0020AAF8 7F C3 F3 78 */ mr r3, r30 +/* 8020DB9C 0020AAFC 81 21 00 44 */ lwz r9, 0x44(r1) +/* 8020DBA0 0020AB00 38 81 01 58 */ addi r4, r1, 0x158 +/* 8020DBA4 0020AB04 91 41 00 C0 */ stw r10, 0xc0(r1) +/* 8020DBA8 0020AB08 38 A1 00 E0 */ addi r5, r1, 0xe0 +/* 8020DBAC 0020AB0C 38 C1 00 C8 */ addi r6, r1, 0xc8 +/* 8020DBB0 0020AB10 38 E0 00 00 */ li r7, 0 +/* 8020DBB4 0020AB14 91 21 00 CC */ stw r9, 0xcc(r1) +/* 8020DBB8 0020AB18 91 01 00 C8 */ stw r8, 0xc8(r1) +/* 8020DBBC 0020AB1C 91 81 00 D4 */ stw r12, 0xd4(r1) +/* 8020DBC0 0020AB20 91 61 00 D0 */ stw r11, 0xd0(r1) +/* 8020DBC4 0020AB24 91 41 00 D8 */ stw r10, 0xd8(r1) +/* 8020DBC8 0020AB28 90 01 01 58 */ stw r0, 0x158(r1) +/* 8020DBCC 0020AB2C 4B E3 EB 55 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" +/* 8020DBD0 0020AB30 3B 40 00 00 */ li r26, 0 +/* 8020DBD4 0020AB34 3B 80 00 00 */ li r28, 0 +/* 8020DBD8 0020AB38 48 00 02 F8 */ b lbl_8020DED0 +lbl_8020DBDC: +/* 8020DBDC 0020AB3C 2C 1F 00 01 */ cmpwi r31, 1 +/* 8020DBE0 0020AB40 41 82 00 18 */ beq lbl_8020DBF8 +/* 8020DBE4 0020AB44 80 7D 00 10 */ lwz r3, 0x10(r29) +/* 8020DBE8 0020AB48 38 1C 00 3C */ addi r0, r28, 0x3c +/* 8020DBEC 0020AB4C 7C 03 00 AE */ lbzx r0, r3, r0 +/* 8020DBF0 0020AB50 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8020DBF4 0020AB54 41 82 02 D4 */ beq lbl_8020DEC8 +lbl_8020DBF8: +/* 8020DBF8 0020AB58 80 1D 00 10 */ lwz r0, 0x10(r29) +/* 8020DBFC 0020AB5C 38 61 00 84 */ addi r3, r1, 0x84 +/* 8020DC00 0020AB60 7C 80 E2 14 */ add r4, r0, r28 +/* 8020DC04 0020AB64 C0 24 00 08 */ lfs f1, 8(r4) +/* 8020DC08 0020AB68 C0 04 00 18 */ lfs f0, 0x18(r4) +/* 8020DC0C 0020AB6C C0 64 00 0C */ lfs f3, 0xc(r4) +/* 8020DC10 0020AB70 C0 44 00 1C */ lfs f2, 0x1c(r4) +/* 8020DC14 0020AB74 EC 81 00 28 */ fsubs f4, f1, f0 +/* 8020DC18 0020AB78 C0 24 00 04 */ lfs f1, 4(r4) +/* 8020DC1C 0020AB7C C0 04 00 14 */ lfs f0, 0x14(r4) +/* 8020DC20 0020AB80 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8020DC24 0020AB84 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8020DC28 0020AB88 D0 81 00 88 */ stfs f4, 0x88(r1) +/* 8020DC2C 0020AB8C D0 41 00 8C */ stfs f2, 0x8c(r1) +/* 8020DC30 0020AB90 D0 01 00 84 */ stfs f0, 0x84(r1) +/* 8020DC34 0020AB94 48 10 6C 85 */ bl Magnitude__9CVector3fCFv +/* 8020DC38 0020AB98 FF E0 08 90 */ fmr f31, f1 +/* 8020DC3C 0020AB9C C0 02 B1 E0 */ lfs f0, lbl_805ACF00@sda21(r2) +/* 8020DC40 0020ABA0 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 8020DC44 0020ABA4 40 81 02 58 */ ble lbl_8020DE9C +/* 8020DC48 0020ABA8 C0 02 B1 C0 */ lfs f0, lbl_805ACEE0@sda21(r2) +/* 8020DC4C 0020ABAC 38 61 00 F8 */ addi r3, r1, 0xf8 +/* 8020DC50 0020ABB0 C0 41 00 84 */ lfs f2, 0x84(r1) +/* 8020DC54 0020ABB4 38 80 00 00 */ li r4, 0 +/* 8020DC58 0020ABB8 EC 60 F8 24 */ fdivs f3, f0, f31 +/* 8020DC5C 0020ABBC C0 21 00 88 */ lfs f1, 0x88(r1) +/* 8020DC60 0020ABC0 C0 01 00 8C */ lfs f0, 0x8c(r1) +/* 8020DC64 0020ABC4 EC 42 00 F2 */ fmuls f2, f2, f3 +/* 8020DC68 0020ABC8 EC 21 00 F2 */ fmuls f1, f1, f3 +/* 8020DC6C 0020ABCC EC 00 00 F2 */ fmuls f0, f0, f3 +/* 8020DC70 0020ABD0 D0 41 00 84 */ stfs f2, 0x84(r1) +/* 8020DC74 0020ABD4 D0 21 00 88 */ stfs f1, 0x88(r1) +/* 8020DC78 0020ABD8 D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 8020DC7C 0020ABDC 80 1D 00 10 */ lwz r0, 0x10(r29) +/* 8020DC80 0020ABE0 7C A0 E2 14 */ add r5, r0, r28 +/* 8020DC84 0020ABE4 C3 C5 00 14 */ lfs f30, 0x14(r5) +/* 8020DC88 0020ABE8 C3 A5 00 18 */ lfs f29, 0x18(r5) +/* 8020DC8C 0020ABEC C3 85 00 1C */ lfs f28, 0x1c(r5) +/* 8020DC90 0020ABF0 C3 65 00 10 */ lfs f27, 0x10(r5) +/* 8020DC94 0020ABF4 DB E1 00 38 */ stfd f31, 0x38(r1) +/* 8020DC98 0020ABF8 48 0C 04 F1 */ bl __ct__14CCollisionInfoFQ214CCollisionInfo8EInvalid +/* 8020DC9C 0020ABFC 38 61 00 90 */ addi r3, r1, 0x90 +/* 8020DCA0 0020AC00 38 81 00 40 */ addi r4, r1, 0x40 +/* 8020DCA4 0020AC04 48 0C 1C 11 */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList +/* 8020DCA8 0020AC08 83 01 00 84 */ lwz r24, 0x84(r1) +/* 8020DCAC 0020AC0C 3C 60 80 3F */ lis r3, lbl_803ECAF8@ha +/* 8020DCB0 0020AC10 38 03 CA F8 */ addi r0, r3, lbl_803ECAF8@l +/* 8020DCB4 0020AC14 83 21 00 88 */ lwz r25, 0x88(r1) +/* 8020DCB8 0020AC18 81 81 00 8C */ lwz r12, 0x8c(r1) +/* 8020DCBC 0020AC1C 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 8020DCC0 0020AC20 90 01 00 90 */ stw r0, 0x90(r1) +/* 8020DCC4 0020AC24 39 61 00 F8 */ addi r11, r1, 0xf8 +/* 8020DCC8 0020AC28 38 C3 66 70 */ addi r6, r3, skIdentity4f@l +/* 8020DCCC 0020AC2C 38 01 00 38 */ addi r0, r1, 0x38 +/* 8020DCD0 0020AC30 D3 C1 00 A0 */ stfs f30, 0xa0(r1) +/* 8020DCD4 0020AC34 7F C3 F3 78 */ mr r3, r30 +/* 8020DCD8 0020AC38 38 81 09 5C */ addi r4, r1, 0x95c +/* 8020DCDC 0020AC3C 38 A1 00 90 */ addi r5, r1, 0x90 +/* 8020DCE0 0020AC40 D3 A1 00 A4 */ stfs f29, 0xa4(r1) +/* 8020DCE4 0020AC44 38 E1 00 C8 */ addi r7, r1, 0xc8 +/* 8020DCE8 0020AC48 39 01 01 58 */ addi r8, r1, 0x158 +/* 8020DCEC 0020AC4C 39 21 00 48 */ addi r9, r1, 0x48 +/* 8020DCF0 0020AC50 D3 81 00 A8 */ stfs f28, 0xa8(r1) +/* 8020DCF4 0020AC54 39 41 00 10 */ addi r10, r1, 0x10 +/* 8020DCF8 0020AC58 D3 61 00 AC */ stfs f27, 0xac(r1) +/* 8020DCFC 0020AC5C 93 01 00 48 */ stw r24, 0x48(r1) +/* 8020DD00 0020AC60 93 21 00 4C */ stw r25, 0x4c(r1) +/* 8020DD04 0020AC64 91 81 00 50 */ stw r12, 0x50(r1) +/* 8020DD08 0020AC68 91 61 00 08 */ stw r11, 8(r1) +/* 8020DD0C 0020AC6C 90 01 00 0C */ stw r0, 0xc(r1) +/* 8020DD10 0020AC70 4B F7 65 DD */ bl "DetectCollision_Cached_Moving__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>9CVector3fR9TUniqueIdR14CCollisionInfoRd" +/* 8020DD14 0020AC74 3C 60 80 3F */ lis r3, lbl_803ECAF8@ha +/* 8020DD18 0020AC78 88 01 01 28 */ lbz r0, 0x128(r1) +/* 8020DD1C 0020AC7C 38 83 CA F8 */ addi r4, r3, lbl_803ECAF8@l +/* 8020DD20 0020AC80 3C 60 80 3E */ lis r3, lbl_803D97E4@ha +/* 8020DD24 0020AC84 90 81 00 90 */ stw r4, 0x90(r1) +/* 8020DD28 0020AC88 38 63 97 E4 */ addi r3, r3, lbl_803D97E4@l +/* 8020DD2C 0020AC8C 28 00 00 00 */ cmplwi r0, 0 +/* 8020DD30 0020AC90 90 61 00 90 */ stw r3, 0x90(r1) +/* 8020DD34 0020AC94 41 82 01 94 */ beq lbl_8020DEC8 +/* 8020DD38 0020AC98 2C 1F 00 02 */ cmpwi r31, 2 +/* 8020DD3C 0020AC9C 3B 60 00 01 */ li r27, 1 +/* 8020DD40 0020ACA0 41 82 01 04 */ beq lbl_8020DE44 +/* 8020DD44 0020ACA4 40 80 01 84 */ bge lbl_8020DEC8 +/* 8020DD48 0020ACA8 2C 1F 00 01 */ cmpwi r31, 1 +/* 8020DD4C 0020ACAC 40 80 00 08 */ bge lbl_8020DD54 +/* 8020DD50 0020ACB0 48 00 01 78 */ b lbl_8020DEC8 +lbl_8020DD54: +/* 8020DD54 0020ACB4 80 BD 00 10 */ lwz r5, 0x10(r29) +/* 8020DD58 0020ACB8 38 9C 00 3C */ addi r4, r28, 0x3c +/* 8020DD5C 0020ACBC 38 00 00 01 */ li r0, 1 +/* 8020DD60 0020ACC0 C0 02 B1 E4 */ lfs f0, lbl_805ACF04@sda21(r2) +/* 8020DD64 0020ACC4 7C 65 20 AE */ lbzx r3, r5, r4 +/* 8020DD68 0020ACC8 50 03 3E 30 */ rlwimi r3, r0, 7, 0x18, 0x18 +/* 8020DD6C 0020ACCC 38 1C 00 38 */ addi r0, r28, 0x38 +/* 8020DD70 0020ACD0 38 DC 00 2C */ addi r6, r28, 0x2c +/* 8020DD74 0020ACD4 7C 65 21 AE */ stbx r3, r5, r4 +/* 8020DD78 0020ACD8 38 9C 00 04 */ addi r4, r28, 4 +/* 8020DD7C 0020ACDC C0 A2 B1 E0 */ lfs f5, lbl_805ACF00@sda21(r2) +/* 8020DD80 0020ACE0 C0 41 00 88 */ lfs f2, 0x88(r1) +/* 8020DD84 0020ACE4 C0 21 01 44 */ lfs f1, 0x144(r1) +/* 8020DD88 0020ACE8 C0 61 00 84 */ lfs f3, 0x84(r1) +/* 8020DD8C 0020ACEC EC 22 00 72 */ fmuls f1, f2, f1 +/* 8020DD90 0020ACF0 C0 41 01 40 */ lfs f2, 0x140(r1) +/* 8020DD94 0020ACF4 C0 C1 00 8C */ lfs f6, 0x8c(r1) +/* 8020DD98 0020ACF8 C0 81 01 48 */ lfs f4, 0x148(r1) +/* 8020DD9C 0020ACFC EC 23 08 BA */ fmadds f1, f3, f2, f1 +/* 8020DDA0 0020AD00 80 7D 00 10 */ lwz r3, 0x10(r29) +/* 8020DDA4 0020AD04 EC 86 09 3A */ fmadds f4, f6, f4, f1 +/* 8020DDA8 0020AD08 FC 20 20 50 */ fneg f1, f4 +/* 8020DDAC 0020AD0C EC 00 01 32 */ fmuls f0, f0, f4 +/* 8020DDB0 0020AD10 EC 21 07 F2 */ fmuls f1, f1, f31 +/* 8020DDB4 0020AD14 EC 7F 00 32 */ fmuls f3, f31, f0 +/* 8020DDB8 0020AD18 7C 23 05 2E */ stfsx f1, r3, r0 +/* 8020DDBC 0020AD1C C0 01 01 40 */ lfs f0, 0x140(r1) +/* 8020DDC0 0020AD20 C0 21 01 44 */ lfs f1, 0x144(r1) +/* 8020DDC4 0020AD24 80 1D 00 10 */ lwz r0, 0x10(r29) +/* 8020DDC8 0020AD28 EC 43 00 32 */ fmuls f2, f3, f0 +/* 8020DDCC 0020AD2C C0 01 01 48 */ lfs f0, 0x148(r1) +/* 8020DDD0 0020AD30 EC 23 00 72 */ fmuls f1, f3, f1 +/* 8020DDD4 0020AD34 7C C0 32 14 */ add r6, r0, r6 +/* 8020DDD8 0020AD38 D0 46 00 00 */ stfs f2, 0(r6) +/* 8020DDDC 0020AD3C EC 03 00 32 */ fmuls f0, f3, f0 +/* 8020DDE0 0020AD40 D0 26 00 04 */ stfs f1, 4(r6) +/* 8020DDE4 0020AD44 D0 06 00 08 */ stfs f0, 8(r6) +/* 8020DDE8 0020AD48 C8 01 00 38 */ lfd f0, 0x38(r1) +/* 8020DDEC 0020AD4C 80 1D 00 10 */ lwz r0, 0x10(r29) +/* 8020DDF0 0020AD50 FC 20 00 18 */ frsp f1, f0 +/* 8020DDF4 0020AD54 C0 61 01 40 */ lfs f3, 0x140(r1) +/* 8020DDF8 0020AD58 7C 80 22 14 */ add r4, r0, r4 +/* 8020DDFC 0020AD5C C0 41 01 44 */ lfs f2, 0x144(r1) +/* 8020DE00 0020AD60 C0 04 00 00 */ lfs f0, 0(r4) +/* 8020DE04 0020AD64 EC DF 08 28 */ fsubs f6, f31, f1 +/* 8020DE08 0020AD68 C0 21 01 48 */ lfs f1, 0x148(r1) +/* 8020DE0C 0020AD6C EC 86 01 32 */ fmuls f4, f6, f4 +/* 8020DE10 0020AD70 EC 85 20 28 */ fsubs f4, f5, f4 +/* 8020DE14 0020AD74 EC 64 00 F2 */ fmuls f3, f4, f3 +/* 8020DE18 0020AD78 EC 44 00 B2 */ fmuls f2, f4, f2 +/* 8020DE1C 0020AD7C EC 24 00 72 */ fmuls f1, f4, f1 +/* 8020DE20 0020AD80 EC 00 18 2A */ fadds f0, f0, f3 +/* 8020DE24 0020AD84 D0 04 00 00 */ stfs f0, 0(r4) +/* 8020DE28 0020AD88 C0 04 00 04 */ lfs f0, 4(r4) +/* 8020DE2C 0020AD8C EC 00 10 2A */ fadds f0, f0, f2 +/* 8020DE30 0020AD90 D0 04 00 04 */ stfs f0, 4(r4) +/* 8020DE34 0020AD94 C0 04 00 08 */ lfs f0, 8(r4) +/* 8020DE38 0020AD98 EC 00 08 2A */ fadds f0, f0, f1 +/* 8020DE3C 0020AD9C D0 04 00 08 */ stfs f0, 8(r4) +/* 8020DE40 0020ADA0 48 00 00 88 */ b lbl_8020DEC8 +lbl_8020DE44: +/* 8020DE44 0020ADA4 C8 21 00 38 */ lfd f1, 0x38(r1) +/* 8020DE48 0020ADA8 C8 02 B1 E8 */ lfd f0, lbl_805ACF08@sda21(r2) +/* 8020DE4C 0020ADAC 80 1D 00 10 */ lwz r0, 0x10(r29) +/* 8020DE50 0020ADB0 FC C1 00 28 */ fsub f6, f1, f0 +/* 8020DE54 0020ADB4 C0 01 00 84 */ lfs f0, 0x84(r1) +/* 8020DE58 0020ADB8 7C 60 E2 14 */ add r3, r0, r28 +/* 8020DE5C 0020ADBC C0 81 00 88 */ lfs f4, 0x88(r1) +/* 8020DE60 0020ADC0 C0 23 00 14 */ lfs f1, 0x14(r3) +/* 8020DE64 0020ADC4 FC C0 30 18 */ frsp f6, f6 +/* 8020DE68 0020ADC8 C0 41 00 8C */ lfs f2, 0x8c(r1) +/* 8020DE6C 0020ADCC C0 A3 00 18 */ lfs f5, 0x18(r3) +/* 8020DE70 0020ADD0 EC 06 00 32 */ fmuls f0, f6, f0 +/* 8020DE74 0020ADD4 C0 63 00 1C */ lfs f3, 0x1c(r3) +/* 8020DE78 0020ADD8 EC 86 01 32 */ fmuls f4, f6, f4 +/* 8020DE7C 0020ADDC EC 46 00 B2 */ fmuls f2, f6, f2 +/* 8020DE80 0020ADE0 EC 01 00 2A */ fadds f0, f1, f0 +/* 8020DE84 0020ADE4 EC 85 20 2A */ fadds f4, f5, f4 +/* 8020DE88 0020ADE8 EC 23 10 2A */ fadds f1, f3, f2 +/* 8020DE8C 0020ADEC D0 03 00 04 */ stfs f0, 4(r3) +/* 8020DE90 0020ADF0 D0 83 00 08 */ stfs f4, 8(r3) +/* 8020DE94 0020ADF4 D0 23 00 0C */ stfs f1, 0xc(r3) +/* 8020DE98 0020ADF8 48 00 00 30 */ b lbl_8020DEC8 +lbl_8020DE9C: +/* 8020DE9C 0020ADFC 88 1D 00 68 */ lbz r0, 0x68(r29) +/* 8020DEA0 0020AE00 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 8020DEA4 0020AE04 40 82 00 24 */ bne lbl_8020DEC8 +/* 8020DEA8 0020AE08 80 1D 00 10 */ lwz r0, 0x10(r29) +/* 8020DEAC 0020AE0C 7C 60 E2 14 */ add r3, r0, r28 +/* 8020DEB0 0020AE10 C0 03 00 14 */ lfs f0, 0x14(r3) +/* 8020DEB4 0020AE14 D0 03 00 04 */ stfs f0, 4(r3) +/* 8020DEB8 0020AE18 C0 03 00 18 */ lfs f0, 0x18(r3) +/* 8020DEBC 0020AE1C D0 03 00 08 */ stfs f0, 8(r3) +/* 8020DEC0 0020AE20 C0 03 00 1C */ lfs f0, 0x1c(r3) +/* 8020DEC4 0020AE24 D0 03 00 0C */ stfs f0, 0xc(r3) +lbl_8020DEC8: +/* 8020DEC8 0020AE28 3B 9C 00 40 */ addi r28, r28, 0x40 +/* 8020DECC 0020AE2C 3B 5A 00 01 */ addi r26, r26, 1 +lbl_8020DED0: +/* 8020DED0 0020AE30 80 1D 00 08 */ lwz r0, 8(r29) +/* 8020DED4 0020AE34 7C 1A 00 00 */ cmpw r26, r0 +/* 8020DED8 0020AE38 41 80 FD 04 */ blt lbl_8020DBDC +/* 8020DEDC 0020AE3C 80 A1 01 58 */ lwz r5, 0x158(r1) +/* 8020DEE0 0020AE40 38 60 00 00 */ li r3, 0 +/* 8020DEE4 0020AE44 2C 05 00 00 */ cmpwi r5, 0 +/* 8020DEE8 0020AE48 40 81 00 40 */ ble lbl_8020DF28 +/* 8020DEEC 0020AE4C 2C 05 00 08 */ cmpwi r5, 8 +/* 8020DEF0 0020AE50 38 85 FF F8 */ addi r4, r5, -8 +/* 8020DEF4 0020AE54 40 81 00 20 */ ble lbl_8020DF14 +/* 8020DEF8 0020AE58 38 04 00 07 */ addi r0, r4, 7 +/* 8020DEFC 0020AE5C 54 00 E8 FE */ srwi r0, r0, 3 +/* 8020DF00 0020AE60 7C 09 03 A6 */ mtctr r0 +/* 8020DF04 0020AE64 2C 04 00 00 */ cmpwi r4, 0 +/* 8020DF08 0020AE68 40 81 00 0C */ ble lbl_8020DF14 +lbl_8020DF0C: +/* 8020DF0C 0020AE6C 38 63 00 08 */ addi r3, r3, 8 +/* 8020DF10 0020AE70 42 00 FF FC */ bdnz lbl_8020DF0C +lbl_8020DF14: +/* 8020DF14 0020AE74 7C 03 28 50 */ subf r0, r3, r5 +/* 8020DF18 0020AE78 7C 09 03 A6 */ mtctr r0 +/* 8020DF1C 0020AE7C 7C 03 28 00 */ cmpw r3, r5 +/* 8020DF20 0020AE80 40 80 00 08 */ bge lbl_8020DF28 +lbl_8020DF24: +/* 8020DF24 0020AE84 42 00 00 00 */ bdnz lbl_8020DF24 +lbl_8020DF28: +/* 8020DF28 0020AE88 38 60 00 00 */ li r3, 0 +/* 8020DF2C 0020AE8C 34 E1 09 74 */ addic. r7, r1, 0x974 +/* 8020DF30 0020AE90 90 61 01 58 */ stw r3, 0x158(r1) +/* 8020DF34 0020AE94 41 82 00 90 */ beq lbl_8020DFC4 +/* 8020DF38 0020AE98 38 C7 00 04 */ addi r6, r7, 4 +/* 8020DF3C 0020AE9C 48 00 00 74 */ b lbl_8020DFB0 +lbl_8020DF40: +/* 8020DF40 0020AEA0 28 06 00 00 */ cmplwi r6, 0 +/* 8020DF44 0020AEA4 41 82 00 64 */ beq lbl_8020DFA8 +/* 8020DF48 0020AEA8 34 06 00 04 */ addic. r0, r6, 4 +/* 8020DF4C 0020AEAC 41 82 00 5C */ beq lbl_8020DFA8 +/* 8020DF50 0020AEB0 81 06 00 04 */ lwz r8, 4(r6) +/* 8020DF54 0020AEB4 38 80 00 00 */ li r4, 0 +/* 8020DF58 0020AEB8 2C 08 00 00 */ cmpwi r8, 0 +/* 8020DF5C 0020AEBC 40 81 00 44 */ ble lbl_8020DFA0 +/* 8020DF60 0020AEC0 2C 08 00 08 */ cmpwi r8, 8 +/* 8020DF64 0020AEC4 38 A8 FF F8 */ addi r5, r8, -8 +/* 8020DF68 0020AEC8 40 81 00 20 */ ble lbl_8020DF88 +/* 8020DF6C 0020AECC 38 05 00 07 */ addi r0, r5, 7 +/* 8020DF70 0020AED0 54 00 E8 FE */ srwi r0, r0, 3 +/* 8020DF74 0020AED4 7C 09 03 A6 */ mtctr r0 +/* 8020DF78 0020AED8 2C 05 00 00 */ cmpwi r5, 0 +/* 8020DF7C 0020AEDC 40 81 00 0C */ ble lbl_8020DF88 +lbl_8020DF80: +/* 8020DF80 0020AEE0 38 84 00 08 */ addi r4, r4, 8 +/* 8020DF84 0020AEE4 42 00 FF FC */ bdnz lbl_8020DF80 +lbl_8020DF88: +/* 8020DF88 0020AEE8 7C 04 40 50 */ subf r0, r4, r8 +/* 8020DF8C 0020AEEC 7C 09 03 A6 */ mtctr r0 +/* 8020DF90 0020AEF0 7C 04 40 00 */ cmpw r4, r8 +/* 8020DF94 0020AEF4 40 80 00 0C */ bge lbl_8020DFA0 +lbl_8020DF98: +/* 8020DF98 0020AEF8 38 84 00 01 */ addi r4, r4, 1 +/* 8020DF9C 0020AEFC 42 00 FF FC */ bdnz lbl_8020DF98 +lbl_8020DFA0: +/* 8020DFA0 0020AF00 38 00 00 00 */ li r0, 0 +/* 8020DFA4 0020AF04 90 06 00 04 */ stw r0, 4(r6) +lbl_8020DFA8: +/* 8020DFA8 0020AF08 38 C6 09 0C */ addi r6, r6, 0x90c +/* 8020DFAC 0020AF0C 38 63 00 01 */ addi r3, r3, 1 +lbl_8020DFB0: +/* 8020DFB0 0020AF10 80 07 00 00 */ lwz r0, 0(r7) +/* 8020DFB4 0020AF14 7C 03 00 00 */ cmpw r3, r0 +/* 8020DFB8 0020AF18 41 80 FF 88 */ blt lbl_8020DF40 +/* 8020DFBC 0020AF1C 38 00 00 00 */ li r0, 0 +/* 8020DFC0 0020AF20 90 07 00 00 */ stw r0, 0(r7) +lbl_8020DFC4: +/* 8020DFC4 0020AF24 7F 63 DB 78 */ mr r3, r27 +/* 8020DFC8 0020AF28 38 00 25 08 */ li r0, 0x2508 +/* 8020DFCC 0020AF2C 13 E1 00 0C */ psq_lx f31, r1, r0, 0, qr0 +/* 8020DFD0 0020AF30 CB E1 25 00 */ lfd f31, 0x2500(r1) +/* 8020DFD4 0020AF34 38 00 24 F8 */ li r0, 0x24f8 +/* 8020DFD8 0020AF38 13 C1 00 0C */ psq_lx f30, r1, r0, 0, qr0 +/* 8020DFDC 0020AF3C CB C1 24 F0 */ lfd f30, 0x24f0(r1) +/* 8020DFE0 0020AF40 38 00 24 E8 */ li r0, 0x24e8 +/* 8020DFE4 0020AF44 13 A1 00 0C */ psq_lx f29, r1, r0, 0, qr0 +/* 8020DFE8 0020AF48 CB A1 24 E0 */ lfd f29, 0x24e0(r1) +/* 8020DFEC 0020AF4C 38 00 24 D8 */ li r0, 0x24d8 +/* 8020DFF0 0020AF50 13 81 00 0C */ psq_lx f28, r1, r0, 0, qr0 +/* 8020DFF4 0020AF54 CB 81 24 D0 */ lfd f28, 0x24d0(r1) +/* 8020DFF8 0020AF58 38 00 24 C8 */ li r0, 0x24c8 +/* 8020DFFC 0020AF5C 13 61 00 0C */ psq_lx f27, r1, r0, 0, qr0 +/* 8020E000 0020AF60 CB 61 24 C0 */ lfd f27, 0x24c0(r1) +/* 8020E004 0020AF64 BB 01 24 A0 */ lmw r24, 0x24a0(r1) +/* 8020E008 0020AF68 80 01 25 14 */ lwz r0, 0x2514(r1) +/* 8020E00C 0020AF6C 7C 08 03 A6 */ mtlr r0 +/* 8020E010 0020AF70 38 21 25 10 */ addi r1, r1, 0x2510 +/* 8020E014 0020AF74 4E 80 00 20 */ blr + +.global AccumulateForces__8CRagDollFff +AccumulateForces__8CRagDollFff: +/* 8020E018 0020AF78 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 8020E01C 0020AF7C 7C 08 02 A6 */ mflr r0 +/* 8020E020 0020AF80 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 8020E024 0020AF84 DB E1 00 C0 */ stfd f31, 0xc0(r1) +/* 8020E028 0020AF88 F3 E1 00 C8 */ psq_st f31, 200(r1), 0, qr0 +/* 8020E02C 0020AF8C DB C1 00 B0 */ stfd f30, 0xb0(r1) +/* 8020E030 0020AF90 F3 C1 00 B8 */ psq_st f30, 184(r1), 0, qr0 +/* 8020E034 0020AF94 DB A1 00 A0 */ stfd f29, 0xa0(r1) +/* 8020E038 0020AF98 F3 A1 00 A8 */ psq_st f29, 168(r1), 0, qr0 +/* 8020E03C 0020AF9C DB 81 00 90 */ stfd f28, 0x90(r1) +/* 8020E040 0020AFA0 F3 81 00 98 */ psq_st f28, 152(r1), 0, qr0 +/* 8020E044 0020AFA4 DB 61 00 80 */ stfd f27, 0x80(r1) +/* 8020E048 0020AFA8 F3 61 00 88 */ psq_st f27, 136(r1), 0, qr0 +/* 8020E04C 0020AFAC DB 41 00 70 */ stfd f26, 0x70(r1) +/* 8020E050 0020AFB0 F3 41 00 78 */ psq_st f26, 120(r1), 0, qr0 +/* 8020E054 0020AFB4 DB 21 00 60 */ stfd f25, 0x60(r1) +/* 8020E058 0020AFB8 F3 21 00 68 */ psq_st f25, 104(r1), 0, qr0 +/* 8020E05C 0020AFBC DB 01 00 50 */ stfd f24, 0x50(r1) +/* 8020E060 0020AFC0 F3 01 00 58 */ psq_st f24, 88(r1), 0, qr0 +/* 8020E064 0020AFC4 DA E1 00 40 */ stfd f23, 0x40(r1) +/* 8020E068 0020AFC8 F2 E1 00 48 */ psq_st f23, 72(r1), 0, qr0 +/* 8020E06C 0020AFCC BF 61 00 2C */ stmw r27, 0x2c(r1) +/* 8020E070 0020AFD0 C0 02 B1 C0 */ lfs f0, lbl_805ACEE0@sda21(r2) +/* 8020E074 0020AFD4 7C 7F 1B 78 */ mr r31, r3 +/* 8020E078 0020AFD8 C0 63 00 64 */ lfs f3, 0x64(r3) +/* 8020E07C 0020AFDC FE E0 10 90 */ fmr f23, f2 +/* 8020E080 0020AFE0 EF 40 08 24 */ fdivs f26, f0, f1 +/* 8020E084 0020AFE4 C0 02 B1 F0 */ lfs f0, lbl_805ACF10@sda21(r2) +/* 8020E088 0020AFE8 EC 23 08 2A */ fadds f1, f3, f1 +/* 8020E08C 0020AFEC D0 23 00 64 */ stfs f1, 0x64(r3) +/* 8020E090 0020AFF0 C0 23 00 64 */ lfs f1, 0x64(r3) +/* 8020E094 0020AFF4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8020E098 0020AFF8 40 81 00 0C */ ble lbl_8020E0A4 +/* 8020E09C 0020AFFC EC 01 00 28 */ fsubs f0, f1, f0 +/* 8020E0A0 0020B000 D0 1F 00 64 */ stfs f0, 0x64(r31) +lbl_8020E0A4: +/* 8020E0A4 0020B004 C0 22 B1 FC */ lfs f1, lbl_805ACF1C@sda21(r2) +/* 8020E0A8 0020B008 C0 1F 00 64 */ lfs f0, 0x64(r31) +/* 8020E0AC 0020B00C EC 21 00 32 */ fmuls f1, f1, f0 +/* 8020E0B0 0020B010 48 10 6D 41 */ bl FastSinR__5CMathFf +/* 8020E0B4 0020B014 C0 02 B1 F4 */ lfs f0, lbl_805ACF14@sda21(r2) +/* 8020E0B8 0020B018 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8020E0BC 0020B01C 3B C3 66 A0 */ addi r30, r3, skZero3f@l +/* 8020E0C0 0020B020 C0 42 B1 F8 */ lfs f2, lbl_805ACF18@sda21(r2) +/* 8020E0C4 0020B024 EC 17 00 28 */ fsubs f0, f23, f0 +/* 8020E0C8 0020B028 C3 BE 00 00 */ lfs f29, 0(r30) +/* 8020E0CC 0020B02C C3 9E 00 04 */ lfs f28, 4(r30) +/* 8020E0D0 0020B030 3B 60 00 00 */ li r27, 0 +/* 8020E0D4 0020B034 C3 7E 00 08 */ lfs f27, 8(r30) +/* 8020E0D8 0020B038 3B 80 00 00 */ li r28, 0 +/* 8020E0DC 0020B03C EF 22 00 7A */ fmadds f25, f2, f1, f0 +/* 8020E0E0 0020B040 C3 02 B1 C4 */ lfs f24, lbl_805ACEE4@sda21(r2) +/* 8020E0E4 0020B044 C3 C2 B1 D0 */ lfs f30, lbl_805ACEF0@sda21(r2) +/* 8020E0E8 0020B048 C3 E2 B2 00 */ lfs f31, lbl_805ACF20@sda21(r2) +/* 8020E0EC 0020B04C 48 00 01 6C */ b lbl_8020E258 +lbl_8020E0F0: +/* 8020E0F0 0020B050 80 1F 00 10 */ lwz r0, 0x10(r31) +/* 8020E0F4 0020B054 C1 1F 00 48 */ lfs f8, 0x48(r31) +/* 8020E0F8 0020B058 7F A0 E2 14 */ add r29, r0, r28 +/* 8020E0FC 0020B05C C2 E2 B1 C4 */ lfs f23, lbl_805ACEE4@sda21(r2) +/* 8020E100 0020B060 C0 7D 00 10 */ lfs f3, 0x10(r29) +/* 8020E104 0020B064 C0 BD 00 0C */ lfs f5, 0xc(r29) +/* 8020E108 0020B068 EC 43 00 F2 */ fmuls f2, f3, f3 +/* 8020E10C 0020B06C C0 3D 00 04 */ lfs f1, 4(r29) +/* 8020E110 0020B070 EC E5 C8 28 */ fsubs f7, f5, f25 +/* 8020E114 0020B074 C0 1D 00 08 */ lfs f0, 8(r29) +/* 8020E118 0020B078 EC C3 00 B2 */ fmuls f6, f3, f2 +/* 8020E11C 0020B07C FC 80 3A 10 */ fabs f4, f7 +/* 8020E120 0020B080 EC 66 01 72 */ fmuls f3, f6, f5 +/* 8020E124 0020B084 EC 46 00 72 */ fmuls f2, f6, f1 +/* 8020E128 0020B088 EC 26 00 32 */ fmuls f1, f6, f0 +/* 8020E12C 0020B08C FC 00 20 18 */ frsp f0, f4 +/* 8020E130 0020B090 EF 18 30 2A */ fadds f24, f24, f6 +/* 8020E134 0020B094 EF BD 10 2A */ fadds f29, f29, f2 +/* 8020E138 0020B098 FC 00 F0 40 */ fcmpo cr0, f0, f30 +/* 8020E13C 0020B09C EF 9C 08 2A */ fadds f28, f28, f1 +/* 8020E140 0020B0A0 EF 7B 18 2A */ fadds f27, f27, f3 +/* 8020E144 0020B0A4 40 80 00 20 */ bge lbl_8020E164 +/* 8020E148 0020B0A8 EC 3E 01 F2 */ fmuls f1, f30, f7 +/* 8020E14C 0020B0AC FC 00 38 50 */ fneg f0, f7 +/* 8020E150 0020B0B0 EC 21 F0 24 */ fdivs f1, f1, f30 +/* 8020E154 0020B0B4 EC 00 F0 24 */ fdivs f0, f0, f30 +/* 8020E158 0020B0B8 EE FE 08 2A */ fadds f23, f30, f1 +/* 8020E15C 0020B0BC ED 08 00 32 */ fmuls f8, f8, f0 +/* 8020E160 0020B0C0 48 00 00 14 */ b lbl_8020E174 +lbl_8020E164: +/* 8020E164 0020B0C4 FC 07 B8 40 */ fcmpo cr0, f7, f23 +/* 8020E168 0020B0C8 40 81 00 0C */ ble lbl_8020E174 +/* 8020E16C 0020B0CC C1 1F 00 44 */ lfs f8, 0x44(r31) +/* 8020E170 0020B0D0 C2 E2 B1 C0 */ lfs f23, lbl_805ACEE0@sda21(r2) +lbl_8020E174: +/* 8020E174 0020B0D4 C0 1D 00 28 */ lfs f0, 0x28(r29) +/* 8020E178 0020B0D8 38 61 00 14 */ addi r3, r1, 0x14 +/* 8020E17C 0020B0DC EC 00 40 2A */ fadds f0, f0, f8 +/* 8020E180 0020B0E0 D0 1D 00 28 */ stfs f0, 0x28(r29) +/* 8020E184 0020B0E4 C0 3D 00 08 */ lfs f1, 8(r29) +/* 8020E188 0020B0E8 C0 1D 00 18 */ lfs f0, 0x18(r29) +/* 8020E18C 0020B0EC C0 7D 00 0C */ lfs f3, 0xc(r29) +/* 8020E190 0020B0F0 C0 5D 00 1C */ lfs f2, 0x1c(r29) +/* 8020E194 0020B0F4 EC 81 00 28 */ fsubs f4, f1, f0 +/* 8020E198 0020B0F8 C0 3D 00 04 */ lfs f1, 4(r29) +/* 8020E19C 0020B0FC C0 1D 00 14 */ lfs f0, 0x14(r29) +/* 8020E1A0 0020B100 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8020E1A4 0020B104 EC 7A 01 32 */ fmuls f3, f26, f4 +/* 8020E1A8 0020B108 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8020E1AC 0020B10C EC 3A 00 B2 */ fmuls f1, f26, f2 +/* 8020E1B0 0020B110 D0 61 00 18 */ stfs f3, 0x18(r1) +/* 8020E1B4 0020B114 EC 1A 00 32 */ fmuls f0, f26, f0 +/* 8020E1B8 0020B118 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 8020E1BC 0020B11C D0 01 00 14 */ stfs f0, 0x14(r1) +/* 8020E1C0 0020B120 48 10 66 F9 */ bl Magnitude__9CVector3fCFv +/* 8020E1C4 0020B124 FC 01 F8 40 */ fcmpo cr0, f1, f31 +/* 8020E1C8 0020B128 40 81 00 88 */ ble lbl_8020E250 +/* 8020E1CC 0020B12C C0 02 B1 C0 */ lfs f0, lbl_805ACEE0@sda21(r2) +/* 8020E1D0 0020B130 C0 C2 B2 0C */ lfs f6, lbl_805ACF2C@sda21(r2) +/* 8020E1D4 0020B134 EC 40 B8 28 */ fsubs f2, f0, f23 +/* 8020E1D8 0020B138 C0 E2 B2 08 */ lfs f7, lbl_805ACF28@sda21(r2) +/* 8020E1DC 0020B13C C1 02 B2 04 */ lfs f8, lbl_805ACF24@sda21(r2) +/* 8020E1E0 0020B140 ED 40 08 24 */ fdivs f10, f0, f1 +/* 8020E1E4 0020B144 C1 21 00 14 */ lfs f9, 0x14(r1) +/* 8020E1E8 0020B148 C0 61 00 18 */ lfs f3, 0x18(r1) +/* 8020E1EC 0020B14C C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 8020E1F0 0020B150 C0 A2 B2 10 */ lfs f5, lbl_805ACF30@sda21(r2) +/* 8020E1F4 0020B154 C0 9D 00 10 */ lfs f4, 0x10(r29) +/* 8020E1F8 0020B158 EC C6 00 B2 */ fmuls f6, f6, f2 +/* 8020E1FC 0020B15C C0 5D 00 20 */ lfs f2, 0x20(r29) +/* 8020E200 0020B160 EC A5 01 32 */ fmuls f5, f5, f4 +/* 8020E204 0020B164 ED 2A 02 72 */ fmuls f9, f10, f9 +/* 8020E208 0020B168 EC C7 35 FA */ fmadds f6, f7, f23, f6 +/* 8020E20C 0020B16C EC 8A 00 F2 */ fmuls f4, f10, f3 +/* 8020E210 0020B170 EC 6A 00 32 */ fmuls f3, f10, f0 +/* 8020E214 0020B174 EC 08 01 B2 */ fmuls f0, f8, f6 +/* 8020E218 0020B178 EC 00 00 72 */ fmuls f0, f0, f1 +/* 8020E21C 0020B17C EC 01 00 32 */ fmuls f0, f1, f0 +/* 8020E220 0020B180 EC 20 28 24 */ fdivs f1, f0, f5 +/* 8020E224 0020B184 EC 01 02 72 */ fmuls f0, f1, f9 +/* 8020E228 0020B188 EC 81 01 32 */ fmuls f4, f1, f4 +/* 8020E22C 0020B18C EC 21 00 F2 */ fmuls f1, f1, f3 +/* 8020E230 0020B190 EC 02 00 28 */ fsubs f0, f2, f0 +/* 8020E234 0020B194 D0 1D 00 20 */ stfs f0, 0x20(r29) +/* 8020E238 0020B198 C0 1D 00 24 */ lfs f0, 0x24(r29) +/* 8020E23C 0020B19C EC 00 20 28 */ fsubs f0, f0, f4 +/* 8020E240 0020B1A0 D0 1D 00 24 */ stfs f0, 0x24(r29) +/* 8020E244 0020B1A4 C0 1D 00 28 */ lfs f0, 0x28(r29) +/* 8020E248 0020B1A8 EC 00 08 28 */ fsubs f0, f0, f1 +/* 8020E24C 0020B1AC D0 1D 00 28 */ stfs f0, 0x28(r29) +lbl_8020E250: +/* 8020E250 0020B1B0 3B 9C 00 40 */ addi r28, r28, 0x40 +/* 8020E254 0020B1B4 3B 7B 00 01 */ addi r27, r27, 1 +lbl_8020E258: +/* 8020E258 0020B1B8 80 1F 00 08 */ lwz r0, 8(r31) +/* 8020E25C 0020B1BC 7C 1B 00 00 */ cmpw r27, r0 +/* 8020E260 0020B1C0 41 80 FE 90 */ blt lbl_8020E0F0 +/* 8020E264 0020B1C4 C0 02 B1 C0 */ lfs f0, lbl_805ACEE0@sda21(r2) +/* 8020E268 0020B1C8 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8020E26C 0020B1CC C0 5E 00 04 */ lfs f2, 4(r30) +/* 8020E270 0020B1D0 38 A0 00 00 */ li r5, 0 +/* 8020E274 0020B1D4 EC 00 C0 24 */ fdivs f0, f0, f24 +/* 8020E278 0020B1D8 C0 63 66 A0 */ lfs f3, skZero3f@l(r3) +/* 8020E27C 0020B1DC C0 3E 00 08 */ lfs f1, 8(r30) +/* 8020E280 0020B1E0 38 80 00 00 */ li r4, 0 +/* 8020E284 0020B1E4 D0 61 00 08 */ stfs f3, 8(r1) +/* 8020E288 0020B1E8 D0 41 00 0C */ stfs f2, 0xc(r1) +/* 8020E28C 0020B1EC EF BD 00 32 */ fmuls f29, f29, f0 +/* 8020E290 0020B1F0 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 8020E294 0020B1F4 EF 9C 00 32 */ fmuls f28, f28, f0 +/* 8020E298 0020B1F8 EF 7B 00 32 */ fmuls f27, f27, f0 +/* 8020E29C 0020B1FC 48 00 00 98 */ b lbl_8020E334 +lbl_8020E2A0: +/* 8020E2A0 0020B200 80 1F 00 10 */ lwz r0, 0x10(r31) +/* 8020E2A4 0020B204 38 A5 00 01 */ addi r5, r5, 1 +/* 8020E2A8 0020B208 C0 C1 00 08 */ lfs f6, 8(r1) +/* 8020E2AC 0020B20C 7C 60 22 14 */ add r3, r0, r4 +/* 8020E2B0 0020B210 C0 81 00 0C */ lfs f4, 0xc(r1) +/* 8020E2B4 0020B214 C0 63 00 04 */ lfs f3, 4(r3) +/* 8020E2B8 0020B218 38 84 00 40 */ addi r4, r4, 0x40 +/* 8020E2BC 0020B21C C0 23 00 14 */ lfs f1, 0x14(r3) +/* 8020E2C0 0020B220 C0 A3 00 08 */ lfs f5, 8(r3) +/* 8020E2C4 0020B224 ED A3 E8 28 */ fsubs f13, f3, f29 +/* 8020E2C8 0020B228 ED 43 08 28 */ fsubs f10, f3, f1 +/* 8020E2CC 0020B22C C0 43 00 18 */ lfs f2, 0x18(r3) +/* 8020E2D0 0020B230 C0 63 00 0C */ lfs f3, 0xc(r3) +/* 8020E2D4 0020B234 ED 85 E0 28 */ fsubs f12, f5, f28 +/* 8020E2D8 0020B238 C0 23 00 1C */ lfs f1, 0x1c(r3) +/* 8020E2DC 0020B23C ED 25 10 28 */ fsubs f9, f5, f2 +/* 8020E2E0 0020B240 ED 03 08 28 */ fsubs f8, f3, f1 +/* 8020E2E4 0020B244 C2 E3 00 10 */ lfs f23, 0x10(r3) +/* 8020E2E8 0020B248 ED 63 D8 28 */ fsubs f11, f3, f27 +/* 8020E2EC 0020B24C C0 41 00 10 */ lfs f2, 0x10(r1) +/* 8020E2F0 0020B250 EC F7 05 F2 */ fmuls f7, f23, f23 +/* 8020E2F4 0020B254 EC 68 03 72 */ fmuls f3, f8, f13 +/* 8020E2F8 0020B258 EC A9 02 F2 */ fmuls f5, f9, f11 +/* 8020E2FC 0020B25C EC 2A 03 32 */ fmuls f1, f10, f12 +/* 8020E300 0020B260 EC F7 01 F2 */ fmuls f7, f23, f7 +/* 8020E304 0020B264 EC AC 2A 38 */ fmsubs f5, f12, f8, f5 +/* 8020E308 0020B268 EC 6B 1A B8 */ fmsubs f3, f11, f10, f3 +/* 8020E30C 0020B26C EC 2D 0A 78 */ fmsubs f1, f13, f9, f1 +/* 8020E310 0020B270 EC A7 01 72 */ fmuls f5, f7, f5 +/* 8020E314 0020B274 EC 67 00 F2 */ fmuls f3, f7, f3 +/* 8020E318 0020B278 EC 27 00 72 */ fmuls f1, f7, f1 +/* 8020E31C 0020B27C EC A6 28 2A */ fadds f5, f6, f5 +/* 8020E320 0020B280 EC 64 18 2A */ fadds f3, f4, f3 +/* 8020E324 0020B284 EC 22 08 2A */ fadds f1, f2, f1 +/* 8020E328 0020B288 D0 A1 00 08 */ stfs f5, 8(r1) +/* 8020E32C 0020B28C D0 61 00 0C */ stfs f3, 0xc(r1) +/* 8020E330 0020B290 D0 21 00 10 */ stfs f1, 0x10(r1) +lbl_8020E334: +/* 8020E334 0020B294 80 1F 00 08 */ lwz r0, 8(r31) +/* 8020E338 0020B298 7C 05 00 00 */ cmpw r5, r0 +/* 8020E33C 0020B29C 41 80 FF 64 */ blt lbl_8020E2A0 +/* 8020E340 0020B2A0 EC 7A 00 32 */ fmuls f3, f26, f0 +/* 8020E344 0020B2A4 C0 41 00 08 */ lfs f2, 8(r1) +/* 8020E348 0020B2A8 C0 21 00 0C */ lfs f1, 0xc(r1) +/* 8020E34C 0020B2AC 38 61 00 08 */ addi r3, r1, 8 +/* 8020E350 0020B2B0 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 8020E354 0020B2B4 EC 42 00 F2 */ fmuls f2, f2, f3 +/* 8020E358 0020B2B8 EC 21 00 F2 */ fmuls f1, f1, f3 +/* 8020E35C 0020B2BC EC 00 00 F2 */ fmuls f0, f0, f3 +/* 8020E360 0020B2C0 D0 41 00 08 */ stfs f2, 8(r1) +/* 8020E364 0020B2C4 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 8020E368 0020B2C8 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 8020E36C 0020B2CC 48 10 63 8D */ bl CanBeNormalized__9CVector3fCFv +/* 8020E370 0020B2D0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8020E374 0020B2D4 41 82 00 9C */ beq lbl_8020E410 +/* 8020E378 0020B2D8 C0 62 B2 14 */ lfs f3, lbl_805ACF34@sda21(r2) +/* 8020E37C 0020B2DC 38 A0 00 00 */ li r5, 0 +/* 8020E380 0020B2E0 38 80 00 00 */ li r4, 0 +/* 8020E384 0020B2E4 48 00 00 80 */ b lbl_8020E404 +lbl_8020E388: +/* 8020E388 0020B2E8 80 1F 00 10 */ lwz r0, 0x10(r31) +/* 8020E38C 0020B2EC 38 A5 00 01 */ addi r5, r5, 1 +/* 8020E390 0020B2F0 C1 21 00 10 */ lfs f9, 0x10(r1) +/* 8020E394 0020B2F4 7C 60 22 14 */ add r3, r0, r4 +/* 8020E398 0020B2F8 C1 01 00 0C */ lfs f8, 0xc(r1) +/* 8020E39C 0020B2FC C0 23 00 08 */ lfs f1, 8(r3) +/* 8020E3A0 0020B300 38 84 00 40 */ addi r4, r4, 0x40 +/* 8020E3A4 0020B304 C0 03 00 0C */ lfs f0, 0xc(r3) +/* 8020E3A8 0020B308 EC C1 E0 28 */ fsubs f6, f1, f28 +/* 8020E3AC 0020B30C C0 23 00 04 */ lfs f1, 4(r3) +/* 8020E3B0 0020B310 EC A0 D8 28 */ fsubs f5, f0, f27 +/* 8020E3B4 0020B314 C1 41 00 08 */ lfs f10, 8(r1) +/* 8020E3B8 0020B318 EC E1 E8 28 */ fsubs f7, f1, f29 +/* 8020E3BC 0020B31C C0 83 00 20 */ lfs f4, 0x20(r3) +/* 8020E3C0 0020B320 EC 26 02 72 */ fmuls f1, f6, f9 +/* 8020E3C4 0020B324 EC 05 02 B2 */ fmuls f0, f5, f10 +/* 8020E3C8 0020B328 EC 47 02 32 */ fmuls f2, f7, f8 +/* 8020E3CC 0020B32C EC 28 09 78 */ fmsubs f1, f8, f5, f1 +/* 8020E3D0 0020B330 EC 09 01 F8 */ fmsubs f0, f9, f7, f0 +/* 8020E3D4 0020B334 EC AA 11 B8 */ fmsubs f5, f10, f6, f2 +/* 8020E3D8 0020B338 EC 43 00 72 */ fmuls f2, f3, f1 +/* 8020E3DC 0020B33C EC 23 00 32 */ fmuls f1, f3, f0 +/* 8020E3E0 0020B340 EC 03 01 72 */ fmuls f0, f3, f5 +/* 8020E3E4 0020B344 EC 44 10 28 */ fsubs f2, f4, f2 +/* 8020E3E8 0020B348 D0 43 00 20 */ stfs f2, 0x20(r3) +/* 8020E3EC 0020B34C C0 43 00 24 */ lfs f2, 0x24(r3) +/* 8020E3F0 0020B350 EC 22 08 28 */ fsubs f1, f2, f1 +/* 8020E3F4 0020B354 D0 23 00 24 */ stfs f1, 0x24(r3) +/* 8020E3F8 0020B358 C0 23 00 28 */ lfs f1, 0x28(r3) +/* 8020E3FC 0020B35C EC 01 00 28 */ fsubs f0, f1, f0 +/* 8020E400 0020B360 D0 03 00 28 */ stfs f0, 0x28(r3) +lbl_8020E404: +/* 8020E404 0020B364 80 1F 00 08 */ lwz r0, 8(r31) +/* 8020E408 0020B368 7C 05 00 00 */ cmpw r5, r0 +/* 8020E40C 0020B36C 41 80 FF 7C */ blt lbl_8020E388 +lbl_8020E410: +/* 8020E410 0020B370 E3 E1 00 C8 */ psq_l f31, 200(r1), 0, qr0 +/* 8020E414 0020B374 CB E1 00 C0 */ lfd f31, 0xc0(r1) +/* 8020E418 0020B378 E3 C1 00 B8 */ psq_l f30, 184(r1), 0, qr0 +/* 8020E41C 0020B37C CB C1 00 B0 */ lfd f30, 0xb0(r1) +/* 8020E420 0020B380 E3 A1 00 A8 */ psq_l f29, 168(r1), 0, qr0 +/* 8020E424 0020B384 CB A1 00 A0 */ lfd f29, 0xa0(r1) +/* 8020E428 0020B388 E3 81 00 98 */ psq_l f28, 152(r1), 0, qr0 +/* 8020E42C 0020B38C CB 81 00 90 */ lfd f28, 0x90(r1) +/* 8020E430 0020B390 E3 61 00 88 */ psq_l f27, 136(r1), 0, qr0 +/* 8020E434 0020B394 CB 61 00 80 */ lfd f27, 0x80(r1) +/* 8020E438 0020B398 E3 41 00 78 */ psq_l f26, 120(r1), 0, qr0 +/* 8020E43C 0020B39C CB 41 00 70 */ lfd f26, 0x70(r1) +/* 8020E440 0020B3A0 E3 21 00 68 */ psq_l f25, 104(r1), 0, qr0 +/* 8020E444 0020B3A4 CB 21 00 60 */ lfd f25, 0x60(r1) +/* 8020E448 0020B3A8 E3 01 00 58 */ psq_l f24, 88(r1), 0, qr0 +/* 8020E44C 0020B3AC CB 01 00 50 */ lfd f24, 0x50(r1) +/* 8020E450 0020B3B0 E2 E1 00 48 */ psq_l f23, 72(r1), 0, qr0 +/* 8020E454 0020B3B4 CA E1 00 40 */ lfd f23, 0x40(r1) +/* 8020E458 0020B3B8 BB 61 00 2C */ lmw r27, 0x2c(r1) +/* 8020E45C 0020B3BC 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 8020E460 0020B3C0 7C 08 03 A6 */ mtlr r0 +/* 8020E464 0020B3C4 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 8020E468 0020B3C8 4E 80 00 20 */ blr + +.global Verlet__8CRagDollFf +Verlet__8CRagDollFf: +/* 8020E46C 0020B3CC 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 8020E470 0020B3D0 7C 08 02 A6 */ mflr r0 +/* 8020E474 0020B3D4 90 01 00 74 */ stw r0, 0x74(r1) +/* 8020E478 0020B3D8 DB E1 00 60 */ stfd f31, 0x60(r1) +/* 8020E47C 0020B3DC F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 8020E480 0020B3E0 DB C1 00 50 */ stfd f30, 0x50(r1) +/* 8020E484 0020B3E4 F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 +/* 8020E488 0020B3E8 BF 61 00 3C */ stmw r27, 0x3c(r1) +/* 8020E48C 0020B3EC FF C0 08 90 */ fmr f30, f1 +/* 8020E490 0020B3F0 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8020E494 0020B3F4 C3 E2 B1 F0 */ lfs f31, lbl_805ACF10@sda21(r2) +/* 8020E498 0020B3F8 7C 7D 1B 78 */ mr r29, r3 +/* 8020E49C 0020B3FC 3B 84 66 A0 */ addi r28, r4, skZero3f@l +/* 8020E4A0 0020B400 3B C0 00 00 */ li r30, 0 +/* 8020E4A4 0020B404 3B E0 00 00 */ li r31, 0 +/* 8020E4A8 0020B408 48 00 01 FC */ b lbl_8020E6A4 +lbl_8020E4AC: +/* 8020E4AC 0020B40C 80 1D 00 10 */ lwz r0, 0x10(r29) +/* 8020E4B0 0020B410 7F 60 FA 14 */ add r27, r0, r31 +/* 8020E4B4 0020B414 88 1B 00 3C */ lbz r0, 0x3c(r27) +/* 8020E4B8 0020B418 C0 1B 00 04 */ lfs f0, 4(r27) +/* 8020E4BC 0020B41C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8020E4C0 0020B420 C0 3B 00 08 */ lfs f1, 8(r27) +/* 8020E4C4 0020B424 C0 5B 00 0C */ lfs f2, 0xc(r27) +/* 8020E4C8 0020B428 41 82 00 0C */ beq lbl_8020E4D4 +/* 8020E4CC 0020B42C C0 E2 B2 18 */ lfs f7, lbl_805ACF38@sda21(r2) +/* 8020E4D0 0020B430 48 00 00 08 */ b lbl_8020E4D8 +lbl_8020E4D4: +/* 8020E4D4 0020B434 C0 E2 B1 C0 */ lfs f7, lbl_805ACEE0@sda21(r2) +lbl_8020E4D8: +/* 8020E4D8 0020B438 C0 7B 00 14 */ lfs f3, 0x14(r27) +/* 8020E4DC 0020B43C 38 9F 00 20 */ addi r4, r31, 0x20 +/* 8020E4E0 0020B440 C0 9B 00 18 */ lfs f4, 0x18(r27) +/* 8020E4E4 0020B444 38 7F 00 2C */ addi r3, r31, 0x2c +/* 8020E4E8 0020B448 EC 60 18 28 */ fsubs f3, f0, f3 +/* 8020E4EC 0020B44C C0 BB 00 1C */ lfs f5, 0x1c(r27) +/* 8020E4F0 0020B450 EC C1 20 28 */ fsubs f6, f1, f4 +/* 8020E4F4 0020B454 C0 9B 00 04 */ lfs f4, 4(r27) +/* 8020E4F8 0020B458 EC A2 28 28 */ fsubs f5, f2, f5 +/* 8020E4FC 0020B45C EC 67 00 F2 */ fmuls f3, f7, f3 +/* 8020E500 0020B460 EC C7 01 B2 */ fmuls f6, f7, f6 +/* 8020E504 0020B464 EC A7 01 72 */ fmuls f5, f7, f5 +/* 8020E508 0020B468 EC 64 18 2A */ fadds f3, f4, f3 +/* 8020E50C 0020B46C D0 7B 00 04 */ stfs f3, 4(r27) +/* 8020E510 0020B470 C0 7B 00 08 */ lfs f3, 8(r27) +/* 8020E514 0020B474 EC 63 30 2A */ fadds f3, f3, f6 +/* 8020E518 0020B478 D0 7B 00 08 */ stfs f3, 8(r27) +/* 8020E51C 0020B47C C0 7B 00 0C */ lfs f3, 0xc(r27) +/* 8020E520 0020B480 EC 63 28 2A */ fadds f3, f3, f5 +/* 8020E524 0020B484 D0 7B 00 0C */ stfs f3, 0xc(r27) +/* 8020E528 0020B488 80 1D 00 10 */ lwz r0, 0x10(r29) +/* 8020E52C 0020B48C C0 9B 00 04 */ lfs f4, 4(r27) +/* 8020E530 0020B490 7C 80 22 14 */ add r4, r0, r4 +/* 8020E534 0020B494 C0 64 00 00 */ lfs f3, 0(r4) +/* 8020E538 0020B498 C0 C4 00 04 */ lfs f6, 4(r4) +/* 8020E53C 0020B49C EC 7E 00 F2 */ fmuls f3, f30, f3 +/* 8020E540 0020B4A0 C0 A4 00 08 */ lfs f5, 8(r4) +/* 8020E544 0020B4A4 EC DE 01 B2 */ fmuls f6, f30, f6 +/* 8020E548 0020B4A8 EC BE 01 72 */ fmuls f5, f30, f5 +/* 8020E54C 0020B4AC EC 7E 00 F2 */ fmuls f3, f30, f3 +/* 8020E550 0020B4B0 EC DE 01 B2 */ fmuls f6, f30, f6 +/* 8020E554 0020B4B4 EC BE 01 72 */ fmuls f5, f30, f5 +/* 8020E558 0020B4B8 EC 64 18 2A */ fadds f3, f4, f3 +/* 8020E55C 0020B4BC D0 7B 00 04 */ stfs f3, 4(r27) +/* 8020E560 0020B4C0 C0 7B 00 08 */ lfs f3, 8(r27) +/* 8020E564 0020B4C4 EC 63 30 2A */ fadds f3, f3, f6 +/* 8020E568 0020B4C8 D0 7B 00 08 */ stfs f3, 8(r27) +/* 8020E56C 0020B4CC C0 7B 00 0C */ lfs f3, 0xc(r27) +/* 8020E570 0020B4D0 EC 63 28 2A */ fadds f3, f3, f5 +/* 8020E574 0020B4D4 D0 7B 00 0C */ stfs f3, 0xc(r27) +/* 8020E578 0020B4D8 80 1D 00 10 */ lwz r0, 0x10(r29) +/* 8020E57C 0020B4DC C0 9B 00 04 */ lfs f4, 4(r27) +/* 8020E580 0020B4E0 7C 60 1A 14 */ add r3, r0, r3 +/* 8020E584 0020B4E4 C0 63 00 00 */ lfs f3, 0(r3) +/* 8020E588 0020B4E8 EC 64 18 2A */ fadds f3, f4, f3 +/* 8020E58C 0020B4EC D0 7B 00 04 */ stfs f3, 4(r27) +/* 8020E590 0020B4F0 C0 9B 00 08 */ lfs f4, 8(r27) +/* 8020E594 0020B4F4 C0 63 00 04 */ lfs f3, 4(r3) +/* 8020E598 0020B4F8 EC 64 18 2A */ fadds f3, f4, f3 +/* 8020E59C 0020B4FC D0 7B 00 08 */ stfs f3, 8(r27) +/* 8020E5A0 0020B500 C0 9B 00 0C */ lfs f4, 0xc(r27) +/* 8020E5A4 0020B504 C0 63 00 08 */ lfs f3, 8(r3) +/* 8020E5A8 0020B508 EC 64 18 2A */ fadds f3, f4, f3 +/* 8020E5AC 0020B50C D0 7B 00 0C */ stfs f3, 0xc(r27) +/* 8020E5B0 0020B510 D0 1B 00 14 */ stfs f0, 0x14(r27) +/* 8020E5B4 0020B514 D0 3B 00 18 */ stfs f1, 0x18(r27) +/* 8020E5B8 0020B518 D0 5B 00 1C */ stfs f2, 0x1c(r27) +/* 8020E5BC 0020B51C C0 5B 00 08 */ lfs f2, 8(r27) +/* 8020E5C0 0020B520 C0 1B 00 18 */ lfs f0, 0x18(r27) +/* 8020E5C4 0020B524 C0 3B 00 04 */ lfs f1, 4(r27) +/* 8020E5C8 0020B528 EC A2 00 28 */ fsubs f5, f2, f0 +/* 8020E5CC 0020B52C C0 1B 00 14 */ lfs f0, 0x14(r27) +/* 8020E5D0 0020B530 C0 5B 00 0C */ lfs f2, 0xc(r27) +/* 8020E5D4 0020B534 EC 61 00 28 */ fsubs f3, f1, f0 +/* 8020E5D8 0020B538 C0 3B 00 1C */ lfs f1, 0x1c(r27) +/* 8020E5DC 0020B53C EC 05 01 72 */ fmuls f0, f5, f5 +/* 8020E5E0 0020B540 EC 82 08 28 */ fsubs f4, f2, f1 +/* 8020E5E4 0020B544 D0 A1 00 24 */ stfs f5, 0x24(r1) +/* 8020E5E8 0020B548 EC 23 00 F2 */ fmuls f1, f3, f3 +/* 8020E5EC 0020B54C D0 61 00 20 */ stfs f3, 0x20(r1) +/* 8020E5F0 0020B550 EC 44 01 32 */ fmuls f2, f4, f4 +/* 8020E5F4 0020B554 EC 01 00 2A */ fadds f0, f1, f0 +/* 8020E5F8 0020B558 D0 81 00 28 */ stfs f4, 0x28(r1) +/* 8020E5FC 0020B55C EC 02 00 2A */ fadds f0, f2, f0 +/* 8020E600 0020B560 FC 00 F8 40 */ fcmpo cr0, f0, f31 +/* 8020E604 0020B564 40 81 00 5C */ ble lbl_8020E660 +/* 8020E608 0020B568 D0 61 00 08 */ stfs f3, 8(r1) +/* 8020E60C 0020B56C 38 61 00 14 */ addi r3, r1, 0x14 +/* 8020E610 0020B570 38 81 00 08 */ addi r4, r1, 8 +/* 8020E614 0020B574 D0 A1 00 0C */ stfs f5, 0xc(r1) +/* 8020E618 0020B578 D0 81 00 10 */ stfs f4, 0x10(r1) +/* 8020E61C 0020B57C 48 10 62 35 */ bl AsNormalized__9CVector3fCFv +/* 8020E620 0020B580 C0 A2 B2 1C */ lfs f5, lbl_805ACF3C@sda21(r2) +/* 8020E624 0020B584 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 8020E628 0020B588 C0 61 00 18 */ lfs f3, 0x18(r1) +/* 8020E62C 0020B58C EC 05 00 32 */ fmuls f0, f5, f0 +/* 8020E630 0020B590 C0 3B 00 14 */ lfs f1, 0x14(r27) +/* 8020E634 0020B594 C0 41 00 1C */ lfs f2, 0x1c(r1) +/* 8020E638 0020B598 EC 85 00 F2 */ fmuls f4, f5, f3 +/* 8020E63C 0020B59C C0 DB 00 18 */ lfs f6, 0x18(r27) +/* 8020E640 0020B5A0 EC 01 00 2A */ fadds f0, f1, f0 +/* 8020E644 0020B5A4 C0 7B 00 1C */ lfs f3, 0x1c(r27) +/* 8020E648 0020B5A8 EC 25 00 B2 */ fmuls f1, f5, f2 +/* 8020E64C 0020B5AC EC 46 20 2A */ fadds f2, f6, f4 +/* 8020E650 0020B5B0 D0 1B 00 04 */ stfs f0, 4(r27) +/* 8020E654 0020B5B4 EC 03 08 2A */ fadds f0, f3, f1 +/* 8020E658 0020B5B8 D0 5B 00 08 */ stfs f2, 8(r27) +/* 8020E65C 0020B5BC D0 1B 00 0C */ stfs f0, 0xc(r27) +lbl_8020E660: +/* 8020E660 0020B5C0 80 9D 00 10 */ lwz r4, 0x10(r29) +/* 8020E664 0020B5C4 38 7F 00 3C */ addi r3, r31, 0x3c +/* 8020E668 0020B5C8 38 DF 00 2C */ addi r6, r31, 0x2c +/* 8020E66C 0020B5CC 38 A0 00 00 */ li r5, 0 +/* 8020E670 0020B5D0 7C 04 18 AE */ lbzx r0, r4, r3 +/* 8020E674 0020B5D4 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 8020E678 0020B5D8 3B FF 00 40 */ addi r31, r31, 0x40 +/* 8020E67C 0020B5DC 3B DE 00 01 */ addi r30, r30, 1 +/* 8020E680 0020B5E0 7C 04 19 AE */ stbx r0, r4, r3 +/* 8020E684 0020B5E4 80 1D 00 10 */ lwz r0, 0x10(r29) +/* 8020E688 0020B5E8 C0 1C 00 00 */ lfs f0, 0(r28) +/* 8020E68C 0020B5EC 7C C0 32 14 */ add r6, r0, r6 +/* 8020E690 0020B5F0 D0 06 00 00 */ stfs f0, 0(r6) +/* 8020E694 0020B5F4 C0 1C 00 04 */ lfs f0, 4(r28) +/* 8020E698 0020B5F8 D0 06 00 04 */ stfs f0, 4(r6) +/* 8020E69C 0020B5FC C0 1C 00 08 */ lfs f0, 8(r28) +/* 8020E6A0 0020B600 D0 06 00 08 */ stfs f0, 8(r6) +lbl_8020E6A4: +/* 8020E6A4 0020B604 80 1D 00 08 */ lwz r0, 8(r29) +/* 8020E6A8 0020B608 7C 1E 00 00 */ cmpw r30, r0 +/* 8020E6AC 0020B60C 41 80 FE 00 */ blt lbl_8020E4AC +/* 8020E6B0 0020B610 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 8020E6B4 0020B614 CB E1 00 60 */ lfd f31, 0x60(r1) +/* 8020E6B8 0020B618 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 +/* 8020E6BC 0020B61C CB C1 00 50 */ lfd f30, 0x50(r1) +/* 8020E6C0 0020B620 BB 61 00 3C */ lmw r27, 0x3c(r1) +/* 8020E6C4 0020B624 80 01 00 74 */ lwz r0, 0x74(r1) +/* 8020E6C8 0020B628 7C 08 03 A6 */ mtlr r0 +/* 8020E6CC 0020B62C 38 21 00 70 */ addi r1, r1, 0x70 +/* 8020E6D0 0020B630 4E 80 00 20 */ blr + +.global Prime__8CRagDollFR13CStateManagerRC12CTransform4fR10CModelData +Prime__8CRagDollFR13CStateManagerRC12CTransform4fR10CModelData: +/* 8020E6D4 0020B634 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 8020E6D8 0020B638 7C 08 02 A6 */ mflr r0 +/* 8020E6DC 0020B63C 90 01 00 54 */ stw r0, 0x54(r1) +/* 8020E6E0 0020B640 BF 41 00 38 */ stmw r26, 0x38(r1) +/* 8020E6E4 0020B644 7C 7F 1B 78 */ mr r31, r3 +/* 8020E6E8 0020B648 7C 9A 23 78 */ mr r26, r4 +/* 8020E6EC 0020B64C 7C BB 2B 78 */ mr r27, r5 +/* 8020E6F0 0020B650 C0 46 00 00 */ lfs f2, 0(r6) +/* 8020E6F4 0020B654 C0 26 00 04 */ lfs f1, 4(r6) +/* 8020E6F8 0020B658 C0 06 00 08 */ lfs f0, 8(r6) +/* 8020E6FC 0020B65C 83 C6 00 10 */ lwz r30, 0x10(r6) +/* 8020E700 0020B660 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 8020E704 0020B664 7F C3 F3 78 */ mr r3, r30 +/* 8020E708 0020B668 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 8020E70C 0020B66C D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 8020E710 0020B670 4B E1 E3 51 */ bl BuildPose__9CAnimDataFv +/* 8020E714 0020B674 3B 80 00 00 */ li r28, 0 +/* 8020E718 0020B678 3B A0 00 00 */ li r29, 0 +/* 8020E71C 0020B67C 48 00 00 90 */ b lbl_8020E7AC +lbl_8020E720: +/* 8020E720 0020B680 80 7F 00 10 */ lwz r3, 0x10(r31) +/* 8020E724 0020B684 7C 03 E8 AE */ lbzx r0, r3, r29 +/* 8020E728 0020B688 28 00 00 FF */ cmplwi r0, 0xff +/* 8020E72C 0020B68C 98 01 00 08 */ stb r0, 8(r1) +/* 8020E730 0020B690 41 82 00 74 */ beq lbl_8020E7A4 +/* 8020E734 0020B694 38 7E 02 24 */ addi r3, r30, 0x224 +/* 8020E738 0020B698 38 81 00 08 */ addi r4, r1, 8 +/* 8020E73C 0020B69C 48 15 A8 1D */ bl GetOffset__17CPoseAsTransformsCFRC6CSegId +/* 8020E740 0020B6A0 C0 21 00 2C */ lfs f1, 0x2c(r1) +/* 8020E744 0020B6A4 7F 64 DB 78 */ mr r4, r27 +/* 8020E748 0020B6A8 C0 03 00 08 */ lfs f0, 8(r3) +/* 8020E74C 0020B6AC 38 A1 00 0C */ addi r5, r1, 0xc +/* 8020E750 0020B6B0 C0 61 00 28 */ lfs f3, 0x28(r1) +/* 8020E754 0020B6B4 C0 43 00 04 */ lfs f2, 4(r3) +/* 8020E758 0020B6B8 EC 81 00 32 */ fmuls f4, f1, f0 +/* 8020E75C 0020B6BC C0 03 00 00 */ lfs f0, 0(r3) +/* 8020E760 0020B6C0 38 61 00 18 */ addi r3, r1, 0x18 +/* 8020E764 0020B6C4 C0 21 00 24 */ lfs f1, 0x24(r1) +/* 8020E768 0020B6C8 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 8020E76C 0020B6CC D0 81 00 14 */ stfs f4, 0x14(r1) +/* 8020E770 0020B6D0 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8020E774 0020B6D4 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 8020E778 0020B6D8 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 8020E77C 0020B6DC 48 10 43 6D */ bl __ml__12CTransform4fCFRC9CVector3f +/* 8020E780 0020B6E0 80 1F 00 10 */ lwz r0, 0x10(r31) +/* 8020E784 0020B6E4 38 7D 00 04 */ addi r3, r29, 4 +/* 8020E788 0020B6E8 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 8020E78C 0020B6EC 7C 60 1A 14 */ add r3, r0, r3 +/* 8020E790 0020B6F0 D0 03 00 00 */ stfs f0, 0(r3) +/* 8020E794 0020B6F4 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 8020E798 0020B6F8 D0 03 00 04 */ stfs f0, 4(r3) +/* 8020E79C 0020B6FC C0 01 00 20 */ lfs f0, 0x20(r1) +/* 8020E7A0 0020B700 D0 03 00 08 */ stfs f0, 8(r3) +lbl_8020E7A4: +/* 8020E7A4 0020B704 3B BD 00 40 */ addi r29, r29, 0x40 +/* 8020E7A8 0020B708 3B 9C 00 01 */ addi r28, r28, 1 +lbl_8020E7AC: +/* 8020E7AC 0020B70C 80 1F 00 08 */ lwz r0, 8(r31) +/* 8020E7B0 0020B710 7C 1C 00 00 */ cmpw r28, r0 +/* 8020E7B4 0020B714 41 80 FF 6C */ blt lbl_8020E720 +/* 8020E7B8 0020B718 7F E3 FB 78 */ mr r3, r31 +/* 8020E7BC 0020B71C 7F 44 D3 78 */ mr r4, r26 +/* 8020E7C0 0020B720 38 A0 00 02 */ li r5, 2 +/* 8020E7C4 0020B724 4B FF F0 09 */ bl SatisfyWorldConstraints__8CRagDollFR13CStateManageri +/* 8020E7C8 0020B728 38 C0 00 00 */ li r6, 0 +/* 8020E7CC 0020B72C 38 E0 00 00 */ li r7, 0 +/* 8020E7D0 0020B730 7C C5 33 78 */ mr r5, r6 +/* 8020E7D4 0020B734 48 00 00 20 */ b lbl_8020E7F4 +lbl_8020E7D8: +/* 8020E7D8 0020B738 80 9F 00 10 */ lwz r4, 0x10(r31) +/* 8020E7DC 0020B73C 38 66 00 3C */ addi r3, r6, 0x3c +/* 8020E7E0 0020B740 38 C6 00 40 */ addi r6, r6, 0x40 +/* 8020E7E4 0020B744 38 E7 00 01 */ addi r7, r7, 1 +/* 8020E7E8 0020B748 7C 04 18 AE */ lbzx r0, r4, r3 +/* 8020E7EC 0020B74C 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 8020E7F0 0020B750 7C 04 19 AE */ stbx r0, r4, r3 +lbl_8020E7F4: +/* 8020E7F4 0020B754 80 1F 00 08 */ lwz r0, 8(r31) +/* 8020E7F8 0020B758 7C 07 00 00 */ cmpw r7, r0 +/* 8020E7FC 0020B75C 41 80 FF DC */ blt lbl_8020E7D8 +/* 8020E800 0020B760 88 1F 00 68 */ lbz r0, 0x68(r31) +/* 8020E804 0020B764 38 60 00 01 */ li r3, 1 +/* 8020E808 0020B768 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 8020E80C 0020B76C 98 1F 00 68 */ stb r0, 0x68(r31) +/* 8020E810 0020B770 BB 41 00 38 */ lmw r26, 0x38(r1) +/* 8020E814 0020B774 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8020E818 0020B778 7C 08 03 A6 */ mtlr r0 +/* 8020E81C 0020B77C 38 21 00 50 */ addi r1, r1, 0x50 +/* 8020E820 0020B780 4E 80 00 20 */ blr + +.global SatisfyWorldConstraintsOnConstruction__8CRagDollFR13CStateManager +SatisfyWorldConstraintsOnConstruction__8CRagDollFR13CStateManager: +/* 8020E824 0020B784 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8020E828 0020B788 7C 08 02 A6 */ mflr r0 +/* 8020E82C 0020B78C 39 00 00 00 */ li r8, 0 +/* 8020E830 0020B790 38 E0 00 00 */ li r7, 0 +/* 8020E834 0020B794 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020E838 0020B798 38 C0 00 01 */ li r6, 1 +/* 8020E83C 0020B79C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8020E840 0020B7A0 7C 7F 1B 78 */ mr r31, r3 +/* 8020E844 0020B7A4 48 00 00 20 */ b lbl_8020E864 +lbl_8020E848: +/* 8020E848 0020B7A8 80 BF 00 10 */ lwz r5, 0x10(r31) +/* 8020E84C 0020B7AC 38 67 00 3C */ addi r3, r7, 0x3c +/* 8020E850 0020B7B0 38 E7 00 40 */ addi r7, r7, 0x40 +/* 8020E854 0020B7B4 39 08 00 01 */ addi r8, r8, 1 +/* 8020E858 0020B7B8 7C 05 18 AE */ lbzx r0, r5, r3 +/* 8020E85C 0020B7BC 50 C0 3E 30 */ rlwimi r0, r6, 7, 0x18, 0x18 +/* 8020E860 0020B7C0 7C 05 19 AE */ stbx r0, r5, r3 +lbl_8020E864: +/* 8020E864 0020B7C4 80 1F 00 08 */ lwz r0, 8(r31) +/* 8020E868 0020B7C8 7C 08 00 00 */ cmpw r8, r0 +/* 8020E86C 0020B7CC 41 80 FF DC */ blt lbl_8020E848 +/* 8020E870 0020B7D0 7F E3 FB 78 */ mr r3, r31 +/* 8020E874 0020B7D4 38 A0 00 02 */ li r5, 2 +/* 8020E878 0020B7D8 4B FF EF 55 */ bl SatisfyWorldConstraints__8CRagDollFR13CStateManageri +/* 8020E87C 0020B7DC 38 A0 00 00 */ li r5, 0 +/* 8020E880 0020B7E0 38 60 00 00 */ li r3, 0 +/* 8020E884 0020B7E4 48 00 00 2C */ b lbl_8020E8B0 +lbl_8020E888: +/* 8020E888 0020B7E8 80 1F 00 10 */ lwz r0, 0x10(r31) +/* 8020E88C 0020B7EC 38 A5 00 01 */ addi r5, r5, 1 +/* 8020E890 0020B7F0 7C 80 1A 14 */ add r4, r0, r3 +/* 8020E894 0020B7F4 38 63 00 40 */ addi r3, r3, 0x40 +/* 8020E898 0020B7F8 C0 04 00 04 */ lfs f0, 4(r4) +/* 8020E89C 0020B7FC D0 04 00 14 */ stfs f0, 0x14(r4) +/* 8020E8A0 0020B800 C0 04 00 08 */ lfs f0, 8(r4) +/* 8020E8A4 0020B804 D0 04 00 18 */ stfs f0, 0x18(r4) +/* 8020E8A8 0020B808 C0 04 00 0C */ lfs f0, 0xc(r4) +/* 8020E8AC 0020B80C D0 04 00 1C */ stfs f0, 0x1c(r4) +lbl_8020E8B0: +/* 8020E8B0 0020B810 80 1F 00 08 */ lwz r0, 8(r31) +/* 8020E8B4 0020B814 7C 05 00 00 */ cmpw r5, r0 +/* 8020E8B8 0020B818 41 80 FF D0 */ blt lbl_8020E888 +/* 8020E8BC 0020B81C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8020E8C0 0020B820 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8020E8C4 0020B824 7C 08 03 A6 */ mtlr r0 +/* 8020E8C8 0020B828 38 21 00 10 */ addi r1, r1, 0x10 +/* 8020E8CC 0020B82C 4E 80 00 20 */ blr + +.global __ct__8CRagDollFfffUi +__ct__8CRagDollFfffUi: +/* 8020E8D0 0020B830 3C C0 80 3E */ lis r6, lbl_803E70D0@ha +/* 8020E8D4 0020B834 3C A0 80 5A */ lis r5, skZero3f@ha +/* 8020E8D8 0020B838 38 06 70 D0 */ addi r0, r6, lbl_803E70D0@l +/* 8020E8DC 0020B83C 39 00 00 00 */ li r8, 0 +/* 8020E8E0 0020B840 90 03 00 00 */ stw r0, 0(r3) +/* 8020E8E4 0020B844 38 E5 66 A0 */ addi r7, r5, skZero3f@l +/* 8020E8E8 0020B848 C0 82 B1 C4 */ lfs f4, lbl_805ACEE4@sda21(r2) +/* 8020E8EC 0020B84C 91 03 00 08 */ stw r8, 8(r3) +/* 8020E8F0 0020B850 91 03 00 0C */ stw r8, 0xc(r3) +/* 8020E8F4 0020B854 91 03 00 10 */ stw r8, 0x10(r3) +/* 8020E8F8 0020B858 91 03 00 18 */ stw r8, 0x18(r3) +/* 8020E8FC 0020B85C 91 03 00 1C */ stw r8, 0x1c(r3) +/* 8020E900 0020B860 91 03 00 20 */ stw r8, 0x20(r3) +/* 8020E904 0020B864 91 03 00 28 */ stw r8, 0x28(r3) +/* 8020E908 0020B868 91 03 00 2C */ stw r8, 0x2c(r3) +/* 8020E90C 0020B86C 91 03 00 30 */ stw r8, 0x30(r3) +/* 8020E910 0020B870 91 03 00 38 */ stw r8, 0x38(r3) +/* 8020E914 0020B874 91 03 00 3C */ stw r8, 0x3c(r3) +/* 8020E918 0020B878 91 03 00 40 */ stw r8, 0x40(r3) +/* 8020E91C 0020B87C D0 23 00 44 */ stfs f1, 0x44(r3) +/* 8020E920 0020B880 D0 43 00 48 */ stfs f2, 0x48(r3) +/* 8020E924 0020B884 91 03 00 4C */ stw r8, 0x4c(r3) +/* 8020E928 0020B888 D0 63 00 50 */ stfs f3, 0x50(r3) +/* 8020E92C 0020B88C D0 83 00 54 */ stfs f4, 0x54(r3) +/* 8020E930 0020B890 C0 07 00 00 */ lfs f0, 0(r7) +/* 8020E934 0020B894 D0 03 00 58 */ stfs f0, 0x58(r3) +/* 8020E938 0020B898 C0 07 00 04 */ lfs f0, 4(r7) +/* 8020E93C 0020B89C D0 03 00 5C */ stfs f0, 0x5c(r3) +/* 8020E940 0020B8A0 C0 07 00 08 */ lfs f0, 8(r7) +/* 8020E944 0020B8A4 D0 03 00 60 */ stfs f0, 0x60(r3) +/* 8020E948 0020B8A8 D0 83 00 64 */ stfs f4, 0x64(r3) +/* 8020E94C 0020B8AC 88 03 00 68 */ lbz r0, 0x68(r3) +/* 8020E950 0020B8B0 51 00 3E 30 */ rlwimi r0, r8, 7, 0x18, 0x18 +/* 8020E954 0020B8B4 98 03 00 68 */ stb r0, 0x68(r3) +/* 8020E958 0020B8B8 88 03 00 68 */ lbz r0, 0x68(r3) +/* 8020E95C 0020B8BC 51 00 36 72 */ rlwimi r0, r8, 6, 0x19, 0x19 +/* 8020E960 0020B8C0 98 03 00 68 */ stb r0, 0x68(r3) +/* 8020E964 0020B8C4 88 03 00 68 */ lbz r0, 0x68(r3) +/* 8020E968 0020B8C8 51 00 2E B4 */ rlwimi r0, r8, 5, 0x1a, 0x1a +/* 8020E96C 0020B8CC 98 03 00 68 */ stb r0, 0x68(r3) +/* 8020E970 0020B8D0 88 03 00 68 */ lbz r0, 0x68(r3) +/* 8020E974 0020B8D4 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 8020E978 0020B8D8 98 03 00 68 */ stb r0, 0x68(r3) +/* 8020E97C 0020B8DC 88 03 00 68 */ lbz r0, 0x68(r3) +/* 8020E980 0020B8E0 50 80 17 38 */ rlwimi r0, r4, 2, 0x1c, 0x1c +/* 8020E984 0020B8E4 98 03 00 68 */ stb r0, 0x68(r3) +/* 8020E988 0020B8E8 88 03 00 68 */ lbz r0, 0x68(r3) +/* 8020E98C 0020B8EC 50 80 07 7A */ rlwimi r0, r4, 0, 0x1d, 0x1d +/* 8020E990 0020B8F0 98 03 00 68 */ stb r0, 0x68(r3) +/* 8020E994 0020B8F4 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CRumbleManager.s b/asm/Kyoto_CWD/CRumbleManager.s new file mode 100644 index 00000000..3c188b32 --- /dev/null +++ b/asm/Kyoto_CWD/CRumbleManager.s @@ -0,0 +1,166 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global Update__14CRumbleManagerFf +Update__14CRumbleManagerFf: +/* 8022E0F4 0022B054 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8022E0F8 0022B058 7C 08 02 A6 */ mflr r0 +/* 8022E0FC 0022B05C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8022E100 0022B060 48 13 BC E1 */ bl Update__16CRumbleGeneratorFf +/* 8022E104 0022B064 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8022E108 0022B068 7C 08 03 A6 */ mtlr r0 +/* 8022E10C 0022B06C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8022E110 0022B070 4E 80 00 20 */ blr + +.global StopRumble__14CRumbleManagerFs +StopRumble__14CRumbleManagerFs: +/* 8022E114 0022B074 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8022E118 0022B078 7C 08 02 A6 */ mflr r0 +/* 8022E11C 0022B07C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8022E120 0022B080 7C 80 07 34 */ extsh r0, r4 +/* 8022E124 0022B084 2C 00 FF FF */ cmpwi r0, -1 +/* 8022E128 0022B088 41 82 00 10 */ beq lbl_8022E138 +/* 8022E12C 0022B08C 41 82 00 0C */ beq lbl_8022E138 +/* 8022E130 0022B090 38 A0 00 00 */ li r5, 0 +/* 8022E134 0022B094 48 13 B6 5D */ bl Deactivate__12CRumbleVoiceFsb +lbl_8022E138: +/* 8022E138 0022B098 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8022E13C 0022B09C 7C 08 03 A6 */ mtlr r0 +/* 8022E140 0022B0A0 38 21 00 10 */ addi r1, r1, 0x10 +/* 8022E144 0022B0A4 4E 80 00 20 */ blr + +.global Rumble__14CRumbleManagerFR13CStateManagerRC9CVector3f11ERumbleFxIdf15ERumblePriority +Rumble__14CRumbleManagerFR13CStateManagerRC9CVector3f11ERumbleFxIdf15ERumblePriority: +/* 8022E148 0022B0A8 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8022E14C 0022B0AC 7C 08 02 A6 */ mflr r0 +/* 8022E150 0022B0B0 90 01 00 44 */ stw r0, 0x44(r1) +/* 8022E154 0022B0B4 DB E1 00 30 */ stfd f31, 0x30(r1) +/* 8022E158 0022B0B8 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 8022E15C 0022B0BC 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8022E160 0022B0C0 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8022E164 0022B0C4 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8022E168 0022B0C8 93 81 00 20 */ stw r28, 0x20(r1) +/* 8022E16C 0022B0CC FF E0 08 90 */ fmr f31, f1 +/* 8022E170 0022B0D0 C0 22 B6 28 */ lfs f1, lbl_805AD348@sda21(r2) +/* 8022E174 0022B0D4 C0 02 B6 2C */ lfs f0, lbl_805AD34C@sda21(r2) +/* 8022E178 0022B0D8 7C 7C 1B 78 */ mr r28, r3 +/* 8022E17C 0022B0DC 7C 9D 23 78 */ mr r29, r4 +/* 8022E180 0022B0E0 7C DE 33 78 */ mr r30, r6 +/* 8022E184 0022B0E4 EC 3F 08 28 */ fsubs f1, f31, f1 +/* 8022E188 0022B0E8 7C FF 3B 78 */ mr r31, r7 +/* 8022E18C 0022B0EC FC 20 0A 10 */ fabs f1, f1 +/* 8022E190 0022B0F0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8022E194 0022B0F4 41 80 00 84 */ blt lbl_8022E218 +/* 8022E198 0022B0F8 80 7D 08 4C */ lwz r3, 0x84c(r29) +/* 8022E19C 0022B0FC EC 1F 07 F2 */ fmuls f0, f31, f31 +/* 8022E1A0 0022B100 C0 65 00 04 */ lfs f3, 4(r5) +/* 8022E1A4 0022B104 C0 83 00 50 */ lfs f4, 0x50(r3) +/* 8022E1A8 0022B108 C0 43 00 40 */ lfs f2, 0x40(r3) +/* 8022E1AC 0022B10C C0 25 00 00 */ lfs f1, 0(r5) +/* 8022E1B0 0022B110 EC A4 18 28 */ fsubs f5, f4, f3 +/* 8022E1B4 0022B114 C0 83 00 60 */ lfs f4, 0x60(r3) +/* 8022E1B8 0022B118 EC 62 08 28 */ fsubs f3, f2, f1 +/* 8022E1BC 0022B11C C0 45 00 08 */ lfs f2, 8(r5) +/* 8022E1C0 0022B120 EC 25 01 72 */ fmuls f1, f5, f5 +/* 8022E1C4 0022B124 D0 A1 00 0C */ stfs f5, 0xc(r1) +/* 8022E1C8 0022B128 EC 84 10 28 */ fsubs f4, f4, f2 +/* 8022E1CC 0022B12C EC 43 00 F2 */ fmuls f2, f3, f3 +/* 8022E1D0 0022B130 D0 61 00 08 */ stfs f3, 8(r1) +/* 8022E1D4 0022B134 EC 64 01 32 */ fmuls f3, f4, f4 +/* 8022E1D8 0022B138 EC 22 08 2A */ fadds f1, f2, f1 +/* 8022E1DC 0022B13C D0 81 00 10 */ stfs f4, 0x10(r1) +/* 8022E1E0 0022B140 EC 23 08 2A */ fadds f1, f3, f1 +/* 8022E1E4 0022B144 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8022E1E8 0022B148 40 80 00 30 */ bge lbl_8022E218 +/* 8022E1EC 0022B14C 38 61 00 08 */ addi r3, r1, 8 +/* 8022E1F0 0022B150 48 0E 66 C9 */ bl Magnitude__9CVector3fCFv +/* 8022E1F4 0022B154 EC 21 F8 24 */ fdivs f1, f1, f31 +/* 8022E1F8 0022B158 C0 02 B6 30 */ lfs f0, lbl_805AD350@sda21(r2) +/* 8022E1FC 0022B15C 7F 83 E3 78 */ mr r3, r28 +/* 8022E200 0022B160 7F A4 EB 78 */ mr r4, r29 +/* 8022E204 0022B164 7F C5 F3 78 */ mr r5, r30 +/* 8022E208 0022B168 7F E6 FB 78 */ mr r6, r31 +/* 8022E20C 0022B16C EC 20 08 28 */ fsubs f1, f0, f1 +/* 8022E210 0022B170 48 00 00 35 */ bl Rumble__14CRumbleManagerFR13CStateManager11ERumbleFxIdf15ERumblePriority +/* 8022E214 0022B174 48 00 00 08 */ b lbl_8022E21C +lbl_8022E218: +/* 8022E218 0022B178 38 60 FF FF */ li r3, -1 +lbl_8022E21C: +/* 8022E21C 0022B17C E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 8022E220 0022B180 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8022E224 0022B184 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 8022E228 0022B188 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8022E22C 0022B18C 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8022E230 0022B190 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8022E234 0022B194 83 81 00 20 */ lwz r28, 0x20(r1) +/* 8022E238 0022B198 7C 08 03 A6 */ mtlr r0 +/* 8022E23C 0022B19C 38 21 00 40 */ addi r1, r1, 0x40 +/* 8022E240 0022B1A0 4E 80 00 20 */ blr + +.global Rumble__14CRumbleManagerFR13CStateManager11ERumbleFxIdf15ERumblePriority +Rumble__14CRumbleManagerFR13CStateManager11ERumbleFxIdf15ERumblePriority: +/* 8022E244 0022B1A4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8022E248 0022B1A8 7C 08 02 A6 */ mflr r0 +/* 8022E24C 0022B1AC 90 01 00 14 */ stw r0, 0x14(r1) +/* 8022E250 0022B1B0 80 8D A0 80 */ lwz r4, gpGameState@sda21(r13) +/* 8022E254 0022B1B4 88 04 01 E4 */ lbz r0, 0x1e4(r4) +/* 8022E258 0022B1B8 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 8022E25C 0022B1BC 41 82 00 24 */ beq lbl_8022E280 +/* 8022E260 0022B1C0 1C E5 00 1C */ mulli r7, r5, 0x1c +/* 8022E264 0022B1C4 3C 80 80 57 */ lis r4, lbl_80572140@ha +/* 8022E268 0022B1C8 7C C5 33 78 */ mr r5, r6 +/* 8022E26C 0022B1CC 38 04 21 40 */ addi r0, r4, lbl_80572140@l +/* 8022E270 0022B1D0 7C 80 3A 14 */ add r4, r0, r7 +/* 8022E274 0022B1D4 38 C0 00 00 */ li r6, 0 +/* 8022E278 0022B1D8 48 13 BC D5 */ bl Rumble__16CRumbleGeneratorFRC9SAdsrDataf15ERumblePriority7EIOPort +/* 8022E27C 0022B1DC 48 00 00 08 */ b lbl_8022E284 +lbl_8022E280: +/* 8022E280 0022B1E0 38 60 FF FF */ li r3, -1 +lbl_8022E284: +/* 8022E284 0022B1E4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8022E288 0022B1E8 7C 08 03 A6 */ mtlr r0 +/* 8022E28C 0022B1EC 38 21 00 10 */ addi r1, r1, 0x10 +/* 8022E290 0022B1F0 4E 80 00 20 */ blr + +.global __dt__14CRumbleManagerFv +__dt__14CRumbleManagerFv: +/* 8022E294 0022B1F4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8022E298 0022B1F8 7C 08 02 A6 */ mflr r0 +/* 8022E29C 0022B1FC 90 01 00 14 */ stw r0, 0x14(r1) +/* 8022E2A0 0022B200 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8022E2A4 0022B204 7C 9F 23 78 */ mr r31, r4 +/* 8022E2A8 0022B208 93 C1 00 08 */ stw r30, 8(r1) +/* 8022E2AC 0022B20C 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8022E2B0 0022B210 41 82 00 24 */ beq lbl_8022E2D4 +/* 8022E2B4 0022B214 48 13 BA 99 */ bl HardStopAll__16CRumbleGeneratorFv +/* 8022E2B8 0022B218 7F C3 F3 78 */ mr r3, r30 +/* 8022E2BC 0022B21C 38 80 FF FF */ li r4, -1 +/* 8022E2C0 0022B220 48 13 BD 35 */ bl __dt__16CRumbleGeneratorFv +/* 8022E2C4 0022B224 7F E0 07 35 */ extsh. r0, r31 +/* 8022E2C8 0022B228 40 81 00 0C */ ble lbl_8022E2D4 +/* 8022E2CC 0022B22C 7F C3 F3 78 */ mr r3, r30 +/* 8022E2D0 0022B230 48 0E 76 61 */ bl Free__7CMemoryFPCv +lbl_8022E2D4: +/* 8022E2D4 0022B234 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8022E2D8 0022B238 7F C3 F3 78 */ mr r3, r30 +/* 8022E2DC 0022B23C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8022E2E0 0022B240 83 C1 00 08 */ lwz r30, 8(r1) +/* 8022E2E4 0022B244 7C 08 03 A6 */ mtlr r0 +/* 8022E2E8 0022B248 38 21 00 10 */ addi r1, r1, 0x10 +/* 8022E2EC 0022B24C 4E 80 00 20 */ blr + +.global __ct__14CRumbleManagerFv +__ct__14CRumbleManagerFv: +/* 8022E2F0 0022B250 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8022E2F4 0022B254 7C 08 02 A6 */ mflr r0 +/* 8022E2F8 0022B258 90 01 00 14 */ stw r0, 0x14(r1) +/* 8022E2FC 0022B25C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8022E300 0022B260 7C 7F 1B 78 */ mr r31, r3 +/* 8022E304 0022B264 48 13 BE 91 */ bl __ct__16CRumbleGeneratorFv +/* 8022E308 0022B268 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8022E30C 0022B26C 7F E3 FB 78 */ mr r3, r31 +/* 8022E310 0022B270 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8022E314 0022B274 7C 08 03 A6 */ mtlr r0 +/* 8022E318 0022B278 38 21 00 10 */ addi r1, r1, 0x10 +/* 8022E31C 0022B27C 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CVisorFlare.s b/asm/Kyoto_CWD/CVisorFlare.s new file mode 100644 index 00000000..f1faa944 --- /dev/null +++ b/asm/Kyoto_CWD/CVisorFlare.s @@ -0,0 +1,968 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global sub_802075fc +sub_802075fc: +/* 802075FC 0020455C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80207600 00204560 7C 08 02 A6 */ mflr r0 +/* 80207604 00204564 90 01 00 14 */ stw r0, 0x14(r1) +/* 80207608 00204568 80 04 0F 34 */ lwz r0, 0xf34(r4) +/* 8020760C 0020456C 2C 00 00 00 */ cmpwi r0, 0 +/* 80207610 00204570 40 82 00 14 */ bne lbl_80207624 +/* 80207614 00204574 38 60 00 00 */ li r3, 0 +/* 80207618 00204578 38 80 00 00 */ li r4, 0 +/* 8020761C 0020457C 38 A0 00 00 */ li r5, 0 +/* 80207620 00204580 48 17 42 11 */ bl GXSetTevSwapMode +lbl_80207624: +/* 80207624 00204584 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80207628 00204588 7C 08 03 A6 */ mtlr r0 +/* 8020762C 0020458C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80207630 00204590 4E 80 00 20 */ blr + +.global sub_80207634 +sub_80207634: +/* 80207634 00204594 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80207638 00204598 7C 08 02 A6 */ mflr r0 +/* 8020763C 0020459C 90 01 00 14 */ stw r0, 0x14(r1) +/* 80207640 002045A0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80207644 002045A4 7C 7F 1B 78 */ mr r31, r3 +/* 80207648 002045A8 80 04 0F 34 */ lwz r0, 0xf34(r4) +/* 8020764C 002045AC 2C 00 00 00 */ cmpwi r0, 0 +/* 80207650 002045B0 40 82 01 5C */ bne lbl_802077AC +/* 80207654 002045B4 38 60 00 01 */ li r3, 1 +/* 80207658 002045B8 38 80 00 01 */ li r4, 1 +/* 8020765C 002045BC 38 A0 00 01 */ li r5, 1 +/* 80207660 002045C0 38 C0 00 00 */ li r6, 0 +/* 80207664 002045C4 48 10 12 6D */ bl SetBlendMode__3CGXF12_GXBlendMode14_GXBlendFactor14_GXBlendFactor10_GXLogicOp +/* 80207668 002045C8 38 60 00 00 */ li r3, 0 +/* 8020766C 002045CC 48 10 05 E5 */ bl SetStandardTevColorAlphaOp__3CGXF13_GXTevStageID +/* 80207670 002045D0 38 60 00 00 */ li r3, 0 +/* 80207674 002045D4 38 80 00 00 */ li r4, 0 +/* 80207678 002045D8 38 A0 00 00 */ li r5, 0 +/* 8020767C 002045DC 38 C0 00 FF */ li r6, 0xff +/* 80207680 002045E0 48 10 12 CD */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 80207684 002045E4 38 60 00 07 */ li r3, 7 +/* 80207688 002045E8 38 80 00 00 */ li r4, 0 +/* 8020768C 002045EC 38 A0 00 01 */ li r5, 1 +/* 80207690 002045F0 38 C0 00 07 */ li r6, 7 +/* 80207694 002045F4 38 E0 00 00 */ li r7, 0 +/* 80207698 002045F8 48 10 11 7D */ bl SetAlphaCompare__3CGXF10_GXCompareUc10_GXAlphaOp10_GXCompareUc +/* 8020769C 002045FC 38 60 00 00 */ li r3, 0 +/* 802076A0 00204600 38 80 00 00 */ li r4, 0 +/* 802076A4 00204604 38 A0 00 01 */ li r5, 1 +/* 802076A8 00204608 48 17 41 89 */ bl GXSetTevSwapMode +/* 802076AC 0020460C 38 60 00 00 */ li r3, 0 +/* 802076B0 00204610 38 80 00 1C */ li r4, 0x1c +/* 802076B4 00204614 48 10 13 2D */ bl SetTevKColorSel__3CGXF13_GXTevStageID15_GXTevKColorSel +/* 802076B8 00204618 38 60 00 00 */ li r3, 0 +/* 802076BC 0020461C 38 80 00 1C */ li r4, 0x1c +/* 802076C0 00204620 48 10 12 DD */ bl SetTevKAlphaSel__3CGXF13_GXTevStageID15_GXTevKAlphaSel +/* 802076C4 00204624 38 60 00 00 */ li r3, 0 +/* 802076C8 00204628 38 80 00 0F */ li r4, 0xf +/* 802076CC 0020462C 38 A0 00 08 */ li r5, 8 +/* 802076D0 00204630 38 C0 00 0E */ li r6, 0xe +/* 802076D4 00204634 38 E0 00 0F */ li r7, 0xf +/* 802076D8 00204638 48 10 15 15 */ bl SetTevColorIn__3CGXF13_GXTevStageID14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg +/* 802076DC 0020463C 38 60 00 00 */ li r3, 0 +/* 802076E0 00204640 38 80 00 07 */ li r4, 7 +/* 802076E4 00204644 38 A0 00 04 */ li r5, 4 +/* 802076E8 00204648 38 C0 00 06 */ li r6, 6 +/* 802076EC 0020464C 38 E0 00 07 */ li r7, 7 +/* 802076F0 00204650 48 10 14 A5 */ bl SetTevAlphaIn__3CGXF13_GXTevStageID14_GXTevAlphaArg14_GXTevAlphaArg14_GXTevAlphaArg14_GXTevAlphaArg +/* 802076F4 00204654 38 60 00 01 */ li r3, 1 +/* 802076F8 00204658 48 10 17 1D */ bl SetNumTexGens__3CGXFUc +/* 802076FC 0020465C 38 60 00 00 */ li r3, 0 +/* 80207700 00204660 48 10 17 51 */ bl SetNumChans__3CGXFUc +/* 80207704 00204664 38 60 00 00 */ li r3, 0 +/* 80207708 00204668 38 80 00 01 */ li r4, 1 +/* 8020770C 0020466C 38 A0 00 04 */ li r5, 4 +/* 80207710 00204670 38 C0 00 3C */ li r6, 0x3c +/* 80207714 00204674 38 E0 00 00 */ li r7, 0 +/* 80207718 00204678 39 00 00 7D */ li r8, 0x7d +/* 8020771C 0020467C 48 10 0F B1 */ bl SetTexCoordGen__3CGXF13_GXTexCoordID13_GXTexGenType12_GXTexGenSrc9_GXTexMtxUc11_GXPTTexMtx +/* 80207720 00204680 80 1F 00 00 */ lwz r0, 0(r31) +/* 80207724 00204684 2C 00 00 01 */ cmpwi r0, 1 +/* 80207728 00204688 41 82 00 20 */ beq lbl_80207748 +/* 8020772C 0020468C 40 80 00 70 */ bge lbl_8020779C +/* 80207730 00204690 2C 00 00 00 */ cmpwi r0, 0 +/* 80207734 00204694 40 80 00 08 */ bge lbl_8020773C +/* 80207738 00204698 48 00 00 64 */ b lbl_8020779C +lbl_8020773C: +/* 8020773C 0020469C 38 60 00 01 */ li r3, 1 +/* 80207740 002046A0 48 10 15 51 */ bl SetNumTevStages__3CGXFUc +/* 80207744 002046A4 48 00 00 58 */ b lbl_8020779C +lbl_80207748: +/* 80207748 002046A8 38 60 00 01 */ li r3, 1 +/* 8020774C 002046AC 48 10 05 05 */ bl SetStandardTevColorAlphaOp__3CGXF13_GXTevStageID +/* 80207750 002046B0 38 60 00 01 */ li r3, 1 +/* 80207754 002046B4 38 80 00 00 */ li r4, 0 +/* 80207758 002046B8 38 A0 00 00 */ li r5, 0 +/* 8020775C 002046BC 38 C0 00 FF */ li r6, 0xff +/* 80207760 002046C0 48 10 11 ED */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 80207764 002046C4 38 60 00 01 */ li r3, 1 +/* 80207768 002046C8 38 80 00 0F */ li r4, 0xf +/* 8020776C 002046CC 38 A0 00 09 */ li r5, 9 +/* 80207770 002046D0 38 C0 00 00 */ li r6, 0 +/* 80207774 002046D4 38 E0 00 0F */ li r7, 0xf +/* 80207778 002046D8 48 10 14 75 */ bl SetTevColorIn__3CGXF13_GXTevStageID14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg +/* 8020777C 002046DC 38 60 00 01 */ li r3, 1 +/* 80207780 002046E0 38 80 00 07 */ li r4, 7 +/* 80207784 002046E4 38 A0 00 04 */ li r5, 4 +/* 80207788 002046E8 38 C0 00 00 */ li r6, 0 +/* 8020778C 002046EC 38 E0 00 07 */ li r7, 7 +/* 80207790 002046F0 48 10 14 05 */ bl SetTevAlphaIn__3CGXF13_GXTevStageID14_GXTevAlphaArg14_GXTevAlphaArg14_GXTevAlphaArg14_GXTevAlphaArg +/* 80207794 002046F4 38 60 00 02 */ li r3, 2 +/* 80207798 002046F8 48 10 14 F9 */ bl SetNumTevStages__3CGXFUc +lbl_8020779C: +/* 8020779C 002046FC 3C 60 80 3D */ lis r3, lbl_803D2720@ha +/* 802077A0 00204700 38 63 27 20 */ addi r3, r3, lbl_803D2720@l +/* 802077A4 00204704 48 10 06 85 */ bl SetVtxDescv__3CGXFPC14_GXVtxDescList +/* 802077A8 00204708 48 00 00 68 */ b lbl_80207810 +lbl_802077AC: +/* 802077AC 0020470C 80 1F 00 00 */ lwz r0, 0(r31) +/* 802077B0 00204710 2C 00 00 01 */ cmpwi r0, 1 +/* 802077B4 00204714 41 82 00 2C */ beq lbl_802077E0 +/* 802077B8 00204718 40 80 00 3C */ bge lbl_802077F4 +/* 802077BC 0020471C 2C 00 00 00 */ cmpwi r0, 0 +/* 802077C0 00204720 40 80 00 08 */ bge lbl_802077C8 +/* 802077C4 00204724 48 00 00 30 */ b lbl_802077F4 +lbl_802077C8: +/* 802077C8 00204728 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 802077CC 0020472C 81 83 00 00 */ lwz r12, 0(r3) +/* 802077D0 00204730 81 8C 00 64 */ lwz r12, 0x64(r12) +/* 802077D4 00204734 7D 89 03 A6 */ mtctr r12 +/* 802077D8 00204738 4E 80 04 21 */ bctrl +/* 802077DC 0020473C 48 00 00 18 */ b lbl_802077F4 +lbl_802077E0: +/* 802077E0 00204740 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 802077E4 00204744 81 83 00 00 */ lwz r12, 0(r3) +/* 802077E8 00204748 81 8C 00 68 */ lwz r12, 0x68(r12) +/* 802077EC 0020474C 7D 89 03 A6 */ mtctr r12 +/* 802077F0 00204750 4E 80 04 21 */ bctrl +lbl_802077F4: +/* 802077F4 00204754 3C 80 80 5A */ lis r4, lbl_805A5EBC@ha +/* 802077F8 00204758 38 60 00 00 */ li r3, 0 +/* 802077FC 0020475C 38 84 5E BC */ addi r4, r4, lbl_805A5EBC@l +/* 80207800 00204760 48 10 2A B9 */ bl SetTevOp__9CGraphicsF12ERglTevStageRCQ213CTevCombiners8CTevPass +/* 80207804 00204764 80 8D 9C 68 */ lwz r4, lbl_805A8828@sda21(r13) +/* 80207808 00204768 38 60 00 01 */ li r3, 1 +/* 8020780C 0020476C 48 10 2A AD */ bl SetTevOp__9CGraphicsF12ERglTevStageRCQ213CTevCombiners8CTevPass +lbl_80207810: +/* 80207810 00204770 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80207814 00204774 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80207818 00204778 7C 08 03 A6 */ mtlr r0 +/* 8020781C 0020477C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80207820 00204780 4E 80 00 20 */ blr + +.global sub_80207824 +sub_80207824: +/* 80207824 00204784 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80207828 00204788 7C 08 02 A6 */ mflr r0 +/* 8020782C 0020478C 90 01 00 64 */ stw r0, 0x64(r1) +/* 80207830 00204790 DB E1 00 50 */ stfd f31, 0x50(r1) +/* 80207834 00204794 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 80207838 00204798 DB C1 00 40 */ stfd f30, 0x40(r1) +/* 8020783C 0020479C F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0 +/* 80207840 002047A0 DB A1 00 30 */ stfd f29, 0x30(r1) +/* 80207844 002047A4 F3 A1 00 38 */ psq_st f29, 56(r1), 0, qr0 +/* 80207848 002047A8 DB 81 00 20 */ stfd f28, 0x20(r1) +/* 8020784C 002047AC F3 81 00 28 */ psq_st f28, 40(r1), 0, qr0 +/* 80207850 002047B0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80207854 002047B4 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80207858 002047B8 FF 80 08 90 */ fmr f28, f1 +/* 8020785C 002047BC 7C 7E 1B 78 */ mr r30, r3 +/* 80207860 002047C0 FF A0 10 90 */ fmr f29, f2 +/* 80207864 002047C4 7C 9F 23 78 */ mr r31, r4 +/* 80207868 002047C8 38 60 00 98 */ li r3, 0x98 +/* 8020786C 002047CC 48 10 3D FD */ bl StreamBegin__9CGraphicsF13ERglPrimitive +/* 80207870 002047D0 88 7F 00 03 */ lbz r3, 3(r31) +/* 80207874 002047D4 3C 00 43 30 */ lis r0, 0x4330 +/* 80207878 002047D8 90 01 00 10 */ stw r0, 0x10(r1) +/* 8020787C 002047DC C8 22 B0 F0 */ lfd f1, lbl_805ACE10@sda21(r2) +/* 80207880 002047E0 90 61 00 14 */ stw r3, 0x14(r1) +/* 80207884 002047E4 C0 5E 00 24 */ lfs f2, 0x24(r30) +/* 80207888 002047E8 C8 01 00 10 */ lfd f0, 0x10(r1) +/* 8020788C 002047EC EC 00 08 28 */ fsubs f0, f0, f1 +/* 80207890 002047F0 EF E2 00 32 */ fmuls f31, f2, f0 +/* 80207894 002047F4 F3 E1 A0 08 */ psq_st f31, 8(r1), 1, qr2 +/* 80207898 002047F8 38 61 00 0C */ addi r3, r1, 0xc +/* 8020789C 002047FC 80 9F 00 00 */ lwz r4, 0(r31) +/* 802078A0 00204800 88 01 00 08 */ lbz r0, 8(r1) +/* 802078A4 00204804 50 80 00 2E */ rlwimi r0, r4, 0, 0, 0x17 +/* 802078A8 00204808 90 01 00 0C */ stw r0, 0xc(r1) +/* 802078AC 0020480C 48 10 3C 9D */ bl StreamColor__9CGraphicsFRC6CColor +/* 802078B0 00204810 C0 22 B0 E8 */ lfs f1, lbl_805ACE08@sda21(r2) +/* 802078B4 00204814 C0 42 B0 EC */ lfs f2, lbl_805ACE0C@sda21(r2) +/* 802078B8 00204818 48 10 3B AD */ bl StreamTexcoord__9CGraphicsFff +/* 802078BC 0020481C EC 3C E8 28 */ fsubs f1, f28, f29 +/* 802078C0 00204820 C0 42 B0 E8 */ lfs f2, lbl_805ACE08@sda21(r2) +/* 802078C4 00204824 EC 7D E0 2A */ fadds f3, f29, f28 +/* 802078C8 00204828 48 10 3D 71 */ bl StreamVertex__9CGraphicsFfff +/* 802078CC 0020482C C0 22 B0 EC */ lfs f1, lbl_805ACE0C@sda21(r2) +/* 802078D0 00204830 FC 40 08 90 */ fmr f2, f1 +/* 802078D4 00204834 48 10 3B 91 */ bl StreamTexcoord__9CGraphicsFff +/* 802078D8 00204838 EF DC E8 2A */ fadds f30, f28, f29 +/* 802078DC 0020483C C0 42 B0 E8 */ lfs f2, lbl_805ACE08@sda21(r2) +/* 802078E0 00204840 EF FD E0 28 */ fsubs f31, f29, f28 +/* 802078E4 00204844 FC 20 F0 90 */ fmr f1, f30 +/* 802078E8 00204848 FC 60 F8 90 */ fmr f3, f31 +/* 802078EC 0020484C 48 10 3D 4D */ bl StreamVertex__9CGraphicsFfff +/* 802078F0 00204850 C0 22 B0 E8 */ lfs f1, lbl_805ACE08@sda21(r2) +/* 802078F4 00204854 FC 40 08 90 */ fmr f2, f1 +/* 802078F8 00204858 48 10 3B 6D */ bl StreamTexcoord__9CGraphicsFff +/* 802078FC 0020485C FC 20 F0 50 */ fneg f1, f30 +/* 80207900 00204860 C0 42 B0 E8 */ lfs f2, lbl_805ACE08@sda21(r2) +/* 80207904 00204864 FC 60 F8 50 */ fneg f3, f31 +/* 80207908 00204868 48 10 3D 31 */ bl StreamVertex__9CGraphicsFfff +/* 8020790C 0020486C C0 22 B0 EC */ lfs f1, lbl_805ACE0C@sda21(r2) +/* 80207910 00204870 C0 42 B0 E8 */ lfs f2, lbl_805ACE08@sda21(r2) +/* 80207914 00204874 48 10 3B 51 */ bl StreamTexcoord__9CGraphicsFff +/* 80207918 00204878 FC 20 E0 50 */ fneg f1, f28 +/* 8020791C 0020487C C0 42 B0 E8 */ lfs f2, lbl_805ACE08@sda21(r2) +/* 80207920 00204880 FC 00 E8 50 */ fneg f0, f29 +/* 80207924 00204884 EC 21 E8 2A */ fadds f1, f1, f29 +/* 80207928 00204888 EC 60 E0 28 */ fsubs f3, f0, f28 +/* 8020792C 0020488C 48 10 3D 0D */ bl StreamVertex__9CGraphicsFfff +/* 80207930 00204890 48 10 3A E1 */ bl StreamEnd__9CGraphicsFv +/* 80207934 00204894 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 +/* 80207938 00204898 CB E1 00 50 */ lfd f31, 0x50(r1) +/* 8020793C 0020489C E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0 +/* 80207940 002048A0 CB C1 00 40 */ lfd f30, 0x40(r1) +/* 80207944 002048A4 E3 A1 00 38 */ psq_l f29, 56(r1), 0, qr0 +/* 80207948 002048A8 CB A1 00 30 */ lfd f29, 0x30(r1) +/* 8020794C 002048AC E3 81 00 28 */ psq_l f28, 40(r1), 0, qr0 +/* 80207950 002048B0 CB 81 00 20 */ lfd f28, 0x20(r1) +/* 80207954 002048B4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80207958 002048B8 80 01 00 64 */ lwz r0, 0x64(r1) +/* 8020795C 002048BC 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80207960 002048C0 7C 08 03 A6 */ mtlr r0 +/* 80207964 002048C4 38 21 00 60 */ addi r1, r1, 0x60 +/* 80207968 002048C8 4E 80 00 20 */ blr + +.global sub_8020796c +sub_8020796c: +/* 8020796C 002048CC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80207970 002048D0 7C 08 02 A6 */ mflr r0 +/* 80207974 002048D4 90 01 00 34 */ stw r0, 0x34(r1) +/* 80207978 002048D8 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 8020797C 002048DC F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 80207980 002048E0 DB C1 00 10 */ stfd f30, 0x10(r1) +/* 80207984 002048E4 F3 C1 00 18 */ psq_st f30, 24(r1), 0, qr0 +/* 80207988 002048E8 80 04 00 00 */ lwz r0, 0(r4) +/* 8020798C 002048EC FF E0 08 90 */ fmr f31, f1 +/* 80207990 002048F0 FF C0 10 90 */ fmr f30, f2 +/* 80207994 002048F4 38 81 00 0C */ addi r4, r1, 0xc +/* 80207998 002048F8 90 01 00 0C */ stw r0, 0xc(r1) +/* 8020799C 002048FC E0 44 A0 00 */ psq_l f2, 0(r4), 1, qr2 +/* 802079A0 00204900 C0 02 B0 FC */ lfs f0, lbl_805ACE1C@sda21(r2) +/* 802079A4 00204904 C0 23 00 24 */ lfs f1, 0x24(r3) +/* 802079A8 00204908 EC 00 00 B2 */ fmuls f0, f0, f2 +/* 802079AC 0020490C C0 42 B0 F8 */ lfs f2, lbl_805ACE18@sda21(r2) +/* 802079B0 00204910 EC 01 00 32 */ fmuls f0, f1, f0 +/* 802079B4 00204914 EC 62 00 32 */ fmuls f3, f2, f0 +/* 802079B8 00204918 F0 61 A0 08 */ psq_st f3, 8(r1), 1, qr2 +/* 802079BC 0020491C 38 60 00 00 */ li r3, 0 +/* 802079C0 00204920 88 01 00 08 */ lbz r0, 8(r1) +/* 802079C4 00204924 98 01 00 0F */ stb r0, 0xf(r1) +/* 802079C8 00204928 48 10 12 7D */ bl SetTevKColor__3CGXF14_GXTevKColorIDRC8_GXColor +/* 802079CC 0020492C 38 60 00 98 */ li r3, 0x98 +/* 802079D0 00204930 38 80 00 00 */ li r4, 0 +/* 802079D4 00204934 38 A0 00 04 */ li r5, 4 +/* 802079D8 00204938 48 10 0B AD */ bl Begin__3CGXF12_GXPrimitive9_GXVtxFmtUs +/* 802079DC 0020493C EC 1F F0 28 */ fsubs f0, f31, f30 +/* 802079E0 00204940 3C 60 CC 01 */ lis r3, 0xCC008000@ha +/* 802079E4 00204944 EC BE F8 2A */ fadds f5, f30, f31 +/* 802079E8 00204948 C0 C2 B0 E8 */ lfs f6, lbl_805ACE08@sda21(r2) +/* 802079EC 0020494C EC FE F8 28 */ fsubs f7, f30, f31 +/* 802079F0 00204950 C0 82 B0 EC */ lfs f4, lbl_805ACE0C@sda21(r2) +/* 802079F4 00204954 D0 03 80 00 */ stfs f0, 0xCC008000@l(r3) +/* 802079F8 00204958 FC 20 F8 50 */ fneg f1, f31 +/* 802079FC 0020495C FC 00 F0 50 */ fneg f0, f30 +/* 80207A00 00204960 D0 C3 80 00 */ stfs f6, 0xCC008000@l(r3) +/* 80207A04 00204964 FC 60 28 50 */ fneg f3, f5 +/* 80207A08 00204968 FC 40 38 50 */ fneg f2, f7 +/* 80207A0C 0020496C D0 A3 80 00 */ stfs f5, 0xCC008000@l(r3) +/* 80207A10 00204970 EC 21 F0 2A */ fadds f1, f1, f30 +/* 80207A14 00204974 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 80207A18 00204978 D0 C3 80 00 */ stfs f6, 0xCC008000@l(r3) +/* 80207A1C 0020497C D0 83 80 00 */ stfs f4, 0xCC008000@l(r3) +/* 80207A20 00204980 D0 A3 80 00 */ stfs f5, 0xCC008000@l(r3) +/* 80207A24 00204984 D0 C3 80 00 */ stfs f6, 0xCC008000@l(r3) +/* 80207A28 00204988 D0 E3 80 00 */ stfs f7, 0xCC008000@l(r3) +/* 80207A2C 0020498C D0 83 80 00 */ stfs f4, 0xCC008000@l(r3) +/* 80207A30 00204990 D0 83 80 00 */ stfs f4, 0xCC008000@l(r3) +/* 80207A34 00204994 D0 63 80 00 */ stfs f3, 0xCC008000@l(r3) +/* 80207A38 00204998 D0 C3 80 00 */ stfs f6, 0xCC008000@l(r3) +/* 80207A3C 0020499C D0 43 80 00 */ stfs f2, 0xCC008000@l(r3) +/* 80207A40 002049A0 D0 C3 80 00 */ stfs f6, 0xCC008000@l(r3) +/* 80207A44 002049A4 D0 C3 80 00 */ stfs f6, 0xCC008000@l(r3) +/* 80207A48 002049A8 D0 23 80 00 */ stfs f1, 0xCC008000@l(r3) +/* 80207A4C 002049AC D0 C3 80 00 */ stfs f6, 0xCC008000@l(r3) +/* 80207A50 002049B0 D0 03 80 00 */ stfs f0, 0xCC008000@l(r3) +/* 80207A54 002049B4 D0 83 80 00 */ stfs f4, 0xCC008000@l(r3) +/* 80207A58 002049B8 D0 C3 80 00 */ stfs f6, 0xCC008000@l(r3) +/* 80207A5C 002049BC 48 10 0B 25 */ bl End__3CGXFv +/* 80207A60 002049C0 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 80207A64 002049C4 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 80207A68 002049C8 E3 C1 00 18 */ psq_l f30, 24(r1), 0, qr0 +/* 80207A6C 002049CC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80207A70 002049D0 CB C1 00 10 */ lfd f30, 0x10(r1) +/* 80207A74 002049D4 7C 08 03 A6 */ mtlr r0 +/* 80207A78 002049D8 38 21 00 30 */ addi r1, r1, 0x30 +/* 80207A7C 002049DC 4E 80 00 20 */ blr + +.global Render__11CVisorFlareCFRC9CVector3fRC13CStateManager +Render__11CVisorFlareCFRC9CVector3fRC13CStateManager: +/* 80207A80 002049E0 94 21 FD F0 */ stwu r1, -0x210(r1) +/* 80207A84 002049E4 7C 08 02 A6 */ mflr r0 +/* 80207A88 002049E8 90 01 02 14 */ stw r0, 0x214(r1) +/* 80207A8C 002049EC DB E1 02 00 */ stfd f31, 0x200(r1) +/* 80207A90 002049F0 F3 E1 02 08 */ psq_st f31, 520(r1), 0, qr0 +/* 80207A94 002049F4 DB C1 01 F0 */ stfd f30, 0x1f0(r1) +/* 80207A98 002049F8 F3 C1 01 F8 */ psq_st f30, 504(r1), 0, qr0 +/* 80207A9C 002049FC DB A1 01 E0 */ stfd f29, 0x1e0(r1) +/* 80207AA0 00204A00 F3 A1 01 E8 */ psq_st f29, 488(r1), 0, qr0 +/* 80207AA4 00204A04 DB 81 01 D0 */ stfd f28, 0x1d0(r1) +/* 80207AA8 00204A08 F3 81 01 D8 */ psq_st f28, 472(r1), 0, qr0 +/* 80207AAC 00204A0C DB 61 01 C0 */ stfd f27, 0x1c0(r1) +/* 80207AB0 00204A10 F3 61 01 C8 */ psq_st f27, 456(r1), 0, qr0 +/* 80207AB4 00204A14 DB 41 01 B0 */ stfd f26, 0x1b0(r1) +/* 80207AB8 00204A18 F3 41 01 B8 */ psq_st f26, 440(r1), 0, qr0 +/* 80207ABC 00204A1C DB 21 01 A0 */ stfd f25, 0x1a0(r1) +/* 80207AC0 00204A20 F3 21 01 A8 */ psq_st f25, 424(r1), 0, qr0 +/* 80207AC4 00204A24 DB 01 01 90 */ stfd f24, 0x190(r1) +/* 80207AC8 00204A28 F3 01 01 98 */ psq_st f24, 408(r1), 0, qr0 +/* 80207ACC 00204A2C DA E1 01 80 */ stfd f23, 0x180(r1) +/* 80207AD0 00204A30 F2 E1 01 88 */ psq_st f23, 392(r1), 0, qr0 +/* 80207AD4 00204A34 BF 01 01 60 */ stmw r24, 0x160(r1) +/* 80207AD8 00204A38 7C 7E 1B 78 */ mr r30, r3 +/* 80207ADC 00204A3C C0 02 B1 00 */ lfs f0, lbl_805ACE20@sda21(r2) +/* 80207AE0 00204A40 C0 43 00 28 */ lfs f2, 0x28(r3) +/* 80207AE4 00204A44 7C 99 23 78 */ mr r25, r4 +/* 80207AE8 00204A48 C0 23 00 18 */ lfs f1, 0x18(r3) +/* 80207AEC 00204A4C 7C BF 2B 78 */ mr r31, r5 +/* 80207AF0 00204A50 EC 22 08 28 */ fsubs f1, f2, f1 +/* 80207AF4 00204A54 FC 20 0A 10 */ fabs f1, f1 +/* 80207AF8 00204A58 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80207AFC 00204A5C 41 80 04 00 */ blt lbl_80207EFC +/* 80207B00 00204A60 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 80207B04 00204A64 80 03 02 F8 */ lwz r0, 0x2f8(r3) +/* 80207B08 00204A68 2C 00 00 00 */ cmpwi r0, 0 +/* 80207B0C 00204A6C 41 82 00 08 */ beq lbl_80207B14 +/* 80207B10 00204A70 48 00 03 EC */ b lbl_80207EFC +lbl_80207B14: +/* 80207B14 00204A74 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 80207B18 00204A78 7F E4 FB 78 */ mr r4, r31 +/* 80207B1C 00204A7C 80 63 00 00 */ lwz r3, 0(r3) +/* 80207B20 00204A80 4B E8 9A 39 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager +/* 80207B24 00204A84 2C 03 00 03 */ cmpwi r3, 3 +/* 80207B28 00204A88 41 82 00 24 */ beq lbl_80207B4C +/* 80207B2C 00204A8C 40 80 03 D0 */ bge lbl_80207EFC +/* 80207B30 00204A90 2C 03 00 00 */ cmpwi r3, 0 +/* 80207B34 00204A94 41 82 00 08 */ beq lbl_80207B3C +/* 80207B38 00204A98 48 00 03 C4 */ b lbl_80207EFC +lbl_80207B3C: +/* 80207B3C 00204A9C 80 1E 00 30 */ lwz r0, 0x30(r30) +/* 80207B40 00204AA0 2C 00 00 00 */ cmpwi r0, 0 +/* 80207B44 00204AA4 41 82 00 1C */ beq lbl_80207B60 +/* 80207B48 00204AA8 48 00 03 B4 */ b lbl_80207EFC +lbl_80207B4C: +/* 80207B4C 00204AAC 80 1E 00 2C */ lwz r0, 0x2c(r30) +/* 80207B50 00204AB0 2C 00 00 00 */ cmpwi r0, 0 +/* 80207B54 00204AB4 41 82 00 0C */ beq lbl_80207B60 +/* 80207B58 00204AB8 48 00 03 A4 */ b lbl_80207EFC +/* 80207B5C 00204ABC 48 00 03 A0 */ b lbl_80207EFC +lbl_80207B60: +/* 80207B60 00204AC0 48 10 4E 1D */ bl DisableAllLights__9CGraphicsFv +/* 80207B64 00204AC4 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 80207B68 00204AC8 38 80 00 00 */ li r4, 0 +/* 80207B6C 00204ACC 38 A0 00 00 */ li r5, 0 +/* 80207B70 00204AD0 81 83 00 00 */ lwz r12, 0(r3) +/* 80207B74 00204AD4 81 8C 00 60 */ lwz r12, 0x60(r12) +/* 80207B78 00204AD8 7D 89 03 A6 */ mtctr r12 +/* 80207B7C 00204ADC 4E 80 04 21 */ bctrl +/* 80207B80 00204AE0 80 7F 08 70 */ lwz r3, 0x870(r31) +/* 80207B84 00204AE4 7F E4 FB 78 */ mr r4, r31 +/* 80207B88 00204AE8 4B E0 3F 91 */ bl GetCurrentCamera__14CCameraManagerCFR13CStateManager +/* 80207B8C 00204AEC 7C 7D 1B 78 */ mr r29, r3 +/* 80207B90 00204AF0 3C 60 80 5A */ lis r3, lbl_805A61D4@ha +/* 80207B94 00204AF4 C0 BD 00 60 */ lfs f5, 0x60(r29) +/* 80207B98 00204AF8 38 83 61 D4 */ addi r4, r3, lbl_805A61D4@l +/* 80207B9C 00204AFC C0 9D 00 50 */ lfs f4, 0x50(r29) +/* 80207BA0 00204B00 38 61 01 30 */ addi r3, r1, 0x130 +/* 80207BA4 00204B04 C0 7D 00 40 */ lfs f3, 0x40(r29) +/* 80207BA8 00204B08 C0 59 00 00 */ lfs f2, 0(r25) +/* 80207BAC 00204B0C C0 39 00 04 */ lfs f1, 4(r25) +/* 80207BB0 00204B10 C0 19 00 08 */ lfs f0, 8(r25) +/* 80207BB4 00204B14 D0 61 00 94 */ stfs f3, 0x94(r1) +/* 80207BB8 00204B18 D0 81 00 98 */ stfs f4, 0x98(r1) +/* 80207BBC 00204B1C D0 A1 00 9C */ stfs f5, 0x9c(r1) +/* 80207BC0 00204B20 D0 41 00 88 */ stfs f2, 0x88(r1) +/* 80207BC4 00204B24 D0 21 00 8C */ stfs f1, 0x8c(r1) +/* 80207BC8 00204B28 D0 01 00 90 */ stfs f0, 0x90(r1) +/* 80207BCC 00204B2C 48 10 AF A9 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80207BD0 00204B30 38 61 00 D0 */ addi r3, r1, 0xd0 +/* 80207BD4 00204B34 38 81 01 30 */ addi r4, r1, 0x130 +/* 80207BD8 00204B38 48 10 AB 09 */ bl GetInverse__12CTransform4fCFv +/* 80207BDC 00204B3C 38 61 00 4C */ addi r3, r1, 0x4c +/* 80207BE0 00204B40 38 81 00 D0 */ addi r4, r1, 0xd0 +/* 80207BE4 00204B44 38 A1 00 88 */ addi r5, r1, 0x88 +/* 80207BE8 00204B48 48 10 AF 01 */ bl __ml__12CTransform4fCFRC9CVector3f +/* 80207BEC 00204B4C C0 61 00 4C */ lfs f3, 0x4c(r1) +/* 80207BF0 00204B50 38 61 00 40 */ addi r3, r1, 0x40 +/* 80207BF4 00204B54 C0 21 00 54 */ lfs f1, 0x54(r1) +/* 80207BF8 00204B58 38 81 01 30 */ addi r4, r1, 0x130 +/* 80207BFC 00204B5C C0 41 00 50 */ lfs f2, 0x50(r1) +/* 80207C00 00204B60 FC 00 18 50 */ fneg f0, f3 +/* 80207C04 00204B64 D0 61 00 7C */ stfs f3, 0x7c(r1) +/* 80207C08 00204B68 FC 60 08 50 */ fneg f3, f1 +/* 80207C0C 00204B6C 38 A1 00 7C */ addi r5, r1, 0x7c +/* 80207C10 00204B70 D0 41 00 80 */ stfs f2, 0x80(r1) +/* 80207C14 00204B74 D0 21 00 84 */ stfs f1, 0x84(r1) +/* 80207C18 00204B78 D0 01 00 7C */ stfs f0, 0x7c(r1) +/* 80207C1C 00204B7C D0 41 00 80 */ stfs f2, 0x80(r1) +/* 80207C20 00204B80 D0 61 00 84 */ stfs f3, 0x84(r1) +/* 80207C24 00204B84 48 10 AE C5 */ bl __ml__12CTransform4fCFRC9CVector3f +/* 80207C28 00204B88 C0 1E 00 24 */ lfs f0, 0x24(r30) +/* 80207C2C 00204B8C C0 42 B0 E8 */ lfs f2, lbl_805ACE08@sda21(r2) +/* 80207C30 00204B90 C0 A1 00 88 */ lfs f5, 0x88(r1) +/* 80207C34 00204B94 EC 00 10 28 */ fsubs f0, f0, f2 +/* 80207C38 00204B98 C0 21 00 94 */ lfs f1, 0x94(r1) +/* 80207C3C 00204B9C C0 81 00 8C */ lfs f4, 0x8c(r1) +/* 80207C40 00204BA0 C0 61 00 98 */ lfs f3, 0x98(r1) +/* 80207C44 00204BA4 EC A5 08 28 */ fsubs f5, f5, f1 +/* 80207C48 00204BA8 FC 00 02 10 */ fabs f0, f0 +/* 80207C4C 00204BAC C0 22 B1 00 */ lfs f1, lbl_805ACE20@sda21(r2) +/* 80207C50 00204BB0 EC 64 18 28 */ fsubs f3, f4, f3 +/* 80207C54 00204BB4 C3 A1 00 40 */ lfs f29, 0x40(r1) +/* 80207C58 00204BB8 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80207C5C 00204BBC C3 81 00 44 */ lfs f28, 0x44(r1) +/* 80207C60 00204BC0 C3 61 00 48 */ lfs f27, 0x48(r1) +/* 80207C64 00204BC4 C3 5D 00 48 */ lfs f26, 0x48(r29) +/* 80207C68 00204BC8 C3 1D 00 38 */ lfs f24, 0x38(r29) +/* 80207C6C 00204BCC 41 80 02 90 */ blt lbl_80207EFC +/* 80207C70 00204BD0 C0 1E 00 20 */ lfs f0, 0x20(r30) +/* 80207C74 00204BD4 FF 20 10 90 */ fmr f25, f2 +/* 80207C78 00204BD8 EC 00 10 28 */ fsubs f0, f0, f2 +/* 80207C7C 00204BDC FC 00 02 10 */ fabs f0, f0 +/* 80207C80 00204BE0 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80207C84 00204BE4 41 80 00 80 */ blt lbl_80207D04 +/* 80207C88 00204BE8 D0 A1 00 28 */ stfs f5, 0x28(r1) +/* 80207C8C 00204BEC 38 61 00 34 */ addi r3, r1, 0x34 +/* 80207C90 00204BF0 38 81 00 28 */ addi r4, r1, 0x28 +/* 80207C94 00204BF4 D0 61 00 2C */ stfs f3, 0x2c(r1) +/* 80207C98 00204BF8 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 80207C9C 00204BFC 48 10 CB B5 */ bl AsNormalized__9CVector3fCFv +/* 80207CA0 00204C00 C0 02 B0 E8 */ lfs f0, lbl_805ACE08@sda21(r2) +/* 80207CA4 00204C04 38 61 00 1C */ addi r3, r1, 0x1c +/* 80207CA8 00204C08 D3 01 00 10 */ stfs f24, 0x10(r1) +/* 80207CAC 00204C0C 38 81 00 10 */ addi r4, r1, 0x10 +/* 80207CB0 00204C10 C3 01 00 34 */ lfs f24, 0x34(r1) +/* 80207CB4 00204C14 D3 41 00 14 */ stfs f26, 0x14(r1) +/* 80207CB8 00204C18 C3 21 00 38 */ lfs f25, 0x38(r1) +/* 80207CBC 00204C1C D0 01 00 18 */ stfs f0, 0x18(r1) +/* 80207CC0 00204C20 C3 41 00 3C */ lfs f26, 0x3c(r1) +/* 80207CC4 00204C24 48 10 CB 8D */ bl AsNormalized__9CVector3fCFv +/* 80207CC8 00204C28 C3 C1 00 20 */ lfs f30, 0x20(r1) +/* 80207CCC 00204C2C C3 E1 00 1C */ lfs f31, 0x1c(r1) +/* 80207CD0 00204C30 EC 19 07 B2 */ fmuls f0, f25, f30 +/* 80207CD4 00204C34 C0 21 00 24 */ lfs f1, 0x24(r1) +/* 80207CD8 00204C38 EC 18 07 FA */ fmadds f0, f24, f31, f0 +/* 80207CDC 00204C3C EC 3A 00 7A */ fmadds f1, f26, f1, f0 +/* 80207CE0 00204C40 48 10 D6 B1 */ bl ArcCosineR__5CMathFf +/* 80207CE4 00204C44 EC 5F 06 72 */ fmuls f2, f31, f25 +/* 80207CE8 00204C48 C0 02 B0 E8 */ lfs f0, lbl_805ACE08@sda21(r2) +/* 80207CEC 00204C4C EC 58 17 B8 */ fmsubs f2, f24, f30, f2 +/* 80207CF0 00204C50 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80207CF4 00204C54 40 80 00 08 */ bge lbl_80207CFC +/* 80207CF8 00204C58 FC 20 08 50 */ fneg f1, f1 +lbl_80207CFC: +/* 80207CFC 00204C5C C0 1E 00 20 */ lfs f0, 0x20(r30) +/* 80207D00 00204C60 EF 20 00 72 */ fmuls f25, f0, f1 +lbl_80207D04: +/* 80207D04 00204C64 80 1F 0F 34 */ lwz r0, 0xf34(r31) +/* 80207D08 00204C68 7F C3 F3 78 */ mr r3, r30 +/* 80207D0C 00204C6C 7F E4 FB 78 */ mr r4, r31 +/* 80207D10 00204C70 7C 00 00 34 */ cntlzw r0, r0 +/* 80207D14 00204C74 54 1A D9 7E */ srwi r26, r0, 5 +/* 80207D18 00204C78 4B FF F9 1D */ bl sub_80207634 +/* 80207D1C 00204C7C C0 02 B0 E8 */ lfs f0, lbl_805ACE08@sda21(r2) +/* 80207D20 00204C80 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 80207D24 00204C84 C3 C2 B0 EC */ lfs f30, lbl_805ACE0C@sda21(r2) +/* 80207D28 00204C88 3B A3 66 F4 */ addi r29, r3, lbl_805A66F4@l +/* 80207D2C 00204C8C EF 59 00 28 */ fsubs f26, f25, f0 +/* 80207D30 00204C90 C3 E2 B1 04 */ lfs f31, lbl_805ACE24@sda21(r2) +/* 80207D34 00204C94 3B 20 00 00 */ li r25, 0 +/* 80207D38 00204C98 3B 60 00 00 */ li r27, 0 +/* 80207D3C 00204C9C 48 00 01 A8 */ b lbl_80207EE4 +lbl_80207D40: +/* 80207D40 00204CA0 80 1E 00 10 */ lwz r0, 0x10(r30) +/* 80207D44 00204CA4 7F A6 EB 78 */ mr r6, r29 +/* 80207D48 00204CA8 C0 A1 00 8C */ lfs f5, 0x8c(r1) +/* 80207D4C 00204CAC 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 80207D50 00204CB0 7F 80 DA 14 */ add r28, r0, r27 +/* 80207D54 00204CB4 C0 61 00 90 */ lfs f3, 0x90(r1) +/* 80207D58 00204CB8 C0 1C 00 08 */ lfs f0, 8(r28) +/* 80207D5C 00204CBC 38 81 00 70 */ addi r4, r1, 0x70 +/* 80207D60 00204CC0 C0 21 00 88 */ lfs f1, 0x88(r1) +/* 80207D64 00204CC4 38 A1 00 94 */ addi r5, r1, 0x94 +/* 80207D68 00204CC8 EC DE 00 28 */ fsubs f6, f30, f0 +/* 80207D6C 00204CCC EC 9C 00 32 */ fmuls f4, f28, f0 +/* 80207D70 00204CD0 EC 5B 00 32 */ fmuls f2, f27, f0 +/* 80207D74 00204CD4 EC 1D 00 32 */ fmuls f0, f29, f0 +/* 80207D78 00204CD8 EC 85 21 BA */ fmadds f4, f5, f6, f4 +/* 80207D7C 00204CDC EC 43 11 BA */ fmadds f2, f3, f6, f2 +/* 80207D80 00204CE0 EC 01 01 BA */ fmadds f0, f1, f6, f0 +/* 80207D84 00204CE4 D0 81 00 74 */ stfs f4, 0x74(r1) +/* 80207D88 00204CE8 D0 01 00 70 */ stfs f0, 0x70(r1) +/* 80207D8C 00204CEC D0 41 00 78 */ stfs f2, 0x78(r1) +/* 80207D90 00204CF0 48 10 BD 81 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 80207D94 00204CF4 38 61 01 00 */ addi r3, r1, 0x100 +/* 80207D98 00204CF8 38 81 00 A0 */ addi r4, r1, 0xa0 +/* 80207D9C 00204CFC 48 10 AD D9 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80207DA0 00204D00 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 80207DA4 00204D04 38 81 01 00 */ addi r4, r1, 0x100 +/* 80207DA8 00204D08 81 83 00 00 */ lwz r12, 0(r3) +/* 80207DAC 00204D0C 81 8C 00 30 */ lwz r12, 0x30(r12) +/* 80207DB0 00204D10 7D 89 03 A6 */ mtctr r12 +/* 80207DB4 00204D14 4E 80 04 21 */ bctrl +/* 80207DB8 00204D18 C0 1E 00 24 */ lfs f0, 0x24(r30) +/* 80207DBC 00204D1C 88 1E 00 14 */ lbz r0, 0x14(r30) +/* 80207DC0 00204D20 EC 3F 00 32 */ fmuls f1, f31, f0 +/* 80207DC4 00204D24 C0 1C 00 0C */ lfs f0, 0xc(r28) +/* 80207DC8 00204D28 28 00 00 00 */ cmplwi r0, 0 +/* 80207DCC 00204D2C EF 01 00 32 */ fmuls f24, f1, f0 +/* 80207DD0 00204D30 41 82 00 50 */ beq lbl_80207E20 +/* 80207DD4 00204D34 C0 21 00 74 */ lfs f1, 0x74(r1) +/* 80207DD8 00204D38 38 61 00 64 */ addi r3, r1, 0x64 +/* 80207DDC 00204D3C C0 01 00 98 */ lfs f0, 0x98(r1) +/* 80207DE0 00204D40 C0 61 00 78 */ lfs f3, 0x78(r1) +/* 80207DE4 00204D44 C0 41 00 9C */ lfs f2, 0x9c(r1) +/* 80207DE8 00204D48 EC 81 00 28 */ fsubs f4, f1, f0 +/* 80207DEC 00204D4C C0 21 00 70 */ lfs f1, 0x70(r1) +/* 80207DF0 00204D50 C0 01 00 94 */ lfs f0, 0x94(r1) +/* 80207DF4 00204D54 EC 43 10 28 */ fsubs f2, f3, f2 +/* 80207DF8 00204D58 D0 81 00 68 */ stfs f4, 0x68(r1) +/* 80207DFC 00204D5C EC 01 00 28 */ fsubs f0, f1, f0 +/* 80207E00 00204D60 D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 80207E04 00204D64 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 80207E08 00204D68 48 10 C8 F1 */ bl CanBeNormalized__9CVector3fCFv +/* 80207E0C 00204D6C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80207E10 00204D70 41 82 00 10 */ beq lbl_80207E20 +/* 80207E14 00204D74 38 61 00 64 */ addi r3, r1, 0x64 +/* 80207E18 00204D78 48 10 CA A1 */ bl Magnitude__9CVector3fCFv +/* 80207E1C 00204D7C EF 18 00 72 */ fmuls f24, f24, f1 +lbl_80207E20: +/* 80207E20 00204D80 80 7C 00 00 */ lwz r3, 0(r28) +/* 80207E24 00204D84 80 03 00 10 */ lwz r0, 0x10(r3) +/* 80207E28 00204D88 28 00 00 00 */ cmplwi r0, 0 +/* 80207E2C 00204D8C 41 82 00 B0 */ beq lbl_80207EDC +/* 80207E30 00204D90 3B 01 00 58 */ addi r24, r1, 0x58 +/* 80207E34 00204D94 7F 84 E3 78 */ mr r4, r28 +/* 80207E38 00204D98 7F 03 C3 78 */ mr r3, r24 +/* 80207E3C 00204D9C 48 13 90 6D */ bl __ct__6CTokenFRC6CToken +/* 80207E40 00204DA0 7F 03 C3 78 */ mr r3, r24 +/* 80207E44 00204DA4 48 13 8F C9 */ bl GetObj__6CTokenFv +/* 80207E48 00204DA8 80 63 00 04 */ lwz r3, 4(r3) +/* 80207E4C 00204DAC 38 80 00 00 */ li r4, 0 +/* 80207E50 00204DB0 38 A0 00 01 */ li r5, 1 +/* 80207E54 00204DB4 90 61 00 60 */ stw r3, 0x60(r1) +/* 80207E58 00204DB8 48 10 78 E5 */ bl Load__8CTextureCF11_GXTexMapIDQ28CTexture10EClampMode +/* 80207E5C 00204DBC FC 20 D2 10 */ fabs f1, f26 +/* 80207E60 00204DC0 C0 02 B1 00 */ lfs f0, lbl_805ACE20@sda21(r2) +/* 80207E64 00204DC4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80207E68 00204DC8 40 80 00 10 */ bge lbl_80207E78 +/* 80207E6C 00204DCC FC 40 C0 90 */ fmr f2, f24 +/* 80207E70 00204DD0 C2 E2 B0 E8 */ lfs f23, lbl_805ACE08@sda21(r2) +/* 80207E74 00204DD4 48 00 00 24 */ b lbl_80207E98 +lbl_80207E78: +/* 80207E78 00204DD8 FC 20 C8 90 */ fmr f1, f25 +/* 80207E7C 00204DDC 48 18 CC 61 */ bl sin +/* 80207E80 00204DE0 FC 00 08 18 */ frsp f0, f1 +/* 80207E84 00204DE4 FC 20 C8 90 */ fmr f1, f25 +/* 80207E88 00204DE8 EE F8 00 32 */ fmuls f23, f24, f0 +/* 80207E8C 00204DEC 48 18 C5 65 */ bl cos +/* 80207E90 00204DF0 FC 00 08 18 */ frsp f0, f1 +/* 80207E94 00204DF4 EC 58 00 32 */ fmuls f2, f24, f0 +lbl_80207E98: +/* 80207E98 00204DF8 57 40 06 3F */ clrlwi. r0, r26, 0x18 +/* 80207E9C 00204DFC 80 7C 00 10 */ lwz r3, 0x10(r28) +/* 80207EA0 00204E00 41 82 00 1C */ beq lbl_80207EBC +/* 80207EA4 00204E04 FC 20 B8 90 */ fmr f1, f23 +/* 80207EA8 00204E08 90 61 00 0C */ stw r3, 0xc(r1) +/* 80207EAC 00204E0C 7F C3 F3 78 */ mr r3, r30 +/* 80207EB0 00204E10 38 81 00 0C */ addi r4, r1, 0xc +/* 80207EB4 00204E14 4B FF FA B9 */ bl sub_8020796c +/* 80207EB8 00204E18 48 00 00 18 */ b lbl_80207ED0 +lbl_80207EBC: +/* 80207EBC 00204E1C FC 20 B8 90 */ fmr f1, f23 +/* 80207EC0 00204E20 90 61 00 08 */ stw r3, 8(r1) +/* 80207EC4 00204E24 7F C3 F3 78 */ mr r3, r30 +/* 80207EC8 00204E28 38 81 00 08 */ addi r4, r1, 8 +/* 80207ECC 00204E2C 4B FF F9 59 */ bl sub_80207824 +lbl_80207ED0: +/* 80207ED0 00204E30 38 61 00 58 */ addi r3, r1, 0x58 +/* 80207ED4 00204E34 38 80 00 00 */ li r4, 0 +/* 80207ED8 00204E38 48 13 8F 69 */ bl __dt__6CTokenFv +lbl_80207EDC: +/* 80207EDC 00204E3C 3B 7B 00 14 */ addi r27, r27, 0x14 +/* 80207EE0 00204E40 3B 39 00 01 */ addi r25, r25, 1 +lbl_80207EE4: +/* 80207EE4 00204E44 80 1E 00 08 */ lwz r0, 8(r30) +/* 80207EE8 00204E48 7C 19 00 00 */ cmpw r25, r0 +/* 80207EEC 00204E4C 41 80 FE 54 */ blt lbl_80207D40 +/* 80207EF0 00204E50 7F C3 F3 78 */ mr r3, r30 +/* 80207EF4 00204E54 7F E4 FB 78 */ mr r4, r31 +/* 80207EF8 00204E58 4B FF F7 05 */ bl sub_802075fc +lbl_80207EFC: +/* 80207EFC 00204E5C E3 E1 02 08 */ psq_l f31, 520(r1), 0, qr0 +/* 80207F00 00204E60 CB E1 02 00 */ lfd f31, 0x200(r1) +/* 80207F04 00204E64 E3 C1 01 F8 */ psq_l f30, 504(r1), 0, qr0 +/* 80207F08 00204E68 CB C1 01 F0 */ lfd f30, 0x1f0(r1) +/* 80207F0C 00204E6C E3 A1 01 E8 */ psq_l f29, 488(r1), 0, qr0 +/* 80207F10 00204E70 CB A1 01 E0 */ lfd f29, 0x1e0(r1) +/* 80207F14 00204E74 E3 81 01 D8 */ psq_l f28, 472(r1), 0, qr0 +/* 80207F18 00204E78 CB 81 01 D0 */ lfd f28, 0x1d0(r1) +/* 80207F1C 00204E7C E3 61 01 C8 */ psq_l f27, 456(r1), 0, qr0 +/* 80207F20 00204E80 CB 61 01 C0 */ lfd f27, 0x1c0(r1) +/* 80207F24 00204E84 E3 41 01 B8 */ psq_l f26, 440(r1), 0, qr0 +/* 80207F28 00204E88 CB 41 01 B0 */ lfd f26, 0x1b0(r1) +/* 80207F2C 00204E8C E3 21 01 A8 */ psq_l f25, 424(r1), 0, qr0 +/* 80207F30 00204E90 CB 21 01 A0 */ lfd f25, 0x1a0(r1) +/* 80207F34 00204E94 E3 01 01 98 */ psq_l f24, 408(r1), 0, qr0 +/* 80207F38 00204E98 CB 01 01 90 */ lfd f24, 0x190(r1) +/* 80207F3C 00204E9C E2 E1 01 88 */ psq_l f23, 392(r1), 0, qr0 +/* 80207F40 00204EA0 CA E1 01 80 */ lfd f23, 0x180(r1) +/* 80207F44 00204EA4 BB 01 01 60 */ lmw r24, 0x160(r1) +/* 80207F48 00204EA8 80 01 02 14 */ lwz r0, 0x214(r1) +/* 80207F4C 00204EAC 7C 08 03 A6 */ mtlr r0 +/* 80207F50 00204EB0 38 21 02 10 */ addi r1, r1, 0x210 +/* 80207F54 00204EB4 4E 80 00 20 */ blr + +.global Update__11CVisorFlareFfRC9CVector3fPC6CActorR13CStateManager +Update__11CVisorFlareFfRC9CVector3fPC6CActorR13CStateManager: +/* 80207F58 00204EB8 94 21 F6 E0 */ stwu r1, -0x920(r1) +/* 80207F5C 00204EBC 7C 08 02 A6 */ mflr r0 +/* 80207F60 00204EC0 90 01 09 24 */ stw r0, 0x924(r1) +/* 80207F64 00204EC4 DB E1 09 10 */ stfd f31, 0x910(r1) +/* 80207F68 00204EC8 F3 E1 09 18 */ psq_st f31, -1768(r1), 0, qr0 +/* 80207F6C 00204ECC DB C1 09 00 */ stfd f30, 0x900(r1) +/* 80207F70 00204ED0 F3 C1 09 08 */ psq_st f30, -1784(r1), 0, qr0 +/* 80207F74 00204ED4 DB A1 08 F0 */ stfd f29, 0x8f0(r1) +/* 80207F78 00204ED8 F3 A1 08 F8 */ psq_st f29, -1800(r1), 0, qr0 +/* 80207F7C 00204EDC BF 61 08 DC */ stmw r27, 0x8dc(r1) +/* 80207F80 00204EE0 7C DF 33 78 */ mr r31, r6 +/* 80207F84 00204EE4 FF E0 08 90 */ fmr f31, f1 +/* 80207F88 00204EE8 80 C6 08 B8 */ lwz r6, 0x8b8(r6) +/* 80207F8C 00204EEC 7C 7D 1B 78 */ mr r29, r3 +/* 80207F90 00204EF0 7C 9E 23 78 */ mr r30, r4 +/* 80207F94 00204EF4 7C BB 2B 78 */ mr r27, r5 +/* 80207F98 00204EF8 80 66 00 00 */ lwz r3, 0(r6) +/* 80207F9C 00204EFC 80 63 00 14 */ lwz r3, 0x14(r3) +/* 80207FA0 00204F00 2C 03 00 00 */ cmpwi r3, 0 +/* 80207FA4 00204F04 41 82 00 18 */ beq lbl_80207FBC +/* 80207FA8 00204F08 80 1D 00 2C */ lwz r0, 0x2c(r29) +/* 80207FAC 00204F0C 2C 00 00 01 */ cmpwi r0, 1 +/* 80207FB0 00204F10 41 82 02 FC */ beq lbl_802082AC +/* 80207FB4 00204F14 2C 03 00 03 */ cmpwi r3, 3 +/* 80207FB8 00204F18 40 82 02 F4 */ bne lbl_802082AC +lbl_80207FBC: +/* 80207FBC 00204F1C 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 80207FC0 00204F20 80 03 02 F8 */ lwz r0, 0x2f8(r3) +/* 80207FC4 00204F24 2C 00 00 00 */ cmpwi r0, 0 +/* 80207FC8 00204F28 40 82 02 E4 */ bne lbl_802082AC +/* 80207FCC 00204F2C 80 7F 08 70 */ lwz r3, 0x870(r31) +/* 80207FD0 00204F30 7F E4 FB 78 */ mr r4, r31 +/* 80207FD4 00204F34 4B E0 3B 45 */ bl GetCurrentCamera__14CCameraManagerCFR13CStateManager +/* 80207FD8 00204F38 C0 A3 00 60 */ lfs f5, 0x60(r3) +/* 80207FDC 00204F3C C0 1E 00 08 */ lfs f0, 8(r30) +/* 80207FE0 00204F40 C0 83 00 50 */ lfs f4, 0x50(r3) +/* 80207FE4 00204F44 C0 43 00 40 */ lfs f2, 0x40(r3) +/* 80207FE8 00204F48 EC 60 28 28 */ fsubs f3, f0, f5 +/* 80207FEC 00204F4C C0 3E 00 04 */ lfs f1, 4(r30) +/* 80207FF0 00204F50 38 61 00 28 */ addi r3, r1, 0x28 +/* 80207FF4 00204F54 C0 1E 00 00 */ lfs f0, 0(r30) +/* 80207FF8 00204F58 EC 21 20 28 */ fsubs f1, f1, f4 +/* 80207FFC 00204F5C D0 41 00 34 */ stfs f2, 0x34(r1) +/* 80208000 00204F60 EC 00 10 28 */ fsubs f0, f0, f2 +/* 80208004 00204F64 D0 81 00 38 */ stfs f4, 0x38(r1) +/* 80208008 00204F68 D0 A1 00 3C */ stfs f5, 0x3c(r1) +/* 8020800C 00204F6C D0 01 00 28 */ stfs f0, 0x28(r1) +/* 80208010 00204F70 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 80208014 00204F74 D0 61 00 30 */ stfs f3, 0x30(r1) +/* 80208018 00204F78 48 10 C8 A1 */ bl Magnitude__9CVector3fCFv +/* 8020801C 00204F7C FF A0 08 90 */ fmr f29, f1 +/* 80208020 00204F80 C0 42 B0 EC */ lfs f2, lbl_805ACE0C@sda21(r2) +/* 80208024 00204F84 C0 61 00 28 */ lfs f3, 0x28(r1) +/* 80208028 00204F88 38 60 00 00 */ li r3, 0 +/* 8020802C 00204F8C C0 21 00 2C */ lfs f1, 0x2c(r1) +/* 80208030 00204F90 38 80 00 01 */ li r4, 1 +/* 80208034 00204F94 EC 82 E8 24 */ fdivs f4, f2, f29 +/* 80208038 00204F98 C0 01 00 30 */ lfs f0, 0x30(r1) +/* 8020803C 00204F9C 80 AD 93 94 */ lwz r5, lbl_805A7F54@sda21(r13) +/* 80208040 00204FA0 EC 43 01 32 */ fmuls f2, f3, f4 +/* 80208044 00204FA4 EC 21 01 32 */ fmuls f1, f1, f4 +/* 80208048 00204FA8 EC 00 01 32 */ fmuls f0, f0, f4 +/* 8020804C 00204FAC D0 41 00 28 */ stfs f2, 0x28(r1) +/* 80208050 00204FB0 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 80208054 00204FB4 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 80208058 00204FB8 48 18 1E 9D */ bl __shl2i +/* 8020805C 00204FBC 38 00 00 00 */ li r0, 0 +/* 80208060 00204FC0 39 20 00 01 */ li r9, 1 +/* 80208064 00204FC4 90 81 00 8C */ stw r4, 0x8c(r1) +/* 80208068 00204FC8 FC 20 E8 90 */ fmr f1, f29 +/* 8020806C 00204FCC 7F 68 DB 78 */ mr r8, r27 +/* 80208070 00204FD0 38 81 00 D0 */ addi r4, r1, 0xd0 +/* 80208074 00204FD4 90 61 00 88 */ stw r3, 0x88(r1) +/* 80208078 00204FD8 7F E3 FB 78 */ mr r3, r31 +/* 8020807C 00204FDC 38 A1 00 34 */ addi r5, r1, 0x34 +/* 80208080 00204FE0 91 21 00 68 */ stw r9, 0x68(r1) +/* 80208084 00204FE4 38 C1 00 28 */ addi r6, r1, 0x28 +/* 80208088 00204FE8 38 E1 00 88 */ addi r7, r1, 0x88 +/* 8020808C 00204FEC 90 01 00 94 */ stw r0, 0x94(r1) +/* 80208090 00204FF0 90 01 00 90 */ stw r0, 0x90(r1) +/* 80208094 00204FF4 91 21 00 98 */ stw r9, 0x98(r1) +/* 80208098 00204FF8 90 01 00 D0 */ stw r0, 0xd0(r1) +/* 8020809C 00204FFC 4B E4 46 3D */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC9CVector3fRC9CVector3ffRC15CMaterialFilterPC6CActor" +/* 802080A0 00205000 80 AD 93 9C */ lwz r5, lbl_805A7F5C@sda21(r13) +/* 802080A4 00205004 38 60 00 00 */ li r3, 0 +/* 802080A8 00205008 38 80 00 01 */ li r4, 1 +/* 802080AC 0020500C 48 18 1E 49 */ bl __shl2i +/* 802080B0 00205010 80 AD 93 98 */ lwz r5, lbl_805A7F58@sda21(r13) +/* 802080B4 00205014 7C 9B 23 78 */ mr r27, r4 +/* 802080B8 00205018 7C 7C 1B 78 */ mr r28, r3 +/* 802080BC 0020501C 38 60 00 00 */ li r3, 0 +/* 802080C0 00205020 38 80 00 01 */ li r4, 1 +/* 802080C4 00205024 48 18 1E 31 */ bl __shl2i +/* 802080C8 00205028 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 802080CC 0020502C 39 40 00 03 */ li r10, 3 +/* 802080D0 00205030 FC 20 E8 90 */ fmr f1, f29 +/* 802080D4 00205034 90 81 00 74 */ stw r4, 0x74(r1) +/* 802080D8 00205038 7F E4 FB 78 */ mr r4, r31 +/* 802080DC 0020503C 38 A1 00 08 */ addi r5, r1, 8 +/* 802080E0 00205040 90 61 00 70 */ stw r3, 0x70(r1) +/* 802080E4 00205044 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 802080E8 00205048 91 41 00 50 */ stw r10, 0x50(r1) +/* 802080EC 0020504C 38 C1 00 34 */ addi r6, r1, 0x34 +/* 802080F0 00205050 38 E1 00 28 */ addi r7, r1, 0x28 +/* 802080F4 00205054 39 01 00 70 */ addi r8, r1, 0x70 +/* 802080F8 00205058 93 61 00 7C */ stw r27, 0x7c(r1) +/* 802080FC 0020505C 39 21 00 D0 */ addi r9, r1, 0xd0 +/* 80208100 00205060 93 81 00 78 */ stw r28, 0x78(r1) +/* 80208104 00205064 91 41 00 80 */ stw r10, 0x80(r1) +/* 80208108 00205068 B0 01 00 08 */ sth r0, 8(r1) +/* 8020810C 0020506C 4B E4 4E B9 */ bl "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 80208110 00205070 80 C1 00 D0 */ lwz r6, 0xd0(r1) +/* 80208114 00205074 38 60 00 00 */ li r3, 0 +/* 80208118 00205078 88 81 00 C0 */ lbz r4, 0xc0(r1) +/* 8020811C 0020507C 2C 06 00 00 */ cmpwi r6, 0 +/* 80208120 00205080 40 81 00 40 */ ble lbl_80208160 +/* 80208124 00205084 2C 06 00 08 */ cmpwi r6, 8 +/* 80208128 00205088 38 A6 FF F8 */ addi r5, r6, -8 +/* 8020812C 0020508C 40 81 00 20 */ ble lbl_8020814C +/* 80208130 00205090 38 05 00 07 */ addi r0, r5, 7 +/* 80208134 00205094 54 00 E8 FE */ srwi r0, r0, 3 +/* 80208138 00205098 7C 09 03 A6 */ mtctr r0 +/* 8020813C 0020509C 2C 05 00 00 */ cmpwi r5, 0 +/* 80208140 002050A0 40 81 00 0C */ ble lbl_8020814C +lbl_80208144: +/* 80208144 002050A4 38 63 00 08 */ addi r3, r3, 8 +/* 80208148 002050A8 42 00 FF FC */ bdnz lbl_80208144 +lbl_8020814C: +/* 8020814C 002050AC 7C 03 30 50 */ subf r0, r3, r6 +/* 80208150 002050B0 7C 09 03 A6 */ mtctr r0 +/* 80208154 002050B4 7C 03 30 00 */ cmpw r3, r6 +/* 80208158 002050B8 40 80 00 08 */ bge lbl_80208160 +lbl_8020815C: +/* 8020815C 002050BC 42 00 00 00 */ bdnz lbl_8020815C +lbl_80208160: +/* 80208160 002050C0 38 00 00 00 */ li r0, 0 +/* 80208164 002050C4 28 04 00 00 */ cmplwi r4, 0 +/* 80208168 002050C8 90 01 00 D0 */ stw r0, 0xd0(r1) +/* 8020816C 002050CC 41 82 00 14 */ beq lbl_80208180 +/* 80208170 002050D0 C0 1D 00 28 */ lfs f0, 0x28(r29) +/* 80208174 002050D4 EC 00 F8 2A */ fadds f0, f0, f31 +/* 80208178 002050D8 D0 1D 00 28 */ stfs f0, 0x28(r29) +/* 8020817C 002050DC 48 00 00 10 */ b lbl_8020818C +lbl_80208180: +/* 80208180 002050E0 C0 1D 00 28 */ lfs f0, 0x28(r29) +/* 80208184 002050E4 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 80208188 002050E8 D0 1D 00 28 */ stfs f0, 0x28(r29) +lbl_8020818C: +/* 8020818C 002050EC C0 2D 93 A0 */ lfs f1, lbl_805A7F60@sda21(r13) +/* 80208190 002050F0 C0 1D 00 28 */ lfs f0, 0x28(r29) +/* 80208194 002050F4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80208198 002050F8 40 80 00 0C */ bge lbl_802081A4 +/* 8020819C 002050FC 38 7D 00 28 */ addi r3, r29, 0x28 +/* 802081A0 00205100 48 00 00 08 */ b lbl_802081A8 +lbl_802081A4: +/* 802081A4 00205104 38 6D 93 A0 */ addi r3, r13, lbl_805A7F60@sda21 +lbl_802081A8: +/* 802081A8 00205108 C0 23 00 00 */ lfs f1, 0(r3) +/* 802081AC 0020510C C0 1D 00 18 */ lfs f0, 0x18(r29) +/* 802081B0 00205110 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802081B4 00205114 40 80 00 08 */ bge lbl_802081BC +/* 802081B8 00205118 48 00 00 08 */ b lbl_802081C0 +lbl_802081BC: +/* 802081BC 0020511C 38 7D 00 18 */ addi r3, r29, 0x18 +lbl_802081C0: +/* 802081C0 00205120 C0 03 00 00 */ lfs f0, 0(r3) +/* 802081C4 00205124 7F E4 FB 78 */ mr r4, r31 +/* 802081C8 00205128 D0 1D 00 28 */ stfs f0, 0x28(r29) +/* 802081CC 0020512C 80 7F 08 70 */ lwz r3, 0x870(r31) +/* 802081D0 00205130 4B E0 39 49 */ bl GetCurrentCamera__14CCameraManagerCFR13CStateManager +/* 802081D4 00205134 C0 3E 00 04 */ lfs f1, 4(r30) +/* 802081D8 00205138 38 81 00 1C */ addi r4, r1, 0x1c +/* 802081DC 0020513C C0 03 00 50 */ lfs f0, 0x50(r3) +/* 802081E0 00205140 C0 7E 00 08 */ lfs f3, 8(r30) +/* 802081E4 00205144 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 802081E8 00205148 EC 81 00 28 */ fsubs f4, f1, f0 +/* 802081EC 0020514C C0 3E 00 00 */ lfs f1, 0(r30) +/* 802081F0 00205150 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 802081F4 00205154 EC 63 10 28 */ fsubs f3, f3, f2 +/* 802081F8 00205158 C3 E3 00 58 */ lfs f31, 0x58(r3) +/* 802081FC 0020515C EC 01 00 28 */ fsubs f0, f1, f0 +/* 80208200 00205160 C3 A3 00 48 */ lfs f29, 0x48(r3) +/* 80208204 00205164 C3 C3 00 38 */ lfs f30, 0x38(r3) +/* 80208208 00205168 38 61 00 10 */ addi r3, r1, 0x10 +/* 8020820C 0020516C C0 42 B0 EC */ lfs f2, lbl_805ACE0C@sda21(r2) +/* 80208210 00205170 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 80208214 00205174 D0 81 00 20 */ stfs f4, 0x20(r1) +/* 80208218 00205178 D0 61 00 24 */ stfs f3, 0x24(r1) +/* 8020821C 0020517C C0 3D 00 28 */ lfs f1, 0x28(r29) +/* 80208220 00205180 C0 1D 00 18 */ lfs f0, 0x18(r29) +/* 80208224 00205184 EC 01 00 24 */ fdivs f0, f1, f0 +/* 80208228 00205188 EC 02 00 28 */ fsubs f0, f2, f0 +/* 8020822C 0020518C D0 1D 00 24 */ stfs f0, 0x24(r29) +/* 80208230 00205190 48 10 C6 21 */ bl AsNormalized__9CVector3fCFv +/* 80208234 00205194 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 80208238 00205198 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 8020823C 0020519C EC 00 07 72 */ fmuls f0, f0, f29 +/* 80208240 002051A0 C0 41 00 18 */ lfs f2, 0x18(r1) +/* 80208244 002051A4 C0 A2 B1 08 */ lfs f5, lbl_805ACE28@sda21(r2) +/* 80208248 002051A8 C0 9D 00 1C */ lfs f4, 0x1c(r29) +/* 8020824C 002051AC EC 21 07 BA */ fmadds f1, f1, f30, f0 +/* 80208250 002051B0 C0 62 B0 EC */ lfs f3, lbl_805ACE0C@sda21(r2) +/* 80208254 002051B4 EC 85 01 32 */ fmuls f4, f5, f4 +/* 80208258 002051B8 C0 0D 93 A4 */ lfs f0, lbl_805A7F64@sda21(r13) +/* 8020825C 002051BC EC 22 0F FA */ fmadds f1, f2, f31, f1 +/* 80208260 002051C0 EC 23 08 28 */ fsubs f1, f3, f1 +/* 80208264 002051C4 EC 24 18 7C */ fnmsubs f1, f4, f1, f3 +/* 80208268 002051C8 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 8020826C 002051CC D0 21 00 0C */ stfs f1, 0xc(r1) +/* 80208270 002051D0 40 80 00 0C */ bge lbl_8020827C +/* 80208274 002051D4 38 61 00 0C */ addi r3, r1, 0xc +/* 80208278 002051D8 48 00 00 08 */ b lbl_80208280 +lbl_8020827C: +/* 8020827C 002051DC 38 6D 93 A4 */ addi r3, r13, lbl_805A7F64@sda21 +lbl_80208280: +/* 80208280 002051E0 C0 3D 00 24 */ lfs f1, 0x24(r29) +/* 80208284 002051E4 C0 03 00 00 */ lfs f0, 0(r3) +/* 80208288 002051E8 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8020828C 002051EC D0 1D 00 24 */ stfs f0, 0x24(r29) +/* 80208290 002051F0 80 1D 00 2C */ lwz r0, 0x2c(r29) +/* 80208294 002051F4 2C 00 00 02 */ cmpwi r0, 2 +/* 80208298 002051F8 40 82 00 14 */ bne lbl_802082AC +/* 8020829C 002051FC C0 3F 0F 28 */ lfs f1, 0xf28(r31) +/* 802082A0 00205200 C0 1D 00 24 */ lfs f0, 0x24(r29) +/* 802082A4 00205204 EC 01 00 2A */ fadds f0, f1, f0 +/* 802082A8 00205208 D0 1F 0F 28 */ stfs f0, 0xf28(r31) +lbl_802082AC: +/* 802082AC 0020520C E3 E1 09 18 */ psq_l f31, -1768(r1), 0, qr0 +/* 802082B0 00205210 CB E1 09 10 */ lfd f31, 0x910(r1) +/* 802082B4 00205214 E3 C1 09 08 */ psq_l f30, -1784(r1), 0, qr0 +/* 802082B8 00205218 CB C1 09 00 */ lfd f30, 0x900(r1) +/* 802082BC 0020521C E3 A1 08 F8 */ psq_l f29, -1800(r1), 0, qr0 +/* 802082C0 00205220 CB A1 08 F0 */ lfd f29, 0x8f0(r1) +/* 802082C4 00205224 BB 61 08 DC */ lmw r27, 0x8dc(r1) +/* 802082C8 00205228 80 01 09 24 */ lwz r0, 0x924(r1) +/* 802082CC 0020522C 7C 08 03 A6 */ mtlr r0 +/* 802082D0 00205230 38 21 09 20 */ addi r1, r1, 0x920 +/* 802082D4 00205234 4E 80 00 20 */ blr + +.global "__ct__11CVisorFlareFQ211CVisorFlare10EBlendModebfffRCQ24rstl60vector" +"__ct__11CVisorFlareFQ211CVisorFlare10EBlendModebfffRCQ24rstl60vector": +/* 802082D8 00205238 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 802082DC 0020523C 7C 08 02 A6 */ mflr r0 +/* 802082E0 00205240 90 01 00 44 */ stw r0, 0x44(r1) +/* 802082E4 00205244 DB E1 00 30 */ stfd f31, 0x30(r1) +/* 802082E8 00205248 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 802082EC 0020524C DB C1 00 20 */ stfd f30, 0x20(r1) +/* 802082F0 00205250 F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 +/* 802082F4 00205254 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 802082F8 00205258 93 C1 00 18 */ stw r30, 0x18(r1) +/* 802082FC 0020525C 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80208300 00205260 93 81 00 10 */ stw r28, 0x10(r1) +/* 80208304 00205264 D0 21 00 08 */ stfs f1, 8(r1) +/* 80208308 00205268 FF C0 10 90 */ fmr f30, f2 +/* 8020830C 0020526C FF E0 18 90 */ fmr f31, f3 +/* 80208310 00205270 7C 7C 1B 78 */ mr r28, r3 +/* 80208314 00205274 90 83 00 00 */ stw r4, 0(r3) +/* 80208318 00205278 7C BD 2B 78 */ mr r29, r5 +/* 8020831C 0020527C 7C DE 33 78 */ mr r30, r6 +/* 80208320 00205280 7C FF 3B 78 */ mr r31, r7 +/* 80208324 00205284 7D 04 43 78 */ mr r4, r8 +/* 80208328 00205288 38 7C 00 04 */ addi r3, r28, 4 +/* 8020832C 0020528C 4B EC 61 41 */ bl sub_800ce46c +/* 80208330 00205290 9B BC 00 14 */ stb r29, 0x14(r28) +/* 80208334 00205294 C0 2D 93 90 */ lfs f1, lbl_805A7F50@sda21(r13) +/* 80208338 00205298 C0 01 00 08 */ lfs f0, 8(r1) +/* 8020833C 0020529C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80208340 002052A0 40 80 00 0C */ bge lbl_8020834C +/* 80208344 002052A4 38 61 00 08 */ addi r3, r1, 8 +/* 80208348 002052A8 48 00 00 08 */ b lbl_80208350 +lbl_8020834C: +/* 8020834C 002052AC 38 6D 93 90 */ addi r3, r13, lbl_805A7F50@sda21 +lbl_80208350: +/* 80208350 002052B0 C0 23 00 00 */ lfs f1, 0(r3) +/* 80208354 002052B4 7F 83 E3 78 */ mr r3, r28 +/* 80208358 002052B8 C0 02 B0 E8 */ lfs f0, lbl_805ACE08@sda21(r2) +/* 8020835C 002052BC D0 3C 00 18 */ stfs f1, 0x18(r28) +/* 80208360 002052C0 D3 DC 00 1C */ stfs f30, 0x1c(r28) +/* 80208364 002052C4 D3 FC 00 20 */ stfs f31, 0x20(r28) +/* 80208368 002052C8 D0 1C 00 24 */ stfs f0, 0x24(r28) +/* 8020836C 002052CC D0 1C 00 28 */ stfs f0, 0x28(r28) +/* 80208370 002052D0 93 DC 00 2C */ stw r30, 0x2c(r28) +/* 80208374 002052D4 93 FC 00 30 */ stw r31, 0x30(r28) +/* 80208378 002052D8 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 8020837C 002052DC CB E1 00 30 */ lfd f31, 0x30(r1) +/* 80208380 002052E0 E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 +/* 80208384 002052E4 CB C1 00 20 */ lfd f30, 0x20(r1) +/* 80208388 002052E8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8020838C 002052EC 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80208390 002052F0 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80208394 002052F4 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80208398 002052F8 83 81 00 10 */ lwz r28, 0x10(r1) +/* 8020839C 002052FC 7C 08 03 A6 */ mtlr r0 +/* 802083A0 00205300 38 21 00 40 */ addi r1, r1, 0x40 +/* 802083A4 00205304 4E 80 00 20 */ blr + +.global "__ct__Q211CVisorFlare9CFlareDefFRC17TToken<8CTexture>ffUi" +"__ct__Q211CVisorFlare9CFlareDefFRC17TToken<8CTexture>ffUi": +/* 802083A8 00205308 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 802083AC 0020530C 7C 08 02 A6 */ mflr r0 +/* 802083B0 00205310 90 01 00 24 */ stw r0, 0x24(r1) +/* 802083B4 00205314 DB E1 00 18 */ stfd f31, 0x18(r1) +/* 802083B8 00205318 FF E0 10 90 */ fmr f31, f2 +/* 802083BC 0020531C DB C1 00 10 */ stfd f30, 0x10(r1) +/* 802083C0 00205320 FF C0 08 90 */ fmr f30, f1 +/* 802083C4 00205324 93 E1 00 0C */ stw r31, 0xc(r1) +/* 802083C8 00205328 7C BF 2B 78 */ mr r31, r5 +/* 802083CC 0020532C 93 C1 00 08 */ stw r30, 8(r1) +/* 802083D0 00205330 7C 7E 1B 78 */ mr r30, r3 +/* 802083D4 00205334 48 13 8A D5 */ bl __ct__6CTokenFRC6CToken +/* 802083D8 00205338 D3 DE 00 08 */ stfs f30, 8(r30) +/* 802083DC 0020533C 7F C3 F3 78 */ mr r3, r30 +/* 802083E0 00205340 D3 FE 00 0C */ stfs f31, 0xc(r30) +/* 802083E4 00205344 93 FE 00 10 */ stw r31, 0x10(r30) +/* 802083E8 00205348 48 13 89 9D */ bl Lock__6CTokenFv +/* 802083EC 0020534C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 802083F0 00205350 7F C3 F3 78 */ mr r3, r30 +/* 802083F4 00205354 CB E1 00 18 */ lfd f31, 0x18(r1) +/* 802083F8 00205358 CB C1 00 10 */ lfd f30, 0x10(r1) +/* 802083FC 0020535C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80208400 00205360 83 C1 00 08 */ lwz r30, 8(r1) +/* 80208404 00205364 7C 08 03 A6 */ mtlr r0 +/* 80208408 00205368 38 21 00 20 */ addi r1, r1, 0x20 +/* 8020840C 0020536C 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CWorldTransManager.s b/asm/Kyoto_CWD/CWorldTransManager.s new file mode 100644 index 00000000..3c55a316 --- /dev/null +++ b/asm/Kyoto_CWD/CWorldTransManager.s @@ -0,0 +1,3022 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global WaitForModelsAndTextures__18CWorldTransManagerFv +WaitForModelsAndTextures__18CWorldTransManagerFv: +/* 80208E18 00205D78 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 80208E1C 00205D7C 7C 08 02 A6 */ mflr r0 +/* 80208E20 00205D80 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 80208E24 00205D84 38 61 00 60 */ addi r3, r1, 0x60 +/* 80208E28 00205D88 BF 41 00 B8 */ stmw r26, 0xb8(r1) +/* 80208E2C 00205D8C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80208E30 00205D90 48 13 71 B9 */ bl GetReferencedTags__11CSimplePoolFv +/* 80208E34 00205D94 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80208E38 00205D98 80 61 00 68 */ lwz r3, 0x68(r1) +/* 80208E3C 00205D9C 2C 00 00 00 */ cmpwi r0, 0 +/* 80208E40 00205DA0 90 01 00 74 */ stw r0, 0x74(r1) +/* 80208E44 00205DA4 90 61 00 78 */ stw r3, 0x78(r1) +/* 80208E48 00205DA8 40 82 00 18 */ bne lbl_80208E60 +/* 80208E4C 00205DAC 2C 03 00 00 */ cmpwi r3, 0 +/* 80208E50 00205DB0 40 82 00 10 */ bne lbl_80208E60 +/* 80208E54 00205DB4 38 00 00 00 */ li r0, 0 +/* 80208E58 00205DB8 90 01 00 7C */ stw r0, 0x7c(r1) +/* 80208E5C 00205DBC 48 00 00 6C */ b lbl_80208EC8 +lbl_80208E60: +/* 80208E60 00205DC0 80 01 00 78 */ lwz r0, 0x78(r1) +/* 80208E64 00205DC4 54 03 18 39 */ rlwinm. r3, r0, 3, 0, 0x1c +/* 80208E68 00205DC8 40 82 00 10 */ bne lbl_80208E78 +/* 80208E6C 00205DCC 38 00 00 00 */ li r0, 0 +/* 80208E70 00205DD0 90 01 00 7C */ stw r0, 0x7c(r1) +/* 80208E74 00205DD4 48 00 00 18 */ b lbl_80208E8C +lbl_80208E78: +/* 80208E78 00205DD8 3C 80 80 3D */ lis r4, lbl_803D2768@ha +/* 80208E7C 00205DDC 38 A0 00 00 */ li r5, 0 +/* 80208E80 00205DE0 38 84 27 68 */ addi r4, r4, lbl_803D2768@l +/* 80208E84 00205DE4 48 10 C9 95 */ bl __nwa__FUlPCcPCc +/* 80208E88 00205DE8 90 61 00 7C */ stw r3, 0x7c(r1) +lbl_80208E8C: +/* 80208E8C 00205DEC 80 01 00 74 */ lwz r0, 0x74(r1) +/* 80208E90 00205DF0 80 81 00 6C */ lwz r4, 0x6c(r1) +/* 80208E94 00205DF4 80 61 00 7C */ lwz r3, 0x7c(r1) +/* 80208E98 00205DF8 7C 09 03 A6 */ mtctr r0 +/* 80208E9C 00205DFC 2C 00 00 00 */ cmpwi r0, 0 +/* 80208EA0 00205E00 40 81 00 28 */ ble lbl_80208EC8 +lbl_80208EA4: +/* 80208EA4 00205E04 28 03 00 00 */ cmplwi r3, 0 +/* 80208EA8 00205E08 41 82 00 14 */ beq lbl_80208EBC +/* 80208EAC 00205E0C 80 04 00 00 */ lwz r0, 0(r4) +/* 80208EB0 00205E10 90 03 00 00 */ stw r0, 0(r3) +/* 80208EB4 00205E14 80 04 00 04 */ lwz r0, 4(r4) +/* 80208EB8 00205E18 90 03 00 04 */ stw r0, 4(r3) +lbl_80208EBC: +/* 80208EBC 00205E1C 38 63 00 08 */ addi r3, r3, 8 +/* 80208EC0 00205E20 38 84 00 08 */ addi r4, r4, 8 +/* 80208EC4 00205E24 42 00 FF E0 */ bdnz lbl_80208EA4 +lbl_80208EC8: +/* 80208EC8 00205E28 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80208ECC 00205E2C 80 61 00 6C */ lwz r3, 0x6c(r1) +/* 80208ED0 00205E30 54 00 18 38 */ slwi r0, r0, 3 +/* 80208ED4 00205E34 7C 03 02 14 */ add r0, r3, r0 +/* 80208ED8 00205E38 90 61 00 1C */ stw r3, 0x1c(r1) +/* 80208EDC 00205E3C 7C 64 1B 78 */ mr r4, r3 +/* 80208EE0 00205E40 90 01 00 24 */ stw r0, 0x24(r1) +/* 80208EE4 00205E44 90 01 00 20 */ stw r0, 0x20(r1) +/* 80208EE8 00205E48 90 61 00 18 */ stw r3, 0x18(r1) +/* 80208EEC 00205E4C 48 00 00 08 */ b lbl_80208EF4 +lbl_80208EF0: +/* 80208EF0 00205E50 38 84 00 08 */ addi r4, r4, 8 +lbl_80208EF4: +/* 80208EF4 00205E54 7C 04 00 40 */ cmplw r4, r0 +/* 80208EF8 00205E58 40 82 FF F8 */ bne lbl_80208EF0 +/* 80208EFC 00205E5C 28 03 00 00 */ cmplwi r3, 0 +/* 80208F00 00205E60 41 82 00 08 */ beq lbl_80208F08 +/* 80208F04 00205E64 48 10 CA 2D */ bl Free__7CMemoryFPCv +lbl_80208F08: +/* 80208F08 00205E68 3C 60 80 00 */ lis r3, 0x7FFFFFFF@ha +/* 80208F0C 00205E6C 38 81 00 AC */ addi r4, r1, 0xac +/* 80208F10 00205E70 38 63 FF FF */ addi r3, r3, 0x7FFFFFFF@l +/* 80208F14 00205E74 38 00 00 00 */ li r0, 0 +/* 80208F18 00205E78 90 6D A8 70 */ stw r3, lbl_805A9430@sda21(r13) +/* 80208F1C 00205E7C 90 81 00 A4 */ stw r4, 0xa4(r1) +/* 80208F20 00205E80 90 81 00 A8 */ stw r4, 0xa8(r1) +/* 80208F24 00205E84 90 81 00 AC */ stw r4, 0xac(r1) +/* 80208F28 00205E88 90 81 00 B0 */ stw r4, 0xb0(r1) +/* 80208F2C 00205E8C 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 80208F30 00205E90 48 16 3D CD */ bl sub_8036ccfc +/* 80208F34 00205E94 80 01 00 74 */ lwz r0, 0x74(r1) +/* 80208F38 00205E98 3B C0 00 00 */ li r30, 0 +/* 80208F3C 00205E9C 80 61 00 7C */ lwz r3, 0x7c(r1) +/* 80208F40 00205EA0 54 00 18 38 */ slwi r0, r0, 3 +/* 80208F44 00205EA4 7F A3 02 14 */ add r29, r3, r0 +lbl_80208F48: +/* 80208F48 00205EA8 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 80208F4C 00205EAC 48 00 02 8C */ b lbl_802091D8 +lbl_80208F50: +/* 80208F50 00205EB0 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80208F54 00205EB4 7F E5 FB 78 */ mr r5, r31 +/* 80208F58 00205EB8 38 61 00 40 */ addi r3, r1, 0x40 +/* 80208F5C 00205EBC 81 84 00 00 */ lwz r12, 0(r4) +/* 80208F60 00205EC0 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80208F64 00205EC4 7D 89 03 A6 */ mtctr r12 +/* 80208F68 00205EC8 4E 80 04 21 */ bctrl +/* 80208F6C 00205ECC 80 A1 00 40 */ lwz r5, 0x40(r1) +/* 80208F70 00205ED0 38 61 00 40 */ addi r3, r1, 0x40 +/* 80208F74 00205ED4 38 80 FF FF */ li r4, -1 +/* 80208F78 00205ED8 80 A5 00 10 */ lwz r5, 0x10(r5) +/* 80208F7C 00205EDC 7C 05 00 D0 */ neg r0, r5 +/* 80208F80 00205EE0 7C 00 2B 78 */ or r0, r0, r5 +/* 80208F84 00205EE4 54 1A 0F FE */ srwi r26, r0, 0x1f +/* 80208F88 00205EE8 48 13 7E B9 */ bl __dt__6CTokenFv +/* 80208F8C 00205EEC 28 1A 00 00 */ cmplwi r26, 0 +/* 80208F90 00205EF0 41 82 02 44 */ beq lbl_802091D4 +/* 80208F94 00205EF4 80 7F 00 00 */ lwz r3, 0(r31) +/* 80208F98 00205EF8 3C 03 AB A8 */ addis r0, r3, 0xaba8 +/* 80208F9C 00205EFC 28 00 54 52 */ cmplwi r0, 0x5452 +/* 80208FA0 00205F00 40 82 00 BC */ bne lbl_8020905C +/* 80208FA4 00205F04 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80208FA8 00205F08 7F E5 FB 78 */ mr r5, r31 +/* 80208FAC 00205F0C 38 61 00 38 */ addi r3, r1, 0x38 +/* 80208FB0 00205F10 81 84 00 00 */ lwz r12, 0(r4) +/* 80208FB4 00205F14 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80208FB8 00205F18 7D 89 03 A6 */ mtctr r12 +/* 80208FBC 00205F1C 4E 80 04 21 */ bctrl +/* 80208FC0 00205F20 38 61 00 58 */ addi r3, r1, 0x58 +/* 80208FC4 00205F24 38 81 00 38 */ addi r4, r1, 0x38 +/* 80208FC8 00205F28 48 13 7E E1 */ bl __ct__6CTokenFRC6CToken +/* 80208FCC 00205F2C 38 61 00 38 */ addi r3, r1, 0x38 +/* 80208FD0 00205F30 38 80 FF FF */ li r4, -1 +/* 80208FD4 00205F34 48 13 7E 6D */ bl __dt__6CTokenFv +/* 80208FD8 00205F38 2C 1E 00 00 */ cmpwi r30, 0 +/* 80208FDC 00205F3C 40 82 00 60 */ bne lbl_8020903C +/* 80208FE0 00205F40 38 61 00 58 */ addi r3, r1, 0x58 +/* 80208FE4 00205F44 48 13 7E 29 */ bl GetObj__6CTokenFv +/* 80208FE8 00205F48 80 63 00 04 */ lwz r3, 4(r3) +/* 80208FEC 00205F4C 48 10 51 CD */ bl MakeSwappable__8CTextureCFv +/* 80208FF0 00205F50 38 61 00 58 */ addi r3, r1, 0x58 +/* 80208FF4 00205F54 48 13 7E 19 */ bl GetObj__6CTokenFv +/* 80208FF8 00205F58 80 63 00 04 */ lwz r3, 4(r3) +/* 80208FFC 00205F5C 48 10 5B 85 */ bl LoadToARAM__8CTextureCFv +/* 80209000 00205F60 38 61 00 58 */ addi r3, r1, 0x58 +/* 80209004 00205F64 48 13 7E 09 */ bl GetObj__6CTokenFv +/* 80209008 00205F68 80 63 00 04 */ lwz r3, 4(r3) +/* 8020900C 00205F6C 48 10 5B 41 */ bl IsARAMTransferInProgress__8CTextureCFv +/* 80209010 00205F70 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80209014 00205F74 41 82 00 38 */ beq lbl_8020904C +/* 80209018 00205F78 48 00 00 08 */ b lbl_80209020 +lbl_8020901C: +/* 8020901C 00205F7C 48 14 F5 1D */ bl UpdateAllDMAs__10CARAMTokenFv +lbl_80209020: +/* 80209020 00205F80 38 61 00 58 */ addi r3, r1, 0x58 +/* 80209024 00205F84 48 13 7D E9 */ bl GetObj__6CTokenFv +/* 80209028 00205F88 80 63 00 04 */ lwz r3, 4(r3) +/* 8020902C 00205F8C 48 10 5B 21 */ bl IsARAMTransferInProgress__8CTextureCFv +/* 80209030 00205F90 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80209034 00205F94 40 82 FF E8 */ bne lbl_8020901C +/* 80209038 00205F98 48 00 00 14 */ b lbl_8020904C +lbl_8020903C: +/* 8020903C 00205F9C 38 61 00 58 */ addi r3, r1, 0x58 +/* 80209040 00205FA0 48 13 7D CD */ bl GetObj__6CTokenFv +/* 80209044 00205FA4 80 63 00 04 */ lwz r3, 4(r3) +/* 80209048 00205FA8 48 10 5B E1 */ bl LoadToMRAM__8CTextureCFv +lbl_8020904C: +/* 8020904C 00205FAC 38 61 00 58 */ addi r3, r1, 0x58 +/* 80209050 00205FB0 38 80 00 00 */ li r4, 0 +/* 80209054 00205FB4 48 13 7D ED */ bl __dt__6CTokenFv +/* 80209058 00205FB8 48 00 01 7C */ b lbl_802091D4 +lbl_8020905C: +/* 8020905C 00205FBC 3C 03 BC B3 */ addis r0, r3, 0xbcb3 +/* 80209060 00205FC0 28 00 44 4C */ cmplwi r0, 0x444c +/* 80209064 00205FC4 40 82 01 70 */ bne lbl_802091D4 +/* 80209068 00205FC8 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8020906C 00205FCC 7F E5 FB 78 */ mr r5, r31 +/* 80209070 00205FD0 38 61 00 30 */ addi r3, r1, 0x30 +/* 80209074 00205FD4 81 84 00 00 */ lwz r12, 0(r4) +/* 80209078 00205FD8 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8020907C 00205FDC 7D 89 03 A6 */ mtctr r12 +/* 80209080 00205FE0 4E 80 04 21 */ bctrl +/* 80209084 00205FE4 38 61 00 50 */ addi r3, r1, 0x50 +/* 80209088 00205FE8 38 81 00 30 */ addi r4, r1, 0x30 +/* 8020908C 00205FEC 48 13 7E 1D */ bl __ct__6CTokenFRC6CToken +/* 80209090 00205FF0 38 61 00 30 */ addi r3, r1, 0x30 +/* 80209094 00205FF4 38 80 FF FF */ li r4, -1 +/* 80209098 00205FF8 48 13 7D A9 */ bl __dt__6CTokenFv +/* 8020909C 00205FFC 38 61 00 50 */ addi r3, r1, 0x50 +/* 802090A0 00206000 48 13 7D 6D */ bl GetObj__6CTokenFv +/* 802090A4 00206004 2C 1E 00 00 */ cmpwi r30, 0 +/* 802090A8 00206008 83 43 00 04 */ lwz r26, 4(r3) +/* 802090AC 0020600C 40 82 00 F4 */ bne lbl_802091A0 +/* 802090B0 00206010 7F 44 D3 78 */ mr r4, r26 +/* 802090B4 00206014 38 61 00 28 */ addi r3, r1, 0x28 +/* 802090B8 00206018 48 14 C2 99 */ bl sub_80355350 +/* 802090BC 0020601C 88 81 00 28 */ lbz r4, 0x28(r1) +/* 802090C0 00206020 38 00 00 00 */ li r0, 0 +/* 802090C4 00206024 80 61 00 2C */ lwz r3, 0x2c(r1) +/* 802090C8 00206028 98 81 00 48 */ stb r4, 0x48(r1) +/* 802090CC 0020602C 90 61 00 4C */ stw r3, 0x4c(r1) +/* 802090D0 00206030 98 01 00 28 */ stb r0, 0x28(r1) +/* 802090D4 00206034 48 00 00 08 */ b lbl_802090DC +/* 802090D8 00206038 48 10 C8 59 */ bl Free__7CMemoryFPCv +lbl_802090DC: +/* 802090DC 0020603C 7F 43 D3 78 */ mr r3, r26 +/* 802090E0 00206040 48 14 C2 8D */ bl sub_8035536c +/* 802090E4 00206044 38 00 00 00 */ li r0, 0 +/* 802090E8 00206048 38 63 00 1F */ addi r3, r3, 0x1f +/* 802090EC 0020604C 98 01 00 48 */ stb r0, 0x48(r1) +/* 802090F0 00206050 54 65 00 34 */ rlwinm r5, r3, 0, 0, 0x1a +/* 802090F4 00206054 80 81 00 4C */ lwz r4, 0x4c(r1) +/* 802090F8 00206058 38 61 00 80 */ addi r3, r1, 0x80 +/* 802090FC 0020605C 38 C0 00 01 */ li r6, 1 +/* 80209100 00206060 48 14 F9 4D */ bl __ct__10CARAMTokenFPvUi +/* 80209104 00206064 38 61 00 80 */ addi r3, r1, 0x80 +/* 80209108 00206068 48 14 F5 71 */ bl LoadToARAM__10CARAMTokenFv +/* 8020910C 0020606C 38 61 00 80 */ addi r3, r1, 0x80 +/* 80209110 00206070 48 14 F2 79 */ bl sub_80358388 +/* 80209114 00206074 83 61 00 A8 */ lwz r27, 0xa8(r1) +/* 80209118 00206078 3C 60 80 3D */ lis r3, lbl_803D2768@ha +/* 8020911C 0020607C 38 83 27 68 */ addi r4, r3, lbl_803D2768@l +/* 80209120 00206080 38 A0 00 00 */ li r5, 0 +/* 80209124 00206084 83 5B 00 00 */ lwz r26, 0(r27) +/* 80209128 00206088 38 60 00 28 */ li r3, 0x28 +/* 8020912C 0020608C 48 10 C6 ED */ bl __nwa__FUlPCcPCc +/* 80209130 00206090 7C 7C 1B 79 */ or. r28, r3, r3 +/* 80209134 00206094 41 82 00 0C */ beq lbl_80209140 +/* 80209138 00206098 93 5C 00 00 */ stw r26, 0(r28) +/* 8020913C 0020609C 93 7C 00 04 */ stw r27, 4(r28) +lbl_80209140: +/* 80209140 002060A0 34 7C 00 08 */ addic. r3, r28, 8 +/* 80209144 002060A4 41 82 00 0C */ beq lbl_80209150 +/* 80209148 002060A8 38 81 00 80 */ addi r4, r1, 0x80 +/* 8020914C 002060AC 48 14 F8 81 */ bl __ct__10CARAMTokenFRC10CARAMToken +lbl_80209150: +/* 80209150 002060B0 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 80209154 002060B4 7C 1B 00 40 */ cmplw r27, r0 +/* 80209158 002060B8 40 82 00 08 */ bne lbl_80209160 +/* 8020915C 002060BC 93 81 00 A4 */ stw r28, 0xa4(r1) +lbl_80209160: +/* 80209160 002060C0 80 BC 00 00 */ lwz r5, 0(r28) +/* 80209164 002060C4 38 61 00 80 */ addi r3, r1, 0x80 +/* 80209168 002060C8 38 80 FF FF */ li r4, -1 +/* 8020916C 002060CC 93 85 00 04 */ stw r28, 4(r5) +/* 80209170 002060D0 80 BC 00 04 */ lwz r5, 4(r28) +/* 80209174 002060D4 93 85 00 00 */ stw r28, 0(r5) +/* 80209178 002060D8 80 A1 00 B4 */ lwz r5, 0xb4(r1) +/* 8020917C 002060DC 38 05 00 01 */ addi r0, r5, 1 +/* 80209180 002060E0 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 80209184 002060E4 48 14 F7 C1 */ bl __dt__10CARAMTokenFv +/* 80209188 002060E8 88 01 00 48 */ lbz r0, 0x48(r1) +/* 8020918C 002060EC 28 00 00 00 */ cmplwi r0, 0 +/* 80209190 002060F0 41 82 00 38 */ beq lbl_802091C8 +/* 80209194 002060F4 80 61 00 4C */ lwz r3, 0x4c(r1) +/* 80209198 002060F8 48 10 C7 99 */ bl Free__7CMemoryFPCv +/* 8020919C 002060FC 48 00 00 2C */ b lbl_802091C8 +lbl_802091A0: +/* 802091A0 00206100 80 61 00 A4 */ lwz r3, 0xa4(r1) +/* 802091A4 00206104 38 63 00 08 */ addi r3, r3, 8 +/* 802091A8 00206108 48 14 F2 2D */ bl sub_803583d4 +/* 802091AC 0020610C 80 81 00 A4 */ lwz r4, 0xa4(r1) +/* 802091B0 00206110 7C 7B 1B 78 */ mr r27, r3 +/* 802091B4 00206114 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 802091B8 00206118 48 00 26 5D */ bl sub_8020b814 +/* 802091BC 0020611C 7F 43 D3 78 */ mr r3, r26 +/* 802091C0 00206120 7F 64 DB 78 */ mr r4, r27 +/* 802091C4 00206124 48 14 BF 8D */ bl sub_80355150 +lbl_802091C8: +/* 802091C8 00206128 38 61 00 50 */ addi r3, r1, 0x50 +/* 802091CC 0020612C 38 80 00 00 */ li r4, 0 +/* 802091D0 00206130 48 13 7C 71 */ bl __dt__6CTokenFv +lbl_802091D4: +/* 802091D4 00206134 3B FF 00 08 */ addi r31, r31, 8 +lbl_802091D8: +/* 802091D8 00206138 7C 1F E8 40 */ cmplw r31, r29 +/* 802091DC 0020613C 40 82 FD 74 */ bne lbl_80208F50 +/* 802091E0 00206140 3B DE 00 01 */ addi r30, r30, 1 +/* 802091E4 00206144 2C 1E 00 02 */ cmpwi r30, 2 +/* 802091E8 00206148 41 80 FD 60 */ blt lbl_80208F48 +/* 802091EC 0020614C 38 00 00 00 */ li r0, 0 +/* 802091F0 00206150 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 802091F4 00206154 90 0D A8 70 */ stw r0, lbl_805A9430@sda21(r13) +/* 802091F8 00206158 38 80 FF FF */ li r4, -1 +/* 802091FC 0020615C 48 00 26 AD */ bl sub_8020b8a8 +/* 80209200 00206160 80 01 00 74 */ lwz r0, 0x74(r1) +/* 80209204 00206164 80 61 00 7C */ lwz r3, 0x7c(r1) +/* 80209208 00206168 54 00 18 38 */ slwi r0, r0, 3 +/* 8020920C 0020616C 7C 03 02 14 */ add r0, r3, r0 +/* 80209210 00206170 90 61 00 0C */ stw r3, 0xc(r1) +/* 80209214 00206174 7C 64 1B 78 */ mr r4, r3 +/* 80209218 00206178 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020921C 0020617C 90 01 00 10 */ stw r0, 0x10(r1) +/* 80209220 00206180 90 61 00 08 */ stw r3, 8(r1) +/* 80209224 00206184 48 00 00 08 */ b lbl_8020922C +lbl_80209228: +/* 80209228 00206188 38 84 00 08 */ addi r4, r4, 8 +lbl_8020922C: +/* 8020922C 0020618C 7C 04 00 40 */ cmplw r4, r0 +/* 80209230 00206190 40 82 FF F8 */ bne lbl_80209228 +/* 80209234 00206194 28 03 00 00 */ cmplwi r3, 0 +/* 80209238 00206198 41 82 00 08 */ beq lbl_80209240 +/* 8020923C 0020619C 48 10 C6 F5 */ bl Free__7CMemoryFPCv +lbl_80209240: +/* 80209240 002061A0 BB 41 00 B8 */ lmw r26, 0xb8(r1) +/* 80209244 002061A4 38 60 00 01 */ li r3, 1 +/* 80209248 002061A8 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 8020924C 002061AC 7C 08 03 A6 */ mtlr r0 +/* 80209250 002061B0 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 80209254 002061B4 4E 80 00 20 */ blr + +.global StartTextFadeOut__18CWorldTransManagerFv +StartTextFadeOut__18CWorldTransManagerFv: +/* 80209258 002061B8 88 03 00 44 */ lbz r0, 0x44(r3) +/* 8020925C 002061BC 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80209260 002061C0 40 82 00 0C */ bne lbl_8020926C +/* 80209264 002061C4 C0 03 00 00 */ lfs f0, 0(r3) +/* 80209268 002061C8 D0 03 00 34 */ stfs f0, 0x34(r3) +lbl_8020926C: +/* 8020926C 002061CC 88 03 00 44 */ lbz r0, 0x44(r3) +/* 80209270 002061D0 38 80 00 01 */ li r4, 1 +/* 80209274 002061D4 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 80209278 002061D8 98 03 00 44 */ stb r0, 0x44(r3) +/* 8020927C 002061DC 4E 80 00 20 */ blr + +.global DrawText__18CWorldTransManagerCFv +DrawText__18CWorldTransManagerCFv: +/* 80209280 002061E0 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 80209284 002061E4 7C 08 02 A6 */ mflr r0 +/* 80209288 002061E8 90 01 00 84 */ stw r0, 0x84(r1) +/* 8020928C 002061EC DB E1 00 70 */ stfd f31, 0x70(r1) +/* 80209290 002061F0 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 +/* 80209294 002061F4 DB C1 00 60 */ stfd f30, 0x60(r1) +/* 80209298 002061F8 F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 +/* 8020929C 002061FC 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 802092A0 00206200 80 8D A0 68 */ lwz r4, gpRender@sda21(r13) +/* 802092A4 00206204 7C 7F 1B 78 */ mr r31, r3 +/* 802092A8 00206208 38 61 00 14 */ addi r3, r1, 0x14 +/* 802092AC 0020620C C0 22 B1 20 */ lfs f1, lbl_805ACE40@sda21(r2) +/* 802092B0 00206210 81 84 00 00 */ lwz r12, 0(r4) +/* 802092B4 00206214 38 A0 00 00 */ li r5, 0 +/* 802092B8 00206218 C0 42 B1 24 */ lfs f2, lbl_805ACE44@sda21(r2) +/* 802092BC 0020621C 81 8C 00 54 */ lwz r12, 0x54(r12) +/* 802092C0 00206220 7D 89 03 A6 */ mtctr r12 +/* 802092C4 00206224 4E 80 04 21 */ bctrl +/* 802092C8 00206228 C0 22 B1 28 */ lfs f1, lbl_805ACE48@sda21(r2) +/* 802092CC 0020622C 38 61 00 24 */ addi r3, r1, 0x24 +/* 802092D0 00206230 C0 62 B1 2C */ lfs f3, lbl_805ACE4C@sda21(r2) +/* 802092D4 00206234 FC 40 08 90 */ fmr f2, f1 +/* 802092D8 00206238 48 10 9E B1 */ bl Translate__12CTransform4fFfff +/* 802092DC 0020623C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 802092E0 00206240 38 81 00 24 */ addi r4, r1, 0x24 +/* 802092E4 00206244 81 83 00 00 */ lwz r12, 0(r3) +/* 802092E8 00206248 81 8C 00 30 */ lwz r12, 0x30(r12) +/* 802092EC 0020624C 7D 89 03 A6 */ mtctr r12 +/* 802092F0 00206250 4E 80 04 21 */ bctrl +/* 802092F4 00206254 38 60 00 00 */ li r3, 0 +/* 802092F8 00206258 48 10 27 79 */ bl SetCullMode__9CGraphicsF12ERglCullMode +/* 802092FC 0020625C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 80209300 00206260 38 80 00 00 */ li r4, 0 +/* 80209304 00206264 38 A0 00 00 */ li r5, 0 +/* 80209308 00206268 81 83 00 00 */ lwz r12, 0(r3) +/* 8020930C 0020626C 81 8C 00 60 */ lwz r12, 0x60(r12) +/* 80209310 00206270 7D 89 03 A6 */ mtctr r12 +/* 80209314 00206274 4E 80 04 21 */ bctrl +/* 80209318 00206278 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 8020931C 0020627C 81 83 00 00 */ lwz r12, 0(r3) +/* 80209320 00206280 81 8C 00 64 */ lwz r12, 0x64(r12) +/* 80209324 00206284 7D 89 03 A6 */ mtctr r12 +/* 80209328 00206288 4E 80 04 21 */ bctrl +/* 8020932C 0020628C 80 7F 00 08 */ lwz r3, 8(r31) +/* 80209330 00206290 48 0C 02 15 */ bl Render__15CGuiTextSupportFv +/* 80209334 00206294 C0 5F 00 00 */ lfs f2, 0(r31) +/* 80209338 00206298 C0 02 B1 30 */ lfs f0, lbl_805ACE50@sda21(r2) +/* 8020933C 0020629C C3 C2 B1 28 */ lfs f30, lbl_805ACE48@sda21(r2) +/* 80209340 002062A0 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80209344 002062A4 40 80 00 2C */ bge lbl_80209370 +/* 80209348 002062A8 C0 0D 93 E8 */ lfs f0, lbl_805A7FA8@sda21(r13) +/* 8020934C 002062AC FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80209350 002062B0 40 80 00 0C */ bge lbl_8020935C +/* 80209354 002062B4 7F E3 FB 78 */ mr r3, r31 +/* 80209358 002062B8 48 00 00 08 */ b lbl_80209360 +lbl_8020935C: +/* 8020935C 002062BC 38 6D 93 E8 */ addi r3, r13, lbl_805A7FA8@sda21 +lbl_80209360: +/* 80209360 002062C0 C0 22 B1 30 */ lfs f1, lbl_805ACE50@sda21(r2) +/* 80209364 002062C4 C0 03 00 00 */ lfs f0, 0(r3) +/* 80209368 002062C8 EF C1 00 28 */ fsubs f30, f1, f0 +/* 8020936C 002062CC 48 00 00 38 */ b lbl_802093A4 +lbl_80209370: +/* 80209370 002062D0 88 1F 00 44 */ lbz r0, 0x44(r31) +/* 80209374 002062D4 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80209378 002062D8 41 82 00 2C */ beq lbl_802093A4 +/* 8020937C 002062DC C0 3F 00 34 */ lfs f1, 0x34(r31) +/* 80209380 002062E0 C0 0D 93 EC */ lfs f0, lbl_805A7FAC@sda21(r13) +/* 80209384 002062E4 EC 22 08 28 */ fsubs f1, f2, f1 +/* 80209388 002062E8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8020938C 002062EC D0 21 00 0C */ stfs f1, 0xc(r1) +/* 80209390 002062F0 40 80 00 0C */ bge lbl_8020939C +/* 80209394 002062F4 38 61 00 0C */ addi r3, r1, 0xc +/* 80209398 002062F8 48 00 00 08 */ b lbl_802093A0 +lbl_8020939C: +/* 8020939C 002062FC 38 6D 93 EC */ addi r3, r13, lbl_805A7FAC@sda21 +lbl_802093A0: +/* 802093A0 00206300 C3 C3 00 00 */ lfs f30, 0(r3) +lbl_802093A4: +/* 802093A4 00206304 C0 02 B1 28 */ lfs f0, lbl_805ACE48@sda21(r2) +/* 802093A8 00206308 FC 1E 00 40 */ fcmpo cr0, f30, f0 +/* 802093AC 0020630C 40 81 00 50 */ ble lbl_802093FC +/* 802093B0 00206310 88 1F 00 44 */ lbz r0, 0x44(r31) +/* 802093B4 00206314 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 802093B8 00206318 41 82 00 0C */ beq lbl_802093C4 +/* 802093BC 0020631C 48 14 0B F1 */ bl White__6CColorFv +/* 802093C0 00206320 48 00 00 08 */ b lbl_802093C8 +lbl_802093C4: +/* 802093C4 00206324 48 14 0B F1 */ bl Black__6CColorFv +lbl_802093C8: +/* 802093C8 00206328 C0 02 B1 34 */ lfs f0, lbl_805ACE54@sda21(r2) +/* 802093CC 0020632C EF E0 07 B2 */ fmuls f31, f0, f30 +/* 802093D0 00206330 F3 E1 A0 08 */ psq_st f31, 8(r1), 1, qr2 +/* 802093D4 00206334 38 A1 00 10 */ addi r5, r1, 0x10 +/* 802093D8 00206338 80 E3 00 00 */ lwz r7, 0(r3) +/* 802093DC 0020633C 38 60 00 05 */ li r3, 5 +/* 802093E0 00206340 88 01 00 08 */ lbz r0, 8(r1) +/* 802093E4 00206344 38 80 00 00 */ li r4, 0 +/* 802093E8 00206348 50 E0 00 2E */ rlwimi r0, r7, 0, 0, 0x17 +/* 802093EC 0020634C C0 22 B1 30 */ lfs f1, lbl_805ACE50@sda21(r2) +/* 802093F0 00206350 90 01 00 10 */ stw r0, 0x10(r1) +/* 802093F4 00206354 38 C0 00 00 */ li r6, 0 +/* 802093F8 00206358 4B EE 2D 51 */ bl DrawFilter__17CCameraFilterPassFQ217CCameraFilterPass11EFilterTypeQ217CCameraFilterPass12EFilterShapeRC6CColorPC8CTexturef +lbl_802093FC: +/* 802093FC 0020635C 38 60 00 01 */ li r3, 1 +/* 80209400 00206360 48 10 00 A9 */ bl SetIsBeginSceneClearFb__9CGraphicsFb +/* 80209404 00206364 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 +/* 80209408 00206368 CB E1 00 70 */ lfd f31, 0x70(r1) +/* 8020940C 0020636C E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 +/* 80209410 00206370 CB C1 00 60 */ lfd f30, 0x60(r1) +/* 80209414 00206374 80 01 00 84 */ lwz r0, 0x84(r1) +/* 80209418 00206378 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 8020941C 0020637C 7C 08 03 A6 */ mtlr r0 +/* 80209420 00206380 38 21 00 80 */ addi r1, r1, 0x80 +/* 80209424 00206384 4E 80 00 20 */ blr + +.global UpdateText__18CWorldTransManagerFf +UpdateText__18CWorldTransManagerFf: +/* 80209428 00206388 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8020942C 0020638C 7C 08 02 A6 */ mflr r0 +/* 80209430 00206390 90 01 00 44 */ stw r0, 0x44(r1) +/* 80209434 00206394 DB E1 00 30 */ stfd f31, 0x30(r1) +/* 80209438 00206398 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 8020943C 0020639C 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80209440 002063A0 88 03 00 44 */ lbz r0, 0x44(r3) +/* 80209444 002063A4 FF E0 08 90 */ fmr f31, f1 +/* 80209448 002063A8 7C 7F 1B 78 */ mr r31, r3 +/* 8020944C 002063AC 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 80209450 002063B0 41 82 00 C0 */ beq lbl_80209510 +/* 80209454 002063B4 38 61 00 10 */ addi r3, r1, 0x10 +/* 80209458 002063B8 38 9F 00 0C */ addi r4, r31, 0xc +/* 8020945C 002063BC 48 13 7A 4D */ bl __ct__6CTokenFRC6CToken +/* 80209460 002063C0 80 61 00 10 */ lwz r3, 0x10(r1) +/* 80209464 002063C4 80 03 00 10 */ lwz r0, 0x10(r3) +/* 80209468 002063C8 28 00 00 00 */ cmplwi r0, 0 +/* 8020946C 002063CC 41 82 00 7C */ beq lbl_802094E8 +/* 80209470 002063D0 38 61 00 10 */ addi r3, r1, 0x10 +/* 80209474 002063D4 48 13 79 99 */ bl GetObj__6CTokenFv +/* 80209478 002063D8 80 63 00 04 */ lwz r3, 4(r3) +/* 8020947C 002063DC 80 9F 00 40 */ lwz r4, 0x40(r31) +/* 80209480 002063E0 80 03 00 00 */ lwz r0, 0(r3) +/* 80209484 002063E4 7C 04 00 00 */ cmpw r4, r0 +/* 80209488 002063E8 40 80 00 44 */ bge lbl_802094CC +/* 8020948C 002063EC 38 61 00 10 */ addi r3, r1, 0x10 +/* 80209490 002063F0 48 13 79 7D */ bl GetObj__6CTokenFv +/* 80209494 002063F4 80 63 00 04 */ lwz r3, 4(r3) +/* 80209498 002063F8 80 9F 00 40 */ lwz r4, 0x40(r31) +/* 8020949C 002063FC 48 14 D2 61 */ bl GetString__12CStringTableCFi +/* 802094A0 00206400 7C 64 1B 78 */ mr r4, r3 +/* 802094A4 00206404 38 61 00 18 */ addi r3, r1, 0x18 +/* 802094A8 00206408 38 C1 00 08 */ addi r6, r1, 8 +/* 802094AC 0020640C 38 A0 FF FF */ li r5, -1 +/* 802094B0 00206410 48 13 43 0D */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCwiRCQ24rstl17rmemory_allocator" +/* 802094B4 00206414 80 7F 00 08 */ lwz r3, 8(r31) +/* 802094B8 00206418 38 81 00 18 */ addi r4, r1, 0x18 +/* 802094BC 0020641C 38 A0 00 00 */ li r5, 0 +/* 802094C0 00206420 48 0C 03 C5 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 802094C4 00206424 38 61 00 18 */ addi r3, r1, 0x18 +/* 802094C8 00206428 48 13 3C 6D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_802094CC: +/* 802094CC 0020642C C0 02 B1 28 */ lfs f0, lbl_805ACE48@sda21(r2) +/* 802094D0 00206430 38 60 00 00 */ li r3, 0 +/* 802094D4 00206434 D0 1F 00 3C */ stfs f0, 0x3c(r31) +/* 802094D8 00206438 88 1F 00 44 */ lbz r0, 0x44(r31) +/* 802094DC 0020643C 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 802094E0 00206440 98 1F 00 44 */ stb r0, 0x44(r31) +/* 802094E4 00206444 48 00 00 20 */ b lbl_80209504 +lbl_802094E8: +/* 802094E8 00206448 C0 3F 00 00 */ lfs f1, 0(r31) +/* 802094EC 0020644C C0 1F 00 38 */ lfs f0, 0x38(r31) +/* 802094F0 00206450 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802094F4 00206454 4C 41 13 82 */ cror 2, 1, 2 +/* 802094F8 00206458 40 82 00 0C */ bne lbl_80209504 +/* 802094FC 0020645C EC 00 F8 2A */ fadds f0, f0, f31 +/* 80209500 00206460 D0 1F 00 38 */ stfs f0, 0x38(r31) +lbl_80209504: +/* 80209504 00206464 38 61 00 10 */ addi r3, r1, 0x10 +/* 80209508 00206468 38 80 00 00 */ li r4, 0 +/* 8020950C 0020646C 48 13 79 35 */ bl __dt__6CTokenFv +lbl_80209510: +/* 80209510 00206470 C0 3F 00 00 */ lfs f1, 0(r31) +/* 80209514 00206474 C0 1F 00 38 */ lfs f0, 0x38(r31) +/* 80209518 00206478 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8020951C 0020647C 4C 41 13 82 */ cror 2, 1, 2 +/* 80209520 00206480 40 82 00 5C */ bne lbl_8020957C +/* 80209524 00206484 FC 20 F8 90 */ fmr f1, f31 +/* 80209528 00206488 80 7F 00 08 */ lwz r3, 8(r31) +/* 8020952C 0020648C 48 0B EC 4D */ bl Update__15CGuiTextSupportFf +/* 80209530 00206490 80 7F 00 08 */ lwz r3, 8(r31) +/* 80209534 00206494 48 0B EA E1 */ bl GetNumCharactersPrinted__15CGuiTextSupportCFv +/* 80209538 00206498 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) +/* 8020953C 0020649C C0 1F 00 3C */ lfs f0, 0x3c(r31) +/* 80209540 002064A0 C0 43 02 78 */ lfs f2, 0x278(r3) +/* 80209544 002064A4 EC 00 10 2A */ fadds f0, f0, f2 +/* 80209548 002064A8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8020954C 002064AC 4C 41 13 82 */ cror 2, 1, 2 +/* 80209550 002064B0 40 82 00 2C */ bne lbl_8020957C +/* 80209554 002064B4 D0 1F 00 3C */ stfs f0, 0x3c(r31) +/* 80209558 002064B8 38 61 00 0C */ addi r3, r1, 0xc +/* 8020955C 002064BC A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80209560 002064C0 38 80 05 9E */ li r4, 0x59e +/* 80209564 002064C4 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80209568 002064C8 38 A0 00 7F */ li r5, 0x7f +/* 8020956C 002064CC 38 C0 00 40 */ li r6, 0x40 +/* 80209570 002064D0 38 E0 00 00 */ li r7, 0 +/* 80209574 002064D4 39 20 00 00 */ li r9, 0 +/* 80209578 002064D8 48 0E 07 FD */ bl SfxStart__11CSfxManagerFUsssbsbi +lbl_8020957C: +/* 8020957C 002064DC 88 1F 00 44 */ lbz r0, 0x44(r31) +/* 80209580 002064E0 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80209584 002064E4 41 82 00 50 */ beq lbl_802095D4 +/* 80209588 002064E8 80 7F 00 08 */ lwz r3, 8(r31) +/* 8020958C 002064EC C3 E3 00 3C */ lfs f31, 0x3c(r3) +/* 80209590 002064F0 48 0B EB 19 */ bl GetTotalAnimationTime__15CGuiTextSupportCFv +/* 80209594 002064F4 C0 42 B1 30 */ lfs f2, lbl_805ACE50@sda21(r2) +/* 80209598 002064F8 EC 02 08 2A */ fadds f0, f2, f1 +/* 8020959C 002064FC FC 00 F8 40 */ fcmpo cr0, f0, f31 +/* 802095A0 00206500 40 80 00 2C */ bge lbl_802095CC +/* 802095A4 00206504 C0 3F 00 00 */ lfs f1, 0(r31) +/* 802095A8 00206508 C0 1F 00 34 */ lfs f0, 0x34(r31) +/* 802095AC 0020650C EC 01 00 28 */ fsubs f0, f1, f0 +/* 802095B0 00206510 FC 00 10 40 */ fcmpo cr0, f0, f2 +/* 802095B4 00206514 40 81 00 20 */ ble lbl_802095D4 +/* 802095B8 00206518 88 1F 00 44 */ lbz r0, 0x44(r31) +/* 802095BC 0020651C 38 60 00 01 */ li r3, 1 +/* 802095C0 00206520 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 802095C4 00206524 98 1F 00 44 */ stb r0, 0x44(r31) +/* 802095C8 00206528 48 00 00 0C */ b lbl_802095D4 +lbl_802095CC: +/* 802095CC 0020652C C0 1F 00 00 */ lfs f0, 0(r31) +/* 802095D0 00206530 D0 1F 00 34 */ stfs f0, 0x34(r31) +lbl_802095D4: +/* 802095D4 00206534 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 802095D8 00206538 80 01 00 44 */ lwz r0, 0x44(r1) +/* 802095DC 0020653C CB E1 00 30 */ lfd f31, 0x30(r1) +/* 802095E0 00206540 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 802095E4 00206544 7C 08 03 A6 */ mtlr r0 +/* 802095E8 00206548 38 21 00 40 */ addi r1, r1, 0x40 +/* 802095EC 0020654C 4E 80 00 20 */ blr + +.global EnableTransition__18CWorldTransManagerFviibbfff +EnableTransition__18CWorldTransManagerFviibbfff: +/* 802095F0 00206550 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 802095F4 00206554 7C 08 02 A6 */ mflr r0 +/* 802095F8 00206558 90 01 00 84 */ stw r0, 0x84(r1) +/* 802095FC 0020655C 38 00 00 02 */ li r0, 2 +/* 80209600 00206560 DB E1 00 78 */ stfd f31, 0x78(r1) +/* 80209604 00206564 FF E0 10 90 */ fmr f31, f2 +/* 80209608 00206568 DB C1 00 70 */ stfd f30, 0x70(r1) +/* 8020960C 0020656C FF C0 08 90 */ fmr f30, f1 +/* 80209610 00206570 BF 21 00 54 */ stmw r25, 0x54(r1) +/* 80209614 00206574 7C 9E 23 78 */ mr r30, r4 +/* 80209618 00206578 7C 7D 1B 78 */ mr r29, r3 +/* 8020961C 0020657C 7C BF 2B 78 */ mr r31, r5 +/* 80209620 00206580 7C F9 3B 78 */ mr r25, r7 +/* 80209624 00206584 38 80 00 00 */ li r4, 0 +/* 80209628 00206588 90 C3 00 40 */ stw r6, 0x40(r3) +/* 8020962C 0020658C 38 60 00 00 */ li r3, 0 +/* 80209630 00206590 D0 7D 00 38 */ stfs f3, 0x38(r29) +/* 80209634 00206594 88 BD 00 44 */ lbz r5, 0x44(r29) +/* 80209638 00206598 50 65 36 72 */ rlwimi r5, r3, 6, 0x19, 0x19 +/* 8020963C 0020659C 38 7D 00 04 */ addi r3, r29, 4 +/* 80209640 002065A0 98 BD 00 44 */ stb r5, 0x44(r29) +/* 80209644 002065A4 90 1D 00 30 */ stw r0, 0x30(r29) +/* 80209648 002065A8 48 00 01 89 */ bl sub_802097d0 +/* 8020964C 002065AC 88 1D 00 44 */ lbz r0, 0x44(r29) +/* 80209650 002065B0 53 20 26 F6 */ rlwimi r0, r25, 4, 0x1b, 0x1b +/* 80209654 002065B4 3C 60 80 3D */ lis r3, lbl_803D2768@ha +/* 80209658 002065B8 38 A0 00 00 */ li r5, 0 +/* 8020965C 002065BC 98 1D 00 44 */ stb r0, 0x44(r29) +/* 80209660 002065C0 38 83 27 68 */ addi r4, r3, lbl_803D2768@l +/* 80209664 002065C4 38 60 03 0C */ li r3, 0x30c +/* 80209668 002065C8 48 10 C2 05 */ bl __nw__FUlPCcPCc +/* 8020966C 002065CC 7C 79 1B 79 */ or. r25, r3, r3 +/* 80209670 002065D0 41 82 00 68 */ beq lbl_802096D8 +/* 80209674 002065D4 48 14 09 39 */ bl White__6CColorFv +/* 80209678 002065D8 7C 7A 1B 78 */ mr r26, r3 +/* 8020967C 002065DC 48 14 09 39 */ bl Black__6CColorFv +/* 80209680 002065E0 7C 7B 1B 78 */ mr r27, r3 +/* 80209684 002065E4 48 14 09 29 */ bl White__6CColorFv +/* 80209688 002065E8 7C 7C 1B 78 */ mr r28, r3 +/* 8020968C 002065EC 38 61 00 38 */ addi r3, r1, 0x38 +/* 80209690 002065F0 38 80 00 00 */ li r4, 0 +/* 80209694 002065F4 38 A0 00 01 */ li r5, 1 +/* 80209698 002065F8 38 C0 00 01 */ li r6, 1 +/* 8020969C 002065FC 38 E0 00 01 */ li r7, 1 +/* 802096A0 00206600 39 00 00 00 */ li r8, 0 +/* 802096A4 00206604 48 0C 09 A1 */ bl __ct__18CGuiTextPropertiesFv +/* 802096A8 00206608 80 0D A0 64 */ lwz r0, gpSimplePool@sda21(r13) +/* 802096AC 0020660C 7C 65 1B 78 */ mr r5, r3 +/* 802096B0 00206610 7F 23 CB 78 */ mr r3, r25 +/* 802096B4 00206614 7F C4 F3 78 */ mr r4, r30 +/* 802096B8 00206618 90 01 00 08 */ stw r0, 8(r1) +/* 802096BC 0020661C 7F 86 E3 78 */ mr r6, r28 +/* 802096C0 00206620 7F 67 DB 78 */ mr r7, r27 +/* 802096C4 00206624 7F 48 D3 78 */ mr r8, r26 +/* 802096C8 00206628 39 20 02 80 */ li r9, 0x280 +/* 802096CC 0020662C 39 40 01 C0 */ li r10, 0x1c0 +/* 802096D0 00206630 48 0C 07 6D */ bl __ct__15CGuiTextSupportFv +/* 802096D4 00206634 7C 79 1B 78 */ mr r25, r3 +lbl_802096D8: +/* 802096D8 00206638 80 7D 00 08 */ lwz r3, 8(r29) +/* 802096DC 0020663C 38 80 00 01 */ li r4, 1 +/* 802096E0 00206640 48 0C 05 B9 */ bl __dt__15CGuiTextSupportFv +/* 802096E4 00206644 93 3D 00 08 */ stw r25, 8(r29) +/* 802096E8 00206648 FC 20 F0 90 */ fmr f1, f30 +/* 802096EC 0020664C FC 40 F8 90 */ fmr f2, f31 +/* 802096F0 00206650 38 80 00 01 */ li r4, 1 +/* 802096F4 00206654 80 7D 00 08 */ lwz r3, 8(r29) +/* 802096F8 00206658 48 0B EA 21 */ bl SetTypeWriteEffectOptions__15CGuiTextSupportFbff +/* 802096FC 0020665C 3C 60 53 54 */ lis r3, 0x53545247@ha +/* 80209700 00206660 93 E1 00 24 */ stw r31, 0x24(r1) +/* 80209704 00206664 38 03 52 47 */ addi r0, r3, 0x53545247@l +/* 80209708 00206668 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8020970C 0020666C 90 01 00 20 */ stw r0, 0x20(r1) +/* 80209710 00206670 38 61 00 18 */ addi r3, r1, 0x18 +/* 80209714 00206674 38 A1 00 20 */ addi r5, r1, 0x20 +/* 80209718 00206678 81 84 00 00 */ lwz r12, 0(r4) +/* 8020971C 0020667C 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80209720 00206680 7D 89 03 A6 */ mtctr r12 +/* 80209724 00206684 4E 80 04 21 */ bctrl +/* 80209728 00206688 38 61 00 10 */ addi r3, r1, 0x10 +/* 8020972C 0020668C 38 81 00 18 */ addi r4, r1, 0x18 +/* 80209730 00206690 48 13 77 79 */ bl __ct__6CTokenFRC6CToken +/* 80209734 00206694 88 1D 00 14 */ lbz r0, 0x14(r29) +/* 80209738 00206698 28 00 00 00 */ cmplwi r0, 0 +/* 8020973C 0020669C 40 82 00 20 */ bne lbl_8020975C +/* 80209740 002066A0 34 7D 00 0C */ addic. r3, r29, 0xc +/* 80209744 002066A4 41 82 00 0C */ beq lbl_80209750 +/* 80209748 002066A8 38 81 00 10 */ addi r4, r1, 0x10 +/* 8020974C 002066AC 48 13 77 5D */ bl __ct__6CTokenFRC6CToken +lbl_80209750: +/* 80209750 002066B0 38 00 00 01 */ li r0, 1 +/* 80209754 002066B4 98 1D 00 14 */ stb r0, 0x14(r29) +/* 80209758 002066B8 48 00 00 10 */ b lbl_80209768 +lbl_8020975C: +/* 8020975C 002066BC 38 7D 00 0C */ addi r3, r29, 0xc +/* 80209760 002066C0 38 81 00 10 */ addi r4, r1, 0x10 +/* 80209764 002066C4 48 13 75 61 */ bl __as__6CTokenFRC6CToken +lbl_80209768: +/* 80209768 002066C8 38 61 00 10 */ addi r3, r1, 0x10 +/* 8020976C 002066CC 38 80 00 00 */ li r4, 0 +/* 80209770 002066D0 48 13 76 D1 */ bl __dt__6CTokenFv +/* 80209774 002066D4 38 61 00 18 */ addi r3, r1, 0x18 +/* 80209778 002066D8 38 80 FF FF */ li r4, -1 +/* 8020977C 002066DC 48 13 76 C5 */ bl __dt__6CTokenFv +/* 80209780 002066E0 38 7D 00 0C */ addi r3, r29, 0xc +/* 80209784 002066E4 48 13 76 01 */ bl Lock__6CTokenFv +/* 80209788 002066E8 38 61 00 28 */ addi r3, r1, 0x28 +/* 8020978C 002066EC 38 8D 93 F0 */ addi r4, r13, lbl_805A7FB0@sda21 +/* 80209790 002066F0 4B E0 C2 61 */ bl wstring_l__4rstlFPCw +/* 80209794 002066F4 80 7D 00 08 */ lwz r3, 8(r29) +/* 80209798 002066F8 38 81 00 28 */ addi r4, r1, 0x28 +/* 8020979C 002066FC 38 A0 00 00 */ li r5, 0 +/* 802097A0 00206700 48 0C 00 E5 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 802097A4 00206704 38 61 00 28 */ addi r3, r1, 0x28 +/* 802097A8 00206708 48 13 39 8D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 802097AC 0020670C 7F A3 EB 78 */ mr r3, r29 +/* 802097B0 00206710 48 00 13 C9 */ bl StartTransition__18CWorldTransManagerFv +/* 802097B4 00206714 CB E1 00 78 */ lfd f31, 0x78(r1) +/* 802097B8 00206718 CB C1 00 70 */ lfd f30, 0x70(r1) +/* 802097BC 0020671C BB 21 00 54 */ lmw r25, 0x54(r1) +/* 802097C0 00206720 80 01 00 84 */ lwz r0, 0x84(r1) +/* 802097C4 00206724 7C 08 03 A6 */ mtlr r0 +/* 802097C8 00206728 38 21 00 80 */ addi r1, r1, 0x80 +/* 802097CC 0020672C 4E 80 00 20 */ blr + +.global sub_802097d0 +sub_802097d0: +/* 802097D0 00206730 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 802097D4 00206734 7C 08 02 A6 */ mflr r0 +/* 802097D8 00206738 90 01 00 14 */ stw r0, 0x14(r1) +/* 802097DC 0020673C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 802097E0 00206740 7C 9F 23 78 */ mr r31, r4 +/* 802097E4 00206744 38 80 00 01 */ li r4, 1 +/* 802097E8 00206748 93 C1 00 08 */ stw r30, 8(r1) +/* 802097EC 0020674C 7C 7E 1B 78 */ mr r30, r3 +/* 802097F0 00206750 80 63 00 00 */ lwz r3, 0(r3) +/* 802097F4 00206754 48 00 00 25 */ bl __dt__Q218CWorldTransManager11SModelDatasFv +/* 802097F8 00206758 93 FE 00 00 */ stw r31, 0(r30) +/* 802097FC 0020675C 7F C3 F3 78 */ mr r3, r30 +/* 80209800 00206760 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80209804 00206764 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80209808 00206768 83 C1 00 08 */ lwz r30, 8(r1) +/* 8020980C 0020676C 7C 08 03 A6 */ mtlr r0 +/* 80209810 00206770 38 21 00 10 */ addi r1, r1, 0x10 +/* 80209814 00206774 4E 80 00 20 */ blr + +.global __dt__Q218CWorldTransManager11SModelDatasFv +__dt__Q218CWorldTransManager11SModelDatasFv: +/* 80209818 00206778 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8020981C 0020677C 7C 08 02 A6 */ mflr r0 +/* 80209820 00206780 90 01 00 24 */ stw r0, 0x24(r1) +/* 80209824 00206784 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80209828 00206788 7C 9F 23 78 */ mr r31, r4 +/* 8020982C 0020678C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80209830 00206790 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80209834 00206794 41 82 01 14 */ beq lbl_80209948 +/* 80209838 00206798 34 1E 01 B0 */ addic. r0, r30, 0x1b0 +/* 8020983C 0020679C 41 82 00 0C */ beq lbl_80209848 +/* 80209840 002067A0 80 7E 01 B0 */ lwz r3, 0x1b0(r30) +/* 80209844 002067A4 48 10 C0 ED */ bl Free__7CMemoryFPCv +lbl_80209848: +/* 80209848 002067A8 34 1E 01 A0 */ addic. r0, r30, 0x1a0 +/* 8020984C 002067AC 41 82 00 44 */ beq lbl_80209890 +/* 80209850 002067B0 80 1E 01 A4 */ lwz r0, 0x1a4(r30) +/* 80209854 002067B4 80 7E 01 AC */ lwz r3, 0x1ac(r30) +/* 80209858 002067B8 1C 00 00 50 */ mulli r0, r0, 0x50 +/* 8020985C 002067BC 90 61 00 0C */ stw r3, 0xc(r1) +/* 80209860 002067C0 7C 64 1B 78 */ mr r4, r3 +/* 80209864 002067C4 7C 03 02 14 */ add r0, r3, r0 +/* 80209868 002067C8 90 61 00 08 */ stw r3, 8(r1) +/* 8020986C 002067CC 90 01 00 14 */ stw r0, 0x14(r1) +/* 80209870 002067D0 90 01 00 10 */ stw r0, 0x10(r1) +/* 80209874 002067D4 48 00 00 08 */ b lbl_8020987C +lbl_80209878: +/* 80209878 002067D8 38 84 00 50 */ addi r4, r4, 0x50 +lbl_8020987C: +/* 8020987C 002067DC 7C 04 00 40 */ cmplw r4, r0 +/* 80209880 002067E0 40 82 FF F8 */ bne lbl_80209878 +/* 80209884 002067E4 28 03 00 00 */ cmplwi r3, 0 +/* 80209888 002067E8 41 82 00 08 */ beq lbl_80209890 +/* 8020988C 002067EC 48 10 C0 A5 */ bl Free__7CMemoryFPCv +lbl_80209890: +/* 80209890 002067F0 34 1E 01 64 */ addic. r0, r30, 0x164 +/* 80209894 002067F4 41 82 00 24 */ beq lbl_802098B8 +/* 80209898 002067F8 88 1E 01 6C */ lbz r0, 0x16c(r30) +/* 8020989C 002067FC 28 00 00 00 */ cmplwi r0, 0 +/* 802098A0 00206800 41 82 00 10 */ beq lbl_802098B0 +/* 802098A4 00206804 38 7E 01 64 */ addi r3, r30, 0x164 +/* 802098A8 00206808 38 80 FF FF */ li r4, -1 +/* 802098AC 0020680C 48 13 75 95 */ bl __dt__6CTokenFv +lbl_802098B0: +/* 802098B0 00206810 38 00 00 00 */ li r0, 0 +/* 802098B4 00206814 98 1E 01 6C */ stb r0, 0x16c(r30) +lbl_802098B8: +/* 802098B8 00206818 34 1E 01 58 */ addic. r0, r30, 0x158 +/* 802098BC 0020681C 41 82 00 24 */ beq lbl_802098E0 +/* 802098C0 00206820 88 1E 01 60 */ lbz r0, 0x160(r30) +/* 802098C4 00206824 28 00 00 00 */ cmplwi r0, 0 +/* 802098C8 00206828 41 82 00 10 */ beq lbl_802098D8 +/* 802098CC 0020682C 38 7E 01 58 */ addi r3, r30, 0x158 +/* 802098D0 00206830 38 80 FF FF */ li r4, -1 +/* 802098D4 00206834 48 13 75 6D */ bl __dt__6CTokenFv +lbl_802098D8: +/* 802098D8 00206838 38 00 00 00 */ li r0, 0 +/* 802098DC 0020683C 98 1E 01 60 */ stb r0, 0x160(r30) +lbl_802098E0: +/* 802098E0 00206840 34 1E 01 4C */ addic. r0, r30, 0x14c +/* 802098E4 00206844 41 82 00 24 */ beq lbl_80209908 +/* 802098E8 00206848 88 1E 01 54 */ lbz r0, 0x154(r30) +/* 802098EC 0020684C 28 00 00 00 */ cmplwi r0, 0 +/* 802098F0 00206850 41 82 00 10 */ beq lbl_80209900 +/* 802098F4 00206854 38 7E 01 4C */ addi r3, r30, 0x14c +/* 802098F8 00206858 38 80 FF FF */ li r4, -1 +/* 802098FC 0020685C 48 13 75 45 */ bl __dt__6CTokenFv +lbl_80209900: +/* 80209900 00206860 38 00 00 00 */ li r0, 0 +/* 80209904 00206864 98 1E 01 54 */ stb r0, 0x154(r30) +lbl_80209908: +/* 80209908 00206868 38 7E 01 00 */ addi r3, r30, 0x100 +/* 8020990C 0020686C 38 80 FF FF */ li r4, -1 +/* 80209910 00206870 4B F0 D1 3D */ bl __dt__10CModelDataFv +/* 80209914 00206874 38 7E 00 B4 */ addi r3, r30, 0xb4 +/* 80209918 00206878 38 80 FF FF */ li r4, -1 +/* 8020991C 0020687C 4B F0 D1 31 */ bl __dt__10CModelDataFv +/* 80209920 00206880 38 7E 00 68 */ addi r3, r30, 0x68 +/* 80209924 00206884 38 80 FF FF */ li r4, -1 +/* 80209928 00206888 4B F0 D1 25 */ bl __dt__10CModelDataFv +/* 8020992C 0020688C 38 7E 00 1C */ addi r3, r30, 0x1c +/* 80209930 00206890 38 80 FF FF */ li r4, -1 +/* 80209934 00206894 4B F0 D1 19 */ bl __dt__10CModelDataFv +/* 80209938 00206898 7F E0 07 35 */ extsh. r0, r31 +/* 8020993C 0020689C 40 81 00 0C */ ble lbl_80209948 +/* 80209940 002068A0 7F C3 F3 78 */ mr r3, r30 +/* 80209944 002068A4 48 10 BF ED */ bl Free__7CMemoryFPCv +lbl_80209948: +/* 80209948 002068A8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8020994C 002068AC 7F C3 F3 78 */ mr r3, r30 +/* 80209950 002068B0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80209954 002068B4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80209958 002068B8 7C 08 03 A6 */ mtlr r0 +/* 8020995C 002068BC 38 21 00 20 */ addi r1, r1, 0x20 +/* 80209960 002068C0 4E 80 00 20 */ blr + +.global sub_80209964 +sub_80209964: +/* 80209964 002068C4 B0 83 00 24 */ sth r4, 0x24(r3) +/* 80209968 002068C8 98 A3 00 2C */ stb r5, 0x2c(r3) +/* 8020996C 002068CC 98 C3 00 2D */ stb r6, 0x2d(r3) +/* 80209970 002068D0 4E 80 00 20 */ blr + +.global sub_80209974 +sub_80209974: +/* 80209974 002068D4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80209978 002068D8 7C 08 02 A6 */ mflr r0 +/* 8020997C 002068DC 90 01 00 24 */ stw r0, 0x24(r1) +/* 80209980 002068E0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80209984 002068E4 7C 7F 1B 78 */ mr r31, r3 +/* 80209988 002068E8 80 03 00 28 */ lwz r0, 0x28(r3) +/* 8020998C 002068EC 28 00 00 00 */ cmplwi r0, 0 +/* 80209990 002068F0 41 82 00 1C */ beq lbl_802099AC +/* 80209994 002068F4 80 1F 00 28 */ lwz r0, 0x28(r31) +/* 80209998 002068F8 38 61 00 08 */ addi r3, r1, 8 +/* 8020999C 002068FC 90 01 00 08 */ stw r0, 8(r1) +/* 802099A0 00206900 48 0E 03 A9 */ bl SfxStop__11CSfxManagerFRC10CSfxHandle +/* 802099A4 00206904 38 00 00 00 */ li r0, 0 +/* 802099A8 00206908 90 1F 00 28 */ stw r0, 0x28(r31) +lbl_802099AC: +/* 802099AC 0020690C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 802099B0 00206910 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 802099B4 00206914 7C 08 03 A6 */ mtlr r0 +/* 802099B8 00206918 38 21 00 20 */ addi r1, r1, 0x20 +/* 802099BC 0020691C 4E 80 00 20 */ blr + +.global sub_802099c0 +sub_802099c0: +/* 802099C0 00206920 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 802099C4 00206924 7C 08 02 A6 */ mflr r0 +/* 802099C8 00206928 90 01 00 24 */ stw r0, 0x24(r1) +/* 802099CC 0020692C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 802099D0 00206930 7C 7F 1B 78 */ mr r31, r3 +/* 802099D4 00206934 80 03 00 28 */ lwz r0, 0x28(r3) +/* 802099D8 00206938 28 00 00 00 */ cmplwi r0, 0 +/* 802099DC 0020693C 40 82 00 3C */ bne lbl_80209A18 +/* 802099E0 00206940 A0 9F 00 24 */ lhz r4, 0x24(r31) +/* 802099E4 00206944 A0 02 C5 FC */ lhz r0, lbl_805AE31C@sda21(r2) +/* 802099E8 00206948 7C 04 00 40 */ cmplw r4, r0 +/* 802099EC 0020694C 41 82 00 2C */ beq lbl_80209A18 +/* 802099F0 00206950 88 BF 00 2C */ lbz r5, 0x2c(r31) +/* 802099F4 00206954 38 61 00 08 */ addi r3, r1, 8 +/* 802099F8 00206958 88 DF 00 2D */ lbz r6, 0x2d(r31) +/* 802099FC 0020695C 38 E0 00 00 */ li r7, 0 +/* 80209A00 00206960 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80209A04 00206964 39 20 00 01 */ li r9, 1 +/* 80209A08 00206968 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80209A0C 0020696C 48 0E 03 69 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80209A10 00206970 80 01 00 08 */ lwz r0, 8(r1) +/* 80209A14 00206974 90 1F 00 28 */ stw r0, 0x28(r31) +lbl_80209A18: +/* 80209A18 00206978 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80209A1C 0020697C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80209A20 00206980 7C 08 03 A6 */ mtlr r0 +/* 80209A24 00206984 38 21 00 20 */ addi r1, r1, 0x20 +/* 80209A28 00206988 4E 80 00 20 */ blr + +.global DrawDisabled__18CWorldTransManagerCFv +DrawDisabled__18CWorldTransManagerCFv: +/* 80209A2C 0020698C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80209A30 00206990 7C 08 02 A6 */ mflr r0 +/* 80209A34 00206994 38 E0 00 00 */ li r7, 0 +/* 80209A38 00206998 C0 22 B1 30 */ lfs f1, lbl_805ACE50@sda21(r2) +/* 80209A3C 0020699C 90 01 00 14 */ stw r0, 0x14(r1) +/* 80209A40 002069A0 38 00 00 03 */ li r0, 3 +/* 80209A44 002069A4 38 A1 00 0C */ addi r5, r1, 0xc +/* 80209A48 002069A8 38 60 00 05 */ li r3, 5 +/* 80209A4C 002069AC 98 E1 00 08 */ stb r7, 8(r1) +/* 80209A50 002069B0 38 80 00 00 */ li r4, 0 +/* 80209A54 002069B4 38 C0 00 00 */ li r6, 0 +/* 80209A58 002069B8 98 E1 00 09 */ stb r7, 9(r1) +/* 80209A5C 002069BC 98 E1 00 0A */ stb r7, 0xa(r1) +/* 80209A60 002069C0 98 01 00 0B */ stb r0, 0xb(r1) +/* 80209A64 002069C4 80 01 00 08 */ lwz r0, 8(r1) +/* 80209A68 002069C8 90 01 00 0C */ stw r0, 0xc(r1) +/* 80209A6C 002069CC 4B EE 26 DD */ bl DrawFilter__17CCameraFilterPassFQ217CCameraFilterPass11EFilterTypeQ217CCameraFilterPass12EFilterShapeRC6CColorPC8CTexturef +/* 80209A70 002069D0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80209A74 002069D4 7C 08 03 A6 */ mtlr r0 +/* 80209A78 002069D8 38 21 00 10 */ addi r1, r1, 0x10 +/* 80209A7C 002069DC 4E 80 00 20 */ blr + +.global DrawEnabled__18CWorldTransManagerCFv +DrawEnabled__18CWorldTransManagerCFv: +/* 80209A80 002069E0 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 80209A84 002069E4 7C 08 02 A6 */ mflr r0 +/* 80209A88 002069E8 90 01 00 84 */ stw r0, 0x84(r1) +/* 80209A8C 002069EC DB E1 00 70 */ stfd f31, 0x70(r1) +/* 80209A90 002069F0 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 +/* 80209A94 002069F4 DB C1 00 60 */ stfd f30, 0x60(r1) +/* 80209A98 002069F8 F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 +/* 80209A9C 002069FC BF 41 00 48 */ stmw r26, 0x48(r1) +/* 80209AA0 00206A00 7C 7D 1B 78 */ mr r29, r3 +/* 80209AA4 00206A04 80 03 00 04 */ lwz r0, 4(r3) +/* 80209AA8 00206A08 28 00 00 00 */ cmplwi r0, 0 +/* 80209AAC 00206A0C 41 82 04 58 */ beq lbl_80209F04 +/* 80209AB0 00206A10 4B E0 26 21 */ bl DefaultFirstPersonFov__14CCameraManagerFv +/* 80209AB4 00206A14 FF E0 08 90 */ fmr f31, f1 +/* 80209AB8 00206A18 4B E0 26 11 */ bl DefaultNearPlane__14CCameraManagerFv +/* 80209ABC 00206A1C FF C0 08 90 */ fmr f30, f1 +/* 80209AC0 00206A20 4B E0 26 01 */ bl DefaultFarPlane__14CCameraManagerFv +/* 80209AC4 00206A24 3C 60 80 3F */ lis r3, lbl_803ED910@ha +/* 80209AC8 00206A28 3C 80 43 30 */ lis r4, 0x4330 +/* 80209ACC 00206A2C 3B C3 D9 10 */ addi r30, r3, lbl_803ED910@l +/* 80209AD0 00206A30 FC 00 08 90 */ fmr f0, f1 +/* 80209AD4 00206A34 80 7E 00 08 */ lwz r3, 8(r30) +/* 80209AD8 00206A38 FC 20 F8 90 */ fmr f1, f31 +/* 80209ADC 00206A3C 80 1E 00 0C */ lwz r0, 0xc(r30) +/* 80209AE0 00206A40 FC 60 F0 90 */ fmr f3, f30 +/* 80209AE4 00206A44 6C 65 80 00 */ xoris r5, r3, 0x8000 +/* 80209AE8 00206A48 90 81 00 18 */ stw r4, 0x18(r1) +/* 80209AEC 00206A4C 6C 00 80 00 */ xoris r0, r0, 0x8000 +/* 80209AF0 00206A50 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 80209AF4 00206A54 FC 80 00 90 */ fmr f4, f0 +/* 80209AF8 00206A58 90 A1 00 1C */ stw r5, 0x1c(r1) +/* 80209AFC 00206A5C C8 A2 B1 40 */ lfd f5, lbl_805ACE60@sda21(r2) +/* 80209B00 00206A60 C8 01 00 18 */ lfd f0, 0x18(r1) +/* 80209B04 00206A64 90 01 00 24 */ stw r0, 0x24(r1) +/* 80209B08 00206A68 EC 40 28 28 */ fsubs f2, f0, f5 +/* 80209B0C 00206A6C 81 83 00 00 */ lwz r12, 0(r3) +/* 80209B10 00206A70 90 81 00 20 */ stw r4, 0x20(r1) +/* 80209B14 00206A74 81 8C 00 50 */ lwz r12, 0x50(r12) +/* 80209B18 00206A78 C8 01 00 20 */ lfd f0, 0x20(r1) +/* 80209B1C 00206A7C EC 00 28 28 */ fsubs f0, f0, f5 +/* 80209B20 00206A80 EC 42 00 24 */ fdivs f2, f2, f0 +/* 80209B24 00206A84 7D 89 03 A6 */ mtctr r12 +/* 80209B28 00206A88 4E 80 04 21 */ bctrl +/* 80209B2C 00206A8C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 80209B30 00206A90 38 80 00 01 */ li r4, 1 +/* 80209B34 00206A94 88 03 03 18 */ lbz r0, 0x318(r3) +/* 80209B38 00206A98 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 80209B3C 00206A9C 98 03 03 18 */ stb r0, 0x318(r3) +/* 80209B40 00206AA0 80 7D 00 04 */ lwz r3, 4(r29) +/* 80209B44 00206AA4 C0 5D 00 00 */ lfs f2, 0(r29) +/* 80209B48 00206AA8 C0 23 01 D0 */ lfs f1, 0x1d0(r3) +/* 80209B4C 00206AAC FC 02 08 40 */ fcmpo cr0, f2, f1 +/* 80209B50 00206AB0 4C 40 13 82 */ cror 2, 0, 2 +/* 80209B54 00206AB4 40 82 00 10 */ bne lbl_80209B64 +/* 80209B58 00206AB8 7F A3 EB 78 */ mr r3, r29 +/* 80209B5C 00206ABC 48 00 04 C5 */ bl DrawFirstPass__18CWorldTransManagerCFv +/* 80209B60 00206AC0 48 00 02 F4 */ b lbl_80209E54 +lbl_80209B64: +/* 80209B64 00206AC4 C0 03 01 D4 */ lfs f0, 0x1d4(r3) +/* 80209B68 00206AC8 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80209B6C 00206ACC 4C 41 13 82 */ cror 2, 1, 2 +/* 80209B70 00206AD0 40 82 00 10 */ bne lbl_80209B80 +/* 80209B74 00206AD4 7F A3 EB 78 */ mr r3, r29 +/* 80209B78 00206AD8 48 00 03 B1 */ bl DrawSecondPass__18CWorldTransManagerCFv +/* 80209B7C 00206ADC 48 00 02 D8 */ b lbl_80209E54 +lbl_80209B80: +/* 80209B80 00206AE0 EC 22 08 28 */ fsubs f1, f2, f1 +/* 80209B84 00206AE4 C0 02 B1 38 */ lfs f0, lbl_805ACE58@sda21(r2) +/* 80209B88 00206AE8 38 81 00 10 */ addi r4, r1, 0x10 +/* 80209B8C 00206AEC 38 6D 93 E0 */ addi r3, r13, lbl_805A7FA0@sda21 +/* 80209B90 00206AF0 38 AD 93 E4 */ addi r5, r13, lbl_805A7FA4@sda21 +/* 80209B94 00206AF4 EC 01 00 32 */ fmuls f0, f1, f0 +/* 80209B98 00206AF8 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 80209B9C 00206AFC 4B E0 27 19 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 80209BA0 00206B00 C0 23 00 00 */ lfs f1, 0(r3) +/* 80209BA4 00206B04 3C 60 80 3F */ lis r3, lbl_803ED910@ha +/* 80209BA8 00206B08 C0 02 B1 30 */ lfs f0, lbl_805ACE50@sda21(r2) +/* 80209BAC 00206B0C 38 A3 D9 10 */ addi r5, r3, lbl_803ED910@l +/* 80209BB0 00206B10 80 9D 00 04 */ lwz r4, 4(r29) +/* 80209BB4 00206B14 7F A3 EB 78 */ mr r3, r29 +/* 80209BB8 00206B18 EF C0 08 28 */ fsubs f30, f0, f1 +/* 80209BBC 00206B1C 83 85 00 00 */ lwz r28, 0(r5) +/* 80209BC0 00206B20 83 65 00 04 */ lwz r27, 4(r5) +/* 80209BC4 00206B24 83 FE 00 08 */ lwz r31, 8(r30) +/* 80209BC8 00206B28 EF DE 07 B2 */ fmuls f30, f30, f30 +/* 80209BCC 00206B2C 83 DE 00 0C */ lwz r30, 0xc(r30) +/* 80209BD0 00206B30 83 44 01 B0 */ lwz r26, 0x1b0(r4) +/* 80209BD4 00206B34 48 00 04 4D */ bl DrawFirstPass__18CWorldTransManagerCFv +/* 80209BD8 00206B38 38 60 00 01 */ li r3, 1 +/* 80209BDC 00206B3C 38 80 00 03 */ li r4, 3 +/* 80209BE0 00206B40 38 A0 00 01 */ li r5, 1 +/* 80209BE4 00206B44 48 0F EC 99 */ bl SetZMode__3CGXFb10_GXCompareb +/* 80209BE8 00206B48 57 E3 04 3E */ clrlwi r3, r31, 0x10 +/* 80209BEC 00206B4C 57 C4 04 3E */ clrlwi r4, r30, 0x10 +/* 80209BF0 00206B50 38 A0 00 04 */ li r5, 4 +/* 80209BF4 00206B54 38 C0 00 00 */ li r6, 0 +/* 80209BF8 00206B58 48 16 F2 89 */ bl GXSetTexCopyDst +/* 80209BFC 00206B5C 57 83 04 3E */ clrlwi r3, r28, 0x10 +/* 80209C00 00206B60 57 64 04 3E */ clrlwi r4, r27, 0x10 +/* 80209C04 00206B64 57 E5 04 3E */ clrlwi r5, r31, 0x10 +/* 80209C08 00206B68 57 C6 04 3E */ clrlwi r6, r30, 0x10 +/* 80209C0C 00206B6C 48 16 F1 A9 */ bl GXSetTexCopySrc +/* 80209C10 00206B70 7F 43 D3 78 */ mr r3, r26 +/* 80209C14 00206B74 38 80 00 01 */ li r4, 1 +/* 80209C18 00206B78 48 16 F9 1D */ bl GXCopyTex +/* 80209C1C 00206B7C 7F A3 EB 78 */ mr r3, r29 +/* 80209C20 00206B80 48 00 03 09 */ bl DrawSecondPass__18CWorldTransManagerCFv +/* 80209C24 00206B84 3C 60 43 30 */ lis r3, 0x4330 +/* 80209C28 00206B88 6F E4 80 00 */ xoris r4, r31, 0x8000 +/* 80209C2C 00206B8C 6F C0 80 00 */ xoris r0, r30, 0x8000 +/* 80209C30 00206B90 90 81 00 24 */ stw r4, 0x24(r1) +/* 80209C34 00206B94 C0 22 B1 28 */ lfs f1, lbl_805ACE48@sda21(r2) +/* 80209C38 00206B98 90 61 00 20 */ stw r3, 0x20(r1) +/* 80209C3C 00206B9C C8 82 B1 40 */ lfd f4, lbl_805ACE60@sda21(r2) +/* 80209C40 00206BA0 FC 60 08 90 */ fmr f3, f1 +/* 80209C44 00206BA4 C8 01 00 20 */ lfd f0, 0x20(r1) +/* 80209C48 00206BA8 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80209C4C 00206BAC EC 40 20 28 */ fsubs f2, f0, f4 +/* 80209C50 00206BB0 C0 A2 B1 20 */ lfs f5, lbl_805ACE40@sda21(r2) +/* 80209C54 00206BB4 90 61 00 18 */ stw r3, 0x18(r1) +/* 80209C58 00206BB8 C0 C2 B1 24 */ lfs f6, lbl_805ACE44@sda21(r2) +/* 80209C5C 00206BBC C8 01 00 18 */ lfd f0, 0x18(r1) +/* 80209C60 00206BC0 EC 80 20 28 */ fsubs f4, f0, f4 +/* 80209C64 00206BC4 48 10 28 F1 */ bl SetOrtho__9CGraphicsFffffff +/* 80209C68 00206BC8 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 80209C6C 00206BCC 38 63 66 70 */ addi r3, r3, skIdentity4f@l +/* 80209C70 00206BD0 48 10 2A DD */ bl SetViewPointMatrix__9CGraphicsFRC12CTransform4f +/* 80209C74 00206BD4 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 80209C78 00206BD8 3C 80 80 5A */ lis r4, skIdentity4f@ha +/* 80209C7C 00206BDC 38 84 66 70 */ addi r4, r4, skIdentity4f@l +/* 80209C80 00206BE0 81 83 00 00 */ lwz r12, 0(r3) +/* 80209C84 00206BE4 81 8C 00 30 */ lwz r12, 0x30(r12) +/* 80209C88 00206BE8 7D 89 03 A6 */ mtctr r12 +/* 80209C8C 00206BEC 4E 80 04 21 */ bctrl +/* 80209C90 00206BF0 48 16 E8 D5 */ bl GXPixModeSync +/* 80209C94 00206BF4 80 E2 C7 A8 */ lwz r7, lbl_805AE4C8@sda21(r2) +/* 80209C98 00206BF8 7F E3 FB 78 */ mr r3, r31 +/* 80209C9C 00206BFC 7F C4 F3 78 */ mr r4, r30 +/* 80209CA0 00206C00 7F 46 D3 78 */ mr r6, r26 +/* 80209CA4 00206C04 38 A0 00 04 */ li r5, 4 +/* 80209CA8 00206C08 48 10 03 79 */ bl LoadDolphinSpareTexture__9CGraphicsFii9_GXTexFmtPv11_GXTexMapID +/* 80209CAC 00206C0C 3C 60 80 3D */ lis r3, lbl_803D2750@ha +/* 80209CB0 00206C10 38 63 27 50 */ addi r3, r3, lbl_803D2750@l +/* 80209CB4 00206C14 48 0F E1 75 */ bl SetVtxDescv__3CGXFPC14_GXVtxDescList +/* 80209CB8 00206C18 38 60 00 01 */ li r3, 1 +/* 80209CBC 00206C1C 38 80 00 04 */ li r4, 4 +/* 80209CC0 00206C20 38 A0 00 05 */ li r5, 5 +/* 80209CC4 00206C24 38 C0 00 00 */ li r6, 0 +/* 80209CC8 00206C28 48 0F EC 09 */ bl SetBlendMode__3CGXF12_GXBlendMode14_GXBlendFactor14_GXBlendFactor10_GXLogicOp +/* 80209CCC 00206C2C C0 22 B1 30 */ lfs f1, lbl_805ACE50@sda21(r2) +/* 80209CD0 00206C30 FC 80 F0 90 */ fmr f4, f30 +/* 80209CD4 00206C34 38 61 00 08 */ addi r3, r1, 8 +/* 80209CD8 00206C38 FC 40 08 90 */ fmr f2, f1 +/* 80209CDC 00206C3C FC 60 08 90 */ fmr f3, f1 +/* 80209CE0 00206C40 48 15 97 0D */ bl __ct__6CColorFffff +/* 80209CE4 00206C44 80 03 00 00 */ lwz r0, 0(r3) +/* 80209CE8 00206C48 38 81 00 0C */ addi r4, r1, 0xc +/* 80209CEC 00206C4C 38 60 00 01 */ li r3, 1 +/* 80209CF0 00206C50 90 01 00 0C */ stw r0, 0xc(r1) +/* 80209CF4 00206C54 48 17 19 09 */ bl GXSetTevColor +/* 80209CF8 00206C58 38 60 00 00 */ li r3, 0 +/* 80209CFC 00206C5C 38 80 00 0F */ li r4, 0xf +/* 80209D00 00206C60 38 A0 00 0F */ li r5, 0xf +/* 80209D04 00206C64 38 C0 00 0F */ li r6, 0xf +/* 80209D08 00206C68 38 E0 00 08 */ li r7, 8 +/* 80209D0C 00206C6C 48 0F EE E1 */ bl SetTevColorIn__3CGXF13_GXTevStageID14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg14_GXTevColorArg +/* 80209D10 00206C70 38 60 00 00 */ li r3, 0 +/* 80209D14 00206C74 38 80 00 07 */ li r4, 7 +/* 80209D18 00206C78 38 A0 00 07 */ li r5, 7 +/* 80209D1C 00206C7C 38 C0 00 07 */ li r6, 7 +/* 80209D20 00206C80 38 E0 00 01 */ li r7, 1 +/* 80209D24 00206C84 48 0F EE 71 */ bl SetTevAlphaIn__3CGXF13_GXTevStageID14_GXTevAlphaArg14_GXTevAlphaArg14_GXTevAlphaArg14_GXTevAlphaArg +/* 80209D28 00206C88 80 A2 C7 A8 */ lwz r5, lbl_805AE4C8@sda21(r2) +/* 80209D2C 00206C8C 38 60 00 00 */ li r3, 0 +/* 80209D30 00206C90 38 80 00 00 */ li r4, 0 +/* 80209D34 00206C94 38 C0 00 FF */ li r6, 0xff +/* 80209D38 00206C98 48 0F EC 15 */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 80209D3C 00206C9C 38 60 00 00 */ li r3, 0 +/* 80209D40 00206CA0 38 80 00 01 */ li r4, 1 +/* 80209D44 00206CA4 38 A0 00 04 */ li r5, 4 +/* 80209D48 00206CA8 38 C0 00 3C */ li r6, 0x3c +/* 80209D4C 00206CAC 38 E0 00 00 */ li r7, 0 +/* 80209D50 00206CB0 39 00 00 7D */ li r8, 0x7d +/* 80209D54 00206CB4 48 0F E9 79 */ bl SetTexCoordGen__3CGXF13_GXTexCoordID13_GXTexGenType12_GXTexGenSrc9_GXTexMtxUc11_GXPTTexMtx +/* 80209D58 00206CB8 38 60 00 01 */ li r3, 1 +/* 80209D5C 00206CBC 48 0F F0 B9 */ bl SetNumTexGens__3CGXFUc +/* 80209D60 00206CC0 38 60 00 01 */ li r3, 1 +/* 80209D64 00206CC4 48 0F EF 2D */ bl SetNumTevStages__3CGXFUc +/* 80209D68 00206CC8 38 60 00 00 */ li r3, 0 +/* 80209D6C 00206CCC 48 0F F0 E5 */ bl SetNumChans__3CGXFUc +/* 80209D70 00206CD0 38 60 00 00 */ li r3, 0 +/* 80209D74 00206CD4 48 0F E9 D1 */ bl SetTevDirect__3CGXF13_GXTevStageID +/* 80209D78 00206CD8 38 60 00 00 */ li r3, 0 +/* 80209D7C 00206CDC 48 0F E9 15 */ bl SetNumIndStages__3CGXFUc +/* 80209D80 00206CE0 38 60 00 00 */ li r3, 0 +/* 80209D84 00206CE4 38 80 00 07 */ li r4, 7 +/* 80209D88 00206CE8 38 A0 00 00 */ li r5, 0 +/* 80209D8C 00206CEC 48 0F EA F1 */ bl SetZMode__3CGXFb10_GXCompareb +/* 80209D90 00206CF0 38 60 00 A0 */ li r3, 0xa0 +/* 80209D94 00206CF4 38 80 00 00 */ li r4, 0 +/* 80209D98 00206CF8 38 A0 00 04 */ li r5, 4 +/* 80209D9C 00206CFC 48 0F E7 E9 */ bl Begin__3CGXF12_GXPrimitive9_GXVtxFmtUs +/* 80209DA0 00206D00 C0 A2 B1 28 */ lfs f5, lbl_805ACE48@sda21(r2) +/* 80209DA4 00206D04 3C 60 43 30 */ lis r3, 0x4330 +/* 80209DA8 00206D08 3C A0 CC 01 */ lis r5, 0xCC008000@ha +/* 80209DAC 00206D0C 6F C4 80 00 */ xoris r4, r30, 0x8000 +/* 80209DB0 00206D10 D0 A5 80 00 */ stfs f5, 0xCC008000@l(r5) +/* 80209DB4 00206D14 6F E0 80 00 */ xoris r0, r31, 0x8000 +/* 80209DB8 00206D18 C0 82 B1 38 */ lfs f4, lbl_805ACE58@sda21(r2) +/* 80209DBC 00206D1C 90 81 00 2C */ stw r4, 0x2c(r1) +/* 80209DC0 00206D20 C8 62 B1 40 */ lfd f3, lbl_805ACE60@sda21(r2) +/* 80209DC4 00206D24 D0 85 80 00 */ stfs f4, 0xCC008000@l(r5) +/* 80209DC8 00206D28 C0 42 B1 30 */ lfs f2, lbl_805ACE50@sda21(r2) +/* 80209DCC 00206D2C D0 A5 80 00 */ stfs f5, 0xCC008000@l(r5) +/* 80209DD0 00206D30 D0 A5 80 00 */ stfs f5, 0xCC008000@l(r5) +/* 80209DD4 00206D34 90 61 00 28 */ stw r3, 0x28(r1) +/* 80209DD8 00206D38 D0 A5 80 00 */ stfs f5, 0xCC008000@l(r5) +/* 80209DDC 00206D3C C8 01 00 28 */ lfd f0, 0x28(r1) +/* 80209DE0 00206D40 D0 A5 80 00 */ stfs f5, 0xCC008000@l(r5) +/* 80209DE4 00206D44 EC 00 18 28 */ fsubs f0, f0, f3 +/* 80209DE8 00206D48 D0 85 80 00 */ stfs f4, 0xCC008000@l(r5) +/* 80209DEC 00206D4C D0 05 80 00 */ stfs f0, 0xCC008000@l(r5) +/* 80209DF0 00206D50 D0 A5 80 00 */ stfs f5, 0xCC008000@l(r5) +/* 80209DF4 00206D54 90 01 00 34 */ stw r0, 0x34(r1) +/* 80209DF8 00206D58 90 61 00 30 */ stw r3, 0x30(r1) +/* 80209DFC 00206D5C C8 01 00 30 */ lfd f0, 0x30(r1) +/* 80209E00 00206D60 90 81 00 3C */ stw r4, 0x3c(r1) +/* 80209E04 00206D64 EC 20 18 28 */ fsubs f1, f0, f3 +/* 80209E08 00206D68 90 61 00 38 */ stw r3, 0x38(r1) +/* 80209E0C 00206D6C D0 45 80 00 */ stfs f2, 0xCC008000@l(r5) +/* 80209E10 00206D70 C8 01 00 38 */ lfd f0, 0x38(r1) +/* 80209E14 00206D74 D0 25 80 00 */ stfs f1, 0xCC008000@l(r5) +/* 80209E18 00206D78 EC 00 18 28 */ fsubs f0, f0, f3 +/* 80209E1C 00206D7C D0 85 80 00 */ stfs f4, 0xCC008000@l(r5) +/* 80209E20 00206D80 D0 05 80 00 */ stfs f0, 0xCC008000@l(r5) +/* 80209E24 00206D84 D0 45 80 00 */ stfs f2, 0xCC008000@l(r5) +/* 80209E28 00206D88 90 01 00 44 */ stw r0, 0x44(r1) +/* 80209E2C 00206D8C 90 61 00 40 */ stw r3, 0x40(r1) +/* 80209E30 00206D90 C8 01 00 40 */ lfd f0, 0x40(r1) +/* 80209E34 00206D94 D0 45 80 00 */ stfs f2, 0xCC008000@l(r5) +/* 80209E38 00206D98 EC 00 18 28 */ fsubs f0, f0, f3 +/* 80209E3C 00206D9C D0 05 80 00 */ stfs f0, 0xCC008000@l(r5) +/* 80209E40 00206DA0 D0 85 80 00 */ stfs f4, 0xCC008000@l(r5) +/* 80209E44 00206DA4 D0 A5 80 00 */ stfs f5, 0xCC008000@l(r5) +/* 80209E48 00206DA8 D0 45 80 00 */ stfs f2, 0xCC008000@l(r5) +/* 80209E4C 00206DAC D0 A5 80 00 */ stfs f5, 0xCC008000@l(r5) +/* 80209E50 00206DB0 48 0F E7 31 */ bl End__3CGXFv +lbl_80209E54: +/* 80209E54 00206DB4 48 14 01 61 */ bl Black__6CColorFv +/* 80209E58 00206DB8 C0 22 B1 30 */ lfs f1, lbl_805ACE50@sda21(r2) +/* 80209E5C 00206DBC 7C 65 1B 78 */ mr r5, r3 +/* 80209E60 00206DC0 38 60 00 01 */ li r3, 1 +/* 80209E64 00206DC4 38 80 00 04 */ li r4, 4 +/* 80209E68 00206DC8 38 C0 00 00 */ li r6, 0 +/* 80209E6C 00206DCC 4B EE 22 DD */ bl DrawFilter__17CCameraFilterPassFQ217CCameraFilterPass11EFilterTypeQ217CCameraFilterPass12EFilterShapeRC6CColorPC8CTexturef +/* 80209E70 00206DD0 C0 7D 00 00 */ lfs f3, 0(r29) +/* 80209E74 00206DD4 C0 42 B1 3C */ lfs f2, lbl_805ACE5C@sda21(r2) +/* 80209E78 00206DD8 C0 82 B1 28 */ lfs f4, lbl_805ACE48@sda21(r2) +/* 80209E7C 00206DDC FC 03 10 40 */ fcmpo cr0, f3, f2 +/* 80209E80 00206DE0 40 80 00 14 */ bge lbl_80209E94 +/* 80209E84 00206DE4 EC 03 10 24 */ fdivs f0, f3, f2 +/* 80209E88 00206DE8 C0 22 B1 30 */ lfs f1, lbl_805ACE50@sda21(r2) +/* 80209E8C 00206DEC EC 81 00 28 */ fsubs f4, f1, f0 +/* 80209E90 00206DF0 48 00 00 38 */ b lbl_80209EC8 +lbl_80209E94: +/* 80209E94 00206DF4 80 7D 00 04 */ lwz r3, 4(r29) +/* 80209E98 00206DF8 C0 23 01 D8 */ lfs f1, 0x1d8(r3) +/* 80209E9C 00206DFC FC 03 08 40 */ fcmpo cr0, f3, f1 +/* 80209EA0 00206E00 40 81 00 0C */ ble lbl_80209EAC +/* 80209EA4 00206E04 C0 82 B1 30 */ lfs f4, lbl_805ACE50@sda21(r2) +/* 80209EA8 00206E08 48 00 00 20 */ b lbl_80209EC8 +lbl_80209EAC: +/* 80209EAC 00206E0C EC 01 10 28 */ fsubs f0, f1, f2 +/* 80209EB0 00206E10 FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 80209EB4 00206E14 40 81 00 14 */ ble lbl_80209EC8 +/* 80209EB8 00206E18 EC 01 18 28 */ fsubs f0, f1, f3 +/* 80209EBC 00206E1C C0 22 B1 30 */ lfs f1, lbl_805ACE50@sda21(r2) +/* 80209EC0 00206E20 EC 00 10 24 */ fdivs f0, f0, f2 +/* 80209EC4 00206E24 EC 81 00 28 */ fsubs f4, f1, f0 +lbl_80209EC8: +/* 80209EC8 00206E28 C0 22 B1 28 */ lfs f1, lbl_805ACE48@sda21(r2) +/* 80209ECC 00206E2C FC 04 08 40 */ fcmpo cr0, f4, f1 +/* 80209ED0 00206E30 40 81 00 2C */ ble lbl_80209EFC +/* 80209ED4 00206E34 FC 40 08 90 */ fmr f2, f1 +/* 80209ED8 00206E38 38 61 00 14 */ addi r3, r1, 0x14 +/* 80209EDC 00206E3C FC 60 08 90 */ fmr f3, f1 +/* 80209EE0 00206E40 48 15 95 0D */ bl __ct__6CColorFffff +/* 80209EE4 00206E44 C0 22 B1 30 */ lfs f1, lbl_805ACE50@sda21(r2) +/* 80209EE8 00206E48 38 A1 00 14 */ addi r5, r1, 0x14 +/* 80209EEC 00206E4C 38 60 00 05 */ li r3, 5 +/* 80209EF0 00206E50 38 80 00 00 */ li r4, 0 +/* 80209EF4 00206E54 38 C0 00 00 */ li r6, 0 +/* 80209EF8 00206E58 4B EE 22 51 */ bl DrawFilter__17CCameraFilterPassFQ217CCameraFilterPass11EFilterTypeQ217CCameraFilterPass12EFilterShapeRC6CColorPC8CTexturef +lbl_80209EFC: +/* 80209EFC 00206E5C 38 60 00 01 */ li r3, 1 +/* 80209F00 00206E60 48 0F F5 A9 */ bl SetIsBeginSceneClearFb__9CGraphicsFb +lbl_80209F04: +/* 80209F04 00206E64 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 +/* 80209F08 00206E68 CB E1 00 70 */ lfd f31, 0x70(r1) +/* 80209F0C 00206E6C E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 +/* 80209F10 00206E70 CB C1 00 60 */ lfd f30, 0x60(r1) +/* 80209F14 00206E74 BB 41 00 48 */ lmw r26, 0x48(r1) +/* 80209F18 00206E78 80 01 00 84 */ lwz r0, 0x84(r1) +/* 80209F1C 00206E7C 7C 08 03 A6 */ mtlr r0 +/* 80209F20 00206E80 38 21 00 80 */ addi r1, r1, 0x80 +/* 80209F24 00206E84 4E 80 00 20 */ blr + +.global DrawSecondPass__18CWorldTransManagerCFv +DrawSecondPass__18CWorldTransManagerCFv: +/* 80209F28 00206E88 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 80209F2C 00206E8C 7C 08 02 A6 */ mflr r0 +/* 80209F30 00206E90 C0 62 B1 48 */ lfs f3, lbl_805ACE68@sda21(r2) +/* 80209F34 00206E94 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 80209F38 00206E98 38 81 00 08 */ addi r4, r1, 8 +/* 80209F3C 00206E9C C0 02 B1 4C */ lfs f0, lbl_805ACE6C@sda21(r2) +/* 80209F40 00206EA0 93 E1 00 EC */ stw r31, 0xec(r1) +/* 80209F44 00206EA4 7C 7F 1B 78 */ mr r31, r3 +/* 80209F48 00206EA8 80 A3 00 04 */ lwz r5, 4(r3) +/* 80209F4C 00206EAC C0 43 00 00 */ lfs f2, 0(r3) +/* 80209F50 00206EB0 38 6D 93 D8 */ addi r3, r13, lbl_805A7F98@sda21 +/* 80209F54 00206EB4 C0 25 01 D0 */ lfs f1, 0x1d0(r5) +/* 80209F58 00206EB8 38 AD 93 DC */ addi r5, r13, lbl_805A7F9C@sda21 +/* 80209F5C 00206EBC EC 22 08 28 */ fsubs f1, f2, f1 +/* 80209F60 00206EC0 EC 23 08 2A */ fadds f1, f3, f1 +/* 80209F64 00206EC4 EC 01 00 24 */ fdivs f0, f1, f0 +/* 80209F68 00206EC8 D0 01 00 08 */ stfs f0, 8(r1) +/* 80209F6C 00206ECC 4B E0 23 49 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 80209F70 00206ED0 C0 63 00 00 */ lfs f3, 0(r3) +/* 80209F74 00206ED4 38 61 00 1C */ addi r3, r1, 0x1c +/* 80209F78 00206ED8 C0 42 B1 58 */ lfs f2, lbl_805ACE78@sda21(r2) +/* 80209F7C 00206EDC 38 81 00 10 */ addi r4, r1, 0x10 +/* 80209F80 00206EE0 C0 22 B1 54 */ lfs f1, lbl_805ACE74@sda21(r2) +/* 80209F84 00206EE4 C0 02 B1 5C */ lfs f0, lbl_805ACE7C@sda21(r2) +/* 80209F88 00206EE8 EC 22 08 FA */ fmadds f1, f2, f3, f1 +/* 80209F8C 00206EEC C0 42 B1 50 */ lfs f2, lbl_805ACE70@sda21(r2) +/* 80209F90 00206EF0 80 BF 00 04 */ lwz r5, 4(r31) +/* 80209F94 00206EF4 C0 A2 B1 60 */ lfs f5, lbl_805ACE80@sda21(r2) +/* 80209F98 00206EF8 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80209F9C 00206EFC C0 62 B1 64 */ lfs f3, lbl_805ACE84@sda21(r2) +/* 80209FA0 00206F00 C0 22 B1 68 */ lfs f1, lbl_805ACE88@sda21(r2) +/* 80209FA4 00206F04 EC 02 00 32 */ fmuls f0, f2, f0 +/* 80209FA8 00206F08 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 80209FAC 00206F0C C0 85 00 10 */ lfs f4, 0x10(r5) +/* 80209FB0 00206F10 C0 45 00 0C */ lfs f2, 0xc(r5) +/* 80209FB4 00206F14 C0 05 00 08 */ lfs f0, 8(r5) +/* 80209FB8 00206F18 EC 85 01 32 */ fmuls f4, f5, f4 +/* 80209FBC 00206F1C EC 43 00 B2 */ fmuls f2, f3, f2 +/* 80209FC0 00206F20 EC 01 00 32 */ fmuls f0, f1, f0 +/* 80209FC4 00206F24 D0 81 00 18 */ stfs f4, 0x18(r1) +/* 80209FC8 00206F28 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 80209FCC 00206F2C D0 41 00 14 */ stfs f2, 0x14(r1) +/* 80209FD0 00206F30 48 10 91 71 */ bl Translate__12CTransform4fFRC9CVector3f +/* 80209FD4 00206F34 38 61 00 4C */ addi r3, r1, 0x4c +/* 80209FD8 00206F38 38 81 00 0C */ addi r4, r1, 0xc +/* 80209FDC 00206F3C 48 10 98 35 */ bl RotateZ__12CTransform4fFRC9CRelAngle +/* 80209FE0 00206F40 38 61 00 7C */ addi r3, r1, 0x7c +/* 80209FE4 00206F44 38 81 00 4C */ addi r4, r1, 0x4c +/* 80209FE8 00206F48 38 A1 00 1C */ addi r5, r1, 0x1c +/* 80209FEC 00206F4C 48 10 89 65 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80209FF0 00206F50 38 61 00 AC */ addi r3, r1, 0xac +/* 80209FF4 00206F54 38 81 00 7C */ addi r4, r1, 0x7c +/* 80209FF8 00206F58 48 10 8B 7D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80209FFC 00206F5C 38 61 00 AC */ addi r3, r1, 0xac +/* 8020A000 00206F60 48 10 27 4D */ bl SetViewPointMatrix__9CGraphicsFRC12CTransform4f +/* 8020A004 00206F64 7F E3 FB 78 */ mr r3, r31 +/* 8020A008 00206F68 48 00 01 CD */ bl DrawAllModels__18CWorldTransManagerCFv +/* 8020A00C 00206F6C 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 8020A010 00206F70 83 E1 00 EC */ lwz r31, 0xec(r1) +/* 8020A014 00206F74 7C 08 03 A6 */ mtlr r0 +/* 8020A018 00206F78 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 8020A01C 00206F7C 4E 80 00 20 */ blr + +.global DrawFirstPass__18CWorldTransManagerCFv +DrawFirstPass__18CWorldTransManagerCFv: +/* 8020A020 00206F80 94 21 FE C0 */ stwu r1, -0x140(r1) +/* 8020A024 00206F84 7C 08 02 A6 */ mflr r0 +/* 8020A028 00206F88 90 01 01 44 */ stw r0, 0x144(r1) +/* 8020A02C 00206F8C DB E1 01 30 */ stfd f31, 0x130(r1) +/* 8020A030 00206F90 F3 E1 01 38 */ psq_st f31, 312(r1), 0, qr0 +/* 8020A034 00206F94 93 E1 01 2C */ stw r31, 0x12c(r1) +/* 8020A038 00206F98 7C 7F 1B 78 */ mr r31, r3 +/* 8020A03C 00206F9C C0 02 B1 6C */ lfs f0, lbl_805ACE8C@sda21(r2) +/* 8020A040 00206FA0 C0 23 00 00 */ lfs f1, 0(r3) +/* 8020A044 00206FA4 38 81 00 0C */ addi r4, r1, 0xc +/* 8020A048 00206FA8 38 6D 93 C8 */ addi r3, r13, lbl_805A7F88@sda21 +/* 8020A04C 00206FAC 38 AD 93 CC */ addi r5, r13, lbl_805A7F8C@sda21 +/* 8020A050 00206FB0 EC 01 00 24 */ fdivs f0, f1, f0 +/* 8020A054 00206FB4 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 8020A058 00206FB8 4B E0 22 5D */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8020A05C 00206FBC C0 3F 00 00 */ lfs f1, 0(r31) +/* 8020A060 00206FC0 38 81 00 08 */ addi r4, r1, 8 +/* 8020A064 00206FC4 C0 02 B1 70 */ lfs f0, lbl_805ACE90@sda21(r2) +/* 8020A068 00206FC8 38 AD 93 D4 */ addi r5, r13, lbl_805A7F94@sda21 +/* 8020A06C 00206FCC C3 E3 00 00 */ lfs f31, 0(r3) +/* 8020A070 00206FD0 38 6D 93 D0 */ addi r3, r13, lbl_805A7F90@sda21 +/* 8020A074 00206FD4 EC 01 00 24 */ fdivs f0, f1, f0 +/* 8020A078 00206FD8 D0 01 00 08 */ stfs f0, 8(r1) +/* 8020A07C 00206FDC 4B E0 22 39 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8020A080 00206FE0 C0 22 B1 74 */ lfs f1, lbl_805ACE94@sda21(r2) +/* 8020A084 00206FE4 C0 02 B1 54 */ lfs f0, lbl_805ACE74@sda21(r2) +/* 8020A088 00206FE8 C0 63 00 00 */ lfs f3, 0(r3) +/* 8020A08C 00206FEC 38 61 00 30 */ addi r3, r1, 0x30 +/* 8020A090 00206FF0 EC 41 07 FA */ fmadds f2, f1, f31, f0 +/* 8020A094 00206FF4 C0 22 B1 78 */ lfs f1, lbl_805ACE98@sda21(r2) +/* 8020A098 00206FF8 C0 02 B1 30 */ lfs f0, lbl_805ACE50@sda21(r2) +/* 8020A09C 00206FFC C0 82 B1 50 */ lfs f4, lbl_805ACE70@sda21(r2) +/* 8020A0A0 00207000 EC 42 08 28 */ fsubs f2, f2, f1 +/* 8020A0A4 00207004 80 9F 00 04 */ lwz r4, 4(r31) +/* 8020A0A8 00207008 EC 00 18 28 */ fsubs f0, f0, f3 +/* 8020A0AC 0020700C C0 22 B1 7C */ lfs f1, lbl_805ACE9C@sda21(r2) +/* 8020A0B0 00207010 C0 62 B1 48 */ lfs f3, lbl_805ACE68@sda21(r2) +/* 8020A0B4 00207014 EC 84 00 B2 */ fmuls f4, f4, f2 +/* 8020A0B8 00207018 EC 41 08 3A */ fmadds f2, f1, f0, f1 +/* 8020A0BC 0020701C D0 81 00 10 */ stfs f4, 0x10(r1) +/* 8020A0C0 00207020 C0 04 01 B8 */ lfs f0, 0x1b8(r4) +/* 8020A0C4 00207024 C0 24 01 B4 */ lfs f1, 0x1b4(r4) +/* 8020A0C8 00207028 EC 63 00 2A */ fadds f3, f3, f0 +/* 8020A0CC 0020702C 48 10 90 BD */ bl Translate__12CTransform4fFfff +/* 8020A0D0 00207030 38 61 00 60 */ addi r3, r1, 0x60 +/* 8020A0D4 00207034 38 81 00 10 */ addi r4, r1, 0x10 +/* 8020A0D8 00207038 48 10 97 39 */ bl RotateZ__12CTransform4fFRC9CRelAngle +/* 8020A0DC 0020703C 38 61 00 90 */ addi r3, r1, 0x90 +/* 8020A0E0 00207040 38 81 00 60 */ addi r4, r1, 0x60 +/* 8020A0E4 00207044 38 A1 00 30 */ addi r5, r1, 0x30 +/* 8020A0E8 00207048 48 10 88 69 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 8020A0EC 0020704C 38 61 00 F4 */ addi r3, r1, 0xf4 +/* 8020A0F0 00207050 38 81 00 90 */ addi r4, r1, 0x90 +/* 8020A0F4 00207054 48 10 8A 81 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8020A0F8 00207058 38 61 00 F4 */ addi r3, r1, 0xf4 +/* 8020A0FC 0020705C 48 10 26 51 */ bl SetViewPointMatrix__9CGraphicsFRC12CTransform4f +/* 8020A100 00207060 7F E3 FB 78 */ mr r3, r31 +/* 8020A104 00207064 48 00 00 D1 */ bl DrawAllModels__18CWorldTransManagerCFv +/* 8020A108 00207068 80 7F 00 04 */ lwz r3, 4(r31) +/* 8020A10C 0020706C C0 02 B1 28 */ lfs f0, lbl_805ACE48@sda21(r2) +/* 8020A110 00207070 C0 23 01 C8 */ lfs f1, 0x1c8(r3) +/* 8020A114 00207074 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8020A118 00207078 40 81 00 A0 */ ble lbl_8020A1B8 +/* 8020A11C 0020707C 48 0F FD 41 */ bl GetProjectionState__9CGraphicsFv +/* 8020A120 00207080 88 03 00 00 */ lbz r0, 0(r3) +/* 8020A124 00207084 98 01 00 14 */ stb r0, 0x14(r1) +/* 8020A128 00207088 C0 03 00 04 */ lfs f0, 4(r3) +/* 8020A12C 0020708C D0 01 00 18 */ stfs f0, 0x18(r1) +/* 8020A130 00207090 C0 03 00 08 */ lfs f0, 8(r3) +/* 8020A134 00207094 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8020A138 00207098 C0 03 00 0C */ lfs f0, 0xc(r3) +/* 8020A13C 0020709C D0 01 00 20 */ stfs f0, 0x20(r1) +/* 8020A140 002070A0 C0 03 00 10 */ lfs f0, 0x10(r3) +/* 8020A144 002070A4 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 8020A148 002070A8 C0 03 00 14 */ lfs f0, 0x14(r3) +/* 8020A14C 002070AC D0 01 00 28 */ stfs f0, 0x28(r1) +/* 8020A150 002070B0 C0 03 00 18 */ lfs f0, 0x18(r3) +/* 8020A154 002070B4 38 61 00 C0 */ addi r3, r1, 0xc0 +/* 8020A158 002070B8 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 8020A15C 002070BC 4B EE 1E E1 */ bl __ct__15CCameraBlurPassFv +/* 8020A160 002070C0 80 BF 00 04 */ lwz r5, 4(r31) +/* 8020A164 002070C4 38 61 00 C0 */ addi r3, r1, 0xc0 +/* 8020A168 002070C8 C0 42 B1 28 */ lfs f2, lbl_805ACE48@sda21(r2) +/* 8020A16C 002070CC 38 80 00 01 */ li r4, 1 +/* 8020A170 002070D0 C0 25 01 C8 */ lfs f1, 0x1c8(r5) +/* 8020A174 002070D4 38 A0 00 00 */ li r5, 0 +/* 8020A178 002070D8 4B EE 18 2D */ bl SetBlur__15CCameraBlurPassFQ215CCameraBlurPass9EBlurTypeffb +/* 8020A17C 002070DC 38 61 00 C0 */ addi r3, r1, 0xc0 +/* 8020A180 002070E0 4B EE 09 09 */ bl Draw__15CCameraBlurPassCFv +/* 8020A184 002070E4 38 61 00 14 */ addi r3, r1, 0x14 +/* 8020A188 002070E8 48 0F FC 79 */ bl SetProjectionState__9CGraphicsFRCQ29CGraphics16CProjectionState +/* 8020A18C 002070EC 88 01 00 CC */ lbz r0, 0xcc(r1) +/* 8020A190 002070F0 28 00 00 00 */ cmplwi r0, 0 +/* 8020A194 002070F4 41 82 00 1C */ beq lbl_8020A1B0 +/* 8020A198 002070F8 34 61 00 C0 */ addic. r3, r1, 0xc0 +/* 8020A19C 002070FC 41 82 00 14 */ beq lbl_8020A1B0 +/* 8020A1A0 00207100 28 03 00 00 */ cmplwi r3, 0 +/* 8020A1A4 00207104 41 82 00 0C */ beq lbl_8020A1B0 +/* 8020A1A8 00207108 38 80 00 00 */ li r4, 0 +/* 8020A1AC 0020710C 48 13 6C 95 */ bl __dt__6CTokenFv +lbl_8020A1B0: +/* 8020A1B0 00207110 38 00 00 00 */ li r0, 0 +/* 8020A1B4 00207114 98 01 00 CC */ stb r0, 0xcc(r1) +lbl_8020A1B8: +/* 8020A1B8 00207118 E3 E1 01 38 */ psq_l f31, 312(r1), 0, qr0 +/* 8020A1BC 0020711C 80 01 01 44 */ lwz r0, 0x144(r1) +/* 8020A1C0 00207120 CB E1 01 30 */ lfd f31, 0x130(r1) +/* 8020A1C4 00207124 83 E1 01 2C */ lwz r31, 0x12c(r1) +/* 8020A1C8 00207128 7C 08 03 A6 */ mtlr r0 +/* 8020A1CC 0020712C 38 21 01 40 */ addi r1, r1, 0x140 +/* 8020A1D0 00207130 4E 80 00 20 */ blr + +.global DrawAllModels__18CWorldTransManagerCFv +DrawAllModels__18CWorldTransManagerCFv: +/* 8020A1D4 00207134 94 21 FC 10 */ stwu r1, -0x3f0(r1) +/* 8020A1D8 00207138 7C 08 02 A6 */ mflr r0 +/* 8020A1DC 0020713C 3C 80 80 5A */ lis r4, lbl_805A0004@ha +/* 8020A1E0 00207140 C0 22 94 04 */ lfs f1, lbl_805AB124@sda21(r2) +/* 8020A1E4 00207144 90 01 03 F4 */ stw r0, 0x3f4(r1) +/* 8020A1E8 00207148 38 A1 00 3C */ addi r5, r1, 0x3c +/* 8020A1EC 0020714C 38 E0 00 04 */ li r7, 4 +/* 8020A1F0 00207150 39 20 00 00 */ li r9, 0 +/* 8020A1F4 00207154 93 E1 03 EC */ stw r31, 0x3ec(r1) +/* 8020A1F8 00207158 39 40 00 00 */ li r10, 0 +/* 8020A1FC 0020715C 93 C1 03 E8 */ stw r30, 0x3e8(r1) +/* 8020A200 00207160 7C 7E 1B 78 */ mr r30, r3 +/* 8020A204 00207164 84 C4 66 A0 */ lwzu r6, 0x66a0(r4) +/* 8020A208 00207168 83 E3 00 04 */ lwz r31, 4(r3) +/* 8020A20C 0020716C 38 61 01 08 */ addi r3, r1, 0x108 +/* 8020A210 00207170 81 04 00 04 */ lwz r8, lbl_805A0004@l(r4) +/* 8020A214 00207174 80 04 00 08 */ lwz r0, 8(r4) +/* 8020A218 00207178 38 80 00 00 */ li r4, 0 +/* 8020A21C 0020717C 90 C1 00 3C */ stw r6, 0x3c(r1) +/* 8020A220 00207180 38 C0 00 04 */ li r6, 4 +/* 8020A224 00207184 91 01 00 40 */ stw r8, 0x40(r1) +/* 8020A228 00207188 39 00 00 00 */ li r8, 0 +/* 8020A22C 0020718C 90 01 00 44 */ stw r0, 0x44(r1) +/* 8020A230 00207190 4B EF AF 9D */ bl __ct__12CActorLightsFUi9CVector3fiif +/* 8020A234 00207194 C0 22 B1 80 */ lfs f1, lbl_805ACEA0@sda21(r2) +/* 8020A238 00207198 38 61 00 08 */ addi r3, r1, 8 +/* 8020A23C 0020719C C0 82 B1 30 */ lfs f4, lbl_805ACE50@sda21(r2) +/* 8020A240 002071A0 FC 40 08 90 */ fmr f2, f1 +/* 8020A244 002071A4 FC 60 08 90 */ fmr f3, f1 +/* 8020A248 002071A8 48 15 91 A5 */ bl __ct__6CColorFffff +/* 8020A24C 002071AC 7C 65 1B 78 */ mr r5, r3 +/* 8020A250 002071B0 38 61 01 08 */ addi r3, r1, 0x108 +/* 8020A254 002071B4 38 9F 01 A0 */ addi r4, r31, 0x1a0 +/* 8020A258 002071B8 4B EF 8E D5 */ bl "BuildFakeLightList__12CActorLightsFRCQ24rstl42vector<6CLight,Q24rstl17rmemory_allocator>RC6CColor" +/* 8020A25C 002071BC 80 1F 01 10 */ lwz r0, 0x110(r31) +/* 8020A260 002071C0 38 60 00 00 */ li r3, 0 +/* 8020A264 002071C4 28 00 00 00 */ cmplwi r0, 0 +/* 8020A268 002071C8 40 82 00 14 */ bne lbl_8020A27C +/* 8020A26C 002071CC 88 1F 01 28 */ lbz r0, 0x128(r31) +/* 8020A270 002071D0 28 00 00 00 */ cmplwi r0, 0 +/* 8020A274 002071D4 40 82 00 08 */ bne lbl_8020A27C +/* 8020A278 002071D8 38 60 00 01 */ li r3, 1 +lbl_8020A27C: +/* 8020A27C 002071DC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8020A280 002071E0 40 82 01 20 */ bne lbl_8020A3A0 +/* 8020A284 002071E4 C0 22 B1 30 */ lfs f1, lbl_805ACE50@sda21(r2) +/* 8020A288 002071E8 38 80 00 00 */ li r4, 0 +/* 8020A28C 002071EC 38 00 00 03 */ li r0, 3 +/* 8020A290 002071F0 98 81 00 34 */ stb r4, 0x34(r1) +/* 8020A294 002071F4 FC 40 08 90 */ fmr f2, f1 +/* 8020A298 002071F8 38 61 00 38 */ addi r3, r1, 0x38 +/* 8020A29C 002071FC FC 60 08 90 */ fmr f3, f1 +/* 8020A2A0 00207200 98 81 00 35 */ stb r4, 0x35(r1) +/* 8020A2A4 00207204 FC 80 08 90 */ fmr f4, f1 +/* 8020A2A8 00207208 B0 01 00 36 */ sth r0, 0x36(r1) +/* 8020A2AC 0020720C 48 15 91 41 */ bl __ct__6CColorFffff +/* 8020A2B0 00207210 C0 22 B1 28 */ lfs f1, lbl_805ACE48@sda21(r2) +/* 8020A2B4 00207214 38 61 00 D8 */ addi r3, r1, 0xd8 +/* 8020A2B8 00207218 C0 82 B1 48 */ lfs f4, lbl_805ACE68@sda21(r2) +/* 8020A2BC 0020721C C0 7E 00 1C */ lfs f3, 0x1c(r30) +/* 8020A2C0 00207220 FC 40 08 90 */ fmr f2, f1 +/* 8020A2C4 00207224 C0 1E 00 18 */ lfs f0, 0x18(r30) +/* 8020A2C8 00207228 EC 64 00 FC */ fnmsubs f3, f4, f3, f0 +/* 8020A2CC 0020722C 48 10 8E BD */ bl Translate__12CTransform4fFfff +/* 8020A2D0 00207230 38 7F 01 00 */ addi r3, r31, 0x100 +/* 8020A2D4 00207234 38 A1 00 D8 */ addi r5, r1, 0xd8 +/* 8020A2D8 00207238 38 C1 01 08 */ addi r6, r1, 0x108 +/* 8020A2DC 0020723C 38 E1 00 34 */ addi r7, r1, 0x34 +/* 8020A2E0 00207240 38 80 00 00 */ li r4, 0 +/* 8020A2E4 00207244 4B F0 C5 91 */ bl Render__10CModelDataCFQ210CModelData11EWhichModelRC12CTransform4fPC12CActorLightsRC11CModelFlags +/* 8020A2E8 00207248 C0 22 B1 30 */ lfs f1, lbl_805ACE50@sda21(r2) +/* 8020A2EC 0020724C 38 80 00 00 */ li r4, 0 +/* 8020A2F0 00207250 38 00 00 03 */ li r0, 3 +/* 8020A2F4 00207254 98 81 00 2C */ stb r4, 0x2c(r1) +/* 8020A2F8 00207258 FC 40 08 90 */ fmr f2, f1 +/* 8020A2FC 0020725C 38 61 00 30 */ addi r3, r1, 0x30 +/* 8020A300 00207260 FC 60 08 90 */ fmr f3, f1 +/* 8020A304 00207264 98 81 00 2D */ stb r4, 0x2d(r1) +/* 8020A308 00207268 FC 80 08 90 */ fmr f4, f1 +/* 8020A30C 0020726C B0 01 00 2E */ sth r0, 0x2e(r1) +/* 8020A310 00207270 48 15 90 DD */ bl __ct__6CColorFffff +/* 8020A314 00207274 C0 22 B1 28 */ lfs f1, lbl_805ACE48@sda21(r2) +/* 8020A318 00207278 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 8020A31C 0020727C C0 7E 00 18 */ lfs f3, 0x18(r30) +/* 8020A320 00207280 C0 1E 00 1C */ lfs f0, 0x1c(r30) +/* 8020A324 00207284 FC 40 08 90 */ fmr f2, f1 +/* 8020A328 00207288 EC 63 00 28 */ fsubs f3, f3, f0 +/* 8020A32C 0020728C 48 10 8E 5D */ bl Translate__12CTransform4fFfff +/* 8020A330 00207290 38 7F 01 00 */ addi r3, r31, 0x100 +/* 8020A334 00207294 38 A1 00 A8 */ addi r5, r1, 0xa8 +/* 8020A338 00207298 38 C1 01 08 */ addi r6, r1, 0x108 +/* 8020A33C 0020729C 38 E1 00 2C */ addi r7, r1, 0x2c +/* 8020A340 002072A0 38 80 00 00 */ li r4, 0 +/* 8020A344 002072A4 4B F0 C5 31 */ bl Render__10CModelDataCFQ210CModelData11EWhichModelRC12CTransform4fPC12CActorLightsRC11CModelFlags +/* 8020A348 002072A8 C0 22 B1 30 */ lfs f1, lbl_805ACE50@sda21(r2) +/* 8020A34C 002072AC 38 80 00 00 */ li r4, 0 +/* 8020A350 002072B0 38 00 00 03 */ li r0, 3 +/* 8020A354 002072B4 98 81 00 24 */ stb r4, 0x24(r1) +/* 8020A358 002072B8 FC 40 08 90 */ fmr f2, f1 +/* 8020A35C 002072BC 38 61 00 28 */ addi r3, r1, 0x28 +/* 8020A360 002072C0 FC 60 08 90 */ fmr f3, f1 +/* 8020A364 002072C4 98 81 00 25 */ stb r4, 0x25(r1) +/* 8020A368 002072C8 FC 80 08 90 */ fmr f4, f1 +/* 8020A36C 002072CC B0 01 00 26 */ sth r0, 0x26(r1) +/* 8020A370 002072D0 48 15 90 7D */ bl __ct__6CColorFffff +/* 8020A374 002072D4 C0 22 B1 28 */ lfs f1, lbl_805ACE48@sda21(r2) +/* 8020A378 002072D8 38 61 00 78 */ addi r3, r1, 0x78 +/* 8020A37C 002072DC C0 7E 00 18 */ lfs f3, 0x18(r30) +/* 8020A380 002072E0 FC 40 08 90 */ fmr f2, f1 +/* 8020A384 002072E4 48 10 8E 05 */ bl Translate__12CTransform4fFfff +/* 8020A388 002072E8 38 7F 01 00 */ addi r3, r31, 0x100 +/* 8020A38C 002072EC 38 A1 00 78 */ addi r5, r1, 0x78 +/* 8020A390 002072F0 38 C1 01 08 */ addi r6, r1, 0x108 +/* 8020A394 002072F4 38 E1 00 24 */ addi r7, r1, 0x24 +/* 8020A398 002072F8 38 80 00 00 */ li r4, 0 +/* 8020A39C 002072FC 4B F0 C4 D9 */ bl Render__10CModelDataCFQ210CModelData11EWhichModelRC12CTransform4fPC12CActorLightsRC11CModelFlags +lbl_8020A3A0: +/* 8020A3A0 00207300 80 1F 00 C4 */ lwz r0, 0xc4(r31) +/* 8020A3A4 00207304 38 60 00 00 */ li r3, 0 +/* 8020A3A8 00207308 28 00 00 00 */ cmplwi r0, 0 +/* 8020A3AC 0020730C 40 82 00 14 */ bne lbl_8020A3C0 +/* 8020A3B0 00207310 88 1F 00 DC */ lbz r0, 0xdc(r31) +/* 8020A3B4 00207314 28 00 00 00 */ cmplwi r0, 0 +/* 8020A3B8 00207318 40 82 00 08 */ bne lbl_8020A3C0 +/* 8020A3BC 0020731C 38 60 00 01 */ li r3, 1 +lbl_8020A3C0: +/* 8020A3C0 00207320 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8020A3C4 00207324 40 82 00 4C */ bne lbl_8020A410 +/* 8020A3C8 00207328 C0 22 B1 30 */ lfs f1, lbl_805ACE50@sda21(r2) +/* 8020A3CC 0020732C 38 80 00 00 */ li r4, 0 +/* 8020A3D0 00207330 38 00 00 03 */ li r0, 3 +/* 8020A3D4 00207334 98 81 00 1C */ stb r4, 0x1c(r1) +/* 8020A3D8 00207338 FC 40 08 90 */ fmr f2, f1 +/* 8020A3DC 0020733C 38 61 00 20 */ addi r3, r1, 0x20 +/* 8020A3E0 00207340 FC 60 08 90 */ fmr f3, f1 +/* 8020A3E4 00207344 98 81 00 1D */ stb r4, 0x1d(r1) +/* 8020A3E8 00207348 FC 80 08 90 */ fmr f4, f1 +/* 8020A3EC 0020734C B0 01 00 1E */ sth r0, 0x1e(r1) +/* 8020A3F0 00207350 48 15 8F FD */ bl __ct__6CColorFffff +/* 8020A3F4 00207354 3C 80 80 5A */ lis r4, skIdentity4f@ha +/* 8020A3F8 00207358 38 7F 00 B4 */ addi r3, r31, 0xb4 +/* 8020A3FC 0020735C 38 A4 66 70 */ addi r5, r4, skIdentity4f@l +/* 8020A400 00207360 38 C1 01 08 */ addi r6, r1, 0x108 +/* 8020A404 00207364 38 E1 00 1C */ addi r7, r1, 0x1c +/* 8020A408 00207368 38 80 00 00 */ li r4, 0 +/* 8020A40C 0020736C 4B F0 C4 69 */ bl Render__10CModelDataCFQ210CModelData11EWhichModelRC12CTransform4fPC12CActorLightsRC11CModelFlags +lbl_8020A410: +/* 8020A410 00207370 80 7F 00 2C */ lwz r3, 0x2c(r31) +/* 8020A414 00207374 38 80 00 00 */ li r4, 0 +/* 8020A418 00207378 28 03 00 00 */ cmplwi r3, 0 +/* 8020A41C 0020737C 40 82 00 14 */ bne lbl_8020A430 +/* 8020A420 00207380 88 1F 00 44 */ lbz r0, 0x44(r31) +/* 8020A424 00207384 28 00 00 00 */ cmplwi r0, 0 +/* 8020A428 00207388 40 82 00 08 */ bne lbl_8020A430 +/* 8020A42C 0020738C 38 80 00 01 */ li r4, 1 +lbl_8020A430: +/* 8020A430 00207390 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 8020A434 00207394 40 82 00 D8 */ bne lbl_8020A50C +/* 8020A438 00207398 3C 80 80 5A */ lis r4, skIdentity4f@ha +/* 8020A43C 0020739C 38 04 66 70 */ addi r0, r4, skIdentity4f@l +/* 8020A440 002073A0 7C 1E 03 78 */ mr r30, r0 +/* 8020A444 002073A4 4B E2 25 C1 */ bl PreRender__9CAnimDataFv +/* 8020A448 002073A8 C0 22 B1 30 */ lfs f1, lbl_805ACE50@sda21(r2) +/* 8020A44C 002073AC 38 80 00 00 */ li r4, 0 +/* 8020A450 002073B0 38 00 00 03 */ li r0, 3 +/* 8020A454 002073B4 98 81 00 14 */ stb r4, 0x14(r1) +/* 8020A458 002073B8 FC 40 08 90 */ fmr f2, f1 +/* 8020A45C 002073BC 38 61 00 18 */ addi r3, r1, 0x18 +/* 8020A460 002073C0 FC 60 08 90 */ fmr f3, f1 +/* 8020A464 002073C4 98 81 00 15 */ stb r4, 0x15(r1) +/* 8020A468 002073C8 FC 80 08 90 */ fmr f4, f1 +/* 8020A46C 002073CC B0 01 00 16 */ sth r0, 0x16(r1) +/* 8020A470 002073D0 48 15 8F 7D */ bl __ct__6CColorFffff +/* 8020A474 002073D4 3C 80 80 5A */ lis r4, skIdentity4f@ha +/* 8020A478 002073D8 38 7F 00 1C */ addi r3, r31, 0x1c +/* 8020A47C 002073DC 38 A4 66 70 */ addi r5, r4, skIdentity4f@l +/* 8020A480 002073E0 38 C1 01 08 */ addi r6, r1, 0x108 +/* 8020A484 002073E4 38 E1 00 14 */ addi r7, r1, 0x14 +/* 8020A488 002073E8 38 80 00 00 */ li r4, 0 +/* 8020A48C 002073EC 4B F0 C3 E9 */ bl Render__10CModelDataCFQ210CModelData11EWhichModelRC12CTransform4fPC12CActorLightsRC11CModelFlags +/* 8020A490 002073F0 80 1F 00 78 */ lwz r0, 0x78(r31) +/* 8020A494 002073F4 38 60 00 00 */ li r3, 0 +/* 8020A498 002073F8 28 00 00 00 */ cmplwi r0, 0 +/* 8020A49C 002073FC 40 82 00 14 */ bne lbl_8020A4B0 +/* 8020A4A0 00207400 88 1F 00 90 */ lbz r0, 0x90(r31) +/* 8020A4A4 00207404 28 00 00 00 */ cmplwi r0, 0 +/* 8020A4A8 00207408 40 82 00 08 */ bne lbl_8020A4B0 +/* 8020A4AC 0020740C 38 60 00 01 */ li r3, 1 +lbl_8020A4B0: +/* 8020A4B0 00207410 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8020A4B4 00207414 40 82 00 58 */ bne lbl_8020A50C +/* 8020A4B8 00207418 C0 22 B1 30 */ lfs f1, lbl_805ACE50@sda21(r2) +/* 8020A4BC 0020741C 38 80 00 00 */ li r4, 0 +/* 8020A4C0 00207420 38 00 00 03 */ li r0, 3 +/* 8020A4C4 00207424 98 81 00 0C */ stb r4, 0xc(r1) +/* 8020A4C8 00207428 FC 40 08 90 */ fmr f2, f1 +/* 8020A4CC 0020742C 38 61 00 10 */ addi r3, r1, 0x10 +/* 8020A4D0 00207430 FC 60 08 90 */ fmr f3, f1 +/* 8020A4D4 00207434 98 81 00 0D */ stb r4, 0xd(r1) +/* 8020A4D8 00207438 FC 80 08 90 */ fmr f4, f1 +/* 8020A4DC 0020743C B0 01 00 0E */ sth r0, 0xe(r1) +/* 8020A4E0 00207440 48 15 8F 0D */ bl __ct__6CColorFffff +/* 8020A4E4 00207444 7F C4 F3 78 */ mr r4, r30 +/* 8020A4E8 00207448 38 61 00 48 */ addi r3, r1, 0x48 +/* 8020A4EC 0020744C 38 BF 01 70 */ addi r5, r31, 0x170 +/* 8020A4F0 00207450 48 10 84 61 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 8020A4F4 00207454 38 7F 00 68 */ addi r3, r31, 0x68 +/* 8020A4F8 00207458 38 A1 00 48 */ addi r5, r1, 0x48 +/* 8020A4FC 0020745C 38 C1 01 08 */ addi r6, r1, 0x108 +/* 8020A500 00207460 38 E1 00 0C */ addi r7, r1, 0xc +/* 8020A504 00207464 38 80 00 00 */ li r4, 0 +/* 8020A508 00207468 4B F0 C3 6D */ bl Render__10CModelDataCFQ210CModelData11EWhichModelRC12CTransform4fPC12CActorLightsRC11CModelFlags +lbl_8020A50C: +/* 8020A50C 0020746C 38 61 01 08 */ addi r3, r1, 0x108 +/* 8020A510 00207470 38 80 FF FF */ li r4, -1 +/* 8020A514 00207474 4B EF AB C1 */ bl __dt__12CActorLightsFv +/* 8020A518 00207478 80 01 03 F4 */ lwz r0, 0x3f4(r1) +/* 8020A51C 0020747C 83 E1 03 EC */ lwz r31, 0x3ec(r1) +/* 8020A520 00207480 83 C1 03 E8 */ lwz r30, 0x3e8(r1) +/* 8020A524 00207484 7C 08 03 A6 */ mtlr r0 +/* 8020A528 00207488 38 21 03 F0 */ addi r1, r1, 0x3f0 +/* 8020A52C 0020748C 4E 80 00 20 */ blr + +.global UpdateLights__18CWorldTransManagerFf +UpdateLights__18CWorldTransManagerFf: +/* 8020A530 00207490 94 21 FE 60 */ stwu r1, -0x1a0(r1) +/* 8020A534 00207494 7C 08 02 A6 */ mflr r0 +/* 8020A538 00207498 90 01 01 A4 */ stw r0, 0x1a4(r1) +/* 8020A53C 0020749C DB E1 01 90 */ stfd f31, 0x190(r1) +/* 8020A540 002074A0 F3 E1 01 98 */ psq_st f31, 408(r1), 0, qr0 +/* 8020A544 002074A4 93 E1 01 8C */ stw r31, 0x18c(r1) +/* 8020A548 002074A8 93 C1 01 88 */ stw r30, 0x188(r1) +/* 8020A54C 002074AC 7C 7E 1B 78 */ mr r30, r3 +/* 8020A550 002074B0 80 63 00 04 */ lwz r3, 4(r3) +/* 8020A554 002074B4 28 03 00 00 */ cmplwi r3, 0 +/* 8020A558 002074B8 41 82 02 04 */ beq lbl_8020A75C +/* 8020A55C 002074BC 80 03 01 A4 */ lwz r0, 0x1a4(r3) +/* 8020A560 002074C0 3B E3 01 A0 */ addi r31, r3, 0x1a0 +/* 8020A564 002074C4 80 63 01 AC */ lwz r3, 0x1ac(r3) +/* 8020A568 002074C8 1C 00 00 50 */ mulli r0, r0, 0x50 +/* 8020A56C 002074CC 90 61 00 0C */ stw r3, 0xc(r1) +/* 8020A570 002074D0 7C 03 02 14 */ add r0, r3, r0 +/* 8020A574 002074D4 90 61 00 08 */ stw r3, 8(r1) +/* 8020A578 002074D8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020A57C 002074DC 90 01 00 10 */ stw r0, 0x10(r1) +/* 8020A580 002074E0 48 00 00 08 */ b lbl_8020A588 +lbl_8020A584: +/* 8020A584 002074E4 38 63 00 50 */ addi r3, r3, 0x50 +lbl_8020A588: +/* 8020A588 002074E8 7C 03 00 40 */ cmplw r3, r0 +/* 8020A58C 002074EC 40 82 FF F8 */ bne lbl_8020A584 +/* 8020A590 002074F0 38 00 00 00 */ li r0, 0 +/* 8020A594 002074F4 C0 22 B1 28 */ lfs f1, lbl_805ACE48@sda21(r2) +/* 8020A598 002074F8 90 1F 00 04 */ stw r0, 4(r31) +/* 8020A59C 002074FC C0 02 B1 70 */ lfs f0, lbl_805ACE90@sda21(r2) +/* 8020A5A0 00207500 D0 21 00 38 */ stfs f1, 0x38(r1) +/* 8020A5A4 00207504 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 8020A5A8 00207508 D0 21 00 40 */ stfs f1, 0x40(r1) +/* 8020A5AC 0020750C 48 13 FA 01 */ bl White__6CColorFv +/* 8020A5B0 00207510 3C 80 80 5A */ lis r4, lbl_805A6730@ha +/* 8020A5B4 00207514 C0 22 B1 78 */ lfs f1, lbl_805ACE98@sda21(r2) +/* 8020A5B8 00207518 38 A4 67 30 */ addi r5, r4, lbl_805A6730@l +/* 8020A5BC 0020751C 7C 66 1B 78 */ mr r6, r3 +/* 8020A5C0 00207520 38 61 00 44 */ addi r3, r1, 0x44 +/* 8020A5C4 00207524 38 81 00 38 */ addi r4, r1, 0x38 +/* 8020A5C8 00207528 48 0F BE 35 */ bl BuildSpot__6CLightFRC9CVector3fRC9CVector3fRC6CColorf +/* 8020A5CC 0020752C 38 61 01 34 */ addi r3, r1, 0x134 +/* 8020A5D0 00207530 38 81 00 44 */ addi r4, r1, 0x44 +/* 8020A5D4 00207534 4B E3 0F 9D */ bl __ct__6CLightFCR6CLight +/* 8020A5D8 00207538 C0 42 B1 28 */ lfs f2, lbl_805ACE48@sda21(r2) +/* 8020A5DC 0020753C 38 61 01 34 */ addi r3, r1, 0x134 +/* 8020A5E0 00207540 C0 22 B1 30 */ lfs f1, lbl_805ACE50@sda21(r2) +/* 8020A5E4 00207544 FC 60 10 90 */ fmr f3, f2 +/* 8020A5E8 00207548 48 0F BD C9 */ bl SetAttenuation__6CLightFfff +/* 8020A5EC 0020754C 38 61 00 E4 */ addi r3, r1, 0xe4 +/* 8020A5F0 00207550 38 81 01 34 */ addi r4, r1, 0x134 +/* 8020A5F4 00207554 4B E3 0F 7D */ bl __ct__6CLightFCR6CLight +/* 8020A5F8 00207558 C0 42 B1 48 */ lfs f2, lbl_805ACE68@sda21(r2) +/* 8020A5FC 0020755C 38 61 00 E4 */ addi r3, r1, 0xe4 +/* 8020A600 00207560 C0 3E 00 18 */ lfs f1, 0x18(r30) +/* 8020A604 00207564 38 81 00 2C */ addi r4, r1, 0x2c +/* 8020A608 00207568 C0 1E 00 1C */ lfs f0, 0x1c(r30) +/* 8020A60C 0020756C C0 81 00 3C */ lfs f4, 0x3c(r1) +/* 8020A610 00207570 C0 62 B1 28 */ lfs f3, lbl_805ACE48@sda21(r2) +/* 8020A614 00207574 EC 22 00 78 */ fmsubs f1, f2, f1, f0 +/* 8020A618 00207578 C0 41 00 40 */ lfs f2, 0x40(r1) +/* 8020A61C 0020757C C0 01 00 38 */ lfs f0, 0x38(r1) +/* 8020A620 00207580 EC 84 18 2A */ fadds f4, f4, f3 +/* 8020A624 00207584 EC 22 08 2A */ fadds f1, f2, f1 +/* 8020A628 00207588 EC 00 18 2A */ fadds f0, f0, f3 +/* 8020A62C 0020758C D0 81 00 30 */ stfs f4, 0x30(r1) +/* 8020A630 00207590 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 8020A634 00207594 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 8020A638 00207598 48 0F BD 09 */ bl SetPosition__6CLightFRC9CVector3f +/* 8020A63C 0020759C 88 1E 00 44 */ lbz r0, 0x44(r30) +/* 8020A640 002075A0 C3 E2 B1 30 */ lfs f31, lbl_805ACE50@sda21(r2) +/* 8020A644 002075A4 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 8020A648 002075A8 40 82 00 28 */ bne lbl_8020A670 +/* 8020A64C 002075AC C0 5E 00 1C */ lfs f2, 0x1c(r30) +/* 8020A650 002075B0 C0 3E 00 18 */ lfs f1, 0x18(r30) +/* 8020A654 002075B4 C0 02 B1 48 */ lfs f0, lbl_805ACE68@sda21(r2) +/* 8020A658 002075B8 EC 22 08 28 */ fsubs f1, f2, f1 +/* 8020A65C 002075BC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8020A660 002075C0 40 80 00 10 */ bge lbl_8020A670 +/* 8020A664 002075C4 C0 02 B1 38 */ lfs f0, lbl_805ACE58@sda21(r2) +/* 8020A668 002075C8 EF E1 00 32 */ fmuls f31, f1, f0 +/* 8020A66C 002075CC 48 00 00 24 */ b lbl_8020A690 +lbl_8020A670: +/* 8020A670 002075D0 28 00 00 00 */ cmplwi r0, 0 +/* 8020A674 002075D4 41 82 00 1C */ beq lbl_8020A690 +/* 8020A678 002075D8 C0 3E 00 18 */ lfs f1, 0x18(r30) +/* 8020A67C 002075DC C0 02 B1 48 */ lfs f0, lbl_805ACE68@sda21(r2) +/* 8020A680 002075E0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8020A684 002075E4 40 80 00 0C */ bge lbl_8020A690 +/* 8020A688 002075E8 C0 02 B1 38 */ lfs f0, lbl_805ACE58@sda21(r2) +/* 8020A68C 002075EC EF E1 00 32 */ fmuls f31, f1, f0 +lbl_8020A690: +/* 8020A690 002075F0 C0 02 B1 30 */ lfs f0, lbl_805ACE50@sda21(r2) +/* 8020A694 002075F4 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 8020A698 002075F8 40 80 00 B8 */ bge lbl_8020A750 +/* 8020A69C 002075FC 38 61 00 94 */ addi r3, r1, 0x94 +/* 8020A6A0 00207600 38 81 01 34 */ addi r4, r1, 0x134 +/* 8020A6A4 00207604 4B E3 0E CD */ bl __ct__6CLightFCR6CLight +/* 8020A6A8 00207608 88 1E 00 44 */ lbz r0, 0x44(r30) +/* 8020A6AC 0020760C 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 8020A6B0 00207610 41 82 00 0C */ beq lbl_8020A6BC +/* 8020A6B4 00207614 C0 7E 00 1C */ lfs f3, 0x1c(r30) +/* 8020A6B8 00207618 48 00 00 0C */ b lbl_8020A6C4 +lbl_8020A6BC: +/* 8020A6BC 0020761C C0 1E 00 1C */ lfs f0, 0x1c(r30) +/* 8020A6C0 00207620 FC 60 00 50 */ fneg f3, f0 +lbl_8020A6C4: +/* 8020A6C4 00207624 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 8020A6C8 00207628 38 61 00 94 */ addi r3, r1, 0x94 +/* 8020A6CC 0020762C C0 41 00 3C */ lfs f2, 0x3c(r1) +/* 8020A6D0 00207630 38 81 00 20 */ addi r4, r1, 0x20 +/* 8020A6D4 00207634 C0 22 B1 28 */ lfs f1, lbl_805ACE48@sda21(r2) +/* 8020A6D8 00207638 EC 60 18 2A */ fadds f3, f0, f3 +/* 8020A6DC 0020763C C0 01 00 38 */ lfs f0, 0x38(r1) +/* 8020A6E0 00207640 EC 42 08 2A */ fadds f2, f2, f1 +/* 8020A6E4 00207644 EC 00 08 2A */ fadds f0, f0, f1 +/* 8020A6E8 00207648 D0 61 00 28 */ stfs f3, 0x28(r1) +/* 8020A6EC 0020764C D0 41 00 24 */ stfs f2, 0x24(r1) +/* 8020A6F0 00207650 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 8020A6F4 00207654 48 0F BC 4D */ bl SetPosition__6CLightFRC9CVector3f +/* 8020A6F8 00207658 48 13 F8 BD */ bl Black__6CColorFv +/* 8020A6FC 0020765C C0 02 B1 30 */ lfs f0, lbl_805ACE50@sda21(r2) +/* 8020A700 00207660 7C 64 1B 78 */ mr r4, r3 +/* 8020A704 00207664 38 61 00 1C */ addi r3, r1, 0x1c +/* 8020A708 00207668 38 A1 01 4C */ addi r5, r1, 0x14c +/* 8020A70C 0020766C EC 20 F8 28 */ fsubs f1, f0, f31 +/* 8020A710 00207670 48 15 8B 9D */ bl Lerp__6CColorFRC6CColorRC6CColorf +/* 8020A714 00207674 38 61 00 94 */ addi r3, r1, 0x94 +/* 8020A718 00207678 38 81 00 1C */ addi r4, r1, 0x1c +/* 8020A71C 0020767C 48 0F BC 41 */ bl SetColor__6CLightFRC6CColor +/* 8020A720 00207680 7F E3 FB 78 */ mr r3, r31 +/* 8020A724 00207684 38 81 00 94 */ addi r4, r1, 0x94 +/* 8020A728 00207688 4B E3 B2 9D */ bl sub_800459c4 +/* 8020A72C 0020768C 48 13 F8 89 */ bl Black__6CColorFv +/* 8020A730 00207690 FC 20 F8 90 */ fmr f1, f31 +/* 8020A734 00207694 7C 64 1B 78 */ mr r4, r3 +/* 8020A738 00207698 38 61 00 18 */ addi r3, r1, 0x18 +/* 8020A73C 0020769C 38 A1 00 FC */ addi r5, r1, 0xfc +/* 8020A740 002076A0 48 15 8B 6D */ bl Lerp__6CColorFRC6CColorRC6CColorf +/* 8020A744 002076A4 38 61 00 E4 */ addi r3, r1, 0xe4 +/* 8020A748 002076A8 38 81 00 18 */ addi r4, r1, 0x18 +/* 8020A74C 002076AC 48 0F BC 11 */ bl SetColor__6CLightFRC6CColor +lbl_8020A750: +/* 8020A750 002076B0 7F E3 FB 78 */ mr r3, r31 +/* 8020A754 002076B4 38 81 00 E4 */ addi r4, r1, 0xe4 +/* 8020A758 002076B8 4B E3 B2 6D */ bl sub_800459c4 +lbl_8020A75C: +/* 8020A75C 002076BC E3 E1 01 98 */ psq_l f31, 408(r1), 0, qr0 +/* 8020A760 002076C0 80 01 01 A4 */ lwz r0, 0x1a4(r1) +/* 8020A764 002076C4 CB E1 01 90 */ lfd f31, 0x190(r1) +/* 8020A768 002076C8 83 E1 01 8C */ lwz r31, 0x18c(r1) +/* 8020A76C 002076CC 83 C1 01 88 */ lwz r30, 0x188(r1) +/* 8020A770 002076D0 7C 08 03 A6 */ mtlr r0 +/* 8020A774 002076D4 38 21 01 A0 */ addi r1, r1, 0x1a0 +/* 8020A778 002076D8 4E 80 00 20 */ blr + +.global Draw__18CWorldTransManagerCFv +Draw__18CWorldTransManagerCFv: +/* 8020A77C 002076DC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8020A780 002076E0 7C 08 02 A6 */ mflr r0 +/* 8020A784 002076E4 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020A788 002076E8 80 03 00 30 */ lwz r0, 0x30(r3) +/* 8020A78C 002076EC 2C 00 00 01 */ cmpwi r0, 1 +/* 8020A790 002076F0 41 82 00 20 */ beq lbl_8020A7B0 +/* 8020A794 002076F4 40 80 00 10 */ bge lbl_8020A7A4 +/* 8020A798 002076F8 2C 00 00 00 */ cmpwi r0, 0 +/* 8020A79C 002076FC 40 80 00 24 */ bge lbl_8020A7C0 +/* 8020A7A0 00207700 48 00 00 24 */ b lbl_8020A7C4 +lbl_8020A7A4: +/* 8020A7A4 00207704 2C 00 00 03 */ cmpwi r0, 3 +/* 8020A7A8 00207708 40 80 00 1C */ bge lbl_8020A7C4 +/* 8020A7AC 0020770C 48 00 00 0C */ b lbl_8020A7B8 +lbl_8020A7B0: +/* 8020A7B0 00207710 4B FF F2 D1 */ bl DrawEnabled__18CWorldTransManagerCFv +/* 8020A7B4 00207714 48 00 00 10 */ b lbl_8020A7C4 +lbl_8020A7B8: +/* 8020A7B8 00207718 4B FF EA C9 */ bl DrawText__18CWorldTransManagerCFv +/* 8020A7BC 0020771C 48 00 00 08 */ b lbl_8020A7C4 +lbl_8020A7C0: +/* 8020A7C0 00207720 4B FF F2 6D */ bl DrawDisabled__18CWorldTransManagerCFv +lbl_8020A7C4: +/* 8020A7C4 00207724 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8020A7C8 00207728 7C 08 03 A6 */ mtlr r0 +/* 8020A7CC 0020772C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8020A7D0 00207730 4E 80 00 20 */ blr + +.global UpdateEnabled__18CWorldTransManagerFf +UpdateEnabled__18CWorldTransManagerFf: +/* 8020A7D4 00207734 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 8020A7D8 00207738 7C 08 02 A6 */ mflr r0 +/* 8020A7DC 0020773C 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 8020A7E0 00207740 DB E1 00 90 */ stfd f31, 0x90(r1) +/* 8020A7E4 00207744 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 +/* 8020A7E8 00207748 93 E1 00 8C */ stw r31, 0x8c(r1) +/* 8020A7EC 0020774C 93 C1 00 88 */ stw r30, 0x88(r1) +/* 8020A7F0 00207750 7C 7F 1B 78 */ mr r31, r3 +/* 8020A7F4 00207754 D0 21 00 08 */ stfs f1, 8(r1) +/* 8020A7F8 00207758 80 83 00 04 */ lwz r4, 4(r3) +/* 8020A7FC 0020775C 28 04 00 00 */ cmplwi r4, 0 +/* 8020A800 00207760 41 82 02 48 */ beq lbl_8020AA48 +/* 8020A804 00207764 80 04 00 2C */ lwz r0, 0x2c(r4) +/* 8020A808 00207768 38 60 00 00 */ li r3, 0 +/* 8020A80C 0020776C 28 00 00 00 */ cmplwi r0, 0 +/* 8020A810 00207770 40 82 00 14 */ bne lbl_8020A824 +/* 8020A814 00207774 88 04 00 44 */ lbz r0, 0x44(r4) +/* 8020A818 00207778 28 00 00 00 */ cmplwi r0, 0 +/* 8020A81C 0020777C 40 82 00 08 */ bne lbl_8020A824 +/* 8020A820 00207780 38 60 00 01 */ li r3, 1 +lbl_8020A824: +/* 8020A824 00207784 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8020A828 00207788 40 82 02 20 */ bne lbl_8020AA48 +/* 8020A82C 0020778C 88 1F 00 44 */ lbz r0, 0x44(r31) +/* 8020A830 00207790 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8020A834 00207794 41 82 00 68 */ beq lbl_8020A89C +/* 8020A838 00207798 88 04 01 DC */ lbz r0, 0x1dc(r4) +/* 8020A83C 0020779C 28 00 00 00 */ cmplwi r0, 0 +/* 8020A840 002077A0 40 82 00 5C */ bne lbl_8020A89C +/* 8020A844 002077A4 C0 1F 00 00 */ lfs f0, 0(r31) +/* 8020A848 002077A8 C0 62 B1 48 */ lfs f3, lbl_805ACE68@sda21(r2) +/* 8020A84C 002077AC FC 00 18 40 */ fcmpo cr0, f0, f3 +/* 8020A850 002077B0 4C 41 13 82 */ cror 2, 1, 2 +/* 8020A854 002077B4 40 82 00 48 */ bne lbl_8020A89C +/* 8020A858 002077B8 38 00 00 01 */ li r0, 1 +/* 8020A85C 002077BC C0 42 B1 84 */ lfs f2, lbl_805ACEA4@sda21(r2) +/* 8020A860 002077C0 98 04 01 DC */ stb r0, 0x1dc(r4) +/* 8020A864 002077C4 C0 22 B1 4C */ lfs f1, lbl_805ACE6C@sda21(r2) +/* 8020A868 002077C8 C0 1F 00 00 */ lfs f0, 0(r31) +/* 8020A86C 002077CC 80 7F 00 04 */ lwz r3, 4(r31) +/* 8020A870 002077D0 D0 03 01 D0 */ stfs f0, 0x1d0(r3) +/* 8020A874 002077D4 C0 1F 00 00 */ lfs f0, 0(r31) +/* 8020A878 002077D8 80 7F 00 04 */ lwz r3, 4(r31) +/* 8020A87C 002077DC EC 02 00 2A */ fadds f0, f2, f0 +/* 8020A880 002077E0 EC 00 18 28 */ fsubs f0, f0, f3 +/* 8020A884 002077E4 D0 03 01 D4 */ stfs f0, 0x1d4(r3) +/* 8020A888 002077E8 C0 1F 00 00 */ lfs f0, 0(r31) +/* 8020A88C 002077EC 80 7F 00 04 */ lwz r3, 4(r31) +/* 8020A890 002077F0 EC 01 00 2A */ fadds f0, f1, f0 +/* 8020A894 002077F4 EC 00 18 28 */ fsubs f0, f0, f3 +/* 8020A898 002077F8 D0 03 01 D8 */ stfs f0, 0x1d8(r3) +lbl_8020A89C: +/* 8020A89C 002077FC 80 7F 00 04 */ lwz r3, 4(r31) +/* 8020A8A0 00207800 C0 3F 00 00 */ lfs f1, 0(r31) +/* 8020A8A4 00207804 C0 03 01 D8 */ lfs f0, 0x1d8(r3) +/* 8020A8A8 00207808 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8020A8AC 0020780C 40 81 00 20 */ ble lbl_8020A8CC +/* 8020A8B0 00207810 88 03 01 DC */ lbz r0, 0x1dc(r3) +/* 8020A8B4 00207814 28 00 00 00 */ cmplwi r0, 0 +/* 8020A8B8 00207818 41 82 00 14 */ beq lbl_8020A8CC +/* 8020A8BC 0020781C 88 1F 00 44 */ lbz r0, 0x44(r31) +/* 8020A8C0 00207820 38 60 00 01 */ li r3, 1 +/* 8020A8C4 00207824 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8020A8C8 00207828 98 1F 00 44 */ stb r0, 0x44(r31) +lbl_8020A8CC: +/* 8020A8CC 0020782C 88 0D A4 EC */ lbz r0, lbl_805A90AC@sda21(r13) +/* 8020A8D0 00207830 7C 00 07 75 */ extsb. r0, r0 +/* 8020A8D4 00207834 40 82 00 1C */ bne lbl_8020A8F0 +/* 8020A8D8 00207838 3C 60 80 3D */ lis r3, lbl_803D2768@ha +/* 8020A8DC 0020783C 38 00 00 01 */ li r0, 1 +/* 8020A8E0 00207840 38 63 27 68 */ addi r3, r3, lbl_803D2768@l +/* 8020A8E4 00207844 98 0D A4 EC */ stb r0, lbl_805A90AC@sda21(r13) +/* 8020A8E8 00207848 38 03 00 07 */ addi r0, r3, 7 +/* 8020A8EC 0020784C 90 0D A4 E8 */ stw r0, lbl_805A90A8@sda21(r13) +lbl_8020A8F0: +/* 8020A8F0 00207850 80 9F 00 04 */ lwz r4, 4(r31) +/* 8020A8F4 00207854 38 61 00 3C */ addi r3, r1, 0x3c +/* 8020A8F8 00207858 C0 21 00 08 */ lfs f1, 8(r1) +/* 8020A8FC 0020785C 38 BF 00 20 */ addi r5, r31, 0x20 +/* 8020A900 00207860 38 84 00 1C */ addi r4, r4, 0x1c +/* 8020A904 00207864 38 C0 00 01 */ li r6, 1 +/* 8020A908 00207868 4B F0 B1 B1 */ bl AdvanceAnimationIgnoreParticles__10CModelDataFfR9CRandom16b +/* 8020A90C 0020786C 80 8D A4 E8 */ lwz r4, lbl_805A90A8@sda21(r13) +/* 8020A910 00207870 38 61 00 2C */ addi r3, r1, 0x2c +/* 8020A914 00207874 4B DF A3 A5 */ bl string_l__4rstlFPCc +/* 8020A918 00207878 83 DF 00 04 */ lwz r30, 4(r31) +/* 8020A91C 0020787C 38 61 00 58 */ addi r3, r1, 0x58 +/* 8020A920 00207880 38 A1 00 2C */ addi r5, r1, 0x2c +/* 8020A924 00207884 38 9E 00 1C */ addi r4, r30, 0x1c +/* 8020A928 00207888 4B F0 B0 79 */ bl "GetScaledLocatorTransform__10CModelDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8020A92C 0020788C 38 7E 01 70 */ addi r3, r30, 0x170 +/* 8020A930 00207890 38 81 00 58 */ addi r4, r1, 0x58 +/* 8020A934 00207894 48 10 82 0D */ bl __as__12CTransform4fFRC12CTransform4f +/* 8020A938 00207898 38 61 00 2C */ addi r3, r1, 0x2c +/* 8020A93C 0020789C 48 13 31 A5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8020A940 002078A0 80 7F 00 04 */ lwz r3, 4(r31) +/* 8020A944 002078A4 C0 21 00 08 */ lfs f1, 8(r1) +/* 8020A948 002078A8 C0 43 01 C4 */ lfs f2, 0x1c4(r3) +/* 8020A94C 002078AC C0 02 B1 28 */ lfs f0, lbl_805ACE48@sda21(r2) +/* 8020A950 002078B0 EC 22 08 28 */ fsubs f1, f2, f1 +/* 8020A954 002078B4 D0 23 01 C4 */ stfs f1, 0x1c4(r3) +/* 8020A958 002078B8 83 DF 00 04 */ lwz r30, 4(r31) +/* 8020A95C 002078BC C0 3E 01 C4 */ lfs f1, 0x1c4(r30) +/* 8020A960 002078C0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8020A964 002078C4 4C 40 13 82 */ cror 2, 0, 2 +/* 8020A968 002078C8 40 82 00 A8 */ bne lbl_8020AA10 +/* 8020A96C 002078CC C0 22 B1 88 */ lfs f1, lbl_805ACEA8@sda21(r2) +/* 8020A970 002078D0 38 7F 00 20 */ addi r3, r31, 0x20 +/* 8020A974 002078D4 C0 42 B1 80 */ lfs f2, lbl_805ACEA0@sda21(r2) +/* 8020A978 002078D8 48 10 7B CD */ bl Range__9CRandom16Fff +/* 8020A97C 002078DC D0 3E 01 C4 */ stfs f1, 0x1c4(r30) +/* 8020A980 002078E0 38 7F 00 20 */ addi r3, r31, 0x20 +/* 8020A984 002078E4 C0 22 B1 94 */ lfs f1, lbl_805ACEB4@sda21(r2) +/* 8020A988 002078E8 C0 42 B1 98 */ lfs f2, lbl_805ACEB8@sda21(r2) +/* 8020A98C 002078EC 48 10 7B B9 */ bl Range__9CRandom16Fff +/* 8020A990 002078F0 FF E0 08 90 */ fmr f31, f1 +/* 8020A994 002078F4 C0 22 B1 8C */ lfs f1, lbl_805ACEAC@sda21(r2) +/* 8020A998 002078F8 C0 42 B1 90 */ lfs f2, lbl_805ACEB0@sda21(r2) +/* 8020A99C 002078FC 38 7F 00 20 */ addi r3, r31, 0x20 +/* 8020A9A0 00207900 48 10 7B A5 */ bl Range__9CRandom16Fff +/* 8020A9A4 00207904 FC 40 F8 90 */ fmr f2, f31 +/* 8020A9A8 00207908 38 61 00 24 */ addi r3, r1, 0x24 +/* 8020A9AC 0020790C 48 10 98 55 */ bl __ct__9CVector2fFff +/* 8020A9B0 00207910 83 DF 00 04 */ lwz r30, 4(r31) +/* 8020A9B4 00207914 38 61 00 14 */ addi r3, r1, 0x14 +/* 8020A9B8 00207918 38 81 00 24 */ addi r4, r1, 0x24 +/* 8020A9BC 0020791C 38 BE 01 B4 */ addi r5, r30, 0x1b4 +/* 8020A9C0 00207920 48 10 95 79 */ bl __mi__FRC9CVector2fRC9CVector2f +/* 8020A9C4 00207924 38 61 00 1C */ addi r3, r1, 0x1c +/* 8020A9C8 00207928 38 81 00 14 */ addi r4, r1, 0x14 +/* 8020A9CC 0020792C 38 BE 01 C4 */ addi r5, r30, 0x1c4 +/* 8020A9D0 00207930 48 10 94 95 */ bl __dv__FRC9CVector2fRCf +/* 8020A9D4 00207934 80 9F 00 04 */ lwz r4, 4(r31) +/* 8020A9D8 00207938 38 7F 00 20 */ addi r3, r31, 0x20 +/* 8020A9DC 0020793C C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 8020A9E0 00207940 C0 22 B1 9C */ lfs f1, lbl_805ACEBC@sda21(r2) +/* 8020A9E4 00207944 D0 04 01 BC */ stfs f0, 0x1bc(r4) +/* 8020A9E8 00207948 C0 42 B1 84 */ lfs f2, lbl_805ACEA4@sda21(r2) +/* 8020A9EC 0020794C C0 01 00 20 */ lfs f0, 0x20(r1) +/* 8020A9F0 00207950 D0 04 01 C0 */ stfs f0, 0x1c0(r4) +/* 8020A9F4 00207954 48 10 7B 51 */ bl Range__9CRandom16Fff +/* 8020A9F8 00207958 80 7F 00 04 */ lwz r3, 4(r31) +/* 8020A9FC 0020795C C0 43 01 C8 */ lfs f2, 0x1c8(r3) +/* 8020AA00 00207960 C0 03 01 C4 */ lfs f0, 0x1c4(r3) +/* 8020AA04 00207964 EC 21 10 28 */ fsubs f1, f1, f2 +/* 8020AA08 00207968 EC 01 00 24 */ fdivs f0, f1, f0 +/* 8020AA0C 0020796C D0 03 01 CC */ stfs f0, 0x1cc(r3) +lbl_8020AA10: +/* 8020AA10 00207970 83 DF 00 04 */ lwz r30, 4(r31) +/* 8020AA14 00207974 38 61 00 0C */ addi r3, r1, 0xc +/* 8020AA18 00207978 38 A1 00 08 */ addi r5, r1, 8 +/* 8020AA1C 0020797C 38 9E 01 BC */ addi r4, r30, 0x1bc +/* 8020AA20 00207980 48 10 94 B5 */ bl __ml__FRC9CVector2fRCf +/* 8020AA24 00207984 38 7E 01 B4 */ addi r3, r30, 0x1b4 +/* 8020AA28 00207988 38 81 00 0C */ addi r4, r1, 0xc +/* 8020AA2C 0020798C 48 10 97 61 */ bl __apl__9CVector2fFRC9CVector2f +/* 8020AA30 00207990 80 7F 00 04 */ lwz r3, 4(r31) +/* 8020AA34 00207994 C0 41 00 08 */ lfs f2, 8(r1) +/* 8020AA38 00207998 C0 23 01 CC */ lfs f1, 0x1cc(r3) +/* 8020AA3C 0020799C C0 03 01 C8 */ lfs f0, 0x1c8(r3) +/* 8020AA40 002079A0 EC 02 00 7A */ fmadds f0, f2, f1, f0 +/* 8020AA44 002079A4 D0 03 01 C8 */ stfs f0, 0x1c8(r3) +lbl_8020AA48: +/* 8020AA48 002079A8 88 1F 00 44 */ lbz r0, 0x44(r31) +/* 8020AA4C 002079AC C0 22 B1 A0 */ lfs f1, lbl_805ACEC0@sda21(r2) +/* 8020AA50 002079B0 C0 01 00 08 */ lfs f0, 8(r1) +/* 8020AA54 002079B4 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 8020AA58 002079B8 EC 21 00 32 */ fmuls f1, f1, f0 +/* 8020AA5C 002079BC 41 82 00 08 */ beq lbl_8020AA64 +/* 8020AA60 002079C0 FC 20 08 50 */ fneg f1, f1 +lbl_8020AA64: +/* 8020AA64 002079C4 C0 1F 00 18 */ lfs f0, 0x18(r31) +/* 8020AA68 002079C8 EC 00 08 2A */ fadds f0, f0, f1 +/* 8020AA6C 002079CC D0 1F 00 18 */ stfs f0, 0x18(r31) +/* 8020AA70 002079D0 C0 1F 00 18 */ lfs f0, 0x18(r31) +/* 8020AA74 002079D4 C0 3F 00 1C */ lfs f1, 0x1c(r31) +/* 8020AA78 002079D8 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 8020AA7C 002079DC 40 81 00 0C */ ble lbl_8020AA88 +/* 8020AA80 002079E0 EC 00 08 28 */ fsubs f0, f0, f1 +/* 8020AA84 002079E4 D0 1F 00 18 */ stfs f0, 0x18(r31) +lbl_8020AA88: +/* 8020AA88 002079E8 C0 3F 00 18 */ lfs f1, 0x18(r31) +/* 8020AA8C 002079EC C0 02 B1 28 */ lfs f0, lbl_805ACE48@sda21(r2) +/* 8020AA90 002079F0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8020AA94 002079F4 40 80 00 10 */ bge lbl_8020AAA4 +/* 8020AA98 002079F8 C0 1F 00 1C */ lfs f0, 0x1c(r31) +/* 8020AA9C 002079FC EC 01 00 2A */ fadds f0, f1, f0 +/* 8020AAA0 00207A00 D0 1F 00 18 */ stfs f0, 0x18(r31) +lbl_8020AAA4: +/* 8020AAA4 00207A04 C0 21 00 08 */ lfs f1, 8(r1) +/* 8020AAA8 00207A08 7F E3 FB 78 */ mr r3, r31 +/* 8020AAAC 00207A0C 4B FF FA 85 */ bl UpdateLights__18CWorldTransManagerFf +/* 8020AAB0 00207A10 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 +/* 8020AAB4 00207A14 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 8020AAB8 00207A18 CB E1 00 90 */ lfd f31, 0x90(r1) +/* 8020AABC 00207A1C 83 E1 00 8C */ lwz r31, 0x8c(r1) +/* 8020AAC0 00207A20 83 C1 00 88 */ lwz r30, 0x88(r1) +/* 8020AAC4 00207A24 7C 08 03 A6 */ mtlr r0 +/* 8020AAC8 00207A28 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 8020AACC 00207A2C 4E 80 00 20 */ blr + +.global UpdateDisabled__18CWorldTransManagerFf +UpdateDisabled__18CWorldTransManagerFf: +/* 8020AAD0 00207A30 C0 23 00 00 */ lfs f1, 0(r3) +/* 8020AAD4 00207A34 C0 02 B1 48 */ lfs f0, lbl_805ACE68@sda21(r2) +/* 8020AAD8 00207A38 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8020AADC 00207A3C 4C 81 00 20 */ blelr +/* 8020AAE0 00207A40 88 03 00 44 */ lbz r0, 0x44(r3) +/* 8020AAE4 00207A44 38 80 00 01 */ li r4, 1 +/* 8020AAE8 00207A48 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 8020AAEC 00207A4C 98 03 00 44 */ stb r0, 0x44(r3) +/* 8020AAF0 00207A50 4E 80 00 20 */ blr + +.global Update__18CWorldTransManagerFf +Update__18CWorldTransManagerFf: +/* 8020AAF4 00207A54 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8020AAF8 00207A58 7C 08 02 A6 */ mflr r0 +/* 8020AAFC 00207A5C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020AB00 00207A60 C0 03 00 00 */ lfs f0, 0(r3) +/* 8020AB04 00207A64 EC 00 08 2A */ fadds f0, f0, f1 +/* 8020AB08 00207A68 D0 03 00 00 */ stfs f0, 0(r3) +/* 8020AB0C 00207A6C 80 03 00 30 */ lwz r0, 0x30(r3) +/* 8020AB10 00207A70 2C 00 00 01 */ cmpwi r0, 1 +/* 8020AB14 00207A74 41 82 00 20 */ beq lbl_8020AB34 +/* 8020AB18 00207A78 40 80 00 10 */ bge lbl_8020AB28 +/* 8020AB1C 00207A7C 2C 00 00 00 */ cmpwi r0, 0 +/* 8020AB20 00207A80 40 80 00 24 */ bge lbl_8020AB44 +/* 8020AB24 00207A84 48 00 00 24 */ b lbl_8020AB48 +lbl_8020AB28: +/* 8020AB28 00207A88 2C 00 00 03 */ cmpwi r0, 3 +/* 8020AB2C 00207A8C 40 80 00 1C */ bge lbl_8020AB48 +/* 8020AB30 00207A90 48 00 00 0C */ b lbl_8020AB3C +lbl_8020AB34: +/* 8020AB34 00207A94 4B FF FC A1 */ bl UpdateEnabled__18CWorldTransManagerFf +/* 8020AB38 00207A98 48 00 00 10 */ b lbl_8020AB48 +lbl_8020AB3C: +/* 8020AB3C 00207A9C 4B FF E8 ED */ bl UpdateText__18CWorldTransManagerFf +/* 8020AB40 00207AA0 48 00 00 08 */ b lbl_8020AB48 +lbl_8020AB44: +/* 8020AB44 00207AA4 4B FF FF 8D */ bl UpdateDisabled__18CWorldTransManagerFf +lbl_8020AB48: +/* 8020AB48 00207AA8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8020AB4C 00207AAC 7C 08 03 A6 */ mtlr r0 +/* 8020AB50 00207AB0 38 21 00 10 */ addi r1, r1, 0x10 +/* 8020AB54 00207AB4 4E 80 00 20 */ blr + +.global EndTransition__18CWorldTransManagerFv +EndTransition__18CWorldTransManagerFv: +/* 8020AB58 00207AB8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8020AB5C 00207ABC 7C 08 02 A6 */ mflr r0 +/* 8020AB60 00207AC0 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020AB64 00207AC4 48 00 09 25 */ bl DisableTransition__18CWorldTransManagerFv +/* 8020AB68 00207AC8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8020AB6C 00207ACC 7C 08 03 A6 */ mtlr r0 +/* 8020AB70 00207AD0 38 21 00 10 */ addi r1, r1, 0x10 +/* 8020AB74 00207AD4 4E 80 00 20 */ blr + +.global StartTransition__18CWorldTransManagerFv +StartTransition__18CWorldTransManagerFv: +/* 8020AB78 00207AD8 C0 02 B1 28 */ lfs f0, lbl_805ACE48@sda21(r2) +/* 8020AB7C 00207ADC 38 A0 00 00 */ li r5, 0 +/* 8020AB80 00207AE0 38 80 00 01 */ li r4, 1 +/* 8020AB84 00207AE4 D0 03 00 00 */ stfs f0, 0(r3) +/* 8020AB88 00207AE8 D0 03 00 18 */ stfs f0, 0x18(r3) +/* 8020AB8C 00207AEC 88 03 00 44 */ lbz r0, 0x44(r3) +/* 8020AB90 00207AF0 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 8020AB94 00207AF4 98 03 00 44 */ stb r0, 0x44(r3) +/* 8020AB98 00207AF8 88 03 00 44 */ lbz r0, 0x44(r3) +/* 8020AB9C 00207AFC 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c +/* 8020ABA0 00207B00 98 03 00 44 */ stb r0, 0x44(r3) +/* 8020ABA4 00207B04 4E 80 00 20 */ blr + +.global EnableTransition__18CWorldTransManagerFRC8CAnimResUiRC9CVector3fUiRC9CVector3fb +EnableTransition__18CWorldTransManagerFRC8CAnimResUiRC9CVector3fUiRC9CVector3fb: +/* 8020ABA8 00207B08 94 21 FE 40 */ stwu r1, -0x1c0(r1) +/* 8020ABAC 00207B0C 7C 08 02 A6 */ mflr r0 +/* 8020ABB0 00207B10 39 40 00 00 */ li r10, 0 +/* 8020ABB4 00207B14 90 01 01 C4 */ stw r0, 0x1c4(r1) +/* 8020ABB8 00207B18 BF 21 01 A4 */ stmw r25, 0x1a4(r1) +/* 8020ABBC 00207B1C 7C 7A 1B 78 */ mr r26, r3 +/* 8020ABC0 00207B20 7C BC 2B 78 */ mr r28, r5 +/* 8020ABC4 00207B24 38 A0 00 01 */ li r5, 1 +/* 8020ABC8 00207B28 3C 60 80 3D */ lis r3, lbl_803D2768@ha +/* 8020ABCC 00207B2C 7C 9B 23 78 */ mr r27, r4 +/* 8020ABD0 00207B30 7C DD 33 78 */ mr r29, r6 +/* 8020ABD4 00207B34 7C FE 3B 78 */ mr r30, r7 +/* 8020ABD8 00207B38 7D 1F 43 78 */ mr r31, r8 +/* 8020ABDC 00207B3C 88 1A 00 44 */ lbz r0, 0x44(r26) +/* 8020ABE0 00207B40 51 40 36 72 */ rlwimi r0, r10, 6, 0x19, 0x19 +/* 8020ABE4 00207B44 98 1A 00 44 */ stb r0, 0x44(r26) +/* 8020ABE8 00207B48 38 03 27 68 */ addi r0, r3, lbl_803D2768@l +/* 8020ABEC 00207B4C 7C 04 03 78 */ mr r4, r0 +/* 8020ABF0 00207B50 38 60 01 E0 */ li r3, 0x1e0 +/* 8020ABF4 00207B54 90 BA 00 30 */ stw r5, 0x30(r26) +/* 8020ABF8 00207B58 88 BA 00 44 */ lbz r5, 0x44(r26) +/* 8020ABFC 00207B5C 51 25 2E B4 */ rlwimi r5, r9, 5, 0x1a, 0x1a +/* 8020AC00 00207B60 98 BA 00 44 */ stb r5, 0x44(r26) +/* 8020AC04 00207B64 38 A0 00 00 */ li r5, 0 +/* 8020AC08 00207B68 48 10 AC 65 */ bl __nw__FUlPCcPCc +/* 8020AC0C 00207B6C 7C 64 1B 79 */ or. r4, r3, r3 +/* 8020AC10 00207B70 41 82 00 10 */ beq lbl_8020AC20 +/* 8020AC14 00207B74 7F 64 DB 78 */ mr r4, r27 +/* 8020AC18 00207B78 48 00 08 CD */ bl sub_8020b4e4 +/* 8020AC1C 00207B7C 7C 64 1B 78 */ mr r4, r3 +lbl_8020AC20: +/* 8020AC20 00207B80 38 7A 00 04 */ addi r3, r26, 4 +/* 8020AC24 00207B84 4B FF EB AD */ bl sub_802097d0 +/* 8020AC28 00207B88 80 7A 00 08 */ lwz r3, 8(r26) +/* 8020AC2C 00207B8C 38 80 00 01 */ li r4, 1 +/* 8020AC30 00207B90 48 0B F0 69 */ bl __dt__15CGuiTextSupportFv +/* 8020AC34 00207B94 38 00 00 00 */ li r0, 0 +/* 8020AC38 00207B98 38 7A 00 20 */ addi r3, r26, 0x20 +/* 8020AC3C 00207B9C 90 1A 00 08 */ stw r0, 8(r26) +/* 8020AC40 00207BA0 38 80 00 63 */ li r4, 0x63 +/* 8020AC44 00207BA4 48 10 79 A1 */ bl SetSeed__9CRandom16FUi +/* 8020AC48 00207BA8 7F 64 DB 78 */ mr r4, r27 +/* 8020AC4C 00207BAC 38 61 01 48 */ addi r3, r1, 0x148 +/* 8020AC50 00207BB0 4B F0 BF 05 */ bl __ct__10CModelDataFRC8CAnimRes +/* 8020AC54 00207BB4 80 7A 00 04 */ lwz r3, 4(r26) +/* 8020AC58 00207BB8 38 81 01 48 */ addi r4, r1, 0x148 +/* 8020AC5C 00207BBC 38 63 00 1C */ addi r3, r3, 0x1c +/* 8020AC60 00207BC0 4B EC B0 B5 */ bl __as__10CModelDataFRC10CModelData +/* 8020AC64 00207BC4 38 61 01 48 */ addi r3, r1, 0x148 +/* 8020AC68 00207BC8 38 80 FF FF */ li r4, -1 +/* 8020AC6C 00207BCC 4B F0 BD E1 */ bl __dt__10CModelDataFv +/* 8020AC70 00207BD0 80 9B 00 18 */ lwz r4, 0x18(r27) +/* 8020AC74 00207BD4 38 00 00 00 */ li r0, 0 +/* 8020AC78 00207BD8 C0 02 B1 30 */ lfs f0, lbl_805ACE50@sda21(r2) +/* 8020AC7C 00207BDC 38 C0 FF FF */ li r6, -1 +/* 8020AC80 00207BE0 38 60 00 01 */ li r3, 1 +/* 8020AC84 00207BE4 90 81 00 88 */ stw r4, 0x88(r1) +/* 8020AC88 00207BE8 38 81 00 88 */ addi r4, r1, 0x88 +/* 8020AC8C 00207BEC 38 A0 00 00 */ li r5, 0 +/* 8020AC90 00207BF0 90 C1 00 8C */ stw r6, 0x8c(r1) +/* 8020AC94 00207BF4 D0 01 00 90 */ stfs f0, 0x90(r1) +/* 8020AC98 00207BF8 98 61 00 94 */ stb r3, 0x94(r1) +/* 8020AC9C 00207BFC 90 01 00 98 */ stw r0, 0x98(r1) +/* 8020ACA0 00207C00 90 01 00 9C */ stw r0, 0x9c(r1) +/* 8020ACA4 00207C04 98 01 00 A0 */ stb r0, 0xa0(r1) +/* 8020ACA8 00207C08 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 8020ACAC 00207C0C 90 01 00 A8 */ stw r0, 0xa8(r1) +/* 8020ACB0 00207C10 90 01 00 AC */ stw r0, 0xac(r1) +/* 8020ACB4 00207C14 80 7A 00 04 */ lwz r3, 4(r26) +/* 8020ACB8 00207C18 80 63 00 2C */ lwz r3, 0x2c(r3) +/* 8020ACBC 00207C1C 4B E2 20 C1 */ bl SetAnimation__9CAnimDataFRC18CAnimPlaybackParmsb +/* 8020ACC0 00207C20 80 8D A0 80 */ lwz r4, gpGameState@sda21(r13) +/* 8020ACC4 00207C24 38 61 00 08 */ addi r3, r1, 8 +/* 8020ACC8 00207C28 4B FC 8C 59 */ bl GetPlayerState__10CGameStateCFv +/* 8020ACCC 00207C2C 80 81 00 08 */ lwz r4, 8(r1) +/* 8020ACD0 00207C30 80 6D A1 4C */ lwz r3, gpTweakPlayerRes@sda21(r13) +/* 8020ACD4 00207C34 80 84 00 00 */ lwz r4, 0(r4) +/* 8020ACD8 00207C38 80 84 00 08 */ lwz r4, 8(r4) +/* 8020ACDC 00207C3C 4B FA 15 35 */ bl GetCinematicBeamResId__15CTweakPlayerResCFQ212CPlayerState7EBeamId +/* 8020ACE0 00207C40 7C 79 1B 78 */ mr r25, r3 +/* 8020ACE4 00207C44 38 61 00 08 */ addi r3, r1, 8 +/* 8020ACE8 00207C48 4B DF E2 25 */ bl sub_80008f0c +/* 8020ACEC 00207C4C 3C 60 43 4D */ lis r3, 0x434D444C@ha +/* 8020ACF0 00207C50 93 21 00 40 */ stw r25, 0x40(r1) +/* 8020ACF4 00207C54 38 03 44 4C */ addi r0, r3, 0x434D444C@l +/* 8020ACF8 00207C58 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8020ACFC 00207C5C 90 01 00 3C */ stw r0, 0x3c(r1) +/* 8020AD00 00207C60 38 61 00 34 */ addi r3, r1, 0x34 +/* 8020AD04 00207C64 38 A1 00 3C */ addi r5, r1, 0x3c +/* 8020AD08 00207C68 81 84 00 00 */ lwz r12, 0(r4) +/* 8020AD0C 00207C6C 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8020AD10 00207C70 7D 89 03 A6 */ mtctr r12 +/* 8020AD14 00207C74 4E 80 04 21 */ bctrl +/* 8020AD18 00207C78 80 7A 00 04 */ lwz r3, 4(r26) +/* 8020AD1C 00207C7C 3B 23 01 4C */ addi r25, r3, 0x14c +/* 8020AD20 00207C80 88 03 01 54 */ lbz r0, 0x154(r3) +/* 8020AD24 00207C84 28 00 00 00 */ cmplwi r0, 0 +/* 8020AD28 00207C88 40 82 00 24 */ bne lbl_8020AD4C +/* 8020AD2C 00207C8C 28 19 00 00 */ cmplwi r25, 0 +/* 8020AD30 00207C90 41 82 00 10 */ beq lbl_8020AD40 +/* 8020AD34 00207C94 7F 23 CB 78 */ mr r3, r25 +/* 8020AD38 00207C98 38 81 00 34 */ addi r4, r1, 0x34 +/* 8020AD3C 00207C9C 48 13 61 6D */ bl __ct__6CTokenFRC6CToken +lbl_8020AD40: +/* 8020AD40 00207CA0 38 00 00 01 */ li r0, 1 +/* 8020AD44 00207CA4 98 19 00 08 */ stb r0, 8(r25) +/* 8020AD48 00207CA8 48 00 00 10 */ b lbl_8020AD58 +lbl_8020AD4C: +/* 8020AD4C 00207CAC 7F 23 CB 78 */ mr r3, r25 +/* 8020AD50 00207CB0 38 81 00 34 */ addi r4, r1, 0x34 +/* 8020AD54 00207CB4 48 13 5F 71 */ bl __as__6CTokenFRC6CToken +lbl_8020AD58: +/* 8020AD58 00207CB8 38 61 00 34 */ addi r3, r1, 0x34 +/* 8020AD5C 00207CBC 38 80 FF FF */ li r4, -1 +/* 8020AD60 00207CC0 48 13 60 E1 */ bl __dt__6CTokenFv +/* 8020AD64 00207CC4 80 7A 00 04 */ lwz r3, 4(r26) +/* 8020AD68 00207CC8 38 63 01 4C */ addi r3, r3, 0x14c +/* 8020AD6C 00207CCC 48 13 60 19 */ bl Lock__6CTokenFv +/* 8020AD70 00207CD0 80 8D A0 6C */ lwz r4, gpCharacterFactoryBuilder@sda21(r13) +/* 8020AD74 00207CD4 7F 65 DB 78 */ mr r5, r27 +/* 8020AD78 00207CD8 38 61 00 2C */ addi r3, r1, 0x2c +/* 8020AD7C 00207CDC 4B E2 9B 3D */ bl GetFactory__24CCharacterFactoryBuilderFRC8CAnimRes +/* 8020AD80 00207CE0 3B 21 00 64 */ addi r25, r1, 0x64 +/* 8020AD84 00207CE4 38 81 00 2C */ addi r4, r1, 0x2c +/* 8020AD88 00207CE8 7F 23 CB 78 */ mr r3, r25 +/* 8020AD8C 00207CEC 48 13 61 1D */ bl __ct__6CTokenFRC6CToken +/* 8020AD90 00207CF0 7F 23 CB 78 */ mr r3, r25 +/* 8020AD94 00207CF4 48 13 60 79 */ bl GetObj__6CTokenFv +/* 8020AD98 00207CF8 80 03 00 04 */ lwz r0, 4(r3) +/* 8020AD9C 00207CFC 38 61 00 2C */ addi r3, r1, 0x2c +/* 8020ADA0 00207D00 38 80 00 00 */ li r4, 0 +/* 8020ADA4 00207D04 90 01 00 6C */ stw r0, 0x6c(r1) +/* 8020ADA8 00207D08 48 13 60 99 */ bl __dt__6CTokenFv +/* 8020ADAC 00207D0C 83 21 00 6C */ lwz r25, 0x6c(r1) +/* 8020ADB0 00207D10 48 00 06 35 */ bl sub_8020b3e4 +/* 8020ADB4 00207D14 7C 64 1B 78 */ mr r4, r3 +/* 8020ADB8 00207D18 7F 23 CB 78 */ mr r3, r25 +/* 8020ADBC 00207D1C 4B E2 75 89 */ bl sub_80032344 +/* 8020ADC0 00207D20 7C 7B 1B 78 */ mr r27, r3 +/* 8020ADC4 00207D24 3C 60 43 4D */ lis r3, 0x434D444C@ha +/* 8020ADC8 00207D28 80 DB 00 14 */ lwz r6, 0x14(r27) +/* 8020ADCC 00207D2C 38 03 44 4C */ addi r0, r3, 0x434D444C@l +/* 8020ADD0 00207D30 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8020ADD4 00207D34 38 61 00 1C */ addi r3, r1, 0x1c +/* 8020ADD8 00207D38 90 01 00 24 */ stw r0, 0x24(r1) +/* 8020ADDC 00207D3C 38 A1 00 24 */ addi r5, r1, 0x24 +/* 8020ADE0 00207D40 90 C1 00 28 */ stw r6, 0x28(r1) +/* 8020ADE4 00207D44 81 84 00 00 */ lwz r12, 0(r4) +/* 8020ADE8 00207D48 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8020ADEC 00207D4C 7D 89 03 A6 */ mtctr r12 +/* 8020ADF0 00207D50 4E 80 04 21 */ bctrl +/* 8020ADF4 00207D54 80 7A 00 04 */ lwz r3, 4(r26) +/* 8020ADF8 00207D58 3B 23 01 58 */ addi r25, r3, 0x158 +/* 8020ADFC 00207D5C 88 03 01 60 */ lbz r0, 0x160(r3) +/* 8020AE00 00207D60 28 00 00 00 */ cmplwi r0, 0 +/* 8020AE04 00207D64 40 82 00 24 */ bne lbl_8020AE28 +/* 8020AE08 00207D68 28 19 00 00 */ cmplwi r25, 0 +/* 8020AE0C 00207D6C 41 82 00 10 */ beq lbl_8020AE1C +/* 8020AE10 00207D70 7F 23 CB 78 */ mr r3, r25 +/* 8020AE14 00207D74 38 81 00 1C */ addi r4, r1, 0x1c +/* 8020AE18 00207D78 48 13 60 91 */ bl __ct__6CTokenFRC6CToken +lbl_8020AE1C: +/* 8020AE1C 00207D7C 38 00 00 01 */ li r0, 1 +/* 8020AE20 00207D80 98 19 00 08 */ stb r0, 8(r25) +/* 8020AE24 00207D84 48 00 00 10 */ b lbl_8020AE34 +lbl_8020AE28: +/* 8020AE28 00207D88 7F 23 CB 78 */ mr r3, r25 +/* 8020AE2C 00207D8C 38 81 00 1C */ addi r4, r1, 0x1c +/* 8020AE30 00207D90 48 13 5E 95 */ bl __as__6CTokenFRC6CToken +lbl_8020AE34: +/* 8020AE34 00207D94 38 61 00 1C */ addi r3, r1, 0x1c +/* 8020AE38 00207D98 38 80 FF FF */ li r4, -1 +/* 8020AE3C 00207D9C 48 13 60 05 */ bl __dt__6CTokenFv +/* 8020AE40 00207DA0 80 7A 00 04 */ lwz r3, 4(r26) +/* 8020AE44 00207DA4 38 63 01 58 */ addi r3, r3, 0x158 +/* 8020AE48 00207DA8 48 13 5F 3D */ bl Lock__6CTokenFv +/* 8020AE4C 00207DAC 80 DB 00 18 */ lwz r6, 0x18(r27) +/* 8020AE50 00207DB0 3C 60 43 53 */ lis r3, 0x43534B52@ha +/* 8020AE54 00207DB4 38 03 4B 52 */ addi r0, r3, 0x43534B52@l +/* 8020AE58 00207DB8 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8020AE5C 00207DBC 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020AE60 00207DC0 38 61 00 0C */ addi r3, r1, 0xc +/* 8020AE64 00207DC4 38 A1 00 14 */ addi r5, r1, 0x14 +/* 8020AE68 00207DC8 90 C1 00 18 */ stw r6, 0x18(r1) +/* 8020AE6C 00207DCC 81 84 00 00 */ lwz r12, 0(r4) +/* 8020AE70 00207DD0 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8020AE74 00207DD4 7D 89 03 A6 */ mtctr r12 +/* 8020AE78 00207DD8 4E 80 04 21 */ bctrl +/* 8020AE7C 00207DDC 80 7A 00 04 */ lwz r3, 4(r26) +/* 8020AE80 00207DE0 3B 23 01 64 */ addi r25, r3, 0x164 +/* 8020AE84 00207DE4 88 03 01 6C */ lbz r0, 0x16c(r3) +/* 8020AE88 00207DE8 28 00 00 00 */ cmplwi r0, 0 +/* 8020AE8C 00207DEC 40 82 00 24 */ bne lbl_8020AEB0 +/* 8020AE90 00207DF0 28 19 00 00 */ cmplwi r25, 0 +/* 8020AE94 00207DF4 41 82 00 10 */ beq lbl_8020AEA4 +/* 8020AE98 00207DF8 7F 23 CB 78 */ mr r3, r25 +/* 8020AE9C 00207DFC 38 81 00 0C */ addi r4, r1, 0xc +/* 8020AEA0 00207E00 48 13 60 09 */ bl __ct__6CTokenFRC6CToken +lbl_8020AEA4: +/* 8020AEA4 00207E04 38 00 00 01 */ li r0, 1 +/* 8020AEA8 00207E08 98 19 00 08 */ stb r0, 8(r25) +/* 8020AEAC 00207E0C 48 00 00 10 */ b lbl_8020AEBC +lbl_8020AEB0: +/* 8020AEB0 00207E10 7F 23 CB 78 */ mr r3, r25 +/* 8020AEB4 00207E14 38 81 00 0C */ addi r4, r1, 0xc +/* 8020AEB8 00207E18 48 13 5E 0D */ bl __as__6CTokenFRC6CToken +lbl_8020AEBC: +/* 8020AEBC 00207E1C 38 61 00 0C */ addi r3, r1, 0xc +/* 8020AEC0 00207E20 38 80 FF FF */ li r4, -1 +/* 8020AEC4 00207E24 48 13 5F 7D */ bl __dt__6CTokenFv +/* 8020AEC8 00207E28 80 7A 00 04 */ lwz r3, 4(r26) +/* 8020AECC 00207E2C 38 63 01 64 */ addi r3, r3, 0x164 +/* 8020AED0 00207E30 48 13 5E B5 */ bl Lock__6CTokenFv +/* 8020AED4 00207E34 38 61 00 64 */ addi r3, r1, 0x64 +/* 8020AED8 00207E38 38 80 00 00 */ li r4, 0 +/* 8020AEDC 00207E3C 48 13 5F 65 */ bl __dt__6CTokenFv +/* 8020AEE0 00207E40 3C 1C 00 01 */ addis r0, r28, 1 +/* 8020AEE4 00207E44 28 00 FF FF */ cmplwi r0, 0xffff +/* 8020AEE8 00207E48 41 82 00 5C */ beq lbl_8020AF44 +/* 8020AEEC 00207E4C C0 5D 00 00 */ lfs f2, 0(r29) +/* 8020AEF0 00207E50 38 61 00 FC */ addi r3, r1, 0xfc +/* 8020AEF4 00207E54 C0 3D 00 04 */ lfs f1, 4(r29) +/* 8020AEF8 00207E58 38 81 00 54 */ addi r4, r1, 0x54 +/* 8020AEFC 00207E5C C0 1D 00 08 */ lfs f0, 8(r29) +/* 8020AF00 00207E60 93 81 00 54 */ stw r28, 0x54(r1) +/* 8020AF04 00207E64 D0 41 00 58 */ stfs f2, 0x58(r1) +/* 8020AF08 00207E68 D0 21 00 5C */ stfs f1, 0x5c(r1) +/* 8020AF0C 00207E6C D0 01 00 60 */ stfs f0, 0x60(r1) +/* 8020AF10 00207E70 4B F0 BE 4D */ bl __ct__10CModelDataFRC10CStaticRes +/* 8020AF14 00207E74 80 7A 00 04 */ lwz r3, 4(r26) +/* 8020AF18 00207E78 38 81 00 FC */ addi r4, r1, 0xfc +/* 8020AF1C 00207E7C 38 63 00 B4 */ addi r3, r3, 0xb4 +/* 8020AF20 00207E80 4B EC AD F5 */ bl __as__10CModelDataFRC10CModelData +/* 8020AF24 00207E84 38 61 00 FC */ addi r3, r1, 0xfc +/* 8020AF28 00207E88 38 80 FF FF */ li r4, -1 +/* 8020AF2C 00207E8C 4B F0 BB 21 */ bl __dt__10CModelDataFv +/* 8020AF30 00207E90 80 7A 00 04 */ lwz r3, 4(r26) +/* 8020AF34 00207E94 38 80 00 00 */ li r4, 0 +/* 8020AF38 00207E98 38 A0 00 00 */ li r5, 0 +/* 8020AF3C 00207E9C 38 63 00 B4 */ addi r3, r3, 0xb4 +/* 8020AF40 00207EA0 4B F0 AD 6D */ bl Touch__10CModelDataCFQ210CModelData11EWhichModeli +lbl_8020AF44: +/* 8020AF44 00207EA4 3C 1E 00 01 */ addis r0, r30, 1 +/* 8020AF48 00207EA8 28 00 FF FF */ cmplwi r0, 0xffff +/* 8020AF4C 00207EAC 41 82 00 88 */ beq lbl_8020AFD4 +/* 8020AF50 00207EB0 C0 5F 00 00 */ lfs f2, 0(r31) +/* 8020AF54 00207EB4 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 8020AF58 00207EB8 C0 3F 00 04 */ lfs f1, 4(r31) +/* 8020AF5C 00207EBC 38 81 00 44 */ addi r4, r1, 0x44 +/* 8020AF60 00207EC0 C0 1F 00 08 */ lfs f0, 8(r31) +/* 8020AF64 00207EC4 93 C1 00 44 */ stw r30, 0x44(r1) +/* 8020AF68 00207EC8 D0 41 00 48 */ stfs f2, 0x48(r1) +/* 8020AF6C 00207ECC D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 8020AF70 00207ED0 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 8020AF74 00207ED4 4B F0 BD E9 */ bl __ct__10CModelDataFRC10CStaticRes +/* 8020AF78 00207ED8 80 7A 00 04 */ lwz r3, 4(r26) +/* 8020AF7C 00207EDC 38 81 00 B0 */ addi r4, r1, 0xb0 +/* 8020AF80 00207EE0 38 63 01 00 */ addi r3, r3, 0x100 +/* 8020AF84 00207EE4 4B EC AD 91 */ bl __as__10CModelDataFRC10CModelData +/* 8020AF88 00207EE8 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 8020AF8C 00207EEC 38 80 FF FF */ li r4, -1 +/* 8020AF90 00207EF0 4B F0 BA BD */ bl __dt__10CModelDataFv +/* 8020AF94 00207EF4 80 7A 00 04 */ lwz r3, 4(r26) +/* 8020AF98 00207EF8 38 80 00 00 */ li r4, 0 +/* 8020AF9C 00207EFC 38 A0 00 00 */ li r5, 0 +/* 8020AFA0 00207F00 38 63 01 00 */ addi r3, r3, 0x100 +/* 8020AFA4 00207F04 4B F0 AD 09 */ bl Touch__10CModelDataCFQ210CModelData11EWhichModeli +/* 8020AFA8 00207F08 80 9A 00 04 */ lwz r4, 4(r26) +/* 8020AFAC 00207F0C 38 61 00 70 */ addi r3, r1, 0x70 +/* 8020AFB0 00207F10 38 84 01 00 */ addi r4, r4, 0x100 +/* 8020AFB4 00207F14 4B F0 A6 11 */ bl GetBounds__10CModelDataCFv +/* 8020AFB8 00207F18 C0 41 00 84 */ lfs f2, 0x84(r1) +/* 8020AFBC 00207F1C C0 21 00 78 */ lfs f1, 0x78(r1) +/* 8020AFC0 00207F20 C0 1F 00 08 */ lfs f0, 8(r31) +/* 8020AFC4 00207F24 EC 22 08 28 */ fsubs f1, f2, f1 +/* 8020AFC8 00207F28 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8020AFCC 00207F2C D0 1A 00 1C */ stfs f0, 0x1c(r26) +/* 8020AFD0 00207F30 48 00 00 0C */ b lbl_8020AFDC +lbl_8020AFD4: +/* 8020AFD4 00207F34 C0 02 B1 28 */ lfs f0, lbl_805ACE48@sda21(r2) +/* 8020AFD8 00207F38 D0 1A 00 1C */ stfs f0, 0x1c(r26) +lbl_8020AFDC: +/* 8020AFDC 00207F3C 7F 43 D3 78 */ mr r3, r26 +/* 8020AFE0 00207F40 4B FF FB 99 */ bl StartTransition__18CWorldTransManagerFv +/* 8020AFE4 00207F44 7F 43 D3 78 */ mr r3, r26 +/* 8020AFE8 00207F48 48 00 00 19 */ bl TouchModels__18CWorldTransManagerFv +/* 8020AFEC 00207F4C BB 21 01 A4 */ lmw r25, 0x1a4(r1) +/* 8020AFF0 00207F50 80 01 01 C4 */ lwz r0, 0x1c4(r1) +/* 8020AFF4 00207F54 7C 08 03 A6 */ mtlr r0 +/* 8020AFF8 00207F58 38 21 01 C0 */ addi r1, r1, 0x1c0 +/* 8020AFFC 00207F5C 4E 80 00 20 */ blr + +.global TouchModels__18CWorldTransManagerFv +TouchModels__18CWorldTransManagerFv: +/* 8020B000 00207F60 94 21 FE E0 */ stwu r1, -0x120(r1) +/* 8020B004 00207F64 7C 08 02 A6 */ mflr r0 +/* 8020B008 00207F68 90 01 01 24 */ stw r0, 0x124(r1) +/* 8020B00C 00207F6C 93 E1 01 1C */ stw r31, 0x11c(r1) +/* 8020B010 00207F70 83 E3 00 04 */ lwz r31, 4(r3) +/* 8020B014 00207F74 28 1F 00 00 */ cmplwi r31, 0 +/* 8020B018 00207F78 41 82 03 B8 */ beq lbl_8020B3D0 +/* 8020B01C 00207F7C 88 1F 01 54 */ lbz r0, 0x154(r31) +/* 8020B020 00207F80 28 00 00 00 */ cmplwi r0, 0 +/* 8020B024 00207F84 41 82 00 E0 */ beq lbl_8020B104 +/* 8020B028 00207F88 80 7F 01 4C */ lwz r3, 0x14c(r31) +/* 8020B02C 00207F8C 80 03 00 10 */ lwz r0, 0x10(r3) +/* 8020B030 00207F90 28 00 00 00 */ cmplwi r0, 0 +/* 8020B034 00207F94 41 82 00 D0 */ beq lbl_8020B104 +/* 8020B038 00207F98 80 03 00 08 */ lwz r0, 8(r3) +/* 8020B03C 00207F9C 38 61 00 80 */ addi r3, r1, 0x80 +/* 8020B040 00207FA0 38 81 00 2C */ addi r4, r1, 0x2c +/* 8020B044 00207FA4 90 01 00 2C */ stw r0, 0x2c(r1) +/* 8020B048 00207FA8 C0 1F 00 08 */ lfs f0, 8(r31) +/* 8020B04C 00207FAC D0 01 00 30 */ stfs f0, 0x30(r1) +/* 8020B050 00207FB0 C0 1F 00 0C */ lfs f0, 0xc(r31) +/* 8020B054 00207FB4 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 8020B058 00207FB8 C0 1F 00 10 */ lfs f0, 0x10(r31) +/* 8020B05C 00207FBC D0 01 00 38 */ stfs f0, 0x38(r1) +/* 8020B060 00207FC0 4B F0 BC FD */ bl __ct__10CModelDataFRC10CStaticRes +/* 8020B064 00207FC4 38 7F 00 68 */ addi r3, r31, 0x68 +/* 8020B068 00207FC8 38 81 00 80 */ addi r4, r1, 0x80 +/* 8020B06C 00207FCC 4B EC AC A9 */ bl __as__10CModelDataFRC10CModelData +/* 8020B070 00207FD0 38 61 00 80 */ addi r3, r1, 0x80 +/* 8020B074 00207FD4 38 80 FF FF */ li r4, -1 +/* 8020B078 00207FD8 4B F0 B9 D5 */ bl __dt__10CModelDataFv +/* 8020B07C 00207FDC 38 7F 01 4C */ addi r3, r31, 0x14c +/* 8020B080 00207FE0 38 81 00 20 */ addi r4, r1, 0x20 +/* 8020B084 00207FE4 38 00 00 00 */ li r0, 0 +/* 8020B088 00207FE8 7C 03 20 40 */ cmplw r3, r4 +/* 8020B08C 00207FEC 98 01 00 28 */ stb r0, 0x28(r1) +/* 8020B090 00207FF0 41 82 00 54 */ beq lbl_8020B0E4 +/* 8020B094 00207FF4 28 00 00 00 */ cmplwi r0, 0 +/* 8020B098 00207FF8 41 82 00 30 */ beq lbl_8020B0C8 +/* 8020B09C 00207FFC 88 1F 01 54 */ lbz r0, 0x154(r31) +/* 8020B0A0 00208000 28 00 00 00 */ cmplwi r0, 0 +/* 8020B0A4 00208004 40 82 00 1C */ bne lbl_8020B0C0 +/* 8020B0A8 00208008 34 7F 01 4C */ addic. r3, r31, 0x14c +/* 8020B0AC 0020800C 41 82 00 08 */ beq lbl_8020B0B4 +/* 8020B0B0 00208010 48 13 5D F9 */ bl __ct__6CTokenFRC6CToken +lbl_8020B0B4: +/* 8020B0B4 00208014 38 00 00 01 */ li r0, 1 +/* 8020B0B8 00208018 98 1F 01 54 */ stb r0, 0x154(r31) +/* 8020B0BC 0020801C 48 00 00 28 */ b lbl_8020B0E4 +lbl_8020B0C0: +/* 8020B0C0 00208020 48 13 5C 05 */ bl __as__6CTokenFRC6CToken +/* 8020B0C4 00208024 48 00 00 20 */ b lbl_8020B0E4 +lbl_8020B0C8: +/* 8020B0C8 00208028 88 1F 01 54 */ lbz r0, 0x154(r31) +/* 8020B0CC 0020802C 28 00 00 00 */ cmplwi r0, 0 +/* 8020B0D0 00208030 41 82 00 0C */ beq lbl_8020B0DC +/* 8020B0D4 00208034 38 80 FF FF */ li r4, -1 +/* 8020B0D8 00208038 48 13 5D 69 */ bl __dt__6CTokenFv +lbl_8020B0DC: +/* 8020B0DC 0020803C 38 00 00 00 */ li r0, 0 +/* 8020B0E0 00208040 98 1F 01 54 */ stb r0, 0x154(r31) +lbl_8020B0E4: +/* 8020B0E4 00208044 88 01 00 28 */ lbz r0, 0x28(r1) +/* 8020B0E8 00208048 28 00 00 00 */ cmplwi r0, 0 +/* 8020B0EC 0020804C 41 82 00 10 */ beq lbl_8020B0FC +/* 8020B0F0 00208050 38 61 00 20 */ addi r3, r1, 0x20 +/* 8020B0F4 00208054 38 80 FF FF */ li r4, -1 +/* 8020B0F8 00208058 48 13 5D 49 */ bl __dt__6CTokenFv +lbl_8020B0FC: +/* 8020B0FC 0020805C 38 00 00 00 */ li r0, 0 +/* 8020B100 00208060 98 01 00 28 */ stb r0, 0x28(r1) +lbl_8020B104: +/* 8020B104 00208064 88 1F 01 60 */ lbz r0, 0x160(r31) +/* 8020B108 00208068 28 00 00 00 */ cmplwi r0, 0 +/* 8020B10C 0020806C 41 82 01 E4 */ beq lbl_8020B2F0 +/* 8020B110 00208070 88 1F 01 6C */ lbz r0, 0x16c(r31) +/* 8020B114 00208074 28 00 00 00 */ cmplwi r0, 0 +/* 8020B118 00208078 41 82 01 D8 */ beq lbl_8020B2F0 +/* 8020B11C 0020807C 80 7F 01 58 */ lwz r3, 0x158(r31) +/* 8020B120 00208080 80 03 00 10 */ lwz r0, 0x10(r3) +/* 8020B124 00208084 28 00 00 00 */ cmplwi r0, 0 +/* 8020B128 00208088 41 82 01 C8 */ beq lbl_8020B2F0 +/* 8020B12C 0020808C 80 7F 01 64 */ lwz r3, 0x164(r31) +/* 8020B130 00208090 80 03 00 10 */ lwz r0, 0x10(r3) +/* 8020B134 00208094 28 00 00 00 */ cmplwi r0, 0 +/* 8020B138 00208098 41 82 01 B8 */ beq lbl_8020B2F0 +/* 8020B13C 0020809C 48 00 02 A9 */ bl sub_8020b3e4 +/* 8020B140 002080A0 80 DF 00 18 */ lwz r6, 0x18(r31) +/* 8020B144 002080A4 38 00 00 01 */ li r0, 1 +/* 8020B148 002080A8 80 BF 00 00 */ lwz r5, 0(r31) +/* 8020B14C 002080AC 38 81 00 3C */ addi r4, r1, 0x3c +/* 8020B150 002080B0 90 61 00 40 */ stw r3, 0x40(r1) +/* 8020B154 002080B4 38 61 00 CC */ addi r3, r1, 0xcc +/* 8020B158 002080B8 90 A1 00 3C */ stw r5, 0x3c(r1) +/* 8020B15C 002080BC C0 1F 00 08 */ lfs f0, 8(r31) +/* 8020B160 002080C0 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 8020B164 002080C4 C0 1F 00 0C */ lfs f0, 0xc(r31) +/* 8020B168 002080C8 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 8020B16C 002080CC C0 1F 00 10 */ lfs f0, 0x10(r31) +/* 8020B170 002080D0 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 8020B174 002080D4 98 01 00 50 */ stb r0, 0x50(r1) +/* 8020B178 002080D8 90 C1 00 54 */ stw r6, 0x54(r1) +/* 8020B17C 002080DC 4B F0 B9 D9 */ bl __ct__10CModelDataFRC8CAnimRes +/* 8020B180 002080E0 38 7F 00 1C */ addi r3, r31, 0x1c +/* 8020B184 002080E4 38 81 00 CC */ addi r4, r1, 0xcc +/* 8020B188 002080E8 4B EC AB 8D */ bl __as__10CModelDataFRC10CModelData +/* 8020B18C 002080EC 80 81 00 54 */ lwz r4, 0x54(r1) +/* 8020B190 002080F0 38 00 00 00 */ li r0, 0 +/* 8020B194 002080F4 C0 02 B1 30 */ lfs f0, lbl_805ACE50@sda21(r2) +/* 8020B198 002080F8 38 C0 FF FF */ li r6, -1 +/* 8020B19C 002080FC 38 60 00 01 */ li r3, 1 +/* 8020B1A0 00208100 90 81 00 58 */ stw r4, 0x58(r1) +/* 8020B1A4 00208104 38 81 00 58 */ addi r4, r1, 0x58 +/* 8020B1A8 00208108 38 A0 00 00 */ li r5, 0 +/* 8020B1AC 0020810C 90 C1 00 5C */ stw r6, 0x5c(r1) +/* 8020B1B0 00208110 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 8020B1B4 00208114 98 61 00 64 */ stb r3, 0x64(r1) +/* 8020B1B8 00208118 90 01 00 68 */ stw r0, 0x68(r1) +/* 8020B1BC 0020811C 90 01 00 6C */ stw r0, 0x6c(r1) +/* 8020B1C0 00208120 98 01 00 70 */ stb r0, 0x70(r1) +/* 8020B1C4 00208124 90 01 00 74 */ stw r0, 0x74(r1) +/* 8020B1C8 00208128 90 01 00 78 */ stw r0, 0x78(r1) +/* 8020B1CC 0020812C 90 01 00 7C */ stw r0, 0x7c(r1) +/* 8020B1D0 00208130 80 7F 00 2C */ lwz r3, 0x2c(r31) +/* 8020B1D4 00208134 4B E2 1B A9 */ bl SetAnimation__9CAnimDataFRC18CAnimPlaybackParmsb +/* 8020B1D8 00208138 38 7F 01 58 */ addi r3, r31, 0x158 +/* 8020B1DC 0020813C 38 81 00 14 */ addi r4, r1, 0x14 +/* 8020B1E0 00208140 38 00 00 00 */ li r0, 0 +/* 8020B1E4 00208144 7C 03 20 40 */ cmplw r3, r4 +/* 8020B1E8 00208148 98 01 00 1C */ stb r0, 0x1c(r1) +/* 8020B1EC 0020814C 41 82 00 54 */ beq lbl_8020B240 +/* 8020B1F0 00208150 28 00 00 00 */ cmplwi r0, 0 +/* 8020B1F4 00208154 41 82 00 30 */ beq lbl_8020B224 +/* 8020B1F8 00208158 88 1F 01 60 */ lbz r0, 0x160(r31) +/* 8020B1FC 0020815C 28 00 00 00 */ cmplwi r0, 0 +/* 8020B200 00208160 40 82 00 1C */ bne lbl_8020B21C +/* 8020B204 00208164 34 7F 01 58 */ addic. r3, r31, 0x158 +/* 8020B208 00208168 41 82 00 08 */ beq lbl_8020B210 +/* 8020B20C 0020816C 48 13 5C 9D */ bl __ct__6CTokenFRC6CToken +lbl_8020B210: +/* 8020B210 00208170 38 00 00 01 */ li r0, 1 +/* 8020B214 00208174 98 1F 01 60 */ stb r0, 0x160(r31) +/* 8020B218 00208178 48 00 00 28 */ b lbl_8020B240 +lbl_8020B21C: +/* 8020B21C 0020817C 48 13 5A A9 */ bl __as__6CTokenFRC6CToken +/* 8020B220 00208180 48 00 00 20 */ b lbl_8020B240 +lbl_8020B224: +/* 8020B224 00208184 88 1F 01 60 */ lbz r0, 0x160(r31) +/* 8020B228 00208188 28 00 00 00 */ cmplwi r0, 0 +/* 8020B22C 0020818C 41 82 00 0C */ beq lbl_8020B238 +/* 8020B230 00208190 38 80 FF FF */ li r4, -1 +/* 8020B234 00208194 48 13 5C 0D */ bl __dt__6CTokenFv +lbl_8020B238: +/* 8020B238 00208198 38 00 00 00 */ li r0, 0 +/* 8020B23C 0020819C 98 1F 01 60 */ stb r0, 0x160(r31) +lbl_8020B240: +/* 8020B240 002081A0 88 01 00 1C */ lbz r0, 0x1c(r1) +/* 8020B244 002081A4 28 00 00 00 */ cmplwi r0, 0 +/* 8020B248 002081A8 41 82 00 10 */ beq lbl_8020B258 +/* 8020B24C 002081AC 38 61 00 14 */ addi r3, r1, 0x14 +/* 8020B250 002081B0 38 80 FF FF */ li r4, -1 +/* 8020B254 002081B4 48 13 5B ED */ bl __dt__6CTokenFv +lbl_8020B258: +/* 8020B258 002081B8 38 7F 01 64 */ addi r3, r31, 0x164 +/* 8020B25C 002081BC 38 81 00 08 */ addi r4, r1, 8 +/* 8020B260 002081C0 38 00 00 00 */ li r0, 0 +/* 8020B264 002081C4 7C 03 20 40 */ cmplw r3, r4 +/* 8020B268 002081C8 98 01 00 1C */ stb r0, 0x1c(r1) +/* 8020B26C 002081CC 98 01 00 10 */ stb r0, 0x10(r1) +/* 8020B270 002081D0 41 82 00 54 */ beq lbl_8020B2C4 +/* 8020B274 002081D4 28 00 00 00 */ cmplwi r0, 0 +/* 8020B278 002081D8 41 82 00 30 */ beq lbl_8020B2A8 +/* 8020B27C 002081DC 88 1F 01 6C */ lbz r0, 0x16c(r31) +/* 8020B280 002081E0 28 00 00 00 */ cmplwi r0, 0 +/* 8020B284 002081E4 40 82 00 1C */ bne lbl_8020B2A0 +/* 8020B288 002081E8 34 7F 01 64 */ addic. r3, r31, 0x164 +/* 8020B28C 002081EC 41 82 00 08 */ beq lbl_8020B294 +/* 8020B290 002081F0 48 13 5C 19 */ bl __ct__6CTokenFRC6CToken +lbl_8020B294: +/* 8020B294 002081F4 38 00 00 01 */ li r0, 1 +/* 8020B298 002081F8 98 1F 01 6C */ stb r0, 0x16c(r31) +/* 8020B29C 002081FC 48 00 00 28 */ b lbl_8020B2C4 +lbl_8020B2A0: +/* 8020B2A0 00208200 48 13 5A 25 */ bl __as__6CTokenFRC6CToken +/* 8020B2A4 00208204 48 00 00 20 */ b lbl_8020B2C4 +lbl_8020B2A8: +/* 8020B2A8 00208208 88 1F 01 6C */ lbz r0, 0x16c(r31) +/* 8020B2AC 0020820C 28 00 00 00 */ cmplwi r0, 0 +/* 8020B2B0 00208210 41 82 00 0C */ beq lbl_8020B2BC +/* 8020B2B4 00208214 38 80 FF FF */ li r4, -1 +/* 8020B2B8 00208218 48 13 5B 89 */ bl __dt__6CTokenFv +lbl_8020B2BC: +/* 8020B2BC 0020821C 38 00 00 00 */ li r0, 0 +/* 8020B2C0 00208220 98 1F 01 6C */ stb r0, 0x16c(r31) +lbl_8020B2C4: +/* 8020B2C4 00208224 88 01 00 10 */ lbz r0, 0x10(r1) +/* 8020B2C8 00208228 28 00 00 00 */ cmplwi r0, 0 +/* 8020B2CC 0020822C 41 82 00 10 */ beq lbl_8020B2DC +/* 8020B2D0 00208230 38 61 00 08 */ addi r3, r1, 8 +/* 8020B2D4 00208234 38 80 FF FF */ li r4, -1 +/* 8020B2D8 00208238 48 13 5B 69 */ bl __dt__6CTokenFv +lbl_8020B2DC: +/* 8020B2DC 0020823C 38 00 00 00 */ li r0, 0 +/* 8020B2E0 00208240 38 61 00 CC */ addi r3, r1, 0xcc +/* 8020B2E4 00208244 98 01 00 10 */ stb r0, 0x10(r1) +/* 8020B2E8 00208248 38 80 FF FF */ li r4, -1 +/* 8020B2EC 0020824C 4B F0 B7 61 */ bl __dt__10CModelDataFv +lbl_8020B2F0: +/* 8020B2F0 00208250 80 1F 00 2C */ lwz r0, 0x2c(r31) +/* 8020B2F4 00208254 38 60 00 00 */ li r3, 0 +/* 8020B2F8 00208258 28 00 00 00 */ cmplwi r0, 0 +/* 8020B2FC 0020825C 40 82 00 14 */ bne lbl_8020B310 +/* 8020B300 00208260 88 1F 00 44 */ lbz r0, 0x44(r31) +/* 8020B304 00208264 28 00 00 00 */ cmplwi r0, 0 +/* 8020B308 00208268 40 82 00 08 */ bne lbl_8020B310 +/* 8020B30C 0020826C 38 60 00 01 */ li r3, 1 +lbl_8020B310: +/* 8020B310 00208270 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8020B314 00208274 40 82 00 14 */ bne lbl_8020B328 +/* 8020B318 00208278 38 7F 00 1C */ addi r3, r31, 0x1c +/* 8020B31C 0020827C 38 80 00 00 */ li r4, 0 +/* 8020B320 00208280 38 A0 00 00 */ li r5, 0 +/* 8020B324 00208284 4B F0 A9 89 */ bl Touch__10CModelDataCFQ210CModelData11EWhichModeli +lbl_8020B328: +/* 8020B328 00208288 80 1F 00 C4 */ lwz r0, 0xc4(r31) +/* 8020B32C 0020828C 38 60 00 00 */ li r3, 0 +/* 8020B330 00208290 28 00 00 00 */ cmplwi r0, 0 +/* 8020B334 00208294 40 82 00 14 */ bne lbl_8020B348 +/* 8020B338 00208298 88 1F 00 DC */ lbz r0, 0xdc(r31) +/* 8020B33C 0020829C 28 00 00 00 */ cmplwi r0, 0 +/* 8020B340 002082A0 40 82 00 08 */ bne lbl_8020B348 +/* 8020B344 002082A4 38 60 00 01 */ li r3, 1 +lbl_8020B348: +/* 8020B348 002082A8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8020B34C 002082AC 40 82 00 14 */ bne lbl_8020B360 +/* 8020B350 002082B0 38 7F 00 B4 */ addi r3, r31, 0xb4 +/* 8020B354 002082B4 38 80 00 00 */ li r4, 0 +/* 8020B358 002082B8 38 A0 00 00 */ li r5, 0 +/* 8020B35C 002082BC 4B F0 A9 51 */ bl Touch__10CModelDataCFQ210CModelData11EWhichModeli +lbl_8020B360: +/* 8020B360 002082C0 80 1F 01 10 */ lwz r0, 0x110(r31) +/* 8020B364 002082C4 38 60 00 00 */ li r3, 0 +/* 8020B368 002082C8 28 00 00 00 */ cmplwi r0, 0 +/* 8020B36C 002082CC 40 82 00 14 */ bne lbl_8020B380 +/* 8020B370 002082D0 88 1F 01 28 */ lbz r0, 0x128(r31) +/* 8020B374 002082D4 28 00 00 00 */ cmplwi r0, 0 +/* 8020B378 002082D8 40 82 00 08 */ bne lbl_8020B380 +/* 8020B37C 002082DC 38 60 00 01 */ li r3, 1 +lbl_8020B380: +/* 8020B380 002082E0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8020B384 002082E4 40 82 00 14 */ bne lbl_8020B398 +/* 8020B388 002082E8 38 7F 01 00 */ addi r3, r31, 0x100 +/* 8020B38C 002082EC 38 80 00 00 */ li r4, 0 +/* 8020B390 002082F0 38 A0 00 00 */ li r5, 0 +/* 8020B394 002082F4 4B F0 A9 19 */ bl Touch__10CModelDataCFQ210CModelData11EWhichModeli +lbl_8020B398: +/* 8020B398 002082F8 80 1F 00 78 */ lwz r0, 0x78(r31) +/* 8020B39C 002082FC 38 60 00 00 */ li r3, 0 +/* 8020B3A0 00208300 28 00 00 00 */ cmplwi r0, 0 +/* 8020B3A4 00208304 40 82 00 14 */ bne lbl_8020B3B8 +/* 8020B3A8 00208308 88 1F 00 90 */ lbz r0, 0x90(r31) +/* 8020B3AC 0020830C 28 00 00 00 */ cmplwi r0, 0 +/* 8020B3B0 00208310 40 82 00 08 */ bne lbl_8020B3B8 +/* 8020B3B4 00208314 38 60 00 01 */ li r3, 1 +lbl_8020B3B8: +/* 8020B3B8 00208318 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8020B3BC 0020831C 40 82 00 14 */ bne lbl_8020B3D0 +/* 8020B3C0 00208320 38 7F 00 68 */ addi r3, r31, 0x68 +/* 8020B3C4 00208324 38 80 00 00 */ li r4, 0 +/* 8020B3C8 00208328 38 A0 00 00 */ li r5, 0 +/* 8020B3CC 0020832C 4B F0 A8 E1 */ bl Touch__10CModelDataCFQ210CModelData11EWhichModeli +lbl_8020B3D0: +/* 8020B3D0 00208330 80 01 01 24 */ lwz r0, 0x124(r1) +/* 8020B3D4 00208334 83 E1 01 1C */ lwz r31, 0x11c(r1) +/* 8020B3D8 00208338 7C 08 03 A6 */ mtlr r0 +/* 8020B3DC 0020833C 38 21 01 20 */ addi r1, r1, 0x120 +/* 8020B3E0 00208340 4E 80 00 20 */ blr + +.global sub_8020b3e4 +sub_8020b3e4: +/* 8020B3E4 00208344 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8020B3E8 00208348 7C 08 02 A6 */ mflr r0 +/* 8020B3EC 0020834C 90 01 00 24 */ stw r0, 0x24(r1) +/* 8020B3F0 00208350 38 61 00 08 */ addi r3, r1, 8 +/* 8020B3F4 00208354 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8020B3F8 00208358 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8020B3FC 0020835C 80 8D A0 80 */ lwz r4, gpGameState@sda21(r13) +/* 8020B400 00208360 4B FC 85 21 */ bl GetPlayerState__10CGameStateCFv +/* 8020B404 00208364 80 81 00 08 */ lwz r4, 8(r1) +/* 8020B408 00208368 38 61 00 08 */ addi r3, r1, 8 +/* 8020B40C 0020836C 83 E4 00 00 */ lwz r31, 0(r4) +/* 8020B410 00208370 4B DF DA FD */ bl sub_80008f0c +/* 8020B414 00208374 83 DF 00 20 */ lwz r30, 0x20(r31) +/* 8020B418 00208378 7F E3 FB 78 */ mr r3, r31 +/* 8020B41C 0020837C 4B E8 60 A9 */ bl GetIsFusionEnabled__12CPlayerStateFv +/* 8020B420 00208380 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8020B424 00208384 41 82 00 48 */ beq lbl_8020B46C +/* 8020B428 00208388 2C 1E 00 02 */ cmpwi r30, 2 +/* 8020B42C 0020838C 41 82 00 2C */ beq lbl_8020B458 +/* 8020B430 00208390 40 80 00 14 */ bge lbl_8020B444 +/* 8020B434 00208394 2C 1E 00 00 */ cmpwi r30, 0 +/* 8020B438 00208398 41 82 00 18 */ beq lbl_8020B450 +/* 8020B43C 0020839C 40 80 00 24 */ bge lbl_8020B460 +/* 8020B440 002083A0 48 00 00 2C */ b lbl_8020B46C +lbl_8020B444: +/* 8020B444 002083A4 2C 1E 00 04 */ cmpwi r30, 4 +/* 8020B448 002083A8 40 80 00 24 */ bge lbl_8020B46C +/* 8020B44C 002083AC 48 00 00 1C */ b lbl_8020B468 +lbl_8020B450: +/* 8020B450 002083B0 3B C0 00 04 */ li r30, 4 +/* 8020B454 002083B4 48 00 00 18 */ b lbl_8020B46C +lbl_8020B458: +/* 8020B458 002083B8 3B C0 00 07 */ li r30, 7 +/* 8020B45C 002083BC 48 00 00 10 */ b lbl_8020B46C +lbl_8020B460: +/* 8020B460 002083C0 3B C0 00 06 */ li r30, 6 +/* 8020B464 002083C4 48 00 00 08 */ b lbl_8020B46C +lbl_8020B468: +/* 8020B468 002083C8 3B C0 00 08 */ li r30, 8 +lbl_8020B46C: +/* 8020B46C 002083CC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8020B470 002083D0 7F C3 F3 78 */ mr r3, r30 +/* 8020B474 002083D4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8020B478 002083D8 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8020B47C 002083DC 7C 08 03 A6 */ mtlr r0 +/* 8020B480 002083E0 38 21 00 20 */ addi r1, r1, 0x20 +/* 8020B484 002083E4 4E 80 00 20 */ blr + +.global DisableTransition__18CWorldTransManagerFv +DisableTransition__18CWorldTransManagerFv: +/* 8020B488 002083E8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8020B48C 002083EC 7C 08 02 A6 */ mflr r0 +/* 8020B490 002083F0 38 80 00 00 */ li r4, 0 +/* 8020B494 002083F4 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020B498 002083F8 38 00 00 00 */ li r0, 0 +/* 8020B49C 002083FC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8020B4A0 00208400 7C 7F 1B 78 */ mr r31, r3 +/* 8020B4A4 00208404 90 03 00 30 */ stw r0, 0x30(r3) +/* 8020B4A8 00208408 38 7F 00 04 */ addi r3, r31, 4 +/* 8020B4AC 0020840C 4B FF E3 25 */ bl sub_802097d0 +/* 8020B4B0 00208410 80 7F 00 08 */ lwz r3, 8(r31) +/* 8020B4B4 00208414 38 80 00 01 */ li r4, 1 +/* 8020B4B8 00208418 48 0B E7 E1 */ bl __dt__15CGuiTextSupportFv +/* 8020B4BC 0020841C 38 60 00 00 */ li r3, 0 +/* 8020B4C0 00208420 90 7F 00 08 */ stw r3, 8(r31) +/* 8020B4C4 00208424 88 1F 00 44 */ lbz r0, 0x44(r31) +/* 8020B4C8 00208428 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 8020B4CC 0020842C 98 1F 00 44 */ stb r0, 0x44(r31) +/* 8020B4D0 00208430 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8020B4D4 00208434 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8020B4D8 00208438 7C 08 03 A6 */ mtlr r0 +/* 8020B4DC 0020843C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8020B4E0 00208440 4E 80 00 20 */ blr + +.global sub_8020b4e4 +sub_8020b4e4: +/* 8020B4E4 00208444 94 21 FE C0 */ stwu r1, -0x140(r1) +/* 8020B4E8 00208448 7C 08 02 A6 */ mflr r0 +/* 8020B4EC 0020844C 90 01 01 44 */ stw r0, 0x144(r1) +/* 8020B4F0 00208450 93 E1 01 3C */ stw r31, 0x13c(r1) +/* 8020B4F4 00208454 7C 7F 1B 78 */ mr r31, r3 +/* 8020B4F8 00208458 38 61 00 EC */ addi r3, r1, 0xec +/* 8020B4FC 0020845C 80 04 00 00 */ lwz r0, 0(r4) +/* 8020B500 00208460 90 1F 00 00 */ stw r0, 0(r31) +/* 8020B504 00208464 80 04 00 04 */ lwz r0, 4(r4) +/* 8020B508 00208468 90 1F 00 04 */ stw r0, 4(r31) +/* 8020B50C 0020846C C0 04 00 08 */ lfs f0, 8(r4) +/* 8020B510 00208470 D0 1F 00 08 */ stfs f0, 8(r31) +/* 8020B514 00208474 C0 04 00 0C */ lfs f0, 0xc(r4) +/* 8020B518 00208478 D0 1F 00 0C */ stfs f0, 0xc(r31) +/* 8020B51C 0020847C C0 04 00 10 */ lfs f0, 0x10(r4) +/* 8020B520 00208480 D0 1F 00 10 */ stfs f0, 0x10(r31) +/* 8020B524 00208484 88 04 00 14 */ lbz r0, 0x14(r4) +/* 8020B528 00208488 98 1F 00 14 */ stb r0, 0x14(r31) +/* 8020B52C 0020848C 80 04 00 18 */ lwz r0, 0x18(r4) +/* 8020B530 00208490 90 1F 00 18 */ stw r0, 0x18(r31) +/* 8020B534 00208494 4B E2 F2 71 */ bl CModelDataNull__10CModelDataFv +/* 8020B538 00208498 38 7F 00 1C */ addi r3, r31, 0x1c +/* 8020B53C 0020849C 38 81 00 EC */ addi r4, r1, 0xec +/* 8020B540 002084A0 4B E0 D8 4D */ bl __ct__10CModelDataFRC10CModelData +/* 8020B544 002084A4 38 61 00 EC */ addi r3, r1, 0xec +/* 8020B548 002084A8 38 80 FF FF */ li r4, -1 +/* 8020B54C 002084AC 4B F0 B5 01 */ bl __dt__10CModelDataFv +/* 8020B550 002084B0 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 8020B554 002084B4 4B E2 F2 51 */ bl CModelDataNull__10CModelDataFv +/* 8020B558 002084B8 38 7F 00 68 */ addi r3, r31, 0x68 +/* 8020B55C 002084BC 38 81 00 A0 */ addi r4, r1, 0xa0 +/* 8020B560 002084C0 4B E0 D8 2D */ bl __ct__10CModelDataFRC10CModelData +/* 8020B564 002084C4 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 8020B568 002084C8 38 80 FF FF */ li r4, -1 +/* 8020B56C 002084CC 4B F0 B4 E1 */ bl __dt__10CModelDataFv +/* 8020B570 002084D0 38 61 00 54 */ addi r3, r1, 0x54 +/* 8020B574 002084D4 4B E2 F2 31 */ bl CModelDataNull__10CModelDataFv +/* 8020B578 002084D8 38 7F 00 B4 */ addi r3, r31, 0xb4 +/* 8020B57C 002084DC 38 81 00 54 */ addi r4, r1, 0x54 +/* 8020B580 002084E0 4B E0 D8 0D */ bl __ct__10CModelDataFRC10CModelData +/* 8020B584 002084E4 38 61 00 54 */ addi r3, r1, 0x54 +/* 8020B588 002084E8 38 80 FF FF */ li r4, -1 +/* 8020B58C 002084EC 4B F0 B4 C1 */ bl __dt__10CModelDataFv +/* 8020B590 002084F0 38 61 00 08 */ addi r3, r1, 8 +/* 8020B594 002084F4 4B E2 F2 11 */ bl CModelDataNull__10CModelDataFv +/* 8020B598 002084F8 38 7F 01 00 */ addi r3, r31, 0x100 +/* 8020B59C 002084FC 38 81 00 08 */ addi r4, r1, 8 +/* 8020B5A0 00208500 4B E0 D7 ED */ bl __ct__10CModelDataFRC10CModelData +/* 8020B5A4 00208504 38 61 00 08 */ addi r3, r1, 8 +/* 8020B5A8 00208508 38 80 FF FF */ li r4, -1 +/* 8020B5AC 0020850C 4B F0 B4 A1 */ bl __dt__10CModelDataFv +/* 8020B5B0 00208510 38 00 00 00 */ li r0, 0 +/* 8020B5B4 00208514 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 8020B5B8 00208518 98 1F 01 54 */ stb r0, 0x154(r31) +/* 8020B5BC 0020851C 38 83 66 70 */ addi r4, r3, skIdentity4f@l +/* 8020B5C0 00208520 38 7F 01 70 */ addi r3, r31, 0x170 +/* 8020B5C4 00208524 98 1F 01 60 */ stb r0, 0x160(r31) +/* 8020B5C8 00208528 98 1F 01 6C */ stb r0, 0x16c(r31) +/* 8020B5CC 0020852C 48 10 75 A9 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8020B5D0 00208530 38 00 00 00 */ li r0, 0 +/* 8020B5D4 00208534 3C 60 80 3D */ lis r3, lbl_803D2768@ha +/* 8020B5D8 00208538 90 1F 01 A4 */ stw r0, 0x1a4(r31) +/* 8020B5DC 0020853C 38 83 27 68 */ addi r4, r3, lbl_803D2768@l +/* 8020B5E0 00208540 3C 60 00 09 */ lis r3, 0x0008C000@ha +/* 8020B5E4 00208544 38 A0 00 00 */ li r5, 0 +/* 8020B5E8 00208548 90 1F 01 A8 */ stw r0, 0x1a8(r31) +/* 8020B5EC 0020854C 38 63 C0 00 */ addi r3, r3, 0x0008C000@l +/* 8020B5F0 00208550 90 1F 01 AC */ stw r0, 0x1ac(r31) +/* 8020B5F4 00208554 48 10 A2 25 */ bl __nwa__FUlPCcPCc +/* 8020B5F8 00208558 C0 22 B1 28 */ lfs f1, lbl_805ACE48@sda21(r2) +/* 8020B5FC 0020855C 90 7F 01 B0 */ stw r3, 0x1b0(r31) +/* 8020B600 00208560 38 7F 01 B4 */ addi r3, r31, 0x1b4 +/* 8020B604 00208564 FC 40 08 90 */ fmr f2, f1 +/* 8020B608 00208568 48 10 8B F9 */ bl __ct__9CVector2fFff +/* 8020B60C 0020856C C0 22 B1 28 */ lfs f1, lbl_805ACE48@sda21(r2) +/* 8020B610 00208570 38 7F 01 BC */ addi r3, r31, 0x1bc +/* 8020B614 00208574 FC 40 08 90 */ fmr f2, f1 +/* 8020B618 00208578 48 10 8B E9 */ bl __ct__9CVector2fFff +/* 8020B61C 0020857C C0 22 B1 28 */ lfs f1, lbl_805ACE48@sda21(r2) +/* 8020B620 00208580 38 00 00 00 */ li r0, 0 +/* 8020B624 00208584 C0 02 B1 A4 */ lfs f0, lbl_805ACEC4@sda21(r2) +/* 8020B628 00208588 38 7F 01 A0 */ addi r3, r31, 0x1a0 +/* 8020B62C 0020858C D0 3F 01 C4 */ stfs f1, 0x1c4(r31) +/* 8020B630 00208590 38 80 00 08 */ li r4, 8 +/* 8020B634 00208594 D0 3F 01 C8 */ stfs f1, 0x1c8(r31) +/* 8020B638 00208598 D0 3F 01 CC */ stfs f1, 0x1cc(r31) +/* 8020B63C 0020859C D0 1F 01 D0 */ stfs f0, 0x1d0(r31) +/* 8020B640 002085A0 D0 1F 01 D4 */ stfs f0, 0x1d4(r31) +/* 8020B644 002085A4 D0 1F 01 D8 */ stfs f0, 0x1d8(r31) +/* 8020B648 002085A8 98 1F 01 DC */ stb r0, 0x1dc(r31) +/* 8020B64C 002085AC 4B E4 4B B9 */ bl sub_80050204 +/* 8020B650 002085B0 80 01 01 44 */ lwz r0, 0x144(r1) +/* 8020B654 002085B4 7F E3 FB 78 */ mr r3, r31 +/* 8020B658 002085B8 83 E1 01 3C */ lwz r31, 0x13c(r1) +/* 8020B65C 002085BC 7C 08 03 A6 */ mtlr r0 +/* 8020B660 002085C0 38 21 01 40 */ addi r1, r1, 0x140 +/* 8020B664 002085C4 4E 80 00 20 */ blr + +.global sub_8020b668 +sub_8020b668: +/* 8020B668 002085C8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8020B66C 002085CC 7C 08 02 A6 */ mflr r0 +/* 8020B670 002085D0 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020B674 002085D4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8020B678 002085D8 7C 9F 23 78 */ mr r31, r4 +/* 8020B67C 002085DC 93 C1 00 08 */ stw r30, 8(r1) +/* 8020B680 002085E0 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8020B684 002085E4 41 82 00 60 */ beq lbl_8020B6E4 +/* 8020B688 002085E8 34 1E 00 0C */ addic. r0, r30, 0xc +/* 8020B68C 002085EC 41 82 00 28 */ beq lbl_8020B6B4 +/* 8020B690 002085F0 88 1E 00 14 */ lbz r0, 0x14(r30) +/* 8020B694 002085F4 28 00 00 00 */ cmplwi r0, 0 +/* 8020B698 002085F8 41 82 00 14 */ beq lbl_8020B6AC +/* 8020B69C 002085FC 34 7E 00 0C */ addic. r3, r30, 0xc +/* 8020B6A0 00208600 41 82 00 0C */ beq lbl_8020B6AC +/* 8020B6A4 00208604 38 80 00 00 */ li r4, 0 +/* 8020B6A8 00208608 48 13 57 99 */ bl __dt__6CTokenFv +lbl_8020B6AC: +/* 8020B6AC 0020860C 38 00 00 00 */ li r0, 0 +/* 8020B6B0 00208610 98 1E 00 14 */ stb r0, 0x14(r30) +lbl_8020B6B4: +/* 8020B6B4 00208614 34 1E 00 08 */ addic. r0, r30, 8 +/* 8020B6B8 00208618 41 82 00 10 */ beq lbl_8020B6C8 +/* 8020B6BC 0020861C 80 7E 00 08 */ lwz r3, 8(r30) +/* 8020B6C0 00208620 38 80 00 01 */ li r4, 1 +/* 8020B6C4 00208624 48 0B E5 D5 */ bl __dt__15CGuiTextSupportFv +lbl_8020B6C8: +/* 8020B6C8 00208628 38 7E 00 04 */ addi r3, r30, 4 +/* 8020B6CC 0020862C 38 80 FF FF */ li r4, -1 +/* 8020B6D0 00208630 48 00 00 31 */ bl __dt__18CWorldTransManagerFv +/* 8020B6D4 00208634 7F E0 07 35 */ extsh. r0, r31 +/* 8020B6D8 00208638 40 81 00 0C */ ble lbl_8020B6E4 +/* 8020B6DC 0020863C 7F C3 F3 78 */ mr r3, r30 +/* 8020B6E0 00208640 48 10 A2 51 */ bl Free__7CMemoryFPCv +lbl_8020B6E4: +/* 8020B6E4 00208644 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8020B6E8 00208648 7F C3 F3 78 */ mr r3, r30 +/* 8020B6EC 0020864C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8020B6F0 00208650 83 C1 00 08 */ lwz r30, 8(r1) +/* 8020B6F4 00208654 7C 08 03 A6 */ mtlr r0 +/* 8020B6F8 00208658 38 21 00 10 */ addi r1, r1, 0x10 +/* 8020B6FC 0020865C 4E 80 00 20 */ blr + +.global __dt__18CWorldTransManagerFv +__dt__18CWorldTransManagerFv: +/* 8020B700 00208660 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8020B704 00208664 7C 08 02 A6 */ mflr r0 +/* 8020B708 00208668 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020B70C 0020866C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8020B710 00208670 7C 9F 23 78 */ mr r31, r4 +/* 8020B714 00208674 93 C1 00 08 */ stw r30, 8(r1) +/* 8020B718 00208678 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8020B71C 0020867C 41 82 00 20 */ beq lbl_8020B73C +/* 8020B720 00208680 80 7E 00 00 */ lwz r3, 0(r30) +/* 8020B724 00208684 38 80 00 01 */ li r4, 1 +/* 8020B728 00208688 4B FF E0 F1 */ bl __dt__Q218CWorldTransManager11SModelDatasFv +/* 8020B72C 0020868C 7F E0 07 35 */ extsh. r0, r31 +/* 8020B730 00208690 40 81 00 0C */ ble lbl_8020B73C +/* 8020B734 00208694 7F C3 F3 78 */ mr r3, r30 +/* 8020B738 00208698 48 10 A1 F9 */ bl Free__7CMemoryFPCv +lbl_8020B73C: +/* 8020B73C 0020869C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8020B740 002086A0 7F C3 F3 78 */ mr r3, r30 +/* 8020B744 002086A4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8020B748 002086A8 83 C1 00 08 */ lwz r30, 8(r1) +/* 8020B74C 002086AC 7C 08 03 A6 */ mtlr r0 +/* 8020B750 002086B0 38 21 00 10 */ addi r1, r1, 0x10 +/* 8020B754 002086B4 4E 80 00 20 */ blr + +.global __ct__18CWorldTransManagerFv +__ct__18CWorldTransManagerFv: +/* 8020B758 002086B8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8020B75C 002086BC 7C 08 02 A6 */ mflr r0 +/* 8020B760 002086C0 C0 02 B1 28 */ lfs f0, lbl_805ACE48@sda21(r2) +/* 8020B764 002086C4 38 80 00 63 */ li r4, 0x63 +/* 8020B768 002086C8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020B76C 002086CC 38 00 00 00 */ li r0, 0 +/* 8020B770 002086D0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8020B774 002086D4 7C 7F 1B 78 */ mr r31, r3 +/* 8020B778 002086D8 D0 03 00 00 */ stfs f0, 0(r3) +/* 8020B77C 002086DC 38 7F 00 20 */ addi r3, r31, 0x20 +/* 8020B780 002086E0 90 1F 00 04 */ stw r0, 4(r31) +/* 8020B784 002086E4 90 1F 00 08 */ stw r0, 8(r31) +/* 8020B788 002086E8 98 1F 00 14 */ stb r0, 0x14(r31) +/* 8020B78C 002086EC 48 10 6E 61 */ bl __ct__9CRandom16FUi +/* 8020B790 002086F0 38 00 04 A5 */ li r0, 0x4a5 +/* 8020B794 002086F4 38 C0 00 00 */ li r6, 0 +/* 8020B798 002086F8 B0 1F 00 24 */ sth r0, 0x24(r31) +/* 8020B79C 002086FC 38 A0 00 7F */ li r5, 0x7f +/* 8020B7A0 00208700 38 00 00 40 */ li r0, 0x40 +/* 8020B7A4 00208704 C0 02 B1 28 */ lfs f0, lbl_805ACE48@sda21(r2) +/* 8020B7A8 00208708 90 DF 00 28 */ stw r6, 0x28(r31) +/* 8020B7AC 0020870C 38 80 00 01 */ li r4, 1 +/* 8020B7B0 00208710 7F E3 FB 78 */ mr r3, r31 +/* 8020B7B4 00208714 98 BF 00 2C */ stb r5, 0x2c(r31) +/* 8020B7B8 00208718 98 1F 00 2D */ stb r0, 0x2d(r31) +/* 8020B7BC 0020871C 90 DF 00 30 */ stw r6, 0x30(r31) +/* 8020B7C0 00208720 D0 1F 00 38 */ stfs f0, 0x38(r31) +/* 8020B7C4 00208724 88 1F 00 44 */ lbz r0, 0x44(r31) +/* 8020B7C8 00208728 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 8020B7CC 0020872C 98 1F 00 44 */ stb r0, 0x44(r31) +/* 8020B7D0 00208730 88 1F 00 44 */ lbz r0, 0x44(r31) +/* 8020B7D4 00208734 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19 +/* 8020B7D8 00208738 98 1F 00 44 */ stb r0, 0x44(r31) +/* 8020B7DC 0020873C 88 1F 00 44 */ lbz r0, 0x44(r31) +/* 8020B7E0 00208740 50 C0 2E B4 */ rlwimi r0, r6, 5, 0x1a, 0x1a +/* 8020B7E4 00208744 98 1F 00 44 */ stb r0, 0x44(r31) +/* 8020B7E8 00208748 88 1F 00 44 */ lbz r0, 0x44(r31) +/* 8020B7EC 0020874C 50 C0 26 F6 */ rlwimi r0, r6, 4, 0x1b, 0x1b +/* 8020B7F0 00208750 98 1F 00 44 */ stb r0, 0x44(r31) +/* 8020B7F4 00208754 88 1F 00 44 */ lbz r0, 0x44(r31) +/* 8020B7F8 00208758 50 C0 1F 38 */ rlwimi r0, r6, 3, 0x1c, 0x1c +/* 8020B7FC 0020875C 98 1F 00 44 */ stb r0, 0x44(r31) +/* 8020B800 00208760 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8020B804 00208764 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8020B808 00208768 7C 08 03 A6 */ mtlr r0 +/* 8020B80C 0020876C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8020B810 00208770 4E 80 00 20 */ blr + +.global sub_8020b814 +sub_8020b814: +/* 8020B814 00208774 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8020B818 00208778 7C 08 02 A6 */ mflr r0 +/* 8020B81C 0020877C 90 01 00 24 */ stw r0, 0x24(r1) +/* 8020B820 00208780 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8020B824 00208784 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8020B828 00208788 7C 9E 23 78 */ mr r30, r4 +/* 8020B82C 0020878C 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8020B830 00208790 7C 7D 1B 78 */ mr r29, r3 +/* 8020B834 00208794 80 03 00 04 */ lwz r0, 4(r3) +/* 8020B838 00208798 83 E4 00 04 */ lwz r31, 4(r4) +/* 8020B83C 0020879C 7C 1E 00 40 */ cmplw r30, r0 +/* 8020B840 002087A0 40 82 00 08 */ bne lbl_8020B848 +/* 8020B844 002087A4 93 FD 00 04 */ stw r31, 4(r29) +lbl_8020B848: +/* 8020B848 002087A8 80 1E 00 04 */ lwz r0, 4(r30) +/* 8020B84C 002087AC 38 7E 00 08 */ addi r3, r30, 8 +/* 8020B850 002087B0 80 BE 00 00 */ lwz r5, 0(r30) +/* 8020B854 002087B4 38 80 FF FF */ li r4, -1 +/* 8020B858 002087B8 90 05 00 04 */ stw r0, 4(r5) +/* 8020B85C 002087BC 80 1E 00 00 */ lwz r0, 0(r30) +/* 8020B860 002087C0 80 BE 00 04 */ lwz r5, 4(r30) +/* 8020B864 002087C4 90 05 00 00 */ stw r0, 0(r5) +/* 8020B868 002087C8 48 14 D0 DD */ bl __dt__10CARAMTokenFv +/* 8020B86C 002087CC 28 1E 00 00 */ cmplwi r30, 0 +/* 8020B870 002087D0 41 82 00 0C */ beq lbl_8020B87C +/* 8020B874 002087D4 7F C3 F3 78 */ mr r3, r30 +/* 8020B878 002087D8 48 10 A0 B9 */ bl Free__7CMemoryFPCv +lbl_8020B87C: +/* 8020B87C 002087DC 80 9D 00 14 */ lwz r4, 0x14(r29) +/* 8020B880 002087E0 7F E3 FB 78 */ mr r3, r31 +/* 8020B884 002087E4 38 04 FF FF */ addi r0, r4, -1 +/* 8020B888 002087E8 90 1D 00 14 */ stw r0, 0x14(r29) +/* 8020B88C 002087EC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8020B890 002087F0 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8020B894 002087F4 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8020B898 002087F8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8020B89C 002087FC 7C 08 03 A6 */ mtlr r0 +/* 8020B8A0 00208800 38 21 00 20 */ addi r1, r1, 0x20 +/* 8020B8A4 00208804 4E 80 00 20 */ blr + +.global sub_8020b8a8 +sub_8020b8a8: +/* 8020B8A8 00208808 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8020B8AC 0020880C 7C 08 02 A6 */ mflr r0 +/* 8020B8B0 00208810 90 01 00 24 */ stw r0, 0x24(r1) +/* 8020B8B4 00208814 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8020B8B8 00208818 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8020B8BC 0020881C 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8020B8C0 00208820 7C 9D 23 78 */ mr r29, r4 +/* 8020B8C4 00208824 93 81 00 10 */ stw r28, 0x10(r1) +/* 8020B8C8 00208828 7C 7C 1B 79 */ or. r28, r3, r3 +/* 8020B8CC 0020882C 41 82 00 4C */ beq lbl_8020B918 +/* 8020B8D0 00208830 83 FC 00 04 */ lwz r31, 4(r28) +/* 8020B8D4 00208834 48 00 00 28 */ b lbl_8020B8FC +lbl_8020B8D8: +/* 8020B8D8 00208838 7F FE FB 78 */ mr r30, r31 +/* 8020B8DC 0020883C 83 FF 00 04 */ lwz r31, 4(r31) +/* 8020B8E0 00208840 38 7E 00 08 */ addi r3, r30, 8 +/* 8020B8E4 00208844 38 80 FF FF */ li r4, -1 +/* 8020B8E8 00208848 48 14 D0 5D */ bl __dt__10CARAMTokenFv +/* 8020B8EC 0020884C 28 1E 00 00 */ cmplwi r30, 0 +/* 8020B8F0 00208850 41 82 00 0C */ beq lbl_8020B8FC +/* 8020B8F4 00208854 7F C3 F3 78 */ mr r3, r30 +/* 8020B8F8 00208858 48 10 A0 39 */ bl Free__7CMemoryFPCv +lbl_8020B8FC: +/* 8020B8FC 0020885C 80 1C 00 08 */ lwz r0, 8(r28) +/* 8020B900 00208860 7C 1F 00 40 */ cmplw r31, r0 +/* 8020B904 00208864 40 82 FF D4 */ bne lbl_8020B8D8 +/* 8020B908 00208868 7F A0 07 35 */ extsh. r0, r29 +/* 8020B90C 0020886C 40 81 00 0C */ ble lbl_8020B918 +/* 8020B910 00208870 7F 83 E3 78 */ mr r3, r28 +/* 8020B914 00208874 48 10 A0 1D */ bl Free__7CMemoryFPCv +lbl_8020B918: +/* 8020B918 00208878 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8020B91C 0020887C 7F 83 E3 78 */ mr r3, r28 +/* 8020B920 00208880 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8020B924 00208884 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8020B928 00208888 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8020B92C 0020888C 83 81 00 10 */ lwz r28, 0x10(r1) +/* 8020B930 00208890 7C 08 03 A6 */ mtlr r0 +/* 8020B934 00208894 38 21 00 20 */ addi r1, r1, 0x20 +/* 8020B938 00208898 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Enemies/CActorContraption.s b/asm/Kyoto_CWD/Enemies/CActorContraption.s new file mode 100644 index 00000000..2574c4bc --- /dev/null +++ b/asm/Kyoto_CWD/Enemies/CActorContraption.s @@ -0,0 +1,637 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__17CActorContraption +__dt__17CActorContraption: +/* 8023F330 0023C290 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8023F334 0023C294 7C 08 02 A6 */ mflr r0 +/* 8023F338 0023C298 90 01 00 14 */ stw r0, 0x14(r1) +/* 8023F33C 0023C29C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8023F340 0023C2A0 7C 9F 23 78 */ mr r31, r4 +/* 8023F344 0023C2A4 93 C1 00 08 */ stw r30, 8(r1) +/* 8023F348 0023C2A8 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8023F34C 0023C2AC 41 82 00 4C */ beq lbl_8023F398 +/* 8023F350 0023C2B0 3C 60 80 3F */ lis r3, lbl_803E85E8@ha +/* 8023F354 0023C2B4 34 1E 03 00 */ addic. r0, r30, 0x300 +/* 8023F358 0023C2B8 38 03 85 E8 */ addi r0, r3, lbl_803E85E8@l +/* 8023F35C 0023C2BC 90 1E 00 00 */ stw r0, 0(r30) +/* 8023F360 0023C2C0 41 82 00 10 */ beq lbl_8023F370 +/* 8023F364 0023C2C4 38 7E 03 00 */ addi r3, r30, 0x300 +/* 8023F368 0023C2C8 38 80 00 00 */ li r4, 0 +/* 8023F36C 0023C2CC 48 10 1A D5 */ bl __dt__6CTokenFv +lbl_8023F370: +/* 8023F370 0023C2D0 38 7E 02 E8 */ addi r3, r30, 0x2e8 +/* 8023F374 0023C2D4 38 80 FF FF */ li r4, -1 +/* 8023F378 0023C2D8 48 00 07 E9 */ bl sub_8023fb60 +/* 8023F37C 0023C2DC 7F C3 F3 78 */ mr r3, r30 +/* 8023F380 0023C2E0 38 80 00 00 */ li r4, 0 +/* 8023F384 0023C2E4 4B E3 64 C9 */ bl __dt__12CScriptActorFv +/* 8023F388 0023C2E8 7F E0 07 35 */ extsh. r0, r31 +/* 8023F38C 0023C2EC 40 81 00 0C */ ble lbl_8023F398 +/* 8023F390 0023C2F0 7F C3 F3 78 */ mr r3, r30 +/* 8023F394 0023C2F4 48 0D 65 9D */ bl Free__7CMemoryFPCv +lbl_8023F398: +/* 8023F398 0023C2F8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8023F39C 0023C2FC 7F C3 F3 78 */ mr r3, r30 +/* 8023F3A0 0023C300 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8023F3A4 0023C304 83 C1 00 08 */ lwz r30, 8(r1) +/* 8023F3A8 0023C308 7C 08 03 A6 */ mtlr r0 +/* 8023F3AC 0023C30C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8023F3B0 0023C310 4E 80 00 20 */ blr + +.global Accept__17CActorContraptionFR8IVisitor +Accept__17CActorContraptionFR8IVisitor: +/* 8023F3B4 0023C314 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8023F3B8 0023C318 7C 08 02 A6 */ mflr r0 +/* 8023F3BC 0023C31C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8023F3C0 0023C320 7C 60 1B 78 */ mr r0, r3 +/* 8023F3C4 0023C324 7C 83 23 78 */ mr r3, r4 +/* 8023F3C8 0023C328 81 84 00 00 */ lwz r12, 0(r4) +/* 8023F3CC 0023C32C 7C 04 03 78 */ mr r4, r0 +/* 8023F3D0 0023C330 81 8C 00 5C */ lwz r12, 0x5c(r12) +/* 8023F3D4 0023C334 7D 89 03 A6 */ mtctr r12 +/* 8023F3D8 0023C338 4E 80 04 21 */ bctrl +/* 8023F3DC 0023C33C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8023F3E0 0023C340 7C 08 03 A6 */ mtlr r0 +/* 8023F3E4 0023C344 38 21 00 10 */ addi r1, r1, 0x10 +/* 8023F3E8 0023C348 4E 80 00 20 */ blr + +.global DoUserAnimEvent__17CActorContraptionFR13CStateManagerRC13CInt32POINode14EUserEventType +DoUserAnimEvent__17CActorContraptionFR13CStateManagerRC13CInt32POINode14EUserEventType: +/* 8023F3EC 0023C34C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8023F3F0 0023C350 7C 08 02 A6 */ mflr r0 +/* 8023F3F4 0023C354 2C 06 00 09 */ cmpwi r6, 9 +/* 8023F3F8 0023C358 90 01 00 24 */ stw r0, 0x24(r1) +/* 8023F3FC 0023C35C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8023F400 0023C360 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8023F404 0023C364 7C BE 2B 78 */ mr r30, r5 +/* 8023F408 0023C368 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8023F40C 0023C36C 7C 9D 23 78 */ mr r29, r4 +/* 8023F410 0023C370 93 81 00 10 */ stw r28, 0x10(r1) +/* 8023F414 0023C374 7C 7C 1B 78 */ mr r28, r3 +/* 8023F418 0023C378 41 82 00 48 */ beq lbl_8023F460 +/* 8023F41C 0023C37C 40 80 00 A8 */ bge lbl_8023F4C4 +/* 8023F420 0023C380 2C 06 00 08 */ cmpwi r6, 8 +/* 8023F424 0023C384 40 80 00 08 */ bge lbl_8023F42C +/* 8023F428 0023C388 48 00 00 9C */ b lbl_8023F4C4 +lbl_8023F42C: +/* 8023F42C 0023C38C 7F A5 EB 78 */ mr r5, r29 +/* 8023F430 0023C390 38 9E 00 3C */ addi r4, r30, 0x3c +/* 8023F434 0023C394 48 00 03 15 */ bl sub_8023f748 +/* 8023F438 0023C398 28 03 00 00 */ cmplwi r3, 0 +/* 8023F43C 0023C39C 41 82 00 98 */ beq lbl_8023F4D4 +/* 8023F440 0023C3A0 88 03 04 00 */ lbz r0, 0x400(r3) +/* 8023F444 0023C3A4 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8023F448 0023C3A8 40 82 00 8C */ bne lbl_8023F4D4 +/* 8023F44C 0023C3AC 7F A5 EB 78 */ mr r5, r29 +/* 8023F450 0023C3B0 38 9C 00 34 */ addi r4, r28, 0x34 +/* 8023F454 0023C3B4 38 C0 00 00 */ li r6, 0 +/* 8023F458 0023C3B8 4B F5 8E 95 */ bl Fire__13CFlameThrowerFRC12CTransform4fR13CStateManagerb +/* 8023F45C 0023C3BC 48 00 00 78 */ b lbl_8023F4D4 +lbl_8023F460: +/* 8023F460 0023C3C0 83 FC 02 EC */ lwz r31, 0x2ec(r28) +/* 8023F464 0023C3C4 48 00 00 50 */ b lbl_8023F4B4 +lbl_8023F468: +/* 8023F468 0023C3C8 38 7F 00 0C */ addi r3, r31, 0xc +/* 8023F46C 0023C3CC 38 9E 00 3C */ addi r4, r30, 0x3c +/* 8023F470 0023C3D0 4B E1 31 71 */ 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" +/* 8023F474 0023C3D4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8023F478 0023C3D8 41 82 00 38 */ beq lbl_8023F4B0 +/* 8023F47C 0023C3DC A0 1F 00 08 */ lhz r0, 8(r31) +/* 8023F480 0023C3E0 7F A3 EB 78 */ mr r3, r29 +/* 8023F484 0023C3E4 38 81 00 08 */ addi r4, r1, 8 +/* 8023F488 0023C3E8 B0 01 00 08 */ sth r0, 8(r1) +/* 8023F48C 0023C3EC 4B E0 D0 E9 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8023F490 0023C3F0 28 03 00 00 */ cmplwi r3, 0 +/* 8023F494 0023C3F4 41 82 00 1C */ beq lbl_8023F4B0 +/* 8023F498 0023C3F8 88 03 04 00 */ lbz r0, 0x400(r3) +/* 8023F49C 0023C3FC 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8023F4A0 0023C400 41 82 00 10 */ beq lbl_8023F4B0 +/* 8023F4A4 0023C404 7F A4 EB 78 */ mr r4, r29 +/* 8023F4A8 0023C408 38 A0 00 00 */ li r5, 0 +/* 8023F4AC 0023C40C 4B F5 8D 15 */ bl Reset__13CFlameThrowerFR13CStateManagerb +lbl_8023F4B0: +/* 8023F4B0 0023C410 83 FF 00 04 */ lwz r31, 4(r31) +lbl_8023F4B4: +/* 8023F4B4 0023C414 80 1C 02 F0 */ lwz r0, 0x2f0(r28) +/* 8023F4B8 0023C418 7C 1F 00 40 */ cmplw r31, r0 +/* 8023F4BC 0023C41C 40 82 FF AC */ bne lbl_8023F468 +/* 8023F4C0 0023C420 48 00 00 14 */ b lbl_8023F4D4 +lbl_8023F4C4: +/* 8023F4C4 0023C424 7F 83 E3 78 */ mr r3, r28 +/* 8023F4C8 0023C428 7F A4 EB 78 */ mr r4, r29 +/* 8023F4CC 0023C42C 7F C5 F3 78 */ mr r5, r30 +/* 8023F4D0 0023C430 4B E1 5D 4D */ bl DoUserAnimEvent__6CActorFR13CStateManagerRC13CInt32POINode14EUserEventType +lbl_8023F4D4: +/* 8023F4D4 0023C434 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8023F4D8 0023C438 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8023F4DC 0023C43C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8023F4E0 0023C440 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8023F4E4 0023C444 83 81 00 10 */ lwz r28, 0x10(r1) +/* 8023F4E8 0023C448 7C 08 03 A6 */ mtlr r0 +/* 8023F4EC 0023C44C 38 21 00 20 */ addi r1, r1, 0x20 +/* 8023F4F0 0023C450 4E 80 00 20 */ blr + +.global AcceptScriptMsg__17CActorContraptionF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__17CActorContraptionF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 8023F4F4 0023C454 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8023F4F8 0023C458 7C 08 02 A6 */ mflr r0 +/* 8023F4FC 0023C45C 90 01 00 34 */ stw r0, 0x34(r1) +/* 8023F500 0023C460 BF 41 00 18 */ stmw r26, 0x18(r1) +/* 8023F504 0023C464 7C 9A 23 78 */ mr r26, r4 +/* 8023F508 0023C468 2C 1A 00 21 */ cmpwi r26, 0x21 +/* 8023F50C 0023C46C 7C 7E 1B 78 */ mr r30, r3 +/* 8023F510 0023C470 7C BB 2B 78 */ mr r27, r5 +/* 8023F514 0023C474 7C DF 33 78 */ mr r31, r6 +/* 8023F518 0023C478 88 03 00 30 */ lbz r0, 0x30(r3) +/* 8023F51C 0023C47C 54 1D CF FE */ rlwinm r29, r0, 0x19, 0x1f, 0x1f +/* 8023F520 0023C480 41 82 00 20 */ beq lbl_8023F540 +/* 8023F524 0023C484 40 80 00 10 */ bge lbl_8023F534 +/* 8023F528 0023C488 2C 1A 00 0D */ cmpwi r26, 0xd +/* 8023F52C 0023C48C 41 82 00 60 */ beq lbl_8023F58C +/* 8023F530 0023C490 48 00 00 A8 */ b lbl_8023F5D8 +lbl_8023F534: +/* 8023F534 0023C494 2C 1A 00 23 */ cmpwi r26, 0x23 +/* 8023F538 0023C498 40 80 00 A0 */ bge lbl_8023F5D8 +/* 8023F53C 0023C49C 48 00 00 14 */ b lbl_8023F550 +lbl_8023F540: +/* 8023F540 0023C4A0 7F E5 FB 78 */ mr r5, r31 +/* 8023F544 0023C4A4 38 80 00 1B */ li r4, 0x1b +/* 8023F548 0023C4A8 4B E1 4E 09 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 8023F54C 0023C4AC 48 00 00 8C */ b lbl_8023F5D8 +lbl_8023F550: +/* 8023F550 0023C4B0 83 9E 02 EC */ lwz r28, 0x2ec(r30) +/* 8023F554 0023C4B4 48 00 00 28 */ b lbl_8023F57C +lbl_8023F558: +/* 8023F558 0023C4B8 A0 1C 00 08 */ lhz r0, 8(r28) +/* 8023F55C 0023C4BC 7F E3 FB 78 */ mr r3, r31 +/* 8023F560 0023C4C0 38 81 00 14 */ addi r4, r1, 0x14 +/* 8023F564 0023C4C4 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8023F568 0023C4C8 4B E0 CD 05 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +/* 8023F56C 0023C4CC 7F 84 E3 78 */ mr r4, r28 +/* 8023F570 0023C4D0 38 7E 02 E8 */ addi r3, r30, 0x2e8 +/* 8023F574 0023C4D4 48 00 05 4D */ bl sub_8023fac0 +/* 8023F578 0023C4D8 7C 7C 1B 78 */ mr r28, r3 +lbl_8023F57C: +/* 8023F57C 0023C4DC 80 1E 02 F0 */ lwz r0, 0x2f0(r30) +/* 8023F580 0023C4E0 7C 1C 00 40 */ cmplw r28, r0 +/* 8023F584 0023C4E4 40 82 FF D4 */ bne lbl_8023F558 +/* 8023F588 0023C4E8 48 00 00 50 */ b lbl_8023F5D8 +lbl_8023F58C: +/* 8023F58C 0023C4EC 83 9E 02 EC */ lwz r28, 0x2ec(r30) +/* 8023F590 0023C4F0 48 00 00 3C */ b lbl_8023F5CC +lbl_8023F594: +/* 8023F594 0023C4F4 A0 1C 00 08 */ lhz r0, 8(r28) +/* 8023F598 0023C4F8 7F E3 FB 78 */ mr r3, r31 +/* 8023F59C 0023C4FC 38 81 00 10 */ addi r4, r1, 0x10 +/* 8023F5A0 0023C500 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8023F5A4 0023C504 4B E0 CF D1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8023F5A8 0023C508 28 03 00 00 */ cmplwi r3, 0 +/* 8023F5AC 0023C50C 41 82 00 1C */ beq lbl_8023F5C8 +/* 8023F5B0 0023C510 88 03 04 00 */ lbz r0, 0x400(r3) +/* 8023F5B4 0023C514 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8023F5B8 0023C518 41 82 00 10 */ beq lbl_8023F5C8 +/* 8023F5BC 0023C51C 7F E4 FB 78 */ mr r4, r31 +/* 8023F5C0 0023C520 38 A0 00 00 */ li r5, 0 +/* 8023F5C4 0023C524 4B F5 8B FD */ bl Reset__13CFlameThrowerFR13CStateManagerb +lbl_8023F5C8: +/* 8023F5C8 0023C528 83 9C 00 04 */ lwz r28, 4(r28) +lbl_8023F5CC: +/* 8023F5CC 0023C52C 80 1E 02 F0 */ lwz r0, 0x2f0(r30) +/* 8023F5D0 0023C530 7C 1C 00 40 */ cmplw r28, r0 +/* 8023F5D4 0023C534 40 82 FF C0 */ bne lbl_8023F594 +lbl_8023F5D8: +/* 8023F5D8 0023C538 A0 1B 00 00 */ lhz r0, 0(r27) +/* 8023F5DC 0023C53C 7F C3 F3 78 */ mr r3, r30 +/* 8023F5E0 0023C540 7F 44 D3 78 */ mr r4, r26 +/* 8023F5E4 0023C544 7F E6 FB 78 */ mr r6, r31 +/* 8023F5E8 0023C548 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8023F5EC 0023C54C 38 A1 00 0C */ addi r5, r1, 0xc +/* 8023F5F0 0023C550 4B E3 5D 11 */ bl AcceptScriptMsg__12CScriptActorF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 8023F5F4 0023C554 88 1E 00 30 */ lbz r0, 0x30(r30) +/* 8023F5F8 0023C558 54 00 CF FE */ rlwinm r0, r0, 0x19, 0x1f, 0x1f +/* 8023F5FC 0023C55C 7C 1D 00 40 */ cmplw r29, r0 +/* 8023F600 0023C560 41 82 00 60 */ beq lbl_8023F660 +/* 8023F604 0023C564 28 00 00 00 */ cmplwi r0, 0 +/* 8023F608 0023C568 40 82 00 58 */ bne lbl_8023F660 +/* 8023F60C 0023C56C 83 9E 02 EC */ lwz r28, 0x2ec(r30) +/* 8023F610 0023C570 48 00 00 3C */ b lbl_8023F64C +lbl_8023F614: +/* 8023F614 0023C574 A0 1C 00 08 */ lhz r0, 8(r28) +/* 8023F618 0023C578 7F E3 FB 78 */ mr r3, r31 +/* 8023F61C 0023C57C 38 81 00 08 */ addi r4, r1, 8 +/* 8023F620 0023C580 B0 01 00 08 */ sth r0, 8(r1) +/* 8023F624 0023C584 4B E0 CF 51 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8023F628 0023C588 28 03 00 00 */ cmplwi r3, 0 +/* 8023F62C 0023C58C 41 82 00 1C */ beq lbl_8023F648 +/* 8023F630 0023C590 88 03 04 00 */ lbz r0, 0x400(r3) +/* 8023F634 0023C594 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8023F638 0023C598 41 82 00 10 */ beq lbl_8023F648 +/* 8023F63C 0023C59C 7F E4 FB 78 */ mr r4, r31 +/* 8023F640 0023C5A0 38 A0 00 00 */ li r5, 0 +/* 8023F644 0023C5A4 4B F5 8B 7D */ bl Reset__13CFlameThrowerFR13CStateManagerb +lbl_8023F648: +/* 8023F648 0023C5A8 83 9C 00 04 */ lwz r28, 4(r28) +lbl_8023F64C: +/* 8023F64C 0023C5AC 80 1E 02 F0 */ lwz r0, 0x2f0(r30) +/* 8023F650 0023C5B0 7C 1C 00 40 */ cmplw r28, r0 +/* 8023F654 0023C5B4 40 82 FF C0 */ bne lbl_8023F614 +/* 8023F658 0023C5B8 7F C3 F3 78 */ mr r3, r30 +/* 8023F65C 0023C5BC 4B E1 5B E9 */ bl RemoveEmitter__6CActorFv +lbl_8023F660: +/* 8023F660 0023C5C0 BB 41 00 18 */ lmw r26, 0x18(r1) +/* 8023F664 0023C5C4 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8023F668 0023C5C8 7C 08 03 A6 */ mtlr r0 +/* 8023F66C 0023C5CC 38 21 00 30 */ addi r1, r1, 0x30 +/* 8023F670 0023C5D0 4E 80 00 20 */ blr + +.global Think__17CActorContraptionFfR13CStateManager +Think__17CActorContraptionFfR13CStateManager: +/* 8023F674 0023C5D4 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 8023F678 0023C5D8 7C 08 02 A6 */ mflr r0 +/* 8023F67C 0023C5DC 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 8023F680 0023C5E0 DB E1 00 B8 */ stfd f31, 0xb8(r1) +/* 8023F684 0023C5E4 FF E0 08 90 */ fmr f31, f1 +/* 8023F688 0023C5E8 93 E1 00 B4 */ stw r31, 0xb4(r1) +/* 8023F68C 0023C5EC 93 C1 00 B0 */ stw r30, 0xb0(r1) +/* 8023F690 0023C5F0 93 A1 00 AC */ stw r29, 0xac(r1) +/* 8023F694 0023C5F4 7C 9D 23 78 */ mr r29, r4 +/* 8023F698 0023C5F8 93 81 00 A8 */ stw r28, 0xa8(r1) +/* 8023F69C 0023C5FC 7C 7C 1B 78 */ mr r28, r3 +/* 8023F6A0 0023C600 4B E3 5E 6D */ bl Think__12CScriptActorFfR13CStateManager +/* 8023F6A4 0023C604 83 FC 02 EC */ lwz r31, 0x2ec(r28) +/* 8023F6A8 0023C608 48 00 00 70 */ b lbl_8023F718 +lbl_8023F6AC: +/* 8023F6AC 0023C60C A0 1F 00 08 */ lhz r0, 8(r31) +/* 8023F6B0 0023C610 7F A3 EB 78 */ mr r3, r29 +/* 8023F6B4 0023C614 38 81 00 08 */ addi r4, r1, 8 +/* 8023F6B8 0023C618 B0 01 00 08 */ sth r0, 8(r1) +/* 8023F6BC 0023C61C 4B E0 CE B9 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8023F6C0 0023C620 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8023F6C4 0023C624 41 82 00 50 */ beq lbl_8023F714 +/* 8023F6C8 0023C628 88 1E 00 30 */ lbz r0, 0x30(r30) +/* 8023F6CC 0023C62C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8023F6D0 0023C630 41 82 00 44 */ beq lbl_8023F714 +/* 8023F6D4 0023C634 7F 84 E3 78 */ mr r4, r28 +/* 8023F6D8 0023C638 38 61 00 0C */ addi r3, r1, 0xc +/* 8023F6DC 0023C63C 38 BF 00 0C */ addi r5, r31, 0xc +/* 8023F6E0 0023C640 4B E1 37 F1 */ bl "GetScaledLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8023F6E4 0023C644 38 61 00 3C */ addi r3, r1, 0x3c +/* 8023F6E8 0023C648 38 9C 00 34 */ addi r4, r28, 0x34 +/* 8023F6EC 0023C64C 38 A1 00 0C */ addi r5, r1, 0xc +/* 8023F6F0 0023C650 48 0D 32 61 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 8023F6F4 0023C654 38 61 00 6C */ addi r3, r1, 0x6c +/* 8023F6F8 0023C658 38 81 00 3C */ addi r4, r1, 0x3c +/* 8023F6FC 0023C65C 48 0D 34 79 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8023F700 0023C660 FC 20 F8 90 */ fmr f1, f31 +/* 8023F704 0023C664 7F C3 F3 78 */ mr r3, r30 +/* 8023F708 0023C668 7F A5 EB 78 */ mr r5, r29 +/* 8023F70C 0023C66C 38 81 00 6C */ addi r4, r1, 0x6c +/* 8023F710 0023C670 4B F5 8C F1 */ bl SetTransform__13CFlameThrowerFRC12CTransform4f +lbl_8023F714: +/* 8023F714 0023C674 83 FF 00 04 */ lwz r31, 4(r31) +lbl_8023F718: +/* 8023F718 0023C678 80 1C 02 F0 */ lwz r0, 0x2f0(r28) +/* 8023F71C 0023C67C 7C 1F 00 40 */ cmplw r31, r0 +/* 8023F720 0023C680 40 82 FF 8C */ bne lbl_8023F6AC +/* 8023F724 0023C684 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 8023F728 0023C688 CB E1 00 B8 */ lfd f31, 0xb8(r1) +/* 8023F72C 0023C68C 83 E1 00 B4 */ lwz r31, 0xb4(r1) +/* 8023F730 0023C690 83 C1 00 B0 */ lwz r30, 0xb0(r1) +/* 8023F734 0023C694 83 A1 00 AC */ lwz r29, 0xac(r1) +/* 8023F738 0023C698 83 81 00 A8 */ lwz r28, 0xa8(r1) +/* 8023F73C 0023C69C 7C 08 03 A6 */ mtlr r0 +/* 8023F740 0023C6A0 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 8023F744 0023C6A4 4E 80 00 20 */ blr + +.global sub_8023f748 +sub_8023f748: +/* 8023F748 0023C6A8 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 8023F74C 0023C6AC 7C 08 02 A6 */ mflr r0 +/* 8023F750 0023C6B0 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 8023F754 0023C6B4 BF 41 00 98 */ stmw r26, 0x98(r1) +/* 8023F758 0023C6B8 7C 7B 1B 78 */ mr r27, r3 +/* 8023F75C 0023C6BC 7C 9C 23 78 */ mr r28, r4 +/* 8023F760 0023C6C0 7C BD 2B 78 */ mr r29, r5 +/* 8023F764 0023C6C4 83 43 02 EC */ lwz r26, 0x2ec(r3) +/* 8023F768 0023C6C8 48 00 00 34 */ b lbl_8023F79C +lbl_8023F76C: +/* 8023F76C 0023C6CC 7F 84 E3 78 */ mr r4, r28 +/* 8023F770 0023C6D0 38 7A 00 0C */ addi r3, r26, 0xc +/* 8023F774 0023C6D4 4B E1 2E 6D */ 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" +/* 8023F778 0023C6D8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8023F77C 0023C6DC 41 82 00 1C */ beq lbl_8023F798 +/* 8023F780 0023C6E0 A0 1A 00 08 */ lhz r0, 8(r26) +/* 8023F784 0023C6E4 7F A3 EB 78 */ mr r3, r29 +/* 8023F788 0023C6E8 38 81 00 3C */ addi r4, r1, 0x3c +/* 8023F78C 0023C6EC B0 01 00 3C */ sth r0, 0x3c(r1) +/* 8023F790 0023C6F0 4B E0 CD E5 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8023F794 0023C6F4 48 00 01 E4 */ b lbl_8023F978 +lbl_8023F798: +/* 8023F798 0023C6F8 83 5A 00 04 */ lwz r26, 4(r26) +lbl_8023F79C: +/* 8023F79C 0023C6FC 80 1B 02 F0 */ lwz r0, 0x2f0(r27) +/* 8023F7A0 0023C700 7C 1A 00 40 */ cmplw r26, r0 +/* 8023F7A4 0023C704 40 82 FF C8 */ bne lbl_8023F76C +/* 8023F7A8 0023C708 80 DB 03 08 */ lwz r6, 0x308(r27) +/* 8023F7AC 0023C70C 38 A0 00 06 */ li r5, 6 +/* 8023F7B0 0023C710 C0 02 B7 CC */ lfs f0, lbl_805AD4EC@sda21(r2) +/* 8023F7B4 0023C714 38 00 00 14 */ li r0, 0x14 +/* 8023F7B8 0023C718 C0 22 B7 C8 */ lfs f1, lbl_805AD4E8@sda21(r2) +/* 8023F7BC 0023C71C 7F A4 EB 78 */ mr r4, r29 +/* 8023F7C0 0023C720 90 A1 00 74 */ stw r5, 0x74(r1) +/* 8023F7C4 0023C724 38 61 00 38 */ addi r3, r1, 0x38 +/* 8023F7C8 0023C728 90 A1 00 78 */ stw r5, 0x78(r1) +/* 8023F7CC 0023C72C 90 C1 00 7C */ stw r6, 0x7c(r1) +/* 8023F7D0 0023C730 90 01 00 80 */ stw r0, 0x80(r1) +/* 8023F7D4 0023C734 D0 21 00 84 */ stfs f1, 0x84(r1) +/* 8023F7D8 0023C738 D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 8023F7DC 0023C73C D0 01 00 90 */ stfs f0, 0x90(r1) +/* 8023F7E0 0023C740 4B E0 D8 FD */ bl AllocateUniqueId__13CStateManagerFv +/* 8023F7E4 0023C744 A0 01 00 38 */ lhz r0, 0x38(r1) +/* 8023F7E8 0023C748 3C 60 80 3D */ lis r3, lbl_803D43A0@ha +/* 8023F7EC 0023C74C 38 83 43 A0 */ addi r4, r3, lbl_803D43A0@l +/* 8023F7F0 0023C750 3B 40 00 00 */ li r26, 0 +/* 8023F7F4 0023C754 B0 01 00 40 */ sth r0, 0x40(r1) +/* 8023F7F8 0023C758 38 60 04 08 */ li r3, 0x408 +/* 8023F7FC 0023C75C 38 A0 00 00 */ li r5, 0 +/* 8023F800 0023C760 48 0D 60 6D */ bl __nw__FUlPCcPCc +/* 8023F804 0023C764 7C 7F 1B 79 */ or. r31, r3, r3 +/* 8023F808 0023C768 41 82 00 9C */ beq lbl_8023F8A4 +/* 8023F80C 0023C76C A0 DB 00 08 */ lhz r6, 8(r27) +/* 8023F810 0023C770 3C 60 80 3D */ lis r3, lbl_803D43A0@ha +/* 8023F814 0023C774 38 83 43 A0 */ addi r4, r3, lbl_803D43A0@l +/* 8023F818 0023C778 A0 01 00 40 */ lhz r0, 0x40(r1) +/* 8023F81C 0023C77C B0 C1 00 34 */ sth r6, 0x34(r1) +/* 8023F820 0023C780 38 61 00 4C */ addi r3, r1, 0x4c +/* 8023F824 0023C784 38 84 00 07 */ addi r4, r4, 7 +/* 8023F828 0023C788 80 BB 00 04 */ lwz r5, 4(r27) +/* 8023F82C 0023C78C B0 C1 00 30 */ sth r6, 0x30(r1) +/* 8023F830 0023C790 90 A1 00 44 */ stw r5, 0x44(r1) +/* 8023F834 0023C794 90 A1 00 48 */ stw r5, 0x48(r1) +/* 8023F838 0023C798 B0 01 00 2C */ sth r0, 0x2c(r1) +/* 8023F83C 0023C79C 4B DC 54 7D */ bl string_l__4rstlFPCc +/* 8023F840 0023C7A0 38 01 00 2C */ addi r0, r1, 0x2c +/* 8023F844 0023C7A4 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 8023F848 0023C7A8 90 01 00 08 */ stw r0, 8(r1) +/* 8023F84C 0023C7AC 38 01 00 48 */ addi r0, r1, 0x48 +/* 8023F850 0023C7B0 39 03 66 70 */ addi r8, r3, skIdentity4f@l +/* 8023F854 0023C7B4 38 61 00 34 */ addi r3, r1, 0x34 +/* 8023F858 0023C7B8 90 01 00 0C */ stw r0, 0xc(r1) +/* 8023F85C 0023C7BC 38 A0 00 00 */ li r5, 0 +/* 8023F860 0023C7C0 39 60 FF FF */ li r11, -1 +/* 8023F864 0023C7C4 A0 02 C5 FC */ lhz r0, lbl_805AE31C@sda21(r2) +/* 8023F868 0023C7C8 90 61 00 10 */ stw r3, 0x10(r1) +/* 8023F86C 0023C7CC 7F E3 FB 78 */ mr r3, r31 +/* 8023F870 0023C7D0 38 9B 03 00 */ addi r4, r27, 0x300 +/* 8023F874 0023C7D4 38 E1 00 74 */ addi r7, r1, 0x74 +/* 8023F878 0023C7D8 90 A1 00 14 */ stw r5, 0x14(r1) +/* 8023F87C 0023C7DC 38 A1 00 4C */ addi r5, r1, 0x4c +/* 8023F880 0023C7E0 39 5B 03 0C */ addi r10, r27, 0x30c +/* 8023F884 0023C7E4 3B 40 00 01 */ li r26, 1 +/* 8023F888 0023C7E8 91 61 00 18 */ stw r11, 0x18(r1) +/* 8023F88C 0023C7EC 38 C0 00 03 */ li r6, 3 +/* 8023F890 0023C7F0 39 20 00 2F */ li r9, 0x2f +/* 8023F894 0023C7F4 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8023F898 0023C7F8 91 61 00 20 */ stw r11, 0x20(r1) +/* 8023F89C 0023C7FC 4B F5 92 55 */ bl "__ct__13CFlameThrowerFRC28TToken<18CWeaponDescription>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>11EWeaponTypeRC10CFlameInfoRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId9TUniqueIdUi" +/* 8023F8A0 0023C800 7C 7F 1B 78 */ mr r31, r3 +lbl_8023F8A4: +/* 8023F8A4 0023C804 7F 40 07 75 */ extsb. r0, r26 +/* 8023F8A8 0023C808 7F FE FB 78 */ mr r30, r31 +/* 8023F8AC 0023C80C 41 82 00 0C */ beq lbl_8023F8B8 +/* 8023F8B0 0023C810 38 61 00 4C */ addi r3, r1, 0x4c +/* 8023F8B4 0023C814 48 0F E2 2D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8023F8B8: +/* 8023F8B8 0023C818 7F A3 EB 78 */ mr r3, r29 +/* 8023F8BC 0023C81C 7F C4 F3 78 */ mr r4, r30 +/* 8023F8C0 0023C820 4B E0 D2 55 */ bl AddObject__13CStateManagerFR7CEntity +/* 8023F8C4 0023C824 A0 01 00 40 */ lhz r0, 0x40(r1) +/* 8023F8C8 0023C828 3B E1 00 60 */ addi r31, r1, 0x60 +/* 8023F8CC 0023C82C 7F E3 FB 78 */ mr r3, r31 +/* 8023F8D0 0023C830 7F 84 E3 78 */ mr r4, r28 +/* 8023F8D4 0023C834 B0 01 00 28 */ sth r0, 0x28(r1) +/* 8023F8D8 0023C838 B0 01 00 5C */ sth r0, 0x5c(r1) +/* 8023F8DC 0023C83C 48 0F E8 85 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8023F8E0 0023C840 38 00 00 00 */ li r0, 0 +/* 8023F8E4 0023C844 3C 60 80 3D */ lis r3, lbl_803D43A0@ha +/* 8023F8E8 0023C848 98 01 00 70 */ stb r0, 0x70(r1) +/* 8023F8EC 0023C84C 38 83 43 A0 */ addi r4, r3, lbl_803D43A0@l +/* 8023F8F0 0023C850 38 60 00 20 */ li r3, 0x20 +/* 8023F8F4 0023C854 38 A0 00 00 */ li r5, 0 +/* 8023F8F8 0023C858 83 BB 02 F0 */ lwz r29, 0x2f0(r27) +/* 8023F8FC 0023C85C 83 5D 00 00 */ lwz r26, 0(r29) +/* 8023F900 0023C860 48 0D 5F 19 */ bl __nwa__FUlPCcPCc +/* 8023F904 0023C864 7C 7C 1B 79 */ or. r28, r3, r3 +/* 8023F908 0023C868 41 82 00 0C */ beq lbl_8023F914 +/* 8023F90C 0023C86C 93 5C 00 00 */ stw r26, 0(r28) +/* 8023F910 0023C870 93 BC 00 04 */ stw r29, 4(r28) +lbl_8023F914: +/* 8023F914 0023C874 37 5C 00 08 */ addic. r26, r28, 8 +/* 8023F918 0023C878 41 82 00 20 */ beq lbl_8023F938 +/* 8023F91C 0023C87C A0 01 00 5C */ lhz r0, 0x5c(r1) +/* 8023F920 0023C880 7F E4 FB 78 */ mr r4, r31 +/* 8023F924 0023C884 38 7A 00 04 */ addi r3, r26, 4 +/* 8023F928 0023C888 B0 1A 00 00 */ sth r0, 0(r26) +/* 8023F92C 0023C88C 48 0F E8 35 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8023F930 0023C890 88 01 00 70 */ lbz r0, 0x70(r1) +/* 8023F934 0023C894 98 1A 00 14 */ stb r0, 0x14(r26) +lbl_8023F938: +/* 8023F938 0023C898 80 1B 02 EC */ lwz r0, 0x2ec(r27) +/* 8023F93C 0023C89C 7C 1D 00 40 */ cmplw r29, r0 +/* 8023F940 0023C8A0 40 82 00 08 */ bne lbl_8023F948 +/* 8023F944 0023C8A4 93 9B 02 EC */ stw r28, 0x2ec(r27) +lbl_8023F948: +/* 8023F948 0023C8A8 80 7C 00 00 */ lwz r3, 0(r28) +/* 8023F94C 0023C8AC 28 1F 00 00 */ cmplwi r31, 0 +/* 8023F950 0023C8B0 93 83 00 04 */ stw r28, 4(r3) +/* 8023F954 0023C8B4 80 7C 00 04 */ lwz r3, 4(r28) +/* 8023F958 0023C8B8 93 83 00 00 */ stw r28, 0(r3) +/* 8023F95C 0023C8BC 80 7B 02 FC */ lwz r3, 0x2fc(r27) +/* 8023F960 0023C8C0 38 03 00 01 */ addi r0, r3, 1 +/* 8023F964 0023C8C4 90 1B 02 FC */ stw r0, 0x2fc(r27) +/* 8023F968 0023C8C8 41 82 00 0C */ beq lbl_8023F974 +/* 8023F96C 0023C8CC 7F E3 FB 78 */ mr r3, r31 +/* 8023F970 0023C8D0 48 0F E1 71 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8023F974: +/* 8023F974 0023C8D4 7F C3 F3 78 */ mr r3, r30 +lbl_8023F978: +/* 8023F978 0023C8D8 BB 41 00 98 */ lmw r26, 0x98(r1) +/* 8023F97C 0023C8DC 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 8023F980 0023C8E0 7C 08 03 A6 */ mtlr r0 +/* 8023F984 0023C8E4 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 8023F988 0023C8E8 4E 80 00 20 */ blr + +.global "__ct__17CActorContraptionF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC6CAABoxRC13CMaterialListffRC11CHealthInfoRC20CDamageVulnerabilityRC16CActorParametersiRC11CDamageInfob" +"__ct__17CActorContraptionF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC6CAABoxRC13CMaterialListffRC11CHealthInfoRC20CDamageVulnerabilityRC16CActorParametersiRC11CDamageInfob": +/* 8023F98C 0023C8EC 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 8023F990 0023C8F0 7C 08 02 A6 */ mflr r0 +/* 8023F994 0023C8F4 C0 62 B7 CC */ lfs f3, lbl_805AD4EC@sda21(r2) +/* 8023F998 0023C8F8 90 01 00 54 */ stw r0, 0x54(r1) +/* 8023F99C 0023C8FC 38 00 00 00 */ li r0, 0 +/* 8023F9A0 0023C900 81 81 00 58 */ lwz r12, 0x58(r1) +/* 8023F9A4 0023C904 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 8023F9A8 0023C908 7C 7F 1B 78 */ mr r31, r3 +/* 8023F9AC 0023C90C 81 61 00 5C */ lwz r11, 0x5c(r1) +/* 8023F9B0 0023C910 93 C1 00 48 */ stw r30, 0x48(r1) +/* 8023F9B4 0023C914 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 8023F9B8 0023C918 93 A1 00 44 */ stw r29, 0x44(r1) +/* 8023F9BC 0023C91C 83 A1 00 64 */ lwz r29, 0x64(r1) +/* 8023F9C0 0023C920 A0 84 00 00 */ lhz r4, 0(r4) +/* 8023F9C4 0023C924 B0 81 00 30 */ sth r4, 0x30(r1) +/* 8023F9C8 0023C928 38 81 00 30 */ addi r4, r1, 0x30 +/* 8023F9CC 0023C92C 91 81 00 08 */ stw r12, 8(r1) +/* 8023F9D0 0023C930 81 81 00 60 */ lwz r12, 0x60(r1) +/* 8023F9D4 0023C934 91 61 00 0C */ stw r11, 0xc(r1) +/* 8023F9D8 0023C938 89 61 00 6F */ lbz r11, 0x6f(r1) +/* 8023F9DC 0023C93C 91 81 00 10 */ stw r12, 0x10(r1) +/* 8023F9E0 0023C940 90 01 00 14 */ stw r0, 0x14(r1) +/* 8023F9E4 0023C944 91 61 00 18 */ stw r11, 0x18(r1) +/* 8023F9E8 0023C948 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8023F9EC 0023C94C 90 01 00 20 */ stw r0, 0x20(r1) +/* 8023F9F0 0023C950 90 01 00 24 */ stw r0, 0x24(r1) +/* 8023F9F4 0023C954 90 01 00 28 */ stw r0, 0x28(r1) +/* 8023F9F8 0023C958 90 01 00 2C */ stw r0, 0x2c(r1) +/* 8023F9FC 0023C95C 4B E3 5E B1 */ bl "__ct__12CScriptActorF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC6CAABoxRC13CMaterialListffRC11CHealthInfoRC20CDamageVulnerabilityRC16CActorParametersbbUibbbb" +/* 8023FA00 0023C960 3C 80 80 3F */ lis r4, lbl_803E85E8@ha +/* 8023FA04 0023C964 3C 60 80 3D */ lis r3, lbl_803D43A0@ha +/* 8023FA08 0023C968 38 04 85 E8 */ addi r0, r4, lbl_803E85E8@l +/* 8023FA0C 0023C96C 38 DF 02 F4 */ addi r6, r31, 0x2f4 +/* 8023FA10 0023C970 90 1F 00 00 */ stw r0, 0(r31) +/* 8023FA14 0023C974 38 83 43 A0 */ addi r4, r3, lbl_803D43A0@l +/* 8023FA18 0023C978 38 00 00 00 */ li r0, 0 +/* 8023FA1C 0023C97C 38 61 00 34 */ addi r3, r1, 0x34 +/* 8023FA20 0023C980 90 DF 02 EC */ stw r6, 0x2ec(r31) +/* 8023FA24 0023C984 38 A4 00 19 */ addi r5, r4, 0x19 +/* 8023FA28 0023C988 90 DF 02 F0 */ stw r6, 0x2f0(r31) +/* 8023FA2C 0023C98C 90 DF 02 F4 */ stw r6, 0x2f4(r31) +/* 8023FA30 0023C990 90 DF 02 F8 */ stw r6, 0x2f8(r31) +/* 8023FA34 0023C994 90 1F 02 FC */ stw r0, 0x2fc(r31) +/* 8023FA38 0023C998 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8023FA3C 0023C99C 81 84 00 00 */ lwz r12, 0(r4) +/* 8023FA40 0023C9A0 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 8023FA44 0023C9A4 7D 89 03 A6 */ mtctr r12 +/* 8023FA48 0023C9A8 4E 80 04 21 */ bctrl +/* 8023FA4C 0023C9AC 38 7F 03 00 */ addi r3, r31, 0x300 +/* 8023FA50 0023C9B0 38 81 00 34 */ addi r4, r1, 0x34 +/* 8023FA54 0023C9B4 48 10 14 55 */ bl __ct__6CTokenFRC6CToken +/* 8023FA58 0023C9B8 38 61 00 34 */ addi r3, r1, 0x34 +/* 8023FA5C 0023C9BC 38 80 FF FF */ li r4, -1 +/* 8023FA60 0023C9C0 48 10 13 E1 */ bl __dt__6CTokenFv +/* 8023FA64 0023C9C4 93 BF 03 08 */ stw r29, 0x308(r31) +/* 8023FA68 0023C9C8 7F E3 FB 78 */ mr r3, r31 +/* 8023FA6C 0023C9CC 80 1E 00 00 */ lwz r0, 0(r30) +/* 8023FA70 0023C9D0 90 1F 03 0C */ stw r0, 0x30c(r31) +/* 8023FA74 0023C9D4 88 1E 00 04 */ lbz r0, 4(r30) +/* 8023FA78 0023C9D8 98 1F 03 10 */ stb r0, 0x310(r31) +/* 8023FA7C 0023C9DC C0 1E 00 08 */ lfs f0, 8(r30) +/* 8023FA80 0023C9E0 D0 1F 03 14 */ stfs f0, 0x314(r31) +/* 8023FA84 0023C9E4 C0 1E 00 0C */ lfs f0, 0xc(r30) +/* 8023FA88 0023C9E8 D0 1F 03 18 */ stfs f0, 0x318(r31) +/* 8023FA8C 0023C9EC C0 1E 00 10 */ lfs f0, 0x10(r30) +/* 8023FA90 0023C9F0 D0 1F 03 1C */ stfs f0, 0x31c(r31) +/* 8023FA94 0023C9F4 C0 1E 00 14 */ lfs f0, 0x14(r30) +/* 8023FA98 0023C9F8 D0 1F 03 20 */ stfs f0, 0x320(r31) +/* 8023FA9C 0023C9FC 88 1E 00 18 */ lbz r0, 0x18(r30) +/* 8023FAA0 0023CA00 98 1F 03 24 */ stb r0, 0x324(r31) +/* 8023FAA4 0023CA04 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 8023FAA8 0023CA08 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 8023FAAC 0023CA0C 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 8023FAB0 0023CA10 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8023FAB4 0023CA14 7C 08 03 A6 */ mtlr r0 +/* 8023FAB8 0023CA18 38 21 00 50 */ addi r1, r1, 0x50 +/* 8023FABC 0023CA1C 4E 80 00 20 */ blr + +.global sub_8023fac0 +sub_8023fac0: +/* 8023FAC0 0023CA20 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8023FAC4 0023CA24 7C 08 02 A6 */ mflr r0 +/* 8023FAC8 0023CA28 90 01 00 24 */ stw r0, 0x24(r1) +/* 8023FACC 0023CA2C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8023FAD0 0023CA30 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8023FAD4 0023CA34 7C 9E 23 78 */ mr r30, r4 +/* 8023FAD8 0023CA38 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8023FADC 0023CA3C 7C 7D 1B 78 */ mr r29, r3 +/* 8023FAE0 0023CA40 80 03 00 04 */ lwz r0, 4(r3) +/* 8023FAE4 0023CA44 83 E4 00 04 */ lwz r31, 4(r4) +/* 8023FAE8 0023CA48 7C 1E 00 40 */ cmplw r30, r0 +/* 8023FAEC 0023CA4C 40 82 00 08 */ bne lbl_8023FAF4 +/* 8023FAF0 0023CA50 93 FD 00 04 */ stw r31, 4(r29) +lbl_8023FAF4: +/* 8023FAF4 0023CA54 80 1E 00 04 */ lwz r0, 4(r30) +/* 8023FAF8 0023CA58 34 9E 00 08 */ addic. r4, r30, 8 +/* 8023FAFC 0023CA5C 80 7E 00 00 */ lwz r3, 0(r30) +/* 8023FB00 0023CA60 90 03 00 04 */ stw r0, 4(r3) +/* 8023FB04 0023CA64 80 1E 00 00 */ lwz r0, 0(r30) +/* 8023FB08 0023CA68 80 7E 00 04 */ lwz r3, 4(r30) +/* 8023FB0C 0023CA6C 90 03 00 00 */ stw r0, 0(r3) +/* 8023FB10 0023CA70 41 82 00 14 */ beq lbl_8023FB24 +/* 8023FB14 0023CA74 34 04 00 04 */ addic. r0, r4, 4 +/* 8023FB18 0023CA78 41 82 00 0C */ beq lbl_8023FB24 +/* 8023FB1C 0023CA7C 38 64 00 04 */ addi r3, r4, 4 +/* 8023FB20 0023CA80 48 0F DF C1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8023FB24: +/* 8023FB24 0023CA84 28 1E 00 00 */ cmplwi r30, 0 +/* 8023FB28 0023CA88 41 82 00 0C */ beq lbl_8023FB34 +/* 8023FB2C 0023CA8C 7F C3 F3 78 */ mr r3, r30 +/* 8023FB30 0023CA90 48 0D 5E 01 */ bl Free__7CMemoryFPCv +lbl_8023FB34: +/* 8023FB34 0023CA94 80 9D 00 14 */ lwz r4, 0x14(r29) +/* 8023FB38 0023CA98 7F E3 FB 78 */ mr r3, r31 +/* 8023FB3C 0023CA9C 38 04 FF FF */ addi r0, r4, -1 +/* 8023FB40 0023CAA0 90 1D 00 14 */ stw r0, 0x14(r29) +/* 8023FB44 0023CAA4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8023FB48 0023CAA8 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8023FB4C 0023CAAC 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8023FB50 0023CAB0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8023FB54 0023CAB4 7C 08 03 A6 */ mtlr r0 +/* 8023FB58 0023CAB8 38 21 00 20 */ addi r1, r1, 0x20 +/* 8023FB5C 0023CABC 4E 80 00 20 */ blr + +.global sub_8023fb60 +sub_8023fb60: +/* 8023FB60 0023CAC0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8023FB64 0023CAC4 7C 08 02 A6 */ mflr r0 +/* 8023FB68 0023CAC8 90 01 00 24 */ stw r0, 0x24(r1) +/* 8023FB6C 0023CACC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8023FB70 0023CAD0 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8023FB74 0023CAD4 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8023FB78 0023CAD8 7C 9D 23 78 */ mr r29, r4 +/* 8023FB7C 0023CADC 93 81 00 10 */ stw r28, 0x10(r1) +/* 8023FB80 0023CAE0 7C 7C 1B 79 */ or. r28, r3, r3 +/* 8023FB84 0023CAE4 41 82 00 58 */ beq lbl_8023FBDC +/* 8023FB88 0023CAE8 83 FC 00 04 */ lwz r31, 4(r28) +/* 8023FB8C 0023CAEC 48 00 00 34 */ b lbl_8023FBC0 +lbl_8023FB90: +/* 8023FB90 0023CAF0 7F FE FB 78 */ mr r30, r31 +/* 8023FB94 0023CAF4 83 FF 00 04 */ lwz r31, 4(r31) +/* 8023FB98 0023CAF8 34 7E 00 08 */ addic. r3, r30, 8 +/* 8023FB9C 0023CAFC 41 82 00 14 */ beq lbl_8023FBB0 +/* 8023FBA0 0023CB00 34 03 00 04 */ addic. r0, r3, 4 +/* 8023FBA4 0023CB04 41 82 00 0C */ beq lbl_8023FBB0 +/* 8023FBA8 0023CB08 38 63 00 04 */ addi r3, r3, 4 +/* 8023FBAC 0023CB0C 48 0F DF 35 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8023FBB0: +/* 8023FBB0 0023CB10 28 1E 00 00 */ cmplwi r30, 0 +/* 8023FBB4 0023CB14 41 82 00 0C */ beq lbl_8023FBC0 +/* 8023FBB8 0023CB18 7F C3 F3 78 */ mr r3, r30 +/* 8023FBBC 0023CB1C 48 0D 5D 75 */ bl Free__7CMemoryFPCv +lbl_8023FBC0: +/* 8023FBC0 0023CB20 80 1C 00 08 */ lwz r0, 8(r28) +/* 8023FBC4 0023CB24 7C 1F 00 40 */ cmplw r31, r0 +/* 8023FBC8 0023CB28 40 82 FF C8 */ bne lbl_8023FB90 +/* 8023FBCC 0023CB2C 7F A0 07 35 */ extsh. r0, r29 +/* 8023FBD0 0023CB30 40 81 00 0C */ ble lbl_8023FBDC +/* 8023FBD4 0023CB34 7F 83 E3 78 */ mr r3, r28 +/* 8023FBD8 0023CB38 48 0D 5D 59 */ bl Free__7CMemoryFPCv +lbl_8023FBDC: +/* 8023FBDC 0023CB3C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8023FBE0 0023CB40 7F 83 E3 78 */ mr r3, r28 +/* 8023FBE4 0023CB44 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8023FBE8 0023CB48 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8023FBEC 0023CB4C 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8023FBF0 0023CB50 83 81 00 10 */ lwz r28, 0x10(r1) +/* 8023FBF4 0023CB54 7C 08 03 A6 */ mtlr r0 +/* 8023FBF8 0023CB58 38 21 00 20 */ addi r1, r1, 0x20 +/* 8023FBFC 0023CB5C 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Enemies/CAmbientAI.s b/asm/Kyoto_CWD/Enemies/CAmbientAI.s new file mode 100644 index 00000000..10285b0a --- /dev/null +++ b/asm/Kyoto_CWD/Enemies/CAmbientAI.s @@ -0,0 +1,714 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__10CAmbientAIFv +__dt__10CAmbientAIFv: +/* 8024B83C 0024879C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024B840 002487A0 7C 08 02 A6 */ mflr r0 +/* 8024B844 002487A4 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024B848 002487A8 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024B84C 002487AC 7C 9F 23 78 */ mr r31, r4 +/* 8024B850 002487B0 93 C1 00 08 */ stw r30, 8(r1) +/* 8024B854 002487B4 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8024B858 002487B8 41 82 00 28 */ beq lbl_8024B880 +/* 8024B85C 002487BC 3C A0 80 3F */ lis r5, lbl_803E8CB0@ha +/* 8024B860 002487C0 38 80 00 00 */ li r4, 0 +/* 8024B864 002487C4 38 05 8C B0 */ addi r0, r5, lbl_803E8CB0@l +/* 8024B868 002487C8 90 1E 00 00 */ stw r0, 0(r30) +/* 8024B86C 002487CC 4B ED 0B A9 */ bl __dt__13CPhysicsActorFv +/* 8024B870 002487D0 7F E0 07 35 */ extsh. r0, r31 +/* 8024B874 002487D4 40 81 00 0C */ ble lbl_8024B880 +/* 8024B878 002487D8 7F C3 F3 78 */ mr r3, r30 +/* 8024B87C 002487DC 48 0C A0 B5 */ bl Free__7CMemoryFPCv +lbl_8024B880: +/* 8024B880 002487E0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024B884 002487E4 7F C3 F3 78 */ mr r3, r30 +/* 8024B888 002487E8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024B88C 002487EC 83 C1 00 08 */ lwz r30, 8(r1) +/* 8024B890 002487F0 7C 08 03 A6 */ mtlr r0 +/* 8024B894 002487F4 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024B898 002487F8 4E 80 00 20 */ blr + +.global Accept__10CAmbientAIFR8IVisitor +Accept__10CAmbientAIFR8IVisitor: +/* 8024B89C 002487FC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024B8A0 00248800 7C 08 02 A6 */ mflr r0 +/* 8024B8A4 00248804 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024B8A8 00248808 7C 60 1B 78 */ mr r0, r3 +/* 8024B8AC 0024880C 7C 83 23 78 */ mr r3, r4 +/* 8024B8B0 00248810 81 84 00 00 */ lwz r12, 0(r4) +/* 8024B8B4 00248814 7C 04 03 78 */ mr r4, r0 +/* 8024B8B8 00248818 81 8C 00 50 */ lwz r12, 0x50(r12) +/* 8024B8BC 0024881C 7D 89 03 A6 */ mtctr r12 +/* 8024B8C0 00248820 4E 80 04 21 */ bctrl +/* 8024B8C4 00248824 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024B8C8 00248828 7C 08 03 A6 */ mtlr r0 +/* 8024B8CC 0024882C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024B8D0 00248830 4E 80 00 20 */ blr + +.global AcceptScriptMsg__10CAmbientAIF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__10CAmbientAIF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 8024B8D4 00248834 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 8024B8D8 00248838 7C 08 02 A6 */ mflr r0 +/* 8024B8DC 0024883C 90 01 00 74 */ stw r0, 0x74(r1) +/* 8024B8E0 00248840 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 8024B8E4 00248844 7C DF 33 78 */ mr r31, r6 +/* 8024B8E8 00248848 93 C1 00 68 */ stw r30, 0x68(r1) +/* 8024B8EC 0024884C 7C BE 2B 78 */ mr r30, r5 +/* 8024B8F0 00248850 93 A1 00 64 */ stw r29, 0x64(r1) +/* 8024B8F4 00248854 7C 9D 23 78 */ mr r29, r4 +/* 8024B8F8 00248858 2C 1D 00 23 */ cmpwi r29, 0x23 +/* 8024B8FC 0024885C 93 81 00 60 */ stw r28, 0x60(r1) +/* 8024B900 00248860 7C 7C 1B 78 */ mr r28, r3 +/* 8024B904 00248864 41 82 00 D0 */ beq lbl_8024B9D4 +/* 8024B908 00248868 40 80 00 10 */ bge lbl_8024B918 +/* 8024B90C 0024886C 2C 1D 00 0A */ cmpwi r29, 0xa +/* 8024B910 00248870 41 82 00 14 */ beq lbl_8024B924 +/* 8024B914 00248874 48 00 01 48 */ b lbl_8024BA5C +lbl_8024B918: +/* 8024B918 00248878 2C 1D 00 29 */ cmpwi r29, 0x29 +/* 8024B91C 0024887C 41 82 00 C4 */ beq lbl_8024B9E0 +/* 8024B920 00248880 48 00 01 3C */ b lbl_8024BA5C +lbl_8024B924: +/* 8024B924 00248884 88 1C 00 30 */ lbz r0, 0x30(r28) +/* 8024B928 00248888 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8024B92C 0024888C 40 82 00 18 */ bne lbl_8024B944 +/* 8024B930 00248890 81 83 00 00 */ lwz r12, 0(r3) +/* 8024B934 00248894 38 80 00 01 */ li r4, 1 +/* 8024B938 00248898 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 8024B93C 0024889C 7D 89 03 A6 */ mtctr r12 +/* 8024B940 002488A0 4E 80 04 21 */ bctrl +lbl_8024B944: +/* 8024B944 002488A4 38 E0 00 00 */ li r7, 0 +/* 8024B948 002488A8 C0 02 B8 90 */ lfs f0, lbl_805AD5B0@sda21(r2) +/* 8024B94C 002488AC 90 FC 02 D0 */ stw r7, 0x2d0(r28) +/* 8024B950 002488B0 38 60 FF FF */ li r3, -1 +/* 8024B954 002488B4 38 00 00 01 */ li r0, 1 +/* 8024B958 002488B8 38 81 00 34 */ addi r4, r1, 0x34 +/* 8024B95C 002488BC 80 DC 02 DC */ lwz r6, 0x2dc(r28) +/* 8024B960 002488C0 38 A0 00 00 */ li r5, 0 +/* 8024B964 002488C4 90 C1 00 34 */ stw r6, 0x34(r1) +/* 8024B968 002488C8 90 61 00 38 */ stw r3, 0x38(r1) +/* 8024B96C 002488CC D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 8024B970 002488D0 98 01 00 40 */ stb r0, 0x40(r1) +/* 8024B974 002488D4 90 E1 00 44 */ stw r7, 0x44(r1) +/* 8024B978 002488D8 90 E1 00 48 */ stw r7, 0x48(r1) +/* 8024B97C 002488DC 98 E1 00 4C */ stb r7, 0x4c(r1) +/* 8024B980 002488E0 90 E1 00 50 */ stw r7, 0x50(r1) +/* 8024B984 002488E4 90 E1 00 54 */ stw r7, 0x54(r1) +/* 8024B988 002488E8 90 E1 00 58 */ stw r7, 0x58(r1) +/* 8024B98C 002488EC 80 7C 00 64 */ lwz r3, 0x64(r28) +/* 8024B990 002488F0 80 63 00 10 */ lwz r3, 0x10(r3) +/* 8024B994 002488F4 4B DE 13 E9 */ bl SetAnimation__9CAnimDataFRC18CAnimPlaybackParmsb +/* 8024B998 002488F8 80 7C 00 64 */ lwz r3, 0x64(r28) +/* 8024B99C 002488FC 38 80 00 01 */ li r4, 1 +/* 8024B9A0 00248900 4B EC 9B C1 */ bl EnableLooping__10CModelDataFb +/* 8024B9A4 00248904 7F 83 E3 78 */ mr r3, r28 +/* 8024B9A8 00248908 7F E4 FB 78 */ mr r4, r31 +/* 8024B9AC 0024890C 48 00 05 71 */ bl sub_8024bf1c +/* 8024B9B0 00248910 88 1C 02 E8 */ lbz r0, 0x2e8(r28) +/* 8024B9B4 00248914 38 60 00 00 */ li r3, 0 +/* 8024B9B8 00248918 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8024B9BC 0024891C 98 1C 02 E8 */ stb r0, 0x2e8(r28) +/* 8024B9C0 00248920 C0 1C 02 58 */ lfs f0, 0x258(r28) +/* 8024B9C4 00248924 D0 1C 02 60 */ stfs f0, 0x260(r28) +/* 8024B9C8 00248928 C0 1C 02 5C */ lfs f0, 0x25c(r28) +/* 8024B9CC 0024892C D0 1C 02 64 */ stfs f0, 0x264(r28) +/* 8024B9D0 00248930 48 00 00 8C */ b lbl_8024BA5C +lbl_8024B9D4: +/* 8024B9D4 00248934 7F E4 FB 78 */ mr r4, r31 +/* 8024B9D8 00248938 48 00 05 45 */ bl sub_8024bf1c +/* 8024B9DC 0024893C 48 00 00 80 */ b lbl_8024BA5C +lbl_8024B9E0: +/* 8024B9E0 00248940 88 1C 00 30 */ lbz r0, 0x30(r28) +/* 8024B9E4 00248944 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8024B9E8 00248948 41 82 00 74 */ beq lbl_8024BA5C +/* 8024B9EC 0024894C 38 00 00 02 */ li r0, 2 +/* 8024B9F0 00248950 C0 02 B8 90 */ lfs f0, lbl_805AD5B0@sda21(r2) +/* 8024B9F4 00248954 90 1C 02 D0 */ stw r0, 0x2d0(r28) +/* 8024B9F8 00248958 38 C0 FF FF */ li r6, -1 +/* 8024B9FC 0024895C 38 60 00 01 */ li r3, 1 +/* 8024BA00 00248960 38 00 00 00 */ li r0, 0 +/* 8024BA04 00248964 80 FC 02 E4 */ lwz r7, 0x2e4(r28) +/* 8024BA08 00248968 38 81 00 0C */ addi r4, r1, 0xc +/* 8024BA0C 0024896C 38 A0 00 00 */ li r5, 0 +/* 8024BA10 00248970 90 E1 00 0C */ stw r7, 0xc(r1) +/* 8024BA14 00248974 90 C1 00 10 */ stw r6, 0x10(r1) +/* 8024BA18 00248978 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 8024BA1C 0024897C 98 61 00 18 */ stb r3, 0x18(r1) +/* 8024BA20 00248980 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8024BA24 00248984 90 01 00 20 */ stw r0, 0x20(r1) +/* 8024BA28 00248988 98 01 00 24 */ stb r0, 0x24(r1) +/* 8024BA2C 0024898C 90 01 00 28 */ stw r0, 0x28(r1) +/* 8024BA30 00248990 90 01 00 2C */ stw r0, 0x2c(r1) +/* 8024BA34 00248994 90 01 00 30 */ stw r0, 0x30(r1) +/* 8024BA38 00248998 80 7C 00 64 */ lwz r3, 0x64(r28) +/* 8024BA3C 0024899C 80 63 00 10 */ lwz r3, 0x10(r3) +/* 8024BA40 002489A0 4B DE 13 3D */ bl SetAnimation__9CAnimDataFRC18CAnimPlaybackParmsb +/* 8024BA44 002489A4 80 7C 00 64 */ lwz r3, 0x64(r28) +/* 8024BA48 002489A8 38 80 00 00 */ li r4, 0 +/* 8024BA4C 002489AC 4B EC 9B 15 */ bl EnableLooping__10CModelDataFb +/* 8024BA50 002489B0 7F 83 E3 78 */ mr r3, r28 +/* 8024BA54 002489B4 7F E4 FB 78 */ mr r4, r31 +/* 8024BA58 002489B8 48 00 04 C5 */ bl sub_8024bf1c +lbl_8024BA5C: +/* 8024BA5C 002489BC A0 1E 00 00 */ lhz r0, 0(r30) +/* 8024BA60 002489C0 7F 83 E3 78 */ mr r3, r28 +/* 8024BA64 002489C4 7F A4 EB 78 */ mr r4, r29 +/* 8024BA68 002489C8 7F E6 FB 78 */ mr r6, r31 +/* 8024BA6C 002489CC B0 01 00 08 */ sth r0, 8(r1) +/* 8024BA70 002489D0 38 A1 00 08 */ addi r5, r1, 8 +/* 8024BA74 002489D4 4B E0 7B A1 */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 8024BA78 002489D8 80 01 00 74 */ lwz r0, 0x74(r1) +/* 8024BA7C 002489DC 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 8024BA80 002489E0 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 8024BA84 002489E4 83 A1 00 64 */ lwz r29, 0x64(r1) +/* 8024BA88 002489E8 83 81 00 60 */ lwz r28, 0x60(r1) +/* 8024BA8C 002489EC 7C 08 03 A6 */ mtlr r0 +/* 8024BA90 002489F0 38 21 00 70 */ addi r1, r1, 0x70 +/* 8024BA94 002489F4 4E 80 00 20 */ blr + +.global Think__10CAmbientAIFfR13CStateManager +Think__10CAmbientAIFfR13CStateManager: +/* 8024BA98 002489F8 94 21 FE E0 */ stwu r1, -0x120(r1) +/* 8024BA9C 002489FC 7C 08 02 A6 */ mflr r0 +/* 8024BAA0 00248A00 90 01 01 24 */ stw r0, 0x124(r1) +/* 8024BAA4 00248A04 DB E1 01 10 */ stfd f31, 0x110(r1) +/* 8024BAA8 00248A08 F3 E1 01 18 */ psq_st f31, 280(r1), 0, qr0 +/* 8024BAAC 00248A0C BF 61 00 FC */ stmw r27, 0xfc(r1) +/* 8024BAB0 00248A10 88 03 00 30 */ lbz r0, 0x30(r3) +/* 8024BAB4 00248A14 FF E0 08 90 */ fmr f31, f1 +/* 8024BAB8 00248A18 7C 7E 1B 78 */ mr r30, r3 +/* 8024BABC 00248A1C 7C 9F 23 78 */ mr r31, r4 +/* 8024BAC0 00248A20 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8024BAC4 00248A24 41 82 04 3C */ beq lbl_8024BF00 +/* 8024BAC8 00248A28 80 9E 00 64 */ lwz r4, 0x64(r30) +/* 8024BACC 00248A2C 38 60 00 00 */ li r3, 0 +/* 8024BAD0 00248A30 28 04 00 00 */ cmplwi r4, 0 +/* 8024BAD4 00248A34 41 82 00 14 */ beq lbl_8024BAE8 +/* 8024BAD8 00248A38 80 04 00 10 */ lwz r0, 0x10(r4) +/* 8024BADC 00248A3C 28 00 00 00 */ cmplwi r0, 0 +/* 8024BAE0 00248A40 41 82 00 08 */ beq lbl_8024BAE8 +/* 8024BAE4 00248A44 38 60 00 01 */ li r3, 1 +lbl_8024BAE8: +/* 8024BAE8 00248A48 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8024BAEC 00248A4C 41 82 01 18 */ beq lbl_8024BC04 +/* 8024BAF0 00248A50 3C 80 80 3D */ lis r4, lbl_803D4798@ha +/* 8024BAF4 00248A54 38 61 00 38 */ addi r3, r1, 0x38 +/* 8024BAF8 00248A58 38 84 47 98 */ addi r4, r4, lbl_803D4798@l +/* 8024BAFC 00248A5C 4B DB 91 BD */ bl string_l__4rstlFPCc +/* 8024BB00 00248A60 C0 02 B8 94 */ lfs f0, lbl_805AD5B4@sda21(r2) +/* 8024BB04 00248A64 38 81 00 38 */ addi r4, r1, 0x38 +/* 8024BB08 00248A68 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 8024BB0C 00248A6C EC 3F 00 28 */ fsubs f1, f31, f0 +/* 8024BB10 00248A70 80 63 00 10 */ lwz r3, 0x10(r3) +/* 8024BB14 00248A74 4B DE 08 D9 */ bl "IsAnimTimeRemaining__9CAnimDataCFfRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8024BB18 00248A78 7C 7C 1B 78 */ mr r28, r3 +/* 8024BB1C 00248A7C 38 61 00 38 */ addi r3, r1, 0x38 +/* 8024BB20 00248A80 48 0F 1F C1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8024BB24 00248A84 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 8024BB28 00248A88 4B EC 99 E5 */ bl GetIsLoop__10CModelDataCFv +/* 8024BB2C 00248A8C 57 80 06 3F */ clrlwi. r0, r28, 0x18 +/* 8024BB30 00248A90 7C 7D 1B 78 */ mr r29, r3 +/* 8024BB34 00248A94 40 82 00 0C */ bne lbl_8024BB40 +/* 8024BB38 00248A98 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 8024BB3C 00248A9C 41 82 00 88 */ beq lbl_8024BBC4 +lbl_8024BB40: +/* 8024BB40 00248AA0 88 1E 02 E8 */ lbz r0, 0x2e8(r30) +/* 8024BB44 00248AA4 38 60 00 01 */ li r3, 1 +/* 8024BB48 00248AA8 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 8024BB4C 00248AAC FC 20 F8 90 */ fmr f1, f31 +/* 8024BB50 00248AB0 98 1E 02 E8 */ stb r0, 0x2e8(r30) +/* 8024BB54 00248AB4 7F C4 F3 78 */ mr r4, r30 +/* 8024BB58 00248AB8 7F E5 FB 78 */ mr r5, r31 +/* 8024BB5C 00248ABC 38 61 00 48 */ addi r3, r1, 0x48 +/* 8024BB60 00248AC0 38 C0 00 01 */ li r6, 1 +/* 8024BB64 00248AC4 4B E0 97 39 */ bl UpdateAnimation__6CActorFfR13CStateManagerb +/* 8024BB68 00248AC8 C0 E1 00 48 */ lfs f7, 0x48(r1) +/* 8024BB6C 00248ACC FC 20 F8 90 */ fmr f1, f31 +/* 8024BB70 00248AD0 C0 C1 00 4C */ lfs f6, 0x4c(r1) +/* 8024BB74 00248AD4 7F C3 F3 78 */ mr r3, r30 +/* 8024BB78 00248AD8 C0 A1 00 50 */ lfs f5, 0x50(r1) +/* 8024BB7C 00248ADC 3B 61 00 70 */ addi r27, r1, 0x70 +/* 8024BB80 00248AE0 C0 81 00 54 */ lfs f4, 0x54(r1) +/* 8024BB84 00248AE4 C0 61 00 58 */ lfs f3, 0x58(r1) +/* 8024BB88 00248AE8 38 81 00 64 */ addi r4, r1, 0x64 +/* 8024BB8C 00248AEC C0 41 00 5C */ lfs f2, 0x5c(r1) +/* 8024BB90 00248AF0 C0 01 00 60 */ lfs f0, 0x60(r1) +/* 8024BB94 00248AF4 D0 E1 00 64 */ stfs f7, 0x64(r1) +/* 8024BB98 00248AF8 D0 C1 00 68 */ stfs f6, 0x68(r1) +/* 8024BB9C 00248AFC D0 A1 00 6C */ stfs f5, 0x6c(r1) +/* 8024BBA0 00248B00 D0 81 00 70 */ stfs f4, 0x70(r1) +/* 8024BBA4 00248B04 D0 61 00 74 */ stfs f3, 0x74(r1) +/* 8024BBA8 00248B08 D0 41 00 78 */ stfs f2, 0x78(r1) +/* 8024BBAC 00248B0C D0 01 00 7C */ stfs f0, 0x7c(r1) +/* 8024BBB0 00248B10 4B EC F2 C9 */ bl MoveToOR__13CPhysicsActorFRC9CVector3ff +/* 8024BBB4 00248B14 FC 20 F8 90 */ fmr f1, f31 +/* 8024BBB8 00248B18 7F C3 F3 78 */ mr r3, r30 +/* 8024BBBC 00248B1C 7F 64 DB 78 */ mr r4, r27 +/* 8024BBC0 00248B20 4B EC F2 55 */ bl RotateToOR__13CPhysicsActorFRC11CQuaternionf +lbl_8024BBC4: +/* 8024BBC4 00248B24 57 80 06 3F */ clrlwi. r0, r28, 0x18 +/* 8024BBC8 00248B28 40 82 00 3C */ bne lbl_8024BC04 +/* 8024BBCC 00248B2C 88 1E 02 E8 */ lbz r0, 0x2e8(r30) +/* 8024BBD0 00248B30 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8024BBD4 00248B34 41 82 00 30 */ beq lbl_8024BC04 +/* 8024BBD8 00248B38 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 8024BBDC 00248B3C 40 82 00 28 */ bne lbl_8024BC04 +/* 8024BBE0 00248B40 7F C3 F3 78 */ mr r3, r30 +/* 8024BBE4 00248B44 7F E5 FB 78 */ mr r5, r31 +/* 8024BBE8 00248B48 38 80 00 07 */ li r4, 7 +/* 8024BBEC 00248B4C 38 C0 FF FF */ li r6, -1 +/* 8024BBF0 00248B50 4B E0 54 D1 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 8024BBF4 00248B54 88 1E 02 E8 */ lbz r0, 0x2e8(r30) +/* 8024BBF8 00248B58 38 60 00 00 */ li r3, 0 +/* 8024BBFC 00248B5C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 8024BC00 00248B60 98 1E 02 E8 */ stb r0, 0x2e8(r30) +lbl_8024BC04: +/* 8024BC04 00248B64 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 8024BC08 00248B68 38 61 00 2C */ addi r3, r1, 0x2c +/* 8024BC0C 00248B6C C0 1E 00 60 */ lfs f0, 0x60(r30) +/* 8024BC10 00248B70 C0 A4 00 60 */ lfs f5, 0x60(r4) +/* 8024BC14 00248B74 C0 84 00 50 */ lfs f4, 0x50(r4) +/* 8024BC18 00248B78 C0 5E 00 50 */ lfs f2, 0x50(r30) +/* 8024BC1C 00248B7C EC 25 00 28 */ fsubs f1, f5, f0 +/* 8024BC20 00248B80 C0 04 00 40 */ lfs f0, 0x40(r4) +/* 8024BC24 00248B84 C0 7E 00 40 */ lfs f3, 0x40(r30) +/* 8024BC28 00248B88 EC 44 10 28 */ fsubs f2, f4, f2 +/* 8024BC2C 00248B8C D0 01 00 20 */ stfs f0, 0x20(r1) +/* 8024BC30 00248B90 EC 00 18 28 */ fsubs f0, f0, f3 +/* 8024BC34 00248B94 D0 81 00 24 */ stfs f4, 0x24(r1) +/* 8024BC38 00248B98 D0 A1 00 28 */ stfs f5, 0x28(r1) +/* 8024BC3C 00248B9C D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 8024BC40 00248BA0 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 8024BC44 00248BA4 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 8024BC48 00248BA8 48 0C 8C 71 */ bl Magnitude__9CVector3fCFv +/* 8024BC4C 00248BAC C0 1E 02 D4 */ lfs f0, 0x2d4(r30) +/* 8024BC50 00248BB0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8024BC54 00248BB4 7C 00 00 26 */ mfcr r0 +/* 8024BC58 00248BB8 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 8024BC5C 00248BBC C0 1E 00 60 */ lfs f0, 0x60(r30) +/* 8024BC60 00248BC0 54 1B 0F FE */ srwi r27, r0, 0x1f +/* 8024BC64 00248BC4 C0 A4 00 60 */ lfs f5, 0x60(r4) +/* 8024BC68 00248BC8 38 61 00 14 */ addi r3, r1, 0x14 +/* 8024BC6C 00248BCC C0 84 00 50 */ lfs f4, 0x50(r4) +/* 8024BC70 00248BD0 C0 5E 00 50 */ lfs f2, 0x50(r30) +/* 8024BC74 00248BD4 EC 25 00 28 */ fsubs f1, f5, f0 +/* 8024BC78 00248BD8 C0 04 00 40 */ lfs f0, 0x40(r4) +/* 8024BC7C 00248BDC C0 7E 00 40 */ lfs f3, 0x40(r30) +/* 8024BC80 00248BE0 EC 44 10 28 */ fsubs f2, f4, f2 +/* 8024BC84 00248BE4 D0 01 00 08 */ stfs f0, 8(r1) +/* 8024BC88 00248BE8 EC 00 18 28 */ fsubs f0, f0, f3 +/* 8024BC8C 00248BEC D0 81 00 0C */ stfs f4, 0xc(r1) +/* 8024BC90 00248BF0 D0 A1 00 10 */ stfs f5, 0x10(r1) +/* 8024BC94 00248BF4 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 8024BC98 00248BF8 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 8024BC9C 00248BFC D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 8024BCA0 00248C00 48 0C 8C 19 */ bl Magnitude__9CVector3fCFv +/* 8024BCA4 00248C04 C0 1E 02 D8 */ lfs f0, 0x2d8(r30) +/* 8024BCA8 00248C08 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8024BCAC 00248C0C 7C 60 00 26 */ mfcr r3 +/* 8024BCB0 00248C10 80 1E 02 D0 */ lwz r0, 0x2d0(r30) +/* 8024BCB4 00248C14 54 63 0F FE */ srwi r3, r3, 0x1f +/* 8024BCB8 00248C18 2C 00 00 01 */ cmpwi r0, 1 +/* 8024BCBC 00248C1C 41 82 00 98 */ beq lbl_8024BD54 +/* 8024BCC0 00248C20 40 80 00 10 */ bge lbl_8024BCD0 +/* 8024BCC4 00248C24 2C 00 00 00 */ cmpwi r0, 0 +/* 8024BCC8 00248C28 40 80 00 14 */ bge lbl_8024BCDC +/* 8024BCCC 00248C2C 48 00 01 B8 */ b lbl_8024BE84 +lbl_8024BCD0: +/* 8024BCD0 00248C30 2C 00 00 03 */ cmpwi r0, 3 +/* 8024BCD4 00248C34 40 80 01 B0 */ bge lbl_8024BE84 +/* 8024BCD8 00248C38 48 00 01 34 */ b lbl_8024BE0C +lbl_8024BCDC: +/* 8024BCDC 00248C3C 28 1B 00 00 */ cmplwi r27, 0 +/* 8024BCE0 00248C40 41 82 01 A4 */ beq lbl_8024BE84 +/* 8024BCE4 00248C44 38 E0 00 01 */ li r7, 1 +/* 8024BCE8 00248C48 C0 02 B8 90 */ lfs f0, lbl_805AD5B0@sda21(r2) +/* 8024BCEC 00248C4C 90 FE 02 D0 */ stw r7, 0x2d0(r30) +/* 8024BCF0 00248C50 38 60 FF FF */ li r3, -1 +/* 8024BCF4 00248C54 38 00 00 00 */ li r0, 0 +/* 8024BCF8 00248C58 38 81 00 D0 */ addi r4, r1, 0xd0 +/* 8024BCFC 00248C5C 80 DE 02 E0 */ lwz r6, 0x2e0(r30) +/* 8024BD00 00248C60 38 A0 00 00 */ li r5, 0 +/* 8024BD04 00248C64 90 C1 00 D0 */ stw r6, 0xd0(r1) +/* 8024BD08 00248C68 90 61 00 D4 */ stw r3, 0xd4(r1) +/* 8024BD0C 00248C6C D0 01 00 D8 */ stfs f0, 0xd8(r1) +/* 8024BD10 00248C70 98 E1 00 DC */ stb r7, 0xdc(r1) +/* 8024BD14 00248C74 90 01 00 E0 */ stw r0, 0xe0(r1) +/* 8024BD18 00248C78 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 8024BD1C 00248C7C 98 01 00 E8 */ stb r0, 0xe8(r1) +/* 8024BD20 00248C80 90 01 00 EC */ stw r0, 0xec(r1) +/* 8024BD24 00248C84 90 01 00 F0 */ stw r0, 0xf0(r1) +/* 8024BD28 00248C88 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 8024BD2C 00248C8C 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 8024BD30 00248C90 80 63 00 10 */ lwz r3, 0x10(r3) +/* 8024BD34 00248C94 4B DE 10 49 */ bl SetAnimation__9CAnimDataFRC18CAnimPlaybackParmsb +/* 8024BD38 00248C98 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 8024BD3C 00248C9C 38 80 00 01 */ li r4, 1 +/* 8024BD40 00248CA0 4B EC 98 21 */ bl EnableLooping__10CModelDataFb +/* 8024BD44 00248CA4 7F C3 F3 78 */ mr r3, r30 +/* 8024BD48 00248CA8 7F E4 FB 78 */ mr r4, r31 +/* 8024BD4C 00248CAC 48 00 01 D1 */ bl sub_8024bf1c +/* 8024BD50 00248CB0 48 00 01 34 */ b lbl_8024BE84 +lbl_8024BD54: +/* 8024BD54 00248CB4 28 1B 00 00 */ cmplwi r27, 0 +/* 8024BD58 00248CB8 40 82 00 74 */ bne lbl_8024BDCC +/* 8024BD5C 00248CBC 38 E0 00 00 */ li r7, 0 +/* 8024BD60 00248CC0 C0 02 B8 90 */ lfs f0, lbl_805AD5B0@sda21(r2) +/* 8024BD64 00248CC4 90 FE 02 D0 */ stw r7, 0x2d0(r30) +/* 8024BD68 00248CC8 38 60 FF FF */ li r3, -1 +/* 8024BD6C 00248CCC 38 00 00 01 */ li r0, 1 +/* 8024BD70 00248CD0 38 81 00 A8 */ addi r4, r1, 0xa8 +/* 8024BD74 00248CD4 80 DE 02 DC */ lwz r6, 0x2dc(r30) +/* 8024BD78 00248CD8 38 A0 00 00 */ li r5, 0 +/* 8024BD7C 00248CDC 90 C1 00 A8 */ stw r6, 0xa8(r1) +/* 8024BD80 00248CE0 90 61 00 AC */ stw r3, 0xac(r1) +/* 8024BD84 00248CE4 D0 01 00 B0 */ stfs f0, 0xb0(r1) +/* 8024BD88 00248CE8 98 01 00 B4 */ stb r0, 0xb4(r1) +/* 8024BD8C 00248CEC 90 E1 00 B8 */ stw r7, 0xb8(r1) +/* 8024BD90 00248CF0 90 E1 00 BC */ stw r7, 0xbc(r1) +/* 8024BD94 00248CF4 98 E1 00 C0 */ stb r7, 0xc0(r1) +/* 8024BD98 00248CF8 90 E1 00 C4 */ stw r7, 0xc4(r1) +/* 8024BD9C 00248CFC 90 E1 00 C8 */ stw r7, 0xc8(r1) +/* 8024BDA0 00248D00 90 E1 00 CC */ stw r7, 0xcc(r1) +/* 8024BDA4 00248D04 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 8024BDA8 00248D08 80 63 00 10 */ lwz r3, 0x10(r3) +/* 8024BDAC 00248D0C 4B DE 0F D1 */ bl SetAnimation__9CAnimDataFRC18CAnimPlaybackParmsb +/* 8024BDB0 00248D10 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 8024BDB4 00248D14 38 80 00 01 */ li r4, 1 +/* 8024BDB8 00248D18 4B EC 97 A9 */ bl EnableLooping__10CModelDataFb +/* 8024BDBC 00248D1C 7F C3 F3 78 */ mr r3, r30 +/* 8024BDC0 00248D20 7F E4 FB 78 */ mr r4, r31 +/* 8024BDC4 00248D24 48 00 01 59 */ bl sub_8024bf1c +/* 8024BDC8 00248D28 48 00 00 BC */ b lbl_8024BE84 +lbl_8024BDCC: +/* 8024BDCC 00248D2C 28 03 00 00 */ cmplwi r3, 0 +/* 8024BDD0 00248D30 41 82 00 B4 */ beq lbl_8024BE84 +/* 8024BDD4 00248D34 7F C3 F3 78 */ mr r3, r30 +/* 8024BDD8 00248D38 7F E5 FB 78 */ mr r5, r31 +/* 8024BDDC 00248D3C 38 80 00 0E */ li r4, 0xe +/* 8024BDE0 00248D40 38 C0 FF FF */ li r6, -1 +/* 8024BDE4 00248D44 4B E0 52 DD */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 8024BDE8 00248D48 7F C3 F3 78 */ mr r3, r30 +/* 8024BDEC 00248D4C 4B E0 94 59 */ bl RemoveEmitter__6CActorFv +/* 8024BDF0 00248D50 7F C3 F3 78 */ mr r3, r30 +/* 8024BDF4 00248D54 38 80 00 00 */ li r4, 0 +/* 8024BDF8 00248D58 81 9E 00 00 */ lwz r12, 0(r30) +/* 8024BDFC 00248D5C 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 8024BE00 00248D60 7D 89 03 A6 */ mtctr r12 +/* 8024BE04 00248D64 4E 80 04 21 */ bctrl +/* 8024BE08 00248D68 48 00 00 7C */ b lbl_8024BE84 +lbl_8024BE0C: +/* 8024BE0C 00248D6C 88 1E 02 E8 */ lbz r0, 0x2e8(r30) +/* 8024BE10 00248D70 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8024BE14 00248D74 40 82 00 70 */ bne lbl_8024BE84 +/* 8024BE18 00248D78 38 E0 00 00 */ li r7, 0 +/* 8024BE1C 00248D7C C0 02 B8 90 */ lfs f0, lbl_805AD5B0@sda21(r2) +/* 8024BE20 00248D80 90 FE 02 D0 */ stw r7, 0x2d0(r30) +/* 8024BE24 00248D84 38 60 FF FF */ li r3, -1 +/* 8024BE28 00248D88 38 00 00 01 */ li r0, 1 +/* 8024BE2C 00248D8C 38 81 00 80 */ addi r4, r1, 0x80 +/* 8024BE30 00248D90 80 DE 02 DC */ lwz r6, 0x2dc(r30) +/* 8024BE34 00248D94 38 A0 00 00 */ li r5, 0 +/* 8024BE38 00248D98 90 C1 00 80 */ stw r6, 0x80(r1) +/* 8024BE3C 00248D9C 90 61 00 84 */ stw r3, 0x84(r1) +/* 8024BE40 00248DA0 D0 01 00 88 */ stfs f0, 0x88(r1) +/* 8024BE44 00248DA4 98 01 00 8C */ stb r0, 0x8c(r1) +/* 8024BE48 00248DA8 90 E1 00 90 */ stw r7, 0x90(r1) +/* 8024BE4C 00248DAC 90 E1 00 94 */ stw r7, 0x94(r1) +/* 8024BE50 00248DB0 98 E1 00 98 */ stb r7, 0x98(r1) +/* 8024BE54 00248DB4 90 E1 00 9C */ stw r7, 0x9c(r1) +/* 8024BE58 00248DB8 90 E1 00 A0 */ stw r7, 0xa0(r1) +/* 8024BE5C 00248DBC 90 E1 00 A4 */ stw r7, 0xa4(r1) +/* 8024BE60 00248DC0 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 8024BE64 00248DC4 80 63 00 10 */ lwz r3, 0x10(r3) +/* 8024BE68 00248DC8 4B DE 0F 15 */ bl SetAnimation__9CAnimDataFRC18CAnimPlaybackParmsb +/* 8024BE6C 00248DCC 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 8024BE70 00248DD0 38 80 00 01 */ li r4, 1 +/* 8024BE74 00248DD4 4B EC 96 ED */ bl EnableLooping__10CModelDataFb +/* 8024BE78 00248DD8 7F C3 F3 78 */ mr r3, r30 +/* 8024BE7C 00248DDC 7F E4 FB 78 */ mr r4, r31 +/* 8024BE80 00248DE0 48 00 00 9D */ bl sub_8024bf1c +lbl_8024BE84: +/* 8024BE84 00248DE4 88 1E 02 E8 */ lbz r0, 0x2e8(r30) +/* 8024BE88 00248DE8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8024BE8C 00248DEC 40 82 00 74 */ bne lbl_8024BF00 +/* 8024BE90 00248DF0 7F C3 F3 78 */ mr r3, r30 +/* 8024BE94 00248DF4 7F E4 FB 78 */ mr r4, r31 +/* 8024BE98 00248DF8 81 9E 00 00 */ lwz r12, 0(r30) +/* 8024BE9C 00248DFC 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8024BEA0 00248E00 7D 89 03 A6 */ mtctr r12 +/* 8024BEA4 00248E04 4E 80 04 21 */ bctrl +/* 8024BEA8 00248E08 C0 23 00 00 */ lfs f1, 0(r3) +/* 8024BEAC 00248E0C C0 02 B8 98 */ lfs f0, lbl_805AD5B8@sda21(r2) +/* 8024BEB0 00248E10 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8024BEB4 00248E14 4C 40 13 82 */ cror 2, 0, 2 +/* 8024BEB8 00248E18 40 82 00 48 */ bne lbl_8024BF00 +/* 8024BEBC 00248E1C 88 1E 02 E8 */ lbz r0, 0x2e8(r30) +/* 8024BEC0 00248E20 38 60 00 01 */ li r3, 1 +/* 8024BEC4 00248E24 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8024BEC8 00248E28 7F C3 F3 78 */ mr r3, r30 +/* 8024BECC 00248E2C 98 1E 02 E8 */ stb r0, 0x2e8(r30) +/* 8024BED0 00248E30 7F E5 FB 78 */ mr r5, r31 +/* 8024BED4 00248E34 38 80 00 0E */ li r4, 0xe +/* 8024BED8 00248E38 38 C0 FF FF */ li r6, -1 +/* 8024BEDC 00248E3C 4B E0 51 E5 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 8024BEE0 00248E40 7F C3 F3 78 */ mr r3, r30 +/* 8024BEE4 00248E44 4B E0 93 61 */ bl RemoveEmitter__6CActorFv +/* 8024BEE8 00248E48 7F C3 F3 78 */ mr r3, r30 +/* 8024BEEC 00248E4C 38 80 00 00 */ li r4, 0 +/* 8024BEF0 00248E50 81 9E 00 00 */ lwz r12, 0(r30) +/* 8024BEF4 00248E54 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 8024BEF8 00248E58 7D 89 03 A6 */ mtctr r12 +/* 8024BEFC 00248E5C 4E 80 04 21 */ bctrl +lbl_8024BF00: +/* 8024BF00 00248E60 E3 E1 01 18 */ psq_l f31, 280(r1), 0, qr0 +/* 8024BF04 00248E64 CB E1 01 10 */ lfd f31, 0x110(r1) +/* 8024BF08 00248E68 BB 61 00 FC */ lmw r27, 0xfc(r1) +/* 8024BF0C 00248E6C 80 01 01 24 */ lwz r0, 0x124(r1) +/* 8024BF10 00248E70 7C 08 03 A6 */ mtlr r0 +/* 8024BF14 00248E74 38 21 01 20 */ addi r1, r1, 0x120 +/* 8024BF18 00248E78 4E 80 00 20 */ blr + +.global sub_8024bf1c +sub_8024bf1c: +/* 8024BF1C 00248E7C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024BF20 00248E80 7C 08 02 A6 */ mflr r0 +/* 8024BF24 00248E84 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024BF28 00248E88 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024BF2C 00248E8C 80 A3 00 64 */ lwz r5, 0x64(r3) +/* 8024BF30 00248E90 80 64 09 00 */ lwz r3, 0x900(r4) +/* 8024BF34 00248E94 83 E5 00 10 */ lwz r31, 0x10(r5) +/* 8024BF38 00248E98 48 0C 65 A5 */ bl Float__9CRandom16Fv +/* 8024BF3C 00248E9C C0 42 B8 A0 */ lfs f2, lbl_805AD5C0@sda21(r2) +/* 8024BF40 00248EA0 7F E3 FB 78 */ mr r3, r31 +/* 8024BF44 00248EA4 C0 02 B8 9C */ lfs f0, lbl_805AD5BC@sda21(r2) +/* 8024BF48 00248EA8 EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 8024BF4C 00248EAC 4B DD F5 0D */ bl MultiplyPlaybackRate__9CAnimDataFf +/* 8024BF50 00248EB0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024BF54 00248EB4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024BF58 00248EB8 7C 08 03 A6 */ mtlr r0 +/* 8024BF5C 00248EBC 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024BF60 00248EC0 4E 80 00 20 */ blr + +.global GetTouchBounds__10CAmbientAICFv +GetTouchBounds__10CAmbientAICFv: +/* 8024BF64 00248EC4 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8024BF68 00248EC8 7C 08 02 A6 */ mflr r0 +/* 8024BF6C 00248ECC 90 01 00 34 */ stw r0, 0x34(r1) +/* 8024BF70 00248ED0 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8024BF74 00248ED4 7C 7F 1B 78 */ mr r31, r3 +/* 8024BF78 00248ED8 88 04 00 30 */ lbz r0, 0x30(r4) +/* 8024BF7C 00248EDC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8024BF80 00248EE0 41 82 00 50 */ beq lbl_8024BFD0 +/* 8024BF84 00248EE4 38 61 00 08 */ addi r3, r1, 8 +/* 8024BF88 00248EE8 4B EC E9 A5 */ bl GetBoundingBox__13CPhysicsActorCFv +/* 8024BF8C 00248EEC 38 00 00 01 */ li r0, 1 +/* 8024BF90 00248EF0 28 1F 00 00 */ cmplwi r31, 0 +/* 8024BF94 00248EF4 98 1F 00 18 */ stb r0, 0x18(r31) +/* 8024BF98 00248EF8 41 82 00 40 */ beq lbl_8024BFD8 +/* 8024BF9C 00248EFC C0 01 00 08 */ lfs f0, 8(r1) +/* 8024BFA0 00248F00 D0 1F 00 00 */ stfs f0, 0(r31) +/* 8024BFA4 00248F04 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 8024BFA8 00248F08 D0 1F 00 04 */ stfs f0, 4(r31) +/* 8024BFAC 00248F0C C0 01 00 10 */ lfs f0, 0x10(r1) +/* 8024BFB0 00248F10 D0 1F 00 08 */ stfs f0, 8(r31) +/* 8024BFB4 00248F14 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 8024BFB8 00248F18 D0 1F 00 0C */ stfs f0, 0xc(r31) +/* 8024BFBC 00248F1C C0 01 00 18 */ lfs f0, 0x18(r1) +/* 8024BFC0 00248F20 D0 1F 00 10 */ stfs f0, 0x10(r31) +/* 8024BFC4 00248F24 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 8024BFC8 00248F28 D0 1F 00 14 */ stfs f0, 0x14(r31) +/* 8024BFCC 00248F2C 48 00 00 0C */ b lbl_8024BFD8 +lbl_8024BFD0: +/* 8024BFD0 00248F30 38 00 00 00 */ li r0, 0 +/* 8024BFD4 00248F34 98 1F 00 18 */ stb r0, 0x18(r31) +lbl_8024BFD8: +/* 8024BFD8 00248F38 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8024BFDC 00248F3C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8024BFE0 00248F40 7C 08 03 A6 */ mtlr r0 +/* 8024BFE4 00248F44 38 21 00 30 */ addi r1, r1, 0x30 +/* 8024BFE8 00248F48 4E 80 00 20 */ blr + +.global Touch__10CAmbientAIFR6CActorR13CStateManager +Touch__10CAmbientAIFR6CActorR13CStateManager: +/* 8024BFEC 00248F4C 4E 80 00 20 */ blr + +.global GetDamageVulnerability__10CAmbientAICFv +GetDamageVulnerability__10CAmbientAICFv: +/* 8024BFF0 00248F50 38 63 02 68 */ addi r3, r3, 0x268 +/* 8024BFF4 00248F54 4E 80 00 20 */ blr + +.global HealthInfo__10CAmbientAIFR13CStateManager +HealthInfo__10CAmbientAIFR13CStateManager: +/* 8024BFF8 00248F58 38 63 02 60 */ addi r3, r3, 0x260 +/* 8024BFFC 00248F5C 4E 80 00 20 */ blr + +.global __ct__10CAmbientAI +__ct__10CAmbientAI: +/* 8024C000 00248F60 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 8024C004 00248F64 7C 08 02 A6 */ mflr r0 +/* 8024C008 00248F68 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 8024C00C 00248F6C DB E1 00 B0 */ stfd f31, 0xb0(r1) +/* 8024C010 00248F70 F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0 +/* 8024C014 00248F74 DB C1 00 A0 */ stfd f30, 0xa0(r1) +/* 8024C018 00248F78 F3 C1 00 A8 */ psq_st f30, 168(r1), 0, qr0 +/* 8024C01C 00248F7C DB A1 00 90 */ stfd f29, 0x90(r1) +/* 8024C020 00248F80 F3 A1 00 98 */ psq_st f29, 152(r1), 0, qr0 +/* 8024C024 00248F84 BE 21 00 54 */ stmw r17, 0x54(r1) +/* 8024C028 00248F88 FF A0 08 90 */ fmr f29, f1 +/* 8024C02C 00248F8C 83 21 00 C8 */ lwz r25, 0xc8(r1) +/* 8024C030 00248F90 FF C0 10 90 */ fmr f30, f2 +/* 8024C034 00248F94 83 41 00 CC */ lwz r26, 0xcc(r1) +/* 8024C038 00248F98 FF E0 18 90 */ fmr f31, f3 +/* 8024C03C 00248F9C 83 61 00 D0 */ lwz r27, 0xd0(r1) +/* 8024C040 00248FA0 83 81 00 D4 */ lwz r28, 0xd4(r1) +/* 8024C044 00248FA4 7C 72 1B 78 */ mr r18, r3 +/* 8024C048 00248FA8 83 A1 00 D8 */ lwz r29, 0xd8(r1) +/* 8024C04C 00248FAC 7C 91 23 78 */ mr r17, r4 +/* 8024C050 00248FB0 8B C1 00 DF */ lbz r30, 0xdf(r1) +/* 8024C054 00248FB4 7C B3 2B 78 */ mr r19, r5 +/* 8024C058 00248FB8 7C D4 33 78 */ mr r20, r6 +/* 8024C05C 00248FBC 7C F5 3B 78 */ mr r21, r7 +/* 8024C060 00248FC0 7D 16 43 78 */ mr r22, r8 +/* 8024C064 00248FC4 7D 37 4B 78 */ mr r23, r9 +/* 8024C068 00248FC8 7D 58 53 78 */ mr r24, r10 +/* 8024C06C 00248FCC 4B DC F4 C9 */ bl Identity__10CAxisAngleFv +/* 8024C070 00248FD0 7C 7F 1B 78 */ mr r31, r3 +/* 8024C074 00248FD4 4B DC F4 C1 */ bl Identity__10CAxisAngleFv +/* 8024C078 00248FD8 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8024C07C 00248FDC C4 64 66 A0 */ lfsu f3, skZero3f@l(r4) +/* 8024C080 00248FE0 A1 71 00 00 */ lhz r11, 0(r17) +/* 8024C084 00248FE4 38 01 00 1C */ addi r0, r1, 0x1c +/* 8024C088 00248FE8 C0 84 00 04 */ lfs f4, 4(r4) +/* 8024C08C 00248FEC 7F C5 F3 78 */ mr r5, r30 +/* 8024C090 00248FF0 C0 A4 00 08 */ lfs f5, 8(r4) +/* 8024C094 00248FF4 7E 66 9B 78 */ mr r6, r19 +/* 8024C098 00248FF8 D0 61 00 1C */ stfs f3, 0x1c(r1) +/* 8024C09C 00248FFC 7E 87 A3 78 */ mr r7, r20 +/* 8024C0A0 00249000 C0 22 B8 A4 */ lfs f1, lbl_805AD5C4@sda21(r2) +/* 8024C0A4 00249004 7E A8 AB 78 */ mr r8, r21 +/* 8024C0A8 00249008 D0 81 00 20 */ stfs f4, 0x20(r1) +/* 8024C0AC 0024900C 7E C9 B3 78 */ mr r9, r22 +/* 8024C0B0 00249010 C0 42 B8 A8 */ lfs f2, lbl_805AD5C8@sda21(r2) +/* 8024C0B4 00249014 7F 0A C3 78 */ mr r10, r24 +/* 8024C0B8 00249018 D0 A1 00 24 */ stfs f5, 0x24(r1) +/* 8024C0BC 0024901C 38 81 00 18 */ addi r4, r1, 0x18 +/* 8024C0C0 00249020 C0 03 00 00 */ lfs f0, 0(r3) +/* 8024C0C4 00249024 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 8024C0C8 00249028 C0 03 00 04 */ lfs f0, 4(r3) +/* 8024C0CC 0024902C D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 8024C0D0 00249030 C0 03 00 08 */ lfs f0, 8(r3) +/* 8024C0D4 00249034 7E 43 93 78 */ mr r3, r18 +/* 8024C0D8 00249038 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 8024C0DC 0024903C D0 61 00 34 */ stfs f3, 0x34(r1) +/* 8024C0E0 00249040 D0 81 00 38 */ stfs f4, 0x38(r1) +/* 8024C0E4 00249044 D0 A1 00 3C */ stfs f5, 0x3c(r1) +/* 8024C0E8 00249048 C0 1F 00 00 */ lfs f0, 0(r31) +/* 8024C0EC 0024904C D0 01 00 40 */ stfs f0, 0x40(r1) +/* 8024C0F0 00249050 C0 1F 00 04 */ lfs f0, 4(r31) +/* 8024C0F4 00249054 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 8024C0F8 00249058 C0 1F 00 08 */ lfs f0, 8(r31) +/* 8024C0FC 0024905C D0 01 00 48 */ stfs f0, 0x48(r1) +/* 8024C100 00249060 D3 A1 00 4C */ stfs f29, 0x4c(r1) +/* 8024C104 00249064 B1 61 00 18 */ sth r11, 0x18(r1) +/* 8024C108 00249068 92 E1 00 08 */ stw r23, 8(r1) +/* 8024C10C 0024906C 90 01 00 0C */ stw r0, 0xc(r1) +/* 8024C110 00249070 93 61 00 10 */ stw r27, 0x10(r1) +/* 8024C114 00249074 4B ED 03 9D */ bl "__ct__13CPhysicsActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC6CAABoxRC10SMoverDataRC16CActorParametersff" +/* 8024C118 00249078 3C 60 80 3F */ lis r3, lbl_803E8CB0@ha +/* 8024C11C 0024907C 38 A0 00 00 */ li r5, 0 +/* 8024C120 00249080 38 03 8C B0 */ addi r0, r3, lbl_803E8CB0@l +/* 8024C124 00249084 38 80 00 01 */ li r4, 1 +/* 8024C128 00249088 90 12 00 00 */ stw r0, 0(r18) +/* 8024C12C 0024908C C0 19 00 00 */ lfs f0, 0(r25) +/* 8024C130 00249090 D0 12 02 58 */ stfs f0, 0x258(r18) +/* 8024C134 00249094 C0 19 00 04 */ lfs f0, 4(r25) +/* 8024C138 00249098 D0 12 02 5C */ stfs f0, 0x25c(r18) +/* 8024C13C 0024909C C0 19 00 00 */ lfs f0, 0(r25) +/* 8024C140 002490A0 D0 12 02 60 */ stfs f0, 0x260(r18) +/* 8024C144 002490A4 C0 19 00 04 */ lfs f0, 4(r25) +/* 8024C148 002490A8 D0 12 02 64 */ stfs f0, 0x264(r18) +/* 8024C14C 002490AC 80 7A 00 00 */ lwz r3, 0(r26) +/* 8024C150 002490B0 80 1A 00 04 */ lwz r0, 4(r26) +/* 8024C154 002490B4 90 72 02 68 */ stw r3, 0x268(r18) +/* 8024C158 002490B8 90 12 02 6C */ stw r0, 0x26c(r18) +/* 8024C15C 002490BC 80 7A 00 08 */ lwz r3, 8(r26) +/* 8024C160 002490C0 80 1A 00 0C */ lwz r0, 0xc(r26) +/* 8024C164 002490C4 90 72 02 70 */ stw r3, 0x270(r18) +/* 8024C168 002490C8 90 12 02 74 */ stw r0, 0x274(r18) +/* 8024C16C 002490CC 80 7A 00 10 */ lwz r3, 0x10(r26) +/* 8024C170 002490D0 80 1A 00 14 */ lwz r0, 0x14(r26) +/* 8024C174 002490D4 90 72 02 78 */ stw r3, 0x278(r18) +/* 8024C178 002490D8 90 12 02 7C */ stw r0, 0x27c(r18) +/* 8024C17C 002490DC 80 7A 00 18 */ lwz r3, 0x18(r26) +/* 8024C180 002490E0 80 1A 00 1C */ lwz r0, 0x1c(r26) +/* 8024C184 002490E4 90 72 02 80 */ stw r3, 0x280(r18) +/* 8024C188 002490E8 90 12 02 84 */ stw r0, 0x284(r18) +/* 8024C18C 002490EC 80 7A 00 20 */ lwz r3, 0x20(r26) +/* 8024C190 002490F0 80 1A 00 24 */ lwz r0, 0x24(r26) +/* 8024C194 002490F4 90 72 02 88 */ stw r3, 0x288(r18) +/* 8024C198 002490F8 90 12 02 8C */ stw r0, 0x28c(r18) +/* 8024C19C 002490FC 80 7A 00 28 */ lwz r3, 0x28(r26) +/* 8024C1A0 00249100 80 1A 00 2C */ lwz r0, 0x2c(r26) +/* 8024C1A4 00249104 90 72 02 90 */ stw r3, 0x290(r18) +/* 8024C1A8 00249108 90 12 02 94 */ stw r0, 0x294(r18) +/* 8024C1AC 0024910C 80 7A 00 30 */ lwz r3, 0x30(r26) +/* 8024C1B0 00249110 80 1A 00 34 */ lwz r0, 0x34(r26) +/* 8024C1B4 00249114 90 72 02 98 */ stw r3, 0x298(r18) +/* 8024C1B8 00249118 90 12 02 9C */ stw r0, 0x29c(r18) +/* 8024C1BC 0024911C 80 1A 00 38 */ lwz r0, 0x38(r26) +/* 8024C1C0 00249120 90 12 02 A0 */ stw r0, 0x2a0(r18) +/* 8024C1C4 00249124 80 7A 00 3C */ lwz r3, 0x3c(r26) +/* 8024C1C8 00249128 80 1A 00 40 */ lwz r0, 0x40(r26) +/* 8024C1CC 0024912C 90 72 02 A4 */ stw r3, 0x2a4(r18) +/* 8024C1D0 00249130 90 12 02 A8 */ stw r0, 0x2a8(r18) +/* 8024C1D4 00249134 80 7A 00 44 */ lwz r3, 0x44(r26) +/* 8024C1D8 00249138 80 1A 00 48 */ lwz r0, 0x48(r26) +/* 8024C1DC 0024913C 90 72 02 AC */ stw r3, 0x2ac(r18) +/* 8024C1E0 00249140 90 12 02 B0 */ stw r0, 0x2b0(r18) +/* 8024C1E4 00249144 80 7A 00 4C */ lwz r3, 0x4c(r26) +/* 8024C1E8 00249148 80 1A 00 50 */ lwz r0, 0x50(r26) +/* 8024C1EC 0024914C 90 72 02 B4 */ stw r3, 0x2b4(r18) +/* 8024C1F0 00249150 90 12 02 B8 */ stw r0, 0x2b8(r18) +/* 8024C1F4 00249154 80 7A 00 54 */ lwz r3, 0x54(r26) +/* 8024C1F8 00249158 80 1A 00 58 */ lwz r0, 0x58(r26) +/* 8024C1FC 0024915C 90 72 02 BC */ stw r3, 0x2bc(r18) +/* 8024C200 00249160 90 12 02 C0 */ stw r0, 0x2c0(r18) +/* 8024C204 00249164 80 1A 00 5C */ lwz r0, 0x5c(r26) +/* 8024C208 00249168 90 12 02 C4 */ stw r0, 0x2c4(r18) +/* 8024C20C 0024916C 80 1A 00 60 */ lwz r0, 0x60(r26) +/* 8024C210 00249170 90 12 02 C8 */ stw r0, 0x2c8(r18) +/* 8024C214 00249174 80 1A 00 64 */ lwz r0, 0x64(r26) +/* 8024C218 00249178 90 12 02 CC */ stw r0, 0x2cc(r18) +/* 8024C21C 0024917C 90 B2 02 D0 */ stw r5, 0x2d0(r18) +/* 8024C220 00249180 D3 D2 02 D4 */ stfs f30, 0x2d4(r18) +/* 8024C224 00249184 D3 F2 02 D8 */ stfs f31, 0x2d8(r18) +/* 8024C228 00249188 80 72 00 64 */ lwz r3, 0x64(r18) +/* 8024C22C 0024918C 80 63 00 10 */ lwz r3, 0x10(r3) +/* 8024C230 00249190 A8 03 02 08 */ lha r0, 0x208(r3) +/* 8024C234 00249194 90 12 02 DC */ stw r0, 0x2dc(r18) +/* 8024C238 00249198 93 92 02 E0 */ stw r28, 0x2e0(r18) +/* 8024C23C 0024919C 93 B2 02 E4 */ stw r29, 0x2e4(r18) +/* 8024C240 002491A0 88 12 02 E8 */ lbz r0, 0x2e8(r18) +/* 8024C244 002491A4 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 8024C248 002491A8 98 12 02 E8 */ stb r0, 0x2e8(r18) +/* 8024C24C 002491AC 88 12 02 E8 */ lbz r0, 0x2e8(r18) +/* 8024C250 002491B0 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 8024C254 002491B4 98 12 02 E8 */ stb r0, 0x2e8(r18) +/* 8024C258 002491B8 80 72 00 64 */ lwz r3, 0x64(r18) +/* 8024C25C 002491BC 4B EC 93 05 */ bl EnableLooping__10CModelDataFb +/* 8024C260 002491C0 7E 43 93 78 */ mr r3, r18 +/* 8024C264 002491C4 E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0 +/* 8024C268 002491C8 CB E1 00 B0 */ lfd f31, 0xb0(r1) +/* 8024C26C 002491CC E3 C1 00 A8 */ psq_l f30, 168(r1), 0, qr0 +/* 8024C270 002491D0 CB C1 00 A0 */ lfd f30, 0xa0(r1) +/* 8024C274 002491D4 E3 A1 00 98 */ psq_l f29, 152(r1), 0, qr0 +/* 8024C278 002491D8 CB A1 00 90 */ lfd f29, 0x90(r1) +/* 8024C27C 002491DC BA 21 00 54 */ lmw r17, 0x54(r1) +/* 8024C280 002491E0 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 8024C284 002491E4 7C 08 03 A6 */ mtlr r0 +/* 8024C288 002491E8 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 8024C28C 002491EC 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Enemies/CAtomicAlpha.s b/asm/Kyoto_CWD/Enemies/CAtomicAlpha.s new file mode 100644 index 00000000..c72d4642 --- /dev/null +++ b/asm/Kyoto_CWD/Enemies/CAtomicAlpha.s @@ -0,0 +1,1040 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__12CAtomicAlphaFv +__dt__12CAtomicAlphaFv: +/* 80244BA8 00241B08 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80244BAC 00241B0C 7C 08 02 A6 */ mflr r0 +/* 80244BB0 00241B10 90 01 00 24 */ stw r0, 0x24(r1) +/* 80244BB4 00241B14 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80244BB8 00241B18 7C 9F 23 78 */ mr r31, r4 +/* 80244BBC 00241B1C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80244BC0 00241B20 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80244BC4 00241B24 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80244BC8 00241B28 93 81 00 10 */ stw r28, 0x10(r1) +/* 80244BCC 00241B2C 41 82 01 04 */ beq lbl_80244CD0 +/* 80244BD0 00241B30 3C 60 80 3F */ lis r3, lbl_803E88A8@ha +/* 80244BD4 00241B34 34 1E 06 DC */ addic. r0, r30, 0x6dc +/* 80244BD8 00241B38 38 03 88 A8 */ addi r0, r3, lbl_803E88A8@l +/* 80244BDC 00241B3C 90 1E 00 00 */ stw r0, 0(r30) +/* 80244BE0 00241B40 41 82 00 40 */ beq lbl_80244C20 +/* 80244BE4 00241B44 3B 9E 06 E0 */ addi r28, r30, 0x6e0 +/* 80244BE8 00241B48 3B A0 00 00 */ li r29, 0 +/* 80244BEC 00241B4C 48 00 00 20 */ b lbl_80244C0C +lbl_80244BF0: +/* 80244BF0 00241B50 28 1C 00 00 */ cmplwi r28, 0 +/* 80244BF4 00241B54 41 82 00 10 */ beq lbl_80244C04 +/* 80244BF8 00241B58 41 82 00 0C */ beq lbl_80244C04 +/* 80244BFC 00241B5C 7F 83 E3 78 */ mr r3, r28 +/* 80244C00 00241B60 48 0F 8E E1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80244C04: +/* 80244C04 00241B64 3B 9C 00 18 */ addi r28, r28, 0x18 +/* 80244C08 00241B68 3B BD 00 01 */ addi r29, r29, 1 +lbl_80244C0C: +/* 80244C0C 00241B6C 80 1E 06 DC */ lwz r0, 0x6dc(r30) +/* 80244C10 00241B70 7C 1D 00 00 */ cmpw r29, r0 +/* 80244C14 00241B74 41 80 FF DC */ blt lbl_80244BF0 +/* 80244C18 00241B78 38 00 00 00 */ li r0, 0 +/* 80244C1C 00241B7C 90 1E 06 DC */ stw r0, 0x6dc(r30) +lbl_80244C20: +/* 80244C20 00241B80 38 7E 06 90 */ addi r3, r30, 0x690 +/* 80244C24 00241B84 38 80 FF FF */ li r4, -1 +/* 80244C28 00241B88 4B ED 1E 25 */ bl __dt__10CModelDataFv +/* 80244C2C 00241B8C 34 1E 06 68 */ addic. r0, r30, 0x668 +/* 80244C30 00241B90 41 82 00 20 */ beq lbl_80244C50 +/* 80244C34 00241B94 34 1E 06 68 */ addic. r0, r30, 0x668 +/* 80244C38 00241B98 41 82 00 18 */ beq lbl_80244C50 +/* 80244C3C 00241B9C 34 1E 06 68 */ addic. r0, r30, 0x668 +/* 80244C40 00241BA0 41 82 00 10 */ beq lbl_80244C50 +/* 80244C44 00241BA4 38 7E 06 68 */ addi r3, r30, 0x668 +/* 80244C48 00241BA8 38 80 00 00 */ li r4, 0 +/* 80244C4C 00241BAC 48 0F C1 F5 */ bl __dt__6CTokenFv +lbl_80244C50: +/* 80244C50 00241BB0 34 1E 05 80 */ addic. r0, r30, 0x580 +/* 80244C54 00241BB4 41 82 00 60 */ beq lbl_80244CB4 +/* 80244C58 00241BB8 34 1E 05 84 */ addic. r0, r30, 0x584 +/* 80244C5C 00241BBC 41 82 00 58 */ beq lbl_80244CB4 +/* 80244C60 00241BC0 80 BE 05 84 */ lwz r5, 0x584(r30) +/* 80244C64 00241BC4 38 60 00 00 */ li r3, 0 +/* 80244C68 00241BC8 2C 05 00 00 */ cmpwi r5, 0 +/* 80244C6C 00241BCC 40 81 00 40 */ ble lbl_80244CAC +/* 80244C70 00241BD0 2C 05 00 08 */ cmpwi r5, 8 +/* 80244C74 00241BD4 38 85 FF F8 */ addi r4, r5, -8 +/* 80244C78 00241BD8 40 81 00 20 */ ble lbl_80244C98 +/* 80244C7C 00241BDC 38 04 00 07 */ addi r0, r4, 7 +/* 80244C80 00241BE0 54 00 E8 FE */ srwi r0, r0, 3 +/* 80244C84 00241BE4 7C 09 03 A6 */ mtctr r0 +/* 80244C88 00241BE8 2C 04 00 00 */ cmpwi r4, 0 +/* 80244C8C 00241BEC 40 81 00 0C */ ble lbl_80244C98 +lbl_80244C90: +/* 80244C90 00241BF0 38 63 00 08 */ addi r3, r3, 8 +/* 80244C94 00241BF4 42 00 FF FC */ bdnz lbl_80244C90 +lbl_80244C98: +/* 80244C98 00241BF8 7C 03 28 50 */ subf r0, r3, r5 +/* 80244C9C 00241BFC 7C 09 03 A6 */ mtctr r0 +/* 80244CA0 00241C00 7C 03 28 00 */ cmpw r3, r5 +/* 80244CA4 00241C04 40 80 00 08 */ bge lbl_80244CAC +lbl_80244CA8: +/* 80244CA8 00241C08 42 00 00 00 */ bdnz lbl_80244CA8 +lbl_80244CAC: +/* 80244CAC 00241C0C 38 00 00 00 */ li r0, 0 +/* 80244CB0 00241C10 90 1E 05 84 */ stw r0, 0x584(r30) +lbl_80244CB4: +/* 80244CB4 00241C14 7F C3 F3 78 */ mr r3, r30 +/* 80244CB8 00241C18 38 80 00 00 */ li r4, 0 +/* 80244CBC 00241C1C 4B E3 28 B5 */ bl __dt__10CPatternedFv +/* 80244CC0 00241C20 7F E0 07 35 */ extsh. r0, r31 +/* 80244CC4 00241C24 40 81 00 0C */ ble lbl_80244CD0 +/* 80244CC8 00241C28 7F C3 F3 78 */ mr r3, r30 +/* 80244CCC 00241C2C 48 0D 0C 65 */ bl Free__7CMemoryFPCv +lbl_80244CD0: +/* 80244CD0 00241C30 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80244CD4 00241C34 7F C3 F3 78 */ mr r3, r30 +/* 80244CD8 00241C38 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80244CDC 00241C3C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80244CE0 00241C40 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80244CE4 00241C44 83 81 00 10 */ lwz r28, 0x10(r1) +/* 80244CE8 00241C48 7C 08 03 A6 */ mtlr r0 +/* 80244CEC 00241C4C 38 21 00 20 */ addi r1, r1, 0x20 +/* 80244CF0 00241C50 4E 80 00 20 */ blr + +.global sub_80244cf4 +sub_80244cf4: +/* 80244CF4 00241C54 38 63 06 68 */ addi r3, r3, 0x668 +/* 80244CF8 00241C58 4E 80 00 20 */ blr + +.global GetSearchPath__12CAtomicAlphaFv +GetSearchPath__12CAtomicAlphaFv: +/* 80244CFC 00241C5C 38 63 05 80 */ addi r3, r3, 0x580 +/* 80244D00 00241C60 4E 80 00 20 */ blr + +.global GetCollisionResponseType__12CAtomicAlphaCFRC9CVector3fRC9CVector3fRC11CWeaponModei +GetCollisionResponseType__12CAtomicAlphaCFRC9CVector3fRC9CVector3fRC11CWeaponModei: +/* 80244D04 00241C64 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80244D08 00241C68 7C 08 02 A6 */ mflr r0 +/* 80244D0C 00241C6C 90 01 00 14 */ stw r0, 0x14(r1) +/* 80244D10 00241C70 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80244D14 00241C74 7C DF 33 78 */ mr r31, r6 +/* 80244D18 00241C78 81 83 00 00 */ lwz r12, 0(r3) +/* 80244D1C 00241C7C 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 80244D20 00241C80 7D 89 03 A6 */ mtctr r12 +/* 80244D24 00241C84 4E 80 04 21 */ bctrl +/* 80244D28 00241C88 7F E4 FB 78 */ mr r4, r31 +/* 80244D2C 00241C8C 38 A0 00 00 */ li r5, 0 +/* 80244D30 00241C90 4B EB D8 55 */ bl WeaponHits__20CDamageVulnerabilityCFRC11CWeaponModei +/* 80244D34 00241C94 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80244D38 00241C98 38 60 00 5D */ li r3, 0x5d +/* 80244D3C 00241C9C 41 82 00 08 */ beq lbl_80244D44 +/* 80244D40 00241CA0 38 60 00 2B */ li r3, 0x2b +lbl_80244D44: +/* 80244D44 00241CA4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80244D48 00241CA8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80244D4C 00241CAC 7C 08 03 A6 */ mtlr r0 +/* 80244D50 00241CB0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80244D54 00241CB4 4E 80 00 20 */ blr + +.global Attack__12CAtomicAlphaFR13CStateManager9EStateMsgf +Attack__12CAtomicAlphaFR13CStateManager9EStateMsgf: +/* 80244D58 00241CB8 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80244D5C 00241CBC 7C 08 02 A6 */ mflr r0 +/* 80244D60 00241CC0 2C 05 00 01 */ cmpwi r5, 1 +/* 80244D64 00241CC4 90 01 00 54 */ stw r0, 0x54(r1) +/* 80244D68 00241CC8 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 80244D6C 00241CCC 7C 7F 1B 78 */ mr r31, r3 +/* 80244D70 00241CD0 41 82 00 30 */ beq lbl_80244DA0 +/* 80244D74 00241CD4 40 80 00 10 */ bge lbl_80244D84 +/* 80244D78 00241CD8 2C 05 00 00 */ cmpwi r5, 0 +/* 80244D7C 00241CDC 40 80 00 14 */ bge lbl_80244D90 +/* 80244D80 00241CE0 48 00 00 B4 */ b lbl_80244E34 +lbl_80244D84: +/* 80244D84 00241CE4 2C 05 00 03 */ cmpwi r5, 3 +/* 80244D88 00241CE8 40 80 00 AC */ bge lbl_80244E34 +/* 80244D8C 00241CEC 48 00 00 9C */ b lbl_80244E28 +lbl_80244D90: +/* 80244D90 00241CF0 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 80244D94 00241CF4 38 80 00 08 */ li r4, 8 +/* 80244D98 00241CF8 4B EF 5C 41 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 80244D9C 00241CFC 48 00 00 98 */ b lbl_80244E34 +lbl_80244DA0: +/* 80244DA0 00241D00 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 80244DA4 00241D04 38 61 00 14 */ addi r3, r1, 0x14 +/* 80244DA8 00241D08 48 03 FF D5 */ bl GetEyePosition__7CPlayerCFv +/* 80244DAC 00241D0C C0 41 00 14 */ lfs f2, 0x14(r1) +/* 80244DB0 00241D10 7F E5 FB 78 */ mr r5, r31 +/* 80244DB4 00241D14 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 80244DB8 00241D18 38 61 00 08 */ addi r3, r1, 8 +/* 80244DBC 00241D1C C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 80244DC0 00241D20 38 9F 06 64 */ addi r4, r31, 0x664 +/* 80244DC4 00241D24 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 80244DC8 00241D28 38 C1 00 20 */ addi r6, r1, 0x20 +/* 80244DCC 00241D2C D0 21 00 24 */ stfs f1, 0x24(r1) +/* 80244DD0 00241D30 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 80244DD4 00241D34 4B EF 9E 4D */ bl Seek__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3f +/* 80244DD8 00241D38 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80244DDC 00241D3C C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) +/* 80244DE0 00241D40 C0 C1 00 08 */ lfs f6, 8(r1) +/* 80244DE4 00241D44 38 81 00 2C */ addi r4, r1, 0x2c +/* 80244DE8 00241D48 C0 A1 00 0C */ lfs f5, 0xc(r1) +/* 80244DEC 00241D4C C0 81 00 10 */ lfs f4, 0x10(r1) +/* 80244DF0 00241D50 C0 43 00 04 */ lfs f2, 4(r3) +/* 80244DF4 00241D54 C0 23 00 08 */ lfs f1, 8(r3) +/* 80244DF8 00241D58 C0 02 B8 40 */ lfs f0, lbl_805AD560@sda21(r2) +/* 80244DFC 00241D5C D0 C1 00 2C */ stfs f6, 0x2c(r1) +/* 80244E00 00241D60 D0 A1 00 30 */ stfs f5, 0x30(r1) +/* 80244E04 00241D64 D0 81 00 34 */ stfs f4, 0x34(r1) +/* 80244E08 00241D68 D0 61 00 38 */ stfs f3, 0x38(r1) +/* 80244E0C 00241D6C D0 41 00 3C */ stfs f2, 0x3c(r1) +/* 80244E10 00241D70 D0 21 00 40 */ stfs f1, 0x40(r1) +/* 80244E14 00241D74 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 80244E18 00241D78 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 80244E1C 00241D7C 38 63 00 04 */ addi r3, r3, 4 +/* 80244E20 00241D80 4B EE C8 F9 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 80244E24 00241D84 48 00 00 10 */ b lbl_80244E34 +lbl_80244E28: +/* 80244E28 00241D88 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 80244E2C 00241D8C 38 80 00 01 */ li r4, 1 +/* 80244E30 00241D90 4B EF 5B A9 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +lbl_80244E34: +/* 80244E34 00241D94 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80244E38 00241D98 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 80244E3C 00241D9C 7C 08 03 A6 */ mtlr r0 +/* 80244E40 00241DA0 38 21 00 50 */ addi r1, r1, 0x50 +/* 80244E44 00241DA4 4E 80 00 20 */ blr + +.global AggressionCheck__12CAtomicAlphaFR13CStateManagerf +AggressionCheck__12CAtomicAlphaFR13CStateManagerf: +/* 80244E48 00241DA8 88 03 05 68 */ lbz r0, 0x568(r3) +/* 80244E4C 00241DAC 80 64 08 4C */ lwz r3, 0x84c(r4) +/* 80244E50 00241DB0 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 80244E54 00241DB4 80 63 04 90 */ lwz r3, 0x490(r3) +/* 80244E58 00241DB8 41 82 00 30 */ beq lbl_80244E88 +/* 80244E5C 00241DBC 88 03 08 34 */ lbz r0, 0x834(r3) +/* 80244E60 00241DC0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80244E64 00241DC4 41 82 00 0C */ beq lbl_80244E70 +/* 80244E68 00241DC8 C0 23 03 40 */ lfs f1, 0x340(r3) +/* 80244E6C 00241DCC 48 00 00 08 */ b lbl_80244E74 +lbl_80244E70: +/* 80244E70 00241DD0 C0 22 B8 44 */ lfs f1, lbl_805AD564@sda21(r2) +lbl_80244E74: +/* 80244E74 00241DD4 C0 02 B8 48 */ lfs f0, lbl_805AD568@sda21(r2) +/* 80244E78 00241DD8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80244E7C 00241DDC 40 81 00 0C */ ble lbl_80244E88 +/* 80244E80 00241DE0 38 60 00 01 */ li r3, 1 +/* 80244E84 00241DE4 4E 80 00 20 */ blr +lbl_80244E88: +/* 80244E88 00241DE8 38 60 00 00 */ li r3, 0 +/* 80244E8C 00241DEC 4E 80 00 20 */ blr + +.global DoUserAnimEvent__12CAtomicAlphaFR13CStateManagerRC13CInt32POINode14EUserEventType +DoUserAnimEvent__12CAtomicAlphaFR13CStateManagerRC13CInt32POINode14EUserEventType: +/* 80244E90 00241DF0 94 21 FE D0 */ stwu r1, -0x130(r1) +/* 80244E94 00241DF4 7C 08 02 A6 */ mflr r0 +/* 80244E98 00241DF8 90 01 01 34 */ stw r0, 0x134(r1) +/* 80244E9C 00241DFC DB E1 01 20 */ stfd f31, 0x120(r1) +/* 80244EA0 00241E00 F3 E1 01 28 */ psq_st f31, 296(r1), 0, qr0 +/* 80244EA4 00241E04 93 E1 01 1C */ stw r31, 0x11c(r1) +/* 80244EA8 00241E08 93 C1 01 18 */ stw r30, 0x118(r1) +/* 80244EAC 00241E0C 93 A1 01 14 */ stw r29, 0x114(r1) +/* 80244EB0 00241E10 93 81 01 10 */ stw r28, 0x110(r1) +/* 80244EB4 00241E14 7C DF 33 79 */ or. r31, r6, r6 +/* 80244EB8 00241E18 FF E0 08 90 */ fmr f31, f1 +/* 80244EBC 00241E1C 7C BE 2B 78 */ mr r30, r5 +/* 80244EC0 00241E20 7C 7C 1B 78 */ mr r28, r3 +/* 80244EC4 00241E24 7C 9D 23 78 */ mr r29, r4 +/* 80244EC8 00241E28 38 A0 00 00 */ li r5, 0 +/* 80244ECC 00241E2C 41 82 00 08 */ beq lbl_80244ED4 +/* 80244ED0 00241E30 48 00 01 34 */ b lbl_80245004 +lbl_80244ED4: +/* 80244ED4 00241E34 7F 84 E3 78 */ mr r4, r28 +/* 80244ED8 00241E38 38 61 00 74 */ addi r3, r1, 0x74 +/* 80244EDC 00241E3C 38 BE 00 3C */ addi r5, r30, 0x3c +/* 80244EE0 00241E40 4B E3 3A 99 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80244EE4 00241E44 38 61 00 D4 */ addi r3, r1, 0xd4 +/* 80244EE8 00241E48 38 81 00 74 */ addi r4, r1, 0x74 +/* 80244EEC 00241E4C 48 0C DC 89 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80244EF0 00241E50 3C 60 80 5A */ lis r3, lbl_805A6700@ha +/* 80244EF4 00241E54 C0 A1 01 00 */ lfs f5, 0x100(r1) +/* 80244EF8 00241E58 38 83 67 00 */ addi r4, r3, lbl_805A6700@l +/* 80244EFC 00241E5C C0 81 00 E0 */ lfs f4, 0xe0(r1) +/* 80244F00 00241E60 C0 61 00 F0 */ lfs f3, 0xf0(r1) +/* 80244F04 00241E64 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 80244F08 00241E68 C0 44 00 04 */ lfs f2, 4(r4) +/* 80244F0C 00241E6C 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 80244F10 00241E70 C0 24 00 08 */ lfs f1, 8(r4) +/* 80244F14 00241E74 38 61 00 44 */ addi r3, r1, 0x44 +/* 80244F18 00241E78 C0 04 00 00 */ lfs f0, 0(r4) +/* 80244F1C 00241E7C EC 43 10 2A */ fadds f2, f3, f2 +/* 80244F20 00241E80 EC 25 08 2A */ fadds f1, f5, f1 +/* 80244F24 00241E84 D0 81 00 38 */ stfs f4, 0x38(r1) +/* 80244F28 00241E88 EC 04 00 2A */ fadds f0, f4, f0 +/* 80244F2C 00241E8C 38 81 00 38 */ addi r4, r1, 0x38 +/* 80244F30 00241E90 D0 61 00 3C */ stfs f3, 0x3c(r1) +/* 80244F34 00241E94 38 A1 00 2C */ addi r5, r1, 0x2c +/* 80244F38 00241E98 D0 A1 00 40 */ stfs f5, 0x40(r1) +/* 80244F3C 00241E9C D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 80244F40 00241EA0 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 80244F44 00241EA4 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 80244F48 00241EA8 48 0C EB C9 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 80244F4C 00241EAC 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 80244F50 00241EB0 38 81 00 44 */ addi r4, r1, 0x44 +/* 80244F54 00241EB4 48 0C DC 21 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80244F58 00241EB8 C0 02 B8 40 */ lfs f0, lbl_805AD560@sda21(r2) +/* 80244F5C 00241EBC 39 60 00 00 */ li r11, 0 +/* 80244F60 00241EC0 99 61 00 28 */ stb r11, 0x28(r1) +/* 80244F64 00241EC4 38 01 00 10 */ addi r0, r1, 0x10 +/* 80244F68 00241EC8 A1 42 C5 FC */ lhz r10, lbl_805AE31C@sda21(r2) +/* 80244F6C 00241ECC 7F 83 E3 78 */ mr r3, r28 +/* 80244F70 00241ED0 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 80244F74 00241ED4 7F A5 EB 78 */ mr r5, r29 +/* 80244F78 00241ED8 38 81 00 A4 */ addi r4, r1, 0xa4 +/* 80244F7C 00241EDC 39 21 00 1C */ addi r9, r1, 0x1c +/* 80244F80 00241EE0 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 80244F84 00241EE4 38 C0 00 04 */ li r6, 4 +/* 80244F88 00241EE8 38 E0 00 00 */ li r7, 0 +/* 80244F8C 00241EEC 39 00 00 00 */ li r8, 0 +/* 80244F90 00241EF0 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 80244F94 00241EF4 91 61 00 08 */ stw r11, 8(r1) +/* 80244F98 00241EF8 90 01 00 0C */ stw r0, 0xc(r1) +/* 80244F9C 00241EFC 4B E3 2A 5D */ bl "LaunchProjectile__10CPatternedFRC12CTransform4fR13CStateManageriQ27CWeapon17EProjectileAttribbRCQ24rstl50optional_object<31TLockedToken<15CGenDescription>>sbRC9CVector3f" +/* 80244FA0 00241F00 88 01 00 28 */ lbz r0, 0x28(r1) +/* 80244FA4 00241F04 28 00 00 00 */ cmplwi r0, 0 +/* 80244FA8 00241F08 41 82 00 1C */ beq lbl_80244FC4 +/* 80244FAC 00241F0C 34 61 00 1C */ addic. r3, r1, 0x1c +/* 80244FB0 00241F10 41 82 00 14 */ beq lbl_80244FC4 +/* 80244FB4 00241F14 28 03 00 00 */ cmplwi r3, 0 +/* 80244FB8 00241F18 41 82 00 0C */ beq lbl_80244FC4 +/* 80244FBC 00241F1C 38 80 00 00 */ li r4, 0 +/* 80244FC0 00241F20 48 0F BE 81 */ bl __dt__6CTokenFv +lbl_80244FC4: +/* 80244FC4 00241F24 38 00 00 00 */ li r0, 0 +/* 80244FC8 00241F28 C0 02 B8 44 */ lfs f0, lbl_805AD564@sda21(r2) +/* 80244FCC 00241F2C 98 01 00 28 */ stb r0, 0x28(r1) +/* 80244FD0 00241F30 38 A0 00 01 */ li r5, 1 +/* 80244FD4 00241F34 D0 1C 05 78 */ stfs f0, 0x578(r28) +/* 80244FD8 00241F38 80 1C 05 7C */ lwz r0, 0x57c(r28) +/* 80244FDC 00241F3C 1C 00 00 18 */ mulli r0, r0, 0x18 +/* 80244FE0 00241F40 7C 7C 02 14 */ add r3, r28, r0 +/* 80244FE4 00241F44 D0 03 06 F4 */ stfs f0, 0x6f4(r3) +/* 80244FE8 00241F48 80 9C 05 7C */ lwz r4, 0x57c(r28) +/* 80244FEC 00241F4C 80 7C 06 DC */ lwz r3, 0x6dc(r28) +/* 80244FF0 00241F50 38 84 00 01 */ addi r4, r4, 1 +/* 80244FF4 00241F54 7C 04 1B D6 */ divw r0, r4, r3 +/* 80244FF8 00241F58 7C 00 19 D6 */ mullw r0, r0, r3 +/* 80244FFC 00241F5C 7C 00 20 50 */ subf r0, r0, r4 +/* 80245000 00241F60 90 1C 05 7C */ stw r0, 0x57c(r28) +lbl_80245004: +/* 80245004 00241F64 54 A0 06 3F */ clrlwi. r0, r5, 0x18 +/* 80245008 00241F68 40 82 00 1C */ bne lbl_80245024 +/* 8024500C 00241F6C FC 20 F8 90 */ fmr f1, f31 +/* 80245010 00241F70 7F 83 E3 78 */ mr r3, r28 +/* 80245014 00241F74 7F A4 EB 78 */ mr r4, r29 +/* 80245018 00241F78 7F C5 F3 78 */ mr r5, r30 +/* 8024501C 00241F7C 7F E6 FB 78 */ mr r6, r31 +/* 80245020 00241F80 4B E3 3E 91 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +lbl_80245024: +/* 80245024 00241F84 E3 E1 01 28 */ psq_l f31, 296(r1), 0, qr0 +/* 80245028 00241F88 80 01 01 34 */ lwz r0, 0x134(r1) +/* 8024502C 00241F8C CB E1 01 20 */ lfd f31, 0x120(r1) +/* 80245030 00241F90 83 E1 01 1C */ lwz r31, 0x11c(r1) +/* 80245034 00241F94 83 C1 01 18 */ lwz r30, 0x118(r1) +/* 80245038 00241F98 83 A1 01 14 */ lwz r29, 0x114(r1) +/* 8024503C 00241F9C 83 81 01 10 */ lwz r28, 0x110(r1) +/* 80245040 00241FA0 7C 08 03 A6 */ mtlr r0 +/* 80245044 00241FA4 38 21 01 30 */ addi r1, r1, 0x130 +/* 80245048 00241FA8 4E 80 00 20 */ blr + +.global Leash__12CAtomicAlphaFR13CStateManagerf +Leash__12CAtomicAlphaFR13CStateManagerf: +/* 8024504C 00241FAC 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 80245050 00241FB0 38 00 00 00 */ li r0, 0 +/* 80245054 00241FB4 C0 03 03 CC */ lfs f0, 0x3cc(r3) +/* 80245058 00241FB8 C0 44 00 50 */ lfs f2, 0x50(r4) +/* 8024505C 00241FBC C0 23 00 50 */ lfs f1, 0x50(r3) +/* 80245060 00241FC0 EC 00 00 32 */ fmuls f0, f0, f0 +/* 80245064 00241FC4 C0 84 00 40 */ lfs f4, 0x40(r4) +/* 80245068 00241FC8 EC A2 08 28 */ fsubs f5, f2, f1 +/* 8024506C 00241FCC C0 23 00 40 */ lfs f1, 0x40(r3) +/* 80245070 00241FD0 C0 64 00 60 */ lfs f3, 0x60(r4) +/* 80245074 00241FD4 EC 84 08 28 */ fsubs f4, f4, f1 +/* 80245078 00241FD8 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 8024507C 00241FDC EC 25 01 72 */ fmuls f1, f5, f5 +/* 80245080 00241FE0 EC 43 10 28 */ fsubs f2, f3, f2 +/* 80245084 00241FE4 EC 24 09 3A */ fmadds f1, f4, f4, f1 +/* 80245088 00241FE8 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 8024508C 00241FEC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80245090 00241FF0 40 81 00 18 */ ble lbl_802450A8 +/* 80245094 00241FF4 C0 23 03 D4 */ lfs f1, 0x3d4(r3) +/* 80245098 00241FF8 C0 03 03 D0 */ lfs f0, 0x3d0(r3) +/* 8024509C 00241FFC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802450A0 00242000 40 81 00 08 */ ble lbl_802450A8 +/* 802450A4 00242004 38 00 00 01 */ li r0, 1 +lbl_802450A8: +/* 802450A8 00242008 7C 03 03 78 */ mr r3, r0 +/* 802450AC 0024200C 4E 80 00 20 */ blr + +.global Patrol__12CAtomicAlphaFR13CStateManager9EStateMsgf +Patrol__12CAtomicAlphaFR13CStateManager9EStateMsgf: +/* 802450B0 00242010 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 802450B4 00242014 7C 08 02 A6 */ mflr r0 +/* 802450B8 00242018 90 01 00 34 */ stw r0, 0x34(r1) +/* 802450BC 0024201C DB E1 00 20 */ stfd f31, 0x20(r1) +/* 802450C0 00242020 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 802450C4 00242024 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 802450C8 00242028 93 C1 00 18 */ stw r30, 0x18(r1) +/* 802450CC 0024202C 93 A1 00 14 */ stw r29, 0x14(r1) +/* 802450D0 00242030 FF E0 08 90 */ fmr f31, f1 +/* 802450D4 00242034 7C 7D 1B 78 */ mr r29, r3 +/* 802450D8 00242038 7C 9E 23 78 */ mr r30, r4 +/* 802450DC 0024203C 7C BF 2B 78 */ mr r31, r5 +/* 802450E0 00242040 4B FB 1D 95 */ bl Patrol__10CPatternedFR13CStateManager9EStateMsgf +/* 802450E4 00242044 2C 1F 00 01 */ cmpwi r31, 1 +/* 802450E8 00242048 41 82 00 2C */ beq lbl_80245114 +/* 802450EC 0024204C 40 80 00 10 */ bge lbl_802450FC +/* 802450F0 00242050 2C 1F 00 00 */ cmpwi r31, 0 +/* 802450F4 00242054 40 80 00 14 */ bge lbl_80245108 +/* 802450F8 00242058 48 00 01 18 */ b lbl_80245210 +lbl_802450FC: +/* 802450FC 0024205C 2C 1F 00 03 */ cmpwi r31, 3 +/* 80245100 00242060 40 80 01 10 */ bge lbl_80245210 +/* 80245104 00242064 48 00 00 FC */ b lbl_80245200 +lbl_80245108: +/* 80245108 00242068 C0 02 B8 44 */ lfs f0, lbl_805AD564@sda21(r2) +/* 8024510C 0024206C D0 1D 05 78 */ stfs f0, 0x578(r29) +/* 80245110 00242070 48 00 01 00 */ b lbl_80245210 +lbl_80245114: +/* 80245114 00242074 88 1D 05 68 */ lbz r0, 0x568(r29) +/* 80245118 00242078 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8024511C 0024207C 41 82 00 A0 */ beq lbl_802451BC +/* 80245120 00242080 C0 3D 05 78 */ lfs f1, 0x578(r29) +/* 80245124 00242084 38 00 00 00 */ li r0, 0 +/* 80245128 00242088 C0 1D 05 6C */ lfs f0, 0x56c(r29) +/* 8024512C 0024208C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80245130 00242090 4C 41 13 82 */ cror 2, 1, 2 +/* 80245134 00242094 40 82 00 20 */ bne lbl_80245154 +/* 80245138 00242098 C0 3D 05 70 */ lfs f1, 0x570(r29) +/* 8024513C 0024209C C0 1D 05 74 */ lfs f0, 0x574(r29) +/* 80245140 002420A0 C0 5D 06 F4 */ lfs f2, 0x6f4(r29) +/* 80245144 002420A4 EC 01 00 2A */ fadds f0, f1, f0 +/* 80245148 002420A8 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8024514C 002420AC 40 81 00 08 */ ble lbl_80245154 +/* 80245150 002420B0 38 00 00 01 */ li r0, 1 +lbl_80245154: +/* 80245154 002420B4 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 80245158 002420B8 41 82 00 20 */ beq lbl_80245178 +/* 8024515C 002420BC 80 1D 05 7C */ lwz r0, 0x57c(r29) +/* 80245160 002420C0 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 80245164 002420C4 1C 00 00 18 */ mulli r0, r0, 0x18 +/* 80245168 002420C8 7C 9D 02 14 */ add r4, r29, r0 +/* 8024516C 002420CC 80 84 06 F0 */ lwz r4, 0x6f0(r4) +/* 80245170 002420D0 4B EF 58 69 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 80245174 002420D4 48 00 00 10 */ b lbl_80245184 +lbl_80245178: +/* 80245178 002420D8 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 8024517C 002420DC 38 80 00 01 */ li r4, 1 +/* 80245180 002420E0 4B EF 58 59 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +lbl_80245184: +/* 80245184 002420E4 7F A3 EB 78 */ mr r3, r29 +/* 80245188 002420E8 FC 20 F8 90 */ fmr f1, f31 +/* 8024518C 002420EC 81 9D 00 00 */ lwz r12, 0(r29) +/* 80245190 002420F0 7F C4 F3 78 */ mr r4, r30 +/* 80245194 002420F4 81 8C 01 84 */ lwz r12, 0x184(r12) +/* 80245198 002420F8 7D 89 03 A6 */ mtctr r12 +/* 8024519C 002420FC 4E 80 04 21 */ bctrl +/* 802451A0 00242100 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 802451A4 00242104 41 82 00 6C */ beq lbl_80245210 +/* 802451A8 00242108 88 1D 05 68 */ lbz r0, 0x568(r29) +/* 802451AC 0024210C 38 60 00 00 */ li r3, 0 +/* 802451B0 00242110 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 802451B4 00242114 98 1D 05 68 */ stb r0, 0x568(r29) +/* 802451B8 00242118 48 00 00 58 */ b lbl_80245210 +lbl_802451BC: +/* 802451BC 0024211C 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 802451C0 00242120 38 80 00 01 */ li r4, 1 +/* 802451C4 00242124 4B EF 58 15 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 802451C8 00242128 7F A3 EB 78 */ mr r3, r29 +/* 802451CC 0024212C FC 20 F8 90 */ fmr f1, f31 +/* 802451D0 00242130 81 9D 00 00 */ lwz r12, 0(r29) +/* 802451D4 00242134 7F C4 F3 78 */ mr r4, r30 +/* 802451D8 00242138 81 8C 01 A4 */ lwz r12, 0x1a4(r12) +/* 802451DC 0024213C 7D 89 03 A6 */ mtctr r12 +/* 802451E0 00242140 4E 80 04 21 */ bctrl +/* 802451E4 00242144 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 802451E8 00242148 41 82 00 28 */ beq lbl_80245210 +/* 802451EC 0024214C 88 1D 05 68 */ lbz r0, 0x568(r29) +/* 802451F0 00242150 38 60 00 01 */ li r3, 1 +/* 802451F4 00242154 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 802451F8 00242158 98 1D 05 68 */ stb r0, 0x568(r29) +/* 802451FC 0024215C 48 00 00 14 */ b lbl_80245210 +lbl_80245200: +/* 80245200 00242160 88 1D 05 68 */ lbz r0, 0x568(r29) +/* 80245204 00242164 38 60 00 00 */ li r3, 0 +/* 80245208 00242168 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8024520C 0024216C 98 1D 05 68 */ stb r0, 0x568(r29) +lbl_80245210: +/* 80245210 00242170 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 80245214 00242174 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80245218 00242178 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 8024521C 0024217C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80245220 00242180 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80245224 00242184 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80245228 00242188 7C 08 03 A6 */ mtlr r0 +/* 8024522C 0024218C 38 21 00 30 */ addi r1, r1, 0x30 +/* 80245230 00242190 4E 80 00 20 */ blr + +.global AddToRenderer__12CAtomicAlphaCFRC14CFrustumPlanesRC13CStateManager +AddToRenderer__12CAtomicAlphaCFRC14CFrustumPlanesRC13CStateManager: +/* 80245234 00242194 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80245238 00242198 7C 08 02 A6 */ mflr r0 +/* 8024523C 0024219C 90 01 00 24 */ stw r0, 0x24(r1) +/* 80245240 002421A0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80245244 002421A4 7C BF 2B 78 */ mr r31, r5 +/* 80245248 002421A8 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8024524C 002421AC 7C 9E 23 78 */ mr r30, r4 +/* 80245250 002421B0 7F E4 FB 78 */ mr r4, r31 +/* 80245254 002421B4 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80245258 002421B8 7C 7D 1B 78 */ mr r29, r3 +/* 8024525C 002421BC 80 A5 08 B8 */ lwz r5, 0x8b8(r5) +/* 80245260 002421C0 80 65 00 00 */ lwz r3, 0(r5) +/* 80245264 002421C4 4B E4 C2 F5 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager +/* 80245268 002421C8 88 1D 05 68 */ lbz r0, 0x568(r29) +/* 8024526C 002421CC 20 63 00 01 */ subfic r3, r3, 1 +/* 80245270 002421D0 7C 63 00 34 */ cntlzw r3, r3 +/* 80245274 002421D4 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80245278 002421D8 54 60 D9 7E */ srwi r0, r3, 5 +/* 8024527C 002421DC 41 82 00 0C */ beq lbl_80245288 +/* 80245280 002421E0 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 80245284 002421E4 41 82 00 14 */ beq lbl_80245298 +lbl_80245288: +/* 80245288 002421E8 7F A3 EB 78 */ mr r3, r29 +/* 8024528C 002421EC 7F C4 F3 78 */ mr r4, r30 +/* 80245290 002421F0 7F E5 FB 78 */ mr r5, r31 +/* 80245294 002421F4 4B E3 26 25 */ bl AddToRenderer__10CPatternedCFRC14CFrustumPlanesRC13CStateManager +lbl_80245298: +/* 80245298 002421F8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8024529C 002421FC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 802452A0 00242200 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 802452A4 00242204 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 802452A8 00242208 7C 08 03 A6 */ mtlr r0 +/* 802452AC 0024220C 38 21 00 20 */ addi r1, r1, 0x20 +/* 802452B0 00242210 4E 80 00 20 */ blr + +.global Render__12CAtomicAlphaCFRC13CStateManager +Render__12CAtomicAlphaCFRC13CStateManager: +/* 802452B4 00242214 94 21 FE E0 */ stwu r1, -0x120(r1) +/* 802452B8 00242218 7C 08 02 A6 */ mflr r0 +/* 802452BC 0024221C 90 01 01 24 */ stw r0, 0x124(r1) +/* 802452C0 00242220 BF 61 01 0C */ stmw r27, 0x10c(r1) +/* 802452C4 00242224 7C 7B 1B 78 */ mr r27, r3 +/* 802452C8 00242228 7C 9C 23 78 */ mr r28, r4 +/* 802452CC 0024222C 80 64 08 B8 */ lwz r3, 0x8b8(r4) +/* 802452D0 00242230 80 63 00 00 */ lwz r3, 0(r3) +/* 802452D4 00242234 4B E4 C2 85 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager +/* 802452D8 00242238 88 1B 05 68 */ lbz r0, 0x568(r27) +/* 802452DC 0024223C 20 63 00 01 */ subfic r3, r3, 1 +/* 802452E0 00242240 7C 63 00 34 */ cntlzw r3, r3 +/* 802452E4 00242244 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 802452E8 00242248 54 60 D9 7E */ srwi r0, r3, 5 +/* 802452EC 0024224C 41 82 00 0C */ beq lbl_802452F8 +/* 802452F0 00242250 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 802452F4 00242254 41 82 01 10 */ beq lbl_80245404 +lbl_802452F8: +/* 802452F8 00242258 7F 63 DB 78 */ mr r3, r27 +/* 802452FC 0024225C 7F 84 E3 78 */ mr r4, r28 +/* 80245300 00242260 4B E3 2D 2D */ bl Render__10CPatternedCFRC13CStateManager +/* 80245304 00242264 3B FB 06 E0 */ addi r31, r27, 0x6e0 +/* 80245308 00242268 3B C1 00 14 */ addi r30, r1, 0x14 +/* 8024530C 0024226C 3B A0 00 00 */ li r29, 0 +/* 80245310 00242270 48 00 00 E8 */ b lbl_802453F8 +lbl_80245314: +/* 80245314 00242274 C0 5F 00 14 */ lfs f2, 0x14(r31) +/* 80245318 00242278 C0 3B 05 70 */ lfs f1, 0x570(r27) +/* 8024531C 0024227C C0 0D 96 E0 */ lfs f0, lbl_805A82A0@sda21(r13) +/* 80245320 00242280 EC 22 08 28 */ fsubs f1, f2, f1 +/* 80245324 00242284 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80245328 00242288 D0 21 00 08 */ stfs f1, 8(r1) +/* 8024532C 0024228C 40 80 00 0C */ bge lbl_80245338 +/* 80245330 00242290 38 61 00 08 */ addi r3, r1, 8 +/* 80245334 00242294 48 00 00 08 */ b lbl_8024533C +lbl_80245338: +/* 80245338 00242298 38 6D 96 E0 */ addi r3, r13, lbl_805A82A0@sda21 +lbl_8024533C: +/* 8024533C 0024229C C0 43 00 00 */ lfs f2, 0(r3) +/* 80245340 002422A0 C0 3B 05 70 */ lfs f1, 0x570(r27) +/* 80245344 002422A4 C0 0D 96 E4 */ lfs f0, lbl_805A82A4@sda21(r13) +/* 80245348 002422A8 EC 22 08 24 */ fdivs f1, f2, f1 +/* 8024534C 002422AC FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80245350 002422B0 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 80245354 002422B4 40 80 00 0C */ bge lbl_80245360 +/* 80245358 002422B8 38 6D 96 E4 */ addi r3, r13, lbl_805A82A4@sda21 +/* 8024535C 002422BC 48 00 00 08 */ b lbl_80245364 +lbl_80245360: +/* 80245360 002422C0 38 61 00 0C */ addi r3, r1, 0xc +lbl_80245364: +/* 80245364 002422C4 C0 23 00 00 */ lfs f1, 0(r3) +/* 80245368 002422C8 38 61 00 18 */ addi r3, r1, 0x18 +/* 8024536C 002422CC 48 0C DE D5 */ bl Scale__12CTransform4fFf +/* 80245370 002422D0 7F 64 DB 78 */ mr r4, r27 +/* 80245374 002422D4 7F E5 FB 78 */ mr r5, r31 +/* 80245378 002422D8 38 61 00 48 */ addi r3, r1, 0x48 +/* 8024537C 002422DC 4B E0 DB 55 */ bl "GetScaledLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80245380 002422E0 38 61 00 78 */ addi r3, r1, 0x78 +/* 80245384 002422E4 38 9B 00 34 */ addi r4, r27, 0x34 +/* 80245388 002422E8 38 A1 00 48 */ addi r5, r1, 0x48 +/* 8024538C 002422EC 48 0C D5 C5 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80245390 002422F0 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 80245394 002422F4 38 81 00 78 */ addi r4, r1, 0x78 +/* 80245398 002422F8 38 A1 00 18 */ addi r5, r1, 0x18 +/* 8024539C 002422FC 48 0C D5 B5 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 802453A0 00242300 38 61 00 D8 */ addi r3, r1, 0xd8 +/* 802453A4 00242304 38 81 00 A8 */ addi r4, r1, 0xa8 +/* 802453A8 00242308 48 0C D7 CD */ bl __ct__12CTransform4fFRC12CTransform4f +/* 802453AC 0024230C C0 22 B8 40 */ lfs f1, lbl_805AD560@sda21(r2) +/* 802453B0 00242310 38 80 00 00 */ li r4, 0 +/* 802453B4 00242314 38 00 00 03 */ li r0, 3 +/* 802453B8 00242318 98 81 00 10 */ stb r4, 0x10(r1) +/* 802453BC 0024231C FC 40 08 90 */ fmr f2, f1 +/* 802453C0 00242320 7F C3 F3 78 */ mr r3, r30 +/* 802453C4 00242324 FC 60 08 90 */ fmr f3, f1 +/* 802453C8 00242328 98 81 00 11 */ stb r4, 0x11(r1) +/* 802453CC 0024232C FC 80 08 90 */ fmr f4, f1 +/* 802453D0 00242330 B0 01 00 12 */ sth r0, 0x12(r1) +/* 802453D4 00242334 48 11 E0 19 */ bl __ct__6CColorFffff +/* 802453D8 00242338 80 DB 00 90 */ lwz r6, 0x90(r27) +/* 802453DC 0024233C 7F 84 E3 78 */ mr r4, r28 +/* 802453E0 00242340 38 7B 06 90 */ addi r3, r27, 0x690 +/* 802453E4 00242344 38 A1 00 D8 */ addi r5, r1, 0xd8 +/* 802453E8 00242348 38 E1 00 10 */ addi r7, r1, 0x10 +/* 802453EC 0024234C 4B EC F9 D1 */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags +/* 802453F0 00242350 3B FF 00 18 */ addi r31, r31, 0x18 +/* 802453F4 00242354 3B BD 00 01 */ addi r29, r29, 1 +lbl_802453F8: +/* 802453F8 00242358 80 1B 06 DC */ lwz r0, 0x6dc(r27) +/* 802453FC 0024235C 7C 1D 00 00 */ cmpw r29, r0 +/* 80245400 00242360 41 80 FF 14 */ blt lbl_80245314 +lbl_80245404: +/* 80245404 00242364 BB 61 01 0C */ lmw r27, 0x10c(r1) +/* 80245408 00242368 80 01 01 24 */ lwz r0, 0x124(r1) +/* 8024540C 0024236C 7C 08 03 A6 */ mtlr r0 +/* 80245410 00242370 38 21 01 20 */ addi r1, r1, 0x120 +/* 80245414 00242374 4E 80 00 20 */ blr + +.global CollidedWith__12CAtomicAlphaFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager +CollidedWith__12CAtomicAlphaFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager: +/* 80245418 00242378 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8024541C 0024237C 7C 08 02 A6 */ mflr r0 +/* 80245420 00242380 90 01 00 34 */ stw r0, 0x34(r1) +/* 80245424 00242384 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80245428 00242388 7C DF 33 78 */ mr r31, r6 +/* 8024542C 0024238C 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80245430 00242390 7C BE 2B 78 */ mr r30, r5 +/* 80245434 00242394 93 A1 00 24 */ stw r29, 0x24(r1) +/* 80245438 00242398 7C 9D 23 78 */ mr r29, r4 +/* 8024543C 0024239C 93 81 00 20 */ stw r28, 0x20(r1) +/* 80245440 002423A0 7C 7C 1B 78 */ mr r28, r3 +/* 80245444 002423A4 88 03 04 00 */ lbz r0, 0x400(r3) +/* 80245448 002423A8 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8024544C 002423AC 41 82 00 94 */ beq lbl_802454E0 +/* 80245450 002423B0 A0 1D 00 00 */ lhz r0, 0(r29) +/* 80245454 002423B4 7F E3 FB 78 */ mr r3, r31 +/* 80245458 002423B8 38 81 00 10 */ addi r4, r1, 0x10 +/* 8024545C 002423BC B0 01 00 10 */ sth r0, 0x10(r1) +/* 80245460 002423C0 4B E0 71 45 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80245464 002423C4 7C 64 1B 78 */ mr r4, r3 +/* 80245468 002423C8 38 61 00 14 */ addi r3, r1, 0x14 +/* 8024546C 002423CC 4B E6 6F 29 */ bl "__ct__20TCastToPtr<7CPlayer>FP7CEntity" +/* 80245470 002423D0 80 03 00 04 */ lwz r0, 4(r3) +/* 80245474 002423D4 28 00 00 00 */ cmplwi r0, 0 +/* 80245478 002423D8 41 82 00 68 */ beq lbl_802454E0 +/* 8024547C 002423DC C0 3C 04 20 */ lfs f1, 0x420(r28) +/* 80245480 002423E0 C0 02 B8 44 */ lfs f0, lbl_805AD564@sda21(r2) +/* 80245484 002423E4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80245488 002423E8 4C 40 13 82 */ cror 2, 0, 2 +/* 8024548C 002423EC 40 82 00 54 */ bne lbl_802454E0 +/* 80245490 002423F0 A0 1C 00 08 */ lhz r0, 8(r28) +/* 80245494 002423F4 38 81 00 0C */ addi r4, r1, 0xc +/* 80245498 002423F8 C0 22 B8 4C */ lfs f1, lbl_805AD56C@sda21(r2) +/* 8024549C 002423FC B0 01 00 0C */ sth r0, 0xc(r1) +/* 802454A0 00242400 C0 42 B8 50 */ lfs f2, lbl_805AD570@sda21(r2) +/* 802454A4 00242404 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 802454A8 00242408 B0 01 00 08 */ sth r0, 8(r1) +/* 802454AC 0024240C 80 63 00 00 */ lwz r3, 0(r3) +/* 802454B0 00242410 38 63 01 88 */ addi r3, r3, 0x188 +/* 802454B4 00242414 4B F7 B6 85 */ bl AddSource__19CStaticInterferenceF9TUniqueId +/* 802454B8 00242418 C0 02 B8 44 */ lfs f0, lbl_805AD564@sda21(r2) +/* 802454BC 0024241C 38 7C 06 E0 */ addi r3, r28, 0x6e0 +/* 802454C0 00242420 38 80 00 00 */ li r4, 0 +/* 802454C4 00242424 48 00 00 10 */ b lbl_802454D4 +lbl_802454C8: +/* 802454C8 00242428 D0 03 00 14 */ stfs f0, 0x14(r3) +/* 802454CC 0024242C 38 63 00 18 */ addi r3, r3, 0x18 +/* 802454D0 00242430 38 84 00 01 */ addi r4, r4, 1 +lbl_802454D4: +/* 802454D4 00242434 80 1C 06 DC */ lwz r0, 0x6dc(r28) +/* 802454D8 00242438 7C 04 00 00 */ cmpw r4, r0 +/* 802454DC 0024243C 41 80 FF EC */ blt lbl_802454C8 +lbl_802454E0: +/* 802454E0 00242440 7F 83 E3 78 */ mr r3, r28 +/* 802454E4 00242444 7F A4 EB 78 */ mr r4, r29 +/* 802454E8 00242448 7F C5 F3 78 */ mr r5, r30 +/* 802454EC 0024244C 7F E6 FB 78 */ mr r6, r31 +/* 802454F0 00242450 4B E3 41 61 */ bl CollidedWith__10CPatternedFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager +/* 802454F4 00242454 80 01 00 34 */ lwz r0, 0x34(r1) +/* 802454F8 00242458 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 802454FC 0024245C 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80245500 00242460 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 80245504 00242464 83 81 00 20 */ lwz r28, 0x20(r1) +/* 80245508 00242468 7C 08 03 A6 */ mtlr r0 +/* 8024550C 0024246C 38 21 00 30 */ addi r1, r1, 0x30 +/* 80245510 00242470 4E 80 00 20 */ blr + +.global Think__12CAtomicAlphaFfR13CStateManager +Think__12CAtomicAlphaFfR13CStateManager: +/* 80245514 00242474 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80245518 00242478 7C 08 02 A6 */ mflr r0 +/* 8024551C 0024247C 90 01 00 24 */ stw r0, 0x24(r1) +/* 80245520 00242480 DB E1 00 10 */ stfd f31, 0x10(r1) +/* 80245524 00242484 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 +/* 80245528 00242488 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024552C 0024248C 7C 7F 1B 78 */ mr r31, r3 +/* 80245530 00242490 FF E0 08 90 */ fmr f31, f1 +/* 80245534 00242494 4B E3 45 E5 */ bl Think__10CPatternedFfR13CStateManager +/* 80245538 00242498 88 1F 00 30 */ lbz r0, 0x30(r31) +/* 8024553C 0024249C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80245540 002424A0 41 82 00 3C */ beq lbl_8024557C +/* 80245544 002424A4 C0 1F 05 78 */ lfs f0, 0x578(r31) +/* 80245548 002424A8 38 7F 06 E0 */ addi r3, r31, 0x6e0 +/* 8024554C 002424AC 38 80 00 00 */ li r4, 0 +/* 80245550 002424B0 EC 00 F8 2A */ fadds f0, f0, f31 +/* 80245554 002424B4 D0 1F 05 78 */ stfs f0, 0x578(r31) +/* 80245558 002424B8 48 00 00 18 */ b lbl_80245570 +lbl_8024555C: +/* 8024555C 002424BC C0 03 00 14 */ lfs f0, 0x14(r3) +/* 80245560 002424C0 38 84 00 01 */ addi r4, r4, 1 +/* 80245564 002424C4 EC 00 F8 2A */ fadds f0, f0, f31 +/* 80245568 002424C8 D0 03 00 14 */ stfs f0, 0x14(r3) +/* 8024556C 002424CC 38 63 00 18 */ addi r3, r3, 0x18 +lbl_80245570: +/* 80245570 002424D0 80 1F 06 DC */ lwz r0, 0x6dc(r31) +/* 80245574 002424D4 7C 04 00 00 */ cmpw r4, r0 +/* 80245578 002424D8 41 80 FF E4 */ blt lbl_8024555C +lbl_8024557C: +/* 8024557C 002424DC E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 +/* 80245580 002424E0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80245584 002424E4 CB E1 00 10 */ lfd f31, 0x10(r1) +/* 80245588 002424E8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024558C 002424EC 7C 08 03 A6 */ mtlr r0 +/* 80245590 002424F0 38 21 00 20 */ addi r1, r1, 0x20 +/* 80245594 002424F4 4E 80 00 20 */ blr + +.global AcceptScriptMsg__12CAtomicAlphaF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__12CAtomicAlphaF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 80245598 002424F8 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8024559C 002424FC 7C 08 02 A6 */ mflr r0 +/* 802455A0 00242500 90 01 00 34 */ stw r0, 0x34(r1) +/* 802455A4 00242504 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 802455A8 00242508 7C DF 33 78 */ mr r31, r6 +/* 802455AC 0024250C 93 C1 00 28 */ stw r30, 0x28(r1) +/* 802455B0 00242510 7C 9E 23 78 */ mr r30, r4 +/* 802455B4 00242514 93 A1 00 24 */ stw r29, 0x24(r1) +/* 802455B8 00242518 7C 7D 1B 78 */ mr r29, r3 +/* 802455BC 0024251C A0 05 00 00 */ lhz r0, 0(r5) +/* 802455C0 00242520 38 A1 00 08 */ addi r5, r1, 8 +/* 802455C4 00242524 B0 01 00 08 */ sth r0, 8(r1) +/* 802455C8 00242528 4B E3 75 B1 */ bl AcceptScriptMsg__10CPatternedF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 802455CC 0024252C 2C 1E 00 23 */ cmpwi r30, 0x23 +/* 802455D0 00242530 41 82 00 50 */ beq lbl_80245620 +/* 802455D4 00242534 40 80 00 10 */ bge lbl_802455E4 +/* 802455D8 00242538 2C 1E 00 21 */ cmpwi r30, 0x21 +/* 802455DC 0024253C 41 82 00 14 */ beq lbl_802455F0 +/* 802455E0 00242540 48 00 00 6C */ b lbl_8024564C +lbl_802455E4: +/* 802455E4 00242544 2C 1E 00 25 */ cmpwi r30, 0x25 +/* 802455E8 00242548 41 82 00 18 */ beq lbl_80245600 +/* 802455EC 0024254C 48 00 00 60 */ b lbl_8024564C +lbl_802455F0: +/* 802455F0 00242550 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 802455F4 00242554 7F E4 FB 78 */ mr r4, r31 +/* 802455F8 00242558 4B EF 56 F9 */ bl Activate__15CBodyControllerFR13CStateManager +/* 802455FC 0024255C 48 00 00 50 */ b lbl_8024564C +lbl_80245600: +/* 80245600 00242560 88 1D 04 00 */ lbz r0, 0x400(r29) +/* 80245604 00242564 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80245608 00242568 41 82 00 44 */ beq lbl_8024564C +/* 8024560C 0024256C 88 1D 04 01 */ lbz r0, 0x401(r29) +/* 80245610 00242570 38 60 00 01 */ li r3, 1 +/* 80245614 00242574 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 80245618 00242578 98 1D 04 01 */ stb r0, 0x401(r29) +/* 8024561C 0024257C 48 00 00 30 */ b lbl_8024564C +lbl_80245620: +/* 80245620 00242580 80 BD 00 04 */ lwz r5, 4(r29) +/* 80245624 00242584 80 9F 08 50 */ lwz r4, 0x850(r31) +/* 80245628 00242588 54 A3 18 38 */ slwi r3, r5, 3 +/* 8024562C 0024258C 90 A1 00 10 */ stw r5, 0x10(r1) +/* 80245630 00242590 80 84 00 20 */ lwz r4, 0x20(r4) +/* 80245634 00242594 38 03 00 04 */ addi r0, r3, 4 +/* 80245638 00242598 90 A1 00 0C */ stw r5, 0xc(r1) +/* 8024563C 0024259C 7C 64 00 2E */ lwzx r3, r4, r0 +/* 80245640 002425A0 80 63 01 2C */ lwz r3, 0x12c(r3) +/* 80245644 002425A4 80 03 10 BC */ lwz r0, 0x10bc(r3) +/* 80245648 002425A8 90 1D 05 80 */ stw r0, 0x580(r29) +lbl_8024564C: +/* 8024564C 002425AC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80245650 002425B0 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80245654 002425B4 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80245658 002425B8 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8024565C 002425BC 7C 08 03 A6 */ mtlr r0 +/* 80245660 002425C0 38 21 00 30 */ addi r1, r1, 0x30 +/* 80245664 002425C4 4E 80 00 20 */ blr + +.global Accept__12CAtomicAlphaFR8IVisitor +Accept__12CAtomicAlphaFR8IVisitor: +/* 80245668 002425C8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024566C 002425CC 7C 08 02 A6 */ mflr r0 +/* 80245670 002425D0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80245674 002425D4 7C 60 1B 78 */ mr r0, r3 +/* 80245678 002425D8 7C 83 23 78 */ mr r3, r4 +/* 8024567C 002425DC 81 84 00 00 */ lwz r12, 0(r4) +/* 80245680 002425E0 7C 04 03 78 */ mr r4, r0 +/* 80245684 002425E4 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 80245688 002425E8 7D 89 03 A6 */ mtctr r12 +/* 8024568C 002425EC 4E 80 04 21 */ bctrl +/* 80245690 002425F0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80245694 002425F4 7C 08 03 A6 */ mtlr r0 +/* 80245698 002425F8 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024569C 002425FC 4E 80 00 20 */ blr + +.global __ct__12CAtomicAlpha +__ct__12CAtomicAlpha: +/* 802456A0 00242600 94 21 FE D0 */ stwu r1, -0x130(r1) +/* 802456A4 00242604 7C 08 02 A6 */ mflr r0 +/* 802456A8 00242608 90 01 01 34 */ stw r0, 0x134(r1) +/* 802456AC 0024260C DB E1 01 20 */ stfd f31, 0x120(r1) +/* 802456B0 00242610 F3 E1 01 28 */ psq_st f31, 296(r1), 0, qr0 +/* 802456B4 00242614 DB C1 01 10 */ stfd f30, 0x110(r1) +/* 802456B8 00242618 F3 C1 01 18 */ psq_st f30, 280(r1), 0, qr0 +/* 802456BC 0024261C DB A1 01 00 */ stfd f29, 0x100(r1) +/* 802456C0 00242620 F3 A1 01 08 */ psq_st f29, 264(r1), 0, qr0 +/* 802456C4 00242624 BF 01 00 E0 */ stmw r24, 0xe0(r1) +/* 802456C8 00242628 A0 04 00 00 */ lhz r0, 0(r4) +/* 802456CC 0024262C 7C CB 33 78 */ mr r11, r6 +/* 802456D0 00242630 7D 1B 43 78 */ mr r27, r8 +/* 802456D4 00242634 7D 5C 53 78 */ mr r28, r10 +/* 802456D8 00242638 B0 01 00 20 */ sth r0, 0x20(r1) +/* 802456DC 0024263C 7C A6 2B 78 */ mr r6, r5 +/* 802456E0 00242640 38 80 00 01 */ li r4, 1 +/* 802456E4 00242644 38 00 00 03 */ li r0, 3 +/* 802456E8 00242648 93 81 00 08 */ stw r28, 8(r1) +/* 802456EC 0024264C FF A0 08 90 */ fmr f29, f1 +/* 802456F0 00242650 FF C0 10 90 */ fmr f30, f2 +/* 802456F4 00242654 83 A1 01 38 */ lwz r29, 0x138(r1) +/* 802456F8 00242658 90 81 00 0C */ stw r4, 0xc(r1) +/* 802456FC 0024265C FF E0 18 90 */ fmr f31, f3 +/* 80245700 00242660 83 C1 01 3C */ lwz r30, 0x13c(r1) +/* 80245704 00242664 90 81 00 10 */ stw r4, 0x10(r1) +/* 80245708 00242668 83 E1 01 40 */ lwz r31, 0x140(r1) +/* 8024570C 0024266C 7C 7A 1B 78 */ mr r26, r3 +/* 80245710 00242670 90 01 00 14 */ stw r0, 0x14(r1) +/* 80245714 00242674 7D 68 5B 78 */ mr r8, r11 +/* 80245718 00242678 8B 01 01 47 */ lbz r24, 0x147(r1) +/* 8024571C 0024267C 7F 6A DB 78 */ mr r10, r27 +/* 80245720 00242680 91 21 00 18 */ stw r9, 0x18(r1) +/* 80245724 00242684 7C E9 3B 78 */ mr r9, r7 +/* 80245728 00242688 8B 21 01 4B */ lbz r25, 0x14b(r1) +/* 8024572C 0024268C 38 A1 00 20 */ addi r5, r1, 0x20 +/* 80245730 00242690 90 81 00 1C */ stw r4, 0x1c(r1) +/* 80245734 00242694 38 80 00 00 */ li r4, 0 +/* 80245738 00242698 38 E0 00 00 */ li r7, 0 +/* 8024573C 0024269C 4B E3 7D 15 */ bl "__ct__10CPatternedFUi9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC16CActorParametersUi" +/* 80245740 002426A0 3C 60 80 3F */ lis r3, lbl_803E88A8@ha +/* 80245744 002426A4 C0 22 B8 40 */ lfs f1, lbl_805AD560@sda21(r2) +/* 80245748 002426A8 38 03 88 A8 */ addi r0, r3, lbl_803E88A8@l +/* 8024574C 002426AC 38 C0 00 00 */ li r6, 0 +/* 80245750 002426B0 90 1A 00 00 */ stw r0, 0(r26) +/* 80245754 002426B4 FC 40 08 90 */ fmr f2, f1 +/* 80245758 002426B8 C0 02 B8 44 */ lfs f0, lbl_805AD564@sda21(r2) +/* 8024575C 002426BC 38 7A 05 80 */ addi r3, r26, 0x580 +/* 80245760 002426C0 88 1A 05 68 */ lbz r0, 0x568(r26) +/* 80245764 002426C4 50 C0 3E 30 */ rlwimi r0, r6, 7, 0x18, 0x18 +/* 80245768 002426C8 38 80 00 00 */ li r4, 0 +/* 8024576C 002426CC 98 1A 05 68 */ stb r0, 0x568(r26) +/* 80245770 002426D0 38 A0 00 03 */ li r5, 3 +/* 80245774 002426D4 88 1A 05 68 */ lbz r0, 0x568(r26) +/* 80245778 002426D8 53 00 36 72 */ rlwimi r0, r24, 6, 0x19, 0x19 +/* 8024577C 002426DC 98 1A 05 68 */ stb r0, 0x568(r26) +/* 80245780 002426E0 88 1A 05 68 */ lbz r0, 0x568(r26) +/* 80245784 002426E4 53 20 2E B4 */ rlwimi r0, r25, 5, 0x1a, 0x1a +/* 80245788 002426E8 98 1A 05 68 */ stb r0, 0x568(r26) +/* 8024578C 002426EC D3 BA 05 6C */ stfs f29, 0x56c(r26) +/* 80245790 002426F0 D3 DA 05 70 */ stfs f30, 0x570(r26) +/* 80245794 002426F4 D3 FA 05 74 */ stfs f31, 0x574(r26) +/* 80245798 002426F8 D0 1A 05 78 */ stfs f0, 0x578(r26) +/* 8024579C 002426FC 90 DA 05 7C */ stw r6, 0x57c(r26) +/* 802457A0 00242700 80 DC 01 0C */ lwz r6, 0x10c(r28) +/* 802457A4 00242704 4B F8 35 F1 */ bl __ct__15CPathFindSearchFP7CPFAreaUiff +/* 802457A8 00242708 38 7A 06 64 */ addi r3, r26, 0x664 +/* 802457AC 0024270C 4B EF 95 A5 */ bl __ct__18CSteeringBehaviorsFv +/* 802457B0 00242710 7F A4 EB 78 */ mr r4, r29 +/* 802457B4 00242714 7F C5 F3 78 */ mr r5, r30 +/* 802457B8 00242718 38 7A 06 68 */ addi r3, r26, 0x668 +/* 802457BC 0024271C 4B FD 68 ED */ bl __ct__15CProjectileInfoFUiRC11CDamageInfo +/* 802457C0 00242720 C0 5B 00 00 */ lfs f2, 0(r27) +/* 802457C4 00242724 38 7A 06 90 */ addi r3, r26, 0x690 +/* 802457C8 00242728 C0 3B 00 04 */ lfs f1, 4(r27) +/* 802457CC 0024272C 38 81 00 70 */ addi r4, r1, 0x70 +/* 802457D0 00242730 C0 1B 00 08 */ lfs f0, 8(r27) +/* 802457D4 00242734 D0 41 00 64 */ stfs f2, 0x64(r1) +/* 802457D8 00242738 D0 21 00 68 */ stfs f1, 0x68(r1) +/* 802457DC 0024273C D0 01 00 6C */ stfs f0, 0x6c(r1) +/* 802457E0 00242740 93 E1 00 70 */ stw r31, 0x70(r1) +/* 802457E4 00242744 D0 41 00 74 */ stfs f2, 0x74(r1) +/* 802457E8 00242748 D0 21 00 78 */ stfs f1, 0x78(r1) +/* 802457EC 0024274C D0 01 00 7C */ stfs f0, 0x7c(r1) +/* 802457F0 00242750 4B ED 15 6D */ bl __ct__10CModelDataFRC10CStaticRes +/* 802457F4 00242754 38 00 00 00 */ li r0, 0 +/* 802457F8 00242758 38 7A 06 68 */ addi r3, r26, 0x668 +/* 802457FC 0024275C 90 1A 06 DC */ stw r0, 0x6dc(r26) +/* 80245800 00242760 48 0F B5 85 */ bl Lock__6CTokenFv +/* 80245804 00242764 3C 80 80 3D */ lis r4, lbl_803D4730@ha +/* 80245808 00242768 38 61 00 54 */ addi r3, r1, 0x54 +/* 8024580C 0024276C 38 84 47 30 */ addi r4, r4, lbl_803D4730@l +/* 80245810 00242770 4B DB F4 A9 */ bl string_l__4rstlFPCc +/* 80245814 00242774 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 80245818 00242778 38 81 00 54 */ addi r4, r1, 0x54 +/* 8024581C 0024277C 48 0F 89 45 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80245820 00242780 C0 02 B8 54 */ lfs f0, lbl_805AD574@sda21(r2) +/* 80245824 00242784 38 00 00 0A */ li r0, 0xa +/* 80245828 00242788 90 01 00 D8 */ stw r0, 0xd8(r1) +/* 8024582C 0024278C 38 7A 06 DC */ addi r3, r26, 0x6dc +/* 80245830 00242790 D0 01 00 DC */ stfs f0, 0xdc(r1) +/* 80245834 00242794 80 1A 06 DC */ lwz r0, 0x6dc(r26) +/* 80245838 00242798 1C 00 00 18 */ mulli r0, r0, 0x18 +/* 8024583C 0024279C 7F 63 02 14 */ add r27, r3, r0 +/* 80245840 002427A0 37 7B 00 04 */ addic. r27, r27, 4 +/* 80245844 002427A4 41 82 00 20 */ beq lbl_80245864 +/* 80245848 002427A8 7F 63 DB 78 */ mr r3, r27 +/* 8024584C 002427AC 38 81 00 C8 */ addi r4, r1, 0xc8 +/* 80245850 002427B0 48 0F 89 11 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80245854 002427B4 80 01 00 D8 */ lwz r0, 0xd8(r1) +/* 80245858 002427B8 90 1B 00 10 */ stw r0, 0x10(r27) +/* 8024585C 002427BC C0 01 00 DC */ lfs f0, 0xdc(r1) +/* 80245860 002427C0 D0 1B 00 14 */ stfs f0, 0x14(r27) +lbl_80245864: +/* 80245864 002427C4 80 9A 06 DC */ lwz r4, 0x6dc(r26) +/* 80245868 002427C8 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 8024586C 002427CC 38 04 00 01 */ addi r0, r4, 1 +/* 80245870 002427D0 90 1A 06 DC */ stw r0, 0x6dc(r26) +/* 80245874 002427D4 48 0F 82 6D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80245878 002427D8 38 61 00 54 */ addi r3, r1, 0x54 +/* 8024587C 002427DC 48 0F 82 65 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80245880 002427E0 3C 80 80 3D */ lis r4, lbl_803D4730@ha +/* 80245884 002427E4 38 61 00 44 */ addi r3, r1, 0x44 +/* 80245888 002427E8 38 84 47 30 */ addi r4, r4, lbl_803D4730@l +/* 8024588C 002427EC 38 84 00 0B */ addi r4, r4, 0xb +/* 80245890 002427F0 4B DB F4 29 */ bl string_l__4rstlFPCc +/* 80245894 002427F4 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 80245898 002427F8 38 81 00 44 */ addi r4, r1, 0x44 +/* 8024589C 002427FC 48 0F 88 C5 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 802458A0 00242800 C0 02 B8 54 */ lfs f0, lbl_805AD574@sda21(r2) +/* 802458A4 00242804 38 00 00 0B */ li r0, 0xb +/* 802458A8 00242808 90 01 00 C0 */ stw r0, 0xc0(r1) +/* 802458AC 0024280C 38 7A 06 DC */ addi r3, r26, 0x6dc +/* 802458B0 00242810 D0 01 00 C4 */ stfs f0, 0xc4(r1) +/* 802458B4 00242814 80 1A 06 DC */ lwz r0, 0x6dc(r26) +/* 802458B8 00242818 1C 00 00 18 */ mulli r0, r0, 0x18 +/* 802458BC 0024281C 7F 63 02 14 */ add r27, r3, r0 +/* 802458C0 00242820 37 7B 00 04 */ addic. r27, r27, 4 +/* 802458C4 00242824 41 82 00 20 */ beq lbl_802458E4 +/* 802458C8 00242828 7F 63 DB 78 */ mr r3, r27 +/* 802458CC 0024282C 38 81 00 B0 */ addi r4, r1, 0xb0 +/* 802458D0 00242830 48 0F 88 91 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 802458D4 00242834 80 01 00 C0 */ lwz r0, 0xc0(r1) +/* 802458D8 00242838 90 1B 00 10 */ stw r0, 0x10(r27) +/* 802458DC 0024283C C0 01 00 C4 */ lfs f0, 0xc4(r1) +/* 802458E0 00242840 D0 1B 00 14 */ stfs f0, 0x14(r27) +lbl_802458E4: +/* 802458E4 00242844 80 9A 06 DC */ lwz r4, 0x6dc(r26) +/* 802458E8 00242848 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 802458EC 0024284C 38 04 00 01 */ addi r0, r4, 1 +/* 802458F0 00242850 90 1A 06 DC */ stw r0, 0x6dc(r26) +/* 802458F4 00242854 48 0F 81 ED */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 802458F8 00242858 38 61 00 44 */ addi r3, r1, 0x44 +/* 802458FC 0024285C 48 0F 81 E5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80245900 00242860 3C 80 80 3D */ lis r4, lbl_803D4730@ha +/* 80245904 00242864 38 61 00 34 */ addi r3, r1, 0x34 +/* 80245908 00242868 38 84 47 30 */ addi r4, r4, lbl_803D4730@l +/* 8024590C 0024286C 38 84 00 16 */ addi r4, r4, 0x16 +/* 80245910 00242870 4B DB F3 A9 */ bl string_l__4rstlFPCc +/* 80245914 00242874 38 61 00 98 */ addi r3, r1, 0x98 +/* 80245918 00242878 38 81 00 34 */ addi r4, r1, 0x34 +/* 8024591C 0024287C 48 0F 88 45 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80245920 00242880 C0 02 B8 54 */ lfs f0, lbl_805AD574@sda21(r2) +/* 80245924 00242884 38 00 00 0C */ li r0, 0xc +/* 80245928 00242888 90 01 00 A8 */ stw r0, 0xa8(r1) +/* 8024592C 0024288C 38 7A 06 DC */ addi r3, r26, 0x6dc +/* 80245930 00242890 D0 01 00 AC */ stfs f0, 0xac(r1) +/* 80245934 00242894 80 1A 06 DC */ lwz r0, 0x6dc(r26) +/* 80245938 00242898 1C 00 00 18 */ mulli r0, r0, 0x18 +/* 8024593C 0024289C 7F 63 02 14 */ add r27, r3, r0 +/* 80245940 002428A0 37 7B 00 04 */ addic. r27, r27, 4 +/* 80245944 002428A4 41 82 00 20 */ beq lbl_80245964 +/* 80245948 002428A8 7F 63 DB 78 */ mr r3, r27 +/* 8024594C 002428AC 38 81 00 98 */ addi r4, r1, 0x98 +/* 80245950 002428B0 48 0F 88 11 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80245954 002428B4 80 01 00 A8 */ lwz r0, 0xa8(r1) +/* 80245958 002428B8 90 1B 00 10 */ stw r0, 0x10(r27) +/* 8024595C 002428BC C0 01 00 AC */ lfs f0, 0xac(r1) +/* 80245960 002428C0 D0 1B 00 14 */ stfs f0, 0x14(r27) +lbl_80245964: +/* 80245964 002428C4 80 9A 06 DC */ lwz r4, 0x6dc(r26) +/* 80245968 002428C8 38 61 00 98 */ addi r3, r1, 0x98 +/* 8024596C 002428CC 38 04 00 01 */ addi r0, r4, 1 +/* 80245970 002428D0 90 1A 06 DC */ stw r0, 0x6dc(r26) +/* 80245974 002428D4 48 0F 81 6D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80245978 002428D8 38 61 00 34 */ addi r3, r1, 0x34 +/* 8024597C 002428DC 48 0F 81 65 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80245980 002428E0 3C 80 80 3D */ lis r4, lbl_803D4730@ha +/* 80245984 002428E4 38 61 00 24 */ addi r3, r1, 0x24 +/* 80245988 002428E8 38 84 47 30 */ addi r4, r4, lbl_803D4730@l +/* 8024598C 002428EC 38 84 00 21 */ addi r4, r4, 0x21 +/* 80245990 002428F0 4B DB F3 29 */ bl string_l__4rstlFPCc +/* 80245994 002428F4 38 61 00 80 */ addi r3, r1, 0x80 +/* 80245998 002428F8 38 81 00 24 */ addi r4, r1, 0x24 +/* 8024599C 002428FC 48 0F 87 C5 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 802459A0 00242900 C0 02 B8 54 */ lfs f0, lbl_805AD574@sda21(r2) +/* 802459A4 00242904 38 00 00 0D */ li r0, 0xd +/* 802459A8 00242908 90 01 00 90 */ stw r0, 0x90(r1) +/* 802459AC 0024290C 38 7A 06 DC */ addi r3, r26, 0x6dc +/* 802459B0 00242910 D0 01 00 94 */ stfs f0, 0x94(r1) +/* 802459B4 00242914 80 1A 06 DC */ lwz r0, 0x6dc(r26) +/* 802459B8 00242918 1C 00 00 18 */ mulli r0, r0, 0x18 +/* 802459BC 0024291C 7F 63 02 14 */ add r27, r3, r0 +/* 802459C0 00242920 37 7B 00 04 */ addic. r27, r27, 4 +/* 802459C4 00242924 41 82 00 20 */ beq lbl_802459E4 +/* 802459C8 00242928 7F 63 DB 78 */ mr r3, r27 +/* 802459CC 0024292C 38 81 00 80 */ addi r4, r1, 0x80 +/* 802459D0 00242930 48 0F 87 91 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 802459D4 00242934 80 01 00 90 */ lwz r0, 0x90(r1) +/* 802459D8 00242938 90 1B 00 10 */ stw r0, 0x10(r27) +/* 802459DC 0024293C C0 01 00 94 */ lfs f0, 0x94(r1) +/* 802459E0 00242940 D0 1B 00 14 */ stfs f0, 0x14(r27) +lbl_802459E4: +/* 802459E4 00242944 80 9A 06 DC */ lwz r4, 0x6dc(r26) +/* 802459E8 00242948 38 61 00 80 */ addi r3, r1, 0x80 +/* 802459EC 0024294C 38 04 00 01 */ addi r0, r4, 1 +/* 802459F0 00242950 90 1A 06 DC */ stw r0, 0x6dc(r26) +/* 802459F4 00242954 48 0F 80 ED */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 802459F8 00242958 38 61 00 24 */ addi r3, r1, 0x24 +/* 802459FC 0024295C 48 0F 80 E5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80245A00 00242960 7F 43 D3 78 */ mr r3, r26 +/* 80245A04 00242964 E3 E1 01 28 */ psq_l f31, 296(r1), 0, qr0 +/* 80245A08 00242968 CB E1 01 20 */ lfd f31, 0x120(r1) +/* 80245A0C 0024296C E3 C1 01 18 */ psq_l f30, 280(r1), 0, qr0 +/* 80245A10 00242970 CB C1 01 10 */ lfd f30, 0x110(r1) +/* 80245A14 00242974 E3 A1 01 08 */ psq_l f29, 264(r1), 0, qr0 +/* 80245A18 00242978 CB A1 01 00 */ lfd f29, 0x100(r1) +/* 80245A1C 0024297C BB 01 00 E0 */ lmw r24, 0xe0(r1) +/* 80245A20 00242980 80 01 01 34 */ lwz r0, 0x134(r1) +/* 80245A24 00242984 7C 08 03 A6 */ mtlr r0 +/* 80245A28 00242988 38 21 01 30 */ addi r1, r1, 0x130 +/* 80245A2C 0024298C 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Enemies/CBabygoth.s b/asm/Kyoto_CWD/Enemies/CBabygoth.s new file mode 100644 index 00000000..6e2d6692 --- /dev/null +++ b/asm/Kyoto_CWD/Enemies/CBabygoth.s @@ -0,0 +1,7919 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global sub_8021d43c +sub_8021d43c: +/* 8021D43C 0021A39C 80 03 08 B4 */ lwz r0, 0x8b4(r3) +/* 8021D440 0021A3A0 2C 00 00 00 */ cmpwi r0, 0 +/* 8021D444 0021A3A4 40 82 00 0C */ bne lbl_8021D450 +/* 8021D448 0021A3A8 38 63 06 EC */ addi r3, r3, 0x6ec +/* 8021D44C 0021A3AC 4E 80 00 20 */ blr +lbl_8021D450: +/* 8021D450 0021A3B0 38 63 07 D0 */ addi r3, r3, 0x7d0 +/* 8021D454 0021A3B4 4E 80 00 20 */ blr + +.global IsListening__9CBabygothCFv +IsListening__9CBabygothCFv: +/* 8021D458 0021A3B8 38 60 00 01 */ li r3, 1 +/* 8021D45C 0021A3BC 4E 80 00 20 */ blr + +.global GetCollisionPrimitive__9CBabygothCFv +GetCollisionPrimitive__9CBabygothCFv: +/* 8021D460 0021A3C0 38 63 09 30 */ addi r3, r3, 0x930 +/* 8021D464 0021A3C4 4E 80 00 20 */ blr + +.global GetGravityConstant__9CBabygothCFv +GetGravityConstant__9CBabygothCFv: +/* 8021D468 0021A3C8 C0 22 B4 00 */ lfs f1, lbl_805AD120@sda21(r2) +/* 8021D46C 0021A3CC C0 02 96 A0 */ lfs f0, lbl_805AB3C0@sda21(r2) +/* 8021D470 0021A3D0 EC 21 00 32 */ fmuls f1, f1, f0 +/* 8021D474 0021A3D4 4E 80 00 20 */ blr + +.global sub_8021d478 +sub_8021d478: +/* 8021D478 0021A3D8 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 8021D47C 0021A3DC 7C 08 02 A6 */ mflr r0 +/* 8021D480 0021A3E0 90 01 00 74 */ stw r0, 0x74(r1) +/* 8021D484 0021A3E4 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 8021D488 0021A3E8 7C 7F 1B 78 */ mr r31, r3 +/* 8021D48C 0021A3EC 93 C1 00 68 */ stw r30, 0x68(r1) +/* 8021D490 0021A3F0 93 A1 00 64 */ stw r29, 0x64(r1) +/* 8021D494 0021A3F4 7C BD 2B 78 */ mr r29, r5 +/* 8021D498 0021A3F8 93 81 00 60 */ stw r28, 0x60(r1) +/* 8021D49C 0021A3FC 7C 9C 23 78 */ mr r28, r4 +/* 8021D4A0 0021A400 7F 83 E3 78 */ mr r3, r28 +/* 8021D4A4 0021A404 38 81 00 18 */ addi r4, r1, 0x18 +/* 8021D4A8 0021A408 A0 05 00 00 */ lhz r0, 0(r5) +/* 8021D4AC 0021A40C B0 01 00 18 */ sth r0, 0x18(r1) +/* 8021D4B0 0021A410 4B E2 F0 F5 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8021D4B4 0021A414 7C 64 1B 78 */ mr r4, r3 +/* 8021D4B8 0021A418 38 61 00 1C */ addi r3, r1, 0x1c +/* 8021D4BC 0021A41C 4B E8 83 DD */ bl "__ct__20TCastToPtr<7CWeapon>FP7CEntity" +/* 8021D4C0 0021A420 83 C3 00 04 */ lwz r30, 4(r3) +/* 8021D4C4 0021A424 28 1E 00 00 */ cmplwi r30, 0 +/* 8021D4C8 0021A428 41 82 00 BC */ beq lbl_8021D584 +/* 8021D4CC 0021A42C 80 1F 09 F8 */ lwz r0, 0x9f8(r31) +/* 8021D4D0 0021A430 2C 00 00 00 */ cmpwi r0, 0 +/* 8021D4D4 0021A434 41 82 00 B0 */ beq lbl_8021D584 +/* 8021D4D8 0021A438 80 1E 01 2C */ lwz r0, 0x12c(r30) +/* 8021D4DC 0021A43C 38 60 00 00 */ li r3, 0 +/* 8021D4E0 0021A440 C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 8021D4E4 0021A444 38 80 00 01 */ li r4, 1 +/* 8021D4E8 0021A448 90 01 00 40 */ stw r0, 0x40(r1) +/* 8021D4EC 0021A44C 80 AD 95 18 */ lwz r5, lbl_805A80D8@sda21(r13) +/* 8021D4F0 0021A450 88 1E 01 30 */ lbz r0, 0x130(r30) +/* 8021D4F4 0021A454 98 01 00 44 */ stb r0, 0x44(r1) +/* 8021D4F8 0021A458 C0 3E 01 34 */ lfs f1, 0x134(r30) +/* 8021D4FC 0021A45C D0 21 00 48 */ stfs f1, 0x48(r1) +/* 8021D500 0021A460 C0 3E 01 38 */ lfs f1, 0x138(r30) +/* 8021D504 0021A464 D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 8021D508 0021A468 C0 3E 01 3C */ lfs f1, 0x13c(r30) +/* 8021D50C 0021A46C D0 21 00 50 */ stfs f1, 0x50(r1) +/* 8021D510 0021A470 C0 3E 01 40 */ lfs f1, 0x140(r30) +/* 8021D514 0021A474 D0 21 00 54 */ stfs f1, 0x54(r1) +/* 8021D518 0021A478 88 1E 01 44 */ lbz r0, 0x144(r30) +/* 8021D51C 0021A47C 98 01 00 58 */ stb r0, 0x58(r1) +/* 8021D520 0021A480 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 8021D524 0021A484 48 16 C9 D1 */ bl __shl2i +/* 8021D528 0021A488 39 00 00 00 */ li r8, 0 +/* 8021D52C 0021A48C 39 40 00 03 */ li r10, 3 +/* 8021D530 0021A490 90 81 00 2C */ stw r4, 0x2c(r1) +/* 8021D534 0021A494 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8021D538 0021A498 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 8021D53C 0021A49C A0 1D 00 00 */ lhz r0, 0(r29) +/* 8021D540 0021A4A0 90 61 00 28 */ stw r3, 0x28(r1) +/* 8021D544 0021A4A4 7F 83 E3 78 */ mr r3, r28 +/* 8021D548 0021A4A8 38 81 00 14 */ addi r4, r1, 0x14 +/* 8021D54C 0021A4AC 38 A1 00 10 */ addi r5, r1, 0x10 +/* 8021D550 0021A4B0 91 01 00 34 */ stw r8, 0x34(r1) +/* 8021D554 0021A4B4 38 C1 00 0C */ addi r6, r1, 0xc +/* 8021D558 0021A4B8 38 E1 00 40 */ addi r7, r1, 0x40 +/* 8021D55C 0021A4BC 91 01 00 30 */ stw r8, 0x30(r1) +/* 8021D560 0021A4C0 39 01 00 28 */ addi r8, r1, 0x28 +/* 8021D564 0021A4C4 91 41 00 38 */ stw r10, 0x38(r1) +/* 8021D568 0021A4C8 A1 7E 00 EC */ lhz r11, 0xec(r30) +/* 8021D56C 0021A4CC B1 61 00 0C */ sth r11, 0xc(r1) +/* 8021D570 0021A4D0 A1 5F 09 FC */ lhz r10, 0x9fc(r31) +/* 8021D574 0021A4D4 B1 61 00 08 */ sth r11, 8(r1) +/* 8021D578 0021A4D8 B1 41 00 10 */ sth r10, 0x10(r1) +/* 8021D57C 0021A4DC B0 01 00 14 */ sth r0, 0x14(r1) +/* 8021D580 0021A4E0 4B E2 CB 21 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +lbl_8021D584: +/* 8021D584 0021A4E4 80 01 00 74 */ lwz r0, 0x74(r1) +/* 8021D588 0021A4E8 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 8021D58C 0021A4EC 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 8021D590 0021A4F0 83 A1 00 64 */ lwz r29, 0x64(r1) +/* 8021D594 0021A4F4 83 81 00 60 */ lwz r28, 0x60(r1) +/* 8021D598 0021A4F8 7C 08 03 A6 */ mtlr r0 +/* 8021D59C 0021A4FC 38 21 00 70 */ addi r1, r1, 0x70 +/* 8021D5A0 0021A500 4E 80 00 20 */ blr + +.global sub_8021d5a4 +sub_8021d5a4: +/* 8021D5A4 0021A504 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8021D5A8 0021A508 7C 08 02 A6 */ mflr r0 +/* 8021D5AC 0021A50C 90 01 00 34 */ stw r0, 0x34(r1) +/* 8021D5B0 0021A510 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8021D5B4 0021A514 3B E0 00 00 */ li r31, 0 +/* 8021D5B8 0021A518 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8021D5BC 0021A51C 7C 9E 23 78 */ mr r30, r4 +/* 8021D5C0 0021A520 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8021D5C4 0021A524 7C 7D 1B 78 */ mr r29, r3 +/* 8021D5C8 0021A528 48 00 00 50 */ b lbl_8021D618 +lbl_8021D5CC: +/* 8021D5CC 0021A52C 80 7D 09 28 */ lwz r3, 0x928(r29) +/* 8021D5D0 0021A530 7F E4 FB 78 */ mr r4, r31 +/* 8021D5D4 0021A534 4B F8 9C 65 */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 8021D5D8 0021A538 A0 03 00 3C */ lhz r0, 0x3c(r3) +/* 8021D5DC 0021A53C 7F C3 F3 78 */ mr r3, r30 +/* 8021D5E0 0021A540 38 81 00 08 */ addi r4, r1, 8 +/* 8021D5E4 0021A544 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8021D5E8 0021A548 B0 01 00 08 */ sth r0, 8(r1) +/* 8021D5EC 0021A54C 4B E2 EF 89 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8021D5F0 0021A550 7C 64 1B 78 */ mr r4, r3 +/* 8021D5F4 0021A554 38 61 00 10 */ addi r3, r1, 0x10 +/* 8021D5F8 0021A558 4B E9 1D 55 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8021D5FC 0021A55C 80 63 00 04 */ lwz r3, 4(r3) +/* 8021D600 0021A560 28 03 00 00 */ cmplwi r3, 0 +/* 8021D604 0021A564 41 82 00 10 */ beq lbl_8021D614 +/* 8021D608 0021A568 7F C5 F3 78 */ mr r5, r30 +/* 8021D60C 0021A56C 38 80 00 12 */ li r4, 0x12 +/* 8021D610 0021A570 4B E3 6D 41 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +lbl_8021D614: +/* 8021D614 0021A574 3B FF 00 01 */ addi r31, r31, 1 +lbl_8021D618: +/* 8021D618 0021A578 80 7D 09 28 */ lwz r3, 0x928(r29) +/* 8021D61C 0021A57C 4B F8 9C 2D */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 8021D620 0021A580 7C 1F 18 40 */ cmplw r31, r3 +/* 8021D624 0021A584 41 80 FF A8 */ blt lbl_8021D5CC +/* 8021D628 0021A588 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8021D62C 0021A58C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8021D630 0021A590 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8021D634 0021A594 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8021D638 0021A598 7C 08 03 A6 */ mtlr r0 +/* 8021D63C 0021A59C 38 21 00 30 */ addi r1, r1, 0x30 +/* 8021D640 0021A5A0 4E 80 00 20 */ blr + +.global sub_8021d644 +sub_8021d644: +/* 8021D644 0021A5A4 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8021D648 0021A5A8 7C 08 02 A6 */ mflr r0 +/* 8021D64C 0021A5AC 90 01 00 34 */ stw r0, 0x34(r1) +/* 8021D650 0021A5B0 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8021D654 0021A5B4 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8021D658 0021A5B8 7C 7E 1B 78 */ mr r30, r3 +/* 8021D65C 0021A5BC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8021D660 0021A5C0 A0 63 06 E8 */ lhz r3, 0x6e8(r3) +/* 8021D664 0021A5C4 7C 03 00 40 */ cmplw r3, r0 +/* 8021D668 0021A5C8 41 82 00 68 */ beq lbl_8021D6D0 +/* 8021D66C 0021A5CC A0 1E 06 E8 */ lhz r0, 0x6e8(r30) +/* 8021D670 0021A5D0 7C 83 23 78 */ mr r3, r4 +/* 8021D674 0021A5D4 38 81 00 18 */ addi r4, r1, 0x18 +/* 8021D678 0021A5D8 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8021D67C 0021A5DC 4B E2 EE F9 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8021D680 0021A5E0 7C 64 1B 78 */ mr r4, r3 +/* 8021D684 0021A5E4 38 61 00 1C */ addi r3, r1, 0x1c +/* 8021D688 0021A5E8 4B E8 9E ED */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" +/* 8021D68C 0021A5EC 83 E3 00 04 */ lwz r31, 4(r3) +/* 8021D690 0021A5F0 28 1F 00 00 */ cmplwi r31, 0 +/* 8021D694 0021A5F4 41 82 00 3C */ beq lbl_8021D6D0 +/* 8021D698 0021A5F8 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8021D69C 0021A5FC 7F E3 FB 78 */ mr r3, r31 +/* 8021D6A0 0021A600 38 81 00 14 */ addi r4, r1, 0x14 +/* 8021D6A4 0021A604 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8021D6A8 0021A608 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8021D6AC 0021A60C 48 01 B9 45 */ bl IsPartOfTeam__10CTeamAiMgrCF9TUniqueId +/* 8021D6B0 0021A610 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8021D6B4 0021A614 41 82 00 1C */ beq lbl_8021D6D0 +/* 8021D6B8 0021A618 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8021D6BC 0021A61C 7F E3 FB 78 */ mr r3, r31 +/* 8021D6C0 0021A620 38 81 00 0C */ addi r4, r1, 0xc +/* 8021D6C4 0021A624 B0 01 00 08 */ sth r0, 8(r1) +/* 8021D6C8 0021A628 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8021D6CC 0021A62C 48 01 BE 29 */ bl RemoveTeamAiRole__10CTeamAiMgrF9TUniqueId +lbl_8021D6D0: +/* 8021D6D0 0021A630 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8021D6D4 0021A634 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8021D6D8 0021A638 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8021D6DC 0021A63C 7C 08 03 A6 */ mtlr r0 +/* 8021D6E0 0021A640 38 21 00 30 */ addi r1, r1, 0x30 +/* 8021D6E4 0021A644 4E 80 00 20 */ blr + +.global sub_8021d6e8 +sub_8021d6e8: +/* 8021D6E8 0021A648 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8021D6EC 0021A64C 7C 08 02 A6 */ mflr r0 +/* 8021D6F0 0021A650 90 01 00 34 */ stw r0, 0x34(r1) +/* 8021D6F4 0021A654 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8021D6F8 0021A658 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8021D6FC 0021A65C 7C 7E 1B 78 */ mr r30, r3 +/* 8021D700 0021A660 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8021D704 0021A664 A0 63 06 E8 */ lhz r3, 0x6e8(r3) +/* 8021D708 0021A668 7C 03 00 40 */ cmplw r3, r0 +/* 8021D70C 0021A66C 41 82 00 68 */ beq lbl_8021D774 +/* 8021D710 0021A670 A0 1E 06 E8 */ lhz r0, 0x6e8(r30) +/* 8021D714 0021A674 7C 83 23 78 */ mr r3, r4 +/* 8021D718 0021A678 38 81 00 10 */ addi r4, r1, 0x10 +/* 8021D71C 0021A67C B0 01 00 10 */ sth r0, 0x10(r1) +/* 8021D720 0021A680 4B E2 EE 55 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8021D724 0021A684 7C 64 1B 78 */ mr r4, r3 +/* 8021D728 0021A688 38 61 00 14 */ addi r3, r1, 0x14 +/* 8021D72C 0021A68C 4B E8 9E 49 */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" +/* 8021D730 0021A690 83 E3 00 04 */ lwz r31, 4(r3) +/* 8021D734 0021A694 28 1F 00 00 */ cmplwi r31, 0 +/* 8021D738 0021A698 41 82 00 3C */ beq lbl_8021D774 +/* 8021D73C 0021A69C A0 1E 00 08 */ lhz r0, 8(r30) +/* 8021D740 0021A6A0 7F E3 FB 78 */ mr r3, r31 +/* 8021D744 0021A6A4 38 81 00 0C */ addi r4, r1, 0xc +/* 8021D748 0021A6A8 B0 01 00 08 */ sth r0, 8(r1) +/* 8021D74C 0021A6AC B0 01 00 0C */ sth r0, 0xc(r1) +/* 8021D750 0021A6B0 48 01 B8 A1 */ bl IsPartOfTeam__10CTeamAiMgrCF9TUniqueId +/* 8021D754 0021A6B4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8021D758 0021A6B8 40 82 00 1C */ bne lbl_8021D774 +/* 8021D75C 0021A6BC 7F E3 FB 78 */ mr r3, r31 +/* 8021D760 0021A6C0 7F C4 F3 78 */ mr r4, r30 +/* 8021D764 0021A6C4 38 A0 00 01 */ li r5, 1 +/* 8021D768 0021A6C8 38 C0 00 02 */ li r6, 2 +/* 8021D76C 0021A6CC 38 E0 FF FF */ li r7, -1 +/* 8021D770 0021A6D0 48 01 C0 3D */ bl AssignTeamAiRole__10CTeamAiMgrFRC3CAiiii +lbl_8021D774: +/* 8021D774 0021A6D4 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8021D778 0021A6D8 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8021D77C 0021A6DC 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8021D780 0021A6E0 7C 08 03 A6 */ mtlr r0 +/* 8021D784 0021A6E4 38 21 00 30 */ addi r1, r1, 0x30 +/* 8021D788 0021A6E8 4E 80 00 20 */ blr + +.global sub_8021d78c +sub_8021d78c: +/* 8021D78C 0021A6EC 2C 04 00 02 */ cmpwi r4, 2 +/* 8021D790 0021A6F0 C0 22 B4 04 */ lfs f1, lbl_805AD124@sda21(r2) +/* 8021D794 0021A6F4 41 82 00 3C */ beq lbl_8021D7D0 +/* 8021D798 0021A6F8 40 80 00 14 */ bge lbl_8021D7AC +/* 8021D79C 0021A6FC 2C 04 00 00 */ cmpwi r4, 0 +/* 8021D7A0 0021A700 41 82 00 18 */ beq lbl_8021D7B8 +/* 8021D7A4 0021A704 40 80 00 1C */ bge lbl_8021D7C0 + +.global sub_8021d7a8 +sub_8021d7a8: +/* 8021D7A8 0021A708 4E 80 00 20 */ blr +lbl_8021D7AC: +/* 8021D7AC 0021A70C 2C 04 00 04 */ cmpwi r4, 4 +/* 8021D7B0 0021A710 4C 80 00 20 */ bgelr + +.global sub_8021d7b4 +sub_8021d7b4: +/* 8021D7B4 0021A714 4E 80 00 20 */ blr +lbl_8021D7B8: +/* 8021D7B8 0021A718 C0 23 06 B0 */ lfs f1, 0x6b0(r3) +/* 8021D7BC 0021A71C 4E 80 00 20 */ blr +lbl_8021D7C0: +/* 8021D7C0 0021A720 C0 22 B4 08 */ lfs f1, lbl_805AD128@sda21(r2) +/* 8021D7C4 0021A724 C0 03 06 B0 */ lfs f0, 0x6b0(r3) +/* 8021D7C8 0021A728 EC 21 00 32 */ fmuls f1, f1, f0 +/* 8021D7CC 0021A72C 4E 80 00 20 */ blr +lbl_8021D7D0: +/* 8021D7D0 0021A730 C0 22 B4 0C */ lfs f1, lbl_805AD12C@sda21(r2) +/* 8021D7D4 0021A734 C0 03 06 B0 */ lfs f0, 0x6b0(r3) +/* 8021D7D8 0021A738 EC 21 00 32 */ fmuls f1, f1, f0 +/* 8021D7DC 0021A73C 4E 80 00 20 */ blr + +.global sub_8021d7e0 +sub_8021d7e0: +/* 8021D7E0 0021A740 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 8021D7E4 0021A744 7C 08 02 A6 */ mflr r0 +/* 8021D7E8 0021A748 3D 20 80 3D */ lis r9, lbl_803D31D0@ha +/* 8021D7EC 0021A74C 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 8021D7F0 0021A750 BE E1 00 8C */ stmw r23, 0x8c(r1) +/* 8021D7F4 0021A754 7C 79 1B 78 */ mr r25, r3 +/* 8021D7F8 0021A758 7C BB 2B 78 */ mr r27, r5 +/* 8021D7FC 0021A75C 38 69 31 D0 */ addi r3, r9, lbl_803D31D0@l +/* 8021D800 0021A760 7C 9A 23 78 */ mr r26, r4 +/* 8021D804 0021A764 7C DC 33 78 */ mr r28, r6 +/* 8021D808 0021A768 38 83 00 2D */ addi r4, r3, 0x2d +/* 8021D80C 0021A76C 7C FD 3B 78 */ mr r29, r7 +/* 8021D810 0021A770 7D 1E 43 78 */ mr r30, r8 +/* 8021D814 0021A774 3B 00 00 00 */ li r24, 0 +/* 8021D818 0021A778 3A E0 00 00 */ li r23, 0 +/* 8021D81C 0021A77C 38 60 01 00 */ li r3, 0x100 +/* 8021D820 0021A780 38 A0 00 00 */ li r5, 0 +/* 8021D824 0021A784 48 0F 80 49 */ bl __nw__FUlPCcPCc +/* 8021D828 0021A788 7C 7F 1B 79 */ or. r31, r3, r3 +/* 8021D82C 0021A78C 41 82 00 B4 */ beq lbl_8021D8E0 +/* 8021D830 0021A790 80 B9 00 64 */ lwz r5, 0x64(r25) +/* 8021D834 0021A794 3C 60 80 3D */ lis r3, lbl_803D31D0@ha +/* 8021D838 0021A798 38 83 31 D0 */ addi r4, r3, lbl_803D31D0@l +/* 8021D83C 0021A79C 38 61 00 48 */ addi r3, r1, 0x48 +/* 8021D840 0021A7A0 C0 05 00 00 */ lfs f0, 0(r5) +/* 8021D844 0021A7A4 38 84 00 34 */ addi r4, r4, 0x34 +/* 8021D848 0021A7A8 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 8021D84C 0021A7AC C0 05 00 04 */ lfs f0, 4(r5) +/* 8021D850 0021A7B0 D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 8021D854 0021A7B4 C0 05 00 08 */ lfs f0, 8(r5) +/* 8021D858 0021A7B8 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 8021D85C 0021A7BC 4B DE 74 5D */ bl string_l__4rstlFPCc +/* 8021D860 0021A7C0 80 0D A3 88 */ lwz r0, lbl_805A8F48@sda21(r13) +/* 8021D864 0021A7C4 3C 60 80 57 */ lis r3, lbl_8056D410@ha +/* 8021D868 0021A7C8 38 A3 D4 10 */ addi r5, r3, lbl_8056D410@l +/* 8021D86C 0021A7CC 38 81 00 34 */ addi r4, r1, 0x34 +/* 8021D870 0021A7D0 90 01 00 38 */ stw r0, 0x38(r1) +/* 8021D874 0021A7D4 38 61 00 64 */ addi r3, r1, 0x64 +/* 8021D878 0021A7D8 38 C1 00 38 */ addi r6, r1, 0x38 +/* 8021D87C 0021A7DC 3B 00 00 01 */ li r24, 1 +/* 8021D880 0021A7E0 80 19 00 04 */ lwz r0, 4(r25) +/* 8021D884 0021A7E4 90 01 00 30 */ stw r0, 0x30(r1) +/* 8021D888 0021A7E8 90 01 00 34 */ stw r0, 0x34(r1) +/* 8021D88C 0021A7EC 4B E3 3B F9 */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" +/* 8021D890 0021A7F0 7F 44 D3 78 */ mr r4, r26 +/* 8021D894 0021A7F4 38 61 00 10 */ addi r3, r1, 0x10 +/* 8021D898 0021A7F8 3A E0 00 01 */ li r23, 1 +/* 8021D89C 0021A7FC 4B E2 F8 41 */ bl AllocateUniqueId__13CStateManagerFv +/* 8021D8A0 0021A800 A0 01 00 10 */ lhz r0, 0x10(r1) +/* 8021D8A4 0021A804 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8021D8A8 0021A808 48 12 C7 05 */ bl White__6CColorFv +/* 8021D8AC 0021A80C 38 01 00 58 */ addi r0, r1, 0x58 +/* 8021D8B0 0021A810 7F 64 DB 78 */ mr r4, r27 +/* 8021D8B4 0021A814 90 01 00 08 */ stw r0, 8(r1) +/* 8021D8B8 0021A818 7F 89 E3 78 */ mr r9, r28 +/* 8021D8BC 0021A81C 38 A1 00 14 */ addi r5, r1, 0x14 +/* 8021D8C0 0021A820 38 E1 00 64 */ addi r7, r1, 0x64 +/* 8021D8C4 0021A824 90 61 00 0C */ stw r3, 0xc(r1) +/* 8021D8C8 0021A828 7F E3 FB 78 */ mr r3, r31 +/* 8021D8CC 0021A82C 39 01 00 48 */ addi r8, r1, 0x48 +/* 8021D8D0 0021A830 38 C0 00 01 */ li r6, 1 +/* 8021D8D4 0021A834 39 40 00 00 */ li r10, 0 +/* 8021D8D8 0021A838 4B E3 D2 21 */ bl "__ct__10CExplosionFRC31TLockedToken<15CGenDescription>9TUniqueIdbRC11CEntityInfoRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC12CTransform4fUiRC9CVector3fRC6CColor" +/* 8021D8DC 0021A83C 7C 7F 1B 78 */ mr r31, r3 +lbl_8021D8E0: +/* 8021D8E0 0021A840 7E E0 07 75 */ extsb. r0, r23 +/* 8021D8E4 0021A844 41 82 00 44 */ beq lbl_8021D928 +/* 8021D8E8 0021A848 80 01 00 6C */ lwz r0, 0x6c(r1) +/* 8021D8EC 0021A84C 80 61 00 74 */ lwz r3, 0x74(r1) +/* 8021D8F0 0021A850 1C 00 00 0C */ mulli r0, r0, 0xc +/* 8021D8F4 0021A854 90 61 00 1C */ stw r3, 0x1c(r1) +/* 8021D8F8 0021A858 7C 64 1B 78 */ mr r4, r3 +/* 8021D8FC 0021A85C 7C 03 02 14 */ add r0, r3, r0 +/* 8021D900 0021A860 90 61 00 18 */ stw r3, 0x18(r1) +/* 8021D904 0021A864 90 01 00 24 */ stw r0, 0x24(r1) +/* 8021D908 0021A868 90 01 00 20 */ stw r0, 0x20(r1) +/* 8021D90C 0021A86C 48 00 00 08 */ b lbl_8021D914 +lbl_8021D910: +/* 8021D910 0021A870 38 84 00 0C */ addi r4, r4, 0xc +lbl_8021D914: +/* 8021D914 0021A874 7C 04 00 40 */ cmplw r4, r0 +/* 8021D918 0021A878 40 82 FF F8 */ bne lbl_8021D910 +/* 8021D91C 0021A87C 28 03 00 00 */ cmplwi r3, 0 +/* 8021D920 0021A880 41 82 00 08 */ beq lbl_8021D928 +/* 8021D924 0021A884 48 0F 80 0D */ bl Free__7CMemoryFPCv +lbl_8021D928: +/* 8021D928 0021A888 7F 00 07 75 */ extsb. r0, r24 +/* 8021D92C 0021A88C 41 82 00 0C */ beq lbl_8021D938 +/* 8021D930 0021A890 38 61 00 48 */ addi r3, r1, 0x48 +/* 8021D934 0021A894 48 12 01 AD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8021D938: +/* 8021D938 0021A898 28 1F 00 00 */ cmplwi r31, 0 +/* 8021D93C 0021A89C 41 82 00 80 */ beq lbl_8021D9BC +/* 8021D940 0021A8A0 7F 43 D3 78 */ mr r3, r26 +/* 8021D944 0021A8A4 7F E4 FB 78 */ mr r4, r31 +/* 8021D948 0021A8A8 4B E2 F3 AD */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +/* 8021D94C 0021A8AC 57 C0 06 3F */ clrlwi. r0, r30, 0x18 +/* 8021D950 0021A8B0 41 82 00 2C */ beq lbl_8021D97C +/* 8021D954 0021A8B4 88 A2 CC 40 */ lbz r5, lbl_805AE960@sda21(r2) +/* 8021D958 0021A8B8 7F A4 EB 78 */ mr r4, r29 +/* 8021D95C 0021A8BC A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 8021D960 0021A8C0 38 61 00 2C */ addi r3, r1, 0x2c +/* 8021D964 0021A8C4 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8021D968 0021A8C8 38 C0 00 40 */ li r6, 0x40 +/* 8021D96C 0021A8CC 38 E0 00 00 */ li r7, 0 +/* 8021D970 0021A8D0 39 20 00 00 */ li r9, 0 +/* 8021D974 0021A8D4 48 0C C4 01 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 8021D978 0021A8D8 48 00 00 44 */ b lbl_8021D9BC +lbl_8021D97C: +/* 8021D97C 0021A8DC 81 59 00 04 */ lwz r10, 4(r25) +/* 8021D980 0021A8E0 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 8021D984 0021A8E4 C0 59 00 60 */ lfs f2, 0x60(r25) +/* 8021D988 0021A8E8 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 8021D98C 0021A8EC C0 39 00 50 */ lfs f1, 0x50(r25) +/* 8021D990 0021A8F0 7F A4 EB 78 */ mr r4, r29 +/* 8021D994 0021A8F4 C0 19 00 40 */ lfs f0, 0x40(r25) +/* 8021D998 0021A8F8 38 61 00 28 */ addi r3, r1, 0x28 +/* 8021D99C 0021A8FC A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) +/* 8021D9A0 0021A900 38 A1 00 3C */ addi r5, r1, 0x3c +/* 8021D9A4 0021A904 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 8021D9A8 0021A908 38 E0 00 00 */ li r7, 0 +/* 8021D9AC 0021A90C 39 00 00 00 */ li r8, 0 +/* 8021D9B0 0021A910 D0 21 00 40 */ stfs f1, 0x40(r1) +/* 8021D9B4 0021A914 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 8021D9B8 0021A918 48 0C C8 F9 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +lbl_8021D9BC: +/* 8021D9BC 0021A91C BA E1 00 8C */ lmw r23, 0x8c(r1) +/* 8021D9C0 0021A920 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 8021D9C4 0021A924 7C 08 03 A6 */ mtlr r0 +/* 8021D9C8 0021A928 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 8021D9CC 0021A92C 4E 80 00 20 */ blr + +.global sub_8021d9d0 +sub_8021d9d0: +/* 8021D9D0 0021A930 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8021D9D4 0021A934 7C 08 02 A6 */ mflr r0 +/* 8021D9D8 0021A938 90 01 00 34 */ stw r0, 0x34(r1) +/* 8021D9DC 0021A93C BF 61 00 1C */ stmw r27, 0x1c(r1) +/* 8021D9E0 0021A940 7C 7B 1B 78 */ mr r27, r3 +/* 8021D9E4 0021A944 7C 9C 23 78 */ mr r28, r4 +/* 8021D9E8 0021A948 38 9B 0A 08 */ addi r4, r27, 0xa08 +/* 8021D9EC 0021A94C 80 63 00 64 */ lwz r3, 0x64(r3) +/* 8021D9F0 0021A950 80 63 00 10 */ lwz r3, 0x10(r3) +/* 8021D9F4 0021A954 4B E1 06 A9 */ bl "SubstituteModelData__9CAnimDataFRC29TCachedToken<13CSkinnedModel>" +/* 8021D9F8 0021A958 3B DB 09 FC */ addi r30, r27, 0x9fc +/* 8021D9FC 0021A95C 3B E0 00 29 */ li r31, 0x29 +/* 8021DA00 0021A960 7F DD F3 78 */ mr r29, r30 +/* 8021DA04 0021A964 48 00 00 38 */ b lbl_8021DA3C +lbl_8021DA08: +/* 8021DA08 0021A968 A0 1D 00 00 */ lhz r0, 0(r29) +/* 8021DA0C 0021A96C 7F 83 E3 78 */ mr r3, r28 +/* 8021DA10 0021A970 38 81 00 08 */ addi r4, r1, 8 +/* 8021DA14 0021A974 B0 01 00 08 */ sth r0, 8(r1) +/* 8021DA18 0021A978 4B E2 EB 5D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8021DA1C 0021A97C 7C 64 1B 78 */ mr r4, r3 +/* 8021DA20 0021A980 38 61 00 0C */ addi r3, r1, 0xc +/* 8021DA24 0021A984 4B E9 19 29 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8021DA28 0021A988 80 63 00 04 */ lwz r3, 4(r3) +/* 8021DA2C 0021A98C 28 03 00 00 */ cmplwi r3, 0 +/* 8021DA30 0021A990 41 82 00 08 */ beq lbl_8021DA38 +/* 8021DA34 0021A994 93 E3 03 00 */ stw r31, 0x300(r3) +lbl_8021DA38: +/* 8021DA38 0021A998 3B BD 00 02 */ addi r29, r29, 2 +lbl_8021DA3C: +/* 8021DA3C 0021A99C 80 1B 09 F8 */ lwz r0, 0x9f8(r27) +/* 8021DA40 0021A9A0 54 00 08 3C */ slwi r0, r0, 1 +/* 8021DA44 0021A9A4 7C 1E 02 14 */ add r0, r30, r0 +/* 8021DA48 0021A9A8 7C 1D 00 40 */ cmplw r29, r0 +/* 8021DA4C 0021A9AC 40 82 FF BC */ bne lbl_8021DA08 +/* 8021DA50 0021A9B0 38 00 00 00 */ li r0, 0 +/* 8021DA54 0021A9B4 90 1B 0A 04 */ stw r0, 0xa04(r27) +/* 8021DA58 0021A9B8 BB 61 00 1C */ lmw r27, 0x1c(r1) +/* 8021DA5C 0021A9BC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8021DA60 0021A9C0 7C 08 03 A6 */ mtlr r0 +/* 8021DA64 0021A9C4 38 21 00 30 */ addi r1, r1, 0x30 +/* 8021DA68 0021A9C8 4E 80 00 20 */ blr + +.global sub_8021da6c +sub_8021da6c: +/* 8021DA6C 0021A9CC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8021DA70 0021A9D0 7C 08 02 A6 */ mflr r0 +/* 8021DA74 0021A9D4 90 01 00 24 */ stw r0, 0x24(r1) +/* 8021DA78 0021A9D8 DB E1 00 10 */ stfd f31, 0x10(r1) +/* 8021DA7C 0021A9DC F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 +/* 8021DA80 0021A9E0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8021DA84 0021A9E4 93 C1 00 08 */ stw r30, 8(r1) +/* 8021DA88 0021A9E8 88 03 0A 48 */ lbz r0, 0xa48(r3) +/* 8021DA8C 0021A9EC FF E0 08 90 */ fmr f31, f1 +/* 8021DA90 0021A9F0 7C 7E 1B 78 */ mr r30, r3 +/* 8021DA94 0021A9F4 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 8021DA98 0021A9F8 41 82 00 48 */ beq lbl_8021DAE0 +/* 8021DA9C 0021A9FC 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 8021DAA0 0021AA00 3B E0 00 00 */ li r31, 0 +/* 8021DAA4 0021AA04 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8021DAA8 0021AA08 40 82 00 1C */ bne lbl_8021DAC4 +/* 8021DAAC 0021AA0C 80 64 09 00 */ lwz r3, 0x900(r4) +/* 8021DAB0 0021AA10 48 0F 4A 2D */ bl Float__9CRandom16Fv +/* 8021DAB4 0021AA14 C0 02 B4 10 */ lfs f0, lbl_805AD130@sda21(r2) +/* 8021DAB8 0021AA18 EC 00 07 F2 */ fmuls f0, f0, f31 +/* 8021DABC 0021AA1C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8021DAC0 0021AA20 40 80 00 08 */ bge lbl_8021DAC8 +lbl_8021DAC4: +/* 8021DAC4 0021AA24 3B E0 00 01 */ li r31, 1 +lbl_8021DAC8: +/* 8021DAC8 0021AA28 88 1E 0A 48 */ lbz r0, 0xa48(r30) +/* 8021DACC 0021AA2C 53 E0 3E 30 */ rlwimi r0, r31, 7, 0x18, 0x18 +/* 8021DAD0 0021AA30 98 1E 0A 48 */ stb r0, 0xa48(r30) +/* 8021DAD4 0021AA34 88 1E 0A 48 */ lbz r0, 0xa48(r30) +/* 8021DAD8 0021AA38 54 03 CF FE */ rlwinm r3, r0, 0x19, 0x1f, 0x1f +/* 8021DADC 0021AA3C 48 00 00 08 */ b lbl_8021DAE4 +lbl_8021DAE0: +/* 8021DAE0 0021AA40 38 60 00 00 */ li r3, 0 +lbl_8021DAE4: +/* 8021DAE4 0021AA44 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 +/* 8021DAE8 0021AA48 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8021DAEC 0021AA4C CB E1 00 10 */ lfd f31, 0x10(r1) +/* 8021DAF0 0021AA50 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8021DAF4 0021AA54 83 C1 00 08 */ lwz r30, 8(r1) +/* 8021DAF8 0021AA58 7C 08 03 A6 */ mtlr r0 +/* 8021DAFC 0021AA5C 38 21 00 20 */ addi r1, r1, 0x20 +/* 8021DB00 0021AA60 4E 80 00 20 */ blr + +.global sub_8021db04 +sub_8021db04: +/* 8021DB04 0021AA64 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8021DB08 0021AA68 7C 08 02 A6 */ mflr r0 +/* 8021DB0C 0021AA6C 90 01 00 24 */ stw r0, 0x24(r1) +/* 8021DB10 0021AA70 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8021DB14 0021AA74 7C 9F 23 78 */ mr r31, r4 +/* 8021DB18 0021AA78 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8021DB1C 0021AA7C 7C 7E 1B 78 */ mr r30, r3 +/* 8021DB20 0021AA80 88 03 04 00 */ lbz r0, 0x400(r3) +/* 8021DB24 0021AA84 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8021DB28 0021AA88 41 82 00 5C */ beq lbl_8021DB84 +/* 8021DB2C 0021AA8C 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8021DB30 0021AA90 4B F1 D0 7D */ bl GetFallState__15CBodyControllerCFv +/* 8021DB34 0021AA94 2C 03 00 00 */ cmpwi r3, 0 +/* 8021DB38 0021AA98 41 82 00 4C */ beq lbl_8021DB84 +/* 8021DB3C 0021AA9C 88 1E 0A 49 */ lbz r0, 0xa49(r30) +/* 8021DB40 0021AAA0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8021DB44 0021AAA4 40 82 00 40 */ bne lbl_8021DB84 +/* 8021DB48 0021AAA8 3C 80 80 3D */ lis r4, lbl_803D31D0@ha +/* 8021DB4C 0021AAAC 38 61 00 08 */ addi r3, r1, 8 +/* 8021DB50 0021AAB0 38 84 31 D0 */ addi r4, r4, lbl_803D31D0@l +/* 8021DB54 0021AAB4 38 84 00 4C */ addi r4, r4, 0x4c +/* 8021DB58 0021AAB8 4B DE 71 61 */ bl string_l__4rstlFPCc +/* 8021DB5C 0021AABC 7F C3 F3 78 */ mr r3, r30 +/* 8021DB60 0021AAC0 4B E8 4D 99 */ bl GetStateMachine__3CAiFv +/* 8021DB64 0021AAC4 7C 66 1B 78 */ mr r6, r3 +/* 8021DB68 0021AAC8 7F E4 FB 78 */ mr r4, r31 +/* 8021DB6C 0021AACC 7F C5 F3 78 */ mr r5, r30 +/* 8021DB70 0021AAD0 38 7E 03 30 */ addi r3, r30, 0x330 +/* 8021DB74 0021AAD4 38 E1 00 08 */ addi r7, r1, 8 +/* 8021DB78 0021AAD8 4B E6 20 8D */ bl "SetState__18CStateMachineStateFR13CStateManagerR3CAiPC13CStateMachineRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8021DB7C 0021AADC 38 61 00 08 */ addi r3, r1, 8 +/* 8021DB80 0021AAE0 48 11 FF 61 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8021DB84: +/* 8021DB84 0021AAE4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8021DB88 0021AAE8 38 60 00 00 */ li r3, 0 +/* 8021DB8C 0021AAEC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8021DB90 0021AAF0 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8021DB94 0021AAF4 7C 08 03 A6 */ mtlr r0 +/* 8021DB98 0021AAF8 38 21 00 20 */ addi r1, r1, 0x20 +/* 8021DB9C 0021AAFC 4E 80 00 20 */ blr + +.global sub_8021dba0 +sub_8021dba0: +/* 8021DBA0 0021AB00 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 8021DBA4 0021AB04 7C 08 02 A6 */ mflr r0 +/* 8021DBA8 0021AB08 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 8021DBAC 0021AB0C DB E1 00 90 */ stfd f31, 0x90(r1) +/* 8021DBB0 0021AB10 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 +/* 8021DBB4 0021AB14 93 E1 00 8C */ stw r31, 0x8c(r1) +/* 8021DBB8 0021AB18 93 C1 00 88 */ stw r30, 0x88(r1) +/* 8021DBBC 0021AB1C 7C 7F 1B 78 */ mr r31, r3 +/* 8021DBC0 0021AB20 FF E0 08 90 */ fmr f31, f1 +/* 8021DBC4 0021AB24 80 03 05 68 */ lwz r0, 0x568(r3) +/* 8021DBC8 0021AB28 7C 9E 23 78 */ mr r30, r4 +/* 8021DBCC 0021AB2C 2C 00 00 03 */ cmpwi r0, 3 +/* 8021DBD0 0021AB30 41 82 01 EC */ beq lbl_8021DDBC +/* 8021DBD4 0021AB34 40 80 02 14 */ bge lbl_8021DDE8 +/* 8021DBD8 0021AB38 2C 00 00 00 */ cmpwi r0, 0 +/* 8021DBDC 0021AB3C 41 82 00 08 */ beq lbl_8021DBE4 +/* 8021DBE0 0021AB40 48 00 02 08 */ b lbl_8021DDE8 +lbl_8021DBE4: +/* 8021DBE4 0021AB44 C0 1F 08 DC */ lfs f0, 0x8dc(r31) +/* 8021DBE8 0021AB48 EC 00 F8 2A */ fadds f0, f0, f31 +/* 8021DBEC 0021AB4C D0 1F 08 DC */ stfs f0, 0x8dc(r31) +/* 8021DBF0 0021AB50 C0 3F 08 DC */ lfs f1, 0x8dc(r31) +/* 8021DBF4 0021AB54 C0 1F 06 D0 */ lfs f0, 0x6d0(r31) +/* 8021DBF8 0021AB58 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8021DBFC 0021AB5C 40 80 01 B4 */ bge lbl_8021DDB0 +/* 8021DC00 0021AB60 88 1F 0A 48 */ lbz r0, 0xa48(r31) +/* 8021DC04 0021AB64 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 8021DC08 0021AB68 40 82 00 B8 */ bne lbl_8021DCC0 +/* 8021DC0C 0021AB6C 38 00 00 03 */ li r0, 3 +/* 8021DC10 0021AB70 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 8021DC14 0021AB74 90 1F 05 68 */ stw r0, 0x568(r31) +/* 8021DC18 0021AB78 38 C4 AA 68 */ addi r6, r4, lbl_803DAA68@l +/* 8021DC1C 0021AB7C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8021DC20 0021AB80 38 E0 00 05 */ li r7, 5 +/* 8021DC24 0021AB84 C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) +/* 8021DC28 0021AB88 38 A0 00 01 */ li r5, 1 +/* 8021DC2C 0021AB8C 38 00 00 00 */ li r0, 0 +/* 8021DC30 0021AB90 3C 80 80 3E */ lis r4, lbl_803DA9D8@ha +/* 8021DC34 0021AB94 C0 23 00 04 */ lfs f1, 4(r3) +/* 8021DC38 0021AB98 C0 03 00 08 */ lfs f0, 8(r3) +/* 8021DC3C 0021AB9C 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8021DC40 0021ABA0 90 C1 00 08 */ stw r6, 8(r1) +/* 8021DC44 0021ABA4 38 C4 A9 D8 */ addi r6, r4, lbl_803DA9D8@l +/* 8021DC48 0021ABA8 3B E3 00 04 */ addi r31, r3, 4 +/* 8021DC4C 0021ABAC 38 80 00 05 */ li r4, 5 +/* 8021DC50 0021ABB0 90 E1 00 0C */ stw r7, 0xc(r1) +/* 8021DC54 0021ABB4 7F E3 FB 78 */ mr r3, r31 +/* 8021DC58 0021ABB8 90 C1 00 08 */ stw r6, 8(r1) +/* 8021DC5C 0021ABBC 90 A1 00 10 */ stw r5, 0x10(r1) +/* 8021DC60 0021ABC0 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 8021DC64 0021ABC4 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 8021DC68 0021ABC8 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8021DC6C 0021ABCC 98 01 00 20 */ stb r0, 0x20(r1) +/* 8021DC70 0021ABD0 4B F1 37 C9 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8021DC74 0021ABD4 80 01 00 0C */ lwz r0, 0xc(r1) +/* 8021DC78 0021ABD8 3C 60 80 3E */ lis r3, lbl_803DA9D8@ha +/* 8021DC7C 0021ABDC 38 83 A9 D8 */ addi r4, r3, lbl_803DA9D8@l +/* 8021DC80 0021ABE0 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8021DC84 0021ABE4 90 1F 01 10 */ stw r0, 0x110(r31) +/* 8021DC88 0021ABE8 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 8021DC8C 0021ABEC 80 61 00 10 */ lwz r3, 0x10(r1) +/* 8021DC90 0021ABF0 80 A1 00 14 */ lwz r5, 0x14(r1) +/* 8021DC94 0021ABF4 90 7F 01 14 */ stw r3, 0x114(r31) +/* 8021DC98 0021ABF8 80 61 00 18 */ lwz r3, 0x18(r1) +/* 8021DC9C 0021ABFC 90 BF 01 18 */ stw r5, 0x118(r31) +/* 8021DCA0 0021AC00 80 A1 00 1C */ lwz r5, 0x1c(r1) +/* 8021DCA4 0021AC04 90 7F 01 1C */ stw r3, 0x11c(r31) +/* 8021DCA8 0021AC08 88 61 00 20 */ lbz r3, 0x20(r1) +/* 8021DCAC 0021AC0C 90 BF 01 20 */ stw r5, 0x120(r31) +/* 8021DCB0 0021AC10 90 81 00 08 */ stw r4, 8(r1) +/* 8021DCB4 0021AC14 98 7F 01 24 */ stb r3, 0x124(r31) +/* 8021DCB8 0021AC18 90 01 00 08 */ stw r0, 8(r1) +/* 8021DCBC 0021AC1C 48 00 01 2C */ b lbl_8021DDE8 +lbl_8021DCC0: +/* 8021DCC0 0021AC20 7F E4 FB 78 */ mr r4, r31 +/* 8021DCC4 0021AC24 38 61 00 24 */ addi r3, r1, 0x24 +/* 8021DCC8 0021AC28 38 BF 09 F4 */ addi r5, r31, 0x9f4 +/* 8021DCCC 0021AC2C 4B E5 AB ED */ bl GetLctrTransform__10CPatternedCFRC6CSegId +/* 8021DCD0 0021AC30 38 61 00 54 */ addi r3, r1, 0x54 +/* 8021DCD4 0021AC34 38 81 00 24 */ addi r4, r1, 0x24 +/* 8021DCD8 0021AC38 48 0F 4E 9D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8021DCDC 0021AC3C 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 8021DCE0 0021AC40 C0 01 00 70 */ lfs f0, 0x70(r1) +/* 8021DCE4 0021AC44 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 8021DCE8 0021AC48 C0 63 00 40 */ lfs f3, 0x40(r3) +/* 8021DCEC 0021AC4C EC 01 00 28 */ fsubs f0, f1, f0 +/* 8021DCF0 0021AC50 C0 41 00 60 */ lfs f2, 0x60(r1) +/* 8021DCF4 0021AC54 C0 3F 00 48 */ lfs f1, 0x48(r31) +/* 8021DCF8 0021AC58 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8021DCFC 0021AC5C C0 83 00 60 */ lfs f4, 0x60(r3) +/* 8021DD00 0021AC60 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8021DD04 0021AC64 C0 61 00 80 */ lfs f3, 0x80(r1) +/* 8021DD08 0021AC68 C0 3F 00 38 */ lfs f1, 0x38(r31) +/* 8021DD0C 0021AC6C EC 64 18 28 */ fsubs f3, f4, f3 +/* 8021DD10 0021AC70 C0 9F 00 58 */ lfs f4, 0x58(r31) +/* 8021DD14 0021AC74 EC 21 00 BA */ fmadds f1, f1, f2, f0 +/* 8021DD18 0021AC78 C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 8021DD1C 0021AC7C EC 24 08 FA */ fmadds f1, f4, f3, f1 +/* 8021DD20 0021AC80 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8021DD24 0021AC84 40 81 00 80 */ ble lbl_8021DDA4 +/* 8021DD28 0021AC88 7F E3 FB 78 */ mr r3, r31 +/* 8021DD2C 0021AC8C 38 80 00 00 */ li r4, 0 +/* 8021DD30 0021AC90 48 00 03 6D */ bl sub_8021e09c +/* 8021DD34 0021AC94 7F E3 FB 78 */ mr r3, r31 +/* 8021DD38 0021AC98 81 9F 00 00 */ lwz r12, 0(r31) +/* 8021DD3C 0021AC9C 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 8021DD40 0021ACA0 7D 89 03 A6 */ mtctr r12 +/* 8021DD44 0021ACA4 4E 80 04 21 */ bctrl +/* 8021DD48 0021ACA8 28 03 00 00 */ cmplwi r3, 0 +/* 8021DD4C 0021ACAC 41 82 00 4C */ beq lbl_8021DD98 +/* 8021DD50 0021ACB0 7F E3 FB 78 */ mr r3, r31 +/* 8021DD54 0021ACB4 7F C4 F3 78 */ mr r4, r30 +/* 8021DD58 0021ACB8 81 9F 00 00 */ lwz r12, 0(r31) +/* 8021DD5C 0021ACBC C0 22 B4 04 */ lfs f1, lbl_805AD124@sda21(r2) +/* 8021DD60 0021ACC0 81 8C 01 90 */ lwz r12, 0x190(r12) +/* 8021DD64 0021ACC4 7D 89 03 A6 */ mtctr r12 +/* 8021DD68 0021ACC8 4E 80 04 21 */ bctrl +/* 8021DD6C 0021ACCC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8021DD70 0021ACD0 40 82 00 28 */ bne lbl_8021DD98 +/* 8021DD74 0021ACD4 FC 20 F8 90 */ fmr f1, f31 +/* 8021DD78 0021ACD8 7F E3 FB 78 */ mr r3, r31 +/* 8021DD7C 0021ACDC 7F C4 F3 78 */ mr r4, r30 +/* 8021DD80 0021ACE0 38 A0 00 01 */ li r5, 1 +/* 8021DD84 0021ACE4 4B FD 89 49 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 8021DD88 0021ACE8 7F E3 FB 78 */ mr r3, r31 +/* 8021DD8C 0021ACEC 7F C4 F3 78 */ mr r4, r30 +/* 8021DD90 0021ACF0 48 00 00 79 */ bl sub_8021de08 +/* 8021DD94 0021ACF4 48 00 00 54 */ b lbl_8021DDE8 +lbl_8021DD98: +/* 8021DD98 0021ACF8 38 00 00 04 */ li r0, 4 +/* 8021DD9C 0021ACFC 90 1F 05 68 */ stw r0, 0x568(r31) +/* 8021DDA0 0021AD00 48 00 00 48 */ b lbl_8021DDE8 +lbl_8021DDA4: +/* 8021DDA4 0021AD04 38 00 00 04 */ li r0, 4 +/* 8021DDA8 0021AD08 90 1F 05 68 */ stw r0, 0x568(r31) +/* 8021DDAC 0021AD0C 48 00 00 3C */ b lbl_8021DDE8 +lbl_8021DDB0: +/* 8021DDB0 0021AD10 38 00 00 04 */ li r0, 4 +/* 8021DDB4 0021AD14 90 1F 05 68 */ stw r0, 0x568(r31) +/* 8021DDB8 0021AD18 48 00 00 30 */ b lbl_8021DDE8 +lbl_8021DDBC: +/* 8021DDBC 0021AD1C 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8021DDC0 0021AD20 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 8021DDC4 0021AD24 2C 00 00 07 */ cmpwi r0, 7 +/* 8021DDC8 0021AD28 41 82 00 10 */ beq lbl_8021DDD8 +/* 8021DDCC 0021AD2C 38 00 00 04 */ li r0, 4 +/* 8021DDD0 0021AD30 90 1F 05 68 */ stw r0, 0x568(r31) +/* 8021DDD4 0021AD34 48 00 00 14 */ b lbl_8021DDE8 +lbl_8021DDD8: +/* 8021DDD8 0021AD38 88 1F 0A 49 */ lbz r0, 0xa49(r31) +/* 8021DDDC 0021AD3C 38 60 00 01 */ li r3, 1 +/* 8021DDE0 0021AD40 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 8021DDE4 0021AD44 98 1F 0A 49 */ stb r0, 0xa49(r31) +lbl_8021DDE8: +/* 8021DDE8 0021AD48 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 +/* 8021DDEC 0021AD4C 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 8021DDF0 0021AD50 CB E1 00 90 */ lfd f31, 0x90(r1) +/* 8021DDF4 0021AD54 83 E1 00 8C */ lwz r31, 0x8c(r1) +/* 8021DDF8 0021AD58 83 C1 00 88 */ lwz r30, 0x88(r1) +/* 8021DDFC 0021AD5C 7C 08 03 A6 */ mtlr r0 +/* 8021DE00 0021AD60 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 8021DE04 0021AD64 4E 80 00 20 */ blr + +.global sub_8021de08 +sub_8021de08: +/* 8021DE08 0021AD68 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 8021DE0C 0021AD6C 7C 08 02 A6 */ mflr r0 +/* 8021DE10 0021AD70 90 01 00 64 */ stw r0, 0x64(r1) +/* 8021DE14 0021AD74 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 8021DE18 0021AD78 7C 7F 1B 78 */ mr r31, r3 +/* 8021DE1C 0021AD7C 93 C1 00 58 */ stw r30, 0x58(r1) +/* 8021DE20 0021AD80 93 A1 00 54 */ stw r29, 0x54(r1) +/* 8021DE24 0021AD84 93 81 00 50 */ stw r28, 0x50(r1) +/* 8021DE28 0021AD88 83 A4 08 38 */ lwz r29, 0x838(r4) +/* 8021DE2C 0021AD8C 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8021DE30 0021AD90 3B C4 66 A0 */ addi r30, r4, skZero3f@l +/* 8021DE34 0021AD94 AB 9D 20 08 */ lha r28, 0x2008(r29) +/* 8021DE38 0021AD98 48 00 01 04 */ b lbl_8021DF3C +lbl_8021DE3C: +/* 8021DE3C 0021AD9C 7F A3 EB 78 */ mr r3, r29 +/* 8021DE40 0021ADA0 7F 84 E3 78 */ mr r4, r28 +/* 8021DE44 0021ADA4 4B DF 1E 99 */ bl __vc__11CObjectListCFi +/* 8021DE48 0021ADA8 7C 64 1B 78 */ mr r4, r3 +/* 8021DE4C 0021ADAC 38 61 00 08 */ addi r3, r1, 8 +/* 8021DE50 0021ADB0 4B E8 EC 0D */ bl "__ct__16TCastToPtr<3CAi>FP7CEntity" +/* 8021DE54 0021ADB4 80 83 00 04 */ lwz r4, 4(r3) +/* 8021DE58 0021ADB8 28 04 00 00 */ cmplwi r4, 0 +/* 8021DE5C 0021ADBC 41 82 00 C4 */ beq lbl_8021DF20 +/* 8021DE60 0021ADC0 7C 04 F8 40 */ cmplw r4, r31 +/* 8021DE64 0021ADC4 41 82 00 BC */ beq lbl_8021DF20 +/* 8021DE68 0021ADC8 80 64 00 04 */ lwz r3, 4(r4) +/* 8021DE6C 0021ADCC 80 1F 00 04 */ lwz r0, 4(r31) +/* 8021DE70 0021ADD0 7C 03 00 00 */ cmpw r3, r0 +/* 8021DE74 0021ADD4 40 82 00 AC */ bne lbl_8021DF20 +/* 8021DE78 0021ADD8 C0 64 00 60 */ lfs f3, 0x60(r4) +/* 8021DE7C 0021ADDC 7F E5 FB 78 */ mr r5, r31 +/* 8021DE80 0021ADE0 C0 44 00 50 */ lfs f2, 0x50(r4) +/* 8021DE84 0021ADE4 38 61 00 1C */ addi r3, r1, 0x1c +/* 8021DE88 0021ADE8 C0 04 00 40 */ lfs f0, 0x40(r4) +/* 8021DE8C 0021ADEC 38 9F 04 5C */ addi r4, r31, 0x45c +/* 8021DE90 0021ADF0 C0 22 B4 14 */ lfs f1, lbl_805AD134@sda21(r2) +/* 8021DE94 0021ADF4 38 C1 00 10 */ addi r6, r1, 0x10 +/* 8021DE98 0021ADF8 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 8021DE9C 0021ADFC D0 41 00 14 */ stfs f2, 0x14(r1) +/* 8021DEA0 0021AE00 D0 61 00 18 */ stfs f3, 0x18(r1) +/* 8021DEA4 0021AE04 4B F2 0A 4D */ bl Separation__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3ff +/* 8021DEA8 0021AE08 C0 C1 00 1C */ lfs f6, 0x1c(r1) +/* 8021DEAC 0021AE0C 38 00 00 00 */ li r0, 0 +/* 8021DEB0 0021AE10 C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 8021DEB4 0021AE14 C0 81 00 20 */ lfs f4, 0x20(r1) +/* 8021DEB8 0021AE18 FC 00 30 00 */ fcmpu cr0, f0, f6 +/* 8021DEBC 0021AE1C C0 A1 00 24 */ lfs f5, 0x24(r1) +/* 8021DEC0 0021AE20 40 82 00 14 */ bne lbl_8021DED4 +/* 8021DEC4 0021AE24 FC 00 20 00 */ fcmpu cr0, f0, f4 +/* 8021DEC8 0021AE28 40 82 00 0C */ bne lbl_8021DED4 +/* 8021DECC 0021AE2C FC 00 28 00 */ fcmpu cr0, f0, f5 +/* 8021DED0 0021AE30 41 82 00 08 */ beq lbl_8021DED8 +lbl_8021DED4: +/* 8021DED4 0021AE34 38 00 00 01 */ li r0, 1 +lbl_8021DED8: +/* 8021DED8 0021AE38 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 8021DEDC 0021AE3C 41 82 00 44 */ beq lbl_8021DF20 +/* 8021DEE0 0021AE40 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8021DEE4 0021AE44 C0 5E 00 04 */ lfs f2, 4(r30) +/* 8021DEE8 0021AE48 C0 3E 00 08 */ lfs f1, 8(r30) +/* 8021DEEC 0021AE4C 38 81 00 28 */ addi r4, r1, 0x28 +/* 8021DEF0 0021AE50 C0 63 66 A0 */ lfs f3, skZero3f@l(r3) +/* 8021DEF4 0021AE54 C0 02 B4 18 */ lfs f0, lbl_805AD138@sda21(r2) +/* 8021DEF8 0021AE58 D0 C1 00 28 */ stfs f6, 0x28(r1) +/* 8021DEFC 0021AE5C D0 81 00 2C */ stfs f4, 0x2c(r1) +/* 8021DF00 0021AE60 D0 A1 00 30 */ stfs f5, 0x30(r1) +/* 8021DF04 0021AE64 D0 61 00 34 */ stfs f3, 0x34(r1) +/* 8021DF08 0021AE68 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 8021DF0C 0021AE6C D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 8021DF10 0021AE70 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 8021DF14 0021AE74 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8021DF18 0021AE78 38 63 00 04 */ addi r3, r3, 4 +/* 8021DF1C 0021AE7C 4B F1 37 FD */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +lbl_8021DF20: +/* 8021DF20 0021AE80 2C 1C FF FF */ cmpwi r28, -1 +/* 8021DF24 0021AE84 41 82 00 14 */ beq lbl_8021DF38 +/* 8021DF28 0021AE88 57 83 18 38 */ slwi r3, r28, 3 +/* 8021DF2C 0021AE8C 38 03 00 08 */ addi r0, r3, 8 +/* 8021DF30 0021AE90 7F 9D 02 AE */ lhax r28, r29, r0 +/* 8021DF34 0021AE94 48 00 00 08 */ b lbl_8021DF3C +lbl_8021DF38: +/* 8021DF38 0021AE98 3B 80 FF FF */ li r28, -1 +lbl_8021DF3C: +/* 8021DF3C 0021AE9C 2C 1C FF FF */ cmpwi r28, -1 +/* 8021DF40 0021AEA0 40 82 FE FC */ bne lbl_8021DE3C +/* 8021DF44 0021AEA4 80 01 00 64 */ lwz r0, 0x64(r1) +/* 8021DF48 0021AEA8 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 8021DF4C 0021AEAC 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 8021DF50 0021AEB0 83 A1 00 54 */ lwz r29, 0x54(r1) +/* 8021DF54 0021AEB4 83 81 00 50 */ lwz r28, 0x50(r1) +/* 8021DF58 0021AEB8 7C 08 03 A6 */ mtlr r0 +/* 8021DF5C 0021AEBC 38 21 00 60 */ addi r1, r1, 0x60 +/* 8021DF60 0021AEC0 4E 80 00 20 */ blr + +.global sub_8021df64 +sub_8021df64: +/* 8021DF64 0021AEC4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8021DF68 0021AEC8 7C 08 02 A6 */ mflr r0 +/* 8021DF6C 0021AECC 90 01 00 24 */ stw r0, 0x24(r1) +/* 8021DF70 0021AED0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8021DF74 0021AED4 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8021DF78 0021AED8 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8021DF7C 0021AEDC 7C 7D 1B 78 */ mr r29, r3 +/* 8021DF80 0021AEE0 83 E4 08 38 */ lwz r31, 0x838(r4) +/* 8021DF84 0021AEE4 AB DF 20 08 */ lha r30, 0x2008(r31) +/* 8021DF88 0021AEE8 48 00 00 A4 */ b lbl_8021E02C +lbl_8021DF8C: +/* 8021DF8C 0021AEEC 7F E3 FB 78 */ mr r3, r31 +/* 8021DF90 0021AEF0 7F C4 F3 78 */ mr r4, r30 +/* 8021DF94 0021AEF4 4B DF 1D 49 */ bl __vc__11CObjectListCFi +/* 8021DF98 0021AEF8 7C 64 1B 78 */ mr r4, r3 +/* 8021DF9C 0021AEFC 38 61 00 08 */ addi r3, r1, 8 +/* 8021DFA0 0021AF00 4B E8 EA BD */ bl "__ct__16TCastToPtr<3CAi>FP7CEntity" +/* 8021DFA4 0021AF04 80 83 00 04 */ lwz r4, 4(r3) +/* 8021DFA8 0021AF08 28 04 00 00 */ cmplwi r4, 0 +/* 8021DFAC 0021AF0C 41 82 00 64 */ beq lbl_8021E010 +/* 8021DFB0 0021AF10 7C 04 E8 40 */ cmplw r4, r29 +/* 8021DFB4 0021AF14 41 82 00 5C */ beq lbl_8021E010 +/* 8021DFB8 0021AF18 80 64 00 04 */ lwz r3, 4(r4) +/* 8021DFBC 0021AF1C 80 1D 00 04 */ lwz r0, 4(r29) +/* 8021DFC0 0021AF20 7C 03 00 00 */ cmpw r3, r0 +/* 8021DFC4 0021AF24 40 82 00 4C */ bne lbl_8021E010 +/* 8021DFC8 0021AF28 C0 3D 08 BC */ lfs f1, 0x8bc(r29) +/* 8021DFCC 0021AF2C C0 04 00 50 */ lfs f0, 0x50(r4) +/* 8021DFD0 0021AF30 C0 7D 08 B8 */ lfs f3, 0x8b8(r29) +/* 8021DFD4 0021AF34 EC 21 00 28 */ fsubs f1, f1, f0 +/* 8021DFD8 0021AF38 C0 04 00 40 */ lfs f0, 0x40(r4) +/* 8021DFDC 0021AF3C C0 5D 08 C0 */ lfs f2, 0x8c0(r29) +/* 8021DFE0 0021AF40 EC 63 00 28 */ fsubs f3, f3, f0 +/* 8021DFE4 0021AF44 C0 04 00 60 */ lfs f0, 0x60(r4) +/* 8021DFE8 0021AF48 EC 21 00 72 */ fmuls f1, f1, f1 +/* 8021DFEC 0021AF4C EC 42 00 28 */ fsubs f2, f2, f0 +/* 8021DFF0 0021AF50 C0 02 B4 00 */ lfs f0, lbl_805AD120@sda21(r2) +/* 8021DFF4 0021AF54 EC 23 08 FA */ fmadds f1, f3, f3, f1 +/* 8021DFF8 0021AF58 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 8021DFFC 0021AF5C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8021E000 0021AF60 4C 40 13 82 */ cror 2, 0, 2 +/* 8021E004 0021AF64 40 82 00 0C */ bne lbl_8021E010 +/* 8021E008 0021AF68 38 60 00 01 */ li r3, 1 +/* 8021E00C 0021AF6C 48 00 00 2C */ b lbl_8021E038 +lbl_8021E010: +/* 8021E010 0021AF70 2C 1E FF FF */ cmpwi r30, -1 +/* 8021E014 0021AF74 41 82 00 14 */ beq lbl_8021E028 +/* 8021E018 0021AF78 57 C3 18 38 */ slwi r3, r30, 3 +/* 8021E01C 0021AF7C 38 03 00 08 */ addi r0, r3, 8 +/* 8021E020 0021AF80 7F DF 02 AE */ lhax r30, r31, r0 +/* 8021E024 0021AF84 48 00 00 08 */ b lbl_8021E02C +lbl_8021E028: +/* 8021E028 0021AF88 3B C0 FF FF */ li r30, -1 +lbl_8021E02C: +/* 8021E02C 0021AF8C 2C 1E FF FF */ cmpwi r30, -1 +/* 8021E030 0021AF90 40 82 FF 5C */ bne lbl_8021DF8C +/* 8021E034 0021AF94 38 60 00 00 */ li r3, 0 +lbl_8021E038: +/* 8021E038 0021AF98 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8021E03C 0021AF9C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8021E040 0021AFA0 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8021E044 0021AFA4 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8021E048 0021AFA8 7C 08 03 A6 */ mtlr r0 +/* 8021E04C 0021AFAC 38 21 00 20 */ addi r1, r1, 0x20 +/* 8021E050 0021AFB0 4E 80 00 20 */ blr + +.global GetCollisionResponseType__9CBabygothCFRC9CVector3fRC9CVector3fRC11CWeaponModei +GetCollisionResponseType__9CBabygothCFRC9CVector3fRC9CVector3fRC11CWeaponModei: +/* 8021E054 0021AFB4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8021E058 0021AFB8 7C 08 02 A6 */ mflr r0 +/* 8021E05C 0021AFBC 90 01 00 14 */ stw r0, 0x14(r1) +/* 8021E060 0021AFC0 80 06 00 00 */ lwz r0, 0(r6) +/* 8021E064 0021AFC4 2C 00 00 01 */ cmpwi r0, 1 +/* 8021E068 0021AFC8 40 82 00 0C */ bne lbl_8021E074 +/* 8021E06C 0021AFCC 38 60 00 00 */ li r3, 0 +/* 8021E070 0021AFD0 48 00 00 1C */ b lbl_8021E08C +lbl_8021E074: +/* 8021E074 0021AFD4 80 03 05 6C */ lwz r0, 0x56c(r3) +/* 8021E078 0021AFD8 2C 00 00 03 */ cmpwi r0, 3 +/* 8021E07C 0021AFDC 41 82 00 0C */ beq lbl_8021E088 +/* 8021E080 0021AFE0 38 60 00 42 */ li r3, 0x42 +/* 8021E084 0021AFE4 48 00 00 08 */ b lbl_8021E08C +lbl_8021E088: +/* 8021E088 0021AFE8 4B E5 99 2D */ bl GetCollisionResponseType__10CPatternedCFRC9CVector3fRC9CVector3fRC11CWeaponModei +lbl_8021E08C: +/* 8021E08C 0021AFEC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8021E090 0021AFF0 7C 08 03 A6 */ mtlr r0 +/* 8021E094 0021AFF4 38 21 00 10 */ addi r1, r1, 0x10 +/* 8021E098 0021AFF8 4E 80 00 20 */ blr + +.global sub_8021e09c +sub_8021e09c: +/* 8021E09C 0021AFFC 90 83 08 B4 */ stw r4, 0x8b4(r3) +/* 8021E0A0 0021B000 4E 80 00 20 */ blr + +.global sub_8021e0a4 +sub_8021e0a4: +/* 8021E0A4 0021B004 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 8021E0A8 0021B008 7C 08 02 A6 */ mflr r0 +/* 8021E0AC 0021B00C 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 8021E0B0 0021B010 DB E1 00 98 */ stfd f31, 0x98(r1) +/* 8021E0B4 0021B014 FF E0 08 90 */ fmr f31, f1 +/* 8021E0B8 0021B018 93 E1 00 94 */ stw r31, 0x94(r1) +/* 8021E0BC 0021B01C 93 C1 00 90 */ stw r30, 0x90(r1) +/* 8021E0C0 0021B020 7C 9E 23 78 */ mr r30, r4 +/* 8021E0C4 0021B024 38 81 00 08 */ addi r4, r1, 8 +/* 8021E0C8 0021B028 93 A1 00 8C */ stw r29, 0x8c(r1) +/* 8021E0CC 0021B02C 7C 7D 1B 78 */ mr r29, r3 +/* 8021E0D0 0021B030 A0 03 09 80 */ lhz r0, 0x980(r3) +/* 8021E0D4 0021B034 7F C3 F3 78 */ mr r3, r30 +/* 8021E0D8 0021B038 B0 01 00 08 */ sth r0, 8(r1) +/* 8021E0DC 0021B03C 4B E2 E4 99 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8021E0E0 0021B040 7C 7F 1B 79 */ or. r31, r3, r3 +/* 8021E0E4 0021B044 41 82 00 5C */ beq lbl_8021E140 +/* 8021E0E8 0021B048 88 1F 00 30 */ lbz r0, 0x30(r31) +/* 8021E0EC 0021B04C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8021E0F0 0021B050 41 82 00 50 */ beq lbl_8021E140 +/* 8021E0F4 0021B054 3C 80 80 3D */ lis r4, lbl_803D31D0@ha +/* 8021E0F8 0021B058 38 61 00 0C */ addi r3, r1, 0xc +/* 8021E0FC 0021B05C 38 84 31 D0 */ addi r4, r4, lbl_803D31D0@l +/* 8021E100 0021B060 38 84 00 0E */ addi r4, r4, 0xe +/* 8021E104 0021B064 4B DE 6B B5 */ bl string_l__4rstlFPCc +/* 8021E108 0021B068 7F A4 EB 78 */ mr r4, r29 +/* 8021E10C 0021B06C 38 61 00 1C */ addi r3, r1, 0x1c +/* 8021E110 0021B070 38 A1 00 0C */ addi r5, r1, 0xc +/* 8021E114 0021B074 4B E5 A8 65 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8021E118 0021B078 38 61 00 4C */ addi r3, r1, 0x4c +/* 8021E11C 0021B07C 38 81 00 1C */ addi r4, r1, 0x1c +/* 8021E120 0021B080 48 0F 4A 55 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8021E124 0021B084 38 61 00 0C */ addi r3, r1, 0xc +/* 8021E128 0021B088 48 11 F9 B9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8021E12C 0021B08C FC 20 F8 90 */ fmr f1, f31 +/* 8021E130 0021B090 7F E3 FB 78 */ mr r3, r31 +/* 8021E134 0021B094 7F C5 F3 78 */ mr r5, r30 +/* 8021E138 0021B098 38 81 00 4C */ addi r4, r1, 0x4c +/* 8021E13C 0021B09C 4B F7 A2 C5 */ bl SetTransform__13CFlameThrowerFRC12CTransform4f +lbl_8021E140: +/* 8021E140 0021B0A0 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 8021E144 0021B0A4 CB E1 00 98 */ lfd f31, 0x98(r1) +/* 8021E148 0021B0A8 83 E1 00 94 */ lwz r31, 0x94(r1) +/* 8021E14C 0021B0AC 83 C1 00 90 */ lwz r30, 0x90(r1) +/* 8021E150 0021B0B0 83 A1 00 8C */ lwz r29, 0x8c(r1) +/* 8021E154 0021B0B4 7C 08 03 A6 */ mtlr r0 +/* 8021E158 0021B0B8 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 8021E15C 0021B0BC 4E 80 00 20 */ blr + +.global sub_8021e160 +sub_8021e160: +/* 8021E160 0021B0C0 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 8021E164 0021B0C4 7C 08 02 A6 */ mflr r0 +/* 8021E168 0021B0C8 90 01 00 94 */ stw r0, 0x94(r1) +/* 8021E16C 0021B0CC BF 21 00 74 */ stmw r25, 0x74(r1) +/* 8021E170 0021B0D0 7C 7E 1B 78 */ mr r30, r3 +/* 8021E174 0021B0D4 7C 9F 23 78 */ mr r31, r4 +/* 8021E178 0021B0D8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8021E17C 0021B0DC A0 63 09 80 */ lhz r3, 0x980(r3) +/* 8021E180 0021B0E0 7C 03 00 40 */ cmplw r3, r0 +/* 8021E184 0021B0E4 40 82 01 2C */ bne lbl_8021E2B0 +/* 8021E188 0021B0E8 80 FE 05 B8 */ lwz r7, 0x5b8(r30) +/* 8021E18C 0021B0EC 38 C0 00 06 */ li r6, 6 +/* 8021E190 0021B0F0 C0 42 B4 1C */ lfs f2, lbl_805AD13C@sda21(r2) +/* 8021E194 0021B0F4 38 A0 00 04 */ li r5, 4 +/* 8021E198 0021B0F8 C0 22 B4 20 */ lfs f1, lbl_805AD140@sda21(r2) +/* 8021E19C 0021B0FC 38 00 00 0F */ li r0, 0xf +/* 8021E1A0 0021B100 C0 02 B4 18 */ lfs f0, lbl_805AD138@sda21(r2) +/* 8021E1A4 0021B104 38 61 00 34 */ addi r3, r1, 0x34 +/* 8021E1A8 0021B108 90 C1 00 50 */ stw r6, 0x50(r1) +/* 8021E1AC 0021B10C 90 A1 00 54 */ stw r5, 0x54(r1) +/* 8021E1B0 0021B110 90 E1 00 58 */ stw r7, 0x58(r1) +/* 8021E1B4 0021B114 90 01 00 5C */ stw r0, 0x5c(r1) +/* 8021E1B8 0021B118 D0 41 00 60 */ stfs f2, 0x60(r1) +/* 8021E1BC 0021B11C D0 21 00 68 */ stfs f1, 0x68(r1) +/* 8021E1C0 0021B120 D0 01 00 6C */ stfs f0, 0x6c(r1) +/* 8021E1C4 0021B124 4B E2 EF 19 */ bl AllocateUniqueId__13CStateManagerFv +/* 8021E1C8 0021B128 A0 01 00 34 */ lhz r0, 0x34(r1) +/* 8021E1CC 0021B12C 3C 60 80 3D */ lis r3, lbl_803D31D0@ha +/* 8021E1D0 0021B130 38 63 31 D0 */ addi r3, r3, lbl_803D31D0@l +/* 8021E1D4 0021B134 3B 20 00 00 */ li r25, 0 +/* 8021E1D8 0021B138 B0 1E 09 80 */ sth r0, 0x980(r30) +/* 8021E1DC 0021B13C 38 83 00 2D */ addi r4, r3, 0x2d +/* 8021E1E0 0021B140 38 60 04 08 */ li r3, 0x408 +/* 8021E1E4 0021B144 38 A0 00 00 */ li r5, 0 +/* 8021E1E8 0021B148 48 0F 76 85 */ bl __nw__FUlPCcPCc +/* 8021E1EC 0021B14C 7C 7D 1B 79 */ or. r29, r3, r3 +/* 8021E1F0 0021B150 41 82 00 A0 */ beq lbl_8021E290 +/* 8021E1F4 0021B154 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8021E1F8 0021B158 3C 60 80 3D */ lis r3, lbl_803D31D0@ha +/* 8021E1FC 0021B15C 83 9E 06 E4 */ lwz r28, 0x6e4(r30) +/* 8021E200 0021B160 38 83 31 D0 */ addi r4, r3, lbl_803D31D0@l +/* 8021E204 0021B164 A3 7E 06 E0 */ lhz r27, 0x6e0(r30) +/* 8021E208 0021B168 38 61 00 40 */ addi r3, r1, 0x40 +/* 8021E20C 0021B16C 83 5E 06 DC */ lwz r26, 0x6dc(r30) +/* 8021E210 0021B170 38 84 00 52 */ addi r4, r4, 0x52 +/* 8021E214 0021B174 B0 01 00 2C */ sth r0, 0x2c(r1) +/* 8021E218 0021B178 B0 01 00 30 */ sth r0, 0x30(r1) +/* 8021E21C 0021B17C 80 BE 00 04 */ lwz r5, 4(r30) +/* 8021E220 0021B180 90 A1 00 3C */ stw r5, 0x3c(r1) +/* 8021E224 0021B184 A0 1E 09 80 */ lhz r0, 0x980(r30) +/* 8021E228 0021B188 90 A1 00 38 */ stw r5, 0x38(r1) +/* 8021E22C 0021B18C B0 01 00 28 */ sth r0, 0x28(r1) +/* 8021E230 0021B190 4B DE 6A 89 */ bl string_l__4rstlFPCc +/* 8021E234 0021B194 38 01 00 28 */ addi r0, r1, 0x28 +/* 8021E238 0021B198 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 8021E23C 0021B19C 90 01 00 08 */ stw r0, 8(r1) +/* 8021E240 0021B1A0 38 01 00 3C */ addi r0, r1, 0x3c +/* 8021E244 0021B1A4 39 03 66 70 */ addi r8, r3, skIdentity4f@l +/* 8021E248 0021B1A8 38 81 00 30 */ addi r4, r1, 0x30 +/* 8021E24C 0021B1AC 90 01 00 0C */ stw r0, 0xc(r1) +/* 8021E250 0021B1B0 38 00 00 00 */ li r0, 0 +/* 8021E254 0021B1B4 7F A3 EB 78 */ mr r3, r29 +/* 8021E258 0021B1B8 38 A1 00 40 */ addi r5, r1, 0x40 +/* 8021E25C 0021B1BC 90 81 00 10 */ stw r4, 0x10(r1) +/* 8021E260 0021B1C0 38 9E 09 84 */ addi r4, r30, 0x984 +/* 8021E264 0021B1C4 38 E1 00 50 */ addi r7, r1, 0x50 +/* 8021E268 0021B1C8 39 5E 05 BC */ addi r10, r30, 0x5bc +/* 8021E26C 0021B1CC 90 01 00 14 */ stw r0, 0x14(r1) +/* 8021E270 0021B1D0 3B 20 00 01 */ li r25, 1 +/* 8021E274 0021B1D4 38 C0 00 03 */ li r6, 3 +/* 8021E278 0021B1D8 39 20 00 2F */ li r9, 0x2f +/* 8021E27C 0021B1DC 93 41 00 18 */ stw r26, 0x18(r1) +/* 8021E280 0021B1E0 93 61 00 1C */ stw r27, 0x1c(r1) +/* 8021E284 0021B1E4 93 81 00 20 */ stw r28, 0x20(r1) +/* 8021E288 0021B1E8 4B F7 A8 69 */ bl "__ct__13CFlameThrowerFRC28TToken<18CWeaponDescription>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>11EWeaponTypeRC10CFlameInfoRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId9TUniqueIdUi" +/* 8021E28C 0021B1EC 7C 7D 1B 78 */ mr r29, r3 +lbl_8021E290: +/* 8021E290 0021B1F0 7F 20 07 75 */ extsb. r0, r25 +/* 8021E294 0021B1F4 7F BA EB 78 */ mr r26, r29 +/* 8021E298 0021B1F8 41 82 00 0C */ beq lbl_8021E2A4 +/* 8021E29C 0021B1FC 38 61 00 40 */ addi r3, r1, 0x40 +/* 8021E2A0 0021B200 48 11 F8 41 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8021E2A4: +/* 8021E2A4 0021B204 7F E3 FB 78 */ mr r3, r31 +/* 8021E2A8 0021B208 7F 44 D3 78 */ mr r4, r26 +/* 8021E2AC 0021B20C 4B E2 E8 69 */ bl AddObject__13CStateManagerFR7CEntity +lbl_8021E2B0: +/* 8021E2B0 0021B210 BB 21 00 74 */ lmw r25, 0x74(r1) +/* 8021E2B4 0021B214 80 01 00 94 */ lwz r0, 0x94(r1) +/* 8021E2B8 0021B218 7C 08 03 A6 */ mtlr r0 +/* 8021E2BC 0021B21C 38 21 00 90 */ addi r1, r1, 0x90 +/* 8021E2C0 0021B220 4E 80 00 20 */ blr + +.global sub_8021e2c4 +sub_8021e2c4: +/* 8021E2C4 0021B224 88 03 0A 49 */ lbz r0, 0xa49(r3) +/* 8021E2C8 0021B228 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 8021E2CC 0021B22C 41 82 00 0C */ beq lbl_8021E2D8 +/* 8021E2D0 0021B230 C0 62 B4 24 */ lfs f3, lbl_805AD144@sda21(r2) +/* 8021E2D4 0021B234 48 00 00 08 */ b lbl_8021E2DC +lbl_8021E2D8: +/* 8021E2D8 0021B238 C0 62 B4 18 */ lfs f3, lbl_805AD138@sda21(r2) +lbl_8021E2DC: +/* 8021E2DC 0021B23C C0 43 08 D8 */ lfs f2, 0x8d8(r3) +/* 8021E2E0 0021B240 C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 8021E2E4 0021B244 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8021E2E8 0021B248 40 81 00 0C */ ble lbl_8021E2F4 +/* 8021E2EC 0021B24C EC 01 10 FC */ fnmsubs f0, f1, f3, f2 +/* 8021E2F0 0021B250 D0 03 08 D8 */ stfs f0, 0x8d8(r3) +lbl_8021E2F4: +/* 8021E2F4 0021B254 C0 43 08 E4 */ lfs f2, 0x8e4(r3) +/* 8021E2F8 0021B258 C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 8021E2FC 0021B25C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8021E300 0021B260 40 81 00 0C */ ble lbl_8021E30C +/* 8021E304 0021B264 EC 01 10 FC */ fnmsubs f0, f1, f3, f2 +/* 8021E308 0021B268 D0 03 08 E4 */ stfs f0, 0x8e4(r3) +lbl_8021E30C: +/* 8021E30C 0021B26C C0 43 08 E0 */ lfs f2, 0x8e0(r3) +/* 8021E310 0021B270 C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 8021E314 0021B274 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8021E318 0021B278 40 81 00 0C */ ble lbl_8021E324 +/* 8021E31C 0021B27C EC 02 08 28 */ fsubs f0, f2, f1 +/* 8021E320 0021B280 D0 03 08 E0 */ stfs f0, 0x8e0(r3) +lbl_8021E324: +/* 8021E324 0021B284 C0 43 08 E8 */ lfs f2, 0x8e8(r3) +/* 8021E328 0021B288 C0 03 06 D8 */ lfs f0, 0x6d8(r3) +/* 8021E32C 0021B28C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8021E330 0021B290 4C 80 00 20 */ bgelr +/* 8021E334 0021B294 EC 02 08 2A */ fadds f0, f2, f1 +/* 8021E338 0021B298 D0 03 08 E8 */ stfs f0, 0x8e8(r3) +/* 8021E33C 0021B29C 4E 80 00 20 */ blr + +.global sub_8021e340 +sub_8021e340: +/* 8021E340 0021B2A0 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8021E344 0021B2A4 7C 08 02 A6 */ mflr r0 +/* 8021E348 0021B2A8 90 01 00 44 */ stw r0, 0x44(r1) +/* 8021E34C 0021B2AC DB E1 00 30 */ stfd f31, 0x30(r1) +/* 8021E350 0021B2B0 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 8021E354 0021B2B4 DB C1 00 20 */ stfd f30, 0x20(r1) +/* 8021E358 0021B2B8 F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 +/* 8021E35C 0021B2BC DB A1 00 10 */ stfd f29, 0x10(r1) +/* 8021E360 0021B2C0 F3 A1 00 18 */ psq_st f29, 24(r1), 0, qr0 +/* 8021E364 0021B2C4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8021E368 0021B2C8 93 C1 00 08 */ stw r30, 8(r1) +/* 8021E36C 0021B2CC 7C 7E 1B 78 */ mr r30, r3 +/* 8021E370 0021B2D0 7C 9F 23 78 */ mr r31, r4 +/* 8021E374 0021B2D4 80 03 05 6C */ lwz r0, 0x56c(r3) +/* 8021E378 0021B2D8 2C 00 00 03 */ cmpwi r0, 3 +/* 8021E37C 0021B2DC 40 82 00 0C */ bne lbl_8021E388 +/* 8021E380 0021B2E0 C3 E2 B4 28 */ lfs f31, lbl_805AD148@sda21(r2) +/* 8021E384 0021B2E4 48 00 00 08 */ b lbl_8021E38C +lbl_8021E388: +/* 8021E388 0021B2E8 C3 E2 B4 18 */ lfs f31, lbl_805AD138@sda21(r2) +lbl_8021E38C: +/* 8021E38C 0021B2EC 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 8021E390 0021B2F0 48 0F 41 4D */ bl Float__9CRandom16Fv +/* 8021E394 0021B2F4 C0 5E 03 08 */ lfs f2, 0x308(r30) +/* 8021E398 0021B2F8 C0 1E 03 04 */ lfs f0, 0x304(r30) +/* 8021E39C 0021B2FC EC 02 00 7A */ fmadds f0, f2, f1, f0 +/* 8021E3A0 0021B300 EC 1F 00 32 */ fmuls f0, f31, f0 +/* 8021E3A4 0021B304 D0 1E 08 D8 */ stfs f0, 0x8d8(r30) +/* 8021E3A8 0021B308 C3 DE 05 74 */ lfs f30, 0x574(r30) +/* 8021E3AC 0021B30C C3 BE 05 70 */ lfs f29, 0x570(r30) +/* 8021E3B0 0021B310 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 8021E3B4 0021B314 48 0F 41 29 */ bl Float__9CRandom16Fv +/* 8021E3B8 0021B318 EC 01 EF BA */ fmadds f0, f1, f30, f29 +/* 8021E3BC 0021B31C EC 1F 00 32 */ fmuls f0, f31, f0 +/* 8021E3C0 0021B320 D0 1E 08 E4 */ stfs f0, 0x8e4(r30) +/* 8021E3C4 0021B324 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 8021E3C8 0021B328 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 8021E3CC 0021B32C E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 +/* 8021E3D0 0021B330 CB C1 00 20 */ lfd f30, 0x20(r1) +/* 8021E3D4 0021B334 E3 A1 00 18 */ psq_l f29, 24(r1), 0, qr0 +/* 8021E3D8 0021B338 CB A1 00 10 */ lfd f29, 0x10(r1) +/* 8021E3DC 0021B33C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8021E3E0 0021B340 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8021E3E4 0021B344 83 C1 00 08 */ lwz r30, 8(r1) +/* 8021E3E8 0021B348 7C 08 03 A6 */ mtlr r0 +/* 8021E3EC 0021B34C 38 21 00 40 */ addi r1, r1, 0x40 +/* 8021E3F0 0021B350 4E 80 00 20 */ blr + +.global sub_8021e3f4 +sub_8021e3f4: +/* 8021E3F4 0021B354 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 8021E3F8 0021B358 7C 08 02 A6 */ mflr r0 +/* 8021E3FC 0021B35C 90 01 00 74 */ stw r0, 0x74(r1) +/* 8021E400 0021B360 DB E1 00 60 */ stfd f31, 0x60(r1) +/* 8021E404 0021B364 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 8021E408 0021B368 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 8021E40C 0021B36C 93 C1 00 58 */ stw r30, 0x58(r1) +/* 8021E410 0021B370 93 A1 00 54 */ stw r29, 0x54(r1) +/* 8021E414 0021B374 93 81 00 50 */ stw r28, 0x50(r1) +/* 8021E418 0021B378 7C 7D 1B 78 */ mr r29, r3 +/* 8021E41C 0021B37C C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 8021E420 0021B380 C0 23 0A 00 */ lfs f1, 0xa00(r3) +/* 8021E424 0021B384 7C 9E 23 78 */ mr r30, r4 +/* 8021E428 0021B388 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8021E42C 0021B38C 40 81 02 B4 */ ble lbl_8021E6E0 +/* 8021E430 0021B390 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 8021E434 0021B394 7F C3 F3 78 */ mr r3, r30 +/* 8021E438 0021B398 38 81 00 14 */ addi r4, r1, 0x14 +/* 8021E43C 0021B39C A0 1D 09 F6 */ lhz r0, 0x9f6(r29) +/* 8021E440 0021B3A0 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8021E444 0021B3A4 4B E2 E1 31 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8021E448 0021B3A8 7C 64 1B 78 */ mr r4, r3 +/* 8021E44C 0021B3AC 38 61 00 3C */ addi r3, r1, 0x3c +/* 8021E450 0021B3B0 4B E9 0E FD */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8021E454 0021B3B4 80 63 00 04 */ lwz r3, 4(r3) +/* 8021E458 0021B3B8 28 03 00 00 */ cmplwi r3, 0 +/* 8021E45C 0021B3BC 41 82 00 3C */ beq lbl_8021E498 +/* 8021E460 0021B3C0 81 83 00 00 */ lwz r12, 0(r3) +/* 8021E464 0021B3C4 7F C4 F3 78 */ mr r4, r30 +/* 8021E468 0021B3C8 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8021E46C 0021B3CC 7D 89 03 A6 */ mtctr r12 +/* 8021E470 0021B3D0 4E 80 04 21 */ bctrl +/* 8021E474 0021B3D4 C0 03 00 00 */ lfs f0, 0(r3) +/* 8021E478 0021B3D8 38 61 00 20 */ addi r3, r1, 0x20 +/* 8021E47C 0021B3DC C0 3D 06 B0 */ lfs f1, 0x6b0(r29) +/* 8021E480 0021B3E0 38 81 00 1C */ addi r4, r1, 0x1c +/* 8021E484 0021B3E4 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8021E488 0021B3E8 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8021E48C 0021B3EC 4B E3 12 A5 */ bl "Max__5CMathFRCfRCf" +/* 8021E490 0021B3F0 C0 03 00 00 */ lfs f0, 0(r3) +/* 8021E494 0021B3F4 D0 01 00 20 */ stfs f0, 0x20(r1) +lbl_8021E498: +/* 8021E498 0021B3F8 3B FD 09 FC */ addi r31, r29, 0x9fc +/* 8021E49C 0021B3FC 7F FC FB 78 */ mr r28, r31 +/* 8021E4A0 0021B400 48 00 00 6C */ b lbl_8021E50C +lbl_8021E4A4: +/* 8021E4A4 0021B404 A0 1C 00 00 */ lhz r0, 0(r28) +/* 8021E4A8 0021B408 7F C3 F3 78 */ mr r3, r30 +/* 8021E4AC 0021B40C 38 81 00 10 */ addi r4, r1, 0x10 +/* 8021E4B0 0021B410 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8021E4B4 0021B414 4B E2 E0 C1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8021E4B8 0021B418 7C 64 1B 78 */ mr r4, r3 +/* 8021E4BC 0021B41C 38 61 00 34 */ addi r3, r1, 0x34 +/* 8021E4C0 0021B420 4B E9 0E 8D */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8021E4C4 0021B424 80 63 00 04 */ lwz r3, 4(r3) +/* 8021E4C8 0021B428 28 03 00 00 */ cmplwi r3, 0 +/* 8021E4CC 0021B42C 41 82 00 3C */ beq lbl_8021E508 +/* 8021E4D0 0021B430 81 83 00 00 */ lwz r12, 0(r3) +/* 8021E4D4 0021B434 7F C4 F3 78 */ mr r4, r30 +/* 8021E4D8 0021B438 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8021E4DC 0021B43C 7D 89 03 A6 */ mtctr r12 +/* 8021E4E0 0021B440 4E 80 04 21 */ bctrl +/* 8021E4E4 0021B444 C0 03 00 00 */ lfs f0, 0(r3) +/* 8021E4E8 0021B448 38 61 00 20 */ addi r3, r1, 0x20 +/* 8021E4EC 0021B44C C0 3D 06 B0 */ lfs f1, 0x6b0(r29) +/* 8021E4F0 0021B450 38 81 00 18 */ addi r4, r1, 0x18 +/* 8021E4F4 0021B454 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8021E4F8 0021B458 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 8021E4FC 0021B45C 4B E3 12 35 */ bl "Max__5CMathFRCfRCf" +/* 8021E500 0021B460 C0 03 00 00 */ lfs f0, 0(r3) +/* 8021E504 0021B464 D0 01 00 20 */ stfs f0, 0x20(r1) +lbl_8021E508: +/* 8021E508 0021B468 3B 9C 00 02 */ addi r28, r28, 2 +lbl_8021E50C: +/* 8021E50C 0021B46C 80 1D 09 F8 */ lwz r0, 0x9f8(r29) +/* 8021E510 0021B470 54 00 08 3C */ slwi r0, r0, 1 +/* 8021E514 0021B474 7C 1F 02 14 */ add r0, r31, r0 +/* 8021E518 0021B478 7C 1C 00 40 */ cmplw r28, r0 +/* 8021E51C 0021B47C 40 82 FF 88 */ bne lbl_8021E4A4 +/* 8021E520 0021B480 C0 5D 0A 00 */ lfs f2, 0xa00(r29) +/* 8021E524 0021B484 C0 21 00 20 */ lfs f1, 0x20(r1) +/* 8021E528 0021B488 C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 8021E52C 0021B48C EC 22 08 28 */ fsubs f1, f2, f1 +/* 8021E530 0021B490 D0 3D 0A 00 */ stfs f1, 0xa00(r29) +/* 8021E534 0021B494 C0 3D 0A 00 */ lfs f1, 0xa00(r29) +/* 8021E538 0021B498 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8021E53C 0021B49C 4C 40 13 82 */ cror 2, 0, 2 +/* 8021E540 0021B4A0 40 82 00 44 */ bne lbl_8021E584 +/* 8021E544 0021B4A4 38 00 00 03 */ li r0, 3 +/* 8021E548 0021B4A8 7F A3 EB 78 */ mr r3, r29 +/* 8021E54C 0021B4AC 90 1D 05 6C */ stw r0, 0x56c(r29) +/* 8021E550 0021B4B0 7F C4 F3 78 */ mr r4, r30 +/* 8021E554 0021B4B4 4B FF F4 7D */ bl sub_8021d9d0 +/* 8021E558 0021B4B8 A0 FD 06 CC */ lhz r7, 0x6cc(r29) +/* 8021E55C 0021B4BC 7F A3 EB 78 */ mr r3, r29 +/* 8021E560 0021B4C0 7F C4 F3 78 */ mr r4, r30 +/* 8021E564 0021B4C4 38 BD 0A 2C */ addi r5, r29, 0xa2c +/* 8021E568 0021B4C8 38 DD 00 34 */ addi r6, r29, 0x34 +/* 8021E56C 0021B4CC 39 00 00 00 */ li r8, 0 +/* 8021E570 0021B4D0 4B FF F2 71 */ bl sub_8021d7e0 +/* 8021E574 0021B4D4 7F A3 EB 78 */ mr r3, r29 +/* 8021E578 0021B4D8 7F C4 F3 78 */ mr r4, r30 +/* 8021E57C 0021B4DC 48 00 04 79 */ bl sub_8021e9f4 +/* 8021E580 0021B4E0 48 00 00 A0 */ b lbl_8021E620 +lbl_8021E584: +/* 8021E584 0021B4E4 7F A3 EB 78 */ mr r3, r29 +/* 8021E588 0021B4E8 38 80 00 02 */ li r4, 2 +/* 8021E58C 0021B4EC 4B FF F2 01 */ bl sub_8021d78c +/* 8021E590 0021B4F0 C0 1D 0A 00 */ lfs f0, 0xa00(r29) +/* 8021E594 0021B4F4 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 8021E598 0021B4F8 40 80 00 3C */ bge lbl_8021E5D4 +/* 8021E59C 0021B4FC 80 1D 05 6C */ lwz r0, 0x56c(r29) +/* 8021E5A0 0021B500 2C 00 00 02 */ cmpwi r0, 2 +/* 8021E5A4 0021B504 41 82 00 7C */ beq lbl_8021E620 +/* 8021E5A8 0021B508 A0 FD 06 CA */ lhz r7, 0x6ca(r29) +/* 8021E5AC 0021B50C 7F A3 EB 78 */ mr r3, r29 +/* 8021E5B0 0021B510 7F C4 F3 78 */ mr r4, r30 +/* 8021E5B4 0021B514 38 BD 0A 20 */ addi r5, r29, 0xa20 +/* 8021E5B8 0021B518 38 DD 00 34 */ addi r6, r29, 0x34 +/* 8021E5BC 0021B51C 39 00 00 00 */ li r8, 0 +/* 8021E5C0 0021B520 4B FF F2 21 */ bl sub_8021d7e0 +/* 8021E5C4 0021B524 38 00 00 02 */ li r0, 2 +/* 8021E5C8 0021B528 90 1D 05 6C */ stw r0, 0x56c(r29) +/* 8021E5CC 0021B52C 90 1D 0A 04 */ stw r0, 0xa04(r29) +/* 8021E5D0 0021B530 48 00 00 50 */ b lbl_8021E620 +lbl_8021E5D4: +/* 8021E5D4 0021B534 7F A3 EB 78 */ mr r3, r29 +/* 8021E5D8 0021B538 38 80 00 01 */ li r4, 1 +/* 8021E5DC 0021B53C 4B FF F1 B1 */ bl sub_8021d78c +/* 8021E5E0 0021B540 C0 1D 0A 00 */ lfs f0, 0xa00(r29) +/* 8021E5E4 0021B544 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 8021E5E8 0021B548 40 80 00 38 */ bge lbl_8021E620 +/* 8021E5EC 0021B54C 80 1D 05 6C */ lwz r0, 0x56c(r29) +/* 8021E5F0 0021B550 2C 00 00 01 */ cmpwi r0, 1 +/* 8021E5F4 0021B554 41 82 00 2C */ beq lbl_8021E620 +/* 8021E5F8 0021B558 A0 FD 06 C8 */ lhz r7, 0x6c8(r29) +/* 8021E5FC 0021B55C 7F A3 EB 78 */ mr r3, r29 +/* 8021E600 0021B560 7F C4 F3 78 */ mr r4, r30 +/* 8021E604 0021B564 38 BD 0A 14 */ addi r5, r29, 0xa14 +/* 8021E608 0021B568 38 DD 00 34 */ addi r6, r29, 0x34 +/* 8021E60C 0021B56C 39 00 00 00 */ li r8, 0 +/* 8021E610 0021B570 4B FF F1 D1 */ bl sub_8021d7e0 +/* 8021E614 0021B574 38 00 00 01 */ li r0, 1 +/* 8021E618 0021B578 90 1D 05 6C */ stw r0, 0x56c(r29) +/* 8021E61C 0021B57C 90 1D 0A 04 */ stw r0, 0xa04(r29) +lbl_8021E620: +/* 8021E620 0021B580 80 1D 05 6C */ lwz r0, 0x56c(r29) +/* 8021E624 0021B584 2C 00 00 03 */ cmpwi r0, 3 +/* 8021E628 0021B588 41 82 00 0C */ beq lbl_8021E634 +/* 8021E62C 0021B58C C3 FD 06 B0 */ lfs f31, 0x6b0(r29) +/* 8021E630 0021B590 48 00 00 08 */ b lbl_8021E638 +lbl_8021E634: +/* 8021E634 0021B594 C3 FD 08 EC */ lfs f31, 0x8ec(r29) +lbl_8021E638: +/* 8021E638 0021B598 A0 1D 09 F6 */ lhz r0, 0x9f6(r29) +/* 8021E63C 0021B59C 7F C3 F3 78 */ mr r3, r30 +/* 8021E640 0021B5A0 38 81 00 0C */ addi r4, r1, 0xc +/* 8021E644 0021B5A4 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8021E648 0021B5A8 4B E2 DF 2D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8021E64C 0021B5AC 7C 64 1B 78 */ mr r4, r3 +/* 8021E650 0021B5B0 38 61 00 2C */ addi r3, r1, 0x2c +/* 8021E654 0021B5B4 4B E9 0C F9 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8021E658 0021B5B8 80 63 00 04 */ lwz r3, 4(r3) +/* 8021E65C 0021B5BC 28 03 00 00 */ cmplwi r3, 0 +/* 8021E660 0021B5C0 41 82 00 1C */ beq lbl_8021E67C +/* 8021E664 0021B5C4 81 83 00 00 */ lwz r12, 0(r3) +/* 8021E668 0021B5C8 7F C4 F3 78 */ mr r4, r30 +/* 8021E66C 0021B5CC 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8021E670 0021B5D0 7D 89 03 A6 */ mtctr r12 +/* 8021E674 0021B5D4 4E 80 04 21 */ bctrl +/* 8021E678 0021B5D8 D3 E3 00 00 */ stfs f31, 0(r3) +lbl_8021E67C: +/* 8021E67C 0021B5DC 7F FC FB 78 */ mr r28, r31 +/* 8021E680 0021B5E0 48 00 00 4C */ b lbl_8021E6CC +lbl_8021E684: +/* 8021E684 0021B5E4 A0 1C 00 00 */ lhz r0, 0(r28) +/* 8021E688 0021B5E8 7F C3 F3 78 */ mr r3, r30 +/* 8021E68C 0021B5EC 38 81 00 08 */ addi r4, r1, 8 +/* 8021E690 0021B5F0 B0 01 00 08 */ sth r0, 8(r1) +/* 8021E694 0021B5F4 4B E2 DE E1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8021E698 0021B5F8 7C 64 1B 78 */ mr r4, r3 +/* 8021E69C 0021B5FC 38 61 00 24 */ addi r3, r1, 0x24 +/* 8021E6A0 0021B600 4B E9 0C AD */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8021E6A4 0021B604 80 63 00 04 */ lwz r3, 4(r3) +/* 8021E6A8 0021B608 28 03 00 00 */ cmplwi r3, 0 +/* 8021E6AC 0021B60C 41 82 00 1C */ beq lbl_8021E6C8 +/* 8021E6B0 0021B610 81 83 00 00 */ lwz r12, 0(r3) +/* 8021E6B4 0021B614 7F C4 F3 78 */ mr r4, r30 +/* 8021E6B8 0021B618 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8021E6BC 0021B61C 7D 89 03 A6 */ mtctr r12 +/* 8021E6C0 0021B620 4E 80 04 21 */ bctrl +/* 8021E6C4 0021B624 D3 E3 00 00 */ stfs f31, 0(r3) +lbl_8021E6C8: +/* 8021E6C8 0021B628 3B 9C 00 02 */ addi r28, r28, 2 +lbl_8021E6CC: +/* 8021E6CC 0021B62C 80 1D 09 F8 */ lwz r0, 0x9f8(r29) +/* 8021E6D0 0021B630 54 00 08 3C */ slwi r0, r0, 1 +/* 8021E6D4 0021B634 7C 1F 02 14 */ add r0, r31, r0 +/* 8021E6D8 0021B638 7C 1C 00 40 */ cmplw r28, r0 +/* 8021E6DC 0021B63C 40 82 FF A8 */ bne lbl_8021E684 +lbl_8021E6E0: +/* 8021E6E0 0021B640 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 8021E6E4 0021B644 80 01 00 74 */ lwz r0, 0x74(r1) +/* 8021E6E8 0021B648 CB E1 00 60 */ lfd f31, 0x60(r1) +/* 8021E6EC 0021B64C 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 8021E6F0 0021B650 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 8021E6F4 0021B654 83 A1 00 54 */ lwz r29, 0x54(r1) +/* 8021E6F8 0021B658 83 81 00 50 */ lwz r28, 0x50(r1) +/* 8021E6FC 0021B65C 7C 08 03 A6 */ mtlr r0 +/* 8021E700 0021B660 38 21 00 70 */ addi r1, r1, 0x70 +/* 8021E704 0021B664 4E 80 00 20 */ blr + +.global sub_8021e708 +sub_8021e708: +/* 8021E708 0021B668 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 8021E70C 0021B66C 7C 08 02 A6 */ mflr r0 +/* 8021E710 0021B670 90 01 00 74 */ stw r0, 0x74(r1) +/* 8021E714 0021B674 DB E1 00 60 */ stfd f31, 0x60(r1) +/* 8021E718 0021B678 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 8021E71C 0021B67C 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 8021E720 0021B680 93 C1 00 58 */ stw r30, 0x58(r1) +/* 8021E724 0021B684 93 A1 00 54 */ stw r29, 0x54(r1) +/* 8021E728 0021B688 93 81 00 50 */ stw r28, 0x50(r1) +/* 8021E72C 0021B68C 88 03 04 00 */ lbz r0, 0x400(r3) +/* 8021E730 0021B690 7C 7D 1B 78 */ mr r29, r3 +/* 8021E734 0021B694 7C 9E 23 78 */ mr r30, r4 +/* 8021E738 0021B698 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8021E73C 0021B69C 41 82 02 90 */ beq lbl_8021E9CC +/* 8021E740 0021B6A0 80 1D 05 6C */ lwz r0, 0x56c(r29) +/* 8021E744 0021B6A4 2C 00 00 03 */ cmpwi r0, 3 +/* 8021E748 0021B6A8 40 82 02 80 */ bne lbl_8021E9C8 +/* 8021E74C 0021B6AC C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 8021E750 0021B6B0 7F C3 F3 78 */ mr r3, r30 +/* 8021E754 0021B6B4 38 81 00 14 */ addi r4, r1, 0x14 +/* 8021E758 0021B6B8 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 8021E75C 0021B6BC A0 1D 09 F6 */ lhz r0, 0x9f6(r29) +/* 8021E760 0021B6C0 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8021E764 0021B6C4 4B E2 DE 11 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8021E768 0021B6C8 7C 64 1B 78 */ mr r4, r3 +/* 8021E76C 0021B6CC 38 61 00 3C */ addi r3, r1, 0x3c +/* 8021E770 0021B6D0 4B E9 0B DD */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8021E774 0021B6D4 80 63 00 04 */ lwz r3, 4(r3) +/* 8021E778 0021B6D8 28 03 00 00 */ cmplwi r3, 0 +/* 8021E77C 0021B6DC 41 82 00 3C */ beq lbl_8021E7B8 +/* 8021E780 0021B6E0 81 83 00 00 */ lwz r12, 0(r3) +/* 8021E784 0021B6E4 7F C4 F3 78 */ mr r4, r30 +/* 8021E788 0021B6E8 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8021E78C 0021B6EC 7D 89 03 A6 */ mtctr r12 +/* 8021E790 0021B6F0 4E 80 04 21 */ bctrl +/* 8021E794 0021B6F4 C0 03 00 00 */ lfs f0, 0(r3) +/* 8021E798 0021B6F8 38 61 00 20 */ addi r3, r1, 0x20 +/* 8021E79C 0021B6FC C0 3D 08 EC */ lfs f1, 0x8ec(r29) +/* 8021E7A0 0021B700 38 81 00 1C */ addi r4, r1, 0x1c +/* 8021E7A4 0021B704 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8021E7A8 0021B708 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8021E7AC 0021B70C 4B E3 0F 85 */ bl "Max__5CMathFRCfRCf" +/* 8021E7B0 0021B710 C0 03 00 00 */ lfs f0, 0(r3) +/* 8021E7B4 0021B714 D0 01 00 20 */ stfs f0, 0x20(r1) +lbl_8021E7B8: +/* 8021E7B8 0021B718 3B FD 09 FC */ addi r31, r29, 0x9fc +/* 8021E7BC 0021B71C 7F FC FB 78 */ mr r28, r31 +/* 8021E7C0 0021B720 48 00 00 6C */ b lbl_8021E82C +lbl_8021E7C4: +/* 8021E7C4 0021B724 A0 1C 00 00 */ lhz r0, 0(r28) +/* 8021E7C8 0021B728 7F C3 F3 78 */ mr r3, r30 +/* 8021E7CC 0021B72C 38 81 00 10 */ addi r4, r1, 0x10 +/* 8021E7D0 0021B730 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8021E7D4 0021B734 4B E2 DD A1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8021E7D8 0021B738 7C 64 1B 78 */ mr r4, r3 +/* 8021E7DC 0021B73C 38 61 00 34 */ addi r3, r1, 0x34 +/* 8021E7E0 0021B740 4B E9 0B 6D */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8021E7E4 0021B744 80 63 00 04 */ lwz r3, 4(r3) +/* 8021E7E8 0021B748 28 03 00 00 */ cmplwi r3, 0 +/* 8021E7EC 0021B74C 41 82 00 3C */ beq lbl_8021E828 +/* 8021E7F0 0021B750 81 83 00 00 */ lwz r12, 0(r3) +/* 8021E7F4 0021B754 7F C4 F3 78 */ mr r4, r30 +/* 8021E7F8 0021B758 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8021E7FC 0021B75C 7D 89 03 A6 */ mtctr r12 +/* 8021E800 0021B760 4E 80 04 21 */ bctrl +/* 8021E804 0021B764 C0 03 00 00 */ lfs f0, 0(r3) +/* 8021E808 0021B768 38 61 00 20 */ addi r3, r1, 0x20 +/* 8021E80C 0021B76C C0 3D 08 EC */ lfs f1, 0x8ec(r29) +/* 8021E810 0021B770 38 81 00 18 */ addi r4, r1, 0x18 +/* 8021E814 0021B774 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8021E818 0021B778 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 8021E81C 0021B77C 4B E3 0F 15 */ bl "Max__5CMathFRCfRCf" +/* 8021E820 0021B780 C0 03 00 00 */ lfs f0, 0(r3) +/* 8021E824 0021B784 D0 01 00 20 */ stfs f0, 0x20(r1) +lbl_8021E828: +/* 8021E828 0021B788 3B 9C 00 02 */ addi r28, r28, 2 +lbl_8021E82C: +/* 8021E82C 0021B78C 80 1D 09 F8 */ lwz r0, 0x9f8(r29) +/* 8021E830 0021B790 54 00 08 3C */ slwi r0, r0, 1 +/* 8021E834 0021B794 7C 1F 02 14 */ add r0, r31, r0 +/* 8021E838 0021B798 7C 1C 00 40 */ cmplw r28, r0 +/* 8021E83C 0021B79C 40 82 FF 88 */ bne lbl_8021E7C4 +/* 8021E840 0021B7A0 7F A3 EB 78 */ mr r3, r29 +/* 8021E844 0021B7A4 7F C4 F3 78 */ mr r4, r30 +/* 8021E848 0021B7A8 81 9D 00 00 */ lwz r12, 0(r29) +/* 8021E84C 0021B7AC 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8021E850 0021B7B0 7D 89 03 A6 */ mtctr r12 +/* 8021E854 0021B7B4 4E 80 04 21 */ bctrl +/* 8021E858 0021B7B8 C0 23 00 00 */ lfs f1, 0(r3) +/* 8021E85C 0021B7BC 7F A3 EB 78 */ mr r3, r29 +/* 8021E860 0021B7C0 81 9D 00 00 */ lwz r12, 0(r29) +/* 8021E864 0021B7C4 7F C4 F3 78 */ mr r4, r30 +/* 8021E868 0021B7C8 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 8021E86C 0021B7CC 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8021E870 0021B7D0 EF E1 00 28 */ fsubs f31, f1, f0 +/* 8021E874 0021B7D4 7D 89 03 A6 */ mtctr r12 +/* 8021E878 0021B7D8 4E 80 04 21 */ bctrl +/* 8021E87C 0021B7DC D3 E3 00 00 */ stfs f31, 0(r3) +/* 8021E880 0021B7E0 7F A3 EB 78 */ mr r3, r29 +/* 8021E884 0021B7E4 7F C4 F3 78 */ mr r4, r30 +/* 8021E888 0021B7E8 81 9D 00 00 */ lwz r12, 0(r29) +/* 8021E88C 0021B7EC 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8021E890 0021B7F0 7D 89 03 A6 */ mtctr r12 +/* 8021E894 0021B7F4 4E 80 04 21 */ bctrl +/* 8021E898 0021B7F8 C0 23 00 00 */ lfs f1, 0(r3) +/* 8021E89C 0021B7FC C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 8021E8A0 0021B800 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8021E8A4 0021B804 4C 40 13 82 */ cror 2, 0, 2 +/* 8021E8A8 0021B808 40 82 00 6C */ bne lbl_8021E914 +/* 8021E8AC 0021B80C 81 9D 00 00 */ lwz r12, 0(r29) +/* 8021E8B0 0021B810 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8021E8B4 0021B814 38 A4 66 A0 */ addi r5, r4, skZero3f@l +/* 8021E8B8 0021B818 7F A3 EB 78 */ mr r3, r29 +/* 8021E8BC 0021B81C 81 8C 00 84 */ lwz r12, 0x84(r12) +/* 8021E8C0 0021B820 7F C4 F3 78 */ mr r4, r30 +/* 8021E8C4 0021B824 38 C0 00 14 */ li r6, 0x14 +/* 8021E8C8 0021B828 7D 89 03 A6 */ mtctr r12 +/* 8021E8CC 0021B82C 4E 80 04 21 */ bctrl +/* 8021E8D0 0021B830 88 1D 0A 48 */ lbz r0, 0xa48(r29) +/* 8021E8D4 0021B834 38 60 00 01 */ li r3, 1 +/* 8021E8D8 0021B838 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 8021E8DC 0021B83C 38 A0 00 00 */ li r5, 0 +/* 8021E8E0 0021B840 98 1D 0A 48 */ stb r0, 0xa48(r29) +/* 8021E8E4 0021B844 7F A3 EB 78 */ mr r3, r29 +/* 8021E8E8 0021B848 7F C4 F3 78 */ mr r4, r30 +/* 8021E8EC 0021B84C 88 1D 0A 49 */ lbz r0, 0xa49(r29) +/* 8021E8F0 0021B850 50 A0 2E B4 */ rlwimi r0, r5, 5, 0x1a, 0x1a +/* 8021E8F4 0021B854 98 1D 0A 49 */ stb r0, 0xa49(r29) +/* 8021E8F8 0021B858 4B FF ED 4D */ bl sub_8021d644 +/* 8021E8FC 0021B85C 7F A3 EB 78 */ mr r3, r29 +/* 8021E900 0021B860 7F C6 F3 78 */ mr r6, r30 +/* 8021E904 0021B864 38 80 00 29 */ li r4, 0x29 +/* 8021E908 0021B868 38 A0 00 28 */ li r5, 0x28 +/* 8021E90C 0021B86C 4B E3 55 C9 */ bl RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager +/* 8021E910 0021B870 48 00 00 BC */ b lbl_8021E9CC +lbl_8021E914: +/* 8021E914 0021B874 A0 1D 09 F6 */ lhz r0, 0x9f6(r29) +/* 8021E918 0021B878 7F C3 F3 78 */ mr r3, r30 +/* 8021E91C 0021B87C 38 81 00 0C */ addi r4, r1, 0xc +/* 8021E920 0021B880 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8021E924 0021B884 4B E2 DC 51 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8021E928 0021B888 7C 64 1B 78 */ mr r4, r3 +/* 8021E92C 0021B88C 38 61 00 2C */ addi r3, r1, 0x2c +/* 8021E930 0021B890 4B E9 0A 1D */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8021E934 0021B894 80 63 00 04 */ lwz r3, 4(r3) +/* 8021E938 0021B898 28 03 00 00 */ cmplwi r3, 0 +/* 8021E93C 0021B89C 41 82 00 20 */ beq lbl_8021E95C +/* 8021E940 0021B8A0 81 83 00 00 */ lwz r12, 0(r3) +/* 8021E944 0021B8A4 7F C4 F3 78 */ mr r4, r30 +/* 8021E948 0021B8A8 C3 FD 08 EC */ lfs f31, 0x8ec(r29) +/* 8021E94C 0021B8AC 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8021E950 0021B8B0 7D 89 03 A6 */ mtctr r12 +/* 8021E954 0021B8B4 4E 80 04 21 */ bctrl +/* 8021E958 0021B8B8 D3 E3 00 00 */ stfs f31, 0(r3) +lbl_8021E95C: +/* 8021E95C 0021B8BC 7F FC FB 78 */ mr r28, r31 +/* 8021E960 0021B8C0 48 00 00 50 */ b lbl_8021E9B0 +lbl_8021E964: +/* 8021E964 0021B8C4 A0 1C 00 00 */ lhz r0, 0(r28) +/* 8021E968 0021B8C8 7F C3 F3 78 */ mr r3, r30 +/* 8021E96C 0021B8CC 38 81 00 08 */ addi r4, r1, 8 +/* 8021E970 0021B8D0 B0 01 00 08 */ sth r0, 8(r1) +/* 8021E974 0021B8D4 4B E2 DC 01 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8021E978 0021B8D8 7C 64 1B 78 */ mr r4, r3 +/* 8021E97C 0021B8DC 38 61 00 24 */ addi r3, r1, 0x24 +/* 8021E980 0021B8E0 4B E9 09 CD */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8021E984 0021B8E4 80 63 00 04 */ lwz r3, 4(r3) +/* 8021E988 0021B8E8 28 03 00 00 */ cmplwi r3, 0 +/* 8021E98C 0021B8EC 41 82 00 20 */ beq lbl_8021E9AC +/* 8021E990 0021B8F0 81 83 00 00 */ lwz r12, 0(r3) +/* 8021E994 0021B8F4 7F C4 F3 78 */ mr r4, r30 +/* 8021E998 0021B8F8 C3 FD 08 EC */ lfs f31, 0x8ec(r29) +/* 8021E99C 0021B8FC 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8021E9A0 0021B900 7D 89 03 A6 */ mtctr r12 +/* 8021E9A4 0021B904 4E 80 04 21 */ bctrl +/* 8021E9A8 0021B908 D3 E3 00 00 */ stfs f31, 0(r3) +lbl_8021E9AC: +/* 8021E9AC 0021B90C 3B 9C 00 02 */ addi r28, r28, 2 +lbl_8021E9B0: +/* 8021E9B0 0021B910 80 1D 09 F8 */ lwz r0, 0x9f8(r29) +/* 8021E9B4 0021B914 54 00 08 3C */ slwi r0, r0, 1 +/* 8021E9B8 0021B918 7C 1F 02 14 */ add r0, r31, r0 +/* 8021E9BC 0021B91C 7C 1C 00 40 */ cmplw r28, r0 +/* 8021E9C0 0021B920 40 82 FF A4 */ bne lbl_8021E964 +/* 8021E9C4 0021B924 48 00 00 08 */ b lbl_8021E9CC +lbl_8021E9C8: +/* 8021E9C8 0021B928 4B FF FA 2D */ bl sub_8021e3f4 +lbl_8021E9CC: +/* 8021E9CC 0021B92C E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 8021E9D0 0021B930 80 01 00 74 */ lwz r0, 0x74(r1) +/* 8021E9D4 0021B934 CB E1 00 60 */ lfd f31, 0x60(r1) +/* 8021E9D8 0021B938 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 8021E9DC 0021B93C 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 8021E9E0 0021B940 83 A1 00 54 */ lwz r29, 0x54(r1) +/* 8021E9E4 0021B944 83 81 00 50 */ lwz r28, 0x50(r1) +/* 8021E9E8 0021B948 7C 08 03 A6 */ mtlr r0 +/* 8021E9EC 0021B94C 38 21 00 70 */ addi r1, r1, 0x70 +/* 8021E9F0 0021B950 4E 80 00 20 */ blr + +.global sub_8021e9f4 +sub_8021e9f4: +/* 8021E9F4 0021B954 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8021E9F8 0021B958 7C 08 02 A6 */ mflr r0 +/* 8021E9FC 0021B95C 90 01 00 44 */ stw r0, 0x44(r1) +/* 8021EA00 0021B960 BF 41 00 28 */ stmw r26, 0x28(r1) +/* 8021EA04 0021B964 7C 7A 1B 78 */ mr r26, r3 +/* 8021EA08 0021B968 7C 9B 23 78 */ mr r27, r4 +/* 8021EA0C 0021B96C 81 83 00 00 */ lwz r12, 0(r3) +/* 8021EA10 0021B970 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8021EA14 0021B974 7D 89 03 A6 */ mtctr r12 +/* 8021EA18 0021B978 4E 80 04 21 */ bctrl +/* 8021EA1C 0021B97C A0 1A 09 F6 */ lhz r0, 0x9f6(r26) +/* 8021EA20 0021B980 7C 7F 1B 78 */ mr r31, r3 +/* 8021EA24 0021B984 7F 63 DB 78 */ mr r3, r27 +/* 8021EA28 0021B988 38 81 00 0C */ addi r4, r1, 0xc +/* 8021EA2C 0021B98C B0 01 00 0C */ sth r0, 0xc(r1) +/* 8021EA30 0021B990 4B E2 DB 45 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8021EA34 0021B994 7C 64 1B 78 */ mr r4, r3 +/* 8021EA38 0021B998 38 61 00 18 */ addi r3, r1, 0x18 +/* 8021EA3C 0021B99C 4B E9 09 11 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8021EA40 0021B9A0 83 C3 00 04 */ lwz r30, 4(r3) +/* 8021EA44 0021B9A4 28 1E 00 00 */ cmplwi r30, 0 +/* 8021EA48 0021B9A8 41 82 00 38 */ beq lbl_8021EA80 +/* 8021EA4C 0021B9AC 7F C3 F3 78 */ mr r3, r30 +/* 8021EA50 0021B9B0 7F 64 DB 78 */ mr r4, r27 +/* 8021EA54 0021B9B4 81 9E 00 00 */ lwz r12, 0(r30) +/* 8021EA58 0021B9B8 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8021EA5C 0021B9BC 7D 89 03 A6 */ mtctr r12 +/* 8021EA60 0021B9C0 4E 80 04 21 */ bctrl +/* 8021EA64 0021B9C4 C0 1F 00 00 */ lfs f0, 0(r31) +/* 8021EA68 0021B9C8 38 9A 09 8C */ addi r4, r26, 0x98c +/* 8021EA6C 0021B9CC D0 03 00 00 */ stfs f0, 0(r3) +/* 8021EA70 0021B9D0 C0 1F 00 04 */ lfs f0, 4(r31) +/* 8021EA74 0021B9D4 D0 03 00 04 */ stfs f0, 4(r3) +/* 8021EA78 0021B9D8 7F C3 F3 78 */ mr r3, r30 +/* 8021EA7C 0021B9DC 4B F8 A1 1D */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability +lbl_8021EA80: +/* 8021EA80 0021B9E0 3B DA 09 FC */ addi r30, r26, 0x9fc +/* 8021EA84 0021B9E4 7F DD F3 78 */ mr r29, r30 +/* 8021EA88 0021B9E8 48 00 00 68 */ b lbl_8021EAF0 +lbl_8021EA8C: +/* 8021EA8C 0021B9EC A0 1D 00 00 */ lhz r0, 0(r29) +/* 8021EA90 0021B9F0 7F 63 DB 78 */ mr r3, r27 +/* 8021EA94 0021B9F4 38 81 00 08 */ addi r4, r1, 8 +/* 8021EA98 0021B9F8 B0 01 00 08 */ sth r0, 8(r1) +/* 8021EA9C 0021B9FC 4B E2 DA D9 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8021EAA0 0021BA00 7C 64 1B 78 */ mr r4, r3 +/* 8021EAA4 0021BA04 38 61 00 10 */ addi r3, r1, 0x10 +/* 8021EAA8 0021BA08 4B E9 08 A5 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8021EAAC 0021BA0C 83 83 00 04 */ lwz r28, 4(r3) +/* 8021EAB0 0021BA10 28 1C 00 00 */ cmplwi r28, 0 +/* 8021EAB4 0021BA14 41 82 00 38 */ beq lbl_8021EAEC +/* 8021EAB8 0021BA18 7F 83 E3 78 */ mr r3, r28 +/* 8021EABC 0021BA1C 7F 64 DB 78 */ mr r4, r27 +/* 8021EAC0 0021BA20 81 9C 00 00 */ lwz r12, 0(r28) +/* 8021EAC4 0021BA24 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8021EAC8 0021BA28 7D 89 03 A6 */ mtctr r12 +/* 8021EACC 0021BA2C 4E 80 04 21 */ bctrl +/* 8021EAD0 0021BA30 C0 1F 00 00 */ lfs f0, 0(r31) +/* 8021EAD4 0021BA34 38 9A 09 8C */ addi r4, r26, 0x98c +/* 8021EAD8 0021BA38 D0 03 00 00 */ stfs f0, 0(r3) +/* 8021EADC 0021BA3C C0 1F 00 04 */ lfs f0, 4(r31) +/* 8021EAE0 0021BA40 D0 03 00 04 */ stfs f0, 4(r3) +/* 8021EAE4 0021BA44 7F 83 E3 78 */ mr r3, r28 +/* 8021EAE8 0021BA48 4B F8 A0 B1 */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability +lbl_8021EAEC: +/* 8021EAEC 0021BA4C 3B BD 00 02 */ addi r29, r29, 2 +lbl_8021EAF0: +/* 8021EAF0 0021BA50 80 1A 09 F8 */ lwz r0, 0x9f8(r26) +/* 8021EAF4 0021BA54 54 00 08 3C */ slwi r0, r0, 1 +/* 8021EAF8 0021BA58 7C 1E 02 14 */ add r0, r30, r0 +/* 8021EAFC 0021BA5C 7C 1D 00 40 */ cmplw r29, r0 +/* 8021EB00 0021BA60 40 82 FF 8C */ bne lbl_8021EA8C +/* 8021EB04 0021BA64 BB 41 00 28 */ lmw r26, 0x28(r1) +/* 8021EB08 0021BA68 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8021EB0C 0021BA6C 7C 08 03 A6 */ mtlr r0 +/* 8021EB10 0021BA70 38 21 00 40 */ addi r1, r1, 0x40 +/* 8021EB14 0021BA74 4E 80 00 20 */ blr + +.global sub_8021eb18 +sub_8021eb18: +/* 8021EB18 0021BA78 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 8021EB1C 0021BA7C 7C 08 02 A6 */ mflr r0 +/* 8021EB20 0021BA80 90 01 00 64 */ stw r0, 0x64(r1) +/* 8021EB24 0021BA84 DB E1 00 50 */ stfd f31, 0x50(r1) +/* 8021EB28 0021BA88 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 8021EB2C 0021BA8C DB C1 00 40 */ stfd f30, 0x40(r1) +/* 8021EB30 0021BA90 F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0 +/* 8021EB34 0021BA94 BF 21 00 24 */ stmw r25, 0x24(r1) +/* 8021EB38 0021BA98 81 83 00 00 */ lwz r12, 0(r3) +/* 8021EB3C 0021BA9C 7C 79 1B 78 */ mr r25, r3 +/* 8021EB40 0021BAA0 7C 9A 23 78 */ mr r26, r4 +/* 8021EB44 0021BAA4 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8021EB48 0021BAA8 7D 89 03 A6 */ mtctr r12 +/* 8021EB4C 0021BAAC 4E 80 04 21 */ bctrl +/* 8021EB50 0021BAB0 7C 7F 1B 78 */ mr r31, r3 +/* 8021EB54 0021BAB4 7F 43 D3 78 */ mr r3, r26 +/* 8021EB58 0021BAB8 C0 1F 00 00 */ lfs f0, 0(r31) +/* 8021EB5C 0021BABC 38 81 00 0C */ addi r4, r1, 0xc +/* 8021EB60 0021BAC0 D0 19 08 EC */ stfs f0, 0x8ec(r25) +/* 8021EB64 0021BAC4 A0 19 09 F6 */ lhz r0, 0x9f6(r25) +/* 8021EB68 0021BAC8 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8021EB6C 0021BACC 4B E2 DA 09 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8021EB70 0021BAD0 7C 64 1B 78 */ mr r4, r3 +/* 8021EB74 0021BAD4 38 61 00 18 */ addi r3, r1, 0x18 +/* 8021EB78 0021BAD8 4B E9 07 D5 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8021EB7C 0021BADC 80 63 00 04 */ lwz r3, 4(r3) +/* 8021EB80 0021BAE0 28 03 00 00 */ cmplwi r3, 0 +/* 8021EB84 0021BAE4 41 82 00 20 */ beq lbl_8021EBA4 +/* 8021EB88 0021BAE8 81 83 00 00 */ lwz r12, 0(r3) +/* 8021EB8C 0021BAEC 7F 44 D3 78 */ mr r4, r26 +/* 8021EB90 0021BAF0 C3 F9 06 B0 */ lfs f31, 0x6b0(r25) +/* 8021EB94 0021BAF4 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8021EB98 0021BAF8 7D 89 03 A6 */ mtctr r12 +/* 8021EB9C 0021BAFC 4E 80 04 21 */ bctrl +/* 8021EBA0 0021BB00 D3 E3 00 00 */ stfs f31, 0(r3) +lbl_8021EBA4: +/* 8021EBA4 0021BB04 3B B9 09 FC */ addi r29, r25, 0x9fc +/* 8021EBA8 0021BB08 3B D9 06 40 */ addi r30, r25, 0x640 +/* 8021EBAC 0021BB0C 7F BC EB 78 */ mr r28, r29 +/* 8021EBB0 0021BB10 48 00 00 68 */ b lbl_8021EC18 +lbl_8021EBB4: +/* 8021EBB4 0021BB14 A0 1C 00 00 */ lhz r0, 0(r28) +/* 8021EBB8 0021BB18 7F 43 D3 78 */ mr r3, r26 +/* 8021EBBC 0021BB1C 38 81 00 08 */ addi r4, r1, 8 +/* 8021EBC0 0021BB20 B0 01 00 08 */ sth r0, 8(r1) +/* 8021EBC4 0021BB24 4B E2 D9 B1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8021EBC8 0021BB28 7C 64 1B 78 */ mr r4, r3 +/* 8021EBCC 0021BB2C 38 61 00 10 */ addi r3, r1, 0x10 +/* 8021EBD0 0021BB30 4B E9 07 7D */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8021EBD4 0021BB34 83 63 00 04 */ lwz r27, 4(r3) +/* 8021EBD8 0021BB38 28 1B 00 00 */ cmplwi r27, 0 +/* 8021EBDC 0021BB3C 41 82 00 38 */ beq lbl_8021EC14 +/* 8021EBE0 0021BB40 7F 63 DB 78 */ mr r3, r27 +/* 8021EBE4 0021BB44 7F 44 D3 78 */ mr r4, r26 +/* 8021EBE8 0021BB48 81 9B 00 00 */ lwz r12, 0(r27) +/* 8021EBEC 0021BB4C C3 FF 00 04 */ lfs f31, 4(r31) +/* 8021EBF0 0021BB50 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8021EBF4 0021BB54 C3 D9 06 B0 */ lfs f30, 0x6b0(r25) +/* 8021EBF8 0021BB58 7D 89 03 A6 */ mtctr r12 +/* 8021EBFC 0021BB5C 4E 80 04 21 */ bctrl +/* 8021EC00 0021BB60 D3 C3 00 00 */ stfs f30, 0(r3) +/* 8021EC04 0021BB64 7F C4 F3 78 */ mr r4, r30 +/* 8021EC08 0021BB68 D3 E3 00 04 */ stfs f31, 4(r3) +/* 8021EC0C 0021BB6C 7F 63 DB 78 */ mr r3, r27 +/* 8021EC10 0021BB70 4B F8 9F 89 */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability +lbl_8021EC14: +/* 8021EC14 0021BB74 3B 9C 00 02 */ addi r28, r28, 2 +lbl_8021EC18: +/* 8021EC18 0021BB78 80 19 09 F8 */ lwz r0, 0x9f8(r25) +/* 8021EC1C 0021BB7C 54 00 08 3C */ slwi r0, r0, 1 +/* 8021EC20 0021BB80 7C 1D 02 14 */ add r0, r29, r0 +/* 8021EC24 0021BB84 7C 1C 00 40 */ cmplw r28, r0 +/* 8021EC28 0021BB88 40 82 FF 8C */ bne lbl_8021EBB4 +/* 8021EC2C 0021BB8C C0 19 06 B0 */ lfs f0, 0x6b0(r25) +/* 8021EC30 0021BB90 D0 19 0A 00 */ stfs f0, 0xa00(r25) +/* 8021EC34 0021BB94 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 +/* 8021EC38 0021BB98 CB E1 00 50 */ lfd f31, 0x50(r1) +/* 8021EC3C 0021BB9C E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0 +/* 8021EC40 0021BBA0 CB C1 00 40 */ lfd f30, 0x40(r1) +/* 8021EC44 0021BBA4 BB 21 00 24 */ lmw r25, 0x24(r1) +/* 8021EC48 0021BBA8 80 01 00 64 */ lwz r0, 0x64(r1) +/* 8021EC4C 0021BBAC 7C 08 03 A6 */ mtlr r0 +/* 8021EC50 0021BBB0 38 21 00 60 */ addi r1, r1, 0x60 +/* 8021EC54 0021BBB4 4E 80 00 20 */ blr + +.global sub_8021ec58 +sub_8021ec58: +/* 8021EC58 0021BBB8 94 21 FE B0 */ stwu r1, -0x150(r1) +/* 8021EC5C 0021BBBC 7C 08 02 A6 */ mflr r0 +/* 8021EC60 0021BBC0 90 01 01 54 */ stw r0, 0x154(r1) +/* 8021EC64 0021BBC4 DB E1 01 40 */ stfd f31, 0x140(r1) +/* 8021EC68 0021BBC8 F3 E1 01 48 */ psq_st f31, 328(r1), 0, qr0 +/* 8021EC6C 0021BBCC DB C1 01 30 */ stfd f30, 0x130(r1) +/* 8021EC70 0021BBD0 F3 C1 01 38 */ psq_st f30, 312(r1), 0, qr0 +/* 8021EC74 0021BBD4 DB A1 01 20 */ stfd f29, 0x120(r1) +/* 8021EC78 0021BBD8 F3 A1 01 28 */ psq_st f29, 296(r1), 0, qr0 +/* 8021EC7C 0021BBDC DB 81 01 10 */ stfd f28, 0x110(r1) +/* 8021EC80 0021BBE0 F3 81 01 18 */ psq_st f28, 280(r1), 0, qr0 +/* 8021EC84 0021BBE4 DB 61 01 00 */ stfd f27, 0x100(r1) +/* 8021EC88 0021BBE8 F3 61 01 08 */ psq_st f27, 264(r1), 0, qr0 +/* 8021EC8C 0021BBEC 93 E1 00 FC */ stw r31, 0xfc(r1) +/* 8021EC90 0021BBF0 93 C1 00 F8 */ stw r30, 0xf8(r1) +/* 8021EC94 0021BBF4 7C 7E 1B 78 */ mr r30, r3 +/* 8021EC98 0021BBF8 FF C0 08 90 */ fmr f30, f1 +/* 8021EC9C 0021BBFC 80 63 04 50 */ lwz r3, 0x450(r3) +/* 8021ECA0 0021BC00 7C 9F 23 78 */ mr r31, r4 +/* 8021ECA4 0021BC04 80 03 02 EC */ lwz r0, 0x2ec(r3) +/* 8021ECA8 0021BC08 2C 00 00 00 */ cmpwi r0, 0 +/* 8021ECAC 0021BC0C 41 82 02 34 */ beq lbl_8021EEE0 +/* 8021ECB0 0021BC10 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 8021ECB4 0021BC14 2C 00 00 03 */ cmpwi r0, 3 +/* 8021ECB8 0021BC18 41 82 02 28 */ beq lbl_8021EEE0 +/* 8021ECBC 0021BC1C 88 1E 09 F4 */ lbz r0, 0x9f4(r30) +/* 8021ECC0 0021BC20 7F E5 FB 78 */ mr r5, r31 +/* 8021ECC4 0021BC24 38 61 00 48 */ addi r3, r1, 0x48 +/* 8021ECC8 0021BC28 38 C1 00 08 */ addi r6, r1, 8 +/* 8021ECCC 0021BC2C 98 01 00 08 */ stb r0, 8(r1) +/* 8021ECD0 0021BC30 80 9E 09 28 */ lwz r4, 0x928(r30) +/* 8021ECD4 0021BC34 4B F8 83 C1 */ bl sub_801a7094 +/* 8021ECD8 0021BC38 88 01 00 54 */ lbz r0, 0x54(r1) +/* 8021ECDC 0021BC3C 28 00 00 00 */ cmplwi r0, 0 +/* 8021ECE0 0021BC40 98 01 00 88 */ stb r0, 0x88(r1) +/* 8021ECE4 0021BC44 41 82 00 24 */ beq lbl_8021ED08 +/* 8021ECE8 0021BC48 34 61 00 7C */ addic. r3, r1, 0x7c +/* 8021ECEC 0021BC4C 41 82 00 1C */ beq lbl_8021ED08 +/* 8021ECF0 0021BC50 C0 01 00 48 */ lfs f0, 0x48(r1) +/* 8021ECF4 0021BC54 D0 03 00 00 */ stfs f0, 0(r3) +/* 8021ECF8 0021BC58 C0 01 00 4C */ lfs f0, 0x4c(r1) +/* 8021ECFC 0021BC5C D0 03 00 04 */ stfs f0, 4(r3) +/* 8021ED00 0021BC60 C0 01 00 50 */ lfs f0, 0x50(r1) +/* 8021ED04 0021BC64 D0 03 00 08 */ stfs f0, 8(r3) +lbl_8021ED08: +/* 8021ED08 0021BC68 88 01 00 88 */ lbz r0, 0x88(r1) +/* 8021ED0C 0021BC6C 38 60 00 00 */ li r3, 0 +/* 8021ED10 0021BC70 98 61 00 54 */ stb r3, 0x54(r1) +/* 8021ED14 0021BC74 28 00 00 00 */ cmplwi r0, 0 +/* 8021ED18 0021BC78 41 82 01 C0 */ beq lbl_8021EED8 +/* 8021ED1C 0021BC7C 83 FF 08 4C */ lwz r31, 0x84c(r31) +/* 8021ED20 0021BC80 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 8021ED24 0021BC84 80 9E 00 64 */ lwz r4, 0x64(r30) +/* 8021ED28 0021BC88 38 BE 00 34 */ addi r5, r30, 0x34 +/* 8021ED2C 0021BC8C 4B EF 6A 89 */ bl GetBounds__10CModelDataCFRC12CTransform4f +/* 8021ED30 0021BC90 C0 A1 00 A4 */ lfs f5, 0xa4(r1) +/* 8021ED34 0021BC94 7F E4 FB 78 */ mr r4, r31 +/* 8021ED38 0021BC98 C0 81 00 A8 */ lfs f4, 0xa8(r1) +/* 8021ED3C 0021BC9C 38 61 00 8C */ addi r3, r1, 0x8c +/* 8021ED40 0021BCA0 C0 61 00 AC */ lfs f3, 0xac(r1) +/* 8021ED44 0021BCA4 C0 41 00 B0 */ lfs f2, 0xb0(r1) +/* 8021ED48 0021BCA8 C0 21 00 B4 */ lfs f1, 0xb4(r1) +/* 8021ED4C 0021BCAC C0 01 00 B8 */ lfs f0, 0xb8(r1) +/* 8021ED50 0021BCB0 D0 A1 00 D4 */ stfs f5, 0xd4(r1) +/* 8021ED54 0021BCB4 D0 81 00 D8 */ stfs f4, 0xd8(r1) +/* 8021ED58 0021BCB8 D0 61 00 DC */ stfs f3, 0xdc(r1) +/* 8021ED5C 0021BCBC D0 41 00 E0 */ stfs f2, 0xe0(r1) +/* 8021ED60 0021BCC0 D0 21 00 E4 */ stfs f1, 0xe4(r1) +/* 8021ED64 0021BCC4 D0 01 00 E8 */ stfs f0, 0xe8(r1) +/* 8021ED68 0021BCC8 4B EF BB C5 */ bl GetBoundingBox__13CPhysicsActorCFv +/* 8021ED6C 0021BCCC C0 A1 00 8C */ lfs f5, 0x8c(r1) +/* 8021ED70 0021BCD0 38 61 00 D4 */ addi r3, r1, 0xd4 +/* 8021ED74 0021BCD4 C0 81 00 90 */ lfs f4, 0x90(r1) +/* 8021ED78 0021BCD8 38 81 00 BC */ addi r4, r1, 0xbc +/* 8021ED7C 0021BCDC C0 61 00 94 */ lfs f3, 0x94(r1) +/* 8021ED80 0021BCE0 C0 41 00 98 */ lfs f2, 0x98(r1) +/* 8021ED84 0021BCE4 C0 21 00 9C */ lfs f1, 0x9c(r1) +/* 8021ED88 0021BCE8 C0 01 00 A0 */ lfs f0, 0xa0(r1) +/* 8021ED8C 0021BCEC D0 A1 00 BC */ stfs f5, 0xbc(r1) +/* 8021ED90 0021BCF0 D0 81 00 C0 */ stfs f4, 0xc0(r1) +/* 8021ED94 0021BCF4 D0 61 00 C4 */ stfs f3, 0xc4(r1) +/* 8021ED98 0021BCF8 D0 41 00 C8 */ stfs f2, 0xc8(r1) +/* 8021ED9C 0021BCFC D0 21 00 CC */ stfs f1, 0xcc(r1) +/* 8021EDA0 0021BD00 D0 01 00 D0 */ stfs f0, 0xd0(r1) +/* 8021EDA4 0021BD04 48 11 8D E1 */ bl DoBoundsOverlap__6CAABoxCFRC6CAABox +/* 8021EDA8 0021BD08 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8021EDAC 0021BD0C 41 82 01 2C */ beq lbl_8021EED8 +/* 8021EDB0 0021BD10 38 61 00 7C */ addi r3, r1, 0x7c +/* 8021EDB4 0021BD14 48 0F 5B 05 */ bl Magnitude__9CVector3fCFv +/* 8021EDB8 0021BD18 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 8021EDBC 0021BD1C C0 02 B4 2C */ lfs f0, lbl_805AD14C@sda21(r2) +/* 8021EDC0 0021BD20 C0 43 00 04 */ lfs f2, 4(r3) +/* 8021EDC4 0021BD24 C0 63 00 00 */ lfs f3, 0(r3) +/* 8021EDC8 0021BD28 EC A0 00 B2 */ fmuls f5, f0, f2 +/* 8021EDCC 0021BD2C C0 03 00 08 */ lfs f0, 8(r3) +/* 8021EDD0 0021BD30 D0 61 00 3C */ stfs f3, 0x3c(r1) +/* 8021EDD4 0021BD34 FC 01 28 40 */ fcmpo cr0, f1, f5 +/* 8021EDD8 0021BD38 D0 41 00 40 */ stfs f2, 0x40(r1) +/* 8021EDDC 0021BD3C D0 01 00 44 */ stfs f0, 0x44(r1) +/* 8021EDE0 0021BD40 40 81 00 F8 */ ble lbl_8021EED8 +/* 8021EDE4 0021BD44 C0 9E 00 40 */ lfs f4, 0x40(r30) +/* 8021EDE8 0021BD48 EF 61 28 28 */ fsubs f27, f1, f5 +/* 8021EDEC 0021BD4C C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8021EDF0 0021BD50 38 61 00 24 */ addi r3, r1, 0x24 +/* 8021EDF4 0021BD54 C0 7E 00 50 */ lfs f3, 0x50(r30) +/* 8021EDF8 0021BD58 38 81 00 7C */ addi r4, r1, 0x7c +/* 8021EDFC 0021BD5C C0 5F 00 50 */ lfs f2, 0x50(r31) +/* 8021EE00 0021BD60 C0 3E 00 60 */ lfs f1, 0x60(r30) +/* 8021EE04 0021BD64 EF E4 00 28 */ fsubs f31, f4, f0 +/* 8021EE08 0021BD68 C0 1F 00 60 */ lfs f0, 0x60(r31) +/* 8021EE0C 0021BD6C EF 83 10 28 */ fsubs f28, f3, f2 +/* 8021EE10 0021BD70 EF A1 00 28 */ fsubs f29, f1, f0 +/* 8021EE14 0021BD74 48 0F 5A 3D */ bl AsNormalized__9CVector3fCFv +/* 8021EE18 0021BD78 C0 21 00 28 */ lfs f1, 0x28(r1) +/* 8021EE1C 0021BD7C EC 1C 07 32 */ fmuls f0, f28, f28 +/* 8021EE20 0021BD80 C0 61 00 24 */ lfs f3, 0x24(r1) +/* 8021EE24 0021BD84 38 61 00 18 */ addi r3, r1, 0x18 +/* 8021EE28 0021BD88 EC 5B 00 72 */ fmuls f2, f27, f1 +/* 8021EE2C 0021BD8C C0 21 00 2C */ lfs f1, 0x2c(r1) +/* 8021EE30 0021BD90 EC 7B 00 F2 */ fmuls f3, f27, f3 +/* 8021EE34 0021BD94 EC 9B 00 72 */ fmuls f4, f27, f1 +/* 8021EE38 0021BD98 38 9E 00 34 */ addi r4, r30, 0x34 +/* 8021EE3C 0021BD9C EC 3C 00 B2 */ fmuls f1, f28, f2 +/* 8021EE40 0021BDA0 EC 1F 07 FA */ fmadds f0, f31, f31, f0 +/* 8021EE44 0021BDA4 D0 61 00 30 */ stfs f3, 0x30(r1) +/* 8021EE48 0021BDA8 38 A1 00 70 */ addi r5, r1, 0x70 +/* 8021EE4C 0021BDAC EC 3F 08 FA */ fmadds f1, f31, f3, f1 +/* 8021EE50 0021BDB0 D0 41 00 34 */ stfs f2, 0x34(r1) +/* 8021EE54 0021BDB4 EC 1D 07 7A */ fmadds f0, f29, f29, f0 +/* 8021EE58 0021BDB8 D0 81 00 38 */ stfs f4, 0x38(r1) +/* 8021EE5C 0021BDBC EC 3D 09 3A */ fmadds f1, f29, f4, f1 +/* 8021EE60 0021BDC0 EC 01 00 24 */ fdivs f0, f1, f0 +/* 8021EE64 0021BDC4 EC 40 07 F2 */ fmuls f2, f0, f31 +/* 8021EE68 0021BDC8 EC 20 07 32 */ fmuls f1, f0, f28 +/* 8021EE6C 0021BDCC EC 00 07 72 */ fmuls f0, f0, f29 +/* 8021EE70 0021BDD0 D0 41 00 70 */ stfs f2, 0x70(r1) +/* 8021EE74 0021BDD4 D0 21 00 74 */ stfs f1, 0x74(r1) +/* 8021EE78 0021BDD8 D0 01 00 78 */ stfs f0, 0x78(r1) +/* 8021EE7C 0021BDDC 48 0F 3B A9 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 8021EE80 0021BDE0 C0 61 00 18 */ lfs f3, 0x18(r1) +/* 8021EE84 0021BDE4 FC 20 F0 90 */ fmr f1, f30 +/* 8021EE88 0021BDE8 C0 41 00 1C */ lfs f2, 0x1c(r1) +/* 8021EE8C 0021BDEC 7F C4 F3 78 */ mr r4, r30 +/* 8021EE90 0021BDF0 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 8021EE94 0021BDF4 38 61 00 0C */ addi r3, r1, 0xc +/* 8021EE98 0021BDF8 D0 61 00 64 */ stfs f3, 0x64(r1) +/* 8021EE9C 0021BDFC 38 A1 00 64 */ addi r5, r1, 0x64 +/* 8021EEA0 0021BE00 D0 41 00 68 */ stfs f2, 0x68(r1) +/* 8021EEA4 0021BE04 D0 01 00 6C */ stfs f0, 0x6c(r1) +/* 8021EEA8 0021BE08 4B EF C1 61 */ bl GetMoveToORImpulseWR__13CPhysicsActorCFRC9CVector3ff +/* 8021EEAC 0021BE0C C0 41 00 0C */ lfs f2, 0xc(r1) +/* 8021EEB0 0021BE10 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 8021EEB4 0021BE14 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 8021EEB8 0021BE18 D0 41 00 58 */ stfs f2, 0x58(r1) +/* 8021EEBC 0021BE1C D0 21 00 5C */ stfs f1, 0x5c(r1) +/* 8021EEC0 0021BE20 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 8021EEC4 0021BE24 4B DF C6 71 */ bl Identity__10CAxisAngleFv +/* 8021EEC8 0021BE28 7C 65 1B 78 */ mr r5, r3 +/* 8021EECC 0021BE2C 7F C3 F3 78 */ mr r3, r30 +/* 8021EED0 0021BE30 38 81 00 58 */ addi r4, r1, 0x58 +/* 8021EED4 0021BE34 4B EF D4 C5 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +lbl_8021EED8: +/* 8021EED8 0021BE38 38 00 00 00 */ li r0, 0 +/* 8021EEDC 0021BE3C 98 01 00 88 */ stb r0, 0x88(r1) +lbl_8021EEE0: +/* 8021EEE0 0021BE40 E3 E1 01 48 */ psq_l f31, 328(r1), 0, qr0 +/* 8021EEE4 0021BE44 CB E1 01 40 */ lfd f31, 0x140(r1) +/* 8021EEE8 0021BE48 E3 C1 01 38 */ psq_l f30, 312(r1), 0, qr0 +/* 8021EEEC 0021BE4C CB C1 01 30 */ lfd f30, 0x130(r1) +/* 8021EEF0 0021BE50 E3 A1 01 28 */ psq_l f29, 296(r1), 0, qr0 +/* 8021EEF4 0021BE54 CB A1 01 20 */ lfd f29, 0x120(r1) +/* 8021EEF8 0021BE58 E3 81 01 18 */ psq_l f28, 280(r1), 0, qr0 +/* 8021EEFC 0021BE5C CB 81 01 10 */ lfd f28, 0x110(r1) +/* 8021EF00 0021BE60 E3 61 01 08 */ psq_l f27, 264(r1), 0, qr0 +/* 8021EF04 0021BE64 CB 61 01 00 */ lfd f27, 0x100(r1) +/* 8021EF08 0021BE68 83 E1 00 FC */ lwz r31, 0xfc(r1) +/* 8021EF0C 0021BE6C 80 01 01 54 */ lwz r0, 0x154(r1) +/* 8021EF10 0021BE70 83 C1 00 F8 */ lwz r30, 0xf8(r1) +/* 8021EF14 0021BE74 7C 08 03 A6 */ mtlr r0 +/* 8021EF18 0021BE78 38 21 01 50 */ addi r1, r1, 0x150 +/* 8021EF1C 0021BE7C 4E 80 00 20 */ blr + +.global sub_8021ef20 +sub_8021ef20: +/* 8021EF20 0021BE80 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8021EF24 0021BE84 7C 08 02 A6 */ mflr r0 +/* 8021EF28 0021BE88 90 01 00 34 */ stw r0, 0x34(r1) +/* 8021EF2C 0021BE8C 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8021EF30 0021BE90 3B E0 00 00 */ li r31, 0 +/* 8021EF34 0021BE94 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8021EF38 0021BE98 7C BE 2B 78 */ mr r30, r5 +/* 8021EF3C 0021BE9C 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8021EF40 0021BEA0 7C 9D 23 78 */ mr r29, r4 +/* 8021EF44 0021BEA4 93 81 00 20 */ stw r28, 0x20(r1) +/* 8021EF48 0021BEA8 7C 7C 1B 78 */ mr r28, r3 +/* 8021EF4C 0021BEAC 48 00 00 5C */ b lbl_8021EFA8 +lbl_8021EF50: +/* 8021EF50 0021BEB0 80 7C 09 28 */ lwz r3, 0x928(r28) +/* 8021EF54 0021BEB4 7F E4 FB 78 */ mr r4, r31 +/* 8021EF58 0021BEB8 4B F8 82 E1 */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 8021EF5C 0021BEBC A0 03 00 3C */ lhz r0, 0x3c(r3) +/* 8021EF60 0021BEC0 7F A3 EB 78 */ mr r3, r29 +/* 8021EF64 0021BEC4 38 81 00 08 */ addi r4, r1, 8 +/* 8021EF68 0021BEC8 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8021EF6C 0021BECC B0 01 00 08 */ sth r0, 8(r1) +/* 8021EF70 0021BED0 4B E2 D6 05 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8021EF74 0021BED4 7C 64 1B 78 */ mr r4, r3 +/* 8021EF78 0021BED8 38 61 00 10 */ addi r3, r1, 0x10 +/* 8021EF7C 0021BEDC 4B E9 03 D1 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8021EF80 0021BEE0 80 63 00 04 */ lwz r3, 4(r3) +/* 8021EF84 0021BEE4 28 03 00 00 */ cmplwi r3, 0 +/* 8021EF88 0021BEE8 41 82 00 1C */ beq lbl_8021EFA4 +/* 8021EF8C 0021BEEC C0 1E 00 00 */ lfs f0, 0(r30) +/* 8021EF90 0021BEF0 D0 03 03 04 */ stfs f0, 0x304(r3) +/* 8021EF94 0021BEF4 C0 1E 00 04 */ lfs f0, 4(r30) +/* 8021EF98 0021BEF8 D0 03 03 08 */ stfs f0, 0x308(r3) +/* 8021EF9C 0021BEFC C0 1E 00 08 */ lfs f0, 8(r30) +/* 8021EFA0 0021BF00 D0 03 03 0C */ stfs f0, 0x30c(r3) +lbl_8021EFA4: +/* 8021EFA4 0021BF04 3B FF 00 01 */ addi r31, r31, 1 +lbl_8021EFA8: +/* 8021EFA8 0021BF08 80 7C 09 28 */ lwz r3, 0x928(r28) +/* 8021EFAC 0021BF0C 4B F8 82 9D */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 8021EFB0 0021BF10 7C 1F 18 40 */ cmplw r31, r3 +/* 8021EFB4 0021BF14 41 80 FF 9C */ blt lbl_8021EF50 +/* 8021EFB8 0021BF18 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8021EFBC 0021BF1C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8021EFC0 0021BF20 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8021EFC4 0021BF24 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8021EFC8 0021BF28 83 81 00 20 */ lwz r28, 0x20(r1) +/* 8021EFCC 0021BF2C 7C 08 03 A6 */ mtlr r0 +/* 8021EFD0 0021BF30 38 21 00 30 */ addi r1, r1, 0x30 +/* 8021EFD4 0021BF34 4E 80 00 20 */ blr + +.global sub_8021efd8 +sub_8021efd8: +/* 8021EFD8 0021BF38 80 03 09 F8 */ lwz r0, 0x9f8(r3) +/* 8021EFDC 0021BF3C 38 63 09 FC */ addi r3, r3, 0x9fc +/* 8021EFE0 0021BF40 7C 66 1B 78 */ mr r6, r3 +/* 8021EFE4 0021BF44 54 00 08 3C */ slwi r0, r0, 1 +/* 8021EFE8 0021BF48 7C A3 02 14 */ add r5, r3, r0 +/* 8021EFEC 0021BF4C 48 00 00 20 */ b lbl_8021F00C +lbl_8021EFF0: +/* 8021EFF0 0021BF50 A0 66 00 00 */ lhz r3, 0(r6) +/* 8021EFF4 0021BF54 A0 04 00 00 */ lhz r0, 0(r4) +/* 8021EFF8 0021BF58 7C 03 00 40 */ cmplw r3, r0 +/* 8021EFFC 0021BF5C 40 82 00 0C */ bne lbl_8021F008 +/* 8021F000 0021BF60 38 60 00 01 */ li r3, 1 +/* 8021F004 0021BF64 4E 80 00 20 */ blr +lbl_8021F008: +/* 8021F008 0021BF68 38 C6 00 02 */ addi r6, r6, 2 +lbl_8021F00C: +/* 8021F00C 0021BF6C 7C 06 28 40 */ cmplw r6, r5 +/* 8021F010 0021BF70 40 82 FF E0 */ bne lbl_8021EFF0 +/* 8021F014 0021BF74 38 60 00 00 */ li r3, 0 +/* 8021F018 0021BF78 4E 80 00 20 */ blr + +.global sub_8021f01c +sub_8021f01c: +/* 8021F01C 0021BF7C A0 84 00 00 */ lhz r4, 0(r4) +/* 8021F020 0021BF80 A0 03 09 F6 */ lhz r0, 0x9f6(r3) +/* 8021F024 0021BF84 7C 04 00 50 */ subf r0, r4, r0 +/* 8021F028 0021BF88 7C 00 00 34 */ cntlzw r0, r0 +/* 8021F02C 0021BF8C 54 03 D9 7E */ srwi r3, r0, 5 +/* 8021F030 0021BF90 4E 80 00 20 */ blr + +.global sub_8021f034 +sub_8021f034: +/* 8021F034 0021BF94 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 8021F038 0021BF98 7C 08 02 A6 */ mflr r0 +/* 8021F03C 0021BF9C 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 8021F040 0021BFA0 BF 21 00 C4 */ stmw r25, 0xc4(r1) +/* 8021F044 0021BFA4 7C B9 2B 78 */ mr r25, r5 +/* 8021F048 0021BFA8 7C DA 33 78 */ mr r26, r6 +/* 8021F04C 0021BFAC 7C 9E 23 78 */ mr r30, r4 +/* 8021F050 0021BFB0 3B A1 00 60 */ addi r29, r1, 0x60 +/* 8021F054 0021BFB4 3B 81 00 A4 */ addi r28, r1, 0xa4 +/* 8021F058 0021BFB8 3B 60 00 00 */ li r27, 0 +/* 8021F05C 0021BFBC 80 63 00 64 */ lwz r3, 0x64(r3) +/* 8021F060 0021BFC0 83 E3 00 10 */ lwz r31, 0x10(r3) +/* 8021F064 0021BFC4 48 00 01 20 */ b lbl_8021F184 +lbl_8021F068: +/* 8021F068 0021BFC8 80 9E 00 00 */ lwz r4, 0(r30) +/* 8021F06C 0021BFCC 38 61 00 24 */ addi r3, r1, 0x24 +/* 8021F070 0021BFD0 4B DE 5C 49 */ bl string_l__4rstlFPCc +/* 8021F074 0021BFD4 7F E4 FB 78 */ mr r4, r31 +/* 8021F078 0021BFD8 38 61 00 0C */ addi r3, r1, 0xc +/* 8021F07C 0021BFDC 38 A1 00 24 */ addi r5, r1, 0x24 +/* 8021F080 0021BFE0 4B E0 F7 B9 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8021F084 0021BFE4 88 01 00 0C */ lbz r0, 0xc(r1) +/* 8021F088 0021BFE8 38 61 00 24 */ addi r3, r1, 0x24 +/* 8021F08C 0021BFEC 98 01 00 10 */ stb r0, 0x10(r1) +/* 8021F090 0021BFF0 48 11 EA 51 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8021F094 0021BFF4 88 01 00 10 */ lbz r0, 0x10(r1) +/* 8021F098 0021BFF8 28 00 00 FF */ cmplwi r0, 0xff +/* 8021F09C 0021BFFC 41 82 00 E0 */ beq lbl_8021F17C +/* 8021F0A0 0021C000 80 9E 00 00 */ lwz r4, 0(r30) +/* 8021F0A4 0021C004 38 61 00 14 */ addi r3, r1, 0x14 +/* 8021F0A8 0021C008 4B DE 5C 11 */ bl string_l__4rstlFPCc +/* 8021F0AC 0021C00C 88 01 00 10 */ lbz r0, 0x10(r1) +/* 8021F0B0 0021C010 38 61 00 34 */ addi r3, r1, 0x34 +/* 8021F0B4 0021C014 C0 3E 00 04 */ lfs f1, 4(r30) +/* 8021F0B8 0021C018 38 81 00 08 */ addi r4, r1, 8 +/* 8021F0BC 0021C01C 98 01 00 08 */ stb r0, 8(r1) +/* 8021F0C0 0021C020 38 A1 00 14 */ addi r5, r1, 0x14 +/* 8021F0C4 0021C024 C0 42 B4 30 */ lfs f2, lbl_805AD150@sda21(r2) +/* 8021F0C8 0021C028 4B F8 97 45 */ bl "SphereCollision__26CJointCollisionDescriptionF6CSegIdfRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" +/* 8021F0CC 0021C02C 80 E1 00 34 */ lwz r7, 0x34(r1) +/* 8021F0D0 0021C030 7F 83 E3 78 */ mr r3, r28 +/* 8021F0D4 0021C034 80 C1 00 38 */ lwz r6, 0x38(r1) +/* 8021F0D8 0021C038 7F A4 EB 78 */ mr r4, r29 +/* 8021F0DC 0021C03C 88 A1 00 3C */ lbz r5, 0x3c(r1) +/* 8021F0E0 0021C040 88 01 00 3D */ lbz r0, 0x3d(r1) +/* 8021F0E4 0021C044 C0 E1 00 40 */ lfs f7, 0x40(r1) +/* 8021F0E8 0021C048 C0 C1 00 44 */ lfs f6, 0x44(r1) +/* 8021F0EC 0021C04C C0 A1 00 48 */ lfs f5, 0x48(r1) +/* 8021F0F0 0021C050 C0 81 00 4C */ lfs f4, 0x4c(r1) +/* 8021F0F4 0021C054 C0 61 00 50 */ lfs f3, 0x50(r1) +/* 8021F0F8 0021C058 C0 41 00 54 */ lfs f2, 0x54(r1) +/* 8021F0FC 0021C05C C0 21 00 58 */ lfs f1, 0x58(r1) +/* 8021F100 0021C060 C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 8021F104 0021C064 90 E1 00 78 */ stw r7, 0x78(r1) +/* 8021F108 0021C068 90 C1 00 7C */ stw r6, 0x7c(r1) +/* 8021F10C 0021C06C 98 A1 00 80 */ stb r5, 0x80(r1) +/* 8021F110 0021C070 98 01 00 81 */ stb r0, 0x81(r1) +/* 8021F114 0021C074 D0 E1 00 84 */ stfs f7, 0x84(r1) +/* 8021F118 0021C078 D0 C1 00 88 */ stfs f6, 0x88(r1) +/* 8021F11C 0021C07C D0 A1 00 8C */ stfs f5, 0x8c(r1) +/* 8021F120 0021C080 D0 81 00 90 */ stfs f4, 0x90(r1) +/* 8021F124 0021C084 D0 61 00 94 */ stfs f3, 0x94(r1) +/* 8021F128 0021C088 D0 41 00 98 */ stfs f2, 0x98(r1) +/* 8021F12C 0021C08C D0 21 00 9C */ stfs f1, 0x9c(r1) +/* 8021F130 0021C090 D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 8021F134 0021C094 48 11 F0 2D */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8021F138 0021C098 A0 01 00 70 */ lhz r0, 0x70(r1) +/* 8021F13C 0021C09C 28 1D 00 00 */ cmplwi r29, 0 +/* 8021F140 0021C0A0 C0 01 00 74 */ lfs f0, 0x74(r1) +/* 8021F144 0021C0A4 B0 01 00 B4 */ sth r0, 0xb4(r1) +/* 8021F148 0021C0A8 D0 01 00 B8 */ stfs f0, 0xb8(r1) +/* 8021F14C 0021C0AC 41 82 00 0C */ beq lbl_8021F158 +/* 8021F150 0021C0B0 7F A3 EB 78 */ mr r3, r29 +/* 8021F154 0021C0B4 48 11 E9 8D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8021F158: +/* 8021F158 0021C0B8 38 61 00 14 */ addi r3, r1, 0x14 +/* 8021F15C 0021C0BC 48 11 E9 85 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8021F160 0021C0C0 7F 43 D3 78 */ mr r3, r26 +/* 8021F164 0021C0C4 38 81 00 78 */ addi r4, r1, 0x78 +/* 8021F168 0021C0C8 4B F3 70 C9 */ bl sub_80156230 +/* 8021F16C 0021C0CC 28 1C 00 00 */ cmplwi r28, 0 +/* 8021F170 0021C0D0 41 82 00 0C */ beq lbl_8021F17C +/* 8021F174 0021C0D4 7F 83 E3 78 */ mr r3, r28 +/* 8021F178 0021C0D8 48 11 E9 69 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8021F17C: +/* 8021F17C 0021C0DC 3B DE 00 08 */ addi r30, r30, 8 +/* 8021F180 0021C0E0 3B 7B 00 01 */ addi r27, r27, 1 +lbl_8021F184: +/* 8021F184 0021C0E4 7C 1B C8 00 */ cmpw r27, r25 +/* 8021F188 0021C0E8 41 80 FE E0 */ blt lbl_8021F068 +/* 8021F18C 0021C0EC BB 21 00 C4 */ lmw r25, 0xc4(r1) +/* 8021F190 0021C0F0 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 8021F194 0021C0F4 7C 08 03 A6 */ mtlr r0 +/* 8021F198 0021C0F8 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 8021F19C 0021C0FC 4E 80 00 20 */ blr + +.global sub_8021f1a0 +sub_8021f1a0: +/* 8021F1A0 0021C100 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 8021F1A4 0021C104 7C 08 02 A6 */ mflr r0 +/* 8021F1A8 0021C108 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 8021F1AC 0021C10C 38 00 00 00 */ li r0, 0 +/* 8021F1B0 0021C110 BF 01 00 90 */ stmw r24, 0x90(r1) +/* 8021F1B4 0021C114 7C 7A 1B 78 */ mr r26, r3 +/* 8021F1B8 0021C118 7C 9B 23 78 */ mr r27, r4 +/* 8021F1BC 0021C11C 38 61 00 60 */ addi r3, r1, 0x60 +/* 8021F1C0 0021C120 38 80 00 05 */ li r4, 5 +/* 8021F1C4 0021C124 90 01 00 64 */ stw r0, 0x64(r1) +/* 8021F1C8 0021C128 90 01 00 68 */ stw r0, 0x68(r1) +/* 8021F1CC 0021C12C 90 01 00 6C */ stw r0, 0x6c(r1) +/* 8021F1D0 0021C130 4B F3 75 E9 */ bl "reserve__Q24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>Fi" +/* 8021F1D4 0021C134 3C 80 80 3D */ lis r4, lbl_803D31A8@ha +/* 8021F1D8 0021C138 7F 43 D3 78 */ mr r3, r26 +/* 8021F1DC 0021C13C 38 84 31 A8 */ addi r4, r4, lbl_803D31A8@l +/* 8021F1E0 0021C140 38 C1 00 60 */ addi r6, r1, 0x60 +/* 8021F1E4 0021C144 38 A0 00 05 */ li r5, 5 +/* 8021F1E8 0021C148 4B FF FE 4D */ bl sub_8021f034 +/* 8021F1EC 0021C14C 3C 80 80 3D */ lis r4, lbl_803D31D0@ha +/* 8021F1F0 0021C150 38 60 00 18 */ li r3, 0x18 +/* 8021F1F4 0021C154 38 84 31 D0 */ addi r4, r4, lbl_803D31D0@l +/* 8021F1F8 0021C158 38 A0 00 00 */ li r5, 0 +/* 8021F1FC 0021C15C 38 84 00 2D */ addi r4, r4, 0x2d +/* 8021F200 0021C160 48 0F 66 6D */ bl __nw__FUlPCcPCc +/* 8021F204 0021C164 7C 78 1B 79 */ or. r24, r3, r3 +/* 8021F208 0021C168 41 82 00 38 */ beq lbl_8021F240 +/* 8021F20C 0021C16C 81 3A 00 04 */ lwz r9, 4(r26) +/* 8021F210 0021C170 7F 64 DB 78 */ mr r4, r27 +/* 8021F214 0021C174 38 A1 00 10 */ addi r5, r1, 0x10 +/* 8021F218 0021C178 38 C1 00 1C */ addi r6, r1, 0x1c +/* 8021F21C 0021C17C 91 21 00 1C */ stw r9, 0x1c(r1) +/* 8021F220 0021C180 38 E1 00 60 */ addi r7, r1, 0x60 +/* 8021F224 0021C184 39 00 00 00 */ li r8, 0 +/* 8021F228 0021C188 A0 1A 00 08 */ lhz r0, 8(r26) +/* 8021F22C 0021C18C 91 21 00 18 */ stw r9, 0x18(r1) +/* 8021F230 0021C190 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8021F234 0021C194 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8021F238 0021C198 4B F8 86 F9 */ bl "__ct__22CCollisionActorManagerFR13CStateManager9TUniqueId7TAreaIdRCQ24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>b" +/* 8021F23C 0021C19C 7C 78 1B 78 */ mr r24, r3 +lbl_8021F240: +/* 8021F240 0021C1A0 80 7A 09 28 */ lwz r3, 0x928(r26) +/* 8021F244 0021C1A4 38 80 00 01 */ li r4, 1 +/* 8021F248 0021C1A8 4B F8 86 95 */ bl sub_801a78dc +/* 8021F24C 0021C1AC 93 1A 09 28 */ stw r24, 0x928(r26) +/* 8021F250 0021C1B0 7F 64 DB 78 */ mr r4, r27 +/* 8021F254 0021C1B4 88 1A 00 30 */ lbz r0, 0x30(r26) +/* 8021F258 0021C1B8 80 7A 09 28 */ lwz r3, 0x928(r26) +/* 8021F25C 0021C1BC 54 05 CF FE */ rlwinm r5, r0, 0x19, 0x1f, 0x1f +/* 8021F260 0021C1C0 4B F8 80 99 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb +/* 8021F264 0021C1C4 3B FA 05 D8 */ addi r31, r26, 0x5d8 +/* 8021F268 0021C1C8 3B DA 09 FC */ addi r30, r26, 0x9fc +/* 8021F26C 0021C1CC 3B A0 00 00 */ li r29, 0 +/* 8021F270 0021C1D0 48 00 01 10 */ b lbl_8021F380 +lbl_8021F274: +/* 8021F274 0021C1D4 80 7A 09 28 */ lwz r3, 0x928(r26) +/* 8021F278 0021C1D8 7F A4 EB 78 */ mr r4, r29 +/* 8021F27C 0021C1DC 4B F8 7F BD */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 8021F280 0021C1E0 7C 78 1B 78 */ mr r24, r3 +/* 8021F284 0021C1E4 7F 63 DB 78 */ mr r3, r27 +/* 8021F288 0021C1E8 A0 18 00 3C */ lhz r0, 0x3c(r24) +/* 8021F28C 0021C1EC 38 81 00 08 */ addi r4, r1, 8 +/* 8021F290 0021C1F0 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8021F294 0021C1F4 B0 01 00 08 */ sth r0, 8(r1) +/* 8021F298 0021C1F8 4B E2 D2 DD */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8021F29C 0021C1FC 7C 64 1B 78 */ mr r4, r3 +/* 8021F2A0 0021C200 38 61 00 28 */ addi r3, r1, 0x28 +/* 8021F2A4 0021C204 4B E9 00 A9 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8021F2A8 0021C208 83 83 00 04 */ lwz r28, 4(r3) +/* 8021F2AC 0021C20C 28 1C 00 00 */ cmplwi r28, 0 +/* 8021F2B0 0021C210 41 82 00 CC */ beq lbl_8021F37C +/* 8021F2B4 0021C214 7F 83 E3 78 */ mr r3, r28 +/* 8021F2B8 0021C218 7F E4 FB 78 */ mr r4, r31 +/* 8021F2BC 0021C21C 4B F8 98 DD */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability +/* 8021F2C0 0021C220 80 82 B3 F4 */ lwz r4, lbl_805AD114@sda21(r2) +/* 8021F2C4 0021C224 38 61 00 50 */ addi r3, r1, 0x50 +/* 8021F2C8 0021C228 4B DE 59 F1 */ bl string_l__4rstlFPCc +/* 8021F2CC 0021C22C 38 78 00 2C */ addi r3, r24, 0x2c +/* 8021F2D0 0021C230 38 81 00 50 */ addi r4, r1, 0x50 +/* 8021F2D4 0021C234 4B E3 33 0D */ 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" +/* 8021F2D8 0021C238 7C 79 1B 78 */ mr r25, r3 +/* 8021F2DC 0021C23C 38 61 00 50 */ addi r3, r1, 0x50 +/* 8021F2E0 0021C240 48 11 E8 01 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8021F2E4 0021C244 57 20 06 3F */ clrlwi. r0, r25, 0x18 +/* 8021F2E8 0021C248 41 82 00 10 */ beq lbl_8021F2F8 +/* 8021F2EC 0021C24C A0 01 00 14 */ lhz r0, 0x14(r1) +/* 8021F2F0 0021C250 B0 1A 09 F6 */ sth r0, 0x9f6(r26) +/* 8021F2F4 0021C254 48 00 00 88 */ b lbl_8021F37C +lbl_8021F2F8: +/* 8021F2F8 0021C258 80 82 B3 F8 */ lwz r4, lbl_805AD118@sda21(r2) +/* 8021F2FC 0021C25C 38 61 00 40 */ addi r3, r1, 0x40 +/* 8021F300 0021C260 4B DE 59 B9 */ bl string_l__4rstlFPCc +/* 8021F304 0021C264 38 78 00 2C */ addi r3, r24, 0x2c +/* 8021F308 0021C268 38 81 00 40 */ addi r4, r1, 0x40 +/* 8021F30C 0021C26C 4B E3 32 D5 */ 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" +/* 8021F310 0021C270 7C 79 1B 78 */ mr r25, r3 +/* 8021F314 0021C274 38 61 00 40 */ addi r3, r1, 0x40 +/* 8021F318 0021C278 48 11 E7 C9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8021F31C 0021C27C 57 20 06 3F */ clrlwi. r0, r25, 0x18 +/* 8021F320 0021C280 40 82 00 30 */ bne lbl_8021F350 +/* 8021F324 0021C284 80 82 B3 FC */ lwz r4, lbl_805AD11C@sda21(r2) +/* 8021F328 0021C288 38 61 00 30 */ addi r3, r1, 0x30 +/* 8021F32C 0021C28C 4B DE 59 8D */ bl string_l__4rstlFPCc +/* 8021F330 0021C290 38 78 00 2C */ addi r3, r24, 0x2c +/* 8021F334 0021C294 38 81 00 30 */ addi r4, r1, 0x30 +/* 8021F338 0021C298 4B E3 32 A9 */ 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" +/* 8021F33C 0021C29C 7C 79 1B 78 */ mr r25, r3 +/* 8021F340 0021C2A0 38 61 00 30 */ addi r3, r1, 0x30 +/* 8021F344 0021C2A4 48 11 E7 9D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8021F348 0021C2A8 57 20 06 3F */ clrlwi. r0, r25, 0x18 +/* 8021F34C 0021C2AC 41 82 00 30 */ beq lbl_8021F37C +lbl_8021F350: +/* 8021F350 0021C2B0 80 1A 09 F8 */ lwz r0, 0x9f8(r26) +/* 8021F354 0021C2B4 54 00 08 3C */ slwi r0, r0, 1 +/* 8021F358 0021C2B8 7C 7E 02 15 */ add. r3, r30, r0 +/* 8021F35C 0021C2BC 41 82 00 0C */ beq lbl_8021F368 +/* 8021F360 0021C2C0 A0 01 00 14 */ lhz r0, 0x14(r1) +/* 8021F364 0021C2C4 B0 03 00 00 */ sth r0, 0(r3) +lbl_8021F368: +/* 8021F368 0021C2C8 80 7A 09 F8 */ lwz r3, 0x9f8(r26) +/* 8021F36C 0021C2CC 38 00 00 42 */ li r0, 0x42 +/* 8021F370 0021C2D0 38 63 00 01 */ addi r3, r3, 1 +/* 8021F374 0021C2D4 90 7A 09 F8 */ stw r3, 0x9f8(r26) +/* 8021F378 0021C2D8 90 1C 03 00 */ stw r0, 0x300(r28) +lbl_8021F37C: +/* 8021F37C 0021C2DC 3B BD 00 01 */ addi r29, r29, 1 +lbl_8021F380: +/* 8021F380 0021C2E0 80 7A 09 28 */ lwz r3, 0x928(r26) +/* 8021F384 0021C2E4 4B F8 7E C5 */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 8021F388 0021C2E8 7C 1D 18 40 */ cmplw r29, r3 +/* 8021F38C 0021C2EC 41 80 FE E8 */ blt lbl_8021F274 +/* 8021F390 0021C2F0 7F 43 D3 78 */ mr r3, r26 +/* 8021F394 0021C2F4 7F 64 DB 78 */ mr r4, r27 +/* 8021F398 0021C2F8 4B FF F7 81 */ bl sub_8021eb18 +/* 8021F39C 0021C2FC 80 AD 95 20 */ lwz r5, lbl_805A80E0@sda21(r13) +/* 8021F3A0 0021C300 38 60 00 00 */ li r3, 0 +/* 8021F3A4 0021C304 38 80 00 01 */ li r4, 1 +/* 8021F3A8 0021C308 48 16 AB 4D */ bl __shl2i +/* 8021F3AC 0021C30C 80 AD 95 24 */ lwz r5, lbl_805A80E4@sda21(r13) +/* 8021F3B0 0021C310 7C 99 23 78 */ mr r25, r4 +/* 8021F3B4 0021C314 7C 78 1B 78 */ mr r24, r3 +/* 8021F3B8 0021C318 38 60 00 00 */ li r3, 0 +/* 8021F3BC 0021C31C 38 80 00 01 */ li r4, 1 +/* 8021F3C0 0021C320 48 16 AB 35 */ bl __shl2i +/* 8021F3C4 0021C324 80 AD 95 28 */ lwz r5, lbl_805A80E8@sda21(r13) +/* 8021F3C8 0021C328 7F 39 23 78 */ or r25, r25, r4 +/* 8021F3CC 0021C32C 7F 18 1B 78 */ or r24, r24, r3 +/* 8021F3D0 0021C330 38 60 00 00 */ li r3, 0 +/* 8021F3D4 0021C334 38 80 00 01 */ li r4, 1 +/* 8021F3D8 0021C338 48 16 AB 1D */ bl __shl2i +/* 8021F3DC 0021C33C 80 AD 95 1C */ lwz r5, lbl_805A80DC@sda21(r13) +/* 8021F3E0 0021C340 7F 39 23 78 */ or r25, r25, r4 +/* 8021F3E4 0021C344 7F 18 1B 78 */ or r24, r24, r3 +/* 8021F3E8 0021C348 38 60 00 00 */ li r3, 0 +/* 8021F3EC 0021C34C 38 80 00 01 */ li r4, 1 +/* 8021F3F0 0021C350 48 16 AB 05 */ bl __shl2i +/* 8021F3F4 0021C354 38 00 00 03 */ li r0, 3 +/* 8021F3F8 0021C358 90 81 00 74 */ stw r4, 0x74(r1) +/* 8021F3FC 0021C35C 38 81 00 70 */ addi r4, r1, 0x70 +/* 8021F400 0021C360 90 61 00 70 */ stw r3, 0x70(r1) +/* 8021F404 0021C364 7F 43 D3 78 */ mr r3, r26 +/* 8021F408 0021C368 93 21 00 7C */ stw r25, 0x7c(r1) +/* 8021F40C 0021C36C 93 01 00 78 */ stw r24, 0x78(r1) +/* 8021F410 0021C370 90 01 00 80 */ stw r0, 0x80(r1) +/* 8021F414 0021C374 4B E3 44 8D */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter +/* 8021F418 0021C378 7F 43 D3 78 */ mr r3, r26 +/* 8021F41C 0021C37C 7F 65 DB 78 */ mr r5, r27 +/* 8021F420 0021C380 38 80 00 12 */ li r4, 0x12 +/* 8021F424 0021C384 4B E3 4F 2D */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 8021F428 0021C388 38 00 00 00 */ li r0, 0 +/* 8021F42C 0021C38C 80 AD 95 2C */ lwz r5, lbl_805A80EC@sda21(r13) +/* 8021F430 0021C390 90 01 00 24 */ stw r0, 0x24(r1) +/* 8021F434 0021C394 38 60 00 00 */ li r3, 0 +/* 8021F438 0021C398 38 80 00 01 */ li r4, 1 +/* 8021F43C 0021C39C 90 01 00 20 */ stw r0, 0x20(r1) +/* 8021F440 0021C3A0 48 16 AA B5 */ bl __shl2i +/* 8021F444 0021C3A4 80 01 00 20 */ lwz r0, 0x20(r1) +/* 8021F448 0021C3A8 80 C1 00 24 */ lwz r6, 0x24(r1) +/* 8021F44C 0021C3AC 7C 00 1B 78 */ or r0, r0, r3 +/* 8021F450 0021C3B0 80 AD 95 30 */ lwz r5, lbl_805A80F0@sda21(r13) +/* 8021F454 0021C3B4 7C C4 23 78 */ or r4, r6, r4 +/* 8021F458 0021C3B8 90 01 00 20 */ stw r0, 0x20(r1) +/* 8021F45C 0021C3BC 38 60 00 00 */ li r3, 0 +/* 8021F460 0021C3C0 90 81 00 24 */ stw r4, 0x24(r1) +/* 8021F464 0021C3C4 38 80 00 01 */ li r4, 1 +/* 8021F468 0021C3C8 48 16 AA 8D */ bl __shl2i +/* 8021F46C 0021C3CC 80 01 00 20 */ lwz r0, 0x20(r1) +/* 8021F470 0021C3D0 38 A1 00 20 */ addi r5, r1, 0x20 +/* 8021F474 0021C3D4 80 C1 00 24 */ lwz r6, 0x24(r1) +/* 8021F478 0021C3D8 7C 00 1B 78 */ or r0, r0, r3 +/* 8021F47C 0021C3DC 7C C3 23 78 */ or r3, r6, r4 +/* 8021F480 0021C3E0 90 01 00 20 */ stw r0, 0x20(r1) +/* 8021F484 0021C3E4 7F 64 DB 78 */ mr r4, r27 +/* 8021F488 0021C3E8 90 61 00 24 */ stw r3, 0x24(r1) +/* 8021F48C 0021C3EC 80 7A 09 28 */ lwz r3, 0x928(r26) +/* 8021F490 0021C3F0 4B F8 7D C1 */ bl AddMaterial__22CCollisionActorManagerFR13CStateManagerRC13CMaterialList +/* 8021F494 0021C3F4 38 61 00 60 */ addi r3, r1, 0x60 +/* 8021F498 0021C3F8 38 80 FF FF */ li r4, -1 +/* 8021F49C 0021C3FC 4B F3 6E 91 */ bl sub_8015632c +/* 8021F4A0 0021C400 BB 01 00 90 */ lmw r24, 0x90(r1) +/* 8021F4A4 0021C404 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 8021F4A8 0021C408 7C 08 03 A6 */ mtlr r0 +/* 8021F4AC 0021C40C 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 8021F4B0 0021C410 4E 80 00 20 */ blr + +.global sub_8021f4b4 +sub_8021f4b4: +/* 8021F4B4 0021C414 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 8021F4B8 0021C418 7C 08 02 A6 */ mflr r0 +/* 8021F4BC 0021C41C 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 8021F4C0 0021C420 93 E1 00 AC */ stw r31, 0xac(r1) +/* 8021F4C4 0021C424 7C BF 2B 78 */ mr r31, r5 +/* 8021F4C8 0021C428 93 C1 00 A8 */ stw r30, 0xa8(r1) +/* 8021F4CC 0021C42C 7C 7E 1B 78 */ mr r30, r3 +/* 8021F4D0 0021C430 7F E3 FB 78 */ mr r3, r31 +/* 8021F4D4 0021C434 93 A1 00 A4 */ stw r29, 0xa4(r1) +/* 8021F4D8 0021C438 A0 04 00 00 */ lhz r0, 0(r4) +/* 8021F4DC 0021C43C 38 81 00 3C */ addi r4, r1, 0x3c +/* 8021F4E0 0021C440 B0 01 00 3C */ sth r0, 0x3c(r1) +/* 8021F4E4 0021C444 4B E2 D0 C1 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8021F4E8 0021C448 7C 64 1B 78 */ mr r4, r3 +/* 8021F4EC 0021C44C 38 61 00 40 */ addi r3, r1, 0x40 +/* 8021F4F0 0021C450 4B E8 FE 5D */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8021F4F4 0021C454 83 A3 00 04 */ lwz r29, 4(r3) +/* 8021F4F8 0021C458 28 1D 00 00 */ cmplwi r29, 0 +/* 8021F4FC 0021C45C 41 82 01 98 */ beq lbl_8021F694 +/* 8021F500 0021C460 7F C3 F3 78 */ mr r3, r30 +/* 8021F504 0021C464 7F E4 FB 78 */ mr r4, r31 +/* 8021F508 0021C468 81 9E 00 00 */ lwz r12, 0(r30) +/* 8021F50C 0021C46C 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8021F510 0021C470 7D 89 03 A6 */ mtctr r12 +/* 8021F514 0021C474 4E 80 04 21 */ bctrl +/* 8021F518 0021C478 C0 23 00 00 */ lfs f1, 0(r3) +/* 8021F51C 0021C47C C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 8021F520 0021C480 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8021F524 0021C484 40 81 01 70 */ ble lbl_8021F694 +/* 8021F528 0021C488 7F A4 EB 78 */ mr r4, r29 +/* 8021F52C 0021C48C 38 61 00 38 */ addi r3, r1, 0x38 +/* 8021F530 0021C490 4B F8 96 5D */ bl GetLastTouchedObject__15CCollisionActorCFv +/* 8021F534 0021C494 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8021F538 0021C498 A0 81 00 38 */ lhz r4, 0x38(r1) +/* 8021F53C 0021C49C A0 03 00 08 */ lhz r0, 8(r3) +/* 8021F540 0021C4A0 7C 04 00 40 */ cmplw r4, r0 +/* 8021F544 0021C4A4 40 82 01 50 */ bne lbl_8021F694 +/* 8021F548 0021C4A8 88 1E 0A 48 */ lbz r0, 0xa48(r30) +/* 8021F54C 0021C4AC 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 8021F550 0021C4B0 41 82 00 98 */ beq lbl_8021F5E8 +/* 8021F554 0021C4B4 80 AD 95 18 */ lwz r5, lbl_805A80D8@sda21(r13) +/* 8021F558 0021C4B8 38 60 00 00 */ li r3, 0 +/* 8021F55C 0021C4BC 38 80 00 01 */ li r4, 1 +/* 8021F560 0021C4C0 48 16 A9 95 */ bl __shl2i +/* 8021F564 0021C4C4 39 40 00 00 */ li r10, 0 +/* 8021F568 0021C4C8 38 00 00 03 */ li r0, 3 +/* 8021F56C 0021C4CC 90 81 00 84 */ stw r4, 0x84(r1) +/* 8021F570 0021C4D0 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8021F574 0021C4D4 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 8021F578 0021C4D8 38 A1 00 2C */ addi r5, r1, 0x2c +/* 8021F57C 0021C4DC 90 61 00 80 */ stw r3, 0x80(r1) +/* 8021F580 0021C4E0 38 81 00 34 */ addi r4, r1, 0x34 +/* 8021F584 0021C4E4 7F E3 FB 78 */ mr r3, r31 +/* 8021F588 0021C4E8 38 C1 00 24 */ addi r6, r1, 0x24 +/* 8021F58C 0021C4EC 91 41 00 8C */ stw r10, 0x8c(r1) +/* 8021F590 0021C4F0 38 FE 05 98 */ addi r7, r30, 0x598 +/* 8021F594 0021C4F4 39 01 00 80 */ addi r8, r1, 0x80 +/* 8021F598 0021C4F8 91 41 00 88 */ stw r10, 0x88(r1) +/* 8021F59C 0021C4FC 90 01 00 90 */ stw r0, 0x90(r1) +/* 8021F5A0 0021C500 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8021F5A4 0021C504 B0 01 00 24 */ sth r0, 0x24(r1) +/* 8021F5A8 0021C508 81 5F 08 4C */ lwz r10, 0x84c(r31) +/* 8021F5AC 0021C50C B0 01 00 20 */ sth r0, 0x20(r1) +/* 8021F5B0 0021C510 A1 4A 00 08 */ lhz r10, 8(r10) +/* 8021F5B4 0021C514 B1 41 00 2C */ sth r10, 0x2c(r1) +/* 8021F5B8 0021C518 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8021F5BC 0021C51C B1 41 00 28 */ sth r10, 0x28(r1) +/* 8021F5C0 0021C520 B0 01 00 30 */ sth r0, 0x30(r1) +/* 8021F5C4 0021C524 B0 01 00 34 */ sth r0, 0x34(r1) +/* 8021F5C8 0021C528 4B E2 AA D9 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +/* 8021F5CC 0021C52C 88 1E 0A 48 */ lbz r0, 0xa48(r30) +/* 8021F5D0 0021C530 38 60 00 00 */ li r3, 0 +/* 8021F5D4 0021C534 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 8021F5D8 0021C538 98 1E 0A 48 */ stb r0, 0xa48(r30) +/* 8021F5DC 0021C53C C0 1E 04 24 */ lfs f0, 0x424(r30) +/* 8021F5E0 0021C540 D0 1E 04 20 */ stfs f0, 0x420(r30) +/* 8021F5E4 0021C544 48 00 00 B0 */ b lbl_8021F694 +lbl_8021F5E8: +/* 8021F5E8 0021C548 C0 3E 04 20 */ lfs f1, 0x420(r30) +/* 8021F5EC 0021C54C C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 8021F5F0 0021C550 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8021F5F4 0021C554 4C 40 13 82 */ cror 2, 0, 2 +/* 8021F5F8 0021C558 40 82 00 9C */ bne lbl_8021F694 +/* 8021F5FC 0021C55C 80 AD 95 18 */ lwz r5, lbl_805A80D8@sda21(r13) +/* 8021F600 0021C560 38 60 00 00 */ li r3, 0 +/* 8021F604 0021C564 38 80 00 01 */ li r4, 1 +/* 8021F608 0021C568 48 16 A8 ED */ bl __shl2i +/* 8021F60C 0021C56C 38 A0 00 00 */ li r5, 0 +/* 8021F610 0021C570 38 00 00 03 */ li r0, 3 +/* 8021F614 0021C574 90 81 00 4C */ stw r4, 0x4c(r1) +/* 8021F618 0021C578 7F C4 F3 78 */ mr r4, r30 +/* 8021F61C 0021C57C 90 61 00 48 */ stw r3, 0x48(r1) +/* 8021F620 0021C580 38 61 00 60 */ addi r3, r1, 0x60 +/* 8021F624 0021C584 90 A1 00 54 */ stw r5, 0x54(r1) +/* 8021F628 0021C588 90 A1 00 50 */ stw r5, 0x50(r1) +/* 8021F62C 0021C58C 90 01 00 58 */ stw r0, 0x58(r1) +/* 8021F630 0021C590 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8021F634 0021C594 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8021F638 0021C598 80 BF 08 4C */ lwz r5, 0x84c(r31) +/* 8021F63C 0021C59C B0 01 00 08 */ sth r0, 8(r1) +/* 8021F640 0021C5A0 A0 A5 00 08 */ lhz r5, 8(r5) +/* 8021F644 0021C5A4 B0 A1 00 14 */ sth r5, 0x14(r1) +/* 8021F648 0021C5A8 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8021F64C 0021C5AC B0 A1 00 10 */ sth r5, 0x10(r1) +/* 8021F650 0021C5B0 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 8021F654 0021C5B4 81 9E 00 00 */ lwz r12, 0(r30) +/* 8021F658 0021C5B8 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8021F65C 0021C5BC 81 8C 02 B0 */ lwz r12, 0x2b0(r12) +/* 8021F660 0021C5C0 7D 89 03 A6 */ mtctr r12 +/* 8021F664 0021C5C4 4E 80 04 21 */ bctrl +/* 8021F668 0021C5C8 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8021F66C 0021C5CC 7F E3 FB 78 */ mr r3, r31 +/* 8021F670 0021C5D0 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 8021F674 0021C5D4 38 A1 00 14 */ addi r5, r1, 0x14 +/* 8021F678 0021C5D8 38 81 00 1C */ addi r4, r1, 0x1c +/* 8021F67C 0021C5DC 38 C1 00 0C */ addi r6, r1, 0xc +/* 8021F680 0021C5E0 38 E1 00 60 */ addi r7, r1, 0x60 +/* 8021F684 0021C5E4 39 01 00 48 */ addi r8, r1, 0x48 +/* 8021F688 0021C5E8 4B E2 AA 19 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +/* 8021F68C 0021C5EC C0 1E 04 24 */ lfs f0, 0x424(r30) +/* 8021F690 0021C5F0 D0 1E 04 20 */ stfs f0, 0x420(r30) +lbl_8021F694: +/* 8021F694 0021C5F4 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 8021F698 0021C5F8 83 E1 00 AC */ lwz r31, 0xac(r1) +/* 8021F69C 0021C5FC 83 C1 00 A8 */ lwz r30, 0xa8(r1) +/* 8021F6A0 0021C600 83 A1 00 A4 */ lwz r29, 0xa4(r1) +/* 8021F6A4 0021C604 7C 08 03 A6 */ mtlr r0 +/* 8021F6A8 0021C608 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 8021F6AC 0021C60C 4E 80 00 20 */ blr + +.global sub_8021f6b0 +sub_8021f6b0: +/* 8021F6B0 0021C610 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 8021F6B4 0021C614 7C 08 02 A6 */ mflr r0 +/* 8021F6B8 0021C618 90 01 00 54 */ stw r0, 0x54(r1) +/* 8021F6BC 0021C61C DB E1 00 40 */ stfd f31, 0x40(r1) +/* 8021F6C0 0021C620 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 8021F6C4 0021C624 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8021F6C8 0021C628 93 C1 00 38 */ stw r30, 0x38(r1) +/* 8021F6CC 0021C62C 7C 7E 1B 78 */ mr r30, r3 +/* 8021F6D0 0021C630 7C BF 2B 78 */ mr r31, r5 +/* 8021F6D4 0021C634 C0 63 00 60 */ lfs f3, 0x60(r3) +/* 8021F6D8 0021C638 7C 85 23 78 */ mr r5, r4 +/* 8021F6DC 0021C63C C0 43 00 50 */ lfs f2, 0x50(r3) +/* 8021F6E0 0021C640 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 8021F6E4 0021C644 C0 22 B4 04 */ lfs f1, lbl_805AD124@sda21(r2) +/* 8021F6E8 0021C648 D0 1F 00 00 */ stfs f0, 0(r31) +/* 8021F6EC 0021C64C D0 5F 00 04 */ stfs f2, 4(r31) +/* 8021F6F0 0021C650 D0 7F 00 08 */ stfs f3, 8(r31) +/* 8021F6F4 0021C654 C0 03 08 D8 */ lfs f0, 0x8d8(r3) +/* 8021F6F8 0021C658 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 8021F6FC 0021C65C 4C 40 13 82 */ cror 2, 0, 2 +/* 8021F700 0021C660 40 82 00 C8 */ bne lbl_8021F7C8 +/* 8021F704 0021C664 80 85 08 4C */ lwz r4, 0x84c(r5) +/* 8021F708 0021C668 38 61 00 14 */ addi r3, r1, 0x14 +/* 8021F70C 0021C66C 81 84 00 00 */ lwz r12, 0(r4) +/* 8021F710 0021C670 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 8021F714 0021C674 7D 89 03 A6 */ mtctr r12 +/* 8021F718 0021C678 4E 80 04 21 */ bctrl +/* 8021F71C 0021C67C C0 21 00 14 */ lfs f1, 0x14(r1) +/* 8021F720 0021C680 38 61 00 20 */ addi r3, r1, 0x20 +/* 8021F724 0021C684 C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 8021F728 0021C688 D0 3F 00 00 */ stfs f1, 0(r31) +/* 8021F72C 0021C68C C0 21 00 18 */ lfs f1, 0x18(r1) +/* 8021F730 0021C690 D0 3F 00 04 */ stfs f1, 4(r31) +/* 8021F734 0021C694 C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 8021F738 0021C698 D0 3F 00 08 */ stfs f1, 8(r31) +/* 8021F73C 0021C69C C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 8021F740 0021C6A0 C0 3F 00 08 */ lfs f1, 8(r31) +/* 8021F744 0021C6A4 C0 9E 00 50 */ lfs f4, 0x50(r30) +/* 8021F748 0021C6A8 C0 7F 00 04 */ lfs f3, 4(r31) +/* 8021F74C 0021C6AC EC A2 08 28 */ fsubs f5, f2, f1 +/* 8021F750 0021C6B0 C0 5E 00 40 */ lfs f2, 0x40(r30) +/* 8021F754 0021C6B4 C0 3F 00 00 */ lfs f1, 0(r31) +/* 8021F758 0021C6B8 EC 64 18 28 */ fsubs f3, f4, f3 +/* 8021F75C 0021C6BC EC 22 08 28 */ fsubs f1, f2, f1 +/* 8021F760 0021C6C0 D0 A1 00 28 */ stfs f5, 0x28(r1) +/* 8021F764 0021C6C4 D0 61 00 24 */ stfs f3, 0x24(r1) +/* 8021F768 0021C6C8 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 8021F76C 0021C6CC D0 01 00 28 */ stfs f0, 0x28(r1) +/* 8021F770 0021C6D0 48 0F 4F 89 */ bl CanBeNormalized__9CVector3fCFv +/* 8021F774 0021C6D4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8021F778 0021C6D8 41 82 00 50 */ beq lbl_8021F7C8 +/* 8021F77C 0021C6DC C3 FE 02 FC */ lfs f31, 0x2fc(r30) +/* 8021F780 0021C6E0 38 61 00 08 */ addi r3, r1, 8 +/* 8021F784 0021C6E4 38 81 00 20 */ addi r4, r1, 0x20 +/* 8021F788 0021C6E8 48 0F 50 C9 */ bl AsNormalized__9CVector3fCFv +/* 8021F78C 0021C6EC C0 01 00 08 */ lfs f0, 8(r1) +/* 8021F790 0021C6F0 C0 61 00 0C */ lfs f3, 0xc(r1) +/* 8021F794 0021C6F4 EC 1F 00 32 */ fmuls f0, f31, f0 +/* 8021F798 0021C6F8 C0 3F 00 00 */ lfs f1, 0(r31) +/* 8021F79C 0021C6FC C0 41 00 10 */ lfs f2, 0x10(r1) +/* 8021F7A0 0021C700 EC 7F 00 F2 */ fmuls f3, f31, f3 +/* 8021F7A4 0021C704 EC 01 00 2A */ fadds f0, f1, f0 +/* 8021F7A8 0021C708 EC 3F 00 B2 */ fmuls f1, f31, f2 +/* 8021F7AC 0021C70C D0 1F 00 00 */ stfs f0, 0(r31) +/* 8021F7B0 0021C710 C0 1F 00 04 */ lfs f0, 4(r31) +/* 8021F7B4 0021C714 EC 00 18 2A */ fadds f0, f0, f3 +/* 8021F7B8 0021C718 D0 1F 00 04 */ stfs f0, 4(r31) +/* 8021F7BC 0021C71C C0 1F 00 08 */ lfs f0, 8(r31) +/* 8021F7C0 0021C720 EC 00 08 2A */ fadds f0, f0, f1 +/* 8021F7C4 0021C724 D0 1F 00 08 */ stfs f0, 8(r31) +lbl_8021F7C8: +/* 8021F7C8 0021C728 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 8021F7CC 0021C72C 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8021F7D0 0021C730 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 8021F7D4 0021C734 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8021F7D8 0021C738 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 8021F7DC 0021C73C 7C 08 03 A6 */ mtlr r0 +/* 8021F7E0 0021C740 38 21 00 50 */ addi r1, r1, 0x50 +/* 8021F7E4 0021C744 4E 80 00 20 */ blr + +.global sub_8021f7e8 +sub_8021f7e8: +/* 8021F7E8 0021C748 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8021F7EC 0021C74C 7C 08 02 A6 */ mflr r0 +/* 8021F7F0 0021C750 C0 62 B4 34 */ lfs f3, lbl_805AD154@sda21(r2) +/* 8021F7F4 0021C754 90 01 00 44 */ stw r0, 0x44(r1) +/* 8021F7F8 0021C758 38 81 00 14 */ addi r4, r1, 0x14 +/* 8021F7FC 0021C75C C0 22 B4 38 */ lfs f1, lbl_805AD158@sda21(r2) +/* 8021F800 0021C760 38 A1 00 08 */ addi r5, r1, 8 +/* 8021F804 0021C764 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8021F808 0021C768 7C 7F 1B 78 */ mr r31, r3 +/* 8021F80C 0021C76C C0 42 B4 24 */ lfs f2, lbl_805AD144@sda21(r2) +/* 8021F810 0021C770 38 61 00 20 */ addi r3, r1, 0x20 +/* 8021F814 0021C774 C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 8021F818 0021C778 D0 61 00 08 */ stfs f3, 8(r1) +/* 8021F81C 0021C77C D0 61 00 0C */ stfs f3, 0xc(r1) +/* 8021F820 0021C780 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 8021F824 0021C784 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 8021F828 0021C788 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 8021F82C 0021C78C D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8021F830 0021C790 48 11 8C D9 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 8021F834 0021C794 7F E3 FB 78 */ mr r3, r31 +/* 8021F838 0021C798 38 81 00 20 */ addi r4, r1, 0x20 +/* 8021F83C 0021C79C 4B EF AE 1D */ bl SetBoundingBox__13CPhysicsActorFRC6CAABox +/* 8021F840 0021C7A0 80 61 00 20 */ lwz r3, 0x20(r1) +/* 8021F844 0021C7A4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8021F848 0021C7A8 90 7F 09 40 */ stw r3, 0x940(r31) +/* 8021F84C 0021C7AC 90 1F 09 44 */ stw r0, 0x944(r31) +/* 8021F850 0021C7B0 80 01 00 28 */ lwz r0, 0x28(r1) +/* 8021F854 0021C7B4 90 1F 09 48 */ stw r0, 0x948(r31) +/* 8021F858 0021C7B8 80 61 00 2C */ lwz r3, 0x2c(r1) +/* 8021F85C 0021C7BC 80 01 00 30 */ lwz r0, 0x30(r1) +/* 8021F860 0021C7C0 90 7F 09 4C */ stw r3, 0x94c(r31) +/* 8021F864 0021C7C4 90 1F 09 50 */ stw r0, 0x950(r31) +/* 8021F868 0021C7C8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8021F86C 0021C7CC 90 1F 09 54 */ stw r0, 0x954(r31) +/* 8021F870 0021C7D0 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8021F874 0021C7D4 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8021F878 0021C7D8 7C 08 03 A6 */ mtlr r0 +/* 8021F87C 0021C7DC 38 21 00 40 */ addi r1, r1, 0x40 +/* 8021F880 0021C7E0 4E 80 00 20 */ blr + +.global TurnAround__9CBabygothFR13CStateManager9EStateMsgf +TurnAround__9CBabygothFR13CStateManager9EStateMsgf: +/* 8021F884 0021C7E4 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 8021F888 0021C7E8 7C 08 02 A6 */ mflr r0 +/* 8021F88C 0021C7EC 90 01 00 74 */ stw r0, 0x74(r1) +/* 8021F890 0021C7F0 DB E1 00 60 */ stfd f31, 0x60(r1) +/* 8021F894 0021C7F4 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 8021F898 0021C7F8 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 8021F89C 0021C7FC 93 C1 00 58 */ stw r30, 0x58(r1) +/* 8021F8A0 0021C800 FF E0 08 90 */ fmr f31, f1 +/* 8021F8A4 0021C804 2C 05 00 01 */ cmpwi r5, 1 +/* 8021F8A8 0021C808 7C 7E 1B 78 */ mr r30, r3 +/* 8021F8AC 0021C80C 7C 9F 23 78 */ mr r31, r4 +/* 8021F8B0 0021C810 41 82 00 88 */ beq lbl_8021F938 +/* 8021F8B4 0021C814 40 80 00 10 */ bge lbl_8021F8C4 +/* 8021F8B8 0021C818 2C 05 00 00 */ cmpwi r5, 0 +/* 8021F8BC 0021C81C 40 80 00 14 */ bge lbl_8021F8D0 +/* 8021F8C0 0021C820 48 00 01 80 */ b lbl_8021FA40 +lbl_8021F8C4: +/* 8021F8C4 0021C824 2C 05 00 03 */ cmpwi r5, 3 +/* 8021F8C8 0021C828 40 80 01 78 */ bge lbl_8021FA40 +/* 8021F8CC 0021C82C 48 00 01 68 */ b lbl_8021FA34 +lbl_8021F8D0: +/* 8021F8D0 0021C830 80 BF 08 4C */ lwz r5, 0x84c(r31) +/* 8021F8D4 0021C834 38 7E 08 F0 */ addi r3, r30, 0x8f0 +/* 8021F8D8 0021C838 38 81 00 0C */ addi r4, r1, 0xc +/* 8021F8DC 0021C83C A0 05 00 08 */ lhz r0, 8(r5) +/* 8021F8E0 0021C840 B0 01 00 08 */ sth r0, 8(r1) +/* 8021F8E4 0021C844 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8021F8E8 0021C848 4B F5 59 31 */ bl SetTarget__13CBoneTrackingF9TUniqueId +/* 8021F8EC 0021C84C 38 7E 08 F0 */ addi r3, r30, 0x8f0 +/* 8021F8F0 0021C850 38 80 00 01 */ li r4, 1 +/* 8021F8F4 0021C854 4B F5 59 31 */ bl SetActive__13CBoneTrackingFb +/* 8021F8F8 0021C858 7F C3 F3 78 */ mr r3, r30 +/* 8021F8FC 0021C85C 7F E4 FB 78 */ mr r4, r31 +/* 8021F900 0021C860 38 BE 02 E0 */ addi r5, r30, 0x2e0 +/* 8021F904 0021C864 4B FF FD AD */ bl sub_8021f6b0 +/* 8021F908 0021C868 7F C3 F3 78 */ mr r3, r30 +/* 8021F90C 0021C86C 38 80 00 00 */ li r4, 0 +/* 8021F910 0021C870 4B FF E7 8D */ bl sub_8021e09c +/* 8021F914 0021C874 FC 20 F8 90 */ fmr f1, f31 +/* 8021F918 0021C878 7F C3 F3 78 */ mr r3, r30 +/* 8021F91C 0021C87C 7F E4 FB 78 */ mr r4, r31 +/* 8021F920 0021C880 38 A0 00 00 */ li r5, 0 +/* 8021F924 0021C884 4B FD 6D A9 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 8021F928 0021C888 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8021F92C 0021C88C 38 63 00 04 */ addi r3, r3, 4 +/* 8021F930 0021C890 4B F1 1B 79 */ bl ClearLocomotionCmds__16CBodyStateCmdMgrFv +/* 8021F934 0021C894 48 00 01 0C */ b lbl_8021FA40 +lbl_8021F938: +/* 8021F938 0021C898 81 83 00 00 */ lwz r12, 0(r3) +/* 8021F93C 0021C89C C0 22 B4 3C */ lfs f1, lbl_805AD15C@sda21(r2) +/* 8021F940 0021C8A0 81 8C 01 E8 */ lwz r12, 0x1e8(r12) +/* 8021F944 0021C8A4 7D 89 03 A6 */ mtctr r12 +/* 8021F948 0021C8A8 4E 80 04 21 */ bctrl +/* 8021F94C 0021C8AC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8021F950 0021C8B0 41 82 00 F0 */ beq lbl_8021FA40 +/* 8021F954 0021C8B4 80 9E 00 64 */ lwz r4, 0x64(r30) +/* 8021F958 0021C8B8 7F E5 FB 78 */ mr r5, r31 +/* 8021F95C 0021C8BC C0 22 B4 04 */ lfs f1, lbl_805AD124@sda21(r2) +/* 8021F960 0021C8C0 38 61 00 1C */ addi r3, r1, 0x1c +/* 8021F964 0021C8C4 80 C4 00 10 */ lwz r6, 0x10(r4) +/* 8021F968 0021C8C8 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 8021F96C 0021C8CC C0 46 02 00 */ lfs f2, 0x200(r6) +/* 8021F970 0021C8D0 FC 02 08 40 */ fcmpo cr0, f2, f1 +/* 8021F974 0021C8D4 40 81 00 0C */ ble lbl_8021F980 +/* 8021F978 0021C8D8 C0 02 B4 18 */ lfs f0, lbl_805AD138@sda21(r2) +/* 8021F97C 0021C8DC EC 20 10 24 */ fdivs f1, f0, f2 +lbl_8021F980: +/* 8021F980 0021C8E0 81 84 00 00 */ lwz r12, 0(r4) +/* 8021F984 0021C8E4 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 8021F988 0021C8E8 7D 89 03 A6 */ mtctr r12 +/* 8021F98C 0021C8EC 4E 80 04 21 */ bctrl +/* 8021F990 0021C8F0 C0 21 00 24 */ lfs f1, 0x24(r1) +/* 8021F994 0021C8F4 38 61 00 28 */ addi r3, r1, 0x28 +/* 8021F998 0021C8F8 C0 1E 00 60 */ lfs f0, 0x60(r30) +/* 8021F99C 0021C8FC C0 61 00 20 */ lfs f3, 0x20(r1) +/* 8021F9A0 0021C900 C0 5E 00 50 */ lfs f2, 0x50(r30) +/* 8021F9A4 0021C904 EC 81 00 28 */ fsubs f4, f1, f0 +/* 8021F9A8 0021C908 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 8021F9AC 0021C90C C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 8021F9B0 0021C910 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8021F9B4 0021C914 D0 81 00 30 */ stfs f4, 0x30(r1) +/* 8021F9B8 0021C918 EC 21 00 28 */ fsubs f1, f1, f0 +/* 8021F9BC 0021C91C C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 8021F9C0 0021C920 D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 8021F9C4 0021C924 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 8021F9C8 0021C928 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 8021F9CC 0021C92C 48 0F 4D 2D */ bl CanBeNormalized__9CVector3fCFv +/* 8021F9D0 0021C930 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8021F9D4 0021C934 41 82 00 6C */ beq lbl_8021FA40 +/* 8021F9D8 0021C938 38 61 00 10 */ addi r3, r1, 0x10 +/* 8021F9DC 0021C93C 38 81 00 28 */ addi r4, r1, 0x28 +/* 8021F9E0 0021C940 48 0F 4E 71 */ bl AsNormalized__9CVector3fCFv +/* 8021F9E4 0021C944 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8021F9E8 0021C948 C4 C3 66 A0 */ lfsu f6, skZero3f@l(r3) +/* 8021F9EC 0021C94C C0 61 00 10 */ lfs f3, 0x10(r1) +/* 8021F9F0 0021C950 38 81 00 34 */ addi r4, r1, 0x34 +/* 8021F9F4 0021C954 C0 41 00 14 */ lfs f2, 0x14(r1) +/* 8021F9F8 0021C958 C0 A3 00 04 */ lfs f5, 4(r3) +/* 8021F9FC 0021C95C C0 83 00 08 */ lfs f4, 8(r3) +/* 8021FA00 0021C960 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 8021FA04 0021C964 C0 02 B4 18 */ lfs f0, lbl_805AD138@sda21(r2) +/* 8021FA08 0021C968 D0 C1 00 34 */ stfs f6, 0x34(r1) +/* 8021FA0C 0021C96C D0 A1 00 38 */ stfs f5, 0x38(r1) +/* 8021FA10 0021C970 D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 8021FA14 0021C974 D0 61 00 40 */ stfs f3, 0x40(r1) +/* 8021FA18 0021C978 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 8021FA1C 0021C97C D0 21 00 48 */ stfs f1, 0x48(r1) +/* 8021FA20 0021C980 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 8021FA24 0021C984 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8021FA28 0021C988 38 63 00 04 */ addi r3, r3, 4 +/* 8021FA2C 0021C98C 4B F1 1C ED */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 8021FA30 0021C990 48 00 00 10 */ b lbl_8021FA40 +lbl_8021FA34: +/* 8021FA34 0021C994 38 7E 08 F0 */ addi r3, r30, 0x8f0 +/* 8021FA38 0021C998 38 80 00 00 */ li r4, 0 +/* 8021FA3C 0021C99C 4B F5 57 E9 */ bl SetActive__13CBoneTrackingFb +lbl_8021FA40: +/* 8021FA40 0021C9A0 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 8021FA44 0021C9A4 80 01 00 74 */ lwz r0, 0x74(r1) +/* 8021FA48 0021C9A8 CB E1 00 60 */ lfd f31, 0x60(r1) +/* 8021FA4C 0021C9AC 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 8021FA50 0021C9B0 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 8021FA54 0021C9B4 7C 08 03 A6 */ mtlr r0 +/* 8021FA58 0021C9B8 38 21 00 70 */ addi r1, r1, 0x70 +/* 8021FA5C 0021C9BC 4E 80 00 20 */ blr + +.global GetUp__9CBabygothFR13CStateManager9EStateMsgf +GetUp__9CBabygothFR13CStateManager9EStateMsgf: +/* 8021FA60 0021C9C0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8021FA64 0021C9C4 7C 08 02 A6 */ mflr r0 +/* 8021FA68 0021C9C8 2C 05 00 01 */ cmpwi r5, 1 +/* 8021FA6C 0021C9CC 90 01 00 24 */ stw r0, 0x24(r1) +/* 8021FA70 0021C9D0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8021FA74 0021C9D4 41 82 00 3C */ beq lbl_8021FAB0 +/* 8021FA78 0021C9D8 40 80 00 10 */ bge lbl_8021FA88 +/* 8021FA7C 0021C9DC 2C 05 00 00 */ cmpwi r5, 0 +/* 8021FA80 0021C9E0 40 80 00 14 */ bge lbl_8021FA94 +/* 8021FA84 0021C9E4 48 00 00 F0 */ b lbl_8021FB74 +lbl_8021FA88: +/* 8021FA88 0021C9E8 2C 05 00 03 */ cmpwi r5, 3 +/* 8021FA8C 0021C9EC 40 80 00 E8 */ bge lbl_8021FB74 +/* 8021FA90 0021C9F0 48 00 00 D4 */ b lbl_8021FB64 +lbl_8021FA94: +/* 8021FA94 0021C9F4 38 00 00 00 */ li r0, 0 +/* 8021FA98 0021C9F8 38 80 00 01 */ li r4, 1 +/* 8021FA9C 0021C9FC 90 03 05 68 */ stw r0, 0x568(r3) +/* 8021FAA0 0021CA00 88 03 0A 49 */ lbz r0, 0xa49(r3) +/* 8021FAA4 0021CA04 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 8021FAA8 0021CA08 98 03 0A 49 */ stb r0, 0xa49(r3) +/* 8021FAAC 0021CA0C 48 00 00 C8 */ b lbl_8021FB74 +lbl_8021FAB0: +/* 8021FAB0 0021CA10 80 03 05 68 */ lwz r0, 0x568(r3) +/* 8021FAB4 0021CA14 2C 00 00 03 */ cmpwi r0, 3 +/* 8021FAB8 0021CA18 41 82 00 90 */ beq lbl_8021FB48 +/* 8021FABC 0021CA1C 40 80 00 B8 */ bge lbl_8021FB74 +/* 8021FAC0 0021CA20 2C 00 00 00 */ cmpwi r0, 0 +/* 8021FAC4 0021CA24 41 82 00 08 */ beq lbl_8021FACC +/* 8021FAC8 0021CA28 48 00 00 AC */ b lbl_8021FB74 +lbl_8021FACC: +/* 8021FACC 0021CA2C 80 83 04 50 */ lwz r4, 0x450(r3) +/* 8021FAD0 0021CA30 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 8021FAD4 0021CA34 2C 00 00 01 */ cmpwi r0, 1 +/* 8021FAD8 0021CA38 40 82 00 10 */ bne lbl_8021FAE8 +/* 8021FADC 0021CA3C 38 00 00 03 */ li r0, 3 +/* 8021FAE0 0021CA40 90 03 05 68 */ stw r0, 0x568(r3) +/* 8021FAE4 0021CA44 48 00 00 90 */ b lbl_8021FB74 +lbl_8021FAE8: +/* 8021FAE8 0021CA48 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8021FAEC 0021CA4C 38 A0 00 00 */ li r5, 0 +/* 8021FAF0 0021CA50 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 8021FAF4 0021CA54 3C 60 80 3E */ lis r3, lbl_803DAA20@ha +/* 8021FAF8 0021CA58 90 01 00 08 */ stw r0, 8(r1) +/* 8021FAFC 0021CA5C 38 03 AA 20 */ addi r0, r3, lbl_803DAA20@l +/* 8021FB00 0021CA60 3B E4 00 04 */ addi r31, r4, 4 +/* 8021FB04 0021CA64 38 80 00 00 */ li r4, 0 +/* 8021FB08 0021CA68 90 A1 00 0C */ stw r5, 0xc(r1) +/* 8021FB0C 0021CA6C 7F E3 FB 78 */ mr r3, r31 +/* 8021FB10 0021CA70 90 01 00 08 */ stw r0, 8(r1) +/* 8021FB14 0021CA74 90 A1 00 10 */ stw r5, 0x10(r1) +/* 8021FB18 0021CA78 4B F1 19 21 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8021FB1C 0021CA7C 80 01 00 0C */ lwz r0, 0xc(r1) +/* 8021FB20 0021CA80 3C 60 80 3E */ lis r3, lbl_803DAA20@ha +/* 8021FB24 0021CA84 38 83 AA 20 */ addi r4, r3, lbl_803DAA20@l +/* 8021FB28 0021CA88 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8021FB2C 0021CA8C 90 1F 00 BC */ stw r0, 0xbc(r31) +/* 8021FB30 0021CA90 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 8021FB34 0021CA94 80 61 00 10 */ lwz r3, 0x10(r1) +/* 8021FB38 0021CA98 90 81 00 08 */ stw r4, 8(r1) +/* 8021FB3C 0021CA9C 90 7F 00 C0 */ stw r3, 0xc0(r31) +/* 8021FB40 0021CAA0 90 01 00 08 */ stw r0, 8(r1) +/* 8021FB44 0021CAA4 48 00 00 30 */ b lbl_8021FB74 +lbl_8021FB48: +/* 8021FB48 0021CAA8 80 83 04 50 */ lwz r4, 0x450(r3) +/* 8021FB4C 0021CAAC 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 8021FB50 0021CAB0 2C 00 00 01 */ cmpwi r0, 1 +/* 8021FB54 0021CAB4 41 82 00 20 */ beq lbl_8021FB74 +/* 8021FB58 0021CAB8 38 00 00 04 */ li r0, 4 +/* 8021FB5C 0021CABC 90 03 05 68 */ stw r0, 0x568(r3) +/* 8021FB60 0021CAC0 48 00 00 14 */ b lbl_8021FB74 +lbl_8021FB64: +/* 8021FB64 0021CAC4 88 03 0A 49 */ lbz r0, 0xa49(r3) +/* 8021FB68 0021CAC8 38 80 00 00 */ li r4, 0 +/* 8021FB6C 0021CACC 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 8021FB70 0021CAD0 98 03 0A 49 */ stb r0, 0xa49(r3) +lbl_8021FB74: +/* 8021FB74 0021CAD4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8021FB78 0021CAD8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8021FB7C 0021CADC 7C 08 03 A6 */ mtlr r0 +/* 8021FB80 0021CAE0 38 21 00 20 */ addi r1, r1, 0x20 +/* 8021FB84 0021CAE4 4E 80 00 20 */ blr + +.global Enraged__9CBabygothFR13CStateManager9EStateMsgf +Enraged__9CBabygothFR13CStateManager9EStateMsgf: +/* 8021FB88 0021CAE8 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8021FB8C 0021CAEC 7C 08 02 A6 */ mflr r0 +/* 8021FB90 0021CAF0 2C 05 00 01 */ cmpwi r5, 1 +/* 8021FB94 0021CAF4 90 01 00 34 */ stw r0, 0x34(r1) +/* 8021FB98 0021CAF8 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8021FB9C 0021CAFC 41 82 00 30 */ beq lbl_8021FBCC +/* 8021FBA0 0021CB00 40 80 01 4C */ bge lbl_8021FCEC +/* 8021FBA4 0021CB04 2C 05 00 00 */ cmpwi r5, 0 +/* 8021FBA8 0021CB08 40 80 00 08 */ bge lbl_8021FBB0 +/* 8021FBAC 0021CB0C 48 00 01 40 */ b lbl_8021FCEC +lbl_8021FBB0: +/* 8021FBB0 0021CB10 88 83 0A 48 */ lbz r4, 0xa48(r3) +/* 8021FBB4 0021CB14 38 00 00 01 */ li r0, 1 +/* 8021FBB8 0021CB18 50 04 17 7A */ rlwimi r4, r0, 2, 0x1d, 0x1d +/* 8021FBBC 0021CB1C 38 00 00 00 */ li r0, 0 +/* 8021FBC0 0021CB20 98 83 0A 48 */ stb r4, 0xa48(r3) +/* 8021FBC4 0021CB24 90 03 05 68 */ stw r0, 0x568(r3) +/* 8021FBC8 0021CB28 48 00 01 24 */ b lbl_8021FCEC +lbl_8021FBCC: +/* 8021FBCC 0021CB2C 80 03 05 68 */ lwz r0, 0x568(r3) +/* 8021FBD0 0021CB30 2C 00 00 03 */ cmpwi r0, 3 +/* 8021FBD4 0021CB34 41 82 01 00 */ beq lbl_8021FCD4 +/* 8021FBD8 0021CB38 40 80 01 14 */ bge lbl_8021FCEC +/* 8021FBDC 0021CB3C 2C 00 00 00 */ cmpwi r0, 0 +/* 8021FBE0 0021CB40 41 82 00 08 */ beq lbl_8021FBE8 +/* 8021FBE4 0021CB44 48 00 01 08 */ b lbl_8021FCEC +lbl_8021FBE8: +/* 8021FBE8 0021CB48 81 43 04 50 */ lwz r10, 0x450(r3) +/* 8021FBEC 0021CB4C 80 0A 02 B8 */ lwz r0, 0x2b8(r10) +/* 8021FBF0 0021CB50 2C 00 00 0C */ cmpwi r0, 0xc +/* 8021FBF4 0021CB54 40 82 00 10 */ bne lbl_8021FC04 +/* 8021FBF8 0021CB58 38 00 00 03 */ li r0, 3 +/* 8021FBFC 0021CB5C 90 03 05 68 */ stw r0, 0x568(r3) +/* 8021FC00 0021CB60 48 00 00 EC */ b lbl_8021FCEC +lbl_8021FC04: +/* 8021FC04 0021CB64 3C C0 80 3E */ lis r6, lbl_803DAA68@ha +/* 8021FC08 0021CB68 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8021FC0C 0021CB6C 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 8021FC10 0021CB70 80 81 00 24 */ lwz r4, 0x24(r1) +/* 8021FC14 0021CB74 38 60 00 00 */ li r3, 0 +/* 8021FC18 0021CB78 39 26 AA 68 */ addi r9, r6, lbl_803DAA68@l +/* 8021FC1C 0021CB7C 50 64 F8 00 */ rlwimi r4, r3, 0x1f, 0, 0 +/* 8021FC20 0021CB80 C0 45 00 00 */ lfs f2, 0(r5) +/* 8021FC24 0021CB84 C0 25 00 04 */ lfs f1, 4(r5) +/* 8021FC28 0021CB88 3C E0 80 3E */ lis r7, lbl_803DA9F0@ha +/* 8021FC2C 0021CB8C C0 05 00 08 */ lfs f0, 8(r5) +/* 8021FC30 0021CB90 7C 80 23 78 */ mr r0, r4 +/* 8021FC34 0021CB94 39 00 00 0E */ li r8, 0xe +/* 8021FC38 0021CB98 38 C0 00 03 */ li r6, 3 +/* 8021FC3C 0021CB9C 38 A0 FF FF */ li r5, -1 +/* 8021FC40 0021CBA0 3B EA 00 04 */ addi r31, r10, 4 +/* 8021FC44 0021CBA4 91 21 00 08 */ stw r9, 8(r1) +/* 8021FC48 0021CBA8 38 E7 A9 F0 */ addi r7, r7, lbl_803DA9F0@l +/* 8021FC4C 0021CBAC 50 60 F0 42 */ rlwimi r0, r3, 0x1e, 1, 1 +/* 8021FC50 0021CBB0 7F E3 FB 78 */ mr r3, r31 +/* 8021FC54 0021CBB4 90 81 00 24 */ stw r4, 0x24(r1) +/* 8021FC58 0021CBB8 38 80 00 0E */ li r4, 0xe +/* 8021FC5C 0021CBBC 91 01 00 0C */ stw r8, 0xc(r1) +/* 8021FC60 0021CBC0 90 E1 00 08 */ stw r7, 8(r1) +/* 8021FC64 0021CBC4 90 C1 00 10 */ stw r6, 0x10(r1) +/* 8021FC68 0021CBC8 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 8021FC6C 0021CBCC D0 21 00 18 */ stfs f1, 0x18(r1) +/* 8021FC70 0021CBD0 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8021FC74 0021CBD4 90 A1 00 20 */ stw r5, 0x20(r1) +/* 8021FC78 0021CBD8 90 01 00 24 */ stw r0, 0x24(r1) +/* 8021FC7C 0021CBDC 4B F1 17 BD */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8021FC80 0021CBE0 80 01 00 0C */ lwz r0, 0xc(r1) +/* 8021FC84 0021CBE4 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha +/* 8021FC88 0021CBE8 38 83 A9 F0 */ addi r4, r3, lbl_803DA9F0@l +/* 8021FC8C 0021CBEC 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8021FC90 0021CBF0 90 1F 01 90 */ stw r0, 0x190(r31) +/* 8021FC94 0021CBF4 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 8021FC98 0021CBF8 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 8021FC9C 0021CBFC 80 61 00 14 */ lwz r3, 0x14(r1) +/* 8021FCA0 0021CC00 90 BF 01 94 */ stw r5, 0x194(r31) +/* 8021FCA4 0021CC04 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 8021FCA8 0021CC08 90 7F 01 98 */ stw r3, 0x198(r31) +/* 8021FCAC 0021CC0C 80 61 00 1C */ lwz r3, 0x1c(r1) +/* 8021FCB0 0021CC10 90 BF 01 9C */ stw r5, 0x19c(r31) +/* 8021FCB4 0021CC14 80 A1 00 20 */ lwz r5, 0x20(r1) +/* 8021FCB8 0021CC18 90 7F 01 A0 */ stw r3, 0x1a0(r31) +/* 8021FCBC 0021CC1C 80 61 00 24 */ lwz r3, 0x24(r1) +/* 8021FCC0 0021CC20 90 BF 01 A4 */ stw r5, 0x1a4(r31) +/* 8021FCC4 0021CC24 90 81 00 08 */ stw r4, 8(r1) +/* 8021FCC8 0021CC28 90 7F 01 A8 */ stw r3, 0x1a8(r31) +/* 8021FCCC 0021CC2C 90 01 00 08 */ stw r0, 8(r1) +/* 8021FCD0 0021CC30 48 00 00 1C */ b lbl_8021FCEC +lbl_8021FCD4: +/* 8021FCD4 0021CC34 80 83 04 50 */ lwz r4, 0x450(r3) +/* 8021FCD8 0021CC38 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 8021FCDC 0021CC3C 2C 00 00 0C */ cmpwi r0, 0xc +/* 8021FCE0 0021CC40 41 82 00 0C */ beq lbl_8021FCEC +/* 8021FCE4 0021CC44 38 00 00 04 */ li r0, 4 +/* 8021FCE8 0021CC48 90 03 05 68 */ stw r0, 0x568(r3) +lbl_8021FCEC: +/* 8021FCEC 0021CC4C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8021FCF0 0021CC50 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8021FCF4 0021CC54 7C 08 03 A6 */ mtlr r0 +/* 8021FCF8 0021CC58 38 21 00 30 */ addi r1, r1, 0x30 +/* 8021FCFC 0021CC5C 4E 80 00 20 */ blr + +.global FollowPattern__9CBabygothFR13CStateManager9EStateMsgf +FollowPattern__9CBabygothFR13CStateManager9EStateMsgf: +/* 8021FD00 0021CC60 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8021FD04 0021CC64 7C 08 02 A6 */ mflr r0 +/* 8021FD08 0021CC68 2C 05 00 01 */ cmpwi r5, 1 +/* 8021FD0C 0021CC6C 90 01 00 34 */ stw r0, 0x34(r1) +/* 8021FD10 0021CC70 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8021FD14 0021CC74 7C 7F 1B 78 */ mr r31, r3 +/* 8021FD18 0021CC78 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8021FD1C 0021CC7C 41 82 00 74 */ beq lbl_8021FD90 +/* 8021FD20 0021CC80 40 80 00 10 */ bge lbl_8021FD30 +/* 8021FD24 0021CC84 2C 05 00 00 */ cmpwi r5, 0 +/* 8021FD28 0021CC88 40 80 00 14 */ bge lbl_8021FD3C +/* 8021FD2C 0021CC8C 48 00 01 68 */ b lbl_8021FE94 +lbl_8021FD30: +/* 8021FD30 0021CC90 2C 05 00 03 */ cmpwi r5, 3 +/* 8021FD34 0021CC94 40 80 01 60 */ bge lbl_8021FE94 +/* 8021FD38 0021CC98 48 00 01 44 */ b lbl_8021FE7C +lbl_8021FD3C: +/* 8021FD3C 0021CC9C 88 1F 0A 49 */ lbz r0, 0xa49(r31) +/* 8021FD40 0021CCA0 38 60 00 04 */ li r3, 4 +/* 8021FD44 0021CCA4 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8021FD48 0021CCA8 41 82 00 08 */ beq lbl_8021FD50 +/* 8021FD4C 0021CCAC 38 60 00 00 */ li r3, 0 +lbl_8021FD50: +/* 8021FD50 0021CCB0 90 7F 05 68 */ stw r3, 0x568(r31) +/* 8021FD54 0021CCB4 38 A0 00 00 */ li r5, 0 +/* 8021FD58 0021CCB8 38 7F 08 F0 */ addi r3, r31, 0x8f0 +/* 8021FD5C 0021CCBC 88 1F 0A 49 */ lbz r0, 0xa49(r31) +/* 8021FD60 0021CCC0 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 8021FD64 0021CCC4 98 1F 0A 49 */ stb r0, 0xa49(r31) +/* 8021FD68 0021CCC8 80 A4 08 4C */ lwz r5, 0x84c(r4) +/* 8021FD6C 0021CCCC 38 81 00 0C */ addi r4, r1, 0xc +/* 8021FD70 0021CCD0 A0 05 00 08 */ lhz r0, 8(r5) +/* 8021FD74 0021CCD4 B0 01 00 08 */ sth r0, 8(r1) +/* 8021FD78 0021CCD8 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8021FD7C 0021CCDC 4B F5 54 9D */ bl SetTarget__13CBoneTrackingF9TUniqueId +/* 8021FD80 0021CCE0 38 7F 08 F0 */ addi r3, r31, 0x8f0 +/* 8021FD84 0021CCE4 38 80 00 01 */ li r4, 1 +/* 8021FD88 0021CCE8 4B F5 54 9D */ bl SetActive__13CBoneTrackingFb +/* 8021FD8C 0021CCEC 48 00 01 08 */ b lbl_8021FE94 +lbl_8021FD90: +/* 8021FD90 0021CCF0 80 1F 05 68 */ lwz r0, 0x568(r31) +/* 8021FD94 0021CCF4 2C 00 00 03 */ cmpwi r0, 3 +/* 8021FD98 0021CCF8 41 82 00 90 */ beq lbl_8021FE28 +/* 8021FD9C 0021CCFC 40 80 00 F8 */ bge lbl_8021FE94 +/* 8021FDA0 0021CD00 2C 00 00 00 */ cmpwi r0, 0 +/* 8021FDA4 0021CD04 41 82 00 08 */ beq lbl_8021FDAC +/* 8021FDA8 0021CD08 48 00 00 EC */ b lbl_8021FE94 +lbl_8021FDAC: +/* 8021FDAC 0021CD0C 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8021FDB0 0021CD10 38 C0 00 01 */ li r6, 1 +/* 8021FDB4 0021CD14 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 8021FDB8 0021CD18 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8021FDBC 0021CD1C 3C 80 80 3E */ lis r4, lbl_803DA9E4@ha +/* 8021FDC0 0021CD20 90 01 00 10 */ stw r0, 0x10(r1) +/* 8021FDC4 0021CD24 38 A4 A9 E4 */ addi r5, r4, lbl_803DA9E4@l +/* 8021FDC8 0021CD28 38 00 00 00 */ li r0, 0 +/* 8021FDCC 0021CD2C 3B C3 00 04 */ addi r30, r3, 4 +/* 8021FDD0 0021CD30 90 C1 00 14 */ stw r6, 0x14(r1) +/* 8021FDD4 0021CD34 7F C3 F3 78 */ mr r3, r30 +/* 8021FDD8 0021CD38 38 80 00 01 */ li r4, 1 +/* 8021FDDC 0021CD3C 90 A1 00 10 */ stw r5, 0x10(r1) +/* 8021FDE0 0021CD40 90 C1 00 18 */ stw r6, 0x18(r1) +/* 8021FDE4 0021CD44 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8021FDE8 0021CD48 4B F1 16 51 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8021FDEC 0021CD4C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8021FDF0 0021CD50 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha +/* 8021FDF4 0021CD54 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l +/* 8021FDF8 0021CD58 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8021FDFC 0021CD5C 90 1E 00 C8 */ stw r0, 0xc8(r30) +/* 8021FE00 0021CD60 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l +/* 8021FE04 0021CD64 80 C1 00 18 */ lwz r6, 0x18(r1) +/* 8021FE08 0021CD68 38 00 00 03 */ li r0, 3 +/* 8021FE0C 0021CD6C 80 A1 00 1C */ lwz r5, 0x1c(r1) +/* 8021FE10 0021CD70 90 DE 00 CC */ stw r6, 0xcc(r30) +/* 8021FE14 0021CD74 90 BE 00 D0 */ stw r5, 0xd0(r30) +/* 8021FE18 0021CD78 90 81 00 10 */ stw r4, 0x10(r1) +/* 8021FE1C 0021CD7C 90 61 00 10 */ stw r3, 0x10(r1) +/* 8021FE20 0021CD80 90 1F 05 68 */ stw r0, 0x568(r31) +/* 8021FE24 0021CD84 48 00 00 70 */ b lbl_8021FE94 +lbl_8021FE28: +/* 8021FE28 0021CD88 80 BF 04 50 */ lwz r5, 0x450(r31) +/* 8021FE2C 0021CD8C 80 05 02 B8 */ lwz r0, 0x2b8(r5) +/* 8021FE30 0021CD90 2C 00 00 03 */ cmpwi r0, 3 +/* 8021FE34 0021CD94 40 82 00 3C */ bne lbl_8021FE70 +/* 8021FE38 0021CD98 80 64 08 4C */ lwz r3, 0x84c(r4) +/* 8021FE3C 0021CD9C C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8021FE40 0021CDA0 C0 23 00 40 */ lfs f1, 0x40(r3) +/* 8021FE44 0021CDA4 C0 83 00 50 */ lfs f4, 0x50(r3) +/* 8021FE48 0021CDA8 C0 7F 00 50 */ lfs f3, 0x50(r31) +/* 8021FE4C 0021CDAC EC 01 00 28 */ fsubs f0, f1, f0 +/* 8021FE50 0021CDB0 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 8021FE54 0021CDB4 C0 3F 00 60 */ lfs f1, 0x60(r31) +/* 8021FE58 0021CDB8 EC 64 18 28 */ fsubs f3, f4, f3 +/* 8021FE5C 0021CDBC D0 05 00 1C */ stfs f0, 0x1c(r5) +/* 8021FE60 0021CDC0 EC 02 08 28 */ fsubs f0, f2, f1 +/* 8021FE64 0021CDC4 D0 65 00 20 */ stfs f3, 0x20(r5) +/* 8021FE68 0021CDC8 D0 05 00 24 */ stfs f0, 0x24(r5) +/* 8021FE6C 0021CDCC 48 00 00 28 */ b lbl_8021FE94 +lbl_8021FE70: +/* 8021FE70 0021CDD0 38 00 00 04 */ li r0, 4 +/* 8021FE74 0021CDD4 90 1F 05 68 */ stw r0, 0x568(r31) +/* 8021FE78 0021CDD8 48 00 00 1C */ b lbl_8021FE94 +lbl_8021FE7C: +/* 8021FE7C 0021CDDC 38 7F 08 F0 */ addi r3, r31, 0x8f0 +/* 8021FE80 0021CDE0 38 80 00 00 */ li r4, 0 +/* 8021FE84 0021CDE4 4B F5 53 A1 */ bl SetActive__13CBoneTrackingFb +/* 8021FE88 0021CDE8 7F E3 FB 78 */ mr r3, r31 +/* 8021FE8C 0021CDEC 38 80 00 00 */ li r4, 0 +/* 8021FE90 0021CDF0 4B FF E2 0D */ bl sub_8021e09c +lbl_8021FE94: +/* 8021FE94 0021CDF4 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8021FE98 0021CDF8 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8021FE9C 0021CDFC 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8021FEA0 0021CE00 7C 08 03 A6 */ mtlr r0 +/* 8021FEA4 0021CE04 38 21 00 30 */ addi r1, r1, 0x30 +/* 8021FEA8 0021CE08 4E 80 00 20 */ blr + +.global Taunt__9CBabygothFR13CStateManager9EStateMsgf +Taunt__9CBabygothFR13CStateManager9EStateMsgf: +/* 8021FEAC 0021CE0C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8021FEB0 0021CE10 7C 08 02 A6 */ mflr r0 +/* 8021FEB4 0021CE14 2C 05 00 01 */ cmpwi r5, 1 +/* 8021FEB8 0021CE18 90 01 00 24 */ stw r0, 0x24(r1) +/* 8021FEBC 0021CE1C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8021FEC0 0021CE20 7C 7F 1B 78 */ mr r31, r3 +/* 8021FEC4 0021CE24 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8021FEC8 0021CE28 41 82 00 84 */ beq lbl_8021FF4C +/* 8021FECC 0021CE2C 40 80 00 98 */ bge lbl_8021FF64 +/* 8021FED0 0021CE30 2C 05 00 00 */ cmpwi r5, 0 +/* 8021FED4 0021CE34 40 80 00 08 */ bge lbl_8021FEDC +/* 8021FED8 0021CE38 48 00 00 8C */ b lbl_8021FF64 +lbl_8021FEDC: +/* 8021FEDC 0021CE3C 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 8021FEE0 0021CE40 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8021FEE4 0021CE44 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l +/* 8021FEE8 0021CE48 3C 80 80 3E */ lis r4, lbl_803DAA14@ha +/* 8021FEEC 0021CE4C 90 01 00 08 */ stw r0, 8(r1) +/* 8021FEF0 0021CE50 38 A4 AA 14 */ addi r5, r4, lbl_803DAA14@l +/* 8021FEF4 0021CE54 38 80 00 12 */ li r4, 0x12 +/* 8021FEF8 0021CE58 38 00 00 01 */ li r0, 1 +/* 8021FEFC 0021CE5C 3B C3 00 04 */ addi r30, r3, 4 +/* 8021FF00 0021CE60 90 81 00 0C */ stw r4, 0xc(r1) +/* 8021FF04 0021CE64 7F C3 F3 78 */ mr r3, r30 +/* 8021FF08 0021CE68 38 80 00 12 */ li r4, 0x12 +/* 8021FF0C 0021CE6C 90 A1 00 08 */ stw r5, 8(r1) +/* 8021FF10 0021CE70 90 01 00 10 */ stw r0, 0x10(r1) +/* 8021FF14 0021CE74 4B F1 15 25 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8021FF18 0021CE78 80 01 00 0C */ lwz r0, 0xc(r1) +/* 8021FF1C 0021CE7C 3C 60 80 3E */ lis r3, lbl_803DAA14@ha +/* 8021FF20 0021CE80 38 83 AA 14 */ addi r4, r3, lbl_803DAA14@l +/* 8021FF24 0021CE84 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8021FF28 0021CE88 90 1E 02 14 */ stw r0, 0x214(r30) +/* 8021FF2C 0021CE8C 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l +/* 8021FF30 0021CE90 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 8021FF34 0021CE94 38 00 00 03 */ li r0, 3 +/* 8021FF38 0021CE98 90 81 00 08 */ stw r4, 8(r1) +/* 8021FF3C 0021CE9C 90 BE 02 18 */ stw r5, 0x218(r30) +/* 8021FF40 0021CEA0 90 61 00 08 */ stw r3, 8(r1) +/* 8021FF44 0021CEA4 90 1F 05 68 */ stw r0, 0x568(r31) +/* 8021FF48 0021CEA8 48 00 00 1C */ b lbl_8021FF64 +lbl_8021FF4C: +/* 8021FF4C 0021CEAC 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8021FF50 0021CEB0 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 8021FF54 0021CEB4 2C 00 00 10 */ cmpwi r0, 0x10 +/* 8021FF58 0021CEB8 41 82 00 0C */ beq lbl_8021FF64 +/* 8021FF5C 0021CEBC 38 00 00 04 */ li r0, 4 +/* 8021FF60 0021CEC0 90 1F 05 68 */ stw r0, 0x568(r31) +lbl_8021FF64: +/* 8021FF64 0021CEC4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8021FF68 0021CEC8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8021FF6C 0021CECC 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8021FF70 0021CED0 7C 08 03 A6 */ mtlr r0 +/* 8021FF74 0021CED4 38 21 00 20 */ addi r1, r1, 0x20 +/* 8021FF78 0021CED8 4E 80 00 20 */ blr + +.global Crouch__9CBabygothFR13CStateManager9EStateMsgf +Crouch__9CBabygothFR13CStateManager9EStateMsgf: +/* 8021FF7C 0021CEDC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8021FF80 0021CEE0 7C 08 02 A6 */ mflr r0 +/* 8021FF84 0021CEE4 2C 05 00 01 */ cmpwi r5, 1 +/* 8021FF88 0021CEE8 90 01 00 24 */ stw r0, 0x24(r1) +/* 8021FF8C 0021CEEC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8021FF90 0021CEF0 7C 9F 23 78 */ mr r31, r4 +/* 8021FF94 0021CEF4 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8021FF98 0021CEF8 7C 7E 1B 78 */ mr r30, r3 +/* 8021FF9C 0021CEFC 41 82 00 A8 */ beq lbl_80220044 +/* 8021FFA0 0021CF00 40 80 00 10 */ bge lbl_8021FFB0 +/* 8021FFA4 0021CF04 2C 05 00 00 */ cmpwi r5, 0 +/* 8021FFA8 0021CF08 40 80 00 14 */ bge lbl_8021FFBC +/* 8021FFAC 0021CF0C 48 00 00 98 */ b lbl_80220044 +lbl_8021FFB0: +/* 8021FFB0 0021CF10 2C 05 00 03 */ cmpwi r5, 3 +/* 8021FFB4 0021CF14 40 80 00 90 */ bge lbl_80220044 +/* 8021FFB8 0021CF18 48 00 00 7C */ b lbl_80220034 +lbl_8021FFBC: +/* 8021FFBC 0021CF1C 7F E6 FB 78 */ mr r6, r31 +/* 8021FFC0 0021CF20 38 80 00 29 */ li r4, 0x29 +/* 8021FFC4 0021CF24 38 A0 00 28 */ li r5, 0x28 +/* 8021FFC8 0021CF28 4B E3 3F 0D */ bl RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager +/* 8021FFCC 0021CF2C A0 1E 00 08 */ lhz r0, 8(r30) +/* 8021FFD0 0021CF30 7F E6 FB 78 */ mr r6, r31 +/* 8021FFD4 0021CF34 38 81 00 0C */ addi r4, r1, 0xc +/* 8021FFD8 0021CF38 38 A0 00 08 */ li r5, 8 +/* 8021FFDC 0021CF3C B0 01 00 0C */ sth r0, 0xc(r1) +/* 8021FFE0 0021CF40 B0 01 00 08 */ sth r0, 8(r1) +/* 8021FFE4 0021CF44 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8021FFE8 0021CF48 4B F5 B2 6D */ bl SetOrbitRequestForTarget__7CPlayerF9TUniqueId19EPlayerOrbitRequestR13CStateManager +/* 8021FFEC 0021CF4C 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8021FFF0 0021CF50 38 80 00 00 */ li r4, 0 +/* 8021FFF4 0021CF54 4B F1 A9 E5 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 8021FFF8 0021CF58 88 1E 0A 48 */ lbz r0, 0xa48(r30) +/* 8021FFFC 0021CF5C 38 80 00 00 */ li r4, 0 +/* 80220000 0021CF60 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 80220004 0021CF64 38 60 00 00 */ li r3, 0 +/* 80220008 0021CF68 98 1E 0A 48 */ stb r0, 0xa48(r30) +/* 8022000C 0021CF6C 54 04 CF FE */ rlwinm r4, r0, 0x19, 0x1f, 0x1f +/* 80220010 0021CF70 C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 80220014 0021CF74 88 1E 0A 48 */ lbz r0, 0xa48(r30) +/* 80220018 0021CF78 50 80 0F BC */ rlwimi r0, r4, 1, 0x1e, 0x1e +/* 8022001C 0021CF7C 98 1E 0A 48 */ stb r0, 0xa48(r30) +/* 80220020 0021CF80 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 80220024 0021CF84 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80220028 0021CF88 98 1E 04 00 */ stb r0, 0x400(r30) +/* 8022002C 0021CF8C D0 1E 08 E8 */ stfs f0, 0x8e8(r30) +/* 80220030 0021CF90 48 00 00 14 */ b lbl_80220044 +lbl_80220034: +/* 80220034 0021CF94 7F E6 FB 78 */ mr r6, r31 +/* 80220038 0021CF98 38 80 00 29 */ li r4, 0x29 +/* 8022003C 0021CF9C 38 A0 00 28 */ li r5, 0x28 +/* 80220040 0021CFA0 4B E3 42 75 */ bl AddMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager +lbl_80220044: +/* 80220044 0021CFA4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80220048 0021CFA8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8022004C 0021CFAC 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80220050 0021CFB0 7C 08 03 A6 */ mtlr r0 +/* 80220054 0021CFB4 38 21 00 20 */ addi r1, r1, 0x20 +/* 80220058 0021CFB8 4E 80 00 20 */ blr + +.global Deactivate__9CBabygothFR13CStateManager9EStateMsgf +Deactivate__9CBabygothFR13CStateManager9EStateMsgf: +/* 8022005C 0021CFBC 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 80220060 0021CFC0 7C 08 02 A6 */ mflr r0 +/* 80220064 0021CFC4 2C 05 00 01 */ cmpwi r5, 1 +/* 80220068 0021CFC8 90 01 00 84 */ stw r0, 0x84(r1) +/* 8022006C 0021CFCC 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 80220070 0021CFD0 7C 7F 1B 78 */ mr r31, r3 +/* 80220074 0021CFD4 41 82 00 20 */ beq lbl_80220094 +/* 80220078 0021CFD8 40 80 02 98 */ bge lbl_80220310 +/* 8022007C 0021CFDC 2C 05 00 00 */ cmpwi r5, 0 +/* 80220080 0021CFE0 40 80 00 08 */ bge lbl_80220088 +/* 80220084 0021CFE4 48 00 02 8C */ b lbl_80220310 +lbl_80220088: +/* 80220088 0021CFE8 38 00 00 01 */ li r0, 1 +/* 8022008C 0021CFEC 90 1F 05 68 */ stw r0, 0x568(r31) +/* 80220090 0021CFF0 48 00 02 80 */ b lbl_80220310 +lbl_80220094: +/* 80220094 0021CFF4 80 1F 05 68 */ lwz r0, 0x568(r31) +/* 80220098 0021CFF8 2C 00 00 02 */ cmpwi r0, 2 +/* 8022009C 0021CFFC 41 82 00 D8 */ beq lbl_80220174 +/* 802200A0 0021D000 40 80 00 14 */ bge lbl_802200B4 +/* 802200A4 0021D004 2C 00 00 00 */ cmpwi r0, 0 +/* 802200A8 0021D008 41 82 01 58 */ beq lbl_80220200 +/* 802200AC 0021D00C 40 80 00 14 */ bge lbl_802200C0 +/* 802200B0 0021D010 48 00 02 60 */ b lbl_80220310 +lbl_802200B4: +/* 802200B4 0021D014 2C 00 00 04 */ cmpwi r0, 4 +/* 802200B8 0021D018 40 80 02 58 */ bge lbl_80220310 +/* 802200BC 0021D01C 48 00 02 3C */ b lbl_802202F8 +lbl_802200C0: +/* 802200C0 0021D020 38 DF 03 A0 */ addi r6, r31, 0x3a0 +/* 802200C4 0021D024 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 802200C8 0021D028 C0 3F 03 A4 */ lfs f1, 0x3a4(r31) +/* 802200CC 0021D02C C0 7F 03 A0 */ lfs f3, 0x3a0(r31) +/* 802200D0 0021D030 EC 81 00 28 */ fsubs f4, f1, f0 +/* 802200D4 0021D034 C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 802200D8 0021D038 C0 5F 03 A8 */ lfs f2, 0x3a8(r31) +/* 802200DC 0021D03C C0 1F 00 60 */ lfs f0, 0x60(r31) +/* 802200E0 0021D040 EC 63 08 28 */ fsubs f3, f3, f1 +/* 802200E4 0021D044 EC 24 01 32 */ fmuls f1, f4, f4 +/* 802200E8 0021D048 EC 42 00 28 */ fsubs f2, f2, f0 +/* 802200EC 0021D04C C0 02 B4 18 */ lfs f0, lbl_805AD138@sda21(r2) +/* 802200F0 0021D050 EC 23 08 FA */ fmadds f1, f3, f3, f1 +/* 802200F4 0021D054 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 802200F8 0021D058 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802200FC 0021D05C 4C 40 13 82 */ cror 2, 0, 2 +/* 80220100 0021D060 40 82 00 10 */ bne lbl_80220110 +/* 80220104 0021D064 38 00 00 02 */ li r0, 2 +/* 80220108 0021D068 90 1F 05 68 */ stw r0, 0x568(r31) +/* 8022010C 0021D06C 48 00 02 04 */ b lbl_80220310 +lbl_80220110: +/* 80220110 0021D070 C0 22 B4 14 */ lfs f1, lbl_805AD134@sda21(r2) +/* 80220114 0021D074 7F E5 FB 78 */ mr r5, r31 +/* 80220118 0021D078 38 61 00 08 */ addi r3, r1, 8 +/* 8022011C 0021D07C 38 9F 04 5C */ addi r4, r31, 0x45c +/* 80220120 0021D080 4B F1 E9 FD */ bl Arrival__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3ff +/* 80220124 0021D084 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80220128 0021D088 C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) +/* 8022012C 0021D08C C0 C1 00 08 */ lfs f6, 8(r1) +/* 80220130 0021D090 38 81 00 5C */ addi r4, r1, 0x5c +/* 80220134 0021D094 C0 A1 00 0C */ lfs f5, 0xc(r1) +/* 80220138 0021D098 C0 81 00 10 */ lfs f4, 0x10(r1) +/* 8022013C 0021D09C C0 43 00 04 */ lfs f2, 4(r3) +/* 80220140 0021D0A0 C0 23 00 08 */ lfs f1, 8(r3) +/* 80220144 0021D0A4 C0 02 B4 18 */ lfs f0, lbl_805AD138@sda21(r2) +/* 80220148 0021D0A8 D0 C1 00 5C */ stfs f6, 0x5c(r1) +/* 8022014C 0021D0AC D0 A1 00 60 */ stfs f5, 0x60(r1) +/* 80220150 0021D0B0 D0 81 00 64 */ stfs f4, 0x64(r1) +/* 80220154 0021D0B4 D0 61 00 68 */ stfs f3, 0x68(r1) +/* 80220158 0021D0B8 D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 8022015C 0021D0BC D0 21 00 70 */ stfs f1, 0x70(r1) +/* 80220160 0021D0C0 D0 01 00 74 */ stfs f0, 0x74(r1) +/* 80220164 0021D0C4 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 80220168 0021D0C8 38 63 00 04 */ addi r3, r3, 4 +/* 8022016C 0021D0CC 4B F1 15 AD */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 80220170 0021D0D0 48 00 01 A0 */ b lbl_80220310 +lbl_80220174: +/* 80220174 0021D0D4 C0 5F 00 58 */ lfs f2, 0x58(r31) +/* 80220178 0021D0D8 38 61 00 14 */ addi r3, r1, 0x14 +/* 8022017C 0021D0DC C0 3F 00 48 */ lfs f1, 0x48(r31) +/* 80220180 0021D0E0 38 9F 08 C4 */ addi r4, r31, 0x8c4 +/* 80220184 0021D0E4 C0 1F 00 38 */ lfs f0, 0x38(r31) +/* 80220188 0021D0E8 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 8022018C 0021D0EC D0 21 00 18 */ stfs f1, 0x18(r1) +/* 80220190 0021D0F0 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 80220194 0021D0F4 48 0F 44 9D */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f +/* 80220198 0021D0F8 C0 02 B4 40 */ lfs f0, lbl_805AD160@sda21(r2) +/* 8022019C 0021D0FC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802201A0 0021D100 40 81 00 54 */ ble lbl_802201F4 +/* 802201A4 0021D104 3C 60 80 5A */ lis r3, skZero3f@ha +/* 802201A8 0021D108 C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) +/* 802201AC 0021D10C C0 02 B4 18 */ lfs f0, lbl_805AD138@sda21(r2) +/* 802201B0 0021D110 38 81 00 40 */ addi r4, r1, 0x40 +/* 802201B4 0021D114 C0 43 00 04 */ lfs f2, 4(r3) +/* 802201B8 0021D118 C0 23 00 08 */ lfs f1, 8(r3) +/* 802201BC 0021D11C D0 61 00 40 */ stfs f3, 0x40(r1) +/* 802201C0 0021D120 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 802201C4 0021D124 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 802201C8 0021D128 C0 3F 08 C4 */ lfs f1, 0x8c4(r31) +/* 802201CC 0021D12C D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 802201D0 0021D130 C0 3F 08 C8 */ lfs f1, 0x8c8(r31) +/* 802201D4 0021D134 D0 21 00 50 */ stfs f1, 0x50(r1) +/* 802201D8 0021D138 C0 3F 08 CC */ lfs f1, 0x8cc(r31) +/* 802201DC 0021D13C D0 21 00 54 */ stfs f1, 0x54(r1) +/* 802201E0 0021D140 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 802201E4 0021D144 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 802201E8 0021D148 38 63 00 04 */ addi r3, r3, 4 +/* 802201EC 0021D14C 4B F1 15 2D */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 802201F0 0021D150 48 00 01 20 */ b lbl_80220310 +lbl_802201F4: +/* 802201F4 0021D154 38 00 00 00 */ li r0, 0 +/* 802201F8 0021D158 90 1F 05 68 */ stw r0, 0x568(r31) +/* 802201FC 0021D15C 48 00 01 14 */ b lbl_80220310 +lbl_80220200: +/* 80220200 0021D160 81 5F 04 50 */ lwz r10, 0x450(r31) +/* 80220204 0021D164 80 0A 02 B8 */ lwz r0, 0x2b8(r10) +/* 80220208 0021D168 2C 00 00 0C */ cmpwi r0, 0xc +/* 8022020C 0021D16C 40 82 00 1C */ bne lbl_80220228 +/* 80220210 0021D170 38 00 00 03 */ li r0, 3 +/* 80220214 0021D174 38 80 00 00 */ li r4, 0 +/* 80220218 0021D178 90 1F 05 68 */ stw r0, 0x568(r31) +/* 8022021C 0021D17C 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 80220220 0021D180 4B F1 A7 B9 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 80220224 0021D184 48 00 00 EC */ b lbl_80220310 +lbl_80220228: +/* 80220228 0021D188 3C C0 80 3E */ lis r6, lbl_803DAA68@ha +/* 8022022C 0021D18C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80220230 0021D190 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 80220234 0021D194 80 81 00 3C */ lwz r4, 0x3c(r1) +/* 80220238 0021D198 38 60 00 00 */ li r3, 0 +/* 8022023C 0021D19C 39 26 AA 68 */ addi r9, r6, lbl_803DAA68@l +/* 80220240 0021D1A0 50 64 F8 00 */ rlwimi r4, r3, 0x1f, 0, 0 +/* 80220244 0021D1A4 C0 45 00 00 */ lfs f2, 0(r5) +/* 80220248 0021D1A8 C0 25 00 04 */ lfs f1, 4(r5) +/* 8022024C 0021D1AC 3C E0 80 3E */ lis r7, lbl_803DA9F0@ha +/* 80220250 0021D1B0 C0 05 00 08 */ lfs f0, 8(r5) +/* 80220254 0021D1B4 7C 80 23 78 */ mr r0, r4 +/* 80220258 0021D1B8 39 00 00 0E */ li r8, 0xe +/* 8022025C 0021D1BC 38 C0 00 01 */ li r6, 1 +/* 80220260 0021D1C0 38 A0 FF FF */ li r5, -1 +/* 80220264 0021D1C4 3B EA 00 04 */ addi r31, r10, 4 +/* 80220268 0021D1C8 91 21 00 20 */ stw r9, 0x20(r1) +/* 8022026C 0021D1CC 38 E7 A9 F0 */ addi r7, r7, lbl_803DA9F0@l +/* 80220270 0021D1D0 50 60 F0 42 */ rlwimi r0, r3, 0x1e, 1, 1 +/* 80220274 0021D1D4 7F E3 FB 78 */ mr r3, r31 +/* 80220278 0021D1D8 90 81 00 3C */ stw r4, 0x3c(r1) +/* 8022027C 0021D1DC 38 80 00 0E */ li r4, 0xe +/* 80220280 0021D1E0 91 01 00 24 */ stw r8, 0x24(r1) +/* 80220284 0021D1E4 90 E1 00 20 */ stw r7, 0x20(r1) +/* 80220288 0021D1E8 90 C1 00 28 */ stw r6, 0x28(r1) +/* 8022028C 0021D1EC D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 80220290 0021D1F0 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 80220294 0021D1F4 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 80220298 0021D1F8 90 A1 00 38 */ stw r5, 0x38(r1) +/* 8022029C 0021D1FC 90 01 00 3C */ stw r0, 0x3c(r1) +/* 802202A0 0021D200 4B F1 11 99 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 802202A4 0021D204 80 01 00 24 */ lwz r0, 0x24(r1) +/* 802202A8 0021D208 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha +/* 802202AC 0021D20C 38 83 A9 F0 */ addi r4, r3, lbl_803DA9F0@l +/* 802202B0 0021D210 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 802202B4 0021D214 90 1F 01 90 */ stw r0, 0x190(r31) +/* 802202B8 0021D218 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 802202BC 0021D21C 80 A1 00 28 */ lwz r5, 0x28(r1) +/* 802202C0 0021D220 80 61 00 2C */ lwz r3, 0x2c(r1) +/* 802202C4 0021D224 90 BF 01 94 */ stw r5, 0x194(r31) +/* 802202C8 0021D228 80 A1 00 30 */ lwz r5, 0x30(r1) +/* 802202CC 0021D22C 90 7F 01 98 */ stw r3, 0x198(r31) +/* 802202D0 0021D230 80 61 00 34 */ lwz r3, 0x34(r1) +/* 802202D4 0021D234 90 BF 01 9C */ stw r5, 0x19c(r31) +/* 802202D8 0021D238 80 A1 00 38 */ lwz r5, 0x38(r1) +/* 802202DC 0021D23C 90 7F 01 A0 */ stw r3, 0x1a0(r31) +/* 802202E0 0021D240 80 61 00 3C */ lwz r3, 0x3c(r1) +/* 802202E4 0021D244 90 BF 01 A4 */ stw r5, 0x1a4(r31) +/* 802202E8 0021D248 90 81 00 20 */ stw r4, 0x20(r1) +/* 802202EC 0021D24C 90 7F 01 A8 */ stw r3, 0x1a8(r31) +/* 802202F0 0021D250 90 01 00 20 */ stw r0, 0x20(r1) +/* 802202F4 0021D254 48 00 00 1C */ b lbl_80220310 +lbl_802202F8: +/* 802202F8 0021D258 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 802202FC 0021D25C 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 80220300 0021D260 2C 00 00 0C */ cmpwi r0, 0xc +/* 80220304 0021D264 41 82 00 0C */ beq lbl_80220310 +/* 80220308 0021D268 38 00 00 04 */ li r0, 4 +/* 8022030C 0021D26C 90 1F 05 68 */ stw r0, 0x568(r31) +lbl_80220310: +/* 80220310 0021D270 80 01 00 84 */ lwz r0, 0x84(r1) +/* 80220314 0021D274 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 80220318 0021D278 7C 08 03 A6 */ mtlr r0 +/* 8022031C 0021D27C 38 21 00 80 */ addi r1, r1, 0x80 +/* 80220320 0021D280 4E 80 00 20 */ blr + +.global Generate__9CBabygothFR13CStateManager9EStateMsgf +Generate__9CBabygothFR13CStateManager9EStateMsgf: +/* 80220324 0021D284 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80220328 0021D288 7C 08 02 A6 */ mflr r0 +/* 8022032C 0021D28C 2C 05 00 01 */ cmpwi r5, 1 +/* 80220330 0021D290 90 01 00 34 */ stw r0, 0x34(r1) +/* 80220334 0021D294 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80220338 0021D298 7C 9F 23 78 */ mr r31, r4 +/* 8022033C 0021D29C 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80220340 0021D2A0 7C 7E 1B 78 */ mr r30, r3 +/* 80220344 0021D2A4 41 82 00 38 */ beq lbl_8022037C +/* 80220348 0021D2A8 40 80 01 68 */ bge lbl_802204B0 +/* 8022034C 0021D2AC 2C 05 00 00 */ cmpwi r5, 0 +/* 80220350 0021D2B0 40 80 00 08 */ bge lbl_80220358 +/* 80220354 0021D2B4 48 00 01 5C */ b lbl_802204B0 +lbl_80220358: +/* 80220358 0021D2B8 38 00 00 00 */ li r0, 0 +/* 8022035C 0021D2BC 90 1E 05 68 */ stw r0, 0x568(r30) +/* 80220360 0021D2C0 C0 5E 00 58 */ lfs f2, 0x58(r30) +/* 80220364 0021D2C4 C0 3E 00 48 */ lfs f1, 0x48(r30) +/* 80220368 0021D2C8 C0 1E 00 38 */ lfs f0, 0x38(r30) +/* 8022036C 0021D2CC D0 1E 08 C4 */ stfs f0, 0x8c4(r30) +/* 80220370 0021D2D0 D0 3E 08 C8 */ stfs f1, 0x8c8(r30) +/* 80220374 0021D2D4 D0 5E 08 CC */ stfs f2, 0x8cc(r30) +/* 80220378 0021D2D8 48 00 01 38 */ b lbl_802204B0 +lbl_8022037C: +/* 8022037C 0021D2DC 80 1E 05 68 */ lwz r0, 0x568(r30) +/* 80220380 0021D2E0 2C 00 00 03 */ cmpwi r0, 3 +/* 80220384 0021D2E4 41 82 01 14 */ beq lbl_80220498 +/* 80220388 0021D2E8 40 80 01 28 */ bge lbl_802204B0 +/* 8022038C 0021D2EC 2C 00 00 00 */ cmpwi r0, 0 +/* 80220390 0021D2F0 41 82 00 08 */ beq lbl_80220398 +/* 80220394 0021D2F4 48 00 01 1C */ b lbl_802204B0 +lbl_80220398: +/* 80220398 0021D2F8 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8022039C 0021D2FC 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 802203A0 0021D300 2C 00 00 0C */ cmpwi r0, 0xc +/* 802203A4 0021D304 40 82 00 2C */ bne lbl_802203D0 +/* 802203A8 0021D308 38 80 00 01 */ li r4, 1 +/* 802203AC 0021D30C 4B F1 A6 2D */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 802203B0 0021D310 38 00 00 03 */ li r0, 3 +/* 802203B4 0021D314 7F C3 F3 78 */ mr r3, r30 +/* 802203B8 0021D318 90 1E 05 68 */ stw r0, 0x568(r30) +/* 802203BC 0021D31C 7F E5 FB 78 */ mr r5, r31 +/* 802203C0 0021D320 38 80 00 0A */ li r4, 0xa +/* 802203C4 0021D324 38 C0 FF FF */ li r6, -1 +/* 802203C8 0021D328 4B E3 0C F9 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 802203CC 0021D32C 48 00 00 E4 */ b lbl_802204B0 +lbl_802203D0: +/* 802203D0 0021D330 3C E0 80 3E */ lis r7, lbl_803DAA68@ha +/* 802203D4 0021D334 38 C0 00 00 */ li r6, 0 +/* 802203D8 0021D338 39 27 AA 68 */ addi r9, r7, lbl_803DAA68@l +/* 802203DC 0021D33C 80 81 00 24 */ lwz r4, 0x24(r1) +/* 802203E0 0021D340 50 C4 F8 00 */ rlwimi r4, r6, 0x1f, 0, 0 +/* 802203E4 0021D344 3C A0 80 5A */ lis r5, skZero3f@ha +/* 802203E8 0021D348 C4 45 66 A0 */ lfsu f2, skZero3f@l(r5) +/* 802203EC 0021D34C 3C E0 80 3E */ lis r7, lbl_803DA9F0@ha +/* 802203F0 0021D350 7C 80 23 78 */ mr r0, r4 +/* 802203F4 0021D354 90 81 00 24 */ stw r4, 0x24(r1) +/* 802203F8 0021D358 C0 25 00 04 */ lfs f1, 4(r5) +/* 802203FC 0021D35C 39 00 00 0E */ li r8, 0xe +/* 80220400 0021D360 C0 05 00 08 */ lfs f0, 8(r5) +/* 80220404 0021D364 38 A0 FF FF */ li r5, -1 +/* 80220408 0021D368 50 C0 F0 42 */ rlwimi r0, r6, 0x1e, 1, 1 +/* 8022040C 0021D36C 3B E3 00 04 */ addi r31, r3, 4 +/* 80220410 0021D370 91 21 00 08 */ stw r9, 8(r1) +/* 80220414 0021D374 38 E7 A9 F0 */ addi r7, r7, lbl_803DA9F0@l +/* 80220418 0021D378 7F E3 FB 78 */ mr r3, r31 +/* 8022041C 0021D37C 38 80 00 0E */ li r4, 0xe +/* 80220420 0021D380 91 01 00 0C */ stw r8, 0xc(r1) +/* 80220424 0021D384 90 E1 00 08 */ stw r7, 8(r1) +/* 80220428 0021D388 90 C1 00 10 */ stw r6, 0x10(r1) +/* 8022042C 0021D38C D0 41 00 14 */ stfs f2, 0x14(r1) +/* 80220430 0021D390 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 80220434 0021D394 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 80220438 0021D398 90 A1 00 20 */ stw r5, 0x20(r1) +/* 8022043C 0021D39C 90 01 00 24 */ stw r0, 0x24(r1) +/* 80220440 0021D3A0 4B F1 0F F9 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80220444 0021D3A4 80 01 00 0C */ lwz r0, 0xc(r1) +/* 80220448 0021D3A8 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha +/* 8022044C 0021D3AC 38 83 A9 F0 */ addi r4, r3, lbl_803DA9F0@l +/* 80220450 0021D3B0 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80220454 0021D3B4 90 1F 01 90 */ stw r0, 0x190(r31) +/* 80220458 0021D3B8 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 8022045C 0021D3BC 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 80220460 0021D3C0 80 61 00 14 */ lwz r3, 0x14(r1) +/* 80220464 0021D3C4 90 BF 01 94 */ stw r5, 0x194(r31) +/* 80220468 0021D3C8 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 8022046C 0021D3CC 90 7F 01 98 */ stw r3, 0x198(r31) +/* 80220470 0021D3D0 80 61 00 1C */ lwz r3, 0x1c(r1) +/* 80220474 0021D3D4 90 BF 01 9C */ stw r5, 0x19c(r31) +/* 80220478 0021D3D8 80 A1 00 20 */ lwz r5, 0x20(r1) +/* 8022047C 0021D3DC 90 7F 01 A0 */ stw r3, 0x1a0(r31) +/* 80220480 0021D3E0 80 61 00 24 */ lwz r3, 0x24(r1) +/* 80220484 0021D3E4 90 BF 01 A4 */ stw r5, 0x1a4(r31) +/* 80220488 0021D3E8 90 81 00 08 */ stw r4, 8(r1) +/* 8022048C 0021D3EC 90 7F 01 A8 */ stw r3, 0x1a8(r31) +/* 80220490 0021D3F0 90 01 00 08 */ stw r0, 8(r1) +/* 80220494 0021D3F4 48 00 00 1C */ b lbl_802204B0 +lbl_80220498: +/* 80220498 0021D3F8 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8022049C 0021D3FC 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 802204A0 0021D400 2C 00 00 0C */ cmpwi r0, 0xc +/* 802204A4 0021D404 41 82 00 0C */ beq lbl_802204B0 +/* 802204A8 0021D408 38 00 00 04 */ li r0, 4 +/* 802204AC 0021D40C 90 1E 05 68 */ stw r0, 0x568(r30) +lbl_802204B0: +/* 802204B0 0021D410 80 01 00 34 */ lwz r0, 0x34(r1) +/* 802204B4 0021D414 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 802204B8 0021D418 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 802204BC 0021D41C 7C 08 03 A6 */ mtlr r0 +/* 802204C0 0021D420 38 21 00 30 */ addi r1, r1, 0x30 +/* 802204C4 0021D424 4E 80 00 20 */ blr + +.global TargetPatrol__9CBabygothFR13CStateManager9EStateMsgf +TargetPatrol__9CBabygothFR13CStateManager9EStateMsgf: +/* 802204C8 0021D428 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 802204CC 0021D42C 7C 08 02 A6 */ mflr r0 +/* 802204D0 0021D430 90 01 00 54 */ stw r0, 0x54(r1) +/* 802204D4 0021D434 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 802204D8 0021D438 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 802204DC 0021D43C 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 802204E0 0021D440 93 C1 00 38 */ stw r30, 0x38(r1) +/* 802204E4 0021D444 93 A1 00 34 */ stw r29, 0x34(r1) +/* 802204E8 0021D448 7C BF 2B 78 */ mr r31, r5 +/* 802204EC 0021D44C FF E0 08 90 */ fmr f31, f1 +/* 802204F0 0021D450 2C 1F 00 01 */ cmpwi r31, 1 +/* 802204F4 0021D454 7C 7D 1B 78 */ mr r29, r3 +/* 802204F8 0021D458 7C 9E 23 78 */ mr r30, r4 +/* 802204FC 0021D45C 41 82 00 F0 */ beq lbl_802205EC +/* 80220500 0021D460 40 80 01 BC */ bge lbl_802206BC +/* 80220504 0021D464 2C 1F 00 00 */ cmpwi r31, 0 +/* 80220508 0021D468 40 80 00 08 */ bge lbl_80220510 +/* 8022050C 0021D46C 48 00 01 B0 */ b lbl_802206BC +lbl_80220510: +/* 80220510 0021D470 88 1D 0A 49 */ lbz r0, 0xa49(r29) +/* 80220514 0021D474 38 A0 00 00 */ li r5, 0 +/* 80220518 0021D478 50 A0 2E B4 */ rlwimi r0, r5, 5, 0x1a, 0x1a +/* 8022051C 0021D47C 98 1D 0A 49 */ stb r0, 0xa49(r29) +/* 80220520 0021D480 4B FF D1 25 */ bl sub_8021d644 +/* 80220524 0021D484 88 1D 04 00 */ lbz r0, 0x400(r29) +/* 80220528 0021D488 38 60 00 00 */ li r3, 0 +/* 8022052C 0021D48C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80220530 0021D490 38 80 00 01 */ li r4, 1 +/* 80220534 0021D494 98 1D 04 00 */ stb r0, 0x400(r29) +/* 80220538 0021D498 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 8022053C 0021D49C 4B F1 A4 9D */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 80220540 0021D4A0 7F A3 EB 78 */ mr r3, r29 +/* 80220544 0021D4A4 7F C4 F3 78 */ mr r4, r30 +/* 80220548 0021D4A8 81 9D 00 00 */ lwz r12, 0(r29) +/* 8022054C 0021D4AC C0 22 B4 04 */ lfs f1, lbl_805AD124@sda21(r2) +/* 80220550 0021D4B0 81 8C 01 C0 */ lwz r12, 0x1c0(r12) +/* 80220554 0021D4B4 7D 89 03 A6 */ mtctr r12 +/* 80220558 0021D4B8 4E 80 04 21 */ bctrl +/* 8022055C 0021D4BC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80220560 0021D4C0 41 82 00 28 */ beq lbl_80220588 +/* 80220564 0021D4C4 FC 20 F8 90 */ fmr f1, f31 +/* 80220568 0021D4C8 7F A3 EB 78 */ mr r3, r29 +/* 8022056C 0021D4CC 7F C4 F3 78 */ mr r4, r30 +/* 80220570 0021D4D0 7F E5 FB 78 */ mr r5, r31 +/* 80220574 0021D4D4 4B FD 69 01 */ bl Patrol__10CPatternedFR13CStateManager9EStateMsgf +/* 80220578 0021D4D8 7F A3 EB 78 */ mr r3, r29 +/* 8022057C 0021D4DC 7F C4 F3 78 */ mr r4, r30 +/* 80220580 0021D4E0 4B FD 4D 11 */ bl UpdateDest__10CPatternedFR13CStateManager +/* 80220584 0021D4E4 48 00 00 10 */ b lbl_80220594 +lbl_80220588: +/* 80220588 0021D4E8 7F A3 EB 78 */ mr r3, r29 +/* 8022058C 0021D4EC 38 9D 03 A0 */ addi r4, r29, 0x3a0 +/* 80220590 0021D4F0 4B E5 C5 CD */ bl SetDestPos__10CPatternedFRC9CVector3f +lbl_80220594: +/* 80220594 0021D4F4 C0 1D 02 E0 */ lfs f0, 0x2e0(r29) +/* 80220598 0021D4F8 7F A3 EB 78 */ mr r3, r29 +/* 8022059C 0021D4FC D0 1D 08 B8 */ stfs f0, 0x8b8(r29) +/* 802205A0 0021D500 C0 1D 02 E4 */ lfs f0, 0x2e4(r29) +/* 802205A4 0021D504 D0 1D 08 BC */ stfs f0, 0x8bc(r29) +/* 802205A8 0021D508 C0 1D 02 E8 */ lfs f0, 0x2e8(r29) +/* 802205AC 0021D50C D0 1D 08 C0 */ stfs f0, 0x8c0(r29) +/* 802205B0 0021D510 81 9D 00 00 */ lwz r12, 0(r29) +/* 802205B4 0021D514 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 802205B8 0021D518 7D 89 03 A6 */ mtctr r12 +/* 802205BC 0021D51C 4E 80 04 21 */ bctrl +/* 802205C0 0021D520 28 03 00 00 */ cmplwi r3, 0 +/* 802205C4 0021D524 41 82 00 F8 */ beq lbl_802206BC +/* 802205C8 0021D528 7F A3 EB 78 */ mr r3, r29 +/* 802205CC 0021D52C 38 80 00 00 */ li r4, 0 +/* 802205D0 0021D530 4B FF DA CD */ bl sub_8021e09c +/* 802205D4 0021D534 FC 20 F8 90 */ fmr f1, f31 +/* 802205D8 0021D538 7F A3 EB 78 */ mr r3, r29 +/* 802205DC 0021D53C 7F C4 F3 78 */ mr r4, r30 +/* 802205E0 0021D540 7F E5 FB 78 */ mr r5, r31 +/* 802205E4 0021D544 4B FD 60 E9 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 802205E8 0021D548 48 00 00 D4 */ b lbl_802206BC +lbl_802205EC: +/* 802205EC 0021D54C 81 83 00 00 */ lwz r12, 0(r3) +/* 802205F0 0021D550 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 802205F4 0021D554 7D 89 03 A6 */ mtctr r12 +/* 802205F8 0021D558 4E 80 04 21 */ bctrl +/* 802205FC 0021D55C 28 03 00 00 */ cmplwi r3, 0 +/* 80220600 0021D560 41 82 00 58 */ beq lbl_80220658 +/* 80220604 0021D564 7F A3 EB 78 */ mr r3, r29 +/* 80220608 0021D568 7F C4 F3 78 */ mr r4, r30 +/* 8022060C 0021D56C 81 9D 00 00 */ lwz r12, 0(r29) +/* 80220610 0021D570 C0 22 B4 04 */ lfs f1, lbl_805AD124@sda21(r2) +/* 80220614 0021D574 81 8C 01 90 */ lwz r12, 0x190(r12) +/* 80220618 0021D578 7D 89 03 A6 */ mtctr r12 +/* 8022061C 0021D57C 4E 80 04 21 */ bctrl +/* 80220620 0021D580 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80220624 0021D584 40 82 00 34 */ bne lbl_80220658 +/* 80220628 0021D588 7F A3 EB 78 */ mr r3, r29 +/* 8022062C 0021D58C 38 80 00 00 */ li r4, 0 +/* 80220630 0021D590 4B FF DA 6D */ bl sub_8021e09c +/* 80220634 0021D594 FC 20 F8 90 */ fmr f1, f31 +/* 80220638 0021D598 7F A3 EB 78 */ mr r3, r29 +/* 8022063C 0021D59C 7F C4 F3 78 */ mr r4, r30 +/* 80220640 0021D5A0 7F E5 FB 78 */ mr r5, r31 +/* 80220644 0021D5A4 4B FD 60 89 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 80220648 0021D5A8 7F A3 EB 78 */ mr r3, r29 +/* 8022064C 0021D5AC 7F C4 F3 78 */ mr r4, r30 +/* 80220650 0021D5B0 4B FF D7 B9 */ bl sub_8021de08 +/* 80220654 0021D5B4 48 00 00 68 */ b lbl_802206BC +lbl_80220658: +/* 80220658 0021D5B8 C0 22 B4 44 */ lfs f1, lbl_805AD164@sda21(r2) +/* 8022065C 0021D5BC 7F A5 EB 78 */ mr r5, r29 +/* 80220660 0021D5C0 38 61 00 08 */ addi r3, r1, 8 +/* 80220664 0021D5C4 38 9D 04 5C */ addi r4, r29, 0x45c +/* 80220668 0021D5C8 38 DD 08 B8 */ addi r6, r29, 0x8b8 +/* 8022066C 0021D5CC 4B F1 E4 B1 */ bl Arrival__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3ff +/* 80220670 0021D5D0 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80220674 0021D5D4 C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) +/* 80220678 0021D5D8 C0 C1 00 08 */ lfs f6, 8(r1) +/* 8022067C 0021D5DC 38 81 00 14 */ addi r4, r1, 0x14 +/* 80220680 0021D5E0 C0 A1 00 0C */ lfs f5, 0xc(r1) +/* 80220684 0021D5E4 C0 81 00 10 */ lfs f4, 0x10(r1) +/* 80220688 0021D5E8 C0 43 00 04 */ lfs f2, 4(r3) +/* 8022068C 0021D5EC C0 23 00 08 */ lfs f1, 8(r3) +/* 80220690 0021D5F0 C0 02 B4 18 */ lfs f0, lbl_805AD138@sda21(r2) +/* 80220694 0021D5F4 D0 C1 00 14 */ stfs f6, 0x14(r1) +/* 80220698 0021D5F8 D0 A1 00 18 */ stfs f5, 0x18(r1) +/* 8022069C 0021D5FC D0 81 00 1C */ stfs f4, 0x1c(r1) +/* 802206A0 0021D600 D0 61 00 20 */ stfs f3, 0x20(r1) +/* 802206A4 0021D604 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 802206A8 0021D608 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 802206AC 0021D60C D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 802206B0 0021D610 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 802206B4 0021D614 38 63 00 04 */ addi r3, r3, 4 +/* 802206B8 0021D618 4B F1 10 61 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +lbl_802206BC: +/* 802206BC 0021D61C E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 802206C0 0021D620 80 01 00 54 */ lwz r0, 0x54(r1) +/* 802206C4 0021D624 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 802206C8 0021D628 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 802206CC 0021D62C 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 802206D0 0021D630 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 802206D4 0021D634 7C 08 03 A6 */ mtlr r0 +/* 802206D8 0021D638 38 21 00 50 */ addi r1, r1, 0x50 +/* 802206DC 0021D63C 4E 80 00 20 */ blr + +.global Patrol__9CBabygothFR13CStateManager9EStateMsgf +Patrol__9CBabygothFR13CStateManager9EStateMsgf: +/* 802206E0 0021D640 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 802206E4 0021D644 7C 08 02 A6 */ mflr r0 +/* 802206E8 0021D648 90 01 00 24 */ stw r0, 0x24(r1) +/* 802206EC 0021D64C DB E1 00 18 */ stfd f31, 0x18(r1) +/* 802206F0 0021D650 FF E0 08 90 */ fmr f31, f1 +/* 802206F4 0021D654 93 E1 00 14 */ stw r31, 0x14(r1) +/* 802206F8 0021D658 7C BF 2B 78 */ mr r31, r5 +/* 802206FC 0021D65C 2C 1F 00 01 */ cmpwi r31, 1 +/* 80220700 0021D660 93 C1 00 10 */ stw r30, 0x10(r1) +/* 80220704 0021D664 7C 9E 23 78 */ mr r30, r4 +/* 80220708 0021D668 93 A1 00 0C */ stw r29, 0xc(r1) +/* 8022070C 0021D66C 7C 7D 1B 78 */ mr r29, r3 +/* 80220710 0021D670 40 82 00 08 */ bne lbl_80220718 +/* 80220714 0021D674 4B FF D6 F5 */ bl sub_8021de08 +lbl_80220718: +/* 80220718 0021D678 FC 20 F8 90 */ fmr f1, f31 +/* 8022071C 0021D67C 7F A3 EB 78 */ mr r3, r29 +/* 80220720 0021D680 7F C4 F3 78 */ mr r4, r30 +/* 80220724 0021D684 7F E5 FB 78 */ mr r5, r31 +/* 80220728 0021D688 4B FD 67 4D */ bl Patrol__10CPatternedFR13CStateManager9EStateMsgf +/* 8022072C 0021D68C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80220730 0021D690 CB E1 00 18 */ lfd f31, 0x18(r1) +/* 80220734 0021D694 83 E1 00 14 */ lwz r31, 0x14(r1) +/* 80220738 0021D698 83 C1 00 10 */ lwz r30, 0x10(r1) +/* 8022073C 0021D69C 83 A1 00 0C */ lwz r29, 0xc(r1) +/* 80220740 0021D6A0 7C 08 03 A6 */ mtlr r0 +/* 80220744 0021D6A4 38 21 00 20 */ addi r1, r1, 0x20 +/* 80220748 0021D6A8 4E 80 00 20 */ blr + +.global Approach__9CBabygothFR13CStateManager9EStateMsgf +Approach__9CBabygothFR13CStateManager9EStateMsgf: +/* 8022074C 0021D6AC 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 80220750 0021D6B0 7C 08 02 A6 */ mflr r0 +/* 80220754 0021D6B4 90 01 00 74 */ stw r0, 0x74(r1) +/* 80220758 0021D6B8 DB E1 00 60 */ stfd f31, 0x60(r1) +/* 8022075C 0021D6BC F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 80220760 0021D6C0 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 80220764 0021D6C4 93 C1 00 58 */ stw r30, 0x58(r1) +/* 80220768 0021D6C8 93 A1 00 54 */ stw r29, 0x54(r1) +/* 8022076C 0021D6CC 7C BF 2B 78 */ mr r31, r5 +/* 80220770 0021D6D0 FF E0 08 90 */ fmr f31, f1 +/* 80220774 0021D6D4 2C 1F 00 01 */ cmpwi r31, 1 +/* 80220778 0021D6D8 7C 7D 1B 78 */ mr r29, r3 +/* 8022077C 0021D6DC 7C 9E 23 78 */ mr r30, r4 +/* 80220780 0021D6E0 41 82 00 BC */ beq lbl_8022083C +/* 80220784 0021D6E4 40 80 00 10 */ bge lbl_80220794 +/* 80220788 0021D6E8 2C 1F 00 00 */ cmpwi r31, 0 +/* 8022078C 0021D6EC 40 80 00 14 */ bge lbl_802207A0 +/* 80220790 0021D6F0 48 00 03 40 */ b lbl_80220AD0 +lbl_80220794: +/* 80220794 0021D6F4 2C 1F 00 03 */ cmpwi r31, 3 +/* 80220798 0021D6F8 40 80 03 38 */ bge lbl_80220AD0 +/* 8022079C 0021D6FC 48 00 03 1C */ b lbl_80220AB8 +lbl_802207A0: +/* 802207A0 0021D700 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 802207A4 0021D704 38 80 00 01 */ li r4, 1 +/* 802207A8 0021D708 4B F1 A2 31 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 802207AC 0021D70C 80 BE 08 4C */ lwz r5, 0x84c(r30) +/* 802207B0 0021D710 38 7D 08 F0 */ addi r3, r29, 0x8f0 +/* 802207B4 0021D714 38 81 00 0C */ addi r4, r1, 0xc +/* 802207B8 0021D718 A0 05 00 08 */ lhz r0, 8(r5) +/* 802207BC 0021D71C B0 01 00 08 */ sth r0, 8(r1) +/* 802207C0 0021D720 B0 01 00 0C */ sth r0, 0xc(r1) +/* 802207C4 0021D724 4B F5 4A 55 */ bl SetTarget__13CBoneTrackingF9TUniqueId +/* 802207C8 0021D728 38 7D 08 F0 */ addi r3, r29, 0x8f0 +/* 802207CC 0021D72C 38 80 00 01 */ li r4, 1 +/* 802207D0 0021D730 4B F5 4A 55 */ bl SetActive__13CBoneTrackingFb +/* 802207D4 0021D734 7F A3 EB 78 */ mr r3, r29 +/* 802207D8 0021D738 7F C4 F3 78 */ mr r4, r30 +/* 802207DC 0021D73C 38 BD 02 E0 */ addi r5, r29, 0x2e0 +/* 802207E0 0021D740 4B FF EE D1 */ bl sub_8021f6b0 +/* 802207E4 0021D744 7F A3 EB 78 */ mr r3, r29 +/* 802207E8 0021D748 38 80 00 00 */ li r4, 0 +/* 802207EC 0021D74C 4B FF D8 B1 */ bl sub_8021e09c +/* 802207F0 0021D750 FC 20 F8 90 */ fmr f1, f31 +/* 802207F4 0021D754 7F A3 EB 78 */ mr r3, r29 +/* 802207F8 0021D758 7F C4 F3 78 */ mr r4, r30 +/* 802207FC 0021D75C 38 A0 00 00 */ li r5, 0 +/* 80220800 0021D760 4B FD 5E CD */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 80220804 0021D764 88 1D 0A 49 */ lbz r0, 0xa49(r29) +/* 80220808 0021D768 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 8022080C 0021D76C 40 82 00 10 */ bne lbl_8022081C +/* 80220810 0021D770 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 80220814 0021D774 38 63 00 04 */ addi r3, r3, 4 +/* 80220818 0021D778 4B F1 0C 91 */ bl ClearLocomotionCmds__16CBodyStateCmdMgrFv +lbl_8022081C: +/* 8022081C 0021D77C 88 1D 0A 48 */ lbz r0, 0xa48(r29) +/* 80220820 0021D780 38 60 00 01 */ li r3, 1 +/* 80220824 0021D784 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f +/* 80220828 0021D788 98 1D 0A 48 */ stb r0, 0xa48(r29) +/* 8022082C 0021D78C 88 1D 0A 49 */ lbz r0, 0xa49(r29) +/* 80220830 0021D790 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 80220834 0021D794 98 1D 0A 49 */ stb r0, 0xa49(r29) +/* 80220838 0021D798 48 00 02 98 */ b lbl_80220AD0 +lbl_8022083C: +/* 8022083C 0021D79C 38 80 00 01 */ li r4, 1 +/* 80220840 0021D7A0 4B FF D8 5D */ bl sub_8021e09c +/* 80220844 0021D7A4 88 1D 0A 48 */ lbz r0, 0xa48(r29) +/* 80220848 0021D7A8 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 8022084C 0021D7AC 41 82 00 E8 */ beq lbl_80220934 +/* 80220850 0021D7B0 C0 1D 08 B8 */ lfs f0, 0x8b8(r29) +/* 80220854 0021D7B4 38 7D 07 D0 */ addi r3, r29, 0x7d0 +/* 80220858 0021D7B8 38 81 00 1C */ addi r4, r1, 0x1c +/* 8022085C 0021D7BC 38 BD 02 E0 */ addi r5, r29, 0x2e0 +/* 80220860 0021D7C0 D0 1D 02 E0 */ stfs f0, 0x2e0(r29) +/* 80220864 0021D7C4 C0 1D 08 BC */ lfs f0, 0x8bc(r29) +/* 80220868 0021D7C8 D0 1D 02 E4 */ stfs f0, 0x2e4(r29) +/* 8022086C 0021D7CC C0 1D 08 C0 */ lfs f0, 0x8c0(r29) +/* 80220870 0021D7D0 D0 1D 02 E8 */ stfs f0, 0x2e8(r29) +/* 80220874 0021D7D4 C0 5D 00 60 */ lfs f2, 0x60(r29) +/* 80220878 0021D7D8 C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 8022087C 0021D7DC C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 80220880 0021D7E0 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 80220884 0021D7E4 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 80220888 0021D7E8 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 8022088C 0021D7EC 4B FA 68 71 */ bl FindClosestReachablePoint__15CPathFindSearchCFRC9CVector3fR9CVector3f +/* 80220890 0021D7F0 2C 03 00 00 */ cmpwi r3, 0 +/* 80220894 0021D7F4 40 82 00 90 */ bne lbl_80220924 +/* 80220898 0021D7F8 C0 BD 00 50 */ lfs f5, 0x50(r29) +/* 8022089C 0021D7FC C0 1D 02 E4 */ lfs f0, 0x2e4(r29) +/* 802208A0 0021D800 C0 DD 00 40 */ lfs f6, 0x40(r29) +/* 802208A4 0021D804 EC 20 28 28 */ fsubs f1, f0, f5 +/* 802208A8 0021D808 C0 1D 02 E0 */ lfs f0, 0x2e0(r29) +/* 802208AC 0021D80C C0 9D 00 60 */ lfs f4, 0x60(r29) +/* 802208B0 0021D810 EC 60 30 28 */ fsubs f3, f0, f6 +/* 802208B4 0021D814 C0 1D 02 E8 */ lfs f0, 0x2e8(r29) +/* 802208B8 0021D818 EC 21 00 72 */ fmuls f1, f1, f1 +/* 802208BC 0021D81C EC 40 20 28 */ fsubs f2, f0, f4 +/* 802208C0 0021D820 C0 02 B4 00 */ lfs f0, lbl_805AD120@sda21(r2) +/* 802208C4 0021D824 EC 23 08 FA */ fmadds f1, f3, f3, f1 +/* 802208C8 0021D828 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 802208CC 0021D82C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802208D0 0021D830 40 80 00 10 */ bge lbl_802208E0 +/* 802208D4 0021D834 D0 DD 02 E0 */ stfs f6, 0x2e0(r29) +/* 802208D8 0021D838 D0 BD 02 E4 */ stfs f5, 0x2e4(r29) +/* 802208DC 0021D83C D0 9D 02 E8 */ stfs f4, 0x2e8(r29) +lbl_802208E0: +/* 802208E0 0021D840 C0 1D 02 E0 */ lfs f0, 0x2e0(r29) +/* 802208E4 0021D844 FC 20 F8 90 */ fmr f1, f31 +/* 802208E8 0021D848 7F A3 EB 78 */ mr r3, r29 +/* 802208EC 0021D84C 7F C4 F3 78 */ mr r4, r30 +/* 802208F0 0021D850 D0 1D 08 B8 */ stfs f0, 0x8b8(r29) +/* 802208F4 0021D854 38 A0 00 00 */ li r5, 0 +/* 802208F8 0021D858 C0 1D 02 E4 */ lfs f0, 0x2e4(r29) +/* 802208FC 0021D85C D0 1D 08 BC */ stfs f0, 0x8bc(r29) +/* 80220900 0021D860 C0 1D 02 E8 */ lfs f0, 0x2e8(r29) +/* 80220904 0021D864 D0 1D 08 C0 */ stfs f0, 0x8c0(r29) +/* 80220908 0021D868 4B FD 5D C5 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 8022090C 0021D86C 88 1D 0A 49 */ lbz r0, 0xa49(r29) +/* 80220910 0021D870 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 80220914 0021D874 40 82 00 10 */ bne lbl_80220924 +/* 80220918 0021D878 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 8022091C 0021D87C 38 63 00 04 */ addi r3, r3, 4 +/* 80220920 0021D880 4B F1 0B 89 */ bl ClearLocomotionCmds__16CBodyStateCmdMgrFv +lbl_80220924: +/* 80220924 0021D884 88 1D 0A 48 */ lbz r0, 0xa48(r29) +/* 80220928 0021D888 38 60 00 00 */ li r3, 0 +/* 8022092C 0021D88C 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f +/* 80220930 0021D890 98 1D 0A 48 */ stb r0, 0xa48(r29) +lbl_80220934: +/* 80220934 0021D894 7F A3 EB 78 */ mr r3, r29 +/* 80220938 0021D898 7F C4 F3 78 */ mr r4, r30 +/* 8022093C 0021D89C 4B FF D6 29 */ bl sub_8021df64 +/* 80220940 0021D8A0 54 60 06 3E */ clrlwi r0, r3, 0x18 +/* 80220944 0021D8A4 88 9D 0A 49 */ lbz r4, 0xa49(r29) +/* 80220948 0021D8A8 7C 00 00 34 */ cntlzw r0, r0 +/* 8022094C 0021D8AC 54 03 D9 7E */ srwi r3, r0, 5 +/* 80220950 0021D8B0 54 80 E7 FE */ rlwinm r0, r4, 0x1c, 0x1f, 0x1f +/* 80220954 0021D8B4 7C 00 18 38 */ and r0, r0, r3 +/* 80220958 0021D8B8 50 04 26 F6 */ rlwimi r4, r0, 4, 0x1b, 0x1b +/* 8022095C 0021D8BC 98 9D 0A 49 */ stb r4, 0xa49(r29) +/* 80220960 0021D8C0 88 1D 0A 49 */ lbz r0, 0xa49(r29) +/* 80220964 0021D8C4 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 80220968 0021D8C8 41 82 00 7C */ beq lbl_802209E4 +/* 8022096C 0021D8CC 7F A3 EB 78 */ mr r3, r29 +/* 80220970 0021D8D0 81 9D 00 00 */ lwz r12, 0(r29) +/* 80220974 0021D8D4 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 80220978 0021D8D8 7D 89 03 A6 */ mtctr r12 +/* 8022097C 0021D8DC 4E 80 04 21 */ bctrl +/* 80220980 0021D8E0 28 03 00 00 */ cmplwi r3, 0 +/* 80220984 0021D8E4 41 82 00 60 */ beq lbl_802209E4 +/* 80220988 0021D8E8 7F A3 EB 78 */ mr r3, r29 +/* 8022098C 0021D8EC 7F C4 F3 78 */ mr r4, r30 +/* 80220990 0021D8F0 81 9D 00 00 */ lwz r12, 0(r29) +/* 80220994 0021D8F4 C0 22 B4 04 */ lfs f1, lbl_805AD124@sda21(r2) +/* 80220998 0021D8F8 81 8C 01 90 */ lwz r12, 0x190(r12) +/* 8022099C 0021D8FC 7D 89 03 A6 */ mtctr r12 +/* 802209A0 0021D900 4E 80 04 21 */ bctrl +/* 802209A4 0021D904 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 802209A8 0021D908 40 82 00 3C */ bne lbl_802209E4 +/* 802209AC 0021D90C 80 7D 07 D4 */ lwz r3, 0x7d4(r29) +/* 802209B0 0021D910 80 9D 08 98 */ lwz r4, 0x898(r29) +/* 802209B4 0021D914 38 03 FF FF */ addi r0, r3, -1 +/* 802209B8 0021D918 7C 04 00 00 */ cmpw r4, r0 +/* 802209BC 0021D91C 40 80 00 28 */ bge lbl_802209E4 +/* 802209C0 0021D920 FC 20 F8 90 */ fmr f1, f31 +/* 802209C4 0021D924 7F A3 EB 78 */ mr r3, r29 +/* 802209C8 0021D928 7F C4 F3 78 */ mr r4, r30 +/* 802209CC 0021D92C 7F E5 FB 78 */ mr r5, r31 +/* 802209D0 0021D930 4B FD 5C FD */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 802209D4 0021D934 7F A3 EB 78 */ mr r3, r29 +/* 802209D8 0021D938 7F C4 F3 78 */ mr r4, r30 +/* 802209DC 0021D93C 4B FF D4 2D */ bl sub_8021de08 +/* 802209E0 0021D940 48 00 00 C4 */ b lbl_80220AA4 +lbl_802209E4: +/* 802209E4 0021D944 80 BE 08 4C */ lwz r5, 0x84c(r30) +/* 802209E8 0021D948 7F A3 EB 78 */ mr r3, r29 +/* 802209EC 0021D94C C0 1D 00 50 */ lfs f0, 0x50(r29) +/* 802209F0 0021D950 7F C4 F3 78 */ mr r4, r30 +/* 802209F4 0021D954 C0 45 00 50 */ lfs f2, 0x50(r5) +/* 802209F8 0021D958 C0 65 00 60 */ lfs f3, 0x60(r5) +/* 802209FC 0021D95C C0 3D 00 60 */ lfs f1, 0x60(r29) +/* 80220A00 0021D960 EC 82 00 28 */ fsubs f4, f2, f0 +/* 80220A04 0021D964 C0 45 00 40 */ lfs f2, 0x40(r5) +/* 80220A08 0021D968 C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 80220A0C 0021D96C EC 63 08 28 */ fsubs f3, f3, f1 +/* 80220A10 0021D970 C0 22 B4 3C */ lfs f1, lbl_805AD15C@sda21(r2) +/* 80220A14 0021D974 EC 02 00 28 */ fsubs f0, f2, f0 +/* 80220A18 0021D978 D0 81 00 2C */ stfs f4, 0x2c(r1) +/* 80220A1C 0021D97C D0 61 00 30 */ stfs f3, 0x30(r1) +/* 80220A20 0021D980 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 80220A24 0021D984 81 9D 00 00 */ lwz r12, 0(r29) +/* 80220A28 0021D988 81 8C 01 E8 */ lwz r12, 0x1e8(r12) +/* 80220A2C 0021D98C 7D 89 03 A6 */ mtctr r12 +/* 80220A30 0021D990 4E 80 04 21 */ bctrl +/* 80220A34 0021D994 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80220A38 0021D998 41 82 00 6C */ beq lbl_80220AA4 +/* 80220A3C 0021D99C 38 61 00 28 */ addi r3, r1, 0x28 +/* 80220A40 0021D9A0 48 0F 3C B9 */ bl CanBeNormalized__9CVector3fCFv +/* 80220A44 0021D9A4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80220A48 0021D9A8 41 82 00 5C */ beq lbl_80220AA4 +/* 80220A4C 0021D9AC 38 61 00 10 */ addi r3, r1, 0x10 +/* 80220A50 0021D9B0 38 81 00 28 */ addi r4, r1, 0x28 +/* 80220A54 0021D9B4 48 0F 3D FD */ bl AsNormalized__9CVector3fCFv +/* 80220A58 0021D9B8 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80220A5C 0021D9BC C4 C3 66 A0 */ lfsu f6, skZero3f@l(r3) +/* 80220A60 0021D9C0 C0 61 00 10 */ lfs f3, 0x10(r1) +/* 80220A64 0021D9C4 38 81 00 34 */ addi r4, r1, 0x34 +/* 80220A68 0021D9C8 C0 41 00 14 */ lfs f2, 0x14(r1) +/* 80220A6C 0021D9CC C0 A3 00 04 */ lfs f5, 4(r3) +/* 80220A70 0021D9D0 C0 83 00 08 */ lfs f4, 8(r3) +/* 80220A74 0021D9D4 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 80220A78 0021D9D8 C0 02 B4 18 */ lfs f0, lbl_805AD138@sda21(r2) +/* 80220A7C 0021D9DC D0 C1 00 34 */ stfs f6, 0x34(r1) +/* 80220A80 0021D9E0 D0 A1 00 38 */ stfs f5, 0x38(r1) +/* 80220A84 0021D9E4 D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 80220A88 0021D9E8 D0 61 00 40 */ stfs f3, 0x40(r1) +/* 80220A8C 0021D9EC D0 41 00 44 */ stfs f2, 0x44(r1) +/* 80220A90 0021D9F0 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 80220A94 0021D9F4 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 80220A98 0021D9F8 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 80220A9C 0021D9FC 38 63 00 04 */ addi r3, r3, 4 +/* 80220AA0 0021DA00 4B F1 0C 79 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +lbl_80220AA4: +/* 80220AA4 0021DA04 88 1D 0A 49 */ lbz r0, 0xa49(r29) +/* 80220AA8 0021DA08 38 60 00 01 */ li r3, 1 +/* 80220AAC 0021DA0C 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 80220AB0 0021DA10 98 1D 0A 49 */ stb r0, 0xa49(r29) +/* 80220AB4 0021DA14 48 00 00 1C */ b lbl_80220AD0 +lbl_80220AB8: +/* 80220AB8 0021DA18 38 7D 08 F0 */ addi r3, r29, 0x8f0 +/* 80220ABC 0021DA1C 38 80 00 00 */ li r4, 0 +/* 80220AC0 0021DA20 4B F5 47 65 */ bl SetActive__13CBoneTrackingFb +/* 80220AC4 0021DA24 7F A3 EB 78 */ mr r3, r29 +/* 80220AC8 0021DA28 38 80 00 00 */ li r4, 0 +/* 80220ACC 0021DA2C 4B FF D5 D1 */ bl sub_8021e09c +lbl_80220AD0: +/* 80220AD0 0021DA30 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 80220AD4 0021DA34 80 01 00 74 */ lwz r0, 0x74(r1) +/* 80220AD8 0021DA38 CB E1 00 60 */ lfd f31, 0x60(r1) +/* 80220ADC 0021DA3C 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 80220AE0 0021DA40 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 80220AE4 0021DA44 83 A1 00 54 */ lwz r29, 0x54(r1) +/* 80220AE8 0021DA48 7C 08 03 A6 */ mtlr r0 +/* 80220AEC 0021DA4C 38 21 00 70 */ addi r1, r1, 0x70 +/* 80220AF0 0021DA50 4E 80 00 20 */ blr + +.global PathFind__9CBabygothFR13CStateManager9EStateMsgf +PathFind__9CBabygothFR13CStateManager9EStateMsgf: +/* 80220AF4 0021DA54 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 80220AF8 0021DA58 7C 08 02 A6 */ mflr r0 +/* 80220AFC 0021DA5C 90 01 01 04 */ stw r0, 0x104(r1) +/* 80220B00 0021DA60 DB E1 00 F0 */ stfd f31, 0xf0(r1) +/* 80220B04 0021DA64 F3 E1 00 F8 */ psq_st f31, 248(r1), 0, qr0 +/* 80220B08 0021DA68 93 E1 00 EC */ stw r31, 0xec(r1) +/* 80220B0C 0021DA6C 93 C1 00 E8 */ stw r30, 0xe8(r1) +/* 80220B10 0021DA70 93 A1 00 E4 */ stw r29, 0xe4(r1) +/* 80220B14 0021DA74 7C BD 2B 78 */ mr r29, r5 +/* 80220B18 0021DA78 FF E0 08 90 */ fmr f31, f1 +/* 80220B1C 0021DA7C 2C 1D 00 01 */ cmpwi r29, 1 +/* 80220B20 0021DA80 7C 7E 1B 78 */ mr r30, r3 +/* 80220B24 0021DA84 7C 9F 23 78 */ mr r31, r4 +/* 80220B28 0021DA88 41 82 00 D4 */ beq lbl_80220BFC +/* 80220B2C 0021DA8C 40 80 00 10 */ bge lbl_80220B3C +/* 80220B30 0021DA90 2C 1D 00 00 */ cmpwi r29, 0 +/* 80220B34 0021DA94 40 80 00 14 */ bge lbl_80220B48 +/* 80220B38 0021DA98 48 00 03 AC */ b lbl_80220EE4 +lbl_80220B3C: +/* 80220B3C 0021DA9C 2C 1D 00 03 */ cmpwi r29, 3 +/* 80220B40 0021DAA0 40 80 03 A4 */ bge lbl_80220EE4 +/* 80220B44 0021DAA4 48 00 03 94 */ b lbl_80220ED8 +lbl_80220B48: +/* 80220B48 0021DAA8 88 1E 0A 49 */ lbz r0, 0xa49(r30) +/* 80220B4C 0021DAAC 38 A0 00 00 */ li r5, 0 +/* 80220B50 0021DAB0 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 80220B54 0021DAB4 38 60 00 01 */ li r3, 1 +/* 80220B58 0021DAB8 98 1E 0A 49 */ stb r0, 0xa49(r30) +/* 80220B5C 0021DABC 38 80 00 01 */ li r4, 1 +/* 80220B60 0021DAC0 C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 80220B64 0021DAC4 88 1E 0A 49 */ lbz r0, 0xa49(r30) +/* 80220B68 0021DAC8 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 80220B6C 0021DACC 98 1E 0A 49 */ stb r0, 0xa49(r30) +/* 80220B70 0021DAD0 88 1E 0A 48 */ lbz r0, 0xa48(r30) +/* 80220B74 0021DAD4 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 80220B78 0021DAD8 98 1E 0A 48 */ stb r0, 0xa48(r30) +/* 80220B7C 0021DADC D0 1E 08 E8 */ stfs f0, 0x8e8(r30) +/* 80220B80 0021DAE0 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80220B84 0021DAE4 4B F1 9E 55 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 80220B88 0021DAE8 80 BF 08 4C */ lwz r5, 0x84c(r31) +/* 80220B8C 0021DAEC 38 7E 08 F0 */ addi r3, r30, 0x8f0 +/* 80220B90 0021DAF0 38 81 00 0C */ addi r4, r1, 0xc +/* 80220B94 0021DAF4 A0 05 00 08 */ lhz r0, 8(r5) +/* 80220B98 0021DAF8 B0 01 00 08 */ sth r0, 8(r1) +/* 80220B9C 0021DAFC B0 01 00 0C */ sth r0, 0xc(r1) +/* 80220BA0 0021DB00 4B F5 46 79 */ bl SetTarget__13CBoneTrackingF9TUniqueId +/* 80220BA4 0021DB04 38 7E 08 F0 */ addi r3, r30, 0x8f0 +/* 80220BA8 0021DB08 38 80 00 01 */ li r4, 1 +/* 80220BAC 0021DB0C 4B F5 46 79 */ bl SetActive__13CBoneTrackingFb +/* 80220BB0 0021DB10 7F C3 F3 78 */ mr r3, r30 +/* 80220BB4 0021DB14 7F E4 FB 78 */ mr r4, r31 +/* 80220BB8 0021DB18 38 BE 02 E0 */ addi r5, r30, 0x2e0 +/* 80220BBC 0021DB1C 4B FF EA F5 */ bl sub_8021f6b0 +/* 80220BC0 0021DB20 C0 1E 02 E0 */ lfs f0, 0x2e0(r30) +/* 80220BC4 0021DB24 7F C3 F3 78 */ mr r3, r30 +/* 80220BC8 0021DB28 38 80 00 00 */ li r4, 0 +/* 80220BCC 0021DB2C D0 1E 08 B8 */ stfs f0, 0x8b8(r30) +/* 80220BD0 0021DB30 C0 1E 02 E4 */ lfs f0, 0x2e4(r30) +/* 80220BD4 0021DB34 D0 1E 08 BC */ stfs f0, 0x8bc(r30) +/* 80220BD8 0021DB38 C0 1E 02 E8 */ lfs f0, 0x2e8(r30) +/* 80220BDC 0021DB3C D0 1E 08 C0 */ stfs f0, 0x8c0(r30) +/* 80220BE0 0021DB40 4B FF D4 BD */ bl sub_8021e09c +/* 80220BE4 0021DB44 FC 20 F8 90 */ fmr f1, f31 +/* 80220BE8 0021DB48 7F C3 F3 78 */ mr r3, r30 +/* 80220BEC 0021DB4C 7F E4 FB 78 */ mr r4, r31 +/* 80220BF0 0021DB50 7F A5 EB 78 */ mr r5, r29 +/* 80220BF4 0021DB54 4B FD 5A D9 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 80220BF8 0021DB58 48 00 02 EC */ b lbl_80220EE4 +lbl_80220BFC: +/* 80220BFC 0021DB5C 38 80 00 00 */ li r4, 0 +/* 80220C00 0021DB60 4B FF D4 9D */ bl sub_8021e09c +/* 80220C04 0021DB64 7F C3 F3 78 */ mr r3, r30 +/* 80220C08 0021DB68 81 9E 00 00 */ lwz r12, 0(r30) +/* 80220C0C 0021DB6C 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 80220C10 0021DB70 7D 89 03 A6 */ mtctr r12 +/* 80220C14 0021DB74 4E 80 04 21 */ bctrl +/* 80220C18 0021DB78 28 03 00 00 */ cmplwi r3, 0 +/* 80220C1C 0021DB7C 41 82 02 1C */ beq lbl_80220E38 +/* 80220C20 0021DB80 7F C3 F3 78 */ mr r3, r30 +/* 80220C24 0021DB84 7F E4 FB 78 */ mr r4, r31 +/* 80220C28 0021DB88 81 9E 00 00 */ lwz r12, 0(r30) +/* 80220C2C 0021DB8C C0 22 B4 04 */ lfs f1, lbl_805AD124@sda21(r2) +/* 80220C30 0021DB90 81 8C 01 90 */ lwz r12, 0x190(r12) +/* 80220C34 0021DB94 7D 89 03 A6 */ mtctr r12 +/* 80220C38 0021DB98 4E 80 04 21 */ bctrl +/* 80220C3C 0021DB9C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80220C40 0021DBA0 40 82 01 F8 */ bne lbl_80220E38 +/* 80220C44 0021DBA4 80 7E 06 F0 */ lwz r3, 0x6f0(r30) +/* 80220C48 0021DBA8 80 9E 07 B4 */ lwz r4, 0x7b4(r30) +/* 80220C4C 0021DBAC 38 03 FF FF */ addi r0, r3, -1 +/* 80220C50 0021DBB0 7C 04 00 00 */ cmpw r4, r0 +/* 80220C54 0021DBB4 40 80 01 E4 */ bge lbl_80220E38 +/* 80220C58 0021DBB8 FC 20 F8 90 */ fmr f1, f31 +/* 80220C5C 0021DBBC 7F C3 F3 78 */ mr r3, r30 +/* 80220C60 0021DBC0 7F E4 FB 78 */ mr r4, r31 +/* 80220C64 0021DBC4 7F A5 EB 78 */ mr r5, r29 +/* 80220C68 0021DBC8 4B FD 5A 65 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 80220C6C 0021DBCC C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 80220C70 0021DBD0 38 61 00 7C */ addi r3, r1, 0x7c +/* 80220C74 0021DBD4 D0 1E 08 E8 */ stfs f0, 0x8e8(r30) +/* 80220C78 0021DBD8 80 9E 04 50 */ lwz r4, 0x450(r30) +/* 80220C7C 0021DBDC C0 04 00 04 */ lfs f0, 4(r4) +/* 80220C80 0021DBE0 D0 01 00 7C */ stfs f0, 0x7c(r1) +/* 80220C84 0021DBE4 C0 04 00 08 */ lfs f0, 8(r4) +/* 80220C88 0021DBE8 D0 01 00 80 */ stfs f0, 0x80(r1) +/* 80220C8C 0021DBEC C0 04 00 0C */ lfs f0, 0xc(r4) +/* 80220C90 0021DBF0 D0 01 00 84 */ stfs f0, 0x84(r1) +/* 80220C94 0021DBF4 48 0F 3A 65 */ bl CanBeNormalized__9CVector3fCFv +/* 80220C98 0021DBF8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80220C9C 0021DBFC 41 82 00 D8 */ beq lbl_80220D74 +/* 80220CA0 0021DC00 80 FF 08 4C */ lwz r7, 0x84c(r31) +/* 80220CA4 0021DC04 7F C5 F3 78 */ mr r5, r30 +/* 80220CA8 0021DC08 C0 22 B4 14 */ lfs f1, lbl_805AD134@sda21(r2) +/* 80220CAC 0021DC0C 38 61 00 4C */ addi r3, r1, 0x4c +/* 80220CB0 0021DC10 C0 67 00 60 */ lfs f3, 0x60(r7) +/* 80220CB4 0021DC14 38 9E 04 5C */ addi r4, r30, 0x45c +/* 80220CB8 0021DC18 C0 47 00 50 */ lfs f2, 0x50(r7) +/* 80220CBC 0021DC1C 38 C1 00 40 */ addi r6, r1, 0x40 +/* 80220CC0 0021DC20 C0 07 00 40 */ lfs f0, 0x40(r7) +/* 80220CC4 0021DC24 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 80220CC8 0021DC28 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 80220CCC 0021DC2C D0 61 00 48 */ stfs f3, 0x48(r1) +/* 80220CD0 0021DC30 4B F1 DE 4D */ bl Arrival__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3ff +/* 80220CD4 0021DC34 C0 41 00 4C */ lfs f2, 0x4c(r1) +/* 80220CD8 0021DC38 38 61 00 70 */ addi r3, r1, 0x70 +/* 80220CDC 0021DC3C C0 21 00 50 */ lfs f1, 0x50(r1) +/* 80220CE0 0021DC40 C0 01 00 54 */ lfs f0, 0x54(r1) +/* 80220CE4 0021DC44 D0 41 00 70 */ stfs f2, 0x70(r1) +/* 80220CE8 0021DC48 D0 21 00 74 */ stfs f1, 0x74(r1) +/* 80220CEC 0021DC4C D0 01 00 78 */ stfs f0, 0x78(r1) +/* 80220CF0 0021DC50 48 0F 3B C9 */ bl Magnitude__9CVector3fCFv +/* 80220CF4 0021DC54 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80220CF8 0021DC58 FF E0 08 90 */ fmr f31, f1 +/* 80220CFC 0021DC5C 38 63 00 04 */ addi r3, r3, 4 +/* 80220D00 0021DC60 4B F1 07 A9 */ bl ClearLocomotionCmds__16CBodyStateCmdMgrFv +/* 80220D04 0021DC64 38 61 00 28 */ addi r3, r1, 0x28 +/* 80220D08 0021DC68 38 81 00 7C */ addi r4, r1, 0x7c +/* 80220D0C 0021DC6C 48 0F 3B 45 */ bl AsNormalized__9CVector3fCFv +/* 80220D10 0021DC70 C0 01 00 30 */ lfs f0, 0x30(r1) +/* 80220D14 0021DC74 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80220D18 0021DC78 C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) +/* 80220D1C 0021DC7C 38 81 00 C0 */ addi r4, r1, 0xc0 +/* 80220D20 0021DC80 EC DF 00 32 */ fmuls f6, f31, f0 +/* 80220D24 0021DC84 C0 21 00 28 */ lfs f1, 0x28(r1) +/* 80220D28 0021DC88 C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 80220D2C 0021DC8C EC BF 00 72 */ fmuls f5, f31, f1 +/* 80220D30 0021DC90 C0 43 00 04 */ lfs f2, 4(r3) +/* 80220D34 0021DC94 EC 9F 00 32 */ fmuls f4, f31, f0 +/* 80220D38 0021DC98 C0 23 00 08 */ lfs f1, 8(r3) +/* 80220D3C 0021DC9C C0 02 B4 00 */ lfs f0, lbl_805AD120@sda21(r2) +/* 80220D40 0021DCA0 D0 A1 00 C0 */ stfs f5, 0xc0(r1) +/* 80220D44 0021DCA4 D0 81 00 C4 */ stfs f4, 0xc4(r1) +/* 80220D48 0021DCA8 D0 C1 00 C8 */ stfs f6, 0xc8(r1) +/* 80220D4C 0021DCAC D0 61 00 CC */ stfs f3, 0xcc(r1) +/* 80220D50 0021DCB0 D0 41 00 D0 */ stfs f2, 0xd0(r1) +/* 80220D54 0021DCB4 D0 21 00 D4 */ stfs f1, 0xd4(r1) +/* 80220D58 0021DCB8 D0 01 00 D8 */ stfs f0, 0xd8(r1) +/* 80220D5C 0021DCBC 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80220D60 0021DCC0 D0 A1 00 34 */ stfs f5, 0x34(r1) +/* 80220D64 0021DCC4 38 63 00 04 */ addi r3, r3, 4 +/* 80220D68 0021DCC8 D0 81 00 38 */ stfs f4, 0x38(r1) +/* 80220D6C 0021DCCC D0 C1 00 3C */ stfs f6, 0x3c(r1) +/* 80220D70 0021DCD0 4B F1 09 A9 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +lbl_80220D74: +/* 80220D74 0021DCD4 7F C3 F3 78 */ mr r3, r30 +/* 80220D78 0021DCD8 7F E4 FB 78 */ mr r4, r31 +/* 80220D7C 0021DCDC 4B FF D0 8D */ bl sub_8021de08 +/* 80220D80 0021DCE0 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80220D84 0021DCE4 C0 BE 00 58 */ lfs f5, 0x58(r30) +/* 80220D88 0021DCE8 C0 3E 00 48 */ lfs f1, 0x48(r30) +/* 80220D8C 0021DCEC C0 9E 00 38 */ lfs f4, 0x38(r30) +/* 80220D90 0021DCF0 C0 63 00 04 */ lfs f3, 4(r3) +/* 80220D94 0021DCF4 C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 80220D98 0021DCF8 D0 61 00 64 */ stfs f3, 0x64(r1) +/* 80220D9C 0021DCFC C0 43 00 08 */ lfs f2, 8(r3) +/* 80220DA0 0021DD00 EC 21 00 B2 */ fmuls f1, f1, f2 +/* 80220DA4 0021DD04 D0 41 00 68 */ stfs f2, 0x68(r1) +/* 80220DA8 0021DD08 C0 43 00 0C */ lfs f2, 0xc(r3) +/* 80220DAC 0021DD0C EC 24 08 FA */ fmadds f1, f4, f3, f1 +/* 80220DB0 0021DD10 D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 80220DB4 0021DD14 EC 25 08 BA */ fmadds f1, f5, f2, f1 +/* 80220DB8 0021DD18 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80220DBC 0021DD1C 40 80 01 28 */ bge lbl_80220EE4 +/* 80220DC0 0021DD20 38 61 00 7C */ addi r3, r1, 0x7c +/* 80220DC4 0021DD24 48 0F 39 35 */ bl CanBeNormalized__9CVector3fCFv +/* 80220DC8 0021DD28 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80220DCC 0021DD2C 41 82 01 18 */ beq lbl_80220EE4 +/* 80220DD0 0021DD30 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80220DD4 0021DD34 38 63 00 04 */ addi r3, r3, 4 +/* 80220DD8 0021DD38 4B F1 06 D1 */ bl ClearLocomotionCmds__16CBodyStateCmdMgrFv +/* 80220DDC 0021DD3C 38 61 00 1C */ addi r3, r1, 0x1c +/* 80220DE0 0021DD40 38 81 00 64 */ addi r4, r1, 0x64 +/* 80220DE4 0021DD44 48 0F 3A 6D */ bl AsNormalized__9CVector3fCFv +/* 80220DE8 0021DD48 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80220DEC 0021DD4C C4 C3 66 A0 */ lfsu f6, skZero3f@l(r3) +/* 80220DF0 0021DD50 C0 61 00 1C */ lfs f3, 0x1c(r1) +/* 80220DF4 0021DD54 38 81 00 A4 */ addi r4, r1, 0xa4 +/* 80220DF8 0021DD58 C0 41 00 20 */ lfs f2, 0x20(r1) +/* 80220DFC 0021DD5C C0 A3 00 04 */ lfs f5, 4(r3) +/* 80220E00 0021DD60 C0 83 00 08 */ lfs f4, 8(r3) +/* 80220E04 0021DD64 C0 21 00 24 */ lfs f1, 0x24(r1) +/* 80220E08 0021DD68 C0 02 B4 18 */ lfs f0, lbl_805AD138@sda21(r2) +/* 80220E0C 0021DD6C D0 C1 00 A4 */ stfs f6, 0xa4(r1) +/* 80220E10 0021DD70 D0 A1 00 A8 */ stfs f5, 0xa8(r1) +/* 80220E14 0021DD74 D0 81 00 AC */ stfs f4, 0xac(r1) +/* 80220E18 0021DD78 D0 61 00 B0 */ stfs f3, 0xb0(r1) +/* 80220E1C 0021DD7C D0 41 00 B4 */ stfs f2, 0xb4(r1) +/* 80220E20 0021DD80 D0 21 00 B8 */ stfs f1, 0xb8(r1) +/* 80220E24 0021DD84 D0 01 00 BC */ stfs f0, 0xbc(r1) +/* 80220E28 0021DD88 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80220E2C 0021DD8C 38 63 00 04 */ addi r3, r3, 4 +/* 80220E30 0021DD90 4B F1 08 E9 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 80220E34 0021DD94 48 00 00 B0 */ b lbl_80220EE4 +lbl_80220E38: +/* 80220E38 0021DD98 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 80220E3C 0021DD9C 38 61 00 58 */ addi r3, r1, 0x58 +/* 80220E40 0021DDA0 C0 1E 00 50 */ lfs f0, 0x50(r30) +/* 80220E44 0021DDA4 C0 24 00 50 */ lfs f1, 0x50(r4) +/* 80220E48 0021DDA8 C0 64 00 60 */ lfs f3, 0x60(r4) +/* 80220E4C 0021DDAC C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 80220E50 0021DDB0 EC 81 00 28 */ fsubs f4, f1, f0 +/* 80220E54 0021DDB4 C0 24 00 40 */ lfs f1, 0x40(r4) +/* 80220E58 0021DDB8 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 80220E5C 0021DDBC EC 43 10 28 */ fsubs f2, f3, f2 +/* 80220E60 0021DDC0 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80220E64 0021DDC4 D0 81 00 5C */ stfs f4, 0x5c(r1) +/* 80220E68 0021DDC8 D0 41 00 60 */ stfs f2, 0x60(r1) +/* 80220E6C 0021DDCC D0 01 00 58 */ stfs f0, 0x58(r1) +/* 80220E70 0021DDD0 48 0F 38 89 */ bl CanBeNormalized__9CVector3fCFv +/* 80220E74 0021DDD4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80220E78 0021DDD8 41 82 00 6C */ beq lbl_80220EE4 +/* 80220E7C 0021DDDC 38 61 00 10 */ addi r3, r1, 0x10 +/* 80220E80 0021DDE0 38 81 00 58 */ addi r4, r1, 0x58 +/* 80220E84 0021DDE4 48 0F 39 CD */ bl AsNormalized__9CVector3fCFv +/* 80220E88 0021DDE8 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80220E8C 0021DDEC C4 C3 66 A0 */ lfsu f6, skZero3f@l(r3) +/* 80220E90 0021DDF0 C0 61 00 10 */ lfs f3, 0x10(r1) +/* 80220E94 0021DDF4 38 81 00 88 */ addi r4, r1, 0x88 +/* 80220E98 0021DDF8 C0 41 00 14 */ lfs f2, 0x14(r1) +/* 80220E9C 0021DDFC C0 A3 00 04 */ lfs f5, 4(r3) +/* 80220EA0 0021DE00 C0 83 00 08 */ lfs f4, 8(r3) +/* 80220EA4 0021DE04 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 80220EA8 0021DE08 C0 02 B4 18 */ lfs f0, lbl_805AD138@sda21(r2) +/* 80220EAC 0021DE0C D0 C1 00 88 */ stfs f6, 0x88(r1) +/* 80220EB0 0021DE10 D0 A1 00 8C */ stfs f5, 0x8c(r1) +/* 80220EB4 0021DE14 D0 81 00 90 */ stfs f4, 0x90(r1) +/* 80220EB8 0021DE18 D0 61 00 94 */ stfs f3, 0x94(r1) +/* 80220EBC 0021DE1C D0 41 00 98 */ stfs f2, 0x98(r1) +/* 80220EC0 0021DE20 D0 21 00 9C */ stfs f1, 0x9c(r1) +/* 80220EC4 0021DE24 D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 80220EC8 0021DE28 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80220ECC 0021DE2C 38 63 00 04 */ addi r3, r3, 4 +/* 80220ED0 0021DE30 4B F1 08 49 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 80220ED4 0021DE34 48 00 00 10 */ b lbl_80220EE4 +lbl_80220ED8: +/* 80220ED8 0021DE38 38 7E 08 F0 */ addi r3, r30, 0x8f0 +/* 80220EDC 0021DE3C 38 80 00 00 */ li r4, 0 +/* 80220EE0 0021DE40 4B F5 43 45 */ bl SetActive__13CBoneTrackingFb +lbl_80220EE4: +/* 80220EE4 0021DE44 E3 E1 00 F8 */ psq_l f31, 248(r1), 0, qr0 +/* 80220EE8 0021DE48 80 01 01 04 */ lwz r0, 0x104(r1) +/* 80220EEC 0021DE4C CB E1 00 F0 */ lfd f31, 0xf0(r1) +/* 80220EF0 0021DE50 83 E1 00 EC */ lwz r31, 0xec(r1) +/* 80220EF4 0021DE54 83 C1 00 E8 */ lwz r30, 0xe8(r1) +/* 80220EF8 0021DE58 83 A1 00 E4 */ lwz r29, 0xe4(r1) +/* 80220EFC 0021DE5C 7C 08 03 A6 */ mtlr r0 +/* 80220F00 0021DE60 38 21 01 00 */ addi r1, r1, 0x100 +/* 80220F04 0021DE64 4E 80 00 20 */ blr + +.global SpecialAttack__9CBabygothFR13CStateManager9EStateMsgf +SpecialAttack__9CBabygothFR13CStateManager9EStateMsgf: +/* 80220F08 0021DE68 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80220F0C 0021DE6C 7C 08 02 A6 */ mflr r0 +/* 80220F10 0021DE70 2C 05 00 01 */ cmpwi r5, 1 +/* 80220F14 0021DE74 90 01 00 64 */ stw r0, 0x64(r1) +/* 80220F18 0021DE78 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 80220F1C 0021DE7C 7C 7F 1B 78 */ mr r31, r3 +/* 80220F20 0021DE80 93 C1 00 58 */ stw r30, 0x58(r1) +/* 80220F24 0021DE84 7C 9E 23 78 */ mr r30, r4 +/* 80220F28 0021DE88 41 82 00 D0 */ beq lbl_80220FF8 +/* 80220F2C 0021DE8C 40 80 00 10 */ bge lbl_80220F3C +/* 80220F30 0021DE90 2C 05 00 00 */ cmpwi r5, 0 +/* 80220F34 0021DE94 40 80 00 14 */ bge lbl_80220F48 +/* 80220F38 0021DE98 48 00 02 50 */ b lbl_80221188 +lbl_80220F3C: +/* 80220F3C 0021DE9C 2C 05 00 03 */ cmpwi r5, 3 +/* 80220F40 0021DEA0 40 80 02 48 */ bge lbl_80221188 +/* 80220F44 0021DEA4 48 00 01 C0 */ b lbl_80221104 +lbl_80220F48: +/* 80220F48 0021DEA8 88 1F 0A 48 */ lbz r0, 0xa48(r31) +/* 80220F4C 0021DEAC 38 60 00 01 */ li r3, 1 +/* 80220F50 0021DEB0 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 80220F54 0021DEB4 C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 80220F58 0021DEB8 98 1F 0A 48 */ stb r0, 0xa48(r31) +/* 80220F5C 0021DEBC 38 A0 00 00 */ li r5, 0 +/* 80220F60 0021DEC0 7F C3 F3 78 */ mr r3, r30 +/* 80220F64 0021DEC4 38 81 00 24 */ addi r4, r1, 0x24 +/* 80220F68 0021DEC8 D0 1F 08 E8 */ stfs f0, 0x8e8(r31) +/* 80220F6C 0021DECC 88 1F 0A 49 */ lbz r0, 0xa49(r31) +/* 80220F70 0021DED0 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 80220F74 0021DED4 98 1F 0A 49 */ stb r0, 0xa49(r31) +/* 80220F78 0021DED8 A0 1F 06 E8 */ lhz r0, 0x6e8(r31) +/* 80220F7C 0021DEDC B0 01 00 24 */ sth r0, 0x24(r1) +/* 80220F80 0021DEE0 4B E2 B5 F5 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80220F84 0021DEE4 7C 64 1B 78 */ mr r4, r3 +/* 80220F88 0021DEE8 38 61 00 30 */ addi r3, r1, 0x30 +/* 80220F8C 0021DEEC 4B E8 65 E9 */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" +/* 80220F90 0021DEF0 83 C3 00 04 */ lwz r30, 4(r3) +/* 80220F94 0021DEF4 28 1E 00 00 */ cmplwi r30, 0 +/* 80220F98 0021DEF8 41 82 00 54 */ beq lbl_80220FEC +/* 80220F9C 0021DEFC A0 1F 00 08 */ lhz r0, 8(r31) +/* 80220FA0 0021DF00 7F C3 F3 78 */ mr r3, r30 +/* 80220FA4 0021DF04 38 81 00 20 */ addi r4, r1, 0x20 +/* 80220FA8 0021DF08 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 80220FAC 0021DF0C B0 01 00 20 */ sth r0, 0x20(r1) +/* 80220FB0 0021DF10 48 01 81 55 */ bl HasTeamAiRole__10CTeamAiMgrCF9TUniqueId +/* 80220FB4 0021DF14 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80220FB8 0021DF18 41 82 00 34 */ beq lbl_80220FEC +/* 80220FBC 0021DF1C A0 1F 00 08 */ lhz r0, 8(r31) +/* 80220FC0 0021DF20 7F C3 F3 78 */ mr r3, r30 +/* 80220FC4 0021DF24 38 81 00 18 */ addi r4, r1, 0x18 +/* 80220FC8 0021DF28 B0 01 00 14 */ sth r0, 0x14(r1) +/* 80220FCC 0021DF2C B0 01 00 18 */ sth r0, 0x18(r1) +/* 80220FD0 0021DF30 48 01 75 F5 */ bl AddProjectileAttacker__10CTeamAiMgrF9TUniqueId +/* 80220FD4 0021DF34 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80220FD8 0021DF38 38 60 00 04 */ li r3, 4 +/* 80220FDC 0021DF3C 41 82 00 08 */ beq lbl_80220FE4 +/* 80220FE0 0021DF40 38 60 00 00 */ li r3, 0 +lbl_80220FE4: +/* 80220FE4 0021DF44 90 7F 05 68 */ stw r3, 0x568(r31) +/* 80220FE8 0021DF48 48 00 01 A0 */ b lbl_80221188 +lbl_80220FEC: +/* 80220FEC 0021DF4C 38 00 00 00 */ li r0, 0 +/* 80220FF0 0021DF50 90 1F 05 68 */ stw r0, 0x568(r31) +/* 80220FF4 0021DF54 48 00 01 94 */ b lbl_80221188 +lbl_80220FF8: +/* 80220FF8 0021DF58 80 1F 05 68 */ lwz r0, 0x568(r31) +/* 80220FFC 0021DF5C 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 80221000 0021DF60 2C 00 00 03 */ cmpwi r0, 3 +/* 80221004 0021DF64 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 80221008 0021DF68 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 8022100C 0021DF6C C0 03 00 40 */ lfs f0, 0x40(r3) +/* 80221010 0021DF70 41 82 00 D8 */ beq lbl_802210E8 +/* 80221014 0021DF74 40 80 01 74 */ bge lbl_80221188 +/* 80221018 0021DF78 2C 00 00 00 */ cmpwi r0, 0 +/* 8022101C 0021DF7C 41 82 00 08 */ beq lbl_80221024 +/* 80221020 0021DF80 48 00 01 68 */ b lbl_80221188 +lbl_80221024: +/* 80221024 0021DF84 80 FF 04 50 */ lwz r7, 0x450(r31) +/* 80221028 0021DF88 80 07 02 B8 */ lwz r0, 0x2b8(r7) +/* 8022102C 0021DF8C 2C 00 00 12 */ cmpwi r0, 0x12 +/* 80221030 0021DF90 40 82 00 20 */ bne lbl_80221050 +/* 80221034 0021DF94 38 00 00 03 */ li r0, 3 +/* 80221038 0021DF98 C0 22 B4 24 */ lfs f1, lbl_805AD144@sda21(r2) +/* 8022103C 0021DF9C 90 1F 05 68 */ stw r0, 0x568(r31) +/* 80221040 0021DFA0 C0 1F 08 D0 */ lfs f0, 0x8d0(r31) +/* 80221044 0021DFA4 EC 01 00 32 */ fmuls f0, f1, f0 +/* 80221048 0021DFA8 D0 1F 03 B4 */ stfs f0, 0x3b4(r31) +/* 8022104C 0021DFAC 48 00 01 3C */ b lbl_80221188 +lbl_80221050: +/* 80221050 0021DFB0 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 80221054 0021DFB4 3C 60 80 3E */ lis r3, lbl_803DA9CC@ha +/* 80221058 0021DFB8 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l +/* 8022105C 0021DFBC 38 80 00 06 */ li r4, 6 +/* 80221060 0021DFC0 90 01 00 38 */ stw r0, 0x38(r1) +/* 80221064 0021DFC4 38 C3 A9 CC */ addi r6, r3, lbl_803DA9CC@l +/* 80221068 0021DFC8 38 A0 00 01 */ li r5, 1 +/* 8022106C 0021DFCC 38 00 00 00 */ li r0, 0 +/* 80221070 0021DFD0 3B E7 00 04 */ addi r31, r7, 4 +/* 80221074 0021DFD4 90 81 00 3C */ stw r4, 0x3c(r1) +/* 80221078 0021DFD8 7F E3 FB 78 */ mr r3, r31 +/* 8022107C 0021DFDC 38 80 00 06 */ li r4, 6 +/* 80221080 0021DFE0 90 C1 00 38 */ stw r6, 0x38(r1) +/* 80221084 0021DFE4 90 A1 00 40 */ stw r5, 0x40(r1) +/* 80221088 0021DFE8 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 8022108C 0021DFEC D0 21 00 48 */ stfs f1, 0x48(r1) +/* 80221090 0021DFF0 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 80221094 0021DFF4 98 01 00 50 */ stb r0, 0x50(r1) +/* 80221098 0021DFF8 4B F1 03 A1 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8022109C 0021DFFC 80 01 00 3C */ lwz r0, 0x3c(r1) +/* 802210A0 0021E000 3C 60 80 3E */ lis r3, lbl_803DA9CC@ha +/* 802210A4 0021E004 38 83 A9 CC */ addi r4, r3, lbl_803DA9CC@l +/* 802210A8 0021E008 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 802210AC 0021E00C 90 1F 01 2C */ stw r0, 0x12c(r31) +/* 802210B0 0021E010 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 802210B4 0021E014 80 61 00 40 */ lwz r3, 0x40(r1) +/* 802210B8 0021E018 80 A1 00 44 */ lwz r5, 0x44(r1) +/* 802210BC 0021E01C 90 7F 01 30 */ stw r3, 0x130(r31) +/* 802210C0 0021E020 80 61 00 48 */ lwz r3, 0x48(r1) +/* 802210C4 0021E024 90 BF 01 34 */ stw r5, 0x134(r31) +/* 802210C8 0021E028 80 A1 00 4C */ lwz r5, 0x4c(r1) +/* 802210CC 0021E02C 90 7F 01 38 */ stw r3, 0x138(r31) +/* 802210D0 0021E030 88 61 00 50 */ lbz r3, 0x50(r1) +/* 802210D4 0021E034 90 BF 01 3C */ stw r5, 0x13c(r31) +/* 802210D8 0021E038 90 81 00 38 */ stw r4, 0x38(r1) +/* 802210DC 0021E03C 98 7F 01 40 */ stb r3, 0x140(r31) +/* 802210E0 0021E040 90 01 00 38 */ stw r0, 0x38(r1) +/* 802210E4 0021E044 48 00 00 A4 */ b lbl_80221188 +lbl_802210E8: +/* 802210E8 0021E048 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 802210EC 0021E04C 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 802210F0 0021E050 2C 00 00 12 */ cmpwi r0, 0x12 +/* 802210F4 0021E054 41 82 00 94 */ beq lbl_80221188 +/* 802210F8 0021E058 38 00 00 04 */ li r0, 4 +/* 802210FC 0021E05C 90 1F 05 68 */ stw r0, 0x568(r31) +/* 80221100 0021E060 48 00 00 88 */ b lbl_80221188 +lbl_80221104: +/* 80221104 0021E064 4B FF D2 3D */ bl sub_8021e340 +/* 80221108 0021E068 88 1F 0A 48 */ lbz r0, 0xa48(r31) +/* 8022110C 0021E06C 38 60 00 00 */ li r3, 0 +/* 80221110 0021E070 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 80221114 0021E074 98 1F 0A 48 */ stb r0, 0xa48(r31) +/* 80221118 0021E078 C0 1F 08 D0 */ lfs f0, 0x8d0(r31) +/* 8022111C 0021E07C D0 1F 03 B4 */ stfs f0, 0x3b4(r31) +/* 80221120 0021E080 80 9F 04 50 */ lwz r4, 0x450(r31) +/* 80221124 0021E084 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 80221128 0021E088 2C 00 00 12 */ cmpwi r0, 0x12 +/* 8022112C 0021E08C 40 82 00 30 */ bne lbl_8022115C +/* 80221130 0021E090 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80221134 0021E094 38 00 00 0C */ li r0, 0xc +/* 80221138 0021E098 38 A3 AA 68 */ addi r5, r3, lbl_803DAA68@l +/* 8022113C 0021E09C 90 01 00 2C */ stw r0, 0x2c(r1) +/* 80221140 0021E0A0 38 64 00 04 */ addi r3, r4, 4 +/* 80221144 0021E0A4 38 81 00 28 */ addi r4, r1, 0x28 +/* 80221148 0021E0A8 90 A1 00 28 */ stw r5, 0x28(r1) +/* 8022114C 0021E0AC 4B F1 06 6D */ bl DeliverCmd__16CBodyStateCmdMgrFRC13CBodyStateCmd +/* 80221150 0021E0B0 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80221154 0021E0B4 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 80221158 0021E0B8 90 01 00 28 */ stw r0, 0x28(r1) +lbl_8022115C: +/* 8022115C 0021E0BC A1 1F 00 08 */ lhz r8, 8(r31) +/* 80221160 0021E0C0 7F C4 F3 78 */ mr r4, r30 +/* 80221164 0021E0C4 38 A1 00 10 */ addi r5, r1, 0x10 +/* 80221168 0021E0C8 38 C1 00 0C */ addi r6, r1, 0xc +/* 8022116C 0021E0CC B1 01 00 0C */ sth r8, 0xc(r1) +/* 80221170 0021E0D0 38 60 00 01 */ li r3, 1 +/* 80221174 0021E0D4 38 E0 00 00 */ li r7, 0 +/* 80221178 0021E0D8 A0 1F 06 E8 */ lhz r0, 0x6e8(r31) +/* 8022117C 0021E0DC B1 01 00 08 */ sth r8, 8(r1) +/* 80221180 0021E0E0 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80221184 0021E0E4 48 01 8D 4D */ bl ResetTeamAiRole__10CTeamAiMgrF11EAttackTypeR13CStateManager9TUniqueId9TUniqueIdb +lbl_80221188: +/* 80221188 0021E0E8 80 01 00 64 */ lwz r0, 0x64(r1) +/* 8022118C 0021E0EC 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 80221190 0021E0F0 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 80221194 0021E0F4 7C 08 03 A6 */ mtlr r0 +/* 80221198 0021E0F8 38 21 00 60 */ addi r1, r1, 0x60 +/* 8022119C 0021E0FC 4E 80 00 20 */ blr + +.global Attack__9CBabygothFR13CStateManager9EStateMsgf +Attack__9CBabygothFR13CStateManager9EStateMsgf: +/* 802211A0 0021E100 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 802211A4 0021E104 7C 08 02 A6 */ mflr r0 +/* 802211A8 0021E108 90 01 00 44 */ stw r0, 0x44(r1) +/* 802211AC 0021E10C DB E1 00 30 */ stfd f31, 0x30(r1) +/* 802211B0 0021E110 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 802211B4 0021E114 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 802211B8 0021E118 93 C1 00 28 */ stw r30, 0x28(r1) +/* 802211BC 0021E11C 93 A1 00 24 */ stw r29, 0x24(r1) +/* 802211C0 0021E120 7C BD 2B 78 */ mr r29, r5 +/* 802211C4 0021E124 FF E0 08 90 */ fmr f31, f1 +/* 802211C8 0021E128 2C 1D 00 01 */ cmpwi r29, 1 +/* 802211CC 0021E12C 7C 7E 1B 78 */ mr r30, r3 +/* 802211D0 0021E130 7C 9F 23 78 */ mr r31, r4 +/* 802211D4 0021E134 41 82 00 F0 */ beq lbl_802212C4 +/* 802211D8 0021E138 40 80 00 10 */ bge lbl_802211E8 +/* 802211DC 0021E13C 2C 1D 00 00 */ cmpwi r29, 0 +/* 802211E0 0021E140 40 80 00 14 */ bge lbl_802211F4 +/* 802211E4 0021E144 48 00 01 B0 */ b lbl_80221394 +lbl_802211E8: +/* 802211E8 0021E148 2C 1D 00 03 */ cmpwi r29, 3 +/* 802211EC 0021E14C 40 80 01 A8 */ bge lbl_80221394 +/* 802211F0 0021E150 48 00 00 DC */ b lbl_802212CC +lbl_802211F4: +/* 802211F4 0021E154 38 C0 00 00 */ li r6, 0 +/* 802211F8 0021E158 38 80 00 01 */ li r4, 1 +/* 802211FC 0021E15C 90 DE 05 68 */ stw r6, 0x568(r30) +/* 80221200 0021E160 7F E5 FB 78 */ mr r5, r31 +/* 80221204 0021E164 C0 22 B4 04 */ lfs f1, lbl_805AD124@sda21(r2) +/* 80221208 0021E168 38 61 00 14 */ addi r3, r1, 0x14 +/* 8022120C 0021E16C 88 1E 0A 48 */ lbz r0, 0xa48(r30) +/* 80221210 0021E170 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c +/* 80221214 0021E174 98 1E 0A 48 */ stb r0, 0xa48(r30) +/* 80221218 0021E178 54 04 EF FE */ rlwinm r4, r0, 0x1d, 0x1f, 0x1f +/* 8022121C 0021E17C 88 1E 0A 48 */ lbz r0, 0xa48(r30) +/* 80221220 0021E180 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 80221224 0021E184 98 1E 0A 48 */ stb r0, 0xa48(r30) +/* 80221228 0021E188 D0 3E 08 E8 */ stfs f1, 0x8e8(r30) +/* 8022122C 0021E18C 88 1E 0A 49 */ lbz r0, 0xa49(r30) +/* 80221230 0021E190 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19 +/* 80221234 0021E194 98 1E 0A 49 */ stb r0, 0xa49(r30) +/* 80221238 0021E198 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 8022123C 0021E19C 81 84 00 00 */ lwz r12, 0(r4) +/* 80221240 0021E1A0 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 80221244 0021E1A4 7D 89 03 A6 */ mtctr r12 +/* 80221248 0021E1A8 4E 80 04 21 */ bctrl +/* 8022124C 0021E1AC C0 01 00 14 */ lfs f0, 0x14(r1) +/* 80221250 0021E1B0 7F C3 F3 78 */ mr r3, r30 +/* 80221254 0021E1B4 38 80 00 00 */ li r4, 0 +/* 80221258 0021E1B8 D0 1E 02 E0 */ stfs f0, 0x2e0(r30) +/* 8022125C 0021E1BC C0 01 00 18 */ lfs f0, 0x18(r1) +/* 80221260 0021E1C0 D0 1E 02 E4 */ stfs f0, 0x2e4(r30) +/* 80221264 0021E1C4 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 80221268 0021E1C8 D0 1E 02 E8 */ stfs f0, 0x2e8(r30) +/* 8022126C 0021E1CC 4B FF CE 31 */ bl sub_8021e09c +/* 80221270 0021E1D0 FC 20 F8 90 */ fmr f1, f31 +/* 80221274 0021E1D4 7F C3 F3 78 */ mr r3, r30 +/* 80221278 0021E1D8 7F E4 FB 78 */ mr r4, r31 +/* 8022127C 0021E1DC 7F A5 EB 78 */ mr r5, r29 +/* 80221280 0021E1E0 4B FD 54 4D */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 80221284 0021E1E4 C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 80221288 0021E1E8 38 00 00 01 */ li r0, 1 +/* 8022128C 0021E1EC C0 22 B4 18 */ lfs f1, lbl_805AD138@sda21(r2) +/* 80221290 0021E1F0 D0 1E 08 DC */ stfs f0, 0x8dc(r30) +/* 80221294 0021E1F4 FC 40 08 90 */ fmr f2, f1 +/* 80221298 0021E1F8 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8022129C 0021E1FC 90 03 00 34 */ stw r0, 0x34(r3) +/* 802212A0 0021E200 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 802212A4 0021E204 38 63 00 04 */ addi r3, r3, 4 +/* 802212A8 0021E208 4B F1 05 41 */ bl SetSteeringSpeedRange__16CBodyStateCmdMgrFff +/* 802212AC 0021E20C 3C 80 80 57 */ lis r4, lbl_80572128@ha +/* 802212B0 0021E210 7F C3 F3 78 */ mr r3, r30 +/* 802212B4 0021E214 38 A4 21 28 */ addi r5, r4, lbl_80572128@l +/* 802212B8 0021E218 7F E4 FB 78 */ mr r4, r31 +/* 802212BC 0021E21C 4B FF DC 65 */ bl sub_8021ef20 +/* 802212C0 0021E220 48 00 00 D4 */ b lbl_80221394 +lbl_802212C4: +/* 802212C4 0021E224 4B FF C8 DD */ bl sub_8021dba0 +/* 802212C8 0021E228 48 00 00 CC */ b lbl_80221394 +lbl_802212CC: +/* 802212CC 0021E22C 4B FF D0 75 */ bl sub_8021e340 +/* 802212D0 0021E230 88 1E 0A 48 */ lbz r0, 0xa48(r30) +/* 802212D4 0021E234 38 60 00 00 */ li r3, 0 +/* 802212D8 0021E238 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 802212DC 0021E23C C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 802212E0 0021E240 98 1E 0A 48 */ stb r0, 0xa48(r30) +/* 802212E4 0021E244 54 03 EF FE */ rlwinm r3, r0, 0x1d, 0x1f, 0x1f +/* 802212E8 0021E248 88 1E 0A 48 */ lbz r0, 0xa48(r30) +/* 802212EC 0021E24C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 802212F0 0021E250 98 1E 0A 48 */ stb r0, 0xa48(r30) +/* 802212F4 0021E254 C0 3E 06 D4 */ lfs f1, 0x6d4(r30) +/* 802212F8 0021E258 D0 3E 08 E0 */ stfs f1, 0x8e0(r30) +/* 802212FC 0021E25C D0 1E 08 DC */ stfs f0, 0x8dc(r30) +/* 80221300 0021E260 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80221304 0021E264 38 63 02 A4 */ addi r3, r3, 0x2a4 +/* 80221308 0021E268 4B F1 2B A5 */ bl GetMaxSpeed__14CBodyStateInfoCFv +/* 8022130C 0021E26C FF E0 08 90 */ fmr f31, f1 +/* 80221310 0021E270 C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 80221314 0021E274 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 80221318 0021E278 40 81 00 1C */ ble lbl_80221334 +/* 8022131C 0021E27C 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80221320 0021E280 38 80 00 01 */ li r4, 1 +/* 80221324 0021E284 38 63 02 A4 */ addi r3, r3, 0x2a4 +/* 80221328 0021E288 4B F1 2A AD */ bl GetLocomotionSpeed__14CBodyStateInfoCFQ23pas15ELocomotionAnim +/* 8022132C 0021E28C EC 41 F8 24 */ fdivs f2, f1, f31 +/* 80221330 0021E290 48 00 00 08 */ b lbl_80221338 +lbl_80221334: +/* 80221334 0021E294 C0 42 B4 18 */ lfs f2, lbl_805AD138@sda21(r2) +lbl_80221338: +/* 80221338 0021E298 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8022133C 0021E29C 38 00 00 02 */ li r0, 2 +/* 80221340 0021E2A0 C0 22 B4 04 */ lfs f1, lbl_805AD124@sda21(r2) +/* 80221344 0021E2A4 90 03 00 34 */ stw r0, 0x34(r3) +/* 80221348 0021E2A8 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8022134C 0021E2AC 38 63 00 04 */ addi r3, r3, 4 +/* 80221350 0021E2B0 4B F1 04 99 */ bl SetSteeringSpeedRange__16CBodyStateCmdMgrFff +/* 80221354 0021E2B4 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80221358 0021E2B8 7F C3 F3 78 */ mr r3, r30 +/* 8022135C 0021E2BC 38 A4 66 A0 */ addi r5, r4, skZero3f@l +/* 80221360 0021E2C0 7F E4 FB 78 */ mr r4, r31 +/* 80221364 0021E2C4 4B FF DB BD */ bl sub_8021ef20 +/* 80221368 0021E2C8 A1 1E 00 08 */ lhz r8, 8(r30) +/* 8022136C 0021E2CC 7F E4 FB 78 */ mr r4, r31 +/* 80221370 0021E2D0 38 A1 00 10 */ addi r5, r1, 0x10 +/* 80221374 0021E2D4 38 C1 00 0C */ addi r6, r1, 0xc +/* 80221378 0021E2D8 B1 01 00 0C */ sth r8, 0xc(r1) +/* 8022137C 0021E2DC 38 60 00 00 */ li r3, 0 +/* 80221380 0021E2E0 38 E0 00 01 */ li r7, 1 +/* 80221384 0021E2E4 A0 1E 06 E8 */ lhz r0, 0x6e8(r30) +/* 80221388 0021E2E8 B1 01 00 08 */ sth r8, 8(r1) +/* 8022138C 0021E2EC B0 01 00 10 */ sth r0, 0x10(r1) +/* 80221390 0021E2F0 48 01 8B 41 */ bl ResetTeamAiRole__10CTeamAiMgrF11EAttackTypeR13CStateManager9TUniqueId9TUniqueIdb +lbl_80221394: +/* 80221394 0021E2F4 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 80221398 0021E2F8 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8022139C 0021E2FC CB E1 00 30 */ lfd f31, 0x30(r1) +/* 802213A0 0021E300 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 802213A4 0021E304 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 802213A8 0021E308 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 802213AC 0021E30C 7C 08 03 A6 */ mtlr r0 +/* 802213B0 0021E310 38 21 00 40 */ addi r1, r1, 0x40 +/* 802213B4 0021E314 4E 80 00 20 */ blr + +.global ProjectileAttack__9CBabygothFR13CStateManager9EStateMsgf +ProjectileAttack__9CBabygothFR13CStateManager9EStateMsgf: +/* 802213B8 0021E318 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 802213BC 0021E31C 7C 08 02 A6 */ mflr r0 +/* 802213C0 0021E320 2C 05 00 01 */ cmpwi r5, 1 +/* 802213C4 0021E324 90 01 00 84 */ stw r0, 0x84(r1) +/* 802213C8 0021E328 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 802213CC 0021E32C 7C 9F 23 78 */ mr r31, r4 +/* 802213D0 0021E330 93 C1 00 78 */ stw r30, 0x78(r1) +/* 802213D4 0021E334 7C 7E 1B 78 */ mr r30, r3 +/* 802213D8 0021E338 41 82 00 D0 */ beq lbl_802214A8 +/* 802213DC 0021E33C 40 80 00 10 */ bge lbl_802213EC +/* 802213E0 0021E340 2C 05 00 00 */ cmpwi r5, 0 +/* 802213E4 0021E344 40 80 00 14 */ bge lbl_802213F8 +/* 802213E8 0021E348 48 00 03 14 */ b lbl_802216FC +lbl_802213EC: +/* 802213EC 0021E34C 2C 05 00 03 */ cmpwi r5, 3 +/* 802213F0 0021E350 40 80 03 0C */ bge lbl_802216FC +/* 802213F4 0021E354 48 00 02 50 */ b lbl_80221644 +lbl_802213F8: +/* 802213F8 0021E358 88 1E 0A 48 */ lbz r0, 0xa48(r30) +/* 802213FC 0021E35C 38 60 00 01 */ li r3, 1 +/* 80221400 0021E360 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 80221404 0021E364 C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 80221408 0021E368 98 1E 0A 48 */ stb r0, 0xa48(r30) +/* 8022140C 0021E36C 38 A0 00 00 */ li r5, 0 +/* 80221410 0021E370 7F E3 FB 78 */ mr r3, r31 +/* 80221414 0021E374 38 81 00 2C */ addi r4, r1, 0x2c +/* 80221418 0021E378 D0 1E 08 E8 */ stfs f0, 0x8e8(r30) +/* 8022141C 0021E37C 88 1E 0A 49 */ lbz r0, 0xa49(r30) +/* 80221420 0021E380 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 80221424 0021E384 98 1E 0A 49 */ stb r0, 0xa49(r30) +/* 80221428 0021E388 A0 1E 06 E8 */ lhz r0, 0x6e8(r30) +/* 8022142C 0021E38C B0 01 00 2C */ sth r0, 0x2c(r1) +/* 80221430 0021E390 4B E2 B1 45 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80221434 0021E394 7C 64 1B 78 */ mr r4, r3 +/* 80221438 0021E398 38 61 00 38 */ addi r3, r1, 0x38 +/* 8022143C 0021E39C 4B E8 61 39 */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" +/* 80221440 0021E3A0 83 E3 00 04 */ lwz r31, 4(r3) +/* 80221444 0021E3A4 28 1F 00 00 */ cmplwi r31, 0 +/* 80221448 0021E3A8 41 82 00 54 */ beq lbl_8022149C +/* 8022144C 0021E3AC A0 1E 00 08 */ lhz r0, 8(r30) +/* 80221450 0021E3B0 7F E3 FB 78 */ mr r3, r31 +/* 80221454 0021E3B4 38 81 00 28 */ addi r4, r1, 0x28 +/* 80221458 0021E3B8 B0 01 00 24 */ sth r0, 0x24(r1) +/* 8022145C 0021E3BC B0 01 00 28 */ sth r0, 0x28(r1) +/* 80221460 0021E3C0 48 01 7C A5 */ bl HasTeamAiRole__10CTeamAiMgrCF9TUniqueId +/* 80221464 0021E3C4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80221468 0021E3C8 41 82 00 34 */ beq lbl_8022149C +/* 8022146C 0021E3CC A0 1E 00 08 */ lhz r0, 8(r30) +/* 80221470 0021E3D0 7F E3 FB 78 */ mr r3, r31 +/* 80221474 0021E3D4 38 81 00 20 */ addi r4, r1, 0x20 +/* 80221478 0021E3D8 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 8022147C 0021E3DC B0 01 00 20 */ sth r0, 0x20(r1) +/* 80221480 0021E3E0 48 01 71 45 */ bl AddProjectileAttacker__10CTeamAiMgrF9TUniqueId +/* 80221484 0021E3E4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80221488 0021E3E8 38 60 00 04 */ li r3, 4 +/* 8022148C 0021E3EC 41 82 00 08 */ beq lbl_80221494 +/* 80221490 0021E3F0 38 60 00 00 */ li r3, 0 +lbl_80221494: +/* 80221494 0021E3F4 90 7E 05 68 */ stw r3, 0x568(r30) +/* 80221498 0021E3F8 48 00 02 64 */ b lbl_802216FC +lbl_8022149C: +/* 8022149C 0021E3FC 38 00 00 00 */ li r0, 0 +/* 802214A0 0021E400 90 1E 05 68 */ stw r0, 0x568(r30) +/* 802214A4 0021E404 48 00 02 58 */ b lbl_802216FC +lbl_802214A8: +/* 802214A8 0021E408 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 802214AC 0021E40C 7F E5 FB 78 */ mr r5, r31 +/* 802214B0 0021E410 38 61 00 40 */ addi r3, r1, 0x40 +/* 802214B4 0021E414 C0 22 B4 04 */ lfs f1, lbl_805AD124@sda21(r2) +/* 802214B8 0021E418 81 84 00 00 */ lwz r12, 0(r4) +/* 802214BC 0021E41C 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 802214C0 0021E420 7D 89 03 A6 */ mtctr r12 +/* 802214C4 0021E424 4E 80 04 21 */ bctrl +/* 802214C8 0021E428 C0 41 00 40 */ lfs f2, 0x40(r1) +/* 802214CC 0021E42C C0 21 00 44 */ lfs f1, 0x44(r1) +/* 802214D0 0021E430 C0 01 00 48 */ lfs f0, 0x48(r1) +/* 802214D4 0021E434 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 802214D8 0021E438 D0 21 00 50 */ stfs f1, 0x50(r1) +/* 802214DC 0021E43C D0 01 00 54 */ stfs f0, 0x54(r1) +/* 802214E0 0021E440 80 1E 05 68 */ lwz r0, 0x568(r30) +/* 802214E4 0021E444 2C 00 00 03 */ cmpwi r0, 3 +/* 802214E8 0021E448 41 82 00 D8 */ beq lbl_802215C0 +/* 802214EC 0021E44C 40 80 02 10 */ bge lbl_802216FC +/* 802214F0 0021E450 2C 00 00 00 */ cmpwi r0, 0 +/* 802214F4 0021E454 41 82 00 08 */ beq lbl_802214FC +/* 802214F8 0021E458 48 00 02 04 */ b lbl_802216FC +lbl_802214FC: +/* 802214FC 0021E45C 80 FE 04 50 */ lwz r7, 0x450(r30) +/* 80221500 0021E460 80 07 02 B8 */ lwz r0, 0x2b8(r7) +/* 80221504 0021E464 2C 00 00 12 */ cmpwi r0, 0x12 +/* 80221508 0021E468 40 82 00 20 */ bne lbl_80221528 +/* 8022150C 0021E46C 38 00 00 03 */ li r0, 3 +/* 80221510 0021E470 C0 22 B4 24 */ lfs f1, lbl_805AD144@sda21(r2) +/* 80221514 0021E474 90 1E 05 68 */ stw r0, 0x568(r30) +/* 80221518 0021E478 C0 1E 08 D0 */ lfs f0, 0x8d0(r30) +/* 8022151C 0021E47C EC 01 00 32 */ fmuls f0, f1, f0 +/* 80221520 0021E480 D0 1E 03 B4 */ stfs f0, 0x3b4(r30) +/* 80221524 0021E484 48 00 01 D8 */ b lbl_802216FC +lbl_80221528: +/* 80221528 0021E488 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 8022152C 0021E48C 3C 60 80 3E */ lis r3, lbl_803DA9CC@ha +/* 80221530 0021E490 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l +/* 80221534 0021E494 38 80 00 06 */ li r4, 6 +/* 80221538 0021E498 90 01 00 58 */ stw r0, 0x58(r1) +/* 8022153C 0021E49C 38 C3 A9 CC */ addi r6, r3, lbl_803DA9CC@l +/* 80221540 0021E4A0 38 A0 00 02 */ li r5, 2 +/* 80221544 0021E4A4 38 00 00 00 */ li r0, 0 +/* 80221548 0021E4A8 3B C7 00 04 */ addi r30, r7, 4 +/* 8022154C 0021E4AC 90 81 00 5C */ stw r4, 0x5c(r1) +/* 80221550 0021E4B0 7F C3 F3 78 */ mr r3, r30 +/* 80221554 0021E4B4 38 80 00 06 */ li r4, 6 +/* 80221558 0021E4B8 90 C1 00 58 */ stw r6, 0x58(r1) +/* 8022155C 0021E4BC 90 A1 00 60 */ stw r5, 0x60(r1) +/* 80221560 0021E4C0 D0 41 00 64 */ stfs f2, 0x64(r1) +/* 80221564 0021E4C4 D0 21 00 68 */ stfs f1, 0x68(r1) +/* 80221568 0021E4C8 D0 01 00 6C */ stfs f0, 0x6c(r1) +/* 8022156C 0021E4CC 98 01 00 70 */ stb r0, 0x70(r1) +/* 80221570 0021E4D0 4B F0 FE C9 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80221574 0021E4D4 80 01 00 5C */ lwz r0, 0x5c(r1) +/* 80221578 0021E4D8 3C 60 80 3E */ lis r3, lbl_803DA9CC@ha +/* 8022157C 0021E4DC 38 83 A9 CC */ addi r4, r3, lbl_803DA9CC@l +/* 80221580 0021E4E0 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80221584 0021E4E4 90 1E 01 2C */ stw r0, 0x12c(r30) +/* 80221588 0021E4E8 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 8022158C 0021E4EC 80 61 00 60 */ lwz r3, 0x60(r1) +/* 80221590 0021E4F0 80 A1 00 64 */ lwz r5, 0x64(r1) +/* 80221594 0021E4F4 90 7E 01 30 */ stw r3, 0x130(r30) +/* 80221598 0021E4F8 80 61 00 68 */ lwz r3, 0x68(r1) +/* 8022159C 0021E4FC 90 BE 01 34 */ stw r5, 0x134(r30) +/* 802215A0 0021E500 80 A1 00 6C */ lwz r5, 0x6c(r1) +/* 802215A4 0021E504 90 7E 01 38 */ stw r3, 0x138(r30) +/* 802215A8 0021E508 88 61 00 70 */ lbz r3, 0x70(r1) +/* 802215AC 0021E50C 90 BE 01 3C */ stw r5, 0x13c(r30) +/* 802215B0 0021E510 90 81 00 58 */ stw r4, 0x58(r1) +/* 802215B4 0021E514 98 7E 01 40 */ stb r3, 0x140(r30) +/* 802215B8 0021E518 90 01 00 58 */ stw r0, 0x58(r1) +/* 802215BC 0021E51C 48 00 01 40 */ b lbl_802216FC +lbl_802215C0: +/* 802215C0 0021E520 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 802215C4 0021E524 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 802215C8 0021E528 2C 00 00 12 */ cmpwi r0, 0x12 +/* 802215CC 0021E52C 41 82 00 10 */ beq lbl_802215DC +/* 802215D0 0021E530 38 00 00 04 */ li r0, 4 +/* 802215D4 0021E534 90 1E 05 68 */ stw r0, 0x568(r30) +/* 802215D8 0021E538 48 00 01 24 */ b lbl_802216FC +lbl_802215DC: +/* 802215DC 0021E53C A0 1E 09 80 */ lhz r0, 0x980(r30) +/* 802215E0 0021E540 7F E3 FB 78 */ mr r3, r31 +/* 802215E4 0021E544 38 81 00 18 */ addi r4, r1, 0x18 +/* 802215E8 0021E548 B0 01 00 18 */ sth r0, 0x18(r1) +/* 802215EC 0021E54C 4B E2 AF 89 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 802215F0 0021E550 28 03 00 00 */ cmplwi r3, 0 +/* 802215F4 0021E554 40 82 01 08 */ bne lbl_802216FC +/* 802215F8 0021E558 C0 21 00 4C */ lfs f1, 0x4c(r1) +/* 802215FC 0021E55C 38 7E 08 F0 */ addi r3, r30, 0x8f0 +/* 80221600 0021E560 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 80221604 0021E564 C0 81 00 50 */ lfs f4, 0x50(r1) +/* 80221608 0021E568 C0 7E 00 50 */ lfs f3, 0x50(r30) +/* 8022160C 0021E56C EC 01 00 28 */ fsubs f0, f1, f0 +/* 80221610 0021E570 C0 41 00 54 */ lfs f2, 0x54(r1) +/* 80221614 0021E574 C0 3E 00 60 */ lfs f1, 0x60(r30) +/* 80221618 0021E578 EC 64 18 28 */ fsubs f3, f4, f3 +/* 8022161C 0021E57C 80 9E 04 50 */ lwz r4, 0x450(r30) +/* 80221620 0021E580 EC 22 08 28 */ fsubs f1, f2, f1 +/* 80221624 0021E584 D0 04 00 1C */ stfs f0, 0x1c(r4) +/* 80221628 0021E588 D0 64 00 20 */ stfs f3, 0x20(r4) +/* 8022162C 0021E58C D0 24 00 24 */ stfs f1, 0x24(r4) +/* 80221630 0021E590 4B F5 3B DD */ bl UnsetTarget__13CBoneTrackingFv +/* 80221634 0021E594 38 7E 08 F0 */ addi r3, r30, 0x8f0 +/* 80221638 0021E598 38 81 00 4C */ addi r4, r1, 0x4c +/* 8022163C 0021E59C 4B F5 3B 7D */ bl SetTargetPosition__13CBoneTrackingFRC9CVector3f +/* 80221640 0021E5A0 48 00 00 BC */ b lbl_802216FC +lbl_80221644: +/* 80221644 0021E5A4 4B FF CC FD */ bl sub_8021e340 +/* 80221648 0021E5A8 A0 1E 09 80 */ lhz r0, 0x980(r30) +/* 8022164C 0021E5AC 7F E3 FB 78 */ mr r3, r31 +/* 80221650 0021E5B0 38 81 00 14 */ addi r4, r1, 0x14 +/* 80221654 0021E5B4 B0 01 00 14 */ sth r0, 0x14(r1) +/* 80221658 0021E5B8 4B E2 AF 1D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8022165C 0021E5BC 28 03 00 00 */ cmplwi r3, 0 +/* 80221660 0021E5C0 41 82 00 10 */ beq lbl_80221670 +/* 80221664 0021E5C4 7F E4 FB 78 */ mr r4, r31 +/* 80221668 0021E5C8 38 A0 00 00 */ li r5, 0 +/* 8022166C 0021E5CC 4B F7 6B 55 */ bl Reset__13CFlameThrowerFR13CStateManagerb +lbl_80221670: +/* 80221670 0021E5D0 88 1E 0A 48 */ lbz r0, 0xa48(r30) +/* 80221674 0021E5D4 38 60 00 00 */ li r3, 0 +/* 80221678 0021E5D8 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 8022167C 0021E5DC 98 1E 0A 48 */ stb r0, 0xa48(r30) +/* 80221680 0021E5E0 80 9E 04 50 */ lwz r4, 0x450(r30) +/* 80221684 0021E5E4 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 80221688 0021E5E8 2C 00 00 12 */ cmpwi r0, 0x12 +/* 8022168C 0021E5EC 40 82 00 30 */ bne lbl_802216BC +/* 80221690 0021E5F0 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80221694 0021E5F4 38 00 00 0C */ li r0, 0xc +/* 80221698 0021E5F8 38 A3 AA 68 */ addi r5, r3, lbl_803DAA68@l +/* 8022169C 0021E5FC 90 01 00 34 */ stw r0, 0x34(r1) +/* 802216A0 0021E600 38 64 00 04 */ addi r3, r4, 4 +/* 802216A4 0021E604 38 81 00 30 */ addi r4, r1, 0x30 +/* 802216A8 0021E608 90 A1 00 30 */ stw r5, 0x30(r1) +/* 802216AC 0021E60C 4B F1 01 0D */ bl DeliverCmd__16CBodyStateCmdMgrFRC13CBodyStateCmd +/* 802216B0 0021E610 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 802216B4 0021E614 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 802216B8 0021E618 90 01 00 30 */ stw r0, 0x30(r1) +lbl_802216BC: +/* 802216BC 0021E61C 38 7E 08 F0 */ addi r3, r30, 0x8f0 +/* 802216C0 0021E620 38 80 00 00 */ li r4, 0 +/* 802216C4 0021E624 4B F5 3B 61 */ bl SetActive__13CBoneTrackingFb +/* 802216C8 0021E628 C0 1E 08 D0 */ lfs f0, 0x8d0(r30) +/* 802216CC 0021E62C 7F E4 FB 78 */ mr r4, r31 +/* 802216D0 0021E630 38 A1 00 10 */ addi r5, r1, 0x10 +/* 802216D4 0021E634 38 C1 00 0C */ addi r6, r1, 0xc +/* 802216D8 0021E638 D0 1E 03 B4 */ stfs f0, 0x3b4(r30) +/* 802216DC 0021E63C 38 60 00 01 */ li r3, 1 +/* 802216E0 0021E640 38 E0 00 00 */ li r7, 0 +/* 802216E4 0021E644 A1 1E 00 08 */ lhz r8, 8(r30) +/* 802216E8 0021E648 B1 01 00 0C */ sth r8, 0xc(r1) +/* 802216EC 0021E64C A0 1E 06 E8 */ lhz r0, 0x6e8(r30) +/* 802216F0 0021E650 B1 01 00 08 */ sth r8, 8(r1) +/* 802216F4 0021E654 B0 01 00 10 */ sth r0, 0x10(r1) +/* 802216F8 0021E658 48 01 87 D9 */ bl ResetTeamAiRole__10CTeamAiMgrF11EAttackTypeR13CStateManager9TUniqueId9TUniqueIdb +lbl_802216FC: +/* 802216FC 0021E65C 80 01 00 84 */ lwz r0, 0x84(r1) +/* 80221700 0021E660 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 80221704 0021E664 83 C1 00 78 */ lwz r30, 0x78(r1) +/* 80221708 0021E668 7C 08 03 A6 */ mtlr r0 +/* 8022170C 0021E66C 38 21 00 80 */ addi r1, r1, 0x80 +/* 80221710 0021E670 4E 80 00 20 */ blr + +.global sub_80221714 +sub_80221714: +/* 80221714 0021E674 80 03 05 68 */ lwz r0, 0x568(r3) +/* 80221718 0021E678 20 00 00 04 */ subfic r0, r0, 4 +/* 8022171C 0021E67C 7C 00 00 34 */ cntlzw r0, r0 +/* 80221720 0021E680 54 03 D9 7E */ srwi r3, r0, 5 +/* 80221724 0021E684 4E 80 00 20 */ blr + +.global SpotPlayer__9CBabygothFR13CStateManagerf +SpotPlayer__9CBabygothFR13CStateManagerf: +/* 80221728 0021E688 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8022172C 0021E68C 7C 08 02 A6 */ mflr r0 +/* 80221730 0021E690 90 01 00 14 */ stw r0, 0x14(r1) +/* 80221734 0021E694 88 03 0A 48 */ lbz r0, 0xa48(r3) +/* 80221738 0021E698 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8022173C 0021E69C 41 82 00 08 */ beq lbl_80221744 +/* 80221740 0021E6A0 48 00 00 0C */ b lbl_8022174C +lbl_80221744: +/* 80221744 0021E6A4 4B FD 4A B9 */ bl SpotPlayer__10CPatternedFR13CStateManagerf +/* 80221748 0021E6A8 7C 60 1B 78 */ mr r0, r3 +lbl_8022174C: +/* 8022174C 0021E6AC 7C 03 03 78 */ mr r3, r0 +/* 80221750 0021E6B0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80221754 0021E6B4 7C 08 03 A6 */ mtlr r0 +/* 80221758 0021E6B8 38 21 00 10 */ addi r1, r1, 0x10 +/* 8022175C 0021E6BC 4E 80 00 20 */ blr + +.global InDetectionRange__9CBabygothFR13CStateManagerf +InDetectionRange__9CBabygothFR13CStateManagerf: +/* 80221760 0021E6C0 88 03 0A 48 */ lbz r0, 0xa48(r3) +/* 80221764 0021E6C4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80221768 0021E6C8 40 82 00 90 */ bne lbl_802217F8 +/* 8022176C 0021E6CC 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 80221770 0021E6D0 C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 80221774 0021E6D4 C0 A4 00 40 */ lfs f5, 0x40(r4) +/* 80221778 0021E6D8 C0 43 00 40 */ lfs f2, 0x40(r3) +/* 8022177C 0021E6DC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80221780 0021E6E0 C0 84 00 50 */ lfs f4, 0x50(r4) +/* 80221784 0021E6E4 C0 63 00 50 */ lfs f3, 0x50(r3) +/* 80221788 0021E6E8 EC A5 10 28 */ fsubs f5, f5, f2 +/* 8022178C 0021E6EC C0 44 00 60 */ lfs f2, 0x60(r4) +/* 80221790 0021E6F0 C0 03 00 60 */ lfs f0, 0x60(r3) +/* 80221794 0021E6F4 EC 84 18 28 */ fsubs f4, f4, f3 +/* 80221798 0021E6F8 EC 62 00 28 */ fsubs f3, f2, f0 +/* 8022179C 0021E6FC 40 81 00 08 */ ble lbl_802217A4 +/* 802217A0 0021E700 48 00 00 08 */ b lbl_802217A8 +lbl_802217A4: +/* 802217A4 0021E704 C0 22 B4 18 */ lfs f1, lbl_805AD138@sda21(r2) +lbl_802217A8: +/* 802217A8 0021E708 EC 04 01 32 */ fmuls f0, f4, f4 +/* 802217AC 0021E70C C0 43 03 BC */ lfs f2, 0x3bc(r3) +/* 802217B0 0021E710 EC 63 00 F2 */ fmuls f3, f3, f3 +/* 802217B4 0021E714 EC 41 00 B2 */ fmuls f2, f1, f2 +/* 802217B8 0021E718 EC 25 01 7A */ fmadds f1, f5, f5, f0 +/* 802217BC 0021E71C EC 02 00 B2 */ fmuls f0, f2, f2 +/* 802217C0 0021E720 EC 23 08 2A */ fadds f1, f3, f1 +/* 802217C4 0021E724 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802217C8 0021E728 40 80 00 30 */ bge lbl_802217F8 +/* 802217CC 0021E72C C0 23 03 C0 */ lfs f1, 0x3c0(r3) +/* 802217D0 0021E730 C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 802217D4 0021E734 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802217D8 0021E738 40 81 00 18 */ ble lbl_802217F0 +/* 802217DC 0021E73C EC 01 00 72 */ fmuls f0, f1, f1 +/* 802217E0 0021E740 FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 802217E4 0021E744 7C 00 00 26 */ mfcr r0 +/* 802217E8 0021E748 54 03 0F FE */ srwi r3, r0, 0x1f +/* 802217EC 0021E74C 4E 80 00 20 */ blr +lbl_802217F0: +/* 802217F0 0021E750 38 60 00 01 */ li r3, 1 +/* 802217F4 0021E754 4E 80 00 20 */ blr +lbl_802217F8: +/* 802217F8 0021E758 7C 03 03 78 */ mr r3, r0 +/* 802217FC 0021E75C 4E 80 00 20 */ blr + +.global InPosition__9CBabygothFR13CStateManagerf +InPosition__9CBabygothFR13CStateManagerf: +/* 80221800 0021E760 C0 23 08 BC */ lfs f1, 0x8bc(r3) +/* 80221804 0021E764 C0 03 00 50 */ lfs f0, 0x50(r3) +/* 80221808 0021E768 C0 63 08 B8 */ lfs f3, 0x8b8(r3) +/* 8022180C 0021E76C EC 21 00 28 */ fsubs f1, f1, f0 +/* 80221810 0021E770 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 80221814 0021E774 C0 43 08 C0 */ lfs f2, 0x8c0(r3) +/* 80221818 0021E778 EC 63 00 28 */ fsubs f3, f3, f0 +/* 8022181C 0021E77C C0 03 00 60 */ lfs f0, 0x60(r3) +/* 80221820 0021E780 EC 21 00 72 */ fmuls f1, f1, f1 +/* 80221824 0021E784 EC 42 00 28 */ fsubs f2, f2, f0 +/* 80221828 0021E788 C0 02 B4 44 */ lfs f0, lbl_805AD164@sda21(r2) +/* 8022182C 0021E78C EC 23 08 FA */ fmadds f1, f3, f3, f1 +/* 80221830 0021E790 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 80221834 0021E794 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80221838 0021E798 7C 00 00 26 */ mfcr r0 +/* 8022183C 0021E79C 54 03 0F FE */ srwi r3, r0, 0x1f +/* 80221840 0021E7A0 4E 80 00 20 */ blr + +.global ShouldTurn__9CBabygothFR13CStateManagerf +ShouldTurn__9CBabygothFR13CStateManagerf: +/* 80221844 0021E7A4 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 80221848 0021E7A8 7C 08 02 A6 */ mflr r0 +/* 8022184C 0021E7AC 90 01 00 74 */ stw r0, 0x74(r1) +/* 80221850 0021E7B0 DB E1 00 60 */ stfd f31, 0x60(r1) +/* 80221854 0021E7B4 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 80221858 0021E7B8 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 8022185C 0021E7BC C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 80221860 0021E7C0 7C 7F 1B 78 */ mr r31, r3 +/* 80221864 0021E7C4 FC 00 08 00 */ fcmpu cr0, f0, f1 +/* 80221868 0021E7C8 40 82 00 0C */ bne lbl_80221874 +/* 8022186C 0021E7CC C3 E2 B4 48 */ lfs f31, lbl_805AD168@sda21(r2) +/* 80221870 0021E7D0 48 00 00 08 */ b lbl_80221878 +lbl_80221874: +/* 80221874 0021E7D4 FF E0 08 90 */ fmr f31, f1 +lbl_80221878: +/* 80221878 0021E7D8 80 DF 00 64 */ lwz r6, 0x64(r31) +/* 8022187C 0021E7DC 7C 85 23 78 */ mr r5, r4 +/* 80221880 0021E7E0 C0 22 B4 04 */ lfs f1, lbl_805AD124@sda21(r2) +/* 80221884 0021E7E4 38 61 00 40 */ addi r3, r1, 0x40 +/* 80221888 0021E7E8 80 C6 00 10 */ lwz r6, 0x10(r6) +/* 8022188C 0021E7EC 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 80221890 0021E7F0 C0 46 02 00 */ lfs f2, 0x200(r6) +/* 80221894 0021E7F4 FC 02 08 40 */ fcmpo cr0, f2, f1 +/* 80221898 0021E7F8 40 81 00 0C */ ble lbl_802218A4 +/* 8022189C 0021E7FC C0 02 B4 18 */ lfs f0, lbl_805AD138@sda21(r2) +/* 802218A0 0021E800 EC 20 10 24 */ fdivs f1, f0, f2 +lbl_802218A4: +/* 802218A4 0021E804 81 84 00 00 */ lwz r12, 0(r4) +/* 802218A8 0021E808 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 802218AC 0021E80C 7D 89 03 A6 */ mtctr r12 +/* 802218B0 0021E810 4E 80 04 21 */ bctrl +/* 802218B4 0021E814 C0 41 00 44 */ lfs f2, 0x44(r1) +/* 802218B8 0021E818 38 61 00 10 */ addi r3, r1, 0x10 +/* 802218BC 0021E81C C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 802218C0 0021E820 C0 21 00 40 */ lfs f1, 0x40(r1) +/* 802218C4 0021E824 EC 42 00 28 */ fsubs f2, f2, f0 +/* 802218C8 0021E828 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 802218CC 0021E82C C0 61 00 48 */ lfs f3, 0x48(r1) +/* 802218D0 0021E830 EC 21 00 28 */ fsubs f1, f1, f0 +/* 802218D4 0021E834 C0 1F 00 60 */ lfs f0, 0x60(r31) +/* 802218D8 0021E838 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 802218DC 0021E83C EC 03 00 28 */ fsubs f0, f3, f0 +/* 802218E0 0021E840 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 802218E4 0021E844 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 802218E8 0021E848 48 0F 29 19 */ bl __ct__9CVector2fFff +/* 802218EC 0021E84C C0 21 00 10 */ lfs f1, 0x10(r1) +/* 802218F0 0021E850 38 61 00 08 */ addi r3, r1, 8 +/* 802218F4 0021E854 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 802218F8 0021E858 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 802218FC 0021E85C D0 01 00 24 */ stfs f0, 0x24(r1) +/* 80221900 0021E860 C0 5F 00 48 */ lfs f2, 0x48(r31) +/* 80221904 0021E864 C0 3F 00 38 */ lfs f1, 0x38(r31) +/* 80221908 0021E868 C0 1F 00 58 */ lfs f0, 0x58(r31) +/* 8022190C 0021E86C D0 21 00 28 */ stfs f1, 0x28(r1) +/* 80221910 0021E870 D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 80221914 0021E874 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 80221918 0021E878 48 0F 28 E9 */ bl __ct__9CVector2fFff +/* 8022191C 0021E87C C0 21 00 08 */ lfs f1, 8(r1) +/* 80221920 0021E880 38 61 00 18 */ addi r3, r1, 0x18 +/* 80221924 0021E884 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 80221928 0021E888 38 81 00 20 */ addi r4, r1, 0x20 +/* 8022192C 0021E88C D0 21 00 18 */ stfs f1, 0x18(r1) +/* 80221930 0021E890 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 80221934 0021E894 48 0F 26 91 */ bl GetAngleDiff__9CVector2fFRC9CVector2fRC9CVector2f +/* 80221938 0021E898 FC 01 F8 40 */ fcmpo cr0, f1, f31 +/* 8022193C 0021E89C 7C 00 00 26 */ mfcr r0 +/* 80221940 0021E8A0 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f +/* 80221944 0021E8A4 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 80221948 0021E8A8 80 01 00 74 */ lwz r0, 0x74(r1) +/* 8022194C 0021E8AC CB E1 00 60 */ lfd f31, 0x60(r1) +/* 80221950 0021E8B0 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 80221954 0021E8B4 7C 08 03 A6 */ mtlr r0 +/* 80221958 0021E8B8 38 21 00 70 */ addi r1, r1, 0x70 +/* 8022195C 0021E8BC 4E 80 00 20 */ blr + +.global ShouldFire__9CBabygothFR13CStateManagerf +ShouldFire__9CBabygothFR13CStateManagerf: +/* 80221960 0021E8C0 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 80221964 0021E8C4 7C 08 02 A6 */ mflr r0 +/* 80221968 0021E8C8 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 8022196C 0021E8CC 93 E1 00 9C */ stw r31, 0x9c(r1) +/* 80221970 0021E8D0 7C 9F 23 78 */ mr r31, r4 +/* 80221974 0021E8D4 93 C1 00 98 */ stw r30, 0x98(r1) +/* 80221978 0021E8D8 7C 7E 1B 78 */ mr r30, r3 +/* 8022197C 0021E8DC 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 80221980 0021E8E0 80 63 00 04 */ lwz r3, 4(r3) +/* 80221984 0021E8E4 80 04 00 04 */ lwz r0, 4(r4) +/* 80221988 0021E8E8 7C 03 00 00 */ cmpw r3, r0 +/* 8022198C 0021E8EC 40 82 00 FC */ bne lbl_80221A88 +/* 80221990 0021E8F0 C0 1E 08 D8 */ lfs f0, 0x8d8(r30) +/* 80221994 0021E8F4 C0 22 B4 04 */ lfs f1, lbl_805AD124@sda21(r2) +/* 80221998 0021E8F8 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 8022199C 0021E8FC 4C 40 13 82 */ cror 2, 0, 2 +/* 802219A0 0021E900 40 82 00 E8 */ bne lbl_80221A88 +/* 802219A4 0021E904 81 84 00 00 */ lwz r12, 0(r4) +/* 802219A8 0021E908 7F E5 FB 78 */ mr r5, r31 +/* 802219AC 0021E90C 38 61 00 08 */ addi r3, r1, 8 +/* 802219B0 0021E910 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 802219B4 0021E914 7D 89 03 A6 */ mtctr r12 +/* 802219B8 0021E918 4E 80 04 21 */ bctrl +/* 802219BC 0021E91C C0 41 00 08 */ lfs f2, 8(r1) +/* 802219C0 0021E920 7F C4 F3 78 */ mr r4, r30 +/* 802219C4 0021E924 C0 21 00 0C */ lfs f1, 0xc(r1) +/* 802219C8 0021E928 38 61 00 2C */ addi r3, r1, 0x2c +/* 802219CC 0021E92C C0 01 00 10 */ lfs f0, 0x10(r1) +/* 802219D0 0021E930 38 BE 09 F4 */ addi r5, r30, 0x9f4 +/* 802219D4 0021E934 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 802219D8 0021E938 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 802219DC 0021E93C D0 01 00 28 */ stfs f0, 0x28(r1) +/* 802219E0 0021E940 4B E5 6E D9 */ bl GetLctrTransform__10CPatternedCFRC6CSegId +/* 802219E4 0021E944 38 61 00 5C */ addi r3, r1, 0x5c +/* 802219E8 0021E948 38 81 00 2C */ addi r4, r1, 0x2c +/* 802219EC 0021E94C 48 0F 11 89 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 802219F0 0021E950 C0 41 00 78 */ lfs f2, 0x78(r1) +/* 802219F4 0021E954 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 802219F8 0021E958 C0 61 00 68 */ lfs f3, 0x68(r1) +/* 802219FC 0021E95C EC 80 10 28 */ fsubs f4, f0, f2 +/* 80221A00 0021E960 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 80221A04 0021E964 C0 C1 00 88 */ lfs f6, 0x88(r1) +/* 80221A08 0021E968 EC A0 18 28 */ fsubs f5, f0, f3 +/* 80221A0C 0021E96C C0 21 00 28 */ lfs f1, 0x28(r1) +/* 80221A10 0021E970 EC 04 01 32 */ fmuls f0, f4, f4 +/* 80221A14 0021E974 D0 61 00 14 */ stfs f3, 0x14(r1) +/* 80221A18 0021E978 EC 21 30 28 */ fsubs f1, f1, f6 +/* 80221A1C 0021E97C EC 05 01 7A */ fmadds f0, f5, f5, f0 +/* 80221A20 0021E980 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 80221A24 0021E984 D0 C1 00 1C */ stfs f6, 0x1c(r1) +/* 80221A28 0021E988 EC 21 00 7A */ fmadds f1, f1, f1, f0 +/* 80221A2C 0021E98C C0 1E 03 00 */ lfs f0, 0x300(r30) +/* 80221A30 0021E990 EC 00 00 32 */ fmuls f0, f0, f0 +/* 80221A34 0021E994 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80221A38 0021E998 4C 40 13 82 */ cror 2, 0, 2 +/* 80221A3C 0021E99C 40 82 00 4C */ bne lbl_80221A88 +/* 80221A40 0021E9A0 7F C3 F3 78 */ mr r3, r30 +/* 80221A44 0021E9A4 7F E4 FB 78 */ mr r4, r31 +/* 80221A48 0021E9A8 81 9E 00 00 */ lwz r12, 0(r30) +/* 80221A4C 0021E9AC C0 22 B4 4C */ lfs f1, lbl_805AD16C@sda21(r2) +/* 80221A50 0021E9B0 81 8C 01 E8 */ lwz r12, 0x1e8(r12) +/* 80221A54 0021E9B4 7D 89 03 A6 */ mtctr r12 +/* 80221A58 0021E9B8 4E 80 04 21 */ bctrl +/* 80221A5C 0021E9BC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80221A60 0021E9C0 40 82 00 28 */ bne lbl_80221A88 +/* 80221A64 0021E9C4 7F C3 F3 78 */ mr r3, r30 +/* 80221A68 0021E9C8 7F E4 FB 78 */ mr r4, r31 +/* 80221A6C 0021E9CC 38 A1 00 14 */ addi r5, r1, 0x14 +/* 80221A70 0021E9D0 38 C1 00 20 */ addi r6, r1, 0x20 +/* 80221A74 0021E9D4 4B FD 33 5D */ bl IsPatternObstructed__10CPatternedCFR13CStateManagerRC9CVector3fRC9CVector3f +/* 80221A78 0021E9D8 54 60 06 3E */ clrlwi r0, r3, 0x18 +/* 80221A7C 0021E9DC 7C 00 00 34 */ cntlzw r0, r0 +/* 80221A80 0021E9E0 54 03 D9 7E */ srwi r3, r0, 5 +/* 80221A84 0021E9E4 48 00 00 08 */ b lbl_80221A8C +lbl_80221A88: +/* 80221A88 0021E9E8 38 60 00 00 */ li r3, 0 +lbl_80221A8C: +/* 80221A8C 0021E9EC 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 80221A90 0021E9F0 83 E1 00 9C */ lwz r31, 0x9c(r1) +/* 80221A94 0021E9F4 83 C1 00 98 */ lwz r30, 0x98(r1) +/* 80221A98 0021E9F8 7C 08 03 A6 */ mtlr r0 +/* 80221A9C 0021E9FC 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 80221AA0 0021EA00 4E 80 00 20 */ blr + +.global ShouldSpecialAttack__9CBabygothFR13CStateManagerf +ShouldSpecialAttack__9CBabygothFR13CStateManagerf: +/* 80221AA4 0021EA04 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 80221AA8 0021EA08 7C 08 02 A6 */ mflr r0 +/* 80221AAC 0021EA0C 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 80221AB0 0021EA10 93 E1 00 9C */ stw r31, 0x9c(r1) +/* 80221AB4 0021EA14 7C 9F 23 78 */ mr r31, r4 +/* 80221AB8 0021EA18 93 C1 00 98 */ stw r30, 0x98(r1) +/* 80221ABC 0021EA1C 7C 7E 1B 78 */ mr r30, r3 +/* 80221AC0 0021EA20 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 80221AC4 0021EA24 80 63 00 04 */ lwz r3, 4(r3) +/* 80221AC8 0021EA28 80 04 00 04 */ lwz r0, 4(r4) +/* 80221ACC 0021EA2C 7C 03 00 00 */ cmpw r3, r0 +/* 80221AD0 0021EA30 40 82 00 FC */ bne lbl_80221BCC +/* 80221AD4 0021EA34 C0 1E 08 E4 */ lfs f0, 0x8e4(r30) +/* 80221AD8 0021EA38 C0 22 B4 04 */ lfs f1, lbl_805AD124@sda21(r2) +/* 80221ADC 0021EA3C FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80221AE0 0021EA40 4C 40 13 82 */ cror 2, 0, 2 +/* 80221AE4 0021EA44 40 82 00 E8 */ bne lbl_80221BCC +/* 80221AE8 0021EA48 81 84 00 00 */ lwz r12, 0(r4) +/* 80221AEC 0021EA4C 7F E5 FB 78 */ mr r5, r31 +/* 80221AF0 0021EA50 38 61 00 08 */ addi r3, r1, 8 +/* 80221AF4 0021EA54 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 80221AF8 0021EA58 7D 89 03 A6 */ mtctr r12 +/* 80221AFC 0021EA5C 4E 80 04 21 */ bctrl +/* 80221B00 0021EA60 C0 41 00 08 */ lfs f2, 8(r1) +/* 80221B04 0021EA64 7F C4 F3 78 */ mr r4, r30 +/* 80221B08 0021EA68 C0 21 00 0C */ lfs f1, 0xc(r1) +/* 80221B0C 0021EA6C 38 61 00 2C */ addi r3, r1, 0x2c +/* 80221B10 0021EA70 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 80221B14 0021EA74 38 BE 09 F4 */ addi r5, r30, 0x9f4 +/* 80221B18 0021EA78 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 80221B1C 0021EA7C D0 21 00 24 */ stfs f1, 0x24(r1) +/* 80221B20 0021EA80 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 80221B24 0021EA84 4B E5 6D 95 */ bl GetLctrTransform__10CPatternedCFRC6CSegId +/* 80221B28 0021EA88 38 61 00 5C */ addi r3, r1, 0x5c +/* 80221B2C 0021EA8C 38 81 00 2C */ addi r4, r1, 0x2c +/* 80221B30 0021EA90 48 0F 10 45 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80221B34 0021EA94 C0 41 00 78 */ lfs f2, 0x78(r1) +/* 80221B38 0021EA98 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 80221B3C 0021EA9C C0 61 00 68 */ lfs f3, 0x68(r1) +/* 80221B40 0021EAA0 EC 80 10 28 */ fsubs f4, f0, f2 +/* 80221B44 0021EAA4 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 80221B48 0021EAA8 C0 C1 00 88 */ lfs f6, 0x88(r1) +/* 80221B4C 0021EAAC EC A0 18 28 */ fsubs f5, f0, f3 +/* 80221B50 0021EAB0 C0 21 00 28 */ lfs f1, 0x28(r1) +/* 80221B54 0021EAB4 EC 04 01 32 */ fmuls f0, f4, f4 +/* 80221B58 0021EAB8 D0 61 00 14 */ stfs f3, 0x14(r1) +/* 80221B5C 0021EABC EC 21 30 28 */ fsubs f1, f1, f6 +/* 80221B60 0021EAC0 EC 05 01 7A */ fmadds f0, f5, f5, f0 +/* 80221B64 0021EAC4 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 80221B68 0021EAC8 D0 C1 00 1C */ stfs f6, 0x1c(r1) +/* 80221B6C 0021EACC EC 21 00 7A */ fmadds f1, f1, f1, f0 +/* 80221B70 0021EAD0 C0 1E 03 00 */ lfs f0, 0x300(r30) +/* 80221B74 0021EAD4 EC 00 00 32 */ fmuls f0, f0, f0 +/* 80221B78 0021EAD8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80221B7C 0021EADC 4C 41 13 82 */ cror 2, 1, 2 +/* 80221B80 0021EAE0 40 82 00 4C */ bne lbl_80221BCC +/* 80221B84 0021EAE4 7F C3 F3 78 */ mr r3, r30 +/* 80221B88 0021EAE8 7F E4 FB 78 */ mr r4, r31 +/* 80221B8C 0021EAEC 81 9E 00 00 */ lwz r12, 0(r30) +/* 80221B90 0021EAF0 C0 22 B4 3C */ lfs f1, lbl_805AD15C@sda21(r2) +/* 80221B94 0021EAF4 81 8C 01 E8 */ lwz r12, 0x1e8(r12) +/* 80221B98 0021EAF8 7D 89 03 A6 */ mtctr r12 +/* 80221B9C 0021EAFC 4E 80 04 21 */ bctrl +/* 80221BA0 0021EB00 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80221BA4 0021EB04 40 82 00 28 */ bne lbl_80221BCC +/* 80221BA8 0021EB08 7F C3 F3 78 */ mr r3, r30 +/* 80221BAC 0021EB0C 7F E4 FB 78 */ mr r4, r31 +/* 80221BB0 0021EB10 38 A1 00 14 */ addi r5, r1, 0x14 +/* 80221BB4 0021EB14 38 C1 00 20 */ addi r6, r1, 0x20 +/* 80221BB8 0021EB18 4B FD 32 19 */ bl IsPatternObstructed__10CPatternedCFR13CStateManagerRC9CVector3fRC9CVector3f +/* 80221BBC 0021EB1C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80221BC0 0021EB20 40 82 00 0C */ bne lbl_80221BCC +/* 80221BC4 0021EB24 38 60 00 01 */ li r3, 1 +/* 80221BC8 0021EB28 48 00 00 08 */ b lbl_80221BD0 +lbl_80221BCC: +/* 80221BCC 0021EB2C 38 60 00 00 */ li r3, 0 +lbl_80221BD0: +/* 80221BD0 0021EB30 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 80221BD4 0021EB34 83 E1 00 9C */ lwz r31, 0x9c(r1) +/* 80221BD8 0021EB38 83 C1 00 98 */ lwz r30, 0x98(r1) +/* 80221BDC 0021EB3C 7C 08 03 A6 */ mtlr r0 +/* 80221BE0 0021EB40 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 80221BE4 0021EB44 4E 80 00 20 */ blr + +.global ShouldAttack__9CBabygothFR13CStateManagerf +ShouldAttack__9CBabygothFR13CStateManagerf: +/* 80221BE8 0021EB48 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 80221BEC 0021EB4C 7C 08 02 A6 */ mflr r0 +/* 80221BF0 0021EB50 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 80221BF4 0021EB54 DB E1 00 E0 */ stfd f31, 0xe0(r1) +/* 80221BF8 0021EB58 F3 E1 00 E8 */ psq_st f31, 232(r1), 0, qr0 +/* 80221BFC 0021EB5C DB C1 00 D0 */ stfd f30, 0xd0(r1) +/* 80221C00 0021EB60 F3 C1 00 D8 */ psq_st f30, 216(r1), 0, qr0 +/* 80221C04 0021EB64 93 E1 00 CC */ stw r31, 0xcc(r1) +/* 80221C08 0021EB68 93 C1 00 C8 */ stw r30, 0xc8(r1) +/* 80221C0C 0021EB6C 93 A1 00 C4 */ stw r29, 0xc4(r1) +/* 80221C10 0021EB70 7C 9E 23 78 */ mr r30, r4 +/* 80221C14 0021EB74 7C 7D 1B 78 */ mr r29, r3 +/* 80221C18 0021EB78 83 E4 08 4C */ lwz r31, 0x84c(r4) +/* 80221C1C 0021EB7C 80 63 00 04 */ lwz r3, 4(r3) +/* 80221C20 0021EB80 80 1F 00 04 */ lwz r0, 4(r31) +/* 80221C24 0021EB84 7C 03 00 00 */ cmpw r3, r0 +/* 80221C28 0021EB88 40 82 01 9C */ bne lbl_80221DC4 +/* 80221C2C 0021EB8C 7F E3 FB 78 */ mr r3, r31 +/* 80221C30 0021EB90 4B DF 40 CD */ bl GetFrozenState__7CPlayerCFv +/* 80221C34 0021EB94 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80221C38 0021EB98 40 82 01 8C */ bne lbl_80221DC4 +/* 80221C3C 0021EB9C C0 1D 08 D8 */ lfs f0, 0x8d8(r29) +/* 80221C40 0021EBA0 C0 22 B4 04 */ lfs f1, lbl_805AD124@sda21(r2) +/* 80221C44 0021EBA4 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80221C48 0021EBA8 4C 40 13 82 */ cror 2, 0, 2 +/* 80221C4C 0021EBAC 40 82 01 78 */ bne lbl_80221DC4 +/* 80221C50 0021EBB0 C0 1D 08 E0 */ lfs f0, 0x8e0(r29) +/* 80221C54 0021EBB4 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80221C58 0021EBB8 4C 40 13 82 */ cror 2, 0, 2 +/* 80221C5C 0021EBBC 40 82 01 68 */ bne lbl_80221DC4 +/* 80221C60 0021EBC0 81 9F 00 00 */ lwz r12, 0(r31) +/* 80221C64 0021EBC4 7F E4 FB 78 */ mr r4, r31 +/* 80221C68 0021EBC8 7F C5 F3 78 */ mr r5, r30 +/* 80221C6C 0021EBCC 38 61 00 24 */ addi r3, r1, 0x24 +/* 80221C70 0021EBD0 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 80221C74 0021EBD4 7D 89 03 A6 */ mtctr r12 +/* 80221C78 0021EBD8 4E 80 04 21 */ bctrl +/* 80221C7C 0021EBDC C0 A1 00 24 */ lfs f5, 0x24(r1) +/* 80221C80 0021EBE0 38 61 00 3C */ addi r3, r1, 0x3c +/* 80221C84 0021EBE4 C0 81 00 28 */ lfs f4, 0x28(r1) +/* 80221C88 0021EBE8 C0 61 00 2C */ lfs f3, 0x2c(r1) +/* 80221C8C 0021EBEC D0 A1 00 48 */ stfs f5, 0x48(r1) +/* 80221C90 0021EBF0 D0 81 00 4C */ stfs f4, 0x4c(r1) +/* 80221C94 0021EBF4 D0 61 00 50 */ stfs f3, 0x50(r1) +/* 80221C98 0021EBF8 C0 5D 00 50 */ lfs f2, 0x50(r29) +/* 80221C9C 0021EBFC C0 3D 00 60 */ lfs f1, 0x60(r29) +/* 80221CA0 0021EC00 C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 80221CA4 0021EC04 EC 44 10 28 */ fsubs f2, f4, f2 +/* 80221CA8 0021EC08 EC 23 08 28 */ fsubs f1, f3, f1 +/* 80221CAC 0021EC0C EC 05 00 28 */ fsubs f0, f5, f0 +/* 80221CB0 0021EC10 D0 41 00 40 */ stfs f2, 0x40(r1) +/* 80221CB4 0021EC14 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 80221CB8 0021EC18 D0 21 00 44 */ stfs f1, 0x44(r1) +/* 80221CBC 0021EC1C 48 0F 2B FD */ bl Magnitude__9CVector3fCFv +/* 80221CC0 0021EC20 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 80221CC4 0021EC24 FF E0 08 90 */ fmr f31, f1 +/* 80221CC8 0021EC28 C3 DD 06 D0 */ lfs f30, 0x6d0(r29) +/* 80221CCC 0021EC2C 38 63 02 A4 */ addi r3, r3, 0x2a4 +/* 80221CD0 0021EC30 4B F1 21 DD */ bl GetMaxSpeed__14CBodyStateInfoCFv +/* 80221CD4 0021EC34 EC 01 07 B2 */ fmuls f0, f1, f30 +/* 80221CD8 0021EC38 FC 00 F8 40 */ fcmpo cr0, f0, f31 +/* 80221CDC 0021EC3C 40 81 00 E8 */ ble lbl_80221DC4 +/* 80221CE0 0021EC40 7F A3 EB 78 */ mr r3, r29 +/* 80221CE4 0021EC44 7F C4 F3 78 */ mr r4, r30 +/* 80221CE8 0021EC48 81 9D 00 00 */ lwz r12, 0(r29) +/* 80221CEC 0021EC4C C0 22 B4 3C */ lfs f1, lbl_805AD15C@sda21(r2) +/* 80221CF0 0021EC50 81 8C 01 E8 */ lwz r12, 0x1e8(r12) +/* 80221CF4 0021EC54 7D 89 03 A6 */ mtctr r12 +/* 80221CF8 0021EC58 4E 80 04 21 */ bctrl +/* 80221CFC 0021EC5C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80221D00 0021EC60 40 82 00 C4 */ bne lbl_80221DC4 +/* 80221D04 0021EC64 7F A4 EB 78 */ mr r4, r29 +/* 80221D08 0021EC68 38 61 00 54 */ addi r3, r1, 0x54 +/* 80221D0C 0021EC6C 38 BD 09 F4 */ addi r5, r29, 0x9f4 +/* 80221D10 0021EC70 4B E5 6B A9 */ bl GetLctrTransform__10CPatternedCFRC6CSegId +/* 80221D14 0021EC74 38 61 00 84 */ addi r3, r1, 0x84 +/* 80221D18 0021EC78 38 81 00 54 */ addi r4, r1, 0x54 +/* 80221D1C 0021EC7C 48 0F 0E 59 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80221D20 0021EC80 C0 41 00 90 */ lfs f2, 0x90(r1) +/* 80221D24 0021EC84 7F A3 EB 78 */ mr r3, r29 +/* 80221D28 0021EC88 C0 21 00 A0 */ lfs f1, 0xa0(r1) +/* 80221D2C 0021EC8C 7F C4 F3 78 */ mr r4, r30 +/* 80221D30 0021EC90 C0 01 00 B0 */ lfs f0, 0xb0(r1) +/* 80221D34 0021EC94 38 A1 00 30 */ addi r5, r1, 0x30 +/* 80221D38 0021EC98 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 80221D3C 0021EC9C 38 C1 00 48 */ addi r6, r1, 0x48 +/* 80221D40 0021ECA0 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 80221D44 0021ECA4 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 80221D48 0021ECA8 4B FD 30 89 */ bl IsPatternObstructed__10CPatternedCFR13CStateManagerRC9CVector3fRC9CVector3f +/* 80221D4C 0021ECAC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80221D50 0021ECB0 40 82 00 74 */ bne lbl_80221DC4 +/* 80221D54 0021ECB4 A0 1D 06 E8 */ lhz r0, 0x6e8(r29) +/* 80221D58 0021ECB8 7F C3 F3 78 */ mr r3, r30 +/* 80221D5C 0021ECBC 38 81 00 18 */ addi r4, r1, 0x18 +/* 80221D60 0021ECC0 B0 01 00 18 */ sth r0, 0x18(r1) +/* 80221D64 0021ECC4 4B E2 A8 11 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80221D68 0021ECC8 7C 64 1B 78 */ mr r4, r3 +/* 80221D6C 0021ECCC 38 61 00 1C */ addi r3, r1, 0x1c +/* 80221D70 0021ECD0 4B E8 58 05 */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" +/* 80221D74 0021ECD4 83 E3 00 04 */ lwz r31, 4(r3) +/* 80221D78 0021ECD8 28 1F 00 00 */ cmplwi r31, 0 +/* 80221D7C 0021ECDC 41 82 00 40 */ beq lbl_80221DBC +/* 80221D80 0021ECE0 A0 1D 00 08 */ lhz r0, 8(r29) +/* 80221D84 0021ECE4 7F E3 FB 78 */ mr r3, r31 +/* 80221D88 0021ECE8 38 81 00 14 */ addi r4, r1, 0x14 +/* 80221D8C 0021ECEC B0 01 00 10 */ sth r0, 0x10(r1) +/* 80221D90 0021ECF0 B0 01 00 14 */ sth r0, 0x14(r1) +/* 80221D94 0021ECF4 48 01 72 5D */ bl IsPartOfTeam__10CTeamAiMgrCF9TUniqueId +/* 80221D98 0021ECF8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80221D9C 0021ECFC 41 82 00 20 */ beq lbl_80221DBC +/* 80221DA0 0021ED00 A0 1D 00 08 */ lhz r0, 8(r29) +/* 80221DA4 0021ED04 7F E3 FB 78 */ mr r3, r31 +/* 80221DA8 0021ED08 38 81 00 0C */ addi r4, r1, 0xc +/* 80221DAC 0021ED0C B0 01 00 08 */ sth r0, 8(r1) +/* 80221DB0 0021ED10 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80221DB4 0021ED14 48 01 6E F9 */ bl AddMeleeAttacker__10CTeamAiMgrF9TUniqueId +/* 80221DB8 0021ED18 48 00 00 10 */ b lbl_80221DC8 +lbl_80221DBC: +/* 80221DBC 0021ED1C 38 60 00 01 */ li r3, 1 +/* 80221DC0 0021ED20 48 00 00 08 */ b lbl_80221DC8 +lbl_80221DC4: +/* 80221DC4 0021ED24 38 60 00 00 */ li r3, 0 +lbl_80221DC8: +/* 80221DC8 0021ED28 E3 E1 00 E8 */ psq_l f31, 232(r1), 0, qr0 +/* 80221DCC 0021ED2C CB E1 00 E0 */ lfd f31, 0xe0(r1) +/* 80221DD0 0021ED30 E3 C1 00 D8 */ psq_l f30, 216(r1), 0, qr0 +/* 80221DD4 0021ED34 CB C1 00 D0 */ lfd f30, 0xd0(r1) +/* 80221DD8 0021ED38 83 E1 00 CC */ lwz r31, 0xcc(r1) +/* 80221DDC 0021ED3C 83 C1 00 C8 */ lwz r30, 0xc8(r1) +/* 80221DE0 0021ED40 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 80221DE4 0021ED44 83 A1 00 C4 */ lwz r29, 0xc4(r1) +/* 80221DE8 0021ED48 7C 08 03 A6 */ mtlr r0 +/* 80221DEC 0021ED4C 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 80221DF0 0021ED50 4E 80 00 20 */ blr + +.global Leash__9CBabygothFR13CStateManagerf +Leash__9CBabygothFR13CStateManagerf: +/* 80221DF4 0021ED54 C0 C3 00 50 */ lfs f6, 0x50(r3) +/* 80221DF8 0021ED58 C0 03 03 A4 */ lfs f0, 0x3a4(r3) +/* 80221DFC 0021ED5C C0 43 03 C8 */ lfs f2, 0x3c8(r3) +/* 80221E00 0021ED60 EC 60 30 28 */ fsubs f3, f0, f6 +/* 80221E04 0021ED64 C0 E3 00 40 */ lfs f7, 0x40(r3) +/* 80221E08 0021ED68 C0 23 03 A0 */ lfs f1, 0x3a0(r3) +/* 80221E0C 0021ED6C EC 02 00 B2 */ fmuls f0, f2, f2 +/* 80221E10 0021ED70 C0 A3 00 60 */ lfs f5, 0x60(r3) +/* 80221E14 0021ED74 C0 43 03 A8 */ lfs f2, 0x3a8(r3) +/* 80221E18 0021ED78 EC 81 38 28 */ fsubs f4, f1, f7 +/* 80221E1C 0021ED7C EC 23 00 F2 */ fmuls f1, f3, f3 +/* 80221E20 0021ED80 EC 42 28 28 */ fsubs f2, f2, f5 +/* 80221E24 0021ED84 EC 24 09 3A */ fmadds f1, f4, f4, f1 +/* 80221E28 0021ED88 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 80221E2C 0021ED8C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80221E30 0021ED90 40 81 00 5C */ ble lbl_80221E8C +/* 80221E34 0021ED94 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 80221E38 0021ED98 38 00 00 00 */ li r0, 0 +/* 80221E3C 0021ED9C C0 03 03 CC */ lfs f0, 0x3cc(r3) +/* 80221E40 0021EDA0 C0 24 00 50 */ lfs f1, 0x50(r4) +/* 80221E44 0021EDA4 C0 44 00 40 */ lfs f2, 0x40(r4) +/* 80221E48 0021EDA8 EC 00 00 32 */ fmuls f0, f0, f0 +/* 80221E4C 0021EDAC EC 61 30 28 */ fsubs f3, f1, f6 +/* 80221E50 0021EDB0 C0 24 00 60 */ lfs f1, 0x60(r4) +/* 80221E54 0021EDB4 EC 82 38 28 */ fsubs f4, f2, f7 +/* 80221E58 0021EDB8 EC 41 28 28 */ fsubs f2, f1, f5 +/* 80221E5C 0021EDBC EC 23 00 F2 */ fmuls f1, f3, f3 +/* 80221E60 0021EDC0 EC 24 09 3A */ fmadds f1, f4, f4, f1 +/* 80221E64 0021EDC4 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 80221E68 0021EDC8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80221E6C 0021EDCC 40 81 00 18 */ ble lbl_80221E84 +/* 80221E70 0021EDD0 C0 23 03 D4 */ lfs f1, 0x3d4(r3) +/* 80221E74 0021EDD4 C0 03 03 D0 */ lfs f0, 0x3d0(r3) +/* 80221E78 0021EDD8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80221E7C 0021EDDC 40 81 00 08 */ ble lbl_80221E84 +/* 80221E80 0021EDE0 38 00 00 01 */ li r0, 1 +lbl_80221E84: +/* 80221E84 0021EDE4 7C 03 03 78 */ mr r3, r0 +/* 80221E88 0021EDE8 4E 80 00 20 */ blr +lbl_80221E8C: +/* 80221E8C 0021EDEC 38 60 00 00 */ li r3, 0 +/* 80221E90 0021EDF0 4E 80 00 20 */ blr + +.global LineOfSight__9CBabygothFR13CStateManagerf +LineOfSight__9CBabygothFR13CStateManagerf: +/* 80221E94 0021EDF4 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 80221E98 0021EDF8 7C 08 02 A6 */ mflr r0 +/* 80221E9C 0021EDFC C0 22 B4 04 */ lfs f1, lbl_805AD124@sda21(r2) +/* 80221EA0 0021EE00 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 80221EA4 0021EE04 93 E1 00 9C */ stw r31, 0x9c(r1) +/* 80221EA8 0021EE08 7C 9F 23 78 */ mr r31, r4 +/* 80221EAC 0021EE0C 7F E5 FB 78 */ mr r5, r31 +/* 80221EB0 0021EE10 93 C1 00 98 */ stw r30, 0x98(r1) +/* 80221EB4 0021EE14 7C 7E 1B 78 */ mr r30, r3 +/* 80221EB8 0021EE18 38 61 00 08 */ addi r3, r1, 8 +/* 80221EBC 0021EE1C 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 80221EC0 0021EE20 81 84 00 00 */ lwz r12, 0(r4) +/* 80221EC4 0021EE24 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 80221EC8 0021EE28 7D 89 03 A6 */ mtctr r12 +/* 80221ECC 0021EE2C 4E 80 04 21 */ bctrl +/* 80221ED0 0021EE30 C0 41 00 08 */ lfs f2, 8(r1) +/* 80221ED4 0021EE34 7F C4 F3 78 */ mr r4, r30 +/* 80221ED8 0021EE38 C0 21 00 0C */ lfs f1, 0xc(r1) +/* 80221EDC 0021EE3C 38 61 00 2C */ addi r3, r1, 0x2c +/* 80221EE0 0021EE40 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 80221EE4 0021EE44 38 BE 09 F4 */ addi r5, r30, 0x9f4 +/* 80221EE8 0021EE48 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 80221EEC 0021EE4C D0 21 00 24 */ stfs f1, 0x24(r1) +/* 80221EF0 0021EE50 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 80221EF4 0021EE54 4B E5 69 C5 */ bl GetLctrTransform__10CPatternedCFRC6CSegId +/* 80221EF8 0021EE58 38 61 00 5C */ addi r3, r1, 0x5c +/* 80221EFC 0021EE5C 38 81 00 2C */ addi r4, r1, 0x2c +/* 80221F00 0021EE60 48 0F 0C 75 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80221F04 0021EE64 C0 41 00 68 */ lfs f2, 0x68(r1) +/* 80221F08 0021EE68 7F C3 F3 78 */ mr r3, r30 +/* 80221F0C 0021EE6C C0 21 00 78 */ lfs f1, 0x78(r1) +/* 80221F10 0021EE70 7F E4 FB 78 */ mr r4, r31 +/* 80221F14 0021EE74 C0 01 00 88 */ lfs f0, 0x88(r1) +/* 80221F18 0021EE78 38 A1 00 14 */ addi r5, r1, 0x14 +/* 80221F1C 0021EE7C D0 41 00 14 */ stfs f2, 0x14(r1) +/* 80221F20 0021EE80 38 C1 00 20 */ addi r6, r1, 0x20 +/* 80221F24 0021EE84 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 80221F28 0021EE88 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 80221F2C 0021EE8C 4B FD 2E A5 */ bl IsPatternObstructed__10CPatternedCFR13CStateManagerRC9CVector3fRC9CVector3f +/* 80221F30 0021EE90 54 60 06 3E */ clrlwi r0, r3, 0x18 +/* 80221F34 0021EE94 83 E1 00 9C */ lwz r31, 0x9c(r1) +/* 80221F38 0021EE98 7C 00 00 34 */ cntlzw r0, r0 +/* 80221F3C 0021EE9C 83 C1 00 98 */ lwz r30, 0x98(r1) +/* 80221F40 0021EEA0 54 03 D9 7E */ srwi r3, r0, 5 +/* 80221F44 0021EEA4 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 80221F48 0021EEA8 7C 08 03 A6 */ mtlr r0 +/* 80221F4C 0021EEAC 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 80221F50 0021EEB0 4E 80 00 20 */ blr + +.global LostInterest__9CBabygothFR13CStateManagerf +LostInterest__9CBabygothFR13CStateManagerf: +/* 80221F54 0021EEB4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80221F58 0021EEB8 7C 08 02 A6 */ mflr r0 +/* 80221F5C 0021EEBC 7C 65 1B 78 */ mr r5, r3 +/* 80221F60 0021EEC0 90 01 00 24 */ stw r0, 0x24(r1) +/* 80221F64 0021EEC4 C0 23 08 E8 */ lfs f1, 0x8e8(r3) +/* 80221F68 0021EEC8 C0 03 06 D8 */ lfs f0, 0x6d8(r3) +/* 80221F6C 0021EECC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80221F70 0021EED0 4C 41 13 82 */ cror 2, 1, 2 +/* 80221F74 0021EED4 40 82 00 34 */ bne lbl_80221FA8 +/* 80221F78 0021EED8 C0 45 00 60 */ lfs f2, 0x60(r5) +/* 80221F7C 0021EEDC 38 65 06 EC */ addi r3, r5, 0x6ec +/* 80221F80 0021EEE0 C0 25 00 50 */ lfs f1, 0x50(r5) +/* 80221F84 0021EEE4 38 81 00 08 */ addi r4, r1, 8 +/* 80221F88 0021EEE8 C0 05 00 40 */ lfs f0, 0x40(r5) +/* 80221F8C 0021EEEC D0 01 00 08 */ stfs f0, 8(r1) +/* 80221F90 0021EEF0 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 80221F94 0021EEF4 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 80221F98 0021EEF8 4B FA 4B 9D */ bl OnPath__15CPathFindSearchCFRC9CVector3f +/* 80221F9C 0021EEFC 7C 60 00 34 */ cntlzw r0, r3 +/* 80221FA0 0021EF00 54 03 D9 7E */ srwi r3, r0, 5 +/* 80221FA4 0021EF04 48 00 00 08 */ b lbl_80221FAC +lbl_80221FA8: +/* 80221FA8 0021EF08 38 60 00 00 */ li r3, 0 +lbl_80221FAC: +/* 80221FAC 0021EF0C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80221FB0 0021EF10 7C 08 03 A6 */ mtlr r0 +/* 80221FB4 0021EF14 38 21 00 20 */ addi r1, r1, 0x20 +/* 80221FB8 0021EF18 4E 80 00 20 */ blr + +.global OffLine__9CBabygothFR13CStateManagerf +OffLine__9CBabygothFR13CStateManagerf: +/* 80221FBC 0021EF1C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80221FC0 0021EF20 7C 08 02 A6 */ mflr r0 +/* 80221FC4 0021EF24 90 01 00 14 */ stw r0, 0x14(r1) +/* 80221FC8 0021EF28 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80221FCC 0021EF2C 7C 9F 23 78 */ mr r31, r4 +/* 80221FD0 0021EF30 38 80 00 00 */ li r4, 0 +/* 80221FD4 0021EF34 93 C1 00 08 */ stw r30, 8(r1) +/* 80221FD8 0021EF38 7C 7E 1B 78 */ mr r30, r3 +/* 80221FDC 0021EF3C 4B FF C0 C1 */ bl sub_8021e09c +/* 80221FE0 0021EF40 7F C3 F3 78 */ mr r3, r30 +/* 80221FE4 0021EF44 7F E4 FB 78 */ mr r4, r31 +/* 80221FE8 0021EF48 81 9E 00 00 */ lwz r12, 0(r30) +/* 80221FEC 0021EF4C C0 22 B4 04 */ lfs f1, lbl_805AD124@sda21(r2) +/* 80221FF0 0021EF50 81 8C 01 90 */ lwz r12, 0x190(r12) +/* 80221FF4 0021EF54 7D 89 03 A6 */ mtctr r12 +/* 80221FF8 0021EF58 4E 80 04 21 */ bctrl +/* 80221FFC 0021EF5C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80222000 0021EF60 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80222004 0021EF64 83 C1 00 08 */ lwz r30, 8(r1) +/* 80222008 0021EF68 7C 08 03 A6 */ mtlr r0 +/* 8022200C 0021EF6C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80222010 0021EF70 4E 80 00 20 */ blr + +.global ShotAt__9CBabygothFR13CStateManagerf +ShotAt__9CBabygothFR13CStateManagerf: +/* 80222014 0021EF74 88 03 04 00 */ lbz r0, 0x400(r3) +/* 80222018 0021EF78 54 03 CF FE */ rlwinm r3, r0, 0x19, 0x1f, 0x1f +/* 8022201C 0021EF7C 7C 03 00 D0 */ neg r0, r3 +/* 80222020 0021EF80 7C 00 1B 78 */ or r0, r0, r3 +/* 80222024 0021EF84 54 03 0F FE */ srwi r3, r0, 0x1f +/* 80222028 0021EF88 4E 80 00 20 */ blr + +.global InMaxRange__9CBabygothFR13CStateManagerf +InMaxRange__9CBabygothFR13CStateManagerf: +/* 8022202C 0021EF8C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80222030 0021EF90 C0 22 B4 34 */ lfs f1, lbl_805AD154@sda21(r2) +/* 80222034 0021EF94 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 80222038 0021EF98 C0 03 00 50 */ lfs f0, 0x50(r3) +/* 8022203C 0021EF9C C1 24 00 50 */ lfs f9, 0x50(r4) +/* 80222040 0021EFA0 C0 C4 00 40 */ lfs f6, 0x40(r4) +/* 80222044 0021EFA4 ED 09 00 28 */ fsubs f8, f9, f0 +/* 80222048 0021EFA8 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 8022204C 0021EFAC C1 44 00 60 */ lfs f10, 0x60(r4) +/* 80222050 0021EFB0 EC A6 00 28 */ fsubs f5, f6, f0 +/* 80222054 0021EFB4 C0 03 00 60 */ lfs f0, 0x60(r3) +/* 80222058 0021EFB8 EC 48 02 32 */ fmuls f2, f8, f8 +/* 8022205C 0021EFBC EC EA 00 28 */ fsubs f7, f10, f0 +/* 80222060 0021EFC0 C0 03 03 00 */ lfs f0, 0x300(r3) +/* 80222064 0021EFC4 EC 65 01 72 */ fmuls f3, f5, f5 +/* 80222068 0021EFC8 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8022206C 0021EFCC D0 C1 00 08 */ stfs f6, 8(r1) +/* 80222070 0021EFD0 EC 87 01 F2 */ fmuls f4, f7, f7 +/* 80222074 0021EFD4 EC 43 10 2A */ fadds f2, f3, f2 +/* 80222078 0021EFD8 D1 21 00 0C */ stfs f9, 0xc(r1) +/* 8022207C 0021EFDC EC 00 00 32 */ fmuls f0, f0, f0 +/* 80222080 0021EFE0 D1 41 00 10 */ stfs f10, 0x10(r1) +/* 80222084 0021EFE4 EC 24 10 2A */ fadds f1, f4, f2 +/* 80222088 0021EFE8 D0 A1 00 14 */ stfs f5, 0x14(r1) +/* 8022208C 0021EFEC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80222090 0021EFF0 D1 01 00 18 */ stfs f8, 0x18(r1) +/* 80222094 0021EFF4 D0 E1 00 1C */ stfs f7, 0x1c(r1) +/* 80222098 0021EFF8 7C 00 00 26 */ mfcr r0 +/* 8022209C 0021EFFC 54 03 0F FE */ srwi r3, r0, 0x1f +/* 802220A0 0021F000 38 21 00 20 */ addi r1, r1, 0x20 +/* 802220A4 0021F004 4E 80 00 20 */ blr + +.global AggressionCheck__9CBabygothFR13CStateManagerf +AggressionCheck__9CBabygothFR13CStateManagerf: +/* 802220A8 0021F008 88 03 04 00 */ lbz r0, 0x400(r3) +/* 802220AC 0021F00C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 802220B0 0021F010 41 82 00 24 */ beq lbl_802220D4 +/* 802220B4 0021F014 88 03 0A 48 */ lbz r0, 0xa48(r3) +/* 802220B8 0021F018 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 802220BC 0021F01C 40 82 00 18 */ bne lbl_802220D4 +/* 802220C0 0021F020 80 03 05 6C */ lwz r0, 0x56c(r3) +/* 802220C4 0021F024 2C 00 00 03 */ cmpwi r0, 3 +/* 802220C8 0021F028 40 82 00 0C */ bne lbl_802220D4 +/* 802220CC 0021F02C 38 60 00 01 */ li r3, 1 +/* 802220D0 0021F030 4E 80 00 20 */ blr +lbl_802220D4: +/* 802220D4 0021F034 38 60 00 00 */ li r3, 0 +/* 802220D8 0021F038 4E 80 00 20 */ blr + +.global TooClose__9CBabygothFR13CStateManagerf +TooClose__9CBabygothFR13CStateManagerf: +/* 802220DC 0021F03C 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 802220E0 0021F040 7C 08 02 A6 */ mflr r0 +/* 802220E4 0021F044 90 01 00 74 */ stw r0, 0x74(r1) +/* 802220E8 0021F048 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 802220EC 0021F04C 7C 7F 1B 78 */ mr r31, r3 +/* 802220F0 0021F050 38 61 00 20 */ addi r3, r1, 0x20 +/* 802220F4 0021F054 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 802220F8 0021F058 4B EF 88 35 */ bl GetBoundingBox__13CPhysicsActorCFv +/* 802220FC 0021F05C C0 A1 00 20 */ lfs f5, 0x20(r1) +/* 80222100 0021F060 38 9F 09 30 */ addi r4, r31, 0x930 +/* 80222104 0021F064 C0 81 00 24 */ lfs f4, 0x24(r1) +/* 80222108 0021F068 38 61 00 08 */ addi r3, r1, 8 +/* 8022210C 0021F06C C0 61 00 28 */ lfs f3, 0x28(r1) +/* 80222110 0021F070 38 BF 00 34 */ addi r5, r31, 0x34 +/* 80222114 0021F074 C0 41 00 2C */ lfs f2, 0x2c(r1) +/* 80222118 0021F078 C0 21 00 30 */ lfs f1, 0x30(r1) +/* 8022211C 0021F07C C0 01 00 34 */ lfs f0, 0x34(r1) +/* 80222120 0021F080 D0 A1 00 50 */ stfs f5, 0x50(r1) +/* 80222124 0021F084 D0 81 00 54 */ stfs f4, 0x54(r1) +/* 80222128 0021F088 D0 61 00 58 */ stfs f3, 0x58(r1) +/* 8022212C 0021F08C D0 41 00 5C */ stfs f2, 0x5c(r1) +/* 80222130 0021F090 D0 21 00 60 */ stfs f1, 0x60(r1) +/* 80222134 0021F094 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 80222138 0021F098 81 9F 09 30 */ lwz r12, 0x930(r31) +/* 8022213C 0021F09C 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 80222140 0021F0A0 7D 89 03 A6 */ mtctr r12 +/* 80222144 0021F0A4 4E 80 04 21 */ bctrl +/* 80222148 0021F0A8 C0 A1 00 08 */ lfs f5, 8(r1) +/* 8022214C 0021F0AC 38 61 00 38 */ addi r3, r1, 0x38 +/* 80222150 0021F0B0 C0 81 00 0C */ lfs f4, 0xc(r1) +/* 80222154 0021F0B4 38 81 00 50 */ addi r4, r1, 0x50 +/* 80222158 0021F0B8 C0 61 00 10 */ lfs f3, 0x10(r1) +/* 8022215C 0021F0BC C0 41 00 14 */ lfs f2, 0x14(r1) +/* 80222160 0021F0C0 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 80222164 0021F0C4 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 80222168 0021F0C8 D0 A1 00 38 */ stfs f5, 0x38(r1) +/* 8022216C 0021F0CC D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 80222170 0021F0D0 D0 61 00 40 */ stfs f3, 0x40(r1) +/* 80222174 0021F0D4 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 80222178 0021F0D8 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 8022217C 0021F0DC D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 80222180 0021F0E0 48 11 5A 05 */ bl DoBoundsOverlap__6CAABoxCFRC6CAABox +/* 80222184 0021F0E4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80222188 0021F0E8 41 82 00 1C */ beq lbl_802221A4 +/* 8022218C 0021F0EC 88 1F 0A 49 */ lbz r0, 0xa49(r31) +/* 80222190 0021F0F0 38 60 00 01 */ li r3, 1 +/* 80222194 0021F0F4 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 80222198 0021F0F8 38 60 00 01 */ li r3, 1 +/* 8022219C 0021F0FC 98 1F 0A 49 */ stb r0, 0xa49(r31) +/* 802221A0 0021F100 48 00 00 08 */ b lbl_802221A8 +lbl_802221A4: +/* 802221A4 0021F104 38 60 00 00 */ li r3, 0 +lbl_802221A8: +/* 802221A8 0021F108 80 01 00 74 */ lwz r0, 0x74(r1) +/* 802221AC 0021F10C 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 802221B0 0021F110 7C 08 03 A6 */ mtlr r0 +/* 802221B4 0021F114 38 21 00 70 */ addi r1, r1, 0x70 +/* 802221B8 0021F118 4E 80 00 20 */ blr + +.global GetAimPosition__9CBabygothCFRC13CStateManagerf +GetAimPosition__9CBabygothCFRC13CStateManagerf: +/* 802221BC 0021F11C 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 802221C0 0021F120 7C 08 02 A6 */ mflr r0 +/* 802221C4 0021F124 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 802221C8 0021F128 DB E1 00 D0 */ stfd f31, 0xd0(r1) +/* 802221CC 0021F12C F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 +/* 802221D0 0021F130 DB C1 00 C0 */ stfd f30, 0xc0(r1) +/* 802221D4 0021F134 F3 C1 00 C8 */ psq_st f30, 200(r1), 0, qr0 +/* 802221D8 0021F138 DB A1 00 B0 */ stfd f29, 0xb0(r1) +/* 802221DC 0021F13C F3 A1 00 B8 */ psq_st f29, 184(r1), 0, qr0 +/* 802221E0 0021F140 DB 81 00 A0 */ stfd f28, 0xa0(r1) +/* 802221E4 0021F144 F3 81 00 A8 */ psq_st f28, 168(r1), 0, qr0 +/* 802221E8 0021F148 BF 21 00 84 */ stmw r25, 0x84(r1) +/* 802221EC 0021F14C 7C 9E 23 78 */ mr r30, r4 +/* 802221F0 0021F150 7C 7D 1B 78 */ mr r29, r3 +/* 802221F4 0021F154 80 64 04 50 */ lwz r3, 0x450(r4) +/* 802221F8 0021F158 7C BF 2B 78 */ mr r31, r5 +/* 802221FC 0021F15C 80 03 02 EC */ lwz r0, 0x2ec(r3) +/* 80222200 0021F160 2C 00 00 00 */ cmpwi r0, 0 +/* 80222204 0021F164 41 82 02 34 */ beq lbl_80222438 +/* 80222208 0021F168 80 1E 09 F8 */ lwz r0, 0x9f8(r30) +/* 8022220C 0021F16C 2C 00 00 00 */ cmpwi r0, 0 +/* 80222210 0021F170 41 82 02 28 */ beq lbl_80222438 +/* 80222214 0021F174 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80222218 0021F178 3B 5E 09 FC */ addi r26, r30, 0x9fc +/* 8022221C 0021F17C 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 80222220 0021F180 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 80222224 0021F184 C3 E4 00 00 */ lfs f31, 0(r4) +/* 80222228 0021F188 7F 59 D3 78 */ mr r25, r26 +/* 8022222C 0021F18C C3 C4 00 04 */ lfs f30, 4(r4) +/* 80222230 0021F190 3B 83 66 F4 */ addi r28, r3, lbl_805A66F4@l +/* 80222234 0021F194 C3 A4 00 08 */ lfs f29, 8(r4) +/* 80222238 0021F198 48 00 00 7C */ b lbl_802222B4 +lbl_8022223C: +/* 8022223C 0021F19C A0 19 00 00 */ lhz r0, 0(r25) +/* 80222240 0021F1A0 7F E3 FB 78 */ mr r3, r31 +/* 80222244 0021F1A4 38 81 00 0C */ addi r4, r1, 0xc +/* 80222248 0021F1A8 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8022224C 0021F1AC 4B E2 A3 59 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80222250 0021F1B0 7C 64 1B 78 */ mr r4, r3 +/* 80222254 0021F1B4 38 61 00 18 */ addi r3, r1, 0x18 +/* 80222258 0021F1B8 4B E8 D0 F5 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8022225C 0021F1BC 83 63 00 04 */ lwz r27, 4(r3) +/* 80222260 0021F1C0 28 1B 00 00 */ cmplwi r27, 0 +/* 80222264 0021F1C4 41 82 00 4C */ beq lbl_802222B0 +/* 80222268 0021F1C8 7F 63 DB 78 */ mr r3, r27 +/* 8022226C 0021F1CC 4B F8 69 11 */ bl GetSphereRadius__15CCollisionActorCFv +/* 80222270 0021F1D0 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 80222274 0021F1D4 C0 5C 00 04 */ lfs f2, 4(r28) +/* 80222278 0021F1D8 C0 1C 00 08 */ lfs f0, 8(r28) +/* 8022227C 0021F1DC C0 83 66 F4 */ lfs f4, lbl_805A66F4@l(r3) +/* 80222280 0021F1E0 EC 41 00 B2 */ fmuls f2, f1, f2 +/* 80222284 0021F1E4 EC 01 00 32 */ fmuls f0, f1, f0 +/* 80222288 0021F1E8 C0 7B 00 50 */ lfs f3, 0x50(r27) +/* 8022228C 0021F1EC EC 81 01 32 */ fmuls f4, f1, f4 +/* 80222290 0021F1F0 C0 3B 00 60 */ lfs f1, 0x60(r27) +/* 80222294 0021F1F4 C0 BB 00 40 */ lfs f5, 0x40(r27) +/* 80222298 0021F1F8 EC 43 10 2A */ fadds f2, f3, f2 +/* 8022229C 0021F1FC EC 65 20 2A */ fadds f3, f5, f4 +/* 802222A0 0021F200 EC 01 00 2A */ fadds f0, f1, f0 +/* 802222A4 0021F204 EF DE 10 2A */ fadds f30, f30, f2 +/* 802222A8 0021F208 EF FF 18 2A */ fadds f31, f31, f3 +/* 802222AC 0021F20C EF BD 00 2A */ fadds f29, f29, f0 +lbl_802222B0: +/* 802222B0 0021F210 3B 39 00 02 */ addi r25, r25, 2 +lbl_802222B4: +/* 802222B4 0021F214 80 7E 09 F8 */ lwz r3, 0x9f8(r30) +/* 802222B8 0021F218 54 60 08 3C */ slwi r0, r3, 1 +/* 802222BC 0021F21C 7C 1A 02 14 */ add r0, r26, r0 +/* 802222C0 0021F220 7C 19 00 40 */ cmplw r25, r0 +/* 802222C4 0021F224 40 82 FF 78 */ bne lbl_8022223C +/* 802222C8 0021F228 C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 802222CC 0021F22C 38 00 00 00 */ li r0, 0 +/* 802222D0 0021F230 FC 00 F8 00 */ fcmpu cr0, f0, f31 +/* 802222D4 0021F234 40 82 00 14 */ bne lbl_802222E8 +/* 802222D8 0021F238 FC 00 F0 00 */ fcmpu cr0, f0, f30 +/* 802222DC 0021F23C 40 82 00 0C */ bne lbl_802222E8 +/* 802222E0 0021F240 FC 00 E8 00 */ fcmpu cr0, f0, f29 +/* 802222E4 0021F244 41 82 00 08 */ beq lbl_802222EC +lbl_802222E8: +/* 802222E8 0021F248 38 00 00 01 */ li r0, 1 +lbl_802222EC: +/* 802222EC 0021F24C 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 802222F0 0021F250 41 82 00 34 */ beq lbl_80222324 +/* 802222F4 0021F254 6C 63 80 00 */ xoris r3, r3, 0x8000 +/* 802222F8 0021F258 3C 00 43 30 */ lis r0, 0x4330 +/* 802222FC 0021F25C 90 61 00 74 */ stw r3, 0x74(r1) +/* 80222300 0021F260 C8 22 B4 58 */ lfd f1, lbl_805AD178@sda21(r2) +/* 80222304 0021F264 90 01 00 70 */ stw r0, 0x70(r1) +/* 80222308 0021F268 C0 42 B4 18 */ lfs f2, lbl_805AD138@sda21(r2) +/* 8022230C 0021F26C C8 01 00 70 */ lfd f0, 0x70(r1) +/* 80222310 0021F270 EC 00 08 28 */ fsubs f0, f0, f1 +/* 80222314 0021F274 EC 02 00 24 */ fdivs f0, f2, f0 +/* 80222318 0021F278 EF FF 00 32 */ fmuls f31, f31, f0 +/* 8022231C 0021F27C EF DE 00 32 */ fmuls f30, f30, f0 +/* 80222320 0021F280 EF BD 00 32 */ fmuls f29, f29, f0 +lbl_80222324: +/* 80222324 0021F284 A0 1E 09 F6 */ lhz r0, 0x9f6(r30) +/* 80222328 0021F288 FF 80 E8 90 */ fmr f28, f29 +/* 8022232C 0021F28C 7F E3 FB 78 */ mr r3, r31 +/* 80222330 0021F290 38 81 00 08 */ addi r4, r1, 8 +/* 80222334 0021F294 B0 01 00 08 */ sth r0, 8(r1) +/* 80222338 0021F298 4B E2 A2 6D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8022233C 0021F29C 7C 64 1B 78 */ mr r4, r3 +/* 80222340 0021F2A0 38 61 00 10 */ addi r3, r1, 0x10 +/* 80222344 0021F2A4 4B E8 D0 09 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 80222348 0021F2A8 80 63 00 04 */ lwz r3, 4(r3) +/* 8022234C 0021F2AC 28 03 00 00 */ cmplwi r3, 0 +/* 80222350 0021F2B0 41 82 00 1C */ beq lbl_8022236C +/* 80222354 0021F2B4 C3 83 00 60 */ lfs f28, 0x60(r3) +/* 80222358 0021F2B8 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 8022235C 0021F2BC C0 03 00 40 */ lfs f0, 0x40(r3) +/* 80222360 0021F2C0 D0 21 00 68 */ stfs f1, 0x68(r1) +/* 80222364 0021F2C4 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 80222368 0021F2C8 D3 81 00 6C */ stfs f28, 0x6c(r1) +lbl_8022236C: +/* 8022236C 0021F2CC C0 5E 00 48 */ lfs f2, 0x48(r30) +/* 80222370 0021F2D0 38 61 00 28 */ addi r3, r1, 0x28 +/* 80222374 0021F2D4 C0 3E 00 38 */ lfs f1, 0x38(r30) +/* 80222378 0021F2D8 C0 1E 00 58 */ lfs f0, 0x58(r30) +/* 8022237C 0021F2DC D0 21 00 58 */ stfs f1, 0x58(r1) +/* 80222380 0021F2E0 D0 41 00 5C */ stfs f2, 0x5c(r1) +/* 80222384 0021F2E4 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 80222388 0021F2E8 48 0F 1E 79 */ bl __ct__9CVector2fFff +/* 8022238C 0021F2EC C0 21 00 28 */ lfs f1, 0x28(r1) +/* 80222390 0021F2F0 38 61 00 20 */ addi r3, r1, 0x20 +/* 80222394 0021F2F4 C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 80222398 0021F2F8 D0 21 00 38 */ stfs f1, 0x38(r1) +/* 8022239C 0021F2FC 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 802223A0 0021F300 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 802223A4 0021F304 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 802223A8 0021F308 C0 84 00 50 */ lfs f4, 0x50(r4) +/* 802223AC 0021F30C C0 04 00 40 */ lfs f0, 0x40(r4) +/* 802223B0 0021F310 EC 44 08 28 */ fsubs f2, f4, f1 +/* 802223B4 0021F314 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 802223B8 0021F318 C0 A4 00 60 */ lfs f5, 0x60(r4) +/* 802223BC 0021F31C C0 7E 00 60 */ lfs f3, 0x60(r30) +/* 802223C0 0021F320 EC 20 08 28 */ fsubs f1, f0, f1 +/* 802223C4 0021F324 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 802223C8 0021F328 EC 65 18 28 */ fsubs f3, f5, f3 +/* 802223CC 0021F32C D0 81 00 44 */ stfs f4, 0x44(r1) +/* 802223D0 0021F330 D0 A1 00 48 */ stfs f5, 0x48(r1) +/* 802223D4 0021F334 D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 802223D8 0021F338 D0 41 00 50 */ stfs f2, 0x50(r1) +/* 802223DC 0021F33C D0 61 00 54 */ stfs f3, 0x54(r1) +/* 802223E0 0021F340 48 0F 1E 21 */ bl __ct__9CVector2fFff +/* 802223E4 0021F344 C0 21 00 20 */ lfs f1, 0x20(r1) +/* 802223E8 0021F348 38 61 00 38 */ addi r3, r1, 0x38 +/* 802223EC 0021F34C C0 01 00 24 */ lfs f0, 0x24(r1) +/* 802223F0 0021F350 38 81 00 30 */ addi r4, r1, 0x30 +/* 802223F4 0021F354 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 802223F8 0021F358 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 802223FC 0021F35C 48 0F 1B C9 */ bl GetAngleDiff__9CVector2fFRC9CVector2fRC9CVector2f +/* 80222400 0021F360 C0 42 B4 50 */ lfs f2, lbl_805AD170@sda21(r2) +/* 80222404 0021F364 C0 02 B4 18 */ lfs f0, lbl_805AD138@sda21(r2) +/* 80222408 0021F368 EC 81 10 24 */ fdivs f4, f1, f2 +/* 8022240C 0021F36C EC 60 20 28 */ fsubs f3, f0, f4 +/* 80222410 0021F370 EC 5F 01 32 */ fmuls f2, f31, f4 +/* 80222414 0021F374 EC 3E 01 32 */ fmuls f1, f30, f4 +/* 80222418 0021F378 EC 1D 01 32 */ fmuls f0, f29, f4 +/* 8022241C 0021F37C EC 5F 10 FA */ fmadds f2, f31, f3, f2 +/* 80222420 0021F380 EC 3E 08 FA */ fmadds f1, f30, f3, f1 +/* 80222424 0021F384 EC 1C 00 FA */ fmadds f0, f28, f3, f0 +/* 80222428 0021F388 D0 5D 00 00 */ stfs f2, 0(r29) +/* 8022242C 0021F38C D0 3D 00 04 */ stfs f1, 4(r29) +/* 80222430 0021F390 D0 1D 00 08 */ stfs f0, 8(r29) +/* 80222434 0021F394 48 00 00 18 */ b lbl_8022244C +lbl_80222438: +/* 80222438 0021F398 C0 22 B4 04 */ lfs f1, lbl_805AD124@sda21(r2) +/* 8022243C 0021F39C 7F A3 EB 78 */ mr r3, r29 +/* 80222440 0021F3A0 7F C4 F3 78 */ mr r4, r30 +/* 80222444 0021F3A4 7F E5 FB 78 */ mr r5, r31 +/* 80222448 0021F3A8 4B E5 61 A1 */ bl GetAimPosition__10CPatternedCFRC13CStateManagerf +lbl_8022244C: +/* 8022244C 0021F3AC E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 +/* 80222450 0021F3B0 CB E1 00 D0 */ lfd f31, 0xd0(r1) +/* 80222454 0021F3B4 E3 C1 00 C8 */ psq_l f30, 200(r1), 0, qr0 +/* 80222458 0021F3B8 CB C1 00 C0 */ lfd f30, 0xc0(r1) +/* 8022245C 0021F3BC E3 A1 00 B8 */ psq_l f29, 184(r1), 0, qr0 +/* 80222460 0021F3C0 CB A1 00 B0 */ lfd f29, 0xb0(r1) +/* 80222464 0021F3C4 E3 81 00 A8 */ psq_l f28, 168(r1), 0, qr0 +/* 80222468 0021F3C8 CB 81 00 A0 */ lfd f28, 0xa0(r1) +/* 8022246C 0021F3CC BB 21 00 84 */ lmw r25, 0x84(r1) +/* 80222470 0021F3D0 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 80222474 0021F3D4 7C 08 03 A6 */ mtlr r0 +/* 80222478 0021F3D8 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 8022247C 0021F3DC 4E 80 00 20 */ blr + +.global DoUserAnimEvent__9CBabygothFR13CStateManagerRC13CInt32POINode14EUserEventType +DoUserAnimEvent__9CBabygothFR13CStateManagerRC13CInt32POINode14EUserEventType: +/* 80222480 0021F3E0 94 21 FE 30 */ stwu r1, -0x1d0(r1) +/* 80222484 0021F3E4 7C 08 02 A6 */ mflr r0 +/* 80222488 0021F3E8 90 01 01 D4 */ stw r0, 0x1d4(r1) +/* 8022248C 0021F3EC DB E1 01 C0 */ stfd f31, 0x1c0(r1) +/* 80222490 0021F3F0 F3 E1 01 C8 */ psq_st f31, 456(r1), 0, qr0 +/* 80222494 0021F3F4 DB C1 01 B0 */ stfd f30, 0x1b0(r1) +/* 80222498 0021F3F8 F3 C1 01 B8 */ psq_st f30, 440(r1), 0, qr0 +/* 8022249C 0021F3FC DB A1 01 A0 */ stfd f29, 0x1a0(r1) +/* 802224A0 0021F400 F3 A1 01 A8 */ psq_st f29, 424(r1), 0, qr0 +/* 802224A4 0021F404 DB 81 01 90 */ stfd f28, 0x190(r1) +/* 802224A8 0021F408 F3 81 01 98 */ psq_st f28, 408(r1), 0, qr0 +/* 802224AC 0021F40C BF 61 01 7C */ stmw r27, 0x17c(r1) +/* 802224B0 0021F410 7C DE 33 78 */ mr r30, r6 +/* 802224B4 0021F414 FF E0 08 90 */ fmr f31, f1 +/* 802224B8 0021F418 28 1E 00 17 */ cmplwi r30, 0x17 +/* 802224BC 0021F41C 7C 7B 1B 78 */ mr r27, r3 +/* 802224C0 0021F420 7C 9C 23 78 */ mr r28, r4 +/* 802224C4 0021F424 7C BD 2B 78 */ mr r29, r5 +/* 802224C8 0021F428 3B E0 00 00 */ li r31, 0 +/* 802224CC 0021F42C 41 81 03 64 */ bgt lbl_80222830 +/* 802224D0 0021F430 3C A0 80 3E */ lis r5, lbl_803E761C@ha +/* 802224D4 0021F434 57 C0 10 3A */ slwi r0, r30, 2 +/* 802224D8 0021F438 38 A5 76 1C */ addi r5, r5, lbl_803E761C@l +/* 802224DC 0021F43C 7C 05 00 2E */ lwzx r0, r5, r0 +/* 802224E0 0021F440 7C 09 03 A6 */ mtctr r0 +/* 802224E4 0021F444 4E 80 04 20 */ bctr +/* 802224E8 0021F448 7F 64 DB 78 */ mr r4, r27 +/* 802224EC 0021F44C 38 61 00 E8 */ addi r3, r1, 0xe8 +/* 802224F0 0021F450 38 BD 00 3C */ addi r5, r29, 0x3c +/* 802224F4 0021F454 4B E5 64 85 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 802224F8 0021F458 38 61 01 48 */ addi r3, r1, 0x148 +/* 802224FC 0021F45C 38 81 00 E8 */ addi r4, r1, 0xe8 +/* 80222500 0021F460 48 0F 06 75 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80222504 0021F464 80 9C 08 4C */ lwz r4, 0x84c(r28) +/* 80222508 0021F468 7F 85 E3 78 */ mr r5, r28 +/* 8022250C 0021F46C 38 61 00 7C */ addi r3, r1, 0x7c +/* 80222510 0021F470 C0 22 B4 04 */ lfs f1, lbl_805AD124@sda21(r2) +/* 80222514 0021F474 81 84 00 00 */ lwz r12, 0(r4) +/* 80222518 0021F478 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 8022251C 0021F47C 7D 89 03 A6 */ mtctr r12 +/* 80222520 0021F480 4E 80 04 21 */ bctrl +/* 80222524 0021F484 C0 41 00 7C */ lfs f2, 0x7c(r1) +/* 80222528 0021F488 7F 63 DB 78 */ mr r3, r27 +/* 8022252C 0021F48C C0 21 00 80 */ lfs f1, 0x80(r1) +/* 80222530 0021F490 C0 01 00 84 */ lfs f0, 0x84(r1) +/* 80222534 0021F494 D0 41 00 AC */ stfs f2, 0xac(r1) +/* 80222538 0021F498 C0 41 01 54 */ lfs f2, 0x154(r1) +/* 8022253C 0021F49C D0 21 00 B0 */ stfs f1, 0xb0(r1) +/* 80222540 0021F4A0 C0 21 01 64 */ lfs f1, 0x164(r1) +/* 80222544 0021F4A4 D0 01 00 B4 */ stfs f0, 0xb4(r1) +/* 80222548 0021F4A8 C0 01 01 74 */ lfs f0, 0x174(r1) +/* 8022254C 0021F4AC 83 FC 08 4C */ lwz r31, 0x84c(r28) +/* 80222550 0021F4B0 D0 41 00 64 */ stfs f2, 0x64(r1) +/* 80222554 0021F4B4 D0 21 00 68 */ stfs f1, 0x68(r1) +/* 80222558 0021F4B8 D0 01 00 6C */ stfs f0, 0x6c(r1) +/* 8022255C 0021F4BC 81 9B 00 00 */ lwz r12, 0(r27) +/* 80222560 0021F4C0 81 8C 02 C0 */ lwz r12, 0x2c0(r12) +/* 80222564 0021F4C4 7D 89 03 A6 */ mtctr r12 +/* 80222568 0021F4C8 4E 80 04 21 */ bctrl +/* 8022256C 0021F4CC FC 20 F8 90 */ fmr f1, f31 +/* 80222570 0021F4D0 7C 64 1B 78 */ mr r4, r3 +/* 80222574 0021F4D4 7F E7 FB 78 */ mr r7, r31 +/* 80222578 0021F4D8 38 61 00 70 */ addi r3, r1, 0x70 +/* 8022257C 0021F4DC 38 A1 00 64 */ addi r5, r1, 0x64 +/* 80222580 0021F4E0 38 C1 00 AC */ addi r6, r1, 0xac +/* 80222584 0021F4E4 39 00 00 00 */ li r8, 0 +/* 80222588 0021F4E8 4B FF 99 65 */ bl PredictInterceptPos__15CProjectileInfoFRC9CVector3fRC9CVector3fRC7CPlayerbf +/* 8022258C 0021F4EC C0 A1 00 70 */ lfs f5, 0x70(r1) +/* 80222590 0021F4F0 38 61 00 94 */ addi r3, r1, 0x94 +/* 80222594 0021F4F4 C0 81 00 74 */ lfs f4, 0x74(r1) +/* 80222598 0021F4F8 38 81 00 88 */ addi r4, r1, 0x88 +/* 8022259C 0021F4FC C0 61 00 78 */ lfs f3, 0x78(r1) +/* 802225A0 0021F500 C0 41 01 64 */ lfs f2, 0x164(r1) +/* 802225A4 0021F504 C0 21 01 74 */ lfs f1, 0x174(r1) +/* 802225A8 0021F508 C0 01 01 54 */ lfs f0, 0x154(r1) +/* 802225AC 0021F50C EC C4 10 28 */ fsubs f6, f4, f2 +/* 802225B0 0021F510 D0 A1 00 A0 */ stfs f5, 0xa0(r1) +/* 802225B4 0021F514 EC 43 08 28 */ fsubs f2, f3, f1 +/* 802225B8 0021F518 EC 05 00 28 */ fsubs f0, f5, f0 +/* 802225BC 0021F51C D0 81 00 A4 */ stfs f4, 0xa4(r1) +/* 802225C0 0021F520 D0 61 00 A8 */ stfs f3, 0xa8(r1) +/* 802225C4 0021F524 C0 9B 00 58 */ lfs f4, 0x58(r27) +/* 802225C8 0021F528 C0 7B 00 48 */ lfs f3, 0x48(r27) +/* 802225CC 0021F52C C0 3B 00 38 */ lfs f1, 0x38(r27) +/* 802225D0 0021F530 D0 21 00 94 */ stfs f1, 0x94(r1) +/* 802225D4 0021F534 D0 61 00 98 */ stfs f3, 0x98(r1) +/* 802225D8 0021F538 D0 81 00 9C */ stfs f4, 0x9c(r1) +/* 802225DC 0021F53C D0 01 00 88 */ stfs f0, 0x88(r1) +/* 802225E0 0021F540 D0 C1 00 8C */ stfs f6, 0x8c(r1) +/* 802225E4 0021F544 D0 41 00 90 */ stfs f2, 0x90(r1) +/* 802225E8 0021F548 48 0F 20 49 */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f +/* 802225EC 0021F54C C0 02 B4 4C */ lfs f0, lbl_805AD16C@sda21(r2) +/* 802225F0 0021F550 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802225F4 0021F554 40 81 00 C8 */ ble lbl_802226BC +/* 802225F8 0021F558 38 61 00 88 */ addi r3, r1, 0x88 +/* 802225FC 0021F55C 48 0F 20 FD */ bl CanBeNormalized__9CVector3fCFv +/* 80222600 0021F560 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80222604 0021F564 41 82 00 74 */ beq lbl_80222678 +/* 80222608 0021F568 C0 02 B4 4C */ lfs f0, lbl_805AD16C@sda21(r2) +/* 8022260C 0021F56C 38 61 00 4C */ addi r3, r1, 0x4c +/* 80222610 0021F570 38 81 00 88 */ addi r4, r1, 0x88 +/* 80222614 0021F574 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 80222618 0021F578 48 0F 22 39 */ bl AsNormalized__9CVector3fCFv +/* 8022261C 0021F57C 38 61 00 58 */ addi r3, r1, 0x58 +/* 80222620 0021F580 38 81 00 94 */ addi r4, r1, 0x94 +/* 80222624 0021F584 38 A1 00 4C */ addi r5, r1, 0x4c +/* 80222628 0021F588 38 C1 00 20 */ addi r6, r1, 0x20 +/* 8022262C 0021F58C 48 0F 23 29 */ bl Slerp__9CVector3fFRC9CVector3fRC9CVector3fRC9CRelAngle +/* 80222630 0021F590 C3 C1 00 58 */ lfs f30, 0x58(r1) +/* 80222634 0021F594 38 61 00 88 */ addi r3, r1, 0x88 +/* 80222638 0021F598 C3 A1 00 5C */ lfs f29, 0x5c(r1) +/* 8022263C 0021F59C C3 81 00 60 */ lfs f28, 0x60(r1) +/* 80222640 0021F5A0 48 0F 22 79 */ bl Magnitude__9CVector3fCFv +/* 80222644 0021F5A4 EC 81 07 72 */ fmuls f4, f1, f29 +/* 80222648 0021F5A8 C0 A1 01 64 */ lfs f5, 0x164(r1) +/* 8022264C 0021F5AC EC 41 07 32 */ fmuls f2, f1, f28 +/* 80222650 0021F5B0 C0 61 01 74 */ lfs f3, 0x174(r1) +/* 80222654 0021F5B4 EC 01 07 B2 */ fmuls f0, f1, f30 +/* 80222658 0021F5B8 C0 21 01 54 */ lfs f1, 0x154(r1) +/* 8022265C 0021F5BC EC 85 20 2A */ fadds f4, f5, f4 +/* 80222660 0021F5C0 EC 43 10 2A */ fadds f2, f3, f2 +/* 80222664 0021F5C4 EC 01 00 2A */ fadds f0, f1, f0 +/* 80222668 0021F5C8 D0 81 00 A4 */ stfs f4, 0xa4(r1) +/* 8022266C 0021F5CC D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 80222670 0021F5D0 D0 41 00 A8 */ stfs f2, 0xa8(r1) +/* 80222674 0021F5D4 48 00 00 48 */ b lbl_802226BC +lbl_80222678: +/* 80222678 0021F5D8 38 61 00 88 */ addi r3, r1, 0x88 +/* 8022267C 0021F5DC 48 0F 22 3D */ bl Magnitude__9CVector3fCFv +/* 80222680 0021F5E0 C0 61 01 5C */ lfs f3, 0x15c(r1) +/* 80222684 0021F5E4 C0 41 01 6C */ lfs f2, 0x16c(r1) +/* 80222688 0021F5E8 C0 01 01 4C */ lfs f0, 0x14c(r1) +/* 8022268C 0021F5EC EC 81 00 F2 */ fmuls f4, f1, f3 +/* 80222690 0021F5F0 C0 A1 01 64 */ lfs f5, 0x164(r1) +/* 80222694 0021F5F4 EC 41 00 B2 */ fmuls f2, f1, f2 +/* 80222698 0021F5F8 C0 61 01 74 */ lfs f3, 0x174(r1) +/* 8022269C 0021F5FC EC 01 00 32 */ fmuls f0, f1, f0 +/* 802226A0 0021F600 C0 21 01 54 */ lfs f1, 0x154(r1) +/* 802226A4 0021F604 EC 85 20 2A */ fadds f4, f5, f4 +/* 802226A8 0021F608 EC 43 10 2A */ fadds f2, f3, f2 +/* 802226AC 0021F60C EC 01 00 2A */ fadds f0, f1, f0 +/* 802226B0 0021F610 D0 81 00 A4 */ stfs f4, 0xa4(r1) +/* 802226B4 0021F614 D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 802226B8 0021F618 D0 41 00 A8 */ stfs f2, 0xa8(r1) +lbl_802226BC: +/* 802226BC 0021F61C C0 41 01 54 */ lfs f2, 0x154(r1) +/* 802226C0 0021F620 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 802226C4 0021F624 C0 21 01 64 */ lfs f1, 0x164(r1) +/* 802226C8 0021F628 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 802226CC 0021F62C C0 01 01 74 */ lfs f0, 0x174(r1) +/* 802226D0 0021F630 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 802226D4 0021F634 D0 41 00 40 */ stfs f2, 0x40(r1) +/* 802226D8 0021F638 38 81 00 40 */ addi r4, r1, 0x40 +/* 802226DC 0021F63C 38 A1 00 A0 */ addi r5, r1, 0xa0 +/* 802226E0 0021F640 D0 21 00 44 */ stfs f1, 0x44(r1) +/* 802226E4 0021F644 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 802226E8 0021F648 48 0F 14 29 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 802226EC 0021F64C 38 61 01 18 */ addi r3, r1, 0x118 +/* 802226F0 0021F650 38 81 00 B8 */ addi r4, r1, 0xb8 +/* 802226F4 0021F654 48 0F 04 81 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 802226F8 0021F658 C0 02 B4 18 */ lfs f0, lbl_805AD138@sda21(r2) +/* 802226FC 0021F65C 39 60 00 00 */ li r11, 0 +/* 80222700 0021F660 99 61 00 3C */ stb r11, 0x3c(r1) +/* 80222704 0021F664 38 01 00 24 */ addi r0, r1, 0x24 +/* 80222708 0021F668 A1 42 C5 FC */ lhz r10, lbl_805AE31C@sda21(r2) +/* 8022270C 0021F66C 7F 63 DB 78 */ mr r3, r27 +/* 80222710 0021F670 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 80222714 0021F674 7F 85 E3 78 */ mr r5, r28 +/* 80222718 0021F678 38 81 01 18 */ addi r4, r1, 0x118 +/* 8022271C 0021F67C 39 21 00 30 */ addi r9, r1, 0x30 +/* 80222720 0021F680 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 80222724 0021F684 38 C0 00 04 */ li r6, 4 +/* 80222728 0021F688 38 E0 00 00 */ li r7, 0 +/* 8022272C 0021F68C 39 00 00 00 */ li r8, 0 +/* 80222730 0021F690 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 80222734 0021F694 91 61 00 08 */ stw r11, 8(r1) +/* 80222738 0021F698 90 01 00 0C */ stw r0, 0xc(r1) +/* 8022273C 0021F69C 4B E5 52 BD */ bl "LaunchProjectile__10CPatternedFRC12CTransform4fR13CStateManageriQ27CWeapon17EProjectileAttribbRCQ24rstl50optional_object<31TLockedToken<15CGenDescription>>sbRC9CVector3f" +/* 80222740 0021F6A0 88 01 00 3C */ lbz r0, 0x3c(r1) +/* 80222744 0021F6A4 28 00 00 00 */ cmplwi r0, 0 +/* 80222748 0021F6A8 41 82 00 1C */ beq lbl_80222764 +/* 8022274C 0021F6AC 34 61 00 30 */ addic. r3, r1, 0x30 +/* 80222750 0021F6B0 41 82 00 14 */ beq lbl_80222764 +/* 80222754 0021F6B4 28 03 00 00 */ cmplwi r3, 0 +/* 80222758 0021F6B8 41 82 00 0C */ beq lbl_80222764 +/* 8022275C 0021F6BC 38 80 00 00 */ li r4, 0 +/* 80222760 0021F6C0 48 11 E6 E1 */ bl __dt__6CTokenFv +lbl_80222764: +/* 80222764 0021F6C4 38 00 00 00 */ li r0, 0 +/* 80222768 0021F6C8 3B E0 00 01 */ li r31, 1 +/* 8022276C 0021F6CC 98 01 00 3C */ stb r0, 0x3c(r1) +/* 80222770 0021F6D0 48 00 00 C0 */ b lbl_80222830 +/* 80222774 0021F6D4 3B E0 00 01 */ li r31, 1 +/* 80222778 0021F6D8 48 00 00 B8 */ b lbl_80222830 +/* 8022277C 0021F6DC 4B FF AE 29 */ bl sub_8021d5a4 +/* 80222780 0021F6E0 3B E0 00 01 */ li r31, 1 +/* 80222784 0021F6E4 48 00 00 AC */ b lbl_80222830 +/* 80222788 0021F6E8 88 1B 0A 48 */ lbz r0, 0xa48(r27) +/* 8022278C 0021F6EC 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 80222790 0021F6F0 41 82 00 A0 */ beq lbl_80222830 +/* 80222794 0021F6F4 A0 1B 09 80 */ lhz r0, 0x980(r27) +/* 80222798 0021F6F8 7F 83 E3 78 */ mr r3, r28 +/* 8022279C 0021F6FC 38 81 00 1C */ addi r4, r1, 0x1c +/* 802227A0 0021F700 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 802227A4 0021F704 4B E2 9D D1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 802227A8 0021F708 28 03 00 00 */ cmplwi r3, 0 +/* 802227AC 0021F70C 41 82 00 84 */ beq lbl_80222830 +/* 802227B0 0021F710 7F 85 E3 78 */ mr r5, r28 +/* 802227B4 0021F714 38 9B 00 34 */ addi r4, r27, 0x34 +/* 802227B8 0021F718 38 C0 00 00 */ li r6, 0 +/* 802227BC 0021F71C 4B F7 5B 31 */ bl Fire__13CFlameThrowerFRC12CTransform4fR13CStateManagerb +/* 802227C0 0021F720 48 00 00 70 */ b lbl_80222830 +/* 802227C4 0021F724 88 1B 0A 48 */ lbz r0, 0xa48(r27) +/* 802227C8 0021F728 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 802227CC 0021F72C 41 82 00 64 */ beq lbl_80222830 +/* 802227D0 0021F730 A0 1B 09 80 */ lhz r0, 0x980(r27) +/* 802227D4 0021F734 7F 83 E3 78 */ mr r3, r28 +/* 802227D8 0021F738 38 81 00 18 */ addi r4, r1, 0x18 +/* 802227DC 0021F73C B0 01 00 18 */ sth r0, 0x18(r1) +/* 802227E0 0021F740 4B E2 9D 95 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 802227E4 0021F744 28 03 00 00 */ cmplwi r3, 0 +/* 802227E8 0021F748 41 82 00 48 */ beq lbl_80222830 +/* 802227EC 0021F74C 7F 84 E3 78 */ mr r4, r28 +/* 802227F0 0021F750 38 A0 00 00 */ li r5, 0 +/* 802227F4 0021F754 4B F7 59 CD */ bl Reset__13CFlameThrowerFR13CStateManagerb +/* 802227F8 0021F758 48 00 00 38 */ b lbl_80222830 +/* 802227FC 0021F75C 88 1B 0A 48 */ lbz r0, 0xa48(r27) +/* 80222800 0021F760 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 80222804 0021F764 41 82 00 2C */ beq lbl_80222830 +/* 80222808 0021F768 80 BC 08 4C */ lwz r5, 0x84c(r28) +/* 8022280C 0021F76C 38 7B 08 F0 */ addi r3, r27, 0x8f0 +/* 80222810 0021F770 38 81 00 14 */ addi r4, r1, 0x14 +/* 80222814 0021F774 A0 05 00 08 */ lhz r0, 8(r5) +/* 80222818 0021F778 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8022281C 0021F77C B0 01 00 14 */ sth r0, 0x14(r1) +/* 80222820 0021F780 4B F5 29 F9 */ bl SetTarget__13CBoneTrackingF9TUniqueId +/* 80222824 0021F784 38 7B 08 F0 */ addi r3, r27, 0x8f0 +/* 80222828 0021F788 38 80 00 01 */ li r4, 1 +/* 8022282C 0021F78C 4B F5 29 F9 */ bl SetActive__13CBoneTrackingFb +lbl_80222830: +/* 80222830 0021F790 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 80222834 0021F794 40 82 00 1C */ bne lbl_80222850 +/* 80222838 0021F798 FC 20 F8 90 */ fmr f1, f31 +/* 8022283C 0021F79C 7F 63 DB 78 */ mr r3, r27 +/* 80222840 0021F7A0 7F 84 E3 78 */ mr r4, r28 +/* 80222844 0021F7A4 7F A5 EB 78 */ mr r5, r29 +/* 80222848 0021F7A8 7F C6 F3 78 */ mr r6, r30 +/* 8022284C 0021F7AC 4B E5 66 65 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +lbl_80222850: +/* 80222850 0021F7B0 E3 E1 01 C8 */ psq_l f31, 456(r1), 0, qr0 +/* 80222854 0021F7B4 CB E1 01 C0 */ lfd f31, 0x1c0(r1) +/* 80222858 0021F7B8 E3 C1 01 B8 */ psq_l f30, 440(r1), 0, qr0 +/* 8022285C 0021F7BC CB C1 01 B0 */ lfd f30, 0x1b0(r1) +/* 80222860 0021F7C0 E3 A1 01 A8 */ psq_l f29, 424(r1), 0, qr0 +/* 80222864 0021F7C4 CB A1 01 A0 */ lfd f29, 0x1a0(r1) +/* 80222868 0021F7C8 E3 81 01 98 */ psq_l f28, 408(r1), 0, qr0 +/* 8022286C 0021F7CC CB 81 01 90 */ lfd f28, 0x190(r1) +/* 80222870 0021F7D0 BB 61 01 7C */ lmw r27, 0x17c(r1) +/* 80222874 0021F7D4 80 01 01 D4 */ lwz r0, 0x1d4(r1) +/* 80222878 0021F7D8 7C 08 03 A6 */ mtlr r0 +/* 8022287C 0021F7DC 38 21 01 D0 */ addi r1, r1, 0x1d0 +/* 80222880 0021F7E0 4E 80 00 20 */ blr + +.global GetOrigin__9CBabygothCFv +GetOrigin__9CBabygothCFv: +/* 80222884 0021F7E4 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80222888 0021F7E8 7C 08 02 A6 */ mflr r0 +/* 8022288C 0021F7EC 90 01 00 64 */ stw r0, 0x64(r1) +/* 80222890 0021F7F0 DB E1 00 50 */ stfd f31, 0x50(r1) +/* 80222894 0021F7F4 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 80222898 0021F7F8 DB C1 00 40 */ stfd f30, 0x40(r1) +/* 8022289C 0021F7FC F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0 +/* 802228A0 0021F800 DB A1 00 30 */ stfd f29, 0x30(r1) +/* 802228A4 0021F804 F3 A1 00 38 */ psq_st f29, 56(r1), 0, qr0 +/* 802228A8 0021F808 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 802228AC 0021F80C 93 C1 00 28 */ stw r30, 0x28(r1) +/* 802228B0 0021F810 93 A1 00 24 */ stw r29, 0x24(r1) +/* 802228B4 0021F814 C3 E4 00 60 */ lfs f31, 0x60(r4) +/* 802228B8 0021F818 7C 7D 1B 78 */ mr r29, r3 +/* 802228BC 0021F81C C0 07 00 08 */ lfs f0, 8(r7) +/* 802228C0 0021F820 7C 9E 23 78 */ mr r30, r4 +/* 802228C4 0021F824 C3 C4 00 50 */ lfs f30, 0x50(r4) +/* 802228C8 0021F828 7C FF 3B 78 */ mr r31, r7 +/* 802228CC 0021F82C EC 5F 00 28 */ fsubs f2, f31, f0 +/* 802228D0 0021F830 C3 A4 00 40 */ lfs f29, 0x40(r4) +/* 802228D4 0021F834 C0 27 00 04 */ lfs f1, 4(r7) +/* 802228D8 0021F838 38 61 00 14 */ addi r3, r1, 0x14 +/* 802228DC 0021F83C C0 07 00 00 */ lfs f0, 0(r7) +/* 802228E0 0021F840 EC 7E 08 28 */ fsubs f3, f30, f1 +/* 802228E4 0021F844 EC 3D 00 28 */ fsubs f1, f29, f0 +/* 802228E8 0021F848 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 802228EC 0021F84C C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 802228F0 0021F850 D0 61 00 18 */ stfs f3, 0x18(r1) +/* 802228F4 0021F854 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 802228F8 0021F858 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 802228FC 0021F85C 48 0F 1D FD */ bl CanBeNormalized__9CVector3fCFv +/* 80222900 0021F860 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80222904 0021F864 41 82 00 44 */ beq lbl_80222948 +/* 80222908 0021F868 C3 FE 02 FC */ lfs f31, 0x2fc(r30) +/* 8022290C 0021F86C 38 61 00 08 */ addi r3, r1, 8 +/* 80222910 0021F870 38 81 00 14 */ addi r4, r1, 0x14 +/* 80222914 0021F874 48 0F 1F 3D */ bl AsNormalized__9CVector3fCFv +/* 80222918 0021F878 C0 41 00 08 */ lfs f2, 8(r1) +/* 8022291C 0021F87C C0 21 00 0C */ lfs f1, 0xc(r1) +/* 80222920 0021F880 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 80222924 0021F884 EC 9F 00 B2 */ fmuls f4, f31, f2 +/* 80222928 0021F888 C0 BF 00 00 */ lfs f5, 0(r31) +/* 8022292C 0021F88C EC 5F 00 72 */ fmuls f2, f31, f1 +/* 80222930 0021F890 C0 7F 00 04 */ lfs f3, 4(r31) +/* 80222934 0021F894 EC 1F 00 32 */ fmuls f0, f31, f0 +/* 80222938 0021F898 C0 3F 00 08 */ lfs f1, 8(r31) +/* 8022293C 0021F89C EF A5 20 2A */ fadds f29, f5, f4 +/* 80222940 0021F8A0 EF C3 10 2A */ fadds f30, f3, f2 +/* 80222944 0021F8A4 EF E1 00 2A */ fadds f31, f1, f0 +lbl_80222948: +/* 80222948 0021F8A8 D3 BD 00 00 */ stfs f29, 0(r29) +/* 8022294C 0021F8AC D3 DD 00 04 */ stfs f30, 4(r29) +/* 80222950 0021F8B0 D3 FD 00 08 */ stfs f31, 8(r29) +/* 80222954 0021F8B4 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 +/* 80222958 0021F8B8 CB E1 00 50 */ lfd f31, 0x50(r1) +/* 8022295C 0021F8BC E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0 +/* 80222960 0021F8C0 CB C1 00 40 */ lfd f30, 0x40(r1) +/* 80222964 0021F8C4 E3 A1 00 38 */ psq_l f29, 56(r1), 0, qr0 +/* 80222968 0021F8C8 CB A1 00 30 */ lfd f29, 0x30(r1) +/* 8022296C 0021F8CC 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80222970 0021F8D0 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80222974 0021F8D4 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80222978 0021F8D8 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8022297C 0021F8DC 7C 08 03 A6 */ mtlr r0 +/* 80222980 0021F8E0 38 21 00 60 */ addi r1, r1, 0x60 +/* 80222984 0021F8E4 4E 80 00 20 */ blr + +.global Listen__9CBabygothFRC9CVector3f16EListenNoiseType +Listen__9CBabygothFRC9CVector3f16EListenNoiseType: +/* 80222988 0021F8E8 88 03 04 00 */ lbz r0, 0x400(r3) +/* 8022298C 0021F8EC 38 C0 00 00 */ li r6, 0 +/* 80222990 0021F8F0 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80222994 0021F8F4 41 82 00 58 */ beq lbl_802229EC +/* 80222998 0021F8F8 2C 05 00 00 */ cmpwi r5, 0 +/* 8022299C 0021F8FC 40 82 00 50 */ bne lbl_802229EC +/* 802229A0 0021F900 C0 24 00 04 */ lfs f1, 4(r4) +/* 802229A4 0021F904 C0 03 00 50 */ lfs f0, 0x50(r3) +/* 802229A8 0021F908 C0 64 00 00 */ lfs f3, 0(r4) +/* 802229AC 0021F90C EC 21 00 28 */ fsubs f1, f1, f0 +/* 802229B0 0021F910 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 802229B4 0021F914 C0 44 00 08 */ lfs f2, 8(r4) +/* 802229B8 0021F918 EC 63 00 28 */ fsubs f3, f3, f0 +/* 802229BC 0021F91C C0 03 00 60 */ lfs f0, 0x60(r3) +/* 802229C0 0021F920 EC 21 00 72 */ fmuls f1, f1, f1 +/* 802229C4 0021F924 EC 42 00 28 */ fsubs f2, f2, f0 +/* 802229C8 0021F928 C0 02 B4 60 */ lfs f0, lbl_805AD180@sda21(r2) +/* 802229CC 0021F92C EC 23 08 FA */ fmadds f1, f3, f3, f1 +/* 802229D0 0021F930 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 802229D4 0021F934 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802229D8 0021F938 40 80 00 14 */ bge lbl_802229EC +/* 802229DC 0021F93C 88 03 0A 48 */ lbz r0, 0xa48(r3) +/* 802229E0 0021F940 38 C0 00 01 */ li r6, 1 +/* 802229E4 0021F944 50 C0 0F BC */ rlwimi r0, r6, 1, 0x1e, 0x1e +/* 802229E8 0021F948 98 03 0A 48 */ stb r0, 0xa48(r3) +lbl_802229EC: +/* 802229EC 0021F94C 54 C3 06 3E */ clrlwi r3, r6, 0x18 +/* 802229F0 0021F950 4E 80 00 20 */ blr + +.global GetDamageVulnerability__9CBabygothCFRC9CVector3fRC9CVector3fRC11CDamageInfo +GetDamageVulnerability__9CBabygothCFRC9CVector3fRC9CVector3fRC11CDamageInfo: +/* 802229F4 0021F954 3C 60 80 57 */ lis r3, lbl_8056D7E8@ha +/* 802229F8 0021F958 38 63 D7 E8 */ addi r3, r3, lbl_8056D7E8@l +/* 802229FC 0021F95C 4E 80 00 20 */ blr + +.global GetDamageVulnerability__9CBabygothCFv +GetDamageVulnerability__9CBabygothCFv: +/* 80222A00 0021F960 3C 60 80 57 */ lis r3, lbl_8056D7E8@ha +/* 80222A04 0021F964 38 63 D7 E8 */ addi r3, r3, lbl_8056D7E8@l +/* 80222A08 0021F968 4E 80 00 20 */ blr + +.global TakeDamage__9CBabygothFRC9CVector3ff +TakeDamage__9CBabygothFRC9CVector3ff: +/* 80222A0C 0021F96C 88 03 04 00 */ lbz r0, 0x400(r3) +/* 80222A10 0021F970 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80222A14 0021F974 4D 82 00 20 */ beqlr +/* 80222A18 0021F978 C0 02 88 F0 */ lfs f0, lbl_805AA610@sda21(r2) +/* 80222A1C 0021F97C D0 03 04 28 */ stfs f0, 0x428(r3) +/* 80222A20 0021F980 4E 80 00 20 */ blr + +.global Shock__9CBabygothFff +Shock__9CBabygothFff: +/* 80222A24 0021F984 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80222A28 0021F988 7C 08 02 A6 */ mflr r0 +/* 80222A2C 0021F98C 90 01 00 54 */ stw r0, 0x54(r1) +/* 80222A30 0021F990 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 80222A34 0021F994 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 80222A38 0021F998 DB C1 00 30 */ stfd f30, 0x30(r1) +/* 80222A3C 0021F99C F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 +/* 80222A40 0021F9A0 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80222A44 0021F9A4 80 03 09 F8 */ lwz r0, 0x9f8(r3) +/* 80222A48 0021F9A8 FF C0 08 90 */ fmr f30, f1 +/* 80222A4C 0021F9AC FF E0 10 90 */ fmr f31, f2 +/* 80222A50 0021F9B0 7C 7F 1B 78 */ mr r31, r3 +/* 80222A54 0021F9B4 2C 00 00 00 */ cmpwi r0, 0 +/* 80222A58 0021F9B8 41 82 00 C4 */ beq lbl_80222B1C +/* 80222A5C 0021F9BC A0 1F 09 FC */ lhz r0, 0x9fc(r31) +/* 80222A60 0021F9C0 7C 83 23 78 */ mr r3, r4 +/* 80222A64 0021F9C4 38 81 00 08 */ addi r4, r1, 8 +/* 80222A68 0021F9C8 B0 01 00 08 */ sth r0, 8(r1) +/* 80222A6C 0021F9CC 4B E2 9B 09 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80222A70 0021F9D0 7C 64 1B 78 */ mr r4, r3 +/* 80222A74 0021F9D4 38 61 00 0C */ addi r3, r1, 0xc +/* 80222A78 0021F9D8 4B E8 C8 D5 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 80222A7C 0021F9DC 80 63 00 04 */ lwz r3, 4(r3) +/* 80222A80 0021F9E0 28 03 00 00 */ cmplwi r3, 0 +/* 80222A84 0021F9E4 41 82 00 98 */ beq lbl_80222B1C +/* 80222A88 0021F9E8 88 01 00 18 */ lbz r0, 0x18(r1) +/* 80222A8C 0021F9EC 38 80 00 00 */ li r4, 0 +/* 80222A90 0021F9F0 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 80222A94 0021F9F4 38 A0 00 02 */ li r5, 2 +/* 80222A98 0021F9F8 98 01 00 18 */ stb r0, 0x18(r1) +/* 80222A9C 0021F9FC 54 00 06 3E */ clrlwi r0, r0, 0x18 +/* 80222AA0 0021FA00 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 80222AA4 0021FA04 98 01 00 18 */ stb r0, 0x18(r1) +/* 80222AA8 0021FA08 54 00 06 3E */ clrlwi r0, r0, 0x18 +/* 80222AAC 0021FA0C 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 80222AB0 0021FA10 90 A1 00 14 */ stw r5, 0x14(r1) +/* 80222AB4 0021FA14 98 01 00 18 */ stb r0, 0x18(r1) +/* 80222AB8 0021FA18 81 83 00 00 */ lwz r12, 0(r3) +/* 80222ABC 0021FA1C 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 80222AC0 0021FA20 7D 89 03 A6 */ mtctr r12 +/* 80222AC4 0021FA24 4E 80 04 21 */ bctrl +/* 80222AC8 0021FA28 38 81 00 14 */ addi r4, r1, 0x14 +/* 80222ACC 0021FA2C 38 A0 00 00 */ li r5, 0 +/* 80222AD0 0021FA30 4B ED F9 ED */ bl GetVulnerability__20CDamageVulnerabilityCFRC11CWeaponMode +/* 80222AD4 0021FA34 2C 03 00 01 */ cmpwi r3, 1 +/* 80222AD8 0021FA38 41 82 00 34 */ beq lbl_80222B0C +/* 80222ADC 0021FA3C 40 80 00 40 */ bge lbl_80222B1C +/* 80222AE0 0021FA40 2C 03 00 00 */ cmpwi r3, 0 +/* 80222AE4 0021FA44 40 80 00 08 */ bge lbl_80222AEC +/* 80222AE8 0021FA48 48 00 00 34 */ b lbl_80222B1C +lbl_80222AEC: +/* 80222AEC 0021FA4C C0 02 B4 34 */ lfs f0, lbl_805AD154@sda21(r2) +/* 80222AF0 0021FA50 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 80222AF4 0021FA54 EC 20 07 B2 */ fmuls f1, f0, f30 +/* 80222AF8 0021FA58 4B F1 74 75 */ bl SetElectrocuting__15CBodyControllerFf +/* 80222AFC 0021FA5C C0 02 B4 34 */ lfs f0, lbl_805AD154@sda21(r2) +/* 80222B00 0021FA60 EC 00 07 F2 */ fmuls f0, f0, f31 +/* 80222B04 0021FA64 D0 1F 03 F0 */ stfs f0, 0x3f0(r31) +/* 80222B08 0021FA68 48 00 00 14 */ b lbl_80222B1C +lbl_80222B0C: +/* 80222B0C 0021FA6C FC 20 F0 90 */ fmr f1, f30 +/* 80222B10 0021FA70 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 80222B14 0021FA74 4B F1 74 59 */ bl SetElectrocuting__15CBodyControllerFf +/* 80222B18 0021FA78 D3 FF 03 F0 */ stfs f31, 0x3f0(r31) +lbl_80222B1C: +/* 80222B1C 0021FA7C E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 80222B20 0021FA80 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 80222B24 0021FA84 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 +/* 80222B28 0021FA88 CB C1 00 30 */ lfd f30, 0x30(r1) +/* 80222B2C 0021FA8C 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80222B30 0021FA90 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80222B34 0021FA94 7C 08 03 A6 */ mtlr r0 +/* 80222B38 0021FA98 38 21 00 50 */ addi r1, r1, 0x50 +/* 80222B3C 0021FA9C 4E 80 00 20 */ blr + +.global KnockBack__9CBabygothFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef +KnockBack__9CBabygothFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef: +/* 80222B40 0021FAA0 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80222B44 0021FAA4 7C 08 02 A6 */ mflr r0 +/* 80222B48 0021FAA8 90 01 00 44 */ stw r0, 0x44(r1) +/* 80222B4C 0021FAAC DB E1 00 38 */ stfd f31, 0x38(r1) +/* 80222B50 0021FAB0 FF E0 08 90 */ fmr f31, f1 +/* 80222B54 0021FAB4 BF 41 00 20 */ stmw r26, 0x20(r1) +/* 80222B58 0021FAB8 7C 9B 23 78 */ mr r27, r4 +/* 80222B5C 0021FABC 7C 7A 1B 78 */ mr r26, r3 +/* 80222B60 0021FAC0 7C BC 2B 78 */ mr r28, r5 +/* 80222B64 0021FAC4 7C DD 33 78 */ mr r29, r6 +/* 80222B68 0021FAC8 7C FE 3B 78 */ mr r30, r7 +/* 80222B6C 0021FACC 7D 1F 43 78 */ mr r31, r8 +/* 80222B70 0021FAD0 38 80 00 03 */ li r4, 3 +/* 80222B74 0021FAD4 80 03 05 6C */ lwz r0, 0x56c(r3) +/* 80222B78 0021FAD8 38 7A 04 60 */ addi r3, r26, 0x460 +/* 80222B7C 0021FADC 20 00 00 03 */ subfic r0, r0, 3 +/* 80222B80 0021FAE0 7C 00 00 34 */ cntlzw r0, r0 +/* 80222B84 0021FAE4 54 05 D9 7E */ srwi r5, r0, 5 +/* 80222B88 0021FAE8 48 01 12 3D */ bl SetAvailableState__20CKnockBackControllerFib +/* 80222B8C 0021FAEC FC 20 F8 90 */ fmr f1, f31 +/* 80222B90 0021FAF0 7F 43 D3 78 */ mr r3, r26 +/* 80222B94 0021FAF4 7F 64 DB 78 */ mr r4, r27 +/* 80222B98 0021FAF8 7F 85 E3 78 */ mr r5, r28 +/* 80222B9C 0021FAFC 7F A6 EB 78 */ mr r6, r29 +/* 80222BA0 0021FB00 7F C7 F3 78 */ mr r7, r30 +/* 80222BA4 0021FB04 7F E8 FB 78 */ mr r8, r31 +/* 80222BA8 0021FB08 4B E5 7B D5 */ bl KnockBack__10CPatternedFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef +/* 80222BAC 0021FB0C 88 1A 04 00 */ lbz r0, 0x400(r26) +/* 80222BB0 0021FB10 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80222BB4 0021FB14 41 82 00 50 */ beq lbl_80222C04 +/* 80222BB8 0021FB18 80 1A 04 64 */ lwz r0, 0x464(r26) +/* 80222BBC 0021FB1C 2C 00 00 03 */ cmpwi r0, 3 +/* 80222BC0 0021FB20 41 82 00 08 */ beq lbl_80222BC8 +/* 80222BC4 0021FB24 48 00 00 40 */ b lbl_80222C04 +lbl_80222BC8: +/* 80222BC8 0021FB28 3C 80 80 3D */ lis r4, lbl_803D31D0@ha +/* 80222BCC 0021FB2C 38 61 00 08 */ addi r3, r1, 8 +/* 80222BD0 0021FB30 38 84 31 D0 */ addi r4, r4, lbl_803D31D0@l +/* 80222BD4 0021FB34 38 84 00 4C */ addi r4, r4, 0x4c +/* 80222BD8 0021FB38 4B DE 20 E1 */ bl string_l__4rstlFPCc +/* 80222BDC 0021FB3C 7F 43 D3 78 */ mr r3, r26 +/* 80222BE0 0021FB40 4B E7 FD 19 */ bl GetStateMachine__3CAiFv +/* 80222BE4 0021FB44 7C 66 1B 78 */ mr r6, r3 +/* 80222BE8 0021FB48 7F 84 E3 78 */ mr r4, r28 +/* 80222BEC 0021FB4C 7F 45 D3 78 */ mr r5, r26 +/* 80222BF0 0021FB50 38 7A 03 30 */ addi r3, r26, 0x330 +/* 80222BF4 0021FB54 38 E1 00 08 */ addi r7, r1, 8 +/* 80222BF8 0021FB58 4B E5 D0 0D */ bl "SetState__18CStateMachineStateFR13CStateManagerR3CAiPC13CStateMachineRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80222BFC 0021FB5C 38 61 00 08 */ addi r3, r1, 8 +/* 80222C00 0021FB60 48 11 AE E1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80222C04: +/* 80222C04 0021FB64 CB E1 00 38 */ lfd f31, 0x38(r1) +/* 80222C08 0021FB68 BB 41 00 20 */ lmw r26, 0x20(r1) +/* 80222C0C 0021FB6C 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80222C10 0021FB70 7C 08 03 A6 */ mtlr r0 +/* 80222C14 0021FB74 38 21 00 40 */ addi r1, r1, 0x40 +/* 80222C18 0021FB78 4E 80 00 20 */ blr + +.global ProjectileInfo__9CBabygothFv +ProjectileInfo__9CBabygothFv: +/* 80222C1C 0021FB7C 38 63 09 58 */ addi r3, r3, 0x958 +/* 80222C20 0021FB80 4E 80 00 20 */ blr + +.global PreRender__9CBabygothFR13CStateManagerRC14CFrustumPlanes +PreRender__9CBabygothFR13CStateManagerRC14CFrustumPlanes: +/* 80222C24 0021FB84 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80222C28 0021FB88 7C 08 02 A6 */ mflr r0 +/* 80222C2C 0021FB8C 90 01 00 14 */ stw r0, 0x14(r1) +/* 80222C30 0021FB90 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80222C34 0021FB94 7C 7F 1B 78 */ mr r31, r3 +/* 80222C38 0021FB98 4B E5 56 A5 */ bl PreRender__10CPatternedFR13CStateManagerRC14CFrustumPlanes +/* 80222C3C 0021FB9C 80 7F 0A 04 */ lwz r3, 0xa04(r31) +/* 80222C40 0021FBA0 98 7F 00 B5 */ stb r3, 0xb5(r31) +/* 80222C44 0021FBA4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80222C48 0021FBA8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80222C4C 0021FBAC 7C 08 03 A6 */ mtlr r0 +/* 80222C50 0021FBB0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80222C54 0021FBB4 4E 80 00 20 */ blr + +.global Render__9CBabygothCFRC13CStateManager +Render__9CBabygothCFRC13CStateManager: +/* 80222C58 0021FBB8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80222C5C 0021FBBC 7C 08 02 A6 */ mflr r0 +/* 80222C60 0021FBC0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80222C64 0021FBC4 4B E5 53 C9 */ bl Render__10CPatternedCFRC13CStateManager +/* 80222C68 0021FBC8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80222C6C 0021FBCC 7C 08 03 A6 */ mtlr r0 +/* 80222C70 0021FBD0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80222C74 0021FBD4 4E 80 00 20 */ blr + +.global AcceptScriptMsg__9CBabygothF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__9CBabygothF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 80222C78 0021FBD8 94 21 FE F0 */ stwu r1, -0x110(r1) +/* 80222C7C 0021FBDC 7C 08 02 A6 */ mflr r0 +/* 80222C80 0021FBE0 90 01 01 14 */ stw r0, 0x114(r1) +/* 80222C84 0021FBE4 DB E1 01 00 */ stfd f31, 0x100(r1) +/* 80222C88 0021FBE8 F3 E1 01 08 */ psq_st f31, 264(r1), 0, qr0 +/* 80222C8C 0021FBEC BF 41 00 E8 */ stmw r26, 0xe8(r1) +/* 80222C90 0021FBF0 7C 9C 23 78 */ mr r28, r4 +/* 80222C94 0021FBF4 7C 7B 1B 78 */ mr r27, r3 +/* 80222C98 0021FBF8 28 1C 00 30 */ cmplwi r28, 0x30 +/* 80222C9C 0021FBFC 7C BD 2B 78 */ mr r29, r5 +/* 80222CA0 0021FC00 7C DE 33 78 */ mr r30, r6 +/* 80222CA4 0021FC04 3B E0 00 01 */ li r31, 1 +/* 80222CA8 0021FC08 41 81 05 D8 */ bgt lbl_80223280 +/* 80222CAC 0021FC0C 3C 80 80 3E */ lis r4, lbl_803E767C@ha +/* 80222CB0 0021FC10 57 80 10 3A */ slwi r0, r28, 2 +/* 80222CB4 0021FC14 38 84 76 7C */ addi r4, r4, lbl_803E767C@l +/* 80222CB8 0021FC18 7C 04 00 2E */ lwzx r0, r4, r0 +/* 80222CBC 0021FC1C 7C 09 03 A6 */ mtctr r0 +/* 80222CC0 0021FC20 4E 80 04 20 */ bctr +/* 80222CC4 0021FC24 81 83 00 00 */ lwz r12, 0(r3) +/* 80222CC8 0021FC28 7F C4 F3 78 */ mr r4, r30 +/* 80222CCC 0021FC2C C0 22 B4 04 */ lfs f1, lbl_805AD124@sda21(r2) +/* 80222CD0 0021FC30 81 8C 01 C0 */ lwz r12, 0x1c0(r12) +/* 80222CD4 0021FC34 7D 89 03 A6 */ mtctr r12 +/* 80222CD8 0021FC38 4E 80 04 21 */ bctrl +/* 80222CDC 0021FC3C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80222CE0 0021FC40 40 82 00 10 */ bne lbl_80222CF0 +/* 80222CE4 0021FC44 80 7B 04 50 */ lwz r3, 0x450(r27) +/* 80222CE8 0021FC48 38 80 00 00 */ li r4, 0 +/* 80222CEC 0021FC4C 4B F1 7C ED */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +lbl_80222CF0: +/* 80222CF0 0021FC50 80 7B 04 50 */ lwz r3, 0x450(r27) +/* 80222CF4 0021FC54 7F C4 F3 78 */ mr r4, r30 +/* 80222CF8 0021FC58 4B F1 7F F9 */ bl Activate__15CBodyControllerFR13CStateManager +/* 80222CFC 0021FC5C 7F 63 DB 78 */ mr r3, r27 +/* 80222D00 0021FC60 7F C4 F3 78 */ mr r4, r30 +/* 80222D04 0021FC64 4B FF C4 9D */ bl sub_8021f1a0 +/* 80222D08 0021FC68 7F 63 DB 78 */ mr r3, r27 +/* 80222D0C 0021FC6C 7F C4 F3 78 */ mr r4, r30 +/* 80222D10 0021FC70 4B FF B4 51 */ bl sub_8021e160 +/* 80222D14 0021FC74 80 7B 04 50 */ lwz r3, 0x450(r27) +/* 80222D18 0021FC78 38 63 02 A4 */ addi r3, r3, 0x2a4 +/* 80222D1C 0021FC7C 4B F1 11 91 */ bl GetMaxSpeed__14CBodyStateInfoCFv +/* 80222D20 0021FC80 FF E0 08 90 */ fmr f31, f1 +/* 80222D24 0021FC84 C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 80222D28 0021FC88 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 80222D2C 0021FC8C 40 81 00 1C */ ble lbl_80222D48 +/* 80222D30 0021FC90 80 7B 04 50 */ lwz r3, 0x450(r27) +/* 80222D34 0021FC94 38 80 00 01 */ li r4, 1 +/* 80222D38 0021FC98 38 63 02 A4 */ addi r3, r3, 0x2a4 +/* 80222D3C 0021FC9C 4B F1 10 99 */ bl GetLocomotionSpeed__14CBodyStateInfoCFQ23pas15ELocomotionAnim +/* 80222D40 0021FCA0 EC 41 F8 24 */ fdivs f2, f1, f31 +/* 80222D44 0021FCA4 48 00 00 08 */ b lbl_80222D4C +lbl_80222D48: +/* 80222D48 0021FCA8 C0 42 B4 18 */ lfs f2, lbl_805AD138@sda21(r2) +lbl_80222D4C: +/* 80222D4C 0021FCAC 80 7B 04 50 */ lwz r3, 0x450(r27) +/* 80222D50 0021FCB0 38 00 00 02 */ li r0, 2 +/* 80222D54 0021FCB4 C0 22 B4 04 */ lfs f1, lbl_805AD124@sda21(r2) +/* 80222D58 0021FCB8 90 03 00 34 */ stw r0, 0x34(r3) +/* 80222D5C 0021FCBC 80 7B 04 50 */ lwz r3, 0x450(r27) +/* 80222D60 0021FCC0 38 63 00 04 */ addi r3, r3, 4 +/* 80222D64 0021FCC4 4B F0 EA 85 */ bl SetSteeringSpeedRange__16CBodyStateCmdMgrFff +/* 80222D68 0021FCC8 80 82 B3 F4 */ lwz r4, lbl_805AD114@sda21(r2) +/* 80222D6C 0021FCCC 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 80222D70 0021FCD0 4B DE 1F 49 */ bl string_l__4rstlFPCc +/* 80222D74 0021FCD4 80 9B 00 64 */ lwz r4, 0x64(r27) +/* 80222D78 0021FCD8 38 61 00 08 */ addi r3, r1, 8 +/* 80222D7C 0021FCDC 38 A1 00 A0 */ addi r5, r1, 0xa0 +/* 80222D80 0021FCE0 80 84 00 10 */ lwz r4, 0x10(r4) +/* 80222D84 0021FCE4 4B E0 BA B5 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80222D88 0021FCE8 88 01 00 08 */ lbz r0, 8(r1) +/* 80222D8C 0021FCEC 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 80222D90 0021FCF0 98 1B 09 F4 */ stb r0, 0x9f4(r27) +/* 80222D94 0021FCF4 48 11 AD 4D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80222D98 0021FCF8 48 00 04 E8 */ b lbl_80223280 +/* 80222D9C 0021FCFC 80 7B 09 28 */ lwz r3, 0x928(r27) +/* 80222DA0 0021FD00 7F C4 F3 78 */ mr r4, r30 +/* 80222DA4 0021FD04 38 A0 00 01 */ li r5, 1 +/* 80222DA8 0021FD08 4B F8 45 51 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb +/* 80222DAC 0021FD0C 48 00 04 D4 */ b lbl_80223280 +/* 80222DB0 0021FD10 80 7B 09 28 */ lwz r3, 0x928(r27) +/* 80222DB4 0021FD14 7F C4 F3 78 */ mr r4, r30 +/* 80222DB8 0021FD18 38 A0 00 00 */ li r5, 0 +/* 80222DBC 0021FD1C 4B F8 45 3D */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb +/* 80222DC0 0021FD20 88 1B 0A 49 */ lbz r0, 0xa49(r27) +/* 80222DC4 0021FD24 38 60 00 00 */ li r3, 0 +/* 80222DC8 0021FD28 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 80222DCC 0021FD2C 7F 63 DB 78 */ mr r3, r27 +/* 80222DD0 0021FD30 98 1B 0A 49 */ stb r0, 0xa49(r27) +/* 80222DD4 0021FD34 7F C4 F3 78 */ mr r4, r30 +/* 80222DD8 0021FD38 4B FF A8 6D */ bl sub_8021d644 +/* 80222DDC 0021FD3C 48 00 04 A4 */ b lbl_80223280 +/* 80222DE0 0021FD40 80 7B 09 28 */ lwz r3, 0x928(r27) +/* 80222DE4 0021FD44 7F C4 F3 78 */ mr r4, r30 +/* 80222DE8 0021FD48 4B F8 45 DD */ bl Destroy__22CCollisionActorManagerCFR13CStateManager +/* 80222DEC 0021FD4C A0 7B 09 80 */ lhz r3, 0x980(r27) +/* 80222DF0 0021FD50 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80222DF4 0021FD54 7C 03 00 40 */ cmplw r3, r0 +/* 80222DF8 0021FD58 41 82 00 20 */ beq lbl_80222E18 +/* 80222DFC 0021FD5C A0 1B 09 80 */ lhz r0, 0x980(r27) +/* 80222E00 0021FD60 7F C3 F3 78 */ mr r3, r30 +/* 80222E04 0021FD64 38 81 00 3C */ addi r4, r1, 0x3c +/* 80222E08 0021FD68 B0 01 00 3C */ sth r0, 0x3c(r1) +/* 80222E0C 0021FD6C 4B E2 94 61 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +/* 80222E10 0021FD70 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80222E14 0021FD74 B0 1B 09 80 */ sth r0, 0x980(r27) +lbl_80222E18: +/* 80222E18 0021FD78 7F 63 DB 78 */ mr r3, r27 +/* 80222E1C 0021FD7C 7F C4 F3 78 */ mr r4, r30 +/* 80222E20 0021FD80 4B FF A8 25 */ bl sub_8021d644 +/* 80222E24 0021FD84 48 00 04 5C */ b lbl_80223280 +/* 80222E28 0021FD88 80 9B 04 50 */ lwz r4, 0x450(r27) +/* 80222E2C 0021FD8C 88 04 03 00 */ lbz r0, 0x300(r4) +/* 80222E30 0021FD90 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 80222E34 0021FD94 40 82 00 50 */ bne lbl_80222E84 +/* 80222E38 0021FD98 81 83 00 00 */ lwz r12, 0(r3) +/* 80222E3C 0021FD9C C3 FB 00 E8 */ lfs f31, 0xe8(r27) +/* 80222E40 0021FDA0 81 8C 02 BC */ lwz r12, 0x2bc(r12) +/* 80222E44 0021FDA4 7D 89 03 A6 */ mtctr r12 +/* 80222E48 0021FDA8 4E 80 04 21 */ bctrl +/* 80222E4C 0021FDAC EC 01 07 F2 */ fmuls f0, f1, f31 +/* 80222E50 0021FDB0 C0 22 B4 04 */ lfs f1, lbl_805AD124@sda21(r2) +/* 80222E54 0021FDB4 38 C0 00 00 */ li r6, 0 +/* 80222E58 0021FDB8 7F 63 DB 78 */ mr r3, r27 +/* 80222E5C 0021FDBC D0 3B 01 50 */ stfs f1, 0x150(r27) +/* 80222E60 0021FDC0 7F C5 F3 78 */ mr r5, r30 +/* 80222E64 0021FDC4 FC 00 00 50 */ fneg f0, f0 +/* 80222E68 0021FDC8 D0 3B 01 54 */ stfs f1, 0x154(r27) +/* 80222E6C 0021FDCC 38 80 00 25 */ li r4, 0x25 +/* 80222E70 0021FDD0 D0 1B 01 58 */ stfs f0, 0x158(r27) +/* 80222E74 0021FDD4 88 1B 03 28 */ lbz r0, 0x328(r27) +/* 80222E78 0021FDD8 50 C0 26 F6 */ rlwimi r0, r6, 4, 0x1b, 0x1b +/* 80222E7C 0021FDDC 98 1B 03 28 */ stb r0, 0x328(r27) +/* 80222E80 0021FDE0 4B E3 11 01 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +lbl_80222E84: +/* 80222E84 0021FDE4 3B E0 00 00 */ li r31, 0 +/* 80222E88 0021FDE8 48 00 03 F8 */ b lbl_80223280 +/* 80222E8C 0021FDEC 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80222E90 0021FDF0 38 C0 00 01 */ li r6, 1 +/* 80222E94 0021FDF4 38 E4 66 A0 */ addi r7, r4, skZero3f@l +/* 80222E98 0021FDF8 7F C5 F3 78 */ mr r5, r30 +/* 80222E9C 0021FDFC C0 07 00 00 */ lfs f0, 0(r7) +/* 80222EA0 0021FE00 38 80 00 25 */ li r4, 0x25 +/* 80222EA4 0021FE04 D0 1B 01 50 */ stfs f0, 0x150(r27) +/* 80222EA8 0021FE08 C0 07 00 04 */ lfs f0, 4(r7) +/* 80222EAC 0021FE0C D0 1B 01 54 */ stfs f0, 0x154(r27) +/* 80222EB0 0021FE10 C0 07 00 08 */ lfs f0, 8(r7) +/* 80222EB4 0021FE14 D0 1B 01 58 */ stfs f0, 0x158(r27) +/* 80222EB8 0021FE18 88 1B 03 28 */ lbz r0, 0x328(r27) +/* 80222EBC 0021FE1C 50 C0 26 F6 */ rlwimi r0, r6, 4, 0x1b, 0x1b +/* 80222EC0 0021FE20 98 1B 03 28 */ stb r0, 0x328(r27) +/* 80222EC4 0021FE24 4B E3 14 8D */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 80222EC8 0021FE28 3B E0 00 00 */ li r31, 0 +/* 80222ECC 0021FE2C 48 00 03 B4 */ b lbl_80223280 +/* 80222ED0 0021FE30 88 1B 0A 48 */ lbz r0, 0xa48(r27) +/* 80222ED4 0021FE34 38 60 00 01 */ li r3, 1 +/* 80222ED8 0021FE38 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80222EDC 0021FE3C 98 1B 0A 48 */ stb r0, 0xa48(r27) +/* 80222EE0 0021FE40 48 00 03 A0 */ b lbl_80223280 +/* 80222EE4 0021FE44 80 BB 00 04 */ lwz r5, 4(r27) +/* 80222EE8 0021FE48 80 9E 08 50 */ lwz r4, 0x850(r30) +/* 80222EEC 0021FE4C 54 A3 18 38 */ slwi r3, r5, 3 +/* 80222EF0 0021FE50 90 A1 00 50 */ stw r5, 0x50(r1) +/* 80222EF4 0021FE54 80 84 00 20 */ lwz r4, 0x20(r4) +/* 80222EF8 0021FE58 38 03 00 04 */ addi r0, r3, 4 +/* 80222EFC 0021FE5C 90 A1 00 4C */ stw r5, 0x4c(r1) +/* 80222F00 0021FE60 7C 84 00 2E */ lwzx r4, r4, r0 +/* 80222F04 0021FE64 80 64 01 2C */ lwz r3, 0x12c(r4) +/* 80222F08 0021FE68 80 03 10 BC */ lwz r0, 0x10bc(r3) +/* 80222F0C 0021FE6C 90 1B 06 EC */ stw r0, 0x6ec(r27) +/* 80222F10 0021FE70 80 64 01 2C */ lwz r3, 0x12c(r4) +/* 80222F14 0021FE74 80 03 10 BC */ lwz r0, 0x10bc(r3) +/* 80222F18 0021FE78 90 1B 07 D0 */ stw r0, 0x7d0(r27) +/* 80222F1C 0021FE7C A0 7B 06 E8 */ lhz r3, 0x6e8(r27) +/* 80222F20 0021FE80 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80222F24 0021FE84 7C 03 00 40 */ cmplw r3, r0 +/* 80222F28 0021FE88 40 82 03 58 */ bne lbl_80223280 +/* 80222F2C 0021FE8C 7F 64 DB 78 */ mr r4, r27 +/* 80222F30 0021FE90 7F C5 F3 78 */ mr r5, r30 +/* 80222F34 0021FE94 38 61 00 38 */ addi r3, r1, 0x38 +/* 80222F38 0021FE98 48 01 72 B1 */ bl GetTeamAiMgr__10CTeamAiMgrF3CAiRC13CStateManager +/* 80222F3C 0021FE9C A0 01 00 38 */ lhz r0, 0x38(r1) +/* 80222F40 0021FEA0 B0 1B 06 E8 */ sth r0, 0x6e8(r27) +/* 80222F44 0021FEA4 48 00 03 3C */ b lbl_80223280 +/* 80222F48 0021FEA8 A0 1D 00 00 */ lhz r0, 0(r29) +/* 80222F4C 0021FEAC 7F C5 F3 78 */ mr r5, r30 +/* 80222F50 0021FEB0 38 81 00 34 */ addi r4, r1, 0x34 +/* 80222F54 0021FEB4 B0 01 00 34 */ sth r0, 0x34(r1) +/* 80222F58 0021FEB8 4B FF C5 5D */ bl sub_8021f4b4 +/* 80222F5C 0021FEBC A0 1D 00 00 */ lhz r0, 0(r29) +/* 80222F60 0021FEC0 7F C3 F3 78 */ mr r3, r30 +/* 80222F64 0021FEC4 38 81 00 30 */ addi r4, r1, 0x30 +/* 80222F68 0021FEC8 B0 01 00 30 */ sth r0, 0x30(r1) +/* 80222F6C 0021FECC 4B E2 96 09 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80222F70 0021FED0 7C 64 1B 78 */ mr r4, r3 +/* 80222F74 0021FED4 38 61 00 74 */ addi r3, r1, 0x74 +/* 80222F78 0021FED8 4B E8 C3 D5 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 80222F7C 0021FEDC 80 83 00 04 */ lwz r4, 4(r3) +/* 80222F80 0021FEE0 28 04 00 00 */ cmplwi r4, 0 +/* 80222F84 0021FEE4 41 82 02 FC */ beq lbl_80223280 +/* 80222F88 0021FEE8 38 61 00 2C */ addi r3, r1, 0x2c +/* 80222F8C 0021FEEC 4B F8 5C 01 */ bl GetLastTouchedObject__15CCollisionActorCFv +/* 80222F90 0021FEF0 A0 01 00 2C */ lhz r0, 0x2c(r1) +/* 80222F94 0021FEF4 7F C3 F3 78 */ mr r3, r30 +/* 80222F98 0021FEF8 38 81 00 28 */ addi r4, r1, 0x28 +/* 80222F9C 0021FEFC B0 01 00 44 */ sth r0, 0x44(r1) +/* 80222FA0 0021FF00 B0 01 00 28 */ sth r0, 0x28(r1) +/* 80222FA4 0021FF04 4B E2 96 01 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80222FA8 0021FF08 7C 64 1B 78 */ mr r4, r3 +/* 80222FAC 0021FF0C 38 61 00 5C */ addi r3, r1, 0x5c +/* 80222FB0 0021FF10 4B E8 28 E9 */ bl "__ct__20TCastToPtr<7CWeapon>FP7CEntity" +/* 80222FB4 0021FF14 80 83 00 04 */ lwz r4, 4(r3) +/* 80222FB8 0021FF18 28 04 00 00 */ cmplwi r4, 0 +/* 80222FBC 0021FF1C 41 82 02 C4 */ beq lbl_80223280 +/* 80222FC0 0021FF20 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 80222FC4 0021FF24 A0 84 00 EC */ lhz r4, 0xec(r4) +/* 80222FC8 0021FF28 A0 03 00 08 */ lhz r0, 8(r3) +/* 80222FCC 0021FF2C 7C 04 00 40 */ cmplw r4, r0 +/* 80222FD0 0021FF30 40 82 02 B0 */ bne lbl_80223280 +/* 80222FD4 0021FF34 88 1B 0A 48 */ lbz r0, 0xa48(r27) +/* 80222FD8 0021FF38 38 60 00 01 */ li r3, 1 +/* 80222FDC 0021FF3C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80222FE0 0021FF40 98 1B 0A 48 */ stb r0, 0xa48(r27) +/* 80222FE4 0021FF44 48 00 02 9C */ b lbl_80223280 +/* 80222FE8 0021FF48 A0 1D 00 00 */ lhz r0, 0(r29) +/* 80222FEC 0021FF4C 7F C3 F3 78 */ mr r3, r30 +/* 80222FF0 0021FF50 38 81 00 24 */ addi r4, r1, 0x24 +/* 80222FF4 0021FF54 B0 01 00 24 */ sth r0, 0x24(r1) +/* 80222FF8 0021FF58 4B E2 95 7D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80222FFC 0021FF5C 7C 64 1B 78 */ mr r4, r3 +/* 80223000 0021FF60 38 61 00 6C */ addi r3, r1, 0x6c +/* 80223004 0021FF64 4B E8 C3 49 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 80223008 0021FF68 80 83 00 04 */ lwz r4, 4(r3) +/* 8022300C 0021FF6C 28 04 00 00 */ cmplwi r4, 0 +/* 80223010 0021FF70 41 82 01 98 */ beq lbl_802231A8 +/* 80223014 0021FF74 38 61 00 20 */ addi r3, r1, 0x20 +/* 80223018 0021FF78 4B F8 5B 75 */ bl GetLastTouchedObject__15CCollisionActorCFv +/* 8022301C 0021FF7C A0 01 00 20 */ lhz r0, 0x20(r1) +/* 80223020 0021FF80 7F C3 F3 78 */ mr r3, r30 +/* 80223024 0021FF84 38 81 00 1C */ addi r4, r1, 0x1c +/* 80223028 0021FF88 B0 01 00 40 */ sth r0, 0x40(r1) +/* 8022302C 0021FF8C B0 01 00 1C */ sth r0, 0x1c(r1) +/* 80223030 0021FF90 4B E2 95 75 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80223034 0021FF94 7C 64 1B 78 */ mr r4, r3 +/* 80223038 0021FF98 38 61 00 54 */ addi r3, r1, 0x54 +/* 8022303C 0021FF9C 4B E8 28 5D */ bl "__ct__20TCastToPtr<7CWeapon>FP7CEntity" +/* 80223040 0021FFA0 83 43 00 04 */ lwz r26, 4(r3) +/* 80223044 0021FFA4 28 1A 00 00 */ cmplwi r26, 0 +/* 80223048 0021FFA8 41 82 01 1C */ beq lbl_80223164 +/* 8022304C 0021FFAC 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 80223050 0021FFB0 A0 9A 00 EC */ lhz r4, 0xec(r26) +/* 80223054 0021FFB4 A0 03 00 08 */ lhz r0, 8(r3) +/* 80223058 0021FFB8 7C 04 00 40 */ cmplw r4, r0 +/* 8022305C 0021FFBC 40 82 01 08 */ bne lbl_80223164 +/* 80223060 0021FFC0 7F 63 DB 78 */ mr r3, r27 +/* 80223064 0021FFC4 7F A4 EB 78 */ mr r4, r29 +/* 80223068 0021FFC8 4B FF BF B5 */ bl sub_8021f01c +/* 8022306C 0021FFCC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80223070 0021FFD0 41 82 00 28 */ beq lbl_80223098 +/* 80223074 0021FFD4 81 9B 00 00 */ lwz r12, 0(r27) +/* 80223078 0021FFD8 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8022307C 0021FFDC 7F 63 DB 78 */ mr r3, r27 +/* 80223080 0021FFE0 C0 22 B4 04 */ lfs f1, lbl_805AD124@sda21(r2) +/* 80223084 0021FFE4 81 8C 00 90 */ lwz r12, 0x90(r12) +/* 80223088 0021FFE8 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 8022308C 0021FFEC 7D 89 03 A6 */ mtctr r12 +/* 80223090 0021FFF0 4E 80 04 21 */ bctrl +/* 80223094 0021FFF4 48 00 00 8C */ b lbl_80223120 +lbl_80223098: +/* 80223098 0021FFF8 7F 63 DB 78 */ mr r3, r27 +/* 8022309C 0021FFFC 7F A4 EB 78 */ mr r4, r29 +/* 802230A0 00220000 4B FF BF 39 */ bl sub_8021efd8 +/* 802230A4 00220004 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 802230A8 00220008 41 82 00 78 */ beq lbl_80223120 +/* 802230AC 0022000C 81 9B 00 00 */ lwz r12, 0(r27) +/* 802230B0 00220010 3C 80 80 5A */ lis r4, skZero3f@ha +/* 802230B4 00220014 7F 63 DB 78 */ mr r3, r27 +/* 802230B8 00220018 C0 22 B4 04 */ lfs f1, lbl_805AD124@sda21(r2) +/* 802230BC 0022001C 81 8C 00 90 */ lwz r12, 0x90(r12) +/* 802230C0 00220020 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 802230C4 00220024 7D 89 03 A6 */ mtctr r12 +/* 802230C8 00220028 4E 80 04 21 */ bctrl +/* 802230CC 0022002C 80 1B 05 6C */ lwz r0, 0x56c(r27) +/* 802230D0 00220030 2C 00 00 03 */ cmpwi r0, 3 +/* 802230D4 00220034 41 82 00 4C */ beq lbl_80223120 +/* 802230D8 00220038 88 1B 0A 44 */ lbz r0, 0xa44(r27) +/* 802230DC 0022003C 28 00 00 00 */ cmplwi r0, 0 +/* 802230E0 00220040 41 82 00 40 */ beq lbl_80223120 +/* 802230E4 00220044 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 802230E8 00220048 38 9A 00 34 */ addi r4, r26, 0x34 +/* 802230EC 0022004C 48 0E FA 89 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 802230F0 00220050 C0 02 B4 50 */ lfs f0, lbl_805AD170@sda21(r2) +/* 802230F4 00220054 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 802230F8 00220058 38 81 00 48 */ addi r4, r1, 0x48 +/* 802230FC 0022005C D0 01 00 48 */ stfs f0, 0x48(r1) +/* 80223100 00220060 48 0F 03 BD */ bl RotateLocalZ__12CTransform4fFRC9CRelAngle +/* 80223104 00220064 A0 FB 06 B4 */ lhz r7, 0x6b4(r27) +/* 80223108 00220068 7F 63 DB 78 */ mr r3, r27 +/* 8022310C 0022006C 7F C4 F3 78 */ mr r4, r30 +/* 80223110 00220070 38 BB 0A 38 */ addi r5, r27, 0xa38 +/* 80223114 00220074 38 C1 00 B0 */ addi r6, r1, 0xb0 +/* 80223118 00220078 39 00 00 00 */ li r8, 0 +/* 8022311C 0022007C 4B FF A6 C5 */ bl sub_8021d7e0 +lbl_80223120: +/* 80223120 00220080 C0 3A 01 40 */ lfs f1, 0x140(r26) +/* 80223124 00220084 7F 63 DB 78 */ mr r3, r27 +/* 80223128 00220088 C0 7A 00 58 */ lfs f3, 0x58(r26) +/* 8022312C 0022008C 7F C5 F3 78 */ mr r5, r30 +/* 80223130 00220090 C0 5A 00 48 */ lfs f2, 0x48(r26) +/* 80223134 00220094 38 81 00 94 */ addi r4, r1, 0x94 +/* 80223138 00220098 C0 1A 00 38 */ lfs f0, 0x38(r26) +/* 8022313C 0022009C 38 DA 01 2C */ addi r6, r26, 0x12c +/* 80223140 002200A0 38 E0 00 01 */ li r7, 1 +/* 80223144 002200A4 39 00 00 00 */ li r8, 0 +/* 80223148 002200A8 D0 01 00 94 */ stfs f0, 0x94(r1) +/* 8022314C 002200AC D0 41 00 98 */ stfs f2, 0x98(r1) +/* 80223150 002200B0 D0 61 00 9C */ stfs f3, 0x9c(r1) +/* 80223154 002200B4 81 9B 00 00 */ lwz r12, 0(r27) +/* 80223158 002200B8 81 8C 00 88 */ lwz r12, 0x88(r12) +/* 8022315C 002200BC 7D 89 03 A6 */ mtctr r12 +/* 80223160 002200C0 4E 80 04 21 */ bctrl +lbl_80223164: +/* 80223164 002200C4 88 1B 0A 48 */ lbz r0, 0xa48(r27) +/* 80223168 002200C8 38 60 00 01 */ li r3, 1 +/* 8022316C 002200CC 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80223170 002200D0 C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 80223174 002200D4 98 1B 0A 48 */ stb r0, 0xa48(r27) +/* 80223178 002200D8 7F C3 F3 78 */ mr r3, r30 +/* 8022317C 002200DC 38 81 00 88 */ addi r4, r1, 0x88 +/* 80223180 002200E0 38 A0 00 00 */ li r5, 0 +/* 80223184 002200E4 D0 1B 08 E8 */ stfs f0, 0x8e8(r27) +/* 80223188 002200E8 C0 5B 00 60 */ lfs f2, 0x60(r27) +/* 8022318C 002200EC C0 3B 00 50 */ lfs f1, 0x50(r27) +/* 80223190 002200F0 C0 1B 00 40 */ lfs f0, 0x40(r27) +/* 80223194 002200F4 D0 01 00 88 */ stfs f0, 0x88(r1) +/* 80223198 002200F8 D0 21 00 8C */ stfs f1, 0x8c(r1) +/* 8022319C 002200FC D0 41 00 90 */ stfs f2, 0x90(r1) +/* 802231A0 00220100 4B E2 55 E5 */ bl InformListeners__13CStateManagerFRC9CVector3f16EListenNoiseType +/* 802231A4 00220104 48 00 00 1C */ b lbl_802231C0 +lbl_802231A8: +/* 802231A8 00220108 A0 1D 00 00 */ lhz r0, 0(r29) +/* 802231AC 0022010C 7F 63 DB 78 */ mr r3, r27 +/* 802231B0 00220110 7F C4 F3 78 */ mr r4, r30 +/* 802231B4 00220114 38 A1 00 18 */ addi r5, r1, 0x18 +/* 802231B8 00220118 B0 01 00 18 */ sth r0, 0x18(r1) +/* 802231BC 0022011C 4B FF A2 BD */ bl sub_8021d478 +lbl_802231C0: +/* 802231C0 00220120 88 1B 04 00 */ lbz r0, 0x400(r27) +/* 802231C4 00220124 38 60 00 01 */ li r3, 1 +/* 802231C8 00220128 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 802231CC 0022012C 98 1B 04 00 */ stb r0, 0x400(r27) +/* 802231D0 00220130 48 00 00 B0 */ b lbl_80223280 +/* 802231D4 00220134 C0 5B 00 60 */ lfs f2, 0x60(r27) +/* 802231D8 00220138 7F C3 F3 78 */ mr r3, r30 +/* 802231DC 0022013C C0 3B 00 50 */ lfs f1, 0x50(r27) +/* 802231E0 00220140 38 81 00 7C */ addi r4, r1, 0x7c +/* 802231E4 00220144 C0 1B 00 40 */ lfs f0, 0x40(r27) +/* 802231E8 00220148 38 A0 00 00 */ li r5, 0 +/* 802231EC 0022014C D0 01 00 7C */ stfs f0, 0x7c(r1) +/* 802231F0 00220150 D0 21 00 80 */ stfs f1, 0x80(r1) +/* 802231F4 00220154 D0 41 00 84 */ stfs f2, 0x84(r1) +/* 802231F8 00220158 4B E2 55 8D */ bl InformListeners__13CStateManagerFRC9CVector3f16EListenNoiseType +/* 802231FC 0022015C 88 1B 04 00 */ lbz r0, 0x400(r27) +/* 80223200 00220160 38 A0 00 01 */ li r5, 1 +/* 80223204 00220164 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 80223208 00220168 C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 8022320C 0022016C 98 1B 04 00 */ stb r0, 0x400(r27) +/* 80223210 00220170 7F C3 F3 78 */ mr r3, r30 +/* 80223214 00220174 38 81 00 14 */ addi r4, r1, 0x14 +/* 80223218 00220178 88 1B 0A 48 */ lbz r0, 0xa48(r27) +/* 8022321C 0022017C 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 80223220 00220180 98 1B 0A 48 */ stb r0, 0xa48(r27) +/* 80223224 00220184 D0 1B 08 E8 */ stfs f0, 0x8e8(r27) +/* 80223228 00220188 A0 1D 00 00 */ lhz r0, 0(r29) +/* 8022322C 0022018C B0 01 00 14 */ sth r0, 0x14(r1) +/* 80223230 00220190 4B E2 93 45 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80223234 00220194 7C 64 1B 78 */ mr r4, r3 +/* 80223238 00220198 38 61 00 64 */ addi r3, r1, 0x64 +/* 8022323C 0022019C 4B E8 C1 11 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 80223240 002201A0 80 03 00 04 */ lwz r0, 4(r3) +/* 80223244 002201A4 28 00 00 00 */ cmplwi r0, 0 +/* 80223248 002201A8 40 82 00 38 */ bne lbl_80223280 +/* 8022324C 002201AC A0 1D 00 00 */ lhz r0, 0(r29) +/* 80223250 002201B0 7F 63 DB 78 */ mr r3, r27 +/* 80223254 002201B4 7F C4 F3 78 */ mr r4, r30 +/* 80223258 002201B8 38 A1 00 10 */ addi r5, r1, 0x10 +/* 8022325C 002201BC B0 01 00 10 */ sth r0, 0x10(r1) +/* 80223260 002201C0 4B FF A2 19 */ bl sub_8021d478 +/* 80223264 002201C4 48 00 00 1C */ b lbl_80223280 +/* 80223268 002201C8 80 7B 09 28 */ lwz r3, 0x928(r27) +/* 8022326C 002201CC 28 03 00 00 */ cmplwi r3, 0 +/* 80223270 002201D0 41 82 00 10 */ beq lbl_80223280 +/* 80223274 002201D4 7F C4 F3 78 */ mr r4, r30 +/* 80223278 002201D8 38 A0 00 00 */ li r5, 0 +/* 8022327C 002201DC 4B F8 3C 45 */ bl SetMovable__22CCollisionActorManagerFb +lbl_80223280: +/* 80223280 002201E0 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 80223284 002201E4 41 82 00 20 */ beq lbl_802232A4 +/* 80223288 002201E8 A0 1D 00 00 */ lhz r0, 0(r29) +/* 8022328C 002201EC 7F 63 DB 78 */ mr r3, r27 +/* 80223290 002201F0 7F 84 E3 78 */ mr r4, r28 +/* 80223294 002201F4 7F C6 F3 78 */ mr r6, r30 +/* 80223298 002201F8 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8022329C 002201FC 38 A1 00 0C */ addi r5, r1, 0xc +/* 802232A0 00220200 4B E5 98 D9 */ bl AcceptScriptMsg__10CPatternedF20EScriptObjectMessage9TUniqueIdR13CStateManager +lbl_802232A4: +/* 802232A4 00220204 E3 E1 01 08 */ psq_l f31, 264(r1), 0, qr0 +/* 802232A8 00220208 CB E1 01 00 */ lfd f31, 0x100(r1) +/* 802232AC 0022020C BB 41 00 E8 */ lmw r26, 0xe8(r1) +/* 802232B0 00220210 80 01 01 14 */ lwz r0, 0x114(r1) +/* 802232B4 00220214 7C 08 03 A6 */ mtlr r0 +/* 802232B8 00220218 38 21 01 10 */ addi r1, r1, 0x110 +/* 802232BC 0022021C 4E 80 00 20 */ blr + +.global Think__9CBabygothFfR13CStateManager +Think__9CBabygothFfR13CStateManager: +/* 802232C0 00220220 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 802232C4 00220224 7C 08 02 A6 */ mflr r0 +/* 802232C8 00220228 90 01 00 44 */ stw r0, 0x44(r1) +/* 802232CC 0022022C DB E1 00 30 */ stfd f31, 0x30(r1) +/* 802232D0 00220230 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 802232D4 00220234 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 802232D8 00220238 93 C1 00 28 */ stw r30, 0x28(r1) +/* 802232DC 0022023C 88 03 00 30 */ lbz r0, 0x30(r3) +/* 802232E0 00220240 FF E0 08 90 */ fmr f31, f1 +/* 802232E4 00220244 7C 7E 1B 78 */ mr r30, r3 +/* 802232E8 00220248 7C 9F 23 78 */ mr r31, r4 +/* 802232EC 0022024C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 802232F0 00220250 41 82 01 80 */ beq lbl_80223470 +/* 802232F4 00220254 4B FF B9 65 */ bl sub_8021ec58 +/* 802232F8 00220258 88 1E 0A 49 */ lbz r0, 0xa49(r30) +/* 802232FC 0022025C 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 80223300 00220260 41 82 00 3C */ beq lbl_8022333C +/* 80223304 00220264 A0 DE 00 08 */ lhz r6, 8(r30) +/* 80223308 00220268 7F E3 FB 78 */ mr r3, r31 +/* 8022330C 0022026C 38 81 00 10 */ addi r4, r1, 0x10 +/* 80223310 00220270 38 A1 00 0C */ addi r5, r1, 0xc +/* 80223314 00220274 B0 C1 00 0C */ sth r6, 0xc(r1) +/* 80223318 00220278 A0 1E 06 E8 */ lhz r0, 0x6e8(r30) +/* 8022331C 0022027C B0 C1 00 08 */ sth r6, 8(r1) +/* 80223320 00220280 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80223324 00220284 48 01 6E 5D */ bl GetTeamAiRole__10CTeamAiMgrCFRC13CStateManager9TUniqueId9TUniqueId +/* 80223328 00220288 28 03 00 00 */ cmplwi r3, 0 +/* 8022332C 0022028C 40 82 00 10 */ bne lbl_8022333C +/* 80223330 00220290 7F C3 F3 78 */ mr r3, r30 +/* 80223334 00220294 7F E4 FB 78 */ mr r4, r31 +/* 80223338 00220298 4B FF A3 B1 */ bl sub_8021d6e8 +lbl_8022333C: +/* 8022333C 0022029C FC 20 F8 90 */ fmr f1, f31 +/* 80223340 002202A0 7F C3 F3 78 */ mr r3, r30 +/* 80223344 002202A4 7F E4 FB 78 */ mr r4, r31 +/* 80223348 002202A8 4B E5 67 D1 */ bl Think__10CPatternedFfR13CStateManager +/* 8022334C 002202AC 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80223350 002202B0 C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 80223354 002202B4 C0 23 03 24 */ lfs f1, 0x324(r3) +/* 80223358 002202B8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8022335C 002202BC 40 81 00 10 */ ble lbl_8022336C +/* 80223360 002202C0 38 7E 08 F0 */ addi r3, r30, 0x8f0 +/* 80223364 002202C4 38 80 00 00 */ li r4, 0 +/* 80223368 002202C8 4B F5 1E BD */ bl SetActive__13CBoneTrackingFb +lbl_8022336C: +/* 8022336C 002202CC FC 20 F8 90 */ fmr f1, f31 +/* 80223370 002202D0 7F C3 F3 78 */ mr r3, r30 +/* 80223374 002202D4 4B FF AF 51 */ bl sub_8021e2c4 +/* 80223378 002202D8 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 8022337C 002202DC 80 63 00 10 */ lwz r3, 0x10(r3) +/* 80223380 002202E0 4B E0 96 85 */ bl PreRender__9CAnimDataFv +/* 80223384 002202E4 FC 20 F8 90 */ fmr f1, f31 +/* 80223388 002202E8 38 7E 08 F0 */ addi r3, r30, 0x8f0 +/* 8022338C 002202EC 4B F5 26 1D */ bl Update__13CBoneTrackingFf +/* 80223390 002202F0 80 BE 00 64 */ lwz r5, 0x64(r30) +/* 80223394 002202F4 7F E4 FB 78 */ mr r4, r31 +/* 80223398 002202F8 81 1E 04 50 */ lwz r8, 0x450(r30) +/* 8022339C 002202FC 38 7E 08 F0 */ addi r3, r30, 0x8f0 +/* 802233A0 00220300 C0 05 00 00 */ lfs f0, 0(r5) +/* 802233A4 00220304 38 DE 00 34 */ addi r6, r30, 0x34 +/* 802233A8 00220308 38 E1 00 14 */ addi r7, r1, 0x14 +/* 802233AC 0022030C D0 01 00 14 */ stfs f0, 0x14(r1) +/* 802233B0 00220310 C0 05 00 04 */ lfs f0, 4(r5) +/* 802233B4 00220314 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 802233B8 00220318 C0 05 00 08 */ lfs f0, 8(r5) +/* 802233BC 0022031C D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 802233C0 00220320 80 BE 00 64 */ lwz r5, 0x64(r30) +/* 802233C4 00220324 80 A5 00 10 */ lwz r5, 0x10(r5) +/* 802233C8 00220328 4B F5 25 49 */ bl PreRender__13CBoneTrackingFRC13CStateManagerR9CAnimDataRC12CTransform4fRC9CVector3fRC15CBodyController +/* 802233CC 0022032C 88 1E 0A 49 */ lbz r0, 0xa49(r30) +/* 802233D0 00220330 FC 20 F8 90 */ fmr f1, f31 +/* 802233D4 00220334 80 7E 09 28 */ lwz r3, 0x928(r30) +/* 802233D8 00220338 7F E4 FB 78 */ mr r4, r31 +/* 802233DC 0022033C 54 00 F7 FE */ rlwinm r0, r0, 0x1e, 0x1f, 0x1f +/* 802233E0 00220340 7C 00 00 34 */ cntlzw r0, r0 +/* 802233E4 00220344 54 05 D9 7E */ srwi r5, r0, 5 +/* 802233E8 00220348 4B F8 40 69 */ bl Update__22CCollisionActorManagerCFfR13CStateManagerQ222CCollisionActorManager14EUpdateOptions +/* 802233EC 0022034C 88 1E 0A 49 */ lbz r0, 0xa49(r30) +/* 802233F0 00220350 38 60 00 01 */ li r3, 1 +/* 802233F4 00220354 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 802233F8 00220358 7F C3 F3 78 */ mr r3, r30 +/* 802233FC 0022035C 98 1E 0A 49 */ stb r0, 0xa49(r30) +/* 80223400 00220360 7F E4 FB 78 */ mr r4, r31 +/* 80223404 00220364 4B FF B3 05 */ bl sub_8021e708 +/* 80223408 00220368 FC 20 F8 90 */ fmr f1, f31 +/* 8022340C 0022036C 7F C3 F3 78 */ mr r3, r30 +/* 80223410 00220370 7F E4 FB 78 */ mr r4, r31 +/* 80223414 00220374 4B FF AC 91 */ bl sub_8021e0a4 +/* 80223418 00220378 7F C3 F3 78 */ mr r3, r30 +/* 8022341C 0022037C 7F E4 FB 78 */ mr r4, r31 +/* 80223420 00220380 4B FF A6 E5 */ bl sub_8021db04 +/* 80223424 00220384 FC 20 F8 90 */ fmr f1, f31 +/* 80223428 00220388 7F C3 F3 78 */ mr r3, r30 +/* 8022342C 0022038C 7F E4 FB 78 */ mr r4, r31 +/* 80223430 00220390 4B FF A6 3D */ bl sub_8021da6c +/* 80223434 00220394 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 80223438 00220398 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8022343C 0022039C 40 82 00 34 */ bne lbl_80223470 +/* 80223440 002203A0 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80223444 002203A4 38 63 02 A4 */ addi r3, r3, 0x2a4 +/* 80223448 002203A8 4B F1 0C 31 */ bl GetCurrentState__14CBodyStateInfoCFv +/* 8022344C 002203AC 81 83 00 00 */ lwz r12, 0(r3) +/* 80223450 002203B0 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 80223454 002203B4 7D 89 03 A6 */ mtctr r12 +/* 80223458 002203B8 4E 80 04 21 */ bctrl +/* 8022345C 002203BC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80223460 002203C0 41 82 00 10 */ beq lbl_80223470 +/* 80223464 002203C4 7F C3 F3 78 */ mr r3, r30 +/* 80223468 002203C8 7F E4 FB 78 */ mr r4, r31 +/* 8022346C 002203CC 4B FF A1 39 */ bl sub_8021d5a4 +lbl_80223470: +/* 80223470 002203D0 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 80223474 002203D4 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80223478 002203D8 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 8022347C 002203DC 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80223480 002203E0 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80223484 002203E4 7C 08 03 A6 */ mtlr r0 +/* 80223488 002203E8 38 21 00 40 */ addi r1, r1, 0x40 +/* 8022348C 002203EC 4E 80 00 20 */ blr + +.global Accept__9CBabygothFR8IVisitor +Accept__9CBabygothFR8IVisitor: +/* 80223490 002203F0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80223494 002203F4 7C 08 02 A6 */ mflr r0 +/* 80223498 002203F8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8022349C 002203FC 7C 60 1B 78 */ mr r0, r3 +/* 802234A0 00220400 7C 83 23 78 */ mr r3, r4 +/* 802234A4 00220404 81 84 00 00 */ lwz r12, 0(r4) +/* 802234A8 00220408 7C 04 03 78 */ mr r4, r0 +/* 802234AC 0022040C 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 802234B0 00220410 7D 89 03 A6 */ mtctr r12 +/* 802234B4 00220414 4E 80 04 21 */ bctrl +/* 802234B8 00220418 80 01 00 14 */ lwz r0, 0x14(r1) +/* 802234BC 0022041C 7C 08 03 A6 */ mtlr r0 +/* 802234C0 00220420 38 21 00 10 */ addi r1, r1, 0x10 +/* 802234C4 00220424 4E 80 00 20 */ blr + +.global __dt__9CBabygothFv +__dt__9CBabygothFv: +/* 802234C8 00220428 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 802234CC 0022042C 7C 08 02 A6 */ mflr r0 +/* 802234D0 00220430 90 01 00 14 */ stw r0, 0x14(r1) +/* 802234D4 00220434 93 E1 00 0C */ stw r31, 0xc(r1) +/* 802234D8 00220438 7C 9F 23 78 */ mr r31, r4 +/* 802234DC 0022043C 93 C1 00 08 */ stw r30, 8(r1) +/* 802234E0 00220440 7C 7E 1B 79 */ or. r30, r3, r3 +/* 802234E4 00220444 41 82 02 80 */ beq lbl_80223764 +/* 802234E8 00220448 3C 60 80 3E */ lis r3, lbl_803E7350@ha +/* 802234EC 0022044C 34 1E 0A 38 */ addic. r0, r30, 0xa38 +/* 802234F0 00220450 38 03 73 50 */ addi r0, r3, lbl_803E7350@l +/* 802234F4 00220454 90 1E 00 00 */ stw r0, 0(r30) +/* 802234F8 00220458 41 82 00 30 */ beq lbl_80223528 +/* 802234FC 0022045C 88 1E 0A 44 */ lbz r0, 0xa44(r30) +/* 80223500 00220460 28 00 00 00 */ cmplwi r0, 0 +/* 80223504 00220464 41 82 00 1C */ beq lbl_80223520 +/* 80223508 00220468 34 7E 0A 38 */ addic. r3, r30, 0xa38 +/* 8022350C 0022046C 41 82 00 14 */ beq lbl_80223520 +/* 80223510 00220470 28 03 00 00 */ cmplwi r3, 0 +/* 80223514 00220474 41 82 00 0C */ beq lbl_80223520 +/* 80223518 00220478 38 80 00 00 */ li r4, 0 +/* 8022351C 0022047C 48 11 D9 25 */ bl __dt__6CTokenFv +lbl_80223520: +/* 80223520 00220480 38 00 00 00 */ li r0, 0 +/* 80223524 00220484 98 1E 0A 44 */ stb r0, 0xa44(r30) +lbl_80223528: +/* 80223528 00220488 34 1E 0A 2C */ addic. r0, r30, 0xa2c +/* 8022352C 0022048C 41 82 00 18 */ beq lbl_80223544 +/* 80223530 00220490 34 1E 0A 2C */ addic. r0, r30, 0xa2c +/* 80223534 00220494 41 82 00 10 */ beq lbl_80223544 +/* 80223538 00220498 38 7E 0A 2C */ addi r3, r30, 0xa2c +/* 8022353C 0022049C 38 80 00 00 */ li r4, 0 +/* 80223540 002204A0 48 11 D9 01 */ bl __dt__6CTokenFv +lbl_80223544: +/* 80223544 002204A4 34 1E 0A 20 */ addic. r0, r30, 0xa20 +/* 80223548 002204A8 41 82 00 18 */ beq lbl_80223560 +/* 8022354C 002204AC 34 1E 0A 20 */ addic. r0, r30, 0xa20 +/* 80223550 002204B0 41 82 00 10 */ beq lbl_80223560 +/* 80223554 002204B4 38 7E 0A 20 */ addi r3, r30, 0xa20 +/* 80223558 002204B8 38 80 00 00 */ li r4, 0 +/* 8022355C 002204BC 48 11 D8 E5 */ bl __dt__6CTokenFv +lbl_80223560: +/* 80223560 002204C0 34 1E 0A 14 */ addic. r0, r30, 0xa14 +/* 80223564 002204C4 41 82 00 18 */ beq lbl_8022357C +/* 80223568 002204C8 34 1E 0A 14 */ addic. r0, r30, 0xa14 +/* 8022356C 002204CC 41 82 00 10 */ beq lbl_8022357C +/* 80223570 002204D0 38 7E 0A 14 */ addi r3, r30, 0xa14 +/* 80223574 002204D4 38 80 00 00 */ li r4, 0 +/* 80223578 002204D8 48 11 D8 C9 */ bl __dt__6CTokenFv +lbl_8022357C: +/* 8022357C 002204DC 34 1E 0A 08 */ addic. r0, r30, 0xa08 +/* 80223580 002204E0 41 82 00 18 */ beq lbl_80223598 +/* 80223584 002204E4 34 1E 0A 08 */ addic. r0, r30, 0xa08 +/* 80223588 002204E8 41 82 00 10 */ beq lbl_80223598 +/* 8022358C 002204EC 38 7E 0A 08 */ addi r3, r30, 0xa08 +/* 80223590 002204F0 38 80 00 00 */ li r4, 0 +/* 80223594 002204F4 48 11 D8 AD */ bl __dt__6CTokenFv +lbl_80223598: +/* 80223598 002204F8 34 1E 09 F8 */ addic. r0, r30, 0x9f8 +/* 8022359C 002204FC 41 82 00 58 */ beq lbl_802235F4 +/* 802235A0 00220500 80 BE 09 F8 */ lwz r5, 0x9f8(r30) +/* 802235A4 00220504 38 60 00 00 */ li r3, 0 +/* 802235A8 00220508 2C 05 00 00 */ cmpwi r5, 0 +/* 802235AC 0022050C 40 81 00 40 */ ble lbl_802235EC +/* 802235B0 00220510 2C 05 00 08 */ cmpwi r5, 8 +/* 802235B4 00220514 38 85 FF F8 */ addi r4, r5, -8 +/* 802235B8 00220518 40 81 00 20 */ ble lbl_802235D8 +/* 802235BC 0022051C 38 04 00 07 */ addi r0, r4, 7 +/* 802235C0 00220520 54 00 E8 FE */ srwi r0, r0, 3 +/* 802235C4 00220524 7C 09 03 A6 */ mtctr r0 +/* 802235C8 00220528 2C 04 00 00 */ cmpwi r4, 0 +/* 802235CC 0022052C 40 81 00 0C */ ble lbl_802235D8 +lbl_802235D0: +/* 802235D0 00220530 38 63 00 08 */ addi r3, r3, 8 +/* 802235D4 00220534 42 00 FF FC */ bdnz lbl_802235D0 +lbl_802235D8: +/* 802235D8 00220538 7C 03 28 50 */ subf r0, r3, r5 +/* 802235DC 0022053C 7C 09 03 A6 */ mtctr r0 +/* 802235E0 00220540 7C 03 28 00 */ cmpw r3, r5 +/* 802235E4 00220544 40 80 00 08 */ bge lbl_802235EC +lbl_802235E8: +/* 802235E8 00220548 42 00 00 00 */ bdnz lbl_802235E8 +lbl_802235EC: +/* 802235EC 0022054C 38 00 00 00 */ li r0, 0 +/* 802235F0 00220550 90 1E 09 F8 */ stw r0, 0x9f8(r30) +lbl_802235F4: +/* 802235F4 00220554 34 1E 09 84 */ addic. r0, r30, 0x984 +/* 802235F8 00220558 41 82 00 10 */ beq lbl_80223608 +/* 802235FC 0022055C 38 7E 09 84 */ addi r3, r30, 0x984 +/* 80223600 00220560 38 80 00 00 */ li r4, 0 +/* 80223604 00220564 48 11 D8 3D */ bl __dt__6CTokenFv +lbl_80223608: +/* 80223608 00220568 34 1E 09 58 */ addic. r0, r30, 0x958 +/* 8022360C 0022056C 41 82 00 20 */ beq lbl_8022362C +/* 80223610 00220570 34 1E 09 58 */ addic. r0, r30, 0x958 +/* 80223614 00220574 41 82 00 18 */ beq lbl_8022362C +/* 80223618 00220578 34 1E 09 58 */ addic. r0, r30, 0x958 +/* 8022361C 0022057C 41 82 00 10 */ beq lbl_8022362C +/* 80223620 00220580 38 7E 09 58 */ addi r3, r30, 0x958 +/* 80223624 00220584 38 80 00 00 */ li r4, 0 +/* 80223628 00220588 48 11 D8 19 */ bl __dt__6CTokenFv +lbl_8022362C: +/* 8022362C 0022058C 34 1E 09 30 */ addic. r0, r30, 0x930 +/* 80223630 00220590 41 82 00 24 */ beq lbl_80223654 +/* 80223634 00220594 3C 60 80 3F */ lis r3, lbl_803ECAD0@ha +/* 80223638 00220598 34 1E 09 30 */ addic. r0, r30, 0x930 +/* 8022363C 0022059C 38 03 CA D0 */ addi r0, r3, lbl_803ECAD0@l +/* 80223640 002205A0 90 1E 09 30 */ stw r0, 0x930(r30) +/* 80223644 002205A4 41 82 00 10 */ beq lbl_80223654 +/* 80223648 002205A8 3C 60 80 3E */ lis r3, lbl_803D97E4@ha +/* 8022364C 002205AC 38 03 97 E4 */ addi r0, r3, lbl_803D97E4@l +/* 80223650 002205B0 90 1E 09 30 */ stw r0, 0x930(r30) +lbl_80223654: +/* 80223654 002205B4 34 1E 09 28 */ addic. r0, r30, 0x928 +/* 80223658 002205B8 41 82 00 10 */ beq lbl_80223668 +/* 8022365C 002205BC 80 7E 09 28 */ lwz r3, 0x928(r30) +/* 80223660 002205C0 38 80 00 01 */ li r4, 1 +/* 80223664 002205C4 4B F8 42 79 */ bl sub_801a78dc +lbl_80223668: +/* 80223668 002205C8 34 1E 08 F0 */ addic. r0, r30, 0x8f0 +/* 8022366C 002205CC 41 82 00 14 */ beq lbl_80223680 +/* 80223670 002205D0 34 1E 09 14 */ addic. r0, r30, 0x914 +/* 80223674 002205D4 41 82 00 0C */ beq lbl_80223680 +/* 80223678 002205D8 38 00 00 00 */ li r0, 0 +/* 8022367C 002205DC 98 1E 09 20 */ stb r0, 0x920(r30) +lbl_80223680: +/* 80223680 002205E0 34 1E 07 D0 */ addic. r0, r30, 0x7d0 +/* 80223684 002205E4 41 82 00 60 */ beq lbl_802236E4 +/* 80223688 002205E8 34 1E 07 D4 */ addic. r0, r30, 0x7d4 +/* 8022368C 002205EC 41 82 00 58 */ beq lbl_802236E4 +/* 80223690 002205F0 80 BE 07 D4 */ lwz r5, 0x7d4(r30) +/* 80223694 002205F4 38 60 00 00 */ li r3, 0 +/* 80223698 002205F8 2C 05 00 00 */ cmpwi r5, 0 +/* 8022369C 002205FC 40 81 00 40 */ ble lbl_802236DC +/* 802236A0 00220600 2C 05 00 08 */ cmpwi r5, 8 +/* 802236A4 00220604 38 85 FF F8 */ addi r4, r5, -8 +/* 802236A8 00220608 40 81 00 20 */ ble lbl_802236C8 +/* 802236AC 0022060C 38 04 00 07 */ addi r0, r4, 7 +/* 802236B0 00220610 54 00 E8 FE */ srwi r0, r0, 3 +/* 802236B4 00220614 7C 09 03 A6 */ mtctr r0 +/* 802236B8 00220618 2C 04 00 00 */ cmpwi r4, 0 +/* 802236BC 0022061C 40 81 00 0C */ ble lbl_802236C8 +lbl_802236C0: +/* 802236C0 00220620 38 63 00 08 */ addi r3, r3, 8 +/* 802236C4 00220624 42 00 FF FC */ bdnz lbl_802236C0 +lbl_802236C8: +/* 802236C8 00220628 7C 03 28 50 */ subf r0, r3, r5 +/* 802236CC 0022062C 7C 09 03 A6 */ mtctr r0 +/* 802236D0 00220630 7C 03 28 00 */ cmpw r3, r5 +/* 802236D4 00220634 40 80 00 08 */ bge lbl_802236DC +lbl_802236D8: +/* 802236D8 00220638 42 00 00 00 */ bdnz lbl_802236D8 +lbl_802236DC: +/* 802236DC 0022063C 38 00 00 00 */ li r0, 0 +/* 802236E0 00220640 90 1E 07 D4 */ stw r0, 0x7d4(r30) +lbl_802236E4: +/* 802236E4 00220644 34 1E 06 EC */ addic. r0, r30, 0x6ec +/* 802236E8 00220648 41 82 00 60 */ beq lbl_80223748 +/* 802236EC 0022064C 34 1E 06 F0 */ addic. r0, r30, 0x6f0 +/* 802236F0 00220650 41 82 00 58 */ beq lbl_80223748 +/* 802236F4 00220654 80 BE 06 F0 */ lwz r5, 0x6f0(r30) +/* 802236F8 00220658 38 60 00 00 */ li r3, 0 +/* 802236FC 0022065C 2C 05 00 00 */ cmpwi r5, 0 +/* 80223700 00220660 40 81 00 40 */ ble lbl_80223740 +/* 80223704 00220664 2C 05 00 08 */ cmpwi r5, 8 +/* 80223708 00220668 38 85 FF F8 */ addi r4, r5, -8 +/* 8022370C 0022066C 40 81 00 20 */ ble lbl_8022372C +/* 80223710 00220670 38 04 00 07 */ addi r0, r4, 7 +/* 80223714 00220674 54 00 E8 FE */ srwi r0, r0, 3 +/* 80223718 00220678 7C 09 03 A6 */ mtctr r0 +/* 8022371C 0022067C 2C 04 00 00 */ cmpwi r4, 0 +/* 80223720 00220680 40 81 00 0C */ ble lbl_8022372C +lbl_80223724: +/* 80223724 00220684 38 63 00 08 */ addi r3, r3, 8 +/* 80223728 00220688 42 00 FF FC */ bdnz lbl_80223724 +lbl_8022372C: +/* 8022372C 0022068C 7C 03 28 50 */ subf r0, r3, r5 +/* 80223730 00220690 7C 09 03 A6 */ mtctr r0 +/* 80223734 00220694 7C 03 28 00 */ cmpw r3, r5 +/* 80223738 00220698 40 80 00 08 */ bge lbl_80223740 +lbl_8022373C: +/* 8022373C 0022069C 42 00 00 00 */ bdnz lbl_8022373C +lbl_80223740: +/* 80223740 002206A0 38 00 00 00 */ li r0, 0 +/* 80223744 002206A4 90 1E 06 F0 */ stw r0, 0x6f0(r30) +lbl_80223748: +/* 80223748 002206A8 7F C3 F3 78 */ mr r3, r30 +/* 8022374C 002206AC 38 80 00 00 */ li r4, 0 +/* 80223750 002206B0 4B E5 3E 21 */ bl __dt__10CPatternedFv +/* 80223754 002206B4 7F E0 07 35 */ extsh. r0, r31 +/* 80223758 002206B8 40 81 00 0C */ ble lbl_80223764 +/* 8022375C 002206BC 7F C3 F3 78 */ mr r3, r30 +/* 80223760 002206C0 48 0F 21 D1 */ bl Free__7CMemoryFPCv +lbl_80223764: +/* 80223764 002206C4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80223768 002206C8 7F C3 F3 78 */ mr r3, r30 +/* 8022376C 002206CC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80223770 002206D0 83 C1 00 08 */ lwz r30, 8(r1) +/* 80223774 002206D4 7C 08 03 A6 */ mtlr r0 +/* 80223778 002206D8 38 21 00 10 */ addi r1, r1, 0x10 +/* 8022377C 002206DC 4E 80 00 20 */ blr + +.global "__ct__9CBabygothF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC16CActorParametersRC13CBabygothData" +"__ct__9CBabygothF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC16CActorParametersRC13CBabygothData": +/* 80223780 002206E0 94 21 FE 30 */ stwu r1, -0x1d0(r1) +/* 80223784 002206E4 7C 08 02 A6 */ mflr r0 +/* 80223788 002206E8 7C CC 33 78 */ mr r12, r6 +/* 8022378C 002206EC 7D 0B 43 78 */ mr r11, r8 +/* 80223790 002206F0 90 01 01 D4 */ stw r0, 0x1d4(r1) +/* 80223794 002206F4 7C A6 2B 78 */ mr r6, r5 +/* 80223798 002206F8 7D 88 63 78 */ mr r8, r12 +/* 8022379C 002206FC 38 A1 00 20 */ addi r5, r1, 0x20 +/* 802237A0 00220700 BF 01 01 B0 */ stmw r24, 0x1b0(r1) +/* 802237A4 00220704 7D 3E 4B 78 */ mr r30, r9 +/* 802237A8 00220708 7C E9 3B 78 */ mr r9, r7 +/* 802237AC 0022070C 83 E1 01 D8 */ lwz r31, 0x1d8(r1) +/* 802237B0 00220710 7C 7D 1B 78 */ mr r29, r3 +/* 802237B4 00220714 38 E0 00 00 */ li r7, 0 +/* 802237B8 00220718 A0 04 00 00 */ lhz r0, 0(r4) +/* 802237BC 0022071C 38 80 00 00 */ li r4, 0 +/* 802237C0 00220720 B0 01 00 20 */ sth r0, 0x20(r1) +/* 802237C4 00220724 38 00 00 01 */ li r0, 1 +/* 802237C8 00220728 93 C1 00 08 */ stw r30, 8(r1) +/* 802237CC 0022072C 90 81 00 0C */ stw r4, 0xc(r1) +/* 802237D0 00220730 38 80 00 02 */ li r4, 2 +/* 802237D4 00220734 90 01 00 10 */ stw r0, 0x10(r1) +/* 802237D8 00220738 90 01 00 14 */ stw r0, 0x14(r1) +/* 802237DC 0022073C 91 41 00 18 */ stw r10, 0x18(r1) +/* 802237E0 00220740 7D 6A 5B 78 */ mr r10, r11 +/* 802237E4 00220744 90 01 00 1C */ stw r0, 0x1c(r1) +/* 802237E8 00220748 4B E5 9C 69 */ bl "__ct__10CPatternedFUi9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC16CActorParametersUi" +/* 802237EC 0022074C 3C 60 80 3E */ lis r3, lbl_803E7350@ha +/* 802237F0 00220750 38 A0 FF FF */ li r5, -1 +/* 802237F4 00220754 38 63 73 50 */ addi r3, r3, lbl_803E7350@l +/* 802237F8 00220758 38 00 00 00 */ li r0, 0 +/* 802237FC 0022075C 90 7D 00 00 */ stw r3, 0(r29) +/* 80223800 00220760 7F E4 FB 78 */ mr r4, r31 +/* 80223804 00220764 38 7D 05 70 */ addi r3, r29, 0x570 +/* 80223808 00220768 90 BD 05 68 */ stw r5, 0x568(r29) +/* 8022380C 0022076C 90 1D 05 6C */ stw r0, 0x56c(r29) +/* 80223810 00220770 48 00 09 C9 */ bl __ct__13CBabygothDataFRC13CBabygothData +/* 80223814 00220774 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80223818 00220778 38 7D 06 EC */ addi r3, r29, 0x6ec +/* 8022381C 0022077C C0 22 B4 18 */ lfs f1, lbl_805AD138@sda21(r2) +/* 80223820 00220780 38 80 00 00 */ li r4, 0 +/* 80223824 00220784 B0 1D 06 E8 */ sth r0, 0x6e8(r29) +/* 80223828 00220788 38 A0 00 01 */ li r5, 1 +/* 8022382C 0022078C FC 40 08 90 */ fmr f2, f1 +/* 80223830 00220790 80 DE 01 0C */ lwz r6, 0x10c(r30) +/* 80223834 00220794 4B FA 55 61 */ bl __ct__15CPathFindSearchFP7CPFAreaUiff +/* 80223838 00220798 C0 22 B4 18 */ lfs f1, lbl_805AD138@sda21(r2) +/* 8022383C 0022079C 38 7D 07 D0 */ addi r3, r29, 0x7d0 +/* 80223840 002207A0 80 DE 01 0C */ lwz r6, 0x10c(r30) +/* 80223844 002207A4 38 80 00 00 */ li r4, 0 +/* 80223848 002207A8 FC 40 08 90 */ fmr f2, f1 +/* 8022384C 002207AC 38 A0 00 01 */ li r5, 1 +/* 80223850 002207B0 4B FA 55 45 */ bl __ct__15CPathFindSearchFP7CPFAreaUiff +/* 80223854 002207B4 38 00 00 00 */ li r0, 0 +/* 80223858 002207B8 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8022385C 002207BC 90 1D 08 B4 */ stw r0, 0x8b4(r29) +/* 80223860 002207C0 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 80223864 002207C4 3C 60 80 3D */ lis r3, lbl_803D31D0@ha +/* 80223868 002207C8 C0 02 B4 04 */ lfs f0, lbl_805AD124@sda21(r2) +/* 8022386C 002207CC C0 25 00 00 */ lfs f1, 0(r5) +/* 80223870 002207D0 38 83 31 D0 */ addi r4, r3, lbl_803D31D0@l +/* 80223874 002207D4 38 61 01 40 */ addi r3, r1, 0x140 +/* 80223878 002207D8 D0 3D 08 B8 */ stfs f1, 0x8b8(r29) +/* 8022387C 002207DC 38 84 00 64 */ addi r4, r4, 0x64 +/* 80223880 002207E0 C0 25 00 04 */ lfs f1, 4(r5) +/* 80223884 002207E4 D0 3D 08 BC */ stfs f1, 0x8bc(r29) +/* 80223888 002207E8 C0 25 00 08 */ lfs f1, 8(r5) +/* 8022388C 002207EC D0 3D 08 C0 */ stfs f1, 0x8c0(r29) +/* 80223890 002207F0 C0 25 00 00 */ lfs f1, 0(r5) +/* 80223894 002207F4 D0 3D 08 C4 */ stfs f1, 0x8c4(r29) +/* 80223898 002207F8 C0 25 00 04 */ lfs f1, 4(r5) +/* 8022389C 002207FC D0 3D 08 C8 */ stfs f1, 0x8c8(r29) +/* 802238A0 00220800 C0 25 00 08 */ lfs f1, 8(r5) +/* 802238A4 00220804 D0 3D 08 CC */ stfs f1, 0x8cc(r29) +/* 802238A8 00220808 C0 3D 03 B4 */ lfs f1, 0x3b4(r29) +/* 802238AC 0022080C D0 3D 08 D0 */ stfs f1, 0x8d0(r29) +/* 802238B0 00220810 D0 1D 08 D4 */ stfs f0, 0x8d4(r29) +/* 802238B4 00220814 D0 1D 08 D8 */ stfs f0, 0x8d8(r29) +/* 802238B8 00220818 D0 1D 08 DC */ stfs f0, 0x8dc(r29) +/* 802238BC 0022081C D0 1D 08 E0 */ stfs f0, 0x8e0(r29) +/* 802238C0 00220820 D0 1D 08 E4 */ stfs f0, 0x8e4(r29) +/* 802238C4 00220824 D0 1D 08 E8 */ stfs f0, 0x8e8(r29) +/* 802238C8 00220828 D0 1D 08 EC */ stfs f0, 0x8ec(r29) +/* 802238CC 0022082C 4B DE 13 ED */ bl string_l__4rstlFPCc +/* 802238D0 00220830 80 9D 00 64 */ lwz r4, 0x64(r29) +/* 802238D4 00220834 38 7D 08 F0 */ addi r3, r29, 0x8f0 +/* 802238D8 00220838 C0 22 B4 64 */ lfs f1, lbl_805AD184@sda21(r2) +/* 802238DC 0022083C 38 A1 01 40 */ addi r5, r1, 0x140 +/* 802238E0 00220840 80 84 00 10 */ lwz r4, 0x10(r4) +/* 802238E4 00220844 38 C0 00 00 */ li r6, 0 +/* 802238E8 00220848 C0 42 B4 50 */ lfs f2, lbl_805AD170@sda21(r2) +/* 802238EC 0022084C 4B F5 20 CD */ bl "__ct__13CBoneTrackingFRC9CAnimDataRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>ffb" +/* 802238F0 00220850 38 61 01 40 */ addi r3, r1, 0x140 +/* 802238F4 00220854 48 11 A1 ED */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 802238F8 00220858 38 00 00 00 */ li r0, 0 +/* 802238FC 0022085C 7F A4 EB 78 */ mr r4, r29 +/* 80223900 00220860 90 1D 09 28 */ stw r0, 0x928(r29) +/* 80223904 00220864 3B 3D 00 68 */ addi r25, r29, 0x68 +/* 80223908 00220868 38 61 01 50 */ addi r3, r1, 0x150 +/* 8022390C 0022086C 4B EF 70 21 */ bl GetBoundingBox__13CPhysicsActorCFv +/* 80223910 00220870 3B 5D 09 30 */ addi r26, r29, 0x930 +/* 80223914 00220874 7F 24 CB 78 */ mr r4, r25 +/* 80223918 00220878 7F 43 D3 78 */ mr r3, r26 +/* 8022391C 0022087C 48 0A BF 99 */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList +/* 80223920 00220880 3C 80 80 3F */ lis r4, lbl_803ECAD0@ha +/* 80223924 00220884 38 7D 09 58 */ addi r3, r29, 0x958 +/* 80223928 00220888 38 04 CA D0 */ addi r0, r4, lbl_803ECAD0@l +/* 8022392C 0022088C 38 BF 00 0C */ addi r5, r31, 0xc +/* 80223930 00220890 90 1A 00 00 */ stw r0, 0(r26) +/* 80223934 00220894 C0 01 01 50 */ lfs f0, 0x150(r1) +/* 80223938 00220898 D0 1A 00 10 */ stfs f0, 0x10(r26) +/* 8022393C 0022089C C0 01 01 54 */ lfs f0, 0x154(r1) +/* 80223940 002208A0 D0 1A 00 14 */ stfs f0, 0x14(r26) +/* 80223944 002208A4 C0 01 01 58 */ lfs f0, 0x158(r1) +/* 80223948 002208A8 D0 1A 00 18 */ stfs f0, 0x18(r26) +/* 8022394C 002208AC C0 01 01 5C */ lfs f0, 0x15c(r1) +/* 80223950 002208B0 D0 1A 00 1C */ stfs f0, 0x1c(r26) +/* 80223954 002208B4 C0 01 01 60 */ lfs f0, 0x160(r1) +/* 80223958 002208B8 D0 1A 00 20 */ stfs f0, 0x20(r26) +/* 8022395C 002208BC C0 01 01 64 */ lfs f0, 0x164(r1) +/* 80223960 002208C0 D0 1A 00 24 */ stfs f0, 0x24(r26) +/* 80223964 002208C4 80 9F 00 08 */ lwz r4, 8(r31) +/* 80223968 002208C8 4B FF 87 41 */ bl __ct__15CProjectileInfoFUiRC11CDamageInfo +/* 8022396C 002208CC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80223970 002208D0 3B 20 00 00 */ li r25, 0 +/* 80223974 002208D4 3B 40 00 00 */ li r26, 0 +/* 80223978 002208D8 B0 1D 09 80 */ sth r0, 0x980(r29) +/* 8022397C 002208DC 80 9F 00 44 */ lwz r4, 0x44(r31) +/* 80223980 002208E0 3C 04 00 01 */ addis r0, r4, 1 +/* 80223984 002208E4 28 00 FF FF */ cmplwi r0, 0xffff +/* 80223988 002208E8 41 82 00 3C */ beq lbl_802239C4 +/* 8022398C 002208EC 3C 60 57 50 */ lis r3, 0x57505343@ha +/* 80223990 002208F0 90 81 00 E0 */ stw r4, 0xe0(r1) +/* 80223994 002208F4 38 03 53 43 */ addi r0, r3, 0x57505343@l +/* 80223998 002208F8 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8022399C 002208FC 90 01 00 DC */ stw r0, 0xdc(r1) +/* 802239A0 00220900 38 61 00 D4 */ addi r3, r1, 0xd4 +/* 802239A4 00220904 38 A1 00 DC */ addi r5, r1, 0xdc +/* 802239A8 00220908 81 84 00 00 */ lwz r12, 0(r4) +/* 802239AC 0022090C 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 802239B0 00220910 7D 89 03 A6 */ mtctr r12 +/* 802239B4 00220914 4E 80 04 21 */ bctrl +/* 802239B8 00220918 38 81 00 D4 */ addi r4, r1, 0xd4 +/* 802239BC 0022091C 3B 20 00 01 */ li r25, 1 +/* 802239C0 00220920 48 00 00 30 */ b lbl_802239F0 +lbl_802239C4: +/* 802239C4 00220924 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 802239C8 00220928 3C 60 80 3D */ lis r3, lbl_803D31D0@ha +/* 802239CC 0022092C 38 A3 31 D0 */ addi r5, r3, lbl_803D31D0@l +/* 802239D0 00220930 38 61 00 CC */ addi r3, r1, 0xcc +/* 802239D4 00220934 81 84 00 00 */ lwz r12, 0(r4) +/* 802239D8 00220938 38 A5 00 6B */ addi r5, r5, 0x6b +/* 802239DC 0022093C 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 802239E0 00220940 7D 89 03 A6 */ mtctr r12 +/* 802239E4 00220944 4E 80 04 21 */ bctrl +/* 802239E8 00220948 3B 40 00 01 */ li r26, 1 +/* 802239EC 0022094C 38 81 00 CC */ addi r4, r1, 0xcc +lbl_802239F0: +/* 802239F0 00220950 38 7D 09 84 */ addi r3, r29, 0x984 +/* 802239F4 00220954 48 11 D4 B5 */ bl __ct__6CTokenFRC6CToken +/* 802239F8 00220958 7F 40 07 75 */ extsb. r0, r26 +/* 802239FC 0022095C 41 82 00 10 */ beq lbl_80223A0C +/* 80223A00 00220960 38 61 00 CC */ addi r3, r1, 0xcc +/* 80223A04 00220964 38 80 FF FF */ li r4, -1 +/* 80223A08 00220968 48 11 D4 39 */ bl __dt__6CTokenFv +lbl_80223A0C: +/* 80223A0C 0022096C 7F 20 07 75 */ extsb. r0, r25 +/* 80223A10 00220970 41 82 00 10 */ beq lbl_80223A20 +/* 80223A14 00220974 38 61 00 D4 */ addi r3, r1, 0xd4 +/* 80223A18 00220978 38 80 FF FF */ li r4, -1 +/* 80223A1C 0022097C 48 11 D4 25 */ bl __dt__6CTokenFv +lbl_80223A20: +/* 80223A20 00220980 80 9E 00 5C */ lwz r4, 0x5c(r30) +/* 80223A24 00220984 3C 60 80 3D */ lis r3, lbl_803D31D0@ha +/* 80223A28 00220988 80 BE 00 60 */ lwz r5, 0x60(r30) +/* 80223A2C 0022098C 38 63 31 D0 */ addi r3, r3, lbl_803D31D0@l +/* 80223A30 00220990 38 C0 00 FF */ li r6, 0xff +/* 80223A34 00220994 38 00 00 00 */ li r0, 0 +/* 80223A38 00220998 90 9D 09 8C */ stw r4, 0x98c(r29) +/* 80223A3C 0022099C 38 83 00 2D */ addi r4, r3, 0x2d +/* 80223A40 002209A0 3B 80 00 00 */ li r28, 0 +/* 80223A44 002209A4 3B 60 00 00 */ li r27, 0 +/* 80223A48 002209A8 90 BD 09 90 */ stw r5, 0x990(r29) +/* 80223A4C 002209AC 3B 40 00 00 */ li r26, 0 +/* 80223A50 002209B0 3B 20 00 00 */ li r25, 0 +/* 80223A54 002209B4 38 60 00 3C */ li r3, 0x3c +/* 80223A58 002209B8 81 1E 00 64 */ lwz r8, 0x64(r30) +/* 80223A5C 002209BC 38 A0 00 00 */ li r5, 0 +/* 80223A60 002209C0 80 FE 00 68 */ lwz r7, 0x68(r30) +/* 80223A64 002209C4 91 1D 09 94 */ stw r8, 0x994(r29) +/* 80223A68 002209C8 90 FD 09 98 */ stw r7, 0x998(r29) +/* 80223A6C 002209CC 81 1E 00 6C */ lwz r8, 0x6c(r30) +/* 80223A70 002209D0 80 FE 00 70 */ lwz r7, 0x70(r30) +/* 80223A74 002209D4 91 1D 09 9C */ stw r8, 0x99c(r29) +/* 80223A78 002209D8 90 FD 09 A0 */ stw r7, 0x9a0(r29) +/* 80223A7C 002209DC 81 1E 00 74 */ lwz r8, 0x74(r30) +/* 80223A80 002209E0 80 FE 00 78 */ lwz r7, 0x78(r30) +/* 80223A84 002209E4 91 1D 09 A4 */ stw r8, 0x9a4(r29) +/* 80223A88 002209E8 90 FD 09 A8 */ stw r7, 0x9a8(r29) +/* 80223A8C 002209EC 81 1E 00 7C */ lwz r8, 0x7c(r30) +/* 80223A90 002209F0 80 FE 00 80 */ lwz r7, 0x80(r30) +/* 80223A94 002209F4 91 1D 09 AC */ stw r8, 0x9ac(r29) +/* 80223A98 002209F8 90 FD 09 B0 */ stw r7, 0x9b0(r29) +/* 80223A9C 002209FC 81 1E 00 84 */ lwz r8, 0x84(r30) +/* 80223AA0 00220A00 80 FE 00 88 */ lwz r7, 0x88(r30) +/* 80223AA4 00220A04 91 1D 09 B4 */ stw r8, 0x9b4(r29) +/* 80223AA8 00220A08 90 FD 09 B8 */ stw r7, 0x9b8(r29) +/* 80223AAC 00220A0C 81 1E 00 8C */ lwz r8, 0x8c(r30) +/* 80223AB0 00220A10 80 FE 00 90 */ lwz r7, 0x90(r30) +/* 80223AB4 00220A14 91 1D 09 BC */ stw r8, 0x9bc(r29) +/* 80223AB8 00220A18 90 FD 09 C0 */ stw r7, 0x9c0(r29) +/* 80223ABC 00220A1C 80 FE 00 94 */ lwz r7, 0x94(r30) +/* 80223AC0 00220A20 90 FD 09 C4 */ stw r7, 0x9c4(r29) +/* 80223AC4 00220A24 81 1E 00 98 */ lwz r8, 0x98(r30) +/* 80223AC8 00220A28 80 FE 00 9C */ lwz r7, 0x9c(r30) +/* 80223ACC 00220A2C 91 1D 09 C8 */ stw r8, 0x9c8(r29) +/* 80223AD0 00220A30 90 FD 09 CC */ stw r7, 0x9cc(r29) +/* 80223AD4 00220A34 81 1E 00 A0 */ lwz r8, 0xa0(r30) +/* 80223AD8 00220A38 80 FE 00 A4 */ lwz r7, 0xa4(r30) +/* 80223ADC 00220A3C 91 1D 09 D0 */ stw r8, 0x9d0(r29) +/* 80223AE0 00220A40 90 FD 09 D4 */ stw r7, 0x9d4(r29) +/* 80223AE4 00220A44 81 1E 00 A8 */ lwz r8, 0xa8(r30) +/* 80223AE8 00220A48 80 FE 00 AC */ lwz r7, 0xac(r30) +/* 80223AEC 00220A4C 91 1D 09 D8 */ stw r8, 0x9d8(r29) +/* 80223AF0 00220A50 90 FD 09 DC */ stw r7, 0x9dc(r29) +/* 80223AF4 00220A54 81 1E 00 B0 */ lwz r8, 0xb0(r30) +/* 80223AF8 00220A58 80 FE 00 B4 */ lwz r7, 0xb4(r30) +/* 80223AFC 00220A5C 91 1D 09 E0 */ stw r8, 0x9e0(r29) +/* 80223B00 00220A60 90 FD 09 E4 */ stw r7, 0x9e4(r29) +/* 80223B04 00220A64 80 FE 00 B8 */ lwz r7, 0xb8(r30) +/* 80223B08 00220A68 90 FD 09 E8 */ stw r7, 0x9e8(r29) +/* 80223B0C 00220A6C 80 FE 00 BC */ lwz r7, 0xbc(r30) +/* 80223B10 00220A70 90 FD 09 EC */ stw r7, 0x9ec(r29) +/* 80223B14 00220A74 80 FE 00 C0 */ lwz r7, 0xc0(r30) +/* 80223B18 00220A78 90 FD 09 F0 */ stw r7, 0x9f0(r29) +/* 80223B1C 00220A7C 98 DD 09 F4 */ stb r6, 0x9f4(r29) +/* 80223B20 00220A80 A0 CD A3 8C */ lhz r6, lbl_805A8F4C@sda21(r13) +/* 80223B24 00220A84 B0 DD 09 F6 */ sth r6, 0x9f6(r29) +/* 80223B28 00220A88 90 1D 09 F8 */ stw r0, 0x9f8(r29) +/* 80223B2C 00220A8C C0 1F 01 40 */ lfs f0, 0x140(r31) +/* 80223B30 00220A90 D0 1D 0A 00 */ stfs f0, 0xa00(r29) +/* 80223B34 00220A94 90 1D 0A 04 */ stw r0, 0xa04(r29) +/* 80223B38 00220A98 48 0F 1D 35 */ bl __nw__FUlPCcPCc +/* 80223B3C 00220A9C 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80223B40 00220AA0 41 82 00 DC */ beq lbl_80223C1C +/* 80223B44 00220AA4 80 DF 01 38 */ lwz r6, 0x138(r31) +/* 80223B48 00220AA8 3C 60 43 4D */ lis r3, 0x434D444C@ha +/* 80223B4C 00220AAC 38 03 44 4C */ addi r0, r3, 0x434D444C@l +/* 80223B50 00220AB0 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80223B54 00220AB4 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 80223B58 00220AB8 38 61 00 AC */ addi r3, r1, 0xac +/* 80223B5C 00220ABC 38 A1 00 B4 */ addi r5, r1, 0xb4 +/* 80223B60 00220AC0 90 C1 00 B8 */ stw r6, 0xb8(r1) +/* 80223B64 00220AC4 81 84 00 00 */ lwz r12, 0(r4) +/* 80223B68 00220AC8 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80223B6C 00220ACC 7D 89 03 A6 */ mtctr r12 +/* 80223B70 00220AD0 4E 80 04 21 */ bctrl +/* 80223B74 00220AD4 3B 21 01 28 */ addi r25, r1, 0x128 +/* 80223B78 00220AD8 38 81 00 AC */ addi r4, r1, 0xac +/* 80223B7C 00220ADC 7F 23 CB 78 */ mr r3, r25 +/* 80223B80 00220AE0 3B 40 00 01 */ li r26, 1 +/* 80223B84 00220AE4 48 11 D3 25 */ bl __ct__6CTokenFRC6CToken +/* 80223B88 00220AE8 7F 23 CB 78 */ mr r3, r25 +/* 80223B8C 00220AEC 48 11 D2 81 */ bl GetObj__6CTokenFv +/* 80223B90 00220AF0 80 A3 00 04 */ lwz r5, 4(r3) +/* 80223B94 00220AF4 3C 60 43 53 */ lis r3, 0x43534B52@ha +/* 80223B98 00220AF8 38 03 4B 52 */ addi r0, r3, 0x43534B52@l +/* 80223B9C 00220AFC 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80223BA0 00220B00 90 A1 01 30 */ stw r5, 0x130(r1) +/* 80223BA4 00220B04 38 61 00 BC */ addi r3, r1, 0xbc +/* 80223BA8 00220B08 38 A1 00 C4 */ addi r5, r1, 0xc4 +/* 80223BAC 00220B0C 3B 20 00 01 */ li r25, 1 +/* 80223BB0 00220B10 80 DF 01 3C */ lwz r6, 0x13c(r31) +/* 80223BB4 00220B14 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 80223BB8 00220B18 90 C1 00 C8 */ stw r6, 0xc8(r1) +/* 80223BBC 00220B1C 81 84 00 00 */ lwz r12, 0(r4) +/* 80223BC0 00220B20 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80223BC4 00220B24 7D 89 03 A6 */ mtctr r12 +/* 80223BC8 00220B28 4E 80 04 21 */ bctrl +/* 80223BCC 00220B2C 3B 61 01 34 */ addi r27, r1, 0x134 +/* 80223BD0 00220B30 38 81 00 BC */ addi r4, r1, 0xbc +/* 80223BD4 00220B34 7F 63 DB 78 */ mr r3, r27 +/* 80223BD8 00220B38 3B 80 00 01 */ li r28, 1 +/* 80223BDC 00220B3C 48 11 D2 CD */ bl __ct__6CTokenFRC6CToken +/* 80223BE0 00220B40 7F 63 DB 78 */ mr r3, r27 +/* 80223BE4 00220B44 48 11 D2 29 */ bl GetObj__6CTokenFv +/* 80223BE8 00220B48 80 03 00 04 */ lwz r0, 4(r3) +/* 80223BEC 00220B4C 7F 65 DB 78 */ mr r5, r27 +/* 80223BF0 00220B50 7F C3 F3 78 */ mr r3, r30 +/* 80223BF4 00220B54 38 81 01 28 */ addi r4, r1, 0x128 +/* 80223BF8 00220B58 90 01 01 3C */ stw r0, 0x13c(r1) +/* 80223BFC 00220B5C 3B 60 00 01 */ li r27, 1 +/* 80223C00 00220B60 38 E0 00 01 */ li r7, 1 +/* 80223C04 00220B64 80 DD 00 64 */ lwz r6, 0x64(r29) +/* 80223C08 00220B68 80 C6 00 10 */ lwz r6, 0x10(r6) +/* 80223C0C 00220B6C 80 C6 00 E0 */ lwz r6, 0xe0(r6) +/* 80223C10 00220B70 38 C6 00 1C */ addi r6, r6, 0x1c +/* 80223C14 00220B74 48 12 F8 25 */ bl "__ct__13CSkinnedModelFRC21TLockedToken<6CModel>RC26TLockedToken<10CSkinRules>RC31TLockedToken<15CCharLayoutInfo>Q213CSkinnedModel14EDataOwnership" +/* 80223C18 00220B78 7C 7E 1B 78 */ mr r30, r3 +lbl_80223C1C: +/* 80223C1C 00220B7C 3B 01 01 1C */ addi r24, r1, 0x11c +/* 80223C20 00220B80 7F C4 F3 78 */ mr r4, r30 +/* 80223C24 00220B84 38 61 00 24 */ addi r3, r1, 0x24 +/* 80223C28 00220B88 4B F3 6F 91 */ bl sub_8015abb8 +/* 80223C2C 00220B8C 38 00 00 00 */ li r0, 0 +/* 80223C30 00220B90 80 81 00 28 */ lwz r4, 0x28(r1) +/* 80223C34 00220B94 98 01 00 24 */ stb r0, 0x24(r1) +/* 80223C38 00220B98 7F 03 C3 78 */ mr r3, r24 +/* 80223C3C 00220B9C 48 11 D2 C9 */ bl __ct__6CTokenFP4IObj +/* 80223C40 00220BA0 88 01 00 24 */ lbz r0, 0x24(r1) +/* 80223C44 00220BA4 28 00 00 00 */ cmplwi r0, 0 +/* 80223C48 00220BA8 41 82 00 24 */ beq lbl_80223C6C +/* 80223C4C 00220BAC 80 61 00 28 */ lwz r3, 0x28(r1) +/* 80223C50 00220BB0 28 03 00 00 */ cmplwi r3, 0 +/* 80223C54 00220BB4 41 82 00 18 */ beq lbl_80223C6C +/* 80223C58 00220BB8 81 83 00 00 */ lwz r12, 0(r3) +/* 80223C5C 00220BBC 38 80 00 01 */ li r4, 1 +/* 80223C60 00220BC0 81 8C 00 08 */ lwz r12, 8(r12) +/* 80223C64 00220BC4 7D 89 03 A6 */ mtctr r12 +/* 80223C68 00220BC8 4E 80 04 21 */ bctrl +lbl_80223C6C: +/* 80223C6C 00220BCC 93 C1 01 24 */ stw r30, 0x124(r1) +/* 80223C70 00220BD0 7F 03 C3 78 */ mr r3, r24 +/* 80223C74 00220BD4 48 11 D1 11 */ bl Lock__6CTokenFv +/* 80223C78 00220BD8 3B 1D 0A 08 */ addi r24, r29, 0xa08 +/* 80223C7C 00220BDC 38 81 01 1C */ addi r4, r1, 0x11c +/* 80223C80 00220BE0 7F 03 C3 78 */ mr r3, r24 +/* 80223C84 00220BE4 48 11 D2 25 */ bl __ct__6CTokenFRC6CToken +/* 80223C88 00220BE8 80 01 01 24 */ lwz r0, 0x124(r1) +/* 80223C8C 00220BEC 7F 03 C3 78 */ mr r3, r24 +/* 80223C90 00220BF0 90 18 00 08 */ stw r0, 8(r24) +/* 80223C94 00220BF4 48 11 D0 F1 */ bl Lock__6CTokenFv +/* 80223C98 00220BF8 38 61 01 1C */ addi r3, r1, 0x11c +/* 80223C9C 00220BFC 38 80 00 00 */ li r4, 0 +/* 80223CA0 00220C00 48 11 D1 A1 */ bl __dt__6CTokenFv +/* 80223CA4 00220C04 7F 20 07 75 */ extsb. r0, r25 +/* 80223CA8 00220C08 41 82 00 10 */ beq lbl_80223CB8 +/* 80223CAC 00220C0C 38 61 01 28 */ addi r3, r1, 0x128 +/* 80223CB0 00220C10 38 80 00 00 */ li r4, 0 +/* 80223CB4 00220C14 48 11 D1 8D */ bl __dt__6CTokenFv +lbl_80223CB8: +/* 80223CB8 00220C18 7F 40 07 75 */ extsb. r0, r26 +/* 80223CBC 00220C1C 41 82 00 10 */ beq lbl_80223CCC +/* 80223CC0 00220C20 38 61 00 AC */ addi r3, r1, 0xac +/* 80223CC4 00220C24 38 80 FF FF */ li r4, -1 +/* 80223CC8 00220C28 48 11 D1 79 */ bl __dt__6CTokenFv +lbl_80223CCC: +/* 80223CCC 00220C2C 7F 60 07 75 */ extsb. r0, r27 +/* 80223CD0 00220C30 41 82 00 10 */ beq lbl_80223CE0 +/* 80223CD4 00220C34 38 61 01 34 */ addi r3, r1, 0x134 +/* 80223CD8 00220C38 38 80 00 00 */ li r4, 0 +/* 80223CDC 00220C3C 48 11 D1 65 */ bl __dt__6CTokenFv +lbl_80223CE0: +/* 80223CE0 00220C40 7F 80 07 75 */ extsb. r0, r28 +/* 80223CE4 00220C44 41 82 00 10 */ beq lbl_80223CF4 +/* 80223CE8 00220C48 38 61 00 BC */ addi r3, r1, 0xbc +/* 80223CEC 00220C4C 38 80 FF FF */ li r4, -1 +/* 80223CF0 00220C50 48 11 D1 51 */ bl __dt__6CTokenFv +lbl_80223CF4: +/* 80223CF4 00220C54 80 DF 01 4C */ lwz r6, 0x14c(r31) +/* 80223CF8 00220C58 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 80223CFC 00220C5C 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 80223D00 00220C60 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80223D04 00220C64 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 80223D08 00220C68 38 61 00 9C */ addi r3, r1, 0x9c +/* 80223D0C 00220C6C 38 A1 00 A4 */ addi r5, r1, 0xa4 +/* 80223D10 00220C70 90 C1 00 A8 */ stw r6, 0xa8(r1) +/* 80223D14 00220C74 81 84 00 00 */ lwz r12, 0(r4) +/* 80223D18 00220C78 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80223D1C 00220C7C 7D 89 03 A6 */ mtctr r12 +/* 80223D20 00220C80 4E 80 04 21 */ bctrl +/* 80223D24 00220C84 3B 1D 0A 14 */ addi r24, r29, 0xa14 +/* 80223D28 00220C88 38 81 00 9C */ addi r4, r1, 0x9c +/* 80223D2C 00220C8C 7F 03 C3 78 */ mr r3, r24 +/* 80223D30 00220C90 48 11 D1 79 */ bl __ct__6CTokenFRC6CToken +/* 80223D34 00220C94 7F 03 C3 78 */ mr r3, r24 +/* 80223D38 00220C98 48 11 D0 D5 */ bl GetObj__6CTokenFv +/* 80223D3C 00220C9C 80 03 00 04 */ lwz r0, 4(r3) +/* 80223D40 00220CA0 38 61 00 9C */ addi r3, r1, 0x9c +/* 80223D44 00220CA4 38 80 FF FF */ li r4, -1 +/* 80223D48 00220CA8 90 18 00 08 */ stw r0, 8(r24) +/* 80223D4C 00220CAC 48 11 D0 F5 */ bl __dt__6CTokenFv +/* 80223D50 00220CB0 80 DF 01 50 */ lwz r6, 0x150(r31) +/* 80223D54 00220CB4 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 80223D58 00220CB8 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 80223D5C 00220CBC 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80223D60 00220CC0 90 01 00 94 */ stw r0, 0x94(r1) +/* 80223D64 00220CC4 38 61 00 8C */ addi r3, r1, 0x8c +/* 80223D68 00220CC8 38 A1 00 94 */ addi r5, r1, 0x94 +/* 80223D6C 00220CCC 90 C1 00 98 */ stw r6, 0x98(r1) +/* 80223D70 00220CD0 81 84 00 00 */ lwz r12, 0(r4) +/* 80223D74 00220CD4 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80223D78 00220CD8 7D 89 03 A6 */ mtctr r12 +/* 80223D7C 00220CDC 4E 80 04 21 */ bctrl +/* 80223D80 00220CE0 3B 1D 0A 20 */ addi r24, r29, 0xa20 +/* 80223D84 00220CE4 38 81 00 8C */ addi r4, r1, 0x8c +/* 80223D88 00220CE8 7F 03 C3 78 */ mr r3, r24 +/* 80223D8C 00220CEC 48 11 D1 1D */ bl __ct__6CTokenFRC6CToken +/* 80223D90 00220CF0 7F 03 C3 78 */ mr r3, r24 +/* 80223D94 00220CF4 48 11 D0 79 */ bl GetObj__6CTokenFv +/* 80223D98 00220CF8 80 03 00 04 */ lwz r0, 4(r3) +/* 80223D9C 00220CFC 38 61 00 8C */ addi r3, r1, 0x8c +/* 80223DA0 00220D00 38 80 FF FF */ li r4, -1 +/* 80223DA4 00220D04 90 18 00 08 */ stw r0, 8(r24) +/* 80223DA8 00220D08 48 11 D0 99 */ bl __dt__6CTokenFv +/* 80223DAC 00220D0C 80 DF 01 54 */ lwz r6, 0x154(r31) +/* 80223DB0 00220D10 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 80223DB4 00220D14 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 80223DB8 00220D18 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80223DBC 00220D1C 90 01 00 84 */ stw r0, 0x84(r1) +/* 80223DC0 00220D20 38 61 00 7C */ addi r3, r1, 0x7c +/* 80223DC4 00220D24 38 A1 00 84 */ addi r5, r1, 0x84 +/* 80223DC8 00220D28 90 C1 00 88 */ stw r6, 0x88(r1) +/* 80223DCC 00220D2C 81 84 00 00 */ lwz r12, 0(r4) +/* 80223DD0 00220D30 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80223DD4 00220D34 7D 89 03 A6 */ mtctr r12 +/* 80223DD8 00220D38 4E 80 04 21 */ bctrl +/* 80223DDC 00220D3C 3B 1D 0A 2C */ addi r24, r29, 0xa2c +/* 80223DE0 00220D40 38 81 00 7C */ addi r4, r1, 0x7c +/* 80223DE4 00220D44 7F 03 C3 78 */ mr r3, r24 +/* 80223DE8 00220D48 48 11 D0 C1 */ bl __ct__6CTokenFRC6CToken +/* 80223DEC 00220D4C 7F 03 C3 78 */ mr r3, r24 +/* 80223DF0 00220D50 48 11 D0 1D */ bl GetObj__6CTokenFv +/* 80223DF4 00220D54 80 03 00 04 */ lwz r0, 4(r3) +/* 80223DF8 00220D58 38 61 00 7C */ addi r3, r1, 0x7c +/* 80223DFC 00220D5C 38 80 FF FF */ li r4, -1 +/* 80223E00 00220D60 90 18 00 08 */ stw r0, 8(r24) +/* 80223E04 00220D64 48 11 D0 3D */ bl __dt__6CTokenFv +/* 80223E08 00220D68 80 9F 01 48 */ lwz r4, 0x148(r31) +/* 80223E0C 00220D6C 3B 20 00 00 */ li r25, 0 +/* 80223E10 00220D70 3B 40 00 00 */ li r26, 0 +/* 80223E14 00220D74 3B 00 00 00 */ li r24, 0 +/* 80223E18 00220D78 3C 04 00 01 */ addis r0, r4, 1 +/* 80223E1C 00220D7C 3B 60 00 00 */ li r27, 0 +/* 80223E20 00220D80 28 00 FF FF */ cmplwi r0, 0xffff +/* 80223E24 00220D84 41 82 00 90 */ beq lbl_80223EB4 +/* 80223E28 00220D88 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 80223E2C 00220D8C 90 81 00 78 */ stw r4, 0x78(r1) +/* 80223E30 00220D90 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 80223E34 00220D94 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80223E38 00220D98 90 01 00 74 */ stw r0, 0x74(r1) +/* 80223E3C 00220D9C 38 61 00 6C */ addi r3, r1, 0x6c +/* 80223E40 00220DA0 38 A1 00 74 */ addi r5, r1, 0x74 +/* 80223E44 00220DA4 81 84 00 00 */ lwz r12, 0(r4) +/* 80223E48 00220DA8 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80223E4C 00220DAC 7D 89 03 A6 */ mtctr r12 +/* 80223E50 00220DB0 4E 80 04 21 */ bctrl +/* 80223E54 00220DB4 3B 01 01 10 */ addi r24, r1, 0x110 +/* 80223E58 00220DB8 38 81 00 6C */ addi r4, r1, 0x6c +/* 80223E5C 00220DBC 7F 03 C3 78 */ mr r3, r24 +/* 80223E60 00220DC0 3B 20 00 01 */ li r25, 1 +/* 80223E64 00220DC4 48 11 D0 45 */ bl __ct__6CTokenFRC6CToken +/* 80223E68 00220DC8 7F 03 C3 78 */ mr r3, r24 +/* 80223E6C 00220DCC 48 11 CF A1 */ bl GetObj__6CTokenFv +/* 80223E70 00220DD0 80 63 00 04 */ lwz r3, 4(r3) +/* 80223E74 00220DD4 38 00 00 01 */ li r0, 1 +/* 80223E78 00220DD8 37 81 01 00 */ addic. r28, r1, 0x100 +/* 80223E7C 00220DDC 3B 40 00 01 */ li r26, 1 +/* 80223E80 00220DE0 90 61 01 18 */ stw r3, 0x118(r1) +/* 80223E84 00220DE4 98 01 01 0C */ stb r0, 0x10c(r1) +/* 80223E88 00220DE8 41 82 00 20 */ beq lbl_80223EA8 +/* 80223E8C 00220DEC 7F 83 E3 78 */ mr r3, r28 +/* 80223E90 00220DF0 7F 04 C3 78 */ mr r4, r24 +/* 80223E94 00220DF4 48 11 D0 15 */ bl __ct__6CTokenFRC6CToken +/* 80223E98 00220DF8 80 01 01 18 */ lwz r0, 0x118(r1) +/* 80223E9C 00220DFC 7F 83 E3 78 */ mr r3, r28 +/* 80223EA0 00220E00 90 1C 00 08 */ stw r0, 8(r28) +/* 80223EA4 00220E04 48 11 CE E1 */ bl Lock__6CTokenFv +lbl_80223EA8: +/* 80223EA8 00220E08 3B 81 01 00 */ addi r28, r1, 0x100 +/* 80223EAC 00220E0C 3B 00 00 01 */ li r24, 1 +/* 80223EB0 00220E10 48 00 00 14 */ b lbl_80223EC4 +lbl_80223EB4: +/* 80223EB4 00220E14 38 00 00 00 */ li r0, 0 +/* 80223EB8 00220E18 3B 81 00 F0 */ addi r28, r1, 0xf0 +/* 80223EBC 00220E1C 98 01 00 FC */ stb r0, 0xfc(r1) +/* 80223EC0 00220E20 3B 60 00 01 */ li r27, 1 +lbl_80223EC4: +/* 80223EC4 00220E24 88 1C 00 0C */ lbz r0, 0xc(r28) +/* 80223EC8 00220E28 98 1D 0A 44 */ stb r0, 0xa44(r29) +/* 80223ECC 00220E2C 88 1C 00 0C */ lbz r0, 0xc(r28) +/* 80223ED0 00220E30 28 00 00 00 */ cmplwi r0, 0 +/* 80223ED4 00220E34 41 82 00 28 */ beq lbl_80223EFC +/* 80223ED8 00220E38 37 DD 0A 38 */ addic. r30, r29, 0xa38 +/* 80223EDC 00220E3C 41 82 00 20 */ beq lbl_80223EFC +/* 80223EE0 00220E40 7F C3 F3 78 */ mr r3, r30 +/* 80223EE4 00220E44 7F 84 E3 78 */ mr r4, r28 +/* 80223EE8 00220E48 48 11 CF C1 */ bl __ct__6CTokenFRC6CToken +/* 80223EEC 00220E4C 80 1C 00 08 */ lwz r0, 8(r28) +/* 80223EF0 00220E50 7F C3 F3 78 */ mr r3, r30 +/* 80223EF4 00220E54 90 1E 00 08 */ stw r0, 8(r30) +/* 80223EF8 00220E58 48 11 CE 8D */ bl Lock__6CTokenFv +lbl_80223EFC: +/* 80223EFC 00220E5C 7F 60 07 75 */ extsb. r0, r27 +/* 80223F00 00220E60 41 82 00 30 */ beq lbl_80223F30 +/* 80223F04 00220E64 88 01 00 FC */ lbz r0, 0xfc(r1) +/* 80223F08 00220E68 28 00 00 00 */ cmplwi r0, 0 +/* 80223F0C 00220E6C 41 82 00 1C */ beq lbl_80223F28 +/* 80223F10 00220E70 34 61 00 F0 */ addic. r3, r1, 0xf0 +/* 80223F14 00220E74 41 82 00 14 */ beq lbl_80223F28 +/* 80223F18 00220E78 28 03 00 00 */ cmplwi r3, 0 +/* 80223F1C 00220E7C 41 82 00 0C */ beq lbl_80223F28 +/* 80223F20 00220E80 38 80 00 00 */ li r4, 0 +/* 80223F24 00220E84 48 11 CF 1D */ bl __dt__6CTokenFv +lbl_80223F28: +/* 80223F28 00220E88 38 00 00 00 */ li r0, 0 +/* 80223F2C 00220E8C 98 01 00 FC */ stb r0, 0xfc(r1) +lbl_80223F30: +/* 80223F30 00220E90 7F 00 07 75 */ extsb. r0, r24 +/* 80223F34 00220E94 41 82 00 30 */ beq lbl_80223F64 +/* 80223F38 00220E98 88 01 01 0C */ lbz r0, 0x10c(r1) +/* 80223F3C 00220E9C 28 00 00 00 */ cmplwi r0, 0 +/* 80223F40 00220EA0 41 82 00 1C */ beq lbl_80223F5C +/* 80223F44 00220EA4 34 61 01 00 */ addic. r3, r1, 0x100 +/* 80223F48 00220EA8 41 82 00 14 */ beq lbl_80223F5C +/* 80223F4C 00220EAC 28 03 00 00 */ cmplwi r3, 0 +/* 80223F50 00220EB0 41 82 00 0C */ beq lbl_80223F5C +/* 80223F54 00220EB4 38 80 00 00 */ li r4, 0 +/* 80223F58 00220EB8 48 11 CE E9 */ bl __dt__6CTokenFv +lbl_80223F5C: +/* 80223F5C 00220EBC 38 00 00 00 */ li r0, 0 +/* 80223F60 00220EC0 98 01 01 0C */ stb r0, 0x10c(r1) +lbl_80223F64: +/* 80223F64 00220EC4 7F 40 07 75 */ extsb. r0, r26 +/* 80223F68 00220EC8 41 82 00 10 */ beq lbl_80223F78 +/* 80223F6C 00220ECC 38 61 01 10 */ addi r3, r1, 0x110 +/* 80223F70 00220ED0 38 80 00 00 */ li r4, 0 +/* 80223F74 00220ED4 48 11 CE CD */ bl __dt__6CTokenFv +lbl_80223F78: +/* 80223F78 00220ED8 7F 20 07 75 */ extsb. r0, r25 +/* 80223F7C 00220EDC 41 82 00 10 */ beq lbl_80223F8C +/* 80223F80 00220EE0 38 61 00 6C */ addi r3, r1, 0x6c +/* 80223F84 00220EE4 38 80 FF FF */ li r4, -1 +/* 80223F88 00220EE8 48 11 CE B9 */ bl __dt__6CTokenFv +lbl_80223F8C: +/* 80223F8C 00220EEC 88 1D 0A 48 */ lbz r0, 0xa48(r29) +/* 80223F90 00220EF0 38 A0 00 00 */ li r5, 0 +/* 80223F94 00220EF4 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 80223F98 00220EF8 38 80 00 01 */ li r4, 1 +/* 80223F9C 00220EFC 98 1D 0A 48 */ stb r0, 0xa48(r29) +/* 80223FA0 00220F00 38 7D 09 58 */ addi r3, r29, 0x958 +/* 80223FA4 00220F04 88 1D 0A 48 */ lbz r0, 0xa48(r29) +/* 80223FA8 00220F08 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 80223FAC 00220F0C 98 1D 0A 48 */ stb r0, 0xa48(r29) +/* 80223FB0 00220F10 88 1D 0A 48 */ lbz r0, 0xa48(r29) +/* 80223FB4 00220F14 50 A0 2E B4 */ rlwimi r0, r5, 5, 0x1a, 0x1a +/* 80223FB8 00220F18 98 1D 0A 48 */ stb r0, 0xa48(r29) +/* 80223FBC 00220F1C 88 1D 0A 48 */ lbz r0, 0xa48(r29) +/* 80223FC0 00220F20 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 80223FC4 00220F24 98 1D 0A 48 */ stb r0, 0xa48(r29) +/* 80223FC8 00220F28 88 1D 0A 48 */ lbz r0, 0xa48(r29) +/* 80223FCC 00220F2C 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 80223FD0 00220F30 98 1D 0A 48 */ stb r0, 0xa48(r29) +/* 80223FD4 00220F34 88 1D 0A 48 */ lbz r0, 0xa48(r29) +/* 80223FD8 00220F38 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d +/* 80223FDC 00220F3C 98 1D 0A 48 */ stb r0, 0xa48(r29) +/* 80223FE0 00220F40 88 1D 0A 48 */ lbz r0, 0xa48(r29) +/* 80223FE4 00220F44 50 A0 0F BC */ rlwimi r0, r5, 1, 0x1e, 0x1e +/* 80223FE8 00220F48 98 1D 0A 48 */ stb r0, 0xa48(r29) +/* 80223FEC 00220F4C 88 1D 0A 48 */ lbz r0, 0xa48(r29) +/* 80223FF0 00220F50 50 80 07 FE */ rlwimi r0, r4, 0, 0x1f, 0x1f +/* 80223FF4 00220F54 98 1D 0A 48 */ stb r0, 0xa48(r29) +/* 80223FF8 00220F58 88 1D 0A 49 */ lbz r0, 0xa49(r29) +/* 80223FFC 00220F5C 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 80224000 00220F60 98 1D 0A 49 */ stb r0, 0xa49(r29) +/* 80224004 00220F64 88 1D 0A 49 */ lbz r0, 0xa49(r29) +/* 80224008 00220F68 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 8022400C 00220F6C 98 1D 0A 49 */ stb r0, 0xa49(r29) +/* 80224010 00220F70 88 1D 0A 49 */ lbz r0, 0xa49(r29) +/* 80224014 00220F74 50 A0 2E B4 */ rlwimi r0, r5, 5, 0x1a, 0x1a +/* 80224018 00220F78 98 1D 0A 49 */ stb r0, 0xa49(r29) +/* 8022401C 00220F7C 88 1D 0A 49 */ lbz r0, 0xa49(r29) +/* 80224020 00220F80 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 80224024 00220F84 98 1D 0A 49 */ stb r0, 0xa49(r29) +/* 80224028 00220F88 88 1D 0A 49 */ lbz r0, 0xa49(r29) +/* 8022402C 00220F8C 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 80224030 00220F90 98 1D 0A 49 */ stb r0, 0xa49(r29) +/* 80224034 00220F94 88 1D 0A 49 */ lbz r0, 0xa49(r29) +/* 80224038 00220F98 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d +/* 8022403C 00220F9C 98 1D 0A 49 */ stb r0, 0xa49(r29) +/* 80224040 00220FA0 48 11 CD 45 */ bl Lock__6CTokenFv +/* 80224044 00220FA4 7F A3 EB 78 */ mr r3, r29 +/* 80224048 00220FA8 4B FF B7 A1 */ bl sub_8021f7e8 +/* 8022404C 00220FAC 88 1D 04 E1 */ lbz r0, 0x4e1(r29) +/* 80224050 00220FB0 38 A0 00 00 */ li r5, 0 +/* 80224054 00220FB4 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 80224058 00220FB8 38 80 00 01 */ li r4, 1 +/* 8022405C 00220FBC 98 1D 04 E1 */ stb r0, 0x4e1(r29) +/* 80224060 00220FC0 38 61 00 2C */ addi r3, r1, 0x2c +/* 80224064 00220FC4 88 1D 04 E2 */ lbz r0, 0x4e2(r29) +/* 80224068 00220FC8 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 8022406C 00220FCC 98 1D 04 E2 */ stb r0, 0x4e2(r29) +/* 80224070 00220FD0 88 1D 04 E2 */ lbz r0, 0x4e2(r29) +/* 80224074 00220FD4 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 80224078 00220FD8 98 1D 04 E2 */ stb r0, 0x4e2(r29) +/* 8022407C 00220FDC 88 1D 04 E1 */ lbz r0, 0x4e1(r29) +/* 80224080 00220FE0 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d +/* 80224084 00220FE4 98 1D 04 E1 */ stb r0, 0x4e1(r29) +/* 80224088 00220FE8 48 0B EF F5 */ bl NoParameter__12CPASAnimParmFv +/* 8022408C 00220FEC 38 61 00 34 */ addi r3, r1, 0x34 +/* 80224090 00220FF0 48 0B EF ED */ bl NoParameter__12CPASAnimParmFv +/* 80224094 00220FF4 38 61 00 3C */ addi r3, r1, 0x3c +/* 80224098 00220FF8 48 0B EF E5 */ bl NoParameter__12CPASAnimParmFv +/* 8022409C 00220FFC 38 61 00 44 */ addi r3, r1, 0x44 +/* 802240A0 00221000 48 0B EF DD */ bl NoParameter__12CPASAnimParmFv +/* 802240A4 00221004 38 61 00 4C */ addi r3, r1, 0x4c +/* 802240A8 00221008 48 0B EF D5 */ bl NoParameter__12CPASAnimParmFv +/* 802240AC 0022100C 38 61 00 54 */ addi r3, r1, 0x54 +/* 802240B0 00221010 48 0B EF CD */ bl NoParameter__12CPASAnimParmFv +/* 802240B4 00221014 38 61 00 5C */ addi r3, r1, 0x5c +/* 802240B8 00221018 38 80 00 00 */ li r4, 0 +/* 802240BC 0022101C 48 0B EE C9 */ bl FromEnum__12CPASAnimParmFi +/* 802240C0 00221020 38 61 00 64 */ addi r3, r1, 0x64 +/* 802240C4 00221024 38 80 00 01 */ li r4, 1 +/* 802240C8 00221028 48 0B EE BD */ bl FromEnum__12CPASAnimParmFi +/* 802240CC 0022102C 38 61 00 34 */ addi r3, r1, 0x34 +/* 802240D0 00221030 38 01 00 2C */ addi r0, r1, 0x2c +/* 802240D4 00221034 90 61 00 08 */ stw r3, 8(r1) +/* 802240D8 00221038 38 61 01 68 */ addi r3, r1, 0x168 +/* 802240DC 0022103C 38 A1 00 64 */ addi r5, r1, 0x64 +/* 802240E0 00221040 38 C1 00 5C */ addi r6, r1, 0x5c +/* 802240E4 00221044 90 01 00 0C */ stw r0, 0xc(r1) +/* 802240E8 00221048 38 E1 00 54 */ addi r7, r1, 0x54 +/* 802240EC 0022104C 39 01 00 4C */ addi r8, r1, 0x4c +/* 802240F0 00221050 39 21 00 44 */ addi r9, r1, 0x44 +/* 802240F4 00221054 39 41 00 3C */ addi r10, r1, 0x3c +/* 802240F8 00221058 38 80 00 03 */ li r4, 3 +/* 802240FC 0022105C 4B E5 91 C9 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 80224100 00221060 80 BD 00 64 */ lwz r5, 0x64(r29) +/* 80224104 00221064 7F A3 EB 78 */ mr r3, r29 +/* 80224108 00221068 38 81 01 68 */ addi r4, r1, 0x168 +/* 8022410C 0022106C C0 45 00 00 */ lfs f2, 0(r5) +/* 80224110 00221070 C0 25 00 04 */ lfs f1, 4(r5) +/* 80224114 00221074 C0 05 00 08 */ lfs f0, 8(r5) +/* 80224118 00221078 D0 41 00 E4 */ stfs f2, 0xe4(r1) +/* 8022411C 0022107C D0 21 00 E8 */ stfs f1, 0xe8(r1) +/* 80224120 00221080 D0 01 00 EC */ stfs f0, 0xec(r1) +/* 80224124 00221084 4B E5 88 DD */ bl func_8007CA00 +/* 80224128 00221088 C0 01 00 E8 */ lfs f0, 0xe8(r1) +/* 8022412C 0022108C EC 01 00 32 */ fmuls f0, f1, f0 +/* 80224130 00221090 D0 1D 08 D4 */ stfs f0, 0x8d4(r29) +/* 80224134 00221094 80 7D 00 64 */ lwz r3, 0x64(r29) +/* 80224138 00221098 83 5D 0A 10 */ lwz r26, 0xa10(r29) +/* 8022413C 0022109C 80 83 00 10 */ lwz r4, 0x10(r3) +/* 80224140 002210A0 38 7A 00 1C */ addi r3, r26, 0x1c +/* 80224144 002210A4 80 84 00 E0 */ lwz r4, 0xe0(r4) +/* 80224148 002210A8 3B 24 00 1C */ addi r25, r4, 0x1c +/* 8022414C 002210AC 7F 24 CB 78 */ mr r4, r25 +/* 80224150 002210B0 48 11 CB 75 */ bl __as__6CTokenFRC6CToken +/* 80224154 002210B4 80 19 00 08 */ lwz r0, 8(r25) +/* 80224158 002210B8 7F A3 EB 78 */ mr r3, r29 +/* 8022415C 002210BC 90 1A 00 24 */ stw r0, 0x24(r26) +/* 80224160 002210C0 4B E5 37 35 */ bl MakeThermalColdAndHot__10CPatternedFv +/* 80224164 002210C4 34 A1 01 6C */ addic. r5, r1, 0x16c +/* 80224168 002210C8 41 82 00 58 */ beq lbl_802241C0 +/* 8022416C 002210CC 80 C5 00 00 */ lwz r6, 0(r5) +/* 80224170 002210D0 38 60 00 00 */ li r3, 0 +/* 80224174 002210D4 2C 06 00 00 */ cmpwi r6, 0 +/* 80224178 002210D8 40 81 00 40 */ ble lbl_802241B8 +/* 8022417C 002210DC 2C 06 00 08 */ cmpwi r6, 8 +/* 80224180 002210E0 38 86 FF F8 */ addi r4, r6, -8 +/* 80224184 002210E4 40 81 00 20 */ ble lbl_802241A4 +/* 80224188 002210E8 38 04 00 07 */ addi r0, r4, 7 +/* 8022418C 002210EC 54 00 E8 FE */ srwi r0, r0, 3 +/* 80224190 002210F0 7C 09 03 A6 */ mtctr r0 +/* 80224194 002210F4 2C 04 00 00 */ cmpwi r4, 0 +/* 80224198 002210F8 40 81 00 0C */ ble lbl_802241A4 +lbl_8022419C: +/* 8022419C 002210FC 38 63 00 08 */ addi r3, r3, 8 +/* 802241A0 00221100 42 00 FF FC */ bdnz lbl_8022419C +lbl_802241A4: +/* 802241A4 00221104 7C 03 30 50 */ subf r0, r3, r6 +/* 802241A8 00221108 7C 09 03 A6 */ mtctr r0 +/* 802241AC 0022110C 7C 03 30 00 */ cmpw r3, r6 +/* 802241B0 00221110 40 80 00 08 */ bge lbl_802241B8 +lbl_802241B4: +/* 802241B4 00221114 42 00 00 00 */ bdnz lbl_802241B4 +lbl_802241B8: +/* 802241B8 00221118 38 00 00 00 */ li r0, 0 +/* 802241BC 0022111C 90 05 00 00 */ stw r0, 0(r5) +lbl_802241C0: +/* 802241C0 00221120 7F A3 EB 78 */ mr r3, r29 +/* 802241C4 00221124 BB 01 01 B0 */ lmw r24, 0x1b0(r1) +/* 802241C8 00221128 80 01 01 D4 */ lwz r0, 0x1d4(r1) +/* 802241CC 0022112C 7C 08 03 A6 */ mtlr r0 +/* 802241D0 00221130 38 21 01 D0 */ addi r1, r1, 0x1d0 +/* 802241D4 00221134 4E 80 00 20 */ blr + +.global __ct__13CBabygothDataFRC13CBabygothData +__ct__13CBabygothDataFRC13CBabygothData: +/* 802241D8 00221138 C0 04 00 00 */ lfs f0, 0(r4) +/* 802241DC 0022113C D0 03 00 00 */ stfs f0, 0(r3) +/* 802241E0 00221140 C0 04 00 04 */ lfs f0, 4(r4) +/* 802241E4 00221144 D0 03 00 04 */ stfs f0, 4(r3) +/* 802241E8 00221148 80 04 00 08 */ lwz r0, 8(r4) +/* 802241EC 0022114C 90 03 00 08 */ stw r0, 8(r3) +/* 802241F0 00221150 80 04 00 0C */ lwz r0, 0xc(r4) +/* 802241F4 00221154 90 03 00 0C */ stw r0, 0xc(r3) +/* 802241F8 00221158 88 04 00 10 */ lbz r0, 0x10(r4) +/* 802241FC 0022115C 98 03 00 10 */ stb r0, 0x10(r3) +/* 80224200 00221160 C0 04 00 14 */ lfs f0, 0x14(r4) +/* 80224204 00221164 D0 03 00 14 */ stfs f0, 0x14(r3) +/* 80224208 00221168 C0 04 00 18 */ lfs f0, 0x18(r4) +/* 8022420C 0022116C D0 03 00 18 */ stfs f0, 0x18(r3) +/* 80224210 00221170 C0 04 00 1C */ lfs f0, 0x1c(r4) +/* 80224214 00221174 D0 03 00 1C */ stfs f0, 0x1c(r3) +/* 80224218 00221178 C0 04 00 20 */ lfs f0, 0x20(r4) +/* 8022421C 0022117C D0 03 00 20 */ stfs f0, 0x20(r3) +/* 80224220 00221180 88 04 00 24 */ lbz r0, 0x24(r4) +/* 80224224 00221184 98 03 00 24 */ stb r0, 0x24(r3) +/* 80224228 00221188 80 04 00 28 */ lwz r0, 0x28(r4) +/* 8022422C 0022118C 90 03 00 28 */ stw r0, 0x28(r3) +/* 80224230 00221190 88 04 00 2C */ lbz r0, 0x2c(r4) +/* 80224234 00221194 98 03 00 2C */ stb r0, 0x2c(r3) +/* 80224238 00221198 C0 04 00 30 */ lfs f0, 0x30(r4) +/* 8022423C 0022119C D0 03 00 30 */ stfs f0, 0x30(r3) +/* 80224240 002211A0 C0 04 00 34 */ lfs f0, 0x34(r4) +/* 80224244 002211A4 D0 03 00 34 */ stfs f0, 0x34(r3) +/* 80224248 002211A8 C0 04 00 38 */ lfs f0, 0x38(r4) +/* 8022424C 002211AC D0 03 00 38 */ stfs f0, 0x38(r3) +/* 80224250 002211B0 C0 04 00 3C */ lfs f0, 0x3c(r4) +/* 80224254 002211B4 D0 03 00 3C */ stfs f0, 0x3c(r3) +/* 80224258 002211B8 88 04 00 40 */ lbz r0, 0x40(r4) +/* 8022425C 002211BC 98 03 00 40 */ stb r0, 0x40(r3) +/* 80224260 002211C0 80 04 00 44 */ lwz r0, 0x44(r4) +/* 80224264 002211C4 90 03 00 44 */ stw r0, 0x44(r3) +/* 80224268 002211C8 80 04 00 48 */ lwz r0, 0x48(r4) +/* 8022426C 002211CC 90 03 00 48 */ stw r0, 0x48(r3) +/* 80224270 002211D0 80 04 00 4C */ lwz r0, 0x4c(r4) +/* 80224274 002211D4 90 03 00 4C */ stw r0, 0x4c(r3) +/* 80224278 002211D8 88 04 00 50 */ lbz r0, 0x50(r4) +/* 8022427C 002211DC 98 03 00 50 */ stb r0, 0x50(r3) +/* 80224280 002211E0 C0 04 00 54 */ lfs f0, 0x54(r4) +/* 80224284 002211E4 D0 03 00 54 */ stfs f0, 0x54(r3) +/* 80224288 002211E8 C0 04 00 58 */ lfs f0, 0x58(r4) +/* 8022428C 002211EC D0 03 00 58 */ stfs f0, 0x58(r3) +/* 80224290 002211F0 C0 04 00 5C */ lfs f0, 0x5c(r4) +/* 80224294 002211F4 D0 03 00 5C */ stfs f0, 0x5c(r3) +/* 80224298 002211F8 C0 04 00 60 */ lfs f0, 0x60(r4) +/* 8022429C 002211FC D0 03 00 60 */ stfs f0, 0x60(r3) +/* 802242A0 00221200 88 04 00 64 */ lbz r0, 0x64(r4) +/* 802242A4 00221204 98 03 00 64 */ stb r0, 0x64(r3) +/* 802242A8 00221208 80 A4 00 68 */ lwz r5, 0x68(r4) +/* 802242AC 0022120C 80 04 00 6C */ lwz r0, 0x6c(r4) +/* 802242B0 00221210 90 A3 00 68 */ stw r5, 0x68(r3) +/* 802242B4 00221214 90 03 00 6C */ stw r0, 0x6c(r3) +/* 802242B8 00221218 80 A4 00 70 */ lwz r5, 0x70(r4) +/* 802242BC 0022121C 80 04 00 74 */ lwz r0, 0x74(r4) +/* 802242C0 00221220 90 A3 00 70 */ stw r5, 0x70(r3) +/* 802242C4 00221224 90 03 00 74 */ stw r0, 0x74(r3) +/* 802242C8 00221228 80 A4 00 78 */ lwz r5, 0x78(r4) +/* 802242CC 0022122C 80 04 00 7C */ lwz r0, 0x7c(r4) +/* 802242D0 00221230 90 A3 00 78 */ stw r5, 0x78(r3) +/* 802242D4 00221234 90 03 00 7C */ stw r0, 0x7c(r3) +/* 802242D8 00221238 80 A4 00 80 */ lwz r5, 0x80(r4) +/* 802242DC 0022123C 80 04 00 84 */ lwz r0, 0x84(r4) +/* 802242E0 00221240 90 A3 00 80 */ stw r5, 0x80(r3) +/* 802242E4 00221244 90 03 00 84 */ stw r0, 0x84(r3) +/* 802242E8 00221248 80 A4 00 88 */ lwz r5, 0x88(r4) +/* 802242EC 0022124C 80 04 00 8C */ lwz r0, 0x8c(r4) +/* 802242F0 00221250 90 A3 00 88 */ stw r5, 0x88(r3) +/* 802242F4 00221254 90 03 00 8C */ stw r0, 0x8c(r3) +/* 802242F8 00221258 80 A4 00 90 */ lwz r5, 0x90(r4) +/* 802242FC 0022125C 80 04 00 94 */ lwz r0, 0x94(r4) +/* 80224300 00221260 90 A3 00 90 */ stw r5, 0x90(r3) +/* 80224304 00221264 90 03 00 94 */ stw r0, 0x94(r3) +/* 80224308 00221268 80 A4 00 98 */ lwz r5, 0x98(r4) +/* 8022430C 0022126C 80 04 00 9C */ lwz r0, 0x9c(r4) +/* 80224310 00221270 90 A3 00 98 */ stw r5, 0x98(r3) +/* 80224314 00221274 90 03 00 9C */ stw r0, 0x9c(r3) +/* 80224318 00221278 80 04 00 A0 */ lwz r0, 0xa0(r4) +/* 8022431C 0022127C 90 03 00 A0 */ stw r0, 0xa0(r3) +/* 80224320 00221280 80 A4 00 A4 */ lwz r5, 0xa4(r4) +/* 80224324 00221284 80 04 00 A8 */ lwz r0, 0xa8(r4) +/* 80224328 00221288 90 A3 00 A4 */ stw r5, 0xa4(r3) +/* 8022432C 0022128C 90 03 00 A8 */ stw r0, 0xa8(r3) +/* 80224330 00221290 80 A4 00 AC */ lwz r5, 0xac(r4) +/* 80224334 00221294 80 04 00 B0 */ lwz r0, 0xb0(r4) +/* 80224338 00221298 90 A3 00 AC */ stw r5, 0xac(r3) +/* 8022433C 0022129C 90 03 00 B0 */ stw r0, 0xb0(r3) +/* 80224340 002212A0 80 A4 00 B4 */ lwz r5, 0xb4(r4) +/* 80224344 002212A4 80 04 00 B8 */ lwz r0, 0xb8(r4) +/* 80224348 002212A8 90 A3 00 B4 */ stw r5, 0xb4(r3) +/* 8022434C 002212AC 90 03 00 B8 */ stw r0, 0xb8(r3) +/* 80224350 002212B0 80 A4 00 BC */ lwz r5, 0xbc(r4) +/* 80224354 002212B4 80 04 00 C0 */ lwz r0, 0xc0(r4) +/* 80224358 002212B8 90 A3 00 BC */ stw r5, 0xbc(r3) +/* 8022435C 002212BC 90 03 00 C0 */ stw r0, 0xc0(r3) +/* 80224360 002212C0 80 04 00 C4 */ lwz r0, 0xc4(r4) +/* 80224364 002212C4 90 03 00 C4 */ stw r0, 0xc4(r3) +/* 80224368 002212C8 80 04 00 C8 */ lwz r0, 0xc8(r4) +/* 8022436C 002212CC 90 03 00 C8 */ stw r0, 0xc8(r3) +/* 80224370 002212D0 80 04 00 CC */ lwz r0, 0xcc(r4) +/* 80224374 002212D4 90 03 00 CC */ stw r0, 0xcc(r3) +/* 80224378 002212D8 80 A4 00 D0 */ lwz r5, 0xd0(r4) +/* 8022437C 002212DC 80 04 00 D4 */ lwz r0, 0xd4(r4) +/* 80224380 002212E0 90 A3 00 D0 */ stw r5, 0xd0(r3) +/* 80224384 002212E4 90 03 00 D4 */ stw r0, 0xd4(r3) +/* 80224388 002212E8 80 A4 00 D8 */ lwz r5, 0xd8(r4) +/* 8022438C 002212EC 80 04 00 DC */ lwz r0, 0xdc(r4) +/* 80224390 002212F0 90 A3 00 D8 */ stw r5, 0xd8(r3) +/* 80224394 002212F4 90 03 00 DC */ stw r0, 0xdc(r3) +/* 80224398 002212F8 80 A4 00 E0 */ lwz r5, 0xe0(r4) +/* 8022439C 002212FC 80 04 00 E4 */ lwz r0, 0xe4(r4) +/* 802243A0 00221300 90 A3 00 E0 */ stw r5, 0xe0(r3) +/* 802243A4 00221304 90 03 00 E4 */ stw r0, 0xe4(r3) +/* 802243A8 00221308 80 A4 00 E8 */ lwz r5, 0xe8(r4) +/* 802243AC 0022130C 80 04 00 EC */ lwz r0, 0xec(r4) +/* 802243B0 00221310 90 A3 00 E8 */ stw r5, 0xe8(r3) +/* 802243B4 00221314 90 03 00 EC */ stw r0, 0xec(r3) +/* 802243B8 00221318 80 A4 00 F0 */ lwz r5, 0xf0(r4) +/* 802243BC 0022131C 80 04 00 F4 */ lwz r0, 0xf4(r4) +/* 802243C0 00221320 90 A3 00 F0 */ stw r5, 0xf0(r3) +/* 802243C4 00221324 90 03 00 F4 */ stw r0, 0xf4(r3) +/* 802243C8 00221328 80 A4 00 F8 */ lwz r5, 0xf8(r4) +/* 802243CC 0022132C 80 04 00 FC */ lwz r0, 0xfc(r4) +/* 802243D0 00221330 90 A3 00 F8 */ stw r5, 0xf8(r3) +/* 802243D4 00221334 90 03 00 FC */ stw r0, 0xfc(r3) +/* 802243D8 00221338 80 A4 01 00 */ lwz r5, 0x100(r4) +/* 802243DC 0022133C 80 04 01 04 */ lwz r0, 0x104(r4) +/* 802243E0 00221340 90 A3 01 00 */ stw r5, 0x100(r3) +/* 802243E4 00221344 90 03 01 04 */ stw r0, 0x104(r3) +/* 802243E8 00221348 80 04 01 08 */ lwz r0, 0x108(r4) +/* 802243EC 0022134C 90 03 01 08 */ stw r0, 0x108(r3) +/* 802243F0 00221350 80 A4 01 0C */ lwz r5, 0x10c(r4) +/* 802243F4 00221354 80 04 01 10 */ lwz r0, 0x110(r4) +/* 802243F8 00221358 90 A3 01 0C */ stw r5, 0x10c(r3) +/* 802243FC 0022135C 90 03 01 10 */ stw r0, 0x110(r3) +/* 80224400 00221360 80 A4 01 14 */ lwz r5, 0x114(r4) +/* 80224404 00221364 80 04 01 18 */ lwz r0, 0x118(r4) +/* 80224408 00221368 90 A3 01 14 */ stw r5, 0x114(r3) +/* 8022440C 0022136C 90 03 01 18 */ stw r0, 0x118(r3) +/* 80224410 00221370 80 A4 01 1C */ lwz r5, 0x11c(r4) +/* 80224414 00221374 80 04 01 20 */ lwz r0, 0x120(r4) +/* 80224418 00221378 90 A3 01 1C */ stw r5, 0x11c(r3) +/* 8022441C 0022137C 90 03 01 20 */ stw r0, 0x120(r3) +/* 80224420 00221380 80 A4 01 24 */ lwz r5, 0x124(r4) +/* 80224424 00221384 80 04 01 28 */ lwz r0, 0x128(r4) +/* 80224428 00221388 90 A3 01 24 */ stw r5, 0x124(r3) +/* 8022442C 0022138C 90 03 01 28 */ stw r0, 0x128(r3) +/* 80224430 00221390 80 04 01 2C */ lwz r0, 0x12c(r4) +/* 80224434 00221394 90 03 01 2C */ stw r0, 0x12c(r3) +/* 80224438 00221398 80 04 01 30 */ lwz r0, 0x130(r4) +/* 8022443C 0022139C 90 03 01 30 */ stw r0, 0x130(r3) +/* 80224440 002213A0 80 04 01 34 */ lwz r0, 0x134(r4) +/* 80224444 002213A4 90 03 01 34 */ stw r0, 0x134(r3) +/* 80224448 002213A8 80 04 01 38 */ lwz r0, 0x138(r4) +/* 8022444C 002213AC 90 03 01 38 */ stw r0, 0x138(r3) +/* 80224450 002213B0 80 04 01 3C */ lwz r0, 0x13c(r4) +/* 80224454 002213B4 90 03 01 3C */ stw r0, 0x13c(r3) +/* 80224458 002213B8 C0 04 01 40 */ lfs f0, 0x140(r4) +/* 8022445C 002213BC D0 03 01 40 */ stfs f0, 0x140(r3) +/* 80224460 002213C0 A0 04 01 44 */ lhz r0, 0x144(r4) +/* 80224464 002213C4 B0 03 01 44 */ sth r0, 0x144(r3) +/* 80224468 002213C8 80 04 01 48 */ lwz r0, 0x148(r4) +/* 8022446C 002213CC 90 03 01 48 */ stw r0, 0x148(r3) +/* 80224470 002213D0 80 04 01 4C */ lwz r0, 0x14c(r4) +/* 80224474 002213D4 90 03 01 4C */ stw r0, 0x14c(r3) +/* 80224478 002213D8 80 04 01 50 */ lwz r0, 0x150(r4) +/* 8022447C 002213DC 90 03 01 50 */ stw r0, 0x150(r3) +/* 80224480 002213E0 80 04 01 54 */ lwz r0, 0x154(r4) +/* 80224484 002213E4 90 03 01 54 */ stw r0, 0x154(r3) +/* 80224488 002213E8 A0 04 01 58 */ lhz r0, 0x158(r4) +/* 8022448C 002213EC B0 03 01 58 */ sth r0, 0x158(r3) +/* 80224490 002213F0 A0 04 01 5A */ lhz r0, 0x15a(r4) +/* 80224494 002213F4 B0 03 01 5A */ sth r0, 0x15a(r3) +/* 80224498 002213F8 A0 04 01 5C */ lhz r0, 0x15c(r4) +/* 8022449C 002213FC B0 03 01 5C */ sth r0, 0x15c(r3) +/* 802244A0 00221400 C0 04 01 60 */ lfs f0, 0x160(r4) +/* 802244A4 00221404 D0 03 01 60 */ stfs f0, 0x160(r3) +/* 802244A8 00221408 C0 04 01 64 */ lfs f0, 0x164(r4) +/* 802244AC 0022140C D0 03 01 64 */ stfs f0, 0x164(r3) +/* 802244B0 00221410 C0 04 01 68 */ lfs f0, 0x168(r4) +/* 802244B4 00221414 D0 03 01 68 */ stfs f0, 0x168(r3) +/* 802244B8 00221418 80 04 01 6C */ lwz r0, 0x16c(r4) +/* 802244BC 0022141C 90 03 01 6C */ stw r0, 0x16c(r3) +/* 802244C0 00221420 A0 04 01 70 */ lhz r0, 0x170(r4) +/* 802244C4 00221424 B0 03 01 70 */ sth r0, 0x170(r3) +/* 802244C8 00221428 80 04 01 74 */ lwz r0, 0x174(r4) +/* 802244CC 0022142C 90 03 01 74 */ stw r0, 0x174(r3) +/* 802244D0 00221430 4E 80 00 20 */ blr + +.global __ct__13CBabygothDataFR12CInputStream +__ct__13CBabygothDataFR12CInputStream: +/* 802244D4 00221434 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 802244D8 00221438 7C 08 02 A6 */ mflr r0 +/* 802244DC 0022143C 90 01 00 14 */ stw r0, 0x14(r1) +/* 802244E0 00221440 93 E1 00 0C */ stw r31, 0xc(r1) +/* 802244E4 00221444 7C 9F 23 78 */ mr r31, r4 +/* 802244E8 00221448 93 C1 00 08 */ stw r30, 8(r1) +/* 802244EC 0022144C 7C 7E 1B 78 */ mr r30, r3 +/* 802244F0 00221450 7F E3 FB 78 */ mr r3, r31 +/* 802244F4 00221454 48 11 A7 35 */ bl ReadFloat__12CInputStreamFv +/* 802244F8 00221458 D0 3E 00 00 */ stfs f1, 0(r30) +/* 802244FC 0022145C 7F E3 FB 78 */ mr r3, r31 +/* 80224500 00221460 48 11 A7 29 */ bl ReadFloat__12CInputStreamFv +/* 80224504 00221464 D0 3E 00 04 */ stfs f1, 4(r30) +/* 80224508 00221468 7F E3 FB 78 */ mr r3, r31 +/* 8022450C 0022146C 48 11 A7 79 */ bl ReadLong__12CInputStreamFv +/* 80224510 00221470 90 7E 00 08 */ stw r3, 8(r30) +/* 80224514 00221474 7F E4 FB 78 */ mr r4, r31 +/* 80224518 00221478 38 7E 00 0C */ addi r3, r30, 0xc +/* 8022451C 0022147C 4B E9 F0 45 */ bl __ct__11CDamageInfoFR12CInputStream +/* 80224520 00221480 7F E4 FB 78 */ mr r4, r31 +/* 80224524 00221484 38 7E 00 28 */ addi r3, r30, 0x28 +/* 80224528 00221488 4B E9 F0 39 */ bl __ct__11CDamageInfoFR12CInputStream +/* 8022452C 0022148C 7F E3 FB 78 */ mr r3, r31 +/* 80224530 00221490 48 11 A7 55 */ bl ReadLong__12CInputStreamFv +/* 80224534 00221494 90 7E 00 44 */ stw r3, 0x44(r30) +/* 80224538 00221498 7F E3 FB 78 */ mr r3, r31 +/* 8022453C 0022149C 48 11 A7 49 */ bl ReadLong__12CInputStreamFv +/* 80224540 002214A0 90 7E 00 48 */ stw r3, 0x48(r30) +/* 80224544 002214A4 7F E4 FB 78 */ mr r4, r31 +/* 80224548 002214A8 38 7E 00 4C */ addi r3, r30, 0x4c +/* 8022454C 002214AC 4B E9 F0 15 */ bl __ct__11CDamageInfoFR12CInputStream +/* 80224550 002214B0 7F E4 FB 78 */ mr r4, r31 +/* 80224554 002214B4 38 7E 00 68 */ addi r3, r30, 0x68 +/* 80224558 002214B8 4B ED E6 01 */ bl __ct__20CDamageVulnerabilityFR12CInputStream +/* 8022455C 002214BC 7F E4 FB 78 */ mr r4, r31 +/* 80224560 002214C0 38 7E 00 D0 */ addi r3, r30, 0xd0 +/* 80224564 002214C4 4B ED E5 F5 */ bl __ct__20CDamageVulnerabilityFR12CInputStream +/* 80224568 002214C8 7F E3 FB 78 */ mr r3, r31 +/* 8022456C 002214CC 48 11 A7 19 */ bl ReadLong__12CInputStreamFv +/* 80224570 002214D0 90 7E 01 38 */ stw r3, 0x138(r30) +/* 80224574 002214D4 7F E3 FB 78 */ mr r3, r31 +/* 80224578 002214D8 48 11 A7 0D */ bl ReadLong__12CInputStreamFv +/* 8022457C 002214DC 90 7E 01 3C */ stw r3, 0x13c(r30) +/* 80224580 002214E0 7F E3 FB 78 */ mr r3, r31 +/* 80224584 002214E4 48 11 A6 A5 */ bl ReadFloat__12CInputStreamFv +/* 80224588 002214E8 D0 3E 01 40 */ stfs f1, 0x140(r30) +/* 8022458C 002214EC 7F E3 FB 78 */ mr r3, r31 +/* 80224590 002214F0 48 11 A6 F5 */ bl ReadLong__12CInputStreamFv +/* 80224594 002214F4 54 63 04 3E */ clrlwi r3, r3, 0x10 +/* 80224598 002214F8 48 0C 44 19 */ bl TranslateSFXID__11CSfxManagerFUs +/* 8022459C 002214FC B0 7E 01 44 */ sth r3, 0x144(r30) +/* 802245A0 00221500 7F E3 FB 78 */ mr r3, r31 +/* 802245A4 00221504 48 11 A6 E1 */ bl ReadLong__12CInputStreamFv +/* 802245A8 00221508 90 7E 01 48 */ stw r3, 0x148(r30) +/* 802245AC 0022150C 7F E3 FB 78 */ mr r3, r31 +/* 802245B0 00221510 48 11 A6 D5 */ bl ReadLong__12CInputStreamFv +/* 802245B4 00221514 90 7E 01 4C */ stw r3, 0x14c(r30) +/* 802245B8 00221518 7F E3 FB 78 */ mr r3, r31 +/* 802245BC 0022151C 48 11 A6 C9 */ bl ReadLong__12CInputStreamFv +/* 802245C0 00221520 90 7E 01 50 */ stw r3, 0x150(r30) +/* 802245C4 00221524 7F E3 FB 78 */ mr r3, r31 +/* 802245C8 00221528 48 11 A6 BD */ bl ReadLong__12CInputStreamFv +/* 802245CC 0022152C 90 7E 01 54 */ stw r3, 0x154(r30) +/* 802245D0 00221530 7F E3 FB 78 */ mr r3, r31 +/* 802245D4 00221534 48 11 A6 B1 */ bl ReadLong__12CInputStreamFv +/* 802245D8 00221538 54 63 04 3E */ clrlwi r3, r3, 0x10 +/* 802245DC 0022153C 48 0C 43 D5 */ bl TranslateSFXID__11CSfxManagerFUs +/* 802245E0 00221540 B0 7E 01 58 */ sth r3, 0x158(r30) +/* 802245E4 00221544 7F E3 FB 78 */ mr r3, r31 +/* 802245E8 00221548 48 11 A6 9D */ bl ReadLong__12CInputStreamFv +/* 802245EC 0022154C 54 63 04 3E */ clrlwi r3, r3, 0x10 +/* 802245F0 00221550 48 0C 43 C1 */ bl TranslateSFXID__11CSfxManagerFUs +/* 802245F4 00221554 B0 7E 01 5A */ sth r3, 0x15a(r30) +/* 802245F8 00221558 7F E3 FB 78 */ mr r3, r31 +/* 802245FC 0022155C 48 11 A6 89 */ bl ReadLong__12CInputStreamFv +/* 80224600 00221560 54 63 04 3E */ clrlwi r3, r3, 0x10 +/* 80224604 00221564 48 0C 43 AD */ bl TranslateSFXID__11CSfxManagerFUs +/* 80224608 00221568 B0 7E 01 5C */ sth r3, 0x15c(r30) +/* 8022460C 0022156C 7F E3 FB 78 */ mr r3, r31 +/* 80224610 00221570 48 11 A6 19 */ bl ReadFloat__12CInputStreamFv +/* 80224614 00221574 D0 3E 01 60 */ stfs f1, 0x160(r30) +/* 80224618 00221578 7F E3 FB 78 */ mr r3, r31 +/* 8022461C 0022157C 48 11 A6 0D */ bl ReadFloat__12CInputStreamFv +/* 80224620 00221580 D0 3E 01 64 */ stfs f1, 0x164(r30) +/* 80224624 00221584 7F E3 FB 78 */ mr r3, r31 +/* 80224628 00221588 48 11 A6 01 */ bl ReadFloat__12CInputStreamFv +/* 8022462C 0022158C D0 3E 01 68 */ stfs f1, 0x168(r30) +/* 80224630 00221590 7F E3 FB 78 */ mr r3, r31 +/* 80224634 00221594 48 11 A6 51 */ bl ReadLong__12CInputStreamFv +/* 80224638 00221598 90 7E 01 6C */ stw r3, 0x16c(r30) +/* 8022463C 0022159C 7F E3 FB 78 */ mr r3, r31 +/* 80224640 002215A0 48 11 A6 45 */ bl ReadLong__12CInputStreamFv +/* 80224644 002215A4 54 63 04 3E */ clrlwi r3, r3, 0x10 +/* 80224648 002215A8 48 0C 43 69 */ bl TranslateSFXID__11CSfxManagerFUs +/* 8022464C 002215AC B0 7E 01 70 */ sth r3, 0x170(r30) +/* 80224650 002215B0 7F E3 FB 78 */ mr r3, r31 +/* 80224654 002215B4 48 11 A6 31 */ bl ReadLong__12CInputStreamFv +/* 80224658 002215B8 90 7E 01 74 */ stw r3, 0x174(r30) +/* 8022465C 002215BC 7F C3 F3 78 */ mr r3, r30 +/* 80224660 002215C0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80224664 002215C4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80224668 002215C8 83 C1 00 08 */ lwz r30, 8(r1) +/* 8022466C 002215CC 7C 08 03 A6 */ mtlr r0 +/* 80224670 002215D0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80224674 002215D4 4E 80 00 20 */ blr + +.global __sinit_CBabygoth_cpp +__sinit_CBabygoth_cpp: +/* 80224678 002215D8 C0 02 B4 68 */ lfs f0, lbl_805AD188@sda21(r2) +/* 8022467C 002215DC 3C 60 80 57 */ lis r3, lbl_80572128@ha +/* 80224680 002215E0 D4 03 21 28 */ stfsu f0, lbl_80572128@l(r3) +/* 80224684 002215E4 D0 03 00 04 */ stfs f0, 4(r3) +/* 80224688 002215E8 D0 03 00 08 */ stfs f0, 8(r3) +/* 8022468C 002215EC 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Enemies/CBouncyGrenade.s b/asm/Kyoto_CWD/Enemies/CBouncyGrenade.s new file mode 100644 index 00000000..4388042b --- /dev/null +++ b/asm/Kyoto_CWD/Enemies/CBouncyGrenade.s @@ -0,0 +1,1319 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__14CBouncyGrenadeFv +__dt__14CBouncyGrenadeFv: +/* 8022E320 0022B280 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8022E324 0022B284 7C 08 02 A6 */ mflr r0 +/* 8022E328 0022B288 90 01 00 14 */ stw r0, 0x14(r1) +/* 8022E32C 0022B28C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8022E330 0022B290 7C 9F 23 78 */ mr r31, r4 +/* 8022E334 0022B294 93 C1 00 08 */ stw r30, 8(r1) +/* 8022E338 0022B298 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8022E33C 0022B29C 41 82 00 CC */ beq lbl_8022E408 +/* 8022E340 0022B2A0 3C 60 80 3E */ lis r3, lbl_803E7ED0@ha +/* 8022E344 0022B2A4 34 1E 02 AC */ addic. r0, r30, 0x2ac +/* 8022E348 0022B2A8 38 03 7E D0 */ addi r0, r3, lbl_803E7ED0@l +/* 8022E34C 0022B2AC 90 1E 00 00 */ stw r0, 0(r30) +/* 8022E350 0022B2B0 41 82 00 24 */ beq lbl_8022E374 +/* 8022E354 0022B2B4 80 7E 02 AC */ lwz r3, 0x2ac(r30) +/* 8022E358 0022B2B8 28 03 00 00 */ cmplwi r3, 0 +/* 8022E35C 0022B2BC 41 82 00 18 */ beq lbl_8022E374 +/* 8022E360 0022B2C0 81 83 00 00 */ lwz r12, 0(r3) +/* 8022E364 0022B2C4 38 80 00 01 */ li r4, 1 +/* 8022E368 0022B2C8 81 8C 00 08 */ lwz r12, 8(r12) +/* 8022E36C 0022B2CC 7D 89 03 A6 */ mtctr r12 +/* 8022E370 0022B2D0 4E 80 04 21 */ bctrl +lbl_8022E374: +/* 8022E374 0022B2D4 34 1E 02 A8 */ addic. r0, r30, 0x2a8 +/* 8022E378 0022B2D8 41 82 00 24 */ beq lbl_8022E39C +/* 8022E37C 0022B2DC 80 7E 02 A8 */ lwz r3, 0x2a8(r30) +/* 8022E380 0022B2E0 28 03 00 00 */ cmplwi r3, 0 +/* 8022E384 0022B2E4 41 82 00 18 */ beq lbl_8022E39C +/* 8022E388 0022B2E8 81 83 00 00 */ lwz r12, 0(r3) +/* 8022E38C 0022B2EC 38 80 00 01 */ li r4, 1 +/* 8022E390 0022B2F0 81 8C 00 08 */ lwz r12, 8(r12) +/* 8022E394 0022B2F4 7D 89 03 A6 */ mtctr r12 +/* 8022E398 0022B2F8 4E 80 04 21 */ bctrl +lbl_8022E39C: +/* 8022E39C 0022B2FC 34 1E 02 A4 */ addic. r0, r30, 0x2a4 +/* 8022E3A0 0022B300 41 82 00 24 */ beq lbl_8022E3C4 +/* 8022E3A4 0022B304 80 7E 02 A4 */ lwz r3, 0x2a4(r30) +/* 8022E3A8 0022B308 28 03 00 00 */ cmplwi r3, 0 +/* 8022E3AC 0022B30C 41 82 00 18 */ beq lbl_8022E3C4 +/* 8022E3B0 0022B310 81 83 00 00 */ lwz r12, 0(r3) +/* 8022E3B4 0022B314 38 80 00 01 */ li r4, 1 +/* 8022E3B8 0022B318 81 8C 00 08 */ lwz r12, 8(r12) +/* 8022E3BC 0022B31C 7D 89 03 A6 */ mtctr r12 +/* 8022E3C0 0022B320 4E 80 04 21 */ bctrl +lbl_8022E3C4: +/* 8022E3C4 0022B324 34 1E 02 A0 */ addic. r0, r30, 0x2a0 +/* 8022E3C8 0022B328 41 82 00 24 */ beq lbl_8022E3EC +/* 8022E3CC 0022B32C 80 7E 02 A0 */ lwz r3, 0x2a0(r30) +/* 8022E3D0 0022B330 28 03 00 00 */ cmplwi r3, 0 +/* 8022E3D4 0022B334 41 82 00 18 */ beq lbl_8022E3EC +/* 8022E3D8 0022B338 81 83 00 00 */ lwz r12, 0(r3) +/* 8022E3DC 0022B33C 38 80 00 01 */ li r4, 1 +/* 8022E3E0 0022B340 81 8C 00 08 */ lwz r12, 8(r12) +/* 8022E3E4 0022B344 7D 89 03 A6 */ mtctr r12 +/* 8022E3E8 0022B348 4E 80 04 21 */ bctrl +lbl_8022E3EC: +/* 8022E3EC 0022B34C 7F C3 F3 78 */ mr r3, r30 +/* 8022E3F0 0022B350 38 80 00 00 */ li r4, 0 +/* 8022E3F4 0022B354 4B EE E0 21 */ bl __dt__13CPhysicsActorFv +/* 8022E3F8 0022B358 7F E0 07 35 */ extsh. r0, r31 +/* 8022E3FC 0022B35C 40 81 00 0C */ ble lbl_8022E408 +/* 8022E400 0022B360 7F C3 F3 78 */ mr r3, r30 +/* 8022E404 0022B364 48 0E 75 2D */ bl Free__7CMemoryFPCv +lbl_8022E408: +/* 8022E408 0022B368 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8022E40C 0022B36C 7F C3 F3 78 */ mr r3, r30 +/* 8022E410 0022B370 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8022E414 0022B374 83 C1 00 08 */ lwz r30, 8(r1) +/* 8022E418 0022B378 7C 08 03 A6 */ mtlr r0 +/* 8022E41C 0022B37C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8022E420 0022B380 4E 80 00 20 */ blr + +.global sub_8022e424 +sub_8022e424: +/* 8022E424 0022B384 94 21 F6 C0 */ stwu r1, -0x940(r1) +/* 8022E428 0022B388 7C 08 02 A6 */ mflr r0 +/* 8022E42C 0022B38C 90 01 09 44 */ stw r0, 0x944(r1) +/* 8022E430 0022B390 BF 41 09 28 */ stmw r26, 0x928(r1) +/* 8022E434 0022B394 7C 9F 23 78 */ mr r31, r4 +/* 8022E438 0022B398 7C 7E 1B 78 */ mr r30, r3 +/* 8022E43C 0022B39C 7C BB 2B 78 */ mr r27, r5 +/* 8022E440 0022B3A0 88 83 02 B4 */ lbz r4, 0x2b4(r3) +/* 8022E444 0022B3A4 54 80 CF FF */ rlwinm. r0, r4, 0x19, 0x1f, 0x1f +/* 8022E448 0022B3A8 40 82 04 3C */ bne lbl_8022E884 +/* 8022E44C 0022B3AC 38 00 00 01 */ li r0, 1 +/* 8022E450 0022B3B0 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 8022E454 0022B3B4 50 04 3E 30 */ rlwimi r4, r0, 7, 0x18, 0x18 +/* 8022E458 0022B3B8 A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) +/* 8022E45C 0022B3BC 98 9E 02 B4 */ stb r4, 0x2b4(r30) +/* 8022E460 0022B3C0 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 8022E464 0022B3C4 38 61 00 3C */ addi r3, r1, 0x3c +/* 8022E468 0022B3C8 38 A1 00 68 */ addi r5, r1, 0x68 +/* 8022E46C 0022B3CC 81 5E 00 04 */ lwz r10, 4(r30) +/* 8022E470 0022B3D0 38 E0 00 00 */ li r7, 0 +/* 8022E474 0022B3D4 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 8022E478 0022B3D8 39 00 00 00 */ li r8, 0 +/* 8022E47C 0022B3DC C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 8022E480 0022B3E0 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 8022E484 0022B3E4 D0 01 00 68 */ stfs f0, 0x68(r1) +/* 8022E488 0022B3E8 D0 21 00 6C */ stfs f1, 0x6c(r1) +/* 8022E48C 0022B3EC D0 41 00 70 */ stfs f2, 0x70(r1) +/* 8022E490 0022B3F0 A0 9E 02 92 */ lhz r4, 0x292(r30) +/* 8022E494 0022B3F4 48 0B BE 1D */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +/* 8022E498 0022B3F8 80 7E 02 A0 */ lwz r3, 0x2a0(r30) +/* 8022E49C 0022B3FC 38 80 00 01 */ li r4, 1 +/* 8022E4A0 0022B400 81 83 00 00 */ lwz r12, 0(r3) +/* 8022E4A4 0022B404 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8022E4A8 0022B408 7D 89 03 A6 */ mtctr r12 +/* 8022E4AC 0022B40C 4E 80 04 21 */ bctrl +/* 8022E4B0 0022B410 80 7E 02 A4 */ lwz r3, 0x2a4(r30) +/* 8022E4B4 0022B414 38 80 00 01 */ li r4, 1 +/* 8022E4B8 0022B418 81 83 00 00 */ lwz r12, 0(r3) +/* 8022E4BC 0022B41C 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8022E4C0 0022B420 7D 89 03 A6 */ mtctr r12 +/* 8022E4C4 0022B424 4E 80 04 21 */ bctrl +/* 8022E4C8 0022B428 80 7E 02 A8 */ lwz r3, 0x2a8(r30) +/* 8022E4CC 0022B42C 38 80 00 01 */ li r4, 1 +/* 8022E4D0 0022B430 81 83 00 00 */ lwz r12, 0(r3) +/* 8022E4D4 0022B434 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8022E4D8 0022B438 7D 89 03 A6 */ mtctr r12 +/* 8022E4DC 0022B43C 4E 80 04 21 */ bctrl +/* 8022E4E0 0022B440 80 7E 02 AC */ lwz r3, 0x2ac(r30) +/* 8022E4E4 0022B444 38 80 00 00 */ li r4, 0 +/* 8022E4E8 0022B448 81 83 00 00 */ lwz r12, 0(r3) +/* 8022E4EC 0022B44C 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8022E4F0 0022B450 7D 89 03 A6 */ mtctr r12 +/* 8022E4F4 0022B454 4E 80 04 21 */ bctrl +/* 8022E4F8 0022B458 A0 BB 00 00 */ lhz r5, 0(r27) +/* 8022E4FC 0022B45C 7F E3 FB 78 */ mr r3, r31 +/* 8022E500 0022B460 A0 1E 02 98 */ lhz r0, 0x298(r30) +/* 8022E504 0022B464 38 81 00 38 */ addi r4, r1, 0x38 +/* 8022E508 0022B468 7C 05 00 50 */ subf r0, r5, r0 +/* 8022E50C 0022B46C B0 A1 00 38 */ sth r5, 0x38(r1) +/* 8022E510 0022B470 7C 00 00 34 */ cntlzw r0, r0 +/* 8022E514 0022B474 54 1C D9 7E */ srwi r28, r0, 5 +/* 8022E518 0022B478 4B E1 E0 8D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8022E51C 0022B47C 7C 64 1B 78 */ mr r4, r3 +/* 8022E520 0022B480 38 61 00 48 */ addi r3, r1, 0x48 +/* 8022E524 0022B484 4B E8 0E 29 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8022E528 0022B488 80 63 00 04 */ lwz r3, 4(r3) +/* 8022E52C 0022B48C 28 03 00 00 */ cmplwi r3, 0 +/* 8022E530 0022B490 41 82 00 18 */ beq lbl_8022E548 +/* 8022E534 0022B494 A0 63 02 5C */ lhz r3, 0x25c(r3) +/* 8022E538 0022B498 A0 1E 02 98 */ lhz r0, 0x298(r30) +/* 8022E53C 0022B49C 7C 03 00 50 */ subf r0, r3, r0 +/* 8022E540 0022B4A0 7C 00 00 34 */ cntlzw r0, r0 +/* 8022E544 0022B4A4 54 1C D9 7E */ srwi r28, r0, 5 +lbl_8022E548: +/* 8022E548 0022B4A8 A0 7B 00 00 */ lhz r3, 0(r27) +/* 8022E54C 0022B4AC 3B BE 02 60 */ addi r29, r30, 0x260 +/* 8022E550 0022B4B0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8022E554 0022B4B4 7C 03 00 40 */ cmplw r3, r0 +/* 8022E558 0022B4B8 41 82 00 7C */ beq lbl_8022E5D4 +/* 8022E55C 0022B4BC 57 80 06 3F */ clrlwi. r0, r28, 0x18 +/* 8022E560 0022B4C0 40 82 00 74 */ bne lbl_8022E5D4 +/* 8022E564 0022B4C4 80 AD 95 B8 */ lwz r5, lbl_805A8178@sda21(r13) +/* 8022E568 0022B4C8 38 60 00 00 */ li r3, 0 +/* 8022E56C 0022B4CC 38 80 00 01 */ li r4, 1 +/* 8022E570 0022B4D0 48 15 B9 85 */ bl __shl2i +/* 8022E574 0022B4D4 39 00 00 00 */ li r8, 0 +/* 8022E578 0022B4D8 39 40 00 03 */ li r10, 3 +/* 8022E57C 0022B4DC 90 81 00 B4 */ stw r4, 0xb4(r1) +/* 8022E580 0022B4E0 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8022E584 0022B4E4 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 8022E588 0022B4E8 A0 1B 00 00 */ lhz r0, 0(r27) +/* 8022E58C 0022B4EC 90 61 00 B0 */ stw r3, 0xb0(r1) +/* 8022E590 0022B4F0 7F E3 FB 78 */ mr r3, r31 +/* 8022E594 0022B4F4 7F A7 EB 78 */ mr r7, r29 +/* 8022E598 0022B4F8 38 81 00 34 */ addi r4, r1, 0x34 +/* 8022E59C 0022B4FC 91 01 00 BC */ stw r8, 0xbc(r1) +/* 8022E5A0 0022B500 38 A1 00 2C */ addi r5, r1, 0x2c +/* 8022E5A4 0022B504 38 C1 00 28 */ addi r6, r1, 0x28 +/* 8022E5A8 0022B508 91 01 00 B8 */ stw r8, 0xb8(r1) +/* 8022E5AC 0022B50C 39 01 00 B0 */ addi r8, r1, 0xb0 +/* 8022E5B0 0022B510 91 41 00 C0 */ stw r10, 0xc0(r1) +/* 8022E5B4 0022B514 A1 5E 00 08 */ lhz r10, 8(r30) +/* 8022E5B8 0022B518 B1 41 00 28 */ sth r10, 0x28(r1) +/* 8022E5BC 0022B51C B0 01 00 2C */ sth r0, 0x2c(r1) +/* 8022E5C0 0022B520 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8022E5C4 0022B524 B1 41 00 24 */ sth r10, 0x24(r1) +/* 8022E5C8 0022B528 B0 01 00 30 */ sth r0, 0x30(r1) +/* 8022E5CC 0022B52C B0 01 00 34 */ sth r0, 0x34(r1) +/* 8022E5D0 0022B530 4B E1 BA D1 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +lbl_8022E5D4: +/* 8022E5D4 0022B534 C0 FD 00 10 */ lfs f7, 0x10(r29) +/* 8022E5D8 0022B538 C0 02 B6 38 */ lfs f0, lbl_805AD358@sda21(r2) +/* 8022E5DC 0022B53C FC 07 00 40 */ fcmpo cr0, f7, f0 +/* 8022E5E0 0022B540 40 81 02 A4 */ ble lbl_8022E884 +/* 8022E5E4 0022B544 C0 DE 00 60 */ lfs f6, 0x60(r30) +/* 8022E5E8 0022B548 38 61 01 00 */ addi r3, r1, 0x100 +/* 8022E5EC 0022B54C C0 BE 00 50 */ lfs f5, 0x50(r30) +/* 8022E5F0 0022B550 38 81 00 5C */ addi r4, r1, 0x5c +/* 8022E5F4 0022B554 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 8022E5F8 0022B558 EC 06 38 2A */ fadds f0, f6, f7 +/* 8022E5FC 0022B55C EC 65 38 2A */ fadds f3, f5, f7 +/* 8022E600 0022B560 38 A1 00 50 */ addi r5, r1, 0x50 +/* 8022E604 0022B564 EC 81 38 2A */ fadds f4, f1, f7 +/* 8022E608 0022B568 EC 41 38 28 */ fsubs f2, f1, f7 +/* 8022E60C 0022B56C D0 01 00 58 */ stfs f0, 0x58(r1) +/* 8022E610 0022B570 EC 25 38 28 */ fsubs f1, f5, f7 +/* 8022E614 0022B574 EC 06 38 28 */ fsubs f0, f6, f7 +/* 8022E618 0022B578 D0 81 00 50 */ stfs f4, 0x50(r1) +/* 8022E61C 0022B57C D0 61 00 54 */ stfs f3, 0x54(r1) +/* 8022E620 0022B580 D0 41 00 5C */ stfs f2, 0x5c(r1) +/* 8022E624 0022B584 D0 21 00 60 */ stfs f1, 0x60(r1) +/* 8022E628 0022B588 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 8022E62C 0022B58C 48 10 9E DD */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 8022E630 0022B590 80 AD 95 DC */ lwz r5, lbl_805A819C@sda21(r13) +/* 8022E634 0022B594 38 60 00 00 */ li r3, 0 +/* 8022E638 0022B598 38 80 00 01 */ li r4, 1 +/* 8022E63C 0022B59C 48 15 B8 B9 */ bl __shl2i +/* 8022E640 0022B5A0 80 AD 95 E0 */ lwz r5, lbl_805A81A0@sda21(r13) +/* 8022E644 0022B5A4 7C 9C 23 78 */ mr r28, r4 +/* 8022E648 0022B5A8 7C 7B 1B 78 */ mr r27, r3 +/* 8022E64C 0022B5AC 38 60 00 00 */ li r3, 0 +/* 8022E650 0022B5B0 38 80 00 01 */ li r4, 1 +/* 8022E654 0022B5B4 48 15 B8 A1 */ bl __shl2i +/* 8022E658 0022B5B8 38 00 00 00 */ li r0, 0 +/* 8022E65C 0022B5BC 7F 9C 23 78 */ or r28, r28, r4 +/* 8022E660 0022B5C0 7F 7B 1B 78 */ or r27, r27, r3 +/* 8022E664 0022B5C4 39 00 00 01 */ li r8, 1 +/* 8022E668 0022B5C8 91 01 00 A8 */ stw r8, 0xa8(r1) +/* 8022E66C 0022B5CC 7F E3 FB 78 */ mr r3, r31 +/* 8022E670 0022B5D0 38 81 01 18 */ addi r4, r1, 0x118 +/* 8022E674 0022B5D4 38 A1 01 00 */ addi r5, r1, 0x100 +/* 8022E678 0022B5D8 93 81 00 EC */ stw r28, 0xec(r1) +/* 8022E67C 0022B5DC 38 C1 00 E8 */ addi r6, r1, 0xe8 +/* 8022E680 0022B5E0 38 E0 00 00 */ li r7, 0 +/* 8022E684 0022B5E4 93 61 00 E8 */ stw r27, 0xe8(r1) +/* 8022E688 0022B5E8 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 8022E68C 0022B5EC 90 01 00 F0 */ stw r0, 0xf0(r1) +/* 8022E690 0022B5F0 91 01 00 F8 */ stw r8, 0xf8(r1) +/* 8022E694 0022B5F4 90 01 01 18 */ stw r0, 0x118(r1) +/* 8022E698 0022B5F8 4B E1 E0 89 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" +/* 8022E69C 0022B5FC 3B 81 01 1C */ addi r28, r1, 0x11c +/* 8022E6A0 0022B600 7F 9B E3 78 */ mr r27, r28 +/* 8022E6A4 0022B604 48 00 01 7C */ b lbl_8022E820 +lbl_8022E6A8: +/* 8022E6A8 0022B608 A0 DB 00 00 */ lhz r6, 0(r27) +/* 8022E6AC 0022B60C 7F E3 FB 78 */ mr r3, r31 +/* 8022E6B0 0022B610 A0 BE 02 98 */ lhz r5, 0x298(r30) +/* 8022E6B4 0022B614 38 81 00 20 */ addi r4, r1, 0x20 +/* 8022E6B8 0022B618 A0 1B 00 00 */ lhz r0, 0(r27) +/* 8022E6BC 0022B61C 7C A6 28 50 */ subf r5, r6, r5 +/* 8022E6C0 0022B620 7C A5 00 34 */ cntlzw r5, r5 +/* 8022E6C4 0022B624 B0 01 00 20 */ sth r0, 0x20(r1) +/* 8022E6C8 0022B628 54 BA D9 7E */ srwi r26, r5, 5 +/* 8022E6CC 0022B62C 4B E1 DE D9 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8022E6D0 0022B630 7C 64 1B 78 */ mr r4, r3 +/* 8022E6D4 0022B634 38 61 00 40 */ addi r3, r1, 0x40 +/* 8022E6D8 0022B638 4B E8 0C 75 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8022E6DC 0022B63C 80 63 00 04 */ lwz r3, 4(r3) +/* 8022E6E0 0022B640 28 03 00 00 */ cmplwi r3, 0 +/* 8022E6E4 0022B644 41 82 00 18 */ beq lbl_8022E6FC +/* 8022E6E8 0022B648 A0 63 02 5C */ lhz r3, 0x25c(r3) +/* 8022E6EC 0022B64C A0 1E 02 98 */ lhz r0, 0x298(r30) +/* 8022E6F0 0022B650 7C 03 00 50 */ subf r0, r3, r0 +/* 8022E6F4 0022B654 7C 00 00 34 */ cntlzw r0, r0 +/* 8022E6F8 0022B658 54 1A D9 7E */ srwi r26, r0, 5 +lbl_8022E6FC: +/* 8022E6FC 0022B65C 57 40 06 3F */ clrlwi. r0, r26, 0x18 +/* 8022E700 0022B660 40 82 01 1C */ bne lbl_8022E81C +/* 8022E704 0022B664 A0 1B 00 00 */ lhz r0, 0(r27) +/* 8022E708 0022B668 7F E3 FB 78 */ mr r3, r31 +/* 8022E70C 0022B66C 38 81 00 1C */ addi r4, r1, 0x1c +/* 8022E710 0022B670 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 8022E714 0022B674 4B E1 DE 61 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8022E718 0022B678 28 03 00 00 */ cmplwi r3, 0 +/* 8022E71C 0022B67C 41 82 01 00 */ beq lbl_8022E81C +/* 8022E720 0022B680 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 8022E724 0022B684 C0 1E 00 50 */ lfs f0, 0x50(r30) +/* 8022E728 0022B688 C0 63 00 60 */ lfs f3, 0x60(r3) +/* 8022E72C 0022B68C C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 8022E730 0022B690 EC 81 00 28 */ fsubs f4, f1, f0 +/* 8022E734 0022B694 C0 23 00 40 */ lfs f1, 0x40(r3) +/* 8022E738 0022B698 38 61 00 74 */ addi r3, r1, 0x74 +/* 8022E73C 0022B69C C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 8022E740 0022B6A0 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8022E744 0022B6A4 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8022E748 0022B6A8 D0 81 00 78 */ stfs f4, 0x78(r1) +/* 8022E74C 0022B6AC D0 41 00 7C */ stfs f2, 0x7c(r1) +/* 8022E750 0022B6B0 D0 01 00 74 */ stfs f0, 0x74(r1) +/* 8022E754 0022B6B4 48 0E 61 65 */ bl Magnitude__9CVector3fCFv +/* 8022E758 0022B6B8 C0 5D 00 10 */ lfs f2, 0x10(r29) +/* 8022E75C 0022B6BC FC 01 10 40 */ fcmpo cr0, f1, f2 +/* 8022E760 0022B6C0 40 80 00 BC */ bge lbl_8022E81C +/* 8022E764 0022B6C4 EC 02 08 28 */ fsubs f0, f2, f1 +/* 8022E768 0022B6C8 C0 3D 00 14 */ lfs f1, 0x14(r29) +/* 8022E76C 0022B6CC 80 DD 00 00 */ lwz r6, 0(r29) +/* 8022E770 0022B6D0 38 60 00 00 */ li r3, 0 +/* 8022E774 0022B6D4 88 01 00 E0 */ lbz r0, 0xe0(r1) +/* 8022E778 0022B6D8 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8022E77C 0022B6DC EC 60 10 24 */ fdivs f3, f0, f2 +/* 8022E780 0022B6E0 C0 1D 00 08 */ lfs f0, 8(r29) +/* 8022E784 0022B6E4 80 AD 95 B8 */ lwz r5, lbl_805A8178@sda21(r13) +/* 8022E788 0022B6E8 38 60 00 00 */ li r3, 0 +/* 8022E78C 0022B6EC 90 C1 00 C8 */ stw r6, 0xc8(r1) +/* 8022E790 0022B6F0 38 80 00 01 */ li r4, 1 +/* 8022E794 0022B6F4 88 DD 00 04 */ lbz r6, 4(r29) +/* 8022E798 0022B6F8 EC 03 00 32 */ fmuls f0, f3, f0 +/* 8022E79C 0022B6FC EC 23 00 72 */ fmuls f1, f3, f1 +/* 8022E7A0 0022B700 98 C1 00 CC */ stb r6, 0xcc(r1) +/* 8022E7A4 0022B704 D0 01 00 D0 */ stfs f0, 0xd0(r1) +/* 8022E7A8 0022B708 D0 01 00 D4 */ stfs f0, 0xd4(r1) +/* 8022E7AC 0022B70C D0 41 00 D8 */ stfs f2, 0xd8(r1) +/* 8022E7B0 0022B710 D0 21 00 DC */ stfs f1, 0xdc(r1) +/* 8022E7B4 0022B714 98 01 00 E0 */ stb r0, 0xe0(r1) +/* 8022E7B8 0022B718 48 15 B7 3D */ bl __shl2i +/* 8022E7BC 0022B71C 39 00 00 00 */ li r8, 0 +/* 8022E7C0 0022B720 39 40 00 03 */ li r10, 3 +/* 8022E7C4 0022B724 90 81 00 84 */ stw r4, 0x84(r1) +/* 8022E7C8 0022B728 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8022E7CC 0022B72C 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 8022E7D0 0022B730 A0 1B 00 00 */ lhz r0, 0(r27) +/* 8022E7D4 0022B734 90 61 00 80 */ stw r3, 0x80(r1) +/* 8022E7D8 0022B738 7F E3 FB 78 */ mr r3, r31 +/* 8022E7DC 0022B73C 38 81 00 18 */ addi r4, r1, 0x18 +/* 8022E7E0 0022B740 38 A1 00 10 */ addi r5, r1, 0x10 +/* 8022E7E4 0022B744 91 01 00 8C */ stw r8, 0x8c(r1) +/* 8022E7E8 0022B748 38 C1 00 0C */ addi r6, r1, 0xc +/* 8022E7EC 0022B74C 38 E1 00 C8 */ addi r7, r1, 0xc8 +/* 8022E7F0 0022B750 91 01 00 88 */ stw r8, 0x88(r1) +/* 8022E7F4 0022B754 39 01 00 80 */ addi r8, r1, 0x80 +/* 8022E7F8 0022B758 91 41 00 90 */ stw r10, 0x90(r1) +/* 8022E7FC 0022B75C A1 5E 00 08 */ lhz r10, 8(r30) +/* 8022E800 0022B760 B1 41 00 0C */ sth r10, 0xc(r1) +/* 8022E804 0022B764 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8022E808 0022B768 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8022E80C 0022B76C B1 41 00 08 */ sth r10, 8(r1) +/* 8022E810 0022B770 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8022E814 0022B774 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8022E818 0022B778 4B E1 B8 89 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +lbl_8022E81C: +/* 8022E81C 0022B77C 3B 7B 00 02 */ addi r27, r27, 2 +lbl_8022E820: +/* 8022E820 0022B780 80 A1 01 18 */ lwz r5, 0x118(r1) +/* 8022E824 0022B784 54 A0 08 3C */ slwi r0, r5, 1 +/* 8022E828 0022B788 7C 1C 02 14 */ add r0, r28, r0 +/* 8022E82C 0022B78C 7C 1B 00 40 */ cmplw r27, r0 +/* 8022E830 0022B790 40 82 FE 78 */ bne lbl_8022E6A8 +/* 8022E834 0022B794 2C 05 00 00 */ cmpwi r5, 0 +/* 8022E838 0022B798 38 60 00 00 */ li r3, 0 +/* 8022E83C 0022B79C 40 81 00 40 */ ble lbl_8022E87C +/* 8022E840 0022B7A0 2C 05 00 08 */ cmpwi r5, 8 +/* 8022E844 0022B7A4 38 85 FF F8 */ addi r4, r5, -8 +/* 8022E848 0022B7A8 40 81 00 20 */ ble lbl_8022E868 +/* 8022E84C 0022B7AC 38 04 00 07 */ addi r0, r4, 7 +/* 8022E850 0022B7B0 54 00 E8 FE */ srwi r0, r0, 3 +/* 8022E854 0022B7B4 7C 09 03 A6 */ mtctr r0 +/* 8022E858 0022B7B8 2C 04 00 00 */ cmpwi r4, 0 +/* 8022E85C 0022B7BC 40 81 00 0C */ ble lbl_8022E868 +lbl_8022E860: +/* 8022E860 0022B7C0 38 63 00 08 */ addi r3, r3, 8 +/* 8022E864 0022B7C4 42 00 FF FC */ bdnz lbl_8022E860 +lbl_8022E868: +/* 8022E868 0022B7C8 7C 03 28 50 */ subf r0, r3, r5 +/* 8022E86C 0022B7CC 7C 09 03 A6 */ mtctr r0 +/* 8022E870 0022B7D0 7C 03 28 00 */ cmpw r3, r5 +/* 8022E874 0022B7D4 40 80 00 08 */ bge lbl_8022E87C +lbl_8022E878: +/* 8022E878 0022B7D8 42 00 00 00 */ bdnz lbl_8022E878 +lbl_8022E87C: +/* 8022E87C 0022B7DC 38 00 00 00 */ li r0, 0 +/* 8022E880 0022B7E0 90 01 01 18 */ stw r0, 0x118(r1) +lbl_8022E884: +/* 8022E884 0022B7E4 BB 41 09 28 */ lmw r26, 0x928(r1) +/* 8022E888 0022B7E8 80 01 09 44 */ lwz r0, 0x944(r1) +/* 8022E88C 0022B7EC 7C 08 03 A6 */ mtlr r0 +/* 8022E890 0022B7F0 38 21 09 40 */ addi r1, r1, 0x940 +/* 8022E894 0022B7F4 4E 80 00 20 */ blr + +.global sub_8022e898 +sub_8022e898: +/* 8022E898 0022B7F8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8022E89C 0022B7FC 7C 08 02 A6 */ mflr r0 +/* 8022E8A0 0022B800 90 01 00 14 */ stw r0, 0x14(r1) +/* 8022E8A4 0022B804 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8022E8A8 0022B808 7C BF 2B 78 */ mr r31, r5 +/* 8022E8AC 0022B80C 93 C1 00 08 */ stw r30, 8(r1) +/* 8022E8B0 0022B810 7C 7E 1B 78 */ mr r30, r3 +/* 8022E8B4 0022B814 4B E2 62 85 */ bl AddToRenderer__6CActorCFRC14CFrustumPlanesRC13CStateManager +/* 8022E8B8 0022B818 88 1E 02 B4 */ lbz r0, 0x2b4(r30) +/* 8022E8BC 0022B81C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8022E8C0 0022B820 41 82 00 70 */ beq lbl_8022E930 +/* 8022E8C4 0022B824 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 8022E8C8 0022B828 7F E4 FB 78 */ mr r4, r31 +/* 8022E8CC 0022B82C 80 63 00 00 */ lwz r3, 0(r3) +/* 8022E8D0 0022B830 4B E6 2C 89 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager +/* 8022E8D4 0022B834 2C 03 00 02 */ cmpwi r3, 2 +/* 8022E8D8 0022B838 41 82 00 20 */ beq lbl_8022E8F8 +/* 8022E8DC 0022B83C 40 80 00 10 */ bge lbl_8022E8EC +/* 8022E8E0 0022B840 2C 03 00 00 */ cmpwi r3, 0 +/* 8022E8E4 0022B844 41 82 00 14 */ beq lbl_8022E8F8 +/* 8022E8E8 0022B848 48 00 00 60 */ b lbl_8022E948 +lbl_8022E8EC: +/* 8022E8EC 0022B84C 2C 03 00 04 */ cmpwi r3, 4 +/* 8022E8F0 0022B850 40 80 00 58 */ bge lbl_8022E948 +/* 8022E8F4 0022B854 48 00 00 20 */ b lbl_8022E914 +lbl_8022E8F8: +/* 8022E8F8 0022B858 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 8022E8FC 0022B85C 80 9E 02 A0 */ lwz r4, 0x2a0(r30) +/* 8022E900 0022B860 81 83 00 00 */ lwz r12, 0(r3) +/* 8022E904 0022B864 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8022E908 0022B868 7D 89 03 A6 */ mtctr r12 +/* 8022E90C 0022B86C 4E 80 04 21 */ bctrl +/* 8022E910 0022B870 48 00 00 38 */ b lbl_8022E948 +lbl_8022E914: +/* 8022E914 0022B874 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 8022E918 0022B878 80 9E 02 A8 */ lwz r4, 0x2a8(r30) +/* 8022E91C 0022B87C 81 83 00 00 */ lwz r12, 0(r3) +/* 8022E920 0022B880 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8022E924 0022B884 7D 89 03 A6 */ mtctr r12 +/* 8022E928 0022B888 4E 80 04 21 */ bctrl +/* 8022E92C 0022B88C 48 00 00 1C */ b lbl_8022E948 +lbl_8022E930: +/* 8022E930 0022B890 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 8022E934 0022B894 80 9E 02 AC */ lwz r4, 0x2ac(r30) +/* 8022E938 0022B898 81 83 00 00 */ lwz r12, 0(r3) +/* 8022E93C 0022B89C 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8022E940 0022B8A0 7D 89 03 A6 */ mtctr r12 +/* 8022E944 0022B8A4 4E 80 04 21 */ bctrl +lbl_8022E948: +/* 8022E948 0022B8A8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8022E94C 0022B8AC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8022E950 0022B8B0 83 C1 00 08 */ lwz r30, 8(r1) +/* 8022E954 0022B8B4 7C 08 03 A6 */ mtlr r0 +/* 8022E958 0022B8B8 38 21 00 10 */ addi r1, r1, 0x10 +/* 8022E95C 0022B8BC 4E 80 00 20 */ blr + +.global sub_8022e960 +sub_8022e960: +/* 8022E960 0022B8C0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8022E964 0022B8C4 7C 08 02 A6 */ mflr r0 +/* 8022E968 0022B8C8 90 01 00 24 */ stw r0, 0x24(r1) +/* 8022E96C 0022B8CC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8022E970 0022B8D0 7C 9F 23 78 */ mr r31, r4 +/* 8022E974 0022B8D4 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8022E978 0022B8D8 7C 7E 1B 78 */ mr r30, r3 +/* 8022E97C 0022B8DC 88 03 02 B4 */ lbz r0, 0x2b4(r3) +/* 8022E980 0022B8E0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8022E984 0022B8E4 40 82 00 4C */ bne lbl_8022E9D0 +/* 8022E988 0022B8E8 C0 22 B6 38 */ lfs f1, lbl_805AD358@sda21(r2) +/* 8022E98C 0022B8EC 38 80 00 00 */ li r4, 0 +/* 8022E990 0022B8F0 38 00 00 03 */ li r0, 3 +/* 8022E994 0022B8F4 98 81 00 10 */ stb r4, 0x10(r1) +/* 8022E998 0022B8F8 FC 40 08 90 */ fmr f2, f1 +/* 8022E99C 0022B8FC 38 61 00 14 */ addi r3, r1, 0x14 +/* 8022E9A0 0022B900 FC 60 08 90 */ fmr f3, f1 +/* 8022E9A4 0022B904 98 81 00 11 */ stb r4, 0x11(r1) +/* 8022E9A8 0022B908 FC 80 08 90 */ fmr f4, f1 +/* 8022E9AC 0022B90C B0 01 00 12 */ sth r0, 0x12(r1) +/* 8022E9B0 0022B910 48 13 4A 3D */ bl __ct__6CColorFffff +/* 8022E9B4 0022B914 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 8022E9B8 0022B918 7F E4 FB 78 */ mr r4, r31 +/* 8022E9BC 0022B91C 38 BE 00 34 */ addi r5, r30, 0x34 +/* 8022E9C0 0022B920 38 E1 00 10 */ addi r7, r1, 0x10 +/* 8022E9C4 0022B924 38 C0 00 00 */ li r6, 0 +/* 8022E9C8 0022B928 4B EE 63 F5 */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags +/* 8022E9CC 0022B92C 48 00 00 74 */ b lbl_8022EA40 +lbl_8022E9D0: +/* 8022E9D0 0022B930 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 8022E9D4 0022B934 80 63 00 00 */ lwz r3, 0(r3) +/* 8022E9D8 0022B938 4B E6 2B 81 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager +/* 8022E9DC 0022B93C 2C 03 00 01 */ cmpwi r3, 1 +/* 8022E9E0 0022B940 40 82 00 60 */ bne lbl_8022EA40 +/* 8022E9E4 0022B944 38 00 00 01 */ li r0, 1 +/* 8022E9E8 0022B948 98 0D A8 B9 */ stb r0, lbl_805A9479@sda21(r13) +/* 8022E9EC 0022B94C 98 0D A8 B8 */ stb r0, lbl_805A9478@sda21(r13) +/* 8022E9F0 0022B950 48 11 B5 C5 */ bl Black__6CColorFv +/* 8022E9F4 0022B954 C0 22 B6 3C */ lfs f1, lbl_805AD35C@sda21(r2) +/* 8022E9F8 0022B958 7C 64 1B 78 */ mr r4, r3 +/* 8022E9FC 0022B95C C0 42 B6 40 */ lfs f2, lbl_805AD360@sda21(r2) +/* 8022EA00 0022B960 38 60 00 02 */ li r3, 2 +/* 8022EA04 0022B964 48 0D B8 85 */ bl SetFog__9CGraphicsF11ERglFogModeffRC6CColor +/* 8022EA08 0022B968 80 7E 02 A4 */ lwz r3, 0x2a4(r30) +/* 8022EA0C 0022B96C 81 83 00 00 */ lwz r12, 0(r3) +/* 8022EA10 0022B970 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 8022EA14 0022B974 7D 89 03 A6 */ mtctr r12 +/* 8022EA18 0022B978 4E 80 04 21 */ bctrl +/* 8022EA1C 0022B97C 80 1E 00 04 */ lwz r0, 4(r30) +/* 8022EA20 0022B980 7F E3 FB 78 */ mr r3, r31 +/* 8022EA24 0022B984 38 81 00 0C */ addi r4, r1, 0xc +/* 8022EA28 0022B988 90 01 00 08 */ stw r0, 8(r1) +/* 8022EA2C 0022B98C 90 01 00 0C */ stw r0, 0xc(r1) +/* 8022EA30 0022B990 4B E1 83 51 */ bl SetupFogForArea__13CStateManagerCF7TAreaId +/* 8022EA34 0022B994 38 00 00 00 */ li r0, 0 +/* 8022EA38 0022B998 98 0D A8 B9 */ stb r0, lbl_805A9479@sda21(r13) +/* 8022EA3C 0022B99C 98 0D A8 B8 */ stb r0, lbl_805A9478@sda21(r13) +lbl_8022EA40: +/* 8022EA40 0022B9A0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8022EA44 0022B9A4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8022EA48 0022B9A8 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8022EA4C 0022B9AC 7C 08 03 A6 */ mtlr r0 +/* 8022EA50 0022B9B0 38 21 00 20 */ addi r1, r1, 0x20 +/* 8022EA54 0022B9B4 4E 80 00 20 */ blr + +.global sub_8022ea58 +sub_8022ea58: +/* 8022EA58 0022B9B8 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 8022EA5C 0022B9BC 7C 08 02 A6 */ mflr r0 +/* 8022EA60 0022B9C0 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 8022EA64 0022B9C4 DB E1 00 A0 */ stfd f31, 0xa0(r1) +/* 8022EA68 0022B9C8 F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0 +/* 8022EA6C 0022B9CC DB C1 00 90 */ stfd f30, 0x90(r1) +/* 8022EA70 0022B9D0 F3 C1 00 98 */ psq_st f30, 152(r1), 0, qr0 +/* 8022EA74 0022B9D4 DB A1 00 80 */ stfd f29, 0x80(r1) +/* 8022EA78 0022B9D8 F3 A1 00 88 */ psq_st f29, 136(r1), 0, qr0 +/* 8022EA7C 0022B9DC DB 81 00 70 */ stfd f28, 0x70(r1) +/* 8022EA80 0022B9E0 F3 81 00 78 */ psq_st f28, 120(r1), 0, qr0 +/* 8022EA84 0022B9E4 BF 61 00 5C */ stmw r27, 0x5c(r1) +/* 8022EA88 0022B9E8 88 0D A5 18 */ lbz r0, lbl_805A90D8@sda21(r13) +/* 8022EA8C 0022B9EC 7C 7C 1B 78 */ mr r28, r3 +/* 8022EA90 0022B9F0 7C 9D 23 78 */ mr r29, r4 +/* 8022EA94 0022B9F4 7C BE 2B 78 */ mr r30, r5 +/* 8022EA98 0022B9F8 7C 00 07 75 */ extsb. r0, r0 +/* 8022EA9C 0022B9FC 7C DF 33 78 */ mr r31, r6 +/* 8022EAA0 0022BA00 40 82 00 E0 */ bne lbl_8022EB80 +/* 8022EAA4 0022BA04 38 00 00 00 */ li r0, 0 +/* 8022EAA8 0022BA08 80 AD 95 C8 */ lwz r5, lbl_805A8188@sda21(r13) +/* 8022EAAC 0022BA0C 90 0D A5 24 */ stw r0, lbl_805A90E4@sda21(r13) +/* 8022EAB0 0022BA10 38 60 00 00 */ li r3, 0 +/* 8022EAB4 0022BA14 38 80 00 01 */ li r4, 1 +/* 8022EAB8 0022BA18 90 0D A5 20 */ stw r0, lbl_805A90E0@sda21(r13) +/* 8022EABC 0022BA1C 48 15 B4 39 */ bl __shl2i +/* 8022EAC0 0022BA20 80 0D A5 20 */ lwz r0, lbl_805A90E0@sda21(r13) +/* 8022EAC4 0022BA24 80 CD A5 24 */ lwz r6, lbl_805A90E4@sda21(r13) +/* 8022EAC8 0022BA28 7C 00 1B 78 */ or r0, r0, r3 +/* 8022EACC 0022BA2C 80 AD 95 CC */ lwz r5, lbl_805A818C@sda21(r13) +/* 8022EAD0 0022BA30 7C C4 23 78 */ or r4, r6, r4 +/* 8022EAD4 0022BA34 90 0D A5 20 */ stw r0, lbl_805A90E0@sda21(r13) +/* 8022EAD8 0022BA38 38 60 00 00 */ li r3, 0 +/* 8022EADC 0022BA3C 90 8D A5 24 */ stw r4, lbl_805A90E4@sda21(r13) +/* 8022EAE0 0022BA40 38 80 00 01 */ li r4, 1 +/* 8022EAE4 0022BA44 48 15 B4 11 */ bl __shl2i +/* 8022EAE8 0022BA48 80 0D A5 20 */ lwz r0, lbl_805A90E0@sda21(r13) +/* 8022EAEC 0022BA4C 80 CD A5 24 */ lwz r6, lbl_805A90E4@sda21(r13) +/* 8022EAF0 0022BA50 7C 00 1B 78 */ or r0, r0, r3 +/* 8022EAF4 0022BA54 80 AD 95 D0 */ lwz r5, lbl_805A8190@sda21(r13) +/* 8022EAF8 0022BA58 7C C4 23 78 */ or r4, r6, r4 +/* 8022EAFC 0022BA5C 90 0D A5 20 */ stw r0, lbl_805A90E0@sda21(r13) +/* 8022EB00 0022BA60 38 60 00 00 */ li r3, 0 +/* 8022EB04 0022BA64 90 8D A5 24 */ stw r4, lbl_805A90E4@sda21(r13) +/* 8022EB08 0022BA68 38 80 00 01 */ li r4, 1 +/* 8022EB0C 0022BA6C 48 15 B3 E9 */ bl __shl2i +/* 8022EB10 0022BA70 80 0D A5 20 */ lwz r0, lbl_805A90E0@sda21(r13) +/* 8022EB14 0022BA74 80 CD A5 24 */ lwz r6, lbl_805A90E4@sda21(r13) +/* 8022EB18 0022BA78 7C 00 1B 78 */ or r0, r0, r3 +/* 8022EB1C 0022BA7C 80 AD 95 D4 */ lwz r5, lbl_805A8194@sda21(r13) +/* 8022EB20 0022BA80 7C C4 23 78 */ or r4, r6, r4 +/* 8022EB24 0022BA84 90 0D A5 20 */ stw r0, lbl_805A90E0@sda21(r13) +/* 8022EB28 0022BA88 38 60 00 00 */ li r3, 0 +/* 8022EB2C 0022BA8C 90 8D A5 24 */ stw r4, lbl_805A90E4@sda21(r13) +/* 8022EB30 0022BA90 38 80 00 01 */ li r4, 1 +/* 8022EB34 0022BA94 48 15 B3 C1 */ bl __shl2i +/* 8022EB38 0022BA98 80 0D A5 20 */ lwz r0, lbl_805A90E0@sda21(r13) +/* 8022EB3C 0022BA9C 80 CD A5 24 */ lwz r6, lbl_805A90E4@sda21(r13) +/* 8022EB40 0022BAA0 7C 00 1B 78 */ or r0, r0, r3 +/* 8022EB44 0022BAA4 80 AD 95 D8 */ lwz r5, lbl_805A8198@sda21(r13) +/* 8022EB48 0022BAA8 7C C4 23 78 */ or r4, r6, r4 +/* 8022EB4C 0022BAAC 90 0D A5 20 */ stw r0, lbl_805A90E0@sda21(r13) +/* 8022EB50 0022BAB0 38 60 00 00 */ li r3, 0 +/* 8022EB54 0022BAB4 90 8D A5 24 */ stw r4, lbl_805A90E4@sda21(r13) +/* 8022EB58 0022BAB8 38 80 00 01 */ li r4, 1 +/* 8022EB5C 0022BABC 48 15 B3 99 */ bl __shl2i +/* 8022EB60 0022BAC0 80 AD A5 20 */ lwz r5, lbl_805A90E0@sda21(r13) +/* 8022EB64 0022BAC4 38 00 00 01 */ li r0, 1 +/* 8022EB68 0022BAC8 80 CD A5 24 */ lwz r6, lbl_805A90E4@sda21(r13) +/* 8022EB6C 0022BACC 7C A3 1B 78 */ or r3, r5, r3 +/* 8022EB70 0022BAD0 98 0D A5 18 */ stb r0, lbl_805A90D8@sda21(r13) +/* 8022EB74 0022BAD4 7C C0 23 78 */ or r0, r6, r4 +/* 8022EB78 0022BAD8 90 0D A5 24 */ stw r0, lbl_805A90E4@sda21(r13) +/* 8022EB7C 0022BADC 90 6D A5 20 */ stw r3, lbl_805A90E0@sda21(r13) +lbl_8022EB80: +/* 8022EB80 0022BAE0 A0 7D 00 00 */ lhz r3, 0(r29) +/* 8022EB84 0022BAE4 3B 60 00 00 */ li r27, 0 +/* 8022EB88 0022BAE8 A0 1C 02 98 */ lhz r0, 0x298(r28) +/* 8022EB8C 0022BAEC 7C 03 00 40 */ cmplw r3, r0 +/* 8022EB90 0022BAF0 41 82 00 54 */ beq lbl_8022EBE4 +/* 8022EB94 0022BAF4 B0 61 00 10 */ sth r3, 0x10(r1) +/* 8022EB98 0022BAF8 7F E3 FB 78 */ mr r3, r31 +/* 8022EB9C 0022BAFC 38 81 00 10 */ addi r4, r1, 0x10 +/* 8022EBA0 0022BB00 4B E1 DA 05 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8022EBA4 0022BB04 28 03 00 00 */ cmplwi r3, 0 +/* 8022EBA8 0022BB08 41 82 00 3C */ beq lbl_8022EBE4 +/* 8022EBAC 0022BB0C 7C 64 1B 78 */ mr r4, r3 +/* 8022EBB0 0022BB10 38 61 00 1C */ addi r3, r1, 0x1c +/* 8022EBB4 0022BB14 4B E8 07 99 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8022EBB8 0022BB18 80 63 00 04 */ lwz r3, 4(r3) +/* 8022EBBC 0022BB1C 28 03 00 00 */ cmplwi r3, 0 +/* 8022EBC0 0022BB20 41 82 00 20 */ beq lbl_8022EBE0 +/* 8022EBC4 0022BB24 A0 83 02 5C */ lhz r4, 0x25c(r3) +/* 8022EBC8 0022BB28 A0 1C 02 98 */ lhz r0, 0x298(r28) +/* 8022EBCC 0022BB2C 7C 64 00 50 */ subf r3, r4, r0 +/* 8022EBD0 0022BB30 7C 00 20 50 */ subf r0, r0, r4 +/* 8022EBD4 0022BB34 7C 60 03 78 */ or r0, r3, r0 +/* 8022EBD8 0022BB38 54 1B 0F FE */ srwi r27, r0, 0x1f +/* 8022EBDC 0022BB3C 48 00 00 08 */ b lbl_8022EBE4 +lbl_8022EBE0: +/* 8022EBE0 0022BB40 3B 60 00 01 */ li r27, 1 +lbl_8022EBE4: +/* 8022EBE4 0022BB44 57 60 06 3F */ clrlwi. r0, r27, 0x18 +/* 8022EBE8 0022BB48 41 82 00 20 */ beq lbl_8022EC08 +/* 8022EBEC 0022BB4C A0 1D 00 00 */ lhz r0, 0(r29) +/* 8022EBF0 0022BB50 7F 83 E3 78 */ mr r3, r28 +/* 8022EBF4 0022BB54 7F E4 FB 78 */ mr r4, r31 +/* 8022EBF8 0022BB58 38 A1 00 0C */ addi r5, r1, 0xc +/* 8022EBFC 0022BB5C B0 01 00 0C */ sth r0, 0xc(r1) +/* 8022EC00 0022BB60 4B FF F8 25 */ bl sub_8022e424 +/* 8022EC04 0022BB64 48 00 01 74 */ b lbl_8022ED78 +lbl_8022EC08: +/* 8022EC08 0022BB68 80 1E 00 00 */ lwz r0, 0(r30) +/* 8022EC0C 0022BB6C 38 BE 00 04 */ addi r5, r30, 4 +/* 8022EC10 0022BB70 80 CD A5 20 */ lwz r6, lbl_805A90E0@sda21(r13) +/* 8022EC14 0022BB74 38 80 00 00 */ li r4, 0 +/* 8022EC18 0022BB78 80 ED A5 24 */ lwz r7, lbl_805A90E4@sda21(r13) +/* 8022EC1C 0022BB7C 7C 09 03 A6 */ mtctr r0 +/* 8022EC20 0022BB80 2C 00 00 00 */ cmpwi r0, 0 +/* 8022EC24 0022BB84 40 81 01 54 */ ble lbl_8022ED78 +lbl_8022EC28: +/* 8022EC28 0022BB88 80 05 00 38 */ lwz r0, 0x38(r5) +/* 8022EC2C 0022BB8C 80 65 00 3C */ lwz r3, 0x3c(r5) +/* 8022EC30 0022BB90 7C C0 00 38 */ and r0, r6, r0 +/* 8022EC34 0022BB94 7C E3 18 38 */ and r3, r7, r3 +/* 8022EC38 0022BB98 7C 63 22 78 */ xor r3, r3, r4 +/* 8022EC3C 0022BB9C 7C 00 22 78 */ xor r0, r0, r4 +/* 8022EC40 0022BBA0 7C 60 03 79 */ or. r0, r3, r0 +/* 8022EC44 0022BBA4 41 82 01 2C */ beq lbl_8022ED70 +/* 8022EC48 0022BBA8 80 1C 02 94 */ lwz r0, 0x294(r28) +/* 8022EC4C 0022BBAC 28 00 00 00 */ cmplwi r0, 0 +/* 8022EC50 0022BBB0 41 82 01 04 */ beq lbl_8022ED54 +/* 8022EC54 0022BBB4 38 85 00 48 */ addi r4, r5, 0x48 +/* 8022EC58 0022BBB8 C0 3C 01 3C */ lfs f1, 0x13c(r28) +/* 8022EC5C 0022BBBC C0 05 00 4C */ lfs f0, 0x4c(r5) +/* 8022EC60 0022BBC0 C0 5C 01 38 */ lfs f2, 0x138(r28) +/* 8022EC64 0022BBC4 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8022EC68 0022BBC8 C0 25 00 48 */ lfs f1, 0x48(r5) +/* 8022EC6C 0022BBCC C0 9C 01 40 */ lfs f4, 0x140(r28) +/* 8022EC70 0022BBD0 C0 65 00 50 */ lfs f3, 0x50(r5) +/* 8022EC74 0022BBD4 EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 8022EC78 0022BBD8 C0 02 B6 3C */ lfs f0, lbl_805AD35C@sda21(r2) +/* 8022EC7C 0022BBDC EC 24 08 FA */ fmadds f1, f4, f3, f1 +/* 8022EC80 0022BBE0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8022EC84 0022BBE4 40 81 00 08 */ ble lbl_8022EC8C +/* 8022EC88 0022BBE8 38 85 00 54 */ addi r4, r5, 0x54 +lbl_8022EC8C: +/* 8022EC8C 0022BBEC C3 C4 00 00 */ lfs f30, 0(r4) +/* 8022EC90 0022BBF0 38 7C 00 FC */ addi r3, r28, 0xfc +/* 8022EC94 0022BBF4 C3 A4 00 04 */ lfs f29, 4(r4) +/* 8022EC98 0022BBF8 C3 84 00 08 */ lfs f28, 8(r4) +/* 8022EC9C 0022BBFC C3 FC 02 5C */ lfs f31, 0x25c(r28) +/* 8022ECA0 0022BC00 48 0E 5C 19 */ bl Magnitude__9CVector3fCFv +/* 8022ECA4 0022BC04 EC 1F 00 72 */ fmuls f0, f31, f1 +/* 8022ECA8 0022BC08 38 61 00 30 */ addi r3, r1, 0x30 +/* 8022ECAC 0022BC0C 38 81 00 18 */ addi r4, r1, 0x18 +/* 8022ECB0 0022BC10 38 BC 01 08 */ addi r5, r28, 0x108 +/* 8022ECB4 0022BC14 EC 40 07 B2 */ fmuls f2, f0, f30 +/* 8022ECB8 0022BC18 EC 20 07 72 */ fmuls f1, f0, f29 +/* 8022ECBC 0022BC1C EC 00 07 32 */ fmuls f0, f0, f28 +/* 8022ECC0 0022BC20 D0 41 00 48 */ stfs f2, 0x48(r1) +/* 8022ECC4 0022BC24 D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 8022ECC8 0022BC28 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 8022ECCC 0022BC2C C0 1C 02 5C */ lfs f0, 0x25c(r28) +/* 8022ECD0 0022BC30 FC 00 00 50 */ fneg f0, f0 +/* 8022ECD4 0022BC34 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 8022ECD8 0022BC38 4B DE C7 81 */ bl __ml__FRCfRC10CAxisAngle +/* 8022ECDC 0022BC3C C0 41 00 30 */ lfs f2, 0x30(r1) +/* 8022ECE0 0022BC40 7F 83 E3 78 */ mr r3, r28 +/* 8022ECE4 0022BC44 C0 21 00 34 */ lfs f1, 0x34(r1) +/* 8022ECE8 0022BC48 38 81 00 48 */ addi r4, r1, 0x48 +/* 8022ECEC 0022BC4C C0 01 00 38 */ lfs f0, 0x38(r1) +/* 8022ECF0 0022BC50 38 A1 00 3C */ addi r5, r1, 0x3c +/* 8022ECF4 0022BC54 D0 41 00 3C */ stfs f2, 0x3c(r1) +/* 8022ECF8 0022BC58 D0 21 00 40 */ stfs f1, 0x40(r1) +/* 8022ECFC 0022BC5C D0 01 00 44 */ stfs f0, 0x44(r1) +/* 8022ED00 0022BC60 4B EE D6 99 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +/* 8022ED04 0022BC64 81 5C 00 04 */ lwz r10, 4(r28) +/* 8022ED08 0022BC68 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 8022ED0C 0022BC6C C0 5C 00 60 */ lfs f2, 0x60(r28) +/* 8022ED10 0022BC70 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 8022ED14 0022BC74 C0 3C 00 50 */ lfs f1, 0x50(r28) +/* 8022ED18 0022BC78 38 61 00 14 */ addi r3, r1, 0x14 +/* 8022ED1C 0022BC7C C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 8022ED20 0022BC80 38 A1 00 24 */ addi r5, r1, 0x24 +/* 8022ED24 0022BC84 A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) +/* 8022ED28 0022BC88 38 E0 00 00 */ li r7, 0 +/* 8022ED2C 0022BC8C D0 01 00 24 */ stfs f0, 0x24(r1) +/* 8022ED30 0022BC90 39 00 00 00 */ li r8, 0 +/* 8022ED34 0022BC94 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 8022ED38 0022BC98 D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 8022ED3C 0022BC9C A0 9C 02 90 */ lhz r4, 0x290(r28) +/* 8022ED40 0022BCA0 48 0B B5 71 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +/* 8022ED44 0022BCA4 80 7C 02 94 */ lwz r3, 0x294(r28) +/* 8022ED48 0022BCA8 38 03 FF FF */ addi r0, r3, -1 +/* 8022ED4C 0022BCAC 90 1C 02 94 */ stw r0, 0x294(r28) +/* 8022ED50 0022BCB0 48 00 00 28 */ b lbl_8022ED78 +lbl_8022ED54: +/* 8022ED54 0022BCB4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8022ED58 0022BCB8 7F 83 E3 78 */ mr r3, r28 +/* 8022ED5C 0022BCBC 7F E4 FB 78 */ mr r4, r31 +/* 8022ED60 0022BCC0 38 A1 00 08 */ addi r5, r1, 8 +/* 8022ED64 0022BCC4 B0 01 00 08 */ sth r0, 8(r1) +/* 8022ED68 0022BCC8 4B FF F6 BD */ bl sub_8022e424 +/* 8022ED6C 0022BCCC 48 00 00 0C */ b lbl_8022ED78 +lbl_8022ED70: +/* 8022ED70 0022BCD0 38 A5 00 60 */ addi r5, r5, 0x60 +/* 8022ED74 0022BCD4 42 00 FE B4 */ bdnz lbl_8022EC28 +lbl_8022ED78: +/* 8022ED78 0022BCD8 7F 83 E3 78 */ mr r3, r28 +/* 8022ED7C 0022BCDC 7F A4 EB 78 */ mr r4, r29 +/* 8022ED80 0022BCE0 7F C5 F3 78 */ mr r5, r30 +/* 8022ED84 0022BCE4 7F E6 FB 78 */ mr r6, r31 +/* 8022ED88 0022BCE8 4B EE BC 41 */ bl CollidedWith__13CPhysicsActorFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager +/* 8022ED8C 0022BCEC E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0 +/* 8022ED90 0022BCF0 CB E1 00 A0 */ lfd f31, 0xa0(r1) +/* 8022ED94 0022BCF4 E3 C1 00 98 */ psq_l f30, 152(r1), 0, qr0 +/* 8022ED98 0022BCF8 CB C1 00 90 */ lfd f30, 0x90(r1) +/* 8022ED9C 0022BCFC E3 A1 00 88 */ psq_l f29, 136(r1), 0, qr0 +/* 8022EDA0 0022BD00 CB A1 00 80 */ lfd f29, 0x80(r1) +/* 8022EDA4 0022BD04 E3 81 00 78 */ psq_l f28, 120(r1), 0, qr0 +/* 8022EDA8 0022BD08 CB 81 00 70 */ lfd f28, 0x70(r1) +/* 8022EDAC 0022BD0C BB 61 00 5C */ lmw r27, 0x5c(r1) +/* 8022EDB0 0022BD10 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 8022EDB4 0022BD14 7C 08 03 A6 */ mtlr r0 +/* 8022EDB8 0022BD18 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 8022EDBC 0022BD1C 4E 80 00 20 */ blr + +.global sub_8022edc0 +sub_8022edc0: +/* 8022EDC0 0022BD20 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8022EDC4 0022BD24 7C 08 02 A6 */ mflr r0 +/* 8022EDC8 0022BD28 7C 85 23 78 */ mr r5, r4 +/* 8022EDCC 0022BD2C 90 01 00 34 */ stw r0, 0x34(r1) +/* 8022EDD0 0022BD30 38 A5 00 34 */ addi r5, r5, 0x34 +/* 8022EDD4 0022BD34 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8022EDD8 0022BD38 7C 7F 1B 78 */ mr r31, r3 +/* 8022EDDC 0022BD3C 38 61 00 08 */ addi r3, r1, 8 +/* 8022EDE0 0022BD40 80 84 00 64 */ lwz r4, 0x64(r4) +/* 8022EDE4 0022BD44 4B EE 69 D1 */ bl GetBounds__10CModelDataCFRC12CTransform4f +/* 8022EDE8 0022BD48 38 00 00 01 */ li r0, 1 +/* 8022EDEC 0022BD4C 28 1F 00 00 */ cmplwi r31, 0 +/* 8022EDF0 0022BD50 98 1F 00 18 */ stb r0, 0x18(r31) +/* 8022EDF4 0022BD54 41 82 00 34 */ beq lbl_8022EE28 +/* 8022EDF8 0022BD58 C0 01 00 08 */ lfs f0, 8(r1) +/* 8022EDFC 0022BD5C D0 1F 00 00 */ stfs f0, 0(r31) +/* 8022EE00 0022BD60 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 8022EE04 0022BD64 D0 1F 00 04 */ stfs f0, 4(r31) +/* 8022EE08 0022BD68 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 8022EE0C 0022BD6C D0 1F 00 08 */ stfs f0, 8(r31) +/* 8022EE10 0022BD70 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 8022EE14 0022BD74 D0 1F 00 0C */ stfs f0, 0xc(r31) +/* 8022EE18 0022BD78 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 8022EE1C 0022BD7C D0 1F 00 10 */ stfs f0, 0x10(r31) +/* 8022EE20 0022BD80 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 8022EE24 0022BD84 D0 1F 00 14 */ stfs f0, 0x14(r31) +lbl_8022EE28: +/* 8022EE28 0022BD88 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8022EE2C 0022BD8C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8022EE30 0022BD90 7C 08 03 A6 */ mtlr r0 +/* 8022EE34 0022BD94 38 21 00 30 */ addi r1, r1, 0x30 +/* 8022EE38 0022BD98 4E 80 00 20 */ blr + +.global sub_8022ee3c +sub_8022ee3c: +/* 8022EE3C 0022BD9C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8022EE40 0022BDA0 7C 08 02 A6 */ mflr r0 +/* 8022EE44 0022BDA4 90 01 00 14 */ stw r0, 0x14(r1) +/* 8022EE48 0022BDA8 4B E2 55 C1 */ bl Touch__6CActorFR6CActorR13CStateManager +/* 8022EE4C 0022BDAC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8022EE50 0022BDB0 7C 08 03 A6 */ mtlr r0 +/* 8022EE54 0022BDB4 38 21 00 10 */ addi r1, r1, 0x10 +/* 8022EE58 0022BDB8 4E 80 00 20 */ blr + +.global sub_8022ee5c +sub_8022ee5c: +/* 8022EE5C 0022BDBC 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 8022EE60 0022BDC0 7C 08 02 A6 */ mflr r0 +/* 8022EE64 0022BDC4 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 8022EE68 0022BDC8 DB E1 00 B0 */ stfd f31, 0xb0(r1) +/* 8022EE6C 0022BDCC F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0 +/* 8022EE70 0022BDD0 93 E1 00 AC */ stw r31, 0xac(r1) +/* 8022EE74 0022BDD4 93 C1 00 A8 */ stw r30, 0xa8(r1) +/* 8022EE78 0022BDD8 88 03 00 30 */ lbz r0, 0x30(r3) +/* 8022EE7C 0022BDDC FF E0 08 90 */ fmr f31, f1 +/* 8022EE80 0022BDE0 7C 7E 1B 78 */ mr r30, r3 +/* 8022EE84 0022BDE4 7C 9F 23 78 */ mr r31, r4 +/* 8022EE88 0022BDE8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8022EE8C 0022BDEC 41 82 02 BC */ beq lbl_8022F148 +/* 8022EE90 0022BDF0 38 61 00 44 */ addi r3, r1, 0x44 +/* 8022EE94 0022BDF4 38 9E 00 34 */ addi r4, r30, 0x34 +/* 8022EE98 0022BDF8 48 0E 3D A9 */ bl GetRotation__12CTransform4fCFv +/* 8022EE9C 0022BDFC 38 61 00 74 */ addi r3, r1, 0x74 +/* 8022EEA0 0022BE00 38 81 00 44 */ addi r4, r1, 0x44 +/* 8022EEA4 0022BE04 48 0E 3C D1 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8022EEA8 0022BE08 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 8022EEAC 0022BE0C C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 8022EEB0 0022BE10 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 8022EEB4 0022BE14 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 8022EEB8 0022BE18 D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 8022EEBC 0022BE1C D0 41 00 40 */ stfs f2, 0x40(r1) +/* 8022EEC0 0022BE20 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 8022EEC4 0022BE24 C0 23 00 04 */ lfs f1, 4(r3) +/* 8022EEC8 0022BE28 C0 43 00 08 */ lfs f2, 8(r3) +/* 8022EECC 0022BE2C C0 03 00 00 */ lfs f0, 0(r3) +/* 8022EED0 0022BE30 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 8022EED4 0022BE34 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 8022EED8 0022BE38 D0 41 00 34 */ stfs f2, 0x34(r1) +/* 8022EEDC 0022BE3C 88 1E 02 B4 */ lbz r0, 0x2b4(r30) +/* 8022EEE0 0022BE40 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8022EEE4 0022BE44 41 82 01 30 */ beq lbl_8022F014 +/* 8022EEE8 0022BE48 7F C3 F3 78 */ mr r3, r30 +/* 8022EEEC 0022BE4C 4B EE C4 8D */ bl Stop__13CPhysicsActorFv +/* 8022EEF0 0022BE50 80 7E 02 A0 */ lwz r3, 0x2a0(r30) +/* 8022EEF4 0022BE54 38 81 00 74 */ addi r4, r1, 0x74 +/* 8022EEF8 0022BE58 81 83 00 00 */ lwz r12, 0(r3) +/* 8022EEFC 0022BE5C 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 8022EF00 0022BE60 7D 89 03 A6 */ mtctr r12 +/* 8022EF04 0022BE64 4E 80 04 21 */ bctrl +/* 8022EF08 0022BE68 80 7E 02 A0 */ lwz r3, 0x2a0(r30) +/* 8022EF0C 0022BE6C 38 81 00 38 */ addi r4, r1, 0x38 +/* 8022EF10 0022BE70 81 83 00 00 */ lwz r12, 0(r3) +/* 8022EF14 0022BE74 81 8C 00 20 */ lwz r12, 0x20(r12) +/* 8022EF18 0022BE78 7D 89 03 A6 */ mtctr r12 +/* 8022EF1C 0022BE7C 4E 80 04 21 */ bctrl +/* 8022EF20 0022BE80 80 7E 02 A0 */ lwz r3, 0x2a0(r30) +/* 8022EF24 0022BE84 38 81 00 2C */ addi r4, r1, 0x2c +/* 8022EF28 0022BE88 81 83 00 00 */ lwz r12, 0(r3) +/* 8022EF2C 0022BE8C 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 8022EF30 0022BE90 7D 89 03 A6 */ mtctr r12 +/* 8022EF34 0022BE94 4E 80 04 21 */ bctrl +/* 8022EF38 0022BE98 80 7E 02 A0 */ lwz r3, 0x2a0(r30) +/* 8022EF3C 0022BE9C FC 20 F8 90 */ fmr f1, f31 +/* 8022EF40 0022BEA0 81 83 00 00 */ lwz r12, 0(r3) +/* 8022EF44 0022BEA4 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8022EF48 0022BEA8 7D 89 03 A6 */ mtctr r12 +/* 8022EF4C 0022BEAC 4E 80 04 21 */ bctrl +/* 8022EF50 0022BEB0 80 7E 02 A4 */ lwz r3, 0x2a4(r30) +/* 8022EF54 0022BEB4 38 81 00 74 */ addi r4, r1, 0x74 +/* 8022EF58 0022BEB8 81 83 00 00 */ lwz r12, 0(r3) +/* 8022EF5C 0022BEBC 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 8022EF60 0022BEC0 7D 89 03 A6 */ mtctr r12 +/* 8022EF64 0022BEC4 4E 80 04 21 */ bctrl +/* 8022EF68 0022BEC8 80 7E 02 A4 */ lwz r3, 0x2a4(r30) +/* 8022EF6C 0022BECC 38 81 00 38 */ addi r4, r1, 0x38 +/* 8022EF70 0022BED0 81 83 00 00 */ lwz r12, 0(r3) +/* 8022EF74 0022BED4 81 8C 00 20 */ lwz r12, 0x20(r12) +/* 8022EF78 0022BED8 7D 89 03 A6 */ mtctr r12 +/* 8022EF7C 0022BEDC 4E 80 04 21 */ bctrl +/* 8022EF80 0022BEE0 80 7E 02 A4 */ lwz r3, 0x2a4(r30) +/* 8022EF84 0022BEE4 38 81 00 2C */ addi r4, r1, 0x2c +/* 8022EF88 0022BEE8 81 83 00 00 */ lwz r12, 0(r3) +/* 8022EF8C 0022BEEC 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 8022EF90 0022BEF0 7D 89 03 A6 */ mtctr r12 +/* 8022EF94 0022BEF4 4E 80 04 21 */ bctrl +/* 8022EF98 0022BEF8 80 7E 02 A4 */ lwz r3, 0x2a4(r30) +/* 8022EF9C 0022BEFC FC 20 F8 90 */ fmr f1, f31 +/* 8022EFA0 0022BF00 81 83 00 00 */ lwz r12, 0(r3) +/* 8022EFA4 0022BF04 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8022EFA8 0022BF08 7D 89 03 A6 */ mtctr r12 +/* 8022EFAC 0022BF0C 4E 80 04 21 */ bctrl +/* 8022EFB0 0022BF10 80 7E 02 A8 */ lwz r3, 0x2a8(r30) +/* 8022EFB4 0022BF14 38 81 00 74 */ addi r4, r1, 0x74 +/* 8022EFB8 0022BF18 81 83 00 00 */ lwz r12, 0(r3) +/* 8022EFBC 0022BF1C 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 8022EFC0 0022BF20 7D 89 03 A6 */ mtctr r12 +/* 8022EFC4 0022BF24 4E 80 04 21 */ bctrl +/* 8022EFC8 0022BF28 80 7E 02 A8 */ lwz r3, 0x2a8(r30) +/* 8022EFCC 0022BF2C 38 81 00 38 */ addi r4, r1, 0x38 +/* 8022EFD0 0022BF30 81 83 00 00 */ lwz r12, 0(r3) +/* 8022EFD4 0022BF34 81 8C 00 20 */ lwz r12, 0x20(r12) +/* 8022EFD8 0022BF38 7D 89 03 A6 */ mtctr r12 +/* 8022EFDC 0022BF3C 4E 80 04 21 */ bctrl +/* 8022EFE0 0022BF40 80 7E 02 A8 */ lwz r3, 0x2a8(r30) +/* 8022EFE4 0022BF44 38 81 00 2C */ addi r4, r1, 0x2c +/* 8022EFE8 0022BF48 81 83 00 00 */ lwz r12, 0(r3) +/* 8022EFEC 0022BF4C 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 8022EFF0 0022BF50 7D 89 03 A6 */ mtctr r12 +/* 8022EFF4 0022BF54 4E 80 04 21 */ bctrl +/* 8022EFF8 0022BF58 80 7E 02 A8 */ lwz r3, 0x2a8(r30) +/* 8022EFFC 0022BF5C FC 20 F8 90 */ fmr f1, f31 +/* 8022F000 0022BF60 81 83 00 00 */ lwz r12, 0(r3) +/* 8022F004 0022BF64 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8022F008 0022BF68 7D 89 03 A6 */ mtctr r12 +/* 8022F00C 0022BF6C 4E 80 04 21 */ bctrl +/* 8022F010 0022BF70 48 00 00 64 */ b lbl_8022F074 +lbl_8022F014: +/* 8022F014 0022BF74 80 7E 02 AC */ lwz r3, 0x2ac(r30) +/* 8022F018 0022BF78 38 81 00 74 */ addi r4, r1, 0x74 +/* 8022F01C 0022BF7C 81 83 00 00 */ lwz r12, 0(r3) +/* 8022F020 0022BF80 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 8022F024 0022BF84 7D 89 03 A6 */ mtctr r12 +/* 8022F028 0022BF88 4E 80 04 21 */ bctrl +/* 8022F02C 0022BF8C 80 7E 02 AC */ lwz r3, 0x2ac(r30) +/* 8022F030 0022BF90 38 81 00 38 */ addi r4, r1, 0x38 +/* 8022F034 0022BF94 81 83 00 00 */ lwz r12, 0(r3) +/* 8022F038 0022BF98 81 8C 00 20 */ lwz r12, 0x20(r12) +/* 8022F03C 0022BF9C 7D 89 03 A6 */ mtctr r12 +/* 8022F040 0022BFA0 4E 80 04 21 */ bctrl +/* 8022F044 0022BFA4 80 7E 02 AC */ lwz r3, 0x2ac(r30) +/* 8022F048 0022BFA8 38 81 00 2C */ addi r4, r1, 0x2c +/* 8022F04C 0022BFAC 81 83 00 00 */ lwz r12, 0(r3) +/* 8022F050 0022BFB0 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 8022F054 0022BFB4 7D 89 03 A6 */ mtctr r12 +/* 8022F058 0022BFB8 4E 80 04 21 */ bctrl +/* 8022F05C 0022BFBC 80 7E 02 AC */ lwz r3, 0x2ac(r30) +/* 8022F060 0022BFC0 FC 20 F8 90 */ fmr f1, f31 +/* 8022F064 0022BFC4 81 83 00 00 */ lwz r12, 0(r3) +/* 8022F068 0022BFC8 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8022F06C 0022BFCC 7D 89 03 A6 */ mtctr r12 +/* 8022F070 0022BFD0 4E 80 04 21 */ bctrl +lbl_8022F074: +/* 8022F074 0022BFD4 C0 3E 02 9C */ lfs f1, 0x29c(r30) +/* 8022F078 0022BFD8 C0 02 B6 44 */ lfs f0, lbl_805AD364@sda21(r2) +/* 8022F07C 0022BFDC EC 21 F8 2A */ fadds f1, f1, f31 +/* 8022F080 0022BFE0 D0 3E 02 9C */ stfs f1, 0x29c(r30) +/* 8022F084 0022BFE4 C0 3E 02 9C */ lfs f1, 0x29c(r30) +/* 8022F088 0022BFE8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8022F08C 0022BFEC 40 81 00 14 */ ble lbl_8022F0A0 +/* 8022F090 0022BFF0 88 1E 02 B4 */ lbz r0, 0x2b4(r30) +/* 8022F094 0022BFF4 38 60 00 01 */ li r3, 1 +/* 8022F098 0022BFF8 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 8022F09C 0022BFFC 98 1E 02 B4 */ stb r0, 0x2b4(r30) +lbl_8022F0A0: +/* 8022F0A0 0022C000 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8022F0A4 0022C004 48 05 5D 3D */ bl GetEyeHeight__7CPlayerCFv +/* 8022F0A8 0022C008 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8022F0AC 0022C00C C0 02 B6 48 */ lfs f0, lbl_805AD368@sda21(r2) +/* 8022F0B0 0022C010 C0 63 00 50 */ lfs f3, 0x50(r3) +/* 8022F0B4 0022C014 C0 A2 B6 3C */ lfs f5, lbl_805AD35C@sda21(r2) +/* 8022F0B8 0022C018 EC C0 00 72 */ fmuls f6, f0, f1 +/* 8022F0BC 0022C01C C0 03 00 40 */ lfs f0, 0x40(r3) +/* 8022F0C0 0022C020 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 8022F0C4 0022C024 EC 83 28 2A */ fadds f4, f3, f5 +/* 8022F0C8 0022C028 C0 61 00 3C */ lfs f3, 0x3c(r1) +/* 8022F0CC 0022C02C EC 20 28 2A */ fadds f1, f0, f5 +/* 8022F0D0 0022C030 C0 01 00 38 */ lfs f0, 0x38(r1) +/* 8022F0D4 0022C034 EC 42 30 2A */ fadds f2, f2, f6 +/* 8022F0D8 0022C038 EC A4 18 28 */ fsubs f5, f4, f3 +/* 8022F0DC 0022C03C EC 01 00 28 */ fsubs f0, f1, f0 +/* 8022F0E0 0022C040 C0 21 00 40 */ lfs f1, 0x40(r1) +/* 8022F0E4 0022C044 C0 DE 02 B0 */ lfs f6, 0x2b0(r30) +/* 8022F0E8 0022C048 EC 82 08 28 */ fsubs f4, f2, f1 +/* 8022F0EC 0022C04C D0 A1 00 18 */ stfs f5, 0x18(r1) +/* 8022F0F0 0022C050 FC 40 00 18 */ frsp f2, f0 +/* 8022F0F4 0022C054 FC 20 28 18 */ frsp f1, f5 +/* 8022F0F8 0022C058 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 8022F0FC 0022C05C FC 60 20 18 */ frsp f3, f4 +/* 8022F100 0022C060 EC 42 00 B2 */ fmuls f2, f2, f2 +/* 8022F104 0022C064 D0 81 00 1C */ stfs f4, 0x1c(r1) +/* 8022F108 0022C068 EC 21 00 72 */ fmuls f1, f1, f1 +/* 8022F10C 0022C06C EC 63 00 F2 */ fmuls f3, f3, f3 +/* 8022F110 0022C070 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 8022F114 0022C074 EC 06 01 B2 */ fmuls f0, f6, f6 +/* 8022F118 0022C078 EC 22 08 2A */ fadds f1, f2, f1 +/* 8022F11C 0022C07C D0 A1 00 24 */ stfs f5, 0x24(r1) +/* 8022F120 0022C080 D0 81 00 28 */ stfs f4, 0x28(r1) +/* 8022F124 0022C084 EC 23 08 2A */ fadds f1, f3, f1 +/* 8022F128 0022C088 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8022F12C 0022C08C 40 80 00 1C */ bge lbl_8022F148 +/* 8022F130 0022C090 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8022F134 0022C094 7F C3 F3 78 */ mr r3, r30 +/* 8022F138 0022C098 7F E4 FB 78 */ mr r4, r31 +/* 8022F13C 0022C09C 38 A1 00 10 */ addi r5, r1, 0x10 +/* 8022F140 0022C0A0 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8022F144 0022C0A4 4B FF F2 E1 */ bl sub_8022e424 +lbl_8022F148: +/* 8022F148 0022C0A8 80 7E 02 A0 */ lwz r3, 0x2a0(r30) +/* 8022F14C 0022C0AC 81 83 00 00 */ lwz r12, 0(r3) +/* 8022F150 0022C0B0 81 8C 00 58 */ lwz r12, 0x58(r12) +/* 8022F154 0022C0B4 7D 89 03 A6 */ mtctr r12 +/* 8022F158 0022C0B8 4E 80 04 21 */ bctrl +/* 8022F15C 0022C0BC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022F160 0022C0C0 41 82 00 54 */ beq lbl_8022F1B4 +/* 8022F164 0022C0C4 80 7E 02 A4 */ lwz r3, 0x2a4(r30) +/* 8022F168 0022C0C8 81 83 00 00 */ lwz r12, 0(r3) +/* 8022F16C 0022C0CC 81 8C 00 58 */ lwz r12, 0x58(r12) +/* 8022F170 0022C0D0 7D 89 03 A6 */ mtctr r12 +/* 8022F174 0022C0D4 4E 80 04 21 */ bctrl +/* 8022F178 0022C0D8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022F17C 0022C0DC 41 82 00 38 */ beq lbl_8022F1B4 +/* 8022F180 0022C0E0 80 7E 02 A8 */ lwz r3, 0x2a8(r30) +/* 8022F184 0022C0E4 81 83 00 00 */ lwz r12, 0(r3) +/* 8022F188 0022C0E8 81 8C 00 58 */ lwz r12, 0x58(r12) +/* 8022F18C 0022C0EC 7D 89 03 A6 */ mtctr r12 +/* 8022F190 0022C0F0 4E 80 04 21 */ bctrl +/* 8022F194 0022C0F4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022F198 0022C0F8 41 82 00 1C */ beq lbl_8022F1B4 +/* 8022F19C 0022C0FC A0 1E 00 08 */ lhz r0, 8(r30) +/* 8022F1A0 0022C100 7F E3 FB 78 */ mr r3, r31 +/* 8022F1A4 0022C104 38 81 00 0C */ addi r4, r1, 0xc +/* 8022F1A8 0022C108 B0 01 00 08 */ sth r0, 8(r1) +/* 8022F1AC 0022C10C B0 01 00 0C */ sth r0, 0xc(r1) +/* 8022F1B0 0022C110 4B E1 D0 BD */ bl FreeScriptObject__13CStateManagerF9TUniqueId +lbl_8022F1B4: +/* 8022F1B4 0022C114 E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0 +/* 8022F1B8 0022C118 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 8022F1BC 0022C11C CB E1 00 B0 */ lfd f31, 0xb0(r1) +/* 8022F1C0 0022C120 83 E1 00 AC */ lwz r31, 0xac(r1) +/* 8022F1C4 0022C124 83 C1 00 A8 */ lwz r30, 0xa8(r1) +/* 8022F1C8 0022C128 7C 08 03 A6 */ mtlr r0 +/* 8022F1CC 0022C12C 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 8022F1D0 0022C130 4E 80 00 20 */ blr + +.global Accept__14CBouncyGrenadeFR8IVisitor +Accept__14CBouncyGrenadeFR8IVisitor: +/* 8022F1D4 0022C134 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8022F1D8 0022C138 7C 08 02 A6 */ mflr r0 +/* 8022F1DC 0022C13C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8022F1E0 0022C140 7C 60 1B 78 */ mr r0, r3 +/* 8022F1E4 0022C144 7C 83 23 78 */ mr r3, r4 +/* 8022F1E8 0022C148 81 84 00 00 */ lwz r12, 0(r4) +/* 8022F1EC 0022C14C 7C 04 03 78 */ mr r4, r0 +/* 8022F1F0 0022C150 81 8C 00 50 */ lwz r12, 0x50(r12) +/* 8022F1F4 0022C154 7D 89 03 A6 */ mtctr r12 +/* 8022F1F8 0022C158 4E 80 04 21 */ bctrl +/* 8022F1FC 0022C15C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8022F200 0022C160 7C 08 03 A6 */ mtlr r0 +/* 8022F204 0022C164 38 21 00 10 */ addi r1, r1, 0x10 +/* 8022F208 0022C168 4E 80 00 20 */ blr + +.global __ct__14CBouncyGrenade +__ct__14CBouncyGrenade: +/* 8022F20C 0022C16C 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 8022F210 0022C170 7C 08 02 A6 */ mflr r0 +/* 8022F214 0022C174 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 8022F218 0022C178 DB E1 00 E0 */ stfd f31, 0xe0(r1) +/* 8022F21C 0022C17C F3 E1 00 E8 */ psq_st f31, 232(r1), 0, qr0 +/* 8022F220 0022C180 DB C1 00 D0 */ stfd f30, 0xd0(r1) +/* 8022F224 0022C184 F3 C1 00 D8 */ psq_st f30, 216(r1), 0, qr0 +/* 8022F228 0022C188 BE C1 00 A8 */ stmw r22, 0xa8(r1) +/* 8022F22C 0022C18C FF C0 08 90 */ fmr f30, f1 +/* 8022F230 0022C190 83 E1 00 F8 */ lwz r31, 0xf8(r1) +/* 8022F234 0022C194 FF E0 10 90 */ fmr f31, f2 +/* 8022F238 0022C198 7C 77 1B 78 */ mr r23, r3 +/* 8022F23C 0022C19C 7C 98 23 78 */ mr r24, r4 +/* 8022F240 0022C1A0 7C B9 2B 78 */ mr r25, r5 +/* 8022F244 0022C1A4 7C DA 33 78 */ mr r26, r6 +/* 8022F248 0022C1A8 7C FB 3B 78 */ mr r27, r7 +/* 8022F24C 0022C1AC 7D 1C 43 78 */ mr r28, r8 +/* 8022F250 0022C1B0 7D 3D 4B 78 */ mr r29, r9 +/* 8022F254 0022C1B4 7D 5E 53 78 */ mr r30, r10 +/* 8022F258 0022C1B8 4B DE C2 DD */ bl Identity__10CAxisAngleFv +/* 8022F25C 0022C1BC 7C 76 1B 78 */ mr r22, r3 +/* 8022F260 0022C1C0 4B DE C2 D5 */ bl Identity__10CAxisAngleFv +/* 8022F264 0022C1C4 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8022F268 0022C1C8 C4 44 66 A0 */ lfsu f2, skZero3f@l(r4) +/* 8022F26C 0022C1CC C0 3F 00 00 */ lfs f1, 0(r31) +/* 8022F270 0022C1D0 38 00 00 00 */ li r0, 0 +/* 8022F274 0022C1D4 C0 64 00 04 */ lfs f3, 4(r4) +/* 8022F278 0022C1D8 C0 84 00 08 */ lfs f4, 8(r4) +/* 8022F27C 0022C1DC 38 80 00 01 */ li r4, 1 +/* 8022F280 0022C1E0 D0 41 00 68 */ stfs f2, 0x68(r1) +/* 8022F284 0022C1E4 80 AD 95 BC */ lwz r5, lbl_805A817C@sda21(r13) +/* 8022F288 0022C1E8 D0 61 00 6C */ stfs f3, 0x6c(r1) +/* 8022F28C 0022C1EC D0 81 00 70 */ stfs f4, 0x70(r1) +/* 8022F290 0022C1F0 C0 03 00 00 */ lfs f0, 0(r3) +/* 8022F294 0022C1F4 D0 01 00 74 */ stfs f0, 0x74(r1) +/* 8022F298 0022C1F8 C0 03 00 04 */ lfs f0, 4(r3) +/* 8022F29C 0022C1FC D0 01 00 78 */ stfs f0, 0x78(r1) +/* 8022F2A0 0022C200 C0 03 00 08 */ lfs f0, 8(r3) +/* 8022F2A4 0022C204 38 60 00 00 */ li r3, 0 +/* 8022F2A8 0022C208 D0 01 00 7C */ stfs f0, 0x7c(r1) +/* 8022F2AC 0022C20C D0 41 00 80 */ stfs f2, 0x80(r1) +/* 8022F2B0 0022C210 D0 61 00 84 */ stfs f3, 0x84(r1) +/* 8022F2B4 0022C214 D0 81 00 88 */ stfs f4, 0x88(r1) +/* 8022F2B8 0022C218 C0 16 00 00 */ lfs f0, 0(r22) +/* 8022F2BC 0022C21C D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 8022F2C0 0022C220 C0 16 00 04 */ lfs f0, 4(r22) +/* 8022F2C4 0022C224 D0 01 00 90 */ stfs f0, 0x90(r1) +/* 8022F2C8 0022C228 C0 16 00 08 */ lfs f0, 8(r22) +/* 8022F2CC 0022C22C D0 01 00 94 */ stfs f0, 0x94(r1) +/* 8022F2D0 0022C230 D0 21 00 98 */ stfs f1, 0x98(r1) +/* 8022F2D4 0022C234 90 01 00 24 */ stw r0, 0x24(r1) +/* 8022F2D8 0022C238 90 01 00 20 */ stw r0, 0x20(r1) +/* 8022F2DC 0022C23C 48 15 AC 19 */ bl __shl2i +/* 8022F2E0 0022C240 80 01 00 20 */ lwz r0, 0x20(r1) +/* 8022F2E4 0022C244 80 C1 00 24 */ lwz r6, 0x24(r1) +/* 8022F2E8 0022C248 7C 00 1B 78 */ or r0, r0, r3 +/* 8022F2EC 0022C24C 80 AD 95 C0 */ lwz r5, lbl_805A8180@sda21(r13) +/* 8022F2F0 0022C250 7C C4 23 78 */ or r4, r6, r4 +/* 8022F2F4 0022C254 90 01 00 20 */ stw r0, 0x20(r1) +/* 8022F2F8 0022C258 38 60 00 00 */ li r3, 0 +/* 8022F2FC 0022C25C 90 81 00 24 */ stw r4, 0x24(r1) +/* 8022F300 0022C260 38 80 00 01 */ li r4, 1 +/* 8022F304 0022C264 48 15 AB F1 */ bl __shl2i +/* 8022F308 0022C268 80 01 00 20 */ lwz r0, 0x20(r1) +/* 8022F30C 0022C26C 80 A1 00 24 */ lwz r5, 0x24(r1) +/* 8022F310 0022C270 7C 03 1B 78 */ or r3, r0, r3 +/* 8022F314 0022C274 A0 18 00 00 */ lhz r0, 0(r24) +/* 8022F318 0022C278 7C A5 23 78 */ or r5, r5, r4 +/* 8022F31C 0022C27C 90 61 00 20 */ stw r3, 0x20(r1) +/* 8022F320 0022C280 7F 84 E3 78 */ mr r4, r28 +/* 8022F324 0022C284 38 61 00 50 */ addi r3, r1, 0x50 +/* 8022F328 0022C288 90 A1 00 24 */ stw r5, 0x24(r1) +/* 8022F32C 0022C28C B0 01 00 18 */ sth r0, 0x18(r1) +/* 8022F330 0022C290 4B EE 62 95 */ bl GetBounds__10CModelDataCFv +/* 8022F334 0022C294 38 61 00 50 */ addi r3, r1, 0x50 +/* 8022F338 0022C298 38 01 00 68 */ addi r0, r1, 0x68 +/* 8022F33C 0022C29C 90 61 00 08 */ stw r3, 8(r1) +/* 8022F340 0022C2A0 7E E3 BB 78 */ mr r3, r23 +/* 8022F344 0022C2A4 C0 22 B6 44 */ lfs f1, lbl_805AD364@sda21(r2) +/* 8022F348 0022C2A8 7F 26 CB 78 */ mr r6, r25 +/* 8022F34C 0022C2AC 90 01 00 0C */ stw r0, 0xc(r1) +/* 8022F350 0022C2B0 7F 47 D3 78 */ mr r7, r26 +/* 8022F354 0022C2B4 C0 42 B6 4C */ lfs f2, lbl_805AD36C@sda21(r2) +/* 8022F358 0022C2B8 7F 68 DB 78 */ mr r8, r27 +/* 8022F35C 0022C2BC 93 A1 00 10 */ stw r29, 0x10(r1) +/* 8022F360 0022C2C0 7F 89 E3 78 */ mr r9, r28 +/* 8022F364 0022C2C4 38 81 00 18 */ addi r4, r1, 0x18 +/* 8022F368 0022C2C8 39 41 00 20 */ addi r10, r1, 0x20 +/* 8022F36C 0022C2CC 38 A0 00 01 */ li r5, 1 +/* 8022F370 0022C2D0 4B EE D1 41 */ bl "__ct__13CPhysicsActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC6CAABoxRC10SMoverDataRC16CActorParametersff" +/* 8022F374 0022C2D4 3C 60 80 3E */ lis r3, lbl_803E7ED0@ha +/* 8022F378 0022C2D8 C0 02 B6 3C */ lfs f0, lbl_805AD35C@sda21(r2) +/* 8022F37C 0022C2DC 38 03 7E D0 */ addi r0, r3, lbl_803E7ED0@l +/* 8022F380 0022C2E0 90 17 00 00 */ stw r0, 0(r23) +/* 8022F384 0022C2E4 C0 3F 00 00 */ lfs f1, 0(r31) +/* 8022F388 0022C2E8 D0 37 02 58 */ stfs f1, 0x258(r23) +/* 8022F38C 0022C2EC C0 3F 00 04 */ lfs f1, 4(r31) +/* 8022F390 0022C2F0 D0 37 02 5C */ stfs f1, 0x25c(r23) +/* 8022F394 0022C2F4 80 1F 00 08 */ lwz r0, 8(r31) +/* 8022F398 0022C2F8 90 17 02 60 */ stw r0, 0x260(r23) +/* 8022F39C 0022C2FC 88 1F 00 0C */ lbz r0, 0xc(r31) +/* 8022F3A0 0022C300 98 17 02 64 */ stb r0, 0x264(r23) +/* 8022F3A4 0022C304 C0 3F 00 10 */ lfs f1, 0x10(r31) +/* 8022F3A8 0022C308 D0 37 02 68 */ stfs f1, 0x268(r23) +/* 8022F3AC 0022C30C C0 3F 00 14 */ lfs f1, 0x14(r31) +/* 8022F3B0 0022C310 D0 37 02 6C */ stfs f1, 0x26c(r23) +/* 8022F3B4 0022C314 C0 3F 00 18 */ lfs f1, 0x18(r31) +/* 8022F3B8 0022C318 D0 37 02 70 */ stfs f1, 0x270(r23) +/* 8022F3BC 0022C31C C0 3F 00 1C */ lfs f1, 0x1c(r31) +/* 8022F3C0 0022C320 D0 37 02 74 */ stfs f1, 0x274(r23) +/* 8022F3C4 0022C324 88 1F 00 20 */ lbz r0, 0x20(r31) +/* 8022F3C8 0022C328 98 17 02 78 */ stb r0, 0x278(r23) +/* 8022F3CC 0022C32C 80 1F 00 24 */ lwz r0, 0x24(r31) +/* 8022F3D0 0022C330 90 17 02 7C */ stw r0, 0x27c(r23) +/* 8022F3D4 0022C334 80 1F 00 28 */ lwz r0, 0x28(r31) +/* 8022F3D8 0022C338 90 17 02 80 */ stw r0, 0x280(r23) +/* 8022F3DC 0022C33C 80 1F 00 2C */ lwz r0, 0x2c(r31) +/* 8022F3E0 0022C340 90 17 02 84 */ stw r0, 0x284(r23) +/* 8022F3E4 0022C344 80 1F 00 30 */ lwz r0, 0x30(r31) +/* 8022F3E8 0022C348 90 17 02 88 */ stw r0, 0x288(r23) +/* 8022F3EC 0022C34C 80 1F 00 34 */ lwz r0, 0x34(r31) +/* 8022F3F0 0022C350 90 17 02 8C */ stw r0, 0x28c(r23) +/* 8022F3F4 0022C354 A0 1F 00 38 */ lhz r0, 0x38(r31) +/* 8022F3F8 0022C358 B0 17 02 90 */ sth r0, 0x290(r23) +/* 8022F3FC 0022C35C A0 1F 00 3A */ lhz r0, 0x3a(r31) +/* 8022F400 0022C360 B0 17 02 92 */ sth r0, 0x292(r23) +/* 8022F404 0022C364 80 1F 00 34 */ lwz r0, 0x34(r31) +/* 8022F408 0022C368 90 17 02 94 */ stw r0, 0x294(r23) +/* 8022F40C 0022C36C A0 1E 00 00 */ lhz r0, 0(r30) +/* 8022F410 0022C370 B0 17 02 98 */ sth r0, 0x298(r23) +/* 8022F414 0022C374 D0 17 02 9C */ stfs f0, 0x29c(r23) +/* 8022F418 0022C378 80 7F 00 24 */ lwz r3, 0x24(r31) +/* 8022F41C 0022C37C 48 00 01 81 */ bl sub_8022f59c +/* 8022F420 0022C380 90 77 02 A0 */ stw r3, 0x2a0(r23) +/* 8022F424 0022C384 80 7F 00 28 */ lwz r3, 0x28(r31) +/* 8022F428 0022C388 48 00 01 75 */ bl sub_8022f59c +/* 8022F42C 0022C38C 90 77 02 A4 */ stw r3, 0x2a4(r23) +/* 8022F430 0022C390 80 7F 00 2C */ lwz r3, 0x2c(r31) +/* 8022F434 0022C394 48 00 01 69 */ bl sub_8022f59c +/* 8022F438 0022C398 90 77 02 A8 */ stw r3, 0x2a8(r23) +/* 8022F43C 0022C39C 80 7F 00 30 */ lwz r3, 0x30(r31) +/* 8022F440 0022C3A0 48 00 01 5D */ bl sub_8022f59c +/* 8022F444 0022C3A4 90 77 02 AC */ stw r3, 0x2ac(r23) +/* 8022F448 0022C3A8 38 A0 00 00 */ li r5, 0 +/* 8022F44C 0022C3AC C0 02 96 A0 */ lfs f0, lbl_805AB3C0@sda21(r2) +/* 8022F450 0022C3B0 7E E3 BB 78 */ mr r3, r23 +/* 8022F454 0022C3B4 D3 F7 02 B0 */ stfs f31, 0x2b0(r23) +/* 8022F458 0022C3B8 38 81 00 28 */ addi r4, r1, 0x28 +/* 8022F45C 0022C3BC FC 20 00 50 */ fneg f1, f0 +/* 8022F460 0022C3C0 C0 02 B6 3C */ lfs f0, lbl_805AD35C@sda21(r2) +/* 8022F464 0022C3C4 88 17 02 B4 */ lbz r0, 0x2b4(r23) +/* 8022F468 0022C3C8 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 8022F46C 0022C3CC 98 17 02 B4 */ stb r0, 0x2b4(r23) +/* 8022F470 0022C3D0 88 17 02 B4 */ lbz r0, 0x2b4(r23) +/* 8022F474 0022C3D4 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 8022F478 0022C3D8 98 17 02 B4 */ stb r0, 0x2b4(r23) +/* 8022F47C 0022C3DC C0 57 00 E8 */ lfs f2, 0xe8(r23) +/* 8022F480 0022C3E0 D0 17 01 50 */ stfs f0, 0x150(r23) +/* 8022F484 0022C3E4 EC 21 00 B2 */ fmuls f1, f1, f2 +/* 8022F488 0022C3E8 D0 17 01 54 */ stfs f0, 0x154(r23) +/* 8022F48C 0022C3EC D0 37 01 58 */ stfs f1, 0x158(r23) +/* 8022F490 0022C3F0 C0 5B 00 14 */ lfs f2, 0x14(r27) +/* 8022F494 0022C3F4 C0 3B 00 24 */ lfs f1, 0x24(r27) +/* 8022F498 0022C3F8 C0 1B 00 04 */ lfs f0, 4(r27) +/* 8022F49C 0022C3FC EC 5E 00 B2 */ fmuls f2, f30, f2 +/* 8022F4A0 0022C400 EC 3E 00 72 */ fmuls f1, f30, f1 +/* 8022F4A4 0022C404 EC 1E 00 32 */ fmuls f0, f30, f0 +/* 8022F4A8 0022C408 D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 8022F4AC 0022C40C D0 01 00 28 */ stfs f0, 0x28(r1) +/* 8022F4B0 0022C410 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 8022F4B4 0022C414 4B EE B7 ED */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f +/* 8022F4B8 0022C418 80 77 02 A0 */ lwz r3, 0x2a0(r23) +/* 8022F4BC 0022C41C 38 80 00 00 */ li r4, 0 +/* 8022F4C0 0022C420 81 83 00 00 */ lwz r12, 0(r3) +/* 8022F4C4 0022C424 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8022F4C8 0022C428 7D 89 03 A6 */ mtctr r12 +/* 8022F4CC 0022C42C 4E 80 04 21 */ bctrl +/* 8022F4D0 0022C430 80 77 02 A4 */ lwz r3, 0x2a4(r23) +/* 8022F4D4 0022C434 38 80 00 00 */ li r4, 0 +/* 8022F4D8 0022C438 81 83 00 00 */ lwz r12, 0(r3) +/* 8022F4DC 0022C43C 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8022F4E0 0022C440 7D 89 03 A6 */ mtctr r12 +/* 8022F4E4 0022C444 4E 80 04 21 */ bctrl +/* 8022F4E8 0022C448 80 77 02 A8 */ lwz r3, 0x2a8(r23) +/* 8022F4EC 0022C44C 38 80 00 00 */ li r4, 0 +/* 8022F4F0 0022C450 81 83 00 00 */ lwz r12, 0(r3) +/* 8022F4F4 0022C454 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8022F4F8 0022C458 7D 89 03 A6 */ mtctr r12 +/* 8022F4FC 0022C45C 4E 80 04 21 */ bctrl +/* 8022F500 0022C460 80 77 02 AC */ lwz r3, 0x2ac(r23) +/* 8022F504 0022C464 38 80 00 01 */ li r4, 1 +/* 8022F508 0022C468 81 83 00 00 */ lwz r12, 0(r3) +/* 8022F50C 0022C46C 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8022F510 0022C470 7D 89 03 A6 */ mtctr r12 +/* 8022F514 0022C474 4E 80 04 21 */ bctrl +/* 8022F518 0022C478 7E E3 BB 78 */ mr r3, r23 +/* 8022F51C 0022C47C 4B E2 43 A1 */ bl GetMaterialFilter__6CActorCFv +/* 8022F520 0022C480 80 AD 95 C4 */ lwz r5, lbl_805A8184@sda21(r13) +/* 8022F524 0022C484 38 80 00 01 */ li r4, 1 +/* 8022F528 0022C488 82 C3 00 08 */ lwz r22, 8(r3) +/* 8022F52C 0022C48C 83 03 00 0C */ lwz r24, 0xc(r3) +/* 8022F530 0022C490 38 60 00 00 */ li r3, 0 +/* 8022F534 0022C494 48 15 A9 C1 */ bl __shl2i +/* 8022F538 0022C498 7E D6 1B 78 */ or r22, r22, r3 +/* 8022F53C 0022C49C 7E E3 BB 78 */ mr r3, r23 +/* 8022F540 0022C4A0 7F 18 23 78 */ or r24, r24, r4 +/* 8022F544 0022C4A4 4B E2 43 79 */ bl GetMaterialFilter__6CActorCFv +/* 8022F548 0022C4A8 80 A3 00 00 */ lwz r5, 0(r3) +/* 8022F54C 0022C4AC 38 00 00 03 */ li r0, 3 +/* 8022F550 0022C4B0 80 C3 00 04 */ lwz r6, 4(r3) +/* 8022F554 0022C4B4 7E E3 BB 78 */ mr r3, r23 +/* 8022F558 0022C4B8 38 81 00 38 */ addi r4, r1, 0x38 +/* 8022F55C 0022C4BC 90 C1 00 3C */ stw r6, 0x3c(r1) +/* 8022F560 0022C4C0 90 A1 00 38 */ stw r5, 0x38(r1) +/* 8022F564 0022C4C4 93 01 00 44 */ stw r24, 0x44(r1) +/* 8022F568 0022C4C8 92 C1 00 40 */ stw r22, 0x40(r1) +/* 8022F56C 0022C4CC 90 01 00 48 */ stw r0, 0x48(r1) +/* 8022F570 0022C4D0 4B E2 43 31 */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter +/* 8022F574 0022C4D4 7E E3 BB 78 */ mr r3, r23 +/* 8022F578 0022C4D8 E3 E1 00 E8 */ psq_l f31, 232(r1), 0, qr0 +/* 8022F57C 0022C4DC CB E1 00 E0 */ lfd f31, 0xe0(r1) +/* 8022F580 0022C4E0 E3 C1 00 D8 */ psq_l f30, 216(r1), 0, qr0 +/* 8022F584 0022C4E4 CB C1 00 D0 */ lfd f30, 0xd0(r1) +/* 8022F588 0022C4E8 BA C1 00 A8 */ lmw r22, 0xa8(r1) +/* 8022F58C 0022C4EC 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 8022F590 0022C4F0 7C 08 03 A6 */ mtlr r0 +/* 8022F594 0022C4F4 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 8022F598 0022C4F8 4E 80 00 20 */ blr + +.global sub_8022f59c +sub_8022f59c: +/* 8022F59C 0022C4FC 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8022F5A0 0022C500 7C 08 02 A6 */ mflr r0 +/* 8022F5A4 0022C504 3C 80 50 41 */ lis r4, 0x50415254@ha +/* 8022F5A8 0022C508 90 01 00 44 */ stw r0, 0x44(r1) +/* 8022F5AC 0022C50C 38 04 52 54 */ addi r0, r4, 0x50415254@l +/* 8022F5B0 0022C510 38 A1 00 18 */ addi r5, r1, 0x18 +/* 8022F5B4 0022C514 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8022F5B8 0022C518 93 C1 00 38 */ stw r30, 0x38(r1) +/* 8022F5BC 0022C51C 90 61 00 1C */ stw r3, 0x1c(r1) +/* 8022F5C0 0022C520 38 61 00 10 */ addi r3, r1, 0x10 +/* 8022F5C4 0022C524 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8022F5C8 0022C528 90 01 00 18 */ stw r0, 0x18(r1) +/* 8022F5CC 0022C52C 81 84 00 00 */ lwz r12, 0(r4) +/* 8022F5D0 0022C530 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8022F5D4 0022C534 7D 89 03 A6 */ mtctr r12 +/* 8022F5D8 0022C538 4E 80 04 21 */ bctrl +/* 8022F5DC 0022C53C 3B E1 00 20 */ addi r31, r1, 0x20 +/* 8022F5E0 0022C540 38 81 00 10 */ addi r4, r1, 0x10 +/* 8022F5E4 0022C544 7F E3 FB 78 */ mr r3, r31 +/* 8022F5E8 0022C548 48 11 18 C1 */ bl __ct__6CTokenFRC6CToken +/* 8022F5EC 0022C54C 7F E3 FB 78 */ mr r3, r31 +/* 8022F5F0 0022C550 48 11 18 1D */ bl GetObj__6CTokenFv +/* 8022F5F4 0022C554 80 03 00 04 */ lwz r0, 4(r3) +/* 8022F5F8 0022C558 38 61 00 10 */ addi r3, r1, 0x10 +/* 8022F5FC 0022C55C 38 80 FF FF */ li r4, -1 +/* 8022F600 0022C560 90 01 00 28 */ stw r0, 0x28(r1) +/* 8022F604 0022C564 48 11 18 3D */ bl __dt__6CTokenFv +/* 8022F608 0022C568 3C 60 80 3D */ lis r3, lbl_803D3408@ha +/* 8022F60C 0022C56C 3B C0 00 00 */ li r30, 0 +/* 8022F610 0022C570 38 83 34 08 */ addi r4, r3, lbl_803D3408@l +/* 8022F614 0022C574 38 A0 00 00 */ li r5, 0 +/* 8022F618 0022C578 38 60 03 40 */ li r3, 0x340 +/* 8022F61C 0022C57C 48 0E 62 51 */ bl __nw__FUlPCcPCc +/* 8022F620 0022C580 7C 7F 1B 79 */ or. r31, r3, r3 +/* 8022F624 0022C584 41 82 00 2C */ beq lbl_8022F650 +/* 8022F628 0022C588 38 61 00 08 */ addi r3, r1, 8 +/* 8022F62C 0022C58C 38 81 00 20 */ addi r4, r1, 0x20 +/* 8022F630 0022C590 48 11 18 79 */ bl __ct__6CTokenFRC6CToken +/* 8022F634 0022C594 7F E3 FB 78 */ mr r3, r31 +/* 8022F638 0022C598 38 81 00 08 */ addi r4, r1, 8 +/* 8022F63C 0022C59C 3B C0 00 01 */ li r30, 1 +/* 8022F640 0022C5A0 38 A0 00 00 */ li r5, 0 +/* 8022F644 0022C5A4 38 C0 00 01 */ li r6, 1 +/* 8022F648 0022C5A8 48 0E FD 99 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 8022F64C 0022C5AC 7C 7F 1B 78 */ mr r31, r3 +lbl_8022F650: +/* 8022F650 0022C5B0 7F C0 07 75 */ extsb. r0, r30 +/* 8022F654 0022C5B4 41 82 00 10 */ beq lbl_8022F664 +/* 8022F658 0022C5B8 38 61 00 08 */ addi r3, r1, 8 +/* 8022F65C 0022C5BC 38 80 00 00 */ li r4, 0 +/* 8022F660 0022C5C0 48 11 17 E1 */ bl __dt__6CTokenFv +lbl_8022F664: +/* 8022F664 0022C5C4 38 61 00 20 */ addi r3, r1, 0x20 +/* 8022F668 0022C5C8 38 80 00 00 */ li r4, 0 +/* 8022F66C 0022C5CC 48 11 17 D5 */ bl __dt__6CTokenFv +/* 8022F670 0022C5D0 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8022F674 0022C5D4 7F E3 FB 78 */ mr r3, r31 +/* 8022F678 0022C5D8 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8022F67C 0022C5DC 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 8022F680 0022C5E0 7C 08 03 A6 */ mtlr r0 +/* 8022F684 0022C5E4 38 21 00 40 */ addi r1, r1, 0x40 +/* 8022F688 0022C5E8 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Enemies/CBurstFire.s b/asm/Kyoto_CWD/Enemies/CBurstFire.s new file mode 100644 index 00000000..029e34e4 --- /dev/null +++ b/asm/Kyoto_CWD/Enemies/CBurstFire.s @@ -0,0 +1,321 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global GetMaxZError__10CBurstFireCFv +GetMaxZError__10CBurstFireCFv: +/* 801AD120 001AA080 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 801AD124 001AA084 C0 23 01 24 */ lfs f1, 0x124(r3) +/* 801AD128 001AA088 4E 80 00 20 */ blr + +.global GetMaxXError__10CBurstFireCFv +GetMaxXError__10CBurstFireCFv: +/* 801AD12C 001AA08C 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 801AD130 001AA090 C0 42 A8 7C */ lfs f2, lbl_805AC59C@sda21(r2) +/* 801AD134 001AA094 C0 23 02 70 */ lfs f1, 0x270(r3) +/* 801AD138 001AA098 C0 02 A8 78 */ lfs f0, lbl_805AC598@sda21(r2) +/* 801AD13C 001AA09C EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 801AD140 001AA0A0 4E 80 00 20 */ blr + +.global GetDistanceCompensatedError__10CBurstFireCFff +GetDistanceCompensatedError__10CBurstFireCFff: +/* 801AD144 001AA0A4 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801AD148 001AA0A8 7C 08 02 A6 */ mflr r0 +/* 801AD14C 001AA0AC 90 01 00 44 */ stw r0, 0x44(r1) +/* 801AD150 001AA0B0 DB E1 00 30 */ stfd f31, 0x30(r1) +/* 801AD154 001AA0B4 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 801AD158 001AA0B8 DB C1 00 20 */ stfd f30, 0x20(r1) +/* 801AD15C 001AA0BC F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 +/* 801AD160 001AA0C0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801AD164 001AA0C4 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801AD168 001AA0C8 FF C0 08 90 */ fmr f30, f1 +/* 801AD16C 001AA0CC 7C 9F 23 78 */ mr r31, r4 +/* 801AD170 001AA0D0 FF E0 10 90 */ fmr f31, f2 +/* 801AD174 001AA0D4 7C 7E 1B 78 */ mr r30, r3 +/* 801AD178 001AA0D8 7F E3 FB 78 */ mr r3, r31 +/* 801AD17C 001AA0DC 4B FF FF B1 */ bl GetMaxXError__10CBurstFireCFv +/* 801AD180 001AA0E0 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 801AD184 001AA0E4 7F E3 FB 78 */ mr r3, r31 +/* 801AD188 001AA0E8 4B FF FF 99 */ bl GetMaxZError__10CBurstFireCFv +/* 801AD18C 001AA0EC EC 7E F8 24 */ fdivs f3, f30, f31 +/* 801AD190 001AA0F0 C0 41 00 14 */ lfs f2, 0x14(r1) +/* 801AD194 001AA0F4 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 801AD198 001AA0F8 EC 03 00 B2 */ fmuls f0, f3, f2 +/* 801AD19C 001AA0FC FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801AD1A0 001AA100 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801AD1A4 001AA104 40 80 00 0C */ bge lbl_801AD1B0 +/* 801AD1A8 001AA108 38 61 00 14 */ addi r3, r1, 0x14 +/* 801AD1AC 001AA10C 48 00 00 08 */ b lbl_801AD1B4 +lbl_801AD1B0: +/* 801AD1B0 001AA110 38 61 00 0C */ addi r3, r1, 0xc +lbl_801AD1B4: +/* 801AD1B4 001AA114 C0 41 00 10 */ lfs f2, 0x10(r1) +/* 801AD1B8 001AA118 C0 23 00 00 */ lfs f1, 0(r3) +/* 801AD1BC 001AA11C EC 03 00 B2 */ fmuls f0, f3, f2 +/* 801AD1C0 001AA120 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 801AD1C4 001AA124 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801AD1C8 001AA128 D0 01 00 08 */ stfs f0, 8(r1) +/* 801AD1CC 001AA12C 40 80 00 0C */ bge lbl_801AD1D8 +/* 801AD1D0 001AA130 38 61 00 10 */ addi r3, r1, 0x10 +/* 801AD1D4 001AA134 48 00 00 08 */ b lbl_801AD1DC +lbl_801AD1D8: +/* 801AD1D8 001AA138 38 61 00 08 */ addi r3, r1, 8 +lbl_801AD1DC: +/* 801AD1DC 001AA13C C0 43 00 00 */ lfs f2, 0(r3) +/* 801AD1E0 001AA140 7F C3 F3 78 */ mr r3, r30 +/* 801AD1E4 001AA144 C0 21 00 14 */ lfs f1, 0x14(r1) +/* 801AD1E8 001AA148 7F E4 FB 78 */ mr r4, r31 +/* 801AD1EC 001AA14C D0 41 00 10 */ stfs f2, 0x10(r1) +/* 801AD1F0 001AA150 48 00 00 2D */ bl GetError__10CBurstFireCFff +/* 801AD1F4 001AA154 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 801AD1F8 001AA158 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 801AD1FC 001AA15C E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 +/* 801AD200 001AA160 CB C1 00 20 */ lfd f30, 0x20(r1) +/* 801AD204 001AA164 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801AD208 001AA168 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801AD20C 001AA16C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801AD210 001AA170 7C 08 03 A6 */ mtlr r0 +/* 801AD214 001AA174 38 21 00 40 */ addi r1, r1, 0x40 +/* 801AD218 001AA178 4E 80 00 20 */ blr + +.global GetError__10CBurstFireCFff +GetError__10CBurstFireCFff: +/* 801AD21C 001AA17C 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 801AD220 001AA180 7C 08 02 A6 */ mflr r0 +/* 801AD224 001AA184 90 01 00 74 */ stw r0, 0x74(r1) +/* 801AD228 001AA188 DB E1 00 60 */ stfd f31, 0x60(r1) +/* 801AD22C 001AA18C F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 801AD230 001AA190 DB C1 00 50 */ stfd f30, 0x50(r1) +/* 801AD234 001AA194 F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 +/* 801AD238 001AA198 DB A1 00 40 */ stfd f29, 0x40(r1) +/* 801AD23C 001AA19C F3 A1 00 48 */ psq_st f29, 72(r1), 0, qr0 +/* 801AD240 001AA1A0 DB 81 00 30 */ stfd f28, 0x30(r1) +/* 801AD244 001AA1A4 F3 81 00 38 */ psq_st f28, 56(r1), 0, qr0 +/* 801AD248 001AA1A8 DB 61 00 20 */ stfd f27, 0x20(r1) +/* 801AD24C 001AA1AC F3 61 00 28 */ psq_st f27, 40(r1), 0, qr0 +/* 801AD250 001AA1B0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801AD254 001AA1B4 88 A4 00 14 */ lbz r5, 0x14(r4) +/* 801AD258 001AA1B8 3C C0 80 5A */ lis r6, skZero3f@ha +/* 801AD25C 001AA1BC C7 E6 66 A0 */ lfsu f31, skZero3f@l(r6) +/* 801AD260 001AA1C0 FF 60 08 90 */ fmr f27, f1 +/* 801AD264 001AA1C4 54 A0 CF FF */ rlwinm. r0, r5, 0x19, 0x1f, 0x1f +/* 801AD268 001AA1C8 FF 80 10 90 */ fmr f28, f2 +/* 801AD26C 001AA1CC C3 C6 00 04 */ lfs f30, 4(r6) +/* 801AD270 001AA1D0 7C 7F 1B 78 */ mr r31, r3 +/* 801AD274 001AA1D4 C0 06 00 08 */ lfs f0, 8(r6) +/* 801AD278 001AA1D8 41 82 00 94 */ beq lbl_801AD30C +/* 801AD27C 001AA1DC 80 64 00 18 */ lwz r3, 0x18(r4) +/* 801AD280 001AA1E0 28 03 00 00 */ cmplwi r3, 0 +/* 801AD284 001AA1E4 41 82 00 88 */ beq lbl_801AD30C +/* 801AD288 001AA1E8 80 84 00 04 */ lwz r4, 4(r4) +/* 801AD28C 001AA1EC 54 A0 D7 FF */ rlwinm. r0, r5, 0x1a, 0x1f, 0x1f +/* 801AD290 001AA1F0 38 63 00 04 */ addi r3, r3, 4 +/* 801AD294 001AA1F4 54 80 10 3A */ slwi r0, r4, 2 +/* 801AD298 001AA1F8 7C 03 00 2E */ lwzx r0, r3, r0 +/* 801AD29C 001AA1FC 41 82 00 2C */ beq lbl_801AD2C8 +/* 801AD2A0 001AA200 2C 00 00 04 */ cmpwi r0, 4 +/* 801AD2A4 001AA204 41 82 00 0C */ beq lbl_801AD2B0 +/* 801AD2A8 001AA208 2C 00 00 0C */ cmpwi r0, 0xc +/* 801AD2AC 001AA20C 40 82 00 1C */ bne lbl_801AD2C8 +lbl_801AD2B0: +/* 801AD2B0 001AA210 2C 04 00 00 */ cmpwi r4, 0 +/* 801AD2B4 001AA214 38 04 00 01 */ addi r0, r4, 1 +/* 801AD2B8 001AA218 40 81 00 08 */ ble lbl_801AD2C0 +/* 801AD2BC 001AA21C 38 04 FF FF */ addi r0, r4, -1 +lbl_801AD2C0: +/* 801AD2C0 001AA220 54 00 10 3A */ slwi r0, r0, 2 +/* 801AD2C4 001AA224 7C 03 00 2E */ lwzx r0, r3, r0 +lbl_801AD2C8: +/* 801AD2C8 001AA228 2C 00 00 00 */ cmpwi r0, 0 +/* 801AD2CC 001AA22C 40 81 00 40 */ ble lbl_801AD30C +/* 801AD2D0 001AA230 6C 03 80 00 */ xoris r3, r0, 0x8000 +/* 801AD2D4 001AA234 3C 00 43 30 */ lis r0, 0x4330 +/* 801AD2D8 001AA238 90 61 00 0C */ stw r3, 0xc(r1) +/* 801AD2DC 001AA23C C8 22 A8 88 */ lfd f1, lbl_805AC5A8@sda21(r2) +/* 801AD2E0 001AA240 90 01 00 08 */ stw r0, 8(r1) +/* 801AD2E4 001AA244 C0 42 A8 80 */ lfs f2, lbl_805AC5A0@sda21(r2) +/* 801AD2E8 001AA248 C8 01 00 08 */ lfd f0, 8(r1) +/* 801AD2EC 001AA24C EC 00 08 28 */ fsubs f0, f0, f1 +/* 801AD2F0 001AA250 EF A2 00 32 */ fmuls f29, f2, f0 +/* 801AD2F4 001AA254 FC 20 E8 90 */ fmr f1, f29 +/* 801AD2F8 001AA258 48 16 7A 4D */ bl FastCosR__5CMathFf +/* 801AD2FC 001AA25C EF FB 00 72 */ fmuls f31, f27, f1 +/* 801AD300 001AA260 FC 20 E8 90 */ fmr f1, f29 +/* 801AD304 001AA264 48 16 7A ED */ bl FastSinR__5CMathFf +/* 801AD308 001AA268 EC 1C 00 72 */ fmuls f0, f28, f1 +lbl_801AD30C: +/* 801AD30C 001AA26C D3 FF 00 00 */ stfs f31, 0(r31) +/* 801AD310 001AA270 D3 DF 00 04 */ stfs f30, 4(r31) +/* 801AD314 001AA274 D0 1F 00 08 */ stfs f0, 8(r31) +/* 801AD318 001AA278 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 801AD31C 001AA27C CB E1 00 60 */ lfd f31, 0x60(r1) +/* 801AD320 001AA280 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 +/* 801AD324 001AA284 CB C1 00 50 */ lfd f30, 0x50(r1) +/* 801AD328 001AA288 E3 A1 00 48 */ psq_l f29, 72(r1), 0, qr0 +/* 801AD32C 001AA28C CB A1 00 40 */ lfd f29, 0x40(r1) +/* 801AD330 001AA290 E3 81 00 38 */ psq_l f28, 56(r1), 0, qr0 +/* 801AD334 001AA294 CB 81 00 30 */ lfd f28, 0x30(r1) +/* 801AD338 001AA298 E3 61 00 28 */ psq_l f27, 40(r1), 0, qr0 +/* 801AD33C 001AA29C CB 61 00 20 */ lfd f27, 0x20(r1) +/* 801AD340 001AA2A0 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801AD344 001AA2A4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801AD348 001AA2A8 7C 08 03 A6 */ mtlr r0 +/* 801AD34C 001AA2AC 38 21 00 70 */ addi r1, r1, 0x70 +/* 801AD350 001AA2B0 4E 80 00 20 */ blr + +.global Update__10CBurstFireFR13CStateManagerf +Update__10CBurstFireFR13CStateManagerf: +/* 801AD354 001AA2B4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801AD358 001AA2B8 7C 08 02 A6 */ mflr r0 +/* 801AD35C 001AA2BC 38 A0 00 00 */ li r5, 0 +/* 801AD360 001AA2C0 90 01 00 14 */ stw r0, 0x14(r1) +/* 801AD364 001AA2C4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801AD368 001AA2C8 7C 7F 1B 78 */ mr r31, r3 +/* 801AD36C 001AA2CC 88 03 00 14 */ lbz r0, 0x14(r3) +/* 801AD370 001AA2D0 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 801AD374 001AA2D4 98 03 00 14 */ stb r0, 0x14(r3) +/* 801AD378 001AA2D8 80 03 00 18 */ lwz r0, 0x18(r3) +/* 801AD37C 001AA2DC 28 00 00 00 */ cmplwi r0, 0 +/* 801AD380 001AA2E0 41 82 00 90 */ beq lbl_801AD410 +/* 801AD384 001AA2E4 C0 5F 00 08 */ lfs f2, 8(r31) +/* 801AD388 001AA2E8 C0 02 A8 90 */ lfs f0, lbl_805AC5B0@sda21(r2) +/* 801AD38C 001AA2EC EC 22 08 28 */ fsubs f1, f2, f1 +/* 801AD390 001AA2F0 D0 3F 00 08 */ stfs f1, 8(r31) +/* 801AD394 001AA2F4 C0 3F 00 08 */ lfs f1, 8(r31) +/* 801AD398 001AA2F8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801AD39C 001AA2FC 40 80 00 74 */ bge lbl_801AD410 +/* 801AD3A0 001AA300 80 7F 00 04 */ lwz r3, 4(r31) +/* 801AD3A4 001AA304 38 03 00 01 */ addi r0, r3, 1 +/* 801AD3A8 001AA308 90 1F 00 04 */ stw r0, 4(r31) +/* 801AD3AC 001AA30C 80 1F 00 04 */ lwz r0, 4(r31) +/* 801AD3B0 001AA310 80 7F 00 18 */ lwz r3, 0x18(r31) +/* 801AD3B4 001AA314 54 00 10 3A */ slwi r0, r0, 2 +/* 801AD3B8 001AA318 7C 63 02 14 */ add r3, r3, r0 +/* 801AD3BC 001AA31C 80 03 00 04 */ lwz r0, 4(r3) +/* 801AD3C0 001AA320 2C 00 00 00 */ cmpwi r0, 0 +/* 801AD3C4 001AA324 40 81 00 48 */ ble lbl_801AD40C +/* 801AD3C8 001AA328 88 1F 00 14 */ lbz r0, 0x14(r31) +/* 801AD3CC 001AA32C 38 60 00 01 */ li r3, 1 +/* 801AD3D0 001AA330 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801AD3D4 001AA334 98 1F 00 14 */ stb r0, 0x14(r31) +/* 801AD3D8 001AA338 80 7F 00 18 */ lwz r3, 0x18(r31) +/* 801AD3DC 001AA33C C0 03 00 24 */ lfs f0, 0x24(r3) +/* 801AD3E0 001AA340 D0 1F 00 08 */ stfs f0, 8(r31) +/* 801AD3E4 001AA344 80 64 09 00 */ lwz r3, 0x900(r4) +/* 801AD3E8 001AA348 48 16 50 F5 */ bl Float__9CRandom16Fv +/* 801AD3EC 001AA34C C0 02 A8 94 */ lfs f0, lbl_805AC5B4@sda21(r2) +/* 801AD3F0 001AA350 80 7F 00 18 */ lwz r3, 0x18(r31) +/* 801AD3F4 001AA354 EC 41 00 28 */ fsubs f2, f1, f0 +/* 801AD3F8 001AA358 C0 1F 00 08 */ lfs f0, 8(r31) +/* 801AD3FC 001AA35C C0 23 00 28 */ lfs f1, 0x28(r3) +/* 801AD400 001AA360 EC 01 00 BA */ fmadds f0, f1, f2, f0 +/* 801AD404 001AA364 D0 1F 00 08 */ stfs f0, 8(r31) +/* 801AD408 001AA368 48 00 00 08 */ b lbl_801AD410 +lbl_801AD40C: +/* 801AD40C 001AA36C 90 BF 00 18 */ stw r5, 0x18(r31) +lbl_801AD410: +/* 801AD410 001AA370 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801AD414 001AA374 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801AD418 001AA378 7C 08 03 A6 */ mtlr r0 +/* 801AD41C 001AA37C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801AD420 001AA380 4E 80 00 20 */ blr + +.global Start__10CBurstFireFR13CStateManager +Start__10CBurstFireFR13CStateManager: +/* 801AD424 001AA384 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801AD428 001AA388 7C 08 02 A6 */ mflr r0 +/* 801AD42C 001AA38C 90 01 00 24 */ stw r0, 0x24(r1) +/* 801AD430 001AA390 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801AD434 001AA394 7C 7F 1B 78 */ mr r31, r3 +/* 801AD438 001AA398 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801AD43C 001AA39C 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801AD440 001AA3A0 3B A0 FF FF */ li r29, -1 +/* 801AD444 001AA3A4 80 03 00 00 */ lwz r0, 0(r3) +/* 801AD448 001AA3A8 80 63 00 10 */ lwz r3, 0x10(r3) +/* 801AD44C 001AA3AC 54 00 10 3A */ slwi r0, r0, 2 +/* 801AD450 001AA3B0 7C BF 02 14 */ add r5, r31, r0 +/* 801AD454 001AA3B4 2C 03 00 00 */ cmpwi r3, 0 +/* 801AD458 001AA3B8 83 C5 00 20 */ lwz r30, 0x20(r5) +/* 801AD45C 001AA3BC 38 03 FF FF */ addi r0, r3, -1 +/* 801AD460 001AA3C0 90 1F 00 10 */ stw r0, 0x10(r31) +/* 801AD464 001AA3C4 40 81 00 1C */ ble lbl_801AD480 +/* 801AD468 001AA3C8 80 9F 00 0C */ lwz r4, 0xc(r31) +/* 801AD46C 001AA3CC 54 83 0F FE */ srwi r3, r4, 0x1f +/* 801AD470 001AA3D0 38 03 FF FF */ addi r0, r3, -1 +/* 801AD474 001AA3D4 7C 80 00 38 */ and r0, r4, r0 +/* 801AD478 001AA3D8 7C 1D 03 78 */ mr r29, r0 +/* 801AD47C 001AA3DC 48 00 00 40 */ b lbl_801AD4BC +lbl_801AD480: +/* 801AD480 001AA3E0 80 64 09 00 */ lwz r3, 0x900(r4) +/* 801AD484 001AA3E4 38 80 00 00 */ li r4, 0 +/* 801AD488 001AA3E8 38 A0 00 64 */ li r5, 0x64 +/* 801AD48C 001AA3EC 48 16 51 09 */ bl Range__9CRandom16Fii +/* 801AD490 001AA3F0 38 80 00 00 */ li r4, 0 +lbl_801AD494: +/* 801AD494 001AA3F4 3B BD 00 01 */ addi r29, r29, 1 +/* 801AD498 001AA3F8 1C 1D 00 2C */ mulli r0, r29, 0x2c +/* 801AD49C 001AA3FC 7C 1E 00 2E */ lwzx r0, r30, r0 +/* 801AD4A0 001AA400 2C 00 00 00 */ cmpwi r0, 0 +/* 801AD4A4 001AA404 40 82 00 0C */ bne lbl_801AD4B0 +/* 801AD4A8 001AA408 38 80 00 64 */ li r4, 0x64 +/* 801AD4AC 001AA40C 3B BD FF FF */ addi r29, r29, -1 +lbl_801AD4B0: +/* 801AD4B0 001AA410 7C 84 02 14 */ add r4, r4, r0 +/* 801AD4B4 001AA414 7C 03 20 00 */ cmpw r3, r4 +/* 801AD4B8 001AA418 41 81 FF DC */ bgt lbl_801AD494 +lbl_801AD4BC: +/* 801AD4BC 001AA41C 1C 9D 00 2C */ mulli r4, r29, 0x2c +/* 801AD4C0 001AA420 38 00 FF FF */ li r0, -1 +/* 801AD4C4 001AA424 C0 02 A8 90 */ lfs f0, lbl_805AC5B0@sda21(r2) +/* 801AD4C8 001AA428 38 60 00 00 */ li r3, 0 +/* 801AD4CC 001AA42C 7C 9E 22 14 */ add r4, r30, r4 +/* 801AD4D0 001AA430 90 9F 00 18 */ stw r4, 0x18(r31) +/* 801AD4D4 001AA434 90 1F 00 04 */ stw r0, 4(r31) +/* 801AD4D8 001AA438 D0 1F 00 08 */ stfs f0, 8(r31) +/* 801AD4DC 001AA43C 88 1F 00 14 */ lbz r0, 0x14(r31) +/* 801AD4E0 001AA440 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801AD4E4 001AA444 98 1F 00 14 */ stb r0, 0x14(r31) +/* 801AD4E8 001AA448 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801AD4EC 001AA44C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801AD4F0 001AA450 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801AD4F4 001AA454 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801AD4F8 001AA458 7C 08 03 A6 */ mtlr r0 +/* 801AD4FC 001AA45C 38 21 00 20 */ addi r1, r1, 0x20 +/* 801AD500 001AA460 4E 80 00 20 */ blr + +.global __ct__10CBurstFireFPPC6SBursti +__ct__10CBurstFireFPPC6SBursti: +/* 801AD504 001AA464 38 00 FF FF */ li r0, -1 +/* 801AD508 001AA468 C0 02 A8 90 */ lfs f0, lbl_805AC5B0@sda21(r2) +/* 801AD50C 001AA46C 90 03 00 00 */ stw r0, 0(r3) +/* 801AD510 001AA470 38 C0 00 00 */ li r6, 0 +/* 801AD514 001AA474 38 E3 00 20 */ addi r7, r3, 0x20 +/* 801AD518 001AA478 90 03 00 04 */ stw r0, 4(r3) +/* 801AD51C 001AA47C D0 03 00 08 */ stfs f0, 8(r3) +/* 801AD520 001AA480 90 C3 00 0C */ stw r6, 0xc(r3) +/* 801AD524 001AA484 90 A3 00 10 */ stw r5, 0x10(r3) +/* 801AD528 001AA488 88 03 00 14 */ lbz r0, 0x14(r3) +/* 801AD52C 001AA48C 50 C0 3E 30 */ rlwimi r0, r6, 7, 0x18, 0x18 +/* 801AD530 001AA490 98 03 00 14 */ stb r0, 0x14(r3) +/* 801AD534 001AA494 88 03 00 14 */ lbz r0, 0x14(r3) +/* 801AD538 001AA498 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19 +/* 801AD53C 001AA49C 98 03 00 14 */ stb r0, 0x14(r3) +/* 801AD540 001AA4A0 90 C3 00 18 */ stw r6, 0x18(r3) +/* 801AD544 001AA4A4 90 C3 00 1C */ stw r6, 0x1c(r3) +/* 801AD548 001AA4A8 48 00 00 28 */ b lbl_801AD570 +lbl_801AD54C: +/* 801AD54C 001AA4AC 80 03 00 1C */ lwz r0, 0x1c(r3) +/* 801AD550 001AA4B0 54 00 10 3A */ slwi r0, r0, 2 +/* 801AD554 001AA4B4 7C A7 02 15 */ add. r5, r7, r0 +/* 801AD558 001AA4B8 41 82 00 08 */ beq lbl_801AD560 +/* 801AD55C 001AA4BC 90 C5 00 00 */ stw r6, 0(r5) +lbl_801AD560: +/* 801AD560 001AA4C0 80 A3 00 1C */ lwz r5, 0x1c(r3) +/* 801AD564 001AA4C4 38 84 00 04 */ addi r4, r4, 4 +/* 801AD568 001AA4C8 38 05 00 01 */ addi r0, r5, 1 +/* 801AD56C 001AA4CC 90 03 00 1C */ stw r0, 0x1c(r3) +lbl_801AD570: +/* 801AD570 001AA4D0 80 C4 00 00 */ lwz r6, 0(r4) +/* 801AD574 001AA4D4 28 06 00 00 */ cmplwi r6, 0 +/* 801AD578 001AA4D8 40 82 FF D4 */ bne lbl_801AD54C +/* 801AD57C 001AA4DC 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Enemies/CElitePirate.s b/asm/Kyoto_CWD/Enemies/CElitePirate.s new file mode 100644 index 00000000..58f4debf --- /dev/null +++ b/asm/Kyoto_CWD/Enemies/CElitePirate.s @@ -0,0 +1,7561 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global GetSearchPath__12CElitePirateFv +GetSearchPath__12CElitePirateFv: +/* 80227398 002242F8 38 63 07 D0 */ addi r3, r3, 0x7d0 +/* 8022739C 002242FC 4E 80 00 20 */ blr + +.global GetCollisionPrimitive__12CElitePirateCFv +GetCollisionPrimitive__12CElitePirateCFv: +/* 802273A0 00224300 38 63 07 38 */ addi r3, r3, 0x738 +/* 802273A4 00224304 4E 80 00 20 */ blr + +.global sub_802273a8 +sub_802273a8: +/* 802273A8 00224308 38 60 00 01 */ li r3, 1 +/* 802273AC 0022430C 4E 80 00 20 */ blr + +.global sub_802273b0 +sub_802273b0: +/* 802273B0 00224310 38 60 00 01 */ li r3, 1 +/* 802273B4 00224314 4E 80 00 20 */ blr + +.global sub_802273b8 +sub_802273b8: +/* 802273B8 00224318 A0 A4 06 F4 */ lhz r5, 0x6f4(r4) +/* 802273BC 0022431C 38 00 00 08 */ li r0, 8 +/* 802273C0 00224320 80 C4 06 F0 */ lwz r6, 0x6f0(r4) +/* 802273C4 00224324 80 E4 06 D0 */ lwz r7, 0x6d0(r4) +/* 802273C8 00224328 C0 42 B5 B8 */ lfs f2, lbl_805AD2D8@sda21(r2) +/* 802273CC 0022432C 90 03 00 00 */ stw r0, 0(r3) +/* 802273D0 00224330 C0 22 B5 BC */ lfs f1, lbl_805AD2DC@sda21(r2) +/* 802273D4 00224334 90 E3 00 04 */ stw r7, 4(r3) +/* 802273D8 00224338 C0 02 B5 C0 */ lfs f0, lbl_805AD2E0@sda21(r2) +/* 802273DC 0022433C 80 04 06 D4 */ lwz r0, 0x6d4(r4) +/* 802273E0 00224340 90 03 00 08 */ stw r0, 8(r3) +/* 802273E4 00224344 88 04 06 D8 */ lbz r0, 0x6d8(r4) +/* 802273E8 00224348 98 03 00 0C */ stb r0, 0xc(r3) +/* 802273EC 0022434C C0 64 06 DC */ lfs f3, 0x6dc(r4) +/* 802273F0 00224350 D0 63 00 10 */ stfs f3, 0x10(r3) +/* 802273F4 00224354 C0 64 06 E0 */ lfs f3, 0x6e0(r4) +/* 802273F8 00224358 D0 63 00 14 */ stfs f3, 0x14(r3) +/* 802273FC 0022435C C0 64 06 E4 */ lfs f3, 0x6e4(r4) +/* 80227400 00224360 D0 63 00 18 */ stfs f3, 0x18(r3) +/* 80227404 00224364 C0 64 06 E8 */ lfs f3, 0x6e8(r4) +/* 80227408 00224368 D0 63 00 1C */ stfs f3, 0x1c(r3) +/* 8022740C 0022436C 88 04 06 EC */ lbz r0, 0x6ec(r4) +/* 80227410 00224370 98 03 00 20 */ stb r0, 0x20(r3) +/* 80227414 00224374 D0 43 00 24 */ stfs f2, 0x24(r3) +/* 80227418 00224378 D0 23 00 28 */ stfs f1, 0x28(r3) +/* 8022741C 0022437C D0 03 00 2C */ stfs f0, 0x2c(r3) +/* 80227420 00224380 D0 43 00 30 */ stfs f2, 0x30(r3) +/* 80227424 00224384 90 C3 00 34 */ stw r6, 0x34(r3) +/* 80227428 00224388 B0 A3 00 38 */ sth r5, 0x38(r3) +/* 8022742C 0022438C 4E 80 00 20 */ blr + +.global sub_80227430 +sub_80227430: +/* 80227430 00224390 88 03 04 00 */ lbz r0, 0x400(r3) +/* 80227434 00224394 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80227438 00224398 41 82 00 24 */ beq lbl_8022745C +/* 8022743C 0022439C 88 04 00 04 */ lbz r0, 4(r4) +/* 80227440 002243A0 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80227444 002243A4 40 82 00 18 */ bne lbl_8022745C +/* 80227448 002243A8 80 04 00 00 */ lwz r0, 0(r4) +/* 8022744C 002243AC 2C 00 00 03 */ cmpwi r0, 3 +/* 80227450 002243B0 40 82 00 0C */ bne lbl_8022745C +/* 80227454 002243B4 38 60 00 00 */ li r3, 0 +/* 80227458 002243B8 4E 80 00 20 */ blr +lbl_8022745C: +/* 8022745C 002243BC 38 60 00 01 */ li r3, 1 +/* 80227460 002243C0 4E 80 00 20 */ blr + +.global sub_80227464 +sub_80227464: +/* 80227464 002243C4 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 80227468 002243C8 7C 08 02 A6 */ mflr r0 +/* 8022746C 002243CC 90 01 00 74 */ stw r0, 0x74(r1) +/* 80227470 002243D0 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 80227474 002243D4 7C 7F 1B 78 */ mr r31, r3 +/* 80227478 002243D8 93 C1 00 68 */ stw r30, 0x68(r1) +/* 8022747C 002243DC 93 A1 00 64 */ stw r29, 0x64(r1) +/* 80227480 002243E0 7C BD 2B 78 */ mr r29, r5 +/* 80227484 002243E4 93 81 00 60 */ stw r28, 0x60(r1) +/* 80227488 002243E8 7C 9C 23 78 */ mr r28, r4 +/* 8022748C 002243EC 81 83 00 00 */ lwz r12, 0(r3) +/* 80227490 002243F0 81 8C 02 CC */ lwz r12, 0x2cc(r12) +/* 80227494 002243F4 7D 89 03 A6 */ mtctr r12 +/* 80227498 002243F8 4E 80 04 21 */ bctrl +/* 8022749C 002243FC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 802274A0 00224400 41 82 00 DC */ beq lbl_8022757C +/* 802274A4 00224404 A0 1D 00 00 */ lhz r0, 0(r29) +/* 802274A8 00224408 7F 83 E3 78 */ mr r3, r28 +/* 802274AC 0022440C 38 81 00 18 */ addi r4, r1, 0x18 +/* 802274B0 00224410 B0 01 00 18 */ sth r0, 0x18(r1) +/* 802274B4 00224414 4B E2 50 F1 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 802274B8 00224418 7C 64 1B 78 */ mr r4, r3 +/* 802274BC 0022441C 38 61 00 1C */ addi r3, r1, 0x1c +/* 802274C0 00224420 4B E7 E3 D9 */ bl "__ct__20TCastToPtr<7CWeapon>FP7CEntity" +/* 802274C4 00224424 83 C3 00 04 */ lwz r30, 4(r3) +/* 802274C8 00224428 28 1E 00 00 */ cmplwi r30, 0 +/* 802274CC 0022442C 41 82 00 B0 */ beq lbl_8022757C +/* 802274D0 00224430 80 1E 01 2C */ lwz r0, 0x12c(r30) +/* 802274D4 00224434 38 60 00 00 */ li r3, 0 +/* 802274D8 00224438 C0 02 B5 B8 */ lfs f0, lbl_805AD2D8@sda21(r2) +/* 802274DC 0022443C 38 80 00 01 */ li r4, 1 +/* 802274E0 00224440 90 01 00 40 */ stw r0, 0x40(r1) +/* 802274E4 00224444 80 AD 95 68 */ lwz r5, lbl_805A8128@sda21(r13) +/* 802274E8 00224448 88 1E 01 30 */ lbz r0, 0x130(r30) +/* 802274EC 0022444C 98 01 00 44 */ stb r0, 0x44(r1) +/* 802274F0 00224450 C0 3E 01 34 */ lfs f1, 0x134(r30) +/* 802274F4 00224454 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 802274F8 00224458 C0 3E 01 38 */ lfs f1, 0x138(r30) +/* 802274FC 0022445C D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 80227500 00224460 C0 3E 01 3C */ lfs f1, 0x13c(r30) +/* 80227504 00224464 D0 21 00 50 */ stfs f1, 0x50(r1) +/* 80227508 00224468 C0 3E 01 40 */ lfs f1, 0x140(r30) +/* 8022750C 0022446C D0 21 00 54 */ stfs f1, 0x54(r1) +/* 80227510 00224470 88 1E 01 44 */ lbz r0, 0x144(r30) +/* 80227514 00224474 98 01 00 58 */ stb r0, 0x58(r1) +/* 80227518 00224478 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 8022751C 0022447C 48 16 29 D9 */ bl __shl2i +/* 80227520 00224480 39 00 00 00 */ li r8, 0 +/* 80227524 00224484 39 40 00 03 */ li r10, 3 +/* 80227528 00224488 90 81 00 2C */ stw r4, 0x2c(r1) +/* 8022752C 0022448C 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80227530 00224490 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 80227534 00224494 A0 1D 00 00 */ lhz r0, 0(r29) +/* 80227538 00224498 90 61 00 28 */ stw r3, 0x28(r1) +/* 8022753C 0022449C 7F 83 E3 78 */ mr r3, r28 +/* 80227540 002244A0 38 81 00 14 */ addi r4, r1, 0x14 +/* 80227544 002244A4 38 A1 00 10 */ addi r5, r1, 0x10 +/* 80227548 002244A8 91 01 00 34 */ stw r8, 0x34(r1) +/* 8022754C 002244AC 38 C1 00 0C */ addi r6, r1, 0xc +/* 80227550 002244B0 38 E1 00 40 */ addi r7, r1, 0x40 +/* 80227554 002244B4 91 01 00 30 */ stw r8, 0x30(r1) +/* 80227558 002244B8 39 01 00 28 */ addi r8, r1, 0x28 +/* 8022755C 002244BC 91 41 00 38 */ stw r10, 0x38(r1) +/* 80227560 002244C0 A1 7E 00 EC */ lhz r11, 0xec(r30) +/* 80227564 002244C4 B1 61 00 0C */ sth r11, 0xc(r1) +/* 80227568 002244C8 A1 5F 07 70 */ lhz r10, 0x770(r31) +/* 8022756C 002244CC B1 61 00 08 */ sth r11, 8(r1) +/* 80227570 002244D0 B1 41 00 10 */ sth r10, 0x10(r1) +/* 80227574 002244D4 B0 01 00 14 */ sth r0, 0x14(r1) +/* 80227578 002244D8 4B E2 2B 29 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +lbl_8022757C: +/* 8022757C 002244DC 80 01 00 74 */ lwz r0, 0x74(r1) +/* 80227580 002244E0 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 80227584 002244E4 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 80227588 002244E8 83 A1 00 64 */ lwz r29, 0x64(r1) +/* 8022758C 002244EC 83 81 00 60 */ lwz r28, 0x60(r1) +/* 80227590 002244F0 7C 08 03 A6 */ mtlr r0 +/* 80227594 002244F4 38 21 00 70 */ addi r1, r1, 0x70 +/* 80227598 002244F8 4E 80 00 20 */ blr + +.global sub_8022759c +sub_8022759c: +/* 8022759C 002244FC 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 802275A0 00224500 7C 08 02 A6 */ mflr r0 +/* 802275A4 00224504 90 01 00 44 */ stw r0, 0x44(r1) +/* 802275A8 00224508 DB E1 00 30 */ stfd f31, 0x30(r1) +/* 802275AC 0022450C F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 802275B0 00224510 DB C1 00 20 */ stfd f30, 0x20(r1) +/* 802275B4 00224514 F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 +/* 802275B8 00224518 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 802275BC 0022451C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 802275C0 00224520 93 A1 00 14 */ stw r29, 0x14(r1) +/* 802275C4 00224524 81 83 00 00 */ lwz r12, 0(r3) +/* 802275C8 00224528 7C 7D 1B 78 */ mr r29, r3 +/* 802275CC 0022452C 7C 9E 23 78 */ mr r30, r4 +/* 802275D0 00224530 7C BF 2B 78 */ mr r31, r5 +/* 802275D4 00224534 81 8C 02 D0 */ lwz r12, 0x2d0(r12) +/* 802275D8 00224538 7D 89 03 A6 */ mtctr r12 +/* 802275DC 0022453C 4E 80 04 21 */ bctrl +/* 802275E0 00224540 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 802275E4 00224544 41 82 00 70 */ beq lbl_80227654 +/* 802275E8 00224548 C0 3D 07 B4 */ lfs f1, 0x7b4(r29) +/* 802275EC 0022454C C0 02 B5 B8 */ lfs f0, lbl_805AD2D8@sda21(r2) +/* 802275F0 00224550 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802275F4 00224554 40 81 00 60 */ ble lbl_80227654 +/* 802275F8 00224558 57 C0 06 3F */ clrlwi. r0, r30, 0x18 +/* 802275FC 0022455C 41 82 00 58 */ beq lbl_80227654 +/* 80227600 00224560 7F A3 EB 78 */ mr r3, r29 +/* 80227604 00224564 7F E4 FB 78 */ mr r4, r31 +/* 80227608 00224568 81 9D 00 00 */ lwz r12, 0(r29) +/* 8022760C 0022456C 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80227610 00224570 7D 89 03 A6 */ mtctr r12 +/* 80227614 00224574 4E 80 04 21 */ bctrl +/* 80227618 00224578 C0 43 00 00 */ lfs f2, 0(r3) +/* 8022761C 0022457C C0 1D 07 B4 */ lfs f0, 0x7b4(r29) +/* 80227620 00224580 C0 3D 07 B0 */ lfs f1, 0x7b0(r29) +/* 80227624 00224584 EC 02 00 24 */ fdivs f0, f2, f0 +/* 80227628 00224588 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 8022762C 0022458C 4C 40 13 82 */ cror 2, 0, 2 +/* 80227630 00224590 40 82 00 30 */ bne lbl_80227660 +/* 80227634 00224594 C0 02 B5 C4 */ lfs f0, lbl_805AD2E4@sda21(r2) +/* 80227638 00224598 38 60 00 01 */ li r3, 1 +/* 8022763C 0022459C EC 01 00 28 */ fsubs f0, f1, f0 +/* 80227640 002245A0 D0 1D 07 B0 */ stfs f0, 0x7b0(r29) +/* 80227644 002245A4 88 1D 09 88 */ lbz r0, 0x988(r29) +/* 80227648 002245A8 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 8022764C 002245AC 98 1D 09 88 */ stb r0, 0x988(r29) +/* 80227650 002245B0 48 00 00 10 */ b lbl_80227660 +lbl_80227654: +/* 80227654 002245B4 88 1D 09 88 */ lbz r0, 0x988(r29) +/* 80227658 002245B8 53 C0 26 F6 */ rlwimi r0, r30, 4, 0x1b, 0x1b +/* 8022765C 002245BC 98 1D 09 88 */ stb r0, 0x988(r29) +lbl_80227660: +/* 80227660 002245C0 88 1D 09 88 */ lbz r0, 0x988(r29) +/* 80227664 002245C4 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 80227668 002245C8 41 82 00 20 */ beq lbl_80227688 +/* 8022766C 002245CC C3 FD 05 F0 */ lfs f31, 0x5f0(r29) +/* 80227670 002245D0 C3 DD 05 EC */ lfs f30, 0x5ec(r29) +/* 80227674 002245D4 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 80227678 002245D8 48 0E AE 65 */ bl Float__9CRandom16Fv +/* 8022767C 002245DC EC 01 F7 FA */ fmadds f0, f1, f31, f30 +/* 80227680 002245E0 D0 1D 07 C0 */ stfs f0, 0x7c0(r29) +/* 80227684 002245E4 48 00 00 0C */ b lbl_80227690 +lbl_80227688: +/* 80227688 002245E8 C0 02 B5 B8 */ lfs f0, lbl_805AD2D8@sda21(r2) +/* 8022768C 002245EC D0 1D 07 C0 */ stfs f0, 0x7c0(r29) +lbl_80227690: +/* 80227690 002245F0 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 80227694 002245F4 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 80227698 002245F8 E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 +/* 8022769C 002245FC CB C1 00 20 */ lfd f30, 0x20(r1) +/* 802276A0 00224600 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 802276A4 00224604 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 802276A8 00224608 80 01 00 44 */ lwz r0, 0x44(r1) +/* 802276AC 0022460C 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 802276B0 00224610 7C 08 03 A6 */ mtlr r0 +/* 802276B4 00224614 38 21 00 40 */ addi r1, r1, 0x40 +/* 802276B8 00224618 4E 80 00 20 */ blr + +.global sub_802276bc +sub_802276bc: +/* 802276BC 0022461C 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 802276C0 00224620 7C 08 02 A6 */ mflr r0 +/* 802276C4 00224624 90 01 00 44 */ stw r0, 0x44(r1) +/* 802276C8 00224628 DB E1 00 30 */ stfd f31, 0x30(r1) +/* 802276CC 0022462C F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 802276D0 00224630 BF 61 00 1C */ stmw r27, 0x1c(r1) +/* 802276D4 00224634 7C 7B 1B 78 */ mr r27, r3 +/* 802276D8 00224638 7C DE 33 78 */ mr r30, r6 +/* 802276DC 0022463C C0 26 00 04 */ lfs f1, 4(r6) +/* 802276E0 00224640 7C BD 2B 78 */ mr r29, r5 +/* 802276E4 00224644 C0 03 00 50 */ lfs f0, 0x50(r3) +/* 802276E8 00224648 7C 9C 23 78 */ mr r28, r4 +/* 802276EC 0022464C C0 66 00 00 */ lfs f3, 0(r6) +/* 802276F0 00224650 3B FD 00 04 */ addi r31, r29, 4 +/* 802276F4 00224654 EC 81 00 28 */ fsubs f4, f1, f0 +/* 802276F8 00224658 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 802276FC 0022465C C0 46 00 08 */ lfs f2, 8(r6) +/* 80227700 00224660 EC 63 00 28 */ fsubs f3, f3, f0 +/* 80227704 00224664 C0 23 00 60 */ lfs f1, 0x60(r3) +/* 80227708 00224668 EC 04 01 32 */ fmuls f0, f4, f4 +/* 8022770C 0022466C EC 22 08 28 */ fsubs f1, f2, f1 +/* 80227710 00224670 EC 03 00 FA */ fmadds f0, f3, f3, f0 +/* 80227714 00224674 EF E1 00 7A */ fmadds f31, f1, f1, f0 +/* 80227718 00224678 48 00 00 90 */ b lbl_802277A8 +lbl_8022771C: +/* 8022771C 0022467C A0 1F 00 00 */ lhz r0, 0(r31) +/* 80227720 00224680 7F 83 E3 78 */ mr r3, r28 +/* 80227724 00224684 38 81 00 08 */ addi r4, r1, 8 +/* 80227728 00224688 B0 01 00 08 */ sth r0, 8(r1) +/* 8022772C 0022468C 4B E2 4E 79 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80227730 00224690 7C 64 1B 78 */ mr r4, r3 +/* 80227734 00224694 38 61 00 0C */ addi r3, r1, 0xc +/* 80227738 00224698 4B E8 53 25 */ bl "__ct__16TCastToPtr<3CAi>FP7CEntity" +/* 8022773C 0022469C 80 83 00 04 */ lwz r4, 4(r3) +/* 80227740 002246A0 28 04 00 00 */ cmplwi r4, 0 +/* 80227744 002246A4 41 82 00 60 */ beq lbl_802277A4 +/* 80227748 002246A8 A0 64 00 08 */ lhz r3, 8(r4) +/* 8022774C 002246AC A0 1B 00 08 */ lhz r0, 8(r27) +/* 80227750 002246B0 7C 03 00 40 */ cmplw r3, r0 +/* 80227754 002246B4 41 82 00 50 */ beq lbl_802277A4 +/* 80227758 002246B8 88 04 03 28 */ lbz r0, 0x328(r4) +/* 8022775C 002246BC 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 80227760 002246C0 41 82 00 44 */ beq lbl_802277A4 +/* 80227764 002246C4 C0 3E 00 04 */ lfs f1, 4(r30) +/* 80227768 002246C8 C0 04 00 50 */ lfs f0, 0x50(r4) +/* 8022776C 002246CC C0 7E 00 00 */ lfs f3, 0(r30) +/* 80227770 002246D0 EC 81 00 28 */ fsubs f4, f1, f0 +/* 80227774 002246D4 C0 04 00 40 */ lfs f0, 0x40(r4) +/* 80227778 002246D8 C0 5E 00 08 */ lfs f2, 8(r30) +/* 8022777C 002246DC EC 63 00 28 */ fsubs f3, f3, f0 +/* 80227780 002246E0 C0 24 00 60 */ lfs f1, 0x60(r4) +/* 80227784 002246E4 EC 04 01 32 */ fmuls f0, f4, f4 +/* 80227788 002246E8 EC 22 08 28 */ fsubs f1, f2, f1 +/* 8022778C 002246EC EC 03 00 FA */ fmadds f0, f3, f3, f0 +/* 80227790 002246F0 EC 01 00 7A */ fmadds f0, f1, f1, f0 +/* 80227794 002246F4 FC 00 F8 40 */ fcmpo cr0, f0, f31 +/* 80227798 002246F8 40 80 00 0C */ bge lbl_802277A4 +/* 8022779C 002246FC 38 60 00 00 */ li r3, 0 +/* 802277A0 00224700 48 00 00 24 */ b lbl_802277C4 +lbl_802277A4: +/* 802277A4 00224704 3B FF 00 02 */ addi r31, r31, 2 +lbl_802277A8: +/* 802277A8 00224708 80 1D 00 00 */ lwz r0, 0(r29) +/* 802277AC 0022470C 54 00 08 3C */ slwi r0, r0, 1 +/* 802277B0 00224710 7C 7D 02 14 */ add r3, r29, r0 +/* 802277B4 00224714 38 03 00 04 */ addi r0, r3, 4 +/* 802277B8 00224718 7C 1F 00 40 */ cmplw r31, r0 +/* 802277BC 0022471C 40 82 FF 60 */ bne lbl_8022771C +/* 802277C0 00224720 38 60 00 01 */ li r3, 1 +lbl_802277C4: +/* 802277C4 00224724 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 802277C8 00224728 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 802277CC 0022472C BB 61 00 1C */ lmw r27, 0x1c(r1) +/* 802277D0 00224730 80 01 00 44 */ lwz r0, 0x44(r1) +/* 802277D4 00224734 7C 08 03 A6 */ mtlr r0 +/* 802277D8 00224738 38 21 00 40 */ addi r1, r1, 0x40 +/* 802277DC 0022473C 4E 80 00 20 */ blr + +.global sub_802277e0 +sub_802277e0: +/* 802277E0 00224740 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 802277E4 00224744 7C 08 02 A6 */ mflr r0 +/* 802277E8 00224748 90 01 00 74 */ stw r0, 0x74(r1) +/* 802277EC 0022474C 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 802277F0 00224750 7C 9F 23 78 */ mr r31, r4 +/* 802277F4 00224754 93 C1 00 68 */ stw r30, 0x68(r1) +/* 802277F8 00224758 7C 7E 1B 78 */ mr r30, r3 +/* 802277FC 0022475C 93 A1 00 64 */ stw r29, 0x64(r1) +/* 80227800 00224760 88 03 09 88 */ lbz r0, 0x988(r3) +/* 80227804 00224764 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 80227808 00224768 41 82 02 6C */ beq lbl_80227A74 +/* 8022780C 0022476C 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80227810 00224770 88 03 03 00 */ lbz r0, 0x300(r3) +/* 80227814 00224774 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 80227818 00224778 40 82 02 5C */ bne lbl_80227A74 +/* 8022781C 0022477C C0 5E 07 C4 */ lfs f2, 0x7c4(r30) +/* 80227820 00224780 C0 02 B5 C8 */ lfs f0, lbl_805AD2E8@sda21(r2) +/* 80227824 00224784 EC 22 08 2A */ fadds f1, f2, f1 +/* 80227828 00224788 D0 3E 07 C4 */ stfs f1, 0x7c4(r30) +/* 8022782C 0022478C C0 3E 07 C4 */ lfs f1, 0x7c4(r30) +/* 80227830 00224790 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80227834 00224794 4C 41 13 82 */ cror 2, 1, 2 +/* 80227838 00224798 40 82 02 3C */ bne lbl_80227A74 +/* 8022783C 0022479C 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80227840 002247A0 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 80227844 002247A4 2C 00 00 08 */ cmpwi r0, 8 +/* 80227848 002247A8 41 82 00 24 */ beq lbl_8022786C +/* 8022784C 002247AC 38 63 02 A4 */ addi r3, r3, 0x2a4 +/* 80227850 002247B0 4B F0 C8 29 */ bl GetCurrentState__14CBodyStateInfoCFv +/* 80227854 002247B4 81 83 00 00 */ lwz r12, 0(r3) +/* 80227858 002247B8 81 8C 00 18 */ lwz r12, 0x18(r12) +/* 8022785C 002247BC 7D 89 03 A6 */ mtctr r12 +/* 80227860 002247C0 4E 80 04 21 */ bctrl +/* 80227864 002247C4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80227868 002247C8 40 82 01 80 */ bne lbl_802279E8 +lbl_8022786C: +/* 8022786C 002247CC 7F C3 F3 78 */ mr r3, r30 +/* 80227870 002247D0 3B A0 00 00 */ li r29, 0 +/* 80227874 002247D4 81 9E 00 00 */ lwz r12, 0(r30) +/* 80227878 002247D8 81 8C 02 CC */ lwz r12, 0x2cc(r12) +/* 8022787C 002247DC 7D 89 03 A6 */ mtctr r12 +/* 80227880 002247E0 4E 80 04 21 */ bctrl +/* 80227884 002247E4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80227888 002247E8 41 82 00 98 */ beq lbl_80227920 +/* 8022788C 002247EC A0 1E 07 70 */ lhz r0, 0x770(r30) +/* 80227890 002247F0 7F E3 FB 78 */ mr r3, r31 +/* 80227894 002247F4 38 81 00 08 */ addi r4, r1, 8 +/* 80227898 002247F8 B0 01 00 08 */ sth r0, 8(r1) +/* 8022789C 002247FC 4B E2 4D 09 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 802278A0 00224800 7C 64 1B 78 */ mr r4, r3 +/* 802278A4 00224804 38 61 00 0C */ addi r3, r1, 0xc +/* 802278A8 00224808 4B E8 7A A5 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 802278AC 0022480C 80 63 00 04 */ lwz r3, 4(r3) +/* 802278B0 00224810 28 03 00 00 */ cmplwi r3, 0 +/* 802278B4 00224814 41 82 00 6C */ beq lbl_80227920 +/* 802278B8 00224818 C0 83 00 60 */ lfs f4, 0x60(r3) +/* 802278BC 0022481C C0 DE 00 60 */ lfs f6, 0x60(r30) +/* 802278C0 00224820 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 802278C4 00224824 EC 24 30 28 */ fsubs f1, f4, f6 +/* 802278C8 00224828 C0 02 B5 BC */ lfs f0, lbl_805AD2DC@sda21(r2) +/* 802278CC 0022482C C1 04 00 60 */ lfs f8, 0x60(r4) +/* 802278D0 00224830 C0 63 00 50 */ lfs f3, 0x50(r3) +/* 802278D4 00224834 EC 00 20 7C */ fnmsubs f0, f0, f1, f4 +/* 802278D8 00224838 C0 43 00 40 */ lfs f2, 0x40(r3) +/* 802278DC 0022483C C0 BE 00 50 */ lfs f5, 0x50(r30) +/* 802278E0 00224840 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 802278E4 00224844 C0 E4 00 50 */ lfs f7, 0x50(r4) +/* 802278E8 00224848 FC 08 00 40 */ fcmpo cr0, f8, f0 +/* 802278EC 0022484C C0 04 00 40 */ lfs f0, 0x40(r4) +/* 802278F0 00224850 D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 802278F4 00224854 D0 61 00 30 */ stfs f3, 0x30(r1) +/* 802278F8 00224858 D0 81 00 34 */ stfs f4, 0x34(r1) +/* 802278FC 0022485C D0 21 00 20 */ stfs f1, 0x20(r1) +/* 80227900 00224860 D0 A1 00 24 */ stfs f5, 0x24(r1) +/* 80227904 00224864 D0 C1 00 28 */ stfs f6, 0x28(r1) +/* 80227908 00224868 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 8022790C 0022486C D0 E1 00 18 */ stfs f7, 0x18(r1) +/* 80227910 00224870 D1 01 00 1C */ stfs f8, 0x1c(r1) +/* 80227914 00224874 4C 41 13 82 */ cror 2, 1, 2 +/* 80227918 00224878 7C 00 00 26 */ mfcr r0 +/* 8022791C 0022487C 54 1D 1F FE */ rlwinm r29, r0, 3, 0x1f, 0x1f +lbl_80227920: +/* 80227920 00224880 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 80227924 00224884 3B A0 00 00 */ li r29, 0 +/* 80227928 00224888 40 82 00 28 */ bne lbl_80227950 +/* 8022792C 0022488C 7F C3 F3 78 */ mr r3, r30 +/* 80227930 00224890 7F E4 FB 78 */ mr r4, r31 +/* 80227934 00224894 81 9E 00 00 */ lwz r12, 0(r30) +/* 80227938 00224898 C0 22 B5 B8 */ lfs f1, lbl_805AD2D8@sda21(r2) +/* 8022793C 0022489C 81 8C 01 9C */ lwz r12, 0x19c(r12) +/* 80227940 002248A0 7D 89 03 A6 */ mtctr r12 +/* 80227944 002248A4 4E 80 04 21 */ bctrl +/* 80227948 002248A8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022794C 002248AC 41 82 00 08 */ beq lbl_80227954 +lbl_80227950: +/* 80227950 002248B0 3B A0 00 01 */ li r29, 1 +lbl_80227954: +/* 80227954 002248B4 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 80227958 002248B8 38 C0 00 05 */ li r6, 5 +/* 8022795C 002248BC 41 82 00 08 */ beq lbl_80227964 +/* 80227960 002248C0 38 C0 00 07 */ li r6, 7 +lbl_80227964: +/* 80227964 002248C4 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80227968 002248C8 C0 02 B5 CC */ lfs f0, lbl_805AD2EC@sda21(r2) +/* 8022796C 002248CC 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 80227970 002248D0 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80227974 002248D4 3C 80 80 3E */ lis r4, lbl_803E10C8@ha +/* 80227978 002248D8 90 01 00 4C */ stw r0, 0x4c(r1) +/* 8022797C 002248DC 38 A4 10 C8 */ addi r5, r4, lbl_803E10C8@l +/* 80227980 002248E0 38 80 00 1A */ li r4, 0x1a +/* 80227984 002248E4 38 00 00 00 */ li r0, 0 +/* 80227988 002248E8 3B A3 00 04 */ addi r29, r3, 4 +/* 8022798C 002248EC 90 81 00 50 */ stw r4, 0x50(r1) +/* 80227990 002248F0 7F A3 EB 78 */ mr r3, r29 +/* 80227994 002248F4 38 80 00 1A */ li r4, 0x1a +/* 80227998 002248F8 90 A1 00 4C */ stw r5, 0x4c(r1) +/* 8022799C 002248FC D0 01 00 54 */ stfs f0, 0x54(r1) +/* 802279A0 00224900 90 C1 00 58 */ stw r6, 0x58(r1) +/* 802279A4 00224904 98 01 00 5C */ stb r0, 0x5c(r1) +/* 802279A8 00224908 4B F0 9A 91 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 802279AC 0022490C 80 01 00 50 */ lwz r0, 0x50(r1) +/* 802279B0 00224910 3C 60 80 3E */ lis r3, lbl_803E10C8@ha +/* 802279B4 00224914 38 83 10 C8 */ addi r4, r3, lbl_803E10C8@l +/* 802279B8 00224918 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 802279BC 0022491C 90 1D 02 88 */ stw r0, 0x288(r29) +/* 802279C0 00224920 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 802279C4 00224924 C0 01 00 54 */ lfs f0, 0x54(r1) +/* 802279C8 00224928 80 A1 00 58 */ lwz r5, 0x58(r1) +/* 802279CC 0022492C D0 1D 02 8C */ stfs f0, 0x28c(r29) +/* 802279D0 00224930 88 61 00 5C */ lbz r3, 0x5c(r1) +/* 802279D4 00224934 90 BD 02 90 */ stw r5, 0x290(r29) +/* 802279D8 00224938 90 81 00 4C */ stw r4, 0x4c(r1) +/* 802279DC 0022493C 98 7D 02 94 */ stb r3, 0x294(r29) +/* 802279E0 00224940 90 01 00 4C */ stw r0, 0x4c(r1) +/* 802279E4 00224944 48 00 00 88 */ b lbl_80227A6C +lbl_802279E8: +/* 802279E8 00224948 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 802279EC 0022494C C0 02 B5 CC */ lfs f0, lbl_805AD2EC@sda21(r2) +/* 802279F0 00224950 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 802279F4 00224954 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 802279F8 00224958 3C 80 80 3E */ lis r4, lbl_803E10C8@ha +/* 802279FC 0022495C 90 01 00 38 */ stw r0, 0x38(r1) +/* 80227A00 00224960 38 C4 10 C8 */ addi r6, r4, lbl_803E10C8@l +/* 80227A04 00224964 38 80 00 1A */ li r4, 0x1a +/* 80227A08 00224968 38 A0 00 06 */ li r5, 6 +/* 80227A0C 0022496C 38 00 00 00 */ li r0, 0 +/* 80227A10 00224970 3B A3 00 04 */ addi r29, r3, 4 +/* 80227A14 00224974 90 81 00 3C */ stw r4, 0x3c(r1) +/* 80227A18 00224978 7F A3 EB 78 */ mr r3, r29 +/* 80227A1C 0022497C 38 80 00 1A */ li r4, 0x1a +/* 80227A20 00224980 90 C1 00 38 */ stw r6, 0x38(r1) +/* 80227A24 00224984 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 80227A28 00224988 90 A1 00 44 */ stw r5, 0x44(r1) +/* 80227A2C 0022498C 98 01 00 48 */ stb r0, 0x48(r1) +/* 80227A30 00224990 4B F0 9A 09 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80227A34 00224994 80 01 00 3C */ lwz r0, 0x3c(r1) +/* 80227A38 00224998 3C 60 80 3E */ lis r3, lbl_803E10C8@ha +/* 80227A3C 0022499C 38 83 10 C8 */ addi r4, r3, lbl_803E10C8@l +/* 80227A40 002249A0 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80227A44 002249A4 90 1D 02 88 */ stw r0, 0x288(r29) +/* 80227A48 002249A8 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 80227A4C 002249AC C0 01 00 40 */ lfs f0, 0x40(r1) +/* 80227A50 002249B0 80 A1 00 44 */ lwz r5, 0x44(r1) +/* 80227A54 002249B4 D0 1D 02 8C */ stfs f0, 0x28c(r29) +/* 80227A58 002249B8 88 61 00 48 */ lbz r3, 0x48(r1) +/* 80227A5C 002249BC 90 BD 02 90 */ stw r5, 0x290(r29) +/* 80227A60 002249C0 90 81 00 38 */ stw r4, 0x38(r1) +/* 80227A64 002249C4 98 7D 02 94 */ stb r3, 0x294(r29) +/* 80227A68 002249C8 90 01 00 38 */ stw r0, 0x38(r1) +lbl_80227A6C: +/* 80227A6C 002249CC C0 02 B5 B8 */ lfs f0, lbl_805AD2D8@sda21(r2) +/* 80227A70 002249D0 D0 1E 07 C4 */ stfs f0, 0x7c4(r30) +lbl_80227A74: +/* 80227A74 002249D4 80 01 00 74 */ lwz r0, 0x74(r1) +/* 80227A78 002249D8 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 80227A7C 002249DC 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 80227A80 002249E0 83 A1 00 64 */ lwz r29, 0x64(r1) +/* 80227A84 002249E4 7C 08 03 A6 */ mtlr r0 +/* 80227A88 002249E8 38 21 00 70 */ addi r1, r1, 0x70 +/* 80227A8C 002249EC 4E 80 00 20 */ blr + +.global sub_80227a90 +sub_80227a90: +/* 80227A90 002249F0 94 21 ED 30 */ stwu r1, -0x12d0(r1) +/* 80227A94 002249F4 7C 08 02 A6 */ mflr r0 +/* 80227A98 002249F8 90 01 12 D4 */ stw r0, 0x12d4(r1) +/* 80227A9C 002249FC 38 00 12 C8 */ li r0, 0x12c8 +/* 80227AA0 00224A00 DB E1 12 C0 */ stfd f31, 0x12c0(r1) +/* 80227AA4 00224A04 13 E1 00 0E */ psq_stx f31, r1, r0, 0, qr0 +/* 80227AA8 00224A08 38 00 12 B8 */ li r0, 0x12b8 +/* 80227AAC 00224A0C DB C1 12 B0 */ stfd f30, 0x12b0(r1) +/* 80227AB0 00224A10 13 C1 00 0E */ psq_stx f30, r1, r0, 0, qr0 +/* 80227AB4 00224A14 38 00 12 A8 */ li r0, 0x12a8 +/* 80227AB8 00224A18 DB A1 12 A0 */ stfd f29, 0x12a0(r1) +/* 80227ABC 00224A1C 13 A1 00 0E */ psq_stx f29, r1, r0, 0, qr0 +/* 80227AC0 00224A20 38 00 12 98 */ li r0, 0x1298 +/* 80227AC4 00224A24 DB 81 12 90 */ stfd f28, 0x1290(r1) +/* 80227AC8 00224A28 13 81 00 0E */ psq_stx f28, r1, r0, 0, qr0 +/* 80227ACC 00224A2C 38 00 12 88 */ li r0, 0x1288 +/* 80227AD0 00224A30 DB 61 12 80 */ stfd f27, 0x1280(r1) +/* 80227AD4 00224A34 13 61 00 0E */ psq_stx f27, r1, r0, 0, qr0 +/* 80227AD8 00224A38 38 00 12 78 */ li r0, 0x1278 +/* 80227ADC 00224A3C DB 41 12 70 */ stfd f26, 0x1270(r1) +/* 80227AE0 00224A40 13 41 00 0E */ psq_stx f26, r1, r0, 0, qr0 +/* 80227AE4 00224A44 BF 41 12 58 */ stmw r26, 0x1258(r1) +/* 80227AE8 00224A48 88 03 04 00 */ lbz r0, 0x400(r3) +/* 80227AEC 00224A4C 7C 7C 1B 78 */ mr r28, r3 +/* 80227AF0 00224A50 7C 9D 23 78 */ mr r29, r4 +/* 80227AF4 00224A54 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80227AF8 00224A58 41 82 06 84 */ beq lbl_8022817C +/* 80227AFC 00224A5C A0 1C 07 9C */ lhz r0, 0x79c(r28) +/* 80227B00 00224A60 7F A3 EB 78 */ mr r3, r29 +/* 80227B04 00224A64 38 81 00 0C */ addi r4, r1, 0xc +/* 80227B08 00224A68 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80227B0C 00224A6C 4B E2 4A 99 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80227B10 00224A70 7C 64 1B 78 */ mr r4, r3 +/* 80227B14 00224A74 38 61 00 10 */ addi r3, r1, 0x10 +/* 80227B18 00224A78 4B E8 78 35 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 80227B1C 00224A7C 80 A3 00 04 */ lwz r5, 4(r3) +/* 80227B20 00224A80 28 05 00 00 */ cmplwi r5, 0 +/* 80227B24 00224A84 41 82 06 58 */ beq lbl_8022817C +/* 80227B28 00224A88 C0 45 00 60 */ lfs f2, 0x60(r5) +/* 80227B2C 00224A8C 38 61 01 D0 */ addi r3, r1, 0x1d0 +/* 80227B30 00224A90 C0 25 00 50 */ lfs f1, 0x50(r5) +/* 80227B34 00224A94 38 81 01 04 */ addi r4, r1, 0x104 +/* 80227B38 00224A98 C0 05 00 40 */ lfs f0, 0x40(r5) +/* 80227B3C 00224A9C 38 A1 00 F8 */ addi r5, r1, 0xf8 +/* 80227B40 00224AA0 D0 01 01 4C */ stfs f0, 0x14c(r1) +/* 80227B44 00224AA4 D0 21 01 50 */ stfs f1, 0x150(r1) +/* 80227B48 00224AA8 D0 41 01 54 */ stfs f2, 0x154(r1) +/* 80227B4C 00224AAC C0 7C 05 F4 */ lfs f3, 0x5f4(r28) +/* 80227B50 00224AB0 C0 5C 00 60 */ lfs f2, 0x60(r28) +/* 80227B54 00224AB4 C0 3C 00 50 */ lfs f1, 0x50(r28) +/* 80227B58 00224AB8 C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 80227B5C 00224ABC EF E2 18 2A */ fadds f31, f2, f3 +/* 80227B60 00224AC0 EF C1 18 2A */ fadds f30, f1, f3 +/* 80227B64 00224AC4 EF A0 18 2A */ fadds f29, f0, f3 +/* 80227B68 00224AC8 EF 80 18 28 */ fsubs f28, f0, f3 +/* 80227B6C 00224ACC D3 E1 01 00 */ stfs f31, 0x100(r1) +/* 80227B70 00224AD0 EF 61 18 28 */ fsubs f27, f1, f3 +/* 80227B74 00224AD4 EF 42 18 28 */ fsubs f26, f2, f3 +/* 80227B78 00224AD8 D3 A1 00 F8 */ stfs f29, 0xf8(r1) +/* 80227B7C 00224ADC D3 C1 00 FC */ stfs f30, 0xfc(r1) +/* 80227B80 00224AE0 D3 81 01 04 */ stfs f28, 0x104(r1) +/* 80227B84 00224AE4 D3 61 01 08 */ stfs f27, 0x108(r1) +/* 80227B88 00224AE8 D3 41 01 0C */ stfs f26, 0x10c(r1) +/* 80227B8C 00224AEC 48 11 09 7D */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 80227B90 00224AF0 80 AD 95 B0 */ lwz r5, lbl_805A8170@sda21(r13) +/* 80227B94 00224AF4 38 60 00 00 */ li r3, 0 +/* 80227B98 00224AF8 38 80 00 01 */ li r4, 1 +/* 80227B9C 00224AFC 48 16 23 59 */ bl __shl2i +/* 80227BA0 00224B00 38 00 00 00 */ li r0, 0 +/* 80227BA4 00224B04 39 00 00 01 */ li r8, 1 +/* 80227BA8 00224B08 90 81 01 BC */ stw r4, 0x1bc(r1) +/* 80227BAC 00224B0C 38 81 0A 4C */ addi r4, r1, 0xa4c +/* 80227BB0 00224B10 38 A1 01 D0 */ addi r5, r1, 0x1d0 +/* 80227BB4 00224B14 38 C1 01 B8 */ addi r6, r1, 0x1b8 +/* 80227BB8 00224B18 90 61 01 B8 */ stw r3, 0x1b8(r1) +/* 80227BBC 00224B1C 7F A3 EB 78 */ mr r3, r29 +/* 80227BC0 00224B20 38 E0 00 00 */ li r7, 0 +/* 80227BC4 00224B24 91 01 01 80 */ stw r8, 0x180(r1) +/* 80227BC8 00224B28 90 01 01 C4 */ stw r0, 0x1c4(r1) +/* 80227BCC 00224B2C 90 01 01 C0 */ stw r0, 0x1c0(r1) +/* 80227BD0 00224B30 91 01 01 C8 */ stw r8, 0x1c8(r1) +/* 80227BD4 00224B34 90 01 0A 4C */ stw r0, 0xa4c(r1) +/* 80227BD8 00224B38 4B E2 4B 49 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" +/* 80227BDC 00224B3C 80 01 0A 4C */ lwz r0, 0xa4c(r1) +/* 80227BE0 00224B40 2C 00 00 00 */ cmpwi r0, 0 +/* 80227BE4 00224B44 41 82 05 44 */ beq lbl_80228128 +/* 80227BE8 00224B48 D3 A1 00 E0 */ stfs f29, 0xe0(r1) +/* 80227BEC 00224B4C 38 61 01 A0 */ addi r3, r1, 0x1a0 +/* 80227BF0 00224B50 38 81 00 EC */ addi r4, r1, 0xec +/* 80227BF4 00224B54 38 A1 00 E0 */ addi r5, r1, 0xe0 +/* 80227BF8 00224B58 D3 C1 00 E4 */ stfs f30, 0xe4(r1) +/* 80227BFC 00224B5C D3 E1 00 E8 */ stfs f31, 0xe8(r1) +/* 80227C00 00224B60 D3 81 00 EC */ stfs f28, 0xec(r1) +/* 80227C04 00224B64 D3 61 00 F0 */ stfs f27, 0xf0(r1) +/* 80227C08 00224B68 D3 41 00 F4 */ stfs f26, 0xf4(r1) +/* 80227C0C 00224B6C 48 11 08 FD */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 80227C10 00224B70 80 AD 95 B4 */ lwz r5, lbl_805A8174@sda21(r13) +/* 80227C14 00224B74 38 60 00 00 */ li r3, 0 +/* 80227C18 00224B78 38 80 00 01 */ li r4, 1 +/* 80227C1C 00224B7C 48 16 22 D9 */ bl __shl2i +/* 80227C20 00224B80 38 00 00 00 */ li r0, 0 +/* 80227C24 00224B84 39 00 00 01 */ li r8, 1 +/* 80227C28 00224B88 90 81 01 8C */ stw r4, 0x18c(r1) +/* 80227C2C 00224B8C 38 81 02 48 */ addi r4, r1, 0x248 +/* 80227C30 00224B90 38 A1 01 A0 */ addi r5, r1, 0x1a0 +/* 80227C34 00224B94 38 C1 01 88 */ addi r6, r1, 0x188 +/* 80227C38 00224B98 90 61 01 88 */ stw r3, 0x188(r1) +/* 80227C3C 00224B9C 7F A3 EB 78 */ mr r3, r29 +/* 80227C40 00224BA0 38 E0 00 00 */ li r7, 0 +/* 80227C44 00224BA4 91 01 01 68 */ stw r8, 0x168(r1) +/* 80227C48 00224BA8 90 01 01 94 */ stw r0, 0x194(r1) +/* 80227C4C 00224BAC 90 01 01 90 */ stw r0, 0x190(r1) +/* 80227C50 00224BB0 91 01 01 98 */ stw r8, 0x198(r1) +/* 80227C54 00224BB4 90 01 02 48 */ stw r0, 0x248(r1) +/* 80227C58 00224BB8 4B E2 4A C9 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" +/* 80227C5C 00224BBC 3B E1 0A 50 */ addi r31, r1, 0xa50 +/* 80227C60 00224BC0 7F FE FB 78 */ mr r30, r31 +/* 80227C64 00224BC4 48 00 04 5C */ b lbl_802280C0 +lbl_80227C68: +/* 80227C68 00224BC8 A0 1E 00 00 */ lhz r0, 0(r30) +/* 80227C6C 00224BCC 7F A3 EB 78 */ mr r3, r29 +/* 80227C70 00224BD0 38 81 00 08 */ addi r4, r1, 8 +/* 80227C74 00224BD4 B0 01 00 08 */ sth r0, 8(r1) +/* 80227C78 00224BD8 4B E2 48 FD */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80227C7C 00224BDC 7C 64 1B 78 */ mr r4, r3 +/* 80227C80 00224BE0 38 61 00 18 */ addi r3, r1, 0x18 +/* 80227C84 00224BE4 4B E8 5A 89 */ bl "__ct__29TCastToPtr<15CGameProjectile>FP7CEntity" +/* 80227C88 00224BE8 83 43 00 04 */ lwz r26, 4(r3) +/* 80227C8C 00224BEC 28 1A 00 00 */ cmplwi r26, 0 +/* 80227C90 00224BF0 41 82 04 2C */ beq lbl_802280BC +/* 80227C94 00224BF4 80 1A 00 F0 */ lwz r0, 0xf0(r26) +/* 80227C98 00224BF8 2C 00 00 06 */ cmpwi r0, 6 +/* 80227C9C 00224BFC 41 82 04 20 */ beq lbl_802280BC +/* 80227CA0 00224C00 80 7D 08 4C */ lwz r3, 0x84c(r29) +/* 80227CA4 00224C04 A0 9A 00 EC */ lhz r4, 0xec(r26) +/* 80227CA8 00224C08 A0 03 00 08 */ lhz r0, 8(r3) +/* 80227CAC 00224C0C 7C 04 00 40 */ cmplw r4, r0 +/* 80227CB0 00224C10 40 82 04 0C */ bne lbl_802280BC +/* 80227CB4 00224C14 80 7A 00 04 */ lwz r3, 4(r26) +/* 80227CB8 00224C18 80 1C 00 04 */ lwz r0, 4(r28) +/* 80227CBC 00224C1C 7C 03 00 00 */ cmpw r3, r0 +/* 80227CC0 00224C20 40 82 03 FC */ bne lbl_802280BC +/* 80227CC4 00224C24 C0 01 01 50 */ lfs f0, 0x150(r1) +/* 80227CC8 00224C28 C0 DA 00 50 */ lfs f6, 0x50(r26) +/* 80227CCC 00224C2C C0 21 01 54 */ lfs f1, 0x154(r1) +/* 80227CD0 00224C30 C0 BA 00 60 */ lfs f5, 0x60(r26) +/* 80227CD4 00224C34 ED 00 30 28 */ fsubs f8, f0, f6 +/* 80227CD8 00224C38 C0 9A 00 40 */ lfs f4, 0x40(r26) +/* 80227CDC 00224C3C C0 01 01 4C */ lfs f0, 0x14c(r1) +/* 80227CE0 00224C40 EC E1 28 28 */ fsubs f7, f1, f5 +/* 80227CE4 00224C44 D1 01 01 44 */ stfs f8, 0x144(r1) +/* 80227CE8 00224C48 EC 60 20 28 */ fsubs f3, f0, f4 +/* 80227CEC 00224C4C C0 02 B5 B8 */ lfs f0, lbl_805AD2D8@sda21(r2) +/* 80227CF0 00224C50 D0 E1 01 48 */ stfs f7, 0x148(r1) +/* 80227CF4 00224C54 D0 61 01 40 */ stfs f3, 0x140(r1) +/* 80227CF8 00224C58 C1 3C 00 48 */ lfs f9, 0x48(r28) +/* 80227CFC 00224C5C C0 5C 00 38 */ lfs f2, 0x38(r28) +/* 80227D00 00224C60 EC 29 02 32 */ fmuls f1, f9, f8 +/* 80227D04 00224C64 C1 1C 00 58 */ lfs f8, 0x58(r28) +/* 80227D08 00224C68 D0 41 00 D4 */ stfs f2, 0xd4(r1) +/* 80227D0C 00224C6C EC 22 08 FA */ fmadds f1, f2, f3, f1 +/* 80227D10 00224C70 D1 21 00 D8 */ stfs f9, 0xd8(r1) +/* 80227D14 00224C74 D1 01 00 DC */ stfs f8, 0xdc(r1) +/* 80227D18 00224C78 EC 28 09 FA */ fmadds f1, f8, f7, f1 +/* 80227D1C 00224C7C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80227D20 00224C80 40 80 03 8C */ bge lbl_802280AC +/* 80227D24 00224C84 C0 5A 02 9C */ lfs f2, 0x29c(r26) +/* 80227D28 00224C88 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 80227D2C 00224C8C C0 3A 02 A0 */ lfs f1, 0x2a0(r26) +/* 80227D30 00224C90 C0 1A 02 98 */ lfs f0, 0x298(r26) +/* 80227D34 00224C94 EC 46 10 28 */ fsubs f2, f6, f2 +/* 80227D38 00224C98 EC 25 08 28 */ fsubs f1, f5, f1 +/* 80227D3C 00224C9C EC 04 00 28 */ fsubs f0, f4, f0 +/* 80227D40 00224CA0 D0 41 00 CC */ stfs f2, 0xcc(r1) +/* 80227D44 00224CA4 D0 01 00 C8 */ stfs f0, 0xc8(r1) +/* 80227D48 00224CA8 D0 21 00 D0 */ stfs f1, 0xd0(r1) +/* 80227D4C 00224CAC 48 0E C9 AD */ bl CanBeNormalized__9CVector3fCFv +/* 80227D50 00224CB0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80227D54 00224CB4 41 82 03 58 */ beq lbl_802280AC +/* 80227D58 00224CB8 C0 5A 00 60 */ lfs f2, 0x60(r26) +/* 80227D5C 00224CBC 7F 83 E3 78 */ mr r3, r28 +/* 80227D60 00224CC0 C0 3A 00 50 */ lfs f1, 0x50(r26) +/* 80227D64 00224CC4 7F A4 EB 78 */ mr r4, r29 +/* 80227D68 00224CC8 C0 1A 00 40 */ lfs f0, 0x40(r26) +/* 80227D6C 00224CCC 38 A1 02 48 */ addi r5, r1, 0x248 +/* 80227D70 00224CD0 38 C1 00 BC */ addi r6, r1, 0xbc +/* 80227D74 00224CD4 D0 01 00 BC */ stfs f0, 0xbc(r1) +/* 80227D78 00224CD8 D0 21 00 C0 */ stfs f1, 0xc0(r1) +/* 80227D7C 00224CDC D0 41 00 C4 */ stfs f2, 0xc4(r1) +/* 80227D80 00224CE0 4B FF F9 3D */ bl sub_802276bc +/* 80227D84 00224CE4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80227D88 00224CE8 41 82 03 24 */ beq lbl_802280AC +/* 80227D8C 00224CEC 38 61 01 40 */ addi r3, r1, 0x140 +/* 80227D90 00224CF0 48 0E CB 29 */ bl Magnitude__9CVector3fCFv +/* 80227D94 00224CF4 C0 9A 00 50 */ lfs f4, 0x50(r26) +/* 80227D98 00224CF8 FF E0 08 90 */ fmr f31, f1 +/* 80227D9C 00224CFC C0 1A 02 9C */ lfs f0, 0x29c(r26) +/* 80227DA0 00224D00 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 80227DA4 00224D04 C0 7A 00 60 */ lfs f3, 0x60(r26) +/* 80227DA8 00224D08 38 81 00 A4 */ addi r4, r1, 0xa4 +/* 80227DAC 00224D0C C0 5A 02 A0 */ lfs f2, 0x2a0(r26) +/* 80227DB0 00224D10 C0 3A 00 40 */ lfs f1, 0x40(r26) +/* 80227DB4 00224D14 EC 84 00 28 */ fsubs f4, f4, f0 +/* 80227DB8 00224D18 C0 1A 02 98 */ lfs f0, 0x298(r26) +/* 80227DBC 00224D1C EC 43 10 28 */ fsubs f2, f3, f2 +/* 80227DC0 00224D20 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80227DC4 00224D24 D0 81 00 A8 */ stfs f4, 0xa8(r1) +/* 80227DC8 00224D28 D0 41 00 AC */ stfs f2, 0xac(r1) +/* 80227DCC 00224D2C D0 01 00 A4 */ stfs f0, 0xa4(r1) +/* 80227DD0 00224D30 48 0E CA 81 */ bl AsNormalized__9CVector3fCFv +/* 80227DD4 00224D34 C0 02 B5 BC */ lfs f0, lbl_805AD2DC@sda21(r2) +/* 80227DD8 00224D38 3B 7A 01 70 */ addi r27, r26, 0x170 +/* 80227DDC 00224D3C C0 42 B5 D0 */ lfs f2, lbl_805AD2F0@sda21(r2) +/* 80227DE0 00224D40 38 61 00 98 */ addi r3, r1, 0x98 +/* 80227DE4 00224D44 ED 20 07 F2 */ fmuls f9, f0, f31 +/* 80227DE8 00224D48 C0 81 00 B0 */ lfs f4, 0xb0(r1) +/* 80227DEC 00224D4C EC 22 07 F2 */ fmuls f1, f2, f31 +/* 80227DF0 00224D50 C0 61 00 B4 */ lfs f3, 0xb4(r1) +/* 80227DF4 00224D54 C0 01 00 B8 */ lfs f0, 0xb8(r1) +/* 80227DF8 00224D58 38 81 00 8C */ addi r4, r1, 0x8c +/* 80227DFC 00224D5C EC A9 01 32 */ fmuls f5, f9, f4 +/* 80227E00 00224D60 C0 DA 00 40 */ lfs f6, 0x40(r26) +/* 80227E04 00224D64 EC 69 00 F2 */ fmuls f3, f9, f3 +/* 80227E08 00224D68 C1 1A 00 50 */ lfs f8, 0x50(r26) +/* 80227E0C 00224D6C C0 FA 00 60 */ lfs f7, 0x60(r26) +/* 80227E10 00224D70 EC 09 00 32 */ fmuls f0, f9, f0 +/* 80227E14 00224D74 ED 48 18 2A */ fadds f10, f8, f3 +/* 80227E18 00224D78 C0 61 01 50 */ lfs f3, 0x150(r1) +/* 80227E1C 00224D7C C0 82 B5 B8 */ lfs f4, lbl_805AD2D8@sda21(r2) +/* 80227E20 00224D80 ED 27 00 2A */ fadds f9, f7, f0 +/* 80227E24 00224D84 C0 01 01 4C */ lfs f0, 0x14c(r1) +/* 80227E28 00224D88 EC A6 28 2A */ fadds f5, f6, f5 +/* 80227E2C 00224D8C ED 63 20 2A */ fadds f11, f3, f4 +/* 80227E30 00224D90 C0 61 01 54 */ lfs f3, 0x154(r1) +/* 80227E34 00224D94 EC 42 00 72 */ fmuls f2, f2, f1 +/* 80227E38 00224D98 D0 A1 01 34 */ stfs f5, 0x134(r1) +/* 80227E3C 00224D9C EC 00 20 2A */ fadds f0, f0, f4 +/* 80227E40 00224DA0 C0 22 B5 D4 */ lfs f1, lbl_805AD2F4@sda21(r2) +/* 80227E44 00224DA4 EC 43 10 2A */ fadds f2, f3, f2 +/* 80227E48 00224DA8 D1 41 01 38 */ stfs f10, 0x138(r1) +/* 80227E4C 00224DAC 38 A1 01 34 */ addi r5, r1, 0x134 +/* 80227E50 00224DB0 38 C1 01 28 */ addi r6, r1, 0x128 +/* 80227E54 00224DB4 D1 21 01 3C */ stfs f9, 0x13c(r1) +/* 80227E58 00224DB8 38 E1 01 4C */ addi r7, r1, 0x14c +/* 80227E5C 00224DBC D0 01 01 28 */ stfs f0, 0x128(r1) +/* 80227E60 00224DC0 D1 61 01 2C */ stfs f11, 0x12c(r1) +/* 80227E64 00224DC4 D0 41 01 30 */ stfs f2, 0x130(r1) +/* 80227E68 00224DC8 D0 C1 00 8C */ stfs f6, 0x8c(r1) +/* 80227E6C 00224DCC D1 01 00 90 */ stfs f8, 0x90(r1) +/* 80227E70 00224DD0 D0 E1 00 94 */ stfs f7, 0x94(r1) +/* 80227E74 00224DD4 48 0E D0 A5 */ bl GetBezierPoint__5CMathFRC9CVector3fRC9CVector3fRC9CVector3fRC9CVector3ff +/* 80227E78 00224DD8 C0 5A 00 60 */ lfs f2, 0x60(r26) +/* 80227E7C 00224DDC 38 61 00 80 */ addi r3, r1, 0x80 +/* 80227E80 00224DE0 C0 3A 00 50 */ lfs f1, 0x50(r26) +/* 80227E84 00224DE4 38 81 00 74 */ addi r4, r1, 0x74 +/* 80227E88 00224DE8 C0 1A 00 40 */ lfs f0, 0x40(r26) +/* 80227E8C 00224DEC 38 A1 01 34 */ addi r5, r1, 0x134 +/* 80227E90 00224DF0 C3 E1 00 98 */ lfs f31, 0x98(r1) +/* 80227E94 00224DF4 38 C1 01 28 */ addi r6, r1, 0x128 +/* 80227E98 00224DF8 D0 01 00 74 */ stfs f0, 0x74(r1) +/* 80227E9C 00224DFC 38 E1 01 4C */ addi r7, r1, 0x14c +/* 80227EA0 00224E00 C3 A1 00 9C */ lfs f29, 0x9c(r1) +/* 80227EA4 00224E04 D0 21 00 78 */ stfs f1, 0x78(r1) +/* 80227EA8 00224E08 C3 C1 00 A0 */ lfs f30, 0xa0(r1) +/* 80227EAC 00224E0C D0 41 00 7C */ stfs f2, 0x7c(r1) +/* 80227EB0 00224E10 C0 22 B5 D8 */ lfs f1, lbl_805AD2F8@sda21(r2) +/* 80227EB4 00224E14 48 0E D0 65 */ bl GetBezierPoint__5CMathFRC9CVector3fRC9CVector3fRC9CVector3fRC9CVector3ff +/* 80227EB8 00224E18 C0 C1 00 84 */ lfs f6, 0x84(r1) +/* 80227EBC 00224E1C 38 61 00 50 */ addi r3, r1, 0x50 +/* 80227EC0 00224E20 C0 E1 00 88 */ lfs f7, 0x88(r1) +/* 80227EC4 00224E24 C0 A1 00 80 */ lfs f5, 0x80(r1) +/* 80227EC8 00224E28 EC 06 E8 28 */ fsubs f0, f6, f29 +/* 80227ECC 00224E2C EC 67 F0 28 */ fsubs f3, f7, f30 +/* 80227ED0 00224E30 C0 41 01 50 */ lfs f2, 0x150(r1) +/* 80227ED4 00224E34 EC 85 F8 28 */ fsubs f4, f5, f31 +/* 80227ED8 00224E38 C0 21 01 54 */ lfs f1, 0x154(r1) +/* 80227EDC 00224E3C D0 01 00 54 */ stfs f0, 0x54(r1) +/* 80227EE0 00224E40 C0 01 01 4C */ lfs f0, 0x14c(r1) +/* 80227EE4 00224E44 D0 81 00 50 */ stfs f4, 0x50(r1) +/* 80227EE8 00224E48 EC C2 30 28 */ fsubs f6, f2, f6 +/* 80227EEC 00224E4C EC 81 38 28 */ fsubs f4, f1, f7 +/* 80227EF0 00224E50 D0 61 00 58 */ stfs f3, 0x58(r1) +/* 80227EF4 00224E54 EC 00 28 28 */ fsubs f0, f0, f5 +/* 80227EF8 00224E58 C0 7A 00 50 */ lfs f3, 0x50(r26) +/* 80227EFC 00224E5C C0 5A 00 60 */ lfs f2, 0x60(r26) +/* 80227F00 00224E60 C0 3A 00 40 */ lfs f1, 0x40(r26) +/* 80227F04 00224E64 EC 7D 18 28 */ fsubs f3, f29, f3 +/* 80227F08 00224E68 EC 5E 10 28 */ fsubs f2, f30, f2 +/* 80227F0C 00224E6C EC 3F 08 28 */ fsubs f1, f31, f1 +/* 80227F10 00224E70 D0 01 00 68 */ stfs f0, 0x68(r1) +/* 80227F14 00224E74 D0 61 00 60 */ stfs f3, 0x60(r1) +/* 80227F18 00224E78 D0 21 00 5C */ stfs f1, 0x5c(r1) +/* 80227F1C 00224E7C D0 41 00 64 */ stfs f2, 0x64(r1) +/* 80227F20 00224E80 D0 C1 00 6C */ stfs f6, 0x6c(r1) +/* 80227F24 00224E84 D0 81 00 70 */ stfs f4, 0x70(r1) +/* 80227F28 00224E88 48 0E C9 91 */ bl Magnitude__9CVector3fCFv +/* 80227F2C 00224E8C FF E0 08 90 */ fmr f31, f1 +/* 80227F30 00224E90 38 61 00 5C */ addi r3, r1, 0x5c +/* 80227F34 00224E94 48 0E C9 85 */ bl Magnitude__9CVector3fCFv +/* 80227F38 00224E98 EF E1 F8 2A */ fadds f31, f1, f31 +/* 80227F3C 00224E9C 38 61 00 68 */ addi r3, r1, 0x68 +/* 80227F40 00224EA0 48 0E C9 79 */ bl Magnitude__9CVector3fCFv +/* 80227F44 00224EA4 C0 9A 00 50 */ lfs f4, 0x50(r26) +/* 80227F48 00224EA8 EF 41 F8 2A */ fadds f26, f1, f31 +/* 80227F4C 00224EAC C0 1A 02 9C */ lfs f0, 0x29c(r26) +/* 80227F50 00224EB0 38 61 00 44 */ addi r3, r1, 0x44 +/* 80227F54 00224EB4 C0 7A 00 60 */ lfs f3, 0x60(r26) +/* 80227F58 00224EB8 C0 5A 02 A0 */ lfs f2, 0x2a0(r26) +/* 80227F5C 00224EBC EC 84 00 28 */ fsubs f4, f4, f0 +/* 80227F60 00224EC0 C0 3A 00 40 */ lfs f1, 0x40(r26) +/* 80227F64 00224EC4 C0 1A 02 98 */ lfs f0, 0x298(r26) +/* 80227F68 00224EC8 EC 43 10 28 */ fsubs f2, f3, f2 +/* 80227F6C 00224ECC EC 01 00 28 */ fsubs f0, f1, f0 +/* 80227F70 00224ED0 D0 81 00 48 */ stfs f4, 0x48(r1) +/* 80227F74 00224ED4 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 80227F78 00224ED8 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 80227F7C 00224EDC 48 0E C9 3D */ bl Magnitude__9CVector3fCFv +/* 80227F80 00224EE0 EC 21 D0 24 */ fdivs f1, f1, f26 +/* 80227F84 00224EE4 C0 7A 00 60 */ lfs f3, 0x60(r26) +/* 80227F88 00224EE8 C0 5A 00 50 */ lfs f2, 0x50(r26) +/* 80227F8C 00224EEC 38 61 00 38 */ addi r3, r1, 0x38 +/* 80227F90 00224EF0 C0 1A 00 40 */ lfs f0, 0x40(r26) +/* 80227F94 00224EF4 38 81 00 2C */ addi r4, r1, 0x2c +/* 80227F98 00224EF8 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 80227F9C 00224EFC 38 A1 01 34 */ addi r5, r1, 0x134 +/* 80227FA0 00224F00 38 C1 01 28 */ addi r6, r1, 0x128 +/* 80227FA4 00224F04 38 E1 01 4C */ addi r7, r1, 0x14c +/* 80227FA8 00224F08 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 80227FAC 00224F0C D0 61 00 34 */ stfs f3, 0x34(r1) +/* 80227FB0 00224F10 48 0E CF 69 */ bl GetBezierPoint__5CMathFRC9CVector3fRC9CVector3fRC9CVector3fRC9CVector3ff +/* 80227FB4 00224F14 C0 21 00 3C */ lfs f1, 0x3c(r1) +/* 80227FB8 00224F18 38 61 01 1C */ addi r3, r1, 0x11c +/* 80227FBC 00224F1C C0 1A 00 50 */ lfs f0, 0x50(r26) +/* 80227FC0 00224F20 C0 61 00 40 */ lfs f3, 0x40(r1) +/* 80227FC4 00224F24 C0 5A 00 60 */ lfs f2, 0x60(r26) +/* 80227FC8 00224F28 EC 81 00 28 */ fsubs f4, f1, f0 +/* 80227FCC 00224F2C C0 1A 00 40 */ lfs f0, 0x40(r26) +/* 80227FD0 00224F30 C0 21 00 38 */ lfs f1, 0x38(r1) +/* 80227FD4 00224F34 EC 43 10 28 */ fsubs f2, f3, f2 +/* 80227FD8 00224F38 D0 81 01 20 */ stfs f4, 0x120(r1) +/* 80227FDC 00224F3C EC 01 00 28 */ fsubs f0, f1, f0 +/* 80227FE0 00224F40 D0 41 01 24 */ stfs f2, 0x124(r1) +/* 80227FE4 00224F44 D0 01 01 1C */ stfs f0, 0x11c(r1) +/* 80227FE8 00224F48 48 0E C7 11 */ bl CanBeNormalized__9CVector3fCFv +/* 80227FEC 00224F4C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80227FF0 00224F50 41 82 00 BC */ beq lbl_802280AC +/* 80227FF4 00224F54 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80227FF8 00224F58 3C A0 80 5A */ lis r5, lbl_805A66F4@ha +/* 80227FFC 00224F5C 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 80228000 00224F60 38 C5 66 F4 */ addi r6, r5, lbl_805A66F4@l +/* 80228004 00224F64 38 61 01 E8 */ addi r3, r1, 0x1e8 +/* 80228008 00224F68 38 A1 01 1C */ addi r5, r1, 0x11c +/* 8022800C 00224F6C 48 0E BB 05 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 80228010 00224F70 38 61 02 18 */ addi r3, r1, 0x218 +/* 80228014 00224F74 38 81 01 E8 */ addi r4, r1, 0x1e8 +/* 80228018 00224F78 48 0E AB 5D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8022801C 00224F7C 38 61 02 18 */ addi r3, r1, 0x218 +/* 80228020 00224F80 48 0E B3 85 */ bl Orthonormalize__12CTransform4fFv +/* 80228024 00224F84 7F 63 DB 78 */ mr r3, r27 +/* 80228028 00224F88 38 81 02 18 */ addi r4, r1, 0x218 +/* 8022802C 00224F8C 48 08 84 79 */ bl SetWorldSpaceOrientation__17CProjectileWeaponFRC12CTransform4f +/* 80228030 00224F90 7F 63 DB 78 */ mr r3, r27 +/* 80228034 00224F94 48 08 71 01 */ bl GetVelocity__17CProjectileWeaponCFv +/* 80228038 00224F98 7C 64 1B 78 */ mr r4, r3 +/* 8022803C 00224F9C 38 61 00 20 */ addi r3, r1, 0x20 +/* 80228040 00224FA0 48 0E C8 11 */ bl AsNormalized__9CVector3fCFv +/* 80228044 00224FA4 C0 62 B5 DC */ lfs f3, lbl_805AD2FC@sda21(r2) +/* 80228048 00224FA8 7F 63 DB 78 */ mr r3, r27 +/* 8022804C 00224FAC C0 41 00 20 */ lfs f2, 0x20(r1) +/* 80228050 00224FB0 C0 21 00 24 */ lfs f1, 0x24(r1) +/* 80228054 00224FB4 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 80228058 00224FB8 EF A3 00 B2 */ fmuls f29, f3, f2 +/* 8022805C 00224FBC EF C3 00 72 */ fmuls f30, f3, f1 +/* 80228060 00224FC0 EF E3 00 32 */ fmuls f31, f3, f0 +/* 80228064 00224FC4 48 08 70 D1 */ bl GetVelocity__17CProjectileWeaponCFv +/* 80228068 00224FC8 C0 02 B5 E4 */ lfs f0, lbl_805AD304@sda21(r2) +/* 8022806C 00224FCC 38 81 01 10 */ addi r4, r1, 0x110 +/* 80228070 00224FD0 C0 C3 00 04 */ lfs f6, 4(r3) +/* 80228074 00224FD4 EC 9E 00 32 */ fmuls f4, f30, f0 +/* 80228078 00224FD8 C0 A2 B5 E0 */ lfs f5, lbl_805AD300@sda21(r2) +/* 8022807C 00224FDC EC 5F 00 32 */ fmuls f2, f31, f0 +/* 80228080 00224FE0 C0 63 00 08 */ lfs f3, 8(r3) +/* 80228084 00224FE4 C0 23 00 00 */ lfs f1, 0(r3) +/* 80228088 00224FE8 EC 1D 00 32 */ fmuls f0, f29, f0 +/* 8022808C 00224FEC EC 86 21 7A */ fmadds f4, f6, f5, f4 +/* 80228090 00224FF0 7F 63 DB 78 */ mr r3, r27 +/* 80228094 00224FF4 EC 43 11 7A */ fmadds f2, f3, f5, f2 +/* 80228098 00224FF8 EC 01 01 7A */ fmadds f0, f1, f5, f0 +/* 8022809C 00224FFC D0 81 01 14 */ stfs f4, 0x114(r1) +/* 802280A0 00225000 D0 01 01 10 */ stfs f0, 0x110(r1) +/* 802280A4 00225004 D0 41 01 18 */ stfs f2, 0x118(r1) +/* 802280A8 00225008 48 08 70 95 */ bl SetVelocity__17CProjectileWeaponFRC9CVector3f +lbl_802280AC: +/* 802280AC 0022500C 7F 83 E3 78 */ mr r3, r28 +/* 802280B0 00225010 7F A5 EB 78 */ mr r5, r29 +/* 802280B4 00225014 38 80 00 01 */ li r4, 1 +/* 802280B8 00225018 4B FF F4 E5 */ bl sub_8022759c +lbl_802280BC: +/* 802280BC 0022501C 3B DE 00 02 */ addi r30, r30, 2 +lbl_802280C0: +/* 802280C0 00225020 80 01 0A 4C */ lwz r0, 0xa4c(r1) +/* 802280C4 00225024 54 00 08 3C */ slwi r0, r0, 1 +/* 802280C8 00225028 7C 1F 02 14 */ add r0, r31, r0 +/* 802280CC 0022502C 7C 1E 00 40 */ cmplw r30, r0 +/* 802280D0 00225030 40 82 FB 98 */ bne lbl_80227C68 +/* 802280D4 00225034 80 A1 02 48 */ lwz r5, 0x248(r1) +/* 802280D8 00225038 38 60 00 00 */ li r3, 0 +/* 802280DC 0022503C 2C 05 00 00 */ cmpwi r5, 0 +/* 802280E0 00225040 40 81 00 40 */ ble lbl_80228120 +/* 802280E4 00225044 2C 05 00 08 */ cmpwi r5, 8 +/* 802280E8 00225048 38 85 FF F8 */ addi r4, r5, -8 +/* 802280EC 0022504C 40 81 00 20 */ ble lbl_8022810C +/* 802280F0 00225050 38 04 00 07 */ addi r0, r4, 7 +/* 802280F4 00225054 54 00 E8 FE */ srwi r0, r0, 3 +/* 802280F8 00225058 7C 09 03 A6 */ mtctr r0 +/* 802280FC 0022505C 2C 04 00 00 */ cmpwi r4, 0 +/* 80228100 00225060 40 81 00 0C */ ble lbl_8022810C +lbl_80228104: +/* 80228104 00225064 38 63 00 08 */ addi r3, r3, 8 +/* 80228108 00225068 42 00 FF FC */ bdnz lbl_80228104 +lbl_8022810C: +/* 8022810C 0022506C 7C 03 28 50 */ subf r0, r3, r5 +/* 80228110 00225070 7C 09 03 A6 */ mtctr r0 +/* 80228114 00225074 7C 03 28 00 */ cmpw r3, r5 +/* 80228118 00225078 40 80 00 08 */ bge lbl_80228120 +lbl_8022811C: +/* 8022811C 0022507C 42 00 00 00 */ bdnz lbl_8022811C +lbl_80228120: +/* 80228120 00225080 38 00 00 00 */ li r0, 0 +/* 80228124 00225084 90 01 02 48 */ stw r0, 0x248(r1) +lbl_80228128: +/* 80228128 00225088 80 A1 0A 4C */ lwz r5, 0xa4c(r1) +/* 8022812C 0022508C 38 60 00 00 */ li r3, 0 +/* 80228130 00225090 2C 05 00 00 */ cmpwi r5, 0 +/* 80228134 00225094 40 81 00 40 */ ble lbl_80228174 +/* 80228138 00225098 2C 05 00 08 */ cmpwi r5, 8 +/* 8022813C 0022509C 38 85 FF F8 */ addi r4, r5, -8 +/* 80228140 002250A0 40 81 00 20 */ ble lbl_80228160 +/* 80228144 002250A4 38 04 00 07 */ addi r0, r4, 7 +/* 80228148 002250A8 54 00 E8 FE */ srwi r0, r0, 3 +/* 8022814C 002250AC 7C 09 03 A6 */ mtctr r0 +/* 80228150 002250B0 2C 04 00 00 */ cmpwi r4, 0 +/* 80228154 002250B4 40 81 00 0C */ ble lbl_80228160 +lbl_80228158: +/* 80228158 002250B8 38 63 00 08 */ addi r3, r3, 8 +/* 8022815C 002250BC 42 00 FF FC */ bdnz lbl_80228158 +lbl_80228160: +/* 80228160 002250C0 7C 03 28 50 */ subf r0, r3, r5 +/* 80228164 002250C4 7C 09 03 A6 */ mtctr r0 +/* 80228168 002250C8 7C 03 28 00 */ cmpw r3, r5 +/* 8022816C 002250CC 40 80 00 08 */ bge lbl_80228174 +lbl_80228170: +/* 80228170 002250D0 42 00 00 00 */ bdnz lbl_80228170 +lbl_80228174: +/* 80228174 002250D4 38 00 00 00 */ li r0, 0 +/* 80228178 002250D8 90 01 0A 4C */ stw r0, 0xa4c(r1) +lbl_8022817C: +/* 8022817C 002250DC 38 00 12 C8 */ li r0, 0x12c8 +/* 80228180 002250E0 13 E1 00 0C */ psq_lx f31, r1, r0, 0, qr0 +/* 80228184 002250E4 CB E1 12 C0 */ lfd f31, 0x12c0(r1) +/* 80228188 002250E8 38 00 12 B8 */ li r0, 0x12b8 +/* 8022818C 002250EC 13 C1 00 0C */ psq_lx f30, r1, r0, 0, qr0 +/* 80228190 002250F0 CB C1 12 B0 */ lfd f30, 0x12b0(r1) +/* 80228194 002250F4 38 00 12 A8 */ li r0, 0x12a8 +/* 80228198 002250F8 13 A1 00 0C */ psq_lx f29, r1, r0, 0, qr0 +/* 8022819C 002250FC CB A1 12 A0 */ lfd f29, 0x12a0(r1) +/* 802281A0 00225100 38 00 12 98 */ li r0, 0x1298 +/* 802281A4 00225104 13 81 00 0C */ psq_lx f28, r1, r0, 0, qr0 +/* 802281A8 00225108 CB 81 12 90 */ lfd f28, 0x1290(r1) +/* 802281AC 0022510C 38 00 12 88 */ li r0, 0x1288 +/* 802281B0 00225110 13 61 00 0C */ psq_lx f27, r1, r0, 0, qr0 +/* 802281B4 00225114 CB 61 12 80 */ lfd f27, 0x1280(r1) +/* 802281B8 00225118 38 00 12 78 */ li r0, 0x1278 +/* 802281BC 0022511C 13 41 00 0C */ psq_lx f26, r1, r0, 0, qr0 +/* 802281C0 00225120 CB 41 12 70 */ lfd f26, 0x1270(r1) +/* 802281C4 00225124 BB 41 12 58 */ lmw r26, 0x1258(r1) +/* 802281C8 00225128 80 01 12 D4 */ lwz r0, 0x12d4(r1) +/* 802281CC 0022512C 7C 08 03 A6 */ mtlr r0 +/* 802281D0 00225130 38 21 12 D0 */ addi r1, r1, 0x12d0 +/* 802281D4 00225134 4E 80 00 20 */ blr + +.global sub_802281d8 +sub_802281d8: +/* 802281D8 00225138 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 802281DC 0022513C 7C 08 02 A6 */ mflr r0 +/* 802281E0 00225140 C0 02 B5 B8 */ lfs f0, lbl_805AD2D8@sda21(r2) +/* 802281E4 00225144 90 01 00 94 */ stw r0, 0x94(r1) +/* 802281E8 00225148 BF 41 00 78 */ stmw r26, 0x78(r1) +/* 802281EC 0022514C 7C 7D 1B 78 */ mr r29, r3 +/* 802281F0 00225150 7C 9E 23 78 */ mr r30, r4 +/* 802281F4 00225154 7C BB 2B 78 */ mr r27, r5 +/* 802281F8 00225158 C0 23 07 AC */ lfs f1, 0x7ac(r3) +/* 802281FC 0022515C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80228200 00225160 4C 40 13 82 */ cror 2, 0, 2 +/* 80228204 00225164 40 82 01 90 */ bne lbl_80228394 +/* 80228208 00225168 3C 60 80 3D */ lis r3, lbl_803D3310@ha +/* 8022820C 0022516C 3B 80 00 00 */ li r28, 0 +/* 80228210 00225170 38 63 33 10 */ addi r3, r3, lbl_803D3310@l +/* 80228214 00225174 3B 40 00 00 */ li r26, 0 +/* 80228218 00225178 38 83 00 B8 */ addi r4, r3, 0xb8 +/* 8022821C 0022517C 38 60 01 00 */ li r3, 0x100 +/* 80228220 00225180 38 A0 00 00 */ li r5, 0 +/* 80228224 00225184 48 0E D6 49 */ bl __nw__FUlPCcPCc +/* 80228228 00225188 7C 7F 1B 79 */ or. r31, r3, r3 +/* 8022822C 0022518C 41 82 00 B4 */ beq lbl_802282E0 +/* 80228230 00225190 80 BD 00 64 */ lwz r5, 0x64(r29) +/* 80228234 00225194 3C 60 80 3D */ lis r3, lbl_803D3310@ha +/* 80228238 00225198 38 83 33 10 */ addi r4, r3, lbl_803D3310@l +/* 8022823C 0022519C 38 61 00 44 */ addi r3, r1, 0x44 +/* 80228240 002251A0 C0 05 00 00 */ lfs f0, 0(r5) +/* 80228244 002251A4 38 84 00 BF */ addi r4, r4, 0xbf +/* 80228248 002251A8 D0 01 00 54 */ stfs f0, 0x54(r1) +/* 8022824C 002251AC C0 05 00 04 */ lfs f0, 4(r5) +/* 80228250 002251B0 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 80228254 002251B4 C0 05 00 08 */ lfs f0, 8(r5) +/* 80228258 002251B8 D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 8022825C 002251BC 4B DD CA 5D */ bl string_l__4rstlFPCc +/* 80228260 002251C0 80 0D A3 88 */ lwz r0, lbl_805A8F48@sda21(r13) +/* 80228264 002251C4 3C 60 80 57 */ lis r3, lbl_8056D410@ha +/* 80228268 002251C8 38 A3 D4 10 */ addi r5, r3, lbl_8056D410@l +/* 8022826C 002251CC 38 81 00 30 */ addi r4, r1, 0x30 +/* 80228270 002251D0 90 01 00 34 */ stw r0, 0x34(r1) +/* 80228274 002251D4 38 61 00 60 */ addi r3, r1, 0x60 +/* 80228278 002251D8 38 C1 00 34 */ addi r6, r1, 0x34 +/* 8022827C 002251DC 3B 80 00 01 */ li r28, 1 +/* 80228280 002251E0 80 1D 00 04 */ lwz r0, 4(r29) +/* 80228284 002251E4 90 01 00 2C */ stw r0, 0x2c(r1) +/* 80228288 002251E8 90 01 00 30 */ stw r0, 0x30(r1) +/* 8022828C 002251EC 4B E2 91 F9 */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" +/* 80228290 002251F0 7F C4 F3 78 */ mr r4, r30 +/* 80228294 002251F4 38 61 00 10 */ addi r3, r1, 0x10 +/* 80228298 002251F8 3B 40 00 01 */ li r26, 1 +/* 8022829C 002251FC 4B E2 4E 41 */ bl AllocateUniqueId__13CStateManagerFv +/* 802282A0 00225200 A0 01 00 10 */ lhz r0, 0x10(r1) +/* 802282A4 00225204 B0 01 00 14 */ sth r0, 0x14(r1) +/* 802282A8 00225208 48 12 1D 05 */ bl White__6CColorFv +/* 802282AC 0022520C 38 01 00 54 */ addi r0, r1, 0x54 +/* 802282B0 00225210 7F 69 DB 78 */ mr r9, r27 +/* 802282B4 00225214 90 01 00 08 */ stw r0, 8(r1) +/* 802282B8 00225218 38 9D 07 60 */ addi r4, r29, 0x760 +/* 802282BC 0022521C 38 A1 00 14 */ addi r5, r1, 0x14 +/* 802282C0 00225220 38 E1 00 60 */ addi r7, r1, 0x60 +/* 802282C4 00225224 90 61 00 0C */ stw r3, 0xc(r1) +/* 802282C8 00225228 7F E3 FB 78 */ mr r3, r31 +/* 802282CC 0022522C 39 01 00 44 */ addi r8, r1, 0x44 +/* 802282D0 00225230 38 C0 00 01 */ li r6, 1 +/* 802282D4 00225234 39 40 00 00 */ li r10, 0 +/* 802282D8 00225238 4B E3 28 21 */ bl "__ct__10CExplosionFRC31TLockedToken<15CGenDescription>9TUniqueIdbRC11CEntityInfoRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC12CTransform4fUiRC9CVector3fRC6CColor" +/* 802282DC 0022523C 7C 7F 1B 78 */ mr r31, r3 +lbl_802282E0: +/* 802282E0 00225240 7F 40 07 75 */ extsb. r0, r26 +/* 802282E4 00225244 41 82 00 44 */ beq lbl_80228328 +/* 802282E8 00225248 80 01 00 68 */ lwz r0, 0x68(r1) +/* 802282EC 0022524C 80 61 00 70 */ lwz r3, 0x70(r1) +/* 802282F0 00225250 1C 00 00 0C */ mulli r0, r0, 0xc +/* 802282F4 00225254 90 61 00 1C */ stw r3, 0x1c(r1) +/* 802282F8 00225258 7C 64 1B 78 */ mr r4, r3 +/* 802282FC 0022525C 7C 03 02 14 */ add r0, r3, r0 +/* 80228300 00225260 90 61 00 18 */ stw r3, 0x18(r1) +/* 80228304 00225264 90 01 00 24 */ stw r0, 0x24(r1) +/* 80228308 00225268 90 01 00 20 */ stw r0, 0x20(r1) +/* 8022830C 0022526C 48 00 00 08 */ b lbl_80228314 +lbl_80228310: +/* 80228310 00225270 38 84 00 0C */ addi r4, r4, 0xc +lbl_80228314: +/* 80228314 00225274 7C 04 00 40 */ cmplw r4, r0 +/* 80228318 00225278 40 82 FF F8 */ bne lbl_80228310 +/* 8022831C 0022527C 28 03 00 00 */ cmplwi r3, 0 +/* 80228320 00225280 41 82 00 08 */ beq lbl_80228328 +/* 80228324 00225284 48 0E D6 0D */ bl Free__7CMemoryFPCv +lbl_80228328: +/* 80228328 00225288 7F 80 07 75 */ extsb. r0, r28 +/* 8022832C 0022528C 41 82 00 0C */ beq lbl_80228338 +/* 80228330 00225290 38 61 00 44 */ addi r3, r1, 0x44 +/* 80228334 00225294 48 11 57 AD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80228338: +/* 80228338 00225298 28 1F 00 00 */ cmplwi r31, 0 +/* 8022833C 0022529C 41 82 00 58 */ beq lbl_80228394 +/* 80228340 002252A0 7F C3 F3 78 */ mr r3, r30 +/* 80228344 002252A4 7F E4 FB 78 */ mr r4, r31 +/* 80228348 002252A8 4B E2 49 AD */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +/* 8022834C 002252AC 81 5D 00 04 */ lwz r10, 4(r29) +/* 80228350 002252B0 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 80228354 002252B4 C0 5D 00 60 */ lfs f2, 0x60(r29) +/* 80228358 002252B8 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 8022835C 002252BC C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 80228360 002252C0 38 61 00 28 */ addi r3, r1, 0x28 +/* 80228364 002252C4 C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 80228368 002252C8 38 A1 00 38 */ addi r5, r1, 0x38 +/* 8022836C 002252CC A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) +/* 80228370 002252D0 38 E0 00 00 */ li r7, 0 +/* 80228374 002252D4 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 80228378 002252D8 39 00 00 00 */ li r8, 0 +/* 8022837C 002252DC D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 80228380 002252E0 D0 41 00 40 */ stfs f2, 0x40(r1) +/* 80228384 002252E4 A0 9D 05 FC */ lhz r4, 0x5fc(r29) +/* 80228388 002252E8 48 0C 1F 29 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +/* 8022838C 002252EC C0 02 B5 E8 */ lfs f0, lbl_805AD308@sda21(r2) +/* 80228390 002252F0 D0 1D 07 AC */ stfs f0, 0x7ac(r29) +lbl_80228394: +/* 80228394 002252F4 BB 41 00 78 */ lmw r26, 0x78(r1) +/* 80228398 002252F8 80 01 00 94 */ lwz r0, 0x94(r1) +/* 8022839C 002252FC 7C 08 03 A6 */ mtlr r0 +/* 802283A0 00225300 38 21 00 90 */ addi r1, r1, 0x90 +/* 802283A4 00225304 4E 80 00 20 */ blr + +.global sub_802283a8 +sub_802283a8: +/* 802283A8 00225308 94 21 FE C0 */ stwu r1, -0x140(r1) +/* 802283AC 0022530C 7C 08 02 A6 */ mflr r0 +/* 802283B0 00225310 90 01 01 44 */ stw r0, 0x144(r1) +/* 802283B4 00225314 DB E1 01 30 */ stfd f31, 0x130(r1) +/* 802283B8 00225318 F3 E1 01 38 */ psq_st f31, 312(r1), 0, qr0 +/* 802283BC 0022531C DB C1 01 20 */ stfd f30, 0x120(r1) +/* 802283C0 00225320 F3 C1 01 28 */ psq_st f30, 296(r1), 0, qr0 +/* 802283C4 00225324 93 E1 01 1C */ stw r31, 0x11c(r1) +/* 802283C8 00225328 93 C1 01 18 */ stw r30, 0x118(r1) +/* 802283CC 0022532C 93 A1 01 14 */ stw r29, 0x114(r1) +/* 802283D0 00225330 7C 9F 23 78 */ mr r31, r4 +/* 802283D4 00225334 7C 7D 1B 78 */ mr r29, r3 +/* 802283D8 00225338 83 C4 08 4C */ lwz r30, 0x84c(r4) +/* 802283DC 0022533C 38 61 00 24 */ addi r3, r1, 0x24 +/* 802283E0 00225340 C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 802283E4 00225344 C0 1E 00 50 */ lfs f0, 0x50(r30) +/* 802283E8 00225348 C0 7D 00 60 */ lfs f3, 0x60(r29) +/* 802283EC 0022534C C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 802283F0 00225350 EC 81 00 28 */ fsubs f4, f1, f0 +/* 802283F4 00225354 C0 3D 00 40 */ lfs f1, 0x40(r29) +/* 802283F8 00225358 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 802283FC 0022535C EC 43 10 28 */ fsubs f2, f3, f2 +/* 80228400 00225360 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80228404 00225364 D0 81 00 28 */ stfs f4, 0x28(r1) +/* 80228408 00225368 D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 8022840C 0022536C D0 01 00 24 */ stfs f0, 0x24(r1) +/* 80228410 00225370 48 0E C4 A9 */ bl Magnitude__9CVector3fCFv +/* 80228414 00225374 88 1D 09 88 */ lbz r0, 0x988(r29) +/* 80228418 00225378 FF E0 08 90 */ fmr f31, f1 +/* 8022841C 0022537C 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 80228420 00225380 41 82 00 0C */ beq lbl_8022842C +/* 80228424 00225384 C3 C2 B5 CC */ lfs f30, lbl_805AD2EC@sda21(r2) +/* 80228428 00225388 48 00 00 08 */ b lbl_80228430 +lbl_8022842C: +/* 8022842C 0022538C C3 C2 B5 E8 */ lfs f30, lbl_805AD308@sda21(r2) +lbl_80228430: +/* 80228430 00225390 80 9D 00 64 */ lwz r4, 0x64(r29) +/* 80228434 00225394 38 61 00 18 */ addi r3, r1, 0x18 +/* 80228438 00225398 C0 04 00 00 */ lfs f0, 0(r4) +/* 8022843C 0022539C D0 01 00 18 */ stfs f0, 0x18(r1) +/* 80228440 002253A0 C0 04 00 04 */ lfs f0, 4(r4) +/* 80228444 002253A4 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 80228448 002253A8 C0 04 00 08 */ lfs f0, 8(r4) +/* 8022844C 002253AC D0 01 00 20 */ stfs f0, 0x20(r1) +/* 80228450 002253B0 48 0E C4 69 */ bl Magnitude__9CVector3fCFv +/* 80228454 002253B4 EF DE 00 72 */ fmuls f30, f30, f1 +/* 80228458 002253B8 C0 22 B5 EC */ lfs f1, lbl_805AD30C@sda21(r2) +/* 8022845C 002253BC C0 02 B5 B8 */ lfs f0, lbl_805AD2D8@sda21(r2) +/* 80228460 002253C0 EF C1 F7 FC */ fnmsubs f30, f1, f31, f30 +/* 80228464 002253C4 FC 1E 00 40 */ fcmpo cr0, f30, f0 +/* 80228468 002253C8 40 81 01 30 */ ble lbl_80228598 +/* 8022846C 002253CC 80 1E 02 B0 */ lwz r0, 0x2b0(r30) +/* 80228470 002253D0 2C 00 00 02 */ cmpwi r0, 2 +/* 80228474 002253D4 40 82 00 0C */ bne lbl_80228480 +/* 80228478 002253D8 80 1E 02 AC */ lwz r0, 0x2ac(r30) +/* 8022847C 002253DC 48 00 00 08 */ b lbl_80228484 +lbl_80228480: +/* 80228480 002253E0 38 00 00 04 */ li r0, 4 +lbl_80228484: +/* 80228484 002253E4 2C 00 00 01 */ cmpwi r0, 1 +/* 80228488 002253E8 41 82 01 10 */ beq lbl_80228598 +/* 8022848C 002253EC 88 1E 09 C4 */ lbz r0, 0x9c4(r30) +/* 80228490 002253F0 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 80228494 002253F4 40 82 01 04 */ bne lbl_80228598 +/* 80228498 002253F8 80 1E 02 F8 */ lwz r0, 0x2f8(r30) +/* 8022849C 002253FC 2C 00 00 01 */ cmpwi r0, 1 +/* 802284A0 00225400 41 82 00 84 */ beq lbl_80228524 +/* 802284A4 00225404 80 9F 08 70 */ lwz r4, 0x870(r31) +/* 802284A8 00225408 38 61 00 08 */ addi r3, r1, 8 +/* 802284AC 0022540C 80 A4 00 7C */ lwz r5, 0x7c(r4) +/* 802284B0 00225410 A3 C5 00 08 */ lhz r30, 8(r5) +/* 802284B4 00225414 4B DE 37 25 */ bl GetCurrentCameraId__14CCameraManagerCFv +/* 802284B8 00225418 A0 01 00 08 */ lhz r0, 8(r1) +/* 802284BC 0022541C 7C 00 F0 40 */ cmplw r0, r30 +/* 802284C0 00225420 40 82 00 D8 */ bne lbl_80228598 +/* 802284C4 00225424 FC 40 F0 90 */ fmr f2, f30 +/* 802284C8 00225428 C0 22 B5 BC */ lfs f1, lbl_805AD2DC@sda21(r2) +/* 802284CC 0022542C 38 61 00 30 */ addi r3, r1, 0x30 +/* 802284D0 00225430 4B F3 53 61 */ bl __ct__16CCameraShakeDataFff +/* 802284D4 00225434 80 7F 08 70 */ lwz r3, 0x870(r31) +/* 802284D8 00225438 38 81 00 30 */ addi r4, r1, 0x30 +/* 802284DC 0022543C 38 A0 00 01 */ li r5, 1 +/* 802284E0 00225440 4B DE 25 41 */ bl AddCameraShaker__14CCameraManagerFRC16CCameraShakeDatab +/* 802284E4 00225444 34 81 00 B0 */ addic. r4, r1, 0xb0 +/* 802284E8 00225448 41 82 00 10 */ beq lbl_802284F8 +/* 802284EC 0022544C 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 802284F0 00225450 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 802284F4 00225454 90 04 00 00 */ stw r0, 0(r4) +lbl_802284F8: +/* 802284F8 00225458 34 81 00 74 */ addic. r4, r1, 0x74 +/* 802284FC 0022545C 41 82 00 10 */ beq lbl_8022850C +/* 80228500 00225460 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 80228504 00225464 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 80228508 00225468 90 04 00 00 */ stw r0, 0(r4) +lbl_8022850C: +/* 8022850C 0022546C 34 81 00 38 */ addic. r4, r1, 0x38 +/* 80228510 00225470 41 82 00 88 */ beq lbl_80228598 +/* 80228514 00225474 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 80228518 00225478 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8022851C 0022547C 90 04 00 00 */ stw r0, 0(r4) +/* 80228520 00225480 48 00 00 78 */ b lbl_80228598 +lbl_80228524: +/* 80228524 00225484 88 1D 09 88 */ lbz r0, 0x988(r29) +/* 80228528 00225488 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 8022852C 0022548C 41 82 00 0C */ beq lbl_80228538 +/* 80228530 00225490 C0 62 B5 F0 */ lfs f3, lbl_805AD310@sda21(r2) +/* 80228534 00225494 48 00 00 08 */ b lbl_8022853C +lbl_80228538: +/* 80228538 00225498 C0 62 B5 F4 */ lfs f3, lbl_805AD314@sda21(r2) +lbl_8022853C: +/* 8022853C 0022549C 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 80228540 002254A0 C4 43 66 F4 */ lfsu f2, lbl_805A66F4@l(r3) +/* 80228544 002254A4 C0 9E 00 E8 */ lfs f4, 0xe8(r30) +/* 80228548 002254A8 C0 23 00 04 */ lfs f1, 4(r3) +/* 8022854C 002254AC EC 43 00 B2 */ fmuls f2, f3, f2 +/* 80228550 002254B0 C0 03 00 08 */ lfs f0, 8(r3) +/* 80228554 002254B4 EC 23 00 72 */ fmuls f1, f3, f1 +/* 80228558 002254B8 EC 03 00 32 */ fmuls f0, f3, f0 +/* 8022855C 002254BC EC 44 00 B2 */ fmuls f2, f4, f2 +/* 80228560 002254C0 EC 24 00 72 */ fmuls f1, f4, f1 +/* 80228564 002254C4 EC 04 00 32 */ fmuls f0, f4, f0 +/* 80228568 002254C8 D0 41 00 0C */ stfs f2, 0xc(r1) +/* 8022856C 002254CC D0 21 00 10 */ stfs f1, 0x10(r1) +/* 80228570 002254D0 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 80228574 002254D4 4B DF 2F C1 */ bl Identity__10CAxisAngleFv +/* 80228578 002254D8 7C 65 1B 78 */ mr r5, r3 +/* 8022857C 002254DC 7F C3 F3 78 */ mr r3, r30 +/* 80228580 002254E0 38 81 00 0C */ addi r4, r1, 0xc +/* 80228584 002254E4 4B EF 3E 15 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +/* 80228588 002254E8 7F C3 F3 78 */ mr r3, r30 +/* 8022858C 002254EC 7F E5 FB 78 */ mr r5, r31 +/* 80228590 002254F0 38 80 00 02 */ li r4, 2 +/* 80228594 002254F4 48 05 DE 59 */ bl SetMoveState__7CPlayerFQ27NPlayer20EPlayerMovementStateR13CStateManager +lbl_80228598: +/* 80228598 002254F8 E3 E1 01 38 */ psq_l f31, 312(r1), 0, qr0 +/* 8022859C 002254FC CB E1 01 30 */ lfd f31, 0x130(r1) +/* 802285A0 00225500 E3 C1 01 28 */ psq_l f30, 296(r1), 0, qr0 +/* 802285A4 00225504 CB C1 01 20 */ lfd f30, 0x120(r1) +/* 802285A8 00225508 83 E1 01 1C */ lwz r31, 0x11c(r1) +/* 802285AC 0022550C 83 C1 01 18 */ lwz r30, 0x118(r1) +/* 802285B0 00225510 80 01 01 44 */ lwz r0, 0x144(r1) +/* 802285B4 00225514 83 A1 01 14 */ lwz r29, 0x114(r1) +/* 802285B8 00225518 7C 08 03 A6 */ mtlr r0 +/* 802285BC 0022551C 38 21 01 40 */ addi r1, r1, 0x140 +/* 802285C0 00225520 4E 80 00 20 */ blr + +.global sub_802285c4 +sub_802285c4: +/* 802285C4 00225524 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 802285C8 00225528 7C 08 02 A6 */ mflr r0 +/* 802285CC 0022552C 90 01 00 24 */ stw r0, 0x24(r1) +/* 802285D0 00225530 DB E1 00 10 */ stfd f31, 0x10(r1) +/* 802285D4 00225534 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 +/* 802285D8 00225538 93 E1 00 0C */ stw r31, 0xc(r1) +/* 802285DC 0022553C 93 C1 00 08 */ stw r30, 8(r1) +/* 802285E0 00225540 7C 7E 1B 78 */ mr r30, r3 +/* 802285E4 00225544 7C 9F 23 78 */ mr r31, r4 +/* 802285E8 00225548 C3 E3 05 E8 */ lfs f31, 0x5e8(r3) +/* 802285EC 0022554C 80 64 09 00 */ lwz r3, 0x900(r4) +/* 802285F0 00225550 48 0E 9E ED */ bl Float__9CRandom16Fv +/* 802285F4 00225554 FC 01 F8 40 */ fcmpo cr0, f1, f31 +/* 802285F8 00225558 40 81 00 1C */ ble lbl_80228614 +/* 802285FC 0022555C 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 80228600 00225560 48 0E 9E DD */ bl Float__9CRandom16Fv +/* 80228604 00225564 C0 5E 03 08 */ lfs f2, 0x308(r30) +/* 80228608 00225568 C0 1E 03 04 */ lfs f0, 0x304(r30) +/* 8022860C 0022556C EC 02 00 7A */ fmadds f0, f2, f1, f0 +/* 80228610 00225570 D0 1E 07 B8 */ stfs f0, 0x7b8(r30) +lbl_80228614: +/* 80228614 00225574 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 +/* 80228618 00225578 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8022861C 0022557C CB E1 00 10 */ lfd f31, 0x10(r1) +/* 80228620 00225580 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80228624 00225584 83 C1 00 08 */ lwz r30, 8(r1) +/* 80228628 00225588 7C 08 03 A6 */ mtlr r0 +/* 8022862C 0022558C 38 21 00 20 */ addi r1, r1, 0x20 +/* 80228630 00225590 4E 80 00 20 */ blr + +.global sub_80228634 +sub_80228634: +/* 80228634 00225594 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 80228638 00225598 7C 08 02 A6 */ mflr r0 +/* 8022863C 0022559C 90 01 00 84 */ stw r0, 0x84(r1) +/* 80228640 002255A0 DB E1 00 70 */ stfd f31, 0x70(r1) +/* 80228644 002255A4 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 +/* 80228648 002255A8 DB C1 00 60 */ stfd f30, 0x60(r1) +/* 8022864C 002255AC F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 +/* 80228650 002255B0 DB A1 00 50 */ stfd f29, 0x50(r1) +/* 80228654 002255B4 F3 A1 00 58 */ psq_st f29, 88(r1), 0, qr0 +/* 80228658 002255B8 DB 81 00 40 */ stfd f28, 0x40(r1) +/* 8022865C 002255BC F3 81 00 48 */ psq_st f28, 72(r1), 0, qr0 +/* 80228660 002255C0 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80228664 002255C4 7C 7F 1B 78 */ mr r31, r3 +/* 80228668 002255C8 38 61 00 2C */ addi r3, r1, 0x2c +/* 8022866C 002255CC C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 80228670 002255D0 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 80228674 002255D4 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 80228678 002255D8 D0 1F 08 B4 */ stfs f0, 0x8b4(r31) +/* 8022867C 002255DC D0 3F 08 B8 */ stfs f1, 0x8b8(r31) +/* 80228680 002255E0 D0 5F 08 BC */ stfs f2, 0x8bc(r31) +/* 80228684 002255E4 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 80228688 002255E8 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 8022868C 002255EC C3 C4 00 50 */ lfs f30, 0x50(r4) +/* 80228690 002255F0 C3 A4 00 60 */ lfs f29, 0x60(r4) +/* 80228694 002255F4 C0 3F 00 60 */ lfs f1, 0x60(r31) +/* 80228698 002255F8 EC 40 F0 28 */ fsubs f2, f0, f30 +/* 8022869C 002255FC C3 E4 00 40 */ lfs f31, 0x40(r4) +/* 802286A0 00225600 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 802286A4 00225604 EC 21 E8 28 */ fsubs f1, f1, f29 +/* 802286A8 00225608 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 802286AC 0022560C D0 41 00 30 */ stfs f2, 0x30(r1) +/* 802286B0 00225610 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 802286B4 00225614 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 802286B8 00225618 C0 1F 02 FC */ lfs f0, 0x2fc(r31) +/* 802286BC 0022561C EF 80 00 32 */ fmuls f28, f0, f0 +/* 802286C0 00225620 48 0E C0 39 */ bl CanBeNormalized__9CVector3fCFv +/* 802286C4 00225624 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 802286C8 00225628 41 82 00 9C */ beq lbl_80228764 +/* 802286CC 0022562C C0 21 00 2C */ lfs f1, 0x2c(r1) +/* 802286D0 00225630 C0 01 00 30 */ lfs f0, 0x30(r1) +/* 802286D4 00225634 EC 21 00 72 */ fmuls f1, f1, f1 +/* 802286D8 00225638 C0 41 00 34 */ lfs f2, 0x34(r1) +/* 802286DC 0022563C EC 00 00 32 */ fmuls f0, f0, f0 +/* 802286E0 00225640 EC 42 00 B2 */ fmuls f2, f2, f2 +/* 802286E4 00225644 EC 01 00 2A */ fadds f0, f1, f0 +/* 802286E8 00225648 EC 02 00 2A */ fadds f0, f2, f0 +/* 802286EC 0022564C FC 00 E0 40 */ fcmpo cr0, f0, f28 +/* 802286F0 00225650 40 81 00 74 */ ble lbl_80228764 +/* 802286F4 00225654 C3 9F 02 FC */ lfs f28, 0x2fc(r31) +/* 802286F8 00225658 38 61 00 08 */ addi r3, r1, 8 +/* 802286FC 0022565C 38 81 00 2C */ addi r4, r1, 0x2c +/* 80228700 00225660 48 0E C1 51 */ bl AsNormalized__9CVector3fCFv +/* 80228704 00225664 C0 21 00 08 */ lfs f1, 8(r1) +/* 80228708 00225668 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 8022870C 0022566C EC 5C 00 72 */ fmuls f2, f28, f1 +/* 80228710 00225670 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 80228714 00225674 EC 1C 00 32 */ fmuls f0, f28, f0 +/* 80228718 00225678 EC 7C 00 72 */ fmuls f3, f28, f1 +/* 8022871C 0022567C EC 3F 10 2A */ fadds f1, f31, f2 +/* 80228720 00225680 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 80228724 00225684 EC 9E 00 2A */ fadds f4, f30, f0 +/* 80228728 00225688 EC 5D 18 2A */ fadds f2, f29, f3 +/* 8022872C 0022568C D0 01 00 18 */ stfs f0, 0x18(r1) +/* 80228730 00225690 D0 3F 02 E0 */ stfs f1, 0x2e0(r31) +/* 80228734 00225694 D0 9F 02 E4 */ stfs f4, 0x2e4(r31) +/* 80228738 00225698 D0 5F 02 E8 */ stfs f2, 0x2e8(r31) +/* 8022873C 0022569C C0 1F 02 E0 */ lfs f0, 0x2e0(r31) +/* 80228740 002256A0 D0 61 00 1C */ stfs f3, 0x1c(r1) +/* 80228744 002256A4 D0 1F 08 B4 */ stfs f0, 0x8b4(r31) +/* 80228748 002256A8 C0 1F 02 E4 */ lfs f0, 0x2e4(r31) +/* 8022874C 002256AC D0 21 00 20 */ stfs f1, 0x20(r1) +/* 80228750 002256B0 D0 1F 08 B8 */ stfs f0, 0x8b8(r31) +/* 80228754 002256B4 C0 1F 02 E8 */ lfs f0, 0x2e8(r31) +/* 80228758 002256B8 D0 81 00 24 */ stfs f4, 0x24(r1) +/* 8022875C 002256BC D0 41 00 28 */ stfs f2, 0x28(r1) +/* 80228760 002256C0 D0 1F 08 BC */ stfs f0, 0x8bc(r31) +lbl_80228764: +/* 80228764 002256C4 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 +/* 80228768 002256C8 CB E1 00 70 */ lfd f31, 0x70(r1) +/* 8022876C 002256CC E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 +/* 80228770 002256D0 CB C1 00 60 */ lfd f30, 0x60(r1) +/* 80228774 002256D4 E3 A1 00 58 */ psq_l f29, 88(r1), 0, qr0 +/* 80228778 002256D8 CB A1 00 50 */ lfd f29, 0x50(r1) +/* 8022877C 002256DC E3 81 00 48 */ psq_l f28, 72(r1), 0, qr0 +/* 80228780 002256E0 CB 81 00 40 */ lfd f28, 0x40(r1) +/* 80228784 002256E4 80 01 00 84 */ lwz r0, 0x84(r1) +/* 80228788 002256E8 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8022878C 002256EC 7C 08 03 A6 */ mtlr r0 +/* 80228790 002256F0 38 21 00 80 */ addi r1, r1, 0x80 +/* 80228794 002256F4 4E 80 00 20 */ blr + +.global sub_80228798 +sub_80228798: +/* 80228798 002256F8 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8022879C 002256FC 7C 08 02 A6 */ mflr r0 +/* 802287A0 00225700 90 01 00 34 */ stw r0, 0x34(r1) +/* 802287A4 00225704 38 81 00 14 */ addi r4, r1, 0x14 +/* 802287A8 00225708 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 802287AC 0022570C 7C 7F 1B 78 */ mr r31, r3 +/* 802287B0 00225710 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 802287B4 00225714 38 7F 07 D0 */ addi r3, r31, 0x7d0 +/* 802287B8 00225718 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 802287BC 0022571C C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 802287C0 00225720 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 802287C4 00225724 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 802287C8 00225728 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 802287CC 0022572C 4B F9 E3 69 */ bl OnPath__15CPathFindSearchCFRC9CVector3f +/* 802287D0 00225730 2C 03 00 00 */ cmpwi r3, 0 +/* 802287D4 00225734 40 82 00 58 */ bne lbl_8022882C +/* 802287D8 00225738 80 BF 08 C4 */ lwz r5, 0x8c4(r31) +/* 802287DC 0022573C 38 60 00 00 */ li r3, 0 +/* 802287E0 00225740 2C 05 00 00 */ cmpwi r5, 0 +/* 802287E4 00225744 40 81 00 40 */ ble lbl_80228824 +/* 802287E8 00225748 2C 05 00 08 */ cmpwi r5, 8 +/* 802287EC 0022574C 38 85 FF F8 */ addi r4, r5, -8 +/* 802287F0 00225750 40 81 00 20 */ ble lbl_80228810 +/* 802287F4 00225754 38 04 00 07 */ addi r0, r4, 7 +/* 802287F8 00225758 54 00 E8 FE */ srwi r0, r0, 3 +/* 802287FC 0022575C 7C 09 03 A6 */ mtctr r0 +/* 80228800 00225760 2C 04 00 00 */ cmpwi r4, 0 +/* 80228804 00225764 40 81 00 0C */ ble lbl_80228810 +lbl_80228808: +/* 80228808 00225768 38 63 00 08 */ addi r3, r3, 8 +/* 8022880C 0022576C 42 00 FF FC */ bdnz lbl_80228808 +lbl_80228810: +/* 80228810 00225770 7C 03 28 50 */ subf r0, r3, r5 +/* 80228814 00225774 7C 09 03 A6 */ mtctr r0 +/* 80228818 00225778 7C 03 28 00 */ cmpw r3, r5 +/* 8022881C 0022577C 40 80 00 08 */ bge lbl_80228824 +lbl_80228820: +/* 80228820 00225780 42 00 00 00 */ bdnz lbl_80228820 +lbl_80228824: +/* 80228824 00225784 38 00 00 00 */ li r0, 0 +/* 80228828 00225788 90 1F 08 C4 */ stw r0, 0x8c4(r31) +lbl_8022882C: +/* 8022882C 0022578C 80 C1 00 14 */ lwz r6, 0x14(r1) +/* 80228830 00225790 38 7F 08 C0 */ addi r3, r31, 0x8c0 +/* 80228834 00225794 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 80228838 00225798 38 81 00 08 */ addi r4, r1, 8 +/* 8022883C 0022579C 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 80228840 002257A0 90 C1 00 08 */ stw r6, 8(r1) +/* 80228844 002257A4 90 A1 00 0C */ stw r5, 0xc(r1) +/* 80228848 002257A8 90 01 00 10 */ stw r0, 0x10(r1) +/* 8022884C 002257AC 48 07 80 E5 */ bl sub_802a0930 +/* 80228850 002257B0 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80228854 002257B4 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80228858 002257B8 7C 08 03 A6 */ mtlr r0 +/* 8022885C 002257BC 38 21 00 30 */ addi r1, r1, 0x30 +/* 80228860 002257C0 4E 80 00 20 */ blr + +.global sub_80228864 +sub_80228864: +/* 80228864 002257C4 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 80228868 002257C8 7C 08 02 A6 */ mflr r0 +/* 8022886C 002257CC 80 82 B5 B4 */ lwz r4, lbl_805AD2D4@sda21(r2) +/* 80228870 002257D0 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 80228874 002257D4 93 E1 00 9C */ stw r31, 0x9c(r1) +/* 80228878 002257D8 7C BF 2B 78 */ mr r31, r5 +/* 8022887C 002257DC 93 C1 00 98 */ stw r30, 0x98(r1) +/* 80228880 002257E0 7C 7E 1B 78 */ mr r30, r3 +/* 80228884 002257E4 38 61 00 20 */ addi r3, r1, 0x20 +/* 80228888 002257E8 4B DD C4 31 */ bl string_l__4rstlFPCc +/* 8022888C 002257EC 7F E4 FB 78 */ mr r4, r31 +/* 80228890 002257F0 38 61 00 30 */ addi r3, r1, 0x30 +/* 80228894 002257F4 38 A1 00 20 */ addi r5, r1, 0x20 +/* 80228898 002257F8 4B E2 A6 69 */ bl "GetLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8022889C 002257FC 38 61 00 60 */ addi r3, r1, 0x60 +/* 802288A0 00225800 38 81 00 30 */ addi r4, r1, 0x30 +/* 802288A4 00225804 48 0E A2 D1 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 802288A8 00225808 38 61 00 20 */ addi r3, r1, 0x20 +/* 802288AC 0022580C 48 11 52 35 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 802288B0 00225810 C0 41 00 6C */ lfs f2, 0x6c(r1) +/* 802288B4 00225814 38 61 00 14 */ addi r3, r1, 0x14 +/* 802288B8 00225818 C0 21 00 7C */ lfs f1, 0x7c(r1) +/* 802288BC 0022581C 38 9F 00 34 */ addi r4, r31, 0x34 +/* 802288C0 00225820 C0 01 00 8C */ lfs f0, 0x8c(r1) +/* 802288C4 00225824 38 A1 00 08 */ addi r5, r1, 8 +/* 802288C8 00225828 D0 41 00 08 */ stfs f2, 8(r1) +/* 802288CC 0022582C D0 21 00 0C */ stfs f1, 0xc(r1) +/* 802288D0 00225830 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 802288D4 00225834 48 0E A1 AD */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 802288D8 00225838 C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 802288DC 0022583C C0 01 00 14 */ lfs f0, 0x14(r1) +/* 802288E0 00225840 C0 9F 00 50 */ lfs f4, 0x50(r31) +/* 802288E4 00225844 C0 61 00 18 */ lfs f3, 0x18(r1) +/* 802288E8 00225848 EC 01 00 2A */ fadds f0, f1, f0 +/* 802288EC 0022584C C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 802288F0 00225850 C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 802288F4 00225854 EC 64 18 2A */ fadds f3, f4, f3 +/* 802288F8 00225858 D0 1E 00 00 */ stfs f0, 0(r30) +/* 802288FC 0022585C EC 02 08 2A */ fadds f0, f2, f1 +/* 80228900 00225860 D0 7E 00 04 */ stfs f3, 4(r30) +/* 80228904 00225864 D0 1E 00 08 */ stfs f0, 8(r30) +/* 80228908 00225868 83 E1 00 9C */ lwz r31, 0x9c(r1) +/* 8022890C 0022586C 83 C1 00 98 */ lwz r30, 0x98(r1) +/* 80228910 00225870 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 80228914 00225874 7C 08 03 A6 */ mtlr r0 +/* 80228918 00225878 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 8022891C 0022587C 4E 80 00 20 */ blr + +.global sub_80228920 +sub_80228920: +/* 80228920 00225880 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80228924 00225884 7C 08 02 A6 */ mflr r0 +/* 80228928 00225888 90 01 00 34 */ stw r0, 0x34(r1) +/* 8022892C 0022588C 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80228930 00225890 7C BF 2B 78 */ mr r31, r5 +/* 80228934 00225894 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80228938 00225898 7C 9E 23 78 */ mr r30, r4 +/* 8022893C 0022589C 93 A1 00 24 */ stw r29, 0x24(r1) +/* 80228940 002258A0 7C 7D 1B 78 */ mr r29, r3 +/* 80228944 002258A4 A0 C6 00 00 */ lhz r6, 0(r6) +/* 80228948 002258A8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8022894C 002258AC 7C 06 00 40 */ cmplw r6, r0 +/* 80228950 002258B0 41 82 00 44 */ beq lbl_80228994 +/* 80228954 002258B4 B0 C1 00 10 */ sth r6, 0x10(r1) +/* 80228958 002258B8 7F C3 F3 78 */ mr r3, r30 +/* 8022895C 002258BC 38 81 00 10 */ addi r4, r1, 0x10 +/* 80228960 002258C0 4B E2 3C 15 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80228964 002258C4 7C 64 1B 79 */ or. r4, r3, r3 +/* 80228968 002258C8 41 82 00 2C */ beq lbl_80228994 +/* 8022896C 002258CC 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 80228970 002258D0 38 C0 00 0F */ li r6, 0xf +/* 80228974 002258D4 41 82 00 08 */ beq lbl_8022897C +/* 80228978 002258D8 38 C0 00 0E */ li r6, 0xe +lbl_8022897C: +/* 8022897C 002258DC A0 1D 00 08 */ lhz r0, 8(r29) +/* 80228980 002258E0 7F C3 F3 78 */ mr r3, r30 +/* 80228984 002258E4 38 A1 00 0C */ addi r5, r1, 0xc +/* 80228988 002258E8 B0 01 00 08 */ sth r0, 8(r1) +/* 8022898C 002258EC B0 01 00 0C */ sth r0, 0xc(r1) +/* 80228990 002258F0 4B E1 B5 41 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +lbl_80228994: +/* 80228994 002258F4 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80228998 002258F8 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8022899C 002258FC 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 802289A0 00225900 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 802289A4 00225904 7C 08 03 A6 */ mtlr r0 +/* 802289A8 00225908 38 21 00 30 */ addi r1, r1, 0x30 +/* 802289AC 0022590C 4E 80 00 20 */ blr + +.global sub_802289b0 +sub_802289b0: +/* 802289B0 00225910 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 802289B4 00225914 7C 08 02 A6 */ mflr r0 +/* 802289B8 00225918 90 01 00 14 */ stw r0, 0x14(r1) +/* 802289BC 0022591C 38 C1 00 08 */ addi r6, r1, 8 +/* 802289C0 00225920 A0 03 07 72 */ lhz r0, 0x772(r3) +/* 802289C4 00225924 B0 01 00 08 */ sth r0, 8(r1) +/* 802289C8 00225928 4B FF FF 59 */ bl sub_80228920 +/* 802289CC 0022592C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 802289D0 00225930 7C 08 03 A6 */ mtlr r0 +/* 802289D4 00225934 38 21 00 10 */ addi r1, r1, 0x10 +/* 802289D8 00225938 4E 80 00 20 */ blr + +.global sub_802289dc +sub_802289dc: +/* 802289DC 0022593C 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 802289E0 00225940 7C 08 02 A6 */ mflr r0 +/* 802289E4 00225944 90 01 00 84 */ stw r0, 0x84(r1) +/* 802289E8 00225948 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 802289EC 0022594C 93 C1 00 78 */ stw r30, 0x78(r1) +/* 802289F0 00225950 7C DE 33 78 */ mr r30, r6 +/* 802289F4 00225954 93 A1 00 74 */ stw r29, 0x74(r1) +/* 802289F8 00225958 7C BD 2B 78 */ mr r29, r5 +/* 802289FC 0022595C 93 81 00 70 */ stw r28, 0x70(r1) +/* 80228A00 00225960 7C 7C 1B 78 */ mr r28, r3 +/* 80228A04 00225964 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80228A08 00225968 A0 A5 00 00 */ lhz r5, 0(r5) +/* 80228A0C 0022596C 7C 05 00 40 */ cmplw r5, r0 +/* 80228A10 00225970 41 82 00 7C */ beq lbl_80228A8C +/* 80228A14 00225974 A0 1D 00 00 */ lhz r0, 0(r29) +/* 80228A18 00225978 7C 83 23 78 */ mr r3, r4 +/* 80228A1C 0022597C 38 81 00 08 */ addi r4, r1, 8 +/* 80228A20 00225980 B0 01 00 08 */ sth r0, 8(r1) +/* 80228A24 00225984 4B E2 3B 51 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80228A28 00225988 7C 7F 1B 79 */ or. r31, r3, r3 +/* 80228A2C 0022598C 41 82 00 58 */ beq lbl_80228A84 +/* 80228A30 00225990 7F 84 E3 78 */ mr r4, r28 +/* 80228A34 00225994 7F C5 F3 78 */ mr r5, r30 +/* 80228A38 00225998 38 61 00 0C */ addi r3, r1, 0xc +/* 80228A3C 0022599C 4B E4 FF 3D */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80228A40 002259A0 38 61 00 3C */ addi r3, r1, 0x3c +/* 80228A44 002259A4 38 81 00 0C */ addi r4, r1, 0xc +/* 80228A48 002259A8 48 0E A1 2D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80228A4C 002259AC 38 7F 00 34 */ addi r3, r31, 0x34 +/* 80228A50 002259B0 38 81 00 3C */ addi r4, r1, 0x3c +/* 80228A54 002259B4 48 0E A0 ED */ bl __as__12CTransform4fFRC12CTransform4f +/* 80228A58 002259B8 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 80228A5C 002259BC 38 60 00 01 */ li r3, 1 +/* 80228A60 002259C0 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 80228A64 002259C4 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 80228A68 002259C8 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 80228A6C 002259CC 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 80228A70 002259D0 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 80228A74 002259D4 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 80228A78 002259D8 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 80228A7C 002259DC 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 80228A80 002259E0 48 00 00 0C */ b lbl_80228A8C +lbl_80228A84: +/* 80228A84 002259E4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80228A88 002259E8 B0 1D 00 00 */ sth r0, 0(r29) +lbl_80228A8C: +/* 80228A8C 002259EC 80 01 00 84 */ lwz r0, 0x84(r1) +/* 80228A90 002259F0 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 80228A94 002259F4 83 C1 00 78 */ lwz r30, 0x78(r1) +/* 80228A98 002259F8 83 A1 00 74 */ lwz r29, 0x74(r1) +/* 80228A9C 002259FC 83 81 00 70 */ lwz r28, 0x70(r1) +/* 80228AA0 00225A00 7C 08 03 A6 */ mtlr r0 +/* 80228AA4 00225A04 38 21 00 80 */ addi r1, r1, 0x80 +/* 80228AA8 00225A08 4E 80 00 20 */ blr + +.global sub_80228aac +sub_80228aac: +/* 80228AAC 00225A0C 94 21 FD F0 */ stwu r1, -0x210(r1) +/* 80228AB0 00225A10 7C 08 02 A6 */ mflr r0 +/* 80228AB4 00225A14 90 01 02 14 */ stw r0, 0x214(r1) +/* 80228AB8 00225A18 BF 41 01 F8 */ stmw r26, 0x1f8(r1) +/* 80228ABC 00225A1C 7C 7D 1B 78 */ mr r29, r3 +/* 80228AC0 00225A20 7C 9E 23 78 */ mr r30, r4 +/* 80228AC4 00225A24 7C BF 2B 78 */ mr r31, r5 +/* 80228AC8 00225A28 80 C3 06 68 */ lwz r6, 0x668(r3) +/* 80228ACC 00225A2C 3C 06 00 01 */ addis r0, r6, 1 +/* 80228AD0 00225A30 28 00 FF FF */ cmplwi r0, 0xffff +/* 80228AD4 00225A34 41 82 02 B8 */ beq lbl_80228D8C +/* 80228AD8 00225A38 80 BD 00 64 */ lwz r5, 0x64(r29) +/* 80228ADC 00225A3C 38 00 00 01 */ li r0, 1 +/* 80228AE0 00225A40 80 FD 06 70 */ lwz r7, 0x670(r29) +/* 80228AE4 00225A44 38 61 01 A0 */ addi r3, r1, 0x1a0 +/* 80228AE8 00225A48 C0 45 00 00 */ lfs f2, 0(r5) +/* 80228AEC 00225A4C 38 81 00 C0 */ addi r4, r1, 0xc0 +/* 80228AF0 00225A50 C0 25 00 04 */ lfs f1, 4(r5) +/* 80228AF4 00225A54 C0 05 00 08 */ lfs f0, 8(r5) +/* 80228AF8 00225A58 80 BD 06 6C */ lwz r5, 0x66c(r29) +/* 80228AFC 00225A5C D0 41 00 58 */ stfs f2, 0x58(r1) +/* 80228B00 00225A60 D0 21 00 5C */ stfs f1, 0x5c(r1) +/* 80228B04 00225A64 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 80228B08 00225A68 90 C1 00 C0 */ stw r6, 0xc0(r1) +/* 80228B0C 00225A6C 90 A1 00 C4 */ stw r5, 0xc4(r1) +/* 80228B10 00225A70 D0 41 00 C8 */ stfs f2, 0xc8(r1) +/* 80228B14 00225A74 D0 21 00 CC */ stfs f1, 0xcc(r1) +/* 80228B18 00225A78 D0 01 00 D0 */ stfs f0, 0xd0(r1) +/* 80228B1C 00225A7C 98 01 00 D4 */ stb r0, 0xd4(r1) +/* 80228B20 00225A80 90 E1 00 D8 */ stw r7, 0xd8(r1) +/* 80228B24 00225A84 4B EE E0 31 */ bl __ct__10CModelDataFRC8CAnimRes +/* 80228B28 00225A88 81 5D 06 84 */ lwz r10, 0x684(r29) +/* 80228B2C 00225A8C 38 61 01 48 */ addi r3, r1, 0x148 +/* 80228B30 00225A90 81 3D 06 88 */ lwz r9, 0x688(r29) +/* 80228B34 00225A94 38 81 01 0C */ addi r4, r1, 0x10c +/* 80228B38 00225A98 80 FD 06 8C */ lwz r7, 0x68c(r29) +/* 80228B3C 00225A9C 39 01 00 64 */ addi r8, r1, 0x64 +/* 80228B40 00225AA0 80 DD 06 90 */ lwz r6, 0x690(r29) +/* 80228B44 00225AA4 80 BD 06 94 */ lwz r5, 0x694(r29) +/* 80228B48 00225AA8 80 1D 06 98 */ lwz r0, 0x698(r29) +/* 80228B4C 00225AAC 91 41 00 A8 */ stw r10, 0xa8(r1) +/* 80228B50 00225AB0 81 5D 06 80 */ lwz r10, 0x680(r29) +/* 80228B54 00225AB4 91 21 00 AC */ stw r9, 0xac(r1) +/* 80228B58 00225AB8 A1 3D 06 CE */ lhz r9, 0x6ce(r29) +/* 80228B5C 00225ABC 90 E1 00 B0 */ stw r7, 0xb0(r1) +/* 80228B60 00225AC0 A0 FD 06 CC */ lhz r7, 0x6cc(r29) +/* 80228B64 00225AC4 90 C1 00 B4 */ stw r6, 0xb4(r1) +/* 80228B68 00225AC8 80 DD 06 C8 */ lwz r6, 0x6c8(r29) +/* 80228B6C 00225ACC 90 A1 00 B8 */ stw r5, 0xb8(r1) +/* 80228B70 00225AD0 81 7D 06 AC */ lwz r11, 0x6ac(r29) +/* 80228B74 00225AD4 90 01 00 BC */ stw r0, 0xbc(r1) +/* 80228B78 00225AD8 81 9D 06 A8 */ lwz r12, 0x6a8(r29) +/* 80228B7C 00225ADC 83 9D 06 A4 */ lwz r28, 0x6a4(r29) +/* 80228B80 00225AE0 83 7D 06 A0 */ lwz r27, 0x6a0(r29) +/* 80228B84 00225AE4 C0 BD 06 B4 */ lfs f5, 0x6b4(r29) +/* 80228B88 00225AE8 C0 9D 06 B0 */ lfs f4, 0x6b0(r29) +/* 80228B8C 00225AEC 88 A1 00 A8 */ lbz r5, 0xa8(r1) +/* 80228B90 00225AF0 C0 61 00 AC */ lfs f3, 0xac(r1) +/* 80228B94 00225AF4 C0 41 00 B0 */ lfs f2, 0xb0(r1) +/* 80228B98 00225AF8 C0 21 00 B4 */ lfs f1, 0xb4(r1) +/* 80228B9C 00225AFC C0 01 00 B8 */ lfs f0, 0xb8(r1) +/* 80228BA0 00225B00 88 01 00 BC */ lbz r0, 0xbc(r1) +/* 80228BA4 00225B04 D0 81 01 0C */ stfs f4, 0x10c(r1) +/* 80228BA8 00225B08 D0 A1 01 10 */ stfs f5, 0x110(r1) +/* 80228BAC 00225B0C 91 41 01 14 */ stw r10, 0x114(r1) +/* 80228BB0 00225B10 98 A1 01 18 */ stb r5, 0x118(r1) +/* 80228BB4 00225B14 D0 61 01 1C */ stfs f3, 0x11c(r1) +/* 80228BB8 00225B18 D0 41 01 20 */ stfs f2, 0x120(r1) +/* 80228BBC 00225B1C D0 21 01 24 */ stfs f1, 0x124(r1) +/* 80228BC0 00225B20 D0 01 01 28 */ stfs f0, 0x128(r1) +/* 80228BC4 00225B24 98 01 01 2C */ stb r0, 0x12c(r1) +/* 80228BC8 00225B28 93 61 01 30 */ stw r27, 0x130(r1) +/* 80228BCC 00225B2C 93 81 01 34 */ stw r28, 0x134(r1) +/* 80228BD0 00225B30 91 81 01 38 */ stw r12, 0x138(r1) +/* 80228BD4 00225B34 91 61 01 3C */ stw r11, 0x13c(r1) +/* 80228BD8 00225B38 90 C1 01 40 */ stw r6, 0x140(r1) +/* 80228BDC 00225B3C B0 E1 01 44 */ sth r7, 0x144(r1) +/* 80228BE0 00225B40 B1 21 01 46 */ sth r9, 0x146(r1) +/* 80228BE4 00225B44 C0 3D 06 C4 */ lfs f1, 0x6c4(r29) +/* 80228BE8 00225B48 C0 5D 06 C0 */ lfs f2, 0x6c0(r29) +/* 80228BEC 00225B4C C0 7D 06 BC */ lfs f3, 0x6bc(r29) +/* 80228BF0 00225B50 C0 1D 06 B8 */ lfs f0, 0x6b8(r29) +/* 80228BF4 00225B54 91 41 00 A4 */ stw r10, 0xa4(r1) +/* 80228BF8 00225B58 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 80228BFC 00225B5C D0 61 00 68 */ stfs f3, 0x68(r1) +/* 80228C00 00225B60 D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 80228C04 00225B64 D0 21 00 70 */ stfs f1, 0x70(r1) +/* 80228C08 00225B68 80 BD 06 7C */ lwz r5, 0x67c(r29) +/* 80228C0C 00225B6C 80 DD 06 74 */ lwz r6, 0x674(r29) +/* 80228C10 00225B70 A0 FD 06 78 */ lhz r7, 0x678(r29) +/* 80228C14 00225B74 48 00 01 8D */ bl sub_80228da0 +/* 80228C18 00225B78 3C 60 80 3D */ lis r3, lbl_803D3310@ha +/* 80228C1C 00225B7C 3B 80 00 00 */ li r28, 0 +/* 80228C20 00225B80 38 63 33 10 */ addi r3, r3, lbl_803D3310@l +/* 80228C24 00225B84 3B 40 00 00 */ li r26, 0 +/* 80228C28 00225B88 38 83 00 B8 */ addi r4, r3, 0xb8 +/* 80228C2C 00225B8C 38 60 04 00 */ li r3, 0x400 +/* 80228C30 00225B90 38 A0 00 00 */ li r5, 0 +/* 80228C34 00225B94 48 0E CC 39 */ bl __nw__FUlPCcPCc +/* 80228C38 00225B98 7C 7B 1B 79 */ or. r27, r3, r3 +/* 80228C3C 00225B9C 41 82 00 D8 */ beq lbl_80228D14 +/* 80228C40 00225BA0 A0 DD 00 08 */ lhz r6, 8(r29) +/* 80228C44 00225BA4 3C 60 80 57 */ lis r3, lbl_8056D410@ha +/* 80228C48 00225BA8 38 A3 D4 10 */ addi r5, r3, lbl_8056D410@l +/* 80228C4C 00225BAC C0 02 B5 F4 */ lfs f0, lbl_805AD314@sda21(r2) +/* 80228C50 00225BB0 B0 C1 00 20 */ sth r6, 0x20(r1) +/* 80228C54 00225BB4 38 61 00 74 */ addi r3, r1, 0x74 +/* 80228C58 00225BB8 80 0D A3 88 */ lwz r0, lbl_805A8F48@sda21(r13) +/* 80228C5C 00225BBC 38 81 00 38 */ addi r4, r1, 0x38 +/* 80228C60 00225BC0 C0 3D 06 9C */ lfs f1, 0x69c(r29) +/* 80228C64 00225BC4 B0 C1 00 1C */ sth r6, 0x1c(r1) +/* 80228C68 00225BC8 38 C1 00 3C */ addi r6, r1, 0x3c +/* 80228C6C 00225BCC D0 21 00 40 */ stfs f1, 0x40(r1) +/* 80228C70 00225BD0 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 80228C74 00225BD4 90 01 00 3C */ stw r0, 0x3c(r1) +/* 80228C78 00225BD8 80 1D 00 04 */ lwz r0, 4(r29) +/* 80228C7C 00225BDC 90 01 00 34 */ stw r0, 0x34(r1) +/* 80228C80 00225BE0 90 01 00 38 */ stw r0, 0x38(r1) +/* 80228C84 00225BE4 4B E2 88 01 */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" +/* 80228C88 00225BE8 3C 80 80 3D */ lis r4, lbl_803D3310@ha +/* 80228C8C 00225BEC 38 61 00 48 */ addi r3, r1, 0x48 +/* 80228C90 00225BF0 38 84 33 10 */ addi r4, r4, lbl_803D3310@l +/* 80228C94 00225BF4 3B 80 00 01 */ li r28, 1 +/* 80228C98 00225BF8 38 84 00 D0 */ addi r4, r4, 0xd0 +/* 80228C9C 00225BFC 4B DD C0 1D */ bl string_l__4rstlFPCc +/* 80228CA0 00225C00 A0 1F 00 00 */ lhz r0, 0(r31) +/* 80228CA4 00225C04 38 61 00 DC */ addi r3, r1, 0xdc +/* 80228CA8 00225C08 38 9D 00 34 */ addi r4, r29, 0x34 +/* 80228CAC 00225C0C 3B 40 00 01 */ li r26, 1 +/* 80228CB0 00225C10 B0 01 00 18 */ sth r0, 0x18(r1) +/* 80228CB4 00225C14 48 0E 9F 8D */ bl GetRotation__12CTransform4fCFv +/* 80228CB8 00225C18 38 61 00 8C */ addi r3, r1, 0x8c +/* 80228CBC 00225C1C 38 81 01 A0 */ addi r4, r1, 0x1a0 +/* 80228CC0 00225C20 38 A1 00 DC */ addi r5, r1, 0xdc +/* 80228CC4 00225C24 4B EE CA F1 */ bl GetBounds__10CModelDataCFRC12CTransform4f +/* 80228CC8 00225C28 38 1D 05 6C */ addi r0, r29, 0x56c +/* 80228CCC 00225C2C 38 7D 06 00 */ addi r3, r29, 0x600 +/* 80228CD0 00225C30 90 01 00 08 */ stw r0, 8(r1) +/* 80228CD4 00225C34 38 C1 00 20 */ addi r6, r1, 0x20 +/* 80228CD8 00225C38 38 01 01 48 */ addi r0, r1, 0x148 +/* 80228CDC 00225C3C C0 22 B5 B8 */ lfs f1, lbl_805AD2D8@sda21(r2) +/* 80228CE0 00225C40 90 61 00 0C */ stw r3, 0xc(r1) +/* 80228CE4 00225C44 7F 63 DB 78 */ mr r3, r27 +/* 80228CE8 00225C48 38 81 00 18 */ addi r4, r1, 0x18 +/* 80228CEC 00225C4C 38 A1 00 48 */ addi r5, r1, 0x48 +/* 80228CF0 00225C50 90 C1 00 10 */ stw r6, 0x10(r1) +/* 80228CF4 00225C54 38 C1 00 74 */ addi r6, r1, 0x74 +/* 80228CF8 00225C58 38 FD 00 34 */ addi r7, r29, 0x34 +/* 80228CFC 00225C5C 39 01 01 A0 */ addi r8, r1, 0x1a0 +/* 80228D00 00225C60 90 01 00 14 */ stw r0, 0x14(r1) +/* 80228D04 00225C64 39 21 00 8C */ addi r9, r1, 0x8c +/* 80228D08 00225C68 39 41 00 40 */ addi r10, r1, 0x40 +/* 80228D0C 00225C6C 48 00 82 7D */ bl __ct__16CGrenadeLauncherF9TUniqueId +/* 80228D10 00225C70 7C 7B 1B 78 */ mr r27, r3 +lbl_80228D14: +/* 80228D14 00225C74 7F 40 07 75 */ extsb. r0, r26 +/* 80228D18 00225C78 41 82 00 0C */ beq lbl_80228D24 +/* 80228D1C 00225C7C 38 61 00 48 */ addi r3, r1, 0x48 +/* 80228D20 00225C80 48 11 4D C1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80228D24: +/* 80228D24 00225C84 7F 80 07 75 */ extsb. r0, r28 +/* 80228D28 00225C88 41 82 00 44 */ beq lbl_80228D6C +/* 80228D2C 00225C8C 80 01 00 7C */ lwz r0, 0x7c(r1) +/* 80228D30 00225C90 80 61 00 84 */ lwz r3, 0x84(r1) +/* 80228D34 00225C94 1C 00 00 0C */ mulli r0, r0, 0xc +/* 80228D38 00225C98 90 61 00 28 */ stw r3, 0x28(r1) +/* 80228D3C 00225C9C 7C 64 1B 78 */ mr r4, r3 +/* 80228D40 00225CA0 7C 03 02 14 */ add r0, r3, r0 +/* 80228D44 00225CA4 90 61 00 24 */ stw r3, 0x24(r1) +/* 80228D48 00225CA8 90 01 00 30 */ stw r0, 0x30(r1) +/* 80228D4C 00225CAC 90 01 00 2C */ stw r0, 0x2c(r1) +/* 80228D50 00225CB0 48 00 00 08 */ b lbl_80228D58 +lbl_80228D54: +/* 80228D54 00225CB4 38 84 00 0C */ addi r4, r4, 0xc +lbl_80228D58: +/* 80228D58 00225CB8 7C 04 00 40 */ cmplw r4, r0 +/* 80228D5C 00225CBC 40 82 FF F8 */ bne lbl_80228D54 +/* 80228D60 00225CC0 28 03 00 00 */ cmplwi r3, 0 +/* 80228D64 00225CC4 41 82 00 08 */ beq lbl_80228D6C +/* 80228D68 00225CC8 48 0E CB C9 */ bl Free__7CMemoryFPCv +lbl_80228D6C: +/* 80228D6C 00225CCC 28 1B 00 00 */ cmplwi r27, 0 +/* 80228D70 00225CD0 41 82 00 10 */ beq lbl_80228D80 +/* 80228D74 00225CD4 7F C3 F3 78 */ mr r3, r30 +/* 80228D78 00225CD8 7F 64 DB 78 */ mr r4, r27 +/* 80228D7C 00225CDC 4B E2 3F 79 */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +lbl_80228D80: +/* 80228D80 00225CE0 38 61 01 A0 */ addi r3, r1, 0x1a0 +/* 80228D84 00225CE4 38 80 FF FF */ li r4, -1 +/* 80228D88 00225CE8 4B EE DC C5 */ bl __dt__10CModelDataFv +lbl_80228D8C: +/* 80228D8C 00225CEC BB 41 01 F8 */ lmw r26, 0x1f8(r1) +/* 80228D90 00225CF0 80 01 02 14 */ lwz r0, 0x214(r1) +/* 80228D94 00225CF4 7C 08 03 A6 */ mtlr r0 +/* 80228D98 00225CF8 38 21 02 10 */ addi r1, r1, 0x210 +/* 80228D9C 00225CFC 4E 80 00 20 */ blr + +.global sub_80228da0 +sub_80228da0: +/* 80228DA0 00225D00 C0 04 00 00 */ lfs f0, 0(r4) +/* 80228DA4 00225D04 D0 03 00 00 */ stfs f0, 0(r3) +/* 80228DA8 00225D08 C0 04 00 04 */ lfs f0, 4(r4) +/* 80228DAC 00225D0C D0 03 00 04 */ stfs f0, 4(r3) +/* 80228DB0 00225D10 80 04 00 08 */ lwz r0, 8(r4) +/* 80228DB4 00225D14 90 03 00 08 */ stw r0, 8(r3) +/* 80228DB8 00225D18 88 04 00 0C */ lbz r0, 0xc(r4) +/* 80228DBC 00225D1C 98 03 00 0C */ stb r0, 0xc(r3) +/* 80228DC0 00225D20 C0 04 00 10 */ lfs f0, 0x10(r4) +/* 80228DC4 00225D24 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 80228DC8 00225D28 C0 04 00 14 */ lfs f0, 0x14(r4) +/* 80228DCC 00225D2C D0 03 00 14 */ stfs f0, 0x14(r3) +/* 80228DD0 00225D30 C0 04 00 18 */ lfs f0, 0x18(r4) +/* 80228DD4 00225D34 D0 03 00 18 */ stfs f0, 0x18(r3) +/* 80228DD8 00225D38 C0 04 00 1C */ lfs f0, 0x1c(r4) +/* 80228DDC 00225D3C D0 03 00 1C */ stfs f0, 0x1c(r3) +/* 80228DE0 00225D40 88 04 00 20 */ lbz r0, 0x20(r4) +/* 80228DE4 00225D44 98 03 00 20 */ stb r0, 0x20(r3) +/* 80228DE8 00225D48 80 04 00 24 */ lwz r0, 0x24(r4) +/* 80228DEC 00225D4C 90 03 00 24 */ stw r0, 0x24(r3) +/* 80228DF0 00225D50 80 04 00 28 */ lwz r0, 0x28(r4) +/* 80228DF4 00225D54 90 03 00 28 */ stw r0, 0x28(r3) +/* 80228DF8 00225D58 80 04 00 2C */ lwz r0, 0x2c(r4) +/* 80228DFC 00225D5C 90 03 00 2C */ stw r0, 0x2c(r3) +/* 80228E00 00225D60 80 04 00 30 */ lwz r0, 0x30(r4) +/* 80228E04 00225D64 90 03 00 30 */ stw r0, 0x30(r3) +/* 80228E08 00225D68 80 04 00 34 */ lwz r0, 0x34(r4) +/* 80228E0C 00225D6C 90 03 00 34 */ stw r0, 0x34(r3) +/* 80228E10 00225D70 A0 04 00 38 */ lhz r0, 0x38(r4) +/* 80228E14 00225D74 B0 03 00 38 */ sth r0, 0x38(r3) +/* 80228E18 00225D78 A0 04 00 3A */ lhz r0, 0x3a(r4) +/* 80228E1C 00225D7C B0 03 00 3A */ sth r0, 0x3a(r3) +/* 80228E20 00225D80 90 A3 00 3C */ stw r5, 0x3c(r3) +/* 80228E24 00225D84 90 C3 00 40 */ stw r6, 0x40(r3) +/* 80228E28 00225D88 B0 E3 00 44 */ sth r7, 0x44(r3) +/* 80228E2C 00225D8C C0 08 00 00 */ lfs f0, 0(r8) +/* 80228E30 00225D90 D0 03 00 48 */ stfs f0, 0x48(r3) +/* 80228E34 00225D94 C0 08 00 04 */ lfs f0, 4(r8) +/* 80228E38 00225D98 D0 03 00 4C */ stfs f0, 0x4c(r3) +/* 80228E3C 00225D9C C0 08 00 08 */ lfs f0, 8(r8) +/* 80228E40 00225DA0 D0 03 00 50 */ stfs f0, 0x50(r3) +/* 80228E44 00225DA4 C0 08 00 0C */ lfs f0, 0xc(r8) +/* 80228E48 00225DA8 D0 03 00 54 */ stfs f0, 0x54(r3) +/* 80228E4C 00225DAC 4E 80 00 20 */ blr + +.global sub_80228e50 +sub_80228e50: +/* 80228E50 00225DB0 C0 43 07 B8 */ lfs f2, 0x7b8(r3) +/* 80228E54 00225DB4 C0 02 B5 B8 */ lfs f0, lbl_805AD2D8@sda21(r2) +/* 80228E58 00225DB8 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80228E5C 00225DBC 40 81 00 0C */ ble lbl_80228E68 +/* 80228E60 00225DC0 EC 02 08 28 */ fsubs f0, f2, f1 +/* 80228E64 00225DC4 D0 03 07 B8 */ stfs f0, 0x7b8(r3) +lbl_80228E68: +/* 80228E68 00225DC8 C0 43 07 AC */ lfs f2, 0x7ac(r3) +/* 80228E6C 00225DCC C0 02 B5 B8 */ lfs f0, lbl_805AD2D8@sda21(r2) +/* 80228E70 00225DD0 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80228E74 00225DD4 4C 81 00 20 */ blelr +/* 80228E78 00225DD8 EC 02 08 28 */ fsubs f0, f2, f1 +/* 80228E7C 00225DDC D0 03 07 AC */ stfs f0, 0x7ac(r3) +/* 80228E80 00225DE0 4E 80 00 20 */ blr + +.global sub_80228e84 +sub_80228e84: +/* 80228E84 00225DE4 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80228E88 00225DE8 7C 08 02 A6 */ mflr r0 +/* 80228E8C 00225DEC 90 01 00 54 */ stw r0, 0x54(r1) +/* 80228E90 00225DF0 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 80228E94 00225DF4 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 80228E98 00225DF8 DB C1 00 30 */ stfd f30, 0x30(r1) +/* 80228E9C 00225DFC F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 +/* 80228EA0 00225E00 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80228EA4 00225E04 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80228EA8 00225E08 93 A1 00 24 */ stw r29, 0x24(r1) +/* 80228EAC 00225E0C 93 81 00 20 */ stw r28, 0x20(r1) +/* 80228EB0 00225E10 81 83 00 00 */ lwz r12, 0(r3) +/* 80228EB4 00225E14 7C 7C 1B 78 */ mr r28, r3 +/* 80228EB8 00225E18 7C 9D 23 78 */ mr r29, r4 +/* 80228EBC 00225E1C 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80228EC0 00225E20 7D 89 03 A6 */ mtctr r12 +/* 80228EC4 00225E24 4E 80 04 21 */ bctrl +/* 80228EC8 00225E28 C3 E3 00 00 */ lfs f31, 0(r3) +/* 80228ECC 00225E2C 7F 83 E3 78 */ mr r3, r28 +/* 80228ED0 00225E30 81 9C 00 00 */ lwz r12, 0(r28) +/* 80228ED4 00225E34 81 8C 02 CC */ lwz r12, 0x2cc(r12) +/* 80228ED8 00225E38 7D 89 03 A6 */ mtctr r12 +/* 80228EDC 00225E3C 4E 80 04 21 */ bctrl +/* 80228EE0 00225E40 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80228EE4 00225E44 41 82 00 B4 */ beq lbl_80228F98 +/* 80228EE8 00225E48 A0 1C 07 70 */ lhz r0, 0x770(r28) +/* 80228EEC 00225E4C 7F A3 EB 78 */ mr r3, r29 +/* 80228EF0 00225E50 38 81 00 08 */ addi r4, r1, 8 +/* 80228EF4 00225E54 B0 01 00 08 */ sth r0, 8(r1) +/* 80228EF8 00225E58 4B E2 36 7D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80228EFC 00225E5C 7C 64 1B 78 */ mr r4, r3 +/* 80228F00 00225E60 38 61 00 0C */ addi r3, r1, 0xc +/* 80228F04 00225E64 4B E8 64 49 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 80228F08 00225E68 83 C3 00 04 */ lwz r30, 4(r3) +/* 80228F0C 00225E6C 28 1E 00 00 */ cmplwi r30, 0 +/* 80228F10 00225E70 41 82 00 88 */ beq lbl_80228F98 +/* 80228F14 00225E74 7F C3 F3 78 */ mr r3, r30 +/* 80228F18 00225E78 7F A4 EB 78 */ mr r4, r29 +/* 80228F1C 00225E7C 81 9E 00 00 */ lwz r12, 0(r30) +/* 80228F20 00225E80 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80228F24 00225E84 7D 89 03 A6 */ mtctr r12 +/* 80228F28 00225E88 4E 80 04 21 */ bctrl +/* 80228F2C 00225E8C C3 C3 00 00 */ lfs f30, 0(r3) +/* 80228F30 00225E90 7F 83 E3 78 */ mr r3, r28 +/* 80228F34 00225E94 81 9C 00 00 */ lwz r12, 0(r28) +/* 80228F38 00225E98 7F A4 EB 78 */ mr r4, r29 +/* 80228F3C 00225E9C 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80228F40 00225EA0 7D 89 03 A6 */ mtctr r12 +/* 80228F44 00225EA4 4E 80 04 21 */ bctrl +/* 80228F48 00225EA8 EC 1F F0 28 */ fsubs f0, f31, f30 +/* 80228F4C 00225EAC 7F A4 EB 78 */ mr r4, r29 +/* 80228F50 00225EB0 EC 1F 00 28 */ fsubs f0, f31, f0 +/* 80228F54 00225EB4 D0 03 00 00 */ stfs f0, 0(r3) +/* 80228F58 00225EB8 7F 83 E3 78 */ mr r3, r28 +/* 80228F5C 00225EBC 81 9C 00 00 */ lwz r12, 0(r28) +/* 80228F60 00225EC0 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80228F64 00225EC4 7D 89 03 A6 */ mtctr r12 +/* 80228F68 00225EC8 4E 80 04 21 */ bctrl +/* 80228F6C 00225ECC 7C 7F 1B 78 */ mr r31, r3 +/* 80228F70 00225ED0 7F C3 F3 78 */ mr r3, r30 +/* 80228F74 00225ED4 81 9E 00 00 */ lwz r12, 0(r30) +/* 80228F78 00225ED8 7F A4 EB 78 */ mr r4, r29 +/* 80228F7C 00225EDC 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80228F80 00225EE0 7D 89 03 A6 */ mtctr r12 +/* 80228F84 00225EE4 4E 80 04 21 */ bctrl +/* 80228F88 00225EE8 C0 1F 00 00 */ lfs f0, 0(r31) +/* 80228F8C 00225EEC D0 03 00 00 */ stfs f0, 0(r3) +/* 80228F90 00225EF0 C0 1F 00 04 */ lfs f0, 4(r31) +/* 80228F94 00225EF4 D0 03 00 04 */ stfs f0, 4(r3) +lbl_80228F98: +/* 80228F98 00225EF8 7F 83 E3 78 */ mr r3, r28 +/* 80228F9C 00225EFC 7F A4 EB 78 */ mr r4, r29 +/* 80228FA0 00225F00 81 9C 00 00 */ lwz r12, 0(r28) +/* 80228FA4 00225F04 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80228FA8 00225F08 7D 89 03 A6 */ mtctr r12 +/* 80228FAC 00225F0C 4E 80 04 21 */ bctrl +/* 80228FB0 00225F10 C0 23 00 00 */ lfs f1, 0(r3) +/* 80228FB4 00225F14 C0 02 B5 B8 */ lfs f0, lbl_805AD2D8@sda21(r2) +/* 80228FB8 00225F18 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80228FBC 00225F1C 4C 40 13 82 */ cror 2, 0, 2 +/* 80228FC0 00225F20 40 82 00 3C */ bne lbl_80228FFC +/* 80228FC4 00225F24 81 9C 00 00 */ lwz r12, 0(r28) +/* 80228FC8 00225F28 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80228FCC 00225F2C 38 A4 66 A0 */ addi r5, r4, skZero3f@l +/* 80228FD0 00225F30 7F 83 E3 78 */ mr r3, r28 +/* 80228FD4 00225F34 81 8C 00 84 */ lwz r12, 0x84(r12) +/* 80228FD8 00225F38 7F A4 EB 78 */ mr r4, r29 +/* 80228FDC 00225F3C 38 C0 00 14 */ li r6, 0x14 +/* 80228FE0 00225F40 7D 89 03 A6 */ mtctr r12 +/* 80228FE4 00225F44 4E 80 04 21 */ bctrl +/* 80228FE8 00225F48 7F 83 E3 78 */ mr r3, r28 +/* 80228FEC 00225F4C 7F A6 EB 78 */ mr r6, r29 +/* 80228FF0 00225F50 38 80 00 29 */ li r4, 0x29 +/* 80228FF4 00225F54 38 A0 00 28 */ li r5, 0x28 +/* 80228FF8 00225F58 4B E2 AE DD */ bl RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager +lbl_80228FFC: +/* 80228FFC 00225F5C E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 80229000 00225F60 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 80229004 00225F64 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 +/* 80229008 00225F68 CB C1 00 30 */ lfd f30, 0x30(r1) +/* 8022900C 00225F6C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80229010 00225F70 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80229014 00225F74 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 80229018 00225F78 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8022901C 00225F7C 83 81 00 20 */ lwz r28, 0x20(r1) +/* 80229020 00225F80 7C 08 03 A6 */ mtlr r0 +/* 80229024 00225F84 38 21 00 50 */ addi r1, r1, 0x50 +/* 80229028 00225F88 4E 80 00 20 */ blr + +.global sub_8022902c +sub_8022902c: +/* 8022902C 00225F8C 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80229030 00225F90 7C 08 02 A6 */ mflr r0 +/* 80229034 00225F94 90 01 00 54 */ stw r0, 0x54(r1) +/* 80229038 00225F98 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 8022903C 00225F9C F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 80229040 00225FA0 DB C1 00 30 */ stfd f30, 0x30(r1) +/* 80229044 00225FA4 F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 +/* 80229048 00225FA8 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8022904C 00225FAC 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80229050 00225FB0 93 A1 00 24 */ stw r29, 0x24(r1) +/* 80229054 00225FB4 93 81 00 20 */ stw r28, 0x20(r1) +/* 80229058 00225FB8 81 83 00 00 */ lwz r12, 0(r3) +/* 8022905C 00225FBC 7C 7C 1B 78 */ mr r28, r3 +/* 80229060 00225FC0 7C 9D 23 78 */ mr r29, r4 +/* 80229064 00225FC4 7C BE 2B 78 */ mr r30, r5 +/* 80229068 00225FC8 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8022906C 00225FCC 7D 89 03 A6 */ mtctr r12 +/* 80229070 00225FD0 4E 80 04 21 */ bctrl +/* 80229074 00225FD4 A0 9E 00 00 */ lhz r4, 0(r30) +/* 80229078 00225FD8 7C 7F 1B 78 */ mr r31, r3 +/* 8022907C 00225FDC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80229080 00225FE0 7C 04 00 40 */ cmplw r4, r0 +/* 80229084 00225FE4 41 82 00 60 */ beq lbl_802290E4 +/* 80229088 00225FE8 B0 81 00 08 */ sth r4, 8(r1) +/* 8022908C 00225FEC 7F A3 EB 78 */ mr r3, r29 +/* 80229090 00225FF0 38 81 00 08 */ addi r4, r1, 8 +/* 80229094 00225FF4 4B E2 34 E1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80229098 00225FF8 7C 64 1B 78 */ mr r4, r3 +/* 8022909C 00225FFC 38 61 00 0C */ addi r3, r1, 0xc +/* 802290A0 00226000 4B E8 62 AD */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 802290A4 00226004 83 C3 00 04 */ lwz r30, 4(r3) +/* 802290A8 00226008 28 1E 00 00 */ cmplwi r30, 0 +/* 802290AC 0022600C 41 82 00 38 */ beq lbl_802290E4 +/* 802290B0 00226010 7F C3 F3 78 */ mr r3, r30 +/* 802290B4 00226014 7F A4 EB 78 */ mr r4, r29 +/* 802290B8 00226018 81 9E 00 00 */ lwz r12, 0(r30) +/* 802290BC 0022601C C3 FF 00 04 */ lfs f31, 4(r31) +/* 802290C0 00226020 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 802290C4 00226024 C3 DC 06 9C */ lfs f30, 0x69c(r28) +/* 802290C8 00226028 7D 89 03 A6 */ mtctr r12 +/* 802290CC 0022602C 4E 80 04 21 */ bctrl +/* 802290D0 00226030 D3 C3 00 00 */ stfs f30, 0(r3) +/* 802290D4 00226034 38 9C 05 6C */ addi r4, r28, 0x56c +/* 802290D8 00226038 D3 E3 00 04 */ stfs f31, 4(r3) +/* 802290DC 0022603C 7F C3 F3 78 */ mr r3, r30 +/* 802290E0 00226040 4B F7 FA B9 */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability +lbl_802290E4: +/* 802290E4 00226044 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 802290E8 00226048 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 802290EC 0022604C E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 +/* 802290F0 00226050 CB C1 00 30 */ lfd f30, 0x30(r1) +/* 802290F4 00226054 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 802290F8 00226058 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 802290FC 0022605C 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 80229100 00226060 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80229104 00226064 83 81 00 20 */ lwz r28, 0x20(r1) +/* 80229108 00226068 7C 08 03 A6 */ mtlr r0 +/* 8022910C 0022606C 38 21 00 50 */ addi r1, r1, 0x50 +/* 80229110 00226070 4E 80 00 20 */ blr + +.global sub_80229114 +sub_80229114: +/* 80229114 00226074 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80229118 00226078 7C 08 02 A6 */ mflr r0 +/* 8022911C 0022607C 90 01 00 34 */ stw r0, 0x34(r1) +/* 80229120 00226080 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80229124 00226084 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80229128 00226088 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8022912C 0022608C 7C 9D 23 78 */ mr r29, r4 +/* 80229130 00226090 93 81 00 20 */ stw r28, 0x20(r1) +/* 80229134 00226094 7C 7C 1B 78 */ mr r28, r3 +/* 80229138 00226098 81 83 00 00 */ lwz r12, 0(r3) +/* 8022913C 0022609C 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80229140 002260A0 7D 89 03 A6 */ mtctr r12 +/* 80229144 002260A4 4E 80 04 21 */ bctrl +/* 80229148 002260A8 7C 7F 1B 78 */ mr r31, r3 +/* 8022914C 002260AC 7F 83 E3 78 */ mr r3, r28 +/* 80229150 002260B0 C0 1F 00 00 */ lfs f0, 0(r31) +/* 80229154 002260B4 D0 1C 07 B4 */ stfs f0, 0x7b4(r28) +/* 80229158 002260B8 81 9C 00 00 */ lwz r12, 0(r28) +/* 8022915C 002260BC 81 8C 02 CC */ lwz r12, 0x2cc(r12) +/* 80229160 002260C0 7D 89 03 A6 */ mtctr r12 +/* 80229164 002260C4 4E 80 04 21 */ bctrl +/* 80229168 002260C8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022916C 002260CC 41 82 00 64 */ beq lbl_802291D0 +/* 80229170 002260D0 A0 1C 07 70 */ lhz r0, 0x770(r28) +/* 80229174 002260D4 7F A3 EB 78 */ mr r3, r29 +/* 80229178 002260D8 38 81 00 0C */ addi r4, r1, 0xc +/* 8022917C 002260DC B0 01 00 0C */ sth r0, 0xc(r1) +/* 80229180 002260E0 4B E2 33 F5 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80229184 002260E4 7C 64 1B 78 */ mr r4, r3 +/* 80229188 002260E8 38 61 00 10 */ addi r3, r1, 0x10 +/* 8022918C 002260EC 4B E8 61 C1 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 80229190 002260F0 83 C3 00 04 */ lwz r30, 4(r3) +/* 80229194 002260F4 28 1E 00 00 */ cmplwi r30, 0 +/* 80229198 002260F8 41 82 00 38 */ beq lbl_802291D0 +/* 8022919C 002260FC 7F C3 F3 78 */ mr r3, r30 +/* 802291A0 00226100 7F A4 EB 78 */ mr r4, r29 +/* 802291A4 00226104 81 9E 00 00 */ lwz r12, 0(r30) +/* 802291A8 00226108 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 802291AC 0022610C 7D 89 03 A6 */ mtctr r12 +/* 802291B0 00226110 4E 80 04 21 */ bctrl +/* 802291B4 00226114 C0 1F 00 00 */ lfs f0, 0(r31) +/* 802291B8 00226118 38 9C 05 6C */ addi r4, r28, 0x56c +/* 802291BC 0022611C D0 03 00 00 */ stfs f0, 0(r3) +/* 802291C0 00226120 C0 1F 00 04 */ lfs f0, 4(r31) +/* 802291C4 00226124 D0 03 00 04 */ stfs f0, 4(r3) +/* 802291C8 00226128 7F C3 F3 78 */ mr r3, r30 +/* 802291CC 0022612C 4B F7 F9 CD */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability +lbl_802291D0: +/* 802291D0 00226130 A0 1C 07 72 */ lhz r0, 0x772(r28) +/* 802291D4 00226134 7F 83 E3 78 */ mr r3, r28 +/* 802291D8 00226138 7F A4 EB 78 */ mr r4, r29 +/* 802291DC 0022613C 38 A1 00 08 */ addi r5, r1, 8 +/* 802291E0 00226140 B0 01 00 08 */ sth r0, 8(r1) +/* 802291E4 00226144 4B FF FE 49 */ bl sub_8022902c +/* 802291E8 00226148 80 01 00 34 */ lwz r0, 0x34(r1) +/* 802291EC 0022614C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 802291F0 00226150 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 802291F4 00226154 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 802291F8 00226158 83 81 00 20 */ lwz r28, 0x20(r1) +/* 802291FC 0022615C 7C 08 03 A6 */ mtlr r0 +/* 80229200 00226160 38 21 00 30 */ addi r1, r1, 0x30 +/* 80229204 00226164 4E 80 00 20 */ blr + +.global sub_80229208 +sub_80229208: +/* 80229208 00226168 80 83 04 50 */ lwz r4, 0x450(r3) +/* 8022920C 0022616C 38 60 00 00 */ li r3, 0 +/* 80229210 00226170 80 04 02 EC */ lwz r0, 0x2ec(r4) +/* 80229214 00226174 2C 00 00 00 */ cmpwi r0, 0 +/* 80229218 00226178 4C 82 00 20 */ bnelr +/* 8022921C 0022617C 80 84 02 B8 */ lwz r4, 0x2b8(r4) +/* 80229220 00226180 38 00 00 01 */ li r0, 1 +/* 80229224 00226184 2C 04 00 05 */ cmpwi r4, 5 +/* 80229228 00226188 41 82 00 10 */ beq lbl_80229238 +/* 8022922C 0022618C 2C 04 00 08 */ cmpwi r4, 8 +/* 80229230 00226190 41 82 00 08 */ beq lbl_80229238 +/* 80229234 00226194 7C 60 1B 78 */ mr r0, r3 +lbl_80229238: +/* 80229238 00226198 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 8022923C 0022619C 4D 82 00 20 */ beqlr +/* 80229240 002261A0 38 60 00 01 */ li r3, 1 +/* 80229244 002261A4 4E 80 00 20 */ blr + +.global sub_80229248 +sub_80229248: +/* 80229248 002261A8 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 8022924C 002261AC 7C 08 02 A6 */ mflr r0 +/* 80229250 002261B0 90 01 00 64 */ stw r0, 0x64(r1) +/* 80229254 002261B4 DB E1 00 50 */ stfd f31, 0x50(r1) +/* 80229258 002261B8 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 8022925C 002261BC 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 80229260 002261C0 7C 7F 1B 78 */ mr r31, r3 +/* 80229264 002261C4 81 83 00 00 */ lwz r12, 0(r3) +/* 80229268 002261C8 80 83 00 64 */ lwz r4, 0x64(r3) +/* 8022926C 002261CC C0 02 B5 F8 */ lfs f0, lbl_805AD318@sda21(r2) +/* 80229270 002261D0 C0 44 00 04 */ lfs f2, 4(r4) +/* 80229274 002261D4 C0 64 00 00 */ lfs f3, 0(r4) +/* 80229278 002261D8 C0 24 00 08 */ lfs f1, 8(r4) +/* 8022927C 002261DC EF E0 00 B2 */ fmuls f31, f0, f2 +/* 80229280 002261E0 81 8C 02 D0 */ lwz r12, 0x2d0(r12) +/* 80229284 002261E4 D0 61 00 20 */ stfs f3, 0x20(r1) +/* 80229288 002261E8 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 8022928C 002261EC D0 21 00 28 */ stfs f1, 0x28(r1) +/* 80229290 002261F0 7D 89 03 A6 */ mtctr r12 +/* 80229294 002261F4 4E 80 04 21 */ bctrl +/* 80229298 002261F8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022929C 002261FC 41 82 00 0C */ beq lbl_802292A8 +/* 802292A0 00226200 C0 22 B5 FC */ lfs f1, lbl_805AD31C@sda21(r2) +/* 802292A4 00226204 48 00 00 08 */ b lbl_802292AC +lbl_802292A8: +/* 802292A8 00226208 C0 22 B5 CC */ lfs f1, lbl_805AD2EC@sda21(r2) +lbl_802292AC: +/* 802292AC 0022620C FC 40 F8 50 */ fneg f2, f31 +/* 802292B0 00226210 C0 02 B5 B8 */ lfs f0, lbl_805AD2D8@sda21(r2) +/* 802292B4 00226214 EC 21 07 F2 */ fmuls f1, f1, f31 +/* 802292B8 00226218 D3 E1 00 08 */ stfs f31, 8(r1) +/* 802292BC 0022621C 38 61 00 2C */ addi r3, r1, 0x2c +/* 802292C0 00226220 38 81 00 14 */ addi r4, r1, 0x14 +/* 802292C4 00226224 D3 E1 00 0C */ stfs f31, 0xc(r1) +/* 802292C8 00226228 38 A1 00 08 */ addi r5, r1, 8 +/* 802292CC 0022622C D0 21 00 10 */ stfs f1, 0x10(r1) +/* 802292D0 00226230 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 802292D4 00226234 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 802292D8 00226238 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 802292DC 0022623C 48 10 F2 2D */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 802292E0 00226240 7F E3 FB 78 */ mr r3, r31 +/* 802292E4 00226244 38 81 00 2C */ addi r4, r1, 0x2c +/* 802292E8 00226248 4B EF 13 71 */ bl SetBoundingBox__13CPhysicsActorFRC6CAABox +/* 802292EC 0022624C 80 61 00 2C */ lwz r3, 0x2c(r1) +/* 802292F0 00226250 80 01 00 30 */ lwz r0, 0x30(r1) +/* 802292F4 00226254 C0 02 B5 C8 */ lfs f0, lbl_805AD2E8@sda21(r2) +/* 802292F8 00226258 90 7F 07 48 */ stw r3, 0x748(r31) +/* 802292FC 0022625C EC 00 07 F2 */ fmuls f0, f0, f31 +/* 80229300 00226260 90 1F 07 4C */ stw r0, 0x74c(r31) +/* 80229304 00226264 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80229308 00226268 90 1F 07 50 */ stw r0, 0x750(r31) +/* 8022930C 0022626C 80 61 00 38 */ lwz r3, 0x38(r1) +/* 80229310 00226270 80 01 00 3C */ lwz r0, 0x3c(r1) +/* 80229314 00226274 90 7F 07 54 */ stw r3, 0x754(r31) +/* 80229318 00226278 90 1F 07 58 */ stw r0, 0x758(r31) +/* 8022931C 0022627C 80 01 00 40 */ lwz r0, 0x40(r1) +/* 80229320 00226280 90 1F 07 5C */ stw r0, 0x75c(r31) +/* 80229324 00226284 D3 FF 08 A4 */ stfs f31, 0x8a4(r31) +/* 80229328 00226288 D0 1F 08 A0 */ stfs f0, 0x8a0(r31) +/* 8022932C 0022628C E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 +/* 80229330 00226290 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80229334 00226294 CB E1 00 50 */ lfd f31, 0x50(r1) +/* 80229338 00226298 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 8022933C 0022629C 7C 08 03 A6 */ mtlr r0 +/* 80229340 002262A0 38 21 00 60 */ addi r1, r1, 0x60 +/* 80229344 002262A4 4E 80 00 20 */ blr + +.global sub_80229348 +sub_80229348: +/* 80229348 002262A8 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8022934C 002262AC 7C 08 02 A6 */ mflr r0 +/* 80229350 002262B0 90 01 00 34 */ stw r0, 0x34(r1) +/* 80229354 002262B4 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80229358 002262B8 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8022935C 002262BC 7C DE 33 78 */ mr r30, r6 +/* 80229360 002262C0 93 A1 00 24 */ stw r29, 0x24(r1) +/* 80229364 002262C4 7C BD 2B 78 */ mr r29, r5 +/* 80229368 002262C8 3B FD 00 04 */ addi r31, r29, 4 +/* 8022936C 002262CC 93 81 00 20 */ stw r28, 0x20(r1) +/* 80229370 002262D0 7C 9C 23 78 */ mr r28, r4 +/* 80229374 002262D4 48 00 00 4C */ b lbl_802293C0 +lbl_80229378: +/* 80229378 002262D8 A0 1F 00 00 */ lhz r0, 0(r31) +/* 8022937C 002262DC 7F 83 E3 78 */ mr r3, r28 +/* 80229380 002262E0 38 81 00 08 */ addi r4, r1, 8 +/* 80229384 002262E4 B0 01 00 08 */ sth r0, 8(r1) +/* 80229388 002262E8 4B E2 31 ED */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8022938C 002262EC 7C 64 1B 78 */ mr r4, r3 +/* 80229390 002262F0 38 61 00 0C */ addi r3, r1, 0xc +/* 80229394 002262F4 4B E8 5F B9 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 80229398 002262F8 80 63 00 04 */ lwz r3, 4(r3) +/* 8022939C 002262FC 28 03 00 00 */ cmplwi r3, 0 +/* 802293A0 00226300 41 82 00 1C */ beq lbl_802293BC +/* 802293A4 00226304 C0 1E 00 00 */ lfs f0, 0(r30) +/* 802293A8 00226308 D0 03 03 04 */ stfs f0, 0x304(r3) +/* 802293AC 0022630C C0 1E 00 04 */ lfs f0, 4(r30) +/* 802293B0 00226310 D0 03 03 08 */ stfs f0, 0x308(r3) +/* 802293B4 00226314 C0 1E 00 08 */ lfs f0, 8(r30) +/* 802293B8 00226318 D0 03 03 0C */ stfs f0, 0x30c(r3) +lbl_802293BC: +/* 802293BC 0022631C 3B FF 00 02 */ addi r31, r31, 2 +lbl_802293C0: +/* 802293C0 00226320 80 1D 00 00 */ lwz r0, 0(r29) +/* 802293C4 00226324 54 00 08 3C */ slwi r0, r0, 1 +/* 802293C8 00226328 7C 7D 02 14 */ add r3, r29, r0 +/* 802293CC 0022632C 38 03 00 04 */ addi r0, r3, 4 +/* 802293D0 00226330 7C 1F 00 40 */ cmplw r31, r0 +/* 802293D4 00226334 40 82 FF A4 */ bne lbl_80229378 +/* 802293D8 00226338 80 01 00 34 */ lwz r0, 0x34(r1) +/* 802293DC 0022633C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 802293E0 00226340 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 802293E4 00226344 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 802293E8 00226348 83 81 00 20 */ lwz r28, 0x20(r1) +/* 802293EC 0022634C 7C 08 03 A6 */ mtlr r0 +/* 802293F0 00226350 38 21 00 30 */ addi r1, r1, 0x30 +/* 802293F4 00226354 4E 80 00 20 */ blr + +.global sub_802293f8 +sub_802293f8: +/* 802293F8 00226358 80 05 00 00 */ lwz r0, 0(r5) +/* 802293FC 0022635C 38 C5 00 04 */ addi r6, r5, 4 +/* 80229400 00226360 54 00 08 3C */ slwi r0, r0, 1 +/* 80229404 00226364 7C A5 02 14 */ add r5, r5, r0 +/* 80229408 00226368 38 A5 00 04 */ addi r5, r5, 4 +/* 8022940C 0022636C 48 00 00 20 */ b lbl_8022942C +lbl_80229410: +/* 80229410 00226370 A0 66 00 00 */ lhz r3, 0(r6) +/* 80229414 00226374 A0 04 00 00 */ lhz r0, 0(r4) +/* 80229418 00226378 7C 03 00 40 */ cmplw r3, r0 +/* 8022941C 0022637C 40 82 00 0C */ bne lbl_80229428 +/* 80229420 00226380 38 60 00 01 */ li r3, 1 +/* 80229424 00226384 4E 80 00 20 */ blr +lbl_80229428: +/* 80229428 00226388 38 C6 00 02 */ addi r6, r6, 2 +lbl_8022942C: +/* 8022942C 0022638C 7C 06 28 40 */ cmplw r6, r5 +/* 80229430 00226390 40 82 FF E0 */ bne lbl_80229410 +/* 80229434 00226394 38 60 00 00 */ li r3, 0 +/* 80229438 00226398 4E 80 00 20 */ blr + +.global sub_8022943c +sub_8022943c: +/* 8022943C 0022639C 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80229440 002263A0 7C 08 02 A6 */ mflr r0 +/* 80229444 002263A4 90 01 00 44 */ stw r0, 0x44(r1) +/* 80229448 002263A8 38 61 00 18 */ addi r3, r1, 0x18 +/* 8022944C 002263AC BF 61 00 2C */ stmw r27, 0x2c(r1) +/* 80229450 002263B0 7C 9B 23 78 */ mr r27, r4 +/* 80229454 002263B4 7C DD 33 78 */ mr r29, r6 +/* 80229458 002263B8 7C FC 3B 78 */ mr r28, r7 +/* 8022945C 002263BC 7C A4 2B 78 */ mr r4, r5 +/* 80229460 002263C0 4B DD B8 59 */ bl string_l__4rstlFPCc +/* 80229464 002263C4 7F 63 DB 78 */ mr r3, r27 +/* 80229468 002263C8 38 81 00 18 */ addi r4, r1, 0x18 +/* 8022946C 002263CC 4B E2 91 75 */ 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" +/* 80229470 002263D0 7C 7F 1B 78 */ mr r31, r3 +/* 80229474 002263D4 38 61 00 18 */ addi r3, r1, 0x18 +/* 80229478 002263D8 48 11 46 69 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8022947C 002263DC 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 80229480 002263E0 41 82 00 0C */ beq lbl_8022948C +/* 80229484 002263E4 38 60 00 01 */ li r3, 1 +/* 80229488 002263E8 48 00 00 58 */ b lbl_802294E0 +lbl_8022948C: +/* 8022948C 002263EC 7F BE EB 78 */ mr r30, r29 +/* 80229490 002263F0 3B A0 00 00 */ li r29, 0 +/* 80229494 002263F4 48 00 00 40 */ b lbl_802294D4 +lbl_80229498: +/* 80229498 002263F8 80 9E 00 00 */ lwz r4, 0(r30) +/* 8022949C 002263FC 38 61 00 08 */ addi r3, r1, 8 +/* 802294A0 00226400 4B DD B8 19 */ bl string_l__4rstlFPCc +/* 802294A4 00226404 7F 63 DB 78 */ mr r3, r27 +/* 802294A8 00226408 38 81 00 08 */ addi r4, r1, 8 +/* 802294AC 0022640C 4B E2 91 35 */ 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" +/* 802294B0 00226410 7C 7F 1B 78 */ mr r31, r3 +/* 802294B4 00226414 38 61 00 08 */ addi r3, r1, 8 +/* 802294B8 00226418 48 11 46 29 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 802294BC 0022641C 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 802294C0 00226420 41 82 00 0C */ beq lbl_802294CC +/* 802294C4 00226424 38 60 00 01 */ li r3, 1 +/* 802294C8 00226428 48 00 00 18 */ b lbl_802294E0 +lbl_802294CC: +/* 802294CC 0022642C 3B DE 00 10 */ addi r30, r30, 0x10 +/* 802294D0 00226430 3B BD 00 01 */ addi r29, r29, 1 +lbl_802294D4: +/* 802294D4 00226434 7C 1D E0 00 */ cmpw r29, r28 +/* 802294D8 00226438 41 80 FF C0 */ blt lbl_80229498 +/* 802294DC 0022643C 38 60 00 00 */ li r3, 0 +lbl_802294E0: +/* 802294E0 00226440 BB 61 00 2C */ lmw r27, 0x2c(r1) +/* 802294E4 00226444 80 01 00 44 */ lwz r0, 0x44(r1) +/* 802294E8 00226448 7C 08 03 A6 */ mtlr r0 +/* 802294EC 0022644C 38 21 00 40 */ addi r1, r1, 0x40 +/* 802294F0 00226450 4E 80 00 20 */ blr + +.global sub_802294f4 +sub_802294f4: +/* 802294F4 00226454 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 802294F8 00226458 7C 08 02 A6 */ mflr r0 +/* 802294FC 0022645C 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 80229500 00226460 BF 21 00 C4 */ stmw r25, 0xc4(r1) +/* 80229504 00226464 7C B9 2B 78 */ mr r25, r5 +/* 80229508 00226468 7C DA 33 78 */ mr r26, r6 +/* 8022950C 0022646C 7C 9E 23 78 */ mr r30, r4 +/* 80229510 00226470 3B A1 00 60 */ addi r29, r1, 0x60 +/* 80229514 00226474 3B 81 00 A4 */ addi r28, r1, 0xa4 +/* 80229518 00226478 3B 60 00 00 */ li r27, 0 +/* 8022951C 0022647C 80 63 00 64 */ lwz r3, 0x64(r3) +/* 80229520 00226480 83 E3 00 10 */ lwz r31, 0x10(r3) +/* 80229524 00226484 48 00 01 20 */ b lbl_80229644 +lbl_80229528: +/* 80229528 00226488 80 9E 00 00 */ lwz r4, 0(r30) +/* 8022952C 0022648C 38 61 00 24 */ addi r3, r1, 0x24 +/* 80229530 00226490 4B DD B7 89 */ bl string_l__4rstlFPCc +/* 80229534 00226494 7F E4 FB 78 */ mr r4, r31 +/* 80229538 00226498 38 61 00 0C */ addi r3, r1, 0xc +/* 8022953C 0022649C 38 A1 00 24 */ addi r5, r1, 0x24 +/* 80229540 002264A0 4B E0 52 F9 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80229544 002264A4 88 01 00 0C */ lbz r0, 0xc(r1) +/* 80229548 002264A8 38 61 00 24 */ addi r3, r1, 0x24 +/* 8022954C 002264AC 98 01 00 10 */ stb r0, 0x10(r1) +/* 80229550 002264B0 48 11 45 91 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80229554 002264B4 88 01 00 10 */ lbz r0, 0x10(r1) +/* 80229558 002264B8 28 00 00 FF */ cmplwi r0, 0xff +/* 8022955C 002264BC 41 82 00 E0 */ beq lbl_8022963C +/* 80229560 002264C0 80 9E 00 00 */ lwz r4, 0(r30) +/* 80229564 002264C4 38 61 00 14 */ addi r3, r1, 0x14 +/* 80229568 002264C8 4B DD B7 51 */ bl string_l__4rstlFPCc +/* 8022956C 002264CC 88 01 00 10 */ lbz r0, 0x10(r1) +/* 80229570 002264D0 38 61 00 34 */ addi r3, r1, 0x34 +/* 80229574 002264D4 C0 3E 00 04 */ lfs f1, 4(r30) +/* 80229578 002264D8 38 81 00 08 */ addi r4, r1, 8 +/* 8022957C 002264DC 98 01 00 08 */ stb r0, 8(r1) +/* 80229580 002264E0 38 A1 00 14 */ addi r5, r1, 0x14 +/* 80229584 002264E4 C0 42 B5 F4 */ lfs f2, lbl_805AD314@sda21(r2) +/* 80229588 002264E8 4B F7 F2 85 */ bl "SphereCollision__26CJointCollisionDescriptionF6CSegIdfRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" +/* 8022958C 002264EC 80 E1 00 34 */ lwz r7, 0x34(r1) +/* 80229590 002264F0 7F 83 E3 78 */ mr r3, r28 +/* 80229594 002264F4 80 C1 00 38 */ lwz r6, 0x38(r1) +/* 80229598 002264F8 7F A4 EB 78 */ mr r4, r29 +/* 8022959C 002264FC 88 A1 00 3C */ lbz r5, 0x3c(r1) +/* 802295A0 00226500 88 01 00 3D */ lbz r0, 0x3d(r1) +/* 802295A4 00226504 C0 E1 00 40 */ lfs f7, 0x40(r1) +/* 802295A8 00226508 C0 C1 00 44 */ lfs f6, 0x44(r1) +/* 802295AC 0022650C C0 A1 00 48 */ lfs f5, 0x48(r1) +/* 802295B0 00226510 C0 81 00 4C */ lfs f4, 0x4c(r1) +/* 802295B4 00226514 C0 61 00 50 */ lfs f3, 0x50(r1) +/* 802295B8 00226518 C0 41 00 54 */ lfs f2, 0x54(r1) +/* 802295BC 0022651C C0 21 00 58 */ lfs f1, 0x58(r1) +/* 802295C0 00226520 C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 802295C4 00226524 90 E1 00 78 */ stw r7, 0x78(r1) +/* 802295C8 00226528 90 C1 00 7C */ stw r6, 0x7c(r1) +/* 802295CC 0022652C 98 A1 00 80 */ stb r5, 0x80(r1) +/* 802295D0 00226530 98 01 00 81 */ stb r0, 0x81(r1) +/* 802295D4 00226534 D0 E1 00 84 */ stfs f7, 0x84(r1) +/* 802295D8 00226538 D0 C1 00 88 */ stfs f6, 0x88(r1) +/* 802295DC 0022653C D0 A1 00 8C */ stfs f5, 0x8c(r1) +/* 802295E0 00226540 D0 81 00 90 */ stfs f4, 0x90(r1) +/* 802295E4 00226544 D0 61 00 94 */ stfs f3, 0x94(r1) +/* 802295E8 00226548 D0 41 00 98 */ stfs f2, 0x98(r1) +/* 802295EC 0022654C D0 21 00 9C */ stfs f1, 0x9c(r1) +/* 802295F0 00226550 D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 802295F4 00226554 48 11 4B 6D */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 802295F8 00226558 A0 01 00 70 */ lhz r0, 0x70(r1) +/* 802295FC 0022655C 28 1D 00 00 */ cmplwi r29, 0 +/* 80229600 00226560 C0 01 00 74 */ lfs f0, 0x74(r1) +/* 80229604 00226564 B0 01 00 B4 */ sth r0, 0xb4(r1) +/* 80229608 00226568 D0 01 00 B8 */ stfs f0, 0xb8(r1) +/* 8022960C 0022656C 41 82 00 0C */ beq lbl_80229618 +/* 80229610 00226570 7F A3 EB 78 */ mr r3, r29 +/* 80229614 00226574 48 11 44 CD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80229618: +/* 80229618 00226578 38 61 00 14 */ addi r3, r1, 0x14 +/* 8022961C 0022657C 48 11 44 C5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80229620 00226580 7F 43 D3 78 */ mr r3, r26 +/* 80229624 00226584 38 81 00 78 */ addi r4, r1, 0x78 +/* 80229628 00226588 4B F2 CC 09 */ bl sub_80156230 +/* 8022962C 0022658C 28 1C 00 00 */ cmplwi r28, 0 +/* 80229630 00226590 41 82 00 0C */ beq lbl_8022963C +/* 80229634 00226594 7F 83 E3 78 */ mr r3, r28 +/* 80229638 00226598 48 11 44 A9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8022963C: +/* 8022963C 0022659C 3B DE 00 08 */ addi r30, r30, 8 +/* 80229640 002265A0 3B 7B 00 01 */ addi r27, r27, 1 +lbl_80229644: +/* 80229644 002265A4 7C 1B C8 00 */ cmpw r27, r25 +/* 80229648 002265A8 41 80 FE E0 */ blt lbl_80229528 +/* 8022964C 002265AC BB 21 00 C4 */ lmw r25, 0xc4(r1) +/* 80229650 002265B0 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 80229654 002265B4 7C 08 03 A6 */ mtlr r0 +/* 80229658 002265B8 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 8022965C 002265BC 4E 80 00 20 */ blr + +.global sub_80229660 +sub_80229660: +/* 80229660 002265C0 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 80229664 002265C4 7C 08 02 A6 */ mflr r0 +/* 80229668 002265C8 90 01 01 04 */ stw r0, 0x104(r1) +/* 8022966C 002265CC BF 21 00 E4 */ stmw r25, 0xe4(r1) +/* 80229670 002265D0 7C B9 2B 78 */ mr r25, r5 +/* 80229674 002265D4 7C DA 33 78 */ mr r26, r6 +/* 80229678 002265D8 7C 9E 23 78 */ mr r30, r4 +/* 8022967C 002265DC 3B A1 00 7C */ addi r29, r1, 0x7c +/* 80229680 002265E0 3B 81 00 C0 */ addi r28, r1, 0xc0 +/* 80229684 002265E4 3B 60 00 00 */ li r27, 0 +/* 80229688 002265E8 80 63 00 64 */ lwz r3, 0x64(r3) +/* 8022968C 002265EC 83 E3 00 10 */ lwz r31, 0x10(r3) +/* 80229690 002265F0 48 00 01 6C */ b lbl_802297FC +lbl_80229694: +/* 80229694 002265F4 80 9E 00 00 */ lwz r4, 0(r30) +/* 80229698 002265F8 38 61 00 40 */ addi r3, r1, 0x40 +/* 8022969C 002265FC 4B DD B6 1D */ bl string_l__4rstlFPCc +/* 802296A0 00226600 7F E4 FB 78 */ mr r4, r31 +/* 802296A4 00226604 38 61 00 14 */ addi r3, r1, 0x14 +/* 802296A8 00226608 38 A1 00 40 */ addi r5, r1, 0x40 +/* 802296AC 0022660C 4B E0 51 8D */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 802296B0 00226610 88 01 00 14 */ lbz r0, 0x14(r1) +/* 802296B4 00226614 38 61 00 40 */ addi r3, r1, 0x40 +/* 802296B8 00226618 98 01 00 1C */ stb r0, 0x1c(r1) +/* 802296BC 0022661C 48 11 44 25 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 802296C0 00226620 80 9E 00 04 */ lwz r4, 4(r30) +/* 802296C4 00226624 38 61 00 30 */ addi r3, r1, 0x30 +/* 802296C8 00226628 4B DD B5 F1 */ bl string_l__4rstlFPCc +/* 802296CC 0022662C 7F E4 FB 78 */ mr r4, r31 +/* 802296D0 00226630 38 61 00 10 */ addi r3, r1, 0x10 +/* 802296D4 00226634 38 A1 00 30 */ addi r5, r1, 0x30 +/* 802296D8 00226638 4B E0 51 61 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 802296DC 0022663C 88 01 00 10 */ lbz r0, 0x10(r1) +/* 802296E0 00226640 38 61 00 30 */ addi r3, r1, 0x30 +/* 802296E4 00226644 98 01 00 18 */ stb r0, 0x18(r1) +/* 802296E8 00226648 48 11 43 F9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 802296EC 0022664C 88 01 00 1C */ lbz r0, 0x1c(r1) +/* 802296F0 00226650 28 00 00 FF */ cmplwi r0, 0xff +/* 802296F4 00226654 41 82 01 00 */ beq lbl_802297F4 +/* 802296F8 00226658 88 01 00 18 */ lbz r0, 0x18(r1) +/* 802296FC 0022665C 28 00 00 FF */ cmplwi r0, 0xff +/* 80229700 00226660 41 82 00 F4 */ beq lbl_802297F4 +/* 80229704 00226664 80 9E 00 00 */ lwz r4, 0(r30) +/* 80229708 00226668 38 61 00 20 */ addi r3, r1, 0x20 +/* 8022970C 0022666C 4B DD B5 AD */ bl string_l__4rstlFPCc +/* 80229710 00226670 88 A1 00 18 */ lbz r5, 0x18(r1) +/* 80229714 00226674 38 61 00 50 */ addi r3, r1, 0x50 +/* 80229718 00226678 88 01 00 1C */ lbz r0, 0x1c(r1) +/* 8022971C 0022667C 38 81 00 0C */ addi r4, r1, 0xc +/* 80229720 00226680 98 A1 00 08 */ stb r5, 8(r1) +/* 80229724 00226684 38 A1 00 08 */ addi r5, r1, 8 +/* 80229728 00226688 C0 3E 00 08 */ lfs f1, 8(r30) +/* 8022972C 0022668C 38 E1 00 20 */ addi r7, r1, 0x20 +/* 80229730 00226690 98 01 00 0C */ stb r0, 0xc(r1) +/* 80229734 00226694 38 C0 00 01 */ li r6, 1 +/* 80229738 00226698 C0 5E 00 0C */ lfs f2, 0xc(r30) +/* 8022973C 0022669C C0 62 B5 F4 */ lfs f3, lbl_805AD314@sda21(r2) +/* 80229740 002266A0 4B F7 F0 15 */ bl "SphereSubdivideCollision__26CJointCollisionDescriptionF6CSegId6CSegIdffQ226CJointCollisionDescription16EOrientationTypeRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" +/* 80229744 002266A4 80 E1 00 50 */ lwz r7, 0x50(r1) +/* 80229748 002266A8 7F 83 E3 78 */ mr r3, r28 +/* 8022974C 002266AC 80 C1 00 54 */ lwz r6, 0x54(r1) +/* 80229750 002266B0 7F A4 EB 78 */ mr r4, r29 +/* 80229754 002266B4 88 A1 00 58 */ lbz r5, 0x58(r1) +/* 80229758 002266B8 88 01 00 59 */ lbz r0, 0x59(r1) +/* 8022975C 002266BC C0 E1 00 5C */ lfs f7, 0x5c(r1) +/* 80229760 002266C0 C0 C1 00 60 */ lfs f6, 0x60(r1) +/* 80229764 002266C4 C0 A1 00 64 */ lfs f5, 0x64(r1) +/* 80229768 002266C8 C0 81 00 68 */ lfs f4, 0x68(r1) +/* 8022976C 002266CC C0 61 00 6C */ lfs f3, 0x6c(r1) +/* 80229770 002266D0 C0 41 00 70 */ lfs f2, 0x70(r1) +/* 80229774 002266D4 C0 21 00 74 */ lfs f1, 0x74(r1) +/* 80229778 002266D8 C0 01 00 78 */ lfs f0, 0x78(r1) +/* 8022977C 002266DC 90 E1 00 94 */ stw r7, 0x94(r1) +/* 80229780 002266E0 90 C1 00 98 */ stw r6, 0x98(r1) +/* 80229784 002266E4 98 A1 00 9C */ stb r5, 0x9c(r1) +/* 80229788 002266E8 98 01 00 9D */ stb r0, 0x9d(r1) +/* 8022978C 002266EC D0 E1 00 A0 */ stfs f7, 0xa0(r1) +/* 80229790 002266F0 D0 C1 00 A4 */ stfs f6, 0xa4(r1) +/* 80229794 002266F4 D0 A1 00 A8 */ stfs f5, 0xa8(r1) +/* 80229798 002266F8 D0 81 00 AC */ stfs f4, 0xac(r1) +/* 8022979C 002266FC D0 61 00 B0 */ stfs f3, 0xb0(r1) +/* 802297A0 00226700 D0 41 00 B4 */ stfs f2, 0xb4(r1) +/* 802297A4 00226704 D0 21 00 B8 */ stfs f1, 0xb8(r1) +/* 802297A8 00226708 D0 01 00 BC */ stfs f0, 0xbc(r1) +/* 802297AC 0022670C 48 11 49 B5 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 802297B0 00226710 A0 01 00 8C */ lhz r0, 0x8c(r1) +/* 802297B4 00226714 28 1D 00 00 */ cmplwi r29, 0 +/* 802297B8 00226718 C0 01 00 90 */ lfs f0, 0x90(r1) +/* 802297BC 0022671C B0 01 00 D0 */ sth r0, 0xd0(r1) +/* 802297C0 00226720 D0 01 00 D4 */ stfs f0, 0xd4(r1) +/* 802297C4 00226724 41 82 00 0C */ beq lbl_802297D0 +/* 802297C8 00226728 7F A3 EB 78 */ mr r3, r29 +/* 802297CC 0022672C 48 11 43 15 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_802297D0: +/* 802297D0 00226730 38 61 00 20 */ addi r3, r1, 0x20 +/* 802297D4 00226734 48 11 43 0D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 802297D8 00226738 7F 43 D3 78 */ mr r3, r26 +/* 802297DC 0022673C 38 81 00 94 */ addi r4, r1, 0x94 +/* 802297E0 00226740 4B F2 CA 51 */ bl sub_80156230 +/* 802297E4 00226744 28 1C 00 00 */ cmplwi r28, 0 +/* 802297E8 00226748 41 82 00 0C */ beq lbl_802297F4 +/* 802297EC 0022674C 7F 83 E3 78 */ mr r3, r28 +/* 802297F0 00226750 48 11 42 F1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_802297F4: +/* 802297F4 00226754 3B DE 00 10 */ addi r30, r30, 0x10 +/* 802297F8 00226758 3B 7B 00 01 */ addi r27, r27, 1 +lbl_802297FC: +/* 802297FC 0022675C 7C 1B C8 00 */ cmpw r27, r25 +/* 80229800 00226760 41 80 FE 94 */ blt lbl_80229694 +/* 80229804 00226764 BB 21 00 E4 */ lmw r25, 0xe4(r1) +/* 80229808 00226768 80 01 01 04 */ lwz r0, 0x104(r1) +/* 8022980C 0022676C 7C 08 03 A6 */ mtlr r0 +/* 80229810 00226770 38 21 01 00 */ addi r1, r1, 0x100 +/* 80229814 00226774 4E 80 00 20 */ blr + +.global sub_80229818 +sub_80229818: +/* 80229818 00226778 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 8022981C 0022677C 7C 08 02 A6 */ mflr r0 +/* 80229820 00226780 3C A0 80 57 */ lis r5, lbl_80570004@ha +/* 80229824 00226784 90 01 01 04 */ stw r0, 0x104(r1) +/* 80229828 00226788 BD C1 00 B8 */ stmw r14, 0xb8(r1) +/* 8022982C 0022678C 7C 9F 23 78 */ mr r31, r4 +/* 80229830 00226790 7C 7E 1B 78 */ mr r30, r3 +/* 80229834 00226794 85 E5 D7 80 */ lwzu r15, -0x2880(r5) +/* 80229838 00226798 82 05 00 04 */ lwz r16, lbl_80570004@l(r5) +/* 8022983C 0022679C 82 25 00 08 */ lwz r17, 8(r5) +/* 80229840 002267A0 82 45 00 0C */ lwz r18, 0xc(r5) +/* 80229844 002267A4 82 65 00 10 */ lwz r19, 0x10(r5) +/* 80229848 002267A8 82 85 00 14 */ lwz r20, 0x14(r5) +/* 8022984C 002267AC 82 A5 00 18 */ lwz r21, 0x18(r5) +/* 80229850 002267B0 82 C5 00 1C */ lwz r22, 0x1c(r5) +/* 80229854 002267B4 82 E5 00 20 */ lwz r23, 0x20(r5) +/* 80229858 002267B8 83 05 00 24 */ lwz r24, 0x24(r5) +/* 8022985C 002267BC 83 25 00 28 */ lwz r25, 0x28(r5) +/* 80229860 002267C0 83 45 00 2C */ lwz r26, 0x2c(r5) +/* 80229864 002267C4 83 65 00 30 */ lwz r27, 0x30(r5) +/* 80229868 002267C8 83 85 00 34 */ lwz r28, 0x34(r5) +/* 8022986C 002267CC 83 A5 00 38 */ lwz r29, 0x38(r5) +/* 80229870 002267D0 81 85 00 3C */ lwz r12, 0x3c(r5) +/* 80229874 002267D4 81 65 00 40 */ lwz r11, 0x40(r5) +/* 80229878 002267D8 81 45 00 44 */ lwz r10, 0x44(r5) +/* 8022987C 002267DC 81 25 00 48 */ lwz r9, 0x48(r5) +/* 80229880 002267E0 81 05 00 4C */ lwz r8, 0x4c(r5) +/* 80229884 002267E4 80 E5 00 50 */ lwz r7, 0x50(r5) +/* 80229888 002267E8 80 C5 00 54 */ lwz r6, 0x54(r5) +/* 8022988C 002267EC 80 85 00 58 */ lwz r4, 0x58(r5) +/* 80229890 002267F0 80 05 00 5C */ lwz r0, 0x5c(r5) +/* 80229894 002267F4 81 C5 00 60 */ lwz r14, 0x60(r5) +/* 80229898 002267F8 80 A5 00 64 */ lwz r5, 0x64(r5) +/* 8022989C 002267FC 91 E1 00 48 */ stw r15, 0x48(r1) +/* 802298A0 00226800 92 01 00 4C */ stw r16, 0x4c(r1) +/* 802298A4 00226804 92 21 00 50 */ stw r17, 0x50(r1) +/* 802298A8 00226808 92 41 00 54 */ stw r18, 0x54(r1) +/* 802298AC 0022680C 92 61 00 58 */ stw r19, 0x58(r1) +/* 802298B0 00226810 92 81 00 5C */ stw r20, 0x5c(r1) +/* 802298B4 00226814 92 A1 00 60 */ stw r21, 0x60(r1) +/* 802298B8 00226818 92 C1 00 64 */ stw r22, 0x64(r1) +/* 802298BC 0022681C 92 E1 00 68 */ stw r23, 0x68(r1) +/* 802298C0 00226820 93 01 00 6C */ stw r24, 0x6c(r1) +/* 802298C4 00226824 93 21 00 70 */ stw r25, 0x70(r1) +/* 802298C8 00226828 93 41 00 74 */ stw r26, 0x74(r1) +/* 802298CC 0022682C 93 61 00 78 */ stw r27, 0x78(r1) +/* 802298D0 00226830 93 81 00 7C */ stw r28, 0x7c(r1) +/* 802298D4 00226834 93 A1 00 80 */ stw r29, 0x80(r1) +/* 802298D8 00226838 91 81 00 84 */ stw r12, 0x84(r1) +/* 802298DC 0022683C 91 61 00 88 */ stw r11, 0x88(r1) +/* 802298E0 00226840 91 41 00 8C */ stw r10, 0x8c(r1) +/* 802298E4 00226844 91 21 00 90 */ stw r9, 0x90(r1) +/* 802298E8 00226848 91 01 00 94 */ stw r8, 0x94(r1) +/* 802298EC 0022684C 90 E1 00 98 */ stw r7, 0x98(r1) +/* 802298F0 00226850 90 C1 00 9C */ stw r6, 0x9c(r1) +/* 802298F4 00226854 90 81 00 A0 */ stw r4, 0xa0(r1) +/* 802298F8 00226858 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 802298FC 0022685C 91 C1 00 A8 */ stw r14, 0xa8(r1) +/* 80229900 00226860 90 A1 00 AC */ stw r5, 0xac(r1) +/* 80229904 00226864 81 83 00 00 */ lwz r12, 0(r3) +/* 80229908 00226868 81 8C 02 CC */ lwz r12, 0x2cc(r12) +/* 8022990C 0022686C 7D 89 03 A6 */ mtctr r12 +/* 80229910 00226870 4E 80 04 21 */ bctrl +/* 80229914 00226874 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80229918 00226878 41 82 01 E4 */ beq lbl_80229AFC +/* 8022991C 0022687C 39 DE 07 78 */ addi r14, r30, 0x778 +/* 80229920 00226880 39 FE 07 8C */ addi r15, r30, 0x78c +/* 80229924 00226884 3A 00 00 00 */ li r16, 0 +/* 80229928 00226888 48 00 01 30 */ b lbl_80229A58 +lbl_8022992C: +/* 8022992C 0022688C 80 7E 07 30 */ lwz r3, 0x730(r30) +/* 80229930 00226890 7E 04 83 78 */ mr r4, r16 +/* 80229934 00226894 4B F7 D9 05 */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 80229938 00226898 7C 73 1B 78 */ mr r19, r3 +/* 8022993C 0022689C 7F E3 FB 78 */ mr r3, r31 +/* 80229940 002268A0 A0 13 00 3C */ lhz r0, 0x3c(r19) +/* 80229944 002268A4 38 81 00 0C */ addi r4, r1, 0xc +/* 80229948 002268A8 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8022994C 002268AC B0 01 00 0C */ sth r0, 0xc(r1) +/* 80229950 002268B0 4B E2 2C 25 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80229954 002268B4 7C 64 1B 78 */ mr r4, r3 +/* 80229958 002268B8 38 61 00 30 */ addi r3, r1, 0x30 +/* 8022995C 002268BC 4B E8 59 F1 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 80229960 002268C0 82 23 00 04 */ lwz r17, 4(r3) +/* 80229964 002268C4 28 11 00 00 */ cmplwi r17, 0 +/* 80229968 002268C8 41 82 00 EC */ beq lbl_80229A54 +/* 8022996C 002268CC 80 82 B5 A4 */ lwz r4, lbl_805AD2C4@sda21(r2) +/* 80229970 002268D0 38 61 00 38 */ addi r3, r1, 0x38 +/* 80229974 002268D4 4B DD B3 45 */ bl string_l__4rstlFPCc +/* 80229978 002268D8 38 73 00 2C */ addi r3, r19, 0x2c +/* 8022997C 002268DC 38 81 00 38 */ addi r4, r1, 0x38 +/* 80229980 002268E0 4B E2 8C 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" +/* 80229984 002268E4 7C 72 1B 78 */ mr r18, r3 +/* 80229988 002268E8 38 61 00 38 */ addi r3, r1, 0x38 +/* 8022998C 002268EC 48 11 41 55 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80229990 002268F0 56 40 06 3F */ clrlwi. r0, r18, 0x18 +/* 80229994 002268F4 41 82 00 10 */ beq lbl_802299A4 +/* 80229998 002268F8 A0 01 00 10 */ lhz r0, 0x10(r1) +/* 8022999C 002268FC B0 1E 07 70 */ sth r0, 0x770(r30) +/* 802299A0 00226900 48 00 00 98 */ b lbl_80229A38 +lbl_802299A4: +/* 802299A4 00226904 3C 60 80 3D */ lis r3, lbl_803D32A8@ha +/* 802299A8 00226908 80 A2 B5 AC */ lwz r5, lbl_805AD2CC@sda21(r2) +/* 802299AC 0022690C 38 C3 32 A8 */ addi r6, r3, lbl_803D32A8@l +/* 802299B0 00226910 38 93 00 2C */ addi r4, r19, 0x2c +/* 802299B4 00226914 7F C3 F3 78 */ mr r3, r30 +/* 802299B8 00226918 38 E0 00 03 */ li r7, 3 +/* 802299BC 0022691C 4B FF FA 81 */ bl sub_8022943c +/* 802299C0 00226920 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 802299C4 00226924 41 82 00 2C */ beq lbl_802299F0 +/* 802299C8 00226928 80 1E 07 74 */ lwz r0, 0x774(r30) +/* 802299CC 0022692C 54 00 08 3C */ slwi r0, r0, 1 +/* 802299D0 00226930 7C 6E 02 15 */ add. r3, r14, r0 +/* 802299D4 00226934 41 82 00 0C */ beq lbl_802299E0 +/* 802299D8 00226938 A0 01 00 10 */ lhz r0, 0x10(r1) +/* 802299DC 0022693C B0 03 00 00 */ sth r0, 0(r3) +lbl_802299E0: +/* 802299E0 00226940 80 7E 07 74 */ lwz r3, 0x774(r30) +/* 802299E4 00226944 38 03 00 01 */ addi r0, r3, 1 +/* 802299E8 00226948 90 1E 07 74 */ stw r0, 0x774(r30) +/* 802299EC 0022694C 48 00 00 4C */ b lbl_80229A38 +lbl_802299F0: +/* 802299F0 00226950 3C 60 80 3D */ lis r3, lbl_803D3278@ha +/* 802299F4 00226954 80 A2 B5 B0 */ lwz r5, lbl_805AD2D0@sda21(r2) +/* 802299F8 00226958 38 C3 32 78 */ addi r6, r3, lbl_803D3278@l +/* 802299FC 0022695C 38 93 00 2C */ addi r4, r19, 0x2c +/* 80229A00 00226960 7F C3 F3 78 */ mr r3, r30 +/* 80229A04 00226964 38 E0 00 03 */ li r7, 3 +/* 80229A08 00226968 4B FF FA 35 */ bl sub_8022943c +/* 80229A0C 0022696C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80229A10 00226970 41 82 00 28 */ beq lbl_80229A38 +/* 80229A14 00226974 80 1E 07 88 */ lwz r0, 0x788(r30) +/* 80229A18 00226978 54 00 08 3C */ slwi r0, r0, 1 +/* 80229A1C 0022697C 7C 6F 02 15 */ add. r3, r15, r0 +/* 80229A20 00226980 41 82 00 0C */ beq lbl_80229A2C +/* 80229A24 00226984 A0 01 00 10 */ lhz r0, 0x10(r1) +/* 80229A28 00226988 B0 03 00 00 */ sth r0, 0(r3) +lbl_80229A2C: +/* 80229A2C 0022698C 80 7E 07 88 */ lwz r3, 0x788(r30) +/* 80229A30 00226990 38 03 00 01 */ addi r0, r3, 1 +/* 80229A34 00226994 90 1E 07 88 */ stw r0, 0x788(r30) +lbl_80229A38: +/* 80229A38 00226998 A0 61 00 10 */ lhz r3, 0x10(r1) +/* 80229A3C 0022699C A0 1E 07 70 */ lhz r0, 0x770(r30) +/* 80229A40 002269A0 7C 03 00 40 */ cmplw r3, r0 +/* 80229A44 002269A4 41 82 00 10 */ beq lbl_80229A54 +/* 80229A48 002269A8 7E 23 8B 78 */ mr r3, r17 +/* 80229A4C 002269AC 38 81 00 48 */ addi r4, r1, 0x48 +/* 80229A50 002269B0 4B F7 F1 49 */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability +lbl_80229A54: +/* 80229A54 002269B4 3A 10 00 01 */ addi r16, r16, 1 +lbl_80229A58: +/* 80229A58 002269B8 80 7E 07 30 */ lwz r3, 0x730(r30) +/* 80229A5C 002269BC 4B F7 D7 ED */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 80229A60 002269C0 7C 10 18 40 */ cmplw r16, r3 +/* 80229A64 002269C4 41 80 FE C8 */ blt lbl_8022992C +/* 80229A68 002269C8 38 00 00 00 */ li r0, 0 +/* 80229A6C 002269CC 80 AD 95 9C */ lwz r5, lbl_805A815C@sda21(r13) +/* 80229A70 002269D0 90 01 00 2C */ stw r0, 0x2c(r1) +/* 80229A74 002269D4 38 60 00 00 */ li r3, 0 +/* 80229A78 002269D8 38 80 00 01 */ li r4, 1 +/* 80229A7C 002269DC 90 01 00 28 */ stw r0, 0x28(r1) +/* 80229A80 002269E0 48 16 04 75 */ bl __shl2i +/* 80229A84 002269E4 80 01 00 28 */ lwz r0, 0x28(r1) +/* 80229A88 002269E8 80 C1 00 2C */ lwz r6, 0x2c(r1) +/* 80229A8C 002269EC 7C 00 1B 78 */ or r0, r0, r3 +/* 80229A90 002269F0 80 AD 95 A0 */ lwz r5, lbl_805A8160@sda21(r13) +/* 80229A94 002269F4 7C C4 23 78 */ or r4, r6, r4 +/* 80229A98 002269F8 90 01 00 28 */ stw r0, 0x28(r1) +/* 80229A9C 002269FC 38 60 00 00 */ li r3, 0 +/* 80229AA0 00226A00 90 81 00 2C */ stw r4, 0x2c(r1) +/* 80229AA4 00226A04 38 80 00 01 */ li r4, 1 +/* 80229AA8 00226A08 48 16 04 4D */ bl __shl2i +/* 80229AAC 00226A0C 80 01 00 28 */ lwz r0, 0x28(r1) +/* 80229AB0 00226A10 80 C1 00 2C */ lwz r6, 0x2c(r1) +/* 80229AB4 00226A14 7C 00 1B 78 */ or r0, r0, r3 +/* 80229AB8 00226A18 80 AD 95 A4 */ lwz r5, lbl_805A8164@sda21(r13) +/* 80229ABC 00226A1C 7C C4 23 78 */ or r4, r6, r4 +/* 80229AC0 00226A20 90 01 00 28 */ stw r0, 0x28(r1) +/* 80229AC4 00226A24 38 60 00 00 */ li r3, 0 +/* 80229AC8 00226A28 90 81 00 2C */ stw r4, 0x2c(r1) +/* 80229ACC 00226A2C 38 80 00 01 */ li r4, 1 +/* 80229AD0 00226A30 48 16 04 25 */ bl __shl2i +/* 80229AD4 00226A34 80 01 00 28 */ lwz r0, 0x28(r1) +/* 80229AD8 00226A38 38 A1 00 28 */ addi r5, r1, 0x28 +/* 80229ADC 00226A3C 80 C1 00 2C */ lwz r6, 0x2c(r1) +/* 80229AE0 00226A40 7C 00 1B 78 */ or r0, r0, r3 +/* 80229AE4 00226A44 7C C3 23 78 */ or r3, r6, r4 +/* 80229AE8 00226A48 90 01 00 28 */ stw r0, 0x28(r1) +/* 80229AEC 00226A4C 7F E4 FB 78 */ mr r4, r31 +/* 80229AF0 00226A50 90 61 00 2C */ stw r3, 0x2c(r1) +/* 80229AF4 00226A54 80 7E 07 30 */ lwz r3, 0x730(r30) +/* 80229AF8 00226A58 4B F7 D7 59 */ bl AddMaterial__22CCollisionActorManagerFR13CStateManagerRC13CMaterialList +lbl_80229AFC: +/* 80229AFC 00226A5C 80 7E 05 D4 */ lwz r3, 0x5d4(r30) +/* 80229B00 00226A60 38 80 00 00 */ li r4, 0 +/* 80229B04 00226A64 4B F7 D7 35 */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 80229B08 00226A68 A0 03 00 3C */ lhz r0, 0x3c(r3) +/* 80229B0C 00226A6C 7F E3 FB 78 */ mr r3, r31 +/* 80229B10 00226A70 38 81 00 08 */ addi r4, r1, 8 +/* 80229B14 00226A74 B0 1E 07 9C */ sth r0, 0x79c(r30) +/* 80229B18 00226A78 A0 1E 07 9C */ lhz r0, 0x79c(r30) +/* 80229B1C 00226A7C B0 01 00 08 */ sth r0, 8(r1) +/* 80229B20 00226A80 4B E2 2A 55 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80229B24 00226A84 7C 64 1B 78 */ mr r4, r3 +/* 80229B28 00226A88 38 61 00 20 */ addi r3, r1, 0x20 +/* 80229B2C 00226A8C 4B E8 58 21 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 80229B30 00226A90 80 63 00 04 */ lwz r3, 4(r3) +/* 80229B34 00226A94 28 03 00 00 */ cmplwi r3, 0 +/* 80229B38 00226A98 41 82 00 0C */ beq lbl_80229B44 +/* 80229B3C 00226A9C 38 00 00 00 */ li r0, 0 +/* 80229B40 00226AA0 90 03 03 00 */ stw r0, 0x300(r3) +lbl_80229B44: +/* 80229B44 00226AA4 38 00 00 00 */ li r0, 0 +/* 80229B48 00226AA8 80 AD 95 A8 */ lwz r5, lbl_805A8168@sda21(r13) +/* 80229B4C 00226AAC 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80229B50 00226AB0 38 60 00 00 */ li r3, 0 +/* 80229B54 00226AB4 38 80 00 01 */ li r4, 1 +/* 80229B58 00226AB8 90 01 00 18 */ stw r0, 0x18(r1) +/* 80229B5C 00226ABC 48 16 03 99 */ bl __shl2i +/* 80229B60 00226AC0 80 01 00 18 */ lwz r0, 0x18(r1) +/* 80229B64 00226AC4 80 C1 00 1C */ lwz r6, 0x1c(r1) +/* 80229B68 00226AC8 7C 00 1B 78 */ or r0, r0, r3 +/* 80229B6C 00226ACC 80 AD 95 AC */ lwz r5, lbl_805A816C@sda21(r13) +/* 80229B70 00226AD0 7C C4 23 78 */ or r4, r6, r4 +/* 80229B74 00226AD4 90 01 00 18 */ stw r0, 0x18(r1) +/* 80229B78 00226AD8 38 60 00 00 */ li r3, 0 +/* 80229B7C 00226ADC 90 81 00 1C */ stw r4, 0x1c(r1) +/* 80229B80 00226AE0 38 80 00 01 */ li r4, 1 +/* 80229B84 00226AE4 48 16 03 71 */ bl __shl2i +/* 80229B88 00226AE8 80 01 00 18 */ lwz r0, 0x18(r1) +/* 80229B8C 00226AEC 38 A1 00 18 */ addi r5, r1, 0x18 +/* 80229B90 00226AF0 80 C1 00 1C */ lwz r6, 0x1c(r1) +/* 80229B94 00226AF4 7C 00 1B 78 */ or r0, r0, r3 +/* 80229B98 00226AF8 7C C3 23 78 */ or r3, r6, r4 +/* 80229B9C 00226AFC 90 01 00 18 */ stw r0, 0x18(r1) +/* 80229BA0 00226B00 7F E4 FB 78 */ mr r4, r31 +/* 80229BA4 00226B04 90 61 00 1C */ stw r3, 0x1c(r1) +/* 80229BA8 00226B08 80 7E 05 D4 */ lwz r3, 0x5d4(r30) +/* 80229BAC 00226B0C 4B F7 D6 A5 */ bl AddMaterial__22CCollisionActorManagerFR13CStateManagerRC13CMaterialList +/* 80229BB0 00226B10 B9 C1 00 B8 */ lmw r14, 0xb8(r1) +/* 80229BB4 00226B14 80 01 01 04 */ lwz r0, 0x104(r1) +/* 80229BB8 00226B18 7C 08 03 A6 */ mtlr r0 +/* 80229BBC 00226B1C 38 21 01 00 */ addi r1, r1, 0x100 +/* 80229BC0 00226B20 4E 80 00 20 */ blr + +.global sub_80229bc4 +sub_80229bc4: +/* 80229BC4 00226B24 94 21 FE D0 */ stwu r1, -0x130(r1) +/* 80229BC8 00226B28 7C 08 02 A6 */ mflr r0 +/* 80229BCC 00226B2C 3C A0 80 3D */ lis r5, lbl_803D3278@ha +/* 80229BD0 00226B30 90 01 01 34 */ stw r0, 0x134(r1) +/* 80229BD4 00226B34 38 00 00 00 */ li r0, 0 +/* 80229BD8 00226B38 BF 61 01 1C */ stmw r27, 0x11c(r1) +/* 80229BDC 00226B3C 7C 7D 1B 78 */ mr r29, r3 +/* 80229BE0 00226B40 7C 9E 23 78 */ mr r30, r4 +/* 80229BE4 00226B44 3B 85 32 78 */ addi r28, r5, lbl_803D3278@l +/* 80229BE8 00226B48 38 61 00 64 */ addi r3, r1, 0x64 +/* 80229BEC 00226B4C 38 80 00 0D */ li r4, 0xd +/* 80229BF0 00226B50 90 01 00 68 */ stw r0, 0x68(r1) +/* 80229BF4 00226B54 90 01 00 6C */ stw r0, 0x6c(r1) +/* 80229BF8 00226B58 90 01 00 70 */ stw r0, 0x70(r1) +/* 80229BFC 00226B5C 4B F2 CB BD */ bl "reserve__Q24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>Fi" +/* 80229C00 00226B60 7F A3 EB 78 */ mr r3, r29 +/* 80229C04 00226B64 38 9C 00 00 */ addi r4, r28, 0 +/* 80229C08 00226B68 38 C1 00 64 */ addi r6, r1, 0x64 +/* 80229C0C 00226B6C 38 A0 00 03 */ li r5, 3 +/* 80229C10 00226B70 4B FF FA 51 */ bl sub_80229660 +/* 80229C14 00226B74 7F A3 EB 78 */ mr r3, r29 +/* 80229C18 00226B78 38 9C 00 30 */ addi r4, r28, 0x30 +/* 80229C1C 00226B7C 38 C1 00 64 */ addi r6, r1, 0x64 +/* 80229C20 00226B80 38 A0 00 03 */ li r5, 3 +/* 80229C24 00226B84 4B FF FA 3D */ bl sub_80229660 +/* 80229C28 00226B88 7F A3 EB 78 */ mr r3, r29 +/* 80229C2C 00226B8C 38 9C 00 60 */ addi r4, r28, 0x60 +/* 80229C30 00226B90 38 C1 00 64 */ addi r6, r1, 0x64 +/* 80229C34 00226B94 38 A0 00 07 */ li r5, 7 +/* 80229C38 00226B98 4B FF F8 BD */ bl sub_802294f4 +/* 80229C3C 00226B9C 7F A3 EB 78 */ mr r3, r29 +/* 80229C40 00226BA0 81 9D 00 00 */ lwz r12, 0(r29) +/* 80229C44 00226BA4 81 8C 02 CC */ lwz r12, 0x2cc(r12) +/* 80229C48 00226BA8 7D 89 03 A6 */ mtctr r12 +/* 80229C4C 00226BAC 4E 80 04 21 */ bctrl +/* 80229C50 00226BB0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80229C54 00226BB4 41 82 00 7C */ beq lbl_80229CD0 +/* 80229C58 00226BB8 3C 80 80 3D */ lis r4, lbl_803D3310@ha +/* 80229C5C 00226BBC 38 60 00 18 */ li r3, 0x18 +/* 80229C60 00226BC0 38 84 33 10 */ addi r4, r4, lbl_803D3310@l +/* 80229C64 00226BC4 38 A0 00 00 */ li r5, 0 +/* 80229C68 00226BC8 38 84 00 B8 */ addi r4, r4, 0xb8 +/* 80229C6C 00226BCC 48 0E BC 01 */ bl __nw__FUlPCcPCc +/* 80229C70 00226BD0 7C 7C 1B 79 */ or. r28, r3, r3 +/* 80229C74 00226BD4 41 82 00 38 */ beq lbl_80229CAC +/* 80229C78 00226BD8 81 3D 00 04 */ lwz r9, 4(r29) +/* 80229C7C 00226BDC 7F C4 F3 78 */ mr r4, r30 +/* 80229C80 00226BE0 38 A1 00 20 */ addi r5, r1, 0x20 +/* 80229C84 00226BE4 38 C1 00 40 */ addi r6, r1, 0x40 +/* 80229C88 00226BE8 91 21 00 40 */ stw r9, 0x40(r1) +/* 80229C8C 00226BEC 38 E1 00 64 */ addi r7, r1, 0x64 +/* 80229C90 00226BF0 39 00 00 01 */ li r8, 1 +/* 80229C94 00226BF4 A0 1D 00 08 */ lhz r0, 8(r29) +/* 80229C98 00226BF8 91 21 00 3C */ stw r9, 0x3c(r1) +/* 80229C9C 00226BFC B0 01 00 1C */ sth r0, 0x1c(r1) +/* 80229CA0 00226C00 B0 01 00 20 */ sth r0, 0x20(r1) +/* 80229CA4 00226C04 4B F7 DC 8D */ bl "__ct__22CCollisionActorManagerFR13CStateManager9TUniqueId7TAreaIdRCQ24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>b" +/* 80229CA8 00226C08 7C 7C 1B 78 */ mr r28, r3 +lbl_80229CAC: +/* 80229CAC 00226C0C 80 7D 07 30 */ lwz r3, 0x730(r29) +/* 80229CB0 00226C10 38 80 00 01 */ li r4, 1 +/* 80229CB4 00226C14 4B F7 DC 29 */ bl sub_801a78dc +/* 80229CB8 00226C18 93 9D 07 30 */ stw r28, 0x730(r29) +/* 80229CBC 00226C1C 7F C4 F3 78 */ mr r4, r30 +/* 80229CC0 00226C20 88 1D 00 30 */ lbz r0, 0x30(r29) +/* 80229CC4 00226C24 80 7D 07 30 */ lwz r3, 0x730(r29) +/* 80229CC8 00226C28 54 05 CF FE */ rlwinm r5, r0, 0x19, 0x1f, 0x1f +/* 80229CCC 00226C2C 4B F7 D6 2D */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb +lbl_80229CD0: +/* 80229CD0 00226C30 80 BD 07 74 */ lwz r5, 0x774(r29) +/* 80229CD4 00226C34 38 60 00 00 */ li r3, 0 +/* 80229CD8 00226C38 2C 05 00 00 */ cmpwi r5, 0 +/* 80229CDC 00226C3C 40 81 00 40 */ ble lbl_80229D1C +/* 80229CE0 00226C40 2C 05 00 08 */ cmpwi r5, 8 +/* 80229CE4 00226C44 38 85 FF F8 */ addi r4, r5, -8 +/* 80229CE8 00226C48 40 81 00 20 */ ble lbl_80229D08 +/* 80229CEC 00226C4C 38 04 00 07 */ addi r0, r4, 7 +/* 80229CF0 00226C50 54 00 E8 FE */ srwi r0, r0, 3 +/* 80229CF4 00226C54 7C 09 03 A6 */ mtctr r0 +/* 80229CF8 00226C58 2C 04 00 00 */ cmpwi r4, 0 +/* 80229CFC 00226C5C 40 81 00 0C */ ble lbl_80229D08 +lbl_80229D00: +/* 80229D00 00226C60 38 63 00 08 */ addi r3, r3, 8 +/* 80229D04 00226C64 42 00 FF FC */ bdnz lbl_80229D00 +lbl_80229D08: +/* 80229D08 00226C68 7C 03 28 50 */ subf r0, r3, r5 +/* 80229D0C 00226C6C 7C 09 03 A6 */ mtctr r0 +/* 80229D10 00226C70 7C 03 28 00 */ cmpw r3, r5 +/* 80229D14 00226C74 40 80 00 08 */ bge lbl_80229D1C +lbl_80229D18: +/* 80229D18 00226C78 42 00 00 00 */ bdnz lbl_80229D18 +lbl_80229D1C: +/* 80229D1C 00226C7C 38 60 00 00 */ li r3, 0 +/* 80229D20 00226C80 90 7D 07 74 */ stw r3, 0x774(r29) +/* 80229D24 00226C84 80 BD 07 88 */ lwz r5, 0x788(r29) +/* 80229D28 00226C88 2C 05 00 00 */ cmpwi r5, 0 +/* 80229D2C 00226C8C 40 81 00 40 */ ble lbl_80229D6C +/* 80229D30 00226C90 2C 05 00 08 */ cmpwi r5, 8 +/* 80229D34 00226C94 38 85 FF F8 */ addi r4, r5, -8 +/* 80229D38 00226C98 40 81 00 20 */ ble lbl_80229D58 +/* 80229D3C 00226C9C 38 04 00 07 */ addi r0, r4, 7 +/* 80229D40 00226CA0 54 00 E8 FE */ srwi r0, r0, 3 +/* 80229D44 00226CA4 7C 09 03 A6 */ mtctr r0 +/* 80229D48 00226CA8 2C 04 00 00 */ cmpwi r4, 0 +/* 80229D4C 00226CAC 40 81 00 0C */ ble lbl_80229D58 +lbl_80229D50: +/* 80229D50 00226CB0 38 63 00 08 */ addi r3, r3, 8 +/* 80229D54 00226CB4 42 00 FF FC */ bdnz lbl_80229D50 +lbl_80229D58: +/* 80229D58 00226CB8 7C 03 28 50 */ subf r0, r3, r5 +/* 80229D5C 00226CBC 7C 09 03 A6 */ mtctr r0 +/* 80229D60 00226CC0 7C 03 28 00 */ cmpw r3, r5 +/* 80229D64 00226CC4 40 80 00 08 */ bge lbl_80229D6C +lbl_80229D68: +/* 80229D68 00226CC8 42 00 00 00 */ bdnz lbl_80229D68 +lbl_80229D6C: +/* 80229D6C 00226CCC 38 00 00 00 */ li r0, 0 +/* 80229D70 00226CD0 80 82 B5 B0 */ lwz r4, lbl_805AD2D0@sda21(r2) +/* 80229D74 00226CD4 90 1D 07 88 */ stw r0, 0x788(r29) +/* 80229D78 00226CD8 38 61 00 54 */ addi r3, r1, 0x54 +/* 80229D7C 00226CDC 4B DD AF 3D */ bl string_l__4rstlFPCc +/* 80229D80 00226CE0 80 9D 00 64 */ lwz r4, 0x64(r29) +/* 80229D84 00226CE4 38 61 00 0C */ addi r3, r1, 0xc +/* 80229D88 00226CE8 38 A1 00 54 */ addi r5, r1, 0x54 +/* 80229D8C 00226CEC 80 84 00 10 */ lwz r4, 0x10(r4) +/* 80229D90 00226CF0 4B E0 4A A9 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80229D94 00226CF4 88 01 00 0C */ lbz r0, 0xc(r1) +/* 80229D98 00226CF8 38 61 00 54 */ addi r3, r1, 0x54 +/* 80229D9C 00226CFC 98 01 00 10 */ stb r0, 0x10(r1) +/* 80229DA0 00226D00 48 11 3D 41 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80229DA4 00226D04 3C 80 80 3D */ lis r4, lbl_803D3310@ha +/* 80229DA8 00226D08 38 61 00 44 */ addi r3, r1, 0x44 +/* 80229DAC 00226D0C 38 84 33 10 */ addi r4, r4, lbl_803D3310@l +/* 80229DB0 00226D10 38 84 00 E1 */ addi r4, r4, 0xe1 +/* 80229DB4 00226D14 4B DD AF 05 */ bl string_l__4rstlFPCc +/* 80229DB8 00226D18 88 01 00 10 */ lbz r0, 0x10(r1) +/* 80229DBC 00226D1C 3C 80 80 57 */ lis r4, lbl_805723F8@ha +/* 80229DC0 00226D20 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80229DC4 00226D24 C0 22 B5 F4 */ lfs f1, lbl_805AD314@sda21(r2) +/* 80229DC8 00226D28 98 01 00 08 */ stb r0, 8(r1) +/* 80229DCC 00226D2C 38 A4 23 F8 */ addi r5, r4, lbl_805723F8@l +/* 80229DD0 00226D30 38 C3 66 A0 */ addi r6, r3, skZero3f@l +/* 80229DD4 00226D34 38 61 00 90 */ addi r3, r1, 0x90 +/* 80229DD8 00226D38 38 81 00 08 */ addi r4, r1, 8 +/* 80229DDC 00226D3C 38 E1 00 44 */ addi r7, r1, 0x44 +/* 80229DE0 00226D40 4B F7 E7 39 */ bl "OBBCollision__26CJointCollisionDescriptionF6CSegIdRC9CVector3fRC9CVector3fRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" +/* 80229DE4 00226D44 80 E1 00 90 */ lwz r7, 0x90(r1) +/* 80229DE8 00226D48 3B E1 01 00 */ addi r31, r1, 0x100 +/* 80229DEC 00226D4C 80 C1 00 94 */ lwz r6, 0x94(r1) +/* 80229DF0 00226D50 3B 61 00 BC */ addi r27, r1, 0xbc +/* 80229DF4 00226D54 88 A1 00 98 */ lbz r5, 0x98(r1) +/* 80229DF8 00226D58 7F E3 FB 78 */ mr r3, r31 +/* 80229DFC 00226D5C 88 01 00 99 */ lbz r0, 0x99(r1) +/* 80229E00 00226D60 7F 64 DB 78 */ mr r4, r27 +/* 80229E04 00226D64 C0 E1 00 9C */ lfs f7, 0x9c(r1) +/* 80229E08 00226D68 C0 C1 00 A0 */ lfs f6, 0xa0(r1) +/* 80229E0C 00226D6C C0 A1 00 A4 */ lfs f5, 0xa4(r1) +/* 80229E10 00226D70 C0 81 00 A8 */ lfs f4, 0xa8(r1) +/* 80229E14 00226D74 C0 61 00 AC */ lfs f3, 0xac(r1) +/* 80229E18 00226D78 C0 41 00 B0 */ lfs f2, 0xb0(r1) +/* 80229E1C 00226D7C C0 21 00 B4 */ lfs f1, 0xb4(r1) +/* 80229E20 00226D80 C0 01 00 B8 */ lfs f0, 0xb8(r1) +/* 80229E24 00226D84 90 E1 00 D4 */ stw r7, 0xd4(r1) +/* 80229E28 00226D88 90 C1 00 D8 */ stw r6, 0xd8(r1) +/* 80229E2C 00226D8C 98 A1 00 DC */ stb r5, 0xdc(r1) +/* 80229E30 00226D90 98 01 00 DD */ stb r0, 0xdd(r1) +/* 80229E34 00226D94 D0 E1 00 E0 */ stfs f7, 0xe0(r1) +/* 80229E38 00226D98 D0 C1 00 E4 */ stfs f6, 0xe4(r1) +/* 80229E3C 00226D9C D0 A1 00 E8 */ stfs f5, 0xe8(r1) +/* 80229E40 00226DA0 D0 81 00 EC */ stfs f4, 0xec(r1) +/* 80229E44 00226DA4 D0 61 00 F0 */ stfs f3, 0xf0(r1) +/* 80229E48 00226DA8 D0 41 00 F4 */ stfs f2, 0xf4(r1) +/* 80229E4C 00226DAC D0 21 00 F8 */ stfs f1, 0xf8(r1) +/* 80229E50 00226DB0 D0 01 00 FC */ stfs f0, 0xfc(r1) +/* 80229E54 00226DB4 48 11 43 0D */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80229E58 00226DB8 A0 01 00 CC */ lhz r0, 0xcc(r1) +/* 80229E5C 00226DBC 28 1B 00 00 */ cmplwi r27, 0 +/* 80229E60 00226DC0 C0 01 00 D0 */ lfs f0, 0xd0(r1) +/* 80229E64 00226DC4 B0 01 01 10 */ sth r0, 0x110(r1) +/* 80229E68 00226DC8 D0 01 01 14 */ stfs f0, 0x114(r1) +/* 80229E6C 00226DCC 41 82 00 0C */ beq lbl_80229E78 +/* 80229E70 00226DD0 7F 63 DB 78 */ mr r3, r27 +/* 80229E74 00226DD4 48 11 3C 6D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80229E78: +/* 80229E78 00226DD8 38 61 00 44 */ addi r3, r1, 0x44 +/* 80229E7C 00226DDC 48 11 3C 65 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80229E80 00226DE0 80 01 00 68 */ lwz r0, 0x68(r1) +/* 80229E84 00226DE4 83 61 00 70 */ lwz r27, 0x70(r1) +/* 80229E88 00226DE8 1C 00 00 44 */ mulli r0, r0, 0x44 +/* 80229E8C 00226DEC 93 61 00 28 */ stw r27, 0x28(r1) +/* 80229E90 00226DF0 7F 9B 02 14 */ add r28, r27, r0 +/* 80229E94 00226DF4 93 61 00 24 */ stw r27, 0x24(r1) +/* 80229E98 00226DF8 93 81 00 30 */ stw r28, 0x30(r1) +/* 80229E9C 00226DFC 93 81 00 2C */ stw r28, 0x2c(r1) +/* 80229EA0 00226E00 48 00 00 20 */ b lbl_80229EC0 +lbl_80229EA4: +/* 80229EA4 00226E04 28 1B 00 00 */ cmplwi r27, 0 +/* 80229EA8 00226E08 41 82 00 14 */ beq lbl_80229EBC +/* 80229EAC 00226E0C 34 1B 00 2C */ addic. r0, r27, 0x2c +/* 80229EB0 00226E10 41 82 00 0C */ beq lbl_80229EBC +/* 80229EB4 00226E14 38 7B 00 2C */ addi r3, r27, 0x2c +/* 80229EB8 00226E18 48 11 3C 29 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80229EBC: +/* 80229EBC 00226E1C 3B 7B 00 44 */ addi r27, r27, 0x44 +lbl_80229EC0: +/* 80229EC0 00226E20 7C 1B E0 40 */ cmplw r27, r28 +/* 80229EC4 00226E24 40 82 FF E0 */ bne lbl_80229EA4 +/* 80229EC8 00226E28 38 00 00 00 */ li r0, 0 +/* 80229ECC 00226E2C 38 61 00 64 */ addi r3, r1, 0x64 +/* 80229ED0 00226E30 90 01 00 68 */ stw r0, 0x68(r1) +/* 80229ED4 00226E34 38 81 00 D4 */ addi r4, r1, 0xd4 +/* 80229ED8 00226E38 4B F2 C3 59 */ bl sub_80156230 +/* 80229EDC 00226E3C 3C 80 80 3D */ lis r4, lbl_803D3310@ha +/* 80229EE0 00226E40 38 60 00 18 */ li r3, 0x18 +/* 80229EE4 00226E44 38 84 33 10 */ addi r4, r4, lbl_803D3310@l +/* 80229EE8 00226E48 38 A0 00 00 */ li r5, 0 +/* 80229EEC 00226E4C 38 84 00 B8 */ addi r4, r4, 0xb8 +/* 80229EF0 00226E50 48 0E B9 7D */ bl __nw__FUlPCcPCc +/* 80229EF4 00226E54 7C 7C 1B 79 */ or. r28, r3, r3 +/* 80229EF8 00226E58 41 82 00 38 */ beq lbl_80229F30 +/* 80229EFC 00226E5C 81 3D 00 04 */ lwz r9, 4(r29) +/* 80229F00 00226E60 7F C4 F3 78 */ mr r4, r30 +/* 80229F04 00226E64 38 A1 00 18 */ addi r5, r1, 0x18 +/* 80229F08 00226E68 38 C1 00 38 */ addi r6, r1, 0x38 +/* 80229F0C 00226E6C 91 21 00 38 */ stw r9, 0x38(r1) +/* 80229F10 00226E70 38 E1 00 64 */ addi r7, r1, 0x64 +/* 80229F14 00226E74 39 00 00 00 */ li r8, 0 +/* 80229F18 00226E78 A0 1D 00 08 */ lhz r0, 8(r29) +/* 80229F1C 00226E7C 91 21 00 34 */ stw r9, 0x34(r1) +/* 80229F20 00226E80 B0 01 00 14 */ sth r0, 0x14(r1) +/* 80229F24 00226E84 B0 01 00 18 */ sth r0, 0x18(r1) +/* 80229F28 00226E88 4B F7 DA 09 */ bl "__ct__22CCollisionActorManagerFR13CStateManager9TUniqueId7TAreaIdRCQ24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>b" +/* 80229F2C 00226E8C 7C 7C 1B 78 */ mr r28, r3 +lbl_80229F30: +/* 80229F30 00226E90 80 7D 05 D4 */ lwz r3, 0x5d4(r29) +/* 80229F34 00226E94 38 80 00 01 */ li r4, 1 +/* 80229F38 00226E98 4B F7 D9 A5 */ bl sub_801a78dc +/* 80229F3C 00226E9C 93 9D 05 D4 */ stw r28, 0x5d4(r29) +/* 80229F40 00226EA0 7F A3 EB 78 */ mr r3, r29 +/* 80229F44 00226EA4 7F C4 F3 78 */ mr r4, r30 +/* 80229F48 00226EA8 4B FF F8 D1 */ bl sub_80229818 +/* 80229F4C 00226EAC 7F A3 EB 78 */ mr r3, r29 +/* 80229F50 00226EB0 7F C4 F3 78 */ mr r4, r30 +/* 80229F54 00226EB4 81 9D 00 00 */ lwz r12, 0(r29) +/* 80229F58 00226EB8 81 8C 02 D4 */ lwz r12, 0x2d4(r12) +/* 80229F5C 00226EBC 7D 89 03 A6 */ mtctr r12 +/* 80229F60 00226EC0 4E 80 04 21 */ bctrl +/* 80229F64 00226EC4 80 AD 95 8C */ lwz r5, lbl_805A814C@sda21(r13) +/* 80229F68 00226EC8 38 60 00 00 */ li r3, 0 +/* 80229F6C 00226ECC 38 80 00 01 */ li r4, 1 +/* 80229F70 00226ED0 48 15 FF 85 */ bl __shl2i +/* 80229F74 00226ED4 80 AD 95 90 */ lwz r5, lbl_805A8150@sda21(r13) +/* 80229F78 00226ED8 7C 9B 23 78 */ mr r27, r4 +/* 80229F7C 00226EDC 7C 7C 1B 78 */ mr r28, r3 +/* 80229F80 00226EE0 38 60 00 00 */ li r3, 0 +/* 80229F84 00226EE4 38 80 00 01 */ li r4, 1 +/* 80229F88 00226EE8 48 15 FF 6D */ bl __shl2i +/* 80229F8C 00226EEC 80 AD 95 94 */ lwz r5, lbl_805A8154@sda21(r13) +/* 80229F90 00226EF0 7F 7B 23 78 */ or r27, r27, r4 +/* 80229F94 00226EF4 7F 9C 1B 78 */ or r28, r28, r3 +/* 80229F98 00226EF8 38 60 00 00 */ li r3, 0 +/* 80229F9C 00226EFC 38 80 00 01 */ li r4, 1 +/* 80229FA0 00226F00 48 15 FF 55 */ bl __shl2i +/* 80229FA4 00226F04 80 AD 95 98 */ lwz r5, lbl_805A8158@sda21(r13) +/* 80229FA8 00226F08 7F 7B 23 78 */ or r27, r27, r4 +/* 80229FAC 00226F0C 7F 9C 1B 78 */ or r28, r28, r3 +/* 80229FB0 00226F10 38 60 00 00 */ li r3, 0 +/* 80229FB4 00226F14 38 80 00 01 */ li r4, 1 +/* 80229FB8 00226F18 48 15 FF 3D */ bl __shl2i +/* 80229FBC 00226F1C 3C A0 00 02 */ lis r5, 2 +/* 80229FC0 00226F20 38 00 00 03 */ li r0, 3 +/* 80229FC4 00226F24 7F 85 2B 78 */ or r5, r28, r5 +/* 80229FC8 00226F28 90 81 00 7C */ stw r4, 0x7c(r1) +/* 80229FCC 00226F2C 38 81 00 78 */ addi r4, r1, 0x78 +/* 80229FD0 00226F30 90 61 00 78 */ stw r3, 0x78(r1) +/* 80229FD4 00226F34 7F A3 EB 78 */ mr r3, r29 +/* 80229FD8 00226F38 93 61 00 84 */ stw r27, 0x84(r1) +/* 80229FDC 00226F3C 90 A1 00 80 */ stw r5, 0x80(r1) +/* 80229FE0 00226F40 90 01 00 88 */ stw r0, 0x88(r1) +/* 80229FE4 00226F44 4B E2 98 BD */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter +/* 80229FE8 00226F48 7F A3 EB 78 */ mr r3, r29 +/* 80229FEC 00226F4C 7F C5 F3 78 */ mr r5, r30 +/* 80229FF0 00226F50 38 80 00 12 */ li r4, 0x12 +/* 80229FF4 00226F54 4B E2 A3 5D */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 80229FF8 00226F58 28 1F 00 00 */ cmplwi r31, 0 +/* 80229FFC 00226F5C 41 82 00 0C */ beq lbl_8022A008 +/* 8022A000 00226F60 7F E3 FB 78 */ mr r3, r31 +/* 8022A004 00226F64 48 11 3A DD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8022A008: +/* 8022A008 00226F68 38 61 00 64 */ addi r3, r1, 0x64 +/* 8022A00C 00226F6C 38 80 FF FF */ li r4, -1 +/* 8022A010 00226F70 4B F2 C3 1D */ bl sub_8015632c +/* 8022A014 00226F74 BB 61 01 1C */ lmw r27, 0x11c(r1) +/* 8022A018 00226F78 80 01 01 34 */ lwz r0, 0x134(r1) +/* 8022A01C 00226F7C 7C 08 03 A6 */ mtlr r0 +/* 8022A020 00226F80 38 21 01 30 */ addi r1, r1, 0x130 +/* 8022A024 00226F84 4E 80 00 20 */ blr + +.global CallForBackup__12CElitePirateFR13CStateManager9EStateMsgf +CallForBackup__12CElitePirateFR13CStateManager9EStateMsgf: +/* 8022A028 00226F88 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8022A02C 00226F8C 7C 08 02 A6 */ mflr r0 +/* 8022A030 00226F90 2C 05 00 01 */ cmpwi r5, 1 +/* 8022A034 00226F94 90 01 00 34 */ stw r0, 0x34(r1) +/* 8022A038 00226F98 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8022A03C 00226F9C 41 82 00 48 */ beq lbl_8022A084 +/* 8022A040 00226FA0 40 80 00 10 */ bge lbl_8022A050 +/* 8022A044 00226FA4 2C 05 00 00 */ cmpwi r5, 0 +/* 8022A048 00226FA8 40 80 00 14 */ bge lbl_8022A05C +/* 8022A04C 00226FAC 48 00 01 78 */ b lbl_8022A1C4 +lbl_8022A050: +/* 8022A050 00226FB0 2C 05 00 03 */ cmpwi r5, 3 +/* 8022A054 00226FB4 40 80 01 70 */ bge lbl_8022A1C4 +/* 8022A058 00226FB8 48 00 01 5C */ b lbl_8022A1B4 +lbl_8022A05C: +/* 8022A05C 00226FBC 38 00 00 00 */ li r0, 0 +/* 8022A060 00226FC0 38 C0 00 01 */ li r6, 1 +/* 8022A064 00226FC4 90 03 05 68 */ stw r0, 0x568(r3) +/* 8022A068 00226FC8 7C 85 23 78 */ mr r5, r4 +/* 8022A06C 00226FCC 38 80 00 00 */ li r4, 0 +/* 8022A070 00226FD0 88 03 09 88 */ lbz r0, 0x988(r3) +/* 8022A074 00226FD4 50 C0 0F BC */ rlwimi r0, r6, 1, 0x1e, 0x1e +/* 8022A078 00226FD8 98 03 09 88 */ stb r0, 0x988(r3) +/* 8022A07C 00226FDC 4B FF D5 21 */ bl sub_8022759c +/* 8022A080 00226FE0 48 00 01 44 */ b lbl_8022A1C4 +lbl_8022A084: +/* 8022A084 00226FE4 80 03 05 68 */ lwz r0, 0x568(r3) +/* 8022A088 00226FE8 2C 00 00 01 */ cmpwi r0, 1 +/* 8022A08C 00226FEC 41 82 01 38 */ beq lbl_8022A1C4 +/* 8022A090 00226FF0 40 80 00 10 */ bge lbl_8022A0A0 +/* 8022A094 00226FF4 2C 00 00 00 */ cmpwi r0, 0 +/* 8022A098 00226FF8 40 80 00 14 */ bge lbl_8022A0AC +/* 8022A09C 00226FFC 48 00 01 28 */ b lbl_8022A1C4 +lbl_8022A0A0: +/* 8022A0A0 00227000 2C 00 00 03 */ cmpwi r0, 3 +/* 8022A0A4 00227004 40 80 01 20 */ bge lbl_8022A1C4 +/* 8022A0A8 00227008 48 00 00 F0 */ b lbl_8022A198 +lbl_8022A0AC: +/* 8022A0AC 0022700C 81 43 04 50 */ lwz r10, 0x450(r3) +/* 8022A0B0 00227010 80 0A 02 B8 */ lwz r0, 0x2b8(r10) +/* 8022A0B4 00227014 2C 00 00 0C */ cmpwi r0, 0xc +/* 8022A0B8 00227018 40 82 00 10 */ bne lbl_8022A0C8 +/* 8022A0BC 0022701C 38 00 00 02 */ li r0, 2 +/* 8022A0C0 00227020 90 03 05 68 */ stw r0, 0x568(r3) +/* 8022A0C4 00227024 48 00 01 00 */ b lbl_8022A1C4 +lbl_8022A0C8: +/* 8022A0C8 00227028 3C C0 80 3E */ lis r6, lbl_803DAA68@ha +/* 8022A0CC 0022702C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8022A0D0 00227030 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 8022A0D4 00227034 80 81 00 24 */ lwz r4, 0x24(r1) +/* 8022A0D8 00227038 38 60 00 00 */ li r3, 0 +/* 8022A0DC 0022703C 39 26 AA 68 */ addi r9, r6, lbl_803DAA68@l +/* 8022A0E0 00227040 50 64 F8 00 */ rlwimi r4, r3, 0x1f, 0, 0 +/* 8022A0E4 00227044 C0 45 00 00 */ lfs f2, 0(r5) +/* 8022A0E8 00227048 C0 25 00 04 */ lfs f1, 4(r5) +/* 8022A0EC 0022704C 3C E0 80 3E */ lis r7, lbl_803DA9F0@ha +/* 8022A0F0 00227050 C0 05 00 08 */ lfs f0, 8(r5) +/* 8022A0F4 00227054 7C 80 23 78 */ mr r0, r4 +/* 8022A0F8 00227058 39 00 00 0E */ li r8, 0xe +/* 8022A0FC 0022705C 38 C0 00 05 */ li r6, 5 +/* 8022A100 00227060 38 A0 FF FF */ li r5, -1 +/* 8022A104 00227064 3B EA 00 04 */ addi r31, r10, 4 +/* 8022A108 00227068 91 21 00 08 */ stw r9, 8(r1) +/* 8022A10C 0022706C 38 E7 A9 F0 */ addi r7, r7, lbl_803DA9F0@l +/* 8022A110 00227070 50 60 F0 42 */ rlwimi r0, r3, 0x1e, 1, 1 +/* 8022A114 00227074 7F E3 FB 78 */ mr r3, r31 +/* 8022A118 00227078 90 81 00 24 */ stw r4, 0x24(r1) +/* 8022A11C 0022707C 38 80 00 0E */ li r4, 0xe +/* 8022A120 00227080 91 01 00 0C */ stw r8, 0xc(r1) +/* 8022A124 00227084 90 E1 00 08 */ stw r7, 8(r1) +/* 8022A128 00227088 90 C1 00 10 */ stw r6, 0x10(r1) +/* 8022A12C 0022708C D0 41 00 14 */ stfs f2, 0x14(r1) +/* 8022A130 00227090 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 8022A134 00227094 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8022A138 00227098 90 A1 00 20 */ stw r5, 0x20(r1) +/* 8022A13C 0022709C 90 01 00 24 */ stw r0, 0x24(r1) +/* 8022A140 002270A0 4B F0 72 F9 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8022A144 002270A4 80 01 00 0C */ lwz r0, 0xc(r1) +/* 8022A148 002270A8 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha +/* 8022A14C 002270AC 38 83 A9 F0 */ addi r4, r3, lbl_803DA9F0@l +/* 8022A150 002270B0 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8022A154 002270B4 90 1F 01 90 */ stw r0, 0x190(r31) +/* 8022A158 002270B8 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 8022A15C 002270BC 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 8022A160 002270C0 80 61 00 14 */ lwz r3, 0x14(r1) +/* 8022A164 002270C4 90 BF 01 94 */ stw r5, 0x194(r31) +/* 8022A168 002270C8 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 8022A16C 002270CC 90 7F 01 98 */ stw r3, 0x198(r31) +/* 8022A170 002270D0 80 61 00 1C */ lwz r3, 0x1c(r1) +/* 8022A174 002270D4 90 BF 01 9C */ stw r5, 0x19c(r31) +/* 8022A178 002270D8 80 A1 00 20 */ lwz r5, 0x20(r1) +/* 8022A17C 002270DC 90 7F 01 A0 */ stw r3, 0x1a0(r31) +/* 8022A180 002270E0 80 61 00 24 */ lwz r3, 0x24(r1) +/* 8022A184 002270E4 90 BF 01 A4 */ stw r5, 0x1a4(r31) +/* 8022A188 002270E8 90 81 00 08 */ stw r4, 8(r1) +/* 8022A18C 002270EC 90 7F 01 A8 */ stw r3, 0x1a8(r31) +/* 8022A190 002270F0 90 01 00 08 */ stw r0, 8(r1) +/* 8022A194 002270F4 48 00 00 30 */ b lbl_8022A1C4 +lbl_8022A198: +/* 8022A198 002270F8 80 83 04 50 */ lwz r4, 0x450(r3) +/* 8022A19C 002270FC 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 8022A1A0 00227100 2C 00 00 0C */ cmpwi r0, 0xc +/* 8022A1A4 00227104 41 82 00 20 */ beq lbl_8022A1C4 +/* 8022A1A8 00227108 38 00 00 03 */ li r0, 3 +/* 8022A1AC 0022710C 90 03 05 68 */ stw r0, 0x568(r3) +/* 8022A1B0 00227110 48 00 00 14 */ b lbl_8022A1C4 +lbl_8022A1B4: +/* 8022A1B4 00227114 7C 85 23 78 */ mr r5, r4 +/* 8022A1B8 00227118 38 80 00 09 */ li r4, 9 +/* 8022A1BC 0022711C 38 C0 FF FF */ li r6, -1 +/* 8022A1C0 00227120 4B E2 6F 01 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +lbl_8022A1C4: +/* 8022A1C4 00227124 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8022A1C8 00227128 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8022A1CC 0022712C 7C 08 03 A6 */ mtlr r0 +/* 8022A1D0 00227130 38 21 00 30 */ addi r1, r1, 0x30 +/* 8022A1D4 00227134 4E 80 00 20 */ blr + +.global Cover__12CElitePirateFR13CStateManager9EStateMsgf +Cover__12CElitePirateFR13CStateManager9EStateMsgf: +/* 8022A1D8 00227138 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 8022A1DC 0022713C 7C 08 02 A6 */ mflr r0 +/* 8022A1E0 00227140 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 8022A1E4 00227144 DB E1 00 D0 */ stfd f31, 0xd0(r1) +/* 8022A1E8 00227148 F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 +/* 8022A1EC 0022714C 93 E1 00 CC */ stw r31, 0xcc(r1) +/* 8022A1F0 00227150 93 C1 00 C8 */ stw r30, 0xc8(r1) +/* 8022A1F4 00227154 93 A1 00 C4 */ stw r29, 0xc4(r1) +/* 8022A1F8 00227158 7C BF 2B 78 */ mr r31, r5 +/* 8022A1FC 0022715C FF E0 08 90 */ fmr f31, f1 +/* 8022A200 00227160 2C 1F 00 01 */ cmpwi r31, 1 +/* 8022A204 00227164 7C 7D 1B 78 */ mr r29, r3 +/* 8022A208 00227168 7C 9E 23 78 */ mr r30, r4 +/* 8022A20C 0022716C 41 82 01 0C */ beq lbl_8022A318 +/* 8022A210 00227170 40 80 00 10 */ bge lbl_8022A220 +/* 8022A214 00227174 2C 1F 00 00 */ cmpwi r31, 0 +/* 8022A218 00227178 40 80 00 14 */ bge lbl_8022A22C +/* 8022A21C 0022717C 48 00 04 68 */ b lbl_8022A684 +lbl_8022A220: +/* 8022A220 00227180 2C 1F 00 03 */ cmpwi r31, 3 +/* 8022A224 00227184 40 80 04 60 */ bge lbl_8022A684 +/* 8022A228 00227188 48 00 03 E4 */ b lbl_8022A60C +lbl_8022A22C: +/* 8022A22C 0022718C 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 8022A230 00227190 38 80 00 00 */ li r4, 0 +/* 8022A234 00227194 4B F1 07 A5 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 8022A238 00227198 7F A3 EB 78 */ mr r3, r29 +/* 8022A23C 0022719C 81 9D 00 00 */ lwz r12, 0(r29) +/* 8022A240 002271A0 81 8C 02 CC */ lwz r12, 0x2cc(r12) +/* 8022A244 002271A4 7D 89 03 A6 */ mtctr r12 +/* 8022A248 002271A8 4E 80 04 21 */ bctrl +/* 8022A24C 002271AC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022A250 002271B0 41 82 00 3C */ beq lbl_8022A28C +/* 8022A254 002271B4 A0 1D 07 70 */ lhz r0, 0x770(r29) +/* 8022A258 002271B8 7F C3 F3 78 */ mr r3, r30 +/* 8022A25C 002271BC 38 81 00 14 */ addi r4, r1, 0x14 +/* 8022A260 002271C0 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8022A264 002271C4 4B E2 23 11 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8022A268 002271C8 7C 64 1B 78 */ mr r4, r3 +/* 8022A26C 002271CC 38 61 00 20 */ addi r3, r1, 0x20 +/* 8022A270 002271D0 4B E8 50 DD */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8022A274 002271D4 80 63 00 04 */ lwz r3, 4(r3) +/* 8022A278 002271D8 28 03 00 00 */ cmplwi r3, 0 +/* 8022A27C 002271DC 41 82 00 10 */ beq lbl_8022A28C +/* 8022A280 002271E0 3C 80 80 57 */ lis r4, lbl_8056D718@ha +/* 8022A284 002271E4 38 84 D7 18 */ addi r4, r4, lbl_8056D718@l +/* 8022A288 002271E8 4B F7 E9 11 */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability +lbl_8022A28C: +/* 8022A28C 002271EC 80 7D 05 D4 */ lwz r3, 0x5d4(r29) +/* 8022A290 002271F0 7F C4 F3 78 */ mr r4, r30 +/* 8022A294 002271F4 38 A0 00 01 */ li r5, 1 +/* 8022A298 002271F8 4B F7 D0 61 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb +/* 8022A29C 002271FC 80 BE 08 4C */ lwz r5, 0x84c(r30) +/* 8022A2A0 00227200 38 7D 06 F8 */ addi r3, r29, 0x6f8 +/* 8022A2A4 00227204 38 81 00 10 */ addi r4, r1, 0x10 +/* 8022A2A8 00227208 A0 05 00 08 */ lhz r0, 8(r5) +/* 8022A2AC 0022720C B0 01 00 0C */ sth r0, 0xc(r1) +/* 8022A2B0 00227210 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8022A2B4 00227214 4B F4 AF 65 */ bl SetTarget__13CBoneTrackingF9TUniqueId +/* 8022A2B8 00227218 38 7D 06 F8 */ addi r3, r29, 0x6f8 +/* 8022A2BC 0022721C 38 80 00 01 */ li r4, 1 +/* 8022A2C0 00227220 4B F4 AF 65 */ bl SetActive__13CBoneTrackingFb +/* 8022A2C4 00227224 7F A3 EB 78 */ mr r3, r29 +/* 8022A2C8 00227228 7F C4 F3 78 */ mr r4, r30 +/* 8022A2CC 0022722C 4B FF E3 69 */ bl sub_80228634 +/* 8022A2D0 00227230 FC 20 F8 90 */ fmr f1, f31 +/* 8022A2D4 00227234 7F A3 EB 78 */ mr r3, r29 +/* 8022A2D8 00227238 7F C4 F3 78 */ mr r4, r30 +/* 8022A2DC 0022723C 7F E5 FB 78 */ mr r5, r31 +/* 8022A2E0 00227240 4B FC C3 ED */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 8022A2E4 00227244 7F A3 EB 78 */ mr r3, r29 +/* 8022A2E8 00227248 7F C4 F3 78 */ mr r4, r30 +/* 8022A2EC 0022724C 81 9D 00 00 */ lwz r12, 0(r29) +/* 8022A2F0 00227250 C0 22 B5 B8 */ lfs f1, lbl_805AD2D8@sda21(r2) +/* 8022A2F4 00227254 81 8C 01 9C */ lwz r12, 0x19c(r12) +/* 8022A2F8 00227258 7D 89 03 A6 */ mtctr r12 +/* 8022A2FC 0022725C 4E 80 04 21 */ bctrl +/* 8022A300 00227260 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022A304 00227264 41 82 03 80 */ beq lbl_8022A684 +/* 8022A308 00227268 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 8022A30C 0022726C 38 63 00 04 */ addi r3, r3, 4 +/* 8022A310 00227270 4B F0 71 99 */ bl ClearLocomotionCmds__16CBodyStateCmdMgrFv +/* 8022A314 00227274 48 00 03 70 */ b lbl_8022A684 +lbl_8022A318: +/* 8022A318 00227278 88 1D 09 88 */ lbz r0, 0x988(r29) +/* 8022A31C 0022727C 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 8022A320 00227280 41 82 00 34 */ beq lbl_8022A354 +/* 8022A324 00227284 C0 3D 07 C0 */ lfs f1, 0x7c0(r29) +/* 8022A328 00227288 C0 02 B5 B8 */ lfs f0, lbl_805AD2D8@sda21(r2) +/* 8022A32C 0022728C EC 21 F8 28 */ fsubs f1, f1, f31 +/* 8022A330 00227290 D0 3D 07 C0 */ stfs f1, 0x7c0(r29) +/* 8022A334 00227294 C0 3D 07 C0 */ lfs f1, 0x7c0(r29) +/* 8022A338 00227298 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8022A33C 0022729C 4C 40 13 82 */ cror 2, 0, 2 +/* 8022A340 002272A0 40 82 00 14 */ bne lbl_8022A354 +/* 8022A344 002272A4 88 1D 09 88 */ lbz r0, 0x988(r29) +/* 8022A348 002272A8 38 60 00 00 */ li r3, 0 +/* 8022A34C 002272AC 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 8022A350 002272B0 98 1D 09 88 */ stb r0, 0x988(r29) +lbl_8022A354: +/* 8022A354 002272B4 7F A3 EB 78 */ mr r3, r29 +/* 8022A358 002272B8 7F C4 F3 78 */ mr r4, r30 +/* 8022A35C 002272BC 81 9D 00 00 */ lwz r12, 0(r29) +/* 8022A360 002272C0 C0 22 B5 B8 */ lfs f1, lbl_805AD2D8@sda21(r2) +/* 8022A364 002272C4 81 8C 01 90 */ lwz r12, 0x190(r12) +/* 8022A368 002272C8 7D 89 03 A6 */ mtctr r12 +/* 8022A36C 002272CC 4E 80 04 21 */ bctrl +/* 8022A370 002272D0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022A374 002272D4 41 82 00 10 */ beq lbl_8022A384 +/* 8022A378 002272D8 C0 1D 07 A8 */ lfs f0, 0x7a8(r29) +/* 8022A37C 002272DC EC 00 F8 2A */ fadds f0, f0, f31 +/* 8022A380 002272E0 48 00 00 08 */ b lbl_8022A388 +lbl_8022A384: +/* 8022A384 002272E4 C0 02 B5 B8 */ lfs f0, lbl_805AD2D8@sda21(r2) +lbl_8022A388: +/* 8022A388 002272E8 D0 1D 07 A8 */ stfs f0, 0x7a8(r29) +/* 8022A38C 002272EC 7F A3 EB 78 */ mr r3, r29 +/* 8022A390 002272F0 7F C4 F3 78 */ mr r4, r30 +/* 8022A394 002272F4 C0 22 B5 B8 */ lfs f1, lbl_805AD2D8@sda21(r2) +/* 8022A398 002272F8 81 9D 00 00 */ lwz r12, 0(r29) +/* 8022A39C 002272FC 81 8C 01 9C */ lwz r12, 0x19c(r12) +/* 8022A3A0 00227300 7D 89 03 A6 */ mtctr r12 +/* 8022A3A4 00227304 4E 80 04 21 */ bctrl +/* 8022A3A8 00227308 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022A3AC 0022730C 40 82 00 40 */ bne lbl_8022A3EC +/* 8022A3B0 00227310 7F A3 EB 78 */ mr r3, r29 +/* 8022A3B4 00227314 7F C4 F3 78 */ mr r4, r30 +/* 8022A3B8 00227318 81 9D 00 00 */ lwz r12, 0(r29) +/* 8022A3BC 0022731C C0 22 B5 B8 */ lfs f1, lbl_805AD2D8@sda21(r2) +/* 8022A3C0 00227320 81 8C 01 90 */ lwz r12, 0x190(r12) +/* 8022A3C4 00227324 7D 89 03 A6 */ mtctr r12 +/* 8022A3C8 00227328 4E 80 04 21 */ bctrl +/* 8022A3CC 0022732C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022A3D0 00227330 40 82 00 1C */ bne lbl_8022A3EC +/* 8022A3D4 00227334 FC 20 F8 90 */ fmr f1, f31 +/* 8022A3D8 00227338 7F A3 EB 78 */ mr r3, r29 +/* 8022A3DC 0022733C 7F C4 F3 78 */ mr r4, r30 +/* 8022A3E0 00227340 7F E5 FB 78 */ mr r5, r31 +/* 8022A3E4 00227344 4B FC C2 E9 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 8022A3E8 00227348 48 00 02 04 */ b lbl_8022A5EC +lbl_8022A3EC: +/* 8022A3EC 0022734C 7F A3 EB 78 */ mr r3, r29 +/* 8022A3F0 00227350 7F C4 F3 78 */ mr r4, r30 +/* 8022A3F4 00227354 81 9D 00 00 */ lwz r12, 0(r29) +/* 8022A3F8 00227358 C0 22 B5 B8 */ lfs f1, lbl_805AD2D8@sda21(r2) +/* 8022A3FC 0022735C 81 8C 01 90 */ lwz r12, 0x190(r12) +/* 8022A400 00227360 7D 89 03 A6 */ mtctr r12 +/* 8022A404 00227364 4E 80 04 21 */ bctrl +/* 8022A408 00227368 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022A40C 0022736C 41 82 00 F4 */ beq lbl_8022A500 +/* 8022A410 00227370 C0 5D 00 38 */ lfs f2, 0x38(r29) +/* 8022A414 00227374 38 61 00 70 */ addi r3, r1, 0x70 +/* 8022A418 00227378 C0 3D 00 48 */ lfs f1, 0x48(r29) +/* 8022A41C 0022737C 38 9D 08 C0 */ addi r4, r29, 0x8c0 +/* 8022A420 00227380 C0 1D 00 58 */ lfs f0, 0x58(r29) +/* 8022A424 00227384 38 A1 00 64 */ addi r5, r1, 0x64 +/* 8022A428 00227388 D0 41 00 40 */ stfs f2, 0x40(r1) +/* 8022A42C 0022738C 38 C1 00 4C */ addi r6, r1, 0x4c +/* 8022A430 00227390 D0 21 00 44 */ stfs f1, 0x44(r1) +/* 8022A434 00227394 81 01 00 40 */ lwz r8, 0x40(r1) +/* 8022A438 00227398 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 8022A43C 0022739C 80 E1 00 44 */ lwz r7, 0x44(r1) +/* 8022A440 002273A0 80 01 00 48 */ lwz r0, 0x48(r1) +/* 8022A444 002273A4 91 01 00 4C */ stw r8, 0x4c(r1) +/* 8022A448 002273A8 90 E1 00 50 */ stw r7, 0x50(r1) +/* 8022A44C 002273AC 90 01 00 54 */ stw r0, 0x54(r1) +/* 8022A450 002273B0 C0 5D 00 40 */ lfs f2, 0x40(r29) +/* 8022A454 002273B4 C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 8022A458 002273B8 C0 1D 00 60 */ lfs f0, 0x60(r29) +/* 8022A45C 002273BC D0 41 00 58 */ stfs f2, 0x58(r1) +/* 8022A460 002273C0 D0 21 00 5C */ stfs f1, 0x5c(r1) +/* 8022A464 002273C4 81 01 00 58 */ lwz r8, 0x58(r1) +/* 8022A468 002273C8 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 8022A46C 002273CC 80 E1 00 5C */ lwz r7, 0x5c(r1) +/* 8022A470 002273D0 80 01 00 60 */ lwz r0, 0x60(r1) +/* 8022A474 002273D4 91 01 00 64 */ stw r8, 0x64(r1) +/* 8022A478 002273D8 90 E1 00 68 */ stw r7, 0x68(r1) +/* 8022A47C 002273DC 90 01 00 6C */ stw r0, 0x6c(r1) +/* 8022A480 002273E0 48 07 63 71 */ bl sub_802a07f0 +/* 8022A484 002273E4 C0 21 00 70 */ lfs f1, 0x70(r1) +/* 8022A488 002273E8 38 00 00 00 */ li r0, 0 +/* 8022A48C 002273EC C0 02 B5 B8 */ lfs f0, lbl_805AD2D8@sda21(r2) +/* 8022A490 002273F0 C0 81 00 74 */ lfs f4, 0x74(r1) +/* 8022A494 002273F4 FC 00 08 00 */ fcmpu cr0, f0, f1 +/* 8022A498 002273F8 C0 A1 00 78 */ lfs f5, 0x78(r1) +/* 8022A49C 002273FC 40 82 00 14 */ bne lbl_8022A4B0 +/* 8022A4A0 00227400 FC 00 20 00 */ fcmpu cr0, f0, f4 +/* 8022A4A4 00227404 40 82 00 0C */ bne lbl_8022A4B0 +/* 8022A4A8 00227408 FC 00 28 00 */ fcmpu cr0, f0, f5 +/* 8022A4AC 0022740C 41 82 00 08 */ beq lbl_8022A4B4 +lbl_8022A4B0: +/* 8022A4B0 00227410 38 00 00 01 */ li r0, 1 +lbl_8022A4B4: +/* 8022A4B4 00227414 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 8022A4B8 00227418 41 82 01 34 */ beq lbl_8022A5EC +/* 8022A4BC 0022741C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8022A4C0 00227420 C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) +/* 8022A4C4 00227424 C0 02 B5 CC */ lfs f0, lbl_805AD2EC@sda21(r2) +/* 8022A4C8 00227428 38 81 00 A4 */ addi r4, r1, 0xa4 +/* 8022A4CC 0022742C D0 21 00 A4 */ stfs f1, 0xa4(r1) +/* 8022A4D0 00227430 C0 43 00 04 */ lfs f2, 4(r3) +/* 8022A4D4 00227434 C0 23 00 08 */ lfs f1, 8(r3) +/* 8022A4D8 00227438 D0 81 00 A8 */ stfs f4, 0xa8(r1) +/* 8022A4DC 0022743C D0 A1 00 AC */ stfs f5, 0xac(r1) +/* 8022A4E0 00227440 D0 61 00 B0 */ stfs f3, 0xb0(r1) +/* 8022A4E4 00227444 D0 41 00 B4 */ stfs f2, 0xb4(r1) +/* 8022A4E8 00227448 D0 21 00 B8 */ stfs f1, 0xb8(r1) +/* 8022A4EC 0022744C D0 01 00 BC */ stfs f0, 0xbc(r1) +/* 8022A4F0 00227450 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 8022A4F4 00227454 38 63 00 04 */ addi r3, r3, 4 +/* 8022A4F8 00227458 4B F0 72 21 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 8022A4FC 0022745C 48 00 00 F0 */ b lbl_8022A5EC +lbl_8022A500: +/* 8022A500 00227460 7F A3 EB 78 */ mr r3, r29 +/* 8022A504 00227464 7F C4 F3 78 */ mr r4, r30 +/* 8022A508 00227468 81 9D 00 00 */ lwz r12, 0(r29) +/* 8022A50C 0022746C C0 22 B5 B8 */ lfs f1, lbl_805AD2D8@sda21(r2) +/* 8022A510 00227470 81 8C 01 E8 */ lwz r12, 0x1e8(r12) +/* 8022A514 00227474 7D 89 03 A6 */ mtctr r12 +/* 8022A518 00227478 4E 80 04 21 */ bctrl +/* 8022A51C 0022747C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022A520 00227480 41 82 00 CC */ beq lbl_8022A5EC +/* 8022A524 00227484 80 DD 00 64 */ lwz r6, 0x64(r29) +/* 8022A528 00227488 7F C5 F3 78 */ mr r5, r30 +/* 8022A52C 0022748C 80 9E 08 4C */ lwz r4, 0x84c(r30) +/* 8022A530 00227490 38 61 00 34 */ addi r3, r1, 0x34 +/* 8022A534 00227494 80 C6 00 10 */ lwz r6, 0x10(r6) +/* 8022A538 00227498 81 84 00 00 */ lwz r12, 0(r4) +/* 8022A53C 0022749C C0 22 B5 BC */ lfs f1, lbl_805AD2DC@sda21(r2) +/* 8022A540 002274A0 C0 06 02 00 */ lfs f0, 0x200(r6) +/* 8022A544 002274A4 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 8022A548 002274A8 EC 21 00 32 */ fmuls f1, f1, f0 +/* 8022A54C 002274AC 7D 89 03 A6 */ mtctr r12 +/* 8022A550 002274B0 4E 80 04 21 */ bctrl +/* 8022A554 002274B4 C0 21 00 38 */ lfs f1, 0x38(r1) +/* 8022A558 002274B8 38 61 00 7C */ addi r3, r1, 0x7c +/* 8022A55C 002274BC C0 1D 00 50 */ lfs f0, 0x50(r29) +/* 8022A560 002274C0 C0 61 00 3C */ lfs f3, 0x3c(r1) +/* 8022A564 002274C4 C0 5D 00 60 */ lfs f2, 0x60(r29) +/* 8022A568 002274C8 EC 81 00 28 */ fsubs f4, f1, f0 +/* 8022A56C 002274CC C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 8022A570 002274D0 C0 21 00 34 */ lfs f1, 0x34(r1) +/* 8022A574 002274D4 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8022A578 002274D8 D0 81 00 80 */ stfs f4, 0x80(r1) +/* 8022A57C 002274DC EC 01 00 28 */ fsubs f0, f1, f0 +/* 8022A580 002274E0 D0 41 00 84 */ stfs f2, 0x84(r1) +/* 8022A584 002274E4 D0 01 00 7C */ stfs f0, 0x7c(r1) +/* 8022A588 002274E8 48 0E A1 71 */ bl CanBeNormalized__9CVector3fCFv +/* 8022A58C 002274EC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022A590 002274F0 41 82 00 5C */ beq lbl_8022A5EC +/* 8022A594 002274F4 38 61 00 28 */ addi r3, r1, 0x28 +/* 8022A598 002274F8 38 81 00 7C */ addi r4, r1, 0x7c +/* 8022A59C 002274FC 48 0E A2 B5 */ bl AsNormalized__9CVector3fCFv +/* 8022A5A0 00227500 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8022A5A4 00227504 C4 C3 66 A0 */ lfsu f6, skZero3f@l(r3) +/* 8022A5A8 00227508 C0 61 00 28 */ lfs f3, 0x28(r1) +/* 8022A5AC 0022750C 38 81 00 88 */ addi r4, r1, 0x88 +/* 8022A5B0 00227510 C0 41 00 2C */ lfs f2, 0x2c(r1) +/* 8022A5B4 00227514 C0 A3 00 04 */ lfs f5, 4(r3) +/* 8022A5B8 00227518 C0 83 00 08 */ lfs f4, 8(r3) +/* 8022A5BC 0022751C C0 21 00 30 */ lfs f1, 0x30(r1) +/* 8022A5C0 00227520 C0 02 B5 CC */ lfs f0, lbl_805AD2EC@sda21(r2) +/* 8022A5C4 00227524 D0 C1 00 88 */ stfs f6, 0x88(r1) +/* 8022A5C8 00227528 D0 A1 00 8C */ stfs f5, 0x8c(r1) +/* 8022A5CC 0022752C D0 81 00 90 */ stfs f4, 0x90(r1) +/* 8022A5D0 00227530 D0 61 00 94 */ stfs f3, 0x94(r1) +/* 8022A5D4 00227534 D0 41 00 98 */ stfs f2, 0x98(r1) +/* 8022A5D8 00227538 D0 21 00 9C */ stfs f1, 0x9c(r1) +/* 8022A5DC 0022753C D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 8022A5E0 00227540 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 8022A5E4 00227544 38 63 00 04 */ addi r3, r3, 4 +/* 8022A5E8 00227548 4B F0 71 31 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +lbl_8022A5EC: +/* 8022A5EC 0022754C 7F A3 EB 78 */ mr r3, r29 +/* 8022A5F0 00227550 7F C4 F3 78 */ mr r4, r30 +/* 8022A5F4 00227554 4B FF D4 9D */ bl sub_80227a90 +/* 8022A5F8 00227558 FC 20 F8 90 */ fmr f1, f31 +/* 8022A5FC 0022755C 7F A3 EB 78 */ mr r3, r29 +/* 8022A600 00227560 7F C4 F3 78 */ mr r4, r30 +/* 8022A604 00227564 4B FF D1 DD */ bl sub_802277e0 +/* 8022A608 00227568 48 00 00 7C */ b lbl_8022A684 +lbl_8022A60C: +/* 8022A60C 0022756C 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 8022A610 00227570 38 80 00 01 */ li r4, 1 +/* 8022A614 00227574 4B F1 03 C5 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 8022A618 00227578 38 7D 06 F8 */ addi r3, r29, 0x6f8 +/* 8022A61C 0022757C 38 80 00 00 */ li r4, 0 +/* 8022A620 00227580 4B F4 AC 05 */ bl SetActive__13CBoneTrackingFb +/* 8022A624 00227584 7F A3 EB 78 */ mr r3, r29 +/* 8022A628 00227588 81 9D 00 00 */ lwz r12, 0(r29) +/* 8022A62C 0022758C 81 8C 02 CC */ lwz r12, 0x2cc(r12) +/* 8022A630 00227590 7D 89 03 A6 */ mtctr r12 +/* 8022A634 00227594 4E 80 04 21 */ bctrl +/* 8022A638 00227598 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022A63C 0022759C 41 82 00 38 */ beq lbl_8022A674 +/* 8022A640 002275A0 A0 1D 07 70 */ lhz r0, 0x770(r29) +/* 8022A644 002275A4 7F C3 F3 78 */ mr r3, r30 +/* 8022A648 002275A8 38 81 00 08 */ addi r4, r1, 8 +/* 8022A64C 002275AC B0 01 00 08 */ sth r0, 8(r1) +/* 8022A650 002275B0 4B E2 1F 25 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8022A654 002275B4 7C 64 1B 78 */ mr r4, r3 +/* 8022A658 002275B8 38 61 00 18 */ addi r3, r1, 0x18 +/* 8022A65C 002275BC 4B E8 4C F1 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8022A660 002275C0 80 63 00 04 */ lwz r3, 4(r3) +/* 8022A664 002275C4 28 03 00 00 */ cmplwi r3, 0 +/* 8022A668 002275C8 41 82 00 0C */ beq lbl_8022A674 +/* 8022A66C 002275CC 38 9D 05 6C */ addi r4, r29, 0x56c +/* 8022A670 002275D0 4B F7 E5 29 */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability +lbl_8022A674: +/* 8022A674 002275D4 80 7D 05 D4 */ lwz r3, 0x5d4(r29) +/* 8022A678 002275D8 7F C4 F3 78 */ mr r4, r30 +/* 8022A67C 002275DC 38 A0 00 00 */ li r5, 0 +/* 8022A680 002275E0 4B F7 CC 79 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb +lbl_8022A684: +/* 8022A684 002275E4 E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 +/* 8022A688 002275E8 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 8022A68C 002275EC CB E1 00 D0 */ lfd f31, 0xd0(r1) +/* 8022A690 002275F0 83 E1 00 CC */ lwz r31, 0xcc(r1) +/* 8022A694 002275F4 83 C1 00 C8 */ lwz r30, 0xc8(r1) +/* 8022A698 002275F8 83 A1 00 C4 */ lwz r29, 0xc4(r1) +/* 8022A69C 002275FC 7C 08 03 A6 */ mtlr r0 +/* 8022A6A0 00227600 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 8022A6A4 00227604 4E 80 00 20 */ blr + +.global Attack__12CElitePirateFR13CStateManager9EStateMsgf +Attack__12CElitePirateFR13CStateManager9EStateMsgf: +/* 8022A6A8 00227608 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 8022A6AC 0022760C 7C 08 02 A6 */ mflr r0 +/* 8022A6B0 00227610 2C 05 00 01 */ cmpwi r5, 1 +/* 8022A6B4 00227614 90 01 00 54 */ stw r0, 0x54(r1) +/* 8022A6B8 00227618 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 8022A6BC 0022761C 7C 9F 23 78 */ mr r31, r4 +/* 8022A6C0 00227620 93 C1 00 48 */ stw r30, 0x48(r1) +/* 8022A6C4 00227624 7C 7E 1B 78 */ mr r30, r3 +/* 8022A6C8 00227628 41 82 00 54 */ beq lbl_8022A71C +/* 8022A6CC 0022762C 40 80 00 10 */ bge lbl_8022A6DC +/* 8022A6D0 00227630 2C 05 00 00 */ cmpwi r5, 0 +/* 8022A6D4 00227634 40 80 00 14 */ bge lbl_8022A6E8 +/* 8022A6D8 00227638 48 00 03 90 */ b lbl_8022AA68 +lbl_8022A6DC: +/* 8022A6DC 0022763C 2C 05 00 03 */ cmpwi r5, 3 +/* 8022A6E0 00227640 40 80 03 88 */ bge lbl_8022AA68 +/* 8022A6E4 00227644 48 00 03 10 */ b lbl_8022A9F4 +lbl_8022A6E8: +/* 8022A6E8 00227648 38 00 00 00 */ li r0, 0 +/* 8022A6EC 0022764C 3C A0 80 57 */ lis r5, lbl_805723E0@ha +/* 8022A6F0 00227650 90 1E 05 68 */ stw r0, 0x568(r30) +/* 8022A6F4 00227654 38 C5 23 E0 */ addi r6, r5, lbl_805723E0@l +/* 8022A6F8 00227658 38 BE 07 74 */ addi r5, r30, 0x774 +/* 8022A6FC 0022765C 4B FF EC 4D */ bl sub_80229348 +/* 8022A700 00227660 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 8022A704 00227664 4B EE A5 45 */ bl GetNumMaterialSets__10CModelDataCFv +/* 8022A708 00227668 2C 03 00 01 */ cmpwi r3, 1 +/* 8022A70C 0022766C 40 81 03 5C */ ble lbl_8022AA68 +/* 8022A710 00227670 38 00 00 01 */ li r0, 1 +/* 8022A714 00227674 90 1E 07 CC */ stw r0, 0x7cc(r30) +/* 8022A718 00227678 48 00 03 50 */ b lbl_8022AA68 +lbl_8022A71C: +/* 8022A71C 0022767C 80 1E 05 68 */ lwz r0, 0x568(r30) +/* 8022A720 00227680 2C 00 00 01 */ cmpwi r0, 1 +/* 8022A724 00227684 41 82 00 FC */ beq lbl_8022A820 +/* 8022A728 00227688 40 80 00 10 */ bge lbl_8022A738 +/* 8022A72C 0022768C 2C 00 00 00 */ cmpwi r0, 0 +/* 8022A730 00227690 40 80 00 14 */ bge lbl_8022A744 +/* 8022A734 00227694 48 00 03 34 */ b lbl_8022AA68 +lbl_8022A738: +/* 8022A738 00227698 2C 00 00 03 */ cmpwi r0, 3 +/* 8022A73C 0022769C 40 80 03 2C */ bge lbl_8022AA68 +/* 8022A740 002276A0 48 00 02 60 */ b lbl_8022A9A0 +lbl_8022A744: +/* 8022A744 002276A4 81 1E 04 50 */ lwz r8, 0x450(r30) +/* 8022A748 002276A8 80 08 02 B8 */ lwz r0, 0x2b8(r8) +/* 8022A74C 002276AC 2C 00 00 07 */ cmpwi r0, 7 +/* 8022A750 002276B0 40 82 00 28 */ bne lbl_8022A778 +/* 8022A754 002276B4 38 60 00 01 */ li r3, 1 +/* 8022A758 002276B8 90 7E 05 68 */ stw r3, 0x568(r30) +/* 8022A75C 002276BC 88 1E 09 88 */ lbz r0, 0x988(r30) +/* 8022A760 002276C0 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 8022A764 002276C4 98 1E 09 88 */ stb r0, 0x988(r30) +/* 8022A768 002276C8 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8022A76C 002276CC 80 03 02 F8 */ lwz r0, 0x2f8(r3) +/* 8022A770 002276D0 90 1E 07 C8 */ stw r0, 0x7c8(r30) +/* 8022A774 002276D4 48 00 02 F4 */ b lbl_8022AA68 +lbl_8022A778: +/* 8022A778 002276D8 3C A0 80 3E */ lis r5, lbl_803DAA68@ha +/* 8022A77C 002276DC 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8022A780 002276E0 C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) +/* 8022A784 002276E4 38 C5 AA 68 */ addi r6, r5, lbl_803DAA68@l +/* 8022A788 002276E8 3C 80 80 3E */ lis r4, lbl_803DA9D8@ha +/* 8022A78C 002276EC 90 C1 00 24 */ stw r6, 0x24(r1) +/* 8022A790 002276F0 38 C4 A9 D8 */ addi r6, r4, lbl_803DA9D8@l +/* 8022A794 002276F4 C0 23 00 04 */ lfs f1, 4(r3) +/* 8022A798 002276F8 C0 03 00 08 */ lfs f0, 8(r3) +/* 8022A79C 002276FC 38 E0 00 05 */ li r7, 5 +/* 8022A7A0 00227700 38 A0 00 01 */ li r5, 1 +/* 8022A7A4 00227704 38 00 00 00 */ li r0, 0 +/* 8022A7A8 00227708 3B C8 00 04 */ addi r30, r8, 4 +/* 8022A7AC 0022770C 90 E1 00 28 */ stw r7, 0x28(r1) +/* 8022A7B0 00227710 7F C3 F3 78 */ mr r3, r30 +/* 8022A7B4 00227714 38 80 00 05 */ li r4, 5 +/* 8022A7B8 00227718 90 C1 00 24 */ stw r6, 0x24(r1) +/* 8022A7BC 0022771C 90 A1 00 2C */ stw r5, 0x2c(r1) +/* 8022A7C0 00227720 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 8022A7C4 00227724 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 8022A7C8 00227728 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 8022A7CC 0022772C 98 01 00 3C */ stb r0, 0x3c(r1) +/* 8022A7D0 00227730 4B F0 6C 69 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8022A7D4 00227734 80 01 00 28 */ lwz r0, 0x28(r1) +/* 8022A7D8 00227738 3C 60 80 3E */ lis r3, lbl_803DA9D8@ha +/* 8022A7DC 0022773C 38 83 A9 D8 */ addi r4, r3, lbl_803DA9D8@l +/* 8022A7E0 00227740 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8022A7E4 00227744 90 1E 01 10 */ stw r0, 0x110(r30) +/* 8022A7E8 00227748 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 8022A7EC 0022774C 80 61 00 2C */ lwz r3, 0x2c(r1) +/* 8022A7F0 00227750 80 A1 00 30 */ lwz r5, 0x30(r1) +/* 8022A7F4 00227754 90 7E 01 14 */ stw r3, 0x114(r30) +/* 8022A7F8 00227758 80 61 00 34 */ lwz r3, 0x34(r1) +/* 8022A7FC 0022775C 90 BE 01 18 */ stw r5, 0x118(r30) +/* 8022A800 00227760 80 A1 00 38 */ lwz r5, 0x38(r1) +/* 8022A804 00227764 90 7E 01 1C */ stw r3, 0x11c(r30) +/* 8022A808 00227768 88 61 00 3C */ lbz r3, 0x3c(r1) +/* 8022A80C 0022776C 90 BE 01 20 */ stw r5, 0x120(r30) +/* 8022A810 00227770 90 81 00 24 */ stw r4, 0x24(r1) +/* 8022A814 00227774 98 7E 01 24 */ stb r3, 0x124(r30) +/* 8022A818 00227778 90 01 00 24 */ stw r0, 0x24(r1) +/* 8022A81C 0022777C 48 00 02 4C */ b lbl_8022AA68 +lbl_8022A820: +/* 8022A820 00227780 80 DE 04 50 */ lwz r6, 0x450(r30) +/* 8022A824 00227784 80 06 02 B8 */ lwz r0, 0x2b8(r6) +/* 8022A828 00227788 2C 00 00 07 */ cmpwi r0, 7 +/* 8022A82C 0022778C 41 82 00 10 */ beq lbl_8022A83C +/* 8022A830 00227790 38 00 00 03 */ li r0, 3 +/* 8022A834 00227794 90 1E 05 68 */ stw r0, 0x568(r30) +/* 8022A838 00227798 48 00 02 30 */ b lbl_8022AA68 +lbl_8022A83C: +/* 8022A83C 0022779C 80 BE 07 C8 */ lwz r5, 0x7c8(r30) +/* 8022A840 002277A0 80 06 02 F8 */ lwz r0, 0x2f8(r6) +/* 8022A844 002277A4 7C 05 00 00 */ cmpw r5, r0 +/* 8022A848 002277A8 41 82 00 58 */ beq lbl_8022A8A0 +/* 8022A84C 002277AC 38 00 00 02 */ li r0, 2 +/* 8022A850 002277B0 3C A0 80 5A */ lis r5, skZero3f@ha +/* 8022A854 002277B4 90 1E 05 68 */ stw r0, 0x568(r30) +/* 8022A858 002277B8 38 C5 66 A0 */ addi r6, r5, skZero3f@l +/* 8022A85C 002277BC 38 A0 00 00 */ li r5, 0 +/* 8022A860 002277C0 38 E0 00 01 */ li r7, 1 +/* 8022A864 002277C4 88 1E 09 88 */ lbz r0, 0x988(r30) +/* 8022A868 002277C8 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 8022A86C 002277CC 38 BE 07 74 */ addi r5, r30, 0x774 +/* 8022A870 002277D0 98 1E 09 88 */ stb r0, 0x988(r30) +/* 8022A874 002277D4 88 1E 09 88 */ lbz r0, 0x988(r30) +/* 8022A878 002277D8 50 E0 2E B4 */ rlwimi r0, r7, 5, 0x1a, 0x1a +/* 8022A87C 002277DC 98 1E 09 88 */ stb r0, 0x988(r30) +/* 8022A880 002277E0 4B FF EA C9 */ bl sub_80229348 +/* 8022A884 002277E4 3C 80 80 57 */ lis r4, lbl_805723E0@ha +/* 8022A888 002277E8 7F C3 F3 78 */ mr r3, r30 +/* 8022A88C 002277EC 38 C4 23 E0 */ addi r6, r4, lbl_805723E0@l +/* 8022A890 002277F0 38 BE 07 88 */ addi r5, r30, 0x788 +/* 8022A894 002277F4 7F E4 FB 78 */ mr r4, r31 +/* 8022A898 002277F8 4B FF EA B1 */ bl sub_80229348 +/* 8022A89C 002277FC 48 00 01 CC */ b lbl_8022AA68 +lbl_8022A8A0: +/* 8022A8A0 00227800 80 BF 08 4C */ lwz r5, 0x84c(r31) +/* 8022A8A4 00227804 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 8022A8A8 00227808 C0 25 00 40 */ lfs f1, 0x40(r5) +/* 8022A8AC 0022780C C0 A5 00 50 */ lfs f5, 0x50(r5) +/* 8022A8B0 00227810 C0 9E 00 50 */ lfs f4, 0x50(r30) +/* 8022A8B4 00227814 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8022A8B8 00227818 C0 65 00 60 */ lfs f3, 0x60(r5) +/* 8022A8BC 0022781C C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 8022A8C0 00227820 EC 85 20 28 */ fsubs f4, f5, f4 +/* 8022A8C4 00227824 C0 22 B5 B8 */ lfs f1, lbl_805AD2D8@sda21(r2) +/* 8022A8C8 00227828 D0 06 00 1C */ stfs f0, 0x1c(r6) +/* 8022A8CC 0022782C EC 03 10 28 */ fsubs f0, f3, f2 +/* 8022A8D0 00227830 D0 86 00 20 */ stfs f4, 0x20(r6) +/* 8022A8D4 00227834 D0 06 00 24 */ stfs f0, 0x24(r6) +/* 8022A8D8 00227838 81 83 00 00 */ lwz r12, 0(r3) +/* 8022A8DC 0022783C 81 8C 01 DC */ lwz r12, 0x1dc(r12) +/* 8022A8E0 00227840 7D 89 03 A6 */ mtctr r12 +/* 8022A8E4 00227844 4E 80 04 21 */ bctrl +/* 8022A8E8 00227848 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022A8EC 0022784C 41 82 01 7C */ beq lbl_8022AA68 +/* 8022A8F0 00227850 3C A0 80 3E */ lis r5, lbl_803DAA68@ha +/* 8022A8F4 00227854 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8022A8F8 00227858 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 8022A8FC 0022785C 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8022A900 00227860 39 05 AA 68 */ addi r8, r5, lbl_803DAA68@l +/* 8022A904 00227864 C0 44 00 00 */ lfs f2, 0(r4) +/* 8022A908 00227868 C0 24 00 04 */ lfs f1, 4(r4) +/* 8022A90C 0022786C 3C C0 80 3E */ lis r6, lbl_803DA9D8@ha +/* 8022A910 00227870 C0 04 00 08 */ lfs f0, 8(r4) +/* 8022A914 00227874 38 E0 00 05 */ li r7, 5 +/* 8022A918 00227878 38 A0 00 02 */ li r5, 2 +/* 8022A91C 0022787C 38 00 00 00 */ li r0, 0 +/* 8022A920 00227880 3B C3 00 04 */ addi r30, r3, 4 +/* 8022A924 00227884 91 01 00 08 */ stw r8, 8(r1) +/* 8022A928 00227888 38 C6 A9 D8 */ addi r6, r6, lbl_803DA9D8@l +/* 8022A92C 0022788C 38 80 00 05 */ li r4, 5 +/* 8022A930 00227890 90 E1 00 0C */ stw r7, 0xc(r1) +/* 8022A934 00227894 7F C3 F3 78 */ mr r3, r30 +/* 8022A938 00227898 90 C1 00 08 */ stw r6, 8(r1) +/* 8022A93C 0022789C 90 A1 00 10 */ stw r5, 0x10(r1) +/* 8022A940 002278A0 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 8022A944 002278A4 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 8022A948 002278A8 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8022A94C 002278AC 98 01 00 20 */ stb r0, 0x20(r1) +/* 8022A950 002278B0 4B F0 6A E9 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8022A954 002278B4 80 01 00 0C */ lwz r0, 0xc(r1) +/* 8022A958 002278B8 3C 60 80 3E */ lis r3, lbl_803DA9D8@ha +/* 8022A95C 002278BC 38 83 A9 D8 */ addi r4, r3, lbl_803DA9D8@l +/* 8022A960 002278C0 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8022A964 002278C4 90 1E 01 10 */ stw r0, 0x110(r30) +/* 8022A968 002278C8 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 8022A96C 002278CC 80 61 00 10 */ lwz r3, 0x10(r1) +/* 8022A970 002278D0 80 A1 00 14 */ lwz r5, 0x14(r1) +/* 8022A974 002278D4 90 7E 01 14 */ stw r3, 0x114(r30) +/* 8022A978 002278D8 80 61 00 18 */ lwz r3, 0x18(r1) +/* 8022A97C 002278DC 90 BE 01 18 */ stw r5, 0x118(r30) +/* 8022A980 002278E0 80 A1 00 1C */ lwz r5, 0x1c(r1) +/* 8022A984 002278E4 90 7E 01 1C */ stw r3, 0x11c(r30) +/* 8022A988 002278E8 88 61 00 20 */ lbz r3, 0x20(r1) +/* 8022A98C 002278EC 90 BE 01 20 */ stw r5, 0x120(r30) +/* 8022A990 002278F0 90 81 00 08 */ stw r4, 8(r1) +/* 8022A994 002278F4 98 7E 01 24 */ stb r3, 0x124(r30) +/* 8022A998 002278F8 90 01 00 08 */ stw r0, 8(r1) +/* 8022A99C 002278FC 48 00 00 CC */ b lbl_8022AA68 +lbl_8022A9A0: +/* 8022A9A0 00227900 80 9E 04 50 */ lwz r4, 0x450(r30) +/* 8022A9A4 00227904 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 8022A9A8 00227908 2C 00 00 07 */ cmpwi r0, 7 +/* 8022A9AC 0022790C 41 82 00 10 */ beq lbl_8022A9BC +/* 8022A9B0 00227910 38 00 00 03 */ li r0, 3 +/* 8022A9B4 00227914 90 1E 05 68 */ stw r0, 0x568(r30) +/* 8022A9B8 00227918 48 00 00 B0 */ b lbl_8022AA68 +lbl_8022A9BC: +/* 8022A9BC 0022791C 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8022A9C0 00227920 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 8022A9C4 00227924 C0 23 00 40 */ lfs f1, 0x40(r3) +/* 8022A9C8 00227928 C0 83 00 50 */ lfs f4, 0x50(r3) +/* 8022A9CC 0022792C C0 7E 00 50 */ lfs f3, 0x50(r30) +/* 8022A9D0 00227930 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8022A9D4 00227934 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 8022A9D8 00227938 C0 3E 00 60 */ lfs f1, 0x60(r30) +/* 8022A9DC 0022793C EC 64 18 28 */ fsubs f3, f4, f3 +/* 8022A9E0 00227940 D0 04 00 1C */ stfs f0, 0x1c(r4) +/* 8022A9E4 00227944 EC 02 08 28 */ fsubs f0, f2, f1 +/* 8022A9E8 00227948 D0 64 00 20 */ stfs f3, 0x20(r4) +/* 8022A9EC 0022794C D0 04 00 24 */ stfs f0, 0x24(r4) +/* 8022A9F0 00227950 48 00 00 78 */ b lbl_8022AA68 +lbl_8022A9F4: +/* 8022A9F4 00227954 4B FF DB D1 */ bl sub_802285c4 +/* 8022A9F8 00227958 88 1E 09 88 */ lbz r0, 0x988(r30) +/* 8022A9FC 0022795C 39 00 00 00 */ li r8, 0 +/* 8022AA00 00227960 51 00 3E 30 */ rlwimi r0, r8, 7, 0x18, 0x18 +/* 8022AA04 00227964 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8022AA08 00227968 98 1E 09 88 */ stb r0, 0x988(r30) +/* 8022AA0C 0022796C 54 08 CF FE */ rlwinm r8, r0, 0x19, 0x1f, 0x1f +/* 8022AA10 00227970 38 C3 66 A0 */ addi r6, r3, skZero3f@l +/* 8022AA14 00227974 38 00 FF FF */ li r0, -1 +/* 8022AA18 00227978 88 BE 09 88 */ lbz r5, 0x988(r30) +/* 8022AA1C 0022797C 51 05 2E B4 */ rlwimi r5, r8, 5, 0x1a, 0x1a +/* 8022AA20 00227980 7F C3 F3 78 */ mr r3, r30 +/* 8022AA24 00227984 7F E4 FB 78 */ mr r4, r31 +/* 8022AA28 00227988 98 BE 09 88 */ stb r5, 0x988(r30) +/* 8022AA2C 0022798C 54 A8 DF FE */ rlwinm r8, r5, 0x1b, 0x1f, 0x1f +/* 8022AA30 00227990 38 BE 07 74 */ addi r5, r30, 0x774 +/* 8022AA34 00227994 88 FE 09 88 */ lbz r7, 0x988(r30) +/* 8022AA38 00227998 51 07 36 72 */ rlwimi r7, r8, 6, 0x19, 0x19 +/* 8022AA3C 0022799C 98 FE 09 88 */ stb r7, 0x988(r30) +/* 8022AA40 002279A0 90 1E 07 C8 */ stw r0, 0x7c8(r30) +/* 8022AA44 002279A4 4B FF E9 05 */ bl sub_80229348 +/* 8022AA48 002279A8 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8022AA4C 002279AC 7F C3 F3 78 */ mr r3, r30 +/* 8022AA50 002279B0 38 C4 66 A0 */ addi r6, r4, skZero3f@l +/* 8022AA54 002279B4 38 BE 07 88 */ addi r5, r30, 0x788 +/* 8022AA58 002279B8 7F E4 FB 78 */ mr r4, r31 +/* 8022AA5C 002279BC 4B FF E8 ED */ bl sub_80229348 +/* 8022AA60 002279C0 38 00 00 00 */ li r0, 0 +/* 8022AA64 002279C4 90 1E 07 CC */ stw r0, 0x7cc(r30) +lbl_8022AA68: +/* 8022AA68 002279C8 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8022AA6C 002279CC 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 8022AA70 002279D0 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 8022AA74 002279D4 7C 08 03 A6 */ mtlr r0 +/* 8022AA78 002279D8 38 21 00 50 */ addi r1, r1, 0x50 +/* 8022AA7C 002279DC 4E 80 00 20 */ blr + +.global SpecialAttack__12CElitePirateFR13CStateManager9EStateMsgf +SpecialAttack__12CElitePirateFR13CStateManager9EStateMsgf: +/* 8022AA80 002279E0 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8022AA84 002279E4 7C 08 02 A6 */ mflr r0 +/* 8022AA88 002279E8 2C 05 00 01 */ cmpwi r5, 1 +/* 8022AA8C 002279EC 90 01 00 34 */ stw r0, 0x34(r1) +/* 8022AA90 002279F0 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8022AA94 002279F4 7C 7F 1B 78 */ mr r31, r3 +/* 8022AA98 002279F8 41 82 00 2C */ beq lbl_8022AAC4 +/* 8022AA9C 002279FC 40 80 00 10 */ bge lbl_8022AAAC +/* 8022AAA0 00227A00 2C 05 00 00 */ cmpwi r5, 0 +/* 8022AAA4 00227A04 40 80 00 14 */ bge lbl_8022AAB8 +/* 8022AAA8 00227A08 48 00 01 70 */ b lbl_8022AC18 +lbl_8022AAAC: +/* 8022AAAC 00227A0C 2C 05 00 03 */ cmpwi r5, 3 +/* 8022AAB0 00227A10 40 80 01 68 */ bge lbl_8022AC18 +/* 8022AAB4 00227A14 48 00 01 50 */ b lbl_8022AC04 +lbl_8022AAB8: +/* 8022AAB8 00227A18 38 00 00 00 */ li r0, 0 +/* 8022AABC 00227A1C 90 1F 05 68 */ stw r0, 0x568(r31) +/* 8022AAC0 00227A20 48 00 01 58 */ b lbl_8022AC18 +lbl_8022AAC4: +/* 8022AAC4 00227A24 80 1F 05 68 */ lwz r0, 0x568(r31) +/* 8022AAC8 00227A28 80 64 08 4C */ lwz r3, 0x84c(r4) +/* 8022AACC 00227A2C 2C 00 00 01 */ cmpwi r0, 1 +/* 8022AAD0 00227A30 C0 83 00 60 */ lfs f4, 0x60(r3) +/* 8022AAD4 00227A34 C0 63 00 50 */ lfs f3, 0x50(r3) +/* 8022AAD8 00227A38 C0 23 00 40 */ lfs f1, 0x40(r3) +/* 8022AADC 00227A3C 41 82 01 3C */ beq lbl_8022AC18 +/* 8022AAE0 00227A40 40 80 00 10 */ bge lbl_8022AAF0 +/* 8022AAE4 00227A44 2C 00 00 00 */ cmpwi r0, 0 +/* 8022AAE8 00227A48 40 80 00 14 */ bge lbl_8022AAFC +/* 8022AAEC 00227A4C 48 00 01 2C */ b lbl_8022AC18 +lbl_8022AAF0: +/* 8022AAF0 00227A50 2C 00 00 03 */ cmpwi r0, 3 +/* 8022AAF4 00227A54 40 80 01 24 */ bge lbl_8022AC18 +/* 8022AAF8 00227A58 48 00 00 C8 */ b lbl_8022ABC0 +lbl_8022AAFC: +/* 8022AAFC 00227A5C 80 FF 04 50 */ lwz r7, 0x450(r31) +/* 8022AB00 00227A60 80 07 02 B8 */ lwz r0, 0x2b8(r7) +/* 8022AB04 00227A64 2C 00 00 12 */ cmpwi r0, 0x12 +/* 8022AB08 00227A68 40 82 00 20 */ bne lbl_8022AB28 +/* 8022AB0C 00227A6C 38 00 00 02 */ li r0, 2 +/* 8022AB10 00227A70 38 60 00 01 */ li r3, 1 +/* 8022AB14 00227A74 90 1F 05 68 */ stw r0, 0x568(r31) +/* 8022AB18 00227A78 88 1F 09 88 */ lbz r0, 0x988(r31) +/* 8022AB1C 00227A7C 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 8022AB20 00227A80 98 1F 09 88 */ stb r0, 0x988(r31) +/* 8022AB24 00227A84 48 00 00 F4 */ b lbl_8022AC18 +lbl_8022AB28: +/* 8022AB28 00227A88 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 8022AB2C 00227A8C 3C 60 80 3E */ lis r3, lbl_803DA9CC@ha +/* 8022AB30 00227A90 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l +/* 8022AB34 00227A94 38 80 00 06 */ li r4, 6 +/* 8022AB38 00227A98 90 01 00 08 */ stw r0, 8(r1) +/* 8022AB3C 00227A9C 38 C3 A9 CC */ addi r6, r3, lbl_803DA9CC@l +/* 8022AB40 00227AA0 38 A0 00 02 */ li r5, 2 +/* 8022AB44 00227AA4 38 00 00 00 */ li r0, 0 +/* 8022AB48 00227AA8 3B E7 00 04 */ addi r31, r7, 4 +/* 8022AB4C 00227AAC 90 81 00 0C */ stw r4, 0xc(r1) +/* 8022AB50 00227AB0 7F E3 FB 78 */ mr r3, r31 +/* 8022AB54 00227AB4 38 80 00 06 */ li r4, 6 +/* 8022AB58 00227AB8 90 C1 00 08 */ stw r6, 8(r1) +/* 8022AB5C 00227ABC 90 A1 00 10 */ stw r5, 0x10(r1) +/* 8022AB60 00227AC0 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 8022AB64 00227AC4 D0 61 00 18 */ stfs f3, 0x18(r1) +/* 8022AB68 00227AC8 D0 81 00 1C */ stfs f4, 0x1c(r1) +/* 8022AB6C 00227ACC 98 01 00 20 */ stb r0, 0x20(r1) +/* 8022AB70 00227AD0 4B F0 68 C9 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8022AB74 00227AD4 80 01 00 0C */ lwz r0, 0xc(r1) +/* 8022AB78 00227AD8 3C 60 80 3E */ lis r3, lbl_803DA9CC@ha +/* 8022AB7C 00227ADC 38 83 A9 CC */ addi r4, r3, lbl_803DA9CC@l +/* 8022AB80 00227AE0 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8022AB84 00227AE4 90 1F 01 2C */ stw r0, 0x12c(r31) +/* 8022AB88 00227AE8 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 8022AB8C 00227AEC 80 61 00 10 */ lwz r3, 0x10(r1) +/* 8022AB90 00227AF0 80 A1 00 14 */ lwz r5, 0x14(r1) +/* 8022AB94 00227AF4 90 7F 01 30 */ stw r3, 0x130(r31) +/* 8022AB98 00227AF8 80 61 00 18 */ lwz r3, 0x18(r1) +/* 8022AB9C 00227AFC 90 BF 01 34 */ stw r5, 0x134(r31) +/* 8022ABA0 00227B00 80 A1 00 1C */ lwz r5, 0x1c(r1) +/* 8022ABA4 00227B04 90 7F 01 38 */ stw r3, 0x138(r31) +/* 8022ABA8 00227B08 88 61 00 20 */ lbz r3, 0x20(r1) +/* 8022ABAC 00227B0C 90 BF 01 3C */ stw r5, 0x13c(r31) +/* 8022ABB0 00227B10 90 81 00 08 */ stw r4, 8(r1) +/* 8022ABB4 00227B14 98 7F 01 40 */ stb r3, 0x140(r31) +/* 8022ABB8 00227B18 90 01 00 08 */ stw r0, 8(r1) +/* 8022ABBC 00227B1C 48 00 00 5C */ b lbl_8022AC18 +lbl_8022ABC0: +/* 8022ABC0 00227B20 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8022ABC4 00227B24 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 8022ABC8 00227B28 2C 00 00 12 */ cmpwi r0, 0x12 +/* 8022ABCC 00227B2C 41 82 00 10 */ beq lbl_8022ABDC +/* 8022ABD0 00227B30 38 00 00 03 */ li r0, 3 +/* 8022ABD4 00227B34 90 1F 05 68 */ stw r0, 0x568(r31) +/* 8022ABD8 00227B38 48 00 00 40 */ b lbl_8022AC18 +lbl_8022ABDC: +/* 8022ABDC 00227B3C C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8022ABE0 00227B40 C0 5F 00 50 */ lfs f2, 0x50(r31) +/* 8022ABE4 00227B44 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8022ABE8 00227B48 C0 3F 00 60 */ lfs f1, 0x60(r31) +/* 8022ABEC 00227B4C EC 43 10 28 */ fsubs f2, f3, f2 +/* 8022ABF0 00227B50 EC 24 08 28 */ fsubs f1, f4, f1 +/* 8022ABF4 00227B54 D0 03 00 1C */ stfs f0, 0x1c(r3) +/* 8022ABF8 00227B58 D0 43 00 20 */ stfs f2, 0x20(r3) +/* 8022ABFC 00227B5C D0 23 00 24 */ stfs f1, 0x24(r3) +/* 8022AC00 00227B60 48 00 00 18 */ b lbl_8022AC18 +lbl_8022AC04: +/* 8022AC04 00227B64 4B FF D9 C1 */ bl sub_802285c4 +/* 8022AC08 00227B68 88 1F 09 88 */ lbz r0, 0x988(r31) +/* 8022AC0C 00227B6C 38 60 00 00 */ li r3, 0 +/* 8022AC10 00227B70 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 8022AC14 00227B74 98 1F 09 88 */ stb r0, 0x988(r31) +lbl_8022AC18: +/* 8022AC18 00227B78 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8022AC1C 00227B7C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8022AC20 00227B80 7C 08 03 A6 */ mtlr r0 +/* 8022AC24 00227B84 38 21 00 30 */ addi r1, r1, 0x30 +/* 8022AC28 00227B88 4E 80 00 20 */ blr + +.global ProjectileAttack__12CElitePirateFR13CStateManager9EStateMsgf +ProjectileAttack__12CElitePirateFR13CStateManager9EStateMsgf: +/* 8022AC2C 00227B8C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8022AC30 00227B90 7C 08 02 A6 */ mflr r0 +/* 8022AC34 00227B94 2C 05 00 01 */ cmpwi r5, 1 +/* 8022AC38 00227B98 90 01 00 34 */ stw r0, 0x34(r1) +/* 8022AC3C 00227B9C 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8022AC40 00227BA0 41 82 00 2C */ beq lbl_8022AC6C +/* 8022AC44 00227BA4 40 80 00 10 */ bge lbl_8022AC54 +/* 8022AC48 00227BA8 2C 05 00 00 */ cmpwi r5, 0 +/* 8022AC4C 00227BAC 40 80 00 14 */ bge lbl_8022AC60 +/* 8022AC50 00227BB0 48 00 01 50 */ b lbl_8022ADA0 +lbl_8022AC54: +/* 8022AC54 00227BB4 2C 05 00 03 */ cmpwi r5, 3 +/* 8022AC58 00227BB8 40 80 01 48 */ bge lbl_8022ADA0 +/* 8022AC5C 00227BBC 48 00 01 40 */ b lbl_8022AD9C +lbl_8022AC60: +/* 8022AC60 00227BC0 38 00 00 00 */ li r0, 0 +/* 8022AC64 00227BC4 90 03 05 68 */ stw r0, 0x568(r3) +/* 8022AC68 00227BC8 48 00 01 38 */ b lbl_8022ADA0 +lbl_8022AC6C: +/* 8022AC6C 00227BCC 80 03 05 68 */ lwz r0, 0x568(r3) +/* 8022AC70 00227BD0 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 8022AC74 00227BD4 2C 00 00 01 */ cmpwi r0, 1 +/* 8022AC78 00227BD8 C0 84 00 60 */ lfs f4, 0x60(r4) +/* 8022AC7C 00227BDC C0 64 00 50 */ lfs f3, 0x50(r4) +/* 8022AC80 00227BE0 C0 24 00 40 */ lfs f1, 0x40(r4) +/* 8022AC84 00227BE4 41 82 01 1C */ beq lbl_8022ADA0 +/* 8022AC88 00227BE8 40 80 00 10 */ bge lbl_8022AC98 +/* 8022AC8C 00227BEC 2C 00 00 00 */ cmpwi r0, 0 +/* 8022AC90 00227BF0 40 80 00 14 */ bge lbl_8022ACA4 +/* 8022AC94 00227BF4 48 00 01 0C */ b lbl_8022ADA0 +lbl_8022AC98: +/* 8022AC98 00227BF8 2C 00 00 03 */ cmpwi r0, 3 +/* 8022AC9C 00227BFC 40 80 01 04 */ bge lbl_8022ADA0 +/* 8022ACA0 00227C00 48 00 00 B8 */ b lbl_8022AD58 +lbl_8022ACA4: +/* 8022ACA4 00227C04 80 E3 04 50 */ lwz r7, 0x450(r3) +/* 8022ACA8 00227C08 80 07 02 B8 */ lwz r0, 0x2b8(r7) +/* 8022ACAC 00227C0C 2C 00 00 12 */ cmpwi r0, 0x12 +/* 8022ACB0 00227C10 40 82 00 10 */ bne lbl_8022ACC0 +/* 8022ACB4 00227C14 38 00 00 02 */ li r0, 2 +/* 8022ACB8 00227C18 90 03 05 68 */ stw r0, 0x568(r3) +/* 8022ACBC 00227C1C 48 00 00 E4 */ b lbl_8022ADA0 +lbl_8022ACC0: +/* 8022ACC0 00227C20 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 8022ACC4 00227C24 3C 60 80 3E */ lis r3, lbl_803DA9CC@ha +/* 8022ACC8 00227C28 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l +/* 8022ACCC 00227C2C 38 80 00 06 */ li r4, 6 +/* 8022ACD0 00227C30 90 01 00 08 */ stw r0, 8(r1) +/* 8022ACD4 00227C34 38 C3 A9 CC */ addi r6, r3, lbl_803DA9CC@l +/* 8022ACD8 00227C38 38 A0 00 01 */ li r5, 1 +/* 8022ACDC 00227C3C 38 00 00 00 */ li r0, 0 +/* 8022ACE0 00227C40 3B E7 00 04 */ addi r31, r7, 4 +/* 8022ACE4 00227C44 90 81 00 0C */ stw r4, 0xc(r1) +/* 8022ACE8 00227C48 7F E3 FB 78 */ mr r3, r31 +/* 8022ACEC 00227C4C 38 80 00 06 */ li r4, 6 +/* 8022ACF0 00227C50 90 C1 00 08 */ stw r6, 8(r1) +/* 8022ACF4 00227C54 90 A1 00 10 */ stw r5, 0x10(r1) +/* 8022ACF8 00227C58 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 8022ACFC 00227C5C D0 61 00 18 */ stfs f3, 0x18(r1) +/* 8022AD00 00227C60 D0 81 00 1C */ stfs f4, 0x1c(r1) +/* 8022AD04 00227C64 98 01 00 20 */ stb r0, 0x20(r1) +/* 8022AD08 00227C68 4B F0 67 31 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8022AD0C 00227C6C 80 01 00 0C */ lwz r0, 0xc(r1) +/* 8022AD10 00227C70 3C 60 80 3E */ lis r3, lbl_803DA9CC@ha +/* 8022AD14 00227C74 38 83 A9 CC */ addi r4, r3, lbl_803DA9CC@l +/* 8022AD18 00227C78 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8022AD1C 00227C7C 90 1F 01 2C */ stw r0, 0x12c(r31) +/* 8022AD20 00227C80 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 8022AD24 00227C84 80 61 00 10 */ lwz r3, 0x10(r1) +/* 8022AD28 00227C88 80 A1 00 14 */ lwz r5, 0x14(r1) +/* 8022AD2C 00227C8C 90 7F 01 30 */ stw r3, 0x130(r31) +/* 8022AD30 00227C90 80 61 00 18 */ lwz r3, 0x18(r1) +/* 8022AD34 00227C94 90 BF 01 34 */ stw r5, 0x134(r31) +/* 8022AD38 00227C98 80 A1 00 1C */ lwz r5, 0x1c(r1) +/* 8022AD3C 00227C9C 90 7F 01 38 */ stw r3, 0x138(r31) +/* 8022AD40 00227CA0 88 61 00 20 */ lbz r3, 0x20(r1) +/* 8022AD44 00227CA4 90 BF 01 3C */ stw r5, 0x13c(r31) +/* 8022AD48 00227CA8 90 81 00 08 */ stw r4, 8(r1) +/* 8022AD4C 00227CAC 98 7F 01 40 */ stb r3, 0x140(r31) +/* 8022AD50 00227CB0 90 01 00 08 */ stw r0, 8(r1) +/* 8022AD54 00227CB4 48 00 00 4C */ b lbl_8022ADA0 +lbl_8022AD58: +/* 8022AD58 00227CB8 80 83 04 50 */ lwz r4, 0x450(r3) +/* 8022AD5C 00227CBC 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 8022AD60 00227CC0 2C 00 00 12 */ cmpwi r0, 0x12 +/* 8022AD64 00227CC4 41 82 00 10 */ beq lbl_8022AD74 +/* 8022AD68 00227CC8 38 00 00 03 */ li r0, 3 +/* 8022AD6C 00227CCC 90 03 05 68 */ stw r0, 0x568(r3) +/* 8022AD70 00227CD0 48 00 00 30 */ b lbl_8022ADA0 +lbl_8022AD74: +/* 8022AD74 00227CD4 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 8022AD78 00227CD8 C0 43 00 50 */ lfs f2, 0x50(r3) +/* 8022AD7C 00227CDC EC 01 00 28 */ fsubs f0, f1, f0 +/* 8022AD80 00227CE0 C0 23 00 60 */ lfs f1, 0x60(r3) +/* 8022AD84 00227CE4 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8022AD88 00227CE8 EC 24 08 28 */ fsubs f1, f4, f1 +/* 8022AD8C 00227CEC D0 04 00 1C */ stfs f0, 0x1c(r4) +/* 8022AD90 00227CF0 D0 44 00 20 */ stfs f2, 0x20(r4) +/* 8022AD94 00227CF4 D0 24 00 24 */ stfs f1, 0x24(r4) +/* 8022AD98 00227CF8 48 00 00 08 */ b lbl_8022ADA0 +lbl_8022AD9C: +/* 8022AD9C 00227CFC 4B FF D8 29 */ bl sub_802285c4 +lbl_8022ADA0: +/* 8022ADA0 00227D00 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8022ADA4 00227D04 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8022ADA8 00227D08 7C 08 03 A6 */ mtlr r0 +/* 8022ADAC 00227D0C 38 21 00 30 */ addi r1, r1, 0x30 +/* 8022ADB0 00227D10 4E 80 00 20 */ blr + +.global Generate__12CElitePirateFR13CStateManager9EStateMsgf +Generate__12CElitePirateFR13CStateManager9EStateMsgf: +/* 8022ADB4 00227D14 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 8022ADB8 00227D18 7C 08 02 A6 */ mflr r0 +/* 8022ADBC 00227D1C 2C 05 00 01 */ cmpwi r5, 1 +/* 8022ADC0 00227D20 90 01 00 74 */ stw r0, 0x74(r1) +/* 8022ADC4 00227D24 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 8022ADC8 00227D28 7C 9F 23 78 */ mr r31, r4 +/* 8022ADCC 00227D2C 93 C1 00 68 */ stw r30, 0x68(r1) +/* 8022ADD0 00227D30 7C 7E 1B 78 */ mr r30, r3 +/* 8022ADD4 00227D34 41 82 00 2C */ beq lbl_8022AE00 +/* 8022ADD8 00227D38 40 80 00 10 */ bge lbl_8022ADE8 +/* 8022ADDC 00227D3C 2C 05 00 00 */ cmpwi r5, 0 +/* 8022ADE0 00227D40 40 80 00 14 */ bge lbl_8022ADF4 +/* 8022ADE4 00227D44 48 00 02 34 */ b lbl_8022B018 +lbl_8022ADE8: +/* 8022ADE8 00227D48 2C 05 00 03 */ cmpwi r5, 3 +/* 8022ADEC 00227D4C 40 80 02 2C */ bge lbl_8022B018 +/* 8022ADF0 00227D50 48 00 02 00 */ b lbl_8022AFF0 +lbl_8022ADF4: +/* 8022ADF4 00227D54 38 00 00 01 */ li r0, 1 +/* 8022ADF8 00227D58 90 1E 05 68 */ stw r0, 0x568(r30) +/* 8022ADFC 00227D5C 48 00 02 1C */ b lbl_8022B018 +lbl_8022AE00: +/* 8022AE00 00227D60 80 1E 05 68 */ lwz r0, 0x568(r30) +/* 8022AE04 00227D64 2C 00 00 01 */ cmpwi r0, 1 +/* 8022AE08 00227D68 41 82 00 20 */ beq lbl_8022AE28 +/* 8022AE0C 00227D6C 40 80 00 10 */ bge lbl_8022AE1C +/* 8022AE10 00227D70 2C 00 00 00 */ cmpwi r0, 0 +/* 8022AE14 00227D74 40 80 00 DC */ bge lbl_8022AEF0 +/* 8022AE18 00227D78 48 00 02 00 */ b lbl_8022B018 +lbl_8022AE1C: +/* 8022AE1C 00227D7C 2C 00 00 03 */ cmpwi r0, 3 +/* 8022AE20 00227D80 40 80 01 F8 */ bge lbl_8022B018 +/* 8022AE24 00227D84 48 00 01 B0 */ b lbl_8022AFD4 +lbl_8022AE28: +/* 8022AE28 00227D88 81 83 00 00 */ lwz r12, 0(r3) +/* 8022AE2C 00227D8C C0 22 B5 B8 */ lfs f1, lbl_805AD2D8@sda21(r2) +/* 8022AE30 00227D90 81 8C 01 E8 */ lwz r12, 0x1e8(r12) +/* 8022AE34 00227D94 7D 89 03 A6 */ mtctr r12 +/* 8022AE38 00227D98 4E 80 04 21 */ bctrl +/* 8022AE3C 00227D9C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022AE40 00227DA0 41 82 00 A4 */ beq lbl_8022AEE4 +/* 8022AE44 00227DA4 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 8022AE48 00227DA8 38 61 00 14 */ addi r3, r1, 0x14 +/* 8022AE4C 00227DAC C0 1E 00 50 */ lfs f0, 0x50(r30) +/* 8022AE50 00227DB0 C0 24 00 50 */ lfs f1, 0x50(r4) +/* 8022AE54 00227DB4 C0 64 00 60 */ lfs f3, 0x60(r4) +/* 8022AE58 00227DB8 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 8022AE5C 00227DBC EC 81 00 28 */ fsubs f4, f1, f0 +/* 8022AE60 00227DC0 C0 24 00 40 */ lfs f1, 0x40(r4) +/* 8022AE64 00227DC4 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 8022AE68 00227DC8 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8022AE6C 00227DCC EC 01 00 28 */ fsubs f0, f1, f0 +/* 8022AE70 00227DD0 D0 81 00 18 */ stfs f4, 0x18(r1) +/* 8022AE74 00227DD4 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 8022AE78 00227DD8 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 8022AE7C 00227DDC 48 0E 98 7D */ bl CanBeNormalized__9CVector3fCFv +/* 8022AE80 00227DE0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022AE84 00227DE4 41 82 01 94 */ beq lbl_8022B018 +/* 8022AE88 00227DE8 38 61 00 08 */ addi r3, r1, 8 +/* 8022AE8C 00227DEC 38 81 00 14 */ addi r4, r1, 0x14 +/* 8022AE90 00227DF0 48 0E 99 C1 */ bl AsNormalized__9CVector3fCFv +/* 8022AE94 00227DF4 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8022AE98 00227DF8 C4 C3 66 A0 */ lfsu f6, skZero3f@l(r3) +/* 8022AE9C 00227DFC C0 61 00 08 */ lfs f3, 8(r1) +/* 8022AEA0 00227E00 38 81 00 40 */ addi r4, r1, 0x40 +/* 8022AEA4 00227E04 C0 41 00 0C */ lfs f2, 0xc(r1) +/* 8022AEA8 00227E08 C0 A3 00 04 */ lfs f5, 4(r3) +/* 8022AEAC 00227E0C C0 83 00 08 */ lfs f4, 8(r3) +/* 8022AEB0 00227E10 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 8022AEB4 00227E14 C0 02 B5 CC */ lfs f0, lbl_805AD2EC@sda21(r2) +/* 8022AEB8 00227E18 D0 C1 00 40 */ stfs f6, 0x40(r1) +/* 8022AEBC 00227E1C D0 A1 00 44 */ stfs f5, 0x44(r1) +/* 8022AEC0 00227E20 D0 81 00 48 */ stfs f4, 0x48(r1) +/* 8022AEC4 00227E24 D0 61 00 4C */ stfs f3, 0x4c(r1) +/* 8022AEC8 00227E28 D0 41 00 50 */ stfs f2, 0x50(r1) +/* 8022AECC 00227E2C D0 21 00 54 */ stfs f1, 0x54(r1) +/* 8022AED0 00227E30 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 8022AED4 00227E34 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8022AED8 00227E38 38 63 00 04 */ addi r3, r3, 4 +/* 8022AEDC 00227E3C 4B F0 68 3D */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 8022AEE0 00227E40 48 00 01 38 */ b lbl_8022B018 +lbl_8022AEE4: +/* 8022AEE4 00227E44 38 00 00 00 */ li r0, 0 +/* 8022AEE8 00227E48 90 1E 05 68 */ stw r0, 0x568(r30) +/* 8022AEEC 00227E4C 48 00 01 2C */ b lbl_8022B018 +lbl_8022AEF0: +/* 8022AEF0 00227E50 81 5E 04 50 */ lwz r10, 0x450(r30) +/* 8022AEF4 00227E54 80 0A 02 B8 */ lwz r0, 0x2b8(r10) +/* 8022AEF8 00227E58 2C 00 00 0C */ cmpwi r0, 0xc +/* 8022AEFC 00227E5C 40 82 00 10 */ bne lbl_8022AF0C +/* 8022AF00 00227E60 38 00 00 02 */ li r0, 2 +/* 8022AF04 00227E64 90 1E 05 68 */ stw r0, 0x568(r30) +/* 8022AF08 00227E68 48 00 01 10 */ b lbl_8022B018 +lbl_8022AF0C: +/* 8022AF0C 00227E6C 3C A0 80 3E */ lis r5, lbl_803DAA68@ha +/* 8022AF10 00227E70 38 C0 00 00 */ li r6, 0 +/* 8022AF14 00227E74 39 25 AA 68 */ addi r9, r5, lbl_803DAA68@l +/* 8022AF18 00227E78 80 61 00 3C */ lwz r3, 0x3c(r1) +/* 8022AF1C 00227E7C 50 C3 F8 00 */ rlwimi r3, r6, 0x1f, 0, 0 +/* 8022AF20 00227E80 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8022AF24 00227E84 C4 44 66 A0 */ lfsu f2, skZero3f@l(r4) +/* 8022AF28 00227E88 3C E0 80 3E */ lis r7, lbl_803DA9F0@ha +/* 8022AF2C 00227E8C 7C 60 1B 78 */ mr r0, r3 +/* 8022AF30 00227E90 39 00 00 0E */ li r8, 0xe +/* 8022AF34 00227E94 C0 24 00 04 */ lfs f1, 4(r4) +/* 8022AF38 00227E98 38 A0 FF FF */ li r5, -1 +/* 8022AF3C 00227E9C C0 04 00 08 */ lfs f0, 8(r4) +/* 8022AF40 00227EA0 38 E7 A9 F0 */ addi r7, r7, lbl_803DA9F0@l +/* 8022AF44 00227EA4 91 21 00 20 */ stw r9, 0x20(r1) +/* 8022AF48 00227EA8 50 C0 F0 42 */ rlwimi r0, r6, 0x1e, 1, 1 +/* 8022AF4C 00227EAC 3B EA 00 04 */ addi r31, r10, 4 +/* 8022AF50 00227EB0 38 80 00 0E */ li r4, 0xe +/* 8022AF54 00227EB4 90 61 00 3C */ stw r3, 0x3c(r1) +/* 8022AF58 00227EB8 7F E3 FB 78 */ mr r3, r31 +/* 8022AF5C 00227EBC 91 01 00 24 */ stw r8, 0x24(r1) +/* 8022AF60 00227EC0 90 E1 00 20 */ stw r7, 0x20(r1) +/* 8022AF64 00227EC4 90 C1 00 28 */ stw r6, 0x28(r1) +/* 8022AF68 00227EC8 D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 8022AF6C 00227ECC D0 21 00 30 */ stfs f1, 0x30(r1) +/* 8022AF70 00227ED0 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 8022AF74 00227ED4 90 A1 00 38 */ stw r5, 0x38(r1) +/* 8022AF78 00227ED8 90 01 00 3C */ stw r0, 0x3c(r1) +/* 8022AF7C 00227EDC 4B F0 64 BD */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8022AF80 00227EE0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8022AF84 00227EE4 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha +/* 8022AF88 00227EE8 38 83 A9 F0 */ addi r4, r3, lbl_803DA9F0@l +/* 8022AF8C 00227EEC 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8022AF90 00227EF0 90 1F 01 90 */ stw r0, 0x190(r31) +/* 8022AF94 00227EF4 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 8022AF98 00227EF8 80 A1 00 28 */ lwz r5, 0x28(r1) +/* 8022AF9C 00227EFC 80 61 00 2C */ lwz r3, 0x2c(r1) +/* 8022AFA0 00227F00 90 BF 01 94 */ stw r5, 0x194(r31) +/* 8022AFA4 00227F04 80 A1 00 30 */ lwz r5, 0x30(r1) +/* 8022AFA8 00227F08 90 7F 01 98 */ stw r3, 0x198(r31) +/* 8022AFAC 00227F0C 80 61 00 34 */ lwz r3, 0x34(r1) +/* 8022AFB0 00227F10 90 BF 01 9C */ stw r5, 0x19c(r31) +/* 8022AFB4 00227F14 80 A1 00 38 */ lwz r5, 0x38(r1) +/* 8022AFB8 00227F18 90 7F 01 A0 */ stw r3, 0x1a0(r31) +/* 8022AFBC 00227F1C 80 61 00 3C */ lwz r3, 0x3c(r1) +/* 8022AFC0 00227F20 90 BF 01 A4 */ stw r5, 0x1a4(r31) +/* 8022AFC4 00227F24 90 81 00 20 */ stw r4, 0x20(r1) +/* 8022AFC8 00227F28 90 7F 01 A8 */ stw r3, 0x1a8(r31) +/* 8022AFCC 00227F2C 90 01 00 20 */ stw r0, 0x20(r1) +/* 8022AFD0 00227F30 48 00 00 48 */ b lbl_8022B018 +lbl_8022AFD4: +/* 8022AFD4 00227F34 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8022AFD8 00227F38 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 8022AFDC 00227F3C 2C 00 00 0C */ cmpwi r0, 0xc +/* 8022AFE0 00227F40 41 82 00 38 */ beq lbl_8022B018 +/* 8022AFE4 00227F44 38 00 00 03 */ li r0, 3 +/* 8022AFE8 00227F48 90 1E 05 68 */ stw r0, 0x568(r30) +/* 8022AFEC 00227F4C 48 00 00 2C */ b lbl_8022B018 +lbl_8022AFF0: +/* 8022AFF0 00227F50 7F E5 FB 78 */ mr r5, r31 +/* 8022AFF4 00227F54 38 80 00 00 */ li r4, 0 +/* 8022AFF8 00227F58 4B FF C5 A5 */ bl sub_8022759c +/* 8022AFFC 00227F5C 7F C3 F3 78 */ mr r3, r30 +/* 8022B000 00227F60 7F E4 FB 78 */ mr r4, r31 +/* 8022B004 00227F64 81 9E 00 00 */ lwz r12, 0(r30) +/* 8022B008 00227F68 38 A0 00 01 */ li r5, 1 +/* 8022B00C 00227F6C 81 8C 02 D8 */ lwz r12, 0x2d8(r12) +/* 8022B010 00227F70 7D 89 03 A6 */ mtctr r12 +/* 8022B014 00227F74 4E 80 04 21 */ bctrl +lbl_8022B018: +/* 8022B018 00227F78 80 01 00 74 */ lwz r0, 0x74(r1) +/* 8022B01C 00227F7C 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 8022B020 00227F80 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 8022B024 00227F84 7C 08 03 A6 */ mtlr r0 +/* 8022B028 00227F88 38 21 00 70 */ addi r1, r1, 0x70 +/* 8022B02C 00227F8C 4E 80 00 20 */ blr + +.global Patrol__12CElitePirateFR13CStateManager9EStateMsgf +Patrol__12CElitePirateFR13CStateManager9EStateMsgf: +/* 8022B030 00227F90 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8022B034 00227F94 7C 08 02 A6 */ mflr r0 +/* 8022B038 00227F98 90 01 00 24 */ stw r0, 0x24(r1) +/* 8022B03C 00227F9C DB E1 00 18 */ stfd f31, 0x18(r1) +/* 8022B040 00227FA0 FF E0 08 90 */ fmr f31, f1 +/* 8022B044 00227FA4 93 E1 00 14 */ stw r31, 0x14(r1) +/* 8022B048 00227FA8 7C BF 2B 79 */ or. r31, r5, r5 +/* 8022B04C 00227FAC 93 C1 00 10 */ stw r30, 0x10(r1) +/* 8022B050 00227FB0 7C 9E 23 78 */ mr r30, r4 +/* 8022B054 00227FB4 93 A1 00 0C */ stw r29, 0xc(r1) +/* 8022B058 00227FB8 7C 7D 1B 78 */ mr r29, r3 +/* 8022B05C 00227FBC 41 82 00 08 */ beq lbl_8022B064 +/* 8022B060 00227FC0 48 00 00 2C */ b lbl_8022B08C +lbl_8022B064: +/* 8022B064 00227FC4 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 8022B068 00227FC8 38 80 00 01 */ li r4, 1 +/* 8022B06C 00227FCC 4B F0 F9 6D */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 8022B070 00227FD0 88 1D 04 00 */ lbz r0, 0x400(r29) +/* 8022B074 00227FD4 38 60 00 00 */ li r3, 0 +/* 8022B078 00227FD8 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8022B07C 00227FDC 98 1D 04 00 */ stb r0, 0x400(r29) +/* 8022B080 00227FE0 88 1D 09 89 */ lbz r0, 0x989(r29) +/* 8022B084 00227FE4 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8022B088 00227FE8 98 1D 09 89 */ stb r0, 0x989(r29) +lbl_8022B08C: +/* 8022B08C 00227FEC FC 20 F8 90 */ fmr f1, f31 +/* 8022B090 00227FF0 7F A3 EB 78 */ mr r3, r29 +/* 8022B094 00227FF4 7F C4 F3 78 */ mr r4, r30 +/* 8022B098 00227FF8 7F E5 FB 78 */ mr r5, r31 +/* 8022B09C 00227FFC 4B FC BD D9 */ bl Patrol__10CPatternedFR13CStateManager9EStateMsgf +/* 8022B0A0 00228000 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8022B0A4 00228004 CB E1 00 18 */ lfd f31, 0x18(r1) +/* 8022B0A8 00228008 83 E1 00 14 */ lwz r31, 0x14(r1) +/* 8022B0AC 0022800C 83 C1 00 10 */ lwz r30, 0x10(r1) +/* 8022B0B0 00228010 83 A1 00 0C */ lwz r29, 0xc(r1) +/* 8022B0B4 00228014 7C 08 03 A6 */ mtlr r0 +/* 8022B0B8 00228018 38 21 00 20 */ addi r1, r1, 0x20 +/* 8022B0BC 0022801C 4E 80 00 20 */ blr + +.global TargetPatrol__12CElitePirateFR13CStateManager9EStateMsgf +TargetPatrol__12CElitePirateFR13CStateManager9EStateMsgf: +/* 8022B0C0 00228020 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 8022B0C4 00228024 7C 08 02 A6 */ mflr r0 +/* 8022B0C8 00228028 90 01 00 54 */ stw r0, 0x54(r1) +/* 8022B0CC 0022802C DB E1 00 40 */ stfd f31, 0x40(r1) +/* 8022B0D0 00228030 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 8022B0D4 00228034 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8022B0D8 00228038 93 C1 00 38 */ stw r30, 0x38(r1) +/* 8022B0DC 0022803C 93 A1 00 34 */ stw r29, 0x34(r1) +/* 8022B0E0 00228040 7C BF 2B 78 */ mr r31, r5 +/* 8022B0E4 00228044 FF E0 08 90 */ fmr f31, f1 +/* 8022B0E8 00228048 2C 1F 00 01 */ cmpwi r31, 1 +/* 8022B0EC 0022804C 7C 7D 1B 78 */ mr r29, r3 +/* 8022B0F0 00228050 7C 9E 23 78 */ mr r30, r4 +/* 8022B0F4 00228054 41 82 00 CC */ beq lbl_8022B1C0 +/* 8022B0F8 00228058 40 80 00 10 */ bge lbl_8022B108 +/* 8022B0FC 0022805C 2C 1F 00 00 */ cmpwi r31, 0 +/* 8022B100 00228060 40 80 00 14 */ bge lbl_8022B114 +/* 8022B104 00228064 48 00 01 68 */ b lbl_8022B26C +lbl_8022B108: +/* 8022B108 00228068 2C 1F 00 03 */ cmpwi r31, 3 +/* 8022B10C 0022806C 40 80 01 60 */ bge lbl_8022B26C +/* 8022B110 00228070 48 00 01 4C */ b lbl_8022B25C +lbl_8022B114: +/* 8022B114 00228074 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 8022B118 00228078 38 80 00 01 */ li r4, 1 +/* 8022B11C 0022807C 4B F0 F8 BD */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 8022B120 00228080 7F A3 EB 78 */ mr r3, r29 +/* 8022B124 00228084 7F C4 F3 78 */ mr r4, r30 +/* 8022B128 00228088 81 9D 00 00 */ lwz r12, 0(r29) +/* 8022B12C 0022808C C0 22 B5 B8 */ lfs f1, lbl_805AD2D8@sda21(r2) +/* 8022B130 00228090 81 8C 01 C0 */ lwz r12, 0x1c0(r12) +/* 8022B134 00228094 7D 89 03 A6 */ mtctr r12 +/* 8022B138 00228098 4E 80 04 21 */ bctrl +/* 8022B13C 0022809C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022B140 002280A0 41 82 00 28 */ beq lbl_8022B168 +/* 8022B144 002280A4 FC 20 F8 90 */ fmr f1, f31 +/* 8022B148 002280A8 7F A3 EB 78 */ mr r3, r29 +/* 8022B14C 002280AC 7F C4 F3 78 */ mr r4, r30 +/* 8022B150 002280B0 7F E5 FB 78 */ mr r5, r31 +/* 8022B154 002280B4 4B FC BD 21 */ bl Patrol__10CPatternedFR13CStateManager9EStateMsgf +/* 8022B158 002280B8 7F A3 EB 78 */ mr r3, r29 +/* 8022B15C 002280BC 7F C4 F3 78 */ mr r4, r30 +/* 8022B160 002280C0 4B FC A1 31 */ bl UpdateDest__10CPatternedFR13CStateManager +/* 8022B164 002280C4 48 00 00 10 */ b lbl_8022B174 +lbl_8022B168: +/* 8022B168 002280C8 7F A3 EB 78 */ mr r3, r29 +/* 8022B16C 002280CC 38 9D 03 A0 */ addi r4, r29, 0x3a0 +/* 8022B170 002280D0 4B E5 19 ED */ bl SetDestPos__10CPatternedFRC9CVector3f +lbl_8022B174: +/* 8022B174 002280D4 C0 1D 02 E0 */ lfs f0, 0x2e0(r29) +/* 8022B178 002280D8 7F A3 EB 78 */ mr r3, r29 +/* 8022B17C 002280DC D0 1D 08 B4 */ stfs f0, 0x8b4(r29) +/* 8022B180 002280E0 C0 1D 02 E4 */ lfs f0, 0x2e4(r29) +/* 8022B184 002280E4 D0 1D 08 B8 */ stfs f0, 0x8b8(r29) +/* 8022B188 002280E8 C0 1D 02 E8 */ lfs f0, 0x2e8(r29) +/* 8022B18C 002280EC D0 1D 08 BC */ stfs f0, 0x8bc(r29) +/* 8022B190 002280F0 81 9D 00 00 */ lwz r12, 0(r29) +/* 8022B194 002280F4 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 8022B198 002280F8 7D 89 03 A6 */ mtctr r12 +/* 8022B19C 002280FC 4E 80 04 21 */ bctrl +/* 8022B1A0 00228100 28 03 00 00 */ cmplwi r3, 0 +/* 8022B1A4 00228104 41 82 00 C8 */ beq lbl_8022B26C +/* 8022B1A8 00228108 FC 20 F8 90 */ fmr f1, f31 +/* 8022B1AC 0022810C 7F A3 EB 78 */ mr r3, r29 +/* 8022B1B0 00228110 7F C4 F3 78 */ mr r4, r30 +/* 8022B1B4 00228114 7F E5 FB 78 */ mr r5, r31 +/* 8022B1B8 00228118 4B FC B5 15 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 8022B1BC 0022811C 48 00 00 B0 */ b lbl_8022B26C +lbl_8022B1C0: +/* 8022B1C0 00228120 81 83 00 00 */ lwz r12, 0(r3) +/* 8022B1C4 00228124 C0 22 B5 B8 */ lfs f1, lbl_805AD2D8@sda21(r2) +/* 8022B1C8 00228128 81 8C 01 90 */ lwz r12, 0x190(r12) +/* 8022B1CC 0022812C 7D 89 03 A6 */ mtctr r12 +/* 8022B1D0 00228130 4E 80 04 21 */ bctrl +/* 8022B1D4 00228134 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022B1D8 00228138 40 82 00 1C */ bne lbl_8022B1F4 +/* 8022B1DC 0022813C FC 20 F8 90 */ fmr f1, f31 +/* 8022B1E0 00228140 7F A3 EB 78 */ mr r3, r29 +/* 8022B1E4 00228144 7F C4 F3 78 */ mr r4, r30 +/* 8022B1E8 00228148 7F E5 FB 78 */ mr r5, r31 +/* 8022B1EC 0022814C 4B FC B4 E1 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 8022B1F0 00228150 48 00 00 7C */ b lbl_8022B26C +lbl_8022B1F4: +/* 8022B1F4 00228154 C0 22 B6 00 */ lfs f1, lbl_805AD320@sda21(r2) +/* 8022B1F8 00228158 7F A5 EB 78 */ mr r5, r29 +/* 8022B1FC 0022815C 38 61 00 08 */ addi r3, r1, 8 +/* 8022B200 00228160 38 9D 04 5C */ addi r4, r29, 0x45c +/* 8022B204 00228164 38 DD 08 B4 */ addi r6, r29, 0x8b4 +/* 8022B208 00228168 4B F1 39 15 */ bl Arrival__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3ff +/* 8022B20C 0022816C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8022B210 00228170 C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) +/* 8022B214 00228174 C0 C1 00 08 */ lfs f6, 8(r1) +/* 8022B218 00228178 38 81 00 14 */ addi r4, r1, 0x14 +/* 8022B21C 0022817C C0 A1 00 0C */ lfs f5, 0xc(r1) +/* 8022B220 00228180 C0 81 00 10 */ lfs f4, 0x10(r1) +/* 8022B224 00228184 C0 43 00 04 */ lfs f2, 4(r3) +/* 8022B228 00228188 C0 23 00 08 */ lfs f1, 8(r3) +/* 8022B22C 0022818C C0 02 B5 CC */ lfs f0, lbl_805AD2EC@sda21(r2) +/* 8022B230 00228190 D0 C1 00 14 */ stfs f6, 0x14(r1) +/* 8022B234 00228194 D0 A1 00 18 */ stfs f5, 0x18(r1) +/* 8022B238 00228198 D0 81 00 1C */ stfs f4, 0x1c(r1) +/* 8022B23C 0022819C D0 61 00 20 */ stfs f3, 0x20(r1) +/* 8022B240 002281A0 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 8022B244 002281A4 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 8022B248 002281A8 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 8022B24C 002281AC 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 8022B250 002281B0 38 63 00 04 */ addi r3, r3, 4 +/* 8022B254 002281B4 4B F0 64 C5 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 8022B258 002281B8 48 00 00 14 */ b lbl_8022B26C +lbl_8022B25C: +/* 8022B25C 002281BC 88 1D 09 88 */ lbz r0, 0x988(r29) +/* 8022B260 002281C0 38 60 00 00 */ li r3, 0 +/* 8022B264 002281C4 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 8022B268 002281C8 98 1D 09 88 */ stb r0, 0x988(r29) +lbl_8022B26C: +/* 8022B26C 002281CC E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 8022B270 002281D0 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8022B274 002281D4 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 8022B278 002281D8 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8022B27C 002281DC 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 8022B280 002281E0 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 8022B284 002281E4 7C 08 03 A6 */ mtlr r0 +/* 8022B288 002281E8 38 21 00 50 */ addi r1, r1, 0x50 +/* 8022B28C 002281EC 4E 80 00 20 */ blr + +.global Taunt__12CElitePirateFR13CStateManager9EStateMsgf +Taunt__12CElitePirateFR13CStateManager9EStateMsgf: +/* 8022B290 002281F0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8022B294 002281F4 7C 08 02 A6 */ mflr r0 +/* 8022B298 002281F8 2C 05 00 01 */ cmpwi r5, 1 +/* 8022B29C 002281FC 90 01 00 24 */ stw r0, 0x24(r1) +/* 8022B2A0 00228200 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8022B2A4 00228204 41 82 00 20 */ beq lbl_8022B2C4 +/* 8022B2A8 00228208 40 80 01 14 */ bge lbl_8022B3BC +/* 8022B2AC 0022820C 2C 05 00 00 */ cmpwi r5, 0 +/* 8022B2B0 00228210 40 80 00 08 */ bge lbl_8022B2B8 +/* 8022B2B4 00228214 48 00 01 08 */ b lbl_8022B3BC +lbl_8022B2B8: +/* 8022B2B8 00228218 38 00 00 00 */ li r0, 0 +/* 8022B2BC 0022821C 90 03 05 68 */ stw r0, 0x568(r3) +/* 8022B2C0 00228220 48 00 00 FC */ b lbl_8022B3BC +lbl_8022B2C4: +/* 8022B2C4 00228224 80 03 05 68 */ lwz r0, 0x568(r3) +/* 8022B2C8 00228228 2C 00 00 01 */ cmpwi r0, 1 +/* 8022B2CC 0022822C 41 82 00 F0 */ beq lbl_8022B3BC +/* 8022B2D0 00228230 40 80 00 10 */ bge lbl_8022B2E0 +/* 8022B2D4 00228234 2C 00 00 00 */ cmpwi r0, 0 +/* 8022B2D8 00228238 40 80 00 14 */ bge lbl_8022B2EC +/* 8022B2DC 0022823C 48 00 00 E0 */ b lbl_8022B3BC +lbl_8022B2E0: +/* 8022B2E0 00228240 2C 00 00 03 */ cmpwi r0, 3 +/* 8022B2E4 00228244 40 80 00 D8 */ bge lbl_8022B3BC +/* 8022B2E8 00228248 48 00 00 84 */ b lbl_8022B36C +lbl_8022B2EC: +/* 8022B2EC 0022824C 80 C3 04 50 */ lwz r6, 0x450(r3) +/* 8022B2F0 00228250 80 06 02 B8 */ lwz r0, 0x2b8(r6) +/* 8022B2F4 00228254 2C 00 00 10 */ cmpwi r0, 0x10 +/* 8022B2F8 00228258 40 82 00 10 */ bne lbl_8022B308 +/* 8022B2FC 0022825C 38 00 00 02 */ li r0, 2 +/* 8022B300 00228260 90 03 05 68 */ stw r0, 0x568(r3) +/* 8022B304 00228264 48 00 00 B8 */ b lbl_8022B3BC +lbl_8022B308: +/* 8022B308 00228268 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 8022B30C 0022826C 3C 60 80 3E */ lis r3, lbl_803DAA14@ha +/* 8022B310 00228270 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l +/* 8022B314 00228274 38 80 00 12 */ li r4, 0x12 +/* 8022B318 00228278 90 01 00 08 */ stw r0, 8(r1) +/* 8022B31C 0022827C 38 A3 AA 14 */ addi r5, r3, lbl_803DAA14@l +/* 8022B320 00228280 38 00 00 00 */ li r0, 0 +/* 8022B324 00228284 3B E6 00 04 */ addi r31, r6, 4 +/* 8022B328 00228288 90 81 00 0C */ stw r4, 0xc(r1) +/* 8022B32C 0022828C 7F E3 FB 78 */ mr r3, r31 +/* 8022B330 00228290 38 80 00 12 */ li r4, 0x12 +/* 8022B334 00228294 90 A1 00 08 */ stw r5, 8(r1) +/* 8022B338 00228298 90 01 00 10 */ stw r0, 0x10(r1) +/* 8022B33C 0022829C 4B F0 60 FD */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8022B340 002282A0 80 01 00 0C */ lwz r0, 0xc(r1) +/* 8022B344 002282A4 3C 60 80 3E */ lis r3, lbl_803DAA14@ha +/* 8022B348 002282A8 38 83 AA 14 */ addi r4, r3, lbl_803DAA14@l +/* 8022B34C 002282AC 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8022B350 002282B0 90 1F 02 14 */ stw r0, 0x214(r31) +/* 8022B354 002282B4 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 8022B358 002282B8 80 61 00 10 */ lwz r3, 0x10(r1) +/* 8022B35C 002282BC 90 81 00 08 */ stw r4, 8(r1) +/* 8022B360 002282C0 90 7F 02 18 */ stw r3, 0x218(r31) +/* 8022B364 002282C4 90 01 00 08 */ stw r0, 8(r1) +/* 8022B368 002282C8 48 00 00 54 */ b lbl_8022B3BC +lbl_8022B36C: +/* 8022B36C 002282CC 80 A3 04 50 */ lwz r5, 0x450(r3) +/* 8022B370 002282D0 80 05 02 B8 */ lwz r0, 0x2b8(r5) +/* 8022B374 002282D4 2C 00 00 10 */ cmpwi r0, 0x10 +/* 8022B378 002282D8 41 82 00 10 */ beq lbl_8022B388 +/* 8022B37C 002282DC 38 00 00 03 */ li r0, 3 +/* 8022B380 002282E0 90 03 05 68 */ stw r0, 0x568(r3) +/* 8022B384 002282E4 48 00 00 38 */ b lbl_8022B3BC +lbl_8022B388: +/* 8022B388 002282E8 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 8022B38C 002282EC C0 03 00 40 */ lfs f0, 0x40(r3) +/* 8022B390 002282F0 C0 24 00 40 */ lfs f1, 0x40(r4) +/* 8022B394 002282F4 C0 84 00 50 */ lfs f4, 0x50(r4) +/* 8022B398 002282F8 C0 63 00 50 */ lfs f3, 0x50(r3) +/* 8022B39C 002282FC EC 01 00 28 */ fsubs f0, f1, f0 +/* 8022B3A0 00228300 C0 44 00 60 */ lfs f2, 0x60(r4) +/* 8022B3A4 00228304 C0 23 00 60 */ lfs f1, 0x60(r3) +/* 8022B3A8 00228308 EC 64 18 28 */ fsubs f3, f4, f3 +/* 8022B3AC 0022830C D0 05 00 1C */ stfs f0, 0x1c(r5) +/* 8022B3B0 00228310 EC 02 08 28 */ fsubs f0, f2, f1 +/* 8022B3B4 00228314 D0 65 00 20 */ stfs f3, 0x20(r5) +/* 8022B3B8 00228318 D0 05 00 24 */ stfs f0, 0x24(r5) +lbl_8022B3BC: +/* 8022B3BC 0022831C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8022B3C0 00228320 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8022B3C4 00228324 7C 08 03 A6 */ mtlr r0 +/* 8022B3C8 00228328 38 21 00 20 */ addi r1, r1, 0x20 +/* 8022B3CC 0022832C 4E 80 00 20 */ blr + +.global PathFind__12CElitePirateFR13CStateManager9EStateMsgf +PathFind__12CElitePirateFR13CStateManager9EStateMsgf: +/* 8022B3D0 00228330 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 8022B3D4 00228334 7C 08 02 A6 */ mflr r0 +/* 8022B3D8 00228338 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 8022B3DC 0022833C DB E1 00 D0 */ stfd f31, 0xd0(r1) +/* 8022B3E0 00228340 F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 +/* 8022B3E4 00228344 DB C1 00 C0 */ stfd f30, 0xc0(r1) +/* 8022B3E8 00228348 F3 C1 00 C8 */ psq_st f30, 200(r1), 0, qr0 +/* 8022B3EC 0022834C 93 E1 00 BC */ stw r31, 0xbc(r1) +/* 8022B3F0 00228350 93 C1 00 B8 */ stw r30, 0xb8(r1) +/* 8022B3F4 00228354 93 A1 00 B4 */ stw r29, 0xb4(r1) +/* 8022B3F8 00228358 7C BE 2B 78 */ mr r30, r5 +/* 8022B3FC 0022835C FF C0 08 90 */ fmr f30, f1 +/* 8022B400 00228360 2C 1E 00 01 */ cmpwi r30, 1 +/* 8022B404 00228364 7C 7F 1B 78 */ mr r31, r3 +/* 8022B408 00228368 7C 9D 23 78 */ mr r29, r4 +/* 8022B40C 0022836C 41 82 00 E0 */ beq lbl_8022B4EC +/* 8022B410 00228370 40 80 00 10 */ bge lbl_8022B420 +/* 8022B414 00228374 2C 1E 00 00 */ cmpwi r30, 0 +/* 8022B418 00228378 40 80 00 14 */ bge lbl_8022B42C +/* 8022B41C 0022837C 48 00 03 58 */ b lbl_8022B774 +lbl_8022B420: +/* 8022B420 00228380 2C 1E 00 03 */ cmpwi r30, 3 +/* 8022B424 00228384 40 80 03 50 */ bge lbl_8022B774 +/* 8022B428 00228388 48 00 03 40 */ b lbl_8022B768 +lbl_8022B42C: +/* 8022B42C 0022838C 88 1F 09 89 */ lbz r0, 0x989(r31) +/* 8022B430 00228390 38 60 00 01 */ li r3, 1 +/* 8022B434 00228394 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8022B438 00228398 38 60 00 00 */ li r3, 0 +/* 8022B43C 0022839C 98 1F 09 89 */ stb r0, 0x989(r31) +/* 8022B440 002283A0 38 80 00 01 */ li r4, 1 +/* 8022B444 002283A4 88 1F 09 88 */ lbz r0, 0x988(r31) +/* 8022B448 002283A8 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 8022B44C 002283AC 98 1F 09 88 */ stb r0, 0x988(r31) +/* 8022B450 002283B0 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8022B454 002283B4 4B F0 F5 85 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 8022B458 002283B8 80 BD 08 4C */ lwz r5, 0x84c(r29) +/* 8022B45C 002283BC 38 7F 06 F8 */ addi r3, r31, 0x6f8 +/* 8022B460 002283C0 38 81 00 0C */ addi r4, r1, 0xc +/* 8022B464 002283C4 A0 05 00 08 */ lhz r0, 8(r5) +/* 8022B468 002283C8 B0 01 00 08 */ sth r0, 8(r1) +/* 8022B46C 002283CC B0 01 00 0C */ sth r0, 0xc(r1) +/* 8022B470 002283D0 4B F4 9D A9 */ bl SetTarget__13CBoneTrackingF9TUniqueId +/* 8022B474 002283D4 38 7F 06 F8 */ addi r3, r31, 0x6f8 +/* 8022B478 002283D8 38 80 00 01 */ li r4, 1 +/* 8022B47C 002283DC 4B F4 9D A9 */ bl SetActive__13CBoneTrackingFb +/* 8022B480 002283E0 7F E3 FB 78 */ mr r3, r31 +/* 8022B484 002283E4 7F A4 EB 78 */ mr r4, r29 +/* 8022B488 002283E8 4B FF D1 AD */ bl sub_80228634 +/* 8022B48C 002283EC FC 20 F0 90 */ fmr f1, f30 +/* 8022B490 002283F0 7F E3 FB 78 */ mr r3, r31 +/* 8022B494 002283F4 7F A4 EB 78 */ mr r4, r29 +/* 8022B498 002283F8 7F C5 F3 78 */ mr r5, r30 +/* 8022B49C 002283FC 4B FC B2 31 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 8022B4A0 00228400 C3 FF 05 DC */ lfs f31, 0x5dc(r31) +/* 8022B4A4 00228404 C3 DF 05 D8 */ lfs f30, 0x5d8(r31) +/* 8022B4A8 00228408 80 7D 09 00 */ lwz r3, 0x900(r29) +/* 8022B4AC 0022840C 48 0E 70 31 */ bl Float__9CRandom16Fv +/* 8022B4B0 00228410 EC 01 F7 FA */ fmadds f0, f1, f31, f30 +/* 8022B4B4 00228414 7F E3 FB 78 */ mr r3, r31 +/* 8022B4B8 00228418 7F A4 EB 78 */ mr r4, r29 +/* 8022B4BC 0022841C C0 22 B5 B8 */ lfs f1, lbl_805AD2D8@sda21(r2) +/* 8022B4C0 00228420 D0 1F 07 BC */ stfs f0, 0x7bc(r31) +/* 8022B4C4 00228424 81 9F 00 00 */ lwz r12, 0(r31) +/* 8022B4C8 00228428 81 8C 01 9C */ lwz r12, 0x19c(r12) +/* 8022B4CC 0022842C 7D 89 03 A6 */ mtctr r12 +/* 8022B4D0 00228430 4E 80 04 21 */ bctrl +/* 8022B4D4 00228434 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022B4D8 00228438 41 82 02 9C */ beq lbl_8022B774 +/* 8022B4DC 0022843C 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8022B4E0 00228440 38 63 00 04 */ addi r3, r3, 4 +/* 8022B4E4 00228444 4B F0 5F C5 */ bl ClearLocomotionCmds__16CBodyStateCmdMgrFv +/* 8022B4E8 00228448 48 00 02 8C */ b lbl_8022B774 +lbl_8022B4EC: +/* 8022B4EC 0022844C C0 3F 07 BC */ lfs f1, 0x7bc(r31) +/* 8022B4F0 00228450 C0 02 B5 B8 */ lfs f0, lbl_805AD2D8@sda21(r2) +/* 8022B4F4 00228454 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8022B4F8 00228458 40 81 00 0C */ ble lbl_8022B504 +/* 8022B4FC 0022845C EC 01 F0 28 */ fsubs f0, f1, f30 +/* 8022B500 00228460 D0 1F 07 BC */ stfs f0, 0x7bc(r31) +lbl_8022B504: +/* 8022B504 00228464 7F E3 FB 78 */ mr r3, r31 +/* 8022B508 00228468 7F A4 EB 78 */ mr r4, r29 +/* 8022B50C 0022846C 81 9F 00 00 */ lwz r12, 0(r31) +/* 8022B510 00228470 C0 22 B5 B8 */ lfs f1, lbl_805AD2D8@sda21(r2) +/* 8022B514 00228474 81 8C 01 9C */ lwz r12, 0x19c(r12) +/* 8022B518 00228478 7D 89 03 A6 */ mtctr r12 +/* 8022B51C 0022847C 4E 80 04 21 */ bctrl +/* 8022B520 00228480 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022B524 00228484 40 82 00 40 */ bne lbl_8022B564 +/* 8022B528 00228488 7F E3 FB 78 */ mr r3, r31 +/* 8022B52C 0022848C 7F A4 EB 78 */ mr r4, r29 +/* 8022B530 00228490 81 9F 00 00 */ lwz r12, 0(r31) +/* 8022B534 00228494 C0 22 B5 B8 */ lfs f1, lbl_805AD2D8@sda21(r2) +/* 8022B538 00228498 81 8C 01 90 */ lwz r12, 0x190(r12) +/* 8022B53C 0022849C 7D 89 03 A6 */ mtctr r12 +/* 8022B540 002284A0 4E 80 04 21 */ bctrl +/* 8022B544 002284A4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022B548 002284A8 40 82 00 1C */ bne lbl_8022B564 +/* 8022B54C 002284AC FC 20 F0 90 */ fmr f1, f30 +/* 8022B550 002284B0 7F E3 FB 78 */ mr r3, r31 +/* 8022B554 002284B4 7F A4 EB 78 */ mr r4, r29 +/* 8022B558 002284B8 7F C5 F3 78 */ mr r5, r30 +/* 8022B55C 002284BC 4B FC B1 71 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 8022B560 002284C0 48 00 02 14 */ b lbl_8022B774 +lbl_8022B564: +/* 8022B564 002284C4 7F E3 FB 78 */ mr r3, r31 +/* 8022B568 002284C8 7F A4 EB 78 */ mr r4, r29 +/* 8022B56C 002284CC 81 9F 00 00 */ lwz r12, 0(r31) +/* 8022B570 002284D0 C0 22 B5 B8 */ lfs f1, lbl_805AD2D8@sda21(r2) +/* 8022B574 002284D4 81 8C 01 90 */ lwz r12, 0x190(r12) +/* 8022B578 002284D8 7D 89 03 A6 */ mtctr r12 +/* 8022B57C 002284DC 4E 80 04 21 */ bctrl +/* 8022B580 002284E0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022B584 002284E4 41 82 00 F4 */ beq lbl_8022B678 +/* 8022B588 002284E8 C0 5F 00 38 */ lfs f2, 0x38(r31) +/* 8022B58C 002284EC 38 61 00 58 */ addi r3, r1, 0x58 +/* 8022B590 002284F0 C0 3F 00 48 */ lfs f1, 0x48(r31) +/* 8022B594 002284F4 38 9F 08 C0 */ addi r4, r31, 0x8c0 +/* 8022B598 002284F8 C0 1F 00 58 */ lfs f0, 0x58(r31) +/* 8022B59C 002284FC 38 A1 00 4C */ addi r5, r1, 0x4c +/* 8022B5A0 00228500 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 8022B5A4 00228504 38 C1 00 34 */ addi r6, r1, 0x34 +/* 8022B5A8 00228508 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 8022B5AC 0022850C 81 01 00 28 */ lwz r8, 0x28(r1) +/* 8022B5B0 00228510 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 8022B5B4 00228514 80 E1 00 2C */ lwz r7, 0x2c(r1) +/* 8022B5B8 00228518 80 01 00 30 */ lwz r0, 0x30(r1) +/* 8022B5BC 0022851C 91 01 00 34 */ stw r8, 0x34(r1) +/* 8022B5C0 00228520 90 E1 00 38 */ stw r7, 0x38(r1) +/* 8022B5C4 00228524 90 01 00 3C */ stw r0, 0x3c(r1) +/* 8022B5C8 00228528 C0 5F 00 40 */ lfs f2, 0x40(r31) +/* 8022B5CC 0022852C C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 8022B5D0 00228530 C0 1F 00 60 */ lfs f0, 0x60(r31) +/* 8022B5D4 00228534 D0 41 00 40 */ stfs f2, 0x40(r1) +/* 8022B5D8 00228538 D0 21 00 44 */ stfs f1, 0x44(r1) +/* 8022B5DC 0022853C 81 01 00 40 */ lwz r8, 0x40(r1) +/* 8022B5E0 00228540 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 8022B5E4 00228544 80 E1 00 44 */ lwz r7, 0x44(r1) +/* 8022B5E8 00228548 80 01 00 48 */ lwz r0, 0x48(r1) +/* 8022B5EC 0022854C 91 01 00 4C */ stw r8, 0x4c(r1) +/* 8022B5F0 00228550 90 E1 00 50 */ stw r7, 0x50(r1) +/* 8022B5F4 00228554 90 01 00 54 */ stw r0, 0x54(r1) +/* 8022B5F8 00228558 48 07 51 F9 */ bl sub_802a07f0 +/* 8022B5FC 0022855C C0 21 00 58 */ lfs f1, 0x58(r1) +/* 8022B600 00228560 38 00 00 00 */ li r0, 0 +/* 8022B604 00228564 C0 02 B5 B8 */ lfs f0, lbl_805AD2D8@sda21(r2) +/* 8022B608 00228568 C0 81 00 5C */ lfs f4, 0x5c(r1) +/* 8022B60C 0022856C FC 00 08 00 */ fcmpu cr0, f0, f1 +/* 8022B610 00228570 C0 A1 00 60 */ lfs f5, 0x60(r1) +/* 8022B614 00228574 40 82 00 14 */ bne lbl_8022B628 +/* 8022B618 00228578 FC 00 20 00 */ fcmpu cr0, f0, f4 +/* 8022B61C 0022857C 40 82 00 0C */ bne lbl_8022B628 +/* 8022B620 00228580 FC 00 28 00 */ fcmpu cr0, f0, f5 +/* 8022B624 00228584 41 82 00 08 */ beq lbl_8022B62C +lbl_8022B628: +/* 8022B628 00228588 38 00 00 01 */ li r0, 1 +lbl_8022B62C: +/* 8022B62C 0022858C 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 8022B630 00228590 41 82 01 44 */ beq lbl_8022B774 +/* 8022B634 00228594 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8022B638 00228598 C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) +/* 8022B63C 0022859C C0 02 B5 CC */ lfs f0, lbl_805AD2EC@sda21(r2) +/* 8022B640 002285A0 38 81 00 8C */ addi r4, r1, 0x8c +/* 8022B644 002285A4 D0 21 00 8C */ stfs f1, 0x8c(r1) +/* 8022B648 002285A8 C0 43 00 04 */ lfs f2, 4(r3) +/* 8022B64C 002285AC C0 23 00 08 */ lfs f1, 8(r3) +/* 8022B650 002285B0 D0 81 00 90 */ stfs f4, 0x90(r1) +/* 8022B654 002285B4 D0 A1 00 94 */ stfs f5, 0x94(r1) +/* 8022B658 002285B8 D0 61 00 98 */ stfs f3, 0x98(r1) +/* 8022B65C 002285BC D0 41 00 9C */ stfs f2, 0x9c(r1) +/* 8022B660 002285C0 D0 21 00 A0 */ stfs f1, 0xa0(r1) +/* 8022B664 002285C4 D0 01 00 A4 */ stfs f0, 0xa4(r1) +/* 8022B668 002285C8 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8022B66C 002285CC 38 63 00 04 */ addi r3, r3, 4 +/* 8022B670 002285D0 4B F0 60 A9 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 8022B674 002285D4 48 00 01 00 */ b lbl_8022B774 +lbl_8022B678: +/* 8022B678 002285D8 7F E3 FB 78 */ mr r3, r31 +/* 8022B67C 002285DC 7F A4 EB 78 */ mr r4, r29 +/* 8022B680 002285E0 81 9F 00 00 */ lwz r12, 0(r31) +/* 8022B684 002285E4 C0 22 B5 B8 */ lfs f1, lbl_805AD2D8@sda21(r2) +/* 8022B688 002285E8 81 8C 01 E8 */ lwz r12, 0x1e8(r12) +/* 8022B68C 002285EC 7D 89 03 A6 */ mtctr r12 +/* 8022B690 002285F0 4E 80 04 21 */ bctrl +/* 8022B694 002285F4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022B698 002285F8 41 82 00 DC */ beq lbl_8022B774 +/* 8022B69C 002285FC 80 DF 00 64 */ lwz r6, 0x64(r31) +/* 8022B6A0 00228600 7F A5 EB 78 */ mr r5, r29 +/* 8022B6A4 00228604 80 9D 08 4C */ lwz r4, 0x84c(r29) +/* 8022B6A8 00228608 38 61 00 1C */ addi r3, r1, 0x1c +/* 8022B6AC 0022860C 80 C6 00 10 */ lwz r6, 0x10(r6) +/* 8022B6B0 00228610 81 84 00 00 */ lwz r12, 0(r4) +/* 8022B6B4 00228614 C0 22 B5 BC */ lfs f1, lbl_805AD2DC@sda21(r2) +/* 8022B6B8 00228618 C0 06 02 00 */ lfs f0, 0x200(r6) +/* 8022B6BC 0022861C 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 8022B6C0 00228620 EC 21 00 32 */ fmuls f1, f1, f0 +/* 8022B6C4 00228624 7D 89 03 A6 */ mtctr r12 +/* 8022B6C8 00228628 4E 80 04 21 */ bctrl +/* 8022B6CC 0022862C C0 21 00 20 */ lfs f1, 0x20(r1) +/* 8022B6D0 00228630 38 61 00 64 */ addi r3, r1, 0x64 +/* 8022B6D4 00228634 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 8022B6D8 00228638 C0 61 00 24 */ lfs f3, 0x24(r1) +/* 8022B6DC 0022863C C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 8022B6E0 00228640 EC 81 00 28 */ fsubs f4, f1, f0 +/* 8022B6E4 00228644 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8022B6E8 00228648 C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 8022B6EC 0022864C EC 43 10 28 */ fsubs f2, f3, f2 +/* 8022B6F0 00228650 D0 81 00 68 */ stfs f4, 0x68(r1) +/* 8022B6F4 00228654 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8022B6F8 00228658 D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 8022B6FC 0022865C D0 01 00 64 */ stfs f0, 0x64(r1) +/* 8022B700 00228660 48 0E 8F F9 */ bl CanBeNormalized__9CVector3fCFv +/* 8022B704 00228664 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022B708 00228668 41 82 00 6C */ beq lbl_8022B774 +/* 8022B70C 0022866C 38 61 00 10 */ addi r3, r1, 0x10 +/* 8022B710 00228670 38 81 00 64 */ addi r4, r1, 0x64 +/* 8022B714 00228674 48 0E 91 3D */ bl AsNormalized__9CVector3fCFv +/* 8022B718 00228678 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8022B71C 0022867C C4 C3 66 A0 */ lfsu f6, skZero3f@l(r3) +/* 8022B720 00228680 C0 61 00 10 */ lfs f3, 0x10(r1) +/* 8022B724 00228684 38 81 00 70 */ addi r4, r1, 0x70 +/* 8022B728 00228688 C0 41 00 14 */ lfs f2, 0x14(r1) +/* 8022B72C 0022868C C0 A3 00 04 */ lfs f5, 4(r3) +/* 8022B730 00228690 C0 83 00 08 */ lfs f4, 8(r3) +/* 8022B734 00228694 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 8022B738 00228698 C0 02 B5 CC */ lfs f0, lbl_805AD2EC@sda21(r2) +/* 8022B73C 0022869C D0 C1 00 70 */ stfs f6, 0x70(r1) +/* 8022B740 002286A0 D0 A1 00 74 */ stfs f5, 0x74(r1) +/* 8022B744 002286A4 D0 81 00 78 */ stfs f4, 0x78(r1) +/* 8022B748 002286A8 D0 61 00 7C */ stfs f3, 0x7c(r1) +/* 8022B74C 002286AC D0 41 00 80 */ stfs f2, 0x80(r1) +/* 8022B750 002286B0 D0 21 00 84 */ stfs f1, 0x84(r1) +/* 8022B754 002286B4 D0 01 00 88 */ stfs f0, 0x88(r1) +/* 8022B758 002286B8 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8022B75C 002286BC 38 63 00 04 */ addi r3, r3, 4 +/* 8022B760 002286C0 4B F0 5F B9 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 8022B764 002286C4 48 00 00 10 */ b lbl_8022B774 +lbl_8022B768: +/* 8022B768 002286C8 38 7F 06 F8 */ addi r3, r31, 0x6f8 +/* 8022B76C 002286CC 38 80 00 00 */ li r4, 0 +/* 8022B770 002286D0 4B F4 9A B5 */ bl SetActive__13CBoneTrackingFb +lbl_8022B774: +/* 8022B774 002286D4 E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 +/* 8022B778 002286D8 CB E1 00 D0 */ lfd f31, 0xd0(r1) +/* 8022B77C 002286DC E3 C1 00 C8 */ psq_l f30, 200(r1), 0, qr0 +/* 8022B780 002286E0 CB C1 00 C0 */ lfd f30, 0xc0(r1) +/* 8022B784 002286E4 83 E1 00 BC */ lwz r31, 0xbc(r1) +/* 8022B788 002286E8 83 C1 00 B8 */ lwz r30, 0xb8(r1) +/* 8022B78C 002286EC 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 8022B790 002286F0 83 A1 00 B4 */ lwz r29, 0xb4(r1) +/* 8022B794 002286F4 7C 08 03 A6 */ mtlr r0 +/* 8022B798 002286F8 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 8022B79C 002286FC 4E 80 00 20 */ blr + +.global Halt__12CElitePirateFR13CStateManager9EStateMsgf +Halt__12CElitePirateFR13CStateManager9EStateMsgf: +/* 8022B7A0 00228700 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 8022B7A4 00228704 7C 08 02 A6 */ mflr r0 +/* 8022B7A8 00228708 2C 05 00 01 */ cmpwi r5, 1 +/* 8022B7AC 0022870C 90 01 00 54 */ stw r0, 0x54(r1) +/* 8022B7B0 00228710 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 8022B7B4 00228714 7C 7F 1B 78 */ mr r31, r3 +/* 8022B7B8 00228718 93 C1 00 48 */ stw r30, 0x48(r1) +/* 8022B7BC 0022871C 93 A1 00 44 */ stw r29, 0x44(r1) +/* 8022B7C0 00228720 41 82 01 AC */ beq lbl_8022B96C +/* 8022B7C4 00228724 40 80 00 10 */ bge lbl_8022B7D4 +/* 8022B7C8 00228728 2C 05 00 00 */ cmpwi r5, 0 +/* 8022B7CC 0022872C 40 80 00 14 */ bge lbl_8022B7E0 +/* 8022B7D0 00228730 48 00 01 9C */ b lbl_8022B96C +lbl_8022B7D4: +/* 8022B7D4 00228734 2C 05 00 03 */ cmpwi r5, 3 +/* 8022B7D8 00228738 40 80 01 94 */ bge lbl_8022B96C +/* 8022B7DC 0022873C 48 00 00 D8 */ b lbl_8022B8B4 +lbl_8022B7E0: +/* 8022B7E0 00228740 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8022B7E4 00228744 38 80 00 02 */ li r4, 2 +/* 8022B7E8 00228748 4B F0 F1 F1 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 8022B7EC 0022874C 88 1F 09 89 */ lbz r0, 0x989(r31) +/* 8022B7F0 00228750 38 60 00 00 */ li r3, 0 +/* 8022B7F4 00228754 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8022B7F8 00228758 7F E3 FB 78 */ mr r3, r31 +/* 8022B7FC 0022875C 98 1F 09 89 */ stb r0, 0x989(r31) +/* 8022B800 00228760 4B E2 80 BD */ bl GetMaterialFilter__6CActorCFv +/* 8022B804 00228764 80 03 00 00 */ lwz r0, 0(r3) +/* 8022B808 00228768 38 80 00 01 */ li r4, 1 +/* 8022B80C 0022876C 80 C3 00 04 */ lwz r6, 4(r3) +/* 8022B810 00228770 80 AD 95 6C */ lwz r5, lbl_805A812C@sda21(r13) +/* 8022B814 00228774 90 C1 00 24 */ stw r6, 0x24(r1) +/* 8022B818 00228778 90 01 00 20 */ stw r0, 0x20(r1) +/* 8022B81C 0022877C 80 03 00 08 */ lwz r0, 8(r3) +/* 8022B820 00228780 80 C3 00 0C */ lwz r6, 0xc(r3) +/* 8022B824 00228784 90 C1 00 2C */ stw r6, 0x2c(r1) +/* 8022B828 00228788 90 01 00 28 */ stw r0, 0x28(r1) +/* 8022B82C 0022878C 80 03 00 10 */ lwz r0, 0x10(r3) +/* 8022B830 00228790 38 60 00 00 */ li r3, 0 +/* 8022B834 00228794 90 01 00 30 */ stw r0, 0x30(r1) +/* 8022B838 00228798 48 15 E6 BD */ bl __shl2i +/* 8022B83C 0022879C 80 AD 95 70 */ lwz r5, lbl_805A8130@sda21(r13) +/* 8022B840 002287A0 7C 9D 23 78 */ mr r29, r4 +/* 8022B844 002287A4 7C 7E 1B 78 */ mr r30, r3 +/* 8022B848 002287A8 38 60 00 00 */ li r3, 0 +/* 8022B84C 002287AC 38 80 00 01 */ li r4, 1 +/* 8022B850 002287B0 48 15 E6 A5 */ bl __shl2i +/* 8022B854 002287B4 80 AD 95 74 */ lwz r5, lbl_805A8134@sda21(r13) +/* 8022B858 002287B8 7F BD 23 78 */ or r29, r29, r4 +/* 8022B85C 002287BC 7F DE 1B 78 */ or r30, r30, r3 +/* 8022B860 002287C0 38 60 00 00 */ li r3, 0 +/* 8022B864 002287C4 38 80 00 01 */ li r4, 1 +/* 8022B868 002287C8 48 15 E6 8D */ bl __shl2i +/* 8022B86C 002287CC 80 AD 95 78 */ lwz r5, lbl_805A8138@sda21(r13) +/* 8022B870 002287D0 7F BD 23 78 */ or r29, r29, r4 +/* 8022B874 002287D4 7F DE 1B 78 */ or r30, r30, r3 +/* 8022B878 002287D8 38 60 00 00 */ li r3, 0 +/* 8022B87C 002287DC 38 80 00 01 */ li r4, 1 +/* 8022B880 002287E0 48 15 E6 75 */ bl __shl2i +/* 8022B884 002287E4 80 01 00 28 */ lwz r0, 0x28(r1) +/* 8022B888 002287E8 7F DE 1B 78 */ or r30, r30, r3 +/* 8022B88C 002287EC 7F BD 23 78 */ or r29, r29, r4 +/* 8022B890 002287F0 80 81 00 2C */ lwz r4, 0x2c(r1) +/* 8022B894 002287F4 7C 00 F3 78 */ or r0, r0, r30 +/* 8022B898 002287F8 7F E3 FB 78 */ mr r3, r31 +/* 8022B89C 002287FC 7C 85 EB 78 */ or r5, r4, r29 +/* 8022B8A0 00228800 90 01 00 28 */ stw r0, 0x28(r1) +/* 8022B8A4 00228804 38 81 00 20 */ addi r4, r1, 0x20 +/* 8022B8A8 00228808 90 A1 00 2C */ stw r5, 0x2c(r1) +/* 8022B8AC 0022880C 4B E2 7F F5 */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter +/* 8022B8B0 00228810 48 00 00 BC */ b lbl_8022B96C +lbl_8022B8B4: +/* 8022B8B4 00228814 4B E2 80 09 */ bl GetMaterialFilter__6CActorCFv +/* 8022B8B8 00228818 80 03 00 00 */ lwz r0, 0(r3) +/* 8022B8BC 0022881C 38 80 00 01 */ li r4, 1 +/* 8022B8C0 00228820 80 C3 00 04 */ lwz r6, 4(r3) +/* 8022B8C4 00228824 80 AD 95 7C */ lwz r5, lbl_805A813C@sda21(r13) +/* 8022B8C8 00228828 90 C1 00 0C */ stw r6, 0xc(r1) +/* 8022B8CC 0022882C 90 01 00 08 */ stw r0, 8(r1) +/* 8022B8D0 00228830 80 03 00 08 */ lwz r0, 8(r3) +/* 8022B8D4 00228834 80 C3 00 0C */ lwz r6, 0xc(r3) +/* 8022B8D8 00228838 90 C1 00 14 */ stw r6, 0x14(r1) +/* 8022B8DC 0022883C 90 01 00 10 */ stw r0, 0x10(r1) +/* 8022B8E0 00228840 80 03 00 10 */ lwz r0, 0x10(r3) +/* 8022B8E4 00228844 38 60 00 00 */ li r3, 0 +/* 8022B8E8 00228848 90 01 00 18 */ stw r0, 0x18(r1) +/* 8022B8EC 0022884C 48 15 E6 09 */ bl __shl2i +/* 8022B8F0 00228850 80 AD 95 80 */ lwz r5, lbl_805A8140@sda21(r13) +/* 8022B8F4 00228854 7C 9E 23 78 */ mr r30, r4 +/* 8022B8F8 00228858 7C 7D 1B 78 */ mr r29, r3 +/* 8022B8FC 0022885C 38 60 00 00 */ li r3, 0 +/* 8022B900 00228860 38 80 00 01 */ li r4, 1 +/* 8022B904 00228864 48 15 E5 F1 */ bl __shl2i +/* 8022B908 00228868 80 AD 95 84 */ lwz r5, lbl_805A8144@sda21(r13) +/* 8022B90C 0022886C 7F DE 23 78 */ or r30, r30, r4 +/* 8022B910 00228870 7F BD 1B 78 */ or r29, r29, r3 +/* 8022B914 00228874 38 60 00 00 */ li r3, 0 +/* 8022B918 00228878 38 80 00 01 */ li r4, 1 +/* 8022B91C 0022887C 48 15 E5 D9 */ bl __shl2i +/* 8022B920 00228880 80 AD 95 88 */ lwz r5, lbl_805A8148@sda21(r13) +/* 8022B924 00228884 7F DE 23 78 */ or r30, r30, r4 +/* 8022B928 00228888 7F BD 1B 78 */ or r29, r29, r3 +/* 8022B92C 0022888C 38 60 00 00 */ li r3, 0 +/* 8022B930 00228890 38 80 00 01 */ li r4, 1 +/* 8022B934 00228894 48 15 E5 C1 */ bl __shl2i +/* 8022B938 00228898 7F DE 23 78 */ or r30, r30, r4 +/* 8022B93C 0022889C 7F BD 1B 78 */ or r29, r29, r3 +/* 8022B940 002288A0 80 61 00 10 */ lwz r3, 0x10(r1) +/* 8022B944 002288A4 7F A0 E8 F8 */ nor r0, r29, r29 +/* 8022B948 002288A8 80 A1 00 14 */ lwz r5, 0x14(r1) +/* 8022B94C 002288AC 7F C4 F0 F8 */ nor r4, r30, r30 +/* 8022B950 002288B0 7C 60 00 38 */ and r0, r3, r0 +/* 8022B954 002288B4 7F E3 FB 78 */ mr r3, r31 +/* 8022B958 002288B8 7C A5 20 38 */ and r5, r5, r4 +/* 8022B95C 002288BC 90 01 00 10 */ stw r0, 0x10(r1) +/* 8022B960 002288C0 38 81 00 08 */ addi r4, r1, 8 +/* 8022B964 002288C4 90 A1 00 14 */ stw r5, 0x14(r1) +/* 8022B968 002288C8 4B E2 7F 39 */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter +lbl_8022B96C: +/* 8022B96C 002288CC 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8022B970 002288D0 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 8022B974 002288D4 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 8022B978 002288D8 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 8022B97C 002288DC 7C 08 03 A6 */ mtlr r0 +/* 8022B980 002288E0 38 21 00 50 */ addi r1, r1, 0x50 +/* 8022B984 002288E4 4E 80 00 20 */ blr + +.global Run__12CElitePirateFR13CStateManager9EStateMsgf +Run__12CElitePirateFR13CStateManager9EStateMsgf: +/* 8022B988 002288E8 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 8022B98C 002288EC 7C 08 02 A6 */ mflr r0 +/* 8022B990 002288F0 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 8022B994 002288F4 DB E1 00 C0 */ stfd f31, 0xc0(r1) +/* 8022B998 002288F8 F3 E1 00 C8 */ psq_st f31, 200(r1), 0, qr0 +/* 8022B99C 002288FC 93 E1 00 BC */ stw r31, 0xbc(r1) +/* 8022B9A0 00228900 93 C1 00 B8 */ stw r30, 0xb8(r1) +/* 8022B9A4 00228904 93 A1 00 B4 */ stw r29, 0xb4(r1) +/* 8022B9A8 00228908 7C BD 2B 78 */ mr r29, r5 +/* 8022B9AC 0022890C FF E0 08 90 */ fmr f31, f1 +/* 8022B9B0 00228910 2C 1D 00 01 */ cmpwi r29, 1 +/* 8022B9B4 00228914 7C 7E 1B 78 */ mr r30, r3 +/* 8022B9B8 00228918 7C 9F 23 78 */ mr r31, r4 +/* 8022B9BC 0022891C 41 82 00 9C */ beq lbl_8022BA58 +/* 8022B9C0 00228920 40 80 00 10 */ bge lbl_8022B9D0 +/* 8022B9C4 00228924 2C 1D 00 00 */ cmpwi r29, 0 +/* 8022B9C8 00228928 40 80 00 14 */ bge lbl_8022B9DC +/* 8022B9CC 0022892C 48 00 02 D0 */ b lbl_8022BC9C +lbl_8022B9D0: +/* 8022B9D0 00228930 2C 1D 00 03 */ cmpwi r29, 3 +/* 8022B9D4 00228934 40 80 02 C8 */ bge lbl_8022BC9C +/* 8022B9D8 00228938 48 00 02 94 */ b lbl_8022BC6C +lbl_8022B9DC: +/* 8022B9DC 0022893C 88 1E 09 88 */ lbz r0, 0x988(r30) +/* 8022B9E0 00228940 38 60 00 01 */ li r3, 1 +/* 8022B9E4 00228944 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f +/* 8022B9E8 00228948 38 80 00 01 */ li r4, 1 +/* 8022B9EC 0022894C 98 1E 09 88 */ stb r0, 0x988(r30) +/* 8022B9F0 00228950 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8022B9F4 00228954 4B F0 EF E5 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 8022B9F8 00228958 C0 22 B5 CC */ lfs f1, lbl_805AD2EC@sda21(r2) +/* 8022B9FC 0022895C 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8022BA00 00228960 FC 40 08 90 */ fmr f2, f1 +/* 8022BA04 00228964 38 63 00 04 */ addi r3, r3, 4 +/* 8022BA08 00228968 4B F0 5D E1 */ bl SetSteeringSpeedRange__16CBodyStateCmdMgrFff +/* 8022BA0C 0022896C 80 BF 08 4C */ lwz r5, 0x84c(r31) +/* 8022BA10 00228970 38 7E 06 F8 */ addi r3, r30, 0x6f8 +/* 8022BA14 00228974 38 81 00 0C */ addi r4, r1, 0xc +/* 8022BA18 00228978 A0 05 00 08 */ lhz r0, 8(r5) +/* 8022BA1C 0022897C B0 01 00 08 */ sth r0, 8(r1) +/* 8022BA20 00228980 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8022BA24 00228984 4B F4 97 F5 */ bl SetTarget__13CBoneTrackingF9TUniqueId +/* 8022BA28 00228988 38 7E 06 F8 */ addi r3, r30, 0x6f8 +/* 8022BA2C 0022898C 38 80 00 01 */ li r4, 1 +/* 8022BA30 00228990 4B F4 97 F5 */ bl SetActive__13CBoneTrackingFb +/* 8022BA34 00228994 7F C3 F3 78 */ mr r3, r30 +/* 8022BA38 00228998 7F E4 FB 78 */ mr r4, r31 +/* 8022BA3C 0022899C 4B FF CB F9 */ bl sub_80228634 +/* 8022BA40 002289A0 FC 20 F8 90 */ fmr f1, f31 +/* 8022BA44 002289A4 7F C3 F3 78 */ mr r3, r30 +/* 8022BA48 002289A8 7F E4 FB 78 */ mr r4, r31 +/* 8022BA4C 002289AC 7F A5 EB 78 */ mr r5, r29 +/* 8022BA50 002289B0 4B FC AC 7D */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 8022BA54 002289B4 48 00 02 48 */ b lbl_8022BC9C +lbl_8022BA58: +/* 8022BA58 002289B8 81 83 00 00 */ lwz r12, 0(r3) +/* 8022BA5C 002289BC C0 22 B5 B8 */ lfs f1, lbl_805AD2D8@sda21(r2) +/* 8022BA60 002289C0 81 8C 01 90 */ lwz r12, 0x190(r12) +/* 8022BA64 002289C4 7D 89 03 A6 */ mtctr r12 +/* 8022BA68 002289C8 4E 80 04 21 */ bctrl +/* 8022BA6C 002289CC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022BA70 002289D0 40 82 00 1C */ bne lbl_8022BA8C +/* 8022BA74 002289D4 FC 20 F8 90 */ fmr f1, f31 +/* 8022BA78 002289D8 7F C3 F3 78 */ mr r3, r30 +/* 8022BA7C 002289DC 7F E4 FB 78 */ mr r4, r31 +/* 8022BA80 002289E0 7F A5 EB 78 */ mr r5, r29 +/* 8022BA84 002289E4 4B FC AC 49 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 8022BA88 002289E8 48 00 02 14 */ b lbl_8022BC9C +lbl_8022BA8C: +/* 8022BA8C 002289EC C0 5E 00 38 */ lfs f2, 0x38(r30) +/* 8022BA90 002289F0 38 61 00 58 */ addi r3, r1, 0x58 +/* 8022BA94 002289F4 C0 3E 00 48 */ lfs f1, 0x48(r30) +/* 8022BA98 002289F8 38 9E 08 C0 */ addi r4, r30, 0x8c0 +/* 8022BA9C 002289FC C0 1E 00 58 */ lfs f0, 0x58(r30) +/* 8022BAA0 00228A00 38 A1 00 4C */ addi r5, r1, 0x4c +/* 8022BAA4 00228A04 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 8022BAA8 00228A08 38 C1 00 34 */ addi r6, r1, 0x34 +/* 8022BAAC 00228A0C D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 8022BAB0 00228A10 81 01 00 28 */ lwz r8, 0x28(r1) +/* 8022BAB4 00228A14 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 8022BAB8 00228A18 80 E1 00 2C */ lwz r7, 0x2c(r1) +/* 8022BABC 00228A1C 80 01 00 30 */ lwz r0, 0x30(r1) +/* 8022BAC0 00228A20 91 01 00 34 */ stw r8, 0x34(r1) +/* 8022BAC4 00228A24 90 E1 00 38 */ stw r7, 0x38(r1) +/* 8022BAC8 00228A28 90 01 00 3C */ stw r0, 0x3c(r1) +/* 8022BACC 00228A2C C0 5E 00 40 */ lfs f2, 0x40(r30) +/* 8022BAD0 00228A30 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 8022BAD4 00228A34 C0 1E 00 60 */ lfs f0, 0x60(r30) +/* 8022BAD8 00228A38 D0 41 00 40 */ stfs f2, 0x40(r1) +/* 8022BADC 00228A3C D0 21 00 44 */ stfs f1, 0x44(r1) +/* 8022BAE0 00228A40 81 01 00 40 */ lwz r8, 0x40(r1) +/* 8022BAE4 00228A44 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 8022BAE8 00228A48 80 E1 00 44 */ lwz r7, 0x44(r1) +/* 8022BAEC 00228A4C 80 01 00 48 */ lwz r0, 0x48(r1) +/* 8022BAF0 00228A50 91 01 00 4C */ stw r8, 0x4c(r1) +/* 8022BAF4 00228A54 90 E1 00 50 */ stw r7, 0x50(r1) +/* 8022BAF8 00228A58 90 01 00 54 */ stw r0, 0x54(r1) +/* 8022BAFC 00228A5C 48 07 4C F5 */ bl sub_802a07f0 +/* 8022BB00 00228A60 C0 21 00 58 */ lfs f1, 0x58(r1) +/* 8022BB04 00228A64 38 00 00 00 */ li r0, 0 +/* 8022BB08 00228A68 C0 02 B5 B8 */ lfs f0, lbl_805AD2D8@sda21(r2) +/* 8022BB0C 00228A6C C0 81 00 5C */ lfs f4, 0x5c(r1) +/* 8022BB10 00228A70 FC 00 08 00 */ fcmpu cr0, f0, f1 +/* 8022BB14 00228A74 C0 A1 00 60 */ lfs f5, 0x60(r1) +/* 8022BB18 00228A78 40 82 00 14 */ bne lbl_8022BB2C +/* 8022BB1C 00228A7C FC 00 20 00 */ fcmpu cr0, f0, f4 +/* 8022BB20 00228A80 40 82 00 0C */ bne lbl_8022BB2C +/* 8022BB24 00228A84 FC 00 28 00 */ fcmpu cr0, f0, f5 +/* 8022BB28 00228A88 41 82 00 08 */ beq lbl_8022BB30 +lbl_8022BB2C: +/* 8022BB2C 00228A8C 38 00 00 01 */ li r0, 1 +lbl_8022BB30: +/* 8022BB30 00228A90 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 8022BB34 00228A94 41 82 00 48 */ beq lbl_8022BB7C +/* 8022BB38 00228A98 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8022BB3C 00228A9C C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) +/* 8022BB40 00228AA0 C0 02 B5 CC */ lfs f0, lbl_805AD2EC@sda21(r2) +/* 8022BB44 00228AA4 38 81 00 8C */ addi r4, r1, 0x8c +/* 8022BB48 00228AA8 D0 21 00 8C */ stfs f1, 0x8c(r1) +/* 8022BB4C 00228AAC C0 43 00 04 */ lfs f2, 4(r3) +/* 8022BB50 00228AB0 C0 23 00 08 */ lfs f1, 8(r3) +/* 8022BB54 00228AB4 D0 81 00 90 */ stfs f4, 0x90(r1) +/* 8022BB58 00228AB8 D0 A1 00 94 */ stfs f5, 0x94(r1) +/* 8022BB5C 00228ABC D0 61 00 98 */ stfs f3, 0x98(r1) +/* 8022BB60 00228AC0 D0 41 00 9C */ stfs f2, 0x9c(r1) +/* 8022BB64 00228AC4 D0 21 00 A0 */ stfs f1, 0xa0(r1) +/* 8022BB68 00228AC8 D0 01 00 A4 */ stfs f0, 0xa4(r1) +/* 8022BB6C 00228ACC 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8022BB70 00228AD0 38 63 00 04 */ addi r3, r3, 4 +/* 8022BB74 00228AD4 4B F0 5B A5 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 8022BB78 00228AD8 48 00 01 24 */ b lbl_8022BC9C +lbl_8022BB7C: +/* 8022BB7C 00228ADC 7F C3 F3 78 */ mr r3, r30 +/* 8022BB80 00228AE0 7F E4 FB 78 */ mr r4, r31 +/* 8022BB84 00228AE4 81 9E 00 00 */ lwz r12, 0(r30) +/* 8022BB88 00228AE8 C0 22 B5 B8 */ lfs f1, lbl_805AD2D8@sda21(r2) +/* 8022BB8C 00228AEC 81 8C 01 E8 */ lwz r12, 0x1e8(r12) +/* 8022BB90 00228AF0 7D 89 03 A6 */ mtctr r12 +/* 8022BB94 00228AF4 4E 80 04 21 */ bctrl +/* 8022BB98 00228AF8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022BB9C 00228AFC 41 82 01 00 */ beq lbl_8022BC9C +/* 8022BBA0 00228B00 80 DE 00 64 */ lwz r6, 0x64(r30) +/* 8022BBA4 00228B04 7F E5 FB 78 */ mr r5, r31 +/* 8022BBA8 00228B08 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 8022BBAC 00228B0C 38 61 00 1C */ addi r3, r1, 0x1c +/* 8022BBB0 00228B10 80 C6 00 10 */ lwz r6, 0x10(r6) +/* 8022BBB4 00228B14 81 84 00 00 */ lwz r12, 0(r4) +/* 8022BBB8 00228B18 C0 22 B5 BC */ lfs f1, lbl_805AD2DC@sda21(r2) +/* 8022BBBC 00228B1C C0 06 02 00 */ lfs f0, 0x200(r6) +/* 8022BBC0 00228B20 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 8022BBC4 00228B24 EC 21 00 32 */ fmuls f1, f1, f0 +/* 8022BBC8 00228B28 7D 89 03 A6 */ mtctr r12 +/* 8022BBCC 00228B2C 4E 80 04 21 */ bctrl +/* 8022BBD0 00228B30 C0 21 00 20 */ lfs f1, 0x20(r1) +/* 8022BBD4 00228B34 38 61 00 64 */ addi r3, r1, 0x64 +/* 8022BBD8 00228B38 C0 1E 00 50 */ lfs f0, 0x50(r30) +/* 8022BBDC 00228B3C C0 61 00 24 */ lfs f3, 0x24(r1) +/* 8022BBE0 00228B40 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 8022BBE4 00228B44 EC 81 00 28 */ fsubs f4, f1, f0 +/* 8022BBE8 00228B48 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 8022BBEC 00228B4C C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 8022BBF0 00228B50 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8022BBF4 00228B54 D0 81 00 68 */ stfs f4, 0x68(r1) +/* 8022BBF8 00228B58 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8022BBFC 00228B5C D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 8022BC00 00228B60 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 8022BC04 00228B64 48 0E 8A F5 */ bl CanBeNormalized__9CVector3fCFv +/* 8022BC08 00228B68 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022BC0C 00228B6C 41 82 00 90 */ beq lbl_8022BC9C +/* 8022BC10 00228B70 38 61 00 10 */ addi r3, r1, 0x10 +/* 8022BC14 00228B74 38 81 00 64 */ addi r4, r1, 0x64 +/* 8022BC18 00228B78 48 0E 8C 39 */ bl AsNormalized__9CVector3fCFv +/* 8022BC1C 00228B7C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8022BC20 00228B80 C4 C3 66 A0 */ lfsu f6, skZero3f@l(r3) +/* 8022BC24 00228B84 C0 61 00 10 */ lfs f3, 0x10(r1) +/* 8022BC28 00228B88 38 81 00 70 */ addi r4, r1, 0x70 +/* 8022BC2C 00228B8C C0 41 00 14 */ lfs f2, 0x14(r1) +/* 8022BC30 00228B90 C0 A3 00 04 */ lfs f5, 4(r3) +/* 8022BC34 00228B94 C0 83 00 08 */ lfs f4, 8(r3) +/* 8022BC38 00228B98 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 8022BC3C 00228B9C C0 02 B5 CC */ lfs f0, lbl_805AD2EC@sda21(r2) +/* 8022BC40 00228BA0 D0 C1 00 70 */ stfs f6, 0x70(r1) +/* 8022BC44 00228BA4 D0 A1 00 74 */ stfs f5, 0x74(r1) +/* 8022BC48 00228BA8 D0 81 00 78 */ stfs f4, 0x78(r1) +/* 8022BC4C 00228BAC D0 61 00 7C */ stfs f3, 0x7c(r1) +/* 8022BC50 00228BB0 D0 41 00 80 */ stfs f2, 0x80(r1) +/* 8022BC54 00228BB4 D0 21 00 84 */ stfs f1, 0x84(r1) +/* 8022BC58 00228BB8 D0 01 00 88 */ stfs f0, 0x88(r1) +/* 8022BC5C 00228BBC 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8022BC60 00228BC0 38 63 00 04 */ addi r3, r3, 4 +/* 8022BC64 00228BC4 4B F0 5A B5 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 8022BC68 00228BC8 48 00 00 34 */ b lbl_8022BC9C +lbl_8022BC6C: +/* 8022BC6C 00228BCC 88 1E 09 88 */ lbz r0, 0x988(r30) +/* 8022BC70 00228BD0 38 60 00 00 */ li r3, 0 +/* 8022BC74 00228BD4 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f +/* 8022BC78 00228BD8 38 7E 06 F8 */ addi r3, r30, 0x6f8 +/* 8022BC7C 00228BDC 98 1E 09 88 */ stb r0, 0x988(r30) +/* 8022BC80 00228BE0 38 80 00 00 */ li r4, 0 +/* 8022BC84 00228BE4 4B F4 95 A1 */ bl SetActive__13CBoneTrackingFb +/* 8022BC88 00228BE8 C0 3E 07 A4 */ lfs f1, 0x7a4(r30) +/* 8022BC8C 00228BEC 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8022BC90 00228BF0 FC 40 08 90 */ fmr f2, f1 +/* 8022BC94 00228BF4 38 63 00 04 */ addi r3, r3, 4 +/* 8022BC98 00228BF8 4B F0 5B 51 */ bl SetSteeringSpeedRange__16CBodyStateCmdMgrFff +lbl_8022BC9C: +/* 8022BC9C 00228BFC E3 E1 00 C8 */ psq_l f31, 200(r1), 0, qr0 +/* 8022BCA0 00228C00 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 8022BCA4 00228C04 CB E1 00 C0 */ lfd f31, 0xc0(r1) +/* 8022BCA8 00228C08 83 E1 00 BC */ lwz r31, 0xbc(r1) +/* 8022BCAC 00228C0C 83 C1 00 B8 */ lwz r30, 0xb8(r1) +/* 8022BCB0 00228C10 83 A1 00 B4 */ lwz r29, 0xb4(r1) +/* 8022BCB4 00228C14 7C 08 03 A6 */ mtlr r0 +/* 8022BCB8 00228C18 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 8022BCBC 00228C1C 4E 80 00 20 */ blr + +.global sub_8022bcc0 +sub_8022bcc0: +/* 8022BCC0 00228C20 80 03 05 68 */ lwz r0, 0x568(r3) +/* 8022BCC4 00228C24 20 00 00 03 */ subfic r0, r0, 3 +/* 8022BCC8 00228C28 7C 00 00 34 */ cntlzw r0, r0 +/* 8022BCCC 00228C2C 54 03 D9 7E */ srwi r3, r0, 5 +/* 8022BCD0 00228C30 4E 80 00 20 */ blr + +.global AggressionCheck__12CElitePirateFR13CStateManagerf +AggressionCheck__12CElitePirateFR13CStateManagerf: +/* 8022BCD4 00228C34 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8022BCD8 00228C38 7C 08 02 A6 */ mflr r0 +/* 8022BCDC 00228C3C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8022BCE0 00228C40 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8022BCE4 00228C44 7C 9F 23 78 */ mr r31, r4 +/* 8022BCE8 00228C48 93 C1 00 08 */ stw r30, 8(r1) +/* 8022BCEC 00228C4C 7C 7E 1B 78 */ mr r30, r3 +/* 8022BCF0 00228C50 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8022BCF4 00228C54 A0 A3 07 72 */ lhz r5, 0x772(r3) +/* 8022BCF8 00228C58 7C 05 00 40 */ cmplw r5, r0 +/* 8022BCFC 00228C5C 40 82 00 84 */ bne lbl_8022BD80 +/* 8022BD00 00228C60 81 83 00 00 */ lwz r12, 0(r3) +/* 8022BD04 00228C64 81 8C 01 90 */ lwz r12, 0x190(r12) +/* 8022BD08 00228C68 7D 89 03 A6 */ mtctr r12 +/* 8022BD0C 00228C6C 4E 80 04 21 */ bctrl +/* 8022BD10 00228C70 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022BD14 00228C74 40 82 00 6C */ bne lbl_8022BD80 +/* 8022BD18 00228C78 88 1E 09 88 */ lbz r0, 0x988(r30) +/* 8022BD1C 00228C7C 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 8022BD20 00228C80 40 82 00 58 */ bne lbl_8022BD78 +/* 8022BD24 00228C84 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8022BD28 00228C88 C0 1E 00 50 */ lfs f0, 0x50(r30) +/* 8022BD2C 00228C8C C0 23 00 50 */ lfs f1, 0x50(r3) +/* 8022BD30 00228C90 C0 63 00 40 */ lfs f3, 0x40(r3) +/* 8022BD34 00228C94 EC 81 00 28 */ fsubs f4, f1, f0 +/* 8022BD38 00228C98 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 8022BD3C 00228C9C C0 43 00 60 */ lfs f2, 0x60(r3) +/* 8022BD40 00228CA0 C0 1E 00 60 */ lfs f0, 0x60(r30) +/* 8022BD44 00228CA4 EC 63 08 28 */ fsubs f3, f3, f1 +/* 8022BD48 00228CA8 EC 24 01 32 */ fmuls f1, f4, f4 +/* 8022BD4C 00228CAC C0 9E 03 00 */ lfs f4, 0x300(r30) +/* 8022BD50 00228CB0 EC 42 00 28 */ fsubs f2, f2, f0 +/* 8022BD54 00228CB4 C0 02 B6 04 */ lfs f0, lbl_805AD324@sda21(r2) +/* 8022BD58 00228CB8 EC 23 08 FA */ fmadds f1, f3, f3, f1 +/* 8022BD5C 00228CBC EC 00 01 32 */ fmuls f0, f0, f4 +/* 8022BD60 00228CC0 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 8022BD64 00228CC4 EC 00 01 32 */ fmuls f0, f0, f4 +/* 8022BD68 00228CC8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8022BD6C 00228CCC 7C 00 00 26 */ mfcr r0 +/* 8022BD70 00228CD0 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f +/* 8022BD74 00228CD4 48 00 00 10 */ b lbl_8022BD84 +lbl_8022BD78: +/* 8022BD78 00228CD8 38 60 00 01 */ li r3, 1 +/* 8022BD7C 00228CDC 48 00 00 08 */ b lbl_8022BD84 +lbl_8022BD80: +/* 8022BD80 00228CE0 38 60 00 00 */ li r3, 0 +lbl_8022BD84: +/* 8022BD84 00228CE4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8022BD88 00228CE8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8022BD8C 00228CEC 83 C1 00 08 */ lwz r30, 8(r1) +/* 8022BD90 00228CF0 7C 08 03 A6 */ mtlr r0 +/* 8022BD94 00228CF4 38 21 00 10 */ addi r1, r1, 0x10 +/* 8022BD98 00228CF8 4E 80 00 20 */ blr + +.global TooClose__12CElitePirateFR13CStateManagerf +TooClose__12CElitePirateFR13CStateManagerf: +/* 8022BD9C 00228CFC 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 8022BDA0 00228D00 C0 03 02 FC */ lfs f0, 0x2fc(r3) +/* 8022BDA4 00228D04 C0 43 00 50 */ lfs f2, 0x50(r3) +/* 8022BDA8 00228D08 C0 24 00 50 */ lfs f1, 0x50(r4) +/* 8022BDAC 00228D0C EC 00 00 32 */ fmuls f0, f0, f0 +/* 8022BDB0 00228D10 C0 83 00 40 */ lfs f4, 0x40(r3) +/* 8022BDB4 00228D14 EC A2 08 28 */ fsubs f5, f2, f1 +/* 8022BDB8 00228D18 C0 24 00 40 */ lfs f1, 0x40(r4) +/* 8022BDBC 00228D1C C0 63 00 60 */ lfs f3, 0x60(r3) +/* 8022BDC0 00228D20 EC 84 08 28 */ fsubs f4, f4, f1 +/* 8022BDC4 00228D24 C0 44 00 60 */ lfs f2, 0x60(r4) +/* 8022BDC8 00228D28 EC 25 01 72 */ fmuls f1, f5, f5 +/* 8022BDCC 00228D2C EC 43 10 28 */ fsubs f2, f3, f2 +/* 8022BDD0 00228D30 EC 24 09 3A */ fmadds f1, f4, f4, f1 +/* 8022BDD4 00228D34 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 8022BDD8 00228D38 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8022BDDC 00228D3C 7C 00 00 26 */ mfcr r0 +/* 8022BDE0 00228D40 54 03 0F FE */ srwi r3, r0, 0x1f +/* 8022BDE4 00228D44 4E 80 00 20 */ blr + +.global InPosition__12CElitePirateFR13CStateManagerf +InPosition__12CElitePirateFR13CStateManagerf: +/* 8022BDE8 00228D48 C0 23 08 B8 */ lfs f1, 0x8b8(r3) +/* 8022BDEC 00228D4C C0 03 00 50 */ lfs f0, 0x50(r3) +/* 8022BDF0 00228D50 C0 63 08 B4 */ lfs f3, 0x8b4(r3) +/* 8022BDF4 00228D54 EC 21 00 28 */ fsubs f1, f1, f0 +/* 8022BDF8 00228D58 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 8022BDFC 00228D5C C0 43 08 BC */ lfs f2, 0x8bc(r3) +/* 8022BE00 00228D60 EC 63 00 28 */ fsubs f3, f3, f0 +/* 8022BE04 00228D64 C0 03 00 60 */ lfs f0, 0x60(r3) +/* 8022BE08 00228D68 EC 21 00 72 */ fmuls f1, f1, f1 +/* 8022BE0C 00228D6C EC 42 00 28 */ fsubs f2, f2, f0 +/* 8022BE10 00228D70 C0 02 B6 00 */ lfs f0, lbl_805AD320@sda21(r2) +/* 8022BE14 00228D74 EC 23 08 FA */ fmadds f1, f3, f3, f1 +/* 8022BE18 00228D78 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 8022BE1C 00228D7C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8022BE20 00228D80 7C 00 00 26 */ mfcr r0 +/* 8022BE24 00228D84 54 03 0F FE */ srwi r3, r0, 0x1f +/* 8022BE28 00228D88 4E 80 00 20 */ blr + +.global ShotAt__12CElitePirateFR13CStateManagerf +ShotAt__12CElitePirateFR13CStateManagerf: +/* 8022BE2C 00228D8C 88 03 09 88 */ lbz r0, 0x988(r3) +/* 8022BE30 00228D90 54 03 E7 FE */ rlwinm r3, r0, 0x1c, 0x1f, 0x1f +/* 8022BE34 00228D94 4E 80 00 20 */ blr + +.global sub_8022be38 +sub_8022be38: +/* 8022BE38 00228D98 88 03 09 88 */ lbz r0, 0x988(r3) +/* 8022BE3C 00228D9C 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 8022BE40 00228DA0 40 82 00 3C */ bne lbl_8022BE7C +/* 8022BE44 00228DA4 A0 85 00 00 */ lhz r4, 0(r5) +/* 8022BE48 00228DA8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8022BE4C 00228DAC 7C 04 00 40 */ cmplw r4, r0 +/* 8022BE50 00228DB0 40 82 00 2C */ bne lbl_8022BE7C +/* 8022BE54 00228DB4 88 03 06 F6 */ lbz r0, 0x6f6(r3) +/* 8022BE58 00228DB8 28 00 00 00 */ cmplwi r0, 0 +/* 8022BE5C 00228DBC 41 82 00 20 */ beq lbl_8022BE7C +/* 8022BE60 00228DC0 C0 23 07 A8 */ lfs f1, 0x7a8(r3) +/* 8022BE64 00228DC4 C0 02 B5 C8 */ lfs f0, lbl_805AD2E8@sda21(r2) +/* 8022BE68 00228DC8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8022BE6C 00228DCC 4C 41 13 82 */ cror 2, 1, 2 +/* 8022BE70 00228DD0 7C 00 00 26 */ mfcr r0 +/* 8022BE74 00228DD4 54 03 1F FE */ rlwinm r3, r0, 3, 0x1f, 0x1f +/* 8022BE78 00228DD8 4E 80 00 20 */ blr +lbl_8022BE7C: +/* 8022BE7C 00228DDC 38 60 00 00 */ li r3, 0 +/* 8022BE80 00228DE0 4E 80 00 20 */ blr + +.global ShouldCallForBackup__12CElitePirateFR13CStateManagerf +ShouldCallForBackup__12CElitePirateFR13CStateManagerf: +/* 8022BE84 00228DE4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8022BE88 00228DE8 7C 08 02 A6 */ mflr r0 +/* 8022BE8C 00228DEC 90 01 00 14 */ stw r0, 0x14(r1) +/* 8022BE90 00228DF0 38 A1 00 08 */ addi r5, r1, 8 +/* 8022BE94 00228DF4 A0 03 07 72 */ lhz r0, 0x772(r3) +/* 8022BE98 00228DF8 B0 01 00 08 */ sth r0, 8(r1) +/* 8022BE9C 00228DFC 4B FF FF 9D */ bl sub_8022be38 +/* 8022BEA0 00228E00 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8022BEA4 00228E04 7C 08 03 A6 */ mtlr r0 +/* 8022BEA8 00228E08 38 21 00 10 */ addi r1, r1, 0x10 +/* 8022BEAC 00228E0C 4E 80 00 20 */ blr + +.global ShouldSpecialAttack__12CElitePirateFR13CStateManagerf +ShouldSpecialAttack__12CElitePirateFR13CStateManagerf: +/* 8022BEB0 00228E10 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8022BEB4 00228E14 7C 08 02 A6 */ mflr r0 +/* 8022BEB8 00228E18 C0 22 B5 B8 */ lfs f1, lbl_805AD2D8@sda21(r2) +/* 8022BEBC 00228E1C 7C 85 23 78 */ mr r5, r4 +/* 8022BEC0 00228E20 90 01 00 24 */ stw r0, 0x24(r1) +/* 8022BEC4 00228E24 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8022BEC8 00228E28 7C 7F 1B 78 */ mr r31, r3 +/* 8022BECC 00228E2C C0 03 07 B8 */ lfs f0, 0x7b8(r3) +/* 8022BED0 00228E30 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 8022BED4 00228E34 4C 40 13 82 */ cror 2, 0, 2 +/* 8022BED8 00228E38 40 82 00 A0 */ bne lbl_8022BF78 +/* 8022BEDC 00228E3C 80 85 08 4C */ lwz r4, 0x84c(r5) +/* 8022BEE0 00228E40 80 7F 00 04 */ lwz r3, 4(r31) +/* 8022BEE4 00228E44 80 04 00 04 */ lwz r0, 4(r4) +/* 8022BEE8 00228E48 7C 03 00 00 */ cmpw r3, r0 +/* 8022BEEC 00228E4C 40 82 00 8C */ bne lbl_8022BF78 +/* 8022BEF0 00228E50 81 84 00 00 */ lwz r12, 0(r4) +/* 8022BEF4 00228E54 38 61 00 08 */ addi r3, r1, 8 +/* 8022BEF8 00228E58 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 8022BEFC 00228E5C 7D 89 03 A6 */ mtctr r12 +/* 8022BF00 00228E60 4E 80 04 21 */ bctrl +/* 8022BF04 00228E64 C0 21 00 0C */ lfs f1, 0xc(r1) +/* 8022BF08 00228E68 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 8022BF0C 00228E6C C0 5F 02 FC */ lfs f2, 0x2fc(r31) +/* 8022BF10 00228E70 EC A1 00 28 */ fsubs f5, f1, f0 +/* 8022BF14 00228E74 C0 81 00 08 */ lfs f4, 8(r1) +/* 8022BF18 00228E78 C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 8022BF1C 00228E7C EC 02 00 B2 */ fmuls f0, f2, f2 +/* 8022BF20 00228E80 C0 61 00 10 */ lfs f3, 0x10(r1) +/* 8022BF24 00228E84 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 8022BF28 00228E88 EC 84 08 28 */ fsubs f4, f4, f1 +/* 8022BF2C 00228E8C EC 25 01 72 */ fmuls f1, f5, f5 +/* 8022BF30 00228E90 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8022BF34 00228E94 EC 24 09 3A */ fmadds f1, f4, f4, f1 +/* 8022BF38 00228E98 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 8022BF3C 00228E9C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8022BF40 00228EA0 4C 41 13 82 */ cror 2, 1, 2 +/* 8022BF44 00228EA4 40 82 00 34 */ bne lbl_8022BF78 +/* 8022BF48 00228EA8 C0 1F 03 00 */ lfs f0, 0x300(r31) +/* 8022BF4C 00228EAC EC 00 00 32 */ fmuls f0, f0, f0 +/* 8022BF50 00228EB0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8022BF54 00228EB4 4C 40 13 82 */ cror 2, 0, 2 +/* 8022BF58 00228EB8 40 82 00 20 */ bne lbl_8022BF78 +/* 8022BF5C 00228EBC FC 20 12 10 */ fabs f1, f2 +/* 8022BF60 00228EC0 C0 02 B5 C8 */ lfs f0, lbl_805AD2E8@sda21(r2) +/* 8022BF64 00228EC4 FC 20 08 18 */ frsp f1, f1 +/* 8022BF68 00228EC8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8022BF6C 00228ECC 7C 00 00 26 */ mfcr r0 +/* 8022BF70 00228ED0 54 03 0F FE */ srwi r3, r0, 0x1f +/* 8022BF74 00228ED4 48 00 00 08 */ b lbl_8022BF7C +lbl_8022BF78: +/* 8022BF78 00228ED8 38 60 00 00 */ li r3, 0 +lbl_8022BF7C: +/* 8022BF7C 00228EDC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8022BF80 00228EE0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8022BF84 00228EE4 7C 08 03 A6 */ mtlr r0 +/* 8022BF88 00228EE8 38 21 00 20 */ addi r1, r1, 0x20 +/* 8022BF8C 00228EEC 4E 80 00 20 */ blr + +.global ShouldAttack__12CElitePirateFR13CStateManagerf +ShouldAttack__12CElitePirateFR13CStateManagerf: +/* 8022BF90 00228EF0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8022BF94 00228EF4 7C 08 02 A6 */ mflr r0 +/* 8022BF98 00228EF8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8022BF9C 00228EFC 80 A4 08 4C */ lwz r5, 0x84c(r4) +/* 8022BFA0 00228F00 C0 03 02 FC */ lfs f0, 0x2fc(r3) +/* 8022BFA4 00228F04 C0 45 00 50 */ lfs f2, 0x50(r5) +/* 8022BFA8 00228F08 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 8022BFAC 00228F0C EC 00 00 32 */ fmuls f0, f0, f0 +/* 8022BFB0 00228F10 C0 85 00 40 */ lfs f4, 0x40(r5) +/* 8022BFB4 00228F14 EC A2 08 28 */ fsubs f5, f2, f1 +/* 8022BFB8 00228F18 C0 23 00 40 */ lfs f1, 0x40(r3) +/* 8022BFBC 00228F1C C0 65 00 60 */ lfs f3, 0x60(r5) +/* 8022BFC0 00228F20 EC 84 08 28 */ fsubs f4, f4, f1 +/* 8022BFC4 00228F24 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 8022BFC8 00228F28 EC 25 01 72 */ fmuls f1, f5, f5 +/* 8022BFCC 00228F2C EC 43 10 28 */ fsubs f2, f3, f2 +/* 8022BFD0 00228F30 EC 24 09 3A */ fmadds f1, f4, f4, f1 +/* 8022BFD4 00228F34 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 8022BFD8 00228F38 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8022BFDC 00228F3C 4C 40 13 82 */ cror 2, 0, 2 +/* 8022BFE0 00228F40 40 82 00 28 */ bne lbl_8022C008 +/* 8022BFE4 00228F44 81 83 00 00 */ lwz r12, 0(r3) +/* 8022BFE8 00228F48 C0 22 B5 B8 */ lfs f1, lbl_805AD2D8@sda21(r2) +/* 8022BFEC 00228F4C 81 8C 01 E8 */ lwz r12, 0x1e8(r12) +/* 8022BFF0 00228F50 7D 89 03 A6 */ mtctr r12 +/* 8022BFF4 00228F54 4E 80 04 21 */ bctrl +/* 8022BFF8 00228F58 54 60 06 3E */ clrlwi r0, r3, 0x18 +/* 8022BFFC 00228F5C 7C 00 00 34 */ cntlzw r0, r0 +/* 8022C000 00228F60 54 03 D9 7E */ srwi r3, r0, 5 +/* 8022C004 00228F64 48 00 00 08 */ b lbl_8022C00C +lbl_8022C008: +/* 8022C008 00228F68 38 60 00 00 */ li r3, 0 +lbl_8022C00C: +/* 8022C00C 00228F6C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8022C010 00228F70 7C 08 03 A6 */ mtlr r0 +/* 8022C014 00228F74 38 21 00 10 */ addi r1, r1, 0x10 +/* 8022C018 00228F78 4E 80 00 20 */ blr + +.global sub_8022c01c +sub_8022c01c: +/* 8022C01C 00228F7C 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 8022C020 00228F80 7C 08 02 A6 */ mflr r0 +/* 8022C024 00228F84 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 8022C028 00228F88 DB E1 00 A0 */ stfd f31, 0xa0(r1) +/* 8022C02C 00228F8C F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0 +/* 8022C030 00228F90 93 E1 00 9C */ stw r31, 0x9c(r1) +/* 8022C034 00228F94 93 C1 00 98 */ stw r30, 0x98(r1) +/* 8022C038 00228F98 93 A1 00 94 */ stw r29, 0x94(r1) +/* 8022C03C 00228F9C 7C 7D 1B 78 */ mr r29, r3 +/* 8022C040 00228FA0 C0 02 B5 B8 */ lfs f0, lbl_805AD2D8@sda21(r2) +/* 8022C044 00228FA4 C0 23 07 B8 */ lfs f1, 0x7b8(r3) +/* 8022C048 00228FA8 7C 9E 23 78 */ mr r30, r4 +/* 8022C04C 00228FAC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8022C050 00228FB0 4C 40 13 82 */ cror 2, 0, 2 +/* 8022C054 00228FB4 40 82 02 08 */ bne lbl_8022C25C +/* 8022C058 00228FB8 A0 65 00 00 */ lhz r3, 0(r5) +/* 8022C05C 00228FBC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8022C060 00228FC0 7C 03 00 40 */ cmplw r3, r0 +/* 8022C064 00228FC4 41 82 01 F8 */ beq lbl_8022C25C +/* 8022C068 00228FC8 B0 61 00 08 */ sth r3, 8(r1) +/* 8022C06C 00228FCC 7F C3 F3 78 */ mr r3, r30 +/* 8022C070 00228FD0 38 81 00 08 */ addi r4, r1, 8 +/* 8022C074 00228FD4 4B E2 05 31 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8022C078 00228FD8 7C 7F 1B 79 */ or. r31, r3, r3 +/* 8022C07C 00228FDC 41 82 01 E0 */ beq lbl_8022C25C +/* 8022C080 00228FE0 80 9E 08 4C */ lwz r4, 0x84c(r30) +/* 8022C084 00228FE4 7F C5 F3 78 */ mr r5, r30 +/* 8022C088 00228FE8 38 61 00 38 */ addi r3, r1, 0x38 +/* 8022C08C 00228FEC C0 22 B5 B8 */ lfs f1, lbl_805AD2D8@sda21(r2) +/* 8022C090 00228FF0 81 84 00 00 */ lwz r12, 0(r4) +/* 8022C094 00228FF4 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 8022C098 00228FF8 7D 89 03 A6 */ mtctr r12 +/* 8022C09C 00228FFC 4E 80 04 21 */ bctrl +/* 8022C0A0 00229000 C0 81 00 38 */ lfs f4, 0x38(r1) +/* 8022C0A4 00229004 C0 61 00 3C */ lfs f3, 0x3c(r1) +/* 8022C0A8 00229008 C0 41 00 40 */ lfs f2, 0x40(r1) +/* 8022C0AC 0022900C D0 81 00 84 */ stfs f4, 0x84(r1) +/* 8022C0B0 00229010 D0 61 00 88 */ stfs f3, 0x88(r1) +/* 8022C0B4 00229014 D0 41 00 8C */ stfs f2, 0x8c(r1) +/* 8022C0B8 00229018 C0 1D 00 50 */ lfs f0, 0x50(r29) +/* 8022C0BC 0022901C C0 3D 00 40 */ lfs f1, 0x40(r29) +/* 8022C0C0 00229020 EC 63 00 28 */ fsubs f3, f3, f0 +/* 8022C0C4 00229024 C0 1D 00 60 */ lfs f0, 0x60(r29) +/* 8022C0C8 00229028 EC 84 08 28 */ fsubs f4, f4, f1 +/* 8022C0CC 0022902C C0 BD 03 00 */ lfs f5, 0x300(r29) +/* 8022C0D0 00229030 EC 42 00 28 */ fsubs f2, f2, f0 +/* 8022C0D4 00229034 EC 23 00 F2 */ fmuls f1, f3, f3 +/* 8022C0D8 00229038 EC 05 01 72 */ fmuls f0, f5, f5 +/* 8022C0DC 0022903C EC 24 09 3A */ fmadds f1, f4, f4, f1 +/* 8022C0E0 00229040 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 8022C0E4 00229044 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8022C0E8 00229048 4C 41 13 82 */ cror 2, 1, 2 +/* 8022C0EC 0022904C 40 82 01 70 */ bne lbl_8022C25C +/* 8022C0F0 00229050 7F A3 EB 78 */ mr r3, r29 +/* 8022C0F4 00229054 7F C4 F3 78 */ mr r4, r30 +/* 8022C0F8 00229058 81 9D 00 00 */ lwz r12, 0(r29) +/* 8022C0FC 0022905C C0 22 B5 B8 */ lfs f1, lbl_805AD2D8@sda21(r2) +/* 8022C100 00229060 81 8C 01 E8 */ lwz r12, 0x1e8(r12) +/* 8022C104 00229064 7D 89 03 A6 */ mtctr r12 +/* 8022C108 00229068 4E 80 04 21 */ bctrl +/* 8022C10C 0022906C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022C110 00229070 40 82 01 4C */ bne lbl_8022C25C +/* 8022C114 00229074 7F A4 EB 78 */ mr r4, r29 +/* 8022C118 00229078 7F E5 FB 78 */ mr r5, r31 +/* 8022C11C 0022907C 38 61 00 2C */ addi r3, r1, 0x2c +/* 8022C120 00229080 4B FF C7 45 */ bl sub_80228864 +/* 8022C124 00229084 C0 41 00 2C */ lfs f2, 0x2c(r1) +/* 8022C128 00229088 7F A3 EB 78 */ mr r3, r29 +/* 8022C12C 0022908C C0 21 00 30 */ lfs f1, 0x30(r1) +/* 8022C130 00229090 7F C4 F3 78 */ mr r4, r30 +/* 8022C134 00229094 C0 01 00 34 */ lfs f0, 0x34(r1) +/* 8022C138 00229098 38 A1 00 78 */ addi r5, r1, 0x78 +/* 8022C13C 0022909C D0 41 00 78 */ stfs f2, 0x78(r1) +/* 8022C140 002290A0 38 C1 00 84 */ addi r6, r1, 0x84 +/* 8022C144 002290A4 D0 21 00 7C */ stfs f1, 0x7c(r1) +/* 8022C148 002290A8 D0 01 00 80 */ stfs f0, 0x80(r1) +/* 8022C14C 002290AC 4B FC 8C 85 */ bl IsPatternObstructed__10CPatternedCFR13CStateManagerRC9CVector3fRC9CVector3f +/* 8022C150 002290B0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022C154 002290B4 40 82 01 08 */ bne lbl_8022C25C +/* 8022C158 002290B8 C0 1D 06 C0 */ lfs f0, 0x6c0(r29) +/* 8022C15C 002290BC 7F C4 F3 78 */ mr r4, r30 +/* 8022C160 002290C0 38 61 00 20 */ addi r3, r1, 0x20 +/* 8022C164 002290C4 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 8022C168 002290C8 C0 1D 06 B8 */ lfs f0, 0x6b8(r29) +/* 8022C16C 002290CC D0 01 00 0C */ stfs f0, 0xc(r1) +/* 8022C170 002290D0 C0 3D 06 C4 */ lfs f1, 0x6c4(r29) +/* 8022C174 002290D4 C0 5D 06 C0 */ lfs f2, 0x6c0(r29) +/* 8022C178 002290D8 C0 7D 06 BC */ lfs f3, 0x6bc(r29) +/* 8022C17C 002290DC C0 1D 06 B8 */ lfs f0, 0x6b8(r29) +/* 8022C180 002290E0 D0 01 00 68 */ stfs f0, 0x68(r1) +/* 8022C184 002290E4 D0 61 00 6C */ stfs f3, 0x6c(r1) +/* 8022C188 002290E8 D0 41 00 70 */ stfs f2, 0x70(r1) +/* 8022C18C 002290EC D0 21 00 74 */ stfs f1, 0x74(r1) +/* 8022C190 002290F0 48 00 46 D5 */ bl sub_80230864 +/* 8022C194 002290F4 C0 41 00 20 */ lfs f2, 0x20(r1) +/* 8022C198 002290F8 38 61 00 5C */ addi r3, r1, 0x5c +/* 8022C19C 002290FC C0 21 00 24 */ lfs f1, 0x24(r1) +/* 8022C1A0 00229100 38 81 00 78 */ addi r4, r1, 0x78 +/* 8022C1A4 00229104 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 8022C1A8 00229108 38 A1 00 68 */ addi r5, r1, 0x68 +/* 8022C1AC 0022910C D0 41 00 5C */ stfs f2, 0x5c(r1) +/* 8022C1B0 00229110 38 C1 00 10 */ addi r6, r1, 0x10 +/* 8022C1B4 00229114 38 E1 00 0C */ addi r7, r1, 0xc +/* 8022C1B8 00229118 D0 21 00 60 */ stfs f1, 0x60(r1) +/* 8022C1BC 0022911C D0 01 00 64 */ stfs f0, 0x64(r1) +/* 8022C1C0 00229120 48 00 44 49 */ bl sub_80230608 +/* 8022C1C4 00229124 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 8022C1C8 00229128 48 0E 8C 29 */ bl FastSinR__5CMathFf +/* 8022C1CC 0022912C FF E0 08 90 */ fmr f31, f1 +/* 8022C1D0 00229130 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 8022C1D4 00229134 48 0E 8B 71 */ bl FastCosR__5CMathFf +/* 8022C1D8 00229138 C0 02 B5 B8 */ lfs f0, lbl_805AD2D8@sda21(r2) +/* 8022C1DC 0022913C 38 61 00 14 */ addi r3, r1, 0x14 +/* 8022C1E0 00229140 D0 21 00 54 */ stfs f1, 0x54(r1) +/* 8022C1E4 00229144 38 9D 00 34 */ addi r4, r29, 0x34 +/* 8022C1E8 00229148 38 A1 00 50 */ addi r5, r1, 0x50 +/* 8022C1EC 0022914C D0 01 00 50 */ stfs f0, 0x50(r1) +/* 8022C1F0 00229150 D3 E1 00 58 */ stfs f31, 0x58(r1) +/* 8022C1F4 00229154 48 0E 68 8D */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 8022C1F8 00229158 C0 A2 B6 08 */ lfs f5, lbl_805AD328@sda21(r2) +/* 8022C1FC 0022915C 7F A3 EB 78 */ mr r3, r29 +/* 8022C200 00229160 C0 41 00 18 */ lfs f2, 0x18(r1) +/* 8022C204 00229164 7F C4 F3 78 */ mr r4, r30 +/* 8022C208 00229168 C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 8022C20C 0022916C 38 A1 00 78 */ addi r5, r1, 0x78 +/* 8022C210 00229170 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 8022C214 00229174 EC 85 00 B2 */ fmuls f4, f5, f2 +/* 8022C218 00229178 C0 C1 00 7C */ lfs f6, 0x7c(r1) +/* 8022C21C 0022917C EC 45 00 72 */ fmuls f2, f5, f1 +/* 8022C220 00229180 C0 61 00 80 */ lfs f3, 0x80(r1) +/* 8022C224 00229184 EC 05 00 32 */ fmuls f0, f5, f0 +/* 8022C228 00229188 C0 21 00 78 */ lfs f1, 0x78(r1) +/* 8022C22C 0022918C EC 86 20 2A */ fadds f4, f6, f4 +/* 8022C230 00229190 38 C1 00 44 */ addi r6, r1, 0x44 +/* 8022C234 00229194 EC 43 10 2A */ fadds f2, f3, f2 +/* 8022C238 00229198 EC 01 00 2A */ fadds f0, f1, f0 +/* 8022C23C 0022919C D0 81 00 48 */ stfs f4, 0x48(r1) +/* 8022C240 002291A0 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 8022C244 002291A4 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 8022C248 002291A8 4B FC 8B 89 */ bl IsPatternObstructed__10CPatternedCFR13CStateManagerRC9CVector3fRC9CVector3f +/* 8022C24C 002291AC 54 60 06 3E */ clrlwi r0, r3, 0x18 +/* 8022C250 002291B0 7C 00 00 34 */ cntlzw r0, r0 +/* 8022C254 002291B4 54 03 D9 7E */ srwi r3, r0, 5 +/* 8022C258 002291B8 48 00 00 08 */ b lbl_8022C260 +lbl_8022C25C: +/* 8022C25C 002291BC 38 60 00 00 */ li r3, 0 +lbl_8022C260: +/* 8022C260 002291C0 E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0 +/* 8022C264 002291C4 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 8022C268 002291C8 CB E1 00 A0 */ lfd f31, 0xa0(r1) +/* 8022C26C 002291CC 83 E1 00 9C */ lwz r31, 0x9c(r1) +/* 8022C270 002291D0 83 C1 00 98 */ lwz r30, 0x98(r1) +/* 8022C274 002291D4 83 A1 00 94 */ lwz r29, 0x94(r1) +/* 8022C278 002291D8 7C 08 03 A6 */ mtlr r0 +/* 8022C27C 002291DC 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 8022C280 002291E0 4E 80 00 20 */ blr + +.global ShouldFire__12CElitePirateFR13CStateManagerf +ShouldFire__12CElitePirateFR13CStateManagerf: +/* 8022C284 002291E4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8022C288 002291E8 7C 08 02 A6 */ mflr r0 +/* 8022C28C 002291EC 90 01 00 14 */ stw r0, 0x14(r1) +/* 8022C290 002291F0 38 A1 00 08 */ addi r5, r1, 8 +/* 8022C294 002291F4 A0 03 07 72 */ lhz r0, 0x772(r3) +/* 8022C298 002291F8 B0 01 00 08 */ sth r0, 8(r1) +/* 8022C29C 002291FC 4B FF FD 81 */ bl sub_8022c01c +/* 8022C2A0 00229200 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8022C2A4 00229204 7C 08 03 A6 */ mtlr r0 +/* 8022C2A8 00229208 38 21 00 10 */ addi r1, r1, 0x10 +/* 8022C2AC 0022920C 4E 80 00 20 */ blr + +.global ShouldTaunt__12CElitePirateFR13CStateManagerf +ShouldTaunt__12CElitePirateFR13CStateManagerf: +/* 8022C2B0 00229210 C0 23 07 BC */ lfs f1, 0x7bc(r3) +/* 8022C2B4 00229214 C0 02 B5 B8 */ lfs f0, lbl_805AD2D8@sda21(r2) +/* 8022C2B8 00229218 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8022C2BC 0022921C 4C 40 13 82 */ cror 2, 0, 2 +/* 8022C2C0 00229220 7C 00 00 26 */ mfcr r0 +/* 8022C2C4 00229224 54 03 1F FE */ rlwinm r3, r0, 3, 0x1f, 0x1f +/* 8022C2C8 00229228 4E 80 00 20 */ blr + +.global ShouldTurn__12CElitePirateFR13CStateManagerf +ShouldTurn__12CElitePirateFR13CStateManagerf: +/* 8022C2CC 0022922C 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 8022C2D0 00229230 7C 08 02 A6 */ mflr r0 +/* 8022C2D4 00229234 90 01 00 64 */ stw r0, 0x64(r1) +/* 8022C2D8 00229238 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 8022C2DC 0022923C 7C 7F 1B 78 */ mr r31, r3 +/* 8022C2E0 00229240 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 8022C2E4 00229244 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 8022C2E8 00229248 38 61 00 10 */ addi r3, r1, 0x10 +/* 8022C2EC 0022924C C0 84 00 50 */ lfs f4, 0x50(r4) +/* 8022C2F0 00229250 C0 04 00 40 */ lfs f0, 0x40(r4) +/* 8022C2F4 00229254 EC 44 08 28 */ fsubs f2, f4, f1 +/* 8022C2F8 00229258 C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 8022C2FC 0022925C C0 A4 00 60 */ lfs f5, 0x60(r4) +/* 8022C300 00229260 C0 7F 00 60 */ lfs f3, 0x60(r31) +/* 8022C304 00229264 EC 20 08 28 */ fsubs f1, f0, f1 +/* 8022C308 00229268 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 8022C30C 0022926C EC 65 18 28 */ fsubs f3, f5, f3 +/* 8022C310 00229270 D0 81 00 38 */ stfs f4, 0x38(r1) +/* 8022C314 00229274 D0 A1 00 3C */ stfs f5, 0x3c(r1) +/* 8022C318 00229278 D0 21 00 40 */ stfs f1, 0x40(r1) +/* 8022C31C 0022927C D0 41 00 44 */ stfs f2, 0x44(r1) +/* 8022C320 00229280 D0 61 00 48 */ stfs f3, 0x48(r1) +/* 8022C324 00229284 48 0E 7E DD */ bl __ct__9CVector2fFff +/* 8022C328 00229288 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 8022C32C 0022928C 38 61 00 08 */ addi r3, r1, 8 +/* 8022C330 00229290 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 8022C334 00229294 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 8022C338 00229298 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 8022C33C 0022929C C0 5F 00 48 */ lfs f2, 0x48(r31) +/* 8022C340 002292A0 C0 3F 00 38 */ lfs f1, 0x38(r31) +/* 8022C344 002292A4 C0 1F 00 58 */ lfs f0, 0x58(r31) +/* 8022C348 002292A8 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 8022C34C 002292AC D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 8022C350 002292B0 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 8022C354 002292B4 48 0E 7E AD */ bl __ct__9CVector2fFff +/* 8022C358 002292B8 C0 21 00 08 */ lfs f1, 8(r1) +/* 8022C35C 002292BC 38 61 00 18 */ addi r3, r1, 0x18 +/* 8022C360 002292C0 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 8022C364 002292C4 38 81 00 20 */ addi r4, r1, 0x20 +/* 8022C368 002292C8 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 8022C36C 002292CC D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8022C370 002292D0 48 0E 7C 55 */ bl GetAngleDiff__9CVector2fFRC9CVector2fRC9CVector2f +/* 8022C374 002292D4 C0 02 B6 0C */ lfs f0, lbl_805AD32C@sda21(r2) +/* 8022C378 002292D8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8022C37C 002292DC 7C 00 00 26 */ mfcr r0 +/* 8022C380 002292E0 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f +/* 8022C384 002292E4 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 8022C388 002292E8 80 01 00 64 */ lwz r0, 0x64(r1) +/* 8022C38C 002292EC 7C 08 03 A6 */ mtlr r0 +/* 8022C390 002292F0 38 21 00 60 */ addi r1, r1, 0x60 +/* 8022C394 002292F4 4E 80 00 20 */ blr + +.global InDetectionRange__12CElitePirateFR13CStateManagerf +InDetectionRange__12CElitePirateFR13CStateManagerf: +/* 8022C398 002292F8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8022C39C 002292FC 7C 08 02 A6 */ mflr r0 +/* 8022C3A0 00229300 90 01 00 14 */ stw r0, 0x14(r1) +/* 8022C3A4 00229304 88 03 09 88 */ lbz r0, 0x988(r3) +/* 8022C3A8 00229308 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 8022C3AC 0022930C 41 82 00 0C */ beq lbl_8022C3B8 +/* 8022C3B0 00229310 38 60 00 01 */ li r3, 1 +/* 8022C3B4 00229314 48 00 00 08 */ b lbl_8022C3BC +lbl_8022C3B8: +/* 8022C3B8 00229318 4B FC 9F B5 */ bl InDetectionRange__10CPatternedFR13CStateManagerf +lbl_8022C3BC: +/* 8022C3BC 0022931C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8022C3C0 00229320 7C 08 03 A6 */ mtlr r0 +/* 8022C3C4 00229324 38 21 00 10 */ addi r1, r1, 0x10 +/* 8022C3C8 00229328 4E 80 00 20 */ blr + +.global SpotPlayer__12CElitePirateFR13CStateManagerf +SpotPlayer__12CElitePirateFR13CStateManagerf: +/* 8022C3CC 0022932C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8022C3D0 00229330 7C 08 02 A6 */ mflr r0 +/* 8022C3D4 00229334 90 01 00 14 */ stw r0, 0x14(r1) +/* 8022C3D8 00229338 88 03 09 88 */ lbz r0, 0x988(r3) +/* 8022C3DC 0022933C 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 8022C3E0 00229340 41 82 00 0C */ beq lbl_8022C3EC +/* 8022C3E4 00229344 38 60 00 01 */ li r3, 1 +/* 8022C3E8 00229348 48 00 00 08 */ b lbl_8022C3F0 +lbl_8022C3EC: +/* 8022C3EC 0022934C 4B FC 9E 11 */ bl SpotPlayer__10CPatternedFR13CStateManagerf +lbl_8022C3F0: +/* 8022C3F0 00229350 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8022C3F4 00229354 7C 08 03 A6 */ mtlr r0 +/* 8022C3F8 00229358 38 21 00 10 */ addi r1, r1, 0x10 +/* 8022C3FC 0022935C 4E 80 00 20 */ blr + +.global DoUserAnimEvent__12CElitePirateFR13CStateManagerRC13CInt32POINode14EUserEventType +DoUserAnimEvent__12CElitePirateFR13CStateManagerRC13CInt32POINode14EUserEventType: +/* 8022C400 00229360 94 21 FE 20 */ stwu r1, -0x1e0(r1) +/* 8022C404 00229364 7C 08 02 A6 */ mflr r0 +/* 8022C408 00229368 90 01 01 E4 */ stw r0, 0x1e4(r1) +/* 8022C40C 0022936C DB E1 01 D0 */ stfd f31, 0x1d0(r1) +/* 8022C410 00229370 F3 E1 01 D8 */ psq_st f31, 472(r1), 0, qr0 +/* 8022C414 00229374 DB C1 01 C0 */ stfd f30, 0x1c0(r1) +/* 8022C418 00229378 F3 C1 01 C8 */ psq_st f30, 456(r1), 0, qr0 +/* 8022C41C 0022937C DB A1 01 B0 */ stfd f29, 0x1b0(r1) +/* 8022C420 00229380 F3 A1 01 B8 */ psq_st f29, 440(r1), 0, qr0 +/* 8022C424 00229384 BF 21 01 94 */ stmw r25, 0x194(r1) +/* 8022C428 00229388 7C DF 33 78 */ mr r31, r6 +/* 8022C42C 0022938C FF E0 08 90 */ fmr f31, f1 +/* 8022C430 00229390 28 1F 00 17 */ cmplwi r31, 0x17 +/* 8022C434 00229394 7C 7C 1B 78 */ mr r28, r3 +/* 8022C438 00229398 7C 9D 23 78 */ mr r29, r4 +/* 8022C43C 0022939C 7C BE 2B 78 */ mr r30, r5 +/* 8022C440 002293A0 38 C0 00 00 */ li r6, 0 +/* 8022C444 002293A4 41 81 03 64 */ bgt lbl_8022C7A8 +/* 8022C448 002293A8 3C A0 80 3E */ lis r5, lbl_803E7DC0@ha +/* 8022C44C 002293AC 57 E0 10 3A */ slwi r0, r31, 2 +/* 8022C450 002293B0 38 A5 7D C0 */ addi r5, r5, lbl_803E7DC0@l +/* 8022C454 002293B4 7C 05 00 2E */ lwzx r0, r5, r0 +/* 8022C458 002293B8 7C 09 03 A6 */ mtctr r0 +/* 8022C45C 002293BC 4E 80 04 20 */ bctr +/* 8022C460 002293C0 A0 7C 07 72 */ lhz r3, 0x772(r28) +/* 8022C464 002293C4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8022C468 002293C8 7C 03 00 40 */ cmplw r3, r0 +/* 8022C46C 002293CC 41 82 00 3C */ beq lbl_8022C4A8 +/* 8022C470 002293D0 A0 1C 07 72 */ lhz r0, 0x772(r28) +/* 8022C474 002293D4 7F A3 EB 78 */ mr r3, r29 +/* 8022C478 002293D8 38 81 00 24 */ addi r4, r1, 0x24 +/* 8022C47C 002293DC B0 01 00 24 */ sth r0, 0x24(r1) +/* 8022C480 002293E0 4B E2 00 F5 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8022C484 002293E4 7C 64 1B 79 */ or. r4, r3, r3 +/* 8022C488 002293E8 41 82 00 20 */ beq lbl_8022C4A8 +/* 8022C48C 002293EC A0 1C 00 08 */ lhz r0, 8(r28) +/* 8022C490 002293F0 7F A3 EB 78 */ mr r3, r29 +/* 8022C494 002293F4 38 A1 00 20 */ addi r5, r1, 0x20 +/* 8022C498 002293F8 38 C0 00 13 */ li r6, 0x13 +/* 8022C49C 002293FC B0 01 00 1C */ sth r0, 0x1c(r1) +/* 8022C4A0 00229400 B0 01 00 20 */ sth r0, 0x20(r1) +/* 8022C4A4 00229404 4B E1 7A 2D */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +lbl_8022C4A8: +/* 8022C4A8 00229408 38 C0 00 01 */ li r6, 1 +/* 8022C4AC 0022940C 48 00 02 FC */ b lbl_8022C7A8 +/* 8022C4B0 00229410 7F 84 E3 78 */ mr r4, r28 +/* 8022C4B4 00229414 38 61 00 FC */ addi r3, r1, 0xfc +/* 8022C4B8 00229418 38 BE 00 3C */ addi r5, r30, 0x3c +/* 8022C4BC 0022941C 4B E4 C4 BD */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8022C4C0 00229420 38 61 01 5C */ addi r3, r1, 0x15c +/* 8022C4C4 00229424 38 81 00 FC */ addi r4, r1, 0xfc +/* 8022C4C8 00229428 48 0E 66 AD */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8022C4CC 0022942C C0 FC 00 50 */ lfs f7, 0x50(r28) +/* 8022C4D0 00229430 38 61 00 CC */ addi r3, r1, 0xcc +/* 8022C4D4 00229434 C0 01 01 78 */ lfs f0, 0x178(r1) +/* 8022C4D8 00229438 38 81 00 6C */ addi r4, r1, 0x6c +/* 8022C4DC 0022943C C1 1C 00 40 */ lfs f8, 0x40(r28) +/* 8022C4E0 00229440 C0 21 01 68 */ lfs f1, 0x168(r1) +/* 8022C4E4 00229444 EC 00 38 28 */ fsubs f0, f0, f7 +/* 8022C4E8 00229448 C0 9C 00 48 */ lfs f4, 0x48(r28) +/* 8022C4EC 0022944C EC 21 40 28 */ fsubs f1, f1, f8 +/* 8022C4F0 00229450 C0 DC 00 60 */ lfs f6, 0x60(r28) +/* 8022C4F4 00229454 C0 41 01 88 */ lfs f2, 0x188(r1) +/* 8022C4F8 00229458 EC 00 01 32 */ fmuls f0, f0, f4 +/* 8022C4FC 0022945C C0 7C 00 38 */ lfs f3, 0x38(r28) +/* 8022C500 00229460 EC 42 30 28 */ fsubs f2, f2, f6 +/* 8022C504 00229464 EC 01 00 FA */ fmadds f0, f1, f3, f0 +/* 8022C508 00229468 C0 3C 00 58 */ lfs f1, 0x58(r28) +/* 8022C50C 0022946C D1 01 00 60 */ stfs f8, 0x60(r1) +/* 8022C510 00229470 EC A2 00 7A */ fmadds f5, f2, f1, f0 +/* 8022C514 00229474 D0 E1 00 64 */ stfs f7, 0x64(r1) +/* 8022C518 00229478 D0 C1 00 68 */ stfs f6, 0x68(r1) +/* 8022C51C 0022947C EC 05 00 72 */ fmuls f0, f5, f1 +/* 8022C520 00229480 EC 45 00 F2 */ fmuls f2, f5, f3 +/* 8022C524 00229484 EC 25 01 32 */ fmuls f1, f5, f4 +/* 8022C528 00229488 EC 06 00 2A */ fadds f0, f6, f0 +/* 8022C52C 0022948C EC 48 10 2A */ fadds f2, f8, f2 +/* 8022C530 00229490 EC 27 08 2A */ fadds f1, f7, f1 +/* 8022C534 00229494 D0 01 00 74 */ stfs f0, 0x74(r1) +/* 8022C538 00229498 D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 8022C53C 0022949C D0 21 00 70 */ stfs f1, 0x70(r1) +/* 8022C540 002294A0 D0 C1 00 74 */ stfs f6, 0x74(r1) +/* 8022C544 002294A4 48 0E 6B FD */ bl Translate__12CTransform4fFRC9CVector3f +/* 8022C548 002294A8 38 61 01 2C */ addi r3, r1, 0x12c +/* 8022C54C 002294AC 38 81 00 CC */ addi r4, r1, 0xcc +/* 8022C550 002294B0 48 0E 66 25 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8022C554 002294B4 3C 60 80 3D */ lis r3, lbl_803D3310@ha +/* 8022C558 002294B8 3B 40 00 00 */ li r26, 0 +/* 8022C55C 002294BC 38 63 33 10 */ addi r3, r3, lbl_803D3310@l +/* 8022C560 002294C0 3B 20 00 00 */ li r25, 0 +/* 8022C564 002294C4 38 83 00 B8 */ addi r4, r3, 0xb8 +/* 8022C568 002294C8 38 60 09 88 */ li r3, 0x988 +/* 8022C56C 002294CC 38 A0 00 00 */ li r5, 0 +/* 8022C570 002294D0 48 0E 92 FD */ bl __nw__FUlPCcPCc +/* 8022C574 002294D4 7C 7B 1B 79 */ or. r27, r3, r3 +/* 8022C578 002294D8 41 82 01 00 */ beq lbl_8022C678 +/* 8022C57C 002294DC 7F 83 E3 78 */ mr r3, r28 +/* 8022C580 002294E0 81 9C 00 00 */ lwz r12, 0(r28) +/* 8022C584 002294E4 81 8C 02 D0 */ lwz r12, 0x2d0(r12) +/* 8022C588 002294E8 7D 89 03 A6 */ mtctr r12 +/* 8022C58C 002294EC 4E 80 04 21 */ bctrl +/* 8022C590 002294F0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022C594 002294F4 41 82 00 0C */ beq lbl_8022C5A0 +/* 8022C598 002294F8 C3 C2 B5 D0 */ lfs f30, lbl_805AD2F0@sda21(r2) +/* 8022C59C 002294FC 48 00 00 08 */ b lbl_8022C5A4 +lbl_8022C5A0: +/* 8022C5A0 00229500 C3 C2 B5 BC */ lfs f30, lbl_805AD2DC@sda21(r2) +lbl_8022C5A4: +/* 8022C5A4 00229504 7F 83 E3 78 */ mr r3, r28 +/* 8022C5A8 00229508 81 9C 00 00 */ lwz r12, 0(r28) +/* 8022C5AC 0022950C 81 8C 02 D0 */ lwz r12, 0x2d0(r12) +/* 8022C5B0 00229510 7D 89 03 A6 */ mtctr r12 +/* 8022C5B4 00229514 4E 80 04 21 */ bctrl +/* 8022C5B8 00229518 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022C5BC 0022951C 41 82 00 0C */ beq lbl_8022C5C8 +/* 8022C5C0 00229520 C3 A2 B6 10 */ lfs f29, lbl_805AD330@sda21(r2) +/* 8022C5C4 00229524 48 00 00 08 */ b lbl_8022C5CC +lbl_8022C5C8: +/* 8022C5C8 00229528 C3 A2 B6 14 */ lfs f29, lbl_805AD334@sda21(r2) +lbl_8022C5CC: +/* 8022C5CC 0022952C A0 FC 00 08 */ lhz r7, 8(r28) +/* 8022C5D0 00229530 3C 60 80 57 */ lis r3, lbl_8056D410@ha +/* 8022C5D4 00229534 80 0D A3 88 */ lwz r0, lbl_805A8F48@sda21(r13) +/* 8022C5D8 00229538 38 A3 D4 10 */ addi r5, r3, lbl_8056D410@l +/* 8022C5DC 0022953C B0 E1 00 18 */ sth r7, 0x18(r1) +/* 8022C5E0 00229540 38 61 00 78 */ addi r3, r1, 0x78 +/* 8022C5E4 00229544 38 81 00 40 */ addi r4, r1, 0x40 +/* 8022C5E8 00229548 38 C1 00 44 */ addi r6, r1, 0x44 +/* 8022C5EC 0022954C 90 01 00 44 */ stw r0, 0x44(r1) +/* 8022C5F0 00229550 80 1C 00 04 */ lwz r0, 4(r28) +/* 8022C5F4 00229554 B0 E1 00 14 */ sth r7, 0x14(r1) +/* 8022C5F8 00229558 90 01 00 3C */ stw r0, 0x3c(r1) +/* 8022C5FC 0022955C 90 01 00 40 */ stw r0, 0x40(r1) +/* 8022C600 00229560 4B E2 4E 85 */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" +/* 8022C604 00229564 3C 80 80 3D */ lis r4, lbl_803D3310@ha +/* 8022C608 00229568 38 61 00 50 */ addi r3, r1, 0x50 +/* 8022C60C 0022956C 38 84 33 10 */ addi r4, r4, lbl_803D3310@l +/* 8022C610 00229570 3B 40 00 01 */ li r26, 1 +/* 8022C614 00229574 38 84 00 E8 */ addi r4, r4, 0xe8 +/* 8022C618 00229578 4B DD 86 A1 */ bl string_l__4rstlFPCc +/* 8022C61C 0022957C 7F A4 EB 78 */ mr r4, r29 +/* 8022C620 00229580 38 61 00 0C */ addi r3, r1, 0xc +/* 8022C624 00229584 3B 20 00 01 */ li r25, 1 +/* 8022C628 00229588 4B E2 0A B5 */ bl AllocateUniqueId__13CStateManagerFv +/* 8022C62C 0022958C A0 01 00 0C */ lhz r0, 0xc(r1) +/* 8022C630 00229590 7F 84 E3 78 */ mr r4, r28 +/* 8022C634 00229594 38 61 00 90 */ addi r3, r1, 0x90 +/* 8022C638 00229598 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8022C63C 0022959C 81 9C 00 00 */ lwz r12, 0(r28) +/* 8022C640 002295A0 81 8C 02 DC */ lwz r12, 0x2dc(r12) +/* 8022C644 002295A4 7D 89 03 A6 */ mtctr r12 +/* 8022C648 002295A8 4E 80 04 21 */ bctrl +/* 8022C64C 002295AC FC 20 E8 90 */ fmr f1, f29 +/* 8022C650 002295B0 7F 63 DB 78 */ mr r3, r27 +/* 8022C654 002295B4 FC 40 F0 90 */ fmr f2, f30 +/* 8022C658 002295B8 38 81 00 10 */ addi r4, r1, 0x10 +/* 8022C65C 002295BC 38 A1 00 50 */ addi r5, r1, 0x50 +/* 8022C660 002295C0 38 C1 00 78 */ addi r6, r1, 0x78 +/* 8022C664 002295C4 38 E1 01 2C */ addi r7, r1, 0x12c +/* 8022C668 002295C8 39 01 00 18 */ addi r8, r1, 0x18 +/* 8022C66C 002295CC 39 21 00 90 */ addi r9, r1, 0x90 +/* 8022C670 002295D0 48 00 5C E9 */ bl __ct__10CShockWaveFv +/* 8022C674 002295D4 7C 7B 1B 78 */ mr r27, r3 +lbl_8022C678: +/* 8022C678 002295D8 7F 20 07 75 */ extsb. r0, r25 +/* 8022C67C 002295DC 41 82 00 0C */ beq lbl_8022C688 +/* 8022C680 002295E0 38 61 00 50 */ addi r3, r1, 0x50 +/* 8022C684 002295E4 48 11 14 5D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8022C688: +/* 8022C688 002295E8 7F 40 07 75 */ extsb. r0, r26 +/* 8022C68C 002295EC 41 82 00 44 */ beq lbl_8022C6D0 +/* 8022C690 002295F0 80 01 00 80 */ lwz r0, 0x80(r1) +/* 8022C694 002295F4 80 61 00 88 */ lwz r3, 0x88(r1) +/* 8022C698 002295F8 1C 00 00 0C */ mulli r0, r0, 0xc +/* 8022C69C 002295FC 90 61 00 30 */ stw r3, 0x30(r1) +/* 8022C6A0 00229600 7C 64 1B 78 */ mr r4, r3 +/* 8022C6A4 00229604 7C 03 02 14 */ add r0, r3, r0 +/* 8022C6A8 00229608 90 61 00 2C */ stw r3, 0x2c(r1) +/* 8022C6AC 0022960C 90 01 00 38 */ stw r0, 0x38(r1) +/* 8022C6B0 00229610 90 01 00 34 */ stw r0, 0x34(r1) +/* 8022C6B4 00229614 48 00 00 08 */ b lbl_8022C6BC +lbl_8022C6B8: +/* 8022C6B8 00229618 38 84 00 0C */ addi r4, r4, 0xc +lbl_8022C6BC: +/* 8022C6BC 0022961C 7C 04 00 40 */ cmplw r4, r0 +/* 8022C6C0 00229620 40 82 FF F8 */ bne lbl_8022C6B8 +/* 8022C6C4 00229624 28 03 00 00 */ cmplwi r3, 0 +/* 8022C6C8 00229628 41 82 00 08 */ beq lbl_8022C6D0 +/* 8022C6CC 0022962C 48 0E 92 65 */ bl Free__7CMemoryFPCv +lbl_8022C6D0: +/* 8022C6D0 00229630 28 1B 00 00 */ cmplwi r27, 0 +/* 8022C6D4 00229634 41 82 00 10 */ beq lbl_8022C6E4 +/* 8022C6D8 00229638 7F A3 EB 78 */ mr r3, r29 +/* 8022C6DC 0022963C 7F 64 DB 78 */ mr r4, r27 +/* 8022C6E0 00229640 4B E2 06 15 */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +lbl_8022C6E4: +/* 8022C6E4 00229644 38 C0 00 01 */ li r6, 1 +/* 8022C6E8 00229648 48 00 00 C0 */ b lbl_8022C7A8 +/* 8022C6EC 0022964C 88 1C 09 88 */ lbz r0, 0x988(r28) +/* 8022C6F0 00229650 38 60 00 01 */ li r3, 1 +/* 8022C6F4 00229654 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8022C6F8 00229658 38 C0 00 01 */ li r6, 1 +/* 8022C6FC 0022965C 98 1C 09 88 */ stb r0, 0x988(r28) +/* 8022C700 00229660 48 00 00 A8 */ b lbl_8022C7A8 +/* 8022C704 00229664 88 1C 09 88 */ lbz r0, 0x988(r28) +/* 8022C708 00229668 38 60 00 00 */ li r3, 0 +/* 8022C70C 0022966C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8022C710 00229670 38 C0 00 01 */ li r6, 1 +/* 8022C714 00229674 98 1C 09 88 */ stb r0, 0x988(r28) +/* 8022C718 00229678 48 00 00 90 */ b lbl_8022C7A8 +/* 8022C71C 0022967C 4B FF BC 8D */ bl sub_802283a8 +/* 8022C720 00229680 38 C0 00 01 */ li r6, 1 +/* 8022C724 00229684 48 00 00 84 */ b lbl_8022C7A8 +/* 8022C728 00229688 81 83 00 00 */ lwz r12, 0(r3) +/* 8022C72C 0022968C 81 8C 02 CC */ lwz r12, 0x2cc(r12) +/* 8022C730 00229690 7D 89 03 A6 */ mtctr r12 +/* 8022C734 00229694 4E 80 04 21 */ bctrl +/* 8022C738 00229698 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022C73C 0022969C 41 82 00 68 */ beq lbl_8022C7A4 +/* 8022C740 002296A0 3B 60 00 00 */ li r27, 0 +/* 8022C744 002296A4 48 00 00 50 */ b lbl_8022C794 +lbl_8022C748: +/* 8022C748 002296A8 80 7C 07 30 */ lwz r3, 0x730(r28) +/* 8022C74C 002296AC 7F 64 DB 78 */ mr r4, r27 +/* 8022C750 002296B0 4B F7 AA E9 */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 8022C754 002296B4 A0 03 00 3C */ lhz r0, 0x3c(r3) +/* 8022C758 002296B8 7F A3 EB 78 */ mr r3, r29 +/* 8022C75C 002296BC 38 81 00 08 */ addi r4, r1, 8 +/* 8022C760 002296C0 B0 01 00 28 */ sth r0, 0x28(r1) +/* 8022C764 002296C4 B0 01 00 08 */ sth r0, 8(r1) +/* 8022C768 002296C8 4B E1 FE 0D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8022C76C 002296CC 7C 64 1B 78 */ mr r4, r3 +/* 8022C770 002296D0 38 61 00 48 */ addi r3, r1, 0x48 +/* 8022C774 002296D4 4B E8 2B D9 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8022C778 002296D8 80 63 00 04 */ lwz r3, 4(r3) +/* 8022C77C 002296DC 28 03 00 00 */ cmplwi r3, 0 +/* 8022C780 002296E0 41 82 00 10 */ beq lbl_8022C790 +/* 8022C784 002296E4 7F A5 EB 78 */ mr r5, r29 +/* 8022C788 002296E8 38 80 00 12 */ li r4, 0x12 +/* 8022C78C 002296EC 4B E2 7B C5 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +lbl_8022C790: +/* 8022C790 002296F0 3B 7B 00 01 */ addi r27, r27, 1 +lbl_8022C794: +/* 8022C794 002296F4 80 7C 07 30 */ lwz r3, 0x730(r28) +/* 8022C798 002296F8 4B F7 AA B1 */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 8022C79C 002296FC 7C 1B 18 40 */ cmplw r27, r3 +/* 8022C7A0 00229700 41 80 FF A8 */ blt lbl_8022C748 +lbl_8022C7A4: +/* 8022C7A4 00229704 38 C0 00 01 */ li r6, 1 +lbl_8022C7A8: +/* 8022C7A8 00229708 54 C0 06 3F */ clrlwi. r0, r6, 0x18 +/* 8022C7AC 0022970C 40 82 00 1C */ bne lbl_8022C7C8 +/* 8022C7B0 00229710 FC 20 F8 90 */ fmr f1, f31 +/* 8022C7B4 00229714 7F 83 E3 78 */ mr r3, r28 +/* 8022C7B8 00229718 7F A4 EB 78 */ mr r4, r29 +/* 8022C7BC 0022971C 7F C5 F3 78 */ mr r5, r30 +/* 8022C7C0 00229720 7F E6 FB 78 */ mr r6, r31 +/* 8022C7C4 00229724 4B E4 C6 ED */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +lbl_8022C7C8: +/* 8022C7C8 00229728 E3 E1 01 D8 */ psq_l f31, 472(r1), 0, qr0 +/* 8022C7CC 0022972C CB E1 01 D0 */ lfd f31, 0x1d0(r1) +/* 8022C7D0 00229730 E3 C1 01 C8 */ psq_l f30, 456(r1), 0, qr0 +/* 8022C7D4 00229734 CB C1 01 C0 */ lfd f30, 0x1c0(r1) +/* 8022C7D8 00229738 E3 A1 01 B8 */ psq_l f29, 440(r1), 0, qr0 +/* 8022C7DC 0022973C CB A1 01 B0 */ lfd f29, 0x1b0(r1) +/* 8022C7E0 00229740 BB 21 01 94 */ lmw r25, 0x194(r1) +/* 8022C7E4 00229744 80 01 01 E4 */ lwz r0, 0x1e4(r1) +/* 8022C7E8 00229748 7C 08 03 A6 */ mtlr r0 +/* 8022C7EC 0022974C 38 21 01 E0 */ addi r1, r1, 0x1e0 +/* 8022C7F0 00229750 4E 80 00 20 */ blr + +.global GetDamageVulnerability__12CElitePirateCFRC9CVector3fRC9CVector3fRC11CDamageInfo +GetDamageVulnerability__12CElitePirateCFRC9CVector3fRC9CVector3fRC11CDamageInfo: +/* 8022C7F4 00229754 3C 60 80 57 */ lis r3, lbl_8056D7E8@ha +/* 8022C7F8 00229758 38 63 D7 E8 */ addi r3, r3, lbl_8056D7E8@l +/* 8022C7FC 0022975C 4E 80 00 20 */ blr + +.global GetDamageVulnerability__12CElitePirateCFv +GetDamageVulnerability__12CElitePirateCFv: +/* 8022C800 00229760 3C 60 80 57 */ lis r3, lbl_8056D7E8@ha +/* 8022C804 00229764 38 63 D7 E8 */ addi r3, r3, lbl_8056D7E8@l +/* 8022C808 00229768 4E 80 00 20 */ blr + +.global TakeDamage__12CElitePirateFRC9CVector3ff +TakeDamage__12CElitePirateFRC9CVector3ff: +/* 8022C80C 0022976C 4E 80 00 20 */ blr + +.global GetOrbitPosition__12CElitePirateCFRC13CStateManager +GetOrbitPosition__12CElitePirateCFRC13CStateManager: +/* 8022C810 00229770 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 8022C814 00229774 7C 08 02 A6 */ mflr r0 +/* 8022C818 00229778 90 01 00 74 */ stw r0, 0x74(r1) +/* 8022C81C 0022977C 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 8022C820 00229780 7C BF 2B 78 */ mr r31, r5 +/* 8022C824 00229784 93 C1 00 68 */ stw r30, 0x68(r1) +/* 8022C828 00229788 7C 9E 23 78 */ mr r30, r4 +/* 8022C82C 0022978C 93 A1 00 64 */ stw r29, 0x64(r1) +/* 8022C830 00229790 7C 7D 1B 78 */ mr r29, r3 +/* 8022C834 00229794 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8022C838 00229798 A0 84 07 72 */ lhz r4, 0x772(r4) +/* 8022C83C 0022979C 7C 04 00 40 */ cmplw r4, r0 +/* 8022C840 002297A0 41 82 00 40 */ beq lbl_8022C880 +/* 8022C844 002297A4 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 8022C848 002297A8 80 63 00 00 */ lwz r3, 0(r3) +/* 8022C84C 002297AC 80 03 00 14 */ lwz r0, 0x14(r3) +/* 8022C850 002297B0 2C 00 00 03 */ cmpwi r0, 3 +/* 8022C854 002297B4 40 82 00 2C */ bne lbl_8022C880 +/* 8022C858 002297B8 B0 81 00 10 */ sth r4, 0x10(r1) +/* 8022C85C 002297BC 7F E3 FB 78 */ mr r3, r31 +/* 8022C860 002297C0 38 81 00 10 */ addi r4, r1, 0x10 +/* 8022C864 002297C4 4B E1 FD 41 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8022C868 002297C8 7C 65 1B 79 */ or. r5, r3, r3 +/* 8022C86C 002297CC 41 82 00 14 */ beq lbl_8022C880 +/* 8022C870 002297D0 7F A3 EB 78 */ mr r3, r29 +/* 8022C874 002297D4 7F C4 F3 78 */ mr r4, r30 +/* 8022C878 002297D8 4B FF BF ED */ bl sub_80228864 +/* 8022C87C 002297DC 48 00 00 B4 */ b lbl_8022C930 +lbl_8022C880: +/* 8022C880 002297E0 7F C3 F3 78 */ mr r3, r30 +/* 8022C884 002297E4 81 9E 00 00 */ lwz r12, 0(r30) +/* 8022C888 002297E8 81 8C 02 CC */ lwz r12, 0x2cc(r12) +/* 8022C88C 002297EC 7D 89 03 A6 */ mtctr r12 +/* 8022C890 002297F0 4E 80 04 21 */ bctrl +/* 8022C894 002297F4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022C898 002297F8 41 82 00 4C */ beq lbl_8022C8E4 +/* 8022C89C 002297FC A0 1E 07 70 */ lhz r0, 0x770(r30) +/* 8022C8A0 00229800 7F E3 FB 78 */ mr r3, r31 +/* 8022C8A4 00229804 38 81 00 0C */ addi r4, r1, 0xc +/* 8022C8A8 00229808 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8022C8AC 0022980C 4B E1 FC F9 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8022C8B0 00229810 7C 64 1B 78 */ mr r4, r3 +/* 8022C8B4 00229814 38 61 00 14 */ addi r3, r1, 0x14 +/* 8022C8B8 00229818 4B E8 2A 95 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8022C8BC 0022981C 80 63 00 04 */ lwz r3, 4(r3) +/* 8022C8C0 00229820 28 03 00 00 */ cmplwi r3, 0 +/* 8022C8C4 00229824 41 82 00 20 */ beq lbl_8022C8E4 +/* 8022C8C8 00229828 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 8022C8CC 0022982C C0 23 00 50 */ lfs f1, 0x50(r3) +/* 8022C8D0 00229830 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 8022C8D4 00229834 D0 1D 00 00 */ stfs f0, 0(r29) +/* 8022C8D8 00229838 D0 3D 00 04 */ stfs f1, 4(r29) +/* 8022C8DC 0022983C D0 5D 00 08 */ stfs f2, 8(r29) +/* 8022C8E0 00229840 48 00 00 50 */ b lbl_8022C930 +lbl_8022C8E4: +/* 8022C8E4 00229844 3C 80 80 3D */ lis r4, lbl_803D3310@ha +/* 8022C8E8 00229848 38 61 00 1C */ addi r3, r1, 0x1c +/* 8022C8EC 0022984C 38 84 33 10 */ addi r4, r4, lbl_803D3310@l +/* 8022C8F0 00229850 38 C1 00 08 */ addi r6, r1, 8 +/* 8022C8F4 00229854 38 84 00 A5 */ addi r4, r4, 0xa5 +/* 8022C8F8 00229858 38 A0 FF FF */ li r5, -1 +/* 8022C8FC 0022985C 48 11 18 99 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator" +/* 8022C900 00229860 7F C4 F3 78 */ mr r4, r30 +/* 8022C904 00229864 38 61 00 2C */ addi r3, r1, 0x2c +/* 8022C908 00229868 38 A1 00 1C */ addi r5, r1, 0x1c +/* 8022C90C 0022986C 4B E4 C0 6D */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8022C910 00229870 C0 41 00 58 */ lfs f2, 0x58(r1) +/* 8022C914 00229874 38 61 00 1C */ addi r3, r1, 0x1c +/* 8022C918 00229878 C0 21 00 48 */ lfs f1, 0x48(r1) +/* 8022C91C 0022987C C0 01 00 38 */ lfs f0, 0x38(r1) +/* 8022C920 00229880 D0 1D 00 00 */ stfs f0, 0(r29) +/* 8022C924 00229884 D0 3D 00 04 */ stfs f1, 4(r29) +/* 8022C928 00229888 D0 5D 00 08 */ stfs f2, 8(r29) +/* 8022C92C 0022988C 48 11 11 B5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8022C930: +/* 8022C930 00229890 80 01 00 74 */ lwz r0, 0x74(r1) +/* 8022C934 00229894 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 8022C938 00229898 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 8022C93C 0022989C 83 A1 00 64 */ lwz r29, 0x64(r1) +/* 8022C940 002298A0 7C 08 03 A6 */ mtlr r0 +/* 8022C944 002298A4 38 21 00 70 */ addi r1, r1, 0x70 +/* 8022C948 002298A8 4E 80 00 20 */ blr + +.global GetAimPosition__12CElitePirateCFRC13CStateManagerf +GetAimPosition__12CElitePirateCFRC13CStateManagerf: +/* 8022C94C 002298AC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8022C950 002298B0 7C 08 02 A6 */ mflr r0 +/* 8022C954 002298B4 90 01 00 34 */ stw r0, 0x34(r1) +/* 8022C958 002298B8 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8022C95C 002298BC 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8022C960 002298C0 7C BE 2B 78 */ mr r30, r5 +/* 8022C964 002298C4 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8022C968 002298C8 7C 9D 23 78 */ mr r29, r4 +/* 8022C96C 002298CC 93 81 00 20 */ stw r28, 0x20(r1) +/* 8022C970 002298D0 7C 7C 1B 78 */ mr r28, r3 +/* 8022C974 002298D4 80 85 08 B8 */ lwz r4, 0x8b8(r5) +/* 8022C978 002298D8 80 7D 05 D4 */ lwz r3, 0x5d4(r29) +/* 8022C97C 002298DC 83 E4 00 00 */ lwz r31, 0(r4) +/* 8022C980 002298E0 4B F7 AA 3D */ bl GetActive__22CCollisionActorManagerCFv +/* 8022C984 002298E4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022C988 002298E8 41 82 00 64 */ beq lbl_8022C9EC +/* 8022C98C 002298EC 88 1F 00 00 */ lbz r0, 0(r31) +/* 8022C990 002298F0 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8022C994 002298F4 41 82 00 58 */ beq lbl_8022C9EC +/* 8022C998 002298F8 80 1F 00 08 */ lwz r0, 8(r31) +/* 8022C99C 002298FC 2C 00 00 02 */ cmpwi r0, 2 +/* 8022C9A0 00229900 40 82 00 4C */ bne lbl_8022C9EC +/* 8022C9A4 00229904 A0 1D 07 9C */ lhz r0, 0x79c(r29) +/* 8022C9A8 00229908 7F C3 F3 78 */ mr r3, r30 +/* 8022C9AC 0022990C 38 81 00 08 */ addi r4, r1, 8 +/* 8022C9B0 00229910 B0 01 00 08 */ sth r0, 8(r1) +/* 8022C9B4 00229914 4B E1 FB F1 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8022C9B8 00229918 7C 64 1B 78 */ mr r4, r3 +/* 8022C9BC 0022991C 38 61 00 0C */ addi r3, r1, 0xc +/* 8022C9C0 00229920 4B E8 29 8D */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8022C9C4 00229924 80 63 00 04 */ lwz r3, 4(r3) +/* 8022C9C8 00229928 28 03 00 00 */ cmplwi r3, 0 +/* 8022C9CC 0022992C 41 82 00 20 */ beq lbl_8022C9EC +/* 8022C9D0 00229930 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 8022C9D4 00229934 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 8022C9D8 00229938 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 8022C9DC 0022993C D0 1C 00 00 */ stfs f0, 0(r28) +/* 8022C9E0 00229940 D0 3C 00 04 */ stfs f1, 4(r28) +/* 8022C9E4 00229944 D0 5C 00 08 */ stfs f2, 8(r28) +/* 8022C9E8 00229948 48 00 00 20 */ b lbl_8022CA08 +lbl_8022C9EC: +/* 8022C9EC 0022994C 7F A4 EB 78 */ mr r4, r29 +/* 8022C9F0 00229950 7F 83 E3 78 */ mr r3, r28 +/* 8022C9F4 00229954 81 9D 00 00 */ lwz r12, 0(r29) +/* 8022C9F8 00229958 7F C5 F3 78 */ mr r5, r30 +/* 8022C9FC 0022995C 81 8C 00 48 */ lwz r12, 0x48(r12) +/* 8022CA00 00229960 7D 89 03 A6 */ mtctr r12 +/* 8022CA04 00229964 4E 80 04 21 */ bctrl +lbl_8022CA08: +/* 8022CA08 00229968 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8022CA0C 0022996C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8022CA10 00229970 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8022CA14 00229974 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8022CA18 00229978 83 81 00 20 */ lwz r28, 0x20(r1) +/* 8022CA1C 0022997C 7C 08 03 A6 */ mtlr r0 +/* 8022CA20 00229980 38 21 00 30 */ addi r1, r1, 0x30 +/* 8022CA24 00229984 4E 80 00 20 */ blr + +.global KnockBack__12CElitePirateFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef +KnockBack__12CElitePirateFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef: +/* 8022CA28 00229988 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 8022CA2C 0022998C 7C 08 02 A6 */ mflr r0 +/* 8022CA30 00229990 90 01 00 64 */ stw r0, 0x64(r1) +/* 8022CA34 00229994 DB E1 00 50 */ stfd f31, 0x50(r1) +/* 8022CA38 00229998 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 8022CA3C 0022999C BF 41 00 38 */ stmw r26, 0x38(r1) +/* 8022CA40 002299A0 FF E0 08 90 */ fmr f31, f1 +/* 8022CA44 002299A4 7C DD 33 78 */ mr r29, r6 +/* 8022CA48 002299A8 7C 9B 23 78 */ mr r27, r4 +/* 8022CA4C 002299AC 7C 7A 1B 78 */ mr r26, r3 +/* 8022CA50 002299B0 7C BC 2B 78 */ mr r28, r5 +/* 8022CA54 002299B4 7C FE 3B 78 */ mr r30, r7 +/* 8022CA58 002299B8 7D 1F 43 78 */ mr r31, r8 +/* 8022CA5C 002299BC 7F A4 EB 78 */ mr r4, r29 +/* 8022CA60 002299C0 4B FF A9 D1 */ bl sub_80227430 +/* 8022CA64 002299C4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022CA68 002299C8 41 82 00 A4 */ beq lbl_8022CB0C +/* 8022CA6C 002299CC FC 20 F8 90 */ fmr f1, f31 +/* 8022CA70 002299D0 7F 43 D3 78 */ mr r3, r26 +/* 8022CA74 002299D4 7F 64 DB 78 */ mr r4, r27 +/* 8022CA78 002299D8 7F 85 E3 78 */ mr r5, r28 +/* 8022CA7C 002299DC 7F A6 EB 78 */ mr r6, r29 +/* 8022CA80 002299E0 7F C7 F3 78 */ mr r7, r30 +/* 8022CA84 002299E4 7F E8 FB 78 */ mr r8, r31 +/* 8022CA88 002299E8 4B E4 DC F5 */ bl KnockBack__10CPatternedFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef +/* 8022CA8C 002299EC 88 1D 00 04 */ lbz r0, 4(r29) +/* 8022CA90 002299F0 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8022CA94 002299F4 41 82 00 78 */ beq lbl_8022CB0C +/* 8022CA98 002299F8 80 1D 00 00 */ lwz r0, 0(r29) +/* 8022CA9C 002299FC 2C 00 00 01 */ cmpwi r0, 1 +/* 8022CAA0 00229A00 40 82 00 6C */ bne lbl_8022CB0C +/* 8022CAA4 00229A04 C0 02 B5 B8 */ lfs f0, lbl_805AD2D8@sda21(r2) +/* 8022CAA8 00229A08 7F 65 DB 78 */ mr r5, r27 +/* 8022CAAC 00229A0C 38 61 00 14 */ addi r3, r1, 0x14 +/* 8022CAB0 00229A10 38 9A 00 34 */ addi r4, r26, 0x34 +/* 8022CAB4 00229A14 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 8022CAB8 00229A18 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 8022CABC 00229A1C D0 01 00 34 */ stfs f0, 0x34(r1) +/* 8022CAC0 00229A20 48 0E 5F 65 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 8022CAC4 00229A24 38 61 00 20 */ addi r3, r1, 0x20 +/* 8022CAC8 00229A28 38 81 00 14 */ addi r4, r1, 0x14 +/* 8022CACC 00229A2C 48 0E 73 05 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 8022CAD0 00229A30 80 C1 00 20 */ lwz r6, 0x20(r1) +/* 8022CAD4 00229A34 7F 43 D3 78 */ mr r3, r26 +/* 8022CAD8 00229A38 80 E1 00 24 */ lwz r7, 0x24(r1) +/* 8022CADC 00229A3C 7F 84 E3 78 */ mr r4, r28 +/* 8022CAE0 00229A40 80 01 00 28 */ lwz r0, 0x28(r1) +/* 8022CAE4 00229A44 38 A1 00 2C */ addi r5, r1, 0x2c +/* 8022CAE8 00229A48 90 C1 00 08 */ stw r6, 8(r1) +/* 8022CAEC 00229A4C 38 C1 00 08 */ addi r6, r1, 8 +/* 8022CAF0 00229A50 C0 22 B5 F8 */ lfs f1, lbl_805AD318@sda21(r2) +/* 8022CAF4 00229A54 90 E1 00 0C */ stw r7, 0xc(r1) +/* 8022CAF8 00229A58 90 01 00 10 */ stw r0, 0x10(r1) +/* 8022CAFC 00229A5C 81 9A 00 00 */ lwz r12, 0(r26) +/* 8022CB00 00229A60 81 8C 02 90 */ lwz r12, 0x290(r12) +/* 8022CB04 00229A64 7D 89 03 A6 */ mtctr r12 +/* 8022CB08 00229A68 4E 80 04 21 */ bctrl +lbl_8022CB0C: +/* 8022CB0C 00229A6C E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 +/* 8022CB10 00229A70 CB E1 00 50 */ lfd f31, 0x50(r1) +/* 8022CB14 00229A74 BB 41 00 38 */ lmw r26, 0x38(r1) +/* 8022CB18 00229A78 80 01 00 64 */ lwz r0, 0x64(r1) +/* 8022CB1C 00229A7C 7C 08 03 A6 */ mtlr r0 +/* 8022CB20 00229A80 38 21 00 60 */ addi r1, r1, 0x60 +/* 8022CB24 00229A84 4E 80 00 20 */ blr + +.global PreRender__12CElitePirateFR13CStateManagerRC14CFrustumPlanes +PreRender__12CElitePirateFR13CStateManagerRC14CFrustumPlanes: +/* 8022CB28 00229A88 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8022CB2C 00229A8C 7C 08 02 A6 */ mflr r0 +/* 8022CB30 00229A90 90 01 00 34 */ stw r0, 0x34(r1) +/* 8022CB34 00229A94 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8022CB38 00229A98 7C 9F 23 78 */ mr r31, r4 +/* 8022CB3C 00229A9C 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8022CB40 00229AA0 7C 7E 1B 78 */ mr r30, r3 +/* 8022CB44 00229AA4 4B E4 B7 99 */ bl PreRender__10CPatternedFR13CStateManagerRC14CFrustumPlanes +/* 8022CB48 00229AA8 80 BE 00 64 */ lwz r5, 0x64(r30) +/* 8022CB4C 00229AAC 7F E4 FB 78 */ mr r4, r31 +/* 8022CB50 00229AB0 81 1E 04 50 */ lwz r8, 0x450(r30) +/* 8022CB54 00229AB4 38 7E 06 F8 */ addi r3, r30, 0x6f8 +/* 8022CB58 00229AB8 C0 05 00 00 */ lfs f0, 0(r5) +/* 8022CB5C 00229ABC 38 DE 00 34 */ addi r6, r30, 0x34 +/* 8022CB60 00229AC0 38 E1 00 10 */ addi r7, r1, 0x10 +/* 8022CB64 00229AC4 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 8022CB68 00229AC8 C0 05 00 04 */ lfs f0, 4(r5) +/* 8022CB6C 00229ACC D0 01 00 14 */ stfs f0, 0x14(r1) +/* 8022CB70 00229AD0 C0 05 00 08 */ lfs f0, 8(r5) +/* 8022CB74 00229AD4 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 8022CB78 00229AD8 80 BE 00 64 */ lwz r5, 0x64(r30) +/* 8022CB7C 00229ADC 80 A5 00 10 */ lwz r5, 0x10(r5) +/* 8022CB80 00229AE0 4B F4 8D 91 */ bl PreRender__13CBoneTrackingFRC13CStateManagerR9CAnimDataRC12CTransform4fRC9CVector3fRC15CBodyController +/* 8022CB84 00229AE4 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 8022CB88 00229AE8 4B EE 80 C1 */ bl GetNumMaterialSets__10CModelDataCFv +/* 8022CB8C 00229AEC 38 83 FF FF */ addi r4, r3, -1 +/* 8022CB90 00229AF0 38 61 00 0C */ addi r3, r1, 0xc +/* 8022CB94 00229AF4 90 81 00 08 */ stw r4, 8(r1) +/* 8022CB98 00229AF8 80 1E 07 CC */ lwz r0, 0x7cc(r30) +/* 8022CB9C 00229AFC 7C 04 00 00 */ cmpw r4, r0 +/* 8022CBA0 00229B00 90 01 00 0C */ stw r0, 0xc(r1) +/* 8022CBA4 00229B04 40 80 00 08 */ bge lbl_8022CBAC +/* 8022CBA8 00229B08 38 61 00 08 */ addi r3, r1, 8 +lbl_8022CBAC: +/* 8022CBAC 00229B0C 80 63 00 00 */ lwz r3, 0(r3) +/* 8022CBB0 00229B10 98 7E 00 B5 */ stb r3, 0xb5(r30) +/* 8022CBB4 00229B14 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8022CBB8 00229B18 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8022CBBC 00229B1C 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8022CBC0 00229B20 7C 08 03 A6 */ mtlr r0 +/* 8022CBC4 00229B24 38 21 00 30 */ addi r1, r1, 0x30 +/* 8022CBC8 00229B28 4E 80 00 20 */ blr + +.global AcceptScriptMsg__12CElitePirateF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__12CElitePirateF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 8022CBCC 00229B2C 94 21 FE 70 */ stwu r1, -0x190(r1) +/* 8022CBD0 00229B30 7C 08 02 A6 */ mflr r0 +/* 8022CBD4 00229B34 90 01 01 94 */ stw r0, 0x194(r1) +/* 8022CBD8 00229B38 DB E1 01 80 */ stfd f31, 0x180(r1) +/* 8022CBDC 00229B3C F3 E1 01 88 */ psq_st f31, 392(r1), 0, qr0 +/* 8022CBE0 00229B40 BF 41 01 68 */ stmw r26, 0x168(r1) +/* 8022CBE4 00229B44 7C 9C 23 78 */ mr r28, r4 +/* 8022CBE8 00229B48 7C 7D 1B 78 */ mr r29, r3 +/* 8022CBEC 00229B4C 28 1C 00 2A */ cmplwi r28, 0x2a +/* 8022CBF0 00229B50 7C BE 2B 78 */ mr r30, r5 +/* 8022CBF4 00229B54 7C DF 33 78 */ mr r31, r6 +/* 8022CBF8 00229B58 3B 60 00 01 */ li r27, 1 +/* 8022CBFC 00229B5C 41 81 07 48 */ bgt lbl_8022D344 +/* 8022CC00 00229B60 3C 80 80 3E */ lis r4, lbl_803E7E20@ha +/* 8022CC04 00229B64 57 80 10 3A */ slwi r0, r28, 2 +/* 8022CC08 00229B68 38 84 7E 20 */ addi r4, r4, lbl_803E7E20@l +/* 8022CC0C 00229B6C 7C 04 00 2E */ lwzx r0, r4, r0 +/* 8022CC10 00229B70 7C 09 03 A6 */ mtctr r0 +/* 8022CC14 00229B74 4E 80 04 20 */ bctr +/* 8022CC18 00229B78 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 8022CC1C 00229B7C 7F E4 FB 78 */ mr r4, r31 +/* 8022CC20 00229B80 4B F0 E0 D1 */ bl Activate__15CBodyControllerFR13CStateManager +/* 8022CC24 00229B84 7F A3 EB 78 */ mr r3, r29 +/* 8022CC28 00229B88 7F E4 FB 78 */ mr r4, r31 +/* 8022CC2C 00229B8C 4B FF CF 99 */ bl sub_80229bc4 +/* 8022CC30 00229B90 7F E4 FB 78 */ mr r4, r31 +/* 8022CC34 00229B94 38 61 00 7C */ addi r3, r1, 0x7c +/* 8022CC38 00229B98 4B E2 04 A5 */ bl AllocateUniqueId__13CStateManagerFv +/* 8022CC3C 00229B9C A0 01 00 7C */ lhz r0, 0x7c(r1) +/* 8022CC40 00229BA0 7F A3 EB 78 */ mr r3, r29 +/* 8022CC44 00229BA4 7F E4 FB 78 */ mr r4, r31 +/* 8022CC48 00229BA8 38 A1 00 78 */ addi r5, r1, 0x78 +/* 8022CC4C 00229BAC B0 1D 07 72 */ sth r0, 0x772(r29) +/* 8022CC50 00229BB0 A0 1D 07 72 */ lhz r0, 0x772(r29) +/* 8022CC54 00229BB4 B0 01 00 78 */ sth r0, 0x78(r1) +/* 8022CC58 00229BB8 4B FF BE 55 */ bl sub_80228aac +/* 8022CC5C 00229BBC 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 8022CC60 00229BC0 38 63 02 A4 */ addi r3, r3, 0x2a4 +/* 8022CC64 00229BC4 4B F0 72 49 */ bl GetMaxSpeed__14CBodyStateInfoCFv +/* 8022CC68 00229BC8 FF E0 08 90 */ fmr f31, f1 +/* 8022CC6C 00229BCC C0 02 B5 B8 */ lfs f0, lbl_805AD2D8@sda21(r2) +/* 8022CC70 00229BD0 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 8022CC74 00229BD4 40 81 00 24 */ ble lbl_8022CC98 +/* 8022CC78 00229BD8 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 8022CC7C 00229BDC 38 80 00 01 */ li r4, 1 +/* 8022CC80 00229BE0 38 63 02 A4 */ addi r3, r3, 0x2a4 +/* 8022CC84 00229BE4 4B F0 71 51 */ bl GetLocomotionSpeed__14CBodyStateInfoCFQ23pas15ELocomotionAnim +/* 8022CC88 00229BE8 C0 02 B6 18 */ lfs f0, lbl_805AD338@sda21(r2) +/* 8022CC8C 00229BEC EC 00 00 72 */ fmuls f0, f0, f1 +/* 8022CC90 00229BF0 EC 00 F8 24 */ fdivs f0, f0, f31 +/* 8022CC94 00229BF4 D0 1D 07 A4 */ stfs f0, 0x7a4(r29) +lbl_8022CC98: +/* 8022CC98 00229BF8 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 8022CC9C 00229BFC 38 00 00 01 */ li r0, 1 +/* 8022CCA0 00229C00 90 03 00 34 */ stw r0, 0x34(r3) +/* 8022CCA4 00229C04 C0 3D 07 A4 */ lfs f1, 0x7a4(r29) +/* 8022CCA8 00229C08 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 8022CCAC 00229C0C FC 40 08 90 */ fmr f2, f1 +/* 8022CCB0 00229C10 38 63 00 04 */ addi r3, r3, 4 +/* 8022CCB4 00229C14 4B F0 4B 35 */ bl SetSteeringSpeedRange__16CBodyStateCmdMgrFff +/* 8022CCB8 00229C18 48 00 06 8C */ b lbl_8022D344 +/* 8022CCBC 00229C1C 81 83 00 00 */ lwz r12, 0(r3) +/* 8022CCC0 00229C20 81 8C 02 CC */ lwz r12, 0x2cc(r12) +/* 8022CCC4 00229C24 7D 89 03 A6 */ mtctr r12 +/* 8022CCC8 00229C28 4E 80 04 21 */ bctrl +/* 8022CCCC 00229C2C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022CCD0 00229C30 41 82 00 14 */ beq lbl_8022CCE4 +/* 8022CCD4 00229C34 80 7D 07 30 */ lwz r3, 0x730(r29) +/* 8022CCD8 00229C38 7F E4 FB 78 */ mr r4, r31 +/* 8022CCDC 00229C3C 38 A0 00 01 */ li r5, 1 +/* 8022CCE0 00229C40 4B F7 A6 19 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb +lbl_8022CCE4: +/* 8022CCE4 00229C44 A0 1D 07 72 */ lhz r0, 0x772(r29) +/* 8022CCE8 00229C48 7F E3 FB 78 */ mr r3, r31 +/* 8022CCEC 00229C4C 38 81 00 74 */ addi r4, r1, 0x74 +/* 8022CCF0 00229C50 B0 01 00 74 */ sth r0, 0x74(r1) +/* 8022CCF4 00229C54 4B E1 F8 81 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8022CCF8 00229C58 28 03 00 00 */ cmplwi r3, 0 +/* 8022CCFC 00229C5C 41 82 06 48 */ beq lbl_8022D344 +/* 8022CD00 00229C60 81 83 00 00 */ lwz r12, 0(r3) +/* 8022CD04 00229C64 38 80 00 01 */ li r4, 1 +/* 8022CD08 00229C68 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 8022CD0C 00229C6C 7D 89 03 A6 */ mtctr r12 +/* 8022CD10 00229C70 4E 80 04 21 */ bctrl +/* 8022CD14 00229C74 48 00 06 30 */ b lbl_8022D344 +/* 8022CD18 00229C78 81 83 00 00 */ lwz r12, 0(r3) +/* 8022CD1C 00229C7C 81 8C 02 CC */ lwz r12, 0x2cc(r12) +/* 8022CD20 00229C80 7D 89 03 A6 */ mtctr r12 +/* 8022CD24 00229C84 4E 80 04 21 */ bctrl +/* 8022CD28 00229C88 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022CD2C 00229C8C 41 82 00 14 */ beq lbl_8022CD40 +/* 8022CD30 00229C90 80 7D 07 30 */ lwz r3, 0x730(r29) +/* 8022CD34 00229C94 7F E4 FB 78 */ mr r4, r31 +/* 8022CD38 00229C98 38 A0 00 00 */ li r5, 0 +/* 8022CD3C 00229C9C 4B F7 A5 BD */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb +lbl_8022CD40: +/* 8022CD40 00229CA0 80 7D 05 D4 */ lwz r3, 0x5d4(r29) +/* 8022CD44 00229CA4 7F E4 FB 78 */ mr r4, r31 +/* 8022CD48 00229CA8 38 A0 00 00 */ li r5, 0 +/* 8022CD4C 00229CAC 4B F7 A5 AD */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb +/* 8022CD50 00229CB0 A0 1D 07 72 */ lhz r0, 0x772(r29) +/* 8022CD54 00229CB4 7F E3 FB 78 */ mr r3, r31 +/* 8022CD58 00229CB8 38 81 00 70 */ addi r4, r1, 0x70 +/* 8022CD5C 00229CBC B0 01 00 70 */ sth r0, 0x70(r1) +/* 8022CD60 00229CC0 4B E1 F8 15 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8022CD64 00229CC4 28 03 00 00 */ cmplwi r3, 0 +/* 8022CD68 00229CC8 41 82 05 DC */ beq lbl_8022D344 +/* 8022CD6C 00229CCC 81 83 00 00 */ lwz r12, 0(r3) +/* 8022CD70 00229CD0 38 80 00 00 */ li r4, 0 +/* 8022CD74 00229CD4 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 8022CD78 00229CD8 7D 89 03 A6 */ mtctr r12 +/* 8022CD7C 00229CDC 4E 80 04 21 */ bctrl +/* 8022CD80 00229CE0 48 00 05 C4 */ b lbl_8022D344 +/* 8022CD84 00229CE4 81 83 00 00 */ lwz r12, 0(r3) +/* 8022CD88 00229CE8 81 8C 02 CC */ lwz r12, 0x2cc(r12) +/* 8022CD8C 00229CEC 7D 89 03 A6 */ mtctr r12 +/* 8022CD90 00229CF0 4E 80 04 21 */ bctrl +/* 8022CD94 00229CF4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022CD98 00229CF8 41 82 00 10 */ beq lbl_8022CDA8 +/* 8022CD9C 00229CFC 80 7D 07 30 */ lwz r3, 0x730(r29) +/* 8022CDA0 00229D00 7F E4 FB 78 */ mr r4, r31 +/* 8022CDA4 00229D04 4B F7 A6 21 */ bl Destroy__22CCollisionActorManagerCFR13CStateManager +lbl_8022CDA8: +/* 8022CDA8 00229D08 80 7D 05 D4 */ lwz r3, 0x5d4(r29) +/* 8022CDAC 00229D0C 7F E4 FB 78 */ mr r4, r31 +/* 8022CDB0 00229D10 4B F7 A6 15 */ bl Destroy__22CCollisionActorManagerCFR13CStateManager +/* 8022CDB4 00229D14 A0 1D 07 72 */ lhz r0, 0x772(r29) +/* 8022CDB8 00229D18 7F E3 FB 78 */ mr r3, r31 +/* 8022CDBC 00229D1C 38 81 00 6C */ addi r4, r1, 0x6c +/* 8022CDC0 00229D20 B0 01 00 6C */ sth r0, 0x6c(r1) +/* 8022CDC4 00229D24 4B E1 F4 A9 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +/* 8022CDC8 00229D28 48 00 05 7C */ b lbl_8022D344 +/* 8022CDCC 00229D2C 88 1D 09 88 */ lbz r0, 0x988(r29) +/* 8022CDD0 00229D30 38 60 00 01 */ li r3, 1 +/* 8022CDD4 00229D34 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 8022CDD8 00229D38 98 1D 09 88 */ stb r0, 0x988(r29) +/* 8022CDDC 00229D3C 48 00 05 68 */ b lbl_8022D344 +/* 8022CDE0 00229D40 80 BD 00 04 */ lwz r5, 4(r29) +/* 8022CDE4 00229D44 80 9F 08 50 */ lwz r4, 0x850(r31) +/* 8022CDE8 00229D48 54 A3 18 38 */ slwi r3, r5, 3 +/* 8022CDEC 00229D4C 90 A1 00 8C */ stw r5, 0x8c(r1) +/* 8022CDF0 00229D50 80 84 00 20 */ lwz r4, 0x20(r4) +/* 8022CDF4 00229D54 38 03 00 04 */ addi r0, r3, 4 +/* 8022CDF8 00229D58 90 A1 00 88 */ stw r5, 0x88(r1) +/* 8022CDFC 00229D5C 7C 64 00 2E */ lwzx r3, r4, r0 +/* 8022CE00 00229D60 80 63 01 2C */ lwz r3, 0x12c(r3) +/* 8022CE04 00229D64 80 03 10 BC */ lwz r0, 0x10bc(r3) +/* 8022CE08 00229D68 90 1D 07 D0 */ stw r0, 0x7d0(r29) +/* 8022CE0C 00229D6C 48 00 05 38 */ b lbl_8022D344 +/* 8022CE10 00229D70 81 83 00 00 */ lwz r12, 0(r3) +/* 8022CE14 00229D74 7F E4 FB 78 */ mr r4, r31 +/* 8022CE18 00229D78 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8022CE1C 00229D7C 7D 89 03 A6 */ mtctr r12 +/* 8022CE20 00229D80 4E 80 04 21 */ bctrl +/* 8022CE24 00229D84 C0 23 00 00 */ lfs f1, 0(r3) +/* 8022CE28 00229D88 C0 02 B5 B8 */ lfs f0, lbl_805AD2D8@sda21(r2) +/* 8022CE2C 00229D8C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8022CE30 00229D90 40 81 05 14 */ ble lbl_8022D344 +/* 8022CE34 00229D94 A0 1E 00 00 */ lhz r0, 0(r30) +/* 8022CE38 00229D98 7F E3 FB 78 */ mr r3, r31 +/* 8022CE3C 00229D9C 38 81 00 68 */ addi r4, r1, 0x68 +/* 8022CE40 00229DA0 B0 01 00 68 */ sth r0, 0x68(r1) +/* 8022CE44 00229DA4 4B E1 F7 61 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8022CE48 00229DA8 7C 64 1B 78 */ mr r4, r3 +/* 8022CE4C 00229DAC 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 8022CE50 00229DB0 4B E8 24 FD */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8022CE54 00229DB4 80 83 00 04 */ lwz r4, 4(r3) +/* 8022CE58 00229DB8 28 04 00 00 */ cmplwi r4, 0 +/* 8022CE5C 00229DBC 41 82 02 60 */ beq lbl_8022D0BC +/* 8022CE60 00229DC0 38 61 00 64 */ addi r3, r1, 0x64 +/* 8022CE64 00229DC4 4B F7 BD 29 */ bl GetLastTouchedObject__15CCollisionActorCFv +/* 8022CE68 00229DC8 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8022CE6C 00229DCC A0 81 00 64 */ lhz r4, 0x64(r1) +/* 8022CE70 00229DD0 A0 03 00 08 */ lhz r0, 8(r3) +/* 8022CE74 00229DD4 B0 81 00 84 */ sth r4, 0x84(r1) +/* 8022CE78 00229DD8 7C 04 00 40 */ cmplw r4, r0 +/* 8022CE7C 00229DDC 40 82 02 04 */ bne lbl_8022D080 +/* 8022CE80 00229DE0 88 7D 09 88 */ lbz r3, 0x988(r29) +/* 8022CE84 00229DE4 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f +/* 8022CE88 00229DE8 41 82 01 04 */ beq lbl_8022CF8C +/* 8022CE8C 00229DEC 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f +/* 8022CE90 00229DF0 41 82 00 24 */ beq lbl_8022CEB4 +/* 8022CE94 00229DF4 A0 1E 00 00 */ lhz r0, 0(r30) +/* 8022CE98 00229DF8 7F A3 EB 78 */ mr r3, r29 +/* 8022CE9C 00229DFC 38 81 00 60 */ addi r4, r1, 0x60 +/* 8022CEA0 00229E00 38 BD 07 74 */ addi r5, r29, 0x774 +/* 8022CEA4 00229E04 B0 01 00 60 */ sth r0, 0x60(r1) +/* 8022CEA8 00229E08 4B FF C5 51 */ bl sub_802293f8 +/* 8022CEAC 00229E0C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022CEB0 00229E10 40 82 00 30 */ bne lbl_8022CEE0 +lbl_8022CEB4: +/* 8022CEB4 00229E14 88 1D 09 88 */ lbz r0, 0x988(r29) +/* 8022CEB8 00229E18 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 8022CEBC 00229E1C 41 82 04 88 */ beq lbl_8022D344 +/* 8022CEC0 00229E20 A0 1E 00 00 */ lhz r0, 0(r30) +/* 8022CEC4 00229E24 7F A3 EB 78 */ mr r3, r29 +/* 8022CEC8 00229E28 38 81 00 5C */ addi r4, r1, 0x5c +/* 8022CECC 00229E2C 38 BD 07 88 */ addi r5, r29, 0x788 +/* 8022CED0 00229E30 B0 01 00 5C */ sth r0, 0x5c(r1) +/* 8022CED4 00229E34 4B FF C5 25 */ bl sub_802293f8 +/* 8022CED8 00229E38 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022CEDC 00229E3C 41 82 04 68 */ beq lbl_8022D344 +lbl_8022CEE0: +/* 8022CEE0 00229E40 80 AD 95 68 */ lwz r5, lbl_805A8128@sda21(r13) +/* 8022CEE4 00229E44 38 60 00 00 */ li r3, 0 +/* 8022CEE8 00229E48 38 80 00 01 */ li r4, 1 +/* 8022CEEC 00229E4C 48 15 D0 09 */ bl __shl2i +/* 8022CEF0 00229E50 38 A0 00 00 */ li r5, 0 +/* 8022CEF4 00229E54 38 00 00 03 */ li r0, 3 +/* 8022CEF8 00229E58 90 81 01 1C */ stw r4, 0x11c(r1) +/* 8022CEFC 00229E5C 7F A4 EB 78 */ mr r4, r29 +/* 8022CF00 00229E60 90 61 01 18 */ stw r3, 0x118(r1) +/* 8022CF04 00229E64 38 61 01 30 */ addi r3, r1, 0x130 +/* 8022CF08 00229E68 90 A1 01 24 */ stw r5, 0x124(r1) +/* 8022CF0C 00229E6C 90 A1 01 20 */ stw r5, 0x120(r1) +/* 8022CF10 00229E70 90 01 01 28 */ stw r0, 0x128(r1) +/* 8022CF14 00229E74 A0 1D 00 08 */ lhz r0, 8(r29) +/* 8022CF18 00229E78 B0 01 00 48 */ sth r0, 0x48(r1) +/* 8022CF1C 00229E7C 80 BF 08 4C */ lwz r5, 0x84c(r31) +/* 8022CF20 00229E80 B0 01 00 44 */ sth r0, 0x44(r1) +/* 8022CF24 00229E84 A0 A5 00 08 */ lhz r5, 8(r5) +/* 8022CF28 00229E88 B0 A1 00 50 */ sth r5, 0x50(r1) +/* 8022CF2C 00229E8C A0 1D 00 08 */ lhz r0, 8(r29) +/* 8022CF30 00229E90 B0 A1 00 4C */ sth r5, 0x4c(r1) +/* 8022CF34 00229E94 B0 01 00 58 */ sth r0, 0x58(r1) +/* 8022CF38 00229E98 81 9D 00 00 */ lwz r12, 0(r29) +/* 8022CF3C 00229E9C B0 01 00 54 */ sth r0, 0x54(r1) +/* 8022CF40 00229EA0 81 8C 02 B0 */ lwz r12, 0x2b0(r12) +/* 8022CF44 00229EA4 7D 89 03 A6 */ mtctr r12 +/* 8022CF48 00229EA8 4E 80 04 21 */ bctrl +/* 8022CF4C 00229EAC 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8022CF50 00229EB0 7F E3 FB 78 */ mr r3, r31 +/* 8022CF54 00229EB4 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 8022CF58 00229EB8 38 A1 00 50 */ addi r5, r1, 0x50 +/* 8022CF5C 00229EBC 38 81 00 58 */ addi r4, r1, 0x58 +/* 8022CF60 00229EC0 38 C1 00 48 */ addi r6, r1, 0x48 +/* 8022CF64 00229EC4 38 E1 01 30 */ addi r7, r1, 0x130 +/* 8022CF68 00229EC8 39 01 01 18 */ addi r8, r1, 0x118 +/* 8022CF6C 00229ECC 4B E1 D1 35 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +/* 8022CF70 00229ED0 C0 1D 04 24 */ lfs f0, 0x424(r29) +/* 8022CF74 00229ED4 38 60 00 00 */ li r3, 0 +/* 8022CF78 00229ED8 D0 1D 04 20 */ stfs f0, 0x420(r29) +/* 8022CF7C 00229EDC 88 1D 09 88 */ lbz r0, 0x988(r29) +/* 8022CF80 00229EE0 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8022CF84 00229EE4 98 1D 09 88 */ stb r0, 0x988(r29) +/* 8022CF88 00229EE8 48 00 03 BC */ b lbl_8022D344 +lbl_8022CF8C: +/* 8022CF8C 00229EEC C0 3D 04 20 */ lfs f1, 0x420(r29) +/* 8022CF90 00229EF0 C0 02 B5 B8 */ lfs f0, lbl_805AD2D8@sda21(r2) +/* 8022CF94 00229EF4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8022CF98 00229EF8 4C 40 13 82 */ cror 2, 0, 2 +/* 8022CF9C 00229EFC 40 82 03 A8 */ bne lbl_8022D344 +/* 8022CFA0 00229F00 7F A4 EB 78 */ mr r4, r29 +/* 8022CFA4 00229F04 38 61 00 F8 */ addi r3, r1, 0xf8 +/* 8022CFA8 00229F08 81 9D 00 00 */ lwz r12, 0(r29) +/* 8022CFAC 00229F0C 81 8C 02 B0 */ lwz r12, 0x2b0(r12) +/* 8022CFB0 00229F10 7D 89 03 A6 */ mtctr r12 +/* 8022CFB4 00229F14 4E 80 04 21 */ bctrl +/* 8022CFB8 00229F18 C0 21 01 00 */ lfs f1, 0x100(r1) +/* 8022CFBC 00229F1C 38 60 00 00 */ li r3, 0 +/* 8022CFC0 00229F20 C0 02 B5 BC */ lfs f0, lbl_805AD2DC@sda21(r2) +/* 8022CFC4 00229F24 38 80 00 01 */ li r4, 1 +/* 8022CFC8 00229F28 80 E1 00 F8 */ lwz r7, 0xf8(r1) +/* 8022CFCC 00229F2C 88 C1 00 FC */ lbz r6, 0xfc(r1) +/* 8022CFD0 00229F30 EC 00 00 72 */ fmuls f0, f0, f1 +/* 8022CFD4 00229F34 D0 21 01 54 */ stfs f1, 0x154(r1) +/* 8022CFD8 00229F38 C0 61 01 04 */ lfs f3, 0x104(r1) +/* 8022CFDC 00229F3C C0 41 01 08 */ lfs f2, 0x108(r1) +/* 8022CFE0 00229F40 C0 21 01 0C */ lfs f1, 0x10c(r1) +/* 8022CFE4 00229F44 88 01 01 10 */ lbz r0, 0x110(r1) +/* 8022CFE8 00229F48 80 AD 95 68 */ lwz r5, lbl_805A8128@sda21(r13) +/* 8022CFEC 00229F4C 90 E1 01 4C */ stw r7, 0x14c(r1) +/* 8022CFF0 00229F50 98 C1 01 50 */ stb r6, 0x150(r1) +/* 8022CFF4 00229F54 D0 61 01 58 */ stfs f3, 0x158(r1) +/* 8022CFF8 00229F58 D0 41 01 5C */ stfs f2, 0x15c(r1) +/* 8022CFFC 00229F5C D0 21 01 60 */ stfs f1, 0x160(r1) +/* 8022D000 00229F60 98 01 01 64 */ stb r0, 0x164(r1) +/* 8022D004 00229F64 D0 01 01 54 */ stfs f0, 0x154(r1) +/* 8022D008 00229F68 48 15 CE ED */ bl __shl2i +/* 8022D00C 00229F6C 39 40 00 00 */ li r10, 0 +/* 8022D010 00229F70 38 00 00 03 */ li r0, 3 +/* 8022D014 00229F74 90 81 00 E4 */ stw r4, 0xe4(r1) +/* 8022D018 00229F78 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8022D01C 00229F7C 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 8022D020 00229F80 38 A1 00 38 */ addi r5, r1, 0x38 +/* 8022D024 00229F84 90 61 00 E0 */ stw r3, 0xe0(r1) +/* 8022D028 00229F88 38 81 00 40 */ addi r4, r1, 0x40 +/* 8022D02C 00229F8C 7F E3 FB 78 */ mr r3, r31 +/* 8022D030 00229F90 38 C1 00 30 */ addi r6, r1, 0x30 +/* 8022D034 00229F94 91 41 00 EC */ stw r10, 0xec(r1) +/* 8022D038 00229F98 38 E1 01 4C */ addi r7, r1, 0x14c +/* 8022D03C 00229F9C 39 01 00 E0 */ addi r8, r1, 0xe0 +/* 8022D040 00229FA0 91 41 00 E8 */ stw r10, 0xe8(r1) +/* 8022D044 00229FA4 90 01 00 F0 */ stw r0, 0xf0(r1) +/* 8022D048 00229FA8 A0 1D 00 08 */ lhz r0, 8(r29) +/* 8022D04C 00229FAC B0 01 00 30 */ sth r0, 0x30(r1) +/* 8022D050 00229FB0 81 5F 08 4C */ lwz r10, 0x84c(r31) +/* 8022D054 00229FB4 B0 01 00 2C */ sth r0, 0x2c(r1) +/* 8022D058 00229FB8 A1 4A 00 08 */ lhz r10, 8(r10) +/* 8022D05C 00229FBC B1 41 00 38 */ sth r10, 0x38(r1) +/* 8022D060 00229FC0 A0 1D 00 08 */ lhz r0, 8(r29) +/* 8022D064 00229FC4 B1 41 00 34 */ sth r10, 0x34(r1) +/* 8022D068 00229FC8 B0 01 00 3C */ sth r0, 0x3c(r1) +/* 8022D06C 00229FCC B0 01 00 40 */ sth r0, 0x40(r1) +/* 8022D070 00229FD0 4B E1 D0 31 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +/* 8022D074 00229FD4 C0 1D 04 24 */ lfs f0, 0x424(r29) +/* 8022D078 00229FD8 D0 1D 04 20 */ stfs f0, 0x420(r29) +/* 8022D07C 00229FDC 48 00 02 C8 */ b lbl_8022D344 +lbl_8022D080: +/* 8022D080 00229FE0 B0 81 00 28 */ sth r4, 0x28(r1) +/* 8022D084 00229FE4 7F E3 FB 78 */ mr r3, r31 +/* 8022D088 00229FE8 38 81 00 28 */ addi r4, r1, 0x28 +/* 8022D08C 00229FEC 4B E1 F5 19 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8022D090 00229FF0 7C 64 1B 78 */ mr r4, r3 +/* 8022D094 00229FF4 38 61 00 98 */ addi r3, r1, 0x98 +/* 8022D098 00229FF8 4B E8 06 75 */ bl "__ct__29TCastToPtr<15CGameProjectile>FP7CEntity" +/* 8022D09C 00229FFC 80 03 00 04 */ lwz r0, 4(r3) +/* 8022D0A0 0022A000 28 00 00 00 */ cmplwi r0, 0 +/* 8022D0A4 0022A004 41 82 02 A0 */ beq lbl_8022D344 +/* 8022D0A8 0022A008 7F A3 EB 78 */ mr r3, r29 +/* 8022D0AC 0022A00C 7F E5 FB 78 */ mr r5, r31 +/* 8022D0B0 0022A010 38 80 00 01 */ li r4, 1 +/* 8022D0B4 0022A014 4B FF A4 E9 */ bl sub_8022759c +/* 8022D0B8 0022A018 48 00 02 8C */ b lbl_8022D344 +lbl_8022D0BC: +/* 8022D0BC 0022A01C A0 1E 00 00 */ lhz r0, 0(r30) +/* 8022D0C0 0022A020 A0 7D 07 72 */ lhz r3, 0x772(r29) +/* 8022D0C4 0022A024 7C 00 18 40 */ cmplw r0, r3 +/* 8022D0C8 0022A028 40 82 02 7C */ bne lbl_8022D344 +/* 8022D0CC 0022A02C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8022D0D0 0022A030 7C 03 00 40 */ cmplw r3, r0 +/* 8022D0D4 0022A034 41 82 02 70 */ beq lbl_8022D344 +/* 8022D0D8 0022A038 7F A3 EB 78 */ mr r3, r29 +/* 8022D0DC 0022A03C 7F E5 FB 78 */ mr r5, r31 +/* 8022D0E0 0022A040 38 80 00 01 */ li r4, 1 +/* 8022D0E4 0022A044 4B FF A4 B9 */ bl sub_8022759c +/* 8022D0E8 0022A048 48 00 02 5C */ b lbl_8022D344 +/* 8022D0EC 0022A04C A0 1E 00 00 */ lhz r0, 0(r30) +/* 8022D0F0 0022A050 7F E3 FB 78 */ mr r3, r31 +/* 8022D0F4 0022A054 38 81 00 24 */ addi r4, r1, 0x24 +/* 8022D0F8 0022A058 3B 60 00 00 */ li r27, 0 +/* 8022D0FC 0022A05C B0 01 00 24 */ sth r0, 0x24(r1) +/* 8022D100 0022A060 4B E1 F4 75 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8022D104 0022A064 7C 64 1B 78 */ mr r4, r3 +/* 8022D108 0022A068 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 8022D10C 0022A06C 4B E8 22 41 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8022D110 0022A070 80 83 00 04 */ lwz r4, 4(r3) +/* 8022D114 0022A074 28 04 00 00 */ cmplwi r4, 0 +/* 8022D118 0022A078 41 82 01 0C */ beq lbl_8022D224 +/* 8022D11C 0022A07C 38 61 00 20 */ addi r3, r1, 0x20 +/* 8022D120 0022A080 4B F7 BA 6D */ bl GetLastTouchedObject__15CCollisionActorCFv +/* 8022D124 0022A084 A0 01 00 20 */ lhz r0, 0x20(r1) +/* 8022D128 0022A088 7F E3 FB 78 */ mr r3, r31 +/* 8022D12C 0022A08C 38 81 00 1C */ addi r4, r1, 0x1c +/* 8022D130 0022A090 B0 01 00 80 */ sth r0, 0x80(r1) +/* 8022D134 0022A094 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 8022D138 0022A098 4B E1 F4 6D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8022D13C 0022A09C 7C 64 1B 78 */ mr r4, r3 +/* 8022D140 0022A0A0 38 61 00 90 */ addi r3, r1, 0x90 +/* 8022D144 0022A0A4 4B E8 05 C9 */ bl "__ct__29TCastToPtr<15CGameProjectile>FP7CEntity" +/* 8022D148 0022A0A8 81 23 00 04 */ lwz r9, 4(r3) +/* 8022D14C 0022A0AC 28 09 00 00 */ cmplwi r9, 0 +/* 8022D150 0022A0B0 41 82 01 F4 */ beq lbl_8022D344 +/* 8022D154 0022A0B4 A0 7E 00 00 */ lhz r3, 0(r30) +/* 8022D158 0022A0B8 A0 1D 07 70 */ lhz r0, 0x770(r29) +/* 8022D15C 0022A0BC 7C 03 00 40 */ cmplw r3, r0 +/* 8022D160 0022A0C0 40 82 00 88 */ bne lbl_8022D1E8 +/* 8022D164 0022A0C4 C0 02 88 F0 */ lfs f0, lbl_805AA610@sda21(r2) +/* 8022D168 0022A0C8 7F A3 EB 78 */ mr r3, r29 +/* 8022D16C 0022A0CC 7F E5 FB 78 */ mr r5, r31 +/* 8022D170 0022A0D0 38 81 00 B8 */ addi r4, r1, 0xb8 +/* 8022D174 0022A0D4 D0 1D 04 28 */ stfs f0, 0x428(r29) +/* 8022D178 0022A0D8 38 C9 01 2C */ addi r6, r9, 0x12c +/* 8022D17C 0022A0DC 38 E0 00 01 */ li r7, 1 +/* 8022D180 0022A0E0 39 00 00 00 */ li r8, 0 +/* 8022D184 0022A0E4 C0 49 00 50 */ lfs f2, 0x50(r9) +/* 8022D188 0022A0E8 C0 29 02 9C */ lfs f1, 0x29c(r9) +/* 8022D18C 0022A0EC C0 69 00 60 */ lfs f3, 0x60(r9) +/* 8022D190 0022A0F0 EC 82 08 28 */ fsubs f4, f2, f1 +/* 8022D194 0022A0F4 C0 09 02 A0 */ lfs f0, 0x2a0(r9) +/* 8022D198 0022A0F8 C0 49 00 40 */ lfs f2, 0x40(r9) +/* 8022D19C 0022A0FC EC 63 00 28 */ fsubs f3, f3, f0 +/* 8022D1A0 0022A100 C0 09 02 98 */ lfs f0, 0x298(r9) +/* 8022D1A4 0022A104 C0 29 01 40 */ lfs f1, 0x140(r9) +/* 8022D1A8 0022A108 EC 02 00 28 */ fsubs f0, f2, f0 +/* 8022D1AC 0022A10C D0 81 00 BC */ stfs f4, 0xbc(r1) +/* 8022D1B0 0022A110 D0 61 00 C0 */ stfs f3, 0xc0(r1) +/* 8022D1B4 0022A114 D0 01 00 B8 */ stfs f0, 0xb8(r1) +/* 8022D1B8 0022A118 81 9D 00 00 */ lwz r12, 0(r29) +/* 8022D1BC 0022A11C 81 8C 00 88 */ lwz r12, 0x88(r12) +/* 8022D1C0 0022A120 7D 89 03 A6 */ mtctr r12 +/* 8022D1C4 0022A124 4E 80 04 21 */ bctrl +/* 8022D1C8 0022A128 A0 01 00 80 */ lhz r0, 0x80(r1) +/* 8022D1CC 0022A12C 7F A3 EB 78 */ mr r3, r29 +/* 8022D1D0 0022A130 7F 84 E3 78 */ mr r4, r28 +/* 8022D1D4 0022A134 7F E6 FB 78 */ mr r6, r31 +/* 8022D1D8 0022A138 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8022D1DC 0022A13C 38 A1 00 18 */ addi r5, r1, 0x18 +/* 8022D1E0 0022A140 4B E4 F9 99 */ bl AcceptScriptMsg__10CPatternedF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 8022D1E4 0022A144 48 00 00 2C */ b lbl_8022D210 +lbl_8022D1E8: +/* 8022D1E8 0022A148 A0 1D 07 9C */ lhz r0, 0x79c(r29) +/* 8022D1EC 0022A14C 7C 03 00 40 */ cmplw r3, r0 +/* 8022D1F0 0022A150 40 82 00 20 */ bne lbl_8022D210 +/* 8022D1F4 0022A154 88 1D 07 6C */ lbz r0, 0x76c(r29) +/* 8022D1F8 0022A158 28 00 00 00 */ cmplwi r0, 0 +/* 8022D1FC 0022A15C 41 82 00 14 */ beq lbl_8022D210 +/* 8022D200 0022A160 7F A3 EB 78 */ mr r3, r29 +/* 8022D204 0022A164 7F E4 FB 78 */ mr r4, r31 +/* 8022D208 0022A168 38 A9 00 34 */ addi r5, r9, 0x34 +/* 8022D20C 0022A16C 4B FF AF CD */ bl sub_802281d8 +lbl_8022D210: +/* 8022D210 0022A170 7F A3 EB 78 */ mr r3, r29 +/* 8022D214 0022A174 7F E5 FB 78 */ mr r5, r31 +/* 8022D218 0022A178 38 80 00 01 */ li r4, 1 +/* 8022D21C 0022A17C 4B FF A3 81 */ bl sub_8022759c +/* 8022D220 0022A180 48 00 01 24 */ b lbl_8022D344 +lbl_8022D224: +/* 8022D224 0022A184 A0 1E 00 00 */ lhz r0, 0(r30) +/* 8022D228 0022A188 A0 7D 07 72 */ lhz r3, 0x772(r29) +/* 8022D22C 0022A18C 7C 00 18 40 */ cmplw r0, r3 +/* 8022D230 0022A190 40 82 00 A8 */ bne lbl_8022D2D8 +/* 8022D234 0022A194 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8022D238 0022A198 7C 03 00 40 */ cmplw r3, r0 +/* 8022D23C 0022A19C 41 82 00 9C */ beq lbl_8022D2D8 +/* 8022D240 0022A1A0 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8022D244 0022A1A4 C0 5D 00 58 */ lfs f2, 0x58(r29) +/* 8022D248 0022A1A8 38 A3 AA 68 */ addi r5, r3, lbl_803DAA68@l +/* 8022D24C 0022A1AC C0 3D 00 48 */ lfs f1, 0x48(r29) +/* 8022D250 0022A1B0 C0 1D 00 38 */ lfs f0, 0x38(r29) +/* 8022D254 0022A1B4 3C 80 80 3E */ lis r4, lbl_803DAA44@ha +/* 8022D258 0022A1B8 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 8022D25C 0022A1BC 38 C0 00 04 */ li r6, 4 +/* 8022D260 0022A1C0 38 00 00 08 */ li r0, 8 +/* 8022D264 0022A1C4 90 A1 00 C4 */ stw r5, 0xc4(r1) +/* 8022D268 0022A1C8 38 A4 AA 44 */ addi r5, r4, lbl_803DAA44@l +/* 8022D26C 0022A1CC 3B 43 00 04 */ addi r26, r3, 4 +/* 8022D270 0022A1D0 90 C1 00 C8 */ stw r6, 0xc8(r1) +/* 8022D274 0022A1D4 7F 43 D3 78 */ mr r3, r26 +/* 8022D278 0022A1D8 38 80 00 04 */ li r4, 4 +/* 8022D27C 0022A1DC 90 A1 00 C4 */ stw r5, 0xc4(r1) +/* 8022D280 0022A1E0 D0 01 00 CC */ stfs f0, 0xcc(r1) +/* 8022D284 0022A1E4 D0 21 00 D0 */ stfs f1, 0xd0(r1) +/* 8022D288 0022A1E8 D0 41 00 D4 */ stfs f2, 0xd4(r1) +/* 8022D28C 0022A1EC 90 01 00 D8 */ stw r0, 0xd8(r1) +/* 8022D290 0022A1F0 4B F0 41 A9 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8022D294 0022A1F4 80 01 00 C8 */ lwz r0, 0xc8(r1) +/* 8022D298 0022A1F8 3C 60 80 3E */ lis r3, lbl_803DAA44@ha +/* 8022D29C 0022A1FC 38 83 AA 44 */ addi r4, r3, lbl_803DAA44@l +/* 8022D2A0 0022A200 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8022D2A4 0022A204 90 1A 00 F8 */ stw r0, 0xf8(r26) +/* 8022D2A8 0022A208 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 8022D2AC 0022A20C 80 A1 00 CC */ lwz r5, 0xcc(r1) +/* 8022D2B0 0022A210 80 61 00 D0 */ lwz r3, 0xd0(r1) +/* 8022D2B4 0022A214 90 BA 00 FC */ stw r5, 0xfc(r26) +/* 8022D2B8 0022A218 80 A1 00 D4 */ lwz r5, 0xd4(r1) +/* 8022D2BC 0022A21C 90 7A 01 00 */ stw r3, 0x100(r26) +/* 8022D2C0 0022A220 80 61 00 D8 */ lwz r3, 0xd8(r1) +/* 8022D2C4 0022A224 90 BA 01 04 */ stw r5, 0x104(r26) +/* 8022D2C8 0022A228 90 81 00 C4 */ stw r4, 0xc4(r1) +/* 8022D2CC 0022A22C 90 7A 01 08 */ stw r3, 0x108(r26) +/* 8022D2D0 0022A230 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 8022D2D4 0022A234 48 00 00 70 */ b lbl_8022D344 +lbl_8022D2D8: +/* 8022D2D8 0022A238 A0 1E 00 00 */ lhz r0, 0(r30) +/* 8022D2DC 0022A23C 7F A3 EB 78 */ mr r3, r29 +/* 8022D2E0 0022A240 7F E4 FB 78 */ mr r4, r31 +/* 8022D2E4 0022A244 38 A1 00 14 */ addi r5, r1, 0x14 +/* 8022D2E8 0022A248 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8022D2EC 0022A24C 4B FF A1 79 */ bl sub_80227464 +/* 8022D2F0 0022A250 48 00 00 54 */ b lbl_8022D344 +/* 8022D2F4 0022A254 7F E5 FB 78 */ mr r5, r31 +/* 8022D2F8 0022A258 38 80 00 01 */ li r4, 1 +/* 8022D2FC 0022A25C 4B FF A2 A1 */ bl sub_8022759c +/* 8022D300 0022A260 A0 1E 00 00 */ lhz r0, 0(r30) +/* 8022D304 0022A264 7F E3 FB 78 */ mr r3, r31 +/* 8022D308 0022A268 38 81 00 10 */ addi r4, r1, 0x10 +/* 8022D30C 0022A26C B0 01 00 10 */ sth r0, 0x10(r1) +/* 8022D310 0022A270 4B E1 F2 65 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8022D314 0022A274 7C 64 1B 78 */ mr r4, r3 +/* 8022D318 0022A278 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 8022D31C 0022A27C 4B E8 20 31 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8022D320 0022A280 80 03 00 04 */ lwz r0, 4(r3) +/* 8022D324 0022A284 28 00 00 00 */ cmplwi r0, 0 +/* 8022D328 0022A288 40 82 00 1C */ bne lbl_8022D344 +/* 8022D32C 0022A28C A0 1E 00 00 */ lhz r0, 0(r30) +/* 8022D330 0022A290 7F A3 EB 78 */ mr r3, r29 +/* 8022D334 0022A294 7F E4 FB 78 */ mr r4, r31 +/* 8022D338 0022A298 38 A1 00 0C */ addi r5, r1, 0xc +/* 8022D33C 0022A29C B0 01 00 0C */ sth r0, 0xc(r1) +/* 8022D340 0022A2A0 4B FF A1 25 */ bl sub_80227464 +lbl_8022D344: +/* 8022D344 0022A2A4 57 60 06 3F */ clrlwi. r0, r27, 0x18 +/* 8022D348 0022A2A8 41 82 00 20 */ beq lbl_8022D368 +/* 8022D34C 0022A2AC A0 1E 00 00 */ lhz r0, 0(r30) +/* 8022D350 0022A2B0 7F A3 EB 78 */ mr r3, r29 +/* 8022D354 0022A2B4 7F 84 E3 78 */ mr r4, r28 +/* 8022D358 0022A2B8 7F E6 FB 78 */ mr r6, r31 +/* 8022D35C 0022A2BC B0 01 00 08 */ sth r0, 8(r1) +/* 8022D360 0022A2C0 38 A1 00 08 */ addi r5, r1, 8 +/* 8022D364 0022A2C4 4B E4 F8 15 */ bl AcceptScriptMsg__10CPatternedF20EScriptObjectMessage9TUniqueIdR13CStateManager +lbl_8022D368: +/* 8022D368 0022A2C8 E3 E1 01 88 */ psq_l f31, 392(r1), 0, qr0 +/* 8022D36C 0022A2CC CB E1 01 80 */ lfd f31, 0x180(r1) +/* 8022D370 0022A2D0 BB 41 01 68 */ lmw r26, 0x168(r1) +/* 8022D374 0022A2D4 80 01 01 94 */ lwz r0, 0x194(r1) +/* 8022D378 0022A2D8 7C 08 03 A6 */ mtlr r0 +/* 8022D37C 0022A2DC 38 21 01 90 */ addi r1, r1, 0x190 +/* 8022D380 0022A2E0 4E 80 00 20 */ blr + +.global Think__12CElitePirateFfR13CStateManager +Think__12CElitePirateFfR13CStateManager: +/* 8022D384 0022A2E4 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8022D388 0022A2E8 7C 08 02 A6 */ mflr r0 +/* 8022D38C 0022A2EC 90 01 00 34 */ stw r0, 0x34(r1) +/* 8022D390 0022A2F0 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 8022D394 0022A2F4 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 8022D398 0022A2F8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8022D39C 0022A2FC 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8022D3A0 0022A300 88 03 00 30 */ lbz r0, 0x30(r3) +/* 8022D3A4 0022A304 FF E0 08 90 */ fmr f31, f1 +/* 8022D3A8 0022A308 7C 7E 1B 78 */ mr r30, r3 +/* 8022D3AC 0022A30C 7C 9F 23 78 */ mr r31, r4 +/* 8022D3B0 0022A310 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8022D3B4 0022A314 41 82 00 EC */ beq lbl_8022D4A0 +/* 8022D3B8 0022A318 4B E4 C7 61 */ bl Think__10CPatternedFfR13CStateManager +/* 8022D3BC 0022A31C FC 20 F8 90 */ fmr f1, f31 +/* 8022D3C0 0022A320 38 7E 06 F8 */ addi r3, r30, 0x6f8 +/* 8022D3C4 0022A324 4B F4 85 E5 */ bl Update__13CBoneTrackingFf +/* 8022D3C8 0022A328 7F C3 F3 78 */ mr r3, r30 +/* 8022D3CC 0022A32C 81 9E 00 00 */ lwz r12, 0(r30) +/* 8022D3D0 0022A330 81 8C 02 CC */ lwz r12, 0x2cc(r12) +/* 8022D3D4 0022A334 7D 89 03 A6 */ mtctr r12 +/* 8022D3D8 0022A338 4E 80 04 21 */ bctrl +/* 8022D3DC 0022A33C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022D3E0 0022A340 41 82 00 18 */ beq lbl_8022D3F8 +/* 8022D3E4 0022A344 FC 20 F8 90 */ fmr f1, f31 +/* 8022D3E8 0022A348 80 7E 07 30 */ lwz r3, 0x730(r30) +/* 8022D3EC 0022A34C 7F E4 FB 78 */ mr r4, r31 +/* 8022D3F0 0022A350 38 A0 00 00 */ li r5, 0 +/* 8022D3F4 0022A354 4B F7 A0 5D */ bl Update__22CCollisionActorManagerCFfR13CStateManagerQ222CCollisionActorManager14EUpdateOptions +lbl_8022D3F8: +/* 8022D3F8 0022A358 FC 20 F8 90 */ fmr f1, f31 +/* 8022D3FC 0022A35C 80 7E 05 D4 */ lwz r3, 0x5d4(r30) +/* 8022D400 0022A360 7F E4 FB 78 */ mr r4, r31 +/* 8022D404 0022A364 38 A0 00 00 */ li r5, 0 +/* 8022D408 0022A368 4B F7 A0 49 */ bl Update__22CCollisionActorManagerCFfR13CStateManagerQ222CCollisionActorManager14EUpdateOptions +/* 8022D40C 0022A36C 7F C3 F3 78 */ mr r3, r30 +/* 8022D410 0022A370 4B FF BD F9 */ bl sub_80229208 +/* 8022D414 0022A374 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022D418 0022A378 41 82 00 24 */ beq lbl_8022D43C +/* 8022D41C 0022A37C 88 1E 06 F7 */ lbz r0, 0x6f7(r30) +/* 8022D420 0022A380 28 00 00 00 */ cmplwi r0, 0 +/* 8022D424 0022A384 41 82 00 18 */ beq lbl_8022D43C +/* 8022D428 0022A388 C0 22 B6 10 */ lfs f1, lbl_805AD330@sda21(r2) +/* 8022D42C 0022A38C C0 1E 07 A0 */ lfs f0, 0x7a0(r30) +/* 8022D430 0022A390 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8022D434 0022A394 D0 1E 03 B4 */ stfs f0, 0x3b4(r30) +/* 8022D438 0022A398 48 00 00 0C */ b lbl_8022D444 +lbl_8022D43C: +/* 8022D43C 0022A39C C0 1E 07 A0 */ lfs f0, 0x7a0(r30) +/* 8022D440 0022A3A0 D0 1E 03 B4 */ stfs f0, 0x3b4(r30) +lbl_8022D444: +/* 8022D444 0022A3A4 FC 20 F8 90 */ fmr f1, f31 +/* 8022D448 0022A3A8 7F C3 F3 78 */ mr r3, r30 +/* 8022D44C 0022A3AC 4B FF BA 05 */ bl sub_80228e50 +/* 8022D450 0022A3B0 7F C3 F3 78 */ mr r3, r30 +/* 8022D454 0022A3B4 4B FF B3 45 */ bl sub_80228798 +/* 8022D458 0022A3B8 80 82 B5 A8 */ lwz r4, lbl_805AD2C8@sda21(r2) +/* 8022D45C 0022A3BC 38 61 00 08 */ addi r3, r1, 8 +/* 8022D460 0022A3C0 4B DD 78 59 */ bl string_l__4rstlFPCc +/* 8022D464 0022A3C4 7F C3 F3 78 */ mr r3, r30 +/* 8022D468 0022A3C8 7F E4 FB 78 */ mr r4, r31 +/* 8022D46C 0022A3CC 38 BE 07 72 */ addi r5, r30, 0x772 +/* 8022D470 0022A3D0 38 C1 00 08 */ addi r6, r1, 8 +/* 8022D474 0022A3D4 4B FF B5 69 */ bl sub_802289dc +/* 8022D478 0022A3D8 38 61 00 08 */ addi r3, r1, 8 +/* 8022D47C 0022A3DC 48 11 06 65 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8022D480 0022A3E0 7F C3 F3 78 */ mr r3, r30 +/* 8022D484 0022A3E4 7F E4 FB 78 */ mr r4, r31 +/* 8022D488 0022A3E8 4B FF B9 FD */ bl sub_80228e84 +/* 8022D48C 0022A3EC 7F C3 F3 78 */ mr r3, r30 +/* 8022D490 0022A3F0 4B FF BD 79 */ bl sub_80229208 +/* 8022D494 0022A3F4 88 1E 03 28 */ lbz r0, 0x328(r30) +/* 8022D498 0022A3F8 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f +/* 8022D49C 0022A3FC 98 1E 03 28 */ stb r0, 0x328(r30) +lbl_8022D4A0: +/* 8022D4A0 0022A400 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 8022D4A4 0022A404 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8022D4A8 0022A408 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 8022D4AC 0022A40C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8022D4B0 0022A410 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8022D4B4 0022A414 7C 08 03 A6 */ mtlr r0 +/* 8022D4B8 0022A418 38 21 00 30 */ addi r1, r1, 0x30 +/* 8022D4BC 0022A41C 4E 80 00 20 */ blr + +.global Accept__12CElitePirateFR8IVisitor +Accept__12CElitePirateFR8IVisitor: +/* 8022D4C0 0022A420 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8022D4C4 0022A424 7C 08 02 A6 */ mflr r0 +/* 8022D4C8 0022A428 90 01 00 14 */ stw r0, 0x14(r1) +/* 8022D4CC 0022A42C 7C 60 1B 78 */ mr r0, r3 +/* 8022D4D0 0022A430 7C 83 23 78 */ mr r3, r4 +/* 8022D4D4 0022A434 81 84 00 00 */ lwz r12, 0(r4) +/* 8022D4D8 0022A438 7C 04 03 78 */ mr r4, r0 +/* 8022D4DC 0022A43C 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 8022D4E0 0022A440 7D 89 03 A6 */ mtctr r12 +/* 8022D4E4 0022A444 4E 80 04 21 */ bctrl +/* 8022D4E8 0022A448 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8022D4EC 0022A44C 7C 08 03 A6 */ mtlr r0 +/* 8022D4F0 0022A450 38 21 00 10 */ addi r1, r1, 0x10 +/* 8022D4F4 0022A454 4E 80 00 20 */ blr + +.global __dt__12CElitePirateFv +__dt__12CElitePirateFv: +/* 8022D4F8 0022A458 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8022D4FC 0022A45C 7C 08 02 A6 */ mflr r0 +/* 8022D500 0022A460 90 01 00 14 */ stw r0, 0x14(r1) +/* 8022D504 0022A464 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8022D508 0022A468 7C 9F 23 78 */ mr r31, r4 +/* 8022D50C 0022A46C 93 C1 00 08 */ stw r30, 8(r1) +/* 8022D510 0022A470 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8022D514 0022A474 41 82 02 60 */ beq lbl_8022D774 +/* 8022D518 0022A478 3C 60 80 3E */ lis r3, lbl_803E7AE0@ha +/* 8022D51C 0022A47C 34 1E 08 C0 */ addic. r0, r30, 0x8c0 +/* 8022D520 0022A480 38 03 7A E0 */ addi r0, r3, lbl_803E7AE0@l +/* 8022D524 0022A484 90 1E 00 00 */ stw r0, 0(r30) +/* 8022D528 0022A488 41 82 00 60 */ beq lbl_8022D588 +/* 8022D52C 0022A48C 34 1E 08 C4 */ addic. r0, r30, 0x8c4 +/* 8022D530 0022A490 41 82 00 58 */ beq lbl_8022D588 +/* 8022D534 0022A494 80 BE 08 C4 */ lwz r5, 0x8c4(r30) +/* 8022D538 0022A498 38 60 00 00 */ li r3, 0 +/* 8022D53C 0022A49C 2C 05 00 00 */ cmpwi r5, 0 +/* 8022D540 0022A4A0 40 81 00 40 */ ble lbl_8022D580 +/* 8022D544 0022A4A4 2C 05 00 08 */ cmpwi r5, 8 +/* 8022D548 0022A4A8 38 85 FF F8 */ addi r4, r5, -8 +/* 8022D54C 0022A4AC 40 81 00 20 */ ble lbl_8022D56C +/* 8022D550 0022A4B0 38 04 00 07 */ addi r0, r4, 7 +/* 8022D554 0022A4B4 54 00 E8 FE */ srwi r0, r0, 3 +/* 8022D558 0022A4B8 7C 09 03 A6 */ mtctr r0 +/* 8022D55C 0022A4BC 2C 04 00 00 */ cmpwi r4, 0 +/* 8022D560 0022A4C0 40 81 00 0C */ ble lbl_8022D56C +lbl_8022D564: +/* 8022D564 0022A4C4 38 63 00 08 */ addi r3, r3, 8 +/* 8022D568 0022A4C8 42 00 FF FC */ bdnz lbl_8022D564 +lbl_8022D56C: +/* 8022D56C 0022A4CC 7C 03 28 50 */ subf r0, r3, r5 +/* 8022D570 0022A4D0 7C 09 03 A6 */ mtctr r0 +/* 8022D574 0022A4D4 7C 03 28 00 */ cmpw r3, r5 +/* 8022D578 0022A4D8 40 80 00 08 */ bge lbl_8022D580 +lbl_8022D57C: +/* 8022D57C 0022A4DC 42 00 00 00 */ bdnz lbl_8022D57C +lbl_8022D580: +/* 8022D580 0022A4E0 38 00 00 00 */ li r0, 0 +/* 8022D584 0022A4E4 90 1E 08 C4 */ stw r0, 0x8c4(r30) +lbl_8022D588: +/* 8022D588 0022A4E8 34 1E 07 D0 */ addic. r0, r30, 0x7d0 +/* 8022D58C 0022A4EC 41 82 00 60 */ beq lbl_8022D5EC +/* 8022D590 0022A4F0 34 1E 07 D4 */ addic. r0, r30, 0x7d4 +/* 8022D594 0022A4F4 41 82 00 58 */ beq lbl_8022D5EC +/* 8022D598 0022A4F8 80 BE 07 D4 */ lwz r5, 0x7d4(r30) +/* 8022D59C 0022A4FC 38 60 00 00 */ li r3, 0 +/* 8022D5A0 0022A500 2C 05 00 00 */ cmpwi r5, 0 +/* 8022D5A4 0022A504 40 81 00 40 */ ble lbl_8022D5E4 +/* 8022D5A8 0022A508 2C 05 00 08 */ cmpwi r5, 8 +/* 8022D5AC 0022A50C 38 85 FF F8 */ addi r4, r5, -8 +/* 8022D5B0 0022A510 40 81 00 20 */ ble lbl_8022D5D0 +/* 8022D5B4 0022A514 38 04 00 07 */ addi r0, r4, 7 +/* 8022D5B8 0022A518 54 00 E8 FE */ srwi r0, r0, 3 +/* 8022D5BC 0022A51C 7C 09 03 A6 */ mtctr r0 +/* 8022D5C0 0022A520 2C 04 00 00 */ cmpwi r4, 0 +/* 8022D5C4 0022A524 40 81 00 0C */ ble lbl_8022D5D0 +lbl_8022D5C8: +/* 8022D5C8 0022A528 38 63 00 08 */ addi r3, r3, 8 +/* 8022D5CC 0022A52C 42 00 FF FC */ bdnz lbl_8022D5C8 +lbl_8022D5D0: +/* 8022D5D0 0022A530 7C 03 28 50 */ subf r0, r3, r5 +/* 8022D5D4 0022A534 7C 09 03 A6 */ mtctr r0 +/* 8022D5D8 0022A538 7C 03 28 00 */ cmpw r3, r5 +/* 8022D5DC 0022A53C 40 80 00 08 */ bge lbl_8022D5E4 +lbl_8022D5E0: +/* 8022D5E0 0022A540 42 00 00 00 */ bdnz lbl_8022D5E0 +lbl_8022D5E4: +/* 8022D5E4 0022A544 38 00 00 00 */ li r0, 0 +/* 8022D5E8 0022A548 90 1E 07 D4 */ stw r0, 0x7d4(r30) +lbl_8022D5EC: +/* 8022D5EC 0022A54C 34 1E 07 88 */ addic. r0, r30, 0x788 +/* 8022D5F0 0022A550 41 82 00 58 */ beq lbl_8022D648 +/* 8022D5F4 0022A554 80 BE 07 88 */ lwz r5, 0x788(r30) +/* 8022D5F8 0022A558 38 60 00 00 */ li r3, 0 +/* 8022D5FC 0022A55C 2C 05 00 00 */ cmpwi r5, 0 +/* 8022D600 0022A560 40 81 00 40 */ ble lbl_8022D640 +/* 8022D604 0022A564 2C 05 00 08 */ cmpwi r5, 8 +/* 8022D608 0022A568 38 85 FF F8 */ addi r4, r5, -8 +/* 8022D60C 0022A56C 40 81 00 20 */ ble lbl_8022D62C +/* 8022D610 0022A570 38 04 00 07 */ addi r0, r4, 7 +/* 8022D614 0022A574 54 00 E8 FE */ srwi r0, r0, 3 +/* 8022D618 0022A578 7C 09 03 A6 */ mtctr r0 +/* 8022D61C 0022A57C 2C 04 00 00 */ cmpwi r4, 0 +/* 8022D620 0022A580 40 81 00 0C */ ble lbl_8022D62C +lbl_8022D624: +/* 8022D624 0022A584 38 63 00 08 */ addi r3, r3, 8 +/* 8022D628 0022A588 42 00 FF FC */ bdnz lbl_8022D624 +lbl_8022D62C: +/* 8022D62C 0022A58C 7C 03 28 50 */ subf r0, r3, r5 +/* 8022D630 0022A590 7C 09 03 A6 */ mtctr r0 +/* 8022D634 0022A594 7C 03 28 00 */ cmpw r3, r5 +/* 8022D638 0022A598 40 80 00 08 */ bge lbl_8022D640 +lbl_8022D63C: +/* 8022D63C 0022A59C 42 00 00 00 */ bdnz lbl_8022D63C +lbl_8022D640: +/* 8022D640 0022A5A0 38 00 00 00 */ li r0, 0 +/* 8022D644 0022A5A4 90 1E 07 88 */ stw r0, 0x788(r30) +lbl_8022D648: +/* 8022D648 0022A5A8 34 1E 07 74 */ addic. r0, r30, 0x774 +/* 8022D64C 0022A5AC 41 82 00 58 */ beq lbl_8022D6A4 +/* 8022D650 0022A5B0 80 BE 07 74 */ lwz r5, 0x774(r30) +/* 8022D654 0022A5B4 38 60 00 00 */ li r3, 0 +/* 8022D658 0022A5B8 2C 05 00 00 */ cmpwi r5, 0 +/* 8022D65C 0022A5BC 40 81 00 40 */ ble lbl_8022D69C +/* 8022D660 0022A5C0 2C 05 00 08 */ cmpwi r5, 8 +/* 8022D664 0022A5C4 38 85 FF F8 */ addi r4, r5, -8 +/* 8022D668 0022A5C8 40 81 00 20 */ ble lbl_8022D688 +/* 8022D66C 0022A5CC 38 04 00 07 */ addi r0, r4, 7 +/* 8022D670 0022A5D0 54 00 E8 FE */ srwi r0, r0, 3 +/* 8022D674 0022A5D4 7C 09 03 A6 */ mtctr r0 +/* 8022D678 0022A5D8 2C 04 00 00 */ cmpwi r4, 0 +/* 8022D67C 0022A5DC 40 81 00 0C */ ble lbl_8022D688 +lbl_8022D680: +/* 8022D680 0022A5E0 38 63 00 08 */ addi r3, r3, 8 +/* 8022D684 0022A5E4 42 00 FF FC */ bdnz lbl_8022D680 +lbl_8022D688: +/* 8022D688 0022A5E8 7C 03 28 50 */ subf r0, r3, r5 +/* 8022D68C 0022A5EC 7C 09 03 A6 */ mtctr r0 +/* 8022D690 0022A5F0 7C 03 28 00 */ cmpw r3, r5 +/* 8022D694 0022A5F4 40 80 00 08 */ bge lbl_8022D69C +lbl_8022D698: +/* 8022D698 0022A5F8 42 00 00 00 */ bdnz lbl_8022D698 +lbl_8022D69C: +/* 8022D69C 0022A5FC 38 00 00 00 */ li r0, 0 +/* 8022D6A0 0022A600 90 1E 07 74 */ stw r0, 0x774(r30) +lbl_8022D6A4: +/* 8022D6A4 0022A604 34 1E 07 60 */ addic. r0, r30, 0x760 +/* 8022D6A8 0022A608 41 82 00 30 */ beq lbl_8022D6D8 +/* 8022D6AC 0022A60C 88 1E 07 6C */ lbz r0, 0x76c(r30) +/* 8022D6B0 0022A610 28 00 00 00 */ cmplwi r0, 0 +/* 8022D6B4 0022A614 41 82 00 1C */ beq lbl_8022D6D0 +/* 8022D6B8 0022A618 34 7E 07 60 */ addic. r3, r30, 0x760 +/* 8022D6BC 0022A61C 41 82 00 14 */ beq lbl_8022D6D0 +/* 8022D6C0 0022A620 28 03 00 00 */ cmplwi r3, 0 +/* 8022D6C4 0022A624 41 82 00 0C */ beq lbl_8022D6D0 +/* 8022D6C8 0022A628 38 80 00 00 */ li r4, 0 +/* 8022D6CC 0022A62C 48 11 37 75 */ bl __dt__6CTokenFv +lbl_8022D6D0: +/* 8022D6D0 0022A630 38 00 00 00 */ li r0, 0 +/* 8022D6D4 0022A634 98 1E 07 6C */ stb r0, 0x76c(r30) +lbl_8022D6D8: +/* 8022D6D8 0022A638 34 1E 07 38 */ addic. r0, r30, 0x738 +/* 8022D6DC 0022A63C 41 82 00 24 */ beq lbl_8022D700 +/* 8022D6E0 0022A640 3C 60 80 3F */ lis r3, lbl_803ECAD0@ha +/* 8022D6E4 0022A644 34 1E 07 38 */ addic. r0, r30, 0x738 +/* 8022D6E8 0022A648 38 03 CA D0 */ addi r0, r3, lbl_803ECAD0@l +/* 8022D6EC 0022A64C 90 1E 07 38 */ stw r0, 0x738(r30) +/* 8022D6F0 0022A650 41 82 00 10 */ beq lbl_8022D700 +/* 8022D6F4 0022A654 3C 60 80 3E */ lis r3, lbl_803D97E4@ha +/* 8022D6F8 0022A658 38 03 97 E4 */ addi r0, r3, lbl_803D97E4@l +/* 8022D6FC 0022A65C 90 1E 07 38 */ stw r0, 0x738(r30) +lbl_8022D700: +/* 8022D700 0022A660 34 1E 07 30 */ addic. r0, r30, 0x730 +/* 8022D704 0022A664 41 82 00 10 */ beq lbl_8022D714 +/* 8022D708 0022A668 80 7E 07 30 */ lwz r3, 0x730(r30) +/* 8022D70C 0022A66C 38 80 00 01 */ li r4, 1 +/* 8022D710 0022A670 4B F7 A1 CD */ bl sub_801a78dc +lbl_8022D714: +/* 8022D714 0022A674 34 1E 06 F8 */ addic. r0, r30, 0x6f8 +/* 8022D718 0022A678 41 82 00 14 */ beq lbl_8022D72C +/* 8022D71C 0022A67C 34 1E 07 1C */ addic. r0, r30, 0x71c +/* 8022D720 0022A680 41 82 00 0C */ beq lbl_8022D72C +/* 8022D724 0022A684 38 00 00 00 */ li r0, 0 +/* 8022D728 0022A688 98 1E 07 28 */ stb r0, 0x728(r30) +lbl_8022D72C: +/* 8022D72C 0022A68C 34 1E 05 D8 */ addic. r0, r30, 0x5d8 +/* 8022D730 0022A690 41 82 00 14 */ beq lbl_8022D744 +/* 8022D734 0022A694 34 7E 06 00 */ addic. r3, r30, 0x600 +/* 8022D738 0022A698 41 82 00 0C */ beq lbl_8022D744 +/* 8022D73C 0022A69C 38 80 FF FF */ li r4, -1 +/* 8022D740 0022A6A0 4B ED 8E C9 */ bl __dt__16CActorParametersFv +lbl_8022D744: +/* 8022D744 0022A6A4 34 1E 05 D4 */ addic. r0, r30, 0x5d4 +/* 8022D748 0022A6A8 41 82 00 10 */ beq lbl_8022D758 +/* 8022D74C 0022A6AC 80 7E 05 D4 */ lwz r3, 0x5d4(r30) +/* 8022D750 0022A6B0 38 80 00 01 */ li r4, 1 +/* 8022D754 0022A6B4 4B F7 A1 89 */ bl sub_801a78dc +lbl_8022D758: +/* 8022D758 0022A6B8 7F C3 F3 78 */ mr r3, r30 +/* 8022D75C 0022A6BC 38 80 00 00 */ li r4, 0 +/* 8022D760 0022A6C0 4B E4 9E 11 */ bl __dt__10CPatternedFv +/* 8022D764 0022A6C4 7F E0 07 35 */ extsh. r0, r31 +/* 8022D768 0022A6C8 40 81 00 0C */ ble lbl_8022D774 +/* 8022D76C 0022A6CC 7F C3 F3 78 */ mr r3, r30 +/* 8022D770 0022A6D0 48 0E 81 C1 */ bl Free__7CMemoryFPCv +lbl_8022D774: +/* 8022D774 0022A6D4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8022D778 0022A6D8 7F C3 F3 78 */ mr r3, r30 +/* 8022D77C 0022A6DC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8022D780 0022A6E0 83 C1 00 08 */ lwz r30, 8(r1) +/* 8022D784 0022A6E4 7C 08 03 A6 */ mtlr r0 +/* 8022D788 0022A6E8 38 21 00 10 */ addi r1, r1, 0x10 +/* 8022D78C 0022A6EC 4E 80 00 20 */ blr + +.global "__ct__12CElitePirateF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC16CActorParametersRC16CElitePirateData" +"__ct__12CElitePirateF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC16CActorParametersRC16CElitePirateData": +/* 8022D790 0022A6F0 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 8022D794 0022A6F4 7C 08 02 A6 */ mflr r0 +/* 8022D798 0022A6F8 39 60 00 01 */ li r11, 1 +/* 8022D79C 0022A6FC 7D 0C 43 78 */ mr r12, r8 +/* 8022D7A0 0022A700 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 8022D7A4 0022A704 BE E1 00 8C */ stmw r23, 0x8c(r1) +/* 8022D7A8 0022A708 7C D8 33 78 */ mr r24, r6 +/* 8022D7AC 0022A70C 7D 3E 4B 78 */ mr r30, r9 +/* 8022D7B0 0022A710 7C A6 2B 78 */ mr r6, r5 +/* 8022D7B4 0022A714 7C E9 3B 78 */ mr r9, r7 +/* 8022D7B8 0022A718 83 E1 00 B8 */ lwz r31, 0xb8(r1) +/* 8022D7BC 0022A71C 7C 7D 1B 78 */ mr r29, r3 +/* 8022D7C0 0022A720 7F 08 C3 78 */ mr r8, r24 +/* 8022D7C4 0022A724 38 A1 00 20 */ addi r5, r1, 0x20 +/* 8022D7C8 0022A728 38 E0 00 00 */ li r7, 0 +/* 8022D7CC 0022A72C A0 04 00 00 */ lhz r0, 0(r4) +/* 8022D7D0 0022A730 38 80 00 00 */ li r4, 0 +/* 8022D7D4 0022A734 B0 01 00 20 */ sth r0, 0x20(r1) +/* 8022D7D8 0022A738 38 00 00 02 */ li r0, 2 +/* 8022D7DC 0022A73C 93 C1 00 08 */ stw r30, 8(r1) +/* 8022D7E0 0022A740 90 81 00 0C */ stw r4, 0xc(r1) +/* 8022D7E4 0022A744 38 80 00 08 */ li r4, 8 +/* 8022D7E8 0022A748 91 61 00 10 */ stw r11, 0x10(r1) +/* 8022D7EC 0022A74C 91 61 00 14 */ stw r11, 0x14(r1) +/* 8022D7F0 0022A750 91 41 00 18 */ stw r10, 0x18(r1) +/* 8022D7F4 0022A754 7D 8A 63 78 */ mr r10, r12 +/* 8022D7F8 0022A758 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8022D7FC 0022A75C 4B E4 FC 55 */ bl "__ct__10CPatternedFUi9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC16CActorParametersUi" +/* 8022D800 0022A760 3C 60 80 3E */ lis r3, lbl_803E7AE0@ha +/* 8022D804 0022A764 38 A0 FF FF */ li r5, -1 +/* 8022D808 0022A768 38 63 7A E0 */ addi r3, r3, lbl_803E7AE0@l +/* 8022D80C 0022A76C 38 00 00 00 */ li r0, 0 +/* 8022D810 0022A770 90 7D 00 00 */ stw r3, 0(r29) +/* 8022D814 0022A774 7F E4 FB 78 */ mr r4, r31 +/* 8022D818 0022A778 38 7D 05 D8 */ addi r3, r29, 0x5d8 +/* 8022D81C 0022A77C 90 BD 05 68 */ stw r5, 0x568(r29) +/* 8022D820 0022A780 80 DE 00 5C */ lwz r6, 0x5c(r30) +/* 8022D824 0022A784 80 BE 00 60 */ lwz r5, 0x60(r30) +/* 8022D828 0022A788 90 DD 05 6C */ stw r6, 0x56c(r29) +/* 8022D82C 0022A78C 90 BD 05 70 */ stw r5, 0x570(r29) +/* 8022D830 0022A790 80 DE 00 64 */ lwz r6, 0x64(r30) +/* 8022D834 0022A794 80 BE 00 68 */ lwz r5, 0x68(r30) +/* 8022D838 0022A798 90 DD 05 74 */ stw r6, 0x574(r29) +/* 8022D83C 0022A79C 90 BD 05 78 */ stw r5, 0x578(r29) +/* 8022D840 0022A7A0 80 DE 00 6C */ lwz r6, 0x6c(r30) +/* 8022D844 0022A7A4 80 BE 00 70 */ lwz r5, 0x70(r30) +/* 8022D848 0022A7A8 90 DD 05 7C */ stw r6, 0x57c(r29) +/* 8022D84C 0022A7AC 90 BD 05 80 */ stw r5, 0x580(r29) +/* 8022D850 0022A7B0 80 DE 00 74 */ lwz r6, 0x74(r30) +/* 8022D854 0022A7B4 80 BE 00 78 */ lwz r5, 0x78(r30) +/* 8022D858 0022A7B8 90 DD 05 84 */ stw r6, 0x584(r29) +/* 8022D85C 0022A7BC 90 BD 05 88 */ stw r5, 0x588(r29) +/* 8022D860 0022A7C0 80 DE 00 7C */ lwz r6, 0x7c(r30) +/* 8022D864 0022A7C4 80 BE 00 80 */ lwz r5, 0x80(r30) +/* 8022D868 0022A7C8 90 DD 05 8C */ stw r6, 0x58c(r29) +/* 8022D86C 0022A7CC 90 BD 05 90 */ stw r5, 0x590(r29) +/* 8022D870 0022A7D0 80 DE 00 84 */ lwz r6, 0x84(r30) +/* 8022D874 0022A7D4 80 BE 00 88 */ lwz r5, 0x88(r30) +/* 8022D878 0022A7D8 90 DD 05 94 */ stw r6, 0x594(r29) +/* 8022D87C 0022A7DC 90 BD 05 98 */ stw r5, 0x598(r29) +/* 8022D880 0022A7E0 80 DE 00 8C */ lwz r6, 0x8c(r30) +/* 8022D884 0022A7E4 80 BE 00 90 */ lwz r5, 0x90(r30) +/* 8022D888 0022A7E8 90 DD 05 9C */ stw r6, 0x59c(r29) +/* 8022D88C 0022A7EC 90 BD 05 A0 */ stw r5, 0x5a0(r29) +/* 8022D890 0022A7F0 80 BE 00 94 */ lwz r5, 0x94(r30) +/* 8022D894 0022A7F4 90 BD 05 A4 */ stw r5, 0x5a4(r29) +/* 8022D898 0022A7F8 80 DE 00 98 */ lwz r6, 0x98(r30) +/* 8022D89C 0022A7FC 80 BE 00 9C */ lwz r5, 0x9c(r30) +/* 8022D8A0 0022A800 90 DD 05 A8 */ stw r6, 0x5a8(r29) +/* 8022D8A4 0022A804 90 BD 05 AC */ stw r5, 0x5ac(r29) +/* 8022D8A8 0022A808 80 DE 00 A0 */ lwz r6, 0xa0(r30) +/* 8022D8AC 0022A80C 80 BE 00 A4 */ lwz r5, 0xa4(r30) +/* 8022D8B0 0022A810 90 DD 05 B0 */ stw r6, 0x5b0(r29) +/* 8022D8B4 0022A814 90 BD 05 B4 */ stw r5, 0x5b4(r29) +/* 8022D8B8 0022A818 80 DE 00 A8 */ lwz r6, 0xa8(r30) +/* 8022D8BC 0022A81C 80 BE 00 AC */ lwz r5, 0xac(r30) +/* 8022D8C0 0022A820 90 DD 05 B8 */ stw r6, 0x5b8(r29) +/* 8022D8C4 0022A824 90 BD 05 BC */ stw r5, 0x5bc(r29) +/* 8022D8C8 0022A828 80 DE 00 B0 */ lwz r6, 0xb0(r30) +/* 8022D8CC 0022A82C 80 BE 00 B4 */ lwz r5, 0xb4(r30) +/* 8022D8D0 0022A830 90 DD 05 C0 */ stw r6, 0x5c0(r29) +/* 8022D8D4 0022A834 90 BD 05 C4 */ stw r5, 0x5c4(r29) +/* 8022D8D8 0022A838 80 BE 00 B8 */ lwz r5, 0xb8(r30) +/* 8022D8DC 0022A83C 90 BD 05 C8 */ stw r5, 0x5c8(r29) +/* 8022D8E0 0022A840 80 BE 00 BC */ lwz r5, 0xbc(r30) +/* 8022D8E4 0022A844 90 BD 05 CC */ stw r5, 0x5cc(r29) +/* 8022D8E8 0022A848 80 BE 00 C0 */ lwz r5, 0xc0(r30) +/* 8022D8EC 0022A84C 90 BD 05 D0 */ stw r5, 0x5d0(r29) +/* 8022D8F0 0022A850 90 1D 05 D4 */ stw r0, 0x5d4(r29) +/* 8022D8F4 0022A854 48 00 03 9D */ bl __ct__16CElitePirateDataFRC16CElitePirateData +/* 8022D8F8 0022A858 3C 80 80 3D */ lis r4, lbl_803D3310@ha +/* 8022D8FC 0022A85C 38 61 00 60 */ addi r3, r1, 0x60 +/* 8022D900 0022A860 38 84 33 10 */ addi r4, r4, lbl_803D3310@l +/* 8022D904 0022A864 38 84 00 54 */ addi r4, r4, 0x54 +/* 8022D908 0022A868 4B DD 73 B1 */ bl string_l__4rstlFPCc +/* 8022D90C 0022A86C 80 9D 00 64 */ lwz r4, 0x64(r29) +/* 8022D910 0022A870 38 7D 06 F8 */ addi r3, r29, 0x6f8 +/* 8022D914 0022A874 C0 22 B6 1C */ lfs f1, lbl_805AD33C@sda21(r2) +/* 8022D918 0022A878 38 A1 00 60 */ addi r5, r1, 0x60 +/* 8022D91C 0022A87C 80 84 00 10 */ lwz r4, 0x10(r4) +/* 8022D920 0022A880 38 C0 00 00 */ li r6, 0 +/* 8022D924 0022A884 C0 42 B6 20 */ lfs f2, lbl_805AD340@sda21(r2) +/* 8022D928 0022A888 4B F4 80 91 */ bl "__ct__13CBoneTrackingFRC9CAnimDataRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>ffb" +/* 8022D92C 0022A88C 38 61 00 60 */ addi r3, r1, 0x60 +/* 8022D930 0022A890 48 11 01 B1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8022D934 0022A894 38 00 00 00 */ li r0, 0 +/* 8022D938 0022A898 7F A4 EB 78 */ mr r4, r29 +/* 8022D93C 0022A89C 90 1D 07 30 */ stw r0, 0x730(r29) +/* 8022D940 0022A8A0 3B 1D 00 68 */ addi r24, r29, 0x68 +/* 8022D944 0022A8A4 38 61 00 70 */ addi r3, r1, 0x70 +/* 8022D948 0022A8A8 4B EE CF E5 */ bl GetBoundingBox__13CPhysicsActorCFv +/* 8022D94C 0022A8AC 3A FD 07 38 */ addi r23, r29, 0x738 +/* 8022D950 0022A8B0 7F 04 C3 78 */ mr r4, r24 +/* 8022D954 0022A8B4 7E E3 BB 78 */ mr r3, r23 +/* 8022D958 0022A8B8 48 0A 1F 5D */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList +/* 8022D95C 0022A8BC 3C 60 80 3F */ lis r3, lbl_803ECAD0@ha +/* 8022D960 0022A8C0 3B 80 00 00 */ li r28, 0 +/* 8022D964 0022A8C4 38 03 CA D0 */ addi r0, r3, lbl_803ECAD0@l +/* 8022D968 0022A8C8 3B 60 00 00 */ li r27, 0 +/* 8022D96C 0022A8CC 90 17 00 00 */ stw r0, 0(r23) +/* 8022D970 0022A8D0 3B 40 00 00 */ li r26, 0 +/* 8022D974 0022A8D4 3B 20 00 00 */ li r25, 0 +/* 8022D978 0022A8D8 C0 01 00 70 */ lfs f0, 0x70(r1) +/* 8022D97C 0022A8DC D0 17 00 10 */ stfs f0, 0x10(r23) +/* 8022D980 0022A8E0 C0 01 00 74 */ lfs f0, 0x74(r1) +/* 8022D984 0022A8E4 D0 17 00 14 */ stfs f0, 0x14(r23) +/* 8022D988 0022A8E8 C0 01 00 78 */ lfs f0, 0x78(r1) +/* 8022D98C 0022A8EC D0 17 00 18 */ stfs f0, 0x18(r23) +/* 8022D990 0022A8F0 C0 01 00 7C */ lfs f0, 0x7c(r1) +/* 8022D994 0022A8F4 D0 17 00 1C */ stfs f0, 0x1c(r23) +/* 8022D998 0022A8F8 C0 01 00 80 */ lfs f0, 0x80(r1) +/* 8022D99C 0022A8FC D0 17 00 20 */ stfs f0, 0x20(r23) +/* 8022D9A0 0022A900 C0 01 00 84 */ lfs f0, 0x84(r1) +/* 8022D9A4 0022A904 D0 17 00 24 */ stfs f0, 0x24(r23) +/* 8022D9A8 0022A908 80 9F 00 20 */ lwz r4, 0x20(r31) +/* 8022D9AC 0022A90C 3C 04 00 01 */ addis r0, r4, 1 +/* 8022D9B0 0022A910 28 00 FF FF */ cmplwi r0, 0xffff +/* 8022D9B4 0022A914 41 82 00 90 */ beq lbl_8022DA44 +/* 8022D9B8 0022A918 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 8022D9BC 0022A91C 90 81 00 30 */ stw r4, 0x30(r1) +/* 8022D9C0 0022A920 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 8022D9C4 0022A924 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8022D9C8 0022A928 90 01 00 2C */ stw r0, 0x2c(r1) +/* 8022D9CC 0022A92C 38 61 00 24 */ addi r3, r1, 0x24 +/* 8022D9D0 0022A930 38 A1 00 2C */ addi r5, r1, 0x2c +/* 8022D9D4 0022A934 81 84 00 00 */ lwz r12, 0(r4) +/* 8022D9D8 0022A938 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8022D9DC 0022A93C 7D 89 03 A6 */ mtctr r12 +/* 8022D9E0 0022A940 4E 80 04 21 */ bctrl +/* 8022D9E4 0022A944 3A E1 00 54 */ addi r23, r1, 0x54 +/* 8022D9E8 0022A948 38 81 00 24 */ addi r4, r1, 0x24 +/* 8022D9EC 0022A94C 7E E3 BB 78 */ mr r3, r23 +/* 8022D9F0 0022A950 3B 80 00 01 */ li r28, 1 +/* 8022D9F4 0022A954 48 11 34 B5 */ bl __ct__6CTokenFRC6CToken +/* 8022D9F8 0022A958 7E E3 BB 78 */ mr r3, r23 +/* 8022D9FC 0022A95C 48 11 34 11 */ bl GetObj__6CTokenFv +/* 8022DA00 0022A960 80 63 00 04 */ lwz r3, 4(r3) +/* 8022DA04 0022A964 38 00 00 01 */ li r0, 1 +/* 8022DA08 0022A968 37 41 00 44 */ addic. r26, r1, 0x44 +/* 8022DA0C 0022A96C 3B 60 00 01 */ li r27, 1 +/* 8022DA10 0022A970 90 61 00 5C */ stw r3, 0x5c(r1) +/* 8022DA14 0022A974 98 01 00 50 */ stb r0, 0x50(r1) +/* 8022DA18 0022A978 41 82 00 20 */ beq lbl_8022DA38 +/* 8022DA1C 0022A97C 7F 43 D3 78 */ mr r3, r26 +/* 8022DA20 0022A980 7E E4 BB 78 */ mr r4, r23 +/* 8022DA24 0022A984 48 11 34 85 */ bl __ct__6CTokenFRC6CToken +/* 8022DA28 0022A988 80 01 00 5C */ lwz r0, 0x5c(r1) +/* 8022DA2C 0022A98C 7F 43 D3 78 */ mr r3, r26 +/* 8022DA30 0022A990 90 1A 00 08 */ stw r0, 8(r26) +/* 8022DA34 0022A994 48 11 33 51 */ bl Lock__6CTokenFv +lbl_8022DA38: +/* 8022DA38 0022A998 3B E1 00 44 */ addi r31, r1, 0x44 +/* 8022DA3C 0022A99C 3B 40 00 01 */ li r26, 1 +/* 8022DA40 0022A9A0 48 00 00 14 */ b lbl_8022DA54 +lbl_8022DA44: +/* 8022DA44 0022A9A4 38 00 00 00 */ li r0, 0 +/* 8022DA48 0022A9A8 3B E1 00 34 */ addi r31, r1, 0x34 +/* 8022DA4C 0022A9AC 98 01 00 40 */ stb r0, 0x40(r1) +/* 8022DA50 0022A9B0 3B 20 00 01 */ li r25, 1 +lbl_8022DA54: +/* 8022DA54 0022A9B4 88 1F 00 0C */ lbz r0, 0xc(r31) +/* 8022DA58 0022A9B8 98 1D 07 6C */ stb r0, 0x76c(r29) +/* 8022DA5C 0022A9BC 88 1F 00 0C */ lbz r0, 0xc(r31) +/* 8022DA60 0022A9C0 28 00 00 00 */ cmplwi r0, 0 +/* 8022DA64 0022A9C4 41 82 00 28 */ beq lbl_8022DA8C +/* 8022DA68 0022A9C8 37 1D 07 60 */ addic. r24, r29, 0x760 +/* 8022DA6C 0022A9CC 41 82 00 20 */ beq lbl_8022DA8C +/* 8022DA70 0022A9D0 7F 03 C3 78 */ mr r3, r24 +/* 8022DA74 0022A9D4 7F E4 FB 78 */ mr r4, r31 +/* 8022DA78 0022A9D8 48 11 34 31 */ bl __ct__6CTokenFRC6CToken +/* 8022DA7C 0022A9DC 80 1F 00 08 */ lwz r0, 8(r31) +/* 8022DA80 0022A9E0 7F 03 C3 78 */ mr r3, r24 +/* 8022DA84 0022A9E4 90 18 00 08 */ stw r0, 8(r24) +/* 8022DA88 0022A9E8 48 11 32 FD */ bl Lock__6CTokenFv +lbl_8022DA8C: +/* 8022DA8C 0022A9EC 7F 20 07 75 */ extsb. r0, r25 +/* 8022DA90 0022A9F0 41 82 00 30 */ beq lbl_8022DAC0 +/* 8022DA94 0022A9F4 88 01 00 40 */ lbz r0, 0x40(r1) +/* 8022DA98 0022A9F8 28 00 00 00 */ cmplwi r0, 0 +/* 8022DA9C 0022A9FC 41 82 00 1C */ beq lbl_8022DAB8 +/* 8022DAA0 0022AA00 34 61 00 34 */ addic. r3, r1, 0x34 +/* 8022DAA4 0022AA04 41 82 00 14 */ beq lbl_8022DAB8 +/* 8022DAA8 0022AA08 28 03 00 00 */ cmplwi r3, 0 +/* 8022DAAC 0022AA0C 41 82 00 0C */ beq lbl_8022DAB8 +/* 8022DAB0 0022AA10 38 80 00 00 */ li r4, 0 +/* 8022DAB4 0022AA14 48 11 33 8D */ bl __dt__6CTokenFv +lbl_8022DAB8: +/* 8022DAB8 0022AA18 38 00 00 00 */ li r0, 0 +/* 8022DABC 0022AA1C 98 01 00 40 */ stb r0, 0x40(r1) +lbl_8022DAC0: +/* 8022DAC0 0022AA20 7F 40 07 75 */ extsb. r0, r26 +/* 8022DAC4 0022AA24 41 82 00 30 */ beq lbl_8022DAF4 +/* 8022DAC8 0022AA28 88 01 00 50 */ lbz r0, 0x50(r1) +/* 8022DACC 0022AA2C 28 00 00 00 */ cmplwi r0, 0 +/* 8022DAD0 0022AA30 41 82 00 1C */ beq lbl_8022DAEC +/* 8022DAD4 0022AA34 34 61 00 44 */ addic. r3, r1, 0x44 +/* 8022DAD8 0022AA38 41 82 00 14 */ beq lbl_8022DAEC +/* 8022DADC 0022AA3C 28 03 00 00 */ cmplwi r3, 0 +/* 8022DAE0 0022AA40 41 82 00 0C */ beq lbl_8022DAEC +/* 8022DAE4 0022AA44 38 80 00 00 */ li r4, 0 +/* 8022DAE8 0022AA48 48 11 33 59 */ bl __dt__6CTokenFv +lbl_8022DAEC: +/* 8022DAEC 0022AA4C 38 00 00 00 */ li r0, 0 +/* 8022DAF0 0022AA50 98 01 00 50 */ stb r0, 0x50(r1) +lbl_8022DAF4: +/* 8022DAF4 0022AA54 7F 60 07 75 */ extsb. r0, r27 +/* 8022DAF8 0022AA58 41 82 00 10 */ beq lbl_8022DB08 +/* 8022DAFC 0022AA5C 38 61 00 54 */ addi r3, r1, 0x54 +/* 8022DB00 0022AA60 38 80 00 00 */ li r4, 0 +/* 8022DB04 0022AA64 48 11 33 3D */ bl __dt__6CTokenFv +lbl_8022DB08: +/* 8022DB08 0022AA68 7F 80 07 75 */ extsb. r0, r28 +/* 8022DB0C 0022AA6C 41 82 00 10 */ beq lbl_8022DB1C +/* 8022DB10 0022AA70 38 61 00 24 */ addi r3, r1, 0x24 +/* 8022DB14 0022AA74 38 80 FF FF */ li r4, -1 +/* 8022DB18 0022AA78 48 11 33 29 */ bl __dt__6CTokenFv +lbl_8022DB1C: +/* 8022DB1C 0022AA7C A0 6D A3 8C */ lhz r3, lbl_805A8F4C@sda21(r13) +/* 8022DB20 0022AA80 38 E0 00 00 */ li r7, 0 +/* 8022DB24 0022AA84 C0 22 B5 CC */ lfs f1, lbl_805AD2EC@sda21(r2) +/* 8022DB28 0022AA88 38 00 FF FF */ li r0, -1 +/* 8022DB2C 0022AA8C B0 7D 07 70 */ sth r3, 0x770(r29) +/* 8022DB30 0022AA90 38 7D 07 D0 */ addi r3, r29, 0x7d0 +/* 8022DB34 0022AA94 C0 02 B5 B8 */ lfs f0, lbl_805AD2D8@sda21(r2) +/* 8022DB38 0022AA98 FC 40 08 90 */ fmr f2, f1 +/* 8022DB3C 0022AA9C A0 CD A3 8C */ lhz r6, lbl_805A8F4C@sda21(r13) +/* 8022DB40 0022AAA0 38 80 00 00 */ li r4, 0 +/* 8022DB44 0022AAA4 38 A0 00 01 */ li r5, 1 +/* 8022DB48 0022AAA8 B0 DD 07 72 */ sth r6, 0x772(r29) +/* 8022DB4C 0022AAAC 90 FD 07 74 */ stw r7, 0x774(r29) +/* 8022DB50 0022AAB0 90 FD 07 88 */ stw r7, 0x788(r29) +/* 8022DB54 0022AAB4 A0 CD A3 8C */ lhz r6, lbl_805A8F4C@sda21(r13) +/* 8022DB58 0022AAB8 B0 DD 07 9C */ sth r6, 0x79c(r29) +/* 8022DB5C 0022AABC C0 7D 03 B4 */ lfs f3, 0x3b4(r29) +/* 8022DB60 0022AAC0 D0 7D 07 A0 */ stfs f3, 0x7a0(r29) +/* 8022DB64 0022AAC4 D0 3D 07 A4 */ stfs f1, 0x7a4(r29) +/* 8022DB68 0022AAC8 D0 1D 07 A8 */ stfs f0, 0x7a8(r29) +/* 8022DB6C 0022AACC D0 1D 07 AC */ stfs f0, 0x7ac(r29) +/* 8022DB70 0022AAD0 D0 3D 07 B0 */ stfs f1, 0x7b0(r29) +/* 8022DB74 0022AAD4 D0 1D 07 B4 */ stfs f0, 0x7b4(r29) +/* 8022DB78 0022AAD8 D0 1D 07 B8 */ stfs f0, 0x7b8(r29) +/* 8022DB7C 0022AADC D0 1D 07 BC */ stfs f0, 0x7bc(r29) +/* 8022DB80 0022AAE0 D0 1D 07 C0 */ stfs f0, 0x7c0(r29) +/* 8022DB84 0022AAE4 D0 1D 07 C4 */ stfs f0, 0x7c4(r29) +/* 8022DB88 0022AAE8 90 1D 07 C8 */ stw r0, 0x7c8(r29) +/* 8022DB8C 0022AAEC 90 FD 07 CC */ stw r7, 0x7cc(r29) +/* 8022DB90 0022AAF0 80 DE 01 0C */ lwz r6, 0x10c(r30) +/* 8022DB94 0022AAF4 4B F9 B2 01 */ bl __ct__15CPathFindSearchFP7CPFAreaUiff +/* 8022DB98 0022AAF8 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8022DB9C 0022AAFC C0 22 B5 FC */ lfs f1, lbl_805AD31C@sda21(r2) +/* 8022DBA0 0022AB00 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 8022DBA4 0022AB04 38 7D 08 C0 */ addi r3, r29, 0x8c0 +/* 8022DBA8 0022AB08 C0 04 00 00 */ lfs f0, 0(r4) +/* 8022DBAC 0022AB0C D0 1D 08 B4 */ stfs f0, 0x8b4(r29) +/* 8022DBB0 0022AB10 C0 04 00 04 */ lfs f0, 4(r4) +/* 8022DBB4 0022AB14 D0 1D 08 B8 */ stfs f0, 0x8b8(r29) +/* 8022DBB8 0022AB18 C0 04 00 08 */ lfs f0, 8(r4) +/* 8022DBBC 0022AB1C D0 1D 08 BC */ stfs f0, 0x8bc(r29) +/* 8022DBC0 0022AB20 48 07 2E 39 */ bl sub_802a09f8 +/* 8022DBC4 0022AB24 88 1D 09 88 */ lbz r0, 0x988(r29) +/* 8022DBC8 0022AB28 38 80 00 00 */ li r4, 0 +/* 8022DBCC 0022AB2C 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 8022DBD0 0022AB30 7F A3 EB 78 */ mr r3, r29 +/* 8022DBD4 0022AB34 98 1D 09 88 */ stb r0, 0x988(r29) +/* 8022DBD8 0022AB38 88 1D 09 88 */ lbz r0, 0x988(r29) +/* 8022DBDC 0022AB3C 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 8022DBE0 0022AB40 98 1D 09 88 */ stb r0, 0x988(r29) +/* 8022DBE4 0022AB44 88 1D 09 88 */ lbz r0, 0x988(r29) +/* 8022DBE8 0022AB48 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 8022DBEC 0022AB4C 98 1D 09 88 */ stb r0, 0x988(r29) +/* 8022DBF0 0022AB50 88 1D 09 88 */ lbz r0, 0x988(r29) +/* 8022DBF4 0022AB54 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 8022DBF8 0022AB58 98 1D 09 88 */ stb r0, 0x988(r29) +/* 8022DBFC 0022AB5C 88 1D 09 88 */ lbz r0, 0x988(r29) +/* 8022DC00 0022AB60 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c +/* 8022DC04 0022AB64 98 1D 09 88 */ stb r0, 0x988(r29) +/* 8022DC08 0022AB68 88 1D 09 88 */ lbz r0, 0x988(r29) +/* 8022DC0C 0022AB6C 50 80 17 7A */ rlwimi r0, r4, 2, 0x1d, 0x1d +/* 8022DC10 0022AB70 98 1D 09 88 */ stb r0, 0x988(r29) +/* 8022DC14 0022AB74 88 1D 09 88 */ lbz r0, 0x988(r29) +/* 8022DC18 0022AB78 50 80 0F BC */ rlwimi r0, r4, 1, 0x1e, 0x1e +/* 8022DC1C 0022AB7C 98 1D 09 88 */ stb r0, 0x988(r29) +/* 8022DC20 0022AB80 88 1D 09 88 */ lbz r0, 0x988(r29) +/* 8022DC24 0022AB84 50 80 07 FE */ rlwimi r0, r4, 0, 0x1f, 0x1f +/* 8022DC28 0022AB88 98 1D 09 88 */ stb r0, 0x988(r29) +/* 8022DC2C 0022AB8C 88 1D 09 89 */ lbz r0, 0x989(r29) +/* 8022DC30 0022AB90 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 8022DC34 0022AB94 98 1D 09 89 */ stb r0, 0x989(r29) +/* 8022DC38 0022AB98 88 1D 04 E1 */ lbz r0, 0x4e1(r29) +/* 8022DC3C 0022AB9C 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 8022DC40 0022ABA0 98 1D 04 E1 */ stb r0, 0x4e1(r29) +/* 8022DC44 0022ABA4 88 1D 04 E2 */ lbz r0, 0x4e2(r29) +/* 8022DC48 0022ABA8 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 8022DC4C 0022ABAC 98 1D 04 E2 */ stb r0, 0x4e2(r29) +/* 8022DC50 0022ABB0 88 1D 04 E1 */ lbz r0, 0x4e1(r29) +/* 8022DC54 0022ABB4 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c +/* 8022DC58 0022ABB8 98 1D 04 E1 */ stb r0, 0x4e1(r29) +/* 8022DC5C 0022ABBC 88 1D 04 E1 */ lbz r0, 0x4e1(r29) +/* 8022DC60 0022ABC0 50 80 17 7A */ rlwimi r0, r4, 2, 0x1d, 0x1d +/* 8022DC64 0022ABC4 98 1D 04 E1 */ stb r0, 0x4e1(r29) +/* 8022DC68 0022ABC8 88 1D 04 E1 */ lbz r0, 0x4e1(r29) +/* 8022DC6C 0022ABCC 50 80 0F BC */ rlwimi r0, r4, 1, 0x1e, 0x1e +/* 8022DC70 0022ABD0 98 1D 04 E1 */ stb r0, 0x4e1(r29) +/* 8022DC74 0022ABD4 4B FF B5 D5 */ bl sub_80229248 +/* 8022DC78 0022ABD8 7F A3 EB 78 */ mr r3, r29 +/* 8022DC7C 0022ABDC BA E1 00 8C */ lmw r23, 0x8c(r1) +/* 8022DC80 0022ABE0 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 8022DC84 0022ABE4 7C 08 03 A6 */ mtlr r0 +/* 8022DC88 0022ABE8 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 8022DC8C 0022ABEC 4E 80 00 20 */ blr + +.global __ct__16CElitePirateDataFRC16CElitePirateData +__ct__16CElitePirateDataFRC16CElitePirateData: +/* 8022DC90 0022ABF0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8022DC94 0022ABF4 7C 08 02 A6 */ mflr r0 +/* 8022DC98 0022ABF8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8022DC9C 0022ABFC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8022DCA0 0022AC00 7C 9F 23 78 */ mr r31, r4 +/* 8022DCA4 0022AC04 93 C1 00 08 */ stw r30, 8(r1) +/* 8022DCA8 0022AC08 7C 7E 1B 78 */ mr r30, r3 +/* 8022DCAC 0022AC0C 38 7E 00 28 */ addi r3, r30, 0x28 +/* 8022DCB0 0022AC10 C0 04 00 00 */ lfs f0, 0(r4) +/* 8022DCB4 0022AC14 38 9F 00 28 */ addi r4, r31, 0x28 +/* 8022DCB8 0022AC18 D0 1E 00 00 */ stfs f0, 0(r30) +/* 8022DCBC 0022AC1C C0 1F 00 04 */ lfs f0, 4(r31) +/* 8022DCC0 0022AC20 D0 1E 00 04 */ stfs f0, 4(r30) +/* 8022DCC4 0022AC24 C0 1F 00 08 */ lfs f0, 8(r31) +/* 8022DCC8 0022AC28 D0 1E 00 08 */ stfs f0, 8(r30) +/* 8022DCCC 0022AC2C C0 1F 00 0C */ lfs f0, 0xc(r31) +/* 8022DCD0 0022AC30 D0 1E 00 0C */ stfs f0, 0xc(r30) +/* 8022DCD4 0022AC34 C0 1F 00 10 */ lfs f0, 0x10(r31) +/* 8022DCD8 0022AC38 D0 1E 00 10 */ stfs f0, 0x10(r30) +/* 8022DCDC 0022AC3C C0 1F 00 14 */ lfs f0, 0x14(r31) +/* 8022DCE0 0022AC40 D0 1E 00 14 */ stfs f0, 0x14(r30) +/* 8022DCE4 0022AC44 C0 1F 00 18 */ lfs f0, 0x18(r31) +/* 8022DCE8 0022AC48 D0 1E 00 18 */ stfs f0, 0x18(r30) +/* 8022DCEC 0022AC4C C0 1F 00 1C */ lfs f0, 0x1c(r31) +/* 8022DCF0 0022AC50 D0 1E 00 1C */ stfs f0, 0x1c(r30) +/* 8022DCF4 0022AC54 80 1F 00 20 */ lwz r0, 0x20(r31) +/* 8022DCF8 0022AC58 90 1E 00 20 */ stw r0, 0x20(r30) +/* 8022DCFC 0022AC5C A0 1F 00 24 */ lhz r0, 0x24(r31) +/* 8022DD00 0022AC60 B0 1E 00 24 */ sth r0, 0x24(r30) +/* 8022DD04 0022AC64 4B E9 79 19 */ bl __ct__16CActorParametersFRC16CActorParameters +/* 8022DD08 0022AC68 80 1F 00 90 */ lwz r0, 0x90(r31) +/* 8022DD0C 0022AC6C 7F C3 F3 78 */ mr r3, r30 +/* 8022DD10 0022AC70 90 1E 00 90 */ stw r0, 0x90(r30) +/* 8022DD14 0022AC74 80 1F 00 94 */ lwz r0, 0x94(r31) +/* 8022DD18 0022AC78 90 1E 00 94 */ stw r0, 0x94(r30) +/* 8022DD1C 0022AC7C 80 1F 00 98 */ lwz r0, 0x98(r31) +/* 8022DD20 0022AC80 90 1E 00 98 */ stw r0, 0x98(r30) +/* 8022DD24 0022AC84 80 1F 00 9C */ lwz r0, 0x9c(r31) +/* 8022DD28 0022AC88 90 1E 00 9C */ stw r0, 0x9c(r30) +/* 8022DD2C 0022AC8C A0 1F 00 A0 */ lhz r0, 0xa0(r31) +/* 8022DD30 0022AC90 B0 1E 00 A0 */ sth r0, 0xa0(r30) +/* 8022DD34 0022AC94 80 1F 00 A4 */ lwz r0, 0xa4(r31) +/* 8022DD38 0022AC98 90 1E 00 A4 */ stw r0, 0xa4(r30) +/* 8022DD3C 0022AC9C 80 1F 00 A8 */ lwz r0, 0xa8(r31) +/* 8022DD40 0022ACA0 90 1E 00 A8 */ stw r0, 0xa8(r30) +/* 8022DD44 0022ACA4 88 1F 00 AC */ lbz r0, 0xac(r31) +/* 8022DD48 0022ACA8 98 1E 00 AC */ stb r0, 0xac(r30) +/* 8022DD4C 0022ACAC C0 1F 00 B0 */ lfs f0, 0xb0(r31) +/* 8022DD50 0022ACB0 D0 1E 00 B0 */ stfs f0, 0xb0(r30) +/* 8022DD54 0022ACB4 C0 1F 00 B4 */ lfs f0, 0xb4(r31) +/* 8022DD58 0022ACB8 D0 1E 00 B4 */ stfs f0, 0xb4(r30) +/* 8022DD5C 0022ACBC C0 1F 00 B8 */ lfs f0, 0xb8(r31) +/* 8022DD60 0022ACC0 D0 1E 00 B8 */ stfs f0, 0xb8(r30) +/* 8022DD64 0022ACC4 C0 1F 00 BC */ lfs f0, 0xbc(r31) +/* 8022DD68 0022ACC8 D0 1E 00 BC */ stfs f0, 0xbc(r30) +/* 8022DD6C 0022ACCC 88 1F 00 C0 */ lbz r0, 0xc0(r31) +/* 8022DD70 0022ACD0 98 1E 00 C0 */ stb r0, 0xc0(r30) +/* 8022DD74 0022ACD4 C0 1F 00 C4 */ lfs f0, 0xc4(r31) +/* 8022DD78 0022ACD8 D0 1E 00 C4 */ stfs f0, 0xc4(r30) +/* 8022DD7C 0022ACDC 80 1F 00 C8 */ lwz r0, 0xc8(r31) +/* 8022DD80 0022ACE0 90 1E 00 C8 */ stw r0, 0xc8(r30) +/* 8022DD84 0022ACE4 80 1F 00 CC */ lwz r0, 0xcc(r31) +/* 8022DD88 0022ACE8 90 1E 00 CC */ stw r0, 0xcc(r30) +/* 8022DD8C 0022ACEC 80 1F 00 D0 */ lwz r0, 0xd0(r31) +/* 8022DD90 0022ACF0 90 1E 00 D0 */ stw r0, 0xd0(r30) +/* 8022DD94 0022ACF4 80 1F 00 D4 */ lwz r0, 0xd4(r31) +/* 8022DD98 0022ACF8 90 1E 00 D4 */ stw r0, 0xd4(r30) +/* 8022DD9C 0022ACFC C0 1F 00 D8 */ lfs f0, 0xd8(r31) +/* 8022DDA0 0022AD00 D0 1E 00 D8 */ stfs f0, 0xd8(r30) +/* 8022DDA4 0022AD04 C0 1F 00 DC */ lfs f0, 0xdc(r31) +/* 8022DDA8 0022AD08 D0 1E 00 DC */ stfs f0, 0xdc(r30) +/* 8022DDAC 0022AD0C C0 1F 00 E0 */ lfs f0, 0xe0(r31) +/* 8022DDB0 0022AD10 D0 1E 00 E0 */ stfs f0, 0xe0(r30) +/* 8022DDB4 0022AD14 C0 1F 00 E4 */ lfs f0, 0xe4(r31) +/* 8022DDB8 0022AD18 D0 1E 00 E4 */ stfs f0, 0xe4(r30) +/* 8022DDBC 0022AD1C C0 1F 00 E8 */ lfs f0, 0xe8(r31) +/* 8022DDC0 0022AD20 D0 1E 00 E8 */ stfs f0, 0xe8(r30) +/* 8022DDC4 0022AD24 C0 1F 00 EC */ lfs f0, 0xec(r31) +/* 8022DDC8 0022AD28 D0 1E 00 EC */ stfs f0, 0xec(r30) +/* 8022DDCC 0022AD2C 80 1F 00 F0 */ lwz r0, 0xf0(r31) +/* 8022DDD0 0022AD30 90 1E 00 F0 */ stw r0, 0xf0(r30) +/* 8022DDD4 0022AD34 A0 1F 00 F4 */ lhz r0, 0xf4(r31) +/* 8022DDD8 0022AD38 B0 1E 00 F4 */ sth r0, 0xf4(r30) +/* 8022DDDC 0022AD3C A0 1F 00 F6 */ lhz r0, 0xf6(r31) +/* 8022DDE0 0022AD40 B0 1E 00 F6 */ sth r0, 0xf6(r30) +/* 8022DDE4 0022AD44 80 1F 00 F8 */ lwz r0, 0xf8(r31) +/* 8022DDE8 0022AD48 90 1E 00 F8 */ stw r0, 0xf8(r30) +/* 8022DDEC 0022AD4C 80 1F 00 FC */ lwz r0, 0xfc(r31) +/* 8022DDF0 0022AD50 90 1E 00 FC */ stw r0, 0xfc(r30) +/* 8022DDF4 0022AD54 88 1F 01 00 */ lbz r0, 0x100(r31) +/* 8022DDF8 0022AD58 98 1E 01 00 */ stb r0, 0x100(r30) +/* 8022DDFC 0022AD5C C0 1F 01 04 */ lfs f0, 0x104(r31) +/* 8022DE00 0022AD60 D0 1E 01 04 */ stfs f0, 0x104(r30) +/* 8022DE04 0022AD64 C0 1F 01 08 */ lfs f0, 0x108(r31) +/* 8022DE08 0022AD68 D0 1E 01 08 */ stfs f0, 0x108(r30) +/* 8022DE0C 0022AD6C C0 1F 01 0C */ lfs f0, 0x10c(r31) +/* 8022DE10 0022AD70 D0 1E 01 0C */ stfs f0, 0x10c(r30) +/* 8022DE14 0022AD74 C0 1F 01 10 */ lfs f0, 0x110(r31) +/* 8022DE18 0022AD78 D0 1E 01 10 */ stfs f0, 0x110(r30) +/* 8022DE1C 0022AD7C 88 1F 01 14 */ lbz r0, 0x114(r31) +/* 8022DE20 0022AD80 98 1E 01 14 */ stb r0, 0x114(r30) +/* 8022DE24 0022AD84 80 1F 01 18 */ lwz r0, 0x118(r31) +/* 8022DE28 0022AD88 90 1E 01 18 */ stw r0, 0x118(r30) +/* 8022DE2C 0022AD8C A0 1F 01 1C */ lhz r0, 0x11c(r31) +/* 8022DE30 0022AD90 B0 1E 01 1C */ sth r0, 0x11c(r30) +/* 8022DE34 0022AD94 88 1F 01 1E */ lbz r0, 0x11e(r31) +/* 8022DE38 0022AD98 98 1E 01 1E */ stb r0, 0x11e(r30) +/* 8022DE3C 0022AD9C 88 1F 01 1F */ lbz r0, 0x11f(r31) +/* 8022DE40 0022ADA0 98 1E 01 1F */ stb r0, 0x11f(r30) +/* 8022DE44 0022ADA4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8022DE48 0022ADA8 83 C1 00 08 */ lwz r30, 8(r1) +/* 8022DE4C 0022ADAC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8022DE50 0022ADB0 7C 08 03 A6 */ mtlr r0 +/* 8022DE54 0022ADB4 38 21 00 10 */ addi r1, r1, 0x10 +/* 8022DE58 0022ADB8 4E 80 00 20 */ blr + +.global __ct__16CElitePirateDataFR12CInputStreami +__ct__16CElitePirateDataFR12CInputStreami: +/* 8022DE5C 0022ADBC 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 8022DE60 0022ADC0 7C 08 02 A6 */ mflr r0 +/* 8022DE64 0022ADC4 90 01 00 94 */ stw r0, 0x94(r1) +/* 8022DE68 0022ADC8 93 E1 00 8C */ stw r31, 0x8c(r1) +/* 8022DE6C 0022ADCC 7C BF 2B 78 */ mr r31, r5 +/* 8022DE70 0022ADD0 93 C1 00 88 */ stw r30, 0x88(r1) +/* 8022DE74 0022ADD4 7C 9E 23 78 */ mr r30, r4 +/* 8022DE78 0022ADD8 93 A1 00 84 */ stw r29, 0x84(r1) +/* 8022DE7C 0022ADDC 7C 7D 1B 78 */ mr r29, r3 +/* 8022DE80 0022ADE0 7F C3 F3 78 */ mr r3, r30 +/* 8022DE84 0022ADE4 48 11 0D A5 */ bl ReadFloat__12CInputStreamFv +/* 8022DE88 0022ADE8 D0 3D 00 00 */ stfs f1, 0(r29) +/* 8022DE8C 0022ADEC 7F C3 F3 78 */ mr r3, r30 +/* 8022DE90 0022ADF0 48 11 0D 99 */ bl ReadFloat__12CInputStreamFv +/* 8022DE94 0022ADF4 D0 3D 00 04 */ stfs f1, 4(r29) +/* 8022DE98 0022ADF8 7F C3 F3 78 */ mr r3, r30 +/* 8022DE9C 0022ADFC 48 11 0D 8D */ bl ReadFloat__12CInputStreamFv +/* 8022DEA0 0022AE00 D0 3D 00 08 */ stfs f1, 8(r29) +/* 8022DEA4 0022AE04 7F C3 F3 78 */ mr r3, r30 +/* 8022DEA8 0022AE08 48 11 0D 81 */ bl ReadFloat__12CInputStreamFv +/* 8022DEAC 0022AE0C D0 3D 00 0C */ stfs f1, 0xc(r29) +/* 8022DEB0 0022AE10 7F C3 F3 78 */ mr r3, r30 +/* 8022DEB4 0022AE14 48 11 0D 75 */ bl ReadFloat__12CInputStreamFv +/* 8022DEB8 0022AE18 D0 3D 00 10 */ stfs f1, 0x10(r29) +/* 8022DEBC 0022AE1C 7F C3 F3 78 */ mr r3, r30 +/* 8022DEC0 0022AE20 48 11 0D 69 */ bl ReadFloat__12CInputStreamFv +/* 8022DEC4 0022AE24 D0 3D 00 14 */ stfs f1, 0x14(r29) +/* 8022DEC8 0022AE28 7F C3 F3 78 */ mr r3, r30 +/* 8022DECC 0022AE2C 48 11 0D 5D */ bl ReadFloat__12CInputStreamFv +/* 8022DED0 0022AE30 D0 3D 00 18 */ stfs f1, 0x18(r29) +/* 8022DED4 0022AE34 7F C3 F3 78 */ mr r3, r30 +/* 8022DED8 0022AE38 48 11 0D 51 */ bl ReadFloat__12CInputStreamFv +/* 8022DEDC 0022AE3C D0 3D 00 1C */ stfs f1, 0x1c(r29) +/* 8022DEE0 0022AE40 7F C3 F3 78 */ mr r3, r30 +/* 8022DEE4 0022AE44 48 11 0D A1 */ bl ReadLong__12CInputStreamFv +/* 8022DEE8 0022AE48 90 7D 00 20 */ stw r3, 0x20(r29) +/* 8022DEEC 0022AE4C 7F C3 F3 78 */ mr r3, r30 +/* 8022DEF0 0022AE50 48 11 0D 95 */ bl ReadLong__12CInputStreamFv +/* 8022DEF4 0022AE54 54 63 04 3E */ clrlwi r3, r3, 0x10 +/* 8022DEF8 0022AE58 48 0B AA B9 */ bl TranslateSFXID__11CSfxManagerFUs +/* 8022DEFC 0022AE5C B0 7D 00 24 */ sth r3, 0x24(r29) +/* 8022DF00 0022AE60 7F C4 F3 78 */ mr r4, r30 +/* 8022DF04 0022AE64 38 61 00 14 */ addi r3, r1, 0x14 +/* 8022DF08 0022AE68 4B EA BE 6D */ bl LoadActorParameters__FR12CInputStream +/* 8022DF0C 0022AE6C 38 7D 00 28 */ addi r3, r29, 0x28 +/* 8022DF10 0022AE70 38 81 00 14 */ addi r4, r1, 0x14 +/* 8022DF14 0022AE74 4B E9 77 09 */ bl __ct__16CActorParametersFRC16CActorParameters +/* 8022DF18 0022AE78 38 61 00 14 */ addi r3, r1, 0x14 +/* 8022DF1C 0022AE7C 38 80 FF FF */ li r4, -1 +/* 8022DF20 0022AE80 4B ED 86 E9 */ bl __dt__16CActorParametersFv +/* 8022DF24 0022AE84 7F C4 F3 78 */ mr r4, r30 +/* 8022DF28 0022AE88 38 61 00 08 */ addi r3, r1, 8 +/* 8022DF2C 0022AE8C 4B EA C4 E1 */ bl LoadAnimationParameters__FR12CInputStream +/* 8022DF30 0022AE90 80 01 00 08 */ lwz r0, 8(r1) +/* 8022DF34 0022AE94 7F C3 F3 78 */ mr r3, r30 +/* 8022DF38 0022AE98 90 1D 00 90 */ stw r0, 0x90(r29) +/* 8022DF3C 0022AE9C 80 01 00 0C */ lwz r0, 0xc(r1) +/* 8022DF40 0022AEA0 90 1D 00 94 */ stw r0, 0x94(r29) +/* 8022DF44 0022AEA4 80 01 00 10 */ lwz r0, 0x10(r1) +/* 8022DF48 0022AEA8 90 1D 00 98 */ stw r0, 0x98(r29) +/* 8022DF4C 0022AEAC 48 11 0D 39 */ bl ReadLong__12CInputStreamFv +/* 8022DF50 0022AEB0 90 7D 00 9C */ stw r3, 0x9c(r29) +/* 8022DF54 0022AEB4 7F C3 F3 78 */ mr r3, r30 +/* 8022DF58 0022AEB8 48 11 0D 2D */ bl ReadLong__12CInputStreamFv +/* 8022DF5C 0022AEBC 54 63 04 3E */ clrlwi r3, r3, 0x10 +/* 8022DF60 0022AEC0 48 0B AA 51 */ bl TranslateSFXID__11CSfxManagerFUs +/* 8022DF64 0022AEC4 B0 7D 00 A0 */ sth r3, 0xa0(r29) +/* 8022DF68 0022AEC8 7F C3 F3 78 */ mr r3, r30 +/* 8022DF6C 0022AECC 48 11 0D 19 */ bl ReadLong__12CInputStreamFv +/* 8022DF70 0022AED0 90 7D 00 A4 */ stw r3, 0xa4(r29) +/* 8022DF74 0022AED4 7F C4 F3 78 */ mr r4, r30 +/* 8022DF78 0022AED8 38 7D 00 A8 */ addi r3, r29, 0xa8 +/* 8022DF7C 0022AEDC 4B E9 55 E5 */ bl __ct__11CDamageInfoFR12CInputStream +/* 8022DF80 0022AEE0 7F C3 F3 78 */ mr r3, r30 +/* 8022DF84 0022AEE4 48 11 0C A5 */ bl ReadFloat__12CInputStreamFv +/* 8022DF88 0022AEE8 D0 3D 00 C4 */ stfs f1, 0xc4(r29) +/* 8022DF8C 0022AEEC 7F C3 F3 78 */ mr r3, r30 +/* 8022DF90 0022AEF0 48 11 0C F5 */ bl ReadLong__12CInputStreamFv +/* 8022DF94 0022AEF4 90 7D 00 C8 */ stw r3, 0xc8(r29) +/* 8022DF98 0022AEF8 7F C3 F3 78 */ mr r3, r30 +/* 8022DF9C 0022AEFC 48 11 0C E9 */ bl ReadLong__12CInputStreamFv +/* 8022DFA0 0022AF00 90 7D 00 CC */ stw r3, 0xcc(r29) +/* 8022DFA4 0022AF04 7F C3 F3 78 */ mr r3, r30 +/* 8022DFA8 0022AF08 48 11 0C DD */ bl ReadLong__12CInputStreamFv +/* 8022DFAC 0022AF0C 90 7D 00 D0 */ stw r3, 0xd0(r29) +/* 8022DFB0 0022AF10 7F C3 F3 78 */ mr r3, r30 +/* 8022DFB4 0022AF14 48 11 0C D1 */ bl ReadLong__12CInputStreamFv +/* 8022DFB8 0022AF18 90 7D 00 D4 */ stw r3, 0xd4(r29) +/* 8022DFBC 0022AF1C 7F C3 F3 78 */ mr r3, r30 +/* 8022DFC0 0022AF20 48 11 0C 69 */ bl ReadFloat__12CInputStreamFv +/* 8022DFC4 0022AF24 D0 3D 00 D8 */ stfs f1, 0xd8(r29) +/* 8022DFC8 0022AF28 7F C3 F3 78 */ mr r3, r30 +/* 8022DFCC 0022AF2C 48 11 0C 5D */ bl ReadFloat__12CInputStreamFv +/* 8022DFD0 0022AF30 D0 3D 00 DC */ stfs f1, 0xdc(r29) +/* 8022DFD4 0022AF34 7F C3 F3 78 */ mr r3, r30 +/* 8022DFD8 0022AF38 48 11 0C 51 */ bl ReadFloat__12CInputStreamFv +/* 8022DFDC 0022AF3C D0 3D 00 E0 */ stfs f1, 0xe0(r29) +/* 8022DFE0 0022AF40 7F C3 F3 78 */ mr r3, r30 +/* 8022DFE4 0022AF44 48 11 0C 45 */ bl ReadFloat__12CInputStreamFv +/* 8022DFE8 0022AF48 D0 3D 00 E4 */ stfs f1, 0xe4(r29) +/* 8022DFEC 0022AF4C 7F C3 F3 78 */ mr r3, r30 +/* 8022DFF0 0022AF50 48 11 0C 39 */ bl ReadFloat__12CInputStreamFv +/* 8022DFF4 0022AF54 C0 02 B6 24 */ lfs f0, lbl_805AD344@sda21(r2) +/* 8022DFF8 0022AF58 7F C3 F3 78 */ mr r3, r30 +/* 8022DFFC 0022AF5C EC 00 00 72 */ fmuls f0, f0, f1 +/* 8022E000 0022AF60 D0 1D 00 E8 */ stfs f0, 0xe8(r29) +/* 8022E004 0022AF64 48 11 0C 25 */ bl ReadFloat__12CInputStreamFv +/* 8022E008 0022AF68 C0 02 B6 24 */ lfs f0, lbl_805AD344@sda21(r2) +/* 8022E00C 0022AF6C 7F C3 F3 78 */ mr r3, r30 +/* 8022E010 0022AF70 EC 00 00 72 */ fmuls f0, f0, f1 +/* 8022E014 0022AF74 D0 1D 00 EC */ stfs f0, 0xec(r29) +/* 8022E018 0022AF78 48 11 0C 6D */ bl ReadLong__12CInputStreamFv +/* 8022E01C 0022AF7C 90 7D 00 F0 */ stw r3, 0xf0(r29) +/* 8022E020 0022AF80 7F C3 F3 78 */ mr r3, r30 +/* 8022E024 0022AF84 48 11 0C 61 */ bl ReadLong__12CInputStreamFv +/* 8022E028 0022AF88 54 63 04 3E */ clrlwi r3, r3, 0x10 +/* 8022E02C 0022AF8C 48 0B A9 85 */ bl TranslateSFXID__11CSfxManagerFUs +/* 8022E030 0022AF90 B0 7D 00 F4 */ sth r3, 0xf4(r29) +/* 8022E034 0022AF94 7F C3 F3 78 */ mr r3, r30 +/* 8022E038 0022AF98 48 11 0C 4D */ bl ReadLong__12CInputStreamFv +/* 8022E03C 0022AF9C 54 63 04 3E */ clrlwi r3, r3, 0x10 +/* 8022E040 0022AFA0 48 0B A9 71 */ bl TranslateSFXID__11CSfxManagerFUs +/* 8022E044 0022AFA4 B0 7D 00 F6 */ sth r3, 0xf6(r29) +/* 8022E048 0022AFA8 7F C3 F3 78 */ mr r3, r30 +/* 8022E04C 0022AFAC 48 11 0C 39 */ bl ReadLong__12CInputStreamFv +/* 8022E050 0022AFB0 90 7D 00 F8 */ stw r3, 0xf8(r29) +/* 8022E054 0022AFB4 7F C4 F3 78 */ mr r4, r30 +/* 8022E058 0022AFB8 38 7D 00 FC */ addi r3, r29, 0xfc +/* 8022E05C 0022AFBC 4B E9 55 05 */ bl __ct__11CDamageInfoFR12CInputStream +/* 8022E060 0022AFC0 7F C3 F3 78 */ mr r3, r30 +/* 8022E064 0022AFC4 48 11 0C 21 */ bl ReadLong__12CInputStreamFv +/* 8022E068 0022AFC8 90 7D 01 18 */ stw r3, 0x118(r29) +/* 8022E06C 0022AFCC 7F C3 F3 78 */ mr r3, r30 +/* 8022E070 0022AFD0 48 11 0C 15 */ bl ReadLong__12CInputStreamFv +/* 8022E074 0022AFD4 54 63 04 3E */ clrlwi r3, r3, 0x10 +/* 8022E078 0022AFD8 48 0B A9 39 */ bl TranslateSFXID__11CSfxManagerFUs +/* 8022E07C 0022AFDC B0 7D 01 1C */ sth r3, 0x11c(r29) +/* 8022E080 0022AFE0 7F C3 F3 78 */ mr r3, r30 +/* 8022E084 0022AFE4 48 11 0C 59 */ bl ReadBool__12CInputStreamFv +/* 8022E088 0022AFE8 2C 1F 00 2A */ cmpwi r31, 0x2a +/* 8022E08C 0022AFEC 98 7D 01 1E */ stb r3, 0x11e(r29) +/* 8022E090 0022AFF0 41 80 00 10 */ blt lbl_8022E0A0 +/* 8022E094 0022AFF4 7F C3 F3 78 */ mr r3, r30 +/* 8022E098 0022AFF8 48 11 0C 45 */ bl ReadBool__12CInputStreamFv +/* 8022E09C 0022AFFC 48 00 00 08 */ b lbl_8022E0A4 +lbl_8022E0A0: +/* 8022E0A0 0022B000 38 60 00 01 */ li r3, 1 +lbl_8022E0A4: +/* 8022E0A4 0022B004 98 7D 01 1F */ stb r3, 0x11f(r29) +/* 8022E0A8 0022B008 7F A3 EB 78 */ mr r3, r29 +/* 8022E0AC 0022B00C 80 01 00 94 */ lwz r0, 0x94(r1) +/* 8022E0B0 0022B010 83 E1 00 8C */ lwz r31, 0x8c(r1) +/* 8022E0B4 0022B014 83 C1 00 88 */ lwz r30, 0x88(r1) +/* 8022E0B8 0022B018 83 A1 00 84 */ lwz r29, 0x84(r1) +/* 8022E0BC 0022B01C 7C 08 03 A6 */ mtlr r0 +/* 8022E0C0 0022B020 38 21 00 90 */ addi r1, r1, 0x90 +/* 8022E0C4 0022B024 4E 80 00 20 */ blr + +.global __sinit_CElitePirate_cpp +__sinit_CElitePirate_cpp: +/* 8022E0C8 0022B028 C0 22 B6 10 */ lfs f1, lbl_805AD330@sda21(r2) +/* 8022E0CC 0022B02C 3C 80 80 57 */ lis r4, lbl_805723E0@ha +/* 8022E0D0 0022B030 C0 02 B6 04 */ lfs f0, lbl_805AD324@sda21(r2) +/* 8022E0D4 0022B034 3C 60 80 57 */ lis r3, lbl_805723F8@ha +/* 8022E0D8 0022B038 D4 24 23 E0 */ stfsu f1, lbl_805723E0@l(r4) +/* 8022E0DC 0022B03C D4 03 23 F8 */ stfsu f0, lbl_805723F8@l(r3) +/* 8022E0E0 0022B040 D0 24 00 04 */ stfs f1, 4(r4) +/* 8022E0E4 0022B044 D0 24 00 08 */ stfs f1, 8(r4) +/* 8022E0E8 0022B048 D0 03 00 04 */ stfs f0, 4(r3) +/* 8022E0EC 0022B04C D0 23 00 08 */ stfs f1, 8(r3) +/* 8022E0F0 0022B050 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Enemies/CEyeBall.s b/asm/Kyoto_CWD/Enemies/CEyeBall.s new file mode 100644 index 00000000..3f71d4d0 --- /dev/null +++ b/asm/Kyoto_CWD/Enemies/CEyeBall.s @@ -0,0 +1,1286 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__8CEyeBallFv +__dt__8CEyeBallFv: +/* 80224690 002215F0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80224694 002215F4 7C 08 02 A6 */ mflr r0 +/* 80224698 002215F8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8022469C 002215FC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 802246A0 00221600 7C 9F 23 78 */ mr r31, r4 +/* 802246A4 00221604 93 C1 00 08 */ stw r30, 8(r1) +/* 802246A8 00221608 7C 7E 1B 79 */ or. r30, r3, r3 +/* 802246AC 0022160C 41 82 00 68 */ beq lbl_80224714 +/* 802246B0 00221610 3C 60 80 3E */ lis r3, lbl_803E774C@ha +/* 802246B4 00221614 34 1E 05 B4 */ addic. r0, r30, 0x5b4 +/* 802246B8 00221618 38 03 77 4C */ addi r0, r3, lbl_803E774C@l +/* 802246BC 0022161C 90 1E 00 00 */ stw r0, 0(r30) +/* 802246C0 00221620 41 82 00 20 */ beq lbl_802246E0 +/* 802246C4 00221624 34 1E 05 B4 */ addic. r0, r30, 0x5b4 +/* 802246C8 00221628 41 82 00 18 */ beq lbl_802246E0 +/* 802246CC 0022162C 34 1E 05 B4 */ addic. r0, r30, 0x5b4 +/* 802246D0 00221630 41 82 00 10 */ beq lbl_802246E0 +/* 802246D4 00221634 38 7E 05 B4 */ addi r3, r30, 0x5b4 +/* 802246D8 00221638 38 80 00 00 */ li r4, 0 +/* 802246DC 0022163C 48 11 C7 65 */ bl __dt__6CTokenFv +lbl_802246E0: +/* 802246E0 00221640 34 1E 05 70 */ addic. r0, r30, 0x570 +/* 802246E4 00221644 41 82 00 14 */ beq lbl_802246F8 +/* 802246E8 00221648 34 1E 05 94 */ addic. r0, r30, 0x594 +/* 802246EC 0022164C 41 82 00 0C */ beq lbl_802246F8 +/* 802246F0 00221650 38 00 00 00 */ li r0, 0 +/* 802246F4 00221654 98 1E 05 A0 */ stb r0, 0x5a0(r30) +lbl_802246F8: +/* 802246F8 00221658 7F C3 F3 78 */ mr r3, r30 +/* 802246FC 0022165C 38 80 00 00 */ li r4, 0 +/* 80224700 00221660 4B E5 2E 71 */ bl __dt__10CPatternedFv +/* 80224704 00221664 7F E0 07 35 */ extsh. r0, r31 +/* 80224708 00221668 40 81 00 0C */ ble lbl_80224714 +/* 8022470C 0022166C 7F C3 F3 78 */ mr r3, r30 +/* 80224710 00221670 48 0F 12 21 */ bl Free__7CMemoryFPCv +lbl_80224714: +/* 80224714 00221674 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80224718 00221678 7F C3 F3 78 */ mr r3, r30 +/* 8022471C 0022167C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80224720 00221680 83 C1 00 08 */ lwz r30, 8(r1) +/* 80224724 00221684 7C 08 03 A6 */ mtlr r0 +/* 80224728 00221688 38 21 00 10 */ addi r1, r1, 0x10 +/* 8022472C 0022168C 4E 80 00 20 */ blr + +.global Death__8CEyeBallFRC9CVector3fR13CStateManager +Death__8CEyeBallFRC9CVector3fR13CStateManager: +/* 80224730 00221690 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80224734 00221694 7C 08 02 A6 */ mflr r0 +/* 80224738 00221698 90 01 00 54 */ stw r0, 0x54(r1) +/* 8022473C 0022169C 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 80224740 002216A0 7C DF 33 78 */ mr r31, r6 +/* 80224744 002216A4 93 C1 00 48 */ stw r30, 0x48(r1) +/* 80224748 002216A8 7C BE 2B 78 */ mr r30, r5 +/* 8022474C 002216AC 93 A1 00 44 */ stw r29, 0x44(r1) +/* 80224750 002216B0 7C 9D 23 78 */ mr r29, r4 +/* 80224754 002216B4 93 81 00 40 */ stw r28, 0x40(r1) +/* 80224758 002216B8 7C 7C 1B 78 */ mr r28, r3 +/* 8022475C 002216BC 38 61 00 08 */ addi r3, r1, 8 +/* 80224760 002216C0 38 9C 00 34 */ addi r4, r28, 0x34 +/* 80224764 002216C4 48 0E E4 11 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80224768 002216C8 7F 83 E3 78 */ mr r3, r28 +/* 8022476C 002216CC 7F A4 EB 78 */ mr r4, r29 +/* 80224770 002216D0 7F C5 F3 78 */ mr r5, r30 +/* 80224774 002216D4 7F E6 FB 78 */ mr r6, r31 +/* 80224778 002216D8 4B E5 6C 2D */ bl Death__10CPatternedFR13CStateManagerRC9CVector3f18EScriptObjectState +/* 8022477C 002216DC 38 7C 00 34 */ addi r3, r28, 0x34 +/* 80224780 002216E0 38 81 00 08 */ addi r4, r1, 8 +/* 80224784 002216E4 48 0E E3 BD */ bl __as__12CTransform4fFRC12CTransform4f +/* 80224788 002216E8 88 1C 00 E4 */ lbz r0, 0xe4(r28) +/* 8022478C 002216EC 38 60 00 01 */ li r3, 1 +/* 80224790 002216F0 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 80224794 002216F4 98 1C 00 E4 */ stb r0, 0xe4(r28) +/* 80224798 002216F8 88 1C 00 E4 */ lbz r0, 0xe4(r28) +/* 8022479C 002216FC 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 802247A0 00221700 98 1C 00 E4 */ stb r0, 0xe4(r28) +/* 802247A4 00221704 88 1C 00 E4 */ lbz r0, 0xe4(r28) +/* 802247A8 00221708 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 802247AC 0022170C 98 1C 00 E4 */ stb r0, 0xe4(r28) +/* 802247B0 00221710 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 802247B4 00221714 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 802247B8 00221718 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 802247BC 0022171C 83 81 00 40 */ lwz r28, 0x40(r1) +/* 802247C0 00221720 80 01 00 54 */ lwz r0, 0x54(r1) +/* 802247C4 00221724 7C 08 03 A6 */ mtlr r0 +/* 802247C8 00221728 38 21 00 50 */ addi r1, r1, 0x50 +/* 802247CC 0022172C 4E 80 00 20 */ blr + +.global ResetBeamState__8CEyeballFR13CStateManager +ResetBeamState__8CEyeballFR13CStateManager: +/* 802247D0 00221730 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 802247D4 00221734 7C 08 02 A6 */ mflr r0 +/* 802247D8 00221738 90 01 00 24 */ stw r0, 0x24(r1) +/* 802247DC 0022173C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 802247E0 00221740 7C 9F 23 78 */ mr r31, r4 +/* 802247E4 00221744 38 81 00 08 */ addi r4, r1, 8 +/* 802247E8 00221748 93 C1 00 18 */ stw r30, 0x18(r1) +/* 802247EC 0022174C 7C 7E 1B 78 */ mr r30, r3 +/* 802247F0 00221750 A0 03 05 EC */ lhz r0, 0x5ec(r3) +/* 802247F4 00221754 7F E3 FB 78 */ mr r3, r31 +/* 802247F8 00221758 B0 01 00 08 */ sth r0, 8(r1) +/* 802247FC 0022175C 4B E2 7D 79 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80224800 00221760 28 03 00 00 */ cmplwi r3, 0 +/* 80224804 00221764 41 82 00 1C */ beq lbl_80224820 +/* 80224808 00221768 81 83 00 00 */ lwz r12, 0(r3) +/* 8022480C 0022176C 7F E4 FB 78 */ mr r4, r31 +/* 80224810 00221770 38 A0 00 01 */ li r5, 1 +/* 80224814 00221774 81 8C 00 74 */ lwz r12, 0x74(r12) +/* 80224818 00221778 7D 89 03 A6 */ mtctr r12 +/* 8022481C 0022177C 4E 80 04 21 */ bctrl +lbl_80224820: +/* 80224820 00221780 88 1E 06 0C */ lbz r0, 0x60c(r30) +/* 80224824 00221784 38 60 00 00 */ li r3, 0 +/* 80224828 00221788 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 8022482C 0022178C 98 1E 06 0C */ stb r0, 0x60c(r30) +/* 80224830 00221790 80 1E 06 08 */ lwz r0, 0x608(r30) +/* 80224834 00221794 28 00 00 00 */ cmplwi r0, 0 +/* 80224838 00221798 41 82 00 1C */ beq lbl_80224854 +/* 8022483C 0022179C 80 1E 06 08 */ lwz r0, 0x608(r30) +/* 80224840 002217A0 38 61 00 0C */ addi r3, r1, 0xc +/* 80224844 002217A4 90 01 00 0C */ stw r0, 0xc(r1) +/* 80224848 002217A8 48 0C 56 3D */ bl RemoveEmitter__11CSfxManagerFRC10CSfxHandle +/* 8022484C 002217AC 38 00 00 00 */ li r0, 0 +/* 80224850 002217B0 90 1E 06 08 */ stw r0, 0x608(r30) +lbl_80224854: +/* 80224854 002217B4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80224858 002217B8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8022485C 002217BC 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80224860 002217C0 7C 08 03 A6 */ mtlr r0 +/* 80224864 002217C4 38 21 00 20 */ addi r1, r1, 0x20 +/* 80224868 002217C8 4E 80 00 20 */ blr + +.global FireBeam__8CEyeballFR13CStateManagerRC12CTransform4f +FireBeam__8CEyeballFR13CStateManagerRC12CTransform4f: +/* 8022486C 002217CC 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80224870 002217D0 7C 08 02 A6 */ mflr r0 +/* 80224874 002217D4 90 01 00 54 */ stw r0, 0x54(r1) +/* 80224878 002217D8 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 8022487C 002217DC 7C 7F 1B 78 */ mr r31, r3 +/* 80224880 002217E0 93 C1 00 48 */ stw r30, 0x48(r1) +/* 80224884 002217E4 7C BE 2B 78 */ mr r30, r5 +/* 80224888 002217E8 93 A1 00 44 */ stw r29, 0x44(r1) +/* 8022488C 002217EC 7C 9D 23 78 */ mr r29, r4 +/* 80224890 002217F0 38 81 00 08 */ addi r4, r1, 8 +/* 80224894 002217F4 A0 03 05 EC */ lhz r0, 0x5ec(r3) +/* 80224898 002217F8 7F A3 EB 78 */ mr r3, r29 +/* 8022489C 002217FC B0 01 00 08 */ sth r0, 8(r1) +/* 802248A0 00221800 4B E2 7C D5 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 802248A4 00221804 28 03 00 00 */ cmplwi r3, 0 +/* 802248A8 00221808 41 82 01 00 */ beq lbl_802249A8 +/* 802248AC 0022180C 88 03 00 30 */ lbz r0, 0x30(r3) +/* 802248B0 00221810 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 802248B4 00221814 40 82 00 F4 */ bne lbl_802249A8 +/* 802248B8 00221818 81 83 00 00 */ lwz r12, 0(r3) +/* 802248BC 0022181C 7F C4 F3 78 */ mr r4, r30 +/* 802248C0 00221820 7F A5 EB 78 */ mr r5, r29 +/* 802248C4 00221824 38 C0 00 00 */ li r6, 0 +/* 802248C8 00221828 81 8C 00 78 */ lwz r12, 0x78(r12) +/* 802248CC 0022182C 7D 89 03 A6 */ mtctr r12 +/* 802248D0 00221830 4E 80 04 21 */ bctrl +/* 802248D4 00221834 88 1F 06 0C */ lbz r0, 0x60c(r31) +/* 802248D8 00221838 39 80 00 01 */ li r12, 1 +/* 802248DC 0022183C 51 80 1F 38 */ rlwimi r0, r12, 3, 0x1c, 0x1c +/* 802248E0 00221840 98 1F 06 0C */ stb r0, 0x60c(r31) +/* 802248E4 00221844 80 1F 06 08 */ lwz r0, 0x608(r31) +/* 802248E8 00221848 28 00 00 00 */ cmplwi r0, 0 +/* 802248EC 0022184C 40 82 00 BC */ bne lbl_802249A8 +/* 802248F0 00221850 81 1F 00 04 */ lwz r8, 4(r31) +/* 802248F4 00221854 39 60 00 00 */ li r11, 0 +/* 802248F8 00221858 C0 A2 B4 70 */ lfs f5, lbl_805AD190@sda21(r2) +/* 802248FC 0022185C 39 40 00 7F */ li r10, 0x7f +/* 80224900 00221860 C0 82 B4 74 */ lfs f4, lbl_805AD194@sda21(r2) +/* 80224904 00221864 39 20 00 14 */ li r9, 0x14 +/* 80224908 00221868 C0 62 B4 78 */ lfs f3, lbl_805AD198@sda21(r2) +/* 8022490C 0022186C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80224910 00221870 38 C3 66 A0 */ addi r6, r3, skZero3f@l +/* 80224914 00221874 88 02 CC 41 */ lbz r0, lbl_805AE961@sda21(r2) +/* 80224918 00221878 D0 A1 00 10 */ stfs f5, 0x10(r1) +/* 8022491C 0022187C 38 61 00 0C */ addi r3, r1, 0xc +/* 80224920 00221880 C0 46 00 00 */ lfs f2, 0(r6) +/* 80224924 00221884 38 81 00 10 */ addi r4, r1, 0x10 +/* 80224928 00221888 D0 A1 00 14 */ stfs f5, 0x14(r1) +/* 8022492C 0022188C 38 A0 00 01 */ li r5, 1 +/* 80224930 00221890 C0 26 00 04 */ lfs f1, 4(r6) +/* 80224934 00221894 38 E0 00 01 */ li r7, 1 +/* 80224938 00221898 C0 06 00 08 */ lfs f0, 8(r6) +/* 8022493C 0022189C D0 A1 00 18 */ stfs f5, 0x18(r1) +/* 80224940 002218A0 A8 C2 C5 FA */ lha r6, lbl_805AE31A@sda21(r2) +/* 80224944 002218A4 D0 A1 00 1C */ stfs f5, 0x1c(r1) +/* 80224948 002218A8 D0 A1 00 20 */ stfs f5, 0x20(r1) +/* 8022494C 002218AC D0 A1 00 24 */ stfs f5, 0x24(r1) +/* 80224950 002218B0 D0 81 00 28 */ stfs f4, 0x28(r1) +/* 80224954 002218B4 D0 61 00 2C */ stfs f3, 0x2c(r1) +/* 80224958 002218B8 91 81 00 30 */ stw r12, 0x30(r1) +/* 8022495C 002218BC B1 61 00 34 */ sth r11, 0x34(r1) +/* 80224960 002218C0 99 41 00 36 */ stb r10, 0x36(r1) +/* 80224964 002218C4 99 21 00 37 */ stb r9, 0x37(r1) +/* 80224968 002218C8 99 61 00 38 */ stb r11, 0x38(r1) +/* 8022496C 002218CC 98 01 00 39 */ stb r0, 0x39(r1) +/* 80224970 002218D0 C0 BF 00 60 */ lfs f5, 0x60(r31) +/* 80224974 002218D4 C0 9F 00 50 */ lfs f4, 0x50(r31) +/* 80224978 002218D8 C0 7F 00 40 */ lfs f3, 0x40(r31) +/* 8022497C 002218DC D0 61 00 10 */ stfs f3, 0x10(r1) +/* 80224980 002218E0 D0 81 00 14 */ stfs f4, 0x14(r1) +/* 80224984 002218E4 D0 A1 00 18 */ stfs f5, 0x18(r1) +/* 80224988 002218E8 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 8022498C 002218EC D0 21 00 20 */ stfs f1, 0x20(r1) +/* 80224990 002218F0 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 80224994 002218F4 A0 1F 06 04 */ lhz r0, 0x604(r31) +/* 80224998 002218F8 B0 01 00 34 */ sth r0, 0x34(r1) +/* 8022499C 002218FC 48 0C 56 45 */ bl AddEmitter__11CSfxManagerFRQ29CAudioSys18C3DEmitterParmDatabsbi +/* 802249A0 00221900 80 01 00 0C */ lwz r0, 0xc(r1) +/* 802249A4 00221904 90 1F 06 08 */ stw r0, 0x608(r31) +lbl_802249A8: +/* 802249A8 00221908 80 01 00 54 */ lwz r0, 0x54(r1) +/* 802249AC 0022190C 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 802249B0 00221910 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 802249B4 00221914 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 802249B8 00221918 7C 08 03 A6 */ mtlr r0 +/* 802249BC 0022191C 38 21 00 50 */ addi r1, r1, 0x50 +/* 802249C0 00221920 4E 80 00 20 */ blr + +.global Touch__8CEyeBallFR6CActorR13CStateManager +Touch__8CEyeBallFR6CActorR13CStateManager: +/* 802249C4 00221924 4E 80 00 20 */ blr + +.global UpdateAnimation__8CEyeballFv +UpdateAnimation__8CEyeballFv: +/* 802249C8 00221928 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 802249CC 0022192C 7C 08 02 A6 */ mflr r0 +/* 802249D0 00221930 3C 80 80 3D */ lis r4, lbl_803D3248@ha +/* 802249D4 00221934 90 01 00 44 */ stw r0, 0x44(r1) +/* 802249D8 00221938 38 84 32 48 */ addi r4, r4, lbl_803D3248@l +/* 802249DC 0022193C 38 84 00 0B */ addi r4, r4, 0xb +/* 802249E0 00221940 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 802249E4 00221944 7C 7F 1B 78 */ mr r31, r3 +/* 802249E8 00221948 38 61 00 08 */ addi r3, r1, 8 +/* 802249EC 0022194C 93 C1 00 38 */ stw r30, 0x38(r1) +/* 802249F0 00221950 4B DE 02 C9 */ bl string_l__4rstlFPCc +/* 802249F4 00221954 80 7F 00 64 */ lwz r3, 0x64(r31) +/* 802249F8 00221958 38 81 00 08 */ addi r4, r1, 8 +/* 802249FC 0022195C 80 63 00 10 */ lwz r3, 0x10(r3) +/* 80224A00 00221960 4B E0 7A 6D */ bl "GetAnimTimeRemaining__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80224A04 00221964 C0 42 B4 70 */ lfs f2, lbl_805AD190@sda21(r2) +/* 80224A08 00221968 C8 02 B4 80 */ lfd f0, lbl_805AD1A0@sda21(r2) +/* 80224A0C 0022196C EC 21 10 28 */ fsubs f1, f1, f2 +/* 80224A10 00221970 FC 20 0A 10 */ fabs f1, f1 +/* 80224A14 00221974 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80224A18 00221978 7C 00 00 26 */ mfcr r0 +/* 80224A1C 0022197C 38 61 00 08 */ addi r3, r1, 8 +/* 80224A20 00221980 54 1E 0F FE */ srwi r30, r0, 0x1f +/* 80224A24 00221984 48 11 90 BD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80224A28 00221988 28 1E 00 00 */ cmplwi r30, 0 +/* 80224A2C 0022198C 41 82 01 14 */ beq lbl_80224B40 +/* 80224A30 00221990 80 7F 05 F0 */ lwz r3, 0x5f0(r31) +/* 80224A34 00221994 38 A0 00 00 */ li r5, 0 +/* 80224A38 00221998 38 63 00 01 */ addi r3, r3, 1 +/* 80224A3C 0022199C 54 60 F0 02 */ slwi r0, r3, 0x1e +/* 80224A40 002219A0 54 63 0F FE */ srwi r3, r3, 0x1f +/* 80224A44 002219A4 7C 03 00 50 */ subf r0, r3, r0 +/* 80224A48 002219A8 54 00 10 3E */ rotlwi r0, r0, 2 +/* 80224A4C 002219AC 7C 00 1A 14 */ add r0, r0, r3 +/* 80224A50 002219B0 90 1F 05 F0 */ stw r0, 0x5f0(r31) +/* 80224A54 002219B4 48 00 00 24 */ b lbl_80224A78 +lbl_80224A58: +/* 80224A58 002219B8 38 64 00 01 */ addi r3, r4, 1 +/* 80224A5C 002219BC 38 A5 00 01 */ addi r5, r5, 1 +/* 80224A60 002219C0 54 60 F0 02 */ slwi r0, r3, 0x1e +/* 80224A64 002219C4 54 63 0F FE */ srwi r3, r3, 0x1f +/* 80224A68 002219C8 7C 03 00 50 */ subf r0, r3, r0 +/* 80224A6C 002219CC 54 00 10 3E */ rotlwi r0, r0, 2 +/* 80224A70 002219D0 7C 00 1A 14 */ add r0, r0, r3 +/* 80224A74 002219D4 90 1F 05 F0 */ stw r0, 0x5f0(r31) +lbl_80224A78: +/* 80224A78 002219D8 80 9F 05 F0 */ lwz r4, 0x5f0(r31) +/* 80224A7C 002219DC 54 83 10 3A */ slwi r3, r4, 2 +/* 80224A80 002219E0 38 03 05 F4 */ addi r0, r3, 0x5f4 +/* 80224A84 002219E4 7C 1F 00 2E */ lwzx r0, r31, r0 +/* 80224A88 002219E8 2C 00 FF FF */ cmpwi r0, -1 +/* 80224A8C 002219EC 40 82 00 0C */ bne lbl_80224A98 +/* 80224A90 002219F0 2C 05 00 04 */ cmpwi r5, 4 +/* 80224A94 002219F4 41 80 FF C4 */ blt lbl_80224A58 +lbl_80224A98: +/* 80224A98 002219F8 54 80 10 3A */ slwi r0, r4, 2 +/* 80224A9C 002219FC 7C 7F 02 14 */ add r3, r31, r0 +/* 80224AA0 00221A00 81 23 05 F4 */ lwz r9, 0x5f4(r3) +/* 80224AA4 00221A04 2C 09 FF FF */ cmpwi r9, -1 +/* 80224AA8 00221A08 41 82 00 98 */ beq lbl_80224B40 +/* 80224AAC 00221A0C 3C A0 80 3E */ lis r5, lbl_803DAA68@ha +/* 80224AB0 00221A10 88 61 00 24 */ lbz r3, 0x24(r1) +/* 80224AB4 00221A14 38 80 00 00 */ li r4, 0 +/* 80224AB8 00221A18 81 1F 04 50 */ lwz r8, 0x450(r31) +/* 80224ABC 00221A1C 50 83 3E 30 */ rlwimi r3, r4, 7, 0x18, 0x18 +/* 80224AC0 00221A20 38 E5 AA 68 */ addi r7, r5, lbl_803DAA68@l +/* 80224AC4 00221A24 C0 02 B4 70 */ lfs f0, lbl_805AD190@sda21(r2) +/* 80224AC8 00221A28 3C A0 80 3E */ lis r5, lbl_803DFE40@ha +/* 80224ACC 00221A2C 54 60 06 3E */ clrlwi r0, r3, 0x18 +/* 80224AD0 00221A30 38 C0 00 13 */ li r6, 0x13 +/* 80224AD4 00221A34 3B C8 00 04 */ addi r30, r8, 4 +/* 80224AD8 00221A38 90 E1 00 18 */ stw r7, 0x18(r1) +/* 80224ADC 00221A3C 38 A5 FE 40 */ addi r5, r5, lbl_803DFE40@l +/* 80224AE0 00221A40 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 80224AE4 00221A44 98 61 00 24 */ stb r3, 0x24(r1) +/* 80224AE8 00221A48 7F C3 F3 78 */ mr r3, r30 +/* 80224AEC 00221A4C 38 80 00 13 */ li r4, 0x13 +/* 80224AF0 00221A50 90 C1 00 1C */ stw r6, 0x1c(r1) +/* 80224AF4 00221A54 90 A1 00 18 */ stw r5, 0x18(r1) +/* 80224AF8 00221A58 91 21 00 20 */ stw r9, 0x20(r1) +/* 80224AFC 00221A5C 98 01 00 24 */ stb r0, 0x24(r1) +/* 80224B00 00221A60 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 80224B04 00221A64 4B F0 C9 35 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80224B08 00221A68 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 80224B0C 00221A6C 3C 60 80 3E */ lis r3, lbl_803DFE40@ha +/* 80224B10 00221A70 38 83 FE 40 */ addi r4, r3, lbl_803DFE40@l +/* 80224B14 00221A74 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80224B18 00221A78 90 1E 02 20 */ stw r0, 0x220(r30) +/* 80224B1C 00221A7C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 80224B20 00221A80 80 A1 00 20 */ lwz r5, 0x20(r1) +/* 80224B24 00221A84 88 61 00 24 */ lbz r3, 0x24(r1) +/* 80224B28 00221A88 90 BE 02 24 */ stw r5, 0x224(r30) +/* 80224B2C 00221A8C C0 01 00 28 */ lfs f0, 0x28(r1) +/* 80224B30 00221A90 98 7E 02 28 */ stb r3, 0x228(r30) +/* 80224B34 00221A94 90 81 00 18 */ stw r4, 0x18(r1) +/* 80224B38 00221A98 D0 1E 02 2C */ stfs f0, 0x22c(r30) +/* 80224B3C 00221A9C 90 01 00 18 */ stw r0, 0x18(r1) +lbl_80224B40: +/* 80224B40 00221AA0 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80224B44 00221AA4 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 80224B48 00221AA8 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 80224B4C 00221AAC 7C 08 03 A6 */ mtlr r0 +/* 80224B50 00221AB0 38 21 00 40 */ addi r1, r1, 0x40 +/* 80224B54 00221AB4 4E 80 00 20 */ blr + +.global ShouldAttack__8CEyeBallFR13CStateManagerf +ShouldAttack__8CEyeBallFR13CStateManagerf: +/* 80224B58 00221AB8 88 03 06 0C */ lbz r0, 0x60c(r3) +/* 80224B5C 00221ABC 54 03 DF FE */ rlwinm r3, r0, 0x1b, 0x1f, 0x1f +/* 80224B60 00221AC0 4E 80 00 20 */ blr + +.global ShouldFire__8CEyeBallFR13CStateManagerf +ShouldFire__8CEyeBallFR13CStateManagerf: +/* 80224B64 00221AC4 88 03 06 0C */ lbz r0, 0x60c(r3) +/* 80224B68 00221AC8 54 00 E7 FE */ rlwinm r0, r0, 0x1c, 0x1f, 0x1f +/* 80224B6C 00221ACC 7C 00 00 34 */ cntlzw r0, r0 +/* 80224B70 00221AD0 54 03 D9 7E */ srwi r3, r0, 5 +/* 80224B74 00221AD4 4E 80 00 20 */ blr + +.global Cover__8CEyeBallFR13CStateManager9EStateMsgf +Cover__8CEyeBallFR13CStateManager9EStateMsgf: +/* 80224B78 00221AD8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80224B7C 00221ADC 7C 08 02 A6 */ mflr r0 +/* 80224B80 00221AE0 2C 05 00 00 */ cmpwi r5, 0 +/* 80224B84 00221AE4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80224B88 00221AE8 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80224B8C 00221AEC 7C 7F 1B 78 */ mr r31, r3 +/* 80224B90 00221AF0 41 82 00 0C */ beq lbl_80224B9C +/* 80224B94 00221AF4 41 80 00 2C */ blt lbl_80224BC0 +/* 80224B98 00221AF8 48 00 00 28 */ b lbl_80224BC0 +lbl_80224B9C: +/* 80224B9C 00221AFC 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 80224BA0 00221B00 38 80 00 02 */ li r4, 2 +/* 80224BA4 00221B04 4B F1 5E 35 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 80224BA8 00221B08 88 1F 06 0C */ lbz r0, 0x60c(r31) +/* 80224BAC 00221B0C 38 60 00 00 */ li r3, 0 +/* 80224BB0 00221B10 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80224BB4 00221B14 98 1F 06 0C */ stb r0, 0x60c(r31) +/* 80224BB8 00221B18 C0 1F 05 68 */ lfs f0, 0x568(r31) +/* 80224BBC 00221B1C D0 1F 03 40 */ stfs f0, 0x340(r31) +lbl_80224BC0: +/* 80224BC0 00221B20 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80224BC4 00221B24 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80224BC8 00221B28 7C 08 03 A6 */ mtlr r0 +/* 80224BCC 00221B2C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80224BD0 00221B30 4E 80 00 20 */ blr + +.global Flinch__8CEyeBallFR13CStateManager9EStateMsgf +Flinch__8CEyeBallFR13CStateManager9EStateMsgf: +/* 80224BD4 00221B34 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80224BD8 00221B38 7C 08 02 A6 */ mflr r0 +/* 80224BDC 00221B3C 2C 05 00 01 */ cmpwi r5, 1 +/* 80224BE0 00221B40 90 01 00 24 */ stw r0, 0x24(r1) +/* 80224BE4 00221B44 41 82 00 34 */ beq lbl_80224C18 +/* 80224BE8 00221B48 40 80 00 10 */ bge lbl_80224BF8 +/* 80224BEC 00221B4C 2C 05 00 00 */ cmpwi r5, 0 +/* 80224BF0 00221B50 40 80 00 14 */ bge lbl_80224C04 +/* 80224BF4 00221B54 48 00 00 60 */ b lbl_80224C54 +lbl_80224BF8: +/* 80224BF8 00221B58 2C 05 00 03 */ cmpwi r5, 3 +/* 80224BFC 00221B5C 40 80 00 58 */ bge lbl_80224C54 +/* 80224C00 00221B60 48 00 00 4C */ b lbl_80224C4C +lbl_80224C04: +/* 80224C04 00221B64 38 00 00 01 */ li r0, 1 +/* 80224C08 00221B68 90 03 03 2C */ stw r0, 0x32c(r3) +/* 80224C0C 00221B6C C0 03 05 68 */ lfs f0, 0x568(r3) +/* 80224C10 00221B70 D0 03 03 40 */ stfs f0, 0x340(r3) +/* 80224C14 00221B74 48 00 00 40 */ b lbl_80224C54 +lbl_80224C18: +/* 80224C18 00221B78 3C A0 80 3E */ lis r5, lbl_803E7740@ha +/* 80224C1C 00221B7C 38 C1 00 08 */ addi r6, r1, 8 +/* 80224C20 00221B80 39 45 77 40 */ addi r10, r5, lbl_803E7740@l +/* 80224C24 00221B84 38 A0 00 06 */ li r5, 6 +/* 80224C28 00221B88 81 2A 00 00 */ lwz r9, 0(r10) +/* 80224C2C 00221B8C 38 E0 00 00 */ li r7, 0 +/* 80224C30 00221B90 81 0A 00 04 */ lwz r8, 4(r10) +/* 80224C34 00221B94 80 0A 00 08 */ lwz r0, 8(r10) +/* 80224C38 00221B98 91 21 00 08 */ stw r9, 8(r1) +/* 80224C3C 00221B9C 91 01 00 0C */ stw r8, 0xc(r1) +/* 80224C40 00221BA0 90 01 00 10 */ stw r0, 0x10(r1) +/* 80224C44 00221BA4 4B E5 7B 71 */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi +/* 80224C48 00221BA8 48 00 00 0C */ b lbl_80224C54 +lbl_80224C4C: +/* 80224C4C 00221BAC 38 00 00 00 */ li r0, 0 +/* 80224C50 00221BB0 90 03 03 2C */ stw r0, 0x32c(r3) +lbl_80224C54: +/* 80224C54 00221BB4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80224C58 00221BB8 7C 08 03 A6 */ mtlr r0 +/* 80224C5C 00221BBC 38 21 00 20 */ addi r1, r1, 0x20 +/* 80224C60 00221BC0 4E 80 00 20 */ blr + +.global Render__8CEyeBallCFRC13CStateManager +Render__8CEyeBallCFRC13CStateManager: +/* 80224C64 00221BC4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80224C68 00221BC8 7C 08 02 A6 */ mflr r0 +/* 80224C6C 00221BCC 90 01 00 14 */ stw r0, 0x14(r1) +/* 80224C70 00221BD0 4B E5 33 BD */ bl Render__10CPatternedCFRC13CStateManager +/* 80224C74 00221BD4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80224C78 00221BD8 7C 08 03 A6 */ mtlr r0 +/* 80224C7C 00221BDC 38 21 00 10 */ addi r1, r1, 0x10 +/* 80224C80 00221BE0 4E 80 00 20 */ blr + +.global sub_80224c84 +sub_80224c84: +/* 80224C84 00221BE4 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80224C88 00221BE8 7C 08 02 A6 */ mflr r0 +/* 80224C8C 00221BEC 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 80224C90 00221BF0 90 01 00 34 */ stw r0, 0x34(r1) +/* 80224C94 00221BF4 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l +/* 80224C98 00221BF8 3C 80 80 3E */ lis r4, lbl_803DAA44@ha +/* 80224C9C 00221BFC 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80224CA0 00221C00 80 C3 04 50 */ lwz r6, 0x450(r3) +/* 80224CA4 00221C04 C0 43 00 54 */ lfs f2, 0x54(r3) +/* 80224CA8 00221C08 C0 23 00 44 */ lfs f1, 0x44(r3) +/* 80224CAC 00221C0C 3B E6 00 04 */ addi r31, r6, 4 +/* 80224CB0 00221C10 C0 03 00 34 */ lfs f0, 0x34(r3) +/* 80224CB4 00221C14 38 60 00 04 */ li r3, 4 +/* 80224CB8 00221C18 90 01 00 08 */ stw r0, 8(r1) +/* 80224CBC 00221C1C 38 04 AA 44 */ addi r0, r4, lbl_803DAA44@l +/* 80224CC0 00221C20 38 80 00 04 */ li r4, 4 +/* 80224CC4 00221C24 90 61 00 0C */ stw r3, 0xc(r1) +/* 80224CC8 00221C28 7F E3 FB 78 */ mr r3, r31 +/* 80224CCC 00221C2C 90 01 00 08 */ stw r0, 8(r1) +/* 80224CD0 00221C30 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 80224CD4 00221C34 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 80224CD8 00221C38 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 80224CDC 00221C3C 90 A1 00 1C */ stw r5, 0x1c(r1) +/* 80224CE0 00221C40 4B F0 C7 59 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80224CE4 00221C44 80 01 00 0C */ lwz r0, 0xc(r1) +/* 80224CE8 00221C48 3C 60 80 3E */ lis r3, lbl_803DAA44@ha +/* 80224CEC 00221C4C 38 83 AA 44 */ addi r4, r3, lbl_803DAA44@l +/* 80224CF0 00221C50 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80224CF4 00221C54 90 1F 00 F8 */ stw r0, 0xf8(r31) +/* 80224CF8 00221C58 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 80224CFC 00221C5C 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 80224D00 00221C60 80 61 00 14 */ lwz r3, 0x14(r1) +/* 80224D04 00221C64 90 BF 00 FC */ stw r5, 0xfc(r31) +/* 80224D08 00221C68 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 80224D0C 00221C6C 90 7F 01 00 */ stw r3, 0x100(r31) +/* 80224D10 00221C70 80 61 00 1C */ lwz r3, 0x1c(r1) +/* 80224D14 00221C74 90 BF 01 04 */ stw r5, 0x104(r31) +/* 80224D18 00221C78 90 81 00 08 */ stw r4, 8(r1) +/* 80224D1C 00221C7C 90 7F 01 08 */ stw r3, 0x108(r31) +/* 80224D20 00221C80 90 01 00 08 */ stw r0, 8(r1) +/* 80224D24 00221C84 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80224D28 00221C88 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80224D2C 00221C8C 7C 08 03 A6 */ mtlr r0 +/* 80224D30 00221C90 38 21 00 30 */ addi r1, r1, 0x30 +/* 80224D34 00221C94 4E 80 00 20 */ blr + +.global Think__8CEyeBallFfR13CStateManager +Think__8CEyeBallFfR13CStateManager: +/* 80224D38 00221C98 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 80224D3C 00221C9C 7C 08 02 A6 */ mflr r0 +/* 80224D40 00221CA0 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 80224D44 00221CA4 DB E1 00 D0 */ stfd f31, 0xd0(r1) +/* 80224D48 00221CA8 F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 +/* 80224D4C 00221CAC 93 E1 00 CC */ stw r31, 0xcc(r1) +/* 80224D50 00221CB0 93 C1 00 C8 */ stw r30, 0xc8(r1) +/* 80224D54 00221CB4 93 A1 00 C4 */ stw r29, 0xc4(r1) +/* 80224D58 00221CB8 FF E0 08 90 */ fmr f31, f1 +/* 80224D5C 00221CBC 7C 7E 1B 78 */ mr r30, r3 +/* 80224D60 00221CC0 7C 9F 23 78 */ mr r31, r4 +/* 80224D64 00221CC4 4B E5 4D B5 */ bl Think__10CPatternedFfR13CStateManager +/* 80224D68 00221CC8 88 1E 00 30 */ lbz r0, 0x30(r30) +/* 80224D6C 00221CCC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80224D70 00221CD0 41 82 02 74 */ beq lbl_80224FE4 +/* 80224D74 00221CD4 88 0D A5 14 */ lbz r0, lbl_805A90D4@sda21(r13) +/* 80224D78 00221CD8 83 BF 08 4C */ lwz r29, 0x84c(r31) +/* 80224D7C 00221CDC 7C 00 07 75 */ extsb. r0, r0 +/* 80224D80 00221CE0 40 82 00 18 */ bne lbl_80224D98 +/* 80224D84 00221CE4 C0 22 B4 88 */ lfs f1, lbl_805AD1A8@sda21(r2) +/* 80224D88 00221CE8 48 0E FF BD */ bl FastCosR__5CMathFf +/* 80224D8C 00221CEC 38 00 00 01 */ li r0, 1 +/* 80224D90 00221CF0 D0 2D A5 10 */ stfs f1, lbl_805A90D0@sda21(r13) +/* 80224D94 00221CF4 98 0D A5 14 */ stb r0, lbl_805A90D4@sda21(r13) +lbl_80224D98: +/* 80224D98 00221CF8 C0 BD 00 60 */ lfs f5, 0x60(r29) +/* 80224D9C 00221CFC 38 61 00 54 */ addi r3, r1, 0x54 +/* 80224DA0 00221D00 C0 1E 00 60 */ lfs f0, 0x60(r30) +/* 80224DA4 00221D04 38 81 00 48 */ addi r4, r1, 0x48 +/* 80224DA8 00221D08 C0 9D 00 50 */ lfs f4, 0x50(r29) +/* 80224DAC 00221D0C C0 5E 00 50 */ lfs f2, 0x50(r30) +/* 80224DB0 00221D10 EC 25 00 28 */ fsubs f1, f5, f0 +/* 80224DB4 00221D14 C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 80224DB8 00221D18 C0 7E 00 40 */ lfs f3, 0x40(r30) +/* 80224DBC 00221D1C EC 44 10 28 */ fsubs f2, f4, f2 +/* 80224DC0 00221D20 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 80224DC4 00221D24 EC 00 18 28 */ fsubs f0, f0, f3 +/* 80224DC8 00221D28 D0 81 00 40 */ stfs f4, 0x40(r1) +/* 80224DCC 00221D2C D0 A1 00 44 */ stfs f5, 0x44(r1) +/* 80224DD0 00221D30 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 80224DD4 00221D34 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 80224DD8 00221D38 D0 21 00 50 */ stfs f1, 0x50(r1) +/* 80224DDC 00221D3C 48 0E FA 75 */ bl AsNormalized__9CVector3fCFv +/* 80224DE0 00221D40 C0 7E 00 48 */ lfs f3, 0x48(r30) +/* 80224DE4 00221D44 38 60 00 00 */ li r3, 0 +/* 80224DE8 00221D48 C0 01 00 58 */ lfs f0, 0x58(r1) +/* 80224DEC 00221D4C C0 5E 00 38 */ lfs f2, 0x38(r30) +/* 80224DF0 00221D50 EC 03 00 32 */ fmuls f0, f3, f0 +/* 80224DF4 00221D54 C0 21 00 54 */ lfs f1, 0x54(r1) +/* 80224DF8 00221D58 C0 9E 00 58 */ lfs f4, 0x58(r30) +/* 80224DFC 00221D5C 80 1D 02 F8 */ lwz r0, 0x2f8(r29) +/* 80224E00 00221D60 EC 02 00 7A */ fmadds f0, f2, f1, f0 +/* 80224E04 00221D64 C0 21 00 5C */ lfs f1, 0x5c(r1) +/* 80224E08 00221D68 2C 00 00 01 */ cmpwi r0, 1 +/* 80224E0C 00221D6C D0 41 00 30 */ stfs f2, 0x30(r1) +/* 80224E10 00221D70 EC 24 00 7A */ fmadds f1, f4, f1, f0 +/* 80224E14 00221D74 D0 61 00 34 */ stfs f3, 0x34(r1) +/* 80224E18 00221D78 D0 81 00 38 */ stfs f4, 0x38(r1) +/* 80224E1C 00221D7C 40 82 00 14 */ bne lbl_80224E30 +/* 80224E20 00221D80 C0 0D A5 10 */ lfs f0, lbl_805A90D0@sda21(r13) +/* 80224E24 00221D84 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80224E28 00221D88 40 81 00 08 */ ble lbl_80224E30 +/* 80224E2C 00221D8C 38 60 00 01 */ li r3, 1 +lbl_80224E30: +/* 80224E30 00221D90 88 1E 06 0C */ lbz r0, 0x60c(r30) +/* 80224E34 00221D94 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 80224E38 00221D98 98 1E 06 0C */ stb r0, 0x60c(r30) +/* 80224E3C 00221D9C 88 1E 06 0C */ lbz r0, 0x60c(r30) +/* 80224E40 00221DA0 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80224E44 00221DA4 41 82 00 B4 */ beq lbl_80224EF8 +/* 80224E48 00221DA8 38 7E 05 70 */ addi r3, r30, 0x570 +/* 80224E4C 00221DAC 38 80 00 01 */ li r4, 1 +/* 80224E50 00221DB0 4B F5 03 D5 */ bl SetActive__13CBoneTrackingFb +/* 80224E54 00221DB4 C0 A2 B4 8C */ lfs f5, lbl_805AD1AC@sda21(r2) +/* 80224E58 00221DB8 38 7E 05 70 */ addi r3, r30, 0x570 +/* 80224E5C 00221DBC C0 1D 01 38 */ lfs f0, 0x138(r29) +/* 80224E60 00221DC0 38 9E 05 A8 */ addi r4, r30, 0x5a8 +/* 80224E64 00221DC4 C0 7D 01 3C */ lfs f3, 0x13c(r29) +/* 80224E68 00221DC8 EC 05 00 32 */ fmuls f0, f5, f0 +/* 80224E6C 00221DCC C0 3D 00 40 */ lfs f1, 0x40(r29) +/* 80224E70 00221DD0 C0 5D 01 40 */ lfs f2, 0x140(r29) +/* 80224E74 00221DD4 EC 85 00 F2 */ fmuls f4, f5, f3 +/* 80224E78 00221DD8 C0 DD 00 50 */ lfs f6, 0x50(r29) +/* 80224E7C 00221DDC EC 01 00 28 */ fsubs f0, f1, f0 +/* 80224E80 00221DE0 C0 7D 00 60 */ lfs f3, 0x60(r29) +/* 80224E84 00221DE4 EC 25 00 B2 */ fmuls f1, f5, f2 +/* 80224E88 00221DE8 EC 46 20 28 */ fsubs f2, f6, f4 +/* 80224E8C 00221DEC D0 1E 05 A8 */ stfs f0, 0x5a8(r30) +/* 80224E90 00221DF0 EC 03 08 28 */ fsubs f0, f3, f1 +/* 80224E94 00221DF4 D0 5E 05 AC */ stfs f2, 0x5ac(r30) +/* 80224E98 00221DF8 D0 1E 05 B0 */ stfs f0, 0x5b0(r30) +/* 80224E9C 00221DFC 4B F5 03 1D */ bl SetTargetPosition__13CBoneTrackingFRC9CVector3f +/* 80224EA0 00221E00 FC 20 F8 90 */ fmr f1, f31 +/* 80224EA4 00221E04 38 7E 05 70 */ addi r3, r30, 0x570 +/* 80224EA8 00221E08 4B F5 0B 01 */ bl Update__13CBoneTrackingFf +/* 80224EAC 00221E0C 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 80224EB0 00221E10 80 63 00 10 */ lwz r3, 0x10(r3) +/* 80224EB4 00221E14 4B E0 7B 51 */ bl PreRender__9CAnimDataFv +/* 80224EB8 00221E18 80 BE 00 64 */ lwz r5, 0x64(r30) +/* 80224EBC 00221E1C 7F E4 FB 78 */ mr r4, r31 +/* 80224EC0 00221E20 81 1E 04 50 */ lwz r8, 0x450(r30) +/* 80224EC4 00221E24 38 7E 05 70 */ addi r3, r30, 0x570 +/* 80224EC8 00221E28 C0 05 00 00 */ lfs f0, 0(r5) +/* 80224ECC 00221E2C 38 DE 00 34 */ addi r6, r30, 0x34 +/* 80224ED0 00221E30 38 E1 00 24 */ addi r7, r1, 0x24 +/* 80224ED4 00221E34 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 80224ED8 00221E38 C0 05 00 04 */ lfs f0, 4(r5) +/* 80224EDC 00221E3C D0 01 00 28 */ stfs f0, 0x28(r1) +/* 80224EE0 00221E40 C0 05 00 08 */ lfs f0, 8(r5) +/* 80224EE4 00221E44 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 80224EE8 00221E48 80 BE 00 64 */ lwz r5, 0x64(r30) +/* 80224EEC 00221E4C 80 A5 00 10 */ lwz r5, 0x10(r5) +/* 80224EF0 00221E50 4B F5 0A 21 */ bl PreRender__13CBoneTrackingFRC13CStateManagerR9CAnimDataRC12CTransform4fRC9CVector3fRC15CBodyController +/* 80224EF4 00221E54 48 00 00 10 */ b lbl_80224F04 +lbl_80224EF8: +/* 80224EF8 00221E58 38 7E 05 70 */ addi r3, r30, 0x570 +/* 80224EFC 00221E5C 38 80 00 00 */ li r4, 0 +/* 80224F00 00221E60 4B F5 03 25 */ bl SetActive__13CBoneTrackingFb +lbl_80224F04: +/* 80224F04 00221E64 88 1E 00 30 */ lbz r0, 0x30(r30) +/* 80224F08 00221E68 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80224F0C 00221E6C 41 82 00 7C */ beq lbl_80224F88 +/* 80224F10 00221E70 A0 1E 05 EC */ lhz r0, 0x5ec(r30) +/* 80224F14 00221E74 7F E3 FB 78 */ mr r3, r31 +/* 80224F18 00221E78 38 81 00 08 */ addi r4, r1, 8 +/* 80224F1C 00221E7C B0 01 00 08 */ sth r0, 8(r1) +/* 80224F20 00221E80 4B E2 76 55 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80224F24 00221E84 7C 7D 1B 79 */ or. r29, r3, r3 +/* 80224F28 00221E88 41 82 00 60 */ beq lbl_80224F88 +/* 80224F2C 00221E8C 88 1D 00 30 */ lbz r0, 0x30(r29) +/* 80224F30 00221E90 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80224F34 00221E94 41 82 00 54 */ beq lbl_80224F88 +/* 80224F38 00221E98 80 8D 95 38 */ lwz r4, lbl_805A80F8@sda21(r13) +/* 80224F3C 00221E9C 38 61 00 14 */ addi r3, r1, 0x14 +/* 80224F40 00221EA0 4B DD FD 79 */ bl string_l__4rstlFPCc +/* 80224F44 00221EA4 7F C4 F3 78 */ mr r4, r30 +/* 80224F48 00221EA8 38 61 00 60 */ addi r3, r1, 0x60 +/* 80224F4C 00221EAC 38 A1 00 14 */ addi r5, r1, 0x14 +/* 80224F50 00221EB0 4B E5 3A 29 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80224F54 00221EB4 38 61 00 90 */ addi r3, r1, 0x90 +/* 80224F58 00221EB8 38 81 00 60 */ addi r4, r1, 0x60 +/* 80224F5C 00221EBC 48 0E DC 19 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80224F60 00221EC0 38 61 00 14 */ addi r3, r1, 0x14 +/* 80224F64 00221EC4 48 11 8B 7D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80224F68 00221EC8 7F A3 EB 78 */ mr r3, r29 +/* 80224F6C 00221ECC FC 20 F8 90 */ fmr f1, f31 +/* 80224F70 00221ED0 81 9D 00 00 */ lwz r12, 0(r29) +/* 80224F74 00221ED4 7F E5 FB 78 */ mr r5, r31 +/* 80224F78 00221ED8 38 81 00 90 */ addi r4, r1, 0x90 +/* 80224F7C 00221EDC 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 80224F80 00221EE0 7D 89 03 A6 */ mtctr r12 +/* 80224F84 00221EE4 4E 80 04 21 */ bctrl +lbl_80224F88: +/* 80224F88 00221EE8 88 1E 06 0C */ lbz r0, 0x60c(r30) +/* 80224F8C 00221EEC 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 80224F90 00221EF0 41 82 00 54 */ beq lbl_80224FE4 +/* 80224F94 00221EF4 80 BE 00 04 */ lwz r5, 4(r30) +/* 80224F98 00221EF8 80 9F 08 50 */ lwz r4, 0x850(r31) +/* 80224F9C 00221EFC 54 A3 18 38 */ slwi r3, r5, 3 +/* 80224FA0 00221F00 90 A1 00 0C */ stw r5, 0xc(r1) +/* 80224FA4 00221F04 80 84 00 20 */ lwz r4, 0x20(r4) +/* 80224FA8 00221F08 38 03 00 04 */ addi r0, r3, 4 +/* 80224FAC 00221F0C 90 A1 00 10 */ stw r5, 0x10(r1) +/* 80224FB0 00221F10 7C 64 00 2E */ lwzx r3, r4, r0 +/* 80224FB4 00221F14 88 03 00 F0 */ lbz r0, 0xf0(r3) +/* 80224FB8 00221F18 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80224FBC 00221F1C 41 82 00 10 */ beq lbl_80224FCC +/* 80224FC0 00221F20 80 63 01 2C */ lwz r3, 0x12c(r3) +/* 80224FC4 00221F24 80 03 10 DC */ lwz r0, 0x10dc(r3) +/* 80224FC8 00221F28 48 00 00 08 */ b lbl_80224FD0 +lbl_80224FCC: +/* 80224FCC 00221F2C 38 00 00 00 */ li r0, 0 +lbl_80224FD0: +/* 80224FD0 00221F30 2C 00 00 01 */ cmpwi r0, 1 +/* 80224FD4 00221F34 41 82 00 10 */ beq lbl_80224FE4 +/* 80224FD8 00221F38 7F C3 F3 78 */ mr r3, r30 +/* 80224FDC 00221F3C 7F E4 FB 78 */ mr r4, r31 +/* 80224FE0 00221F40 4B FF F7 F1 */ bl ResetBeamState__8CEyeballFR13CStateManager +lbl_80224FE4: +/* 80224FE4 00221F44 E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 +/* 80224FE8 00221F48 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 80224FEC 00221F4C CB E1 00 D0 */ lfd f31, 0xd0(r1) +/* 80224FF0 00221F50 83 E1 00 CC */ lwz r31, 0xcc(r1) +/* 80224FF4 00221F54 83 C1 00 C8 */ lwz r30, 0xc8(r1) +/* 80224FF8 00221F58 83 A1 00 C4 */ lwz r29, 0xc4(r1) +/* 80224FFC 00221F5C 7C 08 03 A6 */ mtlr r0 +/* 80225000 00221F60 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 80225004 00221F64 4E 80 00 20 */ blr + +.global PreRender__8CEyeBallFR13CStateManagerRC14CFrustumPlanes +PreRender__8CEyeBallFR13CStateManagerRC14CFrustumPlanes: +/* 80225008 00221F68 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8022500C 00221F6C 7C 08 02 A6 */ mflr r0 +/* 80225010 00221F70 90 01 00 24 */ stw r0, 0x24(r1) +/* 80225014 00221F74 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80225018 00221F78 7C 9F 23 78 */ mr r31, r4 +/* 8022501C 00221F7C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80225020 00221F80 7C 7E 1B 78 */ mr r30, r3 +/* 80225024 00221F84 4B E5 32 B9 */ bl PreRender__10CPatternedFR13CStateManagerRC14CFrustumPlanes +/* 80225028 00221F88 80 BE 00 64 */ lwz r5, 0x64(r30) +/* 8022502C 00221F8C 7F E4 FB 78 */ mr r4, r31 +/* 80225030 00221F90 81 1E 04 50 */ lwz r8, 0x450(r30) +/* 80225034 00221F94 38 7E 05 70 */ addi r3, r30, 0x570 +/* 80225038 00221F98 C0 05 00 00 */ lfs f0, 0(r5) +/* 8022503C 00221F9C 38 DE 00 34 */ addi r6, r30, 0x34 +/* 80225040 00221FA0 38 E1 00 08 */ addi r7, r1, 8 +/* 80225044 00221FA4 D0 01 00 08 */ stfs f0, 8(r1) +/* 80225048 00221FA8 C0 05 00 04 */ lfs f0, 4(r5) +/* 8022504C 00221FAC D0 01 00 0C */ stfs f0, 0xc(r1) +/* 80225050 00221FB0 C0 05 00 08 */ lfs f0, 8(r5) +/* 80225054 00221FB4 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 80225058 00221FB8 80 BE 00 64 */ lwz r5, 0x64(r30) +/* 8022505C 00221FBC 80 A5 00 10 */ lwz r5, 0x10(r5) +/* 80225060 00221FC0 4B F5 08 B1 */ bl PreRender__13CBoneTrackingFRC13CStateManagerR9CAnimDataRC12CTransform4fRC9CVector3fRC15CBodyController +/* 80225064 00221FC4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80225068 00221FC8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8022506C 00221FCC 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80225070 00221FD0 7C 08 03 A6 */ mtlr r0 +/* 80225074 00221FD4 38 21 00 20 */ addi r1, r1, 0x20 +/* 80225078 00221FD8 4E 80 00 20 */ blr + +.global Active__8CEyeBallFR13CStateManager9EStateMsgf +Active__8CEyeBallFR13CStateManager9EStateMsgf: +/* 8022507C 00221FDC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80225080 00221FE0 7C 08 02 A6 */ mflr r0 +/* 80225084 00221FE4 2C 05 00 01 */ cmpwi r5, 1 +/* 80225088 00221FE8 90 01 00 24 */ stw r0, 0x24(r1) +/* 8022508C 00221FEC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80225090 00221FF0 7C 9F 23 78 */ mr r31, r4 +/* 80225094 00221FF4 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80225098 00221FF8 7C 7E 1B 78 */ mr r30, r3 +/* 8022509C 00221FFC 41 82 00 50 */ beq lbl_802250EC +/* 802250A0 00222000 40 80 00 10 */ bge lbl_802250B0 +/* 802250A4 00222004 2C 05 00 00 */ cmpwi r5, 0 +/* 802250A8 00222008 40 80 00 14 */ bge lbl_802250BC +/* 802250AC 0022200C 48 00 00 D0 */ b lbl_8022517C +lbl_802250B0: +/* 802250B0 00222010 2C 05 00 03 */ cmpwi r5, 3 +/* 802250B4 00222014 40 80 00 C8 */ bge lbl_8022517C +/* 802250B8 00222018 48 00 00 60 */ b lbl_80225118 +lbl_802250BC: +/* 802250BC 0022201C 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 802250C0 00222020 38 60 00 00 */ li r3, 0 +/* 802250C4 00222024 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 802250C8 00222028 38 80 00 03 */ li r4, 3 +/* 802250CC 0022202C 98 1E 04 00 */ stb r0, 0x400(r30) +/* 802250D0 00222030 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 802250D4 00222034 4B F1 59 05 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 802250D8 00222038 88 1E 06 0C */ lbz r0, 0x60c(r30) +/* 802250DC 0022203C 38 60 00 00 */ li r3, 0 +/* 802250E0 00222040 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 802250E4 00222044 98 1E 06 0C */ stb r0, 0x60c(r30) +/* 802250E8 00222048 48 00 00 94 */ b lbl_8022517C +lbl_802250EC: +/* 802250EC 0022204C C0 5E 03 38 */ lfs f2, 0x338(r30) +/* 802250F0 00222050 C0 1E 05 6C */ lfs f0, 0x56c(r30) +/* 802250F4 00222054 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 802250F8 00222058 40 81 00 14 */ ble lbl_8022510C +/* 802250FC 0022205C 88 1E 06 0C */ lbz r0, 0x60c(r30) +/* 80225100 00222060 38 60 00 01 */ li r3, 1 +/* 80225104 00222064 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80225108 00222068 98 1E 06 0C */ stb r0, 0x60c(r30) +lbl_8022510C: +/* 8022510C 0022206C 7F C3 F3 78 */ mr r3, r30 +/* 80225110 00222070 4B FF F8 B9 */ bl UpdateAnimation__8CEyeballFv +/* 80225114 00222074 48 00 00 68 */ b lbl_8022517C +lbl_80225118: +/* 80225118 00222078 C0 1E 05 68 */ lfs f0, 0x568(r30) +/* 8022511C 0022207C 7F E3 FB 78 */ mr r3, r31 +/* 80225120 00222080 38 81 00 08 */ addi r4, r1, 8 +/* 80225124 00222084 D0 1E 03 40 */ stfs f0, 0x340(r30) +/* 80225128 00222088 A0 1E 05 EC */ lhz r0, 0x5ec(r30) +/* 8022512C 0022208C B0 01 00 08 */ sth r0, 8(r1) +/* 80225130 00222090 4B E2 74 45 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80225134 00222094 28 03 00 00 */ cmplwi r3, 0 +/* 80225138 00222098 41 82 00 1C */ beq lbl_80225154 +/* 8022513C 0022209C 81 83 00 00 */ lwz r12, 0(r3) +/* 80225140 002220A0 7F E4 FB 78 */ mr r4, r31 +/* 80225144 002220A4 38 A0 00 01 */ li r5, 1 +/* 80225148 002220A8 81 8C 00 74 */ lwz r12, 0x74(r12) +/* 8022514C 002220AC 7D 89 03 A6 */ mtctr r12 +/* 80225150 002220B0 4E 80 04 21 */ bctrl +lbl_80225154: +/* 80225154 002220B4 88 1E 06 0C */ lbz r0, 0x60c(r30) +/* 80225158 002220B8 38 60 00 00 */ li r3, 0 +/* 8022515C 002220BC 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80225160 002220C0 38 61 00 0C */ addi r3, r1, 0xc +/* 80225164 002220C4 98 1E 06 0C */ stb r0, 0x60c(r30) +/* 80225168 002220C8 80 1E 06 08 */ lwz r0, 0x608(r30) +/* 8022516C 002220CC 90 01 00 0C */ stw r0, 0xc(r1) +/* 80225170 002220D0 48 0C 4D 15 */ bl RemoveEmitter__11CSfxManagerFRC10CSfxHandle +/* 80225174 002220D4 38 00 00 00 */ li r0, 0 +/* 80225178 002220D8 90 1E 06 08 */ stw r0, 0x608(r30) +lbl_8022517C: +/* 8022517C 002220DC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80225180 002220E0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80225184 002220E4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80225188 002220E8 7C 08 03 A6 */ mtlr r0 +/* 8022518C 002220EC 38 21 00 20 */ addi r1, r1, 0x20 +/* 80225190 002220F0 4E 80 00 20 */ blr + +.global InActive__8CEyeBallFR13CStateManager9EStateMsgf +InActive__8CEyeBallFR13CStateManager9EStateMsgf: +/* 80225194 002220F4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80225198 002220F8 7C 08 02 A6 */ mflr r0 +/* 8022519C 002220FC 2C 05 00 00 */ cmpwi r5, 0 +/* 802251A0 00222100 90 01 00 14 */ stw r0, 0x14(r1) +/* 802251A4 00222104 41 82 00 0C */ beq lbl_802251B0 +/* 802251A8 00222108 41 80 00 14 */ blt lbl_802251BC +/* 802251AC 0022210C 48 00 00 10 */ b lbl_802251BC +lbl_802251B0: +/* 802251B0 00222110 80 63 04 50 */ lwz r3, 0x450(r3) +/* 802251B4 00222114 38 80 00 01 */ li r4, 1 +/* 802251B8 00222118 4B F1 58 21 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +lbl_802251BC: +/* 802251BC 0022211C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 802251C0 00222120 7C 08 03 A6 */ mtlr r0 +/* 802251C4 00222124 38 21 00 10 */ addi r1, r1, 0x10 +/* 802251C8 00222128 4E 80 00 20 */ blr + +.global DoUserAnimEvent__8CEyeBallFR13CStateManagerRC13CInt32POINode14EUserEventType +DoUserAnimEvent__8CEyeBallFR13CStateManagerRC13CInt32POINode14EUserEventType: +/* 802251CC 0022212C 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 802251D0 00222130 7C 08 02 A6 */ mflr r0 +/* 802251D4 00222134 90 01 00 94 */ stw r0, 0x94(r1) +/* 802251D8 00222138 DB E1 00 88 */ stfd f31, 0x88(r1) +/* 802251DC 0022213C FF E0 08 90 */ fmr f31, f1 +/* 802251E0 00222140 BF 61 00 74 */ stmw r27, 0x74(r1) +/* 802251E4 00222144 7C DE 33 78 */ mr r30, r6 +/* 802251E8 00222148 2C 1E 00 09 */ cmpwi r30, 9 +/* 802251EC 0022214C 7C 7B 1B 78 */ mr r27, r3 +/* 802251F0 00222150 7C 9C 23 78 */ mr r28, r4 +/* 802251F4 00222154 7C BD 2B 78 */ mr r29, r5 +/* 802251F8 00222158 3B E0 00 00 */ li r31, 0 +/* 802251FC 0022215C 41 82 00 54 */ beq lbl_80225250 +/* 80225200 00222160 40 80 00 58 */ bge lbl_80225258 +/* 80225204 00222164 2C 1E 00 08 */ cmpwi r30, 8 +/* 80225208 00222168 40 80 00 08 */ bge lbl_80225210 +/* 8022520C 0022216C 48 00 00 4C */ b lbl_80225258 +lbl_80225210: +/* 80225210 00222170 88 1B 06 0C */ lbz r0, 0x60c(r27) +/* 80225214 00222174 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80225218 00222178 41 82 00 40 */ beq lbl_80225258 +/* 8022521C 0022217C 7F 64 DB 78 */ mr r4, r27 +/* 80225220 00222180 38 61 00 08 */ addi r3, r1, 8 +/* 80225224 00222184 38 BD 00 3C */ addi r5, r29, 0x3c +/* 80225228 00222188 3B E0 00 01 */ li r31, 1 +/* 8022522C 0022218C 4B E5 37 4D */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80225230 00222190 38 61 00 38 */ addi r3, r1, 0x38 +/* 80225234 00222194 38 81 00 08 */ addi r4, r1, 8 +/* 80225238 00222198 48 0E D9 3D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8022523C 0022219C 7F 63 DB 78 */ mr r3, r27 +/* 80225240 002221A0 7F 84 E3 78 */ mr r4, r28 +/* 80225244 002221A4 38 A1 00 38 */ addi r5, r1, 0x38 +/* 80225248 002221A8 4B FF F6 25 */ bl FireBeam__8CEyeballFR13CStateManagerRC12CTransform4f +/* 8022524C 002221AC 48 00 00 0C */ b lbl_80225258 +lbl_80225250: +/* 80225250 002221B0 3B E0 00 01 */ li r31, 1 +/* 80225254 002221B4 4B FF F5 7D */ bl ResetBeamState__8CEyeballFR13CStateManager +lbl_80225258: +/* 80225258 002221B8 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 8022525C 002221BC 40 82 00 1C */ bne lbl_80225278 +/* 80225260 002221C0 FC 20 F8 90 */ fmr f1, f31 +/* 80225264 002221C4 7F 63 DB 78 */ mr r3, r27 +/* 80225268 002221C8 7F 84 E3 78 */ mr r4, r28 +/* 8022526C 002221CC 7F A5 EB 78 */ mr r5, r29 +/* 80225270 002221D0 7F C6 F3 78 */ mr r6, r30 +/* 80225274 002221D4 4B E5 3C 3D */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +lbl_80225278: +/* 80225278 002221D8 CB E1 00 88 */ lfd f31, 0x88(r1) +/* 8022527C 002221DC BB 61 00 74 */ lmw r27, 0x74(r1) +/* 80225280 002221E0 80 01 00 94 */ lwz r0, 0x94(r1) +/* 80225284 002221E4 7C 08 03 A6 */ mtlr r0 +/* 80225288 002221E8 38 21 00 90 */ addi r1, r1, 0x90 +/* 8022528C 002221EC 4E 80 00 20 */ blr + +.global AcceptScriptMsg__8CEyeBallF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__8CEyeBallF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 80225290 002221F0 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80225294 002221F4 7C 08 02 A6 */ mflr r0 +/* 80225298 002221F8 90 01 00 54 */ stw r0, 0x54(r1) +/* 8022529C 002221FC BF 61 00 3C */ stmw r27, 0x3c(r1) +/* 802252A0 00222200 7C 9C 23 78 */ mr r28, r4 +/* 802252A4 00222204 38 1C FF EB */ addi r0, r28, -21 +/* 802252A8 00222208 7C 7B 1B 78 */ mr r27, r3 +/* 802252AC 0022220C 28 00 00 15 */ cmplwi r0, 0x15 +/* 802252B0 00222210 7C BD 2B 78 */ mr r29, r5 +/* 802252B4 00222214 7C DE 33 78 */ mr r30, r6 +/* 802252B8 00222218 3B E0 00 00 */ li r31, 0 +/* 802252BC 0022221C 41 81 01 BC */ bgt lbl_80225478 +/* 802252C0 00222220 3C 80 80 3E */ lis r4, lbl_803E7A18@ha +/* 802252C4 00222224 54 00 10 3A */ slwi r0, r0, 2 +/* 802252C8 00222228 38 84 7A 18 */ addi r4, r4, lbl_803E7A18@l +/* 802252CC 0022222C 7C 04 00 2E */ lwzx r0, r4, r0 +/* 802252D0 00222230 7C 09 03 A6 */ mtctr r0 +/* 802252D4 00222234 4E 80 04 20 */ bctr +/* 802252D8 00222238 A0 1D 00 00 */ lhz r0, 0(r29) +/* 802252DC 0022223C 7F C3 F3 78 */ mr r3, r30 +/* 802252E0 00222240 38 81 00 14 */ addi r4, r1, 0x14 +/* 802252E4 00222244 B0 01 00 14 */ sth r0, 0x14(r1) +/* 802252E8 00222248 4B E2 72 BD */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 802252EC 0022224C 7C 64 1B 78 */ mr r4, r3 +/* 802252F0 00222250 38 61 00 24 */ addi r3, r1, 0x24 +/* 802252F4 00222254 4B E8 84 19 */ bl "__ct__29TCastToPtr<15CGameProjectile>FP7CEntity" +/* 802252F8 00222258 83 E3 00 04 */ lwz r31, 4(r3) +/* 802252FC 0022225C 28 1F 00 00 */ cmplwi r31, 0 +/* 80225300 00222260 41 82 00 50 */ beq lbl_80225350 +/* 80225304 00222264 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 80225308 00222268 A0 9F 00 EC */ lhz r4, 0xec(r31) +/* 8022530C 0022226C A0 03 00 08 */ lhz r0, 8(r3) +/* 80225310 00222270 7C 04 00 40 */ cmplw r4, r0 +/* 80225314 00222274 40 82 00 3C */ bne lbl_80225350 +/* 80225318 00222278 7F 63 DB 78 */ mr r3, r27 +/* 8022531C 0022227C 81 9B 00 00 */ lwz r12, 0(r27) +/* 80225320 00222280 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 80225324 00222284 7D 89 03 A6 */ mtctr r12 +/* 80225328 00222288 4E 80 04 21 */ bctrl +/* 8022532C 0022228C 38 9F 01 2C */ addi r4, r31, 0x12c +/* 80225330 00222290 38 A0 00 00 */ li r5, 0 +/* 80225334 00222294 4B ED D1 89 */ bl GetVulnerability__20CDamageVulnerabilityCFRC11CWeaponMode +/* 80225338 00222298 2C 03 00 02 */ cmpwi r3, 2 +/* 8022533C 0022229C 41 82 00 14 */ beq lbl_80225350 +/* 80225340 002222A0 88 1B 04 00 */ lbz r0, 0x400(r27) +/* 80225344 002222A4 38 60 00 01 */ li r3, 1 +/* 80225348 002222A8 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8022534C 002222AC 98 1B 04 00 */ stb r0, 0x400(r27) +lbl_80225350: +/* 80225350 002222B0 3B E0 00 01 */ li r31, 1 +/* 80225354 002222B4 48 00 01 24 */ b lbl_80225478 +/* 80225358 002222B8 A0 1D 00 00 */ lhz r0, 0(r29) +/* 8022535C 002222BC 7F C3 F3 78 */ mr r3, r30 +/* 80225360 002222C0 38 81 00 10 */ addi r4, r1, 0x10 +/* 80225364 002222C4 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80225368 002222C8 4B E2 72 3D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8022536C 002222CC 7C 64 1B 78 */ mr r4, r3 +/* 80225370 002222D0 38 61 00 1C */ addi r3, r1, 0x1c +/* 80225374 002222D4 4B E8 83 99 */ bl "__ct__29TCastToPtr<15CGameProjectile>FP7CEntity" +/* 80225378 002222D8 83 E3 00 04 */ lwz r31, 4(r3) +/* 8022537C 002222DC 28 1F 00 00 */ cmplwi r31, 0 +/* 80225380 002222E0 41 82 00 50 */ beq lbl_802253D0 +/* 80225384 002222E4 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 80225388 002222E8 A0 9F 00 EC */ lhz r4, 0xec(r31) +/* 8022538C 002222EC A0 03 00 08 */ lhz r0, 8(r3) +/* 80225390 002222F0 7C 04 00 40 */ cmplw r4, r0 +/* 80225394 002222F4 40 82 00 3C */ bne lbl_802253D0 +/* 80225398 002222F8 7F 63 DB 78 */ mr r3, r27 +/* 8022539C 002222FC 81 9B 00 00 */ lwz r12, 0(r27) +/* 802253A0 00222300 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 802253A4 00222304 7D 89 03 A6 */ mtctr r12 +/* 802253A8 00222308 4E 80 04 21 */ bctrl +/* 802253AC 0022230C 38 9F 01 2C */ addi r4, r31, 0x12c +/* 802253B0 00222310 38 A0 00 00 */ li r5, 0 +/* 802253B4 00222314 4B ED D1 09 */ bl GetVulnerability__20CDamageVulnerabilityCFRC11CWeaponMode +/* 802253B8 00222318 2C 03 00 02 */ cmpwi r3, 2 +/* 802253BC 0022231C 41 82 00 14 */ beq lbl_802253D0 +/* 802253C0 00222320 88 1B 04 00 */ lbz r0, 0x400(r27) +/* 802253C4 00222324 38 60 00 01 */ li r3, 1 +/* 802253C8 00222328 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 802253CC 0022232C 98 1B 04 00 */ stb r0, 0x400(r27) +lbl_802253D0: +/* 802253D0 00222330 3B E0 00 01 */ li r31, 1 +/* 802253D4 00222334 48 00 00 A4 */ b lbl_80225478 +/* 802253D8 00222338 88 1B 06 0C */ lbz r0, 0x60c(r27) +/* 802253DC 0022233C 38 60 00 01 */ li r3, 1 +/* 802253E0 00222340 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 802253E4 00222344 98 1B 06 0C */ stb r0, 0x60c(r27) +/* 802253E8 00222348 48 00 00 90 */ b lbl_80225478 +/* 802253EC 0022234C 38 80 00 28 */ li r4, 0x28 +/* 802253F0 00222350 38 A0 00 29 */ li r5, 0x29 +/* 802253F4 00222354 4B E2 EA E1 */ bl RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager +/* 802253F8 00222358 80 7B 04 50 */ lwz r3, 0x450(r27) +/* 802253FC 0022235C 7F C4 F3 78 */ mr r4, r30 +/* 80225400 00222360 4B F1 58 F1 */ bl Activate__15CBodyControllerFR13CStateManager +/* 80225404 00222364 C0 02 B4 70 */ lfs f0, lbl_805AD190@sda21(r2) +/* 80225408 00222368 7F 63 DB 78 */ mr r3, r27 +/* 8022540C 0022236C 38 80 00 00 */ li r4, 0 +/* 80225410 00222370 D0 1B 03 40 */ stfs f0, 0x340(r27) +/* 80225414 00222374 4B E2 D9 59 */ bl CreateShadow__6CActorFb +/* 80225418 00222378 7F 63 DB 78 */ mr r3, r27 +/* 8022541C 0022237C 7F C4 F3 78 */ mr r4, r30 +/* 80225420 00222380 48 00 00 91 */ bl CreateBeam__8CEyeballFR13CStateManager +/* 80225424 00222384 48 00 00 54 */ b lbl_80225478 +/* 80225428 00222388 A0 7B 05 EC */ lhz r3, 0x5ec(r27) +/* 8022542C 0022238C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80225430 00222390 7C 03 00 40 */ cmplw r3, r0 +/* 80225434 00222394 41 82 00 3C */ beq lbl_80225470 +/* 80225438 00222398 A0 1B 05 EC */ lhz r0, 0x5ec(r27) +/* 8022543C 0022239C 7F C3 F3 78 */ mr r3, r30 +/* 80225440 002223A0 38 81 00 0C */ addi r4, r1, 0xc +/* 80225444 002223A4 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80225448 002223A8 4B E2 6E 25 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +/* 8022544C 002223AC 80 1B 06 08 */ lwz r0, 0x608(r27) +/* 80225450 002223B0 28 00 00 00 */ cmplwi r0, 0 +/* 80225454 002223B4 41 82 00 1C */ beq lbl_80225470 +/* 80225458 002223B8 80 1B 06 08 */ lwz r0, 0x608(r27) +/* 8022545C 002223BC 38 61 00 18 */ addi r3, r1, 0x18 +/* 80225460 002223C0 90 01 00 18 */ stw r0, 0x18(r1) +/* 80225464 002223C4 48 0C 4A 21 */ bl RemoveEmitter__11CSfxManagerFRC10CSfxHandle +/* 80225468 002223C8 38 00 00 00 */ li r0, 0 +/* 8022546C 002223CC 90 1B 06 08 */ stw r0, 0x608(r27) +lbl_80225470: +/* 80225470 002223D0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80225474 002223D4 B0 1B 05 EC */ sth r0, 0x5ec(r27) +lbl_80225478: +/* 80225478 002223D8 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 8022547C 002223DC 40 82 00 20 */ bne lbl_8022549C +/* 80225480 002223E0 A0 1D 00 00 */ lhz r0, 0(r29) +/* 80225484 002223E4 7F 63 DB 78 */ mr r3, r27 +/* 80225488 002223E8 7F 84 E3 78 */ mr r4, r28 +/* 8022548C 002223EC 7F C6 F3 78 */ mr r6, r30 +/* 80225490 002223F0 B0 01 00 08 */ sth r0, 8(r1) +/* 80225494 002223F4 38 A1 00 08 */ addi r5, r1, 8 +/* 80225498 002223F8 4B E5 76 E1 */ bl AcceptScriptMsg__10CPatternedF20EScriptObjectMessage9TUniqueIdR13CStateManager +lbl_8022549C: +/* 8022549C 002223FC BB 61 00 3C */ lmw r27, 0x3c(r1) +/* 802254A0 00222400 80 01 00 54 */ lwz r0, 0x54(r1) +/* 802254A4 00222404 7C 08 03 A6 */ mtlr r0 +/* 802254A8 00222408 38 21 00 50 */ addi r1, r1, 0x50 +/* 802254AC 0022240C 4E 80 00 20 */ blr + +.global CreateBeam__8CEyeballFR13CStateManager +CreateBeam__8CEyeballFR13CStateManager: +/* 802254B0 00222410 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 802254B4 00222414 7C 08 02 A6 */ mflr r0 +/* 802254B8 00222418 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 802254BC 0022241C 93 E1 00 CC */ stw r31, 0xcc(r1) +/* 802254C0 00222420 93 C1 00 C8 */ stw r30, 0xc8(r1) +/* 802254C4 00222424 7C 9E 23 78 */ mr r30, r4 +/* 802254C8 00222428 93 A1 00 C4 */ stw r29, 0xc4(r1) +/* 802254CC 0022242C 7C 7D 1B 78 */ mr r29, r3 +/* 802254D0 00222430 93 81 00 C0 */ stw r28, 0xc0(r1) +/* 802254D4 00222434 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 802254D8 00222438 A0 63 05 EC */ lhz r3, 0x5ec(r3) +/* 802254DC 0022243C 7C 03 00 40 */ cmplw r3, r0 +/* 802254E0 00222440 40 82 01 C0 */ bne lbl_802256A0 +/* 802254E4 00222444 C0 22 B4 70 */ lfs f1, lbl_805AD190@sda21(r2) +/* 802254E8 00222448 38 61 00 38 */ addi r3, r1, 0x38 +/* 802254EC 0022244C C0 42 B4 90 */ lfs f2, lbl_805AD1B0@sda21(r2) +/* 802254F0 00222450 FC 80 08 90 */ fmr f4, f1 +/* 802254F4 00222454 C0 62 B4 8C */ lfs f3, lbl_805AD1AC@sda21(r2) +/* 802254F8 00222458 48 13 DE F5 */ bl __ct__6CColorFffff +/* 802254FC 0022245C C0 22 B4 90 */ lfs f1, lbl_805AD1B0@sda21(r2) +/* 80225500 00222460 38 61 00 3C */ addi r3, r1, 0x3c +/* 80225504 00222464 C0 82 B4 70 */ lfs f4, lbl_805AD190@sda21(r2) +/* 80225508 00222468 FC 40 08 90 */ fmr f2, f1 +/* 8022550C 0022246C FC 60 08 90 */ fmr f3, f1 +/* 80225510 00222470 48 13 DE DD */ bl __ct__6CColorFffff +/* 80225514 00222474 81 7D 05 E8 */ lwz r11, 0x5e8(r29) +/* 80225518 00222478 38 E0 00 03 */ li r7, 3 +/* 8022551C 0022247C 81 5D 05 E4 */ lwz r10, 0x5e4(r29) +/* 80225520 00222480 38 C0 00 32 */ li r6, 0x32 +/* 80225524 00222484 81 3D 05 E0 */ lwz r9, 0x5e0(r29) +/* 80225528 00222488 7F C4 F3 78 */ mr r4, r30 +/* 8022552C 0022248C 81 1D 05 DC */ lwz r8, 0x5dc(r29) +/* 80225530 00222490 38 61 00 2C */ addi r3, r1, 0x2c +/* 80225534 00222494 C0 62 B4 90 */ lfs f3, lbl_805AD1B0@sda21(r2) +/* 80225538 00222498 C0 42 B4 98 */ lfs f2, lbl_805AD1B8@sda21(r2) +/* 8022553C 0022249C C0 82 B4 94 */ lfs f4, lbl_805AD1B4@sda21(r2) +/* 80225540 002224A0 C0 22 B4 9C */ lfs f1, lbl_805AD1BC@sda21(r2) +/* 80225544 002224A4 C0 02 B4 A0 */ lfs f0, lbl_805AD1C0@sda21(r2) +/* 80225548 002224A8 80 A1 00 3C */ lwz r5, 0x3c(r1) +/* 8022554C 002224AC 80 01 00 38 */ lwz r0, 0x38(r1) +/* 80225550 002224B0 90 E1 00 78 */ stw r7, 0x78(r1) +/* 80225554 002224B4 91 01 00 7C */ stw r8, 0x7c(r1) +/* 80225558 002224B8 91 21 00 80 */ stw r9, 0x80(r1) +/* 8022555C 002224BC 91 41 00 84 */ stw r10, 0x84(r1) +/* 80225560 002224C0 91 61 00 88 */ stw r11, 0x88(r1) +/* 80225564 002224C4 90 C1 00 8C */ stw r6, 0x8c(r1) +/* 80225568 002224C8 D0 81 00 90 */ stfs f4, 0x90(r1) +/* 8022556C 002224CC D0 61 00 94 */ stfs f3, 0x94(r1) +/* 80225570 002224D0 D0 41 00 98 */ stfs f2, 0x98(r1) +/* 80225574 002224D4 D0 21 00 9C */ stfs f1, 0x9c(r1) +/* 80225578 002224D8 D0 61 00 A0 */ stfs f3, 0xa0(r1) +/* 8022557C 002224DC D0 61 00 A4 */ stfs f3, 0xa4(r1) +/* 80225580 002224E0 D0 41 00 A8 */ stfs f2, 0xa8(r1) +/* 80225584 002224E4 D0 01 00 AC */ stfs f0, 0xac(r1) +/* 80225588 002224E8 90 A1 00 B0 */ stw r5, 0xb0(r1) +/* 8022558C 002224EC 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 80225590 002224F0 4B E2 7B 4D */ bl AllocateUniqueId__13CStateManagerFv +/* 80225594 002224F4 A0 01 00 2C */ lhz r0, 0x2c(r1) +/* 80225598 002224F8 3C 60 80 3D */ lis r3, lbl_803D3248@ha +/* 8022559C 002224FC 38 63 32 48 */ addi r3, r3, lbl_803D3248@l +/* 802255A0 00222500 3B 80 00 00 */ li r28, 0 +/* 802255A4 00222504 B0 1D 05 EC */ sth r0, 0x5ec(r29) +/* 802255A8 00222508 38 83 00 16 */ addi r4, r3, 0x16 +/* 802255AC 0022250C 38 60 05 50 */ li r3, 0x550 +/* 802255B0 00222510 38 A0 00 00 */ li r5, 0 +/* 802255B4 00222514 48 0F 02 B9 */ bl __nw__FUlPCcPCc +/* 802255B8 00222518 7C 7F 1B 79 */ or. r31, r3, r3 +/* 802255BC 0022251C 41 82 00 C4 */ beq lbl_80225680 +/* 802255C0 00222520 38 00 FF FF */ li r0, -1 +/* 802255C4 00222524 38 60 00 08 */ li r3, 8 +/* 802255C8 00222528 90 61 00 50 */ stw r3, 0x50(r1) +/* 802255CC 0022252C 3C 60 80 3D */ lis r3, lbl_803D3248@ha +/* 802255D0 00222530 38 83 32 48 */ addi r4, r3, lbl_803D3248@l +/* 802255D4 00222534 38 61 00 40 */ addi r3, r1, 0x40 +/* 802255D8 00222538 90 01 00 54 */ stw r0, 0x54(r1) +/* 802255DC 0022253C 38 84 00 1D */ addi r4, r4, 0x1d +/* 802255E0 00222540 90 01 00 58 */ stw r0, 0x58(r1) +/* 802255E4 00222544 90 01 00 5C */ stw r0, 0x5c(r1) +/* 802255E8 00222548 90 01 00 60 */ stw r0, 0x60(r1) +/* 802255EC 0022254C 90 01 00 64 */ stw r0, 0x64(r1) +/* 802255F0 00222550 90 01 00 68 */ stw r0, 0x68(r1) +/* 802255F4 00222554 90 01 00 6C */ stw r0, 0x6c(r1) +/* 802255F8 00222558 90 01 00 70 */ stw r0, 0x70(r1) +/* 802255FC 0022255C A0 1D 00 08 */ lhz r0, 8(r29) +/* 80225600 00222560 B0 01 00 28 */ sth r0, 0x28(r1) +/* 80225604 00222564 80 BD 00 04 */ lwz r5, 4(r29) +/* 80225608 00222568 B0 01 00 24 */ sth r0, 0x24(r1) +/* 8022560C 0022256C 90 A1 00 34 */ stw r5, 0x34(r1) +/* 80225610 00222570 A0 1D 05 EC */ lhz r0, 0x5ec(r29) +/* 80225614 00222574 90 A1 00 30 */ stw r5, 0x30(r1) +/* 80225618 00222578 B0 01 00 20 */ sth r0, 0x20(r1) +/* 8022561C 0022257C 4B DD F6 9D */ bl string_l__4rstlFPCc +/* 80225620 00222580 38 01 00 20 */ addi r0, r1, 0x20 +/* 80225624 00222584 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 80225628 00222588 90 01 00 08 */ stw r0, 8(r1) +/* 8022562C 0022258C 38 01 00 34 */ addi r0, r1, 0x34 +/* 80225630 00222590 39 03 66 70 */ addi r8, r3, skIdentity4f@l +/* 80225634 00222594 38 61 00 28 */ addi r3, r1, 0x28 +/* 80225638 00222598 90 01 00 0C */ stw r0, 0xc(r1) +/* 8022563C 0022259C 38 A1 00 50 */ addi r5, r1, 0x50 +/* 80225640 002225A0 38 C0 00 00 */ li r6, 0 +/* 80225644 002225A4 3C 00 00 02 */ lis r0, 2 +/* 80225648 002225A8 90 61 00 10 */ stw r3, 0x10(r1) +/* 8022564C 002225AC 7F E3 FB 78 */ mr r3, r31 +/* 80225650 002225B0 38 9D 05 B4 */ addi r4, r29, 0x5b4 +/* 80225654 002225B4 38 E1 00 74 */ addi r7, r1, 0x74 +/* 80225658 002225B8 90 A1 00 14 */ stw r5, 0x14(r1) +/* 8022565C 002225BC 38 A1 00 40 */ addi r5, r1, 0x40 +/* 80225660 002225C0 39 5D 05 C0 */ addi r10, r29, 0x5c0 +/* 80225664 002225C4 3B 80 00 01 */ li r28, 1 +/* 80225668 002225C8 90 C1 00 18 */ stw r6, 0x18(r1) +/* 8022566C 002225CC 38 C0 00 09 */ li r6, 9 +/* 80225670 002225D0 39 20 00 21 */ li r9, 0x21 +/* 80225674 002225D4 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80225678 002225D8 4B F5 35 B1 */ bl "__ct__17CPlasmaProjectileFRC28TToken<18CWeaponDescription>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>11EWeaponTypeRC9CBeamInfoRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId9TUniqueIdbUi" +/* 8022567C 002225DC 7C 7F 1B 78 */ mr r31, r3 +lbl_80225680: +/* 80225680 002225E0 7F 80 07 75 */ extsb. r0, r28 +/* 80225684 002225E4 7F FD FB 78 */ mr r29, r31 +/* 80225688 002225E8 41 82 00 0C */ beq lbl_80225694 +/* 8022568C 002225EC 38 61 00 40 */ addi r3, r1, 0x40 +/* 80225690 002225F0 48 11 84 51 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80225694: +/* 80225694 002225F4 7F C3 F3 78 */ mr r3, r30 +/* 80225698 002225F8 7F A4 EB 78 */ mr r4, r29 +/* 8022569C 002225FC 4B E2 74 79 */ bl AddObject__13CStateManagerFR7CEntity +lbl_802256A0: +/* 802256A0 00222600 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 802256A4 00222604 83 E1 00 CC */ lwz r31, 0xcc(r1) +/* 802256A8 00222608 83 C1 00 C8 */ lwz r30, 0xc8(r1) +/* 802256AC 0022260C 83 A1 00 C4 */ lwz r29, 0xc4(r1) +/* 802256B0 00222610 83 81 00 C0 */ lwz r28, 0xc0(r1) +/* 802256B4 00222614 7C 08 03 A6 */ mtlr r0 +/* 802256B8 00222618 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 802256BC 0022261C 4E 80 00 20 */ blr + +.global Accept__8CEyeBallFR8IVisitor +Accept__8CEyeBallFR8IVisitor: +/* 802256C0 00222620 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 802256C4 00222624 7C 08 02 A6 */ mflr r0 +/* 802256C8 00222628 90 01 00 14 */ stw r0, 0x14(r1) +/* 802256CC 0022262C 7C 60 1B 78 */ mr r0, r3 +/* 802256D0 00222630 7C 83 23 78 */ mr r3, r4 +/* 802256D4 00222634 81 84 00 00 */ lwz r12, 0(r4) +/* 802256D8 00222638 7C 04 03 78 */ mr r4, r0 +/* 802256DC 0022263C 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 802256E0 00222640 7D 89 03 A6 */ mtctr r12 +/* 802256E4 00222644 4E 80 04 21 */ bctrl +/* 802256E8 00222648 80 01 00 14 */ lwz r0, 0x14(r1) +/* 802256EC 0022264C 7C 08 03 A6 */ mtlr r0 +/* 802256F0 00222650 38 21 00 10 */ addi r1, r1, 0x10 +/* 802256F4 00222654 4E 80 00 20 */ blr + +.global "__ct__8CEyeBallF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoffUiRC11CDamageInfoUiUiUiUiRC16CActorParameters" +"__ct__8CEyeBallF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoffUiRC11CDamageInfoUiUiUiUiRC16CActorParameters": +/* 802256F8 00222658 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 802256FC 0022265C 7C 08 02 A6 */ mflr r0 +/* 80225700 00222660 90 01 00 94 */ stw r0, 0x94(r1) +/* 80225704 00222664 DB E1 00 80 */ stfd f31, 0x80(r1) +/* 80225708 00222668 F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0 +/* 8022570C 0022266C DB C1 00 70 */ stfd f30, 0x70(r1) +/* 80225710 00222670 F3 C1 00 78 */ psq_st f30, 120(r1), 0, qr0 +/* 80225714 00222674 BE 61 00 3C */ stmw r19, 0x3c(r1) +/* 80225718 00222678 A0 04 00 00 */ lhz r0, 0(r4) +/* 8022571C 0022267C 7D 2B 4B 78 */ mr r11, r9 +/* 80225720 00222680 7C F8 3B 78 */ mr r24, r7 +/* 80225724 00222684 7C D7 33 78 */ mr r23, r6 +/* 80225728 00222688 B0 01 00 20 */ sth r0, 0x20(r1) +/* 8022572C 0022268C 7D 0C 43 78 */ mr r12, r8 +/* 80225730 00222690 7F 08 C3 78 */ mr r8, r24 +/* 80225734 00222694 7C A6 2B 78 */ mr r6, r5 +/* 80225738 00222698 91 41 00 08 */ stw r10, 8(r1) +/* 8022573C 0022269C 39 20 00 01 */ li r9, 1 +/* 80225740 002226A0 38 80 00 00 */ li r4, 0 +/* 80225744 002226A4 38 00 00 02 */ li r0, 2 +/* 80225748 002226A8 91 21 00 0C */ stw r9, 0xc(r1) +/* 8022574C 002226AC FF C0 08 90 */ fmr f30, f1 +/* 80225750 002226B0 80 E1 00 C8 */ lwz r7, 0xc8(r1) +/* 80225754 002226B4 FF E0 10 90 */ fmr f31, f2 +/* 80225758 002226B8 90 81 00 10 */ stw r4, 0x10(r1) +/* 8022575C 002226BC 7C 73 1B 78 */ mr r19, r3 +/* 80225760 002226C0 82 81 00 98 */ lwz r20, 0x98(r1) +/* 80225764 002226C4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80225768 002226C8 7D 6A 5B 78 */ mr r10, r11 +/* 8022576C 002226CC 82 A1 00 9C */ lwz r21, 0x9c(r1) +/* 80225770 002226D0 38 A1 00 20 */ addi r5, r1, 0x20 +/* 80225774 002226D4 90 E1 00 18 */ stw r7, 0x18(r1) +/* 80225778 002226D8 7E E7 BB 78 */ mr r7, r23 +/* 8022577C 002226DC 82 C1 00 A0 */ lwz r22, 0xa0(r1) +/* 80225780 002226E0 38 80 00 09 */ li r4, 9 +/* 80225784 002226E4 91 21 00 1C */ stw r9, 0x1c(r1) +/* 80225788 002226E8 7D 89 63 78 */ mr r9, r12 +/* 8022578C 002226EC 82 E1 00 A4 */ lwz r23, 0xa4(r1) +/* 80225790 002226F0 83 01 00 A8 */ lwz r24, 0xa8(r1) +/* 80225794 002226F4 83 21 00 AC */ lwz r25, 0xac(r1) +/* 80225798 002226F8 83 41 00 B0 */ lwz r26, 0xb0(r1) +/* 8022579C 002226FC 83 61 00 B4 */ lwz r27, 0xb4(r1) +/* 802257A0 00222700 83 81 00 B8 */ lwz r28, 0xb8(r1) +/* 802257A4 00222704 83 A1 00 BC */ lwz r29, 0xbc(r1) +/* 802257A8 00222708 83 C1 00 C0 */ lwz r30, 0xc0(r1) +/* 802257AC 0022270C 8B E1 00 C7 */ lbz r31, 0xc7(r1) +/* 802257B0 00222710 4B E5 7C A1 */ bl "__ct__10CPatternedFUi9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC16CActorParametersUi" +/* 802257B4 00222714 3C 60 80 3E */ lis r3, lbl_803E774C@ha +/* 802257B8 00222718 3C 80 80 3D */ lis r4, lbl_803D3248@ha +/* 802257BC 0022271C 38 03 77 4C */ addi r0, r3, lbl_803E774C@l +/* 802257C0 00222720 38 61 00 24 */ addi r3, r1, 0x24 +/* 802257C4 00222724 90 13 00 00 */ stw r0, 0(r19) +/* 802257C8 00222728 38 84 32 48 */ addi r4, r4, lbl_803D3248@l +/* 802257CC 0022272C 38 84 00 2A */ addi r4, r4, 0x2a +/* 802257D0 00222730 D3 D3 05 68 */ stfs f30, 0x568(r19) +/* 802257D4 00222734 D3 F3 05 6C */ stfs f31, 0x56c(r19) +/* 802257D8 00222738 4B DD F4 E1 */ bl string_l__4rstlFPCc +/* 802257DC 0022273C 80 93 00 64 */ lwz r4, 0x64(r19) +/* 802257E0 00222740 38 73 05 70 */ addi r3, r19, 0x570 +/* 802257E4 00222744 C0 22 B4 88 */ lfs f1, lbl_805AD1A8@sda21(r2) +/* 802257E8 00222748 38 A1 00 24 */ addi r5, r1, 0x24 +/* 802257EC 0022274C 80 84 00 10 */ lwz r4, 0x10(r4) +/* 802257F0 00222750 38 C0 00 01 */ li r6, 1 +/* 802257F4 00222754 C0 42 B4 A4 */ lfs f2, lbl_805AD1C4@sda21(r2) +/* 802257F8 00222758 4B F5 01 C1 */ bl "__ct__13CBoneTrackingFRC9CAnimDataRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>ffb" +/* 802257FC 0022275C 38 61 00 24 */ addi r3, r1, 0x24 +/* 80225800 00222760 48 11 82 E1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80225804 00222764 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80225808 00222768 7E 84 A3 78 */ mr r4, r20 +/* 8022580C 0022276C 38 C3 66 A0 */ addi r6, r3, skZero3f@l +/* 80225810 00222770 7E A5 AB 78 */ mr r5, r21 +/* 80225814 00222774 C0 06 00 00 */ lfs f0, 0(r6) +/* 80225818 00222778 38 73 05 B4 */ addi r3, r19, 0x5b4 +/* 8022581C 0022277C D0 13 05 A8 */ stfs f0, 0x5a8(r19) +/* 80225820 00222780 C0 06 00 04 */ lfs f0, 4(r6) +/* 80225824 00222784 D0 13 05 AC */ stfs f0, 0x5ac(r19) +/* 80225828 00222788 C0 06 00 08 */ lfs f0, 8(r6) +/* 8022582C 0022278C D0 13 05 B0 */ stfs f0, 0x5b0(r19) +/* 80225830 00222790 4B FF 68 79 */ bl __ct__15CProjectileInfoFUiRC11CDamageInfo +/* 80225834 00222794 92 D3 05 DC */ stw r22, 0x5dc(r19) +/* 80225838 00222798 38 00 00 00 */ li r0, 0 +/* 8022583C 0022279C 57 C3 04 3E */ clrlwi r3, r30, 0x10 +/* 80225840 002227A0 92 F3 05 E0 */ stw r23, 0x5e0(r19) +/* 80225844 002227A4 93 13 05 E4 */ stw r24, 0x5e4(r19) +/* 80225848 002227A8 93 33 05 E8 */ stw r25, 0x5e8(r19) +/* 8022584C 002227AC A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 80225850 002227B0 B0 93 05 EC */ sth r4, 0x5ec(r19) +/* 80225854 002227B4 90 13 05 F0 */ stw r0, 0x5f0(r19) +/* 80225858 002227B8 48 0C 31 59 */ bl TranslateSFXID__11CSfxManagerFUs +/* 8022585C 002227BC B0 73 06 04 */ sth r3, 0x604(r19) +/* 80225860 002227C0 38 A0 00 00 */ li r5, 0 +/* 80225864 002227C4 38 73 04 60 */ addi r3, r19, 0x460 +/* 80225868 002227C8 38 80 00 00 */ li r4, 0 +/* 8022586C 002227CC 90 B3 06 08 */ stw r5, 0x608(r19) +/* 80225870 002227D0 88 13 06 0C */ lbz r0, 0x60c(r19) +/* 80225874 002227D4 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 80225878 002227D8 98 13 06 0C */ stb r0, 0x60c(r19) +/* 8022587C 002227DC 88 13 06 0C */ lbz r0, 0x60c(r19) +/* 80225880 002227E0 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 80225884 002227E4 98 13 06 0C */ stb r0, 0x60c(r19) +/* 80225888 002227E8 88 13 06 0C */ lbz r0, 0x60c(r19) +/* 8022588C 002227EC 50 A0 2E B4 */ rlwimi r0, r5, 5, 0x1a, 0x1a +/* 80225890 002227F0 98 13 06 0C */ stb r0, 0x60c(r19) +/* 80225894 002227F4 88 13 06 0C */ lbz r0, 0x60c(r19) +/* 80225898 002227F8 53 E0 26 F6 */ rlwimi r0, r31, 4, 0x1b, 0x1b +/* 8022589C 002227FC 98 13 06 0C */ stb r0, 0x60c(r19) +/* 802258A0 00222800 88 13 06 0C */ lbz r0, 0x60c(r19) +/* 802258A4 00222804 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 802258A8 00222808 98 13 06 0C */ stb r0, 0x60c(r19) +/* 802258AC 0022280C 93 53 05 F4 */ stw r26, 0x5f4(r19) +/* 802258B0 00222810 93 73 05 F8 */ stw r27, 0x5f8(r19) +/* 802258B4 00222814 93 93 05 FC */ stw r28, 0x5fc(r19) +/* 802258B8 00222818 93 B3 06 00 */ stw r29, 0x600(r19) +/* 802258BC 0022281C 48 00 E4 A9 */ bl SetAutoResetImpulse__20CKnockBackControllerFb +/* 802258C0 00222820 7E 63 9B 78 */ mr r3, r19 +/* 802258C4 00222824 E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0 +/* 802258C8 00222828 CB E1 00 80 */ lfd f31, 0x80(r1) +/* 802258CC 0022282C E3 C1 00 78 */ psq_l f30, 120(r1), 0, qr0 +/* 802258D0 00222830 CB C1 00 70 */ lfd f30, 0x70(r1) +/* 802258D4 00222834 BA 61 00 3C */ lmw r19, 0x3c(r1) +/* 802258D8 00222838 80 01 00 94 */ lwz r0, 0x94(r1) +/* 802258DC 0022283C 7C 08 03 A6 */ mtlr r0 +/* 802258E0 00222840 38 21 00 90 */ addi r1, r1, 0x90 +/* 802258E4 00222844 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Enemies/CFlaahgra.s b/asm/Kyoto_CWD/Enemies/CFlaahgra.s new file mode 100644 index 00000000..2e1018bd --- /dev/null +++ b/asm/Kyoto_CWD/Enemies/CFlaahgra.s @@ -0,0 +1,7822 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__17CFlaahgraRendererFv +__dt__17CFlaahgraRendererFv: +/* 801AD580 001AA4E0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801AD584 001AA4E4 7C 08 02 A6 */ mflr r0 +/* 801AD588 001AA4E8 90 01 00 14 */ stw r0, 0x14(r1) +/* 801AD58C 001AA4EC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801AD590 001AA4F0 7C 9F 23 78 */ mr r31, r4 +/* 801AD594 001AA4F4 93 C1 00 08 */ stw r30, 8(r1) +/* 801AD598 001AA4F8 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801AD59C 001AA4FC 41 82 00 28 */ beq lbl_801AD5C4 +/* 801AD5A0 001AA500 3C A0 80 3E */ lis r5, lbl_803E4D08@ha +/* 801AD5A4 001AA504 38 80 00 00 */ li r4, 0 +/* 801AD5A8 001AA508 38 05 4D 08 */ addi r0, r5, lbl_803E4D08@l +/* 801AD5AC 001AA50C 90 1E 00 00 */ stw r0, 0(r30) +/* 801AD5B0 001AA510 4B EA 81 41 */ bl __dt__6CActorFv +/* 801AD5B4 001AA514 7F E0 07 35 */ extsh. r0, r31 +/* 801AD5B8 001AA518 40 81 00 0C */ ble lbl_801AD5C4 +/* 801AD5BC 001AA51C 7F C3 F3 78 */ mr r3, r30 +/* 801AD5C0 001AA520 48 16 83 71 */ bl Free__7CMemoryFPCv +lbl_801AD5C4: +/* 801AD5C4 001AA524 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801AD5C8 001AA528 7F C3 F3 78 */ mr r3, r30 +/* 801AD5CC 001AA52C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801AD5D0 001AA530 83 C1 00 08 */ lwz r30, 8(r1) +/* 801AD5D4 001AA534 7C 08 03 A6 */ mtlr r0 +/* 801AD5D8 001AA538 38 21 00 10 */ addi r1, r1, 0x10 +/* 801AD5DC 001AA53C 4E 80 00 20 */ blr + +.global GetTouchBounds__17CFlaahgraRendererCFv +GetTouchBounds__17CFlaahgraRendererCFv: +/* 801AD5E0 001AA540 38 00 00 00 */ li r0, 0 +/* 801AD5E4 001AA544 98 03 00 18 */ stb r0, 0x18(r3) +/* 801AD5E8 001AA548 4E 80 00 20 */ blr + +.global AddToRenderer__17CFlaahgraRendererCFRC14CFrustumPlanesRC13CStateManager +AddToRenderer__17CFlaahgraRendererCFRC14CFrustumPlanesRC13CStateManager: +/* 801AD5EC 001AA54C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801AD5F0 001AA550 7C 08 02 A6 */ mflr r0 +/* 801AD5F4 001AA554 90 01 00 24 */ stw r0, 0x24(r1) +/* 801AD5F8 001AA558 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801AD5FC 001AA55C 7C 9F 23 78 */ mr r31, r4 +/* 801AD600 001AA560 38 81 00 08 */ addi r4, r1, 8 +/* 801AD604 001AA564 A0 03 00 E8 */ lhz r0, 0xe8(r3) +/* 801AD608 001AA568 7C A3 2B 78 */ mr r3, r5 +/* 801AD60C 001AA56C B0 01 00 08 */ sth r0, 8(r1) +/* 801AD610 001AA570 4B E9 EF 95 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801AD614 001AA574 28 03 00 00 */ cmplwi r3, 0 +/* 801AD618 001AA578 41 82 00 38 */ beq lbl_801AD650 +/* 801AD61C 001AA57C 80 63 00 64 */ lwz r3, 0x64(r3) +/* 801AD620 001AA580 38 80 00 00 */ li r4, 0 +/* 801AD624 001AA584 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801AD628 001AA588 28 00 00 00 */ cmplwi r0, 0 +/* 801AD62C 001AA58C 40 82 00 14 */ bne lbl_801AD640 +/* 801AD630 001AA590 88 03 00 28 */ lbz r0, 0x28(r3) +/* 801AD634 001AA594 28 00 00 00 */ cmplwi r0, 0 +/* 801AD638 001AA598 40 82 00 08 */ bne lbl_801AD640 +/* 801AD63C 001AA59C 38 80 00 01 */ li r4, 1 +lbl_801AD640: +/* 801AD640 001AA5A0 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 801AD644 001AA5A4 40 82 00 0C */ bne lbl_801AD650 +/* 801AD648 001AA5A8 7F E4 FB 78 */ mr r4, r31 +/* 801AD64C 001AA5AC 4B F6 86 35 */ bl RenderParticles__10CModelDataCFRC14CFrustumPlanes +lbl_801AD650: +/* 801AD650 001AA5B0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801AD654 001AA5B4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801AD658 001AA5B8 7C 08 03 A6 */ mtlr r0 +/* 801AD65C 001AA5BC 38 21 00 20 */ addi r1, r1, 0x20 +/* 801AD660 001AA5C0 4E 80 00 20 */ blr + +.global Accept__17CFlaahgraRendererFR8IVisitor +Accept__17CFlaahgraRendererFR8IVisitor: +/* 801AD664 001AA5C4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801AD668 001AA5C8 7C 08 02 A6 */ mflr r0 +/* 801AD66C 001AA5CC 90 01 00 14 */ stw r0, 0x14(r1) +/* 801AD670 001AA5D0 7C 60 1B 78 */ mr r0, r3 +/* 801AD674 001AA5D4 7C 83 23 78 */ mr r3, r4 +/* 801AD678 001AA5D8 81 84 00 00 */ lwz r12, 0(r4) +/* 801AD67C 001AA5DC 7C 04 03 78 */ mr r4, r0 +/* 801AD680 001AA5E0 81 8C 00 08 */ lwz r12, 8(r12) +/* 801AD684 001AA5E4 7D 89 03 A6 */ mtctr r12 +/* 801AD688 001AA5E8 4E 80 04 21 */ bctrl +/* 801AD68C 001AA5EC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801AD690 001AA5F0 7C 08 03 A6 */ mtlr r0 +/* 801AD694 001AA5F4 38 21 00 10 */ addi r1, r1, 0x10 +/* 801AD698 001AA5F8 4E 80 00 20 */ blr + +.global "__ct__17CFlaahgraRendererF9TUniqueId9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4f" +"__ct__17CFlaahgraRendererF9TUniqueId9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4f": +/* 801AD69C 001AA5FC 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 801AD6A0 001AA600 7C 08 02 A6 */ mflr r0 +/* 801AD6A4 001AA604 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 801AD6A8 001AA608 BF 41 00 D8 */ stmw r26, 0xd8(r1) +/* 801AD6AC 001AA60C 7C 7F 1B 78 */ mr r31, r3 +/* 801AD6B0 001AA610 7C 9A 23 78 */ mr r26, r4 +/* 801AD6B4 001AA614 7C BB 2B 78 */ mr r27, r5 +/* 801AD6B8 001AA618 7C DC 33 78 */ mr r28, r6 +/* 801AD6BC 001AA61C 7C FD 3B 78 */ mr r29, r7 +/* 801AD6C0 001AA620 7D 1E 43 78 */ mr r30, r8 +/* 801AD6C4 001AA624 38 61 00 88 */ addi r3, r1, 0x88 +/* 801AD6C8 001AA628 4B E8 D0 DD */ bl CModelDataNull__10CModelDataFv +/* 801AD6CC 001AA62C 38 61 00 20 */ addi r3, r1, 0x20 +/* 801AD6D0 001AA630 4B E6 D7 69 */ bl None__16CActorParametersFv +/* 801AD6D4 001AA634 A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 801AD6D8 001AA638 38 00 00 00 */ li r0, 0 +/* 801AD6DC 001AA63C 80 AD 90 CC */ lwz r5, lbl_805A7C8C@sda21(r13) +/* 801AD6E0 001AA640 38 60 00 00 */ li r3, 0 +/* 801AD6E4 001AA644 B0 81 00 10 */ sth r4, 0x10(r1) +/* 801AD6E8 001AA648 38 80 00 01 */ li r4, 1 +/* 801AD6EC 001AA64C 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801AD6F0 001AA650 90 01 00 18 */ stw r0, 0x18(r1) +/* 801AD6F4 001AA654 48 1D C8 01 */ bl __shl2i +/* 801AD6F8 001AA658 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 801AD6FC 001AA65C 39 61 00 20 */ addi r11, r1, 0x20 +/* 801AD700 001AA660 80 C1 00 1C */ lwz r6, 0x1c(r1) +/* 801AD704 001AA664 38 01 00 10 */ addi r0, r1, 0x10 +/* 801AD708 001AA668 7C A3 1B 78 */ or r3, r5, r3 +/* 801AD70C 001AA66C A0 BA 00 00 */ lhz r5, 0(r26) +/* 801AD710 001AA670 7C C4 23 78 */ or r4, r6, r4 +/* 801AD714 001AA674 90 61 00 18 */ stw r3, 0x18(r1) +/* 801AD718 001AA678 7F E3 FB 78 */ mr r3, r31 +/* 801AD71C 001AA67C 7F 86 E3 78 */ mr r6, r28 +/* 801AD720 001AA680 90 81 00 1C */ stw r4, 0x1c(r1) +/* 801AD724 001AA684 7F A7 EB 78 */ mr r7, r29 +/* 801AD728 001AA688 7F C8 F3 78 */ mr r8, r30 +/* 801AD72C 001AA68C 38 81 00 14 */ addi r4, r1, 0x14 +/* 801AD730 001AA690 B0 A1 00 14 */ sth r5, 0x14(r1) +/* 801AD734 001AA694 39 21 00 88 */ addi r9, r1, 0x88 +/* 801AD738 001AA698 39 41 00 18 */ addi r10, r1, 0x18 +/* 801AD73C 001AA69C 38 A0 00 01 */ li r5, 1 +/* 801AD740 001AA6A0 91 61 00 08 */ stw r11, 8(r1) +/* 801AD744 001AA6A4 90 01 00 0C */ stw r0, 0xc(r1) +/* 801AD748 001AA6A8 4B EA 80 D9 */ bl "__ct__6CActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC16CActorParameters9TUniqueId" +/* 801AD74C 001AA6AC 38 61 00 20 */ addi r3, r1, 0x20 +/* 801AD750 001AA6B0 38 80 FF FF */ li r4, -1 +/* 801AD754 001AA6B4 4B F5 8E B5 */ bl __dt__16CActorParametersFv +/* 801AD758 001AA6B8 38 61 00 88 */ addi r3, r1, 0x88 +/* 801AD75C 001AA6BC 38 80 FF FF */ li r4, -1 +/* 801AD760 001AA6C0 4B F6 92 ED */ bl __dt__10CModelDataFv +/* 801AD764 001AA6C4 3C 80 80 3E */ lis r4, lbl_803E4D08@ha +/* 801AD768 001AA6C8 7F E3 FB 78 */ mr r3, r31 +/* 801AD76C 001AA6CC 38 04 4D 08 */ addi r0, r4, lbl_803E4D08@l +/* 801AD770 001AA6D0 90 1F 00 00 */ stw r0, 0(r31) +/* 801AD774 001AA6D4 A0 1B 00 00 */ lhz r0, 0(r27) +/* 801AD778 001AA6D8 B0 1F 00 E8 */ sth r0, 0xe8(r31) +/* 801AD77C 001AA6DC BB 41 00 D8 */ lmw r26, 0xd8(r1) +/* 801AD780 001AA6E0 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 801AD784 001AA6E4 7C 08 03 A6 */ mtlr r0 +/* 801AD788 001AA6E8 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 801AD78C 001AA6EC 4E 80 00 20 */ blr + +.global sub_801ad790 +sub_801ad790: +/* 801AD790 001AA6F0 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 801AD794 001AA6F4 7C 08 02 A6 */ mflr r0 +/* 801AD798 001AA6F8 90 01 00 84 */ stw r0, 0x84(r1) +/* 801AD79C 001AA6FC 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 801AD7A0 001AA700 7C 7F 1B 78 */ mr r31, r3 +/* 801AD7A4 001AA704 38 61 00 20 */ addi r3, r1, 0x20 +/* 801AD7A8 001AA708 93 C1 00 78 */ stw r30, 0x78(r1) +/* 801AD7AC 001AA70C 38 9F 08 AC */ addi r4, r31, 0x8ac +/* 801AD7B0 001AA710 93 A1 00 74 */ stw r29, 0x74(r1) +/* 801AD7B4 001AA714 4B F6 93 A1 */ bl __ct__10CModelDataFRC8CAnimRes +/* 801AD7B8 001AA718 7F E3 FB 78 */ mr r3, r31 +/* 801AD7BC 001AA71C 38 81 00 20 */ addi r4, r1, 0x20 +/* 801AD7C0 001AA720 4B EA 78 71 */ bl SetModelData__6CActorFRC10CModelData +/* 801AD7C4 001AA724 38 61 00 20 */ addi r3, r1, 0x20 +/* 801AD7C8 001AA728 38 80 FF FF */ li r4, -1 +/* 801AD7CC 001AA72C 4B F6 92 81 */ bl __dt__10CModelDataFv +/* 801AD7D0 001AA730 7F E3 FB 78 */ mr r3, r31 +/* 801AD7D4 001AA734 4B EA 56 09 */ bl CreateShadow__6CActorFv +/* 801AD7D8 001AA738 7F E3 FB 78 */ mr r3, r31 +/* 801AD7DC 001AA73C 38 80 00 01 */ li r4, 1 +/* 801AD7E0 001AA740 4B EA 55 8D */ bl CreateShadow__6CActorFb +/* 801AD7E4 001AA744 80 7F 00 94 */ lwz r3, 0x94(r31) +/* 801AD7E8 001AA748 38 80 00 00 */ li r4, 0 +/* 801AD7EC 001AA74C 4B F5 85 05 */ bl sub_80105cf0 +/* 801AD7F0 001AA750 7F E3 FB 78 */ mr r3, r31 +/* 801AD7F4 001AA754 38 80 00 02 */ li r4, 2 +/* 801AD7F8 001AA758 4B EC F9 19 */ bl BuildBodyController__10CPatternedF9EBodyType +/* 801AD7FC 001AA75C 3C 60 80 3D */ lis r3, lbl_803D1590@ha +/* 801AD800 001AA760 3B C0 00 00 */ li r30, 0 +/* 801AD804 001AA764 38 83 15 90 */ addi r4, r3, lbl_803D1590@l +/* 801AD808 001AA768 38 60 00 38 */ li r3, 0x38 +/* 801AD80C 001AA76C 38 84 00 7E */ addi r4, r4, 0x7e +/* 801AD810 001AA770 38 A0 00 00 */ li r5, 0 +/* 801AD814 001AA774 48 16 80 59 */ bl __nw__FUlPCcPCc +/* 801AD818 001AA778 7C 7D 1B 79 */ or. r29, r3, r3 +/* 801AD81C 001AA77C 41 82 00 40 */ beq lbl_801AD85C +/* 801AD820 001AA780 3C 80 80 3D */ lis r4, lbl_803D1590@ha +/* 801AD824 001AA784 38 61 00 10 */ addi r3, r1, 0x10 +/* 801AD828 001AA788 38 84 15 90 */ addi r4, r4, lbl_803D1590@l +/* 801AD82C 001AA78C 38 84 00 58 */ addi r4, r4, 0x58 +/* 801AD830 001AA790 4B E5 74 89 */ bl string_l__4rstlFPCc +/* 801AD834 001AA794 80 9F 00 64 */ lwz r4, 0x64(r31) +/* 801AD838 001AA798 7F A3 EB 78 */ mr r3, r29 +/* 801AD83C 001AA79C C0 22 A8 AC */ lfs f1, lbl_805AC5CC@sda21(r2) +/* 801AD840 001AA7A0 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801AD844 001AA7A4 80 84 00 10 */ lwz r4, 0x10(r4) +/* 801AD848 001AA7A8 3B C0 00 01 */ li r30, 1 +/* 801AD84C 001AA7AC C0 42 A8 B0 */ lfs f2, lbl_805AC5D0@sda21(r2) +/* 801AD850 001AA7B0 38 C0 00 00 */ li r6, 0 +/* 801AD854 001AA7B4 4B FC 81 65 */ bl "__ct__13CBoneTrackingFRC9CAnimDataRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>ffb" +/* 801AD858 001AA7B8 7C 7D 1B 78 */ mr r29, r3 +lbl_801AD85C: +/* 801AD85C 001AA7BC 7C 1D 00 D0 */ neg r0, r29 +/* 801AD860 001AA7C0 38 61 00 08 */ addi r3, r1, 8 +/* 801AD864 001AA7C4 7C 04 EB 78 */ or r4, r0, r29 +/* 801AD868 001AA7C8 38 1F 06 C8 */ addi r0, r31, 0x6c8 +/* 801AD86C 001AA7CC 54 84 0F FE */ srwi r4, r4, 0x1f +/* 801AD870 001AA7D0 93 A1 00 0C */ stw r29, 0xc(r1) +/* 801AD874 001AA7D4 7C 03 00 40 */ cmplw r3, r0 +/* 801AD878 001AA7D8 98 81 00 08 */ stb r4, 8(r1) +/* 801AD87C 001AA7DC 41 82 00 48 */ beq lbl_801AD8C4 +/* 801AD880 001AA7E0 88 1F 06 C8 */ lbz r0, 0x6c8(r31) +/* 801AD884 001AA7E4 28 00 00 00 */ cmplwi r0, 0 +/* 801AD888 001AA7E8 41 82 00 24 */ beq lbl_801AD8AC +/* 801AD88C 001AA7EC 80 7F 06 CC */ lwz r3, 0x6cc(r31) +/* 801AD890 001AA7F0 28 03 00 00 */ cmplwi r3, 0 +/* 801AD894 001AA7F4 41 82 00 18 */ beq lbl_801AD8AC +/* 801AD898 001AA7F8 34 03 00 24 */ addic. r0, r3, 0x24 +/* 801AD89C 001AA7FC 41 82 00 0C */ beq lbl_801AD8A8 +/* 801AD8A0 001AA800 38 00 00 00 */ li r0, 0 +/* 801AD8A4 001AA804 98 03 00 30 */ stb r0, 0x30(r3) +lbl_801AD8A8: +/* 801AD8A8 001AA808 48 16 80 89 */ bl Free__7CMemoryFPCv +lbl_801AD8AC: +/* 801AD8AC 001AA80C 88 61 00 08 */ lbz r3, 8(r1) +/* 801AD8B0 001AA810 38 00 00 00 */ li r0, 0 +/* 801AD8B4 001AA814 98 7F 06 C8 */ stb r3, 0x6c8(r31) +/* 801AD8B8 001AA818 80 61 00 0C */ lwz r3, 0xc(r1) +/* 801AD8BC 001AA81C 90 7F 06 CC */ stw r3, 0x6cc(r31) +/* 801AD8C0 001AA820 98 01 00 08 */ stb r0, 8(r1) +lbl_801AD8C4: +/* 801AD8C4 001AA824 88 01 00 08 */ lbz r0, 8(r1) +/* 801AD8C8 001AA828 28 00 00 00 */ cmplwi r0, 0 +/* 801AD8CC 001AA82C 41 82 00 24 */ beq lbl_801AD8F0 +/* 801AD8D0 001AA830 80 61 00 0C */ lwz r3, 0xc(r1) +/* 801AD8D4 001AA834 28 03 00 00 */ cmplwi r3, 0 +/* 801AD8D8 001AA838 41 82 00 18 */ beq lbl_801AD8F0 +/* 801AD8DC 001AA83C 34 03 00 24 */ addic. r0, r3, 0x24 +/* 801AD8E0 001AA840 41 82 00 0C */ beq lbl_801AD8EC +/* 801AD8E4 001AA844 38 00 00 00 */ li r0, 0 +/* 801AD8E8 001AA848 98 03 00 30 */ stb r0, 0x30(r3) +lbl_801AD8EC: +/* 801AD8EC 001AA84C 48 16 80 45 */ bl Free__7CMemoryFPCv +lbl_801AD8F0: +/* 801AD8F0 001AA850 7F C0 07 75 */ extsb. r0, r30 +/* 801AD8F4 001AA854 41 82 00 0C */ beq lbl_801AD900 +/* 801AD8F8 001AA858 38 61 00 10 */ addi r3, r1, 0x10 +/* 801AD8FC 001AA85C 48 19 01 E5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801AD900: +/* 801AD900 001AA860 80 01 00 84 */ lwz r0, 0x84(r1) +/* 801AD904 001AA864 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 801AD908 001AA868 83 C1 00 78 */ lwz r30, 0x78(r1) +/* 801AD90C 001AA86C 83 A1 00 74 */ lwz r29, 0x74(r1) +/* 801AD910 001AA870 7C 08 03 A6 */ mtlr r0 +/* 801AD914 001AA874 38 21 00 80 */ addi r1, r1, 0x80 +/* 801AD918 001AA878 4E 80 00 20 */ blr + +.global sub_801ad91c +sub_801ad91c: +/* 801AD91C 001AA87C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801AD920 001AA880 7C 08 02 A6 */ mflr r0 +/* 801AD924 001AA884 90 01 00 24 */ stw r0, 0x24(r1) +/* 801AD928 001AA888 3C 04 00 01 */ addis r0, r4, 1 +/* 801AD92C 001AA88C 28 00 FF FF */ cmplwi r0, 0xffff +/* 801AD930 001AA890 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801AD934 001AA894 7C 7F 1B 78 */ mr r31, r3 +/* 801AD938 001AA898 40 82 00 1C */ bne lbl_801AD954 +/* 801AD93C 001AA89C 4B FF FE 55 */ bl sub_801ad790 +/* 801AD940 001AA8A0 88 1F 08 E4 */ lbz r0, 0x8e4(r31) +/* 801AD944 001AA8A4 38 60 00 01 */ li r3, 1 +/* 801AD948 001AA8A8 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801AD94C 001AA8AC 98 1F 08 E4 */ stb r0, 0x8e4(r31) +/* 801AD950 001AA8B0 48 00 00 78 */ b lbl_801AD9C8 +lbl_801AD954: +/* 801AD954 001AA8B4 3C 60 44 47 */ lis r3, 0x44475250@ha +/* 801AD958 001AA8B8 90 81 00 14 */ stw r4, 0x14(r1) +/* 801AD95C 001AA8BC 38 03 52 50 */ addi r0, r3, 0x44475250@l +/* 801AD960 001AA8C0 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801AD964 001AA8C4 90 01 00 10 */ stw r0, 0x10(r1) +/* 801AD968 001AA8C8 38 61 00 08 */ addi r3, r1, 8 +/* 801AD96C 001AA8CC 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801AD970 001AA8D0 81 84 00 00 */ lwz r12, 0(r4) +/* 801AD974 001AA8D4 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801AD978 001AA8D8 7D 89 03 A6 */ mtctr r12 +/* 801AD97C 001AA8DC 4E 80 04 21 */ bctrl +/* 801AD980 001AA8E0 88 1F 08 D0 */ lbz r0, 0x8d0(r31) +/* 801AD984 001AA8E4 28 00 00 00 */ cmplwi r0, 0 +/* 801AD988 001AA8E8 40 82 00 20 */ bne lbl_801AD9A8 +/* 801AD98C 001AA8EC 34 7F 08 C8 */ addic. r3, r31, 0x8c8 +/* 801AD990 001AA8F0 41 82 00 0C */ beq lbl_801AD99C +/* 801AD994 001AA8F4 38 81 00 08 */ addi r4, r1, 8 +/* 801AD998 001AA8F8 48 19 35 11 */ bl __ct__6CTokenFRC6CToken +lbl_801AD99C: +/* 801AD99C 001AA8FC 38 00 00 01 */ li r0, 1 +/* 801AD9A0 001AA900 98 1F 08 D0 */ stb r0, 0x8d0(r31) +/* 801AD9A4 001AA904 48 00 00 10 */ b lbl_801AD9B4 +lbl_801AD9A8: +/* 801AD9A8 001AA908 38 7F 08 C8 */ addi r3, r31, 0x8c8 +/* 801AD9AC 001AA90C 38 81 00 08 */ addi r4, r1, 8 +/* 801AD9B0 001AA910 48 19 33 15 */ bl __as__6CTokenFRC6CToken +lbl_801AD9B4: +/* 801AD9B4 001AA914 38 61 00 08 */ addi r3, r1, 8 +/* 801AD9B8 001AA918 38 80 FF FF */ li r4, -1 +/* 801AD9BC 001AA91C 48 19 34 85 */ bl __dt__6CTokenFv +/* 801AD9C0 001AA920 38 7F 08 C8 */ addi r3, r31, 0x8c8 +/* 801AD9C4 001AA924 48 19 33 C1 */ bl Lock__6CTokenFv +lbl_801AD9C8: +/* 801AD9C8 001AA928 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801AD9CC 001AA92C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801AD9D0 001AA930 7C 08 03 A6 */ mtlr r0 +/* 801AD9D4 001AA934 38 21 00 20 */ addi r1, r1, 0x20 +/* 801AD9D8 001AA938 4E 80 00 20 */ blr + +.global sub_801ad9dc +sub_801ad9dc: +/* 801AD9DC 001AA93C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801AD9E0 001AA940 7C 08 02 A6 */ mflr r0 +/* 801AD9E4 001AA944 90 01 00 24 */ stw r0, 0x24(r1) +/* 801AD9E8 001AA948 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801AD9EC 001AA94C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801AD9F0 001AA950 7C 9E 23 78 */ mr r30, r4 +/* 801AD9F4 001AA954 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801AD9F8 001AA958 7C 7D 1B 78 */ mr r29, r3 +/* 801AD9FC 001AA95C 88 03 08 E4 */ lbz r0, 0x8e4(r3) +/* 801ADA00 001AA960 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801ADA04 001AA964 40 82 00 5C */ bne lbl_801ADA60 +/* 801ADA08 001AA968 38 7D 08 C8 */ addi r3, r29, 0x8c8 +/* 801ADA0C 001AA96C 48 19 34 01 */ bl GetObj__6CTokenFv +/* 801ADA10 001AA970 7F A3 EB 78 */ mr r3, r29 +/* 801ADA14 001AA974 7F C4 F3 78 */ mr r4, r30 +/* 801ADA18 001AA978 48 00 00 E1 */ bl sub_801adaf8 +/* 801ADA1C 001AA97C 88 1D 08 E4 */ lbz r0, 0x8e4(r29) +/* 801ADA20 001AA980 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801ADA24 001AA984 40 82 00 3C */ bne lbl_801ADA60 +/* 801ADA28 001AA988 83 FD 08 E0 */ lwz r31, 0x8e0(r29) +/* 801ADA2C 001AA98C 48 00 00 10 */ b lbl_801ADA3C +lbl_801ADA30: +/* 801ADA30 001AA990 7F E3 FB 78 */ mr r3, r31 +/* 801ADA34 001AA994 48 19 33 D9 */ bl GetObj__6CTokenFv +/* 801ADA38 001AA998 3B FF 00 08 */ addi r31, r31, 8 +lbl_801ADA3C: +/* 801ADA3C 001AA99C 80 1D 08 D8 */ lwz r0, 0x8d8(r29) +/* 801ADA40 001AA9A0 80 7D 08 E0 */ lwz r3, 0x8e0(r29) +/* 801ADA44 001AA9A4 54 00 18 38 */ slwi r0, r0, 3 +/* 801ADA48 001AA9A8 7C 03 02 14 */ add r0, r3, r0 +/* 801ADA4C 001AA9AC 7C 1F 00 40 */ cmplw r31, r0 +/* 801ADA50 001AA9B0 40 82 FF E0 */ bne lbl_801ADA30 +/* 801ADA54 001AA9B4 7F A3 EB 78 */ mr r3, r29 +/* 801ADA58 001AA9B8 7F C4 F3 78 */ mr r4, r30 +/* 801ADA5C 001AA9BC 48 00 00 21 */ bl sub_801ada7c +lbl_801ADA60: +/* 801ADA60 001AA9C0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801ADA64 001AA9C4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801ADA68 001AA9C8 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801ADA6C 001AA9CC 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801ADA70 001AA9D0 7C 08 03 A6 */ mtlr r0 +/* 801ADA74 001AA9D4 38 21 00 20 */ addi r1, r1, 0x20 +/* 801ADA78 001AA9D8 4E 80 00 20 */ blr + +.global sub_801ada7c +sub_801ada7c: +/* 801ADA7C 001AA9DC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801ADA80 001AA9E0 7C 08 02 A6 */ mflr r0 +/* 801ADA84 001AA9E4 38 A0 00 01 */ li r5, 1 +/* 801ADA88 001AA9E8 90 01 00 14 */ stw r0, 0x14(r1) +/* 801ADA8C 001AA9EC 88 03 08 E4 */ lbz r0, 0x8e4(r3) +/* 801ADA90 001AA9F0 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 801ADA94 001AA9F4 98 03 08 E4 */ stb r0, 0x8e4(r3) +/* 801ADA98 001AA9F8 88 03 08 E4 */ lbz r0, 0x8e4(r3) +/* 801ADA9C 001AA9FC 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801ADAA0 001AAA00 41 82 00 44 */ beq lbl_801ADAE4 +/* 801ADAA4 001AAA04 80 E3 00 04 */ lwz r7, 4(r3) +/* 801ADAA8 001AAA08 38 A0 00 00 */ li r5, 0 +/* 801ADAAC 001AAA0C 80 C4 08 50 */ lwz r6, 0x850(r4) +/* 801ADAB0 001AAA10 54 E4 18 38 */ slwi r4, r7, 3 +/* 801ADAB4 001AAA14 90 E1 00 0C */ stw r7, 0xc(r1) +/* 801ADAB8 001AAA18 80 C6 00 20 */ lwz r6, 0x20(r6) +/* 801ADABC 001AAA1C 38 04 00 04 */ addi r0, r4, 4 +/* 801ADAC0 001AAA20 90 E1 00 08 */ stw r7, 8(r1) +/* 801ADAC4 001AAA24 7C 86 00 2E */ lwzx r4, r6, r0 +/* 801ADAC8 001AAA28 80 C4 01 2C */ lwz r6, 0x12c(r4) +/* 801ADACC 001AAA2C 80 86 11 3C */ lwz r4, 0x113c(r6) +/* 801ADAD0 001AAA30 38 04 FF FF */ addi r0, r4, -1 +/* 801ADAD4 001AAA34 90 06 11 3C */ stw r0, 0x113c(r6) +/* 801ADAD8 001AAA38 88 03 08 E4 */ lbz r0, 0x8e4(r3) +/* 801ADADC 001AAA3C 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 801ADAE0 001AAA40 98 03 08 E4 */ stb r0, 0x8e4(r3) +lbl_801ADAE4: +/* 801ADAE4 001AAA44 4B FF FC AD */ bl sub_801ad790 +/* 801ADAE8 001AAA48 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801ADAEC 001AAA4C 7C 08 03 A6 */ mtlr r0 +/* 801ADAF0 001AAA50 38 21 00 10 */ addi r1, r1, 0x10 +/* 801ADAF4 001AAA54 4E 80 00 20 */ blr + +.global sub_801adaf8 +sub_801adaf8: +/* 801ADAF8 001AAA58 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801ADAFC 001AAA5C 7C 08 02 A6 */ mflr r0 +/* 801ADB00 001AAA60 90 01 00 44 */ stw r0, 0x44(r1) +/* 801ADB04 001AAA64 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801ADB08 001AAA68 7C 7F 1B 78 */ mr r31, r3 +/* 801ADB0C 001AAA6C 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801ADB10 001AAA70 93 A1 00 34 */ stw r29, 0x34(r1) +/* 801ADB14 001AAA74 93 81 00 30 */ stw r28, 0x30(r1) +/* 801ADB18 001AAA78 7C 9C 23 78 */ mr r28, r4 +/* 801ADB1C 001AAA7C 80 03 08 D8 */ lwz r0, 0x8d8(r3) +/* 801ADB20 001AAA80 2C 00 00 00 */ cmpwi r0, 0 +/* 801ADB24 001AAA84 41 82 00 3C */ beq lbl_801ADB60 +/* 801ADB28 001AAA88 80 BF 08 E0 */ lwz r5, 0x8e0(r31) +/* 801ADB2C 001AAA8C 54 00 18 38 */ slwi r0, r0, 3 +/* 801ADB30 001AAA90 7C 85 02 14 */ add r4, r5, r0 +/* 801ADB34 001AAA94 48 00 00 18 */ b lbl_801ADB4C +lbl_801ADB38: +/* 801ADB38 001AAA98 80 65 00 00 */ lwz r3, 0(r5) +/* 801ADB3C 001AAA9C 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801ADB40 001AAAA0 28 00 00 00 */ cmplwi r0, 0 +/* 801ADB44 001AAAA4 41 82 01 50 */ beq lbl_801ADC94 +/* 801ADB48 001AAAA8 38 A5 00 08 */ addi r5, r5, 8 +lbl_801ADB4C: +/* 801ADB4C 001AAAAC 7C 05 20 40 */ cmplw r5, r4 +/* 801ADB50 001AAAB0 40 82 FF E8 */ bne lbl_801ADB38 +/* 801ADB54 001AAAB4 7F E3 FB 78 */ mr r3, r31 +/* 801ADB58 001AAAB8 7F 84 E3 78 */ mr r4, r28 +/* 801ADB5C 001AAABC 4B FF FF 21 */ bl sub_801ada7c +lbl_801ADB60: +/* 801ADB60 001AAAC0 80 7F 08 C8 */ lwz r3, 0x8c8(r31) +/* 801ADB64 001AAAC4 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801ADB68 001AAAC8 28 00 00 00 */ cmplwi r0, 0 +/* 801ADB6C 001AAACC 41 82 01 28 */ beq lbl_801ADC94 +/* 801ADB70 001AAAD0 3B A1 00 18 */ addi r29, r1, 0x18 +/* 801ADB74 001AAAD4 38 9F 08 C8 */ addi r4, r31, 0x8c8 +/* 801ADB78 001AAAD8 7F A3 EB 78 */ mr r3, r29 +/* 801ADB7C 001AAADC 48 19 33 2D */ bl __ct__6CTokenFRC6CToken +/* 801ADB80 001AAAE0 7F A3 EB 78 */ mr r3, r29 +/* 801ADB84 001AAAE4 48 19 32 89 */ bl GetObj__6CTokenFv +/* 801ADB88 001AAAE8 83 C3 00 04 */ lwz r30, 4(r3) +/* 801ADB8C 001AAAEC 93 C1 00 20 */ stw r30, 0x20(r1) +/* 801ADB90 001AAAF0 80 9E 00 04 */ lwz r4, 4(r30) +/* 801ADB94 001AAAF4 2C 04 00 00 */ cmpwi r4, 0 +/* 801ADB98 001AAAF8 40 82 00 20 */ bne lbl_801ADBB8 +/* 801ADB9C 001AAAFC 7F E3 FB 78 */ mr r3, r31 +/* 801ADBA0 001AAB00 7F 84 E3 78 */ mr r4, r28 +/* 801ADBA4 001AAB04 4B FF FE D9 */ bl sub_801ada7c +/* 801ADBA8 001AAB08 7F A3 EB 78 */ mr r3, r29 +/* 801ADBAC 001AAB0C 38 80 00 00 */ li r4, 0 +/* 801ADBB0 001AAB10 48 19 32 91 */ bl __dt__6CTokenFv +/* 801ADBB4 001AAB14 48 00 00 E0 */ b lbl_801ADC94 +lbl_801ADBB8: +/* 801ADBB8 001AAB18 80 1F 08 D8 */ lwz r0, 0x8d8(r31) +/* 801ADBBC 001AAB1C 2C 00 00 00 */ cmpwi r0, 0 +/* 801ADBC0 001AAB20 40 82 00 C8 */ bne lbl_801ADC88 +/* 801ADBC4 001AAB24 38 7F 08 D4 */ addi r3, r31, 0x8d4 +/* 801ADBC8 001AAB28 4B E5 AD 95 */ bl "reserve__Q24rstl42vector<6CToken,Q24rstl17rmemory_allocator>Fi" +/* 801ADBCC 001AAB2C 3B 80 00 00 */ li r28, 0 +/* 801ADBD0 001AAB30 3B A0 00 00 */ li r29, 0 +/* 801ADBD4 001AAB34 48 00 00 A8 */ b lbl_801ADC7C +lbl_801ADBD8: +/* 801ADBD8 001AAB38 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801ADBDC 001AAB3C 38 61 00 08 */ addi r3, r1, 8 +/* 801ADBE0 001AAB40 80 1E 00 0C */ lwz r0, 0xc(r30) +/* 801ADBE4 001AAB44 81 84 00 00 */ lwz r12, 0(r4) +/* 801ADBE8 001AAB48 7C A0 EA 14 */ add r5, r0, r29 +/* 801ADBEC 001AAB4C 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801ADBF0 001AAB50 7D 89 03 A6 */ mtctr r12 +/* 801ADBF4 001AAB54 4E 80 04 21 */ bctrl +/* 801ADBF8 001AAB58 38 61 00 10 */ addi r3, r1, 0x10 +/* 801ADBFC 001AAB5C 38 81 00 08 */ addi r4, r1, 8 +/* 801ADC00 001AAB60 48 19 32 A9 */ bl __ct__6CTokenFRC6CToken +/* 801ADC04 001AAB64 38 61 00 08 */ addi r3, r1, 8 +/* 801ADC08 001AAB68 38 80 FF FF */ li r4, -1 +/* 801ADC0C 001AAB6C 48 19 32 35 */ bl __dt__6CTokenFv +/* 801ADC10 001AAB70 38 61 00 10 */ addi r3, r1, 0x10 +/* 801ADC14 001AAB74 48 19 31 71 */ bl Lock__6CTokenFv +/* 801ADC18 001AAB78 80 1F 08 D8 */ lwz r0, 0x8d8(r31) +/* 801ADC1C 001AAB7C 80 BF 08 DC */ lwz r5, 0x8dc(r31) +/* 801ADC20 001AAB80 7C 00 28 00 */ cmpw r0, r5 +/* 801ADC24 001AAB84 41 80 00 1C */ blt lbl_801ADC40 +/* 801ADC28 001AAB88 2C 05 00 00 */ cmpwi r5, 0 +/* 801ADC2C 001AAB8C 38 7F 08 D4 */ addi r3, r31, 0x8d4 +/* 801ADC30 001AAB90 38 80 00 04 */ li r4, 4 +/* 801ADC34 001AAB94 41 82 00 08 */ beq lbl_801ADC3C +/* 801ADC38 001AAB98 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801ADC3C: +/* 801ADC3C 001AAB9C 4B E5 AD 21 */ bl "reserve__Q24rstl42vector<6CToken,Q24rstl17rmemory_allocator>Fi" +lbl_801ADC40: +/* 801ADC40 001AABA0 80 1F 08 D8 */ lwz r0, 0x8d8(r31) +/* 801ADC44 001AABA4 80 7F 08 E0 */ lwz r3, 0x8e0(r31) +/* 801ADC48 001AABA8 54 00 18 38 */ slwi r0, r0, 3 +/* 801ADC4C 001AABAC 7C 63 02 15 */ add. r3, r3, r0 +/* 801ADC50 001AABB0 41 82 00 0C */ beq lbl_801ADC5C +/* 801ADC54 001AABB4 38 81 00 10 */ addi r4, r1, 0x10 +/* 801ADC58 001AABB8 48 19 32 51 */ bl __ct__6CTokenFRC6CToken +lbl_801ADC5C: +/* 801ADC5C 001AABBC 80 BF 08 D8 */ lwz r5, 0x8d8(r31) +/* 801ADC60 001AABC0 38 61 00 10 */ addi r3, r1, 0x10 +/* 801ADC64 001AABC4 38 80 FF FF */ li r4, -1 +/* 801ADC68 001AABC8 38 05 00 01 */ addi r0, r5, 1 +/* 801ADC6C 001AABCC 90 1F 08 D8 */ stw r0, 0x8d8(r31) +/* 801ADC70 001AABD0 48 19 31 D1 */ bl __dt__6CTokenFv +/* 801ADC74 001AABD4 3B BD 00 08 */ addi r29, r29, 8 +/* 801ADC78 001AABD8 3B 9C 00 01 */ addi r28, r28, 1 +lbl_801ADC7C: +/* 801ADC7C 001AABDC 80 1E 00 04 */ lwz r0, 4(r30) +/* 801ADC80 001AABE0 7C 1C 00 00 */ cmpw r28, r0 +/* 801ADC84 001AABE4 41 80 FF 54 */ blt lbl_801ADBD8 +lbl_801ADC88: +/* 801ADC88 001AABE8 38 61 00 18 */ addi r3, r1, 0x18 +/* 801ADC8C 001AABEC 38 80 00 00 */ li r4, 0 +/* 801ADC90 001AABF0 48 19 31 B1 */ bl __dt__6CTokenFv +lbl_801ADC94: +/* 801ADC94 001AABF4 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801ADC98 001AABF8 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801ADC9C 001AABFC 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801ADCA0 001AAC00 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 801ADCA4 001AAC04 83 81 00 30 */ lwz r28, 0x30(r1) +/* 801ADCA8 001AAC08 7C 08 03 A6 */ mtlr r0 +/* 801ADCAC 001AAC0C 38 21 00 40 */ addi r1, r1, 0x40 +/* 801ADCB0 001AAC10 4E 80 00 20 */ blr + +.global sub_801adcb4 +sub_801adcb4: +/* 801ADCB4 001AAC14 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801ADCB8 001AAC18 7C 08 02 A6 */ mflr r0 +/* 801ADCBC 001AAC1C 90 01 00 64 */ stw r0, 0x64(r1) +/* 801ADCC0 001AAC20 BF 61 00 4C */ stmw r27, 0x4c(r1) +/* 801ADCC4 001AAC24 7C 7D 1B 78 */ mr r29, r3 +/* 801ADCC8 001AAC28 7C 9E 23 78 */ mr r30, r4 +/* 801ADCCC 001AAC2C 7C BF 2B 78 */ mr r31, r5 +/* 801ADCD0 001AAC30 3B 60 00 00 */ li r27, 0 +/* 801ADCD4 001AAC34 81 83 00 00 */ lwz r12, 0(r3) +/* 801ADCD8 001AAC38 81 8C 02 C0 */ lwz r12, 0x2c0(r12) +/* 801ADCDC 001AAC3C 7D 89 03 A6 */ mtctr r12 +/* 801ADCE0 001AAC40 4E 80 04 21 */ bctrl +/* 801ADCE4 001AAC44 7C 7C 1B 78 */ mr r28, r3 +/* 801ADCE8 001AAC48 80 03 00 08 */ lwz r0, 8(r3) +/* 801ADCEC 001AAC4C 28 00 00 00 */ cmplwi r0, 0 +/* 801ADCF0 001AAC50 41 82 00 0C */ beq lbl_801ADCFC +/* 801ADCF4 001AAC54 38 60 00 01 */ li r3, 1 +/* 801ADCF8 001AAC58 48 00 00 38 */ b lbl_801ADD30 +lbl_801ADCFC: +/* 801ADCFC 001AAC5C 88 1C 00 04 */ lbz r0, 4(r28) +/* 801ADD00 001AAC60 28 00 00 00 */ cmplwi r0, 0 +/* 801ADD04 001AAC64 41 82 00 28 */ beq lbl_801ADD2C +/* 801ADD08 001AAC68 80 9C 00 00 */ lwz r4, 0(r28) +/* 801ADD0C 001AAC6C 80 04 00 10 */ lwz r0, 0x10(r4) +/* 801ADD10 001AAC70 28 00 00 00 */ cmplwi r0, 0 +/* 801ADD14 001AAC74 41 82 00 18 */ beq lbl_801ADD2C +/* 801ADD18 001AAC78 48 19 30 F5 */ bl GetObj__6CTokenFv +/* 801ADD1C 001AAC7C 80 03 00 04 */ lwz r0, 4(r3) +/* 801ADD20 001AAC80 38 60 00 01 */ li r3, 1 +/* 801ADD24 001AAC84 90 1C 00 08 */ stw r0, 8(r28) +/* 801ADD28 001AAC88 48 00 00 08 */ b lbl_801ADD30 +lbl_801ADD2C: +/* 801ADD2C 001AAC8C 38 60 00 00 */ li r3, 0 +lbl_801ADD30: +/* 801ADD30 001AAC90 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801ADD34 001AAC94 41 82 01 34 */ beq lbl_801ADE68 +/* 801ADD38 001AAC98 A0 1D 00 08 */ lhz r0, 8(r29) +/* 801ADD3C 001AAC9C 7F E3 FB 78 */ mr r3, r31 +/* 801ADD40 001AACA0 38 81 00 1C */ addi r4, r1, 0x1c +/* 801ADD44 001AACA4 38 A0 00 09 */ li r5, 9 +/* 801ADD48 001AACA8 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801ADD4C 001AACAC 38 C0 00 06 */ li r6, 6 +/* 801ADD50 001AACB0 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 801ADD54 001AACB4 4B E9 79 DD */ bl CanCreateProjectile__13CStateManagerCF9TUniqueId11EWeaponTypei +/* 801ADD58 001AACB8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801ADD5C 001AACBC 41 82 01 0C */ beq lbl_801ADE68 +/* 801ADD60 001AACC0 7F A3 EB 78 */ mr r3, r29 +/* 801ADD64 001AACC4 81 9D 00 00 */ lwz r12, 0(r29) +/* 801ADD68 001AACC8 81 8C 02 C0 */ lwz r12, 0x2c0(r12) +/* 801ADD6C 001AACCC 7D 89 03 A6 */ mtctr r12 +/* 801ADD70 001AACD0 4E 80 04 21 */ bctrl +/* 801ADD74 001AACD4 80 03 00 0C */ lwz r0, 0xc(r3) +/* 801ADD78 001AACD8 90 01 00 28 */ stw r0, 0x28(r1) +/* 801ADD7C 001AACDC 88 03 00 10 */ lbz r0, 0x10(r3) +/* 801ADD80 001AACE0 98 01 00 2C */ stb r0, 0x2c(r1) +/* 801ADD84 001AACE4 C0 23 00 14 */ lfs f1, 0x14(r3) +/* 801ADD88 001AACE8 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 801ADD8C 001AACEC C0 03 00 18 */ lfs f0, 0x18(r3) +/* 801ADD90 001AACF0 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801ADD94 001AACF4 C0 03 00 1C */ lfs f0, 0x1c(r3) +/* 801ADD98 001AACF8 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 801ADD9C 001AACFC C0 03 00 20 */ lfs f0, 0x20(r3) +/* 801ADDA0 001AAD00 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 801ADDA4 001AAD04 88 03 00 24 */ lbz r0, 0x24(r3) +/* 801ADDA8 001AAD08 98 01 00 40 */ stb r0, 0x40(r1) +/* 801ADDAC 001AAD0C 80 1D 07 88 */ lwz r0, 0x788(r29) +/* 801ADDB0 001AAD10 2C 00 00 02 */ cmpwi r0, 2 +/* 801ADDB4 001AAD14 41 80 00 10 */ blt lbl_801ADDC4 +/* 801ADDB8 001AAD18 C0 02 A8 B4 */ lfs f0, lbl_805AC5D4@sda21(r2) +/* 801ADDBC 001AAD1C EC 00 00 72 */ fmuls f0, f0, f1 +/* 801ADDC0 001AAD20 D0 01 00 30 */ stfs f0, 0x30(r1) +lbl_801ADDC4: +/* 801ADDC4 001AAD24 3C 80 80 3D */ lis r4, lbl_803D1590@ha +/* 801ADDC8 001AAD28 38 60 03 E0 */ li r3, 0x3e0 +/* 801ADDCC 001AAD2C 38 84 15 90 */ addi r4, r4, lbl_803D1590@l +/* 801ADDD0 001AAD30 38 A0 00 00 */ li r5, 0 +/* 801ADDD4 001AAD34 38 84 00 7E */ addi r4, r4, 0x7e +/* 801ADDD8 001AAD38 48 16 7A 95 */ bl __nw__FUlPCcPCc +/* 801ADDDC 001AAD3C 7C 7C 1B 79 */ or. r28, r3, r3 +/* 801ADDE0 001AAD40 41 82 00 70 */ beq lbl_801ADE50 +/* 801ADDE4 001AAD44 A0 BD 00 08 */ lhz r5, 8(r29) +/* 801ADDE8 001AAD48 7F E4 FB 78 */ mr r4, r31 +/* 801ADDEC 001AAD4C 38 61 00 08 */ addi r3, r1, 8 +/* 801ADDF0 001AAD50 B0 A1 00 14 */ sth r5, 0x14(r1) +/* 801ADDF4 001AAD54 80 1D 00 04 */ lwz r0, 4(r29) +/* 801ADDF8 001AAD58 B0 A1 00 10 */ sth r5, 0x10(r1) +/* 801ADDFC 001AAD5C 90 01 00 20 */ stw r0, 0x20(r1) +/* 801ADE00 001AAD60 90 01 00 24 */ stw r0, 0x24(r1) +/* 801ADE04 001AAD64 4B E9 F2 D9 */ bl AllocateUniqueId__13CStateManagerFv +/* 801ADE08 001AAD68 A0 01 00 08 */ lhz r0, 8(r1) +/* 801ADE0C 001AAD6C 7F A3 EB 78 */ mr r3, r29 +/* 801ADE10 001AAD70 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801ADE14 001AAD74 81 9D 00 00 */ lwz r12, 0(r29) +/* 801ADE18 001AAD78 81 8C 02 C0 */ lwz r12, 0x2c0(r12) +/* 801ADE1C 001AAD7C 7D 89 03 A6 */ mtctr r12 +/* 801ADE20 001AAD80 4E 80 04 21 */ bctrl +/* 801ADE24 001AAD84 88 1D 08 E4 */ lbz r0, 0x8e4(r29) +/* 801ADE28 001AAD88 7C 65 1B 78 */ mr r5, r3 +/* 801ADE2C 001AAD8C 7F 83 E3 78 */ mr r3, r28 +/* 801ADE30 001AAD90 7F C6 F3 78 */ mr r6, r30 +/* 801ADE34 001AAD94 54 04 FF FE */ rlwinm r4, r0, 0x1f, 0x1f, 0x1f +/* 801ADE38 001AAD98 38 E1 00 28 */ addi r7, r1, 0x28 +/* 801ADE3C 001AAD9C 39 01 00 0C */ addi r8, r1, 0xc +/* 801ADE40 001AADA0 39 21 00 24 */ addi r9, r1, 0x24 +/* 801ADE44 001AADA4 39 41 00 14 */ addi r10, r1, 0x14 +/* 801ADE48 001AADA8 48 00 65 7D */ bl "__ct__19CFlaahgraProjectileFbRC28TToken<18CWeaponDescription>RC12CTransform4fRC11CDamageInfo9TUniqueId7TAreaId9TUniqueId" +/* 801ADE4C 001AADAC 7C 7C 1B 78 */ mr r28, r3 +lbl_801ADE50: +/* 801ADE50 001AADB0 28 1C 00 00 */ cmplwi r28, 0 +/* 801ADE54 001AADB4 7F 9B E3 78 */ mr r27, r28 +/* 801ADE58 001AADB8 41 82 00 10 */ beq lbl_801ADE68 +/* 801ADE5C 001AADBC 7F E3 FB 78 */ mr r3, r31 +/* 801ADE60 001AADC0 7F 84 E3 78 */ mr r4, r28 +/* 801ADE64 001AADC4 4B E9 EE 91 */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +lbl_801ADE68: +/* 801ADE68 001AADC8 7F 63 DB 78 */ mr r3, r27 +/* 801ADE6C 001AADCC BB 61 00 4C */ lmw r27, 0x4c(r1) +/* 801ADE70 001AADD0 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801ADE74 001AADD4 7C 08 03 A6 */ mtlr r0 +/* 801ADE78 001AADD8 38 21 00 60 */ addi r1, r1, 0x60 +/* 801ADE7C 001AADDC 4E 80 00 20 */ blr + +.global sub_801ade80 +sub_801ade80: +/* 801ADE80 001AADE0 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801ADE84 001AADE4 80 03 07 AC */ lwz r0, 0x7ac(r3) +/* 801ADE88 001AADE8 C0 A3 00 38 */ lfs f5, 0x38(r3) +/* 801ADE8C 001AADEC 2C 00 00 00 */ cmpwi r0, 0 +/* 801ADE90 001AADF0 C0 C3 00 48 */ lfs f6, 0x48(r3) +/* 801ADE94 001AADF4 C0 E3 00 58 */ lfs f7, 0x58(r3) +/* 801ADE98 001AADF8 40 82 00 3C */ bne lbl_801ADED4 +/* 801ADE9C 001AADFC C0 83 00 54 */ lfs f4, 0x54(r3) +/* 801ADEA0 001AAE00 38 81 00 14 */ addi r4, r1, 0x14 +/* 801ADEA4 001AAE04 C0 43 00 44 */ lfs f2, 0x44(r3) +/* 801ADEA8 001AAE08 C0 63 00 34 */ lfs f3, 0x34(r3) +/* 801ADEAC 001AAE0C FC 00 20 50 */ fneg f0, f4 +/* 801ADEB0 001AAE10 FC 20 10 50 */ fneg f1, f2 +/* 801ADEB4 001AAE14 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 801ADEB8 001AAE18 FC 40 18 50 */ fneg f2, f3 +/* 801ADEBC 001AAE1C D0 61 00 20 */ stfs f3, 0x20(r1) +/* 801ADEC0 001AAE20 D0 81 00 28 */ stfs f4, 0x28(r1) +/* 801ADEC4 001AAE24 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801ADEC8 001AAE28 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801ADECC 001AAE2C D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801ADED0 001AAE30 48 00 00 20 */ b lbl_801ADEF0 +lbl_801ADED4: +/* 801ADED4 001AAE34 C0 43 00 54 */ lfs f2, 0x54(r3) +/* 801ADED8 001AAE38 38 81 00 08 */ addi r4, r1, 8 +/* 801ADEDC 001AAE3C C0 23 00 44 */ lfs f1, 0x44(r3) +/* 801ADEE0 001AAE40 C0 03 00 34 */ lfs f0, 0x34(r3) +/* 801ADEE4 001AAE44 D0 01 00 08 */ stfs f0, 8(r1) +/* 801ADEE8 001AAE48 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 801ADEEC 001AAE4C D0 41 00 10 */ stfs f2, 0x10(r1) +lbl_801ADEF0: +/* 801ADEF0 001AAE50 C0 44 00 00 */ lfs f2, 0(r4) +/* 801ADEF4 001AAE54 C0 64 00 04 */ lfs f3, 4(r4) +/* 801ADEF8 001AAE58 C0 84 00 08 */ lfs f4, 8(r4) +/* 801ADEFC 001AAE5C C1 62 A8 B8 */ lfs f11, lbl_805AC5D8@sda21(r2) +/* 801ADF00 001AAE60 D0 43 08 94 */ stfs f2, 0x894(r3) +/* 801ADF04 001AAE64 D0 63 08 98 */ stfs f3, 0x898(r3) +/* 801ADF08 001AAE68 D0 83 08 9C */ stfs f4, 0x89c(r3) +/* 801ADF0C 001AAE6C 80 03 07 AC */ lwz r0, 0x7ac(r3) +/* 801ADF10 001AAE70 2C 00 00 00 */ cmpwi r0, 0 +/* 801ADF14 001AAE74 40 82 00 0C */ bne lbl_801ADF20 +/* 801ADF18 001AAE78 38 A3 08 60 */ addi r5, r3, 0x860 +/* 801ADF1C 001AAE7C 48 00 00 08 */ b lbl_801ADF24 +lbl_801ADF20: +/* 801ADF20 001AAE80 38 A3 08 2C */ addi r5, r3, 0x82c +lbl_801ADF24: +/* 801ADF24 001AAE84 C0 22 A8 BC */ lfs f1, lbl_805AC5DC@sda21(r2) +/* 801ADF28 001AAE88 38 C5 00 04 */ addi r6, r5, 4 +/* 801ADF2C 001AAE8C 48 00 00 58 */ b lbl_801ADF84 +lbl_801ADF30: +/* 801ADF30 001AAE90 C1 06 00 04 */ lfs f8, 4(r6) +/* 801ADF34 001AAE94 C1 26 00 00 */ lfs f9, 0(r6) +/* 801ADF38 001AAE98 EC 03 02 32 */ fmuls f0, f3, f8 +/* 801ADF3C 001AAE9C C1 46 00 08 */ lfs f10, 8(r6) +/* 801ADF40 001AAEA0 EC 02 02 7A */ fmadds f0, f2, f9, f0 +/* 801ADF44 001AAEA4 EC 04 02 BA */ fmadds f0, f4, f10, f0 +/* 801ADF48 001AAEA8 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801ADF4C 001AAEAC 4C 41 13 82 */ cror 2, 1, 2 +/* 801ADF50 001AAEB0 40 82 00 30 */ bne lbl_801ADF80 +/* 801ADF54 001AAEB4 EC 06 02 32 */ fmuls f0, f6, f8 +/* 801ADF58 001AAEB8 EC 05 02 7A */ fmadds f0, f5, f9, f0 +/* 801ADF5C 001AAEBC EC 07 02 BA */ fmadds f0, f7, f10, f0 +/* 801ADF60 001AAEC0 FC 00 58 40 */ fcmpo cr0, f0, f11 +/* 801ADF64 001AAEC4 40 81 00 1C */ ble lbl_801ADF80 +/* 801ADF68 001AAEC8 D1 23 08 94 */ stfs f9, 0x894(r3) +/* 801ADF6C 001AAECC FD 60 00 90 */ fmr f11, f0 +/* 801ADF70 001AAED0 C0 06 00 04 */ lfs f0, 4(r6) +/* 801ADF74 001AAED4 D0 03 08 98 */ stfs f0, 0x898(r3) +/* 801ADF78 001AAED8 C0 06 00 08 */ lfs f0, 8(r6) +/* 801ADF7C 001AAEDC D0 03 08 9C */ stfs f0, 0x89c(r3) +lbl_801ADF80: +/* 801ADF80 001AAEE0 38 C6 00 0C */ addi r6, r6, 0xc +lbl_801ADF84: +/* 801ADF84 001AAEE4 80 05 00 00 */ lwz r0, 0(r5) +/* 801ADF88 001AAEE8 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801ADF8C 001AAEEC 7C 85 02 14 */ add r4, r5, r0 +/* 801ADF90 001AAEF0 38 04 00 04 */ addi r0, r4, 4 +/* 801ADF94 001AAEF4 7C 06 00 40 */ cmplw r6, r0 +/* 801ADF98 001AAEF8 40 82 FF 98 */ bne lbl_801ADF30 +/* 801ADF9C 001AAEFC 38 21 00 30 */ addi r1, r1, 0x30 +/* 801ADFA0 001AAF00 4E 80 00 20 */ blr + +.global sub_801adfa4 +sub_801adfa4: +/* 801ADFA4 001AAF04 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 801ADFA8 001AAF08 7C 08 02 A6 */ mflr r0 +/* 801ADFAC 001AAF0C 90 01 00 74 */ stw r0, 0x74(r1) +/* 801ADFB0 001AAF10 DB E1 00 60 */ stfd f31, 0x60(r1) +/* 801ADFB4 001AAF14 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 801ADFB8 001AAF18 DB C1 00 50 */ stfd f30, 0x50(r1) +/* 801ADFBC 001AAF1C F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 +/* 801ADFC0 001AAF20 DB A1 00 40 */ stfd f29, 0x40(r1) +/* 801ADFC4 001AAF24 F3 A1 00 48 */ psq_st f29, 72(r1), 0, qr0 +/* 801ADFC8 001AAF28 DB 81 00 30 */ stfd f28, 0x30(r1) +/* 801ADFCC 001AAF2C F3 81 00 38 */ psq_st f28, 56(r1), 0, qr0 +/* 801ADFD0 001AAF30 BF 41 00 18 */ stmw r26, 0x18(r1) +/* 801ADFD4 001AAF34 7C BC 2B 78 */ mr r28, r5 +/* 801ADFD8 001AAF38 7C 9B 23 78 */ mr r27, r4 +/* 801ADFDC 001AAF3C 80 85 08 4C */ lwz r4, 0x84c(r5) +/* 801ADFE0 001AAF40 3B DB 07 74 */ addi r30, r27, 0x774 +/* 801ADFE4 001AAF44 A3 ED A3 8C */ lhz r31, lbl_805A8F4C@sda21(r13) +/* 801ADFE8 001AAF48 7C 7A 1B 78 */ mr r26, r3 +/* 801ADFEC 001AAF4C C3 82 A8 C0 */ lfs f28, lbl_805AC5E0@sda21(r2) +/* 801ADFF0 001AAF50 7F DD F3 78 */ mr r29, r30 +/* 801ADFF4 001AAF54 C3 E4 00 40 */ lfs f31, 0x40(r4) +/* 801ADFF8 001AAF58 C3 C4 00 50 */ lfs f30, 0x50(r4) +/* 801ADFFC 001AAF5C C3 A4 00 60 */ lfs f29, 0x60(r4) +/* 801AE000 001AAF60 48 00 00 64 */ b lbl_801AE064 +lbl_801AE004: +/* 801AE004 001AAF64 A0 1D 00 00 */ lhz r0, 0(r29) +/* 801AE008 001AAF68 7F 83 E3 78 */ mr r3, r28 +/* 801AE00C 001AAF6C 38 81 00 08 */ addi r4, r1, 8 +/* 801AE010 001AAF70 B0 01 00 08 */ sth r0, 8(r1) +/* 801AE014 001AAF74 4B E9 E5 91 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801AE018 001AAF78 28 03 00 00 */ cmplwi r3, 0 +/* 801AE01C 001AAF7C 41 82 00 44 */ beq lbl_801AE060 +/* 801AE020 001AAF80 88 03 00 30 */ lbz r0, 0x30(r3) +/* 801AE024 001AAF84 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801AE028 001AAF88 41 82 00 38 */ beq lbl_801AE060 +/* 801AE02C 001AAF8C C0 03 00 50 */ lfs f0, 0x50(r3) +/* 801AE030 001AAF90 C0 23 00 40 */ lfs f1, 0x40(r3) +/* 801AE034 001AAF94 EC 40 F0 28 */ fsubs f2, f0, f30 +/* 801AE038 001AAF98 C0 03 00 60 */ lfs f0, 0x60(r3) +/* 801AE03C 001AAF9C EC 61 F8 28 */ fsubs f3, f1, f31 +/* 801AE040 001AAFA0 EC 20 E8 28 */ fsubs f1, f0, f29 +/* 801AE044 001AAFA4 EC 02 00 B2 */ fmuls f0, f2, f2 +/* 801AE048 001AAFA8 EC 03 00 FA */ fmadds f0, f3, f3, f0 +/* 801AE04C 001AAFAC EC 01 00 7A */ fmadds f0, f1, f1, f0 +/* 801AE050 001AAFB0 FC 00 E0 40 */ fcmpo cr0, f0, f28 +/* 801AE054 001AAFB4 40 81 00 0C */ ble lbl_801AE060 +/* 801AE058 001AAFB8 A3 FD 00 00 */ lhz r31, 0(r29) +/* 801AE05C 001AAFBC FF 80 00 90 */ fmr f28, f0 +lbl_801AE060: +/* 801AE060 001AAFC0 3B BD 00 02 */ addi r29, r29, 2 +lbl_801AE064: +/* 801AE064 001AAFC4 80 1B 07 70 */ lwz r0, 0x770(r27) +/* 801AE068 001AAFC8 54 00 08 3C */ slwi r0, r0, 1 +/* 801AE06C 001AAFCC 7C 1E 02 14 */ add r0, r30, r0 +/* 801AE070 001AAFD0 7C 1D 00 40 */ cmplw r29, r0 +/* 801AE074 001AAFD4 40 82 FF 90 */ bne lbl_801AE004 +/* 801AE078 001AAFD8 B3 FA 00 00 */ sth r31, 0(r26) +/* 801AE07C 001AAFDC E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 801AE080 001AAFE0 CB E1 00 60 */ lfd f31, 0x60(r1) +/* 801AE084 001AAFE4 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 +/* 801AE088 001AAFE8 CB C1 00 50 */ lfd f30, 0x50(r1) +/* 801AE08C 001AAFEC E3 A1 00 48 */ psq_l f29, 72(r1), 0, qr0 +/* 801AE090 001AAFF0 CB A1 00 40 */ lfd f29, 0x40(r1) +/* 801AE094 001AAFF4 E3 81 00 38 */ psq_l f28, 56(r1), 0, qr0 +/* 801AE098 001AAFF8 CB 81 00 30 */ lfd f28, 0x30(r1) +/* 801AE09C 001AAFFC BB 41 00 18 */ lmw r26, 0x18(r1) +/* 801AE0A0 001AB000 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801AE0A4 001AB004 7C 08 03 A6 */ mtlr r0 +/* 801AE0A8 001AB008 38 21 00 70 */ addi r1, r1, 0x70 +/* 801AE0AC 001AB00C 4E 80 00 20 */ blr + +.global sub_801ae0b0 +sub_801ae0b0: +/* 801AE0B0 001AB010 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801AE0B4 001AB014 7C 08 02 A6 */ mflr r0 +/* 801AE0B8 001AB018 90 01 00 34 */ stw r0, 0x34(r1) +/* 801AE0BC 001AB01C 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801AE0C0 001AB020 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801AE0C4 001AB024 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801AE0C8 001AB028 7C 9D 23 78 */ mr r29, r4 +/* 801AE0CC 001AB02C 93 81 00 20 */ stw r28, 0x20(r1) +/* 801AE0D0 001AB030 7C 7C 1B 78 */ mr r28, r3 +/* 801AE0D4 001AB034 3B DC 07 74 */ addi r30, r28, 0x774 +/* 801AE0D8 001AB038 80 A3 07 70 */ lwz r5, 0x770(r3) +/* 801AE0DC 001AB03C 38 60 00 00 */ li r3, 0 +/* 801AE0E0 001AB040 2C 05 00 00 */ cmpwi r5, 0 +/* 801AE0E4 001AB044 40 81 00 40 */ ble lbl_801AE124 +/* 801AE0E8 001AB048 2C 05 00 08 */ cmpwi r5, 8 +/* 801AE0EC 001AB04C 38 85 FF F8 */ addi r4, r5, -8 +/* 801AE0F0 001AB050 40 81 00 20 */ ble lbl_801AE110 +/* 801AE0F4 001AB054 38 04 00 07 */ addi r0, r4, 7 +/* 801AE0F8 001AB058 54 00 E8 FE */ srwi r0, r0, 3 +/* 801AE0FC 001AB05C 7C 09 03 A6 */ mtctr r0 +/* 801AE100 001AB060 2C 04 00 00 */ cmpwi r4, 0 +/* 801AE104 001AB064 40 81 00 0C */ ble lbl_801AE110 +lbl_801AE108: +/* 801AE108 001AB068 38 63 00 08 */ addi r3, r3, 8 +/* 801AE10C 001AB06C 42 00 FF FC */ bdnz lbl_801AE108 +lbl_801AE110: +/* 801AE110 001AB070 7C 03 28 50 */ subf r0, r3, r5 +/* 801AE114 001AB074 7C 09 03 A6 */ mtctr r0 +/* 801AE118 001AB078 7C 03 28 00 */ cmpw r3, r5 +/* 801AE11C 001AB07C 40 80 00 08 */ bge lbl_801AE124 +lbl_801AE120: +/* 801AE120 001AB080 42 00 00 00 */ bdnz lbl_801AE120 +lbl_801AE124: +/* 801AE124 001AB084 38 00 00 00 */ li r0, 0 +/* 801AE128 001AB088 90 1C 07 70 */ stw r0, 0x770(r28) +/* 801AE12C 001AB08C 83 FC 00 2C */ lwz r31, 0x2c(r28) +/* 801AE130 001AB090 48 00 00 8C */ b lbl_801AE1BC +lbl_801AE134: +/* 801AE134 001AB094 80 1F 00 00 */ lwz r0, 0(r31) +/* 801AE138 001AB098 2C 00 00 19 */ cmpwi r0, 0x19 +/* 801AE13C 001AB09C 40 82 00 7C */ bne lbl_801AE1B8 +/* 801AE140 001AB0A0 80 1F 00 04 */ lwz r0, 4(r31) +/* 801AE144 001AB0A4 2C 00 00 06 */ cmpwi r0, 6 +/* 801AE148 001AB0A8 40 82 00 70 */ bne lbl_801AE1B8 +/* 801AE14C 001AB0AC 80 1F 00 08 */ lwz r0, 8(r31) +/* 801AE150 001AB0B0 7F A4 EB 78 */ mr r4, r29 +/* 801AE154 001AB0B4 38 61 00 0C */ addi r3, r1, 0xc +/* 801AE158 001AB0B8 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801AE15C 001AB0BC 90 01 00 14 */ stw r0, 0x14(r1) +/* 801AE160 001AB0C0 4B E9 9D BD */ bl GetIdForScript__13CStateManagerCF9TEditorId +/* 801AE164 001AB0C4 A0 01 00 0C */ lhz r0, 0xc(r1) +/* 801AE168 001AB0C8 7F A3 EB 78 */ mr r3, r29 +/* 801AE16C 001AB0CC 38 81 00 08 */ addi r4, r1, 8 +/* 801AE170 001AB0D0 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801AE174 001AB0D4 B0 01 00 08 */ sth r0, 8(r1) +/* 801AE178 001AB0D8 4B E9 E4 2D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801AE17C 001AB0DC 7C 64 1B 78 */ mr r4, r3 +/* 801AE180 001AB0E0 38 61 00 18 */ addi r3, r1, 0x18 +/* 801AE184 001AB0E4 4B EF 83 C9 */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 801AE188 001AB0E8 80 03 00 04 */ lwz r0, 4(r3) +/* 801AE18C 001AB0EC 28 00 00 00 */ cmplwi r0, 0 +/* 801AE190 001AB0F0 41 82 00 28 */ beq lbl_801AE1B8 +/* 801AE194 001AB0F4 80 1C 07 70 */ lwz r0, 0x770(r28) +/* 801AE198 001AB0F8 54 00 08 3C */ slwi r0, r0, 1 +/* 801AE19C 001AB0FC 7C 7E 02 15 */ add. r3, r30, r0 +/* 801AE1A0 001AB100 41 82 00 0C */ beq lbl_801AE1AC +/* 801AE1A4 001AB104 A0 01 00 10 */ lhz r0, 0x10(r1) +/* 801AE1A8 001AB108 B0 03 00 00 */ sth r0, 0(r3) +lbl_801AE1AC: +/* 801AE1AC 001AB10C 80 7C 07 70 */ lwz r3, 0x770(r28) +/* 801AE1B0 001AB110 38 03 00 01 */ addi r0, r3, 1 +/* 801AE1B4 001AB114 90 1C 07 70 */ stw r0, 0x770(r28) +lbl_801AE1B8: +/* 801AE1B8 001AB118 3B FF 00 0C */ addi r31, r31, 0xc +lbl_801AE1BC: +/* 801AE1BC 001AB11C 80 1C 00 24 */ lwz r0, 0x24(r28) +/* 801AE1C0 001AB120 80 7C 00 2C */ lwz r3, 0x2c(r28) +/* 801AE1C4 001AB124 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801AE1C8 001AB128 7C 03 02 14 */ add r0, r3, r0 +/* 801AE1CC 001AB12C 7C 1F 00 40 */ cmplw r31, r0 +/* 801AE1D0 001AB130 40 82 FF 64 */ bne lbl_801AE134 +/* 801AE1D4 001AB134 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801AE1D8 001AB138 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801AE1DC 001AB13C 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801AE1E0 001AB140 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801AE1E4 001AB144 83 81 00 20 */ lwz r28, 0x20(r1) +/* 801AE1E8 001AB148 7C 08 03 A6 */ mtlr r0 +/* 801AE1EC 001AB14C 38 21 00 30 */ addi r1, r1, 0x30 +/* 801AE1F0 001AB150 4E 80 00 20 */ blr + +.global sub_801ae1f4 +sub_801ae1f4: +/* 801AE1F4 001AB154 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 801AE1F8 001AB158 7C 08 02 A6 */ mflr r0 +/* 801AE1FC 001AB15C 90 01 01 04 */ stw r0, 0x104(r1) +/* 801AE200 001AB160 38 61 00 18 */ addi r3, r1, 0x18 +/* 801AE204 001AB164 93 E1 00 FC */ stw r31, 0xfc(r1) +/* 801AE208 001AB168 93 C1 00 F8 */ stw r30, 0xf8(r1) +/* 801AE20C 001AB16C 7C 9E 23 78 */ mr r30, r4 +/* 801AE210 001AB170 83 E4 08 4C */ lwz r31, 0x84c(r4) +/* 801AE214 001AB174 C0 85 00 04 */ lfs f4, 4(r5) +/* 801AE218 001AB178 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 801AE21C 001AB17C C0 65 00 08 */ lfs f3, 8(r5) +/* 801AE220 001AB180 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 801AE224 001AB184 EC 84 00 28 */ fsubs f4, f4, f0 +/* 801AE228 001AB188 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801AE22C 001AB18C C0 25 00 00 */ lfs f1, 0(r5) +/* 801AE230 001AB190 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801AE234 001AB194 D0 81 00 1C */ stfs f4, 0x1c(r1) +/* 801AE238 001AB198 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801AE23C 001AB19C D0 41 00 20 */ stfs f2, 0x20(r1) +/* 801AE240 001AB1A0 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801AE244 001AB1A4 48 16 66 75 */ bl Magnitude__9CVector3fCFv +/* 801AE248 001AB1A8 80 1F 02 B0 */ lwz r0, 0x2b0(r31) +/* 801AE24C 001AB1AC 2C 00 00 02 */ cmpwi r0, 2 +/* 801AE250 001AB1B0 40 82 00 0C */ bne lbl_801AE25C +/* 801AE254 001AB1B4 80 1F 02 AC */ lwz r0, 0x2ac(r31) +/* 801AE258 001AB1B8 48 00 00 08 */ b lbl_801AE260 +lbl_801AE25C: +/* 801AE25C 001AB1BC 38 00 00 04 */ li r0, 4 +lbl_801AE260: +/* 801AE260 001AB1C0 2C 00 00 01 */ cmpwi r0, 1 +/* 801AE264 001AB1C4 41 82 01 0C */ beq lbl_801AE370 +/* 801AE268 001AB1C8 88 1F 09 C4 */ lbz r0, 0x9c4(r31) +/* 801AE26C 001AB1CC 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 801AE270 001AB1D0 40 82 01 00 */ bne lbl_801AE370 +/* 801AE274 001AB1D4 80 1F 02 F8 */ lwz r0, 0x2f8(r31) +/* 801AE278 001AB1D8 2C 00 00 01 */ cmpwi r0, 1 +/* 801AE27C 001AB1DC 41 82 00 84 */ beq lbl_801AE300 +/* 801AE280 001AB1E0 80 9E 08 70 */ lwz r4, 0x870(r30) +/* 801AE284 001AB1E4 38 61 00 08 */ addi r3, r1, 8 +/* 801AE288 001AB1E8 80 A4 00 7C */ lwz r5, 0x7c(r4) +/* 801AE28C 001AB1EC A3 E5 00 08 */ lhz r31, 8(r5) +/* 801AE290 001AB1F0 4B E5 D9 49 */ bl GetCurrentCameraId__14CCameraManagerCFv +/* 801AE294 001AB1F4 A0 01 00 08 */ lhz r0, 8(r1) +/* 801AE298 001AB1F8 7C 00 F8 40 */ cmplw r0, r31 +/* 801AE29C 001AB1FC 40 82 00 D4 */ bne lbl_801AE370 +/* 801AE2A0 001AB200 C0 22 A8 C4 */ lfs f1, lbl_805AC5E4@sda21(r2) +/* 801AE2A4 001AB204 38 61 00 24 */ addi r3, r1, 0x24 +/* 801AE2A8 001AB208 C0 42 A8 C8 */ lfs f2, lbl_805AC5E8@sda21(r2) +/* 801AE2AC 001AB20C 4B FA F5 85 */ bl __ct__16CCameraShakeDataFff +/* 801AE2B0 001AB210 80 7E 08 70 */ lwz r3, 0x870(r30) +/* 801AE2B4 001AB214 38 81 00 24 */ addi r4, r1, 0x24 +/* 801AE2B8 001AB218 38 A0 00 01 */ li r5, 1 +/* 801AE2BC 001AB21C 4B E5 C7 65 */ bl AddCameraShaker__14CCameraManagerFRC16CCameraShakeDatab +/* 801AE2C0 001AB220 34 81 00 A4 */ addic. r4, r1, 0xa4 +/* 801AE2C4 001AB224 41 82 00 10 */ beq lbl_801AE2D4 +/* 801AE2C8 001AB228 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 801AE2CC 001AB22C 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 801AE2D0 001AB230 90 04 00 00 */ stw r0, 0(r4) +lbl_801AE2D4: +/* 801AE2D4 001AB234 34 81 00 68 */ addic. r4, r1, 0x68 +/* 801AE2D8 001AB238 41 82 00 10 */ beq lbl_801AE2E8 +/* 801AE2DC 001AB23C 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 801AE2E0 001AB240 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 801AE2E4 001AB244 90 04 00 00 */ stw r0, 0(r4) +lbl_801AE2E8: +/* 801AE2E8 001AB248 34 81 00 2C */ addic. r4, r1, 0x2c +/* 801AE2EC 001AB24C 41 82 00 84 */ beq lbl_801AE370 +/* 801AE2F0 001AB250 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 801AE2F4 001AB254 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 801AE2F8 001AB258 90 04 00 00 */ stw r0, 0(r4) +/* 801AE2FC 001AB25C 48 00 00 74 */ b lbl_801AE370 +lbl_801AE300: +/* 801AE300 001AB260 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 801AE304 001AB264 C4 43 66 F4 */ lfsu f2, lbl_805A66F4@l(r3) +/* 801AE308 001AB268 C0 62 A8 CC */ lfs f3, lbl_805AC5EC@sda21(r2) +/* 801AE30C 001AB26C C0 23 00 04 */ lfs f1, 4(r3) +/* 801AE310 001AB270 C0 03 00 08 */ lfs f0, 8(r3) +/* 801AE314 001AB274 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 801AE318 001AB278 EC 23 00 72 */ fmuls f1, f3, f1 +/* 801AE31C 001AB27C C0 82 A8 C8 */ lfs f4, lbl_805AC5E8@sda21(r2) +/* 801AE320 001AB280 EC 03 00 32 */ fmuls f0, f3, f0 +/* 801AE324 001AB284 C0 BF 00 E8 */ lfs f5, 0xe8(r31) +/* 801AE328 001AB288 EC 44 00 B2 */ fmuls f2, f4, f2 +/* 801AE32C 001AB28C EC 24 00 72 */ fmuls f1, f4, f1 +/* 801AE330 001AB290 EC 04 00 32 */ fmuls f0, f4, f0 +/* 801AE334 001AB294 EC 45 00 B2 */ fmuls f2, f5, f2 +/* 801AE338 001AB298 EC 25 00 72 */ fmuls f1, f5, f1 +/* 801AE33C 001AB29C EC 05 00 32 */ fmuls f0, f5, f0 +/* 801AE340 001AB2A0 D0 41 00 0C */ stfs f2, 0xc(r1) +/* 801AE344 001AB2A4 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 801AE348 001AB2A8 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801AE34C 001AB2AC 4B E6 D1 E9 */ bl Identity__10CAxisAngleFv +/* 801AE350 001AB2B0 7C 65 1B 78 */ mr r5, r3 +/* 801AE354 001AB2B4 7F E3 FB 78 */ mr r3, r31 +/* 801AE358 001AB2B8 38 81 00 0C */ addi r4, r1, 0xc +/* 801AE35C 001AB2BC 4B F6 E0 3D */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +/* 801AE360 001AB2C0 7F E3 FB 78 */ mr r3, r31 +/* 801AE364 001AB2C4 7F C5 F3 78 */ mr r5, r30 +/* 801AE368 001AB2C8 38 80 00 02 */ li r4, 2 +/* 801AE36C 001AB2CC 48 0D 80 81 */ bl SetMoveState__7CPlayerFQ27NPlayer20EPlayerMovementStateR13CStateManager +lbl_801AE370: +/* 801AE370 001AB2D0 80 01 01 04 */ lwz r0, 0x104(r1) +/* 801AE374 001AB2D4 83 E1 00 FC */ lwz r31, 0xfc(r1) +/* 801AE378 001AB2D8 83 C1 00 F8 */ lwz r30, 0xf8(r1) +/* 801AE37C 001AB2DC 7C 08 03 A6 */ mtlr r0 +/* 801AE380 001AB2E0 38 21 01 00 */ addi r1, r1, 0x100 +/* 801AE384 001AB2E4 4E 80 00 20 */ blr + +.global sub_801ae388 +sub_801ae388: +/* 801AE388 001AB2E8 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801AE38C 001AB2EC 7C 08 02 A6 */ mflr r0 +/* 801AE390 001AB2F0 90 01 00 34 */ stw r0, 0x34(r1) +/* 801AE394 001AB2F4 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801AE398 001AB2F8 3B E0 00 00 */ li r31, 0 +/* 801AE39C 001AB2FC 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801AE3A0 001AB300 7C DE 33 78 */ mr r30, r6 +/* 801AE3A4 001AB304 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801AE3A8 001AB308 7C BD 2B 78 */ mr r29, r5 +/* 801AE3AC 001AB30C 93 81 00 20 */ stw r28, 0x20(r1) +/* 801AE3B0 001AB310 7C 9C 23 78 */ mr r28, r4 +/* 801AE3B4 001AB314 48 00 00 5C */ b lbl_801AE410 +lbl_801AE3B8: +/* 801AE3B8 001AB318 80 7D 00 00 */ lwz r3, 0(r29) +/* 801AE3BC 001AB31C 7F E4 FB 78 */ mr r4, r31 +/* 801AE3C0 001AB320 4B FF 8E 79 */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 801AE3C4 001AB324 A0 03 00 3C */ lhz r0, 0x3c(r3) +/* 801AE3C8 001AB328 7F 83 E3 78 */ mr r3, r28 +/* 801AE3CC 001AB32C 38 81 00 08 */ addi r4, r1, 8 +/* 801AE3D0 001AB330 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801AE3D4 001AB334 B0 01 00 08 */ sth r0, 8(r1) +/* 801AE3D8 001AB338 4B E9 E1 9D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801AE3DC 001AB33C 7C 64 1B 78 */ mr r4, r3 +/* 801AE3E0 001AB340 38 61 00 10 */ addi r3, r1, 0x10 +/* 801AE3E4 001AB344 4B F0 0F 69 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801AE3E8 001AB348 80 63 00 04 */ lwz r3, 4(r3) +/* 801AE3EC 001AB34C 28 03 00 00 */ cmplwi r3, 0 +/* 801AE3F0 001AB350 41 82 00 1C */ beq lbl_801AE40C +/* 801AE3F4 001AB354 C0 1E 00 00 */ lfs f0, 0(r30) +/* 801AE3F8 001AB358 D0 03 03 04 */ stfs f0, 0x304(r3) +/* 801AE3FC 001AB35C C0 1E 00 04 */ lfs f0, 4(r30) +/* 801AE400 001AB360 D0 03 03 08 */ stfs f0, 0x308(r3) +/* 801AE404 001AB364 C0 1E 00 08 */ lfs f0, 8(r30) +/* 801AE408 001AB368 D0 03 03 0C */ stfs f0, 0x30c(r3) +lbl_801AE40C: +/* 801AE40C 001AB36C 3B FF 00 01 */ addi r31, r31, 1 +lbl_801AE410: +/* 801AE410 001AB370 80 7D 00 00 */ lwz r3, 0(r29) +/* 801AE414 001AB374 4B FF 8E 35 */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 801AE418 001AB378 7C 1F 18 40 */ cmplw r31, r3 +/* 801AE41C 001AB37C 41 80 FF 9C */ blt lbl_801AE3B8 +/* 801AE420 001AB380 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801AE424 001AB384 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801AE428 001AB388 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801AE42C 001AB38C 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801AE430 001AB390 83 81 00 20 */ lwz r28, 0x20(r1) +/* 801AE434 001AB394 7C 08 03 A6 */ mtlr r0 +/* 801AE438 001AB398 38 21 00 30 */ addi r1, r1, 0x30 +/* 801AE43C 001AB39C 4E 80 00 20 */ blr + +.global sub_801ae440 +sub_801ae440: +/* 801AE440 001AB3A0 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 801AE444 001AB3A4 7C 08 02 A6 */ mflr r0 +/* 801AE448 001AB3A8 90 01 00 74 */ stw r0, 0x74(r1) +/* 801AE44C 001AB3AC DB E1 00 60 */ stfd f31, 0x60(r1) +/* 801AE450 001AB3B0 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 801AE454 001AB3B4 DB C1 00 50 */ stfd f30, 0x50(r1) +/* 801AE458 001AB3B8 F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 +/* 801AE45C 001AB3BC DB A1 00 40 */ stfd f29, 0x40(r1) +/* 801AE460 001AB3C0 F3 A1 00 48 */ psq_st f29, 72(r1), 0, qr0 +/* 801AE464 001AB3C4 DB 81 00 30 */ stfd f28, 0x30(r1) +/* 801AE468 001AB3C8 F3 81 00 38 */ psq_st f28, 56(r1), 0, qr0 +/* 801AE46C 001AB3CC 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801AE470 001AB3D0 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801AE474 001AB3D4 A0 03 08 0C */ lhz r0, 0x80c(r3) +/* 801AE478 001AB3D8 7C 7E 1B 78 */ mr r30, r3 +/* 801AE47C 001AB3DC FF E0 08 90 */ fmr f31, f1 +/* 801AE480 001AB3E0 7C 83 23 78 */ mr r3, r4 +/* 801AE484 001AB3E4 B0 01 00 08 */ sth r0, 8(r1) +/* 801AE488 001AB3E8 38 81 00 08 */ addi r4, r1, 8 +/* 801AE48C 001AB3EC 4B E9 E1 19 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801AE490 001AB3F0 7C 64 1B 78 */ mr r4, r3 +/* 801AE494 001AB3F4 38 61 00 0C */ addi r3, r1, 0xc +/* 801AE498 001AB3F8 4B F0 0E B5 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801AE49C 001AB3FC 83 E3 00 04 */ lwz r31, 4(r3) +/* 801AE4A0 001AB400 28 1F 00 00 */ cmplwi r31, 0 +/* 801AE4A4 001AB404 41 82 01 5C */ beq lbl_801AE600 +/* 801AE4A8 001AB408 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801AE4AC 001AB40C 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801AE4B0 001AB410 2C 00 00 0B */ cmpwi r0, 0xb +/* 801AE4B4 001AB414 41 82 01 4C */ beq lbl_801AE600 +/* 801AE4B8 001AB418 2C 00 00 02 */ cmpwi r0, 2 +/* 801AE4BC 001AB41C 41 82 01 44 */ beq lbl_801AE600 +/* 801AE4C0 001AB420 80 1E 07 80 */ lwz r0, 0x780(r30) +/* 801AE4C4 001AB424 2C 00 00 00 */ cmpwi r0, 0 +/* 801AE4C8 001AB428 41 82 00 30 */ beq lbl_801AE4F8 +/* 801AE4CC 001AB42C 88 1E 08 E4 */ lbz r0, 0x8e4(r30) +/* 801AE4D0 001AB430 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 801AE4D4 001AB434 40 82 00 24 */ bne lbl_801AE4F8 +/* 801AE4D8 001AB438 7F C3 F3 78 */ mr r3, r30 +/* 801AE4DC 001AB43C 48 00 01 5D */ bl sub_801ae638 +/* 801AE4E0 001AB440 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801AE4E4 001AB444 40 82 00 14 */ bne lbl_801AE4F8 +/* 801AE4E8 001AB448 7F C3 F3 78 */ mr r3, r30 +/* 801AE4EC 001AB44C 48 00 01 65 */ bl sub_801ae650 +/* 801AE4F0 001AB450 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801AE4F4 001AB454 41 82 00 14 */ beq lbl_801AE508 +lbl_801AE4F8: +/* 801AE4F8 001AB458 C3 DF 00 40 */ lfs f30, 0x40(r31) +/* 801AE4FC 001AB45C C3 BF 00 50 */ lfs f29, 0x50(r31) +/* 801AE500 001AB460 C3 9F 00 60 */ lfs f28, 0x60(r31) +/* 801AE504 001AB464 48 00 00 50 */ b lbl_801AE554 +lbl_801AE508: +/* 801AE508 001AB468 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 801AE50C 001AB46C C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801AE510 001AB470 C0 82 A8 BC */ lfs f4, lbl_805AC5DC@sda21(r2) +/* 801AE514 001AB474 C0 43 00 00 */ lfs f2, 0(r3) +/* 801AE518 001AB478 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 801AE51C 001AB47C EC E0 20 2A */ fadds f7, f0, f4 +/* 801AE520 001AB480 C0 03 00 04 */ lfs f0, 4(r3) +/* 801AE524 001AB484 EC C4 00 B2 */ fmuls f6, f4, f2 +/* 801AE528 001AB488 C0 7E 00 60 */ lfs f3, 0x60(r30) +/* 801AE52C 001AB48C EC A1 20 2A */ fadds f5, f1, f4 +/* 801AE530 001AB490 C0 42 A8 D0 */ lfs f2, lbl_805AC5F0@sda21(r2) +/* 801AE534 001AB494 EC 84 00 32 */ fmuls f4, f4, f0 +/* 801AE538 001AB498 C0 22 A8 D4 */ lfs f1, lbl_805AC5F4@sda21(r2) +/* 801AE53C 001AB49C C0 03 00 08 */ lfs f0, 8(r3) +/* 801AE540 001AB4A0 EC 43 10 2A */ fadds f2, f3, f2 +/* 801AE544 001AB4A4 EF C7 30 2A */ fadds f30, f7, f6 +/* 801AE548 001AB4A8 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801AE54C 001AB4AC EF A5 20 2A */ fadds f29, f5, f4 +/* 801AE550 001AB4B0 EF 82 00 2A */ fadds f28, f2, f0 +lbl_801AE554: +/* 801AE554 001AB4B4 C0 5E 08 24 */ lfs f2, 0x824(r30) +/* 801AE558 001AB4B8 38 61 00 14 */ addi r3, r1, 0x14 +/* 801AE55C 001AB4BC C0 3E 08 28 */ lfs f1, 0x828(r30) +/* 801AE560 001AB4C0 C0 1E 08 20 */ lfs f0, 0x820(r30) +/* 801AE564 001AB4C4 EC 5D 10 28 */ fsubs f2, f29, f2 +/* 801AE568 001AB4C8 EC 3C 08 28 */ fsubs f1, f28, f1 +/* 801AE56C 001AB4CC EC 1E 00 28 */ fsubs f0, f30, f0 +/* 801AE570 001AB4D0 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 801AE574 001AB4D4 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801AE578 001AB4D8 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 801AE57C 001AB4DC 48 16 61 7D */ bl CanBeNormalized__9CVector3fCFv +/* 801AE580 001AB4E0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801AE584 001AB4E4 41 82 00 7C */ beq lbl_801AE600 +/* 801AE588 001AB4E8 38 61 00 14 */ addi r3, r1, 0x14 +/* 801AE58C 001AB4EC 48 16 63 2D */ bl Magnitude__9CVector3fCFv +/* 801AE590 001AB4F0 C0 02 A8 D8 */ lfs f0, lbl_805AC5F8@sda21(r2) +/* 801AE594 001AB4F4 EC C0 07 F2 */ fmuls f6, f0, f31 +/* 801AE598 001AB4F8 FC 01 30 40 */ fcmpo cr0, f1, f6 +/* 801AE59C 001AB4FC 40 81 00 58 */ ble lbl_801AE5F4 +/* 801AE5A0 001AB500 C0 02 A8 DC */ lfs f0, lbl_805AC5FC@sda21(r2) +/* 801AE5A4 001AB504 C0 61 00 14 */ lfs f3, 0x14(r1) +/* 801AE5A8 001AB508 EC A0 08 24 */ fdivs f5, f0, f1 +/* 801AE5AC 001AB50C C0 41 00 18 */ lfs f2, 0x18(r1) +/* 801AE5B0 001AB510 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 801AE5B4 001AB514 C0 3E 08 20 */ lfs f1, 0x820(r30) +/* 801AE5B8 001AB518 EC 85 00 F2 */ fmuls f4, f5, f3 +/* 801AE5BC 001AB51C EC 65 00 B2 */ fmuls f3, f5, f2 +/* 801AE5C0 001AB520 EC 45 00 32 */ fmuls f2, f5, f0 +/* 801AE5C4 001AB524 EC 06 01 32 */ fmuls f0, f6, f4 +/* 801AE5C8 001AB528 EC 66 00 F2 */ fmuls f3, f6, f3 +/* 801AE5CC 001AB52C EC 46 00 B2 */ fmuls f2, f6, f2 +/* 801AE5D0 001AB530 EC 01 00 2A */ fadds f0, f1, f0 +/* 801AE5D4 001AB534 D0 1E 08 20 */ stfs f0, 0x820(r30) +/* 801AE5D8 001AB538 C0 1E 08 24 */ lfs f0, 0x824(r30) +/* 801AE5DC 001AB53C EC 00 18 2A */ fadds f0, f0, f3 +/* 801AE5E0 001AB540 D0 1E 08 24 */ stfs f0, 0x824(r30) +/* 801AE5E4 001AB544 C0 1E 08 28 */ lfs f0, 0x828(r30) +/* 801AE5E8 001AB548 EC 00 10 2A */ fadds f0, f0, f2 +/* 801AE5EC 001AB54C D0 1E 08 28 */ stfs f0, 0x828(r30) +/* 801AE5F0 001AB550 48 00 00 10 */ b lbl_801AE600 +lbl_801AE5F4: +/* 801AE5F4 001AB554 D3 DE 08 20 */ stfs f30, 0x820(r30) +/* 801AE5F8 001AB558 D3 BE 08 24 */ stfs f29, 0x824(r30) +/* 801AE5FC 001AB55C D3 9E 08 28 */ stfs f28, 0x828(r30) +lbl_801AE600: +/* 801AE600 001AB560 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 801AE604 001AB564 CB E1 00 60 */ lfd f31, 0x60(r1) +/* 801AE608 001AB568 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 +/* 801AE60C 001AB56C CB C1 00 50 */ lfd f30, 0x50(r1) +/* 801AE610 001AB570 E3 A1 00 48 */ psq_l f29, 72(r1), 0, qr0 +/* 801AE614 001AB574 CB A1 00 40 */ lfd f29, 0x40(r1) +/* 801AE618 001AB578 E3 81 00 38 */ psq_l f28, 56(r1), 0, qr0 +/* 801AE61C 001AB57C CB 81 00 30 */ lfd f28, 0x30(r1) +/* 801AE620 001AB580 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801AE624 001AB584 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801AE628 001AB588 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801AE62C 001AB58C 7C 08 03 A6 */ mtlr r0 +/* 801AE630 001AB590 38 21 00 70 */ addi r1, r1, 0x70 +/* 801AE634 001AB594 4E 80 00 20 */ blr + +.global sub_801ae638 +sub_801ae638: +/* 801AE638 001AB598 80 63 04 50 */ lwz r3, 0x450(r3) +/* 801AE63C 001AB59C 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801AE640 001AB5A0 20 00 00 12 */ subfic r0, r0, 0x12 +/* 801AE644 001AB5A4 7C 00 00 34 */ cntlzw r0, r0 +/* 801AE648 001AB5A8 54 03 D9 7E */ srwi r3, r0, 5 +/* 801AE64C 001AB5AC 4E 80 00 20 */ blr + +.global sub_801ae650 +sub_801ae650: +/* 801AE650 001AB5B0 80 03 07 A8 */ lwz r0, 0x7a8(r3) +/* 801AE654 001AB5B4 38 60 00 00 */ li r3, 0 +/* 801AE658 001AB5B8 2C 00 00 00 */ cmpwi r0, 0 +/* 801AE65C 001AB5BC 41 82 00 0C */ beq lbl_801AE668 +/* 801AE660 001AB5C0 2C 00 00 01 */ cmpwi r0, 1 +/* 801AE664 001AB5C4 4C 82 00 20 */ bnelr +lbl_801AE668: +/* 801AE668 001AB5C8 38 60 00 01 */ li r3, 1 +/* 801AE66C 001AB5CC 4E 80 00 20 */ blr + +.global sub_801ae670 +sub_801ae670: +/* 801AE670 001AB5D0 80 03 07 A8 */ lwz r0, 0x7a8(r3) +/* 801AE674 001AB5D4 38 60 00 00 */ li r3, 0 +/* 801AE678 001AB5D8 2C 00 00 02 */ cmpwi r0, 2 +/* 801AE67C 001AB5DC 41 82 00 14 */ beq lbl_801AE690 +/* 801AE680 001AB5E0 2C 00 00 03 */ cmpwi r0, 3 +/* 801AE684 001AB5E4 41 82 00 0C */ beq lbl_801AE690 +/* 801AE688 001AB5E8 2C 00 00 04 */ cmpwi r0, 4 +/* 801AE68C 001AB5EC 4C 82 00 20 */ bnelr +lbl_801AE690: +/* 801AE690 001AB5F0 38 60 00 01 */ li r3, 1 +/* 801AE694 001AB5F4 4E 80 00 20 */ blr + +.global sub_801ae698 +sub_801ae698: +/* 801AE698 001AB5F8 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 801AE69C 001AB5FC 7C 08 02 A6 */ mflr r0 +/* 801AE6A0 001AB600 90 01 00 74 */ stw r0, 0x74(r1) +/* 801AE6A4 001AB604 DB E1 00 60 */ stfd f31, 0x60(r1) +/* 801AE6A8 001AB608 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 801AE6AC 001AB60C DB C1 00 50 */ stfd f30, 0x50(r1) +/* 801AE6B0 001AB610 F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 +/* 801AE6B4 001AB614 DB A1 00 40 */ stfd f29, 0x40(r1) +/* 801AE6B8 001AB618 F3 A1 00 48 */ psq_st f29, 72(r1), 0, qr0 +/* 801AE6BC 001AB61C 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801AE6C0 001AB620 80 85 08 4C */ lwz r4, 0x84c(r5) +/* 801AE6C4 001AB624 7C 7F 1B 78 */ mr r31, r3 +/* 801AE6C8 001AB628 80 04 02 F8 */ lwz r0, 0x2f8(r4) +/* 801AE6CC 001AB62C C3 E4 00 40 */ lfs f31, 0x40(r4) +/* 801AE6D0 001AB630 2C 00 00 01 */ cmpwi r0, 1 +/* 801AE6D4 001AB634 C3 C4 00 50 */ lfs f30, 0x50(r4) +/* 801AE6D8 001AB638 C3 A4 00 60 */ lfs f29, 0x60(r4) +/* 801AE6DC 001AB63C 41 82 00 28 */ beq lbl_801AE704 +/* 801AE6E0 001AB640 7C 83 23 78 */ mr r3, r4 +/* 801AE6E4 001AB644 48 0D 66 FD */ bl GetEyeHeight__7CPlayerCFv +/* 801AE6E8 001AB648 C0 42 A8 E0 */ lfs f2, lbl_805AC600@sda21(r2) +/* 801AE6EC 001AB64C C0 02 A8 BC */ lfs f0, lbl_805AC5DC@sda21(r2) +/* 801AE6F0 001AB650 EC 22 08 2A */ fadds f1, f2, f1 +/* 801AE6F4 001AB654 EF FF 00 2A */ fadds f31, f31, f0 +/* 801AE6F8 001AB658 EF DE 00 2A */ fadds f30, f30, f0 +/* 801AE6FC 001AB65C EF BD 08 2A */ fadds f29, f29, f1 +/* 801AE700 001AB660 48 00 00 1C */ b lbl_801AE71C +lbl_801AE704: +/* 801AE704 001AB664 80 84 07 68 */ lwz r4, 0x768(r4) +/* 801AE708 001AB668 38 61 00 08 */ addi r3, r1, 8 +/* 801AE70C 001AB66C 4B F4 7F E9 */ bl GetBallToWorld__10CMorphBallCFv +/* 801AE710 001AB670 C3 E1 00 14 */ lfs f31, 0x14(r1) +/* 801AE714 001AB674 C3 C1 00 24 */ lfs f30, 0x24(r1) +/* 801AE718 001AB678 C3 A1 00 34 */ lfs f29, 0x34(r1) +lbl_801AE71C: +/* 801AE71C 001AB67C D3 FF 00 00 */ stfs f31, 0(r31) +/* 801AE720 001AB680 D3 DF 00 04 */ stfs f30, 4(r31) +/* 801AE724 001AB684 D3 BF 00 08 */ stfs f29, 8(r31) +/* 801AE728 001AB688 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 801AE72C 001AB68C CB E1 00 60 */ lfd f31, 0x60(r1) +/* 801AE730 001AB690 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 +/* 801AE734 001AB694 CB C1 00 50 */ lfd f30, 0x50(r1) +/* 801AE738 001AB698 E3 A1 00 48 */ psq_l f29, 72(r1), 0, qr0 +/* 801AE73C 001AB69C CB A1 00 40 */ lfd f29, 0x40(r1) +/* 801AE740 001AB6A0 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801AE744 001AB6A4 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801AE748 001AB6A8 7C 08 03 A6 */ mtlr r0 +/* 801AE74C 001AB6AC 38 21 00 70 */ addi r1, r1, 0x70 +/* 801AE750 001AB6B0 4E 80 00 20 */ blr + +.global sub_801ae754 +sub_801ae754: +/* 801AE754 001AB6B4 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801AE758 001AB6B8 7C 08 02 A6 */ mflr r0 +/* 801AE75C 001AB6BC 90 01 00 44 */ stw r0, 0x44(r1) +/* 801AE760 001AB6C0 DB E1 00 30 */ stfd f31, 0x30(r1) +/* 801AE764 001AB6C4 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 801AE768 001AB6C8 BF 61 00 1C */ stmw r27, 0x1c(r1) +/* 801AE76C 001AB6CC 7C BD 2B 78 */ mr r29, r5 +/* 801AE770 001AB6D0 7C 9C 23 78 */ mr r28, r4 +/* 801AE774 001AB6D4 83 C5 08 4C */ lwz r30, 0x84c(r5) +/* 801AE778 001AB6D8 7C 7B 1B 78 */ mr r27, r3 +/* 801AE77C 001AB6DC 7F 83 E3 78 */ mr r3, r28 +/* 801AE780 001AB6E0 3B E0 00 00 */ li r31, 0 +/* 801AE784 001AB6E4 4B FF FE CD */ bl sub_801ae650 +/* 801AE788 001AB6E8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801AE78C 001AB6EC 41 82 00 14 */ beq lbl_801AE7A0 +/* 801AE790 001AB6F0 80 1E 02 F8 */ lwz r0, 0x2f8(r30) +/* 801AE794 001AB6F4 2C 00 00 01 */ cmpwi r0, 1 +/* 801AE798 001AB6F8 41 82 00 08 */ beq lbl_801AE7A0 +/* 801AE79C 001AB6FC 3B E0 00 01 */ li r31, 1 +lbl_801AE7A0: +/* 801AE7A0 001AB700 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 801AE7A4 001AB704 41 82 00 0C */ beq lbl_801AE7B0 +/* 801AE7A8 001AB708 C3 E2 A8 C8 */ lfs f31, lbl_805AC5E8@sda21(r2) +/* 801AE7AC 001AB70C 48 00 00 08 */ b lbl_801AE7B4 +lbl_801AE7B0: +/* 801AE7B0 001AB710 C3 E2 A8 E4 */ lfs f31, lbl_805AC604@sda21(r2) +lbl_801AE7B4: +/* 801AE7B4 001AB714 80 7C 04 50 */ lwz r3, 0x450(r28) +/* 801AE7B8 001AB718 4B F8 C1 01 */ bl GetAnimTimeRemaining__15CBodyControllerCFv +/* 801AE7BC 001AB71C 81 9E 00 00 */ lwz r12, 0(r30) +/* 801AE7C0 001AB720 EC 3F 00 72 */ fmuls f1, f31, f1 +/* 801AE7C4 001AB724 7F C4 F3 78 */ mr r4, r30 +/* 801AE7C8 001AB728 7F A5 EB 78 */ mr r5, r29 +/* 801AE7CC 001AB72C 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801AE7D0 001AB730 38 61 00 08 */ addi r3, r1, 8 +/* 801AE7D4 001AB734 7D 89 03 A6 */ mtctr r12 +/* 801AE7D8 001AB738 4E 80 04 21 */ bctrl +/* 801AE7DC 001AB73C C0 21 00 08 */ lfs f1, 8(r1) +/* 801AE7E0 001AB740 C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 801AE7E4 001AB744 C0 81 00 0C */ lfs f4, 0xc(r1) +/* 801AE7E8 001AB748 C0 7C 00 50 */ lfs f3, 0x50(r28) +/* 801AE7EC 001AB74C EC 01 00 28 */ fsubs f0, f1, f0 +/* 801AE7F0 001AB750 C0 41 00 10 */ lfs f2, 0x10(r1) +/* 801AE7F4 001AB754 C0 3C 00 60 */ lfs f1, 0x60(r28) +/* 801AE7F8 001AB758 EC 64 18 28 */ fsubs f3, f4, f3 +/* 801AE7FC 001AB75C D0 1B 00 00 */ stfs f0, 0(r27) +/* 801AE800 001AB760 EC 02 08 28 */ fsubs f0, f2, f1 +/* 801AE804 001AB764 D0 7B 00 04 */ stfs f3, 4(r27) +/* 801AE808 001AB768 D0 1B 00 08 */ stfs f0, 8(r27) +/* 801AE80C 001AB76C E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 801AE810 001AB770 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 801AE814 001AB774 BB 61 00 1C */ lmw r27, 0x1c(r1) +/* 801AE818 001AB778 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801AE81C 001AB77C 7C 08 03 A6 */ mtlr r0 +/* 801AE820 001AB780 38 21 00 40 */ addi r1, r1, 0x40 +/* 801AE824 001AB784 4E 80 00 20 */ blr + +.global sub_801ae828 +sub_801ae828: +/* 801AE828 001AB788 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 801AE82C 001AB78C 80 04 02 F8 */ lwz r0, 0x2f8(r4) +/* 801AE830 001AB790 2C 00 00 01 */ cmpwi r0, 1 +/* 801AE834 001AB794 41 82 00 48 */ beq lbl_801AE87C +/* 801AE838 001AB798 C0 23 07 CC */ lfs f1, 0x7cc(r3) +/* 801AE83C 001AB79C C0 02 A8 BC */ lfs f0, lbl_805AC5DC@sda21(r2) +/* 801AE840 001AB7A0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801AE844 001AB7A4 4C 40 13 82 */ cror 2, 0, 2 +/* 801AE848 001AB7A8 40 82 00 74 */ bne lbl_801AE8BC +/* 801AE84C 001AB7AC C0 24 01 38 */ lfs f1, 0x138(r4) +/* 801AE850 001AB7B0 C0 04 01 3C */ lfs f0, 0x13c(r4) +/* 801AE854 001AB7B4 EC 41 00 72 */ fmuls f2, f1, f1 +/* 801AE858 001AB7B8 C0 64 01 40 */ lfs f3, 0x140(r4) +/* 801AE85C 001AB7BC EC 20 00 32 */ fmuls f1, f0, f0 +/* 801AE860 001AB7C0 C0 02 A8 CC */ lfs f0, lbl_805AC5EC@sda21(r2) +/* 801AE864 001AB7C4 EC 63 00 F2 */ fmuls f3, f3, f3 +/* 801AE868 001AB7C8 EC 22 08 2A */ fadds f1, f2, f1 +/* 801AE86C 001AB7CC EC 23 08 2A */ fadds f1, f3, f1 +/* 801AE870 001AB7D0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801AE874 001AB7D4 4C 41 13 82 */ cror 2, 1, 2 +/* 801AE878 001AB7D8 40 82 00 44 */ bne lbl_801AE8BC +lbl_801AE87C: +/* 801AE87C 001AB7DC C0 23 00 44 */ lfs f1, 0x44(r3) +/* 801AE880 001AB7E0 C0 04 01 3C */ lfs f0, 0x13c(r4) +/* 801AE884 001AB7E4 C0 43 00 34 */ lfs f2, 0x34(r3) +/* 801AE888 001AB7E8 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801AE88C 001AB7EC C0 24 01 38 */ lfs f1, 0x138(r4) +/* 801AE890 001AB7F0 C0 83 00 54 */ lfs f4, 0x54(r3) +/* 801AE894 001AB7F4 C0 64 01 40 */ lfs f3, 0x140(r4) +/* 801AE898 001AB7F8 EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 801AE89C 001AB7FC C0 02 A8 BC */ lfs f0, lbl_805AC5DC@sda21(r2) +/* 801AE8A0 001AB800 EC 24 08 FA */ fmadds f1, f4, f3, f1 +/* 801AE8A4 001AB804 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801AE8A8 001AB808 40 81 00 0C */ ble lbl_801AE8B4 +/* 801AE8AC 001AB80C 38 60 00 01 */ li r3, 1 +/* 801AE8B0 001AB810 4E 80 00 20 */ blr +lbl_801AE8B4: +/* 801AE8B4 001AB814 38 60 00 00 */ li r3, 0 +/* 801AE8B8 001AB818 4E 80 00 20 */ blr +lbl_801AE8BC: +/* 801AE8BC 001AB81C 38 60 00 03 */ li r3, 3 +/* 801AE8C0 001AB820 4E 80 00 20 */ blr + +.global sub_801ae8c4 +sub_801ae8c4: +/* 801AE8C4 001AB824 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801AE8C8 001AB828 7C 08 02 A6 */ mflr r0 +/* 801AE8CC 001AB82C 7C 64 1B 78 */ mr r4, r3 +/* 801AE8D0 001AB830 38 A0 00 12 */ li r5, 0x12 +/* 801AE8D4 001AB834 90 01 00 34 */ stw r0, 0x34(r1) +/* 801AE8D8 001AB838 38 61 00 18 */ addi r3, r1, 0x18 +/* 801AE8DC 001AB83C 38 C1 00 10 */ addi r6, r1, 0x10 +/* 801AE8E0 001AB840 C0 0D 90 84 */ lfs f0, lbl_805A7C44@sda21(r13) +/* 801AE8E4 001AB844 80 0D 90 80 */ lwz r0, lbl_805A7C40@sda21(r13) +/* 801AE8E8 001AB848 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801AE8EC 001AB84C 80 84 00 64 */ lwz r4, 0x64(r4) +/* 801AE8F0 001AB850 90 01 00 14 */ stw r0, 0x14(r1) +/* 801AE8F4 001AB854 80 84 00 10 */ lwz r4, 0x10(r4) +/* 801AE8F8 001AB858 4B E7 C6 E1 */ bl GetTimeOfUserEvent__9CAnimDataCF14EUserEventTypeRC13CCharAnimTime +/* 801AE8FC 001AB85C C0 21 00 18 */ lfs f1, 0x18(r1) +/* 801AE900 001AB860 38 61 00 20 */ addi r3, r1, 0x20 +/* 801AE904 001AB864 80 A1 00 1C */ lwz r5, 0x1c(r1) +/* 801AE908 001AB868 38 81 00 08 */ addi r4, r1, 8 +/* 801AE90C 001AB86C C0 0D 90 84 */ lfs f0, lbl_805A7C44@sda21(r13) +/* 801AE910 001AB870 80 0D 90 80 */ lwz r0, lbl_805A7C40@sda21(r13) +/* 801AE914 001AB874 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 801AE918 001AB878 90 A1 00 24 */ stw r5, 0x24(r1) +/* 801AE91C 001AB87C D0 01 00 08 */ stfs f0, 8(r1) +/* 801AE920 001AB880 90 01 00 0C */ stw r0, 0xc(r1) +/* 801AE924 001AB884 48 19 A1 DD */ bl __eq__13CCharAnimTimeCFRC13CCharAnimTime +/* 801AE928 001AB888 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801AE92C 001AB88C 41 82 00 0C */ beq lbl_801AE938 +/* 801AE930 001AB890 C0 22 A8 BC */ lfs f1, lbl_805AC5DC@sda21(r2) +/* 801AE934 001AB894 48 00 00 08 */ b lbl_801AE93C +lbl_801AE938: +/* 801AE938 001AB898 C0 21 00 20 */ lfs f1, 0x20(r1) +lbl_801AE93C: +/* 801AE93C 001AB89C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801AE940 001AB8A0 7C 08 03 A6 */ mtlr r0 +/* 801AE944 001AB8A4 38 21 00 30 */ addi r1, r1, 0x30 +/* 801AE948 001AB8A8 4E 80 00 20 */ blr + +.global sub_801ae94c +sub_801ae94c: +/* 801AE94C 001AB8AC EC 03 10 28 */ fsubs f0, f3, f2 +/* 801AE950 001AB8B0 C0 62 A8 DC */ lfs f3, lbl_805AC5FC@sda21(r2) +/* 801AE954 001AB8B4 80 63 00 64 */ lwz r3, 0x64(r3) +/* 801AE958 001AB8B8 FC 80 18 90 */ fmr f4, f3 +/* 801AE95C 001AB8BC EC 21 10 3A */ fmadds f1, f1, f0, f2 +/* 801AE960 001AB8C0 FC 00 18 90 */ fmr f0, f3 +/* 801AE964 001AB8C4 EC 63 00 72 */ fmuls f3, f3, f1 +/* 801AE968 001AB8C8 EC 84 00 72 */ fmuls f4, f4, f1 +/* 801AE96C 001AB8CC EC 00 00 72 */ fmuls f0, f0, f1 +/* 801AE970 001AB8D0 D0 63 00 00 */ stfs f3, 0(r3) +/* 801AE974 001AB8D4 D0 83 00 04 */ stfs f4, 4(r3) +/* 801AE978 001AB8D8 D0 03 00 08 */ stfs f0, 8(r3) +/* 801AE97C 001AB8DC 4E 80 00 20 */ blr + +.global sub_801ae980 +sub_801ae980: +/* 801AE980 001AB8E0 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801AE984 001AB8E4 7C 08 02 A6 */ mflr r0 +/* 801AE988 001AB8E8 90 01 00 34 */ stw r0, 0x34(r1) +/* 801AE98C 001AB8EC DB E1 00 20 */ stfd f31, 0x20(r1) +/* 801AE990 001AB8F0 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 801AE994 001AB8F4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801AE998 001AB8F8 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801AE99C 001AB8FC 88 01 00 0C */ lbz r0, 0xc(r1) +/* 801AE9A0 001AB900 38 A0 00 00 */ li r5, 0 +/* 801AE9A4 001AB904 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 801AE9A8 001AB908 81 83 00 00 */ lwz r12, 0(r3) +/* 801AE9AC 001AB90C 98 01 00 0C */ stb r0, 0xc(r1) +/* 801AE9B0 001AB910 54 00 06 3E */ clrlwi r0, r0, 0x18 +/* 801AE9B4 001AB914 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 801AE9B8 001AB918 38 C0 00 04 */ li r6, 4 +/* 801AE9BC 001AB91C 98 01 00 0C */ stb r0, 0xc(r1) +/* 801AE9C0 001AB920 54 00 06 3E */ clrlwi r0, r0, 0x18 +/* 801AE9C4 001AB924 50 A0 2E B4 */ rlwimi r0, r5, 5, 0x1a, 0x1a +/* 801AE9C8 001AB928 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801AE9CC 001AB92C 7C 7E 1B 78 */ mr r30, r3 +/* 801AE9D0 001AB930 7C 9F 23 78 */ mr r31, r4 +/* 801AE9D4 001AB934 90 C1 00 08 */ stw r6, 8(r1) +/* 801AE9D8 001AB938 98 01 00 0C */ stb r0, 0xc(r1) +/* 801AE9DC 001AB93C 7D 89 03 A6 */ mtctr r12 +/* 801AE9E0 001AB940 4E 80 04 21 */ bctrl +/* 801AE9E4 001AB944 C0 23 00 00 */ lfs f1, 0(r3) +/* 801AE9E8 001AB948 7F C3 F3 78 */ mr r3, r30 +/* 801AE9EC 001AB94C 81 9E 00 00 */ lwz r12, 0(r30) +/* 801AE9F0 001AB950 7F E4 FB 78 */ mr r4, r31 +/* 801AE9F4 001AB954 C0 1E 05 74 */ lfs f0, 0x574(r30) +/* 801AE9F8 001AB958 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801AE9FC 001AB95C EF E1 00 28 */ fsubs f31, f1, f0 +/* 801AEA00 001AB960 7D 89 03 A6 */ mtctr r12 +/* 801AEA04 001AB964 4E 80 04 21 */ bctrl +/* 801AEA08 001AB968 D3 E3 00 00 */ stfs f31, 0(r3) +/* 801AEA0C 001AB96C 38 60 00 01 */ li r3, 1 +/* 801AEA10 001AB970 C0 02 A8 BC */ lfs f0, lbl_805AC5DC@sda21(r2) +/* 801AEA14 001AB974 C0 3E 05 78 */ lfs f1, 0x578(r30) +/* 801AEA18 001AB978 D0 3E 07 D4 */ stfs f1, 0x7d4(r30) +/* 801AEA1C 001AB97C 88 1E 08 E4 */ lbz r0, 0x8e4(r30) +/* 801AEA20 001AB980 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801AEA24 001AB984 98 1E 08 E4 */ stb r0, 0x8e4(r30) +/* 801AEA28 001AB988 D0 1E 07 D8 */ stfs f0, 0x7d8(r30) +/* 801AEA2C 001AB98C 80 0D A4 9C */ lwz r0, lbl_805A905C@sda21(r13) +/* 801AEA30 001AB990 90 1E 04 30 */ stw r0, 0x430(r30) +/* 801AEA34 001AB994 80 7E 07 88 */ lwz r3, 0x788(r30) +/* 801AEA38 001AB998 38 03 00 01 */ addi r0, r3, 1 +/* 801AEA3C 001AB99C 90 1E 07 88 */ stw r0, 0x788(r30) +/* 801AEA40 001AB9A0 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 801AEA44 001AB9A4 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801AEA48 001AB9A8 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 801AEA4C 001AB9AC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801AEA50 001AB9B0 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801AEA54 001AB9B4 7C 08 03 A6 */ mtlr r0 +/* 801AEA58 001AB9B8 38 21 00 30 */ addi r1, r1, 0x30 +/* 801AEA5C 001AB9BC 4E 80 00 20 */ blr + +.global sub_801aea60 +sub_801aea60: +/* 801AEA60 001AB9C0 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801AEA64 001AB9C4 7C 08 02 A6 */ mflr r0 +/* 801AEA68 001AB9C8 90 01 00 44 */ stw r0, 0x44(r1) +/* 801AEA6C 001AB9CC DB E1 00 30 */ stfd f31, 0x30(r1) +/* 801AEA70 001AB9D0 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 801AEA74 001AB9D4 DB C1 00 20 */ stfd f30, 0x20(r1) +/* 801AEA78 001AB9D8 F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 +/* 801AEA7C 001AB9DC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801AEA80 001AB9E0 7C 7F 1B 78 */ mr r31, r3 +/* 801AEA84 001AB9E4 C0 02 A8 BC */ lfs f0, lbl_805AC5DC@sda21(r2) +/* 801AEA88 001AB9E8 C0 43 07 C0 */ lfs f2, 0x7c0(r3) +/* 801AEA8C 001AB9EC FF E0 08 90 */ fmr f31, f1 +/* 801AEA90 001AB9F0 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801AEA94 001AB9F4 40 81 00 28 */ ble lbl_801AEABC +/* 801AEA98 001AB9F8 80 1F 07 88 */ lwz r0, 0x788(r31) +/* 801AEA9C 001AB9FC 2C 00 00 02 */ cmpwi r0, 2 +/* 801AEAA0 001ABA00 40 80 00 08 */ bge lbl_801AEAA8 +/* 801AEAA4 001ABA04 48 00 00 0C */ b lbl_801AEAB0 +lbl_801AEAA8: +/* 801AEAA8 001ABA08 C0 02 A8 E8 */ lfs f0, lbl_805AC608@sda21(r2) +/* 801AEAAC 001ABA0C EC 20 07 F2 */ fmuls f1, f0, f31 +lbl_801AEAB0: +/* 801AEAB0 001ABA10 C0 1F 07 C0 */ lfs f0, 0x7c0(r31) +/* 801AEAB4 001ABA14 EC 00 08 28 */ fsubs f0, f0, f1 +/* 801AEAB8 001ABA18 D0 1F 07 C0 */ stfs f0, 0x7c0(r31) +lbl_801AEABC: +/* 801AEABC 001ABA1C C0 3F 07 BC */ lfs f1, 0x7bc(r31) +/* 801AEAC0 001ABA20 C0 02 A8 BC */ lfs f0, lbl_805AC5DC@sda21(r2) +/* 801AEAC4 001ABA24 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801AEAC8 001ABA28 40 81 00 0C */ ble lbl_801AEAD4 +/* 801AEACC 001ABA2C EC 01 F8 28 */ fsubs f0, f1, f31 +/* 801AEAD0 001ABA30 D0 1F 07 BC */ stfs f0, 0x7bc(r31) +lbl_801AEAD4: +/* 801AEAD4 001ABA34 C0 3F 07 D0 */ lfs f1, 0x7d0(r31) +/* 801AEAD8 001ABA38 C0 02 A8 BC */ lfs f0, lbl_805AC5DC@sda21(r2) +/* 801AEADC 001ABA3C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801AEAE0 001ABA40 40 81 00 0C */ ble lbl_801AEAEC +/* 801AEAE4 001ABA44 EC 01 F8 28 */ fsubs f0, f1, f31 +/* 801AEAE8 001ABA48 D0 1F 07 D0 */ stfs f0, 0x7d0(r31) +lbl_801AEAEC: +/* 801AEAEC 001ABA4C C0 3F 07 CC */ lfs f1, 0x7cc(r31) +/* 801AEAF0 001ABA50 C0 02 A8 BC */ lfs f0, lbl_805AC5DC@sda21(r2) +/* 801AEAF4 001ABA54 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801AEAF8 001ABA58 40 81 00 0C */ ble lbl_801AEB04 +/* 801AEAFC 001ABA5C EC 01 F8 28 */ fsubs f0, f1, f31 +/* 801AEB00 001ABA60 D0 1F 07 CC */ stfs f0, 0x7cc(r31) +lbl_801AEB04: +/* 801AEB04 001ABA64 88 1F 08 E4 */ lbz r0, 0x8e4(r31) +/* 801AEB08 001ABA68 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 801AEB0C 001ABA6C 41 82 00 88 */ beq lbl_801AEB94 +/* 801AEB10 001ABA70 C0 3F 07 D8 */ lfs f1, 0x7d8(r31) +/* 801AEB14 001ABA74 C0 02 A8 EC */ lfs f0, lbl_805AC60C@sda21(r2) +/* 801AEB18 001ABA78 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801AEB1C 001ABA7C 4C 40 13 82 */ cror 2, 0, 2 +/* 801AEB20 001ABA80 40 82 00 74 */ bne lbl_801AEB94 +/* 801AEB24 001ABA84 48 16 62 21 */ bl FastCosR__5CMathFf +/* 801AEB28 001ABA88 C0 02 A8 B0 */ lfs f0, lbl_805AC5D0@sda21(r2) +/* 801AEB2C 001ABA8C 38 61 00 08 */ addi r3, r1, 8 +/* 801AEB30 001ABA90 C0 82 A8 DC */ lfs f4, lbl_805AC5FC@sda21(r2) +/* 801AEB34 001ABA94 EC 00 00 72 */ fmuls f0, f0, f1 +/* 801AEB38 001ABA98 C0 22 A8 BC */ lfs f1, lbl_805AC5DC@sda21(r2) +/* 801AEB3C 001ABA9C FC 40 08 90 */ fmr f2, f1 +/* 801AEB40 001ABAA0 FC 60 08 90 */ fmr f3, f1 +/* 801AEB44 001ABAA4 FF C0 02 10 */ fabs f30, f0 +/* 801AEB48 001ABAA8 48 1B 48 A5 */ bl __ct__6CColorFffff +/* 801AEB4C 001ABAAC FC 20 F0 18 */ frsp f1, f30 +/* 801AEB50 001ABAB0 7C 64 1B 78 */ mr r4, r3 +/* 801AEB54 001ABAB4 38 61 00 0C */ addi r3, r1, 0xc +/* 801AEB58 001ABAB8 38 AD A4 9C */ addi r5, r13, lbl_805A905C@sda21 +/* 801AEB5C 001ABABC 48 1B 47 51 */ bl Lerp__6CColorFRC6CColorRC6CColorf +/* 801AEB60 001ABAC0 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801AEB64 001ABAC4 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801AEB68 001ABAC8 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 801AEB6C 001ABACC C0 22 A8 BC */ lfs f1, lbl_805AC5DC@sda21(r2) +/* 801AEB70 001ABAD0 90 1F 04 30 */ stw r0, 0x430(r31) +/* 801AEB74 001ABAD4 7F E3 FB 78 */ mr r3, r31 +/* 801AEB78 001ABAD8 81 9F 00 00 */ lwz r12, 0(r31) +/* 801AEB7C 001ABADC 81 8C 00 90 */ lwz r12, 0x90(r12) +/* 801AEB80 001ABAE0 7D 89 03 A6 */ mtctr r12 +/* 801AEB84 001ABAE4 4E 80 04 21 */ bctrl +/* 801AEB88 001ABAE8 C0 1F 07 D8 */ lfs f0, 0x7d8(r31) +/* 801AEB8C 001ABAEC EC 00 F8 2A */ fadds f0, f0, f31 +/* 801AEB90 001ABAF0 D0 1F 07 D8 */ stfs f0, 0x7d8(r31) +lbl_801AEB94: +/* 801AEB94 001ABAF4 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 801AEB98 001ABAF8 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 801AEB9C 001ABAFC E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 +/* 801AEBA0 001ABB00 CB C1 00 20 */ lfd f30, 0x20(r1) +/* 801AEBA4 001ABB04 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801AEBA8 001ABB08 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801AEBAC 001ABB0C 7C 08 03 A6 */ mtlr r0 +/* 801AEBB0 001ABB10 38 21 00 40 */ addi r1, r1, 0x40 +/* 801AEBB4 001ABB14 4E 80 00 20 */ blr + +.global sub_801aebb8 +sub_801aebb8: +/* 801AEBB8 001ABB18 80 03 07 FC */ lwz r0, 0x7fc(r3) +/* 801AEBBC 001ABB1C 38 63 08 00 */ addi r3, r3, 0x800 +/* 801AEBC0 001ABB20 7C 66 1B 78 */ mr r6, r3 +/* 801AEBC4 001ABB24 54 00 08 3C */ slwi r0, r0, 1 +/* 801AEBC8 001ABB28 7C A3 02 14 */ add r5, r3, r0 +/* 801AEBCC 001ABB2C 48 00 00 20 */ b lbl_801AEBEC +lbl_801AEBD0: +/* 801AEBD0 001ABB30 A0 66 00 00 */ lhz r3, 0(r6) +/* 801AEBD4 001ABB34 A0 04 00 00 */ lhz r0, 0(r4) +/* 801AEBD8 001ABB38 7C 03 00 40 */ cmplw r3, r0 +/* 801AEBDC 001ABB3C 40 82 00 0C */ bne lbl_801AEBE8 +/* 801AEBE0 001ABB40 38 60 00 01 */ li r3, 1 +/* 801AEBE4 001ABB44 4E 80 00 20 */ blr +lbl_801AEBE8: +/* 801AEBE8 001ABB48 38 C6 00 02 */ addi r6, r6, 2 +lbl_801AEBEC: +/* 801AEBEC 001ABB4C 7C 06 28 40 */ cmplw r6, r5 +/* 801AEBF0 001ABB50 40 82 FF E0 */ bne lbl_801AEBD0 +/* 801AEBF4 001ABB54 38 60 00 00 */ li r3, 0 +/* 801AEBF8 001ABB58 4E 80 00 20 */ blr + +.global sub_801aebfc +sub_801aebfc: +/* 801AEBFC 001ABB5C 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801AEC00 001ABB60 7C 08 02 A6 */ mflr r0 +/* 801AEC04 001ABB64 90 01 00 54 */ stw r0, 0x54(r1) +/* 801AEC08 001ABB68 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 801AEC0C 001ABB6C F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 801AEC10 001ABB70 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801AEC14 001ABB74 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801AEC18 001ABB78 93 A1 00 34 */ stw r29, 0x34(r1) +/* 801AEC1C 001ABB7C 93 81 00 30 */ stw r28, 0x30(r1) +/* 801AEC20 001ABB80 C0 02 A8 BC */ lfs f0, lbl_805AC5DC@sda21(r2) +/* 801AEC24 001ABB84 7C 7E 1B 78 */ mr r30, r3 +/* 801AEC28 001ABB88 3B BE 08 00 */ addi r29, r30, 0x800 +/* 801AEC2C 001ABB8C 7C 9F 23 78 */ mr r31, r4 +/* 801AEC30 001ABB90 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801AEC34 001ABB94 7F BC EB 78 */ mr r28, r29 +/* 801AEC38 001ABB98 48 00 00 6C */ b lbl_801AECA4 +lbl_801AEC3C: +/* 801AEC3C 001ABB9C A0 1C 00 00 */ lhz r0, 0(r28) +/* 801AEC40 001ABBA0 7F E3 FB 78 */ mr r3, r31 +/* 801AEC44 001ABBA4 38 81 00 0C */ addi r4, r1, 0xc +/* 801AEC48 001ABBA8 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801AEC4C 001ABBAC 4B E9 D9 29 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801AEC50 001ABBB0 7C 64 1B 78 */ mr r4, r3 +/* 801AEC54 001ABBB4 38 61 00 20 */ addi r3, r1, 0x20 +/* 801AEC58 001ABBB8 4B F0 06 F5 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801AEC5C 001ABBBC 80 63 00 04 */ lwz r3, 4(r3) +/* 801AEC60 001ABBC0 28 03 00 00 */ cmplwi r3, 0 +/* 801AEC64 001ABBC4 41 82 00 3C */ beq lbl_801AECA0 +/* 801AEC68 001ABBC8 81 83 00 00 */ lwz r12, 0(r3) +/* 801AEC6C 001ABBCC 7F E4 FB 78 */ mr r4, r31 +/* 801AEC70 001ABBD0 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801AEC74 001ABBD4 7D 89 03 A6 */ mtctr r12 +/* 801AEC78 001ABBD8 4E 80 04 21 */ bctrl +/* 801AEC7C 001ABBDC C0 03 00 00 */ lfs f0, 0(r3) +/* 801AEC80 001ABBE0 38 61 00 14 */ addi r3, r1, 0x14 +/* 801AEC84 001ABBE4 C0 3E 08 18 */ lfs f1, 0x818(r30) +/* 801AEC88 001ABBE8 38 81 00 10 */ addi r4, r1, 0x10 +/* 801AEC8C 001ABBEC EC 01 00 28 */ fsubs f0, f1, f0 +/* 801AEC90 001ABBF0 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801AEC94 001ABBF4 4B EA 0A 9D */ bl "Max__5CMathFRCfRCf" +/* 801AEC98 001ABBF8 C0 03 00 00 */ lfs f0, 0(r3) +/* 801AEC9C 001ABBFC D0 01 00 14 */ stfs f0, 0x14(r1) +lbl_801AECA0: +/* 801AECA0 001ABC00 3B 9C 00 02 */ addi r28, r28, 2 +lbl_801AECA4: +/* 801AECA4 001ABC04 80 1E 07 FC */ lwz r0, 0x7fc(r30) +/* 801AECA8 001ABC08 54 00 08 3C */ slwi r0, r0, 1 +/* 801AECAC 001ABC0C 7C 1D 02 14 */ add r0, r29, r0 +/* 801AECB0 001ABC10 7C 1C 00 40 */ cmplw r28, r0 +/* 801AECB4 001ABC14 40 82 FF 88 */ bne lbl_801AEC3C +/* 801AECB8 001ABC18 80 1E 07 80 */ lwz r0, 0x780(r30) +/* 801AECBC 001ABC1C 2C 00 00 03 */ cmpwi r0, 3 +/* 801AECC0 001ABC20 40 82 00 50 */ bne lbl_801AED10 +/* 801AECC4 001ABC24 7F C3 F3 78 */ mr r3, r30 +/* 801AECC8 001ABC28 7F E4 FB 78 */ mr r4, r31 +/* 801AECCC 001ABC2C 81 9E 00 00 */ lwz r12, 0(r30) +/* 801AECD0 001ABC30 C0 22 A8 BC */ lfs f1, lbl_805AC5DC@sda21(r2) +/* 801AECD4 001ABC34 81 8C 02 88 */ lwz r12, 0x288(r12) +/* 801AECD8 001ABC38 7D 89 03 A6 */ mtctr r12 +/* 801AECDC 001ABC3C 4E 80 04 21 */ bctrl +/* 801AECE0 001ABC40 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801AECE4 001ABC44 41 82 00 18 */ beq lbl_801AECFC +/* 801AECE8 001ABC48 C0 3E 08 14 */ lfs f1, 0x814(r30) +/* 801AECEC 001ABC4C C0 01 00 14 */ lfs f0, 0x14(r1) +/* 801AECF0 001ABC50 EC 01 00 2A */ fadds f0, f1, f0 +/* 801AECF4 001ABC54 D0 1E 08 14 */ stfs f0, 0x814(r30) +/* 801AECF8 001ABC58 48 00 00 24 */ b lbl_801AED1C +lbl_801AECFC: +/* 801AECFC 001ABC5C C0 3E 08 10 */ lfs f1, 0x810(r30) +/* 801AED00 001ABC60 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 801AED04 001ABC64 EC 01 00 2A */ fadds f0, f1, f0 +/* 801AED08 001ABC68 D0 1E 08 10 */ stfs f0, 0x810(r30) +/* 801AED0C 001ABC6C 48 00 00 10 */ b lbl_801AED1C +lbl_801AED10: +/* 801AED10 001ABC70 C0 02 A8 BC */ lfs f0, lbl_805AC5DC@sda21(r2) +/* 801AED14 001ABC74 D0 1E 08 14 */ stfs f0, 0x814(r30) +/* 801AED18 001ABC78 D0 1E 08 10 */ stfs f0, 0x810(r30) +lbl_801AED1C: +/* 801AED1C 001ABC7C 7F C3 F3 78 */ mr r3, r30 +/* 801AED20 001ABC80 7F E4 FB 78 */ mr r4, r31 +/* 801AED24 001ABC84 81 9E 00 00 */ lwz r12, 0(r30) +/* 801AED28 001ABC88 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801AED2C 001ABC8C 7D 89 03 A6 */ mtctr r12 +/* 801AED30 001ABC90 4E 80 04 21 */ bctrl +/* 801AED34 001ABC94 C0 23 00 00 */ lfs f1, 0(r3) +/* 801AED38 001ABC98 C0 02 A8 BC */ lfs f0, lbl_805AC5DC@sda21(r2) +/* 801AED3C 001ABC9C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801AED40 001ABCA0 4C 40 13 82 */ cror 2, 0, 2 +/* 801AED44 001ABCA4 40 82 00 3C */ bne lbl_801AED80 +/* 801AED48 001ABCA8 81 9E 00 00 */ lwz r12, 0(r30) +/* 801AED4C 001ABCAC 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801AED50 001ABCB0 38 A4 66 A0 */ addi r5, r4, skZero3f@l +/* 801AED54 001ABCB4 7F C3 F3 78 */ mr r3, r30 +/* 801AED58 001ABCB8 81 8C 00 84 */ lwz r12, 0x84(r12) +/* 801AED5C 001ABCBC 7F E4 FB 78 */ mr r4, r31 +/* 801AED60 001ABCC0 38 C0 00 14 */ li r6, 0x14 +/* 801AED64 001ABCC4 7D 89 03 A6 */ mtctr r12 +/* 801AED68 001ABCC8 4E 80 04 21 */ bctrl +/* 801AED6C 001ABCCC 7F C3 F3 78 */ mr r3, r30 +/* 801AED70 001ABCD0 7F E5 FB 78 */ mr r5, r31 +/* 801AED74 001ABCD4 38 80 00 29 */ li r4, 0x29 +/* 801AED78 001ABCD8 4B EA 52 09 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801AED7C 001ABCDC 48 00 00 6C */ b lbl_801AEDE8 +lbl_801AED80: +/* 801AED80 001ABCE0 7F BC EB 78 */ mr r28, r29 +/* 801AED84 001ABCE4 48 00 00 50 */ b lbl_801AEDD4 +lbl_801AED88: +/* 801AED88 001ABCE8 A0 1C 00 00 */ lhz r0, 0(r28) +/* 801AED8C 001ABCEC 7F E3 FB 78 */ mr r3, r31 +/* 801AED90 001ABCF0 38 81 00 08 */ addi r4, r1, 8 +/* 801AED94 001ABCF4 B0 01 00 08 */ sth r0, 8(r1) +/* 801AED98 001ABCF8 4B E9 D7 DD */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801AED9C 001ABCFC 7C 64 1B 78 */ mr r4, r3 +/* 801AEDA0 001ABD00 38 61 00 18 */ addi r3, r1, 0x18 +/* 801AEDA4 001ABD04 4B F0 05 A9 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801AEDA8 001ABD08 80 63 00 04 */ lwz r3, 4(r3) +/* 801AEDAC 001ABD0C 28 03 00 00 */ cmplwi r3, 0 +/* 801AEDB0 001ABD10 41 82 00 20 */ beq lbl_801AEDD0 +/* 801AEDB4 001ABD14 81 83 00 00 */ lwz r12, 0(r3) +/* 801AEDB8 001ABD18 7F E4 FB 78 */ mr r4, r31 +/* 801AEDBC 001ABD1C C3 FE 08 18 */ lfs f31, 0x818(r30) +/* 801AEDC0 001ABD20 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801AEDC4 001ABD24 7D 89 03 A6 */ mtctr r12 +/* 801AEDC8 001ABD28 4E 80 04 21 */ bctrl +/* 801AEDCC 001ABD2C D3 E3 00 00 */ stfs f31, 0(r3) +lbl_801AEDD0: +/* 801AEDD0 001ABD30 3B 9C 00 02 */ addi r28, r28, 2 +lbl_801AEDD4: +/* 801AEDD4 001ABD34 80 1E 07 FC */ lwz r0, 0x7fc(r30) +/* 801AEDD8 001ABD38 54 00 08 3C */ slwi r0, r0, 1 +/* 801AEDDC 001ABD3C 7C 1D 02 14 */ add r0, r29, r0 +/* 801AEDE0 001ABD40 7C 1C 00 40 */ cmplw r28, r0 +/* 801AEDE4 001ABD44 40 82 FF A4 */ bne lbl_801AED88 +lbl_801AEDE8: +/* 801AEDE8 001ABD48 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 801AEDEC 001ABD4C 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801AEDF0 001ABD50 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 801AEDF4 001ABD54 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801AEDF8 001ABD58 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801AEDFC 001ABD5C 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 801AEE00 001ABD60 83 81 00 30 */ lwz r28, 0x30(r1) +/* 801AEE04 001ABD64 7C 08 03 A6 */ mtlr r0 +/* 801AEE08 001ABD68 38 21 00 50 */ addi r1, r1, 0x50 +/* 801AEE0C 001ABD6C 4E 80 00 20 */ blr + +.global sub_801aee10 +sub_801aee10: +/* 801AEE10 001ABD70 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801AEE14 001ABD74 7C 08 02 A6 */ mflr r0 +/* 801AEE18 001ABD78 90 01 00 54 */ stw r0, 0x54(r1) +/* 801AEE1C 001ABD7C BF 21 00 34 */ stmw r25, 0x34(r1) +/* 801AEE20 001ABD80 7C 7C 1B 78 */ mr r28, r3 +/* 801AEE24 001ABD84 7C 9D 23 78 */ mr r29, r4 +/* 801AEE28 001ABD88 3B FC 08 00 */ addi r31, r28, 0x800 +/* 801AEE2C 001ABD8C 80 A3 07 FC */ lwz r5, 0x7fc(r3) +/* 801AEE30 001ABD90 38 60 00 00 */ li r3, 0 +/* 801AEE34 001ABD94 2C 05 00 00 */ cmpwi r5, 0 +/* 801AEE38 001ABD98 40 81 00 40 */ ble lbl_801AEE78 +/* 801AEE3C 001ABD9C 2C 05 00 08 */ cmpwi r5, 8 +/* 801AEE40 001ABDA0 38 85 FF F8 */ addi r4, r5, -8 +/* 801AEE44 001ABDA4 40 81 00 20 */ ble lbl_801AEE64 +/* 801AEE48 001ABDA8 38 04 00 07 */ addi r0, r4, 7 +/* 801AEE4C 001ABDAC 54 00 E8 FE */ srwi r0, r0, 3 +/* 801AEE50 001ABDB0 7C 09 03 A6 */ mtctr r0 +/* 801AEE54 001ABDB4 2C 04 00 00 */ cmpwi r4, 0 +/* 801AEE58 001ABDB8 40 81 00 0C */ ble lbl_801AEE64 +lbl_801AEE5C: +/* 801AEE5C 001ABDBC 38 63 00 08 */ addi r3, r3, 8 +/* 801AEE60 001ABDC0 42 00 FF FC */ bdnz lbl_801AEE5C +lbl_801AEE64: +/* 801AEE64 001ABDC4 7C 03 28 50 */ subf r0, r3, r5 +/* 801AEE68 001ABDC8 7C 09 03 A6 */ mtctr r0 +/* 801AEE6C 001ABDCC 7C 03 28 00 */ cmpw r3, r5 +/* 801AEE70 001ABDD0 40 80 00 08 */ bge lbl_801AEE78 +lbl_801AEE74: +/* 801AEE74 001ABDD4 42 00 00 00 */ bdnz lbl_801AEE74 +lbl_801AEE78: +/* 801AEE78 001ABDD8 38 00 00 00 */ li r0, 0 +/* 801AEE7C 001ABDDC 3B C0 00 00 */ li r30, 0 +/* 801AEE80 001ABDE0 90 1C 07 FC */ stw r0, 0x7fc(r28) +/* 801AEE84 001ABDE4 48 00 00 EC */ b lbl_801AEF70 +lbl_801AEE88: +/* 801AEE88 001ABDE8 80 7C 07 A4 */ lwz r3, 0x7a4(r28) +/* 801AEE8C 001ABDEC 7F C4 F3 78 */ mr r4, r30 +/* 801AEE90 001ABDF0 4B FF 83 A9 */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 801AEE94 001ABDF4 7C 7A 1B 78 */ mr r26, r3 +/* 801AEE98 001ABDF8 7F A3 EB 78 */ mr r3, r29 +/* 801AEE9C 001ABDFC A0 1A 00 3C */ lhz r0, 0x3c(r26) +/* 801AEEA0 001ABE00 38 81 00 08 */ addi r4, r1, 8 +/* 801AEEA4 001ABE04 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801AEEA8 001ABE08 B0 01 00 08 */ sth r0, 8(r1) +/* 801AEEAC 001ABE0C 4B E9 D6 C9 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801AEEB0 001ABE10 7C 64 1B 78 */ mr r4, r3 +/* 801AEEB4 001ABE14 38 61 00 10 */ addi r3, r1, 0x10 +/* 801AEEB8 001ABE18 4B F0 04 95 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801AEEBC 001ABE1C 83 23 00 04 */ lwz r25, 4(r3) +/* 801AEEC0 001ABE20 28 19 00 00 */ cmplwi r25, 0 +/* 801AEEC4 001ABE24 41 82 00 A8 */ beq lbl_801AEF6C +/* 801AEEC8 001ABE28 7F 83 E3 78 */ mr r3, r28 +/* 801AEECC 001ABE2C 7F A4 EB 78 */ mr r4, r29 +/* 801AEED0 001ABE30 81 9C 00 00 */ lwz r12, 0(r28) +/* 801AEED4 001ABE34 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801AEED8 001ABE38 7D 89 03 A6 */ mtctr r12 +/* 801AEEDC 001ABE3C 4E 80 04 21 */ bctrl +/* 801AEEE0 001ABE40 7C 7B 1B 78 */ mr r27, r3 +/* 801AEEE4 001ABE44 7F 23 CB 78 */ mr r3, r25 +/* 801AEEE8 001ABE48 81 99 00 00 */ lwz r12, 0(r25) +/* 801AEEEC 001ABE4C 7F A4 EB 78 */ mr r4, r29 +/* 801AEEF0 001ABE50 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801AEEF4 001ABE54 7D 89 03 A6 */ mtctr r12 +/* 801AEEF8 001ABE58 4E 80 04 21 */ bctrl +/* 801AEEFC 001ABE5C C0 1B 00 00 */ lfs f0, 0(r27) +/* 801AEF00 001ABE60 3C 80 80 3D */ lis r4, lbl_803D1590@ha +/* 801AEF04 001ABE64 38 84 15 90 */ addi r4, r4, lbl_803D1590@l +/* 801AEF08 001ABE68 D0 03 00 00 */ stfs f0, 0(r3) +/* 801AEF0C 001ABE6C 38 84 00 58 */ addi r4, r4, 0x58 +/* 801AEF10 001ABE70 C0 1B 00 04 */ lfs f0, 4(r27) +/* 801AEF14 001ABE74 D0 03 00 04 */ stfs f0, 4(r3) +/* 801AEF18 001ABE78 38 61 00 18 */ addi r3, r1, 0x18 +/* 801AEF1C 001ABE7C 4B E5 5D 9D */ bl string_l__4rstlFPCc +/* 801AEF20 001ABE80 38 7A 00 2C */ addi r3, r26, 0x2c +/* 801AEF24 001ABE84 38 81 00 18 */ addi r4, r1, 0x18 +/* 801AEF28 001ABE88 4B EA 36 B9 */ 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" +/* 801AEF2C 001ABE8C 7C 7B 1B 78 */ mr r27, r3 +/* 801AEF30 001ABE90 38 61 00 18 */ addi r3, r1, 0x18 +/* 801AEF34 001ABE94 48 18 EB AD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801AEF38 001ABE98 57 60 06 3F */ clrlwi. r0, r27, 0x18 +/* 801AEF3C 001ABE9C 41 82 00 0C */ beq lbl_801AEF48 +/* 801AEF40 001ABEA0 A0 01 00 0C */ lhz r0, 0xc(r1) +/* 801AEF44 001ABEA4 B0 1C 08 0C */ sth r0, 0x80c(r28) +lbl_801AEF48: +/* 801AEF48 001ABEA8 80 1C 07 FC */ lwz r0, 0x7fc(r28) +/* 801AEF4C 001ABEAC 54 00 08 3C */ slwi r0, r0, 1 +/* 801AEF50 001ABEB0 7C 7F 02 15 */ add. r3, r31, r0 +/* 801AEF54 001ABEB4 41 82 00 0C */ beq lbl_801AEF60 +/* 801AEF58 001ABEB8 A0 01 00 0C */ lhz r0, 0xc(r1) +/* 801AEF5C 001ABEBC B0 03 00 00 */ sth r0, 0(r3) +lbl_801AEF60: +/* 801AEF60 001ABEC0 80 7C 07 FC */ lwz r3, 0x7fc(r28) +/* 801AEF64 001ABEC4 38 03 00 01 */ addi r0, r3, 1 +/* 801AEF68 001ABEC8 90 1C 07 FC */ stw r0, 0x7fc(r28) +lbl_801AEF6C: +/* 801AEF6C 001ABECC 3B DE 00 01 */ addi r30, r30, 1 +lbl_801AEF70: +/* 801AEF70 001ABED0 80 7C 07 A4 */ lwz r3, 0x7a4(r28) +/* 801AEF74 001ABED4 4B FF 82 D5 */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 801AEF78 001ABED8 7C 1E 18 40 */ cmplw r30, r3 +/* 801AEF7C 001ABEDC 41 80 FF 0C */ blt lbl_801AEE88 +/* 801AEF80 001ABEE0 7F 83 E3 78 */ mr r3, r28 +/* 801AEF84 001ABEE4 7F A4 EB 78 */ mr r4, r29 +/* 801AEF88 001ABEE8 81 9C 00 00 */ lwz r12, 0(r28) +/* 801AEF8C 001ABEEC 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801AEF90 001ABEF0 7D 89 03 A6 */ mtctr r12 +/* 801AEF94 001ABEF4 4E 80 04 21 */ bctrl +/* 801AEF98 001ABEF8 C0 03 00 00 */ lfs f0, 0(r3) +/* 801AEF9C 001ABEFC D0 1C 08 18 */ stfs f0, 0x818(r28) +/* 801AEFA0 001ABF00 BB 21 00 34 */ lmw r25, 0x34(r1) +/* 801AEFA4 001ABF04 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801AEFA8 001ABF08 7C 08 03 A6 */ mtlr r0 +/* 801AEFAC 001ABF0C 38 21 00 50 */ addi r1, r1, 0x50 +/* 801AEFB0 001ABF10 4E 80 00 20 */ blr + +.global sub_801aefb4 +sub_801aefb4: +/* 801AEFB4 001ABF14 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801AEFB8 001ABF18 7C 08 02 A6 */ mflr r0 +/* 801AEFBC 001ABF1C 90 01 00 34 */ stw r0, 0x34(r1) +/* 801AEFC0 001ABF20 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801AEFC4 001ABF24 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801AEFC8 001ABF28 7C BE 2B 78 */ mr r30, r5 +/* 801AEFCC 001ABF2C 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801AEFD0 001ABF30 7C 7D 1B 78 */ mr r29, r3 +/* 801AEFD4 001ABF34 A0 03 08 0C */ lhz r0, 0x80c(r3) +/* 801AEFD8 001ABF38 7C 83 23 78 */ mr r3, r4 +/* 801AEFDC 001ABF3C 38 81 00 08 */ addi r4, r1, 8 +/* 801AEFE0 001ABF40 B0 01 00 08 */ sth r0, 8(r1) +/* 801AEFE4 001ABF44 4B E9 D5 91 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801AEFE8 001ABF48 7C 64 1B 78 */ mr r4, r3 +/* 801AEFEC 001ABF4C 38 61 00 0C */ addi r3, r1, 0xc +/* 801AEFF0 001ABF50 4B F0 03 5D */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801AEFF4 001ABF54 83 E3 00 04 */ lwz r31, 4(r3) +/* 801AEFF8 001ABF58 28 1F 00 00 */ cmplwi r31, 0 +/* 801AEFFC 001ABF5C 41 82 00 3C */ beq lbl_801AF038 +/* 801AF000 001ABF60 57 C0 06 3F */ clrlwi. r0, r30, 0x18 +/* 801AF004 001ABF64 41 82 00 14 */ beq lbl_801AF018 +/* 801AF008 001ABF68 7F E3 FB 78 */ mr r3, r31 +/* 801AF00C 001ABF6C 38 9D 05 7C */ addi r4, r29, 0x57c +/* 801AF010 001ABF70 4B FF 9B 89 */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability +/* 801AF014 001ABF74 48 00 00 24 */ b lbl_801AF038 +lbl_801AF018: +/* 801AF018 001ABF78 7F A3 EB 78 */ mr r3, r29 +/* 801AF01C 001ABF7C 81 9D 00 00 */ lwz r12, 0(r29) +/* 801AF020 001ABF80 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 801AF024 001ABF84 7D 89 03 A6 */ mtctr r12 +/* 801AF028 001ABF88 4E 80 04 21 */ bctrl +/* 801AF02C 001ABF8C 7C 64 1B 78 */ mr r4, r3 +/* 801AF030 001ABF90 7F E3 FB 78 */ mr r3, r31 +/* 801AF034 001ABF94 4B FF 9B 65 */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability +lbl_801AF038: +/* 801AF038 001ABF98 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801AF03C 001ABF9C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801AF040 001ABFA0 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801AF044 001ABFA4 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801AF048 001ABFA8 7C 08 03 A6 */ mtlr r0 +/* 801AF04C 001ABFAC 38 21 00 30 */ addi r1, r1, 0x30 +/* 801AF050 001ABFB0 4E 80 00 20 */ blr + +.global sub_801af054 +sub_801af054: +/* 801AF054 001ABFB4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801AF058 001ABFB8 7C 08 02 A6 */ mflr r0 +/* 801AF05C 001ABFBC 38 A0 00 00 */ li r5, 0 +/* 801AF060 001ABFC0 90 01 00 24 */ stw r0, 0x24(r1) +/* 801AF064 001ABFC4 DB E1 00 18 */ stfd f31, 0x18(r1) +/* 801AF068 001ABFC8 FF E0 08 90 */ fmr f31, f1 +/* 801AF06C 001ABFCC 93 E1 00 14 */ stw r31, 0x14(r1) +/* 801AF070 001ABFD0 7C 9F 23 78 */ mr r31, r4 +/* 801AF074 001ABFD4 93 C1 00 10 */ stw r30, 0x10(r1) +/* 801AF078 001ABFD8 7C 7E 1B 78 */ mr r30, r3 +/* 801AF07C 001ABFDC 80 63 07 A4 */ lwz r3, 0x7a4(r3) +/* 801AF080 001ABFE0 4B FF 83 D1 */ bl Update__22CCollisionActorManagerCFfR13CStateManagerQ222CCollisionActorManager14EUpdateOptions +/* 801AF084 001ABFE4 FC 20 F8 90 */ fmr f1, f31 +/* 801AF088 001ABFE8 80 7E 07 9C */ lwz r3, 0x79c(r30) +/* 801AF08C 001ABFEC 7F E4 FB 78 */ mr r4, r31 +/* 801AF090 001ABFF0 38 A0 00 00 */ li r5, 0 +/* 801AF094 001ABFF4 4B FF 83 BD */ bl Update__22CCollisionActorManagerCFfR13CStateManagerQ222CCollisionActorManager14EUpdateOptions +/* 801AF098 001ABFF8 FC 20 F8 90 */ fmr f1, f31 +/* 801AF09C 001ABFFC 80 7E 07 A0 */ lwz r3, 0x7a0(r30) +/* 801AF0A0 001AC000 7F E4 FB 78 */ mr r4, r31 +/* 801AF0A4 001AC004 38 A0 00 00 */ li r5, 0 +/* 801AF0A8 001AC008 4B FF 83 A9 */ bl Update__22CCollisionActorManagerCFfR13CStateManagerQ222CCollisionActorManager14EUpdateOptions +/* 801AF0AC 001AC00C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801AF0B0 001AC010 CB E1 00 18 */ lfd f31, 0x18(r1) +/* 801AF0B4 001AC014 83 E1 00 14 */ lwz r31, 0x14(r1) +/* 801AF0B8 001AC018 83 C1 00 10 */ lwz r30, 0x10(r1) +/* 801AF0BC 001AC01C 7C 08 03 A6 */ mtlr r0 +/* 801AF0C0 001AC020 38 21 00 20 */ addi r1, r1, 0x20 +/* 801AF0C4 001AC024 4E 80 00 20 */ blr + +.global sub_801af0c8 +sub_801af0c8: +/* 801AF0C8 001AC028 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801AF0CC 001AC02C 7C 08 02 A6 */ mflr r0 +/* 801AF0D0 001AC030 90 01 00 54 */ stw r0, 0x54(r1) +/* 801AF0D4 001AC034 BF 21 00 34 */ stmw r25, 0x34(r1) +/* 801AF0D8 001AC038 7C 79 1B 78 */ mr r25, r3 +/* 801AF0DC 001AC03C 7C 9A 23 78 */ mr r26, r4 +/* 801AF0E0 001AC040 7C BB 2B 78 */ mr r27, r5 +/* 801AF0E4 001AC044 3B A0 00 00 */ li r29, 0 +/* 801AF0E8 001AC048 48 00 00 FC */ b lbl_801AF1E4 +lbl_801AF0EC: +/* 801AF0EC 001AC04C 80 7A 00 00 */ lwz r3, 0(r26) +/* 801AF0F0 001AC050 7F A4 EB 78 */ mr r4, r29 +/* 801AF0F4 001AC054 4B FF 81 45 */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 801AF0F8 001AC058 A0 03 00 3C */ lhz r0, 0x3c(r3) +/* 801AF0FC 001AC05C 7F 63 DB 78 */ mr r3, r27 +/* 801AF100 001AC060 38 81 00 08 */ addi r4, r1, 8 +/* 801AF104 001AC064 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801AF108 001AC068 B0 01 00 08 */ sth r0, 8(r1) +/* 801AF10C 001AC06C 4B E9 D4 69 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801AF110 001AC070 7C 7C 1B 79 */ or. r28, r3, r3 +/* 801AF114 001AC074 41 82 00 CC */ beq lbl_801AF1E0 +/* 801AF118 001AC078 80 AD 90 BC */ lwz r5, lbl_805A7C7C@sda21(r13) +/* 801AF11C 001AC07C 38 60 00 00 */ li r3, 0 +/* 801AF120 001AC080 38 80 00 01 */ li r4, 1 +/* 801AF124 001AC084 48 1D AD D1 */ bl __shl2i +/* 801AF128 001AC088 80 AD 90 C0 */ lwz r5, lbl_805A7C80@sda21(r13) +/* 801AF12C 001AC08C 7C 9E 23 78 */ mr r30, r4 +/* 801AF130 001AC090 7C 7F 1B 78 */ mr r31, r3 +/* 801AF134 001AC094 38 60 00 00 */ li r3, 0 +/* 801AF138 001AC098 38 80 00 01 */ li r4, 1 +/* 801AF13C 001AC09C 48 1D AD B9 */ bl __shl2i +/* 801AF140 001AC0A0 80 AD 90 C4 */ lwz r5, lbl_805A7C84@sda21(r13) +/* 801AF144 001AC0A4 7F DE 23 78 */ or r30, r30, r4 +/* 801AF148 001AC0A8 7F FF 1B 78 */ or r31, r31, r3 +/* 801AF14C 001AC0AC 38 60 00 00 */ li r3, 0 +/* 801AF150 001AC0B0 38 80 00 01 */ li r4, 1 +/* 801AF154 001AC0B4 48 1D AD A1 */ bl __shl2i +/* 801AF158 001AC0B8 80 AD 90 C8 */ lwz r5, lbl_805A7C88@sda21(r13) +/* 801AF15C 001AC0BC 7F DE 23 78 */ or r30, r30, r4 +/* 801AF160 001AC0C0 7F FF 1B 78 */ or r31, r31, r3 +/* 801AF164 001AC0C4 38 60 00 00 */ li r3, 0 +/* 801AF168 001AC0C8 38 80 00 01 */ li r4, 1 +/* 801AF16C 001AC0CC 48 1D AD 89 */ bl __shl2i +/* 801AF170 001AC0D0 80 AD 90 B8 */ lwz r5, lbl_805A7C78@sda21(r13) +/* 801AF174 001AC0D4 7F DE 23 78 */ or r30, r30, r4 +/* 801AF178 001AC0D8 7F FF 1B 78 */ or r31, r31, r3 +/* 801AF17C 001AC0DC 38 60 00 00 */ li r3, 0 +/* 801AF180 001AC0E0 38 80 00 01 */ li r4, 1 +/* 801AF184 001AC0E4 48 1D AD 71 */ bl __shl2i +/* 801AF188 001AC0E8 38 00 00 03 */ li r0, 3 +/* 801AF18C 001AC0EC 90 81 00 14 */ stw r4, 0x14(r1) +/* 801AF190 001AC0F0 38 81 00 10 */ addi r4, r1, 0x10 +/* 801AF194 001AC0F4 90 61 00 10 */ stw r3, 0x10(r1) +/* 801AF198 001AC0F8 7F 83 E3 78 */ mr r3, r28 +/* 801AF19C 001AC0FC 93 C1 00 1C */ stw r30, 0x1c(r1) +/* 801AF1A0 001AC100 93 E1 00 18 */ stw r31, 0x18(r1) +/* 801AF1A4 001AC104 90 01 00 20 */ stw r0, 0x20(r1) +/* 801AF1A8 001AC108 4B EA 46 F9 */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter +/* 801AF1AC 001AC10C 7F 83 E3 78 */ mr r3, r28 +/* 801AF1B0 001AC110 7F 66 DB 78 */ mr r6, r27 +/* 801AF1B4 001AC114 38 80 00 22 */ li r4, 0x22 +/* 801AF1B8 001AC118 38 A0 00 1B */ li r5, 0x1b +/* 801AF1BC 001AC11C 4B EA 50 F9 */ bl AddMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager +/* 801AF1C0 001AC120 7F 23 CB 78 */ mr r3, r25 +/* 801AF1C4 001AC124 81 99 00 00 */ lwz r12, 0(r25) +/* 801AF1C8 001AC128 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 801AF1CC 001AC12C 7D 89 03 A6 */ mtctr r12 +/* 801AF1D0 001AC130 4E 80 04 21 */ bctrl +/* 801AF1D4 001AC134 7C 64 1B 78 */ mr r4, r3 +/* 801AF1D8 001AC138 7F 83 E3 78 */ mr r3, r28 +/* 801AF1DC 001AC13C 4B FF 99 BD */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability +lbl_801AF1E0: +/* 801AF1E0 001AC140 3B BD 00 01 */ addi r29, r29, 1 +lbl_801AF1E4: +/* 801AF1E4 001AC144 80 7A 00 00 */ lwz r3, 0(r26) +/* 801AF1E8 001AC148 4B FF 80 61 */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 801AF1EC 001AC14C 7C 1D 18 40 */ cmplw r29, r3 +/* 801AF1F0 001AC150 41 80 FE FC */ blt lbl_801AF0EC +/* 801AF1F4 001AC154 BB 21 00 34 */ lmw r25, 0x34(r1) +/* 801AF1F8 001AC158 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801AF1FC 001AC15C 7C 08 03 A6 */ mtlr r0 +/* 801AF200 001AC160 38 21 00 50 */ addi r1, r1, 0x50 +/* 801AF204 001AC164 4E 80 00 20 */ blr + +.global sub_801af208 +sub_801af208: +/* 801AF208 001AC168 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 801AF20C 001AC16C 7C 08 02 A6 */ mflr r0 +/* 801AF210 001AC170 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 801AF214 001AC174 BF 21 00 C4 */ stmw r25, 0xc4(r1) +/* 801AF218 001AC178 7C B9 2B 78 */ mr r25, r5 +/* 801AF21C 001AC17C 7C DA 33 78 */ mr r26, r6 +/* 801AF220 001AC180 7C 9E 23 78 */ mr r30, r4 +/* 801AF224 001AC184 3B A1 00 60 */ addi r29, r1, 0x60 +/* 801AF228 001AC188 3B 81 00 A4 */ addi r28, r1, 0xa4 +/* 801AF22C 001AC18C 3B 60 00 00 */ li r27, 0 +/* 801AF230 001AC190 80 63 00 64 */ lwz r3, 0x64(r3) +/* 801AF234 001AC194 83 E3 00 10 */ lwz r31, 0x10(r3) +/* 801AF238 001AC198 48 00 01 20 */ b lbl_801AF358 +lbl_801AF23C: +/* 801AF23C 001AC19C 80 9E 00 00 */ lwz r4, 0(r30) +/* 801AF240 001AC1A0 38 61 00 24 */ addi r3, r1, 0x24 +/* 801AF244 001AC1A4 4B E5 5A 75 */ bl string_l__4rstlFPCc +/* 801AF248 001AC1A8 7F E4 FB 78 */ mr r4, r31 +/* 801AF24C 001AC1AC 38 61 00 0C */ addi r3, r1, 0xc +/* 801AF250 001AC1B0 38 A1 00 24 */ addi r5, r1, 0x24 +/* 801AF254 001AC1B4 4B E7 F5 E5 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801AF258 001AC1B8 88 01 00 0C */ lbz r0, 0xc(r1) +/* 801AF25C 001AC1BC 38 61 00 24 */ addi r3, r1, 0x24 +/* 801AF260 001AC1C0 98 01 00 10 */ stb r0, 0x10(r1) +/* 801AF264 001AC1C4 48 18 E8 7D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801AF268 001AC1C8 88 01 00 10 */ lbz r0, 0x10(r1) +/* 801AF26C 001AC1CC 28 00 00 FF */ cmplwi r0, 0xff +/* 801AF270 001AC1D0 41 82 00 E0 */ beq lbl_801AF350 +/* 801AF274 001AC1D4 80 9E 00 00 */ lwz r4, 0(r30) +/* 801AF278 001AC1D8 38 61 00 14 */ addi r3, r1, 0x14 +/* 801AF27C 001AC1DC 4B E5 5A 3D */ bl string_l__4rstlFPCc +/* 801AF280 001AC1E0 88 01 00 10 */ lbz r0, 0x10(r1) +/* 801AF284 001AC1E4 38 61 00 34 */ addi r3, r1, 0x34 +/* 801AF288 001AC1E8 C0 3E 00 04 */ lfs f1, 4(r30) +/* 801AF28C 001AC1EC 38 81 00 08 */ addi r4, r1, 8 +/* 801AF290 001AC1F0 98 01 00 08 */ stb r0, 8(r1) +/* 801AF294 001AC1F4 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801AF298 001AC1F8 C0 42 A8 F0 */ lfs f2, lbl_805AC610@sda21(r2) +/* 801AF29C 001AC1FC 4B FF 95 71 */ bl "SphereCollision__26CJointCollisionDescriptionF6CSegIdfRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" +/* 801AF2A0 001AC200 80 E1 00 34 */ lwz r7, 0x34(r1) +/* 801AF2A4 001AC204 7F 83 E3 78 */ mr r3, r28 +/* 801AF2A8 001AC208 80 C1 00 38 */ lwz r6, 0x38(r1) +/* 801AF2AC 001AC20C 7F A4 EB 78 */ mr r4, r29 +/* 801AF2B0 001AC210 88 A1 00 3C */ lbz r5, 0x3c(r1) +/* 801AF2B4 001AC214 88 01 00 3D */ lbz r0, 0x3d(r1) +/* 801AF2B8 001AC218 C0 E1 00 40 */ lfs f7, 0x40(r1) +/* 801AF2BC 001AC21C C0 C1 00 44 */ lfs f6, 0x44(r1) +/* 801AF2C0 001AC220 C0 A1 00 48 */ lfs f5, 0x48(r1) +/* 801AF2C4 001AC224 C0 81 00 4C */ lfs f4, 0x4c(r1) +/* 801AF2C8 001AC228 C0 61 00 50 */ lfs f3, 0x50(r1) +/* 801AF2CC 001AC22C C0 41 00 54 */ lfs f2, 0x54(r1) +/* 801AF2D0 001AC230 C0 21 00 58 */ lfs f1, 0x58(r1) +/* 801AF2D4 001AC234 C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 801AF2D8 001AC238 90 E1 00 78 */ stw r7, 0x78(r1) +/* 801AF2DC 001AC23C 90 C1 00 7C */ stw r6, 0x7c(r1) +/* 801AF2E0 001AC240 98 A1 00 80 */ stb r5, 0x80(r1) +/* 801AF2E4 001AC244 98 01 00 81 */ stb r0, 0x81(r1) +/* 801AF2E8 001AC248 D0 E1 00 84 */ stfs f7, 0x84(r1) +/* 801AF2EC 001AC24C D0 C1 00 88 */ stfs f6, 0x88(r1) +/* 801AF2F0 001AC250 D0 A1 00 8C */ stfs f5, 0x8c(r1) +/* 801AF2F4 001AC254 D0 81 00 90 */ stfs f4, 0x90(r1) +/* 801AF2F8 001AC258 D0 61 00 94 */ stfs f3, 0x94(r1) +/* 801AF2FC 001AC25C D0 41 00 98 */ stfs f2, 0x98(r1) +/* 801AF300 001AC260 D0 21 00 9C */ stfs f1, 0x9c(r1) +/* 801AF304 001AC264 D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 801AF308 001AC268 48 18 EE 59 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801AF30C 001AC26C A0 01 00 70 */ lhz r0, 0x70(r1) +/* 801AF310 001AC270 28 1D 00 00 */ cmplwi r29, 0 +/* 801AF314 001AC274 C0 01 00 74 */ lfs f0, 0x74(r1) +/* 801AF318 001AC278 B0 01 00 B4 */ sth r0, 0xb4(r1) +/* 801AF31C 001AC27C D0 01 00 B8 */ stfs f0, 0xb8(r1) +/* 801AF320 001AC280 41 82 00 0C */ beq lbl_801AF32C +/* 801AF324 001AC284 7F A3 EB 78 */ mr r3, r29 +/* 801AF328 001AC288 48 18 E7 B9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801AF32C: +/* 801AF32C 001AC28C 38 61 00 14 */ addi r3, r1, 0x14 +/* 801AF330 001AC290 48 18 E7 B1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801AF334 001AC294 7F 43 D3 78 */ mr r3, r26 +/* 801AF338 001AC298 38 81 00 78 */ addi r4, r1, 0x78 +/* 801AF33C 001AC29C 4B FA 6E F5 */ bl sub_80156230 +/* 801AF340 001AC2A0 28 1C 00 00 */ cmplwi r28, 0 +/* 801AF344 001AC2A4 41 82 00 0C */ beq lbl_801AF350 +/* 801AF348 001AC2A8 7F 83 E3 78 */ mr r3, r28 +/* 801AF34C 001AC2AC 48 18 E7 95 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801AF350: +/* 801AF350 001AC2B0 3B DE 00 08 */ addi r30, r30, 8 +/* 801AF354 001AC2B4 3B 7B 00 01 */ addi r27, r27, 1 +lbl_801AF358: +/* 801AF358 001AC2B8 7C 1B C8 00 */ cmpw r27, r25 +/* 801AF35C 001AC2BC 41 80 FE E0 */ blt lbl_801AF23C +/* 801AF360 001AC2C0 BB 21 00 C4 */ lmw r25, 0xc4(r1) +/* 801AF364 001AC2C4 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 801AF368 001AC2C8 7C 08 03 A6 */ mtlr r0 +/* 801AF36C 001AC2CC 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 801AF370 001AC2D0 4E 80 00 20 */ blr + +.global sub_801af374 +sub_801af374: +/* 801AF374 001AC2D4 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 801AF378 001AC2D8 7C 08 02 A6 */ mflr r0 +/* 801AF37C 001AC2DC 90 01 01 04 */ stw r0, 0x104(r1) +/* 801AF380 001AC2E0 BF 21 00 E4 */ stmw r25, 0xe4(r1) +/* 801AF384 001AC2E4 7C B9 2B 78 */ mr r25, r5 +/* 801AF388 001AC2E8 7C DA 33 78 */ mr r26, r6 +/* 801AF38C 001AC2EC 7C 9E 23 78 */ mr r30, r4 +/* 801AF390 001AC2F0 3B A1 00 7C */ addi r29, r1, 0x7c +/* 801AF394 001AC2F4 3B 81 00 C0 */ addi r28, r1, 0xc0 +/* 801AF398 001AC2F8 3B 60 00 00 */ li r27, 0 +/* 801AF39C 001AC2FC 80 63 00 64 */ lwz r3, 0x64(r3) +/* 801AF3A0 001AC300 83 E3 00 10 */ lwz r31, 0x10(r3) +/* 801AF3A4 001AC304 48 00 01 6C */ b lbl_801AF510 +lbl_801AF3A8: +/* 801AF3A8 001AC308 80 9E 00 00 */ lwz r4, 0(r30) +/* 801AF3AC 001AC30C 38 61 00 40 */ addi r3, r1, 0x40 +/* 801AF3B0 001AC310 4B E5 59 09 */ bl string_l__4rstlFPCc +/* 801AF3B4 001AC314 7F E4 FB 78 */ mr r4, r31 +/* 801AF3B8 001AC318 38 61 00 14 */ addi r3, r1, 0x14 +/* 801AF3BC 001AC31C 38 A1 00 40 */ addi r5, r1, 0x40 +/* 801AF3C0 001AC320 4B E7 F4 79 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801AF3C4 001AC324 88 01 00 14 */ lbz r0, 0x14(r1) +/* 801AF3C8 001AC328 38 61 00 40 */ addi r3, r1, 0x40 +/* 801AF3CC 001AC32C 98 01 00 1C */ stb r0, 0x1c(r1) +/* 801AF3D0 001AC330 48 18 E7 11 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801AF3D4 001AC334 80 9E 00 04 */ lwz r4, 4(r30) +/* 801AF3D8 001AC338 38 61 00 30 */ addi r3, r1, 0x30 +/* 801AF3DC 001AC33C 4B E5 58 DD */ bl string_l__4rstlFPCc +/* 801AF3E0 001AC340 7F E4 FB 78 */ mr r4, r31 +/* 801AF3E4 001AC344 38 61 00 10 */ addi r3, r1, 0x10 +/* 801AF3E8 001AC348 38 A1 00 30 */ addi r5, r1, 0x30 +/* 801AF3EC 001AC34C 4B E7 F4 4D */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801AF3F0 001AC350 88 01 00 10 */ lbz r0, 0x10(r1) +/* 801AF3F4 001AC354 38 61 00 30 */ addi r3, r1, 0x30 +/* 801AF3F8 001AC358 98 01 00 18 */ stb r0, 0x18(r1) +/* 801AF3FC 001AC35C 48 18 E6 E5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801AF400 001AC360 88 01 00 1C */ lbz r0, 0x1c(r1) +/* 801AF404 001AC364 28 00 00 FF */ cmplwi r0, 0xff +/* 801AF408 001AC368 41 82 01 00 */ beq lbl_801AF508 +/* 801AF40C 001AC36C 88 01 00 18 */ lbz r0, 0x18(r1) +/* 801AF410 001AC370 28 00 00 FF */ cmplwi r0, 0xff +/* 801AF414 001AC374 41 82 00 F4 */ beq lbl_801AF508 +/* 801AF418 001AC378 80 9E 00 00 */ lwz r4, 0(r30) +/* 801AF41C 001AC37C 38 61 00 20 */ addi r3, r1, 0x20 +/* 801AF420 001AC380 4B E5 58 99 */ bl string_l__4rstlFPCc +/* 801AF424 001AC384 88 A1 00 18 */ lbz r5, 0x18(r1) +/* 801AF428 001AC388 38 61 00 50 */ addi r3, r1, 0x50 +/* 801AF42C 001AC38C 88 01 00 1C */ lbz r0, 0x1c(r1) +/* 801AF430 001AC390 38 81 00 0C */ addi r4, r1, 0xc +/* 801AF434 001AC394 98 A1 00 08 */ stb r5, 8(r1) +/* 801AF438 001AC398 38 A1 00 08 */ addi r5, r1, 8 +/* 801AF43C 001AC39C C0 3E 00 08 */ lfs f1, 8(r30) +/* 801AF440 001AC3A0 38 E1 00 20 */ addi r7, r1, 0x20 +/* 801AF444 001AC3A4 98 01 00 0C */ stb r0, 0xc(r1) +/* 801AF448 001AC3A8 38 C0 00 01 */ li r6, 1 +/* 801AF44C 001AC3AC C0 5E 00 0C */ lfs f2, 0xc(r30) +/* 801AF450 001AC3B0 C0 62 A8 F0 */ lfs f3, lbl_805AC610@sda21(r2) +/* 801AF454 001AC3B4 4B FF 93 01 */ bl "SphereSubdivideCollision__26CJointCollisionDescriptionF6CSegId6CSegIdffQ226CJointCollisionDescription16EOrientationTypeRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" +/* 801AF458 001AC3B8 80 E1 00 50 */ lwz r7, 0x50(r1) +/* 801AF45C 001AC3BC 7F 83 E3 78 */ mr r3, r28 +/* 801AF460 001AC3C0 80 C1 00 54 */ lwz r6, 0x54(r1) +/* 801AF464 001AC3C4 7F A4 EB 78 */ mr r4, r29 +/* 801AF468 001AC3C8 88 A1 00 58 */ lbz r5, 0x58(r1) +/* 801AF46C 001AC3CC 88 01 00 59 */ lbz r0, 0x59(r1) +/* 801AF470 001AC3D0 C0 E1 00 5C */ lfs f7, 0x5c(r1) +/* 801AF474 001AC3D4 C0 C1 00 60 */ lfs f6, 0x60(r1) +/* 801AF478 001AC3D8 C0 A1 00 64 */ lfs f5, 0x64(r1) +/* 801AF47C 001AC3DC C0 81 00 68 */ lfs f4, 0x68(r1) +/* 801AF480 001AC3E0 C0 61 00 6C */ lfs f3, 0x6c(r1) +/* 801AF484 001AC3E4 C0 41 00 70 */ lfs f2, 0x70(r1) +/* 801AF488 001AC3E8 C0 21 00 74 */ lfs f1, 0x74(r1) +/* 801AF48C 001AC3EC C0 01 00 78 */ lfs f0, 0x78(r1) +/* 801AF490 001AC3F0 90 E1 00 94 */ stw r7, 0x94(r1) +/* 801AF494 001AC3F4 90 C1 00 98 */ stw r6, 0x98(r1) +/* 801AF498 001AC3F8 98 A1 00 9C */ stb r5, 0x9c(r1) +/* 801AF49C 001AC3FC 98 01 00 9D */ stb r0, 0x9d(r1) +/* 801AF4A0 001AC400 D0 E1 00 A0 */ stfs f7, 0xa0(r1) +/* 801AF4A4 001AC404 D0 C1 00 A4 */ stfs f6, 0xa4(r1) +/* 801AF4A8 001AC408 D0 A1 00 A8 */ stfs f5, 0xa8(r1) +/* 801AF4AC 001AC40C D0 81 00 AC */ stfs f4, 0xac(r1) +/* 801AF4B0 001AC410 D0 61 00 B0 */ stfs f3, 0xb0(r1) +/* 801AF4B4 001AC414 D0 41 00 B4 */ stfs f2, 0xb4(r1) +/* 801AF4B8 001AC418 D0 21 00 B8 */ stfs f1, 0xb8(r1) +/* 801AF4BC 001AC41C D0 01 00 BC */ stfs f0, 0xbc(r1) +/* 801AF4C0 001AC420 48 18 EC A1 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801AF4C4 001AC424 A0 01 00 8C */ lhz r0, 0x8c(r1) +/* 801AF4C8 001AC428 28 1D 00 00 */ cmplwi r29, 0 +/* 801AF4CC 001AC42C C0 01 00 90 */ lfs f0, 0x90(r1) +/* 801AF4D0 001AC430 B0 01 00 D0 */ sth r0, 0xd0(r1) +/* 801AF4D4 001AC434 D0 01 00 D4 */ stfs f0, 0xd4(r1) +/* 801AF4D8 001AC438 41 82 00 0C */ beq lbl_801AF4E4 +/* 801AF4DC 001AC43C 7F A3 EB 78 */ mr r3, r29 +/* 801AF4E0 001AC440 48 18 E6 01 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801AF4E4: +/* 801AF4E4 001AC444 38 61 00 20 */ addi r3, r1, 0x20 +/* 801AF4E8 001AC448 48 18 E5 F9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801AF4EC 001AC44C 7F 43 D3 78 */ mr r3, r26 +/* 801AF4F0 001AC450 38 81 00 94 */ addi r4, r1, 0x94 +/* 801AF4F4 001AC454 4B FA 6D 3D */ bl sub_80156230 +/* 801AF4F8 001AC458 28 1C 00 00 */ cmplwi r28, 0 +/* 801AF4FC 001AC45C 41 82 00 0C */ beq lbl_801AF508 +/* 801AF500 001AC460 7F 83 E3 78 */ mr r3, r28 +/* 801AF504 001AC464 48 18 E5 DD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801AF508: +/* 801AF508 001AC468 3B DE 00 10 */ addi r30, r30, 0x10 +/* 801AF50C 001AC46C 3B 7B 00 01 */ addi r27, r27, 1 +lbl_801AF510: +/* 801AF510 001AC470 7C 1B C8 00 */ cmpw r27, r25 +/* 801AF514 001AC474 41 80 FE 94 */ blt lbl_801AF3A8 +/* 801AF518 001AC478 BB 21 00 E4 */ lmw r25, 0xe4(r1) +/* 801AF51C 001AC47C 80 01 01 04 */ lwz r0, 0x104(r1) +/* 801AF520 001AC480 7C 08 03 A6 */ mtlr r0 +/* 801AF524 001AC484 38 21 01 00 */ addi r1, r1, 0x100 +/* 801AF528 001AC488 4E 80 00 20 */ blr + +.global sub_801af52c +sub_801af52c: +/* 801AF52C 001AC48C 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 801AF530 001AC490 7C 08 02 A6 */ mflr r0 +/* 801AF534 001AC494 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 801AF538 001AC498 DB E1 00 D0 */ stfd f31, 0xd0(r1) +/* 801AF53C 001AC49C F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 +/* 801AF540 001AC4A0 DB C1 00 C0 */ stfd f30, 0xc0(r1) +/* 801AF544 001AC4A4 F3 C1 00 C8 */ psq_st f30, 200(r1), 0, qr0 +/* 801AF548 001AC4A8 DB A1 00 B0 */ stfd f29, 0xb0(r1) +/* 801AF54C 001AC4AC F3 A1 00 B8 */ psq_st f29, 184(r1), 0, qr0 +/* 801AF550 001AC4B0 93 E1 00 AC */ stw r31, 0xac(r1) +/* 801AF554 001AC4B4 93 C1 00 A8 */ stw r30, 0xa8(r1) +/* 801AF558 001AC4B8 93 A1 00 A4 */ stw r29, 0xa4(r1) +/* 801AF55C 001AC4BC 93 81 00 A0 */ stw r28, 0xa0(r1) +/* 801AF560 001AC4C0 7C 7F 1B 78 */ mr r31, r3 +/* 801AF564 001AC4C4 3C 60 80 3D */ lis r3, lbl_803D14E0@ha +/* 801AF568 001AC4C8 C0 3F 05 70 */ lfs f1, 0x570(r31) +/* 801AF56C 001AC4CC 7C 9E 23 78 */ mr r30, r4 +/* 801AF570 001AC4D0 80 BF 00 64 */ lwz r5, 0x64(r31) +/* 801AF574 001AC4D4 38 00 00 00 */ li r0, 0 +/* 801AF578 001AC4D8 C0 02 A8 DC */ lfs f0, lbl_805AC5FC@sda21(r2) +/* 801AF57C 001AC4DC 3B A3 14 E0 */ addi r29, r3, lbl_803D14E0@l +/* 801AF580 001AC4E0 C3 E5 00 00 */ lfs f31, 0(r5) +/* 801AF584 001AC4E4 38 61 00 70 */ addi r3, r1, 0x70 +/* 801AF588 001AC4E8 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801AF58C 001AC4EC C3 C5 00 04 */ lfs f30, 4(r5) +/* 801AF590 001AC4F0 C3 A5 00 08 */ lfs f29, 8(r5) +/* 801AF594 001AC4F4 38 80 00 03 */ li r4, 3 +/* 801AF598 001AC4F8 D0 05 00 00 */ stfs f0, 0(r5) +/* 801AF59C 001AC4FC D0 05 00 04 */ stfs f0, 4(r5) +/* 801AF5A0 001AC500 D0 05 00 08 */ stfs f0, 8(r5) +/* 801AF5A4 001AC504 90 01 00 74 */ stw r0, 0x74(r1) +/* 801AF5A8 001AC508 90 01 00 78 */ stw r0, 0x78(r1) +/* 801AF5AC 001AC50C 90 01 00 7C */ stw r0, 0x7c(r1) +/* 801AF5B0 001AC510 4B FA 72 09 */ bl "reserve__Q24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>Fi" +/* 801AF5B4 001AC514 7F E3 FB 78 */ mr r3, r31 +/* 801AF5B8 001AC518 38 9D 00 00 */ addi r4, r29, 0 +/* 801AF5BC 001AC51C 38 C1 00 70 */ addi r6, r1, 0x70 +/* 801AF5C0 001AC520 38 A0 00 03 */ li r5, 3 +/* 801AF5C4 001AC524 4B FF FD B1 */ bl sub_801af374 +/* 801AF5C8 001AC528 3C 80 80 3D */ lis r4, lbl_803D1590@ha +/* 801AF5CC 001AC52C 38 60 00 18 */ li r3, 0x18 +/* 801AF5D0 001AC530 38 84 15 90 */ addi r4, r4, lbl_803D1590@l +/* 801AF5D4 001AC534 38 A0 00 00 */ li r5, 0 +/* 801AF5D8 001AC538 38 84 00 7E */ addi r4, r4, 0x7e +/* 801AF5DC 001AC53C 48 16 62 91 */ bl __nw__FUlPCcPCc +/* 801AF5E0 001AC540 7C 7C 1B 79 */ or. r28, r3, r3 +/* 801AF5E4 001AC544 41 82 00 38 */ beq lbl_801AF61C +/* 801AF5E8 001AC548 81 3F 00 04 */ lwz r9, 4(r31) +/* 801AF5EC 001AC54C 7F C4 F3 78 */ mr r4, r30 +/* 801AF5F0 001AC550 38 A1 00 1C */ addi r5, r1, 0x1c +/* 801AF5F4 001AC554 38 C1 00 34 */ addi r6, r1, 0x34 +/* 801AF5F8 001AC558 91 21 00 34 */ stw r9, 0x34(r1) +/* 801AF5FC 001AC55C 38 E1 00 70 */ addi r7, r1, 0x70 +/* 801AF600 001AC560 39 00 00 01 */ li r8, 1 +/* 801AF604 001AC564 A0 1F 00 08 */ lhz r0, 8(r31) +/* 801AF608 001AC568 91 21 00 30 */ stw r9, 0x30(r1) +/* 801AF60C 001AC56C B0 01 00 18 */ sth r0, 0x18(r1) +/* 801AF610 001AC570 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 801AF614 001AC574 4B FF 83 1D */ bl "__ct__22CCollisionActorManagerFR13CStateManager9TUniqueId7TAreaIdRCQ24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>b" +/* 801AF618 001AC578 7C 7C 1B 78 */ mr r28, r3 +lbl_801AF61C: +/* 801AF61C 001AC57C 80 7F 07 9C */ lwz r3, 0x79c(r31) +/* 801AF620 001AC580 38 80 00 01 */ li r4, 1 +/* 801AF624 001AC584 4B FF 82 B9 */ bl sub_801a78dc +/* 801AF628 001AC588 93 9F 07 9C */ stw r28, 0x79c(r31) +/* 801AF62C 001AC58C 7F E3 FB 78 */ mr r3, r31 +/* 801AF630 001AC590 7F C5 F3 78 */ mr r5, r30 +/* 801AF634 001AC594 38 9F 07 9C */ addi r4, r31, 0x79c +/* 801AF638 001AC598 4B FF FA 91 */ bl sub_801af0c8 +/* 801AF63C 001AC59C 38 00 00 00 */ li r0, 0 +/* 801AF640 001AC5A0 38 61 00 60 */ addi r3, r1, 0x60 +/* 801AF644 001AC5A4 90 01 00 64 */ stw r0, 0x64(r1) +/* 801AF648 001AC5A8 38 80 00 03 */ li r4, 3 +/* 801AF64C 001AC5AC 90 01 00 68 */ stw r0, 0x68(r1) +/* 801AF650 001AC5B0 90 01 00 6C */ stw r0, 0x6c(r1) +/* 801AF654 001AC5B4 4B FA 71 65 */ bl "reserve__Q24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>Fi" +/* 801AF658 001AC5B8 7F E3 FB 78 */ mr r3, r31 +/* 801AF65C 001AC5BC 38 9D 00 30 */ addi r4, r29, 0x30 +/* 801AF660 001AC5C0 38 C1 00 60 */ addi r6, r1, 0x60 +/* 801AF664 001AC5C4 38 A0 00 03 */ li r5, 3 +/* 801AF668 001AC5C8 4B FF FD 0D */ bl sub_801af374 +/* 801AF66C 001AC5CC 3C 80 80 3D */ lis r4, lbl_803D1590@ha +/* 801AF670 001AC5D0 38 60 00 18 */ li r3, 0x18 +/* 801AF674 001AC5D4 38 84 15 90 */ addi r4, r4, lbl_803D1590@l +/* 801AF678 001AC5D8 38 A0 00 00 */ li r5, 0 +/* 801AF67C 001AC5DC 38 84 00 7E */ addi r4, r4, 0x7e +/* 801AF680 001AC5E0 48 16 61 ED */ bl __nw__FUlPCcPCc +/* 801AF684 001AC5E4 7C 7C 1B 79 */ or. r28, r3, r3 +/* 801AF688 001AC5E8 41 82 00 38 */ beq lbl_801AF6C0 +/* 801AF68C 001AC5EC 81 3F 00 04 */ lwz r9, 4(r31) +/* 801AF690 001AC5F0 7F C4 F3 78 */ mr r4, r30 +/* 801AF694 001AC5F4 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801AF698 001AC5F8 38 C1 00 2C */ addi r6, r1, 0x2c +/* 801AF69C 001AC5FC 91 21 00 2C */ stw r9, 0x2c(r1) +/* 801AF6A0 001AC600 38 E1 00 60 */ addi r7, r1, 0x60 +/* 801AF6A4 001AC604 39 00 00 01 */ li r8, 1 +/* 801AF6A8 001AC608 A0 1F 00 08 */ lhz r0, 8(r31) +/* 801AF6AC 001AC60C 91 21 00 28 */ stw r9, 0x28(r1) +/* 801AF6B0 001AC610 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801AF6B4 001AC614 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801AF6B8 001AC618 4B FF 82 79 */ bl "__ct__22CCollisionActorManagerFR13CStateManager9TUniqueId7TAreaIdRCQ24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>b" +/* 801AF6BC 001AC61C 7C 7C 1B 78 */ mr r28, r3 +lbl_801AF6C0: +/* 801AF6C0 001AC620 80 7F 07 A0 */ lwz r3, 0x7a0(r31) +/* 801AF6C4 001AC624 38 80 00 01 */ li r4, 1 +/* 801AF6C8 001AC628 4B FF 82 15 */ bl sub_801a78dc +/* 801AF6CC 001AC62C 93 9F 07 A0 */ stw r28, 0x7a0(r31) +/* 801AF6D0 001AC630 7F E3 FB 78 */ mr r3, r31 +/* 801AF6D4 001AC634 7F C5 F3 78 */ mr r5, r30 +/* 801AF6D8 001AC638 38 9F 07 A0 */ addi r4, r31, 0x7a0 +/* 801AF6DC 001AC63C 4B FF F9 ED */ bl sub_801af0c8 +/* 801AF6E0 001AC640 38 00 00 00 */ li r0, 0 +/* 801AF6E4 001AC644 38 61 00 50 */ addi r3, r1, 0x50 +/* 801AF6E8 001AC648 90 01 00 54 */ stw r0, 0x54(r1) +/* 801AF6EC 001AC64C 38 80 00 05 */ li r4, 5 +/* 801AF6F0 001AC650 90 01 00 58 */ stw r0, 0x58(r1) +/* 801AF6F4 001AC654 90 01 00 5C */ stw r0, 0x5c(r1) +/* 801AF6F8 001AC658 4B FA 70 C1 */ bl "reserve__Q24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>Fi" +/* 801AF6FC 001AC65C 7F E3 FB 78 */ mr r3, r31 +/* 801AF700 001AC660 38 9D 00 60 */ addi r4, r29, 0x60 +/* 801AF704 001AC664 38 C1 00 50 */ addi r6, r1, 0x50 +/* 801AF708 001AC668 38 A0 00 05 */ li r5, 5 +/* 801AF70C 001AC66C 4B FF FA FD */ bl sub_801af208 +/* 801AF710 001AC670 3C 80 80 3D */ lis r4, lbl_803D1590@ha +/* 801AF714 001AC674 38 60 00 18 */ li r3, 0x18 +/* 801AF718 001AC678 38 84 15 90 */ addi r4, r4, lbl_803D1590@l +/* 801AF71C 001AC67C 38 A0 00 00 */ li r5, 0 +/* 801AF720 001AC680 38 84 00 7E */ addi r4, r4, 0x7e +/* 801AF724 001AC684 48 16 61 49 */ bl __nw__FUlPCcPCc +/* 801AF728 001AC688 7C 7C 1B 79 */ or. r28, r3, r3 +/* 801AF72C 001AC68C 41 82 00 38 */ beq lbl_801AF764 +/* 801AF730 001AC690 81 3F 00 04 */ lwz r9, 4(r31) +/* 801AF734 001AC694 7F C4 F3 78 */ mr r4, r30 +/* 801AF738 001AC698 38 A1 00 0C */ addi r5, r1, 0xc +/* 801AF73C 001AC69C 38 C1 00 24 */ addi r6, r1, 0x24 +/* 801AF740 001AC6A0 91 21 00 24 */ stw r9, 0x24(r1) +/* 801AF744 001AC6A4 38 E1 00 50 */ addi r7, r1, 0x50 +/* 801AF748 001AC6A8 39 00 00 01 */ li r8, 1 +/* 801AF74C 001AC6AC A0 1F 00 08 */ lhz r0, 8(r31) +/* 801AF750 001AC6B0 91 21 00 20 */ stw r9, 0x20(r1) +/* 801AF754 001AC6B4 B0 01 00 08 */ sth r0, 8(r1) +/* 801AF758 001AC6B8 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801AF75C 001AC6BC 4B FF 81 D5 */ bl "__ct__22CCollisionActorManagerFR13CStateManager9TUniqueId7TAreaIdRCQ24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>b" +/* 801AF760 001AC6C0 7C 7C 1B 78 */ mr r28, r3 +lbl_801AF764: +/* 801AF764 001AC6C4 80 7F 07 A4 */ lwz r3, 0x7a4(r31) +/* 801AF768 001AC6C8 38 80 00 01 */ li r4, 1 +/* 801AF76C 001AC6CC 4B FF 81 71 */ bl sub_801a78dc +/* 801AF770 001AC6D0 93 9F 07 A4 */ stw r28, 0x7a4(r31) +/* 801AF774 001AC6D4 7F E3 FB 78 */ mr r3, r31 +/* 801AF778 001AC6D8 7F C5 F3 78 */ mr r5, r30 +/* 801AF77C 001AC6DC 38 9F 07 A4 */ addi r4, r31, 0x7a4 +/* 801AF780 001AC6E0 4B FF F9 49 */ bl sub_801af0c8 +/* 801AF784 001AC6E4 7F E3 FB 78 */ mr r3, r31 +/* 801AF788 001AC6E8 7F C4 F3 78 */ mr r4, r30 +/* 801AF78C 001AC6EC 4B FF F6 85 */ bl sub_801aee10 +/* 801AF790 001AC6F0 80 AD 90 94 */ lwz r5, lbl_805A7C54@sda21(r13) +/* 801AF794 001AC6F4 38 60 00 00 */ li r3, 0 +/* 801AF798 001AC6F8 38 80 00 01 */ li r4, 1 +/* 801AF79C 001AC6FC 48 1D A7 59 */ bl __shl2i +/* 801AF7A0 001AC700 80 AD 90 98 */ lwz r5, lbl_805A7C58@sda21(r13) +/* 801AF7A4 001AC704 7C 9D 23 78 */ mr r29, r4 +/* 801AF7A8 001AC708 7C 7C 1B 78 */ mr r28, r3 +/* 801AF7AC 001AC70C 38 60 00 00 */ li r3, 0 +/* 801AF7B0 001AC710 38 80 00 01 */ li r4, 1 +/* 801AF7B4 001AC714 48 1D A7 41 */ bl __shl2i +/* 801AF7B8 001AC718 80 AD 90 9C */ lwz r5, lbl_805A7C5C@sda21(r13) +/* 801AF7BC 001AC71C 7F BD 23 78 */ or r29, r29, r4 +/* 801AF7C0 001AC720 7F 9C 1B 78 */ or r28, r28, r3 +/* 801AF7C4 001AC724 38 60 00 00 */ li r3, 0 +/* 801AF7C8 001AC728 38 80 00 01 */ li r4, 1 +/* 801AF7CC 001AC72C 48 1D A7 29 */ bl __shl2i +/* 801AF7D0 001AC730 80 AD 90 90 */ lwz r5, lbl_805A7C50@sda21(r13) +/* 801AF7D4 001AC734 7F BD 23 78 */ or r29, r29, r4 +/* 801AF7D8 001AC738 7F 9C 1B 78 */ or r28, r28, r3 +/* 801AF7DC 001AC73C 38 60 00 00 */ li r3, 0 +/* 801AF7E0 001AC740 38 80 00 01 */ li r4, 1 +/* 801AF7E4 001AC744 48 1D A7 11 */ bl __shl2i +/* 801AF7E8 001AC748 38 00 00 03 */ li r0, 3 +/* 801AF7EC 001AC74C 90 81 00 84 */ stw r4, 0x84(r1) +/* 801AF7F0 001AC750 38 81 00 80 */ addi r4, r1, 0x80 +/* 801AF7F4 001AC754 90 61 00 80 */ stw r3, 0x80(r1) +/* 801AF7F8 001AC758 7F E3 FB 78 */ mr r3, r31 +/* 801AF7FC 001AC75C 93 A1 00 8C */ stw r29, 0x8c(r1) +/* 801AF800 001AC760 93 81 00 88 */ stw r28, 0x88(r1) +/* 801AF804 001AC764 90 01 00 90 */ stw r0, 0x90(r1) +/* 801AF808 001AC768 4B EA 40 99 */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter +/* 801AF80C 001AC76C 7F E3 FB 78 */ mr r3, r31 +/* 801AF810 001AC770 7F C7 F3 78 */ mr r7, r30 +/* 801AF814 001AC774 38 80 00 12 */ li r4, 0x12 +/* 801AF818 001AC778 38 A0 00 28 */ li r5, 0x28 +/* 801AF81C 001AC77C 38 C0 00 29 */ li r6, 0x29 +/* 801AF820 001AC780 4B EA 49 C5 */ bl AddMaterial__6CActorF14EMaterialTypes14EMaterialTypes14EMaterialTypesR13CStateManager +/* 801AF824 001AC784 7F E3 FB 78 */ mr r3, r31 +/* 801AF828 001AC788 7F C5 F3 78 */ mr r5, r30 +/* 801AF82C 001AC78C 38 80 00 13 */ li r4, 0x13 +/* 801AF830 001AC790 4B EA 47 51 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801AF834 001AC794 80 BF 00 64 */ lwz r5, 0x64(r31) +/* 801AF838 001AC798 38 00 00 00 */ li r0, 0 +/* 801AF83C 001AC79C 38 60 00 00 */ li r3, 0 +/* 801AF840 001AC7A0 38 80 00 01 */ li r4, 1 +/* 801AF844 001AC7A4 D3 E5 00 00 */ stfs f31, 0(r5) +/* 801AF848 001AC7A8 D3 C5 00 04 */ stfs f30, 4(r5) +/* 801AF84C 001AC7AC D3 A5 00 08 */ stfs f29, 8(r5) +/* 801AF850 001AC7B0 80 AD 90 A0 */ lwz r5, lbl_805A7C60@sda21(r13) +/* 801AF854 001AC7B4 90 01 00 4C */ stw r0, 0x4c(r1) +/* 801AF858 001AC7B8 90 01 00 48 */ stw r0, 0x48(r1) +/* 801AF85C 001AC7BC 48 1D A6 99 */ bl __shl2i +/* 801AF860 001AC7C0 80 01 00 48 */ lwz r0, 0x48(r1) +/* 801AF864 001AC7C4 80 C1 00 4C */ lwz r6, 0x4c(r1) +/* 801AF868 001AC7C8 7C 00 1B 78 */ or r0, r0, r3 +/* 801AF86C 001AC7CC 80 AD 90 A4 */ lwz r5, lbl_805A7C64@sda21(r13) +/* 801AF870 001AC7D0 7C C4 23 78 */ or r4, r6, r4 +/* 801AF874 001AC7D4 90 01 00 48 */ stw r0, 0x48(r1) +/* 801AF878 001AC7D8 38 60 00 00 */ li r3, 0 +/* 801AF87C 001AC7DC 90 81 00 4C */ stw r4, 0x4c(r1) +/* 801AF880 001AC7E0 38 80 00 01 */ li r4, 1 +/* 801AF884 001AC7E4 48 1D A6 71 */ bl __shl2i +/* 801AF888 001AC7E8 80 01 00 48 */ lwz r0, 0x48(r1) +/* 801AF88C 001AC7EC 38 A1 00 48 */ addi r5, r1, 0x48 +/* 801AF890 001AC7F0 80 C1 00 4C */ lwz r6, 0x4c(r1) +/* 801AF894 001AC7F4 7C 00 1B 78 */ or r0, r0, r3 +/* 801AF898 001AC7F8 7C C3 23 78 */ or r3, r6, r4 +/* 801AF89C 001AC7FC 90 01 00 48 */ stw r0, 0x48(r1) +/* 801AF8A0 001AC800 7F C4 F3 78 */ mr r4, r30 +/* 801AF8A4 001AC804 90 61 00 4C */ stw r3, 0x4c(r1) +/* 801AF8A8 001AC808 80 7F 07 A4 */ lwz r3, 0x7a4(r31) +/* 801AF8AC 001AC80C 4B FF 79 A5 */ bl AddMaterial__22CCollisionActorManagerFR13CStateManagerRC13CMaterialList +/* 801AF8B0 001AC810 38 00 00 00 */ li r0, 0 +/* 801AF8B4 001AC814 80 AD 90 A8 */ lwz r5, lbl_805A7C68@sda21(r13) +/* 801AF8B8 001AC818 90 01 00 44 */ stw r0, 0x44(r1) +/* 801AF8BC 001AC81C 38 60 00 00 */ li r3, 0 +/* 801AF8C0 001AC820 38 80 00 01 */ li r4, 1 +/* 801AF8C4 001AC824 90 01 00 40 */ stw r0, 0x40(r1) +/* 801AF8C8 001AC828 48 1D A6 2D */ bl __shl2i +/* 801AF8CC 001AC82C 80 01 00 40 */ lwz r0, 0x40(r1) +/* 801AF8D0 001AC830 80 C1 00 44 */ lwz r6, 0x44(r1) +/* 801AF8D4 001AC834 7C 00 1B 78 */ or r0, r0, r3 +/* 801AF8D8 001AC838 80 AD 90 AC */ lwz r5, lbl_805A7C6C@sda21(r13) +/* 801AF8DC 001AC83C 7C C4 23 78 */ or r4, r6, r4 +/* 801AF8E0 001AC840 90 01 00 40 */ stw r0, 0x40(r1) +/* 801AF8E4 001AC844 38 60 00 00 */ li r3, 0 +/* 801AF8E8 001AC848 90 81 00 44 */ stw r4, 0x44(r1) +/* 801AF8EC 001AC84C 38 80 00 01 */ li r4, 1 +/* 801AF8F0 001AC850 48 1D A6 05 */ bl __shl2i +/* 801AF8F4 001AC854 80 01 00 40 */ lwz r0, 0x40(r1) +/* 801AF8F8 001AC858 38 A1 00 40 */ addi r5, r1, 0x40 +/* 801AF8FC 001AC85C 80 C1 00 44 */ lwz r6, 0x44(r1) +/* 801AF900 001AC860 7C 00 1B 78 */ or r0, r0, r3 +/* 801AF904 001AC864 7C C3 23 78 */ or r3, r6, r4 +/* 801AF908 001AC868 90 01 00 40 */ stw r0, 0x40(r1) +/* 801AF90C 001AC86C 7F C4 F3 78 */ mr r4, r30 +/* 801AF910 001AC870 90 61 00 44 */ stw r3, 0x44(r1) +/* 801AF914 001AC874 80 7F 07 9C */ lwz r3, 0x79c(r31) +/* 801AF918 001AC878 4B FF 79 39 */ bl AddMaterial__22CCollisionActorManagerFR13CStateManagerRC13CMaterialList +/* 801AF91C 001AC87C 38 00 00 00 */ li r0, 0 +/* 801AF920 001AC880 80 AD 90 B0 */ lwz r5, lbl_805A7C70@sda21(r13) +/* 801AF924 001AC884 90 01 00 3C */ stw r0, 0x3c(r1) +/* 801AF928 001AC888 38 60 00 00 */ li r3, 0 +/* 801AF92C 001AC88C 38 80 00 01 */ li r4, 1 +/* 801AF930 001AC890 90 01 00 38 */ stw r0, 0x38(r1) +/* 801AF934 001AC894 48 1D A5 C1 */ bl __shl2i +/* 801AF938 001AC898 80 01 00 38 */ lwz r0, 0x38(r1) +/* 801AF93C 001AC89C 80 C1 00 3C */ lwz r6, 0x3c(r1) +/* 801AF940 001AC8A0 7C 00 1B 78 */ or r0, r0, r3 +/* 801AF944 001AC8A4 80 AD 90 B4 */ lwz r5, lbl_805A7C74@sda21(r13) +/* 801AF948 001AC8A8 7C C4 23 78 */ or r4, r6, r4 +/* 801AF94C 001AC8AC 90 01 00 38 */ stw r0, 0x38(r1) +/* 801AF950 001AC8B0 38 60 00 00 */ li r3, 0 +/* 801AF954 001AC8B4 90 81 00 3C */ stw r4, 0x3c(r1) +/* 801AF958 001AC8B8 38 80 00 01 */ li r4, 1 +/* 801AF95C 001AC8BC 48 1D A5 99 */ bl __shl2i +/* 801AF960 001AC8C0 80 01 00 38 */ lwz r0, 0x38(r1) +/* 801AF964 001AC8C4 38 A1 00 38 */ addi r5, r1, 0x38 +/* 801AF968 001AC8C8 80 C1 00 3C */ lwz r6, 0x3c(r1) +/* 801AF96C 001AC8CC 7C 00 1B 78 */ or r0, r0, r3 +/* 801AF970 001AC8D0 7C C3 23 78 */ or r3, r6, r4 +/* 801AF974 001AC8D4 90 01 00 38 */ stw r0, 0x38(r1) +/* 801AF978 001AC8D8 7F C4 F3 78 */ mr r4, r30 +/* 801AF97C 001AC8DC 90 61 00 3C */ stw r3, 0x3c(r1) +/* 801AF980 001AC8E0 80 7F 07 A0 */ lwz r3, 0x7a0(r31) +/* 801AF984 001AC8E4 4B FF 78 CD */ bl AddMaterial__22CCollisionActorManagerFR13CStateManagerRC13CMaterialList +/* 801AF988 001AC8E8 38 61 00 50 */ addi r3, r1, 0x50 +/* 801AF98C 001AC8EC 38 80 FF FF */ li r4, -1 +/* 801AF990 001AC8F0 4B FA 69 9D */ bl sub_8015632c +/* 801AF994 001AC8F4 38 61 00 60 */ addi r3, r1, 0x60 +/* 801AF998 001AC8F8 38 80 FF FF */ li r4, -1 +/* 801AF99C 001AC8FC 4B FA 69 91 */ bl sub_8015632c +/* 801AF9A0 001AC900 38 61 00 70 */ addi r3, r1, 0x70 +/* 801AF9A4 001AC904 38 80 FF FF */ li r4, -1 +/* 801AF9A8 001AC908 4B FA 69 85 */ bl sub_8015632c +/* 801AF9AC 001AC90C E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 +/* 801AF9B0 001AC910 CB E1 00 D0 */ lfd f31, 0xd0(r1) +/* 801AF9B4 001AC914 E3 C1 00 C8 */ psq_l f30, 200(r1), 0, qr0 +/* 801AF9B8 001AC918 CB C1 00 C0 */ lfd f30, 0xc0(r1) +/* 801AF9BC 001AC91C E3 A1 00 B8 */ psq_l f29, 184(r1), 0, qr0 +/* 801AF9C0 001AC920 CB A1 00 B0 */ lfd f29, 0xb0(r1) +/* 801AF9C4 001AC924 83 E1 00 AC */ lwz r31, 0xac(r1) +/* 801AF9C8 001AC928 83 C1 00 A8 */ lwz r30, 0xa8(r1) +/* 801AF9CC 001AC92C 83 A1 00 A4 */ lwz r29, 0xa4(r1) +/* 801AF9D0 001AC930 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 801AF9D4 001AC934 83 81 00 A0 */ lwz r28, 0xa0(r1) +/* 801AF9D8 001AC938 7C 08 03 A6 */ mtlr r0 +/* 801AF9DC 001AC93C 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 801AF9E0 001AC940 4E 80 00 20 */ blr + +.global Dead__9CFlaahgraFR13CStateManager9EStateMsgf +Dead__9CFlaahgraFR13CStateManager9EStateMsgf: +/* 801AF9E4 001AC944 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 801AF9E8 001AC948 7C 08 02 A6 */ mflr r0 +/* 801AF9EC 001AC94C 2C 05 00 01 */ cmpwi r5, 1 +/* 801AF9F0 001AC950 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 801AF9F4 001AC954 93 E1 00 BC */ stw r31, 0xbc(r1) +/* 801AF9F8 001AC958 7C 9F 23 78 */ mr r31, r4 +/* 801AF9FC 001AC95C 93 C1 00 B8 */ stw r30, 0xb8(r1) +/* 801AFA00 001AC960 7C 7E 1B 78 */ mr r30, r3 +/* 801AFA04 001AC964 93 A1 00 B4 */ stw r29, 0xb4(r1) +/* 801AFA08 001AC968 41 82 00 68 */ beq lbl_801AFA70 +/* 801AFA0C 001AC96C 40 80 02 C8 */ bge lbl_801AFCD4 +/* 801AFA10 001AC970 2C 05 00 00 */ cmpwi r5, 0 +/* 801AFA14 001AC974 40 80 00 08 */ bge lbl_801AFA1C +/* 801AFA18 001AC978 48 00 02 BC */ b lbl_801AFCD4 +lbl_801AFA1C: +/* 801AFA1C 001AC97C 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801AFA20 001AC980 3B A0 00 01 */ li r29, 1 +/* 801AFA24 001AC984 4B F8 B1 89 */ bl GetFallState__15CBodyControllerCFv +/* 801AFA28 001AC988 2C 03 00 00 */ cmpwi r3, 0 +/* 801AFA2C 001AC98C 40 82 00 18 */ bne lbl_801AFA44 +/* 801AFA30 001AC990 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801AFA34 001AC994 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801AFA38 001AC998 2C 00 00 00 */ cmpwi r0, 0 +/* 801AFA3C 001AC99C 41 82 00 08 */ beq lbl_801AFA44 +/* 801AFA40 001AC9A0 3B A0 00 00 */ li r29, 0 +lbl_801AFA44: +/* 801AFA44 001AC9A4 57 A4 06 3E */ clrlwi r4, r29, 0x18 +/* 801AFA48 001AC9A8 7F C3 F3 78 */ mr r3, r30 +/* 801AFA4C 001AC9AC 7C 04 00 D0 */ neg r0, r4 +/* 801AFA50 001AC9B0 7F E5 FB 78 */ mr r5, r31 +/* 801AFA54 001AC9B4 7C 00 23 78 */ or r0, r0, r4 +/* 801AFA58 001AC9B8 38 80 00 0B */ li r4, 0xb +/* 801AFA5C 001AC9BC 54 00 0F FE */ srwi r0, r0, 0x1f +/* 801AFA60 001AC9C0 38 C0 FF FF */ li r6, -1 +/* 801AFA64 001AC9C4 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801AFA68 001AC9C8 4B EA 16 59 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 801AFA6C 001AC9CC 48 00 02 68 */ b lbl_801AFCD4 +lbl_801AFA70: +/* 801AFA70 001AC9D0 80 1E 05 68 */ lwz r0, 0x568(r30) +/* 801AFA74 001AC9D4 2C 00 00 01 */ cmpwi r0, 1 +/* 801AFA78 001AC9D8 41 82 00 20 */ beq lbl_801AFA98 +/* 801AFA7C 001AC9DC 40 80 00 10 */ bge lbl_801AFA8C +/* 801AFA80 001AC9E0 2C 00 00 00 */ cmpwi r0, 0 +/* 801AFA84 001AC9E4 40 80 00 94 */ bge lbl_801AFB18 +/* 801AFA88 001AC9E8 48 00 02 4C */ b lbl_801AFCD4 +lbl_801AFA8C: +/* 801AFA8C 001AC9EC 2C 00 00 03 */ cmpwi r0, 3 +/* 801AFA90 001AC9F0 40 80 02 44 */ bge lbl_801AFCD4 +/* 801AFA94 001AC9F4 48 00 02 18 */ b lbl_801AFCAC +lbl_801AFA98: +/* 801AFA98 001AC9F8 80 DE 04 50 */ lwz r6, 0x450(r30) +/* 801AFA9C 001AC9FC 80 06 02 B8 */ lwz r0, 0x2b8(r6) +/* 801AFAA0 001ACA00 2C 00 00 01 */ cmpwi r0, 1 +/* 801AFAA4 001ACA04 40 82 00 10 */ bne lbl_801AFAB4 +/* 801AFAA8 001ACA08 38 00 00 00 */ li r0, 0 +/* 801AFAAC 001ACA0C 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801AFAB0 001ACA10 48 00 02 24 */ b lbl_801AFCD4 +lbl_801AFAB4: +/* 801AFAB4 001ACA14 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 801AFAB8 001ACA18 3C 60 80 3E */ lis r3, lbl_803DAA20@ha +/* 801AFABC 001ACA1C 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l +/* 801AFAC0 001ACA20 38 80 00 00 */ li r4, 0 +/* 801AFAC4 001ACA24 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801AFAC8 001ACA28 38 A3 AA 20 */ addi r5, r3, lbl_803DAA20@l +/* 801AFACC 001ACA2C 38 00 00 02 */ li r0, 2 +/* 801AFAD0 001ACA30 3B A6 00 04 */ addi r29, r6, 4 +/* 801AFAD4 001ACA34 90 81 00 20 */ stw r4, 0x20(r1) +/* 801AFAD8 001ACA38 7F A3 EB 78 */ mr r3, r29 +/* 801AFADC 001ACA3C 38 80 00 00 */ li r4, 0 +/* 801AFAE0 001ACA40 90 A1 00 1C */ stw r5, 0x1c(r1) +/* 801AFAE4 001ACA44 90 01 00 24 */ stw r0, 0x24(r1) +/* 801AFAE8 001ACA48 4B F8 19 51 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801AFAEC 001ACA4C 80 01 00 20 */ lwz r0, 0x20(r1) +/* 801AFAF0 001ACA50 3C 60 80 3E */ lis r3, lbl_803DAA20@ha +/* 801AFAF4 001ACA54 38 83 AA 20 */ addi r4, r3, lbl_803DAA20@l +/* 801AFAF8 001ACA58 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801AFAFC 001ACA5C 90 1D 00 BC */ stw r0, 0xbc(r29) +/* 801AFB00 001ACA60 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801AFB04 001ACA64 80 61 00 24 */ lwz r3, 0x24(r1) +/* 801AFB08 001ACA68 90 81 00 1C */ stw r4, 0x1c(r1) +/* 801AFB0C 001ACA6C 90 7D 00 C0 */ stw r3, 0xc0(r29) +/* 801AFB10 001ACA70 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801AFB14 001ACA74 48 00 01 C0 */ b lbl_801AFCD4 +lbl_801AFB18: +/* 801AFB18 001ACA78 80 BE 04 50 */ lwz r5, 0x450(r30) +/* 801AFB1C 001ACA7C 80 05 02 B8 */ lwz r0, 0x2b8(r5) +/* 801AFB20 001ACA80 2C 00 00 01 */ cmpwi r0, 1 +/* 801AFB24 001ACA84 41 82 01 B0 */ beq lbl_801AFCD4 +/* 801AFB28 001ACA88 2C 00 00 00 */ cmpwi r0, 0 +/* 801AFB2C 001ACA8C 41 82 00 A4 */ beq lbl_801AFBD0 +/* 801AFB30 001ACA90 C0 5E 00 58 */ lfs f2, 0x58(r30) +/* 801AFB34 001ACA94 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801AFB38 001ACA98 C0 3E 00 48 */ lfs f1, 0x48(r30) +/* 801AFB3C 001ACA9C 38 83 AA 68 */ addi r4, r3, lbl_803DAA68@l +/* 801AFB40 001ACAA0 C0 1E 00 38 */ lfs f0, 0x38(r30) +/* 801AFB44 001ACAA4 FC 40 10 50 */ fneg f2, f2 +/* 801AFB48 001ACAA8 FC 20 08 50 */ fneg f1, f1 +/* 801AFB4C 001ACAAC 3C 60 80 3E */ lis r3, lbl_803DAA50@ha +/* 801AFB50 001ACAB0 FC 00 00 50 */ fneg f0, f0 +/* 801AFB54 001ACAB4 38 C0 00 03 */ li r6, 3 +/* 801AFB58 001ACAB8 38 00 00 02 */ li r0, 2 +/* 801AFB5C 001ACABC 3B A5 00 04 */ addi r29, r5, 4 +/* 801AFB60 001ACAC0 90 81 00 34 */ stw r4, 0x34(r1) +/* 801AFB64 001ACAC4 38 A3 AA 50 */ addi r5, r3, lbl_803DAA50@l +/* 801AFB68 001ACAC8 7F A3 EB 78 */ mr r3, r29 +/* 801AFB6C 001ACACC 38 80 00 03 */ li r4, 3 +/* 801AFB70 001ACAD0 90 C1 00 38 */ stw r6, 0x38(r1) +/* 801AFB74 001ACAD4 90 A1 00 34 */ stw r5, 0x34(r1) +/* 801AFB78 001ACAD8 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 801AFB7C 001ACADC D0 21 00 40 */ stfs f1, 0x40(r1) +/* 801AFB80 001ACAE0 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 801AFB84 001ACAE4 90 01 00 48 */ stw r0, 0x48(r1) +/* 801AFB88 001ACAE8 4B F8 18 B1 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801AFB8C 001ACAEC 80 01 00 38 */ lwz r0, 0x38(r1) +/* 801AFB90 001ACAF0 3C 60 80 3E */ lis r3, lbl_803DAA50@ha +/* 801AFB94 001ACAF4 38 83 AA 50 */ addi r4, r3, lbl_803DAA50@l +/* 801AFB98 001ACAF8 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801AFB9C 001ACAFC 90 1D 00 E0 */ stw r0, 0xe0(r29) +/* 801AFBA0 001ACB00 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801AFBA4 001ACB04 80 A1 00 3C */ lwz r5, 0x3c(r1) +/* 801AFBA8 001ACB08 80 61 00 40 */ lwz r3, 0x40(r1) +/* 801AFBAC 001ACB0C 90 BD 00 E4 */ stw r5, 0xe4(r29) +/* 801AFBB0 001ACB10 80 A1 00 44 */ lwz r5, 0x44(r1) +/* 801AFBB4 001ACB14 90 7D 00 E8 */ stw r3, 0xe8(r29) +/* 801AFBB8 001ACB18 80 61 00 48 */ lwz r3, 0x48(r1) +/* 801AFBBC 001ACB1C 90 BD 00 EC */ stw r5, 0xec(r29) +/* 801AFBC0 001ACB20 90 81 00 34 */ stw r4, 0x34(r1) +/* 801AFBC4 001ACB24 90 7D 00 F0 */ stw r3, 0xf0(r29) +/* 801AFBC8 001ACB28 90 01 00 34 */ stw r0, 0x34(r1) +/* 801AFBCC 001ACB2C 48 00 01 08 */ b lbl_801AFCD4 +lbl_801AFBD0: +/* 801AFBD0 001ACB30 38 00 00 02 */ li r0, 2 +/* 801AFBD4 001ACB34 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 801AFBD8 001ACB38 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801AFBDC 001ACB3C 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 801AFBE0 001ACB40 38 61 00 4C */ addi r3, r1, 0x4c +/* 801AFBE4 001ACB44 38 81 00 10 */ addi r4, r1, 0x10 +/* 801AFBE8 001ACB48 C0 9E 00 50 */ lfs f4, 0x50(r30) +/* 801AFBEC 001ACB4C 38 A1 00 28 */ addi r5, r1, 0x28 +/* 801AFBF0 001ACB50 C0 1E 08 A4 */ lfs f0, 0x8a4(r30) +/* 801AFBF4 001ACB54 C0 7E 00 60 */ lfs f3, 0x60(r30) +/* 801AFBF8 001ACB58 C0 5E 08 A8 */ lfs f2, 0x8a8(r30) +/* 801AFBFC 001ACB5C EC A4 00 2A */ fadds f5, f4, f0 +/* 801AFC00 001ACB60 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 801AFC04 001ACB64 C0 1E 08 A0 */ lfs f0, 0x8a0(r30) +/* 801AFC08 001ACB68 EC 43 10 2A */ fadds f2, f3, f2 +/* 801AFC0C 001ACB6C EC 01 00 2A */ fadds f0, f1, f0 +/* 801AFC10 001ACB70 D0 A1 00 2C */ stfs f5, 0x2c(r1) +/* 801AFC14 001ACB74 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 801AFC18 001ACB78 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 801AFC1C 001ACB7C D0 21 00 10 */ stfs f1, 0x10(r1) +/* 801AFC20 001ACB80 D0 81 00 14 */ stfs f4, 0x14(r1) +/* 801AFC24 001ACB84 D0 61 00 18 */ stfs f3, 0x18(r1) +/* 801AFC28 001ACB88 48 16 3E E9 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 801AFC2C 001ACB8C 38 61 00 7C */ addi r3, r1, 0x7c +/* 801AFC30 001ACB90 38 81 00 4C */ addi r4, r1, 0x4c +/* 801AFC34 001ACB94 48 16 2F 41 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801AFC38 001ACB98 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 801AFC3C 001ACB9C 38 7E 00 34 */ addi r3, r30, 0x34 +/* 801AFC40 001ACBA0 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 801AFC44 001ACBA4 38 81 00 7C */ addi r4, r1, 0x7c +/* 801AFC48 001ACBA8 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801AFC4C 001ACBAC D0 01 00 88 */ stfs f0, 0x88(r1) +/* 801AFC50 001ACBB0 D0 21 00 98 */ stfs f1, 0x98(r1) +/* 801AFC54 001ACBB4 D0 41 00 A8 */ stfs f2, 0xa8(r1) +/* 801AFC58 001ACBB8 48 16 2E E9 */ bl __as__12CTransform4fFRC12CTransform4f +/* 801AFC5C 001ACBBC 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 801AFC60 001ACBC0 38 E0 00 01 */ li r7, 1 +/* 801AFC64 001ACBC4 50 E0 26 F6 */ rlwimi r0, r7, 4, 0x1b, 0x1b +/* 801AFC68 001ACBC8 7F C3 F3 78 */ mr r3, r30 +/* 801AFC6C 001ACBCC 98 1E 00 E4 */ stb r0, 0xe4(r30) +/* 801AFC70 001ACBD0 7F E5 FB 78 */ mr r5, r31 +/* 801AFC74 001ACBD4 38 80 00 0E */ li r4, 0xe +/* 801AFC78 001ACBD8 38 C0 FF FF */ li r6, -1 +/* 801AFC7C 001ACBDC 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 801AFC80 001ACBE0 50 E0 1F 38 */ rlwimi r0, r7, 3, 0x1c, 0x1c +/* 801AFC84 001ACBE4 98 1E 00 E4 */ stb r0, 0xe4(r30) +/* 801AFC88 001ACBE8 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 801AFC8C 001ACBEC 50 E0 17 7A */ rlwimi r0, r7, 2, 0x1d, 0x1d +/* 801AFC90 001ACBF0 98 1E 00 E4 */ stb r0, 0xe4(r30) +/* 801AFC94 001ACBF4 4B EA 14 2D */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 801AFC98 001ACBF8 88 1E 08 E5 */ lbz r0, 0x8e5(r30) +/* 801AFC9C 001ACBFC 38 60 00 01 */ li r3, 1 +/* 801AFCA0 001ACC00 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 801AFCA4 001ACC04 98 1E 08 E5 */ stb r0, 0x8e5(r30) +/* 801AFCA8 001ACC08 48 00 00 2C */ b lbl_801AFCD4 +lbl_801AFCAC: +/* 801AFCAC 001ACC0C 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801AFCB0 001ACC10 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801AFCB4 001ACC14 2C 00 00 00 */ cmpwi r0, 0 +/* 801AFCB8 001ACC18 41 82 00 1C */ beq lbl_801AFCD4 +/* 801AFCBC 001ACC1C A0 1E 00 08 */ lhz r0, 8(r30) +/* 801AFCC0 001ACC20 7F E3 FB 78 */ mr r3, r31 +/* 801AFCC4 001ACC24 38 81 00 0C */ addi r4, r1, 0xc +/* 801AFCC8 001ACC28 B0 01 00 08 */ sth r0, 8(r1) +/* 801AFCCC 001ACC2C B0 01 00 0C */ sth r0, 0xc(r1) +/* 801AFCD0 001ACC30 4B E9 C5 9D */ bl FreeScriptObject__13CStateManagerF9TUniqueId +lbl_801AFCD4: +/* 801AFCD4 001ACC34 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 801AFCD8 001ACC38 83 E1 00 BC */ lwz r31, 0xbc(r1) +/* 801AFCDC 001ACC3C 83 C1 00 B8 */ lwz r30, 0xb8(r1) +/* 801AFCE0 001ACC40 83 A1 00 B4 */ lwz r29, 0xb4(r1) +/* 801AFCE4 001ACC44 7C 08 03 A6 */ mtlr r0 +/* 801AFCE8 001ACC48 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 801AFCEC 001ACC4C 4E 80 00 20 */ blr + +.global Cover__9CFlaahgraFR13CStateManager9EStateMsgf +Cover__9CFlaahgraFR13CStateManager9EStateMsgf: +/* 801AFCF0 001ACC50 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 801AFCF4 001ACC54 7C 08 02 A6 */ mflr r0 +/* 801AFCF8 001ACC58 2C 05 00 01 */ cmpwi r5, 1 +/* 801AFCFC 001ACC5C 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 801AFD00 001ACC60 93 E1 00 AC */ stw r31, 0xac(r1) +/* 801AFD04 001ACC64 7C 7F 1B 78 */ mr r31, r3 +/* 801AFD08 001ACC68 93 C1 00 A8 */ stw r30, 0xa8(r1) +/* 801AFD0C 001ACC6C 7C 9E 23 78 */ mr r30, r4 +/* 801AFD10 001ACC70 41 82 00 80 */ beq lbl_801AFD90 +/* 801AFD14 001ACC74 40 80 00 10 */ bge lbl_801AFD24 +/* 801AFD18 001ACC78 2C 05 00 00 */ cmpwi r5, 0 +/* 801AFD1C 001ACC7C 40 80 00 14 */ bge lbl_801AFD30 +/* 801AFD20 001ACC80 48 00 03 70 */ b lbl_801B0090 +lbl_801AFD24: +/* 801AFD24 001ACC84 2C 05 00 03 */ cmpwi r5, 3 +/* 801AFD28 001ACC88 40 80 03 68 */ bge lbl_801B0090 +/* 801AFD2C 001ACC8C 48 00 03 08 */ b lbl_801B0034 +lbl_801AFD30: +/* 801AFD30 001ACC90 7F E4 FB 78 */ mr r4, r31 +/* 801AFD34 001ACC94 7F C5 F3 78 */ mr r5, r30 +/* 801AFD38 001ACC98 38 61 00 18 */ addi r3, r1, 0x18 +/* 801AFD3C 001ACC9C 4B FF E2 69 */ bl sub_801adfa4 +/* 801AFD40 001ACCA0 A0 01 00 18 */ lhz r0, 0x18(r1) +/* 801AFD44 001ACCA4 38 80 00 04 */ li r4, 4 +/* 801AFD48 001ACCA8 B0 1F 07 7C */ sth r0, 0x77c(r31) +/* 801AFD4C 001ACCAC A0 7F 07 7C */ lhz r3, 0x77c(r31) +/* 801AFD50 001ACCB0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801AFD54 001ACCB4 7C 03 00 40 */ cmplw r3, r0 +/* 801AFD58 001ACCB8 41 82 00 08 */ beq lbl_801AFD60 +/* 801AFD5C 001ACCBC 38 80 00 01 */ li r4, 1 +lbl_801AFD60: +/* 801AFD60 001ACCC0 90 9F 05 68 */ stw r4, 0x568(r31) +/* 801AFD64 001ACCC4 38 81 00 14 */ addi r4, r1, 0x14 +/* 801AFD68 001ACCC8 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 801AFD6C 001ACCCC A0 03 00 08 */ lhz r0, 8(r3) +/* 801AFD70 001ACCD0 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801AFD74 001ACCD4 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801AFD78 001ACCD8 80 7F 06 CC */ lwz r3, 0x6cc(r31) +/* 801AFD7C 001ACCDC 4B FC 54 9D */ bl SetTarget__13CBoneTrackingF9TUniqueId +/* 801AFD80 001ACCE0 80 7F 06 CC */ lwz r3, 0x6cc(r31) +/* 801AFD84 001ACCE4 38 80 00 01 */ li r4, 1 +/* 801AFD88 001ACCE8 4B FC 54 9D */ bl SetActive__13CBoneTrackingFb +/* 801AFD8C 001ACCEC 48 00 03 04 */ b lbl_801B0090 +lbl_801AFD90: +/* 801AFD90 001ACCF0 80 1F 05 68 */ lwz r0, 0x568(r31) +/* 801AFD94 001ACCF4 2C 00 00 01 */ cmpwi r0, 1 +/* 801AFD98 001ACCF8 41 82 00 20 */ beq lbl_801AFDB8 +/* 801AFD9C 001ACCFC 40 80 00 10 */ bge lbl_801AFDAC +/* 801AFDA0 001ACD00 2C 00 00 00 */ cmpwi r0, 0 +/* 801AFDA4 001ACD04 40 80 01 50 */ bge lbl_801AFEF4 +/* 801AFDA8 001ACD08 48 00 02 E8 */ b lbl_801B0090 +lbl_801AFDAC: +/* 801AFDAC 001ACD0C 2C 00 00 03 */ cmpwi r0, 3 +/* 801AFDB0 001ACD10 40 80 02 E0 */ bge lbl_801B0090 +/* 801AFDB4 001ACD14 48 00 02 10 */ b lbl_801AFFC4 +lbl_801AFDB8: +/* 801AFDB8 001ACD18 A0 1F 07 7C */ lhz r0, 0x77c(r31) +/* 801AFDBC 001ACD1C 7F C3 F3 78 */ mr r3, r30 +/* 801AFDC0 001ACD20 38 81 00 0C */ addi r4, r1, 0xc +/* 801AFDC4 001ACD24 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801AFDC8 001ACD28 4B E9 C7 DD */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801AFDCC 001ACD2C 28 03 00 00 */ cmplwi r3, 0 +/* 801AFDD0 001ACD30 41 82 01 18 */ beq lbl_801AFEE8 +/* 801AFDD4 001ACD34 C0 63 00 50 */ lfs f3, 0x50(r3) +/* 801AFDD8 001ACD38 C0 5F 00 50 */ lfs f2, 0x50(r31) +/* 801AFDDC 001ACD3C C0 23 00 40 */ lfs f1, 0x40(r3) +/* 801AFDE0 001ACD40 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801AFDE4 001ACD44 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801AFDE8 001ACD48 C0 83 00 60 */ lfs f4, 0x60(r3) +/* 801AFDEC 001ACD4C 38 61 00 2C */ addi r3, r1, 0x2c +/* 801AFDF0 001ACD50 C0 7F 00 60 */ lfs f3, 0x60(r31) +/* 801AFDF4 001ACD54 EC 21 00 28 */ fsubs f1, f1, f0 +/* 801AFDF8 001ACD58 EC 04 18 28 */ fsubs f0, f4, f3 +/* 801AFDFC 001ACD5C D0 41 00 60 */ stfs f2, 0x60(r1) +/* 801AFE00 001ACD60 D0 21 00 5C */ stfs f1, 0x5c(r1) +/* 801AFE04 001ACD64 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 801AFE08 001ACD68 48 16 43 F9 */ bl __ct__9CVector2fFff +/* 801AFE0C 001ACD6C C0 21 00 2C */ lfs f1, 0x2c(r1) +/* 801AFE10 001ACD70 38 61 00 24 */ addi r3, r1, 0x24 +/* 801AFE14 001ACD74 C0 01 00 30 */ lfs f0, 0x30(r1) +/* 801AFE18 001ACD78 D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 801AFE1C 001ACD7C D0 01 00 40 */ stfs f0, 0x40(r1) +/* 801AFE20 001ACD80 C0 5F 00 48 */ lfs f2, 0x48(r31) +/* 801AFE24 001ACD84 C0 3F 00 38 */ lfs f1, 0x38(r31) +/* 801AFE28 001ACD88 C0 1F 00 58 */ lfs f0, 0x58(r31) +/* 801AFE2C 001ACD8C D0 21 00 50 */ stfs f1, 0x50(r1) +/* 801AFE30 001ACD90 D0 41 00 54 */ stfs f2, 0x54(r1) +/* 801AFE34 001ACD94 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 801AFE38 001ACD98 48 16 43 C9 */ bl __ct__9CVector2fFff +/* 801AFE3C 001ACD9C C0 21 00 24 */ lfs f1, 0x24(r1) +/* 801AFE40 001ACDA0 38 61 00 34 */ addi r3, r1, 0x34 +/* 801AFE44 001ACDA4 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 801AFE48 001ACDA8 38 81 00 3C */ addi r4, r1, 0x3c +/* 801AFE4C 001ACDAC D0 21 00 34 */ stfs f1, 0x34(r1) +/* 801AFE50 001ACDB0 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 801AFE54 001ACDB4 48 16 41 71 */ bl GetAngleDiff__9CVector2fFRC9CVector2fRC9CVector2f +/* 801AFE58 001ACDB8 C0 02 A8 F4 */ lfs f0, lbl_805AC614@sda21(r2) +/* 801AFE5C 001ACDBC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801AFE60 001ACDC0 40 81 00 70 */ ble lbl_801AFED0 +/* 801AFE64 001ACDC4 38 61 00 5C */ addi r3, r1, 0x5c +/* 801AFE68 001ACDC8 48 16 48 91 */ bl CanBeNormalized__9CVector3fCFv +/* 801AFE6C 001ACDCC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801AFE70 001ACDD0 41 82 00 60 */ beq lbl_801AFED0 +/* 801AFE74 001ACDD4 38 61 00 44 */ addi r3, r1, 0x44 +/* 801AFE78 001ACDD8 38 81 00 5C */ addi r4, r1, 0x5c +/* 801AFE7C 001ACDDC 48 16 49 D5 */ bl AsNormalized__9CVector3fCFv +/* 801AFE80 001ACDE0 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801AFE84 001ACDE4 C4 C3 66 A0 */ lfsu f6, skZero3f@l(r3) +/* 801AFE88 001ACDE8 C0 61 00 44 */ lfs f3, 0x44(r1) +/* 801AFE8C 001ACDEC 38 81 00 84 */ addi r4, r1, 0x84 +/* 801AFE90 001ACDF0 C0 41 00 48 */ lfs f2, 0x48(r1) +/* 801AFE94 001ACDF4 C0 A3 00 04 */ lfs f5, 4(r3) +/* 801AFE98 001ACDF8 C0 83 00 08 */ lfs f4, 8(r3) +/* 801AFE9C 001ACDFC C0 21 00 4C */ lfs f1, 0x4c(r1) +/* 801AFEA0 001ACE00 C0 02 A8 DC */ lfs f0, lbl_805AC5FC@sda21(r2) +/* 801AFEA4 001ACE04 D0 C1 00 84 */ stfs f6, 0x84(r1) +/* 801AFEA8 001ACE08 D0 A1 00 88 */ stfs f5, 0x88(r1) +/* 801AFEAC 001ACE0C D0 81 00 8C */ stfs f4, 0x8c(r1) +/* 801AFEB0 001ACE10 D0 61 00 90 */ stfs f3, 0x90(r1) +/* 801AFEB4 001ACE14 D0 41 00 94 */ stfs f2, 0x94(r1) +/* 801AFEB8 001ACE18 D0 21 00 98 */ stfs f1, 0x98(r1) +/* 801AFEBC 001ACE1C D0 01 00 9C */ stfs f0, 0x9c(r1) +/* 801AFEC0 001ACE20 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801AFEC4 001ACE24 38 63 00 04 */ addi r3, r3, 4 +/* 801AFEC8 001ACE28 4B F8 18 51 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 801AFECC 001ACE2C 48 00 01 C4 */ b lbl_801B0090 +lbl_801AFED0: +/* 801AFED0 001ACE30 38 00 00 00 */ li r0, 0 +/* 801AFED4 001ACE34 38 80 00 00 */ li r4, 0 +/* 801AFED8 001ACE38 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801AFEDC 001ACE3C 80 7F 06 CC */ lwz r3, 0x6cc(r31) +/* 801AFEE0 001ACE40 4B FC 53 45 */ bl SetActive__13CBoneTrackingFb +/* 801AFEE4 001ACE44 48 00 01 AC */ b lbl_801B0090 +lbl_801AFEE8: +/* 801AFEE8 001ACE48 38 00 00 04 */ li r0, 4 +/* 801AFEEC 001ACE4C 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801AFEF0 001ACE50 48 00 01 A0 */ b lbl_801B0090 +lbl_801AFEF4: +/* 801AFEF4 001ACE54 80 FF 04 50 */ lwz r7, 0x450(r31) +/* 801AFEF8 001ACE58 80 07 02 B8 */ lwz r0, 0x2b8(r7) +/* 801AFEFC 001ACE5C 2C 00 00 07 */ cmpwi r0, 7 +/* 801AFF00 001ACE60 40 82 00 10 */ bne lbl_801AFF10 +/* 801AFF04 001ACE64 38 00 00 02 */ li r0, 2 +/* 801AFF08 001ACE68 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801AFF0C 001ACE6C 48 00 01 84 */ b lbl_801B0090 +lbl_801AFF10: +/* 801AFF10 001ACE70 80 1F 07 B0 */ lwz r0, 0x7b0(r31) +/* 801AFF14 001ACE74 3C A0 80 3E */ lis r5, lbl_803DAA68@ha +/* 801AFF18 001ACE78 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801AFF1C 001ACE7C C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) +/* 801AFF20 001ACE80 38 A5 AA 68 */ addi r5, r5, lbl_803DAA68@l +/* 801AFF24 001ACE84 54 00 10 3A */ slwi r0, r0, 2 +/* 801AFF28 001ACE88 38 C2 A8 A4 */ addi r6, r2, lbl_805AC5C4@sda21 +/* 801AFF2C 001ACE8C C0 23 00 04 */ lfs f1, 4(r3) +/* 801AFF30 001ACE90 7D 06 00 2E */ lwzx r8, r6, r0 +/* 801AFF34 001ACE94 38 C0 00 05 */ li r6, 5 +/* 801AFF38 001ACE98 C0 03 00 08 */ lfs f0, 8(r3) +/* 801AFF3C 001ACE9C 38 00 00 00 */ li r0, 0 +/* 801AFF40 001ACEA0 3B E7 00 04 */ addi r31, r7, 4 +/* 801AFF44 001ACEA4 3C 80 80 3E */ lis r4, lbl_803DA9D8@ha +/* 801AFF48 001ACEA8 90 A1 00 68 */ stw r5, 0x68(r1) +/* 801AFF4C 001ACEAC 38 A4 A9 D8 */ addi r5, r4, lbl_803DA9D8@l +/* 801AFF50 001ACEB0 38 80 00 05 */ li r4, 5 +/* 801AFF54 001ACEB4 7F E3 FB 78 */ mr r3, r31 +/* 801AFF58 001ACEB8 90 C1 00 6C */ stw r6, 0x6c(r1) +/* 801AFF5C 001ACEBC 90 A1 00 68 */ stw r5, 0x68(r1) +/* 801AFF60 001ACEC0 91 01 00 70 */ stw r8, 0x70(r1) +/* 801AFF64 001ACEC4 D0 41 00 74 */ stfs f2, 0x74(r1) +/* 801AFF68 001ACEC8 D0 21 00 78 */ stfs f1, 0x78(r1) +/* 801AFF6C 001ACECC D0 01 00 7C */ stfs f0, 0x7c(r1) +/* 801AFF70 001ACED0 98 01 00 80 */ stb r0, 0x80(r1) +/* 801AFF74 001ACED4 4B F8 14 C5 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801AFF78 001ACED8 80 01 00 6C */ lwz r0, 0x6c(r1) +/* 801AFF7C 001ACEDC 3C 60 80 3E */ lis r3, lbl_803DA9D8@ha +/* 801AFF80 001ACEE0 38 83 A9 D8 */ addi r4, r3, lbl_803DA9D8@l +/* 801AFF84 001ACEE4 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801AFF88 001ACEE8 90 1F 01 10 */ stw r0, 0x110(r31) +/* 801AFF8C 001ACEEC 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801AFF90 001ACEF0 80 61 00 70 */ lwz r3, 0x70(r1) +/* 801AFF94 001ACEF4 80 A1 00 74 */ lwz r5, 0x74(r1) +/* 801AFF98 001ACEF8 90 7F 01 14 */ stw r3, 0x114(r31) +/* 801AFF9C 001ACEFC 80 61 00 78 */ lwz r3, 0x78(r1) +/* 801AFFA0 001ACF00 90 BF 01 18 */ stw r5, 0x118(r31) +/* 801AFFA4 001ACF04 80 A1 00 7C */ lwz r5, 0x7c(r1) +/* 801AFFA8 001ACF08 90 7F 01 1C */ stw r3, 0x11c(r31) +/* 801AFFAC 001ACF0C 88 61 00 80 */ lbz r3, 0x80(r1) +/* 801AFFB0 001ACF10 90 BF 01 20 */ stw r5, 0x120(r31) +/* 801AFFB4 001ACF14 90 81 00 68 */ stw r4, 0x68(r1) +/* 801AFFB8 001ACF18 98 7F 01 24 */ stb r3, 0x124(r31) +/* 801AFFBC 001ACF1C 90 01 00 68 */ stw r0, 0x68(r1) +/* 801AFFC0 001ACF20 48 00 00 D0 */ b lbl_801B0090 +lbl_801AFFC4: +/* 801AFFC4 001ACF24 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801AFFC8 001ACF28 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801AFFCC 001ACF2C 2C 00 00 07 */ cmpwi r0, 7 +/* 801AFFD0 001ACF30 41 82 00 10 */ beq lbl_801AFFE0 +/* 801AFFD4 001ACF34 38 00 00 04 */ li r0, 4 +/* 801AFFD8 001ACF38 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801AFFDC 001ACF3C 48 00 00 B4 */ b lbl_801B0090 +lbl_801AFFE0: +/* 801AFFE0 001ACF40 A0 1F 07 7C */ lhz r0, 0x77c(r31) +/* 801AFFE4 001ACF44 7F C3 F3 78 */ mr r3, r30 +/* 801AFFE8 001ACF48 38 81 00 08 */ addi r4, r1, 8 +/* 801AFFEC 001ACF4C B0 01 00 08 */ sth r0, 8(r1) +/* 801AFFF0 001ACF50 4B E9 C5 B5 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801AFFF4 001ACF54 28 03 00 00 */ cmplwi r3, 0 +/* 801AFFF8 001ACF58 41 82 00 98 */ beq lbl_801B0090 +/* 801AFFFC 001ACF5C C0 23 00 40 */ lfs f1, 0x40(r3) +/* 801B0000 001ACF60 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801B0004 001ACF64 C0 83 00 50 */ lfs f4, 0x50(r3) +/* 801B0008 001ACF68 C0 7F 00 50 */ lfs f3, 0x50(r31) +/* 801B000C 001ACF6C EC 01 00 28 */ fsubs f0, f1, f0 +/* 801B0010 001ACF70 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 801B0014 001ACF74 C0 3F 00 60 */ lfs f1, 0x60(r31) +/* 801B0018 001ACF78 EC 64 18 28 */ fsubs f3, f4, f3 +/* 801B001C 001ACF7C 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801B0020 001ACF80 EC 22 08 28 */ fsubs f1, f2, f1 +/* 801B0024 001ACF84 D0 03 00 1C */ stfs f0, 0x1c(r3) +/* 801B0028 001ACF88 D0 63 00 20 */ stfs f3, 0x20(r3) +/* 801B002C 001ACF8C D0 23 00 24 */ stfs f1, 0x24(r3) +/* 801B0030 001ACF90 48 00 00 60 */ b lbl_801B0090 +lbl_801B0034: +/* 801B0034 001ACF94 80 9F 04 50 */ lwz r4, 0x450(r31) +/* 801B0038 001ACF98 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 801B003C 001ACF9C 2C 00 00 07 */ cmpwi r0, 7 +/* 801B0040 001ACFA0 40 82 00 30 */ bne lbl_801B0070 +/* 801B0044 001ACFA4 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B0048 001ACFA8 38 00 00 0C */ li r0, 0xc +/* 801B004C 001ACFAC 38 A3 AA 68 */ addi r5, r3, lbl_803DAA68@l +/* 801B0050 001ACFB0 90 01 00 20 */ stw r0, 0x20(r1) +/* 801B0054 001ACFB4 38 64 00 04 */ addi r3, r4, 4 +/* 801B0058 001ACFB8 38 81 00 1C */ addi r4, r1, 0x1c +/* 801B005C 001ACFBC 90 A1 00 1C */ stw r5, 0x1c(r1) +/* 801B0060 001ACFC0 4B F8 17 59 */ bl DeliverCmd__16CBodyStateCmdMgrFRC13CBodyStateCmd +/* 801B0064 001ACFC4 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B0068 001ACFC8 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801B006C 001ACFCC 90 01 00 1C */ stw r0, 0x1c(r1) +lbl_801B0070: +/* 801B0070 001ACFD0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801B0074 001ACFD4 B0 1F 07 7C */ sth r0, 0x77c(r31) +/* 801B0078 001ACFD8 C0 1F 06 B4 */ lfs f0, 0x6b4(r31) +/* 801B007C 001ACFDC D0 1F 07 BC */ stfs f0, 0x7bc(r31) +/* 801B0080 001ACFE0 80 1F 07 B0 */ lwz r0, 0x7b0(r31) +/* 801B0084 001ACFE4 7C 00 00 34 */ cntlzw r0, r0 +/* 801B0088 001ACFE8 54 00 D9 7E */ srwi r0, r0, 5 +/* 801B008C 001ACFEC 90 1F 07 B0 */ stw r0, 0x7b0(r31) +lbl_801B0090: +/* 801B0090 001ACFF0 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 801B0094 001ACFF4 83 E1 00 AC */ lwz r31, 0xac(r1) +/* 801B0098 001ACFF8 83 C1 00 A8 */ lwz r30, 0xa8(r1) +/* 801B009C 001ACFFC 7C 08 03 A6 */ mtlr r0 +/* 801B00A0 001AD000 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 801B00A4 001AD004 4E 80 00 20 */ blr + +.global Dizzy__9CFlaahgraFR13CStateManager9EStateMsgf +Dizzy__9CFlaahgraFR13CStateManager9EStateMsgf: +/* 801B00A8 001AD008 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801B00AC 001AD00C 7C 08 02 A6 */ mflr r0 +/* 801B00B0 001AD010 2C 05 00 01 */ cmpwi r5, 1 +/* 801B00B4 001AD014 90 01 00 24 */ stw r0, 0x24(r1) +/* 801B00B8 001AD018 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801B00BC 001AD01C 7C 7F 1B 78 */ mr r31, r3 +/* 801B00C0 001AD020 41 82 00 40 */ beq lbl_801B0100 +/* 801B00C4 001AD024 40 80 00 10 */ bge lbl_801B00D4 +/* 801B00C8 001AD028 2C 05 00 00 */ cmpwi r5, 0 +/* 801B00CC 001AD02C 40 80 00 14 */ bge lbl_801B00E0 +/* 801B00D0 001AD030 48 00 01 14 */ b lbl_801B01E4 +lbl_801B00D4: +/* 801B00D4 001AD034 2C 05 00 03 */ cmpwi r5, 3 +/* 801B00D8 001AD038 40 80 01 0C */ bge lbl_801B01E4 +/* 801B00DC 001AD03C 48 00 00 B8 */ b lbl_801B0194 +lbl_801B00E0: +/* 801B00E0 001AD040 C0 02 A8 BC */ lfs f0, lbl_805AC5DC@sda21(r2) +/* 801B00E4 001AD044 38 60 00 00 */ li r3, 0 +/* 801B00E8 001AD048 D0 1F 07 B8 */ stfs f0, 0x7b8(r31) +/* 801B00EC 001AD04C D0 1F 08 14 */ stfs f0, 0x814(r31) +/* 801B00F0 001AD050 88 1F 08 E5 */ lbz r0, 0x8e5(r31) +/* 801B00F4 001AD054 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 801B00F8 001AD058 98 1F 08 E5 */ stb r0, 0x8e5(r31) +/* 801B00FC 001AD05C 48 00 00 E8 */ b lbl_801B01E4 +lbl_801B0100: +/* 801B0100 001AD060 C0 1F 07 B8 */ lfs f0, 0x7b8(r31) +/* 801B0104 001AD064 EC 00 08 2A */ fadds f0, f0, f1 +/* 801B0108 001AD068 D0 1F 07 B8 */ stfs f0, 0x7b8(r31) +/* 801B010C 001AD06C 80 1F 07 88 */ lwz r0, 0x788(r31) +/* 801B0110 001AD070 C0 5F 07 B8 */ lfs f2, 0x7b8(r31) +/* 801B0114 001AD074 2C 00 00 02 */ cmpwi r0, 2 +/* 801B0118 001AD078 40 80 00 0C */ bge lbl_801B0124 +/* 801B011C 001AD07C C0 1F 06 B0 */ lfs f0, 0x6b0(r31) +/* 801B0120 001AD080 48 00 00 10 */ b lbl_801B0130 +lbl_801B0124: +/* 801B0124 001AD084 C0 22 A8 F8 */ lfs f1, lbl_805AC618@sda21(r2) +/* 801B0128 001AD088 C0 1F 06 B0 */ lfs f0, 0x6b0(r31) +/* 801B012C 001AD08C EC 01 00 2A */ fadds f0, f1, f0 +lbl_801B0130: +/* 801B0130 001AD090 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801B0134 001AD094 4C 41 13 82 */ cror 2, 1, 2 +/* 801B0138 001AD098 40 82 00 50 */ bne lbl_801B0188 +/* 801B013C 001AD09C 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B0140 001AD0A0 38 00 00 0A */ li r0, 0xa +/* 801B0144 001AD0A4 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l +/* 801B0148 001AD0A8 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B014C 001AD0AC 38 81 00 10 */ addi r4, r1, 0x10 +/* 801B0150 001AD0B0 90 61 00 10 */ stw r3, 0x10(r1) +/* 801B0154 001AD0B4 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801B0158 001AD0B8 38 63 00 04 */ addi r3, r3, 4 +/* 801B015C 001AD0BC 4B F8 16 5D */ bl DeliverCmd__16CBodyStateCmdMgrFRC13CBodyStateCmd +/* 801B0160 001AD0C0 34 01 00 10 */ addic. r0, r1, 0x10 +/* 801B0164 001AD0C4 41 82 00 10 */ beq lbl_801B0174 +/* 801B0168 001AD0C8 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B016C 001AD0CC 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801B0170 001AD0D0 90 01 00 10 */ stw r0, 0x10(r1) +lbl_801B0174: +/* 801B0174 001AD0D4 88 1F 08 E5 */ lbz r0, 0x8e5(r31) +/* 801B0178 001AD0D8 38 60 00 01 */ li r3, 1 +/* 801B017C 001AD0DC 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 801B0180 001AD0E0 98 1F 08 E5 */ stb r0, 0x8e5(r31) +/* 801B0184 001AD0E4 48 00 00 60 */ b lbl_801B01E4 +lbl_801B0188: +/* 801B0188 001AD0E8 C0 02 A8 BC */ lfs f0, lbl_805AC5DC@sda21(r2) +/* 801B018C 001AD0EC D0 1F 08 14 */ stfs f0, 0x814(r31) +/* 801B0190 001AD0F0 48 00 00 54 */ b lbl_801B01E4 +lbl_801B0194: +/* 801B0194 001AD0F4 88 1F 08 E5 */ lbz r0, 0x8e5(r31) +/* 801B0198 001AD0F8 38 60 00 00 */ li r3, 0 +/* 801B019C 001AD0FC 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 801B01A0 001AD100 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B01A4 001AD104 98 1F 08 E5 */ stb r0, 0x8e5(r31) +/* 801B01A8 001AD108 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l +/* 801B01AC 001AD10C 38 00 00 0A */ li r0, 0xa +/* 801B01B0 001AD110 38 81 00 08 */ addi r4, r1, 8 +/* 801B01B4 001AD114 C0 1F 08 14 */ lfs f0, 0x814(r31) +/* 801B01B8 001AD118 D0 1F 08 10 */ stfs f0, 0x810(r31) +/* 801B01BC 001AD11C C0 1F 06 B4 */ lfs f0, 0x6b4(r31) +/* 801B01C0 001AD120 D0 1F 07 BC */ stfs f0, 0x7bc(r31) +/* 801B01C4 001AD124 90 61 00 08 */ stw r3, 8(r1) +/* 801B01C8 001AD128 90 01 00 0C */ stw r0, 0xc(r1) +/* 801B01CC 001AD12C 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801B01D0 001AD130 38 63 00 04 */ addi r3, r3, 4 +/* 801B01D4 001AD134 4B F8 15 E5 */ bl DeliverCmd__16CBodyStateCmdMgrFRC13CBodyStateCmd +/* 801B01D8 001AD138 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B01DC 001AD13C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801B01E0 001AD140 90 01 00 08 */ stw r0, 8(r1) +lbl_801B01E4: +/* 801B01E4 001AD144 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801B01E8 001AD148 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801B01EC 001AD14C 7C 08 03 A6 */ mtlr r0 +/* 801B01F0 001AD150 38 21 00 20 */ addi r1, r1, 0x20 + +.global sub_801b01f4 +sub_801b01f4: +/* 801B01F4 001AD154 4E 80 00 20 */ blr + +.global ProjectileAttack__9CFlaahgraFR13CStateManager9EStateMsgf +ProjectileAttack__9CFlaahgraFR13CStateManager9EStateMsgf: +/* 801B01F8 001AD158 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801B01FC 001AD15C 7C 08 02 A6 */ mflr r0 +/* 801B0200 001AD160 90 01 00 54 */ stw r0, 0x54(r1) +/* 801B0204 001AD164 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 801B0208 001AD168 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 801B020C 001AD16C 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801B0210 001AD170 2C 05 00 01 */ cmpwi r5, 1 +/* 801B0214 001AD174 7C 7F 1B 78 */ mr r31, r3 +/* 801B0218 001AD178 41 82 00 3C */ beq lbl_801B0254 +/* 801B021C 001AD17C 40 80 00 10 */ bge lbl_801B022C +/* 801B0220 001AD180 2C 05 00 00 */ cmpwi r5, 0 +/* 801B0224 001AD184 40 80 00 14 */ bge lbl_801B0238 +/* 801B0228 001AD188 48 00 02 A0 */ b lbl_801B04C8 +lbl_801B022C: +/* 801B022C 001AD18C 2C 05 00 03 */ cmpwi r5, 3 +/* 801B0230 001AD190 40 80 02 98 */ bge lbl_801B04C8 +/* 801B0234 001AD194 48 00 02 08 */ b lbl_801B043C +lbl_801B0238: +/* 801B0238 001AD198 38 00 00 00 */ li r0, 0 +/* 801B023C 001AD19C 7C 85 23 78 */ mr r5, r4 +/* 801B0240 001AD1A0 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801B0244 001AD1A4 38 80 00 0A */ li r4, 0xa +/* 801B0248 001AD1A8 38 C0 FF FF */ li r6, -1 +/* 801B024C 001AD1AC 4B EA 0E 75 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 801B0250 001AD1B0 48 00 02 78 */ b lbl_801B04C8 +lbl_801B0254: +/* 801B0254 001AD1B4 80 1F 05 68 */ lwz r0, 0x568(r31) +/* 801B0258 001AD1B8 2C 00 00 01 */ cmpwi r0, 1 +/* 801B025C 001AD1BC 41 82 02 6C */ beq lbl_801B04C8 +/* 801B0260 001AD1C0 40 80 00 10 */ bge lbl_801B0270 +/* 801B0264 001AD1C4 2C 00 00 00 */ cmpwi r0, 0 +/* 801B0268 001AD1C8 40 80 00 14 */ bge lbl_801B027C +/* 801B026C 001AD1CC 48 00 02 5C */ b lbl_801B04C8 +lbl_801B0270: +/* 801B0270 001AD1D0 2C 00 00 03 */ cmpwi r0, 3 +/* 801B0274 001AD1D4 40 80 02 54 */ bge lbl_801B04C8 +/* 801B0278 001AD1D8 48 00 01 70 */ b lbl_801B03E8 +lbl_801B027C: +/* 801B027C 001AD1DC 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801B0280 001AD1E0 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801B0284 001AD1E4 2C 00 00 12 */ cmpwi r0, 0x12 +/* 801B0288 001AD1E8 40 82 00 10 */ bne lbl_801B0298 +/* 801B028C 001AD1EC 38 00 00 02 */ li r0, 2 +/* 801B0290 001AD1F0 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801B0294 001AD1F4 48 00 02 34 */ b lbl_801B04C8 +lbl_801B0298: +/* 801B0298 001AD1F8 38 00 00 03 */ li r0, 3 +/* 801B029C 001AD1FC 90 1F 07 B4 */ stw r0, 0x7b4(r31) +/* 801B02A0 001AD200 88 1F 08 E4 */ lbz r0, 0x8e4(r31) +/* 801B02A4 001AD204 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 801B02A8 001AD208 41 82 00 14 */ beq lbl_801B02BC +/* 801B02AC 001AD20C 38 00 00 02 */ li r0, 2 +/* 801B02B0 001AD210 39 00 00 06 */ li r8, 6 +/* 801B02B4 001AD214 90 1F 07 B4 */ stw r0, 0x7b4(r31) +/* 801B02B8 001AD218 48 00 00 88 */ b lbl_801B0340 +lbl_801B02BC: +/* 801B02BC 001AD21C 80 64 08 4C */ lwz r3, 0x84c(r4) +/* 801B02C0 001AD220 C0 02 A8 FC */ lfs f0, lbl_805AC61C@sda21(r2) +/* 801B02C4 001AD224 C0 A3 01 38 */ lfs f5, 0x138(r3) +/* 801B02C8 001AD228 C0 83 01 3C */ lfs f4, 0x13c(r3) +/* 801B02CC 001AD22C EC 45 01 72 */ fmuls f2, f5, f5 +/* 801B02D0 001AD230 C0 C3 01 40 */ lfs f6, 0x140(r3) +/* 801B02D4 001AD234 EC 24 01 32 */ fmuls f1, f4, f4 +/* 801B02D8 001AD238 EC 66 01 B2 */ fmuls f3, f6, f6 +/* 801B02DC 001AD23C EC 22 08 2A */ fadds f1, f2, f1 +/* 801B02E0 001AD240 EC 23 08 2A */ fadds f1, f3, f1 +/* 801B02E4 001AD244 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B02E8 001AD248 40 81 00 54 */ ble lbl_801B033C +/* 801B02EC 001AD24C C0 1F 00 44 */ lfs f0, 0x44(r31) +/* 801B02F0 001AD250 C0 5F 00 34 */ lfs f2, 0x34(r31) +/* 801B02F4 001AD254 EC 20 01 32 */ fmuls f1, f0, f4 +/* 801B02F8 001AD258 C0 7F 00 54 */ lfs f3, 0x54(r31) +/* 801B02FC 001AD25C C0 02 A8 BC */ lfs f0, lbl_805AC5DC@sda21(r2) +/* 801B0300 001AD260 EC 22 09 7A */ fmadds f1, f2, f5, f1 +/* 801B0304 001AD264 EC 23 09 BA */ fmadds f1, f3, f6, f1 +/* 801B0308 001AD268 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B030C 001AD26C 40 80 00 1C */ bge lbl_801B0328 +/* 801B0310 001AD270 38 60 00 01 */ li r3, 1 +/* 801B0314 001AD274 38 00 00 00 */ li r0, 0 +/* 801B0318 001AD278 90 7F 07 B4 */ stw r3, 0x7b4(r31) +/* 801B031C 001AD27C 39 00 00 04 */ li r8, 4 +/* 801B0320 001AD280 90 1F 07 2C */ stw r0, 0x72c(r31) +/* 801B0324 001AD284 48 00 00 1C */ b lbl_801B0340 +lbl_801B0328: +/* 801B0328 001AD288 38 00 00 00 */ li r0, 0 +/* 801B032C 001AD28C 39 00 00 03 */ li r8, 3 +/* 801B0330 001AD290 90 1F 07 B4 */ stw r0, 0x7b4(r31) +/* 801B0334 001AD294 90 1F 07 2C */ stw r0, 0x72c(r31) +/* 801B0338 001AD298 48 00 00 08 */ b lbl_801B0340 +lbl_801B033C: +/* 801B033C 001AD29C 39 00 00 07 */ li r8, 7 +lbl_801B0340: +/* 801B0340 001AD2A0 80 E4 08 4C */ lwz r7, 0x84c(r4) +/* 801B0344 001AD2A4 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B0348 001AD2A8 38 A3 AA 68 */ addi r5, r3, lbl_803DAA68@l +/* 801B034C 001AD2AC 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801B0350 001AD2B0 C0 47 00 60 */ lfs f2, 0x60(r7) +/* 801B0354 001AD2B4 3C 80 80 3E */ lis r4, lbl_803DA9CC@ha +/* 801B0358 001AD2B8 C0 27 00 50 */ lfs f1, 0x50(r7) +/* 801B035C 001AD2BC 38 C0 00 06 */ li r6, 6 +/* 801B0360 001AD2C0 C0 07 00 40 */ lfs f0, 0x40(r7) +/* 801B0364 001AD2C4 38 00 00 00 */ li r0, 0 +/* 801B0368 001AD2C8 3B E3 00 04 */ addi r31, r3, 4 +/* 801B036C 001AD2CC 90 A1 00 10 */ stw r5, 0x10(r1) +/* 801B0370 001AD2D0 38 A4 A9 CC */ addi r5, r4, lbl_803DA9CC@l +/* 801B0374 001AD2D4 38 80 00 06 */ li r4, 6 +/* 801B0378 001AD2D8 90 C1 00 14 */ stw r6, 0x14(r1) +/* 801B037C 001AD2DC 7F E3 FB 78 */ mr r3, r31 +/* 801B0380 001AD2E0 90 A1 00 10 */ stw r5, 0x10(r1) +/* 801B0384 001AD2E4 91 01 00 18 */ stw r8, 0x18(r1) +/* 801B0388 001AD2E8 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801B038C 001AD2EC D0 21 00 20 */ stfs f1, 0x20(r1) +/* 801B0390 001AD2F0 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 801B0394 001AD2F4 98 01 00 28 */ stb r0, 0x28(r1) +/* 801B0398 001AD2F8 4B F8 10 A1 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801B039C 001AD2FC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B03A0 001AD300 3C 60 80 3E */ lis r3, lbl_803DA9CC@ha +/* 801B03A4 001AD304 38 83 A9 CC */ addi r4, r3, lbl_803DA9CC@l +/* 801B03A8 001AD308 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B03AC 001AD30C 90 1F 01 2C */ stw r0, 0x12c(r31) +/* 801B03B0 001AD310 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801B03B4 001AD314 80 61 00 18 */ lwz r3, 0x18(r1) +/* 801B03B8 001AD318 80 A1 00 1C */ lwz r5, 0x1c(r1) +/* 801B03BC 001AD31C 90 7F 01 30 */ stw r3, 0x130(r31) +/* 801B03C0 001AD320 80 61 00 20 */ lwz r3, 0x20(r1) +/* 801B03C4 001AD324 90 BF 01 34 */ stw r5, 0x134(r31) +/* 801B03C8 001AD328 80 A1 00 24 */ lwz r5, 0x24(r1) +/* 801B03CC 001AD32C 90 7F 01 38 */ stw r3, 0x138(r31) +/* 801B03D0 001AD330 88 61 00 28 */ lbz r3, 0x28(r1) +/* 801B03D4 001AD334 90 BF 01 3C */ stw r5, 0x13c(r31) +/* 801B03D8 001AD338 90 81 00 10 */ stw r4, 0x10(r1) +/* 801B03DC 001AD33C 98 7F 01 40 */ stb r3, 0x140(r31) +/* 801B03E0 001AD340 90 01 00 10 */ stw r0, 0x10(r1) +/* 801B03E4 001AD344 48 00 00 E4 */ b lbl_801B04C8 +lbl_801B03E8: +/* 801B03E8 001AD348 80 BF 04 50 */ lwz r5, 0x450(r31) +/* 801B03EC 001AD34C 80 05 02 B8 */ lwz r0, 0x2b8(r5) +/* 801B03F0 001AD350 2C 00 00 12 */ cmpwi r0, 0x12 +/* 801B03F4 001AD354 41 82 00 10 */ beq lbl_801B0404 +/* 801B03F8 001AD358 38 00 00 04 */ li r0, 4 +/* 801B03FC 001AD35C 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801B0400 001AD360 48 00 00 C8 */ b lbl_801B04C8 +lbl_801B0404: +/* 801B0404 001AD364 80 64 08 4C */ lwz r3, 0x84c(r4) +/* 801B0408 001AD368 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801B040C 001AD36C C0 23 00 40 */ lfs f1, 0x40(r3) +/* 801B0410 001AD370 C0 83 00 50 */ lfs f4, 0x50(r3) +/* 801B0414 001AD374 C0 7F 00 50 */ lfs f3, 0x50(r31) +/* 801B0418 001AD378 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801B041C 001AD37C C0 43 00 60 */ lfs f2, 0x60(r3) +/* 801B0420 001AD380 C0 3F 00 60 */ lfs f1, 0x60(r31) +/* 801B0424 001AD384 EC 64 18 28 */ fsubs f3, f4, f3 +/* 801B0428 001AD388 D0 05 00 1C */ stfs f0, 0x1c(r5) +/* 801B042C 001AD38C EC 02 08 28 */ fsubs f0, f2, f1 +/* 801B0430 001AD390 D0 65 00 20 */ stfs f3, 0x20(r5) +/* 801B0434 001AD394 D0 05 00 24 */ stfs f0, 0x24(r5) +/* 801B0438 001AD398 48 00 00 90 */ b lbl_801B04C8 +lbl_801B043C: +/* 801B043C 001AD39C 80 7F 07 88 */ lwz r3, 0x788(r31) +/* 801B0440 001AD3A0 3C 00 43 30 */ lis r0, 0x4330 +/* 801B0444 001AD3A4 90 01 00 30 */ stw r0, 0x30(r1) +/* 801B0448 001AD3A8 6C 60 80 00 */ xoris r0, r3, 0x8000 +/* 801B044C 001AD3AC C8 22 A9 00 */ lfd f1, lbl_805AC620@sda21(r2) +/* 801B0450 001AD3B0 90 01 00 34 */ stw r0, 0x34(r1) +/* 801B0454 001AD3B4 C0 42 A8 DC */ lfs f2, lbl_805AC5FC@sda21(r2) +/* 801B0458 001AD3B8 C8 01 00 30 */ lfd f0, 0x30(r1) +/* 801B045C 001AD3BC 80 64 09 00 */ lwz r3, 0x900(r4) +/* 801B0460 001AD3C0 EC 00 08 28 */ fsubs f0, f0, f1 +/* 801B0464 001AD3C4 EF E2 00 2A */ fadds f31, f2, f0 +/* 801B0468 001AD3C8 48 16 20 75 */ bl Float__9CRandom16Fv +/* 801B046C 001AD3CC C0 5F 03 08 */ lfs f2, 0x308(r31) +/* 801B0470 001AD3D0 38 00 FF FF */ li r0, -1 +/* 801B0474 001AD3D4 C0 1F 03 04 */ lfs f0, 0x304(r31) +/* 801B0478 001AD3D8 EC 02 00 7A */ fmadds f0, f2, f1, f0 +/* 801B047C 001AD3DC EC 00 F8 24 */ fdivs f0, f0, f31 +/* 801B0480 001AD3E0 D0 1F 07 C0 */ stfs f0, 0x7c0(r31) +/* 801B0484 001AD3E4 90 1F 07 B4 */ stw r0, 0x7b4(r31) +/* 801B0488 001AD3E8 90 1F 07 2C */ stw r0, 0x72c(r31) +/* 801B048C 001AD3EC 80 9F 04 50 */ lwz r4, 0x450(r31) +/* 801B0490 001AD3F0 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 801B0494 001AD3F4 2C 00 00 12 */ cmpwi r0, 0x12 +/* 801B0498 001AD3F8 40 82 00 30 */ bne lbl_801B04C8 +/* 801B049C 001AD3FC 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B04A0 001AD400 38 00 00 0C */ li r0, 0xc +/* 801B04A4 001AD404 38 A3 AA 68 */ addi r5, r3, lbl_803DAA68@l +/* 801B04A8 001AD408 90 01 00 0C */ stw r0, 0xc(r1) +/* 801B04AC 001AD40C 38 64 00 04 */ addi r3, r4, 4 +/* 801B04B0 001AD410 38 81 00 08 */ addi r4, r1, 8 +/* 801B04B4 001AD414 90 A1 00 08 */ stw r5, 8(r1) +/* 801B04B8 001AD418 4B F8 13 01 */ bl DeliverCmd__16CBodyStateCmdMgrFRC13CBodyStateCmd +/* 801B04BC 001AD41C 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B04C0 001AD420 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801B04C4 001AD424 90 01 00 08 */ stw r0, 8(r1) +lbl_801B04C8: +/* 801B04C8 001AD428 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 801B04CC 001AD42C 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801B04D0 001AD430 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 801B04D4 001AD434 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801B04D8 001AD438 7C 08 03 A6 */ mtlr r0 +/* 801B04DC 001AD43C 38 21 00 50 */ addi r1, r1, 0x50 +/* 801B04E0 001AD440 4E 80 00 20 */ blr + +.global SpecialAttack__9CFlaahgraFR13CStateManager9EStateMsgf +SpecialAttack__9CFlaahgraFR13CStateManager9EStateMsgf: +/* 801B04E4 001AD444 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801B04E8 001AD448 7C 08 02 A6 */ mflr r0 +/* 801B04EC 001AD44C 90 01 00 54 */ stw r0, 0x54(r1) +/* 801B04F0 001AD450 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 801B04F4 001AD454 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 801B04F8 001AD458 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801B04FC 001AD45C 2C 05 00 01 */ cmpwi r5, 1 +/* 801B0500 001AD460 7C 7F 1B 78 */ mr r31, r3 +/* 801B0504 001AD464 41 82 00 50 */ beq lbl_801B0554 +/* 801B0508 001AD468 40 80 00 10 */ bge lbl_801B0518 +/* 801B050C 001AD46C 2C 05 00 00 */ cmpwi r5, 0 +/* 801B0510 001AD470 40 80 00 14 */ bge lbl_801B0524 +/* 801B0514 001AD474 48 00 02 28 */ b lbl_801B073C +lbl_801B0518: +/* 801B0518 001AD478 2C 05 00 03 */ cmpwi r5, 3 +/* 801B051C 001AD47C 40 80 02 20 */ bge lbl_801B073C +/* 801B0520 001AD480 48 00 01 84 */ b lbl_801B06A4 +lbl_801B0524: +/* 801B0524 001AD484 39 00 00 00 */ li r8, 0 +/* 801B0528 001AD488 38 00 00 03 */ li r0, 3 +/* 801B052C 001AD48C 91 1F 05 68 */ stw r8, 0x568(r31) +/* 801B0530 001AD490 7C 85 23 78 */ mr r5, r4 +/* 801B0534 001AD494 38 80 00 0A */ li r4, 0xa +/* 801B0538 001AD498 38 C0 FF FF */ li r6, -1 +/* 801B053C 001AD49C 88 FF 08 E5 */ lbz r7, 0x8e5(r31) +/* 801B0540 001AD4A0 51 07 3E 30 */ rlwimi r7, r8, 7, 0x18, 0x18 +/* 801B0544 001AD4A4 98 FF 08 E5 */ stb r7, 0x8e5(r31) +/* 801B0548 001AD4A8 90 1F 07 B4 */ stw r0, 0x7b4(r31) +/* 801B054C 001AD4AC 4B EA 0B 75 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 801B0550 001AD4B0 48 00 01 EC */ b lbl_801B073C +lbl_801B0554: +/* 801B0554 001AD4B4 80 1F 05 68 */ lwz r0, 0x568(r31) +/* 801B0558 001AD4B8 2C 00 00 01 */ cmpwi r0, 1 +/* 801B055C 001AD4BC 41 82 01 E0 */ beq lbl_801B073C +/* 801B0560 001AD4C0 40 80 00 10 */ bge lbl_801B0570 +/* 801B0564 001AD4C4 2C 00 00 00 */ cmpwi r0, 0 +/* 801B0568 001AD4C8 40 80 00 14 */ bge lbl_801B057C +/* 801B056C 001AD4CC 48 00 01 D0 */ b lbl_801B073C +lbl_801B0570: +/* 801B0570 001AD4D0 2C 00 00 03 */ cmpwi r0, 3 +/* 801B0574 001AD4D4 40 80 01 C8 */ bge lbl_801B073C +/* 801B0578 001AD4D8 48 00 00 D8 */ b lbl_801B0650 +lbl_801B057C: +/* 801B057C 001AD4DC 80 DF 04 50 */ lwz r6, 0x450(r31) +/* 801B0580 001AD4E0 80 06 02 B8 */ lwz r0, 0x2b8(r6) +/* 801B0584 001AD4E4 2C 00 00 12 */ cmpwi r0, 0x12 +/* 801B0588 001AD4E8 40 82 00 20 */ bne lbl_801B05A8 +/* 801B058C 001AD4EC 38 00 00 02 */ li r0, 2 +/* 801B0590 001AD4F0 38 60 00 01 */ li r3, 1 +/* 801B0594 001AD4F4 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801B0598 001AD4F8 88 1F 08 E4 */ lbz r0, 0x8e4(r31) +/* 801B059C 001AD4FC 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 801B05A0 001AD500 98 1F 08 E4 */ stb r0, 0x8e4(r31) +/* 801B05A4 001AD504 48 00 01 98 */ b lbl_801B073C +lbl_801B05A8: +/* 801B05A8 001AD508 81 04 08 4C */ lwz r8, 0x84c(r4) +/* 801B05AC 001AD50C 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B05B0 001AD510 38 83 AA 68 */ addi r4, r3, lbl_803DAA68@l +/* 801B05B4 001AD514 3C 60 80 3E */ lis r3, lbl_803DA9CC@ha +/* 801B05B8 001AD518 C0 48 00 60 */ lfs f2, 0x60(r8) +/* 801B05BC 001AD51C 38 E0 00 06 */ li r7, 6 +/* 801B05C0 001AD520 C0 28 00 50 */ lfs f1, 0x50(r8) +/* 801B05C4 001AD524 38 A0 00 08 */ li r5, 8 +/* 801B05C8 001AD528 C0 08 00 40 */ lfs f0, 0x40(r8) +/* 801B05CC 001AD52C 38 00 00 00 */ li r0, 0 +/* 801B05D0 001AD530 3B E6 00 04 */ addi r31, r6, 4 +/* 801B05D4 001AD534 90 81 00 10 */ stw r4, 0x10(r1) +/* 801B05D8 001AD538 38 C3 A9 CC */ addi r6, r3, lbl_803DA9CC@l +/* 801B05DC 001AD53C 38 80 00 06 */ li r4, 6 +/* 801B05E0 001AD540 90 E1 00 14 */ stw r7, 0x14(r1) +/* 801B05E4 001AD544 7F E3 FB 78 */ mr r3, r31 +/* 801B05E8 001AD548 90 C1 00 10 */ stw r6, 0x10(r1) +/* 801B05EC 001AD54C 90 A1 00 18 */ stw r5, 0x18(r1) +/* 801B05F0 001AD550 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801B05F4 001AD554 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 801B05F8 001AD558 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 801B05FC 001AD55C 98 01 00 28 */ stb r0, 0x28(r1) +/* 801B0600 001AD560 4B F8 0E 39 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801B0604 001AD564 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B0608 001AD568 3C 60 80 3E */ lis r3, lbl_803DA9CC@ha +/* 801B060C 001AD56C 38 83 A9 CC */ addi r4, r3, lbl_803DA9CC@l +/* 801B0610 001AD570 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B0614 001AD574 90 1F 01 2C */ stw r0, 0x12c(r31) +/* 801B0618 001AD578 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801B061C 001AD57C 80 61 00 18 */ lwz r3, 0x18(r1) +/* 801B0620 001AD580 80 A1 00 1C */ lwz r5, 0x1c(r1) +/* 801B0624 001AD584 90 7F 01 30 */ stw r3, 0x130(r31) +/* 801B0628 001AD588 80 61 00 20 */ lwz r3, 0x20(r1) +/* 801B062C 001AD58C 90 BF 01 34 */ stw r5, 0x134(r31) +/* 801B0630 001AD590 80 A1 00 24 */ lwz r5, 0x24(r1) +/* 801B0634 001AD594 90 7F 01 38 */ stw r3, 0x138(r31) +/* 801B0638 001AD598 88 61 00 28 */ lbz r3, 0x28(r1) +/* 801B063C 001AD59C 90 BF 01 3C */ stw r5, 0x13c(r31) +/* 801B0640 001AD5A0 90 81 00 10 */ stw r4, 0x10(r1) +/* 801B0644 001AD5A4 98 7F 01 40 */ stb r3, 0x140(r31) +/* 801B0648 001AD5A8 90 01 00 10 */ stw r0, 0x10(r1) +/* 801B064C 001AD5AC 48 00 00 F0 */ b lbl_801B073C +lbl_801B0650: +/* 801B0650 001AD5B0 80 BF 04 50 */ lwz r5, 0x450(r31) +/* 801B0654 001AD5B4 80 05 02 B8 */ lwz r0, 0x2b8(r5) +/* 801B0658 001AD5B8 2C 00 00 12 */ cmpwi r0, 0x12 +/* 801B065C 001AD5BC 41 82 00 10 */ beq lbl_801B066C +/* 801B0660 001AD5C0 38 00 00 04 */ li r0, 4 +/* 801B0664 001AD5C4 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801B0668 001AD5C8 48 00 00 D4 */ b lbl_801B073C +lbl_801B066C: +/* 801B066C 001AD5CC 80 64 08 4C */ lwz r3, 0x84c(r4) +/* 801B0670 001AD5D0 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801B0674 001AD5D4 C0 23 00 40 */ lfs f1, 0x40(r3) +/* 801B0678 001AD5D8 C0 83 00 50 */ lfs f4, 0x50(r3) +/* 801B067C 001AD5DC C0 7F 00 50 */ lfs f3, 0x50(r31) +/* 801B0680 001AD5E0 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801B0684 001AD5E4 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 801B0688 001AD5E8 C0 3F 00 60 */ lfs f1, 0x60(r31) +/* 801B068C 001AD5EC EC 64 18 28 */ fsubs f3, f4, f3 +/* 801B0690 001AD5F0 D0 05 00 1C */ stfs f0, 0x1c(r5) +/* 801B0694 001AD5F4 EC 02 08 28 */ fsubs f0, f2, f1 +/* 801B0698 001AD5F8 D0 65 00 20 */ stfs f3, 0x20(r5) +/* 801B069C 001AD5FC D0 05 00 24 */ stfs f0, 0x24(r5) +/* 801B06A0 001AD600 48 00 00 9C */ b lbl_801B073C +lbl_801B06A4: +/* 801B06A4 001AD604 80 7F 07 88 */ lwz r3, 0x788(r31) +/* 801B06A8 001AD608 3C 00 43 30 */ lis r0, 0x4330 +/* 801B06AC 001AD60C 90 01 00 30 */ stw r0, 0x30(r1) +/* 801B06B0 001AD610 6C 60 80 00 */ xoris r0, r3, 0x8000 +/* 801B06B4 001AD614 C8 22 A9 00 */ lfd f1, lbl_805AC620@sda21(r2) +/* 801B06B8 001AD618 90 01 00 34 */ stw r0, 0x34(r1) +/* 801B06BC 001AD61C C0 42 A8 DC */ lfs f2, lbl_805AC5FC@sda21(r2) +/* 801B06C0 001AD620 C8 01 00 30 */ lfd f0, 0x30(r1) +/* 801B06C4 001AD624 80 64 09 00 */ lwz r3, 0x900(r4) +/* 801B06C8 001AD628 EC 00 08 28 */ fsubs f0, f0, f1 +/* 801B06CC 001AD62C EF E2 00 2A */ fadds f31, f2, f0 +/* 801B06D0 001AD630 48 16 1E 0D */ bl Float__9CRandom16Fv +/* 801B06D4 001AD634 C0 5F 03 08 */ lfs f2, 0x308(r31) +/* 801B06D8 001AD638 38 80 00 00 */ li r4, 0 +/* 801B06DC 001AD63C C0 1F 03 04 */ lfs f0, 0x304(r31) +/* 801B06E0 001AD640 38 00 FF FF */ li r0, -1 +/* 801B06E4 001AD644 EC 02 00 7A */ fmadds f0, f2, f1, f0 +/* 801B06E8 001AD648 EC 00 F8 24 */ fdivs f0, f0, f31 +/* 801B06EC 001AD64C D0 1F 07 C0 */ stfs f0, 0x7c0(r31) +/* 801B06F0 001AD650 88 7F 08 E4 */ lbz r3, 0x8e4(r31) +/* 801B06F4 001AD654 50 83 0F BC */ rlwimi r3, r4, 1, 0x1e, 0x1e +/* 801B06F8 001AD658 98 7F 08 E4 */ stb r3, 0x8e4(r31) +/* 801B06FC 001AD65C 90 1F 07 B4 */ stw r0, 0x7b4(r31) +/* 801B0700 001AD660 80 9F 04 50 */ lwz r4, 0x450(r31) +/* 801B0704 001AD664 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 801B0708 001AD668 2C 00 00 12 */ cmpwi r0, 0x12 +/* 801B070C 001AD66C 40 82 00 30 */ bne lbl_801B073C +/* 801B0710 001AD670 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B0714 001AD674 38 00 00 0C */ li r0, 0xc +/* 801B0718 001AD678 38 A3 AA 68 */ addi r5, r3, lbl_803DAA68@l +/* 801B071C 001AD67C 90 01 00 0C */ stw r0, 0xc(r1) +/* 801B0720 001AD680 38 64 00 04 */ addi r3, r4, 4 +/* 801B0724 001AD684 38 81 00 08 */ addi r4, r1, 8 +/* 801B0728 001AD688 90 A1 00 08 */ stw r5, 8(r1) +/* 801B072C 001AD68C 4B F8 10 8D */ bl DeliverCmd__16CBodyStateCmdMgrFRC13CBodyStateCmd +/* 801B0730 001AD690 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B0734 001AD694 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801B0738 001AD698 90 01 00 08 */ stw r0, 8(r1) +lbl_801B073C: +/* 801B073C 001AD69C E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 801B0740 001AD6A0 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801B0744 001AD6A4 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 801B0748 001AD6A8 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801B074C 001AD6AC 7C 08 03 A6 */ mtlr r0 +/* 801B0750 001AD6B0 38 21 00 50 */ addi r1, r1, 0x50 +/* 801B0754 001AD6B4 4E 80 00 20 */ blr + +.global Attack__9CFlaahgraFR13CStateManager9EStateMsgf +Attack__9CFlaahgraFR13CStateManager9EStateMsgf: +/* 801B0758 001AD6B8 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 801B075C 001AD6BC 7C 08 02 A6 */ mflr r0 +/* 801B0760 001AD6C0 90 01 00 84 */ stw r0, 0x84(r1) +/* 801B0764 001AD6C4 DB E1 00 70 */ stfd f31, 0x70(r1) +/* 801B0768 001AD6C8 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 +/* 801B076C 001AD6CC 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 801B0770 001AD6D0 93 C1 00 68 */ stw r30, 0x68(r1) +/* 801B0774 001AD6D4 2C 05 00 01 */ cmpwi r5, 1 +/* 801B0778 001AD6D8 7C 7E 1B 78 */ mr r30, r3 +/* 801B077C 001AD6DC 7C 9F 23 78 */ mr r31, r4 +/* 801B0780 001AD6E0 41 82 00 48 */ beq lbl_801B07C8 +/* 801B0784 001AD6E4 40 80 00 10 */ bge lbl_801B0794 +/* 801B0788 001AD6E8 2C 05 00 00 */ cmpwi r5, 0 +/* 801B078C 001AD6EC 40 80 00 14 */ bge lbl_801B07A0 +/* 801B0790 001AD6F0 48 00 03 F8 */ b lbl_801B0B88 +lbl_801B0794: +/* 801B0794 001AD6F4 2C 05 00 03 */ cmpwi r5, 3 +/* 801B0798 001AD6F8 40 80 03 F0 */ bge lbl_801B0B88 +/* 801B079C 001AD6FC 48 00 03 2C */ b lbl_801B0AC8 +lbl_801B07A0: +/* 801B07A0 001AD700 38 00 00 00 */ li r0, 0 +/* 801B07A4 001AD704 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801B07A8 001AD708 4B FF E0 81 */ bl sub_801ae828 +/* 801B07AC 001AD70C 90 7E 07 A8 */ stw r3, 0x7a8(r30) +/* 801B07B0 001AD710 7F C3 F3 78 */ mr r3, r30 +/* 801B07B4 001AD714 7F E5 FB 78 */ mr r5, r31 +/* 801B07B8 001AD718 38 80 00 0A */ li r4, 0xa +/* 801B07BC 001AD71C 38 C0 FF FF */ li r6, -1 +/* 801B07C0 001AD720 4B EA 09 01 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 801B07C4 001AD724 48 00 03 C4 */ b lbl_801B0B88 +lbl_801B07C8: +/* 801B07C8 001AD728 80 1E 05 68 */ lwz r0, 0x568(r30) +/* 801B07CC 001AD72C 2C 00 00 01 */ cmpwi r0, 1 +/* 801B07D0 001AD730 41 82 01 88 */ beq lbl_801B0958 +/* 801B07D4 001AD734 40 80 00 10 */ bge lbl_801B07E4 +/* 801B07D8 001AD738 2C 00 00 00 */ cmpwi r0, 0 +/* 801B07DC 001AD73C 40 80 00 14 */ bge lbl_801B07F0 +/* 801B07E0 001AD740 48 00 03 A8 */ b lbl_801B0B88 +lbl_801B07E4: +/* 801B07E4 001AD744 2C 00 00 03 */ cmpwi r0, 3 +/* 801B07E8 001AD748 40 80 03 A0 */ bge lbl_801B0B88 +/* 801B07EC 001AD74C 48 00 02 A4 */ b lbl_801B0A90 +lbl_801B07F0: +/* 801B07F0 001AD750 80 FE 04 50 */ lwz r7, 0x450(r30) +/* 801B07F4 001AD754 80 07 02 B8 */ lwz r0, 0x2b8(r7) +/* 801B07F8 001AD758 2C 00 00 07 */ cmpwi r0, 7 +/* 801B07FC 001AD75C 40 82 00 A4 */ bne lbl_801B08A0 +/* 801B0800 001AD760 80 1E 07 A8 */ lwz r0, 0x7a8(r30) +/* 801B0804 001AD764 3C 60 80 3D */ lis r3, lbl_803D157C@ha +/* 801B0808 001AD768 38 63 15 7C */ addi r3, r3, lbl_803D157C@l +/* 801B080C 001AD76C 38 80 00 02 */ li r4, 2 +/* 801B0810 001AD770 54 00 10 3A */ slwi r0, r0, 2 +/* 801B0814 001AD774 7C 03 00 2E */ lwzx r0, r3, r0 +/* 801B0818 001AD778 2C 00 FF FF */ cmpwi r0, -1 +/* 801B081C 001AD77C 41 82 00 08 */ beq lbl_801B0824 +/* 801B0820 001AD780 38 80 00 01 */ li r4, 1 +lbl_801B0824: +/* 801B0824 001AD784 90 9E 05 68 */ stw r4, 0x568(r30) +/* 801B0828 001AD788 7F C3 F3 78 */ mr r3, r30 +/* 801B082C 001AD78C 4B FF DE 45 */ bl sub_801ae670 +/* 801B0830 001AD790 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B0834 001AD794 41 82 00 34 */ beq lbl_801B0868 +/* 801B0838 001AD798 3C 80 80 57 */ lis r4, lbl_80572024@ha +/* 801B083C 001AD79C 7F C3 F3 78 */ mr r3, r30 +/* 801B0840 001AD7A0 38 C4 20 24 */ addi r6, r4, lbl_80572024@l +/* 801B0844 001AD7A4 38 BE 07 9C */ addi r5, r30, 0x79c +/* 801B0848 001AD7A8 7F E4 FB 78 */ mr r4, r31 +/* 801B084C 001AD7AC 4B FF DB 3D */ bl sub_801ae388 +/* 801B0850 001AD7B0 3C 80 80 57 */ lis r4, lbl_80572024@ha +/* 801B0854 001AD7B4 7F C3 F3 78 */ mr r3, r30 +/* 801B0858 001AD7B8 38 C4 20 24 */ addi r6, r4, lbl_80572024@l +/* 801B085C 001AD7BC 38 BE 07 A0 */ addi r5, r30, 0x7a0 +/* 801B0860 001AD7C0 7F E4 FB 78 */ mr r4, r31 +/* 801B0864 001AD7C4 4B FF DB 25 */ bl sub_801ae388 +lbl_801B0868: +/* 801B0868 001AD7C8 7F C4 F3 78 */ mr r4, r30 +/* 801B086C 001AD7CC 7F E5 FB 78 */ mr r5, r31 +/* 801B0870 001AD7D0 38 61 00 10 */ addi r3, r1, 0x10 +/* 801B0874 001AD7D4 4B FF DE E1 */ bl sub_801ae754 +/* 801B0878 001AD7D8 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 801B087C 001AD7DC D0 1E 07 8C */ stfs f0, 0x78c(r30) +/* 801B0880 001AD7E0 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 801B0884 001AD7E4 D0 1E 07 90 */ stfs f0, 0x790(r30) +/* 801B0888 001AD7E8 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 801B088C 001AD7EC D0 1E 07 94 */ stfs f0, 0x794(r30) +/* 801B0890 001AD7F0 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801B0894 001AD7F4 80 03 02 F8 */ lwz r0, 0x2f8(r3) +/* 801B0898 001AD7F8 90 1E 07 98 */ stw r0, 0x798(r30) +/* 801B089C 001AD7FC 48 00 02 EC */ b lbl_801B0B88 +lbl_801B08A0: +/* 801B08A0 001AD800 80 1E 07 A8 */ lwz r0, 0x7a8(r30) +/* 801B08A4 001AD804 3C A0 80 3D */ lis r5, lbl_803D1568@ha +/* 801B08A8 001AD808 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801B08AC 001AD80C C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) +/* 801B08B0 001AD810 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 801B08B4 001AD814 38 C5 15 68 */ addi r6, r5, lbl_803D1568@l +/* 801B08B8 001AD818 38 A4 AA 68 */ addi r5, r4, lbl_803DAA68@l +/* 801B08BC 001AD81C 54 00 10 3A */ slwi r0, r0, 2 +/* 801B08C0 001AD820 7D 06 00 2E */ lwzx r8, r6, r0 +/* 801B08C4 001AD824 38 C0 00 05 */ li r6, 5 +/* 801B08C8 001AD828 C0 23 00 04 */ lfs f1, 4(r3) +/* 801B08CC 001AD82C 38 00 00 00 */ li r0, 0 +/* 801B08D0 001AD830 C0 03 00 08 */ lfs f0, 8(r3) +/* 801B08D4 001AD834 3B C7 00 04 */ addi r30, r7, 4 +/* 801B08D8 001AD838 3C 80 80 3E */ lis r4, lbl_803DA9D8@ha +/* 801B08DC 001AD83C 90 A1 00 38 */ stw r5, 0x38(r1) +/* 801B08E0 001AD840 38 A4 A9 D8 */ addi r5, r4, lbl_803DA9D8@l +/* 801B08E4 001AD844 7F C3 F3 78 */ mr r3, r30 +/* 801B08E8 001AD848 90 C1 00 3C */ stw r6, 0x3c(r1) +/* 801B08EC 001AD84C 38 80 00 05 */ li r4, 5 +/* 801B08F0 001AD850 90 A1 00 38 */ stw r5, 0x38(r1) +/* 801B08F4 001AD854 91 01 00 40 */ stw r8, 0x40(r1) +/* 801B08F8 001AD858 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 801B08FC 001AD85C D0 21 00 48 */ stfs f1, 0x48(r1) +/* 801B0900 001AD860 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 801B0904 001AD864 98 01 00 50 */ stb r0, 0x50(r1) +/* 801B0908 001AD868 4B F8 0B 31 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801B090C 001AD86C 80 01 00 3C */ lwz r0, 0x3c(r1) +/* 801B0910 001AD870 3C 60 80 3E */ lis r3, lbl_803DA9D8@ha +/* 801B0914 001AD874 38 83 A9 D8 */ addi r4, r3, lbl_803DA9D8@l +/* 801B0918 001AD878 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B091C 001AD87C 90 1E 01 10 */ stw r0, 0x110(r30) +/* 801B0920 001AD880 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801B0924 001AD884 80 61 00 40 */ lwz r3, 0x40(r1) +/* 801B0928 001AD888 80 A1 00 44 */ lwz r5, 0x44(r1) +/* 801B092C 001AD88C 90 7E 01 14 */ stw r3, 0x114(r30) +/* 801B0930 001AD890 80 61 00 48 */ lwz r3, 0x48(r1) +/* 801B0934 001AD894 90 BE 01 18 */ stw r5, 0x118(r30) +/* 801B0938 001AD898 80 A1 00 4C */ lwz r5, 0x4c(r1) +/* 801B093C 001AD89C 90 7E 01 1C */ stw r3, 0x11c(r30) +/* 801B0940 001AD8A0 88 61 00 50 */ lbz r3, 0x50(r1) +/* 801B0944 001AD8A4 90 BE 01 20 */ stw r5, 0x120(r30) +/* 801B0948 001AD8A8 90 81 00 38 */ stw r4, 0x38(r1) +/* 801B094C 001AD8AC 98 7E 01 24 */ stb r3, 0x124(r30) +/* 801B0950 001AD8B0 90 01 00 38 */ stw r0, 0x38(r1) +/* 801B0954 001AD8B4 48 00 02 34 */ b lbl_801B0B88 +lbl_801B0958: +/* 801B0958 001AD8B8 80 DE 04 50 */ lwz r6, 0x450(r30) +/* 801B095C 001AD8BC 80 06 02 B8 */ lwz r0, 0x2b8(r6) +/* 801B0960 001AD8C0 2C 00 00 07 */ cmpwi r0, 7 +/* 801B0964 001AD8C4 41 82 00 10 */ beq lbl_801B0974 +/* 801B0968 001AD8C8 38 00 00 04 */ li r0, 4 +/* 801B096C 001AD8CC 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801B0970 001AD8D0 48 00 02 18 */ b lbl_801B0B88 +lbl_801B0974: +/* 801B0974 001AD8D4 80 BE 07 98 */ lwz r5, 0x798(r30) +/* 801B0978 001AD8D8 80 06 02 F8 */ lwz r0, 0x2f8(r6) +/* 801B097C 001AD8DC 7C 05 00 00 */ cmpw r5, r0 +/* 801B0980 001AD8E0 41 82 00 10 */ beq lbl_801B0990 +/* 801B0984 001AD8E4 38 00 00 02 */ li r0, 2 +/* 801B0988 001AD8E8 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801B098C 001AD8EC 48 00 01 FC */ b lbl_801B0B88 +lbl_801B0990: +/* 801B0990 001AD8F0 C0 1E 07 8C */ lfs f0, 0x78c(r30) +/* 801B0994 001AD8F4 C0 22 A8 BC */ lfs f1, lbl_805AC5DC@sda21(r2) +/* 801B0998 001AD8F8 D0 06 00 1C */ stfs f0, 0x1c(r6) +/* 801B099C 001AD8FC C0 1E 07 90 */ lfs f0, 0x790(r30) +/* 801B09A0 001AD900 D0 06 00 20 */ stfs f0, 0x20(r6) +/* 801B09A4 001AD904 C0 1E 07 94 */ lfs f0, 0x794(r30) +/* 801B09A8 001AD908 D0 06 00 24 */ stfs f0, 0x24(r6) +/* 801B09AC 001AD90C 81 83 00 00 */ lwz r12, 0(r3) +/* 801B09B0 001AD910 81 8C 01 DC */ lwz r12, 0x1dc(r12) +/* 801B09B4 001AD914 7D 89 03 A6 */ mtctr r12 +/* 801B09B8 001AD918 4E 80 04 21 */ bctrl +/* 801B09BC 001AD91C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B09C0 001AD920 41 82 01 C8 */ beq lbl_801B0B88 +/* 801B09C4 001AD924 80 1E 07 A8 */ lwz r0, 0x7a8(r30) +/* 801B09C8 001AD928 3C 60 80 3D */ lis r3, lbl_803D157C@ha +/* 801B09CC 001AD92C 3C A0 80 3E */ lis r5, lbl_803DAA68@ha +/* 801B09D0 001AD930 3C 80 80 3D */ lis r4, lbl_803D1568@ha +/* 801B09D4 001AD934 54 00 10 3A */ slwi r0, r0, 2 +/* 801B09D8 001AD938 38 63 15 7C */ addi r3, r3, lbl_803D157C@l +/* 801B09DC 001AD93C 7C 03 00 2E */ lwzx r0, r3, r0 +/* 801B09E0 001AD940 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801B09E4 001AD944 C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) +/* 801B09E8 001AD948 39 05 AA 68 */ addi r8, r5, lbl_803DAA68@l +/* 801B09EC 001AD94C 54 00 10 3A */ slwi r0, r0, 2 +/* 801B09F0 001AD950 38 84 15 68 */ addi r4, r4, lbl_803D1568@l +/* 801B09F4 001AD954 7C A4 00 2E */ lwzx r5, r4, r0 +/* 801B09F8 001AD958 3C 80 80 3E */ lis r4, lbl_803DA9D8@ha +/* 801B09FC 001AD95C C0 23 00 04 */ lfs f1, 4(r3) +/* 801B0A00 001AD960 38 E0 00 05 */ li r7, 5 +/* 801B0A04 001AD964 C0 03 00 08 */ lfs f0, 8(r3) +/* 801B0A08 001AD968 38 00 00 00 */ li r0, 0 +/* 801B0A0C 001AD96C 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801B0A10 001AD970 38 C4 A9 D8 */ addi r6, r4, lbl_803DA9D8@l +/* 801B0A14 001AD974 91 01 00 1C */ stw r8, 0x1c(r1) +/* 801B0A18 001AD978 38 80 00 05 */ li r4, 5 +/* 801B0A1C 001AD97C 3B C3 00 04 */ addi r30, r3, 4 +/* 801B0A20 001AD980 90 E1 00 20 */ stw r7, 0x20(r1) +/* 801B0A24 001AD984 7F C3 F3 78 */ mr r3, r30 +/* 801B0A28 001AD988 90 C1 00 1C */ stw r6, 0x1c(r1) +/* 801B0A2C 001AD98C 90 A1 00 24 */ stw r5, 0x24(r1) +/* 801B0A30 001AD990 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 801B0A34 001AD994 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 801B0A38 001AD998 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801B0A3C 001AD99C 98 01 00 34 */ stb r0, 0x34(r1) +/* 801B0A40 001AD9A0 4B F8 09 F9 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801B0A44 001AD9A4 80 01 00 20 */ lwz r0, 0x20(r1) +/* 801B0A48 001AD9A8 3C 60 80 3E */ lis r3, lbl_803DA9D8@ha +/* 801B0A4C 001AD9AC 38 83 A9 D8 */ addi r4, r3, lbl_803DA9D8@l +/* 801B0A50 001AD9B0 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B0A54 001AD9B4 90 1E 01 10 */ stw r0, 0x110(r30) +/* 801B0A58 001AD9B8 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801B0A5C 001AD9BC 80 61 00 24 */ lwz r3, 0x24(r1) +/* 801B0A60 001AD9C0 80 A1 00 28 */ lwz r5, 0x28(r1) +/* 801B0A64 001AD9C4 90 7E 01 14 */ stw r3, 0x114(r30) +/* 801B0A68 001AD9C8 80 61 00 2C */ lwz r3, 0x2c(r1) +/* 801B0A6C 001AD9CC 90 BE 01 18 */ stw r5, 0x118(r30) +/* 801B0A70 001AD9D0 80 A1 00 30 */ lwz r5, 0x30(r1) +/* 801B0A74 001AD9D4 90 7E 01 1C */ stw r3, 0x11c(r30) +/* 801B0A78 001AD9D8 88 61 00 34 */ lbz r3, 0x34(r1) +/* 801B0A7C 001AD9DC 90 BE 01 20 */ stw r5, 0x120(r30) +/* 801B0A80 001AD9E0 90 81 00 1C */ stw r4, 0x1c(r1) +/* 801B0A84 001AD9E4 98 7E 01 24 */ stb r3, 0x124(r30) +/* 801B0A88 001AD9E8 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801B0A8C 001AD9EC 48 00 00 FC */ b lbl_801B0B88 +lbl_801B0A90: +/* 801B0A90 001AD9F0 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801B0A94 001AD9F4 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801B0A98 001AD9F8 2C 00 00 07 */ cmpwi r0, 7 +/* 801B0A9C 001AD9FC 41 82 00 10 */ beq lbl_801B0AAC +/* 801B0AA0 001ADA00 38 00 00 04 */ li r0, 4 +/* 801B0AA4 001ADA04 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801B0AA8 001ADA08 48 00 00 E0 */ b lbl_801B0B88 +lbl_801B0AAC: +/* 801B0AAC 001ADA0C C0 1E 07 8C */ lfs f0, 0x78c(r30) +/* 801B0AB0 001ADA10 D0 03 00 1C */ stfs f0, 0x1c(r3) +/* 801B0AB4 001ADA14 C0 1E 07 90 */ lfs f0, 0x790(r30) +/* 801B0AB8 001ADA18 D0 03 00 20 */ stfs f0, 0x20(r3) +/* 801B0ABC 001ADA1C C0 1E 07 94 */ lfs f0, 0x794(r30) +/* 801B0AC0 001ADA20 D0 03 00 24 */ stfs f0, 0x24(r3) +/* 801B0AC4 001ADA24 48 00 00 C4 */ b lbl_801B0B88 +lbl_801B0AC8: +/* 801B0AC8 001ADA28 3C C0 80 5A */ lis r6, skZero3f@ha +/* 801B0ACC 001ADA2C 38 BE 07 9C */ addi r5, r30, 0x79c +/* 801B0AD0 001ADA30 38 C6 66 A0 */ addi r6, r6, skZero3f@l +/* 801B0AD4 001ADA34 4B FF D8 B5 */ bl sub_801ae388 +/* 801B0AD8 001ADA38 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801B0ADC 001ADA3C 7F C3 F3 78 */ mr r3, r30 +/* 801B0AE0 001ADA40 38 C4 66 A0 */ addi r6, r4, skZero3f@l +/* 801B0AE4 001ADA44 38 BE 07 A0 */ addi r5, r30, 0x7a0 +/* 801B0AE8 001ADA48 7F E4 FB 78 */ mr r4, r31 +/* 801B0AEC 001ADA4C 4B FF D8 9D */ bl sub_801ae388 +/* 801B0AF0 001ADA50 7F C3 F3 78 */ mr r3, r30 +/* 801B0AF4 001ADA54 4B FF DB 7D */ bl sub_801ae670 +/* 801B0AF8 001ADA58 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B0AFC 001ADA5C 41 82 00 48 */ beq lbl_801B0B44 +/* 801B0B00 001ADA60 80 7E 07 88 */ lwz r3, 0x788(r30) +/* 801B0B04 001ADA64 3C 00 43 30 */ lis r0, 0x4330 +/* 801B0B08 001ADA68 90 01 00 58 */ stw r0, 0x58(r1) +/* 801B0B0C 001ADA6C 6C 60 80 00 */ xoris r0, r3, 0x8000 +/* 801B0B10 001ADA70 C8 22 A9 00 */ lfd f1, lbl_805AC620@sda21(r2) +/* 801B0B14 001ADA74 90 01 00 5C */ stw r0, 0x5c(r1) +/* 801B0B18 001ADA78 C0 42 A8 DC */ lfs f2, lbl_805AC5FC@sda21(r2) +/* 801B0B1C 001ADA7C C8 01 00 58 */ lfd f0, 0x58(r1) +/* 801B0B20 001ADA80 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 801B0B24 001ADA84 EC 00 08 28 */ fsubs f0, f0, f1 +/* 801B0B28 001ADA88 EF E2 00 2A */ fadds f31, f2, f0 +/* 801B0B2C 001ADA8C 48 16 19 B1 */ bl Float__9CRandom16Fv +/* 801B0B30 001ADA90 C0 5E 03 08 */ lfs f2, 0x308(r30) +/* 801B0B34 001ADA94 C0 1E 03 04 */ lfs f0, 0x304(r30) +/* 801B0B38 001ADA98 EC 02 00 7A */ fmadds f0, f2, f1, f0 +/* 801B0B3C 001ADA9C EC 00 F8 24 */ fdivs f0, f0, f31 +/* 801B0B40 001ADAA0 D0 1E 07 C0 */ stfs f0, 0x7c0(r30) +lbl_801B0B44: +/* 801B0B44 001ADAA4 38 00 FF FF */ li r0, -1 +/* 801B0B48 001ADAA8 90 1E 07 A8 */ stw r0, 0x7a8(r30) +/* 801B0B4C 001ADAAC 80 9E 04 50 */ lwz r4, 0x450(r30) +/* 801B0B50 001ADAB0 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 801B0B54 001ADAB4 2C 00 00 07 */ cmpwi r0, 7 +/* 801B0B58 001ADAB8 40 82 00 30 */ bne lbl_801B0B88 +/* 801B0B5C 001ADABC 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B0B60 001ADAC0 38 00 00 0C */ li r0, 0xc +/* 801B0B64 001ADAC4 38 A3 AA 68 */ addi r5, r3, lbl_803DAA68@l +/* 801B0B68 001ADAC8 90 01 00 0C */ stw r0, 0xc(r1) +/* 801B0B6C 001ADACC 38 64 00 04 */ addi r3, r4, 4 +/* 801B0B70 001ADAD0 38 81 00 08 */ addi r4, r1, 8 +/* 801B0B74 001ADAD4 90 A1 00 08 */ stw r5, 8(r1) +/* 801B0B78 001ADAD8 4B F8 0C 41 */ bl DeliverCmd__16CBodyStateCmdMgrFRC13CBodyStateCmd +/* 801B0B7C 001ADADC 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B0B80 001ADAE0 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801B0B84 001ADAE4 90 01 00 08 */ stw r0, 8(r1) +lbl_801B0B88: +/* 801B0B88 001ADAE8 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 +/* 801B0B8C 001ADAEC 80 01 00 84 */ lwz r0, 0x84(r1) +/* 801B0B90 001ADAF0 CB E1 00 70 */ lfd f31, 0x70(r1) +/* 801B0B94 001ADAF4 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 801B0B98 001ADAF8 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 801B0B9C 001ADAFC 7C 08 03 A6 */ mtlr r0 +/* 801B0BA0 001ADB00 38 21 00 80 */ addi r1, r1, 0x80 +/* 801B0BA4 001ADB04 4E 80 00 20 */ blr + +.global TurnAround__9CFlaahgraFR13CStateManager9EStateMsgf +TurnAround__9CFlaahgraFR13CStateManager9EStateMsgf: +/* 801B0BA8 001ADB08 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801B0BAC 001ADB0C 7C 08 02 A6 */ mflr r0 +/* 801B0BB0 001ADB10 2C 05 00 01 */ cmpwi r5, 1 +/* 801B0BB4 001ADB14 90 01 00 64 */ stw r0, 0x64(r1) +/* 801B0BB8 001ADB18 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 801B0BBC 001ADB1C 7C 9F 23 78 */ mr r31, r4 +/* 801B0BC0 001ADB20 93 C1 00 58 */ stw r30, 0x58(r1) +/* 801B0BC4 001ADB24 7C 7E 1B 78 */ mr r30, r3 +/* 801B0BC8 001ADB28 41 82 00 5C */ beq lbl_801B0C24 +/* 801B0BCC 001ADB2C 40 80 00 10 */ bge lbl_801B0BDC +/* 801B0BD0 001ADB30 2C 05 00 00 */ cmpwi r5, 0 +/* 801B0BD4 001ADB34 40 80 00 14 */ bge lbl_801B0BE8 +/* 801B0BD8 001ADB38 48 00 01 4C */ b lbl_801B0D24 +lbl_801B0BDC: +/* 801B0BDC 001ADB3C 2C 05 00 03 */ cmpwi r5, 3 +/* 801B0BE0 001ADB40 40 80 01 44 */ bge lbl_801B0D24 +/* 801B0BE4 001ADB44 48 00 01 34 */ b lbl_801B0D18 +lbl_801B0BE8: +/* 801B0BE8 001ADB48 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 801B0BEC 001ADB4C 38 81 00 0C */ addi r4, r1, 0xc +/* 801B0BF0 001ADB50 A0 03 00 08 */ lhz r0, 8(r3) +/* 801B0BF4 001ADB54 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801B0BF8 001ADB58 B0 01 00 08 */ sth r0, 8(r1) +/* 801B0BFC 001ADB5C 80 7E 06 CC */ lwz r3, 0x6cc(r30) +/* 801B0C00 001ADB60 4B FC 46 19 */ bl SetTarget__13CBoneTrackingF9TUniqueId +/* 801B0C04 001ADB64 80 7E 06 CC */ lwz r3, 0x6cc(r30) +/* 801B0C08 001ADB68 38 80 00 01 */ li r4, 1 +/* 801B0C0C 001ADB6C 4B FC 46 19 */ bl SetActive__13CBoneTrackingFb +/* 801B0C10 001ADB70 88 1E 08 E5 */ lbz r0, 0x8e5(r30) +/* 801B0C14 001ADB74 38 60 00 00 */ li r3, 0 +/* 801B0C18 001ADB78 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801B0C1C 001ADB7C 98 1E 08 E5 */ stb r0, 0x8e5(r30) +/* 801B0C20 001ADB80 48 00 01 04 */ b lbl_801B0D24 +lbl_801B0C24: +/* 801B0C24 001ADB84 81 83 00 00 */ lwz r12, 0(r3) +/* 801B0C28 001ADB88 C0 22 A8 BC */ lfs f1, lbl_805AC5DC@sda21(r2) +/* 801B0C2C 001ADB8C 81 8C 01 E8 */ lwz r12, 0x1e8(r12) +/* 801B0C30 001ADB90 7D 89 03 A6 */ mtctr r12 +/* 801B0C34 001ADB94 4E 80 04 21 */ bctrl +/* 801B0C38 001ADB98 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B0C3C 001ADB9C 41 82 00 E8 */ beq lbl_801B0D24 +/* 801B0C40 001ADBA0 80 9E 00 64 */ lwz r4, 0x64(r30) +/* 801B0C44 001ADBA4 7F E5 FB 78 */ mr r5, r31 +/* 801B0C48 001ADBA8 C0 22 A8 BC */ lfs f1, lbl_805AC5DC@sda21(r2) +/* 801B0C4C 001ADBAC 38 61 00 1C */ addi r3, r1, 0x1c +/* 801B0C50 001ADBB0 80 C4 00 10 */ lwz r6, 0x10(r4) +/* 801B0C54 001ADBB4 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 801B0C58 001ADBB8 C0 46 02 00 */ lfs f2, 0x200(r6) +/* 801B0C5C 001ADBBC FC 02 08 40 */ fcmpo cr0, f2, f1 +/* 801B0C60 001ADBC0 40 81 00 0C */ ble lbl_801B0C6C +/* 801B0C64 001ADBC4 C0 02 A9 08 */ lfs f0, lbl_805AC628@sda21(r2) +/* 801B0C68 001ADBC8 EC 20 10 24 */ fdivs f1, f0, f2 +lbl_801B0C6C: +/* 801B0C6C 001ADBCC 81 84 00 00 */ lwz r12, 0(r4) +/* 801B0C70 001ADBD0 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801B0C74 001ADBD4 7D 89 03 A6 */ mtctr r12 +/* 801B0C78 001ADBD8 4E 80 04 21 */ bctrl +/* 801B0C7C 001ADBDC C0 21 00 20 */ lfs f1, 0x20(r1) +/* 801B0C80 001ADBE0 38 61 00 28 */ addi r3, r1, 0x28 +/* 801B0C84 001ADBE4 C0 1E 00 50 */ lfs f0, 0x50(r30) +/* 801B0C88 001ADBE8 C0 61 00 24 */ lfs f3, 0x24(r1) +/* 801B0C8C 001ADBEC C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 801B0C90 001ADBF0 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801B0C94 001ADBF4 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801B0C98 001ADBF8 C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 801B0C9C 001ADBFC EC 43 10 28 */ fsubs f2, f3, f2 +/* 801B0CA0 001ADC00 D0 81 00 2C */ stfs f4, 0x2c(r1) +/* 801B0CA4 001ADC04 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801B0CA8 001ADC08 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 801B0CAC 001ADC0C D0 01 00 28 */ stfs f0, 0x28(r1) +/* 801B0CB0 001ADC10 48 16 3A 49 */ bl CanBeNormalized__9CVector3fCFv +/* 801B0CB4 001ADC14 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B0CB8 001ADC18 41 82 00 6C */ beq lbl_801B0D24 +/* 801B0CBC 001ADC1C 38 61 00 10 */ addi r3, r1, 0x10 +/* 801B0CC0 001ADC20 38 81 00 28 */ addi r4, r1, 0x28 +/* 801B0CC4 001ADC24 48 16 3B 8D */ bl AsNormalized__9CVector3fCFv +/* 801B0CC8 001ADC28 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801B0CCC 001ADC2C C4 C3 66 A0 */ lfsu f6, skZero3f@l(r3) +/* 801B0CD0 001ADC30 C0 61 00 10 */ lfs f3, 0x10(r1) +/* 801B0CD4 001ADC34 38 81 00 34 */ addi r4, r1, 0x34 +/* 801B0CD8 001ADC38 C0 41 00 14 */ lfs f2, 0x14(r1) +/* 801B0CDC 001ADC3C C0 A3 00 04 */ lfs f5, 4(r3) +/* 801B0CE0 001ADC40 C0 83 00 08 */ lfs f4, 8(r3) +/* 801B0CE4 001ADC44 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 801B0CE8 001ADC48 C0 02 A8 DC */ lfs f0, lbl_805AC5FC@sda21(r2) +/* 801B0CEC 001ADC4C D0 C1 00 34 */ stfs f6, 0x34(r1) +/* 801B0CF0 001ADC50 D0 A1 00 38 */ stfs f5, 0x38(r1) +/* 801B0CF4 001ADC54 D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 801B0CF8 001ADC58 D0 61 00 40 */ stfs f3, 0x40(r1) +/* 801B0CFC 001ADC5C D0 41 00 44 */ stfs f2, 0x44(r1) +/* 801B0D00 001ADC60 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 801B0D04 001ADC64 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 801B0D08 001ADC68 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801B0D0C 001ADC6C 38 63 00 04 */ addi r3, r3, 4 +/* 801B0D10 001ADC70 4B F8 0A 09 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 801B0D14 001ADC74 48 00 00 10 */ b lbl_801B0D24 +lbl_801B0D18: +/* 801B0D18 001ADC78 80 7E 06 CC */ lwz r3, 0x6cc(r30) +/* 801B0D1C 001ADC7C 38 80 00 00 */ li r4, 0 +/* 801B0D20 001ADC80 4B FC 45 05 */ bl SetActive__13CBoneTrackingFb +lbl_801B0D24: +/* 801B0D24 001ADC84 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801B0D28 001ADC88 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 801B0D2C 001ADC8C 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 801B0D30 001ADC90 7C 08 03 A6 */ mtlr r0 +/* 801B0D34 001ADC94 38 21 00 60 */ addi r1, r1, 0x60 +/* 801B0D38 001ADC98 4E 80 00 20 */ blr + +.global Suck__9CFlaahgraFR13CStateManager9EStateMsgf +Suck__9CFlaahgraFR13CStateManager9EStateMsgf: +/* 801B0D3C 001ADC9C 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801B0D40 001ADCA0 7C 08 02 A6 */ mflr r0 +/* 801B0D44 001ADCA4 2C 05 00 01 */ cmpwi r5, 1 +/* 801B0D48 001ADCA8 90 01 00 44 */ stw r0, 0x44(r1) +/* 801B0D4C 001ADCAC 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801B0D50 001ADCB0 7C 9F 23 78 */ mr r31, r4 +/* 801B0D54 001ADCB4 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801B0D58 001ADCB8 7C 7E 1B 78 */ mr r30, r3 +/* 801B0D5C 001ADCBC 41 82 01 08 */ beq lbl_801B0E64 +/* 801B0D60 001ADCC0 40 80 00 10 */ bge lbl_801B0D70 +/* 801B0D64 001ADCC4 2C 05 00 00 */ cmpwi r5, 0 +/* 801B0D68 001ADCC8 40 80 00 14 */ bge lbl_801B0D7C +/* 801B0D6C 001ADCCC 48 00 02 34 */ b lbl_801B0FA0 +lbl_801B0D70: +/* 801B0D70 001ADCD0 2C 05 00 03 */ cmpwi r5, 3 +/* 801B0D74 001ADCD4 40 80 02 2C */ bge lbl_801B0FA0 +/* 801B0D78 001ADCD8 48 00 01 F4 */ b lbl_801B0F6C +lbl_801B0D7C: +/* 801B0D7C 001ADCDC 39 60 00 00 */ li r11, 0 +/* 801B0D80 001ADCE0 80 A1 00 30 */ lwz r5, 0x30(r1) +/* 801B0D84 001ADCE4 91 7E 05 68 */ stw r11, 0x568(r30) +/* 801B0D88 001ADCE8 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 801B0D8C 001ADCEC 39 44 AA 68 */ addi r10, r4, lbl_803DAA68@l +/* 801B0D90 001ADCF0 51 65 F8 00 */ rlwimi r5, r11, 0x1f, 0, 0 +/* 801B0D94 001ADCF4 88 1E 08 E4 */ lbz r0, 0x8e4(r30) +/* 801B0D98 001ADCF8 51 60 2E B4 */ rlwimi r0, r11, 5, 0x1a, 0x1a +/* 801B0D9C 001ADCFC 3C 80 80 3E */ lis r4, lbl_803DA9F0@ha +/* 801B0DA0 001ADD00 39 20 00 0E */ li r9, 0xe +/* 801B0DA4 001ADD04 98 1E 08 E4 */ stb r0, 0x8e4(r30) +/* 801B0DA8 001ADD08 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801B0DAC 001ADD0C 7C A0 2B 78 */ mr r0, r5 +/* 801B0DB0 001ADD10 38 E0 00 02 */ li r7, 2 +/* 801B0DB4 001ADD14 C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) +/* 801B0DB8 001ADD18 38 C0 FF FF */ li r6, -1 +/* 801B0DBC 001ADD1C 39 04 A9 F0 */ addi r8, r4, lbl_803DA9F0@l +/* 801B0DC0 001ADD20 91 41 00 14 */ stw r10, 0x14(r1) +/* 801B0DC4 001ADD24 C0 23 00 04 */ lfs f1, 4(r3) +/* 801B0DC8 001ADD28 51 60 F0 42 */ rlwimi r0, r11, 0x1e, 1, 1 +/* 801B0DCC 001ADD2C C0 03 00 08 */ lfs f0, 8(r3) +/* 801B0DD0 001ADD30 38 80 00 0E */ li r4, 0xe +/* 801B0DD4 001ADD34 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801B0DD8 001ADD38 90 A1 00 30 */ stw r5, 0x30(r1) +/* 801B0DDC 001ADD3C 3B E3 00 04 */ addi r31, r3, 4 +/* 801B0DE0 001ADD40 91 21 00 18 */ stw r9, 0x18(r1) +/* 801B0DE4 001ADD44 7F E3 FB 78 */ mr r3, r31 +/* 801B0DE8 001ADD48 91 01 00 14 */ stw r8, 0x14(r1) +/* 801B0DEC 001ADD4C 90 E1 00 1C */ stw r7, 0x1c(r1) +/* 801B0DF0 001ADD50 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 801B0DF4 001ADD54 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 801B0DF8 001ADD58 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 801B0DFC 001ADD5C 90 C1 00 2C */ stw r6, 0x2c(r1) +/* 801B0E00 001ADD60 90 01 00 30 */ stw r0, 0x30(r1) +/* 801B0E04 001ADD64 4B F8 06 35 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801B0E08 001ADD68 80 81 00 18 */ lwz r4, 0x18(r1) +/* 801B0E0C 001ADD6C 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha +/* 801B0E10 001ADD70 38 03 A9 F0 */ addi r0, r3, lbl_803DA9F0@l +/* 801B0E14 001ADD74 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B0E18 001ADD78 90 9F 01 90 */ stw r4, 0x190(r31) +/* 801B0E1C 001ADD7C 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l +/* 801B0E20 001ADD80 80 A1 00 1C */ lwz r5, 0x1c(r1) +/* 801B0E24 001ADD84 80 81 00 20 */ lwz r4, 0x20(r1) +/* 801B0E28 001ADD88 90 BF 01 94 */ stw r5, 0x194(r31) +/* 801B0E2C 001ADD8C 80 A1 00 24 */ lwz r5, 0x24(r1) +/* 801B0E30 001ADD90 90 9F 01 98 */ stw r4, 0x198(r31) +/* 801B0E34 001ADD94 80 81 00 28 */ lwz r4, 0x28(r1) +/* 801B0E38 001ADD98 90 BF 01 9C */ stw r5, 0x19c(r31) +/* 801B0E3C 001ADD9C 80 A1 00 2C */ lwz r5, 0x2c(r1) +/* 801B0E40 001ADDA0 90 9F 01 A0 */ stw r4, 0x1a0(r31) +/* 801B0E44 001ADDA4 80 81 00 30 */ lwz r4, 0x30(r1) +/* 801B0E48 001ADDA8 90 BF 01 A4 */ stw r5, 0x1a4(r31) +/* 801B0E4C 001ADDAC 90 9F 01 A8 */ stw r4, 0x1a8(r31) +/* 801B0E50 001ADDB0 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B0E54 001ADDB4 80 1E 07 80 */ lwz r0, 0x780(r30) +/* 801B0E58 001ADDB8 90 61 00 14 */ stw r3, 0x14(r1) +/* 801B0E5C 001ADDBC 90 1E 07 84 */ stw r0, 0x784(r30) +/* 801B0E60 001ADDC0 48 00 01 40 */ b lbl_801B0FA0 +lbl_801B0E64: +/* 801B0E64 001ADDC4 80 1E 05 68 */ lwz r0, 0x568(r30) +/* 801B0E68 001ADDC8 2C 00 00 01 */ cmpwi r0, 1 +/* 801B0E6C 001ADDCC 41 82 01 34 */ beq lbl_801B0FA0 +/* 801B0E70 001ADDD0 40 80 00 10 */ bge lbl_801B0E80 +/* 801B0E74 001ADDD4 2C 00 00 00 */ cmpwi r0, 0 +/* 801B0E78 001ADDD8 40 80 00 14 */ bge lbl_801B0E8C +/* 801B0E7C 001ADDDC 48 00 01 24 */ b lbl_801B0FA0 +lbl_801B0E80: +/* 801B0E80 001ADDE0 2C 00 00 03 */ cmpwi r0, 3 +/* 801B0E84 001ADDE4 40 80 01 1C */ bge lbl_801B0FA0 +/* 801B0E88 001ADDE8 48 00 00 80 */ b lbl_801B0F08 +lbl_801B0E8C: +/* 801B0E8C 001ADDEC 80 9E 04 50 */ lwz r4, 0x450(r30) +/* 801B0E90 001ADDF0 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 801B0E94 001ADDF4 2C 00 00 01 */ cmpwi r0, 1 +/* 801B0E98 001ADDF8 40 82 00 10 */ bne lbl_801B0EA8 +/* 801B0E9C 001ADDFC 38 00 00 02 */ li r0, 2 +/* 801B0EA0 001ADE00 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801B0EA4 001ADE04 48 00 00 FC */ b lbl_801B0FA0 +lbl_801B0EA8: +/* 801B0EA8 001ADE08 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B0EAC 001ADE0C 38 A0 00 00 */ li r5, 0 +/* 801B0EB0 001ADE10 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801B0EB4 001ADE14 3C 60 80 3E */ lis r3, lbl_803DAA20@ha +/* 801B0EB8 001ADE18 90 01 00 08 */ stw r0, 8(r1) +/* 801B0EBC 001ADE1C 38 03 AA 20 */ addi r0, r3, lbl_803DAA20@l +/* 801B0EC0 001ADE20 3B C4 00 04 */ addi r30, r4, 4 +/* 801B0EC4 001ADE24 38 80 00 00 */ li r4, 0 +/* 801B0EC8 001ADE28 90 A1 00 0C */ stw r5, 0xc(r1) +/* 801B0ECC 001ADE2C 7F C3 F3 78 */ mr r3, r30 +/* 801B0ED0 001ADE30 90 01 00 08 */ stw r0, 8(r1) +/* 801B0ED4 001ADE34 90 A1 00 10 */ stw r5, 0x10(r1) +/* 801B0ED8 001ADE38 4B F8 05 61 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801B0EDC 001ADE3C 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801B0EE0 001ADE40 3C 60 80 3E */ lis r3, lbl_803DAA20@ha +/* 801B0EE4 001ADE44 38 83 AA 20 */ addi r4, r3, lbl_803DAA20@l +/* 801B0EE8 001ADE48 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B0EEC 001ADE4C 90 1E 00 BC */ stw r0, 0xbc(r30) +/* 801B0EF0 001ADE50 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801B0EF4 001ADE54 80 61 00 10 */ lwz r3, 0x10(r1) +/* 801B0EF8 001ADE58 90 81 00 08 */ stw r4, 8(r1) +/* 801B0EFC 001ADE5C 90 7E 00 C0 */ stw r3, 0xc0(r30) +/* 801B0F00 001ADE60 90 01 00 08 */ stw r0, 8(r1) +/* 801B0F04 001ADE64 48 00 00 9C */ b lbl_801B0FA0 +lbl_801B0F08: +/* 801B0F08 001ADE68 80 9E 04 50 */ lwz r4, 0x450(r30) +/* 801B0F0C 001ADE6C 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 801B0F10 001ADE70 2C 00 00 01 */ cmpwi r0, 1 +/* 801B0F14 001ADE74 41 82 00 10 */ beq lbl_801B0F24 +/* 801B0F18 001ADE78 38 00 00 04 */ li r0, 4 +/* 801B0F1C 001ADE7C 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801B0F20 001ADE80 48 00 00 80 */ b lbl_801B0FA0 +lbl_801B0F24: +/* 801B0F24 001ADE84 88 1E 08 E4 */ lbz r0, 0x8e4(r30) +/* 801B0F28 001ADE88 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801B0F2C 001ADE8C 41 82 00 74 */ beq lbl_801B0FA0 +/* 801B0F30 001ADE90 4B FF D9 95 */ bl sub_801ae8c4 +/* 801B0F34 001ADE94 C0 5E 07 C4 */ lfs f2, 0x7c4(r30) +/* 801B0F38 001ADE98 C0 02 A8 BC */ lfs f0, lbl_805AC5DC@sda21(r2) +/* 801B0F3C 001ADE9C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801B0F40 001ADEA0 40 81 00 14 */ ble lbl_801B0F54 +/* 801B0F44 001ADEA4 EC 01 10 24 */ fdivs f0, f1, f2 +/* 801B0F48 001ADEA8 C0 22 A8 DC */ lfs f1, lbl_805AC5FC@sda21(r2) +/* 801B0F4C 001ADEAC EC 21 00 28 */ fsubs f1, f1, f0 +/* 801B0F50 001ADEB0 48 00 00 08 */ b lbl_801B0F58 +lbl_801B0F54: +/* 801B0F54 001ADEB4 C0 22 A8 DC */ lfs f1, lbl_805AC5FC@sda21(r2) +lbl_801B0F58: +/* 801B0F58 001ADEB8 C0 5E 05 70 */ lfs f2, 0x570(r30) +/* 801B0F5C 001ADEBC 7F C3 F3 78 */ mr r3, r30 +/* 801B0F60 001ADEC0 C0 7E 05 6C */ lfs f3, 0x56c(r30) +/* 801B0F64 001ADEC4 4B FF D9 E9 */ bl sub_801ae94c +/* 801B0F68 001ADEC8 48 00 00 38 */ b lbl_801B0FA0 +lbl_801B0F6C: +/* 801B0F6C 001ADECC 88 7E 08 E4 */ lbz r3, 0x8e4(r30) +/* 801B0F70 001ADED0 38 00 00 00 */ li r0, 0 +/* 801B0F74 001ADED4 50 03 2E B4 */ rlwimi r3, r0, 5, 0x1a, 0x1a +/* 801B0F78 001ADED8 38 00 00 02 */ li r0, 2 +/* 801B0F7C 001ADEDC 98 7E 08 E4 */ stb r3, 0x8e4(r30) +/* 801B0F80 001ADEE0 38 A0 00 00 */ li r5, 0 +/* 801B0F84 001ADEE4 90 1E 07 80 */ stw r0, 0x780(r30) +/* 801B0F88 001ADEE8 80 7E 07 9C */ lwz r3, 0x79c(r30) +/* 801B0F8C 001ADEEC 4B FF 63 6D */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb +/* 801B0F90 001ADEF0 80 7E 07 A0 */ lwz r3, 0x7a0(r30) +/* 801B0F94 001ADEF4 7F E4 FB 78 */ mr r4, r31 +/* 801B0F98 001ADEF8 38 A0 00 00 */ li r5, 0 +/* 801B0F9C 001ADEFC 4B FF 63 5D */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb +lbl_801B0FA0: +/* 801B0FA0 001ADF00 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801B0FA4 001ADF04 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801B0FA8 001ADF08 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801B0FAC 001ADF0C 7C 08 03 A6 */ mtlr r0 +/* 801B0FB0 001ADF10 38 21 00 40 */ addi r1, r1, 0x40 +/* 801B0FB4 001ADF14 4E 80 00 20 */ blr + +.global GetUp__9CFlaahgraFR13CStateManager9EStateMsgf +GetUp__9CFlaahgraFR13CStateManager9EStateMsgf: +/* 801B0FB8 001ADF18 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801B0FBC 001ADF1C 7C 08 02 A6 */ mflr r0 +/* 801B0FC0 001ADF20 2C 05 00 01 */ cmpwi r5, 1 +/* 801B0FC4 001ADF24 90 01 00 24 */ stw r0, 0x24(r1) +/* 801B0FC8 001ADF28 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801B0FCC 001ADF2C 7C 9F 23 78 */ mr r31, r4 +/* 801B0FD0 001ADF30 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801B0FD4 001ADF34 7C 7E 1B 78 */ mr r30, r3 +/* 801B0FD8 001ADF38 41 82 00 44 */ beq lbl_801B101C +/* 801B0FDC 001ADF3C 40 80 00 10 */ bge lbl_801B0FEC +/* 801B0FE0 001ADF40 2C 05 00 00 */ cmpwi r5, 0 +/* 801B0FE4 001ADF44 40 80 00 14 */ bge lbl_801B0FF8 +/* 801B0FE8 001ADF48 48 00 01 C4 */ b lbl_801B11AC +lbl_801B0FEC: +/* 801B0FEC 001ADF4C 2C 05 00 03 */ cmpwi r5, 3 +/* 801B0FF0 001ADF50 40 80 01 BC */ bge lbl_801B11AC +/* 801B0FF4 001ADF54 48 00 01 40 */ b lbl_801B1134 +lbl_801B0FF8: +/* 801B0FF8 001ADF58 38 00 00 00 */ li r0, 0 +/* 801B0FFC 001ADF5C 38 60 00 01 */ li r3, 1 +/* 801B1000 001ADF60 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801B1004 001ADF64 80 1E 07 80 */ lwz r0, 0x780(r30) +/* 801B1008 001ADF68 90 1E 07 84 */ stw r0, 0x784(r30) +/* 801B100C 001ADF6C 88 1E 08 E4 */ lbz r0, 0x8e4(r30) +/* 801B1010 001ADF70 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801B1014 001ADF74 98 1E 08 E4 */ stb r0, 0x8e4(r30) +/* 801B1018 001ADF78 48 00 01 94 */ b lbl_801B11AC +lbl_801B101C: +/* 801B101C 001ADF7C 80 1E 05 68 */ lwz r0, 0x568(r30) +/* 801B1020 001ADF80 2C 00 00 01 */ cmpwi r0, 1 +/* 801B1024 001ADF84 41 82 01 88 */ beq lbl_801B11AC +/* 801B1028 001ADF88 40 80 00 10 */ bge lbl_801B1038 +/* 801B102C 001ADF8C 2C 00 00 00 */ cmpwi r0, 0 +/* 801B1030 001ADF90 40 80 00 14 */ bge lbl_801B1044 +/* 801B1034 001ADF94 48 00 01 78 */ b lbl_801B11AC +lbl_801B1038: +/* 801B1038 001ADF98 2C 00 00 03 */ cmpwi r0, 3 +/* 801B103C 001ADF9C 40 80 01 70 */ bge lbl_801B11AC +/* 801B1040 001ADFA0 48 00 00 D8 */ b lbl_801B1118 +lbl_801B1044: +/* 801B1044 001ADFA4 80 DE 04 50 */ lwz r6, 0x450(r30) +/* 801B1048 001ADFA8 80 06 02 B8 */ lwz r0, 0x2b8(r6) +/* 801B104C 001ADFAC 2C 00 00 01 */ cmpwi r0, 1 +/* 801B1050 001ADFB0 40 82 00 58 */ bne lbl_801B10A8 +/* 801B1054 001ADFB4 38 00 00 02 */ li r0, 2 +/* 801B1058 001ADFB8 38 80 FF FF */ li r4, -1 +/* 801B105C 001ADFBC 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801B1060 001ADFC0 88 1E 08 E4 */ lbz r0, 0x8e4(r30) +/* 801B1064 001ADFC4 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 801B1068 001ADFC8 40 82 00 08 */ bne lbl_801B1070 +/* 801B106C 001ADFCC 38 80 00 04 */ li r4, 4 +lbl_801B1070: +/* 801B1070 001ADFD0 3C 60 80 57 */ lis r3, lbl_8057203C@ha +/* 801B1074 001ADFD4 90 9E 07 A8 */ stw r4, 0x7a8(r30) +/* 801B1078 001ADFD8 38 C3 20 3C */ addi r6, r3, lbl_8057203C@l +/* 801B107C 001ADFDC 7F E4 FB 78 */ mr r4, r31 +/* 801B1080 001ADFE0 7F C3 F3 78 */ mr r3, r30 +/* 801B1084 001ADFE4 38 BE 07 9C */ addi r5, r30, 0x79c +/* 801B1088 001ADFE8 4B FF D3 01 */ bl sub_801ae388 +/* 801B108C 001ADFEC 3C 80 80 57 */ lis r4, lbl_8057203C@ha +/* 801B1090 001ADFF0 7F C3 F3 78 */ mr r3, r30 +/* 801B1094 001ADFF4 38 C4 20 3C */ addi r6, r4, lbl_8057203C@l +/* 801B1098 001ADFF8 38 BE 07 A0 */ addi r5, r30, 0x7a0 +/* 801B109C 001ADFFC 7F E4 FB 78 */ mr r4, r31 +/* 801B10A0 001AE000 4B FF D2 E9 */ bl sub_801ae388 +/* 801B10A4 001AE004 48 00 01 08 */ b lbl_801B11AC +lbl_801B10A8: +/* 801B10A8 001AE008 88 9E 08 E4 */ lbz r4, 0x8e4(r30) +/* 801B10AC 001AE00C 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B10B0 001AE010 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801B10B4 001AE014 3C 60 80 3E */ lis r3, lbl_803DAA20@ha +/* 801B10B8 001AE018 54 85 F7 FE */ rlwinm r5, r4, 0x1e, 0x1f, 0x1f +/* 801B10BC 001AE01C 38 80 00 00 */ li r4, 0 +/* 801B10C0 001AE020 7C A5 00 34 */ cntlzw r5, r5 +/* 801B10C4 001AE024 90 01 00 08 */ stw r0, 8(r1) +/* 801B10C8 001AE028 54 A5 D9 7E */ srwi r5, r5, 5 +/* 801B10CC 001AE02C 38 03 AA 20 */ addi r0, r3, lbl_803DAA20@l +/* 801B10D0 001AE030 3B C6 00 04 */ addi r30, r6, 4 +/* 801B10D4 001AE034 90 81 00 0C */ stw r4, 0xc(r1) +/* 801B10D8 001AE038 7F C3 F3 78 */ mr r3, r30 +/* 801B10DC 001AE03C 38 80 00 00 */ li r4, 0 +/* 801B10E0 001AE040 90 01 00 08 */ stw r0, 8(r1) +/* 801B10E4 001AE044 90 A1 00 10 */ stw r5, 0x10(r1) +/* 801B10E8 001AE048 4B F8 03 51 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801B10EC 001AE04C 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801B10F0 001AE050 3C 60 80 3E */ lis r3, lbl_803DAA20@ha +/* 801B10F4 001AE054 38 83 AA 20 */ addi r4, r3, lbl_803DAA20@l +/* 801B10F8 001AE058 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B10FC 001AE05C 90 1E 00 BC */ stw r0, 0xbc(r30) +/* 801B1100 001AE060 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801B1104 001AE064 80 61 00 10 */ lwz r3, 0x10(r1) +/* 801B1108 001AE068 90 81 00 08 */ stw r4, 8(r1) +/* 801B110C 001AE06C 90 7E 00 C0 */ stw r3, 0xc0(r30) +/* 801B1110 001AE070 90 01 00 08 */ stw r0, 8(r1) +/* 801B1114 001AE074 48 00 00 98 */ b lbl_801B11AC +lbl_801B1118: +/* 801B1118 001AE078 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801B111C 001AE07C 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801B1120 001AE080 2C 00 00 01 */ cmpwi r0, 1 +/* 801B1124 001AE084 41 82 00 88 */ beq lbl_801B11AC +/* 801B1128 001AE088 38 00 00 04 */ li r0, 4 +/* 801B112C 001AE08C 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801B1130 001AE090 48 00 00 7C */ b lbl_801B11AC +lbl_801B1134: +/* 801B1134 001AE094 88 1E 08 E4 */ lbz r0, 0x8e4(r30) +/* 801B1138 001AE098 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 801B113C 001AE09C 41 82 00 0C */ beq lbl_801B1148 +/* 801B1140 001AE0A0 C0 02 A9 0C */ lfs f0, lbl_805AC62C@sda21(r2) +/* 801B1144 001AE0A4 48 00 00 08 */ b lbl_801B114C +lbl_801B1148: +/* 801B1148 001AE0A8 C0 02 A8 BC */ lfs f0, lbl_805AC5DC@sda21(r2) +lbl_801B114C: +/* 801B114C 001AE0AC D0 1E 07 C0 */ stfs f0, 0x7c0(r30) +/* 801B1150 001AE0B0 38 00 FF FF */ li r0, -1 +/* 801B1154 001AE0B4 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801B1158 001AE0B8 38 E0 00 00 */ li r7, 0 +/* 801B115C 001AE0BC 90 1E 07 A8 */ stw r0, 0x7a8(r30) +/* 801B1160 001AE0C0 38 C3 66 A0 */ addi r6, r3, skZero3f@l +/* 801B1164 001AE0C4 7F C3 F3 78 */ mr r3, r30 +/* 801B1168 001AE0C8 7F E4 FB 78 */ mr r4, r31 +/* 801B116C 001AE0CC 88 1E 08 E4 */ lbz r0, 0x8e4(r30) +/* 801B1170 001AE0D0 50 E0 1F 38 */ rlwimi r0, r7, 3, 0x1c, 0x1c +/* 801B1174 001AE0D4 38 BE 07 9C */ addi r5, r30, 0x79c +/* 801B1178 001AE0D8 98 1E 08 E4 */ stb r0, 0x8e4(r30) +/* 801B117C 001AE0DC 88 1E 08 E4 */ lbz r0, 0x8e4(r30) +/* 801B1180 001AE0E0 50 E0 17 7A */ rlwimi r0, r7, 2, 0x1d, 0x1d +/* 801B1184 001AE0E4 98 1E 08 E4 */ stb r0, 0x8e4(r30) +/* 801B1188 001AE0E8 4B FF D2 01 */ bl sub_801ae388 +/* 801B118C 001AE0EC 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801B1190 001AE0F0 7F C3 F3 78 */ mr r3, r30 +/* 801B1194 001AE0F4 38 C4 66 A0 */ addi r6, r4, skZero3f@l +/* 801B1198 001AE0F8 38 BE 07 A0 */ addi r5, r30, 0x7a0 +/* 801B119C 001AE0FC 7F E4 FB 78 */ mr r4, r31 +/* 801B11A0 001AE100 4B FF D1 E9 */ bl sub_801ae388 +/* 801B11A4 001AE104 80 0D A4 98 */ lwz r0, lbl_805A9058@sda21(r13) +/* 801B11A8 001AE108 90 1E 04 30 */ stw r0, 0x430(r30) +lbl_801B11AC: +/* 801B11AC 001AE10C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801B11B0 001AE110 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801B11B4 001AE114 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801B11B8 001AE118 7C 08 03 A6 */ mtlr r0 +/* 801B11BC 001AE11C 38 21 00 20 */ addi r1, r1, 0x20 +/* 801B11C0 001AE120 4E 80 00 20 */ blr + +.global Faint__9CFlaahgraFR13CStateManager9EStateMsgf +Faint__9CFlaahgraFR13CStateManager9EStateMsgf: +/* 801B11C4 001AE124 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801B11C8 001AE128 7C 08 02 A6 */ mflr r0 +/* 801B11CC 001AE12C 2C 05 00 01 */ cmpwi r5, 1 +/* 801B11D0 001AE130 90 01 00 44 */ stw r0, 0x44(r1) +/* 801B11D4 001AE134 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801B11D8 001AE138 7C 7F 1B 78 */ mr r31, r3 +/* 801B11DC 001AE13C 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801B11E0 001AE140 7C 9E 23 78 */ mr r30, r4 +/* 801B11E4 001AE144 41 82 01 14 */ beq lbl_801B12F8 +/* 801B11E8 001AE148 40 80 00 10 */ bge lbl_801B11F8 +/* 801B11EC 001AE14C 2C 05 00 00 */ cmpwi r5, 0 +/* 801B11F0 001AE150 40 80 00 14 */ bge lbl_801B1204 +/* 801B11F4 001AE154 48 00 02 80 */ b lbl_801B1474 +lbl_801B11F8: +/* 801B11F8 001AE158 2C 05 00 03 */ cmpwi r5, 3 +/* 801B11FC 001AE15C 40 80 02 78 */ bge lbl_801B1474 +/* 801B1200 001AE160 48 00 02 44 */ b lbl_801B1444 +lbl_801B1204: +/* 801B1204 001AE164 38 E0 00 00 */ li r7, 0 +/* 801B1208 001AE168 C0 02 A8 BC */ lfs f0, lbl_805AC5DC@sda21(r2) +/* 801B120C 001AE16C 90 FF 05 68 */ stw r7, 0x568(r31) +/* 801B1210 001AE170 7F C5 F3 78 */ mr r5, r30 +/* 801B1214 001AE174 38 80 00 03 */ li r4, 3 +/* 801B1218 001AE178 38 C0 FF FF */ li r6, -1 +/* 801B121C 001AE17C D0 1F 07 D4 */ stfs f0, 0x7d4(r31) +/* 801B1220 001AE180 88 1F 08 E5 */ lbz r0, 0x8e5(r31) +/* 801B1224 001AE184 50 E0 3E 30 */ rlwimi r0, r7, 7, 0x18, 0x18 +/* 801B1228 001AE188 98 1F 08 E5 */ stb r0, 0x8e5(r31) +/* 801B122C 001AE18C 90 FF 07 F8 */ stw r7, 0x7f8(r31) +/* 801B1230 001AE190 4B E9 FE 91 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 801B1234 001AE194 7F E3 FB 78 */ mr r3, r31 +/* 801B1238 001AE198 7F C5 F3 78 */ mr r5, r30 +/* 801B123C 001AE19C 38 80 00 0C */ li r4, 0xc +/* 801B1240 001AE1A0 38 C0 FF FF */ li r6, -1 +/* 801B1244 001AE1A4 4B E9 FE 7D */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 801B1248 001AE1A8 80 9F 07 AC */ lwz r4, 0x7ac(r31) +/* 801B124C 001AE1AC 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B1250 001AE1B0 C0 5F 00 58 */ lfs f2, 0x58(r31) +/* 801B1254 001AE1B4 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801B1258 001AE1B8 C0 3F 00 48 */ lfs f1, 0x48(r31) +/* 801B125C 001AE1BC 54 84 10 3A */ slwi r4, r4, 2 +/* 801B1260 001AE1C0 C0 1F 00 38 */ lfs f0, 0x38(r31) +/* 801B1264 001AE1C4 FC 40 10 50 */ fneg f2, f2 +/* 801B1268 001AE1C8 FC 20 08 50 */ fneg f1, f1 +/* 801B126C 001AE1CC 38 62 A8 9C */ addi r3, r2, lbl_805AC5BC@sda21 +/* 801B1270 001AE1D0 FC 00 00 50 */ fneg f0, f0 +/* 801B1274 001AE1D4 7C C3 20 2E */ lwzx r6, r3, r4 +/* 801B1278 001AE1D8 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801B127C 001AE1DC 3C 80 80 3E */ lis r4, lbl_803DAA50@ha +/* 801B1280 001AE1E0 38 A0 00 03 */ li r5, 3 +/* 801B1284 001AE1E4 3B E3 00 04 */ addi r31, r3, 4 +/* 801B1288 001AE1E8 90 01 00 20 */ stw r0, 0x20(r1) +/* 801B128C 001AE1EC 38 04 AA 50 */ addi r0, r4, lbl_803DAA50@l +/* 801B1290 001AE1F0 7F E3 FB 78 */ mr r3, r31 +/* 801B1294 001AE1F4 38 80 00 03 */ li r4, 3 +/* 801B1298 001AE1F8 90 A1 00 24 */ stw r5, 0x24(r1) +/* 801B129C 001AE1FC 90 01 00 20 */ stw r0, 0x20(r1) +/* 801B12A0 001AE200 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 801B12A4 001AE204 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 801B12A8 001AE208 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 801B12AC 001AE20C 90 C1 00 34 */ stw r6, 0x34(r1) +/* 801B12B0 001AE210 4B F8 01 89 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801B12B4 001AE214 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801B12B8 001AE218 3C 60 80 3E */ lis r3, lbl_803DAA50@ha +/* 801B12BC 001AE21C 38 83 AA 50 */ addi r4, r3, lbl_803DAA50@l +/* 801B12C0 001AE220 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B12C4 001AE224 90 1F 00 E0 */ stw r0, 0xe0(r31) +/* 801B12C8 001AE228 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801B12CC 001AE22C 80 A1 00 28 */ lwz r5, 0x28(r1) +/* 801B12D0 001AE230 80 61 00 2C */ lwz r3, 0x2c(r1) +/* 801B12D4 001AE234 90 BF 00 E4 */ stw r5, 0xe4(r31) +/* 801B12D8 001AE238 80 A1 00 30 */ lwz r5, 0x30(r1) +/* 801B12DC 001AE23C 90 7F 00 E8 */ stw r3, 0xe8(r31) +/* 801B12E0 001AE240 80 61 00 34 */ lwz r3, 0x34(r1) +/* 801B12E4 001AE244 90 BF 00 EC */ stw r5, 0xec(r31) +/* 801B12E8 001AE248 90 81 00 20 */ stw r4, 0x20(r1) +/* 801B12EC 001AE24C 90 7F 00 F0 */ stw r3, 0xf0(r31) +/* 801B12F0 001AE250 90 01 00 20 */ stw r0, 0x20(r1) +/* 801B12F4 001AE254 48 00 01 80 */ b lbl_801B1474 +lbl_801B12F8: +/* 801B12F8 001AE258 80 1F 05 68 */ lwz r0, 0x568(r31) +/* 801B12FC 001AE25C 2C 00 00 01 */ cmpwi r0, 1 +/* 801B1300 001AE260 41 82 01 74 */ beq lbl_801B1474 +/* 801B1304 001AE264 40 80 00 10 */ bge lbl_801B1314 +/* 801B1308 001AE268 2C 00 00 00 */ cmpwi r0, 0 +/* 801B130C 001AE26C 40 80 00 14 */ bge lbl_801B1320 +/* 801B1310 001AE270 48 00 01 64 */ b lbl_801B1474 +lbl_801B1314: +/* 801B1314 001AE274 2C 00 00 03 */ cmpwi r0, 3 +/* 801B1318 001AE278 40 80 01 5C */ bge lbl_801B1474 +/* 801B131C 001AE27C 48 00 00 E0 */ b lbl_801B13FC +lbl_801B1320: +/* 801B1320 001AE280 80 DF 04 50 */ lwz r6, 0x450(r31) +/* 801B1324 001AE284 80 06 02 B8 */ lwz r0, 0x2b8(r6) +/* 801B1328 001AE288 2C 00 00 00 */ cmpwi r0, 0 +/* 801B132C 001AE28C 40 82 00 24 */ bne lbl_801B1350 +/* 801B1330 001AE290 38 00 00 02 */ li r0, 2 +/* 801B1334 001AE294 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801B1338 001AE298 4B FF CB 49 */ bl sub_801ade80 +/* 801B133C 001AE29C 7F E3 FB 78 */ mr r3, r31 +/* 801B1340 001AE2A0 7F C4 F3 78 */ mr r4, r30 +/* 801B1344 001AE2A4 38 A0 00 01 */ li r5, 1 +/* 801B1348 001AE2A8 4B FF DC 6D */ bl sub_801aefb4 +/* 801B134C 001AE2AC 48 00 01 28 */ b lbl_801B1474 +lbl_801B1350: +/* 801B1350 001AE2B0 80 9F 07 AC */ lwz r4, 0x7ac(r31) +/* 801B1354 001AE2B4 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B1358 001AE2B8 C0 5F 00 58 */ lfs f2, 0x58(r31) +/* 801B135C 001AE2BC 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801B1360 001AE2C0 C0 3F 00 48 */ lfs f1, 0x48(r31) +/* 801B1364 001AE2C4 54 84 10 3A */ slwi r4, r4, 2 +/* 801B1368 001AE2C8 C0 1F 00 38 */ lfs f0, 0x38(r31) +/* 801B136C 001AE2CC FC 40 10 50 */ fneg f2, f2 +/* 801B1370 001AE2D0 FC 20 08 50 */ fneg f1, f1 +/* 801B1374 001AE2D4 38 62 A8 9C */ addi r3, r2, lbl_805AC5BC@sda21 +/* 801B1378 001AE2D8 FC 00 00 50 */ fneg f0, f0 +/* 801B137C 001AE2DC 7C E3 20 2E */ lwzx r7, r3, r4 +/* 801B1380 001AE2E0 3C 60 80 3E */ lis r3, lbl_803DAA50@ha +/* 801B1384 001AE2E4 38 A0 00 03 */ li r5, 3 +/* 801B1388 001AE2E8 3B E6 00 04 */ addi r31, r6, 4 +/* 801B138C 001AE2EC 90 01 00 08 */ stw r0, 8(r1) +/* 801B1390 001AE2F0 38 03 AA 50 */ addi r0, r3, lbl_803DAA50@l +/* 801B1394 001AE2F4 38 80 00 03 */ li r4, 3 +/* 801B1398 001AE2F8 90 A1 00 0C */ stw r5, 0xc(r1) +/* 801B139C 001AE2FC 7F E3 FB 78 */ mr r3, r31 +/* 801B13A0 001AE300 90 01 00 08 */ stw r0, 8(r1) +/* 801B13A4 001AE304 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801B13A8 001AE308 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 801B13AC 001AE30C D0 41 00 18 */ stfs f2, 0x18(r1) +/* 801B13B0 001AE310 90 E1 00 1C */ stw r7, 0x1c(r1) +/* 801B13B4 001AE314 4B F8 00 85 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801B13B8 001AE318 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801B13BC 001AE31C 3C 60 80 3E */ lis r3, lbl_803DAA50@ha +/* 801B13C0 001AE320 38 83 AA 50 */ addi r4, r3, lbl_803DAA50@l +/* 801B13C4 001AE324 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B13C8 001AE328 90 1F 00 E0 */ stw r0, 0xe0(r31) +/* 801B13CC 001AE32C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801B13D0 001AE330 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 801B13D4 001AE334 80 61 00 14 */ lwz r3, 0x14(r1) +/* 801B13D8 001AE338 90 BF 00 E4 */ stw r5, 0xe4(r31) +/* 801B13DC 001AE33C 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 801B13E0 001AE340 90 7F 00 E8 */ stw r3, 0xe8(r31) +/* 801B13E4 001AE344 80 61 00 1C */ lwz r3, 0x1c(r1) +/* 801B13E8 001AE348 90 BF 00 EC */ stw r5, 0xec(r31) +/* 801B13EC 001AE34C 90 81 00 08 */ stw r4, 8(r1) +/* 801B13F0 001AE350 90 7F 00 F0 */ stw r3, 0xf0(r31) +/* 801B13F4 001AE354 90 01 00 08 */ stw r0, 8(r1) +/* 801B13F8 001AE358 48 00 00 7C */ b lbl_801B1474 +lbl_801B13FC: +/* 801B13FC 001AE35C 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801B1400 001AE360 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801B1404 001AE364 2C 00 00 02 */ cmpwi r0, 2 +/* 801B1408 001AE368 40 82 00 30 */ bne lbl_801B1438 +/* 801B140C 001AE36C C0 1F 07 D4 */ lfs f0, 0x7d4(r31) +/* 801B1410 001AE370 EC 00 08 2A */ fadds f0, f0, f1 +/* 801B1414 001AE374 D0 1F 07 D4 */ stfs f0, 0x7d4(r31) +/* 801B1418 001AE378 C0 3F 07 D4 */ lfs f1, 0x7d4(r31) +/* 801B141C 001AE37C C0 1F 05 78 */ lfs f0, 0x578(r31) +/* 801B1420 001AE380 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B1424 001AE384 4C 41 13 82 */ cror 2, 1, 2 +/* 801B1428 001AE388 40 82 00 4C */ bne lbl_801B1474 +/* 801B142C 001AE38C 38 00 00 04 */ li r0, 4 +/* 801B1430 001AE390 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801B1434 001AE394 48 00 00 40 */ b lbl_801B1474 +lbl_801B1438: +/* 801B1438 001AE398 38 9F 08 94 */ addi r4, r31, 0x894 +/* 801B143C 001AE39C 4B F8 92 69 */ bl FaceDirection__15CBodyControllerFRC9CVector3ff +/* 801B1440 001AE3A0 48 00 00 34 */ b lbl_801B1474 +lbl_801B1444: +/* 801B1444 001AE3A4 88 BF 08 E4 */ lbz r5, 0x8e4(r31) +/* 801B1448 001AE3A8 38 00 00 00 */ li r0, 0 +/* 801B144C 001AE3AC 50 05 26 F6 */ rlwimi r5, r0, 4, 0x1b, 0x1b +/* 801B1450 001AE3B0 38 00 00 03 */ li r0, 3 +/* 801B1454 001AE3B4 98 BF 08 E4 */ stb r5, 0x8e4(r31) +/* 801B1458 001AE3B8 38 A0 00 00 */ li r5, 0 +/* 801B145C 001AE3BC 80 DF 07 AC */ lwz r6, 0x7ac(r31) +/* 801B1460 001AE3C0 7C C6 00 34 */ cntlzw r6, r6 +/* 801B1464 001AE3C4 54 C6 D9 7E */ srwi r6, r6, 5 +/* 801B1468 001AE3C8 90 DF 07 AC */ stw r6, 0x7ac(r31) +/* 801B146C 001AE3CC 90 1F 07 80 */ stw r0, 0x780(r31) +/* 801B1470 001AE3D0 4B FF DB 45 */ bl sub_801aefb4 +lbl_801B1474: +/* 801B1474 001AE3D4 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801B1478 001AE3D8 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801B147C 001AE3DC 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801B1480 001AE3E0 7C 08 03 A6 */ mtlr r0 +/* 801B1484 001AE3E4 38 21 00 40 */ addi r1, r1, 0x40 +/* 801B1488 001AE3E8 4E 80 00 20 */ blr + +.global Growth__9CFlaahgraFR13CStateManager9EStateMsgf +Growth__9CFlaahgraFR13CStateManager9EStateMsgf: +/* 801B148C 001AE3EC 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801B1490 001AE3F0 7C 08 02 A6 */ mflr r0 +/* 801B1494 001AE3F4 2C 05 00 01 */ cmpwi r5, 1 +/* 801B1498 001AE3F8 90 01 00 64 */ stw r0, 0x64(r1) +/* 801B149C 001AE3FC 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 801B14A0 001AE400 7C 9F 23 78 */ mr r31, r4 +/* 801B14A4 001AE404 93 C1 00 58 */ stw r30, 0x58(r1) +/* 801B14A8 001AE408 7C 7E 1B 78 */ mr r30, r3 +/* 801B14AC 001AE40C 41 82 01 28 */ beq lbl_801B15D4 +/* 801B14B0 001AE410 40 80 00 10 */ bge lbl_801B14C0 +/* 801B14B4 001AE414 2C 05 00 00 */ cmpwi r5, 0 +/* 801B14B8 001AE418 40 80 00 14 */ bge lbl_801B14CC +/* 801B14BC 001AE41C 48 00 03 28 */ b lbl_801B17E4 +lbl_801B14C0: +/* 801B14C0 001AE420 2C 05 00 03 */ cmpwi r5, 3 +/* 801B14C4 001AE424 40 80 03 20 */ bge lbl_801B17E4 +/* 801B14C8 001AE428 48 00 02 BC */ b lbl_801B1784 +lbl_801B14CC: +/* 801B14CC 001AE42C 39 60 00 00 */ li r11, 0 +/* 801B14D0 001AE430 80 A1 00 50 */ lwz r5, 0x50(r1) +/* 801B14D4 001AE434 91 7E 05 68 */ stw r11, 0x568(r30) +/* 801B14D8 001AE438 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 801B14DC 001AE43C 39 44 AA 68 */ addi r10, r4, lbl_803DAA68@l +/* 801B14E0 001AE440 51 65 F8 00 */ rlwimi r5, r11, 0x1f, 0, 0 +/* 801B14E4 001AE444 88 1E 08 E4 */ lbz r0, 0x8e4(r30) +/* 801B14E8 001AE448 51 60 2E B4 */ rlwimi r0, r11, 5, 0x1a, 0x1a +/* 801B14EC 001AE44C 3C 80 80 3E */ lis r4, lbl_803DA9F0@ha +/* 801B14F0 001AE450 39 20 00 0E */ li r9, 0xe +/* 801B14F4 001AE454 98 1E 08 E4 */ stb r0, 0x8e4(r30) +/* 801B14F8 001AE458 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801B14FC 001AE45C 7C A0 2B 78 */ mr r0, r5 +/* 801B1500 001AE460 38 E0 00 02 */ li r7, 2 +/* 801B1504 001AE464 C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) +/* 801B1508 001AE468 38 C0 FF FF */ li r6, -1 +/* 801B150C 001AE46C 39 04 A9 F0 */ addi r8, r4, lbl_803DA9F0@l +/* 801B1510 001AE470 91 41 00 34 */ stw r10, 0x34(r1) +/* 801B1514 001AE474 C0 23 00 04 */ lfs f1, 4(r3) +/* 801B1518 001AE478 51 60 F0 42 */ rlwimi r0, r11, 0x1e, 1, 1 +/* 801B151C 001AE47C C0 03 00 08 */ lfs f0, 8(r3) +/* 801B1520 001AE480 38 80 00 0E */ li r4, 0xe +/* 801B1524 001AE484 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801B1528 001AE488 90 A1 00 50 */ stw r5, 0x50(r1) +/* 801B152C 001AE48C 3B E3 00 04 */ addi r31, r3, 4 +/* 801B1530 001AE490 91 21 00 38 */ stw r9, 0x38(r1) +/* 801B1534 001AE494 7F E3 FB 78 */ mr r3, r31 +/* 801B1538 001AE498 91 01 00 34 */ stw r8, 0x34(r1) +/* 801B153C 001AE49C 90 E1 00 3C */ stw r7, 0x3c(r1) +/* 801B1540 001AE4A0 D0 41 00 40 */ stfs f2, 0x40(r1) +/* 801B1544 001AE4A4 D0 21 00 44 */ stfs f1, 0x44(r1) +/* 801B1548 001AE4A8 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 801B154C 001AE4AC 90 C1 00 4C */ stw r6, 0x4c(r1) +/* 801B1550 001AE4B0 90 01 00 50 */ stw r0, 0x50(r1) +/* 801B1554 001AE4B4 4B F7 FE E5 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801B1558 001AE4B8 80 01 00 38 */ lwz r0, 0x38(r1) +/* 801B155C 001AE4BC 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha +/* 801B1560 001AE4C0 38 83 A9 F0 */ addi r4, r3, lbl_803DA9F0@l +/* 801B1564 001AE4C4 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B1568 001AE4C8 90 1F 01 90 */ stw r0, 0x190(r31) +/* 801B156C 001AE4CC 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l +/* 801B1570 001AE4D0 80 A1 00 3C */ lwz r5, 0x3c(r1) +/* 801B1574 001AE4D4 80 01 00 40 */ lwz r0, 0x40(r1) +/* 801B1578 001AE4D8 90 BF 01 94 */ stw r5, 0x194(r31) +/* 801B157C 001AE4DC 80 A1 00 44 */ lwz r5, 0x44(r1) +/* 801B1580 001AE4E0 90 1F 01 98 */ stw r0, 0x198(r31) +/* 801B1584 001AE4E4 80 01 00 48 */ lwz r0, 0x48(r1) +/* 801B1588 001AE4E8 90 BF 01 9C */ stw r5, 0x19c(r31) +/* 801B158C 001AE4EC 80 A1 00 4C */ lwz r5, 0x4c(r1) +/* 801B1590 001AE4F0 90 1F 01 A0 */ stw r0, 0x1a0(r31) +/* 801B1594 001AE4F4 80 01 00 50 */ lwz r0, 0x50(r1) +/* 801B1598 001AE4F8 90 BF 01 A4 */ stw r5, 0x1a4(r31) +/* 801B159C 001AE4FC 90 1F 01 A8 */ stw r0, 0x1a8(r31) +/* 801B15A0 001AE500 80 1E 07 80 */ lwz r0, 0x780(r30) +/* 801B15A4 001AE504 90 81 00 34 */ stw r4, 0x34(r1) +/* 801B15A8 001AE508 90 1E 07 84 */ stw r0, 0x784(r30) +/* 801B15AC 001AE50C 80 9E 00 64 */ lwz r4, 0x64(r30) +/* 801B15B0 001AE510 90 61 00 34 */ stw r3, 0x34(r1) +/* 801B15B4 001AE514 C0 44 00 00 */ lfs f2, 0(r4) +/* 801B15B8 001AE518 C0 24 00 04 */ lfs f1, 4(r4) +/* 801B15BC 001AE51C C0 04 00 08 */ lfs f0, 8(r4) +/* 801B15C0 001AE520 D0 41 00 08 */ stfs f2, 8(r1) +/* 801B15C4 001AE524 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 801B15C8 001AE528 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801B15CC 001AE52C D0 1E 08 1C */ stfs f0, 0x81c(r30) +/* 801B15D0 001AE530 48 00 02 14 */ b lbl_801B17E4 +lbl_801B15D4: +/* 801B15D4 001AE534 80 1E 05 68 */ lwz r0, 0x568(r30) +/* 801B15D8 001AE538 2C 00 00 01 */ cmpwi r0, 1 +/* 801B15DC 001AE53C 41 82 02 08 */ beq lbl_801B17E4 +/* 801B15E0 001AE540 40 80 00 10 */ bge lbl_801B15F0 +/* 801B15E4 001AE544 2C 00 00 00 */ cmpwi r0, 0 +/* 801B15E8 001AE548 40 80 00 14 */ bge lbl_801B15FC +/* 801B15EC 001AE54C 48 00 01 F8 */ b lbl_801B17E4 +lbl_801B15F0: +/* 801B15F0 001AE550 2C 00 00 03 */ cmpwi r0, 3 +/* 801B15F4 001AE554 40 80 01 F0 */ bge lbl_801B17E4 +/* 801B15F8 001AE558 48 00 00 F0 */ b lbl_801B16E8 +lbl_801B15FC: +/* 801B15FC 001AE55C 81 5E 04 50 */ lwz r10, 0x450(r30) +/* 801B1600 001AE560 80 0A 02 B8 */ lwz r0, 0x2b8(r10) +/* 801B1604 001AE564 2C 00 00 0C */ cmpwi r0, 0xc +/* 801B1608 001AE568 40 82 00 10 */ bne lbl_801B1618 +/* 801B160C 001AE56C 38 00 00 02 */ li r0, 2 +/* 801B1610 001AE570 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801B1614 001AE574 48 00 01 D0 */ b lbl_801B17E4 +lbl_801B1618: +/* 801B1618 001AE578 3C C0 80 3E */ lis r6, lbl_803DAA68@ha +/* 801B161C 001AE57C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801B1620 001AE580 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 801B1624 001AE584 80 81 00 30 */ lwz r4, 0x30(r1) +/* 801B1628 001AE588 38 60 00 00 */ li r3, 0 +/* 801B162C 001AE58C 39 26 AA 68 */ addi r9, r6, lbl_803DAA68@l +/* 801B1630 001AE590 50 64 F8 00 */ rlwimi r4, r3, 0x1f, 0, 0 +/* 801B1634 001AE594 C0 45 00 00 */ lfs f2, 0(r5) +/* 801B1638 001AE598 C0 25 00 04 */ lfs f1, 4(r5) +/* 801B163C 001AE59C 3C E0 80 3E */ lis r7, lbl_803DA9F0@ha +/* 801B1640 001AE5A0 C0 05 00 08 */ lfs f0, 8(r5) +/* 801B1644 001AE5A4 7C 80 23 78 */ mr r0, r4 +/* 801B1648 001AE5A8 39 00 00 0E */ li r8, 0xe +/* 801B164C 001AE5AC 38 C0 00 02 */ li r6, 2 +/* 801B1650 001AE5B0 38 A0 FF FF */ li r5, -1 +/* 801B1654 001AE5B4 3B EA 00 04 */ addi r31, r10, 4 +/* 801B1658 001AE5B8 91 21 00 14 */ stw r9, 0x14(r1) +/* 801B165C 001AE5BC 38 E7 A9 F0 */ addi r7, r7, lbl_803DA9F0@l +/* 801B1660 001AE5C0 50 60 F0 42 */ rlwimi r0, r3, 0x1e, 1, 1 +/* 801B1664 001AE5C4 7F E3 FB 78 */ mr r3, r31 +/* 801B1668 001AE5C8 90 81 00 30 */ stw r4, 0x30(r1) +/* 801B166C 001AE5CC 38 80 00 0E */ li r4, 0xe +/* 801B1670 001AE5D0 91 01 00 18 */ stw r8, 0x18(r1) +/* 801B1674 001AE5D4 90 E1 00 14 */ stw r7, 0x14(r1) +/* 801B1678 001AE5D8 90 C1 00 1C */ stw r6, 0x1c(r1) +/* 801B167C 001AE5DC D0 41 00 20 */ stfs f2, 0x20(r1) +/* 801B1680 001AE5E0 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 801B1684 001AE5E4 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 801B1688 001AE5E8 90 A1 00 2C */ stw r5, 0x2c(r1) +/* 801B168C 001AE5EC 90 01 00 30 */ stw r0, 0x30(r1) +/* 801B1690 001AE5F0 4B F7 FD A9 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801B1694 001AE5F4 80 01 00 18 */ lwz r0, 0x18(r1) +/* 801B1698 001AE5F8 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha +/* 801B169C 001AE5FC 38 83 A9 F0 */ addi r4, r3, lbl_803DA9F0@l +/* 801B16A0 001AE600 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B16A4 001AE604 90 1F 01 90 */ stw r0, 0x190(r31) +/* 801B16A8 001AE608 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801B16AC 001AE60C 80 A1 00 1C */ lwz r5, 0x1c(r1) +/* 801B16B0 001AE610 80 61 00 20 */ lwz r3, 0x20(r1) +/* 801B16B4 001AE614 90 BF 01 94 */ stw r5, 0x194(r31) +/* 801B16B8 001AE618 80 A1 00 24 */ lwz r5, 0x24(r1) +/* 801B16BC 001AE61C 90 7F 01 98 */ stw r3, 0x198(r31) +/* 801B16C0 001AE620 80 61 00 28 */ lwz r3, 0x28(r1) +/* 801B16C4 001AE624 90 BF 01 9C */ stw r5, 0x19c(r31) +/* 801B16C8 001AE628 80 A1 00 2C */ lwz r5, 0x2c(r1) +/* 801B16CC 001AE62C 90 7F 01 A0 */ stw r3, 0x1a0(r31) +/* 801B16D0 001AE630 80 61 00 30 */ lwz r3, 0x30(r1) +/* 801B16D4 001AE634 90 BF 01 A4 */ stw r5, 0x1a4(r31) +/* 801B16D8 001AE638 90 81 00 14 */ stw r4, 0x14(r1) +/* 801B16DC 001AE63C 90 7F 01 A8 */ stw r3, 0x1a8(r31) +/* 801B16E0 001AE640 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B16E4 001AE644 48 00 01 00 */ b lbl_801B17E4 +lbl_801B16E8: +/* 801B16E8 001AE648 80 9E 04 50 */ lwz r4, 0x450(r30) +/* 801B16EC 001AE64C 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 801B16F0 001AE650 2C 00 00 0C */ cmpwi r0, 0xc +/* 801B16F4 001AE654 41 82 00 10 */ beq lbl_801B1704 +/* 801B16F8 001AE658 38 00 00 04 */ li r0, 4 +/* 801B16FC 001AE65C 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801B1700 001AE660 48 00 00 48 */ b lbl_801B1748 +lbl_801B1704: +/* 801B1704 001AE664 88 1E 08 E4 */ lbz r0, 0x8e4(r30) +/* 801B1708 001AE668 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801B170C 001AE66C 41 82 00 3C */ beq lbl_801B1748 +/* 801B1710 001AE670 4B FF D1 B5 */ bl sub_801ae8c4 +/* 801B1714 001AE674 C0 5E 07 C4 */ lfs f2, 0x7c4(r30) +/* 801B1718 001AE678 C0 02 A8 BC */ lfs f0, lbl_805AC5DC@sda21(r2) +/* 801B171C 001AE67C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801B1720 001AE680 40 81 00 14 */ ble lbl_801B1734 +/* 801B1724 001AE684 EC 01 10 24 */ fdivs f0, f1, f2 +/* 801B1728 001AE688 C0 22 A8 DC */ lfs f1, lbl_805AC5FC@sda21(r2) +/* 801B172C 001AE68C EC 21 00 28 */ fsubs f1, f1, f0 +/* 801B1730 001AE690 48 00 00 08 */ b lbl_801B1738 +lbl_801B1734: +/* 801B1734 001AE694 C0 22 A8 DC */ lfs f1, lbl_805AC5FC@sda21(r2) +lbl_801B1738: +/* 801B1738 001AE698 C0 5E 08 1C */ lfs f2, 0x81c(r30) +/* 801B173C 001AE69C 7F C3 F3 78 */ mr r3, r30 +/* 801B1740 001AE6A0 C0 7E 05 70 */ lfs f3, 0x570(r30) +/* 801B1744 001AE6A4 4B FF D2 09 */ bl sub_801ae94c +lbl_801B1748: +/* 801B1748 001AE6A8 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 801B174C 001AE6AC C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801B1750 001AE6B0 C0 23 00 40 */ lfs f1, 0x40(r3) +/* 801B1754 001AE6B4 C0 83 00 50 */ lfs f4, 0x50(r3) +/* 801B1758 001AE6B8 C0 7E 00 50 */ lfs f3, 0x50(r30) +/* 801B175C 001AE6BC EC 01 00 28 */ fsubs f0, f1, f0 +/* 801B1760 001AE6C0 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 801B1764 001AE6C4 C0 3E 00 60 */ lfs f1, 0x60(r30) +/* 801B1768 001AE6C8 EC 64 18 28 */ fsubs f3, f4, f3 +/* 801B176C 001AE6CC 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801B1770 001AE6D0 EC 22 08 28 */ fsubs f1, f2, f1 +/* 801B1774 001AE6D4 D0 03 00 1C */ stfs f0, 0x1c(r3) +/* 801B1778 001AE6D8 D0 63 00 20 */ stfs f3, 0x20(r3) +/* 801B177C 001AE6DC D0 23 00 24 */ stfs f1, 0x24(r3) +/* 801B1780 001AE6E0 48 00 00 64 */ b lbl_801B17E4 +lbl_801B1784: +/* 801B1784 001AE6E4 C0 22 A8 DC */ lfs f1, lbl_805AC5FC@sda21(r2) +/* 801B1788 001AE6E8 C0 5E 08 1C */ lfs f2, 0x81c(r30) +/* 801B178C 001AE6EC C0 7E 05 70 */ lfs f3, 0x570(r30) +/* 801B1790 001AE6F0 4B FF D1 BD */ bl sub_801ae94c +/* 801B1794 001AE6F4 88 7E 08 E4 */ lbz r3, 0x8e4(r30) +/* 801B1798 001AE6F8 38 00 00 00 */ li r0, 0 +/* 801B179C 001AE6FC 50 03 2E B4 */ rlwimi r3, r0, 5, 0x1a, 0x1a +/* 801B17A0 001AE700 38 00 00 03 */ li r0, 3 +/* 801B17A4 001AE704 98 7E 08 E4 */ stb r3, 0x8e4(r30) +/* 801B17A8 001AE708 7F E4 FB 78 */ mr r4, r31 +/* 801B17AC 001AE70C 38 A0 00 01 */ li r5, 1 +/* 801B17B0 001AE710 90 1E 07 80 */ stw r0, 0x780(r30) +/* 801B17B4 001AE714 80 7E 07 9C */ lwz r3, 0x79c(r30) +/* 801B17B8 001AE718 4B FF 5B 41 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb +/* 801B17BC 001AE71C 80 7E 07 A0 */ lwz r3, 0x7a0(r30) +/* 801B17C0 001AE720 7F E4 FB 78 */ mr r4, r31 +/* 801B17C4 001AE724 38 A0 00 01 */ li r5, 1 +/* 801B17C8 001AE728 4B FF 5B 31 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb +/* 801B17CC 001AE72C 88 1E 08 E4 */ lbz r0, 0x8e4(r30) +/* 801B17D0 001AE730 38 60 00 00 */ li r3, 0 +/* 801B17D4 001AE734 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801B17D8 001AE738 98 1E 08 E4 */ stb r0, 0x8e4(r30) +/* 801B17DC 001AE73C 80 0D A4 98 */ lwz r0, lbl_805A9058@sda21(r13) +/* 801B17E0 001AE740 90 1E 04 30 */ stw r0, 0x430(r30) +lbl_801B17E4: +/* 801B17E4 001AE744 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801B17E8 001AE748 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 801B17EC 001AE74C 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 801B17F0 001AE750 7C 08 03 A6 */ mtlr r0 +/* 801B17F4 001AE754 38 21 00 60 */ addi r1, r1, 0x60 +/* 801B17F8 001AE758 4E 80 00 20 */ blr + +.global Generate__9CFlaahgraFR13CStateManager9EStateMsgf +Generate__9CFlaahgraFR13CStateManager9EStateMsgf: +/* 801B17FC 001AE75C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801B1800 001AE760 7C 08 02 A6 */ mflr r0 +/* 801B1804 001AE764 2C 05 00 01 */ cmpwi r5, 1 +/* 801B1808 001AE768 90 01 00 34 */ stw r0, 0x34(r1) +/* 801B180C 001AE76C 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801B1810 001AE770 7C 7F 1B 78 */ mr r31, r3 +/* 801B1814 001AE774 41 82 00 2C */ beq lbl_801B1840 +/* 801B1818 001AE778 40 80 00 10 */ bge lbl_801B1828 +/* 801B181C 001AE77C 2C 05 00 00 */ cmpwi r5, 0 +/* 801B1820 001AE780 40 80 00 14 */ bge lbl_801B1834 +/* 801B1824 001AE784 48 00 01 64 */ b lbl_801B1988 +lbl_801B1828: +/* 801B1828 001AE788 2C 05 00 03 */ cmpwi r5, 3 +/* 801B182C 001AE78C 40 80 01 5C */ bge lbl_801B1988 +/* 801B1830 001AE790 48 00 01 44 */ b lbl_801B1974 +lbl_801B1834: +/* 801B1834 001AE794 38 00 00 00 */ li r0, 0 +/* 801B1838 001AE798 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801B183C 001AE79C 48 00 01 4C */ b lbl_801B1988 +lbl_801B1840: +/* 801B1840 001AE7A0 80 1F 05 68 */ lwz r0, 0x568(r31) +/* 801B1844 001AE7A4 2C 00 00 01 */ cmpwi r0, 1 +/* 801B1848 001AE7A8 41 82 01 40 */ beq lbl_801B1988 +/* 801B184C 001AE7AC 40 80 00 10 */ bge lbl_801B185C +/* 801B1850 001AE7B0 2C 00 00 00 */ cmpwi r0, 0 +/* 801B1854 001AE7B4 40 80 00 14 */ bge lbl_801B1868 +/* 801B1858 001AE7B8 48 00 01 30 */ b lbl_801B1988 +lbl_801B185C: +/* 801B185C 001AE7BC 2C 00 00 03 */ cmpwi r0, 3 +/* 801B1860 001AE7C0 40 80 01 28 */ bge lbl_801B1988 +/* 801B1864 001AE7C4 48 00 00 F4 */ b lbl_801B1958 +lbl_801B1868: +/* 801B1868 001AE7C8 81 5F 04 50 */ lwz r10, 0x450(r31) +/* 801B186C 001AE7CC 80 0A 02 B8 */ lwz r0, 0x2b8(r10) +/* 801B1870 001AE7D0 2C 00 00 0C */ cmpwi r0, 0xc +/* 801B1874 001AE7D4 40 82 00 1C */ bne lbl_801B1890 +/* 801B1878 001AE7D8 38 00 00 02 */ li r0, 2 +/* 801B187C 001AE7DC 38 80 00 01 */ li r4, 1 +/* 801B1880 001AE7E0 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801B1884 001AE7E4 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801B1888 001AE7E8 4B F8 91 51 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 801B188C 001AE7EC 48 00 00 FC */ b lbl_801B1988 +lbl_801B1890: +/* 801B1890 001AE7F0 3C A0 80 3E */ lis r5, lbl_803DAA68@ha +/* 801B1894 001AE7F4 38 C0 00 00 */ li r6, 0 +/* 801B1898 001AE7F8 39 25 AA 68 */ addi r9, r5, lbl_803DAA68@l +/* 801B189C 001AE7FC 80 61 00 24 */ lwz r3, 0x24(r1) +/* 801B18A0 001AE800 50 C3 F8 00 */ rlwimi r3, r6, 0x1f, 0, 0 +/* 801B18A4 001AE804 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801B18A8 001AE808 C4 44 66 A0 */ lfsu f2, skZero3f@l(r4) +/* 801B18AC 001AE80C 3C E0 80 3E */ lis r7, lbl_803DA9F0@ha +/* 801B18B0 001AE810 7C 60 1B 78 */ mr r0, r3 +/* 801B18B4 001AE814 39 00 00 0E */ li r8, 0xe +/* 801B18B8 001AE818 C0 24 00 04 */ lfs f1, 4(r4) +/* 801B18BC 001AE81C 38 A0 FF FF */ li r5, -1 +/* 801B18C0 001AE820 C0 04 00 08 */ lfs f0, 8(r4) +/* 801B18C4 001AE824 38 E7 A9 F0 */ addi r7, r7, lbl_803DA9F0@l +/* 801B18C8 001AE828 91 21 00 08 */ stw r9, 8(r1) +/* 801B18CC 001AE82C 50 C0 F0 42 */ rlwimi r0, r6, 0x1e, 1, 1 +/* 801B18D0 001AE830 3B EA 00 04 */ addi r31, r10, 4 +/* 801B18D4 001AE834 38 80 00 0E */ li r4, 0xe +/* 801B18D8 001AE838 90 61 00 24 */ stw r3, 0x24(r1) +/* 801B18DC 001AE83C 7F E3 FB 78 */ mr r3, r31 +/* 801B18E0 001AE840 91 01 00 0C */ stw r8, 0xc(r1) +/* 801B18E4 001AE844 90 E1 00 08 */ stw r7, 8(r1) +/* 801B18E8 001AE848 90 C1 00 10 */ stw r6, 0x10(r1) +/* 801B18EC 001AE84C D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801B18F0 001AE850 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801B18F4 001AE854 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801B18F8 001AE858 90 A1 00 20 */ stw r5, 0x20(r1) +/* 801B18FC 001AE85C 90 01 00 24 */ stw r0, 0x24(r1) +/* 801B1900 001AE860 4B F7 FB 39 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801B1904 001AE864 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801B1908 001AE868 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha +/* 801B190C 001AE86C 38 83 A9 F0 */ addi r4, r3, lbl_803DA9F0@l +/* 801B1910 001AE870 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B1914 001AE874 90 1F 01 90 */ stw r0, 0x190(r31) +/* 801B1918 001AE878 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801B191C 001AE87C 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 801B1920 001AE880 80 61 00 14 */ lwz r3, 0x14(r1) +/* 801B1924 001AE884 90 BF 01 94 */ stw r5, 0x194(r31) +/* 801B1928 001AE888 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 801B192C 001AE88C 90 7F 01 98 */ stw r3, 0x198(r31) +/* 801B1930 001AE890 80 61 00 1C */ lwz r3, 0x1c(r1) +/* 801B1934 001AE894 90 BF 01 9C */ stw r5, 0x19c(r31) +/* 801B1938 001AE898 80 A1 00 20 */ lwz r5, 0x20(r1) +/* 801B193C 001AE89C 90 7F 01 A0 */ stw r3, 0x1a0(r31) +/* 801B1940 001AE8A0 80 61 00 24 */ lwz r3, 0x24(r1) +/* 801B1944 001AE8A4 90 BF 01 A4 */ stw r5, 0x1a4(r31) +/* 801B1948 001AE8A8 90 81 00 08 */ stw r4, 8(r1) +/* 801B194C 001AE8AC 90 7F 01 A8 */ stw r3, 0x1a8(r31) +/* 801B1950 001AE8B0 90 01 00 08 */ stw r0, 8(r1) +/* 801B1954 001AE8B4 48 00 00 34 */ b lbl_801B1988 +lbl_801B1958: +/* 801B1958 001AE8B8 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801B195C 001AE8BC 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801B1960 001AE8C0 2C 00 00 0C */ cmpwi r0, 0xc +/* 801B1964 001AE8C4 41 82 00 24 */ beq lbl_801B1988 +/* 801B1968 001AE8C8 38 00 00 04 */ li r0, 4 +/* 801B196C 001AE8CC 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801B1970 001AE8D0 48 00 00 18 */ b lbl_801B1988 +lbl_801B1974: +/* 801B1974 001AE8D4 80 7F 07 A4 */ lwz r3, 0x7a4(r31) +/* 801B1978 001AE8D8 38 A0 00 01 */ li r5, 1 +/* 801B197C 001AE8DC 4B FF 59 7D */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb +/* 801B1980 001AE8E0 C0 02 A9 10 */ lfs f0, lbl_805AC630@sda21(r2) +/* 801B1984 001AE8E4 D0 1F 07 C0 */ stfs f0, 0x7c0(r31) +lbl_801B1988: +/* 801B1988 001AE8E8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801B198C 001AE8EC 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801B1990 001AE8F0 7C 08 03 A6 */ mtlr r0 +/* 801B1994 001AE8F4 38 21 00 30 */ addi r1, r1, 0x30 +/* 801B1998 001AE8F8 4E 80 00 20 */ blr + +.global Enraged__9CFlaahgraFR13CStateManager9EStateMsgf +Enraged__9CFlaahgraFR13CStateManager9EStateMsgf: +/* 801B199C 001AE8FC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801B19A0 001AE900 7C 08 02 A6 */ mflr r0 +/* 801B19A4 001AE904 2C 05 00 01 */ cmpwi r5, 1 +/* 801B19A8 001AE908 90 01 00 24 */ stw r0, 0x24(r1) +/* 801B19AC 001AE90C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801B19B0 001AE910 41 82 00 2C */ beq lbl_801B19DC +/* 801B19B4 001AE914 40 80 00 10 */ bge lbl_801B19C4 +/* 801B19B8 001AE918 2C 05 00 00 */ cmpwi r5, 0 +/* 801B19BC 001AE91C 40 80 00 14 */ bge lbl_801B19D0 +/* 801B19C0 001AE920 48 00 00 E8 */ b lbl_801B1AA8 +lbl_801B19C4: +/* 801B19C4 001AE924 2C 05 00 03 */ cmpwi r5, 3 +/* 801B19C8 001AE928 40 80 00 E0 */ bge lbl_801B1AA8 +/* 801B19CC 001AE92C 48 00 00 D4 */ b lbl_801B1AA0 +lbl_801B19D0: +/* 801B19D0 001AE930 38 00 00 00 */ li r0, 0 +/* 801B19D4 001AE934 90 03 05 68 */ stw r0, 0x568(r3) +/* 801B19D8 001AE938 48 00 00 D0 */ b lbl_801B1AA8 +lbl_801B19DC: +/* 801B19DC 001AE93C 80 03 05 68 */ lwz r0, 0x568(r3) +/* 801B19E0 001AE940 2C 00 00 01 */ cmpwi r0, 1 +/* 801B19E4 001AE944 41 82 00 C4 */ beq lbl_801B1AA8 +/* 801B19E8 001AE948 40 80 00 10 */ bge lbl_801B19F8 +/* 801B19EC 001AE94C 2C 00 00 00 */ cmpwi r0, 0 +/* 801B19F0 001AE950 40 80 00 14 */ bge lbl_801B1A04 +/* 801B19F4 001AE954 48 00 00 B4 */ b lbl_801B1AA8 +lbl_801B19F8: +/* 801B19F8 001AE958 2C 00 00 03 */ cmpwi r0, 3 +/* 801B19FC 001AE95C 40 80 00 AC */ bge lbl_801B1AA8 +/* 801B1A00 001AE960 48 00 00 84 */ b lbl_801B1A84 +lbl_801B1A04: +/* 801B1A04 001AE964 80 C3 04 50 */ lwz r6, 0x450(r3) +/* 801B1A08 001AE968 80 06 02 B8 */ lwz r0, 0x2b8(r6) +/* 801B1A0C 001AE96C 2C 00 00 10 */ cmpwi r0, 0x10 +/* 801B1A10 001AE970 40 82 00 10 */ bne lbl_801B1A20 +/* 801B1A14 001AE974 38 00 00 02 */ li r0, 2 +/* 801B1A18 001AE978 90 03 05 68 */ stw r0, 0x568(r3) +/* 801B1A1C 001AE97C 48 00 00 8C */ b lbl_801B1AA8 +lbl_801B1A20: +/* 801B1A20 001AE980 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 801B1A24 001AE984 3C 60 80 3E */ lis r3, lbl_803DAA14@ha +/* 801B1A28 001AE988 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l +/* 801B1A2C 001AE98C 38 80 00 12 */ li r4, 0x12 +/* 801B1A30 001AE990 90 01 00 08 */ stw r0, 8(r1) +/* 801B1A34 001AE994 38 A3 AA 14 */ addi r5, r3, lbl_803DAA14@l +/* 801B1A38 001AE998 38 00 00 00 */ li r0, 0 +/* 801B1A3C 001AE99C 3B E6 00 04 */ addi r31, r6, 4 +/* 801B1A40 001AE9A0 90 81 00 0C */ stw r4, 0xc(r1) +/* 801B1A44 001AE9A4 7F E3 FB 78 */ mr r3, r31 +/* 801B1A48 001AE9A8 38 80 00 12 */ li r4, 0x12 +/* 801B1A4C 001AE9AC 90 A1 00 08 */ stw r5, 8(r1) +/* 801B1A50 001AE9B0 90 01 00 10 */ stw r0, 0x10(r1) +/* 801B1A54 001AE9B4 4B F7 F9 E5 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801B1A58 001AE9B8 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801B1A5C 001AE9BC 3C 60 80 3E */ lis r3, lbl_803DAA14@ha +/* 801B1A60 001AE9C0 38 83 AA 14 */ addi r4, r3, lbl_803DAA14@l +/* 801B1A64 001AE9C4 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B1A68 001AE9C8 90 1F 02 14 */ stw r0, 0x214(r31) +/* 801B1A6C 001AE9CC 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801B1A70 001AE9D0 80 61 00 10 */ lwz r3, 0x10(r1) +/* 801B1A74 001AE9D4 90 81 00 08 */ stw r4, 8(r1) +/* 801B1A78 001AE9D8 90 7F 02 18 */ stw r3, 0x218(r31) +/* 801B1A7C 001AE9DC 90 01 00 08 */ stw r0, 8(r1) +/* 801B1A80 001AE9E0 48 00 00 28 */ b lbl_801B1AA8 +lbl_801B1A84: +/* 801B1A84 001AE9E4 80 83 04 50 */ lwz r4, 0x450(r3) +/* 801B1A88 001AE9E8 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 801B1A8C 001AE9EC 2C 00 00 10 */ cmpwi r0, 0x10 +/* 801B1A90 001AE9F0 41 82 00 18 */ beq lbl_801B1AA8 +/* 801B1A94 001AE9F4 38 00 00 04 */ li r0, 4 +/* 801B1A98 001AE9F8 90 03 05 68 */ stw r0, 0x568(r3) +/* 801B1A9C 001AE9FC 48 00 00 0C */ b lbl_801B1AA8 +lbl_801B1AA0: +/* 801B1AA0 001AEA00 C0 02 A8 BC */ lfs f0, lbl_805AC5DC@sda21(r2) +/* 801B1AA4 001AEA04 D0 03 07 D0 */ stfs f0, 0x7d0(r3) +lbl_801B1AA8: +/* 801B1AA8 001AEA08 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801B1AAC 001AEA0C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801B1AB0 001AEA10 7C 08 03 A6 */ mtlr r0 +/* 801B1AB4 001AEA14 38 21 00 20 */ addi r1, r1, 0x20 +/* 801B1AB8 001AEA18 4E 80 00 20 */ blr + +.global FadeIn__9CFlaahgraFR13CStateManager9EStateMsgf +FadeIn__9CFlaahgraFR13CStateManager9EStateMsgf: +/* 801B1ABC 001AEA1C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B1AC0 001AEA20 7C 08 02 A6 */ mflr r0 +/* 801B1AC4 001AEA24 2C 05 00 00 */ cmpwi r5, 0 +/* 801B1AC8 001AEA28 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B1ACC 001AEA2C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801B1AD0 001AEA30 7C 9F 23 78 */ mr r31, r4 +/* 801B1AD4 001AEA34 93 C1 00 08 */ stw r30, 8(r1) +/* 801B1AD8 001AEA38 7C 7E 1B 78 */ mr r30, r3 +/* 801B1ADC 001AEA3C 40 82 00 58 */ bne lbl_801B1B34 +/* 801B1AE0 001AEA40 81 83 00 00 */ lwz r12, 0(r3) +/* 801B1AE4 001AEA44 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801B1AE8 001AEA48 7D 89 03 A6 */ mtctr r12 +/* 801B1AEC 001AEA4C 4E 80 04 21 */ bctrl +/* 801B1AF0 001AEA50 C0 23 00 00 */ lfs f1, 0(r3) +/* 801B1AF4 001AEA54 C0 02 A8 BC */ lfs f0, lbl_805AC5DC@sda21(r2) +/* 801B1AF8 001AEA58 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B1AFC 001AEA5C 40 81 00 18 */ ble lbl_801B1B14 +/* 801B1B00 001AEA60 7F C3 F3 78 */ mr r3, r30 +/* 801B1B04 001AEA64 7F E5 FB 78 */ mr r5, r31 +/* 801B1B08 001AEA68 38 80 00 04 */ li r4, 4 +/* 801B1B0C 001AEA6C 38 C0 FF FF */ li r6, -1 +/* 801B1B10 001AEA70 4B E9 F5 B1 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +lbl_801B1B14: +/* 801B1B14 001AEA74 88 1E 08 E4 */ lbz r0, 0x8e4(r30) +/* 801B1B18 001AEA78 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 801B1B1C 001AEA7C 40 82 00 18 */ bne lbl_801B1B34 +/* 801B1B20 001AEA80 7F C3 F3 78 */ mr r3, r30 +/* 801B1B24 001AEA84 7F E5 FB 78 */ mr r5, r31 +/* 801B1B28 001AEA88 38 80 00 0B */ li r4, 0xb +/* 801B1B2C 001AEA8C 38 C0 FF FF */ li r6, -1 +/* 801B1B30 001AEA90 4B E9 F5 91 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +lbl_801B1B34: +/* 801B1B34 001AEA94 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B1B38 001AEA98 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801B1B3C 001AEA9C 83 C1 00 08 */ lwz r30, 8(r1) +/* 801B1B40 001AEAA0 7C 08 03 A6 */ mtlr r0 +/* 801B1B44 001AEAA4 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B1B48 001AEAA8 4E 80 00 20 */ blr + +.global FadeOut__9CFlaahgraFR13CStateManager9EStateMsgf +FadeOut__9CFlaahgraFR13CStateManager9EStateMsgf: +/* 801B1B4C 001AEAAC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801B1B50 001AEAB0 7C 08 02 A6 */ mflr r0 +/* 801B1B54 001AEAB4 2C 05 00 00 */ cmpwi r5, 0 +/* 801B1B58 001AEAB8 90 01 00 34 */ stw r0, 0x34(r1) +/* 801B1B5C 001AEABC 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801B1B60 001AEAC0 7C 7F 1B 78 */ mr r31, r3 +/* 801B1B64 001AEAC4 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801B1B68 001AEAC8 7C 9E 23 78 */ mr r30, r4 +/* 801B1B6C 001AEACC 40 82 00 F4 */ bne lbl_801B1C60 +/* 801B1B70 001AEAD0 80 7F 07 A4 */ lwz r3, 0x7a4(r31) +/* 801B1B74 001AEAD4 38 A0 00 01 */ li r5, 1 +/* 801B1B78 001AEAD8 4B FF 57 81 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb +/* 801B1B7C 001AEADC 80 7F 07 9C */ lwz r3, 0x79c(r31) +/* 801B1B80 001AEAE0 7F C4 F3 78 */ mr r4, r30 +/* 801B1B84 001AEAE4 38 A0 00 01 */ li r5, 1 +/* 801B1B88 001AEAE8 4B FF 57 71 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb +/* 801B1B8C 001AEAEC 80 7F 07 A0 */ lwz r3, 0x7a0(r31) +/* 801B1B90 001AEAF0 7F C4 F3 78 */ mr r4, r30 +/* 801B1B94 001AEAF4 38 A0 00 01 */ li r5, 1 +/* 801B1B98 001AEAF8 4B FF 57 61 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb +/* 801B1B9C 001AEAFC 80 1F 07 80 */ lwz r0, 0x780(r31) +/* 801B1BA0 001AEB00 7F E3 FB 78 */ mr r3, r31 +/* 801B1BA4 001AEB04 C0 22 A8 DC */ lfs f1, lbl_805AC5FC@sda21(r2) +/* 801B1BA8 001AEB08 90 1F 07 84 */ stw r0, 0x784(r31) +/* 801B1BAC 001AEB0C 80 9F 00 64 */ lwz r4, 0x64(r31) +/* 801B1BB0 001AEB10 C0 64 00 00 */ lfs f3, 0(r4) +/* 801B1BB4 001AEB14 C0 44 00 04 */ lfs f2, 4(r4) +/* 801B1BB8 001AEB18 C0 04 00 08 */ lfs f0, 8(r4) +/* 801B1BBC 001AEB1C D0 61 00 10 */ stfs f3, 0x10(r1) +/* 801B1BC0 001AEB20 D0 1F 08 1C */ stfs f0, 0x81c(r31) +/* 801B1BC4 001AEB24 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801B1BC8 001AEB28 C0 5F 08 1C */ lfs f2, 0x81c(r31) +/* 801B1BCC 001AEB2C D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801B1BD0 001AEB30 C0 7F 05 70 */ lfs f3, 0x570(r31) +/* 801B1BD4 001AEB34 4B FF CD 79 */ bl sub_801ae94c +/* 801B1BD8 001AEB38 88 1F 08 E4 */ lbz r0, 0x8e4(r31) +/* 801B1BDC 001AEB3C 38 C0 00 00 */ li r6, 0 +/* 801B1BE0 001AEB40 50 C0 2E B4 */ rlwimi r0, r6, 5, 0x1a, 0x1a +/* 801B1BE4 001AEB44 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B1BE8 001AEB48 98 1F 08 E4 */ stb r0, 0x8e4(r31) +/* 801B1BEC 001AEB4C 38 A0 00 03 */ li r5, 3 +/* 801B1BF0 001AEB50 C0 02 A8 C4 */ lfs f0, lbl_805AC5E4@sda21(r2) +/* 801B1BF4 001AEB54 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l +/* 801B1BF8 001AEB58 38 00 00 0C */ li r0, 0xc +/* 801B1BFC 001AEB5C 38 81 00 08 */ addi r4, r1, 8 +/* 801B1C00 001AEB60 D0 1F 07 C0 */ stfs f0, 0x7c0(r31) +/* 801B1C04 001AEB64 90 BF 07 80 */ stw r5, 0x780(r31) +/* 801B1C08 001AEB68 88 BF 08 E4 */ lbz r5, 0x8e4(r31) +/* 801B1C0C 001AEB6C 50 C5 17 7A */ rlwimi r5, r6, 2, 0x1d, 0x1d +/* 801B1C10 001AEB70 98 BF 08 E4 */ stb r5, 0x8e4(r31) +/* 801B1C14 001AEB74 80 AD A4 98 */ lwz r5, lbl_805A9058@sda21(r13) +/* 801B1C18 001AEB78 90 BF 04 30 */ stw r5, 0x430(r31) +/* 801B1C1C 001AEB7C 90 61 00 08 */ stw r3, 8(r1) +/* 801B1C20 001AEB80 90 01 00 0C */ stw r0, 0xc(r1) +/* 801B1C24 001AEB84 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801B1C28 001AEB88 38 63 00 04 */ addi r3, r3, 4 +/* 801B1C2C 001AEB8C 4B F7 FB 8D */ bl DeliverCmd__16CBodyStateCmdMgrFRC13CBodyStateCmd +/* 801B1C30 001AEB90 34 01 00 08 */ addic. r0, r1, 8 +/* 801B1C34 001AEB94 41 82 00 10 */ beq lbl_801B1C44 +/* 801B1C38 001AEB98 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B1C3C 001AEB9C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801B1C40 001AEBA0 90 01 00 08 */ stw r0, 8(r1) +lbl_801B1C44: +/* 801B1C44 001AEBA4 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801B1C48 001AEBA8 38 80 00 01 */ li r4, 1 +/* 801B1C4C 001AEBAC 4B F8 8D 8D */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 801B1C50 001AEBB0 88 1F 08 E5 */ lbz r0, 0x8e5(r31) +/* 801B1C54 001AEBB4 38 60 00 00 */ li r3, 0 +/* 801B1C58 001AEBB8 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801B1C5C 001AEBBC 98 1F 08 E5 */ stb r0, 0x8e5(r31) +lbl_801B1C60: +/* 801B1C60 001AEBC0 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801B1C64 001AEBC4 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801B1C68 001AEBC8 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801B1C6C 001AEBCC 7C 08 03 A6 */ mtlr r0 +/* 801B1C70 001AEBD0 38 21 00 30 */ addi r1, r1, 0x30 +/* 801B1C74 001AEBD4 4E 80 00 20 */ blr + +.global sub_801b1c78 +sub_801b1c78: +/* 801B1C78 001AEBD8 80 03 05 68 */ lwz r0, 0x568(r3) +/* 801B1C7C 001AEBDC 20 00 00 04 */ subfic r0, r0, 4 +/* 801B1C80 001AEBE0 7C 00 00 34 */ cntlzw r0, r0 +/* 801B1C84 001AEBE4 54 03 D9 7E */ srwi r3, r0, 5 +/* 801B1C88 001AEBE8 4E 80 00 20 */ blr + +.global CoverCheck__9CFlaahgraFR13CStateManagerf +CoverCheck__9CFlaahgraFR13CStateManagerf: +/* 801B1C8C 001AEBEC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801B1C90 001AEBF0 7C 08 02 A6 */ mflr r0 +/* 801B1C94 001AEBF4 90 01 00 24 */ stw r0, 0x24(r1) +/* 801B1C98 001AEBF8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801B1C9C 001AEBFC 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801B1CA0 001AEC00 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801B1CA4 001AEC04 7C 9D 23 78 */ mr r29, r4 +/* 801B1CA8 001AEC08 93 81 00 10 */ stw r28, 0x10(r1) +/* 801B1CAC 001AEC0C 7C 7C 1B 78 */ mr r28, r3 +/* 801B1CB0 001AEC10 80 03 07 F8 */ lwz r0, 0x7f8(r3) +/* 801B1CB4 001AEC14 2C 00 00 00 */ cmpwi r0, 0 +/* 801B1CB8 001AEC18 41 81 00 18 */ bgt lbl_801B1CD0 +/* 801B1CBC 001AEC1C C0 3C 07 BC */ lfs f1, 0x7bc(r28) +/* 801B1CC0 001AEC20 C0 02 A8 BC */ lfs f0, lbl_805AC5DC@sda21(r2) +/* 801B1CC4 001AEC24 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B1CC8 001AEC28 4C 40 13 82 */ cror 2, 0, 2 +/* 801B1CCC 001AEC2C 40 82 00 58 */ bne lbl_801B1D24 +lbl_801B1CD0: +/* 801B1CD0 001AEC30 3B FC 07 74 */ addi r31, r28, 0x774 +/* 801B1CD4 001AEC34 7F FE FB 78 */ mr r30, r31 +/* 801B1CD8 001AEC38 48 00 00 38 */ b lbl_801B1D10 +lbl_801B1CDC: +/* 801B1CDC 001AEC3C A0 1E 00 00 */ lhz r0, 0(r30) +/* 801B1CE0 001AEC40 7F A3 EB 78 */ mr r3, r29 +/* 801B1CE4 001AEC44 38 81 00 08 */ addi r4, r1, 8 +/* 801B1CE8 001AEC48 B0 01 00 08 */ sth r0, 8(r1) +/* 801B1CEC 001AEC4C 4B E9 A8 B9 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801B1CF0 001AEC50 28 03 00 00 */ cmplwi r3, 0 +/* 801B1CF4 001AEC54 41 82 00 18 */ beq lbl_801B1D0C +/* 801B1CF8 001AEC58 88 03 00 30 */ lbz r0, 0x30(r3) +/* 801B1CFC 001AEC5C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801B1D00 001AEC60 41 82 00 0C */ beq lbl_801B1D0C +/* 801B1D04 001AEC64 38 60 00 01 */ li r3, 1 +/* 801B1D08 001AEC68 48 00 00 20 */ b lbl_801B1D28 +lbl_801B1D0C: +/* 801B1D0C 001AEC6C 3B DE 00 02 */ addi r30, r30, 2 +lbl_801B1D10: +/* 801B1D10 001AEC70 80 1C 07 70 */ lwz r0, 0x770(r28) +/* 801B1D14 001AEC74 54 00 08 3C */ slwi r0, r0, 1 +/* 801B1D18 001AEC78 7C 1F 02 14 */ add r0, r31, r0 +/* 801B1D1C 001AEC7C 7C 1E 00 40 */ cmplw r30, r0 +/* 801B1D20 001AEC80 40 82 FF BC */ bne lbl_801B1CDC +lbl_801B1D24: +/* 801B1D24 001AEC84 38 60 00 00 */ li r3, 0 +lbl_801B1D28: +/* 801B1D28 001AEC88 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801B1D2C 001AEC8C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801B1D30 001AEC90 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801B1D34 001AEC94 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801B1D38 001AEC98 83 81 00 10 */ lwz r28, 0x10(r1) +/* 801B1D3C 001AEC9C 7C 08 03 A6 */ mtlr r0 +/* 801B1D40 001AECA0 38 21 00 20 */ addi r1, r1, 0x20 +/* 801B1D44 001AECA4 4E 80 00 20 */ blr + +.global IsDizzy__9CFlaahgraFR13CStateManagerf +IsDizzy__9CFlaahgraFR13CStateManagerf: +/* 801B1D48 001AECA8 80 63 04 50 */ lwz r3, 0x450(r3) +/* 801B1D4C 001AECAC 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801B1D50 001AECB0 20 00 00 0A */ subfic r0, r0, 0xa +/* 801B1D54 001AECB4 7C 00 00 34 */ cntlzw r0, r0 +/* 801B1D58 001AECB8 54 03 D9 7E */ srwi r3, r0, 5 +/* 801B1D5C 001AECBC 4E 80 00 20 */ blr + +.global BreakAttack__9CFlaahgraFR13CStateManagerf +BreakAttack__9CFlaahgraFR13CStateManagerf: +/* 801B1D60 001AECC0 C0 23 07 D4 */ lfs f1, 0x7d4(r3) +/* 801B1D64 001AECC4 38 80 00 00 */ li r4, 0 +/* 801B1D68 001AECC8 C0 03 05 78 */ lfs f0, 0x578(r3) +/* 801B1D6C 001AECCC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B1D70 001AECD0 4C 41 13 82 */ cror 2, 1, 2 +/* 801B1D74 001AECD4 40 82 00 14 */ bne lbl_801B1D88 +/* 801B1D78 001AECD8 88 03 08 E4 */ lbz r0, 0x8e4(r3) +/* 801B1D7C 001AECDC 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 801B1D80 001AECE0 40 82 00 08 */ bne lbl_801B1D88 +/* 801B1D84 001AECE4 38 80 00 01 */ li r4, 1 +lbl_801B1D88: +/* 801B1D88 001AECE8 7C 83 23 78 */ mr r3, r4 +/* 801B1D8C 001AECEC 4E 80 00 20 */ blr + +.global ShouldFire__9CFlaahgraFR13CStateManagerf +ShouldFire__9CFlaahgraFR13CStateManagerf: +/* 801B1D90 001AECF0 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801B1D94 001AECF4 7C 08 02 A6 */ mflr r0 +/* 801B1D98 001AECF8 C0 02 A8 BC */ lfs f0, lbl_805AC5DC@sda21(r2) +/* 801B1D9C 001AECFC 90 01 00 44 */ stw r0, 0x44(r1) +/* 801B1DA0 001AED00 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801B1DA4 001AED04 7C 7F 1B 78 */ mr r31, r3 +/* 801B1DA8 001AED08 C0 23 07 C0 */ lfs f1, 0x7c0(r3) +/* 801B1DAC 001AED0C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B1DB0 001AED10 4C 40 13 82 */ cror 2, 0, 2 +/* 801B1DB4 001AED14 40 82 00 94 */ bne lbl_801B1E48 +/* 801B1DB8 001AED18 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 801B1DBC 001AED1C 88 04 09 C4 */ lbz r0, 0x9c4(r4) +/* 801B1DC0 001AED20 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 801B1DC4 001AED24 40 82 00 84 */ bne lbl_801B1E48 +/* 801B1DC8 001AED28 C0 64 00 40 */ lfs f3, 0x40(r4) +/* 801B1DCC 001AED2C 38 61 00 10 */ addi r3, r1, 0x10 +/* 801B1DD0 001AED30 C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 801B1DD4 001AED34 C0 44 00 50 */ lfs f2, 0x50(r4) +/* 801B1DD8 001AED38 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 801B1DDC 001AED3C EC 23 08 28 */ fsubs f1, f3, f1 +/* 801B1DE0 001AED40 EC 42 00 28 */ fsubs f2, f2, f0 +/* 801B1DE4 001AED44 48 16 24 1D */ bl __ct__9CVector2fFff +/* 801B1DE8 001AED48 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 801B1DEC 001AED4C 38 61 00 08 */ addi r3, r1, 8 +/* 801B1DF0 001AED50 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 801B1DF4 001AED54 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 801B1DF8 001AED58 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801B1DFC 001AED5C C0 5F 00 48 */ lfs f2, 0x48(r31) +/* 801B1E00 001AED60 C0 3F 00 38 */ lfs f1, 0x38(r31) +/* 801B1E04 001AED64 C0 1F 00 58 */ lfs f0, 0x58(r31) +/* 801B1E08 001AED68 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 801B1E0C 001AED6C D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 801B1E10 001AED70 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801B1E14 001AED74 48 16 23 ED */ bl __ct__9CVector2fFff +/* 801B1E18 001AED78 C0 21 00 08 */ lfs f1, 8(r1) +/* 801B1E1C 001AED7C 38 61 00 18 */ addi r3, r1, 0x18 +/* 801B1E20 001AED80 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 801B1E24 001AED84 38 81 00 20 */ addi r4, r1, 0x20 +/* 801B1E28 001AED88 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801B1E2C 001AED8C D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801B1E30 001AED90 48 16 21 95 */ bl GetAngleDiff__9CVector2fFRC9CVector2fRC9CVector2f +/* 801B1E34 001AED94 C0 02 A9 14 */ lfs f0, lbl_805AC634@sda21(r2) +/* 801B1E38 001AED98 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B1E3C 001AED9C 7C 00 00 26 */ mfcr r0 +/* 801B1E40 001AEDA0 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801B1E44 001AEDA4 48 00 00 08 */ b lbl_801B1E4C +lbl_801B1E48: +/* 801B1E48 001AEDA8 38 60 00 00 */ li r3, 0 +lbl_801B1E4C: +/* 801B1E4C 001AEDAC 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801B1E50 001AEDB0 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801B1E54 001AEDB4 7C 08 03 A6 */ mtlr r0 +/* 801B1E58 001AEDB8 38 21 00 40 */ addi r1, r1, 0x40 +/* 801B1E5C 001AEDBC 4E 80 00 20 */ blr + +.global ShouldSpecialAttack__9CFlaahgraFR13CStateManagerf +ShouldSpecialAttack__9CFlaahgraFR13CStateManagerf: +/* 801B1E60 001AEDC0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B1E64 001AEDC4 7C 08 02 A6 */ mflr r0 +/* 801B1E68 001AEDC8 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B1E6C 001AEDCC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801B1E70 001AEDD0 7C 7F 1B 78 */ mr r31, r3 +/* 801B1E74 001AEDD4 80 03 07 88 */ lwz r0, 0x788(r3) +/* 801B1E78 001AEDD8 2C 00 00 00 */ cmpwi r0, 0 +/* 801B1E7C 001AEDDC 41 80 00 3C */ blt lbl_801B1EB8 +/* 801B1E80 001AEDE0 2C 00 00 03 */ cmpwi r0, 3 +/* 801B1E84 001AEDE4 41 81 00 34 */ bgt lbl_801B1EB8 +/* 801B1E88 001AEDE8 81 83 00 00 */ lwz r12, 0(r3) +/* 801B1E8C 001AEDEC 81 8C 02 34 */ lwz r12, 0x234(r12) +/* 801B1E90 001AEDF0 7D 89 03 A6 */ mtctr r12 +/* 801B1E94 001AEDF4 4E 80 04 21 */ bctrl +/* 801B1E98 001AEDF8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B1E9C 001AEDFC 41 82 00 1C */ beq lbl_801B1EB8 +/* 801B1EA0 001AEE00 80 1F 07 88 */ lwz r0, 0x788(r31) +/* 801B1EA4 001AEE04 2C 00 00 02 */ cmpwi r0, 2 +/* 801B1EA8 001AEE08 41 80 00 10 */ blt lbl_801B1EB8 +/* 801B1EAC 001AEE0C 88 1F 08 E5 */ lbz r0, 0x8e5(r31) +/* 801B1EB0 001AEE10 54 03 CF FE */ rlwinm r3, r0, 0x19, 0x1f, 0x1f +/* 801B1EB4 001AEE14 48 00 00 08 */ b lbl_801B1EBC +lbl_801B1EB8: +/* 801B1EB8 001AEE18 38 60 00 00 */ li r3, 0 +lbl_801B1EBC: +/* 801B1EBC 001AEE1C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B1EC0 001AEE20 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801B1EC4 001AEE24 7C 08 03 A6 */ mtlr r0 +/* 801B1EC8 001AEE28 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B1ECC 001AEE2C 4E 80 00 20 */ blr + +.global ShouldAttack__9CFlaahgraFR13CStateManagerf +ShouldAttack__9CFlaahgraFR13CStateManagerf: +/* 801B1ED0 001AEE30 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 801B1ED4 001AEE34 7C 08 02 A6 */ mflr r0 +/* 801B1ED8 001AEE38 90 01 00 74 */ stw r0, 0x74(r1) +/* 801B1EDC 001AEE3C DB E1 00 60 */ stfd f31, 0x60(r1) +/* 801B1EE0 001AEE40 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 801B1EE4 001AEE44 DB C1 00 50 */ stfd f30, 0x50(r1) +/* 801B1EE8 001AEE48 F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 +/* 801B1EEC 001AEE4C 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801B1EF0 001AEE50 93 C1 00 48 */ stw r30, 0x48(r1) +/* 801B1EF4 001AEE54 7C 7E 1B 78 */ mr r30, r3 +/* 801B1EF8 001AEE58 80 03 07 88 */ lwz r0, 0x788(r3) +/* 801B1EFC 001AEE5C 2C 00 00 00 */ cmpwi r0, 0 +/* 801B1F00 001AEE60 40 81 01 64 */ ble lbl_801B2064 +/* 801B1F04 001AEE64 2C 00 00 03 */ cmpwi r0, 3 +/* 801B1F08 001AEE68 41 81 01 5C */ bgt lbl_801B2064 +/* 801B1F0C 001AEE6C C0 3E 07 C0 */ lfs f1, 0x7c0(r30) +/* 801B1F10 001AEE70 C0 02 A8 BC */ lfs f0, lbl_805AC5DC@sda21(r2) +/* 801B1F14 001AEE74 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B1F18 001AEE78 4C 40 13 82 */ cror 2, 0, 2 +/* 801B1F1C 001AEE7C 40 82 01 48 */ bne lbl_801B2064 +/* 801B1F20 001AEE80 83 E4 08 4C */ lwz r31, 0x84c(r4) +/* 801B1F24 001AEE84 88 1F 09 C4 */ lbz r0, 0x9c4(r31) +/* 801B1F28 001AEE88 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 801B1F2C 001AEE8C 40 82 01 38 */ bne lbl_801B2064 +/* 801B1F30 001AEE90 88 1E 08 E4 */ lbz r0, 0x8e4(r30) +/* 801B1F34 001AEE94 C0 7F 00 40 */ lfs f3, 0x40(r31) +/* 801B1F38 001AEE98 C0 5E 00 40 */ lfs f2, 0x40(r30) +/* 801B1F3C 001AEE9C 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 801B1F40 001AEEA0 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 801B1F44 001AEEA4 C0 1E 00 50 */ lfs f0, 0x50(r30) +/* 801B1F48 001AEEA8 EF C3 10 28 */ fsubs f30, f3, f2 +/* 801B1F4C 001AEEAC EF E1 00 28 */ fsubs f31, f1, f0 +/* 801B1F50 001AEEB0 40 82 01 14 */ bne lbl_801B2064 +/* 801B1F54 001AEEB4 FC 20 F0 90 */ fmr f1, f30 +/* 801B1F58 001AEEB8 38 61 00 18 */ addi r3, r1, 0x18 +/* 801B1F5C 001AEEBC FC 40 F8 90 */ fmr f2, f31 +/* 801B1F60 001AEEC0 48 16 22 A1 */ bl __ct__9CVector2fFff +/* 801B1F64 001AEEC4 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 801B1F68 001AEEC8 38 61 00 30 */ addi r3, r1, 0x30 +/* 801B1F6C 001AEECC C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 801B1F70 001AEED0 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 801B1F74 001AEED4 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801B1F78 001AEED8 48 16 21 65 */ bl MagSquared__9CVector2fCFv +/* 801B1F7C 001AEEDC C0 1E 02 FC */ lfs f0, 0x2fc(r30) +/* 801B1F80 001AEEE0 C0 5E 03 00 */ lfs f2, 0x300(r30) +/* 801B1F84 001AEEE4 80 1F 02 F8 */ lwz r0, 0x2f8(r31) +/* 801B1F88 001AEEE8 EC 00 00 32 */ fmuls f0, f0, f0 +/* 801B1F8C 001AEEEC EC 42 00 B2 */ fmuls f2, f2, f2 +/* 801B1F90 001AEEF0 2C 00 00 01 */ cmpwi r0, 1 +/* 801B1F94 001AEEF4 41 82 00 1C */ beq lbl_801B1FB0 +/* 801B1F98 001AEEF8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B1F9C 001AEEFC 4C 41 13 82 */ cror 2, 1, 2 +/* 801B1FA0 001AEF00 40 82 00 10 */ bne lbl_801B1FB0 +/* 801B1FA4 001AEF04 FC 01 10 40 */ fcmpo cr0, f1, f2 +/* 801B1FA8 001AEF08 4C 40 13 82 */ cror 2, 0, 2 +/* 801B1FAC 001AEF0C 41 82 00 48 */ beq lbl_801B1FF4 +lbl_801B1FB0: +/* 801B1FB0 001AEF10 C0 3E 07 CC */ lfs f1, 0x7cc(r30) +/* 801B1FB4 001AEF14 C0 02 A8 BC */ lfs f0, lbl_805AC5DC@sda21(r2) +/* 801B1FB8 001AEF18 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B1FBC 001AEF1C 4C 40 13 82 */ cror 2, 0, 2 +/* 801B1FC0 001AEF20 40 82 00 A4 */ bne lbl_801B2064 +/* 801B1FC4 001AEF24 C0 3F 01 38 */ lfs f1, 0x138(r31) +/* 801B1FC8 001AEF28 C0 1F 01 3C */ lfs f0, 0x13c(r31) +/* 801B1FCC 001AEF2C EC 41 00 72 */ fmuls f2, f1, f1 +/* 801B1FD0 001AEF30 C0 7F 01 40 */ lfs f3, 0x140(r31) +/* 801B1FD4 001AEF34 EC 20 00 32 */ fmuls f1, f0, f0 +/* 801B1FD8 001AEF38 C0 02 A8 CC */ lfs f0, lbl_805AC5EC@sda21(r2) +/* 801B1FDC 001AEF3C EC 63 00 F2 */ fmuls f3, f3, f3 +/* 801B1FE0 001AEF40 EC 22 08 2A */ fadds f1, f2, f1 +/* 801B1FE4 001AEF44 EC 23 08 2A */ fadds f1, f3, f1 +/* 801B1FE8 001AEF48 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B1FEC 001AEF4C 4C 41 13 82 */ cror 2, 1, 2 +/* 801B1FF0 001AEF50 40 82 00 74 */ bne lbl_801B2064 +lbl_801B1FF4: +/* 801B1FF4 001AEF54 FC 20 F0 90 */ fmr f1, f30 +/* 801B1FF8 001AEF58 38 61 00 10 */ addi r3, r1, 0x10 +/* 801B1FFC 001AEF5C FC 40 F8 90 */ fmr f2, f31 +/* 801B2000 001AEF60 48 16 22 01 */ bl __ct__9CVector2fFff +/* 801B2004 001AEF64 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 801B2008 001AEF68 38 61 00 08 */ addi r3, r1, 8 +/* 801B200C 001AEF6C C0 01 00 14 */ lfs f0, 0x14(r1) +/* 801B2010 001AEF70 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 801B2014 001AEF74 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801B2018 001AEF78 C0 5E 00 48 */ lfs f2, 0x48(r30) +/* 801B201C 001AEF7C C0 3E 00 38 */ lfs f1, 0x38(r30) +/* 801B2020 001AEF80 C0 1E 00 58 */ lfs f0, 0x58(r30) +/* 801B2024 001AEF84 D0 21 00 38 */ stfs f1, 0x38(r1) +/* 801B2028 001AEF88 D0 41 00 3C */ stfs f2, 0x3c(r1) +/* 801B202C 001AEF8C D0 01 00 40 */ stfs f0, 0x40(r1) +/* 801B2030 001AEF90 48 16 21 D1 */ bl __ct__9CVector2fFff +/* 801B2034 001AEF94 C0 21 00 08 */ lfs f1, 8(r1) +/* 801B2038 001AEF98 38 61 00 20 */ addi r3, r1, 0x20 +/* 801B203C 001AEF9C C0 01 00 0C */ lfs f0, 0xc(r1) +/* 801B2040 001AEFA0 38 81 00 28 */ addi r4, r1, 0x28 +/* 801B2044 001AEFA4 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 801B2048 001AEFA8 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801B204C 001AEFAC 48 16 1F 79 */ bl GetAngleDiff__9CVector2fFRC9CVector2fRC9CVector2f +/* 801B2050 001AEFB0 C0 02 A9 14 */ lfs f0, lbl_805AC634@sda21(r2) +/* 801B2054 001AEFB4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B2058 001AEFB8 7C 00 00 26 */ mfcr r0 +/* 801B205C 001AEFBC 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801B2060 001AEFC0 48 00 00 08 */ b lbl_801B2068 +lbl_801B2064: +/* 801B2064 001AEFC4 38 60 00 00 */ li r3, 0 +lbl_801B2068: +/* 801B2068 001AEFC8 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 801B206C 001AEFCC CB E1 00 60 */ lfd f31, 0x60(r1) +/* 801B2070 001AEFD0 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 +/* 801B2074 001AEFD4 CB C1 00 50 */ lfd f30, 0x50(r1) +/* 801B2078 001AEFD8 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801B207C 001AEFDC 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801B2080 001AEFE0 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 801B2084 001AEFE4 7C 08 03 A6 */ mtlr r0 +/* 801B2088 001AEFE8 38 21 00 70 */ addi r1, r1, 0x70 +/* 801B208C 001AEFEC 4E 80 00 20 */ blr + +.global ShouldTurn__9CFlaahgraFR13CStateManagerf +ShouldTurn__9CFlaahgraFR13CStateManagerf: +/* 801B2090 001AEFF0 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801B2094 001AEFF4 7C 08 02 A6 */ mflr r0 +/* 801B2098 001AEFF8 90 01 00 64 */ stw r0, 0x64(r1) +/* 801B209C 001AEFFC 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 801B20A0 001AF000 7C 7F 1B 78 */ mr r31, r3 +/* 801B20A4 001AF004 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 801B20A8 001AF008 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801B20AC 001AF00C 38 61 00 10 */ addi r3, r1, 0x10 +/* 801B20B0 001AF010 C0 84 00 50 */ lfs f4, 0x50(r4) +/* 801B20B4 001AF014 C0 04 00 40 */ lfs f0, 0x40(r4) +/* 801B20B8 001AF018 EC 44 08 28 */ fsubs f2, f4, f1 +/* 801B20BC 001AF01C C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 801B20C0 001AF020 C0 A4 00 60 */ lfs f5, 0x60(r4) +/* 801B20C4 001AF024 C0 7F 00 60 */ lfs f3, 0x60(r31) +/* 801B20C8 001AF028 EC 20 08 28 */ fsubs f1, f0, f1 +/* 801B20CC 001AF02C D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801B20D0 001AF030 EC 65 18 28 */ fsubs f3, f5, f3 +/* 801B20D4 001AF034 D0 81 00 38 */ stfs f4, 0x38(r1) +/* 801B20D8 001AF038 D0 A1 00 3C */ stfs f5, 0x3c(r1) +/* 801B20DC 001AF03C D0 21 00 40 */ stfs f1, 0x40(r1) +/* 801B20E0 001AF040 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 801B20E4 001AF044 D0 61 00 48 */ stfs f3, 0x48(r1) +/* 801B20E8 001AF048 48 16 21 19 */ bl __ct__9CVector2fFff +/* 801B20EC 001AF04C C0 21 00 10 */ lfs f1, 0x10(r1) +/* 801B20F0 001AF050 38 61 00 08 */ addi r3, r1, 8 +/* 801B20F4 001AF054 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 801B20F8 001AF058 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 801B20FC 001AF05C D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801B2100 001AF060 C0 5F 00 48 */ lfs f2, 0x48(r31) +/* 801B2104 001AF064 C0 3F 00 38 */ lfs f1, 0x38(r31) +/* 801B2108 001AF068 C0 1F 00 58 */ lfs f0, 0x58(r31) +/* 801B210C 001AF06C D0 21 00 28 */ stfs f1, 0x28(r1) +/* 801B2110 001AF070 D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 801B2114 001AF074 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801B2118 001AF078 48 16 20 E9 */ bl __ct__9CVector2fFff +/* 801B211C 001AF07C C0 21 00 08 */ lfs f1, 8(r1) +/* 801B2120 001AF080 38 61 00 18 */ addi r3, r1, 0x18 +/* 801B2124 001AF084 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 801B2128 001AF088 38 81 00 20 */ addi r4, r1, 0x20 +/* 801B212C 001AF08C D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801B2130 001AF090 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801B2134 001AF094 48 16 1E 91 */ bl GetAngleDiff__9CVector2fFRC9CVector2fRC9CVector2f +/* 801B2138 001AF098 C0 02 A8 F4 */ lfs f0, lbl_805AC614@sda21(r2) +/* 801B213C 001AF09C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B2140 001AF0A0 7C 00 00 26 */ mfcr r0 +/* 801B2144 001AF0A4 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f +/* 801B2148 001AF0A8 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 801B214C 001AF0AC 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801B2150 001AF0B0 7C 08 03 A6 */ mtlr r0 +/* 801B2154 001AF0B4 38 21 00 60 */ addi r1, r1, 0x60 +/* 801B2158 001AF0B8 4E 80 00 20 */ blr + +.global AIStage__9CFlaahgraFR13CStateManagerf +AIStage__9CFlaahgraFR13CStateManagerf: +/* 801B215C 001AF0BC FC 00 08 1E */ fctiwz f0, f1 +/* 801B2160 001AF0C0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B2164 001AF0C4 80 63 07 80 */ lwz r3, 0x780(r3) +/* 801B2168 001AF0C8 D8 01 00 08 */ stfd f0, 8(r1) +/* 801B216C 001AF0CC 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801B2170 001AF0D0 7C 03 00 50 */ subf r0, r3, r0 +/* 801B2174 001AF0D4 7C 00 00 34 */ cntlzw r0, r0 +/* 801B2178 001AF0D8 54 03 D9 7E */ srwi r3, r0, 5 +/* 801B217C 001AF0DC 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B2180 001AF0E0 4E 80 00 20 */ blr + +.global HitSomething__9CFlaahgraFR13CStateManagerf +HitSomething__9CFlaahgraFR13CStateManagerf: +/* 801B2184 001AF0E4 C0 23 07 D0 */ lfs f1, 0x7d0(r3) +/* 801B2188 001AF0E8 C0 02 A8 BC */ lfs f0, lbl_805AC5DC@sda21(r2) +/* 801B218C 001AF0EC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B2190 001AF0F0 7C 00 00 26 */ mfcr r0 +/* 801B2194 001AF0F4 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f +/* 801B2198 001AF0F8 4E 80 00 20 */ blr + +.global OffLine__9CFlaahgraFR13CStateManagerf +OffLine__9CFlaahgraFR13CStateManagerf: +/* 801B219C 001AF0FC 88 83 08 E5 */ lbz r4, 0x8e5(r3) +/* 801B21A0 001AF100 38 60 00 00 */ li r3, 0 +/* 801B21A4 001AF104 54 80 F7 FF */ rlwinm. r0, r4, 0x1e, 0x1f, 0x1f +/* 801B21A8 001AF108 4D 82 00 20 */ beqlr +/* 801B21AC 001AF10C 54 80 EF FF */ rlwinm. r0, r4, 0x1d, 0x1f, 0x1f +/* 801B21B0 001AF110 4D 82 00 20 */ beqlr +/* 801B21B4 001AF114 38 60 00 01 */ li r3, 1 +/* 801B21B8 001AF118 4E 80 00 20 */ blr + +.global Death__9CFlaahgraFRC9CVector3fR13CStateManager +Death__9CFlaahgraFRC9CVector3fR13CStateManager: +/* 801B21BC 001AF11C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801B21C0 001AF120 7C 08 02 A6 */ mflr r0 +/* 801B21C4 001AF124 90 01 00 24 */ stw r0, 0x24(r1) +/* 801B21C8 001AF128 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801B21CC 001AF12C 7C 9F 23 78 */ mr r31, r4 +/* 801B21D0 001AF130 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801B21D4 001AF134 7C 7E 1B 78 */ mr r30, r3 +/* 801B21D8 001AF138 88 03 04 00 */ lbz r0, 0x400(r3) +/* 801B21DC 001AF13C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801B21E0 001AF140 41 82 00 6C */ beq lbl_801B224C +/* 801B21E4 001AF144 3C 80 80 3D */ lis r4, lbl_803D1590@ha +/* 801B21E8 001AF148 38 61 00 08 */ addi r3, r1, 8 +/* 801B21EC 001AF14C 38 84 15 90 */ addi r4, r4, lbl_803D1590@l +/* 801B21F0 001AF150 38 84 00 85 */ addi r4, r4, 0x85 +/* 801B21F4 001AF154 4B E5 2A C5 */ bl string_l__4rstlFPCc +/* 801B21F8 001AF158 7F C3 F3 78 */ mr r3, r30 +/* 801B21FC 001AF15C 4B EF 06 FD */ bl GetStateMachine__3CAiFv +/* 801B2200 001AF160 7C 66 1B 78 */ mr r6, r3 +/* 801B2204 001AF164 7F E4 FB 78 */ mr r4, r31 +/* 801B2208 001AF168 7F C5 F3 78 */ mr r5, r30 +/* 801B220C 001AF16C 38 7E 03 30 */ addi r3, r30, 0x330 +/* 801B2210 001AF170 38 E1 00 08 */ addi r7, r1, 8 +/* 801B2214 001AF174 4B EC D9 F1 */ bl "SetState__18CStateMachineStateFR13CStateManagerR3CAiPC13CStateMachineRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801B2218 001AF178 38 61 00 08 */ addi r3, r1, 8 +/* 801B221C 001AF17C 48 18 B8 C5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801B2220 001AF180 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801B2224 001AF184 4B F8 7E A9 */ bl GetPercentageFrozen__15CBodyControllerCFv +/* 801B2228 001AF188 C0 02 A8 BC */ lfs f0, lbl_805AC5DC@sda21(r2) +/* 801B222C 001AF18C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B2230 001AF190 40 81 00 0C */ ble lbl_801B223C +/* 801B2234 001AF194 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801B2238 001AF198 4B F8 7F 1D */ bl UnFreeze__15CBodyControllerFv +lbl_801B223C: +/* 801B223C 001AF19C 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 801B2240 001AF1A0 38 60 00 00 */ li r3, 0 +/* 801B2244 001AF1A4 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801B2248 001AF1A8 98 1E 04 00 */ stb r0, 0x400(r30) +lbl_801B224C: +/* 801B224C 001AF1AC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801B2250 001AF1B0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801B2254 001AF1B4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801B2258 001AF1B8 7C 08 03 A6 */ mtlr r0 +/* 801B225C 001AF1BC 38 21 00 20 */ addi r1, r1, 0x20 +/* 801B2260 001AF1C0 4E 80 00 20 */ blr + +.global DoUserAnimEvent__9CFlaahgraFR13CStateManagerRC13CInt32POINode14EUserEventType +DoUserAnimEvent__9CFlaahgraFR13CStateManagerRC13CInt32POINode14EUserEventType: +/* 801B2264 001AF1C4 94 21 FA C0 */ stwu r1, -0x540(r1) +/* 801B2268 001AF1C8 7C 08 02 A6 */ mflr r0 +/* 801B226C 001AF1CC 90 01 05 44 */ stw r0, 0x544(r1) +/* 801B2270 001AF1D0 DB E1 05 30 */ stfd f31, 0x530(r1) +/* 801B2274 001AF1D4 F3 E1 05 38 */ psq_st f31, 1336(r1), 0, qr0 +/* 801B2278 001AF1D8 DB C1 05 20 */ stfd f30, 0x520(r1) +/* 801B227C 001AF1DC F3 C1 05 28 */ psq_st f30, 1320(r1), 0, qr0 +/* 801B2280 001AF1E0 DB A1 05 10 */ stfd f29, 0x510(r1) +/* 801B2284 001AF1E4 F3 A1 05 18 */ psq_st f29, 1304(r1), 0, qr0 +/* 801B2288 001AF1E8 DB 81 05 00 */ stfd f28, 0x500(r1) +/* 801B228C 001AF1EC F3 81 05 08 */ psq_st f28, 1288(r1), 0, qr0 +/* 801B2290 001AF1F0 BF 21 04 E4 */ stmw r25, 0x4e4(r1) +/* 801B2294 001AF1F4 7C DE 33 78 */ mr r30, r6 +/* 801B2298 001AF1F8 FF C0 08 90 */ fmr f30, f1 +/* 801B229C 001AF1FC 28 1E 00 1A */ cmplwi r30, 0x1a +/* 801B22A0 001AF200 7C 7B 1B 78 */ mr r27, r3 +/* 801B22A4 001AF204 7C 9C 23 78 */ mr r28, r4 +/* 801B22A8 001AF208 7C BD 2B 78 */ mr r29, r5 +/* 801B22AC 001AF20C 3B E0 00 00 */ li r31, 0 +/* 801B22B0 001AF210 41 81 08 48 */ bgt lbl_801B2AF8 +/* 801B22B4 001AF214 3C 80 80 3E */ lis r4, lbl_803E4D74@ha +/* 801B22B8 001AF218 57 C0 10 3A */ slwi r0, r30, 2 +/* 801B22BC 001AF21C 38 84 4D 74 */ addi r4, r4, lbl_803E4D74@l +/* 801B22C0 001AF220 7C 04 00 2E */ lwzx r0, r4, r0 +/* 801B22C4 001AF224 7C 09 03 A6 */ mtctr r0 +/* 801B22C8 001AF228 4E 80 04 20 */ bctr +/* 801B22CC 001AF22C 7F 64 DB 78 */ mr r4, r27 +/* 801B22D0 001AF230 38 61 03 0C */ addi r3, r1, 0x30c +/* 801B22D4 001AF234 38 BD 00 3C */ addi r5, r29, 0x3c +/* 801B22D8 001AF238 4B EC 66 A1 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801B22DC 001AF23C 38 61 04 A8 */ addi r3, r1, 0x4a8 +/* 801B22E0 001AF240 38 81 03 0C */ addi r4, r1, 0x30c +/* 801B22E4 001AF244 48 16 08 91 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801B22E8 001AF248 7F 64 DB 78 */ mr r4, r27 +/* 801B22EC 001AF24C 7F 85 E3 78 */ mr r5, r28 +/* 801B22F0 001AF250 38 61 01 1C */ addi r3, r1, 0x11c +/* 801B22F4 001AF254 4B FF C3 A5 */ bl sub_801ae698 +/* 801B22F8 001AF258 C0 41 01 1C */ lfs f2, 0x11c(r1) +/* 801B22FC 001AF25C C0 21 01 20 */ lfs f1, 0x120(r1) +/* 801B2300 001AF260 C0 01 01 24 */ lfs f0, 0x124(r1) +/* 801B2304 001AF264 D0 41 01 70 */ stfs f2, 0x170(r1) +/* 801B2308 001AF268 D0 21 01 74 */ stfs f1, 0x174(r1) +/* 801B230C 001AF26C D0 01 01 78 */ stfs f0, 0x178(r1) +/* 801B2310 001AF270 80 1B 07 B4 */ lwz r0, 0x7b4(r27) +/* 801B2314 001AF274 2C 00 00 00 */ cmpwi r0, 0 +/* 801B2318 001AF278 41 82 00 0C */ beq lbl_801B2324 +/* 801B231C 001AF27C 2C 00 00 01 */ cmpwi r0, 1 +/* 801B2320 001AF280 40 82 02 7C */ bne lbl_801B259C +lbl_801B2324: +/* 801B2324 001AF284 80 1B 07 2C */ lwz r0, 0x72c(r27) +/* 801B2328 001AF288 2C 00 00 00 */ cmpwi r0, 0 +/* 801B232C 001AF28C 40 82 01 F4 */ bne lbl_801B2520 +/* 801B2330 001AF290 80 BB 07 30 */ lwz r5, 0x730(r27) +/* 801B2334 001AF294 3B FB 07 34 */ addi r31, r27, 0x734 +/* 801B2338 001AF298 38 60 00 00 */ li r3, 0 +/* 801B233C 001AF29C 2C 05 00 00 */ cmpwi r5, 0 +/* 801B2340 001AF2A0 40 81 00 40 */ ble lbl_801B2380 +/* 801B2344 001AF2A4 2C 05 00 08 */ cmpwi r5, 8 +/* 801B2348 001AF2A8 38 85 FF F8 */ addi r4, r5, -8 +/* 801B234C 001AF2AC 40 81 00 20 */ ble lbl_801B236C +/* 801B2350 001AF2B0 38 04 00 07 */ addi r0, r4, 7 +/* 801B2354 001AF2B4 54 00 E8 FE */ srwi r0, r0, 3 +/* 801B2358 001AF2B8 7C 09 03 A6 */ mtctr r0 +/* 801B235C 001AF2BC 2C 04 00 00 */ cmpwi r4, 0 +/* 801B2360 001AF2C0 40 81 00 0C */ ble lbl_801B236C +lbl_801B2364: +/* 801B2364 001AF2C4 38 63 00 08 */ addi r3, r3, 8 +/* 801B2368 001AF2C8 42 00 FF FC */ bdnz lbl_801B2364 +lbl_801B236C: +/* 801B236C 001AF2CC 7C 03 28 50 */ subf r0, r3, r5 +/* 801B2370 001AF2D0 7C 09 03 A6 */ mtctr r0 +/* 801B2374 001AF2D4 7C 03 28 00 */ cmpw r3, r5 +/* 801B2378 001AF2D8 40 80 00 08 */ bge lbl_801B2380 +lbl_801B237C: +/* 801B237C 001AF2DC 42 00 00 00 */ bdnz lbl_801B237C +lbl_801B2380: +/* 801B2380 001AF2E0 38 00 00 00 */ li r0, 0 +/* 801B2384 001AF2E4 7F 63 DB 78 */ mr r3, r27 +/* 801B2388 001AF2E8 90 1B 07 30 */ stw r0, 0x730(r27) +/* 801B238C 001AF2EC 83 5C 08 4C */ lwz r26, 0x84c(r28) +/* 801B2390 001AF2F0 C0 41 04 B4 */ lfs f2, 0x4b4(r1) +/* 801B2394 001AF2F4 C0 21 04 C4 */ lfs f1, 0x4c4(r1) +/* 801B2398 001AF2F8 C0 01 04 D4 */ lfs f0, 0x4d4(r1) +/* 801B239C 001AF2FC D0 41 01 04 */ stfs f2, 0x104(r1) +/* 801B23A0 001AF300 D0 21 01 08 */ stfs f1, 0x108(r1) +/* 801B23A4 001AF304 D0 01 01 0C */ stfs f0, 0x10c(r1) +/* 801B23A8 001AF308 81 9B 00 00 */ lwz r12, 0(r27) +/* 801B23AC 001AF30C 81 8C 02 C0 */ lwz r12, 0x2c0(r12) +/* 801B23B0 001AF310 7D 89 03 A6 */ mtctr r12 +/* 801B23B4 001AF314 4E 80 04 21 */ bctrl +/* 801B23B8 001AF318 FC 20 F0 90 */ fmr f1, f30 +/* 801B23BC 001AF31C 7C 64 1B 78 */ mr r4, r3 +/* 801B23C0 001AF320 7F 47 D3 78 */ mr r7, r26 +/* 801B23C4 001AF324 38 61 01 10 */ addi r3, r1, 0x110 +/* 801B23C8 001AF328 38 A1 01 04 */ addi r5, r1, 0x104 +/* 801B23CC 001AF32C 38 C1 01 70 */ addi r6, r1, 0x170 +/* 801B23D0 001AF330 39 00 00 00 */ li r8, 0 +/* 801B23D4 001AF334 48 06 9B 19 */ bl PredictInterceptPos__15CProjectileInfoFRC9CVector3fRC9CVector3fRC7CPlayerbf +/* 801B23D8 001AF338 80 1B 07 30 */ lwz r0, 0x730(r27) +/* 801B23DC 001AF33C C3 A1 01 10 */ lfs f29, 0x110(r1) +/* 801B23E0 001AF340 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801B23E4 001AF344 C3 81 01 14 */ lfs f28, 0x114(r1) +/* 801B23E8 001AF348 C3 E1 01 18 */ lfs f31, 0x118(r1) +/* 801B23EC 001AF34C 7C 7F 02 15 */ add. r3, r31, r0 +/* 801B23F0 001AF350 41 82 00 10 */ beq lbl_801B2400 +/* 801B23F4 001AF354 D3 A3 00 00 */ stfs f29, 0(r3) +/* 801B23F8 001AF358 D3 83 00 04 */ stfs f28, 4(r3) +/* 801B23FC 001AF35C D3 E3 00 08 */ stfs f31, 8(r3) +lbl_801B2400: +/* 801B2400 001AF360 80 9B 07 30 */ lwz r4, 0x730(r27) +/* 801B2404 001AF364 38 61 02 E8 */ addi r3, r1, 0x2e8 +/* 801B2408 001AF368 38 04 00 01 */ addi r0, r4, 1 +/* 801B240C 001AF36C 38 9B 00 34 */ addi r4, r27, 0x34 +/* 801B2410 001AF370 90 1B 07 30 */ stw r0, 0x730(r27) +/* 801B2414 001AF374 48 16 0C E1 */ bl BuildMatrix3f__12CTransform4fCFv +/* 801B2418 001AF378 38 61 04 84 */ addi r3, r1, 0x484 +/* 801B241C 001AF37C 38 81 02 E8 */ addi r4, r1, 0x2e8 +/* 801B2420 001AF380 48 15 DC 05 */ bl __ct__9CMatrix3fFRC9CMatrix3f +/* 801B2424 001AF384 80 1B 07 B4 */ lwz r0, 0x7b4(r27) +/* 801B2428 001AF388 2C 00 00 01 */ cmpwi r0, 1 +/* 801B242C 001AF38C 40 82 00 0C */ bne lbl_801B2438 +/* 801B2430 001AF390 C0 02 A9 18 */ lfs f0, lbl_805AC638@sda21(r2) +/* 801B2434 001AF394 48 00 00 08 */ b lbl_801B243C +lbl_801B2438: +/* 801B2438 001AF398 C0 02 A9 1C */ lfs f0, lbl_805AC63C@sda21(r2) +lbl_801B243C: +/* 801B243C 001AF39C D0 01 00 40 */ stfs f0, 0x40(r1) +/* 801B2440 001AF3A0 38 61 02 C4 */ addi r3, r1, 0x2c4 +/* 801B2444 001AF3A4 38 81 00 40 */ addi r4, r1, 0x40 +/* 801B2448 001AF3A8 48 15 DF C1 */ bl RotateZ__9CMatrix3fFRC9CRelAngle +/* 801B244C 001AF3AC 38 61 04 60 */ addi r3, r1, 0x460 +/* 801B2450 001AF3B0 38 81 02 C4 */ addi r4, r1, 0x2c4 +/* 801B2454 001AF3B4 48 15 DB D1 */ bl __ct__9CMatrix3fFRC9CMatrix3f +/* 801B2458 001AF3B8 3B 40 00 01 */ li r26, 1 +lbl_801B245C: +/* 801B245C 001AF3BC C0 5B 00 50 */ lfs f2, 0x50(r27) +/* 801B2460 001AF3C0 38 61 00 F8 */ addi r3, r1, 0xf8 +/* 801B2464 001AF3C4 C0 3B 00 60 */ lfs f1, 0x60(r27) +/* 801B2468 001AF3C8 38 9B 00 34 */ addi r4, r27, 0x34 +/* 801B246C 001AF3CC C0 1B 00 40 */ lfs f0, 0x40(r27) +/* 801B2470 001AF3D0 EC 5C 10 28 */ fsubs f2, f28, f2 +/* 801B2474 001AF3D4 EC 3F 08 28 */ fsubs f1, f31, f1 +/* 801B2478 001AF3D8 38 A1 00 EC */ addi r5, r1, 0xec +/* 801B247C 001AF3DC EC 1D 00 28 */ fsubs f0, f29, f0 +/* 801B2480 001AF3E0 D0 41 00 F0 */ stfs f2, 0xf0(r1) +/* 801B2484 001AF3E4 D0 01 00 EC */ stfs f0, 0xec(r1) +/* 801B2488 001AF3E8 D0 21 00 F4 */ stfs f1, 0xf4(r1) +/* 801B248C 001AF3EC 48 16 05 99 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 801B2490 001AF3F0 C0 41 00 F8 */ lfs f2, 0xf8(r1) +/* 801B2494 001AF3F4 38 61 02 A0 */ addi r3, r1, 0x2a0 +/* 801B2498 001AF3F8 C0 21 00 FC */ lfs f1, 0xfc(r1) +/* 801B249C 001AF3FC 38 81 04 84 */ addi r4, r1, 0x484 +/* 801B24A0 001AF400 C0 01 01 00 */ lfs f0, 0x100(r1) +/* 801B24A4 001AF404 38 A1 04 60 */ addi r5, r1, 0x460 +/* 801B24A8 001AF408 D0 41 01 64 */ stfs f2, 0x164(r1) +/* 801B24AC 001AF40C D0 21 01 68 */ stfs f1, 0x168(r1) +/* 801B24B0 001AF410 D0 01 01 6C */ stfs f0, 0x16c(r1) +/* 801B24B4 001AF414 48 15 DC 7D */ bl __ml__9CMatrix3fCFRC9CMatrix3f +/* 801B24B8 001AF418 38 61 04 84 */ addi r3, r1, 0x484 +/* 801B24BC 001AF41C 38 81 02 A0 */ addi r4, r1, 0x2a0 +/* 801B24C0 001AF420 48 15 DB 39 */ bl __as__9CMatrix3fFRC9CMatrix3f +/* 801B24C4 001AF424 38 61 00 E0 */ addi r3, r1, 0xe0 +/* 801B24C8 001AF428 38 81 04 84 */ addi r4, r1, 0x484 +/* 801B24CC 001AF42C 38 A1 01 64 */ addi r5, r1, 0x164 +/* 801B24D0 001AF430 48 15 DD C5 */ bl __ml__9CMatrix3fCFRC9CVector3f +/* 801B24D4 001AF434 80 1B 07 30 */ lwz r0, 0x730(r27) +/* 801B24D8 001AF438 C0 7B 00 40 */ lfs f3, 0x40(r27) +/* 801B24DC 001AF43C 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801B24E0 001AF440 C0 41 00 E0 */ lfs f2, 0xe0(r1) +/* 801B24E4 001AF444 C0 3B 00 50 */ lfs f1, 0x50(r27) +/* 801B24E8 001AF448 C0 01 00 E4 */ lfs f0, 0xe4(r1) +/* 801B24EC 001AF44C EF A3 10 2A */ fadds f29, f3, f2 +/* 801B24F0 001AF450 7C 7F 02 15 */ add. r3, r31, r0 +/* 801B24F4 001AF454 EF 81 00 2A */ fadds f28, f1, f0 +/* 801B24F8 001AF458 41 82 00 10 */ beq lbl_801B2508 +/* 801B24FC 001AF45C D3 A3 00 00 */ stfs f29, 0(r3) +/* 801B2500 001AF460 D3 83 00 04 */ stfs f28, 4(r3) +/* 801B2504 001AF464 D3 E3 00 08 */ stfs f31, 8(r3) +lbl_801B2508: +/* 801B2508 001AF468 80 7B 07 30 */ lwz r3, 0x730(r27) +/* 801B250C 001AF46C 3B 5A 00 01 */ addi r26, r26, 1 +/* 801B2510 001AF470 2C 1A 00 05 */ cmpwi r26, 5 +/* 801B2514 001AF474 38 03 00 01 */ addi r0, r3, 1 +/* 801B2518 001AF478 90 1B 07 30 */ stw r0, 0x730(r27) +/* 801B251C 001AF47C 41 80 FF 40 */ blt lbl_801B245C +lbl_801B2520: +/* 801B2520 001AF480 80 7B 07 2C */ lwz r3, 0x72c(r27) +/* 801B2524 001AF484 2C 03 00 00 */ cmpwi r3, 0 +/* 801B2528 001AF488 41 80 02 60 */ blt lbl_801B2788 +/* 801B252C 001AF48C 80 1B 07 30 */ lwz r0, 0x730(r27) +/* 801B2530 001AF490 7C 03 00 00 */ cmpw r3, r0 +/* 801B2534 001AF494 40 80 02 54 */ bge lbl_801B2788 +/* 801B2538 001AF498 1C 03 00 0C */ mulli r0, r3, 0xc +/* 801B253C 001AF49C C0 41 04 B4 */ lfs f2, 0x4b4(r1) +/* 801B2540 001AF4A0 C0 21 04 C4 */ lfs f1, 0x4c4(r1) +/* 801B2544 001AF4A4 3C 80 80 5A */ lis r4, lbl_805A66F4@ha +/* 801B2548 001AF4A8 C0 01 04 D4 */ lfs f0, 0x4d4(r1) +/* 801B254C 001AF4AC 38 61 02 70 */ addi r3, r1, 0x270 +/* 801B2550 001AF4B0 7C BB 02 14 */ add r5, r27, r0 +/* 801B2554 001AF4B4 38 C4 66 F4 */ addi r6, r4, lbl_805A66F4@l +/* 801B2558 001AF4B8 D0 41 00 D4 */ stfs f2, 0xd4(r1) +/* 801B255C 001AF4BC 38 81 00 D4 */ addi r4, r1, 0xd4 +/* 801B2560 001AF4C0 38 A5 07 34 */ addi r5, r5, 0x734 +/* 801B2564 001AF4C4 D0 21 00 D8 */ stfs f1, 0xd8(r1) +/* 801B2568 001AF4C8 D0 01 00 DC */ stfs f0, 0xdc(r1) +/* 801B256C 001AF4CC 48 16 15 A5 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 801B2570 001AF4D0 38 61 04 30 */ addi r3, r1, 0x430 +/* 801B2574 001AF4D4 38 81 02 70 */ addi r4, r1, 0x270 +/* 801B2578 001AF4D8 48 16 05 FD */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801B257C 001AF4DC 7F 63 DB 78 */ mr r3, r27 +/* 801B2580 001AF4E0 7F 85 E3 78 */ mr r5, r28 +/* 801B2584 001AF4E4 38 81 04 30 */ addi r4, r1, 0x430 +/* 801B2588 001AF4E8 4B FF B7 2D */ bl sub_801adcb4 +/* 801B258C 001AF4EC 80 7B 07 2C */ lwz r3, 0x72c(r27) +/* 801B2590 001AF4F0 38 03 00 01 */ addi r0, r3, 1 +/* 801B2594 001AF4F4 90 1B 07 2C */ stw r0, 0x72c(r27) +/* 801B2598 001AF4F8 48 00 01 F0 */ b lbl_801B2788 +lbl_801B259C: +/* 801B259C 001AF4FC 83 5C 08 4C */ lwz r26, 0x84c(r28) +/* 801B25A0 001AF500 7F 63 DB 78 */ mr r3, r27 +/* 801B25A4 001AF504 C0 41 04 B4 */ lfs f2, 0x4b4(r1) +/* 801B25A8 001AF508 C0 21 04 C4 */ lfs f1, 0x4c4(r1) +/* 801B25AC 001AF50C C0 01 04 D4 */ lfs f0, 0x4d4(r1) +/* 801B25B0 001AF510 D0 41 00 BC */ stfs f2, 0xbc(r1) +/* 801B25B4 001AF514 D0 21 00 C0 */ stfs f1, 0xc0(r1) +/* 801B25B8 001AF518 D0 01 00 C4 */ stfs f0, 0xc4(r1) +/* 801B25BC 001AF51C 81 9B 00 00 */ lwz r12, 0(r27) +/* 801B25C0 001AF520 81 8C 02 C0 */ lwz r12, 0x2c0(r12) +/* 801B25C4 001AF524 7D 89 03 A6 */ mtctr r12 +/* 801B25C8 001AF528 4E 80 04 21 */ bctrl +/* 801B25CC 001AF52C FC 20 F0 90 */ fmr f1, f30 +/* 801B25D0 001AF530 7C 64 1B 78 */ mr r4, r3 +/* 801B25D4 001AF534 7F 47 D3 78 */ mr r7, r26 +/* 801B25D8 001AF538 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 801B25DC 001AF53C 38 A1 00 BC */ addi r5, r1, 0xbc +/* 801B25E0 001AF540 38 C1 01 70 */ addi r6, r1, 0x170 +/* 801B25E4 001AF544 39 00 00 00 */ li r8, 0 +/* 801B25E8 001AF548 48 06 99 05 */ bl PredictInterceptPos__15CProjectileInfoFRC9CVector3fRC9CVector3fRC7CPlayerbf +/* 801B25EC 001AF54C C0 C1 00 C8 */ lfs f6, 0xc8(r1) +/* 801B25F0 001AF550 38 61 00 54 */ addi r3, r1, 0x54 +/* 801B25F4 001AF554 C0 A1 00 CC */ lfs f5, 0xcc(r1) +/* 801B25F8 001AF558 C0 81 00 D0 */ lfs f4, 0xd0(r1) +/* 801B25FC 001AF55C C0 21 04 C4 */ lfs f1, 0x4c4(r1) +/* 801B2600 001AF560 C0 01 04 B4 */ lfs f0, 0x4b4(r1) +/* 801B2604 001AF564 EC 45 08 28 */ fsubs f2, f5, f1 +/* 801B2608 001AF568 C0 61 04 D4 */ lfs f3, 0x4d4(r1) +/* 801B260C 001AF56C EC 26 00 28 */ fsubs f1, f6, f0 +/* 801B2610 001AF570 D0 C1 01 58 */ stfs f6, 0x158(r1) +/* 801B2614 001AF574 EC C4 18 28 */ fsubs f6, f4, f3 +/* 801B2618 001AF578 D0 A1 01 5C */ stfs f5, 0x15c(r1) +/* 801B261C 001AF57C D0 81 01 60 */ stfs f4, 0x160(r1) +/* 801B2620 001AF580 C0 9B 00 58 */ lfs f4, 0x58(r27) +/* 801B2624 001AF584 C0 7B 00 48 */ lfs f3, 0x48(r27) +/* 801B2628 001AF588 C0 1B 00 38 */ lfs f0, 0x38(r27) +/* 801B262C 001AF58C D0 21 00 B0 */ stfs f1, 0xb0(r1) +/* 801B2630 001AF590 D0 01 01 4C */ stfs f0, 0x14c(r1) +/* 801B2634 001AF594 D0 61 01 50 */ stfs f3, 0x150(r1) +/* 801B2638 001AF598 D0 81 01 54 */ stfs f4, 0x154(r1) +/* 801B263C 001AF59C D0 41 00 B4 */ stfs f2, 0xb4(r1) +/* 801B2640 001AF5A0 D0 C1 00 B8 */ stfs f6, 0xb8(r1) +/* 801B2644 001AF5A4 48 16 1B BD */ bl __ct__9CVector2fFff +/* 801B2648 001AF5A8 C0 41 00 54 */ lfs f2, 0x54(r1) +/* 801B264C 001AF5AC 38 61 01 4C */ addi r3, r1, 0x14c +/* 801B2650 001AF5B0 C0 21 00 58 */ lfs f1, 0x58(r1) +/* 801B2654 001AF5B4 38 81 01 40 */ addi r4, r1, 0x140 +/* 801B2658 001AF5B8 C0 02 A8 BC */ lfs f0, lbl_805AC5DC@sda21(r2) +/* 801B265C 001AF5BC D0 41 01 40 */ stfs f2, 0x140(r1) +/* 801B2660 001AF5C0 D0 21 01 44 */ stfs f1, 0x144(r1) +/* 801B2664 001AF5C4 D0 01 01 48 */ stfs f0, 0x148(r1) +/* 801B2668 001AF5C8 48 16 1F C9 */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f +/* 801B266C 001AF5CC C0 02 A9 14 */ lfs f0, lbl_805AC634@sda21(r2) +/* 801B2670 001AF5D0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B2674 001AF5D4 40 81 00 C8 */ ble lbl_801B273C +/* 801B2678 001AF5D8 38 61 01 40 */ addi r3, r1, 0x140 +/* 801B267C 001AF5DC 48 16 20 7D */ bl CanBeNormalized__9CVector3fCFv +/* 801B2680 001AF5E0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B2684 001AF5E4 41 82 00 74 */ beq lbl_801B26F8 +/* 801B2688 001AF5E8 C0 02 A9 14 */ lfs f0, lbl_805AC634@sda21(r2) +/* 801B268C 001AF5EC 38 61 00 98 */ addi r3, r1, 0x98 +/* 801B2690 001AF5F0 38 81 01 40 */ addi r4, r1, 0x140 +/* 801B2694 001AF5F4 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 801B2698 001AF5F8 48 16 21 B9 */ bl AsNormalized__9CVector3fCFv +/* 801B269C 001AF5FC 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 801B26A0 001AF600 38 81 01 4C */ addi r4, r1, 0x14c +/* 801B26A4 001AF604 38 A1 00 98 */ addi r5, r1, 0x98 +/* 801B26A8 001AF608 38 C1 00 3C */ addi r6, r1, 0x3c +/* 801B26AC 001AF60C 48 16 22 A9 */ bl Slerp__9CVector3fFRC9CVector3fRC9CVector3fRC9CRelAngle +/* 801B26B0 001AF610 C3 81 00 A4 */ lfs f28, 0xa4(r1) +/* 801B26B4 001AF614 38 61 01 40 */ addi r3, r1, 0x140 +/* 801B26B8 001AF618 C3 A1 00 A8 */ lfs f29, 0xa8(r1) +/* 801B26BC 001AF61C C3 E1 00 AC */ lfs f31, 0xac(r1) +/* 801B26C0 001AF620 48 16 21 F9 */ bl Magnitude__9CVector3fCFv +/* 801B26C4 001AF624 EC 81 07 72 */ fmuls f4, f1, f29 +/* 801B26C8 001AF628 C0 A1 04 C4 */ lfs f5, 0x4c4(r1) +/* 801B26CC 001AF62C EC 41 07 F2 */ fmuls f2, f1, f31 +/* 801B26D0 001AF630 C0 61 04 D4 */ lfs f3, 0x4d4(r1) +/* 801B26D4 001AF634 EC 01 07 32 */ fmuls f0, f1, f28 +/* 801B26D8 001AF638 C0 21 04 B4 */ lfs f1, 0x4b4(r1) +/* 801B26DC 001AF63C EC 85 20 2A */ fadds f4, f5, f4 +/* 801B26E0 001AF640 EC 43 10 2A */ fadds f2, f3, f2 +/* 801B26E4 001AF644 EC 01 00 2A */ fadds f0, f1, f0 +/* 801B26E8 001AF648 D0 81 01 5C */ stfs f4, 0x15c(r1) +/* 801B26EC 001AF64C D0 01 01 58 */ stfs f0, 0x158(r1) +/* 801B26F0 001AF650 D0 41 01 60 */ stfs f2, 0x160(r1) +/* 801B26F4 001AF654 48 00 00 48 */ b lbl_801B273C +lbl_801B26F8: +/* 801B26F8 001AF658 38 61 01 40 */ addi r3, r1, 0x140 +/* 801B26FC 001AF65C 48 16 21 BD */ bl Magnitude__9CVector3fCFv +/* 801B2700 001AF660 C0 61 04 BC */ lfs f3, 0x4bc(r1) +/* 801B2704 001AF664 C0 41 04 CC */ lfs f2, 0x4cc(r1) +/* 801B2708 001AF668 C0 01 04 AC */ lfs f0, 0x4ac(r1) +/* 801B270C 001AF66C EC 81 00 F2 */ fmuls f4, f1, f3 +/* 801B2710 001AF670 C0 A1 04 C4 */ lfs f5, 0x4c4(r1) +/* 801B2714 001AF674 EC 41 00 B2 */ fmuls f2, f1, f2 +/* 801B2718 001AF678 C0 61 04 D4 */ lfs f3, 0x4d4(r1) +/* 801B271C 001AF67C EC 01 00 32 */ fmuls f0, f1, f0 +/* 801B2720 001AF680 C0 21 04 B4 */ lfs f1, 0x4b4(r1) +/* 801B2724 001AF684 EC 85 20 2A */ fadds f4, f5, f4 +/* 801B2728 001AF688 EC 43 10 2A */ fadds f2, f3, f2 +/* 801B272C 001AF68C EC 01 00 2A */ fadds f0, f1, f0 +/* 801B2730 001AF690 D0 81 01 5C */ stfs f4, 0x15c(r1) +/* 801B2734 001AF694 D0 01 01 58 */ stfs f0, 0x158(r1) +/* 801B2738 001AF698 D0 41 01 60 */ stfs f2, 0x160(r1) +lbl_801B273C: +/* 801B273C 001AF69C C0 41 04 B4 */ lfs f2, 0x4b4(r1) +/* 801B2740 001AF6A0 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 801B2744 001AF6A4 C0 21 04 C4 */ lfs f1, 0x4c4(r1) +/* 801B2748 001AF6A8 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 801B274C 001AF6AC C0 01 04 D4 */ lfs f0, 0x4d4(r1) +/* 801B2750 001AF6B0 38 61 02 40 */ addi r3, r1, 0x240 +/* 801B2754 001AF6B4 D0 41 00 8C */ stfs f2, 0x8c(r1) +/* 801B2758 001AF6B8 38 81 00 8C */ addi r4, r1, 0x8c +/* 801B275C 001AF6BC 38 A1 01 58 */ addi r5, r1, 0x158 +/* 801B2760 001AF6C0 D0 21 00 90 */ stfs f1, 0x90(r1) +/* 801B2764 001AF6C4 D0 01 00 94 */ stfs f0, 0x94(r1) +/* 801B2768 001AF6C8 48 16 13 A9 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 801B276C 001AF6CC 38 61 04 00 */ addi r3, r1, 0x400 +/* 801B2770 001AF6D0 38 81 02 40 */ addi r4, r1, 0x240 +/* 801B2774 001AF6D4 48 16 04 01 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801B2778 001AF6D8 7F 63 DB 78 */ mr r3, r27 +/* 801B277C 001AF6DC 7F 85 E3 78 */ mr r5, r28 +/* 801B2780 001AF6E0 38 81 04 00 */ addi r4, r1, 0x400 +/* 801B2784 001AF6E4 4B FF B5 31 */ bl sub_801adcb4 +lbl_801B2788: +/* 801B2788 001AF6E8 3B E0 00 01 */ li r31, 1 +/* 801B278C 001AF6EC 48 00 03 6C */ b lbl_801B2AF8 +/* 801B2790 001AF6F0 88 1B 08 E4 */ lbz r0, 0x8e4(r27) +/* 801B2794 001AF6F4 38 80 00 01 */ li r4, 1 +/* 801B2798 001AF6F8 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 801B279C 001AF6FC 98 1B 08 E4 */ stb r0, 0x8e4(r27) +/* 801B27A0 001AF700 4B FF C1 25 */ bl sub_801ae8c4 +/* 801B27A4 001AF704 D0 3B 07 C4 */ stfs f1, 0x7c4(r27) +/* 801B27A8 001AF708 48 00 03 50 */ b lbl_801B2AF8 +/* 801B27AC 001AF70C 7F 64 DB 78 */ mr r4, r27 +/* 801B27B0 001AF710 38 61 02 10 */ addi r3, r1, 0x210 +/* 801B27B4 001AF714 38 BD 00 3C */ addi r5, r29, 0x3c +/* 801B27B8 001AF718 4B EC 61 C1 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801B27BC 001AF71C 38 61 03 D0 */ addi r3, r1, 0x3d0 +/* 801B27C0 001AF720 38 81 02 10 */ addi r4, r1, 0x210 +/* 801B27C4 001AF724 48 16 03 B1 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801B27C8 001AF728 C0 41 03 DC */ lfs f2, 0x3dc(r1) +/* 801B27CC 001AF72C 7F 63 DB 78 */ mr r3, r27 +/* 801B27D0 001AF730 C0 21 03 EC */ lfs f1, 0x3ec(r1) +/* 801B27D4 001AF734 7F 84 E3 78 */ mr r4, r28 +/* 801B27D8 001AF738 C0 01 03 FC */ lfs f0, 0x3fc(r1) +/* 801B27DC 001AF73C 38 A1 00 80 */ addi r5, r1, 0x80 +/* 801B27E0 001AF740 D0 41 00 80 */ stfs f2, 0x80(r1) +/* 801B27E4 001AF744 D0 21 00 84 */ stfs f1, 0x84(r1) +/* 801B27E8 001AF748 D0 01 00 88 */ stfs f0, 0x88(r1) +/* 801B27EC 001AF74C 4B FF BA 09 */ bl sub_801ae1f4 +/* 801B27F0 001AF750 3B E0 00 01 */ li r31, 1 +/* 801B27F4 001AF754 48 00 03 04 */ b lbl_801B2AF8 +/* 801B27F8 001AF758 A0 7B 07 7C */ lhz r3, 0x77c(r27) +/* 801B27FC 001AF75C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801B2800 001AF760 7C 03 00 40 */ cmplw r3, r0 +/* 801B2804 001AF764 41 82 02 F4 */ beq lbl_801B2AF8 +/* 801B2808 001AF768 A0 1B 07 7C */ lhz r0, 0x77c(r27) +/* 801B280C 001AF76C 7F 83 E3 78 */ mr r3, r28 +/* 801B2810 001AF770 38 81 00 28 */ addi r4, r1, 0x28 +/* 801B2814 001AF774 B0 01 00 28 */ sth r0, 0x28(r1) +/* 801B2818 001AF778 4B E9 9D 5D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801B281C 001AF77C 7C 64 1B 78 */ mr r4, r3 +/* 801B2820 001AF780 38 61 00 4C */ addi r3, r1, 0x4c +/* 801B2824 001AF784 4B EF 3D 29 */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 801B2828 001AF788 80 83 00 04 */ lwz r4, 4(r3) +/* 801B282C 001AF78C 28 04 00 00 */ cmplwi r4, 0 +/* 801B2830 001AF790 41 82 02 C8 */ beq lbl_801B2AF8 +/* 801B2834 001AF794 A0 1B 00 08 */ lhz r0, 8(r27) +/* 801B2838 001AF798 7F 83 E3 78 */ mr r3, r28 +/* 801B283C 001AF79C 38 A1 00 24 */ addi r5, r1, 0x24 +/* 801B2840 001AF7A0 38 C0 00 02 */ li r6, 2 +/* 801B2844 001AF7A4 B0 01 00 20 */ sth r0, 0x20(r1) +/* 801B2848 001AF7A8 B0 01 00 24 */ sth r0, 0x24(r1) +/* 801B284C 001AF7AC 4B E9 16 85 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +/* 801B2850 001AF7B0 80 7B 07 F8 */ lwz r3, 0x7f8(r27) +/* 801B2854 001AF7B4 2C 03 00 00 */ cmpwi r3, 0 +/* 801B2858 001AF7B8 40 81 02 A0 */ ble lbl_801B2AF8 +/* 801B285C 001AF7BC 38 03 FF FF */ addi r0, r3, -1 +/* 801B2860 001AF7C0 90 1B 07 F8 */ stw r0, 0x7f8(r27) +/* 801B2864 001AF7C4 48 00 02 94 */ b lbl_801B2AF8 +/* 801B2868 001AF7C8 7F 64 DB 78 */ mr r4, r27 +/* 801B286C 001AF7CC 38 61 01 E0 */ addi r3, r1, 0x1e0 +/* 801B2870 001AF7D0 38 BD 00 3C */ addi r5, r29, 0x3c +/* 801B2874 001AF7D4 4B EC 61 05 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801B2878 001AF7D8 38 61 03 A0 */ addi r3, r1, 0x3a0 +/* 801B287C 001AF7DC 38 81 01 E0 */ addi r4, r1, 0x1e0 +/* 801B2880 001AF7E0 48 16 02 F5 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801B2884 001AF7E4 80 9C 08 4C */ lwz r4, 0x84c(r28) +/* 801B2888 001AF7E8 7F 85 E3 78 */ mr r5, r28 +/* 801B288C 001AF7EC 38 61 00 74 */ addi r3, r1, 0x74 +/* 801B2890 001AF7F0 C0 22 A8 BC */ lfs f1, lbl_805AC5DC@sda21(r2) +/* 801B2894 001AF7F4 81 84 00 00 */ lwz r12, 0(r4) +/* 801B2898 001AF7F8 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801B289C 001AF7FC 7D 89 03 A6 */ mtctr r12 +/* 801B28A0 001AF800 4E 80 04 21 */ bctrl +/* 801B28A4 001AF804 C0 41 00 7C */ lfs f2, 0x7c(r1) +/* 801B28A8 001AF808 38 01 01 3C */ addi r0, r1, 0x13c +/* 801B28AC 001AF80C C0 A1 03 CC */ lfs f5, 0x3cc(r1) +/* 801B28B0 001AF810 38 61 01 30 */ addi r3, r1, 0x130 +/* 801B28B4 001AF814 C0 81 00 74 */ lfs f4, 0x74(r1) +/* 801B28B8 001AF818 C0 61 00 78 */ lfs f3, 0x78(r1) +/* 801B28BC 001AF81C FC 02 28 40 */ fcmpo cr0, f2, f5 +/* 801B28C0 001AF820 C0 21 03 AC */ lfs f1, 0x3ac(r1) +/* 801B28C4 001AF824 C0 01 03 BC */ lfs f0, 0x3bc(r1) +/* 801B28C8 001AF828 D0 81 01 34 */ stfs f4, 0x134(r1) +/* 801B28CC 001AF82C D0 61 01 38 */ stfs f3, 0x138(r1) +/* 801B28D0 001AF830 D0 41 01 3C */ stfs f2, 0x13c(r1) +/* 801B28D4 001AF834 D0 21 01 28 */ stfs f1, 0x128(r1) +/* 801B28D8 001AF838 D0 01 01 2C */ stfs f0, 0x12c(r1) +/* 801B28DC 001AF83C D0 A1 01 30 */ stfs f5, 0x130(r1) +/* 801B28E0 001AF840 40 80 00 08 */ bge lbl_801B28E8 +/* 801B28E4 001AF844 48 00 00 08 */ b lbl_801B28EC +lbl_801B28E8: +/* 801B28E8 001AF848 7C 03 03 78 */ mr r3, r0 +lbl_801B28EC: +/* 801B28EC 001AF84C C0 03 00 00 */ lfs f0, 0(r3) +/* 801B28F0 001AF850 38 61 03 70 */ addi r3, r1, 0x370 +/* 801B28F4 001AF854 38 9B 00 34 */ addi r4, r27, 0x34 +/* 801B28F8 001AF858 D0 01 01 30 */ stfs f0, 0x130(r1) +/* 801B28FC 001AF85C 48 16 02 79 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801B2900 001AF860 C0 41 01 28 */ lfs f2, 0x128(r1) +/* 801B2904 001AF864 38 60 00 00 */ li r3, 0 +/* 801B2908 001AF868 C0 21 01 2C */ lfs f1, 0x12c(r1) +/* 801B290C 001AF86C 38 80 00 01 */ li r4, 1 +/* 801B2910 001AF870 C0 01 01 30 */ lfs f0, 0x130(r1) +/* 801B2914 001AF874 80 AD 90 8C */ lwz r5, lbl_805A7C4C@sda21(r13) +/* 801B2918 001AF878 D0 41 03 7C */ stfs f2, 0x37c(r1) +/* 801B291C 001AF87C D0 21 03 8C */ stfs f1, 0x38c(r1) +/* 801B2920 001AF880 D0 01 03 9C */ stfs f0, 0x39c(r1) +/* 801B2924 001AF884 48 1D 75 D1 */ bl __shl2i +/* 801B2928 001AF888 C0 61 03 7C */ lfs f3, 0x37c(r1) +/* 801B292C 001AF88C 39 00 00 01 */ li r8, 1 +/* 801B2930 001AF890 38 00 00 00 */ li r0, 0 +/* 801B2934 001AF894 C0 41 03 8C */ lfs f2, 0x38c(r1) +/* 801B2938 001AF898 C0 01 03 9C */ lfs f0, 0x39c(r1) +/* 801B293C 001AF89C 3C A0 80 5A */ lis r5, lbl_805A6700@ha +/* 801B2940 001AF8A0 90 81 01 9C */ stw r4, 0x19c(r1) +/* 801B2944 001AF8A4 38 C5 67 00 */ addi r6, r5, lbl_805A6700@l +/* 801B2948 001AF8A8 C0 22 A8 FC */ lfs f1, lbl_805AC61C@sda21(r2) +/* 801B294C 001AF8AC 7F 84 E3 78 */ mr r4, r28 +/* 801B2950 001AF8B0 90 61 01 98 */ stw r3, 0x198(r1) +/* 801B2954 001AF8B4 38 61 01 B0 */ addi r3, r1, 0x1b0 +/* 801B2958 001AF8B8 38 A1 00 68 */ addi r5, r1, 0x68 +/* 801B295C 001AF8BC 38 E1 01 98 */ addi r7, r1, 0x198 +/* 801B2960 001AF8C0 91 01 01 90 */ stw r8, 0x190(r1) +/* 801B2964 001AF8C4 90 01 01 A4 */ stw r0, 0x1a4(r1) +/* 801B2968 001AF8C8 90 01 01 A0 */ stw r0, 0x1a0(r1) +/* 801B296C 001AF8CC 91 01 01 A8 */ stw r8, 0x1a8(r1) +/* 801B2970 001AF8D0 D0 61 00 68 */ stfs f3, 0x68(r1) +/* 801B2974 001AF8D4 D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 801B2978 001AF8D8 D0 01 00 70 */ stfs f0, 0x70(r1) +/* 801B297C 001AF8DC 4B E9 A6 1D */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter +/* 801B2980 001AF8E0 88 81 01 D0 */ lbz r4, 0x1d0(r1) +/* 801B2984 001AF8E4 C0 E1 01 B0 */ lfs f7, 0x1b0(r1) +/* 801B2988 001AF8E8 C0 C1 01 B4 */ lfs f6, 0x1b4(r1) +/* 801B298C 001AF8EC 28 04 00 00 */ cmplwi r4, 0 +/* 801B2990 001AF8F0 C0 A1 01 B8 */ lfs f5, 0x1b8(r1) +/* 801B2994 001AF8F4 C0 81 01 BC */ lfs f4, 0x1bc(r1) +/* 801B2998 001AF8F8 C0 61 01 C0 */ lfs f3, 0x1c0(r1) +/* 801B299C 001AF8FC C0 41 01 C4 */ lfs f2, 0x1c4(r1) +/* 801B29A0 001AF900 C0 21 01 C8 */ lfs f1, 0x1c8(r1) +/* 801B29A4 001AF904 C0 01 01 CC */ lfs f0, 0x1cc(r1) +/* 801B29A8 001AF908 80 01 01 D8 */ lwz r0, 0x1d8(r1) +/* 801B29AC 001AF90C 80 61 01 DC */ lwz r3, 0x1dc(r1) +/* 801B29B0 001AF910 D0 E1 03 40 */ stfs f7, 0x340(r1) +/* 801B29B4 001AF914 D0 C1 03 44 */ stfs f6, 0x344(r1) +/* 801B29B8 001AF918 D0 A1 03 48 */ stfs f5, 0x348(r1) +/* 801B29BC 001AF91C D0 81 03 4C */ stfs f4, 0x34c(r1) +/* 801B29C0 001AF920 D0 61 03 50 */ stfs f3, 0x350(r1) +/* 801B29C4 001AF924 D0 41 03 54 */ stfs f2, 0x354(r1) +/* 801B29C8 001AF928 D0 21 03 58 */ stfs f1, 0x358(r1) +/* 801B29CC 001AF92C D0 01 03 5C */ stfs f0, 0x35c(r1) +/* 801B29D0 001AF930 98 81 03 60 */ stb r4, 0x360(r1) +/* 801B29D4 001AF934 90 61 03 6C */ stw r3, 0x36c(r1) +/* 801B29D8 001AF938 90 01 03 68 */ stw r0, 0x368(r1) +/* 801B29DC 001AF93C 41 82 00 F8 */ beq lbl_801B2AD4 +/* 801B29E0 001AF940 3C 60 80 3D */ lis r3, lbl_803D1590@ha +/* 801B29E4 001AF944 D0 C1 03 7C */ stfs f6, 0x37c(r1) +/* 801B29E8 001AF948 38 63 15 90 */ addi r3, r3, lbl_803D1590@l +/* 801B29EC 001AF94C 3B 20 00 00 */ li r25, 0 +/* 801B29F0 001AF950 D0 A1 03 8C */ stfs f5, 0x38c(r1) +/* 801B29F4 001AF954 38 83 00 7E */ addi r4, r3, 0x7e +/* 801B29F8 001AF958 38 60 01 70 */ li r3, 0x170 +/* 801B29FC 001AF95C 38 A0 00 00 */ li r5, 0 +/* 801B2A00 001AF960 D0 81 03 9C */ stfs f4, 0x39c(r1) +/* 801B2A04 001AF964 48 16 2E 69 */ bl __nw__FUlPCcPCc +/* 801B2A08 001AF968 7C 7A 1B 79 */ or. r26, r3, r3 +/* 801B2A0C 001AF96C 41 82 00 84 */ beq lbl_801B2A90 +/* 801B2A10 001AF970 38 61 00 44 */ addi r3, r1, 0x44 +/* 801B2A14 001AF974 38 9B 06 D4 */ addi r4, r27, 0x6d4 +/* 801B2A18 001AF978 48 18 E4 91 */ bl __ct__6CTokenFRC6CToken +/* 801B2A1C 001AF97C 7F 84 E3 78 */ mr r4, r28 +/* 801B2A20 001AF980 38 61 00 10 */ addi r3, r1, 0x10 +/* 801B2A24 001AF984 3B 20 00 01 */ li r25, 1 +/* 801B2A28 001AF988 4B E9 A6 B5 */ bl AllocateUniqueId__13CStateManagerFv +/* 801B2A2C 001AF98C A0 81 00 10 */ lhz r4, 0x10(r1) +/* 801B2A30 001AF990 38 01 00 5C */ addi r0, r1, 0x5c +/* 801B2A34 001AF994 C0 22 A9 0C */ lfs f1, lbl_805AC62C@sda21(r2) +/* 801B2A38 001AF998 7F 43 D3 78 */ mr r3, r26 +/* 801B2A3C 001AF99C B0 81 00 14 */ sth r4, 0x14(r1) +/* 801B2A40 001AF9A0 38 81 00 44 */ addi r4, r1, 0x44 +/* 801B2A44 001AF9A4 C0 02 A8 F0 */ lfs f0, lbl_805AC610@sda21(r2) +/* 801B2A48 001AF9A8 38 BB 06 44 */ addi r5, r27, 0x644 +/* 801B2A4C 001AF9AC 81 9B 00 04 */ lwz r12, 4(r27) +/* 801B2A50 001AF9B0 38 C1 00 14 */ addi r6, r1, 0x14 +/* 801B2A54 001AF9B4 38 E1 00 38 */ addi r7, r1, 0x38 +/* 801B2A58 001AF9B8 39 01 00 1C */ addi r8, r1, 0x1c +/* 801B2A5C 001AF9BC 91 81 00 38 */ stw r12, 0x38(r1) +/* 801B2A60 001AF9C0 39 21 03 70 */ addi r9, r1, 0x370 +/* 801B2A64 001AF9C4 39 5B 06 28 */ addi r10, r27, 0x628 +/* 801B2A68 001AF9C8 A1 7B 00 08 */ lhz r11, 8(r27) +/* 801B2A6C 001AF9CC 91 81 00 34 */ stw r12, 0x34(r1) +/* 801B2A70 001AF9D0 B1 61 00 1C */ sth r11, 0x1c(r1) +/* 801B2A74 001AF9D4 D0 21 00 5C */ stfs f1, 0x5c(r1) +/* 801B2A78 001AF9D8 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 801B2A7C 001AF9DC D0 21 00 64 */ stfs f1, 0x64(r1) +/* 801B2A80 001AF9E0 B1 61 00 18 */ sth r11, 0x18(r1) +/* 801B2A84 001AF9E4 90 01 00 08 */ stw r0, 8(r1) +/* 801B2A88 001AF9E8 48 05 60 4D */ bl "__ct__15CFlaahgraPlantsF25TToken<15CGenDescription>9TUniqueId9TUniqueIdRC12CTransform4fRC11CDamageInfoRC9CVector3f" +/* 801B2A8C 001AF9EC 7C 7A 1B 78 */ mr r26, r3 +lbl_801B2A90: +/* 801B2A90 001AF9F0 7F 20 07 75 */ extsb. r0, r25 +/* 801B2A94 001AF9F4 41 82 00 10 */ beq lbl_801B2AA4 +/* 801B2A98 001AF9F8 38 61 00 44 */ addi r3, r1, 0x44 +/* 801B2A9C 001AF9FC 38 80 00 00 */ li r4, 0 +/* 801B2AA0 001AFA00 48 18 E3 A1 */ bl __dt__6CTokenFv +lbl_801B2AA4: +/* 801B2AA4 001AFA04 7F 83 E3 78 */ mr r3, r28 +/* 801B2AA8 001AFA08 7F 44 D3 78 */ mr r4, r26 +/* 801B2AAC 001AFA0C 4B E9 A2 49 */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +/* 801B2AB0 001AFA10 80 1B 00 04 */ lwz r0, 4(r27) +/* 801B2AB4 001AFA14 7F 83 E3 78 */ mr r3, r28 +/* 801B2AB8 001AFA18 7F 44 D3 78 */ mr r4, r26 +/* 801B2ABC 001AFA1C 38 A1 00 30 */ addi r5, r1, 0x30 +/* 801B2AC0 001AFA20 90 01 00 2C */ stw r0, 0x2c(r1) +/* 801B2AC4 001AFA24 90 01 00 30 */ stw r0, 0x30(r1) +/* 801B2AC8 001AFA28 4B E9 27 B1 */ bl SetActorAreaId__13CStateManagerFR6CActor7TAreaId +/* 801B2ACC 001AFA2C C0 02 A9 20 */ lfs f0, lbl_805AC640@sda21(r2) +/* 801B2AD0 001AFA30 D0 1B 07 CC */ stfs f0, 0x7cc(r27) +lbl_801B2AD4: +/* 801B2AD4 001AFA34 88 1B 08 E4 */ lbz r0, 0x8e4(r27) +/* 801B2AD8 001AFA38 38 60 00 01 */ li r3, 1 +/* 801B2ADC 001AFA3C 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801B2AE0 001AFA40 98 1B 08 E4 */ stb r0, 0x8e4(r27) +/* 801B2AE4 001AFA44 48 00 00 14 */ b lbl_801B2AF8 +/* 801B2AE8 001AFA48 7F 85 E3 78 */ mr r5, r28 +/* 801B2AEC 001AFA4C 38 80 00 19 */ li r4, 0x19 +/* 801B2AF0 001AFA50 38 C0 FF FF */ li r6, -1 +/* 801B2AF4 001AFA54 4B E9 E5 CD */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +lbl_801B2AF8: +/* 801B2AF8 001AFA58 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 801B2AFC 001AFA5C 40 82 00 1C */ bne lbl_801B2B18 +/* 801B2B00 001AFA60 FC 20 F0 90 */ fmr f1, f30 +/* 801B2B04 001AFA64 7F 63 DB 78 */ mr r3, r27 +/* 801B2B08 001AFA68 7F 84 E3 78 */ mr r4, r28 +/* 801B2B0C 001AFA6C 7F A5 EB 78 */ mr r5, r29 +/* 801B2B10 001AFA70 7F C6 F3 78 */ mr r6, r30 +/* 801B2B14 001AFA74 4B EC 63 9D */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +lbl_801B2B18: +/* 801B2B18 001AFA78 E3 E1 05 38 */ psq_l f31, 1336(r1), 0, qr0 +/* 801B2B1C 001AFA7C CB E1 05 30 */ lfd f31, 0x530(r1) +/* 801B2B20 001AFA80 E3 C1 05 28 */ psq_l f30, 1320(r1), 0, qr0 +/* 801B2B24 001AFA84 CB C1 05 20 */ lfd f30, 0x520(r1) +/* 801B2B28 001AFA88 E3 A1 05 18 */ psq_l f29, 1304(r1), 0, qr0 +/* 801B2B2C 001AFA8C CB A1 05 10 */ lfd f29, 0x510(r1) +/* 801B2B30 001AFA90 E3 81 05 08 */ psq_l f28, 1288(r1), 0, qr0 +/* 801B2B34 001AFA94 CB 81 05 00 */ lfd f28, 0x500(r1) +/* 801B2B38 001AFA98 BB 21 04 E4 */ lmw r25, 0x4e4(r1) +/* 801B2B3C 001AFA9C 80 01 05 44 */ lwz r0, 0x544(r1) +/* 801B2B40 001AFAA0 7C 08 03 A6 */ mtlr r0 +/* 801B2B44 001AFAA4 38 21 05 40 */ addi r1, r1, 0x540 +/* 801B2B48 001AFAA8 4E 80 00 20 */ blr + +.global ProjectileInfo__9CFlaahgraFv +ProjectileInfo__9CFlaahgraFv: +/* 801B2B4C 001AFAAC 88 03 08 E4 */ lbz r0, 0x8e4(r3) +/* 801B2B50 001AFAB0 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 801B2B54 001AFAB4 41 82 00 0C */ beq lbl_801B2B60 +/* 801B2B58 001AFAB8 38 63 07 04 */ addi r3, r3, 0x704 +/* 801B2B5C 001AFABC 4E 80 00 20 */ blr +lbl_801B2B60: +/* 801B2B60 001AFAC0 38 63 06 DC */ addi r3, r3, 0x6dc +/* 801B2B64 001AFAC4 4E 80 00 20 */ blr + +.global GetAimPosition__9CFlaahgraCFRC13CStateManagerf +GetAimPosition__9CFlaahgraCFRC13CStateManagerf: +/* 801B2B68 001AFAC8 C0 04 08 20 */ lfs f0, 0x820(r4) +/* 801B2B6C 001AFACC D0 03 00 00 */ stfs f0, 0(r3) +/* 801B2B70 001AFAD0 C0 04 08 24 */ lfs f0, 0x824(r4) +/* 801B2B74 001AFAD4 D0 03 00 04 */ stfs f0, 4(r3) +/* 801B2B78 001AFAD8 C0 04 08 28 */ lfs f0, 0x828(r4) +/* 801B2B7C 001AFADC D0 03 00 08 */ stfs f0, 8(r3) +/* 801B2B80 001AFAE0 4E 80 00 20 */ blr + +.global AddToRenderer__9CFlaahgraCFRC14CFrustumPlanesRC13CStateManager +AddToRenderer__9CFlaahgraCFRC14CFrustumPlanesRC13CStateManager: +/* 801B2B84 001AFAE4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B2B88 001AFAE8 7C 08 02 A6 */ mflr r0 +/* 801B2B8C 001AFAEC 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B2B90 001AFAF0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801B2B94 001AFAF4 7C BF 2B 78 */ mr r31, r5 +/* 801B2B98 001AFAF8 93 C1 00 08 */ stw r30, 8(r1) +/* 801B2B9C 001AFAFC 7C 7E 1B 78 */ mr r30, r3 +/* 801B2BA0 001AFB00 80 83 00 64 */ lwz r4, 0x64(r3) +/* 801B2BA4 001AFB04 38 60 00 00 */ li r3, 0 +/* 801B2BA8 001AFB08 80 04 00 10 */ lwz r0, 0x10(r4) +/* 801B2BAC 001AFB0C 28 00 00 00 */ cmplwi r0, 0 +/* 801B2BB0 001AFB10 40 82 00 14 */ bne lbl_801B2BC4 +/* 801B2BB4 001AFB14 88 04 00 28 */ lbz r0, 0x28(r4) +/* 801B2BB8 001AFB18 28 00 00 00 */ cmplwi r0, 0 +/* 801B2BBC 001AFB1C 40 82 00 08 */ bne lbl_801B2BC4 +/* 801B2BC0 001AFB20 38 60 00 01 */ li r3, 1 +lbl_801B2BC4: +/* 801B2BC4 001AFB24 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B2BC8 001AFB28 40 82 00 58 */ bne lbl_801B2C20 +/* 801B2BCC 001AFB2C 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 801B2BD0 001AFB30 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 801B2BD4 001AFB34 40 82 00 4C */ bne lbl_801B2C20 +/* 801B2BD8 001AFB38 7F C3 F3 78 */ mr r3, r30 +/* 801B2BDC 001AFB3C 7F E4 FB 78 */ mr r4, r31 +/* 801B2BE0 001AFB40 81 9E 00 00 */ lwz r12, 0(r30) +/* 801B2BE4 001AFB44 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801B2BE8 001AFB48 7D 89 03 A6 */ mtctr r12 +/* 801B2BEC 001AFB4C 4E 80 04 21 */ bctrl +/* 801B2BF0 001AFB50 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B2BF4 001AFB54 41 82 00 20 */ beq lbl_801B2C14 +/* 801B2BF8 001AFB58 7F C3 F3 78 */ mr r3, r30 +/* 801B2BFC 001AFB5C 7F E4 FB 78 */ mr r4, r31 +/* 801B2C00 001AFB60 81 9E 00 00 */ lwz r12, 0(r30) +/* 801B2C04 001AFB64 81 8C 00 28 */ lwz r12, 0x28(r12) +/* 801B2C08 001AFB68 7D 89 03 A6 */ mtctr r12 +/* 801B2C0C 001AFB6C 4E 80 04 21 */ bctrl +/* 801B2C10 001AFB70 48 00 00 10 */ b lbl_801B2C20 +lbl_801B2C14: +/* 801B2C14 001AFB74 7F C3 F3 78 */ mr r3, r30 +/* 801B2C18 001AFB78 7F E4 FB 78 */ mr r4, r31 +/* 801B2C1C 001AFB7C 4B EA 1D B1 */ bl EnsureRendered__6CActorCFRC13CStateManager +lbl_801B2C20: +/* 801B2C20 001AFB80 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B2C24 001AFB84 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801B2C28 001AFB88 83 C1 00 08 */ lwz r30, 8(r1) +/* 801B2C2C 001AFB8C 7C 08 03 A6 */ mtlr r0 +/* 801B2C30 001AFB90 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B2C34 001AFB94 4E 80 00 20 */ blr + +.global CanRenderUnsorted__9CFlaahgraCFRC13CStateManager +CanRenderUnsorted__9CFlaahgraCFRC13CStateManager: +/* 801B2C38 001AFB98 38 60 00 01 */ li r3, 1 +/* 801B2C3C 001AFB9C 4E 80 00 20 */ blr + +.global AcceptScriptMsg__9CFlaahgraF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__9CFlaahgraF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 801B2C40 001AFBA0 94 21 FE 90 */ stwu r1, -0x170(r1) +/* 801B2C44 001AFBA4 7C 08 02 A6 */ mflr r0 +/* 801B2C48 001AFBA8 90 01 01 74 */ stw r0, 0x174(r1) +/* 801B2C4C 001AFBAC BF 21 01 54 */ stmw r25, 0x154(r1) +/* 801B2C50 001AFBB0 7C 9C 23 78 */ mr r28, r4 +/* 801B2C54 001AFBB4 28 1C 00 29 */ cmplwi r28, 0x29 +/* 801B2C58 001AFBB8 7C 7F 1B 78 */ mr r31, r3 +/* 801B2C5C 001AFBBC 7C BD 2B 78 */ mr r29, r5 +/* 801B2C60 001AFBC0 7C DE 33 78 */ mr r30, r6 +/* 801B2C64 001AFBC4 41 81 07 F8 */ bgt lbl_801B345C +/* 801B2C68 001AFBC8 3C 80 80 3E */ lis r4, lbl_803E4DE0@ha +/* 801B2C6C 001AFBCC 57 80 10 3A */ slwi r0, r28, 2 +/* 801B2C70 001AFBD0 38 84 4D E0 */ addi r4, r4, lbl_803E4DE0@l +/* 801B2C74 001AFBD4 7C 04 00 2E */ lwzx r0, r4, r0 +/* 801B2C78 001AFBD8 7C 09 03 A6 */ mtctr r0 +/* 801B2C7C 001AFBDC 4E 80 04 20 */ bctr +/* 801B2C80 001AFBE0 88 7F 08 E4 */ lbz r3, 0x8e4(r31) +/* 801B2C84 001AFBE4 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f +/* 801B2C88 001AFBE8 40 82 00 4C */ bne lbl_801B2CD4 +/* 801B2C8C 001AFBEC 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f +/* 801B2C90 001AFBF0 40 82 00 44 */ bne lbl_801B2CD4 +/* 801B2C94 001AFBF4 80 DF 00 04 */ lwz r6, 4(r31) +/* 801B2C98 001AFBF8 38 60 00 01 */ li r3, 1 +/* 801B2C9C 001AFBFC 80 BE 08 50 */ lwz r5, 0x850(r30) +/* 801B2CA0 001AFC00 54 C4 18 38 */ slwi r4, r6, 3 +/* 801B2CA4 001AFC04 90 C1 00 78 */ stw r6, 0x78(r1) +/* 801B2CA8 001AFC08 80 A5 00 20 */ lwz r5, 0x20(r5) +/* 801B2CAC 001AFC0C 38 04 00 04 */ addi r0, r4, 4 +/* 801B2CB0 001AFC10 90 C1 00 68 */ stw r6, 0x68(r1) +/* 801B2CB4 001AFC14 7C 85 00 2E */ lwzx r4, r5, r0 +/* 801B2CB8 001AFC18 80 A4 01 2C */ lwz r5, 0x12c(r4) +/* 801B2CBC 001AFC1C 80 85 11 3C */ lwz r4, 0x113c(r5) +/* 801B2CC0 001AFC20 38 04 00 01 */ addi r0, r4, 1 +/* 801B2CC4 001AFC24 90 05 11 3C */ stw r0, 0x113c(r5) +/* 801B2CC8 001AFC28 88 1F 08 E4 */ lbz r0, 0x8e4(r31) +/* 801B2CCC 001AFC2C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801B2CD0 001AFC30 98 1F 08 E4 */ stb r0, 0x8e4(r31) +lbl_801B2CD4: +/* 801B2CD4 001AFC34 7F E3 FB 78 */ mr r3, r31 +/* 801B2CD8 001AFC38 7F C4 F3 78 */ mr r4, r30 +/* 801B2CDC 001AFC3C 4B FF B3 D5 */ bl sub_801ae0b0 +/* 801B2CE0 001AFC40 48 00 07 7C */ b lbl_801B345C +/* 801B2CE4 001AFC44 7F C4 F3 78 */ mr r4, r30 +/* 801B2CE8 001AFC48 4B FF AC F5 */ bl sub_801ad9dc +/* 801B2CEC 001AFC4C 88 1F 08 E5 */ lbz r0, 0x8e5(r31) +/* 801B2CF0 001AFC50 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 801B2CF4 001AFC54 40 82 07 68 */ bne lbl_801B345C +/* 801B2CF8 001AFC58 7F E3 FB 78 */ mr r3, r31 +/* 801B2CFC 001AFC5C 7F C4 F3 78 */ mr r4, r30 +/* 801B2D00 001AFC60 4B FF C8 2D */ bl sub_801af52c +/* 801B2D04 001AFC64 7F C4 F3 78 */ mr r4, r30 +/* 801B2D08 001AFC68 38 61 00 50 */ addi r3, r1, 0x50 +/* 801B2D0C 001AFC6C 4B E9 A3 D1 */ bl AllocateUniqueId__13CStateManagerFv +/* 801B2D10 001AFC70 A0 01 00 50 */ lhz r0, 0x50(r1) +/* 801B2D14 001AFC74 3C 60 80 3D */ lis r3, lbl_803D1590@ha +/* 801B2D18 001AFC78 38 63 15 90 */ addi r3, r3, lbl_803D1590@l +/* 801B2D1C 001AFC7C 3B 40 00 00 */ li r26, 0 +/* 801B2D20 001AFC80 B0 1F 06 D0 */ sth r0, 0x6d0(r31) +/* 801B2D24 001AFC84 38 83 00 7E */ addi r4, r3, 0x7e +/* 801B2D28 001AFC88 3B 20 00 00 */ li r25, 0 +/* 801B2D2C 001AFC8C 38 60 00 F0 */ li r3, 0xf0 +/* 801B2D30 001AFC90 38 A0 00 00 */ li r5, 0 +/* 801B2D34 001AFC94 48 16 2B 39 */ bl __nw__FUlPCcPCc +/* 801B2D38 001AFC98 7C 7B 1B 79 */ or. r27, r3, r3 +/* 801B2D3C 001AFC9C 41 82 00 80 */ beq lbl_801B2DBC +/* 801B2D40 001AFCA0 80 0D A3 88 */ lwz r0, lbl_805A8F48@sda21(r13) +/* 801B2D44 001AFCA4 3C 60 80 57 */ lis r3, lbl_8056D410@ha +/* 801B2D48 001AFCA8 38 A3 D4 10 */ addi r5, r3, lbl_8056D410@l +/* 801B2D4C 001AFCAC 38 81 00 70 */ addi r4, r1, 0x70 +/* 801B2D50 001AFCB0 90 01 00 74 */ stw r0, 0x74(r1) +/* 801B2D54 001AFCB4 38 61 01 14 */ addi r3, r1, 0x114 +/* 801B2D58 001AFCB8 38 C1 00 74 */ addi r6, r1, 0x74 +/* 801B2D5C 001AFCBC 80 1F 00 04 */ lwz r0, 4(r31) +/* 801B2D60 001AFCC0 90 01 00 6C */ stw r0, 0x6c(r1) +/* 801B2D64 001AFCC4 90 01 00 70 */ stw r0, 0x70(r1) +/* 801B2D68 001AFCC8 4B E9 E7 1D */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" +/* 801B2D6C 001AFCCC 3C 80 80 3D */ lis r4, lbl_803D1590@ha +/* 801B2D70 001AFCD0 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 801B2D74 001AFCD4 38 84 15 90 */ addi r4, r4, lbl_803D1590@l +/* 801B2D78 001AFCD8 3B 40 00 01 */ li r26, 1 +/* 801B2D7C 001AFCDC 38 84 00 8A */ addi r4, r4, 0x8a +/* 801B2D80 001AFCE0 4B E5 1F 39 */ bl string_l__4rstlFPCc +/* 801B2D84 001AFCE4 A1 3F 00 08 */ lhz r9, 8(r31) +/* 801B2D88 001AFCE8 7F 63 DB 78 */ mr r3, r27 +/* 801B2D8C 001AFCEC 38 81 00 44 */ addi r4, r1, 0x44 +/* 801B2D90 001AFCF0 38 A1 00 4C */ addi r5, r1, 0x4c +/* 801B2D94 001AFCF4 B1 21 00 4C */ sth r9, 0x4c(r1) +/* 801B2D98 001AFCF8 38 C1 00 B4 */ addi r6, r1, 0xb4 +/* 801B2D9C 001AFCFC 38 E1 01 14 */ addi r7, r1, 0x114 +/* 801B2DA0 001AFD00 39 1F 00 34 */ addi r8, r31, 0x34 +/* 801B2DA4 001AFD04 A0 1F 06 D0 */ lhz r0, 0x6d0(r31) +/* 801B2DA8 001AFD08 3B 20 00 01 */ li r25, 1 +/* 801B2DAC 001AFD0C B1 21 00 48 */ sth r9, 0x48(r1) +/* 801B2DB0 001AFD10 B0 01 00 44 */ sth r0, 0x44(r1) +/* 801B2DB4 001AFD14 4B FF A8 E9 */ bl "__ct__17CFlaahgraRendererF9TUniqueId9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4f" +/* 801B2DB8 001AFD18 7C 7B 1B 78 */ mr r27, r3 +lbl_801B2DBC: +/* 801B2DBC 001AFD1C 7F C3 F3 78 */ mr r3, r30 +/* 801B2DC0 001AFD20 7F 64 DB 78 */ mr r4, r27 +/* 801B2DC4 001AFD24 4B E9 9F 31 */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +/* 801B2DC8 001AFD28 7F 20 07 75 */ extsb. r0, r25 +/* 801B2DCC 001AFD2C 41 82 00 0C */ beq lbl_801B2DD8 +/* 801B2DD0 001AFD30 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 801B2DD4 001AFD34 48 18 AD 0D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801B2DD8: +/* 801B2DD8 001AFD38 7F 40 07 75 */ extsb. r0, r26 +/* 801B2DDC 001AFD3C 41 82 00 44 */ beq lbl_801B2E20 +/* 801B2DE0 001AFD40 80 01 01 1C */ lwz r0, 0x11c(r1) +/* 801B2DE4 001AFD44 80 61 01 24 */ lwz r3, 0x124(r1) +/* 801B2DE8 001AFD48 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801B2DEC 001AFD4C 90 61 00 5C */ stw r3, 0x5c(r1) +/* 801B2DF0 001AFD50 7C 64 1B 78 */ mr r4, r3 +/* 801B2DF4 001AFD54 7C 03 02 14 */ add r0, r3, r0 +/* 801B2DF8 001AFD58 90 61 00 58 */ stw r3, 0x58(r1) +/* 801B2DFC 001AFD5C 90 01 00 64 */ stw r0, 0x64(r1) +/* 801B2E00 001AFD60 90 01 00 60 */ stw r0, 0x60(r1) +/* 801B2E04 001AFD64 48 00 00 08 */ b lbl_801B2E0C +lbl_801B2E08: +/* 801B2E08 001AFD68 38 84 00 0C */ addi r4, r4, 0xc +lbl_801B2E0C: +/* 801B2E0C 001AFD6C 7C 04 00 40 */ cmplw r4, r0 +/* 801B2E10 001AFD70 40 82 FF F8 */ bne lbl_801B2E08 +/* 801B2E14 001AFD74 28 03 00 00 */ cmplwi r3, 0 +/* 801B2E18 001AFD78 41 82 00 08 */ beq lbl_801B2E20 +/* 801B2E1C 001AFD7C 48 16 2B 15 */ bl Free__7CMemoryFPCv +lbl_801B2E20: +/* 801B2E20 001AFD80 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801B2E24 001AFD84 38 80 00 00 */ li r4, 0 +/* 801B2E28 001AFD88 4B F8 7B B1 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 801B2E2C 001AFD8C 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801B2E30 001AFD90 7F C4 F3 78 */ mr r4, r30 +/* 801B2E34 001AFD94 4B F8 7E BD */ bl Activate__15CBodyControllerFR13CStateManager +/* 801B2E38 001AFD98 88 1F 08 E5 */ lbz r0, 0x8e5(r31) +/* 801B2E3C 001AFD9C 38 60 00 01 */ li r3, 1 +/* 801B2E40 001AFDA0 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801B2E44 001AFDA4 98 1F 08 E5 */ stb r0, 0x8e5(r31) +/* 801B2E48 001AFDA8 48 00 06 14 */ b lbl_801B345C +/* 801B2E4C 001AFDAC 88 1F 08 E5 */ lbz r0, 0x8e5(r31) +/* 801B2E50 001AFDB0 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 801B2E54 001AFDB4 41 82 06 08 */ beq lbl_801B345C +/* 801B2E58 001AFDB8 80 7F 07 9C */ lwz r3, 0x79c(r31) +/* 801B2E5C 001AFDBC 7F C4 F3 78 */ mr r4, r30 +/* 801B2E60 001AFDC0 4B FF 45 65 */ bl Destroy__22CCollisionActorManagerCFR13CStateManager +/* 801B2E64 001AFDC4 80 7F 07 A0 */ lwz r3, 0x7a0(r31) +/* 801B2E68 001AFDC8 7F C4 F3 78 */ mr r4, r30 +/* 801B2E6C 001AFDCC 4B FF 45 59 */ bl Destroy__22CCollisionActorManagerCFR13CStateManager +/* 801B2E70 001AFDD0 80 7F 07 A4 */ lwz r3, 0x7a4(r31) +/* 801B2E74 001AFDD4 7F C4 F3 78 */ mr r4, r30 +/* 801B2E78 001AFDD8 4B FF 45 4D */ bl Destroy__22CCollisionActorManagerCFR13CStateManager +/* 801B2E7C 001AFDDC A0 1F 06 D0 */ lhz r0, 0x6d0(r31) +/* 801B2E80 001AFDE0 7F C3 F3 78 */ mr r3, r30 +/* 801B2E84 001AFDE4 38 81 00 40 */ addi r4, r1, 0x40 +/* 801B2E88 001AFDE8 B0 01 00 40 */ sth r0, 0x40(r1) +/* 801B2E8C 001AFDEC 4B E9 93 E1 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +/* 801B2E90 001AFDF0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801B2E94 001AFDF4 38 60 00 00 */ li r3, 0 +/* 801B2E98 001AFDF8 B0 1F 06 D0 */ sth r0, 0x6d0(r31) +/* 801B2E9C 001AFDFC 88 1F 08 E5 */ lbz r0, 0x8e5(r31) +/* 801B2EA0 001AFE00 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801B2EA4 001AFE04 98 1F 08 E5 */ stb r0, 0x8e5(r31) +/* 801B2EA8 001AFE08 48 00 05 B4 */ b lbl_801B345C +/* 801B2EAC 001AFE0C 81 83 00 00 */ lwz r12, 0(r3) +/* 801B2EB0 001AFE10 7F C4 F3 78 */ mr r4, r30 +/* 801B2EB4 001AFE14 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801B2EB8 001AFE18 7D 89 03 A6 */ mtctr r12 +/* 801B2EBC 001AFE1C 4E 80 04 21 */ bctrl +/* 801B2EC0 001AFE20 C0 23 00 00 */ lfs f1, 0(r3) +/* 801B2EC4 001AFE24 C0 02 A8 BC */ lfs f0, lbl_805AC5DC@sda21(r2) +/* 801B2EC8 001AFE28 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B2ECC 001AFE2C 40 81 05 90 */ ble lbl_801B345C +/* 801B2ED0 001AFE30 A0 1D 00 00 */ lhz r0, 0(r29) +/* 801B2ED4 001AFE34 7F C3 F3 78 */ mr r3, r30 +/* 801B2ED8 001AFE38 38 81 00 3C */ addi r4, r1, 0x3c +/* 801B2EDC 001AFE3C B0 01 00 3C */ sth r0, 0x3c(r1) +/* 801B2EE0 001AFE40 4B E9 96 C5 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801B2EE4 001AFE44 7C 64 1B 78 */ mr r4, r3 +/* 801B2EE8 001AFE48 38 61 00 94 */ addi r3, r1, 0x94 +/* 801B2EEC 001AFE4C 4B EF C4 61 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801B2EF0 001AFE50 80 83 00 04 */ lwz r4, 4(r3) +/* 801B2EF4 001AFE54 28 04 00 00 */ cmplwi r4, 0 +/* 801B2EF8 001AFE58 41 82 05 64 */ beq lbl_801B345C +/* 801B2EFC 001AFE5C 38 61 00 38 */ addi r3, r1, 0x38 +/* 801B2F00 001AFE60 4B FF 5C 8D */ bl GetLastTouchedObject__15CCollisionActorCFv +/* 801B2F04 001AFE64 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 801B2F08 001AFE68 A0 81 00 38 */ lhz r4, 0x38(r1) +/* 801B2F0C 001AFE6C A0 03 00 08 */ lhz r0, 8(r3) +/* 801B2F10 001AFE70 7C 04 00 40 */ cmplw r4, r0 +/* 801B2F14 001AFE74 40 82 05 48 */ bne lbl_801B345C +/* 801B2F18 001AFE78 C0 3F 04 20 */ lfs f1, 0x420(r31) +/* 801B2F1C 001AFE7C C0 02 A8 BC */ lfs f0, lbl_805AC5DC@sda21(r2) +/* 801B2F20 001AFE80 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B2F24 001AFE84 4C 40 13 82 */ cror 2, 0, 2 +/* 801B2F28 001AFE88 40 82 05 34 */ bne lbl_801B345C +/* 801B2F2C 001AFE8C 7F E4 FB 78 */ mr r4, r31 +/* 801B2F30 001AFE90 38 61 00 F8 */ addi r3, r1, 0xf8 +/* 801B2F34 001AFE94 81 9F 00 00 */ lwz r12, 0(r31) +/* 801B2F38 001AFE98 81 8C 02 B0 */ lwz r12, 0x2b0(r12) +/* 801B2F3C 001AFE9C 7D 89 03 A6 */ mtctr r12 +/* 801B2F40 001AFEA0 4E 80 04 21 */ bctrl +/* 801B2F44 001AFEA4 80 81 00 F8 */ lwz r4, 0xf8(r1) +/* 801B2F48 001AFEA8 88 61 00 FC */ lbz r3, 0xfc(r1) +/* 801B2F4C 001AFEAC C0 61 01 00 */ lfs f3, 0x100(r1) +/* 801B2F50 001AFEB0 C0 41 01 04 */ lfs f2, 0x104(r1) +/* 801B2F54 001AFEB4 C0 21 01 08 */ lfs f1, 0x108(r1) +/* 801B2F58 001AFEB8 C0 01 01 0C */ lfs f0, 0x10c(r1) +/* 801B2F5C 001AFEBC 88 01 01 10 */ lbz r0, 0x110(r1) +/* 801B2F60 001AFEC0 90 81 01 2C */ stw r4, 0x12c(r1) +/* 801B2F64 001AFEC4 98 61 01 30 */ stb r3, 0x130(r1) +/* 801B2F68 001AFEC8 D0 61 01 34 */ stfs f3, 0x134(r1) +/* 801B2F6C 001AFECC D0 41 01 38 */ stfs f2, 0x138(r1) +/* 801B2F70 001AFED0 D0 21 01 3C */ stfs f1, 0x13c(r1) +/* 801B2F74 001AFED4 D0 01 01 40 */ stfs f0, 0x140(r1) +/* 801B2F78 001AFED8 98 01 01 44 */ stb r0, 0x144(r1) +/* 801B2F7C 001AFEDC 80 1F 07 A8 */ lwz r0, 0x7a8(r31) +/* 801B2F80 001AFEE0 2C 00 00 04 */ cmpwi r0, 4 +/* 801B2F84 001AFEE4 40 82 00 40 */ bne lbl_801B2FC4 +/* 801B2F88 001AFEE8 80 7F 07 DC */ lwz r3, 0x7dc(r31) +/* 801B2F8C 001AFEEC 80 1F 07 E0 */ lwz r0, 0x7e0(r31) +/* 801B2F90 001AFEF0 90 61 01 2C */ stw r3, 0x12c(r1) +/* 801B2F94 001AFEF4 90 01 01 30 */ stw r0, 0x130(r1) +/* 801B2F98 001AFEF8 C0 1F 07 E4 */ lfs f0, 0x7e4(r31) +/* 801B2F9C 001AFEFC D0 01 01 34 */ stfs f0, 0x134(r1) +/* 801B2FA0 001AFF00 C0 1F 07 E8 */ lfs f0, 0x7e8(r31) +/* 801B2FA4 001AFF04 D0 01 01 38 */ stfs f0, 0x138(r1) +/* 801B2FA8 001AFF08 C0 1F 07 EC */ lfs f0, 0x7ec(r31) +/* 801B2FAC 001AFF0C D0 01 01 3C */ stfs f0, 0x13c(r1) +/* 801B2FB0 001AFF10 C0 1F 07 F0 */ lfs f0, 0x7f0(r31) +/* 801B2FB4 001AFF14 D0 01 01 40 */ stfs f0, 0x140(r1) +/* 801B2FB8 001AFF18 88 1F 07 F4 */ lbz r0, 0x7f4(r31) +/* 801B2FBC 001AFF1C 98 01 01 44 */ stb r0, 0x144(r1) +/* 801B2FC0 001AFF20 48 00 00 24 */ b lbl_801B2FE4 +lbl_801B2FC4: +/* 801B2FC4 001AFF24 7F E3 FB 78 */ mr r3, r31 +/* 801B2FC8 001AFF28 4B FF B6 A9 */ bl sub_801ae670 +/* 801B2FCC 001AFF2C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B2FD0 001AFF30 40 82 00 14 */ bne lbl_801B2FE4 +/* 801B2FD4 001AFF34 C0 22 A8 E4 */ lfs f1, lbl_805AC604@sda21(r2) +/* 801B2FD8 001AFF38 C0 01 01 34 */ lfs f0, 0x134(r1) +/* 801B2FDC 001AFF3C EC 01 00 32 */ fmuls f0, f1, f0 +/* 801B2FE0 001AFF40 D0 01 01 34 */ stfs f0, 0x134(r1) +lbl_801B2FE4: +/* 801B2FE4 001AFF44 80 1F 07 88 */ lwz r0, 0x788(r31) +/* 801B2FE8 001AFF48 2C 00 00 02 */ cmpwi r0, 2 +/* 801B2FEC 001AFF4C 41 80 00 14 */ blt lbl_801B3000 +/* 801B2FF0 001AFF50 C0 22 A8 B4 */ lfs f1, lbl_805AC5D4@sda21(r2) +/* 801B2FF4 001AFF54 C0 01 01 34 */ lfs f0, 0x134(r1) +/* 801B2FF8 001AFF58 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801B2FFC 001AFF5C D0 01 01 34 */ stfs f0, 0x134(r1) +lbl_801B3000: +/* 801B3000 001AFF60 80 AD 90 88 */ lwz r5, lbl_805A7C48@sda21(r13) +/* 801B3004 001AFF64 38 60 00 00 */ li r3, 0 +/* 801B3008 001AFF68 38 80 00 01 */ li r4, 1 +/* 801B300C 001AFF6C 48 1D 6E E9 */ bl __shl2i +/* 801B3010 001AFF70 39 40 00 00 */ li r10, 0 +/* 801B3014 001AFF74 38 00 00 03 */ li r0, 3 +/* 801B3018 001AFF78 90 81 00 E4 */ stw r4, 0xe4(r1) +/* 801B301C 001AFF7C 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801B3020 001AFF80 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 801B3024 001AFF84 38 A1 00 2C */ addi r5, r1, 0x2c +/* 801B3028 001AFF88 90 61 00 E0 */ stw r3, 0xe0(r1) +/* 801B302C 001AFF8C 38 81 00 34 */ addi r4, r1, 0x34 +/* 801B3030 001AFF90 7F C3 F3 78 */ mr r3, r30 +/* 801B3034 001AFF94 38 C1 00 24 */ addi r6, r1, 0x24 +/* 801B3038 001AFF98 91 41 00 EC */ stw r10, 0xec(r1) +/* 801B303C 001AFF9C 38 E1 01 2C */ addi r7, r1, 0x12c +/* 801B3040 001AFFA0 39 01 00 E0 */ addi r8, r1, 0xe0 +/* 801B3044 001AFFA4 91 41 00 E8 */ stw r10, 0xe8(r1) +/* 801B3048 001AFFA8 90 01 00 F0 */ stw r0, 0xf0(r1) +/* 801B304C 001AFFAC A0 1F 00 08 */ lhz r0, 8(r31) +/* 801B3050 001AFFB0 B0 01 00 24 */ sth r0, 0x24(r1) +/* 801B3054 001AFFB4 81 5E 08 4C */ lwz r10, 0x84c(r30) +/* 801B3058 001AFFB8 B0 01 00 20 */ sth r0, 0x20(r1) +/* 801B305C 001AFFBC A1 4A 00 08 */ lhz r10, 8(r10) +/* 801B3060 001AFFC0 B1 41 00 2C */ sth r10, 0x2c(r1) +/* 801B3064 001AFFC4 A0 1F 00 08 */ lhz r0, 8(r31) +/* 801B3068 001AFFC8 B1 41 00 28 */ sth r10, 0x28(r1) +/* 801B306C 001AFFCC B0 01 00 30 */ sth r0, 0x30(r1) +/* 801B3070 001AFFD0 B0 01 00 34 */ sth r0, 0x34(r1) +/* 801B3074 001AFFD4 4B E9 70 2D */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +/* 801B3078 001AFFD8 C0 1F 04 24 */ lfs f0, 0x424(r31) +/* 801B307C 001AFFDC D0 1F 04 20 */ stfs f0, 0x420(r31) +/* 801B3080 001AFFE0 48 00 03 DC */ b lbl_801B345C +/* 801B3084 001AFFE4 81 83 00 00 */ lwz r12, 0(r3) +/* 801B3088 001AFFE8 7F C4 F3 78 */ mr r4, r30 +/* 801B308C 001AFFEC 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801B3090 001AFFF0 7D 89 03 A6 */ mtctr r12 +/* 801B3094 001AFFF4 4E 80 04 21 */ bctrl +/* 801B3098 001AFFF8 C0 23 00 00 */ lfs f1, 0(r3) +/* 801B309C 001AFFFC C0 02 A8 BC */ lfs f0, lbl_805AC5DC@sda21(r2) +/* 801B30A0 001B0000 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B30A4 001B0004 40 81 03 B8 */ ble lbl_801B345C +/* 801B30A8 001B0008 A0 1D 00 00 */ lhz r0, 0(r29) +/* 801B30AC 001B000C 7F E3 FB 78 */ mr r3, r31 +/* 801B30B0 001B0010 38 81 00 1C */ addi r4, r1, 0x1c +/* 801B30B4 001B0014 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 801B30B8 001B0018 4B FF BB 01 */ bl sub_801aebb8 +/* 801B30BC 001B001C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B30C0 001B0020 41 82 03 9C */ beq lbl_801B345C +/* 801B30C4 001B0024 A0 1D 00 00 */ lhz r0, 0(r29) +/* 801B30C8 001B0028 7F C3 F3 78 */ mr r3, r30 +/* 801B30CC 001B002C 38 81 00 18 */ addi r4, r1, 0x18 +/* 801B30D0 001B0030 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801B30D4 001B0034 4B E9 94 D1 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801B30D8 001B0038 7C 64 1B 78 */ mr r4, r3 +/* 801B30DC 001B003C 38 61 00 8C */ addi r3, r1, 0x8c +/* 801B30E0 001B0040 4B EF C2 6D */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801B30E4 001B0044 80 83 00 04 */ lwz r4, 4(r3) +/* 801B30E8 001B0048 28 04 00 00 */ cmplwi r4, 0 +/* 801B30EC 001B004C 41 82 03 70 */ beq lbl_801B345C +/* 801B30F0 001B0050 38 61 00 14 */ addi r3, r1, 0x14 +/* 801B30F4 001B0054 4B FF 5A 99 */ bl GetLastTouchedObject__15CCollisionActorCFv +/* 801B30F8 001B0058 A0 01 00 14 */ lhz r0, 0x14(r1) +/* 801B30FC 001B005C 7F C3 F3 78 */ mr r3, r30 +/* 801B3100 001B0060 38 81 00 10 */ addi r4, r1, 0x10 +/* 801B3104 001B0064 B0 01 00 54 */ sth r0, 0x54(r1) +/* 801B3108 001B0068 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801B310C 001B006C 4B E9 94 99 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801B3110 001B0070 7C 64 1B 78 */ mr r4, r3 +/* 801B3114 001B0074 38 61 00 84 */ addi r3, r1, 0x84 +/* 801B3118 001B0078 4B EF A5 F5 */ bl "__ct__29TCastToPtr<15CGameProjectile>FP7CEntity" +/* 801B311C 001B007C 83 63 00 04 */ lwz r27, 4(r3) +/* 801B3120 001B0080 28 1B 00 00 */ cmplwi r27, 0 +/* 801B3124 001B0084 41 82 03 38 */ beq lbl_801B345C +/* 801B3128 001B0088 80 1F 07 80 */ lwz r0, 0x780(r31) +/* 801B312C 001B008C 2C 00 00 03 */ cmpwi r0, 3 +/* 801B3130 001B0090 41 82 00 08 */ beq lbl_801B3138 +/* 801B3134 001B0094 48 00 03 28 */ b lbl_801B345C +lbl_801B3138: +/* 801B3138 001B0098 7F E3 FB 78 */ mr r3, r31 +/* 801B313C 001B009C 7F C4 F3 78 */ mr r4, r30 +/* 801B3140 001B00A0 81 9F 00 00 */ lwz r12, 0(r31) +/* 801B3144 001B00A4 C0 22 A8 BC */ lfs f1, lbl_805AC5DC@sda21(r2) +/* 801B3148 001B00A8 81 8C 02 88 */ lwz r12, 0x288(r12) +/* 801B314C 001B00AC 7D 89 03 A6 */ mtctr r12 +/* 801B3150 001B00B0 4E 80 04 21 */ bctrl +/* 801B3154 001B00B4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B3158 001B00B8 40 82 01 90 */ bne lbl_801B32E8 +/* 801B315C 001B00BC 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801B3160 001B00C0 38 80 00 0A */ li r4, 0xa +/* 801B3164 001B00C4 4B F8 7A 51 */ bl HasBodyState__15CBodyControllerCFQ23pas15EAnimationState +/* 801B3168 001B00C8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B316C 001B00CC 41 82 01 7C */ beq lbl_801B32E8 +/* 801B3170 001B00D0 81 9F 00 00 */ lwz r12, 0(r31) +/* 801B3174 001B00D4 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801B3178 001B00D8 7F E3 FB 78 */ mr r3, r31 +/* 801B317C 001B00DC C0 22 A8 BC */ lfs f1, lbl_805AC5DC@sda21(r2) +/* 801B3180 001B00E0 81 8C 00 90 */ lwz r12, 0x90(r12) +/* 801B3184 001B00E4 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 801B3188 001B00E8 7D 89 03 A6 */ mtctr r12 +/* 801B318C 001B00EC 4E 80 04 21 */ bctrl +/* 801B3190 001B00F0 C0 3F 06 AC */ lfs f1, 0x6ac(r31) +/* 801B3194 001B00F4 C0 1B 01 34 */ lfs f0, 0x134(r27) +/* 801B3198 001B00F8 C0 5F 08 10 */ lfs f2, 0x810(r31) +/* 801B319C 001B00FC EC 01 00 28 */ fsubs f0, f1, f0 +/* 801B31A0 001B0100 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801B31A4 001B0104 4C 41 13 82 */ cror 2, 1, 2 +/* 801B31A8 001B0108 40 82 00 6C */ bne lbl_801B3214 +/* 801B31AC 001B010C 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 801B31B0 001B0110 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801B31B4 001B0114 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l +/* 801B31B8 001B0118 3C 80 80 3E */ lis r4, lbl_803DAA38@ha +/* 801B31BC 001B011C 90 01 00 A8 */ stw r0, 0xa8(r1) +/* 801B31C0 001B0120 38 A4 AA 38 */ addi r5, r4, lbl_803DAA38@l +/* 801B31C4 001B0124 38 80 00 09 */ li r4, 9 +/* 801B31C8 001B0128 38 00 00 01 */ li r0, 1 +/* 801B31CC 001B012C 3B 63 00 04 */ addi r27, r3, 4 +/* 801B31D0 001B0130 90 81 00 AC */ stw r4, 0xac(r1) +/* 801B31D4 001B0134 7F 63 DB 78 */ mr r3, r27 +/* 801B31D8 001B0138 38 80 00 09 */ li r4, 9 +/* 801B31DC 001B013C 90 A1 00 A8 */ stw r5, 0xa8(r1) +/* 801B31E0 001B0140 90 01 00 B0 */ stw r0, 0xb0(r1) +/* 801B31E4 001B0144 4B F7 E2 55 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801B31E8 001B0148 80 01 00 AC */ lwz r0, 0xac(r1) +/* 801B31EC 001B014C 3C 60 80 3E */ lis r3, lbl_803DAA38@ha +/* 801B31F0 001B0150 38 83 AA 38 */ addi r4, r3, lbl_803DAA38@l +/* 801B31F4 001B0154 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B31F8 001B0158 90 1B 01 64 */ stw r0, 0x164(r27) +/* 801B31FC 001B015C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801B3200 001B0160 80 61 00 B0 */ lwz r3, 0xb0(r1) +/* 801B3204 001B0164 90 81 00 A8 */ stw r4, 0xa8(r1) +/* 801B3208 001B0168 90 7B 01 68 */ stw r3, 0x168(r27) +/* 801B320C 001B016C 90 01 00 A8 */ stw r0, 0xa8(r1) +/* 801B3210 001B0170 48 00 02 4C */ b lbl_801B345C +lbl_801B3214: +/* 801B3214 001B0174 A0 7D 00 00 */ lhz r3, 0(r29) +/* 801B3218 001B0178 A0 1F 08 0C */ lhz r0, 0x80c(r31) +/* 801B321C 001B017C 7C 03 00 40 */ cmplw r3, r0 +/* 801B3220 001B0180 40 82 02 3C */ bne lbl_801B345C +/* 801B3224 001B0184 88 7B 01 30 */ lbz r3, 0x130(r27) +/* 801B3228 001B0188 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f +/* 801B322C 001B018C 40 82 00 18 */ bne lbl_801B3244 +/* 801B3230 001B0190 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f +/* 801B3234 001B0194 40 82 00 10 */ bne lbl_801B3244 +/* 801B3238 001B0198 80 1B 01 2C */ lwz r0, 0x12c(r27) +/* 801B323C 001B019C 2C 00 00 06 */ cmpwi r0, 6 +/* 801B3240 001B01A0 40 82 02 1C */ bne lbl_801B345C +lbl_801B3244: +/* 801B3244 001B01A4 C0 5F 00 58 */ lfs f2, 0x58(r31) +/* 801B3248 001B01A8 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B324C 001B01AC C0 3F 00 48 */ lfs f1, 0x48(r31) +/* 801B3250 001B01B0 38 A3 AA 68 */ addi r5, r3, lbl_803DAA68@l +/* 801B3254 001B01B4 C0 1F 00 38 */ lfs f0, 0x38(r31) +/* 801B3258 001B01B8 FC 40 10 50 */ fneg f2, f2 +/* 801B325C 001B01BC FC 20 08 50 */ fneg f1, f1 +/* 801B3260 001B01C0 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801B3264 001B01C4 FC 00 00 50 */ fneg f0, f0 +/* 801B3268 001B01C8 3C 80 80 3E */ lis r4, lbl_803DAA44@ha +/* 801B326C 001B01CC 38 C0 00 04 */ li r6, 4 +/* 801B3270 001B01D0 38 00 00 01 */ li r0, 1 +/* 801B3274 001B01D4 3B 63 00 04 */ addi r27, r3, 4 +/* 801B3278 001B01D8 90 A1 00 C4 */ stw r5, 0xc4(r1) +/* 801B327C 001B01DC 38 A4 AA 44 */ addi r5, r4, lbl_803DAA44@l +/* 801B3280 001B01E0 38 80 00 04 */ li r4, 4 +/* 801B3284 001B01E4 90 C1 00 C8 */ stw r6, 0xc8(r1) +/* 801B3288 001B01E8 7F 63 DB 78 */ mr r3, r27 +/* 801B328C 001B01EC 90 A1 00 C4 */ stw r5, 0xc4(r1) +/* 801B3290 001B01F0 D0 01 00 CC */ stfs f0, 0xcc(r1) +/* 801B3294 001B01F4 D0 21 00 D0 */ stfs f1, 0xd0(r1) +/* 801B3298 001B01F8 D0 41 00 D4 */ stfs f2, 0xd4(r1) +/* 801B329C 001B01FC 90 01 00 D8 */ stw r0, 0xd8(r1) +/* 801B32A0 001B0200 4B F7 E1 99 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801B32A4 001B0204 80 01 00 C8 */ lwz r0, 0xc8(r1) +/* 801B32A8 001B0208 3C 60 80 3E */ lis r3, lbl_803DAA44@ha +/* 801B32AC 001B020C 38 83 AA 44 */ addi r4, r3, lbl_803DAA44@l +/* 801B32B0 001B0210 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B32B4 001B0214 90 1B 00 F8 */ stw r0, 0xf8(r27) +/* 801B32B8 001B0218 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801B32BC 001B021C 80 A1 00 CC */ lwz r5, 0xcc(r1) +/* 801B32C0 001B0220 80 61 00 D0 */ lwz r3, 0xd0(r1) +/* 801B32C4 001B0224 90 BB 00 FC */ stw r5, 0xfc(r27) +/* 801B32C8 001B0228 80 A1 00 D4 */ lwz r5, 0xd4(r1) +/* 801B32CC 001B022C 90 7B 01 00 */ stw r3, 0x100(r27) +/* 801B32D0 001B0230 80 61 00 D8 */ lwz r3, 0xd8(r1) +/* 801B32D4 001B0234 90 BB 01 04 */ stw r5, 0x104(r27) +/* 801B32D8 001B0238 90 81 00 C4 */ stw r4, 0xc4(r1) +/* 801B32DC 001B023C 90 7B 01 08 */ stw r3, 0x108(r27) +/* 801B32E0 001B0240 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 801B32E4 001B0244 48 00 01 78 */ b lbl_801B345C +lbl_801B32E8: +/* 801B32E8 001B0248 88 1F 08 E5 */ lbz r0, 0x8e5(r31) +/* 801B32EC 001B024C 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 801B32F0 001B0250 41 82 00 24 */ beq lbl_801B3314 +/* 801B32F4 001B0254 81 9F 00 00 */ lwz r12, 0(r31) +/* 801B32F8 001B0258 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801B32FC 001B025C 7F E3 FB 78 */ mr r3, r31 +/* 801B3300 001B0260 C0 22 A8 BC */ lfs f1, lbl_805AC5DC@sda21(r2) +/* 801B3304 001B0264 81 8C 00 90 */ lwz r12, 0x90(r12) +/* 801B3308 001B0268 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 801B330C 001B026C 7D 89 03 A6 */ mtctr r12 +/* 801B3310 001B0270 4E 80 04 21 */ bctrl +lbl_801B3314: +/* 801B3314 001B0274 A0 7D 00 00 */ lhz r3, 0(r29) +/* 801B3318 001B0278 A0 1F 08 0C */ lhz r0, 0x80c(r31) +/* 801B331C 001B027C 7C 03 00 40 */ cmplw r3, r0 +/* 801B3320 001B0280 40 82 01 3C */ bne lbl_801B345C +/* 801B3324 001B0284 88 7B 01 30 */ lbz r3, 0x130(r27) +/* 801B3328 001B0288 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f +/* 801B332C 001B028C 40 82 00 18 */ bne lbl_801B3344 +/* 801B3330 001B0290 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f +/* 801B3334 001B0294 40 82 00 10 */ bne lbl_801B3344 +/* 801B3338 001B0298 80 1B 01 2C */ lwz r0, 0x12c(r27) +/* 801B333C 001B029C 2C 00 00 06 */ cmpwi r0, 6 +/* 801B3340 001B02A0 40 82 01 1C */ bne lbl_801B345C +lbl_801B3344: +/* 801B3344 001B02A4 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B3348 001B02A8 C0 02 A8 DC */ lfs f0, lbl_805AC5FC@sda21(r2) +/* 801B334C 001B02AC 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801B3350 001B02B0 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801B3354 001B02B4 3C 80 80 3E */ lis r4, lbl_803E10BC@ha +/* 801B3358 001B02B8 90 01 00 9C */ stw r0, 0x9c(r1) +/* 801B335C 001B02BC 38 04 10 BC */ addi r0, r4, lbl_803E10BC@l +/* 801B3360 001B02C0 38 80 00 19 */ li r4, 0x19 +/* 801B3364 001B02C4 3B 63 00 04 */ addi r27, r3, 4 +/* 801B3368 001B02C8 90 81 00 A0 */ stw r4, 0xa0(r1) +/* 801B336C 001B02CC 7F 63 DB 78 */ mr r3, r27 +/* 801B3370 001B02D0 38 80 00 19 */ li r4, 0x19 +/* 801B3374 001B02D4 90 01 00 9C */ stw r0, 0x9c(r1) +/* 801B3378 001B02D8 D0 01 00 A4 */ stfs f0, 0xa4(r1) +/* 801B337C 001B02DC 4B F7 E0 BD */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801B3380 001B02E0 80 01 00 A0 */ lwz r0, 0xa0(r1) +/* 801B3384 001B02E4 3C 60 80 3E */ lis r3, lbl_803E10BC@ha +/* 801B3388 001B02E8 38 83 10 BC */ addi r4, r3, lbl_803E10BC@l +/* 801B338C 001B02EC 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801B3390 001B02F0 90 1B 02 7C */ stw r0, 0x27c(r27) +/* 801B3394 001B02F4 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801B3398 001B02F8 C0 01 00 A4 */ lfs f0, 0xa4(r1) +/* 801B339C 001B02FC 90 81 00 9C */ stw r4, 0x9c(r1) +/* 801B33A0 001B0300 D0 1B 02 80 */ stfs f0, 0x280(r27) +/* 801B33A4 001B0304 90 01 00 9C */ stw r0, 0x9c(r1) +/* 801B33A8 001B0308 48 00 00 B4 */ b lbl_801B345C +/* 801B33AC 001B030C 38 00 00 00 */ li r0, 0 +/* 801B33B0 001B0310 90 1F 07 80 */ stw r0, 0x780(r31) +/* 801B33B4 001B0314 48 00 00 A8 */ b lbl_801B345C +/* 801B33B8 001B0318 7F C4 F3 78 */ mr r4, r30 +/* 801B33BC 001B031C 4B FF B5 C5 */ bl sub_801ae980 +/* 801B33C0 001B0320 48 00 00 9C */ b lbl_801B345C +/* 801B33C4 001B0324 88 1F 08 E4 */ lbz r0, 0x8e4(r31) +/* 801B33C8 001B0328 38 60 00 00 */ li r3, 0 +/* 801B33CC 001B032C 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f +/* 801B33D0 001B0330 98 1F 08 E4 */ stb r0, 0x8e4(r31) +/* 801B33D4 001B0334 48 00 00 88 */ b lbl_801B345C +/* 801B33D8 001B0338 88 1F 08 E4 */ lbz r0, 0x8e4(r31) +/* 801B33DC 001B033C 38 60 00 01 */ li r3, 1 +/* 801B33E0 001B0340 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f +/* 801B33E4 001B0344 98 1F 08 E4 */ stb r0, 0x8e4(r31) +/* 801B33E8 001B0348 48 00 00 74 */ b lbl_801B345C +/* 801B33EC 001B034C C0 02 A9 24 */ lfs f0, lbl_805AC644@sda21(r2) +/* 801B33F0 001B0350 38 60 00 01 */ li r3, 1 +/* 801B33F4 001B0354 D0 1F 07 D0 */ stfs f0, 0x7d0(r31) +/* 801B33F8 001B0358 88 1F 08 E5 */ lbz r0, 0x8e5(r31) +/* 801B33FC 001B035C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801B3400 001B0360 98 1F 08 E5 */ stb r0, 0x8e5(r31) +/* 801B3404 001B0364 48 00 00 58 */ b lbl_801B345C +/* 801B3408 001B0368 A0 1D 00 00 */ lhz r0, 0(r29) +/* 801B340C 001B036C 7F C3 F3 78 */ mr r3, r30 +/* 801B3410 001B0370 38 81 00 0C */ addi r4, r1, 0xc +/* 801B3414 001B0374 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801B3418 001B0378 4B E9 91 8D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801B341C 001B037C 7C 64 1B 78 */ mr r4, r3 +/* 801B3420 001B0380 38 61 00 7C */ addi r3, r1, 0x7c +/* 801B3424 001B0384 4B EF A2 E9 */ bl "__ct__29TCastToPtr<15CGameProjectile>FP7CEntity" +/* 801B3428 001B0388 80 03 00 04 */ lwz r0, 4(r3) +/* 801B342C 001B038C 28 00 00 00 */ cmplwi r0, 0 +/* 801B3430 001B0390 41 82 00 2C */ beq lbl_801B345C +/* 801B3434 001B0394 80 1F 07 88 */ lwz r0, 0x788(r31) +/* 801B3438 001B0398 90 1F 07 F8 */ stw r0, 0x7f8(r31) +/* 801B343C 001B039C 48 00 00 20 */ b lbl_801B345C +/* 801B3440 001B03A0 C0 02 A8 BC */ lfs f0, lbl_805AC5DC@sda21(r2) +/* 801B3444 001B03A4 D0 1F 07 D4 */ stfs f0, 0x7d4(r31) +/* 801B3448 001B03A8 48 00 00 14 */ b lbl_801B345C +/* 801B344C 001B03AC 88 1F 08 E5 */ lbz r0, 0x8e5(r31) +/* 801B3450 001B03B0 38 60 00 01 */ li r3, 1 +/* 801B3454 001B03B4 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801B3458 001B03B8 98 1F 08 E5 */ stb r0, 0x8e5(r31) +lbl_801B345C: +/* 801B345C 001B03BC A0 1D 00 00 */ lhz r0, 0(r29) +/* 801B3460 001B03C0 7F E3 FB 78 */ mr r3, r31 +/* 801B3464 001B03C4 7F 84 E3 78 */ mr r4, r28 +/* 801B3468 001B03C8 7F C6 F3 78 */ mr r6, r30 +/* 801B346C 001B03CC B0 01 00 08 */ sth r0, 8(r1) +/* 801B3470 001B03D0 38 A1 00 08 */ addi r5, r1, 8 +/* 801B3474 001B03D4 4B EC 97 05 */ bl AcceptScriptMsg__10CPatternedF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 801B3478 001B03D8 BB 21 01 54 */ lmw r25, 0x154(r1) +/* 801B347C 001B03DC 80 01 01 74 */ lwz r0, 0x174(r1) +/* 801B3480 001B03E0 7C 08 03 A6 */ mtlr r0 +/* 801B3484 001B03E4 38 21 01 70 */ addi r1, r1, 0x170 +/* 801B3488 001B03E8 4E 80 00 20 */ blr + +.global Accept__9CFlaahgraFR8IVisitor +Accept__9CFlaahgraFR8IVisitor: +/* 801B348C 001B03EC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B3490 001B03F0 7C 08 02 A6 */ mflr r0 +/* 801B3494 001B03F4 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B3498 001B03F8 7C 60 1B 78 */ mr r0, r3 +/* 801B349C 001B03FC 7C 83 23 78 */ mr r3, r4 +/* 801B34A0 001B0400 81 84 00 00 */ lwz r12, 0(r4) +/* 801B34A4 001B0404 7C 04 03 78 */ mr r4, r0 +/* 801B34A8 001B0408 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801B34AC 001B040C 7D 89 03 A6 */ mtctr r12 +/* 801B34B0 001B0410 4E 80 04 21 */ bctrl +/* 801B34B4 001B0414 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B34B8 001B0418 7C 08 03 A6 */ mtlr r0 +/* 801B34BC 001B041C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B34C0 001B0420 4E 80 00 20 */ blr + +.global Think__9CFlaahgraFfR13CStateManager +Think__9CFlaahgraFfR13CStateManager: +/* 801B34C4 001B0424 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801B34C8 001B0428 7C 08 02 A6 */ mflr r0 +/* 801B34CC 001B042C 90 01 00 34 */ stw r0, 0x34(r1) +/* 801B34D0 001B0430 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 801B34D4 001B0434 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 801B34D8 001B0438 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801B34DC 001B043C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801B34E0 001B0440 88 03 00 30 */ lbz r0, 0x30(r3) +/* 801B34E4 001B0444 FF E0 08 90 */ fmr f31, f1 +/* 801B34E8 001B0448 7C 7E 1B 78 */ mr r30, r3 +/* 801B34EC 001B044C 7C 9F 23 78 */ mr r31, r4 +/* 801B34F0 001B0450 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801B34F4 001B0454 41 82 00 BC */ beq lbl_801B35B0 +/* 801B34F8 001B0458 4B EC 66 21 */ bl Think__10CPatternedFfR13CStateManager +/* 801B34FC 001B045C FC 20 F8 90 */ fmr f1, f31 +/* 801B3500 001B0460 80 7E 06 CC */ lwz r3, 0x6cc(r30) +/* 801B3504 001B0464 4B FC 24 A5 */ bl Update__13CBoneTrackingFf +/* 801B3508 001B0468 FC 20 F8 90 */ fmr f1, f31 +/* 801B350C 001B046C 7F C3 F3 78 */ mr r3, r30 +/* 801B3510 001B0470 7F E4 FB 78 */ mr r4, r31 +/* 801B3514 001B0474 4B FF BB 41 */ bl sub_801af054 +/* 801B3518 001B0478 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 801B351C 001B047C 7F E4 FB 78 */ mr r4, r31 +/* 801B3520 001B0480 81 1E 04 50 */ lwz r8, 0x450(r30) +/* 801B3524 001B0484 38 DE 00 34 */ addi r6, r30, 0x34 +/* 801B3528 001B0488 C0 03 00 00 */ lfs f0, 0(r3) +/* 801B352C 001B048C 38 E1 00 08 */ addi r7, r1, 8 +/* 801B3530 001B0490 D0 01 00 08 */ stfs f0, 8(r1) +/* 801B3534 001B0494 C0 03 00 04 */ lfs f0, 4(r3) +/* 801B3538 001B0498 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801B353C 001B049C C0 03 00 08 */ lfs f0, 8(r3) +/* 801B3540 001B04A0 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801B3544 001B04A4 80 BE 00 64 */ lwz r5, 0x64(r30) +/* 801B3548 001B04A8 80 7E 06 CC */ lwz r3, 0x6cc(r30) +/* 801B354C 001B04AC 80 A5 00 10 */ lwz r5, 0x10(r5) +/* 801B3550 001B04B0 4B FC 23 C1 */ bl PreRender__13CBoneTrackingFRC13CStateManagerR9CAnimDataRC12CTransform4fRC9CVector3fRC15CBodyController +/* 801B3554 001B04B4 FC 20 F8 90 */ fmr f1, f31 +/* 801B3558 001B04B8 7F C3 F3 78 */ mr r3, r30 +/* 801B355C 001B04BC 4B FF B5 05 */ bl sub_801aea60 +/* 801B3560 001B04C0 7F C3 F3 78 */ mr r3, r30 +/* 801B3564 001B04C4 7F E4 FB 78 */ mr r4, r31 +/* 801B3568 001B04C8 4B FF B6 95 */ bl sub_801aebfc +/* 801B356C 001B04CC FC 20 F8 90 */ fmr f1, f31 +/* 801B3570 001B04D0 7F C3 F3 78 */ mr r3, r30 +/* 801B3574 001B04D4 7F E4 FB 78 */ mr r4, r31 +/* 801B3578 001B04D8 4B FF AE C9 */ bl sub_801ae440 +/* 801B357C 001B04DC 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801B3580 001B04E0 C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) +/* 801B3584 001B04E4 D0 1E 01 5C */ stfs f0, 0x15c(r30) +/* 801B3588 001B04E8 C0 03 00 04 */ lfs f0, 4(r3) +/* 801B358C 001B04EC D0 1E 01 60 */ stfs f0, 0x160(r30) +/* 801B3590 001B04F0 C0 03 00 08 */ lfs f0, 8(r3) +/* 801B3594 001B04F4 D0 1E 01 64 */ stfs f0, 0x164(r30) +/* 801B3598 001B04F8 C0 03 00 00 */ lfs f0, 0(r3) +/* 801B359C 001B04FC D0 1E 01 68 */ stfs f0, 0x168(r30) +/* 801B35A0 001B0500 C0 03 00 04 */ lfs f0, 4(r3) +/* 801B35A4 001B0504 D0 1E 01 6C */ stfs f0, 0x16c(r30) +/* 801B35A8 001B0508 C0 03 00 08 */ lfs f0, 8(r3) +/* 801B35AC 001B050C D0 1E 01 70 */ stfs f0, 0x170(r30) +lbl_801B35B0: +/* 801B35B0 001B0510 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 801B35B4 001B0514 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801B35B8 001B0518 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 801B35BC 001B051C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801B35C0 001B0520 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801B35C4 001B0524 7C 08 03 A6 */ mtlr r0 +/* 801B35C8 001B0528 38 21 00 30 */ addi r1, r1, 0x30 +/* 801B35CC 001B052C 4E 80 00 20 */ blr + +.global PreThink__9CFlaahgraFfR13CStateManager +PreThink__9CFlaahgraFfR13CStateManager: +/* 801B35D0 001B0530 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801B35D4 001B0534 7C 08 02 A6 */ mflr r0 +/* 801B35D8 001B0538 90 01 00 24 */ stw r0, 0x24(r1) +/* 801B35DC 001B053C DB E1 00 18 */ stfd f31, 0x18(r1) +/* 801B35E0 001B0540 FF E0 08 90 */ fmr f31, f1 +/* 801B35E4 001B0544 93 E1 00 14 */ stw r31, 0x14(r1) +/* 801B35E8 001B0548 7C 9F 23 78 */ mr r31, r4 +/* 801B35EC 001B054C 93 C1 00 10 */ stw r30, 0x10(r1) +/* 801B35F0 001B0550 7C 7E 1B 78 */ mr r30, r3 +/* 801B35F4 001B0554 88 03 08 E4 */ lbz r0, 0x8e4(r3) +/* 801B35F8 001B0558 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801B35FC 001B055C 40 82 00 08 */ bne lbl_801B3604 +/* 801B3600 001B0560 4B FF A4 F9 */ bl sub_801adaf8 +lbl_801B3604: +/* 801B3604 001B0564 FC 20 F8 90 */ fmr f1, f31 +/* 801B3608 001B0568 7F C3 F3 78 */ mr r3, r30 +/* 801B360C 001B056C 7F E4 FB 78 */ mr r4, r31 +/* 801B3610 001B0570 4B EC 43 81 */ bl PreThink__10CPatternedFfR13CStateManager +/* 801B3614 001B0574 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801B3618 001B0578 CB E1 00 18 */ lfd f31, 0x18(r1) +/* 801B361C 001B057C 83 E1 00 14 */ lwz r31, 0x14(r1) +/* 801B3620 001B0580 83 C1 00 10 */ lwz r30, 0x10(r1) +/* 801B3624 001B0584 7C 08 03 A6 */ mtlr r0 +/* 801B3628 001B0588 38 21 00 20 */ addi r1, r1, 0x20 +/* 801B362C 001B058C 4E 80 00 20 */ blr + +.global __dt__9CFlaahgraFv +__dt__9CFlaahgraFv: +/* 801B3630 001B0590 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801B3634 001B0594 7C 08 02 A6 */ mflr r0 +/* 801B3638 001B0598 90 01 00 34 */ stw r0, 0x34(r1) +/* 801B363C 001B059C 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801B3640 001B05A0 7C 9F 23 78 */ mr r31, r4 +/* 801B3644 001B05A4 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801B3648 001B05A8 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801B364C 001B05AC 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801B3650 001B05B0 93 81 00 20 */ stw r28, 0x20(r1) +/* 801B3654 001B05B4 41 82 03 58 */ beq lbl_801B39AC +/* 801B3658 001B05B8 3C 60 80 3E */ lis r3, lbl_803E4E88@ha +/* 801B365C 001B05BC 34 1E 08 D4 */ addic. r0, r30, 0x8d4 +/* 801B3660 001B05C0 38 03 4E 88 */ addi r0, r3, lbl_803E4E88@l +/* 801B3664 001B05C4 90 1E 00 00 */ stw r0, 0(r30) +/* 801B3668 001B05C8 41 82 00 50 */ beq lbl_801B36B8 +/* 801B366C 001B05CC 80 1E 08 D8 */ lwz r0, 0x8d8(r30) +/* 801B3670 001B05D0 83 9E 08 E0 */ lwz r28, 0x8e0(r30) +/* 801B3674 001B05D4 54 00 18 38 */ slwi r0, r0, 3 +/* 801B3678 001B05D8 7F BC 02 14 */ add r29, r28, r0 +/* 801B367C 001B05DC 93 81 00 0C */ stw r28, 0xc(r1) +/* 801B3680 001B05E0 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801B3684 001B05E4 93 A1 00 10 */ stw r29, 0x10(r1) +/* 801B3688 001B05E8 93 81 00 08 */ stw r28, 8(r1) +/* 801B368C 001B05EC 48 00 00 14 */ b lbl_801B36A0 +lbl_801B3690: +/* 801B3690 001B05F0 7F 83 E3 78 */ mr r3, r28 +/* 801B3694 001B05F4 38 80 FF FF */ li r4, -1 +/* 801B3698 001B05F8 48 18 D7 A9 */ bl __dt__6CTokenFv +/* 801B369C 001B05FC 3B 9C 00 08 */ addi r28, r28, 8 +lbl_801B36A0: +/* 801B36A0 001B0600 7C 1C E8 40 */ cmplw r28, r29 +/* 801B36A4 001B0604 40 82 FF EC */ bne lbl_801B3690 +/* 801B36A8 001B0608 80 7E 08 E0 */ lwz r3, 0x8e0(r30) +/* 801B36AC 001B060C 28 03 00 00 */ cmplwi r3, 0 +/* 801B36B0 001B0610 41 82 00 08 */ beq lbl_801B36B8 +/* 801B36B4 001B0614 48 16 22 7D */ bl Free__7CMemoryFPCv +lbl_801B36B8: +/* 801B36B8 001B0618 34 1E 08 C8 */ addic. r0, r30, 0x8c8 +/* 801B36BC 001B061C 41 82 00 24 */ beq lbl_801B36E0 +/* 801B36C0 001B0620 88 1E 08 D0 */ lbz r0, 0x8d0(r30) +/* 801B36C4 001B0624 28 00 00 00 */ cmplwi r0, 0 +/* 801B36C8 001B0628 41 82 00 10 */ beq lbl_801B36D8 +/* 801B36CC 001B062C 38 7E 08 C8 */ addi r3, r30, 0x8c8 +/* 801B36D0 001B0630 38 80 FF FF */ li r4, -1 +/* 801B36D4 001B0634 48 18 D7 6D */ bl __dt__6CTokenFv +lbl_801B36D8: +/* 801B36D8 001B0638 38 00 00 00 */ li r0, 0 +/* 801B36DC 001B063C 98 1E 08 D0 */ stb r0, 0x8d0(r30) +lbl_801B36E0: +/* 801B36E0 001B0640 34 1E 08 60 */ addic. r0, r30, 0x860 +/* 801B36E4 001B0644 41 82 00 58 */ beq lbl_801B373C +/* 801B36E8 001B0648 80 BE 08 60 */ lwz r5, 0x860(r30) +/* 801B36EC 001B064C 38 60 00 00 */ li r3, 0 +/* 801B36F0 001B0650 2C 05 00 00 */ cmpwi r5, 0 +/* 801B36F4 001B0654 40 81 00 40 */ ble lbl_801B3734 +/* 801B36F8 001B0658 2C 05 00 08 */ cmpwi r5, 8 +/* 801B36FC 001B065C 38 85 FF F8 */ addi r4, r5, -8 +/* 801B3700 001B0660 40 81 00 20 */ ble lbl_801B3720 +/* 801B3704 001B0664 38 04 00 07 */ addi r0, r4, 7 +/* 801B3708 001B0668 54 00 E8 FE */ srwi r0, r0, 3 +/* 801B370C 001B066C 7C 09 03 A6 */ mtctr r0 +/* 801B3710 001B0670 2C 04 00 00 */ cmpwi r4, 0 +/* 801B3714 001B0674 40 81 00 0C */ ble lbl_801B3720 +lbl_801B3718: +/* 801B3718 001B0678 38 63 00 08 */ addi r3, r3, 8 +/* 801B371C 001B067C 42 00 FF FC */ bdnz lbl_801B3718 +lbl_801B3720: +/* 801B3720 001B0680 7C 03 28 50 */ subf r0, r3, r5 +/* 801B3724 001B0684 7C 09 03 A6 */ mtctr r0 +/* 801B3728 001B0688 7C 03 28 00 */ cmpw r3, r5 +/* 801B372C 001B068C 40 80 00 08 */ bge lbl_801B3734 +lbl_801B3730: +/* 801B3730 001B0690 42 00 00 00 */ bdnz lbl_801B3730 +lbl_801B3734: +/* 801B3734 001B0694 38 00 00 00 */ li r0, 0 +/* 801B3738 001B0698 90 1E 08 60 */ stw r0, 0x860(r30) +lbl_801B373C: +/* 801B373C 001B069C 34 1E 08 2C */ addic. r0, r30, 0x82c +/* 801B3740 001B06A0 41 82 00 58 */ beq lbl_801B3798 +/* 801B3744 001B06A4 80 BE 08 2C */ lwz r5, 0x82c(r30) +/* 801B3748 001B06A8 38 60 00 00 */ li r3, 0 +/* 801B374C 001B06AC 2C 05 00 00 */ cmpwi r5, 0 +/* 801B3750 001B06B0 40 81 00 40 */ ble lbl_801B3790 +/* 801B3754 001B06B4 2C 05 00 08 */ cmpwi r5, 8 +/* 801B3758 001B06B8 38 85 FF F8 */ addi r4, r5, -8 +/* 801B375C 001B06BC 40 81 00 20 */ ble lbl_801B377C +/* 801B3760 001B06C0 38 04 00 07 */ addi r0, r4, 7 +/* 801B3764 001B06C4 54 00 E8 FE */ srwi r0, r0, 3 +/* 801B3768 001B06C8 7C 09 03 A6 */ mtctr r0 +/* 801B376C 001B06CC 2C 04 00 00 */ cmpwi r4, 0 +/* 801B3770 001B06D0 40 81 00 0C */ ble lbl_801B377C +lbl_801B3774: +/* 801B3774 001B06D4 38 63 00 08 */ addi r3, r3, 8 +/* 801B3778 001B06D8 42 00 FF FC */ bdnz lbl_801B3774 +lbl_801B377C: +/* 801B377C 001B06DC 7C 03 28 50 */ subf r0, r3, r5 +/* 801B3780 001B06E0 7C 09 03 A6 */ mtctr r0 +/* 801B3784 001B06E4 7C 03 28 00 */ cmpw r3, r5 +/* 801B3788 001B06E8 40 80 00 08 */ bge lbl_801B3790 +lbl_801B378C: +/* 801B378C 001B06EC 42 00 00 00 */ bdnz lbl_801B378C +lbl_801B3790: +/* 801B3790 001B06F0 38 00 00 00 */ li r0, 0 +/* 801B3794 001B06F4 90 1E 08 2C */ stw r0, 0x82c(r30) +lbl_801B3798: +/* 801B3798 001B06F8 34 1E 07 FC */ addic. r0, r30, 0x7fc +/* 801B379C 001B06FC 41 82 00 58 */ beq lbl_801B37F4 +/* 801B37A0 001B0700 80 BE 07 FC */ lwz r5, 0x7fc(r30) +/* 801B37A4 001B0704 38 60 00 00 */ li r3, 0 +/* 801B37A8 001B0708 2C 05 00 00 */ cmpwi r5, 0 +/* 801B37AC 001B070C 40 81 00 40 */ ble lbl_801B37EC +/* 801B37B0 001B0710 2C 05 00 08 */ cmpwi r5, 8 +/* 801B37B4 001B0714 38 85 FF F8 */ addi r4, r5, -8 +/* 801B37B8 001B0718 40 81 00 20 */ ble lbl_801B37D8 +/* 801B37BC 001B071C 38 04 00 07 */ addi r0, r4, 7 +/* 801B37C0 001B0720 54 00 E8 FE */ srwi r0, r0, 3 +/* 801B37C4 001B0724 7C 09 03 A6 */ mtctr r0 +/* 801B37C8 001B0728 2C 04 00 00 */ cmpwi r4, 0 +/* 801B37CC 001B072C 40 81 00 0C */ ble lbl_801B37D8 +lbl_801B37D0: +/* 801B37D0 001B0730 38 63 00 08 */ addi r3, r3, 8 +/* 801B37D4 001B0734 42 00 FF FC */ bdnz lbl_801B37D0 +lbl_801B37D8: +/* 801B37D8 001B0738 7C 03 28 50 */ subf r0, r3, r5 +/* 801B37DC 001B073C 7C 09 03 A6 */ mtctr r0 +/* 801B37E0 001B0740 7C 03 28 00 */ cmpw r3, r5 +/* 801B37E4 001B0744 40 80 00 08 */ bge lbl_801B37EC +lbl_801B37E8: +/* 801B37E8 001B0748 42 00 00 00 */ bdnz lbl_801B37E8 +lbl_801B37EC: +/* 801B37EC 001B074C 38 00 00 00 */ li r0, 0 +/* 801B37F0 001B0750 90 1E 07 FC */ stw r0, 0x7fc(r30) +lbl_801B37F4: +/* 801B37F4 001B0754 34 1E 07 A4 */ addic. r0, r30, 0x7a4 +/* 801B37F8 001B0758 41 82 00 10 */ beq lbl_801B3808 +/* 801B37FC 001B075C 80 7E 07 A4 */ lwz r3, 0x7a4(r30) +/* 801B3800 001B0760 38 80 00 01 */ li r4, 1 +/* 801B3804 001B0764 4B FF 40 D9 */ bl sub_801a78dc +lbl_801B3808: +/* 801B3808 001B0768 34 1E 07 A0 */ addic. r0, r30, 0x7a0 +/* 801B380C 001B076C 41 82 00 10 */ beq lbl_801B381C +/* 801B3810 001B0770 80 7E 07 A0 */ lwz r3, 0x7a0(r30) +/* 801B3814 001B0774 38 80 00 01 */ li r4, 1 +/* 801B3818 001B0778 4B FF 40 C5 */ bl sub_801a78dc +lbl_801B381C: +/* 801B381C 001B077C 34 1E 07 9C */ addic. r0, r30, 0x79c +/* 801B3820 001B0780 41 82 00 10 */ beq lbl_801B3830 +/* 801B3824 001B0784 80 7E 07 9C */ lwz r3, 0x79c(r30) +/* 801B3828 001B0788 38 80 00 01 */ li r4, 1 +/* 801B382C 001B078C 4B FF 40 B1 */ bl sub_801a78dc +lbl_801B3830: +/* 801B3830 001B0790 34 1E 07 70 */ addic. r0, r30, 0x770 +/* 801B3834 001B0794 41 82 00 58 */ beq lbl_801B388C +/* 801B3838 001B0798 80 BE 07 70 */ lwz r5, 0x770(r30) +/* 801B383C 001B079C 38 60 00 00 */ li r3, 0 +/* 801B3840 001B07A0 2C 05 00 00 */ cmpwi r5, 0 +/* 801B3844 001B07A4 40 81 00 40 */ ble lbl_801B3884 +/* 801B3848 001B07A8 2C 05 00 08 */ cmpwi r5, 8 +/* 801B384C 001B07AC 38 85 FF F8 */ addi r4, r5, -8 +/* 801B3850 001B07B0 40 81 00 20 */ ble lbl_801B3870 +/* 801B3854 001B07B4 38 04 00 07 */ addi r0, r4, 7 +/* 801B3858 001B07B8 54 00 E8 FE */ srwi r0, r0, 3 +/* 801B385C 001B07BC 7C 09 03 A6 */ mtctr r0 +/* 801B3860 001B07C0 2C 04 00 00 */ cmpwi r4, 0 +/* 801B3864 001B07C4 40 81 00 0C */ ble lbl_801B3870 +lbl_801B3868: +/* 801B3868 001B07C8 38 63 00 08 */ addi r3, r3, 8 +/* 801B386C 001B07CC 42 00 FF FC */ bdnz lbl_801B3868 +lbl_801B3870: +/* 801B3870 001B07D0 7C 03 28 50 */ subf r0, r3, r5 +/* 801B3874 001B07D4 7C 09 03 A6 */ mtctr r0 +/* 801B3878 001B07D8 7C 03 28 00 */ cmpw r3, r5 +/* 801B387C 001B07DC 40 80 00 08 */ bge lbl_801B3884 +lbl_801B3880: +/* 801B3880 001B07E0 42 00 00 00 */ bdnz lbl_801B3880 +lbl_801B3884: +/* 801B3884 001B07E4 38 00 00 00 */ li r0, 0 +/* 801B3888 001B07E8 90 1E 07 70 */ stw r0, 0x770(r30) +lbl_801B388C: +/* 801B388C 001B07EC 34 1E 07 30 */ addic. r0, r30, 0x730 +/* 801B3890 001B07F0 41 82 00 58 */ beq lbl_801B38E8 +/* 801B3894 001B07F4 80 BE 07 30 */ lwz r5, 0x730(r30) +/* 801B3898 001B07F8 38 60 00 00 */ li r3, 0 +/* 801B389C 001B07FC 2C 05 00 00 */ cmpwi r5, 0 +/* 801B38A0 001B0800 40 81 00 40 */ ble lbl_801B38E0 +/* 801B38A4 001B0804 2C 05 00 08 */ cmpwi r5, 8 +/* 801B38A8 001B0808 38 85 FF F8 */ addi r4, r5, -8 +/* 801B38AC 001B080C 40 81 00 20 */ ble lbl_801B38CC +/* 801B38B0 001B0810 38 04 00 07 */ addi r0, r4, 7 +/* 801B38B4 001B0814 54 00 E8 FE */ srwi r0, r0, 3 +/* 801B38B8 001B0818 7C 09 03 A6 */ mtctr r0 +/* 801B38BC 001B081C 2C 04 00 00 */ cmpwi r4, 0 +/* 801B38C0 001B0820 40 81 00 0C */ ble lbl_801B38CC +lbl_801B38C4: +/* 801B38C4 001B0824 38 63 00 08 */ addi r3, r3, 8 +/* 801B38C8 001B0828 42 00 FF FC */ bdnz lbl_801B38C4 +lbl_801B38CC: +/* 801B38CC 001B082C 7C 03 28 50 */ subf r0, r3, r5 +/* 801B38D0 001B0830 7C 09 03 A6 */ mtctr r0 +/* 801B38D4 001B0834 7C 03 28 00 */ cmpw r3, r5 +/* 801B38D8 001B0838 40 80 00 08 */ bge lbl_801B38E0 +lbl_801B38DC: +/* 801B38DC 001B083C 42 00 00 00 */ bdnz lbl_801B38DC +lbl_801B38E0: +/* 801B38E0 001B0840 38 00 00 00 */ li r0, 0 +/* 801B38E4 001B0844 90 1E 07 30 */ stw r0, 0x730(r30) +lbl_801B38E8: +/* 801B38E8 001B0848 34 1E 07 04 */ addic. r0, r30, 0x704 +/* 801B38EC 001B084C 41 82 00 20 */ beq lbl_801B390C +/* 801B38F0 001B0850 34 1E 07 04 */ addic. r0, r30, 0x704 +/* 801B38F4 001B0854 41 82 00 18 */ beq lbl_801B390C +/* 801B38F8 001B0858 34 1E 07 04 */ addic. r0, r30, 0x704 +/* 801B38FC 001B085C 41 82 00 10 */ beq lbl_801B390C +/* 801B3900 001B0860 38 7E 07 04 */ addi r3, r30, 0x704 +/* 801B3904 001B0864 38 80 00 00 */ li r4, 0 +/* 801B3908 001B0868 48 18 D5 39 */ bl __dt__6CTokenFv +lbl_801B390C: +/* 801B390C 001B086C 34 1E 06 DC */ addic. r0, r30, 0x6dc +/* 801B3910 001B0870 41 82 00 20 */ beq lbl_801B3930 +/* 801B3914 001B0874 34 1E 06 DC */ addic. r0, r30, 0x6dc +/* 801B3918 001B0878 41 82 00 18 */ beq lbl_801B3930 +/* 801B391C 001B087C 34 1E 06 DC */ addic. r0, r30, 0x6dc +/* 801B3920 001B0880 41 82 00 10 */ beq lbl_801B3930 +/* 801B3924 001B0884 38 7E 06 DC */ addi r3, r30, 0x6dc +/* 801B3928 001B0888 38 80 00 00 */ li r4, 0 +/* 801B392C 001B088C 48 18 D5 15 */ bl __dt__6CTokenFv +lbl_801B3930: +/* 801B3930 001B0890 34 1E 06 D4 */ addic. r0, r30, 0x6d4 +/* 801B3934 001B0894 41 82 00 10 */ beq lbl_801B3944 +/* 801B3938 001B0898 38 7E 06 D4 */ addi r3, r30, 0x6d4 +/* 801B393C 001B089C 38 80 00 00 */ li r4, 0 +/* 801B3940 001B08A0 48 18 D5 01 */ bl __dt__6CTokenFv +lbl_801B3944: +/* 801B3944 001B08A4 34 1E 06 C8 */ addic. r0, r30, 0x6c8 +/* 801B3948 001B08A8 41 82 00 30 */ beq lbl_801B3978 +/* 801B394C 001B08AC 88 1E 06 C8 */ lbz r0, 0x6c8(r30) +/* 801B3950 001B08B0 28 00 00 00 */ cmplwi r0, 0 +/* 801B3954 001B08B4 41 82 00 24 */ beq lbl_801B3978 +/* 801B3958 001B08B8 80 7E 06 CC */ lwz r3, 0x6cc(r30) +/* 801B395C 001B08BC 28 03 00 00 */ cmplwi r3, 0 +/* 801B3960 001B08C0 41 82 00 18 */ beq lbl_801B3978 +/* 801B3964 001B08C4 34 03 00 24 */ addic. r0, r3, 0x24 +/* 801B3968 001B08C8 41 82 00 0C */ beq lbl_801B3974 +/* 801B396C 001B08CC 38 00 00 00 */ li r0, 0 +/* 801B3970 001B08D0 98 03 00 30 */ stb r0, 0x30(r3) +lbl_801B3974: +/* 801B3974 001B08D4 48 16 1F BD */ bl Free__7CMemoryFPCv +lbl_801B3978: +/* 801B3978 001B08D8 34 1E 05 6C */ addic. r0, r30, 0x56c +/* 801B397C 001B08DC 41 82 00 14 */ beq lbl_801B3990 +/* 801B3980 001B08E0 34 7E 06 44 */ addic. r3, r30, 0x644 +/* 801B3984 001B08E4 41 82 00 0C */ beq lbl_801B3990 +/* 801B3988 001B08E8 38 80 FF FF */ li r4, -1 +/* 801B398C 001B08EC 4B F5 2C 7D */ bl __dt__16CActorParametersFv +lbl_801B3990: +/* 801B3990 001B08F0 7F C3 F3 78 */ mr r3, r30 +/* 801B3994 001B08F4 38 80 00 00 */ li r4, 0 +/* 801B3998 001B08F8 4B EC 3B D9 */ bl __dt__10CPatternedFv +/* 801B399C 001B08FC 7F E0 07 35 */ extsh. r0, r31 +/* 801B39A0 001B0900 40 81 00 0C */ ble lbl_801B39AC +/* 801B39A4 001B0904 7F C3 F3 78 */ mr r3, r30 +/* 801B39A8 001B0908 48 16 1F 89 */ bl Free__7CMemoryFPCv +lbl_801B39AC: +/* 801B39AC 001B090C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801B39B0 001B0910 7F C3 F3 78 */ mr r3, r30 +/* 801B39B4 001B0914 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801B39B8 001B0918 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801B39BC 001B091C 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801B39C0 001B0920 83 81 00 20 */ lwz r28, 0x20(r1) +/* 801B39C4 001B0924 7C 08 03 A6 */ mtlr r0 +/* 801B39C8 001B0928 38 21 00 30 */ addi r1, r1, 0x30 +/* 801B39CC 001B092C 4E 80 00 20 */ blr + +.global "__ct__9CFlaahgraF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC16CActorParametersRC13CFlaahgraData" +"__ct__9CFlaahgraF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC16CActorParametersRC13CFlaahgraData": +/* 801B39D0 001B0930 94 21 FE 90 */ stwu r1, -0x170(r1) +/* 801B39D4 001B0934 7C 08 02 A6 */ mflr r0 +/* 801B39D8 001B0938 90 01 01 74 */ stw r0, 0x174(r1) +/* 801B39DC 001B093C DB E1 01 60 */ stfd f31, 0x160(r1) +/* 801B39E0 001B0940 F3 E1 01 68 */ psq_st f31, 360(r1), 0, qr0 +/* 801B39E4 001B0944 DB C1 01 50 */ stfd f30, 0x150(r1) +/* 801B39E8 001B0948 F3 C1 01 58 */ psq_st f30, 344(r1), 0, qr0 +/* 801B39EC 001B094C DB A1 01 40 */ stfd f29, 0x140(r1) +/* 801B39F0 001B0950 F3 A1 01 48 */ psq_st f29, 328(r1), 0, qr0 +/* 801B39F4 001B0954 DB 81 01 30 */ stfd f28, 0x130(r1) +/* 801B39F8 001B0958 F3 81 01 38 */ psq_st f28, 312(r1), 0, qr0 +/* 801B39FC 001B095C DB 61 01 20 */ stfd f27, 0x120(r1) +/* 801B3A00 001B0960 F3 61 01 28 */ psq_st f27, 296(r1), 0, qr0 +/* 801B3A04 001B0964 DB 41 01 10 */ stfd f26, 0x110(r1) +/* 801B3A08 001B0968 F3 41 01 18 */ psq_st f26, 280(r1), 0, qr0 +/* 801B3A0C 001B096C DB 21 01 00 */ stfd f25, 0x100(r1) +/* 801B3A10 001B0970 F3 21 01 08 */ psq_st f25, 264(r1), 0, qr0 +/* 801B3A14 001B0974 BE E1 00 DC */ stmw r23, 0xdc(r1) +/* 801B3A18 001B0978 83 61 01 78 */ lwz r27, 0x178(r1) +/* 801B3A1C 001B097C 7C 7C 1B 78 */ mr r28, r3 +/* 801B3A20 001B0980 7C 97 23 78 */ mr r23, r4 +/* 801B3A24 001B0984 7C B8 2B 78 */ mr r24, r5 +/* 801B3A28 001B0988 7C D9 33 78 */ mr r25, r6 +/* 801B3A2C 001B098C 7C FD 3B 78 */ mr r29, r7 +/* 801B3A30 001B0990 7D 1E 43 78 */ mr r30, r8 +/* 801B3A34 001B0994 7D 3A 4B 78 */ mr r26, r9 +/* 801B3A38 001B0998 7D 5F 53 78 */ mr r31, r10 +/* 801B3A3C 001B099C 38 61 00 88 */ addi r3, r1, 0x88 +/* 801B3A40 001B09A0 4B E8 6D 65 */ bl CModelDataNull__10CModelDataFv +/* 801B3A44 001B09A4 A0 97 00 00 */ lhz r4, 0(r23) +/* 801B3A48 001B09A8 39 60 00 01 */ li r11, 1 +/* 801B3A4C 001B09AC 38 00 00 02 */ li r0, 2 +/* 801B3A50 001B09B0 7F 83 E3 78 */ mr r3, r28 +/* 801B3A54 001B09B4 B0 81 00 20 */ sth r4, 0x20(r1) +/* 801B3A58 001B09B8 7F 06 C3 78 */ mr r6, r24 +/* 801B3A5C 001B09BC 7F 28 CB 78 */ mr r8, r25 +/* 801B3A60 001B09C0 7F A9 EB 78 */ mr r9, r29 +/* 801B3A64 001B09C4 93 41 00 08 */ stw r26, 8(r1) +/* 801B3A68 001B09C8 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801B3A6C 001B09CC 39 41 00 88 */ addi r10, r1, 0x88 +/* 801B3A70 001B09D0 38 80 00 0B */ li r4, 0xb +/* 801B3A74 001B09D4 91 61 00 0C */ stw r11, 0xc(r1) +/* 801B3A78 001B09D8 38 E0 00 00 */ li r7, 0 +/* 801B3A7C 001B09DC 91 61 00 10 */ stw r11, 0x10(r1) +/* 801B3A80 001B09E0 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B3A84 001B09E4 93 E1 00 18 */ stw r31, 0x18(r1) +/* 801B3A88 001B09E8 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801B3A8C 001B09EC 4B EC 99 C5 */ bl "__ct__10CPatternedFUi9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC16CActorParametersUi" +/* 801B3A90 001B09F0 38 61 00 88 */ addi r3, r1, 0x88 +/* 801B3A94 001B09F4 38 80 FF FF */ li r4, -1 +/* 801B3A98 001B09F8 4B F6 2F B5 */ bl __dt__10CModelDataFv +/* 801B3A9C 001B09FC 3C 60 80 3E */ lis r3, lbl_803E4E88@ha +/* 801B3AA0 001B0A00 38 00 FF FF */ li r0, -1 +/* 801B3AA4 001B0A04 38 63 4E 88 */ addi r3, r3, lbl_803E4E88@l +/* 801B3AA8 001B0A08 7F 64 DB 78 */ mr r4, r27 +/* 801B3AAC 001B0A0C 90 7C 00 00 */ stw r3, 0(r28) +/* 801B3AB0 001B0A10 38 7C 05 6C */ addi r3, r28, 0x56c +/* 801B3AB4 001B0A14 90 1C 05 68 */ stw r0, 0x568(r28) +/* 801B3AB8 001B0A18 48 00 04 F5 */ bl __ct__13CFlaahgraDataFRC13CFlaahgraData +/* 801B3ABC 001B0A1C 38 80 00 00 */ li r4, 0 +/* 801B3AC0 001B0A20 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 801B3AC4 001B0A24 98 9C 06 C8 */ stb r4, 0x6c8(r28) +/* 801B3AC8 001B0A28 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 801B3ACC 001B0A2C 38 61 00 2C */ addi r3, r1, 0x2c +/* 801B3AD0 001B0A30 38 A1 00 34 */ addi r5, r1, 0x34 +/* 801B3AD4 001B0A34 90 9C 06 CC */ stw r4, 0x6cc(r28) +/* 801B3AD8 001B0A38 A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 801B3ADC 001B0A3C B0 9C 06 D0 */ sth r4, 0x6d0(r28) +/* 801B3AE0 001B0A40 80 DB 00 B8 */ lwz r6, 0xb8(r27) +/* 801B3AE4 001B0A44 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801B3AE8 001B0A48 90 01 00 34 */ stw r0, 0x34(r1) +/* 801B3AEC 001B0A4C 90 C1 00 38 */ stw r6, 0x38(r1) +/* 801B3AF0 001B0A50 81 84 00 00 */ lwz r12, 0(r4) +/* 801B3AF4 001B0A54 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801B3AF8 001B0A58 7D 89 03 A6 */ mtctr r12 +/* 801B3AFC 001B0A5C 4E 80 04 21 */ bctrl +/* 801B3B00 001B0A60 38 7C 06 D4 */ addi r3, r28, 0x6d4 +/* 801B3B04 001B0A64 38 81 00 2C */ addi r4, r1, 0x2c +/* 801B3B08 001B0A68 48 18 D3 A1 */ bl __ct__6CTokenFRC6CToken +/* 801B3B0C 001B0A6C 38 61 00 2C */ addi r3, r1, 0x2c +/* 801B3B10 001B0A70 38 80 FF FF */ li r4, -1 +/* 801B3B14 001B0A74 48 18 D3 2D */ bl __dt__6CTokenFv +/* 801B3B18 001B0A78 80 9B 00 78 */ lwz r4, 0x78(r27) +/* 801B3B1C 001B0A7C 38 7C 06 DC */ addi r3, r28, 0x6dc +/* 801B3B20 001B0A80 38 BB 00 7C */ addi r5, r27, 0x7c +/* 801B3B24 001B0A84 48 06 85 85 */ bl __ct__15CProjectileInfoFUiRC11CDamageInfo +/* 801B3B28 001B0A88 80 9B 00 98 */ lwz r4, 0x98(r27) +/* 801B3B2C 001B0A8C 38 7C 07 04 */ addi r3, r28, 0x704 +/* 801B3B30 001B0A90 38 BB 00 9C */ addi r5, r27, 0x9c +/* 801B3B34 001B0A94 48 06 85 75 */ bl __ct__15CProjectileInfoFUiRC11CDamageInfo +/* 801B3B38 001B0A98 38 E0 FF FF */ li r7, -1 +/* 801B3B3C 001B0A9C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801B3B40 001B0AA0 90 FC 07 2C */ stw r7, 0x72c(r28) +/* 801B3B44 001B0AA4 38 C0 00 00 */ li r6, 0 +/* 801B3B48 001B0AA8 38 00 00 01 */ li r0, 1 +/* 801B3B4C 001B0AAC 3B 63 66 A0 */ addi r27, r3, skZero3f@l +/* 801B3B50 001B0AB0 90 DC 07 30 */ stw r6, 0x730(r28) +/* 801B3B54 001B0AB4 7F 84 E3 78 */ mr r4, r28 +/* 801B3B58 001B0AB8 C0 22 A8 BC */ lfs f1, lbl_805AC5DC@sda21(r2) +/* 801B3B5C 001B0ABC 38 61 00 6C */ addi r3, r1, 0x6c +/* 801B3B60 001B0AC0 90 DC 07 70 */ stw r6, 0x770(r28) +/* 801B3B64 001B0AC4 C0 02 A9 28 */ lfs f0, lbl_805AC648@sda21(r2) +/* 801B3B68 001B0AC8 A0 AD A3 8C */ lhz r5, lbl_805A8F4C@sda21(r13) +/* 801B3B6C 001B0ACC B0 BC 07 7C */ sth r5, 0x77c(r28) +/* 801B3B70 001B0AD0 90 1C 07 80 */ stw r0, 0x780(r28) +/* 801B3B74 001B0AD4 90 1C 07 84 */ stw r0, 0x784(r28) +/* 801B3B78 001B0AD8 90 DC 07 88 */ stw r6, 0x788(r28) +/* 801B3B7C 001B0ADC C0 5B 00 00 */ lfs f2, 0(r27) +/* 801B3B80 001B0AE0 D0 5C 07 8C */ stfs f2, 0x78c(r28) +/* 801B3B84 001B0AE4 C0 5B 00 04 */ lfs f2, 4(r27) +/* 801B3B88 001B0AE8 D0 5C 07 90 */ stfs f2, 0x790(r28) +/* 801B3B8C 001B0AEC C0 5B 00 08 */ lfs f2, 8(r27) +/* 801B3B90 001B0AF0 D0 5C 07 94 */ stfs f2, 0x794(r28) +/* 801B3B94 001B0AF4 90 FC 07 98 */ stw r7, 0x798(r28) +/* 801B3B98 001B0AF8 90 DC 07 9C */ stw r6, 0x79c(r28) +/* 801B3B9C 001B0AFC 90 DC 07 A0 */ stw r6, 0x7a0(r28) +/* 801B3BA0 001B0B00 90 DC 07 A4 */ stw r6, 0x7a4(r28) +/* 801B3BA4 001B0B04 90 FC 07 A8 */ stw r7, 0x7a8(r28) +/* 801B3BA8 001B0B08 90 1C 07 AC */ stw r0, 0x7ac(r28) +/* 801B3BAC 001B0B0C 90 1C 07 B0 */ stw r0, 0x7b0(r28) +/* 801B3BB0 001B0B10 90 FC 07 B4 */ stw r7, 0x7b4(r28) +/* 801B3BB4 001B0B14 D0 3C 07 B8 */ stfs f1, 0x7b8(r28) +/* 801B3BB8 001B0B18 D0 3C 07 BC */ stfs f1, 0x7bc(r28) +/* 801B3BBC 001B0B1C D0 3C 07 C0 */ stfs f1, 0x7c0(r28) +/* 801B3BC0 001B0B20 D0 3C 07 C4 */ stfs f1, 0x7c4(r28) +/* 801B3BC4 001B0B24 D0 1C 07 C8 */ stfs f0, 0x7c8(r28) +/* 801B3BC8 001B0B28 D0 3C 07 CC */ stfs f1, 0x7cc(r28) +/* 801B3BCC 001B0B2C D0 3C 07 D0 */ stfs f1, 0x7d0(r28) +/* 801B3BD0 001B0B30 D0 3C 07 D4 */ stfs f1, 0x7d4(r28) +/* 801B3BD4 001B0B34 D0 3C 07 D8 */ stfs f1, 0x7d8(r28) +/* 801B3BD8 001B0B38 81 9C 00 00 */ lwz r12, 0(r28) +/* 801B3BDC 001B0B3C 81 8C 02 B0 */ lwz r12, 0x2b0(r12) +/* 801B3BE0 001B0B40 7D 89 03 A6 */ mtctr r12 +/* 801B3BE4 001B0B44 4E 80 04 21 */ bctrl +/* 801B3BE8 001B0B48 80 81 00 6C */ lwz r4, 0x6c(r1) +/* 801B3BEC 001B0B4C 38 00 00 00 */ li r0, 0 +/* 801B3BF0 001B0B50 C0 02 A8 BC */ lfs f0, lbl_805AC5DC@sda21(r2) +/* 801B3BF4 001B0B54 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801B3BF8 001B0B58 90 9C 07 DC */ stw r4, 0x7dc(r28) +/* 801B3BFC 001B0B5C 88 81 00 70 */ lbz r4, 0x70(r1) +/* 801B3C00 001B0B60 98 9C 07 E0 */ stb r4, 0x7e0(r28) +/* 801B3C04 001B0B64 C0 21 00 74 */ lfs f1, 0x74(r1) +/* 801B3C08 001B0B68 D0 3C 07 E4 */ stfs f1, 0x7e4(r28) +/* 801B3C0C 001B0B6C C0 21 00 78 */ lfs f1, 0x78(r1) +/* 801B3C10 001B0B70 D0 3C 07 E8 */ stfs f1, 0x7e8(r28) +/* 801B3C14 001B0B74 C0 21 00 7C */ lfs f1, 0x7c(r1) +/* 801B3C18 001B0B78 D0 3C 07 EC */ stfs f1, 0x7ec(r28) +/* 801B3C1C 001B0B7C C0 21 00 80 */ lfs f1, 0x80(r1) +/* 801B3C20 001B0B80 D0 3C 07 F0 */ stfs f1, 0x7f0(r28) +/* 801B3C24 001B0B84 88 81 00 84 */ lbz r4, 0x84(r1) +/* 801B3C28 001B0B88 98 9C 07 F4 */ stb r4, 0x7f4(r28) +/* 801B3C2C 001B0B8C 90 1C 07 F8 */ stw r0, 0x7f8(r28) +/* 801B3C30 001B0B90 90 1C 07 FC */ stw r0, 0x7fc(r28) +/* 801B3C34 001B0B94 A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 801B3C38 001B0B98 B0 9C 08 0C */ sth r4, 0x80c(r28) +/* 801B3C3C 001B0B9C D0 1C 08 10 */ stfs f0, 0x810(r28) +/* 801B3C40 001B0BA0 D0 1C 08 14 */ stfs f0, 0x814(r28) +/* 801B3C44 001B0BA4 D0 1C 08 18 */ stfs f0, 0x818(r28) +/* 801B3C48 001B0BA8 C0 5D 00 2C */ lfs f2, 0x2c(r29) +/* 801B3C4C 001B0BAC C0 3D 00 1C */ lfs f1, 0x1c(r29) +/* 801B3C50 001B0BB0 C0 1D 00 0C */ lfs f0, 0xc(r29) +/* 801B3C54 001B0BB4 D0 1C 08 20 */ stfs f0, 0x820(r28) +/* 801B3C58 001B0BB8 D0 3C 08 24 */ stfs f1, 0x824(r28) +/* 801B3C5C 001B0BBC D0 5C 08 28 */ stfs f2, 0x828(r28) +/* 801B3C60 001B0BC0 90 1C 08 2C */ stw r0, 0x82c(r28) +/* 801B3C64 001B0BC4 90 1C 08 60 */ stw r0, 0x860(r28) +/* 801B3C68 001B0BC8 C0 03 66 A0 */ lfs f0, skZero3f@l(r3) +/* 801B3C6C 001B0BCC D0 1C 08 94 */ stfs f0, 0x894(r28) +/* 801B3C70 001B0BD0 C0 1B 00 04 */ lfs f0, 4(r27) +/* 801B3C74 001B0BD4 D0 1C 08 98 */ stfs f0, 0x898(r28) +/* 801B3C78 001B0BD8 C0 1B 00 08 */ lfs f0, 8(r27) +/* 801B3C7C 001B0BDC D0 1C 08 9C */ stfs f0, 0x89c(r28) +/* 801B3C80 001B0BE0 C0 5D 00 24 */ lfs f2, 0x24(r29) +/* 801B3C84 001B0BE4 C0 3D 00 14 */ lfs f1, 0x14(r29) +/* 801B3C88 001B0BE8 C0 1D 00 04 */ lfs f0, 4(r29) +/* 801B3C8C 001B0BEC D0 1C 08 A0 */ stfs f0, 0x8a0(r28) +/* 801B3C90 001B0BF0 D0 3C 08 A4 */ stfs f1, 0x8a4(r28) +/* 801B3C94 001B0BF4 D0 5C 08 A8 */ stfs f2, 0x8a8(r28) +/* 801B3C98 001B0BF8 80 7E 00 00 */ lwz r3, 0(r30) +/* 801B3C9C 001B0BFC 90 7C 08 AC */ stw r3, 0x8ac(r28) +/* 801B3CA0 001B0C00 80 7E 00 04 */ lwz r3, 4(r30) +/* 801B3CA4 001B0C04 90 7C 08 B0 */ stw r3, 0x8b0(r28) +/* 801B3CA8 001B0C08 C0 1E 00 08 */ lfs f0, 8(r30) +/* 801B3CAC 001B0C0C D0 1C 08 B4 */ stfs f0, 0x8b4(r28) +/* 801B3CB0 001B0C10 C0 1E 00 0C */ lfs f0, 0xc(r30) +/* 801B3CB4 001B0C14 D0 1C 08 B8 */ stfs f0, 0x8b8(r28) +/* 801B3CB8 001B0C18 C0 1E 00 10 */ lfs f0, 0x10(r30) +/* 801B3CBC 001B0C1C D0 1C 08 BC */ stfs f0, 0x8bc(r28) +/* 801B3CC0 001B0C20 88 7E 00 14 */ lbz r3, 0x14(r30) +/* 801B3CC4 001B0C24 98 7C 08 C0 */ stb r3, 0x8c0(r28) +/* 801B3CC8 001B0C28 80 7E 00 18 */ lwz r3, 0x18(r30) +/* 801B3CCC 001B0C2C 90 7C 08 C4 */ stw r3, 0x8c4(r28) +/* 801B3CD0 001B0C30 98 1C 08 D0 */ stb r0, 0x8d0(r28) +/* 801B3CD4 001B0C34 90 1C 08 D8 */ stw r0, 0x8d8(r28) +/* 801B3CD8 001B0C38 90 1C 08 DC */ stw r0, 0x8dc(r28) +/* 801B3CDC 001B0C3C 90 1C 08 E0 */ stw r0, 0x8e0(r28) +/* 801B3CE0 001B0C40 88 7C 08 E4 */ lbz r3, 0x8e4(r28) +/* 801B3CE4 001B0C44 50 03 3E 30 */ rlwimi r3, r0, 7, 0x18, 0x18 +/* 801B3CE8 001B0C48 98 7C 08 E4 */ stb r3, 0x8e4(r28) +/* 801B3CEC 001B0C4C 88 7C 08 E4 */ lbz r3, 0x8e4(r28) +/* 801B3CF0 001B0C50 50 03 36 72 */ rlwimi r3, r0, 6, 0x19, 0x19 +/* 801B3CF4 001B0C54 98 7C 08 E4 */ stb r3, 0x8e4(r28) +/* 801B3CF8 001B0C58 88 7C 08 E4 */ lbz r3, 0x8e4(r28) +/* 801B3CFC 001B0C5C 50 03 2E B4 */ rlwimi r3, r0, 5, 0x1a, 0x1a +/* 801B3D00 001B0C60 98 7C 08 E4 */ stb r3, 0x8e4(r28) +/* 801B3D04 001B0C64 88 7C 08 E4 */ lbz r3, 0x8e4(r28) +/* 801B3D08 001B0C68 50 03 26 F6 */ rlwimi r3, r0, 4, 0x1b, 0x1b +/* 801B3D0C 001B0C6C 98 7C 08 E4 */ stb r3, 0x8e4(r28) +/* 801B3D10 001B0C70 88 7C 08 E4 */ lbz r3, 0x8e4(r28) +/* 801B3D14 001B0C74 50 03 1F 38 */ rlwimi r3, r0, 3, 0x1c, 0x1c +/* 801B3D18 001B0C78 98 7C 08 E4 */ stb r3, 0x8e4(r28) +/* 801B3D1C 001B0C7C 88 7C 08 E4 */ lbz r3, 0x8e4(r28) +/* 801B3D20 001B0C80 50 03 17 7A */ rlwimi r3, r0, 2, 0x1d, 0x1d +/* 801B3D24 001B0C84 98 7C 08 E4 */ stb r3, 0x8e4(r28) +/* 801B3D28 001B0C88 88 7C 08 E4 */ lbz r3, 0x8e4(r28) +/* 801B3D2C 001B0C8C 50 03 0F BC */ rlwimi r3, r0, 1, 0x1e, 0x1e +/* 801B3D30 001B0C90 98 7C 08 E4 */ stb r3, 0x8e4(r28) +/* 801B3D34 001B0C94 88 7C 08 E4 */ lbz r3, 0x8e4(r28) +/* 801B3D38 001B0C98 50 03 07 FE */ rlwimi r3, r0, 0, 0x1f, 0x1f +/* 801B3D3C 001B0C9C 98 7C 08 E4 */ stb r3, 0x8e4(r28) +/* 801B3D40 001B0CA0 88 9C 08 E5 */ lbz r4, 0x8e5(r28) +/* 801B3D44 001B0CA4 50 04 3E 30 */ rlwimi r4, r0, 7, 0x18, 0x18 +/* 801B3D48 001B0CA8 38 A0 00 01 */ li r5, 1 +/* 801B3D4C 001B0CAC 38 7C 06 DC */ addi r3, r28, 0x6dc +/* 801B3D50 001B0CB0 98 9C 08 E5 */ stb r4, 0x8e5(r28) +/* 801B3D54 001B0CB4 88 9C 08 E5 */ lbz r4, 0x8e5(r28) +/* 801B3D58 001B0CB8 50 04 2E B4 */ rlwimi r4, r0, 5, 0x1a, 0x1a +/* 801B3D5C 001B0CBC 98 9C 08 E5 */ stb r4, 0x8e5(r28) +/* 801B3D60 001B0CC0 88 9C 08 E5 */ lbz r4, 0x8e5(r28) +/* 801B3D64 001B0CC4 50 04 26 F6 */ rlwimi r4, r0, 4, 0x1b, 0x1b +/* 801B3D68 001B0CC8 98 9C 08 E5 */ stb r4, 0x8e5(r28) +/* 801B3D6C 001B0CCC 88 9C 08 E5 */ lbz r4, 0x8e5(r28) +/* 801B3D70 001B0CD0 50 04 1F 38 */ rlwimi r4, r0, 3, 0x1c, 0x1c +/* 801B3D74 001B0CD4 98 9C 08 E5 */ stb r4, 0x8e5(r28) +/* 801B3D78 001B0CD8 88 9C 08 E5 */ lbz r4, 0x8e5(r28) +/* 801B3D7C 001B0CDC 50 A4 17 7A */ rlwimi r4, r5, 2, 0x1d, 0x1d +/* 801B3D80 001B0CE0 98 9C 08 E5 */ stb r4, 0x8e5(r28) +/* 801B3D84 001B0CE4 88 9C 08 E5 */ lbz r4, 0x8e5(r28) +/* 801B3D88 001B0CE8 50 04 0F BC */ rlwimi r4, r0, 1, 0x1e, 0x1e +/* 801B3D8C 001B0CEC 98 9C 08 E5 */ stb r4, 0x8e5(r28) +/* 801B3D90 001B0CF0 88 9C 00 E7 */ lbz r4, 0xe7(r28) +/* 801B3D94 001B0CF4 50 04 0F BC */ rlwimi r4, r0, 1, 0x1e, 0x1e +/* 801B3D98 001B0CF8 98 9C 00 E7 */ stb r4, 0xe7(r28) +/* 801B3D9C 001B0CFC 48 18 CF E9 */ bl Lock__6CTokenFv +/* 801B3DA0 001B0D00 38 7C 07 04 */ addi r3, r28, 0x704 +/* 801B3DA4 001B0D04 48 18 CF E1 */ bl Lock__6CTokenFv +/* 801B3DA8 001B0D08 C0 22 A8 E4 */ lfs f1, lbl_805AC604@sda21(r2) +/* 801B3DAC 001B0D0C 7F E4 FB 78 */ mr r4, r31 +/* 801B3DB0 001B0D10 C0 1C 07 E4 */ lfs f0, 0x7e4(r28) +/* 801B3DB4 001B0D14 38 61 00 24 */ addi r3, r1, 0x24 +/* 801B3DB8 001B0D18 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801B3DBC 001B0D1C D0 1C 07 E4 */ stfs f0, 0x7e4(r28) +/* 801B3DC0 001B0D20 4B F5 26 51 */ bl MakeActorLights__16CLightParametersCFv +/* 801B3DC4 001B0D24 7F 83 E3 78 */ mr r3, r28 +/* 801B3DC8 001B0D28 38 81 00 24 */ addi r4, r1, 0x24 +/* 801B3DCC 001B0D2C 4B E9 FA F9 */ bl sub_800538c4 +/* 801B3DD0 001B0D30 88 01 00 24 */ lbz r0, 0x24(r1) +/* 801B3DD4 001B0D34 28 00 00 00 */ cmplwi r0, 0 +/* 801B3DD8 001B0D38 41 82 00 10 */ beq lbl_801B3DE8 +/* 801B3DDC 001B0D3C 80 61 00 28 */ lwz r3, 0x28(r1) +/* 801B3DE0 001B0D40 38 80 00 01 */ li r4, 1 +/* 801B3DE4 001B0D44 4B F5 12 F1 */ bl __dt__12CActorLightsFv +lbl_801B3DE8: +/* 801B3DE8 001B0D48 80 FC 00 90 */ lwz r7, 0x90(r28) +/* 801B3DEC 001B0D4C 38 60 00 00 */ li r3, 0 +/* 801B3DF0 001B0D50 38 A0 00 02 */ li r5, 2 +/* 801B3DF4 001B0D54 38 00 00 01 */ li r0, 1 +/* 801B3DF8 001B0D58 88 C7 02 98 */ lbz r6, 0x298(r7) +/* 801B3DFC 001B0D5C 50 66 36 72 */ rlwimi r6, r3, 6, 0x19, 0x19 +/* 801B3E00 001B0D60 38 7C 04 60 */ addi r3, r28, 0x460 +/* 801B3E04 001B0D64 38 80 00 00 */ li r4, 0 +/* 801B3E08 001B0D68 98 C7 02 98 */ stb r6, 0x298(r7) +/* 801B3E0C 001B0D6C 81 1C 00 90 */ lwz r8, 0x90(r28) +/* 801B3E10 001B0D70 90 A8 02 B8 */ stw r5, 0x2b8(r8) +/* 801B3E14 001B0D74 80 E8 02 B8 */ lwz r7, 0x2b8(r8) +/* 801B3E18 001B0D78 88 A8 02 98 */ lbz r5, 0x298(r8) +/* 801B3E1C 001B0D7C 7C C7 00 D0 */ neg r6, r7 +/* 801B3E20 001B0D80 7C C6 38 78 */ andc r6, r6, r7 +/* 801B3E24 001B0D84 50 C5 36 B4 */ rlwimi r5, r6, 6, 0x1a, 0x1a +/* 801B3E28 001B0D88 98 A8 02 98 */ stb r5, 0x298(r8) +/* 801B3E2C 001B0D8C 80 BC 00 90 */ lwz r5, 0x90(r28) +/* 801B3E30 001B0D90 90 05 02 BC */ stw r0, 0x2bc(r5) +/* 801B3E34 001B0D94 48 07 FF 31 */ bl SetAutoResetImpulse__20CKnockBackControllerFb +/* 801B3E38 001B0D98 88 1C 04 E1 */ lbz r0, 0x4e1(r28) +/* 801B3E3C 001B0D9C 38 60 00 00 */ li r3, 0 +/* 801B3E40 001B0DA0 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 801B3E44 001B0DA4 7F 83 E3 78 */ mr r3, r28 +/* 801B3E48 001B0DA8 98 1C 04 E1 */ stb r0, 0x4e1(r28) +/* 801B3E4C 001B0DAC 80 0D A4 98 */ lwz r0, lbl_805A9058@sda21(r13) +/* 801B3E50 001B0DB0 90 1C 04 30 */ stw r0, 0x430(r28) +/* 801B3E54 001B0DB4 80 9C 06 C4 */ lwz r4, 0x6c4(r28) +/* 801B3E58 001B0DB8 4B FF 9A C5 */ bl sub_801ad91c +/* 801B3E5C 001B0DBC C3 42 A9 2C */ lfs f26, lbl_805AC64C@sda21(r2) +/* 801B3E60 001B0DC0 3B 7C 08 2C */ addi r27, r28, 0x82c +/* 801B3E64 001B0DC4 C3 62 A8 BC */ lfs f27, lbl_805AC5DC@sda21(r2) +/* 801B3E68 001B0DC8 3B BC 08 60 */ addi r29, r28, 0x860 +/* 801B3E6C 001B0DCC C3 82 A9 14 */ lfs f28, lbl_805AC634@sda21(r2) +/* 801B3E70 001B0DD0 C3 C2 A9 30 */ lfs f30, lbl_805AC650@sda21(r2) +/* 801B3E74 001B0DD4 C3 E2 A9 34 */ lfs f31, lbl_805AC654@sda21(r2) +/* 801B3E78 001B0DD8 48 00 00 DC */ b lbl_801B3F54 +lbl_801B3E7C: +/* 801B3E7C 001B0DDC FC 20 D0 90 */ fmr f1, f26 +/* 801B3E80 001B0DE0 48 16 0F 71 */ bl FastSinR__5CMathFf +/* 801B3E84 001B0DE4 FF A0 08 90 */ fmr f29, f1 +/* 801B3E88 001B0DE8 FC 20 D0 90 */ fmr f1, f26 +/* 801B3E8C 001B0DEC 48 16 0E B9 */ bl FastCosR__5CMathFf +/* 801B3E90 001B0DF0 D0 21 00 54 */ stfs f1, 0x54(r1) +/* 801B3E94 001B0DF4 38 61 00 60 */ addi r3, r1, 0x60 +/* 801B3E98 001B0DF8 38 9C 00 34 */ addi r4, r28, 0x34 +/* 801B3E9C 001B0DFC 38 A1 00 54 */ addi r5, r1, 0x54 +/* 801B3EA0 001B0E00 D3 A1 00 58 */ stfs f29, 0x58(r1) +/* 801B3EA4 001B0E04 D3 61 00 5C */ stfs f27, 0x5c(r1) +/* 801B3EA8 001B0E08 48 15 EB D9 */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 801B3EAC 001B0E0C 80 1B 00 00 */ lwz r0, 0(r27) +/* 801B3EB0 001B0E10 C0 01 00 60 */ lfs f0, 0x60(r1) +/* 801B3EB4 001B0E14 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801B3EB8 001B0E18 C0 21 00 64 */ lfs f1, 0x64(r1) +/* 801B3EBC 001B0E1C C0 41 00 68 */ lfs f2, 0x68(r1) +/* 801B3EC0 001B0E20 7C 7B 02 14 */ add r3, r27, r0 +/* 801B3EC4 001B0E24 34 63 00 04 */ addic. r3, r3, 4 +/* 801B3EC8 001B0E28 41 82 00 10 */ beq lbl_801B3ED8 +/* 801B3ECC 001B0E2C D0 03 00 00 */ stfs f0, 0(r3) +/* 801B3ED0 001B0E30 D0 23 00 04 */ stfs f1, 4(r3) +/* 801B3ED4 001B0E34 D0 43 00 08 */ stfs f2, 8(r3) +lbl_801B3ED8: +/* 801B3ED8 001B0E38 EF 3C D0 2A */ fadds f25, f28, f26 +/* 801B3EDC 001B0E3C 80 7C 08 2C */ lwz r3, 0x82c(r28) +/* 801B3EE0 001B0E40 38 03 00 01 */ addi r0, r3, 1 +/* 801B3EE4 001B0E44 FC 20 C8 90 */ fmr f1, f25 +/* 801B3EE8 001B0E48 90 1C 08 2C */ stw r0, 0x82c(r28) +/* 801B3EEC 001B0E4C 48 16 0F 05 */ bl FastSinR__5CMathFf +/* 801B3EF0 001B0E50 FF A0 08 90 */ fmr f29, f1 +/* 801B3EF4 001B0E54 FC 20 C8 90 */ fmr f1, f25 +/* 801B3EF8 001B0E58 48 16 0E 4D */ bl FastCosR__5CMathFf +/* 801B3EFC 001B0E5C D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 801B3F00 001B0E60 38 61 00 48 */ addi r3, r1, 0x48 +/* 801B3F04 001B0E64 38 9C 00 34 */ addi r4, r28, 0x34 +/* 801B3F08 001B0E68 38 A1 00 3C */ addi r5, r1, 0x3c +/* 801B3F0C 001B0E6C D3 A1 00 40 */ stfs f29, 0x40(r1) +/* 801B3F10 001B0E70 D3 61 00 44 */ stfs f27, 0x44(r1) +/* 801B3F14 001B0E74 48 15 EB 6D */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 801B3F18 001B0E78 80 1D 00 00 */ lwz r0, 0(r29) +/* 801B3F1C 001B0E7C C0 01 00 48 */ lfs f0, 0x48(r1) +/* 801B3F20 001B0E80 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801B3F24 001B0E84 C0 21 00 4C */ lfs f1, 0x4c(r1) +/* 801B3F28 001B0E88 C0 41 00 50 */ lfs f2, 0x50(r1) +/* 801B3F2C 001B0E8C 7C 7D 02 14 */ add r3, r29, r0 +/* 801B3F30 001B0E90 34 63 00 04 */ addic. r3, r3, 4 +/* 801B3F34 001B0E94 41 82 00 10 */ beq lbl_801B3F44 +/* 801B3F38 001B0E98 D0 03 00 00 */ stfs f0, 0(r3) +/* 801B3F3C 001B0E9C D0 23 00 04 */ stfs f1, 4(r3) +/* 801B3F40 001B0EA0 D0 43 00 08 */ stfs f2, 8(r3) +lbl_801B3F44: +/* 801B3F44 001B0EA4 80 7C 08 60 */ lwz r3, 0x860(r28) +/* 801B3F48 001B0EA8 EF 5A F0 2A */ fadds f26, f26, f30 +/* 801B3F4C 001B0EAC 38 03 00 01 */ addi r0, r3, 1 +/* 801B3F50 001B0EB0 90 1C 08 60 */ stw r0, 0x860(r28) +lbl_801B3F54: +/* 801B3F54 001B0EB4 FC 1A F8 40 */ fcmpo cr0, f26, f31 +/* 801B3F58 001B0EB8 41 80 FF 24 */ blt lbl_801B3E7C +/* 801B3F5C 001B0EBC 7F 83 E3 78 */ mr r3, r28 +/* 801B3F60 001B0EC0 E3 E1 01 68 */ psq_l f31, 360(r1), 0, qr0 +/* 801B3F64 001B0EC4 CB E1 01 60 */ lfd f31, 0x160(r1) +/* 801B3F68 001B0EC8 E3 C1 01 58 */ psq_l f30, 344(r1), 0, qr0 +/* 801B3F6C 001B0ECC CB C1 01 50 */ lfd f30, 0x150(r1) +/* 801B3F70 001B0ED0 E3 A1 01 48 */ psq_l f29, 328(r1), 0, qr0 +/* 801B3F74 001B0ED4 CB A1 01 40 */ lfd f29, 0x140(r1) +/* 801B3F78 001B0ED8 E3 81 01 38 */ psq_l f28, 312(r1), 0, qr0 +/* 801B3F7C 001B0EDC CB 81 01 30 */ lfd f28, 0x130(r1) +/* 801B3F80 001B0EE0 E3 61 01 28 */ psq_l f27, 296(r1), 0, qr0 +/* 801B3F84 001B0EE4 CB 61 01 20 */ lfd f27, 0x120(r1) +/* 801B3F88 001B0EE8 E3 41 01 18 */ psq_l f26, 280(r1), 0, qr0 +/* 801B3F8C 001B0EEC CB 41 01 10 */ lfd f26, 0x110(r1) +/* 801B3F90 001B0EF0 E3 21 01 08 */ psq_l f25, 264(r1), 0, qr0 +/* 801B3F94 001B0EF4 CB 21 01 00 */ lfd f25, 0x100(r1) +/* 801B3F98 001B0EF8 BA E1 00 DC */ lmw r23, 0xdc(r1) +/* 801B3F9C 001B0EFC 80 01 01 74 */ lwz r0, 0x174(r1) +/* 801B3FA0 001B0F00 7C 08 03 A6 */ mtlr r0 +/* 801B3FA4 001B0F04 38 21 01 70 */ addi r1, r1, 0x170 +/* 801B3FA8 001B0F08 4E 80 00 20 */ blr + +.global __ct__13CFlaahgraDataFRC13CFlaahgraData +__ct__13CFlaahgraDataFRC13CFlaahgraData: +/* 801B3FAC 001B0F0C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B3FB0 001B0F10 7C 08 02 A6 */ mflr r0 +/* 801B3FB4 001B0F14 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B3FB8 001B0F18 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801B3FBC 001B0F1C 7C 9F 23 78 */ mr r31, r4 +/* 801B3FC0 001B0F20 93 C1 00 08 */ stw r30, 8(r1) +/* 801B3FC4 001B0F24 7C 7E 1B 78 */ mr r30, r3 +/* 801B3FC8 001B0F28 C0 1F 00 00 */ lfs f0, 0(r31) +/* 801B3FCC 001B0F2C D0 1E 00 00 */ stfs f0, 0(r30) +/* 801B3FD0 001B0F30 C0 1F 00 04 */ lfs f0, 4(r31) +/* 801B3FD4 001B0F34 D0 1E 00 04 */ stfs f0, 4(r30) +/* 801B3FD8 001B0F38 C0 1F 00 08 */ lfs f0, 8(r31) +/* 801B3FDC 001B0F3C D0 1E 00 08 */ stfs f0, 8(r30) +/* 801B3FE0 001B0F40 C0 1F 00 0C */ lfs f0, 0xc(r31) +/* 801B3FE4 001B0F44 D0 1E 00 0C */ stfs f0, 0xc(r30) +/* 801B3FE8 001B0F48 80 7F 00 10 */ lwz r3, 0x10(r31) +/* 801B3FEC 001B0F4C 80 1F 00 14 */ lwz r0, 0x14(r31) +/* 801B3FF0 001B0F50 90 7E 00 10 */ stw r3, 0x10(r30) +/* 801B3FF4 001B0F54 90 1E 00 14 */ stw r0, 0x14(r30) +/* 801B3FF8 001B0F58 80 7F 00 18 */ lwz r3, 0x18(r31) +/* 801B3FFC 001B0F5C 80 1F 00 1C */ lwz r0, 0x1c(r31) +/* 801B4000 001B0F60 90 7E 00 18 */ stw r3, 0x18(r30) +/* 801B4004 001B0F64 90 1E 00 1C */ stw r0, 0x1c(r30) +/* 801B4008 001B0F68 80 7F 00 20 */ lwz r3, 0x20(r31) +/* 801B400C 001B0F6C 80 1F 00 24 */ lwz r0, 0x24(r31) +/* 801B4010 001B0F70 90 7E 00 20 */ stw r3, 0x20(r30) +/* 801B4014 001B0F74 90 1E 00 24 */ stw r0, 0x24(r30) +/* 801B4018 001B0F78 80 7F 00 28 */ lwz r3, 0x28(r31) +/* 801B401C 001B0F7C 80 1F 00 2C */ lwz r0, 0x2c(r31) +/* 801B4020 001B0F80 90 7E 00 28 */ stw r3, 0x28(r30) +/* 801B4024 001B0F84 90 1E 00 2C */ stw r0, 0x2c(r30) +/* 801B4028 001B0F88 80 7F 00 30 */ lwz r3, 0x30(r31) +/* 801B402C 001B0F8C 80 1F 00 34 */ lwz r0, 0x34(r31) +/* 801B4030 001B0F90 90 7E 00 30 */ stw r3, 0x30(r30) +/* 801B4034 001B0F94 90 1E 00 34 */ stw r0, 0x34(r30) +/* 801B4038 001B0F98 80 7F 00 38 */ lwz r3, 0x38(r31) +/* 801B403C 001B0F9C 80 1F 00 3C */ lwz r0, 0x3c(r31) +/* 801B4040 001B0FA0 90 7E 00 38 */ stw r3, 0x38(r30) +/* 801B4044 001B0FA4 90 1E 00 3C */ stw r0, 0x3c(r30) +/* 801B4048 001B0FA8 80 7F 00 40 */ lwz r3, 0x40(r31) +/* 801B404C 001B0FAC 80 1F 00 44 */ lwz r0, 0x44(r31) +/* 801B4050 001B0FB0 90 7E 00 40 */ stw r3, 0x40(r30) +/* 801B4054 001B0FB4 90 1E 00 44 */ stw r0, 0x44(r30) +/* 801B4058 001B0FB8 80 1F 00 48 */ lwz r0, 0x48(r31) +/* 801B405C 001B0FBC 90 1E 00 48 */ stw r0, 0x48(r30) +/* 801B4060 001B0FC0 80 7F 00 4C */ lwz r3, 0x4c(r31) +/* 801B4064 001B0FC4 80 1F 00 50 */ lwz r0, 0x50(r31) +/* 801B4068 001B0FC8 90 7E 00 4C */ stw r3, 0x4c(r30) +/* 801B406C 001B0FCC 90 1E 00 50 */ stw r0, 0x50(r30) +/* 801B4070 001B0FD0 80 7F 00 54 */ lwz r3, 0x54(r31) +/* 801B4074 001B0FD4 80 1F 00 58 */ lwz r0, 0x58(r31) +/* 801B4078 001B0FD8 90 7E 00 54 */ stw r3, 0x54(r30) +/* 801B407C 001B0FDC 90 1E 00 58 */ stw r0, 0x58(r30) +/* 801B4080 001B0FE0 80 7F 00 5C */ lwz r3, 0x5c(r31) +/* 801B4084 001B0FE4 80 1F 00 60 */ lwz r0, 0x60(r31) +/* 801B4088 001B0FE8 90 7E 00 5C */ stw r3, 0x5c(r30) +/* 801B408C 001B0FEC 90 1E 00 60 */ stw r0, 0x60(r30) +/* 801B4090 001B0FF0 80 7F 00 64 */ lwz r3, 0x64(r31) +/* 801B4094 001B0FF4 80 1F 00 68 */ lwz r0, 0x68(r31) +/* 801B4098 001B0FF8 90 7E 00 64 */ stw r3, 0x64(r30) +/* 801B409C 001B0FFC 90 1E 00 68 */ stw r0, 0x68(r30) +/* 801B40A0 001B1000 80 1F 00 6C */ lwz r0, 0x6c(r31) +/* 801B40A4 001B1004 90 1E 00 6C */ stw r0, 0x6c(r30) +/* 801B40A8 001B1008 80 1F 00 70 */ lwz r0, 0x70(r31) +/* 801B40AC 001B100C 90 1E 00 70 */ stw r0, 0x70(r30) +/* 801B40B0 001B1010 80 1F 00 74 */ lwz r0, 0x74(r31) +/* 801B40B4 001B1014 90 1E 00 74 */ stw r0, 0x74(r30) +/* 801B40B8 001B1018 80 1F 00 78 */ lwz r0, 0x78(r31) +/* 801B40BC 001B101C 90 1E 00 78 */ stw r0, 0x78(r30) +/* 801B40C0 001B1020 80 1F 00 7C */ lwz r0, 0x7c(r31) +/* 801B40C4 001B1024 90 1E 00 7C */ stw r0, 0x7c(r30) +/* 801B40C8 001B1028 88 1F 00 80 */ lbz r0, 0x80(r31) +/* 801B40CC 001B102C 98 1E 00 80 */ stb r0, 0x80(r30) +/* 801B40D0 001B1030 C0 1F 00 84 */ lfs f0, 0x84(r31) +/* 801B40D4 001B1034 D0 1E 00 84 */ stfs f0, 0x84(r30) +/* 801B40D8 001B1038 C0 1F 00 88 */ lfs f0, 0x88(r31) +/* 801B40DC 001B103C D0 1E 00 88 */ stfs f0, 0x88(r30) +/* 801B40E0 001B1040 C0 1F 00 8C */ lfs f0, 0x8c(r31) +/* 801B40E4 001B1044 D0 1E 00 8C */ stfs f0, 0x8c(r30) +/* 801B40E8 001B1048 C0 1F 00 90 */ lfs f0, 0x90(r31) +/* 801B40EC 001B104C D0 1E 00 90 */ stfs f0, 0x90(r30) +/* 801B40F0 001B1050 88 1F 00 94 */ lbz r0, 0x94(r31) +/* 801B40F4 001B1054 98 1E 00 94 */ stb r0, 0x94(r30) +/* 801B40F8 001B1058 80 1F 00 98 */ lwz r0, 0x98(r31) +/* 801B40FC 001B105C 90 1E 00 98 */ stw r0, 0x98(r30) +/* 801B4100 001B1060 80 1F 00 9C */ lwz r0, 0x9c(r31) +/* 801B4104 001B1064 90 1E 00 9C */ stw r0, 0x9c(r30) +/* 801B4108 001B1068 88 1F 00 A0 */ lbz r0, 0xa0(r31) +/* 801B410C 001B106C 98 1E 00 A0 */ stb r0, 0xa0(r30) +/* 801B4110 001B1070 C0 1F 00 A4 */ lfs f0, 0xa4(r31) +/* 801B4114 001B1074 D0 1E 00 A4 */ stfs f0, 0xa4(r30) +/* 801B4118 001B1078 C0 1F 00 A8 */ lfs f0, 0xa8(r31) +/* 801B411C 001B107C D0 1E 00 A8 */ stfs f0, 0xa8(r30) +/* 801B4120 001B1080 C0 1F 00 AC */ lfs f0, 0xac(r31) +/* 801B4124 001B1084 D0 1E 00 AC */ stfs f0, 0xac(r30) +/* 801B4128 001B1088 C0 1F 00 B0 */ lfs f0, 0xb0(r31) +/* 801B412C 001B108C D0 1E 00 B0 */ stfs f0, 0xb0(r30) +/* 801B4130 001B1090 88 1F 00 B4 */ lbz r0, 0xb4(r31) +/* 801B4134 001B1094 98 1E 00 B4 */ stb r0, 0xb4(r30) +/* 801B4138 001B1098 80 1F 00 B8 */ lwz r0, 0xb8(r31) +/* 801B413C 001B109C 90 1E 00 B8 */ stw r0, 0xb8(r30) +/* 801B4140 001B10A0 80 1F 00 BC */ lwz r0, 0xbc(r31) +/* 801B4144 001B10A4 90 1E 00 BC */ stw r0, 0xbc(r30) +/* 801B4148 001B10A8 88 1F 00 C0 */ lbz r0, 0xc0(r31) +/* 801B414C 001B10AC 98 1E 00 C0 */ stb r0, 0xc0(r30) +/* 801B4150 001B10B0 C0 1F 00 C4 */ lfs f0, 0xc4(r31) +/* 801B4154 001B10B4 D0 1E 00 C4 */ stfs f0, 0xc4(r30) +/* 801B4158 001B10B8 C0 1F 00 C8 */ lfs f0, 0xc8(r31) +/* 801B415C 001B10BC D0 1E 00 C8 */ stfs f0, 0xc8(r30) +/* 801B4160 001B10C0 C0 1F 00 CC */ lfs f0, 0xcc(r31) +/* 801B4164 001B10C4 38 7E 00 D8 */ addi r3, r30, 0xd8 +/* 801B4168 001B10C8 38 9F 00 D8 */ addi r4, r31, 0xd8 +/* 801B416C 001B10CC D0 1E 00 CC */ stfs f0, 0xcc(r30) +/* 801B4170 001B10D0 C0 1F 00 D0 */ lfs f0, 0xd0(r31) +/* 801B4174 001B10D4 D0 1E 00 D0 */ stfs f0, 0xd0(r30) +/* 801B4178 001B10D8 88 1F 00 D4 */ lbz r0, 0xd4(r31) +/* 801B417C 001B10DC 98 1E 00 D4 */ stb r0, 0xd4(r30) +/* 801B4180 001B10E0 4B F1 14 9D */ bl __ct__16CActorParametersFRC16CActorParameters +/* 801B4184 001B10E4 C0 1F 01 40 */ lfs f0, 0x140(r31) +/* 801B4188 001B10E8 7F C3 F3 78 */ mr r3, r30 +/* 801B418C 001B10EC D0 1E 01 40 */ stfs f0, 0x140(r30) +/* 801B4190 001B10F0 C0 1F 01 44 */ lfs f0, 0x144(r31) +/* 801B4194 001B10F4 D0 1E 01 44 */ stfs f0, 0x144(r30) +/* 801B4198 001B10F8 C0 1F 01 48 */ lfs f0, 0x148(r31) +/* 801B419C 001B10FC D0 1E 01 48 */ stfs f0, 0x148(r30) +/* 801B41A0 001B1100 80 1F 01 4C */ lwz r0, 0x14c(r31) +/* 801B41A4 001B1104 90 1E 01 4C */ stw r0, 0x14c(r30) +/* 801B41A8 001B1108 80 1F 01 50 */ lwz r0, 0x150(r31) +/* 801B41AC 001B110C 90 1E 01 50 */ stw r0, 0x150(r30) +/* 801B41B0 001B1110 80 1F 01 54 */ lwz r0, 0x154(r31) +/* 801B41B4 001B1114 90 1E 01 54 */ stw r0, 0x154(r30) +/* 801B41B8 001B1118 80 1F 01 58 */ lwz r0, 0x158(r31) +/* 801B41BC 001B111C 90 1E 01 58 */ stw r0, 0x158(r30) +/* 801B41C0 001B1120 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801B41C4 001B1124 83 C1 00 08 */ lwz r30, 8(r1) +/* 801B41C8 001B1128 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B41CC 001B112C 7C 08 03 A6 */ mtlr r0 +/* 801B41D0 001B1130 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B41D4 001B1134 4E 80 00 20 */ blr + +.global __ct__13CFlaahgraDataFR12CInputStream +__ct__13CFlaahgraDataFR12CInputStream: +/* 801B41D8 001B1138 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 801B41DC 001B113C 7C 08 02 A6 */ mflr r0 +/* 801B41E0 001B1140 90 01 00 94 */ stw r0, 0x94(r1) +/* 801B41E4 001B1144 93 E1 00 8C */ stw r31, 0x8c(r1) +/* 801B41E8 001B1148 7C 9F 23 78 */ mr r31, r4 +/* 801B41EC 001B114C 93 C1 00 88 */ stw r30, 0x88(r1) +/* 801B41F0 001B1150 7C 7E 1B 78 */ mr r30, r3 +/* 801B41F4 001B1154 7F E3 FB 78 */ mr r3, r31 +/* 801B41F8 001B1158 48 18 AA 31 */ bl ReadFloat__12CInputStreamFv +/* 801B41FC 001B115C D0 3E 00 00 */ stfs f1, 0(r30) +/* 801B4200 001B1160 7F E3 FB 78 */ mr r3, r31 +/* 801B4204 001B1164 48 18 AA 25 */ bl ReadFloat__12CInputStreamFv +/* 801B4208 001B1168 D0 3E 00 04 */ stfs f1, 4(r30) +/* 801B420C 001B116C 7F E3 FB 78 */ mr r3, r31 +/* 801B4210 001B1170 48 18 AA 19 */ bl ReadFloat__12CInputStreamFv +/* 801B4214 001B1174 D0 3E 00 08 */ stfs f1, 8(r30) +/* 801B4218 001B1178 7F E3 FB 78 */ mr r3, r31 +/* 801B421C 001B117C 48 18 AA 0D */ bl ReadFloat__12CInputStreamFv +/* 801B4220 001B1180 D0 3E 00 0C */ stfs f1, 0xc(r30) +/* 801B4224 001B1184 7F E4 FB 78 */ mr r4, r31 +/* 801B4228 001B1188 38 7E 00 10 */ addi r3, r30, 0x10 +/* 801B422C 001B118C 4B F4 E9 2D */ bl __ct__20CDamageVulnerabilityFR12CInputStream +/* 801B4230 001B1190 7F E3 FB 78 */ mr r3, r31 +/* 801B4234 001B1194 48 18 AA 51 */ bl ReadLong__12CInputStreamFv +/* 801B4238 001B1198 90 7E 00 78 */ stw r3, 0x78(r30) +/* 801B423C 001B119C 7F E4 FB 78 */ mr r4, r31 +/* 801B4240 001B11A0 38 7E 00 7C */ addi r3, r30, 0x7c +/* 801B4244 001B11A4 4B F0 F3 1D */ bl __ct__11CDamageInfoFR12CInputStream +/* 801B4248 001B11A8 7F E3 FB 78 */ mr r3, r31 +/* 801B424C 001B11AC 48 18 AA 39 */ bl ReadLong__12CInputStreamFv +/* 801B4250 001B11B0 90 7E 00 98 */ stw r3, 0x98(r30) +/* 801B4254 001B11B4 7F E4 FB 78 */ mr r4, r31 +/* 801B4258 001B11B8 38 7E 00 9C */ addi r3, r30, 0x9c +/* 801B425C 001B11BC 4B F0 F3 05 */ bl __ct__11CDamageInfoFR12CInputStream +/* 801B4260 001B11C0 7F E3 FB 78 */ mr r3, r31 +/* 801B4264 001B11C4 48 18 AA 21 */ bl ReadLong__12CInputStreamFv +/* 801B4268 001B11C8 90 7E 00 B8 */ stw r3, 0xb8(r30) +/* 801B426C 001B11CC 7F E4 FB 78 */ mr r4, r31 +/* 801B4270 001B11D0 38 7E 00 BC */ addi r3, r30, 0xbc +/* 801B4274 001B11D4 4B F0 F2 ED */ bl __ct__11CDamageInfoFR12CInputStream +/* 801B4278 001B11D8 7F E4 FB 78 */ mr r4, r31 +/* 801B427C 001B11DC 38 61 00 14 */ addi r3, r1, 0x14 +/* 801B4280 001B11E0 4B F2 5A F5 */ bl LoadActorParameters__FR12CInputStream +/* 801B4284 001B11E4 38 7E 00 D8 */ addi r3, r30, 0xd8 +/* 801B4288 001B11E8 38 81 00 14 */ addi r4, r1, 0x14 +/* 801B428C 001B11EC 4B F1 13 91 */ bl __ct__16CActorParametersFRC16CActorParameters +/* 801B4290 001B11F0 38 61 00 14 */ addi r3, r1, 0x14 +/* 801B4294 001B11F4 38 80 FF FF */ li r4, -1 +/* 801B4298 001B11F8 4B F5 23 71 */ bl __dt__16CActorParametersFv +/* 801B429C 001B11FC 7F E3 FB 78 */ mr r3, r31 +/* 801B42A0 001B1200 48 18 A9 89 */ bl ReadFloat__12CInputStreamFv +/* 801B42A4 001B1204 D0 3E 01 40 */ stfs f1, 0x140(r30) +/* 801B42A8 001B1208 7F E3 FB 78 */ mr r3, r31 +/* 801B42AC 001B120C 48 18 A9 7D */ bl ReadFloat__12CInputStreamFv +/* 801B42B0 001B1210 D0 3E 01 44 */ stfs f1, 0x144(r30) +/* 801B42B4 001B1214 7F E3 FB 78 */ mr r3, r31 +/* 801B42B8 001B1218 48 18 A9 71 */ bl ReadFloat__12CInputStreamFv +/* 801B42BC 001B121C D0 3E 01 48 */ stfs f1, 0x148(r30) +/* 801B42C0 001B1220 7F E4 FB 78 */ mr r4, r31 +/* 801B42C4 001B1224 38 61 00 08 */ addi r3, r1, 8 +/* 801B42C8 001B1228 4B F2 61 45 */ bl LoadAnimationParameters__FR12CInputStream +/* 801B42CC 001B122C 80 01 00 08 */ lwz r0, 8(r1) +/* 801B42D0 001B1230 7F E3 FB 78 */ mr r3, r31 +/* 801B42D4 001B1234 90 1E 01 4C */ stw r0, 0x14c(r30) +/* 801B42D8 001B1238 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801B42DC 001B123C 90 1E 01 50 */ stw r0, 0x150(r30) +/* 801B42E0 001B1240 80 01 00 10 */ lwz r0, 0x10(r1) +/* 801B42E4 001B1244 90 1E 01 54 */ stw r0, 0x154(r30) +/* 801B42E8 001B1248 48 18 A9 9D */ bl ReadLong__12CInputStreamFv +/* 801B42EC 001B124C 90 7E 01 58 */ stw r3, 0x158(r30) +/* 801B42F0 001B1250 7F C3 F3 78 */ mr r3, r30 +/* 801B42F4 001B1254 80 01 00 94 */ lwz r0, 0x94(r1) +/* 801B42F8 001B1258 83 E1 00 8C */ lwz r31, 0x8c(r1) +/* 801B42FC 001B125C 83 C1 00 88 */ lwz r30, 0x88(r1) +/* 801B4300 001B1260 7C 08 03 A6 */ mtlr r0 +/* 801B4304 001B1264 38 21 00 90 */ addi r1, r1, 0x90 +/* 801B4308 001B1268 4E 80 00 20 */ blr + +.global AcceptScriptMsg__19CFlaahgraProjectileF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__19CFlaahgraProjectileF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 801B430C 001B126C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801B4310 001B1270 7C 08 02 A6 */ mflr r0 +/* 801B4314 001B1274 90 01 00 34 */ stw r0, 0x34(r1) +/* 801B4318 001B1278 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801B431C 001B127C 7C DF 33 78 */ mr r31, r6 +/* 801B4320 001B1280 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801B4324 001B1284 7C 9E 23 78 */ mr r30, r4 +/* 801B4328 001B1288 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801B432C 001B128C 7C 7D 1B 78 */ mr r29, r3 +/* 801B4330 001B1290 A0 05 00 00 */ lhz r0, 0(r5) +/* 801B4334 001B1294 38 A1 00 18 */ addi r5, r1, 0x18 +/* 801B4338 001B1298 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801B433C 001B129C 48 05 FB B9 */ bl AcceptScriptMsg__17CEnergyProjectileF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 801B4340 001B12A0 88 1D 03 D8 */ lbz r0, 0x3d8(r29) +/* 801B4344 001B12A4 28 00 00 00 */ cmplwi r0, 0 +/* 801B4348 001B12A8 41 82 00 60 */ beq lbl_801B43A8 +/* 801B434C 001B12AC 2C 1E 00 22 */ cmpwi r30, 0x22 +/* 801B4350 001B12B0 41 82 00 08 */ beq lbl_801B4358 +/* 801B4354 001B12B4 48 00 00 54 */ b lbl_801B43A8 +lbl_801B4358: +/* 801B4358 001B12B8 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 801B435C 001B12BC A0 1D 02 C2 */ lhz r0, 0x2c2(r29) +/* 801B4360 001B12C0 A0 63 00 08 */ lhz r3, 8(r3) +/* 801B4364 001B12C4 7C 03 00 40 */ cmplw r3, r0 +/* 801B4368 001B12C8 40 82 00 40 */ bne lbl_801B43A8 +/* 801B436C 001B12CC A0 1D 00 EC */ lhz r0, 0xec(r29) +/* 801B4370 001B12D0 7F E3 FB 78 */ mr r3, r31 +/* 801B4374 001B12D4 38 81 00 14 */ addi r4, r1, 0x14 +/* 801B4378 001B12D8 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801B437C 001B12DC B0 01 00 14 */ sth r0, 0x14(r1) +/* 801B4380 001B12E0 4B E9 81 F5 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801B4384 001B12E4 7C 64 1B 79 */ or. r4, r3, r3 +/* 801B4388 001B12E8 41 82 00 20 */ beq lbl_801B43A8 +/* 801B438C 001B12EC A0 1D 00 08 */ lhz r0, 8(r29) +/* 801B4390 001B12F0 7F E3 FB 78 */ mr r3, r31 +/* 801B4394 001B12F4 38 A1 00 0C */ addi r5, r1, 0xc +/* 801B4398 001B12F8 38 C0 00 13 */ li r6, 0x13 +/* 801B439C 001B12FC B0 01 00 08 */ sth r0, 8(r1) +/* 801B43A0 001B1300 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801B43A4 001B1304 4B E8 FB 2D */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +lbl_801B43A8: +/* 801B43A8 001B1308 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801B43AC 001B130C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801B43B0 001B1310 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801B43B4 001B1314 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801B43B8 001B1318 7C 08 03 A6 */ mtlr r0 +/* 801B43BC 001B131C 38 21 00 30 */ addi r1, r1, 0x30 +/* 801B43C0 001B1320 4E 80 00 20 */ blr + +.global "__ct__19CFlaahgraProjectileFbRC28TToken<18CWeaponDescription>RC12CTransform4fRC11CDamageInfo9TUniqueId7TAreaId9TUniqueId" +"__ct__19CFlaahgraProjectileFbRC28TToken<18CWeaponDescription>RC12CTransform4fRC11CDamageInfo9TUniqueId7TAreaId9TUniqueId": +/* 801B43C4 001B1324 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 801B43C8 001B1328 7C 08 02 A6 */ mflr r0 +/* 801B43CC 001B132C C0 02 A8 DC */ lfs f0, lbl_805AC5FC@sda21(r2) +/* 801B43D0 001B1330 90 01 00 94 */ stw r0, 0x94(r1) +/* 801B43D4 001B1334 39 81 00 50 */ addi r12, r1, 0x50 +/* 801B43D8 001B1338 39 61 00 40 */ addi r11, r1, 0x40 +/* 801B43DC 001B133C A0 02 C5 FC */ lhz r0, lbl_805AE31C@sda21(r2) +/* 801B43E0 001B1340 BE C1 00 68 */ stmw r22, 0x68(r1) +/* 801B43E4 001B1344 3A C0 00 00 */ li r22, 0 +/* 801B43E8 001B1348 7C 9F 23 78 */ mr r31, r4 +/* 801B43EC 001B134C 3B 41 00 3C */ addi r26, r1, 0x3c +/* 801B43F0 001B1350 3B 61 00 34 */ addi r27, r1, 0x34 +/* 801B43F4 001B1354 3B 81 00 30 */ addi r28, r1, 0x30 +/* 801B43F8 001B1358 3B A0 04 00 */ li r29, 0x400 +/* 801B43FC 001B135C 7C 7E 1B 78 */ mr r30, r3 +/* 801B4400 001B1360 38 80 00 01 */ li r4, 1 +/* 801B4404 001B1364 A2 EA 00 00 */ lhz r23, 0(r10) +/* 801B4408 001B1368 7C EA 3B 78 */ mr r10, r7 +/* 801B440C 001B136C A3 28 00 00 */ lhz r25, 0(r8) +/* 801B4410 001B1370 7C C7 33 78 */ mr r7, r6 +/* 801B4414 001B1374 83 09 00 00 */ lwz r24, 0(r9) +/* 801B4418 001B1378 7D 49 53 78 */ mr r9, r10 +/* 801B441C 001B137C A1 0D A3 8C */ lhz r8, lbl_805A8F4C@sda21(r13) +/* 801B4420 001B1380 39 41 00 38 */ addi r10, r1, 0x38 +/* 801B4424 001B1384 9A C1 00 4C */ stb r22, 0x4c(r1) +/* 801B4428 001B1388 38 C0 00 09 */ li r6, 9 +/* 801B442C 001B138C B1 01 00 30 */ sth r8, 0x30(r1) +/* 801B4430 001B1390 39 00 00 21 */ li r8, 0x21 +/* 801B4434 001B1394 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 801B4438 001B1398 D0 01 00 54 */ stfs f0, 0x54(r1) +/* 801B443C 001B139C D0 01 00 58 */ stfs f0, 0x58(r1) +/* 801B4440 001B13A0 B2 E1 00 34 */ sth r23, 0x34(r1) +/* 801B4444 001B13A4 93 01 00 3C */ stw r24, 0x3c(r1) +/* 801B4448 001B13A8 B3 21 00 38 */ sth r25, 0x38(r1) +/* 801B444C 001B13AC 93 41 00 08 */ stw r26, 8(r1) +/* 801B4450 001B13B0 93 61 00 0C */ stw r27, 0xc(r1) +/* 801B4454 001B13B4 93 81 00 10 */ stw r28, 0x10(r1) +/* 801B4458 001B13B8 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801B445C 001B13BC 92 C1 00 18 */ stw r22, 0x18(r1) +/* 801B4460 001B13C0 91 81 00 1C */ stw r12, 0x1c(r1) +/* 801B4464 001B13C4 91 61 00 20 */ stw r11, 0x20(r1) +/* 801B4468 001B13C8 90 01 00 24 */ stw r0, 0x24(r1) +/* 801B446C 001B13CC 92 C1 00 28 */ stw r22, 0x28(r1) +/* 801B4470 001B13D0 48 06 12 29 */ bl "__ct__17CEnergyProjectileFbRC28TToken<18CWeaponDescription>11EWeaponTypeRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId7TAreaId9TUniqueId9TUniqueIdUibRC9CVector3fRCQ24rstl50optional_object<31TLockedToken<15CGenDescription>>sb" +/* 801B4474 001B13D4 88 01 00 4C */ lbz r0, 0x4c(r1) +/* 801B4478 001B13D8 28 00 00 00 */ cmplwi r0, 0 +/* 801B447C 001B13DC 41 82 00 1C */ beq lbl_801B4498 +/* 801B4480 001B13E0 34 61 00 40 */ addic. r3, r1, 0x40 +/* 801B4484 001B13E4 41 82 00 14 */ beq lbl_801B4498 +/* 801B4488 001B13E8 28 03 00 00 */ cmplwi r3, 0 +/* 801B448C 001B13EC 41 82 00 0C */ beq lbl_801B4498 +/* 801B4490 001B13F0 38 80 00 00 */ li r4, 0 +/* 801B4494 001B13F4 48 18 C9 AD */ bl __dt__6CTokenFv +lbl_801B4498: +/* 801B4498 001B13F8 38 00 00 00 */ li r0, 0 +/* 801B449C 001B13FC 3C 60 80 3E */ lis r3, lbl_803E5154@ha +/* 801B44A0 001B1400 98 01 00 4C */ stb r0, 0x4c(r1) +/* 801B44A4 001B1404 38 03 51 54 */ addi r0, r3, lbl_803E5154@l +/* 801B44A8 001B1408 90 1E 00 00 */ stw r0, 0(r30) +/* 801B44AC 001B140C 9B FE 03 D8 */ stb r31, 0x3d8(r30) +/* 801B44B0 001B1410 88 1E 03 D8 */ lbz r0, 0x3d8(r30) +/* 801B44B4 001B1414 28 00 00 00 */ cmplwi r0, 0 +/* 801B44B8 001B1418 41 82 00 18 */ beq lbl_801B44D0 +/* 801B44BC 001B141C 80 1E 00 E8 */ lwz r0, 0xe8(r30) +/* 801B44C0 001B1420 C0 02 A8 C4 */ lfs f0, lbl_805AC5E4@sda21(r2) +/* 801B44C4 001B1424 60 00 10 00 */ ori r0, r0, 0x1000 +/* 801B44C8 001B1428 90 1E 00 E8 */ stw r0, 0xe8(r30) +/* 801B44CC 001B142C D0 1E 01 50 */ stfs f0, 0x150(r30) +lbl_801B44D0: +/* 801B44D0 001B1430 7F C3 F3 78 */ mr r3, r30 +/* 801B44D4 001B1434 BA C1 00 68 */ lmw r22, 0x68(r1) +/* 801B44D8 001B1438 80 01 00 94 */ lwz r0, 0x94(r1) +/* 801B44DC 001B143C 7C 08 03 A6 */ mtlr r0 +/* 801B44E0 001B1440 38 21 00 90 */ addi r1, r1, 0x90 +/* 801B44E4 001B1444 4E 80 00 20 */ blr + +.global GetTouchBounds__9CFlaahgraCFv +GetTouchBounds__9CFlaahgraCFv: +/* 801B44E8 001B1448 38 00 00 00 */ li r0, 0 +/* 801B44EC 001B144C 98 03 00 18 */ stb r0, 0x18(r3) +/* 801B44F0 001B1450 4E 80 00 20 */ blr + +.global __dt__19CFlaahgraProjectileFv +__dt__19CFlaahgraProjectileFv: +/* 801B44F4 001B1454 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B44F8 001B1458 7C 08 02 A6 */ mflr r0 +/* 801B44FC 001B145C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B4500 001B1460 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801B4504 001B1464 7C 9F 23 78 */ mr r31, r4 +/* 801B4508 001B1468 93 C1 00 08 */ stw r30, 8(r1) +/* 801B450C 001B146C 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801B4510 001B1470 41 82 00 28 */ beq lbl_801B4538 +/* 801B4514 001B1474 3C A0 80 3E */ lis r5, lbl_803E5154@ha +/* 801B4518 001B1478 38 80 00 00 */ li r4, 0 +/* 801B451C 001B147C 38 05 51 54 */ addi r0, r5, lbl_803E5154@l +/* 801B4520 001B1480 90 1E 00 00 */ stw r0, 0(r30) +/* 801B4524 001B1484 4B F8 73 D1 */ bl __dt__17CEnergyProjectileFv +/* 801B4528 001B1488 7F E0 07 35 */ extsh. r0, r31 +/* 801B452C 001B148C 40 81 00 0C */ ble lbl_801B4538 +/* 801B4530 001B1490 7F C3 F3 78 */ mr r3, r30 +/* 801B4534 001B1494 48 16 13 FD */ bl Free__7CMemoryFPCv +lbl_801B4538: +/* 801B4538 001B1498 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B453C 001B149C 7F C3 F3 78 */ mr r3, r30 +/* 801B4540 001B14A0 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801B4544 001B14A4 83 C1 00 08 */ lwz r30, 8(r1) +/* 801B4548 001B14A8 7C 08 03 A6 */ mtlr r0 +/* 801B454C 001B14AC 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B4550 001B14B0 4E 80 00 20 */ blr + +.global __sinit_CFlaahgra_cpp +__sinit_CFlaahgra_cpp: +/* 801B4554 001B14B4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B4558 001B14B8 7C 08 02 A6 */ mflr r0 +/* 801B455C 001B14BC C0 22 A8 E4 */ lfs f1, lbl_805AC604@sda21(r2) +/* 801B4560 001B14C0 3C 60 80 57 */ lis r3, lbl_8057203C@ha +/* 801B4564 001B14C4 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B4568 001B14C8 38 83 20 3C */ addi r4, r3, lbl_8057203C@l +/* 801B456C 001B14CC C0 A2 A9 38 */ lfs f5, lbl_805AC658@sda21(r2) +/* 801B4570 001B14D0 3C A0 80 57 */ lis r5, lbl_80572024@ha +/* 801B4574 001B14D4 C0 62 A8 BC */ lfs f3, lbl_805AC5DC@sda21(r2) +/* 801B4578 001B14D8 FC 40 08 90 */ fmr f2, f1 +/* 801B457C 001B14DC D4 A5 20 24 */ stfsu f5, lbl_80572024@l(r5) +/* 801B4580 001B14E0 38 6D A4 98 */ addi r3, r13, lbl_805A9058@sda21 +/* 801B4584 001B14E4 C0 02 A9 3C */ lfs f0, lbl_805AC65C@sda21(r2) +/* 801B4588 001B14E8 D0 24 00 00 */ stfs f1, 0(r4) +/* 801B458C 001B14EC C0 82 A8 DC */ lfs f4, lbl_805AC5FC@sda21(r2) +/* 801B4590 001B14F0 D0 A5 00 04 */ stfs f5, 4(r5) +/* 801B4594 001B14F4 D0 A5 00 08 */ stfs f5, 8(r5) +/* 801B4598 001B14F8 D0 04 00 04 */ stfs f0, 4(r4) +/* 801B459C 001B14FC D0 64 00 08 */ stfs f3, 8(r4) +/* 801B45A0 001B1500 48 1A EE 4D */ bl __ct__6CColorFffff +/* 801B45A4 001B1504 C0 42 A8 BC */ lfs f2, lbl_805AC5DC@sda21(r2) +/* 801B45A8 001B1508 38 6D A4 9C */ addi r3, r13, lbl_805A905C@sda21 +/* 801B45AC 001B150C C0 22 A8 E4 */ lfs f1, lbl_805AC604@sda21(r2) +/* 801B45B0 001B1510 FC 60 10 90 */ fmr f3, f2 +/* 801B45B4 001B1514 C0 82 A8 DC */ lfs f4, lbl_805AC5FC@sda21(r2) +/* 801B45B8 001B1518 48 1A EE 35 */ bl __ct__6CColorFffff +/* 801B45BC 001B151C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B45C0 001B1520 7C 08 03 A6 */ mtlr r0 +/* 801B45C4 001B1524 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B45C8 001B1528 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Enemies/CFlaahgraPlants.s b/asm/Kyoto_CWD/Enemies/CFlaahgraPlants.s new file mode 100644 index 00000000..d763b29f --- /dev/null +++ b/asm/Kyoto_CWD/Enemies/CFlaahgraPlants.s @@ -0,0 +1,690 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global AcceptScriptMsg__15CFlaahgraPlantsF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__15CFlaahgraPlantsF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 80208410 00205370 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 80208414 00205374 7C 08 02 A6 */ mflr r0 +/* 80208418 00205378 90 01 00 74 */ stw r0, 0x74(r1) +/* 8020841C 0020537C BF 61 00 5C */ stmw r27, 0x5c(r1) +/* 80208420 00205380 7C 7D 1B 78 */ mr r29, r3 +/* 80208424 00205384 7C 9B 23 78 */ mr r27, r4 +/* 80208428 00205388 7C DE 33 78 */ mr r30, r6 +/* 8020842C 0020538C A0 05 00 00 */ lhz r0, 0(r5) +/* 80208430 00205390 38 A1 00 1C */ addi r5, r1, 0x1c +/* 80208434 00205394 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 80208438 00205398 4B E4 B1 DD */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 8020843C 0020539C 2C 1B 00 22 */ cmpwi r27, 0x22 +/* 80208440 002053A0 41 82 02 14 */ beq lbl_80208654 +/* 80208444 002053A4 40 80 02 34 */ bge lbl_80208678 +/* 80208448 002053A8 2C 1B 00 21 */ cmpwi r27, 0x21 +/* 8020844C 002053AC 40 80 00 08 */ bge lbl_80208454 +/* 80208450 002053B0 48 00 02 28 */ b lbl_80208678 +lbl_80208454: +/* 80208454 002053B4 80 7D 00 EC */ lwz r3, 0xec(r29) +/* 80208458 002053B8 38 80 00 01 */ li r4, 1 +/* 8020845C 002053BC 81 83 00 00 */ lwz r12, 0(r3) +/* 80208460 002053C0 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80208464 002053C4 7D 89 03 A6 */ mtctr r12 +/* 80208468 002053C8 4E 80 04 21 */ bctrl +/* 8020846C 002053CC 7F A3 EB 78 */ mr r3, r29 +/* 80208470 002053D0 38 80 00 01 */ li r4, 1 +/* 80208474 002053D4 81 9D 00 00 */ lwz r12, 0(r29) +/* 80208478 002053D8 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 8020847C 002053DC 7D 89 03 A6 */ mtctr r12 +/* 80208480 002053E0 4E 80 04 21 */ bctrl +/* 80208484 002053E4 A0 7D 01 6C */ lhz r3, 0x16c(r29) +/* 80208488 002053E8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8020848C 002053EC 7C 03 00 40 */ cmplw r3, r0 +/* 80208490 002053F0 40 82 01 E8 */ bne lbl_80208678 +/* 80208494 002053F4 7F C4 F3 78 */ mr r4, r30 +/* 80208498 002053F8 38 61 00 18 */ addi r3, r1, 0x18 +/* 8020849C 002053FC 4B E4 4C 41 */ bl AllocateUniqueId__13CStateManagerFv +/* 802084A0 00205400 A0 01 00 18 */ lhz r0, 0x18(r1) +/* 802084A4 00205404 3C 60 80 3D */ lis r3, lbl_803D2738@ha +/* 802084A8 00205408 38 83 27 38 */ addi r4, r3, lbl_803D2738@l +/* 802084AC 0020540C C0 02 B1 10 */ lfs f0, lbl_805ACE30@sda21(r2) +/* 802084B0 00205410 B0 1D 01 6C */ sth r0, 0x16c(r29) +/* 802084B4 00205414 38 60 03 10 */ li r3, 0x310 +/* 802084B8 00205418 C0 42 B1 14 */ lfs f2, lbl_805ACE34@sda21(r2) +/* 802084BC 0020541C 38 A0 00 00 */ li r5, 0 +/* 802084C0 00205420 C0 9D 01 64 */ lfs f4, 0x164(r29) +/* 802084C4 00205424 C0 7D 01 68 */ lfs f3, 0x168(r29) +/* 802084C8 00205428 EC 84 00 2A */ fadds f4, f4, f0 +/* 802084CC 0020542C C0 3D 01 60 */ lfs f1, 0x160(r29) +/* 802084D0 00205430 C0 02 B1 18 */ lfs f0, lbl_805ACE38@sda21(r2) +/* 802084D4 00205434 EC 43 10 2A */ fadds f2, f3, f2 +/* 802084D8 00205438 EC 01 00 2A */ fadds f0, f1, f0 +/* 802084DC 0020543C D0 81 00 34 */ stfs f4, 0x34(r1) +/* 802084E0 00205440 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 802084E4 00205444 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 802084E8 00205448 48 10 D3 85 */ bl __nw__FUlPCcPCc +/* 802084EC 0020544C 7C 7F 1B 79 */ or. r31, r3, r3 +/* 802084F0 00205450 41 82 00 4C */ beq lbl_8020853C +/* 802084F4 00205454 A0 1D 00 08 */ lhz r0, 8(r29) +/* 802084F8 00205458 3C 80 80 5A */ lis r4, skZero3f@ha +/* 802084FC 0020545C 39 04 66 A0 */ addi r8, r4, skZero3f@l +/* 80208500 00205460 C0 22 B1 1C */ lfs f1, lbl_805ACE3C@sda21(r2) +/* 80208504 00205464 B0 01 00 14 */ sth r0, 0x14(r1) +/* 80208508 00205468 38 81 00 0C */ addi r4, r1, 0xc +/* 8020850C 0020546C 38 A1 00 2C */ addi r5, r1, 0x2c +/* 80208510 00205470 38 C1 00 14 */ addi r6, r1, 0x14 +/* 80208514 00205474 81 5D 00 04 */ lwz r10, 4(r29) +/* 80208518 00205478 38 E1 00 30 */ addi r7, r1, 0x30 +/* 8020851C 0020547C B0 01 00 10 */ sth r0, 0x10(r1) +/* 80208520 00205480 39 20 00 01 */ li r9, 1 +/* 80208524 00205484 91 41 00 2C */ stw r10, 0x2c(r1) +/* 80208528 00205488 A0 1D 01 6C */ lhz r0, 0x16c(r29) +/* 8020852C 0020548C 91 41 00 28 */ stw r10, 0x28(r1) +/* 80208530 00205490 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80208534 00205494 4B FA 18 75 */ bl __ct__15CCollisionActorF9TUniqueIdCRi9TUniqueIdRC9CVector3fRC9CVector3fbf +/* 80208538 00205498 7C 7F 1B 78 */ mr r31, r3 +lbl_8020853C: +/* 8020853C 0020549C 28 1F 00 00 */ cmplwi r31, 0 +/* 80208540 002054A0 41 82 01 38 */ beq lbl_80208678 +/* 80208544 002054A4 38 7F 00 34 */ addi r3, r31, 0x34 +/* 80208548 002054A8 38 9D 00 34 */ addi r4, r29, 0x34 +/* 8020854C 002054AC 48 10 A5 F5 */ bl __as__12CTransform4fFRC12CTransform4f +/* 80208550 002054B0 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 80208554 002054B4 38 A0 00 01 */ li r5, 1 +/* 80208558 002054B8 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 8020855C 002054BC 38 60 00 00 */ li r3, 0 +/* 80208560 002054C0 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 80208564 002054C4 38 80 00 01 */ li r4, 1 +/* 80208568 002054C8 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 8020856C 002054CC 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 80208570 002054D0 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 80208574 002054D4 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 80208578 002054D8 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d +/* 8020857C 002054DC 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 80208580 002054E0 80 AD 93 B4 */ lwz r5, lbl_805A7F74@sda21(r13) +/* 80208584 002054E4 48 18 19 71 */ bl __shl2i +/* 80208588 002054E8 80 AD 93 B8 */ lwz r5, lbl_805A7F78@sda21(r13) +/* 8020858C 002054EC 7C 9B 23 78 */ mr r27, r4 +/* 80208590 002054F0 7C 7C 1B 78 */ mr r28, r3 +/* 80208594 002054F4 38 60 00 00 */ li r3, 0 +/* 80208598 002054F8 38 80 00 01 */ li r4, 1 +/* 8020859C 002054FC 48 18 19 59 */ bl __shl2i +/* 802085A0 00205500 80 AD 93 BC */ lwz r5, lbl_805A7F7C@sda21(r13) +/* 802085A4 00205504 7F 7B 23 78 */ or r27, r27, r4 +/* 802085A8 00205508 7F 9C 1B 78 */ or r28, r28, r3 +/* 802085AC 0020550C 38 60 00 00 */ li r3, 0 +/* 802085B0 00205510 38 80 00 01 */ li r4, 1 +/* 802085B4 00205514 48 18 19 41 */ bl __shl2i +/* 802085B8 00205518 80 AD 93 C0 */ lwz r5, lbl_805A7F80@sda21(r13) +/* 802085BC 0020551C 7F 7B 23 78 */ or r27, r27, r4 +/* 802085C0 00205520 7F 9C 1B 78 */ or r28, r28, r3 +/* 802085C4 00205524 38 60 00 00 */ li r3, 0 +/* 802085C8 00205528 38 80 00 01 */ li r4, 1 +/* 802085CC 0020552C 48 18 19 29 */ bl __shl2i +/* 802085D0 00205530 80 AD 93 B0 */ lwz r5, lbl_805A7F70@sda21(r13) +/* 802085D4 00205534 7F 7B 23 78 */ or r27, r27, r4 +/* 802085D8 00205538 7F 9C 1B 78 */ or r28, r28, r3 +/* 802085DC 0020553C 38 60 00 00 */ li r3, 0 +/* 802085E0 00205540 38 80 00 01 */ li r4, 1 +/* 802085E4 00205544 48 18 19 11 */ bl __shl2i +/* 802085E8 00205548 38 00 00 03 */ li r0, 3 +/* 802085EC 0020554C 90 81 00 44 */ stw r4, 0x44(r1) +/* 802085F0 00205550 38 81 00 40 */ addi r4, r1, 0x40 +/* 802085F4 00205554 90 61 00 40 */ stw r3, 0x40(r1) +/* 802085F8 00205558 7F E3 FB 78 */ mr r3, r31 +/* 802085FC 0020555C 93 61 00 4C */ stw r27, 0x4c(r1) +/* 80208600 00205560 93 81 00 48 */ stw r28, 0x48(r1) +/* 80208604 00205564 90 01 00 50 */ stw r0, 0x50(r1) +/* 80208608 00205568 4B E4 B2 99 */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter +/* 8020860C 0020556C 80 9F 00 68 */ lwz r4, 0x68(r31) +/* 80208610 00205570 3C 00 00 04 */ lis r0, 4 +/* 80208614 00205574 7F C3 F3 78 */ mr r3, r30 +/* 80208618 00205578 60 85 08 00 */ ori r5, r4, 0x800 +/* 8020861C 0020557C 7F E4 FB 78 */ mr r4, r31 +/* 80208620 00205580 90 BF 00 68 */ stw r5, 0x68(r31) +/* 80208624 00205584 80 DF 00 6C */ lwz r6, 0x6c(r31) +/* 80208628 00205588 7C C0 03 78 */ or r0, r6, r0 +/* 8020862C 0020558C 90 1F 00 6C */ stw r0, 0x6c(r31) +/* 80208630 00205590 4B E4 46 C5 */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +/* 80208634 00205594 80 1D 00 04 */ lwz r0, 4(r29) +/* 80208638 00205598 7F C3 F3 78 */ mr r3, r30 +/* 8020863C 0020559C 7F E4 FB 78 */ mr r4, r31 +/* 80208640 002055A0 38 A1 00 24 */ addi r5, r1, 0x24 +/* 80208644 002055A4 90 01 00 20 */ stw r0, 0x20(r1) +/* 80208648 002055A8 90 01 00 24 */ stw r0, 0x24(r1) +/* 8020864C 002055AC 4B E3 CC 2D */ bl SetActorAreaId__13CStateManagerFR6CActor7TAreaId +/* 80208650 002055B0 48 00 00 28 */ b lbl_80208678 +lbl_80208654: +/* 80208654 002055B4 A0 7D 01 6C */ lhz r3, 0x16c(r29) +/* 80208658 002055B8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8020865C 002055BC 7C 03 00 40 */ cmplw r3, r0 +/* 80208660 002055C0 41 82 00 18 */ beq lbl_80208678 +/* 80208664 002055C4 A0 1D 01 6C */ lhz r0, 0x16c(r29) +/* 80208668 002055C8 7F C3 F3 78 */ mr r3, r30 +/* 8020866C 002055CC 38 81 00 08 */ addi r4, r1, 8 +/* 80208670 002055D0 B0 01 00 08 */ sth r0, 8(r1) +/* 80208674 002055D4 4B E4 3B F9 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +lbl_80208678: +/* 80208678 002055D8 BB 61 00 5C */ lmw r27, 0x5c(r1) +/* 8020867C 002055DC 80 01 00 74 */ lwz r0, 0x74(r1) +/* 80208680 002055E0 7C 08 03 A6 */ mtlr r0 +/* 80208684 002055E4 38 21 00 70 */ addi r1, r1, 0x70 +/* 80208688 002055E8 4E 80 00 20 */ blr + +.global Think__15CFlaahgraPlantsFfR13CStateManager +Think__15CFlaahgraPlantsFfR13CStateManager: +/* 8020868C 002055EC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80208690 002055F0 7C 08 02 A6 */ mflr r0 +/* 80208694 002055F4 90 01 00 24 */ stw r0, 0x24(r1) +/* 80208698 002055F8 DB E1 00 18 */ stfd f31, 0x18(r1) +/* 8020869C 002055FC FF E0 08 90 */ fmr f31, f1 +/* 802086A0 00205600 93 E1 00 14 */ stw r31, 0x14(r1) +/* 802086A4 00205604 7C 9F 23 78 */ mr r31, r4 +/* 802086A8 00205608 93 C1 00 10 */ stw r30, 0x10(r1) +/* 802086AC 0020560C 7C 7E 1B 78 */ mr r30, r3 +/* 802086B0 00205610 88 03 00 30 */ lbz r0, 0x30(r3) +/* 802086B4 00205614 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 802086B8 00205618 41 82 00 1C */ beq lbl_802086D4 +/* 802086BC 0020561C 80 7E 00 EC */ lwz r3, 0xec(r30) +/* 802086C0 00205620 81 83 00 00 */ lwz r12, 0(r3) +/* 802086C4 00205624 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 802086C8 00205628 7D 89 03 A6 */ mtctr r12 +/* 802086CC 0020562C 4E 80 04 21 */ bctrl +/* 802086D0 00205630 D3 FE 01 2C */ stfs f31, 0x12c(r30) +lbl_802086D4: +/* 802086D4 00205634 80 7E 00 EC */ lwz r3, 0xec(r30) +/* 802086D8 00205638 81 83 00 00 */ lwz r12, 0(r3) +/* 802086DC 0020563C 81 8C 00 58 */ lwz r12, 0x58(r12) +/* 802086E0 00205640 7D 89 03 A6 */ mtctr r12 +/* 802086E4 00205644 4E 80 04 21 */ bctrl +/* 802086E8 00205648 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 802086EC 0020564C 41 82 00 1C */ beq lbl_80208708 +/* 802086F0 00205650 A0 1E 00 08 */ lhz r0, 8(r30) +/* 802086F4 00205654 7F E3 FB 78 */ mr r3, r31 +/* 802086F8 00205658 38 81 00 0C */ addi r4, r1, 0xc +/* 802086FC 0020565C B0 01 00 08 */ sth r0, 8(r1) +/* 80208700 00205660 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80208704 00205664 4B E4 3B 69 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +lbl_80208708: +/* 80208708 00205668 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8020870C 0020566C CB E1 00 18 */ lfd f31, 0x18(r1) +/* 80208710 00205670 83 E1 00 14 */ lwz r31, 0x14(r1) +/* 80208714 00205674 83 C1 00 10 */ lwz r30, 0x10(r1) +/* 80208718 00205678 7C 08 03 A6 */ mtlr r0 +/* 8020871C 0020567C 38 21 00 20 */ addi r1, r1, 0x20 +/* 80208720 00205680 4E 80 00 20 */ blr + +.global Accept__15CFlaahgraPlantsFR8IVisitor +Accept__15CFlaahgraPlantsFR8IVisitor: +/* 80208724 00205684 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80208728 00205688 7C 08 02 A6 */ mflr r0 +/* 8020872C 0020568C 90 01 00 14 */ stw r0, 0x14(r1) +/* 80208730 00205690 7C 60 1B 78 */ mr r0, r3 +/* 80208734 00205694 7C 83 23 78 */ mr r3, r4 +/* 80208738 00205698 81 84 00 00 */ lwz r12, 0(r4) +/* 8020873C 0020569C 7C 04 03 78 */ mr r4, r0 +/* 80208740 002056A0 81 8C 00 08 */ lwz r12, 8(r12) +/* 80208744 002056A4 7D 89 03 A6 */ mtctr r12 +/* 80208748 002056A8 4E 80 04 21 */ bctrl +/* 8020874C 002056AC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80208750 002056B0 7C 08 03 A6 */ mtlr r0 +/* 80208754 002056B4 38 21 00 10 */ addi r1, r1, 0x10 +/* 80208758 002056B8 4E 80 00 20 */ blr + +.global AddToRenderer__15CFlaahgraPlantsCFRC14CFrustumPlanesRC13CStateManager +AddToRenderer__15CFlaahgraPlantsCFRC14CFrustumPlanesRC13CStateManager: +/* 8020875C 002056BC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80208760 002056C0 7C 08 02 A6 */ mflr r0 +/* 80208764 002056C4 90 01 00 24 */ stw r0, 0x24(r1) +/* 80208768 002056C8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8020876C 002056CC 7C BF 2B 78 */ mr r31, r5 +/* 80208770 002056D0 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80208774 002056D4 7C 9E 23 78 */ mr r30, r4 +/* 80208778 002056D8 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8020877C 002056DC 7C 7D 1B 78 */ mr r29, r3 +/* 80208780 002056E0 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 80208784 002056E4 80 9D 00 EC */ lwz r4, 0xec(r29) +/* 80208788 002056E8 81 83 00 00 */ lwz r12, 0(r3) +/* 8020878C 002056EC 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80208790 002056F0 7D 89 03 A6 */ mtctr r12 +/* 80208794 002056F4 4E 80 04 21 */ bctrl +/* 80208798 002056F8 7F A3 EB 78 */ mr r3, r29 +/* 8020879C 002056FC 7F C4 F3 78 */ mr r4, r30 +/* 802087A0 00205700 7F E5 FB 78 */ mr r5, r31 +/* 802087A4 00205704 4B E4 C3 95 */ bl AddToRenderer__6CActorCFRC14CFrustumPlanesRC13CStateManager +/* 802087A8 00205708 80 01 00 24 */ lwz r0, 0x24(r1) +/* 802087AC 0020570C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 802087B0 00205710 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 802087B4 00205714 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 802087B8 00205718 7C 08 03 A6 */ mtlr r0 +/* 802087BC 0020571C 38 21 00 20 */ addi r1, r1, 0x20 +/* 802087C0 00205720 4E 80 00 20 */ blr + +.global GetTouchBounds__15CFlaahgraPlantsCFv +GetTouchBounds__15CFlaahgraPlantsCFv: +/* 802087C4 00205724 88 04 00 30 */ lbz r0, 0x30(r4) +/* 802087C8 00205728 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 802087CC 0020572C 41 82 00 54 */ beq lbl_80208820 +/* 802087D0 00205730 88 04 01 28 */ lbz r0, 0x128(r4) +/* 802087D4 00205734 98 03 00 18 */ stb r0, 0x18(r3) +/* 802087D8 00205738 88 04 01 28 */ lbz r0, 0x128(r4) +/* 802087DC 0020573C 28 00 00 00 */ cmplwi r0, 0 +/* 802087E0 00205740 4D 82 00 20 */ beqlr +/* 802087E4 00205744 28 03 00 00 */ cmplwi r3, 0 +/* 802087E8 00205748 4D 82 00 20 */ beqlr +/* 802087EC 0020574C C0 04 01 10 */ lfs f0, 0x110(r4) +/* 802087F0 00205750 D0 03 00 00 */ stfs f0, 0(r3) +/* 802087F4 00205754 C0 04 01 14 */ lfs f0, 0x114(r4) +/* 802087F8 00205758 D0 03 00 04 */ stfs f0, 4(r3) +/* 802087FC 0020575C C0 04 01 18 */ lfs f0, 0x118(r4) +/* 80208800 00205760 D0 03 00 08 */ stfs f0, 8(r3) +/* 80208804 00205764 C0 04 01 1C */ lfs f0, 0x11c(r4) +/* 80208808 00205768 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 8020880C 0020576C C0 04 01 20 */ lfs f0, 0x120(r4) +/* 80208810 00205770 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 80208814 00205774 C0 04 01 24 */ lfs f0, 0x124(r4) +/* 80208818 00205778 D0 03 00 14 */ stfs f0, 0x14(r3) +/* 8020881C 0020577C 4E 80 00 20 */ blr +lbl_80208820: +/* 80208820 00205780 38 00 00 00 */ li r0, 0 +/* 80208824 00205784 98 03 00 18 */ stb r0, 0x18(r3) +/* 80208828 00205788 4E 80 00 20 */ blr + +.global Touch__15CFlaahgraPlantsFR6CActorR13CStateManager +Touch__15CFlaahgraPlantsFR6CActorR13CStateManager: +/* 8020882C 0020578C 94 21 FE C0 */ stwu r1, -0x140(r1) +/* 80208830 00205790 7C 08 02 A6 */ mflr r0 +/* 80208834 00205794 90 01 01 44 */ stw r0, 0x144(r1) +/* 80208838 00205798 93 E1 01 3C */ stw r31, 0x13c(r1) +/* 8020883C 0020579C 7C BF 2B 78 */ mr r31, r5 +/* 80208840 002057A0 93 C1 01 38 */ stw r30, 0x138(r1) +/* 80208844 002057A4 7C 9E 23 78 */ mr r30, r4 +/* 80208848 002057A8 93 A1 01 34 */ stw r29, 0x134(r1) +/* 8020884C 002057AC 7C 7D 1B 78 */ mr r29, r3 +/* 80208850 002057B0 80 85 08 4C */ lwz r4, 0x84c(r5) +/* 80208854 002057B4 A0 7E 00 08 */ lhz r3, 8(r30) +/* 80208858 002057B8 A0 04 00 08 */ lhz r0, 8(r4) +/* 8020885C 002057BC 7C 03 00 40 */ cmplw r3, r0 +/* 80208860 002057C0 40 82 01 B0 */ bne lbl_80208A10 +/* 80208864 002057C4 88 1D 01 28 */ lbz r0, 0x128(r29) +/* 80208868 002057C8 28 00 00 00 */ cmplwi r0, 0 +/* 8020886C 002057CC 41 82 01 A4 */ beq lbl_80208A10 +/* 80208870 002057D0 38 61 00 60 */ addi r3, r1, 0x60 +/* 80208874 002057D4 4B F1 20 B9 */ bl GetBoundingBox__13CPhysicsActorCFv +/* 80208878 002057D8 3C 80 80 5A */ lis r4, skIdentity4f@ha +/* 8020887C 002057DC 38 61 00 AC */ addi r3, r1, 0xac +/* 80208880 002057E0 38 A4 66 70 */ addi r5, r4, skIdentity4f@l +/* 80208884 002057E4 38 81 00 60 */ addi r4, r1, 0x60 +/* 80208888 002057E8 48 0C D4 95 */ bl FromAABox__6COBBoxFRC6CAABoxRC12CTransform4f +/* 8020888C 002057EC 38 61 00 E8 */ addi r3, r1, 0xe8 +/* 80208890 002057F0 38 81 00 AC */ addi r4, r1, 0xac +/* 80208894 002057F4 48 10 A2 E1 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80208898 002057F8 C0 41 00 DC */ lfs f2, 0xdc(r1) +/* 8020889C 002057FC 38 7D 01 30 */ addi r3, r29, 0x130 +/* 802088A0 00205800 C0 21 00 E0 */ lfs f1, 0xe0(r1) +/* 802088A4 00205804 38 81 00 E8 */ addi r4, r1, 0xe8 +/* 802088A8 00205808 C0 01 00 E4 */ lfs f0, 0xe4(r1) +/* 802088AC 0020580C D0 41 01 18 */ stfs f2, 0x118(r1) +/* 802088B0 00205810 D0 21 01 1C */ stfs f1, 0x11c(r1) +/* 802088B4 00205814 D0 01 01 20 */ stfs f0, 0x120(r1) +/* 802088B8 00205818 48 0C CB DD */ bl OBBIntersectsBox__6COBBoxCFRC6COBBox +/* 802088BC 0020581C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 802088C0 00205820 41 82 01 50 */ beq lbl_80208A10 +/* 802088C4 00205824 C0 5D 01 08 */ lfs f2, 0x108(r29) +/* 802088C8 00205828 38 A0 00 01 */ li r5, 1 +/* 802088CC 0020582C C0 7D 01 04 */ lfs f3, 0x104(r29) +/* 802088D0 00205830 38 60 00 00 */ li r3, 0 +/* 802088D4 00205834 C0 3D 01 2C */ lfs f1, 0x12c(r29) +/* 802088D8 00205838 38 80 00 01 */ li r4, 1 +/* 802088DC 0020583C C0 1D 00 FC */ lfs f0, 0xfc(r29) +/* 802088E0 00205840 80 DD 00 F4 */ lwz r6, 0xf4(r29) +/* 802088E4 00205844 88 01 00 A8 */ lbz r0, 0xa8(r1) +/* 802088E8 00205848 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 802088EC 0020584C 90 C1 00 90 */ stw r6, 0x90(r1) +/* 802088F0 00205850 EC 01 00 32 */ fmuls f0, f1, f0 +/* 802088F4 00205854 80 AD 93 AC */ lwz r5, lbl_805A7F6C@sda21(r13) +/* 802088F8 00205858 88 DD 00 F8 */ lbz r6, 0xf8(r29) +/* 802088FC 0020585C 98 C1 00 94 */ stb r6, 0x94(r1) +/* 80208900 00205860 D0 01 00 98 */ stfs f0, 0x98(r1) +/* 80208904 00205864 D0 01 00 9C */ stfs f0, 0x9c(r1) +/* 80208908 00205868 D0 61 00 A0 */ stfs f3, 0xa0(r1) +/* 8020890C 0020586C D0 41 00 A4 */ stfs f2, 0xa4(r1) +/* 80208910 00205870 98 01 00 A8 */ stb r0, 0xa8(r1) +/* 80208914 00205874 48 18 15 E1 */ bl __shl2i +/* 80208918 00205878 38 A0 00 03 */ li r5, 3 +/* 8020891C 0020587C 38 00 00 00 */ li r0, 0 +/* 80208920 00205880 90 81 00 7C */ stw r4, 0x7c(r1) +/* 80208924 00205884 C0 02 B1 18 */ lfs f0, lbl_805ACE38@sda21(r2) +/* 80208928 00205888 90 61 00 78 */ stw r3, 0x78(r1) +/* 8020892C 0020588C 90 01 00 84 */ stw r0, 0x84(r1) +/* 80208930 00205890 90 01 00 80 */ stw r0, 0x80(r1) +/* 80208934 00205894 90 A1 00 88 */ stw r5, 0x88(r1) +/* 80208938 00205898 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8020893C 0020589C C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 80208940 002058A0 C0 43 00 50 */ lfs f2, 0x50(r3) +/* 80208944 002058A4 C0 83 00 40 */ lfs f4, 0x40(r3) +/* 80208948 002058A8 C0 7D 00 40 */ lfs f3, 0x40(r29) +/* 8020894C 002058AC EC 22 08 28 */ fsubs f1, f2, f1 +/* 80208950 002058B0 C0 DD 00 44 */ lfs f6, 0x44(r29) +/* 80208954 002058B4 EC A4 18 28 */ fsubs f5, f4, f3 +/* 80208958 002058B8 C0 83 00 60 */ lfs f4, 0x60(r3) +/* 8020895C 002058BC C0 7D 00 60 */ lfs f3, 0x60(r29) +/* 80208960 002058C0 EC 21 01 B2 */ fmuls f1, f1, f6 +/* 80208964 002058C4 C0 5D 00 34 */ lfs f2, 0x34(r29) +/* 80208968 002058C8 C0 FD 00 54 */ lfs f7, 0x54(r29) +/* 8020896C 002058CC EC 64 18 28 */ fsubs f3, f4, f3 +/* 80208970 002058D0 90 A1 00 58 */ stw r5, 0x58(r1) +/* 80208974 002058D4 EC 25 08 BA */ fmadds f1, f5, f2, f1 +/* 80208978 002058D8 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 8020897C 002058DC EC 23 09 FA */ fmadds f1, f3, f7, f1 +/* 80208980 002058E0 D0 C1 00 3C */ stfs f6, 0x3c(r1) +/* 80208984 002058E4 D0 E1 00 40 */ stfs f7, 0x40(r1) +/* 80208988 002058E8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8020898C 002058EC 40 81 00 0C */ ble lbl_80208998 +/* 80208990 002058F0 39 41 00 38 */ addi r10, r1, 0x38 +/* 80208994 002058F4 48 00 00 20 */ b lbl_802089B4 +lbl_80208998: +/* 80208998 002058F8 FC 40 10 50 */ fneg f2, f2 +/* 8020899C 002058FC 39 41 00 20 */ addi r10, r1, 0x20 +/* 802089A0 00205900 FC 20 30 50 */ fneg f1, f6 +/* 802089A4 00205904 FC 00 38 50 */ fneg f0, f7 +/* 802089A8 00205908 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 802089AC 0020590C D0 21 00 24 */ stfs f1, 0x24(r1) +/* 802089B0 00205910 D0 01 00 28 */ stfs f0, 0x28(r1) +lbl_802089B4: +/* 802089B4 00205914 C0 0A 00 00 */ lfs f0, 0(r10) +/* 802089B8 00205918 7F E3 FB 78 */ mr r3, r31 +/* 802089BC 0020591C 38 81 00 1C */ addi r4, r1, 0x1c +/* 802089C0 00205920 38 A1 00 14 */ addi r5, r1, 0x14 +/* 802089C4 00205924 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 802089C8 00205928 38 C1 00 0C */ addi r6, r1, 0xc +/* 802089CC 0020592C 38 E1 00 90 */ addi r7, r1, 0x90 +/* 802089D0 00205930 39 01 00 78 */ addi r8, r1, 0x78 +/* 802089D4 00205934 C0 0A 00 04 */ lfs f0, 4(r10) +/* 802089D8 00205938 39 21 00 2C */ addi r9, r1, 0x2c +/* 802089DC 0020593C D0 01 00 30 */ stfs f0, 0x30(r1) +/* 802089E0 00205940 C0 0A 00 08 */ lfs f0, 8(r10) +/* 802089E4 00205944 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 802089E8 00205948 A0 1D 00 08 */ lhz r0, 8(r29) +/* 802089EC 0020594C B0 01 00 0C */ sth r0, 0xc(r1) +/* 802089F0 00205950 A1 5E 00 08 */ lhz r10, 8(r30) +/* 802089F4 00205954 B0 01 00 08 */ sth r0, 8(r1) +/* 802089F8 00205958 B1 41 00 14 */ sth r10, 0x14(r1) +/* 802089FC 0020595C A0 1D 00 08 */ lhz r0, 8(r29) +/* 80208A00 00205960 B1 41 00 10 */ sth r10, 0x10(r1) +/* 80208A04 00205964 B0 01 00 18 */ sth r0, 0x18(r1) +/* 80208A08 00205968 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 80208A0C 0020596C 4B E4 16 95 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +lbl_80208A10: +/* 80208A10 00205970 80 01 01 44 */ lwz r0, 0x144(r1) +/* 80208A14 00205974 83 E1 01 3C */ lwz r31, 0x13c(r1) +/* 80208A18 00205978 83 C1 01 38 */ lwz r30, 0x138(r1) +/* 80208A1C 0020597C 83 A1 01 34 */ lwz r29, 0x134(r1) +/* 80208A20 00205980 7C 08 03 A6 */ mtlr r0 +/* 80208A24 00205984 38 21 01 40 */ addi r1, r1, 0x140 +/* 80208A28 00205988 4E 80 00 20 */ blr + +.global __dt__15CFlaahgraPlantsFv +__dt__15CFlaahgraPlantsFv: +/* 80208A2C 0020598C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80208A30 00205990 7C 08 02 A6 */ mflr r0 +/* 80208A34 00205994 90 01 00 14 */ stw r0, 0x14(r1) +/* 80208A38 00205998 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80208A3C 0020599C 7C 9F 23 78 */ mr r31, r4 +/* 80208A40 002059A0 93 C1 00 08 */ stw r30, 8(r1) +/* 80208A44 002059A4 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80208A48 002059A8 41 82 00 70 */ beq lbl_80208AB8 +/* 80208A4C 002059AC 3C 60 80 3E */ lis r3, lbl_803E6FD8@ha +/* 80208A50 002059B0 34 1E 01 10 */ addic. r0, r30, 0x110 +/* 80208A54 002059B4 38 03 6F D8 */ addi r0, r3, lbl_803E6FD8@l +/* 80208A58 002059B8 90 1E 00 00 */ stw r0, 0(r30) +/* 80208A5C 002059BC 41 82 00 0C */ beq lbl_80208A68 +/* 80208A60 002059C0 38 00 00 00 */ li r0, 0 +/* 80208A64 002059C4 98 1E 01 28 */ stb r0, 0x128(r30) +lbl_80208A68: +/* 80208A68 002059C8 34 1E 00 E8 */ addic. r0, r30, 0xe8 +/* 80208A6C 002059CC 41 82 00 30 */ beq lbl_80208A9C +/* 80208A70 002059D0 88 1E 00 E8 */ lbz r0, 0xe8(r30) +/* 80208A74 002059D4 28 00 00 00 */ cmplwi r0, 0 +/* 80208A78 002059D8 41 82 00 24 */ beq lbl_80208A9C +/* 80208A7C 002059DC 80 7E 00 EC */ lwz r3, 0xec(r30) +/* 80208A80 002059E0 28 03 00 00 */ cmplwi r3, 0 +/* 80208A84 002059E4 41 82 00 18 */ beq lbl_80208A9C +/* 80208A88 002059E8 81 83 00 00 */ lwz r12, 0(r3) +/* 80208A8C 002059EC 38 80 00 01 */ li r4, 1 +/* 80208A90 002059F0 81 8C 00 08 */ lwz r12, 8(r12) +/* 80208A94 002059F4 7D 89 03 A6 */ mtctr r12 +/* 80208A98 002059F8 4E 80 04 21 */ bctrl +lbl_80208A9C: +/* 80208A9C 002059FC 7F C3 F3 78 */ mr r3, r30 +/* 80208AA0 00205A00 38 80 00 00 */ li r4, 0 +/* 80208AA4 00205A04 4B E4 CC 4D */ bl __dt__6CActorFv +/* 80208AA8 00205A08 7F E0 07 35 */ extsh. r0, r31 +/* 80208AAC 00205A0C 40 81 00 0C */ ble lbl_80208AB8 +/* 80208AB0 00205A10 7F C3 F3 78 */ mr r3, r30 +/* 80208AB4 00205A14 48 10 CE 7D */ bl Free__7CMemoryFPCv +lbl_80208AB8: +/* 80208AB8 00205A18 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80208ABC 00205A1C 7F C3 F3 78 */ mr r3, r30 +/* 80208AC0 00205A20 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80208AC4 00205A24 83 C1 00 08 */ lwz r30, 8(r1) +/* 80208AC8 00205A28 7C 08 03 A6 */ mtlr r0 +/* 80208ACC 00205A2C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80208AD0 00205A30 4E 80 00 20 */ blr + +.global "__ct__15CFlaahgraPlantsF25TToken<15CGenDescription>9TUniqueId9TUniqueIdRC12CTransform4fRC11CDamageInfoRC9CVector3f" +"__ct__15CFlaahgraPlantsF25TToken<15CGenDescription>9TUniqueId9TUniqueIdRC12CTransform4fRC11CDamageInfoRC9CVector3f": +/* 80208AD4 00205A34 94 21 FE C0 */ stwu r1, -0x140(r1) +/* 80208AD8 00205A38 7C 08 02 A6 */ mflr r0 +/* 80208ADC 00205A3C 3D 60 80 3D */ lis r11, lbl_803D2738@ha +/* 80208AE0 00205A40 90 01 01 44 */ stw r0, 0x144(r1) +/* 80208AE4 00205A44 39 6B 27 38 */ addi r11, r11, lbl_803D2738@l +/* 80208AE8 00205A48 BE E1 01 1C */ stmw r23, 0x11c(r1) +/* 80208AEC 00205A4C 7C 78 1B 78 */ mr r24, r3 +/* 80208AF0 00205A50 7C 99 23 78 */ mr r25, r4 +/* 80208AF4 00205A54 7C BA 2B 78 */ mr r26, r5 +/* 80208AF8 00205A58 7C DB 33 78 */ mr r27, r6 +/* 80208AFC 00205A5C 83 E1 01 48 */ lwz r31, 0x148(r1) +/* 80208B00 00205A60 7C F7 3B 78 */ mr r23, r7 +/* 80208B04 00205A64 7D 1C 43 78 */ mr r28, r8 +/* 80208B08 00205A68 7D 3D 4B 78 */ mr r29, r9 +/* 80208B0C 00205A6C 7D 5E 53 78 */ mr r30, r10 +/* 80208B10 00205A70 38 61 00 54 */ addi r3, r1, 0x54 +/* 80208B14 00205A74 38 8B 00 07 */ addi r4, r11, 7 +/* 80208B18 00205A78 38 C1 00 10 */ addi r6, r1, 0x10 +/* 80208B1C 00205A7C 38 A0 FF FF */ li r5, -1 +/* 80208B20 00205A80 48 13 56 75 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator" +/* 80208B24 00205A84 80 8D A3 88 */ lwz r4, lbl_805A8F48@sda21(r13) +/* 80208B28 00205A88 3C 60 80 57 */ lis r3, lbl_8056D410@ha +/* 80208B2C 00205A8C 80 17 00 00 */ lwz r0, 0(r23) +/* 80208B30 00205A90 38 A3 D4 10 */ addi r5, r3, lbl_8056D410@l +/* 80208B34 00205A94 90 81 00 2C */ stw r4, 0x2c(r1) +/* 80208B38 00205A98 38 61 00 7C */ addi r3, r1, 0x7c +/* 80208B3C 00205A9C 38 81 00 30 */ addi r4, r1, 0x30 +/* 80208B40 00205AA0 38 C1 00 2C */ addi r6, r1, 0x2c +/* 80208B44 00205AA4 90 01 00 30 */ stw r0, 0x30(r1) +/* 80208B48 00205AA8 4B E4 89 3D */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" +/* 80208B4C 00205AAC 38 61 00 C4 */ addi r3, r1, 0xc4 +/* 80208B50 00205AB0 4B E3 1C 55 */ bl CModelDataNull__10CModelDataFv +/* 80208B54 00205AB4 A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 80208B58 00205AB8 38 00 00 00 */ li r0, 0 +/* 80208B5C 00205ABC 80 AD 93 A8 */ lwz r5, lbl_805A7F68@sda21(r13) +/* 80208B60 00205AC0 38 60 00 00 */ li r3, 0 +/* 80208B64 00205AC4 B0 81 00 14 */ sth r4, 0x14(r1) +/* 80208B68 00205AC8 38 80 00 01 */ li r4, 1 +/* 80208B6C 00205ACC 90 01 00 44 */ stw r0, 0x44(r1) +/* 80208B70 00205AD0 90 01 00 40 */ stw r0, 0x40(r1) +/* 80208B74 00205AD4 48 18 13 81 */ bl __shl2i +/* 80208B78 00205AD8 80 A1 00 40 */ lwz r5, 0x40(r1) +/* 80208B7C 00205ADC 38 01 00 14 */ addi r0, r1, 0x14 +/* 80208B80 00205AE0 80 C1 00 44 */ lwz r6, 0x44(r1) +/* 80208B84 00205AE4 7F A8 EB 78 */ mr r8, r29 +/* 80208B88 00205AE8 7C A3 1B 78 */ or r3, r5, r3 +/* 80208B8C 00205AEC A0 BB 00 00 */ lhz r5, 0(r27) +/* 80208B90 00205AF0 7C C6 23 78 */ or r6, r6, r4 +/* 80208B94 00205AF4 90 61 00 40 */ stw r3, 0x40(r1) +/* 80208B98 00205AF8 7F 03 C3 78 */ mr r3, r24 +/* 80208B9C 00205AFC 38 81 00 18 */ addi r4, r1, 0x18 +/* 80208BA0 00205B00 90 C1 00 44 */ stw r6, 0x44(r1) +/* 80208BA4 00205B04 38 C1 00 54 */ addi r6, r1, 0x54 +/* 80208BA8 00205B08 38 E1 00 7C */ addi r7, r1, 0x7c +/* 80208BAC 00205B0C 39 21 00 C4 */ addi r9, r1, 0xc4 +/* 80208BB0 00205B10 B0 A1 00 18 */ sth r5, 0x18(r1) +/* 80208BB4 00205B14 39 41 00 40 */ addi r10, r1, 0x40 +/* 80208BB8 00205B18 38 A0 00 01 */ li r5, 1 +/* 80208BBC 00205B1C 93 41 00 08 */ stw r26, 8(r1) +/* 80208BC0 00205B20 90 01 00 0C */ stw r0, 0xc(r1) +/* 80208BC4 00205B24 4B E4 CC 5D */ bl "__ct__6CActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC16CActorParameters9TUniqueId" +/* 80208BC8 00205B28 38 61 00 C4 */ addi r3, r1, 0xc4 +/* 80208BCC 00205B2C 38 80 FF FF */ li r4, -1 +/* 80208BD0 00205B30 4B F0 DE 7D */ bl __dt__10CModelDataFv +/* 80208BD4 00205B34 80 01 00 84 */ lwz r0, 0x84(r1) +/* 80208BD8 00205B38 80 61 00 8C */ lwz r3, 0x8c(r1) +/* 80208BDC 00205B3C 1C 00 00 0C */ mulli r0, r0, 0xc +/* 80208BE0 00205B40 90 61 00 20 */ stw r3, 0x20(r1) +/* 80208BE4 00205B44 7C 64 1B 78 */ mr r4, r3 +/* 80208BE8 00205B48 7C 03 02 14 */ add r0, r3, r0 +/* 80208BEC 00205B4C 90 61 00 1C */ stw r3, 0x1c(r1) +/* 80208BF0 00205B50 90 01 00 28 */ stw r0, 0x28(r1) +/* 80208BF4 00205B54 90 01 00 24 */ stw r0, 0x24(r1) +/* 80208BF8 00205B58 48 00 00 08 */ b lbl_80208C00 +lbl_80208BFC: +/* 80208BFC 00205B5C 38 84 00 0C */ addi r4, r4, 0xc +lbl_80208C00: +/* 80208C00 00205B60 7C 04 00 40 */ cmplw r4, r0 +/* 80208C04 00205B64 40 82 FF F8 */ bne lbl_80208BFC +/* 80208C08 00205B68 28 03 00 00 */ cmplwi r3, 0 +/* 80208C0C 00205B6C 41 82 00 08 */ beq lbl_80208C14 +/* 80208C10 00205B70 48 10 CD 21 */ bl Free__7CMemoryFPCv +lbl_80208C14: +/* 80208C14 00205B74 38 61 00 54 */ addi r3, r1, 0x54 +/* 80208C18 00205B78 48 13 4E C9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80208C1C 00205B7C 3C 80 80 3E */ lis r4, lbl_803E6FD8@ha +/* 80208C20 00205B80 3C 60 80 3D */ lis r3, lbl_803D2738@ha +/* 80208C24 00205B84 38 04 6F D8 */ addi r0, r4, lbl_803E6FD8@l +/* 80208C28 00205B88 3A E0 00 00 */ li r23, 0 +/* 80208C2C 00205B8C 90 18 00 00 */ stw r0, 0(r24) +/* 80208C30 00205B90 38 83 27 38 */ addi r4, r3, lbl_803D2738@l +/* 80208C34 00205B94 38 60 03 40 */ li r3, 0x340 +/* 80208C38 00205B98 38 A0 00 00 */ li r5, 0 +/* 80208C3C 00205B9C 48 10 CC 31 */ bl __nw__FUlPCcPCc +/* 80208C40 00205BA0 7C 7A 1B 79 */ or. r26, r3, r3 +/* 80208C44 00205BA4 41 82 00 2C */ beq lbl_80208C70 +/* 80208C48 00205BA8 7F 24 CB 78 */ mr r4, r25 +/* 80208C4C 00205BAC 38 61 00 34 */ addi r3, r1, 0x34 +/* 80208C50 00205BB0 48 13 82 59 */ bl __ct__6CTokenFRC6CToken +/* 80208C54 00205BB4 7F 43 D3 78 */ mr r3, r26 +/* 80208C58 00205BB8 38 81 00 34 */ addi r4, r1, 0x34 +/* 80208C5C 00205BBC 3A E0 00 01 */ li r23, 1 +/* 80208C60 00205BC0 38 A0 00 00 */ li r5, 0 +/* 80208C64 00205BC4 38 C0 00 01 */ li r6, 1 +/* 80208C68 00205BC8 48 11 67 79 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 80208C6C 00205BCC 7C 7A 1B 78 */ mr r26, r3 +lbl_80208C70: +/* 80208C70 00205BD0 7C 7A 00 D0 */ neg r3, r26 +/* 80208C74 00205BD4 7E E0 07 75 */ extsb. r0, r23 +/* 80208C78 00205BD8 7C 60 D3 78 */ or r0, r3, r26 +/* 80208C7C 00205BDC 54 00 0F FE */ srwi r0, r0, 0x1f +/* 80208C80 00205BE0 98 18 00 E8 */ stb r0, 0xe8(r24) +/* 80208C84 00205BE4 93 58 00 EC */ stw r26, 0xec(r24) +/* 80208C88 00205BE8 41 82 00 10 */ beq lbl_80208C98 +/* 80208C8C 00205BEC 38 61 00 34 */ addi r3, r1, 0x34 +/* 80208C90 00205BF0 38 80 00 00 */ li r4, 0 +/* 80208C94 00205BF4 48 13 81 AD */ bl __dt__6CTokenFv +lbl_80208C98: +/* 80208C98 00205BF8 A0 7C 00 00 */ lhz r3, 0(r28) +/* 80208C9C 00205BFC 38 00 00 00 */ li r0, 0 +/* 80208CA0 00205C00 C0 02 B1 18 */ lfs f0, lbl_805ACE38@sda21(r2) +/* 80208CA4 00205C04 7F A4 EB 78 */ mr r4, r29 +/* 80208CA8 00205C08 B0 78 00 F0 */ sth r3, 0xf0(r24) +/* 80208CAC 00205C0C 7F E5 FB 78 */ mr r5, r31 +/* 80208CB0 00205C10 38 78 01 30 */ addi r3, r24, 0x130 +/* 80208CB4 00205C14 80 DE 00 00 */ lwz r6, 0(r30) +/* 80208CB8 00205C18 90 D8 00 F4 */ stw r6, 0xf4(r24) +/* 80208CBC 00205C1C 88 DE 00 04 */ lbz r6, 4(r30) +/* 80208CC0 00205C20 98 D8 00 F8 */ stb r6, 0xf8(r24) +/* 80208CC4 00205C24 C0 3E 00 08 */ lfs f1, 8(r30) +/* 80208CC8 00205C28 D0 38 00 FC */ stfs f1, 0xfc(r24) +/* 80208CCC 00205C2C C0 3E 00 0C */ lfs f1, 0xc(r30) +/* 80208CD0 00205C30 D0 38 01 00 */ stfs f1, 0x100(r24) +/* 80208CD4 00205C34 C0 3E 00 10 */ lfs f1, 0x10(r30) +/* 80208CD8 00205C38 D0 38 01 04 */ stfs f1, 0x104(r24) +/* 80208CDC 00205C3C C0 3E 00 14 */ lfs f1, 0x14(r30) +/* 80208CE0 00205C40 D0 38 01 08 */ stfs f1, 0x108(r24) +/* 80208CE4 00205C44 88 DE 00 18 */ lbz r6, 0x18(r30) +/* 80208CE8 00205C48 98 D8 01 0C */ stb r6, 0x10c(r24) +/* 80208CEC 00205C4C 98 18 01 28 */ stb r0, 0x128(r24) +/* 80208CF0 00205C50 D0 18 01 2C */ stfs f0, 0x12c(r24) +/* 80208CF4 00205C54 48 0C D2 A1 */ bl __ct__6COBBoxFRC12CTransform4fRC9CVector3f +/* 80208CF8 00205C58 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80208CFC 00205C5C 7F A4 EB 78 */ mr r4, r29 +/* 80208D00 00205C60 38 61 00 94 */ addi r3, r1, 0x94 +/* 80208D04 00205C64 B0 18 01 6C */ sth r0, 0x16c(r24) +/* 80208D08 00205C68 83 38 00 EC */ lwz r25, 0xec(r24) +/* 80208D0C 00205C6C 48 10 9F 35 */ bl GetRotation__12CTransform4fCFv +/* 80208D10 00205C70 7F 23 CB 78 */ mr r3, r25 +/* 80208D14 00205C74 38 81 00 94 */ addi r4, r1, 0x94 +/* 80208D18 00205C78 81 99 00 00 */ lwz r12, 0(r25) +/* 80208D1C 00205C7C 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 80208D20 00205C80 7D 89 03 A6 */ mtctr r12 +/* 80208D24 00205C84 4E 80 04 21 */ bctrl +/* 80208D28 00205C88 C0 5D 00 2C */ lfs f2, 0x2c(r29) +/* 80208D2C 00205C8C 38 81 00 48 */ addi r4, r1, 0x48 +/* 80208D30 00205C90 C0 3D 00 1C */ lfs f1, 0x1c(r29) +/* 80208D34 00205C94 C0 1D 00 0C */ lfs f0, 0xc(r29) +/* 80208D38 00205C98 D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 80208D3C 00205C9C D0 01 00 48 */ stfs f0, 0x48(r1) +/* 80208D40 00205CA0 D0 41 00 50 */ stfs f2, 0x50(r1) +/* 80208D44 00205CA4 80 78 00 EC */ lwz r3, 0xec(r24) +/* 80208D48 00205CA8 81 83 00 00 */ lwz r12, 0(r3) +/* 80208D4C 00205CAC 81 8C 00 18 */ lwz r12, 0x18(r12) +/* 80208D50 00205CB0 7D 89 03 A6 */ mtctr r12 +/* 80208D54 00205CB4 4E 80 04 21 */ bctrl +/* 80208D58 00205CB8 80 98 00 EC */ lwz r4, 0xec(r24) +/* 80208D5C 00205CBC 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 80208D60 00205CC0 38 A3 66 70 */ addi r5, r3, skIdentity4f@l +/* 80208D64 00205CC4 38 60 00 01 */ li r3, 1 +/* 80208D68 00205CC8 88 04 02 6D */ lbz r0, 0x26d(r4) +/* 80208D6C 00205CCC 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 80208D70 00205CD0 98 04 02 6D */ stb r0, 0x26d(r4) +/* 80208D74 00205CD4 38 61 00 64 */ addi r3, r1, 0x64 +/* 80208D78 00205CD8 38 98 01 30 */ addi r4, r24, 0x130 +/* 80208D7C 00205CDC 48 0C D0 5D */ bl CalculateAABox__6COBBoxCFRC12CTransform4f +/* 80208D80 00205CE0 88 18 01 28 */ lbz r0, 0x128(r24) +/* 80208D84 00205CE4 28 00 00 00 */ cmplwi r0, 0 +/* 80208D88 00205CE8 40 82 00 48 */ bne lbl_80208DD0 +/* 80208D8C 00205CEC 34 78 01 10 */ addic. r3, r24, 0x110 +/* 80208D90 00205CF0 41 82 00 34 */ beq lbl_80208DC4 +/* 80208D94 00205CF4 C0 01 00 64 */ lfs f0, 0x64(r1) +/* 80208D98 00205CF8 D0 03 00 00 */ stfs f0, 0(r3) +/* 80208D9C 00205CFC C0 01 00 68 */ lfs f0, 0x68(r1) +/* 80208DA0 00205D00 D0 03 00 04 */ stfs f0, 4(r3) +/* 80208DA4 00205D04 C0 01 00 6C */ lfs f0, 0x6c(r1) +/* 80208DA8 00205D08 D0 03 00 08 */ stfs f0, 8(r3) +/* 80208DAC 00205D0C C0 01 00 70 */ lfs f0, 0x70(r1) +/* 80208DB0 00205D10 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 80208DB4 00205D14 C0 01 00 74 */ lfs f0, 0x74(r1) +/* 80208DB8 00205D18 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 80208DBC 00205D1C C0 01 00 78 */ lfs f0, 0x78(r1) +/* 80208DC0 00205D20 D0 03 00 14 */ stfs f0, 0x14(r3) +lbl_80208DC4: +/* 80208DC4 00205D24 38 00 00 01 */ li r0, 1 +/* 80208DC8 00205D28 98 18 01 28 */ stb r0, 0x128(r24) +/* 80208DCC 00205D2C 48 00 00 34 */ b lbl_80208E00 +lbl_80208DD0: +/* 80208DD0 00205D30 80 61 00 64 */ lwz r3, 0x64(r1) +/* 80208DD4 00205D34 80 01 00 68 */ lwz r0, 0x68(r1) +/* 80208DD8 00205D38 90 78 01 10 */ stw r3, 0x110(r24) +/* 80208DDC 00205D3C 90 18 01 14 */ stw r0, 0x114(r24) +/* 80208DE0 00205D40 80 01 00 6C */ lwz r0, 0x6c(r1) +/* 80208DE4 00205D44 90 18 01 18 */ stw r0, 0x118(r24) +/* 80208DE8 00205D48 80 61 00 70 */ lwz r3, 0x70(r1) +/* 80208DEC 00205D4C 80 01 00 74 */ lwz r0, 0x74(r1) +/* 80208DF0 00205D50 90 78 01 1C */ stw r3, 0x11c(r24) +/* 80208DF4 00205D54 90 18 01 20 */ stw r0, 0x120(r24) +/* 80208DF8 00205D58 80 01 00 78 */ lwz r0, 0x78(r1) +/* 80208DFC 00205D5C 90 18 01 24 */ stw r0, 0x124(r24) +lbl_80208E00: +/* 80208E00 00205D60 7F 03 C3 78 */ mr r3, r24 +/* 80208E04 00205D64 BA E1 01 1C */ lmw r23, 0x11c(r1) +/* 80208E08 00205D68 80 01 01 44 */ lwz r0, 0x144(r1) +/* 80208E0C 00205D6C 7C 08 03 A6 */ mtlr r0 +/* 80208E10 00205D70 38 21 01 40 */ addi r1, r1, 0x140 +/* 80208E14 00205D74 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Enemies/CFlaahgraTentacle.s b/asm/Kyoto_CWD/Enemies/CFlaahgraTentacle.s new file mode 100644 index 00000000..665fedec --- /dev/null +++ b/asm/Kyoto_CWD/Enemies/CFlaahgraTentacle.s @@ -0,0 +1,1155 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global SaveBombSlotInfo__17CFlaahgraTentacleFR13CStateManager +SaveBombSlotInfo__17CFlaahgraTentacleFR13CStateManager: +/* 801F0068 001ECFC8 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801F006C 001ECFCC 7C 08 02 A6 */ mflr r0 +/* 801F0070 001ECFD0 90 01 00 34 */ stw r0, 0x34(r1) +/* 801F0074 001ECFD4 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801F0078 001ECFD8 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801F007C 001ECFDC 7C 9E 23 78 */ mr r30, r4 +/* 801F0080 001ECFE0 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801F0084 001ECFE4 7C 7D 1B 78 */ mr r29, r3 +/* 801F0088 001ECFE8 83 E3 00 2C */ lwz r31, 0x2c(r3) +/* 801F008C 001ECFEC 48 00 00 8C */ b lbl_801F0118 +lbl_801F0090: +/* 801F0090 001ECFF0 80 1F 00 00 */ lwz r0, 0(r31) +/* 801F0094 001ECFF4 2C 00 00 19 */ cmpwi r0, 0x19 +/* 801F0098 001ECFF8 40 82 00 7C */ bne lbl_801F0114 +/* 801F009C 001ECFFC 80 1F 00 04 */ lwz r0, 4(r31) +/* 801F00A0 001ED000 2C 00 00 11 */ cmpwi r0, 0x11 +/* 801F00A4 001ED004 40 82 00 70 */ bne lbl_801F0114 +/* 801F00A8 001ED008 80 1F 00 08 */ lwz r0, 8(r31) +/* 801F00AC 001ED00C 7F C4 F3 78 */ mr r4, r30 +/* 801F00B0 001ED010 38 61 00 0C */ addi r3, r1, 0xc +/* 801F00B4 001ED014 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801F00B8 001ED018 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F00BC 001ED01C 4B E5 7E 61 */ bl GetIdForScript__13CStateManagerCF9TEditorId +/* 801F00C0 001ED020 A0 01 00 0C */ lhz r0, 0xc(r1) +/* 801F00C4 001ED024 7F C3 F3 78 */ mr r3, r30 +/* 801F00C8 001ED028 38 81 00 08 */ addi r4, r1, 8 +/* 801F00CC 001ED02C B0 01 00 10 */ sth r0, 0x10(r1) +/* 801F00D0 001ED030 B0 01 00 08 */ sth r0, 8(r1) +/* 801F00D4 001ED034 4B E5 C4 D1 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801F00D8 001ED038 7C 64 1B 78 */ mr r4, r3 +/* 801F00DC 001ED03C 38 61 00 18 */ addi r3, r1, 0x18 +/* 801F00E0 001ED040 4B EB 6E 09 */ bl "__ct__28TCastToPtr<14CScriptTrigger>FP7CEntity" +/* 801F00E4 001ED044 80 63 00 04 */ lwz r3, 4(r3) +/* 801F00E8 001ED048 28 03 00 00 */ cmplwi r3, 0 +/* 801F00EC 001ED04C 41 82 00 28 */ beq lbl_801F0114 +/* 801F00F0 001ED050 A0 01 00 10 */ lhz r0, 0x10(r1) +/* 801F00F4 001ED054 B0 1D 05 8C */ sth r0, 0x58c(r29) +/* 801F00F8 001ED058 C0 03 01 1C */ lfs f0, 0x11c(r3) +/* 801F00FC 001ED05C D0 1D 05 80 */ stfs f0, 0x580(r29) +/* 801F0100 001ED060 C0 03 01 20 */ lfs f0, 0x120(r3) +/* 801F0104 001ED064 D0 1D 05 84 */ stfs f0, 0x584(r29) +/* 801F0108 001ED068 C0 03 01 24 */ lfs f0, 0x124(r3) +/* 801F010C 001ED06C D0 1D 05 88 */ stfs f0, 0x588(r29) +/* 801F0110 001ED070 48 00 00 20 */ b lbl_801F0130 +lbl_801F0114: +/* 801F0114 001ED074 3B FF 00 0C */ addi r31, r31, 0xc +lbl_801F0118: +/* 801F0118 001ED078 80 1D 00 24 */ lwz r0, 0x24(r29) +/* 801F011C 001ED07C 80 7D 00 2C */ lwz r3, 0x2c(r29) +/* 801F0120 001ED080 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801F0124 001ED084 7C 03 02 14 */ add r0, r3, r0 +/* 801F0128 001ED088 7C 1F 00 40 */ cmplw r31, r0 +/* 801F012C 001ED08C 40 82 FF 64 */ bne lbl_801F0090 +lbl_801F0130: +/* 801F0130 001ED090 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801F0134 001ED094 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801F0138 001ED098 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801F013C 001ED09C 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801F0140 001ED0A0 7C 08 03 A6 */ mtlr r0 +/* 801F0144 001ED0A4 38 21 00 30 */ addi r1, r1, 0x30 +/* 801F0148 001ED0A8 4E 80 00 20 */ blr + +.global RetractTentacle__17CFlaahgraTentacleFR13CStateManager +RetractTentacle__17CFlaahgraTentacleFR13CStateManager: +/* 801F014C 001ED0AC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801F0150 001ED0B0 7C 08 02 A6 */ mflr r0 +/* 801F0154 001ED0B4 90 01 00 24 */ stw r0, 0x24(r1) +/* 801F0158 001ED0B8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801F015C 001ED0BC 7C 9F 23 78 */ mr r31, r4 +/* 801F0160 001ED0C0 38 80 00 00 */ li r4, 0 +/* 801F0164 001ED0C4 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801F0168 001ED0C8 7C 7E 1B 78 */ mr r30, r3 +/* 801F016C 001ED0CC 80 63 04 50 */ lwz r3, 0x450(r3) +/* 801F0170 001ED0D0 4B F4 A8 69 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 801F0174 001ED0D4 A0 1E 05 8C */ lhz r0, 0x58c(r30) +/* 801F0178 001ED0D8 7F E3 FB 78 */ mr r3, r31 +/* 801F017C 001ED0DC 38 81 00 08 */ addi r4, r1, 8 +/* 801F0180 001ED0E0 B0 01 00 08 */ sth r0, 8(r1) +/* 801F0184 001ED0E4 4B E5 C3 F1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801F0188 001ED0E8 7C 64 1B 78 */ mr r4, r3 +/* 801F018C 001ED0EC 38 61 00 0C */ addi r3, r1, 0xc +/* 801F0190 001ED0F0 4B EB 6D 59 */ bl "__ct__28TCastToPtr<14CScriptTrigger>FP7CEntity" +/* 801F0194 001ED0F4 83 E3 00 04 */ lwz r31, 4(r3) +/* 801F0198 001ED0F8 28 1F 00 00 */ cmplwi r31, 0 +/* 801F019C 001ED0FC 41 82 00 28 */ beq lbl_801F01C4 +/* 801F01A0 001ED100 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801F01A4 001ED104 C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) +/* 801F01A8 001ED108 D0 1F 01 1C */ stfs f0, 0x11c(r31) +/* 801F01AC 001ED10C C0 03 00 04 */ lfs f0, 4(r3) +/* 801F01B0 001ED110 D0 1F 01 20 */ stfs f0, 0x120(r31) +/* 801F01B4 001ED114 C0 03 00 08 */ lfs f0, 8(r3) +/* 801F01B8 001ED118 D0 1F 01 24 */ stfs f0, 0x124(r31) +/* 801F01BC 001ED11C 48 12 46 FD */ bl Magnitude__9CVector3fCFv +/* 801F01C0 001ED120 D0 3F 01 28 */ stfs f1, 0x128(r31) +lbl_801F01C4: +/* 801F01C4 001ED124 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801F01C8 001ED128 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801F01CC 001ED12C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801F01D0 001ED130 7C 08 03 A6 */ mtlr r0 +/* 801F01D4 001ED134 38 21 00 20 */ addi r1, r1, 0x20 +/* 801F01D8 001ED138 4E 80 00 20 */ blr + +.global ExtractTentacle__17CFlaahgraTentacleFR13CStateManager +ExtractTentacle__17CFlaahgraTentacleFR13CStateManager: +/* 801F01DC 001ED13C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801F01E0 001ED140 7C 08 02 A6 */ mflr r0 +/* 801F01E4 001ED144 C0 22 AE B4 */ lfs f1, lbl_805ACBD4@sda21(r2) +/* 801F01E8 001ED148 90 01 00 24 */ stw r0, 0x24(r1) +/* 801F01EC 001ED14C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801F01F0 001ED150 7C 9F 23 78 */ mr r31, r4 +/* 801F01F4 001ED154 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801F01F8 001ED158 7C 7E 1B 78 */ mr r30, r3 +/* 801F01FC 001ED15C 81 83 00 00 */ lwz r12, 0(r3) +/* 801F0200 001ED160 81 8C 02 30 */ lwz r12, 0x230(r12) +/* 801F0204 001ED164 7D 89 03 A6 */ mtctr r12 +/* 801F0208 001ED168 4E 80 04 21 */ bctrl +/* 801F020C 001ED16C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801F0210 001ED170 41 82 00 64 */ beq lbl_801F0274 +/* 801F0214 001ED174 88 1E 05 8E */ lbz r0, 0x58e(r30) +/* 801F0218 001ED178 38 60 00 01 */ li r3, 1 +/* 801F021C 001ED17C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801F0220 001ED180 7F E3 FB 78 */ mr r3, r31 +/* 801F0224 001ED184 98 1E 05 8E */ stb r0, 0x58e(r30) +/* 801F0228 001ED188 38 81 00 08 */ addi r4, r1, 8 +/* 801F022C 001ED18C A0 1E 05 8C */ lhz r0, 0x58c(r30) +/* 801F0230 001ED190 B0 01 00 08 */ sth r0, 8(r1) +/* 801F0234 001ED194 4B E5 C3 41 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801F0238 001ED198 7C 64 1B 78 */ mr r4, r3 +/* 801F023C 001ED19C 38 61 00 0C */ addi r3, r1, 0xc +/* 801F0240 001ED1A0 4B EB 6C A9 */ bl "__ct__28TCastToPtr<14CScriptTrigger>FP7CEntity" +/* 801F0244 001ED1A4 83 E3 00 04 */ lwz r31, 4(r3) +/* 801F0248 001ED1A8 28 1F 00 00 */ cmplwi r31, 0 +/* 801F024C 001ED1AC 41 82 00 28 */ beq lbl_801F0274 +/* 801F0250 001ED1B0 C0 1E 05 80 */ lfs f0, 0x580(r30) +/* 801F0254 001ED1B4 38 7E 05 80 */ addi r3, r30, 0x580 +/* 801F0258 001ED1B8 D0 1F 01 1C */ stfs f0, 0x11c(r31) +/* 801F025C 001ED1BC C0 1E 05 84 */ lfs f0, 0x584(r30) +/* 801F0260 001ED1C0 D0 1F 01 20 */ stfs f0, 0x120(r31) +/* 801F0264 001ED1C4 C0 1E 05 88 */ lfs f0, 0x588(r30) +/* 801F0268 001ED1C8 D0 1F 01 24 */ stfs f0, 0x124(r31) +/* 801F026C 001ED1CC 48 12 46 4D */ bl Magnitude__9CVector3fCFv +/* 801F0270 001ED1D0 D0 3F 01 28 */ stfs f1, 0x128(r31) +lbl_801F0274: +/* 801F0274 001ED1D4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801F0278 001ED1D8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801F027C 001ED1DC 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801F0280 001ED1E0 7C 08 03 A6 */ mtlr r0 +/* 801F0284 001ED1E4 38 21 00 20 */ addi r1, r1, 0x20 +/* 801F0288 001ED1E8 4E 80 00 20 */ blr + +.global "AddSphereCollisionList__17CFlaahgraTentacleFPCQ217CFlaahgraTentacle16SSphereJointInfoiRQ24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>" +"AddSphereCollisionList__17CFlaahgraTentacleFPCQ217CFlaahgraTentacle16SSphereJointInfoiRQ24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>": +/* 801F028C 001ED1EC 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 801F0290 001ED1F0 7C 08 02 A6 */ mflr r0 +/* 801F0294 001ED1F4 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 801F0298 001ED1F8 BF 21 00 C4 */ stmw r25, 0xc4(r1) +/* 801F029C 001ED1FC 7C B9 2B 78 */ mr r25, r5 +/* 801F02A0 001ED200 7C DA 33 78 */ mr r26, r6 +/* 801F02A4 001ED204 7C 9E 23 78 */ mr r30, r4 +/* 801F02A8 001ED208 3B A1 00 60 */ addi r29, r1, 0x60 +/* 801F02AC 001ED20C 3B 81 00 A4 */ addi r28, r1, 0xa4 +/* 801F02B0 001ED210 3B 60 00 00 */ li r27, 0 +/* 801F02B4 001ED214 80 63 00 64 */ lwz r3, 0x64(r3) +/* 801F02B8 001ED218 83 E3 00 10 */ lwz r31, 0x10(r3) +/* 801F02BC 001ED21C 48 00 01 20 */ b lbl_801F03DC +lbl_801F02C0: +/* 801F02C0 001ED220 80 9E 00 00 */ lwz r4, 0(r30) +/* 801F02C4 001ED224 38 61 00 24 */ addi r3, r1, 0x24 +/* 801F02C8 001ED228 4B E1 49 F1 */ bl string_l__4rstlFPCc +/* 801F02CC 001ED22C 7F E4 FB 78 */ mr r4, r31 +/* 801F02D0 001ED230 38 61 00 0C */ addi r3, r1, 0xc +/* 801F02D4 001ED234 38 A1 00 24 */ addi r5, r1, 0x24 +/* 801F02D8 001ED238 4B E3 E5 61 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801F02DC 001ED23C 88 01 00 0C */ lbz r0, 0xc(r1) +/* 801F02E0 001ED240 38 61 00 24 */ addi r3, r1, 0x24 +/* 801F02E4 001ED244 98 01 00 10 */ stb r0, 0x10(r1) +/* 801F02E8 001ED248 48 14 D7 F9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801F02EC 001ED24C 88 01 00 10 */ lbz r0, 0x10(r1) +/* 801F02F0 001ED250 28 00 00 FF */ cmplwi r0, 0xff +/* 801F02F4 001ED254 41 82 00 E0 */ beq lbl_801F03D4 +/* 801F02F8 001ED258 80 9E 00 00 */ lwz r4, 0(r30) +/* 801F02FC 001ED25C 38 61 00 14 */ addi r3, r1, 0x14 +/* 801F0300 001ED260 4B E1 49 B9 */ bl string_l__4rstlFPCc +/* 801F0304 001ED264 88 01 00 10 */ lbz r0, 0x10(r1) +/* 801F0308 001ED268 38 61 00 34 */ addi r3, r1, 0x34 +/* 801F030C 001ED26C C0 3E 00 04 */ lfs f1, 4(r30) +/* 801F0310 001ED270 38 81 00 08 */ addi r4, r1, 8 +/* 801F0314 001ED274 98 01 00 08 */ stb r0, 8(r1) +/* 801F0318 001ED278 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801F031C 001ED27C C0 42 AE B8 */ lfs f2, lbl_805ACBD8@sda21(r2) +/* 801F0320 001ED280 4B FB 84 ED */ bl "SphereCollision__26CJointCollisionDescriptionF6CSegIdfRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" +/* 801F0324 001ED284 80 E1 00 34 */ lwz r7, 0x34(r1) +/* 801F0328 001ED288 7F 83 E3 78 */ mr r3, r28 +/* 801F032C 001ED28C 80 C1 00 38 */ lwz r6, 0x38(r1) +/* 801F0330 001ED290 7F A4 EB 78 */ mr r4, r29 +/* 801F0334 001ED294 88 A1 00 3C */ lbz r5, 0x3c(r1) +/* 801F0338 001ED298 88 01 00 3D */ lbz r0, 0x3d(r1) +/* 801F033C 001ED29C C0 E1 00 40 */ lfs f7, 0x40(r1) +/* 801F0340 001ED2A0 C0 C1 00 44 */ lfs f6, 0x44(r1) +/* 801F0344 001ED2A4 C0 A1 00 48 */ lfs f5, 0x48(r1) +/* 801F0348 001ED2A8 C0 81 00 4C */ lfs f4, 0x4c(r1) +/* 801F034C 001ED2AC C0 61 00 50 */ lfs f3, 0x50(r1) +/* 801F0350 001ED2B0 C0 41 00 54 */ lfs f2, 0x54(r1) +/* 801F0354 001ED2B4 C0 21 00 58 */ lfs f1, 0x58(r1) +/* 801F0358 001ED2B8 C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 801F035C 001ED2BC 90 E1 00 78 */ stw r7, 0x78(r1) +/* 801F0360 001ED2C0 90 C1 00 7C */ stw r6, 0x7c(r1) +/* 801F0364 001ED2C4 98 A1 00 80 */ stb r5, 0x80(r1) +/* 801F0368 001ED2C8 98 01 00 81 */ stb r0, 0x81(r1) +/* 801F036C 001ED2CC D0 E1 00 84 */ stfs f7, 0x84(r1) +/* 801F0370 001ED2D0 D0 C1 00 88 */ stfs f6, 0x88(r1) +/* 801F0374 001ED2D4 D0 A1 00 8C */ stfs f5, 0x8c(r1) +/* 801F0378 001ED2D8 D0 81 00 90 */ stfs f4, 0x90(r1) +/* 801F037C 001ED2DC D0 61 00 94 */ stfs f3, 0x94(r1) +/* 801F0380 001ED2E0 D0 41 00 98 */ stfs f2, 0x98(r1) +/* 801F0384 001ED2E4 D0 21 00 9C */ stfs f1, 0x9c(r1) +/* 801F0388 001ED2E8 D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 801F038C 001ED2EC 48 14 DD D5 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801F0390 001ED2F0 A0 01 00 70 */ lhz r0, 0x70(r1) +/* 801F0394 001ED2F4 28 1D 00 00 */ cmplwi r29, 0 +/* 801F0398 001ED2F8 C0 01 00 74 */ lfs f0, 0x74(r1) +/* 801F039C 001ED2FC B0 01 00 B4 */ sth r0, 0xb4(r1) +/* 801F03A0 001ED300 D0 01 00 B8 */ stfs f0, 0xb8(r1) +/* 801F03A4 001ED304 41 82 00 0C */ beq lbl_801F03B0 +/* 801F03A8 001ED308 7F A3 EB 78 */ mr r3, r29 +/* 801F03AC 001ED30C 48 14 D7 35 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801F03B0: +/* 801F03B0 001ED310 38 61 00 14 */ addi r3, r1, 0x14 +/* 801F03B4 001ED314 48 14 D7 2D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801F03B8 001ED318 7F 43 D3 78 */ mr r3, r26 +/* 801F03BC 001ED31C 38 81 00 78 */ addi r4, r1, 0x78 +/* 801F03C0 001ED320 4B F6 5E 71 */ bl sub_80156230 +/* 801F03C4 001ED324 28 1C 00 00 */ cmplwi r28, 0 +/* 801F03C8 001ED328 41 82 00 0C */ beq lbl_801F03D4 +/* 801F03CC 001ED32C 7F 83 E3 78 */ mr r3, r28 +/* 801F03D0 001ED330 48 14 D7 11 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801F03D4: +/* 801F03D4 001ED334 3B DE 00 08 */ addi r30, r30, 8 +/* 801F03D8 001ED338 3B 7B 00 01 */ addi r27, r27, 1 +lbl_801F03DC: +/* 801F03DC 001ED33C 7C 1B C8 00 */ cmpw r27, r25 +/* 801F03E0 001ED340 41 80 FE E0 */ blt lbl_801F02C0 +/* 801F03E4 001ED344 BB 21 00 C4 */ lmw r25, 0xc4(r1) +/* 801F03E8 001ED348 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 801F03EC 001ED34C 7C 08 03 A6 */ mtlr r0 +/* 801F03F0 001ED350 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 801F03F4 001ED354 4E 80 00 20 */ blr + +.global SetupCollisionManager__17CFlaahgraTentacleFR13CStateManager +SetupCollisionManager__17CFlaahgraTentacleFR13CStateManager: +/* 801F03F8 001ED358 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 801F03FC 001ED35C 7C 08 02 A6 */ mflr r0 +/* 801F0400 001ED360 90 01 00 84 */ stw r0, 0x84(r1) +/* 801F0404 001ED364 38 00 00 00 */ li r0, 0 +/* 801F0408 001ED368 BF 21 00 64 */ stmw r25, 0x64(r1) +/* 801F040C 001ED36C 7C 7D 1B 78 */ mr r29, r3 +/* 801F0410 001ED370 7C 9E 23 78 */ mr r30, r4 +/* 801F0414 001ED374 38 61 00 38 */ addi r3, r1, 0x38 +/* 801F0418 001ED378 38 80 00 03 */ li r4, 3 +/* 801F041C 001ED37C 90 01 00 3C */ stw r0, 0x3c(r1) +/* 801F0420 001ED380 90 01 00 40 */ stw r0, 0x40(r1) +/* 801F0424 001ED384 90 01 00 44 */ stw r0, 0x44(r1) +/* 801F0428 001ED388 4B F6 63 91 */ bl "reserve__Q24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>Fi" +/* 801F042C 001ED38C 3C 80 80 3D */ lis r4, lbl_803D2000@ha +/* 801F0430 001ED390 7F A3 EB 78 */ mr r3, r29 +/* 801F0434 001ED394 38 84 20 00 */ addi r4, r4, lbl_803D2000@l +/* 801F0438 001ED398 38 C1 00 38 */ addi r6, r1, 0x38 +/* 801F043C 001ED39C 38 A0 00 03 */ li r5, 3 +/* 801F0440 001ED3A0 4B FF FE 4D */ bl "AddSphereCollisionList__17CFlaahgraTentacleFPCQ217CFlaahgraTentacle16SSphereJointInfoiRQ24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>" +/* 801F0444 001ED3A4 3C 80 80 3D */ lis r4, lbl_803D2018@ha +/* 801F0448 001ED3A8 38 60 00 18 */ li r3, 0x18 +/* 801F044C 001ED3AC 38 84 20 18 */ addi r4, r4, lbl_803D2018@l +/* 801F0450 001ED3B0 38 A0 00 00 */ li r5, 0 +/* 801F0454 001ED3B4 38 84 00 14 */ addi r4, r4, 0x14 +/* 801F0458 001ED3B8 48 12 54 15 */ bl __nw__FUlPCcPCc +/* 801F045C 001ED3BC 7C 7C 1B 79 */ or. r28, r3, r3 +/* 801F0460 001ED3C0 41 82 00 38 */ beq lbl_801F0498 +/* 801F0464 001ED3C4 81 3D 00 04 */ lwz r9, 4(r29) +/* 801F0468 001ED3C8 7F C4 F3 78 */ mr r4, r30 +/* 801F046C 001ED3CC 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801F0470 001ED3D0 38 C1 00 1C */ addi r6, r1, 0x1c +/* 801F0474 001ED3D4 91 21 00 1C */ stw r9, 0x1c(r1) +/* 801F0478 001ED3D8 38 E1 00 38 */ addi r7, r1, 0x38 +/* 801F047C 001ED3DC 39 00 00 01 */ li r8, 1 +/* 801F0480 001ED3E0 A0 1D 00 08 */ lhz r0, 8(r29) +/* 801F0484 001ED3E4 91 21 00 18 */ stw r9, 0x18(r1) +/* 801F0488 001ED3E8 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801F048C 001ED3EC B0 01 00 10 */ sth r0, 0x10(r1) +/* 801F0490 001ED3F0 4B FB 74 A1 */ bl "__ct__22CCollisionActorManagerFR13CStateManager9TUniqueId7TAreaIdRCQ24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>b" +/* 801F0494 001ED3F4 7C 7C 1B 78 */ mr r28, r3 +lbl_801F0498: +/* 801F0498 001ED3F8 80 7D 05 6C */ lwz r3, 0x56c(r29) +/* 801F049C 001ED3FC 38 80 00 01 */ li r4, 1 +/* 801F04A0 001ED400 4B FB 74 3D */ bl sub_801a78dc +/* 801F04A4 001ED404 93 9D 05 6C */ stw r28, 0x56c(r29) +/* 801F04A8 001ED408 3B E0 00 00 */ li r31, 0 +/* 801F04AC 001ED40C 48 00 01 50 */ b lbl_801F05FC +lbl_801F04B0: +/* 801F04B0 001ED410 80 7D 05 6C */ lwz r3, 0x56c(r29) +/* 801F04B4 001ED414 7F E4 FB 78 */ mr r4, r31 +/* 801F04B8 001ED418 4B FB 6D 81 */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 801F04BC 001ED41C 7C 7C 1B 78 */ mr r28, r3 +/* 801F04C0 001ED420 7F C3 F3 78 */ mr r3, r30 +/* 801F04C4 001ED424 A0 1C 00 3C */ lhz r0, 0x3c(r28) +/* 801F04C8 001ED428 38 81 00 08 */ addi r4, r1, 8 +/* 801F04CC 001ED42C B0 01 00 14 */ sth r0, 0x14(r1) +/* 801F04D0 001ED430 B0 01 00 08 */ sth r0, 8(r1) +/* 801F04D4 001ED434 4B E5 C0 A1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801F04D8 001ED438 7C 64 1B 78 */ mr r4, r3 +/* 801F04DC 001ED43C 38 61 00 20 */ addi r3, r1, 0x20 +/* 801F04E0 001ED440 4B EB EE 6D */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801F04E4 001ED444 83 23 00 04 */ lwz r25, 4(r3) +/* 801F04E8 001ED448 28 19 00 00 */ cmplwi r25, 0 +/* 801F04EC 001ED44C 41 82 01 0C */ beq lbl_801F05F8 +/* 801F04F0 001ED450 80 AD 92 88 */ lwz r5, lbl_805A7E48@sda21(r13) +/* 801F04F4 001ED454 38 60 00 00 */ li r3, 0 +/* 801F04F8 001ED458 38 80 00 01 */ li r4, 1 +/* 801F04FC 001ED45C 48 19 99 F9 */ bl __shl2i +/* 801F0500 001ED460 80 AD 92 8C */ lwz r5, lbl_805A7E4C@sda21(r13) +/* 801F0504 001ED464 7C 9A 23 78 */ mr r26, r4 +/* 801F0508 001ED468 7C 7B 1B 78 */ mr r27, r3 +/* 801F050C 001ED46C 38 60 00 00 */ li r3, 0 +/* 801F0510 001ED470 38 80 00 01 */ li r4, 1 +/* 801F0514 001ED474 48 19 99 E1 */ bl __shl2i +/* 801F0518 001ED478 80 AD 92 90 */ lwz r5, lbl_805A7E50@sda21(r13) +/* 801F051C 001ED47C 7F 5A 23 78 */ or r26, r26, r4 +/* 801F0520 001ED480 7F 7B 1B 78 */ or r27, r27, r3 +/* 801F0524 001ED484 38 60 00 00 */ li r3, 0 +/* 801F0528 001ED488 38 80 00 01 */ li r4, 1 +/* 801F052C 001ED48C 48 19 99 C9 */ bl __shl2i +/* 801F0530 001ED490 80 AD 92 94 */ lwz r5, lbl_805A7E54@sda21(r13) +/* 801F0534 001ED494 7F 5A 23 78 */ or r26, r26, r4 +/* 801F0538 001ED498 7F 7B 1B 78 */ or r27, r27, r3 +/* 801F053C 001ED49C 38 60 00 00 */ li r3, 0 +/* 801F0540 001ED4A0 38 80 00 01 */ li r4, 1 +/* 801F0544 001ED4A4 48 19 99 B1 */ bl __shl2i +/* 801F0548 001ED4A8 80 AD 92 84 */ lwz r5, lbl_805A7E44@sda21(r13) +/* 801F054C 001ED4AC 7F 5A 23 78 */ or r26, r26, r4 +/* 801F0550 001ED4B0 7F 7B 1B 78 */ or r27, r27, r3 +/* 801F0554 001ED4B4 38 60 00 00 */ li r3, 0 +/* 801F0558 001ED4B8 38 80 00 01 */ li r4, 1 +/* 801F055C 001ED4BC 48 19 99 99 */ bl __shl2i +/* 801F0560 001ED4C0 38 00 00 03 */ li r0, 3 +/* 801F0564 001ED4C4 90 81 00 4C */ stw r4, 0x4c(r1) +/* 801F0568 001ED4C8 38 81 00 48 */ addi r4, r1, 0x48 +/* 801F056C 001ED4CC 90 61 00 48 */ stw r3, 0x48(r1) +/* 801F0570 001ED4D0 7F 23 CB 78 */ mr r3, r25 +/* 801F0574 001ED4D4 93 41 00 54 */ stw r26, 0x54(r1) +/* 801F0578 001ED4D8 93 61 00 50 */ stw r27, 0x50(r1) +/* 801F057C 001ED4DC 90 01 00 58 */ stw r0, 0x58(r1) +/* 801F0580 001ED4E0 4B E6 33 21 */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter +/* 801F0584 001ED4E4 7F 23 CB 78 */ mr r3, r25 +/* 801F0588 001ED4E8 7F C5 F3 78 */ mr r5, r30 +/* 801F058C 001ED4EC 38 80 00 1B */ li r4, 0x1b +/* 801F0590 001ED4F0 4B E6 3D C1 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801F0594 001ED4F4 7F A3 EB 78 */ mr r3, r29 +/* 801F0598 001ED4F8 81 9D 00 00 */ lwz r12, 0(r29) +/* 801F059C 001ED4FC 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 801F05A0 001ED500 7D 89 03 A6 */ mtctr r12 +/* 801F05A4 001ED504 4E 80 04 21 */ bctrl +/* 801F05A8 001ED508 7C 64 1B 78 */ mr r4, r3 +/* 801F05AC 001ED50C 7F 23 CB 78 */ mr r3, r25 +/* 801F05B0 001ED510 4B FB 85 E9 */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability +/* 801F05B4 001ED514 A0 7D 05 7C */ lhz r3, 0x57c(r29) +/* 801F05B8 001ED518 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801F05BC 001ED51C 7C 03 00 40 */ cmplw r3, r0 +/* 801F05C0 001ED520 40 82 00 38 */ bne lbl_801F05F8 +/* 801F05C4 001ED524 80 82 AE B0 */ lwz r4, lbl_805ACBD0@sda21(r2) +/* 801F05C8 001ED528 38 61 00 28 */ addi r3, r1, 0x28 +/* 801F05CC 001ED52C 4B E1 46 ED */ bl string_l__4rstlFPCc +/* 801F05D0 001ED530 38 7C 00 2C */ addi r3, r28, 0x2c +/* 801F05D4 001ED534 38 81 00 28 */ addi r4, r1, 0x28 +/* 801F05D8 001ED538 4B E6 20 09 */ 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" +/* 801F05DC 001ED53C 7C 7C 1B 78 */ mr r28, r3 +/* 801F05E0 001ED540 38 61 00 28 */ addi r3, r1, 0x28 +/* 801F05E4 001ED544 48 14 D4 FD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801F05E8 001ED548 57 80 06 3F */ clrlwi. r0, r28, 0x18 +/* 801F05EC 001ED54C 41 82 00 0C */ beq lbl_801F05F8 +/* 801F05F0 001ED550 A0 01 00 14 */ lhz r0, 0x14(r1) +/* 801F05F4 001ED554 B0 1D 05 7C */ sth r0, 0x57c(r29) +lbl_801F05F8: +/* 801F05F8 001ED558 3B FF 00 01 */ addi r31, r31, 1 +lbl_801F05FC: +/* 801F05FC 001ED55C 80 7D 05 6C */ lwz r3, 0x56c(r29) +/* 801F0600 001ED560 4B FB 6C 49 */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 801F0604 001ED564 7C 1F 18 40 */ cmplw r31, r3 +/* 801F0608 001ED568 41 80 FE A8 */ blt lbl_801F04B0 +/* 801F060C 001ED56C 7F A3 EB 78 */ mr r3, r29 +/* 801F0610 001ED570 7F C7 F3 78 */ mr r7, r30 +/* 801F0614 001ED574 38 80 00 13 */ li r4, 0x13 +/* 801F0618 001ED578 38 A0 00 28 */ li r5, 0x28 +/* 801F061C 001ED57C 38 C0 00 29 */ li r6, 0x29 +/* 801F0620 001ED580 4B E6 37 CD */ bl RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypes14EMaterialTypesR13CStateManager +/* 801F0624 001ED584 7F A3 EB 78 */ mr r3, r29 +/* 801F0628 001ED588 7F C5 F3 78 */ mr r5, r30 +/* 801F062C 001ED58C 38 80 00 27 */ li r4, 0x27 +/* 801F0630 001ED590 4B E6 3D 21 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801F0634 001ED594 38 61 00 38 */ addi r3, r1, 0x38 +/* 801F0638 001ED598 38 80 FF FF */ li r4, -1 +/* 801F063C 001ED59C 4B F6 5C F1 */ bl sub_8015632c +/* 801F0640 001ED5A0 BB 21 00 64 */ lmw r25, 0x64(r1) +/* 801F0644 001ED5A4 80 01 00 84 */ lwz r0, 0x84(r1) +/* 801F0648 001ED5A8 7C 08 03 A6 */ mtlr r0 +/* 801F064C 001ED5AC 38 21 00 80 */ addi r1, r1, 0x80 +/* 801F0650 001ED5B0 4E 80 00 20 */ blr + +.global Dead__17CFlaahgraTentacleFR13CStateManager9EStateMsgf +Dead__17CFlaahgraTentacleFR13CStateManager9EStateMsgf: +/* 801F0654 001ED5B4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801F0658 001ED5B8 7C 08 02 A6 */ mflr r0 +/* 801F065C 001ED5BC 38 80 00 00 */ li r4, 0 +/* 801F0660 001ED5C0 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F0664 001ED5C4 80 63 04 50 */ lwz r3, 0x450(r3) +/* 801F0668 001ED5C8 4B F4 A3 71 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 801F066C 001ED5CC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801F0670 001ED5D0 7C 08 03 A6 */ mtlr r0 +/* 801F0674 001ED5D4 38 21 00 10 */ addi r1, r1, 0x10 +/* 801F0678 001ED5D8 4E 80 00 20 */ blr + +.global Attack__17CFlaahgraTentacleFR13CStateManager9EStateMsgf +Attack__17CFlaahgraTentacleFR13CStateManager9EStateMsgf: +/* 801F067C 001ED5DC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801F0680 001ED5E0 7C 08 02 A6 */ mflr r0 +/* 801F0684 001ED5E4 2C 05 00 01 */ cmpwi r5, 1 +/* 801F0688 001ED5E8 90 01 00 34 */ stw r0, 0x34(r1) +/* 801F068C 001ED5EC 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801F0690 001ED5F0 7C 7F 1B 78 */ mr r31, r3 +/* 801F0694 001ED5F4 41 82 00 2C */ beq lbl_801F06C0 +/* 801F0698 001ED5F8 40 80 00 10 */ bge lbl_801F06A8 +/* 801F069C 001ED5FC 2C 05 00 00 */ cmpwi r5, 0 +/* 801F06A0 001ED600 40 80 00 14 */ bge lbl_801F06B4 +/* 801F06A4 001ED604 48 00 01 64 */ b lbl_801F0808 +lbl_801F06A8: +/* 801F06A8 001ED608 2C 05 00 03 */ cmpwi r5, 3 +/* 801F06AC 001ED60C 40 80 01 5C */ bge lbl_801F0808 +/* 801F06B0 001ED610 48 00 01 38 */ b lbl_801F07E8 +lbl_801F06B4: +/* 801F06B4 001ED614 38 00 00 00 */ li r0, 0 +/* 801F06B8 001ED618 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801F06BC 001ED61C 48 00 01 4C */ b lbl_801F0808 +lbl_801F06C0: +/* 801F06C0 001ED620 80 1F 05 68 */ lwz r0, 0x568(r31) +/* 801F06C4 001ED624 2C 00 00 01 */ cmpwi r0, 1 +/* 801F06C8 001ED628 41 82 01 40 */ beq lbl_801F0808 +/* 801F06CC 001ED62C 40 80 00 10 */ bge lbl_801F06DC +/* 801F06D0 001ED630 2C 00 00 00 */ cmpwi r0, 0 +/* 801F06D4 001ED634 40 80 00 14 */ bge lbl_801F06E8 +/* 801F06D8 001ED638 48 00 01 30 */ b lbl_801F0808 +lbl_801F06DC: +/* 801F06DC 001ED63C 2C 00 00 03 */ cmpwi r0, 3 +/* 801F06E0 001ED640 40 80 01 28 */ bge lbl_801F0808 +/* 801F06E4 001ED644 48 00 00 E8 */ b lbl_801F07CC +lbl_801F06E8: +/* 801F06E8 001ED648 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801F06EC 001ED64C 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801F06F0 001ED650 2C 00 00 07 */ cmpwi r0, 7 +/* 801F06F4 001ED654 40 82 00 10 */ bne lbl_801F0704 +/* 801F06F8 001ED658 38 00 00 02 */ li r0, 2 +/* 801F06FC 001ED65C 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801F0700 001ED660 48 00 01 08 */ b lbl_801F0808 +lbl_801F0704: +/* 801F0704 001ED664 C0 3F 05 78 */ lfs f1, 0x578(r31) +/* 801F0708 001ED668 C0 02 AE B4 */ lfs f0, lbl_805ACBD4@sda21(r2) +/* 801F070C 001ED66C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F0710 001ED670 40 81 00 0C */ ble lbl_801F071C +/* 801F0714 001ED674 39 00 00 00 */ li r8, 0 +/* 801F0718 001ED678 48 00 00 08 */ b lbl_801F0720 +lbl_801F071C: +/* 801F071C 001ED67C 39 00 00 01 */ li r8, 1 +lbl_801F0720: +/* 801F0720 001ED680 3C A0 80 3E */ lis r5, lbl_803DAA68@ha +/* 801F0724 001ED684 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801F0728 001ED688 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 801F072C 001ED68C 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801F0730 001ED690 38 E5 AA 68 */ addi r7, r5, lbl_803DAA68@l +/* 801F0734 001ED694 C0 44 00 00 */ lfs f2, 0(r4) +/* 801F0738 001ED698 C0 24 00 04 */ lfs f1, 4(r4) +/* 801F073C 001ED69C 3C A0 80 3E */ lis r5, lbl_803DA9D8@ha +/* 801F0740 001ED6A0 C0 04 00 08 */ lfs f0, 8(r4) +/* 801F0744 001ED6A4 38 C0 00 05 */ li r6, 5 +/* 801F0748 001ED6A8 38 00 00 00 */ li r0, 0 +/* 801F074C 001ED6AC 3B E3 00 04 */ addi r31, r3, 4 +/* 801F0750 001ED6B0 90 E1 00 08 */ stw r7, 8(r1) +/* 801F0754 001ED6B4 38 A5 A9 D8 */ addi r5, r5, lbl_803DA9D8@l +/* 801F0758 001ED6B8 7F E3 FB 78 */ mr r3, r31 +/* 801F075C 001ED6BC 38 80 00 05 */ li r4, 5 +/* 801F0760 001ED6C0 90 C1 00 0C */ stw r6, 0xc(r1) +/* 801F0764 001ED6C4 90 A1 00 08 */ stw r5, 8(r1) +/* 801F0768 001ED6C8 91 01 00 10 */ stw r8, 0x10(r1) +/* 801F076C 001ED6CC D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801F0770 001ED6D0 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801F0774 001ED6D4 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801F0778 001ED6D8 98 01 00 20 */ stb r0, 0x20(r1) +/* 801F077C 001ED6DC 4B F4 0C BD */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801F0780 001ED6E0 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801F0784 001ED6E4 3C 60 80 3E */ lis r3, lbl_803DA9D8@ha +/* 801F0788 001ED6E8 38 83 A9 D8 */ addi r4, r3, lbl_803DA9D8@l +/* 801F078C 001ED6EC 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801F0790 001ED6F0 90 1F 01 10 */ stw r0, 0x110(r31) +/* 801F0794 001ED6F4 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801F0798 001ED6F8 80 61 00 10 */ lwz r3, 0x10(r1) +/* 801F079C 001ED6FC 80 A1 00 14 */ lwz r5, 0x14(r1) +/* 801F07A0 001ED700 90 7F 01 14 */ stw r3, 0x114(r31) +/* 801F07A4 001ED704 80 61 00 18 */ lwz r3, 0x18(r1) +/* 801F07A8 001ED708 90 BF 01 18 */ stw r5, 0x118(r31) +/* 801F07AC 001ED70C 80 A1 00 1C */ lwz r5, 0x1c(r1) +/* 801F07B0 001ED710 90 7F 01 1C */ stw r3, 0x11c(r31) +/* 801F07B4 001ED714 88 61 00 20 */ lbz r3, 0x20(r1) +/* 801F07B8 001ED718 90 BF 01 20 */ stw r5, 0x120(r31) +/* 801F07BC 001ED71C 90 81 00 08 */ stw r4, 8(r1) +/* 801F07C0 001ED720 98 7F 01 24 */ stb r3, 0x124(r31) +/* 801F07C4 001ED724 90 01 00 08 */ stw r0, 8(r1) +/* 801F07C8 001ED728 48 00 00 40 */ b lbl_801F0808 +lbl_801F07CC: +/* 801F07CC 001ED72C 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801F07D0 001ED730 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801F07D4 001ED734 2C 00 00 07 */ cmpwi r0, 7 +/* 801F07D8 001ED738 41 82 00 30 */ beq lbl_801F0808 +/* 801F07DC 001ED73C 38 00 00 03 */ li r0, 3 +/* 801F07E0 001ED740 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801F07E4 001ED744 48 00 00 24 */ b lbl_801F0808 +lbl_801F07E8: +/* 801F07E8 001ED748 80 64 09 00 */ lwz r3, 0x900(r4) +/* 801F07EC 001ED74C 48 12 1C F1 */ bl Float__9CRandom16Fv +/* 801F07F0 001ED750 C0 7F 03 08 */ lfs f3, 0x308(r31) +/* 801F07F4 001ED754 C0 5F 03 04 */ lfs f2, 0x304(r31) +/* 801F07F8 001ED758 C0 02 AE B4 */ lfs f0, lbl_805ACBD4@sda21(r2) +/* 801F07FC 001ED75C EC 23 10 7A */ fmadds f1, f3, f1, f2 +/* 801F0800 001ED760 D0 3F 05 74 */ stfs f1, 0x574(r31) +/* 801F0804 001ED764 D0 1F 05 78 */ stfs f0, 0x578(r31) +lbl_801F0808: +/* 801F0808 001ED768 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801F080C 001ED76C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801F0810 001ED770 7C 08 03 A6 */ mtlr r0 +/* 801F0814 001ED774 38 21 00 30 */ addi r1, r1, 0x30 +/* 801F0818 001ED778 4E 80 00 20 */ blr + +.global Retreat__17CFlaahgraTentacleFR13CStateManager9EStateMsgf +Retreat__17CFlaahgraTentacleFR13CStateManager9EStateMsgf: +/* 801F081C 001ED77C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801F0820 001ED780 7C 08 02 A6 */ mflr r0 +/* 801F0824 001ED784 2C 05 00 02 */ cmpwi r5, 2 +/* 801F0828 001ED788 90 01 00 24 */ stw r0, 0x24(r1) +/* 801F082C 001ED78C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801F0830 001ED790 7C 7F 1B 78 */ mr r31, r3 +/* 801F0834 001ED794 41 82 00 78 */ beq lbl_801F08AC +/* 801F0838 001ED798 40 80 00 84 */ bge lbl_801F08BC +/* 801F083C 001ED79C 2C 05 00 01 */ cmpwi r5, 1 +/* 801F0840 001ED7A0 40 80 00 08 */ bge lbl_801F0848 +/* 801F0844 001ED7A4 48 00 00 78 */ b lbl_801F08BC +lbl_801F0848: +/* 801F0848 001ED7A8 88 1F 05 8E */ lbz r0, 0x58e(r31) +/* 801F084C 001ED7AC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801F0850 001ED7B0 41 82 00 6C */ beq lbl_801F08BC +/* 801F0854 001ED7B4 C0 3F 03 38 */ lfs f1, 0x338(r31) +/* 801F0858 001ED7B8 C0 02 AE BC */ lfs f0, lbl_805ACBDC@sda21(r2) +/* 801F085C 001ED7BC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F0860 001ED7C0 40 81 00 5C */ ble lbl_801F08BC +/* 801F0864 001ED7C4 A0 1F 05 8C */ lhz r0, 0x58c(r31) +/* 801F0868 001ED7C8 7C 83 23 78 */ mr r3, r4 +/* 801F086C 001ED7CC 38 81 00 08 */ addi r4, r1, 8 +/* 801F0870 001ED7D0 B0 01 00 08 */ sth r0, 8(r1) +/* 801F0874 001ED7D4 4B E5 BD 01 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801F0878 001ED7D8 7C 64 1B 78 */ mr r4, r3 +/* 801F087C 001ED7DC 38 61 00 0C */ addi r3, r1, 0xc +/* 801F0880 001ED7E0 4B EB 66 69 */ bl "__ct__28TCastToPtr<14CScriptTrigger>FP7CEntity" +/* 801F0884 001ED7E4 80 63 00 04 */ lwz r3, 4(r3) +/* 801F0888 001ED7E8 28 03 00 00 */ cmplwi r3, 0 +/* 801F088C 001ED7EC 41 82 00 30 */ beq lbl_801F08BC +/* 801F0890 001ED7F0 88 03 01 48 */ lbz r0, 0x148(r3) +/* 801F0894 001ED7F4 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 801F0898 001ED7F8 40 82 00 24 */ bne lbl_801F08BC +/* 801F089C 001ED7FC 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801F08A0 001ED800 38 80 00 01 */ li r4, 1 +/* 801F08A4 001ED804 4B F4 A1 35 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 801F08A8 001ED808 48 00 00 14 */ b lbl_801F08BC +lbl_801F08AC: +/* 801F08AC 001ED80C 88 1F 05 8E */ lbz r0, 0x58e(r31) +/* 801F08B0 001ED810 38 60 00 00 */ li r3, 0 +/* 801F08B4 001ED814 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801F08B8 001ED818 98 1F 05 8E */ stb r0, 0x58e(r31) +lbl_801F08BC: +/* 801F08BC 001ED81C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801F08C0 001ED820 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801F08C4 001ED824 7C 08 03 A6 */ mtlr r0 +/* 801F08C8 001ED828 38 21 00 20 */ addi r1, r1, 0x20 + +.global sub_801f08cc +sub_801f08cc: +/* 801F08CC 001ED82C 4E 80 00 20 */ blr + +.global InActive__17CFlaahgraTentacleFR13CStateManager9EStateMsgf +InActive__17CFlaahgraTentacleFR13CStateManager9EStateMsgf: +/* 801F08D0 001ED830 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801F08D4 001ED834 7C 08 02 A6 */ mflr r0 +/* 801F08D8 001ED838 90 01 00 34 */ stw r0, 0x34(r1) +/* 801F08DC 001ED83C DB E1 00 20 */ stfd f31, 0x20(r1) +/* 801F08E0 001ED840 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 801F08E4 001ED844 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801F08E8 001ED848 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801F08EC 001ED84C FF E0 08 90 */ fmr f31, f1 +/* 801F08F0 001ED850 2C 05 00 01 */ cmpwi r5, 1 +/* 801F08F4 001ED854 7C 7E 1B 78 */ mr r30, r3 +/* 801F08F8 001ED858 7C 9F 23 78 */ mr r31, r4 +/* 801F08FC 001ED85C 41 82 00 20 */ beq lbl_801F091C +/* 801F0900 001ED860 40 80 00 A4 */ bge lbl_801F09A4 +/* 801F0904 001ED864 2C 05 00 00 */ cmpwi r5, 0 +/* 801F0908 001ED868 40 80 00 08 */ bge lbl_801F0910 +/* 801F090C 001ED86C 48 00 00 98 */ b lbl_801F09A4 +lbl_801F0910: +/* 801F0910 001ED870 C0 02 AE B4 */ lfs f0, lbl_805ACBD4@sda21(r2) +/* 801F0914 001ED874 D0 1E 05 70 */ stfs f0, 0x570(r30) +/* 801F0918 001ED878 48 00 00 8C */ b lbl_801F09A4 +lbl_801F091C: +/* 801F091C 001ED87C 81 83 00 00 */ lwz r12, 0(r3) +/* 801F0920 001ED880 C0 22 AE B4 */ lfs f1, lbl_805ACBD4@sda21(r2) +/* 801F0924 001ED884 81 8C 02 30 */ lwz r12, 0x230(r12) +/* 801F0928 001ED888 7D 89 03 A6 */ mtctr r12 +/* 801F092C 001ED88C 4E 80 04 21 */ bctrl +/* 801F0930 001ED890 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801F0934 001ED894 40 82 00 70 */ bne lbl_801F09A4 +/* 801F0938 001ED898 A0 1E 05 8C */ lhz r0, 0x58c(r30) +/* 801F093C 001ED89C 7F E3 FB 78 */ mr r3, r31 +/* 801F0940 001ED8A0 38 81 00 08 */ addi r4, r1, 8 +/* 801F0944 001ED8A4 B0 01 00 08 */ sth r0, 8(r1) +/* 801F0948 001ED8A8 4B E5 BC 2D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801F094C 001ED8AC 7C 64 1B 78 */ mr r4, r3 +/* 801F0950 001ED8B0 38 61 00 0C */ addi r3, r1, 0xc +/* 801F0954 001ED8B4 4B EB 65 95 */ bl "__ct__28TCastToPtr<14CScriptTrigger>FP7CEntity" +/* 801F0958 001ED8B8 80 63 00 04 */ lwz r3, 4(r3) +/* 801F095C 001ED8BC 28 03 00 00 */ cmplwi r3, 0 +/* 801F0960 001ED8C0 41 82 00 44 */ beq lbl_801F09A4 +/* 801F0964 001ED8C4 88 03 01 48 */ lbz r0, 0x148(r3) +/* 801F0968 001ED8C8 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 801F096C 001ED8CC 41 82 00 38 */ beq lbl_801F09A4 +/* 801F0970 001ED8D0 C0 3E 05 70 */ lfs f1, 0x570(r30) +/* 801F0974 001ED8D4 C0 02 AE BC */ lfs f0, lbl_805ACBDC@sda21(r2) +/* 801F0978 001ED8D8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F097C 001ED8DC 40 81 00 20 */ ble lbl_801F099C +/* 801F0980 001ED8E0 7F C3 F3 78 */ mr r3, r30 +/* 801F0984 001ED8E4 7F E4 FB 78 */ mr r4, r31 +/* 801F0988 001ED8E8 4B FF F7 C5 */ bl RetractTentacle__17CFlaahgraTentacleFR13CStateManager +/* 801F098C 001ED8EC 7F C3 F3 78 */ mr r3, r30 +/* 801F0990 001ED8F0 7F E4 FB 78 */ mr r4, r31 +/* 801F0994 001ED8F4 4B FF F8 49 */ bl ExtractTentacle__17CFlaahgraTentacleFR13CStateManager +/* 801F0998 001ED8F8 48 00 00 0C */ b lbl_801F09A4 +lbl_801F099C: +/* 801F099C 001ED8FC EC 01 F8 2A */ fadds f0, f1, f31 +/* 801F09A0 001ED900 D0 1E 05 70 */ stfs f0, 0x570(r30) +lbl_801F09A4: +/* 801F09A4 001ED904 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 801F09A8 001ED908 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801F09AC 001ED90C CB E1 00 20 */ lfd f31, 0x20(r1) +/* 801F09B0 001ED910 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801F09B4 001ED914 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801F09B8 001ED918 7C 08 03 A6 */ mtlr r0 +/* 801F09BC 001ED91C 38 21 00 30 */ addi r1, r1, 0x30 +/* 801F09C0 001ED920 4E 80 00 20 */ blr + +.global AnimOver__17CFlaahgraTentacleFR13CStateManagerf +AnimOver__17CFlaahgraTentacleFR13CStateManagerf: +/* 801F09C4 001ED924 80 03 05 68 */ lwz r0, 0x568(r3) +/* 801F09C8 001ED928 20 00 00 03 */ subfic r0, r0, 3 +/* 801F09CC 001ED92C 7C 00 00 34 */ cntlzw r0, r0 +/* 801F09D0 001ED930 54 03 D9 7E */ srwi r3, r0, 5 +/* 801F09D4 001ED934 4E 80 00 20 */ blr + +.global ShouldAttack__17CFlaahgraTentacleFR13CStateManagerf +ShouldAttack__17CFlaahgraTentacleFR13CStateManagerf: +/* 801F09D8 001ED938 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801F09DC 001ED93C 7C 08 02 A6 */ mflr r0 +/* 801F09E0 001ED940 C0 22 AE B4 */ lfs f1, lbl_805ACBD4@sda21(r2) +/* 801F09E4 001ED944 90 01 00 34 */ stw r0, 0x34(r1) +/* 801F09E8 001ED948 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801F09EC 001ED94C 7C 9F 23 78 */ mr r31, r4 +/* 801F09F0 001ED950 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801F09F4 001ED954 7C 7E 1B 78 */ mr r30, r3 +/* 801F09F8 001ED958 C0 03 05 78 */ lfs f0, 0x578(r3) +/* 801F09FC 001ED95C FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801F0A00 001ED960 40 81 00 0C */ ble lbl_801F0A0C +/* 801F0A04 001ED964 38 60 00 01 */ li r3, 1 +/* 801F0A08 001ED968 48 00 00 C4 */ b lbl_801F0ACC +lbl_801F0A0C: +/* 801F0A0C 001ED96C C0 1E 05 74 */ lfs f0, 0x574(r30) +/* 801F0A10 001ED970 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801F0A14 001ED974 4C 40 13 82 */ cror 2, 0, 2 +/* 801F0A18 001ED978 40 82 00 B0 */ bne lbl_801F0AC8 +/* 801F0A1C 001ED97C 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 801F0A20 001ED980 88 03 09 C4 */ lbz r0, 0x9c4(r3) +/* 801F0A24 001ED984 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 801F0A28 001ED988 40 82 00 A0 */ bne lbl_801F0AC8 +/* 801F0A2C 001ED98C A0 1E 05 7C */ lhz r0, 0x57c(r30) +/* 801F0A30 001ED990 7F E3 FB 78 */ mr r3, r31 +/* 801F0A34 001ED994 38 81 00 08 */ addi r4, r1, 8 +/* 801F0A38 001ED998 B0 01 00 08 */ sth r0, 8(r1) +/* 801F0A3C 001ED99C 4B E5 BB 69 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801F0A40 001ED9A0 7C 64 1B 78 */ mr r4, r3 +/* 801F0A44 001ED9A4 38 61 00 0C */ addi r3, r1, 0xc +/* 801F0A48 001ED9A8 4B EB E9 05 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801F0A4C 001ED9AC 80 83 00 04 */ lwz r4, 4(r3) +/* 801F0A50 001ED9B0 28 04 00 00 */ cmplwi r4, 0 +/* 801F0A54 001ED9B4 41 82 00 74 */ beq lbl_801F0AC8 +/* 801F0A58 001ED9B8 80 BF 08 4C */ lwz r5, 0x84c(r31) +/* 801F0A5C 001ED9BC 38 61 00 14 */ addi r3, r1, 0x14 +/* 801F0A60 001ED9C0 C0 24 00 40 */ lfs f1, 0x40(r4) +/* 801F0A64 001ED9C4 C0 65 00 40 */ lfs f3, 0x40(r5) +/* 801F0A68 001ED9C8 C0 45 00 50 */ lfs f2, 0x50(r5) +/* 801F0A6C 001ED9CC C0 04 00 50 */ lfs f0, 0x50(r4) +/* 801F0A70 001ED9D0 EC 23 08 28 */ fsubs f1, f3, f1 +/* 801F0A74 001ED9D4 EC 42 00 28 */ fsubs f2, f2, f0 +/* 801F0A78 001ED9D8 48 12 37 89 */ bl __ct__9CVector2fFff +/* 801F0A7C 001ED9DC C0 21 00 14 */ lfs f1, 0x14(r1) +/* 801F0A80 001ED9E0 38 61 00 1C */ addi r3, r1, 0x1c +/* 801F0A84 001ED9E4 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 801F0A88 001ED9E8 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 801F0A8C 001ED9EC D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801F0A90 001ED9F0 48 12 36 4D */ bl MagSquared__9CVector2fCFv +/* 801F0A94 001ED9F4 C0 1E 02 FC */ lfs f0, 0x2fc(r30) +/* 801F0A98 001ED9F8 38 60 00 00 */ li r3, 0 +/* 801F0A9C 001ED9FC C0 5E 03 00 */ lfs f2, 0x300(r30) +/* 801F0AA0 001EDA00 EC 00 00 32 */ fmuls f0, f0, f0 +/* 801F0AA4 001EDA04 EC 42 00 B2 */ fmuls f2, f2, f2 +/* 801F0AA8 001EDA08 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F0AAC 001EDA0C 4C 41 13 82 */ cror 2, 1, 2 +/* 801F0AB0 001EDA10 40 82 00 1C */ bne lbl_801F0ACC +/* 801F0AB4 001EDA14 FC 01 10 40 */ fcmpo cr0, f1, f2 +/* 801F0AB8 001EDA18 4C 40 13 82 */ cror 2, 0, 2 +/* 801F0ABC 001EDA1C 40 82 00 10 */ bne lbl_801F0ACC +/* 801F0AC0 001EDA20 38 60 00 01 */ li r3, 1 +/* 801F0AC4 001EDA24 48 00 00 08 */ b lbl_801F0ACC +lbl_801F0AC8: +/* 801F0AC8 001EDA28 38 60 00 00 */ li r3, 0 +lbl_801F0ACC: +/* 801F0ACC 001EDA2C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801F0AD0 001EDA30 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801F0AD4 001EDA34 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801F0AD8 001EDA38 7C 08 03 A6 */ mtlr r0 +/* 801F0ADC 001EDA3C 38 21 00 30 */ addi r1, r1, 0x30 +/* 801F0AE0 001EDA40 4E 80 00 20 */ blr + +.global Inside__17CFlaahgraTentacleFR13CStateManagerf +Inside__17CFlaahgraTentacleFR13CStateManagerf: +/* 801F0AE4 001EDA44 80 63 04 50 */ lwz r3, 0x450(r3) +/* 801F0AE8 001EDA48 80 03 02 EC */ lwz r0, 0x2ec(r3) +/* 801F0AEC 001EDA4C 7C 00 00 34 */ cntlzw r0, r0 +/* 801F0AF0 001EDA50 54 03 D9 7E */ srwi r3, r0, 5 +/* 801F0AF4 001EDA54 4E 80 00 20 */ blr + +.global Death__17CFlaahgraTentacleFRC9CVector3fR13CStateManager +Death__17CFlaahgraTentacleFRC9CVector3fR13CStateManager: +/* 801F0AF8 001EDA58 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801F0AFC 001EDA5C 7C 08 02 A6 */ mflr r0 +/* 801F0B00 001EDA60 90 01 00 24 */ stw r0, 0x24(r1) +/* 801F0B04 001EDA64 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801F0B08 001EDA68 7C 9F 23 78 */ mr r31, r4 +/* 801F0B0C 001EDA6C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801F0B10 001EDA70 7C 7E 1B 78 */ mr r30, r3 +/* 801F0B14 001EDA74 88 03 04 00 */ lbz r0, 0x400(r3) +/* 801F0B18 001EDA78 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801F0B1C 001EDA7C 41 82 00 6C */ beq lbl_801F0B88 +/* 801F0B20 001EDA80 3C 80 80 3D */ lis r4, lbl_803D2018@ha +/* 801F0B24 001EDA84 38 61 00 08 */ addi r3, r1, 8 +/* 801F0B28 001EDA88 38 84 20 18 */ addi r4, r4, lbl_803D2018@l +/* 801F0B2C 001EDA8C 38 84 00 1B */ addi r4, r4, 0x1b +/* 801F0B30 001EDA90 4B E1 41 89 */ bl string_l__4rstlFPCc +/* 801F0B34 001EDA94 7F C3 F3 78 */ mr r3, r30 +/* 801F0B38 001EDA98 4B EB 1D C1 */ bl GetStateMachine__3CAiFv +/* 801F0B3C 001EDA9C 7C 66 1B 78 */ mr r6, r3 +/* 801F0B40 001EDAA0 7F E4 FB 78 */ mr r4, r31 +/* 801F0B44 001EDAA4 7F C5 F3 78 */ mr r5, r30 +/* 801F0B48 001EDAA8 38 7E 03 30 */ addi r3, r30, 0x330 +/* 801F0B4C 001EDAAC 38 E1 00 08 */ addi r7, r1, 8 +/* 801F0B50 001EDAB0 4B E8 F0 B5 */ bl "SetState__18CStateMachineStateFR13CStateManagerR3CAiPC13CStateMachineRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801F0B54 001EDAB4 38 61 00 08 */ addi r3, r1, 8 +/* 801F0B58 001EDAB8 48 14 CF 89 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801F0B5C 001EDABC 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801F0B60 001EDAC0 4B F4 95 6D */ bl GetPercentageFrozen__15CBodyControllerCFv +/* 801F0B64 001EDAC4 C0 02 AE B4 */ lfs f0, lbl_805ACBD4@sda21(r2) +/* 801F0B68 001EDAC8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F0B6C 001EDACC 40 81 00 0C */ ble lbl_801F0B78 +/* 801F0B70 001EDAD0 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801F0B74 001EDAD4 4B F4 95 E1 */ bl UnFreeze__15CBodyControllerFv +lbl_801F0B78: +/* 801F0B78 001EDAD8 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 801F0B7C 001EDADC 38 60 00 00 */ li r3, 0 +/* 801F0B80 001EDAE0 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801F0B84 001EDAE4 98 1E 04 00 */ stb r0, 0x400(r30) +lbl_801F0B88: +/* 801F0B88 001EDAE8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801F0B8C 001EDAEC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801F0B90 001EDAF0 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801F0B94 001EDAF4 7C 08 03 A6 */ mtlr r0 +/* 801F0B98 001EDAF8 38 21 00 20 */ addi r1, r1, 0x20 +/* 801F0B9C 001EDAFC 4E 80 00 20 */ blr + +.global GetAimPosition__17CFlaahgraTentacleCFRC13CStateManagerf +GetAimPosition__17CFlaahgraTentacleCFRC13CStateManagerf: +/* 801F0BA0 001EDB00 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801F0BA4 001EDB04 7C 08 02 A6 */ mflr r0 +/* 801F0BA8 001EDB08 90 01 00 44 */ stw r0, 0x44(r1) +/* 801F0BAC 001EDB0C DB E1 00 30 */ stfd f31, 0x30(r1) +/* 801F0BB0 001EDB10 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 801F0BB4 001EDB14 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801F0BB8 001EDB18 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801F0BBC 001EDB1C 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801F0BC0 001EDB20 7C 9E 23 78 */ mr r30, r4 +/* 801F0BC4 001EDB24 FF E0 08 90 */ fmr f31, f1 +/* 801F0BC8 001EDB28 A0 04 05 7C */ lhz r0, 0x57c(r4) +/* 801F0BCC 001EDB2C 7C BF 2B 78 */ mr r31, r5 +/* 801F0BD0 001EDB30 7C 7D 1B 78 */ mr r29, r3 +/* 801F0BD4 001EDB34 38 81 00 08 */ addi r4, r1, 8 +/* 801F0BD8 001EDB38 B0 01 00 08 */ sth r0, 8(r1) +/* 801F0BDC 001EDB3C 7F E3 FB 78 */ mr r3, r31 +/* 801F0BE0 001EDB40 4B E5 B9 C5 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801F0BE4 001EDB44 7C 64 1B 78 */ mr r4, r3 +/* 801F0BE8 001EDB48 38 61 00 0C */ addi r3, r1, 0xc +/* 801F0BEC 001EDB4C 4B EB E7 61 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801F0BF0 001EDB50 80 63 00 04 */ lwz r3, 4(r3) +/* 801F0BF4 001EDB54 28 03 00 00 */ cmplwi r3, 0 +/* 801F0BF8 001EDB58 41 82 00 20 */ beq lbl_801F0C18 +/* 801F0BFC 001EDB5C C0 43 00 60 */ lfs f2, 0x60(r3) +/* 801F0C00 001EDB60 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801F0C04 001EDB64 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801F0C08 001EDB68 D0 1D 00 00 */ stfs f0, 0(r29) +/* 801F0C0C 001EDB6C D0 3D 00 04 */ stfs f1, 4(r29) +/* 801F0C10 001EDB70 D0 5D 00 08 */ stfs f2, 8(r29) +/* 801F0C14 001EDB74 48 00 00 18 */ b lbl_801F0C2C +lbl_801F0C18: +/* 801F0C18 001EDB78 FC 20 F8 90 */ fmr f1, f31 +/* 801F0C1C 001EDB7C 7F A3 EB 78 */ mr r3, r29 +/* 801F0C20 001EDB80 7F C4 F3 78 */ mr r4, r30 +/* 801F0C24 001EDB84 7F E5 FB 78 */ mr r5, r31 +/* 801F0C28 001EDB88 4B E8 79 C1 */ bl GetAimPosition__10CPatternedCFRC13CStateManagerf +lbl_801F0C2C: +/* 801F0C2C 001EDB8C E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 801F0C30 001EDB90 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801F0C34 001EDB94 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 801F0C38 001EDB98 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801F0C3C 001EDB9C 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801F0C40 001EDBA0 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801F0C44 001EDBA4 7C 08 03 A6 */ mtlr r0 +/* 801F0C48 001EDBA8 38 21 00 40 */ addi r1, r1, 0x40 +/* 801F0C4C 001EDBAC 4E 80 00 20 */ blr + +.global AcceptScriptMsg__17CFlaahgraTentacleF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__17CFlaahgraTentacleF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 801F0C50 001EDBB0 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 801F0C54 001EDBB4 7C 08 02 A6 */ mflr r0 +/* 801F0C58 001EDBB8 90 01 00 94 */ stw r0, 0x94(r1) +/* 801F0C5C 001EDBBC BF 61 00 7C */ stmw r27, 0x7c(r1) +/* 801F0C60 001EDBC0 7C 9D 23 78 */ mr r29, r4 +/* 801F0C64 001EDBC4 38 1D FF FD */ addi r0, r29, -3 +/* 801F0C68 001EDBC8 7C 7C 1B 78 */ mr r28, r3 +/* 801F0C6C 001EDBCC 28 00 00 20 */ cmplwi r0, 0x20 +/* 801F0C70 001EDBD0 7C BE 2B 78 */ mr r30, r5 +/* 801F0C74 001EDBD4 7C DF 33 78 */ mr r31, r6 +/* 801F0C78 001EDBD8 41 81 01 C8 */ bgt lbl_801F0E40 +/* 801F0C7C 001EDBDC 3C 80 80 3E */ lis r4, lbl_803E66D4@ha +/* 801F0C80 001EDBE0 54 00 10 3A */ slwi r0, r0, 2 +/* 801F0C84 001EDBE4 38 84 66 D4 */ addi r4, r4, lbl_803E66D4@l +/* 801F0C88 001EDBE8 7C 04 00 2E */ lwzx r0, r4, r0 +/* 801F0C8C 001EDBEC 7C 09 03 A6 */ mtctr r0 +/* 801F0C90 001EDBF0 4E 80 04 20 */ bctr +/* 801F0C94 001EDBF4 80 7C 04 50 */ lwz r3, 0x450(r28) +/* 801F0C98 001EDBF8 7F E4 FB 78 */ mr r4, r31 +/* 801F0C9C 001EDBFC 4B F4 A0 55 */ bl Activate__15CBodyControllerFR13CStateManager +/* 801F0CA0 001EDC00 7F 83 E3 78 */ mr r3, r28 +/* 801F0CA4 001EDC04 7F E4 FB 78 */ mr r4, r31 +/* 801F0CA8 001EDC08 4B FF F7 51 */ bl SetupCollisionManager__17CFlaahgraTentacleFR13CStateManager +/* 801F0CAC 001EDC0C 48 00 01 94 */ b lbl_801F0E40 +/* 801F0CB0 001EDC10 80 7C 05 6C */ lwz r3, 0x56c(r28) +/* 801F0CB4 001EDC14 7F E4 FB 78 */ mr r4, r31 +/* 801F0CB8 001EDC18 4B FB 67 0D */ bl Destroy__22CCollisionActorManagerCFR13CStateManager +/* 801F0CBC 001EDC1C A0 1C 05 8C */ lhz r0, 0x58c(r28) +/* 801F0CC0 001EDC20 7F E3 FB 78 */ mr r3, r31 +/* 801F0CC4 001EDC24 38 81 00 2C */ addi r4, r1, 0x2c +/* 801F0CC8 001EDC28 B0 01 00 2C */ sth r0, 0x2c(r1) +/* 801F0CCC 001EDC2C 4B E5 B8 A9 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801F0CD0 001EDC30 7C 64 1B 78 */ mr r4, r3 +/* 801F0CD4 001EDC34 38 61 00 38 */ addi r3, r1, 0x38 +/* 801F0CD8 001EDC38 4B EB 62 11 */ bl "__ct__28TCastToPtr<14CScriptTrigger>FP7CEntity" +/* 801F0CDC 001EDC3C 83 63 00 04 */ lwz r27, 4(r3) +/* 801F0CE0 001EDC40 28 1B 00 00 */ cmplwi r27, 0 +/* 801F0CE4 001EDC44 41 82 01 5C */ beq lbl_801F0E40 +/* 801F0CE8 001EDC48 C0 1C 05 80 */ lfs f0, 0x580(r28) +/* 801F0CEC 001EDC4C 38 7C 05 80 */ addi r3, r28, 0x580 +/* 801F0CF0 001EDC50 D0 1B 01 1C */ stfs f0, 0x11c(r27) +/* 801F0CF4 001EDC54 C0 1C 05 84 */ lfs f0, 0x584(r28) +/* 801F0CF8 001EDC58 D0 1B 01 20 */ stfs f0, 0x120(r27) +/* 801F0CFC 001EDC5C C0 1C 05 88 */ lfs f0, 0x588(r28) +/* 801F0D00 001EDC60 D0 1B 01 24 */ stfs f0, 0x124(r27) +/* 801F0D04 001EDC64 48 12 3B B5 */ bl Magnitude__9CVector3fCFv +/* 801F0D08 001EDC68 D0 3B 01 28 */ stfs f1, 0x128(r27) +/* 801F0D0C 001EDC6C 48 00 01 34 */ b lbl_801F0E40 +/* 801F0D10 001EDC70 A0 1E 00 00 */ lhz r0, 0(r30) +/* 801F0D14 001EDC74 7F E3 FB 78 */ mr r3, r31 +/* 801F0D18 001EDC78 38 81 00 28 */ addi r4, r1, 0x28 +/* 801F0D1C 001EDC7C B0 01 00 28 */ sth r0, 0x28(r1) +/* 801F0D20 001EDC80 4B E5 B8 85 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801F0D24 001EDC84 7C 64 1B 78 */ mr r4, r3 +/* 801F0D28 001EDC88 38 61 00 30 */ addi r3, r1, 0x30 +/* 801F0D2C 001EDC8C 4B EB E6 21 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801F0D30 001EDC90 80 83 00 04 */ lwz r4, 4(r3) +/* 801F0D34 001EDC94 28 04 00 00 */ cmplwi r4, 0 +/* 801F0D38 001EDC98 41 82 01 08 */ beq lbl_801F0E40 +/* 801F0D3C 001EDC9C 38 61 00 24 */ addi r3, r1, 0x24 +/* 801F0D40 001EDCA0 4B FB 7E 4D */ bl GetLastTouchedObject__15CCollisionActorCFv +/* 801F0D44 001EDCA4 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 801F0D48 001EDCA8 A0 81 00 24 */ lhz r4, 0x24(r1) +/* 801F0D4C 001EDCAC A0 03 00 08 */ lhz r0, 8(r3) +/* 801F0D50 001EDCB0 7C 04 00 40 */ cmplw r4, r0 +/* 801F0D54 001EDCB4 40 82 00 EC */ bne lbl_801F0E40 +/* 801F0D58 001EDCB8 C0 3C 04 20 */ lfs f1, 0x420(r28) +/* 801F0D5C 001EDCBC C0 02 AE B4 */ lfs f0, lbl_805ACBD4@sda21(r2) +/* 801F0D60 001EDCC0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F0D64 001EDCC4 4C 40 13 82 */ cror 2, 0, 2 +/* 801F0D68 001EDCC8 40 82 00 D8 */ bne lbl_801F0E40 +/* 801F0D6C 001EDCCC 80 AD 92 80 */ lwz r5, lbl_805A7E40@sda21(r13) +/* 801F0D70 001EDCD0 38 60 00 00 */ li r3, 0 +/* 801F0D74 001EDCD4 38 80 00 01 */ li r4, 1 +/* 801F0D78 001EDCD8 48 19 91 7D */ bl __shl2i +/* 801F0D7C 001EDCDC 38 A0 00 00 */ li r5, 0 +/* 801F0D80 001EDCE0 38 00 00 03 */ li r0, 3 +/* 801F0D84 001EDCE4 90 81 00 44 */ stw r4, 0x44(r1) +/* 801F0D88 001EDCE8 7F 84 E3 78 */ mr r4, r28 +/* 801F0D8C 001EDCEC 90 61 00 40 */ stw r3, 0x40(r1) +/* 801F0D90 001EDCF0 38 61 00 58 */ addi r3, r1, 0x58 +/* 801F0D94 001EDCF4 90 A1 00 4C */ stw r5, 0x4c(r1) +/* 801F0D98 001EDCF8 90 A1 00 48 */ stw r5, 0x48(r1) +/* 801F0D9C 001EDCFC 90 01 00 50 */ stw r0, 0x50(r1) +/* 801F0DA0 001EDD00 A0 1C 00 08 */ lhz r0, 8(r28) +/* 801F0DA4 001EDD04 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801F0DA8 001EDD08 80 BF 08 4C */ lwz r5, 0x84c(r31) +/* 801F0DAC 001EDD0C B0 01 00 0C */ sth r0, 0xc(r1) +/* 801F0DB0 001EDD10 A0 A5 00 08 */ lhz r5, 8(r5) +/* 801F0DB4 001EDD14 B0 A1 00 18 */ sth r5, 0x18(r1) +/* 801F0DB8 001EDD18 A0 1C 00 08 */ lhz r0, 8(r28) +/* 801F0DBC 001EDD1C B0 A1 00 14 */ sth r5, 0x14(r1) +/* 801F0DC0 001EDD20 B0 01 00 20 */ sth r0, 0x20(r1) +/* 801F0DC4 001EDD24 81 9C 00 00 */ lwz r12, 0(r28) +/* 801F0DC8 001EDD28 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 801F0DCC 001EDD2C 81 8C 02 B0 */ lwz r12, 0x2b0(r12) +/* 801F0DD0 001EDD30 7D 89 03 A6 */ mtctr r12 +/* 801F0DD4 001EDD34 4E 80 04 21 */ bctrl +/* 801F0DD8 001EDD38 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801F0DDC 001EDD3C 7F E3 FB 78 */ mr r3, r31 +/* 801F0DE0 001EDD40 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 801F0DE4 001EDD44 38 A1 00 18 */ addi r5, r1, 0x18 +/* 801F0DE8 001EDD48 38 81 00 20 */ addi r4, r1, 0x20 +/* 801F0DEC 001EDD4C 38 C1 00 10 */ addi r6, r1, 0x10 +/* 801F0DF0 001EDD50 38 E1 00 58 */ addi r7, r1, 0x58 +/* 801F0DF4 001EDD54 39 01 00 40 */ addi r8, r1, 0x40 +/* 801F0DF8 001EDD58 4B E5 92 A9 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +/* 801F0DFC 001EDD5C C0 1C 04 24 */ lfs f0, 0x424(r28) +/* 801F0E00 001EDD60 D0 1C 04 20 */ stfs f0, 0x420(r28) +/* 801F0E04 001EDD64 48 00 00 3C */ b lbl_801F0E40 +/* 801F0E08 001EDD68 C0 02 AE C0 */ lfs f0, lbl_805ACBE0@sda21(r2) +/* 801F0E0C 001EDD6C D0 1C 05 78 */ stfs f0, 0x578(r28) +/* 801F0E10 001EDD70 48 00 00 30 */ b lbl_801F0E40 +/* 801F0E14 001EDD74 7F E4 FB 78 */ mr r4, r31 +/* 801F0E18 001EDD78 4B E8 7B E9 */ bl DeathDelete__10CPatternedFR13CStateManager +/* 801F0E1C 001EDD7C 48 00 00 24 */ b lbl_801F0E40 +/* 801F0E20 001EDD80 7F E4 FB 78 */ mr r4, r31 +/* 801F0E24 001EDD84 4B FF F3 B9 */ bl ExtractTentacle__17CFlaahgraTentacleFR13CStateManager +/* 801F0E28 001EDD88 48 00 00 18 */ b lbl_801F0E40 +/* 801F0E2C 001EDD8C 7F E4 FB 78 */ mr r4, r31 +/* 801F0E30 001EDD90 4B FF F3 1D */ bl RetractTentacle__17CFlaahgraTentacleFR13CStateManager +/* 801F0E34 001EDD94 48 00 00 0C */ b lbl_801F0E40 +/* 801F0E38 001EDD98 7F E4 FB 78 */ mr r4, r31 +/* 801F0E3C 001EDD9C 4B FF F2 2D */ bl SaveBombSlotInfo__17CFlaahgraTentacleFR13CStateManager +lbl_801F0E40: +/* 801F0E40 001EDDA0 A0 1E 00 00 */ lhz r0, 0(r30) +/* 801F0E44 001EDDA4 7F 83 E3 78 */ mr r3, r28 +/* 801F0E48 001EDDA8 7F A4 EB 78 */ mr r4, r29 +/* 801F0E4C 001EDDAC 7F E6 FB 78 */ mr r6, r31 +/* 801F0E50 001EDDB0 B0 01 00 08 */ sth r0, 8(r1) +/* 801F0E54 001EDDB4 38 A1 00 08 */ addi r5, r1, 8 +/* 801F0E58 001EDDB8 4B E8 BD 21 */ bl AcceptScriptMsg__10CPatternedF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 801F0E5C 001EDDBC BB 61 00 7C */ lmw r27, 0x7c(r1) +/* 801F0E60 001EDDC0 80 01 00 94 */ lwz r0, 0x94(r1) +/* 801F0E64 001EDDC4 7C 08 03 A6 */ mtlr r0 +/* 801F0E68 001EDDC8 38 21 00 90 */ addi r1, r1, 0x90 +/* 801F0E6C 001EDDCC 4E 80 00 20 */ blr + +.global Accept__17CFlaahgraTentacleFR8IVisitor +Accept__17CFlaahgraTentacleFR8IVisitor: +/* 801F0E70 001EDDD0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801F0E74 001EDDD4 7C 08 02 A6 */ mflr r0 +/* 801F0E78 001EDDD8 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F0E7C 001EDDDC 7C 60 1B 78 */ mr r0, r3 +/* 801F0E80 001EDDE0 7C 83 23 78 */ mr r3, r4 +/* 801F0E84 001EDDE4 81 84 00 00 */ lwz r12, 0(r4) +/* 801F0E88 001EDDE8 7C 04 03 78 */ mr r4, r0 +/* 801F0E8C 001EDDEC 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801F0E90 001EDDF0 7D 89 03 A6 */ mtctr r12 +/* 801F0E94 001EDDF4 4E 80 04 21 */ bctrl +/* 801F0E98 001EDDF8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801F0E9C 001EDDFC 7C 08 03 A6 */ mtlr r0 +/* 801F0EA0 001EDE00 38 21 00 10 */ addi r1, r1, 0x10 +/* 801F0EA4 001EDE04 4E 80 00 20 */ blr + +.global Think__17CFlaahgraTentacleFfR13CStateManager +Think__17CFlaahgraTentacleFfR13CStateManager: +/* 801F0EA8 001EDE08 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801F0EAC 001EDE0C 7C 08 02 A6 */ mflr r0 +/* 801F0EB0 001EDE10 90 01 00 24 */ stw r0, 0x24(r1) +/* 801F0EB4 001EDE14 DB E1 00 10 */ stfd f31, 0x10(r1) +/* 801F0EB8 001EDE18 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 +/* 801F0EBC 001EDE1C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801F0EC0 001EDE20 93 C1 00 08 */ stw r30, 8(r1) +/* 801F0EC4 001EDE24 88 03 00 30 */ lbz r0, 0x30(r3) +/* 801F0EC8 001EDE28 FF E0 08 90 */ fmr f31, f1 +/* 801F0ECC 001EDE2C 7C 7E 1B 78 */ mr r30, r3 +/* 801F0ED0 001EDE30 7C 9F 23 78 */ mr r31, r4 +/* 801F0ED4 001EDE34 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801F0ED8 001EDE38 41 82 00 4C */ beq lbl_801F0F24 +/* 801F0EDC 001EDE3C 4B E8 8C 3D */ bl Think__10CPatternedFfR13CStateManager +/* 801F0EE0 001EDE40 FC 20 F8 90 */ fmr f1, f31 +/* 801F0EE4 001EDE44 80 7E 05 6C */ lwz r3, 0x56c(r30) +/* 801F0EE8 001EDE48 7F E4 FB 78 */ mr r4, r31 +/* 801F0EEC 001EDE4C 38 A0 00 00 */ li r5, 0 +/* 801F0EF0 001EDE50 4B FB 65 61 */ bl Update__22CCollisionActorManagerCFfR13CStateManagerQ222CCollisionActorManager14EUpdateOptions +/* 801F0EF4 001EDE54 C0 3E 05 74 */ lfs f1, 0x574(r30) +/* 801F0EF8 001EDE58 C0 02 AE B4 */ lfs f0, lbl_805ACBD4@sda21(r2) +/* 801F0EFC 001EDE5C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F0F00 001EDE60 40 81 00 0C */ ble lbl_801F0F0C +/* 801F0F04 001EDE64 EC 01 F8 28 */ fsubs f0, f1, f31 +/* 801F0F08 001EDE68 D0 1E 05 74 */ stfs f0, 0x574(r30) +lbl_801F0F0C: +/* 801F0F0C 001EDE6C C0 3E 05 78 */ lfs f1, 0x578(r30) +/* 801F0F10 001EDE70 C0 02 AE B4 */ lfs f0, lbl_805ACBD4@sda21(r2) +/* 801F0F14 001EDE74 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F0F18 001EDE78 40 81 00 0C */ ble lbl_801F0F24 +/* 801F0F1C 001EDE7C EC 01 F8 28 */ fsubs f0, f1, f31 +/* 801F0F20 001EDE80 D0 1E 05 78 */ stfs f0, 0x578(r30) +lbl_801F0F24: +/* 801F0F24 001EDE84 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 +/* 801F0F28 001EDE88 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801F0F2C 001EDE8C CB E1 00 10 */ lfd f31, 0x10(r1) +/* 801F0F30 001EDE90 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801F0F34 001EDE94 83 C1 00 08 */ lwz r30, 8(r1) +/* 801F0F38 001EDE98 7C 08 03 A6 */ mtlr r0 +/* 801F0F3C 001EDE9C 38 21 00 20 */ addi r1, r1, 0x20 +/* 801F0F40 001EDEA0 4E 80 00 20 */ blr + +.global __dt__17CFlaahgraTentacleFv +__dt__17CFlaahgraTentacleFv: +/* 801F0F44 001EDEA4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801F0F48 001EDEA8 7C 08 02 A6 */ mflr r0 +/* 801F0F4C 001EDEAC 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F0F50 001EDEB0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801F0F54 001EDEB4 7C 9F 23 78 */ mr r31, r4 +/* 801F0F58 001EDEB8 93 C1 00 08 */ stw r30, 8(r1) +/* 801F0F5C 001EDEBC 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801F0F60 001EDEC0 41 82 00 40 */ beq lbl_801F0FA0 +/* 801F0F64 001EDEC4 3C 60 80 3E */ lis r3, lbl_803E6408@ha +/* 801F0F68 001EDEC8 34 1E 05 6C */ addic. r0, r30, 0x56c +/* 801F0F6C 001EDECC 38 03 64 08 */ addi r0, r3, lbl_803E6408@l +/* 801F0F70 001EDED0 90 1E 00 00 */ stw r0, 0(r30) +/* 801F0F74 001EDED4 41 82 00 10 */ beq lbl_801F0F84 +/* 801F0F78 001EDED8 80 7E 05 6C */ lwz r3, 0x56c(r30) +/* 801F0F7C 001EDEDC 38 80 00 01 */ li r4, 1 +/* 801F0F80 001EDEE0 4B FB 69 5D */ bl sub_801a78dc +lbl_801F0F84: +/* 801F0F84 001EDEE4 7F C3 F3 78 */ mr r3, r30 +/* 801F0F88 001EDEE8 38 80 00 00 */ li r4, 0 +/* 801F0F8C 001EDEEC 4B E8 65 E5 */ bl __dt__10CPatternedFv +/* 801F0F90 001EDEF0 7F E0 07 35 */ extsh. r0, r31 +/* 801F0F94 001EDEF4 40 81 00 0C */ ble lbl_801F0FA0 +/* 801F0F98 001EDEF8 7F C3 F3 78 */ mr r3, r30 +/* 801F0F9C 001EDEFC 48 12 49 95 */ bl Free__7CMemoryFPCv +lbl_801F0FA0: +/* 801F0FA0 001EDF00 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801F0FA4 001EDF04 7F C3 F3 78 */ mr r3, r30 +/* 801F0FA8 001EDF08 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801F0FAC 001EDF0C 83 C1 00 08 */ lwz r30, 8(r1) +/* 801F0FB0 001EDF10 7C 08 03 A6 */ mtlr r0 +/* 801F0FB4 001EDF14 38 21 00 10 */ addi r1, r1, 0x10 +/* 801F0FB8 001EDF18 4E 80 00 20 */ blr + +.global "__ct__17CFlaahgraTentacleF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC16CActorParameters" +"__ct__17CFlaahgraTentacleF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC16CActorParameters": +/* 801F0FBC 001EDF1C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801F0FC0 001EDF20 7C 08 02 A6 */ mflr r0 +/* 801F0FC4 001EDF24 39 60 00 01 */ li r11, 1 +/* 801F0FC8 001EDF28 7D 0C 43 78 */ mr r12, r8 +/* 801F0FCC 001EDF2C 90 01 00 34 */ stw r0, 0x34(r1) +/* 801F0FD0 001EDF30 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801F0FD4 001EDF34 7C 7F 1B 78 */ mr r31, r3 +/* 801F0FD8 001EDF38 A0 04 00 00 */ lhz r0, 0(r4) +/* 801F0FDC 001EDF3C 7C C4 33 78 */ mr r4, r6 +/* 801F0FE0 001EDF40 7C A6 2B 78 */ mr r6, r5 +/* 801F0FE4 001EDF44 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801F0FE8 001EDF48 B0 01 00 20 */ sth r0, 0x20(r1) +/* 801F0FEC 001EDF4C 7C 88 23 78 */ mr r8, r4 +/* 801F0FF0 001EDF50 38 00 00 02 */ li r0, 2 +/* 801F0FF4 001EDF54 38 80 00 0C */ li r4, 0xc +/* 801F0FF8 001EDF58 91 21 00 08 */ stw r9, 8(r1) +/* 801F0FFC 001EDF5C 7C E9 3B 78 */ mr r9, r7 +/* 801F1000 001EDF60 38 E0 00 00 */ li r7, 0 +/* 801F1004 001EDF64 91 61 00 0C */ stw r11, 0xc(r1) +/* 801F1008 001EDF68 91 61 00 10 */ stw r11, 0x10(r1) +/* 801F100C 001EDF6C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F1010 001EDF70 91 41 00 18 */ stw r10, 0x18(r1) +/* 801F1014 001EDF74 7D 8A 63 78 */ mr r10, r12 +/* 801F1018 001EDF78 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801F101C 001EDF7C 4B E8 C4 35 */ bl "__ct__10CPatternedFUi9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC16CActorParametersUi" +/* 801F1020 001EDF80 3C 80 80 3E */ lis r4, lbl_803E6408@ha +/* 801F1024 001EDF84 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801F1028 001EDF88 38 84 64 08 */ addi r4, r4, lbl_803E6408@l +/* 801F102C 001EDF8C 38 00 FF FF */ li r0, -1 +/* 801F1030 001EDF90 90 9F 00 00 */ stw r4, 0(r31) +/* 801F1034 001EDF94 38 C0 00 00 */ li r6, 0 +/* 801F1038 001EDF98 C0 02 AE B4 */ lfs f0, lbl_805ACBD4@sda21(r2) +/* 801F103C 001EDF9C 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 801F1040 001EDFA0 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801F1044 001EDFA4 38 7F 04 60 */ addi r3, r31, 0x460 +/* 801F1048 001EDFA8 38 80 00 00 */ li r4, 0 +/* 801F104C 001EDFAC 90 DF 05 6C */ stw r6, 0x56c(r31) +/* 801F1050 001EDFB0 D0 1F 05 70 */ stfs f0, 0x570(r31) +/* 801F1054 001EDFB4 D0 1F 05 74 */ stfs f0, 0x574(r31) +/* 801F1058 001EDFB8 D0 1F 05 78 */ stfs f0, 0x578(r31) +/* 801F105C 001EDFBC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801F1060 001EDFC0 B0 1F 05 7C */ sth r0, 0x57c(r31) +/* 801F1064 001EDFC4 C0 05 00 00 */ lfs f0, 0(r5) +/* 801F1068 001EDFC8 D0 1F 05 80 */ stfs f0, 0x580(r31) +/* 801F106C 001EDFCC C0 05 00 04 */ lfs f0, 4(r5) +/* 801F1070 001EDFD0 D0 1F 05 84 */ stfs f0, 0x584(r31) +/* 801F1074 001EDFD4 C0 05 00 08 */ lfs f0, 8(r5) +/* 801F1078 001EDFD8 D0 1F 05 88 */ stfs f0, 0x588(r31) +/* 801F107C 001EDFDC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801F1080 001EDFE0 B0 1F 05 8C */ sth r0, 0x58c(r31) +/* 801F1084 001EDFE4 88 1F 05 8E */ lbz r0, 0x58e(r31) +/* 801F1088 001EDFE8 50 C0 3E 30 */ rlwimi r0, r6, 7, 0x18, 0x18 +/* 801F108C 001EDFEC 98 1F 05 8E */ stb r0, 0x58e(r31) +/* 801F1090 001EDFF0 80 BF 00 90 */ lwz r5, 0x90(r31) +/* 801F1094 001EDFF4 88 05 02 98 */ lbz r0, 0x298(r5) +/* 801F1098 001EDFF8 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19 +/* 801F109C 001EDFFC 98 05 02 98 */ stb r0, 0x298(r5) +/* 801F10A0 001EE000 48 04 2C C5 */ bl SetAutoResetImpulse__20CKnockBackControllerFb +/* 801F10A4 001EE004 7F E3 FB 78 */ mr r3, r31 +/* 801F10A8 001EE008 38 80 00 00 */ li r4, 0 +/* 801F10AC 001EE00C 4B E6 1C C1 */ bl CreateShadow__6CActorFb +/* 801F10B0 001EE010 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801F10B4 001EE014 7F E3 FB 78 */ mr r3, r31 +/* 801F10B8 001EE018 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801F10BC 001EE01C 7C 08 03 A6 */ mtlr r0 +/* 801F10C0 001EE020 38 21 00 30 */ addi r1, r1, 0x30 +/* 801F10C4 001EE024 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Enemies/CFlyingPirate.s b/asm/Kyoto_CWD/Enemies/CFlyingPirate.s new file mode 100644 index 00000000..7e3dd930 --- /dev/null +++ b/asm/Kyoto_CWD/Enemies/CFlyingPirate.s @@ -0,0 +1,13942 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global FixedRandom__10CPatternedFR13CStateManagerf +FixedRandom__10CPatternedFR13CStateManagerf: +/* 801F40C8 001F1028 C0 23 03 3C */ lfs f1, 0x33c(r3) +/* 801F40CC 001F102C C0 03 03 44 */ lfs f0, 0x344(r3) +/* 801F40D0 001F1030 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F40D4 001F1034 7C 00 00 26 */ mfcr r0 +/* 801F40D8 001F1038 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801F40DC 001F103C 4E 80 00 20 */ blr + +.global Random__10CPatternedFR13CStateManagerf +Random__10CPatternedFR13CStateManagerf: +/* 801F40E0 001F1040 C0 03 03 3C */ lfs f0, 0x33c(r3) +/* 801F40E4 001F1044 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801F40E8 001F1048 7C 00 00 26 */ mfcr r0 +/* 801F40EC 001F104C 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801F40F0 001F1050 4E 80 00 20 */ blr + +.global UpdatePatternDestPos__10CPatternedFR13CStateManager +UpdatePatternDestPos__10CPatternedFR13CStateManager: +/* 801F40F4 001F1054 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 801F40F8 001F1058 7C 08 02 A6 */ mflr r0 +/* 801F40FC 001F105C 90 01 00 84 */ stw r0, 0x84(r1) +/* 801F4100 001F1060 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 801F4104 001F1064 7C 9F 23 78 */ mr r31, r4 +/* 801F4108 001F1068 93 C1 00 78 */ stw r30, 0x78(r1) +/* 801F410C 001F106C 7C 7E 1B 78 */ mr r30, r3 +/* 801F4110 001F1070 80 63 03 9C */ lwz r3, 0x39c(r3) +/* 801F4114 001F1074 80 1E 03 90 */ lwz r0, 0x390(r30) +/* 801F4118 001F1078 7C 03 00 00 */ cmpw r3, r0 +/* 801F411C 001F107C 40 80 01 78 */ bge lbl_801F4294 +/* 801F4120 001F1080 C0 22 AF 20 */ lfs f1, lbl_805ACC40@sda21(r2) +/* 801F4124 001F1084 38 00 00 00 */ li r0, 0 +/* 801F4128 001F1088 C0 1E 03 68 */ lfs f0, 0x368(r30) +/* 801F412C 001F108C FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 801F4130 001F1090 40 82 00 1C */ bne lbl_801F414C +/* 801F4134 001F1094 C0 1E 03 6C */ lfs f0, 0x36c(r30) +/* 801F4138 001F1098 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 801F413C 001F109C 40 82 00 10 */ bne lbl_801F414C +/* 801F4140 001F10A0 C0 1E 03 70 */ lfs f0, 0x370(r30) +/* 801F4144 001F10A4 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 801F4148 001F10A8 41 82 00 08 */ beq lbl_801F4150 +lbl_801F414C: +/* 801F414C 001F10AC 38 00 00 01 */ li r0, 1 +lbl_801F4150: +/* 801F4150 001F10B0 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 801F4154 001F10B4 41 82 01 2C */ beq lbl_801F4280 +/* 801F4158 001F10B8 7F C4 F3 78 */ mr r4, r30 +/* 801F415C 001F10BC 7F E5 FB 78 */ mr r5, r31 +/* 801F4160 001F10C0 38 61 00 60 */ addi r3, r1, 0x60 +/* 801F4164 001F10C4 48 00 0A DD */ bl FindPatternDir__10CPatternedFR13CStateManager +/* 801F4168 001F10C8 C0 41 00 60 */ lfs f2, 0x60(r1) +/* 801F416C 001F10CC 7F C4 F3 78 */ mr r4, r30 +/* 801F4170 001F10D0 C0 21 00 64 */ lfs f1, 0x64(r1) +/* 801F4174 001F10D4 38 61 00 44 */ addi r3, r1, 0x44 +/* 801F4178 001F10D8 C0 01 00 68 */ lfs f0, 0x68(r1) +/* 801F417C 001F10DC 38 A1 00 6C */ addi r5, r1, 0x6c +/* 801F4180 001F10E0 D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 801F4184 001F10E4 D0 21 00 70 */ stfs f1, 0x70(r1) +/* 801F4188 001F10E8 D0 01 00 74 */ stfs f0, 0x74(r1) +/* 801F418C 001F10EC 48 00 08 91 */ bl FindPatternRotation__10CPatternedFRC9CVector3f +/* 801F4190 001F10F0 80 1E 03 9C */ lwz r0, 0x39c(r30) +/* 801F4194 001F10F4 38 61 00 54 */ addi r3, r1, 0x54 +/* 801F4198 001F10F8 80 BE 03 98 */ lwz r5, 0x398(r30) +/* 801F419C 001F10FC 38 81 00 44 */ addi r4, r1, 0x44 +/* 801F41A0 001F1100 1C 00 00 24 */ mulli r0, r0, 0x24 +/* 801F41A4 001F1104 7C A5 02 14 */ add r5, r5, r0 +/* 801F41A8 001F1108 48 11 D0 BD */ bl Transform__11CQuaternionCFRC9CVector3f +/* 801F41AC 001F110C 7F C3 F3 78 */ mr r3, r30 +/* 801F41B0 001F1110 38 81 00 54 */ addi r4, r1, 0x54 +/* 801F41B4 001F1114 4B E8 89 A9 */ bl SetDestPos__10CPatternedFRC9CVector3f +/* 801F41B8 001F1118 80 1E 03 7C */ lwz r0, 0x37c(r30) +/* 801F41BC 001F111C 2C 00 00 00 */ cmpwi r0, 0 +/* 801F41C0 001F1120 41 82 00 08 */ beq lbl_801F41C8 +/* 801F41C4 001F1124 48 00 00 D0 */ b lbl_801F4294 +lbl_801F41C8: +/* 801F41C8 001F1128 88 1E 03 28 */ lbz r0, 0x328(r30) +/* 801F41CC 001F112C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801F41D0 001F1130 41 82 00 4C */ beq lbl_801F421C +/* 801F41D4 001F1134 C0 01 00 6C */ lfs f0, 0x6c(r1) +/* 801F41D8 001F1138 C0 41 00 70 */ lfs f2, 0x70(r1) +/* 801F41DC 001F113C C0 3E 03 68 */ lfs f1, 0x368(r30) +/* 801F41E0 001F1140 EC 60 00 32 */ fmuls f3, f0, f0 +/* 801F41E4 001F1144 C0 1E 03 6C */ lfs f0, 0x36c(r30) +/* 801F41E8 001F1148 EC 42 00 B2 */ fmuls f2, f2, f2 +/* 801F41EC 001F114C C0 81 00 74 */ lfs f4, 0x74(r1) +/* 801F41F0 001F1150 EC 21 00 72 */ fmuls f1, f1, f1 +/* 801F41F4 001F1154 EC 00 00 32 */ fmuls f0, f0, f0 +/* 801F41F8 001F1158 C0 BE 03 70 */ lfs f5, 0x370(r30) +/* 801F41FC 001F115C EC 84 01 32 */ fmuls f4, f4, f4 +/* 801F4200 001F1160 EC 63 10 2A */ fadds f3, f3, f2 +/* 801F4204 001F1164 EC 45 01 72 */ fmuls f2, f5, f5 +/* 801F4208 001F1168 EC 01 00 2A */ fadds f0, f1, f0 +/* 801F420C 001F116C EC 24 18 2A */ fadds f1, f4, f3 +/* 801F4210 001F1170 EC 02 00 2A */ fadds f0, f2, f0 +/* 801F4214 001F1174 EC 21 00 24 */ fdivs f1, f1, f0 +/* 801F4218 001F1178 48 00 00 30 */ b lbl_801F4248 +lbl_801F421C: +/* 801F421C 001F117C C0 01 00 6C */ lfs f0, 0x6c(r1) +/* 801F4220 001F1180 C0 41 00 70 */ lfs f2, 0x70(r1) +/* 801F4224 001F1184 C0 3E 03 68 */ lfs f1, 0x368(r30) +/* 801F4228 001F1188 EC 60 00 32 */ fmuls f3, f0, f0 +/* 801F422C 001F118C C0 1E 03 6C */ lfs f0, 0x36c(r30) +/* 801F4230 001F1190 EC 42 00 B2 */ fmuls f2, f2, f2 +/* 801F4234 001F1194 EC 21 00 72 */ fmuls f1, f1, f1 +/* 801F4238 001F1198 EC 00 00 32 */ fmuls f0, f0, f0 +/* 801F423C 001F119C EC 43 10 2A */ fadds f2, f3, f2 +/* 801F4240 001F11A0 EC 01 00 2A */ fadds f0, f1, f0 +/* 801F4244 001F11A4 EC 22 00 24 */ fdivs f1, f2, f0 +lbl_801F4248: +/* 801F4248 001F11A8 48 12 12 B9 */ bl SqrtF__5CMathFf +/* 801F424C 001F11AC C0 7E 02 E4 */ lfs f3, 0x2e4(r30) +/* 801F4250 001F11B0 7F C3 F3 78 */ mr r3, r30 +/* 801F4254 001F11B4 C0 5E 02 E8 */ lfs f2, 0x2e8(r30) +/* 801F4258 001F11B8 38 81 00 38 */ addi r4, r1, 0x38 +/* 801F425C 001F11BC C0 1E 02 E0 */ lfs f0, 0x2e0(r30) +/* 801F4260 001F11C0 EC 61 00 F2 */ fmuls f3, f1, f3 +/* 801F4264 001F11C4 EC 41 00 B2 */ fmuls f2, f1, f2 +/* 801F4268 001F11C8 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801F426C 001F11CC D0 61 00 3C */ stfs f3, 0x3c(r1) +/* 801F4270 001F11D0 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 801F4274 001F11D4 D0 41 00 40 */ stfs f2, 0x40(r1) +/* 801F4278 001F11D8 4B E8 88 E5 */ bl SetDestPos__10CPatternedFRC9CVector3f +/* 801F427C 001F11DC 48 00 00 18 */ b lbl_801F4294 +lbl_801F4280: +/* 801F4280 001F11E0 1C 03 00 24 */ mulli r0, r3, 0x24 +/* 801F4284 001F11E4 80 9E 03 98 */ lwz r4, 0x398(r30) +/* 801F4288 001F11E8 7F C3 F3 78 */ mr r3, r30 +/* 801F428C 001F11EC 7C 84 02 14 */ add r4, r4, r0 +/* 801F4290 001F11F0 4B E8 88 CD */ bl SetDestPos__10CPatternedFRC9CVector3f +lbl_801F4294: +/* 801F4294 001F11F4 80 1E 03 74 */ lwz r0, 0x374(r30) +/* 801F4298 001F11F8 2C 00 00 01 */ cmpwi r0, 1 +/* 801F429C 001F11FC 41 82 00 60 */ beq lbl_801F42FC +/* 801F42A0 001F1200 40 80 00 10 */ bge lbl_801F42B0 +/* 801F42A4 001F1204 2C 00 00 00 */ cmpwi r0, 0 +/* 801F42A8 001F1208 40 80 00 14 */ bge lbl_801F42BC +/* 801F42AC 001F120C 48 00 00 DC */ b lbl_801F4388 +lbl_801F42B0: +/* 801F42B0 001F1210 2C 00 00 03 */ cmpwi r0, 3 +/* 801F42B4 001F1214 40 80 00 D4 */ bge lbl_801F4388 +/* 801F42B8 001F1218 48 00 00 84 */ b lbl_801F433C +lbl_801F42BC: +/* 801F42BC 001F121C C0 3E 02 E4 */ lfs f1, 0x2e4(r30) +/* 801F42C0 001F1220 7F C3 F3 78 */ mr r3, r30 +/* 801F42C4 001F1224 C0 1E 03 54 */ lfs f0, 0x354(r30) +/* 801F42C8 001F1228 38 81 00 2C */ addi r4, r1, 0x2c +/* 801F42CC 001F122C C0 7E 02 E8 */ lfs f3, 0x2e8(r30) +/* 801F42D0 001F1230 C0 5E 03 58 */ lfs f2, 0x358(r30) +/* 801F42D4 001F1234 EC 81 00 2A */ fadds f4, f1, f0 +/* 801F42D8 001F1238 C0 3E 02 E0 */ lfs f1, 0x2e0(r30) +/* 801F42DC 001F123C C0 1E 03 50 */ lfs f0, 0x350(r30) +/* 801F42E0 001F1240 EC 43 10 2A */ fadds f2, f3, f2 +/* 801F42E4 001F1244 EC 01 00 2A */ fadds f0, f1, f0 +/* 801F42E8 001F1248 D0 81 00 30 */ stfs f4, 0x30(r1) +/* 801F42EC 001F124C D0 41 00 34 */ stfs f2, 0x34(r1) +/* 801F42F0 001F1250 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801F42F4 001F1254 4B E8 88 69 */ bl SetDestPos__10CPatternedFRC9CVector3f +/* 801F42F8 001F1258 48 00 00 90 */ b lbl_801F4388 +lbl_801F42FC: +/* 801F42FC 001F125C C0 3E 02 E4 */ lfs f1, 0x2e4(r30) +/* 801F4300 001F1260 7F C3 F3 78 */ mr r3, r30 +/* 801F4304 001F1264 C0 1E 03 60 */ lfs f0, 0x360(r30) +/* 801F4308 001F1268 38 81 00 20 */ addi r4, r1, 0x20 +/* 801F430C 001F126C C0 7E 02 E8 */ lfs f3, 0x2e8(r30) +/* 801F4310 001F1270 C0 5E 03 64 */ lfs f2, 0x364(r30) +/* 801F4314 001F1274 EC 81 00 2A */ fadds f4, f1, f0 +/* 801F4318 001F1278 C0 3E 02 E0 */ lfs f1, 0x2e0(r30) +/* 801F431C 001F127C C0 1E 03 5C */ lfs f0, 0x35c(r30) +/* 801F4320 001F1280 EC 43 10 2A */ fadds f2, f3, f2 +/* 801F4324 001F1284 EC 01 00 2A */ fadds f0, f1, f0 +/* 801F4328 001F1288 D0 81 00 24 */ stfs f4, 0x24(r1) +/* 801F432C 001F128C D0 41 00 28 */ stfs f2, 0x28(r1) +/* 801F4330 001F1290 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801F4334 001F1294 4B E8 88 29 */ bl SetDestPos__10CPatternedFRC9CVector3f +/* 801F4338 001F1298 48 00 00 50 */ b lbl_801F4388 +lbl_801F433C: +/* 801F433C 001F129C 80 BF 08 4C */ lwz r5, 0x84c(r31) +/* 801F4340 001F12A0 7F C3 F3 78 */ mr r3, r30 +/* 801F4344 001F12A4 C0 1E 02 E4 */ lfs f0, 0x2e4(r30) +/* 801F4348 001F12A8 38 81 00 14 */ addi r4, r1, 0x14 +/* 801F434C 001F12AC C0 85 00 50 */ lfs f4, 0x50(r5) +/* 801F4350 001F12B0 C0 A5 00 60 */ lfs f5, 0x60(r5) +/* 801F4354 001F12B4 C0 45 00 40 */ lfs f2, 0x40(r5) +/* 801F4358 001F12B8 EC 60 20 2A */ fadds f3, f0, f4 +/* 801F435C 001F12BC C0 3E 02 E8 */ lfs f1, 0x2e8(r30) +/* 801F4360 001F12C0 C0 1E 02 E0 */ lfs f0, 0x2e0(r30) +/* 801F4364 001F12C4 EC 21 28 2A */ fadds f1, f1, f5 +/* 801F4368 001F12C8 D0 41 00 08 */ stfs f2, 8(r1) +/* 801F436C 001F12CC EC 00 10 2A */ fadds f0, f0, f2 +/* 801F4370 001F12D0 D0 81 00 0C */ stfs f4, 0xc(r1) +/* 801F4374 001F12D4 D0 A1 00 10 */ stfs f5, 0x10(r1) +/* 801F4378 001F12D8 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801F437C 001F12DC D0 61 00 18 */ stfs f3, 0x18(r1) +/* 801F4380 001F12E0 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 801F4384 001F12E4 4B E8 87 D9 */ bl SetDestPos__10CPatternedFRC9CVector3f +lbl_801F4388: +/* 801F4388 001F12E8 80 01 00 84 */ lwz r0, 0x84(r1) +/* 801F438C 001F12EC 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 801F4390 001F12F0 83 C1 00 78 */ lwz r30, 0x78(r1) +/* 801F4394 001F12F4 7C 08 03 A6 */ mtlr r0 +/* 801F4398 001F12F8 38 21 00 80 */ addi r1, r1, 0x80 +/* 801F439C 001F12FC 4E 80 00 20 */ blr + +.global SetupPattern__10CPatternedFR13CStateManager +SetupPattern__10CPatternedFR13CStateManager: +/* 801F43A0 001F1300 94 21 FE A0 */ stwu r1, -0x160(r1) +/* 801F43A4 001F1304 7C 08 02 A6 */ mflr r0 +/* 801F43A8 001F1308 90 01 01 64 */ stw r0, 0x164(r1) +/* 801F43AC 001F130C DB E1 01 50 */ stfd f31, 0x150(r1) +/* 801F43B0 001F1310 F3 E1 01 58 */ psq_st f31, 344(r1), 0, qr0 +/* 801F43B4 001F1314 DB C1 01 40 */ stfd f30, 0x140(r1) +/* 801F43B8 001F1318 F3 C1 01 48 */ psq_st f30, 328(r1), 0, qr0 +/* 801F43BC 001F131C DB A1 01 30 */ stfd f29, 0x130(r1) +/* 801F43C0 001F1320 F3 A1 01 38 */ psq_st f29, 312(r1), 0, qr0 +/* 801F43C4 001F1324 DB 81 01 20 */ stfd f28, 0x120(r1) +/* 801F43C8 001F1328 F3 81 01 28 */ psq_st f28, 296(r1), 0, qr0 +/* 801F43CC 001F132C DB 61 01 10 */ stfd f27, 0x110(r1) +/* 801F43D0 001F1330 F3 61 01 18 */ psq_st f27, 280(r1), 0, qr0 +/* 801F43D4 001F1334 DB 41 01 00 */ stfd f26, 0x100(r1) +/* 801F43D8 001F1338 F3 41 01 08 */ psq_st f26, 264(r1), 0, qr0 +/* 801F43DC 001F133C DB 21 00 F0 */ stfd f25, 0xf0(r1) +/* 801F43E0 001F1340 F3 21 00 F8 */ psq_st f25, 248(r1), 0, qr0 +/* 801F43E4 001F1344 DB 01 00 E0 */ stfd f24, 0xe0(r1) +/* 801F43E8 001F1348 F3 01 00 E8 */ psq_st f24, 232(r1), 0, qr0 +/* 801F43EC 001F134C DA E1 00 D0 */ stfd f23, 0xd0(r1) +/* 801F43F0 001F1350 F2 E1 00 D8 */ psq_st f23, 216(r1), 0, qr0 +/* 801F43F4 001F1354 DA C1 00 C0 */ stfd f22, 0xc0(r1) +/* 801F43F8 001F1358 F2 C1 00 C8 */ psq_st f22, 200(r1), 0, qr0 +/* 801F43FC 001F135C DA A1 00 B0 */ stfd f21, 0xb0(r1) +/* 801F4400 001F1360 F2 A1 00 B8 */ psq_st f21, 184(r1), 0, qr0 +/* 801F4404 001F1364 BF 01 00 90 */ stmw r24, 0x90(r1) +/* 801F4408 001F1368 7C 7C 1B 78 */ mr r28, r3 +/* 801F440C 001F136C 7C 9D 23 78 */ mr r29, r4 +/* 801F4410 001F1370 48 00 04 C5 */ bl GetDesiredAttackState__10CPatternedCFR13CStateManager +/* 801F4414 001F1374 7C 78 1B 78 */ mr r24, r3 +/* 801F4418 001F1378 7F 84 E3 78 */ mr r4, r28 +/* 801F441C 001F137C 7F A5 EB 78 */ mr r5, r29 +/* 801F4420 001F1380 38 61 00 1C */ addi r3, r1, 0x1c +/* 801F4424 001F1384 7F 06 C3 78 */ mr r6, r24 +/* 801F4428 001F1388 38 E0 00 06 */ li r7, 6 +/* 801F442C 001F138C 48 00 0B 6D */ bl GetWaypointForState__10CPatternedFR13CStateManager18EScriptObjectState +/* 801F4430 001F1390 A0 01 00 1C */ lhz r0, 0x1c(r1) +/* 801F4434 001F1394 B0 1C 02 DC */ sth r0, 0x2dc(r28) +/* 801F4438 001F1398 A0 6D A3 8C */ lhz r3, lbl_805A8F4C@sda21(r13) +/* 801F443C 001F139C A0 1C 02 DC */ lhz r0, 0x2dc(r28) +/* 801F4440 001F13A0 7C 03 00 40 */ cmplw r3, r0 +/* 801F4444 001F13A4 40 82 00 2C */ bne lbl_801F4470 +/* 801F4448 001F13A8 2C 18 00 0A */ cmpwi r24, 0xa +/* 801F444C 001F13AC 41 82 00 24 */ beq lbl_801F4470 +/* 801F4450 001F13B0 7F 84 E3 78 */ mr r4, r28 +/* 801F4454 001F13B4 7F A5 EB 78 */ mr r5, r29 +/* 801F4458 001F13B8 38 61 00 18 */ addi r3, r1, 0x18 +/* 801F445C 001F13BC 38 C0 00 0A */ li r6, 0xa +/* 801F4460 001F13C0 38 E0 00 06 */ li r7, 6 +/* 801F4464 001F13C4 48 00 0B 35 */ bl GetWaypointForState__10CPatternedFR13CStateManager18EScriptObjectState +/* 801F4468 001F13C8 A0 01 00 18 */ lhz r0, 0x18(r1) +/* 801F446C 001F13CC B0 1C 02 DC */ sth r0, 0x2dc(r28) +lbl_801F4470: +/* 801F4470 001F13D0 80 1C 03 90 */ lwz r0, 0x390(r28) +/* 801F4474 001F13D4 80 7C 03 98 */ lwz r3, 0x398(r28) +/* 801F4478 001F13D8 1C 00 00 24 */ mulli r0, r0, 0x24 +/* 801F447C 001F13DC 90 61 00 24 */ stw r3, 0x24(r1) +/* 801F4480 001F13E0 7C 03 02 14 */ add r0, r3, r0 +/* 801F4484 001F13E4 90 61 00 20 */ stw r3, 0x20(r1) +/* 801F4488 001F13E8 90 01 00 2C */ stw r0, 0x2c(r1) +/* 801F448C 001F13EC 90 01 00 28 */ stw r0, 0x28(r1) +/* 801F4490 001F13F0 48 00 00 08 */ b lbl_801F4498 +lbl_801F4494: +/* 801F4494 001F13F4 38 63 00 24 */ addi r3, r3, 0x24 +lbl_801F4498: +/* 801F4498 001F13F8 7C 03 00 40 */ cmplw r3, r0 +/* 801F449C 001F13FC 40 82 FF F8 */ bne lbl_801F4494 +/* 801F44A0 001F1400 38 00 00 00 */ li r0, 0 +/* 801F44A4 001F1404 90 1C 03 90 */ stw r0, 0x390(r28) +/* 801F44A8 001F1408 A0 6D A3 8C */ lhz r3, lbl_805A8F4C@sda21(r13) +/* 801F44AC 001F140C A0 1C 02 DC */ lhz r0, 0x2dc(r28) +/* 801F44B0 001F1410 7C 03 00 40 */ cmplw r3, r0 +/* 801F44B4 001F1414 41 82 03 40 */ beq lbl_801F47F4 +/* 801F44B8 001F1418 C0 5C 00 60 */ lfs f2, 0x60(r28) +/* 801F44BC 001F141C 7F 84 E3 78 */ mr r4, r28 +/* 801F44C0 001F1420 C0 3C 00 50 */ lfs f1, 0x50(r28) +/* 801F44C4 001F1424 7F A5 EB 78 */ mr r5, r29 +/* 801F44C8 001F1428 C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 801F44CC 001F142C 38 61 00 40 */ addi r3, r1, 0x40 +/* 801F44D0 001F1430 D0 1C 03 50 */ stfs f0, 0x350(r28) +/* 801F44D4 001F1434 D0 3C 03 54 */ stfs f1, 0x354(r28) +/* 801F44D8 001F1438 D0 5C 03 58 */ stfs f2, 0x358(r28) +/* 801F44DC 001F143C 80 DD 08 4C */ lwz r6, 0x84c(r29) +/* 801F44E0 001F1440 C0 46 00 60 */ lfs f2, 0x60(r6) +/* 801F44E4 001F1444 C0 26 00 50 */ lfs f1, 0x50(r6) +/* 801F44E8 001F1448 C0 06 00 40 */ lfs f0, 0x40(r6) +/* 801F44EC 001F144C D0 1C 03 5C */ stfs f0, 0x35c(r28) +/* 801F44F0 001F1450 D0 3C 03 60 */ stfs f1, 0x360(r28) +/* 801F44F4 001F1454 D0 5C 03 64 */ stfs f2, 0x364(r28) +/* 801F44F8 001F1458 48 00 04 7D */ bl GetDestWaypoints__10CPatternedCFR13CStateManager +/* 801F44FC 001F145C 83 C1 00 40 */ lwz r30, 0x40(r1) +/* 801F4500 001F1460 83 E1 00 44 */ lwz r31, 0x44(r1) +/* 801F4504 001F1464 28 1E 00 00 */ cmplwi r30, 0 +/* 801F4508 001F1468 41 82 02 EC */ beq lbl_801F47F4 +/* 801F450C 001F146C 88 1E 00 F4 */ lbz r0, 0xf4(r30) +/* 801F4510 001F1470 28 1F 00 00 */ cmplwi r31, 0 +/* 801F4514 001F1474 90 1C 03 74 */ stw r0, 0x374(r28) +/* 801F4518 001F1478 88 1E 00 F5 */ lbz r0, 0xf5(r30) +/* 801F451C 001F147C 90 1C 03 78 */ stw r0, 0x378(r28) +/* 801F4520 001F1480 88 1E 00 F6 */ lbz r0, 0xf6(r30) +/* 801F4524 001F1484 90 1C 03 7C */ stw r0, 0x37c(r28) +/* 801F4528 001F1488 41 82 00 38 */ beq lbl_801F4560 +/* 801F452C 001F148C C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 801F4530 001F1490 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801F4534 001F1494 C0 9F 00 50 */ lfs f4, 0x50(r31) +/* 801F4538 001F1498 C0 7E 00 50 */ lfs f3, 0x50(r30) +/* 801F453C 001F149C EC 01 00 28 */ fsubs f0, f1, f0 +/* 801F4540 001F14A0 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 801F4544 001F14A4 C0 3E 00 60 */ lfs f1, 0x60(r30) +/* 801F4548 001F14A8 EC 64 18 28 */ fsubs f3, f4, f3 +/* 801F454C 001F14AC D0 1C 03 68 */ stfs f0, 0x368(r28) +/* 801F4550 001F14B0 EC 02 08 28 */ fsubs f0, f2, f1 +/* 801F4554 001F14B4 D0 7C 03 6C */ stfs f3, 0x36c(r28) +/* 801F4558 001F14B8 D0 1C 03 70 */ stfs f0, 0x370(r28) +/* 801F455C 001F14BC 48 00 00 20 */ b lbl_801F457C +lbl_801F4560: +/* 801F4560 001F14C0 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801F4564 001F14C4 C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) +/* 801F4568 001F14C8 D0 1C 03 68 */ stfs f0, 0x368(r28) +/* 801F456C 001F14CC C0 03 00 04 */ lfs f0, 4(r3) +/* 801F4570 001F14D0 D0 1C 03 6C */ stfs f0, 0x36c(r28) +/* 801F4574 001F14D4 C0 03 00 08 */ lfs f0, 8(r3) +/* 801F4578 001F14D8 D0 1C 03 70 */ stfs f0, 0x370(r28) +lbl_801F457C: +/* 801F457C 001F14DC 3B 00 00 00 */ li r24, 0 +/* 801F4580 001F14E0 7F C4 F3 78 */ mr r4, r30 +lbl_801F4584: +/* 801F4584 001F14E4 7F A5 EB 78 */ mr r5, r29 +/* 801F4588 001F14E8 38 61 00 10 */ addi r3, r1, 0x10 +/* 801F458C 001F14EC 3B 18 00 01 */ addi r24, r24, 1 +/* 801F4590 001F14F0 4B E8 2B A5 */ bl NextWaypoint__15CScriptWaypointCFR13CStateManager +/* 801F4594 001F14F4 A0 01 00 10 */ lhz r0, 0x10(r1) +/* 801F4598 001F14F8 7F A3 EB 78 */ mr r3, r29 +/* 801F459C 001F14FC 38 81 00 14 */ addi r4, r1, 0x14 +/* 801F45A0 001F1500 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801F45A4 001F1504 4B E5 7F D1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801F45A8 001F1508 7C 64 1B 78 */ mr r4, r3 +/* 801F45AC 001F150C 38 61 00 38 */ addi r3, r1, 0x38 +/* 801F45B0 001F1510 4B EB 1F 9D */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 801F45B4 001F1514 80 83 00 04 */ lwz r4, 4(r3) +/* 801F45B8 001F1518 28 04 00 00 */ cmplwi r4, 0 +/* 801F45BC 001F151C 41 82 00 14 */ beq lbl_801F45D0 +/* 801F45C0 001F1520 A0 64 00 08 */ lhz r3, 8(r4) +/* 801F45C4 001F1524 A0 1E 00 08 */ lhz r0, 8(r30) +/* 801F45C8 001F1528 7C 03 00 40 */ cmplw r3, r0 +/* 801F45CC 001F152C 40 82 FF B8 */ bne lbl_801F4584 +lbl_801F45D0: +/* 801F45D0 001F1530 7F 04 C3 78 */ mr r4, r24 +/* 801F45D4 001F1534 38 7C 03 8C */ addi r3, r28, 0x38c +/* 801F45D8 001F1538 48 00 2A D1 */ bl "reserve__Q24rstl63vectorFi" +/* 801F45DC 001F153C 80 1C 03 74 */ lwz r0, 0x374(r28) +/* 801F45E0 001F1540 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801F45E4 001F1544 C7 E3 66 A0 */ lfsu f31, skZero3f@l(r3) +/* 801F45E8 001F1548 2C 00 00 02 */ cmpwi r0, 2 +/* 801F45EC 001F154C C3 C3 00 04 */ lfs f30, 4(r3) +/* 801F45F0 001F1550 C3 A3 00 08 */ lfs f29, 8(r3) +/* 801F45F4 001F1554 41 82 00 38 */ beq lbl_801F462C +/* 801F45F8 001F1558 40 80 00 10 */ bge lbl_801F4608 +/* 801F45FC 001F155C 2C 00 00 01 */ cmpwi r0, 1 +/* 801F4600 001F1560 40 80 00 14 */ bge lbl_801F4614 +/* 801F4604 001F1564 48 00 00 28 */ b lbl_801F462C +lbl_801F4608: +/* 801F4608 001F1568 2C 00 00 04 */ cmpwi r0, 4 +/* 801F460C 001F156C 40 80 00 20 */ bge lbl_801F462C +/* 801F4610 001F1570 48 00 00 28 */ b lbl_801F4638 +lbl_801F4614: +/* 801F4614 001F1574 28 1F 00 00 */ cmplwi r31, 0 +/* 801F4618 001F1578 41 82 00 20 */ beq lbl_801F4638 +/* 801F461C 001F157C C3 FF 00 40 */ lfs f31, 0x40(r31) +/* 801F4620 001F1580 C3 DF 00 50 */ lfs f30, 0x50(r31) +/* 801F4624 001F1584 C3 BF 00 60 */ lfs f29, 0x60(r31) +/* 801F4628 001F1588 48 00 00 10 */ b lbl_801F4638 +lbl_801F462C: +/* 801F462C 001F158C C3 FE 00 40 */ lfs f31, 0x40(r30) +/* 801F4630 001F1590 C3 DE 00 50 */ lfs f30, 0x50(r30) +/* 801F4634 001F1594 C3 BE 00 60 */ lfs f29, 0x60(r30) +lbl_801F4638: +/* 801F4638 001F1598 7F DF F3 78 */ mr r31, r30 +/* 801F463C 001F159C C3 82 AF 20 */ lfs f28, lbl_805ACC40@sda21(r2) +lbl_801F4640: +/* 801F4640 001F15A0 80 7C 03 90 */ lwz r3, 0x390(r28) +/* 801F4644 001F15A4 80 1C 03 94 */ lwz r0, 0x394(r28) +/* 801F4648 001F15A8 7C 03 00 00 */ cmpw r3, r0 +/* 801F464C 001F15AC 40 80 01 A8 */ bge lbl_801F47F4 +/* 801F4650 001F15B0 C0 5F 00 58 */ lfs f2, 0x58(r31) +/* 801F4654 001F15B4 38 00 00 00 */ li r0, 0 +/* 801F4658 001F15B8 C0 3F 00 48 */ lfs f1, 0x48(r31) +/* 801F465C 001F15BC C0 1F 00 38 */ lfs f0, 0x38(r31) +/* 801F4660 001F15C0 D0 01 00 7C */ stfs f0, 0x7c(r1) +/* 801F4664 001F15C4 D0 21 00 80 */ stfs f1, 0x80(r1) +/* 801F4668 001F15C8 D0 41 00 84 */ stfs f2, 0x84(r1) +/* 801F466C 001F15CC C0 1C 03 68 */ lfs f0, 0x368(r28) +/* 801F4670 001F15D0 FC 1C 00 00 */ fcmpu cr0, f28, f0 +/* 801F4674 001F15D4 40 82 00 1C */ bne lbl_801F4690 +/* 801F4678 001F15D8 C0 1C 03 6C */ lfs f0, 0x36c(r28) +/* 801F467C 001F15DC FC 1C 00 00 */ fcmpu cr0, f28, f0 +/* 801F4680 001F15E0 40 82 00 10 */ bne lbl_801F4690 +/* 801F4684 001F15E4 C0 1C 03 70 */ lfs f0, 0x370(r28) +/* 801F4688 001F15E8 FC 1C 00 00 */ fcmpu cr0, f28, f0 +/* 801F468C 001F15EC 41 82 00 08 */ beq lbl_801F4694 +lbl_801F4690: +/* 801F4690 001F15F0 38 00 00 01 */ li r0, 1 +lbl_801F4694: +/* 801F4694 001F15F4 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 801F4698 001F15F8 41 82 00 64 */ beq lbl_801F46FC +/* 801F469C 001F15FC 7F 84 E3 78 */ mr r4, r28 +/* 801F46A0 001F1600 7F A5 EB 78 */ mr r5, r29 +/* 801F46A4 001F1604 38 61 00 64 */ addi r3, r1, 0x64 +/* 801F46A8 001F1608 48 00 05 99 */ bl FindPatternDir__10CPatternedFR13CStateManager +/* 801F46AC 001F160C C0 41 00 64 */ lfs f2, 0x64(r1) +/* 801F46B0 001F1610 7F 84 E3 78 */ mr r4, r28 +/* 801F46B4 001F1614 C0 21 00 68 */ lfs f1, 0x68(r1) +/* 801F46B8 001F1618 38 61 00 48 */ addi r3, r1, 0x48 +/* 801F46BC 001F161C C0 01 00 6C */ lfs f0, 0x6c(r1) +/* 801F46C0 001F1620 38 A1 00 70 */ addi r5, r1, 0x70 +/* 801F46C4 001F1624 D0 41 00 70 */ stfs f2, 0x70(r1) +/* 801F46C8 001F1628 D0 21 00 74 */ stfs f1, 0x74(r1) +/* 801F46CC 001F162C D0 01 00 78 */ stfs f0, 0x78(r1) +/* 801F46D0 001F1630 48 00 03 4D */ bl FindPatternRotation__10CPatternedFRC9CVector3f +/* 801F46D4 001F1634 38 61 00 58 */ addi r3, r1, 0x58 +/* 801F46D8 001F1638 38 81 00 48 */ addi r4, r1, 0x48 +/* 801F46DC 001F163C 38 A1 00 7C */ addi r5, r1, 0x7c +/* 801F46E0 001F1640 48 11 CB 85 */ bl Transform__11CQuaternionCFRC9CVector3f +/* 801F46E4 001F1644 C0 41 00 58 */ lfs f2, 0x58(r1) +/* 801F46E8 001F1648 C0 21 00 5C */ lfs f1, 0x5c(r1) +/* 801F46EC 001F164C C0 01 00 60 */ lfs f0, 0x60(r1) +/* 801F46F0 001F1650 D0 41 00 7C */ stfs f2, 0x7c(r1) +/* 801F46F4 001F1654 D0 21 00 80 */ stfs f1, 0x80(r1) +/* 801F46F8 001F1658 D0 01 00 84 */ stfs f0, 0x84(r1) +lbl_801F46FC: +/* 801F46FC 001F165C C0 5F 00 40 */ lfs f2, 0x40(r31) +/* 801F4700 001F1660 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 801F4704 001F1664 C0 1F 00 60 */ lfs f0, 0x60(r31) +/* 801F4708 001F1668 EF 22 F8 28 */ fsubs f25, f2, f31 +/* 801F470C 001F166C 80 1C 03 90 */ lwz r0, 0x390(r28) +/* 801F4710 001F1670 EF 41 F0 28 */ fsubs f26, f1, f30 +/* 801F4714 001F1674 80 BC 03 94 */ lwz r5, 0x394(r28) +/* 801F4718 001F1678 EF 60 E8 28 */ fsubs f27, f0, f29 +/* 801F471C 001F167C 83 1F 00 EC */ lwz r24, 0xec(r31) +/* 801F4720 001F1680 7C 00 28 00 */ cmpw r0, r5 +/* 801F4724 001F1684 C3 1F 00 E8 */ lfs f24, 0xe8(r31) +/* 801F4728 001F1688 C2 E1 00 7C */ lfs f23, 0x7c(r1) +/* 801F472C 001F168C C2 C1 00 80 */ lfs f22, 0x80(r1) +/* 801F4730 001F1690 C2 A1 00 84 */ lfs f21, 0x84(r1) +/* 801F4734 001F1694 8B 3F 00 F7 */ lbz r25, 0xf7(r31) +/* 801F4738 001F1698 8B 5F 00 F8 */ lbz r26, 0xf8(r31) +/* 801F473C 001F169C A3 7F 00 FA */ lhz r27, 0xfa(r31) +/* 801F4740 001F16A0 41 80 00 1C */ blt lbl_801F475C +/* 801F4744 001F16A4 2C 05 00 00 */ cmpwi r5, 0 +/* 801F4748 001F16A8 38 7C 03 8C */ addi r3, r28, 0x38c +/* 801F474C 001F16AC 38 80 00 04 */ li r4, 4 +/* 801F4750 001F16B0 41 82 00 08 */ beq lbl_801F4758 +/* 801F4754 001F16B4 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801F4758: +/* 801F4758 001F16B8 48 00 29 51 */ bl "reserve__Q24rstl63vectorFi" +lbl_801F475C: +/* 801F475C 001F16BC 80 1C 03 90 */ lwz r0, 0x390(r28) +/* 801F4760 001F16C0 80 7C 03 98 */ lwz r3, 0x398(r28) +/* 801F4764 001F16C4 1C 00 00 24 */ mulli r0, r0, 0x24 +/* 801F4768 001F16C8 7C 63 02 15 */ add. r3, r3, r0 +/* 801F476C 001F16CC 41 82 00 30 */ beq lbl_801F479C +/* 801F4770 001F16D0 D3 23 00 00 */ stfs f25, 0(r3) +/* 801F4774 001F16D4 D3 43 00 04 */ stfs f26, 4(r3) +/* 801F4778 001F16D8 D3 63 00 08 */ stfs f27, 8(r3) +/* 801F477C 001F16DC D2 E3 00 0C */ stfs f23, 0xc(r3) +/* 801F4780 001F16E0 D2 C3 00 10 */ stfs f22, 0x10(r3) +/* 801F4784 001F16E4 D2 A3 00 14 */ stfs f21, 0x14(r3) +/* 801F4788 001F16E8 D3 03 00 18 */ stfs f24, 0x18(r3) +/* 801F478C 001F16EC 9B 23 00 1C */ stb r25, 0x1c(r3) +/* 801F4790 001F16F0 9B 43 00 1D */ stb r26, 0x1d(r3) +/* 801F4794 001F16F4 B3 63 00 1E */ sth r27, 0x1e(r3) +/* 801F4798 001F16F8 93 03 00 20 */ stw r24, 0x20(r3) +lbl_801F479C: +/* 801F479C 001F16FC 80 DC 03 90 */ lwz r6, 0x390(r28) +/* 801F47A0 001F1700 7F E4 FB 78 */ mr r4, r31 +/* 801F47A4 001F1704 7F A5 EB 78 */ mr r5, r29 +/* 801F47A8 001F1708 38 61 00 08 */ addi r3, r1, 8 +/* 801F47AC 001F170C 38 06 00 01 */ addi r0, r6, 1 +/* 801F47B0 001F1710 90 1C 03 90 */ stw r0, 0x390(r28) +/* 801F47B4 001F1714 4B E8 29 81 */ bl NextWaypoint__15CScriptWaypointCFR13CStateManager +/* 801F47B8 001F1718 A0 01 00 08 */ lhz r0, 8(r1) +/* 801F47BC 001F171C 7F A3 EB 78 */ mr r3, r29 +/* 801F47C0 001F1720 38 81 00 0C */ addi r4, r1, 0xc +/* 801F47C4 001F1724 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801F47C8 001F1728 4B E5 7D AD */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801F47CC 001F172C 7C 64 1B 78 */ mr r4, r3 +/* 801F47D0 001F1730 38 61 00 30 */ addi r3, r1, 0x30 +/* 801F47D4 001F1734 4B EB 1D 79 */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 801F47D8 001F1738 83 E3 00 04 */ lwz r31, 4(r3) +/* 801F47DC 001F173C 28 1F 00 00 */ cmplwi r31, 0 +/* 801F47E0 001F1740 41 82 00 14 */ beq lbl_801F47F4 +/* 801F47E4 001F1744 A0 7F 00 08 */ lhz r3, 8(r31) +/* 801F47E8 001F1748 A0 1E 00 08 */ lhz r0, 8(r30) +/* 801F47EC 001F174C 7C 03 00 40 */ cmplw r3, r0 +/* 801F47F0 001F1750 40 82 FE 50 */ bne lbl_801F4640 +lbl_801F47F4: +/* 801F47F4 001F1754 88 1C 04 00 */ lbz r0, 0x400(r28) +/* 801F47F8 001F1758 38 60 00 00 */ li r3, 0 +/* 801F47FC 001F175C 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 801F4800 001F1760 98 1C 04 00 */ stb r0, 0x400(r28) +/* 801F4804 001F1764 90 7C 03 9C */ stw r3, 0x39c(r28) +/* 801F4808 001F1768 88 1C 03 28 */ lbz r0, 0x328(r28) +/* 801F480C 001F176C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801F4810 001F1770 98 1C 03 28 */ stb r0, 0x328(r28) +/* 801F4814 001F1774 C0 5C 00 60 */ lfs f2, 0x60(r28) +/* 801F4818 001F1778 C0 3C 00 50 */ lfs f1, 0x50(r28) +/* 801F481C 001F177C C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 801F4820 001F1780 D0 1C 02 EC */ stfs f0, 0x2ec(r28) +/* 801F4824 001F1784 D0 3C 02 F0 */ stfs f1, 0x2f0(r28) +/* 801F4828 001F1788 D0 5C 02 F4 */ stfs f2, 0x2f4(r28) +/* 801F482C 001F178C 80 1C 03 90 */ lwz r0, 0x390(r28) +/* 801F4830 001F1790 2C 00 00 00 */ cmpwi r0, 0 +/* 801F4834 001F1794 41 82 00 34 */ beq lbl_801F4868 +/* 801F4838 001F1798 80 7C 03 98 */ lwz r3, 0x398(r28) +/* 801F483C 001F179C C0 03 00 18 */ lfs f0, 0x18(r3) +/* 801F4840 001F17A0 D0 1C 03 B0 */ stfs f0, 0x3b0(r28) +/* 801F4844 001F17A4 80 7C 03 98 */ lwz r3, 0x398(r28) +/* 801F4848 001F17A8 88 03 00 1C */ lbz r0, 0x1c(r3) +/* 801F484C 001F17AC 90 1C 03 80 */ stw r0, 0x380(r28) +/* 801F4850 001F17B0 80 7C 03 98 */ lwz r3, 0x398(r28) +/* 801F4854 001F17B4 88 03 00 1D */ lbz r0, 0x1d(r3) +/* 801F4858 001F17B8 90 1C 03 0C */ stw r0, 0x30c(r28) +/* 801F485C 001F17BC 80 7C 03 98 */ lwz r3, 0x398(r28) +/* 801F4860 001F17C0 A0 03 00 1E */ lhz r0, 0x1e(r3) +/* 801F4864 001F17C4 90 1C 03 84 */ stw r0, 0x384(r28) +lbl_801F4868: +/* 801F4868 001F17C8 E3 E1 01 58 */ psq_l f31, 344(r1), 0, qr0 +/* 801F486C 001F17CC CB E1 01 50 */ lfd f31, 0x150(r1) +/* 801F4870 001F17D0 E3 C1 01 48 */ psq_l f30, 328(r1), 0, qr0 +/* 801F4874 001F17D4 CB C1 01 40 */ lfd f30, 0x140(r1) +/* 801F4878 001F17D8 E3 A1 01 38 */ psq_l f29, 312(r1), 0, qr0 +/* 801F487C 001F17DC CB A1 01 30 */ lfd f29, 0x130(r1) +/* 801F4880 001F17E0 E3 81 01 28 */ psq_l f28, 296(r1), 0, qr0 +/* 801F4884 001F17E4 CB 81 01 20 */ lfd f28, 0x120(r1) +/* 801F4888 001F17E8 E3 61 01 18 */ psq_l f27, 280(r1), 0, qr0 +/* 801F488C 001F17EC CB 61 01 10 */ lfd f27, 0x110(r1) +/* 801F4890 001F17F0 E3 41 01 08 */ psq_l f26, 264(r1), 0, qr0 +/* 801F4894 001F17F4 CB 41 01 00 */ lfd f26, 0x100(r1) +/* 801F4898 001F17F8 E3 21 00 F8 */ psq_l f25, 248(r1), 0, qr0 +/* 801F489C 001F17FC CB 21 00 F0 */ lfd f25, 0xf0(r1) +/* 801F48A0 001F1800 E3 01 00 E8 */ psq_l f24, 232(r1), 0, qr0 +/* 801F48A4 001F1804 CB 01 00 E0 */ lfd f24, 0xe0(r1) +/* 801F48A8 001F1808 E2 E1 00 D8 */ psq_l f23, 216(r1), 0, qr0 +/* 801F48AC 001F180C CA E1 00 D0 */ lfd f23, 0xd0(r1) +/* 801F48B0 001F1810 E2 C1 00 C8 */ psq_l f22, 200(r1), 0, qr0 +/* 801F48B4 001F1814 CA C1 00 C0 */ lfd f22, 0xc0(r1) +/* 801F48B8 001F1818 E2 A1 00 B8 */ psq_l f21, 184(r1), 0, qr0 +/* 801F48BC 001F181C CA A1 00 B0 */ lfd f21, 0xb0(r1) +/* 801F48C0 001F1820 BB 01 00 90 */ lmw r24, 0x90(r1) +/* 801F48C4 001F1824 80 01 01 64 */ lwz r0, 0x164(r1) +/* 801F48C8 001F1828 7C 08 03 A6 */ mtlr r0 +/* 801F48CC 001F182C 38 21 01 60 */ addi r1, r1, 0x160 +/* 801F48D0 001F1830 4E 80 00 20 */ blr + +.global GetDesiredAttackState__10CPatternedCFR13CStateManager +GetDesiredAttackState__10CPatternedCFR13CStateManager: +/* 801F48D4 001F1834 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801F48D8 001F1838 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 801F48DC 001F183C C1 23 00 50 */ lfs f9, 0x50(r3) +/* 801F48E0 001F1840 C0 64 00 50 */ lfs f3, 0x50(r4) +/* 801F48E4 001F1844 C0 04 00 40 */ lfs f0, 0x40(r4) +/* 801F48E8 001F1848 C0 A3 00 40 */ lfs f5, 0x40(r3) +/* 801F48EC 001F184C EC E9 18 28 */ fsubs f7, f9, f3 +/* 801F48F0 001F1850 C1 04 00 60 */ lfs f8, 0x60(r4) +/* 801F48F4 001F1854 EC 85 00 28 */ fsubs f4, f5, f0 +/* 801F48F8 001F1858 C1 43 00 60 */ lfs f10, 0x60(r3) +/* 801F48FC 001F185C EC 27 01 F2 */ fmuls f1, f7, f7 +/* 801F4900 001F1860 D0 61 00 0C */ stfs f3, 0xc(r1) +/* 801F4904 001F1864 EC CA 40 28 */ fsubs f6, f10, f8 +/* 801F4908 001F1868 C1 63 02 FC */ lfs f11, 0x2fc(r3) +/* 801F490C 001F186C EC 44 01 32 */ fmuls f2, f4, f4 +/* 801F4910 001F1870 D0 01 00 08 */ stfs f0, 8(r1) +/* 801F4914 001F1874 EC 66 01 B2 */ fmuls f3, f6, f6 +/* 801F4918 001F1878 EC 0B 02 F2 */ fmuls f0, f11, f11 +/* 801F491C 001F187C D1 01 00 10 */ stfs f8, 0x10(r1) +/* 801F4920 001F1880 EC 22 08 2A */ fadds f1, f2, f1 +/* 801F4924 001F1884 D0 A1 00 14 */ stfs f5, 0x14(r1) +/* 801F4928 001F1888 EC 23 08 2A */ fadds f1, f3, f1 +/* 801F492C 001F188C D1 21 00 18 */ stfs f9, 0x18(r1) +/* 801F4930 001F1890 D1 41 00 1C */ stfs f10, 0x1c(r1) +/* 801F4934 001F1894 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F4938 001F1898 D0 81 00 20 */ stfs f4, 0x20(r1) +/* 801F493C 001F189C D0 E1 00 24 */ stfs f7, 0x24(r1) +/* 801F4940 001F18A0 D0 C1 00 28 */ stfs f6, 0x28(r1) +/* 801F4944 001F18A4 40 80 00 0C */ bge lbl_801F4950 +/* 801F4948 001F18A8 38 60 00 0C */ li r3, 0xc +/* 801F494C 001F18AC 48 00 00 20 */ b lbl_801F496C +lbl_801F4950: +/* 801F4950 001F18B0 C0 03 03 00 */ lfs f0, 0x300(r3) +/* 801F4954 001F18B4 EC 00 00 32 */ fmuls f0, f0, f0 +/* 801F4958 001F18B8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F495C 001F18BC 40 81 00 0C */ ble lbl_801F4968 +/* 801F4960 001F18C0 38 60 00 0B */ li r3, 0xb +/* 801F4964 001F18C4 48 00 00 08 */ b lbl_801F496C +lbl_801F4968: +/* 801F4968 001F18C8 38 60 00 0A */ li r3, 0xa +lbl_801F496C: +/* 801F496C 001F18CC 38 21 00 30 */ addi r1, r1, 0x30 +/* 801F4970 001F18D0 4E 80 00 20 */ blr + +.global GetDestWaypoints__10CPatternedCFR13CStateManager +GetDestWaypoints__10CPatternedCFR13CStateManager: +/* 801F4974 001F18D4 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801F4978 001F18D8 7C 08 02 A6 */ mflr r0 +/* 801F497C 001F18DC 90 01 00 44 */ stw r0, 0x44(r1) +/* 801F4980 001F18E0 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801F4984 001F18E4 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801F4988 001F18E8 7C BE 2B 78 */ mr r30, r5 +/* 801F498C 001F18EC 93 A1 00 34 */ stw r29, 0x34(r1) +/* 801F4990 001F18F0 7C 7D 1B 78 */ mr r29, r3 +/* 801F4994 001F18F4 7F C3 F3 78 */ mr r3, r30 +/* 801F4998 001F18F8 A0 04 02 DC */ lhz r0, 0x2dc(r4) +/* 801F499C 001F18FC 38 81 00 10 */ addi r4, r1, 0x10 +/* 801F49A0 001F1900 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801F49A4 001F1904 4B E5 7B D1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801F49A8 001F1908 7C 64 1B 78 */ mr r4, r3 +/* 801F49AC 001F190C 38 61 00 1C */ addi r3, r1, 0x1c +/* 801F49B0 001F1910 4B EB 1B 9D */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 801F49B4 001F1914 83 E3 00 04 */ lwz r31, 4(r3) +/* 801F49B8 001F1918 38 00 00 00 */ li r0, 0 +/* 801F49BC 001F191C 28 1F 00 00 */ cmplwi r31, 0 +/* 801F49C0 001F1920 41 82 00 38 */ beq lbl_801F49F8 +/* 801F49C4 001F1924 7F E4 FB 78 */ mr r4, r31 +/* 801F49C8 001F1928 7F C5 F3 78 */ mr r5, r30 +/* 801F49CC 001F192C 38 61 00 08 */ addi r3, r1, 8 +/* 801F49D0 001F1930 4B E8 26 DD */ bl FollowWaypoint__15CScriptWaypointCFR13CStateManager +/* 801F49D4 001F1934 A0 01 00 08 */ lhz r0, 8(r1) +/* 801F49D8 001F1938 7F C3 F3 78 */ mr r3, r30 +/* 801F49DC 001F193C 38 81 00 0C */ addi r4, r1, 0xc +/* 801F49E0 001F1940 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801F49E4 001F1944 4B E5 7B 91 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801F49E8 001F1948 7C 64 1B 78 */ mr r4, r3 +/* 801F49EC 001F194C 38 61 00 14 */ addi r3, r1, 0x14 +/* 801F49F0 001F1950 4B EB 1B 5D */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 801F49F4 001F1954 80 03 00 04 */ lwz r0, 4(r3) +lbl_801F49F8: +/* 801F49F8 001F1958 93 FD 00 00 */ stw r31, 0(r29) +/* 801F49FC 001F195C 90 1D 00 04 */ stw r0, 4(r29) +/* 801F4A00 001F1960 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801F4A04 001F1964 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801F4A08 001F1968 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801F4A0C 001F196C 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 801F4A10 001F1970 7C 08 03 A6 */ mtlr r0 +/* 801F4A14 001F1974 38 21 00 40 */ addi r1, r1, 0x40 +/* 801F4A18 001F1978 4E 80 00 20 */ blr + +.global FindPatternRotation__10CPatternedFRC9CVector3f +FindPatternRotation__10CPatternedFRC9CVector3f: +/* 801F4A1C 001F197C 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 801F4A20 001F1980 7C 08 02 A6 */ mflr r0 +/* 801F4A24 001F1984 90 01 01 04 */ stw r0, 0x104(r1) +/* 801F4A28 001F1988 93 E1 00 FC */ stw r31, 0xfc(r1) +/* 801F4A2C 001F198C 7C BF 2B 78 */ mr r31, r5 +/* 801F4A30 001F1990 93 C1 00 F8 */ stw r30, 0xf8(r1) +/* 801F4A34 001F1994 7C 9E 23 78 */ mr r30, r4 +/* 801F4A38 001F1998 93 A1 00 F4 */ stw r29, 0xf4(r1) +/* 801F4A3C 001F199C 7C 7D 1B 78 */ mr r29, r3 +/* 801F4A40 001F19A0 38 61 00 CC */ addi r3, r1, 0xcc +/* 801F4A44 001F19A4 C0 05 00 00 */ lfs f0, 0(r5) +/* 801F4A48 001F19A8 C0 45 00 04 */ lfs f2, 4(r5) +/* 801F4A4C 001F19AC C0 25 00 08 */ lfs f1, 8(r5) +/* 801F4A50 001F19B0 D0 01 00 D8 */ stfs f0, 0xd8(r1) +/* 801F4A54 001F19B4 C0 02 AF 20 */ lfs f0, lbl_805ACC40@sda21(r2) +/* 801F4A58 001F19B8 D0 41 00 DC */ stfs f2, 0xdc(r1) +/* 801F4A5C 001F19BC D0 21 00 E0 */ stfs f1, 0xe0(r1) +/* 801F4A60 001F19C0 C0 24 03 68 */ lfs f1, 0x368(r4) +/* 801F4A64 001F19C4 D0 21 00 CC */ stfs f1, 0xcc(r1) +/* 801F4A68 001F19C8 C0 24 03 6C */ lfs f1, 0x36c(r4) +/* 801F4A6C 001F19CC D0 21 00 D0 */ stfs f1, 0xd0(r1) +/* 801F4A70 001F19D0 C0 24 03 70 */ lfs f1, 0x370(r4) +/* 801F4A74 001F19D4 D0 21 00 D4 */ stfs f1, 0xd4(r1) +/* 801F4A78 001F19D8 D0 01 00 E0 */ stfs f0, 0xe0(r1) +/* 801F4A7C 001F19DC D0 01 00 D4 */ stfs f0, 0xd4(r1) +/* 801F4A80 001F19E0 48 11 FE 79 */ bl Normalize__9CVector3fFv +/* 801F4A84 001F19E4 38 61 00 D8 */ addi r3, r1, 0xd8 +/* 801F4A88 001F19E8 48 11 FE 71 */ bl Normalize__9CVector3fFv +/* 801F4A8C 001F19EC C0 41 00 D0 */ lfs f2, 0xd0(r1) +/* 801F4A90 001F19F0 C0 01 00 DC */ lfs f0, 0xdc(r1) +/* 801F4A94 001F19F4 C0 21 00 CC */ lfs f1, 0xcc(r1) +/* 801F4A98 001F19F8 EC A2 00 28 */ fsubs f5, f2, f0 +/* 801F4A9C 001F19FC C0 01 00 D8 */ lfs f0, 0xd8(r1) +/* 801F4AA0 001F1A00 C0 41 00 D4 */ lfs f2, 0xd4(r1) +/* 801F4AA4 001F1A04 EC 61 00 28 */ fsubs f3, f1, f0 +/* 801F4AA8 001F1A08 C0 01 00 E0 */ lfs f0, 0xe0(r1) +/* 801F4AAC 001F1A0C EC 25 01 72 */ fmuls f1, f5, f5 +/* 801F4AB0 001F1A10 EC 82 00 28 */ fsubs f4, f2, f0 +/* 801F4AB4 001F1A14 C0 02 AF 24 */ lfs f0, lbl_805ACC44@sda21(r2) +/* 801F4AB8 001F1A18 EC 43 00 F2 */ fmuls f2, f3, f3 +/* 801F4ABC 001F1A1C D0 61 00 A4 */ stfs f3, 0xa4(r1) +/* 801F4AC0 001F1A20 EC 64 01 32 */ fmuls f3, f4, f4 +/* 801F4AC4 001F1A24 EC 22 08 2A */ fadds f1, f2, f1 +/* 801F4AC8 001F1A28 D0 A1 00 A8 */ stfs f5, 0xa8(r1) +/* 801F4ACC 001F1A2C D0 81 00 AC */ stfs f4, 0xac(r1) +/* 801F4AD0 001F1A30 EC 23 08 2A */ fadds f1, f3, f1 +/* 801F4AD4 001F1A34 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F4AD8 001F1A38 40 81 00 20 */ ble lbl_801F4AF8 +/* 801F4ADC 001F1A3C C0 02 AF 28 */ lfs f0, lbl_805ACC48@sda21(r2) +/* 801F4AE0 001F1A40 38 61 00 94 */ addi r3, r1, 0x94 +/* 801F4AE4 001F1A44 38 81 00 08 */ addi r4, r1, 8 +/* 801F4AE8 001F1A48 D0 01 00 08 */ stfs f0, 8(r1) +/* 801F4AEC 001F1A4C 48 11 C6 0D */ bl ZRotation__11CQuaternionFRC9CRelAngle +/* 801F4AF0 001F1A50 38 61 00 94 */ addi r3, r1, 0x94 +/* 801F4AF4 001F1A54 48 00 00 18 */ b lbl_801F4B0C +lbl_801F4AF8: +/* 801F4AF8 001F1A58 38 61 00 84 */ addi r3, r1, 0x84 +/* 801F4AFC 001F1A5C 38 81 00 CC */ addi r4, r1, 0xcc +/* 801F4B00 001F1A60 38 A1 00 D8 */ addi r5, r1, 0xd8 +/* 801F4B04 001F1A64 48 11 CF B5 */ bl ShortestRotationArc__11CQuaternionFRC9CVector3fRC9CVector3f +/* 801F4B08 001F1A68 38 61 00 84 */ addi r3, r1, 0x84 +lbl_801F4B0C: +/* 801F4B0C 001F1A6C C0 63 00 00 */ lfs f3, 0(r3) +/* 801F4B10 001F1A70 D0 61 00 BC */ stfs f3, 0xbc(r1) +/* 801F4B14 001F1A74 C0 43 00 04 */ lfs f2, 4(r3) +/* 801F4B18 001F1A78 D0 41 00 C0 */ stfs f2, 0xc0(r1) +/* 801F4B1C 001F1A7C C0 23 00 08 */ lfs f1, 8(r3) +/* 801F4B20 001F1A80 D0 21 00 C4 */ stfs f1, 0xc4(r1) +/* 801F4B24 001F1A84 C0 03 00 0C */ lfs f0, 0xc(r3) +/* 801F4B28 001F1A88 D0 01 00 C8 */ stfs f0, 0xc8(r1) +/* 801F4B2C 001F1A8C 88 1E 03 28 */ lbz r0, 0x328(r30) +/* 801F4B30 001F1A90 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801F4B34 001F1A94 41 82 00 D0 */ beq lbl_801F4C04 +/* 801F4B38 001F1A98 FC A0 00 50 */ fneg f5, f0 +/* 801F4B3C 001F1A9C C0 02 AF 20 */ lfs f0, lbl_805ACC40@sda21(r2) +/* 801F4B40 001F1AA0 FC 80 08 50 */ fneg f4, f1 +/* 801F4B44 001F1AA4 D0 61 00 44 */ stfs f3, 0x44(r1) +/* 801F4B48 001F1AA8 FC 20 10 50 */ fneg f1, f2 +/* 801F4B4C 001F1AAC 38 61 00 64 */ addi r3, r1, 0x64 +/* 801F4B50 001F1AB0 D0 81 00 4C */ stfs f4, 0x4c(r1) +/* 801F4B54 001F1AB4 38 81 00 BC */ addi r4, r1, 0xbc +/* 801F4B58 001F1AB8 38 A1 00 54 */ addi r5, r1, 0x54 +/* 801F4B5C 001F1ABC D0 21 00 48 */ stfs f1, 0x48(r1) +/* 801F4B60 001F1AC0 D0 A1 00 50 */ stfs f5, 0x50(r1) +/* 801F4B64 001F1AC4 D0 01 00 54 */ stfs f0, 0x54(r1) +/* 801F4B68 001F1AC8 C0 1E 03 68 */ lfs f0, 0x368(r30) +/* 801F4B6C 001F1ACC D0 01 00 58 */ stfs f0, 0x58(r1) +/* 801F4B70 001F1AD0 C0 1E 03 6C */ lfs f0, 0x36c(r30) +/* 801F4B74 001F1AD4 D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 801F4B78 001F1AD8 C0 1E 03 70 */ lfs f0, 0x370(r30) +/* 801F4B7C 001F1ADC D0 01 00 60 */ stfs f0, 0x60(r1) +/* 801F4B80 001F1AE0 48 11 C6 21 */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 801F4B84 001F1AE4 38 61 00 74 */ addi r3, r1, 0x74 +/* 801F4B88 001F1AE8 38 81 00 64 */ addi r4, r1, 0x64 +/* 801F4B8C 001F1AEC 38 A1 00 44 */ addi r5, r1, 0x44 +/* 801F4B90 001F1AF0 48 11 C6 11 */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 801F4B94 001F1AF4 C0 41 00 78 */ lfs f2, 0x78(r1) +/* 801F4B98 001F1AF8 7F E4 FB 78 */ mr r4, r31 +/* 801F4B9C 001F1AFC C0 21 00 7C */ lfs f1, 0x7c(r1) +/* 801F4BA0 001F1B00 38 61 00 0C */ addi r3, r1, 0xc +/* 801F4BA4 001F1B04 C0 01 00 80 */ lfs f0, 0x80(r1) +/* 801F4BA8 001F1B08 D0 41 00 B0 */ stfs f2, 0xb0(r1) +/* 801F4BAC 001F1B0C D0 21 00 B4 */ stfs f1, 0xb4(r1) +/* 801F4BB0 001F1B10 D0 01 00 B8 */ stfs f0, 0xb8(r1) +/* 801F4BB4 001F1B14 48 11 FC 9D */ bl AsNormalized__9CVector3fCFv +/* 801F4BB8 001F1B18 38 61 00 18 */ addi r3, r1, 0x18 +/* 801F4BBC 001F1B1C 38 81 00 B0 */ addi r4, r1, 0xb0 +/* 801F4BC0 001F1B20 48 11 FC 91 */ bl AsNormalized__9CVector3fCFv +/* 801F4BC4 001F1B24 38 61 00 24 */ addi r3, r1, 0x24 +/* 801F4BC8 001F1B28 38 81 00 18 */ addi r4, r1, 0x18 +/* 801F4BCC 001F1B2C 38 A1 00 0C */ addi r5, r1, 0xc +/* 801F4BD0 001F1B30 48 11 CE E9 */ bl ShortestRotationArc__11CQuaternionFRC9CVector3fRC9CVector3f +/* 801F4BD4 001F1B34 38 61 00 34 */ addi r3, r1, 0x34 +/* 801F4BD8 001F1B38 38 81 00 24 */ addi r4, r1, 0x24 +/* 801F4BDC 001F1B3C 38 A1 00 BC */ addi r5, r1, 0xbc +/* 801F4BE0 001F1B40 48 11 C5 C1 */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 801F4BE4 001F1B44 C0 01 00 34 */ lfs f0, 0x34(r1) +/* 801F4BE8 001F1B48 80 81 00 38 */ lwz r4, 0x38(r1) +/* 801F4BEC 001F1B4C 80 61 00 3C */ lwz r3, 0x3c(r1) +/* 801F4BF0 001F1B50 80 01 00 40 */ lwz r0, 0x40(r1) +/* 801F4BF4 001F1B54 D0 01 00 BC */ stfs f0, 0xbc(r1) +/* 801F4BF8 001F1B58 90 81 00 C0 */ stw r4, 0xc0(r1) +/* 801F4BFC 001F1B5C 90 61 00 C4 */ stw r3, 0xc4(r1) +/* 801F4C00 001F1B60 90 01 00 C8 */ stw r0, 0xc8(r1) +lbl_801F4C04: +/* 801F4C04 001F1B64 C0 01 00 BC */ lfs f0, 0xbc(r1) +/* 801F4C08 001F1B68 D0 1D 00 00 */ stfs f0, 0(r29) +/* 801F4C0C 001F1B6C C0 01 00 C0 */ lfs f0, 0xc0(r1) +/* 801F4C10 001F1B70 D0 1D 00 04 */ stfs f0, 4(r29) +/* 801F4C14 001F1B74 C0 01 00 C4 */ lfs f0, 0xc4(r1) +/* 801F4C18 001F1B78 D0 1D 00 08 */ stfs f0, 8(r29) +/* 801F4C1C 001F1B7C C0 01 00 C8 */ lfs f0, 0xc8(r1) +/* 801F4C20 001F1B80 D0 1D 00 0C */ stfs f0, 0xc(r29) +/* 801F4C24 001F1B84 83 E1 00 FC */ lwz r31, 0xfc(r1) +/* 801F4C28 001F1B88 83 C1 00 F8 */ lwz r30, 0xf8(r1) +/* 801F4C2C 001F1B8C 83 A1 00 F4 */ lwz r29, 0xf4(r1) +/* 801F4C30 001F1B90 80 01 01 04 */ lwz r0, 0x104(r1) +/* 801F4C34 001F1B94 7C 08 03 A6 */ mtlr r0 +/* 801F4C38 001F1B98 38 21 01 00 */ addi r1, r1, 0x100 +/* 801F4C3C 001F1B9C 4E 80 00 20 */ blr + +.global FindPatternDir__10CPatternedFR13CStateManager +FindPatternDir__10CPatternedFR13CStateManager: +/* 801F4C40 001F1BA0 80 04 03 78 */ lwz r0, 0x378(r4) +/* 801F4C44 001F1BA4 3C C0 80 5A */ lis r6, skZero3f@ha +/* 801F4C48 001F1BA8 C4 86 66 A0 */ lfsu f4, skZero3f@l(r6) +/* 801F4C4C 001F1BAC 2C 00 00 02 */ cmpwi r0, 2 +/* 801F4C50 001F1BB0 C0 46 00 04 */ lfs f2, 4(r6) +/* 801F4C54 001F1BB4 C0 06 00 08 */ lfs f0, 8(r6) +/* 801F4C58 001F1BB8 41 82 00 78 */ beq lbl_801F4CD0 +/* 801F4C5C 001F1BBC 40 80 00 14 */ bge lbl_801F4C70 +/* 801F4C60 001F1BC0 2C 00 00 00 */ cmpwi r0, 0 +/* 801F4C64 001F1BC4 41 82 00 40 */ beq lbl_801F4CA4 +/* 801F4C68 001F1BC8 40 80 00 14 */ bge lbl_801F4C7C +/* 801F4C6C 001F1BCC 48 00 00 90 */ b lbl_801F4CFC +lbl_801F4C70: +/* 801F4C70 001F1BD0 2C 00 00 04 */ cmpwi r0, 4 +/* 801F4C74 001F1BD4 40 80 00 88 */ bge lbl_801F4CFC +/* 801F4C78 001F1BD8 48 00 00 78 */ b lbl_801F4CF0 +lbl_801F4C7C: +/* 801F4C7C 001F1BDC C0 24 03 5C */ lfs f1, 0x35c(r4) +/* 801F4C80 001F1BE0 C0 04 03 50 */ lfs f0, 0x350(r4) +/* 801F4C84 001F1BE4 C0 64 03 60 */ lfs f3, 0x360(r4) +/* 801F4C88 001F1BE8 C0 44 03 54 */ lfs f2, 0x354(r4) +/* 801F4C8C 001F1BEC EC 81 00 28 */ fsubs f4, f1, f0 +/* 801F4C90 001F1BF0 C0 24 03 64 */ lfs f1, 0x364(r4) +/* 801F4C94 001F1BF4 C0 04 03 58 */ lfs f0, 0x358(r4) +/* 801F4C98 001F1BF8 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801F4C9C 001F1BFC EC 01 00 28 */ fsubs f0, f1, f0 +/* 801F4CA0 001F1C00 48 00 00 5C */ b lbl_801F4CFC +lbl_801F4CA4: +/* 801F4CA4 001F1C04 80 A5 08 4C */ lwz r5, 0x84c(r5) +/* 801F4CA8 001F1C08 C0 04 03 50 */ lfs f0, 0x350(r4) +/* 801F4CAC 001F1C0C C0 25 00 40 */ lfs f1, 0x40(r5) +/* 801F4CB0 001F1C10 C0 65 00 50 */ lfs f3, 0x50(r5) +/* 801F4CB4 001F1C14 C0 44 03 54 */ lfs f2, 0x354(r4) +/* 801F4CB8 001F1C18 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801F4CBC 001F1C1C C0 25 00 60 */ lfs f1, 0x60(r5) +/* 801F4CC0 001F1C20 C0 04 03 58 */ lfs f0, 0x358(r4) +/* 801F4CC4 001F1C24 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801F4CC8 001F1C28 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801F4CCC 001F1C2C 48 00 00 30 */ b lbl_801F4CFC +lbl_801F4CD0: +/* 801F4CD0 001F1C30 80 85 08 4C */ lwz r4, 0x84c(r5) +/* 801F4CD4 001F1C34 C0 44 00 38 */ lfs f2, 0x38(r4) +/* 801F4CD8 001F1C38 C0 24 00 48 */ lfs f1, 0x48(r4) +/* 801F4CDC 001F1C3C C0 04 00 58 */ lfs f0, 0x58(r4) +/* 801F4CE0 001F1C40 FC 80 10 50 */ fneg f4, f2 +/* 801F4CE4 001F1C44 FC 40 08 50 */ fneg f2, f1 +/* 801F4CE8 001F1C48 FC 00 00 50 */ fneg f0, f0 +/* 801F4CEC 001F1C4C 48 00 00 10 */ b lbl_801F4CFC +lbl_801F4CF0: +/* 801F4CF0 001F1C50 C0 84 00 38 */ lfs f4, 0x38(r4) +/* 801F4CF4 001F1C54 C0 44 00 48 */ lfs f2, 0x48(r4) +/* 801F4CF8 001F1C58 C0 04 00 58 */ lfs f0, 0x58(r4) +lbl_801F4CFC: +/* 801F4CFC 001F1C5C D0 83 00 00 */ stfs f4, 0(r3) +/* 801F4D00 001F1C60 D0 43 00 04 */ stfs f2, 4(r3) +/* 801F4D04 001F1C64 D0 03 00 08 */ stfs f0, 8(r3) +/* 801F4D08 001F1C68 4E 80 00 20 */ blr + +.global GetStepDirection__10CPatternedFRC9CVector3f +GetStepDirection__10CPatternedFRC9CVector3f: +/* 801F4D0C 001F1C6C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801F4D10 001F1C70 7C 08 02 A6 */ mflr r0 +/* 801F4D14 001F1C74 7C 66 1B 78 */ mr r6, r3 +/* 801F4D18 001F1C78 7C 85 23 78 */ mr r5, r4 +/* 801F4D1C 001F1C7C 90 01 00 24 */ stw r0, 0x24(r1) +/* 801F4D20 001F1C80 38 61 00 08 */ addi r3, r1, 8 +/* 801F4D24 001F1C84 38 86 00 34 */ addi r4, r6, 0x34 +/* 801F4D28 001F1C88 48 11 DC FD */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 801F4D2C 001F1C8C C0 41 00 08 */ lfs f2, 8(r1) +/* 801F4D30 001F1C90 3C 60 80 5A */ lis r3, lbl_805A6724@ha +/* 801F4D34 001F1C94 C0 21 00 0C */ lfs f1, 0xc(r1) +/* 801F4D38 001F1C98 38 83 67 24 */ addi r4, r3, lbl_805A6724@l +/* 801F4D3C 001F1C9C C0 01 00 10 */ lfs f0, 0x10(r1) +/* 801F4D40 001F1CA0 38 61 00 14 */ addi r3, r1, 0x14 +/* 801F4D44 001F1CA4 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801F4D48 001F1CA8 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801F4D4C 001F1CAC D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801F4D50 001F1CB0 48 11 F8 E1 */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f +/* 801F4D54 001F1CB4 C0 02 AF 2C */ lfs f0, lbl_805ACC4C@sda21(r2) +/* 801F4D58 001F1CB8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F4D5C 001F1CBC 40 80 00 0C */ bge lbl_801F4D68 +/* 801F4D60 001F1CC0 38 60 00 00 */ li r3, 0 +/* 801F4D64 001F1CC4 48 00 00 5C */ b lbl_801F4DC0 +lbl_801F4D68: +/* 801F4D68 001F1CC8 C0 02 AF 30 */ lfs f0, lbl_805ACC50@sda21(r2) +/* 801F4D6C 001F1CCC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F4D70 001F1CD0 40 81 00 0C */ ble lbl_801F4D7C +/* 801F4D74 001F1CD4 38 60 00 01 */ li r3, 1 +/* 801F4D78 001F1CD8 48 00 00 48 */ b lbl_801F4DC0 +lbl_801F4D7C: +/* 801F4D7C 001F1CDC 3C 60 80 5A */ lis r3, lbl_805A6718@ha +/* 801F4D80 001F1CE0 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 801F4D84 001F1CE4 38 63 67 18 */ addi r3, r3, lbl_805A6718@l +/* 801F4D88 001F1CE8 C0 61 00 14 */ lfs f3, 0x14(r1) +/* 801F4D8C 001F1CEC C0 03 00 04 */ lfs f0, 4(r3) +/* 801F4D90 001F1CF0 C0 43 00 00 */ lfs f2, 0(r3) +/* 801F4D94 001F1CF4 EC 21 00 32 */ fmuls f1, f1, f0 +/* 801F4D98 001F1CF8 C0 A1 00 1C */ lfs f5, 0x1c(r1) +/* 801F4D9C 001F1CFC C0 83 00 08 */ lfs f4, 8(r3) +/* 801F4DA0 001F1D00 C0 02 AF 20 */ lfs f0, lbl_805ACC40@sda21(r2) +/* 801F4DA4 001F1D04 EC 23 08 BA */ fmadds f1, f3, f2, f1 +/* 801F4DA8 001F1D08 EC 25 09 3A */ fmadds f1, f5, f4, f1 +/* 801F4DAC 001F1D0C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F4DB0 001F1D10 40 81 00 0C */ ble lbl_801F4DBC +/* 801F4DB4 001F1D14 38 60 00 03 */ li r3, 3 +/* 801F4DB8 001F1D18 48 00 00 08 */ b lbl_801F4DC0 +lbl_801F4DBC: +/* 801F4DBC 001F1D1C 38 60 00 02 */ li r3, 2 +lbl_801F4DC0: +/* 801F4DC0 001F1D20 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801F4DC4 001F1D24 7C 08 03 A6 */ mtlr r0 +/* 801F4DC8 001F1D28 38 21 00 20 */ addi r1, r1, 0x20 +/* 801F4DCC 001F1D2C 4E 80 00 20 */ blr + +.global IsPatternObstructed__10CPatternedCFR13CStateManagerRC9CVector3fRC9CVector3f +IsPatternObstructed__10CPatternedCFR13CStateManagerRC9CVector3fRC9CVector3f: +/* 801F4DD0 001F1D30 94 21 F7 10 */ stwu r1, -0x8f0(r1) +/* 801F4DD4 001F1D34 7C 08 02 A6 */ mflr r0 +/* 801F4DD8 001F1D38 90 01 08 F4 */ stw r0, 0x8f4(r1) +/* 801F4DDC 001F1D3C DB E1 08 E0 */ stfd f31, 0x8e0(r1) +/* 801F4DE0 001F1D40 F3 E1 08 E8 */ psq_st f31, -1816(r1), 0, qr0 +/* 801F4DE4 001F1D44 BF 61 08 CC */ stmw r27, 0x8cc(r1) +/* 801F4DE8 001F1D48 38 00 00 00 */ li r0, 0 +/* 801F4DEC 001F1D4C 80 ED 92 C4 */ lwz r7, lbl_805A7E84@sda21(r13) +/* 801F4DF0 001F1D50 90 01 00 C0 */ stw r0, 0xc0(r1) +/* 801F4DF4 001F1D54 7C 7B 1B 78 */ mr r27, r3 +/* 801F4DF8 001F1D58 7C 9C 23 78 */ mr r28, r4 +/* 801F4DFC 001F1D5C 7C BD 2B 78 */ mr r29, r5 +/* 801F4E00 001F1D60 7C DE 33 78 */ mr r30, r6 +/* 801F4E04 001F1D64 7C E5 3B 78 */ mr r5, r7 +/* 801F4E08 001F1D68 3B E0 00 00 */ li r31, 0 +/* 801F4E0C 001F1D6C 38 60 00 00 */ li r3, 0 +/* 801F4E10 001F1D70 38 80 00 01 */ li r4, 1 +/* 801F4E14 001F1D74 48 19 50 E1 */ bl __shl2i +/* 801F4E18 001F1D78 C0 3E 00 04 */ lfs f1, 4(r30) +/* 801F4E1C 001F1D7C 38 A0 00 01 */ li r5, 1 +/* 801F4E20 001F1D80 C0 1D 00 04 */ lfs f0, 4(r29) +/* 801F4E24 001F1D84 38 00 00 00 */ li r0, 0 +/* 801F4E28 001F1D88 C0 7E 00 08 */ lfs f3, 8(r30) +/* 801F4E2C 001F1D8C C0 5D 00 08 */ lfs f2, 8(r29) +/* 801F4E30 001F1D90 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801F4E34 001F1D94 C0 3E 00 00 */ lfs f1, 0(r30) +/* 801F4E38 001F1D98 C0 1D 00 00 */ lfs f0, 0(r29) +/* 801F4E3C 001F1D9C EC 43 10 28 */ fsubs f2, f3, f2 +/* 801F4E40 001F1DA0 90 61 00 78 */ stw r3, 0x78(r1) +/* 801F4E44 001F1DA4 38 61 00 24 */ addi r3, r1, 0x24 +/* 801F4E48 001F1DA8 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801F4E4C 001F1DAC 90 A1 00 58 */ stw r5, 0x58(r1) +/* 801F4E50 001F1DB0 90 81 00 7C */ stw r4, 0x7c(r1) +/* 801F4E54 001F1DB4 90 01 00 84 */ stw r0, 0x84(r1) +/* 801F4E58 001F1DB8 90 01 00 80 */ stw r0, 0x80(r1) +/* 801F4E5C 001F1DBC 90 A1 00 88 */ stw r5, 0x88(r1) +/* 801F4E60 001F1DC0 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801F4E64 001F1DC4 D0 81 00 28 */ stfs f4, 0x28(r1) +/* 801F4E68 001F1DC8 D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 801F4E6C 001F1DCC 48 11 F8 8D */ bl CanBeNormalized__9CVector3fCFv +/* 801F4E70 001F1DD0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801F4E74 001F1DD4 41 82 00 B0 */ beq lbl_801F4F24 +/* 801F4E78 001F1DD8 38 61 00 0C */ addi r3, r1, 0xc +/* 801F4E7C 001F1DDC 38 81 00 24 */ addi r4, r1, 0x24 +/* 801F4E80 001F1DE0 48 11 F9 D1 */ bl AsNormalized__9CVector3fCFv +/* 801F4E84 001F1DE4 C0 41 00 0C */ lfs f2, 0xc(r1) +/* 801F4E88 001F1DE8 38 61 00 24 */ addi r3, r1, 0x24 +/* 801F4E8C 001F1DEC C0 21 00 10 */ lfs f1, 0x10(r1) +/* 801F4E90 001F1DF0 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 801F4E94 001F1DF4 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 801F4E98 001F1DF8 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 801F4E9C 001F1DFC D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801F4EA0 001F1E00 48 11 FA 19 */ bl Magnitude__9CVector3fCFv +/* 801F4EA4 001F1E04 FF E0 08 90 */ fmr f31, f1 +/* 801F4EA8 001F1E08 7F 83 E3 78 */ mr r3, r28 +/* 801F4EAC 001F1E0C 7F A5 EB 78 */ mr r5, r29 +/* 801F4EB0 001F1E10 7F 68 DB 78 */ mr r8, r27 +/* 801F4EB4 001F1E14 38 81 00 C0 */ addi r4, r1, 0xc0 +/* 801F4EB8 001F1E18 38 C1 00 18 */ addi r6, r1, 0x18 +/* 801F4EBC 001F1E1C 38 E1 00 78 */ addi r7, r1, 0x78 +/* 801F4EC0 001F1E20 4B E5 78 19 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC9CVector3fRC9CVector3ffRC15CMaterialFilterPC6CActor" +/* 801F4EC4 001F1E24 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801F4EC8 001F1E28 38 60 00 00 */ li r3, 0 +/* 801F4ECC 001F1E2C 80 AD 92 C8 */ lwz r5, lbl_805A7E88@sda21(r13) +/* 801F4ED0 001F1E30 38 80 00 01 */ li r4, 1 +/* 801F4ED4 001F1E34 B0 01 00 08 */ sth r0, 8(r1) +/* 801F4ED8 001F1E38 48 19 50 1D */ bl __shl2i +/* 801F4EDC 001F1E3C 39 40 00 01 */ li r10, 1 +/* 801F4EE0 001F1E40 38 00 00 00 */ li r0, 0 +/* 801F4EE4 001F1E44 90 81 00 64 */ stw r4, 0x64(r1) +/* 801F4EE8 001F1E48 FC 20 F8 90 */ fmr f1, f31 +/* 801F4EEC 001F1E4C 7F 84 E3 78 */ mr r4, r28 +/* 801F4EF0 001F1E50 7F A6 EB 78 */ mr r6, r29 +/* 801F4EF4 001F1E54 90 61 00 60 */ stw r3, 0x60(r1) +/* 801F4EF8 001F1E58 38 61 00 90 */ addi r3, r1, 0x90 +/* 801F4EFC 001F1E5C 38 A1 00 08 */ addi r5, r1, 8 +/* 801F4F00 001F1E60 91 41 00 40 */ stw r10, 0x40(r1) +/* 801F4F04 001F1E64 38 E1 00 18 */ addi r7, r1, 0x18 +/* 801F4F08 001F1E68 39 01 00 60 */ addi r8, r1, 0x60 +/* 801F4F0C 001F1E6C 39 21 00 C0 */ addi r9, r1, 0xc0 +/* 801F4F10 001F1E70 90 01 00 6C */ stw r0, 0x6c(r1) +/* 801F4F14 001F1E74 90 01 00 68 */ stw r0, 0x68(r1) +/* 801F4F18 001F1E78 91 41 00 70 */ stw r10, 0x70(r1) +/* 801F4F1C 001F1E7C 4B E5 80 A9 */ bl "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 801F4F20 001F1E80 8B E1 00 B0 */ lbz r31, 0xb0(r1) +lbl_801F4F24: +/* 801F4F24 001F1E84 80 A1 00 C0 */ lwz r5, 0xc0(r1) +/* 801F4F28 001F1E88 38 60 00 00 */ li r3, 0 +/* 801F4F2C 001F1E8C 2C 05 00 00 */ cmpwi r5, 0 +/* 801F4F30 001F1E90 40 81 00 40 */ ble lbl_801F4F70 +/* 801F4F34 001F1E94 2C 05 00 08 */ cmpwi r5, 8 +/* 801F4F38 001F1E98 38 85 FF F8 */ addi r4, r5, -8 +/* 801F4F3C 001F1E9C 40 81 00 20 */ ble lbl_801F4F5C +/* 801F4F40 001F1EA0 38 04 00 07 */ addi r0, r4, 7 +/* 801F4F44 001F1EA4 54 00 E8 FE */ srwi r0, r0, 3 +/* 801F4F48 001F1EA8 7C 09 03 A6 */ mtctr r0 +/* 801F4F4C 001F1EAC 2C 04 00 00 */ cmpwi r4, 0 +/* 801F4F50 001F1EB0 40 81 00 0C */ ble lbl_801F4F5C +lbl_801F4F54: +/* 801F4F54 001F1EB4 38 63 00 08 */ addi r3, r3, 8 +/* 801F4F58 001F1EB8 42 00 FF FC */ bdnz lbl_801F4F54 +lbl_801F4F5C: +/* 801F4F5C 001F1EBC 7C 03 28 50 */ subf r0, r3, r5 +/* 801F4F60 001F1EC0 7C 09 03 A6 */ mtctr r0 +/* 801F4F64 001F1EC4 7C 03 28 00 */ cmpw r3, r5 +/* 801F4F68 001F1EC8 40 80 00 08 */ bge lbl_801F4F70 +lbl_801F4F6C: +/* 801F4F6C 001F1ECC 42 00 00 00 */ bdnz lbl_801F4F6C +lbl_801F4F70: +/* 801F4F70 001F1ED0 38 00 00 00 */ li r0, 0 +/* 801F4F74 001F1ED4 7F E3 FB 78 */ mr r3, r31 +/* 801F4F78 001F1ED8 90 01 00 C0 */ stw r0, 0xc0(r1) +/* 801F4F7C 001F1EDC E3 E1 08 E8 */ psq_l f31, -1816(r1), 0, qr0 +/* 801F4F80 001F1EE0 CB E1 08 E0 */ lfd f31, 0x8e0(r1) +/* 801F4F84 001F1EE4 BB 61 08 CC */ lmw r27, 0x8cc(r1) +/* 801F4F88 001F1EE8 80 01 08 F4 */ lwz r0, 0x8f4(r1) +/* 801F4F8C 001F1EEC 7C 08 03 A6 */ mtlr r0 +/* 801F4F90 001F1EF0 38 21 08 F0 */ addi r1, r1, 0x8f0 +/* 801F4F94 001F1EF4 4E 80 00 20 */ blr + +.global GetWaypointForState__10CPatternedFR13CStateManager18EScriptObjectState +GetWaypointForState__10CPatternedFR13CStateManager18EScriptObjectState: +/* 801F4F98 001F1EF8 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801F4F9C 001F1EFC 7C 08 02 A6 */ mflr r0 +/* 801F4FA0 001F1F00 90 01 00 54 */ stw r0, 0x54(r1) +/* 801F4FA4 001F1F04 38 00 00 00 */ li r0, 0 +/* 801F4FA8 001F1F08 BF 21 00 34 */ stmw r25, 0x34(r1) +/* 801F4FAC 001F1F0C 7C 9A 23 78 */ mr r26, r4 +/* 801F4FB0 001F1F10 7C 79 1B 78 */ mr r25, r3 +/* 801F4FB4 001F1F14 7C BB 2B 78 */ mr r27, r5 +/* 801F4FB8 001F1F18 90 01 00 18 */ stw r0, 0x18(r1) +/* 801F4FBC 001F1F1C 7C DC 33 78 */ mr r28, r6 +/* 801F4FC0 001F1F20 7C FD 3B 78 */ mr r29, r7 +/* 801F4FC4 001F1F24 3B C1 00 1C */ addi r30, r1, 0x1c +/* 801F4FC8 001F1F28 83 E4 00 2C */ lwz r31, 0x2c(r4) +/* 801F4FCC 001F1F2C 48 00 00 94 */ b lbl_801F5060 +lbl_801F4FD0: +/* 801F4FD0 001F1F30 80 1F 00 00 */ lwz r0, 0(r31) +/* 801F4FD4 001F1F34 7C 1C 00 00 */ cmpw r28, r0 +/* 801F4FD8 001F1F38 40 82 00 84 */ bne lbl_801F505C +/* 801F4FDC 001F1F3C 80 1F 00 04 */ lwz r0, 4(r31) +/* 801F4FE0 001F1F40 7C 1D 00 00 */ cmpw r29, r0 +/* 801F4FE4 001F1F44 40 82 00 78 */ bne lbl_801F505C +/* 801F4FE8 001F1F48 80 1F 00 08 */ lwz r0, 8(r31) +/* 801F4FEC 001F1F4C 7F 64 DB 78 */ mr r4, r27 +/* 801F4FF0 001F1F50 38 61 00 0C */ addi r3, r1, 0xc +/* 801F4FF4 001F1F54 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801F4FF8 001F1F58 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F4FFC 001F1F5C 4B E5 2F 21 */ bl GetIdForScript__13CStateManagerCF9TEditorId +/* 801F5000 001F1F60 A0 01 00 0C */ lhz r0, 0xc(r1) +/* 801F5004 001F1F64 7F 63 DB 78 */ mr r3, r27 +/* 801F5008 001F1F68 38 81 00 08 */ addi r4, r1, 8 +/* 801F500C 001F1F6C B0 01 00 10 */ sth r0, 0x10(r1) +/* 801F5010 001F1F70 B0 01 00 08 */ sth r0, 8(r1) +/* 801F5014 001F1F74 4B E5 75 91 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801F5018 001F1F78 28 03 00 00 */ cmplwi r3, 0 +/* 801F501C 001F1F7C 41 82 00 40 */ beq lbl_801F505C +/* 801F5020 001F1F80 88 03 00 30 */ lbz r0, 0x30(r3) +/* 801F5024 001F1F84 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801F5028 001F1F88 41 82 00 34 */ beq lbl_801F505C +/* 801F502C 001F1F8C 80 01 00 18 */ lwz r0, 0x18(r1) +/* 801F5030 001F1F90 54 00 08 3C */ slwi r0, r0, 1 +/* 801F5034 001F1F94 7C 7E 02 15 */ add. r3, r30, r0 +/* 801F5038 001F1F98 41 82 00 0C */ beq lbl_801F5044 +/* 801F503C 001F1F9C A0 01 00 10 */ lhz r0, 0x10(r1) +/* 801F5040 001F1FA0 B0 03 00 00 */ sth r0, 0(r3) +lbl_801F5044: +/* 801F5044 001F1FA4 80 61 00 18 */ lwz r3, 0x18(r1) +/* 801F5048 001F1FA8 38 63 00 01 */ addi r3, r3, 1 +/* 801F504C 001F1FAC 20 03 00 08 */ subfic r0, r3, 8 +/* 801F5050 001F1FB0 90 61 00 18 */ stw r3, 0x18(r1) +/* 801F5054 001F1FB4 2C 00 00 00 */ cmpwi r0, 0 +/* 801F5058 001F1FB8 40 81 00 20 */ ble lbl_801F5078 +lbl_801F505C: +/* 801F505C 001F1FBC 3B FF 00 0C */ addi r31, r31, 0xc +lbl_801F5060: +/* 801F5060 001F1FC0 80 1A 00 24 */ lwz r0, 0x24(r26) +/* 801F5064 001F1FC4 80 7A 00 2C */ lwz r3, 0x2c(r26) +/* 801F5068 001F1FC8 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801F506C 001F1FCC 7C 03 02 14 */ add r0, r3, r0 +/* 801F5070 001F1FD0 7C 1F 00 40 */ cmplw r31, r0 +/* 801F5074 001F1FD4 40 82 FF 5C */ bne lbl_801F4FD0 +lbl_801F5078: +/* 801F5078 001F1FD8 83 41 00 18 */ lwz r26, 0x18(r1) +/* 801F507C 001F1FDC 2C 1A 00 00 */ cmpwi r26, 0 +/* 801F5080 001F1FE0 41 82 00 7C */ beq lbl_801F50FC +/* 801F5084 001F1FE4 80 7B 09 00 */ lwz r3, 0x900(r27) +/* 801F5088 001F1FE8 48 11 D4 99 */ bl Next__9CRandom16Fv +/* 801F508C 001F1FEC 7C 03 D3 D6 */ divw r0, r3, r26 +/* 801F5090 001F1FF0 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 801F5094 001F1FF4 38 80 00 00 */ li r4, 0 +/* 801F5098 001F1FF8 2C 05 00 00 */ cmpwi r5, 0 +/* 801F509C 001F1FFC 7C 00 D1 D6 */ mullw r0, r0, r26 +/* 801F50A0 001F2000 7C 00 18 50 */ subf r0, r0, r3 +/* 801F50A4 001F2004 54 00 08 3C */ slwi r0, r0, 1 +/* 801F50A8 001F2008 7C 1E 02 2E */ lhzx r0, r30, r0 +/* 801F50AC 001F200C B0 19 00 00 */ sth r0, 0(r25) +/* 801F50B0 001F2010 40 81 00 40 */ ble lbl_801F50F0 +/* 801F50B4 001F2014 2C 05 00 08 */ cmpwi r5, 8 +/* 801F50B8 001F2018 38 65 FF F8 */ addi r3, r5, -8 +/* 801F50BC 001F201C 40 81 00 20 */ ble lbl_801F50DC +/* 801F50C0 001F2020 38 03 00 07 */ addi r0, r3, 7 +/* 801F50C4 001F2024 54 00 E8 FE */ srwi r0, r0, 3 +/* 801F50C8 001F2028 7C 09 03 A6 */ mtctr r0 +/* 801F50CC 001F202C 2C 03 00 00 */ cmpwi r3, 0 +/* 801F50D0 001F2030 40 81 00 0C */ ble lbl_801F50DC +lbl_801F50D4: +/* 801F50D4 001F2034 38 84 00 08 */ addi r4, r4, 8 +/* 801F50D8 001F2038 42 00 FF FC */ bdnz lbl_801F50D4 +lbl_801F50DC: +/* 801F50DC 001F203C 7C 04 28 50 */ subf r0, r4, r5 +/* 801F50E0 001F2040 7C 09 03 A6 */ mtctr r0 +/* 801F50E4 001F2044 7C 04 28 00 */ cmpw r4, r5 +/* 801F50E8 001F2048 40 80 00 08 */ bge lbl_801F50F0 +lbl_801F50EC: +/* 801F50EC 001F204C 42 00 00 00 */ bdnz lbl_801F50EC +lbl_801F50F0: +/* 801F50F0 001F2050 38 00 00 00 */ li r0, 0 +/* 801F50F4 001F2054 90 01 00 18 */ stw r0, 0x18(r1) +/* 801F50F8 001F2058 48 00 00 60 */ b lbl_801F5158 +lbl_801F50FC: +/* 801F50FC 001F205C 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 801F5100 001F2060 38 60 00 00 */ li r3, 0 +/* 801F5104 001F2064 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801F5108 001F2068 2C 05 00 00 */ cmpwi r5, 0 +/* 801F510C 001F206C B0 19 00 00 */ sth r0, 0(r25) +/* 801F5110 001F2070 40 81 00 40 */ ble lbl_801F5150 +/* 801F5114 001F2074 2C 05 00 08 */ cmpwi r5, 8 +/* 801F5118 001F2078 38 85 FF F8 */ addi r4, r5, -8 +/* 801F511C 001F207C 40 81 00 20 */ ble lbl_801F513C +/* 801F5120 001F2080 38 04 00 07 */ addi r0, r4, 7 +/* 801F5124 001F2084 54 00 E8 FE */ srwi r0, r0, 3 +/* 801F5128 001F2088 7C 09 03 A6 */ mtctr r0 +/* 801F512C 001F208C 2C 04 00 00 */ cmpwi r4, 0 +/* 801F5130 001F2090 40 81 00 0C */ ble lbl_801F513C +lbl_801F5134: +/* 801F5134 001F2094 38 63 00 08 */ addi r3, r3, 8 +/* 801F5138 001F2098 42 00 FF FC */ bdnz lbl_801F5134 +lbl_801F513C: +/* 801F513C 001F209C 7C 03 28 50 */ subf r0, r3, r5 +/* 801F5140 001F20A0 7C 09 03 A6 */ mtctr r0 +/* 801F5144 001F20A4 7C 03 28 00 */ cmpw r3, r5 +/* 801F5148 001F20A8 40 80 00 08 */ bge lbl_801F5150 +lbl_801F514C: +/* 801F514C 001F20AC 42 00 00 00 */ bdnz lbl_801F514C +lbl_801F5150: +/* 801F5150 001F20B0 38 00 00 00 */ li r0, 0 +/* 801F5154 001F20B4 90 01 00 18 */ stw r0, 0x18(r1) +lbl_801F5158: +/* 801F5158 001F20B8 BB 21 00 34 */ lmw r25, 0x34(r1) +/* 801F515C 001F20BC 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801F5160 001F20C0 7C 08 03 A6 */ mtlr r0 +/* 801F5164 001F20C4 38 21 00 50 */ addi r1, r1, 0x50 +/* 801F5168 001F20C8 4E 80 00 20 */ blr + +.global UpdateActorKeyframe__10CPatternedFR13CStateManager +UpdateActorKeyframe__10CPatternedFR13CStateManager: +/* 801F516C 001F20CC 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801F5170 001F20D0 7C 08 02 A6 */ mflr r0 +/* 801F5174 001F20D4 90 01 00 54 */ stw r0, 0x54(r1) +/* 801F5178 001F20D8 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801F517C 001F20DC 93 C1 00 48 */ stw r30, 0x48(r1) +/* 801F5180 001F20E0 93 A1 00 44 */ stw r29, 0x44(r1) +/* 801F5184 001F20E4 7C 9D 23 78 */ mr r29, r4 +/* 801F5188 001F20E8 38 81 00 18 */ addi r4, r1, 0x18 +/* 801F518C 001F20EC 93 81 00 40 */ stw r28, 0x40(r1) +/* 801F5190 001F20F0 7C 7C 1B 78 */ mr r28, r3 +/* 801F5194 001F20F4 A0 03 02 DC */ lhz r0, 0x2dc(r3) +/* 801F5198 001F20F8 7F A3 EB 78 */ mr r3, r29 +/* 801F519C 001F20FC B0 01 00 18 */ sth r0, 0x18(r1) +/* 801F51A0 001F2100 4B E5 74 05 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801F51A4 001F2104 7C 64 1B 78 */ mr r4, r3 +/* 801F51A8 001F2108 38 61 00 24 */ addi r3, r1, 0x24 +/* 801F51AC 001F210C 4B EB 13 A1 */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 801F51B0 001F2110 83 E3 00 04 */ lwz r31, 4(r3) +/* 801F51B4 001F2114 28 1F 00 00 */ cmplwi r31, 0 +/* 801F51B8 001F2118 41 82 00 B8 */ beq lbl_801F5270 +/* 801F51BC 001F211C 83 DF 00 2C */ lwz r30, 0x2c(r31) +/* 801F51C0 001F2120 48 00 00 98 */ b lbl_801F5258 +lbl_801F51C4: +/* 801F51C4 001F2124 80 1E 00 00 */ lwz r0, 0(r30) +/* 801F51C8 001F2128 2C 00 00 01 */ cmpwi r0, 1 +/* 801F51CC 001F212C 40 82 00 88 */ bne lbl_801F5254 +/* 801F51D0 001F2130 80 1E 00 04 */ lwz r0, 4(r30) +/* 801F51D4 001F2134 2C 00 00 13 */ cmpwi r0, 0x13 +/* 801F51D8 001F2138 40 82 00 7C */ bne lbl_801F5254 +/* 801F51DC 001F213C 80 1E 00 08 */ lwz r0, 8(r30) +/* 801F51E0 001F2140 7F A4 EB 78 */ mr r4, r29 +/* 801F51E4 001F2144 38 61 00 14 */ addi r3, r1, 0x14 +/* 801F51E8 001F2148 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801F51EC 001F214C 90 01 00 20 */ stw r0, 0x20(r1) +/* 801F51F0 001F2150 4B E5 2D 2D */ bl GetIdForScript__13CStateManagerCF9TEditorId +/* 801F51F4 001F2154 A0 01 00 14 */ lhz r0, 0x14(r1) +/* 801F51F8 001F2158 7F A3 EB 78 */ mr r3, r29 +/* 801F51FC 001F215C 38 81 00 10 */ addi r4, r1, 0x10 +/* 801F5200 001F2160 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 801F5204 001F2164 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801F5208 001F2168 4B E5 73 6D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801F520C 001F216C 7C 64 1B 78 */ mr r4, r3 +/* 801F5210 001F2170 38 61 00 2C */ addi r3, r1, 0x2c +/* 801F5214 001F2174 4B EB 68 45 */ bl "__ct__34TCastToPtr<20CScriptActorKeyframe>FP7CEntity" +/* 801F5218 001F2178 80 63 00 04 */ lwz r3, 4(r3) +/* 801F521C 001F217C 28 03 00 00 */ cmplwi r3, 0 +/* 801F5220 001F2180 41 82 00 34 */ beq lbl_801F5254 +/* 801F5224 001F2184 88 03 00 30 */ lbz r0, 0x30(r3) +/* 801F5228 001F2188 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801F522C 001F218C 41 82 00 28 */ beq lbl_801F5254 +/* 801F5230 001F2190 88 03 00 44 */ lbz r0, 0x44(r3) +/* 801F5234 001F2194 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801F5238 001F2198 41 82 00 1C */ beq lbl_801F5254 +/* 801F523C 001F219C A0 1C 00 08 */ lhz r0, 8(r28) +/* 801F5240 001F21A0 7F A5 EB 78 */ mr r5, r29 +/* 801F5244 001F21A4 38 81 00 0C */ addi r4, r1, 0xc +/* 801F5248 001F21A8 B0 01 00 08 */ sth r0, 8(r1) +/* 801F524C 001F21AC B0 01 00 0C */ sth r0, 0xc(r1) +/* 801F5250 001F21B0 4B F0 90 91 */ bl UpdateEntity__20CScriptActorKeyframeF9TUniqueIdR13CStateManager +lbl_801F5254: +/* 801F5254 001F21B4 3B DE 00 0C */ addi r30, r30, 0xc +lbl_801F5258: +/* 801F5258 001F21B8 80 1F 00 24 */ lwz r0, 0x24(r31) +/* 801F525C 001F21BC 80 7F 00 2C */ lwz r3, 0x2c(r31) +/* 801F5260 001F21C0 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801F5264 001F21C4 7C 03 02 14 */ add r0, r3, r0 +/* 801F5268 001F21C8 7C 1E 00 40 */ cmplw r30, r0 +/* 801F526C 001F21CC 40 82 FF 58 */ bne lbl_801F51C4 +lbl_801F5270: +/* 801F5270 001F21D0 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801F5274 001F21D4 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801F5278 001F21D8 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 801F527C 001F21DC 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 801F5280 001F21E0 83 81 00 40 */ lwz r28, 0x40(r1) +/* 801F5284 001F21E4 7C 08 03 A6 */ mtlr r0 +/* 801F5288 001F21E8 38 21 00 50 */ addi r1, r1, 0x50 +/* 801F528C 001F21EC 4E 80 00 20 */ blr + +.global UpdateDest__10CPatternedFR13CStateManager +UpdateDest__10CPatternedFR13CStateManager: +/* 801F5290 001F21F0 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 801F5294 001F21F4 7C 08 02 A6 */ mflr r0 +/* 801F5298 001F21F8 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 801F529C 001F21FC BF 61 00 AC */ stmw r27, 0xac(r1) +/* 801F52A0 001F2200 7C 7B 1B 78 */ mr r27, r3 +/* 801F52A4 001F2204 7C 9C 23 78 */ mr r28, r4 +/* 801F52A8 001F2208 88 03 03 28 */ lbz r0, 0x328(r3) +/* 801F52AC 001F220C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801F52B0 001F2210 41 82 03 2C */ beq lbl_801F55DC +/* 801F52B4 001F2214 A0 7B 02 DC */ lhz r3, 0x2dc(r27) +/* 801F52B8 001F2218 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801F52BC 001F221C 7C 03 00 40 */ cmplw r3, r0 +/* 801F52C0 001F2220 41 82 03 1C */ beq lbl_801F55DC +/* 801F52C4 001F2224 A0 1B 02 DC */ lhz r0, 0x2dc(r27) +/* 801F52C8 001F2228 7F 83 E3 78 */ mr r3, r28 +/* 801F52CC 001F222C 38 81 00 24 */ addi r4, r1, 0x24 +/* 801F52D0 001F2230 B0 01 00 24 */ sth r0, 0x24(r1) +/* 801F52D4 001F2234 4B E5 72 A1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801F52D8 001F2238 7C 64 1B 78 */ mr r4, r3 +/* 801F52DC 001F223C 38 61 00 44 */ addi r3, r1, 0x44 +/* 801F52E0 001F2240 4B EB 12 6D */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 801F52E4 001F2244 83 E3 00 04 */ lwz r31, 4(r3) +/* 801F52E8 001F2248 28 1F 00 00 */ cmplwi r31, 0 +/* 801F52EC 001F224C 41 82 02 F0 */ beq lbl_801F55DC +/* 801F52F0 001F2250 7F 63 DB 78 */ mr r3, r27 +/* 801F52F4 001F2254 7F 84 E3 78 */ mr r4, r28 +/* 801F52F8 001F2258 4B FF FE 75 */ bl UpdateActorKeyframe__10CPatternedFR13CStateManager +/* 801F52FC 001F225C 7F E4 FB 78 */ mr r4, r31 +/* 801F5300 001F2260 7F 85 E3 78 */ mr r5, r28 +/* 801F5304 001F2264 38 61 00 20 */ addi r3, r1, 0x20 +/* 801F5308 001F2268 4B E8 1E 2D */ bl NextWaypoint__15CScriptWaypointCFR13CStateManager +/* 801F530C 001F226C A0 01 00 20 */ lhz r0, 0x20(r1) +/* 801F5310 001F2270 B0 1B 02 DC */ sth r0, 0x2dc(r27) +/* 801F5314 001F2274 A0 7B 02 DC */ lhz r3, 0x2dc(r27) +/* 801F5318 001F2278 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801F531C 001F227C 7C 03 00 40 */ cmplw r3, r0 +/* 801F5320 001F2280 41 82 02 9C */ beq lbl_801F55BC +/* 801F5324 001F2284 C0 5B 00 60 */ lfs f2, 0x60(r27) +/* 801F5328 001F2288 38 A0 00 00 */ li r5, 0 +/* 801F532C 001F228C C0 3B 00 50 */ lfs f1, 0x50(r27) +/* 801F5330 001F2290 7F 83 E3 78 */ mr r3, r28 +/* 801F5334 001F2294 C0 1B 00 40 */ lfs f0, 0x40(r27) +/* 801F5338 001F2298 38 81 00 1C */ addi r4, r1, 0x1c +/* 801F533C 001F229C D0 1B 02 EC */ stfs f0, 0x2ec(r27) +/* 801F5340 001F22A0 D0 3B 02 F0 */ stfs f1, 0x2f0(r27) +/* 801F5344 001F22A4 D0 5B 02 F4 */ stfs f2, 0x2f4(r27) +/* 801F5348 001F22A8 88 1B 03 28 */ lbz r0, 0x328(r27) +/* 801F534C 001F22AC 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 801F5350 001F22B0 98 1B 03 28 */ stb r0, 0x328(r27) +/* 801F5354 001F22B4 A0 1B 02 DC */ lhz r0, 0x2dc(r27) +/* 801F5358 001F22B8 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 801F535C 001F22BC 4B E5 72 49 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801F5360 001F22C0 7C 64 1B 78 */ mr r4, r3 +/* 801F5364 001F22C4 38 61 00 3C */ addi r3, r1, 0x3c +/* 801F5368 001F22C8 4B EB 11 E5 */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 801F536C 001F22CC 83 C3 00 04 */ lwz r30, 4(r3) +/* 801F5370 001F22D0 28 1E 00 00 */ cmplwi r30, 0 +/* 801F5374 001F22D4 41 82 02 48 */ beq lbl_801F55BC +/* 801F5378 001F22D8 C0 1F 00 E8 */ lfs f0, 0xe8(r31) +/* 801F537C 001F22DC D0 1B 03 B0 */ stfs f0, 0x3b0(r27) +/* 801F5380 001F22E0 88 1F 00 F8 */ lbz r0, 0xf8(r31) +/* 801F5384 001F22E4 90 1B 03 0C */ stw r0, 0x30c(r27) +/* 801F5388 001F22E8 A0 7F 00 FA */ lhz r3, 0xfa(r31) +/* 801F538C 001F22EC 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e +/* 801F5390 001F22F0 41 82 00 F0 */ beq lbl_801F5480 +/* 801F5394 001F22F4 3C C0 80 3E */ lis r6, lbl_803DAA68@ha +/* 801F5398 001F22F8 38 A0 00 00 */ li r5, 0 +/* 801F539C 001F22FC 39 06 AA 68 */ addi r8, r6, lbl_803DAA68@l +/* 801F53A0 001F2300 88 81 00 A4 */ lbz r4, 0xa4(r1) +/* 801F53A4 001F2304 50 A4 3E 30 */ rlwimi r4, r5, 7, 0x18, 0x18 +/* 801F53A8 001F2308 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801F53AC 001F230C C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) +/* 801F53B0 001F2310 3C C0 80 3E */ lis r6, lbl_803DA9FC@ha +/* 801F53B4 001F2314 C0 BE 00 60 */ lfs f5, 0x60(r30) +/* 801F53B8 001F2318 54 80 06 3E */ clrlwi r0, r4, 0x18 +/* 801F53BC 001F231C C0 9E 00 50 */ lfs f4, 0x50(r30) +/* 801F53C0 001F2320 38 E0 00 10 */ li r7, 0x10 +/* 801F53C4 001F2324 C0 7E 00 40 */ lfs f3, 0x40(r30) +/* 801F53C8 001F2328 38 C6 A9 FC */ addi r6, r6, lbl_803DA9FC@l +/* 801F53CC 001F232C 81 3B 04 50 */ lwz r9, 0x450(r27) +/* 801F53D0 001F2330 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 801F53D4 001F2334 98 81 00 A4 */ stb r4, 0xa4(r1) +/* 801F53D8 001F2338 38 80 00 10 */ li r4, 0x10 +/* 801F53DC 001F233C C0 23 00 04 */ lfs f1, 4(r3) +/* 801F53E0 001F2340 3B C9 00 04 */ addi r30, r9, 4 +/* 801F53E4 001F2344 C0 03 00 08 */ lfs f0, 8(r3) +/* 801F53E8 001F2348 7F C3 F3 78 */ mr r3, r30 +/* 801F53EC 001F234C 91 01 00 80 */ stw r8, 0x80(r1) +/* 801F53F0 001F2350 90 E1 00 84 */ stw r7, 0x84(r1) +/* 801F53F4 001F2354 90 C1 00 80 */ stw r6, 0x80(r1) +/* 801F53F8 001F2358 90 A1 00 88 */ stw r5, 0x88(r1) +/* 801F53FC 001F235C D0 61 00 8C */ stfs f3, 0x8c(r1) +/* 801F5400 001F2360 D0 81 00 90 */ stfs f4, 0x90(r1) +/* 801F5404 001F2364 D0 A1 00 94 */ stfs f5, 0x94(r1) +/* 801F5408 001F2368 D0 41 00 98 */ stfs f2, 0x98(r1) +/* 801F540C 001F236C D0 21 00 9C */ stfs f1, 0x9c(r1) +/* 801F5410 001F2370 D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 801F5414 001F2374 98 01 00 A4 */ stb r0, 0xa4(r1) +/* 801F5418 001F2378 4B F3 C0 21 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801F541C 001F237C 80 01 00 84 */ lwz r0, 0x84(r1) +/* 801F5420 001F2380 3C 60 80 3E */ lis r3, lbl_803DA9FC@ha +/* 801F5424 001F2384 38 83 A9 FC */ addi r4, r3, lbl_803DA9FC@l +/* 801F5428 001F2388 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801F542C 001F238C 90 1E 01 D4 */ stw r0, 0x1d4(r30) +/* 801F5430 001F2390 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801F5434 001F2394 80 A1 00 88 */ lwz r5, 0x88(r1) +/* 801F5438 001F2398 80 61 00 8C */ lwz r3, 0x8c(r1) +/* 801F543C 001F239C 90 BE 01 D8 */ stw r5, 0x1d8(r30) +/* 801F5440 001F23A0 80 A1 00 90 */ lwz r5, 0x90(r1) +/* 801F5444 001F23A4 90 7E 01 DC */ stw r3, 0x1dc(r30) +/* 801F5448 001F23A8 80 61 00 94 */ lwz r3, 0x94(r1) +/* 801F544C 001F23AC 90 BE 01 E0 */ stw r5, 0x1e0(r30) +/* 801F5450 001F23B0 80 A1 00 98 */ lwz r5, 0x98(r1) +/* 801F5454 001F23B4 90 7E 01 E4 */ stw r3, 0x1e4(r30) +/* 801F5458 001F23B8 80 61 00 9C */ lwz r3, 0x9c(r1) +/* 801F545C 001F23BC 90 BE 01 E8 */ stw r5, 0x1e8(r30) +/* 801F5460 001F23C0 80 A1 00 A0 */ lwz r5, 0xa0(r1) +/* 801F5464 001F23C4 90 7E 01 EC */ stw r3, 0x1ec(r30) +/* 801F5468 001F23C8 88 61 00 A4 */ lbz r3, 0xa4(r1) +/* 801F546C 001F23CC 90 BE 01 F0 */ stw r5, 0x1f0(r30) +/* 801F5470 001F23D0 90 81 00 80 */ stw r4, 0x80(r1) +/* 801F5474 001F23D4 98 7E 01 F4 */ stb r3, 0x1f4(r30) +/* 801F5478 001F23D8 90 01 00 80 */ stw r0, 0x80(r1) +/* 801F547C 001F23DC 48 00 01 40 */ b lbl_801F55BC +lbl_801F5480: +/* 801F5480 001F23E0 54 60 07 7B */ rlwinm. r0, r3, 0, 0x1d, 0x1d +/* 801F5484 001F23E4 41 82 01 38 */ beq lbl_801F55BC +/* 801F5488 001F23E8 7F C4 F3 78 */ mr r4, r30 +/* 801F548C 001F23EC 7F 85 E3 78 */ mr r5, r28 +/* 801F5490 001F23F0 38 61 00 18 */ addi r3, r1, 0x18 +/* 801F5494 001F23F4 4B E8 1C A1 */ bl NextWaypoint__15CScriptWaypointCFR13CStateManager +/* 801F5498 001F23F8 A0 61 00 18 */ lhz r3, 0x18(r1) +/* 801F549C 001F23FC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801F54A0 001F2400 B0 61 00 28 */ sth r3, 0x28(r1) +/* 801F54A4 001F2404 7C 03 00 40 */ cmplw r3, r0 +/* 801F54A8 001F2408 41 82 01 14 */ beq lbl_801F55BC +/* 801F54AC 001F240C B0 61 00 14 */ sth r3, 0x14(r1) +/* 801F54B0 001F2410 7F 83 E3 78 */ mr r3, r28 +/* 801F54B4 001F2414 38 81 00 14 */ addi r4, r1, 0x14 +/* 801F54B8 001F2418 4B E5 70 ED */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801F54BC 001F241C 7C 64 1B 78 */ mr r4, r3 +/* 801F54C0 001F2420 38 61 00 34 */ addi r3, r1, 0x34 +/* 801F54C4 001F2424 4B EB 10 89 */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 801F54C8 001F2428 81 03 00 04 */ lwz r8, 4(r3) +/* 801F54CC 001F242C 28 08 00 00 */ cmplwi r8, 0 +/* 801F54D0 001F2430 41 82 00 EC */ beq lbl_801F55BC +/* 801F54D4 001F2434 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801F54D8 001F2438 88 A1 00 7C */ lbz r5, 0x7c(r1) +/* 801F54DC 001F243C 38 00 00 01 */ li r0, 1 +/* 801F54E0 001F2440 80 FB 04 50 */ lwz r7, 0x450(r27) +/* 801F54E4 001F2444 50 05 3E 30 */ rlwimi r5, r0, 7, 0x18, 0x18 +/* 801F54E8 001F2448 38 83 AA 68 */ addi r4, r3, lbl_803DAA68@l +/* 801F54EC 001F244C C0 48 00 60 */ lfs f2, 0x60(r8) +/* 801F54F0 001F2450 3C 60 80 3E */ lis r3, lbl_803DA9FC@ha +/* 801F54F4 001F2454 C0 28 00 50 */ lfs f1, 0x50(r8) +/* 801F54F8 001F2458 38 C0 00 00 */ li r6, 0 +/* 801F54FC 001F245C C0 08 00 40 */ lfs f0, 0x40(r8) +/* 801F5500 001F2460 54 A0 06 3E */ clrlwi r0, r5, 0x18 +/* 801F5504 001F2464 C0 BE 00 60 */ lfs f5, 0x60(r30) +/* 801F5508 001F2468 39 00 00 10 */ li r8, 0x10 +/* 801F550C 001F246C C0 9E 00 50 */ lfs f4, 0x50(r30) +/* 801F5510 001F2470 3B A7 00 04 */ addi r29, r7, 4 +/* 801F5514 001F2474 C0 7E 00 40 */ lfs f3, 0x40(r30) +/* 801F5518 001F2478 38 E3 A9 FC */ addi r7, r3, lbl_803DA9FC@l +/* 801F551C 001F247C 90 81 00 58 */ stw r4, 0x58(r1) +/* 801F5520 001F2480 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19 +/* 801F5524 001F2484 7F A3 EB 78 */ mr r3, r29 +/* 801F5528 001F2488 38 80 00 10 */ li r4, 0x10 +/* 801F552C 001F248C 98 A1 00 7C */ stb r5, 0x7c(r1) +/* 801F5530 001F2490 91 01 00 5C */ stw r8, 0x5c(r1) +/* 801F5534 001F2494 90 E1 00 58 */ stw r7, 0x58(r1) +/* 801F5538 001F2498 90 C1 00 60 */ stw r6, 0x60(r1) +/* 801F553C 001F249C D0 61 00 64 */ stfs f3, 0x64(r1) +/* 801F5540 001F24A0 D0 81 00 68 */ stfs f4, 0x68(r1) +/* 801F5544 001F24A4 D0 A1 00 6C */ stfs f5, 0x6c(r1) +/* 801F5548 001F24A8 D0 01 00 70 */ stfs f0, 0x70(r1) +/* 801F554C 001F24AC D0 21 00 74 */ stfs f1, 0x74(r1) +/* 801F5550 001F24B0 D0 41 00 78 */ stfs f2, 0x78(r1) +/* 801F5554 001F24B4 98 01 00 7C */ stb r0, 0x7c(r1) +/* 801F5558 001F24B8 4B F3 BE E1 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801F555C 001F24BC 80 01 00 5C */ lwz r0, 0x5c(r1) +/* 801F5560 001F24C0 3C 60 80 3E */ lis r3, lbl_803DA9FC@ha +/* 801F5564 001F24C4 38 83 A9 FC */ addi r4, r3, lbl_803DA9FC@l +/* 801F5568 001F24C8 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801F556C 001F24CC 90 1D 01 D4 */ stw r0, 0x1d4(r29) +/* 801F5570 001F24D0 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801F5574 001F24D4 80 A1 00 60 */ lwz r5, 0x60(r1) +/* 801F5578 001F24D8 80 61 00 64 */ lwz r3, 0x64(r1) +/* 801F557C 001F24DC 90 BD 01 D8 */ stw r5, 0x1d8(r29) +/* 801F5580 001F24E0 80 A1 00 68 */ lwz r5, 0x68(r1) +/* 801F5584 001F24E4 90 7D 01 DC */ stw r3, 0x1dc(r29) +/* 801F5588 001F24E8 80 61 00 6C */ lwz r3, 0x6c(r1) +/* 801F558C 001F24EC 90 BD 01 E0 */ stw r5, 0x1e0(r29) +/* 801F5590 001F24F0 80 A1 00 70 */ lwz r5, 0x70(r1) +/* 801F5594 001F24F4 90 7D 01 E4 */ stw r3, 0x1e4(r29) +/* 801F5598 001F24F8 80 61 00 74 */ lwz r3, 0x74(r1) +/* 801F559C 001F24FC 90 BD 01 E8 */ stw r5, 0x1e8(r29) +/* 801F55A0 001F2500 80 A1 00 78 */ lwz r5, 0x78(r1) +/* 801F55A4 001F2504 90 7D 01 EC */ stw r3, 0x1ec(r29) +/* 801F55A8 001F2508 88 61 00 7C */ lbz r3, 0x7c(r1) +/* 801F55AC 001F250C 90 BD 01 F0 */ stw r5, 0x1f0(r29) +/* 801F55B0 001F2510 90 81 00 58 */ stw r4, 0x58(r1) +/* 801F55B4 001F2514 98 7D 01 F4 */ stb r3, 0x1f4(r29) +/* 801F55B8 001F2518 90 01 00 58 */ stw r0, 0x58(r1) +lbl_801F55BC: +/* 801F55BC 001F251C A0 1B 00 08 */ lhz r0, 8(r27) +/* 801F55C0 001F2520 7F 83 E3 78 */ mr r3, r28 +/* 801F55C4 001F2524 7F E4 FB 78 */ mr r4, r31 +/* 801F55C8 001F2528 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801F55CC 001F252C B0 01 00 0C */ sth r0, 0xc(r1) +/* 801F55D0 001F2530 38 C0 00 02 */ li r6, 2 +/* 801F55D4 001F2534 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801F55D8 001F2538 4B E4 E8 F9 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +lbl_801F55DC: +/* 801F55DC 001F253C A0 7B 02 DC */ lhz r3, 0x2dc(r27) +/* 801F55E0 001F2540 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801F55E4 001F2544 7C 03 00 40 */ cmplw r3, r0 +/* 801F55E8 001F2548 41 82 00 54 */ beq lbl_801F563C +/* 801F55EC 001F254C A0 1B 02 DC */ lhz r0, 0x2dc(r27) +/* 801F55F0 001F2550 7F 83 E3 78 */ mr r3, r28 +/* 801F55F4 001F2554 38 81 00 08 */ addi r4, r1, 8 +/* 801F55F8 001F2558 B0 01 00 08 */ sth r0, 8(r1) +/* 801F55FC 001F255C 4B E5 6F A9 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801F5600 001F2560 7C 64 1B 78 */ mr r4, r3 +/* 801F5604 001F2564 38 61 00 2C */ addi r3, r1, 0x2c +/* 801F5608 001F2568 4B EB A6 89 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 801F560C 001F256C 80 A3 00 04 */ lwz r5, 4(r3) +/* 801F5610 001F2570 28 05 00 00 */ cmplwi r5, 0 +/* 801F5614 001F2574 41 82 00 28 */ beq lbl_801F563C +/* 801F5618 001F2578 C0 45 00 60 */ lfs f2, 0x60(r5) +/* 801F561C 001F257C 7F 63 DB 78 */ mr r3, r27 +/* 801F5620 001F2580 C0 25 00 50 */ lfs f1, 0x50(r5) +/* 801F5624 001F2584 38 81 00 4C */ addi r4, r1, 0x4c +/* 801F5628 001F2588 C0 05 00 40 */ lfs f0, 0x40(r5) +/* 801F562C 001F258C D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 801F5630 001F2590 D0 21 00 50 */ stfs f1, 0x50(r1) +/* 801F5634 001F2594 D0 41 00 54 */ stfs f2, 0x54(r1) +/* 801F5638 001F2598 4B E8 75 25 */ bl SetDestPos__10CPatternedFRC9CVector3f +lbl_801F563C: +/* 801F563C 001F259C BB 61 00 AC */ lmw r27, 0xac(r1) +/* 801F5640 001F25A0 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 801F5644 001F25A4 7C 08 03 A6 */ mtlr r0 +/* 801F5648 001F25A8 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 801F564C 001F25AC 4E 80 00 20 */ blr + +.global ApproachDest__10CPatternedFR13CStateManager +ApproachDest__10CPatternedFR13CStateManager: +/* 801F5650 001F25B0 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 801F5654 001F25B4 7C 08 02 A6 */ mflr r0 +/* 801F5658 001F25B8 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 801F565C 001F25BC DB E1 00 D0 */ stfd f31, 0xd0(r1) +/* 801F5660 001F25C0 F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 +/* 801F5664 001F25C4 DB C1 00 C0 */ stfd f30, 0xc0(r1) +/* 801F5668 001F25C8 F3 C1 00 C8 */ psq_st f30, 200(r1), 0, qr0 +/* 801F566C 001F25CC DB A1 00 B0 */ stfd f29, 0xb0(r1) +/* 801F5670 001F25D0 F3 A1 00 B8 */ psq_st f29, 184(r1), 0, qr0 +/* 801F5674 001F25D4 93 E1 00 AC */ stw r31, 0xac(r1) +/* 801F5678 001F25D8 93 C1 00 A8 */ stw r30, 0xa8(r1) +/* 801F567C 001F25DC 7C 7F 1B 78 */ mr r31, r3 +/* 801F5680 001F25E0 C0 63 00 60 */ lfs f3, 0x60(r3) +/* 801F5684 001F25E4 80 64 08 4C */ lwz r3, 0x84c(r4) +/* 801F5688 001F25E8 7C 9E 23 78 */ mr r30, r4 +/* 801F568C 001F25EC C0 1F 02 E8 */ lfs f0, 0x2e8(r31) +/* 801F5690 001F25F0 C0 23 00 60 */ lfs f1, 0x60(r3) +/* 801F5694 001F25F4 EC 40 18 28 */ fsubs f2, f0, f3 +/* 801F5698 001F25F8 C0 9F 00 50 */ lfs f4, 0x50(r31) +/* 801F569C 001F25FC EF A1 18 28 */ fsubs f29, f1, f3 +/* 801F56A0 001F2600 C0 1F 02 E4 */ lfs f0, 0x2e4(r31) +/* 801F56A4 001F2604 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801F56A8 001F2608 EC 60 20 28 */ fsubs f3, f0, f4 +/* 801F56AC 001F260C EF C1 20 28 */ fsubs f30, f1, f4 +/* 801F56B0 001F2610 C0 BF 00 40 */ lfs f5, 0x40(r31) +/* 801F56B4 001F2614 C0 1F 02 E0 */ lfs f0, 0x2e0(r31) +/* 801F56B8 001F2618 C0 23 00 40 */ lfs f1, 0x40(r3) +/* 801F56BC 001F261C EC 00 28 28 */ fsubs f0, f0, f5 +/* 801F56C0 001F2620 D0 61 00 28 */ stfs f3, 0x28(r1) +/* 801F56C4 001F2624 EF E1 28 28 */ fsubs f31, f1, f5 +/* 801F56C8 001F2628 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801F56CC 001F262C D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 801F56D0 001F2630 88 1F 03 28 */ lbz r0, 0x328(r31) +/* 801F56D4 001F2634 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801F56D8 001F2638 40 82 00 0C */ bne lbl_801F56E4 +/* 801F56DC 001F263C C3 A2 AF 20 */ lfs f29, lbl_805ACC40@sda21(r2) +/* 801F56E0 001F2640 D3 A1 00 2C */ stfs f29, 0x2c(r1) +lbl_801F56E4: +/* 801F56E4 001F2644 C0 3F 02 E4 */ lfs f1, 0x2e4(r31) +/* 801F56E8 001F2648 C0 1F 02 F0 */ lfs f0, 0x2f0(r31) +/* 801F56EC 001F264C C0 7F 02 E0 */ lfs f3, 0x2e0(r31) +/* 801F56F0 001F2650 C0 5F 02 EC */ lfs f2, 0x2ec(r31) +/* 801F56F4 001F2654 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801F56F8 001F2658 C0 A1 00 28 */ lfs f5, 0x28(r1) +/* 801F56FC 001F265C EC 63 10 28 */ fsubs f3, f3, f2 +/* 801F5700 001F2660 C0 5F 02 E8 */ lfs f2, 0x2e8(r31) +/* 801F5704 001F2664 C0 3F 02 F4 */ lfs f1, 0x2f4(r31) +/* 801F5708 001F2668 EC 04 01 72 */ fmuls f0, f4, f5 +/* 801F570C 001F266C C0 C1 00 24 */ lfs f6, 0x24(r1) +/* 801F5710 001F2670 EC 42 08 28 */ fsubs f2, f2, f1 +/* 801F5714 001F2674 EC 23 01 BA */ fmadds f1, f3, f6, f0 +/* 801F5718 001F2678 C0 E1 00 2C */ lfs f7, 0x2c(r1) +/* 801F571C 001F267C C0 02 AF 20 */ lfs f0, lbl_805ACC40@sda21(r2) +/* 801F5720 001F2680 EC 22 09 FA */ fmadds f1, f2, f7, f1 +/* 801F5724 001F2684 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F5728 001F2688 4C 40 13 82 */ cror 2, 0, 2 +/* 801F572C 001F268C 40 82 00 18 */ bne lbl_801F5744 +/* 801F5730 001F2690 88 1F 03 28 */ lbz r0, 0x328(r31) +/* 801F5734 001F2694 38 60 00 01 */ li r3, 1 +/* 801F5738 001F2698 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801F573C 001F269C 98 1F 03 28 */ stb r0, 0x328(r31) +/* 801F5740 001F26A0 48 00 00 2C */ b lbl_801F576C +lbl_801F5744: +/* 801F5744 001F26A4 EC 25 01 72 */ fmuls f1, f5, f5 +/* 801F5748 001F26A8 C0 02 88 F4 */ lfs f0, lbl_805AA614@sda21(r2) +/* 801F574C 001F26AC EC 00 00 32 */ fmuls f0, f0, f0 +/* 801F5750 001F26B0 EC 26 09 BA */ fmadds f1, f6, f6, f1 +/* 801F5754 001F26B4 EC 27 09 FA */ fmadds f1, f7, f7, f1 +/* 801F5758 001F26B8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F575C 001F26BC 40 80 00 10 */ bge lbl_801F576C +/* 801F5760 001F26C0 D0 61 00 24 */ stfs f3, 0x24(r1) +/* 801F5764 001F26C4 D0 81 00 28 */ stfs f4, 0x28(r1) +/* 801F5768 001F26C8 D0 41 00 2C */ stfs f2, 0x2c(r1) +lbl_801F576C: +/* 801F576C 001F26CC 88 1F 03 28 */ lbz r0, 0x328(r31) +/* 801F5770 001F26D0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801F5774 001F26D4 40 82 02 CC */ bne lbl_801F5A40 +/* 801F5778 001F26D8 38 61 00 24 */ addi r3, r1, 0x24 +/* 801F577C 001F26DC 48 11 EF 7D */ bl CanBeNormalized__9CVector3fCFv +/* 801F5780 001F26E0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801F5784 001F26E4 41 82 00 0C */ beq lbl_801F5790 +/* 801F5788 001F26E8 38 61 00 24 */ addi r3, r1, 0x24 +/* 801F578C 001F26EC 48 11 F1 6D */ bl Normalize__9CVector3fFv +lbl_801F5790: +/* 801F5790 001F26F0 80 1F 03 0C */ lwz r0, 0x30c(r31) +/* 801F5794 001F26F4 2C 00 00 02 */ cmpwi r0, 2 +/* 801F5798 001F26F8 41 82 00 28 */ beq lbl_801F57C0 +/* 801F579C 001F26FC 40 80 00 A4 */ bge lbl_801F5840 +/* 801F57A0 001F2700 2C 00 00 00 */ cmpwi r0, 0 +/* 801F57A4 001F2704 41 82 00 0C */ beq lbl_801F57B0 +/* 801F57A8 001F2708 48 00 00 98 */ b lbl_801F5840 +/* 801F57AC 001F270C 48 00 00 94 */ b lbl_801F5840 +lbl_801F57B0: +/* 801F57B0 001F2710 C3 E1 00 24 */ lfs f31, 0x24(r1) +/* 801F57B4 001F2714 C3 C1 00 28 */ lfs f30, 0x28(r1) +/* 801F57B8 001F2718 C3 A1 00 2C */ lfs f29, 0x2c(r1) +/* 801F57BC 001F271C 48 00 00 84 */ b lbl_801F5840 +lbl_801F57C0: +/* 801F57C0 001F2720 80 7F 03 9C */ lwz r3, 0x39c(r31) +/* 801F57C4 001F2724 2C 03 00 00 */ cmpwi r3, 0 +/* 801F57C8 001F2728 41 82 00 30 */ beq lbl_801F57F8 +/* 801F57CC 001F272C 80 1F 03 90 */ lwz r0, 0x390(r31) +/* 801F57D0 001F2730 7C 03 00 00 */ cmpw r3, r0 +/* 801F57D4 001F2734 40 80 00 24 */ bge lbl_801F57F8 +/* 801F57D8 001F2738 1C 63 00 24 */ mulli r3, r3, 0x24 +/* 801F57DC 001F273C 80 1F 03 98 */ lwz r0, 0x398(r31) +/* 801F57E0 001F2740 38 63 00 0C */ addi r3, r3, 0xc +/* 801F57E4 001F2744 7C 60 1A 14 */ add r3, r0, r3 +/* 801F57E8 001F2748 C3 E3 00 00 */ lfs f31, 0(r3) +/* 801F57EC 001F274C C3 C3 00 04 */ lfs f30, 4(r3) +/* 801F57F0 001F2750 C3 A3 00 08 */ lfs f29, 8(r3) +/* 801F57F4 001F2754 48 00 00 4C */ b lbl_801F5840 +lbl_801F57F8: +/* 801F57F8 001F2758 A0 7F 02 DC */ lhz r3, 0x2dc(r31) +/* 801F57FC 001F275C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801F5800 001F2760 7C 03 00 40 */ cmplw r3, r0 +/* 801F5804 001F2764 41 82 00 3C */ beq lbl_801F5840 +/* 801F5808 001F2768 A0 1F 02 DC */ lhz r0, 0x2dc(r31) +/* 801F580C 001F276C 7F C3 F3 78 */ mr r3, r30 +/* 801F5810 001F2770 38 81 00 08 */ addi r4, r1, 8 +/* 801F5814 001F2774 B0 01 00 08 */ sth r0, 8(r1) +/* 801F5818 001F2778 4B E5 6D 8D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801F581C 001F277C 7C 64 1B 78 */ mr r4, r3 +/* 801F5820 001F2780 38 61 00 0C */ addi r3, r1, 0xc +/* 801F5824 001F2784 4B EB 0D 29 */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 801F5828 001F2788 80 63 00 04 */ lwz r3, 4(r3) +/* 801F582C 001F278C 28 03 00 00 */ cmplwi r3, 0 +/* 801F5830 001F2790 41 82 00 10 */ beq lbl_801F5840 +/* 801F5834 001F2794 C3 E3 00 38 */ lfs f31, 0x38(r3) +/* 801F5838 001F2798 C3 C3 00 48 */ lfs f30, 0x48(r3) +/* 801F583C 001F279C C3 A3 00 58 */ lfs f29, 0x58(r3) +lbl_801F5840: +/* 801F5840 001F27A0 D3 FF 03 1C */ stfs f31, 0x31c(r31) +/* 801F5844 001F27A4 7F E3 FB 78 */ mr r3, r31 +/* 801F5848 001F27A8 D3 DF 03 20 */ stfs f30, 0x320(r31) +/* 801F584C 001F27AC D3 BF 03 24 */ stfs f29, 0x324(r31) +/* 801F5850 001F27B0 C0 7F 03 B0 */ lfs f3, 0x3b0(r31) +/* 801F5854 001F27B4 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 801F5858 001F27B8 C0 41 00 28 */ lfs f2, 0x28(r1) +/* 801F585C 001F27BC C0 21 00 2C */ lfs f1, 0x2c(r1) +/* 801F5860 001F27C0 EC 03 00 32 */ fmuls f0, f3, f0 +/* 801F5864 001F27C4 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 801F5868 001F27C8 EC 23 00 72 */ fmuls f1, f3, f1 +/* 801F586C 001F27CC D0 1F 03 10 */ stfs f0, 0x310(r31) +/* 801F5870 001F27D0 D0 5F 03 14 */ stfs f2, 0x314(r31) +/* 801F5874 001F27D4 D0 3F 03 18 */ stfs f1, 0x318(r31) +/* 801F5878 001F27D8 81 9F 00 00 */ lwz r12, 0(r31) +/* 801F587C 001F27DC 81 8C 02 94 */ lwz r12, 0x294(r12) +/* 801F5880 001F27E0 7D 89 03 A6 */ mtctr r12 +/* 801F5884 001F27E4 4E 80 04 21 */ bctrl +/* 801F5888 001F27E8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801F588C 001F27EC 40 82 00 50 */ bne lbl_801F58DC +/* 801F5890 001F27F0 C0 3F 03 10 */ lfs f1, 0x310(r31) +/* 801F5894 001F27F4 38 81 00 84 */ addi r4, r1, 0x84 +/* 801F5898 001F27F8 C0 02 AF 34 */ lfs f0, lbl_805ACC54@sda21(r2) +/* 801F589C 001F27FC D0 21 00 84 */ stfs f1, 0x84(r1) +/* 801F58A0 001F2800 C0 3F 03 14 */ lfs f1, 0x314(r31) +/* 801F58A4 001F2804 D0 21 00 88 */ stfs f1, 0x88(r1) +/* 801F58A8 001F2808 C0 3F 03 18 */ lfs f1, 0x318(r31) +/* 801F58AC 001F280C D0 21 00 8C */ stfs f1, 0x8c(r1) +/* 801F58B0 001F2810 C0 3F 03 1C */ lfs f1, 0x31c(r31) +/* 801F58B4 001F2814 D0 21 00 90 */ stfs f1, 0x90(r1) +/* 801F58B8 001F2818 C0 3F 03 20 */ lfs f1, 0x320(r31) +/* 801F58BC 001F281C D0 21 00 94 */ stfs f1, 0x94(r1) +/* 801F58C0 001F2820 C0 3F 03 24 */ lfs f1, 0x324(r31) +/* 801F58C4 001F2824 D0 21 00 98 */ stfs f1, 0x98(r1) +/* 801F58C8 001F2828 D0 01 00 9C */ stfs f0, 0x9c(r1) +/* 801F58CC 001F282C 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801F58D0 001F2830 38 63 00 04 */ addi r3, r3, 4 +/* 801F58D4 001F2834 4B F3 BE 45 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 801F58D8 001F2838 48 00 01 E8 */ b lbl_801F5AC0 +lbl_801F58DC: +/* 801F58DC 001F283C 80 1F 03 0C */ lwz r0, 0x30c(r31) +/* 801F58E0 001F2840 28 00 00 00 */ cmplwi r0, 0 +/* 801F58E4 001F2844 41 82 00 18 */ beq lbl_801F58FC +/* 801F58E8 001F2848 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801F58EC 001F284C 38 80 00 03 */ li r4, 3 +/* 801F58F0 001F2850 4B F4 52 C5 */ bl HasBodyState__15CBodyControllerCFQ23pas15EAnimationState +/* 801F58F4 001F2854 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801F58F8 001F2858 40 82 00 54 */ bne lbl_801F594C +lbl_801F58FC: +/* 801F58FC 001F285C C0 3F 03 10 */ lfs f1, 0x310(r31) +/* 801F5900 001F2860 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801F5904 001F2864 C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) +/* 801F5908 001F2868 38 81 00 68 */ addi r4, r1, 0x68 +/* 801F590C 001F286C D0 21 00 68 */ stfs f1, 0x68(r1) +/* 801F5910 001F2870 C0 02 AF 34 */ lfs f0, lbl_805ACC54@sda21(r2) +/* 801F5914 001F2874 C0 3F 03 14 */ lfs f1, 0x314(r31) +/* 801F5918 001F2878 C0 43 00 04 */ lfs f2, 4(r3) +/* 801F591C 001F287C D0 21 00 6C */ stfs f1, 0x6c(r1) +/* 801F5920 001F2880 C0 23 00 08 */ lfs f1, 8(r3) +/* 801F5924 001F2884 C0 9F 03 18 */ lfs f4, 0x318(r31) +/* 801F5928 001F2888 D0 81 00 70 */ stfs f4, 0x70(r1) +/* 801F592C 001F288C D0 61 00 74 */ stfs f3, 0x74(r1) +/* 801F5930 001F2890 D0 41 00 78 */ stfs f2, 0x78(r1) +/* 801F5934 001F2894 D0 21 00 7C */ stfs f1, 0x7c(r1) +/* 801F5938 001F2898 D0 01 00 80 */ stfs f0, 0x80(r1) +/* 801F593C 001F289C 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801F5940 001F28A0 38 63 00 04 */ addi r3, r3, 4 +/* 801F5944 001F28A4 4B F3 BD D5 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 801F5948 001F28A8 48 00 01 78 */ b lbl_801F5AC0 +lbl_801F594C: +/* 801F594C 001F28AC 7F E3 FB 78 */ mr r3, r31 +/* 801F5950 001F28B0 38 9F 03 10 */ addi r4, r31, 0x310 +/* 801F5954 001F28B4 4B FF F3 B9 */ bl GetStepDirection__10CPatternedFRC9CVector3f +/* 801F5958 001F28B8 2C 03 00 00 */ cmpwi r3, 0 +/* 801F595C 001F28BC 41 82 00 78 */ beq lbl_801F59D4 +/* 801F5960 001F28C0 3C A0 80 3E */ lis r5, lbl_803DAA68@ha +/* 801F5964 001F28C4 80 9F 04 50 */ lwz r4, 0x450(r31) +/* 801F5968 001F28C8 38 05 AA 68 */ addi r0, r5, lbl_803DAA68@l +/* 801F596C 001F28CC 3C A0 80 3E */ lis r5, lbl_803DA9E4@ha +/* 801F5970 001F28D0 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F5974 001F28D4 38 A5 A9 E4 */ addi r5, r5, lbl_803DA9E4@l +/* 801F5978 001F28D8 38 C0 00 01 */ li r6, 1 +/* 801F597C 001F28DC 38 00 00 00 */ li r0, 0 +/* 801F5980 001F28E0 90 C1 00 18 */ stw r6, 0x18(r1) +/* 801F5984 001F28E4 3B C4 00 04 */ addi r30, r4, 4 +/* 801F5988 001F28E8 38 80 00 01 */ li r4, 1 +/* 801F598C 001F28EC 90 61 00 1C */ stw r3, 0x1c(r1) +/* 801F5990 001F28F0 7F C3 F3 78 */ mr r3, r30 +/* 801F5994 001F28F4 90 A1 00 14 */ stw r5, 0x14(r1) +/* 801F5998 001F28F8 90 01 00 20 */ stw r0, 0x20(r1) +/* 801F599C 001F28FC 4B F3 BA 9D */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801F59A0 001F2900 80 01 00 18 */ lwz r0, 0x18(r1) +/* 801F59A4 001F2904 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha +/* 801F59A8 001F2908 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l +/* 801F59AC 001F290C 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801F59B0 001F2910 90 1E 00 C8 */ stw r0, 0xc8(r30) +/* 801F59B4 001F2914 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801F59B8 001F2918 80 A1 00 1C */ lwz r5, 0x1c(r1) +/* 801F59BC 001F291C 90 81 00 14 */ stw r4, 0x14(r1) +/* 801F59C0 001F2920 80 61 00 20 */ lwz r3, 0x20(r1) +/* 801F59C4 001F2924 90 BE 00 CC */ stw r5, 0xcc(r30) +/* 801F59C8 001F2928 90 7E 00 D0 */ stw r3, 0xd0(r30) +/* 801F59CC 001F292C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F59D0 001F2930 48 00 00 50 */ b lbl_801F5A20 +lbl_801F59D4: +/* 801F59D4 001F2934 C0 3F 03 10 */ lfs f1, 0x310(r31) +/* 801F59D8 001F2938 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801F59DC 001F293C C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) +/* 801F59E0 001F2940 38 81 00 4C */ addi r4, r1, 0x4c +/* 801F59E4 001F2944 D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 801F59E8 001F2948 C0 02 AF 34 */ lfs f0, lbl_805ACC54@sda21(r2) +/* 801F59EC 001F294C C0 3F 03 14 */ lfs f1, 0x314(r31) +/* 801F59F0 001F2950 C0 43 00 04 */ lfs f2, 4(r3) +/* 801F59F4 001F2954 D0 21 00 50 */ stfs f1, 0x50(r1) +/* 801F59F8 001F2958 C0 23 00 08 */ lfs f1, 8(r3) +/* 801F59FC 001F295C C0 9F 03 18 */ lfs f4, 0x318(r31) +/* 801F5A00 001F2960 D0 81 00 54 */ stfs f4, 0x54(r1) +/* 801F5A04 001F2964 D0 61 00 58 */ stfs f3, 0x58(r1) +/* 801F5A08 001F2968 D0 41 00 5C */ stfs f2, 0x5c(r1) +/* 801F5A0C 001F296C D0 21 00 60 */ stfs f1, 0x60(r1) +/* 801F5A10 001F2970 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 801F5A14 001F2974 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801F5A18 001F2978 38 63 00 04 */ addi r3, r3, 4 +/* 801F5A1C 001F297C 4B F3 BC FD */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +lbl_801F5A20: +/* 801F5A20 001F2980 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801F5A24 001F2984 C0 1F 03 1C */ lfs f0, 0x31c(r31) +/* 801F5A28 001F2988 D0 03 00 1C */ stfs f0, 0x1c(r3) +/* 801F5A2C 001F298C C0 1F 03 20 */ lfs f0, 0x320(r31) +/* 801F5A30 001F2990 D0 03 00 20 */ stfs f0, 0x20(r3) +/* 801F5A34 001F2994 C0 1F 03 24 */ lfs f0, 0x324(r31) +/* 801F5A38 001F2998 D0 03 00 24 */ stfs f0, 0x24(r3) +/* 801F5A3C 001F299C 48 00 00 84 */ b lbl_801F5AC0 +lbl_801F5A40: +/* 801F5A40 001F29A0 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801F5A44 001F29A4 38 63 02 A4 */ addi r3, r3, 0x2a4 +/* 801F5A48 001F29A8 4B F3 E4 65 */ bl GetMaxSpeed__14CBodyStateInfoCFv +/* 801F5A4C 001F29AC FF A0 08 90 */ fmr f29, f1 +/* 801F5A50 001F29B0 C0 02 AF 38 */ lfs f0, lbl_805ACC58@sda21(r2) +/* 801F5A54 001F29B4 FC 1D 00 40 */ fcmpo cr0, f29, f0 +/* 801F5A58 001F29B8 40 81 00 68 */ ble lbl_801F5AC0 +/* 801F5A5C 001F29BC 38 7F 01 38 */ addi r3, r31, 0x138 +/* 801F5A60 001F29C0 48 11 EE 59 */ bl Magnitude__9CVector3fCFv +/* 801F5A64 001F29C4 EC 81 E8 24 */ fdivs f4, f1, f29 +/* 801F5A68 001F29C8 C0 5F 00 48 */ lfs f2, 0x48(r31) +/* 801F5A6C 001F29CC C0 3F 00 58 */ lfs f1, 0x58(r31) +/* 801F5A70 001F29D0 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801F5A74 001F29D4 C0 1F 00 38 */ lfs f0, 0x38(r31) +/* 801F5A78 001F29D8 38 81 00 30 */ addi r4, r1, 0x30 +/* 801F5A7C 001F29DC C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) +/* 801F5A80 001F29E0 EC C4 00 B2 */ fmuls f6, f4, f2 +/* 801F5A84 001F29E4 EC A4 00 72 */ fmuls f5, f4, f1 +/* 801F5A88 001F29E8 EC 84 00 32 */ fmuls f4, f4, f0 +/* 801F5A8C 001F29EC C0 43 00 04 */ lfs f2, 4(r3) +/* 801F5A90 001F29F0 C0 23 00 08 */ lfs f1, 8(r3) +/* 801F5A94 001F29F4 C0 02 AF 34 */ lfs f0, lbl_805ACC54@sda21(r2) +/* 801F5A98 001F29F8 D0 81 00 30 */ stfs f4, 0x30(r1) +/* 801F5A9C 001F29FC D0 C1 00 34 */ stfs f6, 0x34(r1) +/* 801F5AA0 001F2A00 D0 A1 00 38 */ stfs f5, 0x38(r1) +/* 801F5AA4 001F2A04 D0 61 00 3C */ stfs f3, 0x3c(r1) +/* 801F5AA8 001F2A08 D0 41 00 40 */ stfs f2, 0x40(r1) +/* 801F5AAC 001F2A0C D0 21 00 44 */ stfs f1, 0x44(r1) +/* 801F5AB0 001F2A10 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 801F5AB4 001F2A14 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801F5AB8 001F2A18 38 63 00 04 */ addi r3, r3, 4 +/* 801F5ABC 001F2A1C 4B F3 BC 5D */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +lbl_801F5AC0: +/* 801F5AC0 001F2A20 E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 +/* 801F5AC4 001F2A24 CB E1 00 D0 */ lfd f31, 0xd0(r1) +/* 801F5AC8 001F2A28 E3 C1 00 C8 */ psq_l f30, 200(r1), 0, qr0 +/* 801F5ACC 001F2A2C CB C1 00 C0 */ lfd f30, 0xc0(r1) +/* 801F5AD0 001F2A30 E3 A1 00 B8 */ psq_l f29, 184(r1), 0, qr0 +/* 801F5AD4 001F2A34 CB A1 00 B0 */ lfd f29, 0xb0(r1) +/* 801F5AD8 001F2A38 83 E1 00 AC */ lwz r31, 0xac(r1) +/* 801F5ADC 001F2A3C 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 801F5AE0 001F2A40 83 C1 00 A8 */ lwz r30, 0xa8(r1) +/* 801F5AE4 001F2A44 7C 08 03 A6 */ mtlr r0 +/* 801F5AE8 001F2A48 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 801F5AEC 001F2A4C 4E 80 00 20 */ blr + +.global CodeTrigger__10CPatternedFR13CStateManagerf +CodeTrigger__10CPatternedFR13CStateManagerf: +/* 801F5AF0 001F2A50 88 03 03 48 */ lbz r0, 0x348(r3) +/* 801F5AF4 001F2A54 54 03 CF FE */ rlwinm r3, r0, 0x19, 0x1f, 0x1f +/* 801F5AF8 001F2A58 4E 80 00 20 */ blr + +.global FixedDelay__10CPatternedFR13CStateManagerf +FixedDelay__10CPatternedFR13CStateManagerf: +/* 801F5AFC 001F2A5C C0 23 03 38 */ lfs f1, 0x338(r3) +/* 801F5B00 001F2A60 C0 03 03 40 */ lfs f0, 0x340(r3) +/* 801F5B04 001F2A64 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F5B08 001F2A68 7C 00 00 26 */ mfcr r0 +/* 801F5B0C 001F2A6C 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f +/* 801F5B10 001F2A70 4E 80 00 20 */ blr + +.global RandomDelay__10CPatternedFR13CStateManagerf +RandomDelay__10CPatternedFR13CStateManagerf: +/* 801F5B14 001F2A74 C0 03 03 3C */ lfs f0, 0x33c(r3) +/* 801F5B18 001F2A78 C0 43 03 38 */ lfs f2, 0x338(r3) +/* 801F5B1C 001F2A7C EC 01 00 32 */ fmuls f0, f1, f0 +/* 801F5B20 001F2A80 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801F5B24 001F2A84 7C 00 00 26 */ mfcr r0 +/* 801F5B28 001F2A88 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f +/* 801F5B2C 001F2A8C 4E 80 00 20 */ blr + +.global Delay__10CPatternedFR13CStateManagerf +Delay__10CPatternedFR13CStateManagerf: +/* 801F5B30 001F2A90 C0 03 03 38 */ lfs f0, 0x338(r3) +/* 801F5B34 001F2A94 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801F5B38 001F2A98 7C 00 00 26 */ mfcr r0 +/* 801F5B3C 001F2A9C 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f +/* 801F5B40 001F2AA0 4E 80 00 20 */ blr + +.global PatrolPathOver__10CPatternedFR13CStateManagerf +PatrolPathOver__10CPatternedFR13CStateManagerf: +/* 801F5B44 001F2AA4 A0 63 02 DC */ lhz r3, 0x2dc(r3) +/* 801F5B48 001F2AA8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801F5B4C 001F2AAC 7C 03 00 50 */ subf r0, r3, r0 +/* 801F5B50 001F2AB0 7C 00 00 34 */ cntlzw r0, r0 +/* 801F5B54 001F2AB4 54 03 D9 7E */ srwi r3, r0, 5 +/* 801F5B58 001F2AB8 4E 80 00 20 */ blr + +.global Stuck__10CPatternedFR13CStateManagerf +Stuck__10CPatternedFR13CStateManagerf: +/* 801F5B5C 001F2ABC C0 23 04 F0 */ lfs f1, 0x4f0(r3) +/* 801F5B60 001F2AC0 C0 02 AF 3C */ lfs f0, lbl_805ACC5C@sda21(r2) +/* 801F5B64 001F2AC4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F5B68 001F2AC8 7C 00 00 26 */ mfcr r0 +/* 801F5B6C 001F2ACC 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f +/* 801F5B70 001F2AD0 4E 80 00 20 */ blr + +.global AnimOver__10CPatternedFR13CStateManagerf +AnimOver__10CPatternedFR13CStateManagerf: +/* 801F5B74 001F2AD4 80 03 03 2C */ lwz r0, 0x32c(r3) +/* 801F5B78 001F2AD8 20 00 00 03 */ subfic r0, r0, 3 +/* 801F5B7C 001F2ADC 7C 00 00 34 */ cntlzw r0, r0 +/* 801F5B80 001F2AE0 54 03 D9 7E */ srwi r3, r0, 5 +/* 801F5B84 001F2AE4 4E 80 00 20 */ blr + +.global InPosition__10CPatternedFR13CStateManagerf +InPosition__10CPatternedFR13CStateManagerf: +/* 801F5B88 001F2AE8 88 03 03 28 */ lbz r0, 0x328(r3) +/* 801F5B8C 001F2AEC 54 03 CF FE */ rlwinm r3, r0, 0x19, 0x1f, 0x1f +/* 801F5B90 001F2AF0 4E 80 00 20 */ blr + +.global HasPatrolPath__10CPatternedFR13CStateManagerf +HasPatrolPath__10CPatternedFR13CStateManagerf: +/* 801F5B94 001F2AF4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801F5B98 001F2AF8 7C 08 02 A6 */ mflr r0 +/* 801F5B9C 001F2AFC 7C 85 23 78 */ mr r5, r4 +/* 801F5BA0 001F2B00 7C 64 1B 78 */ mr r4, r3 +/* 801F5BA4 001F2B04 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F5BA8 001F2B08 38 61 00 08 */ addi r3, r1, 8 +/* 801F5BAC 001F2B0C 38 C0 00 0D */ li r6, 0xd +/* 801F5BB0 001F2B10 38 E0 00 06 */ li r7, 6 +/* 801F5BB4 001F2B14 4B FF F3 E5 */ bl GetWaypointForState__10CPatternedFR13CStateManager18EScriptObjectState +/* 801F5BB8 001F2B18 A0 81 00 08 */ lhz r4, 8(r1) +/* 801F5BBC 001F2B1C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801F5BC0 001F2B20 7C 64 00 50 */ subf r3, r4, r0 +/* 801F5BC4 001F2B24 7C 00 20 50 */ subf r0, r0, r4 +/* 801F5BC8 001F2B28 7C 60 03 78 */ or r0, r3, r0 +/* 801F5BCC 001F2B2C 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801F5BD0 001F2B30 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801F5BD4 001F2B34 7C 08 03 A6 */ mtlr r0 +/* 801F5BD8 001F2B38 38 21 00 10 */ addi r1, r1, 0x10 +/* 801F5BDC 001F2B3C 4E 80 00 20 */ blr + +.global Attacked__10CPatternedFR13CStateManagerf +Attacked__10CPatternedFR13CStateManagerf: +/* 801F5BE0 001F2B40 88 03 04 00 */ lbz r0, 0x400(r3) +/* 801F5BE4 001F2B44 54 03 CF FE */ rlwinm r3, r0, 0x19, 0x1f, 0x1f +/* 801F5BE8 001F2B48 7C 03 00 D0 */ neg r0, r3 +/* 801F5BEC 001F2B4C 7C 00 1B 78 */ or r0, r0, r3 +/* 801F5BF0 001F2B50 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801F5BF4 001F2B54 4E 80 00 20 */ blr + +.global PatternShagged__10CPatternedFR13CStateManagerf +PatternShagged__10CPatternedFR13CStateManagerf: +/* 801F5BF8 001F2B58 88 03 04 00 */ lbz r0, 0x400(r3) +/* 801F5BFC 001F2B5C 54 03 FF FE */ rlwinm r3, r0, 0x1f, 0x1f, 0x1f +/* 801F5C00 001F2B60 7C 03 00 D0 */ neg r0, r3 +/* 801F5C04 001F2B64 7C 00 1B 78 */ or r0, r0, r3 +/* 801F5C08 001F2B68 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801F5C0C 001F2B6C 4E 80 00 20 */ blr + +.global PatternOver__10CPatternedFR13CStateManagerf +PatternOver__10CPatternedFR13CStateManagerf: +/* 801F5C10 001F2B70 80 A3 03 9C */ lwz r5, 0x39c(r3) +/* 801F5C14 001F2B74 80 03 03 90 */ lwz r0, 0x390(r3) +/* 801F5C18 001F2B78 7C A4 FE 70 */ srawi r4, r5, 0x1f +/* 801F5C1C 001F2B7C 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801F5C20 001F2B80 7C 00 28 10 */ subfc r0, r0, r5 +/* 801F5C24 001F2B84 7C 64 19 14 */ adde r3, r4, r3 +/* 801F5C28 001F2B88 4E 80 00 20 */ blr + +.global HasRetreatPattern__10CPatternedFR13CStateManagerf +HasRetreatPattern__10CPatternedFR13CStateManagerf: +/* 801F5C2C 001F2B8C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801F5C30 001F2B90 7C 08 02 A6 */ mflr r0 +/* 801F5C34 001F2B94 7C 85 23 78 */ mr r5, r4 +/* 801F5C38 001F2B98 7C 64 1B 78 */ mr r4, r3 +/* 801F5C3C 001F2B9C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F5C40 001F2BA0 38 61 00 08 */ addi r3, r1, 8 +/* 801F5C44 001F2BA4 38 C0 00 0C */ li r6, 0xc +/* 801F5C48 001F2BA8 38 E0 00 06 */ li r7, 6 +/* 801F5C4C 001F2BAC 4B FF F3 4D */ bl GetWaypointForState__10CPatternedFR13CStateManager18EScriptObjectState +/* 801F5C50 001F2BB0 A0 81 00 08 */ lhz r4, 8(r1) +/* 801F5C54 001F2BB4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801F5C58 001F2BB8 7C 64 00 50 */ subf r3, r4, r0 +/* 801F5C5C 001F2BBC 7C 00 20 50 */ subf r0, r0, r4 +/* 801F5C60 001F2BC0 7C 60 03 78 */ or r0, r3, r0 +/* 801F5C64 001F2BC4 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801F5C68 001F2BC8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801F5C6C 001F2BCC 7C 08 03 A6 */ mtlr r0 +/* 801F5C70 001F2BD0 38 21 00 10 */ addi r1, r1, 0x10 +/* 801F5C74 001F2BD4 4E 80 00 20 */ blr + +.global HasAttackPattern__10CPatternedFR13CStateManagerf +HasAttackPattern__10CPatternedFR13CStateManagerf: +/* 801F5C78 001F2BD8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801F5C7C 001F2BDC 7C 08 02 A6 */ mflr r0 +/* 801F5C80 001F2BE0 7C 85 23 78 */ mr r5, r4 +/* 801F5C84 001F2BE4 7C 64 1B 78 */ mr r4, r3 +/* 801F5C88 001F2BE8 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F5C8C 001F2BEC 38 61 00 08 */ addi r3, r1, 8 +/* 801F5C90 001F2BF0 38 C0 00 0A */ li r6, 0xa +/* 801F5C94 001F2BF4 38 E0 00 06 */ li r7, 6 +/* 801F5C98 001F2BF8 4B FF F3 01 */ bl GetWaypointForState__10CPatternedFR13CStateManager18EScriptObjectState +/* 801F5C9C 001F2BFC A0 81 00 08 */ lhz r4, 8(r1) +/* 801F5CA0 001F2C00 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801F5CA4 001F2C04 7C 64 00 50 */ subf r3, r4, r0 +/* 801F5CA8 001F2C08 7C 00 20 50 */ subf r0, r0, r4 +/* 801F5CAC 001F2C0C 7C 60 03 78 */ or r0, r3, r0 +/* 801F5CB0 001F2C10 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801F5CB4 001F2C14 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801F5CB8 001F2C18 7C 08 03 A6 */ mtlr r0 +/* 801F5CBC 001F2C1C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801F5CC0 001F2C20 4E 80 00 20 */ blr + +.global NoPathNodes__10CPatternedFR13CStateManagerf +NoPathNodes__10CPatternedFR13CStateManagerf: +/* 801F5CC4 001F2C24 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801F5CC8 001F2C28 7C 08 02 A6 */ mflr r0 +/* 801F5CCC 001F2C2C 90 01 00 24 */ stw r0, 0x24(r1) +/* 801F5CD0 001F2C30 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801F5CD4 001F2C34 7C 7F 1B 78 */ mr r31, r3 +/* 801F5CD8 001F2C38 81 83 00 00 */ lwz r12, 0(r3) +/* 801F5CDC 001F2C3C 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801F5CE0 001F2C40 7D 89 03 A6 */ mtctr r12 +/* 801F5CE4 001F2C44 4E 80 04 21 */ bctrl +/* 801F5CE8 001F2C48 28 03 00 00 */ cmplwi r3, 0 +/* 801F5CEC 001F2C4C 41 82 00 48 */ beq lbl_801F5D34 +/* 801F5CF0 001F2C50 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 801F5CF4 001F2C54 7F E3 FB 78 */ mr r3, r31 +/* 801F5CF8 001F2C58 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 801F5CFC 001F2C5C C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801F5D00 001F2C60 D0 01 00 08 */ stfs f0, 8(r1) +/* 801F5D04 001F2C64 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 801F5D08 001F2C68 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 801F5D0C 001F2C6C 81 9F 00 00 */ lwz r12, 0(r31) +/* 801F5D10 001F2C70 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801F5D14 001F2C74 7D 89 03 A6 */ mtctr r12 +/* 801F5D18 001F2C78 4E 80 04 21 */ bctrl +/* 801F5D1C 001F2C7C 38 81 00 08 */ addi r4, r1, 8 +/* 801F5D20 001F2C80 4B FD 0E 15 */ bl OnPath__15CPathFindSearchCFRC9CVector3f +/* 801F5D24 001F2C84 7C 03 00 D0 */ neg r0, r3 +/* 801F5D28 001F2C88 7C 00 1B 78 */ or r0, r0, r3 +/* 801F5D2C 001F2C8C 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801F5D30 001F2C90 48 00 00 08 */ b lbl_801F5D38 +lbl_801F5D34: +/* 801F5D34 001F2C94 38 60 00 01 */ li r3, 1 +lbl_801F5D38: +/* 801F5D38 001F2C98 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801F5D3C 001F2C9C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801F5D40 001F2CA0 7C 08 03 A6 */ mtlr r0 +/* 801F5D44 001F2CA4 38 21 00 20 */ addi r1, r1, 0x20 +/* 801F5D48 001F2CA8 4E 80 00 20 */ blr + +.global PathShagged__10CPatternedFR13CStateManagerf +PathShagged__10CPatternedFR13CStateManagerf: +/* 801F5D4C 001F2CAC 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 801F5D50 001F2CB0 7C 08 02 A6 */ mflr r0 +/* 801F5D54 001F2CB4 90 01 00 74 */ stw r0, 0x74(r1) +/* 801F5D58 001F2CB8 DB E1 00 60 */ stfd f31, 0x60(r1) +/* 801F5D5C 001F2CBC F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 801F5D60 001F2CC0 DB C1 00 50 */ stfd f30, 0x50(r1) +/* 801F5D64 001F2CC4 F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 +/* 801F5D68 001F2CC8 DB A1 00 40 */ stfd f29, 0x40(r1) +/* 801F5D6C 001F2CCC F3 A1 00 48 */ psq_st f29, 72(r1), 0, qr0 +/* 801F5D70 001F2CD0 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801F5D74 001F2CD4 81 83 00 00 */ lwz r12, 0(r3) +/* 801F5D78 001F2CD8 7C 7F 1B 78 */ mr r31, r3 +/* 801F5D7C 001F2CDC 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801F5D80 001F2CE0 7D 89 03 A6 */ mtctr r12 +/* 801F5D84 001F2CE4 4E 80 04 21 */ bctrl +/* 801F5D88 001F2CE8 28 03 00 00 */ cmplwi r3, 0 +/* 801F5D8C 001F2CEC 41 82 01 24 */ beq lbl_801F5EB0 +/* 801F5D90 001F2CF0 7F E3 FB 78 */ mr r3, r31 +/* 801F5D94 001F2CF4 81 9F 00 00 */ lwz r12, 0(r31) +/* 801F5D98 001F2CF8 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801F5D9C 001F2CFC 7D 89 03 A6 */ mtctr r12 +/* 801F5DA0 001F2D00 4E 80 04 21 */ bctrl +/* 801F5DA4 001F2D04 80 03 00 CC */ lwz r0, 0xcc(r3) +/* 801F5DA8 001F2D08 2C 00 00 00 */ cmpwi r0, 0 +/* 801F5DAC 001F2D0C 41 82 00 0C */ beq lbl_801F5DB8 +/* 801F5DB0 001F2D10 38 60 00 01 */ li r3, 1 +/* 801F5DB4 001F2D14 48 00 01 00 */ b lbl_801F5EB4 +lbl_801F5DB8: +/* 801F5DB8 001F2D18 7F E3 FB 78 */ mr r3, r31 +/* 801F5DBC 001F2D1C 81 9F 00 00 */ lwz r12, 0(r31) +/* 801F5DC0 001F2D20 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801F5DC4 001F2D24 7D 89 03 A6 */ mtctr r12 +/* 801F5DC8 001F2D28 4E 80 04 21 */ bctrl +/* 801F5DCC 001F2D2C 80 03 00 C8 */ lwz r0, 0xc8(r3) +/* 801F5DD0 001F2D30 2C 00 00 00 */ cmpwi r0, 0 +/* 801F5DD4 001F2D34 40 81 00 DC */ ble lbl_801F5EB0 +/* 801F5DD8 001F2D38 88 1F 04 01 */ lbz r0, 0x401(r31) +/* 801F5DDC 001F2D3C 54 00 D7 BF */ rlwinm. r0, r0, 0x1a, 0x1e, 0x1f +/* 801F5DE0 001F2D40 40 82 00 D0 */ bne lbl_801F5EB0 +/* 801F5DE4 001F2D44 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 801F5DE8 001F2D48 C0 A2 AF 40 */ lfs f5, lbl_805ACC60@sda21(r2) +/* 801F5DEC 001F2D4C 38 83 66 F4 */ addi r4, r3, lbl_805A66F4@l +/* 801F5DF0 001F2D50 C0 DF 00 40 */ lfs f6, 0x40(r31) +/* 801F5DF4 001F2D54 C0 44 00 00 */ lfs f2, 0(r4) +/* 801F5DF8 001F2D58 7F E3 FB 78 */ mr r3, r31 +/* 801F5DFC 001F2D5C C0 24 00 04 */ lfs f1, 4(r4) +/* 801F5E00 001F2D60 C0 04 00 08 */ lfs f0, 8(r4) +/* 801F5E04 001F2D64 EC 85 00 B2 */ fmuls f4, f5, f2 +/* 801F5E08 001F2D68 EC 45 00 72 */ fmuls f2, f5, f1 +/* 801F5E0C 001F2D6C C0 7F 00 50 */ lfs f3, 0x50(r31) +/* 801F5E10 001F2D70 C0 3F 00 60 */ lfs f1, 0x60(r31) +/* 801F5E14 001F2D74 EC 05 00 32 */ fmuls f0, f5, f0 +/* 801F5E18 001F2D78 EF A6 20 2A */ fadds f29, f6, f4 +/* 801F5E1C 001F2D7C EF C3 10 2A */ fadds f30, f3, f2 +/* 801F5E20 001F2D80 EF E1 00 2A */ fadds f31, f1, f0 +/* 801F5E24 001F2D84 D0 C1 00 14 */ stfs f6, 0x14(r1) +/* 801F5E28 001F2D88 D3 A1 00 20 */ stfs f29, 0x20(r1) +/* 801F5E2C 001F2D8C D3 C1 00 24 */ stfs f30, 0x24(r1) +/* 801F5E30 001F2D90 D3 E1 00 28 */ stfs f31, 0x28(r1) +/* 801F5E34 001F2D94 D0 61 00 18 */ stfs f3, 0x18(r1) +/* 801F5E38 001F2D98 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 801F5E3C 001F2D9C 81 9F 00 00 */ lwz r12, 0(r31) +/* 801F5E40 001F2DA0 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801F5E44 001F2DA4 7D 89 03 A6 */ mtctr r12 +/* 801F5E48 001F2DA8 4E 80 04 21 */ bctrl +/* 801F5E4C 001F2DAC 38 81 00 20 */ addi r4, r1, 0x20 +/* 801F5E50 001F2DB0 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801F5E54 001F2DB4 4B FD 5F 59 */ bl GetSplinePoint__15CPathFindSearchCFR9CVector3fRC9CVector3f +/* 801F5E58 001F2DB8 C0 21 00 24 */ lfs f1, 0x24(r1) +/* 801F5E5C 001F2DBC C0 01 00 20 */ lfs f0, 0x20(r1) +/* 801F5E60 001F2DC0 EC 61 F0 28 */ fsubs f3, f1, f30 +/* 801F5E64 001F2DC4 C0 41 00 28 */ lfs f2, 0x28(r1) +/* 801F5E68 001F2DC8 EC 20 E8 28 */ fsubs f1, f0, f29 +/* 801F5E6C 001F2DCC C0 A2 88 F4 */ lfs f5, lbl_805AA614@sda21(r2) +/* 801F5E70 001F2DD0 EC 82 F8 28 */ fsubs f4, f2, f31 +/* 801F5E74 001F2DD4 C0 02 AF 44 */ lfs f0, lbl_805ACC64@sda21(r2) +/* 801F5E78 001F2DD8 EC 41 00 72 */ fmuls f2, f1, f1 +/* 801F5E7C 001F2DDC D0 21 00 08 */ stfs f1, 8(r1) +/* 801F5E80 001F2DE0 EC 23 00 F2 */ fmuls f1, f3, f3 +/* 801F5E84 001F2DE4 EC 00 01 72 */ fmuls f0, f0, f5 +/* 801F5E88 001F2DE8 D0 61 00 0C */ stfs f3, 0xc(r1) +/* 801F5E8C 001F2DEC EC 64 01 32 */ fmuls f3, f4, f4 +/* 801F5E90 001F2DF0 EC 22 08 2A */ fadds f1, f2, f1 +/* 801F5E94 001F2DF4 D0 81 00 10 */ stfs f4, 0x10(r1) +/* 801F5E98 001F2DF8 EC 00 01 72 */ fmuls f0, f0, f5 +/* 801F5E9C 001F2DFC EC 23 08 2A */ fadds f1, f3, f1 +/* 801F5EA0 001F2E00 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F5EA4 001F2E04 40 81 00 0C */ ble lbl_801F5EB0 +/* 801F5EA8 001F2E08 38 60 00 01 */ li r3, 1 +/* 801F5EAC 001F2E0C 48 00 00 08 */ b lbl_801F5EB4 +lbl_801F5EB0: +/* 801F5EB0 001F2E10 38 60 00 00 */ li r3, 0 +lbl_801F5EB4: +/* 801F5EB4 001F2E14 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 801F5EB8 001F2E18 CB E1 00 60 */ lfd f31, 0x60(r1) +/* 801F5EBC 001F2E1C E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 +/* 801F5EC0 001F2E20 CB C1 00 50 */ lfd f30, 0x50(r1) +/* 801F5EC4 001F2E24 E3 A1 00 48 */ psq_l f29, 72(r1), 0, qr0 +/* 801F5EC8 001F2E28 CB A1 00 40 */ lfd f29, 0x40(r1) +/* 801F5ECC 001F2E2C 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801F5ED0 001F2E30 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801F5ED4 001F2E34 7C 08 03 A6 */ mtlr r0 +/* 801F5ED8 001F2E38 38 21 00 70 */ addi r1, r1, 0x70 +/* 801F5EDC 001F2E3C 4E 80 00 20 */ blr + +.global PathFound__10CPatternedFR13CStateManagerf +PathFound__10CPatternedFR13CStateManagerf: +/* 801F5EE0 001F2E40 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801F5EE4 001F2E44 7C 08 02 A6 */ mflr r0 +/* 801F5EE8 001F2E48 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F5EEC 001F2E4C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801F5EF0 001F2E50 3B E0 00 00 */ li r31, 0 +/* 801F5EF4 001F2E54 93 C1 00 08 */ stw r30, 8(r1) +/* 801F5EF8 001F2E58 7C 7E 1B 78 */ mr r30, r3 +/* 801F5EFC 001F2E5C 81 83 00 00 */ lwz r12, 0(r3) +/* 801F5F00 001F2E60 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801F5F04 001F2E64 7D 89 03 A6 */ mtctr r12 +/* 801F5F08 001F2E68 4E 80 04 21 */ bctrl +/* 801F5F0C 001F2E6C 28 03 00 00 */ cmplwi r3, 0 +/* 801F5F10 001F2E70 41 82 00 28 */ beq lbl_801F5F38 +/* 801F5F14 001F2E74 7F C3 F3 78 */ mr r3, r30 +/* 801F5F18 001F2E78 81 9E 00 00 */ lwz r12, 0(r30) +/* 801F5F1C 001F2E7C 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801F5F20 001F2E80 7D 89 03 A6 */ mtctr r12 +/* 801F5F24 001F2E84 4E 80 04 21 */ bctrl +/* 801F5F28 001F2E88 80 03 00 CC */ lwz r0, 0xcc(r3) +/* 801F5F2C 001F2E8C 2C 00 00 00 */ cmpwi r0, 0 +/* 801F5F30 001F2E90 40 82 00 08 */ bne lbl_801F5F38 +/* 801F5F34 001F2E94 3B E0 00 01 */ li r31, 1 +lbl_801F5F38: +/* 801F5F38 001F2E98 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801F5F3C 001F2E9C 7F E3 FB 78 */ mr r3, r31 +/* 801F5F40 001F2EA0 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801F5F44 001F2EA4 83 C1 00 08 */ lwz r30, 8(r1) +/* 801F5F48 001F2EA8 7C 08 03 A6 */ mtlr r0 +/* 801F5F4C 001F2EAC 38 21 00 10 */ addi r1, r1, 0x10 +/* 801F5F50 001F2EB0 4E 80 00 20 */ blr + +.global PathOver__10CPatternedFR13CStateManagerf +PathOver__10CPatternedFR13CStateManagerf: +/* 801F5F54 001F2EB4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801F5F58 001F2EB8 7C 08 02 A6 */ mflr r0 +/* 801F5F5C 001F2EBC 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F5F60 001F2EC0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801F5F64 001F2EC4 93 C1 00 08 */ stw r30, 8(r1) +/* 801F5F68 001F2EC8 7C 7E 1B 78 */ mr r30, r3 +/* 801F5F6C 001F2ECC 81 83 00 00 */ lwz r12, 0(r3) +/* 801F5F70 001F2ED0 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801F5F74 001F2ED4 7D 89 03 A6 */ mtctr r12 +/* 801F5F78 001F2ED8 4E 80 04 21 */ bctrl +/* 801F5F7C 001F2EDC 28 03 00 00 */ cmplwi r3, 0 +/* 801F5F80 001F2EE0 41 82 00 70 */ beq lbl_801F5FF0 +/* 801F5F84 001F2EE4 88 7E 03 28 */ lbz r3, 0x328(r30) +/* 801F5F88 001F2EE8 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f +/* 801F5F8C 001F2EEC 40 82 00 0C */ bne lbl_801F5F98 +/* 801F5F90 001F2EF0 54 60 E7 FF */ rlwinm. r0, r3, 0x1c, 0x1f, 0x1f +/* 801F5F94 001F2EF4 41 82 00 5C */ beq lbl_801F5FF0 +lbl_801F5F98: +/* 801F5F98 001F2EF8 7F C3 F3 78 */ mr r3, r30 +/* 801F5F9C 001F2EFC 3B E0 00 00 */ li r31, 0 +/* 801F5FA0 001F2F00 81 9E 00 00 */ lwz r12, 0(r30) +/* 801F5FA4 001F2F04 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801F5FA8 001F2F08 7D 89 03 A6 */ mtctr r12 +/* 801F5FAC 001F2F0C 4E 80 04 21 */ bctrl +/* 801F5FB0 001F2F10 80 03 00 CC */ lwz r0, 0xcc(r3) +/* 801F5FB4 001F2F14 2C 00 00 00 */ cmpwi r0, 0 +/* 801F5FB8 001F2F18 40 82 00 30 */ bne lbl_801F5FE8 +/* 801F5FBC 001F2F1C 7F C3 F3 78 */ mr r3, r30 +/* 801F5FC0 001F2F20 81 9E 00 00 */ lwz r12, 0(r30) +/* 801F5FC4 001F2F24 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801F5FC8 001F2F28 7D 89 03 A6 */ mtctr r12 +/* 801F5FCC 001F2F2C 4E 80 04 21 */ bctrl +/* 801F5FD0 001F2F30 80 83 00 04 */ lwz r4, 4(r3) +/* 801F5FD4 001F2F34 80 63 00 C8 */ lwz r3, 0xc8(r3) +/* 801F5FD8 001F2F38 38 04 FF FF */ addi r0, r4, -1 +/* 801F5FDC 001F2F3C 7C 03 00 00 */ cmpw r3, r0 +/* 801F5FE0 001F2F40 41 80 00 08 */ blt lbl_801F5FE8 +/* 801F5FE4 001F2F44 3B E0 00 01 */ li r31, 1 +lbl_801F5FE8: +/* 801F5FE8 001F2F48 7F E3 FB 78 */ mr r3, r31 +/* 801F5FEC 001F2F4C 48 00 00 08 */ b lbl_801F5FF4 +lbl_801F5FF0: +/* 801F5FF0 001F2F50 38 60 00 00 */ li r3, 0 +lbl_801F5FF4: +/* 801F5FF4 001F2F54 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801F5FF8 001F2F58 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801F5FFC 001F2F5C 83 C1 00 08 */ lwz r30, 8(r1) +/* 801F6000 001F2F60 7C 08 03 A6 */ mtlr r0 +/* 801F6004 001F2F64 38 21 00 10 */ addi r1, r1, 0x10 +/* 801F6008 001F2F68 4E 80 00 20 */ blr + +.global Landed__10CPatternedFR13CStateManagerf +Landed__10CPatternedFR13CStateManagerf: +/* 801F600C 001F2F6C 88 03 03 28 */ lbz r0, 0x328(r3) +/* 801F6010 001F2F70 38 80 00 00 */ li r4, 0 +/* 801F6014 001F2F74 54 05 E7 FF */ rlwinm. r5, r0, 0x1c, 0x1f, 0x1f +/* 801F6018 001F2F78 41 82 00 10 */ beq lbl_801F6028 +/* 801F601C 001F2F7C 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 801F6020 001F2F80 40 82 00 08 */ bne lbl_801F6028 +/* 801F6024 001F2F84 38 80 00 01 */ li r4, 1 +lbl_801F6028: +/* 801F6028 001F2F88 88 03 03 28 */ lbz r0, 0x328(r3) +/* 801F602C 001F2F8C 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 801F6030 001F2F90 98 03 03 28 */ stb r0, 0x328(r3) +/* 801F6034 001F2F94 7C 83 23 78 */ mr r3, r4 +/* 801F6038 001F2F98 4E 80 00 20 */ blr + +.global PlayerSpot__10CPatternedFR13CStateManagerf +PlayerSpot__10CPatternedFR13CStateManagerf: +/* 801F603C 001F2F9C 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 801F6040 001F2FA0 7C 08 02 A6 */ mflr r0 +/* 801F6044 001F2FA4 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 801F6048 001F2FA8 DB E1 00 D0 */ stfd f31, 0xd0(r1) +/* 801F604C 001F2FAC F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 +/* 801F6050 001F2FB0 93 E1 00 CC */ stw r31, 0xcc(r1) +/* 801F6054 001F2FB4 93 C1 00 C8 */ stw r30, 0xc8(r1) +/* 801F6058 001F2FB8 7C 9F 23 78 */ mr r31, r4 +/* 801F605C 001F2FBC 7C 7E 1B 78 */ mr r30, r3 +/* 801F6060 001F2FC0 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 801F6064 001F2FC4 80 04 02 F8 */ lwz r0, 0x2f8(r4) +/* 801F6068 001F2FC8 2C 00 00 00 */ cmpwi r0, 0 +/* 801F606C 001F2FCC 40 82 01 6C */ bne lbl_801F61D8 +/* 801F6070 001F2FD0 81 84 00 00 */ lwz r12, 0(r4) +/* 801F6074 001F2FD4 7F E5 FB 78 */ mr r5, r31 +/* 801F6078 001F2FD8 38 61 00 20 */ addi r3, r1, 0x20 +/* 801F607C 001F2FDC C0 22 AF 20 */ lfs f1, lbl_805ACC40@sda21(r2) +/* 801F6080 001F2FE0 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801F6084 001F2FE4 7D 89 03 A6 */ mtctr r12 +/* 801F6088 001F2FE8 4E 80 04 21 */ bctrl +/* 801F608C 001F2FEC C0 41 00 20 */ lfs f2, 0x20(r1) +/* 801F6090 001F2FF0 7F C4 F3 78 */ mr r4, r30 +/* 801F6094 001F2FF4 C0 21 00 24 */ lfs f1, 0x24(r1) +/* 801F6098 001F2FF8 38 61 00 68 */ addi r3, r1, 0x68 +/* 801F609C 001F2FFC C0 01 00 28 */ lfs f0, 0x28(r1) +/* 801F60A0 001F3000 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 801F60A4 001F3004 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 801F60A8 001F3008 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 801F60AC 001F300C 4B F2 48 81 */ bl GetBoundingBox__13CPhysicsActorCFv +/* 801F60B0 001F3010 38 61 00 14 */ addi r3, r1, 0x14 +/* 801F60B4 001F3014 38 81 00 68 */ addi r4, r1, 0x68 +/* 801F60B8 001F3018 48 14 15 55 */ bl GetCenterPoint__6CAABoxCFv +/* 801F60BC 001F301C C0 A1 00 14 */ lfs f5, 0x14(r1) +/* 801F60C0 001F3020 38 61 00 2C */ addi r3, r1, 0x2c +/* 801F60C4 001F3024 C0 81 00 18 */ lfs f4, 0x18(r1) +/* 801F60C8 001F3028 C0 61 00 1C */ lfs f3, 0x1c(r1) +/* 801F60CC 001F302C C0 41 00 48 */ lfs f2, 0x48(r1) +/* 801F60D0 001F3030 C0 21 00 4C */ lfs f1, 0x4c(r1) +/* 801F60D4 001F3034 C0 01 00 44 */ lfs f0, 0x44(r1) +/* 801F60D8 001F3038 EC 44 10 28 */ fsubs f2, f4, f2 +/* 801F60DC 001F303C EC 23 08 28 */ fsubs f1, f3, f1 +/* 801F60E0 001F3040 D0 A1 00 38 */ stfs f5, 0x38(r1) +/* 801F60E4 001F3044 EC 05 00 28 */ fsubs f0, f5, f0 +/* 801F60E8 001F3048 D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 801F60EC 001F304C D0 61 00 40 */ stfs f3, 0x40(r1) +/* 801F60F0 001F3050 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801F60F4 001F3054 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 801F60F8 001F3058 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 801F60FC 001F305C 48 11 E7 BD */ bl Magnitude__9CVector3fCFv +/* 801F6100 001F3060 FF E0 08 90 */ fmr f31, f1 +/* 801F6104 001F3064 C0 62 AF 34 */ lfs f3, lbl_805ACC54@sda21(r2) +/* 801F6108 001F3068 C0 81 00 2C */ lfs f4, 0x2c(r1) +/* 801F610C 001F306C 38 61 00 08 */ addi r3, r1, 8 +/* 801F6110 001F3070 C0 41 00 30 */ lfs f2, 0x30(r1) +/* 801F6114 001F3074 38 A1 00 38 */ addi r5, r1, 0x38 +/* 801F6118 001F3078 EC A3 F8 24 */ fdivs f5, f3, f31 +/* 801F611C 001F307C C0 01 00 34 */ lfs f0, 0x34(r1) +/* 801F6120 001F3080 EC 64 01 72 */ fmuls f3, f4, f5 +/* 801F6124 001F3084 EC 22 01 72 */ fmuls f1, f2, f5 +/* 801F6128 001F3088 EC 00 01 72 */ fmuls f0, f0, f5 +/* 801F612C 001F308C D0 61 00 2C */ stfs f3, 0x2c(r1) +/* 801F6130 001F3090 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 801F6134 001F3094 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801F6138 001F3098 80 9F 08 70 */ lwz r4, 0x870(r31) +/* 801F613C 001F309C 80 84 00 7C */ lwz r4, 0x7c(r4) +/* 801F6140 001F30A0 4B E6 77 51 */ bl ConvertToScreenSpace__11CGameCameraCFRC9CVector3f +/* 801F6144 001F30A4 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 801F6148 001F30A8 C0 02 AF 20 */ lfs f0, lbl_805ACC40@sda21(r2) +/* 801F614C 001F30AC C0 41 00 08 */ lfs f2, 8(r1) +/* 801F6150 001F30B0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F6154 001F30B4 C0 61 00 0C */ lfs f3, 0xc(r1) +/* 801F6158 001F30B8 40 81 00 80 */ ble lbl_801F61D8 +/* 801F615C 001F30BC EC 02 00 B2 */ fmuls f0, f2, f2 +/* 801F6160 001F30C0 C0 22 AF 34 */ lfs f1, lbl_805ACC54@sda21(r2) +/* 801F6164 001F30C4 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801F6168 001F30C8 40 80 00 70 */ bge lbl_801F61D8 +/* 801F616C 001F30CC EC 03 00 F2 */ fmuls f0, f3, f3 +/* 801F6170 001F30D0 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801F6174 001F30D4 40 80 00 64 */ bge lbl_801F61D8 +/* 801F6178 001F30D8 80 AD 92 C0 */ lwz r5, lbl_805A7E80@sda21(r13) +/* 801F617C 001F30DC 38 60 00 00 */ li r3, 0 +/* 801F6180 001F30E0 38 80 00 01 */ li r4, 1 +/* 801F6184 001F30E4 48 19 3D 71 */ bl __shl2i +/* 801F6188 001F30E8 39 00 00 01 */ li r8, 1 +/* 801F618C 001F30EC 38 00 00 00 */ li r0, 0 +/* 801F6190 001F30F0 90 81 00 84 */ stw r4, 0x84(r1) +/* 801F6194 001F30F4 FC 20 F8 90 */ fmr f1, f31 +/* 801F6198 001F30F8 7F E4 FB 78 */ mr r4, r31 +/* 801F619C 001F30FC 38 A1 00 44 */ addi r5, r1, 0x44 +/* 801F61A0 001F3100 90 61 00 80 */ stw r3, 0x80(r1) +/* 801F61A4 001F3104 38 61 00 98 */ addi r3, r1, 0x98 +/* 801F61A8 001F3108 38 C1 00 2C */ addi r6, r1, 0x2c +/* 801F61AC 001F310C 91 01 00 60 */ stw r8, 0x60(r1) +/* 801F61B0 001F3110 38 E1 00 80 */ addi r7, r1, 0x80 +/* 801F61B4 001F3114 90 01 00 8C */ stw r0, 0x8c(r1) +/* 801F61B8 001F3118 90 01 00 88 */ stw r0, 0x88(r1) +/* 801F61BC 001F311C 91 01 00 90 */ stw r8, 0x90(r1) +/* 801F61C0 001F3120 4B E5 6D D9 */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter +/* 801F61C4 001F3124 88 01 00 B8 */ lbz r0, 0xb8(r1) +/* 801F61C8 001F3128 28 00 00 00 */ cmplwi r0, 0 +/* 801F61CC 001F312C 40 82 00 0C */ bne lbl_801F61D8 +/* 801F61D0 001F3130 38 60 00 01 */ li r3, 1 +/* 801F61D4 001F3134 48 00 00 08 */ b lbl_801F61DC +lbl_801F61D8: +/* 801F61D8 001F3138 38 60 00 00 */ li r3, 0 +lbl_801F61DC: +/* 801F61DC 001F313C E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 +/* 801F61E0 001F3140 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 801F61E4 001F3144 CB E1 00 D0 */ lfd f31, 0xd0(r1) +/* 801F61E8 001F3148 83 E1 00 CC */ lwz r31, 0xcc(r1) +/* 801F61EC 001F314C 83 C1 00 C8 */ lwz r30, 0xc8(r1) +/* 801F61F0 001F3150 7C 08 03 A6 */ mtlr r0 +/* 801F61F4 001F3154 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 801F61F8 001F3158 4E 80 00 20 */ blr + +.global SpotPlayer__10CPatternedFR13CStateManagerf +SpotPlayer__10CPatternedFR13CStateManagerf: +/* 801F61FC 001F315C 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801F6200 001F3160 7C 08 02 A6 */ mflr r0 +/* 801F6204 001F3164 90 01 00 44 */ stw r0, 0x44(r1) +/* 801F6208 001F3168 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801F620C 001F316C 3B E0 00 00 */ li r31, 0 +/* 801F6210 001F3170 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801F6214 001F3174 7C 9E 23 78 */ mr r30, r4 +/* 801F6218 001F3178 93 A1 00 34 */ stw r29, 0x34(r1) +/* 801F621C 001F317C 7C 7D 1B 78 */ mr r29, r3 +/* 801F6220 001F3180 7F A4 EB 78 */ mr r4, r29 +/* 801F6224 001F3184 38 61 00 14 */ addi r3, r1, 0x14 +/* 801F6228 001F3188 4B E8 68 A9 */ bl GetGunEyePos__10CPatternedCFv +/* 801F622C 001F318C 80 9E 08 4C */ lwz r4, 0x84c(r30) +/* 801F6230 001F3190 7F C5 F3 78 */ mr r5, r30 +/* 801F6234 001F3194 38 61 00 20 */ addi r3, r1, 0x20 +/* 801F6238 001F3198 C0 22 AF 20 */ lfs f1, lbl_805ACC40@sda21(r2) +/* 801F623C 001F319C 81 84 00 00 */ lwz r12, 0(r4) +/* 801F6240 001F31A0 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801F6244 001F31A4 7D 89 03 A6 */ mtctr r12 +/* 801F6248 001F31A8 4E 80 04 21 */ bctrl +/* 801F624C 001F31AC C0 21 00 24 */ lfs f1, 0x24(r1) +/* 801F6250 001F31B0 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 801F6254 001F31B4 C0 DD 00 48 */ lfs f6, 0x48(r29) +/* 801F6258 001F31B8 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801F625C 001F31BC C0 21 00 20 */ lfs f1, 0x20(r1) +/* 801F6260 001F31C0 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 801F6264 001F31C4 C0 5D 00 38 */ lfs f2, 0x38(r29) +/* 801F6268 001F31C8 EC A1 00 28 */ fsubs f5, f1, f0 +/* 801F626C 001F31CC C0 61 00 28 */ lfs f3, 0x28(r1) +/* 801F6270 001F31D0 EC 04 01 B2 */ fmuls f0, f4, f6 +/* 801F6274 001F31D4 C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 801F6278 001F31D8 C0 FD 00 58 */ lfs f7, 0x58(r29) +/* 801F627C 001F31DC EC 63 08 28 */ fsubs f3, f3, f1 +/* 801F6280 001F31E0 EC 25 00 BA */ fmadds f1, f5, f2, f0 +/* 801F6284 001F31E4 C0 02 AF 20 */ lfs f0, lbl_805ACC40@sda21(r2) +/* 801F6288 001F31E8 D0 41 00 08 */ stfs f2, 8(r1) +/* 801F628C 001F31EC EC 43 09 FA */ fmadds f2, f3, f7, f1 +/* 801F6290 001F31F0 D0 C1 00 0C */ stfs f6, 0xc(r1) +/* 801F6294 001F31F4 D0 E1 00 10 */ stfs f7, 0x10(r1) +/* 801F6298 001F31F8 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801F629C 001F31FC 40 81 00 28 */ ble lbl_801F62C4 +/* 801F62A0 001F3200 EC 24 01 32 */ fmuls f1, f4, f4 +/* 801F62A4 001F3204 C0 1D 03 C4 */ lfs f0, 0x3c4(r29) +/* 801F62A8 001F3208 EC 42 00 B2 */ fmuls f2, f2, f2 +/* 801F62AC 001F320C EC 25 09 7A */ fmadds f1, f5, f5, f1 +/* 801F62B0 001F3210 EC 23 08 FA */ fmadds f1, f3, f3, f1 +/* 801F62B4 001F3214 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801F62B8 001F3218 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801F62BC 001F321C 7C 00 00 26 */ mfcr r0 +/* 801F62C0 001F3220 54 1F 17 FE */ rlwinm r31, r0, 2, 0x1f, 0x1f +lbl_801F62C4: +/* 801F62C4 001F3224 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801F62C8 001F3228 7F E3 FB 78 */ mr r3, r31 +/* 801F62CC 001F322C 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801F62D0 001F3230 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801F62D4 001F3234 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 801F62D8 001F3238 7C 08 03 A6 */ mtlr r0 +/* 801F62DC 001F323C 38 21 00 40 */ addi r1, r1, 0x40 +/* 801F62E0 001F3240 4E 80 00 20 */ blr + +.global Leash__10CPatternedFR13CStateManagerf +Leash__10CPatternedFR13CStateManagerf: +/* 801F62E4 001F3244 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801F62E8 001F3248 C0 23 03 D4 */ lfs f1, 0x3d4(r3) +/* 801F62EC 001F324C C0 03 03 D0 */ lfs f0, 0x3d0(r3) +/* 801F62F0 001F3250 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F62F4 001F3254 7C 00 00 26 */ mfcr r0 +/* 801F62F8 001F3258 54 00 17 FF */ rlwinm. r0, r0, 2, 0x1f, 0x1f +/* 801F62FC 001F325C 41 82 00 64 */ beq lbl_801F6360 +/* 801F6300 001F3260 C0 43 03 A4 */ lfs f2, 0x3a4(r3) +/* 801F6304 001F3264 38 00 00 00 */ li r0, 0 +/* 801F6308 001F3268 C0 03 00 50 */ lfs f0, 0x50(r3) +/* 801F630C 001F326C C0 23 03 A0 */ lfs f1, 0x3a0(r3) +/* 801F6310 001F3270 EC 82 00 28 */ fsubs f4, f2, f0 +/* 801F6314 001F3274 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801F6318 001F3278 C0 63 03 A8 */ lfs f3, 0x3a8(r3) +/* 801F631C 001F327C EC 41 00 28 */ fsubs f2, f1, f0 +/* 801F6320 001F3280 C0 23 00 60 */ lfs f1, 0x60(r3) +/* 801F6324 001F3284 EC 04 01 32 */ fmuls f0, f4, f4 +/* 801F6328 001F3288 EC 63 08 28 */ fsubs f3, f3, f1 +/* 801F632C 001F328C D0 81 00 0C */ stfs f4, 0xc(r1) +/* 801F6330 001F3290 EC 22 00 B2 */ fmuls f1, f2, f2 +/* 801F6334 001F3294 D0 41 00 08 */ stfs f2, 8(r1) +/* 801F6338 001F3298 EC 43 00 F2 */ fmuls f2, f3, f3 +/* 801F633C 001F329C EC 01 00 2A */ fadds f0, f1, f0 +/* 801F6340 001F32A0 D0 61 00 10 */ stfs f3, 0x10(r1) +/* 801F6344 001F32A4 EC 22 00 2A */ fadds f1, f2, f0 +/* 801F6348 001F32A8 41 82 00 18 */ beq lbl_801F6360 +/* 801F634C 001F32AC C0 03 03 C8 */ lfs f0, 0x3c8(r3) +/* 801F6350 001F32B0 EC 00 00 32 */ fmuls f0, f0, f0 +/* 801F6354 001F32B4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F6358 001F32B8 40 81 00 08 */ ble lbl_801F6360 +/* 801F635C 001F32BC 38 00 00 01 */ li r0, 1 +lbl_801F6360: +/* 801F6360 001F32C0 7C 03 03 78 */ mr r3, r0 +/* 801F6364 001F32C4 38 21 00 20 */ addi r1, r1, 0x20 +/* 801F6368 001F32C8 4E 80 00 20 */ blr + +.global InDetectionRange__10CPatternedFR13CStateManagerf +InDetectionRange__10CPatternedFR13CStateManagerf: +/* 801F636C 001F32CC 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 801F6370 001F32D0 38 00 00 00 */ li r0, 0 +/* 801F6374 001F32D4 C0 03 03 BC */ lfs f0, 0x3bc(r3) +/* 801F6378 001F32D8 C0 44 00 50 */ lfs f2, 0x50(r4) +/* 801F637C 001F32DC C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801F6380 001F32E0 EC 00 00 32 */ fmuls f0, f0, f0 +/* 801F6384 001F32E4 C0 84 00 40 */ lfs f4, 0x40(r4) +/* 801F6388 001F32E8 EC A2 08 28 */ fsubs f5, f2, f1 +/* 801F638C 001F32EC C0 23 00 40 */ lfs f1, 0x40(r3) +/* 801F6390 001F32F0 C0 64 00 60 */ lfs f3, 0x60(r4) +/* 801F6394 001F32F4 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 801F6398 001F32F8 EC 84 08 28 */ fsubs f4, f4, f1 +/* 801F639C 001F32FC EC 25 01 72 */ fmuls f1, f5, f5 +/* 801F63A0 001F3300 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801F63A4 001F3304 EC 24 09 3A */ fmadds f1, f4, f4, f1 +/* 801F63A8 001F3308 EC 42 00 B2 */ fmuls f2, f2, f2 +/* 801F63AC 001F330C EC 22 08 2A */ fadds f1, f2, f1 +/* 801F63B0 001F3310 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F63B4 001F3314 40 80 00 28 */ bge lbl_801F63DC +/* 801F63B8 001F3318 C0 23 03 C0 */ lfs f1, 0x3c0(r3) +/* 801F63BC 001F331C 38 00 00 01 */ li r0, 1 +/* 801F63C0 001F3320 C0 02 AF 20 */ lfs f0, lbl_805ACC40@sda21(r2) +/* 801F63C4 001F3324 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F63C8 001F3328 40 81 00 14 */ ble lbl_801F63DC +/* 801F63CC 001F332C EC 01 00 72 */ fmuls f0, f1, f1 +/* 801F63D0 001F3330 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801F63D4 001F3334 7C 00 00 26 */ mfcr r0 +/* 801F63D8 001F3338 54 00 0F FE */ srwi r0, r0, 0x1f +lbl_801F63DC: +/* 801F63DC 001F333C 7C 03 03 78 */ mr r3, r0 +/* 801F63E0 001F3340 4E 80 00 20 */ blr + +.global InMaxRange__10CPatternedFR13CStateManagerf +InMaxRange__10CPatternedFR13CStateManagerf: +/* 801F63E4 001F3344 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801F63E8 001F3348 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 801F63EC 001F334C C0 03 03 00 */ lfs f0, 0x300(r3) +/* 801F63F0 001F3350 C0 E4 00 50 */ lfs f7, 0x50(r4) +/* 801F63F4 001F3354 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801F63F8 001F3358 EC 00 00 32 */ fmuls f0, f0, f0 +/* 801F63FC 001F335C C0 44 00 40 */ lfs f2, 0x40(r4) +/* 801F6400 001F3360 EC C7 08 28 */ fsubs f6, f7, f1 +/* 801F6404 001F3364 C0 23 00 40 */ lfs f1, 0x40(r3) +/* 801F6408 001F3368 C1 04 00 60 */ lfs f8, 0x60(r4) +/* 801F640C 001F336C EC 82 08 28 */ fsubs f4, f2, f1 +/* 801F6410 001F3370 C0 63 00 60 */ lfs f3, 0x60(r3) +/* 801F6414 001F3374 D0 41 00 08 */ stfs f2, 8(r1) +/* 801F6418 001F3378 EC A8 18 28 */ fsubs f5, f8, f3 +/* 801F641C 001F337C EC 26 01 B2 */ fmuls f1, f6, f6 +/* 801F6420 001F3380 D0 E1 00 0C */ stfs f7, 0xc(r1) +/* 801F6424 001F3384 EC 44 01 32 */ fmuls f2, f4, f4 +/* 801F6428 001F3388 EC 65 01 72 */ fmuls f3, f5, f5 +/* 801F642C 001F338C D1 01 00 10 */ stfs f8, 0x10(r1) +/* 801F6430 001F3390 EC 22 08 2A */ fadds f1, f2, f1 +/* 801F6434 001F3394 D0 81 00 14 */ stfs f4, 0x14(r1) +/* 801F6438 001F3398 D0 C1 00 18 */ stfs f6, 0x18(r1) +/* 801F643C 001F339C EC 23 08 2A */ fadds f1, f3, f1 +/* 801F6440 001F33A0 D0 A1 00 1C */ stfs f5, 0x1c(r1) +/* 801F6444 001F33A4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F6448 001F33A8 7C 00 00 26 */ mfcr r0 +/* 801F644C 001F33AC 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801F6450 001F33B0 38 21 00 20 */ addi r1, r1, 0x20 +/* 801F6454 001F33B4 4E 80 00 20 */ blr + +.global TooClose__10CPatternedFR13CStateManagerf +TooClose__10CPatternedFR13CStateManagerf: +/* 801F6458 001F33B8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801F645C 001F33BC 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 801F6460 001F33C0 C0 03 02 FC */ lfs f0, 0x2fc(r3) +/* 801F6464 001F33C4 C0 E4 00 50 */ lfs f7, 0x50(r4) +/* 801F6468 001F33C8 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801F646C 001F33CC EC 00 00 32 */ fmuls f0, f0, f0 +/* 801F6470 001F33D0 C0 44 00 40 */ lfs f2, 0x40(r4) +/* 801F6474 001F33D4 EC C7 08 28 */ fsubs f6, f7, f1 +/* 801F6478 001F33D8 C0 23 00 40 */ lfs f1, 0x40(r3) +/* 801F647C 001F33DC C1 04 00 60 */ lfs f8, 0x60(r4) +/* 801F6480 001F33E0 EC 82 08 28 */ fsubs f4, f2, f1 +/* 801F6484 001F33E4 C0 63 00 60 */ lfs f3, 0x60(r3) +/* 801F6488 001F33E8 D0 41 00 08 */ stfs f2, 8(r1) +/* 801F648C 001F33EC EC A8 18 28 */ fsubs f5, f8, f3 +/* 801F6490 001F33F0 EC 26 01 B2 */ fmuls f1, f6, f6 +/* 801F6494 001F33F4 D0 E1 00 0C */ stfs f7, 0xc(r1) +/* 801F6498 001F33F8 EC 44 01 32 */ fmuls f2, f4, f4 +/* 801F649C 001F33FC EC 65 01 72 */ fmuls f3, f5, f5 +/* 801F64A0 001F3400 D1 01 00 10 */ stfs f8, 0x10(r1) +/* 801F64A4 001F3404 EC 22 08 2A */ fadds f1, f2, f1 +/* 801F64A8 001F3408 D0 81 00 14 */ stfs f4, 0x14(r1) +/* 801F64AC 001F340C D0 C1 00 18 */ stfs f6, 0x18(r1) +/* 801F64B0 001F3410 EC 23 08 2A */ fadds f1, f3, f1 +/* 801F64B4 001F3414 D0 A1 00 1C */ stfs f5, 0x1c(r1) +/* 801F64B8 001F3418 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F64BC 001F341C 7C 00 00 26 */ mfcr r0 +/* 801F64C0 001F3420 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801F64C4 001F3424 38 21 00 20 */ addi r1, r1, 0x20 +/* 801F64C8 001F3428 4E 80 00 20 */ blr + +.global InRange__10CPatternedFR13CStateManagerf +InRange__10CPatternedFR13CStateManagerf: +/* 801F64CC 001F342C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801F64D0 001F3430 C0 42 AF 48 */ lfs f2, lbl_805ACC68@sda21(r2) +/* 801F64D4 001F3434 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 801F64D8 001F3438 C0 03 00 50 */ lfs f0, 0x50(r3) +/* 801F64DC 001F343C C1 44 00 50 */ lfs f10, 0x50(r4) +/* 801F64E0 001F3440 C0 E4 00 40 */ lfs f7, 0x40(r4) +/* 801F64E4 001F3444 ED 2A 00 28 */ fsubs f9, f10, f0 +/* 801F64E8 001F3448 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801F64EC 001F344C C1 64 00 60 */ lfs f11, 0x60(r4) +/* 801F64F0 001F3450 EC C7 00 28 */ fsubs f6, f7, f0 +/* 801F64F4 001F3454 C0 03 00 60 */ lfs f0, 0x60(r3) +/* 801F64F8 001F3458 C0 23 02 FC */ lfs f1, 0x2fc(r3) +/* 801F64FC 001F345C ED 0B 00 28 */ fsubs f8, f11, f0 +/* 801F6500 001F3460 C0 03 03 00 */ lfs f0, 0x300(r3) +/* 801F6504 001F3464 EC 86 01 B2 */ fmuls f4, f6, f6 +/* 801F6508 001F3468 EC 01 00 2A */ fadds f0, f1, f0 +/* 801F650C 001F346C D0 E1 00 08 */ stfs f7, 8(r1) +/* 801F6510 001F3470 EC 69 02 72 */ fmuls f3, f9, f9 +/* 801F6514 001F3474 EC A8 02 32 */ fmuls f5, f8, f8 +/* 801F6518 001F3478 D1 41 00 0C */ stfs f10, 0xc(r1) +/* 801F651C 001F347C EC 02 00 32 */ fmuls f0, f2, f0 +/* 801F6520 001F3480 EC 24 18 2A */ fadds f1, f4, f3 +/* 801F6524 001F3484 D1 61 00 10 */ stfs f11, 0x10(r1) +/* 801F6528 001F3488 EC 00 00 32 */ fmuls f0, f0, f0 +/* 801F652C 001F348C D0 C1 00 14 */ stfs f6, 0x14(r1) +/* 801F6530 001F3490 EC 25 08 2A */ fadds f1, f5, f1 +/* 801F6534 001F3494 D1 21 00 18 */ stfs f9, 0x18(r1) +/* 801F6538 001F3498 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F653C 001F349C D1 01 00 1C */ stfs f8, 0x1c(r1) +/* 801F6540 001F34A0 7C 00 00 26 */ mfcr r0 +/* 801F6544 001F34A4 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801F6548 001F34A8 38 21 00 20 */ addi r1, r1, 0x20 +/* 801F654C 001F34AC 4E 80 00 20 */ blr + +.global OffLine__10CPatternedFR13CStateManagerf +OffLine__10CPatternedFR13CStateManagerf: +/* 801F6550 001F34B0 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801F6554 001F34B4 7C 08 02 A6 */ mflr r0 +/* 801F6558 001F34B8 90 01 00 64 */ stw r0, 0x64(r1) +/* 801F655C 001F34BC DB E1 00 50 */ stfd f31, 0x50(r1) +/* 801F6560 001F34C0 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 801F6564 001F34C4 DB C1 00 40 */ stfd f30, 0x40(r1) +/* 801F6568 001F34C8 F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0 +/* 801F656C 001F34CC DB A1 00 30 */ stfd f29, 0x30(r1) +/* 801F6570 001F34D0 F3 A1 00 38 */ psq_st f29, 56(r1), 0, qr0 +/* 801F6574 001F34D4 DB 81 00 20 */ stfd f28, 0x20(r1) +/* 801F6578 001F34D8 F3 81 00 28 */ psq_st f28, 40(r1), 0, qr0 +/* 801F657C 001F34DC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801F6580 001F34E0 7C 7F 1B 78 */ mr r31, r3 +/* 801F6584 001F34E4 C0 02 AF 20 */ lfs f0, lbl_805ACC40@sda21(r2) +/* 801F6588 001F34E8 C0 43 00 50 */ lfs f2, 0x50(r3) +/* 801F658C 001F34EC FF 80 08 90 */ fmr f28, f1 +/* 801F6590 001F34F0 C0 63 02 F0 */ lfs f3, 0x2f0(r3) +/* 801F6594 001F34F4 C0 23 02 E4 */ lfs f1, 0x2e4(r3) +/* 801F6598 001F34F8 EF C2 18 28 */ fsubs f30, f2, f3 +/* 801F659C 001F34FC C0 43 00 40 */ lfs f2, 0x40(r3) +/* 801F65A0 001F3500 EC A1 18 28 */ fsubs f5, f1, f3 +/* 801F65A4 001F3504 C0 63 02 EC */ lfs f3, 0x2ec(r3) +/* 801F65A8 001F3508 C0 23 02 E0 */ lfs f1, 0x2e0(r3) +/* 801F65AC 001F350C EF A2 18 28 */ fsubs f29, f2, f3 +/* 801F65B0 001F3510 EC 41 18 28 */ fsubs f2, f1, f3 +/* 801F65B4 001F3514 C0 83 00 60 */ lfs f4, 0x60(r3) +/* 801F65B8 001F3518 EC 25 07 B2 */ fmuls f1, f5, f30 +/* 801F65BC 001F351C C0 C3 02 F4 */ lfs f6, 0x2f4(r3) +/* 801F65C0 001F3520 C0 63 02 E8 */ lfs f3, 0x2e8(r3) +/* 801F65C4 001F3524 EF E4 30 28 */ fsubs f31, f4, f6 +/* 801F65C8 001F3528 EC 63 30 28 */ fsubs f3, f3, f6 +/* 801F65CC 001F352C D0 41 00 08 */ stfs f2, 8(r1) +/* 801F65D0 001F3530 EC 22 0F 7A */ fmadds f1, f2, f29, f1 +/* 801F65D4 001F3534 D0 A1 00 0C */ stfs f5, 0xc(r1) +/* 801F65D8 001F3538 EC 23 0F FA */ fmadds f1, f3, f31, f1 +/* 801F65DC 001F353C D0 61 00 10 */ stfs f3, 0x10(r1) +/* 801F65E0 001F3540 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F65E4 001F3544 4C 40 13 82 */ cror 2, 0, 2 +/* 801F65E8 001F3548 40 82 00 14 */ bne lbl_801F65FC +/* 801F65EC 001F354C EC 1E 07 B2 */ fmuls f0, f30, f30 +/* 801F65F0 001F3550 EC 1D 07 7A */ fmadds f0, f29, f29, f0 +/* 801F65F4 001F3554 EC 5F 07 FA */ fmadds f2, f31, f31, f0 +/* 801F65F8 001F3558 48 00 00 90 */ b lbl_801F6688 +lbl_801F65FC: +/* 801F65FC 001F355C 38 61 00 08 */ addi r3, r1, 8 +/* 801F6600 001F3560 48 11 E2 F9 */ bl Normalize__9CVector3fFv +/* 801F6604 001F3564 C0 A1 00 0C */ lfs f5, 0xc(r1) +/* 801F6608 001F3568 C1 41 00 08 */ lfs f10, 8(r1) +/* 801F660C 001F356C EC 45 07 B2 */ fmuls f2, f5, f30 +/* 801F6610 001F3570 C1 61 00 10 */ lfs f11, 0x10(r1) +/* 801F6614 001F3574 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 801F6618 001F3578 C0 1F 02 E4 */ lfs f0, 0x2e4(r31) +/* 801F661C 001F357C EC 4A 17 7A */ fmadds f2, f10, f29, f2 +/* 801F6620 001F3580 C0 9F 00 40 */ lfs f4, 0x40(r31) +/* 801F6624 001F3584 EC E1 00 28 */ fsubs f7, f1, f0 +/* 801F6628 001F3588 C0 1F 02 E0 */ lfs f0, 0x2e0(r31) +/* 801F662C 001F358C C0 7F 00 60 */ lfs f3, 0x60(r31) +/* 801F6630 001F3590 ED 2B 17 FA */ fmadds f9, f11, f31, f2 +/* 801F6634 001F3594 C0 5F 02 E8 */ lfs f2, 0x2e8(r31) +/* 801F6638 001F3598 ED 04 00 28 */ fsubs f8, f4, f0 +/* 801F663C 001F359C EC 25 01 F2 */ fmuls f1, f5, f7 +/* 801F6640 001F35A0 C0 02 AF 20 */ lfs f0, lbl_805ACC40@sda21(r2) +/* 801F6644 001F35A4 EC A9 01 72 */ fmuls f5, f9, f5 +/* 801F6648 001F35A8 EC C9 02 B2 */ fmuls f6, f9, f10 +/* 801F664C 001F35AC EC 89 02 F2 */ fmuls f4, f9, f11 +/* 801F6650 001F35B0 ED 3E 28 28 */ fsubs f9, f30, f5 +/* 801F6654 001F35B4 EC BD 30 28 */ fsubs f5, f29, f6 +/* 801F6658 001F35B8 EC 63 10 28 */ fsubs f3, f3, f2 +/* 801F665C 001F35BC EC 49 02 72 */ fmuls f2, f9, f9 +/* 801F6660 001F35C0 EC 2A 0A 3A */ fmadds f1, f10, f8, f1 +/* 801F6664 001F35C4 EC 9F 20 28 */ fsubs f4, f31, f4 +/* 801F6668 001F35C8 EC 45 11 7A */ fmadds f2, f5, f5, f2 +/* 801F666C 001F35CC EC 2B 08 FA */ fmadds f1, f11, f3, f1 +/* 801F6670 001F35D0 EC 44 11 3A */ fmadds f2, f4, f4, f2 +/* 801F6674 001F35D4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F6678 001F35D8 40 81 00 10 */ ble lbl_801F6688 +/* 801F667C 001F35DC EC 07 01 F2 */ fmuls f0, f7, f7 +/* 801F6680 001F35E0 EC 08 02 3A */ fmadds f0, f8, f8, f0 +/* 801F6684 001F35E4 EC 43 00 FA */ fmadds f2, f3, f3, f0 +lbl_801F6688: +/* 801F6688 001F35E8 EC 1C 07 32 */ fmuls f0, f28, f28 +/* 801F668C 001F35EC FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801F6690 001F35F0 7C 00 00 26 */ mfcr r0 +/* 801F6694 001F35F4 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f +/* 801F6698 001F35F8 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 +/* 801F669C 001F35FC CB E1 00 50 */ lfd f31, 0x50(r1) +/* 801F66A0 001F3600 E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0 +/* 801F66A4 001F3604 CB C1 00 40 */ lfd f30, 0x40(r1) +/* 801F66A8 001F3608 E3 A1 00 38 */ psq_l f29, 56(r1), 0, qr0 +/* 801F66AC 001F360C CB A1 00 30 */ lfd f29, 0x30(r1) +/* 801F66B0 001F3610 E3 81 00 28 */ psq_l f28, 40(r1), 0, qr0 +/* 801F66B4 001F3614 CB 81 00 20 */ lfd f28, 0x20(r1) +/* 801F66B8 001F3618 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801F66BC 001F361C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801F66C0 001F3620 7C 08 03 A6 */ mtlr r0 +/* 801F66C4 001F3624 38 21 00 60 */ addi r1, r1, 0x60 +/* 801F66C8 001F3628 4E 80 00 20 */ blr + +.global PathFind__10CPatternedFR13CStateManager9EStateMsgf +PathFind__10CPatternedFR13CStateManager9EStateMsgf: +/* 801F66CC 001F362C 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801F66D0 001F3630 7C 08 02 A6 */ mflr r0 +/* 801F66D4 001F3634 90 01 00 64 */ stw r0, 0x64(r1) +/* 801F66D8 001F3638 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 801F66DC 001F363C 7C 9F 23 78 */ mr r31, r4 +/* 801F66E0 001F3640 93 C1 00 58 */ stw r30, 0x58(r1) +/* 801F66E4 001F3644 7C 7E 1B 78 */ mr r30, r3 +/* 801F66E8 001F3648 93 A1 00 54 */ stw r29, 0x54(r1) +/* 801F66EC 001F364C 7C BD 2B 78 */ mr r29, r5 +/* 801F66F0 001F3650 81 83 00 00 */ lwz r12, 0(r3) +/* 801F66F4 001F3654 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801F66F8 001F3658 7D 89 03 A6 */ mtctr r12 +/* 801F66FC 001F365C 4E 80 04 21 */ bctrl +/* 801F6700 001F3660 28 03 00 00 */ cmplwi r3, 0 +/* 801F6704 001F3664 41 82 02 A4 */ beq lbl_801F69A8 +/* 801F6708 001F3668 2C 1D 00 01 */ cmpwi r29, 1 +/* 801F670C 001F366C 41 82 00 DC */ beq lbl_801F67E8 +/* 801F6710 001F3670 40 80 02 98 */ bge lbl_801F69A8 +/* 801F6714 001F3674 2C 1D 00 00 */ cmpwi r29, 0 +/* 801F6718 001F3678 40 80 00 0C */ bge lbl_801F6724 +/* 801F671C 001F367C 48 00 02 8C */ b lbl_801F69A8 +/* 801F6720 001F3680 48 00 02 88 */ b lbl_801F69A8 +lbl_801F6724: +/* 801F6724 001F3684 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 801F6728 001F3688 7F C3 F3 78 */ mr r3, r30 +/* 801F672C 001F368C C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 801F6730 001F3690 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801F6734 001F3694 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801F6738 001F3698 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 801F673C 001F369C D0 41 00 28 */ stfs f2, 0x28(r1) +/* 801F6740 001F36A0 81 9E 00 00 */ lwz r12, 0(r30) +/* 801F6744 001F36A4 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801F6748 001F36A8 7D 89 03 A6 */ mtctr r12 +/* 801F674C 001F36AC 4E 80 04 21 */ bctrl +/* 801F6750 001F36B0 38 81 00 20 */ addi r4, r1, 0x20 +/* 801F6754 001F36B4 38 BE 02 E0 */ addi r5, r30, 0x2e0 +/* 801F6758 001F36B8 4B FD 15 15 */ bl Search__15CPathFindSearchFRC9CVector3fRC9CVector3f +/* 801F675C 001F36BC 2C 03 00 00 */ cmpwi r3, 0 +/* 801F6760 001F36C0 40 82 02 48 */ bne lbl_801F69A8 +/* 801F6764 001F36C4 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 801F6768 001F36C8 7F C3 F3 78 */ mr r3, r30 +/* 801F676C 001F36CC C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 801F6770 001F36D0 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801F6774 001F36D4 D0 1E 02 EC */ stfs f0, 0x2ec(r30) +/* 801F6778 001F36D8 D0 3E 02 F0 */ stfs f1, 0x2f0(r30) +/* 801F677C 001F36DC D0 5E 02 F4 */ stfs f2, 0x2f4(r30) +/* 801F6780 001F36E0 81 9E 00 00 */ lwz r12, 0(r30) +/* 801F6784 001F36E4 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801F6788 001F36E8 7D 89 03 A6 */ mtctr r12 +/* 801F678C 001F36EC 4E 80 04 21 */ bctrl +/* 801F6790 001F36F0 80 A3 00 C8 */ lwz r5, 0xc8(r3) +/* 801F6794 001F36F4 80 03 00 04 */ lwz r0, 4(r3) +/* 801F6798 001F36F8 38 85 00 01 */ addi r4, r5, 1 +/* 801F679C 001F36FC 7C 04 00 00 */ cmpw r4, r0 +/* 801F67A0 001F3700 40 80 00 14 */ bge lbl_801F67B4 +/* 801F67A4 001F3704 1C 04 00 0C */ mulli r0, r4, 0xc +/* 801F67A8 001F3708 7C 83 02 14 */ add r4, r3, r0 +/* 801F67AC 001F370C 38 84 00 08 */ addi r4, r4, 8 +/* 801F67B0 001F3710 48 00 00 10 */ b lbl_801F67C0 +lbl_801F67B4: +/* 801F67B4 001F3714 1C 05 00 0C */ mulli r0, r5, 0xc +/* 801F67B8 001F3718 7C 83 02 14 */ add r4, r3, r0 +/* 801F67BC 001F371C 38 84 00 08 */ addi r4, r4, 8 +lbl_801F67C0: +/* 801F67C0 001F3720 7F C3 F3 78 */ mr r3, r30 +/* 801F67C4 001F3724 4B E8 63 99 */ bl SetDestPos__10CPatternedFRC9CVector3f +/* 801F67C8 001F3728 88 1E 03 28 */ lbz r0, 0x328(r30) +/* 801F67CC 001F372C 38 60 00 00 */ li r3, 0 +/* 801F67D0 001F3730 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801F67D4 001F3734 7F C3 F3 78 */ mr r3, r30 +/* 801F67D8 001F3738 98 1E 03 28 */ stb r0, 0x328(r30) +/* 801F67DC 001F373C 7F E4 FB 78 */ mr r4, r31 +/* 801F67E0 001F3740 4B FF EE 71 */ bl ApproachDest__10CPatternedFR13CStateManager +/* 801F67E4 001F3744 48 00 01 C4 */ b lbl_801F69A8 +lbl_801F67E8: +/* 801F67E8 001F3748 7F C3 F3 78 */ mr r3, r30 +/* 801F67EC 001F374C 81 9E 00 00 */ lwz r12, 0(r30) +/* 801F67F0 001F3750 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801F67F4 001F3754 7D 89 03 A6 */ mtctr r12 +/* 801F67F8 001F3758 4E 80 04 21 */ bctrl +/* 801F67FC 001F375C 80 83 00 04 */ lwz r4, 4(r3) +/* 801F6800 001F3760 80 63 00 C8 */ lwz r3, 0xc8(r3) +/* 801F6804 001F3764 38 04 FF FF */ addi r0, r4, -1 +/* 801F6808 001F3768 7C 03 00 00 */ cmpw r3, r0 +/* 801F680C 001F376C 40 80 01 9C */ bge lbl_801F69A8 +/* 801F6810 001F3770 88 7E 03 28 */ lbz r3, 0x328(r30) +/* 801F6814 001F3774 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f +/* 801F6818 001F3778 40 82 00 0C */ bne lbl_801F6824 +/* 801F681C 001F377C 54 60 E7 FF */ rlwinm. r0, r3, 0x1c, 0x1f, 0x1f +/* 801F6820 001F3780 41 82 00 24 */ beq lbl_801F6844 +lbl_801F6824: +/* 801F6824 001F3784 88 9E 04 01 */ lbz r4, 0x401(r30) +/* 801F6828 001F3788 54 83 D7 BE */ rlwinm r3, r4, 0x1a, 0x1e, 0x1f +/* 801F682C 001F378C 38 03 00 01 */ addi r0, r3, 1 +/* 801F6830 001F3790 50 04 36 32 */ rlwimi r4, r0, 6, 0x18, 0x19 +/* 801F6834 001F3794 98 9E 04 01 */ stb r4, 0x401(r30) +/* 801F6838 001F3798 88 7E 04 01 */ lbz r3, 0x401(r30) +/* 801F683C 001F379C 50 63 06 32 */ rlwimi r3, r3, 0, 0x18, 0x19 +/* 801F6840 001F37A0 98 7E 04 01 */ stb r3, 0x401(r30) +lbl_801F6844: +/* 801F6844 001F37A4 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 801F6848 001F37A8 C0 A2 AF 40 */ lfs f5, lbl_805ACC60@sda21(r2) +/* 801F684C 001F37AC 38 A3 66 F4 */ addi r5, r3, lbl_805A66F4@l +/* 801F6850 001F37B0 C0 DE 00 50 */ lfs f6, 0x50(r30) +/* 801F6854 001F37B4 C0 45 00 04 */ lfs f2, 4(r5) +/* 801F6858 001F37B8 7F C3 F3 78 */ mr r3, r30 +/* 801F685C 001F37BC C0 25 00 08 */ lfs f1, 8(r5) +/* 801F6860 001F37C0 7F E4 FB 78 */ mr r4, r31 +/* 801F6864 001F37C4 C0 05 00 00 */ lfs f0, 0(r5) +/* 801F6868 001F37C8 EC 85 00 B2 */ fmuls f4, f5, f2 +/* 801F686C 001F37CC EC 45 00 72 */ fmuls f2, f5, f1 +/* 801F6870 001F37D0 C0 7E 00 60 */ lfs f3, 0x60(r30) +/* 801F6874 001F37D4 EC 05 00 32 */ fmuls f0, f5, f0 +/* 801F6878 001F37D8 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 801F687C 001F37DC EC 86 20 2A */ fadds f4, f6, f4 +/* 801F6880 001F37E0 EC 63 10 2A */ fadds f3, f3, f2 +/* 801F6884 001F37E4 EC 41 00 2A */ fadds f2, f1, f0 +/* 801F6888 001F37E8 D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 801F688C 001F37EC D0 41 00 38 */ stfs f2, 0x38(r1) +/* 801F6890 001F37F0 D0 61 00 40 */ stfs f3, 0x40(r1) +/* 801F6894 001F37F4 C0 1E 02 E0 */ lfs f0, 0x2e0(r30) +/* 801F6898 001F37F8 C0 3E 02 E4 */ lfs f1, 0x2e4(r30) +/* 801F689C 001F37FC EC A0 10 28 */ fsubs f5, f0, f2 +/* 801F68A0 001F3800 C0 1E 02 E8 */ lfs f0, 0x2e8(r30) +/* 801F68A4 001F3804 EC 21 20 28 */ fsubs f1, f1, f4 +/* 801F68A8 001F3808 EC 00 18 28 */ fsubs f0, f0, f3 +/* 801F68AC 001F380C EC 42 28 28 */ fsubs f2, f2, f5 +/* 801F68B0 001F3810 EC 24 08 28 */ fsubs f1, f4, f1 +/* 801F68B4 001F3814 EC 03 00 28 */ fsubs f0, f3, f0 +/* 801F68B8 001F3818 D0 5E 02 EC */ stfs f2, 0x2ec(r30) +/* 801F68BC 001F381C D0 3E 02 F0 */ stfs f1, 0x2f0(r30) +/* 801F68C0 001F3820 D0 1E 02 F4 */ stfs f0, 0x2f4(r30) +/* 801F68C4 001F3824 4B FF ED 8D */ bl ApproachDest__10CPatternedFR13CStateManager +/* 801F68C8 001F3828 80 9E 00 64 */ lwz r4, 0x64(r30) +/* 801F68CC 001F382C 7F C3 F3 78 */ mr r3, r30 +/* 801F68D0 001F3830 C0 5E 00 58 */ lfs f2, 0x58(r30) +/* 801F68D4 001F3834 C0 C4 00 04 */ lfs f6, 4(r4) +/* 801F68D8 001F3838 C0 3E 00 48 */ lfs f1, 0x48(r30) +/* 801F68DC 001F383C C0 1E 00 38 */ lfs f0, 0x38(r30) +/* 801F68E0 001F3840 EC 46 00 B2 */ fmuls f2, f6, f2 +/* 801F68E4 001F3844 C0 61 00 40 */ lfs f3, 0x40(r1) +/* 801F68E8 001F3848 EC 86 00 72 */ fmuls f4, f6, f1 +/* 801F68EC 001F384C C0 A1 00 3C */ lfs f5, 0x3c(r1) +/* 801F68F0 001F3850 EC 06 00 32 */ fmuls f0, f6, f0 +/* 801F68F4 001F3854 C0 21 00 38 */ lfs f1, 0x38(r1) +/* 801F68F8 001F3858 C0 E4 00 00 */ lfs f7, 0(r4) +/* 801F68FC 001F385C EC A5 20 2A */ fadds f5, f5, f4 +/* 801F6900 001F3860 C0 84 00 08 */ lfs f4, 8(r4) +/* 801F6904 001F3864 EC 43 10 2A */ fadds f2, f3, f2 +/* 801F6908 001F3868 EC 01 00 2A */ fadds f0, f1, f0 +/* 801F690C 001F386C D0 E1 00 14 */ stfs f7, 0x14(r1) +/* 801F6910 001F3870 D0 A1 00 30 */ stfs f5, 0x30(r1) +/* 801F6914 001F3874 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801F6918 001F3878 D0 41 00 34 */ stfs f2, 0x34(r1) +/* 801F691C 001F387C 81 9E 00 00 */ lwz r12, 0(r30) +/* 801F6920 001F3880 D0 C1 00 18 */ stfs f6, 0x18(r1) +/* 801F6924 001F3884 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801F6928 001F3888 D0 81 00 1C */ stfs f4, 0x1c(r1) +/* 801F692C 001F388C D0 E1 00 08 */ stfs f7, 8(r1) +/* 801F6930 001F3890 D0 C1 00 0C */ stfs f6, 0xc(r1) +/* 801F6934 001F3894 D0 81 00 10 */ stfs f4, 0x10(r1) +/* 801F6938 001F3898 7D 89 03 A6 */ mtctr r12 +/* 801F693C 001F389C 4E 80 04 21 */ bctrl +/* 801F6940 001F38A0 C0 22 88 F4 */ lfs f1, lbl_805AA614@sda21(r2) +/* 801F6944 001F38A4 38 81 00 2C */ addi r4, r1, 0x2c +/* 801F6948 001F38A8 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 801F694C 001F38AC 38 A1 00 38 */ addi r5, r1, 0x38 +/* 801F6950 001F38B0 EC 21 00 32 */ fmuls f1, f1, f0 +/* 801F6954 001F38B4 4B FD 52 45 */ bl GetSplinePointWithLookahead__15CPathFindSearchCFR9CVector3fRC9CVector3ff +/* 801F6958 001F38B8 7F C3 F3 78 */ mr r3, r30 +/* 801F695C 001F38BC 38 81 00 2C */ addi r4, r1, 0x2c +/* 801F6960 001F38C0 4B E8 61 FD */ bl SetDestPos__10CPatternedFRC9CVector3f +/* 801F6964 001F38C4 7F C3 F3 78 */ mr r3, r30 +/* 801F6968 001F38C8 81 9E 00 00 */ lwz r12, 0(r30) +/* 801F696C 001F38CC 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801F6970 001F38D0 7D 89 03 A6 */ mtctr r12 +/* 801F6974 001F38D4 4E 80 04 21 */ bctrl +/* 801F6978 001F38D8 38 81 00 38 */ addi r4, r1, 0x38 +/* 801F697C 001F38DC 4B FD 56 C9 */ bl SegmentOver__15CPathFindSearchCFRC9CVector3f +/* 801F6980 001F38E0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801F6984 001F38E4 41 82 00 24 */ beq lbl_801F69A8 +/* 801F6988 001F38E8 7F C3 F3 78 */ mr r3, r30 +/* 801F698C 001F38EC 81 9E 00 00 */ lwz r12, 0(r30) +/* 801F6990 001F38F0 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801F6994 001F38F4 7D 89 03 A6 */ mtctr r12 +/* 801F6998 001F38F8 4E 80 04 21 */ bctrl +/* 801F699C 001F38FC 80 83 00 C8 */ lwz r4, 0xc8(r3) +/* 801F69A0 001F3900 38 04 00 01 */ addi r0, r4, 1 +/* 801F69A4 001F3904 90 03 00 C8 */ stw r0, 0xc8(r3) +lbl_801F69A8: +/* 801F69A8 001F3908 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801F69AC 001F390C 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 801F69B0 001F3910 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 801F69B4 001F3914 83 A1 00 54 */ lwz r29, 0x54(r1) +/* 801F69B8 001F3918 7C 08 03 A6 */ mtlr r0 +/* 801F69BC 001F391C 38 21 00 60 */ addi r1, r1, 0x60 +/* 801F69C0 001F3920 4E 80 00 20 */ blr + +.global Dead__10CPatternedFR13CStateManager9EStateMsgf +Dead__10CPatternedFR13CStateManager9EStateMsgf: +/* 801F69C4 001F3924 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801F69C8 001F3928 7C 08 02 A6 */ mflr r0 +/* 801F69CC 001F392C 2C 05 00 01 */ cmpwi r5, 1 +/* 801F69D0 001F3930 90 01 00 24 */ stw r0, 0x24(r1) +/* 801F69D4 001F3934 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801F69D8 001F3938 7C 9F 23 78 */ mr r31, r4 +/* 801F69DC 001F393C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801F69E0 001F3940 7C 7E 1B 78 */ mr r30, r3 +/* 801F69E4 001F3944 41 82 00 34 */ beq lbl_801F6A18 +/* 801F69E8 001F3948 40 80 00 DC */ bge lbl_801F6AC4 +/* 801F69EC 001F394C 2C 05 00 00 */ cmpwi r5, 0 +/* 801F69F0 001F3950 40 80 00 08 */ bge lbl_801F69F8 +/* 801F69F4 001F3954 48 00 00 D0 */ b lbl_801F6AC4 +lbl_801F69F8: +/* 801F69F8 001F3958 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801F69FC 001F395C C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) +/* 801F6A00 001F3960 D0 1E 03 1C */ stfs f0, 0x31c(r30) +/* 801F6A04 001F3964 C0 03 00 04 */ lfs f0, 4(r3) +/* 801F6A08 001F3968 D0 1E 03 20 */ stfs f0, 0x320(r30) +/* 801F6A0C 001F396C C0 03 00 08 */ lfs f0, 8(r3) +/* 801F6A10 001F3970 D0 1E 03 24 */ stfs f0, 0x324(r30) +/* 801F6A14 001F3974 48 00 00 B0 */ b lbl_801F6AC4 +lbl_801F6A18: +/* 801F6A18 001F3978 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801F6A1C 001F397C 38 00 00 02 */ li r0, 2 +/* 801F6A20 001F3980 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l +/* 801F6A24 001F3984 90 01 00 0C */ stw r0, 0xc(r1) +/* 801F6A28 001F3988 38 81 00 08 */ addi r4, r1, 8 +/* 801F6A2C 001F398C 90 61 00 08 */ stw r3, 8(r1) +/* 801F6A30 001F3990 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801F6A34 001F3994 38 63 00 04 */ addi r3, r3, 4 +/* 801F6A38 001F3998 4B F3 AD 81 */ bl DeliverCmd__16CBodyStateCmdMgrFRC13CBodyStateCmd +/* 801F6A3C 001F399C 34 01 00 08 */ addic. r0, r1, 8 +/* 801F6A40 001F39A0 41 82 00 10 */ beq lbl_801F6A50 +/* 801F6A44 001F39A4 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801F6A48 001F39A8 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801F6A4C 001F39AC 90 01 00 08 */ stw r0, 8(r1) +lbl_801F6A50: +/* 801F6A50 001F39B0 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 801F6A54 001F39B4 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 801F6A58 001F39B8 40 82 00 6C */ bne lbl_801F6AC4 +/* 801F6A5C 001F39BC 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801F6A60 001F39C0 38 63 02 A4 */ addi r3, r3, 0x2a4 +/* 801F6A64 001F39C4 4B F3 D6 15 */ bl GetCurrentState__14CBodyStateInfoCFv +/* 801F6A68 001F39C8 81 83 00 00 */ lwz r12, 0(r3) +/* 801F6A6C 001F39CC 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801F6A70 001F39D0 7D 89 03 A6 */ mtctr r12 +/* 801F6A74 001F39D4 4E 80 04 21 */ bctrl +/* 801F6A78 001F39D8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801F6A7C 001F39DC 41 82 00 48 */ beq lbl_801F6AC4 +/* 801F6A80 001F39E0 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 801F6A84 001F39E4 38 60 00 01 */ li r3, 1 +/* 801F6A88 001F39E8 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801F6A8C 001F39EC C0 02 AF 4C */ lfs f0, lbl_805ACC6C@sda21(r2) +/* 801F6A90 001F39F0 98 1E 04 00 */ stb r0, 0x400(r30) +/* 801F6A94 001F39F4 7F C3 F3 78 */ mr r3, r30 +/* 801F6A98 001F39F8 7F E8 FB 78 */ mr r8, r31 +/* 801F6A9C 001F39FC 38 80 00 21 */ li r4, 0x21 +/* 801F6AA0 001F3A00 D0 1E 03 E8 */ stfs f0, 0x3e8(r30) +/* 801F6AA4 001F3A04 38 A0 00 13 */ li r5, 0x13 +/* 801F6AA8 001F3A08 38 C0 00 28 */ li r6, 0x28 +/* 801F6AAC 001F3A0C 38 E0 00 29 */ li r7, 0x29 +/* 801F6AB0 001F3A10 4B E5 D2 39 */ bl RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypes14EMaterialTypes14EMaterialTypesR13CStateManager +/* 801F6AB4 001F3A14 7F C3 F3 78 */ mr r3, r30 +/* 801F6AB8 001F3A18 7F E5 FB 78 */ mr r5, r31 +/* 801F6ABC 001F3A1C 38 80 00 12 */ li r4, 0x12 +/* 801F6AC0 001F3A20 4B E5 D8 91 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +lbl_801F6AC4: +/* 801F6AC4 001F3A24 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801F6AC8 001F3A28 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801F6ACC 001F3A2C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801F6AD0 001F3A30 7C 08 03 A6 */ mtlr r0 +/* 801F6AD4 001F3A34 38 21 00 20 */ addi r1, r1, 0x20 +/* 801F6AD8 001F3A38 4E 80 00 20 */ blr + +.global TargetPlayer__10CPatternedFR13CStateManager9EStateMsgf +TargetPlayer__10CPatternedFR13CStateManager9EStateMsgf: +/* 801F6ADC 001F3A3C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801F6AE0 001F3A40 7C 08 02 A6 */ mflr r0 +/* 801F6AE4 001F3A44 2C 05 00 00 */ cmpwi r5, 0 +/* 801F6AE8 001F3A48 90 01 00 24 */ stw r0, 0x24(r1) +/* 801F6AEC 001F3A4C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801F6AF0 001F3A50 7C 7F 1B 78 */ mr r31, r3 +/* 801F6AF4 001F3A54 41 82 00 08 */ beq lbl_801F6AFC +/* 801F6AF8 001F3A58 48 00 00 5C */ b lbl_801F6B54 +lbl_801F6AFC: +/* 801F6AFC 001F3A5C 80 A4 08 4C */ lwz r5, 0x84c(r4) +/* 801F6B00 001F3A60 A0 05 00 08 */ lhz r0, 8(r5) +/* 801F6B04 001F3A64 B0 1F 02 DC */ sth r0, 0x2dc(r31) +/* 801F6B08 001F3A68 80 A4 08 4C */ lwz r5, 0x84c(r4) +/* 801F6B0C 001F3A6C 38 81 00 08 */ addi r4, r1, 8 +/* 801F6B10 001F3A70 C0 45 00 60 */ lfs f2, 0x60(r5) +/* 801F6B14 001F3A74 C0 25 00 50 */ lfs f1, 0x50(r5) +/* 801F6B18 001F3A78 C0 05 00 40 */ lfs f0, 0x40(r5) +/* 801F6B1C 001F3A7C D0 01 00 08 */ stfs f0, 8(r1) +/* 801F6B20 001F3A80 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 801F6B24 001F3A84 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 801F6B28 001F3A88 4B E8 60 35 */ bl SetDestPos__10CPatternedFRC9CVector3f +/* 801F6B2C 001F3A8C C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 801F6B30 001F3A90 38 60 00 00 */ li r3, 0 +/* 801F6B34 001F3A94 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 801F6B38 001F3A98 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801F6B3C 001F3A9C D0 1F 02 EC */ stfs f0, 0x2ec(r31) +/* 801F6B40 001F3AA0 D0 3F 02 F0 */ stfs f1, 0x2f0(r31) +/* 801F6B44 001F3AA4 D0 5F 02 F4 */ stfs f2, 0x2f4(r31) +/* 801F6B48 001F3AA8 88 1F 03 28 */ lbz r0, 0x328(r31) +/* 801F6B4C 001F3AAC 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801F6B50 001F3AB0 98 1F 03 28 */ stb r0, 0x328(r31) +lbl_801F6B54: +/* 801F6B54 001F3AB4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801F6B58 001F3AB8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801F6B5C 001F3ABC 7C 08 03 A6 */ mtlr r0 +/* 801F6B60 001F3AC0 38 21 00 20 */ addi r1, r1, 0x20 +/* 801F6B64 001F3AC4 4E 80 00 20 */ blr + +.global TargetPatrol__10CPatternedFR13CStateManager9EStateMsgf +TargetPatrol__10CPatternedFR13CStateManager9EStateMsgf: +/* 801F6B68 001F3AC8 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801F6B6C 001F3ACC 7C 08 02 A6 */ mflr r0 +/* 801F6B70 001F3AD0 2C 05 00 00 */ cmpwi r5, 0 +/* 801F6B74 001F3AD4 90 01 00 34 */ stw r0, 0x34(r1) +/* 801F6B78 001F3AD8 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801F6B7C 001F3ADC 7C 9F 23 78 */ mr r31, r4 +/* 801F6B80 001F3AE0 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801F6B84 001F3AE4 7C 7E 1B 78 */ mr r30, r3 +/* 801F6B88 001F3AE8 41 82 00 08 */ beq lbl_801F6B90 +/* 801F6B8C 001F3AEC 48 00 00 9C */ b lbl_801F6C28 +lbl_801F6B90: +/* 801F6B90 001F3AF0 7F C4 F3 78 */ mr r4, r30 +/* 801F6B94 001F3AF4 7F E5 FB 78 */ mr r5, r31 +/* 801F6B98 001F3AF8 38 61 00 0C */ addi r3, r1, 0xc +/* 801F6B9C 001F3AFC 38 C0 00 0D */ li r6, 0xd +/* 801F6BA0 001F3B00 38 E0 00 06 */ li r7, 6 +/* 801F6BA4 001F3B04 4B FF E3 F5 */ bl GetWaypointForState__10CPatternedFR13CStateManager18EScriptObjectState +/* 801F6BA8 001F3B08 A0 01 00 0C */ lhz r0, 0xc(r1) +/* 801F6BAC 001F3B0C 7F E3 FB 78 */ mr r3, r31 +/* 801F6BB0 001F3B10 38 81 00 08 */ addi r4, r1, 8 +/* 801F6BB4 001F3B14 B0 1E 02 DC */ sth r0, 0x2dc(r30) +/* 801F6BB8 001F3B18 A0 1E 02 DC */ lhz r0, 0x2dc(r30) +/* 801F6BBC 001F3B1C B0 01 00 08 */ sth r0, 8(r1) +/* 801F6BC0 001F3B20 4B E5 59 E5 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801F6BC4 001F3B24 7C 64 1B 78 */ mr r4, r3 +/* 801F6BC8 001F3B28 38 61 00 10 */ addi r3, r1, 0x10 +/* 801F6BCC 001F3B2C 4B EB 90 C5 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 801F6BD0 001F3B30 80 A3 00 04 */ lwz r5, 4(r3) +/* 801F6BD4 001F3B34 28 05 00 00 */ cmplwi r5, 0 +/* 801F6BD8 001F3B38 41 82 00 28 */ beq lbl_801F6C00 +/* 801F6BDC 001F3B3C C0 45 00 60 */ lfs f2, 0x60(r5) +/* 801F6BE0 001F3B40 7F C3 F3 78 */ mr r3, r30 +/* 801F6BE4 001F3B44 C0 25 00 50 */ lfs f1, 0x50(r5) +/* 801F6BE8 001F3B48 38 81 00 18 */ addi r4, r1, 0x18 +/* 801F6BEC 001F3B4C C0 05 00 40 */ lfs f0, 0x40(r5) +/* 801F6BF0 001F3B50 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801F6BF4 001F3B54 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 801F6BF8 001F3B58 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 801F6BFC 001F3B5C 4B E8 5F 61 */ bl SetDestPos__10CPatternedFRC9CVector3f +lbl_801F6C00: +/* 801F6C00 001F3B60 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 801F6C04 001F3B64 38 60 00 00 */ li r3, 0 +/* 801F6C08 001F3B68 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 801F6C0C 001F3B6C C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801F6C10 001F3B70 D0 1E 02 EC */ stfs f0, 0x2ec(r30) +/* 801F6C14 001F3B74 D0 3E 02 F0 */ stfs f1, 0x2f0(r30) +/* 801F6C18 001F3B78 D0 5E 02 F4 */ stfs f2, 0x2f4(r30) +/* 801F6C1C 001F3B7C 88 1E 03 28 */ lbz r0, 0x328(r30) +/* 801F6C20 001F3B80 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801F6C24 001F3B84 98 1E 03 28 */ stb r0, 0x328(r30) +lbl_801F6C28: +/* 801F6C28 001F3B88 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801F6C2C 001F3B8C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801F6C30 001F3B90 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801F6C34 001F3B94 7C 08 03 A6 */ mtlr r0 +/* 801F6C38 001F3B98 38 21 00 30 */ addi r1, r1, 0x30 +/* 801F6C3C 001F3B9C 4E 80 00 20 */ blr + +.global FollowPattern__10CPatternedFR13CStateManager9EStateMsgf +FollowPattern__10CPatternedFR13CStateManager9EStateMsgf: +/* 801F6C40 001F3BA0 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801F6C44 001F3BA4 7C 08 02 A6 */ mflr r0 +/* 801F6C48 001F3BA8 2C 05 00 01 */ cmpwi r5, 1 +/* 801F6C4C 001F3BAC 90 01 00 44 */ stw r0, 0x44(r1) +/* 801F6C50 001F3BB0 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801F6C54 001F3BB4 7C 9F 23 78 */ mr r31, r4 +/* 801F6C58 001F3BB8 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801F6C5C 001F3BBC 7C 7E 1B 78 */ mr r30, r3 +/* 801F6C60 001F3BC0 41 82 00 90 */ beq lbl_801F6CF0 +/* 801F6C64 001F3BC4 40 80 00 10 */ bge lbl_801F6C74 +/* 801F6C68 001F3BC8 2C 05 00 00 */ cmpwi r5, 0 +/* 801F6C6C 001F3BCC 40 80 00 14 */ bge lbl_801F6C80 +/* 801F6C70 001F3BD0 48 00 01 EC */ b lbl_801F6E5C +lbl_801F6C74: +/* 801F6C74 001F3BD4 2C 05 00 03 */ cmpwi r5, 3 +/* 801F6C78 001F3BD8 40 80 01 E4 */ bge lbl_801F6E5C +/* 801F6C7C 001F3BDC 48 00 01 9C */ b lbl_801F6E18 +lbl_801F6C80: +/* 801F6C80 001F3BE0 4B FF D7 21 */ bl SetupPattern__10CPatternedFR13CStateManager +/* 801F6C84 001F3BE4 88 1E 03 28 */ lbz r0, 0x328(r30) +/* 801F6C88 001F3BE8 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 801F6C8C 001F3BEC 40 82 00 38 */ bne lbl_801F6CC4 +/* 801F6C90 001F3BF0 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 801F6C94 001F3BF4 7F C3 F3 78 */ mr r3, r30 +/* 801F6C98 001F3BF8 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 801F6C9C 001F3BFC 7F E4 FB 78 */ mr r4, r31 +/* 801F6CA0 001F3C00 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801F6CA4 001F3C04 38 A1 00 24 */ addi r5, r1, 0x24 +/* 801F6CA8 001F3C08 38 DE 02 E0 */ addi r6, r30, 0x2e0 +/* 801F6CAC 001F3C0C D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801F6CB0 001F3C10 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 801F6CB4 001F3C14 D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 801F6CB8 001F3C18 4B FF E1 19 */ bl IsPatternObstructed__10CPatternedCFR13CStateManagerRC9CVector3fRC9CVector3f +/* 801F6CBC 001F3C1C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801F6CC0 001F3C20 40 82 00 14 */ bne lbl_801F6CD4 +lbl_801F6CC4: +/* 801F6CC4 001F3C24 7F C3 F3 78 */ mr r3, r30 +/* 801F6CC8 001F3C28 7F E4 FB 78 */ mr r4, r31 +/* 801F6CCC 001F3C2C 4B FF E9 85 */ bl ApproachDest__10CPatternedFR13CStateManager +/* 801F6CD0 001F3C30 48 00 01 8C */ b lbl_801F6E5C +lbl_801F6CD4: +/* 801F6CD4 001F3C34 80 1E 03 90 */ lwz r0, 0x390(r30) +/* 801F6CD8 001F3C38 38 60 00 01 */ li r3, 1 +/* 801F6CDC 001F3C3C 90 1E 03 9C */ stw r0, 0x39c(r30) +/* 801F6CE0 001F3C40 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 801F6CE4 001F3C44 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 801F6CE8 001F3C48 98 1E 04 00 */ stb r0, 0x400(r30) +/* 801F6CEC 001F3C4C 48 00 01 70 */ b lbl_801F6E5C +lbl_801F6CF0: +/* 801F6CF0 001F3C50 88 1E 03 28 */ lbz r0, 0x328(r30) +/* 801F6CF4 001F3C54 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801F6CF8 001F3C58 41 82 01 0C */ beq lbl_801F6E04 +/* 801F6CFC 001F3C5C 80 BE 03 9C */ lwz r5, 0x39c(r30) +/* 801F6D00 001F3C60 38 05 00 01 */ addi r0, r5, 1 +/* 801F6D04 001F3C64 90 1E 03 9C */ stw r0, 0x39c(r30) +/* 801F6D08 001F3C68 4B FF D3 ED */ bl UpdatePatternDestPos__10CPatternedFR13CStateManager +/* 801F6D0C 001F3C6C 88 1E 03 28 */ lbz r0, 0x328(r30) +/* 801F6D10 001F3C70 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 801F6D14 001F3C74 40 82 00 54 */ bne lbl_801F6D68 +/* 801F6D18 001F3C78 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 801F6D1C 001F3C7C 7F C3 F3 78 */ mr r3, r30 +/* 801F6D20 001F3C80 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 801F6D24 001F3C84 7F E4 FB 78 */ mr r4, r31 +/* 801F6D28 001F3C88 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801F6D2C 001F3C8C 38 A1 00 18 */ addi r5, r1, 0x18 +/* 801F6D30 001F3C90 38 DE 02 E0 */ addi r6, r30, 0x2e0 +/* 801F6D34 001F3C94 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801F6D38 001F3C98 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 801F6D3C 001F3C9C D0 41 00 20 */ stfs f2, 0x20(r1) +/* 801F6D40 001F3CA0 4B FF E0 91 */ bl IsPatternObstructed__10CPatternedCFR13CStateManagerRC9CVector3fRC9CVector3f +/* 801F6D44 001F3CA4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801F6D48 001F3CA8 41 82 00 20 */ beq lbl_801F6D68 +/* 801F6D4C 001F3CAC 80 1E 03 90 */ lwz r0, 0x390(r30) +/* 801F6D50 001F3CB0 38 60 00 01 */ li r3, 1 +/* 801F6D54 001F3CB4 90 1E 03 9C */ stw r0, 0x39c(r30) +/* 801F6D58 001F3CB8 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 801F6D5C 001F3CBC 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 801F6D60 001F3CC0 98 1E 04 00 */ stb r0, 0x400(r30) +/* 801F6D64 001F3CC4 48 00 00 A4 */ b lbl_801F6E08 +lbl_801F6D68: +/* 801F6D68 001F3CC8 80 7E 03 9C */ lwz r3, 0x39c(r30) +/* 801F6D6C 001F3CCC 80 1E 03 90 */ lwz r0, 0x390(r30) +/* 801F6D70 001F3CD0 7C 03 00 00 */ cmpw r3, r0 +/* 801F6D74 001F3CD4 40 80 00 94 */ bge lbl_801F6E08 +/* 801F6D78 001F3CD8 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 801F6D7C 001F3CDC 38 60 00 00 */ li r3, 0 +/* 801F6D80 001F3CE0 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 801F6D84 001F3CE4 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801F6D88 001F3CE8 D0 1E 02 EC */ stfs f0, 0x2ec(r30) +/* 801F6D8C 001F3CEC D0 3E 02 F0 */ stfs f1, 0x2f0(r30) +/* 801F6D90 001F3CF0 D0 5E 02 F4 */ stfs f2, 0x2f4(r30) +/* 801F6D94 001F3CF4 88 1E 03 28 */ lbz r0, 0x328(r30) +/* 801F6D98 001F3CF8 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801F6D9C 001F3CFC 98 1E 03 28 */ stb r0, 0x328(r30) +/* 801F6DA0 001F3D00 80 1E 03 9C */ lwz r0, 0x39c(r30) +/* 801F6DA4 001F3D04 80 9E 03 98 */ lwz r4, 0x398(r30) +/* 801F6DA8 001F3D08 1C 60 00 24 */ mulli r3, r0, 0x24 +/* 801F6DAC 001F3D0C 38 03 00 18 */ addi r0, r3, 0x18 +/* 801F6DB0 001F3D10 7C 04 04 2E */ lfsx f0, r4, r0 +/* 801F6DB4 001F3D14 D0 1E 03 B0 */ stfs f0, 0x3b0(r30) +/* 801F6DB8 001F3D18 80 1E 03 9C */ lwz r0, 0x39c(r30) +/* 801F6DBC 001F3D1C 80 9E 03 98 */ lwz r4, 0x398(r30) +/* 801F6DC0 001F3D20 1C 60 00 24 */ mulli r3, r0, 0x24 +/* 801F6DC4 001F3D24 38 03 00 1C */ addi r0, r3, 0x1c +/* 801F6DC8 001F3D28 7C 04 00 AE */ lbzx r0, r4, r0 +/* 801F6DCC 001F3D2C 90 1E 03 80 */ stw r0, 0x380(r30) +/* 801F6DD0 001F3D30 80 1E 03 9C */ lwz r0, 0x39c(r30) +/* 801F6DD4 001F3D34 80 9E 03 98 */ lwz r4, 0x398(r30) +/* 801F6DD8 001F3D38 1C 60 00 24 */ mulli r3, r0, 0x24 +/* 801F6DDC 001F3D3C 38 03 00 1D */ addi r0, r3, 0x1d +/* 801F6DE0 001F3D40 7C 04 00 AE */ lbzx r0, r4, r0 +/* 801F6DE4 001F3D44 90 1E 03 0C */ stw r0, 0x30c(r30) +/* 801F6DE8 001F3D48 80 1E 03 9C */ lwz r0, 0x39c(r30) +/* 801F6DEC 001F3D4C 80 9E 03 98 */ lwz r4, 0x398(r30) +/* 801F6DF0 001F3D50 1C 60 00 24 */ mulli r3, r0, 0x24 +/* 801F6DF4 001F3D54 38 03 00 1E */ addi r0, r3, 0x1e +/* 801F6DF8 001F3D58 7C 04 02 2E */ lhzx r0, r4, r0 +/* 801F6DFC 001F3D5C 90 1E 03 84 */ stw r0, 0x384(r30) +/* 801F6E00 001F3D60 48 00 00 08 */ b lbl_801F6E08 +lbl_801F6E04: +/* 801F6E04 001F3D64 4B FF D2 F1 */ bl UpdatePatternDestPos__10CPatternedFR13CStateManager +lbl_801F6E08: +/* 801F6E08 001F3D68 7F C3 F3 78 */ mr r3, r30 +/* 801F6E0C 001F3D6C 7F E4 FB 78 */ mr r4, r31 +/* 801F6E10 001F3D70 4B FF E8 41 */ bl ApproachDest__10CPatternedFR13CStateManager +/* 801F6E14 001F3D74 48 00 00 48 */ b lbl_801F6E5C +lbl_801F6E18: +/* 801F6E18 001F3D78 80 1E 03 90 */ lwz r0, 0x390(r30) +/* 801F6E1C 001F3D7C 80 7E 03 98 */ lwz r3, 0x398(r30) +/* 801F6E20 001F3D80 1C 00 00 24 */ mulli r0, r0, 0x24 +/* 801F6E24 001F3D84 90 61 00 0C */ stw r3, 0xc(r1) +/* 801F6E28 001F3D88 7C 03 02 14 */ add r0, r3, r0 +/* 801F6E2C 001F3D8C 90 61 00 08 */ stw r3, 8(r1) +/* 801F6E30 001F3D90 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F6E34 001F3D94 90 01 00 10 */ stw r0, 0x10(r1) +/* 801F6E38 001F3D98 48 00 00 08 */ b lbl_801F6E40 +lbl_801F6E3C: +/* 801F6E3C 001F3D9C 38 63 00 24 */ addi r3, r3, 0x24 +lbl_801F6E40: +/* 801F6E40 001F3DA0 7C 03 00 40 */ cmplw r3, r0 +/* 801F6E44 001F3DA4 40 82 FF F8 */ bne lbl_801F6E3C +/* 801F6E48 001F3DA8 38 60 00 00 */ li r3, 0 +/* 801F6E4C 001F3DAC 90 7E 03 90 */ stw r3, 0x390(r30) +/* 801F6E50 001F3DB0 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 801F6E54 001F3DB4 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 801F6E58 001F3DB8 98 1E 04 00 */ stb r0, 0x400(r30) +lbl_801F6E5C: +/* 801F6E5C 001F3DBC 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801F6E60 001F3DC0 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801F6E64 001F3DC4 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801F6E68 001F3DC8 7C 08 03 A6 */ mtlr r0 +/* 801F6E6C 001F3DCC 38 21 00 40 */ addi r1, r1, 0x40 +/* 801F6E70 001F3DD0 4E 80 00 20 */ blr + +.global Patrol__10CPatternedFR13CStateManager9EStateMsgf +Patrol__10CPatternedFR13CStateManager9EStateMsgf: +/* 801F6E74 001F3DD4 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801F6E78 001F3DD8 7C 08 02 A6 */ mflr r0 +/* 801F6E7C 001F3DDC 2C 05 00 01 */ cmpwi r5, 1 +/* 801F6E80 001F3DE0 90 01 00 34 */ stw r0, 0x34(r1) +/* 801F6E84 001F3DE4 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801F6E88 001F3DE8 7C 9F 23 78 */ mr r31, r4 +/* 801F6E8C 001F3DEC 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801F6E90 001F3DF0 7C 7E 1B 78 */ mr r30, r3 +/* 801F6E94 001F3DF4 41 82 00 EC */ beq lbl_801F6F80 +/* 801F6E98 001F3DF8 40 80 00 10 */ bge lbl_801F6EA8 +/* 801F6E9C 001F3DFC 2C 05 00 00 */ cmpwi r5, 0 +/* 801F6EA0 001F3E00 40 80 00 14 */ bge lbl_801F6EB4 +/* 801F6EA4 001F3E04 48 00 01 E8 */ b lbl_801F708C +lbl_801F6EA8: +/* 801F6EA8 001F3E08 2C 05 00 03 */ cmpwi r5, 3 +/* 801F6EAC 001F3E0C 40 80 01 E0 */ bge lbl_801F708C +/* 801F6EB0 001F3E10 48 00 01 CC */ b lbl_801F707C +lbl_801F6EB4: +/* 801F6EB4 001F3E14 A0 7E 03 AC */ lhz r3, 0x3ac(r30) +/* 801F6EB8 001F3E18 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801F6EBC 001F3E1C 7C 03 00 40 */ cmplw r3, r0 +/* 801F6EC0 001F3E20 40 82 00 84 */ bne lbl_801F6F44 +/* 801F6EC4 001F3E24 7F C4 F3 78 */ mr r4, r30 +/* 801F6EC8 001F3E28 7F E5 FB 78 */ mr r5, r31 +/* 801F6ECC 001F3E2C 38 61 00 10 */ addi r3, r1, 0x10 +/* 801F6ED0 001F3E30 38 C0 00 0D */ li r6, 0xd +/* 801F6ED4 001F3E34 38 E0 00 06 */ li r7, 6 +/* 801F6ED8 001F3E38 4B FF E0 C1 */ bl GetWaypointForState__10CPatternedFR13CStateManager18EScriptObjectState +/* 801F6EDC 001F3E3C A0 61 00 10 */ lhz r3, 0x10(r1) +/* 801F6EE0 001F3E40 38 00 00 00 */ li r0, 0 +/* 801F6EE4 001F3E44 C0 02 AF 34 */ lfs f0, lbl_805ACC54@sda21(r2) +/* 801F6EE8 001F3E48 B0 7E 02 DC */ sth r3, 0x2dc(r30) +/* 801F6EEC 001F3E4C 90 1E 03 0C */ stw r0, 0x30c(r30) +/* 801F6EF0 001F3E50 D0 1E 03 B0 */ stfs f0, 0x3b0(r30) +/* 801F6EF4 001F3E54 A0 7E 02 DC */ lhz r3, 0x2dc(r30) +/* 801F6EF8 001F3E58 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801F6EFC 001F3E5C 7C 03 00 40 */ cmplw r3, r0 +/* 801F6F00 001F3E60 41 82 00 48 */ beq lbl_801F6F48 +/* 801F6F04 001F3E64 A0 1E 02 DC */ lhz r0, 0x2dc(r30) +/* 801F6F08 001F3E68 7F E3 FB 78 */ mr r3, r31 +/* 801F6F0C 001F3E6C 38 81 00 0C */ addi r4, r1, 0xc +/* 801F6F10 001F3E70 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801F6F14 001F3E74 4B E5 56 91 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801F6F18 001F3E78 7C 64 1B 78 */ mr r4, r3 +/* 801F6F1C 001F3E7C 38 61 00 1C */ addi r3, r1, 0x1c +/* 801F6F20 001F3E80 4B EA F6 2D */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 801F6F24 001F3E84 80 63 00 04 */ lwz r3, 4(r3) +/* 801F6F28 001F3E88 28 03 00 00 */ cmplwi r3, 0 +/* 801F6F2C 001F3E8C 41 82 00 1C */ beq lbl_801F6F48 +/* 801F6F30 001F3E90 88 03 00 F8 */ lbz r0, 0xf8(r3) +/* 801F6F34 001F3E94 90 1E 03 0C */ stw r0, 0x30c(r30) +/* 801F6F38 001F3E98 C0 03 00 E8 */ lfs f0, 0xe8(r3) +/* 801F6F3C 001F3E9C D0 1E 03 B0 */ stfs f0, 0x3b0(r30) +/* 801F6F40 001F3EA0 48 00 00 08 */ b lbl_801F6F48 +lbl_801F6F44: +/* 801F6F44 001F3EA4 B0 7E 02 DC */ sth r3, 0x2dc(r30) +lbl_801F6F48: +/* 801F6F48 001F3EA8 C0 7E 00 60 */ lfs f3, 0x60(r30) +/* 801F6F4C 001F3EAC 38 60 00 00 */ li r3, 0 +/* 801F6F50 001F3EB0 C0 5E 00 50 */ lfs f2, 0x50(r30) +/* 801F6F54 001F3EB4 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 801F6F58 001F3EB8 C0 02 AF 20 */ lfs f0, lbl_805ACC40@sda21(r2) +/* 801F6F5C 001F3EBC D0 3E 02 EC */ stfs f1, 0x2ec(r30) +/* 801F6F60 001F3EC0 D0 5E 02 F0 */ stfs f2, 0x2f0(r30) +/* 801F6F64 001F3EC4 D0 7E 02 F4 */ stfs f3, 0x2f4(r30) +/* 801F6F68 001F3EC8 88 1E 03 28 */ lbz r0, 0x328(r30) +/* 801F6F6C 001F3ECC 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801F6F70 001F3ED0 98 1E 03 28 */ stb r0, 0x328(r30) +/* 801F6F74 001F3ED4 90 7E 02 D8 */ stw r3, 0x2d8(r30) +/* 801F6F78 001F3ED8 D0 1E 02 F8 */ stfs f0, 0x2f8(r30) +/* 801F6F7C 001F3EDC 48 00 01 10 */ b lbl_801F708C +lbl_801F6F80: +/* 801F6F80 001F3EE0 80 1E 02 D8 */ lwz r0, 0x2d8(r30) +/* 801F6F84 001F3EE4 2C 00 00 01 */ cmpwi r0, 1 +/* 801F6F88 001F3EE8 41 82 00 B8 */ beq lbl_801F7040 +/* 801F6F8C 001F3EEC 40 80 00 10 */ bge lbl_801F6F9C +/* 801F6F90 001F3EF0 2C 00 00 00 */ cmpwi r0, 0 +/* 801F6F94 001F3EF4 40 80 00 14 */ bge lbl_801F6FA8 +/* 801F6F98 001F3EF8 48 00 00 F4 */ b lbl_801F708C +lbl_801F6F9C: +/* 801F6F9C 001F3EFC 2C 00 00 03 */ cmpwi r0, 3 +/* 801F6FA0 001F3F00 40 80 00 EC */ bge lbl_801F708C +/* 801F6FA4 001F3F04 48 00 00 BC */ b lbl_801F7060 +lbl_801F6FA8: +/* 801F6FA8 001F3F08 88 1E 03 28 */ lbz r0, 0x328(r30) +/* 801F6FAC 001F3F0C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801F6FB0 001F3F10 41 82 00 5C */ beq lbl_801F700C +/* 801F6FB4 001F3F14 A0 7E 02 DC */ lhz r3, 0x2dc(r30) +/* 801F6FB8 001F3F18 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801F6FBC 001F3F1C 7C 03 00 40 */ cmplw r3, r0 +/* 801F6FC0 001F3F20 41 82 00 4C */ beq lbl_801F700C +/* 801F6FC4 001F3F24 A0 1E 02 DC */ lhz r0, 0x2dc(r30) +/* 801F6FC8 001F3F28 7F E3 FB 78 */ mr r3, r31 +/* 801F6FCC 001F3F2C 38 81 00 08 */ addi r4, r1, 8 +/* 801F6FD0 001F3F30 B0 01 00 08 */ sth r0, 8(r1) +/* 801F6FD4 001F3F34 4B E5 55 D1 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801F6FD8 001F3F38 7C 64 1B 78 */ mr r4, r3 +/* 801F6FDC 001F3F3C 38 61 00 14 */ addi r3, r1, 0x14 +/* 801F6FE0 001F3F40 4B EA F5 6D */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 801F6FE4 001F3F44 80 63 00 04 */ lwz r3, 4(r3) +/* 801F6FE8 001F3F48 28 03 00 00 */ cmplwi r3, 0 +/* 801F6FEC 001F3F4C 41 82 00 20 */ beq lbl_801F700C +/* 801F6FF0 001F3F50 C0 23 00 F0 */ lfs f1, 0xf0(r3) +/* 801F6FF4 001F3F54 C0 02 AF 20 */ lfs f0, lbl_805ACC40@sda21(r2) +/* 801F6FF8 001F3F58 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F6FFC 001F3F5C 40 81 00 10 */ ble lbl_801F700C +/* 801F7000 001F3F60 D0 3E 02 F8 */ stfs f1, 0x2f8(r30) +/* 801F7004 001F3F64 38 00 00 01 */ li r0, 1 +/* 801F7008 001F3F68 90 1E 02 D8 */ stw r0, 0x2d8(r30) +lbl_801F700C: +/* 801F700C 001F3F6C A0 7E 02 DC */ lhz r3, 0x2dc(r30) +/* 801F7010 001F3F70 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801F7014 001F3F74 7C 03 00 40 */ cmplw r3, r0 +/* 801F7018 001F3F78 40 82 00 0C */ bne lbl_801F7024 +/* 801F701C 001F3F7C 38 00 00 02 */ li r0, 2 +/* 801F7020 001F3F80 90 1E 02 D8 */ stw r0, 0x2d8(r30) +lbl_801F7024: +/* 801F7024 001F3F84 7F C3 F3 78 */ mr r3, r30 +/* 801F7028 001F3F88 7F E4 FB 78 */ mr r4, r31 +/* 801F702C 001F3F8C 4B FF E2 65 */ bl UpdateDest__10CPatternedFR13CStateManager +/* 801F7030 001F3F90 7F C3 F3 78 */ mr r3, r30 +/* 801F7034 001F3F94 7F E4 FB 78 */ mr r4, r31 +/* 801F7038 001F3F98 4B FF E6 19 */ bl ApproachDest__10CPatternedFR13CStateManager +/* 801F703C 001F3F9C 48 00 00 50 */ b lbl_801F708C +lbl_801F7040: +/* 801F7040 001F3FA0 C0 3E 02 F8 */ lfs f1, 0x2f8(r30) +/* 801F7044 001F3FA4 C0 02 AF 20 */ lfs f0, lbl_805ACC40@sda21(r2) +/* 801F7048 001F3FA8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F704C 001F3FAC 4C 40 13 82 */ cror 2, 0, 2 +/* 801F7050 001F3FB0 40 82 00 3C */ bne lbl_801F708C +/* 801F7054 001F3FB4 38 00 00 00 */ li r0, 0 +/* 801F7058 001F3FB8 90 1E 02 D8 */ stw r0, 0x2d8(r30) +/* 801F705C 001F3FBC 48 00 00 30 */ b lbl_801F708C +lbl_801F7060: +/* 801F7060 001F3FC0 A0 7E 02 DC */ lhz r3, 0x2dc(r30) +/* 801F7064 001F3FC4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801F7068 001F3FC8 7C 03 00 40 */ cmplw r3, r0 +/* 801F706C 001F3FCC 41 82 00 20 */ beq lbl_801F708C +/* 801F7070 001F3FD0 38 00 00 00 */ li r0, 0 +/* 801F7074 001F3FD4 90 1E 02 D8 */ stw r0, 0x2d8(r30) +/* 801F7078 001F3FD8 48 00 00 14 */ b lbl_801F708C +lbl_801F707C: +/* 801F707C 001F3FDC A0 7E 02 DC */ lhz r3, 0x2dc(r30) +/* 801F7080 001F3FE0 38 00 FF FF */ li r0, -1 +/* 801F7084 001F3FE4 B0 7E 03 AC */ sth r3, 0x3ac(r30) +/* 801F7088 001F3FE8 90 1E 02 D8 */ stw r0, 0x2d8(r30) +lbl_801F708C: +/* 801F708C 001F3FEC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801F7090 001F3FF0 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801F7094 001F3FF4 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801F7098 001F3FF8 7C 08 03 A6 */ mtlr r0 +/* 801F709C 001F3FFC 38 21 00 30 */ addi r1, r1, 0x30 +/* 801F70A0 001F4000 4E 80 00 20 */ blr + +.global Start__10CPatternedFR13CStateManager9EStateMsgf +Start__10CPatternedFR13CStateManager9EStateMsgf: +/* 801F70A4 001F4004 4E 80 00 20 */ blr + +.global "reserve__Q24rstl63vectorFi" +"reserve__Q24rstl63vectorFi": +/* 801F70A8 001F4008 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801F70AC 001F400C 7C 08 02 A6 */ mflr r0 +/* 801F70B0 001F4010 90 01 00 34 */ stw r0, 0x34(r1) +/* 801F70B4 001F4014 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801F70B8 001F4018 7C 9F 23 78 */ mr r31, r4 +/* 801F70BC 001F401C 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801F70C0 001F4020 7C 7E 1B 78 */ mr r30, r3 +/* 801F70C4 001F4024 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801F70C8 001F4028 80 03 00 08 */ lwz r0, 8(r3) +/* 801F70CC 001F402C 7C 1F 00 00 */ cmpw r31, r0 +/* 801F70D0 001F4030 40 81 00 FC */ ble lbl_801F71CC +/* 801F70D4 001F4034 1C 7F 00 24 */ mulli r3, r31, 0x24 +/* 801F70D8 001F4038 2C 03 00 00 */ cmpwi r3, 0 +/* 801F70DC 001F403C 40 82 00 0C */ bne lbl_801F70E8 +/* 801F70E0 001F4040 3B A0 00 00 */ li r29, 0 +/* 801F70E4 001F4044 48 00 00 18 */ b lbl_801F70FC +lbl_801F70E8: +/* 801F70E8 001F4048 3C 80 80 3D */ lis r4, lbl_803D2070@ha +/* 801F70EC 001F404C 38 A0 00 00 */ li r5, 0 +/* 801F70F0 001F4050 38 84 20 70 */ addi r4, r4, lbl_803D2070@l +/* 801F70F4 001F4054 48 11 E7 25 */ bl __nwa__FUlPCcPCc +/* 801F70F8 001F4058 7C 7D 1B 78 */ mr r29, r3 +lbl_801F70FC: +/* 801F70FC 001F405C 80 1E 00 04 */ lwz r0, 4(r30) +/* 801F7100 001F4060 7F A4 EB 78 */ mr r4, r29 +/* 801F7104 001F4064 80 BE 00 0C */ lwz r5, 0xc(r30) +/* 801F7108 001F4068 1C 00 00 24 */ mulli r0, r0, 0x24 +/* 801F710C 001F406C 90 A1 00 10 */ stw r5, 0x10(r1) +/* 801F7110 001F4070 7C 65 02 14 */ add r3, r5, r0 +/* 801F7114 001F4074 90 A1 00 14 */ stw r5, 0x14(r1) +/* 801F7118 001F4078 90 61 00 08 */ stw r3, 8(r1) +/* 801F711C 001F407C 90 61 00 0C */ stw r3, 0xc(r1) +/* 801F7120 001F4080 48 00 00 6C */ b lbl_801F718C +lbl_801F7124: +/* 801F7124 001F4084 28 04 00 00 */ cmplwi r4, 0 +/* 801F7128 001F4088 41 82 00 5C */ beq lbl_801F7184 +/* 801F712C 001F408C C0 05 00 00 */ lfs f0, 0(r5) +/* 801F7130 001F4090 D0 04 00 00 */ stfs f0, 0(r4) +/* 801F7134 001F4094 C0 05 00 04 */ lfs f0, 4(r5) +/* 801F7138 001F4098 D0 04 00 04 */ stfs f0, 4(r4) +/* 801F713C 001F409C C0 05 00 08 */ lfs f0, 8(r5) +/* 801F7140 001F40A0 D0 04 00 08 */ stfs f0, 8(r4) +/* 801F7144 001F40A4 C0 05 00 0C */ lfs f0, 0xc(r5) +/* 801F7148 001F40A8 D0 04 00 0C */ stfs f0, 0xc(r4) +/* 801F714C 001F40AC C0 05 00 10 */ lfs f0, 0x10(r5) +/* 801F7150 001F40B0 D0 04 00 10 */ stfs f0, 0x10(r4) +/* 801F7154 001F40B4 C0 05 00 14 */ lfs f0, 0x14(r5) +/* 801F7158 001F40B8 D0 04 00 14 */ stfs f0, 0x14(r4) +/* 801F715C 001F40BC C0 05 00 18 */ lfs f0, 0x18(r5) +/* 801F7160 001F40C0 D0 04 00 18 */ stfs f0, 0x18(r4) +/* 801F7164 001F40C4 88 05 00 1C */ lbz r0, 0x1c(r5) +/* 801F7168 001F40C8 98 04 00 1C */ stb r0, 0x1c(r4) +/* 801F716C 001F40CC 88 05 00 1D */ lbz r0, 0x1d(r5) +/* 801F7170 001F40D0 98 04 00 1D */ stb r0, 0x1d(r4) +/* 801F7174 001F40D4 A0 05 00 1E */ lhz r0, 0x1e(r5) +/* 801F7178 001F40D8 B0 04 00 1E */ sth r0, 0x1e(r4) +/* 801F717C 001F40DC 80 05 00 20 */ lwz r0, 0x20(r5) +/* 801F7180 001F40E0 90 04 00 20 */ stw r0, 0x20(r4) +lbl_801F7184: +/* 801F7184 001F40E4 38 84 00 24 */ addi r4, r4, 0x24 +/* 801F7188 001F40E8 38 A5 00 24 */ addi r5, r5, 0x24 +lbl_801F718C: +/* 801F718C 001F40EC 7C 05 18 40 */ cmplw r5, r3 +/* 801F7190 001F40F0 40 82 FF 94 */ bne lbl_801F7124 +/* 801F7194 001F40F4 80 1E 00 04 */ lwz r0, 4(r30) +/* 801F7198 001F40F8 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 801F719C 001F40FC 1C 00 00 24 */ mulli r0, r0, 0x24 +/* 801F71A0 001F4100 7C 64 1B 78 */ mr r4, r3 +/* 801F71A4 001F4104 7C 03 02 14 */ add r0, r3, r0 +/* 801F71A8 001F4108 48 00 00 08 */ b lbl_801F71B0 +lbl_801F71AC: +/* 801F71AC 001F410C 38 84 00 24 */ addi r4, r4, 0x24 +lbl_801F71B0: +/* 801F71B0 001F4110 7C 04 00 40 */ cmplw r4, r0 +/* 801F71B4 001F4114 40 82 FF F8 */ bne lbl_801F71AC +/* 801F71B8 001F4118 28 03 00 00 */ cmplwi r3, 0 +/* 801F71BC 001F411C 41 82 00 08 */ beq lbl_801F71C4 +/* 801F71C0 001F4120 48 11 E7 71 */ bl Free__7CMemoryFPCv +lbl_801F71C4: +/* 801F71C4 001F4124 93 BE 00 0C */ stw r29, 0xc(r30) +/* 801F71C8 001F4128 93 FE 00 08 */ stw r31, 8(r30) +lbl_801F71CC: +/* 801F71CC 001F412C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801F71D0 001F4130 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801F71D4 001F4134 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801F71D8 001F4138 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801F71DC 001F413C 7C 08 03 A6 */ mtlr r0 +/* 801F71E0 001F4140 38 21 00 30 */ addi r1, r1, 0x30 +/* 801F71E4 001F4144 4E 80 00 20 */ blr + +.global __dt__13CFlyingPirateFv +__dt__13CFlyingPirateFv: +/* 801F71E8 001F4148 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801F71EC 001F414C 7C 08 02 A6 */ mflr r0 +/* 801F71F0 001F4150 90 01 00 24 */ stw r0, 0x24(r1) +/* 801F71F4 001F4154 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801F71F8 001F4158 7C 9F 23 78 */ mr r31, r4 +/* 801F71FC 001F415C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801F7200 001F4160 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801F7204 001F4164 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801F7208 001F4168 93 81 00 10 */ stw r28, 0x10(r1) +/* 801F720C 001F416C 41 82 02 34 */ beq lbl_801F7440 +/* 801F7210 001F4170 3C 60 80 3E */ lis r3, lbl_803E685C@ha +/* 801F7214 001F4174 34 1E 08 9C */ addic. r0, r30, 0x89c +/* 801F7218 001F4178 38 03 68 5C */ addi r0, r3, lbl_803E685C@l +/* 801F721C 001F417C 90 1E 00 00 */ stw r0, 0(r30) +/* 801F7220 001F4180 41 82 00 10 */ beq lbl_801F7230 +/* 801F7224 001F4184 80 7E 08 9C */ lwz r3, 0x89c(r30) +/* 801F7228 001F4188 38 80 00 01 */ li r4, 1 +/* 801F722C 001F418C 48 00 8C DD */ bl __dt__20CFlyingPirateRagDollFv +lbl_801F7230: +/* 801F7230 001F4190 34 1E 08 64 */ addic. r0, r30, 0x864 +/* 801F7234 001F4194 41 82 00 58 */ beq lbl_801F728C +/* 801F7238 001F4198 80 BE 08 64 */ lwz r5, 0x864(r30) +/* 801F723C 001F419C 38 60 00 00 */ li r3, 0 +/* 801F7240 001F41A0 2C 05 00 00 */ cmpwi r5, 0 +/* 801F7244 001F41A4 40 81 00 40 */ ble lbl_801F7284 +/* 801F7248 001F41A8 2C 05 00 08 */ cmpwi r5, 8 +/* 801F724C 001F41AC 38 85 FF F8 */ addi r4, r5, -8 +/* 801F7250 001F41B0 40 81 00 20 */ ble lbl_801F7270 +/* 801F7254 001F41B4 38 04 00 07 */ addi r0, r4, 7 +/* 801F7258 001F41B8 54 00 E8 FE */ srwi r0, r0, 3 +/* 801F725C 001F41BC 7C 09 03 A6 */ mtctr r0 +/* 801F7260 001F41C0 2C 04 00 00 */ cmpwi r4, 0 +/* 801F7264 001F41C4 40 81 00 0C */ ble lbl_801F7270 +lbl_801F7268: +/* 801F7268 001F41C8 38 63 00 08 */ addi r3, r3, 8 +/* 801F726C 001F41CC 42 00 FF FC */ bdnz lbl_801F7268 +lbl_801F7270: +/* 801F7270 001F41D0 7C 03 28 50 */ subf r0, r3, r5 +/* 801F7274 001F41D4 7C 09 03 A6 */ mtctr r0 +/* 801F7278 001F41D8 7C 03 28 00 */ cmpw r3, r5 +/* 801F727C 001F41DC 40 80 00 08 */ bge lbl_801F7284 +lbl_801F7280: +/* 801F7280 001F41E0 42 00 00 00 */ bdnz lbl_801F7280 +lbl_801F7284: +/* 801F7284 001F41E4 38 00 00 00 */ li r0, 0 +/* 801F7288 001F41E8 90 1E 08 64 */ stw r0, 0x864(r30) +lbl_801F728C: +/* 801F728C 001F41EC 34 1E 07 EC */ addic. r0, r30, 0x7ec +/* 801F7290 001F41F0 41 82 00 60 */ beq lbl_801F72F0 +/* 801F7294 001F41F4 34 1E 08 08 */ addic. r0, r30, 0x808 +/* 801F7298 001F41F8 41 82 00 58 */ beq lbl_801F72F0 +/* 801F729C 001F41FC 80 BE 08 08 */ lwz r5, 0x808(r30) +/* 801F72A0 001F4200 38 60 00 00 */ li r3, 0 +/* 801F72A4 001F4204 2C 05 00 00 */ cmpwi r5, 0 +/* 801F72A8 001F4208 40 81 00 40 */ ble lbl_801F72E8 +/* 801F72AC 001F420C 2C 05 00 08 */ cmpwi r5, 8 +/* 801F72B0 001F4210 38 85 FF F8 */ addi r4, r5, -8 +/* 801F72B4 001F4214 40 81 00 20 */ ble lbl_801F72D4 +/* 801F72B8 001F4218 38 04 00 07 */ addi r0, r4, 7 +/* 801F72BC 001F421C 54 00 E8 FE */ srwi r0, r0, 3 +/* 801F72C0 001F4220 7C 09 03 A6 */ mtctr r0 +/* 801F72C4 001F4224 2C 04 00 00 */ cmpwi r4, 0 +/* 801F72C8 001F4228 40 81 00 0C */ ble lbl_801F72D4 +lbl_801F72CC: +/* 801F72CC 001F422C 38 63 00 08 */ addi r3, r3, 8 +/* 801F72D0 001F4230 42 00 FF FC */ bdnz lbl_801F72CC +lbl_801F72D4: +/* 801F72D4 001F4234 7C 03 28 50 */ subf r0, r3, r5 +/* 801F72D8 001F4238 7C 09 03 A6 */ mtctr r0 +/* 801F72DC 001F423C 7C 03 28 00 */ cmpw r3, r5 +/* 801F72E0 001F4240 40 80 00 08 */ bge lbl_801F72E8 +lbl_801F72E4: +/* 801F72E4 001F4244 42 00 00 00 */ bdnz lbl_801F72E4 +lbl_801F72E8: +/* 801F72E8 001F4248 38 00 00 00 */ li r0, 0 +/* 801F72EC 001F424C 90 1E 08 08 */ stw r0, 0x808(r30) +lbl_801F72F0: +/* 801F72F0 001F4250 34 1E 07 A0 */ addic. r0, r30, 0x7a0 +/* 801F72F4 001F4254 41 82 00 14 */ beq lbl_801F7308 +/* 801F72F8 001F4258 34 1E 07 C4 */ addic. r0, r30, 0x7c4 +/* 801F72FC 001F425C 41 82 00 0C */ beq lbl_801F7308 +/* 801F7300 001F4260 38 00 00 00 */ li r0, 0 +/* 801F7304 001F4264 98 1E 07 D0 */ stb r0, 0x7d0(r30) +lbl_801F7308: +/* 801F7308 001F4268 34 1E 06 A8 */ addic. r0, r30, 0x6a8 +/* 801F730C 001F426C 41 82 00 60 */ beq lbl_801F736C +/* 801F7310 001F4270 34 1E 06 AC */ addic. r0, r30, 0x6ac +/* 801F7314 001F4274 41 82 00 58 */ beq lbl_801F736C +/* 801F7318 001F4278 80 BE 06 AC */ lwz r5, 0x6ac(r30) +/* 801F731C 001F427C 38 60 00 00 */ li r3, 0 +/* 801F7320 001F4280 2C 05 00 00 */ cmpwi r5, 0 +/* 801F7324 001F4284 40 81 00 40 */ ble lbl_801F7364 +/* 801F7328 001F4288 2C 05 00 08 */ cmpwi r5, 8 +/* 801F732C 001F428C 38 85 FF F8 */ addi r4, r5, -8 +/* 801F7330 001F4290 40 81 00 20 */ ble lbl_801F7350 +/* 801F7334 001F4294 38 04 00 07 */ addi r0, r4, 7 +/* 801F7338 001F4298 54 00 E8 FE */ srwi r0, r0, 3 +/* 801F733C 001F429C 7C 09 03 A6 */ mtctr r0 +/* 801F7340 001F42A0 2C 04 00 00 */ cmpwi r4, 0 +/* 801F7344 001F42A4 40 81 00 0C */ ble lbl_801F7350 +lbl_801F7348: +/* 801F7348 001F42A8 38 63 00 08 */ addi r3, r3, 8 +/* 801F734C 001F42AC 42 00 FF FC */ bdnz lbl_801F7348 +lbl_801F7350: +/* 801F7350 001F42B0 7C 03 28 50 */ subf r0, r3, r5 +/* 801F7354 001F42B4 7C 09 03 A6 */ mtctr r0 +/* 801F7358 001F42B8 7C 03 28 00 */ cmpw r3, r5 +/* 801F735C 001F42BC 40 80 00 08 */ bge lbl_801F7364 +lbl_801F7360: +/* 801F7360 001F42C0 42 00 00 00 */ bdnz lbl_801F7360 +lbl_801F7364: +/* 801F7364 001F42C4 38 00 00 00 */ li r0, 0 +/* 801F7368 001F42C8 90 1E 06 AC */ stw r0, 0x6ac(r30) +lbl_801F736C: +/* 801F736C 001F42CC 34 1E 06 84 */ addic. r0, r30, 0x684 +/* 801F7370 001F42D0 41 82 00 60 */ beq lbl_801F73D0 +/* 801F7374 001F42D4 3B 9E 06 88 */ addi r28, r30, 0x688 +/* 801F7378 001F42D8 3B A0 00 00 */ li r29, 0 +/* 801F737C 001F42DC 48 00 00 40 */ b lbl_801F73BC +lbl_801F7380: +/* 801F7380 001F42E0 28 1C 00 00 */ cmplwi r28, 0 +/* 801F7384 001F42E4 41 82 00 30 */ beq lbl_801F73B4 +/* 801F7388 001F42E8 88 1C 00 00 */ lbz r0, 0(r28) +/* 801F738C 001F42EC 28 00 00 00 */ cmplwi r0, 0 +/* 801F7390 001F42F0 41 82 00 24 */ beq lbl_801F73B4 +/* 801F7394 001F42F4 80 7C 00 04 */ lwz r3, 4(r28) +/* 801F7398 001F42F8 28 03 00 00 */ cmplwi r3, 0 +/* 801F739C 001F42FC 41 82 00 18 */ beq lbl_801F73B4 +/* 801F73A0 001F4300 81 83 00 00 */ lwz r12, 0(r3) +/* 801F73A4 001F4304 38 80 00 01 */ li r4, 1 +/* 801F73A8 001F4308 81 8C 00 08 */ lwz r12, 8(r12) +/* 801F73AC 001F430C 7D 89 03 A6 */ mtctr r12 +/* 801F73B0 001F4310 4E 80 04 21 */ bctrl +lbl_801F73B4: +/* 801F73B4 001F4314 3B 9C 00 08 */ addi r28, r28, 8 +/* 801F73B8 001F4318 3B BD 00 01 */ addi r29, r29, 1 +lbl_801F73BC: +/* 801F73BC 001F431C 80 1E 06 84 */ lwz r0, 0x684(r30) +/* 801F73C0 001F4320 7C 1D 00 00 */ cmpw r29, r0 +/* 801F73C4 001F4324 41 80 FF BC */ blt lbl_801F7380 +/* 801F73C8 001F4328 38 00 00 00 */ li r0, 0 +/* 801F73CC 001F432C 90 1E 06 84 */ stw r0, 0x684(r30) +lbl_801F73D0: +/* 801F73D0 001F4330 34 1E 06 5C */ addic. r0, r30, 0x65c +/* 801F73D4 001F4334 41 82 00 44 */ beq lbl_801F7418 +/* 801F73D8 001F4338 3B 9E 06 60 */ addi r28, r30, 0x660 +/* 801F73DC 001F433C 3B A0 00 00 */ li r29, 0 +/* 801F73E0 001F4340 48 00 00 24 */ b lbl_801F7404 +lbl_801F73E4: +/* 801F73E4 001F4344 28 1C 00 00 */ cmplwi r28, 0 +/* 801F73E8 001F4348 41 82 00 14 */ beq lbl_801F73FC +/* 801F73EC 001F434C 41 82 00 10 */ beq lbl_801F73FC +/* 801F73F0 001F4350 7F 83 E3 78 */ mr r3, r28 +/* 801F73F4 001F4354 38 80 00 00 */ li r4, 0 +/* 801F73F8 001F4358 48 14 9A 49 */ bl __dt__6CTokenFv +lbl_801F73FC: +/* 801F73FC 001F435C 3B 9C 00 0C */ addi r28, r28, 0xc +/* 801F7400 001F4360 3B BD 00 01 */ addi r29, r29, 1 +lbl_801F7404: +/* 801F7404 001F4364 80 1E 06 5C */ lwz r0, 0x65c(r30) +/* 801F7408 001F4368 7C 1D 00 00 */ cmpw r29, r0 +/* 801F740C 001F436C 41 80 FF D8 */ blt lbl_801F73E4 +/* 801F7410 001F4370 38 00 00 00 */ li r0, 0 +/* 801F7414 001F4374 90 1E 06 5C */ stw r0, 0x65c(r30) +lbl_801F7418: +/* 801F7418 001F4378 38 7E 05 68 */ addi r3, r30, 0x568 +/* 801F741C 001F437C 38 80 FF FF */ li r4, -1 +/* 801F7420 001F4380 48 00 00 45 */ bl sub_801f7464 +/* 801F7424 001F4384 7F C3 F3 78 */ mr r3, r30 +/* 801F7428 001F4388 38 80 00 00 */ li r4, 0 +/* 801F742C 001F438C 4B E8 01 45 */ bl __dt__10CPatternedFv +/* 801F7430 001F4390 7F E0 07 35 */ extsh. r0, r31 +/* 801F7434 001F4394 40 81 00 0C */ ble lbl_801F7440 +/* 801F7438 001F4398 7F C3 F3 78 */ mr r3, r30 +/* 801F743C 001F439C 48 11 E4 F5 */ bl Free__7CMemoryFPCv +lbl_801F7440: +/* 801F7440 001F43A0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801F7444 001F43A4 7F C3 F3 78 */ mr r3, r30 +/* 801F7448 001F43A8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801F744C 001F43AC 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801F7450 001F43B0 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801F7454 001F43B4 83 81 00 10 */ lwz r28, 0x10(r1) +/* 801F7458 001F43B8 7C 08 03 A6 */ mtlr r0 +/* 801F745C 001F43BC 38 21 00 20 */ addi r1, r1, 0x20 +/* 801F7460 001F43C0 4E 80 00 20 */ blr + +.global sub_801f7464 +sub_801f7464: +/* 801F7464 001F43C4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801F7468 001F43C8 7C 08 02 A6 */ mflr r0 +/* 801F746C 001F43CC 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F7470 001F43D0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801F7474 001F43D4 7C 9F 23 78 */ mr r31, r4 +/* 801F7478 001F43D8 93 C1 00 08 */ stw r30, 8(r1) +/* 801F747C 001F43DC 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801F7480 001F43E0 41 82 00 9C */ beq lbl_801F751C +/* 801F7484 001F43E4 34 1E 00 90 */ addic. r0, r30, 0x90 +/* 801F7488 001F43E8 41 82 00 18 */ beq lbl_801F74A0 +/* 801F748C 001F43EC 34 1E 00 90 */ addic. r0, r30, 0x90 +/* 801F7490 001F43F0 41 82 00 10 */ beq lbl_801F74A0 +/* 801F7494 001F43F4 38 7E 00 90 */ addi r3, r30, 0x90 +/* 801F7498 001F43F8 38 80 00 00 */ li r4, 0 +/* 801F749C 001F43FC 48 14 99 A5 */ bl __dt__6CTokenFv +lbl_801F74A0: +/* 801F74A0 001F4400 34 1E 00 60 */ addic. r0, r30, 0x60 +/* 801F74A4 001F4404 41 82 00 20 */ beq lbl_801F74C4 +/* 801F74A8 001F4408 34 1E 00 60 */ addic. r0, r30, 0x60 +/* 801F74AC 001F440C 41 82 00 18 */ beq lbl_801F74C4 +/* 801F74B0 001F4410 34 1E 00 60 */ addic. r0, r30, 0x60 +/* 801F74B4 001F4414 41 82 00 10 */ beq lbl_801F74C4 +/* 801F74B8 001F4418 38 7E 00 60 */ addi r3, r30, 0x60 +/* 801F74BC 001F441C 38 80 00 00 */ li r4, 0 +/* 801F74C0 001F4420 48 14 99 81 */ bl __dt__6CTokenFv +lbl_801F74C4: +/* 801F74C4 001F4424 34 1E 00 38 */ addic. r0, r30, 0x38 +/* 801F74C8 001F4428 41 82 00 20 */ beq lbl_801F74E8 +/* 801F74CC 001F442C 34 1E 00 38 */ addic. r0, r30, 0x38 +/* 801F74D0 001F4430 41 82 00 18 */ beq lbl_801F74E8 +/* 801F74D4 001F4434 34 1E 00 38 */ addic. r0, r30, 0x38 +/* 801F74D8 001F4438 41 82 00 10 */ beq lbl_801F74E8 +/* 801F74DC 001F443C 38 7E 00 38 */ addi r3, r30, 0x38 +/* 801F74E0 001F4440 38 80 00 00 */ li r4, 0 +/* 801F74E4 001F4444 48 14 99 5D */ bl __dt__6CTokenFv +lbl_801F74E8: +/* 801F74E8 001F4448 34 1E 00 0C */ addic. r0, r30, 0xc +/* 801F74EC 001F444C 41 82 00 20 */ beq lbl_801F750C +/* 801F74F0 001F4450 34 1E 00 0C */ addic. r0, r30, 0xc +/* 801F74F4 001F4454 41 82 00 18 */ beq lbl_801F750C +/* 801F74F8 001F4458 34 1E 00 0C */ addic. r0, r30, 0xc +/* 801F74FC 001F445C 41 82 00 10 */ beq lbl_801F750C +/* 801F7500 001F4460 38 7E 00 0C */ addi r3, r30, 0xc +/* 801F7504 001F4464 38 80 00 00 */ li r4, 0 +/* 801F7508 001F4468 48 14 99 39 */ bl __dt__6CTokenFv +lbl_801F750C: +/* 801F750C 001F446C 7F E0 07 35 */ extsh. r0, r31 +/* 801F7510 001F4470 40 81 00 0C */ ble lbl_801F751C +/* 801F7514 001F4474 7F C3 F3 78 */ mr r3, r30 +/* 801F7518 001F4478 48 11 E4 19 */ bl Free__7CMemoryFPCv +lbl_801F751C: +/* 801F751C 001F447C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801F7520 001F4480 7F C3 F3 78 */ mr r3, r30 +/* 801F7524 001F4484 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801F7528 001F4488 83 C1 00 08 */ lwz r30, 8(r1) +/* 801F752C 001F448C 7C 08 03 A6 */ mtlr r0 +/* 801F7530 001F4490 38 21 00 10 */ addi r1, r1, 0x10 +/* 801F7534 001F4494 4E 80 00 20 */ blr + +.global GetSearchPath__13CFlyingPirateFv +GetSearchPath__13CFlyingPirateFv: +/* 801F7538 001F4498 38 63 06 A8 */ addi r3, r3, 0x6a8 +/* 801F753C 001F449C 4E 80 00 20 */ blr + +.global IsListening__13CFlyingPirateCFv +IsListening__13CFlyingPirateCFv: +/* 801F7540 001F44A0 38 60 00 01 */ li r3, 1 +/* 801F7544 001F44A4 4E 80 00 20 */ blr + +.global GetGravityConstant__13CFlyingPirateCFv +GetGravityConstant__13CFlyingPirateCFv: +/* 801F7548 001F44A8 88 03 06 A0 */ lbz r0, 0x6a0(r3) +/* 801F754C 001F44AC 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801F7550 001F44B0 41 82 00 0C */ beq lbl_801F755C +/* 801F7554 001F44B4 C0 22 AF 58 */ lfs f1, lbl_805ACC78@sda21(r2) +/* 801F7558 001F44B8 4E 80 00 20 */ blr +lbl_801F755C: +/* 801F755C 001F44BC C0 22 AF 54 */ lfs f1, lbl_805ACC74@sda21(r2) +/* 801F7560 001F44C0 4E 80 00 20 */ blr + +.global KnockbackWhenFrozen__13CFlyingPirateCFv +KnockbackWhenFrozen__13CFlyingPirateCFv: +/* 801F7564 001F44C4 38 60 00 00 */ li r3, 0 +/* 801F7568 001F44C8 4E 80 00 20 */ blr + +.global Think__13CFlyingPirateFfR13CStateManager +Think__13CFlyingPirateFfR13CStateManager: +/* 801F756C 001F44CC 94 21 FD 50 */ stwu r1, -0x2b0(r1) +/* 801F7570 001F44D0 7C 08 02 A6 */ mflr r0 +/* 801F7574 001F44D4 90 01 02 B4 */ stw r0, 0x2b4(r1) +/* 801F7578 001F44D8 DB E1 02 A0 */ stfd f31, 0x2a0(r1) +/* 801F757C 001F44DC F3 E1 02 A8 */ psq_st f31, 680(r1), 0, qr0 +/* 801F7580 001F44E0 DB C1 02 90 */ stfd f30, 0x290(r1) +/* 801F7584 001F44E4 F3 C1 02 98 */ psq_st f30, 664(r1), 0, qr0 +/* 801F7588 001F44E8 BF 41 02 78 */ stmw r26, 0x278(r1) +/* 801F758C 001F44EC 88 03 00 30 */ lbz r0, 0x30(r3) +/* 801F7590 001F44F0 7C 7F 1B 78 */ mr r31, r3 +/* 801F7594 001F44F4 D0 21 00 08 */ stfs f1, 8(r1) +/* 801F7598 001F44F8 7C 9E 23 78 */ mr r30, r4 +/* 801F759C 001F44FC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801F75A0 001F4500 41 82 0F 24 */ beq lbl_801F84C4 +/* 801F75A4 001F4504 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801F75A8 001F4508 88 03 03 00 */ lbz r0, 0x300(r3) +/* 801F75AC 001F450C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801F75B0 001F4510 40 82 00 30 */ bne lbl_801F75E0 +/* 801F75B4 001F4514 4B F4 37 3D */ bl Activate__15CBodyControllerFR13CStateManager +/* 801F75B8 001F4518 88 1F 06 A0 */ lbz r0, 0x6a0(r31) +/* 801F75BC 001F451C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801F75C0 001F4520 41 82 00 20 */ beq lbl_801F75E0 +/* 801F75C4 001F4524 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801F75C8 001F4528 38 80 00 03 */ li r4, 3 +/* 801F75CC 001F452C 4B F4 34 0D */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 801F75D0 001F4530 88 1F 03 28 */ lbz r0, 0x328(r31) +/* 801F75D4 001F4534 38 60 00 01 */ li r3, 1 +/* 801F75D8 001F4538 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801F75DC 001F453C 98 1F 03 28 */ stb r0, 0x328(r31) +lbl_801F75E0: +/* 801F75E0 001F4540 80 7E 08 70 */ lwz r3, 0x870(r30) +/* 801F75E4 001F4544 4B E1 33 1D */ bl IsInCinematicCamera__14CCameraManagerCFv +/* 801F75E8 001F4548 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801F75EC 001F454C 7C 7D 1B 78 */ mr r29, r3 +/* 801F75F0 001F4550 41 82 00 7C */ beq lbl_801F766C +/* 801F75F4 001F4554 88 1F 06 A1 */ lbz r0, 0x6a1(r31) +/* 801F75F8 001F4558 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801F75FC 001F455C 40 82 00 70 */ bne lbl_801F766C +/* 801F7600 001F4560 7F E3 FB 78 */ mr r3, r31 +/* 801F7604 001F4564 7F C5 F3 78 */ mr r5, r30 +/* 801F7608 001F4568 38 80 00 30 */ li r4, 0x30 +/* 801F760C 001F456C 4B E5 C9 75 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801F7610 001F4570 7F E3 FB 78 */ mr r3, r31 +/* 801F7614 001F4574 4B E5 C2 A9 */ bl GetMaterialFilter__6CActorCFv +/* 801F7618 001F4578 83 83 00 00 */ lwz r28, 0(r3) +/* 801F761C 001F457C 83 63 00 04 */ lwz r27, 4(r3) +/* 801F7620 001F4580 7F E3 FB 78 */ mr r3, r31 +/* 801F7624 001F4584 4B E5 C2 99 */ bl GetMaterialFilter__6CActorCFv +/* 801F7628 001F4588 3C 80 FF FF */ lis r4, 0xFFFEFFFF@ha +/* 801F762C 001F458C 38 C0 FF FF */ li r6, -1 +/* 801F7630 001F4590 38 A4 FF FF */ addi r5, r4, 0xFFFEFFFF@l +/* 801F7634 001F4594 38 00 00 03 */ li r0, 3 +/* 801F7638 001F4598 7F 66 30 38 */ and r6, r27, r6 +/* 801F763C 001F459C 38 81 02 28 */ addi r4, r1, 0x228 +/* 801F7640 001F45A0 7F 85 28 38 */ and r5, r28, r5 +/* 801F7644 001F45A4 90 C1 02 2C */ stw r6, 0x22c(r1) +/* 801F7648 001F45A8 90 A1 02 28 */ stw r5, 0x228(r1) +/* 801F764C 001F45AC 80 A3 00 08 */ lwz r5, 8(r3) +/* 801F7650 001F45B0 80 C3 00 0C */ lwz r6, 0xc(r3) +/* 801F7654 001F45B4 7F E3 FB 78 */ mr r3, r31 +/* 801F7658 001F45B8 90 C1 02 34 */ stw r6, 0x234(r1) +/* 801F765C 001F45BC 90 A1 02 30 */ stw r5, 0x230(r1) +/* 801F7660 001F45C0 90 01 02 38 */ stw r0, 0x238(r1) +/* 801F7664 001F45C4 4B E5 C2 3D */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter +/* 801F7668 001F45C8 48 00 00 90 */ b lbl_801F76F8 +lbl_801F766C: +/* 801F766C 001F45CC 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 801F7670 001F45D0 40 82 00 88 */ bne lbl_801F76F8 +/* 801F7674 001F45D4 88 1F 06 A1 */ lbz r0, 0x6a1(r31) +/* 801F7678 001F45D8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801F767C 001F45DC 41 82 00 7C */ beq lbl_801F76F8 +/* 801F7680 001F45E0 7F E3 FB 78 */ mr r3, r31 +/* 801F7684 001F45E4 7F C5 F3 78 */ mr r5, r30 +/* 801F7688 001F45E8 38 80 00 30 */ li r4, 0x30 +/* 801F768C 001F45EC 4B E5 CC C5 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801F7690 001F45F0 7F E3 FB 78 */ mr r3, r31 +/* 801F7694 001F45F4 4B E5 C2 29 */ bl GetMaterialFilter__6CActorCFv +/* 801F7698 001F45F8 80 AD 93 18 */ lwz r5, lbl_805A7ED8@sda21(r13) +/* 801F769C 001F45FC 7C 7C 1B 78 */ mr r28, r3 +/* 801F76A0 001F4600 38 60 00 00 */ li r3, 0 +/* 801F76A4 001F4604 38 80 00 01 */ li r4, 1 +/* 801F76A8 001F4608 48 19 28 4D */ bl __shl2i +/* 801F76AC 001F460C 7C 7B 1B 78 */ mr r27, r3 +/* 801F76B0 001F4610 7C 9A 23 78 */ mr r26, r4 +/* 801F76B4 001F4614 7F E3 FB 78 */ mr r3, r31 +/* 801F76B8 001F4618 4B E5 C2 05 */ bl GetMaterialFilter__6CActorCFv +/* 801F76BC 001F461C 80 83 00 00 */ lwz r4, 0(r3) +/* 801F76C0 001F4620 38 00 00 03 */ li r0, 3 +/* 801F76C4 001F4624 80 C3 00 04 */ lwz r6, 4(r3) +/* 801F76C8 001F4628 7F E3 FB 78 */ mr r3, r31 +/* 801F76CC 001F462C 7C 85 DB 78 */ or r5, r4, r27 +/* 801F76D0 001F4630 38 81 02 10 */ addi r4, r1, 0x210 +/* 801F76D4 001F4634 7C C6 D3 78 */ or r6, r6, r26 +/* 801F76D8 001F4638 90 A1 02 10 */ stw r5, 0x210(r1) +/* 801F76DC 001F463C 90 C1 02 14 */ stw r6, 0x214(r1) +/* 801F76E0 001F4640 80 BC 00 08 */ lwz r5, 8(r28) +/* 801F76E4 001F4644 80 DC 00 0C */ lwz r6, 0xc(r28) +/* 801F76E8 001F4648 90 C1 02 1C */ stw r6, 0x21c(r1) +/* 801F76EC 001F464C 90 A1 02 18 */ stw r5, 0x218(r1) +/* 801F76F0 001F4650 90 01 02 20 */ stw r0, 0x220(r1) +/* 801F76F4 001F4654 4B E5 C1 AD */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter +lbl_801F76F8: +/* 801F76F8 001F4658 88 1F 06 A1 */ lbz r0, 0x6a1(r31) +/* 801F76FC 001F465C 53 A0 3E 30 */ rlwimi r0, r29, 7, 0x18, 0x18 +/* 801F7700 001F4660 3B 5F 06 88 */ addi r26, r31, 0x688 +/* 801F7704 001F4664 3B 60 00 00 */ li r27, 0 +/* 801F7708 001F4668 98 1F 06 A1 */ stb r0, 0x6a1(r31) +/* 801F770C 001F466C 48 00 00 24 */ b lbl_801F7730 +lbl_801F7710: +/* 801F7710 001F4670 80 7A 00 04 */ lwz r3, 4(r26) +/* 801F7714 001F4674 C0 21 00 08 */ lfs f1, 8(r1) +/* 801F7718 001F4678 81 83 00 00 */ lwz r12, 0(r3) +/* 801F771C 001F467C 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801F7720 001F4680 7D 89 03 A6 */ mtctr r12 +/* 801F7724 001F4684 4E 80 04 21 */ bctrl +/* 801F7728 001F4688 3B 5A 00 08 */ addi r26, r26, 8 +/* 801F772C 001F468C 3B 7B 00 01 */ addi r27, r27, 1 +lbl_801F7730: +/* 801F7730 001F4690 80 1F 06 84 */ lwz r0, 0x684(r31) +/* 801F7734 001F4694 7C 1B 00 00 */ cmpw r27, r0 +/* 801F7738 001F4698 41 80 FF D8 */ blt lbl_801F7710 +/* 801F773C 001F469C C0 3F 07 8C */ lfs f1, 0x78c(r31) +/* 801F7740 001F46A0 38 81 00 3C */ addi r4, r1, 0x3c +/* 801F7744 001F46A4 C0 01 00 08 */ lfs f0, 8(r1) +/* 801F7748 001F46A8 38 6D 93 1C */ addi r3, r13, lbl_805A7EDC@sda21 +/* 801F774C 001F46AC EC 01 00 28 */ fsubs f0, f1, f0 +/* 801F7750 001F46B0 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 801F7754 001F46B4 4B E5 7F DD */ bl "Max__5CMathFRCfRCf" +/* 801F7758 001F46B8 C0 03 00 00 */ lfs f0, 0(r3) +/* 801F775C 001F46BC D0 1F 07 8C */ stfs f0, 0x78c(r31) +/* 801F7760 001F46C0 88 1F 04 00 */ lbz r0, 0x400(r31) +/* 801F7764 001F46C4 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801F7768 001F46C8 41 82 00 F4 */ beq lbl_801F785C +/* 801F776C 001F46CC C0 1F 08 54 */ lfs f0, 0x854(r31) +/* 801F7770 001F46D0 C0 21 00 08 */ lfs f1, 8(r1) +/* 801F7774 001F46D4 EC 00 08 2A */ fadds f0, f0, f1 +/* 801F7778 001F46D8 D0 1F 08 54 */ stfs f0, 0x854(r31) +/* 801F777C 001F46DC C0 1F 08 58 */ lfs f0, 0x858(r31) +/* 801F7780 001F46E0 EC 00 08 2A */ fadds f0, f0, f1 +/* 801F7784 001F46E4 D0 1F 08 58 */ stfs f0, 0x858(r31) +/* 801F7788 001F46E8 88 1F 06 A0 */ lbz r0, 0x6a0(r31) +/* 801F778C 001F46EC 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 801F7790 001F46F0 41 82 00 1C */ beq lbl_801F77AC +/* 801F7794 001F46F4 C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801F7798 001F46F8 38 60 00 00 */ li r3, 0 +/* 801F779C 001F46FC D0 1F 08 58 */ stfs f0, 0x858(r31) +/* 801F77A0 001F4700 88 1F 06 A0 */ lbz r0, 0x6a0(r31) +/* 801F77A4 001F4704 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 801F77A8 001F4708 98 1F 06 A0 */ stb r0, 0x6a0(r31) +lbl_801F77AC: +/* 801F77AC 001F470C 88 1F 04 00 */ lbz r0, 0x400(r31) +/* 801F77B0 001F4710 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801F77B4 001F4714 41 82 00 1C */ beq lbl_801F77D0 +/* 801F77B8 001F4718 C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801F77BC 001F471C 38 60 00 00 */ li r3, 0 +/* 801F77C0 001F4720 D0 1F 08 54 */ stfs f0, 0x854(r31) +/* 801F77C4 001F4724 88 1F 04 00 */ lbz r0, 0x400(r31) +/* 801F77C8 001F4728 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801F77CC 001F472C 98 1F 04 00 */ stb r0, 0x400(r31) +lbl_801F77D0: +/* 801F77D0 001F4730 88 1F 06 A0 */ lbz r0, 0x6a0(r31) +/* 801F77D4 001F4734 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801F77D8 001F4738 40 82 00 84 */ bne lbl_801F785C +/* 801F77DC 001F473C A0 BF 00 C4 */ lhz r5, 0xc4(r31) +/* 801F77E0 001F4740 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801F77E4 001F4744 7C 05 00 40 */ cmplw r5, r0 +/* 801F77E8 001F4748 41 82 00 74 */ beq lbl_801F785C +/* 801F77EC 001F474C B0 A1 00 14 */ sth r5, 0x14(r1) +/* 801F77F0 001F4750 7F C3 F3 78 */ mr r3, r30 +/* 801F77F4 001F4754 38 81 00 18 */ addi r4, r1, 0x18 +/* 801F77F8 001F4758 B0 A1 00 18 */ sth r5, 0x18(r1) +/* 801F77FC 001F475C 4B E5 4D A9 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801F7800 001F4760 7C 64 1B 78 */ mr r4, r3 +/* 801F7804 001F4764 38 61 00 58 */ addi r3, r1, 0x58 +/* 801F7808 001F4768 4B EA F0 59 */ bl "__ct__26TCastToPtr<12CScriptWater>FP7CEntity" +/* 801F780C 001F476C 80 83 00 04 */ lwz r4, 4(r3) +/* 801F7810 001F4770 28 04 00 00 */ cmplwi r4, 0 +/* 801F7814 001F4774 41 82 00 48 */ beq lbl_801F785C +/* 801F7818 001F4778 C3 FF 00 60 */ lfs f31, 0x60(r31) +/* 801F781C 001F477C 38 61 01 DC */ addi r3, r1, 0x1dc +/* 801F7820 001F4780 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 801F7824 001F4784 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801F7828 001F4788 D0 21 01 68 */ stfs f1, 0x168(r1) +/* 801F782C 001F478C D0 01 01 64 */ stfs f0, 0x164(r1) +/* 801F7830 001F4790 D3 E1 01 6C */ stfs f31, 0x16c(r1) +/* 801F7834 001F4794 4B E7 EE 99 */ bl GetTriggerBoundsWR__14CScriptTriggerCFv +/* 801F7838 001F4798 C0 02 AF 64 */ lfs f0, lbl_805ACC84@sda21(r2) +/* 801F783C 001F479C C0 21 01 F0 */ lfs f1, 0x1f0(r1) +/* 801F7840 001F47A0 EC 00 F8 2A */ fadds f0, f0, f31 +/* 801F7844 001F47A4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F7848 001F47A8 40 81 00 14 */ ble lbl_801F785C +/* 801F784C 001F47AC 88 1F 04 01 */ lbz r0, 0x401(r31) +/* 801F7850 001F47B0 38 60 00 01 */ li r3, 1 +/* 801F7854 001F47B4 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 801F7858 001F47B8 98 1F 04 01 */ stb r0, 0x401(r31) +lbl_801F785C: +/* 801F785C 001F47BC 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801F7860 001F47C0 4B F4 28 6D */ bl GetPercentageFrozen__15CBodyControllerCFv +/* 801F7864 001F47C4 C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801F7868 001F47C8 FC 00 08 00 */ fcmpu cr0, f0, f1 +/* 801F786C 001F47CC 40 82 03 4C */ bne lbl_801F7BB8 +/* 801F7870 001F47D0 C0 3F 08 6C */ lfs f1, 0x86c(r31) +/* 801F7874 001F47D4 38 81 00 38 */ addi r4, r1, 0x38 +/* 801F7878 001F47D8 C0 01 00 08 */ lfs f0, 8(r1) +/* 801F787C 001F47DC 38 6D 93 20 */ addi r3, r13, lbl_805A7EE0@sda21 +/* 801F7880 001F47E0 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801F7884 001F47E4 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 801F7888 001F47E8 4B E5 7E A9 */ bl "Max__5CMathFRCfRCf" +/* 801F788C 001F47EC C0 23 00 00 */ lfs f1, 0(r3) +/* 801F7890 001F47F0 38 81 00 34 */ addi r4, r1, 0x34 +/* 801F7894 001F47F4 C0 01 00 08 */ lfs f0, 8(r1) +/* 801F7898 001F47F8 38 6D 93 24 */ addi r3, r13, lbl_805A7EE4@sda21 +/* 801F789C 001F47FC D0 3F 08 6C */ stfs f1, 0x86c(r31) +/* 801F78A0 001F4800 C0 3F 08 60 */ lfs f1, 0x860(r31) +/* 801F78A4 001F4804 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801F78A8 001F4808 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801F78AC 001F480C 4B E5 7E 85 */ bl "Max__5CMathFRCfRCf" +/* 801F78B0 001F4810 C0 23 00 00 */ lfs f1, 0(r3) +/* 801F78B4 001F4814 38 81 00 30 */ addi r4, r1, 0x30 +/* 801F78B8 001F4818 C0 01 00 08 */ lfs f0, 8(r1) +/* 801F78BC 001F481C 38 6D 93 28 */ addi r3, r13, lbl_805A7EE8@sda21 +/* 801F78C0 001F4820 D0 3F 08 60 */ stfs f1, 0x860(r31) +/* 801F78C4 001F4824 C0 3F 08 88 */ lfs f1, 0x888(r31) +/* 801F78C8 001F4828 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801F78CC 001F482C D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801F78D0 001F4830 4B E5 7E 61 */ bl "Max__5CMathFRCfRCf" +/* 801F78D4 001F4834 C0 03 00 00 */ lfs f0, 0(r3) +/* 801F78D8 001F4838 D0 1F 08 88 */ stfs f0, 0x888(r31) +/* 801F78DC 001F483C 88 1F 06 A0 */ lbz r0, 0x6a0(r31) +/* 801F78E0 001F4840 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 801F78E4 001F4844 41 82 00 18 */ beq lbl_801F78FC +/* 801F78E8 001F4848 C0 3F 07 D8 */ lfs f1, 0x7d8(r31) +/* 801F78EC 001F484C C0 01 00 08 */ lfs f0, 8(r1) +/* 801F78F0 001F4850 EC 01 00 2A */ fadds f0, f1, f0 +/* 801F78F4 001F4854 D0 1F 07 D8 */ stfs f0, 0x7d8(r31) +/* 801F78F8 001F4858 48 00 00 0C */ b lbl_801F7904 +lbl_801F78FC: +/* 801F78FC 001F485C C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801F7900 001F4860 D0 1F 07 D8 */ stfs f0, 0x7d8(r31) +lbl_801F7904: +/* 801F7904 001F4864 88 1F 04 00 */ lbz r0, 0x400(r31) +/* 801F7908 001F4868 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801F790C 001F486C 41 82 00 10 */ beq lbl_801F791C +/* 801F7910 001F4870 7F E3 FB 78 */ mr r3, r31 +/* 801F7914 001F4874 7F C4 F3 78 */ mr r4, r30 +/* 801F7918 001F4878 48 00 5B 35 */ bl CheckForProjectiles__13CFlyingPirateFR13CStateManager +lbl_801F791C: +/* 801F791C 001F487C 88 1F 06 A0 */ lbz r0, 0x6a0(r31) +/* 801F7920 001F4880 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801F7924 001F4884 40 82 02 94 */ bne lbl_801F7BB8 +/* 801F7928 001F4888 88 1F 04 00 */ lbz r0, 0x400(r31) +/* 801F792C 001F488C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801F7930 001F4890 41 82 00 60 */ beq lbl_801F7990 +/* 801F7934 001F4894 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801F7938 001F4898 38 63 02 A4 */ addi r3, r3, 0x2a4 +/* 801F793C 001F489C 4B F3 C7 3D */ bl GetCurrentState__14CBodyStateInfoCFv +/* 801F7940 001F48A0 81 83 00 00 */ lwz r12, 0(r3) +/* 801F7944 001F48A4 81 8C 00 28 */ lwz r12, 0x28(r12) +/* 801F7948 001F48A8 7D 89 03 A6 */ mtctr r12 +/* 801F794C 001F48AC 4E 80 04 21 */ bctrl +/* 801F7950 001F48B0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801F7954 001F48B4 41 82 02 64 */ beq lbl_801F7BB8 +/* 801F7958 001F48B8 88 1F 06 A0 */ lbz r0, 0x6a0(r31) +/* 801F795C 001F48BC 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 801F7960 001F48C0 41 82 02 58 */ beq lbl_801F7BB8 +/* 801F7964 001F48C4 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801F7968 001F48C8 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801F796C 001F48CC 2C 00 00 12 */ cmpwi r0, 0x12 +/* 801F7970 001F48D0 41 82 02 48 */ beq lbl_801F7BB8 +/* 801F7974 001F48D4 88 1F 06 A1 */ lbz r0, 0x6a1(r31) +/* 801F7978 001F48D8 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 801F797C 001F48DC 40 82 02 3C */ bne lbl_801F7BB8 +/* 801F7980 001F48E0 C0 23 03 24 */ lfs f1, 0x324(r3) +/* 801F7984 001F48E4 C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801F7988 001F48E8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F798C 001F48EC 41 81 02 2C */ bgt lbl_801F7BB8 +lbl_801F7990: +/* 801F7990 001F48F0 80 1F 07 EC */ lwz r0, 0x7ec(r31) +/* 801F7994 001F48F4 2C 00 FF FF */ cmpwi r0, -1 +/* 801F7998 001F48F8 41 82 02 20 */ beq lbl_801F7BB8 +/* 801F799C 001F48FC C0 5F 07 E4 */ lfs f2, 0x7e4(r31) +/* 801F79A0 001F4900 C0 01 00 08 */ lfs f0, 8(r1) +/* 801F79A4 001F4904 C0 22 AF 60 */ lfs f1, lbl_805ACC80@sda21(r2) +/* 801F79A8 001F4908 EC 02 00 28 */ fsubs f0, f2, f0 +/* 801F79AC 001F490C D0 1F 07 E4 */ stfs f0, 0x7e4(r31) +/* 801F79B0 001F4910 C0 1F 07 E4 */ lfs f0, 0x7e4(r31) +/* 801F79B4 001F4914 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801F79B8 001F4918 40 80 01 A4 */ bge lbl_801F7B5C +/* 801F79BC 001F491C 81 9F 00 00 */ lwz r12, 0(r31) +/* 801F79C0 001F4920 7F E3 FB 78 */ mr r3, r31 +/* 801F79C4 001F4924 80 1F 07 EC */ lwz r0, 0x7ec(r31) +/* 801F79C8 001F4928 7F C4 F3 78 */ mr r4, r30 +/* 801F79CC 001F492C 81 8C 01 B0 */ lwz r12, 0x1b0(r12) +/* 801F79D0 001F4930 54 1A 00 3C */ rlwinm r26, r0, 0, 0, 0x1e +/* 801F79D4 001F4934 7D 89 03 A6 */ mtctr r12 +/* 801F79D8 001F4938 4E 80 04 21 */ bctrl +/* 801F79DC 001F493C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801F79E0 001F4940 40 82 00 08 */ bne lbl_801F79E8 +/* 801F79E4 001F4944 3B 5A 00 01 */ addi r26, r26, 1 +lbl_801F79E8: +/* 801F79E8 001F4948 93 5F 07 EC */ stw r26, 0x7ec(r31) +/* 801F79EC 001F494C 7F C4 F3 78 */ mr r4, r30 +/* 801F79F0 001F4950 38 7F 07 EC */ addi r3, r31, 0x7ec +/* 801F79F4 001F4954 4B FB 5A 31 */ bl Start__10CBurstFireFR13CStateManager +/* 801F79F8 001F4958 88 1F 04 00 */ lbz r0, 0x400(r31) +/* 801F79FC 001F495C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801F7A00 001F4960 41 82 01 54 */ beq lbl_801F7B54 +/* 801F7A04 001F4964 80 7E 09 00 */ lwz r3, 0x900(r30) +/* 801F7A08 001F4968 48 11 AA D5 */ bl Float__9CRandom16Fv +/* 801F7A0C 001F496C C0 5F 03 08 */ lfs f2, 0x308(r31) +/* 801F7A10 001F4970 7F C5 F3 78 */ mr r5, r30 +/* 801F7A14 001F4974 C0 1F 03 04 */ lfs f0, 0x304(r31) +/* 801F7A18 001F4978 38 61 01 34 */ addi r3, r1, 0x134 +/* 801F7A1C 001F497C EC 02 00 7A */ fmadds f0, f2, f1, f0 +/* 801F7A20 001F4980 C0 22 AF 60 */ lfs f1, lbl_805ACC80@sda21(r2) +/* 801F7A24 001F4984 D0 1F 07 E4 */ stfs f0, 0x7e4(r31) +/* 801F7A28 001F4988 80 9E 08 4C */ lwz r4, 0x84c(r30) +/* 801F7A2C 001F498C 81 84 00 00 */ lwz r12, 0(r4) +/* 801F7A30 001F4990 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801F7A34 001F4994 7D 89 03 A6 */ mtctr r12 +/* 801F7A38 001F4998 4E 80 04 21 */ bctrl +/* 801F7A3C 001F499C 7F E4 FB 78 */ mr r4, r31 +/* 801F7A40 001F49A0 38 61 01 F4 */ addi r3, r1, 0x1f4 +/* 801F7A44 001F49A4 4B F2 2E E9 */ bl GetBoundingBox__13CPhysicsActorCFv +/* 801F7A48 001F49A8 38 61 01 40 */ addi r3, r1, 0x140 +/* 801F7A4C 001F49AC 38 81 01 F4 */ addi r4, r1, 0x1f4 +/* 801F7A50 001F49B0 48 13 FB BD */ bl GetCenterPoint__6CAABoxCFv +/* 801F7A54 001F49B4 C0 21 01 40 */ lfs f1, 0x140(r1) +/* 801F7A58 001F49B8 38 61 01 58 */ addi r3, r1, 0x158 +/* 801F7A5C 001F49BC C0 01 01 34 */ lfs f0, 0x134(r1) +/* 801F7A60 001F49C0 38 81 01 4C */ addi r4, r1, 0x14c +/* 801F7A64 001F49C4 C0 61 01 44 */ lfs f3, 0x144(r1) +/* 801F7A68 001F49C8 C0 41 01 38 */ lfs f2, 0x138(r1) +/* 801F7A6C 001F49CC EC 81 00 28 */ fsubs f4, f1, f0 +/* 801F7A70 001F49D0 C0 21 01 48 */ lfs f1, 0x148(r1) +/* 801F7A74 001F49D4 C0 01 01 3C */ lfs f0, 0x13c(r1) +/* 801F7A78 001F49D8 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801F7A7C 001F49DC D0 81 01 4C */ stfs f4, 0x14c(r1) +/* 801F7A80 001F49E0 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801F7A84 001F49E4 D0 41 01 50 */ stfs f2, 0x150(r1) +/* 801F7A88 001F49E8 D0 01 01 54 */ stfs f0, 0x154(r1) +/* 801F7A8C 001F49EC 48 11 CD C5 */ bl AsNormalized__9CVector3fCFv +/* 801F7A90 001F49F0 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 801F7A94 001F49F4 C0 01 01 5C */ lfs f0, 0x15c(r1) +/* 801F7A98 001F49F8 C0 83 00 48 */ lfs f4, 0x48(r3) +/* 801F7A9C 001F49FC C0 63 00 38 */ lfs f3, 0x38(r3) +/* 801F7AA0 001F4A00 EC 00 01 32 */ fmuls f0, f0, f4 +/* 801F7AA4 001F4A04 C0 21 01 58 */ lfs f1, 0x158(r1) +/* 801F7AA8 001F4A08 C0 A3 00 58 */ lfs f5, 0x58(r3) +/* 801F7AAC 001F4A0C C0 41 01 60 */ lfs f2, 0x160(r1) +/* 801F7AB0 001F4A10 EC 21 00 FA */ fmadds f1, f1, f3, f0 +/* 801F7AB4 001F4A14 C0 02 AF 68 */ lfs f0, lbl_805ACC88@sda21(r2) +/* 801F7AB8 001F4A18 D0 61 01 28 */ stfs f3, 0x128(r1) +/* 801F7ABC 001F4A1C EC 22 09 7A */ fmadds f1, f2, f5, f1 +/* 801F7AC0 001F4A20 D0 81 01 2C */ stfs f4, 0x12c(r1) +/* 801F7AC4 001F4A24 D0 A1 01 30 */ stfs f5, 0x130(r1) +/* 801F7AC8 001F4A28 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F7ACC 001F4A2C 40 80 00 90 */ bge lbl_801F7B5C +/* 801F7AD0 001F4A30 83 9E 08 38 */ lwz r28, 0x838(r30) +/* 801F7AD4 001F4A34 AB 5C 20 08 */ lha r26, 0x2008(r28) +/* 801F7AD8 001F4A38 48 00 00 70 */ b lbl_801F7B48 +lbl_801F7ADC: +/* 801F7ADC 001F4A3C 7F 83 E3 78 */ mr r3, r28 +/* 801F7AE0 001F4A40 7F 44 D3 78 */ mr r4, r26 +/* 801F7AE4 001F4A44 4B E1 81 F9 */ bl __vc__11CObjectListCFi +/* 801F7AE8 001F4A48 7C 64 1B 78 */ mr r4, r3 +/* 801F7AEC 001F4A4C 38 61 00 1C */ addi r3, r1, 0x1c +/* 801F7AF0 001F4A50 4B EA D8 E1 */ bl sub_800a53d0 +/* 801F7AF4 001F4A54 4B EA D8 B1 */ bl "CastTo<12CSpacePirate>__10CPatternedFP7CEntity" +/* 801F7AF8 001F4A58 28 03 00 00 */ cmplwi r3, 0 +/* 801F7AFC 001F4A5C 41 82 00 30 */ beq lbl_801F7B2C +/* 801F7B00 001F4A60 88 03 06 37 */ lbz r0, 0x637(r3) +/* 801F7B04 001F4A64 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801F7B08 001F4A68 41 82 00 24 */ beq lbl_801F7B2C +/* 801F7B0C 001F4A6C 80 63 00 04 */ lwz r3, 4(r3) +/* 801F7B10 001F4A70 80 1F 00 04 */ lwz r0, 4(r31) +/* 801F7B14 001F4A74 7C 03 00 00 */ cmpw r3, r0 +/* 801F7B18 001F4A78 40 82 00 14 */ bne lbl_801F7B2C +/* 801F7B1C 001F4A7C C0 3F 07 E4 */ lfs f1, 0x7e4(r31) +/* 801F7B20 001F4A80 C0 02 AF 6C */ lfs f0, lbl_805ACC8C@sda21(r2) +/* 801F7B24 001F4A84 EC 01 00 2A */ fadds f0, f1, f0 +/* 801F7B28 001F4A88 D0 1F 07 E4 */ stfs f0, 0x7e4(r31) +lbl_801F7B2C: +/* 801F7B2C 001F4A8C 2C 1A FF FF */ cmpwi r26, -1 +/* 801F7B30 001F4A90 41 82 00 14 */ beq lbl_801F7B44 +/* 801F7B34 001F4A94 57 43 18 38 */ slwi r3, r26, 3 +/* 801F7B38 001F4A98 38 03 00 08 */ addi r0, r3, 8 +/* 801F7B3C 001F4A9C 7F 5C 02 AE */ lhax r26, r28, r0 +/* 801F7B40 001F4AA0 48 00 00 08 */ b lbl_801F7B48 +lbl_801F7B44: +/* 801F7B44 001F4AA4 3B 40 FF FF */ li r26, -1 +lbl_801F7B48: +/* 801F7B48 001F4AA8 2C 1A FF FF */ cmpwi r26, -1 +/* 801F7B4C 001F4AAC 40 82 FF 90 */ bne lbl_801F7ADC +/* 801F7B50 001F4AB0 48 00 00 0C */ b lbl_801F7B5C +lbl_801F7B54: +/* 801F7B54 001F4AB4 C0 02 AF 70 */ lfs f0, lbl_805ACC90@sda21(r2) +/* 801F7B58 001F4AB8 D0 1F 07 E4 */ stfs f0, 0x7e4(r31) +lbl_801F7B5C: +/* 801F7B5C 001F4ABC C0 21 00 08 */ lfs f1, 8(r1) +/* 801F7B60 001F4AC0 7F C4 F3 78 */ mr r4, r30 +/* 801F7B64 001F4AC4 38 7F 07 EC */ addi r3, r31, 0x7ec +/* 801F7B68 001F4AC8 4B FB 57 ED */ bl Update__10CBurstFireFR13CStateManagerf +/* 801F7B6C 001F4ACC 88 1F 08 00 */ lbz r0, 0x800(r31) +/* 801F7B70 001F4AD0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801F7B74 001F4AD4 41 82 00 44 */ beq lbl_801F7BB8 +/* 801F7B78 001F4AD8 C0 21 00 08 */ lfs f1, 8(r1) +/* 801F7B7C 001F4ADC 7F E3 FB 78 */ mr r3, r31 +/* 801F7B80 001F4AE0 7F C4 F3 78 */ mr r4, r30 +/* 801F7B84 001F4AE4 48 00 0F AD */ bl FireProjectile__13CFlyingPirateFR13CStateManagerRC9CVector3f +/* 801F7B88 001F4AE8 C3 FF 06 3C */ lfs f31, 0x63c(r31) +/* 801F7B8C 001F4AEC C3 DF 06 38 */ lfs f30, 0x638(r31) +/* 801F7B90 001F4AF0 80 7E 09 00 */ lwz r3, 0x900(r30) +/* 801F7B94 001F4AF4 48 11 A9 49 */ bl Float__9CRandom16Fv +/* 801F7B98 001F4AF8 C0 02 AF 74 */ lfs f0, lbl_805ACC94@sda21(r2) +/* 801F7B9C 001F4AFC C0 5F 07 F4 */ lfs f2, 0x7f4(r31) +/* 801F7BA0 001F4B00 EC 21 00 28 */ fsubs f1, f1, f0 +/* 801F7BA4 001F4B04 C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801F7BA8 001F4B08 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801F7BAC 001F4B0C EC 1F F0 7A */ fmadds f0, f31, f1, f30 +/* 801F7BB0 001F4B10 40 81 00 08 */ ble lbl_801F7BB8 +/* 801F7BB4 001F4B14 D0 1F 07 F4 */ stfs f0, 0x7f4(r31) +lbl_801F7BB8: +/* 801F7BB8 001F4B18 80 9F 08 9C */ lwz r4, 0x89c(r31) +/* 801F7BBC 001F4B1C 7C 83 00 34 */ cntlzw r3, r4 +/* 801F7BC0 001F4B20 54 60 DE 3F */ rlwinm. r0, r3, 0x1b, 0x18, 0x1f +/* 801F7BC4 001F4B24 54 7D D9 7E */ srwi r29, r3, 5 +/* 801F7BC8 001F4B28 40 82 00 10 */ bne lbl_801F7BD8 +/* 801F7BCC 001F4B2C 88 04 00 68 */ lbz r0, 0x68(r4) +/* 801F7BD0 001F4B30 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801F7BD4 001F4B34 40 82 06 5C */ bne lbl_801F8230 +lbl_801F7BD8: +/* 801F7BD8 001F4B38 88 1F 04 00 */ lbz r0, 0x400(r31) +/* 801F7BDC 001F4B3C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801F7BE0 001F4B40 41 82 01 04 */ beq lbl_801F7CE4 +/* 801F7BE4 001F4B44 80 DF 04 50 */ lwz r6, 0x450(r31) +/* 801F7BE8 001F4B48 88 06 03 00 */ lbz r0, 0x300(r6) +/* 801F7BEC 001F4B4C 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801F7BF0 001F4B50 40 82 00 F4 */ bne lbl_801F7CE4 +/* 801F7BF4 001F4B54 C0 26 03 24 */ lfs f1, 0x324(r6) +/* 801F7BF8 001F4B58 C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801F7BFC 001F4B5C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F7C00 001F4B60 41 81 00 E4 */ bgt lbl_801F7CE4 +/* 801F7C04 001F4B64 88 1F 06 A0 */ lbz r0, 0x6a0(r31) +/* 801F7C08 001F4B68 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 801F7C0C 001F4B6C 41 82 00 D8 */ beq lbl_801F7CE4 +/* 801F7C10 001F4B70 28 04 00 00 */ cmplwi r4, 0 +/* 801F7C14 001F4B74 40 82 00 D0 */ bne lbl_801F7CE4 +/* 801F7C18 001F4B78 88 1F 06 A0 */ lbz r0, 0x6a0(r31) +/* 801F7C1C 001F4B7C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801F7C20 001F4B80 40 82 00 C4 */ bne lbl_801F7CE4 +/* 801F7C24 001F4B84 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 801F7C28 001F4B88 3C 60 80 3E */ lis r3, lbl_803E061C@ha +/* 801F7C2C 001F4B8C 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l +/* 801F7C30 001F4B90 38 A0 00 18 */ li r5, 0x18 +/* 801F7C34 001F4B94 90 01 00 68 */ stw r0, 0x68(r1) +/* 801F7C38 001F4B98 38 03 06 1C */ addi r0, r3, lbl_803E061C@l +/* 801F7C3C 001F4B9C 3B 86 00 04 */ addi r28, r6, 4 +/* 801F7C40 001F4BA0 38 80 00 18 */ li r4, 0x18 +/* 801F7C44 001F4BA4 90 A1 00 6C */ stw r5, 0x6c(r1) +/* 801F7C48 001F4BA8 7F 83 E3 78 */ mr r3, r28 +/* 801F7C4C 001F4BAC 90 01 00 68 */ stw r0, 0x68(r1) +/* 801F7C50 001F4BB0 4B F3 97 E9 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801F7C54 001F4BB4 3C 60 80 3E */ lis r3, lbl_803E061C@ha +/* 801F7C58 001F4BB8 80 C1 00 6C */ lwz r6, 0x6c(r1) +/* 801F7C5C 001F4BBC 38 03 06 1C */ addi r0, r3, lbl_803E061C@l +/* 801F7C60 001F4BC0 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801F7C64 001F4BC4 90 01 00 68 */ stw r0, 0x68(r1) +/* 801F7C68 001F4BC8 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801F7C6C 001F4BCC 7F E4 FB 78 */ mr r4, r31 +/* 801F7C70 001F4BD0 7F C5 F3 78 */ mr r5, r30 +/* 801F7C74 001F4BD4 90 DC 02 74 */ stw r6, 0x274(r28) +/* 801F7C78 001F4BD8 38 61 01 10 */ addi r3, r1, 0x110 +/* 801F7C7C 001F4BDC 90 01 00 68 */ stw r0, 0x68(r1) +/* 801F7C80 001F4BE0 48 00 4C 15 */ bl GetTargetPos__13CFlyingPirateFR13CStateManager +/* 801F7C84 001F4BE4 C0 21 01 18 */ lfs f1, 0x118(r1) +/* 801F7C88 001F4BE8 38 9F 00 34 */ addi r4, r31, 0x34 +/* 801F7C8C 001F4BEC C0 1F 00 60 */ lfs f0, 0x60(r31) +/* 801F7C90 001F4BF0 38 61 01 1C */ addi r3, r1, 0x11c +/* 801F7C94 001F4BF4 C0 61 01 14 */ lfs f3, 0x114(r1) +/* 801F7C98 001F4BF8 38 A1 00 70 */ addi r5, r1, 0x70 +/* 801F7C9C 001F4BFC EC 81 00 28 */ fsubs f4, f1, f0 +/* 801F7CA0 001F4C00 C0 5F 00 50 */ lfs f2, 0x50(r31) +/* 801F7CA4 001F4C04 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801F7CA8 001F4C08 C0 21 01 10 */ lfs f1, 0x110(r1) +/* 801F7CAC 001F4C0C EC 43 10 28 */ fsubs f2, f3, f2 +/* 801F7CB0 001F4C10 D0 81 00 78 */ stfs f4, 0x78(r1) +/* 801F7CB4 001F4C14 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801F7CB8 001F4C18 D0 41 00 74 */ stfs f2, 0x74(r1) +/* 801F7CBC 001F4C1C D0 01 00 70 */ stfs f0, 0x70(r1) +/* 801F7CC0 001F4C20 48 11 AD 65 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 801F7CC4 001F4C24 C0 21 01 20 */ lfs f1, 0x120(r1) +/* 801F7CC8 001F4C28 C0 41 01 24 */ lfs f2, 0x124(r1) +/* 801F7CCC 001F4C2C 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801F7CD0 001F4C30 C0 01 01 1C */ lfs f0, 0x11c(r1) +/* 801F7CD4 001F4C34 D0 03 00 28 */ stfs f0, 0x28(r3) +/* 801F7CD8 001F4C38 D0 23 00 2C */ stfs f1, 0x2c(r3) +/* 801F7CDC 001F4C3C D0 43 00 30 */ stfs f2, 0x30(r3) +/* 801F7CE0 001F4C40 48 00 00 34 */ b lbl_801F7D14 +lbl_801F7CE4: +/* 801F7CE4 001F4C44 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801F7CE8 001F4C48 38 00 00 17 */ li r0, 0x17 +/* 801F7CEC 001F4C4C 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l +/* 801F7CF0 001F4C50 90 01 00 64 */ stw r0, 0x64(r1) +/* 801F7CF4 001F4C54 38 81 00 60 */ addi r4, r1, 0x60 +/* 801F7CF8 001F4C58 90 61 00 60 */ stw r3, 0x60(r1) +/* 801F7CFC 001F4C5C 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801F7D00 001F4C60 38 63 00 04 */ addi r3, r3, 4 +/* 801F7D04 001F4C64 4B F3 9A B5 */ bl DeliverCmd__16CBodyStateCmdMgrFRC13CBodyStateCmd +/* 801F7D08 001F4C68 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801F7D0C 001F4C6C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801F7D10 001F4C70 90 01 00 60 */ stw r0, 0x60(r1) +lbl_801F7D14: +/* 801F7D14 001F4C74 C0 3F 08 70 */ lfs f1, 0x870(r31) +/* 801F7D18 001F4C78 C0 1F 08 74 */ lfs f0, 0x874(r31) +/* 801F7D1C 001F4C7C EC 41 00 72 */ fmuls f2, f1, f1 +/* 801F7D20 001F4C80 C0 7F 08 78 */ lfs f3, 0x878(r31) +/* 801F7D24 001F4C84 EC 20 00 32 */ fmuls f1, f0, f0 +/* 801F7D28 001F4C88 C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801F7D2C 001F4C8C EC 63 00 F2 */ fmuls f3, f3, f3 +/* 801F7D30 001F4C90 EC 22 08 2A */ fadds f1, f2, f1 +/* 801F7D34 001F4C94 EC 23 08 2A */ fadds f1, f3, f1 +/* 801F7D38 001F4C98 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F7D3C 001F4C9C 40 81 00 8C */ ble lbl_801F7DC8 +/* 801F7D40 001F4CA0 38 7F 08 70 */ addi r3, r31, 0x870 +/* 801F7D44 001F4CA4 48 11 CB 75 */ bl Magnitude__9CVector3fCFv +/* 801F7D48 001F4CA8 C0 02 AF 78 */ lfs f0, lbl_805ACC98@sda21(r2) +/* 801F7D4C 001F4CAC C0 5F 08 7C */ lfs f2, 0x87c(r31) +/* 801F7D50 001F4CB0 ED 00 08 24 */ fdivs f8, f0, f1 +/* 801F7D54 001F4CB4 C0 1F 08 80 */ lfs f0, 0x880(r31) +/* 801F7D58 001F4CB8 C0 7F 08 84 */ lfs f3, 0x884(r31) +/* 801F7D5C 001F4CBC C0 FF 08 70 */ lfs f7, 0x870(r31) +/* 801F7D60 001F4CC0 C0 DF 08 74 */ lfs f6, 0x874(r31) +/* 801F7D64 001F4CC4 C0 BF 08 78 */ lfs f5, 0x878(r31) +/* 801F7D68 001F4CC8 EC 42 00 B2 */ fmuls f2, f2, f2 +/* 801F7D6C 001F4CCC C0 82 AF 60 */ lfs f4, lbl_805ACC80@sda21(r2) +/* 801F7D70 001F4CD0 EC 00 00 32 */ fmuls f0, f0, f0 +/* 801F7D74 001F4CD4 C1 22 AF 6C */ lfs f9, lbl_805ACC8C@sda21(r2) +/* 801F7D78 001F4CD8 EC 63 00 F2 */ fmuls f3, f3, f3 +/* 801F7D7C 001F4CDC EC E8 01 F2 */ fmuls f7, f8, f7 +/* 801F7D80 001F4CE0 EC 02 00 2A */ fadds f0, f2, f0 +/* 801F7D84 001F4CE4 EC C8 01 B2 */ fmuls f6, f8, f6 +/* 801F7D88 001F4CE8 EC A8 01 72 */ fmuls f5, f8, f5 +/* 801F7D8C 001F4CEC EC 03 00 2A */ fadds f0, f3, f0 +/* 801F7D90 001F4CF0 FC 04 00 00 */ fcmpu cr0, f4, f0 +/* 801F7D94 001F4CF4 40 82 00 0C */ bne lbl_801F7DA0 +/* 801F7D98 001F4CF8 C0 02 AF 7C */ lfs f0, lbl_805ACC9C@sda21(r2) +/* 801F7D9C 001F4CFC ED 29 00 32 */ fmuls f9, f9, f0 +lbl_801F7DA0: +/* 801F7DA0 001F4D00 EC 09 00 72 */ fmuls f0, f9, f1 +/* 801F7DA4 001F4D04 C0 41 00 08 */ lfs f2, 8(r1) +/* 801F7DA8 001F4D08 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801F7DAC 001F4D0C EC 02 08 3C */ fnmsubs f0, f2, f0, f1 +/* 801F7DB0 001F4D10 EC 40 01 F2 */ fmuls f2, f0, f7 +/* 801F7DB4 001F4D14 EC 20 01 B2 */ fmuls f1, f0, f6 +/* 801F7DB8 001F4D18 EC 00 01 72 */ fmuls f0, f0, f5 +/* 801F7DBC 001F4D1C D0 5F 08 70 */ stfs f2, 0x870(r31) +/* 801F7DC0 001F4D20 D0 3F 08 74 */ stfs f1, 0x874(r31) +/* 801F7DC4 001F4D24 D0 1F 08 78 */ stfs f0, 0x878(r31) +lbl_801F7DC8: +/* 801F7DC8 001F4D28 88 1F 04 00 */ lbz r0, 0x400(r31) +/* 801F7DCC 001F4D2C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801F7DD0 001F4D30 41 82 00 6C */ beq lbl_801F7E3C +/* 801F7DD4 001F4D34 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801F7DD8 001F4D38 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801F7DDC 001F4D3C 2C 00 00 0A */ cmpwi r0, 0xa +/* 801F7DE0 001F4D40 41 82 00 5C */ beq lbl_801F7E3C +/* 801F7DE4 001F4D44 2C 00 00 0E */ cmpwi r0, 0xe +/* 801F7DE8 001F4D48 41 82 00 54 */ beq lbl_801F7E3C +/* 801F7DEC 001F4D4C 2C 00 00 02 */ cmpwi r0, 2 +/* 801F7DF0 001F4D50 41 82 00 4C */ beq lbl_801F7E3C +/* 801F7DF4 001F4D54 2C 00 00 01 */ cmpwi r0, 1 +/* 801F7DF8 001F4D58 41 82 00 44 */ beq lbl_801F7E3C +/* 801F7DFC 001F4D5C C0 7F 00 E8 */ lfs f3, 0xe8(r31) +/* 801F7E00 001F4D60 C0 5F 08 74 */ lfs f2, 0x874(r31) +/* 801F7E04 001F4D64 C0 3F 08 78 */ lfs f1, 0x878(r31) +/* 801F7E08 001F4D68 C0 1F 08 70 */ lfs f0, 0x870(r31) +/* 801F7E0C 001F4D6C EC 43 00 B2 */ fmuls f2, f3, f2 +/* 801F7E10 001F4D70 EC 23 00 72 */ fmuls f1, f3, f1 +/* 801F7E14 001F4D74 EC 03 00 32 */ fmuls f0, f3, f0 +/* 801F7E18 001F4D78 D0 41 01 08 */ stfs f2, 0x108(r1) +/* 801F7E1C 001F4D7C D0 01 01 04 */ stfs f0, 0x104(r1) +/* 801F7E20 001F4D80 D0 21 01 0C */ stfs f1, 0x10c(r1) +/* 801F7E24 001F4D84 4B E2 37 11 */ bl Identity__10CAxisAngleFv +/* 801F7E28 001F4D88 7C 65 1B 78 */ mr r5, r3 +/* 801F7E2C 001F4D8C 7F E3 FB 78 */ mr r3, r31 +/* 801F7E30 001F4D90 38 81 01 04 */ addi r4, r1, 0x104 +/* 801F7E34 001F4D94 4B F2 45 65 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +/* 801F7E38 001F4D98 48 00 00 38 */ b lbl_801F7E70 +lbl_801F7E3C: +/* 801F7E3C 001F4D9C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801F7E40 001F4DA0 C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) +/* 801F7E44 001F4DA4 D0 1F 08 70 */ stfs f0, 0x870(r31) +/* 801F7E48 001F4DA8 C0 03 00 04 */ lfs f0, 4(r3) +/* 801F7E4C 001F4DAC D0 1F 08 74 */ stfs f0, 0x874(r31) +/* 801F7E50 001F4DB0 C0 03 00 08 */ lfs f0, 8(r3) +/* 801F7E54 001F4DB4 D0 1F 08 78 */ stfs f0, 0x878(r31) +/* 801F7E58 001F4DB8 C0 03 00 00 */ lfs f0, 0(r3) +/* 801F7E5C 001F4DBC D0 1F 08 7C */ stfs f0, 0x87c(r31) +/* 801F7E60 001F4DC0 C0 03 00 04 */ lfs f0, 4(r3) +/* 801F7E64 001F4DC4 D0 1F 08 80 */ stfs f0, 0x880(r31) +/* 801F7E68 001F4DC8 C0 03 00 08 */ lfs f0, 8(r3) +/* 801F7E6C 001F4DCC D0 1F 08 84 */ stfs f0, 0x884(r31) +lbl_801F7E70: +/* 801F7E70 001F4DD0 7F E4 FB 78 */ mr r4, r31 +/* 801F7E74 001F4DD4 38 61 00 2C */ addi r3, r1, 0x2c +/* 801F7E78 001F4DD8 4B E5 B4 A1 */ bl GetSfxHandle__6CActorCFv +/* 801F7E7C 001F4DDC 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 801F7E80 001F4DE0 28 00 00 00 */ cmplwi r0, 0 +/* 801F7E84 001F4DE4 90 01 00 4C */ stw r0, 0x4c(r1) +/* 801F7E88 001F4DE8 41 82 00 84 */ beq lbl_801F7F0C +/* 801F7E8C 001F4DEC 38 9F 08 98 */ addi r4, r31, 0x898 +/* 801F7E90 001F4DF0 38 6D 93 2C */ addi r3, r13, lbl_805A7EEC@sda21 +/* 801F7E94 001F4DF4 38 AD 93 30 */ addi r5, r13, lbl_805A7EF0@sda21 +/* 801F7E98 001F4DF8 4B E1 44 1D */ bl "Clamp__5CMathFRCfRCfRCf" +/* 801F7E9C 001F4DFC C0 23 00 00 */ lfs f1, 0(r3) +/* 801F7EA0 001F4E00 38 61 00 28 */ addi r3, r1, 0x28 +/* 801F7EA4 001F4E04 C0 01 00 08 */ lfs f0, 8(r1) +/* 801F7EA8 001F4E08 38 81 00 48 */ addi r4, r1, 0x48 +/* 801F7EAC 001F4E0C D0 3F 08 98 */ stfs f1, 0x898(r31) +/* 801F7EB0 001F4E10 38 A1 00 08 */ addi r5, r1, 8 +/* 801F7EB4 001F4E14 FC 00 00 50 */ fneg f0, f0 +/* 801F7EB8 001F4E18 C0 5F 08 98 */ lfs f2, 0x898(r31) +/* 801F7EBC 001F4E1C C0 3F 08 94 */ lfs f1, 0x894(r31) +/* 801F7EC0 001F4E20 EC 22 08 28 */ fsubs f1, f2, f1 +/* 801F7EC4 001F4E24 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 801F7EC8 001F4E28 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 801F7ECC 001F4E2C 4B E1 43 E9 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 801F7ED0 001F4E30 C0 43 00 00 */ lfs f2, 0(r3) +/* 801F7ED4 001F4E34 38 61 00 24 */ addi r3, r1, 0x24 +/* 801F7ED8 001F4E38 C0 22 AF 80 */ lfs f1, lbl_805ACCA0@sda21(r2) +/* 801F7EDC 001F4E3C D0 41 00 48 */ stfs f2, 0x48(r1) +/* 801F7EE0 001F4E40 80 01 00 4C */ lwz r0, 0x4c(r1) +/* 801F7EE4 001F4E44 C0 1F 08 94 */ lfs f0, 0x894(r31) +/* 801F7EE8 001F4E48 EC 00 10 2A */ fadds f0, f0, f2 +/* 801F7EEC 001F4E4C D0 1F 08 94 */ stfs f0, 0x894(r31) +/* 801F7EF0 001F4E50 C0 1F 08 94 */ lfs f0, 0x894(r31) +/* 801F7EF4 001F4E54 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801F7EF8 001F4E58 90 01 00 24 */ stw r0, 0x24(r1) +/* 801F7EFC 001F4E5C FC 00 00 1E */ fctiwz f0, f0 +/* 801F7F00 001F4E60 D8 01 02 70 */ stfd f0, 0x270(r1) +/* 801F7F04 001F4E64 80 81 02 74 */ lwz r4, 0x274(r1) +/* 801F7F08 001F4E68 48 0F 0F A5 */ bl PitchBend__11CSfxManagerF10CSfxHandlei +lbl_801F7F0C: +/* 801F7F0C 001F4E6C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801F7F10 001F4E70 C0 02 AF 78 */ lfs f0, lbl_805ACC98@sda21(r2) +/* 801F7F14 001F4E74 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 801F7F18 001F4E78 C0 21 00 08 */ lfs f1, 8(r1) +/* 801F7F1C 001F4E7C C0 45 00 00 */ lfs f2, 0(r5) +/* 801F7F20 001F4E80 7F E3 FB 78 */ mr r3, r31 +/* 801F7F24 001F4E84 7F C4 F3 78 */ mr r4, r30 +/* 801F7F28 001F4E88 D0 5F 08 7C */ stfs f2, 0x87c(r31) +/* 801F7F2C 001F4E8C C0 45 00 04 */ lfs f2, 4(r5) +/* 801F7F30 001F4E90 D0 5F 08 80 */ stfs f2, 0x880(r31) +/* 801F7F34 001F4E94 C0 45 00 08 */ lfs f2, 8(r5) +/* 801F7F38 001F4E98 D0 5F 08 84 */ stfs f2, 0x884(r31) +/* 801F7F3C 001F4E9C D0 1F 08 98 */ stfs f0, 0x898(r31) +/* 801F7F40 001F4EA0 4B E8 1B D9 */ bl Think__10CPatternedFfR13CStateManager +/* 801F7F44 001F4EA4 C0 1F 08 7C */ lfs f0, 0x87c(r31) +/* 801F7F48 001F4EA8 38 61 01 B8 */ addi r3, r1, 0x1b8 +/* 801F7F4C 001F4EAC D0 01 01 B8 */ stfs f0, 0x1b8(r1) +/* 801F7F50 001F4EB0 C0 1F 08 80 */ lfs f0, 0x880(r31) +/* 801F7F54 001F4EB4 D0 01 01 BC */ stfs f0, 0x1bc(r1) +/* 801F7F58 001F4EB8 C0 1F 08 84 */ lfs f0, 0x884(r31) +/* 801F7F5C 001F4EBC D0 01 01 C0 */ stfs f0, 0x1c0(r1) +/* 801F7F60 001F4EC0 48 11 C7 99 */ bl CanBeNormalized__9CVector3fCFv +/* 801F7F64 001F4EC4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801F7F68 001F4EC8 41 82 00 0C */ beq lbl_801F7F74 +/* 801F7F6C 001F4ECC 38 61 01 B8 */ addi r3, r1, 0x1b8 +/* 801F7F70 001F4ED0 48 11 C9 89 */ bl Normalize__9CVector3fFv +lbl_801F7F74: +/* 801F7F74 001F4ED4 38 7F 08 7C */ addi r3, r31, 0x87c +/* 801F7F78 001F4ED8 48 11 C9 41 */ bl Magnitude__9CVector3fCFv +/* 801F7F7C 001F4EDC C0 02 AF 84 */ lfs f0, lbl_805ACCA4@sda21(r2) +/* 801F7F80 001F4EE0 38 61 00 20 */ addi r3, r1, 0x20 +/* 801F7F84 001F4EE4 38 8D 93 34 */ addi r4, r13, lbl_805A7EF4@sda21 +/* 801F7F88 001F4EE8 EC 00 00 72 */ fmuls f0, f0, f1 +/* 801F7F8C 001F4EEC D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801F7F90 001F4EF0 4B E8 5E 51 */ bl "Min__5CMathFRCfRCf" +/* 801F7F94 001F4EF4 C0 63 00 00 */ lfs f3, 0(r3) +/* 801F7F98 001F4EF8 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 801F7F9C 001F4EFC C0 41 01 BC */ lfs f2, 0x1bc(r1) +/* 801F7FA0 001F4F00 38 83 66 F4 */ addi r4, r3, lbl_805A66F4@l +/* 801F7FA4 001F4F04 C0 21 01 C0 */ lfs f1, 0x1c0(r1) +/* 801F7FA8 001F4F08 38 61 00 F8 */ addi r3, r1, 0xf8 +/* 801F7FAC 001F4F0C C0 01 01 B8 */ lfs f0, 0x1b8(r1) +/* 801F7FB0 001F4F10 EC A3 00 B2 */ fmuls f5, f3, f2 +/* 801F7FB4 001F4F14 EC 83 00 72 */ fmuls f4, f3, f1 +/* 801F7FB8 001F4F18 C0 44 00 04 */ lfs f2, 4(r4) +/* 801F7FBC 001F4F1C EC 63 00 32 */ fmuls f3, f3, f0 +/* 801F7FC0 001F4F20 C0 24 00 08 */ lfs f1, 8(r4) +/* 801F7FC4 001F4F24 C0 04 00 00 */ lfs f0, 0(r4) +/* 801F7FC8 001F4F28 EC 42 28 2A */ fadds f2, f2, f5 +/* 801F7FCC 001F4F2C EC 21 20 2A */ fadds f1, f1, f4 +/* 801F7FD0 001F4F30 D0 61 00 E0 */ stfs f3, 0xe0(r1) +/* 801F7FD4 001F4F34 EC 00 18 2A */ fadds f0, f0, f3 +/* 801F7FD8 001F4F38 38 81 00 EC */ addi r4, r1, 0xec +/* 801F7FDC 001F4F3C D0 A1 00 E4 */ stfs f5, 0xe4(r1) +/* 801F7FE0 001F4F40 D0 81 00 E8 */ stfs f4, 0xe8(r1) +/* 801F7FE4 001F4F44 D0 01 00 EC */ stfs f0, 0xec(r1) +/* 801F7FE8 001F4F48 D0 41 00 F0 */ stfs f2, 0xf0(r1) +/* 801F7FEC 001F4F4C D0 21 00 F4 */ stfs f1, 0xf4(r1) +/* 801F7FF0 001F4F50 48 11 C8 61 */ bl AsNormalized__9CVector3fCFv +/* 801F7FF4 001F4F54 C0 41 00 F8 */ lfs f2, 0xf8(r1) +/* 801F7FF8 001F4F58 38 61 01 A0 */ addi r3, r1, 0x1a0 +/* 801F7FFC 001F4F5C C0 21 00 FC */ lfs f1, 0xfc(r1) +/* 801F8000 001F4F60 38 81 01 AC */ addi r4, r1, 0x1ac +/* 801F8004 001F4F64 C0 01 01 00 */ lfs f0, 0x100(r1) +/* 801F8008 001F4F68 D0 41 01 AC */ stfs f2, 0x1ac(r1) +/* 801F800C 001F4F6C D0 21 01 B0 */ stfs f1, 0x1b0(r1) +/* 801F8010 001F4F70 D0 01 01 B4 */ stfs f0, 0x1b4(r1) +/* 801F8014 001F4F74 C0 5F 00 5C */ lfs f2, 0x5c(r31) +/* 801F8018 001F4F78 C0 3F 00 4C */ lfs f1, 0x4c(r31) +/* 801F801C 001F4F7C C0 1F 00 3C */ lfs f0, 0x3c(r31) +/* 801F8020 001F4F80 D0 01 01 A0 */ stfs f0, 0x1a0(r1) +/* 801F8024 001F4F84 D0 21 01 A4 */ stfs f1, 0x1a4(r1) +/* 801F8028 001F4F88 D0 41 01 A8 */ stfs f2, 0x1a8(r1) +/* 801F802C 001F4F8C 48 11 C6 05 */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f +/* 801F8030 001F4F90 FC 20 0A 10 */ fabs f1, f1 +/* 801F8034 001F4F94 C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801F8038 001F4F98 FC 20 08 18 */ frsp f1, f1 +/* 801F803C 001F4F9C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F8040 001F4FA0 D0 21 00 44 */ stfs f1, 0x44(r1) +/* 801F8044 001F4FA4 40 81 01 CC */ ble lbl_801F8210 +/* 801F8048 001F4FA8 C0 42 AF 8C */ lfs f2, lbl_805ACCAC@sda21(r2) +/* 801F804C 001F4FAC 38 61 00 44 */ addi r3, r1, 0x44 +/* 801F8050 001F4FB0 C0 21 00 08 */ lfs f1, 8(r1) +/* 801F8054 001F4FB4 38 81 00 40 */ addi r4, r1, 0x40 +/* 801F8058 001F4FB8 C0 02 AF 90 */ lfs f0, lbl_805ACCB0@sda21(r2) +/* 801F805C 001F4FBC EC 22 00 72 */ fmuls f1, f2, f1 +/* 801F8060 001F4FC0 C0 42 AF 88 */ lfs f2, lbl_805ACCA8@sda21(r2) +/* 801F8064 001F4FC4 EC 01 00 24 */ fdivs f0, f1, f0 +/* 801F8068 001F4FC8 EC 02 00 32 */ fmuls f0, f2, f0 +/* 801F806C 001F4FCC D0 01 00 40 */ stfs f0, 0x40(r1) +/* 801F8070 001F4FD0 4B E8 5D 71 */ bl "Min__5CMathFRCfRCf" +/* 801F8074 001F4FD4 C1 03 00 00 */ lfs f8, 0(r3) +/* 801F8078 001F4FD8 38 61 00 D4 */ addi r3, r1, 0xd4 +/* 801F807C 001F4FDC C0 41 00 44 */ lfs f2, 0x44(r1) +/* 801F8080 001F4FE0 38 81 00 C8 */ addi r4, r1, 0xc8 +/* 801F8084 001F4FE4 C0 21 01 B0 */ lfs f1, 0x1b0(r1) +/* 801F8088 001F4FE8 C0 01 01 B4 */ lfs f0, 0x1b4(r1) +/* 801F808C 001F4FEC EC E2 40 28 */ fsubs f7, f2, f8 +/* 801F8090 001F4FF0 C0 61 01 A0 */ lfs f3, 0x1a0(r1) +/* 801F8094 001F4FF4 EC A8 00 72 */ fmuls f5, f8, f1 +/* 801F8098 001F4FF8 C0 41 01 A4 */ lfs f2, 0x1a4(r1) +/* 801F809C 001F4FFC EC 88 00 32 */ fmuls f4, f8, f0 +/* 801F80A0 001F5000 C0 21 01 A8 */ lfs f1, 0x1a8(r1) +/* 801F80A4 001F5004 EC C7 00 B2 */ fmuls f6, f7, f2 +/* 801F80A8 001F5008 C0 01 01 AC */ lfs f0, 0x1ac(r1) +/* 801F80AC 001F500C EC 47 00 72 */ fmuls f2, f7, f1 +/* 801F80B0 001F5010 D0 A1 00 C0 */ stfs f5, 0xc0(r1) +/* 801F80B4 001F5014 EC 67 00 F2 */ fmuls f3, f7, f3 +/* 801F80B8 001F5018 EC 28 00 32 */ fmuls f1, f8, f0 +/* 801F80BC 001F501C EC E5 30 2A */ fadds f7, f5, f6 +/* 801F80C0 001F5020 D0 C1 00 B4 */ stfs f6, 0xb4(r1) +/* 801F80C4 001F5024 EC A4 10 2A */ fadds f5, f4, f2 +/* 801F80C8 001F5028 EC 01 18 2A */ fadds f0, f1, f3 +/* 801F80CC 001F502C D0 61 00 B0 */ stfs f3, 0xb0(r1) +/* 801F80D0 001F5030 D0 41 00 B8 */ stfs f2, 0xb8(r1) +/* 801F80D4 001F5034 D0 21 00 BC */ stfs f1, 0xbc(r1) +/* 801F80D8 001F5038 D0 81 00 C4 */ stfs f4, 0xc4(r1) +/* 801F80DC 001F503C D0 01 00 C8 */ stfs f0, 0xc8(r1) +/* 801F80E0 001F5040 D0 E1 00 CC */ stfs f7, 0xcc(r1) +/* 801F80E4 001F5044 D0 A1 00 D0 */ stfs f5, 0xd0(r1) +/* 801F80E8 001F5048 48 11 C7 69 */ bl AsNormalized__9CVector3fCFv +/* 801F80EC 001F504C C0 E1 00 D4 */ lfs f7, 0xd4(r1) +/* 801F80F0 001F5050 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 801F80F4 001F5054 C0 C1 00 D8 */ lfs f6, 0xd8(r1) +/* 801F80F8 001F5058 38 81 00 98 */ addi r4, r1, 0x98 +/* 801F80FC 001F505C C0 A1 00 DC */ lfs f5, 0xdc(r1) +/* 801F8100 001F5060 D0 E1 01 94 */ stfs f7, 0x194(r1) +/* 801F8104 001F5064 D0 C1 01 98 */ stfs f6, 0x198(r1) +/* 801F8108 001F5068 D0 A1 01 9C */ stfs f5, 0x19c(r1) +/* 801F810C 001F506C C1 3F 00 58 */ lfs f9, 0x58(r31) +/* 801F8110 001F5070 C0 9F 00 48 */ lfs f4, 0x48(r31) +/* 801F8114 001F5074 C0 7F 00 38 */ lfs f3, 0x38(r31) +/* 801F8118 001F5078 EC 26 02 72 */ fmuls f1, f6, f9 +/* 801F811C 001F507C EC 47 01 32 */ fmuls f2, f7, f4 +/* 801F8120 001F5080 EC 05 00 F2 */ fmuls f0, f5, f3 +/* 801F8124 001F5084 EC 84 09 78 */ fmsubs f4, f4, f5, f1 +/* 801F8128 001F5088 ED 03 11 B8 */ fmsubs f8, f3, f6, f2 +/* 801F812C 001F508C EC 69 01 F8 */ fmsubs f3, f9, f7, f0 +/* 801F8130 001F5090 EC 04 01 B2 */ fmuls f0, f4, f6 +/* 801F8134 001F5094 D0 81 01 88 */ stfs f4, 0x188(r1) +/* 801F8138 001F5098 EC 28 01 F2 */ fmuls f1, f8, f7 +/* 801F813C 001F509C EC 43 01 72 */ fmuls f2, f3, f5 +/* 801F8140 001F50A0 D0 61 01 8C */ stfs f3, 0x18c(r1) +/* 801F8144 001F50A4 EC 07 00 F8 */ fmsubs f0, f7, f3, f0 +/* 801F8148 001F50A8 EC 25 09 38 */ fmsubs f1, f5, f4, f1 +/* 801F814C 001F50AC D1 01 01 90 */ stfs f8, 0x190(r1) +/* 801F8150 001F50B0 EC 46 12 38 */ fmsubs f2, f6, f8, f2 +/* 801F8154 001F50B4 D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 801F8158 001F50B8 D0 41 00 98 */ stfs f2, 0x98(r1) +/* 801F815C 001F50BC D0 21 00 9C */ stfs f1, 0x9c(r1) +/* 801F8160 001F50C0 48 11 C6 F1 */ bl AsNormalized__9CVector3fCFv +/* 801F8164 001F50C4 C0 A1 00 A4 */ lfs f5, 0xa4(r1) +/* 801F8168 001F50C8 38 61 02 40 */ addi r3, r1, 0x240 +/* 801F816C 001F50CC C0 81 00 A8 */ lfs f4, 0xa8(r1) +/* 801F8170 001F50D0 38 81 01 88 */ addi r4, r1, 0x188 +/* 801F8174 001F50D4 C0 61 00 AC */ lfs f3, 0xac(r1) +/* 801F8178 001F50D8 38 A1 01 7C */ addi r5, r1, 0x17c +/* 801F817C 001F50DC C0 C1 01 98 */ lfs f6, 0x198(r1) +/* 801F8180 001F50E0 38 C1 01 94 */ addi r6, r1, 0x194 +/* 801F8184 001F50E4 C0 E1 01 9C */ lfs f7, 0x19c(r1) +/* 801F8188 001F50E8 38 E1 00 8C */ addi r7, r1, 0x8c +/* 801F818C 001F50EC C1 01 01 94 */ lfs f8, 0x194(r1) +/* 801F8190 001F50F0 EC 26 00 F2 */ fmuls f1, f6, f3 +/* 801F8194 001F50F4 EC 07 01 72 */ fmuls f0, f7, f5 +/* 801F8198 001F50F8 D0 A1 01 7C */ stfs f5, 0x17c(r1) +/* 801F819C 001F50FC EC 48 01 32 */ fmuls f2, f8, f4 +/* 801F81A0 001F5100 EC 24 09 F8 */ fmsubs f1, f4, f7, f1 +/* 801F81A4 001F5104 D0 81 01 80 */ stfs f4, 0x180(r1) +/* 801F81A8 001F5108 EC 03 02 38 */ fmsubs f0, f3, f8, f0 +/* 801F81AC 001F510C EC 45 11 B8 */ fmsubs f2, f5, f6, f2 +/* 801F81B0 001F5110 D0 61 01 84 */ stfs f3, 0x184(r1) +/* 801F81B4 001F5114 D0 21 01 88 */ stfs f1, 0x188(r1) +/* 801F81B8 001F5118 D0 01 01 8C */ stfs f0, 0x18c(r1) +/* 801F81BC 001F511C D0 41 01 90 */ stfs f2, 0x190(r1) +/* 801F81C0 001F5120 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 801F81C4 001F5124 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 801F81C8 001F5128 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801F81CC 001F512C D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 801F81D0 001F5130 D0 21 00 90 */ stfs f1, 0x90(r1) +/* 801F81D4 001F5134 D0 41 00 94 */ stfs f2, 0x94(r1) +/* 801F81D8 001F5138 48 11 AC 85 */ bl __ct__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3fRC9CVector3f_0 +/* 801F81DC 001F513C 38 7F 00 34 */ addi r3, r31, 0x34 +/* 801F81E0 001F5140 38 81 02 40 */ addi r4, r1, 0x240 +/* 801F81E4 001F5144 48 11 A9 5D */ bl __as__12CTransform4fFRC12CTransform4f +/* 801F81E8 001F5148 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 801F81EC 001F514C 38 60 00 01 */ li r3, 1 +/* 801F81F0 001F5150 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801F81F4 001F5154 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 801F81F8 001F5158 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 801F81FC 001F515C 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801F8200 001F5160 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 801F8204 001F5164 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 801F8208 001F5168 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801F820C 001F516C 98 1F 00 E4 */ stb r0, 0xe4(r31) +lbl_801F8210: +/* 801F8210 001F5170 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801F8214 001F5174 88 03 03 00 */ lbz r0, 0x300(r3) +/* 801F8218 001F5178 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801F821C 001F517C 40 82 00 30 */ bne lbl_801F824C +/* 801F8220 001F5180 C0 21 00 08 */ lfs f1, 8(r1) +/* 801F8224 001F5184 38 7F 07 A0 */ addi r3, r31, 0x7a0 +/* 801F8228 001F5188 4B F7 D7 81 */ bl Update__13CBoneTrackingFf +/* 801F822C 001F518C 48 00 00 20 */ b lbl_801F824C +lbl_801F8230: +/* 801F8230 001F5190 C0 21 00 08 */ lfs f1, 8(r1) +/* 801F8234 001F5194 7F E3 FB 78 */ mr r3, r31 +/* 801F8238 001F5198 7F C4 F3 78 */ mr r4, r30 +/* 801F823C 001F519C 4B E8 24 51 */ bl UpdateAlphaDelta__10CPatternedFfR13CStateManager +/* 801F8240 001F51A0 C0 21 00 08 */ lfs f1, 8(r1) +/* 801F8244 001F51A4 7F E3 FB 78 */ mr r3, r31 +/* 801F8248 001F51A8 4B E8 23 71 */ bl UpdateDamageColor__10CPatternedFf +lbl_801F824C: +/* 801F824C 001F51AC 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 801F8250 001F51B0 40 82 02 74 */ bne lbl_801F84C4 +/* 801F8254 001F51B4 80 7F 08 9C */ lwz r3, 0x89c(r31) +/* 801F8258 001F51B8 88 03 00 68 */ lbz r0, 0x68(r3) +/* 801F825C 001F51BC 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801F8260 001F51C0 40 82 00 A8 */ bne lbl_801F8308 +/* 801F8264 001F51C4 7F E3 FB 78 */ mr r3, r31 +/* 801F8268 001F51C8 38 80 00 01 */ li r4, 1 +/* 801F826C 001F51CC 4B E5 B1 81 */ bl SetMuted__6CActorFb +/* 801F8270 001F51D0 7F E3 FB 78 */ mr r3, r31 +/* 801F8274 001F51D4 38 80 00 00 */ li r4, 0 +/* 801F8278 001F51D8 4B E5 B1 75 */ bl SetMuted__6CActorFb +/* 801F827C 001F51DC 80 7F 08 9C */ lwz r3, 0x89c(r31) +/* 801F8280 001F51E0 7F C4 F3 78 */ mr r4, r30 +/* 801F8284 001F51E4 38 BF 00 34 */ addi r5, r31, 0x34 +/* 801F8288 001F51E8 80 DF 00 64 */ lwz r6, 0x64(r31) +/* 801F828C 001F51EC 81 83 00 00 */ lwz r12, 0(r3) +/* 801F8290 001F51F0 81 8C 00 08 */ lwz r12, 8(r12) +/* 801F8294 001F51F4 7D 89 03 A6 */ mtctr r12 +/* 801F8298 001F51F8 4E 80 04 21 */ bctrl +/* 801F829C 001F51FC C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 801F82A0 001F5200 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 801F82A4 001F5204 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 801F82A8 001F5208 38 83 66 70 */ addi r4, r3, skIdentity4f@l +/* 801F82AC 001F520C C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801F82B0 001F5210 38 7F 00 34 */ addi r3, r31, 0x34 +/* 801F82B4 001F5214 D0 01 01 70 */ stfs f0, 0x170(r1) +/* 801F82B8 001F5218 D0 21 01 74 */ stfs f1, 0x174(r1) +/* 801F82BC 001F521C D0 41 01 78 */ stfs f2, 0x178(r1) +/* 801F82C0 001F5220 48 11 A8 81 */ bl __as__12CTransform4fFRC12CTransform4f +/* 801F82C4 001F5224 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 801F82C8 001F5228 38 A0 00 01 */ li r5, 1 +/* 801F82CC 001F522C 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 801F82D0 001F5230 7F E3 FB 78 */ mr r3, r31 +/* 801F82D4 001F5234 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 801F82D8 001F5238 38 81 01 70 */ addi r4, r1, 0x170 +/* 801F82DC 001F523C 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 801F82E0 001F5240 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 801F82E4 001F5244 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 801F82E8 001F5248 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 801F82EC 001F524C 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d +/* 801F82F0 001F5250 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 801F82F4 001F5254 4B E5 AB 99 */ bl SetTranslation__6CActorFRC9CVector3f +/* 801F82F8 001F5258 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801F82FC 001F525C C0 22 AF 60 */ lfs f1, lbl_805ACC80@sda21(r2) +/* 801F8300 001F5260 4B F4 25 8D */ bl SetPlaybackRate__15CBodyControllerFf +/* 801F8304 001F5264 48 00 00 94 */ b lbl_801F8398 +lbl_801F8308: +/* 801F8308 001F5268 A0 BF 00 C4 */ lhz r5, 0xc4(r31) +/* 801F830C 001F526C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801F8310 001F5270 C3 C2 AF 94 */ lfs f30, lbl_805ACCB4@sda21(r2) +/* 801F8314 001F5274 7C 05 00 40 */ cmplw r5, r0 +/* 801F8318 001F5278 41 82 00 3C */ beq lbl_801F8354 +/* 801F831C 001F527C B0 A1 00 0C */ sth r5, 0xc(r1) +/* 801F8320 001F5280 7F C3 F3 78 */ mr r3, r30 +/* 801F8324 001F5284 38 81 00 10 */ addi r4, r1, 0x10 +/* 801F8328 001F5288 B0 A1 00 10 */ sth r5, 0x10(r1) +/* 801F832C 001F528C 4B E5 42 79 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801F8330 001F5290 7C 64 1B 78 */ mr r4, r3 +/* 801F8334 001F5294 38 61 00 50 */ addi r3, r1, 0x50 +/* 801F8338 001F5298 4B EA E5 29 */ bl "__ct__26TCastToPtr<12CScriptWater>FP7CEntity" +/* 801F833C 001F529C 80 83 00 04 */ lwz r4, 4(r3) +/* 801F8340 001F52A0 28 04 00 00 */ cmplwi r4, 0 +/* 801F8344 001F52A4 41 82 00 10 */ beq lbl_801F8354 +/* 801F8348 001F52A8 38 61 01 C4 */ addi r3, r1, 0x1c4 +/* 801F834C 001F52AC 4B E7 E3 81 */ bl GetTriggerBoundsWR__14CScriptTriggerCFv +/* 801F8350 001F52B0 C3 C1 01 D8 */ lfs f30, 0x1d8(r1) +lbl_801F8354: +/* 801F8354 001F52B4 83 9F 08 9C */ lwz r28, 0x89c(r31) +/* 801F8358 001F52B8 7F E3 FB 78 */ mr r3, r31 +/* 801F835C 001F52BC 4B E8 07 2D */ bl CalcDyingThinkRate__10CPatternedFv +/* 801F8360 001F52C0 81 9C 00 00 */ lwz r12, 0(r28) +/* 801F8364 001F52C4 FC 40 F0 90 */ fmr f2, f30 +/* 801F8368 001F52C8 C0 01 00 08 */ lfs f0, 8(r1) +/* 801F836C 001F52CC 7F 83 E3 78 */ mr r3, r28 +/* 801F8370 001F52D0 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801F8374 001F52D4 7F C4 F3 78 */ mr r4, r30 +/* 801F8378 001F52D8 EC 20 00 72 */ fmuls f1, f0, f1 +/* 801F837C 001F52DC 7D 89 03 A6 */ mtctr r12 +/* 801F8380 001F52E0 4E 80 04 21 */ bctrl +/* 801F8384 001F52E4 80 7F 00 64 */ lwz r3, 0x64(r31) +/* 801F8388 001F52E8 7F C5 F3 78 */ mr r5, r30 +/* 801F838C 001F52EC C0 21 00 08 */ lfs f1, 8(r1) +/* 801F8390 001F52F0 38 9F 00 34 */ addi r4, r31, 0x34 +/* 801F8394 001F52F4 4B F1 D1 F9 */ bl AdvanceParticles__10CModelDataFRC12CTransform4ffR13CStateManager +lbl_801F8398: +/* 801F8398 001F52F8 80 7F 08 9C */ lwz r3, 0x89c(r31) +/* 801F839C 001F52FC 88 03 00 68 */ lbz r0, 0x68(r3) +/* 801F83A0 001F5300 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801F83A4 001F5304 41 82 00 6C */ beq lbl_801F8410 +/* 801F83A8 001F5308 88 1F 04 00 */ lbz r0, 0x400(r31) +/* 801F83AC 001F530C 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 801F83B0 001F5310 40 82 00 60 */ bne lbl_801F8410 +/* 801F83B4 001F5314 88 1F 04 00 */ lbz r0, 0x400(r31) +/* 801F83B8 001F5318 38 60 00 01 */ li r3, 1 +/* 801F83BC 001F531C 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801F83C0 001F5320 C0 02 AF 98 */ lfs f0, lbl_805ACCB8@sda21(r2) +/* 801F83C4 001F5324 98 1F 04 00 */ stb r0, 0x400(r31) +/* 801F83C8 001F5328 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801F83CC 001F532C 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 801F83D0 001F5330 D0 1F 03 E8 */ stfs f0, 0x3e8(r31) +/* 801F83D4 001F5334 7F E3 FB 78 */ mr r3, r31 +/* 801F83D8 001F5338 4B F2 28 C9 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f +/* 801F83DC 001F533C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801F83E0 001F5340 C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) +/* 801F83E4 001F5344 D0 1F 01 50 */ stfs f0, 0x150(r31) +/* 801F83E8 001F5348 C0 03 00 04 */ lfs f0, 4(r3) +/* 801F83EC 001F534C D0 1F 01 54 */ stfs f0, 0x154(r31) +/* 801F83F0 001F5350 C0 03 00 08 */ lfs f0, 8(r3) +/* 801F83F4 001F5354 D0 1F 01 58 */ stfs f0, 0x158(r31) +/* 801F83F8 001F5358 C0 03 00 00 */ lfs f0, 0(r3) +/* 801F83FC 001F535C D0 1F 08 70 */ stfs f0, 0x870(r31) +/* 801F8400 001F5360 C0 03 00 04 */ lfs f0, 4(r3) +/* 801F8404 001F5364 D0 1F 08 74 */ stfs f0, 0x874(r31) +/* 801F8408 001F5368 C0 03 00 08 */ lfs f0, 8(r3) +/* 801F840C 001F536C D0 1F 08 78 */ stfs f0, 0x878(r31) +lbl_801F8410: +/* 801F8410 001F5370 80 1F 08 9C */ lwz r0, 0x89c(r31) +/* 801F8414 001F5374 28 00 00 00 */ cmplwi r0, 0 +/* 801F8418 001F5378 41 82 00 AC */ beq lbl_801F84C4 +/* 801F841C 001F537C C0 5F 08 8C */ lfs f2, 0x88c(r31) +/* 801F8420 001F5380 C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801F8424 001F5384 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801F8428 001F5388 7C 00 00 26 */ mfcr r0 +/* 801F842C 001F538C C0 21 00 08 */ lfs f1, 8(r1) +/* 801F8430 001F5390 C0 02 AF 64 */ lfs f0, lbl_805ACC84@sda21(r2) +/* 801F8434 001F5394 54 1A 17 FE */ rlwinm r26, r0, 2, 0x1f, 0x1f +/* 801F8438 001F5398 EC 22 08 28 */ fsubs f1, f2, f1 +/* 801F843C 001F539C D0 3F 08 8C */ stfs f1, 0x88c(r31) +/* 801F8440 001F53A0 C0 3F 08 8C */ lfs f1, 0x88c(r31) +/* 801F8444 001F53A4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F8448 001F53A8 40 80 00 7C */ bge lbl_801F84C4 +/* 801F844C 001F53AC 80 7F 08 9C */ lwz r3, 0x89c(r31) +/* 801F8450 001F53B0 80 03 00 4C */ lwz r0, 0x4c(r3) +/* 801F8454 001F53B4 2C 00 00 02 */ cmpwi r0, 2 +/* 801F8458 001F53B8 40 81 00 18 */ ble lbl_801F8470 +/* 801F845C 001F53BC 38 9F 08 8C */ addi r4, r31, 0x88c +/* 801F8460 001F53C0 38 6D 93 38 */ addi r3, r13, lbl_805A7EF8@sda21 +/* 801F8464 001F53C4 4B E8 59 7D */ bl "Min__5CMathFRCfRCf" +/* 801F8468 001F53C8 C0 03 00 00 */ lfs f0, 0(r3) +/* 801F846C 001F53CC D0 1F 08 8C */ stfs f0, 0x88c(r31) +lbl_801F8470: +/* 801F8470 001F53D0 28 1A 00 00 */ cmplwi r26, 0 +/* 801F8474 001F53D4 41 82 00 50 */ beq lbl_801F84C4 +/* 801F8478 001F53D8 C0 3F 08 8C */ lfs f1, 0x88c(r31) +/* 801F847C 001F53DC C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801F8480 001F53E0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F8484 001F53E4 4C 40 13 82 */ cror 2, 0, 2 +/* 801F8488 001F53E8 40 82 00 3C */ bne lbl_801F84C4 +/* 801F848C 001F53EC 3C 80 80 3D */ lis r4, lbl_803D247C@ha +/* 801F8490 001F53F0 38 61 00 7C */ addi r3, r1, 0x7c +/* 801F8494 001F53F4 38 84 24 7C */ addi r4, r4, lbl_803D247C@l +/* 801F8498 001F53F8 4B E0 C8 21 */ bl string_l__4rstlFPCc +/* 801F849C 001F53FC 7F E3 FB 78 */ mr r3, r31 +/* 801F84A0 001F5400 4B EA A4 59 */ bl GetStateMachine__3CAiFv +/* 801F84A4 001F5404 7C 66 1B 78 */ mr r6, r3 +/* 801F84A8 001F5408 7F C4 F3 78 */ mr r4, r30 +/* 801F84AC 001F540C 7F E5 FB 78 */ mr r5, r31 +/* 801F84B0 001F5410 38 7F 03 30 */ addi r3, r31, 0x330 +/* 801F84B4 001F5414 38 E1 00 7C */ addi r7, r1, 0x7c +/* 801F84B8 001F5418 4B E8 77 4D */ bl "SetState__18CStateMachineStateFR13CStateManagerR3CAiPC13CStateMachineRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801F84BC 001F541C 38 61 00 7C */ addi r3, r1, 0x7c +/* 801F84C0 001F5420 48 14 56 21 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801F84C4: +/* 801F84C4 001F5424 E3 E1 02 A8 */ psq_l f31, 680(r1), 0, qr0 +/* 801F84C8 001F5428 CB E1 02 A0 */ lfd f31, 0x2a0(r1) +/* 801F84CC 001F542C E3 C1 02 98 */ psq_l f30, 664(r1), 0, qr0 +/* 801F84D0 001F5430 CB C1 02 90 */ lfd f30, 0x290(r1) +/* 801F84D4 001F5434 BB 41 02 78 */ lmw r26, 0x278(r1) +/* 801F84D8 001F5438 80 01 02 B4 */ lwz r0, 0x2b4(r1) +/* 801F84DC 001F543C 7C 08 03 A6 */ mtlr r0 +/* 801F84E0 001F5440 38 21 02 B0 */ addi r1, r1, 0x2b0 +/* 801F84E4 001F5444 4E 80 00 20 */ blr + +.global PreRender__13CFlyingPirateFR13CStateManagerRC14CFrustumPlanes +PreRender__13CFlyingPirateFR13CStateManagerRC14CFrustumPlanes: +/* 801F84E8 001F5448 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801F84EC 001F544C 7C 08 02 A6 */ mflr r0 +/* 801F84F0 001F5450 90 01 00 34 */ stw r0, 0x34(r1) +/* 801F84F4 001F5454 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801F84F8 001F5458 7C BF 2B 78 */ mr r31, r5 +/* 801F84FC 001F545C 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801F8500 001F5460 7C 9E 23 78 */ mr r30, r4 +/* 801F8504 001F5464 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801F8508 001F5468 7C 7D 1B 78 */ mr r29, r3 +/* 801F850C 001F546C 80 63 08 9C */ lwz r3, 0x89c(r3) +/* 801F8510 001F5470 28 03 00 00 */ cmplwi r3, 0 +/* 801F8514 001F5474 41 82 00 40 */ beq lbl_801F8554 +/* 801F8518 001F5478 88 03 00 68 */ lbz r0, 0x68(r3) +/* 801F851C 001F547C 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801F8520 001F5480 41 82 00 34 */ beq lbl_801F8554 +/* 801F8524 001F5484 80 BD 00 64 */ lwz r5, 0x64(r29) +/* 801F8528 001F5488 38 81 00 14 */ addi r4, r1, 0x14 +/* 801F852C 001F548C C0 5D 00 60 */ lfs f2, 0x60(r29) +/* 801F8530 001F5490 C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 801F8534 001F5494 C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 801F8538 001F5498 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801F853C 001F549C D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801F8540 001F54A0 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 801F8544 001F54A4 81 83 00 00 */ lwz r12, 0(r3) +/* 801F8548 001F54A8 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801F854C 001F54AC 7D 89 03 A6 */ mtctr r12 +/* 801F8550 001F54B0 4E 80 04 21 */ bctrl +lbl_801F8554: +/* 801F8554 001F54B4 7F A3 EB 78 */ mr r3, r29 +/* 801F8558 001F54B8 7F C4 F3 78 */ mr r4, r30 +/* 801F855C 001F54BC 7F E5 FB 78 */ mr r5, r31 +/* 801F8560 001F54C0 4B E7 FD 7D */ bl PreRender__10CPatternedFR13CStateManagerRC14CFrustumPlanes +/* 801F8564 001F54C4 80 BD 00 64 */ lwz r5, 0x64(r29) +/* 801F8568 001F54C8 7F C4 F3 78 */ mr r4, r30 +/* 801F856C 001F54CC 81 1D 04 50 */ lwz r8, 0x450(r29) +/* 801F8570 001F54D0 38 7D 07 A0 */ addi r3, r29, 0x7a0 +/* 801F8574 001F54D4 C0 05 00 00 */ lfs f0, 0(r5) +/* 801F8578 001F54D8 38 DD 00 34 */ addi r6, r29, 0x34 +/* 801F857C 001F54DC 38 E1 00 08 */ addi r7, r1, 8 +/* 801F8580 001F54E0 D0 01 00 08 */ stfs f0, 8(r1) +/* 801F8584 001F54E4 C0 05 00 04 */ lfs f0, 4(r5) +/* 801F8588 001F54E8 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801F858C 001F54EC C0 05 00 08 */ lfs f0, 8(r5) +/* 801F8590 001F54F0 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801F8594 001F54F4 80 BD 00 64 */ lwz r5, 0x64(r29) +/* 801F8598 001F54F8 80 A5 00 10 */ lwz r5, 0x10(r5) +/* 801F859C 001F54FC 4B F7 D3 75 */ bl PreRender__13CBoneTrackingFRC13CStateManagerR9CAnimDataRC12CTransform4fRC9CVector3fRC15CBodyController +/* 801F85A0 001F5500 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801F85A4 001F5504 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801F85A8 001F5508 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801F85AC 001F550C 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801F85B0 001F5510 7C 08 03 A6 */ mtlr r0 +/* 801F85B4 001F5514 38 21 00 30 */ addi r1, r1, 0x30 +/* 801F85B8 001F5518 4E 80 00 20 */ blr + +.global AddToRenderer__13CFlyingPirateCFRC14CFrustumPlanesRC13CStateManager +AddToRenderer__13CFlyingPirateCFRC14CFrustumPlanesRC13CStateManager: +/* 801F85BC 001F551C 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801F85C0 001F5520 7C 08 02 A6 */ mflr r0 +/* 801F85C4 001F5524 90 01 00 44 */ stw r0, 0x44(r1) +/* 801F85C8 001F5528 BF 41 00 28 */ stmw r26, 0x28(r1) +/* 801F85CC 001F552C 7C 7A 1B 78 */ mr r26, r3 +/* 801F85D0 001F5530 7C 9B 23 78 */ mr r27, r4 +/* 801F85D4 001F5534 7C BC 2B 78 */ mr r28, r5 +/* 801F85D8 001F5538 3B A0 00 00 */ li r29, 0 +/* 801F85DC 001F553C 3B DA 06 88 */ addi r30, r26, 0x688 +/* 801F85E0 001F5540 48 00 00 5C */ b lbl_801F863C +lbl_801F85E4: +/* 801F85E4 001F5544 83 FE 00 04 */ lwz r31, 4(r30) +/* 801F85E8 001F5548 38 61 00 08 */ addi r3, r1, 8 +/* 801F85EC 001F554C 7F E4 FB 78 */ mr r4, r31 +/* 801F85F0 001F5550 81 9F 00 00 */ lwz r12, 0(r31) +/* 801F85F4 001F5554 81 8C 00 5C */ lwz r12, 0x5c(r12) +/* 801F85F8 001F5558 7D 89 03 A6 */ mtctr r12 +/* 801F85FC 001F555C 4E 80 04 21 */ bctrl +/* 801F8600 001F5560 7F 63 DB 78 */ mr r3, r27 +/* 801F8604 001F5564 38 81 00 08 */ addi r4, r1, 8 +/* 801F8608 001F5568 48 14 CB 81 */ bl "BoxInFrustumPlanes__14CFrustumPlanesCFRCQ24rstl24optional_object<6CAABox>" +/* 801F860C 001F556C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801F8610 001F5570 38 60 00 00 */ li r3, 0 +/* 801F8614 001F5574 98 61 00 20 */ stb r3, 0x20(r1) +/* 801F8618 001F5578 41 82 00 1C */ beq lbl_801F8634 +/* 801F861C 001F557C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801F8620 001F5580 7F E4 FB 78 */ mr r4, r31 +/* 801F8624 001F5584 81 83 00 00 */ lwz r12, 0(r3) +/* 801F8628 001F5588 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801F862C 001F558C 7D 89 03 A6 */ mtctr r12 +/* 801F8630 001F5590 4E 80 04 21 */ bctrl +lbl_801F8634: +/* 801F8634 001F5594 3B DE 00 08 */ addi r30, r30, 8 +/* 801F8638 001F5598 3B BD 00 01 */ addi r29, r29, 1 +lbl_801F863C: +/* 801F863C 001F559C 80 1A 06 84 */ lwz r0, 0x684(r26) +/* 801F8640 001F55A0 7C 1D 00 00 */ cmpw r29, r0 +/* 801F8644 001F55A4 41 80 FF A0 */ blt lbl_801F85E4 +/* 801F8648 001F55A8 7F 43 D3 78 */ mr r3, r26 +/* 801F864C 001F55AC 7F 64 DB 78 */ mr r4, r27 +/* 801F8650 001F55B0 7F 85 E3 78 */ mr r5, r28 +/* 801F8654 001F55B4 4B E7 F2 65 */ bl AddToRenderer__10CPatternedCFRC14CFrustumPlanesRC13CStateManager +/* 801F8658 001F55B8 BB 41 00 28 */ lmw r26, 0x28(r1) +/* 801F865C 001F55BC 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801F8660 001F55C0 7C 08 03 A6 */ mtlr r0 +/* 801F8664 001F55C4 38 21 00 40 */ addi r1, r1, 0x40 +/* 801F8668 001F55C8 4E 80 00 20 */ blr + +.global CalculateRenderBounds__13CFlyingPirateFv +CalculateRenderBounds__13CFlyingPirateFv: +/* 801F866C 001F55CC 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801F8670 001F55D0 7C 08 02 A6 */ mflr r0 +/* 801F8674 001F55D4 90 01 00 64 */ stw r0, 0x64(r1) +/* 801F8678 001F55D8 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 801F867C 001F55DC 7C 7F 1B 78 */ mr r31, r3 +/* 801F8680 001F55E0 80 83 08 9C */ lwz r4, 0x89c(r3) +/* 801F8684 001F55E4 28 04 00 00 */ cmplwi r4, 0 +/* 801F8688 001F55E8 41 82 00 C4 */ beq lbl_801F874C +/* 801F868C 001F55EC 88 04 00 68 */ lbz r0, 0x68(r4) +/* 801F8690 001F55F0 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801F8694 001F55F4 41 82 00 B8 */ beq lbl_801F874C +/* 801F8698 001F55F8 38 61 00 38 */ addi r3, r1, 0x38 +/* 801F869C 001F55FC 48 01 41 BD */ bl CalculateRenderBounds__8CRagDollCFv +/* 801F86A0 001F5600 80 DF 00 64 */ lwz r6, 0x64(r31) +/* 801F86A4 001F5604 38 61 00 20 */ addi r3, r1, 0x20 +/* 801F86A8 001F5608 C0 62 AF 9C */ lfs f3, lbl_805ACCBC@sda21(r2) +/* 801F86AC 001F560C 38 81 00 14 */ addi r4, r1, 0x14 +/* 801F86B0 001F5610 C0 26 00 00 */ lfs f1, 0(r6) +/* 801F86B4 001F5614 38 A1 00 08 */ addi r5, r1, 8 +/* 801F86B8 001F5618 C0 06 00 04 */ lfs f0, 4(r6) +/* 801F86BC 001F561C C0 46 00 08 */ lfs f2, 8(r6) +/* 801F86C0 001F5620 ED 03 00 72 */ fmuls f8, f3, f1 +/* 801F86C4 001F5624 C0 21 00 44 */ lfs f1, 0x44(r1) +/* 801F86C8 001F5628 EC E3 00 32 */ fmuls f7, f3, f0 +/* 801F86CC 001F562C C0 01 00 48 */ lfs f0, 0x48(r1) +/* 801F86D0 001F5630 EC C3 00 B2 */ fmuls f6, f3, f2 +/* 801F86D4 001F5634 C0 61 00 4C */ lfs f3, 0x4c(r1) +/* 801F86D8 001F5638 C0 41 00 38 */ lfs f2, 0x38(r1) +/* 801F86DC 001F563C EC A1 40 2A */ fadds f5, f1, f8 +/* 801F86E0 001F5640 C0 21 00 3C */ lfs f1, 0x3c(r1) +/* 801F86E4 001F5644 EC 80 38 2A */ fadds f4, f0, f7 +/* 801F86E8 001F5648 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 801F86EC 001F564C EC 63 30 2A */ fadds f3, f3, f6 +/* 801F86F0 001F5650 EC 42 40 28 */ fsubs f2, f2, f8 +/* 801F86F4 001F5654 EC 21 38 28 */ fsubs f1, f1, f7 +/* 801F86F8 001F5658 D0 A1 00 08 */ stfs f5, 8(r1) +/* 801F86FC 001F565C EC 00 30 28 */ fsubs f0, f0, f6 +/* 801F8700 001F5660 D0 81 00 0C */ stfs f4, 0xc(r1) +/* 801F8704 001F5664 D0 61 00 10 */ stfs f3, 0x10(r1) +/* 801F8708 001F5668 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801F870C 001F566C D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801F8710 001F5670 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801F8714 001F5674 48 13 FD F5 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801F8718 001F5678 80 61 00 20 */ lwz r3, 0x20(r1) +/* 801F871C 001F567C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801F8720 001F5680 90 7F 00 9C */ stw r3, 0x9c(r31) +/* 801F8724 001F5684 90 1F 00 A0 */ stw r0, 0xa0(r31) +/* 801F8728 001F5688 80 01 00 28 */ lwz r0, 0x28(r1) +/* 801F872C 001F568C 90 1F 00 A4 */ stw r0, 0xa4(r31) +/* 801F8730 001F5690 80 61 00 2C */ lwz r3, 0x2c(r1) +/* 801F8734 001F5694 80 01 00 30 */ lwz r0, 0x30(r1) +/* 801F8738 001F5698 90 7F 00 A8 */ stw r3, 0xa8(r31) +/* 801F873C 001F569C 90 1F 00 AC */ stw r0, 0xac(r31) +/* 801F8740 001F56A0 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801F8744 001F56A4 90 1F 00 B0 */ stw r0, 0xb0(r31) +/* 801F8748 001F56A8 48 00 00 0C */ b lbl_801F8754 +lbl_801F874C: +/* 801F874C 001F56AC 7F E3 FB 78 */ mr r3, r31 +/* 801F8750 001F56B0 4B E5 C9 85 */ bl CalculateRenderBounds__6CActorFv +lbl_801F8754: +/* 801F8754 001F56B4 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801F8758 001F56B8 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 801F875C 001F56BC 7C 08 03 A6 */ mtlr r0 +/* 801F8760 001F56C0 38 21 00 60 */ addi r1, r1, 0x60 +/* 801F8764 001F56C4 4E 80 00 20 */ blr + +.global DoUserAnimEvent__13CFlyingPirateFR13CStateManagerRC13CInt32POINode14EUserEventType +DoUserAnimEvent__13CFlyingPirateFR13CStateManagerRC13CInt32POINode14EUserEventType: +/* 801F8768 001F56C8 94 21 FE 00 */ stwu r1, -0x200(r1) +/* 801F876C 001F56CC 7C 08 02 A6 */ mflr r0 +/* 801F8770 001F56D0 90 01 02 04 */ stw r0, 0x204(r1) +/* 801F8774 001F56D4 DB E1 01 F0 */ stfd f31, 0x1f0(r1) +/* 801F8778 001F56D8 F3 E1 01 F8 */ psq_st f31, 504(r1), 0, qr0 +/* 801F877C 001F56DC BE E1 01 CC */ stmw r23, 0x1cc(r1) +/* 801F8780 001F56E0 7C DB 33 78 */ mr r27, r6 +/* 801F8784 001F56E4 FF E0 08 90 */ fmr f31, f1 +/* 801F8788 001F56E8 2C 1B 00 0B */ cmpwi r27, 0xb +/* 801F878C 001F56EC 7C 78 1B 78 */ mr r24, r3 +/* 801F8790 001F56F0 7C 99 23 78 */ mr r25, r4 +/* 801F8794 001F56F4 7C BA 2B 78 */ mr r26, r5 +/* 801F8798 001F56F8 38 00 00 00 */ li r0, 0 +/* 801F879C 001F56FC 41 82 02 D4 */ beq lbl_801F8A70 +/* 801F87A0 001F5700 40 80 00 10 */ bge lbl_801F87B0 +/* 801F87A4 001F5704 2C 1B 00 00 */ cmpwi r27, 0 +/* 801F87A8 001F5708 41 82 00 14 */ beq lbl_801F87BC +/* 801F87AC 001F570C 48 00 03 48 */ b lbl_801F8AF4 +lbl_801F87B0: +/* 801F87B0 001F5710 2C 1B 00 13 */ cmpwi r27, 0x13 +/* 801F87B4 001F5714 41 82 02 BC */ beq lbl_801F8A70 +/* 801F87B8 001F5718 48 00 03 3C */ b lbl_801F8AF4 +lbl_801F87BC: +/* 801F87BC 001F571C 88 18 06 A1 */ lbz r0, 0x6a1(r24) +/* 801F87C0 001F5720 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801F87C4 001F5724 41 82 00 0C */ beq lbl_801F87D0 +/* 801F87C8 001F5728 3B F8 05 C8 */ addi r31, r24, 0x5c8 +/* 801F87CC 001F572C 48 00 00 08 */ b lbl_801F87D4 +lbl_801F87D0: +/* 801F87D0 001F5730 3B F8 05 A0 */ addi r31, r24, 0x5a0 +lbl_801F87D4: +/* 801F87D4 001F5734 80 1F 00 08 */ lwz r0, 8(r31) +/* 801F87D8 001F5738 28 00 00 00 */ cmplwi r0, 0 +/* 801F87DC 001F573C 41 82 00 0C */ beq lbl_801F87E8 +/* 801F87E0 001F5740 38 60 00 01 */ li r3, 1 +/* 801F87E4 001F5744 48 00 00 3C */ b lbl_801F8820 +lbl_801F87E8: +/* 801F87E8 001F5748 88 1F 00 04 */ lbz r0, 4(r31) +/* 801F87EC 001F574C 28 00 00 00 */ cmplwi r0, 0 +/* 801F87F0 001F5750 41 82 00 2C */ beq lbl_801F881C +/* 801F87F4 001F5754 80 7F 00 00 */ lwz r3, 0(r31) +/* 801F87F8 001F5758 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801F87FC 001F575C 28 00 00 00 */ cmplwi r0, 0 +/* 801F8800 001F5760 41 82 00 1C */ beq lbl_801F881C +/* 801F8804 001F5764 7F E3 FB 78 */ mr r3, r31 +/* 801F8808 001F5768 48 14 86 05 */ bl GetObj__6CTokenFv +/* 801F880C 001F576C 80 03 00 04 */ lwz r0, 4(r3) +/* 801F8810 001F5770 38 60 00 01 */ li r3, 1 +/* 801F8814 001F5774 90 1F 00 08 */ stw r0, 8(r31) +/* 801F8818 001F5778 48 00 00 08 */ b lbl_801F8820 +lbl_801F881C: +/* 801F881C 001F577C 38 60 00 00 */ li r3, 0 +lbl_801F8820: +/* 801F8820 001F5780 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801F8824 001F5784 41 82 02 44 */ beq lbl_801F8A68 +/* 801F8828 001F5788 A0 18 00 08 */ lhz r0, 8(r24) +/* 801F882C 001F578C 7F 23 CB 78 */ mr r3, r25 +/* 801F8830 001F5790 38 81 00 50 */ addi r4, r1, 0x50 +/* 801F8834 001F5794 38 A0 00 09 */ li r5, 9 +/* 801F8838 001F5798 B0 01 00 4C */ sth r0, 0x4c(r1) +/* 801F883C 001F579C 38 C0 00 10 */ li r6, 0x10 +/* 801F8840 001F57A0 B0 01 00 50 */ sth r0, 0x50(r1) +/* 801F8844 001F57A4 4B E4 CE ED */ bl CanCreateProjectile__13CStateManagerCF9TUniqueId11EWeaponTypei +/* 801F8848 001F57A8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801F884C 001F57AC 41 82 02 1C */ beq lbl_801F8A68 +/* 801F8850 001F57B0 7F 04 C3 78 */ mr r4, r24 +/* 801F8854 001F57B4 38 61 00 90 */ addi r3, r1, 0x90 +/* 801F8858 001F57B8 38 BA 00 3C */ addi r5, r26, 0x3c +/* 801F885C 001F57BC 4B E8 01 1D */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801F8860 001F57C0 38 61 00 C0 */ addi r3, r1, 0xc0 +/* 801F8864 001F57C4 38 81 00 90 */ addi r4, r1, 0x90 +/* 801F8868 001F57C8 48 11 A3 0D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801F886C 001F57CC 3C 60 80 3D */ lis r3, lbl_803D247C@ha +/* 801F8870 001F57D0 3A E0 00 00 */ li r23, 0 +/* 801F8874 001F57D4 38 83 24 7C */ addi r4, r3, lbl_803D247C@l +/* 801F8878 001F57D8 38 60 03 D8 */ li r3, 0x3d8 +/* 801F887C 001F57DC 38 84 00 08 */ addi r4, r4, 8 +/* 801F8880 001F57E0 38 A0 00 00 */ li r5, 0 +/* 801F8884 001F57E4 48 11 CF E9 */ bl __nw__FUlPCcPCc +/* 801F8888 001F57E8 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801F888C 001F57EC 41 82 00 E4 */ beq lbl_801F8970 +/* 801F8890 001F57F0 C0 02 AF 78 */ lfs f0, lbl_805ACC98@sda21(r2) +/* 801F8894 001F57F4 38 00 00 00 */ li r0, 0 +/* 801F8898 001F57F8 98 01 00 8C */ stb r0, 0x8c(r1) +/* 801F889C 001F57FC 3B A1 00 80 */ addi r29, r1, 0x80 +/* 801F88A0 001F5800 3B 81 00 74 */ addi r28, r1, 0x74 +/* 801F88A4 001F5804 3A E0 00 01 */ li r23, 1 +/* 801F88A8 001F5808 D0 01 00 74 */ stfs f0, 0x74(r1) +/* 801F88AC 001F580C D0 01 00 78 */ stfs f0, 0x78(r1) +/* 801F88B0 001F5810 D0 01 00 7C */ stfs f0, 0x7c(r1) +/* 801F88B4 001F5814 88 18 06 A1 */ lbz r0, 0x6a1(r24) +/* 801F88B8 001F5818 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801F88BC 001F581C 41 82 00 10 */ beq lbl_801F88CC +/* 801F88C0 001F5820 A0 18 08 5C */ lhz r0, 0x85c(r24) +/* 801F88C4 001F5824 B0 01 00 30 */ sth r0, 0x30(r1) +/* 801F88C8 001F5828 48 00 00 14 */ b lbl_801F88DC +lbl_801F88CC: +/* 801F88CC 001F582C 80 79 08 4C */ lwz r3, 0x84c(r25) +/* 801F88D0 001F5830 A0 03 00 08 */ lhz r0, 8(r3) +/* 801F88D4 001F5834 B0 01 00 44 */ sth r0, 0x44(r1) +/* 801F88D8 001F5838 B0 01 00 30 */ sth r0, 0x30(r1) +lbl_801F88DC: +/* 801F88DC 001F583C A0 01 00 30 */ lhz r0, 0x30(r1) +/* 801F88E0 001F5840 7F 24 CB 78 */ mr r4, r25 +/* 801F88E4 001F5844 38 61 00 34 */ addi r3, r1, 0x34 +/* 801F88E8 001F5848 B0 01 00 48 */ sth r0, 0x48(r1) +/* 801F88EC 001F584C A0 B8 00 08 */ lhz r5, 8(r24) +/* 801F88F0 001F5850 B0 A1 00 40 */ sth r5, 0x40(r1) +/* 801F88F4 001F5854 80 18 00 04 */ lwz r0, 4(r24) +/* 801F88F8 001F5858 B0 A1 00 3C */ sth r5, 0x3c(r1) +/* 801F88FC 001F585C 90 01 00 54 */ stw r0, 0x54(r1) +/* 801F8900 001F5860 90 01 00 58 */ stw r0, 0x58(r1) +/* 801F8904 001F5864 4B E5 47 D9 */ bl AllocateUniqueId__13CStateManagerFv +/* 801F8908 001F5868 A0 01 00 34 */ lhz r0, 0x34(r1) +/* 801F890C 001F586C 38 A1 00 58 */ addi r5, r1, 0x58 +/* 801F8910 001F5870 38 81 00 40 */ addi r4, r1, 0x40 +/* 801F8914 001F5874 39 01 00 48 */ addi r8, r1, 0x48 +/* 801F8918 001F5878 B0 01 00 38 */ sth r0, 0x38(r1) +/* 801F891C 001F587C 39 60 00 00 */ li r11, 0 +/* 801F8920 001F5880 A0 02 C5 FC */ lhz r0, lbl_805AE31C@sda21(r2) +/* 801F8924 001F5884 7F C3 F3 78 */ mr r3, r30 +/* 801F8928 001F5888 90 A1 00 08 */ stw r5, 8(r1) +/* 801F892C 001F588C 7F E5 FB 78 */ mr r5, r31 +/* 801F8930 001F5890 38 E1 00 C0 */ addi r7, r1, 0xc0 +/* 801F8934 001F5894 39 3F 00 0C */ addi r9, r31, 0xc +/* 801F8938 001F5898 90 81 00 0C */ stw r4, 0xc(r1) +/* 801F893C 001F589C 39 41 00 38 */ addi r10, r1, 0x38 +/* 801F8940 001F58A0 38 80 00 01 */ li r4, 1 +/* 801F8944 001F58A4 38 C0 00 09 */ li r6, 9 +/* 801F8948 001F58A8 91 01 00 10 */ stw r8, 0x10(r1) +/* 801F894C 001F58AC 39 00 00 21 */ li r8, 0x21 +/* 801F8950 001F58B0 91 61 00 14 */ stw r11, 0x14(r1) +/* 801F8954 001F58B4 91 61 00 18 */ stw r11, 0x18(r1) +/* 801F8958 001F58B8 93 81 00 1C */ stw r28, 0x1c(r1) +/* 801F895C 001F58BC 93 A1 00 20 */ stw r29, 0x20(r1) +/* 801F8960 001F58C0 90 01 00 24 */ stw r0, 0x24(r1) +/* 801F8964 001F58C4 91 61 00 28 */ stw r11, 0x28(r1) +/* 801F8968 001F58C8 48 01 CD 31 */ bl "__ct__17CEnergyProjectileFbRC28TToken<18CWeaponDescription>11EWeaponTypeRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId7TAreaId9TUniqueId9TUniqueIdUibRC9CVector3fRCQ24rstl50optional_object<31TLockedToken<15CGenDescription>>sb" +/* 801F896C 001F58CC 7C 7E 1B 78 */ mr r30, r3 +lbl_801F8970: +/* 801F8970 001F58D0 7E E0 07 75 */ extsb. r0, r23 +/* 801F8974 001F58D4 41 82 00 30 */ beq lbl_801F89A4 +/* 801F8978 001F58D8 88 01 00 8C */ lbz r0, 0x8c(r1) +/* 801F897C 001F58DC 28 00 00 00 */ cmplwi r0, 0 +/* 801F8980 001F58E0 41 82 00 1C */ beq lbl_801F899C +/* 801F8984 001F58E4 34 61 00 80 */ addic. r3, r1, 0x80 +/* 801F8988 001F58E8 41 82 00 14 */ beq lbl_801F899C +/* 801F898C 001F58EC 28 03 00 00 */ cmplwi r3, 0 +/* 801F8990 001F58F0 41 82 00 0C */ beq lbl_801F899C +/* 801F8994 001F58F4 38 80 00 00 */ li r4, 0 +/* 801F8998 001F58F8 48 14 84 A9 */ bl __dt__6CTokenFv +lbl_801F899C: +/* 801F899C 001F58FC 38 00 00 00 */ li r0, 0 +/* 801F89A0 001F5900 98 01 00 8C */ stb r0, 0x8c(r1) +lbl_801F89A4: +/* 801F89A4 001F5904 28 1E 00 00 */ cmplwi r30, 0 +/* 801F89A8 001F5908 41 82 00 C0 */ beq lbl_801F8A68 +/* 801F89AC 001F590C 7F 23 CB 78 */ mr r3, r25 +/* 801F89B0 001F5910 7F C4 F3 78 */ mr r4, r30 +/* 801F89B4 001F5914 4B E5 43 41 */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +/* 801F89B8 001F5918 88 18 06 A1 */ lbz r0, 0x6a1(r24) +/* 801F89BC 001F591C 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801F89C0 001F5920 40 82 00 A8 */ bne lbl_801F8A68 +/* 801F89C4 001F5924 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 801F89C8 001F5928 38 61 00 F0 */ addi r3, r1, 0xf0 +/* 801F89CC 001F592C C0 5E 00 50 */ lfs f2, 0x50(r30) +/* 801F89D0 001F5930 38 81 00 68 */ addi r4, r1, 0x68 +/* 801F89D4 001F5934 C0 1E 00 60 */ lfs f0, 0x60(r30) +/* 801F89D8 001F5938 D0 21 00 5C */ stfs f1, 0x5c(r1) +/* 801F89DC 001F593C C0 22 AF A0 */ lfs f1, lbl_805ACCC0@sda21(r2) +/* 801F89E0 001F5940 D0 41 00 60 */ stfs f2, 0x60(r1) +/* 801F89E4 001F5944 80 C1 00 5C */ lwz r6, 0x5c(r1) +/* 801F89E8 001F5948 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 801F89EC 001F594C 80 A1 00 60 */ lwz r5, 0x60(r1) +/* 801F89F0 001F5950 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801F89F4 001F5954 90 C1 00 68 */ stw r6, 0x68(r1) +/* 801F89F8 001F5958 C0 42 AF 6C */ lfs f2, lbl_805ACC8C@sda21(r2) +/* 801F89FC 001F595C 90 A1 00 6C */ stw r5, 0x6c(r1) +/* 801F8A00 001F5960 C0 62 AF A4 */ lfs f3, lbl_805ACCC4@sda21(r2) +/* 801F8A04 001F5964 90 01 00 70 */ stw r0, 0x70(r1) +/* 801F8A08 001F5968 4B F6 4B BD */ bl BuildPatternedExplodeShakeData__16CCameraShakeDataFRC9CVector3ffff +/* 801F8A0C 001F596C 7F C3 F3 78 */ mr r3, r30 +/* 801F8A10 001F5970 38 81 00 F0 */ addi r4, r1, 0xf0 +/* 801F8A14 001F5974 48 01 B0 B9 */ bl SetCameraShake__17CEnergyProjectileFRC16CCameraShakeData +/* 801F8A18 001F5978 34 81 01 70 */ addic. r4, r1, 0x170 +/* 801F8A1C 001F597C 41 82 00 10 */ beq lbl_801F8A2C +/* 801F8A20 001F5980 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 801F8A24 001F5984 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 801F8A28 001F5988 90 04 00 00 */ stw r0, 0(r4) +lbl_801F8A2C: +/* 801F8A2C 001F598C 34 81 01 34 */ addic. r4, r1, 0x134 +/* 801F8A30 001F5990 41 82 00 10 */ beq lbl_801F8A40 +/* 801F8A34 001F5994 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 801F8A38 001F5998 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 801F8A3C 001F599C 90 04 00 00 */ stw r0, 0(r4) +lbl_801F8A40: +/* 801F8A40 001F59A0 34 81 00 F8 */ addic. r4, r1, 0xf8 +/* 801F8A44 001F59A4 41 82 00 10 */ beq lbl_801F8A54 +/* 801F8A48 001F59A8 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 801F8A4C 001F59AC 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 801F8A50 001F59B0 90 04 00 00 */ stw r0, 0(r4) +lbl_801F8A54: +/* 801F8A54 001F59B4 88 18 06 A0 */ lbz r0, 0x6a0(r24) +/* 801F8A58 001F59B8 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801F8A5C 001F59BC 41 82 00 0C */ beq lbl_801F8A68 +/* 801F8A60 001F59C0 C0 18 06 58 */ lfs f0, 0x658(r24) +/* 801F8A64 001F59C4 D0 1E 02 E0 */ stfs f0, 0x2e0(r30) +lbl_801F8A68: +/* 801F8A68 001F59C8 38 00 00 01 */ li r0, 1 +/* 801F8A6C 001F59CC 48 00 00 88 */ b lbl_801F8AF4 +lbl_801F8A70: +/* 801F8A70 001F59D0 80 18 08 9C */ lwz r0, 0x89c(r24) +/* 801F8A74 001F59D4 28 00 00 00 */ cmplwi r0, 0 +/* 801F8A78 001F59D8 40 82 00 78 */ bne lbl_801F8AF0 +/* 801F8A7C 001F59DC 7F 03 C3 78 */ mr r3, r24 +/* 801F8A80 001F59E0 7F 24 CB 78 */ mr r4, r25 +/* 801F8A84 001F59E4 81 98 00 00 */ lwz r12, 0(r24) +/* 801F8A88 001F59E8 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801F8A8C 001F59EC 7D 89 03 A6 */ mtctr r12 +/* 801F8A90 001F59F0 4E 80 04 21 */ bctrl +/* 801F8A94 001F59F4 C0 23 00 00 */ lfs f1, 0(r3) +/* 801F8A98 001F59F8 C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801F8A9C 001F59FC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F8AA0 001F5A00 4C 40 13 82 */ cror 2, 0, 2 +/* 801F8AA4 001F5A04 40 82 00 4C */ bne lbl_801F8AF0 +/* 801F8AA8 001F5A08 3C 80 80 3D */ lis r4, lbl_803D247C@ha +/* 801F8AAC 001F5A0C 38 60 00 B4 */ li r3, 0xb4 +/* 801F8AB0 001F5A10 38 84 24 7C */ addi r4, r4, lbl_803D247C@l +/* 801F8AB4 001F5A14 38 A0 00 00 */ li r5, 0 +/* 801F8AB8 001F5A18 38 84 00 08 */ addi r4, r4, 8 +/* 801F8ABC 001F5A1C 48 11 CD B1 */ bl __nw__FUlPCcPCc +/* 801F8AC0 001F5A20 7C 77 1B 79 */ or. r23, r3, r3 +/* 801F8AC4 001F5A24 41 82 00 1C */ beq lbl_801F8AE0 +/* 801F8AC8 001F5A28 A0 D8 06 30 */ lhz r6, 0x630(r24) +/* 801F8ACC 001F5A2C 7F 24 CB 78 */ mr r4, r25 +/* 801F8AD0 001F5A30 A0 F8 06 32 */ lhz r7, 0x632(r24) +/* 801F8AD4 001F5A34 7F 05 C3 78 */ mr r5, r24 +/* 801F8AD8 001F5A38 48 00 74 A5 */ bl __ct__20CFlyingPirateRagDollFR13CStateManagerP13CFlyingPiratefUsUs +/* 801F8ADC 001F5A3C 7C 77 1B 78 */ mr r23, r3 +lbl_801F8AE0: +/* 801F8AE0 001F5A40 80 78 08 9C */ lwz r3, 0x89c(r24) +/* 801F8AE4 001F5A44 38 80 00 01 */ li r4, 1 +/* 801F8AE8 001F5A48 48 00 74 21 */ bl __dt__20CFlyingPirateRagDollFv +/* 801F8AEC 001F5A4C 92 F8 08 9C */ stw r23, 0x89c(r24) +lbl_801F8AF0: +/* 801F8AF0 001F5A50 38 00 00 01 */ li r0, 1 +lbl_801F8AF4: +/* 801F8AF4 001F5A54 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 801F8AF8 001F5A58 40 82 00 1C */ bne lbl_801F8B14 +/* 801F8AFC 001F5A5C FC 20 F8 90 */ fmr f1, f31 +/* 801F8B00 001F5A60 7F 03 C3 78 */ mr r3, r24 +/* 801F8B04 001F5A64 7F 24 CB 78 */ mr r4, r25 +/* 801F8B08 001F5A68 7F 45 D3 78 */ mr r5, r26 +/* 801F8B0C 001F5A6C 7F 66 DB 78 */ mr r6, r27 +/* 801F8B10 001F5A70 4B E8 03 A1 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +lbl_801F8B14: +/* 801F8B14 001F5A74 E3 E1 01 F8 */ psq_l f31, 504(r1), 0, qr0 +/* 801F8B18 001F5A78 CB E1 01 F0 */ lfd f31, 0x1f0(r1) +/* 801F8B1C 001F5A7C BA E1 01 CC */ lmw r23, 0x1cc(r1) +/* 801F8B20 001F5A80 80 01 02 04 */ lwz r0, 0x204(r1) +/* 801F8B24 001F5A84 7C 08 03 A6 */ mtlr r0 +/* 801F8B28 001F5A88 38 21 02 00 */ addi r1, r1, 0x200 +/* 801F8B2C 001F5A8C 4E 80 00 20 */ blr + +.global FireProjectile__13CFlyingPirateFR13CStateManagerRC9CVector3f +FireProjectile__13CFlyingPirateFR13CStateManagerRC9CVector3f: +/* 801F8B30 001F5A90 94 21 FD B0 */ stwu r1, -0x250(r1) +/* 801F8B34 001F5A94 7C 08 02 A6 */ mflr r0 +/* 801F8B38 001F5A98 90 01 02 54 */ stw r0, 0x254(r1) +/* 801F8B3C 001F5A9C DB E1 02 40 */ stfd f31, 0x240(r1) +/* 801F8B40 001F5AA0 F3 E1 02 48 */ psq_st f31, 584(r1), 0, qr0 +/* 801F8B44 001F5AA4 93 E1 02 3C */ stw r31, 0x23c(r1) +/* 801F8B48 001F5AA8 93 C1 02 38 */ stw r30, 0x238(r1) +/* 801F8B4C 001F5AAC 93 A1 02 34 */ stw r29, 0x234(r1) +/* 801F8B50 001F5AB0 93 81 02 30 */ stw r28, 0x230(r1) +/* 801F8B54 001F5AB4 FF E0 08 90 */ fmr f31, f1 +/* 801F8B58 001F5AB8 7C 7D 1B 78 */ mr r29, r3 +/* 801F8B5C 001F5ABC 7C 9E 23 78 */ mr r30, r4 +/* 801F8B60 001F5AC0 38 61 01 50 */ addi r3, r1, 0x150 +/* 801F8B64 001F5AC4 7F A4 EB 78 */ mr r4, r29 +/* 801F8B68 001F5AC8 38 BD 07 E0 */ addi r5, r29, 0x7e0 +/* 801F8B6C 001F5ACC 3B E0 00 00 */ li r31, 0 +/* 801F8B70 001F5AD0 4B E7 FD 49 */ bl GetLctrTransform__10CPatternedCFRC6CSegId +/* 801F8B74 001F5AD4 38 61 01 B0 */ addi r3, r1, 0x1b0 +/* 801F8B78 001F5AD8 38 81 01 50 */ addi r4, r1, 0x150 +/* 801F8B7C 001F5ADC 48 11 9F F9 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801F8B80 001F5AE0 88 1D 04 00 */ lbz r0, 0x400(r29) +/* 801F8B84 001F5AE4 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801F8B88 001F5AE8 40 82 00 80 */ bne lbl_801F8C08 +/* 801F8B8C 001F5AEC C0 02 AF 78 */ lfs f0, lbl_805ACC98@sda21(r2) +/* 801F8B90 001F5AF0 39 60 00 00 */ li r11, 0 +/* 801F8B94 001F5AF4 99 61 01 04 */ stb r11, 0x104(r1) +/* 801F8B98 001F5AF8 38 01 00 EC */ addi r0, r1, 0xec +/* 801F8B9C 001F5AFC A1 42 C5 FC */ lhz r10, lbl_805AE31C@sda21(r2) +/* 801F8BA0 001F5B00 7F A3 EB 78 */ mr r3, r29 +/* 801F8BA4 001F5B04 D0 01 00 EC */ stfs f0, 0xec(r1) +/* 801F8BA8 001F5B08 7F C5 F3 78 */ mr r5, r30 +/* 801F8BAC 001F5B0C 38 81 01 B0 */ addi r4, r1, 0x1b0 +/* 801F8BB0 001F5B10 39 21 00 F8 */ addi r9, r1, 0xf8 +/* 801F8BB4 001F5B14 D0 01 00 F0 */ stfs f0, 0xf0(r1) +/* 801F8BB8 001F5B18 38 C0 00 08 */ li r6, 8 +/* 801F8BBC 001F5B1C 38 E0 00 00 */ li r7, 0 +/* 801F8BC0 001F5B20 39 00 00 00 */ li r8, 0 +/* 801F8BC4 001F5B24 D0 01 00 F4 */ stfs f0, 0xf4(r1) +/* 801F8BC8 001F5B28 91 61 00 08 */ stw r11, 8(r1) +/* 801F8BCC 001F5B2C 90 01 00 0C */ stw r0, 0xc(r1) +/* 801F8BD0 001F5B30 4B E7 EE 29 */ bl "LaunchProjectile__10CPatternedFRC12CTransform4fR13CStateManageriQ27CWeapon17EProjectileAttribbRCQ24rstl50optional_object<31TLockedToken<15CGenDescription>>sbRC9CVector3f" +/* 801F8BD4 001F5B34 88 01 01 04 */ lbz r0, 0x104(r1) +/* 801F8BD8 001F5B38 28 00 00 00 */ cmplwi r0, 0 +/* 801F8BDC 001F5B3C 41 82 00 1C */ beq lbl_801F8BF8 +/* 801F8BE0 001F5B40 34 61 00 F8 */ addic. r3, r1, 0xf8 +/* 801F8BE4 001F5B44 41 82 00 14 */ beq lbl_801F8BF8 +/* 801F8BE8 001F5B48 28 03 00 00 */ cmplwi r3, 0 +/* 801F8BEC 001F5B4C 41 82 00 0C */ beq lbl_801F8BF8 +/* 801F8BF0 001F5B50 38 80 00 00 */ li r4, 0 +/* 801F8BF4 001F5B54 48 14 82 4D */ bl __dt__6CTokenFv +lbl_801F8BF8: +/* 801F8BF8 001F5B58 38 00 00 00 */ li r0, 0 +/* 801F8BFC 001F5B5C 3B E0 00 01 */ li r31, 1 +/* 801F8C00 001F5B60 98 01 01 04 */ stb r0, 0x104(r1) +/* 801F8C04 001F5B64 48 00 03 20 */ b lbl_801F8F24 +lbl_801F8C08: +/* 801F8C08 001F5B68 A0 1D 07 E8 */ lhz r0, 0x7e8(r29) +/* 801F8C0C 001F5B6C 7F C3 F3 78 */ mr r3, r30 +/* 801F8C10 001F5B70 38 81 00 10 */ addi r4, r1, 0x10 +/* 801F8C14 001F5B74 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801F8C18 001F5B78 4B E5 39 8D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801F8C1C 001F5B7C 7C 64 1B 78 */ mr r4, r3 +/* 801F8C20 001F5B80 38 61 00 18 */ addi r3, r1, 0x18 +/* 801F8C24 001F5B84 4B EB 70 6D */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 801F8C28 001F5B88 80 63 00 04 */ lwz r3, 4(r3) +/* 801F8C2C 001F5B8C 28 03 00 00 */ cmplwi r3, 0 +/* 801F8C30 001F5B90 41 82 02 F4 */ beq lbl_801F8F24 +/* 801F8C34 001F5B94 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 801F8C38 001F5B98 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801F8C3C 001F5B9C C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801F8C40 001F5BA0 D0 01 01 14 */ stfs f0, 0x114(r1) +/* 801F8C44 001F5BA4 D0 21 01 18 */ stfs f1, 0x118(r1) +/* 801F8C48 001F5BA8 D0 41 01 1C */ stfs f2, 0x11c(r1) +/* 801F8C4C 001F5BAC 83 9E 08 4C */ lwz r28, 0x84c(r30) +/* 801F8C50 001F5BB0 A0 7D 07 E8 */ lhz r3, 0x7e8(r29) +/* 801F8C54 001F5BB4 A0 1C 00 08 */ lhz r0, 8(r28) +/* 801F8C58 001F5BB8 7C 03 00 40 */ cmplw r3, r0 +/* 801F8C5C 001F5BBC 40 82 00 88 */ bne lbl_801F8CE4 +/* 801F8C60 001F5BC0 C0 21 01 BC */ lfs f1, 0x1bc(r1) +/* 801F8C64 001F5BC4 7F 84 E3 78 */ mr r4, r28 +/* 801F8C68 001F5BC8 C0 41 01 CC */ lfs f2, 0x1cc(r1) +/* 801F8C6C 001F5BCC 7F C5 F3 78 */ mr r5, r30 +/* 801F8C70 001F5BD0 C0 01 01 DC */ lfs f0, 0x1dc(r1) +/* 801F8C74 001F5BD4 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 801F8C78 001F5BD8 D0 21 00 D4 */ stfs f1, 0xd4(r1) +/* 801F8C7C 001F5BDC C0 22 AF 60 */ lfs f1, lbl_805ACC80@sda21(r2) +/* 801F8C80 001F5BE0 D0 41 00 D8 */ stfs f2, 0xd8(r1) +/* 801F8C84 001F5BE4 D0 01 00 DC */ stfs f0, 0xdc(r1) +/* 801F8C88 001F5BE8 81 9C 00 00 */ lwz r12, 0(r28) +/* 801F8C8C 001F5BEC 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801F8C90 001F5BF0 7D 89 03 A6 */ mtctr r12 +/* 801F8C94 001F5BF4 4E 80 04 21 */ bctrl +/* 801F8C98 001F5BF8 7F A3 EB 78 */ mr r3, r29 +/* 801F8C9C 001F5BFC 81 9D 00 00 */ lwz r12, 0(r29) +/* 801F8CA0 001F5C00 81 8C 02 C0 */ lwz r12, 0x2c0(r12) +/* 801F8CA4 001F5C04 7D 89 03 A6 */ mtctr r12 +/* 801F8CA8 001F5C08 4E 80 04 21 */ bctrl +/* 801F8CAC 001F5C0C FC 20 F8 90 */ fmr f1, f31 +/* 801F8CB0 001F5C10 7C 64 1B 78 */ mr r4, r3 +/* 801F8CB4 001F5C14 7F 87 E3 78 */ mr r7, r28 +/* 801F8CB8 001F5C18 38 61 00 E0 */ addi r3, r1, 0xe0 +/* 801F8CBC 001F5C1C 38 A1 00 D4 */ addi r5, r1, 0xd4 +/* 801F8CC0 001F5C20 38 C1 00 C8 */ addi r6, r1, 0xc8 +/* 801F8CC4 001F5C24 39 00 00 01 */ li r8, 1 +/* 801F8CC8 001F5C28 48 02 32 25 */ bl PredictInterceptPos__15CProjectileInfoFRC9CVector3fRC9CVector3fRC7CPlayerbf +/* 801F8CCC 001F5C2C C0 41 00 E0 */ lfs f2, 0xe0(r1) +/* 801F8CD0 001F5C30 C0 21 00 E4 */ lfs f1, 0xe4(r1) +/* 801F8CD4 001F5C34 C0 01 00 E8 */ lfs f0, 0xe8(r1) +/* 801F8CD8 001F5C38 D0 41 01 14 */ stfs f2, 0x114(r1) +/* 801F8CDC 001F5C3C D0 21 01 18 */ stfs f1, 0x118(r1) +/* 801F8CE0 001F5C40 D0 01 01 1C */ stfs f0, 0x11c(r1) +lbl_801F8CE4: +/* 801F8CE4 001F5C44 C0 41 01 DC */ lfs f2, 0x1dc(r1) +/* 801F8CE8 001F5C48 38 61 01 08 */ addi r3, r1, 0x108 +/* 801F8CEC 001F5C4C C0 01 01 1C */ lfs f0, 0x11c(r1) +/* 801F8CF0 001F5C50 C0 81 01 CC */ lfs f4, 0x1cc(r1) +/* 801F8CF4 001F5C54 C0 21 01 18 */ lfs f1, 0x118(r1) +/* 801F8CF8 001F5C58 EC 40 10 28 */ fsubs f2, f0, f2 +/* 801F8CFC 001F5C5C C0 61 01 BC */ lfs f3, 0x1bc(r1) +/* 801F8D00 001F5C60 C0 01 01 14 */ lfs f0, 0x114(r1) +/* 801F8D04 001F5C64 EC 21 20 28 */ fsubs f1, f1, f4 +/* 801F8D08 001F5C68 D0 41 01 10 */ stfs f2, 0x110(r1) +/* 801F8D0C 001F5C6C EC 00 18 28 */ fsubs f0, f0, f3 +/* 801F8D10 001F5C70 D0 21 01 0C */ stfs f1, 0x10c(r1) +/* 801F8D14 001F5C74 D0 01 01 08 */ stfs f0, 0x108(r1) +/* 801F8D18 001F5C78 48 11 BB A1 */ bl Magnitude__9CVector3fCFv +/* 801F8D1C 001F5C7C FF E0 08 90 */ fmr f31, f1 +/* 801F8D20 001F5C80 C0 02 AF 78 */ lfs f0, lbl_805ACC98@sda21(r2) +/* 801F8D24 001F5C84 C0 A1 01 0C */ lfs f5, 0x10c(r1) +/* 801F8D28 001F5C88 C0 C1 01 08 */ lfs f6, 0x108(r1) +/* 801F8D2C 001F5C8C EC E0 F8 24 */ fdivs f7, f0, f31 +/* 801F8D30 001F5C90 C0 81 01 10 */ lfs f4, 0x110(r1) +/* 801F8D34 001F5C94 C0 21 01 C4 */ lfs f1, 0x1c4(r1) +/* 801F8D38 001F5C98 C0 41 01 B4 */ lfs f2, 0x1b4(r1) +/* 801F8D3C 001F5C9C C0 61 01 D4 */ lfs f3, 0x1d4(r1) +/* 801F8D40 001F5CA0 C0 02 AF A8 */ lfs f0, lbl_805ACCC8@sda21(r2) +/* 801F8D44 001F5CA4 EC A5 01 F2 */ fmuls f5, f5, f7 +/* 801F8D48 001F5CA8 EC C6 01 F2 */ fmuls f6, f6, f7 +/* 801F8D4C 001F5CAC EC 84 01 F2 */ fmuls f4, f4, f7 +/* 801F8D50 001F5CB0 EC 21 01 72 */ fmuls f1, f1, f5 +/* 801F8D54 001F5CB4 D0 A1 01 0C */ stfs f5, 0x10c(r1) +/* 801F8D58 001F5CB8 D0 C1 01 08 */ stfs f6, 0x108(r1) +/* 801F8D5C 001F5CBC EC 22 09 BA */ fmadds f1, f2, f6, f1 +/* 801F8D60 001F5CC0 D0 81 01 10 */ stfs f4, 0x110(r1) +/* 801F8D64 001F5CC4 EC 23 09 3A */ fmadds f1, f3, f4, f1 +/* 801F8D68 001F5CC8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F8D6C 001F5CCC 41 81 00 1C */ bgt lbl_801F8D88 +/* 801F8D70 001F5CD0 C0 02 AF AC */ lfs f0, lbl_805ACCCC@sda21(r2) +/* 801F8D74 001F5CD4 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 801F8D78 001F5CD8 40 80 01 AC */ bge lbl_801F8F24 +/* 801F8D7C 001F5CDC C0 02 AF 74 */ lfs f0, lbl_805ACC94@sda21(r2) +/* 801F8D80 001F5CE0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F8D84 001F5CE4 40 81 01 A0 */ ble lbl_801F8F24 +lbl_801F8D88: +/* 801F8D88 001F5CE8 38 00 00 00 */ li r0, 0 +/* 801F8D8C 001F5CEC 80 AD 93 10 */ lwz r5, lbl_805A7ED0@sda21(r13) +/* 801F8D90 001F5CF0 90 01 00 6C */ stw r0, 0x6c(r1) +/* 801F8D94 001F5CF4 38 60 00 00 */ li r3, 0 +/* 801F8D98 001F5CF8 38 80 00 01 */ li r4, 1 +/* 801F8D9C 001F5CFC 90 01 00 68 */ stw r0, 0x68(r1) +/* 801F8DA0 001F5D00 48 19 11 55 */ bl __shl2i +/* 801F8DA4 001F5D04 80 01 00 68 */ lwz r0, 0x68(r1) +/* 801F8DA8 001F5D08 80 C1 00 6C */ lwz r6, 0x6c(r1) +/* 801F8DAC 001F5D0C 7C 00 1B 78 */ or r0, r0, r3 +/* 801F8DB0 001F5D10 80 AD 93 14 */ lwz r5, lbl_805A7ED4@sda21(r13) +/* 801F8DB4 001F5D14 7C C4 23 78 */ or r4, r6, r4 +/* 801F8DB8 001F5D18 90 01 00 68 */ stw r0, 0x68(r1) +/* 801F8DBC 001F5D1C 38 60 00 00 */ li r3, 0 +/* 801F8DC0 001F5D20 90 81 00 6C */ stw r4, 0x6c(r1) +/* 801F8DC4 001F5D24 38 80 00 01 */ li r4, 1 +/* 801F8DC8 001F5D28 48 19 11 2D */ bl __shl2i +/* 801F8DCC 001F5D2C 80 01 00 68 */ lwz r0, 0x68(r1) +/* 801F8DD0 001F5D30 38 A1 00 BC */ addi r5, r1, 0xbc +/* 801F8DD4 001F5D34 80 E1 00 6C */ lwz r7, 0x6c(r1) +/* 801F8DD8 001F5D38 38 C1 01 14 */ addi r6, r1, 0x114 +/* 801F8DDC 001F5D3C 7C 00 1B 78 */ or r0, r0, r3 +/* 801F8DE0 001F5D40 C0 41 01 BC */ lfs f2, 0x1bc(r1) +/* 801F8DE4 001F5D44 7C E4 23 78 */ or r4, r7, r4 +/* 801F8DE8 001F5D48 C0 21 01 CC */ lfs f1, 0x1cc(r1) +/* 801F8DEC 001F5D4C C0 01 01 DC */ lfs f0, 0x1dc(r1) +/* 801F8DF0 001F5D50 7F A3 EB 78 */ mr r3, r29 +/* 801F8DF4 001F5D54 90 81 00 6C */ stw r4, 0x6c(r1) +/* 801F8DF8 001F5D58 7F C4 F3 78 */ mr r4, r30 +/* 801F8DFC 001F5D5C 38 E1 00 68 */ addi r7, r1, 0x68 +/* 801F8E00 001F5D60 90 01 00 68 */ stw r0, 0x68(r1) +/* 801F8E04 001F5D64 D0 41 00 BC */ stfs f2, 0xbc(r1) +/* 801F8E08 001F5D68 D0 21 00 C0 */ stfs f1, 0xc0(r1) +/* 801F8E0C 001F5D6C D0 01 00 C4 */ stfs f0, 0xc4(r1) +/* 801F8E10 001F5D70 48 00 45 B5 */ bl LineOfSightTest__13CFlyingPirateFR13CStateManagerRC9CVector3fRC9CVector3f +/* 801F8E14 001F5D74 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801F8E18 001F5D78 41 82 01 0C */ beq lbl_801F8F24 +/* 801F8E1C 001F5D7C FC 20 F8 90 */ fmr f1, f31 +/* 801F8E20 001F5D80 C0 42 AF AC */ lfs f2, lbl_805ACCCC@sda21(r2) +/* 801F8E24 001F5D84 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 801F8E28 001F5D88 38 9D 07 EC */ addi r4, r29, 0x7ec +/* 801F8E2C 001F5D8C 4B FB 43 19 */ bl GetDistanceCompensatedError__10CBurstFireCFff +/* 801F8E30 001F5D90 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 801F8E34 001F5D94 38 9D 00 34 */ addi r4, r29, 0x34 +/* 801F8E38 001F5D98 38 A1 00 A4 */ addi r5, r1, 0xa4 +/* 801F8E3C 001F5D9C 48 11 9C 45 */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 801F8E40 001F5DA0 C0 61 01 14 */ lfs f3, 0x114(r1) +/* 801F8E44 001F5DA4 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 801F8E48 001F5DA8 C0 41 00 B0 */ lfs f2, 0xb0(r1) +/* 801F8E4C 001F5DAC 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 801F8E50 001F5DB0 C0 21 01 18 */ lfs f1, 0x118(r1) +/* 801F8E54 001F5DB4 38 61 01 20 */ addi r3, r1, 0x120 +/* 801F8E58 001F5DB8 EC C3 10 2A */ fadds f6, f3, f2 +/* 801F8E5C 001F5DBC C0 01 00 B4 */ lfs f0, 0xb4(r1) +/* 801F8E60 001F5DC0 C0 81 01 1C */ lfs f4, 0x11c(r1) +/* 801F8E64 001F5DC4 38 81 00 98 */ addi r4, r1, 0x98 +/* 801F8E68 001F5DC8 EC A1 00 2A */ fadds f5, f1, f0 +/* 801F8E6C 001F5DCC C0 61 00 B8 */ lfs f3, 0xb8(r1) +/* 801F8E70 001F5DD0 EC 64 18 2A */ fadds f3, f4, f3 +/* 801F8E74 001F5DD4 C0 41 01 BC */ lfs f2, 0x1bc(r1) +/* 801F8E78 001F5DD8 C0 21 01 CC */ lfs f1, 0x1cc(r1) +/* 801F8E7C 001F5DDC 38 A1 01 14 */ addi r5, r1, 0x114 +/* 801F8E80 001F5DE0 C0 01 01 DC */ lfs f0, 0x1dc(r1) +/* 801F8E84 001F5DE4 D0 C1 01 14 */ stfs f6, 0x114(r1) +/* 801F8E88 001F5DE8 D0 A1 01 18 */ stfs f5, 0x118(r1) +/* 801F8E8C 001F5DEC D0 61 01 1C */ stfs f3, 0x11c(r1) +/* 801F8E90 001F5DF0 D0 41 00 98 */ stfs f2, 0x98(r1) +/* 801F8E94 001F5DF4 D0 21 00 9C */ stfs f1, 0x9c(r1) +/* 801F8E98 001F5DF8 D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 801F8E9C 001F5DFC 48 11 AC 75 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 801F8EA0 001F5E00 38 61 01 80 */ addi r3, r1, 0x180 +/* 801F8EA4 001F5E04 38 81 01 20 */ addi r4, r1, 0x120 +/* 801F8EA8 001F5E08 48 11 9C CD */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801F8EAC 001F5E0C C0 02 AF 78 */ lfs f0, lbl_805ACC98@sda21(r2) +/* 801F8EB0 001F5E10 39 60 00 00 */ li r11, 0 +/* 801F8EB4 001F5E14 99 61 00 94 */ stb r11, 0x94(r1) +/* 801F8EB8 001F5E18 38 01 00 7C */ addi r0, r1, 0x7c +/* 801F8EBC 001F5E1C A1 42 C5 FC */ lhz r10, lbl_805AE31C@sda21(r2) +/* 801F8EC0 001F5E20 7F A3 EB 78 */ mr r3, r29 +/* 801F8EC4 001F5E24 D0 01 00 7C */ stfs f0, 0x7c(r1) +/* 801F8EC8 001F5E28 7F C5 F3 78 */ mr r5, r30 +/* 801F8ECC 001F5E2C 38 81 01 80 */ addi r4, r1, 0x180 +/* 801F8ED0 001F5E30 39 21 00 88 */ addi r9, r1, 0x88 +/* 801F8ED4 001F5E34 D0 01 00 80 */ stfs f0, 0x80(r1) +/* 801F8ED8 001F5E38 38 C0 00 08 */ li r6, 8 +/* 801F8EDC 001F5E3C 38 E0 00 00 */ li r7, 0 +/* 801F8EE0 001F5E40 39 00 00 00 */ li r8, 0 +/* 801F8EE4 001F5E44 D0 01 00 84 */ stfs f0, 0x84(r1) +/* 801F8EE8 001F5E48 91 61 00 08 */ stw r11, 8(r1) +/* 801F8EEC 001F5E4C 90 01 00 0C */ stw r0, 0xc(r1) +/* 801F8EF0 001F5E50 4B E7 EB 09 */ bl "LaunchProjectile__10CPatternedFRC12CTransform4fR13CStateManageriQ27CWeapon17EProjectileAttribbRCQ24rstl50optional_object<31TLockedToken<15CGenDescription>>sbRC9CVector3f" +/* 801F8EF4 001F5E54 88 01 00 94 */ lbz r0, 0x94(r1) +/* 801F8EF8 001F5E58 28 00 00 00 */ cmplwi r0, 0 +/* 801F8EFC 001F5E5C 41 82 00 1C */ beq lbl_801F8F18 +/* 801F8F00 001F5E60 34 61 00 88 */ addic. r3, r1, 0x88 +/* 801F8F04 001F5E64 41 82 00 14 */ beq lbl_801F8F18 +/* 801F8F08 001F5E68 28 03 00 00 */ cmplwi r3, 0 +/* 801F8F0C 001F5E6C 41 82 00 0C */ beq lbl_801F8F18 +/* 801F8F10 001F5E70 38 80 00 00 */ li r4, 0 +/* 801F8F14 001F5E74 48 14 7F 2D */ bl __dt__6CTokenFv +lbl_801F8F18: +/* 801F8F18 001F5E78 38 00 00 00 */ li r0, 0 +/* 801F8F1C 001F5E7C 3B E0 00 01 */ li r31, 1 +/* 801F8F20 001F5E80 98 01 00 94 */ stb r0, 0x94(r1) +lbl_801F8F24: +/* 801F8F24 001F5E84 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 801F8F28 001F5E88 41 82 01 6C */ beq lbl_801F9094 +/* 801F8F2C 001F5E8C 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 801F8F30 001F5E90 4B F4 15 25 */ bl GetPASDatabase__15CBodyControllerCFv +/* 801F8F34 001F5E94 7C 60 1B 78 */ mr r0, r3 +/* 801F8F38 001F5E98 38 61 00 28 */ addi r3, r1, 0x28 +/* 801F8F3C 001F5E9C 7C 1C 03 78 */ mr r28, r0 +/* 801F8F40 001F5EA0 48 0E A1 3D */ bl NoParameter__12CPASAnimParmFv +/* 801F8F44 001F5EA4 38 61 00 30 */ addi r3, r1, 0x30 +/* 801F8F48 001F5EA8 48 0E A1 35 */ bl NoParameter__12CPASAnimParmFv +/* 801F8F4C 001F5EAC 38 61 00 38 */ addi r3, r1, 0x38 +/* 801F8F50 001F5EB0 48 0E A1 2D */ bl NoParameter__12CPASAnimParmFv +/* 801F8F54 001F5EB4 38 61 00 40 */ addi r3, r1, 0x40 +/* 801F8F58 001F5EB8 48 0E A1 25 */ bl NoParameter__12CPASAnimParmFv +/* 801F8F5C 001F5EBC 38 61 00 48 */ addi r3, r1, 0x48 +/* 801F8F60 001F5EC0 48 0E A1 1D */ bl NoParameter__12CPASAnimParmFv +/* 801F8F64 001F5EC4 38 61 00 50 */ addi r3, r1, 0x50 +/* 801F8F68 001F5EC8 48 0E A1 15 */ bl NoParameter__12CPASAnimParmFv +/* 801F8F6C 001F5ECC 38 61 00 58 */ addi r3, r1, 0x58 +/* 801F8F70 001F5ED0 48 0E A1 0D */ bl NoParameter__12CPASAnimParmFv +/* 801F8F74 001F5ED4 38 61 00 60 */ addi r3, r1, 0x60 +/* 801F8F78 001F5ED8 38 80 00 02 */ li r4, 2 +/* 801F8F7C 001F5EDC 48 0E A0 09 */ bl FromEnum__12CPASAnimParmFi +/* 801F8F80 001F5EE0 38 61 00 30 */ addi r3, r1, 0x30 +/* 801F8F84 001F5EE4 38 01 00 28 */ addi r0, r1, 0x28 +/* 801F8F88 001F5EE8 90 61 00 08 */ stw r3, 8(r1) +/* 801F8F8C 001F5EEC 38 61 01 E0 */ addi r3, r1, 0x1e0 +/* 801F8F90 001F5EF0 38 A1 00 60 */ addi r5, r1, 0x60 +/* 801F8F94 001F5EF4 38 C1 00 58 */ addi r6, r1, 0x58 +/* 801F8F98 001F5EF8 90 01 00 0C */ stw r0, 0xc(r1) +/* 801F8F9C 001F5EFC 38 E1 00 50 */ addi r7, r1, 0x50 +/* 801F8FA0 001F5F00 39 01 00 48 */ addi r8, r1, 0x48 +/* 801F8FA4 001F5F04 39 21 00 40 */ addi r9, r1, 0x40 +/* 801F8FA8 001F5F08 39 41 00 38 */ addi r10, r1, 0x38 +/* 801F8FAC 001F5F0C 38 80 00 18 */ li r4, 0x18 +/* 801F8FB0 001F5F10 4B E8 43 15 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 801F8FB4 001F5F14 80 DE 09 00 */ lwz r6, 0x900(r30) +/* 801F8FB8 001F5F18 7F 84 E3 78 */ mr r4, r28 +/* 801F8FBC 001F5F1C 38 61 00 20 */ addi r3, r1, 0x20 +/* 801F8FC0 001F5F20 38 A1 01 E0 */ addi r5, r1, 0x1e0 +/* 801F8FC4 001F5F24 38 E0 FF FF */ li r7, -1 +/* 801F8FC8 001F5F28 48 0E C0 99 */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i +/* 801F8FCC 001F5F2C C0 21 00 20 */ lfs f1, 0x20(r1) +/* 801F8FD0 001F5F30 C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801F8FD4 001F5F34 80 81 00 24 */ lwz r4, 0x24(r1) +/* 801F8FD8 001F5F38 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F8FDC 001F5F3C 40 81 00 1C */ ble lbl_801F8FF8 +/* 801F8FE0 001F5F40 80 7D 00 64 */ lwz r3, 0x64(r29) +/* 801F8FE4 001F5F44 38 A0 00 00 */ li r5, 0 +/* 801F8FE8 001F5F48 C0 22 AF 78 */ lfs f1, lbl_805ACC98@sda21(r2) +/* 801F8FEC 001F5F4C 38 C0 00 01 */ li r6, 1 +/* 801F8FF0 001F5F50 80 63 00 10 */ lwz r3, 0x10(r3) +/* 801F8FF4 001F5F54 4B E3 11 DD */ bl AddAdditiveAnimation__9CAnimDataFUifbb +lbl_801F8FF8: +/* 801F8FF8 001F5F58 C0 5D 00 60 */ lfs f2, 0x60(r29) +/* 801F8FFC 001F5F5C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801F9000 001F5F60 C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 801F9004 001F5F64 38 C3 66 A0 */ addi r6, r3, skZero3f@l +/* 801F9008 001F5F68 C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 801F900C 001F5F6C 38 61 00 14 */ addi r3, r1, 0x14 +/* 801F9010 001F5F70 A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) +/* 801F9014 001F5F74 38 A1 00 70 */ addi r5, r1, 0x70 +/* 801F9018 001F5F78 D0 01 00 70 */ stfs f0, 0x70(r1) +/* 801F901C 001F5F7C 38 E0 00 01 */ li r7, 1 +/* 801F9020 001F5F80 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 801F9024 001F5F84 39 00 00 00 */ li r8, 0 +/* 801F9028 001F5F88 D0 21 00 74 */ stfs f1, 0x74(r1) +/* 801F902C 001F5F8C D0 41 00 78 */ stfs f2, 0x78(r1) +/* 801F9030 001F5F90 A0 9D 05 9C */ lhz r4, 0x59c(r29) +/* 801F9034 001F5F94 48 0F 12 7D */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +/* 801F9038 001F5F98 34 A1 01 E4 */ addic. r5, r1, 0x1e4 +/* 801F903C 001F5F9C 41 82 00 58 */ beq lbl_801F9094 +/* 801F9040 001F5FA0 80 C5 00 00 */ lwz r6, 0(r5) +/* 801F9044 001F5FA4 38 60 00 00 */ li r3, 0 +/* 801F9048 001F5FA8 2C 06 00 00 */ cmpwi r6, 0 +/* 801F904C 001F5FAC 40 81 00 40 */ ble lbl_801F908C +/* 801F9050 001F5FB0 2C 06 00 08 */ cmpwi r6, 8 +/* 801F9054 001F5FB4 38 86 FF F8 */ addi r4, r6, -8 +/* 801F9058 001F5FB8 40 81 00 20 */ ble lbl_801F9078 +/* 801F905C 001F5FBC 38 04 00 07 */ addi r0, r4, 7 +/* 801F9060 001F5FC0 54 00 E8 FE */ srwi r0, r0, 3 +/* 801F9064 001F5FC4 7C 09 03 A6 */ mtctr r0 +/* 801F9068 001F5FC8 2C 04 00 00 */ cmpwi r4, 0 +/* 801F906C 001F5FCC 40 81 00 0C */ ble lbl_801F9078 +lbl_801F9070: +/* 801F9070 001F5FD0 38 63 00 08 */ addi r3, r3, 8 +/* 801F9074 001F5FD4 42 00 FF FC */ bdnz lbl_801F9070 +lbl_801F9078: +/* 801F9078 001F5FD8 7C 03 30 50 */ subf r0, r3, r6 +/* 801F907C 001F5FDC 7C 09 03 A6 */ mtctr r0 +/* 801F9080 001F5FE0 7C 03 30 00 */ cmpw r3, r6 +/* 801F9084 001F5FE4 40 80 00 08 */ bge lbl_801F908C +lbl_801F9088: +/* 801F9088 001F5FE8 42 00 00 00 */ bdnz lbl_801F9088 +lbl_801F908C: +/* 801F908C 001F5FEC 38 00 00 00 */ li r0, 0 +/* 801F9090 001F5FF0 90 05 00 00 */ stw r0, 0(r5) +lbl_801F9094: +/* 801F9094 001F5FF4 57 E3 06 3E */ clrlwi r3, r31, 0x18 +/* 801F9098 001F5FF8 E3 E1 02 48 */ psq_l f31, 584(r1), 0, qr0 +/* 801F909C 001F5FFC 80 01 02 54 */ lwz r0, 0x254(r1) +/* 801F90A0 001F6000 CB E1 02 40 */ lfd f31, 0x240(r1) +/* 801F90A4 001F6004 83 E1 02 3C */ lwz r31, 0x23c(r1) +/* 801F90A8 001F6008 83 C1 02 38 */ lwz r30, 0x238(r1) +/* 801F90AC 001F600C 83 A1 02 34 */ lwz r29, 0x234(r1) +/* 801F90B0 001F6010 83 81 02 30 */ lwz r28, 0x230(r1) +/* 801F90B4 001F6014 7C 08 03 A6 */ mtlr r0 +/* 801F90B8 001F6018 38 21 02 50 */ addi r1, r1, 0x250 +/* 801F90BC 001F601C 4E 80 00 20 */ blr + +.global ProjectileInfo__13CFlyingPirateFv +ProjectileInfo__13CFlyingPirateFv: +/* 801F90C0 001F6020 38 63 05 74 */ addi r3, r3, 0x574 +/* 801F90C4 001F6024 4E 80 00 20 */ blr + +.global ShouldRetreat__13CFlyingPirateFR13CStateManagerf +ShouldRetreat__13CFlyingPirateFR13CStateManagerf: +/* 801F90C8 001F6028 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801F90CC 001F602C 7C 08 02 A6 */ mflr r0 +/* 801F90D0 001F6030 90 01 00 54 */ stw r0, 0x54(r1) +/* 801F90D4 001F6034 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801F90D8 001F6038 3B E0 00 00 */ li r31, 0 +/* 801F90DC 001F603C 93 C1 00 48 */ stw r30, 0x48(r1) +/* 801F90E0 001F6040 7C 7E 1B 78 */ mr r30, r3 +/* 801F90E4 001F6044 93 A1 00 44 */ stw r29, 0x44(r1) +/* 801F90E8 001F6048 7C 9D 23 78 */ mr r29, r4 +/* 801F90EC 001F604C 88 03 06 A2 */ lbz r0, 0x6a2(r3) +/* 801F90F0 001F6050 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 801F90F4 001F6054 41 82 01 34 */ beq lbl_801F9228 +/* 801F90F8 001F6058 7F C4 F3 78 */ mr r4, r30 +/* 801F90FC 001F605C 7F A5 EB 78 */ mr r5, r29 +/* 801F9100 001F6060 38 61 00 14 */ addi r3, r1, 0x14 +/* 801F9104 001F6064 38 C0 00 0D */ li r6, 0xd +/* 801F9108 001F6068 38 E0 00 06 */ li r7, 6 +/* 801F910C 001F606C 4B FF BE 8D */ bl GetWaypointForState__10CPatternedFR13CStateManager18EScriptObjectState +/* 801F9110 001F6070 A0 01 00 14 */ lhz r0, 0x14(r1) +/* 801F9114 001F6074 7F A3 EB 78 */ mr r3, r29 +/* 801F9118 001F6078 38 81 00 10 */ addi r4, r1, 0x10 +/* 801F911C 001F607C B0 01 00 18 */ sth r0, 0x18(r1) +/* 801F9120 001F6080 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801F9124 001F6084 4B E5 34 81 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801F9128 001F6088 7C 64 1B 78 */ mr r4, r3 +/* 801F912C 001F608C 38 61 00 24 */ addi r3, r1, 0x24 +/* 801F9130 001F6090 4B EA D4 1D */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 801F9134 001F6094 80 03 00 04 */ lwz r0, 4(r3) +/* 801F9138 001F6098 28 00 00 00 */ cmplwi r0, 0 +/* 801F913C 001F609C 7C 05 03 78 */ mr r5, r0 +/* 801F9140 001F60A0 40 82 00 44 */ bne lbl_801F9184 +/* 801F9144 001F60A4 7F C4 F3 78 */ mr r4, r30 +/* 801F9148 001F60A8 7F A5 EB 78 */ mr r5, r29 +/* 801F914C 001F60AC 38 61 00 0C */ addi r3, r1, 0xc +/* 801F9150 001F60B0 38 C0 00 0C */ li r6, 0xc +/* 801F9154 001F60B4 38 E0 00 06 */ li r7, 6 +/* 801F9158 001F60B8 4B FF BE 41 */ bl GetWaypointForState__10CPatternedFR13CStateManager18EScriptObjectState +/* 801F915C 001F60BC A0 01 00 0C */ lhz r0, 0xc(r1) +/* 801F9160 001F60C0 7F A3 EB 78 */ mr r3, r29 +/* 801F9164 001F60C4 38 81 00 08 */ addi r4, r1, 8 +/* 801F9168 001F60C8 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801F916C 001F60CC B0 01 00 08 */ sth r0, 8(r1) +/* 801F9170 001F60D0 4B E5 34 35 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801F9174 001F60D4 7C 64 1B 78 */ mr r4, r3 +/* 801F9178 001F60D8 38 61 00 1C */ addi r3, r1, 0x1c +/* 801F917C 001F60DC 4B EA D3 D1 */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 801F9180 001F60E0 80 A3 00 04 */ lwz r5, 4(r3) +lbl_801F9184: +/* 801F9184 001F60E4 28 05 00 00 */ cmplwi r5, 0 +/* 801F9188 001F60E8 41 82 00 A0 */ beq lbl_801F9228 +/* 801F918C 001F60EC 88 7E 06 A2 */ lbz r3, 0x6a2(r30) +/* 801F9190 001F60F0 38 00 00 00 */ li r0, 0 +/* 801F9194 001F60F4 50 03 1F 38 */ rlwimi r3, r0, 3, 0x1c, 0x1c +/* 801F9198 001F60F8 A0 01 00 18 */ lhz r0, 0x18(r1) +/* 801F919C 001F60FC 98 7E 06 A2 */ stb r3, 0x6a2(r30) +/* 801F91A0 001F6100 7F C3 F3 78 */ mr r3, r30 +/* 801F91A4 001F6104 38 81 00 2C */ addi r4, r1, 0x2c +/* 801F91A8 001F6108 3B E0 00 01 */ li r31, 1 +/* 801F91AC 001F610C B0 1E 02 DC */ sth r0, 0x2dc(r30) +/* 801F91B0 001F6110 C0 45 00 60 */ lfs f2, 0x60(r5) +/* 801F91B4 001F6114 C0 25 00 50 */ lfs f1, 0x50(r5) +/* 801F91B8 001F6118 C0 05 00 40 */ lfs f0, 0x40(r5) +/* 801F91BC 001F611C D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801F91C0 001F6120 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 801F91C4 001F6124 D0 41 00 34 */ stfs f2, 0x34(r1) +/* 801F91C8 001F6128 4B E8 39 95 */ bl SetDestPos__10CPatternedFRC9CVector3f +/* 801F91CC 001F612C C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 801F91D0 001F6130 38 80 00 00 */ li r4, 0 +/* 801F91D4 001F6134 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 801F91D8 001F6138 38 60 00 01 */ li r3, 1 +/* 801F91DC 001F613C C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801F91E0 001F6140 D0 1E 02 EC */ stfs f0, 0x2ec(r30) +/* 801F91E4 001F6144 D0 3E 02 F0 */ stfs f1, 0x2f0(r30) +/* 801F91E8 001F6148 D0 5E 02 F4 */ stfs f2, 0x2f4(r30) +/* 801F91EC 001F614C 88 1E 03 28 */ lbz r0, 0x328(r30) +/* 801F91F0 001F6150 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801F91F4 001F6154 98 1E 03 28 */ stb r0, 0x328(r30) +/* 801F91F8 001F6158 88 1E 06 A1 */ lbz r0, 0x6a1(r30) +/* 801F91FC 001F615C 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801F9200 001F6160 98 1E 06 A1 */ stb r0, 0x6a1(r30) +/* 801F9204 001F6164 88 1E 06 A0 */ lbz r0, 0x6a0(r30) +/* 801F9208 001F6168 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 801F920C 001F616C 98 1E 06 A0 */ stb r0, 0x6a0(r30) +/* 801F9210 001F6170 88 1E 06 A0 */ lbz r0, 0x6a0(r30) +/* 801F9214 001F6174 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c +/* 801F9218 001F6178 98 1E 06 A0 */ stb r0, 0x6a0(r30) +/* 801F921C 001F617C 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 801F9220 001F6180 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801F9224 001F6184 98 1E 04 00 */ stb r0, 0x400(r30) +lbl_801F9228: +/* 801F9228 001F6188 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801F922C 001F618C 7F E3 FB 78 */ mr r3, r31 +/* 801F9230 001F6190 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801F9234 001F6194 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 801F9238 001F6198 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 801F923C 001F619C 7C 08 03 A6 */ mtlr r0 +/* 801F9240 001F61A0 38 21 00 50 */ addi r1, r1, 0x50 +/* 801F9244 001F61A4 4E 80 00 20 */ blr + +.global Deactivate__13CFlyingPirateFR13CStateManager9EStateMsgf +Deactivate__13CFlyingPirateFR13CStateManager9EStateMsgf: +/* 801F9248 001F61A8 2C 05 00 00 */ cmpwi r5, 0 +/* 801F924C 001F61AC 4C 82 00 20 */ bnelr +/* 801F9250 001F61B0 88 03 04 01 */ lbz r0, 0x401(r3) +/* 801F9254 001F61B4 38 80 00 01 */ li r4, 1 +/* 801F9258 001F61B8 50 80 0F BC */ rlwimi r0, r4, 1, 0x1e, 0x1e +/* 801F925C 001F61BC 98 03 04 01 */ stb r0, 0x401(r3) +/* 801F9260 001F61C0 4E 80 00 20 */ blr + +.global Explode__13CFlyingPirateFR13CStateManager9EStateMsgf +Explode__13CFlyingPirateFR13CStateManager9EStateMsgf: +/* 801F9264 001F61C4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801F9268 001F61C8 7C 08 02 A6 */ mflr r0 +/* 801F926C 001F61CC 2C 05 00 01 */ cmpwi r5, 1 +/* 801F9270 001F61D0 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F9274 001F61D4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801F9278 001F61D8 7C 9F 23 78 */ mr r31, r4 +/* 801F927C 001F61DC 93 C1 00 08 */ stw r30, 8(r1) +/* 801F9280 001F61E0 7C 7E 1B 78 */ mr r30, r3 +/* 801F9284 001F61E4 41 82 00 74 */ beq lbl_801F92F8 +/* 801F9288 001F61E8 40 80 00 84 */ bge lbl_801F930C +/* 801F928C 001F61EC 2C 05 00 00 */ cmpwi r5, 0 +/* 801F9290 001F61F0 40 80 00 0C */ bge lbl_801F929C +/* 801F9294 001F61F4 48 00 00 78 */ b lbl_801F930C +/* 801F9298 001F61F8 48 00 00 74 */ b lbl_801F930C +lbl_801F929C: +/* 801F929C 001F61FC 7F E8 FB 78 */ mr r8, r31 +/* 801F92A0 001F6200 38 80 00 28 */ li r4, 0x28 +/* 801F92A4 001F6204 38 A0 00 29 */ li r5, 0x29 +/* 801F92A8 001F6208 38 C0 00 25 */ li r6, 0x25 +/* 801F92AC 001F620C 38 E0 00 13 */ li r7, 0x13 +/* 801F92B0 001F6210 4B E5 AA 39 */ bl RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypes14EMaterialTypes14EMaterialTypesR13CStateManager +/* 801F92B4 001F6214 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801F92B8 001F6218 C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) +/* 801F92BC 001F621C D0 1E 01 50 */ stfs f0, 0x150(r30) +/* 801F92C0 001F6220 C0 03 00 04 */ lfs f0, 4(r3) +/* 801F92C4 001F6224 D0 1E 01 54 */ stfs f0, 0x154(r30) +/* 801F92C8 001F6228 C0 03 00 08 */ lfs f0, 8(r3) +/* 801F92CC 001F622C D0 1E 01 58 */ stfs f0, 0x158(r30) +/* 801F92D0 001F6230 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 801F92D4 001F6234 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 801F92D8 001F6238 40 82 00 34 */ bne lbl_801F930C +/* 801F92DC 001F623C 7F C3 F3 78 */ mr r3, r30 +/* 801F92E0 001F6240 7F E4 FB 78 */ mr r4, r31 +/* 801F92E4 001F6244 81 9E 00 00 */ lwz r12, 0(r30) +/* 801F92E8 001F6248 81 8C 02 98 */ lwz r12, 0x298(r12) +/* 801F92EC 001F624C 7D 89 03 A6 */ mtctr r12 +/* 801F92F0 001F6250 4E 80 04 21 */ bctrl +/* 801F92F4 001F6254 48 00 00 18 */ b lbl_801F930C +lbl_801F92F8: +/* 801F92F8 001F6258 C0 3E 03 38 */ lfs f1, 0x338(r30) +/* 801F92FC 001F625C C0 02 AF B0 */ lfs f0, lbl_805ACCD0@sda21(r2) +/* 801F9300 001F6260 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F9304 001F6264 40 81 00 08 */ ble lbl_801F930C +/* 801F9308 001F6268 4B E7 F6 F9 */ bl DeathDelete__10CPatternedFR13CStateManager +lbl_801F930C: +/* 801F930C 001F626C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801F9310 001F6270 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801F9314 001F6274 83 C1 00 08 */ lwz r30, 8(r1) +/* 801F9318 001F6278 7C 08 03 A6 */ mtlr r0 +/* 801F931C 001F627C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801F9320 001F6280 4E 80 00 20 */ blr + +.global AnimOver__13CFlyingPirateFR13CStateManagerf +AnimOver__13CFlyingPirateFR13CStateManagerf: +/* 801F9324 001F6284 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801F9328 001F6288 7C 08 02 A6 */ mflr r0 +/* 801F932C 001F628C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F9330 001F6290 80 A3 04 50 */ lwz r5, 0x450(r3) +/* 801F9334 001F6294 80 05 02 B8 */ lwz r0, 0x2b8(r5) +/* 801F9338 001F6298 2C 00 00 04 */ cmpwi r0, 4 +/* 801F933C 001F629C 40 82 00 0C */ bne lbl_801F9348 +/* 801F9340 001F62A0 38 60 00 01 */ li r3, 1 +/* 801F9344 001F62A4 48 00 00 08 */ b lbl_801F934C +lbl_801F9348: +/* 801F9348 001F62A8 4B FF C8 2D */ bl AnimOver__10CPatternedFR13CStateManagerf +lbl_801F934C: +/* 801F934C 001F62AC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801F9350 001F62B0 7C 08 03 A6 */ mtlr r0 +/* 801F9354 001F62B4 38 21 00 10 */ addi r1, r1, 0x10 +/* 801F9358 001F62B8 4E 80 00 20 */ blr + +.global Dead__13CFlyingPirateFR13CStateManager9EStateMsgf +Dead__13CFlyingPirateFR13CStateManager9EStateMsgf: +/* 801F935C 001F62BC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801F9360 001F62C0 7C 08 02 A6 */ mflr r0 +/* 801F9364 001F62C4 90 01 00 34 */ stw r0, 0x34(r1) +/* 801F9368 001F62C8 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801F936C 001F62CC 7C BF 2B 78 */ mr r31, r5 +/* 801F9370 001F62D0 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801F9374 001F62D4 7C 9E 23 78 */ mr r30, r4 +/* 801F9378 001F62D8 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801F937C 001F62DC 7C 7D 1B 78 */ mr r29, r3 +/* 801F9380 001F62E0 4B FF D6 45 */ bl Dead__10CPatternedFR13CStateManager9EStateMsgf +/* 801F9384 001F62E4 2C 1F 00 00 */ cmpwi r31, 0 +/* 801F9388 001F62E8 41 82 00 0C */ beq lbl_801F9394 +/* 801F938C 001F62EC 41 80 00 5C */ blt lbl_801F93E8 +/* 801F9390 001F62F0 48 00 00 58 */ b lbl_801F93E8 +lbl_801F9394: +/* 801F9394 001F62F4 38 7D 07 A0 */ addi r3, r29, 0x7a0 +/* 801F9398 001F62F8 38 80 00 00 */ li r4, 0 +/* 801F939C 001F62FC 4B F7 BE 89 */ bl SetActive__13CBoneTrackingFb +/* 801F93A0 001F6300 80 BD 00 64 */ lwz r5, 0x64(r29) +/* 801F93A4 001F6304 3C 60 80 57 */ lis r3, lbl_80572118@ha +/* 801F93A8 001F6308 38 83 21 18 */ addi r4, r3, lbl_80572118@l +/* 801F93AC 001F630C 7F C6 F3 78 */ mr r6, r30 +/* 801F93B0 001F6310 80 65 00 10 */ lwz r3, 0x10(r5) +/* 801F93B4 001F6314 38 A0 00 00 */ li r5, 0 +/* 801F93B8 001F6318 4B E3 1A 09 */ bl SetParticleEffectState__9CAnimDataFQ24rstl6stringbR13CStateManager +/* 801F93BC 001F631C A1 1D 00 08 */ lhz r8, 8(r29) +/* 801F93C0 001F6320 7F C4 F3 78 */ mr r4, r30 +/* 801F93C4 001F6324 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801F93C8 001F6328 38 C1 00 0C */ addi r6, r1, 0xc +/* 801F93CC 001F632C B1 01 00 0C */ sth r8, 0xc(r1) +/* 801F93D0 001F6330 38 60 00 01 */ li r3, 1 +/* 801F93D4 001F6334 38 E0 00 01 */ li r7, 1 +/* 801F93D8 001F6338 A0 1D 08 90 */ lhz r0, 0x890(r29) +/* 801F93DC 001F633C B1 01 00 08 */ sth r8, 8(r1) +/* 801F93E0 001F6340 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801F93E4 001F6344 48 04 0A ED */ bl ResetTeamAiRole__10CTeamAiMgrF11EAttackTypeR13CStateManager9TUniqueId9TUniqueIdb +lbl_801F93E8: +/* 801F93E8 001F6348 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801F93EC 001F634C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801F93F0 001F6350 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801F93F4 001F6354 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801F93F8 001F6358 7C 08 03 A6 */ mtlr r0 +/* 801F93FC 001F635C 38 21 00 30 */ addi r1, r1, 0x30 +/* 801F9400 001F6360 4E 80 00 20 */ blr + +.global Enraged__13CFlyingPirateFR13CStateManager9EStateMsgf +Enraged__13CFlyingPirateFR13CStateManager9EStateMsgf: +/* 801F9404 001F6364 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 801F9408 001F6368 7C 08 02 A6 */ mflr r0 +/* 801F940C 001F636C 90 01 00 84 */ stw r0, 0x84(r1) +/* 801F9410 001F6370 DB E1 00 70 */ stfd f31, 0x70(r1) +/* 801F9414 001F6374 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 +/* 801F9418 001F6378 DB C1 00 60 */ stfd f30, 0x60(r1) +/* 801F941C 001F637C F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 +/* 801F9420 001F6380 DB A1 00 50 */ stfd f29, 0x50(r1) +/* 801F9424 001F6384 F3 A1 00 58 */ psq_st f29, 88(r1), 0, qr0 +/* 801F9428 001F6388 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801F942C 001F638C 93 C1 00 48 */ stw r30, 0x48(r1) +/* 801F9430 001F6390 2C 05 00 01 */ cmpwi r5, 1 +/* 801F9434 001F6394 7C 7E 1B 78 */ mr r30, r3 +/* 801F9438 001F6398 7C 85 23 78 */ mr r5, r4 +/* 801F943C 001F639C 41 82 00 08 */ beq lbl_801F9444 +/* 801F9440 001F63A0 48 00 01 08 */ b lbl_801F9548 +lbl_801F9444: +/* 801F9444 001F63A4 C0 5E 06 2C */ lfs f2, 0x62c(r30) +/* 801F9448 001F63A8 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 801F944C 001F63AC 3B E3 66 F4 */ addi r31, r3, lbl_805A66F4@l +/* 801F9450 001F63B0 C0 02 AF B4 */ lfs f0, lbl_805ACCD4@sda21(r2) +/* 801F9454 001F63B4 EC A1 00 B2 */ fmuls f5, f1, f2 +/* 801F9458 001F63B8 C0 5F 00 00 */ lfs f2, 0(r31) +/* 801F945C 001F63BC C0 9F 00 04 */ lfs f4, 4(r31) +/* 801F9460 001F63C0 7F C4 F3 78 */ mr r4, r30 +/* 801F9464 001F63C4 C0 7F 00 08 */ lfs f3, 8(r31) +/* 801F9468 001F63C8 38 61 00 08 */ addi r3, r1, 8 +/* 801F946C 001F63CC EC A1 01 72 */ fmuls f5, f1, f5 +/* 801F9470 001F63D0 EC 25 00 B2 */ fmuls f1, f5, f2 +/* 801F9474 001F63D4 EC 85 01 32 */ fmuls f4, f5, f4 +/* 801F9478 001F63D8 EC 45 00 F2 */ fmuls f2, f5, f3 +/* 801F947C 001F63DC D0 3E 08 7C */ stfs f1, 0x87c(r30) +/* 801F9480 001F63E0 D0 9E 08 80 */ stfs f4, 0x880(r30) +/* 801F9484 001F63E4 D0 5E 08 84 */ stfs f2, 0x884(r30) +/* 801F9488 001F63E8 D0 1E 08 98 */ stfs f0, 0x898(r30) +/* 801F948C 001F63EC C0 3E 08 70 */ lfs f1, 0x870(r30) +/* 801F9490 001F63F0 C0 1E 08 7C */ lfs f0, 0x87c(r30) +/* 801F9494 001F63F4 EC 01 00 2A */ fadds f0, f1, f0 +/* 801F9498 001F63F8 D0 1E 08 70 */ stfs f0, 0x870(r30) +/* 801F949C 001F63FC C0 3E 08 74 */ lfs f1, 0x874(r30) +/* 801F94A0 001F6400 C0 1E 08 80 */ lfs f0, 0x880(r30) +/* 801F94A4 001F6404 EC 01 00 2A */ fadds f0, f1, f0 +/* 801F94A8 001F6408 D0 1E 08 74 */ stfs f0, 0x874(r30) +/* 801F94AC 001F640C C0 3E 08 78 */ lfs f1, 0x878(r30) +/* 801F94B0 001F6410 C0 1E 08 84 */ lfs f0, 0x884(r30) +/* 801F94B4 001F6414 EC 01 00 2A */ fadds f0, f1, f0 +/* 801F94B8 001F6418 D0 1E 08 78 */ stfs f0, 0x878(r30) +/* 801F94BC 001F641C C3 BE 00 60 */ lfs f29, 0x60(r30) +/* 801F94C0 001F6420 C3 DE 00 50 */ lfs f30, 0x50(r30) +/* 801F94C4 001F6424 C3 FE 00 40 */ lfs f31, 0x40(r30) +/* 801F94C8 001F6428 48 00 33 CD */ bl GetTargetPos__13CFlyingPirateFR13CStateManager +/* 801F94CC 001F642C C0 41 00 08 */ lfs f2, 8(r1) +/* 801F94D0 001F6430 38 61 00 20 */ addi r3, r1, 0x20 +/* 801F94D4 001F6434 C0 21 00 0C */ lfs f1, 0xc(r1) +/* 801F94D8 001F6438 38 81 00 14 */ addi r4, r1, 0x14 +/* 801F94DC 001F643C C0 01 00 10 */ lfs f0, 0x10(r1) +/* 801F94E0 001F6440 EC 42 F8 28 */ fsubs f2, f2, f31 +/* 801F94E4 001F6444 EC 21 F0 28 */ fsubs f1, f1, f30 +/* 801F94E8 001F6448 EC 00 E8 28 */ fsubs f0, f0, f29 +/* 801F94EC 001F644C D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801F94F0 001F6450 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801F94F4 001F6454 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801F94F8 001F6458 48 11 B3 59 */ bl AsNormalized__9CVector3fCFv +/* 801F94FC 001F645C 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 801F9500 001F6460 C0 BF 00 04 */ lfs f5, 4(r31) +/* 801F9504 001F6464 C0 9F 00 08 */ lfs f4, 8(r31) +/* 801F9508 001F6468 38 81 00 2C */ addi r4, r1, 0x2c +/* 801F950C 001F646C C0 C3 66 F4 */ lfs f6, lbl_805A66F4@l(r3) +/* 801F9510 001F6470 C0 61 00 20 */ lfs f3, 0x20(r1) +/* 801F9514 001F6474 C0 41 00 24 */ lfs f2, 0x24(r1) +/* 801F9518 001F6478 C0 21 00 28 */ lfs f1, 0x28(r1) +/* 801F951C 001F647C C0 02 AF 78 */ lfs f0, lbl_805ACC98@sda21(r2) +/* 801F9520 001F6480 D0 C1 00 2C */ stfs f6, 0x2c(r1) +/* 801F9524 001F6484 D0 A1 00 30 */ stfs f5, 0x30(r1) +/* 801F9528 001F6488 D0 81 00 34 */ stfs f4, 0x34(r1) +/* 801F952C 001F648C D0 61 00 38 */ stfs f3, 0x38(r1) +/* 801F9530 001F6490 D0 41 00 3C */ stfs f2, 0x3c(r1) +/* 801F9534 001F6494 D0 21 00 40 */ stfs f1, 0x40(r1) +/* 801F9538 001F6498 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 801F953C 001F649C 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801F9540 001F64A0 38 63 00 04 */ addi r3, r3, 4 +/* 801F9544 001F64A4 4B F3 81 D5 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +lbl_801F9548: +/* 801F9548 001F64A8 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 +/* 801F954C 001F64AC CB E1 00 70 */ lfd f31, 0x70(r1) +/* 801F9550 001F64B0 E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 +/* 801F9554 001F64B4 CB C1 00 60 */ lfd f30, 0x60(r1) +/* 801F9558 001F64B8 E3 A1 00 58 */ psq_l f29, 88(r1), 0, qr0 +/* 801F955C 001F64BC CB A1 00 50 */ lfd f29, 0x50(r1) +/* 801F9560 001F64C0 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801F9564 001F64C4 80 01 00 84 */ lwz r0, 0x84(r1) +/* 801F9568 001F64C8 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 801F956C 001F64CC 7C 08 03 A6 */ mtlr r0 +/* 801F9570 001F64D0 38 21 00 80 */ addi r1, r1, 0x80 +/* 801F9574 001F64D4 4E 80 00 20 */ blr + +.global AggressionCheck__13CFlyingPirateFR13CStateManagerf +AggressionCheck__13CFlyingPirateFR13CStateManagerf: +/* 801F9578 001F64D8 88 03 06 A2 */ lbz r0, 0x6a2(r3) +/* 801F957C 001F64DC 54 03 CF FE */ rlwinm r3, r0, 0x19, 0x1f, 0x1f +/* 801F9580 001F64E0 4E 80 00 20 */ blr + +.global Stuck__13CFlyingPirateFR13CStateManagerf +Stuck__13CFlyingPirateFR13CStateManagerf: +/* 801F9584 001F64E4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801F9588 001F64E8 7C 08 02 A6 */ mflr r0 +/* 801F958C 001F64EC C0 02 AF 74 */ lfs f0, lbl_805ACC94@sda21(r2) +/* 801F9590 001F64F0 90 01 00 24 */ stw r0, 0x24(r1) +/* 801F9594 001F64F4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801F9598 001F64F8 3B E0 00 00 */ li r31, 0 +/* 801F959C 001F64FC 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801F95A0 001F6500 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801F95A4 001F6504 7C 7D 1B 78 */ mr r29, r3 +/* 801F95A8 001F6508 C0 43 03 38 */ lfs f2, 0x338(r3) +/* 801F95AC 001F650C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801F95B0 001F6510 40 81 00 44 */ ble lbl_801F95F4 +/* 801F95B4 001F6514 3B C0 00 01 */ li r30, 1 +/* 801F95B8 001F6518 4B FF C5 A5 */ bl Stuck__10CPatternedFR13CStateManagerf +/* 801F95BC 001F651C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801F95C0 001F6520 40 82 00 28 */ bne lbl_801F95E8 +/* 801F95C4 001F6524 7F A3 EB 78 */ mr r3, r29 +/* 801F95C8 001F6528 81 9D 00 00 */ lwz r12, 0(r29) +/* 801F95CC 001F652C 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801F95D0 001F6530 7D 89 03 A6 */ mtctr r12 +/* 801F95D4 001F6534 4E 80 04 21 */ bctrl +/* 801F95D8 001F6538 80 03 00 CC */ lwz r0, 0xcc(r3) +/* 801F95DC 001F653C 2C 00 00 00 */ cmpwi r0, 0 +/* 801F95E0 001F6540 40 82 00 08 */ bne lbl_801F95E8 +/* 801F95E4 001F6544 3B C0 00 00 */ li r30, 0 +lbl_801F95E8: +/* 801F95E8 001F6548 57 C0 06 3F */ clrlwi. r0, r30, 0x18 +/* 801F95EC 001F654C 41 82 00 08 */ beq lbl_801F95F4 +/* 801F95F0 001F6550 3B E0 00 01 */ li r31, 1 +lbl_801F95F4: +/* 801F95F4 001F6554 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801F95F8 001F6558 7F E3 FB 78 */ mr r3, r31 +/* 801F95FC 001F655C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801F9600 001F6560 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801F9604 001F6564 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801F9608 001F6568 7C 08 03 A6 */ mtlr r0 +/* 801F960C 001F656C 38 21 00 20 */ addi r1, r1, 0x20 +/* 801F9610 001F6570 4E 80 00 20 */ blr + +.global ShouldMove__13CFlyingPirateFR13CStateManagerf +ShouldMove__13CFlyingPirateFR13CStateManagerf: +/* 801F9614 001F6574 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 801F9618 001F6578 7C 08 02 A6 */ mflr r0 +/* 801F961C 001F657C 90 01 00 84 */ stw r0, 0x84(r1) +/* 801F9620 001F6580 DB E1 00 70 */ stfd f31, 0x70(r1) +/* 801F9624 001F6584 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 +/* 801F9628 001F6588 DB C1 00 60 */ stfd f30, 0x60(r1) +/* 801F962C 001F658C F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 +/* 801F9630 001F6590 DB A1 00 50 */ stfd f29, 0x50(r1) +/* 801F9634 001F6594 F3 A1 00 58 */ psq_st f29, 88(r1), 0, qr0 +/* 801F9638 001F6598 DB 81 00 40 */ stfd f28, 0x40(r1) +/* 801F963C 001F659C F3 81 00 48 */ psq_st f28, 72(r1), 0, qr0 +/* 801F9640 001F65A0 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801F9644 001F65A4 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801F9648 001F65A8 7C 9F 23 78 */ mr r31, r4 +/* 801F964C 001F65AC 7C 7E 1B 78 */ mr r30, r3 +/* 801F9650 001F65B0 80 64 08 4C */ lwz r3, 0x84c(r4) +/* 801F9654 001F65B4 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 801F9658 001F65B8 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801F965C 001F65BC C0 7E 00 50 */ lfs f3, 0x50(r30) +/* 801F9660 001F65C0 C0 43 00 50 */ lfs f2, 0x50(r3) +/* 801F9664 001F65C4 EF 81 00 28 */ fsubs f28, f1, f0 +/* 801F9668 001F65C8 C0 3E 00 60 */ lfs f1, 0x60(r30) +/* 801F966C 001F65CC C0 03 00 60 */ lfs f0, 0x60(r3) +/* 801F9670 001F65D0 EF A3 10 28 */ fsubs f29, f3, f2 +/* 801F9674 001F65D4 80 64 09 00 */ lwz r3, 0x900(r4) +/* 801F9678 001F65D8 EF C1 00 28 */ fsubs f30, f1, f0 +/* 801F967C 001F65DC 48 11 8E 61 */ bl Float__9CRandom16Fv +/* 801F9680 001F65E0 C0 02 AF 74 */ lfs f0, lbl_805ACC94@sda21(r2) +/* 801F9684 001F65E4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F9688 001F65E8 40 80 00 1C */ bge lbl_801F96A4 +/* 801F968C 001F65EC 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 801F9690 001F65F0 C0 22 AF B8 */ lfs f1, lbl_805ACCD8@sda21(r2) +/* 801F9694 001F65F4 C0 42 AF BC */ lfs f2, lbl_805ACCDC@sda21(r2) +/* 801F9698 001F65F8 48 11 8E AD */ bl Range__9CRandom16Fff +/* 801F969C 001F65FC FF E0 08 90 */ fmr f31, f1 +/* 801F96A0 001F6600 48 00 00 18 */ b lbl_801F96B8 +lbl_801F96A4: +/* 801F96A4 001F6604 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 801F96A8 001F6608 C0 22 AF C0 */ lfs f1, lbl_805ACCE0@sda21(r2) +/* 801F96AC 001F660C C0 42 AF C4 */ lfs f2, lbl_805ACCE4@sda21(r2) +/* 801F96B0 001F6610 48 11 8E 95 */ bl Range__9CRandom16Fff +/* 801F96B4 001F6614 FF E0 08 90 */ fmr f31, f1 +lbl_801F96B8: +/* 801F96B8 001F6618 3C 80 80 5A */ lis r4, lbl_805A66F4@ha +/* 801F96BC 001F661C 38 61 00 20 */ addi r3, r1, 0x20 +/* 801F96C0 001F6620 38 A4 66 F4 */ addi r5, r4, lbl_805A66F4@l +/* 801F96C4 001F6624 38 81 00 14 */ addi r4, r1, 0x14 +/* 801F96C8 001F6628 C0 65 00 04 */ lfs f3, 4(r5) +/* 801F96CC 001F662C C0 85 00 08 */ lfs f4, 8(r5) +/* 801F96D0 001F6630 C0 A5 00 00 */ lfs f5, 0(r5) +/* 801F96D4 001F6634 EC 43 07 B2 */ fmuls f2, f3, f30 +/* 801F96D8 001F6638 EC 24 07 32 */ fmuls f1, f4, f28 +/* 801F96DC 001F663C EC 05 07 72 */ fmuls f0, f5, f29 +/* 801F96E0 001F6640 EC 5D 11 38 */ fmsubs f2, f29, f4, f2 +/* 801F96E4 001F6644 EC 3E 09 78 */ fmsubs f1, f30, f5, f1 +/* 801F96E8 001F6648 EC 1C 00 F8 */ fmsubs f0, f28, f3, f0 +/* 801F96EC 001F664C D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801F96F0 001F6650 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801F96F4 001F6654 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801F96F8 001F6658 48 11 B1 59 */ bl AsNormalized__9CVector3fCFv +/* 801F96FC 001F665C C0 41 00 24 */ lfs f2, 0x24(r1) +/* 801F9700 001F6660 7F C3 F3 78 */ mr r3, r30 +/* 801F9704 001F6664 C0 21 00 28 */ lfs f1, 0x28(r1) +/* 801F9708 001F6668 38 81 00 2C */ addi r4, r1, 0x2c +/* 801F970C 001F666C C0 01 00 20 */ lfs f0, 0x20(r1) +/* 801F9710 001F6670 EC 9F 00 B2 */ fmuls f4, f31, f2 +/* 801F9714 001F6674 C0 BE 00 50 */ lfs f5, 0x50(r30) +/* 801F9718 001F6678 EC 5F 00 72 */ fmuls f2, f31, f1 +/* 801F971C 001F667C C0 7E 00 60 */ lfs f3, 0x60(r30) +/* 801F9720 001F6680 EC 1F 00 32 */ fmuls f0, f31, f0 +/* 801F9724 001F6684 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 801F9728 001F6688 EC 85 20 2A */ fadds f4, f5, f4 +/* 801F972C 001F668C EC 43 10 2A */ fadds f2, f3, f2 +/* 801F9730 001F6690 EC 01 00 2A */ fadds f0, f1, f0 +/* 801F9734 001F6694 D0 81 00 30 */ stfs f4, 0x30(r1) +/* 801F9738 001F6698 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801F973C 001F669C D0 41 00 34 */ stfs f2, 0x34(r1) +/* 801F9740 001F66A0 80 BF 08 4C */ lwz r5, 0x84c(r31) +/* 801F9744 001F66A4 C0 1E 05 F4 */ lfs f0, 0x5f4(r30) +/* 801F9748 001F66A8 C0 65 00 60 */ lfs f3, 0x60(r5) +/* 801F974C 001F66AC C0 45 00 50 */ lfs f2, 0x50(r5) +/* 801F9750 001F66B0 C0 25 00 40 */ lfs f1, 0x40(r5) +/* 801F9754 001F66B4 EC 03 00 2A */ fadds f0, f3, f0 +/* 801F9758 001F66B8 D0 41 00 0C */ stfs f2, 0xc(r1) +/* 801F975C 001F66BC D0 21 00 08 */ stfs f1, 8(r1) +/* 801F9760 001F66C0 D0 61 00 10 */ stfs f3, 0x10(r1) +/* 801F9764 001F66C4 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801F9768 001F66C8 4B E8 33 F5 */ bl SetDestPos__10CPatternedFRC9CVector3f +/* 801F976C 001F66CC 88 1E 06 A1 */ lbz r0, 0x6a1(r30) +/* 801F9770 001F66D0 38 60 00 01 */ li r3, 1 +/* 801F9774 001F66D4 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801F9778 001F66D8 38 60 00 01 */ li r3, 1 +/* 801F977C 001F66DC 98 1E 06 A1 */ stb r0, 0x6a1(r30) +/* 801F9780 001F66E0 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 +/* 801F9784 001F66E4 CB E1 00 70 */ lfd f31, 0x70(r1) +/* 801F9788 001F66E8 E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 +/* 801F978C 001F66EC CB C1 00 60 */ lfd f30, 0x60(r1) +/* 801F9790 001F66F0 E3 A1 00 58 */ psq_l f29, 88(r1), 0, qr0 +/* 801F9794 001F66F4 CB A1 00 50 */ lfd f29, 0x50(r1) +/* 801F9798 001F66F8 E3 81 00 48 */ psq_l f28, 72(r1), 0, qr0 +/* 801F979C 001F66FC CB 81 00 40 */ lfd f28, 0x40(r1) +/* 801F97A0 001F6700 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801F97A4 001F6704 80 01 00 84 */ lwz r0, 0x84(r1) +/* 801F97A8 001F6708 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801F97AC 001F670C 7C 08 03 A6 */ mtlr r0 +/* 801F97B0 001F6710 38 21 00 80 */ addi r1, r1, 0x80 +/* 801F97B4 001F6714 4E 80 00 20 */ blr + +.global ProjectileAttack__13CFlyingPirateFR13CStateManager9EStateMsgf +ProjectileAttack__13CFlyingPirateFR13CStateManager9EStateMsgf: +/* 801F97B8 001F6718 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801F97BC 001F671C 7C 08 02 A6 */ mflr r0 +/* 801F97C0 001F6720 2C 05 00 01 */ cmpwi r5, 1 +/* 801F97C4 001F6724 90 01 00 24 */ stw r0, 0x24(r1) +/* 801F97C8 001F6728 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801F97CC 001F672C 7C 7F 1B 78 */ mr r31, r3 +/* 801F97D0 001F6730 41 82 00 38 */ beq lbl_801F9808 +/* 801F97D4 001F6734 40 80 00 10 */ bge lbl_801F97E4 +/* 801F97D8 001F6738 2C 05 00 00 */ cmpwi r5, 0 +/* 801F97DC 001F673C 40 80 00 14 */ bge lbl_801F97F0 +/* 801F97E0 001F6740 48 00 00 78 */ b lbl_801F9858 +lbl_801F97E4: +/* 801F97E4 001F6744 2C 05 00 03 */ cmpwi r5, 3 +/* 801F97E8 001F6748 40 80 00 70 */ bge lbl_801F9858 +/* 801F97EC 001F674C 48 00 00 58 */ b lbl_801F9844 +lbl_801F97F0: +/* 801F97F0 001F6750 88 1F 06 A1 */ lbz r0, 0x6a1(r31) +/* 801F97F4 001F6754 38 60 00 01 */ li r3, 1 +/* 801F97F8 001F6758 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 801F97FC 001F675C 98 1F 06 A1 */ stb r0, 0x6a1(r31) +/* 801F9800 001F6760 90 7F 03 2C */ stw r3, 0x32c(r31) +/* 801F9804 001F6764 48 00 00 54 */ b lbl_801F9858 +lbl_801F9808: +/* 801F9808 001F6768 3C A0 80 3E */ lis r5, lbl_803E6850@ha +/* 801F980C 001F676C 38 C1 00 08 */ addi r6, r1, 8 +/* 801F9810 001F6770 39 45 68 50 */ addi r10, r5, lbl_803E6850@l +/* 801F9814 001F6774 38 A0 00 12 */ li r5, 0x12 +/* 801F9818 001F6778 81 2A 00 00 */ lwz r9, 0(r10) +/* 801F981C 001F677C 38 E0 00 00 */ li r7, 0 +/* 801F9820 001F6780 81 0A 00 04 */ lwz r8, 4(r10) +/* 801F9824 001F6784 80 0A 00 08 */ lwz r0, 8(r10) +/* 801F9828 001F6788 91 21 00 08 */ stw r9, 8(r1) +/* 801F982C 001F678C 91 01 00 0C */ stw r8, 0xc(r1) +/* 801F9830 001F6790 90 01 00 10 */ stw r0, 0x10(r1) +/* 801F9834 001F6794 4B E8 2F 81 */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi +/* 801F9838 001F6798 7F E3 FB 78 */ mr r3, r31 +/* 801F983C 001F679C 48 00 45 09 */ bl sub_801fdd44 +/* 801F9840 001F67A0 48 00 00 18 */ b lbl_801F9858 +lbl_801F9844: +/* 801F9844 001F67A4 88 1F 06 A1 */ lbz r0, 0x6a1(r31) +/* 801F9848 001F67A8 38 60 00 00 */ li r3, 0 +/* 801F984C 001F67AC 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 801F9850 001F67B0 98 1F 06 A1 */ stb r0, 0x6a1(r31) +/* 801F9854 001F67B4 90 7F 03 2C */ stw r3, 0x32c(r31) +lbl_801F9858: +/* 801F9858 001F67B8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801F985C 001F67BC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801F9860 001F67C0 7C 08 03 A6 */ mtlr r0 +/* 801F9864 001F67C4 38 21 00 20 */ addi r1, r1, 0x20 +/* 801F9868 001F67C8 4E 80 00 20 */ blr + +.global Walk__13CFlyingPirateFR13CStateManager9EStateMsgf +Walk__13CFlyingPirateFR13CStateManager9EStateMsgf: +/* 801F986C 001F67CC 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801F9870 001F67D0 7C 08 02 A6 */ mflr r0 +/* 801F9874 001F67D4 2C 05 00 01 */ cmpwi r5, 1 +/* 801F9878 001F67D8 90 01 00 54 */ stw r0, 0x54(r1) +/* 801F987C 001F67DC 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801F9880 001F67E0 7C 9F 23 78 */ mr r31, r4 +/* 801F9884 001F67E4 93 C1 00 48 */ stw r30, 0x48(r1) +/* 801F9888 001F67E8 7C 7E 1B 78 */ mr r30, r3 +/* 801F988C 001F67EC 41 82 00 30 */ beq lbl_801F98BC +/* 801F9890 001F67F0 40 80 00 10 */ bge lbl_801F98A0 +/* 801F9894 001F67F4 2C 05 00 00 */ cmpwi r5, 0 +/* 801F9898 001F67F8 40 80 00 14 */ bge lbl_801F98AC +/* 801F989C 001F67FC 48 00 01 5C */ b lbl_801F99F8 +lbl_801F98A0: +/* 801F98A0 001F6800 2C 05 00 03 */ cmpwi r5, 3 +/* 801F98A4 001F6804 40 80 01 54 */ bge lbl_801F99F8 +/* 801F98A8 001F6808 48 00 01 10 */ b lbl_801F99B8 +lbl_801F98AC: +/* 801F98AC 001F680C C0 22 AF 60 */ lfs f1, lbl_805ACC80@sda21(r2) +/* 801F98B0 001F6810 38 A0 00 00 */ li r5, 0 +/* 801F98B4 001F6814 48 00 43 35 */ bl sub_801fdbe8 +/* 801F98B8 001F6818 48 00 01 40 */ b lbl_801F99F8 +lbl_801F98BC: +/* 801F98BC 001F681C 80 1E 03 2C */ lwz r0, 0x32c(r30) +/* 801F98C0 001F6820 2C 00 00 00 */ cmpwi r0, 0 +/* 801F98C4 001F6824 41 82 00 34 */ beq lbl_801F98F8 +/* 801F98C8 001F6828 3C A0 80 3E */ lis r5, lbl_803E6844@ha +/* 801F98CC 001F682C 38 C1 00 2C */ addi r6, r1, 0x2c +/* 801F98D0 001F6830 39 45 68 44 */ addi r10, r5, lbl_803E6844@l +/* 801F98D4 001F6834 38 A0 00 08 */ li r5, 8 +/* 801F98D8 001F6838 81 2A 00 00 */ lwz r9, 0(r10) +/* 801F98DC 001F683C 38 E0 00 00 */ li r7, 0 +/* 801F98E0 001F6840 81 0A 00 04 */ lwz r8, 4(r10) +/* 801F98E4 001F6844 80 0A 00 08 */ lwz r0, 8(r10) +/* 801F98E8 001F6848 91 21 00 2C */ stw r9, 0x2c(r1) +/* 801F98EC 001F684C 91 01 00 30 */ stw r8, 0x30(r1) +/* 801F98F0 001F6850 90 01 00 34 */ stw r0, 0x34(r1) +/* 801F98F4 001F6854 4B E8 2E C1 */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi +lbl_801F98F8: +/* 801F98F8 001F6858 80 1E 03 2C */ lwz r0, 0x32c(r30) +/* 801F98FC 001F685C 2C 00 00 02 */ cmpwi r0, 2 +/* 801F9900 001F6860 41 82 00 F8 */ beq lbl_801F99F8 +/* 801F9904 001F6864 7F C4 F3 78 */ mr r4, r30 +/* 801F9908 001F6868 7F E5 FB 78 */ mr r5, r31 +/* 801F990C 001F686C 38 61 00 20 */ addi r3, r1, 0x20 +/* 801F9910 001F6870 48 00 2F 85 */ bl GetTargetPos__13CFlyingPirateFR13CStateManager +/* 801F9914 001F6874 C0 21 00 20 */ lfs f1, 0x20(r1) +/* 801F9918 001F6878 38 61 00 08 */ addi r3, r1, 8 +/* 801F991C 001F687C C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801F9920 001F6880 38 81 00 38 */ addi r4, r1, 0x38 +/* 801F9924 001F6884 D0 3E 02 E0 */ stfs f1, 0x2e0(r30) +/* 801F9928 001F6888 C0 21 00 24 */ lfs f1, 0x24(r1) +/* 801F992C 001F688C D0 3E 02 E4 */ stfs f1, 0x2e4(r30) +/* 801F9930 001F6890 C0 21 00 28 */ lfs f1, 0x28(r1) +/* 801F9934 001F6894 D0 3E 02 E8 */ stfs f1, 0x2e8(r30) +/* 801F9938 001F6898 C0 5E 02 E8 */ lfs f2, 0x2e8(r30) +/* 801F993C 001F689C C0 3E 00 60 */ lfs f1, 0x60(r30) +/* 801F9940 001F68A0 C0 9E 02 E4 */ lfs f4, 0x2e4(r30) +/* 801F9944 001F68A4 C0 7E 00 50 */ lfs f3, 0x50(r30) +/* 801F9948 001F68A8 EC A2 08 28 */ fsubs f5, f2, f1 +/* 801F994C 001F68AC C0 5E 02 E0 */ lfs f2, 0x2e0(r30) +/* 801F9950 001F68B0 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 801F9954 001F68B4 EC 64 18 28 */ fsubs f3, f4, f3 +/* 801F9958 001F68B8 EC 22 08 28 */ fsubs f1, f2, f1 +/* 801F995C 001F68BC D0 A1 00 40 */ stfs f5, 0x40(r1) +/* 801F9960 001F68C0 D0 61 00 3C */ stfs f3, 0x3c(r1) +/* 801F9964 001F68C4 D0 21 00 38 */ stfs f1, 0x38(r1) +/* 801F9968 001F68C8 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 801F996C 001F68CC 48 11 AE E5 */ bl AsNormalized__9CVector3fCFv +/* 801F9970 001F68D0 C0 9E 00 48 */ lfs f4, 0x48(r30) +/* 801F9974 001F68D4 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 801F9978 001F68D8 C0 7E 00 38 */ lfs f3, 0x38(r30) +/* 801F997C 001F68DC EC 04 00 32 */ fmuls f0, f4, f0 +/* 801F9980 001F68E0 C0 21 00 08 */ lfs f1, 8(r1) +/* 801F9984 001F68E4 C0 BE 00 58 */ lfs f5, 0x58(r30) +/* 801F9988 001F68E8 C0 41 00 10 */ lfs f2, 0x10(r1) +/* 801F998C 001F68EC EC 23 00 7A */ fmadds f1, f3, f1, f0 +/* 801F9990 001F68F0 C0 02 AF C8 */ lfs f0, lbl_805ACCE8@sda21(r2) +/* 801F9994 001F68F4 D0 61 00 14 */ stfs f3, 0x14(r1) +/* 801F9998 001F68F8 EC 25 08 BA */ fmadds f1, f5, f2, f1 +/* 801F999C 001F68FC D0 81 00 18 */ stfs f4, 0x18(r1) +/* 801F99A0 001F6900 D0 A1 00 1C */ stfs f5, 0x1c(r1) +/* 801F99A4 001F6904 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F99A8 001F6908 40 80 00 50 */ bge lbl_801F99F8 +/* 801F99AC 001F690C 38 00 00 01 */ li r0, 1 +/* 801F99B0 001F6910 90 1E 03 2C */ stw r0, 0x32c(r30) +/* 801F99B4 001F6914 48 00 00 44 */ b lbl_801F99F8 +lbl_801F99B8: +/* 801F99B8 001F6918 38 00 00 00 */ li r0, 0 +/* 801F99BC 001F691C 38 80 00 03 */ li r4, 3 +/* 801F99C0 001F6920 90 1E 03 2C */ stw r0, 0x32c(r30) +/* 801F99C4 001F6924 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801F99C8 001F6928 4B F4 10 11 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 801F99CC 001F692C 88 1E 03 28 */ lbz r0, 0x328(r30) +/* 801F99D0 001F6930 38 60 00 01 */ li r3, 1 +/* 801F99D4 001F6934 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801F99D8 001F6938 98 1E 03 28 */ stb r0, 0x328(r30) +/* 801F99DC 001F693C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801F99E0 001F6940 C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) +/* 801F99E4 001F6944 D0 1E 01 50 */ stfs f0, 0x150(r30) +/* 801F99E8 001F6948 C0 03 00 04 */ lfs f0, 4(r3) +/* 801F99EC 001F694C D0 1E 01 54 */ stfs f0, 0x154(r30) +/* 801F99F0 001F6950 C0 03 00 08 */ lfs f0, 8(r3) +/* 801F99F4 001F6954 D0 1E 01 58 */ stfs f0, 0x158(r30) +lbl_801F99F8: +/* 801F99F8 001F6958 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801F99FC 001F695C 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801F9A00 001F6960 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 801F9A04 001F6964 7C 08 03 A6 */ mtlr r0 +/* 801F9A08 001F6968 38 21 00 50 */ addi r1, r1, 0x50 +/* 801F9A0C 001F696C 4E 80 00 20 */ blr + +.global Land__13CFlyingPirateFR13CStateManager9EStateMsgf +Land__13CFlyingPirateFR13CStateManager9EStateMsgf: +/* 801F9A10 001F6970 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801F9A14 001F6974 7C 08 02 A6 */ mflr r0 +/* 801F9A18 001F6978 2C 05 00 01 */ cmpwi r5, 1 +/* 801F9A1C 001F697C 90 01 00 24 */ stw r0, 0x24(r1) +/* 801F9A20 001F6980 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801F9A24 001F6984 7C 9F 23 78 */ mr r31, r4 +/* 801F9A28 001F6988 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801F9A2C 001F698C 7C 7E 1B 78 */ mr r30, r3 +/* 801F9A30 001F6990 41 82 00 48 */ beq lbl_801F9A78 +/* 801F9A34 001F6994 40 80 00 10 */ bge lbl_801F9A44 +/* 801F9A38 001F6998 2C 05 00 00 */ cmpwi r5, 0 +/* 801F9A3C 001F699C 40 80 00 14 */ bge lbl_801F9A50 +/* 801F9A40 001F69A0 48 00 00 A8 */ b lbl_801F9AE8 +lbl_801F9A44: +/* 801F9A44 001F69A4 2C 05 00 03 */ cmpwi r5, 3 +/* 801F9A48 001F69A8 40 80 00 A0 */ bge lbl_801F9AE8 +/* 801F9A4C 001F69AC 48 00 00 78 */ b lbl_801F9AC4 +lbl_801F9A50: +/* 801F9A50 001F69B0 38 00 00 01 */ li r0, 1 +/* 801F9A54 001F69B4 38 A0 00 01 */ li r5, 1 +/* 801F9A58 001F69B8 90 1E 03 2C */ stw r0, 0x32c(r30) +/* 801F9A5C 001F69BC 48 00 3E 69 */ bl sub_801fd8c4 +/* 801F9A60 001F69C0 C0 22 AF 78 */ lfs f1, lbl_805ACC98@sda21(r2) +/* 801F9A64 001F69C4 7F C3 F3 78 */ mr r3, r30 +/* 801F9A68 001F69C8 7F E4 FB 78 */ mr r4, r31 +/* 801F9A6C 001F69CC 38 A0 00 01 */ li r5, 1 +/* 801F9A70 001F69D0 48 00 41 79 */ bl sub_801fdbe8 +/* 801F9A74 001F69D4 48 00 00 74 */ b lbl_801F9AE8 +lbl_801F9A78: +/* 801F9A78 001F69D8 3C A0 80 3E */ lis r5, lbl_803E6838@ha +/* 801F9A7C 001F69DC 38 C1 00 08 */ addi r6, r1, 8 +/* 801F9A80 001F69E0 39 45 68 38 */ addi r10, r5, lbl_803E6838@l +/* 801F9A84 001F69E4 38 A0 00 0D */ li r5, 0xd +/* 801F9A88 001F69E8 81 2A 00 00 */ lwz r9, 0(r10) +/* 801F9A8C 001F69EC 38 E0 00 00 */ li r7, 0 +/* 801F9A90 001F69F0 81 0A 00 04 */ lwz r8, 4(r10) +/* 801F9A94 001F69F4 80 0A 00 08 */ lwz r0, 8(r10) +/* 801F9A98 001F69F8 91 21 00 08 */ stw r9, 8(r1) +/* 801F9A9C 001F69FC 91 01 00 0C */ stw r8, 0xc(r1) +/* 801F9AA0 001F6A00 90 01 00 10 */ stw r0, 0x10(r1) +/* 801F9AA4 001F6A04 4B E8 2D 11 */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi +/* 801F9AA8 001F6A08 80 1E 03 2C */ lwz r0, 0x32c(r30) +/* 801F9AAC 001F6A0C 2C 00 00 02 */ cmpwi r0, 2 +/* 801F9AB0 001F6A10 40 82 00 38 */ bne lbl_801F9AE8 +/* 801F9AB4 001F6A14 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801F9AB8 001F6A18 38 80 00 01 */ li r4, 1 +/* 801F9ABC 001F6A1C 4B F4 0F 1D */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 801F9AC0 001F6A20 48 00 00 28 */ b lbl_801F9AE8 +lbl_801F9AC4: +/* 801F9AC4 001F6A24 38 00 00 00 */ li r0, 0 +/* 801F9AC8 001F6A28 38 A0 00 00 */ li r5, 0 +/* 801F9ACC 001F6A2C 90 1E 03 2C */ stw r0, 0x32c(r30) +/* 801F9AD0 001F6A30 48 00 3D F5 */ bl sub_801fd8c4 +/* 801F9AD4 001F6A34 C0 22 AF 60 */ lfs f1, lbl_805ACC80@sda21(r2) +/* 801F9AD8 001F6A38 7F C3 F3 78 */ mr r3, r30 +/* 801F9ADC 001F6A3C 7F E4 FB 78 */ mr r4, r31 +/* 801F9AE0 001F6A40 38 A0 00 00 */ li r5, 0 +/* 801F9AE4 001F6A44 48 00 41 05 */ bl sub_801fdbe8 +lbl_801F9AE8: +/* 801F9AE8 001F6A48 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801F9AEC 001F6A4C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801F9AF0 001F6A50 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801F9AF4 001F6A54 7C 08 03 A6 */ mtlr r0 +/* 801F9AF8 001F6A58 38 21 00 20 */ addi r1, r1, 0x20 +/* 801F9AFC 001F6A5C 4E 80 00 20 */ blr + +.global InPosition__13CFlyingPirateFR13CStateManagerf +InPosition__13CFlyingPirateFR13CStateManagerf: +/* 801F9B00 001F6A60 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801F9B04 001F6A64 7C 08 02 A6 */ mflr r0 +/* 801F9B08 001F6A68 90 01 00 24 */ stw r0, 0x24(r1) +/* 801F9B0C 001F6A6C 38 A1 00 08 */ addi r5, r1, 8 +/* 801F9B10 001F6A70 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801F9B14 001F6A74 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801F9B18 001F6A78 7C 7E 1B 78 */ mr r30, r3 +/* 801F9B1C 001F6A7C A0 03 06 A4 */ lhz r0, 0x6a4(r3) +/* 801F9B20 001F6A80 B0 01 00 08 */ sth r0, 8(r1) +/* 801F9B24 001F6A84 4B E8 2D 89 */ bl GetCoverPoint__10CPatternedCFR13CStateManager9TUniqueId +/* 801F9B28 001F6A88 28 03 00 00 */ cmplwi r3, 0 +/* 801F9B2C 001F6A8C 41 82 00 64 */ beq lbl_801F9B90 +/* 801F9B30 001F6A90 C0 23 00 60 */ lfs f1, 0x60(r3) +/* 801F9B34 001F6A94 3B E0 00 00 */ li r31, 0 +/* 801F9B38 001F6A98 C0 1E 00 60 */ lfs f0, 0x60(r30) +/* 801F9B3C 001F6A9C C0 83 00 50 */ lfs f4, 0x50(r3) +/* 801F9B40 001F6AA0 C0 7E 00 50 */ lfs f3, 0x50(r30) +/* 801F9B44 001F6AA4 EC A1 00 28 */ fsubs f5, f1, f0 +/* 801F9B48 001F6AA8 C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801F9B4C 001F6AAC C0 43 00 40 */ lfs f2, 0x40(r3) +/* 801F9B50 001F6AB0 EC 64 18 28 */ fsubs f3, f4, f3 +/* 801F9B54 001F6AB4 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 801F9B58 001F6AB8 FC 05 00 40 */ fcmpo cr0, f5, f0 +/* 801F9B5C 001F6ABC EC 02 08 28 */ fsubs f0, f2, f1 +/* 801F9B60 001F6AC0 D0 61 00 10 */ stfs f3, 0x10(r1) +/* 801F9B64 001F6AC4 D0 A1 00 14 */ stfs f5, 0x14(r1) +/* 801F9B68 001F6AC8 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801F9B6C 001F6ACC 40 80 00 1C */ bge lbl_801F9B88 +/* 801F9B70 001F6AD0 38 61 00 0C */ addi r3, r1, 0xc +/* 801F9B74 001F6AD4 48 11 AD 45 */ bl Magnitude__9CVector3fCFv +/* 801F9B78 001F6AD8 C0 02 AF CC */ lfs f0, lbl_805ACCEC@sda21(r2) +/* 801F9B7C 001F6ADC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F9B80 001F6AE0 40 80 00 08 */ bge lbl_801F9B88 +/* 801F9B84 001F6AE4 3B E0 00 01 */ li r31, 1 +lbl_801F9B88: +/* 801F9B88 001F6AE8 7F E3 FB 78 */ mr r3, r31 +/* 801F9B8C 001F6AEC 48 00 00 08 */ b lbl_801F9B94 +lbl_801F9B90: +/* 801F9B90 001F6AF0 38 60 00 01 */ li r3, 1 +lbl_801F9B94: +/* 801F9B94 001F6AF4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801F9B98 001F6AF8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801F9B9C 001F6AFC 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801F9BA0 001F6B00 7C 08 03 A6 */ mtlr r0 +/* 801F9BA4 001F6B04 38 21 00 20 */ addi r1, r1, 0x20 +/* 801F9BA8 001F6B08 4E 80 00 20 */ blr + +.global Landed__13CFlyingPirateFR13CStateManagerf +Landed__13CFlyingPirateFR13CStateManagerf: +/* 801F9BAC 001F6B0C 80 63 04 50 */ lwz r3, 0x450(r3) +/* 801F9BB0 001F6B10 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801F9BB4 001F6B14 20 00 00 02 */ subfic r0, r0, 2 +/* 801F9BB8 001F6B18 7C 00 00 34 */ cntlzw r0, r0 +/* 801F9BBC 001F6B1C 54 03 D9 7E */ srwi r3, r0, 5 +/* 801F9BC0 001F6B20 4E 80 00 20 */ blr + +.global Jump__13CFlyingPirateFR13CStateManager9EStateMsgf +Jump__13CFlyingPirateFR13CStateManager9EStateMsgf: +/* 801F9BC4 001F6B24 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801F9BC8 001F6B28 7C 08 02 A6 */ mflr r0 +/* 801F9BCC 001F6B2C 90 01 00 24 */ stw r0, 0x24(r1) +/* 801F9BD0 001F6B30 DB E1 00 10 */ stfd f31, 0x10(r1) +/* 801F9BD4 001F6B34 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 +/* 801F9BD8 001F6B38 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801F9BDC 001F6B3C 93 C1 00 08 */ stw r30, 8(r1) +/* 801F9BE0 001F6B40 2C 05 00 01 */ cmpwi r5, 1 +/* 801F9BE4 001F6B44 7C 7E 1B 78 */ mr r30, r3 +/* 801F9BE8 001F6B48 7C 9F 23 78 */ mr r31, r4 +/* 801F9BEC 001F6B4C 41 82 00 F0 */ beq lbl_801F9CDC +/* 801F9BF0 001F6B50 40 80 00 10 */ bge lbl_801F9C00 +/* 801F9BF4 001F6B54 2C 05 00 00 */ cmpwi r5, 0 +/* 801F9BF8 001F6B58 40 80 00 14 */ bge lbl_801F9C0C +/* 801F9BFC 001F6B5C 48 00 00 E0 */ b lbl_801F9CDC +lbl_801F9C00: +/* 801F9C00 001F6B60 2C 05 00 03 */ cmpwi r5, 3 +/* 801F9C04 001F6B64 40 80 00 D8 */ bge lbl_801F9CDC +/* 801F9C08 001F6B68 48 00 00 A8 */ b lbl_801F9CB0 +lbl_801F9C0C: +/* 801F9C0C 001F6B6C 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801F9C10 001F6B70 38 80 00 03 */ li r4, 3 +/* 801F9C14 001F6B74 4B F4 0D C5 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 801F9C18 001F6B78 88 1E 03 28 */ lbz r0, 0x328(r30) +/* 801F9C1C 001F6B7C 38 60 00 01 */ li r3, 1 +/* 801F9C20 001F6B80 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801F9C24 001F6B84 7F C3 F3 78 */ mr r3, r30 +/* 801F9C28 001F6B88 98 1E 03 28 */ stb r0, 0x328(r30) +/* 801F9C2C 001F6B8C 7F E5 FB 78 */ mr r5, r31 +/* 801F9C30 001F6B90 38 80 00 25 */ li r4, 0x25 +/* 801F9C34 001F6B94 4B E5 A3 4D */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801F9C38 001F6B98 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801F9C3C 001F6B9C C0 02 AF D0 */ lfs f0, lbl_805ACCF0@sda21(r2) +/* 801F9C40 001F6BA0 38 C3 66 A0 */ addi r6, r3, skZero3f@l +/* 801F9C44 001F6BA4 C0 22 AF 78 */ lfs f1, lbl_805ACC98@sda21(r2) +/* 801F9C48 001F6BA8 C0 46 00 00 */ lfs f2, 0(r6) +/* 801F9C4C 001F6BAC 7F C3 F3 78 */ mr r3, r30 +/* 801F9C50 001F6BB0 7F E4 FB 78 */ mr r4, r31 +/* 801F9C54 001F6BB4 38 A0 00 01 */ li r5, 1 +/* 801F9C58 001F6BB8 D0 5E 01 50 */ stfs f2, 0x150(r30) +/* 801F9C5C 001F6BBC C0 46 00 04 */ lfs f2, 4(r6) +/* 801F9C60 001F6BC0 D0 5E 01 54 */ stfs f2, 0x154(r30) +/* 801F9C64 001F6BC4 C0 46 00 08 */ lfs f2, 8(r6) +/* 801F9C68 001F6BC8 D0 5E 01 58 */ stfs f2, 0x158(r30) +/* 801F9C6C 001F6BCC D0 1E 08 88 */ stfs f0, 0x888(r30) +/* 801F9C70 001F6BD0 48 00 3F 79 */ bl sub_801fdbe8 +/* 801F9C74 001F6BD4 7F C3 F3 78 */ mr r3, r30 +/* 801F9C78 001F6BD8 7F E4 FB 78 */ mr r4, r31 +/* 801F9C7C 001F6BDC 38 A0 00 01 */ li r5, 1 +/* 801F9C80 001F6BE0 48 00 3C 45 */ bl sub_801fd8c4 +/* 801F9C84 001F6BE4 C3 FE 06 54 */ lfs f31, 0x654(r30) +/* 801F9C88 001F6BE8 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 801F9C8C 001F6BEC C0 22 AF 60 */ lfs f1, lbl_805ACC80@sda21(r2) +/* 801F9C90 001F6BF0 C0 42 AF D4 */ lfs f2, lbl_805ACCF4@sda21(r2) +/* 801F9C94 001F6BF4 48 11 88 B1 */ bl Range__9CRandom16Fff +/* 801F9C98 001F6BF8 FC 01 F8 40 */ fcmpo cr0, f1, f31 +/* 801F9C9C 001F6BFC 7C 60 00 26 */ mfcr r3 +/* 801F9CA0 001F6C00 88 1E 06 A2 */ lbz r0, 0x6a2(r30) +/* 801F9CA4 001F6C04 50 60 46 30 */ rlwimi r0, r3, 8, 0x18, 0x18 +/* 801F9CA8 001F6C08 98 1E 06 A2 */ stb r0, 0x6a2(r30) +/* 801F9CAC 001F6C0C 48 00 00 30 */ b lbl_801F9CDC +lbl_801F9CB0: +/* 801F9CB0 001F6C10 C0 22 AF 74 */ lfs f1, lbl_805ACC94@sda21(r2) +/* 801F9CB4 001F6C14 38 A0 00 01 */ li r5, 1 +/* 801F9CB8 001F6C18 48 00 3F 31 */ bl sub_801fdbe8 +/* 801F9CBC 001F6C1C 7F C3 F3 78 */ mr r3, r30 +/* 801F9CC0 001F6C20 7F E4 FB 78 */ mr r4, r31 +/* 801F9CC4 001F6C24 38 A0 00 00 */ li r5, 0 +/* 801F9CC8 001F6C28 48 00 3B FD */ bl sub_801fd8c4 +/* 801F9CCC 001F6C2C 88 1E 06 A2 */ lbz r0, 0x6a2(r30) +/* 801F9CD0 001F6C30 38 60 00 00 */ li r3, 0 +/* 801F9CD4 001F6C34 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801F9CD8 001F6C38 98 1E 06 A2 */ stb r0, 0x6a2(r30) +lbl_801F9CDC: +/* 801F9CDC 001F6C3C E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 +/* 801F9CE0 001F6C40 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801F9CE4 001F6C44 CB E1 00 10 */ lfd f31, 0x10(r1) +/* 801F9CE8 001F6C48 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801F9CEC 001F6C4C 83 C1 00 08 */ lwz r30, 8(r1) +/* 801F9CF0 001F6C50 7C 08 03 A6 */ mtlr r0 +/* 801F9CF4 001F6C54 38 21 00 20 */ addi r1, r1, 0x20 +/* 801F9CF8 001F6C58 4E 80 00 20 */ blr + +.global ShouldSpecialAttack__13CFlyingPirateFR13CStateManagerf +ShouldSpecialAttack__13CFlyingPirateFR13CStateManagerf: +/* 801F9CFC 001F6C5C 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801F9D00 001F6C60 7C 08 02 A6 */ mflr r0 +/* 801F9D04 001F6C64 90 01 00 64 */ stw r0, 0x64(r1) +/* 801F9D08 001F6C68 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 801F9D0C 001F6C6C 7C 7F 1B 78 */ mr r31, r3 +/* 801F9D10 001F6C70 93 C1 00 58 */ stw r30, 0x58(r1) +/* 801F9D14 001F6C74 93 A1 00 54 */ stw r29, 0x54(r1) +/* 801F9D18 001F6C78 7C 9D 23 78 */ mr r29, r4 +/* 801F9D1C 001F6C7C 80 03 03 FC */ lwz r0, 0x3fc(r3) +/* 801F9D20 001F6C80 2C 00 00 01 */ cmpwi r0, 1 +/* 801F9D24 001F6C84 40 82 01 3C */ bne lbl_801F9E60 +/* 801F9D28 001F6C88 A0 7F 08 5C */ lhz r3, 0x85c(r31) +/* 801F9D2C 001F6C8C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801F9D30 001F6C90 7C 03 00 40 */ cmplw r3, r0 +/* 801F9D34 001F6C94 41 82 01 2C */ beq lbl_801F9E60 +/* 801F9D38 001F6C98 C0 3F 08 60 */ lfs f1, 0x860(r31) +/* 801F9D3C 001F6C9C C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801F9D40 001F6CA0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F9D44 001F6CA4 4C 40 13 82 */ cror 2, 0, 2 +/* 801F9D48 001F6CA8 40 82 01 18 */ bne lbl_801F9E60 +/* 801F9D4C 001F6CAC 80 7D 09 00 */ lwz r3, 0x900(r29) +/* 801F9D50 001F6CB0 48 11 87 8D */ bl Float__9CRandom16Fv +/* 801F9D54 001F6CB4 C0 02 AF C0 */ lfs f0, lbl_805ACCE0@sda21(r2) +/* 801F9D58 001F6CB8 EC 00 00 7A */ fmadds f0, f0, f1, f0 +/* 801F9D5C 001F6CBC D0 1F 08 60 */ stfs f0, 0x860(r31) +/* 801F9D60 001F6CC0 80 7D 08 4C */ lwz r3, 0x84c(r29) +/* 801F9D64 001F6CC4 4B F8 42 59 */ bl CheckOrbitDisableSourceList__7CPlayerCFv +/* 801F9D68 001F6CC8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801F9D6C 001F6CCC 40 82 00 F4 */ bne lbl_801F9E60 +/* 801F9D70 001F6CD0 A0 1F 08 5C */ lhz r0, 0x85c(r31) +/* 801F9D74 001F6CD4 7F A3 EB 78 */ mr r3, r29 +/* 801F9D78 001F6CD8 38 81 00 14 */ addi r4, r1, 0x14 +/* 801F9D7C 001F6CDC B0 01 00 14 */ sth r0, 0x14(r1) +/* 801F9D80 001F6CE0 4B E5 28 25 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801F9D84 001F6CE4 7C 64 1B 78 */ mr r4, r3 +/* 801F9D88 001F6CE8 38 61 00 18 */ addi r3, r1, 0x18 +/* 801F9D8C 001F6CEC 4B EB 5F 05 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 801F9D90 001F6CF0 83 C3 00 04 */ lwz r30, 4(r3) +/* 801F9D94 001F6CF4 28 1E 00 00 */ cmplwi r30, 0 +/* 801F9D98 001F6CF8 41 82 00 C8 */ beq lbl_801F9E60 +/* 801F9D9C 001F6CFC A0 7F 08 90 */ lhz r3, 0x890(r31) +/* 801F9DA0 001F6D00 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801F9DA4 001F6D04 7C 03 00 40 */ cmplw r3, r0 +/* 801F9DA8 001F6D08 41 82 00 34 */ beq lbl_801F9DDC +/* 801F9DAC 001F6D0C A0 FF 00 08 */ lhz r7, 8(r31) +/* 801F9DB0 001F6D10 7F A4 EB 78 */ mr r4, r29 +/* 801F9DB4 001F6D14 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801F9DB8 001F6D18 38 C1 00 0C */ addi r6, r1, 0xc +/* 801F9DBC 001F6D1C B0 E1 00 0C */ sth r7, 0xc(r1) +/* 801F9DC0 001F6D20 38 60 00 01 */ li r3, 1 +/* 801F9DC4 001F6D24 A0 1F 08 90 */ lhz r0, 0x890(r31) +/* 801F9DC8 001F6D28 B0 E1 00 08 */ sth r7, 8(r1) +/* 801F9DCC 001F6D2C B0 01 00 10 */ sth r0, 0x10(r1) +/* 801F9DD0 001F6D30 48 04 02 21 */ bl AddAttacker__10CTeamAiMgrF11EAttackTypeR13CStateManager9TUniqueId9TUniqueId +/* 801F9DD4 001F6D34 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801F9DD8 001F6D38 41 82 00 88 */ beq lbl_801F9E60 +lbl_801F9DDC: +/* 801F9DDC 001F6D3C 3C 60 80 5A */ lis r3, lbl_805A6700@ha +/* 801F9DE0 001F6D40 C0 FE 00 60 */ lfs f7, 0x60(r30) +/* 801F9DE4 001F6D44 38 A3 67 00 */ addi r5, r3, lbl_805A6700@l +/* 801F9DE8 001F6D48 C0 DE 00 50 */ lfs f6, 0x50(r30) +/* 801F9DEC 001F6D4C C0 42 AF C0 */ lfs f2, lbl_805ACCE0@sda21(r2) +/* 801F9DF0 001F6D50 7F E3 FB 78 */ mr r3, r31 +/* 801F9DF4 001F6D54 C0 05 00 08 */ lfs f0, 8(r5) +/* 801F9DF8 001F6D58 38 81 00 38 */ addi r4, r1, 0x38 +/* 801F9DFC 001F6D5C C0 25 00 00 */ lfs f1, 0(r5) +/* 801F9E00 001F6D60 EC 82 00 32 */ fmuls f4, f2, f0 +/* 801F9E04 001F6D64 C0 05 00 04 */ lfs f0, 4(r5) +/* 801F9E08 001F6D68 EC 62 00 72 */ fmuls f3, f2, f1 +/* 801F9E0C 001F6D6C C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 801F9E10 001F6D70 EC 42 00 32 */ fmuls f2, f2, f0 +/* 801F9E14 001F6D74 D0 C1 00 30 */ stfs f6, 0x30(r1) +/* 801F9E18 001F6D78 EC A7 20 2A */ fadds f5, f7, f4 +/* 801F9E1C 001F6D7C D0 61 00 20 */ stfs f3, 0x20(r1) +/* 801F9E20 001F6D80 EC C6 10 2A */ fadds f6, f6, f2 +/* 801F9E24 001F6D84 EC 01 18 2A */ fadds f0, f1, f3 +/* 801F9E28 001F6D88 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 801F9E2C 001F6D8C D0 81 00 28 */ stfs f4, 0x28(r1) +/* 801F9E30 001F6D90 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 801F9E34 001F6D94 D0 E1 00 34 */ stfs f7, 0x34(r1) +/* 801F9E38 001F6D98 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 801F9E3C 001F6D9C D0 C1 00 3C */ stfs f6, 0x3c(r1) +/* 801F9E40 001F6DA0 D0 A1 00 40 */ stfs f5, 0x40(r1) +/* 801F9E44 001F6DA4 4B E8 2D 19 */ bl SetDestPos__10CPatternedFRC9CVector3f +/* 801F9E48 001F6DA8 88 1F 06 A1 */ lbz r0, 0x6a1(r31) +/* 801F9E4C 001F6DAC 38 60 00 01 */ li r3, 1 +/* 801F9E50 001F6DB0 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801F9E54 001F6DB4 38 60 00 01 */ li r3, 1 +/* 801F9E58 001F6DB8 98 1F 06 A1 */ stb r0, 0x6a1(r31) +/* 801F9E5C 001F6DBC 48 00 00 08 */ b lbl_801F9E64 +lbl_801F9E60: +/* 801F9E60 001F6DC0 38 60 00 00 */ li r3, 0 +lbl_801F9E64: +/* 801F9E64 001F6DC4 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801F9E68 001F6DC8 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 801F9E6C 001F6DCC 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 801F9E70 001F6DD0 83 A1 00 54 */ lwz r29, 0x54(r1) +/* 801F9E74 001F6DD4 7C 08 03 A6 */ mtlr r0 +/* 801F9E78 001F6DD8 38 21 00 60 */ addi r1, r1, 0x60 +/* 801F9E7C 001F6DDC 4E 80 00 20 */ blr + +.global Attacked__13CFlyingPirateFR13CStateManagerf +Attacked__13CFlyingPirateFR13CStateManagerf: +/* 801F9E80 001F6DE0 C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801F9E84 001F6DE4 C0 43 08 54 */ lfs f2, 0x854(r3) +/* 801F9E88 001F6DE8 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 801F9E8C 001F6DEC 41 82 00 08 */ beq lbl_801F9E94 +/* 801F9E90 001F6DF0 48 00 00 08 */ b lbl_801F9E98 +lbl_801F9E94: +/* 801F9E94 001F6DF4 C0 22 AF 74 */ lfs f1, lbl_805ACC94@sda21(r2) +lbl_801F9E98: +/* 801F9E98 001F6DF8 FC 02 08 40 */ fcmpo cr0, f2, f1 +/* 801F9E9C 001F6DFC 7C 00 00 26 */ mfcr r0 +/* 801F9EA0 001F6E00 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801F9EA4 001F6E04 4E 80 00 20 */ blr + +.global ShotAt__13CFlyingPirateFR13CStateManagerf +ShotAt__13CFlyingPirateFR13CStateManagerf: +/* 801F9EA8 001F6E08 C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801F9EAC 001F6E0C C0 43 08 58 */ lfs f2, 0x858(r3) +/* 801F9EB0 001F6E10 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 801F9EB4 001F6E14 41 82 00 08 */ beq lbl_801F9EBC +/* 801F9EB8 001F6E18 48 00 00 08 */ b lbl_801F9EC0 +lbl_801F9EBC: +/* 801F9EBC 001F6E1C C0 22 AF 74 */ lfs f1, lbl_805ACC94@sda21(r2) +lbl_801F9EC0: +/* 801F9EC0 001F6E20 FC 02 08 40 */ fcmpo cr0, f2, f1 +/* 801F9EC4 001F6E24 7C 00 00 26 */ mfcr r0 +/* 801F9EC8 001F6E28 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801F9ECC 001F6E2C 4E 80 00 20 */ blr + +.global Dodge__13CFlyingPirateFR13CStateManager9EStateMsgf +Dodge__13CFlyingPirateFR13CStateManager9EStateMsgf: +/* 801F9ED0 001F6E30 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801F9ED4 001F6E34 7C 08 02 A6 */ mflr r0 +/* 801F9ED8 001F6E38 2C 05 00 01 */ cmpwi r5, 1 +/* 801F9EDC 001F6E3C 90 01 00 24 */ stw r0, 0x24(r1) +/* 801F9EE0 001F6E40 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801F9EE4 001F6E44 7C 9F 23 78 */ mr r31, r4 +/* 801F9EE8 001F6E48 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801F9EEC 001F6E4C 7C 7E 1B 78 */ mr r30, r3 +/* 801F9EF0 001F6E50 41 82 00 74 */ beq lbl_801F9F64 +/* 801F9EF4 001F6E54 40 80 00 10 */ bge lbl_801F9F04 +/* 801F9EF8 001F6E58 2C 05 00 00 */ cmpwi r5, 0 +/* 801F9EFC 001F6E5C 40 80 00 14 */ bge lbl_801F9F10 +/* 801F9F00 001F6E60 48 00 00 E4 */ b lbl_801F9FE4 +lbl_801F9F04: +/* 801F9F04 001F6E64 2C 05 00 03 */ cmpwi r5, 3 +/* 801F9F08 001F6E68 40 80 00 DC */ bge lbl_801F9FE4 +/* 801F9F0C 001F6E6C 48 00 00 C4 */ b lbl_801F9FD0 +lbl_801F9F10: +/* 801F9F10 001F6E70 38 00 00 01 */ li r0, 1 +/* 801F9F14 001F6E74 90 1E 03 2C */ stw r0, 0x32c(r30) +/* 801F9F18 001F6E78 C0 3E 08 50 */ lfs f1, 0x850(r30) +/* 801F9F1C 001F6E7C 48 00 2A 69 */ bl GetDodgeDirection__13CFlyingPirateFR13CStateManagerf +/* 801F9F20 001F6E80 90 7E 08 4C */ stw r3, 0x84c(r30) +/* 801F9F24 001F6E84 80 1E 08 4C */ lwz r0, 0x84c(r30) +/* 801F9F28 001F6E88 2C 00 FF FF */ cmpwi r0, -1 +/* 801F9F2C 001F6E8C 40 82 00 20 */ bne lbl_801F9F4C +/* 801F9F30 001F6E90 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 801F9F34 001F6E94 48 11 85 ED */ bl Next__9CRandom16Fv +/* 801F9F38 001F6E98 54 60 04 63 */ rlwinm. r0, r3, 0, 0x11, 0x11 +/* 801F9F3C 001F6E9C 38 60 00 03 */ li r3, 3 +/* 801F9F40 001F6EA0 41 82 00 08 */ beq lbl_801F9F48 +/* 801F9F44 001F6EA4 38 60 00 02 */ li r3, 2 +lbl_801F9F48: +/* 801F9F48 001F6EA8 90 7E 08 4C */ stw r3, 0x84c(r30) +lbl_801F9F4C: +/* 801F9F4C 001F6EAC C0 22 AF 78 */ lfs f1, lbl_805ACC98@sda21(r2) +/* 801F9F50 001F6EB0 7F C3 F3 78 */ mr r3, r30 +/* 801F9F54 001F6EB4 7F E4 FB 78 */ mr r4, r31 +/* 801F9F58 001F6EB8 38 A0 00 01 */ li r5, 1 +/* 801F9F5C 001F6EBC 48 00 3C 8D */ bl sub_801fdbe8 +/* 801F9F60 001F6EC0 48 00 00 84 */ b lbl_801F9FE4 +lbl_801F9F64: +/* 801F9F64 001F6EC4 3C A0 80 3E */ lis r5, lbl_803E682C@ha +/* 801F9F68 001F6EC8 38 C1 00 0C */ addi r6, r1, 0xc +/* 801F9F6C 001F6ECC 39 25 68 2C */ addi r9, r5, lbl_803E682C@l +/* 801F9F70 001F6ED0 38 A0 00 03 */ li r5, 3 +/* 801F9F74 001F6ED4 81 09 00 00 */ lwz r8, 0(r9) +/* 801F9F78 001F6ED8 80 E9 00 04 */ lwz r7, 4(r9) +/* 801F9F7C 001F6EDC 80 09 00 08 */ lwz r0, 8(r9) +/* 801F9F80 001F6EE0 91 01 00 0C */ stw r8, 0xc(r1) +/* 801F9F84 001F6EE4 90 E1 00 10 */ stw r7, 0x10(r1) +/* 801F9F88 001F6EE8 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F9F8C 001F6EEC 80 FE 08 4C */ lwz r7, 0x84c(r30) +/* 801F9F90 001F6EF0 4B E8 28 25 */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi +/* 801F9F94 001F6EF4 7F C3 F3 78 */ mr r3, r30 +/* 801F9F98 001F6EF8 7F E4 FB 78 */ mr r4, r31 +/* 801F9F9C 001F6EFC 48 00 31 C9 */ bl UpdateCantSeePlayer__13CFlyingPirateFR13CStateManager +/* 801F9FA0 001F6F00 C0 22 AF 64 */ lfs f1, lbl_805ACC84@sda21(r2) +/* 801F9FA4 001F6F04 38 81 00 08 */ addi r4, r1, 8 +/* 801F9FA8 001F6F08 C0 1E 03 38 */ lfs f0, 0x338(r30) +/* 801F9FAC 001F6F0C 38 6D 93 0C */ addi r3, r13, lbl_805A7ECC@sda21 +/* 801F9FB0 001F6F10 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801F9FB4 001F6F14 D0 01 00 08 */ stfs f0, 8(r1) +/* 801F9FB8 001F6F18 4B E5 57 79 */ bl "Max__5CMathFRCfRCf" +/* 801F9FBC 001F6F1C C0 03 00 00 */ lfs f0, 0(r3) +/* 801F9FC0 001F6F20 7F C3 F3 78 */ mr r3, r30 +/* 801F9FC4 001F6F24 D0 1E 08 98 */ stfs f0, 0x898(r30) +/* 801F9FC8 001F6F28 48 00 3D 7D */ bl sub_801fdd44 +/* 801F9FCC 001F6F2C 48 00 00 18 */ b lbl_801F9FE4 +lbl_801F9FD0: +/* 801F9FD0 001F6F30 38 60 00 00 */ li r3, 0 +/* 801F9FD4 001F6F34 90 7E 03 2C */ stw r3, 0x32c(r30) +/* 801F9FD8 001F6F38 88 1E 06 A1 */ lbz r0, 0x6a1(r30) +/* 801F9FDC 001F6F3C 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801F9FE0 001F6F40 98 1E 06 A1 */ stb r0, 0x6a1(r30) +lbl_801F9FE4: +/* 801F9FE4 001F6F44 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801F9FE8 001F6F48 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801F9FEC 001F6F4C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801F9FF0 001F6F50 7C 08 03 A6 */ mtlr r0 +/* 801F9FF4 001F6F54 38 21 00 20 */ addi r1, r1, 0x20 +/* 801F9FF8 001F6F58 4E 80 00 20 */ blr + +.global ShouldDodge__13CFlyingPirateFR13CStateManagerf +ShouldDodge__13CFlyingPirateFR13CStateManagerf: +/* 801F9FFC 001F6F5C 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801FA000 001F6F60 7C 08 02 A6 */ mflr r0 +/* 801FA004 001F6F64 90 01 00 64 */ stw r0, 0x64(r1) +/* 801FA008 001F6F68 DB E1 00 50 */ stfd f31, 0x50(r1) +/* 801FA00C 001F6F6C F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 801FA010 001F6F70 DB C1 00 40 */ stfd f30, 0x40(r1) +/* 801FA014 001F6F74 F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0 +/* 801FA018 001F6F78 DB A1 00 30 */ stfd f29, 0x30(r1) +/* 801FA01C 001F6F7C F3 A1 00 38 */ psq_st f29, 56(r1), 0, qr0 +/* 801FA020 001F6F80 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801FA024 001F6F84 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801FA028 001F6F88 88 03 06 A1 */ lbz r0, 0x6a1(r3) +/* 801FA02C 001F6F8C 7C 7E 1B 78 */ mr r30, r3 +/* 801FA030 001F6F90 7C 85 23 78 */ mr r5, r4 +/* 801FA034 001F6F94 54 03 EF FF */ rlwinm. r3, r0, 0x1d, 0x1f, 0x1f +/* 801FA038 001F6F98 7C 7F 1B 78 */ mr r31, r3 +/* 801FA03C 001F6F9C 40 82 00 9C */ bne lbl_801FA0D8 +/* 801FA040 001F6FA0 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801FA044 001F6FA4 40 82 00 94 */ bne lbl_801FA0D8 +/* 801FA048 001F6FA8 C3 BE 00 60 */ lfs f29, 0x60(r30) +/* 801FA04C 001F6FAC 7F C4 F3 78 */ mr r4, r30 +/* 801FA050 001F6FB0 C3 DE 00 50 */ lfs f30, 0x50(r30) +/* 801FA054 001F6FB4 38 61 00 14 */ addi r3, r1, 0x14 +/* 801FA058 001F6FB8 C3 FE 00 40 */ lfs f31, 0x40(r30) +/* 801FA05C 001F6FBC 48 00 28 39 */ bl GetTargetPos__13CFlyingPirateFR13CStateManager +/* 801FA060 001F6FC0 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 801FA064 001F6FC4 C0 21 00 14 */ lfs f1, 0x14(r1) +/* 801FA068 001F6FC8 EC 60 F0 28 */ fsubs f3, f0, f30 +/* 801FA06C 001F6FCC C0 BE 00 48 */ lfs f5, 0x48(r30) +/* 801FA070 001F6FD0 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 801FA074 001F6FD4 EC 81 F8 28 */ fsubs f4, f1, f31 +/* 801FA078 001F6FD8 C0 5E 00 38 */ lfs f2, 0x38(r30) +/* 801FA07C 001F6FDC EC 23 01 72 */ fmuls f1, f3, f5 +/* 801FA080 001F6FE0 C0 DE 00 58 */ lfs f6, 0x58(r30) +/* 801FA084 001F6FE4 EC 60 E8 28 */ fsubs f3, f0, f29 +/* 801FA088 001F6FE8 C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801FA08C 001F6FEC EC 24 08 BA */ fmadds f1, f4, f2, f1 +/* 801FA090 001F6FF0 D0 41 00 08 */ stfs f2, 8(r1) +/* 801FA094 001F6FF4 D0 A1 00 0C */ stfs f5, 0xc(r1) +/* 801FA098 001F6FF8 EC 23 09 BA */ fmadds f1, f3, f6, f1 +/* 801FA09C 001F6FFC D0 C1 00 10 */ stfs f6, 0x10(r1) +/* 801FA0A0 001F7000 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801FA0A4 001F7004 40 81 00 34 */ ble lbl_801FA0D8 +/* 801FA0A8 001F7008 C0 1E 08 54 */ lfs f0, 0x854(r30) +/* 801FA0AC 001F700C C0 22 AF D8 */ lfs f1, lbl_805ACCF8@sda21(r2) +/* 801FA0B0 001F7010 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801FA0B4 001F7014 41 80 00 10 */ blt lbl_801FA0C4 +/* 801FA0B8 001F7018 C0 1E 08 58 */ lfs f0, 0x858(r30) +/* 801FA0BC 001F701C FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801FA0C0 001F7020 40 80 00 18 */ bge lbl_801FA0D8 +lbl_801FA0C4: +/* 801FA0C4 001F7024 C0 3E 07 D8 */ lfs f1, 0x7d8(r30) +/* 801FA0C8 001F7028 C0 02 AF 74 */ lfs f0, lbl_805ACC94@sda21(r2) +/* 801FA0CC 001F702C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801FA0D0 001F7030 40 80 00 08 */ bge lbl_801FA0D8 +/* 801FA0D4 001F7034 3B E0 00 01 */ li r31, 1 +lbl_801FA0D8: +/* 801FA0D8 001F7038 7F E3 FB 78 */ mr r3, r31 +/* 801FA0DC 001F703C E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 +/* 801FA0E0 001F7040 CB E1 00 50 */ lfd f31, 0x50(r1) +/* 801FA0E4 001F7044 E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0 +/* 801FA0E8 001F7048 CB C1 00 40 */ lfd f30, 0x40(r1) +/* 801FA0EC 001F704C E3 A1 00 38 */ psq_l f29, 56(r1), 0, qr0 +/* 801FA0F0 001F7050 CB A1 00 30 */ lfd f29, 0x30(r1) +/* 801FA0F4 001F7054 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801FA0F8 001F7058 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801FA0FC 001F705C 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801FA100 001F7060 7C 08 03 A6 */ mtlr r0 +/* 801FA104 001F7064 38 21 00 60 */ addi r1, r1, 0x60 +/* 801FA108 001F7068 4E 80 00 20 */ blr + +.global TurnAround__13CFlyingPirateFR13CStateManager9EStateMsgf +TurnAround__13CFlyingPirateFR13CStateManager9EStateMsgf: +/* 801FA10C 001F706C 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801FA110 001F7070 7C 08 02 A6 */ mflr r0 +/* 801FA114 001F7074 2C 05 00 01 */ cmpwi r5, 1 +/* 801FA118 001F7078 90 01 00 54 */ stw r0, 0x54(r1) +/* 801FA11C 001F707C 7C 80 23 78 */ mr r0, r4 +/* 801FA120 001F7080 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801FA124 001F7084 7C 7F 1B 78 */ mr r31, r3 +/* 801FA128 001F7088 41 82 00 D4 */ beq lbl_801FA1FC +/* 801FA12C 001F708C 40 80 00 10 */ bge lbl_801FA13C +/* 801FA130 001F7090 2C 05 00 00 */ cmpwi r5, 0 +/* 801FA134 001F7094 40 80 00 14 */ bge lbl_801FA148 +/* 801FA138 001F7098 48 00 01 00 */ b lbl_801FA238 +lbl_801FA13C: +/* 801FA13C 001F709C 2C 05 00 03 */ cmpwi r5, 3 +/* 801FA140 001F70A0 40 80 00 F8 */ bge lbl_801FA238 +/* 801FA144 001F70A4 48 00 00 EC */ b lbl_801FA230 +lbl_801FA148: +/* 801FA148 001F70A8 7F E4 FB 78 */ mr r4, r31 +/* 801FA14C 001F70AC 7C 05 03 78 */ mr r5, r0 +/* 801FA150 001F70B0 38 61 00 2C */ addi r3, r1, 0x2c +/* 801FA154 001F70B4 48 00 27 41 */ bl GetTargetPos__13CFlyingPirateFR13CStateManager +/* 801FA158 001F70B8 C0 21 00 2C */ lfs f1, 0x2c(r1) +/* 801FA15C 001F70BC 38 61 00 14 */ addi r3, r1, 0x14 +/* 801FA160 001F70C0 C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801FA164 001F70C4 38 81 00 38 */ addi r4, r1, 0x38 +/* 801FA168 001F70C8 D0 3F 02 E0 */ stfs f1, 0x2e0(r31) +/* 801FA16C 001F70CC C0 21 00 30 */ lfs f1, 0x30(r1) +/* 801FA170 001F70D0 D0 3F 02 E4 */ stfs f1, 0x2e4(r31) +/* 801FA174 001F70D4 C0 21 00 34 */ lfs f1, 0x34(r1) +/* 801FA178 001F70D8 D0 3F 02 E8 */ stfs f1, 0x2e8(r31) +/* 801FA17C 001F70DC C0 5F 02 E8 */ lfs f2, 0x2e8(r31) +/* 801FA180 001F70E0 C0 3F 00 60 */ lfs f1, 0x60(r31) +/* 801FA184 001F70E4 C0 9F 02 E4 */ lfs f4, 0x2e4(r31) +/* 801FA188 001F70E8 C0 7F 00 50 */ lfs f3, 0x50(r31) +/* 801FA18C 001F70EC EC A2 08 28 */ fsubs f5, f2, f1 +/* 801FA190 001F70F0 C0 5F 02 E0 */ lfs f2, 0x2e0(r31) +/* 801FA194 001F70F4 C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 801FA198 001F70F8 EC 64 18 28 */ fsubs f3, f4, f3 +/* 801FA19C 001F70FC EC 22 08 28 */ fsubs f1, f2, f1 +/* 801FA1A0 001F7100 D0 A1 00 40 */ stfs f5, 0x40(r1) +/* 801FA1A4 001F7104 D0 61 00 3C */ stfs f3, 0x3c(r1) +/* 801FA1A8 001F7108 D0 21 00 38 */ stfs f1, 0x38(r1) +/* 801FA1AC 001F710C D0 01 00 40 */ stfs f0, 0x40(r1) +/* 801FA1B0 001F7110 48 11 A6 A1 */ bl AsNormalized__9CVector3fCFv +/* 801FA1B4 001F7114 C0 9F 00 48 */ lfs f4, 0x48(r31) +/* 801FA1B8 001F7118 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 801FA1BC 001F711C C0 7F 00 38 */ lfs f3, 0x38(r31) +/* 801FA1C0 001F7120 EC 04 00 32 */ fmuls f0, f4, f0 +/* 801FA1C4 001F7124 C0 21 00 14 */ lfs f1, 0x14(r1) +/* 801FA1C8 001F7128 C0 BF 00 58 */ lfs f5, 0x58(r31) +/* 801FA1CC 001F712C C0 41 00 1C */ lfs f2, 0x1c(r1) +/* 801FA1D0 001F7130 EC 23 00 7A */ fmadds f1, f3, f1, f0 +/* 801FA1D4 001F7134 C0 02 AF C8 */ lfs f0, lbl_805ACCE8@sda21(r2) +/* 801FA1D8 001F7138 D0 61 00 20 */ stfs f3, 0x20(r1) +/* 801FA1DC 001F713C EC 25 08 BA */ fmadds f1, f5, f2, f1 +/* 801FA1E0 001F7140 D0 81 00 24 */ stfs f4, 0x24(r1) +/* 801FA1E4 001F7144 D0 A1 00 28 */ stfs f5, 0x28(r1) +/* 801FA1E8 001F7148 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801FA1EC 001F714C 40 80 00 4C */ bge lbl_801FA238 +/* 801FA1F0 001F7150 38 00 00 01 */ li r0, 1 +/* 801FA1F4 001F7154 90 1F 03 2C */ stw r0, 0x32c(r31) +/* 801FA1F8 001F7158 48 00 00 40 */ b lbl_801FA238 +lbl_801FA1FC: +/* 801FA1FC 001F715C 3C A0 80 3E */ lis r5, lbl_803E6820@ha +/* 801FA200 001F7160 38 C1 00 08 */ addi r6, r1, 8 +/* 801FA204 001F7164 39 45 68 20 */ addi r10, r5, lbl_803E6820@l +/* 801FA208 001F7168 38 A0 00 08 */ li r5, 8 +/* 801FA20C 001F716C 81 2A 00 00 */ lwz r9, 0(r10) +/* 801FA210 001F7170 38 E0 00 00 */ li r7, 0 +/* 801FA214 001F7174 81 0A 00 04 */ lwz r8, 4(r10) +/* 801FA218 001F7178 80 0A 00 08 */ lwz r0, 8(r10) +/* 801FA21C 001F717C 91 21 00 08 */ stw r9, 8(r1) +/* 801FA220 001F7180 91 01 00 0C */ stw r8, 0xc(r1) +/* 801FA224 001F7184 90 01 00 10 */ stw r0, 0x10(r1) +/* 801FA228 001F7188 4B E8 25 8D */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi +/* 801FA22C 001F718C 48 00 00 0C */ b lbl_801FA238 +lbl_801FA230: +/* 801FA230 001F7190 38 00 00 00 */ li r0, 0 +/* 801FA234 001F7194 90 1F 03 2C */ stw r0, 0x32c(r31) +lbl_801FA238: +/* 801FA238 001F7198 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801FA23C 001F719C 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801FA240 001F71A0 7C 08 03 A6 */ mtlr r0 +/* 801FA244 001F71A4 38 21 00 50 */ addi r1, r1, 0x50 +/* 801FA248 001F71A8 4E 80 00 20 */ blr + +.global Retreat__13CFlyingPirateFR13CStateManager9EStateMsgf +Retreat__13CFlyingPirateFR13CStateManager9EStateMsgf: +/* 801FA24C 001F71AC 94 21 FE E0 */ stwu r1, -0x120(r1) +/* 801FA250 001F71B0 7C 08 02 A6 */ mflr r0 +/* 801FA254 001F71B4 90 01 01 24 */ stw r0, 0x124(r1) +/* 801FA258 001F71B8 DB E1 01 10 */ stfd f31, 0x110(r1) +/* 801FA25C 001F71BC F3 E1 01 18 */ psq_st f31, 280(r1), 0, qr0 +/* 801FA260 001F71C0 DB C1 01 00 */ stfd f30, 0x100(r1) +/* 801FA264 001F71C4 F3 C1 01 08 */ psq_st f30, 264(r1), 0, qr0 +/* 801FA268 001F71C8 DB A1 00 F0 */ stfd f29, 0xf0(r1) +/* 801FA26C 001F71CC F3 A1 00 F8 */ psq_st f29, 248(r1), 0, qr0 +/* 801FA270 001F71D0 93 E1 00 EC */ stw r31, 0xec(r1) +/* 801FA274 001F71D4 93 C1 00 E8 */ stw r30, 0xe8(r1) +/* 801FA278 001F71D8 FF A0 08 90 */ fmr f29, f1 +/* 801FA27C 001F71DC 2C 05 00 01 */ cmpwi r5, 1 +/* 801FA280 001F71E0 7C 7E 1B 78 */ mr r30, r3 +/* 801FA284 001F71E4 7C 9F 23 78 */ mr r31, r4 +/* 801FA288 001F71E8 41 82 02 94 */ beq lbl_801FA51C +/* 801FA28C 001F71EC 40 80 05 50 */ bge lbl_801FA7DC +/* 801FA290 001F71F0 2C 05 00 00 */ cmpwi r5, 0 +/* 801FA294 001F71F4 40 80 00 0C */ bge lbl_801FA2A0 +/* 801FA298 001F71F8 48 00 05 44 */ b lbl_801FA7DC +/* 801FA29C 001F71FC 48 00 05 40 */ b lbl_801FA7DC +lbl_801FA2A0: +/* 801FA2A0 001F7200 80 BF 08 4C */ lwz r5, 0x84c(r31) +/* 801FA2A4 001F7204 38 61 00 98 */ addi r3, r1, 0x98 +/* 801FA2A8 001F7208 C0 1E 00 50 */ lfs f0, 0x50(r30) +/* 801FA2AC 001F720C 38 81 00 8C */ addi r4, r1, 0x8c +/* 801FA2B0 001F7210 C3 C5 00 50 */ lfs f30, 0x50(r5) +/* 801FA2B4 001F7214 C3 A5 00 60 */ lfs f29, 0x60(r5) +/* 801FA2B8 001F7218 C0 3E 00 60 */ lfs f1, 0x60(r30) +/* 801FA2BC 001F721C EC 5E 00 28 */ fsubs f2, f30, f0 +/* 801FA2C0 001F7220 C3 E5 00 40 */ lfs f31, 0x40(r5) +/* 801FA2C4 001F7224 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801FA2C8 001F7228 EC 3D 08 28 */ fsubs f1, f29, f1 +/* 801FA2CC 001F722C EC 1F 00 28 */ fsubs f0, f31, f0 +/* 801FA2D0 001F7230 D0 41 00 90 */ stfs f2, 0x90(r1) +/* 801FA2D4 001F7234 D0 21 00 94 */ stfs f1, 0x94(r1) +/* 801FA2D8 001F7238 D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 801FA2DC 001F723C 48 11 A5 75 */ bl AsNormalized__9CVector3fCFv +/* 801FA2E0 001F7240 C0 DE 02 FC */ lfs f6, 0x2fc(r30) +/* 801FA2E4 001F7244 7F C3 F3 78 */ mr r3, r30 +/* 801FA2E8 001F7248 C0 41 00 9C */ lfs f2, 0x9c(r1) +/* 801FA2EC 001F724C C0 21 00 A0 */ lfs f1, 0xa0(r1) +/* 801FA2F0 001F7250 C0 01 00 98 */ lfs f0, 0x98(r1) +/* 801FA2F4 001F7254 EC 86 00 B2 */ fmuls f4, f6, f2 +/* 801FA2F8 001F7258 C0 BE 00 50 */ lfs f5, 0x50(r30) +/* 801FA2FC 001F725C EC 46 00 72 */ fmuls f2, f6, f1 +/* 801FA300 001F7260 C0 7E 00 60 */ lfs f3, 0x60(r30) +/* 801FA304 001F7264 EC 06 00 32 */ fmuls f0, f6, f0 +/* 801FA308 001F7268 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 801FA30C 001F726C EC 85 20 28 */ fsubs f4, f5, f4 +/* 801FA310 001F7270 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801FA314 001F7274 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801FA318 001F7278 D0 81 00 C0 */ stfs f4, 0xc0(r1) +/* 801FA31C 001F727C D0 01 00 BC */ stfs f0, 0xbc(r1) +/* 801FA320 001F7280 D0 41 00 C4 */ stfs f2, 0xc4(r1) +/* 801FA324 001F7284 C0 1E 05 F4 */ lfs f0, 0x5f4(r30) +/* 801FA328 001F7288 EC 1D 00 2A */ fadds f0, f29, f0 +/* 801FA32C 001F728C D0 01 00 C4 */ stfs f0, 0xc4(r1) +/* 801FA330 001F7290 81 9E 00 00 */ lwz r12, 0(r30) +/* 801FA334 001F7294 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801FA338 001F7298 7D 89 03 A6 */ mtctr r12 +/* 801FA33C 001F729C 4E 80 04 21 */ bctrl +/* 801FA340 001F72A0 38 81 00 BC */ addi r4, r1, 0xbc +/* 801FA344 001F72A4 4B FC C7 F1 */ bl OnPath__15CPathFindSearchCFRC9CVector3f +/* 801FA348 001F72A8 2C 03 00 02 */ cmpwi r3, 2 +/* 801FA34C 001F72AC 40 82 01 80 */ bne lbl_801FA4CC +/* 801FA350 001F72B0 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 801FA354 001F72B4 7F C3 F3 78 */ mr r3, r30 +/* 801FA358 001F72B8 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 801FA35C 001F72BC C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801FA360 001F72C0 D0 01 00 80 */ stfs f0, 0x80(r1) +/* 801FA364 001F72C4 D0 21 00 84 */ stfs f1, 0x84(r1) +/* 801FA368 001F72C8 D0 41 00 88 */ stfs f2, 0x88(r1) +/* 801FA36C 001F72CC 81 9E 00 00 */ lwz r12, 0(r30) +/* 801FA370 001F72D0 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801FA374 001F72D4 7D 89 03 A6 */ mtctr r12 +/* 801FA378 001F72D8 4E 80 04 21 */ bctrl +/* 801FA37C 001F72DC 38 81 00 80 */ addi r4, r1, 0x80 +/* 801FA380 001F72E0 38 A1 00 BC */ addi r5, r1, 0xbc +/* 801FA384 001F72E4 4B FC CD 79 */ bl FindClosestReachablePoint__15CPathFindSearchCFRC9CVector3fR9CVector3f +/* 801FA388 001F72E8 C0 41 00 C4 */ lfs f2, 0xc4(r1) +/* 801FA38C 001F72EC C0 3E 05 F4 */ lfs f1, 0x5f4(r30) +/* 801FA390 001F72F0 C0 01 00 C0 */ lfs f0, 0xc0(r1) +/* 801FA394 001F72F4 EC 42 08 2A */ fadds f2, f2, f1 +/* 801FA398 001F72F8 C0 21 00 BC */ lfs f1, 0xbc(r1) +/* 801FA39C 001F72FC EC DE 00 28 */ fsubs f6, f30, f0 +/* 801FA3A0 001F7300 C0 02 AF 9C */ lfs f0, lbl_805ACCBC@sda21(r2) +/* 801FA3A4 001F7304 EC 9F 08 28 */ fsubs f4, f31, f1 +/* 801FA3A8 001F7308 EC BD 10 28 */ fsubs f5, f29, f2 +/* 801FA3AC 001F730C D0 41 00 C4 */ stfs f2, 0xc4(r1) +/* 801FA3B0 001F7310 EC 26 01 B2 */ fmuls f1, f6, f6 +/* 801FA3B4 001F7314 EC 44 01 32 */ fmuls f2, f4, f4 +/* 801FA3B8 001F7318 C0 FE 02 FC */ lfs f7, 0x2fc(r30) +/* 801FA3BC 001F731C EC 65 01 72 */ fmuls f3, f5, f5 +/* 801FA3C0 001F7320 D0 81 00 74 */ stfs f4, 0x74(r1) +/* 801FA3C4 001F7324 EC 22 08 2A */ fadds f1, f2, f1 +/* 801FA3C8 001F7328 EC 00 01 F2 */ fmuls f0, f0, f7 +/* 801FA3CC 001F732C D0 C1 00 78 */ stfs f6, 0x78(r1) +/* 801FA3D0 001F7330 EC 23 08 2A */ fadds f1, f3, f1 +/* 801FA3D4 001F7334 D0 A1 00 7C */ stfs f5, 0x7c(r1) +/* 801FA3D8 001F7338 EC 00 01 F2 */ fmuls f0, f0, f7 +/* 801FA3DC 001F733C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801FA3E0 001F7340 40 80 00 EC */ bge lbl_801FA4CC +/* 801FA3E4 001F7344 C0 5E 00 50 */ lfs f2, 0x50(r30) +/* 801FA3E8 001F7348 38 61 00 68 */ addi r3, r1, 0x68 +/* 801FA3EC 001F734C C0 3E 00 60 */ lfs f1, 0x60(r30) +/* 801FA3F0 001F7350 38 81 00 5C */ addi r4, r1, 0x5c +/* 801FA3F4 001F7354 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801FA3F8 001F7358 EC 5E 10 28 */ fsubs f2, f30, f2 +/* 801FA3FC 001F735C EC 3D 08 28 */ fsubs f1, f29, f1 +/* 801FA400 001F7360 EC 1F 00 28 */ fsubs f0, f31, f0 +/* 801FA404 001F7364 D0 41 00 60 */ stfs f2, 0x60(r1) +/* 801FA408 001F7368 D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 801FA40C 001F736C D0 21 00 64 */ stfs f1, 0x64(r1) +/* 801FA410 001F7370 48 11 A4 41 */ bl AsNormalized__9CVector3fCFv +/* 801FA414 001F7374 C0 DE 02 FC */ lfs f6, 0x2fc(r30) +/* 801FA418 001F7378 7F C3 F3 78 */ mr r3, r30 +/* 801FA41C 001F737C C0 41 00 6C */ lfs f2, 0x6c(r1) +/* 801FA420 001F7380 C0 21 00 70 */ lfs f1, 0x70(r1) +/* 801FA424 001F7384 C0 01 00 68 */ lfs f0, 0x68(r1) +/* 801FA428 001F7388 EC 86 00 B2 */ fmuls f4, f6, f2 +/* 801FA42C 001F738C C0 BE 00 50 */ lfs f5, 0x50(r30) +/* 801FA430 001F7390 EC 46 00 72 */ fmuls f2, f6, f1 +/* 801FA434 001F7394 C0 7E 00 60 */ lfs f3, 0x60(r30) +/* 801FA438 001F7398 EC 06 00 32 */ fmuls f0, f6, f0 +/* 801FA43C 001F739C C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 801FA440 001F73A0 EC 85 20 2A */ fadds f4, f5, f4 +/* 801FA444 001F73A4 EC 43 10 2A */ fadds f2, f3, f2 +/* 801FA448 001F73A8 EC 01 00 2A */ fadds f0, f1, f0 +/* 801FA44C 001F73AC D0 81 00 C0 */ stfs f4, 0xc0(r1) +/* 801FA450 001F73B0 D0 01 00 BC */ stfs f0, 0xbc(r1) +/* 801FA454 001F73B4 D0 41 00 C4 */ stfs f2, 0xc4(r1) +/* 801FA458 001F73B8 C0 1E 05 F4 */ lfs f0, 0x5f4(r30) +/* 801FA45C 001F73BC EC 1D 00 2A */ fadds f0, f29, f0 +/* 801FA460 001F73C0 D0 01 00 C4 */ stfs f0, 0xc4(r1) +/* 801FA464 001F73C4 81 9E 00 00 */ lwz r12, 0(r30) +/* 801FA468 001F73C8 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801FA46C 001F73CC 7D 89 03 A6 */ mtctr r12 +/* 801FA470 001F73D0 4E 80 04 21 */ bctrl +/* 801FA474 001F73D4 38 81 00 BC */ addi r4, r1, 0xbc +/* 801FA478 001F73D8 4B FC C6 BD */ bl OnPath__15CPathFindSearchCFRC9CVector3f +/* 801FA47C 001F73DC 2C 03 00 02 */ cmpwi r3, 2 +/* 801FA480 001F73E0 40 82 00 4C */ bne lbl_801FA4CC +/* 801FA484 001F73E4 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 801FA488 001F73E8 7F C3 F3 78 */ mr r3, r30 +/* 801FA48C 001F73EC C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 801FA490 001F73F0 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801FA494 001F73F4 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 801FA498 001F73F8 D0 21 00 54 */ stfs f1, 0x54(r1) +/* 801FA49C 001F73FC D0 41 00 58 */ stfs f2, 0x58(r1) +/* 801FA4A0 001F7400 81 9E 00 00 */ lwz r12, 0(r30) +/* 801FA4A4 001F7404 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801FA4A8 001F7408 7D 89 03 A6 */ mtctr r12 +/* 801FA4AC 001F740C 4E 80 04 21 */ bctrl +/* 801FA4B0 001F7410 38 81 00 50 */ addi r4, r1, 0x50 +/* 801FA4B4 001F7414 38 A1 00 BC */ addi r5, r1, 0xbc +/* 801FA4B8 001F7418 4B FC CC 45 */ bl FindClosestReachablePoint__15CPathFindSearchCFRC9CVector3fR9CVector3f +/* 801FA4BC 001F741C C0 21 00 C4 */ lfs f1, 0xc4(r1) +/* 801FA4C0 001F7420 C0 1E 05 F4 */ lfs f0, 0x5f4(r30) +/* 801FA4C4 001F7424 EC 01 00 2A */ fadds f0, f1, f0 +/* 801FA4C8 001F7428 D0 01 00 C4 */ stfs f0, 0xc4(r1) +lbl_801FA4CC: +/* 801FA4CC 001F742C C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 801FA4D0 001F7430 7F C3 F3 78 */ mr r3, r30 +/* 801FA4D4 001F7434 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 801FA4D8 001F7438 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801FA4DC 001F743C D0 01 00 44 */ stfs f0, 0x44(r1) +/* 801FA4E0 001F7440 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 801FA4E4 001F7444 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 801FA4E8 001F7448 81 9E 00 00 */ lwz r12, 0(r30) +/* 801FA4EC 001F744C 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801FA4F0 001F7450 7D 89 03 A6 */ mtctr r12 +/* 801FA4F4 001F7454 4E 80 04 21 */ bctrl +/* 801FA4F8 001F7458 38 81 00 44 */ addi r4, r1, 0x44 +/* 801FA4FC 001F745C 38 A1 00 BC */ addi r5, r1, 0xbc +/* 801FA500 001F7460 4B FC D7 6D */ bl Search__15CPathFindSearchFRC9CVector3fRC9CVector3f +/* 801FA504 001F7464 C0 22 AF 74 */ lfs f1, lbl_805ACC94@sda21(r2) +/* 801FA508 001F7468 7F C3 F3 78 */ mr r3, r30 +/* 801FA50C 001F746C 7F E4 FB 78 */ mr r4, r31 +/* 801FA510 001F7470 38 A0 00 01 */ li r5, 1 +/* 801FA514 001F7474 48 00 36 D5 */ bl sub_801fdbe8 +/* 801FA518 001F7478 48 00 02 C4 */ b lbl_801FA7DC +lbl_801FA51C: +/* 801FA51C 001F747C 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801FA520 001F7480 C4 44 66 A0 */ lfsu f2, skZero3f@l(r4) +/* 801FA524 001F7484 C0 24 00 04 */ lfs f1, 4(r4) +/* 801FA528 001F7488 C0 04 00 08 */ lfs f0, 8(r4) +/* 801FA52C 001F748C D0 41 00 B0 */ stfs f2, 0xb0(r1) +/* 801FA530 001F7490 D0 21 00 B4 */ stfs f1, 0xb4(r1) +/* 801FA534 001F7494 D0 01 00 B8 */ stfs f0, 0xb8(r1) +/* 801FA538 001F7498 81 83 00 00 */ lwz r12, 0(r3) +/* 801FA53C 001F749C 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801FA540 001F74A0 7D 89 03 A6 */ mtctr r12 +/* 801FA544 001F74A4 4E 80 04 21 */ bctrl +/* 801FA548 001F74A8 80 83 00 04 */ lwz r4, 4(r3) +/* 801FA54C 001F74AC 80 63 00 C8 */ lwz r3, 0xc8(r3) +/* 801FA550 001F74B0 38 04 FF FF */ addi r0, r4, -1 +/* 801FA554 001F74B4 7C 03 00 00 */ cmpw r3, r0 +/* 801FA558 001F74B8 40 80 00 F0 */ bge lbl_801FA648 +/* 801FA55C 001F74BC C0 9E 00 50 */ lfs f4, 0x50(r30) +/* 801FA560 001F74C0 7F C3 F3 78 */ mr r3, r30 +/* 801FA564 001F74C4 C0 1E 00 48 */ lfs f0, 0x48(r30) +/* 801FA568 001F74C8 C0 7E 00 60 */ lfs f3, 0x60(r30) +/* 801FA56C 001F74CC C0 5E 00 58 */ lfs f2, 0x58(r30) +/* 801FA570 001F74D0 EC A4 00 2A */ fadds f5, f4, f0 +/* 801FA574 001F74D4 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 801FA578 001F74D8 C0 1E 00 38 */ lfs f0, 0x38(r30) +/* 801FA57C 001F74DC EC 43 10 2A */ fadds f2, f3, f2 +/* 801FA580 001F74E0 EC 01 00 2A */ fadds f0, f1, f0 +/* 801FA584 001F74E4 D0 A1 00 A8 */ stfs f5, 0xa8(r1) +/* 801FA588 001F74E8 D0 41 00 AC */ stfs f2, 0xac(r1) +/* 801FA58C 001F74EC D0 01 00 A4 */ stfs f0, 0xa4(r1) +/* 801FA590 001F74F0 D0 21 00 38 */ stfs f1, 0x38(r1) +/* 801FA594 001F74F4 D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 801FA598 001F74F8 D0 61 00 40 */ stfs f3, 0x40(r1) +/* 801FA59C 001F74FC 81 9E 00 00 */ lwz r12, 0(r30) +/* 801FA5A0 001F7500 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801FA5A4 001F7504 7D 89 03 A6 */ mtctr r12 +/* 801FA5A8 001F7508 4E 80 04 21 */ bctrl +/* 801FA5AC 001F750C C0 22 AF 7C */ lfs f1, lbl_805ACC9C@sda21(r2) +/* 801FA5B0 001F7510 38 81 00 A4 */ addi r4, r1, 0xa4 +/* 801FA5B4 001F7514 38 A1 00 38 */ addi r5, r1, 0x38 +/* 801FA5B8 001F7518 4B FD 15 E1 */ bl GetSplinePointWithLookahead__15CPathFindSearchCFR9CVector3fRC9CVector3ff +/* 801FA5BC 001F751C 7F C3 F3 78 */ mr r3, r30 +/* 801FA5C0 001F7520 81 9E 00 00 */ lwz r12, 0(r30) +/* 801FA5C4 001F7524 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801FA5C8 001F7528 7D 89 03 A6 */ mtctr r12 +/* 801FA5CC 001F752C 4E 80 04 21 */ bctrl +/* 801FA5D0 001F7530 38 81 00 A4 */ addi r4, r1, 0xa4 +/* 801FA5D4 001F7534 4B FD 1A 71 */ bl SegmentOver__15CPathFindSearchCFRC9CVector3f +/* 801FA5D8 001F7538 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801FA5DC 001F753C 41 82 00 24 */ beq lbl_801FA600 +/* 801FA5E0 001F7540 7F C3 F3 78 */ mr r3, r30 +/* 801FA5E4 001F7544 81 9E 00 00 */ lwz r12, 0(r30) +/* 801FA5E8 001F7548 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801FA5EC 001F754C 7D 89 03 A6 */ mtctr r12 +/* 801FA5F0 001F7550 4E 80 04 21 */ bctrl +/* 801FA5F4 001F7554 80 83 00 C8 */ lwz r4, 0xc8(r3) +/* 801FA5F8 001F7558 38 04 00 01 */ addi r0, r4, 1 +/* 801FA5FC 001F755C 90 03 00 C8 */ stw r0, 0xc8(r3) +lbl_801FA600: +/* 801FA600 001F7560 C0 21 00 A8 */ lfs f1, 0xa8(r1) +/* 801FA604 001F7564 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 801FA608 001F7568 C0 1E 00 50 */ lfs f0, 0x50(r30) +/* 801FA60C 001F756C C0 61 00 AC */ lfs f3, 0xac(r1) +/* 801FA610 001F7570 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 801FA614 001F7574 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801FA618 001F7578 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801FA61C 001F757C C0 21 00 A4 */ lfs f1, 0xa4(r1) +/* 801FA620 001F7580 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801FA624 001F7584 D0 81 00 B4 */ stfs f4, 0xb4(r1) +/* 801FA628 001F7588 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801FA62C 001F758C D0 41 00 B8 */ stfs f2, 0xb8(r1) +/* 801FA630 001F7590 D0 01 00 B0 */ stfs f0, 0xb0(r1) +/* 801FA634 001F7594 48 11 A0 C5 */ bl CanBeNormalized__9CVector3fCFv +/* 801FA638 001F7598 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801FA63C 001F759C 41 82 00 0C */ beq lbl_801FA648 +/* 801FA640 001F75A0 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 801FA644 001F75A4 48 11 A2 B5 */ bl Normalize__9CVector3fFv +lbl_801FA648: +/* 801FA648 001F75A8 7F C4 F3 78 */ mr r4, r30 +/* 801FA64C 001F75AC 7F E5 FB 78 */ mr r5, r31 +/* 801FA650 001F75B0 38 61 00 2C */ addi r3, r1, 0x2c +/* 801FA654 001F75B4 48 00 28 A5 */ bl AvoidActors__13CFlyingPirateFR13CStateManager +/* 801FA658 001F75B8 C0 A2 AF 7C */ lfs f5, lbl_805ACC9C@sda21(r2) +/* 801FA65C 001F75BC 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 801FA660 001F75C0 C0 01 00 34 */ lfs f0, 0x34(r1) +/* 801FA664 001F75C4 C0 41 00 2C */ lfs f2, 0x2c(r1) +/* 801FA668 001F75C8 C0 21 00 30 */ lfs f1, 0x30(r1) +/* 801FA66C 001F75CC EC C5 00 32 */ fmuls f6, f5, f0 +/* 801FA670 001F75D0 C0 01 00 B8 */ lfs f0, 0xb8(r1) +/* 801FA674 001F75D4 EC 65 00 B2 */ fmuls f3, f5, f2 +/* 801FA678 001F75D8 C0 81 00 B0 */ lfs f4, 0xb0(r1) +/* 801FA67C 001F75DC EC 25 00 72 */ fmuls f1, f5, f1 +/* 801FA680 001F75E0 C0 41 00 B4 */ lfs f2, 0xb4(r1) +/* 801FA684 001F75E4 EC 64 18 2A */ fadds f3, f4, f3 +/* 801FA688 001F75E8 EC 22 08 2A */ fadds f1, f2, f1 +/* 801FA68C 001F75EC EC 00 30 2A */ fadds f0, f0, f6 +/* 801FA690 001F75F0 D0 61 00 B0 */ stfs f3, 0xb0(r1) +/* 801FA694 001F75F4 D0 21 00 B4 */ stfs f1, 0xb4(r1) +/* 801FA698 001F75F8 D0 01 00 B8 */ stfs f0, 0xb8(r1) +/* 801FA69C 001F75FC 48 11 A0 5D */ bl CanBeNormalized__9CVector3fCFv +/* 801FA6A0 001F7600 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801FA6A4 001F7604 41 82 00 0C */ beq lbl_801FA6B0 +/* 801FA6A8 001F7608 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 801FA6AC 001F760C 48 11 A2 4D */ bl Normalize__9CVector3fFv +lbl_801FA6B0: +/* 801FA6B0 001F7610 C0 3E 08 58 */ lfs f1, 0x858(r30) +/* 801FA6B4 001F7614 C0 02 AF 64 */ lfs f0, lbl_805ACC84@sda21(r2) +/* 801FA6B8 001F7618 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801FA6BC 001F761C 40 80 00 0C */ bge lbl_801FA6C8 +/* 801FA6C0 001F7620 C0 42 AF CC */ lfs f2, lbl_805ACCEC@sda21(r2) +/* 801FA6C4 001F7624 48 00 00 08 */ b lbl_801FA6CC +lbl_801FA6C8: +/* 801FA6C8 001F7628 C0 42 AF 78 */ lfs f2, lbl_805ACC98@sda21(r2) +lbl_801FA6CC: +/* 801FA6CC 001F762C C0 3E 06 2C */ lfs f1, 0x62c(r30) +/* 801FA6D0 001F7630 7F C4 F3 78 */ mr r4, r30 +/* 801FA6D4 001F7634 C0 02 AF B4 */ lfs f0, lbl_805ACCD4@sda21(r2) +/* 801FA6D8 001F7638 7F E5 FB 78 */ mr r5, r31 +/* 801FA6DC 001F763C EC 82 00 72 */ fmuls f4, f2, f1 +/* 801FA6E0 001F7640 C0 21 00 B0 */ lfs f1, 0xb0(r1) +/* 801FA6E4 001F7644 C0 61 00 B4 */ lfs f3, 0xb4(r1) +/* 801FA6E8 001F7648 EC 00 00 B2 */ fmuls f0, f0, f2 +/* 801FA6EC 001F764C C0 41 00 B8 */ lfs f2, 0xb8(r1) +/* 801FA6F0 001F7650 38 61 00 08 */ addi r3, r1, 8 +/* 801FA6F4 001F7654 EC 9D 01 32 */ fmuls f4, f29, f4 +/* 801FA6F8 001F7658 EC 9D 01 32 */ fmuls f4, f29, f4 +/* 801FA6FC 001F765C EC 24 00 72 */ fmuls f1, f4, f1 +/* 801FA700 001F7660 EC 64 00 F2 */ fmuls f3, f4, f3 +/* 801FA704 001F7664 EC 44 00 B2 */ fmuls f2, f4, f2 +/* 801FA708 001F7668 D0 3E 08 7C */ stfs f1, 0x87c(r30) +/* 801FA70C 001F766C D0 7E 08 80 */ stfs f3, 0x880(r30) +/* 801FA710 001F7670 D0 5E 08 84 */ stfs f2, 0x884(r30) +/* 801FA714 001F7674 D0 1E 08 98 */ stfs f0, 0x898(r30) +/* 801FA718 001F7678 C0 3E 08 70 */ lfs f1, 0x870(r30) +/* 801FA71C 001F767C C0 1E 08 7C */ lfs f0, 0x87c(r30) +/* 801FA720 001F7680 EC 01 00 2A */ fadds f0, f1, f0 +/* 801FA724 001F7684 D0 1E 08 70 */ stfs f0, 0x870(r30) +/* 801FA728 001F7688 C0 3E 08 74 */ lfs f1, 0x874(r30) +/* 801FA72C 001F768C C0 1E 08 80 */ lfs f0, 0x880(r30) +/* 801FA730 001F7690 EC 01 00 2A */ fadds f0, f1, f0 +/* 801FA734 001F7694 D0 1E 08 74 */ stfs f0, 0x874(r30) +/* 801FA738 001F7698 C0 3E 08 78 */ lfs f1, 0x878(r30) +/* 801FA73C 001F769C C0 1E 08 84 */ lfs f0, 0x884(r30) +/* 801FA740 001F76A0 EC 01 00 2A */ fadds f0, f1, f0 +/* 801FA744 001F76A4 D0 1E 08 78 */ stfs f0, 0x878(r30) +/* 801FA748 001F76A8 C3 FE 00 60 */ lfs f31, 0x60(r30) +/* 801FA74C 001F76AC C3 DE 00 50 */ lfs f30, 0x50(r30) +/* 801FA750 001F76B0 C3 BE 00 40 */ lfs f29, 0x40(r30) +/* 801FA754 001F76B4 48 00 21 41 */ bl GetTargetPos__13CFlyingPirateFR13CStateManager +/* 801FA758 001F76B8 C0 41 00 08 */ lfs f2, 8(r1) +/* 801FA75C 001F76BC 38 61 00 20 */ addi r3, r1, 0x20 +/* 801FA760 001F76C0 C0 21 00 0C */ lfs f1, 0xc(r1) +/* 801FA764 001F76C4 38 81 00 14 */ addi r4, r1, 0x14 +/* 801FA768 001F76C8 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 801FA76C 001F76CC EC 42 E8 28 */ fsubs f2, f2, f29 +/* 801FA770 001F76D0 EC 21 F0 28 */ fsubs f1, f1, f30 +/* 801FA774 001F76D4 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 801FA778 001F76D8 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801FA77C 001F76DC D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801FA780 001F76E0 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801FA784 001F76E4 48 11 A0 CD */ bl AsNormalized__9CVector3fCFv +/* 801FA788 001F76E8 C0 C1 00 B0 */ lfs f6, 0xb0(r1) +/* 801FA78C 001F76EC 38 81 00 C8 */ addi r4, r1, 0xc8 +/* 801FA790 001F76F0 C0 A1 00 B4 */ lfs f5, 0xb4(r1) +/* 801FA794 001F76F4 C0 81 00 B8 */ lfs f4, 0xb8(r1) +/* 801FA798 001F76F8 C0 61 00 20 */ lfs f3, 0x20(r1) +/* 801FA79C 001F76FC C0 41 00 24 */ lfs f2, 0x24(r1) +/* 801FA7A0 001F7700 C0 21 00 28 */ lfs f1, 0x28(r1) +/* 801FA7A4 001F7704 C0 02 AF 78 */ lfs f0, lbl_805ACC98@sda21(r2) +/* 801FA7A8 001F7708 D0 C1 00 C8 */ stfs f6, 0xc8(r1) +/* 801FA7AC 001F770C D0 A1 00 CC */ stfs f5, 0xcc(r1) +/* 801FA7B0 001F7710 D0 81 00 D0 */ stfs f4, 0xd0(r1) +/* 801FA7B4 001F7714 D0 61 00 D4 */ stfs f3, 0xd4(r1) +/* 801FA7B8 001F7718 D0 41 00 D8 */ stfs f2, 0xd8(r1) +/* 801FA7BC 001F771C D0 21 00 DC */ stfs f1, 0xdc(r1) +/* 801FA7C0 001F7720 D0 01 00 E0 */ stfs f0, 0xe0(r1) +/* 801FA7C4 001F7724 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801FA7C8 001F7728 38 63 00 04 */ addi r3, r3, 4 +/* 801FA7CC 001F772C 4B F3 6F 4D */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 801FA7D0 001F7730 7F C3 F3 78 */ mr r3, r30 +/* 801FA7D4 001F7734 7F E4 FB 78 */ mr r4, r31 +/* 801FA7D8 001F7738 48 00 29 8D */ bl UpdateCantSeePlayer__13CFlyingPirateFR13CStateManager +lbl_801FA7DC: +/* 801FA7DC 001F773C E3 E1 01 18 */ psq_l f31, 280(r1), 0, qr0 +/* 801FA7E0 001F7740 CB E1 01 10 */ lfd f31, 0x110(r1) +/* 801FA7E4 001F7744 E3 C1 01 08 */ psq_l f30, 264(r1), 0, qr0 +/* 801FA7E8 001F7748 CB C1 01 00 */ lfd f30, 0x100(r1) +/* 801FA7EC 001F774C E3 A1 00 F8 */ psq_l f29, 248(r1), 0, qr0 +/* 801FA7F0 001F7750 CB A1 00 F0 */ lfd f29, 0xf0(r1) +/* 801FA7F4 001F7754 83 E1 00 EC */ lwz r31, 0xec(r1) +/* 801FA7F8 001F7758 80 01 01 24 */ lwz r0, 0x124(r1) +/* 801FA7FC 001F775C 83 C1 00 E8 */ lwz r30, 0xe8(r1) +/* 801FA800 001F7760 7C 08 03 A6 */ mtlr r0 +/* 801FA804 001F7764 38 21 01 20 */ addi r1, r1, 0x120 +/* 801FA808 001F7768 4E 80 00 20 */ blr + +.global PathFind__13CFlyingPirateFR13CStateManager9EStateMsgf +PathFind__13CFlyingPirateFR13CStateManager9EStateMsgf: +/* 801FA80C 001F776C 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 801FA810 001F7770 7C 08 02 A6 */ mflr r0 +/* 801FA814 001F7774 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 801FA818 001F7778 DB E1 00 E0 */ stfd f31, 0xe0(r1) +/* 801FA81C 001F777C F3 E1 00 E8 */ psq_st f31, 232(r1), 0, qr0 +/* 801FA820 001F7780 DB C1 00 D0 */ stfd f30, 0xd0(r1) +/* 801FA824 001F7784 F3 C1 00 D8 */ psq_st f30, 216(r1), 0, qr0 +/* 801FA828 001F7788 DB A1 00 C0 */ stfd f29, 0xc0(r1) +/* 801FA82C 001F778C F3 A1 00 C8 */ psq_st f29, 200(r1), 0, qr0 +/* 801FA830 001F7790 93 E1 00 BC */ stw r31, 0xbc(r1) +/* 801FA834 001F7794 93 C1 00 B8 */ stw r30, 0xb8(r1) +/* 801FA838 001F7798 FF E0 08 90 */ fmr f31, f1 +/* 801FA83C 001F779C 2C 05 00 01 */ cmpwi r5, 1 +/* 801FA840 001F77A0 7C 7E 1B 78 */ mr r30, r3 +/* 801FA844 001F77A4 7C 9F 23 78 */ mr r31, r4 +/* 801FA848 001F77A8 41 82 01 C8 */ beq lbl_801FAA10 +/* 801FA84C 001F77AC 40 80 00 10 */ bge lbl_801FA85C +/* 801FA850 001F77B0 2C 05 00 00 */ cmpwi r5, 0 +/* 801FA854 001F77B4 40 80 00 14 */ bge lbl_801FA868 +/* 801FA858 001F77B8 48 00 04 AC */ b lbl_801FAD04 +lbl_801FA85C: +/* 801FA85C 001F77BC 2C 05 00 03 */ cmpwi r5, 3 +/* 801FA860 001F77C0 40 80 04 A4 */ bge lbl_801FAD04 +/* 801FA864 001F77C4 48 00 04 90 */ b lbl_801FACF4 +lbl_801FA868: +/* 801FA868 001F77C8 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 801FA86C 001F77CC 7F E5 FB 78 */ mr r5, r31 +/* 801FA870 001F77D0 38 61 00 6C */ addi r3, r1, 0x6c +/* 801FA874 001F77D4 C0 22 AF 60 */ lfs f1, lbl_805ACC80@sda21(r2) +/* 801FA878 001F77D8 81 84 00 00 */ lwz r12, 0(r4) +/* 801FA87C 001F77DC 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801FA880 001F77E0 7D 89 03 A6 */ mtctr r12 +/* 801FA884 001F77E4 4E 80 04 21 */ bctrl +/* 801FA888 001F77E8 C0 41 00 6C */ lfs f2, 0x6c(r1) +/* 801FA88C 001F77EC C0 21 00 70 */ lfs f1, 0x70(r1) +/* 801FA890 001F77F0 C0 01 00 74 */ lfs f0, 0x74(r1) +/* 801FA894 001F77F4 D0 41 00 90 */ stfs f2, 0x90(r1) +/* 801FA898 001F77F8 D0 21 00 94 */ stfs f1, 0x94(r1) +/* 801FA89C 001F77FC D0 01 00 98 */ stfs f0, 0x98(r1) +/* 801FA8A0 001F7800 88 1E 06 A1 */ lbz r0, 0x6a1(r30) +/* 801FA8A4 001F7804 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 801FA8A8 001F7808 41 82 00 20 */ beq lbl_801FA8C8 +/* 801FA8AC 001F780C C0 1E 02 E0 */ lfs f0, 0x2e0(r30) +/* 801FA8B0 001F7810 D0 01 00 90 */ stfs f0, 0x90(r1) +/* 801FA8B4 001F7814 C0 1E 02 E4 */ lfs f0, 0x2e4(r30) +/* 801FA8B8 001F7818 D0 01 00 94 */ stfs f0, 0x94(r1) +/* 801FA8BC 001F781C C0 1E 02 E8 */ lfs f0, 0x2e8(r30) +/* 801FA8C0 001F7820 D0 01 00 98 */ stfs f0, 0x98(r1) +/* 801FA8C4 001F7824 48 00 00 3C */ b lbl_801FA900 +lbl_801FA8C8: +/* 801FA8C8 001F7828 A0 1E 06 A4 */ lhz r0, 0x6a4(r30) +/* 801FA8CC 001F782C 7F C3 F3 78 */ mr r3, r30 +/* 801FA8D0 001F7830 7F E4 FB 78 */ mr r4, r31 +/* 801FA8D4 001F7834 38 A1 00 08 */ addi r5, r1, 8 +/* 801FA8D8 001F7838 B0 01 00 08 */ sth r0, 8(r1) +/* 801FA8DC 001F783C 4B E8 1F D1 */ bl GetCoverPoint__10CPatternedCFR13CStateManager9TUniqueId +/* 801FA8E0 001F7840 28 03 00 00 */ cmplwi r3, 0 +/* 801FA8E4 001F7844 41 82 00 1C */ beq lbl_801FA900 +/* 801FA8E8 001F7848 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 801FA8EC 001F784C C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801FA8F0 001F7850 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801FA8F4 001F7854 D0 01 00 90 */ stfs f0, 0x90(r1) +/* 801FA8F8 001F7858 D0 21 00 94 */ stfs f1, 0x94(r1) +/* 801FA8FC 001F785C D0 41 00 98 */ stfs f2, 0x98(r1) +lbl_801FA900: +/* 801FA900 001F7860 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 801FA904 001F7864 7F C3 F3 78 */ mr r3, r30 +/* 801FA908 001F7868 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 801FA90C 001F786C C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801FA910 001F7870 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 801FA914 001F7874 D0 21 00 64 */ stfs f1, 0x64(r1) +/* 801FA918 001F7878 D0 41 00 68 */ stfs f2, 0x68(r1) +/* 801FA91C 001F787C 81 9E 00 00 */ lwz r12, 0(r30) +/* 801FA920 001F7880 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801FA924 001F7884 7D 89 03 A6 */ mtctr r12 +/* 801FA928 001F7888 4E 80 04 21 */ bctrl +/* 801FA92C 001F788C 38 81 00 60 */ addi r4, r1, 0x60 +/* 801FA930 001F7890 38 A1 00 90 */ addi r5, r1, 0x90 +/* 801FA934 001F7894 4B FC D3 39 */ bl Search__15CPathFindSearchFRC9CVector3fRC9CVector3f +/* 801FA938 001F7898 2C 03 00 00 */ cmpwi r3, 0 +/* 801FA93C 001F789C 41 82 00 BC */ beq lbl_801FA9F8 +/* 801FA940 001F78A0 7F C3 F3 78 */ mr r3, r30 +/* 801FA944 001F78A4 81 9E 00 00 */ lwz r12, 0(r30) +/* 801FA948 001F78A8 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801FA94C 001F78AC 7D 89 03 A6 */ mtctr r12 +/* 801FA950 001F78B0 4E 80 04 21 */ bctrl +/* 801FA954 001F78B4 80 03 00 CC */ lwz r0, 0xcc(r3) +/* 801FA958 001F78B8 2C 00 00 03 */ cmpwi r0, 3 +/* 801FA95C 001F78BC 41 82 00 24 */ beq lbl_801FA980 +/* 801FA960 001F78C0 7F C3 F3 78 */ mr r3, r30 +/* 801FA964 001F78C4 81 9E 00 00 */ lwz r12, 0(r30) +/* 801FA968 001F78C8 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801FA96C 001F78CC 7D 89 03 A6 */ mtctr r12 +/* 801FA970 001F78D0 4E 80 04 21 */ bctrl +/* 801FA974 001F78D4 80 03 00 CC */ lwz r0, 0xcc(r3) +/* 801FA978 001F78D8 2C 00 00 04 */ cmpwi r0, 4 +/* 801FA97C 001F78DC 40 82 00 7C */ bne lbl_801FA9F8 +lbl_801FA980: +/* 801FA980 001F78E0 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 801FA984 001F78E4 7F C3 F3 78 */ mr r3, r30 +/* 801FA988 001F78E8 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 801FA98C 001F78EC C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801FA990 001F78F0 D0 01 00 54 */ stfs f0, 0x54(r1) +/* 801FA994 001F78F4 D0 21 00 58 */ stfs f1, 0x58(r1) +/* 801FA998 001F78F8 D0 41 00 5C */ stfs f2, 0x5c(r1) +/* 801FA99C 001F78FC 81 9E 00 00 */ lwz r12, 0(r30) +/* 801FA9A0 001F7900 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801FA9A4 001F7904 7D 89 03 A6 */ mtctr r12 +/* 801FA9A8 001F7908 4E 80 04 21 */ bctrl +/* 801FA9AC 001F790C 38 81 00 54 */ addi r4, r1, 0x54 +/* 801FA9B0 001F7910 38 A1 00 90 */ addi r5, r1, 0x90 +/* 801FA9B4 001F7914 4B FC C7 49 */ bl FindClosestReachablePoint__15CPathFindSearchCFRC9CVector3fR9CVector3f +/* 801FA9B8 001F7918 2C 03 00 00 */ cmpwi r3, 0 +/* 801FA9BC 001F791C 40 82 00 3C */ bne lbl_801FA9F8 +/* 801FA9C0 001F7920 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 801FA9C4 001F7924 7F C3 F3 78 */ mr r3, r30 +/* 801FA9C8 001F7928 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 801FA9CC 001F792C C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801FA9D0 001F7930 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 801FA9D4 001F7934 D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 801FA9D8 001F7938 D0 41 00 50 */ stfs f2, 0x50(r1) +/* 801FA9DC 001F793C 81 9E 00 00 */ lwz r12, 0(r30) +/* 801FA9E0 001F7940 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801FA9E4 001F7944 7D 89 03 A6 */ mtctr r12 +/* 801FA9E8 001F7948 4E 80 04 21 */ bctrl +/* 801FA9EC 001F794C 38 81 00 48 */ addi r4, r1, 0x48 +/* 801FA9F0 001F7950 38 A1 00 90 */ addi r5, r1, 0x90 +/* 801FA9F4 001F7954 4B FC D2 79 */ bl Search__15CPathFindSearchFRC9CVector3fRC9CVector3f +lbl_801FA9F8: +/* 801FA9F8 001F7958 C0 22 AF 74 */ lfs f1, lbl_805ACC94@sda21(r2) +/* 801FA9FC 001F795C 7F C3 F3 78 */ mr r3, r30 +/* 801FAA00 001F7960 7F E4 FB 78 */ mr r4, r31 +/* 801FAA04 001F7964 38 A0 00 01 */ li r5, 1 +/* 801FAA08 001F7968 48 00 31 E1 */ bl sub_801fdbe8 +/* 801FAA0C 001F796C 48 00 02 F8 */ b lbl_801FAD04 +lbl_801FAA10: +/* 801FAA10 001F7970 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801FAA14 001F7974 C4 44 66 A0 */ lfsu f2, skZero3f@l(r4) +/* 801FAA18 001F7978 C0 24 00 04 */ lfs f1, 4(r4) +/* 801FAA1C 001F797C C0 04 00 08 */ lfs f0, 8(r4) +/* 801FAA20 001F7980 D0 41 00 84 */ stfs f2, 0x84(r1) +/* 801FAA24 001F7984 D0 21 00 88 */ stfs f1, 0x88(r1) +/* 801FAA28 001F7988 D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 801FAA2C 001F798C 81 83 00 00 */ lwz r12, 0(r3) +/* 801FAA30 001F7990 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801FAA34 001F7994 7D 89 03 A6 */ mtctr r12 +/* 801FAA38 001F7998 4E 80 04 21 */ bctrl +/* 801FAA3C 001F799C 80 03 00 CC */ lwz r0, 0xcc(r3) +/* 801FAA40 001F79A0 2C 00 00 00 */ cmpwi r0, 0 +/* 801FAA44 001F79A4 40 82 01 18 */ bne lbl_801FAB5C +/* 801FAA48 001F79A8 7F C3 F3 78 */ mr r3, r30 +/* 801FAA4C 001F79AC 81 9E 00 00 */ lwz r12, 0(r30) +/* 801FAA50 001F79B0 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801FAA54 001F79B4 7D 89 03 A6 */ mtctr r12 +/* 801FAA58 001F79B8 4E 80 04 21 */ bctrl +/* 801FAA5C 001F79BC 80 83 00 04 */ lwz r4, 4(r3) +/* 801FAA60 001F79C0 80 63 00 C8 */ lwz r3, 0xc8(r3) +/* 801FAA64 001F79C4 38 04 FF FF */ addi r0, r4, -1 +/* 801FAA68 001F79C8 7C 03 00 00 */ cmpw r3, r0 +/* 801FAA6C 001F79CC 40 80 00 F0 */ bge lbl_801FAB5C +/* 801FAA70 001F79D0 C0 9E 00 50 */ lfs f4, 0x50(r30) +/* 801FAA74 001F79D4 7F C3 F3 78 */ mr r3, r30 +/* 801FAA78 001F79D8 C0 1E 00 48 */ lfs f0, 0x48(r30) +/* 801FAA7C 001F79DC C0 7E 00 60 */ lfs f3, 0x60(r30) +/* 801FAA80 001F79E0 C0 5E 00 58 */ lfs f2, 0x58(r30) +/* 801FAA84 001F79E4 EC A4 00 2A */ fadds f5, f4, f0 +/* 801FAA88 001F79E8 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 801FAA8C 001F79EC C0 1E 00 38 */ lfs f0, 0x38(r30) +/* 801FAA90 001F79F0 EC 43 10 2A */ fadds f2, f3, f2 +/* 801FAA94 001F79F4 EC 01 00 2A */ fadds f0, f1, f0 +/* 801FAA98 001F79F8 D0 A1 00 7C */ stfs f5, 0x7c(r1) +/* 801FAA9C 001F79FC D0 41 00 80 */ stfs f2, 0x80(r1) +/* 801FAAA0 001F7A00 D0 01 00 78 */ stfs f0, 0x78(r1) +/* 801FAAA4 001F7A04 D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 801FAAA8 001F7A08 D0 81 00 40 */ stfs f4, 0x40(r1) +/* 801FAAAC 001F7A0C D0 61 00 44 */ stfs f3, 0x44(r1) +/* 801FAAB0 001F7A10 81 9E 00 00 */ lwz r12, 0(r30) +/* 801FAAB4 001F7A14 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801FAAB8 001F7A18 7D 89 03 A6 */ mtctr r12 +/* 801FAABC 001F7A1C 4E 80 04 21 */ bctrl +/* 801FAAC0 001F7A20 C0 22 AF 7C */ lfs f1, lbl_805ACC9C@sda21(r2) +/* 801FAAC4 001F7A24 38 81 00 78 */ addi r4, r1, 0x78 +/* 801FAAC8 001F7A28 38 A1 00 3C */ addi r5, r1, 0x3c +/* 801FAACC 001F7A2C 4B FD 10 CD */ bl GetSplinePointWithLookahead__15CPathFindSearchCFR9CVector3fRC9CVector3ff +/* 801FAAD0 001F7A30 7F C3 F3 78 */ mr r3, r30 +/* 801FAAD4 001F7A34 81 9E 00 00 */ lwz r12, 0(r30) +/* 801FAAD8 001F7A38 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801FAADC 001F7A3C 7D 89 03 A6 */ mtctr r12 +/* 801FAAE0 001F7A40 4E 80 04 21 */ bctrl +/* 801FAAE4 001F7A44 38 81 00 78 */ addi r4, r1, 0x78 +/* 801FAAE8 001F7A48 4B FD 15 5D */ bl SegmentOver__15CPathFindSearchCFRC9CVector3f +/* 801FAAEC 001F7A4C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801FAAF0 001F7A50 41 82 00 24 */ beq lbl_801FAB14 +/* 801FAAF4 001F7A54 7F C3 F3 78 */ mr r3, r30 +/* 801FAAF8 001F7A58 81 9E 00 00 */ lwz r12, 0(r30) +/* 801FAAFC 001F7A5C 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801FAB00 001F7A60 7D 89 03 A6 */ mtctr r12 +/* 801FAB04 001F7A64 4E 80 04 21 */ bctrl +/* 801FAB08 001F7A68 80 83 00 C8 */ lwz r4, 0xc8(r3) +/* 801FAB0C 001F7A6C 38 04 00 01 */ addi r0, r4, 1 +/* 801FAB10 001F7A70 90 03 00 C8 */ stw r0, 0xc8(r3) +lbl_801FAB14: +/* 801FAB14 001F7A74 C0 21 00 7C */ lfs f1, 0x7c(r1) +/* 801FAB18 001F7A78 38 61 00 84 */ addi r3, r1, 0x84 +/* 801FAB1C 001F7A7C C0 1E 00 50 */ lfs f0, 0x50(r30) +/* 801FAB20 001F7A80 C0 61 00 80 */ lfs f3, 0x80(r1) +/* 801FAB24 001F7A84 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 801FAB28 001F7A88 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801FAB2C 001F7A8C C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801FAB30 001F7A90 C0 21 00 78 */ lfs f1, 0x78(r1) +/* 801FAB34 001F7A94 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801FAB38 001F7A98 D0 81 00 88 */ stfs f4, 0x88(r1) +/* 801FAB3C 001F7A9C EC 01 00 28 */ fsubs f0, f1, f0 +/* 801FAB40 001F7AA0 D0 41 00 8C */ stfs f2, 0x8c(r1) +/* 801FAB44 001F7AA4 D0 01 00 84 */ stfs f0, 0x84(r1) +/* 801FAB48 001F7AA8 48 11 9B B1 */ bl CanBeNormalized__9CVector3fCFv +/* 801FAB4C 001F7AAC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801FAB50 001F7AB0 41 82 00 0C */ beq lbl_801FAB5C +/* 801FAB54 001F7AB4 38 61 00 84 */ addi r3, r1, 0x84 +/* 801FAB58 001F7AB8 48 11 9D A1 */ bl Normalize__9CVector3fFv +lbl_801FAB5C: +/* 801FAB5C 001F7ABC 7F C4 F3 78 */ mr r4, r30 +/* 801FAB60 001F7AC0 7F E5 FB 78 */ mr r5, r31 +/* 801FAB64 001F7AC4 38 61 00 30 */ addi r3, r1, 0x30 +/* 801FAB68 001F7AC8 48 00 23 91 */ bl AvoidActors__13CFlyingPirateFR13CStateManager +/* 801FAB6C 001F7ACC C0 A2 AF 7C */ lfs f5, lbl_805ACC9C@sda21(r2) +/* 801FAB70 001F7AD0 38 61 00 84 */ addi r3, r1, 0x84 +/* 801FAB74 001F7AD4 C0 01 00 38 */ lfs f0, 0x38(r1) +/* 801FAB78 001F7AD8 C0 41 00 30 */ lfs f2, 0x30(r1) +/* 801FAB7C 001F7ADC C0 21 00 34 */ lfs f1, 0x34(r1) +/* 801FAB80 001F7AE0 EC C5 00 32 */ fmuls f6, f5, f0 +/* 801FAB84 001F7AE4 C0 01 00 8C */ lfs f0, 0x8c(r1) +/* 801FAB88 001F7AE8 EC 65 00 B2 */ fmuls f3, f5, f2 +/* 801FAB8C 001F7AEC C0 81 00 84 */ lfs f4, 0x84(r1) +/* 801FAB90 001F7AF0 EC 25 00 72 */ fmuls f1, f5, f1 +/* 801FAB94 001F7AF4 C0 41 00 88 */ lfs f2, 0x88(r1) +/* 801FAB98 001F7AF8 EC 64 18 2A */ fadds f3, f4, f3 +/* 801FAB9C 001F7AFC EC 22 08 2A */ fadds f1, f2, f1 +/* 801FABA0 001F7B00 EC 00 30 2A */ fadds f0, f0, f6 +/* 801FABA4 001F7B04 D0 61 00 84 */ stfs f3, 0x84(r1) +/* 801FABA8 001F7B08 D0 21 00 88 */ stfs f1, 0x88(r1) +/* 801FABAC 001F7B0C D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 801FABB0 001F7B10 48 11 9B 49 */ bl CanBeNormalized__9CVector3fCFv +/* 801FABB4 001F7B14 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801FABB8 001F7B18 41 82 00 0C */ beq lbl_801FABC4 +/* 801FABBC 001F7B1C 38 61 00 84 */ addi r3, r1, 0x84 +/* 801FABC0 001F7B20 48 11 9D 39 */ bl Normalize__9CVector3fFv +lbl_801FABC4: +/* 801FABC4 001F7B24 C0 3E 08 58 */ lfs f1, 0x858(r30) +/* 801FABC8 001F7B28 C0 02 AF 64 */ lfs f0, lbl_805ACC84@sda21(r2) +/* 801FABCC 001F7B2C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801FABD0 001F7B30 40 80 00 0C */ bge lbl_801FABDC +/* 801FABD4 001F7B34 C0 42 AF CC */ lfs f2, lbl_805ACCEC@sda21(r2) +/* 801FABD8 001F7B38 48 00 00 08 */ b lbl_801FABE0 +lbl_801FABDC: +/* 801FABDC 001F7B3C C0 42 AF 78 */ lfs f2, lbl_805ACC98@sda21(r2) +lbl_801FABE0: +/* 801FABE0 001F7B40 C0 3E 06 2C */ lfs f1, 0x62c(r30) +/* 801FABE4 001F7B44 7F C4 F3 78 */ mr r4, r30 +/* 801FABE8 001F7B48 C0 02 AF B4 */ lfs f0, lbl_805ACCD4@sda21(r2) +/* 801FABEC 001F7B4C 7F E5 FB 78 */ mr r5, r31 +/* 801FABF0 001F7B50 EC 82 00 72 */ fmuls f4, f2, f1 +/* 801FABF4 001F7B54 C0 21 00 84 */ lfs f1, 0x84(r1) +/* 801FABF8 001F7B58 C0 61 00 88 */ lfs f3, 0x88(r1) +/* 801FABFC 001F7B5C EC 00 00 B2 */ fmuls f0, f0, f2 +/* 801FAC00 001F7B60 C0 41 00 8C */ lfs f2, 0x8c(r1) +/* 801FAC04 001F7B64 38 61 00 0C */ addi r3, r1, 0xc +/* 801FAC08 001F7B68 EC 9F 01 32 */ fmuls f4, f31, f4 +/* 801FAC0C 001F7B6C EC 9F 01 32 */ fmuls f4, f31, f4 +/* 801FAC10 001F7B70 EC 24 00 72 */ fmuls f1, f4, f1 +/* 801FAC14 001F7B74 EC 64 00 F2 */ fmuls f3, f4, f3 +/* 801FAC18 001F7B78 EC 44 00 B2 */ fmuls f2, f4, f2 +/* 801FAC1C 001F7B7C D0 3E 08 7C */ stfs f1, 0x87c(r30) +/* 801FAC20 001F7B80 D0 7E 08 80 */ stfs f3, 0x880(r30) +/* 801FAC24 001F7B84 D0 5E 08 84 */ stfs f2, 0x884(r30) +/* 801FAC28 001F7B88 D0 1E 08 98 */ stfs f0, 0x898(r30) +/* 801FAC2C 001F7B8C C0 3E 08 70 */ lfs f1, 0x870(r30) +/* 801FAC30 001F7B90 C0 1E 08 7C */ lfs f0, 0x87c(r30) +/* 801FAC34 001F7B94 EC 01 00 2A */ fadds f0, f1, f0 +/* 801FAC38 001F7B98 D0 1E 08 70 */ stfs f0, 0x870(r30) +/* 801FAC3C 001F7B9C C0 3E 08 74 */ lfs f1, 0x874(r30) +/* 801FAC40 001F7BA0 C0 1E 08 80 */ lfs f0, 0x880(r30) +/* 801FAC44 001F7BA4 EC 01 00 2A */ fadds f0, f1, f0 +/* 801FAC48 001F7BA8 D0 1E 08 74 */ stfs f0, 0x874(r30) +/* 801FAC4C 001F7BAC C0 3E 08 78 */ lfs f1, 0x878(r30) +/* 801FAC50 001F7BB0 C0 1E 08 84 */ lfs f0, 0x884(r30) +/* 801FAC54 001F7BB4 EC 01 00 2A */ fadds f0, f1, f0 +/* 801FAC58 001F7BB8 D0 1E 08 78 */ stfs f0, 0x878(r30) +/* 801FAC5C 001F7BBC C3 BE 00 60 */ lfs f29, 0x60(r30) +/* 801FAC60 001F7BC0 C3 DE 00 50 */ lfs f30, 0x50(r30) +/* 801FAC64 001F7BC4 C3 FE 00 40 */ lfs f31, 0x40(r30) +/* 801FAC68 001F7BC8 48 00 1C 2D */ bl GetTargetPos__13CFlyingPirateFR13CStateManager +/* 801FAC6C 001F7BCC C0 41 00 0C */ lfs f2, 0xc(r1) +/* 801FAC70 001F7BD0 38 61 00 24 */ addi r3, r1, 0x24 +/* 801FAC74 001F7BD4 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 801FAC78 001F7BD8 38 81 00 18 */ addi r4, r1, 0x18 +/* 801FAC7C 001F7BDC C0 01 00 14 */ lfs f0, 0x14(r1) +/* 801FAC80 001F7BE0 EC 42 F8 28 */ fsubs f2, f2, f31 +/* 801FAC84 001F7BE4 EC 21 F0 28 */ fsubs f1, f1, f30 +/* 801FAC88 001F7BE8 EC 00 E8 28 */ fsubs f0, f0, f29 +/* 801FAC8C 001F7BEC D0 41 00 18 */ stfs f2, 0x18(r1) +/* 801FAC90 001F7BF0 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 801FAC94 001F7BF4 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801FAC98 001F7BF8 48 11 9B B9 */ bl AsNormalized__9CVector3fCFv +/* 801FAC9C 001F7BFC C0 C1 00 84 */ lfs f6, 0x84(r1) +/* 801FACA0 001F7C00 38 81 00 9C */ addi r4, r1, 0x9c +/* 801FACA4 001F7C04 C0 A1 00 88 */ lfs f5, 0x88(r1) +/* 801FACA8 001F7C08 C0 81 00 8C */ lfs f4, 0x8c(r1) +/* 801FACAC 001F7C0C C0 61 00 24 */ lfs f3, 0x24(r1) +/* 801FACB0 001F7C10 C0 41 00 28 */ lfs f2, 0x28(r1) +/* 801FACB4 001F7C14 C0 21 00 2C */ lfs f1, 0x2c(r1) +/* 801FACB8 001F7C18 C0 02 AF 78 */ lfs f0, lbl_805ACC98@sda21(r2) +/* 801FACBC 001F7C1C D0 C1 00 9C */ stfs f6, 0x9c(r1) +/* 801FACC0 001F7C20 D0 A1 00 A0 */ stfs f5, 0xa0(r1) +/* 801FACC4 001F7C24 D0 81 00 A4 */ stfs f4, 0xa4(r1) +/* 801FACC8 001F7C28 D0 61 00 A8 */ stfs f3, 0xa8(r1) +/* 801FACCC 001F7C2C D0 41 00 AC */ stfs f2, 0xac(r1) +/* 801FACD0 001F7C30 D0 21 00 B0 */ stfs f1, 0xb0(r1) +/* 801FACD4 001F7C34 D0 01 00 B4 */ stfs f0, 0xb4(r1) +/* 801FACD8 001F7C38 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801FACDC 001F7C3C 38 63 00 04 */ addi r3, r3, 4 +/* 801FACE0 001F7C40 4B F3 6A 39 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 801FACE4 001F7C44 7F C3 F3 78 */ mr r3, r30 +/* 801FACE8 001F7C48 7F E4 FB 78 */ mr r4, r31 +/* 801FACEC 001F7C4C 48 00 24 79 */ bl UpdateCantSeePlayer__13CFlyingPirateFR13CStateManager +/* 801FACF0 001F7C50 48 00 00 14 */ b lbl_801FAD04 +lbl_801FACF4: +/* 801FACF4 001F7C54 88 1E 06 A1 */ lbz r0, 0x6a1(r30) +/* 801FACF8 001F7C58 38 60 00 00 */ li r3, 0 +/* 801FACFC 001F7C5C 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801FAD00 001F7C60 98 1E 06 A1 */ stb r0, 0x6a1(r30) +lbl_801FAD04: +/* 801FAD04 001F7C64 E3 E1 00 E8 */ psq_l f31, 232(r1), 0, qr0 +/* 801FAD08 001F7C68 CB E1 00 E0 */ lfd f31, 0xe0(r1) +/* 801FAD0C 001F7C6C E3 C1 00 D8 */ psq_l f30, 216(r1), 0, qr0 +/* 801FAD10 001F7C70 CB C1 00 D0 */ lfd f30, 0xd0(r1) +/* 801FAD14 001F7C74 E3 A1 00 C8 */ psq_l f29, 200(r1), 0, qr0 +/* 801FAD18 001F7C78 CB A1 00 C0 */ lfd f29, 0xc0(r1) +/* 801FAD1C 001F7C7C 83 E1 00 BC */ lwz r31, 0xbc(r1) +/* 801FAD20 001F7C80 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 801FAD24 001F7C84 83 C1 00 B8 */ lwz r30, 0xb8(r1) +/* 801FAD28 001F7C88 7C 08 03 A6 */ mtlr r0 +/* 801FAD2C 001F7C8C 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 801FAD30 001F7C90 4E 80 00 20 */ blr + +.global InRange__13CFlyingPirateFR13CStateManagerf +InRange__13CFlyingPirateFR13CStateManagerf: +/* 801FAD34 001F7C94 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 801FAD38 001F7C98 38 00 00 00 */ li r0, 0 +/* 801FAD3C 001F7C9C C0 03 02 FC */ lfs f0, 0x2fc(r3) +/* 801FAD40 001F7CA0 C0 84 00 60 */ lfs f4, 0x60(r4) +/* 801FAD44 001F7CA4 C0 64 00 50 */ lfs f3, 0x50(r4) +/* 801FAD48 001F7CA8 FC 20 22 10 */ fabs f1, f4 +/* 801FAD4C 001F7CAC C0 44 00 40 */ lfs f2, 0x40(r4) +/* 801FAD50 001F7CB0 FC 20 08 18 */ frsp f1, f1 +/* 801FAD54 001F7CB4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801FAD58 001F7CB8 40 80 00 24 */ bge lbl_801FAD7C +/* 801FAD5C 001F7CBC EC 23 00 F2 */ fmuls f1, f3, f3 +/* 801FAD60 001F7CC0 C0 03 03 00 */ lfs f0, 0x300(r3) +/* 801FAD64 001F7CC4 EC 00 00 32 */ fmuls f0, f0, f0 +/* 801FAD68 001F7CC8 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 801FAD6C 001F7CCC EC 24 09 3A */ fmadds f1, f4, f4, f1 +/* 801FAD70 001F7CD0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801FAD74 001F7CD4 40 80 00 08 */ bge lbl_801FAD7C +/* 801FAD78 001F7CD8 38 00 00 01 */ li r0, 1 +lbl_801FAD7C: +/* 801FAD7C 001F7CDC 7C 03 03 78 */ mr r3, r0 +/* 801FAD80 001F7CE0 4E 80 00 20 */ blr + +.global LineOfSight__13CFlyingPirateFR13CStateManagerf +LineOfSight__13CFlyingPirateFR13CStateManagerf: +/* 801FAD84 001F7CE4 88 03 06 A0 */ lbz r0, 0x6a0(r3) +/* 801FAD88 001F7CE8 54 00 07 FE */ clrlwi r0, r0, 0x1f +/* 801FAD8C 001F7CEC 7C 00 00 34 */ cntlzw r0, r0 +/* 801FAD90 001F7CF0 54 03 D9 7E */ srwi r3, r0, 5 +/* 801FAD94 001F7CF4 4E 80 00 20 */ blr + +.global SpotPlayer__13CFlyingPirateFR13CStateManagerf +SpotPlayer__13CFlyingPirateFR13CStateManagerf: +/* 801FAD98 001F7CF8 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801FAD9C 001F7CFC 7C 08 02 A6 */ mflr r0 +/* 801FADA0 001F7D00 90 01 00 44 */ stw r0, 0x44(r1) +/* 801FADA4 001F7D04 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801FADA8 001F7D08 7C 9F 23 78 */ mr r31, r4 +/* 801FADAC 001F7D0C 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801FADB0 001F7D10 7C 7E 1B 78 */ mr r30, r3 +/* 801FADB4 001F7D14 7F C4 F3 78 */ mr r4, r30 +/* 801FADB8 001F7D18 38 61 00 14 */ addi r3, r1, 0x14 +/* 801FADBC 001F7D1C 4B E8 1D 15 */ bl GetGunEyePos__10CPatternedCFv +/* 801FADC0 001F7D20 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 801FADC4 001F7D24 7F E5 FB 78 */ mr r5, r31 +/* 801FADC8 001F7D28 38 61 00 20 */ addi r3, r1, 0x20 +/* 801FADCC 001F7D2C C0 22 AF 60 */ lfs f1, lbl_805ACC80@sda21(r2) +/* 801FADD0 001F7D30 81 84 00 00 */ lwz r12, 0(r4) +/* 801FADD4 001F7D34 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801FADD8 001F7D38 7D 89 03 A6 */ mtctr r12 +/* 801FADDC 001F7D3C 4E 80 04 21 */ bctrl +/* 801FADE0 001F7D40 C0 21 00 28 */ lfs f1, 0x28(r1) +/* 801FADE4 001F7D44 38 61 00 2C */ addi r3, r1, 0x2c +/* 801FADE8 001F7D48 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 801FADEC 001F7D4C C0 61 00 20 */ lfs f3, 0x20(r1) +/* 801FADF0 001F7D50 C0 41 00 14 */ lfs f2, 0x14(r1) +/* 801FADF4 001F7D54 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801FADF8 001F7D58 C0 21 00 24 */ lfs f1, 0x24(r1) +/* 801FADFC 001F7D5C C0 01 00 18 */ lfs f0, 0x18(r1) +/* 801FAE00 001F7D60 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801FAE04 001F7D64 D0 81 00 34 */ stfs f4, 0x34(r1) +/* 801FAE08 001F7D68 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801FAE0C 001F7D6C D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 801FAE10 001F7D70 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801FAE14 001F7D74 48 11 9A A5 */ bl Magnitude__9CVector3fCFv +/* 801FAE18 001F7D78 C0 BE 00 48 */ lfs f5, 0x48(r30) +/* 801FAE1C 001F7D7C C0 01 00 30 */ lfs f0, 0x30(r1) +/* 801FAE20 001F7D80 C0 9E 00 38 */ lfs f4, 0x38(r30) +/* 801FAE24 001F7D84 EC 00 01 72 */ fmuls f0, f0, f5 +/* 801FAE28 001F7D88 C0 41 00 2C */ lfs f2, 0x2c(r1) +/* 801FAE2C 001F7D8C C0 FE 03 C4 */ lfs f7, 0x3c4(r30) +/* 801FAE30 001F7D90 C0 DE 00 58 */ lfs f6, 0x58(r30) +/* 801FAE34 001F7D94 EC 42 01 3A */ fmadds f2, f2, f4, f0 +/* 801FAE38 001F7D98 C0 61 00 34 */ lfs f3, 0x34(r1) +/* 801FAE3C 001F7D9C EC 01 01 F2 */ fmuls f0, f1, f7 +/* 801FAE40 001F7DA0 D0 81 00 08 */ stfs f4, 8(r1) +/* 801FAE44 001F7DA4 EC 23 11 BA */ fmadds f1, f3, f6, f2 +/* 801FAE48 001F7DA8 D0 A1 00 0C */ stfs f5, 0xc(r1) +/* 801FAE4C 001F7DAC D0 C1 00 10 */ stfs f6, 0x10(r1) +/* 801FAE50 001F7DB0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801FAE54 001F7DB4 7C 00 00 26 */ mfcr r0 +/* 801FAE58 001F7DB8 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f +/* 801FAE5C 001F7DBC 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801FAE60 001F7DC0 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801FAE64 001F7DC4 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801FAE68 001F7DC8 7C 08 03 A6 */ mtlr r0 +/* 801FAE6C 001F7DCC 38 21 00 40 */ addi r1, r1, 0x40 +/* 801FAE70 001F7DD0 4E 80 00 20 */ blr + +.global Attack__13CFlyingPirateFR13CStateManager9EStateMsgf +Attack__13CFlyingPirateFR13CStateManager9EStateMsgf: +/* 801FAE74 001F7DD4 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801FAE78 001F7DD8 7C 08 02 A6 */ mflr r0 +/* 801FAE7C 001F7DDC 90 01 00 64 */ stw r0, 0x64(r1) +/* 801FAE80 001F7DE0 DB E1 00 50 */ stfd f31, 0x50(r1) +/* 801FAE84 001F7DE4 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 801FAE88 001F7DE8 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801FAE8C 001F7DEC 93 C1 00 48 */ stw r30, 0x48(r1) +/* 801FAE90 001F7DF0 93 A1 00 44 */ stw r29, 0x44(r1) +/* 801FAE94 001F7DF4 FF E0 08 90 */ fmr f31, f1 +/* 801FAE98 001F7DF8 2C 05 00 01 */ cmpwi r5, 1 +/* 801FAE9C 001F7DFC 7C 7F 1B 78 */ mr r31, r3 +/* 801FAEA0 001F7E00 7C 9D 23 78 */ mr r29, r4 +/* 801FAEA4 001F7E04 41 82 00 94 */ beq lbl_801FAF38 +/* 801FAEA8 001F7E08 40 80 00 10 */ bge lbl_801FAEB8 +/* 801FAEAC 001F7E0C 2C 05 00 00 */ cmpwi r5, 0 +/* 801FAEB0 001F7E10 40 80 00 14 */ bge lbl_801FAEC4 +/* 801FAEB4 001F7E14 48 00 01 40 */ b lbl_801FAFF4 +lbl_801FAEB8: +/* 801FAEB8 001F7E18 2C 05 00 03 */ cmpwi r5, 3 +/* 801FAEBC 001F7E1C 40 80 01 38 */ bge lbl_801FAFF4 +/* 801FAEC0 001F7E20 48 00 01 20 */ b lbl_801FAFE0 +lbl_801FAEC4: +/* 801FAEC4 001F7E24 38 00 00 01 */ li r0, 1 +/* 801FAEC8 001F7E28 90 1F 03 2C */ stw r0, 0x32c(r31) +/* 801FAECC 001F7E2C 88 1F 06 A2 */ lbz r0, 0x6a2(r31) +/* 801FAED0 001F7E30 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801FAED4 001F7E34 40 82 01 20 */ bne lbl_801FAFF4 +/* 801FAED8 001F7E38 C0 3F 08 58 */ lfs f1, 0x858(r31) +/* 801FAEDC 001F7E3C C0 02 AF 7C */ lfs f0, lbl_805ACC9C@sda21(r2) +/* 801FAEE0 001F7E40 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801FAEE4 001F7E44 40 80 00 14 */ bge lbl_801FAEF8 +/* 801FAEE8 001F7E48 C0 22 AF 64 */ lfs f1, lbl_805ACC84@sda21(r2) +/* 801FAEEC 001F7E4C C0 1F 06 50 */ lfs f0, 0x650(r31) +/* 801FAEF0 001F7E50 EF E1 00 32 */ fmuls f31, f1, f0 +/* 801FAEF4 001F7E54 48 00 00 08 */ b lbl_801FAEFC +lbl_801FAEF8: +/* 801FAEF8 001F7E58 C3 FF 06 50 */ lfs f31, 0x650(r31) +lbl_801FAEFC: +/* 801FAEFC 001F7E5C 80 7D 09 00 */ lwz r3, 0x900(r29) +/* 801FAF00 001F7E60 C0 22 AF 60 */ lfs f1, lbl_805ACC80@sda21(r2) +/* 801FAF04 001F7E64 C0 42 AF D4 */ lfs f2, lbl_805ACCF4@sda21(r2) +/* 801FAF08 001F7E68 48 11 76 3D */ bl Range__9CRandom16Fff +/* 801FAF0C 001F7E6C FC 01 F8 40 */ fcmpo cr0, f1, f31 +/* 801FAF10 001F7E70 7C 60 00 26 */ mfcr r3 +/* 801FAF14 001F7E74 88 1F 06 A2 */ lbz r0, 0x6a2(r31) +/* 801FAF18 001F7E78 54 64 0F FE */ srwi r4, r3, 0x1f +/* 801FAF1C 001F7E7C 38 60 00 01 */ li r3, 1 +/* 801FAF20 001F7E80 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801FAF24 001F7E84 98 1F 06 A2 */ stb r0, 0x6a2(r31) +/* 801FAF28 001F7E88 88 1F 06 A2 */ lbz r0, 0x6a2(r31) +/* 801FAF2C 001F7E8C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801FAF30 001F7E90 98 1F 06 A2 */ stb r0, 0x6a2(r31) +/* 801FAF34 001F7E94 48 00 00 C0 */ b lbl_801FAFF4 +lbl_801FAF38: +/* 801FAF38 001F7E98 3C A0 80 3E */ lis r5, lbl_803E6814@ha +/* 801FAF3C 001F7E9C 38 C1 00 2C */ addi r6, r1, 0x2c +/* 801FAF40 001F7EA0 39 45 68 14 */ addi r10, r5, lbl_803E6814@l +/* 801FAF44 001F7EA4 38 A0 00 12 */ li r5, 0x12 +/* 801FAF48 001F7EA8 81 2A 00 00 */ lwz r9, 0(r10) +/* 801FAF4C 001F7EAC 38 E0 00 01 */ li r7, 1 +/* 801FAF50 001F7EB0 81 0A 00 04 */ lwz r8, 4(r10) +/* 801FAF54 001F7EB4 80 0A 00 08 */ lwz r0, 8(r10) +/* 801FAF58 001F7EB8 91 21 00 2C */ stw r9, 0x2c(r1) +/* 801FAF5C 001F7EBC 91 01 00 30 */ stw r8, 0x30(r1) +/* 801FAF60 001F7EC0 90 01 00 34 */ stw r0, 0x34(r1) +/* 801FAF64 001F7EC4 4B E8 18 51 */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi +/* 801FAF68 001F7EC8 80 BD 08 4C */ lwz r5, 0x84c(r29) +/* 801FAF6C 001F7ECC 38 61 00 20 */ addi r3, r1, 0x20 +/* 801FAF70 001F7ED0 C0 1F 00 60 */ lfs f0, 0x60(r31) +/* 801FAF74 001F7ED4 38 81 00 14 */ addi r4, r1, 0x14 +/* 801FAF78 001F7ED8 C0 A5 00 60 */ lfs f5, 0x60(r5) +/* 801FAF7C 001F7EDC C0 85 00 50 */ lfs f4, 0x50(r5) +/* 801FAF80 001F7EE0 C0 5F 00 50 */ lfs f2, 0x50(r31) +/* 801FAF84 001F7EE4 EC 25 00 28 */ fsubs f1, f5, f0 +/* 801FAF88 001F7EE8 C0 05 00 40 */ lfs f0, 0x40(r5) +/* 801FAF8C 001F7EEC C0 7F 00 40 */ lfs f3, 0x40(r31) +/* 801FAF90 001F7EF0 EC 44 10 28 */ fsubs f2, f4, f2 +/* 801FAF94 001F7EF4 D0 01 00 08 */ stfs f0, 8(r1) +/* 801FAF98 001F7EF8 EC 00 18 28 */ fsubs f0, f0, f3 +/* 801FAF9C 001F7EFC D0 41 00 18 */ stfs f2, 0x18(r1) +/* 801FAFA0 001F7F00 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801FAFA4 001F7F04 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 801FAFA8 001F7F08 D0 81 00 0C */ stfs f4, 0xc(r1) +/* 801FAFAC 001F7F0C 83 DF 04 50 */ lwz r30, 0x450(r31) +/* 801FAFB0 001F7F10 D0 A1 00 10 */ stfs f5, 0x10(r1) +/* 801FAFB4 001F7F14 48 11 98 9D */ bl AsNormalized__9CVector3fCFv +/* 801FAFB8 001F7F18 FC 20 F8 90 */ fmr f1, f31 +/* 801FAFBC 001F7F1C 7F C3 F3 78 */ mr r3, r30 +/* 801FAFC0 001F7F20 38 81 00 20 */ addi r4, r1, 0x20 +/* 801FAFC4 001F7F24 4B F3 F6 E1 */ bl FaceDirection__15CBodyControllerFRC9CVector3ff +/* 801FAFC8 001F7F28 7F E3 FB 78 */ mr r3, r31 +/* 801FAFCC 001F7F2C 48 00 2D 79 */ bl sub_801fdd44 +/* 801FAFD0 001F7F30 7F E3 FB 78 */ mr r3, r31 +/* 801FAFD4 001F7F34 7F A4 EB 78 */ mr r4, r29 +/* 801FAFD8 001F7F38 48 00 21 8D */ bl UpdateCantSeePlayer__13CFlyingPirateFR13CStateManager +/* 801FAFDC 001F7F3C 48 00 00 18 */ b lbl_801FAFF4 +lbl_801FAFE0: +/* 801FAFE0 001F7F40 38 60 00 00 */ li r3, 0 +/* 801FAFE4 001F7F44 90 7F 03 2C */ stw r3, 0x32c(r31) +/* 801FAFE8 001F7F48 88 1F 06 A2 */ lbz r0, 0x6a2(r31) +/* 801FAFEC 001F7F4C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801FAFF0 001F7F50 98 1F 06 A2 */ stb r0, 0x6a2(r31) +lbl_801FAFF4: +/* 801FAFF4 001F7F54 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 +/* 801FAFF8 001F7F58 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801FAFFC 001F7F5C CB E1 00 50 */ lfd f31, 0x50(r1) +/* 801FB000 001F7F60 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801FB004 001F7F64 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 801FB008 001F7F68 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 801FB00C 001F7F6C 7C 08 03 A6 */ mtlr r0 +/* 801FB010 001F7F70 38 21 00 60 */ addi r1, r1, 0x60 +/* 801FB014 001F7F74 4E 80 00 20 */ blr + +.global ShouldAttack__13CFlyingPirateFR13CStateManagerf +ShouldAttack__13CFlyingPirateFR13CStateManagerf: +/* 801FB018 001F7F78 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801FB01C 001F7F7C 7C 08 02 A6 */ mflr r0 +/* 801FB020 001F7F80 90 01 00 54 */ stw r0, 0x54(r1) +/* 801FB024 001F7F84 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 801FB028 001F7F88 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 801FB02C 001F7F8C DB C1 00 30 */ stfd f30, 0x30(r1) +/* 801FB030 001F7F90 F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 +/* 801FB034 001F7F94 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801FB038 001F7F98 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801FB03C 001F7F9C 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801FB040 001F7FA0 7C 7D 1B 78 */ mr r29, r3 +/* 801FB044 001F7FA4 7C 9E 23 78 */ mr r30, r4 +/* 801FB048 001F7FA8 A0 C3 00 08 */ lhz r6, 8(r3) +/* 801FB04C 001F7FAC 7F C3 F3 78 */ mr r3, r30 +/* 801FB050 001F7FB0 38 81 00 1C */ addi r4, r1, 0x1c +/* 801FB054 001F7FB4 38 A1 00 18 */ addi r5, r1, 0x18 +/* 801FB058 001F7FB8 B0 C1 00 18 */ sth r6, 0x18(r1) +/* 801FB05C 001F7FBC 3B E0 00 00 */ li r31, 0 +/* 801FB060 001F7FC0 A0 1D 08 90 */ lhz r0, 0x890(r29) +/* 801FB064 001F7FC4 B0 C1 00 14 */ sth r6, 0x14(r1) +/* 801FB068 001F7FC8 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 801FB06C 001F7FCC 48 03 F1 15 */ bl GetTeamAiRole__10CTeamAiMgrCFRC13CStateManager9TUniqueId9TUniqueId +/* 801FB070 001F7FD0 28 03 00 00 */ cmplwi r3, 0 +/* 801FB074 001F7FD4 41 82 00 10 */ beq lbl_801FB084 +/* 801FB078 001F7FD8 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801FB07C 001F7FDC 2C 00 00 02 */ cmpwi r0, 2 +/* 801FB080 001F7FE0 40 82 00 E8 */ bne lbl_801FB168 +lbl_801FB084: +/* 801FB084 001F7FE4 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 801FB088 001F7FE8 A0 9D 07 E8 */ lhz r4, 0x7e8(r29) +/* 801FB08C 001F7FEC A0 03 00 08 */ lhz r0, 8(r3) +/* 801FB090 001F7FF0 7C 04 00 40 */ cmplw r4, r0 +/* 801FB094 001F7FF4 40 82 00 D4 */ bne lbl_801FB168 +/* 801FB098 001F7FF8 C0 3D 08 6C */ lfs f1, 0x86c(r29) +/* 801FB09C 001F7FFC C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801FB0A0 001F8000 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801FB0A4 001F8004 4C 40 13 82 */ cror 2, 0, 2 +/* 801FB0A8 001F8008 41 82 00 14 */ beq lbl_801FB0BC +/* 801FB0AC 001F800C C0 3D 08 54 */ lfs f1, 0x854(r29) +/* 801FB0B0 001F8010 C0 02 AF 78 */ lfs f0, lbl_805ACC98@sda21(r2) +/* 801FB0B4 001F8014 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801FB0B8 001F8018 40 80 00 B0 */ bge lbl_801FB168 +lbl_801FB0BC: +/* 801FB0BC 001F801C 7F A3 EB 78 */ mr r3, r29 +/* 801FB0C0 001F8020 7F C4 F3 78 */ mr r4, r30 +/* 801FB0C4 001F8024 48 00 15 E1 */ bl CanFireMissiles__13CFlyingPirateFR13CStateManager +/* 801FB0C8 001F8028 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801FB0CC 001F802C 41 82 00 9C */ beq lbl_801FB168 +/* 801FB0D0 001F8030 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 801FB0D4 001F8034 C0 1D 00 50 */ lfs f0, 0x50(r29) +/* 801FB0D8 001F8038 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801FB0DC 001F803C C0 63 00 40 */ lfs f3, 0x40(r3) +/* 801FB0E0 001F8040 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801FB0E4 001F8044 C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 801FB0E8 001F8048 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 801FB0EC 001F804C C0 3D 00 60 */ lfs f1, 0x60(r29) +/* 801FB0F0 001F8050 EC 63 00 28 */ fsubs f3, f3, f0 +/* 801FB0F4 001F8054 EC 04 01 32 */ fmuls f0, f4, f4 +/* 801FB0F8 001F8058 EC 22 08 28 */ fsubs f1, f2, f1 +/* 801FB0FC 001F805C EC 03 00 FA */ fmadds f0, f3, f3, f0 +/* 801FB100 001F8060 EC 21 00 72 */ fmuls f1, f1, f1 +/* 801FB104 001F8064 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801FB108 001F8068 40 80 00 60 */ bge lbl_801FB168 +/* 801FB10C 001F806C A0 7D 08 90 */ lhz r3, 0x890(r29) +/* 801FB110 001F8070 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801FB114 001F8074 7C 03 00 40 */ cmplw r3, r0 +/* 801FB118 001F8078 41 82 00 34 */ beq lbl_801FB14C +/* 801FB11C 001F807C A0 FD 00 08 */ lhz r7, 8(r29) +/* 801FB120 001F8080 7F C4 F3 78 */ mr r4, r30 +/* 801FB124 001F8084 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801FB128 001F8088 38 C1 00 0C */ addi r6, r1, 0xc +/* 801FB12C 001F808C B0 E1 00 0C */ sth r7, 0xc(r1) +/* 801FB130 001F8090 38 60 00 01 */ li r3, 1 +/* 801FB134 001F8094 A0 1D 08 90 */ lhz r0, 0x890(r29) +/* 801FB138 001F8098 B0 E1 00 08 */ sth r7, 8(r1) +/* 801FB13C 001F809C B0 01 00 10 */ sth r0, 0x10(r1) +/* 801FB140 001F80A0 48 03 EE B1 */ bl AddAttacker__10CTeamAiMgrF11EAttackTypeR13CStateManager9TUniqueId9TUniqueId +/* 801FB144 001F80A4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801FB148 001F80A8 41 82 00 20 */ beq lbl_801FB168 +lbl_801FB14C: +/* 801FB14C 001F80AC C3 FD 06 28 */ lfs f31, 0x628(r29) +/* 801FB150 001F80B0 3B E0 00 01 */ li r31, 1 +/* 801FB154 001F80B4 C3 DD 06 24 */ lfs f30, 0x624(r29) +/* 801FB158 001F80B8 80 7E 09 00 */ lwz r3, 0x900(r30) +/* 801FB15C 001F80BC 48 11 73 81 */ bl Float__9CRandom16Fv +/* 801FB160 001F80C0 EC 1F F0 7A */ fmadds f0, f31, f1, f30 +/* 801FB164 001F80C4 D0 1D 08 6C */ stfs f0, 0x86c(r29) +lbl_801FB168: +/* 801FB168 001F80C8 7F E3 FB 78 */ mr r3, r31 +/* 801FB16C 001F80CC E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 801FB170 001F80D0 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 801FB174 001F80D4 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 +/* 801FB178 001F80D8 CB C1 00 30 */ lfd f30, 0x30(r1) +/* 801FB17C 001F80DC 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801FB180 001F80E0 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801FB184 001F80E4 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801FB188 001F80E8 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801FB18C 001F80EC 7C 08 03 A6 */ mtlr r0 +/* 801FB190 001F80F0 38 21 00 50 */ addi r1, r1, 0x50 +/* 801FB194 001F80F4 4E 80 00 20 */ blr + +.global CoverFind__13CFlyingPirateFR13CStateManagerf +CoverFind__13CFlyingPirateFR13CStateManagerf: +/* 801FB198 001F80F8 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 801FB19C 001F80FC 7C 08 02 A6 */ mflr r0 +/* 801FB1A0 001F8100 90 01 00 74 */ stw r0, 0x74(r1) +/* 801FB1A4 001F8104 DB E1 00 60 */ stfd f31, 0x60(r1) +/* 801FB1A8 001F8108 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 801FB1AC 001F810C BF 21 00 44 */ stmw r25, 0x44(r1) +/* 801FB1B0 001F8110 C0 03 05 68 */ lfs f0, 0x568(r3) +/* 801FB1B4 001F8114 7C 7C 1B 78 */ mr r28, r3 +/* 801FB1B8 001F8118 83 64 08 40 */ lwz r27, 0x840(r4) +/* 801FB1BC 001F811C 7C 9D 23 78 */ mr r29, r4 +/* 801FB1C0 001F8120 EF E0 00 32 */ fmuls f31, f0, f0 +/* 801FB1C4 001F8124 3B E0 00 00 */ li r31, 0 +/* 801FB1C8 001F8128 AB 3B 20 08 */ lha r25, 0x2008(r27) +/* 801FB1CC 001F812C 3B C0 00 00 */ li r30, 0 +/* 801FB1D0 001F8130 48 00 00 F0 */ b lbl_801FB2C0 +lbl_801FB1D4: +/* 801FB1D4 001F8134 7F 63 DB 78 */ mr r3, r27 +/* 801FB1D8 001F8138 7F 24 CB 78 */ mr r4, r25 +/* 801FB1DC 001F813C 4B E1 4B 01 */ bl __vc__11CObjectListCFi +/* 801FB1E0 001F8140 7C 64 1B 78 */ mr r4, r3 +/* 801FB1E4 001F8144 38 61 00 18 */ addi r3, r1, 0x18 +/* 801FB1E8 001F8148 4B EA F8 45 */ bl "__ct__31TCastToPtr<17CScriptCoverPoint>FP7CEntity" +/* 801FB1EC 001F814C 83 43 00 04 */ lwz r26, 4(r3) +/* 801FB1F0 001F8150 28 1A 00 00 */ cmplwi r26, 0 +/* 801FB1F4 001F8154 41 82 00 B0 */ beq lbl_801FB2A4 +/* 801FB1F8 001F8158 88 1A 00 30 */ lbz r0, 0x30(r26) +/* 801FB1FC 001F815C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801FB200 001F8160 41 82 00 A4 */ beq lbl_801FB2A4 +/* 801FB204 001F8164 7F 43 D3 78 */ mr r3, r26 +/* 801FB208 001F8168 4B F3 23 ED */ bl ShouldLandHere__17CScriptCoverPointCFv +/* 801FB20C 001F816C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801FB210 001F8170 41 82 00 94 */ beq lbl_801FB2A4 +/* 801FB214 001F8174 A0 1C 00 08 */ lhz r0, 8(r28) +/* 801FB218 001F8178 7F 43 D3 78 */ mr r3, r26 +/* 801FB21C 001F817C 38 81 00 14 */ addi r4, r1, 0x14 +/* 801FB220 001F8180 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801FB224 001F8184 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801FB228 001F8188 4B F3 21 ED */ bl GetInUse__17CScriptCoverPointCF9TUniqueId +/* 801FB22C 001F818C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801FB230 001F8190 40 82 00 74 */ bne lbl_801FB2A4 +/* 801FB234 001F8194 80 7A 00 04 */ lwz r3, 4(r26) +/* 801FB238 001F8198 80 1C 00 04 */ lwz r0, 4(r28) +/* 801FB23C 001F819C 7C 03 00 00 */ cmpw r3, r0 +/* 801FB240 001F81A0 40 82 00 64 */ bne lbl_801FB2A4 +/* 801FB244 001F81A4 C0 DC 00 50 */ lfs f6, 0x50(r28) +/* 801FB248 001F81A8 C0 1A 00 50 */ lfs f0, 0x50(r26) +/* 801FB24C 001F81AC C0 3C 00 40 */ lfs f1, 0x40(r28) +/* 801FB250 001F81B0 EC A6 00 28 */ fsubs f5, f6, f0 +/* 801FB254 001F81B4 C0 1A 00 40 */ lfs f0, 0x40(r26) +/* 801FB258 001F81B8 C0 FC 00 60 */ lfs f7, 0x60(r28) +/* 801FB25C 001F81BC EC 61 00 28 */ fsubs f3, f1, f0 +/* 801FB260 001F81C0 C0 5A 00 60 */ lfs f2, 0x60(r26) +/* 801FB264 001F81C4 EC 05 01 72 */ fmuls f0, f5, f5 +/* 801FB268 001F81C8 EC 87 10 28 */ fsubs f4, f7, f2 +/* 801FB26C 001F81CC D0 21 00 28 */ stfs f1, 0x28(r1) +/* 801FB270 001F81D0 EC 23 00 F2 */ fmuls f1, f3, f3 +/* 801FB274 001F81D4 D0 C1 00 2C */ stfs f6, 0x2c(r1) +/* 801FB278 001F81D8 EC 44 01 32 */ fmuls f2, f4, f4 +/* 801FB27C 001F81DC EC 01 00 2A */ fadds f0, f1, f0 +/* 801FB280 001F81E0 D0 E1 00 30 */ stfs f7, 0x30(r1) +/* 801FB284 001F81E4 D0 61 00 34 */ stfs f3, 0x34(r1) +/* 801FB288 001F81E8 EC 02 00 2A */ fadds f0, f2, f0 +/* 801FB28C 001F81EC D0 A1 00 38 */ stfs f5, 0x38(r1) +/* 801FB290 001F81F0 FC 00 F8 40 */ fcmpo cr0, f0, f31 +/* 801FB294 001F81F4 D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 801FB298 001F81F8 40 80 00 0C */ bge lbl_801FB2A4 +/* 801FB29C 001F81FC FF E0 00 90 */ fmr f31, f0 +/* 801FB2A0 001F8200 7F 5E D3 78 */ mr r30, r26 +lbl_801FB2A4: +/* 801FB2A4 001F8204 2C 19 FF FF */ cmpwi r25, -1 +/* 801FB2A8 001F8208 41 82 00 14 */ beq lbl_801FB2BC +/* 801FB2AC 001F820C 57 23 18 38 */ slwi r3, r25, 3 +/* 801FB2B0 001F8210 38 03 00 08 */ addi r0, r3, 8 +/* 801FB2B4 001F8214 7F 3B 02 AE */ lhax r25, r27, r0 +/* 801FB2B8 001F8218 48 00 00 08 */ b lbl_801FB2C0 +lbl_801FB2BC: +/* 801FB2BC 001F821C 3B 20 FF FF */ li r25, -1 +lbl_801FB2C0: +/* 801FB2C0 001F8220 2C 19 FF FF */ cmpwi r25, -1 +/* 801FB2C4 001F8224 40 82 FF 10 */ bne lbl_801FB1D4 +/* 801FB2C8 001F8228 28 1E 00 00 */ cmplwi r30, 0 +/* 801FB2CC 001F822C 41 82 00 5C */ beq lbl_801FB328 +/* 801FB2D0 001F8230 7F 83 E3 78 */ mr r3, r28 +/* 801FB2D4 001F8234 7F A4 EB 78 */ mr r4, r29 +/* 801FB2D8 001F8238 38 BC 06 A4 */ addi r5, r28, 0x6a4 +/* 801FB2DC 001F823C 4B E8 15 81 */ bl ReleaseCoverPoint__10CPatternedFR13CStateManagerR9TUniqueId +/* 801FB2E0 001F8240 A0 1E 00 08 */ lhz r0, 8(r30) +/* 801FB2E4 001F8244 7F A3 EB 78 */ mr r3, r29 +/* 801FB2E8 001F8248 38 81 00 0C */ addi r4, r1, 0xc +/* 801FB2EC 001F824C B0 01 00 08 */ sth r0, 8(r1) +/* 801FB2F0 001F8250 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801FB2F4 001F8254 4B E5 12 81 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801FB2F8 001F8258 7C 64 1B 78 */ mr r4, r3 +/* 801FB2FC 001F825C 38 61 00 20 */ addi r3, r1, 0x20 +/* 801FB300 001F8260 4B EA F7 2D */ bl "__ct__31TCastToPtr<17CScriptCoverPoint>FP7CEntity" +/* 801FB304 001F8264 80 83 00 04 */ lwz r4, 4(r3) +/* 801FB308 001F8268 28 04 00 00 */ cmplwi r4, 0 +/* 801FB30C 001F826C 41 82 00 1C */ beq lbl_801FB328 +/* 801FB310 001F8270 7F 83 E3 78 */ mr r3, r28 +/* 801FB314 001F8274 38 BC 06 A4 */ addi r5, r28, 0x6a4 +/* 801FB318 001F8278 4B E8 14 FD */ bl SetCoverPoint__10CPatternedFP17CScriptCoverPointR9TUniqueId +/* 801FB31C 001F827C A0 1C 06 A4 */ lhz r0, 0x6a4(r28) +/* 801FB320 001F8280 3B E0 00 01 */ li r31, 1 +/* 801FB324 001F8284 B0 1C 06 A6 */ sth r0, 0x6a6(r28) +lbl_801FB328: +/* 801FB328 001F8288 7F E3 FB 78 */ mr r3, r31 +/* 801FB32C 001F828C E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 801FB330 001F8290 CB E1 00 60 */ lfd f31, 0x60(r1) +/* 801FB334 001F8294 BB 21 00 44 */ lmw r25, 0x44(r1) +/* 801FB338 001F8298 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801FB33C 001F829C 7C 08 03 A6 */ mtlr r0 +/* 801FB340 001F82A0 38 21 00 70 */ addi r1, r1, 0x70 +/* 801FB344 001F82A4 4E 80 00 20 */ blr + +.global CoverCheck__13CFlyingPirateFR13CStateManagerf +CoverCheck__13CFlyingPirateFR13CStateManagerf: +/* 801FB348 001F82A8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801FB34C 001F82AC 7C 08 02 A6 */ mflr r0 +/* 801FB350 001F82B0 90 01 00 24 */ stw r0, 0x24(r1) +/* 801FB354 001F82B4 DB E1 00 10 */ stfd f31, 0x10(r1) +/* 801FB358 001F82B8 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 +/* 801FB35C 001F82BC C0 03 08 88 */ lfs f0, 0x888(r3) +/* 801FB360 001F82C0 C0 22 AF 60 */ lfs f1, lbl_805ACC80@sda21(r2) +/* 801FB364 001F82C4 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801FB368 001F82C8 4C 40 13 82 */ cror 2, 0, 2 +/* 801FB36C 001F82CC 40 82 00 2C */ bne lbl_801FB398 +/* 801FB370 001F82D0 C0 02 AF D0 */ lfs f0, lbl_805ACCF0@sda21(r2) +/* 801FB374 001F82D4 C0 42 AF D4 */ lfs f2, lbl_805ACCF4@sda21(r2) +/* 801FB378 001F82D8 D0 03 08 88 */ stfs f0, 0x888(r3) +/* 801FB37C 001F82DC C3 E3 06 34 */ lfs f31, 0x634(r3) +/* 801FB380 001F82E0 80 64 09 00 */ lwz r3, 0x900(r4) +/* 801FB384 001F82E4 48 11 71 C1 */ bl Range__9CRandom16Fff +/* 801FB388 001F82E8 FC 01 F8 40 */ fcmpo cr0, f1, f31 +/* 801FB38C 001F82EC 7C 00 00 26 */ mfcr r0 +/* 801FB390 001F82F0 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801FB394 001F82F4 48 00 00 08 */ b lbl_801FB39C +lbl_801FB398: +/* 801FB398 001F82F8 38 60 00 00 */ li r3, 0 +lbl_801FB39C: +/* 801FB39C 001F82FC E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 +/* 801FB3A0 001F8300 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801FB3A4 001F8304 CB E1 00 10 */ lfd f31, 0x10(r1) +/* 801FB3A8 001F8308 7C 08 03 A6 */ mtlr r0 +/* 801FB3AC 001F830C 38 21 00 20 */ addi r1, r1, 0x20 +/* 801FB3B0 001F8310 4E 80 00 20 */ blr + +.global Lurk__13CFlyingPirateFR13CStateManager9EStateMsgf +Lurk__13CFlyingPirateFR13CStateManager9EStateMsgf: +/* 801FB3B4 001F8314 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801FB3B8 001F8318 7C 08 02 A6 */ mflr r0 +/* 801FB3BC 001F831C 2C 05 00 01 */ cmpwi r5, 1 +/* 801FB3C0 001F8320 90 01 00 64 */ stw r0, 0x64(r1) +/* 801FB3C4 001F8324 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 801FB3C8 001F8328 7C 7F 1B 78 */ mr r31, r3 +/* 801FB3CC 001F832C 93 C1 00 58 */ stw r30, 0x58(r1) +/* 801FB3D0 001F8330 7C 9E 23 78 */ mr r30, r4 +/* 801FB3D4 001F8334 41 82 00 A4 */ beq lbl_801FB478 +/* 801FB3D8 001F8338 40 80 00 10 */ bge lbl_801FB3E8 +/* 801FB3DC 001F833C 2C 05 00 00 */ cmpwi r5, 0 +/* 801FB3E0 001F8340 40 80 00 14 */ bge lbl_801FB3F4 +/* 801FB3E4 001F8344 48 00 01 BC */ b lbl_801FB5A0 +lbl_801FB3E8: +/* 801FB3E8 001F8348 2C 05 00 03 */ cmpwi r5, 3 +/* 801FB3EC 001F834C 40 80 01 B4 */ bge lbl_801FB5A0 +/* 801FB3F0 001F8350 48 00 01 90 */ b lbl_801FB580 +lbl_801FB3F4: +/* 801FB3F4 001F8354 38 BF 06 A4 */ addi r5, r31, 0x6a4 +/* 801FB3F8 001F8358 4B E8 14 65 */ bl ReleaseCoverPoint__10CPatternedFR13CStateManagerR9TUniqueId +/* 801FB3FC 001F835C 88 1F 06 A0 */ lbz r0, 0x6a0(r31) +/* 801FB400 001F8360 38 60 00 01 */ li r3, 1 +/* 801FB404 001F8364 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f +/* 801FB408 001F8368 C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801FB40C 001F836C 98 1F 06 A0 */ stb r0, 0x6a0(r31) +/* 801FB410 001F8370 38 00 00 00 */ li r0, 0 +/* 801FB414 001F8374 7F C4 F3 78 */ mr r4, r30 +/* 801FB418 001F8378 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801FB41C 001F837C D0 1F 07 D8 */ stfs f0, 0x7d8(r31) +/* 801FB420 001F8380 38 C1 00 0C */ addi r6, r1, 0xc +/* 801FB424 001F8384 38 60 00 01 */ li r3, 1 +/* 801FB428 001F8388 38 E0 00 01 */ li r7, 1 +/* 801FB42C 001F838C 90 1F 07 DC */ stw r0, 0x7dc(r31) +/* 801FB430 001F8390 A1 1F 00 08 */ lhz r8, 8(r31) +/* 801FB434 001F8394 B1 01 00 0C */ sth r8, 0xc(r1) +/* 801FB438 001F8398 A0 1F 08 90 */ lhz r0, 0x890(r31) +/* 801FB43C 001F839C B1 01 00 08 */ sth r8, 8(r1) +/* 801FB440 001F83A0 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801FB444 001F83A4 48 03 EA 8D */ bl ResetTeamAiRole__10CTeamAiMgrF11EAttackTypeR13CStateManager9TUniqueId9TUniqueIdb +/* 801FB448 001F83A8 C0 02 AF 7C */ lfs f0, lbl_805ACC9C@sda21(r2) +/* 801FB44C 001F83AC 7F E3 FB 78 */ mr r3, r31 +/* 801FB450 001F83B0 C0 22 AF 60 */ lfs f1, lbl_805ACC80@sda21(r2) +/* 801FB454 001F83B4 7F C4 F3 78 */ mr r4, r30 +/* 801FB458 001F83B8 D0 1F 03 40 */ stfs f0, 0x340(r31) +/* 801FB45C 001F83BC 38 A0 00 01 */ li r5, 1 +/* 801FB460 001F83C0 48 00 27 89 */ bl sub_801fdbe8 +/* 801FB464 001F83C4 88 1F 06 A2 */ lbz r0, 0x6a2(r31) +/* 801FB468 001F83C8 38 60 00 00 */ li r3, 0 +/* 801FB46C 001F83CC 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801FB470 001F83D0 98 1F 06 A2 */ stb r0, 0x6a2(r31) +/* 801FB474 001F83D4 48 00 01 2C */ b lbl_801FB5A0 +lbl_801FB478: +/* 801FB478 001F83D8 48 00 1C ED */ bl UpdateCantSeePlayer__13CFlyingPirateFR13CStateManager +/* 801FB47C 001F83DC 80 1F 03 2C */ lwz r0, 0x32c(r31) +/* 801FB480 001F83E0 2C 00 00 00 */ cmpwi r0, 0 +/* 801FB484 001F83E4 41 82 00 3C */ beq lbl_801FB4C0 +/* 801FB488 001F83E8 3C 80 80 3E */ lis r4, lbl_803E6808@ha +/* 801FB48C 001F83EC 7F E3 FB 78 */ mr r3, r31 +/* 801FB490 001F83F0 38 E4 68 08 */ addi r7, r4, lbl_803E6808@l +/* 801FB494 001F83F4 7F C4 F3 78 */ mr r4, r30 +/* 801FB498 001F83F8 81 27 00 00 */ lwz r9, 0(r7) +/* 801FB49C 001F83FC 38 C1 00 38 */ addi r6, r1, 0x38 +/* 801FB4A0 001F8400 81 07 00 04 */ lwz r8, 4(r7) +/* 801FB4A4 001F8404 38 A0 00 08 */ li r5, 8 +/* 801FB4A8 001F8408 80 07 00 08 */ lwz r0, 8(r7) +/* 801FB4AC 001F840C 38 E0 00 00 */ li r7, 0 +/* 801FB4B0 001F8410 91 21 00 38 */ stw r9, 0x38(r1) +/* 801FB4B4 001F8414 91 01 00 3C */ stw r8, 0x3c(r1) +/* 801FB4B8 001F8418 90 01 00 40 */ stw r0, 0x40(r1) +/* 801FB4BC 001F841C 4B E8 12 F9 */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi +lbl_801FB4C0: +/* 801FB4C0 001F8420 80 1F 03 2C */ lwz r0, 0x32c(r31) +/* 801FB4C4 001F8424 2C 00 00 02 */ cmpwi r0, 2 +/* 801FB4C8 001F8428 41 82 00 D8 */ beq lbl_801FB5A0 +/* 801FB4CC 001F842C 7F E4 FB 78 */ mr r4, r31 +/* 801FB4D0 001F8430 7F C5 F3 78 */ mr r5, r30 +/* 801FB4D4 001F8434 38 61 00 2C */ addi r3, r1, 0x2c +/* 801FB4D8 001F8438 48 00 13 BD */ bl GetTargetPos__13CFlyingPirateFR13CStateManager +/* 801FB4DC 001F843C C0 21 00 2C */ lfs f1, 0x2c(r1) +/* 801FB4E0 001F8440 38 61 00 14 */ addi r3, r1, 0x14 +/* 801FB4E4 001F8444 C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801FB4E8 001F8448 38 81 00 44 */ addi r4, r1, 0x44 +/* 801FB4EC 001F844C D0 3F 02 E0 */ stfs f1, 0x2e0(r31) +/* 801FB4F0 001F8450 C0 21 00 30 */ lfs f1, 0x30(r1) +/* 801FB4F4 001F8454 D0 3F 02 E4 */ stfs f1, 0x2e4(r31) +/* 801FB4F8 001F8458 C0 21 00 34 */ lfs f1, 0x34(r1) +/* 801FB4FC 001F845C D0 3F 02 E8 */ stfs f1, 0x2e8(r31) +/* 801FB500 001F8460 C0 5F 02 E8 */ lfs f2, 0x2e8(r31) +/* 801FB504 001F8464 C0 3F 00 60 */ lfs f1, 0x60(r31) +/* 801FB508 001F8468 C0 9F 02 E4 */ lfs f4, 0x2e4(r31) +/* 801FB50C 001F846C C0 7F 00 50 */ lfs f3, 0x50(r31) +/* 801FB510 001F8470 EC A2 08 28 */ fsubs f5, f2, f1 +/* 801FB514 001F8474 C0 5F 02 E0 */ lfs f2, 0x2e0(r31) +/* 801FB518 001F8478 C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 801FB51C 001F847C EC 64 18 28 */ fsubs f3, f4, f3 +/* 801FB520 001F8480 EC 22 08 28 */ fsubs f1, f2, f1 +/* 801FB524 001F8484 D0 A1 00 4C */ stfs f5, 0x4c(r1) +/* 801FB528 001F8488 D0 61 00 48 */ stfs f3, 0x48(r1) +/* 801FB52C 001F848C D0 21 00 44 */ stfs f1, 0x44(r1) +/* 801FB530 001F8490 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 801FB534 001F8494 48 11 93 1D */ bl AsNormalized__9CVector3fCFv +/* 801FB538 001F8498 C0 9F 00 48 */ lfs f4, 0x48(r31) +/* 801FB53C 001F849C C0 01 00 18 */ lfs f0, 0x18(r1) +/* 801FB540 001F84A0 C0 7F 00 38 */ lfs f3, 0x38(r31) +/* 801FB544 001F84A4 EC 04 00 32 */ fmuls f0, f4, f0 +/* 801FB548 001F84A8 C0 21 00 14 */ lfs f1, 0x14(r1) +/* 801FB54C 001F84AC C0 BF 00 58 */ lfs f5, 0x58(r31) +/* 801FB550 001F84B0 C0 41 00 1C */ lfs f2, 0x1c(r1) +/* 801FB554 001F84B4 EC 23 00 7A */ fmadds f1, f3, f1, f0 +/* 801FB558 001F84B8 C0 02 AF C8 */ lfs f0, lbl_805ACCE8@sda21(r2) +/* 801FB55C 001F84BC D0 61 00 20 */ stfs f3, 0x20(r1) +/* 801FB560 001F84C0 EC 25 08 BA */ fmadds f1, f5, f2, f1 +/* 801FB564 001F84C4 D0 81 00 24 */ stfs f4, 0x24(r1) +/* 801FB568 001F84C8 D0 A1 00 28 */ stfs f5, 0x28(r1) +/* 801FB56C 001F84CC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801FB570 001F84D0 40 80 00 30 */ bge lbl_801FB5A0 +/* 801FB574 001F84D4 38 00 00 01 */ li r0, 1 +/* 801FB578 001F84D8 90 1F 03 2C */ stw r0, 0x32c(r31) +/* 801FB57C 001F84DC 48 00 00 24 */ b lbl_801FB5A0 +lbl_801FB580: +/* 801FB580 001F84E0 88 1F 06 A1 */ lbz r0, 0x6a1(r31) +/* 801FB584 001F84E4 38 60 00 00 */ li r3, 0 +/* 801FB588 001F84E8 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801FB58C 001F84EC 98 1F 06 A1 */ stb r0, 0x6a1(r31) +/* 801FB590 001F84F0 88 1F 06 A1 */ lbz r0, 0x6a1(r31) +/* 801FB594 001F84F4 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801FB598 001F84F8 98 1F 06 A1 */ stb r0, 0x6a1(r31) +/* 801FB59C 001F84FC 90 7F 03 2C */ stw r3, 0x32c(r31) +lbl_801FB5A0: +/* 801FB5A0 001F8500 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801FB5A4 001F8504 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 801FB5A8 001F8508 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 801FB5AC 001F850C 7C 08 03 A6 */ mtlr r0 +/* 801FB5B0 001F8510 38 21 00 60 */ addi r1, r1, 0x60 +/* 801FB5B4 001F8514 4E 80 00 20 */ blr + +.global Bounce__13CFlyingPirateFR13CStateManager9EStateMsgf +Bounce__13CFlyingPirateFR13CStateManager9EStateMsgf: +/* 801FB5B8 001F8518 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801FB5BC 001F851C 7C 08 02 A6 */ mflr r0 +/* 801FB5C0 001F8520 2C 05 00 01 */ cmpwi r5, 1 +/* 801FB5C4 001F8524 90 01 00 34 */ stw r0, 0x34(r1) +/* 801FB5C8 001F8528 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801FB5CC 001F852C 7C 7F 1B 78 */ mr r31, r3 +/* 801FB5D0 001F8530 41 82 00 44 */ beq lbl_801FB614 +/* 801FB5D4 001F8534 40 80 01 24 */ bge lbl_801FB6F8 +/* 801FB5D8 001F8538 2C 05 00 00 */ cmpwi r5, 0 +/* 801FB5DC 001F853C 40 80 00 0C */ bge lbl_801FB5E8 +/* 801FB5E0 001F8540 48 00 01 18 */ b lbl_801FB6F8 +/* 801FB5E4 001F8544 48 00 01 14 */ b lbl_801FB6F8 +lbl_801FB5E8: +/* 801FB5E8 001F8548 A1 1F 00 08 */ lhz r8, 8(r31) +/* 801FB5EC 001F854C 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801FB5F0 001F8550 38 C1 00 0C */ addi r6, r1, 0xc +/* 801FB5F4 001F8554 38 60 00 01 */ li r3, 1 +/* 801FB5F8 001F8558 B1 01 00 0C */ sth r8, 0xc(r1) +/* 801FB5FC 001F855C 38 E0 00 01 */ li r7, 1 +/* 801FB600 001F8560 A0 1F 08 90 */ lhz r0, 0x890(r31) +/* 801FB604 001F8564 B1 01 00 08 */ sth r8, 8(r1) +/* 801FB608 001F8568 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801FB60C 001F856C 48 03 E8 C5 */ bl ResetTeamAiRole__10CTeamAiMgrF11EAttackTypeR13CStateManager9TUniqueId9TUniqueIdb +/* 801FB610 001F8570 48 00 00 E8 */ b lbl_801FB6F8 +lbl_801FB614: +/* 801FB614 001F8574 80 9F 04 50 */ lwz r4, 0x450(r31) +/* 801FB618 001F8578 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 801FB61C 001F857C 2C 00 00 05 */ cmpwi r0, 5 +/* 801FB620 001F8580 41 82 00 C8 */ beq lbl_801FB6E8 +/* 801FB624 001F8584 40 80 00 10 */ bge lbl_801FB634 +/* 801FB628 001F8588 2C 00 00 02 */ cmpwi r0, 2 +/* 801FB62C 001F858C 41 82 00 5C */ beq lbl_801FB688 +/* 801FB630 001F8590 48 00 00 C8 */ b lbl_801FB6F8 +lbl_801FB634: +/* 801FB634 001F8594 2C 00 00 0E */ cmpwi r0, 0xe +/* 801FB638 001F8598 41 82 00 08 */ beq lbl_801FB640 +/* 801FB63C 001F859C 48 00 00 BC */ b lbl_801FB6F8 +lbl_801FB640: +/* 801FB640 001F85A0 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801FB644 001F85A4 38 00 00 0A */ li r0, 0xa +/* 801FB648 001F85A8 38 A3 AA 68 */ addi r5, r3, lbl_803DAA68@l +/* 801FB64C 001F85AC 90 01 00 18 */ stw r0, 0x18(r1) +/* 801FB650 001F85B0 38 64 00 04 */ addi r3, r4, 4 +/* 801FB654 001F85B4 38 81 00 14 */ addi r4, r1, 0x14 +/* 801FB658 001F85B8 90 A1 00 14 */ stw r5, 0x14(r1) +/* 801FB65C 001F85BC 4B F3 61 5D */ bl DeliverCmd__16CBodyStateCmdMgrFRC13CBodyStateCmd +/* 801FB660 001F85C0 34 01 00 14 */ addic. r0, r1, 0x14 +/* 801FB664 001F85C4 41 82 00 10 */ beq lbl_801FB674 +/* 801FB668 001F85C8 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801FB66C 001F85CC 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801FB670 001F85D0 90 01 00 14 */ stw r0, 0x14(r1) +lbl_801FB674: +/* 801FB674 001F85D4 88 1F 03 28 */ lbz r0, 0x328(r31) +/* 801FB678 001F85D8 38 60 00 01 */ li r3, 1 +/* 801FB67C 001F85DC 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801FB680 001F85E0 98 1F 03 28 */ stb r0, 0x328(r31) +/* 801FB684 001F85E4 48 00 00 74 */ b lbl_801FB6F8 +lbl_801FB688: +/* 801FB688 001F85E8 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801FB68C 001F85EC 38 A0 00 00 */ li r5, 0 +/* 801FB690 001F85F0 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801FB694 001F85F4 3C 60 80 3E */ lis r3, lbl_803DAA20@ha +/* 801FB698 001F85F8 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801FB69C 001F85FC 38 03 AA 20 */ addi r0, r3, lbl_803DAA20@l +/* 801FB6A0 001F8600 3B E4 00 04 */ addi r31, r4, 4 +/* 801FB6A4 001F8604 38 80 00 00 */ li r4, 0 +/* 801FB6A8 001F8608 90 A1 00 20 */ stw r5, 0x20(r1) +/* 801FB6AC 001F860C 7F E3 FB 78 */ mr r3, r31 +/* 801FB6B0 001F8610 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801FB6B4 001F8614 90 A1 00 24 */ stw r5, 0x24(r1) +/* 801FB6B8 001F8618 4B F3 5D 81 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801FB6BC 001F861C 80 01 00 20 */ lwz r0, 0x20(r1) +/* 801FB6C0 001F8620 3C 60 80 3E */ lis r3, lbl_803DAA20@ha +/* 801FB6C4 001F8624 38 83 AA 20 */ addi r4, r3, lbl_803DAA20@l +/* 801FB6C8 001F8628 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801FB6CC 001F862C 90 1F 00 BC */ stw r0, 0xbc(r31) +/* 801FB6D0 001F8630 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801FB6D4 001F8634 80 61 00 24 */ lwz r3, 0x24(r1) +/* 801FB6D8 001F8638 90 81 00 1C */ stw r4, 0x1c(r1) +/* 801FB6DC 001F863C 90 7F 00 C0 */ stw r3, 0xc0(r31) +/* 801FB6E0 001F8640 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801FB6E4 001F8644 48 00 00 14 */ b lbl_801FB6F8 +lbl_801FB6E8: +/* 801FB6E8 001F8648 88 1F 03 48 */ lbz r0, 0x348(r31) +/* 801FB6EC 001F864C 38 60 00 01 */ li r3, 1 +/* 801FB6F0 001F8650 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801FB6F4 001F8654 98 1F 03 48 */ stb r0, 0x348(r31) +lbl_801FB6F8: +/* 801FB6F8 001F8658 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801FB6FC 001F865C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801FB700 001F8660 7C 08 03 A6 */ mtlr r0 +/* 801FB704 001F8664 38 21 00 30 */ addi r1, r1, 0x30 +/* 801FB708 001F8668 4E 80 00 20 */ blr + +.global GetUp__13CFlyingPirateFR13CStateManager9EStateMsgf +GetUp__13CFlyingPirateFR13CStateManager9EStateMsgf: +/* 801FB70C 001F866C 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801FB710 001F8670 7C 08 02 A6 */ mflr r0 +/* 801FB714 001F8674 2C 05 00 01 */ cmpwi r5, 1 +/* 801FB718 001F8678 90 01 00 44 */ stw r0, 0x44(r1) +/* 801FB71C 001F867C 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801FB720 001F8680 7C 9F 23 78 */ mr r31, r4 +/* 801FB724 001F8684 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801FB728 001F8688 7C 7E 1B 78 */ mr r30, r3 +/* 801FB72C 001F868C 41 82 00 54 */ beq lbl_801FB780 +/* 801FB730 001F8690 40 80 00 10 */ bge lbl_801FB740 +/* 801FB734 001F8694 2C 05 00 00 */ cmpwi r5, 0 +/* 801FB738 001F8698 40 80 00 14 */ bge lbl_801FB74C +/* 801FB73C 001F869C 48 00 00 E8 */ b lbl_801FB824 +lbl_801FB740: +/* 801FB740 001F86A0 2C 05 00 03 */ cmpwi r5, 3 +/* 801FB744 001F86A4 40 80 00 E0 */ bge lbl_801FB824 +/* 801FB748 001F86A8 48 00 00 D4 */ b lbl_801FB81C +lbl_801FB74C: +/* 801FB74C 001F86AC 38 00 00 01 */ li r0, 1 +/* 801FB750 001F86B0 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801FB754 001F86B4 90 1E 03 2C */ stw r0, 0x32c(r30) +/* 801FB758 001F86B8 38 C1 00 0C */ addi r6, r1, 0xc +/* 801FB75C 001F86BC 38 60 00 01 */ li r3, 1 +/* 801FB760 001F86C0 38 E0 00 01 */ li r7, 1 +/* 801FB764 001F86C4 A1 1E 00 08 */ lhz r8, 8(r30) +/* 801FB768 001F86C8 B1 01 00 0C */ sth r8, 0xc(r1) +/* 801FB76C 001F86CC A0 1E 08 90 */ lhz r0, 0x890(r30) +/* 801FB770 001F86D0 B1 01 00 08 */ sth r8, 8(r1) +/* 801FB774 001F86D4 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801FB778 001F86D8 48 03 E7 59 */ bl ResetTeamAiRole__10CTeamAiMgrF11EAttackTypeR13CStateManager9TUniqueId9TUniqueIdb +/* 801FB77C 001F86DC 48 00 00 A8 */ b lbl_801FB824 +lbl_801FB780: +/* 801FB780 001F86E0 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801FB784 001F86E4 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801FB788 001F86E8 2C 00 00 02 */ cmpwi r0, 2 +/* 801FB78C 001F86EC 40 82 00 54 */ bne lbl_801FB7E0 +/* 801FB790 001F86F0 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 801FB794 001F86F4 38 7E 06 A8 */ addi r3, r30, 0x6a8 +/* 801FB798 001F86F8 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 801FB79C 001F86FC 38 81 00 2C */ addi r4, r1, 0x2c +/* 801FB7A0 001F8700 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801FB7A4 001F8704 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801FB7A8 001F8708 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801FB7AC 001F870C D0 21 00 24 */ stfs f1, 0x24(r1) +/* 801FB7B0 001F8710 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 801FB7B4 001F8714 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801FB7B8 001F8718 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 801FB7BC 001F871C D0 41 00 34 */ stfs f2, 0x34(r1) +/* 801FB7C0 001F8720 4B FC C4 AD */ bl Search__15CPathFindSearchFRC9CVector3fRC9CVector3f +/* 801FB7C4 001F8724 2C 03 00 02 */ cmpwi r3, 2 +/* 801FB7C8 001F8728 40 82 00 18 */ bne lbl_801FB7E0 +/* 801FB7CC 001F872C 88 1E 04 01 */ lbz r0, 0x401(r30) +/* 801FB7D0 001F8730 38 60 00 01 */ li r3, 1 +/* 801FB7D4 001F8734 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 801FB7D8 001F8738 98 1E 04 01 */ stb r0, 0x401(r30) +/* 801FB7DC 001F873C 48 00 00 48 */ b lbl_801FB824 +lbl_801FB7E0: +/* 801FB7E0 001F8740 3C 80 80 3E */ lis r4, lbl_803E67FC@ha +/* 801FB7E4 001F8744 7F C3 F3 78 */ mr r3, r30 +/* 801FB7E8 001F8748 38 E4 67 FC */ addi r7, r4, lbl_803E67FC@l +/* 801FB7EC 001F874C 7F E4 FB 78 */ mr r4, r31 +/* 801FB7F0 001F8750 81 27 00 00 */ lwz r9, 0(r7) +/* 801FB7F4 001F8754 38 C1 00 14 */ addi r6, r1, 0x14 +/* 801FB7F8 001F8758 81 07 00 04 */ lwz r8, 4(r7) +/* 801FB7FC 001F875C 38 A0 00 01 */ li r5, 1 +/* 801FB800 001F8760 80 07 00 08 */ lwz r0, 8(r7) +/* 801FB804 001F8764 38 E0 00 00 */ li r7, 0 +/* 801FB808 001F8768 91 21 00 14 */ stw r9, 0x14(r1) +/* 801FB80C 001F876C 91 01 00 18 */ stw r8, 0x18(r1) +/* 801FB810 001F8770 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801FB814 001F8774 4B E8 0F A1 */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi +/* 801FB818 001F8778 48 00 00 0C */ b lbl_801FB824 +lbl_801FB81C: +/* 801FB81C 001F877C 38 00 00 00 */ li r0, 0 +/* 801FB820 001F8780 90 1E 03 2C */ stw r0, 0x32c(r30) +lbl_801FB824: +/* 801FB824 001F8784 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801FB828 001F8788 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801FB82C 001F878C 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801FB830 001F8790 7C 08 03 A6 */ mtlr r0 +/* 801FB834 001F8794 38 21 00 40 */ addi r1, r1, 0x40 +/* 801FB838 001F8798 4E 80 00 20 */ blr + +.global Taunt__13CFlyingPirateFR13CStateManager9EStateMsgf +Taunt__13CFlyingPirateFR13CStateManager9EStateMsgf: +/* 801FB83C 001F879C 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801FB840 001F87A0 7C 08 02 A6 */ mflr r0 +/* 801FB844 001F87A4 2C 05 00 01 */ cmpwi r5, 1 +/* 801FB848 001F87A8 90 01 00 54 */ stw r0, 0x54(r1) +/* 801FB84C 001F87AC BF 61 00 3C */ stmw r27, 0x3c(r1) +/* 801FB850 001F87B0 7C 7E 1B 78 */ mr r30, r3 +/* 801FB854 001F87B4 7C 9F 23 78 */ mr r31, r4 +/* 801FB858 001F87B8 41 82 01 A0 */ beq lbl_801FB9F8 +/* 801FB85C 001F87BC 40 80 00 10 */ bge lbl_801FB86C +/* 801FB860 001F87C0 2C 05 00 00 */ cmpwi r5, 0 +/* 801FB864 001F87C4 40 80 00 14 */ bge lbl_801FB878 +/* 801FB868 001F87C8 48 00 01 90 */ b lbl_801FB9F8 +lbl_801FB86C: +/* 801FB86C 001F87CC 2C 05 00 03 */ cmpwi r5, 3 +/* 801FB870 001F87D0 40 80 01 88 */ bge lbl_801FB9F8 +/* 801FB874 001F87D4 48 00 01 50 */ b lbl_801FB9C4 +lbl_801FB878: +/* 801FB878 001F87D8 88 1E 06 A0 */ lbz r0, 0x6a0(r30) +/* 801FB87C 001F87DC 38 60 00 01 */ li r3, 1 +/* 801FB880 001F87E0 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801FB884 001F87E4 38 7E 07 A0 */ addi r3, r30, 0x7a0 +/* 801FB888 001F87E8 98 1E 06 A0 */ stb r0, 0x6a0(r30) +/* 801FB88C 001F87EC 38 80 00 01 */ li r4, 1 +/* 801FB890 001F87F0 4B F7 99 95 */ bl SetActive__13CBoneTrackingFb +/* 801FB894 001F87F4 80 BF 08 4C */ lwz r5, 0x84c(r31) +/* 801FB898 001F87F8 38 7E 07 A0 */ addi r3, r30, 0x7a0 +/* 801FB89C 001F87FC 38 81 00 0C */ addi r4, r1, 0xc +/* 801FB8A0 001F8800 A0 05 00 08 */ lhz r0, 8(r5) +/* 801FB8A4 001F8804 B0 01 00 08 */ sth r0, 8(r1) +/* 801FB8A8 001F8808 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801FB8AC 001F880C 4B F7 99 6D */ bl SetTarget__13CBoneTrackingF9TUniqueId +/* 801FB8B0 001F8810 83 BF 08 38 */ lwz r29, 0x838(r31) +/* 801FB8B4 001F8814 3B 80 00 00 */ li r28, 0 +/* 801FB8B8 001F8818 AB 7D 20 08 */ lha r27, 0x2008(r29) +/* 801FB8BC 001F881C 48 00 00 D0 */ b lbl_801FB98C +lbl_801FB8C0: +/* 801FB8C0 001F8820 7F A3 EB 78 */ mr r3, r29 +/* 801FB8C4 001F8824 7F 64 DB 78 */ mr r4, r27 +/* 801FB8C8 001F8828 4B E1 44 15 */ bl __vc__11CObjectListCFi +/* 801FB8CC 001F882C 7C 64 1B 78 */ mr r4, r3 +/* 801FB8D0 001F8830 38 61 00 10 */ addi r3, r1, 0x10 +/* 801FB8D4 001F8834 4B EA 9A FD */ bl sub_800a53d0 +/* 801FB8D8 001F8838 4B EA 9A CD */ bl "CastTo<12CSpacePirate>__10CPatternedFP7CEntity" +/* 801FB8DC 001F883C 28 03 00 00 */ cmplwi r3, 0 +/* 801FB8E0 001F8840 41 82 00 90 */ beq lbl_801FB970 +/* 801FB8E4 001F8844 88 03 06 37 */ lbz r0, 0x637(r3) +/* 801FB8E8 001F8848 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801FB8EC 001F884C 40 82 00 84 */ bne lbl_801FB970 +/* 801FB8F0 001F8850 88 03 04 00 */ lbz r0, 0x400(r3) +/* 801FB8F4 001F8854 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801FB8F8 001F8858 41 82 00 78 */ beq lbl_801FB970 +/* 801FB8FC 001F885C 80 83 00 04 */ lwz r4, 4(r3) +/* 801FB900 001F8860 80 1E 00 04 */ lwz r0, 4(r30) +/* 801FB904 001F8864 7C 04 00 00 */ cmpw r4, r0 +/* 801FB908 001F8868 40 82 00 68 */ bne lbl_801FB970 +/* 801FB90C 001F886C C0 E3 00 50 */ lfs f7, 0x50(r3) +/* 801FB910 001F8870 C0 1E 00 50 */ lfs f0, 0x50(r30) +/* 801FB914 001F8874 C0 63 00 40 */ lfs f3, 0x40(r3) +/* 801FB918 001F8878 EC C7 00 28 */ fsubs f6, f7, f0 +/* 801FB91C 001F887C C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801FB920 001F8880 C1 03 00 60 */ lfs f8, 0x60(r3) +/* 801FB924 001F8884 EC 83 00 28 */ fsubs f4, f3, f0 +/* 801FB928 001F8888 C0 1E 00 60 */ lfs f0, 0x60(r30) +/* 801FB92C 001F888C EC 26 01 B2 */ fmuls f1, f6, f6 +/* 801FB930 001F8890 EC A8 00 28 */ fsubs f5, f8, f0 +/* 801FB934 001F8894 C0 1E 05 6C */ lfs f0, 0x56c(r30) +/* 801FB938 001F8898 EC 44 01 32 */ fmuls f2, f4, f4 +/* 801FB93C 001F889C EC 00 00 32 */ fmuls f0, f0, f0 +/* 801FB940 001F88A0 D0 61 00 20 */ stfs f3, 0x20(r1) +/* 801FB944 001F88A4 EC 65 01 72 */ fmuls f3, f5, f5 +/* 801FB948 001F88A8 EC 22 08 2A */ fadds f1, f2, f1 +/* 801FB94C 001F88AC D0 E1 00 24 */ stfs f7, 0x24(r1) +/* 801FB950 001F88B0 D1 01 00 28 */ stfs f8, 0x28(r1) +/* 801FB954 001F88B4 EC 23 08 2A */ fadds f1, f3, f1 +/* 801FB958 001F88B8 D0 81 00 2C */ stfs f4, 0x2c(r1) +/* 801FB95C 001F88BC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801FB960 001F88C0 D0 C1 00 30 */ stfs f6, 0x30(r1) +/* 801FB964 001F88C4 D0 A1 00 34 */ stfs f5, 0x34(r1) +/* 801FB968 001F88C8 40 80 00 08 */ bge lbl_801FB970 +/* 801FB96C 001F88CC 3B 80 00 01 */ li r28, 1 +lbl_801FB970: +/* 801FB970 001F88D0 2C 1B FF FF */ cmpwi r27, -1 +/* 801FB974 001F88D4 41 82 00 14 */ beq lbl_801FB988 +/* 801FB978 001F88D8 57 63 18 38 */ slwi r3, r27, 3 +/* 801FB97C 001F88DC 38 03 00 08 */ addi r0, r3, 8 +/* 801FB980 001F88E0 7F 7D 02 AE */ lhax r27, r29, r0 +/* 801FB984 001F88E4 48 00 00 08 */ b lbl_801FB98C +lbl_801FB988: +/* 801FB988 001F88E8 3B 60 FF FF */ li r27, -1 +lbl_801FB98C: +/* 801FB98C 001F88EC 2C 1B FF FF */ cmpwi r27, -1 +/* 801FB990 001F88F0 40 82 FF 30 */ bne lbl_801FB8C0 +/* 801FB994 001F88F4 57 80 06 3E */ clrlwi r0, r28, 0x18 +/* 801FB998 001F88F8 7C 00 00 34 */ cntlzw r0, r0 +/* 801FB99C 001F88FC 54 00 D9 7E */ srwi r0, r0, 5 +/* 801FB9A0 001F8900 90 1E 07 9C */ stw r0, 0x79c(r30) +/* 801FB9A4 001F8904 A0 7E 07 E8 */ lhz r3, 0x7e8(r30) +/* 801FB9A8 001F8908 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801FB9AC 001F890C 7C 03 00 40 */ cmplw r3, r0 +/* 801FB9B0 001F8910 40 82 00 48 */ bne lbl_801FB9F8 +/* 801FB9B4 001F8914 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 801FB9B8 001F8918 A0 03 00 08 */ lhz r0, 8(r3) +/* 801FB9BC 001F891C B0 1E 07 E8 */ sth r0, 0x7e8(r30) +/* 801FB9C0 001F8920 48 00 00 38 */ b lbl_801FB9F8 +lbl_801FB9C4: +/* 801FB9C4 001F8924 80 1E 07 9C */ lwz r0, 0x79c(r30) +/* 801FB9C8 001F8928 2C 00 00 00 */ cmpwi r0, 0 +/* 801FB9CC 001F892C 40 82 00 2C */ bne lbl_801FB9F8 +/* 801FB9D0 001F8930 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 801FB9D4 001F8934 7F E3 FB 78 */ mr r3, r31 +/* 801FB9D8 001F8938 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 801FB9DC 001F893C 38 81 00 14 */ addi r4, r1, 0x14 +/* 801FB9E0 001F8940 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801FB9E4 001F8944 38 A0 00 00 */ li r5, 0 +/* 801FB9E8 001F8948 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801FB9EC 001F894C D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801FB9F0 001F8950 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 801FB9F4 001F8954 4B E4 CD 91 */ bl InformListeners__13CStateManagerFRC9CVector3f16EListenNoiseType +lbl_801FB9F8: +/* 801FB9F8 001F8958 BB 61 00 3C */ lmw r27, 0x3c(r1) +/* 801FB9FC 001F895C 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801FBA00 001F8960 7C 08 03 A6 */ mtlr r0 +/* 801FBA04 001F8964 38 21 00 50 */ addi r1, r1, 0x50 +/* 801FBA08 001F8968 4E 80 00 20 */ blr + +.global HearPlayer__13CFlyingPirateFR13CStateManagerf +HearPlayer__13CFlyingPirateFR13CStateManagerf: +/* 801FBA0C 001F896C 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 801FBA10 001F8970 38 00 00 00 */ li r0, 0 +/* 801FBA14 001F8974 C0 02 AF B0 */ lfs f0, lbl_805ACCD0@sda21(r2) +/* 801FBA18 001F8978 C0 44 01 38 */ lfs f2, 0x138(r4) +/* 801FBA1C 001F897C C0 24 01 3C */ lfs f1, 0x13c(r4) +/* 801FBA20 001F8980 EC 42 00 B2 */ fmuls f2, f2, f2 +/* 801FBA24 001F8984 C0 64 01 40 */ lfs f3, 0x140(r4) +/* 801FBA28 001F8988 EC 21 00 72 */ fmuls f1, f1, f1 +/* 801FBA2C 001F898C EC 63 00 F2 */ fmuls f3, f3, f3 +/* 801FBA30 001F8990 EC 22 08 2A */ fadds f1, f2, f1 +/* 801FBA34 001F8994 EC 23 08 2A */ fadds f1, f3, f1 +/* 801FBA38 001F8998 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801FBA3C 001F899C 40 81 00 48 */ ble lbl_801FBA84 +/* 801FBA40 001F89A0 C0 24 00 50 */ lfs f1, 0x50(r4) +/* 801FBA44 001F89A4 C0 03 00 50 */ lfs f0, 0x50(r3) +/* 801FBA48 001F89A8 C0 43 05 6C */ lfs f2, 0x56c(r3) +/* 801FBA4C 001F89AC EC A1 00 28 */ fsubs f5, f1, f0 +/* 801FBA50 001F89B0 C0 84 00 40 */ lfs f4, 0x40(r4) +/* 801FBA54 001F89B4 C0 23 00 40 */ lfs f1, 0x40(r3) +/* 801FBA58 001F89B8 EC 02 00 B2 */ fmuls f0, f2, f2 +/* 801FBA5C 001F89BC C0 64 00 60 */ lfs f3, 0x60(r4) +/* 801FBA60 001F89C0 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 801FBA64 001F89C4 EC 84 08 28 */ fsubs f4, f4, f1 +/* 801FBA68 001F89C8 EC 25 01 72 */ fmuls f1, f5, f5 +/* 801FBA6C 001F89CC EC 43 10 28 */ fsubs f2, f3, f2 +/* 801FBA70 001F89D0 EC 24 09 3A */ fmadds f1, f4, f4, f1 +/* 801FBA74 001F89D4 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 801FBA78 001F89D8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801FBA7C 001F89DC 40 80 00 08 */ bge lbl_801FBA84 +/* 801FBA80 001F89E0 38 00 00 01 */ li r0, 1 +lbl_801FBA84: +/* 801FBA84 001F89E4 7C 03 03 78 */ mr r3, r0 +/* 801FBA88 001F89E8 4E 80 00 20 */ blr + +.global HearShot__13CFlyingPirateFR13CStateManagerf +HearShot__13CFlyingPirateFR13CStateManagerf: +/* 801FBA8C 001F89EC 88 A3 06 A0 */ lbz r5, 0x6a0(r3) +/* 801FBA90 001F89F0 38 00 00 00 */ li r0, 0 +/* 801FBA94 001F89F4 54 A4 DF FE */ rlwinm r4, r5, 0x1b, 0x1f, 0x1f +/* 801FBA98 001F89F8 50 05 2E B4 */ rlwimi r5, r0, 5, 0x1a, 0x1a +/* 801FBA9C 001F89FC 98 A3 06 A0 */ stb r5, 0x6a0(r3) +/* 801FBAA0 001F8A00 7C 83 23 78 */ mr r3, r4 +/* 801FBAA4 001F8A04 4E 80 00 20 */ blr + +.global PatternOver__13CFlyingPirateFR13CStateManagerf +PatternOver__13CFlyingPirateFR13CStateManagerf: +/* 801FBAA8 001F8A08 A0 63 02 DC */ lhz r3, 0x2dc(r3) +/* 801FBAAC 001F8A0C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801FBAB0 001F8A10 7C 03 00 50 */ subf r0, r3, r0 +/* 801FBAB4 001F8A14 7C 00 00 34 */ cntlzw r0, r0 +/* 801FBAB8 001F8A18 54 03 D9 7E */ srwi r3, r0, 5 +/* 801FBABC 001F8A1C 4E 80 00 20 */ blr + +.global TargetPatrol__13CFlyingPirateFR13CStateManager9EStateMsgf +TargetPatrol__13CFlyingPirateFR13CStateManager9EStateMsgf: +/* 801FBAC0 001F8A20 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 801FBAC4 001F8A24 7C 08 02 A6 */ mflr r0 +/* 801FBAC8 001F8A28 90 01 00 94 */ stw r0, 0x94(r1) +/* 801FBACC 001F8A2C DB E1 00 80 */ stfd f31, 0x80(r1) +/* 801FBAD0 001F8A30 F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0 +/* 801FBAD4 001F8A34 DB C1 00 70 */ stfd f30, 0x70(r1) +/* 801FBAD8 001F8A38 F3 C1 00 78 */ psq_st f30, 120(r1), 0, qr0 +/* 801FBADC 001F8A3C DB A1 00 60 */ stfd f29, 0x60(r1) +/* 801FBAE0 001F8A40 F3 A1 00 68 */ psq_st f29, 104(r1), 0, qr0 +/* 801FBAE4 001F8A44 DB 81 00 50 */ stfd f28, 0x50(r1) +/* 801FBAE8 001F8A48 F3 81 00 58 */ psq_st f28, 88(r1), 0, qr0 +/* 801FBAEC 001F8A4C 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801FBAF0 001F8A50 93 C1 00 48 */ stw r30, 0x48(r1) +/* 801FBAF4 001F8A54 93 A1 00 44 */ stw r29, 0x44(r1) +/* 801FBAF8 001F8A58 FF E0 08 90 */ fmr f31, f1 +/* 801FBAFC 001F8A5C 7C 7F 1B 78 */ mr r31, r3 +/* 801FBB00 001F8A60 7C 9D 23 78 */ mr r29, r4 +/* 801FBB04 001F8A64 7C BE 2B 78 */ mr r30, r5 +/* 801FBB08 001F8A68 4B FF B3 6D */ bl Patrol__10CPatternedFR13CStateManager9EStateMsgf +/* 801FBB0C 001F8A6C 2C 1E 00 01 */ cmpwi r30, 1 +/* 801FBB10 001F8A70 41 82 00 9C */ beq lbl_801FBBAC +/* 801FBB14 001F8A74 40 80 01 FC */ bge lbl_801FBD10 +/* 801FBB18 001F8A78 2C 1E 00 00 */ cmpwi r30, 0 +/* 801FBB1C 001F8A7C 40 80 00 08 */ bge lbl_801FBB24 +/* 801FBB20 001F8A80 48 00 01 F0 */ b lbl_801FBD10 +lbl_801FBB24: +/* 801FBB24 001F8A84 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801FBB28 001F8A88 38 00 00 00 */ li r0, 0 +/* 801FBB2C 001F8A8C 7F E4 FB 78 */ mr r4, r31 +/* 801FBB30 001F8A90 7F A5 EB 78 */ mr r5, r29 +/* 801FBB34 001F8A94 90 03 00 34 */ stw r0, 0x34(r3) +/* 801FBB38 001F8A98 38 61 00 0C */ addi r3, r1, 0xc +/* 801FBB3C 001F8A9C 38 C0 00 0A */ li r6, 0xa +/* 801FBB40 001F8AA0 38 E0 00 06 */ li r7, 6 +/* 801FBB44 001F8AA4 4B FF 94 55 */ bl GetWaypointForState__10CPatternedFR13CStateManager18EScriptObjectState +/* 801FBB48 001F8AA8 A0 01 00 0C */ lhz r0, 0xc(r1) +/* 801FBB4C 001F8AAC B0 1F 02 DC */ sth r0, 0x2dc(r31) +/* 801FBB50 001F8AB0 A0 7F 02 DC */ lhz r3, 0x2dc(r31) +/* 801FBB54 001F8AB4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801FBB58 001F8AB8 7C 03 00 40 */ cmplw r3, r0 +/* 801FBB5C 001F8ABC 41 82 00 3C */ beq lbl_801FBB98 +/* 801FBB60 001F8AC0 B0 61 00 08 */ sth r3, 8(r1) +/* 801FBB64 001F8AC4 7F A3 EB 78 */ mr r3, r29 +/* 801FBB68 001F8AC8 38 81 00 08 */ addi r4, r1, 8 +/* 801FBB6C 001F8ACC 4B E5 0A 39 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801FBB70 001F8AD0 7C 64 1B 78 */ mr r4, r3 +/* 801FBB74 001F8AD4 38 61 00 14 */ addi r3, r1, 0x14 +/* 801FBB78 001F8AD8 4B EA A9 D5 */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 801FBB7C 001F8ADC 80 63 00 04 */ lwz r3, 4(r3) +/* 801FBB80 001F8AE0 28 03 00 00 */ cmplwi r3, 0 +/* 801FBB84 001F8AE4 41 82 00 14 */ beq lbl_801FBB98 +/* 801FBB88 001F8AE8 88 03 00 F8 */ lbz r0, 0xf8(r3) +/* 801FBB8C 001F8AEC 90 1F 03 0C */ stw r0, 0x30c(r31) +/* 801FBB90 001F8AF0 C0 03 00 E8 */ lfs f0, 0xe8(r3) +/* 801FBB94 001F8AF4 D0 1F 03 B0 */ stfs f0, 0x3b0(r31) +lbl_801FBB98: +/* 801FBB98 001F8AF8 A0 1F 02 DC */ lhz r0, 0x2dc(r31) +/* 801FBB9C 001F8AFC C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801FBBA0 001F8B00 B0 1F 08 A0 */ sth r0, 0x8a0(r31) +/* 801FBBA4 001F8B04 D0 1F 08 A4 */ stfs f0, 0x8a4(r31) +/* 801FBBA8 001F8B08 48 00 01 68 */ b lbl_801FBD10 +lbl_801FBBAC: +/* 801FBBAC 001F8B0C A0 7F 02 DC */ lhz r3, 0x2dc(r31) +/* 801FBBB0 001F8B10 A0 1F 08 A0 */ lhz r0, 0x8a0(r31) +/* 801FBBB4 001F8B14 7C 03 00 40 */ cmplw r3, r0 +/* 801FBBB8 001F8B18 41 82 00 10 */ beq lbl_801FBBC8 +/* 801FBBBC 001F8B1C B0 7F 08 A0 */ sth r3, 0x8a0(r31) +/* 801FBBC0 001F8B20 C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801FBBC4 001F8B24 D0 1F 08 A4 */ stfs f0, 0x8a4(r31) +lbl_801FBBC8: +/* 801FBBC8 001F8B28 80 1F 02 D8 */ lwz r0, 0x2d8(r31) +/* 801FBBCC 001F8B2C 2C 00 00 00 */ cmpwi r0, 0 +/* 801FBBD0 001F8B30 40 82 00 E0 */ bne lbl_801FBCB0 +/* 801FBBD4 001F8B34 C0 3F 02 E4 */ lfs f1, 0x2e4(r31) +/* 801FBBD8 001F8B38 38 61 00 34 */ addi r3, r1, 0x34 +/* 801FBBDC 001F8B3C C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 801FBBE0 001F8B40 38 81 00 28 */ addi r4, r1, 0x28 +/* 801FBBE4 001F8B44 C0 7F 02 E8 */ lfs f3, 0x2e8(r31) +/* 801FBBE8 001F8B48 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 801FBBEC 001F8B4C EC 81 00 28 */ fsubs f4, f1, f0 +/* 801FBBF0 001F8B50 C0 3F 02 E0 */ lfs f1, 0x2e0(r31) +/* 801FBBF4 001F8B54 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801FBBF8 001F8B58 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801FBBFC 001F8B5C EC 01 00 28 */ fsubs f0, f1, f0 +/* 801FBC00 001F8B60 D0 81 00 2C */ stfs f4, 0x2c(r1) +/* 801FBC04 001F8B64 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 801FBC08 001F8B68 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 801FBC0C 001F8B6C 48 11 8C 45 */ bl AsNormalized__9CVector3fCFv +/* 801FBC10 001F8B70 C0 5F 03 B0 */ lfs f2, 0x3b0(r31) +/* 801FBC14 001F8B74 38 7F 08 A4 */ addi r3, r31, 0x8a4 +/* 801FBC18 001F8B78 C0 3F 06 2C */ lfs f1, 0x62c(r31) +/* 801FBC1C 001F8B7C 38 81 00 10 */ addi r4, r1, 0x10 +/* 801FBC20 001F8B80 C0 1F 08 A4 */ lfs f0, 0x8a4(r31) +/* 801FBC24 001F8B84 EC 22 00 72 */ fmuls f1, f2, f1 +/* 801FBC28 001F8B88 C3 A1 00 34 */ lfs f29, 0x34(r1) +/* 801FBC2C 001F8B8C C3 C1 00 38 */ lfs f30, 0x38(r1) +/* 801FBC30 001F8B90 C3 81 00 3C */ lfs f28, 0x3c(r1) +/* 801FBC34 001F8B94 EC 1F 00 7A */ fmadds f0, f31, f1, f0 +/* 801FBC38 001F8B98 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 801FBC3C 001F8B9C D0 1F 08 A4 */ stfs f0, 0x8a4(r31) +/* 801FBC40 001F8BA0 4B E8 21 A1 */ bl "Min__5CMathFRCfRCf" +/* 801FBC44 001F8BA4 C0 03 00 00 */ lfs f0, 0(r3) +/* 801FBC48 001F8BA8 C0 22 AF B4 */ lfs f1, lbl_805ACCD4@sda21(r2) +/* 801FBC4C 001F8BAC D0 1F 08 A4 */ stfs f0, 0x8a4(r31) +/* 801FBC50 001F8BB0 C0 1F 08 A4 */ lfs f0, 0x8a4(r31) +/* 801FBC54 001F8BB4 EC 00 07 F2 */ fmuls f0, f0, f31 +/* 801FBC58 001F8BB8 EC 1F 00 32 */ fmuls f0, f31, f0 +/* 801FBC5C 001F8BBC EC 60 07 72 */ fmuls f3, f0, f29 +/* 801FBC60 001F8BC0 EC 40 07 B2 */ fmuls f2, f0, f30 +/* 801FBC64 001F8BC4 EC 00 07 32 */ fmuls f0, f0, f28 +/* 801FBC68 001F8BC8 D0 7F 08 7C */ stfs f3, 0x87c(r31) +/* 801FBC6C 001F8BCC D0 5F 08 80 */ stfs f2, 0x880(r31) +/* 801FBC70 001F8BD0 D0 1F 08 84 */ stfs f0, 0x884(r31) +/* 801FBC74 001F8BD4 C0 1F 03 B0 */ lfs f0, 0x3b0(r31) +/* 801FBC78 001F8BD8 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801FBC7C 001F8BDC D0 1F 08 98 */ stfs f0, 0x898(r31) +/* 801FBC80 001F8BE0 C0 3F 08 70 */ lfs f1, 0x870(r31) +/* 801FBC84 001F8BE4 C0 1F 08 7C */ lfs f0, 0x87c(r31) +/* 801FBC88 001F8BE8 EC 01 00 2A */ fadds f0, f1, f0 +/* 801FBC8C 001F8BEC D0 1F 08 70 */ stfs f0, 0x870(r31) +/* 801FBC90 001F8BF0 C0 3F 08 74 */ lfs f1, 0x874(r31) +/* 801FBC94 001F8BF4 C0 1F 08 80 */ lfs f0, 0x880(r31) +/* 801FBC98 001F8BF8 EC 01 00 2A */ fadds f0, f1, f0 +/* 801FBC9C 001F8BFC D0 1F 08 74 */ stfs f0, 0x874(r31) +/* 801FBCA0 001F8C00 C0 3F 08 78 */ lfs f1, 0x878(r31) +/* 801FBCA4 001F8C04 C0 1F 08 84 */ lfs f0, 0x884(r31) +/* 801FBCA8 001F8C08 EC 01 00 2A */ fadds f0, f1, f0 +/* 801FBCAC 001F8C0C D0 1F 08 78 */ stfs f0, 0x878(r31) +lbl_801FBCB0: +/* 801FBCB0 001F8C10 80 1F 03 0C */ lwz r0, 0x30c(r31) +/* 801FBCB4 001F8C14 2C 00 00 01 */ cmpwi r0, 1 +/* 801FBCB8 001F8C18 41 82 00 08 */ beq lbl_801FBCC0 +/* 801FBCBC 001F8C1C 48 00 00 48 */ b lbl_801FBD04 +lbl_801FBCC0: +/* 801FBCC0 001F8C20 C3 BF 00 60 */ lfs f29, 0x60(r31) +/* 801FBCC4 001F8C24 7F E4 FB 78 */ mr r4, r31 +/* 801FBCC8 001F8C28 C3 DF 00 50 */ lfs f30, 0x50(r31) +/* 801FBCCC 001F8C2C 7F A5 EB 78 */ mr r5, r29 +/* 801FBCD0 001F8C30 C3 FF 00 40 */ lfs f31, 0x40(r31) +/* 801FBCD4 001F8C34 38 61 00 1C */ addi r3, r1, 0x1c +/* 801FBCD8 001F8C38 48 00 0B BD */ bl GetTargetPos__13CFlyingPirateFR13CStateManager +/* 801FBCDC 001F8C3C C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 801FBCE0 001F8C40 C0 41 00 20 */ lfs f2, 0x20(r1) +/* 801FBCE4 001F8C44 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 801FBCE8 001F8C48 C0 21 00 24 */ lfs f1, 0x24(r1) +/* 801FBCEC 001F8C4C 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801FBCF0 001F8C50 EC 42 F0 28 */ fsubs f2, f2, f30 +/* 801FBCF4 001F8C54 EC 21 E8 28 */ fsubs f1, f1, f29 +/* 801FBCF8 001F8C58 D0 03 00 1C */ stfs f0, 0x1c(r3) +/* 801FBCFC 001F8C5C D0 43 00 20 */ stfs f2, 0x20(r3) +/* 801FBD00 001F8C60 D0 23 00 24 */ stfs f1, 0x24(r3) +lbl_801FBD04: +/* 801FBD04 001F8C64 7F E3 FB 78 */ mr r3, r31 +/* 801FBD08 001F8C68 7F A4 EB 78 */ mr r4, r29 +/* 801FBD0C 001F8C6C 48 00 14 59 */ bl UpdateCantSeePlayer__13CFlyingPirateFR13CStateManager +lbl_801FBD10: +/* 801FBD10 001F8C70 E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0 +/* 801FBD14 001F8C74 CB E1 00 80 */ lfd f31, 0x80(r1) +/* 801FBD18 001F8C78 E3 C1 00 78 */ psq_l f30, 120(r1), 0, qr0 +/* 801FBD1C 001F8C7C CB C1 00 70 */ lfd f30, 0x70(r1) +/* 801FBD20 001F8C80 E3 A1 00 68 */ psq_l f29, 104(r1), 0, qr0 +/* 801FBD24 001F8C84 CB A1 00 60 */ lfd f29, 0x60(r1) +/* 801FBD28 001F8C88 E3 81 00 58 */ psq_l f28, 88(r1), 0, qr0 +/* 801FBD2C 001F8C8C CB 81 00 50 */ lfd f28, 0x50(r1) +/* 801FBD30 001F8C90 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801FBD34 001F8C94 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 801FBD38 001F8C98 80 01 00 94 */ lwz r0, 0x94(r1) +/* 801FBD3C 001F8C9C 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 801FBD40 001F8CA0 7C 08 03 A6 */ mtlr r0 +/* 801FBD44 001F8CA4 38 21 00 90 */ addi r1, r1, 0x90 +/* 801FBD48 001F8CA8 4E 80 00 20 */ blr + +.global Patrol__13CFlyingPirateFR13CStateManager9EStateMsgf +Patrol__13CFlyingPirateFR13CStateManager9EStateMsgf: +/* 801FBD4C 001F8CAC 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 801FBD50 001F8CB0 7C 08 02 A6 */ mflr r0 +/* 801FBD54 001F8CB4 90 01 00 84 */ stw r0, 0x84(r1) +/* 801FBD58 001F8CB8 DB E1 00 70 */ stfd f31, 0x70(r1) +/* 801FBD5C 001F8CBC F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 +/* 801FBD60 001F8CC0 DB C1 00 60 */ stfd f30, 0x60(r1) +/* 801FBD64 001F8CC4 F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 +/* 801FBD68 001F8CC8 DB A1 00 50 */ stfd f29, 0x50(r1) +/* 801FBD6C 001F8CCC F3 A1 00 58 */ psq_st f29, 88(r1), 0, qr0 +/* 801FBD70 001F8CD0 DB 81 00 40 */ stfd f28, 0x40(r1) +/* 801FBD74 001F8CD4 F3 81 00 48 */ psq_st f28, 72(r1), 0, qr0 +/* 801FBD78 001F8CD8 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801FBD7C 001F8CDC 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801FBD80 001F8CE0 93 A1 00 34 */ stw r29, 0x34(r1) +/* 801FBD84 001F8CE4 88 03 06 A0 */ lbz r0, 0x6a0(r3) +/* 801FBD88 001F8CE8 FF E0 08 90 */ fmr f31, f1 +/* 801FBD8C 001F8CEC 7C 7D 1B 78 */ mr r29, r3 +/* 801FBD90 001F8CF0 7C 9E 23 78 */ mr r30, r4 +/* 801FBD94 001F8CF4 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 801FBD98 001F8CF8 7C BF 2B 78 */ mr r31, r5 +/* 801FBD9C 001F8CFC 41 82 01 C0 */ beq lbl_801FBF5C +/* 801FBDA0 001F8D00 4B FF B0 D5 */ bl Patrol__10CPatternedFR13CStateManager9EStateMsgf +/* 801FBDA4 001F8D04 2C 1F 00 01 */ cmpwi r31, 1 +/* 801FBDA8 001F8D08 41 82 00 40 */ beq lbl_801FBDE8 +/* 801FBDAC 001F8D0C 40 80 00 10 */ bge lbl_801FBDBC +/* 801FBDB0 001F8D10 2C 1F 00 00 */ cmpwi r31, 0 +/* 801FBDB4 001F8D14 40 80 00 14 */ bge lbl_801FBDC8 +/* 801FBDB8 001F8D18 48 00 01 A4 */ b lbl_801FBF5C +lbl_801FBDBC: +/* 801FBDBC 001F8D1C 2C 1F 00 03 */ cmpwi r31, 3 +/* 801FBDC0 001F8D20 40 80 01 9C */ bge lbl_801FBF5C +/* 801FBDC4 001F8D24 48 00 01 8C */ b lbl_801FBF50 +lbl_801FBDC8: +/* 801FBDC8 001F8D28 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 801FBDCC 001F8D2C 38 00 00 01 */ li r0, 1 +/* 801FBDD0 001F8D30 C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801FBDD4 001F8D34 90 03 00 34 */ stw r0, 0x34(r3) +/* 801FBDD8 001F8D38 A0 1D 02 DC */ lhz r0, 0x2dc(r29) +/* 801FBDDC 001F8D3C B0 1D 08 A0 */ sth r0, 0x8a0(r29) +/* 801FBDE0 001F8D40 D0 1D 08 A4 */ stfs f0, 0x8a4(r29) +/* 801FBDE4 001F8D44 48 00 01 78 */ b lbl_801FBF5C +lbl_801FBDE8: +/* 801FBDE8 001F8D48 A0 7D 02 DC */ lhz r3, 0x2dc(r29) +/* 801FBDEC 001F8D4C A0 1D 08 A0 */ lhz r0, 0x8a0(r29) +/* 801FBDF0 001F8D50 7C 03 00 40 */ cmplw r3, r0 +/* 801FBDF4 001F8D54 41 82 00 10 */ beq lbl_801FBE04 +/* 801FBDF8 001F8D58 B0 7D 08 A0 */ sth r3, 0x8a0(r29) +/* 801FBDFC 001F8D5C C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801FBE00 001F8D60 D0 1D 08 A4 */ stfs f0, 0x8a4(r29) +lbl_801FBE04: +/* 801FBE04 001F8D64 80 1D 02 D8 */ lwz r0, 0x2d8(r29) +/* 801FBE08 001F8D68 2C 00 00 00 */ cmpwi r0, 0 +/* 801FBE0C 001F8D6C 40 82 00 E0 */ bne lbl_801FBEEC +/* 801FBE10 001F8D70 C0 3D 02 E4 */ lfs f1, 0x2e4(r29) +/* 801FBE14 001F8D74 38 61 00 24 */ addi r3, r1, 0x24 +/* 801FBE18 001F8D78 C0 1D 00 50 */ lfs f0, 0x50(r29) +/* 801FBE1C 001F8D7C 38 81 00 18 */ addi r4, r1, 0x18 +/* 801FBE20 001F8D80 C0 7D 02 E8 */ lfs f3, 0x2e8(r29) +/* 801FBE24 001F8D84 C0 5D 00 60 */ lfs f2, 0x60(r29) +/* 801FBE28 001F8D88 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801FBE2C 001F8D8C C0 3D 02 E0 */ lfs f1, 0x2e0(r29) +/* 801FBE30 001F8D90 C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 801FBE34 001F8D94 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801FBE38 001F8D98 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801FBE3C 001F8D9C D0 81 00 1C */ stfs f4, 0x1c(r1) +/* 801FBE40 001F8DA0 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 801FBE44 001F8DA4 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801FBE48 001F8DA8 48 11 8A 09 */ bl AsNormalized__9CVector3fCFv +/* 801FBE4C 001F8DAC C0 5D 03 B0 */ lfs f2, 0x3b0(r29) +/* 801FBE50 001F8DB0 38 7D 08 A4 */ addi r3, r29, 0x8a4 +/* 801FBE54 001F8DB4 C0 3D 06 2C */ lfs f1, 0x62c(r29) +/* 801FBE58 001F8DB8 38 81 00 08 */ addi r4, r1, 8 +/* 801FBE5C 001F8DBC C0 1D 08 A4 */ lfs f0, 0x8a4(r29) +/* 801FBE60 001F8DC0 EC 22 00 72 */ fmuls f1, f2, f1 +/* 801FBE64 001F8DC4 C3 A1 00 24 */ lfs f29, 0x24(r1) +/* 801FBE68 001F8DC8 C3 C1 00 28 */ lfs f30, 0x28(r1) +/* 801FBE6C 001F8DCC C3 81 00 2C */ lfs f28, 0x2c(r1) +/* 801FBE70 001F8DD0 EC 1F 00 7A */ fmadds f0, f31, f1, f0 +/* 801FBE74 001F8DD4 D0 21 00 08 */ stfs f1, 8(r1) +/* 801FBE78 001F8DD8 D0 1D 08 A4 */ stfs f0, 0x8a4(r29) +/* 801FBE7C 001F8DDC 4B E8 1F 65 */ bl "Min__5CMathFRCfRCf" +/* 801FBE80 001F8DE0 C0 03 00 00 */ lfs f0, 0(r3) +/* 801FBE84 001F8DE4 C0 22 AF B4 */ lfs f1, lbl_805ACCD4@sda21(r2) +/* 801FBE88 001F8DE8 D0 1D 08 A4 */ stfs f0, 0x8a4(r29) +/* 801FBE8C 001F8DEC C0 1D 08 A4 */ lfs f0, 0x8a4(r29) +/* 801FBE90 001F8DF0 EC 00 07 F2 */ fmuls f0, f0, f31 +/* 801FBE94 001F8DF4 EC 1F 00 32 */ fmuls f0, f31, f0 +/* 801FBE98 001F8DF8 EC 60 07 72 */ fmuls f3, f0, f29 +/* 801FBE9C 001F8DFC EC 40 07 B2 */ fmuls f2, f0, f30 +/* 801FBEA0 001F8E00 EC 00 07 32 */ fmuls f0, f0, f28 +/* 801FBEA4 001F8E04 D0 7D 08 7C */ stfs f3, 0x87c(r29) +/* 801FBEA8 001F8E08 D0 5D 08 80 */ stfs f2, 0x880(r29) +/* 801FBEAC 001F8E0C D0 1D 08 84 */ stfs f0, 0x884(r29) +/* 801FBEB0 001F8E10 C0 1D 03 B0 */ lfs f0, 0x3b0(r29) +/* 801FBEB4 001F8E14 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801FBEB8 001F8E18 D0 1D 08 98 */ stfs f0, 0x898(r29) +/* 801FBEBC 001F8E1C C0 3D 08 70 */ lfs f1, 0x870(r29) +/* 801FBEC0 001F8E20 C0 1D 08 7C */ lfs f0, 0x87c(r29) +/* 801FBEC4 001F8E24 EC 01 00 2A */ fadds f0, f1, f0 +/* 801FBEC8 001F8E28 D0 1D 08 70 */ stfs f0, 0x870(r29) +/* 801FBECC 001F8E2C C0 3D 08 74 */ lfs f1, 0x874(r29) +/* 801FBED0 001F8E30 C0 1D 08 80 */ lfs f0, 0x880(r29) +/* 801FBED4 001F8E34 EC 01 00 2A */ fadds f0, f1, f0 +/* 801FBED8 001F8E38 D0 1D 08 74 */ stfs f0, 0x874(r29) +/* 801FBEDC 001F8E3C C0 3D 08 78 */ lfs f1, 0x878(r29) +/* 801FBEE0 001F8E40 C0 1D 08 84 */ lfs f0, 0x884(r29) +/* 801FBEE4 001F8E44 EC 01 00 2A */ fadds f0, f1, f0 +/* 801FBEE8 001F8E48 D0 1D 08 78 */ stfs f0, 0x878(r29) +lbl_801FBEEC: +/* 801FBEEC 001F8E4C 80 1D 03 0C */ lwz r0, 0x30c(r29) +/* 801FBEF0 001F8E50 2C 00 00 01 */ cmpwi r0, 1 +/* 801FBEF4 001F8E54 41 82 00 08 */ beq lbl_801FBEFC +/* 801FBEF8 001F8E58 48 00 00 48 */ b lbl_801FBF40 +lbl_801FBEFC: +/* 801FBEFC 001F8E5C C3 BD 00 60 */ lfs f29, 0x60(r29) +/* 801FBF00 001F8E60 7F A4 EB 78 */ mr r4, r29 +/* 801FBF04 001F8E64 C3 DD 00 50 */ lfs f30, 0x50(r29) +/* 801FBF08 001F8E68 7F C5 F3 78 */ mr r5, r30 +/* 801FBF0C 001F8E6C C3 FD 00 40 */ lfs f31, 0x40(r29) +/* 801FBF10 001F8E70 38 61 00 0C */ addi r3, r1, 0xc +/* 801FBF14 001F8E74 48 00 09 81 */ bl GetTargetPos__13CFlyingPirateFR13CStateManager +/* 801FBF18 001F8E78 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 801FBF1C 001F8E7C C0 41 00 10 */ lfs f2, 0x10(r1) +/* 801FBF20 001F8E80 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 801FBF24 001F8E84 C0 21 00 14 */ lfs f1, 0x14(r1) +/* 801FBF28 001F8E88 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 801FBF2C 001F8E8C EC 42 F0 28 */ fsubs f2, f2, f30 +/* 801FBF30 001F8E90 EC 21 E8 28 */ fsubs f1, f1, f29 +/* 801FBF34 001F8E94 D0 03 00 1C */ stfs f0, 0x1c(r3) +/* 801FBF38 001F8E98 D0 43 00 20 */ stfs f2, 0x20(r3) +/* 801FBF3C 001F8E9C D0 23 00 24 */ stfs f1, 0x24(r3) +lbl_801FBF40: +/* 801FBF40 001F8EA0 7F A3 EB 78 */ mr r3, r29 +/* 801FBF44 001F8EA4 7F C4 F3 78 */ mr r4, r30 +/* 801FBF48 001F8EA8 48 00 12 1D */ bl UpdateCantSeePlayer__13CFlyingPirateFR13CStateManager +/* 801FBF4C 001F8EAC 48 00 00 10 */ b lbl_801FBF5C +lbl_801FBF50: +/* 801FBF50 001F8EB0 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 801FBF54 001F8EB4 38 00 00 00 */ li r0, 0 +/* 801FBF58 001F8EB8 90 03 00 34 */ stw r0, 0x34(r3) +lbl_801FBF5C: +/* 801FBF5C 001F8EBC E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 +/* 801FBF60 001F8EC0 CB E1 00 70 */ lfd f31, 0x70(r1) +/* 801FBF64 001F8EC4 E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 +/* 801FBF68 001F8EC8 CB C1 00 60 */ lfd f30, 0x60(r1) +/* 801FBF6C 001F8ECC E3 A1 00 58 */ psq_l f29, 88(r1), 0, qr0 +/* 801FBF70 001F8ED0 CB A1 00 50 */ lfd f29, 0x50(r1) +/* 801FBF74 001F8ED4 E3 81 00 48 */ psq_l f28, 72(r1), 0, qr0 +/* 801FBF78 001F8ED8 CB 81 00 40 */ lfd f28, 0x40(r1) +/* 801FBF7C 001F8EDC 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801FBF80 001F8EE0 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801FBF84 001F8EE4 80 01 00 84 */ lwz r0, 0x84(r1) +/* 801FBF88 001F8EE8 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 801FBF8C 001F8EEC 7C 08 03 A6 */ mtlr r0 +/* 801FBF90 001F8EF0 38 21 00 80 */ addi r1, r1, 0x80 +/* 801FBF94 001F8EF4 4E 80 00 20 */ blr + +.global Explode__13CFlyingPirateFR13CStateManager +Explode__13CFlyingPirateFR13CStateManager: +/* 801FBF98 001F8EF8 94 21 FE 70 */ stwu r1, -0x190(r1) +/* 801FBF9C 001F8EFC 7C 08 02 A6 */ mflr r0 +/* 801FBFA0 001F8F00 3C A0 80 3D */ lis r5, lbl_803D247C@ha +/* 801FBFA4 001F8F04 90 01 01 94 */ stw r0, 0x194(r1) +/* 801FBFA8 001F8F08 BF 61 01 7C */ stmw r27, 0x17c(r1) +/* 801FBFAC 001F8F0C 7C 7E 1B 78 */ mr r30, r3 +/* 801FBFB0 001F8F10 38 65 24 7C */ addi r3, r5, lbl_803D247C@l +/* 801FBFB4 001F8F14 7C 9F 23 78 */ mr r31, r4 +/* 801FBFB8 001F8F18 38 83 00 08 */ addi r4, r3, 8 +/* 801FBFBC 001F8F1C 3B 80 00 00 */ li r28, 0 +/* 801FBFC0 001F8F20 3B 60 00 00 */ li r27, 0 +/* 801FBFC4 001F8F24 38 60 01 00 */ li r3, 0x100 +/* 801FBFC8 001F8F28 38 A0 00 00 */ li r5, 0 +/* 801FBFCC 001F8F2C 48 11 98 A1 */ bl __nw__FUlPCcPCc +/* 801FBFD0 001F8F30 7C 7D 1B 79 */ or. r29, r3, r3 +/* 801FBFD4 001F8F34 41 82 00 A8 */ beq lbl_801FC07C +/* 801FBFD8 001F8F38 C0 02 AF B4 */ lfs f0, lbl_805ACCD4@sda21(r2) +/* 801FBFDC 001F8F3C 3C 60 80 3D */ lis r3, lbl_803D247C@ha +/* 801FBFE0 001F8F40 38 83 24 7C */ addi r4, r3, lbl_803D247C@l +/* 801FBFE4 001F8F44 38 61 00 48 */ addi r3, r1, 0x48 +/* 801FBFE8 001F8F48 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 801FBFEC 001F8F4C 38 84 00 0F */ addi r4, r4, 0xf +/* 801FBFF0 001F8F50 D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 801FBFF4 001F8F54 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 801FBFF8 001F8F58 4B E0 8C C1 */ bl string_l__4rstlFPCc +/* 801FBFFC 001F8F5C 80 0D A3 88 */ lwz r0, lbl_805A8F48@sda21(r13) +/* 801FC000 001F8F60 3C 60 80 57 */ lis r3, lbl_8056D410@ha +/* 801FC004 001F8F64 38 A3 D4 10 */ addi r5, r3, lbl_8056D410@l +/* 801FC008 001F8F68 38 81 00 34 */ addi r4, r1, 0x34 +/* 801FC00C 001F8F6C 90 01 00 38 */ stw r0, 0x38(r1) +/* 801FC010 001F8F70 38 61 00 80 */ addi r3, r1, 0x80 +/* 801FC014 001F8F74 38 C1 00 38 */ addi r6, r1, 0x38 +/* 801FC018 001F8F78 3B 80 00 01 */ li r28, 1 +/* 801FC01C 001F8F7C 80 1E 00 04 */ lwz r0, 4(r30) +/* 801FC020 001F8F80 90 01 00 30 */ stw r0, 0x30(r1) +/* 801FC024 001F8F84 90 01 00 34 */ stw r0, 0x34(r1) +/* 801FC028 001F8F88 4B E5 54 5D */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" +/* 801FC02C 001F8F8C 7F E4 FB 78 */ mr r4, r31 +/* 801FC030 001F8F90 38 61 00 18 */ addi r3, r1, 0x18 +/* 801FC034 001F8F94 3B 60 00 01 */ li r27, 1 +/* 801FC038 001F8F98 4B E5 10 A5 */ bl AllocateUniqueId__13CStateManagerFv +/* 801FC03C 001F8F9C A0 01 00 18 */ lhz r0, 0x18(r1) +/* 801FC040 001F8FA0 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 801FC044 001F8FA4 48 14 DF 69 */ bl White__6CColorFv +/* 801FC048 001F8FA8 38 01 00 58 */ addi r0, r1, 0x58 +/* 801FC04C 001F8FAC 38 9E 05 F8 */ addi r4, r30, 0x5f8 +/* 801FC050 001F8FB0 90 01 00 08 */ stw r0, 8(r1) +/* 801FC054 001F8FB4 38 A1 00 1C */ addi r5, r1, 0x1c +/* 801FC058 001F8FB8 38 E1 00 80 */ addi r7, r1, 0x80 +/* 801FC05C 001F8FBC 39 01 00 48 */ addi r8, r1, 0x48 +/* 801FC060 001F8FC0 90 61 00 0C */ stw r3, 0xc(r1) +/* 801FC064 001F8FC4 7F A3 EB 78 */ mr r3, r29 +/* 801FC068 001F8FC8 39 3E 00 34 */ addi r9, r30, 0x34 +/* 801FC06C 001F8FCC 38 C0 00 01 */ li r6, 1 +/* 801FC070 001F8FD0 39 40 00 00 */ li r10, 0 +/* 801FC074 001F8FD4 4B E5 EA 85 */ bl "__ct__10CExplosionFRC31TLockedToken<15CGenDescription>9TUniqueIdbRC11CEntityInfoRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC12CTransform4fUiRC9CVector3fRC6CColor" +/* 801FC078 001F8FD8 7C 7D 1B 78 */ mr r29, r3 +lbl_801FC07C: +/* 801FC07C 001F8FDC 7F 60 07 75 */ extsb. r0, r27 +/* 801FC080 001F8FE0 41 82 00 44 */ beq lbl_801FC0C4 +/* 801FC084 001F8FE4 80 01 00 88 */ lwz r0, 0x88(r1) +/* 801FC088 001F8FE8 80 61 00 90 */ lwz r3, 0x90(r1) +/* 801FC08C 001F8FEC 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801FC090 001F8FF0 90 61 00 24 */ stw r3, 0x24(r1) +/* 801FC094 001F8FF4 7C 64 1B 78 */ mr r4, r3 +/* 801FC098 001F8FF8 7C 03 02 14 */ add r0, r3, r0 +/* 801FC09C 001F8FFC 90 61 00 20 */ stw r3, 0x20(r1) +/* 801FC0A0 001F9000 90 01 00 2C */ stw r0, 0x2c(r1) +/* 801FC0A4 001F9004 90 01 00 28 */ stw r0, 0x28(r1) +/* 801FC0A8 001F9008 48 00 00 08 */ b lbl_801FC0B0 +lbl_801FC0AC: +/* 801FC0AC 001F900C 38 84 00 0C */ addi r4, r4, 0xc +lbl_801FC0B0: +/* 801FC0B0 001F9010 7C 04 00 40 */ cmplw r4, r0 +/* 801FC0B4 001F9014 40 82 FF F8 */ bne lbl_801FC0AC +/* 801FC0B8 001F9018 28 03 00 00 */ cmplwi r3, 0 +/* 801FC0BC 001F901C 41 82 00 08 */ beq lbl_801FC0C4 +/* 801FC0C0 001F9020 48 11 98 71 */ bl Free__7CMemoryFPCv +lbl_801FC0C4: +/* 801FC0C4 001F9024 7F 80 07 75 */ extsb. r0, r28 +/* 801FC0C8 001F9028 41 82 00 0C */ beq lbl_801FC0D4 +/* 801FC0CC 001F902C 38 61 00 48 */ addi r3, r1, 0x48 +/* 801FC0D0 001F9030 48 14 1A 11 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801FC0D4: +/* 801FC0D4 001F9034 28 1D 00 00 */ cmplwi r29, 0 +/* 801FC0D8 001F9038 41 82 00 D8 */ beq lbl_801FC1B0 +/* 801FC0DC 001F903C 7F E3 FB 78 */ mr r3, r31 +/* 801FC0E0 001F9040 7F A4 EB 78 */ mr r4, r29 +/* 801FC0E4 001F9044 4B E5 0A 31 */ bl AddObject__13CStateManagerFR7CEntity +/* 801FC0E8 001F9048 80 AD 92 D0 */ lwz r5, lbl_805A7E90@sda21(r13) +/* 801FC0EC 001F904C 38 60 00 00 */ li r3, 0 +/* 801FC0F0 001F9050 38 80 00 01 */ li r4, 1 +/* 801FC0F4 001F9054 48 18 DE 01 */ bl __shl2i +/* 801FC0F8 001F9058 39 20 00 00 */ li r9, 0 +/* 801FC0FC 001F905C 38 00 00 03 */ li r0, 3 +/* 801FC100 001F9060 90 81 00 6C */ stw r4, 0x6c(r1) +/* 801FC104 001F9064 7F C5 F3 78 */ mr r5, r30 +/* 801FC108 001F9068 38 81 00 14 */ addi r4, r1, 0x14 +/* 801FC10C 001F906C 38 C1 00 3C */ addi r6, r1, 0x3c +/* 801FC110 001F9070 90 61 00 68 */ stw r3, 0x68(r1) +/* 801FC114 001F9074 7F E3 FB 78 */ mr r3, r31 +/* 801FC118 001F9078 38 FE 06 04 */ addi r7, r30, 0x604 +/* 801FC11C 001F907C 39 01 00 68 */ addi r8, r1, 0x68 +/* 801FC120 001F9080 91 21 00 74 */ stw r9, 0x74(r1) +/* 801FC124 001F9084 91 21 00 70 */ stw r9, 0x70(r1) +/* 801FC128 001F9088 90 01 00 78 */ stw r0, 0x78(r1) +/* 801FC12C 001F908C C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 801FC130 001F9090 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 801FC134 001F9094 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801FC138 001F9098 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 801FC13C 001F909C D0 21 00 40 */ stfs f1, 0x40(r1) +/* 801FC140 001F90A0 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 801FC144 001F90A4 A0 1E 00 08 */ lhz r0, 8(r30) +/* 801FC148 001F90A8 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801FC14C 001F90AC B0 01 00 14 */ sth r0, 0x14(r1) +/* 801FC150 001F90B0 4B E4 CB 5D */ bl ApplyDamageToWorld__13CStateManagerF9TUniqueIdRC6CActorRC9CVector3fRC11CDamageInfoRC15CMaterialFilter +/* 801FC154 001F90B4 C0 22 AF 74 */ lfs f1, lbl_805ACC94@sda21(r2) +/* 801FC158 001F90B8 38 61 00 98 */ addi r3, r1, 0x98 +/* 801FC15C 001F90BC C0 42 AF A0 */ lfs f2, lbl_805ACCC0@sda21(r2) +/* 801FC160 001F90C0 4B F6 17 D9 */ bl BuildPatternedExplodeShakeData__16CCameraShakeDataFff +/* 801FC164 001F90C4 80 7F 08 70 */ lwz r3, 0x870(r31) +/* 801FC168 001F90C8 38 81 00 98 */ addi r4, r1, 0x98 +/* 801FC16C 001F90CC 38 A0 00 01 */ li r5, 1 +/* 801FC170 001F90D0 4B E0 E8 B1 */ bl AddCameraShaker__14CCameraManagerFRC16CCameraShakeDatab +/* 801FC174 001F90D4 34 81 01 18 */ addic. r4, r1, 0x118 +/* 801FC178 001F90D8 41 82 00 10 */ beq lbl_801FC188 +/* 801FC17C 001F90DC 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 801FC180 001F90E0 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 801FC184 001F90E4 90 04 00 00 */ stw r0, 0(r4) +lbl_801FC188: +/* 801FC188 001F90E8 34 81 00 DC */ addic. r4, r1, 0xdc +/* 801FC18C 001F90EC 41 82 00 10 */ beq lbl_801FC19C +/* 801FC190 001F90F0 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 801FC194 001F90F4 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 801FC198 001F90F8 90 04 00 00 */ stw r0, 0(r4) +lbl_801FC19C: +/* 801FC19C 001F90FC 34 81 00 A0 */ addic. r4, r1, 0xa0 +/* 801FC1A0 001F9100 41 82 00 10 */ beq lbl_801FC1B0 +/* 801FC1A4 001F9104 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 801FC1A8 001F9108 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 801FC1AC 001F910C 90 04 00 00 */ stw r0, 0(r4) +lbl_801FC1B0: +/* 801FC1B0 001F9110 7F C3 F3 78 */ mr r3, r30 +/* 801FC1B4 001F9114 7F E4 FB 78 */ mr r4, r31 +/* 801FC1B8 001F9118 4B E7 EB 31 */ bl MassiveDeath__10CPatternedFR13CStateManager +/* 801FC1BC 001F911C BB 61 01 7C */ lmw r27, 0x17c(r1) +/* 801FC1C0 001F9120 80 01 01 94 */ lwz r0, 0x194(r1) +/* 801FC1C4 001F9124 7C 08 03 A6 */ mtlr r0 +/* 801FC1C8 001F9128 38 21 01 90 */ addi r1, r1, 0x190 +/* 801FC1CC 001F912C 4E 80 00 20 */ blr + +.global KnockBack__13CFlyingPirateFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef +KnockBack__13CFlyingPirateFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef: +/* 801FC1D0 001F9130 94 21 FE F0 */ stwu r1, -0x110(r1) +/* 801FC1D4 001F9134 7C 08 02 A6 */ mflr r0 +/* 801FC1D8 001F9138 90 01 01 14 */ stw r0, 0x114(r1) +/* 801FC1DC 001F913C DB E1 01 00 */ stfd f31, 0x100(r1) +/* 801FC1E0 001F9140 F3 E1 01 08 */ psq_st f31, 264(r1), 0, qr0 +/* 801FC1E4 001F9144 DB C1 00 F0 */ stfd f30, 0xf0(r1) +/* 801FC1E8 001F9148 F3 C1 00 F8 */ psq_st f30, 248(r1), 0, qr0 +/* 801FC1EC 001F914C DB A1 00 E0 */ stfd f29, 0xe0(r1) +/* 801FC1F0 001F9150 F3 A1 00 E8 */ psq_st f29, 232(r1), 0, qr0 +/* 801FC1F4 001F9154 DB 81 00 D0 */ stfd f28, 0xd0(r1) +/* 801FC1F8 001F9158 F3 81 00 D8 */ psq_st f28, 216(r1), 0, qr0 +/* 801FC1FC 001F915C DB 61 00 C0 */ stfd f27, 0xc0(r1) +/* 801FC200 001F9160 F3 61 00 C8 */ psq_st f27, 200(r1), 0, qr0 +/* 801FC204 001F9164 DB 41 00 B0 */ stfd f26, 0xb0(r1) +/* 801FC208 001F9168 F3 41 00 B8 */ psq_st f26, 184(r1), 0, qr0 +/* 801FC20C 001F916C DB 21 00 A0 */ stfd f25, 0xa0(r1) +/* 801FC210 001F9170 F3 21 00 A8 */ psq_st f25, 168(r1), 0, qr0 +/* 801FC214 001F9174 BF 41 00 88 */ stmw r26, 0x88(r1) +/* 801FC218 001F9178 88 03 04 00 */ lbz r0, 0x400(r3) +/* 801FC21C 001F917C FF 60 08 90 */ fmr f27, f1 +/* 801FC220 001F9180 7C 7A 1B 78 */ mr r26, r3 +/* 801FC224 001F9184 7C 9B 23 78 */ mr r27, r4 +/* 801FC228 001F9188 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801FC22C 001F918C 7C BC 2B 78 */ mr r28, r5 +/* 801FC230 001F9190 7C DD 33 78 */ mr r29, r6 +/* 801FC234 001F9194 7C FE 3B 78 */ mr r30, r7 +/* 801FC238 001F9198 7D 1F 43 78 */ mr r31, r8 +/* 801FC23C 001F919C 41 82 00 1C */ beq lbl_801FC258 +/* 801FC240 001F91A0 88 1A 03 28 */ lbz r0, 0x328(r26) +/* 801FC244 001F91A4 54 00 D7 FE */ rlwinm r0, r0, 0x1a, 0x1f, 0x1f +/* 801FC248 001F91A8 7C 00 00 34 */ cntlzw r0, r0 +/* 801FC24C 001F91AC 54 00 D9 7E */ srwi r0, r0, 5 +/* 801FC250 001F91B0 90 1A 04 DC */ stw r0, 0x4dc(r26) +/* 801FC254 001F91B4 48 00 02 54 */ b lbl_801FC4A8 +lbl_801FC258: +/* 801FC258 001F91B8 81 83 00 00 */ lwz r12, 0(r3) +/* 801FC25C 001F91BC 81 8C 02 B8 */ lwz r12, 0x2b8(r12) +/* 801FC260 001F91C0 7D 89 03 A6 */ mtctr r12 +/* 801FC264 001F91C4 4E 80 04 21 */ bctrl +/* 801FC268 001F91C8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801FC26C 001F91CC 40 82 02 3C */ bne lbl_801FC4A8 +/* 801FC270 001F91D0 C3 3A 06 20 */ lfs f25, 0x620(r26) +/* 801FC274 001F91D4 80 7C 09 00 */ lwz r3, 0x900(r28) +/* 801FC278 001F91D8 C0 22 AF 60 */ lfs f1, lbl_805ACC80@sda21(r2) +/* 801FC27C 001F91DC C0 42 AF D4 */ lfs f2, lbl_805ACCF4@sda21(r2) +/* 801FC280 001F91E0 48 11 62 C5 */ bl Range__9CRandom16Fff +/* 801FC284 001F91E4 FC 01 C8 40 */ fcmpo cr0, f1, f25 +/* 801FC288 001F91E8 40 80 00 34 */ bge lbl_801FC2BC +/* 801FC28C 001F91EC 88 1A 06 A1 */ lbz r0, 0x6a1(r26) +/* 801FC290 001F91F0 38 60 00 01 */ li r3, 1 +/* 801FC294 001F91F4 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 801FC298 001F91F8 98 1A 06 A1 */ stb r0, 0x6a1(r26) +/* 801FC29C 001F91FC 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801FC2A0 001F9200 C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) +/* 801FC2A4 001F9204 D0 1A 01 50 */ stfs f0, 0x150(r26) +/* 801FC2A8 001F9208 C0 03 00 04 */ lfs f0, 4(r3) +/* 801FC2AC 001F920C D0 1A 01 54 */ stfs f0, 0x154(r26) +/* 801FC2B0 001F9210 C0 03 00 08 */ lfs f0, 8(r3) +/* 801FC2B4 001F9214 D0 1A 01 58 */ stfs f0, 0x158(r26) +/* 801FC2B8 001F9218 48 00 00 48 */ b lbl_801FC300 +lbl_801FC2BC: +/* 801FC2BC 001F921C C0 22 AF 60 */ lfs f1, lbl_805ACC80@sda21(r2) +/* 801FC2C0 001F9220 7F 43 D3 78 */ mr r3, r26 +/* 801FC2C4 001F9224 7F 84 E3 78 */ mr r4, r28 +/* 801FC2C8 001F9228 38 A0 00 00 */ li r5, 0 +/* 801FC2CC 001F922C 48 00 19 1D */ bl sub_801fdbe8 +/* 801FC2D0 001F9230 7F 43 D3 78 */ mr r3, r26 +/* 801FC2D4 001F9234 C3 3A 00 E8 */ lfs f25, 0xe8(r26) +/* 801FC2D8 001F9238 81 9A 00 00 */ lwz r12, 0(r26) +/* 801FC2DC 001F923C 81 8C 02 BC */ lwz r12, 0x2bc(r12) +/* 801FC2E0 001F9240 7D 89 03 A6 */ mtctr r12 +/* 801FC2E4 001F9244 4E 80 04 21 */ bctrl +/* 801FC2E8 001F9248 FC 20 08 50 */ fneg f1, f1 +/* 801FC2EC 001F924C C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801FC2F0 001F9250 D0 1A 01 50 */ stfs f0, 0x150(r26) +/* 801FC2F4 001F9254 EC 21 06 72 */ fmuls f1, f1, f25 +/* 801FC2F8 001F9258 D0 1A 01 54 */ stfs f0, 0x154(r26) +/* 801FC2FC 001F925C D0 3A 01 58 */ stfs f1, 0x158(r26) +lbl_801FC300: +/* 801FC300 001F9260 38 7A 04 60 */ addi r3, r26, 0x460 +/* 801FC304 001F9264 38 80 00 03 */ li r4, 3 +/* 801FC308 001F9268 38 A0 00 03 */ li r5, 3 +/* 801FC30C 001F926C 48 03 7A 89 */ bl SetAnimationStateRange__20CKnockBackControllerF24EKnockBackAnimationState24EKnockBackAnimationState +/* 801FC310 001F9270 88 1A 03 28 */ lbz r0, 0x328(r26) +/* 801FC314 001F9274 38 60 00 00 */ li r3, 0 +/* 801FC318 001F9278 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801FC31C 001F927C 7F 44 D3 78 */ mr r4, r26 +/* 801FC320 001F9280 98 1A 03 28 */ stb r0, 0x328(r26) +/* 801FC324 001F9284 7F 85 E3 78 */ mr r5, r28 +/* 801FC328 001F9288 38 61 00 14 */ addi r3, r1, 0x14 +/* 801FC32C 001F928C 38 C0 00 0C */ li r6, 0xc +/* 801FC330 001F9290 38 E0 00 08 */ li r7, 8 +/* 801FC334 001F9294 4B FF 8C 65 */ bl GetWaypointForState__10CPatternedFR13CStateManager18EScriptObjectState +/* 801FC338 001F9298 A0 61 00 14 */ lhz r3, 0x14(r1) +/* 801FC33C 001F929C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801FC340 001F92A0 B0 61 00 18 */ sth r3, 0x18(r1) +/* 801FC344 001F92A4 7C 03 00 40 */ cmplw r3, r0 +/* 801FC348 001F92A8 41 82 00 20 */ beq lbl_801FC368 +/* 801FC34C 001F92AC B0 61 00 10 */ sth r3, 0x10(r1) +/* 801FC350 001F92B0 7F 83 E3 78 */ mr r3, r28 +/* 801FC354 001F92B4 38 81 00 10 */ addi r4, r1, 0x10 +/* 801FC358 001F92B8 4B E5 02 4D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801FC35C 001F92BC 7C 64 1B 78 */ mr r4, r3 +/* 801FC360 001F92C0 38 61 00 24 */ addi r3, r1, 0x24 +/* 801FC364 001F92C4 4B EB 39 2D */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +lbl_801FC368: +/* 801FC368 001F92C8 80 9C 08 4C */ lwz r4, 0x84c(r28) +/* 801FC36C 001F92CC 7F 85 E3 78 */ mr r5, r28 +/* 801FC370 001F92D0 38 61 00 6C */ addi r3, r1, 0x6c +/* 801FC374 001F92D4 C0 22 AF 60 */ lfs f1, lbl_805ACC80@sda21(r2) +/* 801FC378 001F92D8 81 84 00 00 */ lwz r12, 0(r4) +/* 801FC37C 001F92DC 81 8C 00 50 */ lwz r12, 0x50(r12) +/* 801FC380 001F92E0 7D 89 03 A6 */ mtctr r12 +/* 801FC384 001F92E4 4E 80 04 21 */ bctrl +/* 801FC388 001F92E8 C3 81 00 6C */ lfs f28, 0x6c(r1) +/* 801FC38C 001F92EC 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 801FC390 001F92F0 C0 3A 00 40 */ lfs f1, 0x40(r26) +/* 801FC394 001F92F4 38 A3 66 F4 */ addi r5, r3, lbl_805A66F4@l +/* 801FC398 001F92F8 C3 C1 00 70 */ lfs f30, 0x70(r1) +/* 801FC39C 001F92FC 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801FC3A0 001F9300 C0 1A 00 50 */ lfs f0, 0x50(r26) +/* 801FC3A4 001F9304 EF FC 08 28 */ fsubs f31, f28, f1 +/* 801FC3A8 001F9308 C3 A1 00 74 */ lfs f29, 0x74(r1) +/* 801FC3AC 001F930C 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 801FC3B0 001F9310 C0 3A 00 60 */ lfs f1, 0x60(r26) +/* 801FC3B4 001F9314 EF 3E 00 28 */ fsubs f25, f30, f0 +/* 801FC3B8 001F9318 C0 A5 00 08 */ lfs f5, 8(r5) +/* 801FC3BC 001F931C EF 5D 08 28 */ fsubs f26, f29, f1 +/* 801FC3C0 001F9320 C0 C5 00 00 */ lfs f6, 0(r5) +/* 801FC3C4 001F9324 C0 85 00 04 */ lfs f4, 4(r5) +/* 801FC3C8 001F9328 EC 05 07 F2 */ fmuls f0, f5, f31 +/* 801FC3CC 001F932C EC 66 06 72 */ fmuls f3, f6, f25 +/* 801FC3D0 001F9330 C0 22 AF DC */ lfs f1, lbl_805ACCFC@sda21(r2) +/* 801FC3D4 001F9334 EC 44 06 B2 */ fmuls f2, f4, f26 +/* 801FC3D8 001F9338 38 61 00 78 */ addi r3, r1, 0x78 +/* 801FC3DC 001F933C EC 7F 19 38 */ fmsubs f3, f31, f4, f3 +/* 801FC3E0 001F9340 EC 1A 01 B8 */ fmsubs f0, f26, f6, f0 +/* 801FC3E4 001F9344 EC 59 11 78 */ fmsubs f2, f25, f5, f2 +/* 801FC3E8 001F9348 D0 61 00 80 */ stfs f3, 0x80(r1) +/* 801FC3EC 001F934C D0 41 00 78 */ stfs f2, 0x78(r1) +/* 801FC3F0 001F9350 D0 01 00 7C */ stfs f0, 0x7c(r1) +/* 801FC3F4 001F9354 48 11 3B 71 */ bl close_enough__FRC9CVector3fRC9CVector3ff +/* 801FC3F8 001F9358 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801FC3FC 001F935C 41 82 00 3C */ beq lbl_801FC438 +/* 801FC400 001F9360 3C 60 80 5A */ lis r3, lbl_805A6724@ha +/* 801FC404 001F9364 38 63 67 24 */ addi r3, r3, lbl_805A6724@l +/* 801FC408 001F9368 C0 63 00 04 */ lfs f3, 4(r3) +/* 801FC40C 001F936C C0 83 00 08 */ lfs f4, 8(r3) +/* 801FC410 001F9370 C0 A3 00 00 */ lfs f5, 0(r3) +/* 801FC414 001F9374 EC 23 06 B2 */ fmuls f1, f3, f26 +/* 801FC418 001F9378 EC 04 07 F2 */ fmuls f0, f4, f31 +/* 801FC41C 001F937C EC 45 06 72 */ fmuls f2, f5, f25 +/* 801FC420 001F9380 EC 39 09 38 */ fmsubs f1, f25, f4, f1 +/* 801FC424 001F9384 EC 1A 01 78 */ fmsubs f0, f26, f5, f0 +/* 801FC428 001F9388 EC 5F 10 F8 */ fmsubs f2, f31, f3, f2 +/* 801FC42C 001F938C D0 21 00 78 */ stfs f1, 0x78(r1) +/* 801FC430 001F9390 D0 01 00 7C */ stfs f0, 0x7c(r1) +/* 801FC434 001F9394 D0 41 00 80 */ stfs f2, 0x80(r1) +lbl_801FC438: +/* 801FC438 001F9398 38 61 00 60 */ addi r3, r1, 0x60 +/* 801FC43C 001F939C 38 81 00 78 */ addi r4, r1, 0x78 +/* 801FC440 001F93A0 48 11 84 11 */ bl AsNormalized__9CVector3fCFv +/* 801FC444 001F93A4 80 7C 09 00 */ lwz r3, 0x900(r28) +/* 801FC448 001F93A8 C0 22 AF E0 */ lfs f1, lbl_805ACD00@sda21(r2) +/* 801FC44C 001F93AC C0 42 AF E4 */ lfs f2, lbl_805ACD04@sda21(r2) +/* 801FC450 001F93B0 48 11 60 F5 */ bl Range__9CRandom16Fff +/* 801FC454 001F93B4 C0 01 00 68 */ lfs f0, 0x68(r1) +/* 801FC458 001F93B8 7F 43 D3 78 */ mr r3, r26 +/* 801FC45C 001F93BC C0 41 00 60 */ lfs f2, 0x60(r1) +/* 801FC460 001F93C0 38 81 00 54 */ addi r4, r1, 0x54 +/* 801FC464 001F93C4 EC 81 00 32 */ fmuls f4, f1, f0 +/* 801FC468 001F93C8 C0 01 00 64 */ lfs f0, 0x64(r1) +/* 801FC46C 001F93CC EC 41 00 B2 */ fmuls f2, f1, f2 +/* 801FC470 001F93D0 EC 21 00 32 */ fmuls f1, f1, f0 +/* 801FC474 001F93D4 EC 7D 20 2A */ fadds f3, f29, f4 +/* 801FC478 001F93D8 D0 81 00 80 */ stfs f4, 0x80(r1) +/* 801FC47C 001F93DC EC 1C 10 2A */ fadds f0, f28, f2 +/* 801FC480 001F93E0 EC 9E 08 2A */ fadds f4, f30, f1 +/* 801FC484 001F93E4 D0 41 00 78 */ stfs f2, 0x78(r1) +/* 801FC488 001F93E8 D0 21 00 7C */ stfs f1, 0x7c(r1) +/* 801FC48C 001F93EC D0 01 00 54 */ stfs f0, 0x54(r1) +/* 801FC490 001F93F0 D0 81 00 58 */ stfs f4, 0x58(r1) +/* 801FC494 001F93F4 D0 61 00 5C */ stfs f3, 0x5c(r1) +/* 801FC498 001F93F8 4B E8 06 C5 */ bl SetDestPos__10CPatternedFRC9CVector3f +/* 801FC49C 001F93FC 38 7A 07 A0 */ addi r3, r26, 0x7a0 +/* 801FC4A0 001F9400 38 80 00 00 */ li r4, 0 +/* 801FC4A4 001F9404 4B F7 8D 81 */ bl SetActive__13CBoneTrackingFb +lbl_801FC4A8: +/* 801FC4A8 001F9408 FC 20 D8 90 */ fmr f1, f27 +/* 801FC4AC 001F940C 7F 43 D3 78 */ mr r3, r26 +/* 801FC4B0 001F9410 7F 64 DB 78 */ mr r4, r27 +/* 801FC4B4 001F9414 7F 85 E3 78 */ mr r5, r28 +/* 801FC4B8 001F9418 7F A6 EB 78 */ mr r6, r29 +/* 801FC4BC 001F941C 7F C7 F3 78 */ mr r7, r30 +/* 801FC4C0 001F9420 7F E8 FB 78 */ mr r8, r31 +/* 801FC4C4 001F9424 4B E7 E2 B9 */ bl KnockBack__10CPatternedFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef +/* 801FC4C8 001F9428 88 1A 04 00 */ lbz r0, 0x400(r26) +/* 801FC4CC 001F942C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801FC4D0 001F9430 41 82 00 D0 */ beq lbl_801FC5A0 +/* 801FC4D4 001F9434 80 1A 04 64 */ lwz r0, 0x464(r26) +/* 801FC4D8 001F9438 2C 00 00 03 */ cmpwi r0, 3 +/* 801FC4DC 001F943C 41 82 00 08 */ beq lbl_801FC4E4 +/* 801FC4E0 001F9440 48 00 01 78 */ b lbl_801FC658 +lbl_801FC4E4: +/* 801FC4E4 001F9444 80 7A 04 50 */ lwz r3, 0x450(r26) +/* 801FC4E8 001F9448 88 03 03 00 */ lbz r0, 0x300(r3) +/* 801FC4EC 001F944C 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801FC4F0 001F9450 40 82 00 48 */ bne lbl_801FC538 +/* 801FC4F4 001F9454 3C 80 80 3D */ lis r4, lbl_803D247C@ha +/* 801FC4F8 001F9458 38 61 00 44 */ addi r3, r1, 0x44 +/* 801FC4FC 001F945C 38 84 24 7C */ addi r4, r4, lbl_803D247C@l +/* 801FC500 001F9460 38 84 00 10 */ addi r4, r4, 0x10 +/* 801FC504 001F9464 4B E0 87 B5 */ bl string_l__4rstlFPCc +/* 801FC508 001F9468 7F 43 D3 78 */ mr r3, r26 +/* 801FC50C 001F946C 4B EA 63 ED */ bl GetStateMachine__3CAiFv +/* 801FC510 001F9470 7C 66 1B 78 */ mr r6, r3 +/* 801FC514 001F9474 7F 84 E3 78 */ mr r4, r28 +/* 801FC518 001F9478 7F 45 D3 78 */ mr r5, r26 +/* 801FC51C 001F947C 38 7A 03 30 */ addi r3, r26, 0x330 +/* 801FC520 001F9480 38 E1 00 44 */ addi r7, r1, 0x44 +/* 801FC524 001F9484 4B E8 36 E1 */ bl "SetState__18CStateMachineStateFR13CStateManagerR3CAiPC13CStateMachineRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801FC528 001F9488 38 61 00 44 */ addi r3, r1, 0x44 +/* 801FC52C 001F948C 48 14 15 B5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801FC530 001F9490 C0 1A 05 F0 */ lfs f0, 0x5f0(r26) +/* 801FC534 001F9494 D0 1A 03 40 */ stfs f0, 0x340(r26) +lbl_801FC538: +/* 801FC538 001F9498 88 1A 06 A1 */ lbz r0, 0x6a1(r26) +/* 801FC53C 001F949C 38 A0 00 00 */ li r5, 0 +/* 801FC540 001F94A0 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 801FC544 001F94A4 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801FC548 001F94A8 98 1A 06 A1 */ stb r0, 0x6a1(r26) +/* 801FC54C 001F94AC 38 C3 66 A0 */ addi r6, r3, skZero3f@l +/* 801FC550 001F94B0 80 02 C6 00 */ lwz r0, lbl_805AE320@sda21(r2) +/* 801FC554 001F94B4 38 61 00 20 */ addi r3, r1, 0x20 +/* 801FC558 001F94B8 88 9A 03 28 */ lbz r4, 0x328(r26) +/* 801FC55C 001F94BC 50 A4 36 72 */ rlwimi r4, r5, 6, 0x19, 0x19 +/* 801FC560 001F94C0 A9 42 C5 FA */ lha r10, lbl_805AE31A@sda21(r2) +/* 801FC564 001F94C4 38 A1 00 38 */ addi r5, r1, 0x38 +/* 801FC568 001F94C8 98 9A 03 28 */ stb r4, 0x328(r26) +/* 801FC56C 001F94CC 38 E0 00 7F */ li r7, 0x7f +/* 801FC570 001F94D0 39 00 00 01 */ li r8, 1 +/* 801FC574 001F94D4 39 20 00 00 */ li r9, 0 +/* 801FC578 001F94D8 C0 5A 00 60 */ lfs f2, 0x60(r26) +/* 801FC57C 001F94DC C0 3A 00 50 */ lfs f1, 0x50(r26) +/* 801FC580 001F94E0 C0 1A 00 40 */ lfs f0, 0x40(r26) +/* 801FC584 001F94E4 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 801FC588 001F94E8 D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 801FC58C 001F94EC D0 41 00 40 */ stfs f2, 0x40(r1) +/* 801FC590 001F94F0 90 01 00 08 */ stw r0, 8(r1) +/* 801FC594 001F94F4 A0 9A 06 4C */ lhz r4, 0x64c(r26) +/* 801FC598 001F94F8 48 0E DC 21 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fUcbbsi +/* 801FC59C 001F94FC 48 00 00 BC */ b lbl_801FC658 +lbl_801FC5A0: +/* 801FC5A0 001F9500 80 1A 04 64 */ lwz r0, 0x464(r26) +/* 801FC5A4 001F9504 2C 00 00 03 */ cmpwi r0, 3 +/* 801FC5A8 001F9508 41 82 00 08 */ beq lbl_801FC5B0 +/* 801FC5AC 001F950C 48 00 00 AC */ b lbl_801FC658 +lbl_801FC5B0: +/* 801FC5B0 001F9510 C0 5A 00 60 */ lfs f2, 0x60(r26) +/* 801FC5B4 001F9514 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801FC5B8 001F9518 C0 3A 00 50 */ lfs f1, 0x50(r26) +/* 801FC5BC 001F951C 38 C3 66 A0 */ addi r6, r3, skZero3f@l +/* 801FC5C0 001F9520 C0 1A 00 40 */ lfs f0, 0x40(r26) +/* 801FC5C4 001F9524 38 61 00 1C */ addi r3, r1, 0x1c +/* 801FC5C8 001F9528 80 02 C6 00 */ lwz r0, lbl_805AE320@sda21(r2) +/* 801FC5CC 001F952C 38 A1 00 2C */ addi r5, r1, 0x2c +/* 801FC5D0 001F9530 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801FC5D4 001F9534 38 E0 00 7F */ li r7, 0x7f +/* 801FC5D8 001F9538 A9 42 C5 FA */ lha r10, lbl_805AE31A@sda21(r2) +/* 801FC5DC 001F953C 39 00 00 01 */ li r8, 1 +/* 801FC5E0 001F9540 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 801FC5E4 001F9544 39 20 00 00 */ li r9, 0 +/* 801FC5E8 001F9548 D0 41 00 34 */ stfs f2, 0x34(r1) +/* 801FC5EC 001F954C 90 01 00 08 */ stw r0, 8(r1) +/* 801FC5F0 001F9550 A0 9A 06 4E */ lhz r4, 0x64e(r26) +/* 801FC5F4 001F9554 48 0E DB C5 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fUcbbsi +/* 801FC5F8 001F9558 88 1A 04 00 */ lbz r0, 0x400(r26) +/* 801FC5FC 001F955C 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 801FC600 001F9560 41 82 00 58 */ beq lbl_801FC658 +/* 801FC604 001F9564 88 1A 06 A1 */ lbz r0, 0x6a1(r26) +/* 801FC608 001F9568 38 60 00 00 */ li r3, 0 +/* 801FC60C 001F956C 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 801FC610 001F9570 C0 22 AF 60 */ lfs f1, lbl_805ACC80@sda21(r2) +/* 801FC614 001F9574 98 1A 06 A1 */ stb r0, 0x6a1(r26) +/* 801FC618 001F9578 7F 43 D3 78 */ mr r3, r26 +/* 801FC61C 001F957C 7F 84 E3 78 */ mr r4, r28 +/* 801FC620 001F9580 38 A0 00 00 */ li r5, 0 +/* 801FC624 001F9584 48 00 15 C5 */ bl sub_801fdbe8 +/* 801FC628 001F9588 7F 43 D3 78 */ mr r3, r26 +/* 801FC62C 001F958C C3 3A 00 E8 */ lfs f25, 0xe8(r26) +/* 801FC630 001F9590 81 9A 00 00 */ lwz r12, 0(r26) +/* 801FC634 001F9594 81 8C 02 BC */ lwz r12, 0x2bc(r12) +/* 801FC638 001F9598 7D 89 03 A6 */ mtctr r12 +/* 801FC63C 001F959C 4E 80 04 21 */ bctrl +/* 801FC640 001F95A0 FC 20 08 50 */ fneg f1, f1 +/* 801FC644 001F95A4 C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801FC648 001F95A8 D0 1A 01 50 */ stfs f0, 0x150(r26) +/* 801FC64C 001F95AC EC 21 06 72 */ fmuls f1, f1, f25 +/* 801FC650 001F95B0 D0 1A 01 54 */ stfs f0, 0x154(r26) +/* 801FC654 001F95B4 D0 3A 01 58 */ stfs f1, 0x158(r26) +lbl_801FC658: +/* 801FC658 001F95B8 E3 E1 01 08 */ psq_l f31, 264(r1), 0, qr0 +/* 801FC65C 001F95BC CB E1 01 00 */ lfd f31, 0x100(r1) +/* 801FC660 001F95C0 E3 C1 00 F8 */ psq_l f30, 248(r1), 0, qr0 +/* 801FC664 001F95C4 CB C1 00 F0 */ lfd f30, 0xf0(r1) +/* 801FC668 001F95C8 E3 A1 00 E8 */ psq_l f29, 232(r1), 0, qr0 +/* 801FC66C 001F95CC CB A1 00 E0 */ lfd f29, 0xe0(r1) +/* 801FC670 001F95D0 E3 81 00 D8 */ psq_l f28, 216(r1), 0, qr0 +/* 801FC674 001F95D4 CB 81 00 D0 */ lfd f28, 0xd0(r1) +/* 801FC678 001F95D8 E3 61 00 C8 */ psq_l f27, 200(r1), 0, qr0 +/* 801FC67C 001F95DC CB 61 00 C0 */ lfd f27, 0xc0(r1) +/* 801FC680 001F95E0 E3 41 00 B8 */ psq_l f26, 184(r1), 0, qr0 +/* 801FC684 001F95E4 CB 41 00 B0 */ lfd f26, 0xb0(r1) +/* 801FC688 001F95E8 E3 21 00 A8 */ psq_l f25, 168(r1), 0, qr0 +/* 801FC68C 001F95EC CB 21 00 A0 */ lfd f25, 0xa0(r1) +/* 801FC690 001F95F0 BB 41 00 88 */ lmw r26, 0x88(r1) +/* 801FC694 001F95F4 80 01 01 14 */ lwz r0, 0x114(r1) +/* 801FC698 001F95F8 7C 08 03 A6 */ mtlr r0 +/* 801FC69C 001F95FC 38 21 01 10 */ addi r1, r1, 0x110 +/* 801FC6A0 001F9600 4E 80 00 20 */ blr + +.global CanFireMissiles__13CFlyingPirateFR13CStateManager +CanFireMissiles__13CFlyingPirateFR13CStateManager: +/* 801FC6A4 001F9604 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 801FC6A8 001F9608 7C 08 02 A6 */ mflr r0 +/* 801FC6AC 001F960C 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 801FC6B0 001F9610 DB E1 00 C0 */ stfd f31, 0xc0(r1) +/* 801FC6B4 001F9614 F3 E1 00 C8 */ psq_st f31, 200(r1), 0, qr0 +/* 801FC6B8 001F9618 BF 61 00 AC */ stmw r27, 0xac(r1) +/* 801FC6BC 001F961C 7C 7B 1B 78 */ mr r27, r3 +/* 801FC6C0 001F9620 C3 E2 AF 7C */ lfs f31, lbl_805ACC9C@sda21(r2) +/* 801FC6C4 001F9624 7C 9C 23 78 */ mr r28, r4 +/* 801FC6C8 001F9628 3B C0 00 01 */ li r30, 1 +/* 801FC6CC 001F962C 3B FB 08 68 */ addi r31, r27, 0x868 +/* 801FC6D0 001F9630 3B A0 00 00 */ li r29, 0 +lbl_801FC6D4: +/* 801FC6D4 001F9634 7F 64 DB 78 */ mr r4, r27 +/* 801FC6D8 001F9638 7F E5 FB 78 */ mr r5, r31 +/* 801FC6DC 001F963C 38 61 00 3C */ addi r3, r1, 0x3c +/* 801FC6E0 001F9640 4B E7 C1 D9 */ bl GetLctrTransform__10CPatternedCFRC6CSegId +/* 801FC6E4 001F9644 38 61 00 6C */ addi r3, r1, 0x6c +/* 801FC6E8 001F9648 38 81 00 3C */ addi r4, r1, 0x3c +/* 801FC6EC 001F964C 48 11 64 89 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801FC6F0 001F9650 C0 41 00 80 */ lfs f2, 0x80(r1) +/* 801FC6F4 001F9654 38 00 00 00 */ li r0, 0 +/* 801FC6F8 001F9658 C0 01 00 70 */ lfs f0, 0x70(r1) +/* 801FC6FC 001F965C 38 60 00 00 */ li r3, 0 +/* 801FC700 001F9660 C0 21 00 90 */ lfs f1, 0x90(r1) +/* 801FC704 001F9664 EC 9F 00 B2 */ fmuls f4, f31, f2 +/* 801FC708 001F9668 C0 A1 00 88 */ lfs f5, 0x88(r1) +/* 801FC70C 001F966C EC 1F 00 32 */ fmuls f0, f31, f0 +/* 801FC710 001F9670 EC 5F 00 72 */ fmuls f2, f31, f1 +/* 801FC714 001F9674 C0 61 00 98 */ lfs f3, 0x98(r1) +/* 801FC718 001F9678 C0 21 00 78 */ lfs f1, 0x78(r1) +/* 801FC71C 001F967C EC 85 20 2A */ fadds f4, f5, f4 +/* 801FC720 001F9680 80 AD 92 FC */ lwz r5, lbl_805A7EBC@sda21(r13) +/* 801FC724 001F9684 EC 43 10 2A */ fadds f2, f3, f2 +/* 801FC728 001F9688 EC 01 00 2A */ fadds f0, f1, f0 +/* 801FC72C 001F968C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801FC730 001F9690 38 80 00 01 */ li r4, 1 +/* 801FC734 001F9694 D0 81 00 34 */ stfs f4, 0x34(r1) +/* 801FC738 001F9698 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801FC73C 001F969C D0 41 00 38 */ stfs f2, 0x38(r1) +/* 801FC740 001F96A0 90 01 00 10 */ stw r0, 0x10(r1) +/* 801FC744 001F96A4 48 18 D7 B1 */ bl __shl2i +/* 801FC748 001F96A8 80 01 00 10 */ lwz r0, 0x10(r1) +/* 801FC74C 001F96AC 80 C1 00 14 */ lwz r6, 0x14(r1) +/* 801FC750 001F96B0 7C 00 1B 78 */ or r0, r0, r3 +/* 801FC754 001F96B4 80 AD 93 00 */ lwz r5, lbl_805A7EC0@sda21(r13) +/* 801FC758 001F96B8 7C C4 23 78 */ or r4, r6, r4 +/* 801FC75C 001F96BC 90 01 00 10 */ stw r0, 0x10(r1) +/* 801FC760 001F96C0 38 60 00 00 */ li r3, 0 +/* 801FC764 001F96C4 90 81 00 14 */ stw r4, 0x14(r1) +/* 801FC768 001F96C8 38 80 00 01 */ li r4, 1 +/* 801FC76C 001F96CC 48 18 D7 89 */ bl __shl2i +/* 801FC770 001F96D0 80 01 00 10 */ lwz r0, 0x10(r1) +/* 801FC774 001F96D4 38 A1 00 24 */ addi r5, r1, 0x24 +/* 801FC778 001F96D8 80 E1 00 14 */ lwz r7, 0x14(r1) +/* 801FC77C 001F96DC 38 C1 00 30 */ addi r6, r1, 0x30 +/* 801FC780 001F96E0 7C 00 1B 78 */ or r0, r0, r3 +/* 801FC784 001F96E4 C0 41 00 78 */ lfs f2, 0x78(r1) +/* 801FC788 001F96E8 7C E4 23 78 */ or r4, r7, r4 +/* 801FC78C 001F96EC C0 21 00 88 */ lfs f1, 0x88(r1) +/* 801FC790 001F96F0 C0 01 00 98 */ lfs f0, 0x98(r1) +/* 801FC794 001F96F4 7F 63 DB 78 */ mr r3, r27 +/* 801FC798 001F96F8 90 81 00 14 */ stw r4, 0x14(r1) +/* 801FC79C 001F96FC 7F 84 E3 78 */ mr r4, r28 +/* 801FC7A0 001F9700 38 E1 00 10 */ addi r7, r1, 0x10 +/* 801FC7A4 001F9704 90 01 00 10 */ stw r0, 0x10(r1) +/* 801FC7A8 001F9708 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 801FC7AC 001F970C D0 21 00 28 */ stfs f1, 0x28(r1) +/* 801FC7B0 001F9710 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801FC7B4 001F9714 48 00 0C 11 */ bl LineOfSightTest__13CFlyingPirateFR13CStateManagerRC9CVector3fRC9CVector3f +/* 801FC7B8 001F9718 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801FC7BC 001F971C 41 82 00 90 */ beq lbl_801FC84C +/* 801FC7C0 001F9720 38 00 00 00 */ li r0, 0 +/* 801FC7C4 001F9724 80 AD 93 04 */ lwz r5, lbl_805A7EC4@sda21(r13) +/* 801FC7C8 001F9728 90 01 00 0C */ stw r0, 0xc(r1) +/* 801FC7CC 001F972C 38 60 00 00 */ li r3, 0 +/* 801FC7D0 001F9730 38 80 00 01 */ li r4, 1 +/* 801FC7D4 001F9734 90 01 00 08 */ stw r0, 8(r1) +/* 801FC7D8 001F9738 48 18 D7 1D */ bl __shl2i +/* 801FC7DC 001F973C 80 01 00 08 */ lwz r0, 8(r1) +/* 801FC7E0 001F9740 80 C1 00 0C */ lwz r6, 0xc(r1) +/* 801FC7E4 001F9744 7C 00 1B 78 */ or r0, r0, r3 +/* 801FC7E8 001F9748 80 AD 93 08 */ lwz r5, lbl_805A7EC8@sda21(r13) +/* 801FC7EC 001F974C 7C C4 23 78 */ or r4, r6, r4 +/* 801FC7F0 001F9750 90 01 00 08 */ stw r0, 8(r1) +/* 801FC7F4 001F9754 38 60 00 00 */ li r3, 0 +/* 801FC7F8 001F9758 90 81 00 0C */ stw r4, 0xc(r1) +/* 801FC7FC 001F975C 38 80 00 01 */ li r4, 1 +/* 801FC800 001F9760 48 18 D6 F5 */ bl __shl2i +/* 801FC804 001F9764 80 01 00 08 */ lwz r0, 8(r1) +/* 801FC808 001F9768 7F 85 E3 78 */ mr r5, r28 +/* 801FC80C 001F976C 80 C1 00 0C */ lwz r6, 0xc(r1) +/* 801FC810 001F9770 7C 00 1B 78 */ or r0, r0, r3 +/* 801FC814 001F9774 38 61 00 18 */ addi r3, r1, 0x18 +/* 801FC818 001F9778 7C C6 23 78 */ or r6, r6, r4 +/* 801FC81C 001F977C 90 01 00 08 */ stw r0, 8(r1) +/* 801FC820 001F9780 7F 64 DB 78 */ mr r4, r27 +/* 801FC824 001F9784 90 C1 00 0C */ stw r6, 0xc(r1) +/* 801FC828 001F9788 48 00 00 6D */ bl GetTargetPos__13CFlyingPirateFR13CStateManager +/* 801FC82C 001F978C 7F 63 DB 78 */ mr r3, r27 +/* 801FC830 001F9790 7F 84 E3 78 */ mr r4, r28 +/* 801FC834 001F9794 38 A1 00 30 */ addi r5, r1, 0x30 +/* 801FC838 001F9798 38 C1 00 18 */ addi r6, r1, 0x18 +/* 801FC83C 001F979C 38 E1 00 08 */ addi r7, r1, 8 +/* 801FC840 001F97A0 48 00 0B 85 */ bl LineOfSightTest__13CFlyingPirateFR13CStateManagerRC9CVector3fRC9CVector3f +/* 801FC844 001F97A4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801FC848 001F97A8 40 82 00 1C */ bne lbl_801FC864 +lbl_801FC84C: +/* 801FC84C 001F97AC 88 1B 06 A1 */ lbz r0, 0x6a1(r27) +/* 801FC850 001F97B0 38 60 00 01 */ li r3, 1 +/* 801FC854 001F97B4 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801FC858 001F97B8 3B C0 00 00 */ li r30, 0 +/* 801FC85C 001F97BC 98 1B 06 A1 */ stb r0, 0x6a1(r27) +/* 801FC860 001F97C0 48 00 00 14 */ b lbl_801FC874 +lbl_801FC864: +/* 801FC864 001F97C4 3B BD 00 01 */ addi r29, r29, 1 +/* 801FC868 001F97C8 3B FF 00 01 */ addi r31, r31, 1 +/* 801FC86C 001F97CC 2C 1D 00 02 */ cmpwi r29, 2 +/* 801FC870 001F97D0 41 80 FE 64 */ blt lbl_801FC6D4 +lbl_801FC874: +/* 801FC874 001F97D4 57 C3 06 3E */ clrlwi r3, r30, 0x18 +/* 801FC878 001F97D8 E3 E1 00 C8 */ psq_l f31, 200(r1), 0, qr0 +/* 801FC87C 001F97DC CB E1 00 C0 */ lfd f31, 0xc0(r1) +/* 801FC880 001F97E0 BB 61 00 AC */ lmw r27, 0xac(r1) +/* 801FC884 001F97E4 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 801FC888 001F97E8 7C 08 03 A6 */ mtlr r0 +/* 801FC88C 001F97EC 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 801FC890 001F97F0 4E 80 00 20 */ blr + +.global GetTargetPos__13CFlyingPirateFR13CStateManager +GetTargetPos__13CFlyingPirateFR13CStateManager: +/* 801FC894 001F97F4 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801FC898 001F97F8 7C 08 02 A6 */ mflr r0 +/* 801FC89C 001F97FC 90 01 00 34 */ stw r0, 0x34(r1) +/* 801FC8A0 001F9800 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801FC8A4 001F9804 7C BF 2B 78 */ mr r31, r5 +/* 801FC8A8 001F9808 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801FC8AC 001F980C 7C 9E 23 78 */ mr r30, r4 +/* 801FC8B0 001F9810 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801FC8B4 001F9814 7C 7D 1B 78 */ mr r29, r3 +/* 801FC8B8 001F9818 80 85 08 4C */ lwz r4, 0x84c(r5) +/* 801FC8BC 001F981C A0 7E 07 E8 */ lhz r3, 0x7e8(r30) +/* 801FC8C0 001F9820 A0 04 00 08 */ lhz r0, 8(r4) +/* 801FC8C4 001F9824 7C 03 00 40 */ cmplw r3, r0 +/* 801FC8C8 001F9828 41 82 00 80 */ beq lbl_801FC948 +/* 801FC8CC 001F982C A0 1E 07 E8 */ lhz r0, 0x7e8(r30) +/* 801FC8D0 001F9830 7F E3 FB 78 */ mr r3, r31 +/* 801FC8D4 001F9834 38 81 00 10 */ addi r4, r1, 0x10 +/* 801FC8D8 001F9838 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801FC8DC 001F983C 4B E4 FC C9 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801FC8E0 001F9840 7C 64 1B 78 */ mr r4, r3 +/* 801FC8E4 001F9844 38 61 00 14 */ addi r3, r1, 0x14 +/* 801FC8E8 001F9848 4B EB 33 A9 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 801FC8EC 001F984C 80 63 00 04 */ lwz r3, 4(r3) +/* 801FC8F0 001F9850 28 03 00 00 */ cmplwi r3, 0 +/* 801FC8F4 001F9854 41 82 00 2C */ beq lbl_801FC920 +/* 801FC8F8 001F9858 88 03 00 30 */ lbz r0, 0x30(r3) +/* 801FC8FC 001F985C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801FC900 001F9860 41 82 00 20 */ beq lbl_801FC920 +/* 801FC904 001F9864 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 801FC908 001F9868 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801FC90C 001F986C C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801FC910 001F9870 D0 1D 00 00 */ stfs f0, 0(r29) +/* 801FC914 001F9874 D0 3D 00 04 */ stfs f1, 4(r29) +/* 801FC918 001F9878 D0 5D 00 08 */ stfs f2, 8(r29) +/* 801FC91C 001F987C 48 00 00 4C */ b lbl_801FC968 +lbl_801FC920: +/* 801FC920 001F9880 80 BF 08 4C */ lwz r5, 0x84c(r31) +/* 801FC924 001F9884 38 7E 07 A0 */ addi r3, r30, 0x7a0 +/* 801FC928 001F9888 38 81 00 0C */ addi r4, r1, 0xc +/* 801FC92C 001F988C A0 05 00 08 */ lhz r0, 8(r5) +/* 801FC930 001F9890 B0 01 00 08 */ sth r0, 8(r1) +/* 801FC934 001F9894 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801FC938 001F9898 4B F7 88 E1 */ bl SetTarget__13CBoneTrackingF9TUniqueId +/* 801FC93C 001F989C 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 801FC940 001F98A0 A0 03 00 08 */ lhz r0, 8(r3) +/* 801FC944 001F98A4 B0 1E 07 E8 */ sth r0, 0x7e8(r30) +lbl_801FC948: +/* 801FC948 001F98A8 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 801FC94C 001F98AC 7F A3 EB 78 */ mr r3, r29 +/* 801FC950 001F98B0 7F E5 FB 78 */ mr r5, r31 +/* 801FC954 001F98B4 C0 22 AF 60 */ lfs f1, lbl_805ACC80@sda21(r2) +/* 801FC958 001F98B8 81 84 00 00 */ lwz r12, 0(r4) +/* 801FC95C 001F98BC 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801FC960 001F98C0 7D 89 03 A6 */ mtctr r12 +/* 801FC964 001F98C4 4E 80 04 21 */ bctrl +lbl_801FC968: +/* 801FC968 001F98C8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801FC96C 001F98CC 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801FC970 001F98D0 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801FC974 001F98D4 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801FC978 001F98D8 7C 08 03 A6 */ mtlr r0 +/* 801FC97C 001F98DC 38 21 00 30 */ addi r1, r1, 0x30 +/* 801FC980 001F98E0 4E 80 00 20 */ blr + +.global GetDodgeDirection__13CFlyingPirateFR13CStateManagerf +GetDodgeDirection__13CFlyingPirateFR13CStateManagerf: +/* 801FC984 001F98E4 94 21 FE 90 */ stwu r1, -0x170(r1) +/* 801FC988 001F98E8 7C 08 02 A6 */ mflr r0 +/* 801FC98C 001F98EC 90 01 01 74 */ stw r0, 0x174(r1) +/* 801FC990 001F98F0 DB E1 01 60 */ stfd f31, 0x160(r1) +/* 801FC994 001F98F4 F3 E1 01 68 */ psq_st f31, 360(r1), 0, qr0 +/* 801FC998 001F98F8 DB C1 01 50 */ stfd f30, 0x150(r1) +/* 801FC99C 001F98FC F3 C1 01 58 */ psq_st f30, 344(r1), 0, qr0 +/* 801FC9A0 001F9900 BE E1 01 2C */ stmw r23, 0x12c(r1) +/* 801FC9A4 001F9904 FF C0 08 90 */ fmr f30, f1 +/* 801FC9A8 001F9908 83 04 08 38 */ lwz r24, 0x838(r4) +/* 801FC9AC 001F990C 7C 9A 23 78 */ mr r26, r4 +/* 801FC9B0 001F9910 7C 79 1B 78 */ mr r25, r3 +/* 801FC9B4 001F9914 AA F8 20 08 */ lha r23, 0x2008(r24) +/* 801FC9B8 001F9918 3B E0 00 01 */ li r31, 1 +/* 801FC9BC 001F991C EF FE 07 B2 */ fmuls f31, f30, f30 +/* 801FC9C0 001F9920 3B C0 00 01 */ li r30, 1 +/* 801FC9C4 001F9924 3B A0 00 01 */ li r29, 1 +/* 801FC9C8 001F9928 3B 80 00 01 */ li r28, 1 +/* 801FC9CC 001F992C 3B 60 FF FF */ li r27, -1 +/* 801FC9D0 001F9930 48 00 01 94 */ b lbl_801FCB64 +lbl_801FC9D4: +/* 801FC9D4 001F9934 7F 03 C3 78 */ mr r3, r24 +/* 801FC9D8 001F9938 7E E4 BB 78 */ mr r4, r23 +/* 801FC9DC 001F993C 4B E1 33 01 */ bl __vc__11CObjectListCFi +/* 801FC9E0 001F9940 7C 64 1B 78 */ mr r4, r3 +/* 801FC9E4 001F9944 38 61 00 08 */ addi r3, r1, 8 +/* 801FC9E8 001F9948 4B EA FC FD */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" +/* 801FC9EC 001F994C 80 83 00 04 */ lwz r4, 4(r3) +/* 801FC9F0 001F9950 28 04 00 00 */ cmplwi r4, 0 +/* 801FC9F4 001F9954 41 82 01 54 */ beq lbl_801FCB48 +/* 801FC9F8 001F9958 7C 04 C8 40 */ cmplw r4, r25 +/* 801FC9FC 001F995C 41 82 01 4C */ beq lbl_801FCB48 +/* 801FCA00 001F9960 80 64 00 04 */ lwz r3, 4(r4) +/* 801FCA04 001F9964 80 19 00 04 */ lwz r0, 4(r25) +/* 801FCA08 001F9968 7C 03 00 00 */ cmpw r3, r0 +/* 801FCA0C 001F996C 40 82 01 3C */ bne lbl_801FCB48 +/* 801FCA10 001F9970 C0 24 00 50 */ lfs f1, 0x50(r4) +/* 801FCA14 001F9974 C0 19 00 50 */ lfs f0, 0x50(r25) +/* 801FCA18 001F9978 C0 64 00 40 */ lfs f3, 0x40(r4) +/* 801FCA1C 001F997C EC 81 00 28 */ fsubs f4, f1, f0 +/* 801FCA20 001F9980 C0 19 00 40 */ lfs f0, 0x40(r25) +/* 801FCA24 001F9984 C0 44 00 60 */ lfs f2, 0x60(r4) +/* 801FCA28 001F9988 EC A3 00 28 */ fsubs f5, f3, f0 +/* 801FCA2C 001F998C C0 39 00 60 */ lfs f1, 0x60(r25) +/* 801FCA30 001F9990 EC 04 01 32 */ fmuls f0, f4, f4 +/* 801FCA34 001F9994 EC 62 08 28 */ fsubs f3, f2, f1 +/* 801FCA38 001F9998 EC 05 01 7A */ fmadds f0, f5, f5, f0 +/* 801FCA3C 001F999C ED 03 00 FA */ fmadds f8, f3, f3, f0 +/* 801FCA40 001F99A0 FC 08 F8 40 */ fcmpo cr0, f8, f31 +/* 801FCA44 001F99A4 40 80 01 04 */ bge lbl_801FCB48 +/* 801FCA48 001F99A8 C0 D9 00 44 */ lfs f6, 0x44(r25) +/* 801FCA4C 001F99AC C0 59 00 34 */ lfs f2, 0x34(r25) +/* 801FCA50 001F99B0 EC 24 01 B2 */ fmuls f1, f4, f6 +/* 801FCA54 001F99B4 C0 F9 00 54 */ lfs f7, 0x54(r25) +/* 801FCA58 001F99B8 C0 02 AF E8 */ lfs f0, lbl_805ACD08@sda21(r2) +/* 801FCA5C 001F99BC D0 41 00 F0 */ stfs f2, 0xf0(r1) +/* 801FCA60 001F99C0 EC 25 08 BA */ fmadds f1, f5, f2, f1 +/* 801FCA64 001F99C4 ED 20 02 32 */ fmuls f9, f0, f8 +/* 801FCA68 001F99C8 D0 C1 00 F4 */ stfs f6, 0xf4(r1) +/* 801FCA6C 001F99CC EC 43 09 FA */ fmadds f2, f3, f7, f1 +/* 801FCA70 001F99D0 D0 E1 00 F8 */ stfs f7, 0xf8(r1) +/* 801FCA74 001F99D4 FC 02 48 40 */ fcmpo cr0, f2, f9 +/* 801FCA78 001F99D8 41 81 00 1C */ bgt lbl_801FCA94 +/* 801FCA7C 001F99DC C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801FCA80 001F99E0 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801FCA84 001F99E4 40 81 00 18 */ ble lbl_801FCA9C +/* 801FCA88 001F99E8 C0 02 AF 7C */ lfs f0, lbl_805ACC9C@sda21(r2) +/* 801FCA8C 001F99EC FC 08 00 40 */ fcmpo cr0, f8, f0 +/* 801FCA90 001F99F0 40 80 00 0C */ bge lbl_801FCA9C +lbl_801FCA94: +/* 801FCA94 001F99F4 3B C0 00 00 */ li r30, 0 +/* 801FCA98 001F99F8 48 00 00 34 */ b lbl_801FCACC +lbl_801FCA9C: +/* 801FCA9C 001F99FC FC 00 40 50 */ fneg f0, f8 +/* 801FCAA0 001F9A00 C0 22 AF E8 */ lfs f1, lbl_805ACD08@sda21(r2) +/* 801FCAA4 001F9A04 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801FCAA8 001F9A08 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801FCAAC 001F9A0C 41 80 00 1C */ blt lbl_801FCAC8 +/* 801FCAB0 001F9A10 C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801FCAB4 001F9A14 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801FCAB8 001F9A18 40 80 00 14 */ bge lbl_801FCACC +/* 801FCABC 001F9A1C C0 02 AF 7C */ lfs f0, lbl_805ACC9C@sda21(r2) +/* 801FCAC0 001F9A20 FC 08 00 40 */ fcmpo cr0, f8, f0 +/* 801FCAC4 001F9A24 40 80 00 08 */ bge lbl_801FCACC +lbl_801FCAC8: +/* 801FCAC8 001F9A28 3B E0 00 00 */ li r31, 0 +lbl_801FCACC: +/* 801FCACC 001F9A2C C0 59 00 4C */ lfs f2, 0x4c(r25) +/* 801FCAD0 001F9A30 C0 39 00 3C */ lfs f1, 0x3c(r25) +/* 801FCAD4 001F9A34 EC 04 00 B2 */ fmuls f0, f4, f2 +/* 801FCAD8 001F9A38 C0 99 00 5C */ lfs f4, 0x5c(r25) +/* 801FCADC 001F9A3C D0 21 00 E4 */ stfs f1, 0xe4(r1) +/* 801FCAE0 001F9A40 EC 05 00 7A */ fmadds f0, f5, f1, f0 +/* 801FCAE4 001F9A44 D0 41 00 E8 */ stfs f2, 0xe8(r1) +/* 801FCAE8 001F9A48 D0 81 00 EC */ stfs f4, 0xec(r1) +/* 801FCAEC 001F9A4C EC 43 01 3A */ fmadds f2, f3, f4, f0 +/* 801FCAF0 001F9A50 FC 02 48 40 */ fcmpo cr0, f2, f9 +/* 801FCAF4 001F9A54 41 81 00 1C */ bgt lbl_801FCB10 +/* 801FCAF8 001F9A58 C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801FCAFC 001F9A5C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801FCB00 001F9A60 40 81 00 18 */ ble lbl_801FCB18 +/* 801FCB04 001F9A64 C0 02 AF 7C */ lfs f0, lbl_805ACC9C@sda21(r2) +/* 801FCB08 001F9A68 FC 08 00 40 */ fcmpo cr0, f8, f0 +/* 801FCB0C 001F9A6C 40 80 00 0C */ bge lbl_801FCB18 +lbl_801FCB10: +/* 801FCB10 001F9A70 3B A0 00 00 */ li r29, 0 +/* 801FCB14 001F9A74 48 00 00 34 */ b lbl_801FCB48 +lbl_801FCB18: +/* 801FCB18 001F9A78 FC 00 40 50 */ fneg f0, f8 +/* 801FCB1C 001F9A7C C0 22 AF E8 */ lfs f1, lbl_805ACD08@sda21(r2) +/* 801FCB20 001F9A80 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801FCB24 001F9A84 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801FCB28 001F9A88 41 80 00 1C */ blt lbl_801FCB44 +/* 801FCB2C 001F9A8C C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801FCB30 001F9A90 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801FCB34 001F9A94 40 80 00 14 */ bge lbl_801FCB48 +/* 801FCB38 001F9A98 C0 02 AF 7C */ lfs f0, lbl_805ACC9C@sda21(r2) +/* 801FCB3C 001F9A9C FC 08 00 40 */ fcmpo cr0, f8, f0 +/* 801FCB40 001F9AA0 40 80 00 08 */ bge lbl_801FCB48 +lbl_801FCB44: +/* 801FCB44 001F9AA4 3B 80 00 00 */ li r28, 0 +lbl_801FCB48: +/* 801FCB48 001F9AA8 2C 17 FF FF */ cmpwi r23, -1 +/* 801FCB4C 001F9AAC 41 82 00 14 */ beq lbl_801FCB60 +/* 801FCB50 001F9AB0 56 E3 18 38 */ slwi r3, r23, 3 +/* 801FCB54 001F9AB4 38 03 00 08 */ addi r0, r3, 8 +/* 801FCB58 001F9AB8 7E F8 02 AE */ lhax r23, r24, r0 +/* 801FCB5C 001F9ABC 48 00 00 08 */ b lbl_801FCB64 +lbl_801FCB60: +/* 801FCB60 001F9AC0 3A E0 FF FF */ li r23, -1 +lbl_801FCB64: +/* 801FCB64 001F9AC4 2C 17 FF FF */ cmpwi r23, -1 +/* 801FCB68 001F9AC8 40 82 FE 6C */ bne lbl_801FC9D4 +/* 801FCB6C 001F9ACC 7F 24 CB 78 */ mr r4, r25 +/* 801FCB70 001F9AD0 38 61 01 08 */ addi r3, r1, 0x108 +/* 801FCB74 001F9AD4 4B F1 DD B9 */ bl GetBoundingBox__13CPhysicsActorCFv +/* 801FCB78 001F9AD8 38 61 00 D8 */ addi r3, r1, 0xd8 +/* 801FCB7C 001F9ADC 38 81 01 08 */ addi r4, r1, 0x108 +/* 801FCB80 001F9AE0 48 13 AA 8D */ bl GetCenterPoint__6CAABoxCFv +/* 801FCB84 001F9AE4 C0 81 00 D8 */ lfs f4, 0xd8(r1) +/* 801FCB88 001F9AE8 57 C0 06 3F */ clrlwi. r0, r30, 0x18 +/* 801FCB8C 001F9AEC C0 61 00 DC */ lfs f3, 0xdc(r1) +/* 801FCB90 001F9AF0 C0 41 00 E0 */ lfs f2, 0xe0(r1) +/* 801FCB94 001F9AF4 D0 81 00 FC */ stfs f4, 0xfc(r1) +/* 801FCB98 001F9AF8 D0 61 01 00 */ stfs f3, 0x100(r1) +/* 801FCB9C 001F9AFC D0 41 01 04 */ stfs f2, 0x104(r1) +/* 801FCBA0 001F9B00 41 82 00 7C */ beq lbl_801FCC1C +/* 801FCBA4 001F9B04 38 00 00 00 */ li r0, 0 +/* 801FCBA8 001F9B08 7F 23 CB 78 */ mr r3, r25 +/* 801FCBAC 001F9B0C 90 01 00 2C */ stw r0, 0x2c(r1) +/* 801FCBB0 001F9B10 7F 44 D3 78 */ mr r4, r26 +/* 801FCBB4 001F9B14 38 A1 00 FC */ addi r5, r1, 0xfc +/* 801FCBB8 001F9B18 38 C1 00 CC */ addi r6, r1, 0xcc +/* 801FCBBC 001F9B1C 90 01 00 28 */ stw r0, 0x28(r1) +/* 801FCBC0 001F9B20 38 E1 00 28 */ addi r7, r1, 0x28 +/* 801FCBC4 001F9B24 C0 F9 00 54 */ lfs f7, 0x54(r25) +/* 801FCBC8 001F9B28 C0 39 00 44 */ lfs f1, 0x44(r25) +/* 801FCBCC 001F9B2C C0 19 00 34 */ lfs f0, 0x34(r25) +/* 801FCBD0 001F9B30 EC BE 01 F2 */ fmuls f5, f30, f7 +/* 801FCBD4 001F9B34 EC DE 00 72 */ fmuls f6, f30, f1 +/* 801FCBD8 001F9B38 D0 21 00 B8 */ stfs f1, 0xb8(r1) +/* 801FCBDC 001F9B3C EC 3E 00 32 */ fmuls f1, f30, f0 +/* 801FCBE0 001F9B40 EC 42 28 2A */ fadds f2, f2, f5 +/* 801FCBE4 001F9B44 D0 01 00 B4 */ stfs f0, 0xb4(r1) +/* 801FCBE8 001F9B48 EC 63 30 2A */ fadds f3, f3, f6 +/* 801FCBEC 001F9B4C EC 04 08 2A */ fadds f0, f4, f1 +/* 801FCBF0 001F9B50 D0 E1 00 BC */ stfs f7, 0xbc(r1) +/* 801FCBF4 001F9B54 D0 21 00 C0 */ stfs f1, 0xc0(r1) +/* 801FCBF8 001F9B58 D0 C1 00 C4 */ stfs f6, 0xc4(r1) +/* 801FCBFC 001F9B5C D0 A1 00 C8 */ stfs f5, 0xc8(r1) +/* 801FCC00 001F9B60 D0 01 00 CC */ stfs f0, 0xcc(r1) +/* 801FCC04 001F9B64 D0 61 00 D0 */ stfs f3, 0xd0(r1) +/* 801FCC08 001F9B68 D0 41 00 D4 */ stfs f2, 0xd4(r1) +/* 801FCC0C 001F9B6C 48 00 07 B9 */ bl LineOfSightTest__13CFlyingPirateFR13CStateManagerRC9CVector3fRC9CVector3f +/* 801FCC10 001F9B70 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801FCC14 001F9B74 40 82 00 08 */ bne lbl_801FCC1C +/* 801FCC18 001F9B78 3B C0 00 00 */ li r30, 0 +lbl_801FCC1C: +/* 801FCC1C 001F9B7C 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 801FCC20 001F9B80 41 82 00 88 */ beq lbl_801FCCA8 +/* 801FCC24 001F9B84 38 00 00 00 */ li r0, 0 +/* 801FCC28 001F9B88 C0 41 01 00 */ lfs f2, 0x100(r1) +/* 801FCC2C 001F9B8C 90 01 00 24 */ stw r0, 0x24(r1) +/* 801FCC30 001F9B90 7F 23 CB 78 */ mr r3, r25 +/* 801FCC34 001F9B94 C0 21 01 04 */ lfs f1, 0x104(r1) +/* 801FCC38 001F9B98 7F 44 D3 78 */ mr r4, r26 +/* 801FCC3C 001F9B9C 90 01 00 20 */ stw r0, 0x20(r1) +/* 801FCC40 001F9BA0 38 A1 00 FC */ addi r5, r1, 0xfc +/* 801FCC44 001F9BA4 C0 01 00 FC */ lfs f0, 0xfc(r1) +/* 801FCC48 001F9BA8 38 C1 00 A8 */ addi r6, r1, 0xa8 +/* 801FCC4C 001F9BAC C0 F9 00 54 */ lfs f7, 0x54(r25) +/* 801FCC50 001F9BB0 38 E1 00 20 */ addi r7, r1, 0x20 +/* 801FCC54 001F9BB4 C0 79 00 44 */ lfs f3, 0x44(r25) +/* 801FCC58 001F9BB8 C0 99 00 34 */ lfs f4, 0x34(r25) +/* 801FCC5C 001F9BBC EC BE 01 F2 */ fmuls f5, f30, f7 +/* 801FCC60 001F9BC0 EC DE 00 F2 */ fmuls f6, f30, f3 +/* 801FCC64 001F9BC4 D0 61 00 94 */ stfs f3, 0x94(r1) +/* 801FCC68 001F9BC8 EC 7E 01 32 */ fmuls f3, f30, f4 +/* 801FCC6C 001F9BCC EC 21 28 28 */ fsubs f1, f1, f5 +/* 801FCC70 001F9BD0 D0 81 00 90 */ stfs f4, 0x90(r1) +/* 801FCC74 001F9BD4 EC 42 30 28 */ fsubs f2, f2, f6 +/* 801FCC78 001F9BD8 EC 00 18 28 */ fsubs f0, f0, f3 +/* 801FCC7C 001F9BDC D0 E1 00 98 */ stfs f7, 0x98(r1) +/* 801FCC80 001F9BE0 D0 61 00 9C */ stfs f3, 0x9c(r1) +/* 801FCC84 001F9BE4 D0 C1 00 A0 */ stfs f6, 0xa0(r1) +/* 801FCC88 001F9BE8 D0 A1 00 A4 */ stfs f5, 0xa4(r1) +/* 801FCC8C 001F9BEC D0 01 00 A8 */ stfs f0, 0xa8(r1) +/* 801FCC90 001F9BF0 D0 41 00 AC */ stfs f2, 0xac(r1) +/* 801FCC94 001F9BF4 D0 21 00 B0 */ stfs f1, 0xb0(r1) +/* 801FCC98 001F9BF8 48 00 07 2D */ bl LineOfSightTest__13CFlyingPirateFR13CStateManagerRC9CVector3fRC9CVector3f +/* 801FCC9C 001F9BFC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801FCCA0 001F9C00 40 82 00 08 */ bne lbl_801FCCA8 +/* 801FCCA4 001F9C04 3B E0 00 00 */ li r31, 0 +lbl_801FCCA8: +/* 801FCCA8 001F9C08 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 801FCCAC 001F9C0C 41 82 00 88 */ beq lbl_801FCD34 +/* 801FCCB0 001F9C10 38 00 00 00 */ li r0, 0 +/* 801FCCB4 001F9C14 C0 41 01 00 */ lfs f2, 0x100(r1) +/* 801FCCB8 001F9C18 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801FCCBC 001F9C1C 7F 23 CB 78 */ mr r3, r25 +/* 801FCCC0 001F9C20 C0 21 01 04 */ lfs f1, 0x104(r1) +/* 801FCCC4 001F9C24 7F 44 D3 78 */ mr r4, r26 +/* 801FCCC8 001F9C28 90 01 00 18 */ stw r0, 0x18(r1) +/* 801FCCCC 001F9C2C 38 A1 00 FC */ addi r5, r1, 0xfc +/* 801FCCD0 001F9C30 C0 01 00 FC */ lfs f0, 0xfc(r1) +/* 801FCCD4 001F9C34 38 C1 00 84 */ addi r6, r1, 0x84 +/* 801FCCD8 001F9C38 C0 F9 00 5C */ lfs f7, 0x5c(r25) +/* 801FCCDC 001F9C3C 38 E1 00 18 */ addi r7, r1, 0x18 +/* 801FCCE0 001F9C40 C0 79 00 4C */ lfs f3, 0x4c(r25) +/* 801FCCE4 001F9C44 C0 99 00 3C */ lfs f4, 0x3c(r25) +/* 801FCCE8 001F9C48 EC BE 01 F2 */ fmuls f5, f30, f7 +/* 801FCCEC 001F9C4C EC DE 00 F2 */ fmuls f6, f30, f3 +/* 801FCCF0 001F9C50 D0 61 00 70 */ stfs f3, 0x70(r1) +/* 801FCCF4 001F9C54 EC 7E 01 32 */ fmuls f3, f30, f4 +/* 801FCCF8 001F9C58 EC 21 28 2A */ fadds f1, f1, f5 +/* 801FCCFC 001F9C5C D0 81 00 6C */ stfs f4, 0x6c(r1) +/* 801FCD00 001F9C60 EC 42 30 2A */ fadds f2, f2, f6 +/* 801FCD04 001F9C64 EC 00 18 2A */ fadds f0, f0, f3 +/* 801FCD08 001F9C68 D0 E1 00 74 */ stfs f7, 0x74(r1) +/* 801FCD0C 001F9C6C D0 61 00 78 */ stfs f3, 0x78(r1) +/* 801FCD10 001F9C70 D0 C1 00 7C */ stfs f6, 0x7c(r1) +/* 801FCD14 001F9C74 D0 A1 00 80 */ stfs f5, 0x80(r1) +/* 801FCD18 001F9C78 D0 01 00 84 */ stfs f0, 0x84(r1) +/* 801FCD1C 001F9C7C D0 41 00 88 */ stfs f2, 0x88(r1) +/* 801FCD20 001F9C80 D0 21 00 8C */ stfs f1, 0x8c(r1) +/* 801FCD24 001F9C84 48 00 06 A1 */ bl LineOfSightTest__13CFlyingPirateFR13CStateManagerRC9CVector3fRC9CVector3f +/* 801FCD28 001F9C88 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801FCD2C 001F9C8C 40 82 00 08 */ bne lbl_801FCD34 +/* 801FCD30 001F9C90 3B A0 00 00 */ li r29, 0 +lbl_801FCD34: +/* 801FCD34 001F9C94 57 80 06 3F */ clrlwi. r0, r28, 0x18 +/* 801FCD38 001F9C98 41 82 00 88 */ beq lbl_801FCDC0 +/* 801FCD3C 001F9C9C 38 00 00 00 */ li r0, 0 +/* 801FCD40 001F9CA0 C0 41 01 00 */ lfs f2, 0x100(r1) +/* 801FCD44 001F9CA4 90 01 00 14 */ stw r0, 0x14(r1) +/* 801FCD48 001F9CA8 7F 23 CB 78 */ mr r3, r25 +/* 801FCD4C 001F9CAC C0 21 01 04 */ lfs f1, 0x104(r1) +/* 801FCD50 001F9CB0 7F 44 D3 78 */ mr r4, r26 +/* 801FCD54 001F9CB4 90 01 00 10 */ stw r0, 0x10(r1) +/* 801FCD58 001F9CB8 38 A1 00 FC */ addi r5, r1, 0xfc +/* 801FCD5C 001F9CBC C0 01 00 FC */ lfs f0, 0xfc(r1) +/* 801FCD60 001F9CC0 38 C1 00 60 */ addi r6, r1, 0x60 +/* 801FCD64 001F9CC4 C0 F9 00 5C */ lfs f7, 0x5c(r25) +/* 801FCD68 001F9CC8 38 E1 00 10 */ addi r7, r1, 0x10 +/* 801FCD6C 001F9CCC C0 79 00 4C */ lfs f3, 0x4c(r25) +/* 801FCD70 001F9CD0 C0 99 00 3C */ lfs f4, 0x3c(r25) +/* 801FCD74 001F9CD4 EC BE 01 F2 */ fmuls f5, f30, f7 +/* 801FCD78 001F9CD8 EC DE 00 F2 */ fmuls f6, f30, f3 +/* 801FCD7C 001F9CDC D0 61 00 4C */ stfs f3, 0x4c(r1) +/* 801FCD80 001F9CE0 EC 7E 01 32 */ fmuls f3, f30, f4 +/* 801FCD84 001F9CE4 EC 21 28 28 */ fsubs f1, f1, f5 +/* 801FCD88 001F9CE8 D0 81 00 48 */ stfs f4, 0x48(r1) +/* 801FCD8C 001F9CEC EC 42 30 28 */ fsubs f2, f2, f6 +/* 801FCD90 001F9CF0 EC 00 18 28 */ fsubs f0, f0, f3 +/* 801FCD94 001F9CF4 D0 E1 00 50 */ stfs f7, 0x50(r1) +/* 801FCD98 001F9CF8 D0 61 00 54 */ stfs f3, 0x54(r1) +/* 801FCD9C 001F9CFC D0 C1 00 58 */ stfs f6, 0x58(r1) +/* 801FCDA0 001F9D00 D0 A1 00 5C */ stfs f5, 0x5c(r1) +/* 801FCDA4 001F9D04 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 801FCDA8 001F9D08 D0 41 00 64 */ stfs f2, 0x64(r1) +/* 801FCDAC 001F9D0C D0 21 00 68 */ stfs f1, 0x68(r1) +/* 801FCDB0 001F9D10 48 00 06 15 */ bl LineOfSightTest__13CFlyingPirateFR13CStateManagerRC9CVector3fRC9CVector3f +/* 801FCDB4 001F9D14 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801FCDB8 001F9D18 40 82 00 08 */ bne lbl_801FCDC0 +/* 801FCDBC 001F9D1C 3B 80 00 00 */ li r28, 0 +lbl_801FCDC0: +/* 801FCDC0 001F9D20 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 801FCDC4 001F9D24 40 82 00 0C */ bne lbl_801FCDD0 +/* 801FCDC8 001F9D28 57 C0 06 3F */ clrlwi. r0, r30, 0x18 +/* 801FCDCC 001F9D2C 41 82 00 38 */ beq lbl_801FCE04 +lbl_801FCDD0: +/* 801FCDD0 001F9D30 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 801FCDD4 001F9D34 40 82 00 0C */ bne lbl_801FCDE0 +/* 801FCDD8 001F9D38 57 80 06 3F */ clrlwi. r0, r28, 0x18 +/* 801FCDDC 001F9D3C 41 82 00 28 */ beq lbl_801FCE04 +lbl_801FCDE0: +/* 801FCDE0 001F9D40 80 7A 09 00 */ lwz r3, 0x900(r26) +/* 801FCDE4 001F9D44 48 11 57 3D */ bl Next__9CRandom16Fv +/* 801FCDE8 001F9D48 54 60 04 63 */ rlwinm. r0, r3, 0, 0x11, 0x11 +/* 801FCDEC 001F9D4C 41 82 00 10 */ beq lbl_801FCDFC +/* 801FCDF0 001F9D50 3B E0 00 00 */ li r31, 0 +/* 801FCDF4 001F9D54 3B C0 00 00 */ li r30, 0 +/* 801FCDF8 001F9D58 48 00 00 0C */ b lbl_801FCE04 +lbl_801FCDFC: +/* 801FCDFC 001F9D5C 3B A0 00 00 */ li r29, 0 +/* 801FCE00 001F9D60 3B 80 00 00 */ li r28, 0 +lbl_801FCE04: +/* 801FCE04 001F9D64 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 801FCE08 001F9D68 41 82 00 28 */ beq lbl_801FCE30 +/* 801FCE0C 001F9D6C 57 C0 06 3F */ clrlwi. r0, r30, 0x18 +/* 801FCE10 001F9D70 41 82 00 20 */ beq lbl_801FCE30 +/* 801FCE14 001F9D74 80 7A 09 00 */ lwz r3, 0x900(r26) +/* 801FCE18 001F9D78 48 11 57 09 */ bl Next__9CRandom16Fv +/* 801FCE1C 001F9D7C 54 60 04 63 */ rlwinm. r0, r3, 0, 0x11, 0x11 +/* 801FCE20 001F9D80 41 82 00 0C */ beq lbl_801FCE2C +/* 801FCE24 001F9D84 3B E0 00 00 */ li r31, 0 +/* 801FCE28 001F9D88 48 00 00 08 */ b lbl_801FCE30 +lbl_801FCE2C: +/* 801FCE2C 001F9D8C 3B C0 00 00 */ li r30, 0 +lbl_801FCE30: +/* 801FCE30 001F9D90 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 801FCE34 001F9D94 41 82 00 60 */ beq lbl_801FCE94 +/* 801FCE38 001F9D98 57 80 06 3F */ clrlwi. r0, r28, 0x18 +/* 801FCE3C 001F9D9C 41 82 00 58 */ beq lbl_801FCE94 +/* 801FCE40 001F9DA0 C0 59 00 60 */ lfs f2, 0x60(r25) +/* 801FCE44 001F9DA4 7F 24 CB 78 */ mr r4, r25 +/* 801FCE48 001F9DA8 C0 39 00 50 */ lfs f1, 0x50(r25) +/* 801FCE4C 001F9DAC 7F 45 D3 78 */ mr r5, r26 +/* 801FCE50 001F9DB0 C0 19 00 40 */ lfs f0, 0x40(r25) +/* 801FCE54 001F9DB4 38 61 00 3C */ addi r3, r1, 0x3c +/* 801FCE58 001F9DB8 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 801FCE5C 001F9DBC C3 D9 05 F4 */ lfs f30, 0x5f4(r25) +/* 801FCE60 001F9DC0 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801FCE64 001F9DC4 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 801FCE68 001F9DC8 4B FF FA 2D */ bl GetTargetPos__13CFlyingPirateFR13CStateManager +/* 801FCE6C 001F9DCC C0 01 00 38 */ lfs f0, 0x38(r1) +/* 801FCE70 001F9DD0 C0 41 00 44 */ lfs f2, 0x44(r1) +/* 801FCE74 001F9DD4 EC 20 F0 2A */ fadds f1, f0, f30 +/* 801FCE78 001F9DD8 C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801FCE7C 001F9DDC EC 22 08 28 */ fsubs f1, f2, f1 +/* 801FCE80 001F9DE0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801FCE84 001F9DE4 40 81 00 0C */ ble lbl_801FCE90 +/* 801FCE88 001F9DE8 3B 80 00 00 */ li r28, 0 +/* 801FCE8C 001F9DEC 48 00 00 08 */ b lbl_801FCE94 +lbl_801FCE90: +/* 801FCE90 001F9DF0 3B A0 00 00 */ li r29, 0 +lbl_801FCE94: +/* 801FCE94 001F9DF4 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 801FCE98 001F9DF8 41 82 00 0C */ beq lbl_801FCEA4 +/* 801FCE9C 001F9DFC 3B 60 00 04 */ li r27, 4 +/* 801FCEA0 001F9E00 48 00 00 30 */ b lbl_801FCED0 +lbl_801FCEA4: +/* 801FCEA4 001F9E04 57 80 06 3F */ clrlwi. r0, r28, 0x18 +/* 801FCEA8 001F9E08 41 82 00 0C */ beq lbl_801FCEB4 +/* 801FCEAC 001F9E0C 3B 60 00 05 */ li r27, 5 +/* 801FCEB0 001F9E10 48 00 00 20 */ b lbl_801FCED0 +lbl_801FCEB4: +/* 801FCEB4 001F9E14 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 801FCEB8 001F9E18 41 82 00 0C */ beq lbl_801FCEC4 +/* 801FCEBC 001F9E1C 3B 60 00 02 */ li r27, 2 +/* 801FCEC0 001F9E20 48 00 00 10 */ b lbl_801FCED0 +lbl_801FCEC4: +/* 801FCEC4 001F9E24 57 C0 06 3F */ clrlwi. r0, r30, 0x18 +/* 801FCEC8 001F9E28 41 82 00 08 */ beq lbl_801FCED0 +/* 801FCECC 001F9E2C 3B 60 00 03 */ li r27, 3 +lbl_801FCED0: +/* 801FCED0 001F9E30 7F 63 DB 78 */ mr r3, r27 +/* 801FCED4 001F9E34 E3 E1 01 68 */ psq_l f31, 360(r1), 0, qr0 +/* 801FCED8 001F9E38 CB E1 01 60 */ lfd f31, 0x160(r1) +/* 801FCEDC 001F9E3C E3 C1 01 58 */ psq_l f30, 344(r1), 0, qr0 +/* 801FCEE0 001F9E40 CB C1 01 50 */ lfd f30, 0x150(r1) +/* 801FCEE4 001F9E44 BA E1 01 2C */ lmw r23, 0x12c(r1) +/* 801FCEE8 001F9E48 80 01 01 74 */ lwz r0, 0x174(r1) +/* 801FCEEC 001F9E4C 7C 08 03 A6 */ mtlr r0 +/* 801FCEF0 001F9E50 38 21 01 70 */ addi r1, r1, 0x170 +/* 801FCEF4 001F9E54 4E 80 00 20 */ blr + +.global AvoidActors__13CFlyingPirateFR13CStateManager +AvoidActors__13CFlyingPirateFR13CStateManager: +/* 801FCEF8 001F9E58 94 21 F7 20 */ stwu r1, -0x8e0(r1) +/* 801FCEFC 001F9E5C 7C 08 02 A6 */ mflr r0 +/* 801FCF00 001F9E60 90 01 08 E4 */ stw r0, 0x8e4(r1) +/* 801FCF04 001F9E64 DB E1 08 D0 */ stfd f31, 0x8d0(r1) +/* 801FCF08 001F9E68 F3 E1 08 D8 */ psq_st f31, -1832(r1), 0, qr0 +/* 801FCF0C 001F9E6C DB C1 08 C0 */ stfd f30, 0x8c0(r1) +/* 801FCF10 001F9E70 F3 C1 08 C8 */ psq_st f30, -1848(r1), 0, qr0 +/* 801FCF14 001F9E74 DB A1 08 B0 */ stfd f29, 0x8b0(r1) +/* 801FCF18 001F9E78 F3 A1 08 B8 */ psq_st f29, -1864(r1), 0, qr0 +/* 801FCF1C 001F9E7C BF 61 08 9C */ stmw r27, 0x89c(r1) +/* 801FCF20 001F9E80 7C 9C 23 78 */ mr r28, r4 +/* 801FCF24 001F9E84 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801FCF28 001F9E88 C0 9C 00 50 */ lfs f4, 0x50(r28) +/* 801FCF2C 001F9E8C 7C 7B 1B 78 */ mr r27, r3 +/* 801FCF30 001F9E90 C0 62 AF EC */ lfs f3, lbl_805ACD0C@sda21(r2) +/* 801FCF34 001F9E94 7C BD 2B 78 */ mr r29, r5 +/* 801FCF38 001F9E98 C0 5C 00 60 */ lfs f2, 0x60(r28) +/* 801FCF3C 001F9E9C 38 61 00 78 */ addi r3, r1, 0x78 +/* 801FCF40 001F9EA0 C7 E4 66 A0 */ lfsu f31, skZero3f@l(r4) +/* 801FCF44 001F9EA4 EC C4 18 2A */ fadds f6, f4, f3 +/* 801FCF48 001F9EA8 C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 801FCF4C 001F9EAC EC A2 18 2A */ fadds f5, f2, f3 +/* 801FCF50 001F9EB0 EC 84 18 28 */ fsubs f4, f4, f3 +/* 801FCF54 001F9EB4 C3 C4 00 04 */ lfs f30, 4(r4) +/* 801FCF58 001F9EB8 EC 20 18 2A */ fadds f1, f0, f3 +/* 801FCF5C 001F9EBC EC 42 18 28 */ fsubs f2, f2, f3 +/* 801FCF60 001F9EC0 C3 A4 00 08 */ lfs f29, 8(r4) +/* 801FCF64 001F9EC4 EC 00 18 28 */ fsubs f0, f0, f3 +/* 801FCF68 001F9EC8 D0 21 00 44 */ stfs f1, 0x44(r1) +/* 801FCF6C 001F9ECC 38 81 00 50 */ addi r4, r1, 0x50 +/* 801FCF70 001F9ED0 38 A1 00 44 */ addi r5, r1, 0x44 +/* 801FCF74 001F9ED4 D0 C1 00 48 */ stfs f6, 0x48(r1) +/* 801FCF78 001F9ED8 D0 A1 00 4C */ stfs f5, 0x4c(r1) +/* 801FCF7C 001F9EDC D0 01 00 50 */ stfs f0, 0x50(r1) +/* 801FCF80 001F9EE0 D0 81 00 54 */ stfs f4, 0x54(r1) +/* 801FCF84 001F9EE4 D0 41 00 58 */ stfs f2, 0x58(r1) +/* 801FCF88 001F9EE8 48 13 B5 81 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801FCF8C 001F9EEC 38 00 00 00 */ li r0, 0 +/* 801FCF90 001F9EF0 80 AD 92 F8 */ lwz r5, lbl_805A7EB8@sda21(r13) +/* 801FCF94 001F9EF4 90 01 00 90 */ stw r0, 0x90(r1) +/* 801FCF98 001F9EF8 38 60 00 00 */ li r3, 0 +/* 801FCF9C 001F9EFC 38 80 00 01 */ li r4, 1 +/* 801FCFA0 001F9F00 48 18 CF 55 */ bl __shl2i +/* 801FCFA4 001F9F04 39 00 00 00 */ li r8, 0 +/* 801FCFA8 001F9F08 38 00 00 01 */ li r0, 1 +/* 801FCFAC 001F9F0C 90 81 00 64 */ stw r4, 0x64(r1) +/* 801FCFB0 001F9F10 7F 87 E3 78 */ mr r7, r28 +/* 801FCFB4 001F9F14 38 81 00 90 */ addi r4, r1, 0x90 +/* 801FCFB8 001F9F18 38 A1 00 78 */ addi r5, r1, 0x78 +/* 801FCFBC 001F9F1C 90 61 00 60 */ stw r3, 0x60(r1) +/* 801FCFC0 001F9F20 7F A3 EB 78 */ mr r3, r29 +/* 801FCFC4 001F9F24 38 C1 00 60 */ addi r6, r1, 0x60 +/* 801FCFC8 001F9F28 91 01 00 6C */ stw r8, 0x6c(r1) +/* 801FCFCC 001F9F2C 91 01 00 68 */ stw r8, 0x68(r1) +/* 801FCFD0 001F9F30 90 01 00 70 */ stw r0, 0x70(r1) +/* 801FCFD4 001F9F34 4B E4 F7 4D */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" +/* 801FCFD8 001F9F38 3B E1 00 94 */ addi r31, r1, 0x94 +/* 801FCFDC 001F9F3C 3B C0 00 00 */ li r30, 0 +/* 801FCFE0 001F9F40 48 00 00 80 */ b lbl_801FD060 +lbl_801FCFE4: +/* 801FCFE4 001F9F44 A0 1F 00 00 */ lhz r0, 0(r31) +/* 801FCFE8 001F9F48 7F A3 EB 78 */ mr r3, r29 +/* 801FCFEC 001F9F4C 38 81 00 08 */ addi r4, r1, 8 +/* 801FCFF0 001F9F50 B0 01 00 08 */ sth r0, 8(r1) +/* 801FCFF4 001F9F54 4B E4 F5 B1 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801FCFF8 001F9F58 7C 64 1B 78 */ mr r4, r3 +/* 801FCFFC 001F9F5C 38 61 00 0C */ addi r3, r1, 0xc +/* 801FD000 001F9F60 4B EB 2C 91 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 801FD004 001F9F64 80 83 00 04 */ lwz r4, 4(r3) +/* 801FD008 001F9F68 28 04 00 00 */ cmplwi r4, 0 +/* 801FD00C 001F9F6C 41 82 00 4C */ beq lbl_801FD058 +/* 801FD010 001F9F70 C0 64 00 60 */ lfs f3, 0x60(r4) +/* 801FD014 001F9F74 7F 85 E3 78 */ mr r5, r28 +/* 801FD018 001F9F78 C0 44 00 50 */ lfs f2, 0x50(r4) +/* 801FD01C 001F9F7C 38 61 00 38 */ addi r3, r1, 0x38 +/* 801FD020 001F9F80 C0 04 00 40 */ lfs f0, 0x40(r4) +/* 801FD024 001F9F84 38 9C 04 5C */ addi r4, r28, 0x45c +/* 801FD028 001F9F88 C0 22 AF D0 */ lfs f1, lbl_805ACCF0@sda21(r2) +/* 801FD02C 001F9F8C 38 C1 00 2C */ addi r6, r1, 0x2c +/* 801FD030 001F9F90 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801FD034 001F9F94 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 801FD038 001F9F98 D0 61 00 34 */ stfs f3, 0x34(r1) +/* 801FD03C 001F9F9C 4B F4 18 B5 */ bl Separation__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3ff +/* 801FD040 001F9FA0 C0 41 00 38 */ lfs f2, 0x38(r1) +/* 801FD044 001F9FA4 C0 21 00 3C */ lfs f1, 0x3c(r1) +/* 801FD048 001F9FA8 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 801FD04C 001F9FAC EF FF 10 2A */ fadds f31, f31, f2 +/* 801FD050 001F9FB0 EF DE 08 2A */ fadds f30, f30, f1 +/* 801FD054 001F9FB4 EF BD 00 2A */ fadds f29, f29, f0 +lbl_801FD058: +/* 801FD058 001F9FB8 3B FF 00 02 */ addi r31, r31, 2 +/* 801FD05C 001F9FBC 3B DE 00 01 */ addi r30, r30, 1 +lbl_801FD060: +/* 801FD060 001F9FC0 80 01 00 90 */ lwz r0, 0x90(r1) +/* 801FD064 001F9FC4 7C 1E 00 00 */ cmpw r30, r0 +/* 801FD068 001F9FC8 41 80 FF 7C */ blt lbl_801FCFE4 +/* 801FD06C 001F9FCC 80 FD 08 4C */ lwz r7, 0x84c(r29) +/* 801FD070 001F9FD0 7F 85 E3 78 */ mr r5, r28 +/* 801FD074 001F9FD4 C0 9C 00 50 */ lfs f4, 0x50(r28) +/* 801FD078 001F9FD8 38 61 00 20 */ addi r3, r1, 0x20 +/* 801FD07C 001F9FDC C0 27 00 50 */ lfs f1, 0x50(r7) +/* 801FD080 001F9FE0 38 9C 04 5C */ addi r4, r28, 0x45c +/* 801FD084 001F9FE4 C0 BC 00 40 */ lfs f5, 0x40(r28) +/* 801FD088 001F9FE8 38 C1 00 14 */ addi r6, r1, 0x14 +/* 801FD08C 001F9FEC C0 07 00 40 */ lfs f0, 0x40(r7) +/* 801FD090 001F9FF0 EC 21 20 28 */ fsubs f1, f1, f4 +/* 801FD094 001F9FF4 C0 7C 00 60 */ lfs f3, 0x60(r28) +/* 801FD098 001F9FF8 EC 00 28 28 */ fsubs f0, f0, f5 +/* 801FD09C 001F9FFC C0 42 AF 60 */ lfs f2, lbl_805ACC80@sda21(r2) +/* 801FD0A0 001FA000 EC 84 08 2A */ fadds f4, f4, f1 +/* 801FD0A4 001FA004 C0 22 AF F0 */ lfs f1, lbl_805ACD10@sda21(r2) +/* 801FD0A8 001FA008 EC 43 10 2A */ fadds f2, f3, f2 +/* 801FD0AC 001FA00C EC 05 00 2A */ fadds f0, f5, f0 +/* 801FD0B0 001FA010 D0 81 00 18 */ stfs f4, 0x18(r1) +/* 801FD0B4 001FA014 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801FD0B8 001FA018 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 801FD0BC 001FA01C 4B F4 18 35 */ bl Separation__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3ff +/* 801FD0C0 001FA020 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 801FD0C4 001FA024 38 60 00 00 */ li r3, 0 +/* 801FD0C8 001FA028 C0 21 00 24 */ lfs f1, 0x24(r1) +/* 801FD0CC 001FA02C EF FF 00 2A */ fadds f31, f31, f0 +/* 801FD0D0 001FA030 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 801FD0D4 001FA034 EF DE 08 2A */ fadds f30, f30, f1 +/* 801FD0D8 001FA038 EF BD 00 2A */ fadds f29, f29, f0 +/* 801FD0DC 001FA03C D3 FB 00 00 */ stfs f31, 0(r27) +/* 801FD0E0 001FA040 D3 DB 00 04 */ stfs f30, 4(r27) +/* 801FD0E4 001FA044 D3 BB 00 08 */ stfs f29, 8(r27) +/* 801FD0E8 001FA048 80 A1 00 90 */ lwz r5, 0x90(r1) +/* 801FD0EC 001FA04C 2C 05 00 00 */ cmpwi r5, 0 +/* 801FD0F0 001FA050 40 81 00 40 */ ble lbl_801FD130 +/* 801FD0F4 001FA054 2C 05 00 08 */ cmpwi r5, 8 +/* 801FD0F8 001FA058 38 85 FF F8 */ addi r4, r5, -8 +/* 801FD0FC 001FA05C 40 81 00 20 */ ble lbl_801FD11C +/* 801FD100 001FA060 38 04 00 07 */ addi r0, r4, 7 +/* 801FD104 001FA064 54 00 E8 FE */ srwi r0, r0, 3 +/* 801FD108 001FA068 7C 09 03 A6 */ mtctr r0 +/* 801FD10C 001FA06C 2C 04 00 00 */ cmpwi r4, 0 +/* 801FD110 001FA070 40 81 00 0C */ ble lbl_801FD11C +lbl_801FD114: +/* 801FD114 001FA074 38 63 00 08 */ addi r3, r3, 8 +/* 801FD118 001FA078 42 00 FF FC */ bdnz lbl_801FD114 +lbl_801FD11C: +/* 801FD11C 001FA07C 7C 03 28 50 */ subf r0, r3, r5 +/* 801FD120 001FA080 7C 09 03 A6 */ mtctr r0 +/* 801FD124 001FA084 7C 03 28 00 */ cmpw r3, r5 +/* 801FD128 001FA088 40 80 00 08 */ bge lbl_801FD130 +lbl_801FD12C: +/* 801FD12C 001FA08C 42 00 00 00 */ bdnz lbl_801FD12C +lbl_801FD130: +/* 801FD130 001FA090 38 00 00 00 */ li r0, 0 +/* 801FD134 001FA094 90 01 00 90 */ stw r0, 0x90(r1) +/* 801FD138 001FA098 E3 E1 08 D8 */ psq_l f31, -1832(r1), 0, qr0 +/* 801FD13C 001FA09C CB E1 08 D0 */ lfd f31, 0x8d0(r1) +/* 801FD140 001FA0A0 E3 C1 08 C8 */ psq_l f30, -1848(r1), 0, qr0 +/* 801FD144 001FA0A4 CB C1 08 C0 */ lfd f30, 0x8c0(r1) +/* 801FD148 001FA0A8 E3 A1 08 B8 */ psq_l f29, -1864(r1), 0, qr0 +/* 801FD14C 001FA0AC CB A1 08 B0 */ lfd f29, 0x8b0(r1) +/* 801FD150 001FA0B0 BB 61 08 9C */ lmw r27, 0x89c(r1) +/* 801FD154 001FA0B4 80 01 08 E4 */ lwz r0, 0x8e4(r1) +/* 801FD158 001FA0B8 7C 08 03 A6 */ mtlr r0 +/* 801FD15C 001FA0BC 38 21 08 E0 */ addi r1, r1, 0x8e0 +/* 801FD160 001FA0C0 4E 80 00 20 */ blr + +.global UpdateCantSeePlayer__13CFlyingPirateFR13CStateManager +UpdateCantSeePlayer__13CFlyingPirateFR13CStateManager: +/* 801FD164 001FA0C4 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 801FD168 001FA0C8 7C 08 02 A6 */ mflr r0 +/* 801FD16C 001FA0CC 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 801FD170 001FA0D0 DB E1 00 A0 */ stfd f31, 0xa0(r1) +/* 801FD174 001FA0D4 F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0 +/* 801FD178 001FA0D8 DB C1 00 90 */ stfd f30, 0x90(r1) +/* 801FD17C 001FA0DC F3 C1 00 98 */ psq_st f30, 152(r1), 0, qr0 +/* 801FD180 001FA0E0 DB A1 00 80 */ stfd f29, 0x80(r1) +/* 801FD184 001FA0E4 F3 A1 00 88 */ psq_st f29, 136(r1), 0, qr0 +/* 801FD188 001FA0E8 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 801FD18C 001FA0EC 93 C1 00 78 */ stw r30, 0x78(r1) +/* 801FD190 001FA0F0 93 A1 00 74 */ stw r29, 0x74(r1) +/* 801FD194 001FA0F4 7C 7D 1B 78 */ mr r29, r3 +/* 801FD198 001FA0F8 3C 60 92 49 */ lis r3, 0x92492493@ha +/* 801FD19C 001FA0FC 80 BD 07 DC */ lwz r5, 0x7dc(r29) +/* 801FD1A0 001FA100 38 03 24 93 */ addi r0, r3, 0x92492493@l +/* 801FD1A4 001FA104 7C 9E 23 78 */ mr r30, r4 +/* 801FD1A8 001FA108 7C 00 28 96 */ mulhw r0, r0, r5 +/* 801FD1AC 001FA10C 7C 00 2A 14 */ add r0, r0, r5 +/* 801FD1B0 001FA110 7C 00 16 70 */ srawi r0, r0, 2 +/* 801FD1B4 001FA114 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801FD1B8 001FA118 7C 00 1A 14 */ add r0, r0, r3 +/* 801FD1BC 001FA11C 1C 00 00 07 */ mulli r0, r0, 7 +/* 801FD1C0 001FA120 7C 00 28 51 */ subf. r0, r0, r5 +/* 801FD1C4 001FA124 40 82 01 C0 */ bne lbl_801FD384 +/* 801FD1C8 001FA128 80 9E 08 4C */ lwz r4, 0x84c(r30) +/* 801FD1CC 001FA12C 7F C5 F3 78 */ mr r5, r30 +/* 801FD1D0 001FA130 38 61 00 54 */ addi r3, r1, 0x54 +/* 801FD1D4 001FA134 C0 22 AF 60 */ lfs f1, lbl_805ACC80@sda21(r2) +/* 801FD1D8 001FA138 81 84 00 00 */ lwz r12, 0(r4) +/* 801FD1DC 001FA13C 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801FD1E0 001FA140 7D 89 03 A6 */ mtctr r12 +/* 801FD1E4 001FA144 4E 80 04 21 */ bctrl +/* 801FD1E8 001FA148 C0 41 00 54 */ lfs f2, 0x54(r1) +/* 801FD1EC 001FA14C 7F A4 EB 78 */ mr r4, r29 +/* 801FD1F0 001FA150 C0 21 00 58 */ lfs f1, 0x58(r1) +/* 801FD1F4 001FA154 38 61 00 48 */ addi r3, r1, 0x48 +/* 801FD1F8 001FA158 C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 801FD1FC 001FA15C D0 41 00 60 */ stfs f2, 0x60(r1) +/* 801FD200 001FA160 D0 21 00 64 */ stfs f1, 0x64(r1) +/* 801FD204 001FA164 D0 01 00 68 */ stfs f0, 0x68(r1) +/* 801FD208 001FA168 4B E7 F8 C9 */ bl GetGunEyePos__10CPatternedCFv +/* 801FD20C 001FA16C 38 00 00 00 */ li r0, 0 +/* 801FD210 001FA170 80 AD 92 E8 */ lwz r5, lbl_805A7EA8@sda21(r13) +/* 801FD214 001FA174 90 01 00 14 */ stw r0, 0x14(r1) +/* 801FD218 001FA178 3B E0 00 01 */ li r31, 1 +/* 801FD21C 001FA17C C3 A1 00 48 */ lfs f29, 0x48(r1) +/* 801FD220 001FA180 38 60 00 00 */ li r3, 0 +/* 801FD224 001FA184 90 01 00 10 */ stw r0, 0x10(r1) +/* 801FD228 001FA188 38 80 00 01 */ li r4, 1 +/* 801FD22C 001FA18C C3 E1 00 4C */ lfs f31, 0x4c(r1) +/* 801FD230 001FA190 C3 C1 00 50 */ lfs f30, 0x50(r1) +/* 801FD234 001FA194 48 18 CC C1 */ bl __shl2i +/* 801FD238 001FA198 80 01 00 10 */ lwz r0, 0x10(r1) +/* 801FD23C 001FA19C 80 C1 00 14 */ lwz r6, 0x14(r1) +/* 801FD240 001FA1A0 7C 00 1B 78 */ or r0, r0, r3 +/* 801FD244 001FA1A4 80 AD 92 EC */ lwz r5, lbl_805A7EAC@sda21(r13) +/* 801FD248 001FA1A8 7C C4 23 78 */ or r4, r6, r4 +/* 801FD24C 001FA1AC 90 01 00 10 */ stw r0, 0x10(r1) +/* 801FD250 001FA1B0 38 60 00 00 */ li r3, 0 +/* 801FD254 001FA1B4 90 81 00 14 */ stw r4, 0x14(r1) +/* 801FD258 001FA1B8 38 80 00 01 */ li r4, 1 +/* 801FD25C 001FA1BC 48 18 CC 99 */ bl __shl2i +/* 801FD260 001FA1C0 80 01 00 10 */ lwz r0, 0x10(r1) +/* 801FD264 001FA1C4 38 A1 00 3C */ addi r5, r1, 0x3c +/* 801FD268 001FA1C8 80 E1 00 14 */ lwz r7, 0x14(r1) +/* 801FD26C 001FA1CC 38 C1 00 60 */ addi r6, r1, 0x60 +/* 801FD270 001FA1D0 7C 00 1B 78 */ or r0, r0, r3 +/* 801FD274 001FA1D4 7F A3 EB 78 */ mr r3, r29 +/* 801FD278 001FA1D8 7C E8 23 78 */ or r8, r7, r4 +/* 801FD27C 001FA1DC 90 01 00 10 */ stw r0, 0x10(r1) +/* 801FD280 001FA1E0 7F C4 F3 78 */ mr r4, r30 +/* 801FD284 001FA1E4 38 E1 00 10 */ addi r7, r1, 0x10 +/* 801FD288 001FA1E8 91 01 00 14 */ stw r8, 0x14(r1) +/* 801FD28C 001FA1EC C0 9D 00 54 */ lfs f4, 0x54(r29) +/* 801FD290 001FA1F0 C0 1D 00 44 */ lfs f0, 0x44(r29) +/* 801FD294 001FA1F4 C0 3D 00 34 */ lfs f1, 0x34(r29) +/* 801FD298 001FA1F8 EC 5E 20 28 */ fsubs f2, f30, f4 +/* 801FD29C 001FA1FC EC 7F 00 28 */ fsubs f3, f31, f0 +/* 801FD2A0 001FA200 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801FD2A4 001FA204 EC 1D 08 28 */ fsubs f0, f29, f1 +/* 801FD2A8 001FA208 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 801FD2AC 001FA20C D0 81 00 38 */ stfs f4, 0x38(r1) +/* 801FD2B0 001FA210 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 801FD2B4 001FA214 D0 61 00 40 */ stfs f3, 0x40(r1) +/* 801FD2B8 001FA218 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 801FD2BC 001FA21C 48 00 01 09 */ bl LineOfSightTest__13CFlyingPirateFR13CStateManagerRC9CVector3fRC9CVector3f +/* 801FD2C0 001FA220 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801FD2C4 001FA224 41 82 00 B4 */ beq lbl_801FD378 +/* 801FD2C8 001FA228 38 00 00 00 */ li r0, 0 +/* 801FD2CC 001FA22C 80 AD 92 F0 */ lwz r5, lbl_805A7EB0@sda21(r13) +/* 801FD2D0 001FA230 90 01 00 0C */ stw r0, 0xc(r1) +/* 801FD2D4 001FA234 38 60 00 00 */ li r3, 0 +/* 801FD2D8 001FA238 38 80 00 01 */ li r4, 1 +/* 801FD2DC 001FA23C 90 01 00 08 */ stw r0, 8(r1) +/* 801FD2E0 001FA240 48 18 CC 15 */ bl __shl2i +/* 801FD2E4 001FA244 80 01 00 08 */ lwz r0, 8(r1) +/* 801FD2E8 001FA248 80 C1 00 0C */ lwz r6, 0xc(r1) +/* 801FD2EC 001FA24C 7C 00 1B 78 */ or r0, r0, r3 +/* 801FD2F0 001FA250 80 AD 92 F4 */ lwz r5, lbl_805A7EB4@sda21(r13) +/* 801FD2F4 001FA254 7C C4 23 78 */ or r4, r6, r4 +/* 801FD2F8 001FA258 90 01 00 08 */ stw r0, 8(r1) +/* 801FD2FC 001FA25C 38 60 00 00 */ li r3, 0 +/* 801FD300 001FA260 90 81 00 0C */ stw r4, 0xc(r1) +/* 801FD304 001FA264 38 80 00 01 */ li r4, 1 +/* 801FD308 001FA268 48 18 CB ED */ bl __shl2i +/* 801FD30C 001FA26C 80 01 00 08 */ lwz r0, 8(r1) +/* 801FD310 001FA270 38 A1 00 18 */ addi r5, r1, 0x18 +/* 801FD314 001FA274 80 E1 00 0C */ lwz r7, 0xc(r1) +/* 801FD318 001FA278 38 C1 00 60 */ addi r6, r1, 0x60 +/* 801FD31C 001FA27C 7C 00 1B 78 */ or r0, r0, r3 +/* 801FD320 001FA280 7F A3 EB 78 */ mr r3, r29 +/* 801FD324 001FA284 7C E8 23 78 */ or r8, r7, r4 +/* 801FD328 001FA288 90 01 00 08 */ stw r0, 8(r1) +/* 801FD32C 001FA28C 7F C4 F3 78 */ mr r4, r30 +/* 801FD330 001FA290 38 E1 00 08 */ addi r7, r1, 8 +/* 801FD334 001FA294 91 01 00 0C */ stw r8, 0xc(r1) +/* 801FD338 001FA298 C0 9D 00 54 */ lfs f4, 0x54(r29) +/* 801FD33C 001FA29C C0 1D 00 44 */ lfs f0, 0x44(r29) +/* 801FD340 001FA2A0 C0 3D 00 34 */ lfs f1, 0x34(r29) +/* 801FD344 001FA2A4 EC 5E 20 2A */ fadds f2, f30, f4 +/* 801FD348 001FA2A8 EC 7F 00 2A */ fadds f3, f31, f0 +/* 801FD34C 001FA2AC D0 01 00 28 */ stfs f0, 0x28(r1) +/* 801FD350 001FA2B0 EC 1D 08 2A */ fadds f0, f29, f1 +/* 801FD354 001FA2B4 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 801FD358 001FA2B8 D0 81 00 2C */ stfs f4, 0x2c(r1) +/* 801FD35C 001FA2BC D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801FD360 001FA2C0 D0 61 00 1C */ stfs f3, 0x1c(r1) +/* 801FD364 001FA2C4 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 801FD368 001FA2C8 48 00 00 5D */ bl LineOfSightTest__13CFlyingPirateFR13CStateManagerRC9CVector3fRC9CVector3f +/* 801FD36C 001FA2CC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801FD370 001FA2D0 41 82 00 08 */ beq lbl_801FD378 +/* 801FD374 001FA2D4 3B E0 00 00 */ li r31, 0 +lbl_801FD378: +/* 801FD378 001FA2D8 88 1D 06 A0 */ lbz r0, 0x6a0(r29) +/* 801FD37C 001FA2DC 53 E0 07 FE */ rlwimi r0, r31, 0, 0x1f, 0x1f +/* 801FD380 001FA2E0 98 1D 06 A0 */ stb r0, 0x6a0(r29) +lbl_801FD384: +/* 801FD384 001FA2E4 80 7D 07 DC */ lwz r3, 0x7dc(r29) +/* 801FD388 001FA2E8 38 03 00 01 */ addi r0, r3, 1 +/* 801FD38C 001FA2EC 90 1D 07 DC */ stw r0, 0x7dc(r29) +/* 801FD390 001FA2F0 E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0 +/* 801FD394 001FA2F4 CB E1 00 A0 */ lfd f31, 0xa0(r1) +/* 801FD398 001FA2F8 E3 C1 00 98 */ psq_l f30, 152(r1), 0, qr0 +/* 801FD39C 001FA2FC CB C1 00 90 */ lfd f30, 0x90(r1) +/* 801FD3A0 001FA300 E3 A1 00 88 */ psq_l f29, 136(r1), 0, qr0 +/* 801FD3A4 001FA304 CB A1 00 80 */ lfd f29, 0x80(r1) +/* 801FD3A8 001FA308 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 801FD3AC 001FA30C 83 C1 00 78 */ lwz r30, 0x78(r1) +/* 801FD3B0 001FA310 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 801FD3B4 001FA314 83 A1 00 74 */ lwz r29, 0x74(r1) +/* 801FD3B8 001FA318 7C 08 03 A6 */ mtlr r0 +/* 801FD3BC 001FA31C 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 801FD3C0 001FA320 4E 80 00 20 */ blr + +.global LineOfSightTest__13CFlyingPirateFR13CStateManagerRC9CVector3fRC9CVector3f +LineOfSightTest__13CFlyingPirateFR13CStateManagerRC9CVector3fRC9CVector3f: +/* 801FD3C4 001FA324 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801FD3C8 001FA328 7C 08 02 A6 */ mflr r0 +/* 801FD3CC 001FA32C 90 01 00 54 */ stw r0, 0x54(r1) +/* 801FD3D0 001FA330 BF 61 00 3C */ stmw r27, 0x3c(r1) +/* 801FD3D4 001FA334 7C 7B 1B 78 */ mr r27, r3 +/* 801FD3D8 001FA338 7C 9C 23 78 */ mr r28, r4 +/* 801FD3DC 001FA33C 7C BD 2B 78 */ mr r29, r5 +/* 801FD3E0 001FA340 7C DE 33 78 */ mr r30, r6 +/* 801FD3E4 001FA344 7C FF 3B 78 */ mr r31, r7 +/* 801FD3E8 001FA348 38 60 00 00 */ li r3, 0 +/* 801FD3EC 001FA34C 38 80 00 01 */ li r4, 1 +/* 801FD3F0 001FA350 80 0D 92 E4 */ lwz r0, lbl_805A7EA4@sda21(r13) +/* 801FD3F4 001FA354 7C 05 03 78 */ mr r5, r0 +/* 801FD3F8 001FA358 48 18 CA FD */ bl __shl2i +/* 801FD3FC 001FA35C 81 1F 00 00 */ lwz r8, 0(r31) +/* 801FD400 001FA360 38 00 00 03 */ li r0, 3 +/* 801FD404 001FA364 81 3F 00 04 */ lwz r9, 4(r31) +/* 801FD408 001FA368 7F C5 F3 78 */ mr r5, r30 +/* 801FD40C 001FA36C 90 81 00 24 */ stw r4, 0x24(r1) +/* 801FD410 001FA370 7F A4 EB 78 */ mr r4, r29 +/* 801FD414 001FA374 7F 67 DB 78 */ mr r7, r27 +/* 801FD418 001FA378 38 C1 00 20 */ addi r6, r1, 0x20 +/* 801FD41C 001FA37C 90 61 00 20 */ stw r3, 0x20(r1) +/* 801FD420 001FA380 7F 83 E3 78 */ mr r3, r28 +/* 801FD424 001FA384 90 01 00 18 */ stw r0, 0x18(r1) +/* 801FD428 001FA388 91 21 00 2C */ stw r9, 0x2c(r1) +/* 801FD42C 001FA38C 91 01 00 28 */ stw r8, 0x28(r1) +/* 801FD430 001FA390 90 01 00 30 */ stw r0, 0x30(r1) +/* 801FD434 001FA394 4B E4 FA 09 */ bl RayCollideWorld__13CStateManagerFRC9CVector3fRC9CVector3fRC15CMaterialFilterPC6CActor +/* 801FD438 001FA398 BB 61 00 3C */ lmw r27, 0x3c(r1) +/* 801FD43C 001FA39C 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801FD440 001FA3A0 7C 08 03 A6 */ mtlr r0 +/* 801FD444 001FA3A4 38 21 00 50 */ addi r1, r1, 0x50 +/* 801FD448 001FA3A8 4E 80 00 20 */ blr + +.global CheckForProjectiles__13CFlyingPirateFR13CStateManager +CheckForProjectiles__13CFlyingPirateFR13CStateManager: +/* 801FD44C 001FA3AC 94 21 F7 00 */ stwu r1, -0x900(r1) +/* 801FD450 001FA3B0 7C 08 02 A6 */ mflr r0 +/* 801FD454 001FA3B4 90 01 09 04 */ stw r0, 0x904(r1) +/* 801FD458 001FA3B8 DB E1 08 F0 */ stfd f31, 0x8f0(r1) +/* 801FD45C 001FA3BC F3 E1 08 F8 */ psq_st f31, -1800(r1), 0, qr0 +/* 801FD460 001FA3C0 DB C1 08 E0 */ stfd f30, 0x8e0(r1) +/* 801FD464 001FA3C4 F3 C1 08 E8 */ psq_st f30, -1816(r1), 0, qr0 +/* 801FD468 001FA3C8 DB A1 08 D0 */ stfd f29, 0x8d0(r1) +/* 801FD46C 001FA3CC F3 A1 08 D8 */ psq_st f29, -1832(r1), 0, qr0 +/* 801FD470 001FA3D0 BF 61 08 BC */ stmw r27, 0x8bc(r1) +/* 801FD474 001FA3D4 88 03 06 A0 */ lbz r0, 0x6a0(r3) +/* 801FD478 001FA3D8 7C 7E 1B 78 */ mr r30, r3 +/* 801FD47C 001FA3DC 7C 9F 23 78 */ mr r31, r4 +/* 801FD480 001FA3E0 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 801FD484 001FA3E4 41 82 02 A0 */ beq lbl_801FD724 +/* 801FD488 001FA3E8 80 DF 08 4C */ lwz r6, 0x84c(r31) +/* 801FD48C 001FA3EC 38 61 00 90 */ addi r3, r1, 0x90 +/* 801FD490 001FA3F0 C0 A2 AF E4 */ lfs f5, lbl_805ACD04@sda21(r2) +/* 801FD494 001FA3F4 38 81 00 38 */ addi r4, r1, 0x38 +/* 801FD498 001FA3F8 C0 E6 00 60 */ lfs f7, 0x60(r6) +/* 801FD49C 001FA3FC 38 A1 00 2C */ addi r5, r1, 0x2c +/* 801FD4A0 001FA400 C0 C6 00 50 */ lfs f6, 0x50(r6) +/* 801FD4A4 001FA404 C0 26 00 40 */ lfs f1, 0x40(r6) +/* 801FD4A8 001FA408 EC 07 28 2A */ fadds f0, f7, f5 +/* 801FD4AC 001FA40C EC 66 28 2A */ fadds f3, f6, f5 +/* 801FD4B0 001FA410 EC 81 28 2A */ fadds f4, f1, f5 +/* 801FD4B4 001FA414 EC 41 28 28 */ fsubs f2, f1, f5 +/* 801FD4B8 001FA418 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801FD4BC 001FA41C EC 26 28 28 */ fsubs f1, f6, f5 +/* 801FD4C0 001FA420 EC 07 28 28 */ fsubs f0, f7, f5 +/* 801FD4C4 001FA424 D0 81 00 2C */ stfs f4, 0x2c(r1) +/* 801FD4C8 001FA428 D0 61 00 30 */ stfs f3, 0x30(r1) +/* 801FD4CC 001FA42C D0 41 00 38 */ stfs f2, 0x38(r1) +/* 801FD4D0 001FA430 D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 801FD4D4 001FA434 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 801FD4D8 001FA438 48 13 B0 31 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801FD4DC 001FA43C 88 1E 06 A0 */ lbz r0, 0x6a0(r30) +/* 801FD4E0 001FA440 38 C0 00 00 */ li r6, 0 +/* 801FD4E4 001FA444 50 C0 0F BC */ rlwimi r0, r6, 1, 0x1e, 0x1e +/* 801FD4E8 001FA448 38 60 00 00 */ li r3, 0 +/* 801FD4EC 001FA44C 98 1E 06 A0 */ stb r0, 0x6a0(r30) +/* 801FD4F0 001FA450 38 80 00 01 */ li r4, 1 +/* 801FD4F4 001FA454 80 AD 92 E0 */ lwz r5, lbl_805A7EA0@sda21(r13) +/* 801FD4F8 001FA458 90 C1 00 A8 */ stw r6, 0xa8(r1) +/* 801FD4FC 001FA45C 48 18 C9 F9 */ bl __shl2i +/* 801FD500 001FA460 39 00 00 00 */ li r8, 0 +/* 801FD504 001FA464 38 00 00 01 */ li r0, 1 +/* 801FD508 001FA468 90 81 00 7C */ stw r4, 0x7c(r1) +/* 801FD50C 001FA46C 38 81 00 A8 */ addi r4, r1, 0xa8 +/* 801FD510 001FA470 38 A1 00 90 */ addi r5, r1, 0x90 +/* 801FD514 001FA474 38 C1 00 78 */ addi r6, r1, 0x78 +/* 801FD518 001FA478 90 61 00 78 */ stw r3, 0x78(r1) +/* 801FD51C 001FA47C 7F E3 FB 78 */ mr r3, r31 +/* 801FD520 001FA480 38 E0 00 00 */ li r7, 0 +/* 801FD524 001FA484 91 01 00 84 */ stw r8, 0x84(r1) +/* 801FD528 001FA488 91 01 00 80 */ stw r8, 0x80(r1) +/* 801FD52C 001FA48C 90 01 00 88 */ stw r0, 0x88(r1) +/* 801FD530 001FA490 4B E4 F1 F1 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" +/* 801FD534 001FA494 3B A1 00 AC */ addi r29, r1, 0xac +/* 801FD538 001FA498 3B 80 00 00 */ li r28, 0 +/* 801FD53C 001FA49C 48 00 01 7C */ b lbl_801FD6B8 +lbl_801FD540: +/* 801FD540 001FA4A0 A0 1D 00 00 */ lhz r0, 0(r29) +/* 801FD544 001FA4A4 7F E3 FB 78 */ mr r3, r31 +/* 801FD548 001FA4A8 38 81 00 08 */ addi r4, r1, 8 +/* 801FD54C 001FA4AC B0 01 00 08 */ sth r0, 8(r1) +/* 801FD550 001FA4B0 4B E4 F0 55 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801FD554 001FA4B4 7C 64 1B 78 */ mr r4, r3 +/* 801FD558 001FA4B8 38 61 00 0C */ addi r3, r1, 0xc +/* 801FD55C 001FA4BC 4B EB 01 B1 */ bl "__ct__29TCastToPtr<15CGameProjectile>FP7CEntity" +/* 801FD560 001FA4C0 83 63 00 04 */ lwz r27, 4(r3) +/* 801FD564 001FA4C4 28 1B 00 00 */ cmplwi r27, 0 +/* 801FD568 001FA4C8 41 82 01 48 */ beq lbl_801FD6B0 +/* 801FD56C 001FA4CC C3 BB 00 60 */ lfs f29, 0x60(r27) +/* 801FD570 001FA4D0 7F C4 F3 78 */ mr r4, r30 +/* 801FD574 001FA4D4 C3 DB 00 50 */ lfs f30, 0x50(r27) +/* 801FD578 001FA4D8 38 61 00 5C */ addi r3, r1, 0x5c +/* 801FD57C 001FA4DC C3 FB 00 40 */ lfs f31, 0x40(r27) +/* 801FD580 001FA4E0 4B F1 D3 AD */ bl GetBoundingBox__13CPhysicsActorCFv +/* 801FD584 001FA4E4 38 61 00 20 */ addi r3, r1, 0x20 +/* 801FD588 001FA4E8 38 81 00 5C */ addi r4, r1, 0x5c +/* 801FD58C 001FA4EC 48 13 A0 81 */ bl GetCenterPoint__6CAABoxCFv +/* 801FD590 001FA4F0 C0 41 00 24 */ lfs f2, 0x24(r1) +/* 801FD594 001FA4F4 38 61 00 50 */ addi r3, r1, 0x50 +/* 801FD598 001FA4F8 C0 21 00 28 */ lfs f1, 0x28(r1) +/* 801FD59C 001FA4FC C0 01 00 20 */ lfs f0, 0x20(r1) +/* 801FD5A0 001FA500 EC 42 F0 28 */ fsubs f2, f2, f30 +/* 801FD5A4 001FA504 EC 21 E8 28 */ fsubs f1, f1, f29 +/* 801FD5A8 001FA508 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 801FD5AC 001FA50C D0 41 00 54 */ stfs f2, 0x54(r1) +/* 801FD5B0 001FA510 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 801FD5B4 001FA514 D0 21 00 58 */ stfs f1, 0x58(r1) +/* 801FD5B8 001FA518 48 11 71 D5 */ bl IsMagnitudeSafe__9CVector3fCFv +/* 801FD5BC 001FA51C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801FD5C0 001FA520 41 82 00 D4 */ beq lbl_801FD694 +/* 801FD5C4 001FA524 C0 9E 00 48 */ lfs f4, 0x48(r30) +/* 801FD5C8 001FA528 C0 01 00 54 */ lfs f0, 0x54(r1) +/* 801FD5CC 001FA52C C0 7E 00 38 */ lfs f3, 0x38(r30) +/* 801FD5D0 001FA530 EC 04 00 32 */ fmuls f0, f4, f0 +/* 801FD5D4 001FA534 C0 21 00 50 */ lfs f1, 0x50(r1) +/* 801FD5D8 001FA538 C0 BE 00 58 */ lfs f5, 0x58(r30) +/* 801FD5DC 001FA53C C0 41 00 58 */ lfs f2, 0x58(r1) +/* 801FD5E0 001FA540 EC 23 00 7A */ fmadds f1, f3, f1, f0 +/* 801FD5E4 001FA544 C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801FD5E8 001FA548 D0 61 00 14 */ stfs f3, 0x14(r1) +/* 801FD5EC 001FA54C EC 25 08 BA */ fmadds f1, f5, f2, f1 +/* 801FD5F0 001FA550 D0 81 00 18 */ stfs f4, 0x18(r1) +/* 801FD5F4 001FA554 D0 A1 00 1C */ stfs f5, 0x1c(r1) +/* 801FD5F8 001FA558 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801FD5FC 001FA55C 40 80 00 A8 */ bge lbl_801FD6A4 +/* 801FD600 001FA560 38 61 00 50 */ addi r3, r1, 0x50 +/* 801FD604 001FA564 48 11 72 F5 */ bl Normalize__9CVector3fFv +/* 801FD608 001FA568 C0 3B 00 50 */ lfs f1, 0x50(r27) +/* 801FD60C 001FA56C 38 61 00 44 */ addi r3, r1, 0x44 +/* 801FD610 001FA570 C0 1B 02 9C */ lfs f0, 0x29c(r27) +/* 801FD614 001FA574 C0 7B 00 60 */ lfs f3, 0x60(r27) +/* 801FD618 001FA578 C0 5B 02 A0 */ lfs f2, 0x2a0(r27) +/* 801FD61C 001FA57C EC 81 00 28 */ fsubs f4, f1, f0 +/* 801FD620 001FA580 C0 3B 00 40 */ lfs f1, 0x40(r27) +/* 801FD624 001FA584 C0 1B 02 98 */ lfs f0, 0x298(r27) +/* 801FD628 001FA588 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801FD62C 001FA58C EC 01 00 28 */ fsubs f0, f1, f0 +/* 801FD630 001FA590 D0 81 00 48 */ stfs f4, 0x48(r1) +/* 801FD634 001FA594 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 801FD638 001FA598 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 801FD63C 001FA59C 48 11 71 51 */ bl IsMagnitudeSafe__9CVector3fCFv +/* 801FD640 001FA5A0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801FD644 001FA5A4 41 82 00 60 */ beq lbl_801FD6A4 +/* 801FD648 001FA5A8 38 61 00 44 */ addi r3, r1, 0x44 +/* 801FD64C 001FA5AC 48 11 72 AD */ bl Normalize__9CVector3fFv +/* 801FD650 001FA5B0 C0 21 00 48 */ lfs f1, 0x48(r1) +/* 801FD654 001FA5B4 C0 01 00 54 */ lfs f0, 0x54(r1) +/* 801FD658 001FA5B8 C0 41 00 44 */ lfs f2, 0x44(r1) +/* 801FD65C 001FA5BC EC 01 00 32 */ fmuls f0, f1, f0 +/* 801FD660 001FA5C0 C0 21 00 50 */ lfs f1, 0x50(r1) +/* 801FD664 001FA5C4 C0 81 00 4C */ lfs f4, 0x4c(r1) +/* 801FD668 001FA5C8 C0 61 00 58 */ lfs f3, 0x58(r1) +/* 801FD66C 001FA5CC EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 801FD670 001FA5D0 C0 02 AF F4 */ lfs f0, lbl_805ACD14@sda21(r2) +/* 801FD674 001FA5D4 EC 24 08 FA */ fmadds f1, f4, f3, f1 +/* 801FD678 001FA5D8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801FD67C 001FA5DC 40 81 00 28 */ ble lbl_801FD6A4 +/* 801FD680 001FA5E0 88 1E 06 A0 */ lbz r0, 0x6a0(r30) +/* 801FD684 001FA5E4 38 60 00 01 */ li r3, 1 +/* 801FD688 001FA5E8 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 801FD68C 001FA5EC 98 1E 06 A0 */ stb r0, 0x6a0(r30) +/* 801FD690 001FA5F0 48 00 00 14 */ b lbl_801FD6A4 +lbl_801FD694: +/* 801FD694 001FA5F4 88 1E 06 A0 */ lbz r0, 0x6a0(r30) +/* 801FD698 001FA5F8 38 60 00 01 */ li r3, 1 +/* 801FD69C 001FA5FC 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 801FD6A0 001FA600 98 1E 06 A0 */ stb r0, 0x6a0(r30) +lbl_801FD6A4: +/* 801FD6A4 001FA604 88 1E 06 A0 */ lbz r0, 0x6a0(r30) +/* 801FD6A8 001FA608 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 801FD6AC 001FA60C 40 82 00 18 */ bne lbl_801FD6C4 +lbl_801FD6B0: +/* 801FD6B0 001FA610 3B BD 00 02 */ addi r29, r29, 2 +/* 801FD6B4 001FA614 3B 9C 00 01 */ addi r28, r28, 1 +lbl_801FD6B8: +/* 801FD6B8 001FA618 80 01 00 A8 */ lwz r0, 0xa8(r1) +/* 801FD6BC 001FA61C 7C 1C 00 00 */ cmpw r28, r0 +/* 801FD6C0 001FA620 41 80 FE 80 */ blt lbl_801FD540 +lbl_801FD6C4: +/* 801FD6C4 001FA624 38 60 00 00 */ li r3, 0 +/* 801FD6C8 001FA628 88 1E 06 A0 */ lbz r0, 0x6a0(r30) +/* 801FD6CC 001FA62C 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801FD6D0 001FA630 98 1E 06 A0 */ stb r0, 0x6a0(r30) +/* 801FD6D4 001FA634 80 A1 00 A8 */ lwz r5, 0xa8(r1) +/* 801FD6D8 001FA638 2C 05 00 00 */ cmpwi r5, 0 +/* 801FD6DC 001FA63C 40 81 00 40 */ ble lbl_801FD71C +/* 801FD6E0 001FA640 2C 05 00 08 */ cmpwi r5, 8 +/* 801FD6E4 001FA644 38 85 FF F8 */ addi r4, r5, -8 +/* 801FD6E8 001FA648 40 81 00 20 */ ble lbl_801FD708 +/* 801FD6EC 001FA64C 38 04 00 07 */ addi r0, r4, 7 +/* 801FD6F0 001FA650 54 00 E8 FE */ srwi r0, r0, 3 +/* 801FD6F4 001FA654 7C 09 03 A6 */ mtctr r0 +/* 801FD6F8 001FA658 2C 04 00 00 */ cmpwi r4, 0 +/* 801FD6FC 001FA65C 40 81 00 0C */ ble lbl_801FD708 +lbl_801FD700: +/* 801FD700 001FA660 38 63 00 08 */ addi r3, r3, 8 +/* 801FD704 001FA664 42 00 FF FC */ bdnz lbl_801FD700 +lbl_801FD708: +/* 801FD708 001FA668 7C 03 28 50 */ subf r0, r3, r5 +/* 801FD70C 001FA66C 7C 09 03 A6 */ mtctr r0 +/* 801FD710 001FA670 7C 03 28 00 */ cmpw r3, r5 +/* 801FD714 001FA674 40 80 00 08 */ bge lbl_801FD71C +lbl_801FD718: +/* 801FD718 001FA678 42 00 00 00 */ bdnz lbl_801FD718 +lbl_801FD71C: +/* 801FD71C 001FA67C 38 00 00 00 */ li r0, 0 +/* 801FD720 001FA680 90 01 00 A8 */ stw r0, 0xa8(r1) +lbl_801FD724: +/* 801FD724 001FA684 E3 E1 08 F8 */ psq_l f31, -1800(r1), 0, qr0 +/* 801FD728 001FA688 CB E1 08 F0 */ lfd f31, 0x8f0(r1) +/* 801FD72C 001FA68C E3 C1 08 E8 */ psq_l f30, -1816(r1), 0, qr0 +/* 801FD730 001FA690 CB C1 08 E0 */ lfd f30, 0x8e0(r1) +/* 801FD734 001FA694 E3 A1 08 D8 */ psq_l f29, -1832(r1), 0, qr0 +/* 801FD738 001FA698 CB A1 08 D0 */ lfd f29, 0x8d0(r1) +/* 801FD73C 001FA69C BB 61 08 BC */ lmw r27, 0x8bc(r1) +/* 801FD740 001FA6A0 80 01 09 04 */ lwz r0, 0x904(r1) +/* 801FD744 001FA6A4 7C 08 03 A6 */ mtlr r0 +/* 801FD748 001FA6A8 38 21 09 00 */ addi r1, r1, 0x900 +/* 801FD74C 001FA6AC 4E 80 00 20 */ blr + +.global sub_801fd750 +sub_801fd750: +/* 801FD750 001FA6B0 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801FD754 001FA6B4 7C 08 02 A6 */ mflr r0 +/* 801FD758 001FA6B8 90 01 00 34 */ stw r0, 0x34(r1) +/* 801FD75C 001FA6BC 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801FD760 001FA6C0 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801FD764 001FA6C4 7C 7E 1B 78 */ mr r30, r3 +/* 801FD768 001FA6C8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801FD76C 001FA6CC A0 63 08 90 */ lhz r3, 0x890(r3) +/* 801FD770 001FA6D0 7C 03 00 40 */ cmplw r3, r0 +/* 801FD774 001FA6D4 41 82 00 70 */ beq lbl_801FD7E4 +/* 801FD778 001FA6D8 A0 1E 08 90 */ lhz r0, 0x890(r30) +/* 801FD77C 001FA6DC 7C 83 23 78 */ mr r3, r4 +/* 801FD780 001FA6E0 38 81 00 18 */ addi r4, r1, 0x18 +/* 801FD784 001FA6E4 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801FD788 001FA6E8 4B E4 ED ED */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801FD78C 001FA6EC 7C 64 1B 78 */ mr r4, r3 +/* 801FD790 001FA6F0 38 61 00 1C */ addi r3, r1, 0x1c +/* 801FD794 001FA6F4 4B EA 9D E1 */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" +/* 801FD798 001FA6F8 83 E3 00 04 */ lwz r31, 4(r3) +/* 801FD79C 001FA6FC 28 1F 00 00 */ cmplwi r31, 0 +/* 801FD7A0 001FA700 41 82 00 44 */ beq lbl_801FD7E4 +/* 801FD7A4 001FA704 A0 1E 00 08 */ lhz r0, 8(r30) +/* 801FD7A8 001FA708 7F E3 FB 78 */ mr r3, r31 +/* 801FD7AC 001FA70C 38 81 00 14 */ addi r4, r1, 0x14 +/* 801FD7B0 001FA710 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801FD7B4 001FA714 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801FD7B8 001FA718 48 03 B8 39 */ bl IsPartOfTeam__10CTeamAiMgrCF9TUniqueId +/* 801FD7BC 001FA71C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801FD7C0 001FA720 41 82 00 24 */ beq lbl_801FD7E4 +/* 801FD7C4 001FA724 A0 1E 00 08 */ lhz r0, 8(r30) +/* 801FD7C8 001FA728 7F E3 FB 78 */ mr r3, r31 +/* 801FD7CC 001FA72C 38 81 00 0C */ addi r4, r1, 0xc +/* 801FD7D0 001FA730 B0 01 00 08 */ sth r0, 8(r1) +/* 801FD7D4 001FA734 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801FD7D8 001FA738 48 03 BD 1D */ bl RemoveTeamAiRole__10CTeamAiMgrF9TUniqueId +/* 801FD7DC 001FA73C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801FD7E0 001FA740 B0 1E 08 90 */ sth r0, 0x890(r30) +lbl_801FD7E4: +/* 801FD7E4 001FA744 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801FD7E8 001FA748 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801FD7EC 001FA74C 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801FD7F0 001FA750 7C 08 03 A6 */ mtlr r0 +/* 801FD7F4 001FA754 38 21 00 30 */ addi r1, r1, 0x30 +/* 801FD7F8 001FA758 4E 80 00 20 */ blr + +.global sub_801fd7fc +sub_801fd7fc: +/* 801FD7FC 001FA75C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801FD800 001FA760 7C 08 02 A6 */ mflr r0 +/* 801FD804 001FA764 90 01 00 24 */ stw r0, 0x24(r1) +/* 801FD808 001FA768 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801FD80C 001FA76C 7C 9F 23 78 */ mr r31, r4 +/* 801FD810 001FA770 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801FD814 001FA774 7C 7E 1B 78 */ mr r30, r3 +/* 801FD818 001FA778 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801FD81C 001FA77C A0 63 08 90 */ lhz r3, 0x890(r3) +/* 801FD820 001FA780 7C 03 00 40 */ cmplw r3, r0 +/* 801FD824 001FA784 40 82 00 1C */ bne lbl_801FD840 +/* 801FD828 001FA788 7F C4 F3 78 */ mr r4, r30 +/* 801FD82C 001FA78C 7F E5 FB 78 */ mr r5, r31 +/* 801FD830 001FA790 38 61 00 0C */ addi r3, r1, 0xc +/* 801FD834 001FA794 48 03 C9 B5 */ bl GetTeamAiMgr__10CTeamAiMgrF3CAiRC13CStateManager +/* 801FD838 001FA798 A0 01 00 0C */ lhz r0, 0xc(r1) +/* 801FD83C 001FA79C B0 1E 08 90 */ sth r0, 0x890(r30) +lbl_801FD840: +/* 801FD840 001FA7A0 A0 7E 08 90 */ lhz r3, 0x890(r30) +/* 801FD844 001FA7A4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801FD848 001FA7A8 7C 03 00 40 */ cmplw r3, r0 +/* 801FD84C 001FA7AC 41 82 00 44 */ beq lbl_801FD890 +/* 801FD850 001FA7B0 A0 1E 08 90 */ lhz r0, 0x890(r30) +/* 801FD854 001FA7B4 7F E3 FB 78 */ mr r3, r31 +/* 801FD858 001FA7B8 38 81 00 08 */ addi r4, r1, 8 +/* 801FD85C 001FA7BC B0 01 00 08 */ sth r0, 8(r1) +/* 801FD860 001FA7C0 4B E4 ED 15 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801FD864 001FA7C4 7C 64 1B 78 */ mr r4, r3 +/* 801FD868 001FA7C8 38 61 00 10 */ addi r3, r1, 0x10 +/* 801FD86C 001FA7CC 4B EA 9D 09 */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" +/* 801FD870 001FA7D0 80 63 00 04 */ lwz r3, 4(r3) +/* 801FD874 001FA7D4 28 03 00 00 */ cmplwi r3, 0 +/* 801FD878 001FA7D8 41 82 00 18 */ beq lbl_801FD890 +/* 801FD87C 001FA7DC 7F C4 F3 78 */ mr r4, r30 +/* 801FD880 001FA7E0 38 A0 00 02 */ li r5, 2 +/* 801FD884 001FA7E4 38 C0 00 03 */ li r6, 3 +/* 801FD888 001FA7E8 38 E0 FF FF */ li r7, -1 +/* 801FD88C 001FA7EC 48 03 BF 21 */ bl AssignTeamAiRole__10CTeamAiMgrFRC3CAiiii +lbl_801FD890: +/* 801FD890 001FA7F0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801FD894 001FA7F4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801FD898 001FA7F8 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801FD89C 001FA7FC 7C 08 03 A6 */ mtlr r0 +/* 801FD8A0 001FA800 38 21 00 20 */ addi r1, r1, 0x20 +/* 801FD8A4 001FA804 4E 80 00 20 */ blr + +.global GetOrigin__13CFlyingPirateCFv +GetOrigin__13CFlyingPirateCFv: +/* 801FD8A8 001FA808 C0 44 00 60 */ lfs f2, 0x60(r4) +/* 801FD8AC 001FA80C C0 24 00 50 */ lfs f1, 0x50(r4) +/* 801FD8B0 001FA810 C0 04 00 40 */ lfs f0, 0x40(r4) +/* 801FD8B4 001FA814 D0 03 00 00 */ stfs f0, 0(r3) +/* 801FD8B8 001FA818 D0 23 00 04 */ stfs f1, 4(r3) +/* 801FD8BC 001FA81C D0 43 00 08 */ stfs f2, 8(r3) +/* 801FD8C0 001FA820 4E 80 00 20 */ blr + +.global sub_801fd8c4 +sub_801fd8c4: +/* 801FD8C4 001FA824 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 801FD8C8 001FA828 7C 08 02 A6 */ mflr r0 +/* 801FD8CC 001FA82C 90 01 01 04 */ stw r0, 0x104(r1) +/* 801FD8D0 001FA830 DB E1 00 F0 */ stfd f31, 0xf0(r1) +/* 801FD8D4 001FA834 F3 E1 00 F8 */ psq_st f31, 248(r1), 0, qr0 +/* 801FD8D8 001FA838 93 E1 00 EC */ stw r31, 0xec(r1) +/* 801FD8DC 001FA83C 93 C1 00 E8 */ stw r30, 0xe8(r1) +/* 801FD8E0 001FA840 93 A1 00 E4 */ stw r29, 0xe4(r1) +/* 801FD8E4 001FA844 93 81 00 E0 */ stw r28, 0xe0(r1) +/* 801FD8E8 001FA848 54 A0 06 3F */ clrlwi. r0, r5, 0x18 +/* 801FD8EC 001FA84C 7C 7E 1B 78 */ mr r30, r3 +/* 801FD8F0 001FA850 7C 9F 23 78 */ mr r31, r4 +/* 801FD8F4 001FA854 41 82 02 78 */ beq lbl_801FDB6C +/* 801FD8F8 001FA858 80 1E 06 84 */ lwz r0, 0x684(r30) +/* 801FD8FC 001FA85C 2C 00 00 00 */ cmpwi r0, 0 +/* 801FD900 001FA860 41 82 02 4C */ beq lbl_801FDB4C +/* 801FD904 001FA864 C0 7E 00 60 */ lfs f3, 0x60(r30) +/* 801FD908 001FA868 38 A1 00 08 */ addi r5, r1, 8 +/* 801FD90C 001FA86C C0 02 AF E4 */ lfs f0, lbl_805ACD04@sda21(r2) +/* 801FD910 001FA870 C0 5E 00 50 */ lfs f2, 0x50(r30) +/* 801FD914 001FA874 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 801FD918 001FA878 EF E3 00 28 */ fsubs f31, f3, f0 +/* 801FD91C 001FA87C A0 1E 06 A4 */ lhz r0, 0x6a4(r30) +/* 801FD920 001FA880 D0 21 00 54 */ stfs f1, 0x54(r1) +/* 801FD924 001FA884 D0 41 00 58 */ stfs f2, 0x58(r1) +/* 801FD928 001FA888 D0 61 00 5C */ stfs f3, 0x5c(r1) +/* 801FD92C 001FA88C B0 01 00 08 */ sth r0, 8(r1) +/* 801FD930 001FA890 4B E7 EF 7D */ bl GetCoverPoint__10CPatternedCFR13CStateManager9TUniqueId +/* 801FD934 001FA894 28 03 00 00 */ cmplwi r3, 0 +/* 801FD938 001FA898 41 82 00 24 */ beq lbl_801FD95C +/* 801FD93C 001FA89C C0 63 00 60 */ lfs f3, 0x60(r3) +/* 801FD940 001FA8A0 C0 02 AF 78 */ lfs f0, lbl_805ACC98@sda21(r2) +/* 801FD944 001FA8A4 C0 43 00 50 */ lfs f2, 0x50(r3) +/* 801FD948 001FA8A8 C0 23 00 40 */ lfs f1, 0x40(r3) +/* 801FD94C 001FA8AC EF E3 00 28 */ fsubs f31, f3, f0 +/* 801FD950 001FA8B0 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 801FD954 001FA8B4 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 801FD958 001FA8B8 D0 61 00 50 */ stfs f3, 0x50(r1) +lbl_801FD95C: +/* 801FD95C 001FA8BC 80 AD 92 DC */ lwz r5, lbl_805A7E9C@sda21(r13) +/* 801FD960 001FA8C0 38 60 00 00 */ li r3, 0 +/* 801FD964 001FA8C4 38 80 00 01 */ li r4, 1 +/* 801FD968 001FA8C8 48 18 C5 8D */ bl __shl2i +/* 801FD96C 001FA8CC 39 00 00 00 */ li r8, 0 +/* 801FD970 001FA8D0 38 00 00 01 */ li r0, 1 +/* 801FD974 001FA8D4 90 81 00 64 */ stw r4, 0x64(r1) +/* 801FD978 001FA8D8 3C 80 80 5A */ lis r4, lbl_805A6700@ha +/* 801FD97C 001FA8DC 38 C4 67 00 */ addi r6, r4, lbl_805A6700@l +/* 801FD980 001FA8E0 38 A1 00 3C */ addi r5, r1, 0x3c +/* 801FD984 001FA8E4 90 61 00 60 */ stw r3, 0x60(r1) +/* 801FD988 001FA8E8 7F E4 FB 78 */ mr r4, r31 +/* 801FD98C 001FA8EC 38 61 00 78 */ addi r3, r1, 0x78 +/* 801FD990 001FA8F0 38 E1 00 60 */ addi r7, r1, 0x60 +/* 801FD994 001FA8F4 91 01 00 6C */ stw r8, 0x6c(r1) +/* 801FD998 001FA8F8 91 01 00 68 */ stw r8, 0x68(r1) +/* 801FD99C 001FA8FC 90 01 00 70 */ stw r0, 0x70(r1) +/* 801FD9A0 001FA900 C0 7E 00 60 */ lfs f3, 0x60(r30) +/* 801FD9A4 001FA904 C0 5E 00 50 */ lfs f2, 0x50(r30) +/* 801FD9A8 001FA908 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801FD9AC 001FA90C EC 23 F8 28 */ fsubs f1, f3, f31 +/* 801FD9B0 001FA910 D0 41 00 34 */ stfs f2, 0x34(r1) +/* 801FD9B4 001FA914 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801FD9B8 001FA918 D0 61 00 38 */ stfs f3, 0x38(r1) +/* 801FD9BC 001FA91C D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 801FD9C0 001FA920 D0 41 00 40 */ stfs f2, 0x40(r1) +/* 801FD9C4 001FA924 D0 61 00 44 */ stfs f3, 0x44(r1) +/* 801FD9C8 001FA928 4B E4 F5 D1 */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter +/* 801FD9CC 001FA92C 88 61 00 98 */ lbz r3, 0x98(r1) +/* 801FD9D0 001FA930 38 00 00 01 */ li r0, 1 +/* 801FD9D4 001FA934 C0 E1 00 78 */ lfs f7, 0x78(r1) +/* 801FD9D8 001FA938 C0 C1 00 7C */ lfs f6, 0x7c(r1) +/* 801FD9DC 001FA93C 28 03 00 00 */ cmplwi r3, 0 +/* 801FD9E0 001FA940 C0 A1 00 80 */ lfs f5, 0x80(r1) +/* 801FD9E4 001FA944 C0 81 00 84 */ lfs f4, 0x84(r1) +/* 801FD9E8 001FA948 C0 61 00 88 */ lfs f3, 0x88(r1) +/* 801FD9EC 001FA94C C0 41 00 8C */ lfs f2, 0x8c(r1) +/* 801FD9F0 001FA950 C0 21 00 90 */ lfs f1, 0x90(r1) +/* 801FD9F4 001FA954 C0 01 00 94 */ lfs f0, 0x94(r1) +/* 801FD9F8 001FA958 80 A1 00 A0 */ lwz r5, 0xa0(r1) +/* 801FD9FC 001FA95C 80 E1 00 A4 */ lwz r7, 0xa4(r1) +/* 801FDA00 001FA960 D0 E1 00 A8 */ stfs f7, 0xa8(r1) +/* 801FDA04 001FA964 D0 C1 00 AC */ stfs f6, 0xac(r1) +/* 801FDA08 001FA968 D0 A1 00 B0 */ stfs f5, 0xb0(r1) +/* 801FDA0C 001FA96C D0 81 00 B4 */ stfs f4, 0xb4(r1) +/* 801FDA10 001FA970 D0 61 00 B8 */ stfs f3, 0xb8(r1) +/* 801FDA14 001FA974 D0 41 00 BC */ stfs f2, 0xbc(r1) +/* 801FDA18 001FA978 D0 21 00 C0 */ stfs f1, 0xc0(r1) +/* 801FDA1C 001FA97C D0 01 00 C4 */ stfs f0, 0xc4(r1) +/* 801FDA20 001FA980 98 61 00 C8 */ stb r3, 0xc8(r1) +/* 801FDA24 001FA984 90 E1 00 D4 */ stw r7, 0xd4(r1) +/* 801FDA28 001FA988 90 A1 00 D0 */ stw r5, 0xd0(r1) +/* 801FDA2C 001FA98C 41 82 00 C4 */ beq lbl_801FDAF0 +/* 801FDA30 001FA990 38 60 00 10 */ li r3, 0x10 +/* 801FDA34 001FA994 38 C0 00 00 */ li r6, 0 +/* 801FDA38 001FA998 7C E4 18 38 */ and r4, r7, r3 +/* 801FDA3C 001FA99C 7C A3 30 38 */ and r3, r5, r6 +/* 801FDA40 001FA9A0 7C 84 32 78 */ xor r4, r4, r6 +/* 801FDA44 001FA9A4 7C 63 32 78 */ xor r3, r3, r6 +/* 801FDA48 001FA9A8 7C 83 1B 79 */ or. r3, r4, r3 +/* 801FDA4C 001FA9AC 41 82 00 08 */ beq lbl_801FDA54 +/* 801FDA50 001FA9B0 38 C0 00 01 */ li r6, 1 +lbl_801FDA54: +/* 801FDA54 001FA9B4 54 C3 06 3F */ clrlwi. r3, r6, 0x18 +/* 801FDA58 001FA9B8 40 82 00 24 */ bne lbl_801FDA7C +/* 801FDA5C 001FA9BC 38 60 08 00 */ li r3, 0x800 +/* 801FDA60 001FA9C0 38 C0 00 00 */ li r6, 0 +/* 801FDA64 001FA9C4 7C E3 18 38 */ and r3, r7, r3 +/* 801FDA68 001FA9C8 7C A5 30 38 */ and r5, r5, r6 +/* 801FDA6C 001FA9CC 7C 64 32 78 */ xor r4, r3, r6 +/* 801FDA70 001FA9D0 7C A3 32 78 */ xor r3, r5, r6 +/* 801FDA74 001FA9D4 7C 83 1B 79 */ or. r3, r4, r3 +/* 801FDA78 001FA9D8 41 82 00 0C */ beq lbl_801FDA84 +lbl_801FDA7C: +/* 801FDA7C 001FA9DC 38 00 00 02 */ li r0, 2 +/* 801FDA80 001FA9E0 48 00 00 50 */ b lbl_801FDAD0 +lbl_801FDA84: +/* 801FDA84 001FA9E4 38 80 01 00 */ li r4, 0x100 +/* 801FDA88 001FA9E8 7C A3 32 78 */ xor r3, r5, r6 +/* 801FDA8C 001FA9EC 7C E4 20 38 */ and r4, r7, r4 +/* 801FDA90 001FA9F0 7C 84 32 78 */ xor r4, r4, r6 +/* 801FDA94 001FA9F4 7C 83 1B 79 */ or. r3, r4, r3 +/* 801FDA98 001FA9F8 40 82 00 34 */ bne lbl_801FDACC +/* 801FDA9C 001FA9FC 38 80 10 00 */ li r4, 0x1000 +/* 801FDAA0 001FAA00 7C A3 32 78 */ xor r3, r5, r6 +/* 801FDAA4 001FAA04 7C E4 20 38 */ and r4, r7, r4 +/* 801FDAA8 001FAA08 7C 84 32 78 */ xor r4, r4, r6 +/* 801FDAAC 001FAA0C 7C 83 1B 79 */ or. r3, r4, r3 +/* 801FDAB0 001FAA10 40 82 00 1C */ bne lbl_801FDACC +/* 801FDAB4 001FAA14 3C 80 00 02 */ lis r4, 2 +/* 801FDAB8 001FAA18 7C A3 32 78 */ xor r3, r5, r6 +/* 801FDABC 001FAA1C 7C E4 20 38 */ and r4, r7, r4 +/* 801FDAC0 001FAA20 7C 84 32 78 */ xor r4, r4, r6 +/* 801FDAC4 001FAA24 7C 83 1B 79 */ or. r3, r4, r3 +/* 801FDAC8 001FAA28 41 82 00 08 */ beq lbl_801FDAD0 +lbl_801FDACC: +/* 801FDACC 001FAA2C 38 00 00 00 */ li r0, 0 +lbl_801FDAD0: +/* 801FDAD0 001FAA30 C0 7E 00 60 */ lfs f3, 0x60(r30) +/* 801FDAD4 001FAA34 C0 01 00 A8 */ lfs f0, 0xa8(r1) +/* 801FDAD8 001FAA38 C0 5E 00 50 */ lfs f2, 0x50(r30) +/* 801FDADC 001FAA3C C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 801FDAE0 001FAA40 EF E3 00 28 */ fsubs f31, f3, f0 +/* 801FDAE4 001FAA44 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 801FDAE8 001FAA48 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 801FDAEC 001FAA4C D0 61 00 2C */ stfs f3, 0x2c(r1) +lbl_801FDAF0: +/* 801FDAF0 001FAA50 54 00 18 38 */ slwi r0, r0, 3 +/* 801FDAF4 001FAA54 38 80 00 01 */ li r4, 1 +/* 801FDAF8 001FAA58 7F BE 02 14 */ add r29, r30, r0 +/* 801FDAFC 001FAA5C 80 7D 06 8C */ lwz r3, 0x68c(r29) +/* 801FDB00 001FAA60 81 83 00 00 */ lwz r12, 0(r3) +/* 801FDB04 001FAA64 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801FDB08 001FAA68 7D 89 03 A6 */ mtctr r12 +/* 801FDB0C 001FAA6C 4E 80 04 21 */ bctrl +/* 801FDB10 001FAA70 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 801FDB14 001FAA74 38 81 00 18 */ addi r4, r1, 0x18 +/* 801FDB18 001FAA78 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 801FDB1C 001FAA7C C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801FDB20 001FAA80 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 801FDB24 001FAA84 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801FDB28 001FAA88 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 801FDB2C 001FAA8C D3 E1 00 20 */ stfs f31, 0x20(r1) +/* 801FDB30 001FAA90 80 7D 06 8C */ lwz r3, 0x68c(r29) +/* 801FDB34 001FAA94 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801FDB38 001FAA98 81 83 00 00 */ lwz r12, 0(r3) +/* 801FDB3C 001FAA9C D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801FDB40 001FAAA0 81 8C 00 18 */ lwz r12, 0x18(r12) +/* 801FDB44 001FAAA4 7D 89 03 A6 */ mtctr r12 +/* 801FDB48 001FAAA8 4E 80 04 21 */ bctrl +lbl_801FDB4C: +/* 801FDB4C 001FAAAC 80 BE 00 64 */ lwz r5, 0x64(r30) +/* 801FDB50 001FAAB0 3C 60 80 57 */ lis r3, lbl_80572108@ha +/* 801FDB54 001FAAB4 38 83 21 08 */ addi r4, r3, lbl_80572108@l +/* 801FDB58 001FAAB8 7F E6 FB 78 */ mr r6, r31 +/* 801FDB5C 001FAABC 80 65 00 10 */ lwz r3, 0x10(r5) +/* 801FDB60 001FAAC0 38 A0 00 01 */ li r5, 1 +/* 801FDB64 001FAAC4 4B E2 D2 5D */ bl SetParticleEffectState__9CAnimDataFQ24rstl6stringbR13CStateManager +/* 801FDB68 001FAAC8 48 00 00 58 */ b lbl_801FDBC0 +lbl_801FDB6C: +/* 801FDB6C 001FAACC 3B BE 06 88 */ addi r29, r30, 0x688 +/* 801FDB70 001FAAD0 3B 80 00 00 */ li r28, 0 +/* 801FDB74 001FAAD4 48 00 00 24 */ b lbl_801FDB98 +lbl_801FDB78: +/* 801FDB78 001FAAD8 80 7D 00 04 */ lwz r3, 4(r29) +/* 801FDB7C 001FAADC 38 80 00 00 */ li r4, 0 +/* 801FDB80 001FAAE0 81 83 00 00 */ lwz r12, 0(r3) +/* 801FDB84 001FAAE4 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801FDB88 001FAAE8 7D 89 03 A6 */ mtctr r12 +/* 801FDB8C 001FAAEC 4E 80 04 21 */ bctrl +/* 801FDB90 001FAAF0 3B BD 00 08 */ addi r29, r29, 8 +/* 801FDB94 001FAAF4 3B 9C 00 01 */ addi r28, r28, 1 +lbl_801FDB98: +/* 801FDB98 001FAAF8 80 1E 06 84 */ lwz r0, 0x684(r30) +/* 801FDB9C 001FAAFC 7C 1C 00 00 */ cmpw r28, r0 +/* 801FDBA0 001FAB00 41 80 FF D8 */ blt lbl_801FDB78 +/* 801FDBA4 001FAB04 80 BE 00 64 */ lwz r5, 0x64(r30) +/* 801FDBA8 001FAB08 3C 60 80 57 */ lis r3, lbl_80572108@ha +/* 801FDBAC 001FAB0C 38 83 21 08 */ addi r4, r3, lbl_80572108@l +/* 801FDBB0 001FAB10 7F E6 FB 78 */ mr r6, r31 +/* 801FDBB4 001FAB14 80 65 00 10 */ lwz r3, 0x10(r5) +/* 801FDBB8 001FAB18 38 A0 00 00 */ li r5, 0 +/* 801FDBBC 001FAB1C 4B E2 D2 05 */ bl SetParticleEffectState__9CAnimDataFQ24rstl6stringbR13CStateManager +lbl_801FDBC0: +/* 801FDBC0 001FAB20 E3 E1 00 F8 */ psq_l f31, 248(r1), 0, qr0 +/* 801FDBC4 001FAB24 80 01 01 04 */ lwz r0, 0x104(r1) +/* 801FDBC8 001FAB28 CB E1 00 F0 */ lfd f31, 0xf0(r1) +/* 801FDBCC 001FAB2C 83 E1 00 EC */ lwz r31, 0xec(r1) +/* 801FDBD0 001FAB30 83 C1 00 E8 */ lwz r30, 0xe8(r1) +/* 801FDBD4 001FAB34 83 A1 00 E4 */ lwz r29, 0xe4(r1) +/* 801FDBD8 001FAB38 83 81 00 E0 */ lwz r28, 0xe0(r1) +/* 801FDBDC 001FAB3C 7C 08 03 A6 */ mtlr r0 +/* 801FDBE0 001FAB40 38 21 01 00 */ addi r1, r1, 0x100 +/* 801FDBE4 001FAB44 4E 80 00 20 */ blr + +.global sub_801fdbe8 +sub_801fdbe8: +/* 801FDBE8 001FAB48 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801FDBEC 001FAB4C 7C 08 02 A6 */ mflr r0 +/* 801FDBF0 001FAB50 90 01 00 34 */ stw r0, 0x34(r1) +/* 801FDBF4 001FAB54 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 801FDBF8 001FAB58 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 801FDBFC 001FAB5C BF 61 00 0C */ stmw r27, 0xc(r1) +/* 801FDC00 001FAB60 7C 7C 1B 78 */ mr r28, r3 +/* 801FDC04 001FAB64 3C 60 80 57 */ lis r3, lbl_80572078@ha +/* 801FDC08 001FAB68 88 1C 06 A0 */ lbz r0, 0x6a0(r28) +/* 801FDC0C 001FAB6C 3B 63 20 78 */ addi r27, r3, lbl_80572078@l +/* 801FDC10 001FAB70 80 7C 00 64 */ lwz r3, 0x64(r28) +/* 801FDC14 001FAB74 FF E0 08 90 */ fmr f31, f1 +/* 801FDC18 001FAB78 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801FDC1C 001FAB7C 7C 9D 23 78 */ mr r29, r4 +/* 801FDC20 001FAB80 83 E3 00 10 */ lwz r31, 0x10(r3) +/* 801FDC24 001FAB84 7C BE 2B 78 */ mr r30, r5 +/* 801FDC28 001FAB88 41 82 00 0C */ beq lbl_801FDC34 +/* 801FDC2C 001FAB8C 3C 60 80 57 */ lis r3, lbl_805720D8@ha +/* 801FDC30 001FAB90 3B 63 20 D8 */ addi r27, r3, lbl_805720D8@l +lbl_801FDC34: +/* 801FDC34 001FAB94 88 1C 06 A2 */ lbz r0, 0x6a2(r28) +/* 801FDC38 001FAB98 57 C3 06 3E */ clrlwi r3, r30, 0x18 +/* 801FDC3C 001FAB9C 54 00 DF FE */ rlwinm r0, r0, 0x1b, 0x1f, 0x1f +/* 801FDC40 001FABA0 7C 03 00 40 */ cmplw r3, r0 +/* 801FDC44 001FABA4 41 82 00 48 */ beq lbl_801FDC8C +/* 801FDC48 001FABA8 7F E3 FB 78 */ mr r3, r31 +/* 801FDC4C 001FABAC 7F 64 DB 78 */ mr r4, r27 +/* 801FDC50 001FABB0 7F C5 F3 78 */ mr r5, r30 +/* 801FDC54 001FABB4 7F A6 EB 78 */ mr r6, r29 +/* 801FDC58 001FABB8 4B E2 D1 69 */ bl SetParticleEffectState__9CAnimDataFQ24rstl6stringbR13CStateManager +/* 801FDC5C 001FABBC 88 1C 06 A0 */ lbz r0, 0x6a0(r28) +/* 801FDC60 001FABC0 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801FDC64 001FABC4 41 82 00 1C */ beq lbl_801FDC80 +/* 801FDC68 001FABC8 3C 80 80 57 */ lis r4, lbl_805720E8@ha +/* 801FDC6C 001FABCC 7F E3 FB 78 */ mr r3, r31 +/* 801FDC70 001FABD0 38 84 20 E8 */ addi r4, r4, lbl_805720E8@l +/* 801FDC74 001FABD4 7F C5 F3 78 */ mr r5, r30 +/* 801FDC78 001FABD8 7F A6 EB 78 */ mr r6, r29 +/* 801FDC7C 001FABDC 4B E2 D1 45 */ bl SetParticleEffectState__9CAnimDataFQ24rstl6stringbR13CStateManager +lbl_801FDC80: +/* 801FDC80 001FABE0 88 1C 06 A2 */ lbz r0, 0x6a2(r28) +/* 801FDC84 001FABE4 53 C0 2E B4 */ rlwimi r0, r30, 5, 0x1a, 0x1a +/* 801FDC88 001FABE8 98 1C 06 A2 */ stb r0, 0x6a2(r28) +lbl_801FDC8C: +/* 801FDC8C 001FABEC 57 C0 06 3F */ clrlwi. r0, r30, 0x18 +/* 801FDC90 001FABF0 41 82 00 3C */ beq lbl_801FDCCC +/* 801FDC94 001FABF4 C0 22 AF FC */ lfs f1, lbl_805ACD1C@sda21(r2) +/* 801FDC98 001FABF8 7F E3 FB 78 */ mr r3, r31 +/* 801FDC9C 001FABFC C0 02 AF F8 */ lfs f0, lbl_805ACD18@sda21(r2) +/* 801FDCA0 001FAC00 7F 64 DB 78 */ mr r4, r27 +/* 801FDCA4 001FAC04 38 A0 00 00 */ li r5, 0 +/* 801FDCA8 001FAC08 EC 21 07 FA */ fmadds f1, f1, f31, f0 +/* 801FDCAC 001FAC0C 4B E2 C8 91 */ bl "SetParticleCEXTValue__CAnimDataFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>if" +/* 801FDCB0 001FAC10 C0 22 B0 04 */ lfs f1, lbl_805ACD24@sda21(r2) +/* 801FDCB4 001FAC14 7F E3 FB 78 */ mr r3, r31 +/* 801FDCB8 001FAC18 C0 02 B0 00 */ lfs f0, lbl_805ACD20@sda21(r2) +/* 801FDCBC 001FAC1C 7F 64 DB 78 */ mr r4, r27 +/* 801FDCC0 001FAC20 38 A0 00 01 */ li r5, 1 +/* 801FDCC4 001FAC24 EC 21 07 FA */ fmadds f1, f1, f31, f0 +/* 801FDCC8 001FAC28 4B E2 C8 75 */ bl "SetParticleCEXTValue__CAnimDataFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>if" +lbl_801FDCCC: +/* 801FDCCC 001FAC2C 88 1C 06 A0 */ lbz r0, 0x6a0(r28) +/* 801FDCD0 001FAC30 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801FDCD4 001FAC34 40 82 00 54 */ bne lbl_801FDD28 +/* 801FDCD8 001FAC38 57 C0 06 3F */ clrlwi. r0, r30, 0x18 +/* 801FDCDC 001FAC3C 3B C0 00 00 */ li r30, 0 +/* 801FDCE0 001FAC40 41 82 00 14 */ beq lbl_801FDCF4 +/* 801FDCE4 001FAC44 C0 02 AF C8 */ lfs f0, lbl_805ACCE8@sda21(r2) +/* 801FDCE8 001FAC48 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 801FDCEC 001FAC4C 40 81 00 08 */ ble lbl_801FDCF4 +/* 801FDCF0 001FAC50 3B C0 00 01 */ li r30, 1 +lbl_801FDCF4: +/* 801FDCF4 001FAC54 88 1C 06 A2 */ lbz r0, 0x6a2(r28) +/* 801FDCF8 001FAC58 57 C5 06 3E */ clrlwi r5, r30, 0x18 +/* 801FDCFC 001FAC5C 54 00 E7 FE */ rlwinm r0, r0, 0x1c, 0x1f, 0x1f +/* 801FDD00 001FAC60 7C 05 00 40 */ cmplw r5, r0 +/* 801FDD04 001FAC64 41 82 00 24 */ beq lbl_801FDD28 +/* 801FDD08 001FAC68 3C 80 80 57 */ lis r4, lbl_805720F8@ha +/* 801FDD0C 001FAC6C 7F E3 FB 78 */ mr r3, r31 +/* 801FDD10 001FAC70 38 84 20 F8 */ addi r4, r4, lbl_805720F8@l +/* 801FDD14 001FAC74 7F A6 EB 78 */ mr r6, r29 +/* 801FDD18 001FAC78 4B E2 D0 A9 */ bl SetParticleEffectState__9CAnimDataFQ24rstl6stringbR13CStateManager +/* 801FDD1C 001FAC7C 88 1C 06 A2 */ lbz r0, 0x6a2(r28) +/* 801FDD20 001FAC80 53 C0 26 F6 */ rlwimi r0, r30, 4, 0x1b, 0x1b +/* 801FDD24 001FAC84 98 1C 06 A2 */ stb r0, 0x6a2(r28) +lbl_801FDD28: +/* 801FDD28 001FAC88 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 801FDD2C 001FAC8C CB E1 00 20 */ lfd f31, 0x20(r1) +/* 801FDD30 001FAC90 BB 61 00 0C */ lmw r27, 0xc(r1) +/* 801FDD34 001FAC94 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801FDD38 001FAC98 7C 08 03 A6 */ mtlr r0 +/* 801FDD3C 001FAC9C 38 21 00 30 */ addi r1, r1, 0x30 +/* 801FDD40 001FACA0 4E 80 00 20 */ blr + +.global sub_801fdd44 +sub_801fdd44: +/* 801FDD44 001FACA4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801FDD48 001FACA8 7C 08 02 A6 */ mflr r0 +/* 801FDD4C 001FACAC 90 01 00 24 */ stw r0, 0x24(r1) +/* 801FDD50 001FACB0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801FDD54 001FACB4 80 83 04 50 */ lwz r4, 0x450(r3) +/* 801FDD58 001FACB8 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 801FDD5C 001FACBC 2C 00 00 02 */ cmpwi r0, 2 +/* 801FDD60 001FACC0 40 82 00 60 */ bne lbl_801FDDC0 +/* 801FDD64 001FACC4 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801FDD68 001FACC8 38 A0 00 00 */ li r5, 0 +/* 801FDD6C 001FACCC 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801FDD70 001FACD0 3C 60 80 3E */ lis r3, lbl_803DAA20@ha +/* 801FDD74 001FACD4 90 01 00 08 */ stw r0, 8(r1) +/* 801FDD78 001FACD8 38 03 AA 20 */ addi r0, r3, lbl_803DAA20@l +/* 801FDD7C 001FACDC 3B E4 00 04 */ addi r31, r4, 4 +/* 801FDD80 001FACE0 38 80 00 00 */ li r4, 0 +/* 801FDD84 001FACE4 90 A1 00 0C */ stw r5, 0xc(r1) +/* 801FDD88 001FACE8 7F E3 FB 78 */ mr r3, r31 +/* 801FDD8C 001FACEC 90 01 00 08 */ stw r0, 8(r1) +/* 801FDD90 001FACF0 90 A1 00 10 */ stw r5, 0x10(r1) +/* 801FDD94 001FACF4 4B F3 36 A5 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801FDD98 001FACF8 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801FDD9C 001FACFC 3C 60 80 3E */ lis r3, lbl_803DAA20@ha +/* 801FDDA0 001FAD00 38 83 AA 20 */ addi r4, r3, lbl_803DAA20@l +/* 801FDDA4 001FAD04 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801FDDA8 001FAD08 90 1F 00 BC */ stw r0, 0xbc(r31) +/* 801FDDAC 001FAD0C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801FDDB0 001FAD10 80 61 00 10 */ lwz r3, 0x10(r1) +/* 801FDDB4 001FAD14 90 81 00 08 */ stw r4, 8(r1) +/* 801FDDB8 001FAD18 90 7F 00 C0 */ stw r3, 0xc0(r31) +/* 801FDDBC 001FAD1C 90 01 00 08 */ stw r0, 8(r1) +lbl_801FDDC0: +/* 801FDDC0 001FAD20 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801FDDC4 001FAD24 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801FDDC8 001FAD28 7C 08 03 A6 */ mtlr r0 +/* 801FDDCC 001FAD2C 38 21 00 20 */ addi r1, r1, 0x20 +/* 801FDDD0 001FAD30 4E 80 00 20 */ blr + +.global Listen__13CFlyingPirateFRC9CVector3f16EListenNoiseType +Listen__13CFlyingPirateFRC9CVector3f16EListenNoiseType: +/* 801FDDD4 001FAD34 88 03 04 00 */ lbz r0, 0x400(r3) +/* 801FDDD8 001FAD38 38 C0 00 00 */ li r6, 0 +/* 801FDDDC 001FAD3C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801FDDE0 001FAD40 41 82 00 90 */ beq lbl_801FDE70 +/* 801FDDE4 001FAD44 C0 24 00 04 */ lfs f1, 4(r4) +/* 801FDDE8 001FAD48 C0 03 00 50 */ lfs f0, 0x50(r3) +/* 801FDDEC 001FAD4C C0 43 05 6C */ lfs f2, 0x56c(r3) +/* 801FDDF0 001FAD50 EC A1 00 28 */ fsubs f5, f1, f0 +/* 801FDDF4 001FAD54 C0 84 00 00 */ lfs f4, 0(r4) +/* 801FDDF8 001FAD58 C0 63 00 40 */ lfs f3, 0x40(r3) +/* 801FDDFC 001FAD5C EC 02 00 B2 */ fmuls f0, f2, f2 +/* 801FDE00 001FAD60 C0 44 00 08 */ lfs f2, 8(r4) +/* 801FDE04 001FAD64 C0 23 00 60 */ lfs f1, 0x60(r3) +/* 801FDE08 001FAD68 EC 64 18 28 */ fsubs f3, f4, f3 +/* 801FDE0C 001FAD6C EC 42 08 28 */ fsubs f2, f2, f1 +/* 801FDE10 001FAD70 EC 25 01 72 */ fmuls f1, f5, f5 +/* 801FDE14 001FAD74 EC 42 00 B2 */ fmuls f2, f2, f2 +/* 801FDE18 001FAD78 EC 23 08 FA */ fmadds f1, f3, f3, f1 +/* 801FDE1C 001FAD7C EC 22 08 2A */ fadds f1, f2, f1 +/* 801FDE20 001FAD80 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801FDE24 001FAD84 40 80 00 34 */ bge lbl_801FDE58 +/* 801FDE28 001FAD88 C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801FDE2C 001FAD8C C0 23 03 C0 */ lfs f1, 0x3c0(r3) +/* 801FDE30 001FAD90 FC 00 08 00 */ fcmpu cr0, f0, f1 +/* 801FDE34 001FAD94 41 82 00 10 */ beq lbl_801FDE44 +/* 801FDE38 001FAD98 EC 01 00 72 */ fmuls f0, f1, f1 +/* 801FDE3C 001FAD9C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801FDE40 001FADA0 40 80 00 18 */ bge lbl_801FDE58 +lbl_801FDE44: +/* 801FDE44 001FADA4 88 03 06 A0 */ lbz r0, 0x6a0(r3) +/* 801FDE48 001FADA8 38 80 00 01 */ li r4, 1 +/* 801FDE4C 001FADAC 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 801FDE50 001FADB0 38 C0 00 01 */ li r6, 1 +/* 801FDE54 001FADB4 98 03 06 A0 */ stb r0, 0x6a0(r3) +lbl_801FDE58: +/* 801FDE58 001FADB8 2C 05 00 00 */ cmpwi r5, 0 +/* 801FDE5C 001FADBC 40 82 00 14 */ bne lbl_801FDE70 +/* 801FDE60 001FADC0 88 03 06 A0 */ lbz r0, 0x6a0(r3) +/* 801FDE64 001FADC4 38 80 00 01 */ li r4, 1 +/* 801FDE68 001FADC8 50 80 17 7A */ rlwimi r0, r4, 2, 0x1d, 0x1d +/* 801FDE6C 001FADCC 98 03 06 A0 */ stb r0, 0x6a0(r3) +lbl_801FDE70: +/* 801FDE70 001FADD0 54 C3 06 3E */ clrlwi r3, r6, 0x18 +/* 801FDE74 001FADD4 4E 80 00 20 */ blr + +.global AcceptScriptMsg__13CFlyingPirateF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__13CFlyingPirateF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 801FDE78 001FADD8 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 801FDE7C 001FADDC 7C 08 02 A6 */ mflr r0 +/* 801FDE80 001FADE0 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 801FDE84 001FADE4 DB E1 00 B0 */ stfd f31, 0xb0(r1) +/* 801FDE88 001FADE8 F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0 +/* 801FDE8C 001FADEC DB C1 00 A0 */ stfd f30, 0xa0(r1) +/* 801FDE90 001FADF0 F3 C1 00 A8 */ psq_st f30, 168(r1), 0, qr0 +/* 801FDE94 001FADF4 DB A1 00 90 */ stfd f29, 0x90(r1) +/* 801FDE98 001FADF8 F3 A1 00 98 */ psq_st f29, 152(r1), 0, qr0 +/* 801FDE9C 001FADFC 93 E1 00 8C */ stw r31, 0x8c(r1) +/* 801FDEA0 001FAE00 93 C1 00 88 */ stw r30, 0x88(r1) +/* 801FDEA4 001FAE04 93 A1 00 84 */ stw r29, 0x84(r1) +/* 801FDEA8 001FAE08 93 81 00 80 */ stw r28, 0x80(r1) +/* 801FDEAC 001FAE0C 7C 9C 23 78 */ mr r28, r4 +/* 801FDEB0 001FAE10 7C 7D 1B 78 */ mr r29, r3 +/* 801FDEB4 001FAE14 2C 1C 00 15 */ cmpwi r28, 0x15 +/* 801FDEB8 001FAE18 7C BF 2B 78 */ mr r31, r5 +/* 801FDEBC 001FAE1C 7C DE 33 78 */ mr r30, r6 +/* 801FDEC0 001FAE20 41 82 00 2C */ beq lbl_801FDEEC +/* 801FDEC4 001FAE24 40 80 00 1C */ bge lbl_801FDEE0 +/* 801FDEC8 001FAE28 2C 1C 00 04 */ cmpwi r28, 4 +/* 801FDECC 001FAE2C 41 82 00 4C */ beq lbl_801FDF18 +/* 801FDED0 001FAE30 40 80 00 54 */ bge lbl_801FDF24 +/* 801FDED4 001FAE34 2C 1C 00 01 */ cmpwi r28, 1 +/* 801FDED8 001FAE38 41 82 00 34 */ beq lbl_801FDF0C +/* 801FDEDC 001FAE3C 48 00 00 48 */ b lbl_801FDF24 +lbl_801FDEE0: +/* 801FDEE0 001FAE40 2C 1C 00 22 */ cmpwi r28, 0x22 +/* 801FDEE4 001FAE44 41 82 00 34 */ beq lbl_801FDF18 +/* 801FDEE8 001FAE48 48 00 00 3C */ b lbl_801FDF24 +lbl_801FDEEC: +/* 801FDEEC 001FAE4C 88 1D 00 30 */ lbz r0, 0x30(r29) +/* 801FDEF0 001FAE50 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801FDEF4 001FAE54 41 82 00 30 */ beq lbl_801FDF24 +/* 801FDEF8 001FAE58 88 1D 04 00 */ lbz r0, 0x400(r29) +/* 801FDEFC 001FAE5C 38 60 00 01 */ li r3, 1 +/* 801FDF00 001FAE60 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801FDF04 001FAE64 98 1D 04 00 */ stb r0, 0x400(r29) +/* 801FDF08 001FAE68 48 00 00 1C */ b lbl_801FDF24 +lbl_801FDF0C: +/* 801FDF0C 001FAE6C 7F C4 F3 78 */ mr r4, r30 +/* 801FDF10 001FAE70 4B FF F8 ED */ bl sub_801fd7fc +/* 801FDF14 001FAE74 48 00 00 10 */ b lbl_801FDF24 +lbl_801FDF18: +/* 801FDF18 001FAE78 7F A3 EB 78 */ mr r3, r29 +/* 801FDF1C 001FAE7C 7F C4 F3 78 */ mr r4, r30 +/* 801FDF20 001FAE80 4B FF F8 31 */ bl sub_801fd750 +lbl_801FDF24: +/* 801FDF24 001FAE84 A0 1F 00 00 */ lhz r0, 0(r31) +/* 801FDF28 001FAE88 7F A3 EB 78 */ mr r3, r29 +/* 801FDF2C 001FAE8C 7F 84 E3 78 */ mr r4, r28 +/* 801FDF30 001FAE90 7F C6 F3 78 */ mr r6, r30 +/* 801FDF34 001FAE94 B0 01 00 20 */ sth r0, 0x20(r1) +/* 801FDF38 001FAE98 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801FDF3C 001FAE9C 4B E7 EC 3D */ bl AcceptScriptMsg__10CPatternedF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 801FDF40 001FAEA0 38 1C FF F3 */ addi r0, r28, -13 +/* 801FDF44 001FAEA4 28 00 00 1B */ cmplwi r0, 0x1b +/* 801FDF48 001FAEA8 41 81 04 30 */ bgt lbl_801FE378 +/* 801FDF4C 001FAEAC 3C 60 80 3E */ lis r3, lbl_803E6B28@ha +/* 801FDF50 001FAEB0 54 00 10 3A */ slwi r0, r0, 2 +/* 801FDF54 001FAEB4 38 63 6B 28 */ addi r3, r3, lbl_803E6B28@l +/* 801FDF58 001FAEB8 7C 03 00 2E */ lwzx r0, r3, r0 +/* 801FDF5C 001FAEBC 7C 09 03 A6 */ mtctr r0 +/* 801FDF60 001FAEC0 4E 80 04 20 */ bctr +/* 801FDF64 001FAEC4 83 FD 00 2C */ lwz r31, 0x2c(r29) +/* 801FDF68 001FAEC8 48 00 00 CC */ b lbl_801FE034 +lbl_801FDF6C: +/* 801FDF6C 001FAECC 80 7F 00 00 */ lwz r3, 0(r31) +/* 801FDF70 001FAED0 2C 03 00 0C */ cmpwi r3, 0xc +/* 801FDF74 001FAED4 40 82 00 60 */ bne lbl_801FDFD4 +/* 801FDF78 001FAED8 80 1F 00 08 */ lwz r0, 8(r31) +/* 801FDF7C 001FAEDC 7F C4 F3 78 */ mr r4, r30 +/* 801FDF80 001FAEE0 38 61 00 1C */ addi r3, r1, 0x1c +/* 801FDF84 001FAEE4 38 A1 00 34 */ addi r5, r1, 0x34 +/* 801FDF88 001FAEE8 90 01 00 34 */ stw r0, 0x34(r1) +/* 801FDF8C 001FAEEC 4B E4 9F 91 */ bl GetIdForScript__13CStateManagerCF9TEditorId +/* 801FDF90 001FAEF0 A0 01 00 1C */ lhz r0, 0x1c(r1) +/* 801FDF94 001FAEF4 7F C3 F3 78 */ mr r3, r30 +/* 801FDF98 001FAEF8 38 81 00 18 */ addi r4, r1, 0x18 +/* 801FDF9C 001FAEFC B0 01 00 24 */ sth r0, 0x24(r1) +/* 801FDFA0 001FAF00 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801FDFA4 001FAF04 4B E4 E5 D1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801FDFA8 001FAF08 7C 64 1B 78 */ mr r4, r3 +/* 801FDFAC 001FAF0C 38 61 00 50 */ addi r3, r1, 0x50 +/* 801FDFB0 001FAF10 4B EA CA 7D */ bl "__ct__31TCastToPtr<17CScriptCoverPoint>FP7CEntity" +/* 801FDFB4 001FAF14 80 63 00 04 */ lwz r3, 4(r3) +/* 801FDFB8 001FAF18 28 03 00 00 */ cmplwi r3, 0 +/* 801FDFBC 001FAF1C 41 82 00 74 */ beq lbl_801FE030 +/* 801FDFC0 001FAF20 A0 1D 00 08 */ lhz r0, 8(r29) +/* 801FDFC4 001FAF24 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801FDFC8 001FAF28 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801FDFCC 001FAF2C B0 03 00 FA */ sth r0, 0xfa(r3) +/* 801FDFD0 001FAF30 48 00 00 60 */ b lbl_801FE030 +lbl_801FDFD4: +/* 801FDFD4 001FAF34 2C 03 00 0D */ cmpwi r3, 0xd +/* 801FDFD8 001FAF38 40 82 00 24 */ bne lbl_801FDFFC +/* 801FDFDC 001FAF3C 80 1F 00 04 */ lwz r0, 4(r31) +/* 801FDFE0 001FAF40 2C 00 00 06 */ cmpwi r0, 6 +/* 801FDFE4 001FAF44 40 82 00 18 */ bne lbl_801FDFFC +/* 801FDFE8 001FAF48 88 1D 06 A0 */ lbz r0, 0x6a0(r29) +/* 801FDFEC 001FAF4C 38 60 00 01 */ li r3, 1 +/* 801FDFF0 001FAF50 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801FDFF4 001FAF54 98 1D 06 A0 */ stb r0, 0x6a0(r29) +/* 801FDFF8 001FAF58 48 00 00 38 */ b lbl_801FE030 +lbl_801FDFFC: +/* 801FDFFC 001FAF5C 2C 03 00 0A */ cmpwi r3, 0xa +/* 801FE000 001FAF60 40 82 00 30 */ bne lbl_801FE030 +/* 801FE004 001FAF64 80 1F 00 04 */ lwz r0, 4(r31) +/* 801FE008 001FAF68 2C 00 00 13 */ cmpwi r0, 0x13 +/* 801FE00C 001FAF6C 40 82 00 24 */ bne lbl_801FE030 +/* 801FE010 001FAF70 80 1F 00 08 */ lwz r0, 8(r31) +/* 801FE014 001FAF74 7F C4 F3 78 */ mr r4, r30 +/* 801FE018 001FAF78 38 61 00 0C */ addi r3, r1, 0xc +/* 801FE01C 001FAF7C 38 A1 00 30 */ addi r5, r1, 0x30 +/* 801FE020 001FAF80 90 01 00 30 */ stw r0, 0x30(r1) +/* 801FE024 001FAF84 4B E4 9E F9 */ bl GetIdForScript__13CStateManagerCF9TEditorId +/* 801FE028 001FAF88 A0 01 00 0C */ lhz r0, 0xc(r1) +/* 801FE02C 001FAF8C B0 1D 08 5C */ sth r0, 0x85c(r29) +lbl_801FE030: +/* 801FE030 001FAF90 3B FF 00 0C */ addi r31, r31, 0xc +lbl_801FE034: +/* 801FE034 001FAF94 80 1D 00 24 */ lwz r0, 0x24(r29) +/* 801FE038 001FAF98 80 7D 00 2C */ lwz r3, 0x2c(r29) +/* 801FE03C 001FAF9C 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801FE040 001FAFA0 7C 03 02 14 */ add r0, r3, r0 +/* 801FE044 001FAFA4 7C 1F 00 40 */ cmplw r31, r0 +/* 801FE048 001FAFA8 40 82 FF 24 */ bne lbl_801FDF6C +/* 801FE04C 001FAFAC 80 BD 00 04 */ lwz r5, 4(r29) +/* 801FE050 001FAFB0 80 9E 08 50 */ lwz r4, 0x850(r30) +/* 801FE054 001FAFB4 54 A3 18 38 */ slwi r3, r5, 3 +/* 801FE058 001FAFB8 90 A1 00 28 */ stw r5, 0x28(r1) +/* 801FE05C 001FAFBC 80 84 00 20 */ lwz r4, 0x20(r4) +/* 801FE060 001FAFC0 38 03 00 04 */ addi r0, r3, 4 +/* 801FE064 001FAFC4 90 A1 00 2C */ stw r5, 0x2c(r1) +/* 801FE068 001FAFC8 7C 64 00 2E */ lwzx r3, r4, r0 +/* 801FE06C 001FAFCC 80 63 01 2C */ lwz r3, 0x12c(r3) +/* 801FE070 001FAFD0 80 03 10 BC */ lwz r0, 0x10bc(r3) +/* 801FE074 001FAFD4 90 1D 06 A8 */ stw r0, 0x6a8(r29) +/* 801FE078 001FAFD8 88 1D 00 30 */ lbz r0, 0x30(r29) +/* 801FE07C 001FAFDC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801FE080 001FAFE0 41 82 00 10 */ beq lbl_801FE090 +/* 801FE084 001FAFE4 7F A3 EB 78 */ mr r3, r29 +/* 801FE088 001FAFE8 7F C4 F3 78 */ mr r4, r30 +/* 801FE08C 001FAFEC 4B FF F7 71 */ bl sub_801fd7fc +lbl_801FE090: +/* 801FE090 001FAFF0 88 1D 06 A0 */ lbz r0, 0x6a0(r29) +/* 801FE094 001FAFF4 7F A3 EB 78 */ mr r3, r29 +/* 801FE098 001FAFF8 C0 22 AF 60 */ lfs f1, lbl_805ACC80@sda21(r2) +/* 801FE09C 001FAFFC 7F C4 F3 78 */ mr r4, r30 +/* 801FE0A0 001FB000 54 05 CF FE */ rlwinm r5, r0, 0x19, 0x1f, 0x1f +/* 801FE0A4 001FB004 4B FF FB 45 */ bl sub_801fdbe8 +/* 801FE0A8 001FB008 80 BD 00 64 */ lwz r5, 0x64(r29) +/* 801FE0AC 001FB00C 3C 60 80 57 */ lis r3, lbl_80572118@ha +/* 801FE0B0 001FB010 38 83 21 18 */ addi r4, r3, lbl_80572118@l +/* 801FE0B4 001FB014 7F C6 F3 78 */ mr r6, r30 +/* 801FE0B8 001FB018 80 65 00 10 */ lwz r3, 0x10(r5) +/* 801FE0BC 001FB01C 38 A0 00 01 */ li r5, 1 +/* 801FE0C0 001FB020 4B E2 CD 01 */ bl SetParticleEffectState__9CAnimDataFQ24rstl6stringbR13CStateManager +/* 801FE0C4 001FB024 48 00 02 B4 */ b lbl_801FE378 +/* 801FE0C8 001FB028 C3 BD 06 28 */ lfs f29, 0x628(r29) +/* 801FE0CC 001FB02C C3 DD 06 24 */ lfs f30, 0x624(r29) +/* 801FE0D0 001FB030 80 7E 09 00 */ lwz r3, 0x900(r30) +/* 801FE0D4 001FB034 48 11 44 09 */ bl Float__9CRandom16Fv +/* 801FE0D8 001FB038 EC 1D F0 7A */ fmadds f0, f29, f1, f30 +/* 801FE0DC 001FB03C D0 1D 08 6C */ stfs f0, 0x86c(r29) +/* 801FE0E0 001FB040 48 00 02 98 */ b lbl_801FE378 +/* 801FE0E4 001FB044 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 801FE0E8 001FB048 4B F3 BF E5 */ bl GetPercentageFrozen__15CBodyControllerCFv +/* 801FE0EC 001FB04C C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801FE0F0 001FB050 FC 00 08 00 */ fcmpu cr0, f0, f1 +/* 801FE0F4 001FB054 40 82 00 4C */ bne lbl_801FE140 +/* 801FE0F8 001FB058 88 1D 04 00 */ lbz r0, 0x400(r29) +/* 801FE0FC 001FB05C 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 801FE100 001FB060 40 82 00 40 */ bne lbl_801FE140 +/* 801FE104 001FB064 88 1D 06 A1 */ lbz r0, 0x6a1(r29) +/* 801FE108 001FB068 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 801FE10C 001FB06C 40 82 00 34 */ bne lbl_801FE140 +/* 801FE110 001FB070 7F A3 EB 78 */ mr r3, r29 +/* 801FE114 001FB074 C3 BD 00 E8 */ lfs f29, 0xe8(r29) +/* 801FE118 001FB078 81 9D 00 00 */ lwz r12, 0(r29) +/* 801FE11C 001FB07C 81 8C 02 BC */ lwz r12, 0x2bc(r12) +/* 801FE120 001FB080 7D 89 03 A6 */ mtctr r12 +/* 801FE124 001FB084 4E 80 04 21 */ bctrl +/* 801FE128 001FB088 FC 20 08 50 */ fneg f1, f1 +/* 801FE12C 001FB08C C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801FE130 001FB090 D0 1D 01 50 */ stfs f0, 0x150(r29) +/* 801FE134 001FB094 EC 21 07 72 */ fmuls f1, f1, f29 +/* 801FE138 001FB098 D0 1D 01 54 */ stfs f0, 0x154(r29) +/* 801FE13C 001FB09C D0 3D 01 58 */ stfs f1, 0x158(r29) +lbl_801FE140: +/* 801FE140 001FB0A0 38 00 00 00 */ li r0, 0 +/* 801FE144 001FB0A4 90 1D 07 EC */ stw r0, 0x7ec(r29) +/* 801FE148 001FB0A8 48 00 02 30 */ b lbl_801FE378 +/* 801FE14C 001FB0AC 38 00 00 02 */ li r0, 2 +/* 801FE150 001FB0B0 90 1D 07 EC */ stw r0, 0x7ec(r29) +/* 801FE154 001FB0B4 48 00 02 24 */ b lbl_801FE378 +/* 801FE158 001FB0B8 A0 1D 06 A4 */ lhz r0, 0x6a4(r29) +/* 801FE15C 001FB0BC 7F A3 EB 78 */ mr r3, r29 +/* 801FE160 001FB0C0 7F C4 F3 78 */ mr r4, r30 +/* 801FE164 001FB0C4 38 A1 00 08 */ addi r5, r1, 8 +/* 801FE168 001FB0C8 B0 01 00 08 */ sth r0, 8(r1) +/* 801FE16C 001FB0CC 4B E7 E7 41 */ bl GetCoverPoint__10CPatternedCFR13CStateManager9TUniqueId +/* 801FE170 001FB0D0 7C 7F 1B 79 */ or. r31, r3, r3 +/* 801FE174 001FB0D4 41 82 02 04 */ beq lbl_801FE378 +/* 801FE178 001FB0D8 88 1D 03 28 */ lbz r0, 0x328(r29) +/* 801FE17C 001FB0DC 38 60 00 00 */ li r3, 0 +/* 801FE180 001FB0E0 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801FE184 001FB0E4 7F A3 EB 78 */ mr r3, r29 +/* 801FE188 001FB0E8 98 1D 03 28 */ stb r0, 0x328(r29) +/* 801FE18C 001FB0EC 81 9D 00 00 */ lwz r12, 0(r29) +/* 801FE190 001FB0F0 C3 BD 00 E8 */ lfs f29, 0xe8(r29) +/* 801FE194 001FB0F4 81 8C 02 BC */ lwz r12, 0x2bc(r12) +/* 801FE198 001FB0F8 7D 89 03 A6 */ mtctr r12 +/* 801FE19C 001FB0FC 4E 80 04 21 */ bctrl +/* 801FE1A0 001FB100 FC 40 E8 50 */ fneg f2, f29 +/* 801FE1A4 001FB104 C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801FE1A8 001FB108 7F A3 EB 78 */ mr r3, r29 +/* 801FE1AC 001FB10C 7F C5 F3 78 */ mr r5, r30 +/* 801FE1B0 001FB110 D0 1D 01 50 */ stfs f0, 0x150(r29) +/* 801FE1B4 001FB114 38 80 00 25 */ li r4, 0x25 +/* 801FE1B8 001FB118 EC 22 00 72 */ fmuls f1, f2, f1 +/* 801FE1BC 001FB11C D0 1D 01 54 */ stfs f0, 0x154(r29) +/* 801FE1C0 001FB120 D0 3D 01 58 */ stfs f1, 0x158(r29) +/* 801FE1C4 001FB124 4B E5 61 8D */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801FE1C8 001FB128 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 801FE1CC 001FB12C 7F A3 EB 78 */ mr r3, r29 +/* 801FE1D0 001FB130 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 801FE1D4 001FB134 38 81 00 60 */ addi r4, r1, 0x60 +/* 801FE1D8 001FB138 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801FE1DC 001FB13C D0 01 00 60 */ stfs f0, 0x60(r1) +/* 801FE1E0 001FB140 D0 21 00 64 */ stfs f1, 0x64(r1) +/* 801FE1E4 001FB144 D0 41 00 68 */ stfs f2, 0x68(r1) +/* 801FE1E8 001FB148 4B E7 E9 75 */ bl SetDestPos__10CPatternedFRC9CVector3f +/* 801FE1EC 001FB14C C0 3F 00 60 */ lfs f1, 0x60(r31) +/* 801FE1F0 001FB150 C0 1D 00 60 */ lfs f0, 0x60(r29) +/* 801FE1F4 001FB154 C0 9F 00 40 */ lfs f4, 0x40(r31) +/* 801FE1F8 001FB158 C0 7D 00 40 */ lfs f3, 0x40(r29) +/* 801FE1FC 001FB15C EF C1 00 28 */ fsubs f30, f1, f0 +/* 801FE200 001FB160 C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801FE204 001FB164 C0 5F 00 50 */ lfs f2, 0x50(r31) +/* 801FE208 001FB168 EF E4 18 28 */ fsubs f31, f4, f3 +/* 801FE20C 001FB16C C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 801FE210 001FB170 FC 1E 00 40 */ fcmpo cr0, f30, f0 +/* 801FE214 001FB174 EF A2 08 28 */ fsubs f29, f2, f1 +/* 801FE218 001FB178 40 80 01 60 */ bge lbl_801FE378 +/* 801FE21C 001FB17C C0 1D 01 38 */ lfs f0, 0x138(r29) +/* 801FE220 001FB180 7F A3 EB 78 */ mr r3, r29 +/* 801FE224 001FB184 D0 01 00 6C */ stfs f0, 0x6c(r1) +/* 801FE228 001FB188 C0 1D 01 3C */ lfs f0, 0x13c(r29) +/* 801FE22C 001FB18C D0 01 00 70 */ stfs f0, 0x70(r1) +/* 801FE230 001FB190 C0 1D 01 40 */ lfs f0, 0x140(r29) +/* 801FE234 001FB194 D0 01 00 74 */ stfs f0, 0x74(r1) +/* 801FE238 001FB198 81 9D 00 00 */ lwz r12, 0(r29) +/* 801FE23C 001FB19C 81 8C 02 BC */ lwz r12, 0x2bc(r12) +/* 801FE240 001FB1A0 7D 89 03 A6 */ mtctr r12 +/* 801FE244 001FB1A4 4E 80 04 21 */ bctrl +/* 801FE248 001FB1A8 C0 02 AF 64 */ lfs f0, lbl_805ACC84@sda21(r2) +/* 801FE24C 001FB1AC C0 81 00 74 */ lfs f4, 0x74(r1) +/* 801FE250 001FB1B0 EC 40 00 72 */ fmuls f2, f0, f1 +/* 801FE254 001FB1B4 C0 62 AF 60 */ lfs f3, lbl_805ACC80@sda21(r2) +/* 801FE258 001FB1B8 EC 04 01 32 */ fmuls f0, f4, f4 +/* 801FE25C 001FB1BC EC 42 07 BC */ fnmsubs f2, f2, f30, f0 +/* 801FE260 001FB1C0 FC 03 10 00 */ fcmpu cr0, f3, f2 +/* 801FE264 001FB1C4 40 82 00 08 */ bne lbl_801FE26C +/* 801FE268 001FB1C8 48 00 00 10 */ b lbl_801FE278 +lbl_801FE26C: +/* 801FE26C 001FB1CC FC 00 10 34 */ frsqrte f0, f2 +/* 801FE270 001FB1D0 FC 62 00 32 */ fmul f3, f2, f0 +/* 801FE274 001FB1D4 FC 60 18 18 */ frsp f3, f3 +lbl_801FE278: +/* 801FE278 001FB1D8 C0 41 00 74 */ lfs f2, 0x74(r1) +/* 801FE27C 001FB1DC C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801FE280 001FB1E0 FC 40 10 50 */ fneg f2, f2 +/* 801FE284 001FB1E4 EC 42 18 2A */ fadds f2, f2, f3 +/* 801FE288 001FB1E8 EF C2 08 24 */ fdivs f30, f2, f1 +/* 801FE28C 001FB1EC FC 1E 00 40 */ fcmpo cr0, f30, f0 +/* 801FE290 001FB1F0 40 81 00 E8 */ ble lbl_801FE378 +/* 801FE294 001FB1F4 FC 20 F8 90 */ fmr f1, f31 +/* 801FE298 001FB1F8 38 61 00 40 */ addi r3, r1, 0x40 +/* 801FE29C 001FB1FC FC 40 E8 90 */ fmr f2, f29 +/* 801FE2A0 001FB200 48 11 5F 61 */ bl __ct__9CVector2fFff +/* 801FE2A4 001FB204 38 61 00 48 */ addi r3, r1, 0x48 +/* 801FE2A8 001FB208 38 81 00 40 */ addi r4, r1, 0x40 +/* 801FE2AC 001FB20C 48 11 5D D5 */ bl AsNormalized__9CVector2fCFv +/* 801FE2B0 001FB210 C0 61 00 48 */ lfs f3, 0x48(r1) +/* 801FE2B4 001FB214 FC 20 F8 90 */ fmr f1, f31 +/* 801FE2B8 001FB218 C0 01 00 4C */ lfs f0, 0x4c(r1) +/* 801FE2BC 001FB21C FC 40 E8 90 */ fmr f2, f29 +/* 801FE2C0 001FB220 D0 61 00 58 */ stfs f3, 0x58(r1) +/* 801FE2C4 001FB224 38 61 00 38 */ addi r3, r1, 0x38 +/* 801FE2C8 001FB228 D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 801FE2CC 001FB22C 48 11 5F 35 */ bl __ct__9CVector2fFff +/* 801FE2D0 001FB230 38 61 00 38 */ addi r3, r1, 0x38 +/* 801FE2D4 001FB234 48 11 5E 21 */ bl Magnitude__9CVector2fCFv +/* 801FE2D8 001FB238 EC 41 F0 24 */ fdivs f2, f1, f30 +/* 801FE2DC 001FB23C C0 21 00 58 */ lfs f1, 0x58(r1) +/* 801FE2E0 001FB240 C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 801FE2E4 001FB244 7F A3 EB 78 */ mr r3, r29 +/* 801FE2E8 001FB248 38 81 00 6C */ addi r4, r1, 0x6c +/* 801FE2EC 001FB24C EC 22 00 72 */ fmuls f1, f2, f1 +/* 801FE2F0 001FB250 EC 02 00 32 */ fmuls f0, f2, f0 +/* 801FE2F4 001FB254 D0 21 00 6C */ stfs f1, 0x6c(r1) +/* 801FE2F8 001FB258 D0 01 00 70 */ stfs f0, 0x70(r1) +/* 801FE2FC 001FB25C 4B F1 C9 A5 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f +/* 801FE300 001FB260 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801FE304 001FB264 C4 23 66 A0 */ lfsu f1, skZero3f@l(r3) +/* 801FE308 001FB268 C0 02 AF 78 */ lfs f0, lbl_805ACC98@sda21(r2) +/* 801FE30C 001FB26C D0 3D 08 70 */ stfs f1, 0x870(r29) +/* 801FE310 001FB270 C0 23 00 04 */ lfs f1, 4(r3) +/* 801FE314 001FB274 D0 3D 08 74 */ stfs f1, 0x874(r29) +/* 801FE318 001FB278 C0 23 00 08 */ lfs f1, 8(r3) +/* 801FE31C 001FB27C D0 3D 08 78 */ stfs f1, 0x878(r29) +/* 801FE320 001FB280 C0 23 00 00 */ lfs f1, 0(r3) +/* 801FE324 001FB284 D0 3D 08 7C */ stfs f1, 0x87c(r29) +/* 801FE328 001FB288 C0 23 00 04 */ lfs f1, 4(r3) +/* 801FE32C 001FB28C D0 3D 08 80 */ stfs f1, 0x880(r29) +/* 801FE330 001FB290 C0 23 00 08 */ lfs f1, 8(r3) +/* 801FE334 001FB294 D0 3D 08 84 */ stfs f1, 0x884(r29) +/* 801FE338 001FB298 D0 1D 08 98 */ stfs f0, 0x898(r29) +/* 801FE33C 001FB29C 48 00 00 3C */ b lbl_801FE378 +/* 801FE340 001FB2A0 88 1D 06 A1 */ lbz r0, 0x6a1(r29) +/* 801FE344 001FB2A4 38 60 00 00 */ li r3, 0 +/* 801FE348 001FB2A8 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f +/* 801FE34C 001FB2AC 98 1D 06 A1 */ stb r0, 0x6a1(r29) +/* 801FE350 001FB2B0 48 00 00 28 */ b lbl_801FE378 +/* 801FE354 001FB2B4 88 1D 06 A1 */ lbz r0, 0x6a1(r29) +/* 801FE358 001FB2B8 38 60 00 01 */ li r3, 1 +/* 801FE35C 001FB2BC 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f +/* 801FE360 001FB2C0 98 1D 06 A1 */ stb r0, 0x6a1(r29) +/* 801FE364 001FB2C4 48 00 00 14 */ b lbl_801FE378 +/* 801FE368 001FB2C8 88 1D 06 A2 */ lbz r0, 0x6a2(r29) +/* 801FE36C 001FB2CC 38 60 00 01 */ li r3, 1 +/* 801FE370 001FB2D0 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801FE374 001FB2D4 98 1D 06 A2 */ stb r0, 0x6a2(r29) +lbl_801FE378: +/* 801FE378 001FB2D8 E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0 +/* 801FE37C 001FB2DC CB E1 00 B0 */ lfd f31, 0xb0(r1) +/* 801FE380 001FB2E0 E3 C1 00 A8 */ psq_l f30, 168(r1), 0, qr0 +/* 801FE384 001FB2E4 CB C1 00 A0 */ lfd f30, 0xa0(r1) +/* 801FE388 001FB2E8 E3 A1 00 98 */ psq_l f29, 152(r1), 0, qr0 +/* 801FE38C 001FB2EC CB A1 00 90 */ lfd f29, 0x90(r1) +/* 801FE390 001FB2F0 83 E1 00 8C */ lwz r31, 0x8c(r1) +/* 801FE394 001FB2F4 83 C1 00 88 */ lwz r30, 0x88(r1) +/* 801FE398 001FB2F8 83 A1 00 84 */ lwz r29, 0x84(r1) +/* 801FE39C 001FB2FC 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 801FE3A0 001FB300 83 81 00 80 */ lwz r28, 0x80(r1) +/* 801FE3A4 001FB304 7C 08 03 A6 */ mtlr r0 +/* 801FE3A8 001FB308 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 801FE3AC 001FB30C 4E 80 00 20 */ blr + +.global Accept__13CFlyingPirateFR8IVisitor +Accept__13CFlyingPirateFR8IVisitor: +/* 801FE3B0 001FB310 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801FE3B4 001FB314 7C 08 02 A6 */ mflr r0 +/* 801FE3B8 001FB318 90 01 00 14 */ stw r0, 0x14(r1) +/* 801FE3BC 001FB31C 7C 60 1B 78 */ mr r0, r3 +/* 801FE3C0 001FB320 7C 83 23 78 */ mr r3, r4 +/* 801FE3C4 001FB324 81 84 00 00 */ lwz r12, 0(r4) +/* 801FE3C8 001FB328 7C 04 03 78 */ mr r4, r0 +/* 801FE3CC 001FB32C 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801FE3D0 001FB330 7D 89 03 A6 */ mtctr r12 +/* 801FE3D4 001FB334 4E 80 04 21 */ bctrl +/* 801FE3D8 001FB338 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801FE3DC 001FB33C 7C 08 03 A6 */ mtlr r0 +/* 801FE3E0 001FB340 38 21 00 10 */ addi r1, r1, 0x10 +/* 801FE3E4 001FB344 4E 80 00 20 */ blr + +.global "__ct__13CFlyingPirateF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC16CActorParametersRC14CPatternedInfoffUiUiRC11CDamageInfoUsUiRC11CDamageInfoUiffUiRC11CDamageInfoifffUsUs" +"__ct__13CFlyingPirateF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC16CActorParametersRC14CPatternedInfoffUiUiRC11CDamageInfoUsUiRC11CDamageInfoUiffUiRC11CDamageInfoifffUsUs": +/* 801FE3E8 001FB348 94 21 FE 70 */ stwu r1, -0x190(r1) +/* 801FE3EC 001FB34C 7C 08 02 A6 */ mflr r0 +/* 801FE3F0 001FB350 7C EC 3B 78 */ mr r12, r7 +/* 801FE3F4 001FB354 39 60 00 01 */ li r11, 1 +/* 801FE3F8 001FB358 90 01 01 94 */ stw r0, 0x194(r1) +/* 801FE3FC 001FB35C 38 E0 00 00 */ li r7, 0 +/* 801FE400 001FB360 BF 01 01 70 */ stmw r24, 0x170(r1) +/* 801FE404 001FB364 7D 5B 53 78 */ mr r27, r10 +/* 801FE408 001FB368 7C DC 33 78 */ mr r28, r6 +/* 801FE40C 001FB36C 7D 0A 43 78 */ mr r10, r8 +/* 801FE410 001FB370 7C A6 2B 78 */ mr r6, r5 +/* 801FE414 001FB374 83 21 01 98 */ lwz r25, 0x198(r1) +/* 801FE418 001FB378 83 01 01 9C */ lwz r24, 0x19c(r1) +/* 801FE41C 001FB37C 7C 7A 1B 78 */ mr r26, r3 +/* 801FE420 001FB380 7F 88 E3 78 */ mr r8, r28 +/* 801FE424 001FB384 38 A1 00 30 */ addi r5, r1, 0x30 +/* 801FE428 001FB388 A0 04 00 00 */ lhz r0, 0(r4) +/* 801FE42C 001FB38C 38 80 00 00 */ li r4, 0 +/* 801FE430 001FB390 B0 01 00 30 */ sth r0, 0x30(r1) +/* 801FE434 001FB394 38 00 00 07 */ li r0, 7 +/* 801FE438 001FB398 93 61 00 08 */ stw r27, 8(r1) +/* 801FE43C 001FB39C 90 81 00 0C */ stw r4, 0xc(r1) +/* 801FE440 001FB3A0 38 80 00 0E */ li r4, 0xe +/* 801FE444 001FB3A4 91 61 00 10 */ stw r11, 0x10(r1) +/* 801FE448 001FB3A8 90 01 00 14 */ stw r0, 0x14(r1) +/* 801FE44C 001FB3AC 91 21 00 18 */ stw r9, 0x18(r1) +/* 801FE450 001FB3B0 7D 89 63 78 */ mr r9, r12 +/* 801FE454 001FB3B4 91 61 00 1C */ stw r11, 0x1c(r1) +/* 801FE458 001FB3B8 4B E7 EF F9 */ bl "__ct__10CPatternedFUi9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC16CActorParametersUi" +/* 801FE45C 001FB3BC 3C 60 80 3E */ lis r3, lbl_803E685C@ha +/* 801FE460 001FB3C0 7F 24 CB 78 */ mr r4, r25 +/* 801FE464 001FB3C4 38 03 68 5C */ addi r0, r3, lbl_803E685C@l +/* 801FE468 001FB3C8 7F 05 C3 78 */ mr r5, r24 +/* 801FE46C 001FB3CC 90 1A 00 00 */ stw r0, 0(r26) +/* 801FE470 001FB3D0 38 7A 05 68 */ addi r3, r26, 0x568 +/* 801FE474 001FB3D4 48 00 07 F9 */ bl sub_801fec6c +/* 801FE478 001FB3D8 38 00 00 00 */ li r0, 0 +/* 801FE47C 001FB3DC 38 C0 00 01 */ li r6, 1 +/* 801FE480 001FB3E0 90 1A 06 5C */ stw r0, 0x65c(r26) +/* 801FE484 001FB3E4 38 7A 06 A8 */ addi r3, r26, 0x6a8 +/* 801FE488 001FB3E8 38 80 00 00 */ li r4, 0 +/* 801FE48C 001FB3EC 90 1A 06 84 */ stw r0, 0x684(r26) +/* 801FE490 001FB3F0 80 FA 05 70 */ lwz r7, 0x570(r26) +/* 801FE494 001FB3F4 88 BA 06 A0 */ lbz r5, 0x6a0(r26) +/* 801FE498 001FB3F8 50 E5 3E 30 */ rlwimi r5, r7, 7, 0x18, 0x18 +/* 801FE49C 001FB3FC 98 BA 06 A0 */ stb r5, 0x6a0(r26) +/* 801FE4A0 001FB400 80 FA 05 70 */ lwz r7, 0x570(r26) +/* 801FE4A4 001FB404 88 BA 06 A0 */ lbz r5, 0x6a0(r26) +/* 801FE4A8 001FB408 50 E5 2E 72 */ rlwimi r5, r7, 5, 0x19, 0x19 +/* 801FE4AC 001FB40C 98 BA 06 A0 */ stb r5, 0x6a0(r26) +/* 801FE4B0 001FB410 88 BA 06 A0 */ lbz r5, 0x6a0(r26) +/* 801FE4B4 001FB414 50 05 2E B4 */ rlwimi r5, r0, 5, 0x1a, 0x1a +/* 801FE4B8 001FB418 98 BA 06 A0 */ stb r5, 0x6a0(r26) +/* 801FE4BC 001FB41C 88 BA 06 A0 */ lbz r5, 0x6a0(r26) +/* 801FE4C0 001FB420 50 05 26 F6 */ rlwimi r5, r0, 4, 0x1b, 0x1b +/* 801FE4C4 001FB424 98 BA 06 A0 */ stb r5, 0x6a0(r26) +/* 801FE4C8 001FB428 88 BA 06 A0 */ lbz r5, 0x6a0(r26) +/* 801FE4CC 001FB42C 50 05 1F 38 */ rlwimi r5, r0, 3, 0x1c, 0x1c +/* 801FE4D0 001FB430 98 BA 06 A0 */ stb r5, 0x6a0(r26) +/* 801FE4D4 001FB434 88 BA 06 A0 */ lbz r5, 0x6a0(r26) +/* 801FE4D8 001FB438 50 05 17 7A */ rlwimi r5, r0, 2, 0x1d, 0x1d +/* 801FE4DC 001FB43C 98 BA 06 A0 */ stb r5, 0x6a0(r26) +/* 801FE4E0 001FB440 88 BA 06 A0 */ lbz r5, 0x6a0(r26) +/* 801FE4E4 001FB444 50 05 0F BC */ rlwimi r5, r0, 1, 0x1e, 0x1e +/* 801FE4E8 001FB448 98 BA 06 A0 */ stb r5, 0x6a0(r26) +/* 801FE4EC 001FB44C 88 BA 06 A0 */ lbz r5, 0x6a0(r26) +/* 801FE4F0 001FB450 50 C5 07 FE */ rlwimi r5, r6, 0, 0x1f, 0x1f +/* 801FE4F4 001FB454 98 BA 06 A0 */ stb r5, 0x6a0(r26) +/* 801FE4F8 001FB458 88 BA 06 A1 */ lbz r5, 0x6a1(r26) +/* 801FE4FC 001FB45C 50 05 3E 30 */ rlwimi r5, r0, 7, 0x18, 0x18 +/* 801FE500 001FB460 98 BA 06 A1 */ stb r5, 0x6a1(r26) +/* 801FE504 001FB464 88 BA 06 A1 */ lbz r5, 0x6a1(r26) +/* 801FE508 001FB468 50 05 36 72 */ rlwimi r5, r0, 6, 0x19, 0x19 +/* 801FE50C 001FB46C 98 BA 06 A1 */ stb r5, 0x6a1(r26) +/* 801FE510 001FB470 88 BA 06 A1 */ lbz r5, 0x6a1(r26) +/* 801FE514 001FB474 50 05 2E B4 */ rlwimi r5, r0, 5, 0x1a, 0x1a +/* 801FE518 001FB478 98 BA 06 A1 */ stb r5, 0x6a1(r26) +/* 801FE51C 001FB47C 88 BA 06 A1 */ lbz r5, 0x6a1(r26) +/* 801FE520 001FB480 50 05 1F 38 */ rlwimi r5, r0, 3, 0x1c, 0x1c +/* 801FE524 001FB484 98 BA 06 A1 */ stb r5, 0x6a1(r26) +/* 801FE528 001FB488 88 BA 06 A1 */ lbz r5, 0x6a1(r26) +/* 801FE52C 001FB48C 50 05 17 7A */ rlwimi r5, r0, 2, 0x1d, 0x1d +/* 801FE530 001FB490 98 BA 06 A1 */ stb r5, 0x6a1(r26) +/* 801FE534 001FB494 88 BA 06 A1 */ lbz r5, 0x6a1(r26) +/* 801FE538 001FB498 50 05 0F BC */ rlwimi r5, r0, 1, 0x1e, 0x1e +/* 801FE53C 001FB49C 98 BA 06 A1 */ stb r5, 0x6a1(r26) +/* 801FE540 001FB4A0 88 BA 06 A1 */ lbz r5, 0x6a1(r26) +/* 801FE544 001FB4A4 50 05 07 FE */ rlwimi r5, r0, 0, 0x1f, 0x1f +/* 801FE548 001FB4A8 98 BA 06 A1 */ stb r5, 0x6a1(r26) +/* 801FE54C 001FB4AC 88 BA 06 A2 */ lbz r5, 0x6a2(r26) +/* 801FE550 001FB4B0 50 05 3E 30 */ rlwimi r5, r0, 7, 0x18, 0x18 +/* 801FE554 001FB4B4 98 BA 06 A2 */ stb r5, 0x6a2(r26) +/* 801FE558 001FB4B8 88 BA 06 A2 */ lbz r5, 0x6a2(r26) +/* 801FE55C 001FB4BC 50 05 36 72 */ rlwimi r5, r0, 6, 0x19, 0x19 +/* 801FE560 001FB4C0 98 BA 06 A2 */ stb r5, 0x6a2(r26) +/* 801FE564 001FB4C4 88 BA 06 A2 */ lbz r5, 0x6a2(r26) +/* 801FE568 001FB4C8 50 05 2E B4 */ rlwimi r5, r0, 5, 0x1a, 0x1a +/* 801FE56C 001FB4CC 98 BA 06 A2 */ stb r5, 0x6a2(r26) +/* 801FE570 001FB4D0 88 BA 06 A2 */ lbz r5, 0x6a2(r26) +/* 801FE574 001FB4D4 50 05 26 F6 */ rlwimi r5, r0, 4, 0x1b, 0x1b +/* 801FE578 001FB4D8 98 BA 06 A2 */ stb r5, 0x6a2(r26) +/* 801FE57C 001FB4DC 88 BA 06 A2 */ lbz r5, 0x6a2(r26) +/* 801FE580 001FB4E0 50 05 1F 38 */ rlwimi r5, r0, 3, 0x1c, 0x1c +/* 801FE584 001FB4E4 98 BA 06 A2 */ stb r5, 0x6a2(r26) +/* 801FE588 001FB4E8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801FE58C 001FB4EC B0 1A 06 A4 */ sth r0, 0x6a4(r26) +/* 801FE590 001FB4F0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801FE594 001FB4F4 B0 1A 06 A6 */ sth r0, 0x6a6(r26) +/* 801FE598 001FB4F8 88 1A 06 A0 */ lbz r0, 0x6a0(r26) +/* 801FE59C 001FB4FC 80 DB 01 0C */ lwz r6, 0x10c(r27) +/* 801FE5A0 001FB500 54 05 D7 FE */ rlwinm r5, r0, 0x1a, 0x1f, 0x1f +/* 801FE5A4 001FB504 C0 3B 00 C4 */ lfs f1, 0xc4(r27) +/* 801FE5A8 001FB508 7C 05 00 D0 */ neg r0, r5 +/* 801FE5AC 001FB50C C0 5B 00 C8 */ lfs f2, 0xc8(r27) +/* 801FE5B0 001FB510 7C 00 2B 78 */ or r0, r0, r5 +/* 801FE5B4 001FB514 54 05 0F FE */ srwi r5, r0, 0x1f +/* 801FE5B8 001FB518 38 A5 00 03 */ addi r5, r5, 3 +/* 801FE5BC 001FB51C 4B FC A7 D9 */ bl __ct__15CPathFindSearchFP7CPFAreaUiff +/* 801FE5C0 001FB520 38 00 00 00 */ li r0, 0 +/* 801FE5C4 001FB524 3C 60 80 3D */ lis r3, lbl_803D247C@ha +/* 801FE5C8 001FB528 90 1A 07 90 */ stw r0, 0x790(r26) +/* 801FE5CC 001FB52C 38 83 24 7C */ addi r4, r3, lbl_803D247C@l +/* 801FE5D0 001FB530 38 A0 00 FF */ li r5, 0xff +/* 801FE5D4 001FB534 38 00 FF FF */ li r0, -1 +/* 801FE5D8 001FB538 C0 1B 00 54 */ lfs f0, 0x54(r27) +/* 801FE5DC 001FB53C 38 61 01 18 */ addi r3, r1, 0x118 +/* 801FE5E0 001FB540 38 84 00 19 */ addi r4, r4, 0x19 +/* 801FE5E4 001FB544 D0 1A 07 94 */ stfs f0, 0x794(r26) +/* 801FE5E8 001FB548 98 BA 07 98 */ stb r5, 0x798(r26) +/* 801FE5EC 001FB54C 90 1A 07 9C */ stw r0, 0x79c(r26) +/* 801FE5F0 001FB550 4B E0 66 C9 */ bl string_l__4rstlFPCc +/* 801FE5F4 001FB554 80 9A 00 64 */ lwz r4, 0x64(r26) +/* 801FE5F8 001FB558 38 7A 07 A0 */ addi r3, r26, 0x7a0 +/* 801FE5FC 001FB55C C0 22 B0 08 */ lfs f1, lbl_805ACD28@sda21(r2) +/* 801FE600 001FB560 38 A1 01 18 */ addi r5, r1, 0x118 +/* 801FE604 001FB564 80 84 00 10 */ lwz r4, 0x10(r4) +/* 801FE608 001FB568 38 C0 00 00 */ li r6, 0 +/* 801FE60C 001FB56C C0 42 AF 8C */ lfs f2, lbl_805ACCAC@sda21(r2) +/* 801FE610 001FB570 4B F7 73 A9 */ bl "__ct__13CBoneTrackingFRC9CAnimDataRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>ffb" +/* 801FE614 001FB574 38 61 01 18 */ addi r3, r1, 0x118 +/* 801FE618 001FB578 48 13 F4 C9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801FE61C 001FB57C C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801FE620 001FB580 3C 60 80 3E */ lis r3, lbl_803E67E8@ha +/* 801FE624 001FB584 38 83 67 E8 */ addi r4, r3, lbl_803E67E8@l +/* 801FE628 001FB588 38 00 00 FF */ li r0, 0xff +/* 801FE62C 001FB58C D0 1A 07 D8 */ stfs f0, 0x7d8(r26) +/* 801FE630 001FB590 38 60 00 00 */ li r3, 0 +/* 801FE634 001FB594 C0 02 AF 78 */ lfs f0, lbl_805ACC98@sda21(r2) +/* 801FE638 001FB598 38 A0 00 00 */ li r5, 0 +/* 801FE63C 001FB59C 90 7A 07 DC */ stw r3, 0x7dc(r26) +/* 801FE640 001FB5A0 38 7A 07 EC */ addi r3, r26, 0x7ec +/* 801FE644 001FB5A4 98 1A 07 E0 */ stb r0, 0x7e0(r26) +/* 801FE648 001FB5A8 D0 1A 07 E4 */ stfs f0, 0x7e4(r26) +/* 801FE64C 001FB5AC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801FE650 001FB5B0 B0 1A 07 E8 */ sth r0, 0x7e8(r26) +/* 801FE654 001FB5B4 4B FA EE B1 */ bl __ct__10CBurstFireFPPC6SBursti +/* 801FE658 001FB5B8 38 00 FF FF */ li r0, -1 +/* 801FE65C 001FB5BC 3C 60 80 3D */ lis r3, lbl_803D247C@ha +/* 801FE660 001FB5C0 90 1A 08 4C */ stw r0, 0x84c(r26) +/* 801FE664 001FB5C4 38 83 24 7C */ addi r4, r3, lbl_803D247C@l +/* 801FE668 001FB5C8 C0 82 AF 7C */ lfs f4, lbl_805ACC9C@sda21(r2) +/* 801FE66C 001FB5CC 38 C0 00 00 */ li r6, 0 +/* 801FE670 001FB5D0 C0 02 B0 0C */ lfs f0, lbl_805ACD2C@sda21(r2) +/* 801FE674 001FB5D4 3C A0 80 5A */ lis r5, skZero3f@ha +/* 801FE678 001FB5D8 D0 9A 08 50 */ stfs f4, 0x850(r26) +/* 801FE67C 001FB5DC 38 61 01 08 */ addi r3, r1, 0x108 +/* 801FE680 001FB5E0 C0 42 AF C0 */ lfs f2, lbl_805ACCE0@sda21(r2) +/* 801FE684 001FB5E4 38 84 00 19 */ addi r4, r4, 0x19 +/* 801FE688 001FB5E8 D0 1A 08 54 */ stfs f0, 0x854(r26) +/* 801FE68C 001FB5EC C0 62 AF 60 */ lfs f3, lbl_805ACC80@sda21(r2) +/* 801FE690 001FB5F0 D0 1A 08 58 */ stfs f0, 0x858(r26) +/* 801FE694 001FB5F4 C0 22 AF D0 */ lfs f1, lbl_805ACCF0@sda21(r2) +/* 801FE698 001FB5F8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801FE69C 001FB5FC C0 02 AF 78 */ lfs f0, lbl_805ACC98@sda21(r2) +/* 801FE6A0 001FB600 B0 1A 08 5C */ sth r0, 0x85c(r26) +/* 801FE6A4 001FB604 D0 5A 08 60 */ stfs f2, 0x860(r26) +/* 801FE6A8 001FB608 90 DA 08 64 */ stw r6, 0x864(r26) +/* 801FE6AC 001FB60C D0 7A 08 6C */ stfs f3, 0x86c(r26) +/* 801FE6B0 001FB610 C4 45 66 A0 */ lfsu f2, skZero3f@l(r5) +/* 801FE6B4 001FB614 D0 5A 08 70 */ stfs f2, 0x870(r26) +/* 801FE6B8 001FB618 C0 45 00 04 */ lfs f2, 4(r5) +/* 801FE6BC 001FB61C D0 5A 08 74 */ stfs f2, 0x874(r26) +/* 801FE6C0 001FB620 C0 45 00 08 */ lfs f2, 8(r5) +/* 801FE6C4 001FB624 D0 5A 08 78 */ stfs f2, 0x878(r26) +/* 801FE6C8 001FB628 C0 45 00 00 */ lfs f2, 0(r5) +/* 801FE6CC 001FB62C D0 5A 08 7C */ stfs f2, 0x87c(r26) +/* 801FE6D0 001FB630 C0 45 00 04 */ lfs f2, 4(r5) +/* 801FE6D4 001FB634 D0 5A 08 80 */ stfs f2, 0x880(r26) +/* 801FE6D8 001FB638 C0 45 00 08 */ lfs f2, 8(r5) +/* 801FE6DC 001FB63C D0 5A 08 84 */ stfs f2, 0x884(r26) +/* 801FE6E0 001FB640 D0 3A 08 88 */ stfs f1, 0x888(r26) +/* 801FE6E4 001FB644 D0 9A 08 8C */ stfs f4, 0x88c(r26) +/* 801FE6E8 001FB648 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801FE6EC 001FB64C B0 1A 08 90 */ sth r0, 0x890(r26) +/* 801FE6F0 001FB650 D0 1A 08 94 */ stfs f0, 0x894(r26) +/* 801FE6F4 001FB654 D0 1A 08 98 */ stfs f0, 0x898(r26) +/* 801FE6F8 001FB658 90 DA 08 9C */ stw r6, 0x89c(r26) +/* 801FE6FC 001FB65C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801FE700 001FB660 B0 1A 08 A0 */ sth r0, 0x8a0(r26) +/* 801FE704 001FB664 D0 7A 08 A4 */ stfs f3, 0x8a4(r26) +/* 801FE708 001FB668 80 BA 00 64 */ lwz r5, 0x64(r26) +/* 801FE70C 001FB66C 83 05 00 10 */ lwz r24, 0x10(r5) +/* 801FE710 001FB670 4B E0 65 A9 */ bl string_l__4rstlFPCc +/* 801FE714 001FB674 7F 04 C3 78 */ mr r4, r24 +/* 801FE718 001FB678 38 61 00 2C */ addi r3, r1, 0x2c +/* 801FE71C 001FB67C 38 A1 01 08 */ addi r5, r1, 0x108 +/* 801FE720 001FB680 4B E3 01 19 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801FE724 001FB684 88 01 00 2C */ lbz r0, 0x2c(r1) +/* 801FE728 001FB688 38 61 01 08 */ addi r3, r1, 0x108 +/* 801FE72C 001FB68C 98 1A 07 98 */ stb r0, 0x798(r26) +/* 801FE730 001FB690 48 13 F3 B1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801FE734 001FB694 3C 80 80 3D */ lis r4, lbl_803D247C@ha +/* 801FE738 001FB698 38 61 00 F8 */ addi r3, r1, 0xf8 +/* 801FE73C 001FB69C 38 84 24 7C */ addi r4, r4, lbl_803D247C@l +/* 801FE740 001FB6A0 38 84 00 20 */ addi r4, r4, 0x20 +/* 801FE744 001FB6A4 4B E0 65 75 */ bl string_l__4rstlFPCc +/* 801FE748 001FB6A8 7F 04 C3 78 */ mr r4, r24 +/* 801FE74C 001FB6AC 38 61 00 28 */ addi r3, r1, 0x28 +/* 801FE750 001FB6B0 38 A1 00 F8 */ addi r5, r1, 0xf8 +/* 801FE754 001FB6B4 4B E3 00 E5 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801FE758 001FB6B8 88 01 00 28 */ lbz r0, 0x28(r1) +/* 801FE75C 001FB6BC 38 61 00 F8 */ addi r3, r1, 0xf8 +/* 801FE760 001FB6C0 98 1A 07 E0 */ stb r0, 0x7e0(r26) +/* 801FE764 001FB6C4 48 13 F3 7D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801FE768 001FB6C8 3C 80 80 3D */ lis r4, lbl_803D247C@ha +/* 801FE76C 001FB6CC 38 61 00 E8 */ addi r3, r1, 0xe8 +/* 801FE770 001FB6D0 38 84 24 7C */ addi r4, r4, lbl_803D247C@l +/* 801FE774 001FB6D4 38 84 00 2B */ addi r4, r4, 0x2b +/* 801FE778 001FB6D8 4B E0 65 41 */ bl string_l__4rstlFPCc +/* 801FE77C 001FB6DC 7F 04 C3 78 */ mr r4, r24 +/* 801FE780 001FB6E0 38 61 00 24 */ addi r3, r1, 0x24 +/* 801FE784 001FB6E4 38 A1 00 E8 */ addi r5, r1, 0xe8 +/* 801FE788 001FB6E8 4B E3 00 B1 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801FE78C 001FB6EC 38 7A 08 64 */ addi r3, r26, 0x864 +/* 801FE790 001FB6F0 80 1A 08 64 */ lwz r0, 0x864(r26) +/* 801FE794 001FB6F4 7C 63 02 14 */ add r3, r3, r0 +/* 801FE798 001FB6F8 34 63 00 04 */ addic. r3, r3, 4 +/* 801FE79C 001FB6FC 41 82 00 0C */ beq lbl_801FE7A8 +/* 801FE7A0 001FB700 88 01 00 24 */ lbz r0, 0x24(r1) +/* 801FE7A4 001FB704 98 03 00 00 */ stb r0, 0(r3) +lbl_801FE7A8: +/* 801FE7A8 001FB708 80 9A 08 64 */ lwz r4, 0x864(r26) +/* 801FE7AC 001FB70C 38 61 00 E8 */ addi r3, r1, 0xe8 +/* 801FE7B0 001FB710 38 04 00 01 */ addi r0, r4, 1 +/* 801FE7B4 001FB714 90 1A 08 64 */ stw r0, 0x864(r26) +/* 801FE7B8 001FB718 48 13 F3 29 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801FE7BC 001FB71C 3C 80 80 3D */ lis r4, lbl_803D247C@ha +/* 801FE7C0 001FB720 38 61 00 D8 */ addi r3, r1, 0xd8 +/* 801FE7C4 001FB724 38 84 24 7C */ addi r4, r4, lbl_803D247C@l +/* 801FE7C8 001FB728 38 84 00 3A */ addi r4, r4, 0x3a +/* 801FE7CC 001FB72C 4B E0 64 ED */ bl string_l__4rstlFPCc +/* 801FE7D0 001FB730 7F 04 C3 78 */ mr r4, r24 +/* 801FE7D4 001FB734 38 61 00 20 */ addi r3, r1, 0x20 +/* 801FE7D8 001FB738 38 A1 00 D8 */ addi r5, r1, 0xd8 +/* 801FE7DC 001FB73C 4B E3 00 5D */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801FE7E0 001FB740 38 7A 08 64 */ addi r3, r26, 0x864 +/* 801FE7E4 001FB744 80 1A 08 64 */ lwz r0, 0x864(r26) +/* 801FE7E8 001FB748 7C 63 02 14 */ add r3, r3, r0 +/* 801FE7EC 001FB74C 34 63 00 04 */ addic. r3, r3, 4 +/* 801FE7F0 001FB750 41 82 00 0C */ beq lbl_801FE7FC +/* 801FE7F4 001FB754 88 01 00 20 */ lbz r0, 0x20(r1) +/* 801FE7F8 001FB758 98 03 00 00 */ stb r0, 0(r3) +lbl_801FE7FC: +/* 801FE7FC 001FB75C 80 9A 08 64 */ lwz r4, 0x864(r26) +/* 801FE800 001FB760 38 61 00 D8 */ addi r3, r1, 0xd8 +/* 801FE804 001FB764 38 04 00 01 */ addi r0, r4, 1 +/* 801FE808 001FB768 90 1A 08 64 */ stw r0, 0x864(r26) +/* 801FE80C 001FB76C 48 13 F2 D5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801FE810 001FB770 38 61 00 74 */ addi r3, r1, 0x74 +/* 801FE814 001FB774 48 0E 48 69 */ bl NoParameter__12CPASAnimParmFv +/* 801FE818 001FB778 38 61 00 7C */ addi r3, r1, 0x7c +/* 801FE81C 001FB77C 48 0E 48 61 */ bl NoParameter__12CPASAnimParmFv +/* 801FE820 001FB780 38 61 00 84 */ addi r3, r1, 0x84 +/* 801FE824 001FB784 48 0E 48 59 */ bl NoParameter__12CPASAnimParmFv +/* 801FE828 001FB788 38 61 00 8C */ addi r3, r1, 0x8c +/* 801FE82C 001FB78C 48 0E 48 51 */ bl NoParameter__12CPASAnimParmFv +/* 801FE830 001FB790 38 61 00 94 */ addi r3, r1, 0x94 +/* 801FE834 001FB794 48 0E 48 49 */ bl NoParameter__12CPASAnimParmFv +/* 801FE838 001FB798 38 61 00 9C */ addi r3, r1, 0x9c +/* 801FE83C 001FB79C 48 0E 48 41 */ bl NoParameter__12CPASAnimParmFv +/* 801FE840 001FB7A0 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 801FE844 001FB7A4 38 80 00 01 */ li r4, 1 +/* 801FE848 001FB7A8 48 0E 47 3D */ bl FromEnum__12CPASAnimParmFi +/* 801FE84C 001FB7AC 38 61 00 AC */ addi r3, r1, 0xac +/* 801FE850 001FB7B0 38 80 00 03 */ li r4, 3 +/* 801FE854 001FB7B4 48 0E 47 31 */ bl FromEnum__12CPASAnimParmFi +/* 801FE858 001FB7B8 38 61 00 7C */ addi r3, r1, 0x7c +/* 801FE85C 001FB7BC 38 01 00 74 */ addi r0, r1, 0x74 +/* 801FE860 001FB7C0 90 61 00 08 */ stw r3, 8(r1) +/* 801FE864 001FB7C4 38 61 01 28 */ addi r3, r1, 0x128 +/* 801FE868 001FB7C8 38 A1 00 AC */ addi r5, r1, 0xac +/* 801FE86C 001FB7CC 38 C1 00 A4 */ addi r6, r1, 0xa4 +/* 801FE870 001FB7D0 90 01 00 0C */ stw r0, 0xc(r1) +/* 801FE874 001FB7D4 38 E1 00 9C */ addi r7, r1, 0x9c +/* 801FE878 001FB7D8 39 01 00 94 */ addi r8, r1, 0x94 +/* 801FE87C 001FB7DC 39 21 00 8C */ addi r9, r1, 0x8c +/* 801FE880 001FB7E0 39 41 00 84 */ addi r10, r1, 0x84 +/* 801FE884 001FB7E4 38 80 00 03 */ li r4, 3 +/* 801FE888 001FB7E8 4B E7 EA 3D */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 801FE88C 001FB7EC 83 1A 00 64 */ lwz r24, 0x64(r26) +/* 801FE890 001FB7F0 7F 43 D3 78 */ mr r3, r26 +/* 801FE894 001FB7F4 38 81 01 28 */ addi r4, r1, 0x128 +/* 801FE898 001FB7F8 4B E7 E1 69 */ bl func_8007CA00 +/* 801FE89C 001FB7FC C0 18 00 00 */ lfs f0, 0(r24) +/* 801FE8A0 001FB800 EC 00 00 72 */ fmuls f0, f0, f1 +/* 801FE8A4 001FB804 D0 1A 08 50 */ stfs f0, 0x850(r26) +/* 801FE8A8 001FB808 80 9A 06 40 */ lwz r4, 0x640(r26) +/* 801FE8AC 001FB80C 3C 04 00 01 */ addis r0, r4, 1 +/* 801FE8B0 001FB810 28 00 FF FF */ cmplwi r0, 0xffff +/* 801FE8B4 001FB814 41 82 03 34 */ beq lbl_801FEBE8 +/* 801FE8B8 001FB818 80 7A 06 44 */ lwz r3, 0x644(r26) +/* 801FE8BC 001FB81C 3C 03 00 01 */ addis r0, r3, 1 +/* 801FE8C0 001FB820 28 00 FF FF */ cmplwi r0, 0xffff +/* 801FE8C4 001FB824 41 82 03 24 */ beq lbl_801FEBE8 +/* 801FE8C8 001FB828 80 7A 06 48 */ lwz r3, 0x648(r26) +/* 801FE8CC 001FB82C 3C 03 00 01 */ addis r0, r3, 1 +/* 801FE8D0 001FB830 28 00 FF FF */ cmplwi r0, 0xffff +/* 801FE8D4 001FB834 41 82 03 14 */ beq lbl_801FEBE8 +/* 801FE8D8 001FB838 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 801FE8DC 001FB83C 90 81 00 70 */ stw r4, 0x70(r1) +/* 801FE8E0 001FB840 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 801FE8E4 001FB844 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801FE8E8 001FB848 90 01 00 6C */ stw r0, 0x6c(r1) +/* 801FE8EC 001FB84C 38 61 00 64 */ addi r3, r1, 0x64 +/* 801FE8F0 001FB850 38 A1 00 6C */ addi r5, r1, 0x6c +/* 801FE8F4 001FB854 81 84 00 00 */ lwz r12, 0(r4) +/* 801FE8F8 001FB858 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801FE8FC 001FB85C 7D 89 03 A6 */ mtctr r12 +/* 801FE900 001FB860 4E 80 04 21 */ bctrl +/* 801FE904 001FB864 3B 01 00 CC */ addi r24, r1, 0xcc +/* 801FE908 001FB868 38 81 00 64 */ addi r4, r1, 0x64 +/* 801FE90C 001FB86C 7F 03 C3 78 */ mr r3, r24 +/* 801FE910 001FB870 48 14 25 99 */ bl __ct__6CTokenFRC6CToken +/* 801FE914 001FB874 7F 03 C3 78 */ mr r3, r24 +/* 801FE918 001FB878 48 14 24 F5 */ bl GetObj__6CTokenFv +/* 801FE91C 001FB87C 80 03 00 04 */ lwz r0, 4(r3) +/* 801FE920 001FB880 38 7A 06 5C */ addi r3, r26, 0x65c +/* 801FE924 001FB884 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 801FE928 001FB888 80 1A 06 5C */ lwz r0, 0x65c(r26) +/* 801FE92C 001FB88C 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801FE930 001FB890 7F 23 02 14 */ add r25, r3, r0 +/* 801FE934 001FB894 37 39 00 04 */ addic. r25, r25, 4 +/* 801FE938 001FB898 41 82 00 20 */ beq lbl_801FE958 +/* 801FE93C 001FB89C 7F 23 CB 78 */ mr r3, r25 +/* 801FE940 001FB8A0 7F 04 C3 78 */ mr r4, r24 +/* 801FE944 001FB8A4 48 14 25 65 */ bl __ct__6CTokenFRC6CToken +/* 801FE948 001FB8A8 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 801FE94C 001FB8AC 7F 23 CB 78 */ mr r3, r25 +/* 801FE950 001FB8B0 90 19 00 08 */ stw r0, 8(r25) +/* 801FE954 001FB8B4 48 14 24 31 */ bl Lock__6CTokenFv +lbl_801FE958: +/* 801FE958 001FB8B8 80 BA 06 5C */ lwz r5, 0x65c(r26) +/* 801FE95C 001FB8BC 38 61 00 CC */ addi r3, r1, 0xcc +/* 801FE960 001FB8C0 38 80 00 00 */ li r4, 0 +/* 801FE964 001FB8C4 38 05 00 01 */ addi r0, r5, 1 +/* 801FE968 001FB8C8 90 1A 06 5C */ stw r0, 0x65c(r26) +/* 801FE96C 001FB8CC 48 14 24 D5 */ bl __dt__6CTokenFv +/* 801FE970 001FB8D0 38 61 00 64 */ addi r3, r1, 0x64 +/* 801FE974 001FB8D4 38 80 FF FF */ li r4, -1 +/* 801FE978 001FB8D8 48 14 24 C9 */ bl __dt__6CTokenFv +/* 801FE97C 001FB8DC 80 DA 06 44 */ lwz r6, 0x644(r26) +/* 801FE980 001FB8E0 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 801FE984 001FB8E4 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 801FE988 001FB8E8 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801FE98C 001FB8EC 90 01 00 5C */ stw r0, 0x5c(r1) +/* 801FE990 001FB8F0 38 61 00 54 */ addi r3, r1, 0x54 +/* 801FE994 001FB8F4 38 A1 00 5C */ addi r5, r1, 0x5c +/* 801FE998 001FB8F8 90 C1 00 60 */ stw r6, 0x60(r1) +/* 801FE99C 001FB8FC 81 84 00 00 */ lwz r12, 0(r4) +/* 801FE9A0 001FB900 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801FE9A4 001FB904 7D 89 03 A6 */ mtctr r12 +/* 801FE9A8 001FB908 4E 80 04 21 */ bctrl +/* 801FE9AC 001FB90C 3B 01 00 C0 */ addi r24, r1, 0xc0 +/* 801FE9B0 001FB910 38 81 00 54 */ addi r4, r1, 0x54 +/* 801FE9B4 001FB914 7F 03 C3 78 */ mr r3, r24 +/* 801FE9B8 001FB918 48 14 24 F1 */ bl __ct__6CTokenFRC6CToken +/* 801FE9BC 001FB91C 7F 03 C3 78 */ mr r3, r24 +/* 801FE9C0 001FB920 48 14 24 4D */ bl GetObj__6CTokenFv +/* 801FE9C4 001FB924 80 03 00 04 */ lwz r0, 4(r3) +/* 801FE9C8 001FB928 38 7A 06 5C */ addi r3, r26, 0x65c +/* 801FE9CC 001FB92C 90 01 00 C8 */ stw r0, 0xc8(r1) +/* 801FE9D0 001FB930 80 1A 06 5C */ lwz r0, 0x65c(r26) +/* 801FE9D4 001FB934 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801FE9D8 001FB938 7F 23 02 14 */ add r25, r3, r0 +/* 801FE9DC 001FB93C 37 39 00 04 */ addic. r25, r25, 4 +/* 801FE9E0 001FB940 41 82 00 20 */ beq lbl_801FEA00 +/* 801FE9E4 001FB944 7F 23 CB 78 */ mr r3, r25 +/* 801FE9E8 001FB948 7F 04 C3 78 */ mr r4, r24 +/* 801FE9EC 001FB94C 48 14 24 BD */ bl __ct__6CTokenFRC6CToken +/* 801FE9F0 001FB950 80 01 00 C8 */ lwz r0, 0xc8(r1) +/* 801FE9F4 001FB954 7F 23 CB 78 */ mr r3, r25 +/* 801FE9F8 001FB958 90 19 00 08 */ stw r0, 8(r25) +/* 801FE9FC 001FB95C 48 14 23 89 */ bl Lock__6CTokenFv +lbl_801FEA00: +/* 801FEA00 001FB960 80 BA 06 5C */ lwz r5, 0x65c(r26) +/* 801FEA04 001FB964 38 61 00 C0 */ addi r3, r1, 0xc0 +/* 801FEA08 001FB968 38 80 00 00 */ li r4, 0 +/* 801FEA0C 001FB96C 38 05 00 01 */ addi r0, r5, 1 +/* 801FEA10 001FB970 90 1A 06 5C */ stw r0, 0x65c(r26) +/* 801FEA14 001FB974 48 14 24 2D */ bl __dt__6CTokenFv +/* 801FEA18 001FB978 38 61 00 54 */ addi r3, r1, 0x54 +/* 801FEA1C 001FB97C 38 80 FF FF */ li r4, -1 +/* 801FEA20 001FB980 48 14 24 21 */ bl __dt__6CTokenFv +/* 801FEA24 001FB984 80 DA 06 48 */ lwz r6, 0x648(r26) +/* 801FEA28 001FB988 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 801FEA2C 001FB98C 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 801FEA30 001FB990 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801FEA34 001FB994 90 01 00 4C */ stw r0, 0x4c(r1) +/* 801FEA38 001FB998 38 61 00 44 */ addi r3, r1, 0x44 +/* 801FEA3C 001FB99C 38 A1 00 4C */ addi r5, r1, 0x4c +/* 801FEA40 001FB9A0 90 C1 00 50 */ stw r6, 0x50(r1) +/* 801FEA44 001FB9A4 81 84 00 00 */ lwz r12, 0(r4) +/* 801FEA48 001FB9A8 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801FEA4C 001FB9AC 7D 89 03 A6 */ mtctr r12 +/* 801FEA50 001FB9B0 4E 80 04 21 */ bctrl +/* 801FEA54 001FB9B4 3B 01 00 B4 */ addi r24, r1, 0xb4 +/* 801FEA58 001FB9B8 38 81 00 44 */ addi r4, r1, 0x44 +/* 801FEA5C 001FB9BC 7F 03 C3 78 */ mr r3, r24 +/* 801FEA60 001FB9C0 48 14 24 49 */ bl __ct__6CTokenFRC6CToken +/* 801FEA64 001FB9C4 7F 03 C3 78 */ mr r3, r24 +/* 801FEA68 001FB9C8 48 14 23 A5 */ bl GetObj__6CTokenFv +/* 801FEA6C 001FB9CC 80 03 00 04 */ lwz r0, 4(r3) +/* 801FEA70 001FB9D0 38 7A 06 5C */ addi r3, r26, 0x65c +/* 801FEA74 001FB9D4 90 01 00 BC */ stw r0, 0xbc(r1) +/* 801FEA78 001FB9D8 80 1A 06 5C */ lwz r0, 0x65c(r26) +/* 801FEA7C 001FB9DC 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801FEA80 001FB9E0 7F 23 02 14 */ add r25, r3, r0 +/* 801FEA84 001FB9E4 37 39 00 04 */ addic. r25, r25, 4 +/* 801FEA88 001FB9E8 41 82 00 20 */ beq lbl_801FEAA8 +/* 801FEA8C 001FB9EC 7F 23 CB 78 */ mr r3, r25 +/* 801FEA90 001FB9F0 7F 04 C3 78 */ mr r4, r24 +/* 801FEA94 001FB9F4 48 14 24 15 */ bl __ct__6CTokenFRC6CToken +/* 801FEA98 001FB9F8 80 01 00 BC */ lwz r0, 0xbc(r1) +/* 801FEA9C 001FB9FC 7F 23 CB 78 */ mr r3, r25 +/* 801FEAA0 001FBA00 90 19 00 08 */ stw r0, 8(r25) +/* 801FEAA4 001FBA04 48 14 22 E1 */ bl Lock__6CTokenFv +lbl_801FEAA8: +/* 801FEAA8 001FBA08 80 BA 06 5C */ lwz r5, 0x65c(r26) +/* 801FEAAC 001FBA0C 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 801FEAB0 001FBA10 38 80 00 00 */ li r4, 0 +/* 801FEAB4 001FBA14 38 05 00 01 */ addi r0, r5, 1 +/* 801FEAB8 001FBA18 90 1A 06 5C */ stw r0, 0x65c(r26) +/* 801FEABC 001FBA1C 48 14 23 85 */ bl __dt__6CTokenFv +/* 801FEAC0 001FBA20 38 61 00 44 */ addi r3, r1, 0x44 +/* 801FEAC4 001FBA24 38 80 FF FF */ li r4, -1 +/* 801FEAC8 001FBA28 48 14 23 79 */ bl __dt__6CTokenFv +/* 801FEACC 001FBA2C 3B C0 00 00 */ li r30, 0 +/* 801FEAD0 001FBA30 3C 60 80 3D */ lis r3, lbl_803D247C@ha +/* 801FEAD4 001FBA34 7F DD F3 78 */ mr r29, r30 +/* 801FEAD8 001FBA38 3B 9A 06 84 */ addi r28, r26, 0x684 +/* 801FEADC 001FBA3C 3B E3 24 7C */ addi r31, r3, lbl_803D247C@l +/* 801FEAE0 001FBA40 3B 60 00 00 */ li r27, 0 +/* 801FEAE4 001FBA44 48 00 00 F8 */ b lbl_801FEBDC +lbl_801FEAE8: +/* 801FEAE8 001FBA48 38 9F 00 08 */ addi r4, r31, 8 +/* 801FEAEC 001FBA4C 3B 20 00 00 */ li r25, 0 +/* 801FEAF0 001FBA50 38 60 03 40 */ li r3, 0x340 +/* 801FEAF4 001FBA54 38 A0 00 00 */ li r5, 0 +/* 801FEAF8 001FBA58 48 11 6D 75 */ bl __nw__FUlPCcPCc +/* 801FEAFC 001FBA5C 7C 78 1B 79 */ or. r24, r3, r3 +/* 801FEB00 001FBA60 41 82 00 30 */ beq lbl_801FEB30 +/* 801FEB04 001FBA64 7C 9A F2 14 */ add r4, r26, r30 +/* 801FEB08 001FBA68 38 61 00 3C */ addi r3, r1, 0x3c +/* 801FEB0C 001FBA6C 38 84 06 60 */ addi r4, r4, 0x660 +/* 801FEB10 001FBA70 48 14 23 99 */ bl __ct__6CTokenFRC6CToken +/* 801FEB14 001FBA74 7F 03 C3 78 */ mr r3, r24 +/* 801FEB18 001FBA78 38 81 00 3C */ addi r4, r1, 0x3c +/* 801FEB1C 001FBA7C 3B 20 00 01 */ li r25, 1 +/* 801FEB20 001FBA80 38 A0 00 00 */ li r5, 0 +/* 801FEB24 001FBA84 38 C0 00 01 */ li r6, 1 +/* 801FEB28 001FBA88 48 12 08 B9 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 801FEB2C 001FBA8C 7C 78 1B 78 */ mr r24, r3 +lbl_801FEB30: +/* 801FEB30 001FBA90 80 1C 00 00 */ lwz r0, 0(r28) +/* 801FEB34 001FBA94 7C 78 00 D0 */ neg r3, r24 +/* 801FEB38 001FBA98 7C 63 C3 78 */ or r3, r3, r24 +/* 801FEB3C 001FBA9C 93 01 00 38 */ stw r24, 0x38(r1) +/* 801FEB40 001FBAA0 54 00 18 38 */ slwi r0, r0, 3 +/* 801FEB44 001FBAA4 7C 9C 02 14 */ add r4, r28, r0 +/* 801FEB48 001FBAA8 54 60 0F FE */ srwi r0, r3, 0x1f +/* 801FEB4C 001FBAAC 34 84 00 04 */ addic. r4, r4, 4 +/* 801FEB50 001FBAB0 98 01 00 34 */ stb r0, 0x34(r1) +/* 801FEB54 001FBAB4 41 82 00 14 */ beq lbl_801FEB68 +/* 801FEB58 001FBAB8 98 04 00 00 */ stb r0, 0(r4) +/* 801FEB5C 001FBABC 38 00 00 00 */ li r0, 0 +/* 801FEB60 001FBAC0 93 04 00 04 */ stw r24, 4(r4) +/* 801FEB64 001FBAC4 98 01 00 34 */ stb r0, 0x34(r1) +lbl_801FEB68: +/* 801FEB68 001FBAC8 80 7A 06 84 */ lwz r3, 0x684(r26) +/* 801FEB6C 001FBACC 88 01 00 34 */ lbz r0, 0x34(r1) +/* 801FEB70 001FBAD0 38 63 00 01 */ addi r3, r3, 1 +/* 801FEB74 001FBAD4 28 00 00 00 */ cmplwi r0, 0 +/* 801FEB78 001FBAD8 90 7A 06 84 */ stw r3, 0x684(r26) +/* 801FEB7C 001FBADC 41 82 00 24 */ beq lbl_801FEBA0 +/* 801FEB80 001FBAE0 80 61 00 38 */ lwz r3, 0x38(r1) +/* 801FEB84 001FBAE4 28 03 00 00 */ cmplwi r3, 0 +/* 801FEB88 001FBAE8 41 82 00 18 */ beq lbl_801FEBA0 +/* 801FEB8C 001FBAEC 81 83 00 00 */ lwz r12, 0(r3) +/* 801FEB90 001FBAF0 38 80 00 01 */ li r4, 1 +/* 801FEB94 001FBAF4 81 8C 00 08 */ lwz r12, 8(r12) +/* 801FEB98 001FBAF8 7D 89 03 A6 */ mtctr r12 +/* 801FEB9C 001FBAFC 4E 80 04 21 */ bctrl +lbl_801FEBA0: +/* 801FEBA0 001FBB00 7F 20 07 75 */ extsb. r0, r25 +/* 801FEBA4 001FBB04 41 82 00 10 */ beq lbl_801FEBB4 +/* 801FEBA8 001FBB08 38 61 00 3C */ addi r3, r1, 0x3c +/* 801FEBAC 001FBB0C 38 80 00 00 */ li r4, 0 +/* 801FEBB0 001FBB10 48 14 22 91 */ bl __dt__6CTokenFv +lbl_801FEBB4: +/* 801FEBB4 001FBB14 7C 7A EA 14 */ add r3, r26, r29 +/* 801FEBB8 001FBB18 38 80 00 00 */ li r4, 0 +/* 801FEBBC 001FBB1C 80 63 06 8C */ lwz r3, 0x68c(r3) +/* 801FEBC0 001FBB20 81 83 00 00 */ lwz r12, 0(r3) +/* 801FEBC4 001FBB24 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801FEBC8 001FBB28 7D 89 03 A6 */ mtctr r12 +/* 801FEBCC 001FBB2C 4E 80 04 21 */ bctrl +/* 801FEBD0 001FBB30 3B DE 00 0C */ addi r30, r30, 0xc +/* 801FEBD4 001FBB34 3B BD 00 08 */ addi r29, r29, 8 +/* 801FEBD8 001FBB38 3B 7B 00 01 */ addi r27, r27, 1 +lbl_801FEBDC: +/* 801FEBDC 001FBB3C 80 1A 06 5C */ lwz r0, 0x65c(r26) +/* 801FEBE0 001FBB40 7C 1B 00 00 */ cmpw r27, r0 +/* 801FEBE4 001FBB44 41 80 FF 04 */ blt lbl_801FEAE8 +lbl_801FEBE8: +/* 801FEBE8 001FBB48 88 1A 04 E2 */ lbz r0, 0x4e2(r26) +/* 801FEBEC 001FBB4C 38 60 00 01 */ li r3, 1 +/* 801FEBF0 001FBB50 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 801FEBF4 001FBB54 34 A1 01 2C */ addic. r5, r1, 0x12c +/* 801FEBF8 001FBB58 98 1A 04 E2 */ stb r0, 0x4e2(r26) +/* 801FEBFC 001FBB5C 41 82 00 58 */ beq lbl_801FEC54 +/* 801FEC00 001FBB60 80 C5 00 00 */ lwz r6, 0(r5) +/* 801FEC04 001FBB64 38 60 00 00 */ li r3, 0 +/* 801FEC08 001FBB68 2C 06 00 00 */ cmpwi r6, 0 +/* 801FEC0C 001FBB6C 40 81 00 40 */ ble lbl_801FEC4C +/* 801FEC10 001FBB70 2C 06 00 08 */ cmpwi r6, 8 +/* 801FEC14 001FBB74 38 86 FF F8 */ addi r4, r6, -8 +/* 801FEC18 001FBB78 40 81 00 20 */ ble lbl_801FEC38 +/* 801FEC1C 001FBB7C 38 04 00 07 */ addi r0, r4, 7 +/* 801FEC20 001FBB80 54 00 E8 FE */ srwi r0, r0, 3 +/* 801FEC24 001FBB84 7C 09 03 A6 */ mtctr r0 +/* 801FEC28 001FBB88 2C 04 00 00 */ cmpwi r4, 0 +/* 801FEC2C 001FBB8C 40 81 00 0C */ ble lbl_801FEC38 +lbl_801FEC30: +/* 801FEC30 001FBB90 38 63 00 08 */ addi r3, r3, 8 +/* 801FEC34 001FBB94 42 00 FF FC */ bdnz lbl_801FEC30 +lbl_801FEC38: +/* 801FEC38 001FBB98 7C 03 30 50 */ subf r0, r3, r6 +/* 801FEC3C 001FBB9C 7C 09 03 A6 */ mtctr r0 +/* 801FEC40 001FBBA0 7C 03 30 00 */ cmpw r3, r6 +/* 801FEC44 001FBBA4 40 80 00 08 */ bge lbl_801FEC4C +lbl_801FEC48: +/* 801FEC48 001FBBA8 42 00 00 00 */ bdnz lbl_801FEC48 +lbl_801FEC4C: +/* 801FEC4C 001FBBAC 38 00 00 00 */ li r0, 0 +/* 801FEC50 001FBBB0 90 05 00 00 */ stw r0, 0(r5) +lbl_801FEC54: +/* 801FEC54 001FBBB4 7F 43 D3 78 */ mr r3, r26 +/* 801FEC58 001FBBB8 BB 01 01 70 */ lmw r24, 0x170(r1) +/* 801FEC5C 001FBBBC 80 01 01 94 */ lwz r0, 0x194(r1) +/* 801FEC60 001FBBC0 7C 08 03 A6 */ mtlr r0 +/* 801FEC64 001FBBC4 38 21 01 90 */ addi r1, r1, 0x190 +/* 801FEC68 001FBBC8 4E 80 00 20 */ blr + +.global sub_801fec6c +sub_801fec6c: +/* 801FEC6C 001FBBCC 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801FEC70 001FBBD0 7C 08 02 A6 */ mflr r0 +/* 801FEC74 001FBBD4 90 01 00 54 */ stw r0, 0x54(r1) +/* 801FEC78 001FBBD8 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801FEC7C 001FBBDC 7C BF 2B 78 */ mr r31, r5 +/* 801FEC80 001FBBE0 93 C1 00 48 */ stw r30, 0x48(r1) +/* 801FEC84 001FBBE4 7C 9E 23 78 */ mr r30, r4 +/* 801FEC88 001FBBE8 93 A1 00 44 */ stw r29, 0x44(r1) +/* 801FEC8C 001FBBEC 7C 7D 1B 78 */ mr r29, r3 +/* 801FEC90 001FBBF0 7F C3 F3 78 */ mr r3, r30 +/* 801FEC94 001FBBF4 93 81 00 40 */ stw r28, 0x40(r1) +/* 801FEC98 001FBBF8 48 13 FF 91 */ bl ReadFloat__12CInputStreamFv +/* 801FEC9C 001FBBFC D0 3D 00 00 */ stfs f1, 0(r29) +/* 801FECA0 001FBC00 7F C3 F3 78 */ mr r3, r30 +/* 801FECA4 001FBC04 48 13 FF 85 */ bl ReadFloat__12CInputStreamFv +/* 801FECA8 001FBC08 D0 3D 00 04 */ stfs f1, 4(r29) +/* 801FECAC 001FBC0C 7F C3 F3 78 */ mr r3, r30 +/* 801FECB0 001FBC10 48 13 FF D5 */ bl ReadLong__12CInputStreamFv +/* 801FECB4 001FBC14 90 7D 00 08 */ stw r3, 8(r29) +/* 801FECB8 001FBC18 7F C4 F3 78 */ mr r4, r30 +/* 801FECBC 001FBC1C 38 7D 00 0C */ addi r3, r29, 0xc +/* 801FECC0 001FBC20 48 01 D3 51 */ bl sub_8021c010 +/* 801FECC4 001FBC24 7F C3 F3 78 */ mr r3, r30 +/* 801FECC8 001FBC28 48 13 FF BD */ bl ReadLong__12CInputStreamFv +/* 801FECCC 001FBC2C 54 63 04 3E */ clrlwi r3, r3, 0x10 +/* 801FECD0 001FBC30 48 0E 9C E1 */ bl TranslateSFXID__11CSfxManagerFUs +/* 801FECD4 001FBC34 B0 7D 00 34 */ sth r3, 0x34(r29) +/* 801FECD8 001FBC38 7F C4 F3 78 */ mr r4, r30 +/* 801FECDC 001FBC3C 38 7D 00 38 */ addi r3, r29, 0x38 +/* 801FECE0 001FBC40 48 01 D3 31 */ bl sub_8021c010 +/* 801FECE4 001FBC44 88 01 00 0C */ lbz r0, 0xc(r1) +/* 801FECE8 001FBC48 38 A0 00 00 */ li r5, 0 +/* 801FECEC 001FBC4C 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 801FECF0 001FBC50 C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801FECF4 001FBC54 98 01 00 0C */ stb r0, 0xc(r1) +/* 801FECF8 001FBC58 54 03 06 3E */ clrlwi r3, r0, 0x18 +/* 801FECFC 001FBC5C 50 A3 36 72 */ rlwimi r3, r5, 6, 0x19, 0x19 +/* 801FED00 001FBC60 38 C0 FF FF */ li r6, -1 +/* 801FED04 001FBC64 88 01 00 38 */ lbz r0, 0x38(r1) +/* 801FED08 001FBC68 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 801FED0C 001FBC6C 54 64 06 3E */ clrlwi r4, r3, 0x18 +/* 801FED10 001FBC70 98 61 00 0C */ stb r3, 0xc(r1) +/* 801FED14 001FBC74 50 A4 2E B4 */ rlwimi r4, r5, 5, 0x1a, 0x1a +/* 801FED18 001FBC78 7F C3 F3 78 */ mr r3, r30 +/* 801FED1C 001FBC7C 90 C1 00 08 */ stw r6, 8(r1) +/* 801FED20 001FBC80 98 81 00 0C */ stb r4, 0xc(r1) +/* 801FED24 001FBC84 90 C1 00 20 */ stw r6, 0x20(r1) +/* 801FED28 001FBC88 98 81 00 24 */ stb r4, 0x24(r1) +/* 801FED2C 001FBC8C D0 01 00 28 */ stfs f0, 0x28(r1) +/* 801FED30 001FBC90 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801FED34 001FBC94 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801FED38 001FBC98 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801FED3C 001FBC9C 98 01 00 38 */ stb r0, 0x38(r1) +/* 801FED40 001FBCA0 48 13 FF 45 */ bl ReadLong__12CInputStreamFv +/* 801FED44 001FBCA4 7C 64 1B 78 */ mr r4, r3 +/* 801FED48 001FBCA8 38 7D 00 60 */ addi r3, r29, 0x60 +/* 801FED4C 001FBCAC 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801FED50 001FBCB0 48 01 D3 59 */ bl __ct__15CProjectileInfoFUiRC11CDamageInfo +/* 801FED54 001FBCB4 7F C3 F3 78 */ mr r3, r30 +/* 801FED58 001FBCB8 48 13 FE D1 */ bl ReadFloat__12CInputStreamFv +/* 801FED5C 001FBCBC D0 3D 00 88 */ stfs f1, 0x88(r29) +/* 801FED60 001FBCC0 7F C3 F3 78 */ mr r3, r30 +/* 801FED64 001FBCC4 48 13 FE C5 */ bl ReadFloat__12CInputStreamFv +/* 801FED68 001FBCC8 D0 3D 00 8C */ stfs f1, 0x8c(r29) +/* 801FED6C 001FBCCC 7F C3 F3 78 */ mr r3, r30 +/* 801FED70 001FBCD0 48 13 FF 15 */ bl ReadLong__12CInputStreamFv +/* 801FED74 001FBCD4 3C 80 50 41 */ lis r4, 0x50415254@ha +/* 801FED78 001FBCD8 90 61 00 1C */ stw r3, 0x1c(r1) +/* 801FED7C 001FBCDC 38 04 52 54 */ addi r0, r4, 0x50415254@l +/* 801FED80 001FBCE0 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801FED84 001FBCE4 90 01 00 18 */ stw r0, 0x18(r1) +/* 801FED88 001FBCE8 38 61 00 10 */ addi r3, r1, 0x10 +/* 801FED8C 001FBCEC 38 A1 00 18 */ addi r5, r1, 0x18 +/* 801FED90 001FBCF0 81 84 00 00 */ lwz r12, 0(r4) +/* 801FED94 001FBCF4 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801FED98 001FBCF8 7D 89 03 A6 */ mtctr r12 +/* 801FED9C 001FBCFC 4E 80 04 21 */ bctrl +/* 801FEDA0 001FBD00 3B 9D 00 90 */ addi r28, r29, 0x90 +/* 801FEDA4 001FBD04 38 81 00 10 */ addi r4, r1, 0x10 +/* 801FEDA8 001FBD08 7F 83 E3 78 */ mr r3, r28 +/* 801FEDAC 001FBD0C 48 14 20 FD */ bl __ct__6CTokenFRC6CToken +/* 801FEDB0 001FBD10 7F 83 E3 78 */ mr r3, r28 +/* 801FEDB4 001FBD14 48 14 20 59 */ bl GetObj__6CTokenFv +/* 801FEDB8 001FBD18 80 03 00 04 */ lwz r0, 4(r3) +/* 801FEDBC 001FBD1C 38 61 00 10 */ addi r3, r1, 0x10 +/* 801FEDC0 001FBD20 38 80 FF FF */ li r4, -1 +/* 801FEDC4 001FBD24 90 1C 00 08 */ stw r0, 8(r28) +/* 801FEDC8 001FBD28 48 14 20 79 */ bl __dt__6CTokenFv +/* 801FEDCC 001FBD2C 7F C4 F3 78 */ mr r4, r30 +/* 801FEDD0 001FBD30 38 7D 00 9C */ addi r3, r29, 0x9c +/* 801FEDD4 001FBD34 4B EC 47 8D */ bl __ct__11CDamageInfoFR12CInputStream +/* 801FEDD8 001FBD38 7F C3 F3 78 */ mr r3, r30 +/* 801FEDDC 001FBD3C 48 13 FE 4D */ bl ReadFloat__12CInputStreamFv +/* 801FEDE0 001FBD40 D0 3D 00 B8 */ stfs f1, 0xb8(r29) +/* 801FEDE4 001FBD44 7F C3 F3 78 */ mr r3, r30 +/* 801FEDE8 001FBD48 48 13 FE 41 */ bl ReadFloat__12CInputStreamFv +/* 801FEDEC 001FBD4C D0 3D 00 BC */ stfs f1, 0xbc(r29) +/* 801FEDF0 001FBD50 7F C3 F3 78 */ mr r3, r30 +/* 801FEDF4 001FBD54 48 13 FE 35 */ bl ReadFloat__12CInputStreamFv +/* 801FEDF8 001FBD58 D0 3D 00 C0 */ stfs f1, 0xc0(r29) +/* 801FEDFC 001FBD5C 7F C3 F3 78 */ mr r3, r30 +/* 801FEE00 001FBD60 48 13 FE 29 */ bl ReadFloat__12CInputStreamFv +/* 801FEE04 001FBD64 D0 3D 00 C4 */ stfs f1, 0xc4(r29) +/* 801FEE08 001FBD68 7F C3 F3 78 */ mr r3, r30 +/* 801FEE0C 001FBD6C 48 13 FE 79 */ bl ReadLong__12CInputStreamFv +/* 801FEE10 001FBD70 54 63 04 3E */ clrlwi r3, r3, 0x10 +/* 801FEE14 001FBD74 48 0E 9B 9D */ bl TranslateSFXID__11CSfxManagerFUs +/* 801FEE18 001FBD78 B0 7D 00 C8 */ sth r3, 0xc8(r29) +/* 801FEE1C 001FBD7C 7F C3 F3 78 */ mr r3, r30 +/* 801FEE20 001FBD80 48 13 FE 65 */ bl ReadLong__12CInputStreamFv +/* 801FEE24 001FBD84 54 63 04 3E */ clrlwi r3, r3, 0x10 +/* 801FEE28 001FBD88 48 0E 9B 89 */ bl TranslateSFXID__11CSfxManagerFUs +/* 801FEE2C 001FBD8C B0 7D 00 CA */ sth r3, 0xca(r29) +/* 801FEE30 001FBD90 7F C3 F3 78 */ mr r3, r30 +/* 801FEE34 001FBD94 48 13 FD F5 */ bl ReadFloat__12CInputStreamFv +/* 801FEE38 001FBD98 D0 3D 00 CC */ stfs f1, 0xcc(r29) +/* 801FEE3C 001FBD9C 7F C3 F3 78 */ mr r3, r30 +/* 801FEE40 001FBDA0 48 13 FD E9 */ bl ReadFloat__12CInputStreamFv +/* 801FEE44 001FBDA4 D0 3D 00 D0 */ stfs f1, 0xd0(r29) +/* 801FEE48 001FBDA8 7F C3 F3 78 */ mr r3, r30 +/* 801FEE4C 001FBDAC 48 13 FD DD */ bl ReadFloat__12CInputStreamFv +/* 801FEE50 001FBDB0 D0 3D 00 D4 */ stfs f1, 0xd4(r29) +/* 801FEE54 001FBDB4 7F C3 F3 78 */ mr r3, r30 +/* 801FEE58 001FBDB8 48 13 FE 2D */ bl ReadLong__12CInputStreamFv +/* 801FEE5C 001FBDBC 90 7D 00 D8 */ stw r3, 0xd8(r29) +/* 801FEE60 001FBDC0 7F C3 F3 78 */ mr r3, r30 +/* 801FEE64 001FBDC4 48 13 FE 21 */ bl ReadLong__12CInputStreamFv +/* 801FEE68 001FBDC8 90 7D 00 DC */ stw r3, 0xdc(r29) +/* 801FEE6C 001FBDCC 7F C3 F3 78 */ mr r3, r30 +/* 801FEE70 001FBDD0 48 13 FE 15 */ bl ReadLong__12CInputStreamFv +/* 801FEE74 001FBDD4 90 7D 00 E0 */ stw r3, 0xe0(r29) +/* 801FEE78 001FBDD8 7F C3 F3 78 */ mr r3, r30 +/* 801FEE7C 001FBDDC 48 13 FE 09 */ bl ReadLong__12CInputStreamFv +/* 801FEE80 001FBDE0 54 63 04 3E */ clrlwi r3, r3, 0x10 +/* 801FEE84 001FBDE4 48 0E 9B 2D */ bl TranslateSFXID__11CSfxManagerFUs +/* 801FEE88 001FBDE8 B0 7D 00 E4 */ sth r3, 0xe4(r29) +/* 801FEE8C 001FBDEC 7F C3 F3 78 */ mr r3, r30 +/* 801FEE90 001FBDF0 48 13 FD F5 */ bl ReadLong__12CInputStreamFv +/* 801FEE94 001FBDF4 54 63 04 3E */ clrlwi r3, r3, 0x10 +/* 801FEE98 001FBDF8 48 0E 9B 19 */ bl TranslateSFXID__11CSfxManagerFUs +/* 801FEE9C 001FBDFC B0 7D 00 E6 */ sth r3, 0xe6(r29) +/* 801FEEA0 001FBE00 7F C3 F3 78 */ mr r3, r30 +/* 801FEEA4 001FBE04 48 13 FD 85 */ bl ReadFloat__12CInputStreamFv +/* 801FEEA8 001FBE08 D0 3D 00 E8 */ stfs f1, 0xe8(r29) +/* 801FEEAC 001FBE0C 7F C3 F3 78 */ mr r3, r30 +/* 801FEEB0 001FBE10 48 13 FD 79 */ bl ReadFloat__12CInputStreamFv +/* 801FEEB4 001FBE14 2C 1F 00 23 */ cmpwi r31, 0x23 +/* 801FEEB8 001FBE18 D0 3D 00 EC */ stfs f1, 0xec(r29) +/* 801FEEBC 001FBE1C 40 81 00 10 */ ble lbl_801FEECC +/* 801FEEC0 001FBE20 7F C3 F3 78 */ mr r3, r30 +/* 801FEEC4 001FBE24 48 13 FD 65 */ bl ReadFloat__12CInputStreamFv +/* 801FEEC8 001FBE28 48 00 00 08 */ b lbl_801FEED0 +lbl_801FEECC: +/* 801FEECC 001FBE2C C0 22 AF EC */ lfs f1, lbl_805ACD0C@sda21(r2) +lbl_801FEED0: +/* 801FEED0 001FBE30 D0 3D 00 F0 */ stfs f1, 0xf0(r29) +/* 801FEED4 001FBE34 38 7D 00 0C */ addi r3, r29, 0xc +/* 801FEED8 001FBE38 48 14 1E AD */ bl Lock__6CTokenFv +/* 801FEEDC 001FBE3C 38 7D 00 38 */ addi r3, r29, 0x38 +/* 801FEEE0 001FBE40 48 14 1E A5 */ bl Lock__6CTokenFv +/* 801FEEE4 001FBE44 38 7D 00 60 */ addi r3, r29, 0x60 +/* 801FEEE8 001FBE48 48 14 1E 9D */ bl Lock__6CTokenFv +/* 801FEEEC 001FBE4C 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801FEEF0 001FBE50 7F A3 EB 78 */ mr r3, r29 +/* 801FEEF4 001FBE54 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801FEEF8 001FBE58 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 801FEEFC 001FBE5C 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 801FEF00 001FBE60 83 81 00 40 */ lwz r28, 0x40(r1) +/* 801FEF04 001FBE64 7C 08 03 A6 */ mtlr r0 +/* 801FEF08 001FBE68 38 21 00 50 */ addi r1, r1, 0x50 +/* 801FEF0C 001FBE6C 4E 80 00 20 */ blr + +.global PreRender__20CFlyingPirateRagDollFRC9CVector3fR10CModelData +PreRender__20CFlyingPirateRagDollFRC9CVector3fR10CModelData: +/* 801FEF10 001FBE70 94 21 FD A0 */ stwu r1, -0x260(r1) +/* 801FEF14 001FBE74 7C 08 02 A6 */ mflr r0 +/* 801FEF18 001FBE78 90 01 02 64 */ stw r0, 0x264(r1) +/* 801FEF1C 001FBE7C BF 21 02 44 */ stmw r25, 0x244(r1) +/* 801FEF20 001FBE80 7C 7A 1B 78 */ mr r26, r3 +/* 801FEF24 001FBE84 7C 9B 23 78 */ mr r27, r4 +/* 801FEF28 001FBE88 7C BD 2B 78 */ mr r29, r5 +/* 801FEF2C 001FBE8C 88 03 00 68 */ lbz r0, 0x68(r3) +/* 801FEF30 001FBE90 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801FEF34 001FBE94 40 82 06 68 */ bne lbl_801FF59C +/* 801FEF38 001FBE98 83 FD 00 10 */ lwz r31, 0x10(r29) +/* 801FEF3C 001FBE9C 3C 60 80 5A */ lis r3, lbl_805A6660@ha +/* 801FEF40 001FBEA0 38 63 66 60 */ addi r3, r3, lbl_805A6660@l +/* 801FEF44 001FBEA4 80 9F 00 D4 */ lwz r4, 0xd4(r31) +/* 801FEF48 001FBEA8 3B DF 02 FC */ addi r30, r31, 0x2fc +/* 801FEF4C 001FBEAC 3B 9E 00 40 */ addi r28, r30, 0x40 +/* 801FEF50 001FBEB0 80 A4 00 14 */ lwz r5, 0x14(r4) +/* 801FEF54 001FBEB4 48 00 00 70 */ b lbl_801FEFC4 +lbl_801FEF58: +/* 801FEF58 001FBEB8 80 DF 00 D4 */ lwz r6, 0xd4(r31) +/* 801FEF5C 001FBEBC 88 05 00 00 */ lbz r0, 0(r5) +/* 801FEF60 001FBEC0 81 06 00 00 */ lwz r8, 0(r6) +/* 801FEF64 001FBEC4 54 07 0D FC */ rlwinm r7, r0, 1, 0x17, 0x1e +/* 801FEF68 001FBEC8 7C C8 3A 14 */ add r6, r8, r7 +/* 801FEF6C 001FBECC 81 08 00 D0 */ lwz r8, 0xd0(r8) +/* 801FEF70 001FBED0 88 06 00 09 */ lbz r0, 9(r6) +/* 801FEF74 001FBED4 54 06 2C F4 */ rlwinm r6, r0, 5, 0x13, 0x1a +/* 801FEF78 001FBED8 38 06 00 14 */ addi r0, r6, 0x14 +/* 801FEF7C 001FBEDC 7C 08 00 2E */ lwzx r0, r8, r0 +/* 801FEF80 001FBEE0 2C 00 00 01 */ cmpwi r0, 1 +/* 801FEF84 001FBEE4 40 81 00 3C */ ble lbl_801FEFC0 +/* 801FEF88 001FBEE8 38 07 00 01 */ addi r0, r7, 1 +/* 801FEF8C 001FBEEC 3C C0 80 5A */ lis r6, lbl_805A6660@ha +/* 801FEF90 001FBEF0 7C 1C 00 AE */ lbzx r0, r28, r0 +/* 801FEF94 001FBEF4 80 FE 01 08 */ lwz r7, 0x108(r30) +/* 801FEF98 001FBEF8 54 00 2C F4 */ rlwinm r0, r0, 5, 0x13, 0x1a +/* 801FEF9C 001FBEFC C0 06 66 60 */ lfs f0, lbl_805A6660@l(r6) +/* 801FEFA0 001FBF00 7C E7 02 14 */ add r7, r7, r0 +/* 801FEFA4 001FBF04 D0 07 00 04 */ stfs f0, 4(r7) +/* 801FEFA8 001FBF08 80 C3 00 04 */ lwz r6, 4(r3) +/* 801FEFAC 001FBF0C 80 03 00 08 */ lwz r0, 8(r3) +/* 801FEFB0 001FBF10 90 C7 00 08 */ stw r6, 8(r7) +/* 801FEFB4 001FBF14 90 07 00 0C */ stw r0, 0xc(r7) +/* 801FEFB8 001FBF18 80 03 00 0C */ lwz r0, 0xc(r3) +/* 801FEFBC 001FBF1C 90 07 00 10 */ stw r0, 0x10(r7) +lbl_801FEFC0: +/* 801FEFC0 001FBF20 38 A5 00 01 */ addi r5, r5, 1 +lbl_801FEFC4: +/* 801FEFC4 001FBF24 80 C4 00 14 */ lwz r6, 0x14(r4) +/* 801FEFC8 001FBF28 80 04 00 0C */ lwz r0, 0xc(r4) +/* 801FEFCC 001FBF2C 7C 06 02 14 */ add r0, r6, r0 +/* 801FEFD0 001FBF30 7C 05 00 40 */ cmplw r5, r0 +/* 801FEFD4 001FBF34 40 82 FF 84 */ bne lbl_801FEF58 +/* 801FEFD8 001FBF38 3C 80 80 3D */ lis r4, lbl_803D247C@ha +/* 801FEFDC 001FBF3C 38 61 01 74 */ addi r3, r1, 0x174 +/* 801FEFE0 001FBF40 38 84 24 7C */ addi r4, r4, lbl_803D247C@l +/* 801FEFE4 001FBF44 38 84 00 49 */ addi r4, r4, 0x49 +/* 801FEFE8 001FBF48 4B E0 5C D1 */ bl string_l__4rstlFPCc +/* 801FEFEC 001FBF4C 7F E4 FB 78 */ mr r4, r31 +/* 801FEFF0 001FBF50 38 61 00 08 */ addi r3, r1, 8 +/* 801FEFF4 001FBF54 38 A1 01 74 */ addi r5, r1, 0x174 +/* 801FEFF8 001FBF58 4B E2 F8 41 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801FEFFC 001FBF5C 8B 21 00 08 */ lbz r25, 8(r1) +/* 801FF000 001FBF60 38 61 01 74 */ addi r3, r1, 0x174 +/* 801FF004 001FBF64 48 13 EA DD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801FF008 001FBF68 80 BA 00 10 */ lwz r5, 0x10(r26) +/* 801FF00C 001FBF6C 57 20 0D FC */ rlwinm r0, r25, 1, 0x17, 0x1e +/* 801FF010 001FBF70 C0 7D 00 00 */ lfs f3, 0(r29) +/* 801FF014 001FBF74 7F 3C 02 14 */ add r25, r28, r0 +/* 801FF018 001FBF78 C0 85 02 04 */ lfs f4, 0x204(r5) +/* 801FF01C 001FBF7C 38 61 01 50 */ addi r3, r1, 0x150 +/* 801FF020 001FBF80 C0 45 02 C4 */ lfs f2, 0x2c4(r5) +/* 801FF024 001FBF84 38 81 01 44 */ addi r4, r1, 0x144 +/* 801FF028 001FBF88 88 19 00 01 */ lbz r0, 1(r25) +/* 801FF02C 001FBF8C EC A4 10 2A */ fadds f5, f4, f2 +/* 801FF030 001FBF90 C0 C2 AF 74 */ lfs f6, lbl_805ACC94@sda21(r2) +/* 801FF034 001FBF94 C0 25 02 08 */ lfs f1, 0x208(r5) +/* 801FF038 001FBF98 54 00 2C F4 */ rlwinm r0, r0, 5, 0x13, 0x1a +/* 801FF03C 001FBF9C C0 05 02 C8 */ lfs f0, 0x2c8(r5) +/* 801FF040 001FBFA0 EC A6 01 72 */ fmuls f5, f6, f5 +/* 801FF044 001FBFA4 EC 81 00 2A */ fadds f4, f1, f0 +/* 801FF048 001FBFA8 C0 1B 00 00 */ lfs f0, 0(r27) +/* 801FF04C 001FBFAC C0 45 02 0C */ lfs f2, 0x20c(r5) +/* 801FF050 001FBFB0 EC A5 00 28 */ fsubs f5, f5, f0 +/* 801FF054 001FBFB4 C0 1B 00 04 */ lfs f0, 4(r27) +/* 801FF058 001FBFB8 EC E6 01 32 */ fmuls f7, f6, f4 +/* 801FF05C 001FBFBC C0 25 02 CC */ lfs f1, 0x2cc(r5) +/* 801FF060 001FBFC0 80 BE 01 08 */ lwz r5, 0x108(r30) +/* 801FF064 001FBFC4 EC E7 00 28 */ fsubs f7, f7, f0 +/* 801FF068 001FBFC8 C0 9B 00 08 */ lfs f4, 8(r27) +/* 801FF06C 001FBFCC EC 05 18 24 */ fdivs f0, f5, f3 +/* 801FF070 001FBFD0 7C A5 02 14 */ add r5, r5, r0 +/* 801FF074 001FBFD4 D0 61 01 5C */ stfs f3, 0x15c(r1) +/* 801FF078 001FBFD8 D0 61 01 68 */ stfs f3, 0x168(r1) +/* 801FF07C 001FBFDC EC 22 08 2A */ fadds f1, f2, f1 +/* 801FF080 001FBFE0 C0 5D 00 04 */ lfs f2, 4(r29) +/* 801FF084 001FBFE4 D0 41 01 60 */ stfs f2, 0x160(r1) +/* 801FF088 001FBFE8 ED 06 00 72 */ fmuls f8, f6, f1 +/* 801FF08C 001FBFEC C0 3D 00 08 */ lfs f1, 8(r29) +/* 801FF090 001FBFF0 D0 41 01 6C */ stfs f2, 0x16c(r1) +/* 801FF094 001FBFF4 ED 08 20 28 */ fsubs f8, f8, f4 +/* 801FF098 001FBFF8 D0 05 00 14 */ stfs f0, 0x14(r5) +/* 801FF09C 001FBFFC EC 87 10 24 */ fdivs f4, f7, f2 +/* 801FF0A0 001FC000 D0 21 01 64 */ stfs f1, 0x164(r1) +/* 801FF0A4 001FC004 D0 21 01 70 */ stfs f1, 0x170(r1) +/* 801FF0A8 001FC008 EC 08 08 24 */ fdivs f0, f8, f1 +/* 801FF0AC 001FC00C D0 85 00 18 */ stfs f4, 0x18(r5) +/* 801FF0B0 001FC010 D0 05 00 1C */ stfs f0, 0x1c(r5) +/* 801FF0B4 001FC014 80 BA 00 10 */ lwz r5, 0x10(r26) +/* 801FF0B8 001FC018 C0 25 00 88 */ lfs f1, 0x88(r5) +/* 801FF0BC 001FC01C C0 05 01 48 */ lfs f0, 0x148(r5) +/* 801FF0C0 001FC020 C0 65 00 8C */ lfs f3, 0x8c(r5) +/* 801FF0C4 001FC024 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801FF0C8 001FC028 C0 45 01 4C */ lfs f2, 0x14c(r5) +/* 801FF0CC 001FC02C C0 25 00 84 */ lfs f1, 0x84(r5) +/* 801FF0D0 001FC030 C0 05 01 44 */ lfs f0, 0x144(r5) +/* 801FF0D4 001FC034 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801FF0D8 001FC038 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801FF0DC 001FC03C D0 81 01 E8 */ stfs f4, 0x1e8(r1) +/* 801FF0E0 001FC040 D0 41 01 EC */ stfs f2, 0x1ec(r1) +/* 801FF0E4 001FC044 D0 01 01 E4 */ stfs f0, 0x1e4(r1) +/* 801FF0E8 001FC048 C0 25 02 08 */ lfs f1, 0x208(r5) +/* 801FF0EC 001FC04C C0 05 02 C8 */ lfs f0, 0x2c8(r5) +/* 801FF0F0 001FC050 C0 45 02 0C */ lfs f2, 0x20c(r5) +/* 801FF0F4 001FC054 EC A1 00 2A */ fadds f5, f1, f0 +/* 801FF0F8 001FC058 C0 05 02 CC */ lfs f0, 0x2cc(r5) +/* 801FF0FC 001FC05C C0 25 02 04 */ lfs f1, 0x204(r5) +/* 801FF100 001FC060 EC 82 00 2A */ fadds f4, f2, f0 +/* 801FF104 001FC064 C0 05 02 C4 */ lfs f0, 0x2c4(r5) +/* 801FF108 001FC068 ED 06 01 72 */ fmuls f8, f6, f5 +/* 801FF10C 001FC06C EC 61 00 2A */ fadds f3, f1, f0 +/* 801FF110 001FC070 C0 05 00 08 */ lfs f0, 8(r5) +/* 801FF114 001FC074 EC E6 01 32 */ fmuls f7, f6, f4 +/* 801FF118 001FC078 C0 25 00 0C */ lfs f1, 0xc(r5) +/* 801FF11C 001FC07C ED 20 40 28 */ fsubs f9, f0, f8 +/* 801FF120 001FC080 EC 46 00 F2 */ fmuls f2, f6, f3 +/* 801FF124 001FC084 C0 05 00 04 */ lfs f0, 4(r5) +/* 801FF128 001FC088 EC 21 38 28 */ fsubs f1, f1, f7 +/* 801FF12C 001FC08C D0 61 01 2C */ stfs f3, 0x12c(r1) +/* 801FF130 001FC090 EC 00 10 28 */ fsubs f0, f0, f2 +/* 801FF134 001FC094 D0 A1 01 30 */ stfs f5, 0x130(r1) +/* 801FF138 001FC098 D0 81 01 34 */ stfs f4, 0x134(r1) +/* 801FF13C 001FC09C D0 41 01 38 */ stfs f2, 0x138(r1) +/* 801FF140 001FC0A0 D1 01 01 3C */ stfs f8, 0x13c(r1) +/* 801FF144 001FC0A4 D0 E1 01 40 */ stfs f7, 0x140(r1) +/* 801FF148 001FC0A8 D0 01 01 44 */ stfs f0, 0x144(r1) +/* 801FF14C 001FC0AC D1 21 01 48 */ stfs f9, 0x148(r1) +/* 801FF150 001FC0B0 D0 21 01 4C */ stfs f1, 0x14c(r1) +/* 801FF154 001FC0B4 48 11 56 FD */ bl AsNormalized__9CVector3fCFv +/* 801FF158 001FC0B8 C0 A1 01 50 */ lfs f5, 0x150(r1) +/* 801FF15C 001FC0BC 38 61 01 20 */ addi r3, r1, 0x120 +/* 801FF160 001FC0C0 C0 81 01 54 */ lfs f4, 0x154(r1) +/* 801FF164 001FC0C4 38 81 01 14 */ addi r4, r1, 0x114 +/* 801FF168 001FC0C8 C0 61 01 58 */ lfs f3, 0x158(r1) +/* 801FF16C 001FC0CC C0 C1 01 E8 */ lfs f6, 0x1e8(r1) +/* 801FF170 001FC0D0 C0 E1 01 EC */ lfs f7, 0x1ec(r1) +/* 801FF174 001FC0D4 C1 01 01 E4 */ lfs f8, 0x1e4(r1) +/* 801FF178 001FC0D8 EC 46 00 F2 */ fmuls f2, f6, f3 +/* 801FF17C 001FC0DC EC 27 01 72 */ fmuls f1, f7, f5 +/* 801FF180 001FC0E0 D0 A1 01 D8 */ stfs f5, 0x1d8(r1) +/* 801FF184 001FC0E4 EC 08 01 32 */ fmuls f0, f8, f4 +/* 801FF188 001FC0E8 EC 44 11 F8 */ fmsubs f2, f4, f7, f2 +/* 801FF18C 001FC0EC D0 81 01 DC */ stfs f4, 0x1dc(r1) +/* 801FF190 001FC0F0 EC 23 0A 38 */ fmsubs f1, f3, f8, f1 +/* 801FF194 001FC0F4 EC 05 01 B8 */ fmsubs f0, f5, f6, f0 +/* 801FF198 001FC0F8 D0 61 01 E0 */ stfs f3, 0x1e0(r1) +/* 801FF19C 001FC0FC D0 41 01 14 */ stfs f2, 0x114(r1) +/* 801FF1A0 001FC100 D0 21 01 18 */ stfs f1, 0x118(r1) +/* 801FF1A4 001FC104 D0 01 01 1C */ stfs f0, 0x11c(r1) +/* 801FF1A8 001FC108 48 11 56 A9 */ bl AsNormalized__9CVector3fCFv +/* 801FF1AC 001FC10C C0 A1 01 20 */ lfs f5, 0x120(r1) +/* 801FF1B0 001FC110 38 61 02 14 */ addi r3, r1, 0x214 +/* 801FF1B4 001FC114 C0 81 01 24 */ lfs f4, 0x124(r1) +/* 801FF1B8 001FC118 38 81 01 E4 */ addi r4, r1, 0x1e4 +/* 801FF1BC 001FC11C C0 61 01 28 */ lfs f3, 0x128(r1) +/* 801FF1C0 001FC120 38 A1 01 CC */ addi r5, r1, 0x1cc +/* 801FF1C4 001FC124 C0 C1 01 DC */ lfs f6, 0x1dc(r1) +/* 801FF1C8 001FC128 38 C1 01 D8 */ addi r6, r1, 0x1d8 +/* 801FF1CC 001FC12C C0 E1 01 E0 */ lfs f7, 0x1e0(r1) +/* 801FF1D0 001FC130 C1 01 01 D8 */ lfs f8, 0x1d8(r1) +/* 801FF1D4 001FC134 EC 26 00 F2 */ fmuls f1, f6, f3 +/* 801FF1D8 001FC138 EC 07 01 72 */ fmuls f0, f7, f5 +/* 801FF1DC 001FC13C D0 A1 01 CC */ stfs f5, 0x1cc(r1) +/* 801FF1E0 001FC140 EC 48 01 32 */ fmuls f2, f8, f4 +/* 801FF1E4 001FC144 EC 24 09 F8 */ fmsubs f1, f4, f7, f1 +/* 801FF1E8 001FC148 D0 81 01 D0 */ stfs f4, 0x1d0(r1) +/* 801FF1EC 001FC14C EC 03 02 38 */ fmsubs f0, f3, f8, f0 +/* 801FF1F0 001FC150 EC 45 11 B8 */ fmsubs f2, f5, f6, f2 +/* 801FF1F4 001FC154 D0 61 01 D4 */ stfs f3, 0x1d4(r1) +/* 801FF1F8 001FC158 D0 21 01 E4 */ stfs f1, 0x1e4(r1) +/* 801FF1FC 001FC15C D0 01 01 E8 */ stfs f0, 0x1e8(r1) +/* 801FF200 001FC160 D0 41 01 EC */ stfs f2, 0x1ec(r1) +/* 801FF204 001FC164 48 11 14 79 */ bl __ct__9CMatrix3fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 801FF208 001FC168 C1 01 02 14 */ lfs f8, 0x214(r1) +/* 801FF20C 001FC16C 38 61 01 04 */ addi r3, r1, 0x104 +/* 801FF210 001FC170 C0 E1 02 20 */ lfs f7, 0x220(r1) +/* 801FF214 001FC174 38 81 01 F0 */ addi r4, r1, 0x1f0 +/* 801FF218 001FC178 C0 C1 02 2C */ lfs f6, 0x22c(r1) +/* 801FF21C 001FC17C C0 A1 02 18 */ lfs f5, 0x218(r1) +/* 801FF220 001FC180 C0 81 02 24 */ lfs f4, 0x224(r1) +/* 801FF224 001FC184 C0 61 02 30 */ lfs f3, 0x230(r1) +/* 801FF228 001FC188 C0 41 02 1C */ lfs f2, 0x21c(r1) +/* 801FF22C 001FC18C C0 21 02 28 */ lfs f1, 0x228(r1) +/* 801FF230 001FC190 C0 01 02 34 */ lfs f0, 0x234(r1) +/* 801FF234 001FC194 D1 01 01 F0 */ stfs f8, 0x1f0(r1) +/* 801FF238 001FC198 D0 E1 01 F4 */ stfs f7, 0x1f4(r1) +/* 801FF23C 001FC19C D0 C1 01 F8 */ stfs f6, 0x1f8(r1) +/* 801FF240 001FC1A0 D0 A1 01 FC */ stfs f5, 0x1fc(r1) +/* 801FF244 001FC1A4 D0 81 02 00 */ stfs f4, 0x200(r1) +/* 801FF248 001FC1A8 D0 61 02 04 */ stfs f3, 0x204(r1) +/* 801FF24C 001FC1AC D0 41 02 08 */ stfs f2, 0x208(r1) +/* 801FF250 001FC1B0 D0 21 02 0C */ stfs f1, 0x20c(r1) +/* 801FF254 001FC1B4 D0 01 02 10 */ stfs f0, 0x210(r1) +/* 801FF258 001FC1B8 48 11 2F 29 */ bl FromMatrix__11CQuaternionFRC9CMatrix3f +/* 801FF25C 001FC1BC C0 61 01 04 */ lfs f3, 0x104(r1) +/* 801FF260 001FC1C0 38 61 00 F8 */ addi r3, r1, 0xf8 +/* 801FF264 001FC1C4 C0 41 01 08 */ lfs f2, 0x108(r1) +/* 801FF268 001FC1C8 C0 21 01 0C */ lfs f1, 0x10c(r1) +/* 801FF26C 001FC1CC C0 01 01 10 */ lfs f0, 0x110(r1) +/* 801FF270 001FC1D0 D0 61 01 BC */ stfs f3, 0x1bc(r1) +/* 801FF274 001FC1D4 D0 41 01 C0 */ stfs f2, 0x1c0(r1) +/* 801FF278 001FC1D8 D0 21 01 C4 */ stfs f1, 0x1c4(r1) +/* 801FF27C 001FC1DC D0 01 01 C8 */ stfs f0, 0x1c8(r1) +/* 801FF280 001FC1E0 88 19 00 01 */ lbz r0, 1(r25) +/* 801FF284 001FC1E4 80 9E 01 08 */ lwz r4, 0x108(r30) +/* 801FF288 001FC1E8 54 00 2C F4 */ rlwinm r0, r0, 5, 0x13, 0x1a +/* 801FF28C 001FC1EC 7C A4 02 14 */ add r5, r4, r0 +/* 801FF290 001FC1F0 D0 65 00 04 */ stfs f3, 4(r5) +/* 801FF294 001FC1F4 80 81 01 C0 */ lwz r4, 0x1c0(r1) +/* 801FF298 001FC1F8 80 01 01 C4 */ lwz r0, 0x1c4(r1) +/* 801FF29C 001FC1FC 90 85 00 08 */ stw r4, 8(r5) +/* 801FF2A0 001FC200 90 05 00 0C */ stw r0, 0xc(r5) +/* 801FF2A4 001FC204 80 01 01 C8 */ lwz r0, 0x1c8(r1) +/* 801FF2A8 001FC208 90 05 00 10 */ stw r0, 0x10(r5) +/* 801FF2AC 001FC20C 83 BF 00 D4 */ lwz r29, 0xd4(r31) +/* 801FF2B0 001FC210 80 BA 00 10 */ lwz r5, 0x10(r26) +/* 801FF2B4 001FC214 7F A4 EB 78 */ mr r4, r29 +/* 801FF2B8 001FC218 38 A5 00 40 */ addi r5, r5, 0x40 +/* 801FF2BC 001FC21C 4B F2 C6 E5 */ bl GetFromParentUnrotated__15CCharLayoutInfoCFRC6CSegId +/* 801FF2C0 001FC220 C0 01 00 F8 */ lfs f0, 0xf8(r1) +/* 801FF2C4 001FC224 38 61 00 EC */ addi r3, r1, 0xec +/* 801FF2C8 001FC228 C0 21 00 FC */ lfs f1, 0xfc(r1) +/* 801FF2CC 001FC22C 38 81 00 DC */ addi r4, r1, 0xdc +/* 801FF2D0 001FC230 C0 41 01 00 */ lfs f2, 0x100(r1) +/* 801FF2D4 001FC234 38 A1 01 A4 */ addi r5, r1, 0x1a4 +/* 801FF2D8 001FC238 D0 01 01 B0 */ stfs f0, 0x1b0(r1) +/* 801FF2DC 001FC23C C0 01 01 C8 */ lfs f0, 0x1c8(r1) +/* 801FF2E0 001FC240 D0 21 01 B4 */ stfs f1, 0x1b4(r1) +/* 801FF2E4 001FC244 C0 21 01 C4 */ lfs f1, 0x1c4(r1) +/* 801FF2E8 001FC248 FD 00 00 50 */ fneg f8, f0 +/* 801FF2EC 001FC24C D0 41 01 B8 */ stfs f2, 0x1b8(r1) +/* 801FF2F0 001FC250 C0 01 01 C0 */ lfs f0, 0x1c0(r1) +/* 801FF2F4 001FC254 FC E0 08 50 */ fneg f7, f1 +/* 801FF2F8 001FC258 80 DA 00 10 */ lwz r6, 0x10(r26) +/* 801FF2FC 001FC25C FC C0 00 50 */ fneg f6, f0 +/* 801FF300 001FC260 C0 01 01 BC */ lfs f0, 0x1bc(r1) +/* 801FF304 001FC264 C0 46 00 48 */ lfs f2, 0x48(r6) +/* 801FF308 001FC268 C0 26 00 08 */ lfs f1, 8(r6) +/* 801FF30C 001FC26C C0 86 00 4C */ lfs f4, 0x4c(r6) +/* 801FF310 001FC270 C0 66 00 0C */ lfs f3, 0xc(r6) +/* 801FF314 001FC274 EC A2 08 28 */ fsubs f5, f2, f1 +/* 801FF318 001FC278 C0 46 00 44 */ lfs f2, 0x44(r6) +/* 801FF31C 001FC27C C0 26 00 04 */ lfs f1, 4(r6) +/* 801FF320 001FC280 EC 64 18 28 */ fsubs f3, f4, f3 +/* 801FF324 001FC284 EC 22 08 28 */ fsubs f1, f2, f1 +/* 801FF328 001FC288 D0 A1 01 A8 */ stfs f5, 0x1a8(r1) +/* 801FF32C 001FC28C D0 61 01 AC */ stfs f3, 0x1ac(r1) +/* 801FF330 001FC290 D0 21 01 A4 */ stfs f1, 0x1a4(r1) +/* 801FF334 001FC294 D0 01 00 DC */ stfs f0, 0xdc(r1) +/* 801FF338 001FC298 D0 C1 00 E0 */ stfs f6, 0xe0(r1) +/* 801FF33C 001FC29C D0 E1 00 E4 */ stfs f7, 0xe4(r1) +/* 801FF340 001FC2A0 D1 01 00 E8 */ stfs f8, 0xe8(r1) +/* 801FF344 001FC2A4 48 11 1F 21 */ bl Transform__11CQuaternionCFRC9CVector3f +/* 801FF348 001FC2A8 C0 41 00 EC */ lfs f2, 0xec(r1) +/* 801FF34C 001FC2AC 38 61 00 CC */ addi r3, r1, 0xcc +/* 801FF350 001FC2B0 C0 21 00 F0 */ lfs f1, 0xf0(r1) +/* 801FF354 001FC2B4 38 81 01 B0 */ addi r4, r1, 0x1b0 +/* 801FF358 001FC2B8 C0 01 00 F4 */ lfs f0, 0xf4(r1) +/* 801FF35C 001FC2BC 38 A1 01 A4 */ addi r5, r1, 0x1a4 +/* 801FF360 001FC2C0 D0 41 01 A4 */ stfs f2, 0x1a4(r1) +/* 801FF364 001FC2C4 D0 21 01 A8 */ stfs f1, 0x1a8(r1) +/* 801FF368 001FC2C8 D0 01 01 AC */ stfs f0, 0x1ac(r1) +/* 801FF36C 001FC2CC 48 11 27 4D */ bl ShortestRotationArc__11CQuaternionFRC9CVector3fRC9CVector3f +/* 801FF370 001FC2D0 80 7A 00 10 */ lwz r3, 0x10(r26) +/* 801FF374 001FC2D4 7F 44 D3 78 */ mr r4, r26 +/* 801FF378 001FC2D8 C0 01 00 D0 */ lfs f0, 0xd0(r1) +/* 801FF37C 001FC2DC 7F C5 F3 78 */ mr r5, r30 +/* 801FF380 001FC2E0 88 03 00 40 */ lbz r0, 0x40(r3) +/* 801FF384 001FC2E4 7F A6 EB 78 */ mr r6, r29 +/* 801FF388 001FC2E8 D0 01 01 98 */ stfs f0, 0x198(r1) +/* 801FF38C 001FC2EC 38 61 00 BC */ addi r3, r1, 0xbc +/* 801FF390 001FC2F0 54 07 08 3C */ slwi r7, r0, 1 +/* 801FF394 001FC2F4 C0 41 00 CC */ lfs f2, 0xcc(r1) +/* 801FF398 001FC2F8 38 07 00 01 */ addi r0, r7, 1 +/* 801FF39C 001FC2FC C0 21 00 D4 */ lfs f1, 0xd4(r1) +/* 801FF3A0 001FC300 7C 1C 00 AE */ lbzx r0, r28, r0 +/* 801FF3A4 001FC304 39 21 01 BC */ addi r9, r1, 0x1bc +/* 801FF3A8 001FC308 81 1E 01 08 */ lwz r8, 0x108(r30) +/* 801FF3AC 001FC30C 38 E0 00 02 */ li r7, 2 +/* 801FF3B0 001FC310 C0 01 00 D8 */ lfs f0, 0xd8(r1) +/* 801FF3B4 001FC314 54 00 2C F4 */ rlwinm r0, r0, 5, 0x13, 0x1a +/* 801FF3B8 001FC318 7D 68 02 14 */ add r11, r8, r0 +/* 801FF3BC 001FC31C D0 21 01 9C */ stfs f1, 0x19c(r1) +/* 801FF3C0 001FC320 80 01 01 98 */ lwz r0, 0x198(r1) +/* 801FF3C4 001FC324 39 00 00 03 */ li r8, 3 +/* 801FF3C8 001FC328 D0 4B 00 04 */ stfs f2, 4(r11) +/* 801FF3CC 001FC32C 81 41 01 9C */ lwz r10, 0x19c(r1) +/* 801FF3D0 001FC330 90 0B 00 08 */ stw r0, 8(r11) +/* 801FF3D4 001FC334 D0 01 01 A0 */ stfs f0, 0x1a0(r1) +/* 801FF3D8 001FC338 80 01 01 A0 */ lwz r0, 0x1a0(r1) +/* 801FF3DC 001FC33C 91 4B 00 0C */ stw r10, 0xc(r11) +/* 801FF3E0 001FC340 D0 41 01 94 */ stfs f2, 0x194(r1) +/* 801FF3E4 001FC344 90 0B 00 10 */ stw r0, 0x10(r11) +/* 801FF3E8 001FC348 48 00 D5 75 */ bl BoneAlign__8CRagDollFR21CHierarchyPoseBuilderRC15CCharLayoutInfoiiRC11CQuaternion +/* 801FF3EC 001FC34C C0 61 00 BC */ lfs f3, 0xbc(r1) +/* 801FF3F0 001FC350 38 61 00 9C */ addi r3, r1, 0x9c +/* 801FF3F4 001FC354 C0 41 00 C0 */ lfs f2, 0xc0(r1) +/* 801FF3F8 001FC358 38 81 01 BC */ addi r4, r1, 0x1bc +/* 801FF3FC 001FC35C C0 21 00 C4 */ lfs f1, 0xc4(r1) +/* 801FF400 001FC360 38 A1 01 84 */ addi r5, r1, 0x184 +/* 801FF404 001FC364 C0 01 00 C8 */ lfs f0, 0xc8(r1) +/* 801FF408 001FC368 D0 61 01 84 */ stfs f3, 0x184(r1) +/* 801FF40C 001FC36C D0 41 01 88 */ stfs f2, 0x188(r1) +/* 801FF410 001FC370 D0 21 01 8C */ stfs f1, 0x18c(r1) +/* 801FF414 001FC374 D0 01 01 90 */ stfs f0, 0x190(r1) +/* 801FF418 001FC378 48 11 1D 89 */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 801FF41C 001FC37C 7F 44 D3 78 */ mr r4, r26 +/* 801FF420 001FC380 7F C5 F3 78 */ mr r5, r30 +/* 801FF424 001FC384 7F A6 EB 78 */ mr r6, r29 +/* 801FF428 001FC388 38 61 00 AC */ addi r3, r1, 0xac +/* 801FF42C 001FC38C 39 21 00 9C */ addi r9, r1, 0x9c +/* 801FF430 001FC390 38 E0 00 03 */ li r7, 3 +/* 801FF434 001FC394 39 00 00 04 */ li r8, 4 +/* 801FF438 001FC398 48 00 D5 25 */ bl BoneAlign__8CRagDollFR21CHierarchyPoseBuilderRC15CCharLayoutInfoiiRC11CQuaternion +/* 801FF43C 001FC39C 7F 44 D3 78 */ mr r4, r26 +/* 801FF440 001FC3A0 7F C5 F3 78 */ mr r5, r30 +/* 801FF444 001FC3A4 7F A6 EB 78 */ mr r6, r29 +/* 801FF448 001FC3A8 38 61 00 8C */ addi r3, r1, 0x8c +/* 801FF44C 001FC3AC 39 21 01 BC */ addi r9, r1, 0x1bc +/* 801FF450 001FC3B0 38 E0 00 05 */ li r7, 5 +/* 801FF454 001FC3B4 39 00 00 06 */ li r8, 6 +/* 801FF458 001FC3B8 48 00 D5 05 */ bl BoneAlign__8CRagDollFR21CHierarchyPoseBuilderRC15CCharLayoutInfoiiRC11CQuaternion +/* 801FF45C 001FC3BC C0 01 00 8C */ lfs f0, 0x8c(r1) +/* 801FF460 001FC3C0 38 61 00 6C */ addi r3, r1, 0x6c +/* 801FF464 001FC3C4 80 E1 00 90 */ lwz r7, 0x90(r1) +/* 801FF468 001FC3C8 38 81 01 BC */ addi r4, r1, 0x1bc +/* 801FF46C 001FC3CC 80 C1 00 94 */ lwz r6, 0x94(r1) +/* 801FF470 001FC3D0 38 A1 01 84 */ addi r5, r1, 0x184 +/* 801FF474 001FC3D4 80 01 00 98 */ lwz r0, 0x98(r1) +/* 801FF478 001FC3D8 D0 01 01 84 */ stfs f0, 0x184(r1) +/* 801FF47C 001FC3DC 90 E1 01 88 */ stw r7, 0x188(r1) +/* 801FF480 001FC3E0 90 C1 01 8C */ stw r6, 0x18c(r1) +/* 801FF484 001FC3E4 90 01 01 90 */ stw r0, 0x190(r1) +/* 801FF488 001FC3E8 48 11 1D 19 */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 801FF48C 001FC3EC 7F 44 D3 78 */ mr r4, r26 +/* 801FF490 001FC3F0 7F C5 F3 78 */ mr r5, r30 +/* 801FF494 001FC3F4 7F A6 EB 78 */ mr r6, r29 +/* 801FF498 001FC3F8 38 61 00 7C */ addi r3, r1, 0x7c +/* 801FF49C 001FC3FC 39 21 00 6C */ addi r9, r1, 0x6c +/* 801FF4A0 001FC400 38 E0 00 06 */ li r7, 6 +/* 801FF4A4 001FC404 39 00 00 07 */ li r8, 7 +/* 801FF4A8 001FC408 48 00 D4 B5 */ bl BoneAlign__8CRagDollFR21CHierarchyPoseBuilderRC15CCharLayoutInfoiiRC11CQuaternion +/* 801FF4AC 001FC40C 7F 44 D3 78 */ mr r4, r26 +/* 801FF4B0 001FC410 7F C5 F3 78 */ mr r5, r30 +/* 801FF4B4 001FC414 7F A6 EB 78 */ mr r6, r29 +/* 801FF4B8 001FC418 38 61 00 5C */ addi r3, r1, 0x5c +/* 801FF4BC 001FC41C 39 21 01 BC */ addi r9, r1, 0x1bc +/* 801FF4C0 001FC420 38 E0 00 08 */ li r7, 8 +/* 801FF4C4 001FC424 39 00 00 09 */ li r8, 9 +/* 801FF4C8 001FC428 48 00 D4 95 */ bl BoneAlign__8CRagDollFR21CHierarchyPoseBuilderRC15CCharLayoutInfoiiRC11CQuaternion +/* 801FF4CC 001FC42C C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 801FF4D0 001FC430 38 61 00 3C */ addi r3, r1, 0x3c +/* 801FF4D4 001FC434 80 E1 00 60 */ lwz r7, 0x60(r1) +/* 801FF4D8 001FC438 38 81 01 BC */ addi r4, r1, 0x1bc +/* 801FF4DC 001FC43C 80 C1 00 64 */ lwz r6, 0x64(r1) +/* 801FF4E0 001FC440 38 A1 01 84 */ addi r5, r1, 0x184 +/* 801FF4E4 001FC444 80 01 00 68 */ lwz r0, 0x68(r1) +/* 801FF4E8 001FC448 D0 01 01 84 */ stfs f0, 0x184(r1) +/* 801FF4EC 001FC44C 90 E1 01 88 */ stw r7, 0x188(r1) +/* 801FF4F0 001FC450 90 C1 01 8C */ stw r6, 0x18c(r1) +/* 801FF4F4 001FC454 90 01 01 90 */ stw r0, 0x190(r1) +/* 801FF4F8 001FC458 48 11 1C A9 */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 801FF4FC 001FC45C 7F 44 D3 78 */ mr r4, r26 +/* 801FF500 001FC460 7F C5 F3 78 */ mr r5, r30 +/* 801FF504 001FC464 7F A6 EB 78 */ mr r6, r29 +/* 801FF508 001FC468 38 61 00 4C */ addi r3, r1, 0x4c +/* 801FF50C 001FC46C 39 21 00 3C */ addi r9, r1, 0x3c +/* 801FF510 001FC470 38 E0 00 09 */ li r7, 9 +/* 801FF514 001FC474 39 00 00 0A */ li r8, 0xa +/* 801FF518 001FC478 48 00 D4 45 */ bl BoneAlign__8CRagDollFR21CHierarchyPoseBuilderRC15CCharLayoutInfoiiRC11CQuaternion +/* 801FF51C 001FC47C 7F 44 D3 78 */ mr r4, r26 +/* 801FF520 001FC480 7F C5 F3 78 */ mr r5, r30 +/* 801FF524 001FC484 7F A6 EB 78 */ mr r6, r29 +/* 801FF528 001FC488 38 61 00 2C */ addi r3, r1, 0x2c +/* 801FF52C 001FC48C 39 21 01 BC */ addi r9, r1, 0x1bc +/* 801FF530 001FC490 38 E0 00 0B */ li r7, 0xb +/* 801FF534 001FC494 39 00 00 0C */ li r8, 0xc +/* 801FF538 001FC498 48 00 D4 25 */ bl BoneAlign__8CRagDollFR21CHierarchyPoseBuilderRC15CCharLayoutInfoiiRC11CQuaternion +/* 801FF53C 001FC49C C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 801FF540 001FC4A0 38 61 00 0C */ addi r3, r1, 0xc +/* 801FF544 001FC4A4 80 E1 00 30 */ lwz r7, 0x30(r1) +/* 801FF548 001FC4A8 38 81 01 BC */ addi r4, r1, 0x1bc +/* 801FF54C 001FC4AC 80 C1 00 34 */ lwz r6, 0x34(r1) +/* 801FF550 001FC4B0 38 A1 01 84 */ addi r5, r1, 0x184 +/* 801FF554 001FC4B4 80 01 00 38 */ lwz r0, 0x38(r1) +/* 801FF558 001FC4B8 D0 01 01 84 */ stfs f0, 0x184(r1) +/* 801FF55C 001FC4BC 90 E1 01 88 */ stw r7, 0x188(r1) +/* 801FF560 001FC4C0 90 C1 01 8C */ stw r6, 0x18c(r1) +/* 801FF564 001FC4C4 90 01 01 90 */ stw r0, 0x190(r1) +/* 801FF568 001FC4C8 48 11 1C 39 */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 801FF56C 001FC4CC 7F 44 D3 78 */ mr r4, r26 +/* 801FF570 001FC4D0 7F C5 F3 78 */ mr r5, r30 +/* 801FF574 001FC4D4 7F A6 EB 78 */ mr r6, r29 +/* 801FF578 001FC4D8 38 61 00 1C */ addi r3, r1, 0x1c +/* 801FF57C 001FC4DC 39 21 00 0C */ addi r9, r1, 0xc +/* 801FF580 001FC4E0 38 E0 00 0C */ li r7, 0xc +/* 801FF584 001FC4E4 39 00 00 0D */ li r8, 0xd +/* 801FF588 001FC4E8 48 00 D3 D5 */ bl BoneAlign__8CRagDollFR21CHierarchyPoseBuilderRC15CCharLayoutInfoiiRC11CQuaternion +/* 801FF58C 001FC4EC 88 1F 02 20 */ lbz r0, 0x220(r31) +/* 801FF590 001FC4F0 38 60 00 00 */ li r3, 0 +/* 801FF594 001FC4F4 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 801FF598 001FC4F8 98 1F 02 20 */ stb r0, 0x220(r31) +lbl_801FF59C: +/* 801FF59C 001FC4FC BB 21 02 44 */ lmw r25, 0x244(r1) +/* 801FF5A0 001FC500 80 01 02 64 */ lwz r0, 0x264(r1) +/* 801FF5A4 001FC504 7C 08 03 A6 */ mtlr r0 +/* 801FF5A8 001FC508 38 21 02 60 */ addi r1, r1, 0x260 +/* 801FF5AC 001FC50C 4E 80 00 20 */ blr + +.global Update__20CFlyingPirateRagDollFR13CStateManagerf +Update__20CFlyingPirateRagDollFR13CStateManagerf: +/* 801FF5B0 001FC510 94 21 FE D0 */ stwu r1, -0x130(r1) +/* 801FF5B4 001FC514 7C 08 02 A6 */ mflr r0 +/* 801FF5B8 001FC518 90 01 01 34 */ stw r0, 0x134(r1) +/* 801FF5BC 001FC51C DB E1 01 20 */ stfd f31, 0x120(r1) +/* 801FF5C0 001FC520 F3 E1 01 28 */ psq_st f31, 296(r1), 0, qr0 +/* 801FF5C4 001FC524 DB C1 01 10 */ stfd f30, 0x110(r1) +/* 801FF5C8 001FC528 F3 C1 01 18 */ psq_st f30, 280(r1), 0, qr0 +/* 801FF5CC 001FC52C DB A1 01 00 */ stfd f29, 0x100(r1) +/* 801FF5D0 001FC530 F3 A1 01 08 */ psq_st f29, 264(r1), 0, qr0 +/* 801FF5D4 001FC534 DB 81 00 F0 */ stfd f28, 0xf0(r1) +/* 801FF5D8 001FC538 F3 81 00 F8 */ psq_st f28, 248(r1), 0, qr0 +/* 801FF5DC 001FC53C 93 E1 00 EC */ stw r31, 0xec(r1) +/* 801FF5E0 001FC540 93 C1 00 E8 */ stw r30, 0xe8(r1) +/* 801FF5E4 001FC544 93 A1 00 E4 */ stw r29, 0xe4(r1) +/* 801FF5E8 001FC548 88 03 00 68 */ lbz r0, 0x68(r3) +/* 801FF5EC 001FC54C FF A0 08 90 */ fmr f29, f1 +/* 801FF5F0 001FC550 FF C0 10 90 */ fmr f30, f2 +/* 801FF5F4 001FC554 7C 7E 1B 78 */ mr r30, r3 +/* 801FF5F8 001FC558 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801FF5FC 001FC55C 7C 9F 23 78 */ mr r31, r4 +/* 801FF600 001FC560 40 82 07 EC */ bne lbl_801FFDEC +/* 801FF604 001FC564 80 7E 00 6C */ lwz r3, 0x6c(r30) +/* 801FF608 001FC568 88 03 06 A1 */ lbz r0, 0x6a1(r3) +/* 801FF60C 001FC56C 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 801FF610 001FC570 41 82 03 EC */ beq lbl_801FF9FC +/* 801FF614 001FC574 C0 1E 00 84 */ lfs f0, 0x84(r30) +/* 801FF618 001FC578 38 61 00 94 */ addi r3, r1, 0x94 +/* 801FF61C 001FC57C 38 81 00 88 */ addi r4, r1, 0x88 +/* 801FF620 001FC580 EC 00 E8 28 */ fsubs f0, f0, f29 +/* 801FF624 001FC584 D0 1E 00 84 */ stfs f0, 0x84(r30) +/* 801FF628 001FC588 80 DE 00 10 */ lwz r6, 0x10(r30) +/* 801FF62C 001FC58C 80 BE 00 6C */ lwz r5, 0x6c(r30) +/* 801FF630 001FC590 C0 06 03 88 */ lfs f0, 0x388(r6) +/* 801FF634 001FC594 C0 25 02 E4 */ lfs f1, 0x2e4(r5) +/* 801FF638 001FC598 C0 65 02 E8 */ lfs f3, 0x2e8(r5) +/* 801FF63C 001FC59C C0 46 03 8C */ lfs f2, 0x38c(r6) +/* 801FF640 001FC5A0 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801FF644 001FC5A4 C0 25 02 E0 */ lfs f1, 0x2e0(r5) +/* 801FF648 001FC5A8 C0 06 03 84 */ lfs f0, 0x384(r6) +/* 801FF64C 001FC5AC EC 43 10 28 */ fsubs f2, f3, f2 +/* 801FF650 001FC5B0 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801FF654 001FC5B4 D0 81 00 8C */ stfs f4, 0x8c(r1) +/* 801FF658 001FC5B8 D0 41 00 90 */ stfs f2, 0x90(r1) +/* 801FF65C 001FC5BC D0 01 00 88 */ stfs f0, 0x88(r1) +/* 801FF660 001FC5C0 48 11 51 F1 */ bl AsNormalized__9CVector3fCFv +/* 801FF664 001FC5C4 C0 02 B0 14 */ lfs f0, lbl_805ACD34@sda21(r2) +/* 801FF668 001FC5C8 38 61 00 7C */ addi r3, r1, 0x7c +/* 801FF66C 001FC5CC C0 81 00 94 */ lfs f4, 0x94(r1) +/* 801FF670 001FC5D0 38 9E 00 74 */ addi r4, r30, 0x74 +/* 801FF674 001FC5D4 EC 00 07 72 */ fmuls f0, f0, f29 +/* 801FF678 001FC5D8 C0 22 B0 10 */ lfs f1, lbl_805ACD30@sda21(r2) +/* 801FF67C 001FC5DC C0 61 00 98 */ lfs f3, 0x98(r1) +/* 801FF680 001FC5E0 38 A1 00 D0 */ addi r5, r1, 0xd0 +/* 801FF684 001FC5E4 C0 41 00 9C */ lfs f2, 0x9c(r1) +/* 801FF688 001FC5E8 38 C1 00 3C */ addi r6, r1, 0x3c +/* 801FF68C 001FC5EC EC 01 00 32 */ fmuls f0, f1, f0 +/* 801FF690 001FC5F0 D0 81 00 D0 */ stfs f4, 0xd0(r1) +/* 801FF694 001FC5F4 D0 61 00 D4 */ stfs f3, 0xd4(r1) +/* 801FF698 001FC5F8 D0 41 00 D8 */ stfs f2, 0xd8(r1) +/* 801FF69C 001FC5FC D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 801FF6A0 001FC600 48 11 52 B5 */ bl Slerp__9CVector3fFRC9CVector3fRC9CVector3fRC9CRelAngle +/* 801FF6A4 001FC604 C0 01 00 7C */ lfs f0, 0x7c(r1) +/* 801FF6A8 001FC608 C0 62 AF C4 */ lfs f3, lbl_805ACCE4@sda21(r2) +/* 801FF6AC 001FC60C D0 1E 00 74 */ stfs f0, 0x74(r30) +/* 801FF6B0 001FC610 C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801FF6B4 001FC614 C0 21 00 80 */ lfs f1, 0x80(r1) +/* 801FF6B8 001FC618 D0 3E 00 78 */ stfs f1, 0x78(r30) +/* 801FF6BC 001FC61C C0 21 00 84 */ lfs f1, 0x84(r1) +/* 801FF6C0 001FC620 D0 3E 00 7C */ stfs f1, 0x7c(r30) +/* 801FF6C4 001FC624 D0 7E 00 70 */ stfs f3, 0x70(r30) +/* 801FF6C8 001FC628 C0 3E 00 84 */ lfs f1, 0x84(r30) +/* 801FF6CC 001FC62C C0 9E 00 70 */ lfs f4, 0x70(r30) +/* 801FF6D0 001FC630 C0 5E 00 74 */ lfs f2, 0x74(r30) +/* 801FF6D4 001FC634 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801FF6D8 001FC638 C0 3E 00 78 */ lfs f1, 0x78(r30) +/* 801FF6DC 001FC63C C0 1E 00 7C */ lfs f0, 0x7c(r30) +/* 801FF6E0 001FC640 EC 44 00 B2 */ fmuls f2, f4, f2 +/* 801FF6E4 001FC644 EC 24 00 72 */ fmuls f1, f4, f1 +/* 801FF6E8 001FC648 EC 04 00 32 */ fmuls f0, f4, f0 +/* 801FF6EC 001FC64C 40 81 00 3C */ ble lbl_801FF728 +/* 801FF6F0 001FC650 80 7E 00 10 */ lwz r3, 0x10(r30) +/* 801FF6F4 001FC654 EC A3 00 B2 */ fmuls f5, f3, f2 +/* 801FF6F8 001FC658 EC 83 00 72 */ fmuls f4, f3, f1 +/* 801FF6FC 001FC65C C0 C3 03 A0 */ lfs f6, 0x3a0(r3) +/* 801FF700 001FC660 EC 63 00 32 */ fmuls f3, f3, f0 +/* 801FF704 001FC664 EC A6 28 2A */ fadds f5, f6, f5 +/* 801FF708 001FC668 D0 A3 03 A0 */ stfs f5, 0x3a0(r3) +/* 801FF70C 001FC66C C0 A3 03 A4 */ lfs f5, 0x3a4(r3) +/* 801FF710 001FC670 EC 85 20 2A */ fadds f4, f5, f4 +/* 801FF714 001FC674 D0 83 03 A4 */ stfs f4, 0x3a4(r3) +/* 801FF718 001FC678 C0 83 03 A8 */ lfs f4, 0x3a8(r3) +/* 801FF71C 001FC67C EC 64 18 2A */ fadds f3, f4, f3 +/* 801FF720 001FC680 D0 63 03 A8 */ stfs f3, 0x3a8(r3) +/* 801FF724 001FC684 48 00 00 3C */ b lbl_801FF760 +lbl_801FF728: +/* 801FF728 001FC688 C0 62 B0 18 */ lfs f3, lbl_805ACD38@sda21(r2) +/* 801FF72C 001FC68C 80 7E 00 10 */ lwz r3, 0x10(r30) +/* 801FF730 001FC690 EC A3 00 B2 */ fmuls f5, f3, f2 +/* 801FF734 001FC694 C0 C3 03 A0 */ lfs f6, 0x3a0(r3) +/* 801FF738 001FC698 EC 83 00 72 */ fmuls f4, f3, f1 +/* 801FF73C 001FC69C EC 63 00 32 */ fmuls f3, f3, f0 +/* 801FF740 001FC6A0 EC A6 28 2A */ fadds f5, f6, f5 +/* 801FF744 001FC6A4 D0 A3 03 A0 */ stfs f5, 0x3a0(r3) +/* 801FF748 001FC6A8 C0 A3 03 A4 */ lfs f5, 0x3a4(r3) +/* 801FF74C 001FC6AC EC 85 20 2A */ fadds f4, f5, f4 +/* 801FF750 001FC6B0 D0 83 03 A4 */ stfs f4, 0x3a4(r3) +/* 801FF754 001FC6B4 C0 83 03 A8 */ lfs f4, 0x3a8(r3) +/* 801FF758 001FC6B8 EC 64 18 2A */ fadds f3, f4, f3 +/* 801FF75C 001FC6BC D0 63 03 A8 */ stfs f3, 0x3a8(r3) +lbl_801FF760: +/* 801FF760 001FC6C0 80 7E 00 10 */ lwz r3, 0x10(r30) +/* 801FF764 001FC6C4 FD 00 10 50 */ fneg f8, f2 +/* 801FF768 001FC6C8 C0 82 B0 1C */ lfs f4, lbl_805ACD3C@sda21(r2) +/* 801FF76C 001FC6CC FC E0 08 50 */ fneg f7, f1 +/* 801FF770 001FC6D0 C0 63 01 20 */ lfs f3, 0x120(r3) +/* 801FF774 001FC6D4 FC C0 00 50 */ fneg f6, f0 +/* 801FF778 001FC6D8 ED 24 00 B2 */ fmuls f9, f4, f2 +/* 801FF77C 001FC6DC EC A3 40 2A */ fadds f5, f3, f8 +/* 801FF780 001FC6E0 EC 64 00 72 */ fmuls f3, f4, f1 +/* 801FF784 001FC6E4 EC 84 00 32 */ fmuls f4, f4, f0 +/* 801FF788 001FC6E8 D0 A3 01 20 */ stfs f5, 0x120(r3) +/* 801FF78C 001FC6EC C0 A3 01 24 */ lfs f5, 0x124(r3) +/* 801FF790 001FC6F0 EC A5 38 2A */ fadds f5, f5, f7 +/* 801FF794 001FC6F4 D0 A3 01 24 */ stfs f5, 0x124(r3) +/* 801FF798 001FC6F8 C0 A3 01 28 */ lfs f5, 0x128(r3) +/* 801FF79C 001FC6FC EC A5 30 2A */ fadds f5, f5, f6 +/* 801FF7A0 001FC700 D0 A3 01 28 */ stfs f5, 0x128(r3) +/* 801FF7A4 001FC704 80 7E 00 10 */ lwz r3, 0x10(r30) +/* 801FF7A8 001FC708 C0 A3 01 E0 */ lfs f5, 0x1e0(r3) +/* 801FF7AC 001FC70C EC A5 40 2A */ fadds f5, f5, f8 +/* 801FF7B0 001FC710 D0 A3 01 E0 */ stfs f5, 0x1e0(r3) +/* 801FF7B4 001FC714 C0 A3 01 E4 */ lfs f5, 0x1e4(r3) +/* 801FF7B8 001FC718 EC A5 38 2A */ fadds f5, f5, f7 +/* 801FF7BC 001FC71C D0 A3 01 E4 */ stfs f5, 0x1e4(r3) +/* 801FF7C0 001FC720 C0 A3 01 E8 */ lfs f5, 0x1e8(r3) +/* 801FF7C4 001FC724 EC A5 30 2A */ fadds f5, f5, f6 +/* 801FF7C8 001FC728 D0 A3 01 E8 */ stfs f5, 0x1e8(r3) +/* 801FF7CC 001FC72C 80 7E 00 10 */ lwz r3, 0x10(r30) +/* 801FF7D0 001FC730 C0 A3 02 A0 */ lfs f5, 0x2a0(r3) +/* 801FF7D4 001FC734 EC A5 48 2A */ fadds f5, f5, f9 +/* 801FF7D8 001FC738 D0 A3 02 A0 */ stfs f5, 0x2a0(r3) +/* 801FF7DC 001FC73C C0 A3 02 A4 */ lfs f5, 0x2a4(r3) +/* 801FF7E0 001FC740 EC A5 18 2A */ fadds f5, f5, f3 +/* 801FF7E4 001FC744 D0 A3 02 A4 */ stfs f5, 0x2a4(r3) +/* 801FF7E8 001FC748 C0 A3 02 A8 */ lfs f5, 0x2a8(r3) +/* 801FF7EC 001FC74C EC A5 20 2A */ fadds f5, f5, f4 +/* 801FF7F0 001FC750 D0 A3 02 A8 */ stfs f5, 0x2a8(r3) +/* 801FF7F4 001FC754 80 7E 00 10 */ lwz r3, 0x10(r30) +/* 801FF7F8 001FC758 C0 A3 02 A0 */ lfs f5, 0x2a0(r3) +/* 801FF7FC 001FC75C EC A5 48 2A */ fadds f5, f5, f9 +/* 801FF800 001FC760 D0 A3 02 A0 */ stfs f5, 0x2a0(r3) +/* 801FF804 001FC764 C0 A3 02 A4 */ lfs f5, 0x2a4(r3) +/* 801FF808 001FC768 EC 65 18 2A */ fadds f3, f5, f3 +/* 801FF80C 001FC76C D0 63 02 A4 */ stfs f3, 0x2a4(r3) +/* 801FF810 001FC770 C0 63 02 A8 */ lfs f3, 0x2a8(r3) +/* 801FF814 001FC774 EC 63 20 2A */ fadds f3, f3, f4 +/* 801FF818 001FC778 D0 63 02 A8 */ stfs f3, 0x2a8(r3) +/* 801FF81C 001FC77C 80 7E 00 10 */ lwz r3, 0x10(r30) +/* 801FF820 001FC780 C0 63 00 60 */ lfs f3, 0x60(r3) +/* 801FF824 001FC784 EC 43 10 2A */ fadds f2, f3, f2 +/* 801FF828 001FC788 D0 43 00 60 */ stfs f2, 0x60(r3) +/* 801FF82C 001FC78C C0 43 00 64 */ lfs f2, 0x64(r3) +/* 801FF830 001FC790 EC 22 08 2A */ fadds f1, f2, f1 +/* 801FF834 001FC794 D0 23 00 64 */ stfs f1, 0x64(r3) +/* 801FF838 001FC798 C0 23 00 68 */ lfs f1, 0x68(r3) +/* 801FF83C 001FC79C EC 01 00 2A */ fadds f0, f1, f0 +/* 801FF840 001FC7A0 D0 03 00 68 */ stfs f0, 0x68(r3) +/* 801FF844 001FC7A4 80 7E 00 10 */ lwz r3, 0x10(r30) +/* 801FF848 001FC7A8 C1 63 00 84 */ lfs f11, 0x84(r3) +/* 801FF84C 001FC7AC C1 03 01 44 */ lfs f8, 0x144(r3) +/* 801FF850 001FC7B0 C0 03 02 08 */ lfs f0, 0x208(r3) +/* 801FF854 001FC7B4 C1 43 00 88 */ lfs f10, 0x88(r3) +/* 801FF858 001FC7B8 EF 88 58 28 */ fsubs f28, f8, f11 +/* 801FF85C 001FC7BC C0 23 02 04 */ lfs f1, 0x204(r3) +/* 801FF860 001FC7C0 C0 63 01 48 */ lfs f3, 0x148(r3) +/* 801FF864 001FC7C4 ED 80 50 28 */ fsubs f12, f0, f10 +/* 801FF868 001FC7C8 C0 03 02 0C */ lfs f0, 0x20c(r3) +/* 801FF86C 001FC7CC EC A1 58 28 */ fsubs f5, f1, f11 +/* 801FF870 001FC7D0 C1 23 00 8C */ lfs f9, 0x8c(r3) +/* 801FF874 001FC7D4 ED A3 50 28 */ fsubs f13, f3, f10 +/* 801FF878 001FC7D8 C0 43 01 4C */ lfs f2, 0x14c(r3) +/* 801FF87C 001FC7DC EC 80 48 28 */ fsubs f4, f0, f9 +/* 801FF880 001FC7E0 EC C2 48 28 */ fsubs f6, f2, f9 +/* 801FF884 001FC7E4 EC 04 07 32 */ fmuls f0, f4, f28 +/* 801FF888 001FC7E8 EC 2C 01 B2 */ fmuls f1, f12, f6 +/* 801FF88C 001FC7EC EC C6 01 78 */ fmsubs f6, f6, f5, f0 +/* 801FF890 001FC7F0 EC ED 09 38 */ fmsubs f7, f13, f4, f1 +/* 801FF894 001FC7F4 D0 C1 00 C8 */ stfs f6, 0xc8(r1) +/* 801FF898 001FC7F8 D0 E1 00 C4 */ stfs f7, 0xc4(r1) +/* 801FF89C 001FC7FC EC A5 03 72 */ fmuls f5, f5, f13 +/* 801FF8A0 001FC800 C0 82 AF 9C */ lfs f4, lbl_805ACCBC@sda21(r2) +/* 801FF8A4 001FC804 EC 6A 18 28 */ fsubs f3, f10, f3 +/* 801FF8A8 001FC808 C0 22 B0 20 */ lfs f1, lbl_805ACD40@sda21(r2) +/* 801FF8AC 001FC80C EC 49 10 28 */ fsubs f2, f9, f2 +/* 801FF8B0 001FC810 38 61 00 38 */ addi r3, r1, 0x38 +/* 801FF8B4 001FC814 EC 0B 40 28 */ fsubs f0, f11, f8 +/* 801FF8B8 001FC818 38 8D 92 D4 */ addi r4, r13, lbl_805A7E94@sda21 +/* 801FF8BC 001FC81C EC BC 2B 38 */ fmsubs f5, f28, f12, f5 +/* 801FF8C0 001FC820 ED 24 00 F2 */ fmuls f9, f4, f3 +/* 801FF8C4 001FC824 ED 04 00 B2 */ fmuls f8, f4, f2 +/* 801FF8C8 001FC828 EC 64 00 32 */ fmuls f3, f4, f0 +/* 801FF8CC 001FC82C D0 A1 00 CC */ stfs f5, 0xcc(r1) +/* 801FF8D0 001FC830 EC 46 48 2A */ fadds f2, f6, f9 +/* 801FF8D4 001FC834 EC 05 40 2A */ fadds f0, f5, f8 +/* 801FF8D8 001FC838 EC 67 18 2A */ fadds f3, f7, f3 +/* 801FF8DC 001FC83C D0 41 00 C8 */ stfs f2, 0xc8(r1) +/* 801FF8E0 001FC840 D0 61 00 C4 */ stfs f3, 0xc4(r1) +/* 801FF8E4 001FC844 D0 01 00 CC */ stfs f0, 0xcc(r1) +/* 801FF8E8 001FC848 C0 1E 00 80 */ lfs f0, 0x80(r30) +/* 801FF8EC 001FC84C EC 01 07 7A */ fmadds f0, f1, f29, f0 +/* 801FF8F0 001FC850 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 801FF8F4 001FC854 4B E7 E4 ED */ bl "Min__5CMathFRCfRCf" +/* 801FF8F8 001FC858 C0 03 00 00 */ lfs f0, 0(r3) +/* 801FF8FC 001FC85C 38 61 00 70 */ addi r3, r1, 0x70 +/* 801FF900 001FC860 38 81 00 C4 */ addi r4, r1, 0xc4 +/* 801FF904 001FC864 D0 1E 00 80 */ stfs f0, 0x80(r30) +/* 801FF908 001FC868 48 11 4F 49 */ bl AsNormalized__9CVector3fCFv +/* 801FF90C 001FC86C C0 9E 00 80 */ lfs f4, 0x80(r30) +/* 801FF910 001FC870 38 61 00 34 */ addi r3, r1, 0x34 +/* 801FF914 001FC874 C0 41 00 78 */ lfs f2, 0x78(r1) +/* 801FF918 001FC878 38 81 00 64 */ addi r4, r1, 0x64 +/* 801FF91C 001FC87C C0 01 00 70 */ lfs f0, 0x70(r1) +/* 801FF920 001FC880 38 A1 00 58 */ addi r5, r1, 0x58 +/* 801FF924 001FC884 C0 21 00 74 */ lfs f1, 0x74(r1) +/* 801FF928 001FC888 EC 64 00 B2 */ fmuls f3, f4, f2 +/* 801FF92C 001FC88C EC 44 00 32 */ fmuls f2, f4, f0 +/* 801FF930 001FC890 C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801FF934 001FC894 EC 24 00 72 */ fmuls f1, f4, f1 +/* 801FF938 001FC898 38 C0 00 7F */ li r6, 0x7f +/* 801FF93C 001FC89C D0 61 00 CC */ stfs f3, 0xcc(r1) +/* 801FF940 001FC8A0 D0 41 00 C4 */ stfs f2, 0xc4(r1) +/* 801FF944 001FC8A4 D0 21 00 C8 */ stfs f1, 0xc8(r1) +/* 801FF948 001FC8A8 80 FE 00 10 */ lwz r7, 0x10(r30) +/* 801FF94C 001FC8AC C0 27 00 A0 */ lfs f1, 0xa0(r7) +/* 801FF950 001FC8B0 EC 21 10 2A */ fadds f1, f1, f2 +/* 801FF954 001FC8B4 D0 27 00 A0 */ stfs f1, 0xa0(r7) +/* 801FF958 001FC8B8 C0 47 00 A4 */ lfs f2, 0xa4(r7) +/* 801FF95C 001FC8BC C0 21 00 C8 */ lfs f1, 0xc8(r1) +/* 801FF960 001FC8C0 EC 22 08 2A */ fadds f1, f2, f1 +/* 801FF964 001FC8C4 D0 27 00 A4 */ stfs f1, 0xa4(r7) +/* 801FF968 001FC8C8 C0 47 00 A8 */ lfs f2, 0xa8(r7) +/* 801FF96C 001FC8CC C0 21 00 CC */ lfs f1, 0xcc(r1) +/* 801FF970 001FC8D0 EC 22 08 2A */ fadds f1, f2, f1 +/* 801FF974 001FC8D4 D0 27 00 A8 */ stfs f1, 0xa8(r7) +/* 801FF978 001FC8D8 C0 21 00 C4 */ lfs f1, 0xc4(r1) +/* 801FF97C 001FC8DC 80 FE 00 10 */ lwz r7, 0x10(r30) +/* 801FF980 001FC8E0 C0 81 00 CC */ lfs f4, 0xcc(r1) +/* 801FF984 001FC8E4 FC 20 08 50 */ fneg f1, f1 +/* 801FF988 001FC8E8 C0 47 01 60 */ lfs f2, 0x160(r7) +/* 801FF98C 001FC8EC C0 61 00 C8 */ lfs f3, 0xc8(r1) +/* 801FF990 001FC8F0 FC 80 20 50 */ fneg f4, f4 +/* 801FF994 001FC8F4 EC 22 08 2A */ fadds f1, f2, f1 +/* 801FF998 001FC8F8 FC 40 18 50 */ fneg f2, f3 +/* 801FF99C 001FC8FC D0 27 01 60 */ stfs f1, 0x160(r7) +/* 801FF9A0 001FC900 C0 27 01 64 */ lfs f1, 0x164(r7) +/* 801FF9A4 001FC904 EC 21 10 2A */ fadds f1, f1, f2 +/* 801FF9A8 001FC908 D0 27 01 64 */ stfs f1, 0x164(r7) +/* 801FF9AC 001FC90C C0 27 01 68 */ lfs f1, 0x168(r7) +/* 801FF9B0 001FC910 EC 21 20 2A */ fadds f1, f1, f4 +/* 801FF9B4 001FC914 D0 27 01 68 */ stfs f1, 0x168(r7) +/* 801FF9B8 001FC918 D0 1E 00 44 */ stfs f0, 0x44(r30) +/* 801FF9BC 001FC91C C0 1E 00 58 */ lfs f0, 0x58(r30) +/* 801FF9C0 001FC920 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 801FF9C4 001FC924 C0 1E 00 5C */ lfs f0, 0x5c(r30) +/* 801FF9C8 001FC928 D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 801FF9CC 001FC92C C0 1E 00 60 */ lfs f0, 0x60(r30) +/* 801FF9D0 001FC930 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 801FF9D4 001FC934 80 FE 00 6C */ lwz r7, 0x6c(r30) +/* 801FF9D8 001FC938 C0 47 00 60 */ lfs f2, 0x60(r7) +/* 801FF9DC 001FC93C C0 27 00 50 */ lfs f1, 0x50(r7) +/* 801FF9E0 001FC940 C0 07 00 40 */ lfs f0, 0x40(r7) +/* 801FF9E4 001FC944 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 801FF9E8 001FC948 D0 21 00 68 */ stfs f1, 0x68(r1) +/* 801FF9EC 001FC94C D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 801FF9F0 001FC950 80 1E 00 A0 */ lwz r0, 0xa0(r30) +/* 801FF9F4 001FC954 90 01 00 34 */ stw r0, 0x34(r1) +/* 801FF9F8 001FC958 48 0E A4 B9 */ bl UpdateEmitter__11CSfxManagerF10CSfxHandleRC9CVector3fRC9CVector3fUc +lbl_801FF9FC: +/* 801FF9FC 001FC95C 80 BE 00 10 */ lwz r5, 0x10(r30) +/* 801FFA00 001FC960 3B A1 00 C0 */ addi r29, r1, 0xc0 +/* 801FFA04 001FC964 C0 62 AF 9C */ lfs f3, lbl_805ACCBC@sda21(r2) +/* 801FFA08 001FC968 38 61 00 30 */ addi r3, r1, 0x30 +/* 801FFA0C 001FC96C C0 45 02 08 */ lfs f2, 0x208(r5) +/* 801FFA10 001FC970 38 81 00 2C */ addi r4, r1, 0x2c +/* 801FFA14 001FC974 C0 25 02 C8 */ lfs f1, 0x2c8(r5) +/* 801FFA18 001FC978 C0 05 02 0C */ lfs f0, 0x20c(r5) +/* 801FFA1C 001FC97C ED 43 00 B2 */ fmuls f10, f3, f2 +/* 801FFA20 001FC980 C0 A5 02 CC */ lfs f5, 0x2cc(r5) +/* 801FFA24 001FC984 ED 23 00 72 */ fmuls f9, f3, f1 +/* 801FFA28 001FC988 C0 25 02 04 */ lfs f1, 0x204(r5) +/* 801FFA2C 001FC98C EC C3 00 32 */ fmuls f6, f3, f0 +/* 801FFA30 001FC990 C0 05 02 C4 */ lfs f0, 0x2c4(r5) +/* 801FFA34 001FC994 EC 83 01 72 */ fmuls f4, f3, f5 +/* 801FFA38 001FC998 C1 02 AF 74 */ lfs f8, lbl_805ACC94@sda21(r2) +/* 801FFA3C 001FC99C C0 E5 00 08 */ lfs f7, 8(r5) +/* 801FFA40 001FC9A0 EC 43 00 72 */ fmuls f2, f3, f1 +/* 801FFA44 001FC9A4 EC 23 00 32 */ fmuls f1, f3, f0 +/* 801FFA48 001FC9A8 C0 65 00 0C */ lfs f3, 0xc(r5) +/* 801FFA4C 001FC9AC C0 05 00 04 */ lfs f0, 4(r5) +/* 801FFA50 001FC9B0 ED 2A 48 2A */ fadds f9, f10, f9 +/* 801FFA54 001FC9B4 EC E8 01 F2 */ fmuls f7, f8, f7 +/* 801FFA58 001FC9B8 EC 86 20 2A */ fadds f4, f6, f4 +/* 801FFA5C 001FC9BC EC 68 00 F2 */ fmuls f3, f8, f3 +/* 801FFA60 001FC9C0 EC C9 38 2A */ fadds f6, f9, f7 +/* 801FFA64 001FC9C4 EC 22 08 2A */ fadds f1, f2, f1 +/* 801FFA68 001FC9C8 EC 08 00 32 */ fmuls f0, f8, f0 +/* 801FFA6C 001FC9CC EC 44 18 2A */ fadds f2, f4, f3 +/* 801FFA70 001FC9D0 D0 C1 00 BC */ stfs f6, 0xbc(r1) +/* 801FFA74 001FC9D4 EC 01 00 2A */ fadds f0, f1, f0 +/* 801FFA78 001FC9D8 D0 41 00 C0 */ stfs f2, 0xc0(r1) +/* 801FFA7C 001FC9DC D0 01 00 B8 */ stfs f0, 0xb8(r1) +/* 801FFA80 001FC9E0 C0 05 02 D0 */ lfs f0, 0x2d0(r5) +/* 801FFA84 001FC9E4 EC 05 00 28 */ fsubs f0, f5, f0 +/* 801FFA88 001FC9E8 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801FFA8C 001FC9EC 80 BE 00 10 */ lwz r5, 0x10(r30) +/* 801FFA90 001FC9F0 C0 25 02 0C */ lfs f1, 0x20c(r5) +/* 801FFA94 001FC9F4 C0 05 02 10 */ lfs f0, 0x210(r5) +/* 801FFA98 001FC9F8 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801FFA9C 001FC9FC D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801FFAA0 001FCA00 4B E7 E3 41 */ bl "Min__5CMathFRCfRCf" +/* 801FFAA4 001FCA04 C0 03 00 00 */ lfs f0, 0(r3) +/* 801FFAA8 001FCA08 7F A4 EB 78 */ mr r4, r29 +/* 801FFAAC 001FCA0C 38 61 00 28 */ addi r3, r1, 0x28 +/* 801FFAB0 001FCA10 D0 01 00 C0 */ stfs f0, 0xc0(r1) +/* 801FFAB4 001FCA14 80 BE 00 10 */ lwz r5, 0x10(r30) +/* 801FFAB8 001FCA18 C0 25 00 0C */ lfs f1, 0xc(r5) +/* 801FFABC 001FCA1C C0 05 00 10 */ lfs f0, 0x10(r5) +/* 801FFAC0 001FCA20 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801FFAC4 001FCA24 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 801FFAC8 001FCA28 4B E7 E3 19 */ bl "Min__5CMathFRCfRCf" +/* 801FFACC 001FCA2C C0 03 00 00 */ lfs f0, 0(r3) +/* 801FFAD0 001FCA30 FC 20 E8 90 */ fmr f1, f29 +/* 801FFAD4 001FCA34 FC 40 F0 90 */ fmr f2, f30 +/* 801FFAD8 001FCA38 7F C3 F3 78 */ mr r3, r30 +/* 801FFADC 001FCA3C D0 01 00 C0 */ stfs f0, 0xc0(r1) +/* 801FFAE0 001FCA40 7F E4 FB 78 */ mr r4, r31 +/* 801FFAE4 001FCA44 48 00 D8 F1 */ bl Update__8CRagDollFR13CStateManagerff +/* 801FFAE8 001FCA48 80 BE 00 10 */ lwz r5, 0x10(r30) +/* 801FFAEC 001FCA4C 3B A1 00 B4 */ addi r29, r1, 0xb4 +/* 801FFAF0 001FCA50 C0 62 AF 9C */ lfs f3, lbl_805ACCBC@sda21(r2) +/* 801FFAF4 001FCA54 38 61 00 24 */ addi r3, r1, 0x24 +/* 801FFAF8 001FCA58 C0 45 02 08 */ lfs f2, 0x208(r5) +/* 801FFAFC 001FCA5C 38 81 00 20 */ addi r4, r1, 0x20 +/* 801FFB00 001FCA60 C0 25 02 C8 */ lfs f1, 0x2c8(r5) +/* 801FFB04 001FCA64 C0 05 02 0C */ lfs f0, 0x20c(r5) +/* 801FFB08 001FCA68 ED 43 00 B2 */ fmuls f10, f3, f2 +/* 801FFB0C 001FCA6C C0 A5 02 CC */ lfs f5, 0x2cc(r5) +/* 801FFB10 001FCA70 ED 23 00 72 */ fmuls f9, f3, f1 +/* 801FFB14 001FCA74 C0 25 02 04 */ lfs f1, 0x204(r5) +/* 801FFB18 001FCA78 EC C3 00 32 */ fmuls f6, f3, f0 +/* 801FFB1C 001FCA7C C0 05 02 C4 */ lfs f0, 0x2c4(r5) +/* 801FFB20 001FCA80 EC 83 01 72 */ fmuls f4, f3, f5 +/* 801FFB24 001FCA84 C1 02 AF 74 */ lfs f8, lbl_805ACC94@sda21(r2) +/* 801FFB28 001FCA88 C0 E5 00 08 */ lfs f7, 8(r5) +/* 801FFB2C 001FCA8C EC 43 00 72 */ fmuls f2, f3, f1 +/* 801FFB30 001FCA90 EC 23 00 32 */ fmuls f1, f3, f0 +/* 801FFB34 001FCA94 C0 65 00 0C */ lfs f3, 0xc(r5) +/* 801FFB38 001FCA98 C0 05 00 04 */ lfs f0, 4(r5) +/* 801FFB3C 001FCA9C ED 2A 48 2A */ fadds f9, f10, f9 +/* 801FFB40 001FCAA0 EC E8 01 F2 */ fmuls f7, f8, f7 +/* 801FFB44 001FCAA4 EC 86 20 2A */ fadds f4, f6, f4 +/* 801FFB48 001FCAA8 EC 68 00 F2 */ fmuls f3, f8, f3 +/* 801FFB4C 001FCAAC EC C9 38 2A */ fadds f6, f9, f7 +/* 801FFB50 001FCAB0 EC 22 08 2A */ fadds f1, f2, f1 +/* 801FFB54 001FCAB4 EC 08 00 32 */ fmuls f0, f8, f0 +/* 801FFB58 001FCAB8 EC 44 18 2A */ fadds f2, f4, f3 +/* 801FFB5C 001FCABC D0 C1 00 B0 */ stfs f6, 0xb0(r1) +/* 801FFB60 001FCAC0 EC 01 00 2A */ fadds f0, f1, f0 +/* 801FFB64 001FCAC4 D0 41 00 B4 */ stfs f2, 0xb4(r1) +/* 801FFB68 001FCAC8 D0 01 00 AC */ stfs f0, 0xac(r1) +/* 801FFB6C 001FCACC C0 05 02 D0 */ lfs f0, 0x2d0(r5) +/* 801FFB70 001FCAD0 EC 05 00 28 */ fsubs f0, f5, f0 +/* 801FFB74 001FCAD4 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801FFB78 001FCAD8 80 BE 00 10 */ lwz r5, 0x10(r30) +/* 801FFB7C 001FCADC C0 25 02 0C */ lfs f1, 0x20c(r5) +/* 801FFB80 001FCAE0 C0 05 02 10 */ lfs f0, 0x210(r5) +/* 801FFB84 001FCAE4 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801FFB88 001FCAE8 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801FFB8C 001FCAEC 4B E7 E2 55 */ bl "Min__5CMathFRCfRCf" +/* 801FFB90 001FCAF0 C0 03 00 00 */ lfs f0, 0(r3) +/* 801FFB94 001FCAF4 7F A4 EB 78 */ mr r4, r29 +/* 801FFB98 001FCAF8 38 61 00 1C */ addi r3, r1, 0x1c +/* 801FFB9C 001FCAFC D0 01 00 B4 */ stfs f0, 0xb4(r1) +/* 801FFBA0 001FCB00 80 BE 00 10 */ lwz r5, 0x10(r30) +/* 801FFBA4 001FCB04 C0 25 00 0C */ lfs f1, 0xc(r5) +/* 801FFBA8 001FCB08 C0 05 00 10 */ lfs f0, 0x10(r5) +/* 801FFBAC 001FCB0C EC 01 00 28 */ fsubs f0, f1, f0 +/* 801FFBB0 001FCB10 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801FFBB4 001FCB14 4B E7 E2 2D */ bl "Min__5CMathFRCfRCf" +/* 801FFBB8 001FCB18 C0 02 AF 78 */ lfs f0, lbl_805ACC98@sda21(r2) +/* 801FFBBC 001FCB1C 3C 80 80 5A */ lis r4, skIdentity4f@ha +/* 801FFBC0 001FCB20 C0 A3 00 00 */ lfs f5, 0(r3) +/* 801FFBC4 001FCB24 38 84 66 70 */ addi r4, r4, skIdentity4f@l +/* 801FFBC8 001FCB28 EC C0 E8 24 */ fdivs f6, f0, f29 +/* 801FFBCC 001FCB2C C0 41 00 C0 */ lfs f2, 0xc0(r1) +/* 801FFBD0 001FCB30 C0 81 00 B0 */ lfs f4, 0xb0(r1) +/* 801FFBD4 001FCB34 C0 61 00 BC */ lfs f3, 0xbc(r1) +/* 801FFBD8 001FCB38 C0 21 00 AC */ lfs f1, 0xac(r1) +/* 801FFBDC 001FCB3C C0 01 00 B8 */ lfs f0, 0xb8(r1) +/* 801FFBE0 001FCB40 EC 64 18 28 */ fsubs f3, f4, f3 +/* 801FFBE4 001FCB44 D0 A1 00 B4 */ stfs f5, 0xb4(r1) +/* 801FFBE8 001FCB48 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801FFBEC 001FCB4C EC 45 10 28 */ fsubs f2, f5, f2 +/* 801FFBF0 001FCB50 EC 66 00 F2 */ fmuls f3, f6, f3 +/* 801FFBF4 001FCB54 EC 06 00 32 */ fmuls f0, f6, f0 +/* 801FFBF8 001FCB58 EC 26 00 B2 */ fmuls f1, f6, f2 +/* 801FFBFC 001FCB5C D0 61 00 A4 */ stfs f3, 0xa4(r1) +/* 801FFC00 001FCB60 D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 801FFC04 001FCB64 D0 21 00 A8 */ stfs f1, 0xa8(r1) +/* 801FFC08 001FCB68 83 BE 00 6C */ lwz r29, 0x6c(r30) +/* 801FFC0C 001FCB6C 38 7D 00 34 */ addi r3, r29, 0x34 +/* 801FFC10 001FCB70 48 11 2F 31 */ bl __as__12CTransform4fFRC12CTransform4f +/* 801FFC14 001FCB74 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 801FFC18 001FCB78 38 60 00 01 */ li r3, 1 +/* 801FFC1C 001FCB7C 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801FFC20 001FCB80 38 81 00 AC */ addi r4, r1, 0xac +/* 801FFC24 001FCB84 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 801FFC28 001FCB88 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 801FFC2C 001FCB8C 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801FFC30 001FCB90 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 801FFC34 001FCB94 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 801FFC38 001FCB98 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801FFC3C 001FCB9C 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 801FFC40 001FCBA0 80 7E 00 6C */ lwz r3, 0x6c(r30) +/* 801FFC44 001FCBA4 4B E5 32 49 */ bl SetTranslation__6CActorFRC9CVector3f +/* 801FFC48 001FCBA8 80 7E 00 6C */ lwz r3, 0x6c(r30) +/* 801FFC4C 001FCBAC 38 81 00 A0 */ addi r4, r1, 0xa0 +/* 801FFC50 001FCBB0 4B F1 B0 51 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f +/* 801FFC54 001FCBB4 80 7E 00 6C */ lwz r3, 0x6c(r30) +/* 801FFC58 001FCBB8 88 03 06 A1 */ lbz r0, 0x6a1(r3) +/* 801FFC5C 001FCBBC 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 801FFC60 001FCBC0 41 82 00 64 */ beq lbl_801FFCC4 +/* 801FFC64 001FCBC4 C0 21 00 B0 */ lfs f1, 0xb0(r1) +/* 801FFC68 001FCBC8 C0 03 02 E4 */ lfs f0, 0x2e4(r3) +/* 801FFC6C 001FCBCC C0 41 00 AC */ lfs f2, 0xac(r1) +/* 801FFC70 001FCBD0 EC A1 00 28 */ fsubs f5, f1, f0 +/* 801FFC74 001FCBD4 C0 23 02 E0 */ lfs f1, 0x2e0(r3) +/* 801FFC78 001FCBD8 C0 1E 00 A8 */ lfs f0, 0xa8(r30) +/* 801FFC7C 001FCBDC EC 62 08 28 */ fsubs f3, f2, f1 +/* 801FFC80 001FCBE0 C0 81 00 B4 */ lfs f4, 0xb4(r1) +/* 801FFC84 001FCBE4 C0 43 02 E8 */ lfs f2, 0x2e8(r3) +/* 801FFC88 001FCBE8 EC 05 00 32 */ fmuls f0, f5, f0 +/* 801FFC8C 001FCBEC C0 3E 00 A4 */ lfs f1, 0xa4(r30) +/* 801FFC90 001FCBF0 EC 84 10 28 */ fsubs f4, f4, f2 +/* 801FFC94 001FCBF4 C0 5E 00 AC */ lfs f2, 0xac(r30) +/* 801FFC98 001FCBF8 EC 23 00 7A */ fmadds f1, f3, f1, f0 +/* 801FFC9C 001FCBFC C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801FFCA0 001FCC00 D0 61 00 4C */ stfs f3, 0x4c(r1) +/* 801FFCA4 001FCC04 EC 24 08 BA */ fmadds f1, f4, f2, f1 +/* 801FFCA8 001FCC08 D0 A1 00 50 */ stfs f5, 0x50(r1) +/* 801FFCAC 001FCC0C D0 81 00 54 */ stfs f4, 0x54(r1) +/* 801FFCB0 001FCC10 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801FFCB4 001FCC14 40 81 00 10 */ ble lbl_801FFCC4 +/* 801FFCB8 001FCC18 C0 02 AF 74 */ lfs f0, lbl_805ACC94@sda21(r2) +/* 801FFCBC 001FCC1C EC 00 07 72 */ fmuls f0, f0, f29 +/* 801FFCC0 001FCC20 D0 03 08 8C */ stfs f0, 0x88c(r3) +lbl_801FFCC4: +/* 801FFCC4 001FCC24 C0 3E 00 8C */ lfs f1, 0x8c(r30) +/* 801FFCC8 001FCC28 C0 02 AF 64 */ lfs f0, lbl_805ACC84@sda21(r2) +/* 801FFCCC 001FCC2C EC 21 E8 28 */ fsubs f1, f1, f29 +/* 801FFCD0 001FCC30 D0 3E 00 8C */ stfs f1, 0x8c(r30) +/* 801FFCD4 001FCC34 C0 BE 00 54 */ lfs f5, 0x54(r30) +/* 801FFCD8 001FCC38 FC 05 00 40 */ fcmpo cr0, f5, f0 +/* 801FFCDC 001FCC3C 40 81 01 38 */ ble lbl_801FFE14 +/* 801FFCE0 001FCC40 C0 3E 00 8C */ lfs f1, 0x8c(r30) +/* 801FFCE4 001FCC44 C0 02 AF 60 */ lfs f0, lbl_805ACC80@sda21(r2) +/* 801FFCE8 001FCC48 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801FFCEC 001FCC4C 40 80 01 28 */ bge lbl_801FFE14 +/* 801FFCF0 001FCC50 80 7E 00 6C */ lwz r3, 0x6c(r30) +/* 801FFCF4 001FCC54 88 1E 00 B0 */ lbz r0, 0xb0(r30) +/* 801FFCF8 001FCC58 C0 23 00 40 */ lfs f1, 0x40(r3) +/* 801FFCFC 001FCC5C C0 1E 00 90 */ lfs f0, 0x90(r30) +/* 801FFD00 001FCC60 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801FFD04 001FCC64 C0 63 00 50 */ lfs f3, 0x50(r3) +/* 801FFD08 001FCC68 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801FFD0C 001FCC6C C0 5E 00 94 */ lfs f2, 0x94(r30) +/* 801FFD10 001FCC70 C0 23 00 60 */ lfs f1, 0x60(r3) +/* 801FFD14 001FCC74 C0 1E 00 98 */ lfs f0, 0x98(r30) +/* 801FFD18 001FCC78 EC 63 10 28 */ fsubs f3, f3, f2 +/* 801FFD1C 001FCC7C EC 41 00 28 */ fsubs f2, f1, f0 +/* 801FFD20 001FCC80 40 82 00 1C */ bne lbl_801FFD3C +/* 801FFD24 001FCC84 EC 23 00 F2 */ fmuls f1, f3, f3 +/* 801FFD28 001FCC88 C0 02 AF B0 */ lfs f0, lbl_805ACCD0@sda21(r2) +/* 801FFD2C 001FCC8C EC 24 09 3A */ fmadds f1, f4, f4, f1 +/* 801FFD30 001FCC90 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 801FFD34 001FCC94 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801FFD38 001FCC98 40 81 00 DC */ ble lbl_801FFE14 +lbl_801FFD3C: +/* 801FFD3C 001FCC9C C0 02 AF D0 */ lfs f0, lbl_805ACCF0@sda21(r2) +/* 801FFD40 001FCCA0 38 61 00 18 */ addi r3, r1, 0x18 +/* 801FFD44 001FCCA4 38 8D 92 D8 */ addi r4, r13, lbl_805A7E98@sda21 +/* 801FFD48 001FCCA8 EC 00 01 72 */ fmuls f0, f0, f5 +/* 801FFD4C 001FCCAC D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801FFD50 001FCCB0 4B E7 E0 91 */ bl "Min__5CMathFRCfRCf" +/* 801FFD54 001FCCB4 80 9E 00 6C */ lwz r4, 0x6c(r30) +/* 801FFD58 001FCCB8 C3 E3 00 00 */ lfs f31, 0(r3) +/* 801FFD5C 001FCCBC C0 44 00 60 */ lfs f2, 0x60(r4) +/* 801FFD60 001FCCC0 C0 24 00 50 */ lfs f1, 0x50(r4) +/* 801FFD64 001FCCC4 C0 04 00 40 */ lfs f0, 0x40(r4) +/* 801FFD68 001FCCC8 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 801FFD6C 001FCCCC D0 21 00 44 */ stfs f1, 0x44(r1) +/* 801FFD70 001FCCD0 D0 41 00 48 */ stfs f2, 0x48(r1) +/* 801FFD74 001FCCD4 F3 E1 A0 10 */ psq_st f31, 16(r1), 1, qr2 +/* 801FFD78 001FCCD8 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801FFD7C 001FCCDC 80 02 C6 00 */ lwz r0, lbl_805AE320@sda21(r2) +/* 801FFD80 001FCCE0 38 C3 66 A0 */ addi r6, r3, skZero3f@l +/* 801FFD84 001FCCE4 88 E1 00 10 */ lbz r7, 0x10(r1) +/* 801FFD88 001FCCE8 38 61 00 14 */ addi r3, r1, 0x14 +/* 801FFD8C 001FCCEC 90 01 00 08 */ stw r0, 8(r1) +/* 801FFD90 001FCCF0 38 A1 00 40 */ addi r5, r1, 0x40 +/* 801FFD94 001FCCF4 A9 42 C5 FA */ lha r10, lbl_805AE31A@sda21(r2) +/* 801FFD98 001FCCF8 39 00 00 01 */ li r8, 1 +/* 801FFD9C 001FCCFC A0 9E 00 88 */ lhz r4, 0x88(r30) +/* 801FFDA0 001FCD00 39 20 00 00 */ li r9, 0 +/* 801FFDA4 001FCD04 48 0E A4 15 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fUcbbsi +/* 801FFDA8 001FCD08 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 801FFDAC 001FCD0C 48 11 27 31 */ bl Float__9CRandom16Fv +/* 801FFDB0 001FCD10 C0 02 B0 24 */ lfs f0, lbl_805ACD44@sda21(r2) +/* 801FFDB4 001FCD14 38 60 00 00 */ li r3, 0 +/* 801FFDB8 001FCD18 EC 00 00 7A */ fmadds f0, f0, f1, f0 +/* 801FFDBC 001FCD1C D0 1E 00 8C */ stfs f0, 0x8c(r30) +/* 801FFDC0 001FCD20 88 1E 00 B0 */ lbz r0, 0xb0(r30) +/* 801FFDC4 001FCD24 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801FFDC8 001FCD28 98 1E 00 B0 */ stb r0, 0xb0(r30) +/* 801FFDCC 001FCD2C 80 7E 00 6C */ lwz r3, 0x6c(r30) +/* 801FFDD0 001FCD30 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 801FFDD4 001FCD34 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801FFDD8 001FCD38 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801FFDDC 001FCD3C D0 1E 00 90 */ stfs f0, 0x90(r30) +/* 801FFDE0 001FCD40 D0 3E 00 94 */ stfs f1, 0x94(r30) +/* 801FFDE4 001FCD44 D0 5E 00 98 */ stfs f2, 0x98(r30) +/* 801FFDE8 001FCD48 48 00 00 2C */ b lbl_801FFE14 +lbl_801FFDEC: +/* 801FFDEC 001FCD4C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801FFDF0 001FCD50 80 9E 00 6C */ lwz r4, 0x6c(r30) +/* 801FFDF4 001FCD54 C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) +/* 801FFDF8 001FCD58 D0 04 01 50 */ stfs f0, 0x150(r4) +/* 801FFDFC 001FCD5C C0 03 00 04 */ lfs f0, 4(r3) +/* 801FFE00 001FCD60 D0 04 01 54 */ stfs f0, 0x154(r4) +/* 801FFE04 001FCD64 C0 03 00 08 */ lfs f0, 8(r3) +/* 801FFE08 001FCD68 D0 04 01 58 */ stfs f0, 0x158(r4) +/* 801FFE0C 001FCD6C 80 7E 00 6C */ lwz r3, 0x6c(r30) +/* 801FFE10 001FCD70 4B F1 B5 69 */ bl Stop__13CPhysicsActorFv +lbl_801FFE14: +/* 801FFE14 001FCD74 E3 E1 01 28 */ psq_l f31, 296(r1), 0, qr0 +/* 801FFE18 001FCD78 CB E1 01 20 */ lfd f31, 0x120(r1) +/* 801FFE1C 001FCD7C E3 C1 01 18 */ psq_l f30, 280(r1), 0, qr0 +/* 801FFE20 001FCD80 CB C1 01 10 */ lfd f30, 0x110(r1) +/* 801FFE24 001FCD84 E3 A1 01 08 */ psq_l f29, 264(r1), 0, qr0 +/* 801FFE28 001FCD88 CB A1 01 00 */ lfd f29, 0x100(r1) +/* 801FFE2C 001FCD8C E3 81 00 F8 */ psq_l f28, 248(r1), 0, qr0 +/* 801FFE30 001FCD90 CB 81 00 F0 */ lfd f28, 0xf0(r1) +/* 801FFE34 001FCD94 83 E1 00 EC */ lwz r31, 0xec(r1) +/* 801FFE38 001FCD98 83 C1 00 E8 */ lwz r30, 0xe8(r1) +/* 801FFE3C 001FCD9C 80 01 01 34 */ lwz r0, 0x134(r1) +/* 801FFE40 001FCDA0 83 A1 00 E4 */ lwz r29, 0xe4(r1) +/* 801FFE44 001FCDA4 7C 08 03 A6 */ mtlr r0 +/* 801FFE48 001FCDA8 38 21 01 30 */ addi r1, r1, 0x130 +/* 801FFE4C 001FCDAC 4E 80 00 20 */ blr + +.global sub_801ffe50 +sub_801ffe50: +/* 801FFE50 001FCDB0 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801FFE54 001FCDB4 7C 08 02 A6 */ mflr r0 +/* 801FFE58 001FCDB8 90 01 00 34 */ stw r0, 0x34(r1) +/* 801FFE5C 001FCDBC 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801FFE60 001FCDC0 7C DF 33 78 */ mr r31, r6 +/* 801FFE64 001FCDC4 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801FFE68 001FCDC8 7C BE 2B 78 */ mr r30, r5 +/* 801FFE6C 001FCDCC 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801FFE70 001FCDD0 7C 9D 23 78 */ mr r29, r4 +/* 801FFE74 001FCDD4 93 81 00 20 */ stw r28, 0x20(r1) +/* 801FFE78 001FCDD8 7C 7C 1B 78 */ mr r28, r3 +/* 801FFE7C 001FCDDC 80 83 00 6C */ lwz r4, 0x6c(r3) +/* 801FFE80 001FCDE0 88 04 06 A1 */ lbz r0, 0x6a1(r4) +/* 801FFE84 001FCDE4 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 801FFE88 001FCDE8 41 82 00 4C */ beq lbl_801FFED4 +/* 801FFE8C 001FCDEC C0 44 00 60 */ lfs f2, 0x60(r4) +/* 801FFE90 001FCDF0 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801FFE94 001FCDF4 C0 24 00 50 */ lfs f1, 0x50(r4) +/* 801FFE98 001FCDF8 38 C3 66 A0 */ addi r6, r3, skZero3f@l +/* 801FFE9C 001FCDFC C0 04 00 40 */ lfs f0, 0x40(r4) +/* 801FFEA0 001FCE00 38 61 00 08 */ addi r3, r1, 8 +/* 801FFEA4 001FCE04 A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) +/* 801FFEA8 001FCE08 38 A1 00 0C */ addi r5, r1, 0xc +/* 801FFEAC 001FCE0C D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801FFEB0 001FCE10 38 E0 00 01 */ li r7, 1 +/* 801FFEB4 001FCE14 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 801FFEB8 001FCE18 39 00 00 01 */ li r8, 1 +/* 801FFEBC 001FCE1C D0 21 00 10 */ stfs f1, 0x10(r1) +/* 801FFEC0 001FCE20 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801FFEC4 001FCE24 A0 9C 00 9C */ lhz r4, 0x9c(r28) +/* 801FFEC8 001FCE28 48 0E A3 E9 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +/* 801FFECC 001FCE2C 80 01 00 08 */ lwz r0, 8(r1) +/* 801FFED0 001FCE30 90 1C 00 A0 */ stw r0, 0xa0(r28) +lbl_801FFED4: +/* 801FFED4 001FCE34 7F 83 E3 78 */ mr r3, r28 +/* 801FFED8 001FCE38 7F A4 EB 78 */ mr r4, r29 +/* 801FFEDC 001FCE3C 7F C5 F3 78 */ mr r5, r30 +/* 801FFEE0 001FCE40 7F E6 FB 78 */ mr r6, r31 +/* 801FFEE4 001FCE44 48 00 E7 F1 */ bl Prime__8CRagDollFR13CStateManagerRC12CTransform4fR10CModelData +/* 801FFEE8 001FCE48 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801FFEEC 001FCE4C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801FFEF0 001FCE50 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801FFEF4 001FCE54 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801FFEF8 001FCE58 83 81 00 20 */ lwz r28, 0x20(r1) +/* 801FFEFC 001FCE5C 7C 08 03 A6 */ mtlr r0 +/* 801FFF00 001FCE60 38 21 00 30 */ addi r1, r1, 0x30 +/* 801FFF04 001FCE64 4E 80 00 20 */ blr + +.global __dt__20CFlyingPirateRagDollFv +__dt__20CFlyingPirateRagDollFv: +/* 801FFF08 001FCE68 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801FFF0C 001FCE6C 7C 08 02 A6 */ mflr r0 +/* 801FFF10 001FCE70 90 01 00 24 */ stw r0, 0x24(r1) +/* 801FFF14 001FCE74 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801FFF18 001FCE78 7C 9F 23 78 */ mr r31, r4 +/* 801FFF1C 001FCE7C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801FFF20 001FCE80 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801FFF24 001FCE84 41 82 00 3C */ beq lbl_801FFF60 +/* 801FFF28 001FCE88 3C 80 80 3E */ lis r4, lbl_803E6B98@ha +/* 801FFF2C 001FCE8C 38 61 00 08 */ addi r3, r1, 8 +/* 801FFF30 001FCE90 38 04 6B 98 */ addi r0, r4, lbl_803E6B98@l +/* 801FFF34 001FCE94 90 1E 00 00 */ stw r0, 0(r30) +/* 801FFF38 001FCE98 80 1E 00 A0 */ lwz r0, 0xa0(r30) +/* 801FFF3C 001FCE9C 90 01 00 08 */ stw r0, 8(r1) +/* 801FFF40 001FCEA0 48 0E 9F 45 */ bl RemoveEmitter__11CSfxManagerFRC10CSfxHandle +/* 801FFF44 001FCEA4 7F C3 F3 78 */ mr r3, r30 +/* 801FFF48 001FCEA8 38 80 00 00 */ li r4, 0 +/* 801FFF4C 001FCEAC 4B F2 08 D1 */ bl __dt__8CRagDollFv +/* 801FFF50 001FCEB0 7F E0 07 35 */ extsh. r0, r31 +/* 801FFF54 001FCEB4 40 81 00 0C */ ble lbl_801FFF60 +/* 801FFF58 001FCEB8 7F C3 F3 78 */ mr r3, r30 +/* 801FFF5C 001FCEBC 48 11 59 D5 */ bl Free__7CMemoryFPCv +lbl_801FFF60: +/* 801FFF60 001FCEC0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801FFF64 001FCEC4 7F C3 F3 78 */ mr r3, r30 +/* 801FFF68 001FCEC8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801FFF6C 001FCECC 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801FFF70 001FCED0 7C 08 03 A6 */ mtlr r0 +/* 801FFF74 001FCED4 38 21 00 20 */ addi r1, r1, 0x20 +/* 801FFF78 001FCED8 4E 80 00 20 */ blr + +.global __ct__20CFlyingPirateRagDollFR13CStateManagerP13CFlyingPiratefUsUs +__ct__20CFlyingPirateRagDollFR13CStateManagerP13CFlyingPiratefUsUs: +/* 801FFF7C 001FCEDC 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 801FFF80 001FCEE0 7C 08 02 A6 */ mflr r0 +/* 801FFF84 001FCEE4 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 801FFF88 001FCEE8 DB E1 00 B0 */ stfd f31, 0xb0(r1) +/* 801FFF8C 001FCEEC F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0 +/* 801FFF90 001FCEF0 DB C1 00 A0 */ stfd f30, 0xa0(r1) +/* 801FFF94 001FCEF4 F3 C1 00 A8 */ psq_st f30, 168(r1), 0, qr0 +/* 801FFF98 001FCEF8 DB A1 00 90 */ stfd f29, 0x90(r1) +/* 801FFF9C 001FCEFC F3 A1 00 98 */ psq_st f29, 152(r1), 0, qr0 +/* 801FFFA0 001FCF00 BF 21 00 74 */ stmw r25, 0x74(r1) +/* 801FFFA4 001FCF04 7C BF 2B 78 */ mr r31, r5 +/* 801FFFA8 001FCF08 7C 7D 1B 78 */ mr r29, r3 +/* 801FFFAC 001FCF0C 7F E3 FB 78 */ mr r3, r31 +/* 801FFFB0 001FCF10 7C 9E 23 78 */ mr r30, r4 +/* 801FFFB4 001FCF14 81 9F 00 00 */ lwz r12, 0(r31) +/* 801FFFB8 001FCF18 7C DA 33 78 */ mr r26, r6 +/* 801FFFBC 001FCF1C 7C F9 3B 78 */ mr r25, r7 +/* 801FFFC0 001FCF20 C3 A2 AF 5C */ lfs f29, lbl_805ACC7C@sda21(r2) +/* 801FFFC4 001FCF24 81 8C 02 BC */ lwz r12, 0x2bc(r12) +/* 801FFFC8 001FCF28 7D 89 03 A6 */ mtctr r12 +/* 801FFFCC 001FCF2C 4E 80 04 21 */ bctrl +/* 801FFFD0 001FCF30 FC 20 08 50 */ fneg f1, f1 +/* 801FFFD4 001FCF34 C0 62 AF EC */ lfs f3, lbl_805ACD0C@sda21(r2) +/* 801FFFD8 001FCF38 FC 40 E8 50 */ fneg f2, f29 +/* 801FFFDC 001FCF3C 7F A3 EB 78 */ mr r3, r29 +/* 801FFFE0 001FCF40 38 80 00 00 */ li r4, 0 +/* 801FFFE4 001FCF44 48 00 E8 ED */ bl __ct__8CRagDollFfffUi +/* 801FFFE8 001FCF48 3C 60 80 3E */ lis r3, lbl_803E6B98@ha +/* 801FFFEC 001FCF4C 3C 80 80 5A */ lis r4, lbl_805A66F4@ha +/* 801FFFF0 001FCF50 38 03 6B 98 */ addi r0, r3, lbl_803E6B98@l +/* 801FFFF4 001FCF54 C0 42 AF 60 */ lfs f2, lbl_805ACC80@sda21(r2) +/* 801FFFF8 001FCF58 90 1D 00 00 */ stw r0, 0(r29) +/* 801FFFFC 001FCF5C 39 24 66 F4 */ addi r9, r4, lbl_805A66F4@l +/* 80200000 001FCF60 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80200004 001FCF64 C0 02 AF E4 */ lfs f0, lbl_805ACD04@sda21(r2) +/* 80200008 001FCF68 93 FD 00 6C */ stw r31, 0x6c(r29) +/* 8020000C 001FCF6C 39 03 66 A0 */ addi r8, r3, skZero3f@l +/* 80200010 001FCF70 38 00 00 00 */ li r0, 0 +/* 80200014 001FCF74 38 60 00 01 */ li r3, 1 +/* 80200018 001FCF78 D0 5D 00 70 */ stfs f2, 0x70(r29) +/* 8020001C 001FCF7C 7F C7 F3 78 */ mr r7, r30 +/* 80200020 001FCF80 38 80 00 13 */ li r4, 0x13 +/* 80200024 001FCF84 38 A0 00 30 */ li r5, 0x30 +/* 80200028 001FCF88 C0 29 00 00 */ lfs f1, 0(r9) +/* 8020002C 001FCF8C 38 C0 00 25 */ li r6, 0x25 +/* 80200030 001FCF90 D0 3D 00 74 */ stfs f1, 0x74(r29) +/* 80200034 001FCF94 C0 29 00 04 */ lfs f1, 4(r9) +/* 80200038 001FCF98 D0 3D 00 78 */ stfs f1, 0x78(r29) +/* 8020003C 001FCF9C C0 29 00 08 */ lfs f1, 8(r9) +/* 80200040 001FCFA0 D0 3D 00 7C */ stfs f1, 0x7c(r29) +/* 80200044 001FCFA4 D0 5D 00 80 */ stfs f2, 0x80(r29) +/* 80200048 001FCFA8 D0 1D 00 84 */ stfs f0, 0x84(r29) +/* 8020004C 001FCFAC B3 5D 00 88 */ sth r26, 0x88(r29) +/* 80200050 001FCFB0 D0 5D 00 8C */ stfs f2, 0x8c(r29) +/* 80200054 001FCFB4 C0 08 00 00 */ lfs f0, 0(r8) +/* 80200058 001FCFB8 D0 1D 00 90 */ stfs f0, 0x90(r29) +/* 8020005C 001FCFBC C0 08 00 04 */ lfs f0, 4(r8) +/* 80200060 001FCFC0 D0 1D 00 94 */ stfs f0, 0x94(r29) +/* 80200064 001FCFC4 C0 08 00 08 */ lfs f0, 8(r8) +/* 80200068 001FCFC8 D0 1D 00 98 */ stfs f0, 0x98(r29) +/* 8020006C 001FCFCC B3 3D 00 9C */ sth r25, 0x9c(r29) +/* 80200070 001FCFD0 90 1D 00 A0 */ stw r0, 0xa0(r29) +/* 80200074 001FCFD4 C0 3F 02 E0 */ lfs f1, 0x2e0(r31) +/* 80200078 001FCFD8 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8020007C 001FCFDC C0 9F 02 E4 */ lfs f4, 0x2e4(r31) +/* 80200080 001FCFE0 C0 7F 00 50 */ lfs f3, 0x50(r31) +/* 80200084 001FCFE4 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80200088 001FCFE8 C0 5F 02 E8 */ lfs f2, 0x2e8(r31) +/* 8020008C 001FCFEC C0 3F 00 60 */ lfs f1, 0x60(r31) +/* 80200090 001FCFF0 EC 64 18 28 */ fsubs f3, f4, f3 +/* 80200094 001FCFF4 D0 1D 00 A4 */ stfs f0, 0xa4(r29) +/* 80200098 001FCFF8 EC 02 08 28 */ fsubs f0, f2, f1 +/* 8020009C 001FCFFC D0 7D 00 A8 */ stfs f3, 0xa8(r29) +/* 802000A0 001FD000 D0 1D 00 AC */ stfs f0, 0xac(r29) +/* 802000A4 001FD004 88 1D 00 B0 */ lbz r0, 0xb0(r29) +/* 802000A8 001FD008 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 802000AC 001FD00C 98 1D 00 B0 */ stb r0, 0xb0(r29) +/* 802000B0 001FD010 80 7D 00 6C */ lwz r3, 0x6c(r29) +/* 802000B4 001FD014 4B E5 3D 39 */ bl RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypes14EMaterialTypesR13CStateManager +/* 802000B8 001FD018 80 7D 00 6C */ lwz r3, 0x6c(r29) +/* 802000BC 001FD01C 7F C4 F3 78 */ mr r4, r30 +/* 802000C0 001FD020 81 83 00 00 */ lwz r12, 0(r3) +/* 802000C4 001FD024 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 802000C8 001FD028 7D 89 03 A6 */ mtctr r12 +/* 802000CC 001FD02C 4E 80 04 21 */ bctrl +/* 802000D0 001FD030 C0 02 B0 28 */ lfs f0, lbl_805ACD48@sda21(r2) +/* 802000D4 001FD034 38 80 00 0F */ li r4, 0xf +/* 802000D8 001FD038 D0 03 00 00 */ stfs f0, 0(r3) +/* 802000DC 001FD03C 38 7D 00 04 */ addi r3, r29, 4 +/* 802000E0 001FD040 4B F2 C9 E5 */ bl "reserve__Q24rstl64vectorFi" +/* 802000E4 001FD044 38 7D 00 14 */ addi r3, r29, 0x14 +/* 802000E8 001FD048 38 80 00 2D */ li r4, 0x2d +/* 802000EC 001FD04C 4B F2 CB 61 */ bl "reserve__Q24rstl72vectorFi" +/* 802000F0 001FD050 38 7D 00 24 */ addi r3, r29, 0x24 +/* 802000F4 001FD054 38 80 00 04 */ li r4, 4 +/* 802000F8 001FD058 4B F2 CC 5D */ bl "reserve__Q24rstl71vectorFi" +/* 802000FC 001FD05C 80 7F 00 64 */ lwz r3, 0x64(r31) +/* 80200100 001FD060 3B 9F 00 34 */ addi r28, r31, 0x34 +/* 80200104 001FD064 C0 43 00 00 */ lfs f2, 0(r3) +/* 80200108 001FD068 C0 23 00 04 */ lfs f1, 4(r3) +/* 8020010C 001FD06C C0 03 00 08 */ lfs f0, 8(r3) +/* 80200110 001FD070 83 63 00 10 */ lwz r27, 0x10(r3) +/* 80200114 001FD074 D0 41 00 34 */ stfs f2, 0x34(r1) +/* 80200118 001FD078 7F 63 DB 78 */ mr r3, r27 +/* 8020011C 001FD07C D0 21 00 38 */ stfs f1, 0x38(r1) +/* 80200120 001FD080 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 80200124 001FD084 4B E2 C9 3D */ bl BuildPose__9CAnimDataFv +/* 80200128 001FD088 7F E4 FB 78 */ mr r4, r31 +/* 8020012C 001FD08C 38 61 00 58 */ addi r3, r1, 0x58 +/* 80200130 001FD090 4B F1 A7 FD */ bl GetBoundingBox__13CPhysicsActorCFv +/* 80200134 001FD094 38 61 00 28 */ addi r3, r1, 0x28 +/* 80200138 001FD098 38 81 00 58 */ addi r4, r1, 0x58 +/* 8020013C 001FD09C 48 13 74 D1 */ bl GetCenterPoint__6CAABoxCFv +/* 80200140 001FD0A0 C0 41 00 28 */ lfs f2, 0x28(r1) +/* 80200144 001FD0A4 3C 80 80 47 */ lis r4, lbl_8046CA4C@ha +/* 80200148 001FD0A8 C0 21 00 2C */ lfs f1, 0x2c(r1) +/* 8020014C 001FD0AC 3C 60 80 3D */ lis r3, lbl_803D2440@ha +/* 80200150 001FD0B0 C0 01 00 30 */ lfs f0, 0x30(r1) +/* 80200154 001FD0B4 3B E4 CA 4C */ addi r31, r4, lbl_8046CA4C@l +/* 80200158 001FD0B8 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 8020015C 001FD0BC 3B 43 24 40 */ addi r26, r3, lbl_803D2440@l +/* 80200160 001FD0C0 C3 A1 00 3C */ lfs f29, 0x3c(r1) +/* 80200164 001FD0C4 3B 20 00 00 */ li r25, 0 +/* 80200168 001FD0C8 D0 21 00 50 */ stfs f1, 0x50(r1) +/* 8020016C 001FD0CC C3 C1 00 38 */ lfs f30, 0x38(r1) +/* 80200170 001FD0D0 D0 01 00 54 */ stfs f0, 0x54(r1) +/* 80200174 001FD0D4 C3 E1 00 34 */ lfs f31, 0x34(r1) +lbl_80200178: +/* 80200178 001FD0D8 7F 64 DB 78 */ mr r4, r27 +/* 8020017C 001FD0DC 7F E5 FB 78 */ mr r5, r31 +/* 80200180 001FD0E0 38 61 00 08 */ addi r3, r1, 8 +/* 80200184 001FD0E4 4B E2 E6 B5 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80200188 001FD0E8 88 01 00 08 */ lbz r0, 8(r1) +/* 8020018C 001FD0EC 38 7B 02 24 */ addi r3, r27, 0x224 +/* 80200190 001FD0F0 38 81 00 0C */ addi r4, r1, 0xc +/* 80200194 001FD0F4 98 01 00 0C */ stb r0, 0xc(r1) +/* 80200198 001FD0F8 48 16 8D C1 */ bl GetOffset__17CPoseAsTransformsCFRC6CSegId +/* 8020019C 001FD0FC C0 43 00 08 */ lfs f2, 8(r3) +/* 802001A0 001FD100 7F 84 E3 78 */ mr r4, r28 +/* 802001A4 001FD104 C0 23 00 04 */ lfs f1, 4(r3) +/* 802001A8 001FD108 38 A1 00 10 */ addi r5, r1, 0x10 +/* 802001AC 001FD10C C0 03 00 00 */ lfs f0, 0(r3) +/* 802001B0 001FD110 EC 5D 00 B2 */ fmuls f2, f29, f2 +/* 802001B4 001FD114 EC 3E 00 72 */ fmuls f1, f30, f1 +/* 802001B8 001FD118 38 61 00 1C */ addi r3, r1, 0x1c +/* 802001BC 001FD11C EC 1F 00 32 */ fmuls f0, f31, f0 +/* 802001C0 001FD120 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 802001C4 001FD124 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 802001C8 001FD128 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 802001CC 001FD12C 48 11 29 1D */ bl __ml__12CTransform4fCFRC9CVector3f +/* 802001D0 001FD130 C0 1A 00 00 */ lfs f0, 0(r26) +/* 802001D4 001FD134 7F A3 EB 78 */ mr r3, r29 +/* 802001D8 001FD138 C0 61 00 1C */ lfs f3, 0x1c(r1) +/* 802001DC 001FD13C 38 81 00 0C */ addi r4, r1, 0xc +/* 802001E0 001FD140 C0 41 00 20 */ lfs f2, 0x20(r1) +/* 802001E4 001FD144 EC 20 07 72 */ fmuls f1, f0, f29 +/* 802001E8 001FD148 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 802001EC 001FD14C 38 A1 00 4C */ addi r5, r1, 0x4c +/* 802001F0 001FD150 D0 61 00 40 */ stfs f3, 0x40(r1) +/* 802001F4 001FD154 38 C1 00 40 */ addi r6, r1, 0x40 +/* 802001F8 001FD158 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 802001FC 001FD15C D0 01 00 48 */ stfs f0, 0x48(r1) +/* 80200200 001FD160 48 00 CC 1D */ bl AddParticle__8CRagDollFRC6CSegIdRC9CVector3fRC9CVector3ff +/* 80200204 001FD164 3B 39 00 01 */ addi r25, r25, 1 +/* 80200208 001FD168 3B 5A 00 04 */ addi r26, r26, 4 +/* 8020020C 001FD16C 2C 19 00 0F */ cmpwi r25, 0xf +/* 80200210 001FD170 3B FF 00 10 */ addi r31, r31, 0x10 +/* 80200214 001FD174 41 80 FF 64 */ blt lbl_80200178 +/* 80200218 001FD178 7F A3 EB 78 */ mr r3, r29 +/* 8020021C 001FD17C 7F C4 F3 78 */ mr r4, r30 +/* 80200220 001FD180 48 00 E6 05 */ bl SatisfyWorldConstraintsOnConstruction__8CRagDollFR13CStateManager +/* 80200224 001FD184 7F A3 EB 78 */ mr r3, r29 +/* 80200228 001FD188 38 80 00 00 */ li r4, 0 +/* 8020022C 001FD18C 38 A0 00 01 */ li r5, 1 +/* 80200230 001FD190 48 00 CA E5 */ bl AddLengthConstraint__8CRagDollFii +/* 80200234 001FD194 7F A3 EB 78 */ mr r3, r29 +/* 80200238 001FD198 38 80 00 00 */ li r4, 0 +/* 8020023C 001FD19C 38 A0 00 02 */ li r5, 2 +/* 80200240 001FD1A0 48 00 CA D5 */ bl AddLengthConstraint__8CRagDollFii +/* 80200244 001FD1A4 7F A3 EB 78 */ mr r3, r29 +/* 80200248 001FD1A8 38 80 00 00 */ li r4, 0 +/* 8020024C 001FD1AC 38 A0 00 08 */ li r5, 8 +/* 80200250 001FD1B0 48 00 CA C5 */ bl AddLengthConstraint__8CRagDollFii +/* 80200254 001FD1B4 7F A3 EB 78 */ mr r3, r29 +/* 80200258 001FD1B8 38 80 00 00 */ li r4, 0 +/* 8020025C 001FD1BC 38 A0 00 0B */ li r5, 0xb +/* 80200260 001FD1C0 48 00 CA B5 */ bl AddLengthConstraint__8CRagDollFii +/* 80200264 001FD1C4 7F A3 EB 78 */ mr r3, r29 +/* 80200268 001FD1C8 38 80 00 00 */ li r4, 0 +/* 8020026C 001FD1CC 38 A0 00 05 */ li r5, 5 +/* 80200270 001FD1D0 48 00 CA A5 */ bl AddLengthConstraint__8CRagDollFii +/* 80200274 001FD1D4 7F A3 EB 78 */ mr r3, r29 +/* 80200278 001FD1D8 38 80 00 02 */ li r4, 2 +/* 8020027C 001FD1DC 38 A0 00 03 */ li r5, 3 +/* 80200280 001FD1E0 48 00 CA 95 */ bl AddLengthConstraint__8CRagDollFii +/* 80200284 001FD1E4 7F A3 EB 78 */ mr r3, r29 +/* 80200288 001FD1E8 38 80 00 03 */ li r4, 3 +/* 8020028C 001FD1EC 38 A0 00 04 */ li r5, 4 +/* 80200290 001FD1F0 48 00 CA 85 */ bl AddLengthConstraint__8CRagDollFii +/* 80200294 001FD1F4 7F A3 EB 78 */ mr r3, r29 +/* 80200298 001FD1F8 38 80 00 05 */ li r4, 5 +/* 8020029C 001FD1FC 38 A0 00 06 */ li r5, 6 +/* 802002A0 001FD200 48 00 CA 75 */ bl AddLengthConstraint__8CRagDollFii +/* 802002A4 001FD204 7F A3 EB 78 */ mr r3, r29 +/* 802002A8 001FD208 38 80 00 06 */ li r4, 6 +/* 802002AC 001FD20C 38 A0 00 07 */ li r5, 7 +/* 802002B0 001FD210 48 00 CA 65 */ bl AddLengthConstraint__8CRagDollFii +/* 802002B4 001FD214 7F A3 EB 78 */ mr r3, r29 +/* 802002B8 001FD218 38 80 00 02 */ li r4, 2 +/* 802002BC 001FD21C 38 A0 00 05 */ li r5, 5 +/* 802002C0 001FD220 48 00 CA 55 */ bl AddLengthConstraint__8CRagDollFii +/* 802002C4 001FD224 7F A3 EB 78 */ mr r3, r29 +/* 802002C8 001FD228 38 80 00 02 */ li r4, 2 +/* 802002CC 001FD22C 38 A0 00 08 */ li r5, 8 +/* 802002D0 001FD230 48 00 CA 45 */ bl AddLengthConstraint__8CRagDollFii +/* 802002D4 001FD234 7F A3 EB 78 */ mr r3, r29 +/* 802002D8 001FD238 38 80 00 02 */ li r4, 2 +/* 802002DC 001FD23C 38 A0 00 0B */ li r5, 0xb +/* 802002E0 001FD240 48 00 CA 35 */ bl AddLengthConstraint__8CRagDollFii +/* 802002E4 001FD244 7F A3 EB 78 */ mr r3, r29 +/* 802002E8 001FD248 38 80 00 05 */ li r4, 5 +/* 802002EC 001FD24C 38 A0 00 08 */ li r5, 8 +/* 802002F0 001FD250 48 00 CA 25 */ bl AddLengthConstraint__8CRagDollFii +/* 802002F4 001FD254 7F A3 EB 78 */ mr r3, r29 +/* 802002F8 001FD258 38 80 00 05 */ li r4, 5 +/* 802002FC 001FD25C 38 A0 00 0B */ li r5, 0xb +/* 80200300 001FD260 48 00 CA 15 */ bl AddLengthConstraint__8CRagDollFii +/* 80200304 001FD264 7F A3 EB 78 */ mr r3, r29 +/* 80200308 001FD268 38 80 00 08 */ li r4, 8 +/* 8020030C 001FD26C 38 A0 00 0B */ li r5, 0xb +/* 80200310 001FD270 48 00 CA 05 */ bl AddLengthConstraint__8CRagDollFii +/* 80200314 001FD274 7F A3 EB 78 */ mr r3, r29 +/* 80200318 001FD278 38 80 00 08 */ li r4, 8 +/* 8020031C 001FD27C 38 A0 00 09 */ li r5, 9 +/* 80200320 001FD280 48 00 C9 F5 */ bl AddLengthConstraint__8CRagDollFii +/* 80200324 001FD284 7F A3 EB 78 */ mr r3, r29 +/* 80200328 001FD288 38 80 00 09 */ li r4, 9 +/* 8020032C 001FD28C 38 A0 00 0A */ li r5, 0xa +/* 80200330 001FD290 48 00 C9 E5 */ bl AddLengthConstraint__8CRagDollFii +/* 80200334 001FD294 7F A3 EB 78 */ mr r3, r29 +/* 80200338 001FD298 38 80 00 0B */ li r4, 0xb +/* 8020033C 001FD29C 38 A0 00 0C */ li r5, 0xc +/* 80200340 001FD2A0 48 00 C9 D5 */ bl AddLengthConstraint__8CRagDollFii +/* 80200344 001FD2A4 7F A3 EB 78 */ mr r3, r29 +/* 80200348 001FD2A8 38 80 00 0C */ li r4, 0xc +/* 8020034C 001FD2AC 38 A0 00 0D */ li r5, 0xd +/* 80200350 001FD2B0 48 00 C9 C5 */ bl AddLengthConstraint__8CRagDollFii +/* 80200354 001FD2B4 7F A3 EB 78 */ mr r3, r29 +/* 80200358 001FD2B8 38 80 00 0E */ li r4, 0xe +/* 8020035C 001FD2BC 38 A0 00 00 */ li r5, 0 +/* 80200360 001FD2C0 48 00 C9 B5 */ bl AddLengthConstraint__8CRagDollFii +/* 80200364 001FD2C4 7F A3 EB 78 */ mr r3, r29 +/* 80200368 001FD2C8 38 80 00 0E */ li r4, 0xe +/* 8020036C 001FD2CC 38 A0 00 02 */ li r5, 2 +/* 80200370 001FD2D0 48 00 C9 A5 */ bl AddLengthConstraint__8CRagDollFii +/* 80200374 001FD2D4 7F A3 EB 78 */ mr r3, r29 +/* 80200378 001FD2D8 38 80 00 0E */ li r4, 0xe +/* 8020037C 001FD2DC 38 A0 00 05 */ li r5, 5 +/* 80200380 001FD2E0 48 00 C9 95 */ bl AddLengthConstraint__8CRagDollFii +/* 80200384 001FD2E4 7F A3 EB 78 */ mr r3, r29 +/* 80200388 001FD2E8 38 80 00 0E */ li r4, 0xe +/* 8020038C 001FD2EC 38 A0 00 08 */ li r5, 8 +/* 80200390 001FD2F0 48 00 C9 85 */ bl AddLengthConstraint__8CRagDollFii +/* 80200394 001FD2F4 7F A3 EB 78 */ mr r3, r29 +/* 80200398 001FD2F8 38 80 00 0E */ li r4, 0xe +/* 8020039C 001FD2FC 38 A0 00 0B */ li r5, 0xb +/* 802003A0 001FD300 48 00 C9 75 */ bl AddLengthConstraint__8CRagDollFii +/* 802003A4 001FD304 80 DD 00 20 */ lwz r6, 0x20(r29) +/* 802003A8 001FD308 7F A3 EB 78 */ mr r3, r29 +/* 802003AC 001FD30C 38 80 00 01 */ li r4, 1 +/* 802003B0 001FD310 38 A0 00 08 */ li r5, 8 +/* 802003B4 001FD314 C0 26 00 28 */ lfs f1, 0x28(r6) +/* 802003B8 001FD318 48 00 C8 A9 */ bl AddMinLengthConstraint__8CRagDollFiif +/* 802003BC 001FD31C 80 DD 00 20 */ lwz r6, 0x20(r29) +/* 802003C0 001FD320 7F A3 EB 78 */ mr r3, r29 +/* 802003C4 001FD324 38 80 00 01 */ li r4, 1 +/* 802003C8 001FD328 38 A0 00 0B */ li r5, 0xb +/* 802003CC 001FD32C C0 26 00 38 */ lfs f1, 0x38(r6) +/* 802003D0 001FD330 48 00 C8 91 */ bl AddMinLengthConstraint__8CRagDollFiif +/* 802003D4 001FD334 80 DD 00 20 */ lwz r6, 0x20(r29) +/* 802003D8 001FD338 7F A3 EB 78 */ mr r3, r29 +/* 802003DC 001FD33C 38 80 00 04 */ li r4, 4 +/* 802003E0 001FD340 38 A0 00 02 */ li r5, 2 +/* 802003E4 001FD344 C0 26 00 58 */ lfs f1, 0x58(r6) +/* 802003E8 001FD348 48 00 C8 79 */ bl AddMinLengthConstraint__8CRagDollFiif +/* 802003EC 001FD34C 80 DD 00 20 */ lwz r6, 0x20(r29) +/* 802003F0 001FD350 7F A3 EB 78 */ mr r3, r29 +/* 802003F4 001FD354 38 80 00 07 */ li r4, 7 +/* 802003F8 001FD358 38 A0 00 05 */ li r5, 5 +/* 802003FC 001FD35C C0 26 00 78 */ lfs f1, 0x78(r6) +/* 80200400 001FD360 48 00 C8 61 */ bl AddMinLengthConstraint__8CRagDollFiif +/* 80200404 001FD364 80 DD 00 20 */ lwz r6, 0x20(r29) +/* 80200408 001FD368 7F A3 EB 78 */ mr r3, r29 +/* 8020040C 001FD36C C0 42 AF 74 */ lfs f2, lbl_805ACC94@sda21(r2) +/* 80200410 001FD370 38 80 00 03 */ li r4, 3 +/* 80200414 001FD374 C0 26 00 58 */ lfs f1, 0x58(r6) +/* 80200418 001FD378 38 A0 00 05 */ li r5, 5 +/* 8020041C 001FD37C C0 06 00 98 */ lfs f0, 0x98(r6) +/* 80200420 001FD380 EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 80200424 001FD384 48 00 C8 3D */ bl AddMinLengthConstraint__8CRagDollFiif +/* 80200428 001FD388 80 DD 00 20 */ lwz r6, 0x20(r29) +/* 8020042C 001FD38C 7F A3 EB 78 */ mr r3, r29 +/* 80200430 001FD390 C0 42 AF 74 */ lfs f2, lbl_805ACC94@sda21(r2) +/* 80200434 001FD394 38 80 00 06 */ li r4, 6 +/* 80200438 001FD398 C0 26 00 78 */ lfs f1, 0x78(r6) +/* 8020043C 001FD39C 38 A0 00 02 */ li r5, 2 +/* 80200440 001FD3A0 C0 06 00 98 */ lfs f0, 0x98(r6) +/* 80200444 001FD3A4 EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 80200448 001FD3A8 48 00 C8 19 */ bl AddMinLengthConstraint__8CRagDollFiif +/* 8020044C 001FD3AC 80 DD 00 20 */ lwz r6, 0x20(r29) +/* 80200450 001FD3B0 7F A3 EB 78 */ mr r3, r29 +/* 80200454 001FD3B4 C0 42 AF 74 */ lfs f2, lbl_805ACC94@sda21(r2) +/* 80200458 001FD3B8 38 80 00 04 */ li r4, 4 +/* 8020045C 001FD3BC C0 26 00 58 */ lfs f1, 0x58(r6) +/* 80200460 001FD3C0 38 A0 00 05 */ li r5, 5 +/* 80200464 001FD3C4 C0 06 00 98 */ lfs f0, 0x98(r6) +/* 80200468 001FD3C8 EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 8020046C 001FD3CC 48 00 C7 F5 */ bl AddMinLengthConstraint__8CRagDollFiif +/* 80200470 001FD3D0 80 DD 00 20 */ lwz r6, 0x20(r29) +/* 80200474 001FD3D4 7F A3 EB 78 */ mr r3, r29 +/* 80200478 001FD3D8 C0 42 AF 74 */ lfs f2, lbl_805ACC94@sda21(r2) +/* 8020047C 001FD3DC 38 80 00 07 */ li r4, 7 +/* 80200480 001FD3E0 C0 26 00 78 */ lfs f1, 0x78(r6) +/* 80200484 001FD3E4 38 A0 00 02 */ li r5, 2 +/* 80200488 001FD3E8 C0 06 00 98 */ lfs f0, 0x98(r6) +/* 8020048C 001FD3EC EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 80200490 001FD3F0 48 00 C7 D1 */ bl AddMinLengthConstraint__8CRagDollFiif +/* 80200494 001FD3F4 80 DD 00 20 */ lwz r6, 0x20(r29) +/* 80200498 001FD3F8 7F A3 EB 78 */ mr r3, r29 +/* 8020049C 001FD3FC 38 80 00 0A */ li r4, 0xa +/* 802004A0 001FD400 38 A0 00 08 */ li r5, 8 +/* 802004A4 001FD404 C0 26 00 F8 */ lfs f1, 0xf8(r6) +/* 802004A8 001FD408 48 00 C7 B9 */ bl AddMinLengthConstraint__8CRagDollFiif +/* 802004AC 001FD40C 80 DD 00 20 */ lwz r6, 0x20(r29) +/* 802004B0 001FD410 7F A3 EB 78 */ mr r3, r29 +/* 802004B4 001FD414 38 80 00 0D */ li r4, 0xd +/* 802004B8 001FD418 38 A0 00 0B */ li r5, 0xb +/* 802004BC 001FD41C C0 26 01 18 */ lfs f1, 0x118(r6) +/* 802004C0 001FD420 48 00 C7 A1 */ bl AddMinLengthConstraint__8CRagDollFiif +/* 802004C4 001FD424 80 DD 00 20 */ lwz r6, 0x20(r29) +/* 802004C8 001FD428 7F A3 EB 78 */ mr r3, r29 +/* 802004CC 001FD42C C0 42 AF A8 */ lfs f2, lbl_805ACCC8@sda21(r2) +/* 802004D0 001FD430 38 80 00 09 */ li r4, 9 +/* 802004D4 001FD434 C0 26 00 F8 */ lfs f1, 0xf8(r6) +/* 802004D8 001FD438 38 A0 00 02 */ li r5, 2 +/* 802004DC 001FD43C C0 06 00 A8 */ lfs f0, 0xa8(r6) +/* 802004E0 001FD440 EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 802004E4 001FD444 48 00 C7 7D */ bl AddMinLengthConstraint__8CRagDollFiif +/* 802004E8 001FD448 80 DD 00 20 */ lwz r6, 0x20(r29) +/* 802004EC 001FD44C 7F A3 EB 78 */ mr r3, r29 +/* 802004F0 001FD450 C0 42 AF A8 */ lfs f2, lbl_805ACCC8@sda21(r2) +/* 802004F4 001FD454 38 80 00 0C */ li r4, 0xc +/* 802004F8 001FD458 C0 26 01 18 */ lfs f1, 0x118(r6) +/* 802004FC 001FD45C 38 A0 00 05 */ li r5, 5 +/* 80200500 001FD460 C0 06 00 D8 */ lfs f0, 0xd8(r6) +/* 80200504 001FD464 EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 80200508 001FD468 48 00 C7 59 */ bl AddMinLengthConstraint__8CRagDollFiif +/* 8020050C 001FD46C 80 DD 00 20 */ lwz r6, 0x20(r29) +/* 80200510 001FD470 7F A3 EB 78 */ mr r3, r29 +/* 80200514 001FD474 38 80 00 09 */ li r4, 9 +/* 80200518 001FD478 38 A0 00 0B */ li r5, 0xb +/* 8020051C 001FD47C C0 26 00 F8 */ lfs f1, 0xf8(r6) +/* 80200520 001FD480 48 00 C7 41 */ bl AddMinLengthConstraint__8CRagDollFiif +/* 80200524 001FD484 80 DD 00 20 */ lwz r6, 0x20(r29) +/* 80200528 001FD488 7F A3 EB 78 */ mr r3, r29 +/* 8020052C 001FD48C 38 80 00 0C */ li r4, 0xc +/* 80200530 001FD490 38 A0 00 08 */ li r5, 8 +/* 80200534 001FD494 C0 26 01 18 */ lfs f1, 0x118(r6) +/* 80200538 001FD498 48 00 C7 29 */ bl AddMinLengthConstraint__8CRagDollFiif +/* 8020053C 001FD49C 80 DD 00 20 */ lwz r6, 0x20(r29) +/* 80200540 001FD4A0 7F A3 EB 78 */ mr r3, r29 +/* 80200544 001FD4A4 38 80 00 0A */ li r4, 0xa +/* 80200548 001FD4A8 38 A0 00 00 */ li r5, 0 +/* 8020054C 001FD4AC C0 26 00 28 */ lfs f1, 0x28(r6) +/* 80200550 001FD4B0 C0 06 00 F8 */ lfs f0, 0xf8(r6) +/* 80200554 001FD4B4 EC 21 00 2A */ fadds f1, f1, f0 +/* 80200558 001FD4B8 48 00 C7 09 */ bl AddMinLengthConstraint__8CRagDollFiif +/* 8020055C 001FD4BC 80 DD 00 20 */ lwz r6, 0x20(r29) +/* 80200560 001FD4C0 7F A3 EB 78 */ mr r3, r29 +/* 80200564 001FD4C4 38 80 00 0D */ li r4, 0xd +/* 80200568 001FD4C8 38 A0 00 00 */ li r5, 0 +/* 8020056C 001FD4CC C0 26 00 38 */ lfs f1, 0x38(r6) +/* 80200570 001FD4D0 C0 06 01 18 */ lfs f0, 0x118(r6) +/* 80200574 001FD4D4 EC 21 00 2A */ fadds f1, f1, f0 +/* 80200578 001FD4D8 48 00 C6 E9 */ bl AddMinLengthConstraint__8CRagDollFiif +/* 8020057C 001FD4DC 80 DD 00 20 */ lwz r6, 0x20(r29) +/* 80200580 001FD4E0 7F A3 EB 78 */ mr r3, r29 +/* 80200584 001FD4E4 38 80 00 0A */ li r4, 0xa +/* 80200588 001FD4E8 38 A0 00 0D */ li r5, 0xd +/* 8020058C 001FD4EC C0 26 00 E8 */ lfs f1, 0xe8(r6) +/* 80200590 001FD4F0 48 00 C6 D1 */ bl AddMinLengthConstraint__8CRagDollFiif +/* 80200594 001FD4F4 80 BD 00 20 */ lwz r5, 0x20(r29) +/* 80200598 001FD4F8 7F A3 EB 78 */ mr r3, r29 +/* 8020059C 001FD4FC C0 22 AF 74 */ lfs f1, lbl_805ACC94@sda21(r2) +/* 802005A0 001FD500 38 80 00 09 */ li r4, 9 +/* 802005A4 001FD504 C0 05 00 E8 */ lfs f0, 0xe8(r5) +/* 802005A8 001FD508 38 A0 00 0C */ li r5, 0xc +/* 802005AC 001FD50C EC 21 00 32 */ fmuls f1, f1, f0 +/* 802005B0 001FD510 48 00 C6 B1 */ bl AddMinLengthConstraint__8CRagDollFiif +/* 802005B4 001FD514 80 BD 00 20 */ lwz r5, 0x20(r29) +/* 802005B8 001FD518 7F A3 EB 78 */ mr r3, r29 +/* 802005BC 001FD51C C0 22 AF 74 */ lfs f1, lbl_805ACC94@sda21(r2) +/* 802005C0 001FD520 38 80 00 0A */ li r4, 0xa +/* 802005C4 001FD524 C0 05 00 E8 */ lfs f0, 0xe8(r5) +/* 802005C8 001FD528 38 A0 00 0C */ li r5, 0xc +/* 802005CC 001FD52C EC 21 00 32 */ fmuls f1, f1, f0 +/* 802005D0 001FD530 48 00 C6 91 */ bl AddMinLengthConstraint__8CRagDollFiif +/* 802005D4 001FD534 80 BD 00 20 */ lwz r5, 0x20(r29) +/* 802005D8 001FD538 7F A3 EB 78 */ mr r3, r29 +/* 802005DC 001FD53C C0 22 AF 74 */ lfs f1, lbl_805ACC94@sda21(r2) +/* 802005E0 001FD540 38 80 00 0D */ li r4, 0xd +/* 802005E4 001FD544 C0 05 00 E8 */ lfs f0, 0xe8(r5) +/* 802005E8 001FD548 38 A0 00 09 */ li r5, 9 +/* 802005EC 001FD54C EC 21 00 32 */ fmuls f1, f1, f0 +/* 802005F0 001FD550 48 00 C6 71 */ bl AddMinLengthConstraint__8CRagDollFiif +/* 802005F4 001FD554 80 BD 00 20 */ lwz r5, 0x20(r29) +/* 802005F8 001FD558 7F A3 EB 78 */ mr r3, r29 +/* 802005FC 001FD55C C0 22 AF CC */ lfs f1, lbl_805ACCEC@sda21(r2) +/* 80200600 001FD560 38 80 00 0A */ li r4, 0xa +/* 80200604 001FD564 C0 05 00 E8 */ lfs f0, 0xe8(r5) +/* 80200608 001FD568 38 A0 00 0D */ li r5, 0xd +/* 8020060C 001FD56C EC 21 00 32 */ fmuls f1, f1, f0 +/* 80200610 001FD570 48 00 C5 9D */ bl AddMaxLengthConstraint__8CRagDollFiif +/* 80200614 001FD574 7F A3 EB 78 */ mr r3, r29 +/* 80200618 001FD578 38 80 00 08 */ li r4, 8 +/* 8020061C 001FD57C 38 A0 00 02 */ li r5, 2 +/* 80200620 001FD580 38 C0 00 05 */ li r6, 5 +/* 80200624 001FD584 38 E0 00 08 */ li r7, 8 +/* 80200628 001FD588 39 00 00 09 */ li r8, 9 +/* 8020062C 001FD58C 39 20 00 0A */ li r9, 0xa +/* 80200630 001FD590 48 00 C4 C1 */ bl AddJointConstraint__8CRagDollFiiiiii +/* 80200634 001FD594 7F A3 EB 78 */ mr r3, r29 +/* 80200638 001FD598 38 80 00 0B */ li r4, 0xb +/* 8020063C 001FD59C 38 A0 00 02 */ li r5, 2 +/* 80200640 001FD5A0 38 C0 00 05 */ li r6, 5 +/* 80200644 001FD5A4 38 E0 00 0B */ li r7, 0xb +/* 80200648 001FD5A8 39 00 00 0C */ li r8, 0xc +/* 8020064C 001FD5AC 39 20 00 0D */ li r9, 0xd +/* 80200650 001FD5B0 48 00 C4 A1 */ bl AddJointConstraint__8CRagDollFiiiiii +/* 80200654 001FD5B4 7F A3 EB 78 */ mr r3, r29 +/* 80200658 001FD5B8 38 80 00 02 */ li r4, 2 +/* 8020065C 001FD5BC 38 A0 00 0B */ li r5, 0xb +/* 80200660 001FD5C0 38 C0 00 05 */ li r6, 5 +/* 80200664 001FD5C4 38 E0 00 02 */ li r7, 2 +/* 80200668 001FD5C8 39 00 00 03 */ li r8, 3 +/* 8020066C 001FD5CC 39 20 00 04 */ li r9, 4 +/* 80200670 001FD5D0 48 00 C4 81 */ bl AddJointConstraint__8CRagDollFiiiiii +/* 80200674 001FD5D4 7F A3 EB 78 */ mr r3, r29 +/* 80200678 001FD5D8 38 80 00 05 */ li r4, 5 +/* 8020067C 001FD5DC 38 A0 00 02 */ li r5, 2 +/* 80200680 001FD5E0 38 C0 00 08 */ li r6, 8 +/* 80200684 001FD5E4 38 E0 00 05 */ li r7, 5 +/* 80200688 001FD5E8 39 00 00 06 */ li r8, 6 +/* 8020068C 001FD5EC 39 20 00 07 */ li r9, 7 +/* 80200690 001FD5F0 48 00 C4 61 */ bl AddJointConstraint__8CRagDollFiiiiii +/* 80200694 001FD5F4 7F A3 EB 78 */ mr r3, r29 +/* 80200698 001FD5F8 E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0 +/* 8020069C 001FD5FC CB E1 00 B0 */ lfd f31, 0xb0(r1) +/* 802006A0 001FD600 E3 C1 00 A8 */ psq_l f30, 168(r1), 0, qr0 +/* 802006A4 001FD604 CB C1 00 A0 */ lfd f30, 0xa0(r1) +/* 802006A8 001FD608 E3 A1 00 98 */ psq_l f29, 152(r1), 0, qr0 +/* 802006AC 001FD60C CB A1 00 90 */ lfd f29, 0x90(r1) +/* 802006B0 001FD610 BB 21 00 74 */ lmw r25, 0x74(r1) +/* 802006B4 001FD614 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 802006B8 001FD618 7C 08 03 A6 */ mtlr r0 +/* 802006BC 001FD61C 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 802006C0 001FD620 4E 80 00 20 */ blr + +.global __sinit_CFlyingPirate_cpp +__sinit_CFlyingPirate_cpp: +/* 802006C4 001FD624 94 21 FE A0 */ stwu r1, -0x160(r1) +/* 802006C8 001FD628 7C 08 02 A6 */ mflr r0 +/* 802006CC 001FD62C 3C 60 80 3D */ lis r3, lbl_803D247C@ha +/* 802006D0 001FD630 3C A0 80 47 */ lis r5, lbl_8046C950@ha +/* 802006D4 001FD634 90 01 01 64 */ stw r0, 0x164(r1) +/* 802006D8 001FD638 38 83 24 7C */ addi r4, r3, lbl_803D247C@l +/* 802006DC 001FD63C 38 61 01 48 */ addi r3, r1, 0x148 +/* 802006E0 001FD640 93 E1 01 5C */ stw r31, 0x15c(r1) +/* 802006E4 001FD644 3B E5 C9 50 */ addi r31, r5, lbl_8046C950@l +/* 802006E8 001FD648 38 84 00 57 */ addi r4, r4, 0x57 +/* 802006EC 001FD64C 4B E0 45 CD */ bl string_l__4rstlFPCc +/* 802006F0 001FD650 3C 60 80 57 */ lis r3, lbl_80572078@ha +/* 802006F4 001FD654 38 81 01 48 */ addi r4, r1, 0x148 +/* 802006F8 001FD658 38 63 20 78 */ addi r3, r3, lbl_80572078@l +/* 802006FC 001FD65C 48 13 DA 65 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80200700 001FD660 3C 80 80 00 */ lis r4, sub_80004a9c@ha +/* 80200704 001FD664 38 BF 00 00 */ addi r5, r31, 0 +/* 80200708 001FD668 38 84 4A 9C */ addi r4, r4, sub_80004a9c@l +/* 8020070C 001FD66C 48 18 8F 81 */ bl __register_global_object +/* 80200710 001FD670 38 61 01 48 */ addi r3, r1, 0x148 +/* 80200714 001FD674 48 13 D3 CD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80200718 001FD678 3C 80 80 3D */ lis r4, lbl_803D247C@ha +/* 8020071C 001FD67C 38 61 01 38 */ addi r3, r1, 0x138 +/* 80200720 001FD680 38 84 24 7C */ addi r4, r4, lbl_803D247C@l +/* 80200724 001FD684 38 84 00 5F */ addi r4, r4, 0x5f +/* 80200728 001FD688 4B E0 45 91 */ bl string_l__4rstlFPCc +/* 8020072C 001FD68C 3C 60 80 57 */ lis r3, lbl_805720D8@ha +/* 80200730 001FD690 38 81 01 38 */ addi r4, r1, 0x138 +/* 80200734 001FD694 38 63 20 D8 */ addi r3, r3, lbl_805720D8@l +/* 80200738 001FD698 48 13 DA 29 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8020073C 001FD69C 3C 80 80 00 */ lis r4, sub_80004a9c@ha +/* 80200740 001FD6A0 38 BF 00 0C */ addi r5, r31, 0xc +/* 80200744 001FD6A4 38 84 4A 9C */ addi r4, r4, sub_80004a9c@l +/* 80200748 001FD6A8 48 18 8F 45 */ bl __register_global_object +/* 8020074C 001FD6AC 38 61 01 38 */ addi r3, r1, 0x138 +/* 80200750 001FD6B0 48 13 D3 91 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80200754 001FD6B4 3C 80 80 3D */ lis r4, lbl_803D247C@ha +/* 80200758 001FD6B8 38 61 01 28 */ addi r3, r1, 0x128 +/* 8020075C 001FD6BC 38 84 24 7C */ addi r4, r4, lbl_803D247C@l +/* 80200760 001FD6C0 38 84 00 69 */ addi r4, r4, 0x69 +/* 80200764 001FD6C4 4B E0 45 55 */ bl string_l__4rstlFPCc +/* 80200768 001FD6C8 3C 60 80 57 */ lis r3, lbl_805720E8@ha +/* 8020076C 001FD6CC 38 81 01 28 */ addi r4, r1, 0x128 +/* 80200770 001FD6D0 38 63 20 E8 */ addi r3, r3, lbl_805720E8@l +/* 80200774 001FD6D4 48 13 D9 ED */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80200778 001FD6D8 3C 80 80 00 */ lis r4, sub_80004a9c@ha +/* 8020077C 001FD6DC 38 BF 00 18 */ addi r5, r31, 0x18 +/* 80200780 001FD6E0 38 84 4A 9C */ addi r4, r4, sub_80004a9c@l +/* 80200784 001FD6E4 48 18 8F 09 */ bl __register_global_object +/* 80200788 001FD6E8 38 61 01 28 */ addi r3, r1, 0x128 +/* 8020078C 001FD6EC 48 13 D3 55 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80200790 001FD6F0 3C 80 80 3D */ lis r4, lbl_803D247C@ha +/* 80200794 001FD6F4 38 61 01 18 */ addi r3, r1, 0x118 +/* 80200798 001FD6F8 38 84 24 7C */ addi r4, r4, lbl_803D247C@l +/* 8020079C 001FD6FC 38 84 00 76 */ addi r4, r4, 0x76 +/* 802007A0 001FD700 4B E0 45 19 */ bl string_l__4rstlFPCc +/* 802007A4 001FD704 3C 60 80 57 */ lis r3, lbl_805720F8@ha +/* 802007A8 001FD708 38 81 01 18 */ addi r4, r1, 0x118 +/* 802007AC 001FD70C 38 63 20 F8 */ addi r3, r3, lbl_805720F8@l +/* 802007B0 001FD710 48 13 D9 B1 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 802007B4 001FD714 3C 80 80 00 */ lis r4, sub_80004a9c@ha +/* 802007B8 001FD718 38 BF 00 24 */ addi r5, r31, 0x24 +/* 802007BC 001FD71C 38 84 4A 9C */ addi r4, r4, sub_80004a9c@l +/* 802007C0 001FD720 48 18 8E CD */ bl __register_global_object +/* 802007C4 001FD724 38 61 01 18 */ addi r3, r1, 0x118 +/* 802007C8 001FD728 48 13 D3 19 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 802007CC 001FD72C 3C 80 80 3D */ lis r4, lbl_803D247C@ha +/* 802007D0 001FD730 38 61 01 08 */ addi r3, r1, 0x108 +/* 802007D4 001FD734 38 84 24 7C */ addi r4, r4, lbl_803D247C@l +/* 802007D8 001FD738 38 84 00 7D */ addi r4, r4, 0x7d +/* 802007DC 001FD73C 4B E0 44 DD */ bl string_l__4rstlFPCc +/* 802007E0 001FD740 3C 60 80 57 */ lis r3, lbl_80572108@ha +/* 802007E4 001FD744 38 81 01 08 */ addi r4, r1, 0x108 +/* 802007E8 001FD748 38 63 21 08 */ addi r3, r3, lbl_80572108@l +/* 802007EC 001FD74C 48 13 D9 75 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 802007F0 001FD750 3C 80 80 00 */ lis r4, sub_80004a9c@ha +/* 802007F4 001FD754 38 BF 00 30 */ addi r5, r31, 0x30 +/* 802007F8 001FD758 38 84 4A 9C */ addi r4, r4, sub_80004a9c@l +/* 802007FC 001FD75C 48 18 8E 91 */ bl __register_global_object +/* 80200800 001FD760 38 61 01 08 */ addi r3, r1, 0x108 +/* 80200804 001FD764 48 13 D2 DD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80200808 001FD768 3C 80 80 3D */ lis r4, lbl_803D247C@ha +/* 8020080C 001FD76C 38 61 00 F8 */ addi r3, r1, 0xf8 +/* 80200810 001FD770 38 84 24 7C */ addi r4, r4, lbl_803D247C@l +/* 80200814 001FD774 38 84 00 8A */ addi r4, r4, 0x8a +/* 80200818 001FD778 4B E0 44 A1 */ bl string_l__4rstlFPCc +/* 8020081C 001FD77C 3C 60 80 57 */ lis r3, lbl_80572118@ha +/* 80200820 001FD780 38 81 00 F8 */ addi r4, r1, 0xf8 +/* 80200824 001FD784 38 63 21 18 */ addi r3, r3, lbl_80572118@l +/* 80200828 001FD788 48 13 D9 39 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8020082C 001FD78C 3C 80 80 00 */ lis r4, sub_80004a9c@ha +/* 80200830 001FD790 38 BF 00 3C */ addi r5, r31, 0x3c +/* 80200834 001FD794 38 84 4A 9C */ addi r4, r4, sub_80004a9c@l +/* 80200838 001FD798 48 18 8E 55 */ bl __register_global_object +/* 8020083C 001FD79C 38 61 00 F8 */ addi r3, r1, 0xf8 +/* 80200840 001FD7A0 48 13 D2 A1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80200844 001FD7A4 3C 80 80 3D */ lis r4, lbl_803D247C@ha +/* 80200848 001FD7A8 38 61 00 E8 */ addi r3, r1, 0xe8 +/* 8020084C 001FD7AC 38 84 24 7C */ addi r4, r4, lbl_803D247C@l +/* 80200850 001FD7B0 38 84 00 8F */ addi r4, r4, 0x8f +/* 80200854 001FD7B4 4B E0 44 65 */ bl string_l__4rstlFPCc +/* 80200858 001FD7B8 38 7F 00 FC */ addi r3, r31, 0xfc +/* 8020085C 001FD7BC 38 81 00 E8 */ addi r4, r1, 0xe8 +/* 80200860 001FD7C0 48 13 D9 01 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80200864 001FD7C4 3C 80 80 00 */ lis r4, sub_80004a9c@ha +/* 80200868 001FD7C8 38 BF 00 48 */ addi r5, r31, 0x48 +/* 8020086C 001FD7CC 38 84 4A 9C */ addi r4, r4, sub_80004a9c@l +/* 80200870 001FD7D0 48 18 8E 1D */ bl __register_global_object +/* 80200874 001FD7D4 38 61 00 E8 */ addi r3, r1, 0xe8 +/* 80200878 001FD7D8 48 13 D2 69 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8020087C 001FD7DC 3C 80 80 3D */ lis r4, lbl_803D247C@ha +/* 80200880 001FD7E0 38 61 00 D8 */ addi r3, r1, 0xd8 +/* 80200884 001FD7E4 38 84 24 7C */ addi r4, r4, lbl_803D247C@l +/* 80200888 001FD7E8 38 84 00 19 */ addi r4, r4, 0x19 +/* 8020088C 001FD7EC 4B E0 44 2D */ bl string_l__4rstlFPCc +/* 80200890 001FD7F0 38 7F 00 FC */ addi r3, r31, 0xfc +/* 80200894 001FD7F4 38 81 00 D8 */ addi r4, r1, 0xd8 +/* 80200898 001FD7F8 38 63 00 10 */ addi r3, r3, 0x10 +/* 8020089C 001FD7FC 48 13 D8 C5 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 802008A0 001FD800 3C 80 80 00 */ lis r4, sub_80004a9c@ha +/* 802008A4 001FD804 38 BF 00 54 */ addi r5, r31, 0x54 +/* 802008A8 001FD808 38 84 4A 9C */ addi r4, r4, sub_80004a9c@l +/* 802008AC 001FD80C 48 18 8D E1 */ bl __register_global_object +/* 802008B0 001FD810 38 61 00 D8 */ addi r3, r1, 0xd8 +/* 802008B4 001FD814 48 13 D2 2D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 802008B8 001FD818 3C 80 80 3D */ lis r4, lbl_803D247C@ha +/* 802008BC 001FD81C 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 802008C0 001FD820 38 84 24 7C */ addi r4, r4, lbl_803D247C@l +/* 802008C4 001FD824 38 84 00 96 */ addi r4, r4, 0x96 +/* 802008C8 001FD828 4B E0 43 F1 */ bl string_l__4rstlFPCc +/* 802008CC 001FD82C 38 7F 00 FC */ addi r3, r31, 0xfc +/* 802008D0 001FD830 38 81 00 C8 */ addi r4, r1, 0xc8 +/* 802008D4 001FD834 38 63 00 20 */ addi r3, r3, 0x20 +/* 802008D8 001FD838 48 13 D8 89 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 802008DC 001FD83C 3C 80 80 00 */ lis r4, sub_80004a9c@ha +/* 802008E0 001FD840 38 BF 00 60 */ addi r5, r31, 0x60 +/* 802008E4 001FD844 38 84 4A 9C */ addi r4, r4, sub_80004a9c@l +/* 802008E8 001FD848 48 18 8D A5 */ bl __register_global_object +/* 802008EC 001FD84C 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 802008F0 001FD850 48 13 D1 F1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 802008F4 001FD854 3C 80 80 3D */ lis r4, lbl_803D247C@ha +/* 802008F8 001FD858 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 802008FC 001FD85C 38 84 24 7C */ addi r4, r4, lbl_803D247C@l +/* 80200900 001FD860 38 84 00 A1 */ addi r4, r4, 0xa1 +/* 80200904 001FD864 4B E0 43 B5 */ bl string_l__4rstlFPCc +/* 80200908 001FD868 38 7F 00 FC */ addi r3, r31, 0xfc +/* 8020090C 001FD86C 38 81 00 B8 */ addi r4, r1, 0xb8 +/* 80200910 001FD870 38 63 00 30 */ addi r3, r3, 0x30 +/* 80200914 001FD874 48 13 D8 4D */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80200918 001FD878 3C 80 80 00 */ lis r4, sub_80004a9c@ha +/* 8020091C 001FD87C 38 BF 00 6C */ addi r5, r31, 0x6c +/* 80200920 001FD880 38 84 4A 9C */ addi r4, r4, sub_80004a9c@l +/* 80200924 001FD884 48 18 8D 69 */ bl __register_global_object +/* 80200928 001FD888 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 8020092C 001FD88C 48 13 D1 B5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80200930 001FD890 3C 80 80 3D */ lis r4, lbl_803D247C@ha +/* 80200934 001FD894 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 80200938 001FD898 38 84 24 7C */ addi r4, r4, lbl_803D247C@l +/* 8020093C 001FD89C 38 84 00 A9 */ addi r4, r4, 0xa9 +/* 80200940 001FD8A0 4B E0 43 79 */ bl string_l__4rstlFPCc +/* 80200944 001FD8A4 38 7F 00 FC */ addi r3, r31, 0xfc +/* 80200948 001FD8A8 38 81 00 A8 */ addi r4, r1, 0xa8 +/* 8020094C 001FD8AC 38 63 00 40 */ addi r3, r3, 0x40 +/* 80200950 001FD8B0 48 13 D8 11 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80200954 001FD8B4 3C 80 80 00 */ lis r4, sub_80004a9c@ha +/* 80200958 001FD8B8 38 BF 00 78 */ addi r5, r31, 0x78 +/* 8020095C 001FD8BC 38 84 4A 9C */ addi r4, r4, sub_80004a9c@l +/* 80200960 001FD8C0 48 18 8D 2D */ bl __register_global_object +/* 80200964 001FD8C4 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 80200968 001FD8C8 48 13 D1 79 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8020096C 001FD8CC 3C 80 80 3D */ lis r4, lbl_803D247C@ha +/* 80200970 001FD8D0 38 61 00 98 */ addi r3, r1, 0x98 +/* 80200974 001FD8D4 38 84 24 7C */ addi r4, r4, lbl_803D247C@l +/* 80200978 001FD8D8 38 84 00 B1 */ addi r4, r4, 0xb1 +/* 8020097C 001FD8DC 4B E0 43 3D */ bl string_l__4rstlFPCc +/* 80200980 001FD8E0 38 7F 00 FC */ addi r3, r31, 0xfc +/* 80200984 001FD8E4 38 81 00 98 */ addi r4, r1, 0x98 +/* 80200988 001FD8E8 38 63 00 50 */ addi r3, r3, 0x50 +/* 8020098C 001FD8EC 48 13 D7 D5 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80200990 001FD8F0 3C 80 80 00 */ lis r4, sub_80004a9c@ha +/* 80200994 001FD8F4 38 BF 00 84 */ addi r5, r31, 0x84 +/* 80200998 001FD8F8 38 84 4A 9C */ addi r4, r4, sub_80004a9c@l +/* 8020099C 001FD8FC 48 18 8C F1 */ bl __register_global_object +/* 802009A0 001FD900 38 61 00 98 */ addi r3, r1, 0x98 +/* 802009A4 001FD904 48 13 D1 3D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 802009A8 001FD908 3C 80 80 3D */ lis r4, lbl_803D247C@ha +/* 802009AC 001FD90C 38 61 00 88 */ addi r3, r1, 0x88 +/* 802009B0 001FD910 38 84 24 7C */ addi r4, r4, lbl_803D247C@l +/* 802009B4 001FD914 38 84 00 BC */ addi r4, r4, 0xbc +/* 802009B8 001FD918 4B E0 43 01 */ bl string_l__4rstlFPCc +/* 802009BC 001FD91C 38 7F 00 FC */ addi r3, r31, 0xfc +/* 802009C0 001FD920 38 81 00 88 */ addi r4, r1, 0x88 +/* 802009C4 001FD924 38 63 00 60 */ addi r3, r3, 0x60 +/* 802009C8 001FD928 48 13 D7 99 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 802009CC 001FD92C 3C 80 80 00 */ lis r4, sub_80004a9c@ha +/* 802009D0 001FD930 38 BF 00 90 */ addi r5, r31, 0x90 +/* 802009D4 001FD934 38 84 4A 9C */ addi r4, r4, sub_80004a9c@l +/* 802009D8 001FD938 48 18 8C B5 */ bl __register_global_object +/* 802009DC 001FD93C 38 61 00 88 */ addi r3, r1, 0x88 +/* 802009E0 001FD940 48 13 D1 01 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 802009E4 001FD944 3C 80 80 3D */ lis r4, lbl_803D247C@ha +/* 802009E8 001FD948 38 61 00 78 */ addi r3, r1, 0x78 +/* 802009EC 001FD94C 38 84 24 7C */ addi r4, r4, lbl_803D247C@l +/* 802009F0 001FD950 38 84 00 C4 */ addi r4, r4, 0xc4 +/* 802009F4 001FD954 4B E0 42 C5 */ bl string_l__4rstlFPCc +/* 802009F8 001FD958 38 7F 00 FC */ addi r3, r31, 0xfc +/* 802009FC 001FD95C 38 81 00 78 */ addi r4, r1, 0x78 +/* 80200A00 001FD960 38 63 00 70 */ addi r3, r3, 0x70 +/* 80200A04 001FD964 48 13 D7 5D */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80200A08 001FD968 3C 80 80 00 */ lis r4, sub_80004a9c@ha +/* 80200A0C 001FD96C 38 BF 00 9C */ addi r5, r31, 0x9c +/* 80200A10 001FD970 38 84 4A 9C */ addi r4, r4, sub_80004a9c@l +/* 80200A14 001FD974 48 18 8C 79 */ bl __register_global_object +/* 80200A18 001FD978 38 61 00 78 */ addi r3, r1, 0x78 +/* 80200A1C 001FD97C 48 13 D0 C5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80200A20 001FD980 3C 80 80 3D */ lis r4, lbl_803D247C@ha +/* 80200A24 001FD984 38 61 00 68 */ addi r3, r1, 0x68 +/* 80200A28 001FD988 38 84 24 7C */ addi r4, r4, lbl_803D247C@l +/* 80200A2C 001FD98C 38 84 00 CC */ addi r4, r4, 0xcc +/* 80200A30 001FD990 4B E0 42 89 */ bl string_l__4rstlFPCc +/* 80200A34 001FD994 38 7F 00 FC */ addi r3, r31, 0xfc +/* 80200A38 001FD998 38 81 00 68 */ addi r4, r1, 0x68 +/* 80200A3C 001FD99C 38 63 00 80 */ addi r3, r3, 0x80 +/* 80200A40 001FD9A0 48 13 D7 21 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80200A44 001FD9A4 3C 80 80 00 */ lis r4, sub_80004a9c@ha +/* 80200A48 001FD9A8 38 BF 00 A8 */ addi r5, r31, 0xa8 +/* 80200A4C 001FD9AC 38 84 4A 9C */ addi r4, r4, sub_80004a9c@l +/* 80200A50 001FD9B0 48 18 8C 3D */ bl __register_global_object +/* 80200A54 001FD9B4 38 61 00 68 */ addi r3, r1, 0x68 +/* 80200A58 001FD9B8 48 13 D0 89 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80200A5C 001FD9BC 3C 80 80 3D */ lis r4, lbl_803D247C@ha +/* 80200A60 001FD9C0 38 61 00 58 */ addi r3, r1, 0x58 +/* 80200A64 001FD9C4 38 84 24 7C */ addi r4, r4, lbl_803D247C@l +/* 80200A68 001FD9C8 38 84 00 D2 */ addi r4, r4, 0xd2 +/* 80200A6C 001FD9CC 4B E0 42 4D */ bl string_l__4rstlFPCc +/* 80200A70 001FD9D0 38 7F 00 FC */ addi r3, r31, 0xfc +/* 80200A74 001FD9D4 38 81 00 58 */ addi r4, r1, 0x58 +/* 80200A78 001FD9D8 38 63 00 90 */ addi r3, r3, 0x90 +/* 80200A7C 001FD9DC 48 13 D6 E5 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80200A80 001FD9E0 3C 80 80 00 */ lis r4, sub_80004a9c@ha +/* 80200A84 001FD9E4 38 BF 00 B4 */ addi r5, r31, 0xb4 +/* 80200A88 001FD9E8 38 84 4A 9C */ addi r4, r4, sub_80004a9c@l +/* 80200A8C 001FD9EC 48 18 8C 01 */ bl __register_global_object +/* 80200A90 001FD9F0 38 61 00 58 */ addi r3, r1, 0x58 +/* 80200A94 001FD9F4 48 13 D0 4D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80200A98 001FD9F8 3C 80 80 3D */ lis r4, lbl_803D247C@ha +/* 80200A9C 001FD9FC 38 61 00 48 */ addi r3, r1, 0x48 +/* 80200AA0 001FDA00 38 84 24 7C */ addi r4, r4, lbl_803D247C@l +/* 80200AA4 001FDA04 38 84 00 D9 */ addi r4, r4, 0xd9 +/* 80200AA8 001FDA08 4B E0 42 11 */ bl string_l__4rstlFPCc +/* 80200AAC 001FDA0C 38 7F 00 FC */ addi r3, r31, 0xfc +/* 80200AB0 001FDA10 38 81 00 48 */ addi r4, r1, 0x48 +/* 80200AB4 001FDA14 38 63 00 A0 */ addi r3, r3, 0xa0 +/* 80200AB8 001FDA18 48 13 D6 A9 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80200ABC 001FDA1C 3C 80 80 00 */ lis r4, sub_80004a9c@ha +/* 80200AC0 001FDA20 38 BF 00 C0 */ addi r5, r31, 0xc0 +/* 80200AC4 001FDA24 38 84 4A 9C */ addi r4, r4, sub_80004a9c@l +/* 80200AC8 001FDA28 48 18 8B C5 */ bl __register_global_object +/* 80200ACC 001FDA2C 38 61 00 48 */ addi r3, r1, 0x48 +/* 80200AD0 001FDA30 48 13 D0 11 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80200AD4 001FDA34 3C 80 80 3D */ lis r4, lbl_803D247C@ha +/* 80200AD8 001FDA38 38 61 00 38 */ addi r3, r1, 0x38 +/* 80200ADC 001FDA3C 38 84 24 7C */ addi r4, r4, lbl_803D247C@l +/* 80200AE0 001FDA40 38 84 00 E1 */ addi r4, r4, 0xe1 +/* 80200AE4 001FDA44 4B E0 41 D5 */ bl string_l__4rstlFPCc +/* 80200AE8 001FDA48 38 7F 00 FC */ addi r3, r31, 0xfc +/* 80200AEC 001FDA4C 38 81 00 38 */ addi r4, r1, 0x38 +/* 80200AF0 001FDA50 38 63 00 B0 */ addi r3, r3, 0xb0 +/* 80200AF4 001FDA54 48 13 D6 6D */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80200AF8 001FDA58 3C 80 80 00 */ lis r4, sub_80004a9c@ha +/* 80200AFC 001FDA5C 38 BF 00 CC */ addi r5, r31, 0xcc +/* 80200B00 001FDA60 38 84 4A 9C */ addi r4, r4, sub_80004a9c@l +/* 80200B04 001FDA64 48 18 8B 89 */ bl __register_global_object +/* 80200B08 001FDA68 38 61 00 38 */ addi r3, r1, 0x38 +/* 80200B0C 001FDA6C 48 13 CF D5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80200B10 001FDA70 3C 80 80 3D */ lis r4, lbl_803D247C@ha +/* 80200B14 001FDA74 38 61 00 28 */ addi r3, r1, 0x28 +/* 80200B18 001FDA78 38 84 24 7C */ addi r4, r4, lbl_803D247C@l +/* 80200B1C 001FDA7C 38 84 00 E7 */ addi r4, r4, 0xe7 +/* 80200B20 001FDA80 4B E0 41 99 */ bl string_l__4rstlFPCc +/* 80200B24 001FDA84 38 7F 00 FC */ addi r3, r31, 0xfc +/* 80200B28 001FDA88 38 81 00 28 */ addi r4, r1, 0x28 +/* 80200B2C 001FDA8C 38 63 00 C0 */ addi r3, r3, 0xc0 +/* 80200B30 001FDA90 48 13 D6 31 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80200B34 001FDA94 3C 80 80 00 */ lis r4, sub_80004a9c@ha +/* 80200B38 001FDA98 38 BF 00 D8 */ addi r5, r31, 0xd8 +/* 80200B3C 001FDA9C 38 84 4A 9C */ addi r4, r4, sub_80004a9c@l +/* 80200B40 001FDAA0 48 18 8B 4D */ bl __register_global_object +/* 80200B44 001FDAA4 38 61 00 28 */ addi r3, r1, 0x28 +/* 80200B48 001FDAA8 48 13 CF 99 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80200B4C 001FDAAC 3C 80 80 3D */ lis r4, lbl_803D247C@ha +/* 80200B50 001FDAB0 38 61 00 18 */ addi r3, r1, 0x18 +/* 80200B54 001FDAB4 38 84 24 7C */ addi r4, r4, lbl_803D247C@l +/* 80200B58 001FDAB8 38 84 00 EE */ addi r4, r4, 0xee +/* 80200B5C 001FDABC 4B E0 41 5D */ bl string_l__4rstlFPCc +/* 80200B60 001FDAC0 38 7F 00 FC */ addi r3, r31, 0xfc +/* 80200B64 001FDAC4 38 81 00 18 */ addi r4, r1, 0x18 +/* 80200B68 001FDAC8 38 63 00 D0 */ addi r3, r3, 0xd0 +/* 80200B6C 001FDACC 48 13 D5 F5 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80200B70 001FDAD0 3C 80 80 00 */ lis r4, sub_80004a9c@ha +/* 80200B74 001FDAD4 38 BF 00 E4 */ addi r5, r31, 0xe4 +/* 80200B78 001FDAD8 38 84 4A 9C */ addi r4, r4, sub_80004a9c@l +/* 80200B7C 001FDADC 48 18 8B 11 */ bl __register_global_object +/* 80200B80 001FDAE0 38 61 00 18 */ addi r3, r1, 0x18 +/* 80200B84 001FDAE4 48 13 CF 5D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80200B88 001FDAE8 3C 80 80 3D */ lis r4, lbl_803D247C@ha +/* 80200B8C 001FDAEC 38 61 00 08 */ addi r3, r1, 8 +/* 80200B90 001FDAF0 38 84 24 7C */ addi r4, r4, lbl_803D247C@l +/* 80200B94 001FDAF4 38 84 00 F6 */ addi r4, r4, 0xf6 +/* 80200B98 001FDAF8 4B E0 41 21 */ bl string_l__4rstlFPCc +/* 80200B9C 001FDAFC 38 7F 00 FC */ addi r3, r31, 0xfc +/* 80200BA0 001FDB00 38 81 00 08 */ addi r4, r1, 8 +/* 80200BA4 001FDB04 38 63 00 E0 */ addi r3, r3, 0xe0 +/* 80200BA8 001FDB08 48 13 D5 B9 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80200BAC 001FDB0C 3C 80 80 00 */ lis r4, sub_80004a9c@ha +/* 80200BB0 001FDB10 38 BF 00 F0 */ addi r5, r31, 0xf0 +/* 80200BB4 001FDB14 38 84 4A 9C */ addi r4, r4, sub_80004a9c@l +/* 80200BB8 001FDB18 48 18 8A D5 */ bl __register_global_object +/* 80200BBC 001FDB1C 38 61 00 08 */ addi r3, r1, 8 +/* 80200BC0 001FDB20 48 13 CF 21 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80200BC4 001FDB24 80 01 01 64 */ lwz r0, 0x164(r1) +/* 80200BC8 001FDB28 83 E1 01 5C */ lwz r31, 0x15c(r1) +/* 80200BCC 001FDB2C 7C 08 03 A6 */ mtlr r0 +/* 80200BD0 001FDB30 38 21 01 60 */ addi r1, r1, 0x160 +/* 80200BD4 001FDB34 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Enemies/CGrenadeLauncher.s b/asm/Kyoto_CWD/Enemies/CGrenadeLauncher.s new file mode 100644 index 00000000..62942efd --- /dev/null +++ b/asm/Kyoto_CWD/Enemies/CGrenadeLauncher.s @@ -0,0 +1,2209 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global HealthInfo__16CGrenadeLauncherFR13CStateManager +HealthInfo__16CGrenadeLauncherFR13CStateManager: +/* 8022F68C 0022C5EC 38 63 02 5C */ addi r3, r3, 0x25c +/* 8022F690 0022C5F0 4E 80 00 20 */ blr + +.global GetDamageVulnerability__16CGrenadeLauncherCFv +GetDamageVulnerability__16CGrenadeLauncherCFv: +/* 8022F694 0022C5F4 38 63 02 64 */ addi r3, r3, 0x264 +/* 8022F698 0022C5F8 4E 80 00 20 */ blr + +.global sub_8022f69c +sub_8022f69c: +/* 8022F69C 0022C5FC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8022F6A0 0022C600 7C 08 02 A6 */ mflr r0 +/* 8022F6A4 0022C604 C0 02 B6 64 */ lfs f0, lbl_805AD384@sda21(r2) +/* 8022F6A8 0022C608 90 01 00 24 */ stw r0, 0x24(r1) +/* 8022F6AC 0022C60C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8022F6B0 0022C610 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8022F6B4 0022C614 7C 7E 1B 78 */ mr r30, r3 +/* 8022F6B8 0022C618 C0 43 03 EC */ lfs f2, 0x3ec(r3) +/* 8022F6BC 0022C61C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8022F6C0 0022C620 40 81 00 90 */ ble lbl_8022F750 +/* 8022F6C4 0022C624 EC 02 08 28 */ fsubs f0, f2, f1 +/* 8022F6C8 0022C628 38 81 00 14 */ addi r4, r1, 0x14 +/* 8022F6CC 0022C62C 38 6D 96 18 */ addi r3, r13, lbl_805A81D8@sda21 +/* 8022F6D0 0022C630 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 8022F6D4 0022C634 4B E2 00 5D */ bl "Max__5CMathFRCfRCf" +/* 8022F6D8 0022C638 C0 23 00 00 */ lfs f1, 0(r3) +/* 8022F6DC 0022C63C 38 81 00 08 */ addi r4, r1, 8 +/* 8022F6E0 0022C640 C0 02 B6 68 */ lfs f0, lbl_805AD388@sda21(r2) +/* 8022F6E4 0022C644 38 6D 96 1C */ addi r3, r13, lbl_805A81DC@sda21 +/* 8022F6E8 0022C648 D0 3E 03 EC */ stfs f1, 0x3ec(r30) +/* 8022F6EC 0022C64C 38 AD 96 20 */ addi r5, r13, lbl_805A81E0@sda21 +/* 8022F6F0 0022C650 C0 3E 03 EC */ lfs f1, 0x3ec(r30) +/* 8022F6F4 0022C654 EC 01 00 24 */ fdivs f0, f1, f0 +/* 8022F6F8 0022C658 D0 01 00 08 */ stfs f0, 8(r1) +/* 8022F6FC 0022C65C 4B DD CB B9 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8022F700 0022C660 C0 22 B6 64 */ lfs f1, lbl_805AD384@sda21(r2) +/* 8022F704 0022C664 7C 7F 1B 78 */ mr r31, r3 +/* 8022F708 0022C668 C0 82 B6 6C */ lfs f4, lbl_805AD38C@sda21(r2) +/* 8022F70C 0022C66C 38 61 00 0C */ addi r3, r1, 0xc +/* 8022F710 0022C670 FC 40 08 90 */ fmr f2, f1 +/* 8022F714 0022C674 FC 60 08 90 */ fmr f3, f1 +/* 8022F718 0022C678 48 13 3C D5 */ bl __ct__6CColorFffff +/* 8022F71C 0022C67C C0 3F 00 00 */ lfs f1, 0(r31) +/* 8022F720 0022C680 7C 64 1B 78 */ mr r4, r3 +/* 8022F724 0022C684 38 61 00 10 */ addi r3, r1, 0x10 +/* 8022F728 0022C688 38 BE 03 F0 */ addi r5, r30, 0x3f0 +/* 8022F72C 0022C68C 48 13 3B 81 */ bl Lerp__6CColorFRC6CColorRC6CColorf +/* 8022F730 0022C690 80 01 00 10 */ lwz r0, 0x10(r1) +/* 8022F734 0022C694 C0 42 B6 70 */ lfs f2, lbl_805AD390@sda21(r2) +/* 8022F738 0022C698 90 1E 03 F4 */ stw r0, 0x3f4(r30) +/* 8022F73C 0022C69C C0 3E 03 EC */ lfs f1, 0x3ec(r30) +/* 8022F740 0022C6A0 C0 1E 03 E8 */ lfs f0, 0x3e8(r30) +/* 8022F744 0022C6A4 EC 02 00 7A */ fmadds f0, f2, f1, f0 +/* 8022F748 0022C6A8 D0 1E 00 D0 */ stfs f0, 0xd0(r30) +/* 8022F74C 0022C6AC 48 00 00 0C */ b lbl_8022F758 +lbl_8022F750: +/* 8022F750 0022C6B0 C0 1E 03 E8 */ lfs f0, 0x3e8(r30) +/* 8022F754 0022C6B4 D0 1E 00 D0 */ stfs f0, 0xd0(r30) +lbl_8022F758: +/* 8022F758 0022C6B8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8022F75C 0022C6BC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8022F760 0022C6C0 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8022F764 0022C6C4 7C 08 03 A6 */ mtlr r0 +/* 8022F768 0022C6C8 38 21 00 20 */ addi r1, r1, 0x20 +/* 8022F76C 0022C6CC 4E 80 00 20 */ blr + +.global sub_8022f770 +sub_8022f770: +/* 8022F770 0022C6D0 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 8022F774 0022C6D4 7C 08 02 A6 */ mflr r0 +/* 8022F778 0022C6D8 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 8022F77C 0022C6DC BF 61 00 AC */ stmw r27, 0xac(r1) +/* 8022F780 0022C6E0 7C 7E 1B 78 */ mr r30, r3 +/* 8022F784 0022C6E4 7C 9F 23 78 */ mr r31, r4 +/* 8022F788 0022C6E8 88 03 03 C4 */ lbz r0, 0x3c4(r3) +/* 8022F78C 0022C6EC 28 00 00 00 */ cmplwi r0, 0 +/* 8022F790 0022C6F0 41 82 01 78 */ beq lbl_8022F908 +/* 8022F794 0022C6F4 38 61 00 6C */ addi r3, r1, 0x6c +/* 8022F798 0022C6F8 38 9E 00 34 */ addi r4, r30, 0x34 +/* 8022F79C 0022C6FC 48 0E 33 D9 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8022F7A0 0022C700 3C 60 80 3D */ lis r3, lbl_803D3410@ha +/* 8022F7A4 0022C704 3B 80 00 00 */ li r28, 0 +/* 8022F7A8 0022C708 38 63 34 10 */ addi r3, r3, lbl_803D3410@l +/* 8022F7AC 0022C70C 3B 60 00 00 */ li r27, 0 +/* 8022F7B0 0022C710 38 83 00 20 */ addi r4, r3, 0x20 +/* 8022F7B4 0022C714 38 60 01 00 */ li r3, 0x100 +/* 8022F7B8 0022C718 38 A0 00 00 */ li r5, 0 +/* 8022F7BC 0022C71C 48 0E 60 B1 */ bl __nw__FUlPCcPCc +/* 8022F7C0 0022C720 7C 7D 1B 79 */ or. r29, r3, r3 +/* 8022F7C4 0022C724 41 82 00 B4 */ beq lbl_8022F878 +/* 8022F7C8 0022C728 80 BE 00 64 */ lwz r5, 0x64(r30) +/* 8022F7CC 0022C72C 3C 60 80 3D */ lis r3, lbl_803D3410@ha +/* 8022F7D0 0022C730 38 83 34 10 */ addi r4, r3, lbl_803D3410@l +/* 8022F7D4 0022C734 38 61 00 38 */ addi r3, r1, 0x38 +/* 8022F7D8 0022C738 C0 05 00 00 */ lfs f0, 0(r5) +/* 8022F7DC 0022C73C 38 84 00 27 */ addi r4, r4, 0x27 +/* 8022F7E0 0022C740 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 8022F7E4 0022C744 C0 05 00 04 */ lfs f0, 4(r5) +/* 8022F7E8 0022C748 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 8022F7EC 0022C74C C0 05 00 08 */ lfs f0, 8(r5) +/* 8022F7F0 0022C750 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 8022F7F4 0022C754 4B DD 54 C5 */ bl string_l__4rstlFPCc +/* 8022F7F8 0022C758 80 0D A3 88 */ lwz r0, lbl_805A8F48@sda21(r13) +/* 8022F7FC 0022C75C 3C 60 80 57 */ lis r3, lbl_8056D410@ha +/* 8022F800 0022C760 38 A3 D4 10 */ addi r5, r3, lbl_8056D410@l +/* 8022F804 0022C764 38 81 00 30 */ addi r4, r1, 0x30 +/* 8022F808 0022C768 90 01 00 34 */ stw r0, 0x34(r1) +/* 8022F80C 0022C76C 38 61 00 54 */ addi r3, r1, 0x54 +/* 8022F810 0022C770 38 C1 00 34 */ addi r6, r1, 0x34 +/* 8022F814 0022C774 3B 80 00 01 */ li r28, 1 +/* 8022F818 0022C778 80 1E 00 04 */ lwz r0, 4(r30) +/* 8022F81C 0022C77C 90 01 00 2C */ stw r0, 0x2c(r1) +/* 8022F820 0022C780 90 01 00 30 */ stw r0, 0x30(r1) +/* 8022F824 0022C784 4B E2 1C 61 */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" +/* 8022F828 0022C788 7F E4 FB 78 */ mr r4, r31 +/* 8022F82C 0022C78C 38 61 00 10 */ addi r3, r1, 0x10 +/* 8022F830 0022C790 3B 60 00 01 */ li r27, 1 +/* 8022F834 0022C794 4B E1 D8 A9 */ bl AllocateUniqueId__13CStateManagerFv +/* 8022F838 0022C798 A0 01 00 10 */ lhz r0, 0x10(r1) +/* 8022F83C 0022C79C B0 01 00 14 */ sth r0, 0x14(r1) +/* 8022F840 0022C7A0 48 11 A7 6D */ bl White__6CColorFv +/* 8022F844 0022C7A4 38 01 00 48 */ addi r0, r1, 0x48 +/* 8022F848 0022C7A8 38 9E 03 B8 */ addi r4, r30, 0x3b8 +/* 8022F84C 0022C7AC 90 01 00 08 */ stw r0, 8(r1) +/* 8022F850 0022C7B0 38 A1 00 14 */ addi r5, r1, 0x14 +/* 8022F854 0022C7B4 38 E1 00 54 */ addi r7, r1, 0x54 +/* 8022F858 0022C7B8 39 01 00 38 */ addi r8, r1, 0x38 +/* 8022F85C 0022C7BC 90 61 00 0C */ stw r3, 0xc(r1) +/* 8022F860 0022C7C0 7F A3 EB 78 */ mr r3, r29 +/* 8022F864 0022C7C4 39 21 00 6C */ addi r9, r1, 0x6c +/* 8022F868 0022C7C8 38 C0 00 01 */ li r6, 1 +/* 8022F86C 0022C7CC 39 40 00 00 */ li r10, 0 +/* 8022F870 0022C7D0 4B E2 B2 89 */ bl "__ct__10CExplosionFRC31TLockedToken<15CGenDescription>9TUniqueIdbRC11CEntityInfoRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC12CTransform4fUiRC9CVector3fRC6CColor" +/* 8022F874 0022C7D4 7C 7D 1B 78 */ mr r29, r3 +lbl_8022F878: +/* 8022F878 0022C7D8 7F 60 07 75 */ extsb. r0, r27 +/* 8022F87C 0022C7DC 41 82 00 44 */ beq lbl_8022F8C0 +/* 8022F880 0022C7E0 80 01 00 5C */ lwz r0, 0x5c(r1) +/* 8022F884 0022C7E4 80 61 00 64 */ lwz r3, 0x64(r1) +/* 8022F888 0022C7E8 1C 00 00 0C */ mulli r0, r0, 0xc +/* 8022F88C 0022C7EC 90 61 00 1C */ stw r3, 0x1c(r1) +/* 8022F890 0022C7F0 7C 64 1B 78 */ mr r4, r3 +/* 8022F894 0022C7F4 7C 03 02 14 */ add r0, r3, r0 +/* 8022F898 0022C7F8 90 61 00 18 */ stw r3, 0x18(r1) +/* 8022F89C 0022C7FC 90 01 00 24 */ stw r0, 0x24(r1) +/* 8022F8A0 0022C800 90 01 00 20 */ stw r0, 0x20(r1) +/* 8022F8A4 0022C804 48 00 00 08 */ b lbl_8022F8AC +lbl_8022F8A8: +/* 8022F8A8 0022C808 38 84 00 0C */ addi r4, r4, 0xc +lbl_8022F8AC: +/* 8022F8AC 0022C80C 7C 04 00 40 */ cmplw r4, r0 +/* 8022F8B0 0022C810 40 82 FF F8 */ bne lbl_8022F8A8 +/* 8022F8B4 0022C814 28 03 00 00 */ cmplwi r3, 0 +/* 8022F8B8 0022C818 41 82 00 08 */ beq lbl_8022F8C0 +/* 8022F8BC 0022C81C 48 0E 60 75 */ bl Free__7CMemoryFPCv +lbl_8022F8C0: +/* 8022F8C0 0022C820 7F 80 07 75 */ extsb. r0, r28 +/* 8022F8C4 0022C824 41 82 00 0C */ beq lbl_8022F8D0 +/* 8022F8C8 0022C828 38 61 00 38 */ addi r3, r1, 0x38 +/* 8022F8CC 0022C82C 48 10 E2 15 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8022F8D0: +/* 8022F8D0 0022C830 28 1D 00 00 */ cmplwi r29, 0 +/* 8022F8D4 0022C834 41 82 00 34 */ beq lbl_8022F908 +/* 8022F8D8 0022C838 7F E3 FB 78 */ mr r3, r31 +/* 8022F8DC 0022C83C 7F A4 EB 78 */ mr r4, r29 +/* 8022F8E0 0022C840 4B E1 D4 15 */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +/* 8022F8E4 0022C844 A0 9E 03 14 */ lhz r4, 0x314(r30) +/* 8022F8E8 0022C848 38 61 00 28 */ addi r3, r1, 0x28 +/* 8022F8EC 0022C84C 88 A2 CC 40 */ lbz r5, lbl_805AE960@sda21(r2) +/* 8022F8F0 0022C850 38 C0 00 40 */ li r6, 0x40 +/* 8022F8F4 0022C854 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 8022F8F8 0022C858 38 E0 00 00 */ li r7, 0 +/* 8022F8FC 0022C85C 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8022F900 0022C860 39 20 00 00 */ li r9, 0 +/* 8022F904 0022C864 48 0B A4 71 */ bl SfxStart__11CSfxManagerFUsssbsbi +lbl_8022F908: +/* 8022F908 0022C868 BB 61 00 AC */ lmw r27, 0xac(r1) +/* 8022F90C 0022C86C 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 8022F910 0022C870 7C 08 03 A6 */ mtlr r0 +/* 8022F914 0022C874 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 8022F918 0022C878 4E 80 00 20 */ blr + +.global sub_8022f91c +sub_8022f91c: +/* 8022F91C 0022C87C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8022F920 0022C880 7C 08 02 A6 */ mflr r0 +/* 8022F924 0022C884 C0 02 B6 64 */ lfs f0, lbl_805AD384@sda21(r2) +/* 8022F928 0022C888 90 01 00 24 */ stw r0, 0x24(r1) +/* 8022F92C 0022C88C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8022F930 0022C890 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8022F934 0022C894 7C 7E 1B 78 */ mr r30, r3 +/* 8022F938 0022C898 C0 43 03 48 */ lfs f2, 0x348(r3) +/* 8022F93C 0022C89C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8022F940 0022C8A0 40 81 00 88 */ ble lbl_8022F9C8 +/* 8022F944 0022C8A4 EC 02 08 28 */ fsubs f0, f2, f1 +/* 8022F948 0022C8A8 38 81 00 14 */ addi r4, r1, 0x14 +/* 8022F94C 0022C8AC 38 6D 96 14 */ addi r3, r13, lbl_805A81D4@sda21 +/* 8022F950 0022C8B0 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 8022F954 0022C8B4 4B E1 FD DD */ bl "Max__5CMathFRCfRCf" +/* 8022F958 0022C8B8 C0 22 B6 6C */ lfs f1, lbl_805AD38C@sda21(r2) +/* 8022F95C 0022C8BC C0 03 00 00 */ lfs f0, 0(r3) +/* 8022F960 0022C8C0 38 61 00 08 */ addi r3, r1, 8 +/* 8022F964 0022C8C4 C0 42 B6 64 */ lfs f2, lbl_805AD384@sda21(r2) +/* 8022F968 0022C8C8 FC 80 08 90 */ fmr f4, f1 +/* 8022F96C 0022C8CC D0 1E 03 48 */ stfs f0, 0x348(r30) +/* 8022F970 0022C8D0 FC 60 10 90 */ fmr f3, f2 +/* 8022F974 0022C8D4 48 13 3A 79 */ bl __ct__6CColorFffff +/* 8022F978 0022C8D8 C0 22 B6 6C */ lfs f1, lbl_805AD38C@sda21(r2) +/* 8022F97C 0022C8DC 7C 7F 1B 78 */ mr r31, r3 +/* 8022F980 0022C8E0 38 61 00 0C */ addi r3, r1, 0xc +/* 8022F984 0022C8E4 FC 40 08 90 */ fmr f2, f1 +/* 8022F988 0022C8E8 FC 60 08 90 */ fmr f3, f1 +/* 8022F98C 0022C8EC FC 80 08 90 */ fmr f4, f1 +/* 8022F990 0022C8F0 48 13 3A 5D */ bl __ct__6CColorFffff +/* 8022F994 0022C8F4 C0 3E 03 48 */ lfs f1, 0x348(r30) +/* 8022F998 0022C8F8 7C 64 1B 78 */ mr r4, r3 +/* 8022F99C 0022C8FC 7F E5 FB 78 */ mr r5, r31 +/* 8022F9A0 0022C900 38 61 00 10 */ addi r3, r1, 0x10 +/* 8022F9A4 0022C904 48 13 39 09 */ bl Lerp__6CColorFRC6CColorRC6CColorf +/* 8022F9A8 0022C908 88 81 00 12 */ lbz r4, 0x12(r1) +/* 8022F9AC 0022C90C 38 00 00 FF */ li r0, 0xff +/* 8022F9B0 0022C910 88 A1 00 11 */ lbz r5, 0x11(r1) +/* 8022F9B4 0022C914 88 61 00 10 */ lbz r3, 0x10(r1) +/* 8022F9B8 0022C918 98 7E 03 4C */ stb r3, 0x34c(r30) +/* 8022F9BC 0022C91C 98 BE 03 4D */ stb r5, 0x34d(r30) +/* 8022F9C0 0022C920 98 9E 03 4E */ stb r4, 0x34e(r30) +/* 8022F9C4 0022C924 98 1E 03 4F */ stb r0, 0x34f(r30) +lbl_8022F9C8: +/* 8022F9C8 0022C928 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8022F9CC 0022C92C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8022F9D0 0022C930 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8022F9D4 0022C934 7C 08 03 A6 */ mtlr r0 +/* 8022F9D8 0022C938 38 21 00 20 */ addi r1, r1, 0x20 +/* 8022F9DC 0022C93C 4E 80 00 20 */ blr + +.global sub_8022f9e0 +sub_8022f9e0: +/* 8022F9E0 0022C940 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 8022F9E4 0022C944 7C 08 02 A6 */ mflr r0 +/* 8022F9E8 0022C948 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 8022F9EC 0022C94C DB E1 00 90 */ stfd f31, 0x90(r1) +/* 8022F9F0 0022C950 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 +/* 8022F9F4 0022C954 DB C1 00 80 */ stfd f30, 0x80(r1) +/* 8022F9F8 0022C958 F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 +/* 8022F9FC 0022C95C DB A1 00 70 */ stfd f29, 0x70(r1) +/* 8022FA00 0022C960 F3 A1 00 78 */ psq_st f29, 120(r1), 0, qr0 +/* 8022FA04 0022C964 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 8022FA08 0022C968 93 C1 00 68 */ stw r30, 0x68(r1) +/* 8022FA0C 0022C96C 7C 7F 1B 78 */ mr r31, r3 +/* 8022FA10 0022C970 FF C0 08 90 */ fmr f30, f1 +/* 8022FA14 0022C974 80 C3 00 64 */ lwz r6, 0x64(r3) +/* 8022FA18 0022C978 7C 85 23 78 */ mr r5, r4 +/* 8022FA1C 0022C97C 38 60 00 00 */ li r3, 0 +/* 8022FA20 0022C980 28 06 00 00 */ cmplwi r6, 0 +/* 8022FA24 0022C984 41 82 00 14 */ beq lbl_8022FA38 +/* 8022FA28 0022C988 80 06 00 10 */ lwz r0, 0x10(r6) +/* 8022FA2C 0022C98C 28 00 00 00 */ cmplwi r0, 0 +/* 8022FA30 0022C990 41 82 00 08 */ beq lbl_8022FA38 +/* 8022FA34 0022C994 38 60 00 01 */ li r3, 1 +lbl_8022FA38: +/* 8022FA38 0022C998 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022FA3C 0022C99C 41 82 03 98 */ beq lbl_8022FDD4 +/* 8022FA40 0022C9A0 80 1F 02 58 */ lwz r0, 0x258(r31) +/* 8022FA44 0022C9A4 2C 00 00 01 */ cmpwi r0, 1 +/* 8022FA48 0022C9A8 40 82 03 8C */ bne lbl_8022FDD4 +/* 8022FA4C 0022C9AC 88 1F 03 FE */ lbz r0, 0x3fe(r31) +/* 8022FA50 0022C9B0 28 00 00 00 */ cmplwi r0, 0 +/* 8022FA54 0022C9B4 41 82 03 80 */ beq lbl_8022FDD4 +/* 8022FA58 0022C9B8 80 85 08 4C */ lwz r4, 0x84c(r5) +/* 8022FA5C 0022C9BC 38 61 00 44 */ addi r3, r1, 0x44 +/* 8022FA60 0022C9C0 C0 22 B6 64 */ lfs f1, lbl_805AD384@sda21(r2) +/* 8022FA64 0022C9C4 81 84 00 00 */ lwz r12, 0(r4) +/* 8022FA68 0022C9C8 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 8022FA6C 0022C9CC 7D 89 03 A6 */ mtctr r12 +/* 8022FA70 0022C9D0 4E 80 04 21 */ bctrl +/* 8022FA74 0022C9D4 C0 9F 00 60 */ lfs f4, 0x60(r31) +/* 8022FA78 0022C9D8 38 9F 00 34 */ addi r4, r31, 0x34 +/* 8022FA7C 0022C9DC C0 3F 00 60 */ lfs f1, 0x60(r31) +/* 8022FA80 0022C9E0 38 61 00 2C */ addi r3, r1, 0x2c +/* 8022FA84 0022C9E4 C0 A1 00 48 */ lfs f5, 0x48(r1) +/* 8022FA88 0022C9E8 38 A1 00 20 */ addi r5, r1, 0x20 +/* 8022FA8C 0022C9EC C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 8022FA90 0022C9F0 EC C4 08 28 */ fsubs f6, f4, f1 +/* 8022FA94 0022C9F4 C0 21 00 44 */ lfs f1, 0x44(r1) +/* 8022FA98 0022C9F8 EC A5 00 28 */ fsubs f5, f5, f0 +/* 8022FA9C 0022C9FC C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8022FAA0 0022CA00 C0 7F 00 50 */ lfs f3, 0x50(r31) +/* 8022FAA4 0022CA04 C0 5F 00 40 */ lfs f2, 0x40(r31) +/* 8022FAA8 0022CA08 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8022FAAC 0022CA0C D0 61 00 3C */ stfs f3, 0x3c(r1) +/* 8022FAB0 0022CA10 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 8022FAB4 0022CA14 D0 81 00 40 */ stfs f4, 0x40(r1) +/* 8022FAB8 0022CA18 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 8022FABC 0022CA1C D0 A1 00 24 */ stfs f5, 0x24(r1) +/* 8022FAC0 0022CA20 D0 C1 00 28 */ stfs f6, 0x28(r1) +/* 8022FAC4 0022CA24 48 0E 2F 61 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 8022FAC8 0022CA28 C0 41 00 2C */ lfs f2, 0x2c(r1) +/* 8022FACC 0022CA2C 38 61 00 50 */ addi r3, r1, 0x50 +/* 8022FAD0 0022CA30 C0 21 00 30 */ lfs f1, 0x30(r1) +/* 8022FAD4 0022CA34 C0 01 00 34 */ lfs f0, 0x34(r1) +/* 8022FAD8 0022CA38 D0 41 00 50 */ stfs f2, 0x50(r1) +/* 8022FADC 0022CA3C D0 21 00 54 */ stfs f1, 0x54(r1) +/* 8022FAE0 0022CA40 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 8022FAE4 0022CA44 48 0E 4C 15 */ bl CanBeNormalized__9CVector3fCFv +/* 8022FAE8 0022CA48 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022FAEC 0022CA4C 41 82 03 6C */ beq lbl_8022FE58 +/* 8022FAF0 0022CA50 C0 21 00 50 */ lfs f1, 0x50(r1) +/* 8022FAF4 0022CA54 C0 41 00 54 */ lfs f2, 0x54(r1) +/* 8022FAF8 0022CA58 48 16 51 75 */ bl atan2 +/* 8022FAFC 0022CA5C FC 00 08 18 */ frsp f0, f1 +/* 8022FB00 0022CA60 38 81 00 1C */ addi r4, r1, 0x1c +/* 8022FB04 0022CA64 38 6D 95 F4 */ addi r3, r13, lbl_805A81B4@sda21 +/* 8022FB08 0022CA68 38 A2 B6 74 */ addi r5, r2, lbl_805AD394@sda21 +/* 8022FB0C 0022CA6C D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8022FB10 0022CA70 4B DD C7 A5 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8022FB14 0022CA74 C0 23 00 00 */ lfs f1, 0(r3) +/* 8022FB18 0022CA78 38 81 00 18 */ addi r4, r1, 0x18 +/* 8022FB1C 0022CA7C C0 02 B6 80 */ lfs f0, lbl_805AD3A0@sda21(r2) +/* 8022FB20 0022CA80 38 6D 95 F8 */ addi r3, r13, lbl_805A81B8@sda21 +/* 8022FB24 0022CA84 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 8022FB28 0022CA88 38 A2 B6 78 */ addi r5, r2, lbl_805AD398@sda21 +/* 8022FB2C 0022CA8C EC 40 00 72 */ fmuls f2, f0, f1 +/* 8022FB30 0022CA90 C0 22 B6 84 */ lfs f1, lbl_805AD3A4@sda21(r2) +/* 8022FB34 0022CA94 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 8022FB38 0022CA98 C0 1F 03 D8 */ lfs f0, 0x3d8(r31) +/* 8022FB3C 0022CA9C EC 02 00 28 */ fsubs f0, f2, f0 +/* 8022FB40 0022CAA0 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8022FB44 0022CAA4 EC 00 F0 24 */ fdivs f0, f0, f30 +/* 8022FB48 0022CAA8 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 8022FB4C 0022CAAC 4B DD C7 69 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8022FB50 0022CAB0 C0 23 00 00 */ lfs f1, 0(r3) +/* 8022FB54 0022CAB4 38 81 00 14 */ addi r4, r1, 0x14 +/* 8022FB58 0022CAB8 38 6D 95 FC */ addi r3, r13, lbl_805A81BC@sda21 +/* 8022FB5C 0022CABC 38 A2 B6 7C */ addi r5, r2, lbl_805AD39C@sda21 +/* 8022FB60 0022CAC0 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 8022FB64 0022CAC4 C0 1F 03 DC */ lfs f0, 0x3dc(r31) +/* 8022FB68 0022CAC8 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8022FB6C 0022CACC EC 00 F0 24 */ fdivs f0, f0, f30 +/* 8022FB70 0022CAD0 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 8022FB74 0022CAD4 4B DD C7 41 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8022FB78 0022CAD8 C0 23 00 00 */ lfs f1, 0(r3) +/* 8022FB7C 0022CADC C0 1F 03 DC */ lfs f0, 0x3dc(r31) +/* 8022FB80 0022CAE0 EC 1E 00 7A */ fmadds f0, f30, f1, f0 +/* 8022FB84 0022CAE4 D0 1F 03 DC */ stfs f0, 0x3dc(r31) +/* 8022FB88 0022CAE8 C0 21 00 54 */ lfs f1, 0x54(r1) +/* 8022FB8C 0022CAEC C0 01 00 50 */ lfs f0, 0x50(r1) +/* 8022FB90 0022CAF0 EC 21 00 72 */ fmuls f1, f1, f1 +/* 8022FB94 0022CAF4 EC 00 00 32 */ fmuls f0, f0, f0 +/* 8022FB98 0022CAF8 EC 21 00 2A */ fadds f1, f1, f0 +/* 8022FB9C 0022CAFC 48 0E 59 65 */ bl SqrtF__5CMathFf +/* 8022FBA0 0022CB00 FC 40 08 90 */ fmr f2, f1 +/* 8022FBA4 0022CB04 C0 21 00 58 */ lfs f1, 0x58(r1) +/* 8022FBA8 0022CB08 48 16 50 C5 */ bl atan2 +/* 8022FBAC 0022CB0C FC 00 08 18 */ frsp f0, f1 +/* 8022FBB0 0022CB10 38 81 00 10 */ addi r4, r1, 0x10 +/* 8022FBB4 0022CB14 38 6D 96 00 */ addi r3, r13, lbl_805A81C0@sda21 +/* 8022FBB8 0022CB18 38 A2 B6 74 */ addi r5, r2, lbl_805AD394@sda21 +/* 8022FBBC 0022CB1C D0 01 00 10 */ stfs f0, 0x10(r1) +/* 8022FBC0 0022CB20 4B DD C6 F5 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8022FBC4 0022CB24 C0 23 00 00 */ lfs f1, 0(r3) +/* 8022FBC8 0022CB28 38 81 00 18 */ addi r4, r1, 0x18 +/* 8022FBCC 0022CB2C C0 02 B6 80 */ lfs f0, lbl_805AD3A0@sda21(r2) +/* 8022FBD0 0022CB30 38 6D 96 04 */ addi r3, r13, lbl_805A81C4@sda21 +/* 8022FBD4 0022CB34 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 8022FBD8 0022CB38 38 A2 B6 78 */ addi r5, r2, lbl_805AD398@sda21 +/* 8022FBDC 0022CB3C EC 40 00 72 */ fmuls f2, f0, f1 +/* 8022FBE0 0022CB40 C0 22 B6 84 */ lfs f1, lbl_805AD3A4@sda21(r2) +/* 8022FBE4 0022CB44 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 8022FBE8 0022CB48 C0 1F 03 E0 */ lfs f0, 0x3e0(r31) +/* 8022FBEC 0022CB4C EC 02 00 28 */ fsubs f0, f2, f0 +/* 8022FBF0 0022CB50 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8022FBF4 0022CB54 EC 00 F0 24 */ fdivs f0, f0, f30 +/* 8022FBF8 0022CB58 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 8022FBFC 0022CB5C 4B DD C6 B9 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8022FC00 0022CB60 C0 23 00 00 */ lfs f1, 0(r3) +/* 8022FC04 0022CB64 38 81 00 14 */ addi r4, r1, 0x14 +/* 8022FC08 0022CB68 38 6D 96 08 */ addi r3, r13, lbl_805A81C8@sda21 +/* 8022FC0C 0022CB6C 38 A2 B6 7C */ addi r5, r2, lbl_805AD39C@sda21 +/* 8022FC10 0022CB70 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 8022FC14 0022CB74 C0 1F 03 E4 */ lfs f0, 0x3e4(r31) +/* 8022FC18 0022CB78 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8022FC1C 0022CB7C EC 00 F0 24 */ fdivs f0, f0, f30 +/* 8022FC20 0022CB80 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 8022FC24 0022CB84 4B DD C6 91 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8022FC28 0022CB88 C0 23 00 00 */ lfs f1, 0(r3) +/* 8022FC2C 0022CB8C 38 81 00 0C */ addi r4, r1, 0xc +/* 8022FC30 0022CB90 C0 1F 03 E4 */ lfs f0, 0x3e4(r31) +/* 8022FC34 0022CB94 38 6D 96 0C */ addi r3, r13, lbl_805A81CC@sda21 +/* 8022FC38 0022CB98 38 A2 B6 60 */ addi r5, r2, lbl_805AD380@sda21 +/* 8022FC3C 0022CB9C EC 1E 00 7A */ fmadds f0, f30, f1, f0 +/* 8022FC40 0022CBA0 D0 1F 03 E4 */ stfs f0, 0x3e4(r31) +/* 8022FC44 0022CBA4 C0 3F 03 DC */ lfs f1, 0x3dc(r31) +/* 8022FC48 0022CBA8 C0 1F 03 D8 */ lfs f0, 0x3d8(r31) +/* 8022FC4C 0022CBAC EC 1E 00 7A */ fmadds f0, f30, f1, f0 +/* 8022FC50 0022CBB0 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 8022FC54 0022CBB4 4B DD C6 61 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8022FC58 0022CBB8 C0 3F 03 E4 */ lfs f1, 0x3e4(r31) +/* 8022FC5C 0022CBBC 38 81 00 08 */ addi r4, r1, 8 +/* 8022FC60 0022CBC0 C0 1F 03 E0 */ lfs f0, 0x3e0(r31) +/* 8022FC64 0022CBC4 38 A2 B6 60 */ addi r5, r2, lbl_805AD380@sda21 +/* 8022FC68 0022CBC8 C3 E3 00 00 */ lfs f31, 0(r3) +/* 8022FC6C 0022CBCC 38 6D 96 10 */ addi r3, r13, lbl_805A81D0@sda21 +/* 8022FC70 0022CBD0 EC 1E 00 7A */ fmadds f0, f30, f1, f0 +/* 8022FC74 0022CBD4 D0 01 00 08 */ stfs f0, 8(r1) +/* 8022FC78 0022CBD8 4B DD C6 3D */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8022FC7C 0022CBDC C0 5F 03 D8 */ lfs f2, 0x3d8(r31) +/* 8022FC80 0022CBE0 80 9F 00 64 */ lwz r4, 0x64(r31) +/* 8022FC84 0022CBE4 FC 1F 10 00 */ fcmpu cr0, f31, f2 +/* 8022FC88 0022CBE8 C3 A3 00 00 */ lfs f29, 0(r3) +/* 8022FC8C 0022CBEC 83 C4 00 10 */ lwz r30, 0x10(r4) +/* 8022FC90 0022CBF0 41 82 00 98 */ beq lbl_8022FD28 +/* 8022FC94 0022CBF4 FC 00 12 10 */ fabs f0, f2 +/* 8022FC98 0022CBF8 C0 22 B6 64 */ lfs f1, lbl_805AD384@sda21(r2) +/* 8022FC9C 0022CBFC FC 60 FA 10 */ fabs f3, f31 +/* 8022FCA0 0022CC00 FC 00 00 18 */ frsp f0, f0 +/* 8022FCA4 0022CC04 FF C0 18 18 */ frsp f30, f3 +/* 8022FCA8 0022CC08 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 8022FCAC 0022CC0C 40 81 00 3C */ ble lbl_8022FCE8 +/* 8022FCB0 0022CC10 EC 02 07 F2 */ fmuls f0, f2, f31 +/* 8022FCB4 0022CC14 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 8022FCB8 0022CC18 4C 40 13 82 */ cror 2, 0, 2 +/* 8022FCBC 0022CC1C 40 82 00 2C */ bne lbl_8022FCE8 +/* 8022FCC0 0022CC20 FC 02 08 40 */ fcmpo cr0, f2, f1 +/* 8022FCC4 0022CC24 7F C3 F3 78 */ mr r3, r30 +/* 8022FCC8 0022CC28 40 80 00 0C */ bge lbl_8022FCD4 +/* 8022FCCC 0022CC2C 38 00 00 00 */ li r0, 0 +/* 8022FCD0 0022CC30 48 00 00 08 */ b lbl_8022FCD8 +lbl_8022FCD4: +/* 8022FCD4 0022CC34 38 00 00 01 */ li r0, 1 +lbl_8022FCD8: +/* 8022FCD8 0022CC38 54 00 10 3A */ slwi r0, r0, 2 +/* 8022FCDC 0022CC3C 7C 9F 02 14 */ add r4, r31, r0 +/* 8022FCE0 0022CC40 80 84 03 C8 */ lwz r4, 0x3c8(r4) +/* 8022FCE4 0022CC44 4B DF A4 75 */ bl DelAdditiveAnimation__9CAnimDataFUi +lbl_8022FCE8: +/* 8022FCE8 0022CC48 C0 02 B6 64 */ lfs f0, lbl_805AD384@sda21(r2) +/* 8022FCEC 0022CC4C FC 1E 00 40 */ fcmpo cr0, f30, f0 +/* 8022FCF0 0022CC50 40 81 00 38 */ ble lbl_8022FD28 +/* 8022FCF4 0022CC54 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 8022FCF8 0022CC58 7F C3 F3 78 */ mr r3, r30 +/* 8022FCFC 0022CC5C 40 80 00 0C */ bge lbl_8022FD08 +/* 8022FD00 0022CC60 38 00 00 00 */ li r0, 0 +/* 8022FD04 0022CC64 48 00 00 08 */ b lbl_8022FD0C +lbl_8022FD08: +/* 8022FD08 0022CC68 38 00 00 01 */ li r0, 1 +lbl_8022FD0C: +/* 8022FD0C 0022CC6C 54 00 10 3A */ slwi r0, r0, 2 +/* 8022FD10 0022CC70 FC 20 F0 90 */ fmr f1, f30 +/* 8022FD14 0022CC74 7C 9F 02 14 */ add r4, r31, r0 +/* 8022FD18 0022CC78 38 A0 00 00 */ li r5, 0 +/* 8022FD1C 0022CC7C 80 84 03 C8 */ lwz r4, 0x3c8(r4) +/* 8022FD20 0022CC80 38 C0 00 00 */ li r6, 0 +/* 8022FD24 0022CC84 4B DF A4 AD */ bl AddAdditiveAnimation__9CAnimDataFUifbb +lbl_8022FD28: +/* 8022FD28 0022CC88 C0 5F 03 E0 */ lfs f2, 0x3e0(r31) +/* 8022FD2C 0022CC8C FC 1D 10 00 */ fcmpu cr0, f29, f2 +/* 8022FD30 0022CC90 41 82 00 98 */ beq lbl_8022FDC8 +/* 8022FD34 0022CC94 FC 00 12 10 */ fabs f0, f2 +/* 8022FD38 0022CC98 C0 22 B6 64 */ lfs f1, lbl_805AD384@sda21(r2) +/* 8022FD3C 0022CC9C FC 60 EA 10 */ fabs f3, f29 +/* 8022FD40 0022CCA0 FC 00 00 18 */ frsp f0, f0 +/* 8022FD44 0022CCA4 FF C0 18 18 */ frsp f30, f3 +/* 8022FD48 0022CCA8 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 8022FD4C 0022CCAC 40 81 00 3C */ ble lbl_8022FD88 +/* 8022FD50 0022CCB0 EC 02 07 72 */ fmuls f0, f2, f29 +/* 8022FD54 0022CCB4 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 8022FD58 0022CCB8 4C 40 13 82 */ cror 2, 0, 2 +/* 8022FD5C 0022CCBC 40 82 00 2C */ bne lbl_8022FD88 +/* 8022FD60 0022CCC0 FC 02 08 40 */ fcmpo cr0, f2, f1 +/* 8022FD64 0022CCC4 7F C3 F3 78 */ mr r3, r30 +/* 8022FD68 0022CCC8 40 81 00 0C */ ble lbl_8022FD74 +/* 8022FD6C 0022CCCC 38 00 00 02 */ li r0, 2 +/* 8022FD70 0022CCD0 48 00 00 08 */ b lbl_8022FD78 +lbl_8022FD74: +/* 8022FD74 0022CCD4 38 00 00 03 */ li r0, 3 +lbl_8022FD78: +/* 8022FD78 0022CCD8 54 00 10 3A */ slwi r0, r0, 2 +/* 8022FD7C 0022CCDC 7C 9F 02 14 */ add r4, r31, r0 +/* 8022FD80 0022CCE0 80 84 03 C8 */ lwz r4, 0x3c8(r4) +/* 8022FD84 0022CCE4 4B DF A3 D5 */ bl DelAdditiveAnimation__9CAnimDataFUi +lbl_8022FD88: +/* 8022FD88 0022CCE8 C0 02 B6 64 */ lfs f0, lbl_805AD384@sda21(r2) +/* 8022FD8C 0022CCEC FC 1E 00 40 */ fcmpo cr0, f30, f0 +/* 8022FD90 0022CCF0 40 81 00 38 */ ble lbl_8022FDC8 +/* 8022FD94 0022CCF4 FC 1D 00 40 */ fcmpo cr0, f29, f0 +/* 8022FD98 0022CCF8 7F C3 F3 78 */ mr r3, r30 +/* 8022FD9C 0022CCFC 40 81 00 0C */ ble lbl_8022FDA8 +/* 8022FDA0 0022CD00 38 00 00 02 */ li r0, 2 +/* 8022FDA4 0022CD04 48 00 00 08 */ b lbl_8022FDAC +lbl_8022FDA8: +/* 8022FDA8 0022CD08 38 00 00 03 */ li r0, 3 +lbl_8022FDAC: +/* 8022FDAC 0022CD0C 54 00 10 3A */ slwi r0, r0, 2 +/* 8022FDB0 0022CD10 FC 20 F0 90 */ fmr f1, f30 +/* 8022FDB4 0022CD14 7C 9F 02 14 */ add r4, r31, r0 +/* 8022FDB8 0022CD18 38 A0 00 00 */ li r5, 0 +/* 8022FDBC 0022CD1C 80 84 03 C8 */ lwz r4, 0x3c8(r4) +/* 8022FDC0 0022CD20 38 C0 00 00 */ li r6, 0 +/* 8022FDC4 0022CD24 4B DF A4 0D */ bl AddAdditiveAnimation__9CAnimDataFUifbb +lbl_8022FDC8: +/* 8022FDC8 0022CD28 D3 FF 03 D8 */ stfs f31, 0x3d8(r31) +/* 8022FDCC 0022CD2C D3 BF 03 E0 */ stfs f29, 0x3e0(r31) +/* 8022FDD0 0022CD30 48 00 00 88 */ b lbl_8022FE58 +lbl_8022FDD4: +/* 8022FDD4 0022CD34 C0 02 B6 64 */ lfs f0, lbl_805AD384@sda21(r2) +/* 8022FDD8 0022CD38 C0 3F 03 D8 */ lfs f1, 0x3d8(r31) +/* 8022FDDC 0022CD3C 83 C6 00 10 */ lwz r30, 0x10(r6) +/* 8022FDE0 0022CD40 FC 00 08 00 */ fcmpu cr0, f0, f1 +/* 8022FDE4 0022CD44 41 82 00 34 */ beq lbl_8022FE18 +/* 8022FDE8 0022CD48 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8022FDEC 0022CD4C 7F C3 F3 78 */ mr r3, r30 +/* 8022FDF0 0022CD50 40 80 00 0C */ bge lbl_8022FDFC +/* 8022FDF4 0022CD54 38 00 00 00 */ li r0, 0 +/* 8022FDF8 0022CD58 48 00 00 08 */ b lbl_8022FE00 +lbl_8022FDFC: +/* 8022FDFC 0022CD5C 38 00 00 01 */ li r0, 1 +lbl_8022FE00: +/* 8022FE00 0022CD60 54 00 10 3A */ slwi r0, r0, 2 +/* 8022FE04 0022CD64 7C 9F 02 14 */ add r4, r31, r0 +/* 8022FE08 0022CD68 80 84 03 C8 */ lwz r4, 0x3c8(r4) +/* 8022FE0C 0022CD6C 4B DF A3 4D */ bl DelAdditiveAnimation__9CAnimDataFUi +/* 8022FE10 0022CD70 C0 02 B6 64 */ lfs f0, lbl_805AD384@sda21(r2) +/* 8022FE14 0022CD74 D0 1F 03 D8 */ stfs f0, 0x3d8(r31) +lbl_8022FE18: +/* 8022FE18 0022CD78 C0 02 B6 64 */ lfs f0, lbl_805AD384@sda21(r2) +/* 8022FE1C 0022CD7C C0 3F 03 E0 */ lfs f1, 0x3e0(r31) +/* 8022FE20 0022CD80 FC 00 08 00 */ fcmpu cr0, f0, f1 +/* 8022FE24 0022CD84 41 82 00 34 */ beq lbl_8022FE58 +/* 8022FE28 0022CD88 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8022FE2C 0022CD8C 7F C3 F3 78 */ mr r3, r30 +/* 8022FE30 0022CD90 40 81 00 0C */ ble lbl_8022FE3C +/* 8022FE34 0022CD94 38 00 00 02 */ li r0, 2 +/* 8022FE38 0022CD98 48 00 00 08 */ b lbl_8022FE40 +lbl_8022FE3C: +/* 8022FE3C 0022CD9C 38 00 00 03 */ li r0, 3 +lbl_8022FE40: +/* 8022FE40 0022CDA0 54 00 10 3A */ slwi r0, r0, 2 +/* 8022FE44 0022CDA4 7C 9F 02 14 */ add r4, r31, r0 +/* 8022FE48 0022CDA8 80 84 03 C8 */ lwz r4, 0x3c8(r4) +/* 8022FE4C 0022CDAC 4B DF A3 0D */ bl DelAdditiveAnimation__9CAnimDataFUi +/* 8022FE50 0022CDB0 C0 02 B6 64 */ lfs f0, lbl_805AD384@sda21(r2) +/* 8022FE54 0022CDB4 D0 1F 03 E0 */ stfs f0, 0x3e0(r31) +lbl_8022FE58: +/* 8022FE58 0022CDB8 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 +/* 8022FE5C 0022CDBC CB E1 00 90 */ lfd f31, 0x90(r1) +/* 8022FE60 0022CDC0 E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 +/* 8022FE64 0022CDC4 CB C1 00 80 */ lfd f30, 0x80(r1) +/* 8022FE68 0022CDC8 E3 A1 00 78 */ psq_l f29, 120(r1), 0, qr0 +/* 8022FE6C 0022CDCC CB A1 00 70 */ lfd f29, 0x70(r1) +/* 8022FE70 0022CDD0 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 8022FE74 0022CDD4 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 8022FE78 0022CDD8 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 8022FE7C 0022CDDC 7C 08 03 A6 */ mtlr r0 +/* 8022FE80 0022CDE0 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 8022FE84 0022CDE4 4E 80 00 20 */ blr + +.global sub_8022fe88 +sub_8022fe88: +/* 8022FE88 0022CDE8 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 8022FE8C 0022CDEC 7C 08 02 A6 */ mflr r0 +/* 8022FE90 0022CDF0 80 82 B6 5C */ lwz r4, lbl_805AD37C@sda21(r2) +/* 8022FE94 0022CDF4 90 01 00 94 */ stw r0, 0x94(r1) +/* 8022FE98 0022CDF8 93 E1 00 8C */ stw r31, 0x8c(r1) +/* 8022FE9C 0022CDFC 7C 7F 1B 78 */ mr r31, r3 +/* 8022FEA0 0022CE00 38 61 00 18 */ addi r3, r1, 0x18 +/* 8022FEA4 0022CE04 4B DD 4E 15 */ bl string_l__4rstlFPCc +/* 8022FEA8 0022CE08 7F E4 FB 78 */ mr r4, r31 +/* 8022FEAC 0022CE0C 38 61 00 28 */ addi r3, r1, 0x28 +/* 8022FEB0 0022CE10 38 A1 00 18 */ addi r5, r1, 0x18 +/* 8022FEB4 0022CE14 4B E2 30 4D */ bl "GetLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8022FEB8 0022CE18 38 61 00 58 */ addi r3, r1, 0x58 +/* 8022FEBC 0022CE1C 38 81 00 28 */ addi r4, r1, 0x28 +/* 8022FEC0 0022CE20 48 0E 2C B5 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8022FEC4 0022CE24 38 61 00 18 */ addi r3, r1, 0x18 +/* 8022FEC8 0022CE28 48 10 DC 19 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8022FECC 0022CE2C C0 21 00 64 */ lfs f1, 0x64(r1) +/* 8022FED0 0022CE30 C0 01 00 74 */ lfs f0, 0x74(r1) +/* 8022FED4 0022CE34 D0 21 00 08 */ stfs f1, 8(r1) +/* 8022FED8 0022CE38 C0 3F 03 44 */ lfs f1, 0x344(r31) +/* 8022FEDC 0022CE3C D0 01 00 0C */ stfs f0, 0xc(r1) +/* 8022FEE0 0022CE40 C0 01 00 84 */ lfs f0, 0x84(r1) +/* 8022FEE4 0022CE44 80 01 00 08 */ lwz r0, 8(r1) +/* 8022FEE8 0022CE48 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 8022FEEC 0022CE4C 80 61 00 0C */ lwz r3, 0xc(r1) +/* 8022FEF0 0022CE50 90 1F 03 38 */ stw r0, 0x338(r31) +/* 8022FEF4 0022CE54 80 01 00 10 */ lwz r0, 0x10(r1) +/* 8022FEF8 0022CE58 90 7F 03 3C */ stw r3, 0x33c(r31) +/* 8022FEFC 0022CE5C 90 1F 03 40 */ stw r0, 0x340(r31) +/* 8022FF00 0022CE60 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 8022FF04 0022CE64 D0 3F 03 44 */ stfs f1, 0x344(r31) +/* 8022FF08 0022CE68 83 E1 00 8C */ lwz r31, 0x8c(r1) +/* 8022FF0C 0022CE6C 80 01 00 94 */ lwz r0, 0x94(r1) +/* 8022FF10 0022CE70 7C 08 03 A6 */ mtlr r0 +/* 8022FF14 0022CE74 38 21 00 90 */ addi r1, r1, 0x90 +/* 8022FF18 0022CE78 4E 80 00 20 */ blr + +.global sub_8022ff1c +sub_8022ff1c: +/* 8022FF1C 0022CE7C 94 21 FD 20 */ stwu r1, -0x2e0(r1) +/* 8022FF20 0022CE80 7C 08 02 A6 */ mflr r0 +/* 8022FF24 0022CE84 90 01 02 E4 */ stw r0, 0x2e4(r1) +/* 8022FF28 0022CE88 BF 41 02 C8 */ stmw r26, 0x2c8(r1) +/* 8022FF2C 0022CE8C 7C 9F 23 78 */ mr r31, r4 +/* 8022FF30 0022CE90 7C 7E 1B 78 */ mr r30, r3 +/* 8022FF34 0022CE94 80 83 00 64 */ lwz r4, 0x64(r3) +/* 8022FF38 0022CE98 38 60 00 00 */ li r3, 0 +/* 8022FF3C 0022CE9C 28 04 00 00 */ cmplwi r4, 0 +/* 8022FF40 0022CEA0 41 82 00 14 */ beq lbl_8022FF54 +/* 8022FF44 0022CEA4 80 04 00 10 */ lwz r0, 0x10(r4) +/* 8022FF48 0022CEA8 28 00 00 00 */ cmplwi r0, 0 +/* 8022FF4C 0022CEAC 41 82 00 08 */ beq lbl_8022FF54 +/* 8022FF50 0022CEB0 38 60 00 01 */ li r3, 1 +lbl_8022FF54: +/* 8022FF54 0022CEB4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8022FF58 0022CEB8 41 82 04 CC */ beq lbl_80230424 +/* 8022FF5C 0022CEBC 38 61 00 50 */ addi r3, r1, 0x50 +/* 8022FF60 0022CEC0 48 0B 31 1D */ bl NoParameter__12CPASAnimParmFv +/* 8022FF64 0022CEC4 38 61 00 58 */ addi r3, r1, 0x58 +/* 8022FF68 0022CEC8 48 0B 31 15 */ bl NoParameter__12CPASAnimParmFv +/* 8022FF6C 0022CECC 38 61 00 60 */ addi r3, r1, 0x60 +/* 8022FF70 0022CED0 48 0B 31 0D */ bl NoParameter__12CPASAnimParmFv +/* 8022FF74 0022CED4 38 61 00 68 */ addi r3, r1, 0x68 +/* 8022FF78 0022CED8 48 0B 31 05 */ bl NoParameter__12CPASAnimParmFv +/* 8022FF7C 0022CEDC 38 61 00 70 */ addi r3, r1, 0x70 +/* 8022FF80 0022CEE0 48 0B 30 FD */ bl NoParameter__12CPASAnimParmFv +/* 8022FF84 0022CEE4 38 61 00 78 */ addi r3, r1, 0x78 +/* 8022FF88 0022CEE8 48 0B 30 F5 */ bl NoParameter__12CPASAnimParmFv +/* 8022FF8C 0022CEEC 38 61 00 80 */ addi r3, r1, 0x80 +/* 8022FF90 0022CEF0 48 0B 30 ED */ bl NoParameter__12CPASAnimParmFv +/* 8022FF94 0022CEF4 38 61 00 88 */ addi r3, r1, 0x88 +/* 8022FF98 0022CEF8 48 0B 30 E5 */ bl NoParameter__12CPASAnimParmFv +/* 8022FF9C 0022CEFC 38 61 00 58 */ addi r3, r1, 0x58 +/* 8022FFA0 0022CF00 38 01 00 50 */ addi r0, r1, 0x50 +/* 8022FFA4 0022CF04 90 61 00 08 */ stw r3, 8(r1) +/* 8022FFA8 0022CF08 38 61 02 80 */ addi r3, r1, 0x280 +/* 8022FFAC 0022CF0C 38 A1 00 88 */ addi r5, r1, 0x88 +/* 8022FFB0 0022CF10 38 C1 00 80 */ addi r6, r1, 0x80 +/* 8022FFB4 0022CF14 90 01 00 0C */ stw r0, 0xc(r1) +/* 8022FFB8 0022CF18 38 E1 00 78 */ addi r7, r1, 0x78 +/* 8022FFBC 0022CF1C 39 01 00 70 */ addi r8, r1, 0x70 +/* 8022FFC0 0022CF20 39 21 00 68 */ addi r9, r1, 0x68 +/* 8022FFC4 0022CF24 39 41 00 60 */ addi r10, r1, 0x60 +/* 8022FFC8 0022CF28 38 80 00 17 */ li r4, 0x17 +/* 8022FFCC 0022CF2C 4B E4 D2 F9 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 8022FFD0 0022CF30 80 9E 00 64 */ lwz r4, 0x64(r30) +/* 8022FFD4 0022CF34 38 61 00 48 */ addi r3, r1, 0x48 +/* 8022FFD8 0022CF38 80 DF 09 00 */ lwz r6, 0x900(r31) +/* 8022FFDC 0022CF3C 38 A1 02 80 */ addi r5, r1, 0x280 +/* 8022FFE0 0022CF40 80 84 00 10 */ lwz r4, 0x10(r4) +/* 8022FFE4 0022CF44 38 E0 FF FF */ li r7, -1 +/* 8022FFE8 0022CF48 38 84 00 3C */ addi r4, r4, 0x3c +/* 8022FFEC 0022CF4C 48 0B 50 75 */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i +/* 8022FFF0 0022CF50 C0 21 00 48 */ lfs f1, 0x48(r1) +/* 8022FFF4 0022CF54 C0 02 B6 64 */ lfs f0, lbl_805AD384@sda21(r2) +/* 8022FFF8 0022CF58 80 81 00 4C */ lwz r4, 0x4c(r1) +/* 8022FFFC 0022CF5C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80230000 0022CF60 40 81 03 C8 */ ble lbl_802303C8 +/* 80230004 0022CF64 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 80230008 0022CF68 38 A0 00 00 */ li r5, 0 +/* 8023000C 0022CF6C C0 22 B6 6C */ lfs f1, lbl_805AD38C@sda21(r2) +/* 80230010 0022CF70 38 C0 00 01 */ li r6, 1 +/* 80230014 0022CF74 80 63 00 10 */ lwz r3, 0x10(r3) +/* 80230018 0022CF78 4B DF A1 B9 */ bl AddAdditiveAnimation__9CAnimDataFUifbb +/* 8023001C 0022CF7C 80 82 B6 58 */ lwz r4, lbl_805AD378@sda21(r2) +/* 80230020 0022CF80 38 61 01 10 */ addi r3, r1, 0x110 +/* 80230024 0022CF84 4B DD 4C 95 */ bl string_l__4rstlFPCc +/* 80230028 0022CF88 7F C4 F3 78 */ mr r4, r30 +/* 8023002C 0022CF8C 38 61 01 A4 */ addi r3, r1, 0x1a4 +/* 80230030 0022CF90 38 A1 01 10 */ addi r5, r1, 0x110 +/* 80230034 0022CF94 4B E2 2E CD */ bl "GetLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80230038 0022CF98 38 61 02 04 */ addi r3, r1, 0x204 +/* 8023003C 0022CF9C 38 81 01 A4 */ addi r4, r1, 0x1a4 +/* 80230040 0022CFA0 48 0E 2B 35 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80230044 0022CFA4 38 61 01 10 */ addi r3, r1, 0x110 +/* 80230048 0022CFA8 48 10 DA 99 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8023004C 0022CFAC C0 41 02 10 */ lfs f2, 0x210(r1) +/* 80230050 0022CFB0 38 61 01 04 */ addi r3, r1, 0x104 +/* 80230054 0022CFB4 C0 21 02 20 */ lfs f1, 0x220(r1) +/* 80230058 0022CFB8 38 9E 00 34 */ addi r4, r30, 0x34 +/* 8023005C 0022CFBC C0 01 02 30 */ lfs f0, 0x230(r1) +/* 80230060 0022CFC0 38 A1 00 F8 */ addi r5, r1, 0xf8 +/* 80230064 0022CFC4 D0 41 00 F8 */ stfs f2, 0xf8(r1) +/* 80230068 0022CFC8 D0 21 00 FC */ stfs f1, 0xfc(r1) +/* 8023006C 0022CFCC D0 01 01 00 */ stfs f0, 0x100(r1) +/* 80230070 0022CFD0 48 0E 2A 11 */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 80230074 0022CFD4 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 80230078 0022CFD8 3B 9E 03 18 */ addi r28, r30, 0x318 +/* 8023007C 0022CFDC C0 01 01 08 */ lfs f0, 0x108(r1) +/* 80230080 0022CFE0 7F E4 FB 78 */ mr r4, r31 +/* 80230084 0022CFE4 C0 7E 00 60 */ lfs f3, 0x60(r30) +/* 80230088 0022CFE8 38 61 00 EC */ addi r3, r1, 0xec +/* 8023008C 0022CFEC C0 41 01 0C */ lfs f2, 0x10c(r1) +/* 80230090 0022CFF0 EC 81 00 2A */ fadds f4, f1, f0 +/* 80230094 0022CFF4 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 80230098 0022CFF8 C0 01 01 04 */ lfs f0, 0x104(r1) +/* 8023009C 0022CFFC EC 43 10 2A */ fadds f2, f3, f2 +/* 802300A0 0022D000 D0 81 01 54 */ stfs f4, 0x154(r1) +/* 802300A4 0022D004 EC 01 00 2A */ fadds f0, f1, f0 +/* 802300A8 0022D008 D0 41 01 58 */ stfs f2, 0x158(r1) +/* 802300AC 0022D00C D0 01 01 50 */ stfs f0, 0x150(r1) +/* 802300B0 0022D010 C0 1E 03 20 */ lfs f0, 0x320(r30) +/* 802300B4 0022D014 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 802300B8 0022D018 C0 1E 03 18 */ lfs f0, 0x318(r30) +/* 802300BC 0022D01C D0 01 00 40 */ stfs f0, 0x40(r1) +/* 802300C0 0022D020 48 00 07 A5 */ bl sub_80230864 +/* 802300C4 0022D024 C0 41 00 EC */ lfs f2, 0xec(r1) +/* 802300C8 0022D028 7F 85 E3 78 */ mr r5, r28 +/* 802300CC 0022D02C C0 21 00 F0 */ lfs f1, 0xf0(r1) +/* 802300D0 0022D030 38 61 01 44 */ addi r3, r1, 0x144 +/* 802300D4 0022D034 C0 01 00 F4 */ lfs f0, 0xf4(r1) +/* 802300D8 0022D038 38 81 01 50 */ addi r4, r1, 0x150 +/* 802300DC 0022D03C D0 41 01 44 */ stfs f2, 0x144(r1) +/* 802300E0 0022D040 38 C1 00 44 */ addi r6, r1, 0x44 +/* 802300E4 0022D044 38 E1 00 40 */ addi r7, r1, 0x40 +/* 802300E8 0022D048 D0 21 01 48 */ stfs f1, 0x148(r1) +/* 802300EC 0022D04C D0 01 01 4C */ stfs f0, 0x14c(r1) +/* 802300F0 0022D050 48 00 05 19 */ bl sub_80230608 +/* 802300F4 0022D054 C0 21 01 4C */ lfs f1, 0x14c(r1) +/* 802300F8 0022D058 38 61 01 38 */ addi r3, r1, 0x138 +/* 802300FC 0022D05C C0 01 01 58 */ lfs f0, 0x158(r1) +/* 80230100 0022D060 C0 61 01 48 */ lfs f3, 0x148(r1) +/* 80230104 0022D064 EC 81 00 28 */ fsubs f4, f1, f0 +/* 80230108 0022D068 C0 41 01 54 */ lfs f2, 0x154(r1) +/* 8023010C 0022D06C C0 21 01 44 */ lfs f1, 0x144(r1) +/* 80230110 0022D070 C0 01 01 50 */ lfs f0, 0x150(r1) +/* 80230114 0022D074 EC 43 10 28 */ fsubs f2, f3, f2 +/* 80230118 0022D078 D0 81 01 40 */ stfs f4, 0x140(r1) +/* 8023011C 0022D07C EC 21 00 28 */ fsubs f1, f1, f0 +/* 80230120 0022D080 C0 02 B6 64 */ lfs f0, lbl_805AD384@sda21(r2) +/* 80230124 0022D084 D0 41 01 3C */ stfs f2, 0x13c(r1) +/* 80230128 0022D088 D0 21 01 38 */ stfs f1, 0x138(r1) +/* 8023012C 0022D08C D0 01 01 40 */ stfs f0, 0x140(r1) +/* 80230130 0022D090 C0 5E 00 58 */ lfs f2, 0x58(r30) +/* 80230134 0022D094 C0 3E 00 48 */ lfs f1, 0x48(r30) +/* 80230138 0022D098 C0 1E 00 38 */ lfs f0, 0x38(r30) +/* 8023013C 0022D09C D0 01 01 2C */ stfs f0, 0x12c(r1) +/* 80230140 0022D0A0 D0 21 01 30 */ stfs f1, 0x130(r1) +/* 80230144 0022D0A4 D0 41 01 34 */ stfs f2, 0x134(r1) +/* 80230148 0022D0A8 48 0E 45 B1 */ bl CanBeNormalized__9CVector3fCFv +/* 8023014C 0022D0AC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80230150 0022D0B0 41 82 00 18 */ beq lbl_80230168 +/* 80230154 0022D0B4 38 61 00 E0 */ addi r3, r1, 0xe0 +/* 80230158 0022D0B8 38 81 01 38 */ addi r4, r1, 0x138 +/* 8023015C 0022D0BC 48 0E 46 F5 */ bl AsNormalized__9CVector3fCFv +/* 80230160 0022D0C0 38 A1 00 E0 */ addi r5, r1, 0xe0 +/* 80230164 0022D0C4 48 00 00 08 */ b lbl_8023016C +lbl_80230168: +/* 80230168 0022D0C8 38 A1 01 2C */ addi r5, r1, 0x12c +lbl_8023016C: +/* 8023016C 0022D0CC C0 05 00 00 */ lfs f0, 0(r5) +/* 80230170 0022D0D0 38 61 01 2C */ addi r3, r1, 0x12c +/* 80230174 0022D0D4 38 81 01 20 */ addi r4, r1, 0x120 +/* 80230178 0022D0D8 D0 01 01 20 */ stfs f0, 0x120(r1) +/* 8023017C 0022D0DC C0 05 00 04 */ lfs f0, 4(r5) +/* 80230180 0022D0E0 D0 01 01 24 */ stfs f0, 0x124(r1) +/* 80230184 0022D0E4 C0 05 00 08 */ lfs f0, 8(r5) +/* 80230188 0022D0E8 D0 01 01 28 */ stfs f0, 0x128(r1) +/* 8023018C 0022D0EC 48 0E 44 A5 */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f +/* 80230190 0022D0F0 C0 02 B6 88 */ lfs f0, lbl_805AD3A8@sda21(r2) +/* 80230194 0022D0F4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80230198 0022D0F8 40 81 00 34 */ ble lbl_802301CC +/* 8023019C 0022D0FC D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 802301A0 0022D100 38 61 00 D4 */ addi r3, r1, 0xd4 +/* 802301A4 0022D104 38 81 01 2C */ addi r4, r1, 0x12c +/* 802301A8 0022D108 38 A1 01 20 */ addi r5, r1, 0x120 +/* 802301AC 0022D10C 38 C1 00 3C */ addi r6, r1, 0x3c +/* 802301B0 0022D110 48 0E 47 A5 */ bl Slerp__9CVector3fFRC9CVector3fRC9CVector3fRC9CRelAngle +/* 802301B4 0022D114 C0 41 00 D4 */ lfs f2, 0xd4(r1) +/* 802301B8 0022D118 C0 21 00 D8 */ lfs f1, 0xd8(r1) +/* 802301BC 0022D11C C0 01 00 DC */ lfs f0, 0xdc(r1) +/* 802301C0 0022D120 D0 41 01 20 */ stfs f2, 0x120(r1) +/* 802301C4 0022D124 D0 21 01 24 */ stfs f1, 0x124(r1) +/* 802301C8 0022D128 D0 01 01 28 */ stfs f0, 0x128(r1) +lbl_802301CC: +/* 802301CC 0022D12C C0 01 00 44 */ lfs f0, 0x44(r1) +/* 802301D0 0022D130 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 802301D4 0022D134 38 A3 66 F4 */ addi r5, r3, lbl_805A66F4@l +/* 802301D8 0022D138 38 81 01 20 */ addi r4, r1, 0x120 +/* 802301DC 0022D13C D0 01 00 38 */ stfs f0, 0x38(r1) +/* 802301E0 0022D140 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 802301E4 0022D144 38 C1 00 38 */ addi r6, r1, 0x38 +/* 802301E8 0022D148 48 0E 47 6D */ bl Slerp__9CVector3fFRC9CVector3fRC9CVector3fRC9CRelAngle +/* 802301EC 0022D14C C0 21 01 54 */ lfs f1, 0x154(r1) +/* 802301F0 0022D150 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 802301F4 0022D154 C0 01 00 CC */ lfs f0, 0xcc(r1) +/* 802301F8 0022D158 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 802301FC 0022D15C C0 61 01 58 */ lfs f3, 0x158(r1) +/* 80230200 0022D160 38 61 01 74 */ addi r3, r1, 0x174 +/* 80230204 0022D164 EC 81 00 2A */ fadds f4, f1, f0 +/* 80230208 0022D168 C0 41 00 D0 */ lfs f2, 0xd0(r1) +/* 8023020C 0022D16C C0 21 01 50 */ lfs f1, 0x150(r1) +/* 80230210 0022D170 38 81 01 50 */ addi r4, r1, 0x150 +/* 80230214 0022D174 C0 01 00 C8 */ lfs f0, 0xc8(r1) +/* 80230218 0022D178 EC 43 10 2A */ fadds f2, f3, f2 +/* 8023021C 0022D17C EC 01 00 2A */ fadds f0, f1, f0 +/* 80230220 0022D180 D0 81 00 C0 */ stfs f4, 0xc0(r1) +/* 80230224 0022D184 38 A1 00 BC */ addi r5, r1, 0xbc +/* 80230228 0022D188 D0 41 00 C4 */ stfs f2, 0xc4(r1) +/* 8023022C 0022D18C D0 01 00 BC */ stfs f0, 0xbc(r1) +/* 80230230 0022D190 48 0E 38 E1 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 80230234 0022D194 38 61 01 D4 */ addi r3, r1, 0x1d4 +/* 80230238 0022D198 38 81 01 74 */ addi r4, r1, 0x174 +/* 8023023C 0022D19C 48 0E 29 39 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80230240 0022D1A0 3C 60 80 3D */ lis r3, lbl_803D3410@ha +/* 80230244 0022D1A4 3B A0 00 00 */ li r29, 0 +/* 80230248 0022D1A8 38 63 34 10 */ addi r3, r3, lbl_803D3410@l +/* 8023024C 0022D1AC 3B 60 00 00 */ li r27, 0 +/* 80230250 0022D1B0 38 83 00 20 */ addi r4, r3, 0x20 +/* 80230254 0022D1B4 3B 40 00 00 */ li r26, 0 +/* 80230258 0022D1B8 38 60 02 B8 */ li r3, 0x2b8 +/* 8023025C 0022D1BC 38 A0 00 00 */ li r5, 0 +/* 80230260 0022D1C0 48 0E 56 0D */ bl __nw__FUlPCcPCc +/* 80230264 0022D1C4 7C 7C 1B 79 */ or. r28, r3, r3 +/* 80230268 0022D1C8 41 82 00 E0 */ beq lbl_80230348 +/* 8023026C 0022D1CC A0 1E 02 CC */ lhz r0, 0x2cc(r30) +/* 80230270 0022D1D0 38 61 02 34 */ addi r3, r1, 0x234 +/* 80230274 0022D1D4 38 81 00 A0 */ addi r4, r1, 0xa0 +/* 80230278 0022D1D8 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8023027C 0022D1DC 80 BE 00 64 */ lwz r5, 0x64(r30) +/* 80230280 0022D1E0 80 1E 03 0C */ lwz r0, 0x30c(r30) +/* 80230284 0022D1E4 C0 45 00 00 */ lfs f2, 0(r5) +/* 80230288 0022D1E8 C0 25 00 04 */ lfs f1, 4(r5) +/* 8023028C 0022D1EC C0 05 00 08 */ lfs f0, 8(r5) +/* 80230290 0022D1F0 D0 41 00 B0 */ stfs f2, 0xb0(r1) +/* 80230294 0022D1F4 D0 21 00 B4 */ stfs f1, 0xb4(r1) +/* 80230298 0022D1F8 D0 01 00 B8 */ stfs f0, 0xb8(r1) +/* 8023029C 0022D1FC 90 01 00 A0 */ stw r0, 0xa0(r1) +/* 802302A0 0022D200 D0 41 00 A4 */ stfs f2, 0xa4(r1) +/* 802302A4 0022D204 D0 21 00 A8 */ stfs f1, 0xa8(r1) +/* 802302A8 0022D208 D0 01 00 AC */ stfs f0, 0xac(r1) +/* 802302AC 0022D20C 4B EE 6A B1 */ bl __ct__10CModelDataFRC10CStaticRes +/* 802302B0 0022D210 80 0D A3 88 */ lwz r0, lbl_805A8F48@sda21(r13) +/* 802302B4 0022D214 3C 60 80 57 */ lis r3, lbl_8056D410@ha +/* 802302B8 0022D218 38 A3 D4 10 */ addi r5, r3, lbl_8056D410@l +/* 802302BC 0022D21C 38 81 00 30 */ addi r4, r1, 0x30 +/* 802302C0 0022D220 90 01 00 34 */ stw r0, 0x34(r1) +/* 802302C4 0022D224 38 61 01 5C */ addi r3, r1, 0x15c +/* 802302C8 0022D228 38 C1 00 34 */ addi r6, r1, 0x34 +/* 802302CC 0022D22C 3B A0 00 01 */ li r29, 1 +/* 802302D0 0022D230 80 1E 00 04 */ lwz r0, 4(r30) +/* 802302D4 0022D234 90 01 00 2C */ stw r0, 0x2c(r1) +/* 802302D8 0022D238 90 01 00 30 */ stw r0, 0x30(r1) +/* 802302DC 0022D23C 4B E2 11 A9 */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" +/* 802302E0 0022D240 3C 80 80 3D */ lis r4, lbl_803D3410@ha +/* 802302E4 0022D244 38 61 00 90 */ addi r3, r1, 0x90 +/* 802302E8 0022D248 38 84 34 10 */ addi r4, r4, lbl_803D3410@l +/* 802302EC 0022D24C 3B 60 00 01 */ li r27, 1 +/* 802302F0 0022D250 38 84 00 43 */ addi r4, r4, 0x43 +/* 802302F4 0022D254 4B DD 49 C5 */ bl string_l__4rstlFPCc +/* 802302F8 0022D258 7F E4 FB 78 */ mr r4, r31 +/* 802302FC 0022D25C 38 61 00 10 */ addi r3, r1, 0x10 +/* 80230300 0022D260 3B 40 00 01 */ li r26, 1 +/* 80230304 0022D264 4B E1 CD D9 */ bl AllocateUniqueId__13CStateManagerFv +/* 80230308 0022D268 A0 A1 00 10 */ lhz r5, 0x10(r1) +/* 8023030C 0022D26C 38 1E 02 D0 */ addi r0, r30, 0x2d0 +/* 80230310 0022D270 7F 83 E3 78 */ mr r3, r28 +/* 80230314 0022D274 38 81 00 14 */ addi r4, r1, 0x14 +/* 80230318 0022D278 B0 A1 00 14 */ sth r5, 0x14(r1) +/* 8023031C 0022D27C 38 A1 00 90 */ addi r5, r1, 0x90 +/* 80230320 0022D280 38 C1 01 5C */ addi r6, r1, 0x15c +/* 80230324 0022D284 38 E1 01 D4 */ addi r7, r1, 0x1d4 +/* 80230328 0022D288 90 01 00 08 */ stw r0, 8(r1) +/* 8023032C 0022D28C 39 01 02 34 */ addi r8, r1, 0x234 +/* 80230330 0022D290 39 3E 03 50 */ addi r9, r30, 0x350 +/* 80230334 0022D294 39 41 00 18 */ addi r10, r1, 0x18 +/* 80230338 0022D298 C0 21 00 40 */ lfs f1, 0x40(r1) +/* 8023033C 0022D29C C0 5E 03 F8 */ lfs f2, 0x3f8(r30) +/* 80230340 0022D2A0 4B FF EE CD */ bl __ct__14CBouncyGrenade +/* 80230344 0022D2A4 7C 7C 1B 78 */ mr r28, r3 +lbl_80230348: +/* 80230348 0022D2A8 7F 40 07 75 */ extsb. r0, r26 +/* 8023034C 0022D2AC 41 82 00 0C */ beq lbl_80230358 +/* 80230350 0022D2B0 38 61 00 90 */ addi r3, r1, 0x90 +/* 80230354 0022D2B4 48 10 D7 8D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80230358: +/* 80230358 0022D2B8 7F 60 07 75 */ extsb. r0, r27 +/* 8023035C 0022D2BC 41 82 00 44 */ beq lbl_802303A0 +/* 80230360 0022D2C0 80 01 01 64 */ lwz r0, 0x164(r1) +/* 80230364 0022D2C4 80 61 01 6C */ lwz r3, 0x16c(r1) +/* 80230368 0022D2C8 1C 00 00 0C */ mulli r0, r0, 0xc +/* 8023036C 0022D2CC 90 61 00 20 */ stw r3, 0x20(r1) +/* 80230370 0022D2D0 7C 64 1B 78 */ mr r4, r3 +/* 80230374 0022D2D4 7C 03 02 14 */ add r0, r3, r0 +/* 80230378 0022D2D8 90 61 00 1C */ stw r3, 0x1c(r1) +/* 8023037C 0022D2DC 90 01 00 28 */ stw r0, 0x28(r1) +/* 80230380 0022D2E0 90 01 00 24 */ stw r0, 0x24(r1) +/* 80230384 0022D2E4 48 00 00 08 */ b lbl_8023038C +lbl_80230388: +/* 80230388 0022D2E8 38 84 00 0C */ addi r4, r4, 0xc +lbl_8023038C: +/* 8023038C 0022D2EC 7C 04 00 40 */ cmplw r4, r0 +/* 80230390 0022D2F0 40 82 FF F8 */ bne lbl_80230388 +/* 80230394 0022D2F4 28 03 00 00 */ cmplwi r3, 0 +/* 80230398 0022D2F8 41 82 00 08 */ beq lbl_802303A0 +/* 8023039C 0022D2FC 48 0E 55 95 */ bl Free__7CMemoryFPCv +lbl_802303A0: +/* 802303A0 0022D300 7F A0 07 75 */ extsb. r0, r29 +/* 802303A4 0022D304 41 82 00 10 */ beq lbl_802303B4 +/* 802303A8 0022D308 38 61 02 34 */ addi r3, r1, 0x234 +/* 802303AC 0022D30C 38 80 FF FF */ li r4, -1 +/* 802303B0 0022D310 4B EE 66 9D */ bl __dt__10CModelDataFv +lbl_802303B4: +/* 802303B4 0022D314 28 1C 00 00 */ cmplwi r28, 0 +/* 802303B8 0022D318 41 82 00 10 */ beq lbl_802303C8 +/* 802303BC 0022D31C 7F E3 FB 78 */ mr r3, r31 +/* 802303C0 0022D320 7F 84 E3 78 */ mr r4, r28 +/* 802303C4 0022D324 4B E1 C9 31 */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +lbl_802303C8: +/* 802303C8 0022D328 34 A1 02 84 */ addic. r5, r1, 0x284 +/* 802303CC 0022D32C 41 82 00 58 */ beq lbl_80230424 +/* 802303D0 0022D330 80 C5 00 00 */ lwz r6, 0(r5) +/* 802303D4 0022D334 38 60 00 00 */ li r3, 0 +/* 802303D8 0022D338 2C 06 00 00 */ cmpwi r6, 0 +/* 802303DC 0022D33C 40 81 00 40 */ ble lbl_8023041C +/* 802303E0 0022D340 2C 06 00 08 */ cmpwi r6, 8 +/* 802303E4 0022D344 38 86 FF F8 */ addi r4, r6, -8 +/* 802303E8 0022D348 40 81 00 20 */ ble lbl_80230408 +/* 802303EC 0022D34C 38 04 00 07 */ addi r0, r4, 7 +/* 802303F0 0022D350 54 00 E8 FE */ srwi r0, r0, 3 +/* 802303F4 0022D354 7C 09 03 A6 */ mtctr r0 +/* 802303F8 0022D358 2C 04 00 00 */ cmpwi r4, 0 +/* 802303FC 0022D35C 40 81 00 0C */ ble lbl_80230408 +lbl_80230400: +/* 80230400 0022D360 38 63 00 08 */ addi r3, r3, 8 +/* 80230404 0022D364 42 00 FF FC */ bdnz lbl_80230400 +lbl_80230408: +/* 80230408 0022D368 7C 03 30 50 */ subf r0, r3, r6 +/* 8023040C 0022D36C 7C 09 03 A6 */ mtctr r0 +/* 80230410 0022D370 7C 03 30 00 */ cmpw r3, r6 +/* 80230414 0022D374 40 80 00 08 */ bge lbl_8023041C +lbl_80230418: +/* 80230418 0022D378 42 00 00 00 */ bdnz lbl_80230418 +lbl_8023041C: +/* 8023041C 0022D37C 38 00 00 00 */ li r0, 0 +/* 80230420 0022D380 90 05 00 00 */ stw r0, 0(r5) +lbl_80230424: +/* 80230424 0022D384 BB 41 02 C8 */ lmw r26, 0x2c8(r1) +/* 80230428 0022D388 80 01 02 E4 */ lwz r0, 0x2e4(r1) +/* 8023042C 0022D38C 7C 08 03 A6 */ mtlr r0 +/* 80230430 0022D390 38 21 02 E0 */ addi r1, r1, 0x2e0 +/* 80230434 0022D394 4E 80 00 20 */ blr + +.global sub_80230438 +sub_80230438: +/* 80230438 0022D398 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 8023043C 0022D39C 7C 08 02 A6 */ mflr r0 +/* 80230440 0022D3A0 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 80230444 0022D3A4 93 E1 00 CC */ stw r31, 0xcc(r1) +/* 80230448 0022D3A8 7C 7F 1B 78 */ mr r31, r3 +/* 8023044C 0022D3AC 38 60 00 00 */ li r3, 0 +/* 80230450 0022D3B0 80 9F 00 64 */ lwz r4, 0x64(r31) +/* 80230454 0022D3B4 28 04 00 00 */ cmplwi r4, 0 +/* 80230458 0022D3B8 41 82 00 14 */ beq lbl_8023046C +/* 8023045C 0022D3BC 80 04 00 10 */ lwz r0, 0x10(r4) +/* 80230460 0022D3C0 28 00 00 00 */ cmplwi r0, 0 +/* 80230464 0022D3C4 41 82 00 08 */ beq lbl_8023046C +/* 80230468 0022D3C8 38 60 00 01 */ li r3, 1 +lbl_8023046C: +/* 8023046C 0022D3CC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80230470 0022D3D0 41 82 01 84 */ beq lbl_802305F4 +/* 80230474 0022D3D4 80 1F 02 58 */ lwz r0, 0x258(r31) +/* 80230478 0022D3D8 2C 00 00 00 */ cmpwi r0, 0 +/* 8023047C 0022D3DC 41 80 01 78 */ blt lbl_802305F4 +/* 80230480 0022D3E0 2C 00 00 01 */ cmpwi r0, 1 +/* 80230484 0022D3E4 41 81 01 70 */ bgt lbl_802305F4 +/* 80230488 0022D3E8 38 61 00 18 */ addi r3, r1, 0x18 +/* 8023048C 0022D3EC 48 0B 2B F1 */ bl NoParameter__12CPASAnimParmFv +/* 80230490 0022D3F0 38 61 00 20 */ addi r3, r1, 0x20 +/* 80230494 0022D3F4 48 0B 2B E9 */ bl NoParameter__12CPASAnimParmFv +/* 80230498 0022D3F8 38 61 00 28 */ addi r3, r1, 0x28 +/* 8023049C 0022D3FC 48 0B 2B E1 */ bl NoParameter__12CPASAnimParmFv +/* 802304A0 0022D400 38 61 00 30 */ addi r3, r1, 0x30 +/* 802304A4 0022D404 48 0B 2B D9 */ bl NoParameter__12CPASAnimParmFv +/* 802304A8 0022D408 38 61 00 38 */ addi r3, r1, 0x38 +/* 802304AC 0022D40C 48 0B 2B D1 */ bl NoParameter__12CPASAnimParmFv +/* 802304B0 0022D410 38 61 00 40 */ addi r3, r1, 0x40 +/* 802304B4 0022D414 48 0B 2B C9 */ bl NoParameter__12CPASAnimParmFv +/* 802304B8 0022D418 80 1F 02 58 */ lwz r0, 0x258(r31) +/* 802304BC 0022D41C 38 82 B6 50 */ addi r4, r2, lbl_805AD370@sda21 +/* 802304C0 0022D420 38 61 00 48 */ addi r3, r1, 0x48 +/* 802304C4 0022D424 54 00 10 3A */ slwi r0, r0, 2 +/* 802304C8 0022D428 7C 84 00 2E */ lwzx r4, r4, r0 +/* 802304CC 0022D42C 48 0B 2A B9 */ bl FromEnum__12CPASAnimParmFi +/* 802304D0 0022D430 38 61 00 50 */ addi r3, r1, 0x50 +/* 802304D4 0022D434 38 80 00 00 */ li r4, 0 +/* 802304D8 0022D438 48 0B 2A AD */ bl FromEnum__12CPASAnimParmFi +/* 802304DC 0022D43C 38 61 00 20 */ addi r3, r1, 0x20 +/* 802304E0 0022D440 38 01 00 18 */ addi r0, r1, 0x18 +/* 802304E4 0022D444 90 61 00 08 */ stw r3, 8(r1) +/* 802304E8 0022D448 38 61 00 80 */ addi r3, r1, 0x80 +/* 802304EC 0022D44C 38 A1 00 50 */ addi r5, r1, 0x50 +/* 802304F0 0022D450 38 C1 00 48 */ addi r6, r1, 0x48 +/* 802304F4 0022D454 90 01 00 0C */ stw r0, 0xc(r1) +/* 802304F8 0022D458 38 E1 00 40 */ addi r7, r1, 0x40 +/* 802304FC 0022D45C 39 01 00 38 */ addi r8, r1, 0x38 +/* 80230500 0022D460 39 21 00 30 */ addi r9, r1, 0x30 +/* 80230504 0022D464 39 41 00 28 */ addi r10, r1, 0x28 +/* 80230508 0022D468 38 80 00 05 */ li r4, 5 +/* 8023050C 0022D46C 4B E4 CD B9 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 80230510 0022D470 80 9F 00 64 */ lwz r4, 0x64(r31) +/* 80230514 0022D474 38 61 00 10 */ addi r3, r1, 0x10 +/* 80230518 0022D478 38 A1 00 80 */ addi r5, r1, 0x80 +/* 8023051C 0022D47C 38 C0 FF FF */ li r6, -1 +/* 80230520 0022D480 80 84 00 10 */ lwz r4, 0x10(r4) +/* 80230524 0022D484 38 84 00 3C */ addi r4, r4, 0x3c +/* 80230528 0022D488 48 0B 4C 45 */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDatai +/* 8023052C 0022D48C C0 21 00 10 */ lfs f1, 0x10(r1) +/* 80230530 0022D490 C0 02 B6 64 */ lfs f0, lbl_805AD384@sda21(r2) +/* 80230534 0022D494 80 81 00 14 */ lwz r4, 0x14(r1) +/* 80230538 0022D498 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8023053C 0022D49C 40 81 00 5C */ ble lbl_80230598 +/* 80230540 0022D4A0 C0 02 B6 6C */ lfs f0, lbl_805AD38C@sda21(r2) +/* 80230544 0022D4A4 38 00 00 00 */ li r0, 0 +/* 80230548 0022D4A8 38 C0 FF FF */ li r6, -1 +/* 8023054C 0022D4AC 38 60 00 01 */ li r3, 1 +/* 80230550 0022D4B0 90 81 00 58 */ stw r4, 0x58(r1) +/* 80230554 0022D4B4 38 81 00 58 */ addi r4, r1, 0x58 +/* 80230558 0022D4B8 38 A0 00 00 */ li r5, 0 +/* 8023055C 0022D4BC 90 C1 00 5C */ stw r6, 0x5c(r1) +/* 80230560 0022D4C0 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 80230564 0022D4C4 98 61 00 64 */ stb r3, 0x64(r1) +/* 80230568 0022D4C8 90 01 00 68 */ stw r0, 0x68(r1) +/* 8023056C 0022D4CC 90 01 00 6C */ stw r0, 0x6c(r1) +/* 80230570 0022D4D0 98 01 00 70 */ stb r0, 0x70(r1) +/* 80230574 0022D4D4 90 01 00 74 */ stw r0, 0x74(r1) +/* 80230578 0022D4D8 90 01 00 78 */ stw r0, 0x78(r1) +/* 8023057C 0022D4DC 90 01 00 7C */ stw r0, 0x7c(r1) +/* 80230580 0022D4E0 80 7F 00 64 */ lwz r3, 0x64(r31) +/* 80230584 0022D4E4 80 63 00 10 */ lwz r3, 0x10(r3) +/* 80230588 0022D4E8 4B DF C7 F5 */ bl SetAnimation__9CAnimDataFRC18CAnimPlaybackParmsb +/* 8023058C 0022D4EC 80 7F 00 64 */ lwz r3, 0x64(r31) +/* 80230590 0022D4F0 38 80 00 01 */ li r4, 1 +/* 80230594 0022D4F4 4B EE 4F CD */ bl EnableLooping__10CModelDataFb +lbl_80230598: +/* 80230598 0022D4F8 34 A1 00 84 */ addic. r5, r1, 0x84 +/* 8023059C 0022D4FC 41 82 00 58 */ beq lbl_802305F4 +/* 802305A0 0022D500 80 C5 00 00 */ lwz r6, 0(r5) +/* 802305A4 0022D504 38 60 00 00 */ li r3, 0 +/* 802305A8 0022D508 2C 06 00 00 */ cmpwi r6, 0 +/* 802305AC 0022D50C 40 81 00 40 */ ble lbl_802305EC +/* 802305B0 0022D510 2C 06 00 08 */ cmpwi r6, 8 +/* 802305B4 0022D514 38 86 FF F8 */ addi r4, r6, -8 +/* 802305B8 0022D518 40 81 00 20 */ ble lbl_802305D8 +/* 802305BC 0022D51C 38 04 00 07 */ addi r0, r4, 7 +/* 802305C0 0022D520 54 00 E8 FE */ srwi r0, r0, 3 +/* 802305C4 0022D524 7C 09 03 A6 */ mtctr r0 +/* 802305C8 0022D528 2C 04 00 00 */ cmpwi r4, 0 +/* 802305CC 0022D52C 40 81 00 0C */ ble lbl_802305D8 +lbl_802305D0: +/* 802305D0 0022D530 38 63 00 08 */ addi r3, r3, 8 +/* 802305D4 0022D534 42 00 FF FC */ bdnz lbl_802305D0 +lbl_802305D8: +/* 802305D8 0022D538 7C 03 30 50 */ subf r0, r3, r6 +/* 802305DC 0022D53C 7C 09 03 A6 */ mtctr r0 +/* 802305E0 0022D540 7C 03 30 00 */ cmpw r3, r6 +/* 802305E4 0022D544 40 80 00 08 */ bge lbl_802305EC +lbl_802305E8: +/* 802305E8 0022D548 42 00 00 00 */ bdnz lbl_802305E8 +lbl_802305EC: +/* 802305EC 0022D54C 38 00 00 00 */ li r0, 0 +/* 802305F0 0022D550 90 05 00 00 */ stw r0, 0(r5) +lbl_802305F4: +/* 802305F4 0022D554 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 802305F8 0022D558 83 E1 00 CC */ lwz r31, 0xcc(r1) +/* 802305FC 0022D55C 7C 08 03 A6 */ mtlr r0 +/* 80230600 0022D560 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 80230604 0022D564 4E 80 00 20 */ blr + +.global sub_80230608 +sub_80230608: +/* 80230608 0022D568 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 8023060C 0022D56C 7C 08 02 A6 */ mflr r0 +/* 80230610 0022D570 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 80230614 0022D574 DB E1 00 E0 */ stfd f31, 0xe0(r1) +/* 80230618 0022D578 F3 E1 00 E8 */ psq_st f31, 232(r1), 0, qr0 +/* 8023061C 0022D57C DB C1 00 D0 */ stfd f30, 0xd0(r1) +/* 80230620 0022D580 F3 C1 00 D8 */ psq_st f30, 216(r1), 0, qr0 +/* 80230624 0022D584 DB A1 00 C0 */ stfd f29, 0xc0(r1) +/* 80230628 0022D588 F3 A1 00 C8 */ psq_st f29, 200(r1), 0, qr0 +/* 8023062C 0022D58C DB 81 00 B0 */ stfd f28, 0xb0(r1) +/* 80230630 0022D590 F3 81 00 B8 */ psq_st f28, 184(r1), 0, qr0 +/* 80230634 0022D594 DB 61 00 A0 */ stfd f27, 0xa0(r1) +/* 80230638 0022D598 F3 61 00 A8 */ psq_st f27, 168(r1), 0, qr0 +/* 8023063C 0022D59C DB 41 00 90 */ stfd f26, 0x90(r1) +/* 80230640 0022D5A0 F3 41 00 98 */ psq_st f26, 152(r1), 0, qr0 +/* 80230644 0022D5A4 DB 21 00 80 */ stfd f25, 0x80(r1) +/* 80230648 0022D5A8 F3 21 00 88 */ psq_st f25, 136(r1), 0, qr0 +/* 8023064C 0022D5AC DB 01 00 70 */ stfd f24, 0x70(r1) +/* 80230650 0022D5B0 F3 01 00 78 */ psq_st f24, 120(r1), 0, qr0 +/* 80230654 0022D5B4 DA E1 00 60 */ stfd f23, 0x60(r1) +/* 80230658 0022D5B8 F2 E1 00 68 */ psq_st f23, 104(r1), 0, qr0 +/* 8023065C 0022D5BC DA C1 00 50 */ stfd f22, 0x50(r1) +/* 80230660 0022D5C0 F2 C1 00 58 */ psq_st f22, 88(r1), 0, qr0 +/* 80230664 0022D5C4 DA A1 00 40 */ stfd f21, 0x40(r1) +/* 80230668 0022D5C8 F2 A1 00 48 */ psq_st f21, 72(r1), 0, qr0 +/* 8023066C 0022D5CC DA 81 00 30 */ stfd f20, 0x30(r1) +/* 80230670 0022D5D0 F2 81 00 38 */ psq_st f20, 56(r1), 0, qr0 +/* 80230674 0022D5D4 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80230678 0022D5D8 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8023067C 0022D5DC 93 A1 00 24 */ stw r29, 0x24(r1) +/* 80230680 0022D5E0 7C BD 2B 78 */ mr r29, r5 +/* 80230684 0022D5E4 C0 42 B6 90 */ lfs f2, lbl_805AD3B0@sda21(r2) +/* 80230688 0022D5E8 C0 65 00 08 */ lfs f3, 8(r5) +/* 8023068C 0022D5EC 7C 68 1B 78 */ mr r8, r3 +/* 80230690 0022D5F0 C0 25 00 0C */ lfs f1, 0xc(r5) +/* 80230694 0022D5F4 7C DE 33 78 */ mr r30, r6 +/* 80230698 0022D5F8 C0 0D 95 F0 */ lfs f0, lbl_805A81B0@sda21(r13) +/* 8023069C 0022D5FC FF 80 18 90 */ fmr f28, f3 +/* 802306A0 0022D600 EC 21 18 28 */ fsubs f1, f1, f3 +/* 802306A4 0022D604 C3 65 00 00 */ lfs f27, 0(r5) +/* 802306A8 0022D608 C3 42 B6 8C */ lfs f26, lbl_805AD3AC@sda21(r2) +/* 802306AC 0022D60C 7C FF 3B 78 */ mr r31, r7 +/* 802306B0 0022D610 EC 22 00 72 */ fmuls f1, f2, f1 +/* 802306B4 0022D614 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 802306B8 0022D618 D0 21 00 08 */ stfs f1, 8(r1) +/* 802306BC 0022D61C 40 80 00 0C */ bge lbl_802306C8 +/* 802306C0 0022D620 38 A1 00 08 */ addi r5, r1, 8 +/* 802306C4 0022D624 48 00 00 08 */ b lbl_802306CC +lbl_802306C8: +/* 802306C8 0022D628 38 AD 95 F0 */ addi r5, r13, lbl_805A81B0@sda21 +lbl_802306CC: +/* 802306CC 0022D62C C0 48 00 08 */ lfs f2, 8(r8) +/* 802306D0 0022D630 38 61 00 0C */ addi r3, r1, 0xc +/* 802306D4 0022D634 C0 04 00 08 */ lfs f0, 8(r4) +/* 802306D8 0022D638 C0 68 00 00 */ lfs f3, 0(r8) +/* 802306DC 0022D63C C0 24 00 00 */ lfs f1, 0(r4) +/* 802306E0 0022D640 EF C2 00 28 */ fsubs f30, f2, f0 +/* 802306E4 0022D644 C0 48 00 04 */ lfs f2, 4(r8) +/* 802306E8 0022D648 C0 04 00 04 */ lfs f0, 4(r4) +/* 802306EC 0022D64C EC 23 08 28 */ fsubs f1, f3, f1 +/* 802306F0 0022D650 C3 25 00 00 */ lfs f25, 0(r5) +/* 802306F4 0022D654 EC 42 00 28 */ fsubs f2, f2, f0 +/* 802306F8 0022D658 48 0E 3B 09 */ bl __ct__9CVector2fFff +/* 802306FC 0022D65C C0 21 00 0C */ lfs f1, 0xc(r1) +/* 80230700 0022D660 38 61 00 14 */ addi r3, r1, 0x14 +/* 80230704 0022D664 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 80230708 0022D668 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 8023070C 0022D66C D0 01 00 18 */ stfs f0, 0x18(r1) +/* 80230710 0022D670 48 0E 39 E5 */ bl Magnitude__9CVector2fCFv +/* 80230714 0022D674 C0 42 B6 94 */ lfs f2, lbl_805AD3B4@sda21(r2) +/* 80230718 0022D678 FF E0 08 90 */ fmr f31, f1 +/* 8023071C 0022D67C C0 02 96 A0 */ lfs f0, lbl_805AB3C0@sda21(r2) +/* 80230720 0022D680 C0 3D 00 00 */ lfs f1, 0(r29) +/* 80230724 0022D684 EC 02 00 32 */ fmuls f0, f2, f0 +/* 80230728 0022D688 C0 5D 00 04 */ lfs f2, 4(r29) +/* 8023072C 0022D68C EF 01 00 72 */ fmuls f24, f1, f1 +/* 80230730 0022D690 C2 DD 00 08 */ lfs f22, 8(r29) +/* 80230734 0022D694 EE E2 00 B2 */ fmuls f23, f2, f2 +/* 80230738 0022D698 C2 A2 B6 98 */ lfs f21, lbl_805AD3B8@sda21(r2) +/* 8023073C 0022D69C EC 00 07 F2 */ fmuls f0, f0, f31 +/* 80230740 0022D6A0 EF BF 00 32 */ fmuls f29, f31, f0 +/* 80230744 0022D6A4 48 00 00 8C */ b lbl_802307D0 +lbl_80230748: +/* 80230748 0022D6A8 FC 20 B0 90 */ fmr f1, f22 +/* 8023074C 0022D6AC 48 0E 45 F9 */ bl FastCosR__5CMathFf +/* 80230750 0022D6B0 FE 80 08 90 */ fmr f20, f1 +/* 80230754 0022D6B4 FC 20 B0 90 */ fmr f1, f22 +/* 80230758 0022D6B8 48 0E 46 99 */ bl FastSinR__5CMathFf +/* 8023075C 0022D6BC EC 14 05 32 */ fmuls f0, f20, f20 +/* 80230760 0022D6C0 EC 34 00 72 */ fmuls f1, f20, f1 +/* 80230764 0022D6C4 EC 1E 00 32 */ fmuls f0, f30, f0 +/* 80230768 0022D6C8 EC 1F 00 78 */ fmsubs f0, f31, f1, f0 +/* 8023076C 0022D6CC FC 00 A8 40 */ fcmpo cr0, f0, f21 +/* 80230770 0022D6D0 40 81 00 5C */ ble lbl_802307CC +/* 80230774 0022D6D4 EC 3D 00 24 */ fdivs f1, f29, f0 +/* 80230778 0022D6D8 FC 01 C0 40 */ fcmpo cr0, f1, f24 +/* 8023077C 0022D6DC 4C 41 13 82 */ cror 2, 1, 2 +/* 80230780 0022D6E0 40 82 00 20 */ bne lbl_802307A0 +/* 80230784 0022D6E4 FC 01 B8 40 */ fcmpo cr0, f1, f23 +/* 80230788 0022D6E8 4C 40 13 82 */ cror 2, 0, 2 +/* 8023078C 0022D6EC 40 82 00 14 */ bne lbl_802307A0 +/* 80230790 0022D6F0 FF 80 B0 90 */ fmr f28, f22 +/* 80230794 0022D6F4 48 0E 4D 6D */ bl SqrtF__5CMathFf +/* 80230798 0022D6F8 FF 60 08 90 */ fmr f27, f1 +/* 8023079C 0022D6FC 48 00 00 44 */ b lbl_802307E0 +lbl_802307A0: +/* 802307A0 0022D700 FC 01 B8 40 */ fcmpo cr0, f1, f23 +/* 802307A4 0022D704 40 81 00 0C */ ble lbl_802307B0 +/* 802307A8 0022D708 EE 81 B8 28 */ fsubs f20, f1, f23 +/* 802307AC 0022D70C 48 00 00 08 */ b lbl_802307B4 +lbl_802307B0: +/* 802307B0 0022D710 EE 98 08 28 */ fsubs f20, f24, f1 +lbl_802307B4: +/* 802307B4 0022D714 FC 14 D0 40 */ fcmpo cr0, f20, f26 +/* 802307B8 0022D718 40 80 00 14 */ bge lbl_802307CC +/* 802307BC 0022D71C FF 80 B0 90 */ fmr f28, f22 +/* 802307C0 0022D720 48 0E 4D 41 */ bl SqrtF__5CMathFf +/* 802307C4 0022D724 FF 40 A0 90 */ fmr f26, f20 +/* 802307C8 0022D728 FF 60 08 90 */ fmr f27, f1 +lbl_802307CC: +/* 802307CC 0022D72C EE D6 C8 2A */ fadds f22, f22, f25 +lbl_802307D0: +/* 802307D0 0022D730 C0 1D 00 0C */ lfs f0, 0xc(r29) +/* 802307D4 0022D734 FC 16 00 40 */ fcmpo cr0, f22, f0 +/* 802307D8 0022D738 4C 40 13 82 */ cror 2, 0, 2 +/* 802307DC 0022D73C 41 82 FF 6C */ beq lbl_80230748 +lbl_802307E0: +/* 802307E0 0022D740 D3 9E 00 00 */ stfs f28, 0(r30) +/* 802307E4 0022D744 D3 7F 00 00 */ stfs f27, 0(r31) +/* 802307E8 0022D748 E3 E1 00 E8 */ psq_l f31, 232(r1), 0, qr0 +/* 802307EC 0022D74C CB E1 00 E0 */ lfd f31, 0xe0(r1) +/* 802307F0 0022D750 E3 C1 00 D8 */ psq_l f30, 216(r1), 0, qr0 +/* 802307F4 0022D754 CB C1 00 D0 */ lfd f30, 0xd0(r1) +/* 802307F8 0022D758 E3 A1 00 C8 */ psq_l f29, 200(r1), 0, qr0 +/* 802307FC 0022D75C CB A1 00 C0 */ lfd f29, 0xc0(r1) +/* 80230800 0022D760 E3 81 00 B8 */ psq_l f28, 184(r1), 0, qr0 +/* 80230804 0022D764 CB 81 00 B0 */ lfd f28, 0xb0(r1) +/* 80230808 0022D768 E3 61 00 A8 */ psq_l f27, 168(r1), 0, qr0 +/* 8023080C 0022D76C CB 61 00 A0 */ lfd f27, 0xa0(r1) +/* 80230810 0022D770 E3 41 00 98 */ psq_l f26, 152(r1), 0, qr0 +/* 80230814 0022D774 CB 41 00 90 */ lfd f26, 0x90(r1) +/* 80230818 0022D778 E3 21 00 88 */ psq_l f25, 136(r1), 0, qr0 +/* 8023081C 0022D77C CB 21 00 80 */ lfd f25, 0x80(r1) +/* 80230820 0022D780 E3 01 00 78 */ psq_l f24, 120(r1), 0, qr0 +/* 80230824 0022D784 CB 01 00 70 */ lfd f24, 0x70(r1) +/* 80230828 0022D788 E2 E1 00 68 */ psq_l f23, 104(r1), 0, qr0 +/* 8023082C 0022D78C CA E1 00 60 */ lfd f23, 0x60(r1) +/* 80230830 0022D790 E2 C1 00 58 */ psq_l f22, 88(r1), 0, qr0 +/* 80230834 0022D794 CA C1 00 50 */ lfd f22, 0x50(r1) +/* 80230838 0022D798 E2 A1 00 48 */ psq_l f21, 72(r1), 0, qr0 +/* 8023083C 0022D79C CA A1 00 40 */ lfd f21, 0x40(r1) +/* 80230840 0022D7A0 E2 81 00 38 */ psq_l f20, 56(r1), 0, qr0 +/* 80230844 0022D7A4 CA 81 00 30 */ lfd f20, 0x30(r1) +/* 80230848 0022D7A8 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8023084C 0022D7AC 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80230850 0022D7B0 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 80230854 0022D7B4 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 80230858 0022D7B8 7C 08 03 A6 */ mtlr r0 +/* 8023085C 0022D7BC 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 80230860 0022D7C0 4E 80 00 20 */ blr + +.global sub_80230864 +sub_80230864: +/* 80230864 0022D7C4 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80230868 0022D7C8 7C 08 02 A6 */ mflr r0 +/* 8023086C 0022D7CC 90 01 00 54 */ stw r0, 0x54(r1) +/* 80230870 0022D7D0 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 80230874 0022D7D4 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 80230878 0022D7D8 DB C1 00 30 */ stfd f30, 0x30(r1) +/* 8023087C 0022D7DC F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 +/* 80230880 0022D7E0 DB A1 00 20 */ stfd f29, 0x20(r1) +/* 80230884 0022D7E4 F3 A1 00 28 */ psq_st f29, 40(r1), 0, qr0 +/* 80230888 0022D7E8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8023088C 0022D7EC 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80230890 0022D7F0 7C 9F 23 78 */ mr r31, r4 +/* 80230894 0022D7F4 7C 7E 1B 78 */ mr r30, r3 +/* 80230898 0022D7F8 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 8023089C 0022D7FC 7F E5 FB 78 */ mr r5, r31 +/* 802308A0 0022D800 38 61 00 08 */ addi r3, r1, 8 +/* 802308A4 0022D804 C0 22 B6 6C */ lfs f1, lbl_805AD38C@sda21(r2) +/* 802308A8 0022D808 81 84 00 00 */ lwz r12, 0(r4) +/* 802308AC 0022D80C 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 802308B0 0022D810 7D 89 03 A6 */ mtctr r12 +/* 802308B4 0022D814 4E 80 04 21 */ bctrl +/* 802308B8 0022D818 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 802308BC 0022D81C C3 E1 00 08 */ lfs f31, 8(r1) +/* 802308C0 0022D820 80 03 02 F8 */ lwz r0, 0x2f8(r3) +/* 802308C4 0022D824 C3 C1 00 0C */ lfs f30, 0xc(r1) +/* 802308C8 0022D828 2C 00 00 00 */ cmpwi r0, 0 +/* 802308CC 0022D82C C3 A1 00 10 */ lfs f29, 0x10(r1) +/* 802308D0 0022D830 40 82 00 20 */ bne lbl_802308F0 +/* 802308D4 0022D834 48 05 45 0D */ bl GetEyeHeight__7CPlayerCFv +/* 802308D8 0022D838 C0 42 B6 94 */ lfs f2, lbl_805AD3B4@sda21(r2) +/* 802308DC 0022D83C C0 02 B6 64 */ lfs f0, lbl_805AD384@sda21(r2) +/* 802308E0 0022D840 EC 22 00 72 */ fmuls f1, f2, f1 +/* 802308E4 0022D844 EF FF 00 28 */ fsubs f31, f31, f0 +/* 802308E8 0022D848 EF DE 00 28 */ fsubs f30, f30, f0 +/* 802308EC 0022D84C EF BD 08 28 */ fsubs f29, f29, f1 +lbl_802308F0: +/* 802308F0 0022D850 D3 FE 00 00 */ stfs f31, 0(r30) +/* 802308F4 0022D854 D3 DE 00 04 */ stfs f30, 4(r30) +/* 802308F8 0022D858 D3 BE 00 08 */ stfs f29, 8(r30) +/* 802308FC 0022D85C E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 80230900 0022D860 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 80230904 0022D864 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 +/* 80230908 0022D868 CB C1 00 30 */ lfd f30, 0x30(r1) +/* 8023090C 0022D86C E3 A1 00 28 */ psq_l f29, 40(r1), 0, qr0 +/* 80230910 0022D870 CB A1 00 20 */ lfd f29, 0x20(r1) +/* 80230914 0022D874 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80230918 0022D878 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8023091C 0022D87C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80230920 0022D880 7C 08 03 A6 */ mtlr r0 +/* 80230924 0022D884 38 21 00 50 */ addi r1, r1, 0x50 +/* 80230928 0022D888 4E 80 00 20 */ blr + +.global GetCollisionPrimitive__16CGrenadeLauncherCFv +GetCollisionPrimitive__16CGrenadeLauncherCFv: +/* 8023092C 0022D88C 38 63 03 28 */ addi r3, r3, 0x328 +/* 80230930 0022D890 4E 80 00 20 */ blr + +.global GetTouchBounds__16CGrenadeLauncherCFv +GetTouchBounds__16CGrenadeLauncherCFv: +/* 80230934 0022D894 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80230938 0022D898 7C 08 02 A6 */ mflr r0 +/* 8023093C 0022D89C 7C 85 23 78 */ mr r5, r4 +/* 80230940 0022D8A0 90 01 00 34 */ stw r0, 0x34(r1) +/* 80230944 0022D8A4 38 85 03 28 */ addi r4, r5, 0x328 +/* 80230948 0022D8A8 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8023094C 0022D8AC 7C 7F 1B 78 */ mr r31, r3 +/* 80230950 0022D8B0 38 61 00 08 */ addi r3, r1, 8 +/* 80230954 0022D8B4 81 85 03 28 */ lwz r12, 0x328(r5) +/* 80230958 0022D8B8 38 A5 00 34 */ addi r5, r5, 0x34 +/* 8023095C 0022D8BC 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 80230960 0022D8C0 7D 89 03 A6 */ mtctr r12 +/* 80230964 0022D8C4 4E 80 04 21 */ bctrl +/* 80230968 0022D8C8 38 00 00 01 */ li r0, 1 +/* 8023096C 0022D8CC 28 1F 00 00 */ cmplwi r31, 0 +/* 80230970 0022D8D0 98 1F 00 18 */ stb r0, 0x18(r31) +/* 80230974 0022D8D4 41 82 00 34 */ beq lbl_802309A8 +/* 80230978 0022D8D8 C0 01 00 08 */ lfs f0, 8(r1) +/* 8023097C 0022D8DC D0 1F 00 00 */ stfs f0, 0(r31) +/* 80230980 0022D8E0 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 80230984 0022D8E4 D0 1F 00 04 */ stfs f0, 4(r31) +/* 80230988 0022D8E8 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 8023098C 0022D8EC D0 1F 00 08 */ stfs f0, 8(r31) +/* 80230990 0022D8F0 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 80230994 0022D8F4 D0 1F 00 0C */ stfs f0, 0xc(r31) +/* 80230998 0022D8F8 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 8023099C 0022D8FC D0 1F 00 10 */ stfs f0, 0x10(r31) +/* 802309A0 0022D900 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 802309A4 0022D904 D0 1F 00 14 */ stfs f0, 0x14(r31) +lbl_802309A8: +/* 802309A8 0022D908 80 01 00 34 */ lwz r0, 0x34(r1) +/* 802309AC 0022D90C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 802309B0 0022D910 7C 08 03 A6 */ mtlr r0 +/* 802309B4 0022D914 38 21 00 30 */ addi r1, r1, 0x30 +/* 802309B8 0022D918 4E 80 00 20 */ blr + +.global Touch__16CGrenadeLauncherFR6CActorR13CStateManager +Touch__16CGrenadeLauncherFR6CActorR13CStateManager: +/* 802309BC 0022D91C 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 802309C0 0022D920 7C 08 02 A6 */ mflr r0 +/* 802309C4 0022D924 90 01 00 44 */ stw r0, 0x44(r1) +/* 802309C8 0022D928 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 802309CC 0022D92C 93 C1 00 38 */ stw r30, 0x38(r1) +/* 802309D0 0022D930 7C BE 2B 78 */ mr r30, r5 +/* 802309D4 0022D934 93 A1 00 34 */ stw r29, 0x34(r1) +/* 802309D8 0022D938 7C 7D 1B 78 */ mr r29, r3 +/* 802309DC 0022D93C 38 61 00 14 */ addi r3, r1, 0x14 +/* 802309E0 0022D940 4B E7 CD 99 */ bl "__ct__29TCastToPtr<15CGameProjectile>FR7CEntity" +/* 802309E4 0022D944 83 E3 00 04 */ lwz r31, 4(r3) +/* 802309E8 0022D948 28 1F 00 00 */ cmplwi r31, 0 +/* 802309EC 0022D94C 41 82 00 B0 */ beq lbl_80230A9C +/* 802309F0 0022D950 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 802309F4 0022D954 A0 9F 00 EC */ lhz r4, 0xec(r31) +/* 802309F8 0022D958 A0 03 00 08 */ lhz r0, 8(r3) +/* 802309FC 0022D95C 7C 04 00 40 */ cmplw r4, r0 +/* 80230A00 0022D960 40 82 00 9C */ bne lbl_80230A9C +/* 80230A04 0022D964 7F A3 EB 78 */ mr r3, r29 +/* 80230A08 0022D968 81 9D 00 00 */ lwz r12, 0(r29) +/* 80230A0C 0022D96C 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 80230A10 0022D970 7D 89 03 A6 */ mtctr r12 +/* 80230A14 0022D974 4E 80 04 21 */ bctrl +/* 80230A18 0022D978 80 9F 00 F0 */ lwz r4, 0xf0(r31) +/* 80230A1C 0022D97C 38 E0 00 00 */ li r7, 0 +/* 80230A20 0022D980 88 01 00 20 */ lbz r0, 0x20(r1) +/* 80230A24 0022D984 50 E0 3E 30 */ rlwimi r0, r7, 7, 0x18, 0x18 +/* 80230A28 0022D988 90 81 00 1C */ stw r4, 0x1c(r1) +/* 80230A2C 0022D98C 38 81 00 1C */ addi r4, r1, 0x1c +/* 80230A30 0022D990 54 06 06 3E */ clrlwi r6, r0, 0x18 +/* 80230A34 0022D994 38 A0 00 00 */ li r5, 0 +/* 80230A38 0022D998 50 E6 36 72 */ rlwimi r6, r7, 6, 0x19, 0x19 +/* 80230A3C 0022D99C 98 01 00 20 */ stb r0, 0x20(r1) +/* 80230A40 0022D9A0 54 C0 06 3E */ clrlwi r0, r6, 0x18 +/* 80230A44 0022D9A4 98 C1 00 20 */ stb r6, 0x20(r1) +/* 80230A48 0022D9A8 50 E0 2E B4 */ rlwimi r0, r7, 5, 0x1a, 0x1a +/* 80230A4C 0022D9AC 98 01 00 20 */ stb r0, 0x20(r1) +/* 80230A50 0022D9B0 4B ED 1C B9 */ bl WeaponHurts__20CDamageVulnerabilityCFRC11CWeaponMode +/* 80230A54 0022D9B4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80230A58 0022D9B8 41 82 00 44 */ beq lbl_80230A9C +/* 80230A5C 0022D9BC C0 02 B6 94 */ lfs f0, lbl_805AD3B4@sda21(r2) +/* 80230A60 0022D9C0 7F C3 F3 78 */ mr r3, r30 +/* 80230A64 0022D9C4 38 81 00 10 */ addi r4, r1, 0x10 +/* 80230A68 0022D9C8 D0 1D 03 48 */ stfs f0, 0x348(r29) +/* 80230A6C 0022D9CC A0 1D 02 CC */ lhz r0, 0x2cc(r29) +/* 80230A70 0022D9D0 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80230A74 0022D9D4 4B E1 BB 01 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80230A78 0022D9D8 7C 64 1B 79 */ or. r4, r3, r3 +/* 80230A7C 0022D9DC 41 82 00 20 */ beq lbl_80230A9C +/* 80230A80 0022D9E0 A0 1D 00 08 */ lhz r0, 8(r29) +/* 80230A84 0022D9E4 7F C3 F3 78 */ mr r3, r30 +/* 80230A88 0022D9E8 38 A1 00 0C */ addi r5, r1, 0xc +/* 80230A8C 0022D9EC 38 C0 00 1E */ li r6, 0x1e +/* 80230A90 0022D9F0 B0 01 00 08 */ sth r0, 8(r1) +/* 80230A94 0022D9F4 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80230A98 0022D9F8 4B E1 34 39 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +lbl_80230A9C: +/* 80230A9C 0022D9FC 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80230AA0 0022DA00 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 80230AA4 0022DA04 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 80230AA8 0022DA08 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 80230AAC 0022DA0C 7C 08 03 A6 */ mtlr r0 +/* 80230AB0 0022DA10 38 21 00 40 */ addi r1, r1, 0x40 +/* 80230AB4 0022DA14 4E 80 00 20 */ blr + +.global AddToRenderer__16CGrenadeLauncherCFRC14CFrustumPlanesRC13CStateManager +AddToRenderer__16CGrenadeLauncherCFRC14CFrustumPlanesRC13CStateManager: +/* 80230AB8 0022DA18 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80230ABC 0022DA1C 7C 08 02 A6 */ mflr r0 +/* 80230AC0 0022DA20 90 01 00 14 */ stw r0, 0x14(r1) +/* 80230AC4 0022DA24 4B E2 40 75 */ bl AddToRenderer__6CActorCFRC14CFrustumPlanesRC13CStateManager +/* 80230AC8 0022DA28 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80230ACC 0022DA2C 7C 08 03 A6 */ mtlr r0 +/* 80230AD0 0022DA30 38 21 00 10 */ addi r1, r1, 0x10 +/* 80230AD4 0022DA34 4E 80 00 20 */ blr + +.global PreRender__16CGrenadeLauncherFR13CStateManagerRC14CFrustumPlanes +PreRender__16CGrenadeLauncherFR13CStateManagerRC14CFrustumPlanes: +/* 80230AD8 0022DA38 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80230ADC 0022DA3C 7C 08 02 A6 */ mflr r0 +/* 80230AE0 0022DA40 90 01 00 24 */ stw r0, 0x24(r1) +/* 80230AE4 0022DA44 88 03 03 F7 */ lbz r0, 0x3f7(r3) +/* 80230AE8 0022DA48 28 00 00 FF */ cmplwi r0, 0xff +/* 80230AEC 0022DA4C 40 82 00 48 */ bne lbl_80230B34 +/* 80230AF0 0022DA50 88 03 03 F4 */ lbz r0, 0x3f4(r3) +/* 80230AF4 0022DA54 39 00 00 FF */ li r8, 0xff +/* 80230AF8 0022DA58 89 43 03 F5 */ lbz r10, 0x3f5(r3) +/* 80230AFC 0022DA5C 38 E0 00 02 */ li r7, 2 +/* 80230B00 0022DA60 89 23 03 F6 */ lbz r9, 0x3f6(r3) +/* 80230B04 0022DA64 38 C0 00 00 */ li r6, 0 +/* 80230B08 0022DA68 98 01 00 08 */ stb r0, 8(r1) +/* 80230B0C 0022DA6C 38 00 00 03 */ li r0, 3 +/* 80230B10 0022DA70 98 E3 00 B4 */ stb r7, 0xb4(r3) +/* 80230B14 0022DA74 98 C3 00 B5 */ stb r6, 0xb5(r3) +/* 80230B18 0022DA78 99 41 00 09 */ stb r10, 9(r1) +/* 80230B1C 0022DA7C 99 21 00 0A */ stb r9, 0xa(r1) +/* 80230B20 0022DA80 99 01 00 0B */ stb r8, 0xb(r1) +/* 80230B24 0022DA84 B0 03 00 B6 */ sth r0, 0xb6(r3) +/* 80230B28 0022DA88 80 01 00 08 */ lwz r0, 8(r1) +/* 80230B2C 0022DA8C 90 03 00 B8 */ stw r0, 0xb8(r3) +/* 80230B30 0022DA90 48 00 00 3C */ b lbl_80230B6C +lbl_80230B34: +/* 80230B34 0022DA94 80 C3 03 F4 */ lwz r6, 0x3f4(r3) +/* 80230B38 0022DA98 39 20 00 05 */ li r9, 5 +/* 80230B3C 0022DA9C 38 E0 00 03 */ li r7, 3 +/* 80230B40 0022DAA0 39 00 00 00 */ li r8, 0 +/* 80230B44 0022DAA4 99 23 00 B4 */ stb r9, 0xb4(r3) +/* 80230B48 0022DAA8 54 E0 00 3A */ rlwinm r0, r7, 0, 0, 0x1d +/* 80230B4C 0022DAAC 60 00 00 03 */ ori r0, r0, 3 +/* 80230B50 0022DAB0 99 03 00 B5 */ stb r8, 0xb5(r3) +/* 80230B54 0022DAB4 B0 03 00 B6 */ sth r0, 0xb6(r3) +/* 80230B58 0022DAB8 99 21 00 0C */ stb r9, 0xc(r1) +/* 80230B5C 0022DABC 99 01 00 0D */ stb r8, 0xd(r1) +/* 80230B60 0022DAC0 B0 E1 00 0E */ sth r7, 0xe(r1) +/* 80230B64 0022DAC4 90 C1 00 10 */ stw r6, 0x10(r1) +/* 80230B68 0022DAC8 90 C3 00 B8 */ stw r6, 0xb8(r3) +lbl_80230B6C: +/* 80230B6C 0022DACC 4B E2 41 75 */ bl PreRender__6CActorFR13CStateManagerRC14CFrustumPlanes +/* 80230B70 0022DAD0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80230B74 0022DAD4 7C 08 03 A6 */ mtlr r0 +/* 80230B78 0022DAD8 38 21 00 20 */ addi r1, r1, 0x20 +/* 80230B7C 0022DADC 4E 80 00 20 */ blr + +.global Render__16CGrenadeLauncherCFRC13CStateManager +Render__16CGrenadeLauncherCFRC13CStateManager: +/* 80230B80 0022DAE0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80230B84 0022DAE4 7C 08 02 A6 */ mflr r0 +/* 80230B88 0022DAE8 90 01 00 14 */ stw r0, 0x14(r1) +/* 80230B8C 0022DAEC 88 03 03 FD */ lbz r0, 0x3fd(r3) +/* 80230B90 0022DAF0 28 00 00 00 */ cmplwi r0, 0 +/* 80230B94 0022DAF4 41 82 00 08 */ beq lbl_80230B9C +/* 80230B98 0022DAF8 4B EE 99 51 */ bl Render__13CPhysicsActorCFRC13CStateManager +lbl_80230B9C: +/* 80230B9C 0022DAFC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80230BA0 0022DB00 7C 08 03 A6 */ mtlr r0 +/* 80230BA4 0022DB04 38 21 00 10 */ addi r1, r1, 0x10 +/* 80230BA8 0022DB08 4E 80 00 20 */ blr + +.global Accept__16CGrenadeLauncherFR8IVisitor +Accept__16CGrenadeLauncherFR8IVisitor: +/* 80230BAC 0022DB0C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80230BB0 0022DB10 7C 08 02 A6 */ mflr r0 +/* 80230BB4 0022DB14 90 01 00 14 */ stw r0, 0x14(r1) +/* 80230BB8 0022DB18 7C 60 1B 78 */ mr r0, r3 +/* 80230BBC 0022DB1C 7C 83 23 78 */ mr r3, r4 +/* 80230BC0 0022DB20 81 84 00 00 */ lwz r12, 0(r4) +/* 80230BC4 0022DB24 7C 04 03 78 */ mr r4, r0 +/* 80230BC8 0022DB28 81 8C 00 50 */ lwz r12, 0x50(r12) +/* 80230BCC 0022DB2C 7D 89 03 A6 */ mtctr r12 +/* 80230BD0 0022DB30 4E 80 04 21 */ bctrl +/* 80230BD4 0022DB34 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80230BD8 0022DB38 7C 08 03 A6 */ mtlr r0 +/* 80230BDC 0022DB3C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80230BE0 0022DB40 4E 80 00 20 */ blr + +.global AcceptScriptMsg__16CGrenadeLauncherF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__16CGrenadeLauncherF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 80230BE4 0022DB44 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80230BE8 0022DB48 7C 08 02 A6 */ mflr r0 +/* 80230BEC 0022DB4C 90 01 00 24 */ stw r0, 0x24(r1) +/* 80230BF0 0022DB50 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80230BF4 0022DB54 7C 7F 1B 78 */ mr r31, r3 +/* 80230BF8 0022DB58 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80230BFC 0022DB5C 7C BE 2B 78 */ mr r30, r5 +/* 80230C00 0022DB60 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80230C04 0022DB64 7C 9D 23 78 */ mr r29, r4 +/* 80230C08 0022DB68 A0 05 00 00 */ lhz r0, 0(r5) +/* 80230C0C 0022DB6C 38 A1 00 08 */ addi r5, r1, 8 +/* 80230C10 0022DB70 B0 01 00 08 */ sth r0, 8(r1) +/* 80230C14 0022DB74 4B E2 2A 01 */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 80230C18 0022DB78 38 1D FF F2 */ addi r0, r29, -14 +/* 80230C1C 0022DB7C 28 00 00 1B */ cmplwi r0, 0x1b +/* 80230C20 0022DB80 41 81 00 B8 */ bgt lbl_80230CD8 +/* 80230C24 0022DB84 3C 60 80 3E */ lis r3, lbl_803E7FDC@ha +/* 80230C28 0022DB88 54 00 10 3A */ slwi r0, r0, 2 +/* 80230C2C 0022DB8C 38 63 7F DC */ addi r3, r3, lbl_803E7FDC@l +/* 80230C30 0022DB90 7C 03 00 2E */ lwzx r0, r3, r0 +/* 80230C34 0022DB94 7C 09 03 A6 */ mtctr r0 +/* 80230C38 0022DB98 4E 80 04 20 */ bctr +/* 80230C3C 0022DB9C 7F E3 FB 78 */ mr r3, r31 +/* 80230C40 0022DBA0 4B FF F7 F9 */ bl sub_80230438 +/* 80230C44 0022DBA4 48 00 00 94 */ b lbl_80230CD8 +/* 80230C48 0022DBA8 A0 7E 00 00 */ lhz r3, 0(r30) +/* 80230C4C 0022DBAC A0 1F 02 CC */ lhz r0, 0x2cc(r31) +/* 80230C50 0022DBB0 7C 03 00 40 */ cmplw r3, r0 +/* 80230C54 0022DBB4 40 82 00 84 */ bne lbl_80230CD8 +/* 80230C58 0022DBB8 80 1F 02 58 */ lwz r0, 0x258(r31) +/* 80230C5C 0022DBBC 2C 00 00 01 */ cmpwi r0, 1 +/* 80230C60 0022DBC0 41 82 00 78 */ beq lbl_80230CD8 +/* 80230C64 0022DBC4 38 00 00 01 */ li r0, 1 +/* 80230C68 0022DBC8 7F E3 FB 78 */ mr r3, r31 +/* 80230C6C 0022DBCC 90 1F 02 58 */ stw r0, 0x258(r31) +/* 80230C70 0022DBD0 4B FF F7 C9 */ bl sub_80230438 +/* 80230C74 0022DBD4 48 00 00 64 */ b lbl_80230CD8 +/* 80230C78 0022DBD8 A0 7E 00 00 */ lhz r3, 0(r30) +/* 80230C7C 0022DBDC A0 1F 02 CC */ lhz r0, 0x2cc(r31) +/* 80230C80 0022DBE0 7C 03 00 40 */ cmplw r3, r0 +/* 80230C84 0022DBE4 40 82 00 54 */ bne lbl_80230CD8 +/* 80230C88 0022DBE8 80 1F 02 58 */ lwz r0, 0x258(r31) +/* 80230C8C 0022DBEC 2C 00 00 00 */ cmpwi r0, 0 +/* 80230C90 0022DBF0 41 82 00 48 */ beq lbl_80230CD8 +/* 80230C94 0022DBF4 38 00 00 00 */ li r0, 0 +/* 80230C98 0022DBF8 7F E3 FB 78 */ mr r3, r31 +/* 80230C9C 0022DBFC 90 1F 02 58 */ stw r0, 0x258(r31) +/* 80230CA0 0022DC00 4B FF F7 99 */ bl sub_80230438 +/* 80230CA4 0022DC04 48 00 00 34 */ b lbl_80230CD8 +/* 80230CA8 0022DC08 A0 7E 00 00 */ lhz r3, 0(r30) +/* 80230CAC 0022DC0C A0 1F 02 CC */ lhz r0, 0x2cc(r31) +/* 80230CB0 0022DC10 7C 03 00 40 */ cmplw r3, r0 +/* 80230CB4 0022DC14 40 82 00 24 */ bne lbl_80230CD8 +/* 80230CB8 0022DC18 80 1F 02 58 */ lwz r0, 0x258(r31) +/* 80230CBC 0022DC1C 2C 00 00 01 */ cmpwi r0, 1 +/* 80230CC0 0022DC20 40 82 00 18 */ bne lbl_80230CD8 +/* 80230CC4 0022DC24 38 00 00 01 */ li r0, 1 +/* 80230CC8 0022DC28 98 1F 03 FC */ stb r0, 0x3fc(r31) +/* 80230CCC 0022DC2C 48 00 00 0C */ b lbl_80230CD8 +/* 80230CD0 0022DC30 C0 02 B6 68 */ lfs f0, lbl_805AD388@sda21(r2) +/* 80230CD4 0022DC34 D0 1F 03 EC */ stfs f0, 0x3ec(r31) +lbl_80230CD8: +/* 80230CD8 0022DC38 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80230CDC 0022DC3C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80230CE0 0022DC40 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80230CE4 0022DC44 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80230CE8 0022DC48 7C 08 03 A6 */ mtlr r0 +/* 80230CEC 0022DC4C 38 21 00 20 */ addi r1, r1, 0x20 +/* 80230CF0 0022DC50 4E 80 00 20 */ blr + +.global Think__16CGrenadeLauncherFfR13CStateManager +Think__16CGrenadeLauncherFfR13CStateManager: +/* 80230CF4 0022DC54 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 80230CF8 0022DC58 7C 08 02 A6 */ mflr r0 +/* 80230CFC 0022DC5C 90 01 00 84 */ stw r0, 0x84(r1) +/* 80230D00 0022DC60 DB E1 00 70 */ stfd f31, 0x70(r1) +/* 80230D04 0022DC64 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 +/* 80230D08 0022DC68 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 80230D0C 0022DC6C 93 C1 00 68 */ stw r30, 0x68(r1) +/* 80230D10 0022DC70 93 A1 00 64 */ stw r29, 0x64(r1) +/* 80230D14 0022DC74 88 03 00 30 */ lbz r0, 0x30(r3) +/* 80230D18 0022DC78 FF E0 08 90 */ fmr f31, f1 +/* 80230D1C 0022DC7C 7C 7D 1B 78 */ mr r29, r3 +/* 80230D20 0022DC80 7C 9E 23 78 */ mr r30, r4 +/* 80230D24 0022DC84 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80230D28 0022DC88 41 82 01 68 */ beq lbl_80230E90 +/* 80230D2C 0022DC8C 88 1D 03 FC */ lbz r0, 0x3fc(r29) +/* 80230D30 0022DC90 28 00 00 00 */ cmplwi r0, 0 +/* 80230D34 0022DC94 41 82 00 10 */ beq lbl_80230D44 +/* 80230D38 0022DC98 4B FF F1 E5 */ bl sub_8022ff1c +/* 80230D3C 0022DC9C 38 00 00 00 */ li r0, 0 +/* 80230D40 0022DCA0 98 1D 03 FC */ stb r0, 0x3fc(r29) +lbl_80230D44: +/* 80230D44 0022DCA4 7F A3 EB 78 */ mr r3, r29 +/* 80230D48 0022DCA8 4B FF F1 41 */ bl sub_8022fe88 +/* 80230D4C 0022DCAC FC 20 F8 90 */ fmr f1, f31 +/* 80230D50 0022DCB0 7F A3 EB 78 */ mr r3, r29 +/* 80230D54 0022DCB4 4B FF EB C9 */ bl sub_8022f91c +/* 80230D58 0022DCB8 FC 20 F8 90 */ fmr f1, f31 +/* 80230D5C 0022DCBC 7F A3 EB 78 */ mr r3, r29 +/* 80230D60 0022DCC0 7F C4 F3 78 */ mr r4, r30 +/* 80230D64 0022DCC4 4B FF EC 7D */ bl sub_8022f9e0 +/* 80230D68 0022DCC8 FC 20 F8 90 */ fmr f1, f31 +/* 80230D6C 0022DCCC 7F A3 EB 78 */ mr r3, r29 +/* 80230D70 0022DCD0 4B FF E9 2D */ bl sub_8022f69c +/* 80230D74 0022DCD4 FC 20 F8 90 */ fmr f1, f31 +/* 80230D78 0022DCD8 7F A4 EB 78 */ mr r4, r29 +/* 80230D7C 0022DCDC 7F C5 F3 78 */ mr r5, r30 +/* 80230D80 0022DCE0 38 61 00 24 */ addi r3, r1, 0x24 +/* 80230D84 0022DCE4 38 C0 00 01 */ li r6, 1 +/* 80230D88 0022DCE8 4B E2 45 15 */ bl UpdateAnimation__6CActorFfR13CStateManagerb +/* 80230D8C 0022DCEC C0 E1 00 24 */ lfs f7, 0x24(r1) +/* 80230D90 0022DCF0 FC 20 F8 90 */ fmr f1, f31 +/* 80230D94 0022DCF4 C0 C1 00 28 */ lfs f6, 0x28(r1) +/* 80230D98 0022DCF8 7F A3 EB 78 */ mr r3, r29 +/* 80230D9C 0022DCFC C0 A1 00 2C */ lfs f5, 0x2c(r1) +/* 80230DA0 0022DD00 3B E1 00 4C */ addi r31, r1, 0x4c +/* 80230DA4 0022DD04 C0 81 00 30 */ lfs f4, 0x30(r1) +/* 80230DA8 0022DD08 C0 61 00 34 */ lfs f3, 0x34(r1) +/* 80230DAC 0022DD0C 38 81 00 40 */ addi r4, r1, 0x40 +/* 80230DB0 0022DD10 C0 41 00 38 */ lfs f2, 0x38(r1) +/* 80230DB4 0022DD14 C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 80230DB8 0022DD18 D0 E1 00 40 */ stfs f7, 0x40(r1) +/* 80230DBC 0022DD1C D0 C1 00 44 */ stfs f6, 0x44(r1) +/* 80230DC0 0022DD20 D0 A1 00 48 */ stfs f5, 0x48(r1) +/* 80230DC4 0022DD24 D0 81 00 4C */ stfs f4, 0x4c(r1) +/* 80230DC8 0022DD28 D0 61 00 50 */ stfs f3, 0x50(r1) +/* 80230DCC 0022DD2C D0 41 00 54 */ stfs f2, 0x54(r1) +/* 80230DD0 0022DD30 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 80230DD4 0022DD34 4B EE A0 A5 */ bl MoveToOR__13CPhysicsActorFRC9CVector3ff +/* 80230DD8 0022DD38 FC 20 F8 90 */ fmr f1, f31 +/* 80230DDC 0022DD3C 7F A3 EB 78 */ mr r3, r29 +/* 80230DE0 0022DD40 7F E4 FB 78 */ mr r4, r31 +/* 80230DE4 0022DD44 4B EE A0 31 */ bl RotateToOR__13CPhysicsActorFRC11CQuaternionf +/* 80230DE8 0022DD48 A0 1D 02 CC */ lhz r0, 0x2cc(r29) +/* 80230DEC 0022DD4C 7F C3 F3 78 */ mr r3, r30 +/* 80230DF0 0022DD50 38 81 00 18 */ addi r4, r1, 0x18 +/* 80230DF4 0022DD54 B0 01 00 18 */ sth r0, 0x18(r1) +/* 80230DF8 0022DD58 4B E1 B7 7D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80230DFC 0022DD5C 7C 64 1B 78 */ mr r4, r3 +/* 80230E00 0022DD60 38 61 00 1C */ addi r3, r1, 0x1c +/* 80230E04 0022DD64 4B E7 BC 59 */ bl "__ct__16TCastToPtr<3CAi>FP7CEntity" +/* 80230E08 0022DD68 83 E3 00 04 */ lwz r31, 4(r3) +/* 80230E0C 0022DD6C 28 1F 00 00 */ cmplwi r31, 0 +/* 80230E10 0022DD70 41 82 00 3C */ beq lbl_80230E4C +/* 80230E14 0022DD74 88 1F 04 00 */ lbz r0, 0x400(r31) +/* 80230E18 0022DD78 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80230E1C 0022DD7C 41 82 00 30 */ beq lbl_80230E4C +/* 80230E20 0022DD80 7F A3 EB 78 */ mr r3, r29 +/* 80230E24 0022DD84 7F C4 F3 78 */ mr r4, r30 +/* 80230E28 0022DD88 81 9D 00 00 */ lwz r12, 0(r29) +/* 80230E2C 0022DD8C 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80230E30 0022DD90 7D 89 03 A6 */ mtctr r12 +/* 80230E34 0022DD94 4E 80 04 21 */ bctrl +/* 80230E38 0022DD98 C0 23 00 00 */ lfs f1, 0(r3) +/* 80230E3C 0022DD9C C0 02 B6 64 */ lfs f0, lbl_805AD384@sda21(r2) +/* 80230E40 0022DDA0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80230E44 0022DDA4 4C 40 13 82 */ cror 2, 0, 2 +/* 80230E48 0022DDA8 40 82 00 48 */ bne lbl_80230E90 +lbl_80230E4C: +/* 80230E4C 0022DDAC A0 1D 00 08 */ lhz r0, 8(r29) +/* 80230E50 0022DDB0 7F C3 F3 78 */ mr r3, r30 +/* 80230E54 0022DDB4 7F E4 FB 78 */ mr r4, r31 +/* 80230E58 0022DDB8 38 A1 00 14 */ addi r5, r1, 0x14 +/* 80230E5C 0022DDBC B0 01 00 10 */ sth r0, 0x10(r1) +/* 80230E60 0022DDC0 38 C0 00 29 */ li r6, 0x29 +/* 80230E64 0022DDC4 B0 01 00 14 */ sth r0, 0x14(r1) +/* 80230E68 0022DDC8 4B E1 30 69 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +/* 80230E6C 0022DDCC 7F A3 EB 78 */ mr r3, r29 +/* 80230E70 0022DDD0 7F C4 F3 78 */ mr r4, r30 +/* 80230E74 0022DDD4 4B FF E8 FD */ bl sub_8022f770 +/* 80230E78 0022DDD8 A0 1D 00 08 */ lhz r0, 8(r29) +/* 80230E7C 0022DDDC 7F C3 F3 78 */ mr r3, r30 +/* 80230E80 0022DDE0 38 81 00 0C */ addi r4, r1, 0xc +/* 80230E84 0022DDE4 B0 01 00 08 */ sth r0, 8(r1) +/* 80230E88 0022DDE8 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80230E8C 0022DDEC 4B E1 B3 E1 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +lbl_80230E90: +/* 80230E90 0022DDF0 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 +/* 80230E94 0022DDF4 80 01 00 84 */ lwz r0, 0x84(r1) +/* 80230E98 0022DDF8 CB E1 00 70 */ lfd f31, 0x70(r1) +/* 80230E9C 0022DDFC 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 80230EA0 0022DE00 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 80230EA4 0022DE04 83 A1 00 64 */ lwz r29, 0x64(r1) +/* 80230EA8 0022DE08 7C 08 03 A6 */ mtlr r0 +/* 80230EAC 0022DE0C 38 21 00 80 */ addi r1, r1, 0x80 +/* 80230EB0 0022DE10 4E 80 00 20 */ blr + +.global __dt__16CGrenadeLauncherFv +__dt__16CGrenadeLauncherFv: +/* 80230EB4 0022DE14 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80230EB8 0022DE18 7C 08 02 A6 */ mflr r0 +/* 80230EBC 0022DE1C 90 01 00 14 */ stw r0, 0x14(r1) +/* 80230EC0 0022DE20 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80230EC4 0022DE24 7C 9F 23 78 */ mr r31, r4 +/* 80230EC8 0022DE28 93 C1 00 08 */ stw r30, 8(r1) +/* 80230ECC 0022DE2C 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80230ED0 0022DE30 41 82 00 9C */ beq lbl_80230F6C +/* 80230ED4 0022DE34 3C 60 80 3E */ lis r3, lbl_803E7F58@ha +/* 80230ED8 0022DE38 34 1E 03 B8 */ addic. r0, r30, 0x3b8 +/* 80230EDC 0022DE3C 38 03 7F 58 */ addi r0, r3, lbl_803E7F58@l +/* 80230EE0 0022DE40 90 1E 00 00 */ stw r0, 0(r30) +/* 80230EE4 0022DE44 41 82 00 30 */ beq lbl_80230F14 +/* 80230EE8 0022DE48 88 1E 03 C4 */ lbz r0, 0x3c4(r30) +/* 80230EEC 0022DE4C 28 00 00 00 */ cmplwi r0, 0 +/* 80230EF0 0022DE50 41 82 00 1C */ beq lbl_80230F0C +/* 80230EF4 0022DE54 34 7E 03 B8 */ addic. r3, r30, 0x3b8 +/* 80230EF8 0022DE58 41 82 00 14 */ beq lbl_80230F0C +/* 80230EFC 0022DE5C 28 03 00 00 */ cmplwi r3, 0 +/* 80230F00 0022DE60 41 82 00 0C */ beq lbl_80230F0C +/* 80230F04 0022DE64 38 80 00 00 */ li r4, 0 +/* 80230F08 0022DE68 48 10 FF 39 */ bl __dt__6CTokenFv +lbl_80230F0C: +/* 80230F0C 0022DE6C 38 00 00 00 */ li r0, 0 +/* 80230F10 0022DE70 98 1E 03 C4 */ stb r0, 0x3c4(r30) +lbl_80230F14: +/* 80230F14 0022DE74 34 1E 03 50 */ addic. r0, r30, 0x350 +/* 80230F18 0022DE78 41 82 00 10 */ beq lbl_80230F28 +/* 80230F1C 0022DE7C 38 7E 03 50 */ addi r3, r30, 0x350 +/* 80230F20 0022DE80 38 80 FF FF */ li r4, -1 +/* 80230F24 0022DE84 4B ED 56 E5 */ bl __dt__16CActorParametersFv +lbl_80230F28: +/* 80230F28 0022DE88 34 1E 03 28 */ addic. r0, r30, 0x328 +/* 80230F2C 0022DE8C 41 82 00 24 */ beq lbl_80230F50 +/* 80230F30 0022DE90 3C 60 80 3F */ lis r3, lbl_803ECAF8@ha +/* 80230F34 0022DE94 34 1E 03 28 */ addic. r0, r30, 0x328 +/* 80230F38 0022DE98 38 03 CA F8 */ addi r0, r3, lbl_803ECAF8@l +/* 80230F3C 0022DE9C 90 1E 03 28 */ stw r0, 0x328(r30) +/* 80230F40 0022DEA0 41 82 00 10 */ beq lbl_80230F50 +/* 80230F44 0022DEA4 3C 60 80 3E */ lis r3, lbl_803D97E4@ha +/* 80230F48 0022DEA8 38 03 97 E4 */ addi r0, r3, lbl_803D97E4@l +/* 80230F4C 0022DEAC 90 1E 03 28 */ stw r0, 0x328(r30) +lbl_80230F50: +/* 80230F50 0022DEB0 7F C3 F3 78 */ mr r3, r30 +/* 80230F54 0022DEB4 38 80 00 00 */ li r4, 0 +/* 80230F58 0022DEB8 4B EE B4 BD */ bl __dt__13CPhysicsActorFv +/* 80230F5C 0022DEBC 7F E0 07 35 */ extsh. r0, r31 +/* 80230F60 0022DEC0 40 81 00 0C */ ble lbl_80230F6C +/* 80230F64 0022DEC4 7F C3 F3 78 */ mr r3, r30 +/* 80230F68 0022DEC8 48 0E 49 C9 */ bl Free__7CMemoryFPCv +lbl_80230F6C: +/* 80230F6C 0022DECC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80230F70 0022DED0 7F C3 F3 78 */ mr r3, r30 +/* 80230F74 0022DED4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80230F78 0022DED8 83 C1 00 08 */ lwz r30, 8(r1) +/* 80230F7C 0022DEDC 7C 08 03 A6 */ mtlr r0 +/* 80230F80 0022DEE0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80230F84 0022DEE4 4E 80 00 20 */ blr + +.global __ct__16CGrenadeLauncherF9TUniqueId +__ct__16CGrenadeLauncherF9TUniqueId: +/* 80230F88 0022DEE8 94 21 FE 80 */ stwu r1, -0x180(r1) +/* 80230F8C 0022DEEC 7C 08 02 A6 */ mflr r0 +/* 80230F90 0022DEF0 90 01 01 84 */ stw r0, 0x184(r1) +/* 80230F94 0022DEF4 DB E1 01 70 */ stfd f31, 0x170(r1) +/* 80230F98 0022DEF8 F3 E1 01 78 */ psq_st f31, 376(r1), 0, qr0 +/* 80230F9C 0022DEFC DB C1 01 60 */ stfd f30, 0x160(r1) +/* 80230FA0 0022DF00 F3 C1 01 68 */ psq_st f30, 360(r1), 0, qr0 +/* 80230FA4 0022DF04 BE 61 01 2C */ stmw r19, 0x12c(r1) +/* 80230FA8 0022DF08 FF E0 08 90 */ fmr f31, f1 +/* 80230FAC 0022DF0C 83 81 01 88 */ lwz r28, 0x188(r1) +/* 80230FB0 0022DF10 83 A1 01 8C */ lwz r29, 0x18c(r1) +/* 80230FB4 0022DF14 7C 7A 1B 78 */ mr r26, r3 +/* 80230FB8 0022DF18 83 C1 01 90 */ lwz r30, 0x190(r1) +/* 80230FBC 0022DF1C 7C 93 23 78 */ mr r19, r4 +/* 80230FC0 0022DF20 83 E1 01 94 */ lwz r31, 0x194(r1) +/* 80230FC4 0022DF24 7C B4 2B 78 */ mr r20, r5 +/* 80230FC8 0022DF28 7C D5 33 78 */ mr r21, r6 +/* 80230FCC 0022DF2C 7C F6 3B 78 */ mr r22, r7 +/* 80230FD0 0022DF30 7D 1B 43 78 */ mr r27, r8 +/* 80230FD4 0022DF34 7D 37 4B 78 */ mr r23, r9 +/* 80230FD8 0022DF38 7D 58 53 78 */ mr r24, r10 +/* 80230FDC 0022DF3C 4B DE A5 59 */ bl Identity__10CAxisAngleFv +/* 80230FE0 0022DF40 7C 79 1B 78 */ mr r25, r3 +/* 80230FE4 0022DF44 4B DE A5 51 */ bl Identity__10CAxisAngleFv +/* 80230FE8 0022DF48 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80230FEC 0022DF4C C4 84 66 A0 */ lfsu f4, skZero3f@l(r4) +/* 80230FF0 0022DF50 C0 02 B6 9C */ lfs f0, lbl_805AD3BC@sda21(r2) +/* 80230FF4 0022DF54 38 01 00 AC */ addi r0, r1, 0xac +/* 80230FF8 0022DF58 C0 A4 00 04 */ lfs f5, 4(r4) +/* 80230FFC 0022DF5C 7E 86 A3 78 */ mr r6, r20 +/* 80231000 0022DF60 C0 C4 00 08 */ lfs f6, 8(r4) +/* 80231004 0022DF64 7E A7 AB 78 */ mr r7, r21 +/* 80231008 0022DF68 D0 81 00 AC */ stfs f4, 0xac(r1) +/* 8023100C 0022DF6C 7E C8 B3 78 */ mr r8, r22 +/* 80231010 0022DF70 A1 73 00 00 */ lhz r11, 0(r19) +/* 80231014 0022DF74 7F 69 DB 78 */ mr r9, r27 +/* 80231018 0022DF78 D0 A1 00 B0 */ stfs f5, 0xb0(r1) +/* 8023101C 0022DF7C 38 81 00 18 */ addi r4, r1, 0x18 +/* 80231020 0022DF80 C0 22 B6 A0 */ lfs f1, lbl_805AD3C0@sda21(r2) +/* 80231024 0022DF84 38 A0 00 01 */ li r5, 1 +/* 80231028 0022DF88 D0 C1 00 B4 */ stfs f6, 0xb4(r1) +/* 8023102C 0022DF8C 39 4D A5 28 */ addi r10, r13, lbl_805A90E8@sda21 +/* 80231030 0022DF90 C0 42 B6 90 */ lfs f2, lbl_805AD3B0@sda21(r2) +/* 80231034 0022DF94 C0 63 00 00 */ lfs f3, 0(r3) +/* 80231038 0022DF98 D0 61 00 B8 */ stfs f3, 0xb8(r1) +/* 8023103C 0022DF9C C0 63 00 04 */ lfs f3, 4(r3) +/* 80231040 0022DFA0 D0 61 00 BC */ stfs f3, 0xbc(r1) +/* 80231044 0022DFA4 C0 63 00 08 */ lfs f3, 8(r3) +/* 80231048 0022DFA8 7F 43 D3 78 */ mr r3, r26 +/* 8023104C 0022DFAC D0 61 00 C0 */ stfs f3, 0xc0(r1) +/* 80231050 0022DFB0 D0 81 00 C4 */ stfs f4, 0xc4(r1) +/* 80231054 0022DFB4 D0 A1 00 C8 */ stfs f5, 0xc8(r1) +/* 80231058 0022DFB8 D0 C1 00 CC */ stfs f6, 0xcc(r1) +/* 8023105C 0022DFBC C0 79 00 00 */ lfs f3, 0(r25) +/* 80231060 0022DFC0 D0 61 00 D0 */ stfs f3, 0xd0(r1) +/* 80231064 0022DFC4 C0 79 00 04 */ lfs f3, 4(r25) +/* 80231068 0022DFC8 D0 61 00 D4 */ stfs f3, 0xd4(r1) +/* 8023106C 0022DFCC C0 79 00 08 */ lfs f3, 8(r25) +/* 80231070 0022DFD0 D0 61 00 D8 */ stfs f3, 0xd8(r1) +/* 80231074 0022DFD4 D0 01 00 DC */ stfs f0, 0xdc(r1) +/* 80231078 0022DFD8 B1 61 00 18 */ sth r11, 0x18(r1) +/* 8023107C 0022DFDC 92 E1 00 08 */ stw r23, 8(r1) +/* 80231080 0022DFE0 90 01 00 0C */ stw r0, 0xc(r1) +/* 80231084 0022DFE4 93 A1 00 10 */ stw r29, 0x10(r1) +/* 80231088 0022DFE8 4B EE B4 29 */ bl "__ct__13CPhysicsActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC6CAABoxRC10SMoverDataRC16CActorParametersff" +/* 8023108C 0022DFEC 3C 60 80 3E */ lis r3, lbl_803E7F58@ha +/* 80231090 0022DFF0 38 00 00 00 */ li r0, 0 +/* 80231094 0022DFF4 38 63 7F 58 */ addi r3, r3, lbl_803E7F58@l +/* 80231098 0022DFF8 7F E4 FB 78 */ mr r4, r31 +/* 8023109C 0022DFFC 90 7A 00 00 */ stw r3, 0(r26) +/* 802310A0 0022E000 38 7A 02 D0 */ addi r3, r26, 0x2d0 +/* 802310A4 0022E004 90 1A 02 58 */ stw r0, 0x258(r26) +/* 802310A8 0022E008 C0 18 00 00 */ lfs f0, 0(r24) +/* 802310AC 0022E00C D0 1A 02 5C */ stfs f0, 0x25c(r26) +/* 802310B0 0022E010 C0 18 00 04 */ lfs f0, 4(r24) +/* 802310B4 0022E014 D0 1A 02 60 */ stfs f0, 0x260(r26) +/* 802310B8 0022E018 80 BC 00 00 */ lwz r5, 0(r28) +/* 802310BC 0022E01C 80 1C 00 04 */ lwz r0, 4(r28) +/* 802310C0 0022E020 90 BA 02 64 */ stw r5, 0x264(r26) +/* 802310C4 0022E024 90 1A 02 68 */ stw r0, 0x268(r26) +/* 802310C8 0022E028 80 BC 00 08 */ lwz r5, 8(r28) +/* 802310CC 0022E02C 80 1C 00 0C */ lwz r0, 0xc(r28) +/* 802310D0 0022E030 90 BA 02 6C */ stw r5, 0x26c(r26) +/* 802310D4 0022E034 90 1A 02 70 */ stw r0, 0x270(r26) +/* 802310D8 0022E038 80 BC 00 10 */ lwz r5, 0x10(r28) +/* 802310DC 0022E03C 80 1C 00 14 */ lwz r0, 0x14(r28) +/* 802310E0 0022E040 90 BA 02 74 */ stw r5, 0x274(r26) +/* 802310E4 0022E044 90 1A 02 78 */ stw r0, 0x278(r26) +/* 802310E8 0022E048 80 BC 00 18 */ lwz r5, 0x18(r28) +/* 802310EC 0022E04C 80 1C 00 1C */ lwz r0, 0x1c(r28) +/* 802310F0 0022E050 90 BA 02 7C */ stw r5, 0x27c(r26) +/* 802310F4 0022E054 90 1A 02 80 */ stw r0, 0x280(r26) +/* 802310F8 0022E058 80 BC 00 20 */ lwz r5, 0x20(r28) +/* 802310FC 0022E05C 80 1C 00 24 */ lwz r0, 0x24(r28) +/* 80231100 0022E060 90 BA 02 84 */ stw r5, 0x284(r26) +/* 80231104 0022E064 90 1A 02 88 */ stw r0, 0x288(r26) +/* 80231108 0022E068 80 BC 00 28 */ lwz r5, 0x28(r28) +/* 8023110C 0022E06C 80 1C 00 2C */ lwz r0, 0x2c(r28) +/* 80231110 0022E070 90 BA 02 8C */ stw r5, 0x28c(r26) +/* 80231114 0022E074 90 1A 02 90 */ stw r0, 0x290(r26) +/* 80231118 0022E078 80 BC 00 30 */ lwz r5, 0x30(r28) +/* 8023111C 0022E07C 80 1C 00 34 */ lwz r0, 0x34(r28) +/* 80231120 0022E080 90 BA 02 94 */ stw r5, 0x294(r26) +/* 80231124 0022E084 90 1A 02 98 */ stw r0, 0x298(r26) +/* 80231128 0022E088 80 1C 00 38 */ lwz r0, 0x38(r28) +/* 8023112C 0022E08C 90 1A 02 9C */ stw r0, 0x29c(r26) +/* 80231130 0022E090 80 BC 00 3C */ lwz r5, 0x3c(r28) +/* 80231134 0022E094 80 1C 00 40 */ lwz r0, 0x40(r28) +/* 80231138 0022E098 90 BA 02 A0 */ stw r5, 0x2a0(r26) +/* 8023113C 0022E09C 90 1A 02 A4 */ stw r0, 0x2a4(r26) +/* 80231140 0022E0A0 80 BC 00 44 */ lwz r5, 0x44(r28) +/* 80231144 0022E0A4 80 1C 00 48 */ lwz r0, 0x48(r28) +/* 80231148 0022E0A8 90 BA 02 A8 */ stw r5, 0x2a8(r26) +/* 8023114C 0022E0AC 90 1A 02 AC */ stw r0, 0x2ac(r26) +/* 80231150 0022E0B0 80 BC 00 4C */ lwz r5, 0x4c(r28) +/* 80231154 0022E0B4 80 1C 00 50 */ lwz r0, 0x50(r28) +/* 80231158 0022E0B8 90 BA 02 B0 */ stw r5, 0x2b0(r26) +/* 8023115C 0022E0BC 90 1A 02 B4 */ stw r0, 0x2b4(r26) +/* 80231160 0022E0C0 80 BC 00 54 */ lwz r5, 0x54(r28) +/* 80231164 0022E0C4 80 1C 00 58 */ lwz r0, 0x58(r28) +/* 80231168 0022E0C8 90 BA 02 B8 */ stw r5, 0x2b8(r26) +/* 8023116C 0022E0CC 90 1A 02 BC */ stw r0, 0x2bc(r26) +/* 80231170 0022E0D0 80 1C 00 5C */ lwz r0, 0x5c(r28) +/* 80231174 0022E0D4 90 1A 02 C0 */ stw r0, 0x2c0(r26) +/* 80231178 0022E0D8 80 1C 00 60 */ lwz r0, 0x60(r28) +/* 8023117C 0022E0DC 90 1A 02 C4 */ stw r0, 0x2c4(r26) +/* 80231180 0022E0E0 80 1C 00 64 */ lwz r0, 0x64(r28) +/* 80231184 0022E0E4 90 1A 02 C8 */ stw r0, 0x2c8(r26) +/* 80231188 0022E0E8 A0 1E 00 00 */ lhz r0, 0(r30) +/* 8023118C 0022E0EC B0 1A 02 CC */ sth r0, 0x2cc(r26) +/* 80231190 0022E0F0 48 00 03 B1 */ bl sub_80231540 +/* 80231194 0022E0F4 C0 3B 00 00 */ lfs f1, 0(r27) +/* 80231198 0022E0F8 3A 7A 03 28 */ addi r19, r26, 0x328 +/* 8023119C 0022E0FC C0 1B 00 04 */ lfs f0, 4(r27) +/* 802311A0 0022E100 7E 63 9B 78 */ mr r3, r19 +/* 802311A4 0022E104 C3 DB 00 08 */ lfs f30, 8(r27) +/* 802311A8 0022E108 38 8D A5 28 */ addi r4, r13, lbl_805A90E8@sda21 +/* 802311AC 0022E10C D0 21 00 A0 */ stfs f1, 0xa0(r1) +/* 802311B0 0022E110 D0 01 00 A4 */ stfs f0, 0xa4(r1) +/* 802311B4 0022E114 D3 C1 00 A8 */ stfs f30, 0xa8(r1) +/* 802311B8 0022E118 48 09 E6 FD */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList +/* 802311BC 0022E11C 3C 60 80 3F */ lis r3, lbl_803ECAF8@ha +/* 802311C0 0022E120 C0 22 B6 6C */ lfs f1, lbl_805AD38C@sda21(r2) +/* 802311C4 0022E124 38 03 CA F8 */ addi r0, r3, lbl_803ECAF8@l +/* 802311C8 0022E128 C0 A2 B6 64 */ lfs f5, lbl_805AD384@sda21(r2) +/* 802311CC 0022E12C 90 13 00 00 */ stw r0, 0(r19) +/* 802311D0 0022E130 FC 40 08 90 */ fmr f2, f1 +/* 802311D4 0022E134 C0 02 B6 A4 */ lfs f0, lbl_805AD3C4@sda21(r2) +/* 802311D8 0022E138 FC 60 08 90 */ fmr f3, f1 +/* 802311DC 0022E13C D0 B3 00 10 */ stfs f5, 0x10(r19) +/* 802311E0 0022E140 FC 80 08 90 */ fmr f4, f1 +/* 802311E4 0022E144 38 7A 03 4C */ addi r3, r26, 0x34c +/* 802311E8 0022E148 D0 B3 00 14 */ stfs f5, 0x14(r19) +/* 802311EC 0022E14C D0 B3 00 18 */ stfs f5, 0x18(r19) +/* 802311F0 0022E150 D3 D3 00 1C */ stfs f30, 0x1c(r19) +/* 802311F4 0022E154 D0 1A 03 48 */ stfs f0, 0x348(r26) +/* 802311F8 0022E158 48 13 21 F5 */ bl __ct__6CColorFffff +/* 802311FC 0022E15C 7F A4 EB 78 */ mr r4, r29 +/* 80231200 0022E160 38 7A 03 50 */ addi r3, r26, 0x350 +/* 80231204 0022E164 4B E9 44 19 */ bl __ct__16CActorParametersFRC16CActorParameters +/* 80231208 0022E168 80 9F 00 40 */ lwz r4, 0x40(r31) +/* 8023120C 0022E16C 3B 60 00 00 */ li r27, 0 +/* 80231210 0022E170 3B 80 00 00 */ li r28, 0 +/* 80231214 0022E174 3B C0 00 00 */ li r30, 0 +/* 80231218 0022E178 3C 04 00 01 */ addis r0, r4, 1 +/* 8023121C 0022E17C 3B E0 00 00 */ li r31, 0 +/* 80231220 0022E180 28 00 FF FF */ cmplwi r0, 0xffff +/* 80231224 0022E184 41 82 00 90 */ beq lbl_802312B4 +/* 80231228 0022E188 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 8023122C 0022E18C 90 81 00 70 */ stw r4, 0x70(r1) +/* 80231230 0022E190 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 80231234 0022E194 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80231238 0022E198 90 01 00 6C */ stw r0, 0x6c(r1) +/* 8023123C 0022E19C 38 61 00 64 */ addi r3, r1, 0x64 +/* 80231240 0022E1A0 38 A1 00 6C */ addi r5, r1, 0x6c +/* 80231244 0022E1A4 81 84 00 00 */ lwz r12, 0(r4) +/* 80231248 0022E1A8 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8023124C 0022E1AC 7D 89 03 A6 */ mtctr r12 +/* 80231250 0022E1B0 4E 80 04 21 */ bctrl +/* 80231254 0022E1B4 3A 61 00 94 */ addi r19, r1, 0x94 +/* 80231258 0022E1B8 38 81 00 64 */ addi r4, r1, 0x64 +/* 8023125C 0022E1BC 7E 63 9B 78 */ mr r3, r19 +/* 80231260 0022E1C0 3B 60 00 01 */ li r27, 1 +/* 80231264 0022E1C4 48 10 FC 45 */ bl __ct__6CTokenFRC6CToken +/* 80231268 0022E1C8 7E 63 9B 78 */ mr r3, r19 +/* 8023126C 0022E1CC 48 10 FB A1 */ bl GetObj__6CTokenFv +/* 80231270 0022E1D0 80 63 00 04 */ lwz r3, 4(r3) +/* 80231274 0022E1D4 38 00 00 01 */ li r0, 1 +/* 80231278 0022E1D8 37 21 00 84 */ addic. r25, r1, 0x84 +/* 8023127C 0022E1DC 3B 80 00 01 */ li r28, 1 +/* 80231280 0022E1E0 90 61 00 9C */ stw r3, 0x9c(r1) +/* 80231284 0022E1E4 98 01 00 90 */ stb r0, 0x90(r1) +/* 80231288 0022E1E8 41 82 00 20 */ beq lbl_802312A8 +/* 8023128C 0022E1EC 7F 23 CB 78 */ mr r3, r25 +/* 80231290 0022E1F0 7E 64 9B 78 */ mr r4, r19 +/* 80231294 0022E1F4 48 10 FC 15 */ bl __ct__6CTokenFRC6CToken +/* 80231298 0022E1F8 80 01 00 9C */ lwz r0, 0x9c(r1) +/* 8023129C 0022E1FC 7F 23 CB 78 */ mr r3, r25 +/* 802312A0 0022E200 90 19 00 08 */ stw r0, 8(r25) +/* 802312A4 0022E204 48 10 FA E1 */ bl Lock__6CTokenFv +lbl_802312A8: +/* 802312A8 0022E208 3B 21 00 84 */ addi r25, r1, 0x84 +/* 802312AC 0022E20C 3B C0 00 01 */ li r30, 1 +/* 802312B0 0022E210 48 00 00 14 */ b lbl_802312C4 +lbl_802312B4: +/* 802312B4 0022E214 38 00 00 00 */ li r0, 0 +/* 802312B8 0022E218 3B 21 00 74 */ addi r25, r1, 0x74 +/* 802312BC 0022E21C 98 01 00 80 */ stb r0, 0x80(r1) +/* 802312C0 0022E220 3B E0 00 01 */ li r31, 1 +lbl_802312C4: +/* 802312C4 0022E224 88 19 00 0C */ lbz r0, 0xc(r25) +/* 802312C8 0022E228 98 1A 03 C4 */ stb r0, 0x3c4(r26) +/* 802312CC 0022E22C 88 19 00 0C */ lbz r0, 0xc(r25) +/* 802312D0 0022E230 28 00 00 00 */ cmplwi r0, 0 +/* 802312D4 0022E234 41 82 00 28 */ beq lbl_802312FC +/* 802312D8 0022E238 37 1A 03 B8 */ addic. r24, r26, 0x3b8 +/* 802312DC 0022E23C 41 82 00 20 */ beq lbl_802312FC +/* 802312E0 0022E240 7F 03 C3 78 */ mr r3, r24 +/* 802312E4 0022E244 7F 24 CB 78 */ mr r4, r25 +/* 802312E8 0022E248 48 10 FB C1 */ bl __ct__6CTokenFRC6CToken +/* 802312EC 0022E24C 80 19 00 08 */ lwz r0, 8(r25) +/* 802312F0 0022E250 7F 03 C3 78 */ mr r3, r24 +/* 802312F4 0022E254 90 18 00 08 */ stw r0, 8(r24) +/* 802312F8 0022E258 48 10 FA 8D */ bl Lock__6CTokenFv +lbl_802312FC: +/* 802312FC 0022E25C 7F E0 07 75 */ extsb. r0, r31 +/* 80231300 0022E260 41 82 00 30 */ beq lbl_80231330 +/* 80231304 0022E264 88 01 00 80 */ lbz r0, 0x80(r1) +/* 80231308 0022E268 28 00 00 00 */ cmplwi r0, 0 +/* 8023130C 0022E26C 41 82 00 1C */ beq lbl_80231328 +/* 80231310 0022E270 34 61 00 74 */ addic. r3, r1, 0x74 +/* 80231314 0022E274 41 82 00 14 */ beq lbl_80231328 +/* 80231318 0022E278 28 03 00 00 */ cmplwi r3, 0 +/* 8023131C 0022E27C 41 82 00 0C */ beq lbl_80231328 +/* 80231320 0022E280 38 80 00 00 */ li r4, 0 +/* 80231324 0022E284 48 10 FB 1D */ bl __dt__6CTokenFv +lbl_80231328: +/* 80231328 0022E288 38 00 00 00 */ li r0, 0 +/* 8023132C 0022E28C 98 01 00 80 */ stb r0, 0x80(r1) +lbl_80231330: +/* 80231330 0022E290 7F C0 07 75 */ extsb. r0, r30 +/* 80231334 0022E294 41 82 00 30 */ beq lbl_80231364 +/* 80231338 0022E298 88 01 00 90 */ lbz r0, 0x90(r1) +/* 8023133C 0022E29C 28 00 00 00 */ cmplwi r0, 0 +/* 80231340 0022E2A0 41 82 00 1C */ beq lbl_8023135C +/* 80231344 0022E2A4 34 61 00 84 */ addic. r3, r1, 0x84 +/* 80231348 0022E2A8 41 82 00 14 */ beq lbl_8023135C +/* 8023134C 0022E2AC 28 03 00 00 */ cmplwi r3, 0 +/* 80231350 0022E2B0 41 82 00 0C */ beq lbl_8023135C +/* 80231354 0022E2B4 38 80 00 00 */ li r4, 0 +/* 80231358 0022E2B8 48 10 FA E9 */ bl __dt__6CTokenFv +lbl_8023135C: +/* 8023135C 0022E2BC 38 00 00 00 */ li r0, 0 +/* 80231360 0022E2C0 98 01 00 90 */ stb r0, 0x90(r1) +lbl_80231364: +/* 80231364 0022E2C4 7F 80 07 75 */ extsb. r0, r28 +/* 80231368 0022E2C8 41 82 00 10 */ beq lbl_80231378 +/* 8023136C 0022E2CC 38 61 00 94 */ addi r3, r1, 0x94 +/* 80231370 0022E2D0 38 80 00 00 */ li r4, 0 +/* 80231374 0022E2D4 48 10 FA CD */ bl __dt__6CTokenFv +lbl_80231378: +/* 80231378 0022E2D8 7F 60 07 75 */ extsb. r0, r27 +/* 8023137C 0022E2DC 41 82 00 10 */ beq lbl_8023138C +/* 80231380 0022E2E0 38 61 00 64 */ addi r3, r1, 0x64 +/* 80231384 0022E2E4 38 80 FF FF */ li r4, -1 +/* 80231388 0022E2E8 48 10 FA B9 */ bl __dt__6CTokenFv +lbl_8023138C: +/* 8023138C 0022E2EC C0 42 B6 64 */ lfs f2, lbl_805AD384@sda21(r2) +/* 80231390 0022E2F0 38 7A 03 F0 */ addi r3, r26, 0x3f0 +/* 80231394 0022E2F4 C0 22 B6 94 */ lfs f1, lbl_805AD3B4@sda21(r2) +/* 80231398 0022E2F8 D0 5A 03 D8 */ stfs f2, 0x3d8(r26) +/* 8023139C 0022E2FC FC 60 10 90 */ fmr f3, f2 +/* 802313A0 0022E300 C0 82 B6 6C */ lfs f4, lbl_805AD38C@sda21(r2) +/* 802313A4 0022E304 D0 5A 03 DC */ stfs f2, 0x3dc(r26) +/* 802313A8 0022E308 D0 5A 03 E0 */ stfs f2, 0x3e0(r26) +/* 802313AC 0022E30C D0 5A 03 E4 */ stfs f2, 0x3e4(r26) +/* 802313B0 0022E310 C0 1D 00 64 */ lfs f0, 0x64(r29) +/* 802313B4 0022E314 D0 1A 03 E8 */ stfs f0, 0x3e8(r26) +/* 802313B8 0022E318 D0 5A 03 EC */ stfs f2, 0x3ec(r26) +/* 802313BC 0022E31C 48 13 20 31 */ bl __ct__6CColorFffff +/* 802313C0 0022E320 C0 22 B6 64 */ lfs f1, lbl_805AD384@sda21(r2) +/* 802313C4 0022E324 38 7A 03 F4 */ addi r3, r26, 0x3f4 +/* 802313C8 0022E328 C0 82 B6 6C */ lfs f4, lbl_805AD38C@sda21(r2) +/* 802313CC 0022E32C FC 40 08 90 */ fmr f2, f1 +/* 802313D0 0022E330 FC 60 08 90 */ fmr f3, f1 +/* 802313D4 0022E334 48 13 20 19 */ bl __ct__6CColorFffff +/* 802313D8 0022E338 D3 FA 03 F8 */ stfs f31, 0x3f8(r26) +/* 802313DC 0022E33C 38 60 00 00 */ li r3, 0 +/* 802313E0 0022E340 38 00 00 01 */ li r0, 1 +/* 802313E4 0022E344 38 80 00 01 */ li r4, 1 +/* 802313E8 0022E348 98 7A 03 FC */ stb r3, 0x3fc(r26) +/* 802313EC 0022E34C 98 1A 03 FD */ stb r0, 0x3fd(r26) +/* 802313F0 0022E350 98 1A 03 FE */ stb r0, 0x3fe(r26) +/* 802313F4 0022E354 80 7A 00 64 */ lwz r3, 0x64(r26) +/* 802313F8 0022E358 4B EE 41 69 */ bl EnableLooping__10CModelDataFb +/* 802313FC 0022E35C 3B 21 00 E4 */ addi r25, r1, 0xe4 +/* 80231400 0022E360 3B 81 00 2C */ addi r28, r1, 0x2c +/* 80231404 0022E364 3B 61 00 24 */ addi r27, r1, 0x24 +/* 80231408 0022E368 3B A0 00 00 */ li r29, 0 +/* 8023140C 0022E36C 3B 00 00 00 */ li r24, 0 +lbl_80231410: +/* 80231410 0022E370 38 61 00 24 */ addi r3, r1, 0x24 +/* 80231414 0022E374 48 0B 1C 69 */ bl NoParameter__12CPASAnimParmFv +/* 80231418 0022E378 38 61 00 2C */ addi r3, r1, 0x2c +/* 8023141C 0022E37C 48 0B 1C 61 */ bl NoParameter__12CPASAnimParmFv +/* 80231420 0022E380 38 61 00 34 */ addi r3, r1, 0x34 +/* 80231424 0022E384 48 0B 1C 59 */ bl NoParameter__12CPASAnimParmFv +/* 80231428 0022E388 38 61 00 3C */ addi r3, r1, 0x3c +/* 8023142C 0022E38C 48 0B 1C 51 */ bl NoParameter__12CPASAnimParmFv +/* 80231430 0022E390 38 61 00 44 */ addi r3, r1, 0x44 +/* 80231434 0022E394 48 0B 1C 49 */ bl NoParameter__12CPASAnimParmFv +/* 80231438 0022E398 38 61 00 4C */ addi r3, r1, 0x4c +/* 8023143C 0022E39C 48 0B 1C 41 */ bl NoParameter__12CPASAnimParmFv +/* 80231440 0022E3A0 38 61 00 54 */ addi r3, r1, 0x54 +/* 80231444 0022E3A4 48 0B 1C 39 */ bl NoParameter__12CPASAnimParmFv +/* 80231448 0022E3A8 7F A4 EB 78 */ mr r4, r29 +/* 8023144C 0022E3AC 38 61 00 5C */ addi r3, r1, 0x5c +/* 80231450 0022E3B0 48 0B 1B 35 */ bl FromEnum__12CPASAnimParmFi +/* 80231454 0022E3B4 93 81 00 08 */ stw r28, 8(r1) +/* 80231458 0022E3B8 38 61 00 E0 */ addi r3, r1, 0xe0 +/* 8023145C 0022E3BC 38 A1 00 5C */ addi r5, r1, 0x5c +/* 80231460 0022E3C0 38 C1 00 54 */ addi r6, r1, 0x54 +/* 80231464 0022E3C4 93 61 00 0C */ stw r27, 0xc(r1) +/* 80231468 0022E3C8 38 E1 00 4C */ addi r7, r1, 0x4c +/* 8023146C 0022E3CC 39 01 00 44 */ addi r8, r1, 0x44 +/* 80231470 0022E3D0 39 21 00 3C */ addi r9, r1, 0x3c +/* 80231474 0022E3D4 39 41 00 34 */ addi r10, r1, 0x34 +/* 80231478 0022E3D8 38 80 00 16 */ li r4, 0x16 +/* 8023147C 0022E3DC 4B E4 BE 49 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 80231480 0022E3E0 80 9A 00 64 */ lwz r4, 0x64(r26) +/* 80231484 0022E3E4 38 61 00 1C */ addi r3, r1, 0x1c +/* 80231488 0022E3E8 38 A1 00 E0 */ addi r5, r1, 0xe0 +/* 8023148C 0022E3EC 38 C0 FF FF */ li r6, -1 +/* 80231490 0022E3F0 80 84 00 10 */ lwz r4, 0x10(r4) +/* 80231494 0022E3F4 38 84 00 3C */ addi r4, r4, 0x3c +/* 80231498 0022E3F8 48 0B 3C D5 */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDatai +/* 8023149C 0022E3FC 80 61 00 20 */ lwz r3, 0x20(r1) +/* 802314A0 0022E400 38 18 03 C8 */ addi r0, r24, 0x3c8 +/* 802314A4 0022E404 28 19 00 00 */ cmplwi r25, 0 +/* 802314A8 0022E408 7C 7A 01 2E */ stwx r3, r26, r0 +/* 802314AC 0022E40C 41 82 00 5C */ beq lbl_80231508 +/* 802314B0 0022E410 80 A1 00 E4 */ lwz r5, 0xe4(r1) +/* 802314B4 0022E414 38 60 00 00 */ li r3, 0 +/* 802314B8 0022E418 2C 05 00 00 */ cmpwi r5, 0 +/* 802314BC 0022E41C 40 81 00 44 */ ble lbl_80231500 +/* 802314C0 0022E420 2C 05 00 08 */ cmpwi r5, 8 +/* 802314C4 0022E424 38 85 FF F8 */ addi r4, r5, -8 +/* 802314C8 0022E428 40 81 00 20 */ ble lbl_802314E8 +/* 802314CC 0022E42C 38 04 00 07 */ addi r0, r4, 7 +/* 802314D0 0022E430 54 00 E8 FE */ srwi r0, r0, 3 +/* 802314D4 0022E434 7C 09 03 A6 */ mtctr r0 +/* 802314D8 0022E438 2C 04 00 00 */ cmpwi r4, 0 +/* 802314DC 0022E43C 40 81 00 0C */ ble lbl_802314E8 +lbl_802314E0: +/* 802314E0 0022E440 38 63 00 08 */ addi r3, r3, 8 +/* 802314E4 0022E444 42 00 FF FC */ bdnz lbl_802314E0 +lbl_802314E8: +/* 802314E8 0022E448 7C 03 28 50 */ subf r0, r3, r5 +/* 802314EC 0022E44C 7C 09 03 A6 */ mtctr r0 +/* 802314F0 0022E450 7C 03 28 00 */ cmpw r3, r5 +/* 802314F4 0022E454 40 80 00 0C */ bge lbl_80231500 +lbl_802314F8: +/* 802314F8 0022E458 38 63 00 01 */ addi r3, r3, 1 +/* 802314FC 0022E45C 42 00 FF FC */ bdnz lbl_802314F8 +lbl_80231500: +/* 80231500 0022E460 38 00 00 00 */ li r0, 0 +/* 80231504 0022E464 90 01 00 E4 */ stw r0, 0xe4(r1) +lbl_80231508: +/* 80231508 0022E468 3B BD 00 01 */ addi r29, r29, 1 +/* 8023150C 0022E46C 3B 18 00 04 */ addi r24, r24, 4 +/* 80231510 0022E470 2C 1D 00 04 */ cmpwi r29, 4 +/* 80231514 0022E474 41 80 FE FC */ blt lbl_80231410 +/* 80231518 0022E478 7F 43 D3 78 */ mr r3, r26 +/* 8023151C 0022E47C E3 E1 01 78 */ psq_l f31, 376(r1), 0, qr0 +/* 80231520 0022E480 CB E1 01 70 */ lfd f31, 0x170(r1) +/* 80231524 0022E484 E3 C1 01 68 */ psq_l f30, 360(r1), 0, qr0 +/* 80231528 0022E488 CB C1 01 60 */ lfd f30, 0x160(r1) +/* 8023152C 0022E48C BA 61 01 2C */ lmw r19, 0x12c(r1) +/* 80231530 0022E490 80 01 01 84 */ lwz r0, 0x184(r1) +/* 80231534 0022E494 7C 08 03 A6 */ mtlr r0 +/* 80231538 0022E498 38 21 01 80 */ addi r1, r1, 0x180 +/* 8023153C 0022E49C 4E 80 00 20 */ blr + +.global sub_80231540 +sub_80231540: +/* 80231540 0022E4A0 C0 04 00 00 */ lfs f0, 0(r4) +/* 80231544 0022E4A4 D0 03 00 00 */ stfs f0, 0(r3) +/* 80231548 0022E4A8 C0 04 00 04 */ lfs f0, 4(r4) +/* 8023154C 0022E4AC D0 03 00 04 */ stfs f0, 4(r3) +/* 80231550 0022E4B0 80 04 00 08 */ lwz r0, 8(r4) +/* 80231554 0022E4B4 90 03 00 08 */ stw r0, 8(r3) +/* 80231558 0022E4B8 88 04 00 0C */ lbz r0, 0xc(r4) +/* 8023155C 0022E4BC 98 03 00 0C */ stb r0, 0xc(r3) +/* 80231560 0022E4C0 C0 04 00 10 */ lfs f0, 0x10(r4) +/* 80231564 0022E4C4 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 80231568 0022E4C8 C0 04 00 14 */ lfs f0, 0x14(r4) +/* 8023156C 0022E4CC D0 03 00 14 */ stfs f0, 0x14(r3) +/* 80231570 0022E4D0 C0 04 00 18 */ lfs f0, 0x18(r4) +/* 80231574 0022E4D4 D0 03 00 18 */ stfs f0, 0x18(r3) +/* 80231578 0022E4D8 C0 04 00 1C */ lfs f0, 0x1c(r4) +/* 8023157C 0022E4DC D0 03 00 1C */ stfs f0, 0x1c(r3) +/* 80231580 0022E4E0 88 04 00 20 */ lbz r0, 0x20(r4) +/* 80231584 0022E4E4 98 03 00 20 */ stb r0, 0x20(r3) +/* 80231588 0022E4E8 80 04 00 24 */ lwz r0, 0x24(r4) +/* 8023158C 0022E4EC 90 03 00 24 */ stw r0, 0x24(r3) +/* 80231590 0022E4F0 80 04 00 28 */ lwz r0, 0x28(r4) +/* 80231594 0022E4F4 90 03 00 28 */ stw r0, 0x28(r3) +/* 80231598 0022E4F8 80 04 00 2C */ lwz r0, 0x2c(r4) +/* 8023159C 0022E4FC 90 03 00 2C */ stw r0, 0x2c(r3) +/* 802315A0 0022E500 80 04 00 30 */ lwz r0, 0x30(r4) +/* 802315A4 0022E504 90 03 00 30 */ stw r0, 0x30(r3) +/* 802315A8 0022E508 80 04 00 34 */ lwz r0, 0x34(r4) +/* 802315AC 0022E50C 90 03 00 34 */ stw r0, 0x34(r3) +/* 802315B0 0022E510 A0 04 00 38 */ lhz r0, 0x38(r4) +/* 802315B4 0022E514 B0 03 00 38 */ sth r0, 0x38(r3) +/* 802315B8 0022E518 A0 04 00 3A */ lhz r0, 0x3a(r4) +/* 802315BC 0022E51C B0 03 00 3A */ sth r0, 0x3a(r3) +/* 802315C0 0022E520 80 04 00 3C */ lwz r0, 0x3c(r4) +/* 802315C4 0022E524 90 03 00 3C */ stw r0, 0x3c(r3) +/* 802315C8 0022E528 80 04 00 40 */ lwz r0, 0x40(r4) +/* 802315CC 0022E52C 90 03 00 40 */ stw r0, 0x40(r3) +/* 802315D0 0022E530 A0 04 00 44 */ lhz r0, 0x44(r4) +/* 802315D4 0022E534 B0 03 00 44 */ sth r0, 0x44(r3) +/* 802315D8 0022E538 C0 04 00 48 */ lfs f0, 0x48(r4) +/* 802315DC 0022E53C D0 03 00 48 */ stfs f0, 0x48(r3) +/* 802315E0 0022E540 C0 04 00 4C */ lfs f0, 0x4c(r4) +/* 802315E4 0022E544 D0 03 00 4C */ stfs f0, 0x4c(r3) +/* 802315E8 0022E548 C0 04 00 50 */ lfs f0, 0x50(r4) +/* 802315EC 0022E54C D0 03 00 50 */ stfs f0, 0x50(r3) +/* 802315F0 0022E550 C0 04 00 54 */ lfs f0, 0x54(r4) +/* 802315F4 0022E554 D0 03 00 54 */ stfs f0, 0x54(r3) +/* 802315F8 0022E558 4E 80 00 20 */ blr + +.global __sinit_CGrenadeLauncher_cpp +__sinit_CGrenadeLauncher_cpp: +/* 802315FC 0022E55C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80231600 0022E560 7C 08 02 A6 */ mflr r0 +/* 80231604 0022E564 38 60 00 00 */ li r3, 0 +/* 80231608 0022E568 38 80 00 01 */ li r4, 1 +/* 8023160C 0022E56C 90 01 00 14 */ stw r0, 0x14(r1) +/* 80231610 0022E570 38 00 00 00 */ li r0, 0 +/* 80231614 0022E574 80 AD 95 E8 */ lwz r5, lbl_805A81A8@sda21(r13) +/* 80231618 0022E578 90 0D A5 2C */ stw r0, lbl_805A90EC@sda21(r13) +/* 8023161C 0022E57C 90 0D A5 28 */ stw r0, lbl_805A90E8@sda21(r13) +/* 80231620 0022E580 48 15 88 D5 */ bl __shl2i +/* 80231624 0022E584 80 0D A5 28 */ lwz r0, lbl_805A90E8@sda21(r13) +/* 80231628 0022E588 80 CD A5 2C */ lwz r6, lbl_805A90EC@sda21(r13) +/* 8023162C 0022E58C 7C 00 1B 78 */ or r0, r0, r3 +/* 80231630 0022E590 80 AD 95 EC */ lwz r5, lbl_805A81AC@sda21(r13) +/* 80231634 0022E594 7C C4 23 78 */ or r4, r6, r4 +/* 80231638 0022E598 90 0D A5 28 */ stw r0, lbl_805A90E8@sda21(r13) +/* 8023163C 0022E59C 38 60 00 00 */ li r3, 0 +/* 80231640 0022E5A0 90 8D A5 2C */ stw r4, lbl_805A90EC@sda21(r13) +/* 80231644 0022E5A4 38 80 00 01 */ li r4, 1 +/* 80231648 0022E5A8 48 15 88 AD */ bl __shl2i +/* 8023164C 0022E5AC 80 0D A5 28 */ lwz r0, lbl_805A90E8@sda21(r13) +/* 80231650 0022E5B0 80 AD A5 2C */ lwz r5, lbl_805A90EC@sda21(r13) +/* 80231654 0022E5B4 7C 00 1B 78 */ or r0, r0, r3 +/* 80231658 0022E5B8 7C A3 23 78 */ or r3, r5, r4 +/* 8023165C 0022E5BC 90 0D A5 28 */ stw r0, lbl_805A90E8@sda21(r13) +/* 80231660 0022E5C0 90 6D A5 2C */ stw r3, lbl_805A90EC@sda21(r13) +/* 80231664 0022E5C4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80231668 0022E5C8 7C 08 03 A6 */ mtlr r0 +/* 8023166C 0022E5CC 38 21 00 10 */ addi r1, r1, 0x10 +/* 80231670 0022E5D0 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Enemies/CIceSheegoth.s b/asm/Kyoto_CWD/Enemies/CIceSheegoth.s new file mode 100644 index 00000000..694d6bd1 --- /dev/null +++ b/asm/Kyoto_CWD/Enemies/CIceSheegoth.s @@ -0,0 +1,9691 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global GetSearchPath__12CIceSheegothFv +GetSearchPath__12CIceSheegothFv: +/* 8019E240 0019B1A0 80 03 09 28 */ lwz r0, 0x928(r3) +/* 8019E244 0019B1A4 2C 00 00 00 */ cmpwi r0, 0 +/* 8019E248 0019B1A8 40 82 00 0C */ bne lbl_8019E254 +/* 8019E24C 0019B1AC 38 63 07 60 */ addi r3, r3, 0x760 +/* 8019E250 0019B1B0 4E 80 00 20 */ blr +lbl_8019E254: +/* 8019E254 0019B1B4 38 63 08 44 */ addi r3, r3, 0x844 +/* 8019E258 0019B1B8 4E 80 00 20 */ blr + +.global GetCollisionPrimitive__12CIceSheegothCFv +GetCollisionPrimitive__12CIceSheegothCFv: +/* 8019E25C 0019B1BC 38 63 0A 30 */ addi r3, r3, 0xa30 +/* 8019E260 0019B1C0 4E 80 00 20 */ blr + +.global GetGravityConstant__12CIceSheegothCFv +GetGravityConstant__12CIceSheegothCFv: +/* 8019E264 0019B1C4 C0 22 A7 50 */ lfs f1, lbl_805AC470@sda21(r2) +/* 8019E268 0019B1C8 C0 02 96 A0 */ lfs f0, lbl_805AB3C0@sda21(r2) +/* 8019E26C 0019B1CC EC 21 00 32 */ fmuls f1, f1, f0 +/* 8019E270 0019B1D0 4E 80 00 20 */ blr + +.global GetSortingBounds__12CIceSheegothCFRC12CTransform4f +GetSortingBounds__12CIceSheegothCFRC12CTransform4f: +/* 8019E274 0019B1D4 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 8019E278 0019B1D8 7C 08 02 A6 */ mflr r0 +/* 8019E27C 0019B1DC 90 01 00 74 */ stw r0, 0x74(r1) +/* 8019E280 0019B1E0 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 8019E284 0019B1E4 7C 7F 1B 78 */ mr r31, r3 +/* 8019E288 0019B1E8 38 61 00 2C */ addi r3, r1, 0x2c +/* 8019E28C 0019B1EC 4B EB 53 55 */ bl GetSortingBounds__6CActorCFRC12CTransform4f +/* 8019E290 0019B1F0 C0 A1 00 2C */ lfs f5, 0x2c(r1) +/* 8019E294 0019B1F4 38 61 00 20 */ addi r3, r1, 0x20 +/* 8019E298 0019B1F8 C0 81 00 30 */ lfs f4, 0x30(r1) +/* 8019E29C 0019B1FC 38 81 00 44 */ addi r4, r1, 0x44 +/* 8019E2A0 0019B200 C0 61 00 34 */ lfs f3, 0x34(r1) +/* 8019E2A4 0019B204 C0 41 00 38 */ lfs f2, 0x38(r1) +/* 8019E2A8 0019B208 C0 21 00 3C */ lfs f1, 0x3c(r1) +/* 8019E2AC 0019B20C C0 01 00 40 */ lfs f0, 0x40(r1) +/* 8019E2B0 0019B210 D0 A1 00 44 */ stfs f5, 0x44(r1) +/* 8019E2B4 0019B214 D0 81 00 48 */ stfs f4, 0x48(r1) +/* 8019E2B8 0019B218 D0 61 00 4C */ stfs f3, 0x4c(r1) +/* 8019E2BC 0019B21C D0 41 00 50 */ stfs f2, 0x50(r1) +/* 8019E2C0 0019B220 D0 21 00 54 */ stfs f1, 0x54(r1) +/* 8019E2C4 0019B224 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 8019E2C8 0019B228 48 19 93 45 */ bl GetCenterPoint__6CAABoxCFv +/* 8019E2CC 0019B22C C0 61 00 50 */ lfs f3, 0x50(r1) +/* 8019E2D0 0019B230 7F E3 FB 78 */ mr r3, r31 +/* 8019E2D4 0019B234 C0 41 00 44 */ lfs f2, 0x44(r1) +/* 8019E2D8 0019B238 38 81 00 14 */ addi r4, r1, 0x14 +/* 8019E2DC 0019B23C C0 21 00 54 */ lfs f1, 0x54(r1) +/* 8019E2E0 0019B240 38 A1 00 08 */ addi r5, r1, 8 +/* 8019E2E4 0019B244 C0 01 00 48 */ lfs f0, 0x48(r1) +/* 8019E2E8 0019B248 EC 63 10 28 */ fsubs f3, f3, f2 +/* 8019E2EC 0019B24C C0 82 A7 54 */ lfs f4, lbl_805AC474@sda21(r2) +/* 8019E2F0 0019B250 EC 41 00 28 */ fsubs f2, f1, f0 +/* 8019E2F4 0019B254 C0 21 00 58 */ lfs f1, 0x58(r1) +/* 8019E2F8 0019B258 C0 01 00 4C */ lfs f0, 0x4c(r1) +/* 8019E2FC 0019B25C EC 64 00 F2 */ fmuls f3, f4, f3 +/* 8019E300 0019B260 C1 01 00 20 */ lfs f8, 0x20(r1) +/* 8019E304 0019B264 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8019E308 0019B268 EC 28 18 2A */ fadds f1, f8, f3 +/* 8019E30C 0019B26C C0 C1 00 24 */ lfs f6, 0x24(r1) +/* 8019E310 0019B270 EC A4 00 B2 */ fmuls f5, f4, f2 +/* 8019E314 0019B274 C0 E1 00 28 */ lfs f7, 0x28(r1) +/* 8019E318 0019B278 EC 84 00 32 */ fmuls f4, f4, f0 +/* 8019E31C 0019B27C EC 08 18 28 */ fsubs f0, f8, f3 +/* 8019E320 0019B280 EC 66 28 2A */ fadds f3, f6, f5 +/* 8019E324 0019B284 D0 21 00 08 */ stfs f1, 8(r1) +/* 8019E328 0019B288 EC 47 20 2A */ fadds f2, f7, f4 +/* 8019E32C 0019B28C EC 26 28 28 */ fsubs f1, f6, f5 +/* 8019E330 0019B290 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 8019E334 0019B294 EC 07 20 28 */ fsubs f0, f7, f4 +/* 8019E338 0019B298 D0 61 00 0C */ stfs f3, 0xc(r1) +/* 8019E33C 0019B29C D0 41 00 10 */ stfs f2, 0x10(r1) +/* 8019E340 0019B2A0 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 8019E344 0019B2A4 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8019E348 0019B2A8 48 19 A1 C1 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 8019E34C 0019B2AC 80 01 00 74 */ lwz r0, 0x74(r1) +/* 8019E350 0019B2B0 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 8019E354 0019B2B4 7C 08 03 A6 */ mtlr r0 +/* 8019E358 0019B2B8 38 21 00 70 */ addi r1, r1, 0x70 +/* 8019E35C 0019B2BC 4E 80 00 20 */ blr + +.global sub_8019e360 +sub_8019e360: +/* 8019E360 0019B2C0 94 21 FE 50 */ stwu r1, -0x1b0(r1) +/* 8019E364 0019B2C4 7C 08 02 A6 */ mflr r0 +/* 8019E368 0019B2C8 90 01 01 B4 */ stw r0, 0x1b4(r1) +/* 8019E36C 0019B2CC DB E1 01 A0 */ stfd f31, 0x1a0(r1) +/* 8019E370 0019B2D0 F3 E1 01 A8 */ psq_st f31, 424(r1), 0, qr0 +/* 8019E374 0019B2D4 DB C1 01 90 */ stfd f30, 0x190(r1) +/* 8019E378 0019B2D8 F3 C1 01 98 */ psq_st f30, 408(r1), 0, qr0 +/* 8019E37C 0019B2DC DB A1 01 80 */ stfd f29, 0x180(r1) +/* 8019E380 0019B2E0 F3 A1 01 88 */ psq_st f29, 392(r1), 0, qr0 +/* 8019E384 0019B2E4 DB 81 01 70 */ stfd f28, 0x170(r1) +/* 8019E388 0019B2E8 F3 81 01 78 */ psq_st f28, 376(r1), 0, qr0 +/* 8019E38C 0019B2EC DB 61 01 60 */ stfd f27, 0x160(r1) +/* 8019E390 0019B2F0 F3 61 01 68 */ psq_st f27, 360(r1), 0, qr0 +/* 8019E394 0019B2F4 DB 41 01 50 */ stfd f26, 0x150(r1) +/* 8019E398 0019B2F8 F3 41 01 58 */ psq_st f26, 344(r1), 0, qr0 +/* 8019E39C 0019B2FC BF 61 01 3C */ stmw r27, 0x13c(r1) +/* 8019E3A0 0019B300 7C 7E 1B 78 */ mr r30, r3 +/* 8019E3A4 0019B304 FF 40 08 90 */ fmr f26, f1 +/* 8019E3A8 0019B308 80 A3 04 50 */ lwz r5, 0x450(r3) +/* 8019E3AC 0019B30C 7C 9F 23 78 */ mr r31, r4 +/* 8019E3B0 0019B310 80 05 02 EC */ lwz r0, 0x2ec(r5) +/* 8019E3B4 0019B314 2C 00 00 00 */ cmpwi r0, 0 +/* 8019E3B8 0019B318 41 82 02 F4 */ beq lbl_8019E6AC +/* 8019E3BC 0019B31C 81 83 00 00 */ lwz r12, 0(r3) +/* 8019E3C0 0019B320 81 8C 02 B8 */ lwz r12, 0x2b8(r12) +/* 8019E3C4 0019B324 7D 89 03 A6 */ mtctr r12 +/* 8019E3C8 0019B328 4E 80 04 21 */ bctrl +/* 8019E3CC 0019B32C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8019E3D0 0019B330 41 82 02 DC */ beq lbl_8019E6AC +/* 8019E3D4 0019B334 83 BF 08 4C */ lwz r29, 0x84c(r31) +/* 8019E3D8 0019B338 80 1D 02 F8 */ lwz r0, 0x2f8(r29) +/* 8019E3DC 0019B33C 2C 00 00 01 */ cmpwi r0, 1 +/* 8019E3E0 0019B340 41 82 02 CC */ beq lbl_8019E6AC +/* 8019E3E4 0019B344 80 9E 00 64 */ lwz r4, 0x64(r30) +/* 8019E3E8 0019B348 38 61 00 BC */ addi r3, r1, 0xbc +/* 8019E3EC 0019B34C 38 BE 00 34 */ addi r5, r30, 0x34 +/* 8019E3F0 0019B350 4B F7 73 C5 */ bl GetBounds__10CModelDataCFRC12CTransform4f +/* 8019E3F4 0019B354 C0 A1 00 BC */ lfs f5, 0xbc(r1) +/* 8019E3F8 0019B358 7F A4 EB 78 */ mr r4, r29 +/* 8019E3FC 0019B35C C0 81 00 C0 */ lfs f4, 0xc0(r1) +/* 8019E400 0019B360 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 8019E404 0019B364 C0 61 00 C4 */ lfs f3, 0xc4(r1) +/* 8019E408 0019B368 C0 41 00 C8 */ lfs f2, 0xc8(r1) +/* 8019E40C 0019B36C C0 21 00 CC */ lfs f1, 0xcc(r1) +/* 8019E410 0019B370 C0 01 00 D0 */ lfs f0, 0xd0(r1) +/* 8019E414 0019B374 D0 A1 00 EC */ stfs f5, 0xec(r1) +/* 8019E418 0019B378 D0 81 00 F0 */ stfs f4, 0xf0(r1) +/* 8019E41C 0019B37C D0 61 00 F4 */ stfs f3, 0xf4(r1) +/* 8019E420 0019B380 D0 41 00 F8 */ stfs f2, 0xf8(r1) +/* 8019E424 0019B384 D0 21 00 FC */ stfs f1, 0xfc(r1) +/* 8019E428 0019B388 D0 01 01 00 */ stfs f0, 0x100(r1) +/* 8019E42C 0019B38C 4B F7 C5 01 */ bl GetBoundingBox__13CPhysicsActorCFv +/* 8019E430 0019B390 C0 A1 00 A4 */ lfs f5, 0xa4(r1) +/* 8019E434 0019B394 38 61 00 EC */ addi r3, r1, 0xec +/* 8019E438 0019B398 C0 81 00 A8 */ lfs f4, 0xa8(r1) +/* 8019E43C 0019B39C 38 81 00 D4 */ addi r4, r1, 0xd4 +/* 8019E440 0019B3A0 C0 61 00 AC */ lfs f3, 0xac(r1) +/* 8019E444 0019B3A4 C0 41 00 B0 */ lfs f2, 0xb0(r1) +/* 8019E448 0019B3A8 C0 21 00 B4 */ lfs f1, 0xb4(r1) +/* 8019E44C 0019B3AC C0 01 00 B8 */ lfs f0, 0xb8(r1) +/* 8019E450 0019B3B0 D0 A1 00 D4 */ stfs f5, 0xd4(r1) +/* 8019E454 0019B3B4 D0 81 00 D8 */ stfs f4, 0xd8(r1) +/* 8019E458 0019B3B8 D0 61 00 DC */ stfs f3, 0xdc(r1) +/* 8019E45C 0019B3BC D0 41 00 E0 */ stfs f2, 0xe0(r1) +/* 8019E460 0019B3C0 D0 21 00 E4 */ stfs f1, 0xe4(r1) +/* 8019E464 0019B3C4 D0 01 00 E8 */ stfs f0, 0xe8(r1) +/* 8019E468 0019B3C8 48 19 97 1D */ bl DoBoundsOverlap__6CAABoxCFRC6CAABox +/* 8019E46C 0019B3CC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8019E470 0019B3D0 41 82 02 3C */ beq lbl_8019E6AC +/* 8019E474 0019B3D4 80 DE 00 64 */ lwz r6, 0x64(r30) +/* 8019E478 0019B3D8 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8019E47C 0019B3DC 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 8019E480 0019B3E0 C0 02 A7 58 */ lfs f0, lbl_805AC478@sda21(r2) +/* 8019E484 0019B3E4 C0 A6 00 04 */ lfs f5, 4(r6) +/* 8019E488 0019B3E8 FC 20 D0 90 */ fmr f1, f26 +/* 8019E48C 0019B3EC C0 C6 00 00 */ lfs f6, 0(r6) +/* 8019E490 0019B3F0 7F C4 F3 78 */ mr r4, r30 +/* 8019E494 0019B3F4 C0 86 00 08 */ lfs f4, 8(r6) +/* 8019E498 0019B3F8 EF 80 01 72 */ fmuls f28, f0, f5 +/* 8019E49C 0019B3FC C0 65 00 00 */ lfs f3, 0(r5) +/* 8019E4A0 0019B400 C0 45 00 04 */ lfs f2, 4(r5) +/* 8019E4A4 0019B404 38 61 01 04 */ addi r3, r1, 0x104 +/* 8019E4A8 0019B408 C0 05 00 08 */ lfs f0, 8(r5) +/* 8019E4AC 0019B40C D0 C1 00 4C */ stfs f6, 0x4c(r1) +/* 8019E4B0 0019B410 C3 62 A7 5C */ lfs f27, lbl_805AC47C@sda21(r2) +/* 8019E4B4 0019B414 D0 A1 00 50 */ stfs f5, 0x50(r1) +/* 8019E4B8 0019B418 D0 81 00 54 */ stfs f4, 0x54(r1) +/* 8019E4BC 0019B41C D0 61 00 98 */ stfs f3, 0x98(r1) +/* 8019E4C0 0019B420 D0 41 00 9C */ stfs f2, 0x9c(r1) +/* 8019E4C4 0019B424 D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 8019E4C8 0019B428 4B F7 D7 E9 */ bl PredictMotion__13CPhysicsActorCFf +/* 8019E4CC 0019B42C 3B 9E 0B 20 */ addi r28, r30, 0xb20 +/* 8019E4D0 0019B430 C3 E1 01 04 */ lfs f31, 0x104(r1) +/* 8019E4D4 0019B434 C3 C1 01 08 */ lfs f30, 0x108(r1) +/* 8019E4D8 0019B438 7F 9B E3 78 */ mr r27, r28 +/* 8019E4DC 0019B43C C3 A1 01 0C */ lfs f29, 0x10c(r1) +/* 8019E4E0 0019B440 48 00 00 C0 */ b lbl_8019E5A0 +lbl_8019E4E4: +/* 8019E4E4 0019B444 88 1B 00 00 */ lbz r0, 0(r27) +/* 8019E4E8 0019B448 7F E5 FB 78 */ mr r5, r31 +/* 8019E4EC 0019B44C 38 61 00 3C */ addi r3, r1, 0x3c +/* 8019E4F0 0019B450 38 C1 00 08 */ addi r6, r1, 8 +/* 8019E4F4 0019B454 98 01 00 08 */ stb r0, 8(r1) +/* 8019E4F8 0019B458 80 9E 0A 2C */ lwz r4, 0xa2c(r30) +/* 8019E4FC 0019B45C 48 00 8B 99 */ bl sub_801a7094 +/* 8019E500 0019B460 88 01 00 48 */ lbz r0, 0x48(r1) +/* 8019E504 0019B464 28 00 00 00 */ cmplwi r0, 0 +/* 8019E508 0019B468 98 01 00 94 */ stb r0, 0x94(r1) +/* 8019E50C 0019B46C 41 82 00 24 */ beq lbl_8019E530 +/* 8019E510 0019B470 34 61 00 88 */ addic. r3, r1, 0x88 +/* 8019E514 0019B474 41 82 00 1C */ beq lbl_8019E530 +/* 8019E518 0019B478 C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 8019E51C 0019B47C D0 03 00 00 */ stfs f0, 0(r3) +/* 8019E520 0019B480 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 8019E524 0019B484 D0 03 00 04 */ stfs f0, 4(r3) +/* 8019E528 0019B488 C0 01 00 44 */ lfs f0, 0x44(r1) +/* 8019E52C 0019B48C D0 03 00 08 */ stfs f0, 8(r3) +lbl_8019E530: +/* 8019E530 0019B490 88 01 00 94 */ lbz r0, 0x94(r1) +/* 8019E534 0019B494 38 60 00 00 */ li r3, 0 +/* 8019E538 0019B498 98 61 00 48 */ stb r3, 0x48(r1) +/* 8019E53C 0019B49C 28 00 00 00 */ cmplwi r0, 0 +/* 8019E540 0019B4A0 41 82 00 54 */ beq lbl_8019E594 +/* 8019E544 0019B4A4 C0 41 00 8C */ lfs f2, 0x8c(r1) +/* 8019E548 0019B4A8 38 61 00 7C */ addi r3, r1, 0x7c +/* 8019E54C 0019B4AC C0 21 00 90 */ lfs f1, 0x90(r1) +/* 8019E550 0019B4B0 C0 01 00 88 */ lfs f0, 0x88(r1) +/* 8019E554 0019B4B4 EC 42 F0 2A */ fadds f2, f2, f30 +/* 8019E558 0019B4B8 EC 21 E8 2A */ fadds f1, f1, f29 +/* 8019E55C 0019B4BC EC 00 F8 2A */ fadds f0, f0, f31 +/* 8019E560 0019B4C0 D0 41 00 80 */ stfs f2, 0x80(r1) +/* 8019E564 0019B4C4 D0 01 00 7C */ stfs f0, 0x7c(r1) +/* 8019E568 0019B4C8 D0 21 00 84 */ stfs f1, 0x84(r1) +/* 8019E56C 0019B4CC 48 17 63 4D */ bl Magnitude__9CVector3fCFv +/* 8019E570 0019B4D0 FC 01 D8 40 */ fcmpo cr0, f1, f27 +/* 8019E574 0019B4D4 40 81 00 20 */ ble lbl_8019E594 +/* 8019E578 0019B4D8 C0 41 00 7C */ lfs f2, 0x7c(r1) +/* 8019E57C 0019B4DC FF 60 08 90 */ fmr f27, f1 +/* 8019E580 0019B4E0 C0 21 00 80 */ lfs f1, 0x80(r1) +/* 8019E584 0019B4E4 C0 01 00 84 */ lfs f0, 0x84(r1) +/* 8019E588 0019B4E8 D0 41 00 98 */ stfs f2, 0x98(r1) +/* 8019E58C 0019B4EC D0 21 00 9C */ stfs f1, 0x9c(r1) +/* 8019E590 0019B4F0 D0 01 00 A0 */ stfs f0, 0xa0(r1) +lbl_8019E594: +/* 8019E594 0019B4F4 38 00 00 00 */ li r0, 0 +/* 8019E598 0019B4F8 3B 7B 00 01 */ addi r27, r27, 1 +/* 8019E59C 0019B4FC 98 01 00 94 */ stb r0, 0x94(r1) +lbl_8019E5A0: +/* 8019E5A0 0019B500 80 1E 0B 1C */ lwz r0, 0xb1c(r30) +/* 8019E5A4 0019B504 7C 1C 02 14 */ add r0, r28, r0 +/* 8019E5A8 0019B508 7C 1B 00 40 */ cmplw r27, r0 +/* 8019E5AC 0019B50C 40 82 FF 38 */ bne lbl_8019E4E4 +/* 8019E5B0 0019B510 FC 1B E0 40 */ fcmpo cr0, f27, f28 +/* 8019E5B4 0019B514 40 81 00 F8 */ ble lbl_8019E6AC +/* 8019E5B8 0019B518 C0 9E 00 40 */ lfs f4, 0x40(r30) +/* 8019E5BC 0019B51C EF BB E0 28 */ fsubs f29, f27, f28 +/* 8019E5C0 0019B520 C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 8019E5C4 0019B524 38 61 00 24 */ addi r3, r1, 0x24 +/* 8019E5C8 0019B528 C0 7E 00 50 */ lfs f3, 0x50(r30) +/* 8019E5CC 0019B52C 38 81 00 98 */ addi r4, r1, 0x98 +/* 8019E5D0 0019B530 C0 5D 00 50 */ lfs f2, 0x50(r29) +/* 8019E5D4 0019B534 C0 3E 00 60 */ lfs f1, 0x60(r30) +/* 8019E5D8 0019B538 EF E4 00 28 */ fsubs f31, f4, f0 +/* 8019E5DC 0019B53C C0 1D 00 60 */ lfs f0, 0x60(r29) +/* 8019E5E0 0019B540 EF 83 10 28 */ fsubs f28, f3, f2 +/* 8019E5E4 0019B544 EF 61 00 28 */ fsubs f27, f1, f0 +/* 8019E5E8 0019B548 48 17 62 69 */ bl AsNormalized__9CVector3fCFv +/* 8019E5EC 0019B54C C0 21 00 28 */ lfs f1, 0x28(r1) +/* 8019E5F0 0019B550 EC 1C 07 32 */ fmuls f0, f28, f28 +/* 8019E5F4 0019B554 C0 61 00 24 */ lfs f3, 0x24(r1) +/* 8019E5F8 0019B558 38 61 00 18 */ addi r3, r1, 0x18 +/* 8019E5FC 0019B55C EC 5D 00 72 */ fmuls f2, f29, f1 +/* 8019E600 0019B560 C0 21 00 2C */ lfs f1, 0x2c(r1) +/* 8019E604 0019B564 EC 7D 00 F2 */ fmuls f3, f29, f3 +/* 8019E608 0019B568 EC 9D 00 72 */ fmuls f4, f29, f1 +/* 8019E60C 0019B56C 38 9E 00 34 */ addi r4, r30, 0x34 +/* 8019E610 0019B570 EC 3C 00 B2 */ fmuls f1, f28, f2 +/* 8019E614 0019B574 EC 1F 07 FA */ fmadds f0, f31, f31, f0 +/* 8019E618 0019B578 D0 61 00 30 */ stfs f3, 0x30(r1) +/* 8019E61C 0019B57C 38 A1 00 70 */ addi r5, r1, 0x70 +/* 8019E620 0019B580 EC 3F 08 FA */ fmadds f1, f31, f3, f1 +/* 8019E624 0019B584 D0 41 00 34 */ stfs f2, 0x34(r1) +/* 8019E628 0019B588 EC 1B 06 FA */ fmadds f0, f27, f27, f0 +/* 8019E62C 0019B58C D0 81 00 38 */ stfs f4, 0x38(r1) +/* 8019E630 0019B590 EC 3B 09 3A */ fmadds f1, f27, f4, f1 +/* 8019E634 0019B594 EC 01 00 24 */ fdivs f0, f1, f0 +/* 8019E638 0019B598 EC 40 07 F2 */ fmuls f2, f0, f31 +/* 8019E63C 0019B59C EC 20 07 32 */ fmuls f1, f0, f28 +/* 8019E640 0019B5A0 EC 00 06 F2 */ fmuls f0, f0, f27 +/* 8019E644 0019B5A4 D0 41 00 70 */ stfs f2, 0x70(r1) +/* 8019E648 0019B5A8 D0 21 00 74 */ stfs f1, 0x74(r1) +/* 8019E64C 0019B5AC D0 01 00 78 */ stfs f0, 0x78(r1) +/* 8019E650 0019B5B0 48 17 43 D5 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 8019E654 0019B5B4 C0 61 00 18 */ lfs f3, 0x18(r1) +/* 8019E658 0019B5B8 FC 20 D0 90 */ fmr f1, f26 +/* 8019E65C 0019B5BC C0 41 00 1C */ lfs f2, 0x1c(r1) +/* 8019E660 0019B5C0 7F C4 F3 78 */ mr r4, r30 +/* 8019E664 0019B5C4 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 8019E668 0019B5C8 38 61 00 0C */ addi r3, r1, 0xc +/* 8019E66C 0019B5CC D0 61 00 64 */ stfs f3, 0x64(r1) +/* 8019E670 0019B5D0 38 A1 00 64 */ addi r5, r1, 0x64 +/* 8019E674 0019B5D4 D0 41 00 68 */ stfs f2, 0x68(r1) +/* 8019E678 0019B5D8 D0 01 00 6C */ stfs f0, 0x6c(r1) +/* 8019E67C 0019B5DC 4B F7 C9 8D */ bl GetMoveToORImpulseWR__13CPhysicsActorCFRC9CVector3ff +/* 8019E680 0019B5E0 C0 41 00 0C */ lfs f2, 0xc(r1) +/* 8019E684 0019B5E4 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 8019E688 0019B5E8 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 8019E68C 0019B5EC D0 41 00 58 */ stfs f2, 0x58(r1) +/* 8019E690 0019B5F0 D0 21 00 5C */ stfs f1, 0x5c(r1) +/* 8019E694 0019B5F4 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 8019E698 0019B5F8 4B E7 CE 9D */ bl Identity__10CAxisAngleFv +/* 8019E69C 0019B5FC 7C 65 1B 78 */ mr r5, r3 +/* 8019E6A0 0019B600 7F C3 F3 78 */ mr r3, r30 +/* 8019E6A4 0019B604 38 81 00 58 */ addi r4, r1, 0x58 +/* 8019E6A8 0019B608 4B F7 DC F1 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +lbl_8019E6AC: +/* 8019E6AC 0019B60C E3 E1 01 A8 */ psq_l f31, 424(r1), 0, qr0 +/* 8019E6B0 0019B610 CB E1 01 A0 */ lfd f31, 0x1a0(r1) +/* 8019E6B4 0019B614 E3 C1 01 98 */ psq_l f30, 408(r1), 0, qr0 +/* 8019E6B8 0019B618 CB C1 01 90 */ lfd f30, 0x190(r1) +/* 8019E6BC 0019B61C E3 A1 01 88 */ psq_l f29, 392(r1), 0, qr0 +/* 8019E6C0 0019B620 CB A1 01 80 */ lfd f29, 0x180(r1) +/* 8019E6C4 0019B624 E3 81 01 78 */ psq_l f28, 376(r1), 0, qr0 +/* 8019E6C8 0019B628 CB 81 01 70 */ lfd f28, 0x170(r1) +/* 8019E6CC 0019B62C E3 61 01 68 */ psq_l f27, 360(r1), 0, qr0 +/* 8019E6D0 0019B630 CB 61 01 60 */ lfd f27, 0x160(r1) +/* 8019E6D4 0019B634 E3 41 01 58 */ psq_l f26, 344(r1), 0, qr0 +/* 8019E6D8 0019B638 CB 41 01 50 */ lfd f26, 0x150(r1) +/* 8019E6DC 0019B63C BB 61 01 3C */ lmw r27, 0x13c(r1) +/* 8019E6E0 0019B640 80 01 01 B4 */ lwz r0, 0x1b4(r1) +/* 8019E6E4 0019B644 7C 08 03 A6 */ mtlr r0 +/* 8019E6E8 0019B648 38 21 01 B0 */ addi r1, r1, 0x1b0 +/* 8019E6EC 0019B64C 4E 80 00 20 */ blr + +.global sub_8019e6f0 +sub_8019e6f0: +/* 8019E6F0 0019B650 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8019E6F4 0019B654 7C 08 02 A6 */ mflr r0 +/* 8019E6F8 0019B658 90 01 00 14 */ stw r0, 0x14(r1) +/* 8019E6FC 0019B65C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8019E700 0019B660 7C 9F 23 78 */ mr r31, r4 +/* 8019E704 0019B664 93 C1 00 08 */ stw r30, 8(r1) +/* 8019E708 0019B668 7C 7E 1B 78 */ mr r30, r3 +/* 8019E70C 0019B66C 88 03 0B 29 */ lbz r0, 0xb29(r3) +/* 8019E710 0019B670 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 8019E714 0019B674 40 82 00 48 */ bne lbl_8019E75C +/* 8019E718 0019B678 4B EB 4D B1 */ bl GetScannableObjectInfo__6CActorCFv +/* 8019E71C 0019B67C 28 03 00 00 */ cmplwi r3, 0 +/* 8019E720 0019B680 41 82 00 3C */ beq lbl_8019E75C +/* 8019E724 0019B684 80 BF 08 B8 */ lwz r5, 0x8b8(r31) +/* 8019E728 0019B688 80 83 00 00 */ lwz r4, 0(r3) +/* 8019E72C 0019B68C 80 65 00 00 */ lwz r3, 0(r5) +/* 8019E730 0019B690 4B EF 2F 61 */ bl GetScanTime__12CPlayerStateCFUi +/* 8019E734 0019B694 C0 42 A7 60 */ lfs f2, lbl_805AC480@sda21(r2) +/* 8019E738 0019B698 C0 02 A7 64 */ lfs f0, lbl_805AC484@sda21(r2) +/* 8019E73C 0019B69C EC 22 08 28 */ fsubs f1, f2, f1 +/* 8019E740 0019B6A0 FC 20 0A 10 */ fabs f1, f1 +/* 8019E744 0019B6A4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8019E748 0019B6A8 40 80 00 14 */ bge lbl_8019E75C +/* 8019E74C 0019B6AC 88 1E 0B 29 */ lbz r0, 0xb29(r30) +/* 8019E750 0019B6B0 38 60 00 01 */ li r3, 1 +/* 8019E754 0019B6B4 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 8019E758 0019B6B8 98 1E 0B 29 */ stb r0, 0xb29(r30) +lbl_8019E75C: +/* 8019E75C 0019B6BC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8019E760 0019B6C0 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8019E764 0019B6C4 83 C1 00 08 */ lwz r30, 8(r1) +/* 8019E768 0019B6C8 7C 08 03 A6 */ mtlr r0 +/* 8019E76C 0019B6CC 38 21 00 10 */ addi r1, r1, 0x10 +/* 8019E770 0019B6D0 4E 80 00 20 */ blr + +.global sub_8019e774 +sub_8019e774: +/* 8019E774 0019B6D4 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 8019E778 0019B6D8 7C 08 02 A6 */ mflr r0 +/* 8019E77C 0019B6DC 90 01 00 74 */ stw r0, 0x74(r1) +/* 8019E780 0019B6E0 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 8019E784 0019B6E4 93 C1 00 68 */ stw r30, 0x68(r1) +/* 8019E788 0019B6E8 7C BE 2B 78 */ mr r30, r5 +/* 8019E78C 0019B6EC 93 A1 00 64 */ stw r29, 0x64(r1) +/* 8019E790 0019B6F0 7C 9D 23 78 */ mr r29, r4 +/* 8019E794 0019B6F4 38 81 00 18 */ addi r4, r1, 0x18 +/* 8019E798 0019B6F8 93 81 00 60 */ stw r28, 0x60(r1) +/* 8019E79C 0019B6FC 7C 7C 1B 78 */ mr r28, r3 +/* 8019E7A0 0019B700 7F A3 EB 78 */ mr r3, r29 +/* 8019E7A4 0019B704 A0 05 00 00 */ lhz r0, 0(r5) +/* 8019E7A8 0019B708 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8019E7AC 0019B70C 4B EA DD F9 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8019E7B0 0019B710 7C 64 1B 78 */ mr r4, r3 +/* 8019E7B4 0019B714 38 61 00 1C */ addi r3, r1, 0x1c +/* 8019E7B8 0019B718 4B F0 70 E1 */ bl "__ct__20TCastToPtr<7CWeapon>FP7CEntity" +/* 8019E7BC 0019B71C 83 E3 00 04 */ lwz r31, 4(r3) +/* 8019E7C0 0019B720 28 1F 00 00 */ cmplwi r31, 0 +/* 8019E7C4 0019B724 41 82 00 B0 */ beq lbl_8019E874 +/* 8019E7C8 0019B728 80 1F 01 2C */ lwz r0, 0x12c(r31) +/* 8019E7CC 0019B72C 38 60 00 00 */ li r3, 0 +/* 8019E7D0 0019B730 C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 8019E7D4 0019B734 38 80 00 01 */ li r4, 1 +/* 8019E7D8 0019B738 90 01 00 40 */ stw r0, 0x40(r1) +/* 8019E7DC 0019B73C 80 AD 8F F8 */ lwz r5, lbl_805A7BB8@sda21(r13) +/* 8019E7E0 0019B740 88 1F 01 30 */ lbz r0, 0x130(r31) +/* 8019E7E4 0019B744 98 01 00 44 */ stb r0, 0x44(r1) +/* 8019E7E8 0019B748 C0 3F 01 34 */ lfs f1, 0x134(r31) +/* 8019E7EC 0019B74C D0 21 00 48 */ stfs f1, 0x48(r1) +/* 8019E7F0 0019B750 C0 3F 01 38 */ lfs f1, 0x138(r31) +/* 8019E7F4 0019B754 D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 8019E7F8 0019B758 C0 3F 01 3C */ lfs f1, 0x13c(r31) +/* 8019E7FC 0019B75C D0 21 00 50 */ stfs f1, 0x50(r1) +/* 8019E800 0019B760 C0 3F 01 40 */ lfs f1, 0x140(r31) +/* 8019E804 0019B764 D0 21 00 54 */ stfs f1, 0x54(r1) +/* 8019E808 0019B768 88 1F 01 44 */ lbz r0, 0x144(r31) +/* 8019E80C 0019B76C 98 01 00 58 */ stb r0, 0x58(r1) +/* 8019E810 0019B770 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 8019E814 0019B774 48 1E B6 E1 */ bl __shl2i +/* 8019E818 0019B778 39 00 00 00 */ li r8, 0 +/* 8019E81C 0019B77C 39 40 00 03 */ li r10, 3 +/* 8019E820 0019B780 90 81 00 2C */ stw r4, 0x2c(r1) +/* 8019E824 0019B784 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8019E828 0019B788 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 8019E82C 0019B78C A0 1E 00 00 */ lhz r0, 0(r30) +/* 8019E830 0019B790 90 61 00 28 */ stw r3, 0x28(r1) +/* 8019E834 0019B794 7F A3 EB 78 */ mr r3, r29 +/* 8019E838 0019B798 38 81 00 14 */ addi r4, r1, 0x14 +/* 8019E83C 0019B79C 38 A1 00 10 */ addi r5, r1, 0x10 +/* 8019E840 0019B7A0 91 01 00 34 */ stw r8, 0x34(r1) +/* 8019E844 0019B7A4 38 C1 00 0C */ addi r6, r1, 0xc +/* 8019E848 0019B7A8 38 E1 00 40 */ addi r7, r1, 0x40 +/* 8019E84C 0019B7AC 91 01 00 30 */ stw r8, 0x30(r1) +/* 8019E850 0019B7B0 39 01 00 28 */ addi r8, r1, 0x28 +/* 8019E854 0019B7B4 91 41 00 38 */ stw r10, 0x38(r1) +/* 8019E858 0019B7B8 A1 7F 00 EC */ lhz r11, 0xec(r31) +/* 8019E85C 0019B7BC B1 61 00 0C */ sth r11, 0xc(r1) +/* 8019E860 0019B7C0 A1 5C 0A F8 */ lhz r10, 0xaf8(r28) +/* 8019E864 0019B7C4 B1 61 00 08 */ sth r11, 8(r1) +/* 8019E868 0019B7C8 B1 41 00 10 */ sth r10, 0x10(r1) +/* 8019E86C 0019B7CC B0 01 00 14 */ sth r0, 0x14(r1) +/* 8019E870 0019B7D0 4B EA B8 31 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +lbl_8019E874: +/* 8019E874 0019B7D4 80 01 00 74 */ lwz r0, 0x74(r1) +/* 8019E878 0019B7D8 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 8019E87C 0019B7DC 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 8019E880 0019B7E0 83 A1 00 64 */ lwz r29, 0x64(r1) +/* 8019E884 0019B7E4 83 81 00 60 */ lwz r28, 0x60(r1) +/* 8019E888 0019B7E8 7C 08 03 A6 */ mtlr r0 +/* 8019E88C 0019B7EC 38 21 00 70 */ addi r1, r1, 0x70 +/* 8019E890 0019B7F0 4E 80 00 20 */ blr + +.global sub_8019e894 +sub_8019e894: +/* 8019E894 0019B7F4 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 8019E898 0019B7F8 7C 08 02 A6 */ mflr r0 +/* 8019E89C 0019B7FC 54 A5 06 3F */ clrlwi. r5, r5, 0x18 +/* 8019E8A0 0019B800 90 01 00 84 */ stw r0, 0x84(r1) +/* 8019E8A4 0019B804 7C 80 23 78 */ mr r0, r4 +/* 8019E8A8 0019B808 41 82 00 0C */ beq lbl_8019E8B4 +/* 8019E8AC 0019B80C 38 A3 06 54 */ addi r5, r3, 0x654 +/* 8019E8B0 0019B810 48 00 00 08 */ b lbl_8019E8B8 +lbl_8019E8B4: +/* 8019E8B4 0019B814 38 A3 09 8C */ addi r5, r3, 0x98c +lbl_8019E8B8: +/* 8019E8B8 0019B818 80 E5 00 00 */ lwz r7, 0(r5) +/* 8019E8BC 0019B81C 38 81 00 08 */ addi r4, r1, 8 +/* 8019E8C0 0019B820 80 C5 00 04 */ lwz r6, 4(r5) +/* 8019E8C4 0019B824 90 E1 00 14 */ stw r7, 0x14(r1) +/* 8019E8C8 0019B828 90 C1 00 18 */ stw r6, 0x18(r1) +/* 8019E8CC 0019B82C 80 E5 00 08 */ lwz r7, 8(r5) +/* 8019E8D0 0019B830 80 C5 00 0C */ lwz r6, 0xc(r5) +/* 8019E8D4 0019B834 90 E1 00 1C */ stw r7, 0x1c(r1) +/* 8019E8D8 0019B838 90 C1 00 20 */ stw r6, 0x20(r1) +/* 8019E8DC 0019B83C 80 E5 00 10 */ lwz r7, 0x10(r5) +/* 8019E8E0 0019B840 80 C5 00 14 */ lwz r6, 0x14(r5) +/* 8019E8E4 0019B844 90 E1 00 24 */ stw r7, 0x24(r1) +/* 8019E8E8 0019B848 90 C1 00 28 */ stw r6, 0x28(r1) +/* 8019E8EC 0019B84C 80 E5 00 18 */ lwz r7, 0x18(r5) +/* 8019E8F0 0019B850 80 C5 00 1C */ lwz r6, 0x1c(r5) +/* 8019E8F4 0019B854 90 E1 00 2C */ stw r7, 0x2c(r1) +/* 8019E8F8 0019B858 90 C1 00 30 */ stw r6, 0x30(r1) +/* 8019E8FC 0019B85C 80 E5 00 20 */ lwz r7, 0x20(r5) +/* 8019E900 0019B860 80 C5 00 24 */ lwz r6, 0x24(r5) +/* 8019E904 0019B864 90 E1 00 34 */ stw r7, 0x34(r1) +/* 8019E908 0019B868 90 C1 00 38 */ stw r6, 0x38(r1) +/* 8019E90C 0019B86C 80 E5 00 28 */ lwz r7, 0x28(r5) +/* 8019E910 0019B870 80 C5 00 2C */ lwz r6, 0x2c(r5) +/* 8019E914 0019B874 90 E1 00 3C */ stw r7, 0x3c(r1) +/* 8019E918 0019B878 90 C1 00 40 */ stw r6, 0x40(r1) +/* 8019E91C 0019B87C 80 E5 00 30 */ lwz r7, 0x30(r5) +/* 8019E920 0019B880 80 C5 00 34 */ lwz r6, 0x34(r5) +/* 8019E924 0019B884 90 E1 00 44 */ stw r7, 0x44(r1) +/* 8019E928 0019B888 90 C1 00 48 */ stw r6, 0x48(r1) +/* 8019E92C 0019B88C 80 C5 00 38 */ lwz r6, 0x38(r5) +/* 8019E930 0019B890 90 C1 00 4C */ stw r6, 0x4c(r1) +/* 8019E934 0019B894 80 E5 00 3C */ lwz r7, 0x3c(r5) +/* 8019E938 0019B898 80 C5 00 40 */ lwz r6, 0x40(r5) +/* 8019E93C 0019B89C 90 E1 00 50 */ stw r7, 0x50(r1) +/* 8019E940 0019B8A0 90 C1 00 54 */ stw r6, 0x54(r1) +/* 8019E944 0019B8A4 80 E5 00 44 */ lwz r7, 0x44(r5) +/* 8019E948 0019B8A8 80 C5 00 48 */ lwz r6, 0x48(r5) +/* 8019E94C 0019B8AC 90 E1 00 58 */ stw r7, 0x58(r1) +/* 8019E950 0019B8B0 90 C1 00 5C */ stw r6, 0x5c(r1) +/* 8019E954 0019B8B4 80 E5 00 4C */ lwz r7, 0x4c(r5) +/* 8019E958 0019B8B8 80 C5 00 50 */ lwz r6, 0x50(r5) +/* 8019E95C 0019B8BC 90 E1 00 60 */ stw r7, 0x60(r1) +/* 8019E960 0019B8C0 90 C1 00 64 */ stw r6, 0x64(r1) +/* 8019E964 0019B8C4 80 E5 00 54 */ lwz r7, 0x54(r5) +/* 8019E968 0019B8C8 80 C5 00 58 */ lwz r6, 0x58(r5) +/* 8019E96C 0019B8CC 90 E1 00 68 */ stw r7, 0x68(r1) +/* 8019E970 0019B8D0 90 C1 00 6C */ stw r6, 0x6c(r1) +/* 8019E974 0019B8D4 80 C5 00 5C */ lwz r6, 0x5c(r5) +/* 8019E978 0019B8D8 90 C1 00 70 */ stw r6, 0x70(r1) +/* 8019E97C 0019B8DC 80 C5 00 60 */ lwz r6, 0x60(r5) +/* 8019E980 0019B8E0 90 C1 00 74 */ stw r6, 0x74(r1) +/* 8019E984 0019B8E4 80 A5 00 64 */ lwz r5, 0x64(r5) +/* 8019E988 0019B8E8 90 A1 00 78 */ stw r5, 0x78(r1) +/* 8019E98C 0019B8EC A0 A3 0A F8 */ lhz r5, 0xaf8(r3) +/* 8019E990 0019B8F0 7C 03 03 78 */ mr r3, r0 +/* 8019E994 0019B8F4 B0 A1 00 08 */ sth r5, 8(r1) +/* 8019E998 0019B8F8 4B EA DB DD */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8019E99C 0019B8FC 7C 64 1B 78 */ mr r4, r3 +/* 8019E9A0 0019B900 38 61 00 0C */ addi r3, r1, 0xc +/* 8019E9A4 0019B904 4B F1 09 A9 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8019E9A8 0019B908 80 63 00 04 */ lwz r3, 4(r3) +/* 8019E9AC 0019B90C 28 03 00 00 */ cmplwi r3, 0 +/* 8019E9B0 0019B910 41 82 00 0C */ beq lbl_8019E9BC +/* 8019E9B4 0019B914 38 81 00 14 */ addi r4, r1, 0x14 +/* 8019E9B8 0019B918 48 00 A1 E1 */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability +lbl_8019E9BC: +/* 8019E9BC 0019B91C 80 01 00 84 */ lwz r0, 0x84(r1) +/* 8019E9C0 0019B920 7C 08 03 A6 */ mtlr r0 +/* 8019E9C4 0019B924 38 21 00 80 */ addi r1, r1, 0x80 +/* 8019E9C8 0019B928 4E 80 00 20 */ blr + +.global sub_8019e9cc +sub_8019e9cc: +/* 8019E9CC 0019B92C 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 8019E9D0 0019B930 7C 08 02 A6 */ mflr r0 +/* 8019E9D4 0019B934 90 01 00 94 */ stw r0, 0x94(r1) +/* 8019E9D8 0019B938 54 A0 06 3F */ clrlwi. r0, r5, 0x18 +/* 8019E9DC 0019B93C 93 E1 00 8C */ stw r31, 0x8c(r1) +/* 8019E9E0 0019B940 93 C1 00 88 */ stw r30, 0x88(r1) +/* 8019E9E4 0019B944 93 A1 00 84 */ stw r29, 0x84(r1) +/* 8019E9E8 0019B948 7C 9D 23 78 */ mr r29, r4 +/* 8019E9EC 0019B94C 93 81 00 80 */ stw r28, 0x80(r1) +/* 8019E9F0 0019B950 7C 7C 1B 78 */ mr r28, r3 +/* 8019E9F4 0019B954 41 82 00 0C */ beq lbl_8019EA00 +/* 8019E9F8 0019B958 38 7C 05 84 */ addi r3, r28, 0x584 +/* 8019E9FC 0019B95C 48 00 00 0C */ b lbl_8019EA08 +lbl_8019EA00: +/* 8019EA00 0019B960 3C 60 80 57 */ lis r3, lbl_8056D718@ha +/* 8019EA04 0019B964 38 63 D7 18 */ addi r3, r3, lbl_8056D718@l +lbl_8019EA08: +/* 8019EA08 0019B968 80 83 00 00 */ lwz r4, 0(r3) +/* 8019EA0C 0019B96C 3B FC 0B 00 */ addi r31, r28, 0xb00 +/* 8019EA10 0019B970 80 03 00 04 */ lwz r0, 4(r3) +/* 8019EA14 0019B974 7F FE FB 78 */ mr r30, r31 +/* 8019EA18 0019B978 90 81 00 14 */ stw r4, 0x14(r1) +/* 8019EA1C 0019B97C 90 01 00 18 */ stw r0, 0x18(r1) +/* 8019EA20 0019B980 80 83 00 08 */ lwz r4, 8(r3) +/* 8019EA24 0019B984 80 03 00 0C */ lwz r0, 0xc(r3) +/* 8019EA28 0019B988 90 81 00 1C */ stw r4, 0x1c(r1) +/* 8019EA2C 0019B98C 90 01 00 20 */ stw r0, 0x20(r1) +/* 8019EA30 0019B990 80 83 00 10 */ lwz r4, 0x10(r3) +/* 8019EA34 0019B994 80 03 00 14 */ lwz r0, 0x14(r3) +/* 8019EA38 0019B998 90 81 00 24 */ stw r4, 0x24(r1) +/* 8019EA3C 0019B99C 90 01 00 28 */ stw r0, 0x28(r1) +/* 8019EA40 0019B9A0 80 83 00 18 */ lwz r4, 0x18(r3) +/* 8019EA44 0019B9A4 80 03 00 1C */ lwz r0, 0x1c(r3) +/* 8019EA48 0019B9A8 90 81 00 2C */ stw r4, 0x2c(r1) +/* 8019EA4C 0019B9AC 90 01 00 30 */ stw r0, 0x30(r1) +/* 8019EA50 0019B9B0 80 83 00 20 */ lwz r4, 0x20(r3) +/* 8019EA54 0019B9B4 80 03 00 24 */ lwz r0, 0x24(r3) +/* 8019EA58 0019B9B8 90 81 00 34 */ stw r4, 0x34(r1) +/* 8019EA5C 0019B9BC 90 01 00 38 */ stw r0, 0x38(r1) +/* 8019EA60 0019B9C0 80 83 00 28 */ lwz r4, 0x28(r3) +/* 8019EA64 0019B9C4 80 03 00 2C */ lwz r0, 0x2c(r3) +/* 8019EA68 0019B9C8 90 81 00 3C */ stw r4, 0x3c(r1) +/* 8019EA6C 0019B9CC 90 01 00 40 */ stw r0, 0x40(r1) +/* 8019EA70 0019B9D0 80 83 00 30 */ lwz r4, 0x30(r3) +/* 8019EA74 0019B9D4 80 03 00 34 */ lwz r0, 0x34(r3) +/* 8019EA78 0019B9D8 90 81 00 44 */ stw r4, 0x44(r1) +/* 8019EA7C 0019B9DC 90 01 00 48 */ stw r0, 0x48(r1) +/* 8019EA80 0019B9E0 80 03 00 38 */ lwz r0, 0x38(r3) +/* 8019EA84 0019B9E4 90 01 00 4C */ stw r0, 0x4c(r1) +/* 8019EA88 0019B9E8 80 83 00 3C */ lwz r4, 0x3c(r3) +/* 8019EA8C 0019B9EC 80 03 00 40 */ lwz r0, 0x40(r3) +/* 8019EA90 0019B9F0 90 81 00 50 */ stw r4, 0x50(r1) +/* 8019EA94 0019B9F4 90 01 00 54 */ stw r0, 0x54(r1) +/* 8019EA98 0019B9F8 80 83 00 44 */ lwz r4, 0x44(r3) +/* 8019EA9C 0019B9FC 80 03 00 48 */ lwz r0, 0x48(r3) +/* 8019EAA0 0019BA00 90 81 00 58 */ stw r4, 0x58(r1) +/* 8019EAA4 0019BA04 90 01 00 5C */ stw r0, 0x5c(r1) +/* 8019EAA8 0019BA08 80 83 00 4C */ lwz r4, 0x4c(r3) +/* 8019EAAC 0019BA0C 80 03 00 50 */ lwz r0, 0x50(r3) +/* 8019EAB0 0019BA10 90 81 00 60 */ stw r4, 0x60(r1) +/* 8019EAB4 0019BA14 90 01 00 64 */ stw r0, 0x64(r1) +/* 8019EAB8 0019BA18 80 83 00 54 */ lwz r4, 0x54(r3) +/* 8019EABC 0019BA1C 80 03 00 58 */ lwz r0, 0x58(r3) +/* 8019EAC0 0019BA20 90 81 00 68 */ stw r4, 0x68(r1) +/* 8019EAC4 0019BA24 90 01 00 6C */ stw r0, 0x6c(r1) +/* 8019EAC8 0019BA28 80 03 00 5C */ lwz r0, 0x5c(r3) +/* 8019EACC 0019BA2C 90 01 00 70 */ stw r0, 0x70(r1) +/* 8019EAD0 0019BA30 80 03 00 60 */ lwz r0, 0x60(r3) +/* 8019EAD4 0019BA34 90 01 00 74 */ stw r0, 0x74(r1) +/* 8019EAD8 0019BA38 80 03 00 64 */ lwz r0, 0x64(r3) +/* 8019EADC 0019BA3C 90 01 00 78 */ stw r0, 0x78(r1) +/* 8019EAE0 0019BA40 48 00 00 3C */ b lbl_8019EB1C +lbl_8019EAE4: +/* 8019EAE4 0019BA44 A0 1E 00 00 */ lhz r0, 0(r30) +/* 8019EAE8 0019BA48 7F A3 EB 78 */ mr r3, r29 +/* 8019EAEC 0019BA4C 38 81 00 08 */ addi r4, r1, 8 +/* 8019EAF0 0019BA50 B0 01 00 08 */ sth r0, 8(r1) +/* 8019EAF4 0019BA54 4B EA DA 81 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8019EAF8 0019BA58 7C 64 1B 78 */ mr r4, r3 +/* 8019EAFC 0019BA5C 38 61 00 0C */ addi r3, r1, 0xc +/* 8019EB00 0019BA60 4B F1 08 4D */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8019EB04 0019BA64 80 63 00 04 */ lwz r3, 4(r3) +/* 8019EB08 0019BA68 28 03 00 00 */ cmplwi r3, 0 +/* 8019EB0C 0019BA6C 41 82 00 0C */ beq lbl_8019EB18 +/* 8019EB10 0019BA70 38 81 00 14 */ addi r4, r1, 0x14 +/* 8019EB14 0019BA74 48 00 A0 85 */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability +lbl_8019EB18: +/* 8019EB18 0019BA78 3B DE 00 02 */ addi r30, r30, 2 +lbl_8019EB1C: +/* 8019EB1C 0019BA7C 80 1C 0A FC */ lwz r0, 0xafc(r28) +/* 8019EB20 0019BA80 54 00 08 3C */ slwi r0, r0, 1 +/* 8019EB24 0019BA84 7C 1F 02 14 */ add r0, r31, r0 +/* 8019EB28 0019BA88 7C 1E 00 40 */ cmplw r30, r0 +/* 8019EB2C 0019BA8C 40 82 FF B8 */ bne lbl_8019EAE4 +/* 8019EB30 0019BA90 80 01 00 94 */ lwz r0, 0x94(r1) +/* 8019EB34 0019BA94 83 E1 00 8C */ lwz r31, 0x8c(r1) +/* 8019EB38 0019BA98 83 C1 00 88 */ lwz r30, 0x88(r1) +/* 8019EB3C 0019BA9C 83 A1 00 84 */ lwz r29, 0x84(r1) +/* 8019EB40 0019BAA0 83 81 00 80 */ lwz r28, 0x80(r1) +/* 8019EB44 0019BAA4 7C 08 03 A6 */ mtlr r0 +/* 8019EB48 0019BAA8 38 21 00 90 */ addi r1, r1, 0x90 +/* 8019EB4C 0019BAAC 4E 80 00 20 */ blr + +.global sub_8019eb50 +sub_8019eb50: +/* 8019EB50 0019BAB0 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8019EB54 0019BAB4 7C 08 02 A6 */ mflr r0 +/* 8019EB58 0019BAB8 90 01 00 34 */ stw r0, 0x34(r1) +/* 8019EB5C 0019BABC 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8019EB60 0019BAC0 3B E0 00 00 */ li r31, 0 +/* 8019EB64 0019BAC4 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8019EB68 0019BAC8 7C 9E 23 78 */ mr r30, r4 +/* 8019EB6C 0019BACC 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8019EB70 0019BAD0 7C 7D 1B 78 */ mr r29, r3 +/* 8019EB74 0019BAD4 48 00 00 50 */ b lbl_8019EBC4 +lbl_8019EB78: +/* 8019EB78 0019BAD8 80 7D 0A 2C */ lwz r3, 0xa2c(r29) +/* 8019EB7C 0019BADC 7F E4 FB 78 */ mr r4, r31 +/* 8019EB80 0019BAE0 48 00 86 B9 */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 8019EB84 0019BAE4 A0 03 00 3C */ lhz r0, 0x3c(r3) +/* 8019EB88 0019BAE8 7F C3 F3 78 */ mr r3, r30 +/* 8019EB8C 0019BAEC 38 81 00 08 */ addi r4, r1, 8 +/* 8019EB90 0019BAF0 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8019EB94 0019BAF4 B0 01 00 08 */ sth r0, 8(r1) +/* 8019EB98 0019BAF8 4B EA D9 DD */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8019EB9C 0019BAFC 7C 64 1B 78 */ mr r4, r3 +/* 8019EBA0 0019BB00 38 61 00 10 */ addi r3, r1, 0x10 +/* 8019EBA4 0019BB04 4B F1 07 A9 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8019EBA8 0019BB08 80 63 00 04 */ lwz r3, 4(r3) +/* 8019EBAC 0019BB0C 28 03 00 00 */ cmplwi r3, 0 +/* 8019EBB0 0019BB10 41 82 00 10 */ beq lbl_8019EBC0 +/* 8019EBB4 0019BB14 7F C5 F3 78 */ mr r5, r30 +/* 8019EBB8 0019BB18 38 80 00 12 */ li r4, 0x12 +/* 8019EBBC 0019BB1C 4B EB 57 95 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +lbl_8019EBC0: +/* 8019EBC0 0019BB20 3B FF 00 01 */ addi r31, r31, 1 +lbl_8019EBC4: +/* 8019EBC4 0019BB24 80 7D 0A 2C */ lwz r3, 0xa2c(r29) +/* 8019EBC8 0019BB28 48 00 86 81 */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 8019EBCC 0019BB2C 7C 1F 18 40 */ cmplw r31, r3 +/* 8019EBD0 0019BB30 41 80 FF A8 */ blt lbl_8019EB78 +/* 8019EBD4 0019BB34 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8019EBD8 0019BB38 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8019EBDC 0019BB3C 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8019EBE0 0019BB40 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8019EBE4 0019BB44 7C 08 03 A6 */ mtlr r0 +/* 8019EBE8 0019BB48 38 21 00 30 */ addi r1, r1, 0x30 +/* 8019EBEC 0019BB4C 4E 80 00 20 */ blr + +.global sub_8019ebf0 +sub_8019ebf0: +/* 8019EBF0 0019BB50 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8019EBF4 0019BB54 7C 08 02 A6 */ mflr r0 +/* 8019EBF8 0019BB58 90 01 00 34 */ stw r0, 0x34(r1) +/* 8019EBFC 0019BB5C DB E1 00 20 */ stfd f31, 0x20(r1) +/* 8019EC00 0019BB60 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 8019EC04 0019BB64 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8019EC08 0019BB68 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8019EC0C 0019BB6C 7C 7E 1B 78 */ mr r30, r3 +/* 8019EC10 0019BB70 7C 9F 23 78 */ mr r31, r4 +/* 8019EC14 0019BB74 C0 03 06 DC */ lfs f0, 0x6dc(r3) +/* 8019EC18 0019BB78 38 81 00 0C */ addi r4, r1, 0xc +/* 8019EC1C 0019BB7C 38 A1 00 08 */ addi r5, r1, 8 +/* 8019EC20 0019BB80 38 6D 90 28 */ addi r3, r13, lbl_805A7BE8@sda21 +/* 8019EC24 0019BB84 D0 01 00 08 */ stfs f0, 8(r1) +/* 8019EC28 0019BB88 C0 1E 09 74 */ lfs f0, 0x974(r30) +/* 8019EC2C 0019BB8C EC 00 08 2A */ fadds f0, f0, f1 +/* 8019EC30 0019BB90 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 8019EC34 0019BB94 4B E6 D6 81 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8019EC38 0019BB98 C0 03 00 00 */ lfs f0, 0(r3) +/* 8019EC3C 0019BB9C C0 42 A7 68 */ lfs f2, lbl_805AC488@sda21(r2) +/* 8019EC40 0019BBA0 D0 1E 09 74 */ stfs f0, 0x974(r30) +/* 8019EC44 0019BBA4 C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 8019EC48 0019BBA8 C0 3E 06 DC */ lfs f1, 0x6dc(r30) +/* 8019EC4C 0019BBAC EC 42 00 72 */ fmuls f2, f2, f1 +/* 8019EC50 0019BBB0 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8019EC54 0019BBB4 40 81 00 38 */ ble lbl_8019EC8C +/* 8019EC58 0019BBB8 C0 02 A7 6C */ lfs f0, lbl_805AC48C@sda21(r2) +/* 8019EC5C 0019BBBC C0 3E 09 74 */ lfs f1, 0x974(r30) +/* 8019EC60 0019BBC0 EC 00 00 B2 */ fmuls f0, f0, f2 +/* 8019EC64 0019BBC4 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 8019EC68 0019BBC8 EF E1 00 24 */ fdivs f31, f1, f0 +/* 8019EC6C 0019BBCC 48 17 38 71 */ bl Float__9CRandom16Fv +/* 8019EC70 0019BBD0 FC 01 F8 40 */ fcmpo cr0, f1, f31 +/* 8019EC74 0019BBD4 4C 40 13 82 */ cror 2, 0, 2 +/* 8019EC78 0019BBD8 7C 60 00 26 */ mfcr r3 +/* 8019EC7C 0019BBDC 88 1E 0B 29 */ lbz r0, 0xb29(r30) +/* 8019EC80 0019BBE0 50 60 46 B4 */ rlwimi r0, r3, 8, 0x1a, 0x1a +/* 8019EC84 0019BBE4 98 1E 0B 29 */ stb r0, 0xb29(r30) +/* 8019EC88 0019BBE8 48 00 00 14 */ b lbl_8019EC9C +lbl_8019EC8C: +/* 8019EC8C 0019BBEC 88 1E 0B 29 */ lbz r0, 0xb29(r30) +/* 8019EC90 0019BBF0 38 60 00 01 */ li r3, 1 +/* 8019EC94 0019BBF4 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 8019EC98 0019BBF8 98 1E 0B 29 */ stb r0, 0xb29(r30) +lbl_8019EC9C: +/* 8019EC9C 0019BBFC E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 8019ECA0 0019BC00 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8019ECA4 0019BC04 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 8019ECA8 0019BC08 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8019ECAC 0019BC0C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8019ECB0 0019BC10 7C 08 03 A6 */ mtlr r0 +/* 8019ECB4 0019BC14 38 21 00 30 */ addi r1, r1, 0x30 +/* 8019ECB8 0019BC18 4E 80 00 20 */ blr + +.global sub_8019ecbc +sub_8019ecbc: +/* 8019ECBC 0019BC1C 88 03 0B 28 */ lbz r0, 0xb28(r3) +/* 8019ECC0 0019BC20 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 8019ECC4 0019BC24 41 82 00 0C */ beq lbl_8019ECD0 +/* 8019ECC8 0019BC28 38 60 00 01 */ li r3, 1 +/* 8019ECCC 0019BC2C 4E 80 00 20 */ blr +lbl_8019ECD0: +/* 8019ECD0 0019BC30 88 03 0B 29 */ lbz r0, 0xb29(r3) +/* 8019ECD4 0019BC34 54 03 DF FE */ rlwinm r3, r0, 0x1b, 0x1f, 0x1f +/* 8019ECD8 0019BC38 4E 80 00 20 */ blr + +.global sub_8019ecdc +sub_8019ecdc: +/* 8019ECDC 0019BC3C 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 8019ECE0 0019BC40 7C 08 02 A6 */ mflr r0 +/* 8019ECE4 0019BC44 90 01 00 74 */ stw r0, 0x74(r1) +/* 8019ECE8 0019BC48 DB E1 00 60 */ stfd f31, 0x60(r1) +/* 8019ECEC 0019BC4C F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 8019ECF0 0019BC50 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 8019ECF4 0019BC54 7C 7F 1B 78 */ mr r31, r3 +/* 8019ECF8 0019BC58 80 63 00 64 */ lwz r3, 0x64(r3) +/* 8019ECFC 0019BC5C FF E0 08 90 */ fmr f31, f1 +/* 8019ED00 0019BC60 7C 85 23 78 */ mr r5, r4 +/* 8019ED04 0019BC64 80 C3 00 10 */ lwz r6, 0x10(r3) +/* 8019ED08 0019BC68 38 61 00 40 */ addi r3, r1, 0x40 +/* 8019ED0C 0019BC6C C0 22 A7 5C */ lfs f1, lbl_805AC47C@sda21(r2) +/* 8019ED10 0019BC70 C0 46 02 00 */ lfs f2, 0x200(r6) +/* 8019ED14 0019BC74 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 8019ED18 0019BC78 FC 02 08 40 */ fcmpo cr0, f2, f1 +/* 8019ED1C 0019BC7C 40 81 00 0C */ ble lbl_8019ED28 +/* 8019ED20 0019BC80 C0 02 A7 70 */ lfs f0, lbl_805AC490@sda21(r2) +/* 8019ED24 0019BC84 EC 20 10 24 */ fdivs f1, f0, f2 +lbl_8019ED28: +/* 8019ED28 0019BC88 81 84 00 00 */ lwz r12, 0(r4) +/* 8019ED2C 0019BC8C 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 8019ED30 0019BC90 7D 89 03 A6 */ mtctr r12 +/* 8019ED34 0019BC94 4E 80 04 21 */ bctrl +/* 8019ED38 0019BC98 C0 41 00 44 */ lfs f2, 0x44(r1) +/* 8019ED3C 0019BC9C 38 61 00 10 */ addi r3, r1, 0x10 +/* 8019ED40 0019BCA0 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 8019ED44 0019BCA4 C0 21 00 40 */ lfs f1, 0x40(r1) +/* 8019ED48 0019BCA8 EC 42 00 28 */ fsubs f2, f2, f0 +/* 8019ED4C 0019BCAC C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8019ED50 0019BCB0 C0 61 00 48 */ lfs f3, 0x48(r1) +/* 8019ED54 0019BCB4 EC 21 00 28 */ fsubs f1, f1, f0 +/* 8019ED58 0019BCB8 C0 1F 00 60 */ lfs f0, 0x60(r31) +/* 8019ED5C 0019BCBC D0 41 00 38 */ stfs f2, 0x38(r1) +/* 8019ED60 0019BCC0 EC 03 00 28 */ fsubs f0, f3, f0 +/* 8019ED64 0019BCC4 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 8019ED68 0019BCC8 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 8019ED6C 0019BCCC 48 17 54 95 */ bl __ct__9CVector2fFff +/* 8019ED70 0019BCD0 C0 5F 00 48 */ lfs f2, 0x48(r31) +/* 8019ED74 0019BCD4 38 61 00 08 */ addi r3, r1, 8 +/* 8019ED78 0019BCD8 C0 3F 00 38 */ lfs f1, 0x38(r31) +/* 8019ED7C 0019BCDC C0 61 00 10 */ lfs f3, 0x10(r1) +/* 8019ED80 0019BCE0 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 8019ED84 0019BCE4 C0 9F 00 58 */ lfs f4, 0x58(r31) +/* 8019ED88 0019BCE8 D0 61 00 20 */ stfs f3, 0x20(r1) +/* 8019ED8C 0019BCEC D0 01 00 24 */ stfs f0, 0x24(r1) +/* 8019ED90 0019BCF0 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 8019ED94 0019BCF4 D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 8019ED98 0019BCF8 D0 81 00 30 */ stfs f4, 0x30(r1) +/* 8019ED9C 0019BCFC 48 17 54 65 */ bl __ct__9CVector2fFff +/* 8019EDA0 0019BD00 C0 21 00 08 */ lfs f1, 8(r1) +/* 8019EDA4 0019BD04 38 61 00 18 */ addi r3, r1, 0x18 +/* 8019EDA8 0019BD08 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 8019EDAC 0019BD0C 38 81 00 20 */ addi r4, r1, 0x20 +/* 8019EDB0 0019BD10 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 8019EDB4 0019BD14 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8019EDB8 0019BD18 48 17 52 0D */ bl GetAngleDiff__9CVector2fFRC9CVector2fRC9CVector2f +/* 8019EDBC 0019BD1C FC 01 F8 40 */ fcmpo cr0, f1, f31 +/* 8019EDC0 0019BD20 7C 00 00 26 */ mfcr r0 +/* 8019EDC4 0019BD24 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f +/* 8019EDC8 0019BD28 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 8019EDCC 0019BD2C 80 01 00 74 */ lwz r0, 0x74(r1) +/* 8019EDD0 0019BD30 CB E1 00 60 */ lfd f31, 0x60(r1) +/* 8019EDD4 0019BD34 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 8019EDD8 0019BD38 7C 08 03 A6 */ mtlr r0 +/* 8019EDDC 0019BD3C 38 21 00 70 */ addi r1, r1, 0x70 +/* 8019EDE0 0019BD40 4E 80 00 20 */ blr + +.global GetCollisionResponseType__12CIceSheegothCFRC9CVector3fRC9CVector3fRC11CWeaponModei +GetCollisionResponseType__12CIceSheegothCFRC9CVector3fRC9CVector3fRC11CWeaponModei: +/* 8019EDE4 0019BD44 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8019EDE8 0019BD48 7C 08 02 A6 */ mflr r0 +/* 8019EDEC 0019BD4C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8019EDF0 0019BD50 80 06 00 00 */ lwz r0, 0(r6) +/* 8019EDF4 0019BD54 2C 00 00 01 */ cmpwi r0, 1 +/* 8019EDF8 0019BD58 40 82 00 0C */ bne lbl_8019EE04 +/* 8019EDFC 0019BD5C 38 60 00 00 */ li r3, 0 +/* 8019EE00 0019BD60 48 00 00 08 */ b lbl_8019EE08 +lbl_8019EE04: +/* 8019EE04 0019BD64 4B ED 8B B1 */ bl GetCollisionResponseType__10CPatternedCFRC9CVector3fRC9CVector3fRC11CWeaponModei +lbl_8019EE08: +/* 8019EE08 0019BD68 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8019EE0C 0019BD6C 7C 08 03 A6 */ mtlr r0 +/* 8019EE10 0019BD70 38 21 00 10 */ addi r1, r1, 0x10 +/* 8019EE14 0019BD74 4E 80 00 20 */ blr + +.global sub_8019ee18 +sub_8019ee18: +/* 8019EE18 0019BD78 90 83 09 28 */ stw r4, 0x928(r3) +/* 8019EE1C 0019BD7C 4E 80 00 20 */ blr + +.global sub_8019ee20 +sub_8019ee20: +/* 8019EE20 0019BD80 94 21 FE 00 */ stwu r1, -0x200(r1) +/* 8019EE24 0019BD84 7C 08 02 A6 */ mflr r0 +/* 8019EE28 0019BD88 90 01 02 04 */ stw r0, 0x204(r1) +/* 8019EE2C 0019BD8C DB E1 01 F0 */ stfd f31, 0x1f0(r1) +/* 8019EE30 0019BD90 F3 E1 01 F8 */ psq_st f31, 504(r1), 0, qr0 +/* 8019EE34 0019BD94 93 E1 01 EC */ stw r31, 0x1ec(r1) +/* 8019EE38 0019BD98 93 C1 01 E8 */ stw r30, 0x1e8(r1) +/* 8019EE3C 0019BD9C 93 A1 01 E4 */ stw r29, 0x1e4(r1) +/* 8019EE40 0019BDA0 7C 7F 1B 78 */ mr r31, r3 +/* 8019EE44 0019BDA4 7C 9E 23 78 */ mr r30, r4 +/* 8019EE48 0019BDA8 A0 03 0A 80 */ lhz r0, 0xa80(r3) +/* 8019EE4C 0019BDAC FF E0 08 90 */ fmr f31, f1 +/* 8019EE50 0019BDB0 7F C3 F3 78 */ mr r3, r30 +/* 8019EE54 0019BDB4 38 81 00 0C */ addi r4, r1, 0xc +/* 8019EE58 0019BDB8 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8019EE5C 0019BDBC 4B EA D7 19 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8019EE60 0019BDC0 7C 7D 1B 79 */ or. r29, r3, r3 +/* 8019EE64 0019BDC4 41 82 00 5C */ beq lbl_8019EEC0 +/* 8019EE68 0019BDC8 88 1D 00 30 */ lbz r0, 0x30(r29) +/* 8019EE6C 0019BDCC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8019EE70 0019BDD0 41 82 00 50 */ beq lbl_8019EEC0 +/* 8019EE74 0019BDD4 3C 80 80 3D */ lis r4, lbl_803D13D8@ha +/* 8019EE78 0019BDD8 38 61 00 74 */ addi r3, r1, 0x74 +/* 8019EE7C 0019BDDC 38 84 13 D8 */ addi r4, r4, lbl_803D13D8@l +/* 8019EE80 0019BDE0 38 84 00 4E */ addi r4, r4, 0x4e +/* 8019EE84 0019BDE4 4B E6 5E 35 */ bl string_l__4rstlFPCc +/* 8019EE88 0019BDE8 7F E4 FB 78 */ mr r4, r31 +/* 8019EE8C 0019BDEC 38 61 01 74 */ addi r3, r1, 0x174 +/* 8019EE90 0019BDF0 38 A1 00 74 */ addi r5, r1, 0x74 +/* 8019EE94 0019BDF4 4B ED 9A E5 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8019EE98 0019BDF8 38 61 01 A4 */ addi r3, r1, 0x1a4 +/* 8019EE9C 0019BDFC 38 81 01 74 */ addi r4, r1, 0x174 +/* 8019EEA0 0019BE00 48 17 3C D5 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8019EEA4 0019BE04 38 61 00 74 */ addi r3, r1, 0x74 +/* 8019EEA8 0019BE08 48 19 EC 39 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8019EEAC 0019BE0C FC 20 F8 90 */ fmr f1, f31 +/* 8019EEB0 0019BE10 7F A3 EB 78 */ mr r3, r29 +/* 8019EEB4 0019BE14 7F C5 F3 78 */ mr r5, r30 +/* 8019EEB8 0019BE18 38 81 01 A4 */ addi r4, r1, 0x1a4 +/* 8019EEBC 0019BE1C 4B FF 95 45 */ bl SetTransform__13CFlameThrowerFRC12CTransform4f +lbl_8019EEC0: +/* 8019EEC0 0019BE20 A0 1F 0A F6 */ lhz r0, 0xaf6(r31) +/* 8019EEC4 0019BE24 7F C3 F3 78 */ mr r3, r30 +/* 8019EEC8 0019BE28 38 81 00 08 */ addi r4, r1, 8 +/* 8019EECC 0019BE2C B0 01 00 08 */ sth r0, 8(r1) +/* 8019EED0 0019BE30 4B EA D6 D5 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8019EED4 0019BE34 7C 64 1B 78 */ mr r4, r3 +/* 8019EED8 0019BE38 38 61 00 18 */ addi r3, r1, 0x18 +/* 8019EEDC 0019BE3C 4B F1 04 71 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8019EEE0 0019BE40 83 C3 00 04 */ lwz r30, 4(r3) +/* 8019EEE4 0019BE44 28 1E 00 00 */ cmplwi r30, 0 +/* 8019EEE8 0019BE48 41 82 03 FC */ beq lbl_8019F2E4 +/* 8019EEEC 0019BE4C C0 22 A7 68 */ lfs f1, lbl_805AC488@sda21(r2) +/* 8019EEF0 0019BE50 C0 1F 06 DC */ lfs f0, 0x6dc(r31) +/* 8019EEF4 0019BE54 C0 42 A7 6C */ lfs f2, lbl_805AC48C@sda21(r2) +/* 8019EEF8 0019BE58 EC 21 00 32 */ fmuls f1, f1, f0 +/* 8019EEFC 0019BE5C C0 7F 09 74 */ lfs f3, 0x974(r31) +/* 8019EF00 0019BE60 EC 02 00 72 */ fmuls f0, f2, f1 +/* 8019EF04 0019BE64 FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 8019EF08 0019BE68 4C 41 13 82 */ cror 2, 1, 2 +/* 8019EF0C 0019BE6C 40 82 00 68 */ bne lbl_8019EF74 +/* 8019EF10 0019BE70 80 7F 0A 9C */ lwz r3, 0xa9c(r31) +/* 8019EF14 0019BE74 38 80 00 00 */ li r4, 0 +/* 8019EF18 0019BE78 81 83 00 00 */ lwz r12, 0(r3) +/* 8019EF1C 0019BE7C 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8019EF20 0019BE80 7D 89 03 A6 */ mtctr r12 +/* 8019EF24 0019BE84 4E 80 04 21 */ bctrl +/* 8019EF28 0019BE88 80 7F 0A B0 */ lwz r3, 0xab0(r31) +/* 8019EF2C 0019BE8C 38 80 00 00 */ li r4, 0 +/* 8019EF30 0019BE90 81 83 00 00 */ lwz r12, 0(r3) +/* 8019EF34 0019BE94 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8019EF38 0019BE98 7D 89 03 A6 */ mtctr r12 +/* 8019EF3C 0019BE9C 4E 80 04 21 */ bctrl +/* 8019EF40 0019BEA0 80 7F 0A C4 */ lwz r3, 0xac4(r31) +/* 8019EF44 0019BEA4 38 80 00 01 */ li r4, 1 +/* 8019EF48 0019BEA8 81 83 00 00 */ lwz r12, 0(r3) +/* 8019EF4C 0019BEAC 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8019EF50 0019BEB0 7D 89 03 A6 */ mtctr r12 +/* 8019EF54 0019BEB4 4E 80 04 21 */ bctrl +/* 8019EF58 0019BEB8 80 7F 0A D8 */ lwz r3, 0xad8(r31) +/* 8019EF5C 0019BEBC 38 80 00 01 */ li r4, 1 +/* 8019EF60 0019BEC0 81 83 00 00 */ lwz r12, 0(r3) +/* 8019EF64 0019BEC4 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8019EF68 0019BEC8 7D 89 03 A6 */ mtctr r12 +/* 8019EF6C 0019BECC 4E 80 04 21 */ bctrl +/* 8019EF70 0019BED0 48 00 01 4C */ b lbl_8019F0BC +lbl_8019EF74: +/* 8019EF74 0019BED4 C0 02 A7 74 */ lfs f0, lbl_805AC494@sda21(r2) +/* 8019EF78 0019BED8 EC 00 00 72 */ fmuls f0, f0, f1 +/* 8019EF7C 0019BEDC FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 8019EF80 0019BEE0 4C 41 13 82 */ cror 2, 1, 2 +/* 8019EF84 0019BEE4 40 82 00 68 */ bne lbl_8019EFEC +/* 8019EF88 0019BEE8 80 7F 0A 9C */ lwz r3, 0xa9c(r31) +/* 8019EF8C 0019BEEC 38 80 00 00 */ li r4, 0 +/* 8019EF90 0019BEF0 81 83 00 00 */ lwz r12, 0(r3) +/* 8019EF94 0019BEF4 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8019EF98 0019BEF8 7D 89 03 A6 */ mtctr r12 +/* 8019EF9C 0019BEFC 4E 80 04 21 */ bctrl +/* 8019EFA0 0019BF00 80 7F 0A B0 */ lwz r3, 0xab0(r31) +/* 8019EFA4 0019BF04 38 80 00 01 */ li r4, 1 +/* 8019EFA8 0019BF08 81 83 00 00 */ lwz r12, 0(r3) +/* 8019EFAC 0019BF0C 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8019EFB0 0019BF10 7D 89 03 A6 */ mtctr r12 +/* 8019EFB4 0019BF14 4E 80 04 21 */ bctrl +/* 8019EFB8 0019BF18 80 7F 0A C4 */ lwz r3, 0xac4(r31) +/* 8019EFBC 0019BF1C 38 80 00 00 */ li r4, 0 +/* 8019EFC0 0019BF20 81 83 00 00 */ lwz r12, 0(r3) +/* 8019EFC4 0019BF24 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8019EFC8 0019BF28 7D 89 03 A6 */ mtctr r12 +/* 8019EFCC 0019BF2C 4E 80 04 21 */ bctrl +/* 8019EFD0 0019BF30 80 7F 0A D8 */ lwz r3, 0xad8(r31) +/* 8019EFD4 0019BF34 38 80 00 00 */ li r4, 0 +/* 8019EFD8 0019BF38 81 83 00 00 */ lwz r12, 0(r3) +/* 8019EFDC 0019BF3C 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8019EFE0 0019BF40 7D 89 03 A6 */ mtctr r12 +/* 8019EFE4 0019BF44 4E 80 04 21 */ bctrl +/* 8019EFE8 0019BF48 48 00 00 D4 */ b lbl_8019F0BC +lbl_8019EFEC: +/* 8019EFEC 0019BF4C C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 8019EFF0 0019BF50 FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 8019EFF4 0019BF54 40 81 00 68 */ ble lbl_8019F05C +/* 8019EFF8 0019BF58 80 7F 0A 9C */ lwz r3, 0xa9c(r31) +/* 8019EFFC 0019BF5C 38 80 00 01 */ li r4, 1 +/* 8019F000 0019BF60 81 83 00 00 */ lwz r12, 0(r3) +/* 8019F004 0019BF64 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8019F008 0019BF68 7D 89 03 A6 */ mtctr r12 +/* 8019F00C 0019BF6C 4E 80 04 21 */ bctrl +/* 8019F010 0019BF70 80 7F 0A B0 */ lwz r3, 0xab0(r31) +/* 8019F014 0019BF74 38 80 00 00 */ li r4, 0 +/* 8019F018 0019BF78 81 83 00 00 */ lwz r12, 0(r3) +/* 8019F01C 0019BF7C 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8019F020 0019BF80 7D 89 03 A6 */ mtctr r12 +/* 8019F024 0019BF84 4E 80 04 21 */ bctrl +/* 8019F028 0019BF88 80 7F 0A C4 */ lwz r3, 0xac4(r31) +/* 8019F02C 0019BF8C 38 80 00 00 */ li r4, 0 +/* 8019F030 0019BF90 81 83 00 00 */ lwz r12, 0(r3) +/* 8019F034 0019BF94 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8019F038 0019BF98 7D 89 03 A6 */ mtctr r12 +/* 8019F03C 0019BF9C 4E 80 04 21 */ bctrl +/* 8019F040 0019BFA0 80 7F 0A D8 */ lwz r3, 0xad8(r31) +/* 8019F044 0019BFA4 38 80 00 00 */ li r4, 0 +/* 8019F048 0019BFA8 81 83 00 00 */ lwz r12, 0(r3) +/* 8019F04C 0019BFAC 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8019F050 0019BFB0 7D 89 03 A6 */ mtctr r12 +/* 8019F054 0019BFB4 4E 80 04 21 */ bctrl +/* 8019F058 0019BFB8 48 00 00 64 */ b lbl_8019F0BC +lbl_8019F05C: +/* 8019F05C 0019BFBC 80 7F 0A 9C */ lwz r3, 0xa9c(r31) +/* 8019F060 0019BFC0 38 80 00 00 */ li r4, 0 +/* 8019F064 0019BFC4 81 83 00 00 */ lwz r12, 0(r3) +/* 8019F068 0019BFC8 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8019F06C 0019BFCC 7D 89 03 A6 */ mtctr r12 +/* 8019F070 0019BFD0 4E 80 04 21 */ bctrl +/* 8019F074 0019BFD4 80 7F 0A B0 */ lwz r3, 0xab0(r31) +/* 8019F078 0019BFD8 38 80 00 00 */ li r4, 0 +/* 8019F07C 0019BFDC 81 83 00 00 */ lwz r12, 0(r3) +/* 8019F080 0019BFE0 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8019F084 0019BFE4 7D 89 03 A6 */ mtctr r12 +/* 8019F088 0019BFE8 4E 80 04 21 */ bctrl +/* 8019F08C 0019BFEC 80 7F 0A C4 */ lwz r3, 0xac4(r31) +/* 8019F090 0019BFF0 38 80 00 00 */ li r4, 0 +/* 8019F094 0019BFF4 81 83 00 00 */ lwz r12, 0(r3) +/* 8019F098 0019BFF8 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8019F09C 0019BFFC 7D 89 03 A6 */ mtctr r12 +/* 8019F0A0 0019C000 4E 80 04 21 */ bctrl +/* 8019F0A4 0019C004 80 7F 0A D8 */ lwz r3, 0xad8(r31) +/* 8019F0A8 0019C008 38 80 00 00 */ li r4, 0 +/* 8019F0AC 0019C00C 81 83 00 00 */ lwz r12, 0(r3) +/* 8019F0B0 0019C010 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8019F0B4 0019C014 7D 89 03 A6 */ mtctr r12 +/* 8019F0B8 0019C018 4E 80 04 21 */ bctrl +lbl_8019F0BC: +/* 8019F0BC 0019C01C 83 BF 0A 9C */ lwz r29, 0xa9c(r31) +/* 8019F0C0 0019C020 38 61 01 44 */ addi r3, r1, 0x144 +/* 8019F0C4 0019C024 38 9F 00 34 */ addi r4, r31, 0x34 +/* 8019F0C8 0019C028 48 17 3B 79 */ bl GetRotation__12CTransform4fCFv +/* 8019F0CC 0019C02C 7F A3 EB 78 */ mr r3, r29 +/* 8019F0D0 0019C030 38 81 01 44 */ addi r4, r1, 0x144 +/* 8019F0D4 0019C034 81 9D 00 00 */ lwz r12, 0(r29) +/* 8019F0D8 0019C038 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 8019F0DC 0019C03C 7D 89 03 A6 */ mtctr r12 +/* 8019F0E0 0019C040 4E 80 04 21 */ bctrl +/* 8019F0E4 0019C044 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 8019F0E8 0019C048 38 81 00 68 */ addi r4, r1, 0x68 +/* 8019F0EC 0019C04C C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 8019F0F0 0019C050 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 8019F0F4 0019C054 D0 01 00 68 */ stfs f0, 0x68(r1) +/* 8019F0F8 0019C058 D0 21 00 6C */ stfs f1, 0x6c(r1) +/* 8019F0FC 0019C05C D0 41 00 70 */ stfs f2, 0x70(r1) +/* 8019F100 0019C060 80 7F 0A 9C */ lwz r3, 0xa9c(r31) +/* 8019F104 0019C064 81 83 00 00 */ lwz r12, 0(r3) +/* 8019F108 0019C068 81 8C 00 20 */ lwz r12, 0x20(r12) +/* 8019F10C 0019C06C 7D 89 03 A6 */ mtctr r12 +/* 8019F110 0019C070 4E 80 04 21 */ bctrl +/* 8019F114 0019C074 83 BF 0A B0 */ lwz r29, 0xab0(r31) +/* 8019F118 0019C078 38 61 01 14 */ addi r3, r1, 0x114 +/* 8019F11C 0019C07C 38 9F 00 34 */ addi r4, r31, 0x34 +/* 8019F120 0019C080 48 17 3B 21 */ bl GetRotation__12CTransform4fCFv +/* 8019F124 0019C084 7F A3 EB 78 */ mr r3, r29 +/* 8019F128 0019C088 38 81 01 14 */ addi r4, r1, 0x114 +/* 8019F12C 0019C08C 81 9D 00 00 */ lwz r12, 0(r29) +/* 8019F130 0019C090 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 8019F134 0019C094 7D 89 03 A6 */ mtctr r12 +/* 8019F138 0019C098 4E 80 04 21 */ bctrl +/* 8019F13C 0019C09C C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 8019F140 0019C0A0 38 81 00 5C */ addi r4, r1, 0x5c +/* 8019F144 0019C0A4 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 8019F148 0019C0A8 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 8019F14C 0019C0AC D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 8019F150 0019C0B0 D0 21 00 60 */ stfs f1, 0x60(r1) +/* 8019F154 0019C0B4 D0 41 00 64 */ stfs f2, 0x64(r1) +/* 8019F158 0019C0B8 80 7F 0A B0 */ lwz r3, 0xab0(r31) +/* 8019F15C 0019C0BC 81 83 00 00 */ lwz r12, 0(r3) +/* 8019F160 0019C0C0 81 8C 00 20 */ lwz r12, 0x20(r12) +/* 8019F164 0019C0C4 7D 89 03 A6 */ mtctr r12 +/* 8019F168 0019C0C8 4E 80 04 21 */ bctrl +/* 8019F16C 0019C0CC 83 BF 0A C4 */ lwz r29, 0xac4(r31) +/* 8019F170 0019C0D0 38 61 00 E4 */ addi r3, r1, 0xe4 +/* 8019F174 0019C0D4 38 9F 00 34 */ addi r4, r31, 0x34 +/* 8019F178 0019C0D8 48 17 3A C9 */ bl GetRotation__12CTransform4fCFv +/* 8019F17C 0019C0DC 7F A3 EB 78 */ mr r3, r29 +/* 8019F180 0019C0E0 38 81 00 E4 */ addi r4, r1, 0xe4 +/* 8019F184 0019C0E4 81 9D 00 00 */ lwz r12, 0(r29) +/* 8019F188 0019C0E8 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 8019F18C 0019C0EC 7D 89 03 A6 */ mtctr r12 +/* 8019F190 0019C0F0 4E 80 04 21 */ bctrl +/* 8019F194 0019C0F4 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 8019F198 0019C0F8 38 81 00 50 */ addi r4, r1, 0x50 +/* 8019F19C 0019C0FC C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 8019F1A0 0019C100 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 8019F1A4 0019C104 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 8019F1A8 0019C108 D0 21 00 54 */ stfs f1, 0x54(r1) +/* 8019F1AC 0019C10C D0 41 00 58 */ stfs f2, 0x58(r1) +/* 8019F1B0 0019C110 80 7F 0A C4 */ lwz r3, 0xac4(r31) +/* 8019F1B4 0019C114 81 83 00 00 */ lwz r12, 0(r3) +/* 8019F1B8 0019C118 81 8C 00 20 */ lwz r12, 0x20(r12) +/* 8019F1BC 0019C11C 7D 89 03 A6 */ mtctr r12 +/* 8019F1C0 0019C120 4E 80 04 21 */ bctrl +/* 8019F1C4 0019C124 83 BF 0A D8 */ lwz r29, 0xad8(r31) +/* 8019F1C8 0019C128 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 8019F1CC 0019C12C 38 9F 00 34 */ addi r4, r31, 0x34 +/* 8019F1D0 0019C130 48 17 3A 71 */ bl GetRotation__12CTransform4fCFv +/* 8019F1D4 0019C134 7F A3 EB 78 */ mr r3, r29 +/* 8019F1D8 0019C138 38 81 00 B4 */ addi r4, r1, 0xb4 +/* 8019F1DC 0019C13C 81 9D 00 00 */ lwz r12, 0(r29) +/* 8019F1E0 0019C140 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 8019F1E4 0019C144 7D 89 03 A6 */ mtctr r12 +/* 8019F1E8 0019C148 4E 80 04 21 */ bctrl +/* 8019F1EC 0019C14C C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 8019F1F0 0019C150 38 81 00 44 */ addi r4, r1, 0x44 +/* 8019F1F4 0019C154 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 8019F1F8 0019C158 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8019F1FC 0019C15C D0 01 00 44 */ stfs f0, 0x44(r1) +/* 8019F200 0019C160 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 8019F204 0019C164 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 8019F208 0019C168 80 7F 0A D8 */ lwz r3, 0xad8(r31) +/* 8019F20C 0019C16C 81 83 00 00 */ lwz r12, 0(r3) +/* 8019F210 0019C170 81 8C 00 20 */ lwz r12, 0x20(r12) +/* 8019F214 0019C174 7D 89 03 A6 */ mtctr r12 +/* 8019F218 0019C178 4E 80 04 21 */ bctrl +/* 8019F21C 0019C17C 80 7F 0A EC */ lwz r3, 0xaec(r31) +/* 8019F220 0019C180 28 03 00 00 */ cmplwi r3, 0 +/* 8019F224 0019C184 41 82 01 20 */ beq lbl_8019F344 +/* 8019F228 0019C188 81 83 00 00 */ lwz r12, 0(r3) +/* 8019F22C 0019C18C 38 80 00 01 */ li r4, 1 +/* 8019F230 0019C190 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8019F234 0019C194 7D 89 03 A6 */ mtctr r12 +/* 8019F238 0019C198 4E 80 04 21 */ bctrl +/* 8019F23C 0019C19C 83 BF 0A EC */ lwz r29, 0xaec(r31) +/* 8019F240 0019C1A0 38 61 00 84 */ addi r3, r1, 0x84 +/* 8019F244 0019C1A4 38 9F 00 34 */ addi r4, r31, 0x34 +/* 8019F248 0019C1A8 48 17 39 F9 */ bl GetRotation__12CTransform4fCFv +/* 8019F24C 0019C1AC 7F A3 EB 78 */ mr r3, r29 +/* 8019F250 0019C1B0 38 81 00 84 */ addi r4, r1, 0x84 +/* 8019F254 0019C1B4 81 9D 00 00 */ lwz r12, 0(r29) +/* 8019F258 0019C1B8 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 8019F25C 0019C1BC 7D 89 03 A6 */ mtctr r12 +/* 8019F260 0019C1C0 4E 80 04 21 */ bctrl +/* 8019F264 0019C1C4 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 8019F268 0019C1C8 38 81 00 38 */ addi r4, r1, 0x38 +/* 8019F26C 0019C1CC C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 8019F270 0019C1D0 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8019F274 0019C1D4 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 8019F278 0019C1D8 D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 8019F27C 0019C1DC D0 41 00 40 */ stfs f2, 0x40(r1) +/* 8019F280 0019C1E0 80 7F 0A EC */ lwz r3, 0xaec(r31) +/* 8019F284 0019C1E4 81 83 00 00 */ lwz r12, 0(r3) +/* 8019F288 0019C1E8 81 8C 00 20 */ lwz r12, 0x20(r12) +/* 8019F28C 0019C1EC 7D 89 03 A6 */ mtctr r12 +/* 8019F290 0019C1F0 4E 80 04 21 */ bctrl +/* 8019F294 0019C1F4 80 7F 00 64 */ lwz r3, 0x64(r31) +/* 8019F298 0019C1F8 38 81 00 2C */ addi r4, r1, 0x2c +/* 8019F29C 0019C1FC C0 03 00 00 */ lfs f0, 0(r3) +/* 8019F2A0 0019C200 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 8019F2A4 0019C204 C0 03 00 04 */ lfs f0, 4(r3) +/* 8019F2A8 0019C208 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 8019F2AC 0019C20C C0 03 00 08 */ lfs f0, 8(r3) +/* 8019F2B0 0019C210 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 8019F2B4 0019C214 80 7F 0A EC */ lwz r3, 0xaec(r31) +/* 8019F2B8 0019C218 81 83 00 00 */ lwz r12, 0(r3) +/* 8019F2BC 0019C21C 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 8019F2C0 0019C220 7D 89 03 A6 */ mtctr r12 +/* 8019F2C4 0019C224 4E 80 04 21 */ bctrl +/* 8019F2C8 0019C228 80 7F 0A EC */ lwz r3, 0xaec(r31) +/* 8019F2CC 0019C22C FC 20 F8 90 */ fmr f1, f31 +/* 8019F2D0 0019C230 81 83 00 00 */ lwz r12, 0(r3) +/* 8019F2D4 0019C234 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8019F2D8 0019C238 7D 89 03 A6 */ mtctr r12 +/* 8019F2DC 0019C23C 4E 80 04 21 */ bctrl +/* 8019F2E0 0019C240 48 00 00 64 */ b lbl_8019F344 +lbl_8019F2E4: +/* 8019F2E4 0019C244 80 7F 0A 9C */ lwz r3, 0xa9c(r31) +/* 8019F2E8 0019C248 38 80 00 00 */ li r4, 0 +/* 8019F2EC 0019C24C 81 83 00 00 */ lwz r12, 0(r3) +/* 8019F2F0 0019C250 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8019F2F4 0019C254 7D 89 03 A6 */ mtctr r12 +/* 8019F2F8 0019C258 4E 80 04 21 */ bctrl +/* 8019F2FC 0019C25C 80 7F 0A B0 */ lwz r3, 0xab0(r31) +/* 8019F300 0019C260 38 80 00 00 */ li r4, 0 +/* 8019F304 0019C264 81 83 00 00 */ lwz r12, 0(r3) +/* 8019F308 0019C268 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8019F30C 0019C26C 7D 89 03 A6 */ mtctr r12 +/* 8019F310 0019C270 4E 80 04 21 */ bctrl +/* 8019F314 0019C274 80 7F 0A C4 */ lwz r3, 0xac4(r31) +/* 8019F318 0019C278 38 80 00 00 */ li r4, 0 +/* 8019F31C 0019C27C 81 83 00 00 */ lwz r12, 0(r3) +/* 8019F320 0019C280 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8019F324 0019C284 7D 89 03 A6 */ mtctr r12 +/* 8019F328 0019C288 4E 80 04 21 */ bctrl +/* 8019F32C 0019C28C 80 7F 0A D8 */ lwz r3, 0xad8(r31) +/* 8019F330 0019C290 38 80 00 00 */ li r4, 0 +/* 8019F334 0019C294 81 83 00 00 */ lwz r12, 0(r3) +/* 8019F338 0019C298 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8019F33C 0019C29C 7D 89 03 A6 */ mtctr r12 +/* 8019F340 0019C2A0 4E 80 04 21 */ bctrl +lbl_8019F344: +/* 8019F344 0019C2A4 80 7F 0A 9C */ lwz r3, 0xa9c(r31) +/* 8019F348 0019C2A8 FC 20 F8 90 */ fmr f1, f31 +/* 8019F34C 0019C2AC 81 83 00 00 */ lwz r12, 0(r3) +/* 8019F350 0019C2B0 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8019F354 0019C2B4 7D 89 03 A6 */ mtctr r12 +/* 8019F358 0019C2B8 4E 80 04 21 */ bctrl +/* 8019F35C 0019C2BC 80 7F 0A B0 */ lwz r3, 0xab0(r31) +/* 8019F360 0019C2C0 FC 20 F8 90 */ fmr f1, f31 +/* 8019F364 0019C2C4 81 83 00 00 */ lwz r12, 0(r3) +/* 8019F368 0019C2C8 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8019F36C 0019C2CC 7D 89 03 A6 */ mtctr r12 +/* 8019F370 0019C2D0 4E 80 04 21 */ bctrl +/* 8019F374 0019C2D4 80 7F 0A C4 */ lwz r3, 0xac4(r31) +/* 8019F378 0019C2D8 FC 20 F8 90 */ fmr f1, f31 +/* 8019F37C 0019C2DC 81 83 00 00 */ lwz r12, 0(r3) +/* 8019F380 0019C2E0 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8019F384 0019C2E4 7D 89 03 A6 */ mtctr r12 +/* 8019F388 0019C2E8 4E 80 04 21 */ bctrl +/* 8019F38C 0019C2EC 80 7F 0A D8 */ lwz r3, 0xad8(r31) +/* 8019F390 0019C2F0 FC 20 F8 90 */ fmr f1, f31 +/* 8019F394 0019C2F4 81 83 00 00 */ lwz r12, 0(r3) +/* 8019F398 0019C2F8 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8019F39C 0019C2FC 7D 89 03 A6 */ mtctr r12 +/* 8019F3A0 0019C300 4E 80 04 21 */ bctrl +/* 8019F3A4 0019C304 C0 22 A7 68 */ lfs f1, lbl_805AC488@sda21(r2) +/* 8019F3A8 0019C308 C0 1F 06 DC */ lfs f0, 0x6dc(r31) +/* 8019F3AC 0019C30C C0 42 A7 74 */ lfs f2, lbl_805AC494@sda21(r2) +/* 8019F3B0 0019C310 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8019F3B4 0019C314 C0 3F 09 74 */ lfs f1, 0x974(r31) +/* 8019F3B8 0019C318 EC 02 00 32 */ fmuls f0, f2, f0 +/* 8019F3BC 0019C31C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8019F3C0 0019C320 4C 41 13 82 */ cror 2, 1, 2 +/* 8019F3C4 0019C324 40 82 00 5C */ bne lbl_8019F420 +/* 8019F3C8 0019C328 80 1F 0A F0 */ lwz r0, 0xaf0(r31) +/* 8019F3CC 0019C32C 28 00 00 00 */ cmplwi r0, 0 +/* 8019F3D0 0019C330 40 82 00 74 */ bne lbl_8019F444 +/* 8019F3D4 0019C334 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 8019F3D8 0019C338 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8019F3DC 0019C33C C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 8019F3E0 0019C340 38 C3 66 A0 */ addi r6, r3, skZero3f@l +/* 8019F3E4 0019C344 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8019F3E8 0019C348 38 61 00 14 */ addi r3, r1, 0x14 +/* 8019F3EC 0019C34C A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) +/* 8019F3F0 0019C350 38 A1 00 20 */ addi r5, r1, 0x20 +/* 8019F3F4 0019C354 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 8019F3F8 0019C358 38 E0 00 00 */ li r7, 0 +/* 8019F3FC 0019C35C 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8019F400 0019C360 39 00 00 01 */ li r8, 1 +/* 8019F404 0019C364 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 8019F408 0019C368 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 8019F40C 0019C36C A0 9F 07 40 */ lhz r4, 0x740(r31) +/* 8019F410 0019C370 48 14 AE A1 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +/* 8019F414 0019C374 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8019F418 0019C378 90 1F 0A F0 */ stw r0, 0xaf0(r31) +/* 8019F41C 0019C37C 48 00 00 28 */ b lbl_8019F444 +lbl_8019F420: +/* 8019F420 0019C380 80 1F 0A F0 */ lwz r0, 0xaf0(r31) +/* 8019F424 0019C384 28 00 00 00 */ cmplwi r0, 0 +/* 8019F428 0019C388 41 82 00 1C */ beq lbl_8019F444 +/* 8019F42C 0019C38C 80 1F 0A F0 */ lwz r0, 0xaf0(r31) +/* 8019F430 0019C390 38 61 00 10 */ addi r3, r1, 0x10 +/* 8019F434 0019C394 90 01 00 10 */ stw r0, 0x10(r1) +/* 8019F438 0019C398 48 14 AA 4D */ bl RemoveEmitter__11CSfxManagerFRC10CSfxHandle +/* 8019F43C 0019C39C 38 00 00 00 */ li r0, 0 +/* 8019F440 0019C3A0 90 1F 0A F0 */ stw r0, 0xaf0(r31) +lbl_8019F444: +/* 8019F444 0019C3A4 E3 E1 01 F8 */ psq_l f31, 504(r1), 0, qr0 +/* 8019F448 0019C3A8 80 01 02 04 */ lwz r0, 0x204(r1) +/* 8019F44C 0019C3AC CB E1 01 F0 */ lfd f31, 0x1f0(r1) +/* 8019F450 0019C3B0 83 E1 01 EC */ lwz r31, 0x1ec(r1) +/* 8019F454 0019C3B4 83 C1 01 E8 */ lwz r30, 0x1e8(r1) +/* 8019F458 0019C3B8 83 A1 01 E4 */ lwz r29, 0x1e4(r1) +/* 8019F45C 0019C3BC 7C 08 03 A6 */ mtlr r0 +/* 8019F460 0019C3C0 38 21 02 00 */ addi r1, r1, 0x200 +/* 8019F464 0019C3C4 4E 80 00 20 */ blr + +.global CreateFlameThrower__12CIceSheegothFR13CStateManager +CreateFlameThrower__12CIceSheegothFR13CStateManager: +/* 8019F468 0019C3C8 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 8019F46C 0019C3CC 7C 08 02 A6 */ mflr r0 +/* 8019F470 0019C3D0 90 01 00 94 */ stw r0, 0x94(r1) +/* 8019F474 0019C3D4 BF 21 00 74 */ stmw r25, 0x74(r1) +/* 8019F478 0019C3D8 7C 7E 1B 78 */ mr r30, r3 +/* 8019F47C 0019C3DC 7C 9F 23 78 */ mr r31, r4 +/* 8019F480 0019C3E0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8019F484 0019C3E4 A0 63 0A 80 */ lhz r3, 0xa80(r3) +/* 8019F488 0019C3E8 7C 03 00 40 */ cmplw r3, r0 +/* 8019F48C 0019C3EC 40 82 01 2C */ bne lbl_8019F5B8 +/* 8019F490 0019C3F0 80 FE 06 E8 */ lwz r7, 0x6e8(r30) +/* 8019F494 0019C3F4 38 C0 00 06 */ li r6, 6 +/* 8019F498 0019C3F8 C0 42 A7 78 */ lfs f2, lbl_805AC498@sda21(r2) +/* 8019F49C 0019C3FC 38 A0 00 04 */ li r5, 4 +/* 8019F4A0 0019C400 C0 22 A7 7C */ lfs f1, lbl_805AC49C@sda21(r2) +/* 8019F4A4 0019C404 38 00 00 0F */ li r0, 0xf +/* 8019F4A8 0019C408 C0 02 A7 60 */ lfs f0, lbl_805AC480@sda21(r2) +/* 8019F4AC 0019C40C 38 61 00 34 */ addi r3, r1, 0x34 +/* 8019F4B0 0019C410 90 C1 00 50 */ stw r6, 0x50(r1) +/* 8019F4B4 0019C414 90 A1 00 54 */ stw r5, 0x54(r1) +/* 8019F4B8 0019C418 90 E1 00 58 */ stw r7, 0x58(r1) +/* 8019F4BC 0019C41C 90 01 00 5C */ stw r0, 0x5c(r1) +/* 8019F4C0 0019C420 D0 41 00 60 */ stfs f2, 0x60(r1) +/* 8019F4C4 0019C424 D0 21 00 68 */ stfs f1, 0x68(r1) +/* 8019F4C8 0019C428 D0 01 00 6C */ stfs f0, 0x6c(r1) +/* 8019F4CC 0019C42C 4B EA DC 11 */ bl AllocateUniqueId__13CStateManagerFv +/* 8019F4D0 0019C430 A0 01 00 34 */ lhz r0, 0x34(r1) +/* 8019F4D4 0019C434 3C 60 80 3D */ lis r3, lbl_803D13D8@ha +/* 8019F4D8 0019C438 38 63 13 D8 */ addi r3, r3, lbl_803D13D8@l +/* 8019F4DC 0019C43C 3B 20 00 00 */ li r25, 0 +/* 8019F4E0 0019C440 B0 1E 0A 80 */ sth r0, 0xa80(r30) +/* 8019F4E4 0019C444 38 83 00 8C */ addi r4, r3, 0x8c +/* 8019F4E8 0019C448 38 60 04 08 */ li r3, 0x408 +/* 8019F4EC 0019C44C 38 A0 00 00 */ li r5, 0 +/* 8019F4F0 0019C450 48 17 63 7D */ bl __nw__FUlPCcPCc +/* 8019F4F4 0019C454 7C 7D 1B 79 */ or. r29, r3, r3 +/* 8019F4F8 0019C458 41 82 00 A0 */ beq lbl_8019F598 +/* 8019F4FC 0019C45C A0 1E 00 08 */ lhz r0, 8(r30) +/* 8019F500 0019C460 3C 60 80 3D */ lis r3, lbl_803D13D8@ha +/* 8019F504 0019C464 83 9E 07 58 */ lwz r28, 0x758(r30) +/* 8019F508 0019C468 38 83 13 D8 */ addi r4, r3, lbl_803D13D8@l +/* 8019F50C 0019C46C A3 7E 07 54 */ lhz r27, 0x754(r30) +/* 8019F510 0019C470 38 61 00 40 */ addi r3, r1, 0x40 +/* 8019F514 0019C474 83 5E 07 50 */ lwz r26, 0x750(r30) +/* 8019F518 0019C478 38 84 00 93 */ addi r4, r4, 0x93 +/* 8019F51C 0019C47C B0 01 00 2C */ sth r0, 0x2c(r1) +/* 8019F520 0019C480 B0 01 00 30 */ sth r0, 0x30(r1) +/* 8019F524 0019C484 80 BE 00 04 */ lwz r5, 4(r30) +/* 8019F528 0019C488 90 A1 00 3C */ stw r5, 0x3c(r1) +/* 8019F52C 0019C48C A0 1E 0A 80 */ lhz r0, 0xa80(r30) +/* 8019F530 0019C490 90 A1 00 38 */ stw r5, 0x38(r1) +/* 8019F534 0019C494 B0 01 00 28 */ sth r0, 0x28(r1) +/* 8019F538 0019C498 4B E6 57 81 */ bl string_l__4rstlFPCc +/* 8019F53C 0019C49C 38 01 00 28 */ addi r0, r1, 0x28 +/* 8019F540 0019C4A0 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 8019F544 0019C4A4 90 01 00 08 */ stw r0, 8(r1) +/* 8019F548 0019C4A8 38 01 00 3C */ addi r0, r1, 0x3c +/* 8019F54C 0019C4AC 39 03 66 70 */ addi r8, r3, skIdentity4f@l +/* 8019F550 0019C4B0 38 81 00 30 */ addi r4, r1, 0x30 +/* 8019F554 0019C4B4 90 01 00 0C */ stw r0, 0xc(r1) +/* 8019F558 0019C4B8 38 00 00 00 */ li r0, 0 +/* 8019F55C 0019C4BC 7F A3 EB 78 */ mr r3, r29 +/* 8019F560 0019C4C0 38 A1 00 40 */ addi r5, r1, 0x40 +/* 8019F564 0019C4C4 90 81 00 10 */ stw r4, 0x10(r1) +/* 8019F568 0019C4C8 38 9E 0A 84 */ addi r4, r30, 0xa84 +/* 8019F56C 0019C4CC 38 E1 00 50 */ addi r7, r1, 0x50 +/* 8019F570 0019C4D0 39 5E 06 EC */ addi r10, r30, 0x6ec +/* 8019F574 0019C4D4 90 01 00 14 */ stw r0, 0x14(r1) +/* 8019F578 0019C4D8 3B 20 00 01 */ li r25, 1 +/* 8019F57C 0019C4DC 38 C0 00 03 */ li r6, 3 +/* 8019F580 0019C4E0 39 20 00 2F */ li r9, 0x2f +/* 8019F584 0019C4E4 93 41 00 18 */ stw r26, 0x18(r1) +/* 8019F588 0019C4E8 93 61 00 1C */ stw r27, 0x1c(r1) +/* 8019F58C 0019C4EC 93 81 00 20 */ stw r28, 0x20(r1) +/* 8019F590 0019C4F0 4B FF 95 61 */ bl "__ct__13CFlameThrowerFRC28TToken<18CWeaponDescription>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>11EWeaponTypeRC10CFlameInfoRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId9TUniqueIdUi" +/* 8019F594 0019C4F4 7C 7D 1B 78 */ mr r29, r3 +lbl_8019F598: +/* 8019F598 0019C4F8 7F 20 07 75 */ extsb. r0, r25 +/* 8019F59C 0019C4FC 7F BA EB 78 */ mr r26, r29 +/* 8019F5A0 0019C500 41 82 00 0C */ beq lbl_8019F5AC +/* 8019F5A4 0019C504 38 61 00 40 */ addi r3, r1, 0x40 +/* 8019F5A8 0019C508 48 19 E5 39 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8019F5AC: +/* 8019F5AC 0019C50C 7F E3 FB 78 */ mr r3, r31 +/* 8019F5B0 0019C510 7F 44 D3 78 */ mr r4, r26 +/* 8019F5B4 0019C514 4B EA D5 61 */ bl AddObject__13CStateManagerFR7CEntity +lbl_8019F5B8: +/* 8019F5B8 0019C518 BB 21 00 74 */ lmw r25, 0x74(r1) +/* 8019F5BC 0019C51C 80 01 00 94 */ lwz r0, 0x94(r1) +/* 8019F5C0 0019C520 7C 08 03 A6 */ mtlr r0 +/* 8019F5C4 0019C524 38 21 00 90 */ addi r1, r1, 0x90 +/* 8019F5C8 0019C528 4E 80 00 20 */ blr + +.global sub_8019f5cc +sub_8019f5cc: +/* 8019F5CC 0019C52C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8019F5D0 0019C530 7C 08 02 A6 */ mflr r0 +/* 8019F5D4 0019C534 C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 8019F5D8 0019C538 90 01 00 24 */ stw r0, 0x24(r1) +/* 8019F5DC 0019C53C C0 43 09 5C */ lfs f2, 0x95c(r3) +/* 8019F5E0 0019C540 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8019F5E4 0019C544 40 81 00 0C */ ble lbl_8019F5F0 +/* 8019F5E8 0019C548 C0 42 A7 60 */ lfs f2, lbl_805AC480@sda21(r2) +/* 8019F5EC 0019C54C 48 00 00 08 */ b lbl_8019F5F4 +lbl_8019F5F0: +/* 8019F5F0 0019C550 C0 43 09 44 */ lfs f2, 0x944(r3) +lbl_8019F5F4: +/* 8019F5F4 0019C554 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 8019F5F8 0019C558 C0 63 09 48 */ lfs f3, 0x948(r3) +/* 8019F5FC 0019C55C FC 02 18 40 */ fcmpo cr0, f2, f3 +/* 8019F600 0019C560 40 81 00 30 */ ble lbl_8019F630 +/* 8019F604 0019C564 C0 02 A7 74 */ lfs f0, lbl_805AC494@sda21(r2) +/* 8019F608 0019C568 EC 00 18 7A */ fmadds f0, f0, f1, f3 +/* 8019F60C 0019C56C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8019F610 0019C570 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 8019F614 0019C574 40 80 00 0C */ bge lbl_8019F620 +/* 8019F618 0019C578 38 81 00 10 */ addi r4, r1, 0x10 +/* 8019F61C 0019C57C 48 00 00 08 */ b lbl_8019F624 +lbl_8019F620: +/* 8019F620 0019C580 38 81 00 0C */ addi r4, r1, 0xc +lbl_8019F624: +/* 8019F624 0019C584 C0 04 00 00 */ lfs f0, 0(r4) +/* 8019F628 0019C588 D0 03 09 48 */ stfs f0, 0x948(r3) +/* 8019F62C 0019C58C 48 00 00 30 */ b lbl_8019F65C +lbl_8019F630: +/* 8019F630 0019C590 40 80 00 2C */ bge lbl_8019F65C +/* 8019F634 0019C594 C0 02 A7 74 */ lfs f0, lbl_805AC494@sda21(r2) +/* 8019F638 0019C598 EC 00 18 7C */ fnmsubs f0, f0, f1, f3 +/* 8019F63C 0019C59C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8019F640 0019C5A0 D0 01 00 08 */ stfs f0, 8(r1) +/* 8019F644 0019C5A4 40 80 00 0C */ bge lbl_8019F650 +/* 8019F648 0019C5A8 38 81 00 08 */ addi r4, r1, 8 +/* 8019F64C 0019C5AC 48 00 00 08 */ b lbl_8019F654 +lbl_8019F650: +/* 8019F650 0019C5B0 38 81 00 10 */ addi r4, r1, 0x10 +lbl_8019F654: +/* 8019F654 0019C5B4 C0 04 00 00 */ lfs f0, 0(r4) +/* 8019F658 0019C5B8 D0 03 09 48 */ stfs f0, 0x948(r3) +lbl_8019F65C: +/* 8019F65C 0019C5BC C0 23 09 48 */ lfs f1, 0x948(r3) +/* 8019F660 0019C5C0 80 63 04 50 */ lwz r3, 0x450(r3) +/* 8019F664 0019C5C4 FC 40 08 90 */ fmr f2, f1 +/* 8019F668 0019C5C8 38 63 00 04 */ addi r3, r3, 4 +/* 8019F66C 0019C5CC 4B F9 21 7D */ bl SetSteeringSpeedRange__16CBodyStateCmdMgrFff +/* 8019F670 0019C5D0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8019F674 0019C5D4 7C 08 03 A6 */ mtlr r0 +/* 8019F678 0019C5D8 38 21 00 20 */ addi r1, r1, 0x20 +/* 8019F67C 0019C5DC 4E 80 00 20 */ blr + +.global sub_8019f680 +sub_8019f680: +/* 8019F680 0019C5E0 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 8019F684 0019C5E4 7C 08 02 A6 */ mflr r0 +/* 8019F688 0019C5E8 90 01 00 94 */ stw r0, 0x94(r1) +/* 8019F68C 0019C5EC DB E1 00 80 */ stfd f31, 0x80(r1) +/* 8019F690 0019C5F0 F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0 +/* 8019F694 0019C5F4 BF 61 00 6C */ stmw r27, 0x6c(r1) +/* 8019F698 0019C5F8 88 03 04 00 */ lbz r0, 0x400(r3) +/* 8019F69C 0019C5FC 7C 7C 1B 78 */ mr r28, r3 +/* 8019F6A0 0019C600 7C 9D 23 78 */ mr r29, r4 +/* 8019F6A4 0019C604 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8019F6A8 0019C608 41 82 03 44 */ beq lbl_8019F9EC +/* 8019F6AC 0019C60C C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 8019F6B0 0019C610 7F A3 EB 78 */ mr r3, r29 +/* 8019F6B4 0019C614 38 81 00 1C */ addi r4, r1, 0x1c +/* 8019F6B8 0019C618 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 8019F6BC 0019C61C A0 1C 0A F8 */ lhz r0, 0xaf8(r28) +/* 8019F6C0 0019C620 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 8019F6C4 0019C624 4B EA CE B1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8019F6C8 0019C628 7C 64 1B 78 */ mr r4, r3 +/* 8019F6CC 0019C62C 38 61 00 58 */ addi r3, r1, 0x58 +/* 8019F6D0 0019C630 4B F0 FC 7D */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8019F6D4 0019C634 80 63 00 04 */ lwz r3, 4(r3) +/* 8019F6D8 0019C638 28 03 00 00 */ cmplwi r3, 0 +/* 8019F6DC 0019C63C 41 82 00 3C */ beq lbl_8019F718 +/* 8019F6E0 0019C640 81 83 00 00 */ lwz r12, 0(r3) +/* 8019F6E4 0019C644 7F A4 EB 78 */ mr r4, r29 +/* 8019F6E8 0019C648 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8019F6EC 0019C64C 7D 89 03 A6 */ mtctr r12 +/* 8019F6F0 0019C650 4E 80 04 21 */ bctrl +/* 8019F6F4 0019C654 C0 03 00 00 */ lfs f0, 0(r3) +/* 8019F6F8 0019C658 38 61 00 2C */ addi r3, r1, 0x2c +/* 8019F6FC 0019C65C C0 3C 09 70 */ lfs f1, 0x970(r28) +/* 8019F700 0019C660 38 81 00 28 */ addi r4, r1, 0x28 +/* 8019F704 0019C664 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8019F708 0019C668 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 8019F70C 0019C66C 4B EB 00 25 */ bl "Max__5CMathFRCfRCf" +/* 8019F710 0019C670 C0 03 00 00 */ lfs f0, 0(r3) +/* 8019F714 0019C674 D0 01 00 2C */ stfs f0, 0x2c(r1) +lbl_8019F718: +/* 8019F718 0019C678 3B FC 0B 00 */ addi r31, r28, 0xb00 +/* 8019F71C 0019C67C 7F FE FB 78 */ mr r30, r31 +/* 8019F720 0019C680 48 00 00 74 */ b lbl_8019F794 +lbl_8019F724: +/* 8019F724 0019C684 A0 1E 00 00 */ lhz r0, 0(r30) +/* 8019F728 0019C688 7F A3 EB 78 */ mr r3, r29 +/* 8019F72C 0019C68C 38 81 00 18 */ addi r4, r1, 0x18 +/* 8019F730 0019C690 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8019F734 0019C694 4B EA CE 41 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8019F738 0019C698 7C 64 1B 78 */ mr r4, r3 +/* 8019F73C 0019C69C 38 61 00 50 */ addi r3, r1, 0x50 +/* 8019F740 0019C6A0 4B F0 FC 0D */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8019F744 0019C6A4 80 63 00 04 */ lwz r3, 4(r3) +/* 8019F748 0019C6A8 28 03 00 00 */ cmplwi r3, 0 +/* 8019F74C 0019C6AC 41 82 00 44 */ beq lbl_8019F790 +/* 8019F750 0019C6B0 81 83 00 00 */ lwz r12, 0(r3) +/* 8019F754 0019C6B4 7F A4 EB 78 */ mr r4, r29 +/* 8019F758 0019C6B8 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8019F75C 0019C6BC 7D 89 03 A6 */ mtctr r12 +/* 8019F760 0019C6C0 4E 80 04 21 */ bctrl +/* 8019F764 0019C6C4 C0 03 00 00 */ lfs f0, 0(r3) +/* 8019F768 0019C6C8 38 61 00 2C */ addi r3, r1, 0x2c +/* 8019F76C 0019C6CC C0 3C 09 70 */ lfs f1, 0x970(r28) +/* 8019F770 0019C6D0 38 81 00 24 */ addi r4, r1, 0x24 +/* 8019F774 0019C6D4 C0 42 A7 80 */ lfs f2, lbl_805AC4A0@sda21(r2) +/* 8019F778 0019C6D8 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8019F77C 0019C6DC EC 02 00 32 */ fmuls f0, f2, f0 +/* 8019F780 0019C6E0 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 8019F784 0019C6E4 4B EA FF AD */ bl "Max__5CMathFRCfRCf" +/* 8019F788 0019C6E8 C0 03 00 00 */ lfs f0, 0(r3) +/* 8019F78C 0019C6EC D0 01 00 2C */ stfs f0, 0x2c(r1) +lbl_8019F790: +/* 8019F790 0019C6F0 3B DE 00 02 */ addi r30, r30, 2 +lbl_8019F794: +/* 8019F794 0019C6F4 80 1C 0A FC */ lwz r0, 0xafc(r28) +/* 8019F798 0019C6F8 54 00 08 3C */ slwi r0, r0, 1 +/* 8019F79C 0019C6FC 7C 1F 02 14 */ add r0, r31, r0 +/* 8019F7A0 0019C700 7C 1E 00 40 */ cmplw r30, r0 +/* 8019F7A4 0019C704 40 82 FF 80 */ bne lbl_8019F724 +/* 8019F7A8 0019C708 3B DC 0B 08 */ addi r30, r28, 0xb08 +/* 8019F7AC 0019C70C 7F DB F3 78 */ mr r27, r30 +/* 8019F7B0 0019C710 48 00 00 6C */ b lbl_8019F81C +lbl_8019F7B4: +/* 8019F7B4 0019C714 A0 1B 00 00 */ lhz r0, 0(r27) +/* 8019F7B8 0019C718 7F A3 EB 78 */ mr r3, r29 +/* 8019F7BC 0019C71C 38 81 00 14 */ addi r4, r1, 0x14 +/* 8019F7C0 0019C720 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8019F7C4 0019C724 4B EA CD B1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8019F7C8 0019C728 7C 64 1B 78 */ mr r4, r3 +/* 8019F7CC 0019C72C 38 61 00 48 */ addi r3, r1, 0x48 +/* 8019F7D0 0019C730 4B F0 FB 7D */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8019F7D4 0019C734 80 63 00 04 */ lwz r3, 4(r3) +/* 8019F7D8 0019C738 28 03 00 00 */ cmplwi r3, 0 +/* 8019F7DC 0019C73C 41 82 00 3C */ beq lbl_8019F818 +/* 8019F7E0 0019C740 81 83 00 00 */ lwz r12, 0(r3) +/* 8019F7E4 0019C744 7F A4 EB 78 */ mr r4, r29 +/* 8019F7E8 0019C748 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8019F7EC 0019C74C 7D 89 03 A6 */ mtctr r12 +/* 8019F7F0 0019C750 4E 80 04 21 */ bctrl +/* 8019F7F4 0019C754 C0 03 00 00 */ lfs f0, 0(r3) +/* 8019F7F8 0019C758 38 61 00 2C */ addi r3, r1, 0x2c +/* 8019F7FC 0019C75C C0 3C 09 70 */ lfs f1, 0x970(r28) +/* 8019F800 0019C760 38 81 00 20 */ addi r4, r1, 0x20 +/* 8019F804 0019C764 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8019F808 0019C768 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 8019F80C 0019C76C 4B EA FF 25 */ bl "Max__5CMathFRCfRCf" +/* 8019F810 0019C770 C0 03 00 00 */ lfs f0, 0(r3) +/* 8019F814 0019C774 D0 01 00 2C */ stfs f0, 0x2c(r1) +lbl_8019F818: +/* 8019F818 0019C778 3B 7B 00 02 */ addi r27, r27, 2 +lbl_8019F81C: +/* 8019F81C 0019C77C 80 1C 0B 04 */ lwz r0, 0xb04(r28) +/* 8019F820 0019C780 54 00 08 3C */ slwi r0, r0, 1 +/* 8019F824 0019C784 7C 1E 02 14 */ add r0, r30, r0 +/* 8019F828 0019C788 7C 1B 00 40 */ cmplw r27, r0 +/* 8019F82C 0019C78C 40 82 FF 88 */ bne lbl_8019F7B4 +/* 8019F830 0019C790 7F 83 E3 78 */ mr r3, r28 +/* 8019F834 0019C794 7F A4 EB 78 */ mr r4, r29 +/* 8019F838 0019C798 81 9C 00 00 */ lwz r12, 0(r28) +/* 8019F83C 0019C79C 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8019F840 0019C7A0 7D 89 03 A6 */ mtctr r12 +/* 8019F844 0019C7A4 4E 80 04 21 */ bctrl +/* 8019F848 0019C7A8 C0 23 00 00 */ lfs f1, 0(r3) +/* 8019F84C 0019C7AC 7F 83 E3 78 */ mr r3, r28 +/* 8019F850 0019C7B0 81 9C 00 00 */ lwz r12, 0(r28) +/* 8019F854 0019C7B4 7F A4 EB 78 */ mr r4, r29 +/* 8019F858 0019C7B8 C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 8019F85C 0019C7BC 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8019F860 0019C7C0 EF E1 00 28 */ fsubs f31, f1, f0 +/* 8019F864 0019C7C4 7D 89 03 A6 */ mtctr r12 +/* 8019F868 0019C7C8 4E 80 04 21 */ bctrl +/* 8019F86C 0019C7CC D3 E3 00 00 */ stfs f31, 0(r3) +/* 8019F870 0019C7D0 7F 83 E3 78 */ mr r3, r28 +/* 8019F874 0019C7D4 7F A4 EB 78 */ mr r4, r29 +/* 8019F878 0019C7D8 81 9C 00 00 */ lwz r12, 0(r28) +/* 8019F87C 0019C7DC 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8019F880 0019C7E0 7D 89 03 A6 */ mtctr r12 +/* 8019F884 0019C7E4 4E 80 04 21 */ bctrl +/* 8019F888 0019C7E8 C0 23 00 00 */ lfs f1, 0(r3) +/* 8019F88C 0019C7EC C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 8019F890 0019C7F0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8019F894 0019C7F4 4C 40 13 82 */ cror 2, 0, 2 +/* 8019F898 0019C7F8 40 82 00 3C */ bne lbl_8019F8D4 +/* 8019F89C 0019C7FC 81 9C 00 00 */ lwz r12, 0(r28) +/* 8019F8A0 0019C800 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8019F8A4 0019C804 38 A4 66 A0 */ addi r5, r4, skZero3f@l +/* 8019F8A8 0019C808 7F 83 E3 78 */ mr r3, r28 +/* 8019F8AC 0019C80C 81 8C 00 84 */ lwz r12, 0x84(r12) +/* 8019F8B0 0019C810 7F A4 EB 78 */ mr r4, r29 +/* 8019F8B4 0019C814 38 C0 00 14 */ li r6, 0x14 +/* 8019F8B8 0019C818 7D 89 03 A6 */ mtctr r12 +/* 8019F8BC 0019C81C 4E 80 04 21 */ bctrl +/* 8019F8C0 0019C820 88 1C 0B 28 */ lbz r0, 0xb28(r28) +/* 8019F8C4 0019C824 38 60 00 01 */ li r3, 1 +/* 8019F8C8 0019C828 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 8019F8CC 0019C82C 98 1C 0B 28 */ stb r0, 0xb28(r28) +/* 8019F8D0 0019C830 48 00 01 1C */ b lbl_8019F9EC +lbl_8019F8D4: +/* 8019F8D4 0019C834 A0 1C 0A F8 */ lhz r0, 0xaf8(r28) +/* 8019F8D8 0019C838 7F A3 EB 78 */ mr r3, r29 +/* 8019F8DC 0019C83C 38 81 00 10 */ addi r4, r1, 0x10 +/* 8019F8E0 0019C840 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8019F8E4 0019C844 4B EA CC 91 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8019F8E8 0019C848 7C 64 1B 78 */ mr r4, r3 +/* 8019F8EC 0019C84C 38 61 00 40 */ addi r3, r1, 0x40 +/* 8019F8F0 0019C850 4B F0 FA 5D */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8019F8F4 0019C854 80 63 00 04 */ lwz r3, 4(r3) +/* 8019F8F8 0019C858 28 03 00 00 */ cmplwi r3, 0 +/* 8019F8FC 0019C85C 41 82 00 20 */ beq lbl_8019F91C +/* 8019F900 0019C860 81 83 00 00 */ lwz r12, 0(r3) +/* 8019F904 0019C864 7F A4 EB 78 */ mr r4, r29 +/* 8019F908 0019C868 C3 FC 09 70 */ lfs f31, 0x970(r28) +/* 8019F90C 0019C86C 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8019F910 0019C870 7D 89 03 A6 */ mtctr r12 +/* 8019F914 0019C874 4E 80 04 21 */ bctrl +/* 8019F918 0019C878 D3 E3 00 00 */ stfs f31, 0(r3) +lbl_8019F91C: +/* 8019F91C 0019C87C 7F FB FB 78 */ mr r27, r31 +/* 8019F920 0019C880 48 00 00 50 */ b lbl_8019F970 +lbl_8019F924: +/* 8019F924 0019C884 A0 1B 00 00 */ lhz r0, 0(r27) +/* 8019F928 0019C888 7F A3 EB 78 */ mr r3, r29 +/* 8019F92C 0019C88C 38 81 00 0C */ addi r4, r1, 0xc +/* 8019F930 0019C890 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8019F934 0019C894 4B EA CC 41 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8019F938 0019C898 7C 64 1B 78 */ mr r4, r3 +/* 8019F93C 0019C89C 38 61 00 38 */ addi r3, r1, 0x38 +/* 8019F940 0019C8A0 4B F0 FA 0D */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8019F944 0019C8A4 80 63 00 04 */ lwz r3, 4(r3) +/* 8019F948 0019C8A8 28 03 00 00 */ cmplwi r3, 0 +/* 8019F94C 0019C8AC 41 82 00 20 */ beq lbl_8019F96C +/* 8019F950 0019C8B0 81 83 00 00 */ lwz r12, 0(r3) +/* 8019F954 0019C8B4 7F A4 EB 78 */ mr r4, r29 +/* 8019F958 0019C8B8 C3 FC 09 70 */ lfs f31, 0x970(r28) +/* 8019F95C 0019C8BC 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8019F960 0019C8C0 7D 89 03 A6 */ mtctr r12 +/* 8019F964 0019C8C4 4E 80 04 21 */ bctrl +/* 8019F968 0019C8C8 D3 E3 00 00 */ stfs f31, 0(r3) +lbl_8019F96C: +/* 8019F96C 0019C8CC 3B 7B 00 02 */ addi r27, r27, 2 +lbl_8019F970: +/* 8019F970 0019C8D0 80 1C 0A FC */ lwz r0, 0xafc(r28) +/* 8019F974 0019C8D4 54 00 08 3C */ slwi r0, r0, 1 +/* 8019F978 0019C8D8 7C 1F 02 14 */ add r0, r31, r0 +/* 8019F97C 0019C8DC 7C 1B 00 40 */ cmplw r27, r0 +/* 8019F980 0019C8E0 40 82 FF A4 */ bne lbl_8019F924 +/* 8019F984 0019C8E4 7F DB F3 78 */ mr r27, r30 +/* 8019F988 0019C8E8 48 00 00 50 */ b lbl_8019F9D8 +lbl_8019F98C: +/* 8019F98C 0019C8EC A0 1B 00 00 */ lhz r0, 0(r27) +/* 8019F990 0019C8F0 7F A3 EB 78 */ mr r3, r29 +/* 8019F994 0019C8F4 38 81 00 08 */ addi r4, r1, 8 +/* 8019F998 0019C8F8 B0 01 00 08 */ sth r0, 8(r1) +/* 8019F99C 0019C8FC 4B EA CB D9 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8019F9A0 0019C900 7C 64 1B 78 */ mr r4, r3 +/* 8019F9A4 0019C904 38 61 00 30 */ addi r3, r1, 0x30 +/* 8019F9A8 0019C908 4B F0 F9 A5 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8019F9AC 0019C90C 80 63 00 04 */ lwz r3, 4(r3) +/* 8019F9B0 0019C910 28 03 00 00 */ cmplwi r3, 0 +/* 8019F9B4 0019C914 41 82 00 20 */ beq lbl_8019F9D4 +/* 8019F9B8 0019C918 81 83 00 00 */ lwz r12, 0(r3) +/* 8019F9BC 0019C91C 7F A4 EB 78 */ mr r4, r29 +/* 8019F9C0 0019C920 C3 FC 09 70 */ lfs f31, 0x970(r28) +/* 8019F9C4 0019C924 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8019F9C8 0019C928 7D 89 03 A6 */ mtctr r12 +/* 8019F9CC 0019C92C 4E 80 04 21 */ bctrl +/* 8019F9D0 0019C930 D3 E3 00 00 */ stfs f31, 0(r3) +lbl_8019F9D4: +/* 8019F9D4 0019C934 3B 7B 00 02 */ addi r27, r27, 2 +lbl_8019F9D8: +/* 8019F9D8 0019C938 80 1C 0B 04 */ lwz r0, 0xb04(r28) +/* 8019F9DC 0019C93C 54 00 08 3C */ slwi r0, r0, 1 +/* 8019F9E0 0019C940 7C 1E 02 14 */ add r0, r30, r0 +/* 8019F9E4 0019C944 7C 1B 00 40 */ cmplw r27, r0 +/* 8019F9E8 0019C948 40 82 FF A4 */ bne lbl_8019F98C +lbl_8019F9EC: +/* 8019F9EC 0019C94C E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0 +/* 8019F9F0 0019C950 CB E1 00 80 */ lfd f31, 0x80(r1) +/* 8019F9F4 0019C954 BB 61 00 6C */ lmw r27, 0x6c(r1) +/* 8019F9F8 0019C958 80 01 00 94 */ lwz r0, 0x94(r1) +/* 8019F9FC 0019C95C 7C 08 03 A6 */ mtlr r0 +/* 8019FA00 0019C960 38 21 00 90 */ addi r1, r1, 0x90 +/* 8019FA04 0019C964 4E 80 00 20 */ blr + +.global sub_8019fa08 +sub_8019fa08: +/* 8019FA08 0019C968 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 8019FA0C 0019C96C 7C 08 02 A6 */ mflr r0 +/* 8019FA10 0019C970 90 01 00 54 */ stw r0, 0x54(r1) +/* 8019FA14 0019C974 BF 61 00 3C */ stmw r27, 0x3c(r1) +/* 8019FA18 0019C978 7C 7D 1B 78 */ mr r29, r3 +/* 8019FA1C 0019C97C 7C 9E 23 78 */ mr r30, r4 +/* 8019FA20 0019C980 81 83 00 00 */ lwz r12, 0(r3) +/* 8019FA24 0019C984 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8019FA28 0019C988 7D 89 03 A6 */ mtctr r12 +/* 8019FA2C 0019C98C 4E 80 04 21 */ bctrl +/* 8019FA30 0019C990 7C 7F 1B 78 */ mr r31, r3 +/* 8019FA34 0019C994 3B 9D 0B 00 */ addi r28, r29, 0xb00 +/* 8019FA38 0019C998 C0 03 00 00 */ lfs f0, 0(r3) +/* 8019FA3C 0019C99C 7F 9B E3 78 */ mr r27, r28 +/* 8019FA40 0019C9A0 D0 1D 09 70 */ stfs f0, 0x970(r29) +/* 8019FA44 0019C9A4 48 00 00 58 */ b lbl_8019FA9C +lbl_8019FA48: +/* 8019FA48 0019C9A8 A0 1B 00 00 */ lhz r0, 0(r27) +/* 8019FA4C 0019C9AC 7F C3 F3 78 */ mr r3, r30 +/* 8019FA50 0019C9B0 38 81 00 10 */ addi r4, r1, 0x10 +/* 8019FA54 0019C9B4 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8019FA58 0019C9B8 4B EA CB 1D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8019FA5C 0019C9BC 7C 64 1B 78 */ mr r4, r3 +/* 8019FA60 0019C9C0 38 61 00 24 */ addi r3, r1, 0x24 +/* 8019FA64 0019C9C4 4B F0 F8 E9 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8019FA68 0019C9C8 80 63 00 04 */ lwz r3, 4(r3) +/* 8019FA6C 0019C9CC 28 03 00 00 */ cmplwi r3, 0 +/* 8019FA70 0019C9D0 41 82 00 28 */ beq lbl_8019FA98 +/* 8019FA74 0019C9D4 81 83 00 00 */ lwz r12, 0(r3) +/* 8019FA78 0019C9D8 7F C4 F3 78 */ mr r4, r30 +/* 8019FA7C 0019C9DC 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8019FA80 0019C9E0 7D 89 03 A6 */ mtctr r12 +/* 8019FA84 0019C9E4 4E 80 04 21 */ bctrl +/* 8019FA88 0019C9E8 C0 1F 00 00 */ lfs f0, 0(r31) +/* 8019FA8C 0019C9EC D0 03 00 00 */ stfs f0, 0(r3) +/* 8019FA90 0019C9F0 C0 1F 00 04 */ lfs f0, 4(r31) +/* 8019FA94 0019C9F4 D0 03 00 04 */ stfs f0, 4(r3) +lbl_8019FA98: +/* 8019FA98 0019C9F8 3B 7B 00 02 */ addi r27, r27, 2 +lbl_8019FA9C: +/* 8019FA9C 0019C9FC 80 1D 0A FC */ lwz r0, 0xafc(r29) +/* 8019FAA0 0019CA00 54 00 08 3C */ slwi r0, r0, 1 +/* 8019FAA4 0019CA04 7C 1C 02 14 */ add r0, r28, r0 +/* 8019FAA8 0019CA08 7C 1B 00 40 */ cmplw r27, r0 +/* 8019FAAC 0019CA0C 40 82 FF 9C */ bne lbl_8019FA48 +/* 8019FAB0 0019CA10 A0 1D 0A F8 */ lhz r0, 0xaf8(r29) +/* 8019FAB4 0019CA14 7F C3 F3 78 */ mr r3, r30 +/* 8019FAB8 0019CA18 38 81 00 0C */ addi r4, r1, 0xc +/* 8019FABC 0019CA1C B0 01 00 0C */ sth r0, 0xc(r1) +/* 8019FAC0 0019CA20 4B EA CA B5 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8019FAC4 0019CA24 7C 64 1B 78 */ mr r4, r3 +/* 8019FAC8 0019CA28 38 61 00 1C */ addi r3, r1, 0x1c +/* 8019FACC 0019CA2C 4B F0 F8 81 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8019FAD0 0019CA30 80 63 00 04 */ lwz r3, 4(r3) +/* 8019FAD4 0019CA34 28 03 00 00 */ cmplwi r3, 0 +/* 8019FAD8 0019CA38 41 82 00 28 */ beq lbl_8019FB00 +/* 8019FADC 0019CA3C 81 83 00 00 */ lwz r12, 0(r3) +/* 8019FAE0 0019CA40 7F C4 F3 78 */ mr r4, r30 +/* 8019FAE4 0019CA44 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8019FAE8 0019CA48 7D 89 03 A6 */ mtctr r12 +/* 8019FAEC 0019CA4C 4E 80 04 21 */ bctrl +/* 8019FAF0 0019CA50 C0 1F 00 00 */ lfs f0, 0(r31) +/* 8019FAF4 0019CA54 D0 03 00 00 */ stfs f0, 0(r3) +/* 8019FAF8 0019CA58 C0 1F 00 04 */ lfs f0, 4(r31) +/* 8019FAFC 0019CA5C D0 03 00 04 */ stfs f0, 4(r3) +lbl_8019FB00: +/* 8019FB00 0019CA60 3B 9D 0B 08 */ addi r28, r29, 0xb08 +/* 8019FB04 0019CA64 7F 9B E3 78 */ mr r27, r28 +/* 8019FB08 0019CA68 48 00 00 58 */ b lbl_8019FB60 +lbl_8019FB0C: +/* 8019FB0C 0019CA6C A0 1B 00 00 */ lhz r0, 0(r27) +/* 8019FB10 0019CA70 7F C3 F3 78 */ mr r3, r30 +/* 8019FB14 0019CA74 38 81 00 08 */ addi r4, r1, 8 +/* 8019FB18 0019CA78 B0 01 00 08 */ sth r0, 8(r1) +/* 8019FB1C 0019CA7C 4B EA CA 59 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8019FB20 0019CA80 7C 64 1B 78 */ mr r4, r3 +/* 8019FB24 0019CA84 38 61 00 14 */ addi r3, r1, 0x14 +/* 8019FB28 0019CA88 4B F0 F8 25 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8019FB2C 0019CA8C 80 63 00 04 */ lwz r3, 4(r3) +/* 8019FB30 0019CA90 28 03 00 00 */ cmplwi r3, 0 +/* 8019FB34 0019CA94 41 82 00 28 */ beq lbl_8019FB5C +/* 8019FB38 0019CA98 81 83 00 00 */ lwz r12, 0(r3) +/* 8019FB3C 0019CA9C 7F C4 F3 78 */ mr r4, r30 +/* 8019FB40 0019CAA0 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8019FB44 0019CAA4 7D 89 03 A6 */ mtctr r12 +/* 8019FB48 0019CAA8 4E 80 04 21 */ bctrl +/* 8019FB4C 0019CAAC C0 1F 00 00 */ lfs f0, 0(r31) +/* 8019FB50 0019CAB0 D0 03 00 00 */ stfs f0, 0(r3) +/* 8019FB54 0019CAB4 C0 1F 00 04 */ lfs f0, 4(r31) +/* 8019FB58 0019CAB8 D0 03 00 04 */ stfs f0, 4(r3) +lbl_8019FB5C: +/* 8019FB5C 0019CABC 3B 7B 00 02 */ addi r27, r27, 2 +lbl_8019FB60: +/* 8019FB60 0019CAC0 80 1D 0B 04 */ lwz r0, 0xb04(r29) +/* 8019FB64 0019CAC4 54 00 08 3C */ slwi r0, r0, 1 +/* 8019FB68 0019CAC8 7C 1C 02 14 */ add r0, r28, r0 +/* 8019FB6C 0019CACC 7C 1B 00 40 */ cmplw r27, r0 +/* 8019FB70 0019CAD0 40 82 FF 9C */ bne lbl_8019FB0C +/* 8019FB74 0019CAD4 BB 61 00 3C */ lmw r27, 0x3c(r1) +/* 8019FB78 0019CAD8 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8019FB7C 0019CADC 7C 08 03 A6 */ mtlr r0 +/* 8019FB80 0019CAE0 38 21 00 50 */ addi r1, r1, 0x50 +/* 8019FB84 0019CAE4 4E 80 00 20 */ blr + +.global sub_8019fb88 +sub_8019fb88: +/* 8019FB88 0019CAE8 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8019FB8C 0019CAEC 7C 08 02 A6 */ mflr r0 +/* 8019FB90 0019CAF0 90 01 00 34 */ stw r0, 0x34(r1) +/* 8019FB94 0019CAF4 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8019FB98 0019CAF8 3B E0 00 00 */ li r31, 0 +/* 8019FB9C 0019CAFC 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8019FBA0 0019CB00 7C BE 2B 78 */ mr r30, r5 +/* 8019FBA4 0019CB04 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8019FBA8 0019CB08 7C 9D 23 78 */ mr r29, r4 +/* 8019FBAC 0019CB0C 93 81 00 20 */ stw r28, 0x20(r1) +/* 8019FBB0 0019CB10 7C 7C 1B 78 */ mr r28, r3 +/* 8019FBB4 0019CB14 48 00 00 5C */ b lbl_8019FC10 +lbl_8019FBB8: +/* 8019FBB8 0019CB18 80 7C 0A 2C */ lwz r3, 0xa2c(r28) +/* 8019FBBC 0019CB1C 7F E4 FB 78 */ mr r4, r31 +/* 8019FBC0 0019CB20 48 00 76 79 */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 8019FBC4 0019CB24 A0 03 00 3C */ lhz r0, 0x3c(r3) +/* 8019FBC8 0019CB28 7F A3 EB 78 */ mr r3, r29 +/* 8019FBCC 0019CB2C 38 81 00 08 */ addi r4, r1, 8 +/* 8019FBD0 0019CB30 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8019FBD4 0019CB34 B0 01 00 08 */ sth r0, 8(r1) +/* 8019FBD8 0019CB38 4B EA C9 9D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8019FBDC 0019CB3C 7C 64 1B 78 */ mr r4, r3 +/* 8019FBE0 0019CB40 38 61 00 10 */ addi r3, r1, 0x10 +/* 8019FBE4 0019CB44 4B F0 F7 69 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8019FBE8 0019CB48 80 63 00 04 */ lwz r3, 4(r3) +/* 8019FBEC 0019CB4C 28 03 00 00 */ cmplwi r3, 0 +/* 8019FBF0 0019CB50 41 82 00 1C */ beq lbl_8019FC0C +/* 8019FBF4 0019CB54 C0 1E 00 00 */ lfs f0, 0(r30) +/* 8019FBF8 0019CB58 D0 03 03 04 */ stfs f0, 0x304(r3) +/* 8019FBFC 0019CB5C C0 1E 00 04 */ lfs f0, 4(r30) +/* 8019FC00 0019CB60 D0 03 03 08 */ stfs f0, 0x308(r3) +/* 8019FC04 0019CB64 C0 1E 00 08 */ lfs f0, 8(r30) +/* 8019FC08 0019CB68 D0 03 03 0C */ stfs f0, 0x30c(r3) +lbl_8019FC0C: +/* 8019FC0C 0019CB6C 3B FF 00 01 */ addi r31, r31, 1 +lbl_8019FC10: +/* 8019FC10 0019CB70 80 7C 0A 2C */ lwz r3, 0xa2c(r28) +/* 8019FC14 0019CB74 48 00 76 35 */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 8019FC18 0019CB78 7C 1F 18 40 */ cmplw r31, r3 +/* 8019FC1C 0019CB7C 41 80 FF 9C */ blt lbl_8019FBB8 +/* 8019FC20 0019CB80 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8019FC24 0019CB84 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8019FC28 0019CB88 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8019FC2C 0019CB8C 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8019FC30 0019CB90 83 81 00 20 */ lwz r28, 0x20(r1) +/* 8019FC34 0019CB94 7C 08 03 A6 */ mtlr r0 +/* 8019FC38 0019CB98 38 21 00 30 */ addi r1, r1, 0x30 +/* 8019FC3C 0019CB9C 4E 80 00 20 */ blr + +.global sub_8019fc40 +sub_8019fc40: +/* 8019FC40 0019CBA0 80 03 0A FC */ lwz r0, 0xafc(r3) +/* 8019FC44 0019CBA4 38 63 0B 00 */ addi r3, r3, 0xb00 +/* 8019FC48 0019CBA8 7C 66 1B 78 */ mr r6, r3 +/* 8019FC4C 0019CBAC 54 00 08 3C */ slwi r0, r0, 1 +/* 8019FC50 0019CBB0 7C A3 02 14 */ add r5, r3, r0 +/* 8019FC54 0019CBB4 48 00 00 20 */ b lbl_8019FC74 +lbl_8019FC58: +/* 8019FC58 0019CBB8 A0 66 00 00 */ lhz r3, 0(r6) +/* 8019FC5C 0019CBBC A0 04 00 08 */ lhz r0, 8(r4) +/* 8019FC60 0019CBC0 7C 03 00 40 */ cmplw r3, r0 +/* 8019FC64 0019CBC4 40 82 00 0C */ bne lbl_8019FC70 +/* 8019FC68 0019CBC8 38 60 00 01 */ li r3, 1 +/* 8019FC6C 0019CBCC 4E 80 00 20 */ blr +lbl_8019FC70: +/* 8019FC70 0019CBD0 38 C6 00 02 */ addi r6, r6, 2 +lbl_8019FC74: +/* 8019FC74 0019CBD4 7C 06 28 40 */ cmplw r6, r5 +/* 8019FC78 0019CBD8 40 82 FF E0 */ bne lbl_8019FC58 +/* 8019FC7C 0019CBDC 38 60 00 00 */ li r3, 0 +/* 8019FC80 0019CBE0 4E 80 00 20 */ blr + +.global sub_8019fc84 +sub_8019fc84: +/* 8019FC84 0019CBE4 A0 84 00 08 */ lhz r4, 8(r4) +/* 8019FC88 0019CBE8 A0 03 0A F8 */ lhz r0, 0xaf8(r3) +/* 8019FC8C 0019CBEC 7C 04 00 50 */ subf r0, r4, r0 +/* 8019FC90 0019CBF0 7C 00 00 34 */ cntlzw r0, r0 +/* 8019FC94 0019CBF4 54 03 D9 7E */ srwi r3, r0, 5 +/* 8019FC98 0019CBF8 4E 80 00 20 */ blr + +.global sub_8019fc9c +sub_8019fc9c: +/* 8019FC9C 0019CBFC 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 8019FCA0 0019CC00 7C 08 02 A6 */ mflr r0 +/* 8019FCA4 0019CC04 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 8019FCA8 0019CC08 BE E1 00 CC */ stmw r23, 0xcc(r1) +/* 8019FCAC 0019CC0C 7C 77 1B 78 */ mr r23, r3 +/* 8019FCB0 0019CC10 7C B8 2B 78 */ mr r24, r5 +/* 8019FCB4 0019CC14 7C D9 33 78 */ mr r25, r6 +/* 8019FCB8 0019CC18 7C 9E 23 78 */ mr r30, r4 +/* 8019FCBC 0019CC1C 3B A1 00 60 */ addi r29, r1, 0x60 +/* 8019FCC0 0019CC20 3B 81 00 A4 */ addi r28, r1, 0xa4 +/* 8019FCC4 0019CC24 3B 77 0B 20 */ addi r27, r23, 0xb20 +/* 8019FCC8 0019CC28 3B 40 00 00 */ li r26, 0 +/* 8019FCCC 0019CC2C 80 63 00 64 */ lwz r3, 0x64(r3) +/* 8019FCD0 0019CC30 83 E3 00 10 */ lwz r31, 0x10(r3) +/* 8019FCD4 0019CC34 48 00 01 40 */ b lbl_8019FE14 +lbl_8019FCD8: +/* 8019FCD8 0019CC38 80 9E 00 00 */ lwz r4, 0(r30) +/* 8019FCDC 0019CC3C 38 61 00 24 */ addi r3, r1, 0x24 +/* 8019FCE0 0019CC40 4B E6 4F D9 */ bl string_l__4rstlFPCc +/* 8019FCE4 0019CC44 7F E4 FB 78 */ mr r4, r31 +/* 8019FCE8 0019CC48 38 61 00 0C */ addi r3, r1, 0xc +/* 8019FCEC 0019CC4C 38 A1 00 24 */ addi r5, r1, 0x24 +/* 8019FCF0 0019CC50 4B E8 EB 49 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8019FCF4 0019CC54 88 01 00 0C */ lbz r0, 0xc(r1) +/* 8019FCF8 0019CC58 38 61 00 24 */ addi r3, r1, 0x24 +/* 8019FCFC 0019CC5C 98 01 00 10 */ stb r0, 0x10(r1) +/* 8019FD00 0019CC60 48 19 DD E1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8019FD04 0019CC64 88 01 00 10 */ lbz r0, 0x10(r1) +/* 8019FD08 0019CC68 28 00 00 FF */ cmplwi r0, 0xff +/* 8019FD0C 0019CC6C 41 82 01 00 */ beq lbl_8019FE0C +/* 8019FD10 0019CC70 80 9E 00 00 */ lwz r4, 0(r30) +/* 8019FD14 0019CC74 38 61 00 14 */ addi r3, r1, 0x14 +/* 8019FD18 0019CC78 4B E6 4F A1 */ bl string_l__4rstlFPCc +/* 8019FD1C 0019CC7C 88 01 00 10 */ lbz r0, 0x10(r1) +/* 8019FD20 0019CC80 38 61 00 34 */ addi r3, r1, 0x34 +/* 8019FD24 0019CC84 C0 3E 00 04 */ lfs f1, 4(r30) +/* 8019FD28 0019CC88 38 81 00 08 */ addi r4, r1, 8 +/* 8019FD2C 0019CC8C 98 01 00 08 */ stb r0, 8(r1) +/* 8019FD30 0019CC90 38 A1 00 14 */ addi r5, r1, 0x14 +/* 8019FD34 0019CC94 C0 42 A7 84 */ lfs f2, lbl_805AC4A4@sda21(r2) +/* 8019FD38 0019CC98 48 00 8A D5 */ bl "SphereCollision__26CJointCollisionDescriptionF6CSegIdfRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" +/* 8019FD3C 0019CC9C 80 E1 00 34 */ lwz r7, 0x34(r1) +/* 8019FD40 0019CCA0 7F 83 E3 78 */ mr r3, r28 +/* 8019FD44 0019CCA4 80 C1 00 38 */ lwz r6, 0x38(r1) +/* 8019FD48 0019CCA8 7F A4 EB 78 */ mr r4, r29 +/* 8019FD4C 0019CCAC 88 A1 00 3C */ lbz r5, 0x3c(r1) +/* 8019FD50 0019CCB0 88 01 00 3D */ lbz r0, 0x3d(r1) +/* 8019FD54 0019CCB4 C0 E1 00 40 */ lfs f7, 0x40(r1) +/* 8019FD58 0019CCB8 C0 C1 00 44 */ lfs f6, 0x44(r1) +/* 8019FD5C 0019CCBC C0 A1 00 48 */ lfs f5, 0x48(r1) +/* 8019FD60 0019CCC0 C0 81 00 4C */ lfs f4, 0x4c(r1) +/* 8019FD64 0019CCC4 C0 61 00 50 */ lfs f3, 0x50(r1) +/* 8019FD68 0019CCC8 C0 41 00 54 */ lfs f2, 0x54(r1) +/* 8019FD6C 0019CCCC C0 21 00 58 */ lfs f1, 0x58(r1) +/* 8019FD70 0019CCD0 C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 8019FD74 0019CCD4 90 E1 00 78 */ stw r7, 0x78(r1) +/* 8019FD78 0019CCD8 90 C1 00 7C */ stw r6, 0x7c(r1) +/* 8019FD7C 0019CCDC 98 A1 00 80 */ stb r5, 0x80(r1) +/* 8019FD80 0019CCE0 98 01 00 81 */ stb r0, 0x81(r1) +/* 8019FD84 0019CCE4 D0 E1 00 84 */ stfs f7, 0x84(r1) +/* 8019FD88 0019CCE8 D0 C1 00 88 */ stfs f6, 0x88(r1) +/* 8019FD8C 0019CCEC D0 A1 00 8C */ stfs f5, 0x8c(r1) +/* 8019FD90 0019CCF0 D0 81 00 90 */ stfs f4, 0x90(r1) +/* 8019FD94 0019CCF4 D0 61 00 94 */ stfs f3, 0x94(r1) +/* 8019FD98 0019CCF8 D0 41 00 98 */ stfs f2, 0x98(r1) +/* 8019FD9C 0019CCFC D0 21 00 9C */ stfs f1, 0x9c(r1) +/* 8019FDA0 0019CD00 D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 8019FDA4 0019CD04 48 19 E3 BD */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8019FDA8 0019CD08 A0 01 00 70 */ lhz r0, 0x70(r1) +/* 8019FDAC 0019CD0C 28 1D 00 00 */ cmplwi r29, 0 +/* 8019FDB0 0019CD10 C0 01 00 74 */ lfs f0, 0x74(r1) +/* 8019FDB4 0019CD14 B0 01 00 B4 */ sth r0, 0xb4(r1) +/* 8019FDB8 0019CD18 D0 01 00 B8 */ stfs f0, 0xb8(r1) +/* 8019FDBC 0019CD1C 41 82 00 0C */ beq lbl_8019FDC8 +/* 8019FDC0 0019CD20 7F A3 EB 78 */ mr r3, r29 +/* 8019FDC4 0019CD24 48 19 DD 1D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8019FDC8: +/* 8019FDC8 0019CD28 38 61 00 14 */ addi r3, r1, 0x14 +/* 8019FDCC 0019CD2C 48 19 DD 15 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8019FDD0 0019CD30 7F 23 CB 78 */ mr r3, r25 +/* 8019FDD4 0019CD34 38 81 00 78 */ addi r4, r1, 0x78 +/* 8019FDD8 0019CD38 4B FB 64 59 */ bl sub_80156230 +/* 8019FDDC 0019CD3C 80 17 0B 1C */ lwz r0, 0xb1c(r23) +/* 8019FDE0 0019CD40 7C 7B 02 15 */ add. r3, r27, r0 +/* 8019FDE4 0019CD44 41 82 00 0C */ beq lbl_8019FDF0 +/* 8019FDE8 0019CD48 88 01 00 10 */ lbz r0, 0x10(r1) +/* 8019FDEC 0019CD4C 98 03 00 00 */ stb r0, 0(r3) +lbl_8019FDF0: +/* 8019FDF0 0019CD50 80 77 0B 1C */ lwz r3, 0xb1c(r23) +/* 8019FDF4 0019CD54 28 1C 00 00 */ cmplwi r28, 0 +/* 8019FDF8 0019CD58 38 03 00 01 */ addi r0, r3, 1 +/* 8019FDFC 0019CD5C 90 17 0B 1C */ stw r0, 0xb1c(r23) +/* 8019FE00 0019CD60 41 82 00 0C */ beq lbl_8019FE0C +/* 8019FE04 0019CD64 7F 83 E3 78 */ mr r3, r28 +/* 8019FE08 0019CD68 48 19 DC D9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8019FE0C: +/* 8019FE0C 0019CD6C 3B DE 00 08 */ addi r30, r30, 8 +/* 8019FE10 0019CD70 3B 5A 00 01 */ addi r26, r26, 1 +lbl_8019FE14: +/* 8019FE14 0019CD74 7C 1A C0 00 */ cmpw r26, r24 +/* 8019FE18 0019CD78 41 80 FE C0 */ blt lbl_8019FCD8 +/* 8019FE1C 0019CD7C BA E1 00 CC */ lmw r23, 0xcc(r1) +/* 8019FE20 0019CD80 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 8019FE24 0019CD84 7C 08 03 A6 */ mtlr r0 +/* 8019FE28 0019CD88 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 8019FE2C 0019CD8C 4E 80 00 20 */ blr + +.global sub_8019fe30 +sub_8019fe30: +/* 8019FE30 0019CD90 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 8019FE34 0019CD94 7C 08 02 A6 */ mflr r0 +/* 8019FE38 0019CD98 90 01 01 04 */ stw r0, 0x104(r1) +/* 8019FE3C 0019CD9C BF 21 00 E4 */ stmw r25, 0xe4(r1) +/* 8019FE40 0019CDA0 7C B9 2B 78 */ mr r25, r5 +/* 8019FE44 0019CDA4 7C DA 33 78 */ mr r26, r6 +/* 8019FE48 0019CDA8 7C 9E 23 78 */ mr r30, r4 +/* 8019FE4C 0019CDAC 3B A1 00 7C */ addi r29, r1, 0x7c +/* 8019FE50 0019CDB0 3B 81 00 C0 */ addi r28, r1, 0xc0 +/* 8019FE54 0019CDB4 3B 60 00 00 */ li r27, 0 +/* 8019FE58 0019CDB8 80 63 00 64 */ lwz r3, 0x64(r3) +/* 8019FE5C 0019CDBC 83 E3 00 10 */ lwz r31, 0x10(r3) +/* 8019FE60 0019CDC0 48 00 01 6C */ b lbl_8019FFCC +lbl_8019FE64: +/* 8019FE64 0019CDC4 80 9E 00 00 */ lwz r4, 0(r30) +/* 8019FE68 0019CDC8 38 61 00 40 */ addi r3, r1, 0x40 +/* 8019FE6C 0019CDCC 4B E6 4E 4D */ bl string_l__4rstlFPCc +/* 8019FE70 0019CDD0 7F E4 FB 78 */ mr r4, r31 +/* 8019FE74 0019CDD4 38 61 00 14 */ addi r3, r1, 0x14 +/* 8019FE78 0019CDD8 38 A1 00 40 */ addi r5, r1, 0x40 +/* 8019FE7C 0019CDDC 4B E8 E9 BD */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8019FE80 0019CDE0 88 01 00 14 */ lbz r0, 0x14(r1) +/* 8019FE84 0019CDE4 38 61 00 40 */ addi r3, r1, 0x40 +/* 8019FE88 0019CDE8 98 01 00 1C */ stb r0, 0x1c(r1) +/* 8019FE8C 0019CDEC 48 19 DC 55 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8019FE90 0019CDF0 80 9E 00 04 */ lwz r4, 4(r30) +/* 8019FE94 0019CDF4 38 61 00 30 */ addi r3, r1, 0x30 +/* 8019FE98 0019CDF8 4B E6 4E 21 */ bl string_l__4rstlFPCc +/* 8019FE9C 0019CDFC 7F E4 FB 78 */ mr r4, r31 +/* 8019FEA0 0019CE00 38 61 00 10 */ addi r3, r1, 0x10 +/* 8019FEA4 0019CE04 38 A1 00 30 */ addi r5, r1, 0x30 +/* 8019FEA8 0019CE08 4B E8 E9 91 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8019FEAC 0019CE0C 88 01 00 10 */ lbz r0, 0x10(r1) +/* 8019FEB0 0019CE10 38 61 00 30 */ addi r3, r1, 0x30 +/* 8019FEB4 0019CE14 98 01 00 18 */ stb r0, 0x18(r1) +/* 8019FEB8 0019CE18 48 19 DC 29 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8019FEBC 0019CE1C 88 01 00 1C */ lbz r0, 0x1c(r1) +/* 8019FEC0 0019CE20 28 00 00 FF */ cmplwi r0, 0xff +/* 8019FEC4 0019CE24 41 82 01 00 */ beq lbl_8019FFC4 +/* 8019FEC8 0019CE28 88 01 00 18 */ lbz r0, 0x18(r1) +/* 8019FECC 0019CE2C 28 00 00 FF */ cmplwi r0, 0xff +/* 8019FED0 0019CE30 41 82 00 F4 */ beq lbl_8019FFC4 +/* 8019FED4 0019CE34 80 9E 00 00 */ lwz r4, 0(r30) +/* 8019FED8 0019CE38 38 61 00 20 */ addi r3, r1, 0x20 +/* 8019FEDC 0019CE3C 4B E6 4D DD */ bl string_l__4rstlFPCc +/* 8019FEE0 0019CE40 88 A1 00 18 */ lbz r5, 0x18(r1) +/* 8019FEE4 0019CE44 38 61 00 50 */ addi r3, r1, 0x50 +/* 8019FEE8 0019CE48 88 01 00 1C */ lbz r0, 0x1c(r1) +/* 8019FEEC 0019CE4C 38 81 00 0C */ addi r4, r1, 0xc +/* 8019FEF0 0019CE50 98 A1 00 08 */ stb r5, 8(r1) +/* 8019FEF4 0019CE54 38 A1 00 08 */ addi r5, r1, 8 +/* 8019FEF8 0019CE58 C0 3E 00 08 */ lfs f1, 8(r30) +/* 8019FEFC 0019CE5C 38 E1 00 20 */ addi r7, r1, 0x20 +/* 8019FF00 0019CE60 98 01 00 0C */ stb r0, 0xc(r1) +/* 8019FF04 0019CE64 38 C0 00 01 */ li r6, 1 +/* 8019FF08 0019CE68 C0 5E 00 0C */ lfs f2, 0xc(r30) +/* 8019FF0C 0019CE6C C0 62 A7 84 */ lfs f3, lbl_805AC4A4@sda21(r2) +/* 8019FF10 0019CE70 48 00 88 45 */ bl "SphereSubdivideCollision__26CJointCollisionDescriptionF6CSegId6CSegIdffQ226CJointCollisionDescription16EOrientationTypeRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" +/* 8019FF14 0019CE74 80 E1 00 50 */ lwz r7, 0x50(r1) +/* 8019FF18 0019CE78 7F 83 E3 78 */ mr r3, r28 +/* 8019FF1C 0019CE7C 80 C1 00 54 */ lwz r6, 0x54(r1) +/* 8019FF20 0019CE80 7F A4 EB 78 */ mr r4, r29 +/* 8019FF24 0019CE84 88 A1 00 58 */ lbz r5, 0x58(r1) +/* 8019FF28 0019CE88 88 01 00 59 */ lbz r0, 0x59(r1) +/* 8019FF2C 0019CE8C C0 E1 00 5C */ lfs f7, 0x5c(r1) +/* 8019FF30 0019CE90 C0 C1 00 60 */ lfs f6, 0x60(r1) +/* 8019FF34 0019CE94 C0 A1 00 64 */ lfs f5, 0x64(r1) +/* 8019FF38 0019CE98 C0 81 00 68 */ lfs f4, 0x68(r1) +/* 8019FF3C 0019CE9C C0 61 00 6C */ lfs f3, 0x6c(r1) +/* 8019FF40 0019CEA0 C0 41 00 70 */ lfs f2, 0x70(r1) +/* 8019FF44 0019CEA4 C0 21 00 74 */ lfs f1, 0x74(r1) +/* 8019FF48 0019CEA8 C0 01 00 78 */ lfs f0, 0x78(r1) +/* 8019FF4C 0019CEAC 90 E1 00 94 */ stw r7, 0x94(r1) +/* 8019FF50 0019CEB0 90 C1 00 98 */ stw r6, 0x98(r1) +/* 8019FF54 0019CEB4 98 A1 00 9C */ stb r5, 0x9c(r1) +/* 8019FF58 0019CEB8 98 01 00 9D */ stb r0, 0x9d(r1) +/* 8019FF5C 0019CEBC D0 E1 00 A0 */ stfs f7, 0xa0(r1) +/* 8019FF60 0019CEC0 D0 C1 00 A4 */ stfs f6, 0xa4(r1) +/* 8019FF64 0019CEC4 D0 A1 00 A8 */ stfs f5, 0xa8(r1) +/* 8019FF68 0019CEC8 D0 81 00 AC */ stfs f4, 0xac(r1) +/* 8019FF6C 0019CECC D0 61 00 B0 */ stfs f3, 0xb0(r1) +/* 8019FF70 0019CED0 D0 41 00 B4 */ stfs f2, 0xb4(r1) +/* 8019FF74 0019CED4 D0 21 00 B8 */ stfs f1, 0xb8(r1) +/* 8019FF78 0019CED8 D0 01 00 BC */ stfs f0, 0xbc(r1) +/* 8019FF7C 0019CEDC 48 19 E1 E5 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8019FF80 0019CEE0 A0 01 00 8C */ lhz r0, 0x8c(r1) +/* 8019FF84 0019CEE4 28 1D 00 00 */ cmplwi r29, 0 +/* 8019FF88 0019CEE8 C0 01 00 90 */ lfs f0, 0x90(r1) +/* 8019FF8C 0019CEEC B0 01 00 D0 */ sth r0, 0xd0(r1) +/* 8019FF90 0019CEF0 D0 01 00 D4 */ stfs f0, 0xd4(r1) +/* 8019FF94 0019CEF4 41 82 00 0C */ beq lbl_8019FFA0 +/* 8019FF98 0019CEF8 7F A3 EB 78 */ mr r3, r29 +/* 8019FF9C 0019CEFC 48 19 DB 45 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8019FFA0: +/* 8019FFA0 0019CF00 38 61 00 20 */ addi r3, r1, 0x20 +/* 8019FFA4 0019CF04 48 19 DB 3D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8019FFA8 0019CF08 7F 43 D3 78 */ mr r3, r26 +/* 8019FFAC 0019CF0C 38 81 00 94 */ addi r4, r1, 0x94 +/* 8019FFB0 0019CF10 4B FB 62 81 */ bl sub_80156230 +/* 8019FFB4 0019CF14 28 1C 00 00 */ cmplwi r28, 0 +/* 8019FFB8 0019CF18 41 82 00 0C */ beq lbl_8019FFC4 +/* 8019FFBC 0019CF1C 7F 83 E3 78 */ mr r3, r28 +/* 8019FFC0 0019CF20 48 19 DB 21 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8019FFC4: +/* 8019FFC4 0019CF24 3B DE 00 10 */ addi r30, r30, 0x10 +/* 8019FFC8 0019CF28 3B 7B 00 01 */ addi r27, r27, 1 +lbl_8019FFCC: +/* 8019FFCC 0019CF2C 7C 1B C8 00 */ cmpw r27, r25 +/* 8019FFD0 0019CF30 41 80 FE 94 */ blt lbl_8019FE64 +/* 8019FFD4 0019CF34 BB 21 00 E4 */ lmw r25, 0xe4(r1) +/* 8019FFD8 0019CF38 80 01 01 04 */ lwz r0, 0x104(r1) +/* 8019FFDC 0019CF3C 7C 08 03 A6 */ mtlr r0 +/* 8019FFE0 0019CF40 38 21 01 00 */ addi r1, r1, 0x100 +/* 8019FFE4 0019CF44 4E 80 00 20 */ blr + +.global sub_8019ffe8 +sub_8019ffe8: +/* 8019FFE8 0019CF48 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 8019FFEC 0019CF4C 7C 08 02 A6 */ mflr r0 +/* 8019FFF0 0019CF50 3C A0 80 3D */ lis r5, lbl_803D1360@ha +/* 8019FFF4 0019CF54 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 8019FFF8 0019CF58 38 00 00 00 */ li r0, 0 +/* 8019FFFC 0019CF5C BE E1 00 BC */ stmw r23, 0xbc(r1) +/* 801A0000 0019CF60 7C 7E 1B 78 */ mr r30, r3 +/* 801A0004 0019CF64 7C 9F 23 78 */ mr r31, r4 +/* 801A0008 0019CF68 3A E5 13 60 */ addi r23, r5, lbl_803D1360@l +/* 801A000C 0019CF6C 38 61 00 88 */ addi r3, r1, 0x88 +/* 801A0010 0019CF70 38 80 00 0B */ li r4, 0xb +/* 801A0014 0019CF74 90 01 00 8C */ stw r0, 0x8c(r1) +/* 801A0018 0019CF78 90 01 00 90 */ stw r0, 0x90(r1) +/* 801A001C 0019CF7C 90 01 00 94 */ stw r0, 0x94(r1) +/* 801A0020 0019CF80 4B FB 67 99 */ bl "reserve__Q24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>Fi" +/* 801A0024 0019CF84 7F C3 F3 78 */ mr r3, r30 +/* 801A0028 0019CF88 38 97 00 40 */ addi r4, r23, 0x40 +/* 801A002C 0019CF8C 38 C1 00 88 */ addi r6, r1, 0x88 +/* 801A0030 0019CF90 38 A0 00 07 */ li r5, 7 +/* 801A0034 0019CF94 4B FF FC 69 */ bl sub_8019fc9c +/* 801A0038 0019CF98 7F C3 F3 78 */ mr r3, r30 +/* 801A003C 0019CF9C 38 97 00 00 */ addi r4, r23, 0 +/* 801A0040 0019CFA0 38 C1 00 88 */ addi r6, r1, 0x88 +/* 801A0044 0019CFA4 38 A0 00 02 */ li r5, 2 +/* 801A0048 0019CFA8 4B FF FD E9 */ bl sub_8019fe30 +/* 801A004C 0019CFAC 7F C3 F3 78 */ mr r3, r30 +/* 801A0050 0019CFB0 38 97 00 20 */ addi r4, r23, 0x20 +/* 801A0054 0019CFB4 38 C1 00 88 */ addi r6, r1, 0x88 +/* 801A0058 0019CFB8 38 A0 00 02 */ li r5, 2 +/* 801A005C 0019CFBC 4B FF FD D5 */ bl sub_8019fe30 +/* 801A0060 0019CFC0 3C 80 80 3D */ lis r4, lbl_803D13D8@ha +/* 801A0064 0019CFC4 38 60 00 18 */ li r3, 0x18 +/* 801A0068 0019CFC8 38 84 13 D8 */ addi r4, r4, lbl_803D13D8@l +/* 801A006C 0019CFCC 38 A0 00 00 */ li r5, 0 +/* 801A0070 0019CFD0 38 84 00 8C */ addi r4, r4, 0x8c +/* 801A0074 0019CFD4 48 17 57 F9 */ bl __nw__FUlPCcPCc +/* 801A0078 0019CFD8 7C 77 1B 79 */ or. r23, r3, r3 +/* 801A007C 0019CFDC 41 82 00 38 */ beq lbl_801A00B4 +/* 801A0080 0019CFE0 81 3E 00 04 */ lwz r9, 4(r30) +/* 801A0084 0019CFE4 7F E4 FB 78 */ mr r4, r31 +/* 801A0088 0019CFE8 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801A008C 0019CFEC 38 C1 00 1C */ addi r6, r1, 0x1c +/* 801A0090 0019CFF0 91 21 00 1C */ stw r9, 0x1c(r1) +/* 801A0094 0019CFF4 38 E1 00 88 */ addi r7, r1, 0x88 +/* 801A0098 0019CFF8 39 00 00 01 */ li r8, 1 +/* 801A009C 0019CFFC A0 1E 00 08 */ lhz r0, 8(r30) +/* 801A00A0 0019D000 91 21 00 18 */ stw r9, 0x18(r1) +/* 801A00A4 0019D004 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801A00A8 0019D008 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801A00AC 0019D00C 48 00 78 85 */ bl "__ct__22CCollisionActorManagerFR13CStateManager9TUniqueId7TAreaIdRCQ24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>b" +/* 801A00B0 0019D010 7C 77 1B 78 */ mr r23, r3 +lbl_801A00B4: +/* 801A00B4 0019D014 80 7E 0A 2C */ lwz r3, 0xa2c(r30) +/* 801A00B8 0019D018 38 80 00 01 */ li r4, 1 +/* 801A00BC 0019D01C 48 00 78 21 */ bl sub_801a78dc +/* 801A00C0 0019D020 92 FE 0A 2C */ stw r23, 0xa2c(r30) +/* 801A00C4 0019D024 7F E4 FB 78 */ mr r4, r31 +/* 801A00C8 0019D028 88 1E 00 30 */ lbz r0, 0x30(r30) +/* 801A00CC 0019D02C 80 7E 0A 2C */ lwz r3, 0xa2c(r30) +/* 801A00D0 0019D030 54 05 CF FE */ rlwinm r5, r0, 0x19, 0x1f, 0x1f +/* 801A00D4 0019D034 48 00 72 25 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb +/* 801A00D8 0019D038 38 00 00 00 */ li r0, 0 +/* 801A00DC 0019D03C 80 AD 90 0C */ lwz r5, lbl_805A7BCC@sda21(r13) +/* 801A00E0 0019D040 90 01 00 34 */ stw r0, 0x34(r1) +/* 801A00E4 0019D044 38 60 00 00 */ li r3, 0 +/* 801A00E8 0019D048 38 80 00 01 */ li r4, 1 +/* 801A00EC 0019D04C 90 01 00 30 */ stw r0, 0x30(r1) +/* 801A00F0 0019D050 48 1E 9E 05 */ bl __shl2i +/* 801A00F4 0019D054 80 01 00 30 */ lwz r0, 0x30(r1) +/* 801A00F8 0019D058 38 A1 00 30 */ addi r5, r1, 0x30 +/* 801A00FC 0019D05C 80 C1 00 34 */ lwz r6, 0x34(r1) +/* 801A0100 0019D060 7C 00 1B 78 */ or r0, r0, r3 +/* 801A0104 0019D064 7C C3 23 78 */ or r3, r6, r4 +/* 801A0108 0019D068 90 01 00 30 */ stw r0, 0x30(r1) +/* 801A010C 0019D06C 7F E4 FB 78 */ mr r4, r31 +/* 801A0110 0019D070 90 61 00 34 */ stw r3, 0x34(r1) +/* 801A0114 0019D074 80 7E 0A 2C */ lwz r3, 0xa2c(r30) +/* 801A0118 0019D078 48 00 71 39 */ bl AddMaterial__22CCollisionActorManagerFR13CStateManagerRC13CMaterialList +/* 801A011C 0019D07C 80 BE 0B 04 */ lwz r5, 0xb04(r30) +/* 801A0120 0019D080 3B 5E 0B 08 */ addi r26, r30, 0xb08 +/* 801A0124 0019D084 38 60 00 00 */ li r3, 0 +/* 801A0128 0019D088 2C 05 00 00 */ cmpwi r5, 0 +/* 801A012C 0019D08C 40 81 00 40 */ ble lbl_801A016C +/* 801A0130 0019D090 2C 05 00 08 */ cmpwi r5, 8 +/* 801A0134 0019D094 38 85 FF F8 */ addi r4, r5, -8 +/* 801A0138 0019D098 40 81 00 20 */ ble lbl_801A0158 +/* 801A013C 0019D09C 38 04 00 07 */ addi r0, r4, 7 +/* 801A0140 0019D0A0 54 00 E8 FE */ srwi r0, r0, 3 +/* 801A0144 0019D0A4 7C 09 03 A6 */ mtctr r0 +/* 801A0148 0019D0A8 2C 04 00 00 */ cmpwi r4, 0 +/* 801A014C 0019D0AC 40 81 00 0C */ ble lbl_801A0158 +lbl_801A0150: +/* 801A0150 0019D0B0 38 63 00 08 */ addi r3, r3, 8 +/* 801A0154 0019D0B4 42 00 FF FC */ bdnz lbl_801A0150 +lbl_801A0158: +/* 801A0158 0019D0B8 7C 03 28 50 */ subf r0, r3, r5 +/* 801A015C 0019D0BC 7C 09 03 A6 */ mtctr r0 +/* 801A0160 0019D0C0 7C 03 28 00 */ cmpw r3, r5 +/* 801A0164 0019D0C4 40 80 00 08 */ bge lbl_801A016C +lbl_801A0168: +/* 801A0168 0019D0C8 42 00 00 00 */ bdnz lbl_801A0168 +lbl_801A016C: +/* 801A016C 0019D0CC 38 60 00 00 */ li r3, 0 +/* 801A0170 0019D0D0 3B 7E 0B 00 */ addi r27, r30, 0xb00 +/* 801A0174 0019D0D4 90 7E 0B 04 */ stw r3, 0xb04(r30) +/* 801A0178 0019D0D8 80 BE 0A FC */ lwz r5, 0xafc(r30) +/* 801A017C 0019D0DC 2C 05 00 00 */ cmpwi r5, 0 +/* 801A0180 0019D0E0 40 81 00 40 */ ble lbl_801A01C0 +/* 801A0184 0019D0E4 2C 05 00 08 */ cmpwi r5, 8 +/* 801A0188 0019D0E8 38 85 FF F8 */ addi r4, r5, -8 +/* 801A018C 0019D0EC 40 81 00 20 */ ble lbl_801A01AC +/* 801A0190 0019D0F0 38 04 00 07 */ addi r0, r4, 7 +/* 801A0194 0019D0F4 54 00 E8 FE */ srwi r0, r0, 3 +/* 801A0198 0019D0F8 7C 09 03 A6 */ mtctr r0 +/* 801A019C 0019D0FC 2C 04 00 00 */ cmpwi r4, 0 +/* 801A01A0 0019D100 40 81 00 0C */ ble lbl_801A01AC +lbl_801A01A4: +/* 801A01A4 0019D104 38 63 00 08 */ addi r3, r3, 8 +/* 801A01A8 0019D108 42 00 FF FC */ bdnz lbl_801A01A4 +lbl_801A01AC: +/* 801A01AC 0019D10C 7C 03 28 50 */ subf r0, r3, r5 +/* 801A01B0 0019D110 7C 09 03 A6 */ mtctr r0 +/* 801A01B4 0019D114 7C 03 28 00 */ cmpw r3, r5 +/* 801A01B8 0019D118 40 80 00 08 */ bge lbl_801A01C0 +lbl_801A01BC: +/* 801A01BC 0019D11C 42 00 00 00 */ bdnz lbl_801A01BC +lbl_801A01C0: +/* 801A01C0 0019D120 38 00 00 00 */ li r0, 0 +/* 801A01C4 0019D124 3B 9E 05 EC */ addi r28, r30, 0x5ec +/* 801A01C8 0019D128 90 1E 0A FC */ stw r0, 0xafc(r30) +/* 801A01CC 0019D12C 3B 20 00 00 */ li r25, 0 +/* 801A01D0 0019D130 48 00 01 CC */ b lbl_801A039C +lbl_801A01D4: +/* 801A01D4 0019D134 80 7E 0A 2C */ lwz r3, 0xa2c(r30) +/* 801A01D8 0019D138 7F 24 CB 78 */ mr r4, r25 +/* 801A01DC 0019D13C 48 00 70 5D */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 801A01E0 0019D140 7C 7D 1B 78 */ mr r29, r3 +/* 801A01E4 0019D144 7F E3 FB 78 */ mr r3, r31 +/* 801A01E8 0019D148 A0 1D 00 3C */ lhz r0, 0x3c(r29) +/* 801A01EC 0019D14C 38 81 00 08 */ addi r4, r1, 8 +/* 801A01F0 0019D150 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801A01F4 0019D154 B0 01 00 08 */ sth r0, 8(r1) +/* 801A01F8 0019D158 4B EA C3 7D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801A01FC 0019D15C 7C 64 1B 78 */ mr r4, r3 +/* 801A0200 0019D160 38 61 00 28 */ addi r3, r1, 0x28 +/* 801A0204 0019D164 4B F0 F1 49 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801A0208 0019D168 83 03 00 04 */ lwz r24, 4(r3) +/* 801A020C 0019D16C 28 18 00 00 */ cmplwi r24, 0 +/* 801A0210 0019D170 41 82 01 88 */ beq lbl_801A0398 +/* 801A0214 0019D174 3C 80 80 57 */ lis r4, lbl_8056D718@ha +/* 801A0218 0019D178 7F 03 C3 78 */ mr r3, r24 +/* 801A021C 0019D17C 38 84 D7 18 */ addi r4, r4, lbl_8056D718@l +/* 801A0220 0019D180 48 00 89 79 */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability +/* 801A0224 0019D184 80 82 A7 40 */ lwz r4, lbl_805AC460@sda21(r2) +/* 801A0228 0019D188 38 61 00 78 */ addi r3, r1, 0x78 +/* 801A022C 0019D18C 4B E6 4A 8D */ bl string_l__4rstlFPCc +/* 801A0230 0019D190 38 7D 00 2C */ addi r3, r29, 0x2c +/* 801A0234 0019D194 38 81 00 78 */ addi r4, r1, 0x78 +/* 801A0238 0019D198 4B EB 23 A9 */ 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" +/* 801A023C 0019D19C 7C 77 1B 78 */ mr r23, r3 +/* 801A0240 0019D1A0 38 61 00 78 */ addi r3, r1, 0x78 +/* 801A0244 0019D1A4 48 19 D8 9D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801A0248 0019D1A8 56 E0 06 3F */ clrlwi. r0, r23, 0x18 +/* 801A024C 0019D1AC 41 82 00 1C */ beq lbl_801A0268 +/* 801A0250 0019D1B0 A0 01 00 14 */ lhz r0, 0x14(r1) +/* 801A0254 0019D1B4 7F 03 C3 78 */ mr r3, r24 +/* 801A0258 0019D1B8 38 9E 09 8C */ addi r4, r30, 0x98c +/* 801A025C 0019D1BC B0 1E 0A F8 */ sth r0, 0xaf8(r30) +/* 801A0260 0019D1C0 48 00 89 39 */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability +/* 801A0264 0019D1C4 48 00 01 34 */ b lbl_801A0398 +lbl_801A0268: +/* 801A0268 0019D1C8 80 82 A7 44 */ lwz r4, lbl_805AC464@sda21(r2) +/* 801A026C 0019D1CC 38 61 00 68 */ addi r3, r1, 0x68 +/* 801A0270 0019D1D0 4B E6 4A 49 */ bl string_l__4rstlFPCc +/* 801A0274 0019D1D4 38 7D 00 2C */ addi r3, r29, 0x2c +/* 801A0278 0019D1D8 38 81 00 68 */ addi r4, r1, 0x68 +/* 801A027C 0019D1DC 4B EB 23 65 */ 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" +/* 801A0280 0019D1E0 7C 77 1B 78 */ mr r23, r3 +/* 801A0284 0019D1E4 38 61 00 68 */ addi r3, r1, 0x68 +/* 801A0288 0019D1E8 48 19 D8 59 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801A028C 0019D1EC 56 E0 06 3F */ clrlwi. r0, r23, 0x18 +/* 801A0290 0019D1F0 41 82 00 18 */ beq lbl_801A02A8 +/* 801A0294 0019D1F4 3C 80 80 57 */ lis r4, lbl_8056D7E8@ha +/* 801A0298 0019D1F8 7F 03 C3 78 */ mr r3, r24 +/* 801A029C 0019D1FC 38 84 D7 E8 */ addi r4, r4, lbl_8056D7E8@l +/* 801A02A0 0019D200 48 00 88 F9 */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability +/* 801A02A4 0019D204 48 00 00 F4 */ b lbl_801A0398 +lbl_801A02A8: +/* 801A02A8 0019D208 80 82 A7 3C */ lwz r4, lbl_805AC45C@sda21(r2) +/* 801A02AC 0019D20C 38 61 00 58 */ addi r3, r1, 0x58 +/* 801A02B0 0019D210 4B E6 4A 09 */ bl string_l__4rstlFPCc +/* 801A02B4 0019D214 38 7D 00 2C */ addi r3, r29, 0x2c +/* 801A02B8 0019D218 38 81 00 58 */ addi r4, r1, 0x58 +/* 801A02BC 0019D21C 4B EB 23 25 */ 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" +/* 801A02C0 0019D220 7C 77 1B 78 */ mr r23, r3 +/* 801A02C4 0019D224 38 61 00 58 */ addi r3, r1, 0x58 +/* 801A02C8 0019D228 48 19 D8 19 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801A02CC 0019D22C 56 E0 06 3F */ clrlwi. r0, r23, 0x18 +/* 801A02D0 0019D230 41 82 00 18 */ beq lbl_801A02E8 +/* 801A02D4 0019D234 A0 61 00 14 */ lhz r3, 0x14(r1) +/* 801A02D8 0019D238 38 00 00 00 */ li r0, 0 +/* 801A02DC 0019D23C B0 7E 0A F6 */ sth r3, 0xaf6(r30) +/* 801A02E0 0019D240 90 18 03 00 */ stw r0, 0x300(r24) +/* 801A02E4 0019D244 48 00 00 B4 */ b lbl_801A0398 +lbl_801A02E8: +/* 801A02E8 0019D248 80 82 A7 48 */ lwz r4, lbl_805AC468@sda21(r2) +/* 801A02EC 0019D24C 38 61 00 48 */ addi r3, r1, 0x48 +/* 801A02F0 0019D250 4B E6 49 C9 */ bl string_l__4rstlFPCc +/* 801A02F4 0019D254 38 7D 00 2C */ addi r3, r29, 0x2c +/* 801A02F8 0019D258 38 81 00 48 */ addi r4, r1, 0x48 +/* 801A02FC 0019D25C 4B EB 22 E5 */ 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" +/* 801A0300 0019D260 7C 77 1B 78 */ mr r23, r3 +/* 801A0304 0019D264 38 61 00 48 */ addi r3, r1, 0x48 +/* 801A0308 0019D268 48 19 D7 D9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801A030C 0019D26C 56 E0 06 3F */ clrlwi. r0, r23, 0x18 +/* 801A0310 0019D270 40 82 00 30 */ bne lbl_801A0340 +/* 801A0314 0019D274 80 82 A7 4C */ lwz r4, lbl_805AC46C@sda21(r2) +/* 801A0318 0019D278 38 61 00 38 */ addi r3, r1, 0x38 +/* 801A031C 0019D27C 4B E6 49 9D */ bl string_l__4rstlFPCc +/* 801A0320 0019D280 38 7D 00 2C */ addi r3, r29, 0x2c +/* 801A0324 0019D284 38 81 00 38 */ addi r4, r1, 0x38 +/* 801A0328 0019D288 4B EB 22 B9 */ 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" +/* 801A032C 0019D28C 7C 7D 1B 78 */ mr r29, r3 +/* 801A0330 0019D290 38 61 00 38 */ addi r3, r1, 0x38 +/* 801A0334 0019D294 48 19 D7 AD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801A0338 0019D298 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 801A033C 0019D29C 41 82 00 2C */ beq lbl_801A0368 +lbl_801A0340: +/* 801A0340 0019D2A0 80 1E 0A FC */ lwz r0, 0xafc(r30) +/* 801A0344 0019D2A4 54 00 08 3C */ slwi r0, r0, 1 +/* 801A0348 0019D2A8 7C 7B 02 15 */ add. r3, r27, r0 +/* 801A034C 0019D2AC 41 82 00 0C */ beq lbl_801A0358 +/* 801A0350 0019D2B0 A0 01 00 14 */ lhz r0, 0x14(r1) +/* 801A0354 0019D2B4 B0 03 00 00 */ sth r0, 0(r3) +lbl_801A0358: +/* 801A0358 0019D2B8 80 7E 0A FC */ lwz r3, 0xafc(r30) +/* 801A035C 0019D2BC 38 03 00 01 */ addi r0, r3, 1 +/* 801A0360 0019D2C0 90 1E 0A FC */ stw r0, 0xafc(r30) +/* 801A0364 0019D2C4 48 00 00 34 */ b lbl_801A0398 +lbl_801A0368: +/* 801A0368 0019D2C8 80 1E 0B 04 */ lwz r0, 0xb04(r30) +/* 801A036C 0019D2CC 54 00 08 3C */ slwi r0, r0, 1 +/* 801A0370 0019D2D0 7C 7A 02 15 */ add. r3, r26, r0 +/* 801A0374 0019D2D4 41 82 00 0C */ beq lbl_801A0380 +/* 801A0378 0019D2D8 A0 01 00 14 */ lhz r0, 0x14(r1) +/* 801A037C 0019D2DC B0 03 00 00 */ sth r0, 0(r3) +lbl_801A0380: +/* 801A0380 0019D2E0 80 BE 0B 04 */ lwz r5, 0xb04(r30) +/* 801A0384 0019D2E4 7F 03 C3 78 */ mr r3, r24 +/* 801A0388 0019D2E8 7F 84 E3 78 */ mr r4, r28 +/* 801A038C 0019D2EC 38 05 00 01 */ addi r0, r5, 1 +/* 801A0390 0019D2F0 90 1E 0B 04 */ stw r0, 0xb04(r30) +/* 801A0394 0019D2F4 48 00 88 05 */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability +lbl_801A0398: +/* 801A0398 0019D2F8 3B 39 00 01 */ addi r25, r25, 1 +lbl_801A039C: +/* 801A039C 0019D2FC 80 7E 0A 2C */ lwz r3, 0xa2c(r30) +/* 801A03A0 0019D300 48 00 6E A9 */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 801A03A4 0019D304 7C 19 18 40 */ cmplw r25, r3 +/* 801A03A8 0019D308 41 80 FE 2C */ blt lbl_801A01D4 +/* 801A03AC 0019D30C 7F C3 F3 78 */ mr r3, r30 +/* 801A03B0 0019D310 7F E4 FB 78 */ mr r4, r31 +/* 801A03B4 0019D314 4B FF F6 55 */ bl sub_8019fa08 +/* 801A03B8 0019D318 80 AD 90 14 */ lwz r5, lbl_805A7BD4@sda21(r13) +/* 801A03BC 0019D31C 38 60 00 00 */ li r3, 0 +/* 801A03C0 0019D320 38 80 00 01 */ li r4, 1 +/* 801A03C4 0019D324 48 1E 9B 31 */ bl __shl2i +/* 801A03C8 0019D328 80 AD 90 18 */ lwz r5, lbl_805A7BD8@sda21(r13) +/* 801A03CC 0019D32C 7C 98 23 78 */ mr r24, r4 +/* 801A03D0 0019D330 7C 77 1B 78 */ mr r23, r3 +/* 801A03D4 0019D334 38 60 00 00 */ li r3, 0 +/* 801A03D8 0019D338 38 80 00 01 */ li r4, 1 +/* 801A03DC 0019D33C 48 1E 9B 19 */ bl __shl2i +/* 801A03E0 0019D340 80 AD 90 1C */ lwz r5, lbl_805A7BDC@sda21(r13) +/* 801A03E4 0019D344 7F 18 23 78 */ or r24, r24, r4 +/* 801A03E8 0019D348 7E F7 1B 78 */ or r23, r23, r3 +/* 801A03EC 0019D34C 38 60 00 00 */ li r3, 0 +/* 801A03F0 0019D350 38 80 00 01 */ li r4, 1 +/* 801A03F4 0019D354 48 1E 9B 01 */ bl __shl2i +/* 801A03F8 0019D358 80 AD 90 10 */ lwz r5, lbl_805A7BD0@sda21(r13) +/* 801A03FC 0019D35C 7F 18 23 78 */ or r24, r24, r4 +/* 801A0400 0019D360 7E F7 1B 78 */ or r23, r23, r3 +/* 801A0404 0019D364 38 60 00 00 */ li r3, 0 +/* 801A0408 0019D368 38 80 00 01 */ li r4, 1 +/* 801A040C 0019D36C 48 1E 9A E9 */ bl __shl2i +/* 801A0410 0019D370 38 00 00 03 */ li r0, 3 +/* 801A0414 0019D374 90 81 00 9C */ stw r4, 0x9c(r1) +/* 801A0418 0019D378 38 81 00 98 */ addi r4, r1, 0x98 +/* 801A041C 0019D37C 90 61 00 98 */ stw r3, 0x98(r1) +/* 801A0420 0019D380 7F C3 F3 78 */ mr r3, r30 +/* 801A0424 0019D384 93 01 00 A4 */ stw r24, 0xa4(r1) +/* 801A0428 0019D388 92 E1 00 A0 */ stw r23, 0xa0(r1) +/* 801A042C 0019D38C 90 01 00 A8 */ stw r0, 0xa8(r1) +/* 801A0430 0019D390 4B EB 34 71 */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter +/* 801A0434 0019D394 7F C3 F3 78 */ mr r3, r30 +/* 801A0438 0019D398 7F E5 FB 78 */ mr r5, r31 +/* 801A043C 0019D39C 38 80 00 12 */ li r4, 0x12 +/* 801A0440 0019D3A0 4B EB 3F 11 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801A0444 0019D3A4 38 00 00 00 */ li r0, 0 +/* 801A0448 0019D3A8 80 AD 90 20 */ lwz r5, lbl_805A7BE0@sda21(r13) +/* 801A044C 0019D3AC 90 01 00 24 */ stw r0, 0x24(r1) +/* 801A0450 0019D3B0 38 60 00 00 */ li r3, 0 +/* 801A0454 0019D3B4 38 80 00 01 */ li r4, 1 +/* 801A0458 0019D3B8 90 01 00 20 */ stw r0, 0x20(r1) +/* 801A045C 0019D3BC 48 1E 9A 99 */ bl __shl2i +/* 801A0460 0019D3C0 80 01 00 20 */ lwz r0, 0x20(r1) +/* 801A0464 0019D3C4 80 C1 00 24 */ lwz r6, 0x24(r1) +/* 801A0468 0019D3C8 7C 00 1B 78 */ or r0, r0, r3 +/* 801A046C 0019D3CC 80 AD 90 24 */ lwz r5, lbl_805A7BE4@sda21(r13) +/* 801A0470 0019D3D0 7C C4 23 78 */ or r4, r6, r4 +/* 801A0474 0019D3D4 90 01 00 20 */ stw r0, 0x20(r1) +/* 801A0478 0019D3D8 38 60 00 00 */ li r3, 0 +/* 801A047C 0019D3DC 90 81 00 24 */ stw r4, 0x24(r1) +/* 801A0480 0019D3E0 38 80 00 01 */ li r4, 1 +/* 801A0484 0019D3E4 48 1E 9A 71 */ bl __shl2i +/* 801A0488 0019D3E8 80 01 00 20 */ lwz r0, 0x20(r1) +/* 801A048C 0019D3EC 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801A0490 0019D3F0 80 C1 00 24 */ lwz r6, 0x24(r1) +/* 801A0494 0019D3F4 7C 00 1B 78 */ or r0, r0, r3 +/* 801A0498 0019D3F8 7C C3 23 78 */ or r3, r6, r4 +/* 801A049C 0019D3FC 90 01 00 20 */ stw r0, 0x20(r1) +/* 801A04A0 0019D400 7F E4 FB 78 */ mr r4, r31 +/* 801A04A4 0019D404 90 61 00 24 */ stw r3, 0x24(r1) +/* 801A04A8 0019D408 80 7E 0A 2C */ lwz r3, 0xa2c(r30) +/* 801A04AC 0019D40C 48 00 6D A5 */ bl AddMaterial__22CCollisionActorManagerFR13CStateManagerRC13CMaterialList +/* 801A04B0 0019D410 38 61 00 88 */ addi r3, r1, 0x88 +/* 801A04B4 0019D414 38 80 FF FF */ li r4, -1 +/* 801A04B8 0019D418 4B FB 5E 75 */ bl sub_8015632c +/* 801A04BC 0019D41C BA E1 00 BC */ lmw r23, 0xbc(r1) +/* 801A04C0 0019D420 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 801A04C4 0019D424 7C 08 03 A6 */ mtlr r0 +/* 801A04C8 0019D428 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 801A04CC 0019D42C 4E 80 00 20 */ blr + +.global sub_801a04d0 +sub_801a04d0: +/* 801A04D0 0019D430 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 801A04D4 0019D434 7C 08 02 A6 */ mflr r0 +/* 801A04D8 0019D438 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 801A04DC 0019D43C 93 E1 00 AC */ stw r31, 0xac(r1) +/* 801A04E0 0019D440 7C BF 2B 78 */ mr r31, r5 +/* 801A04E4 0019D444 93 C1 00 A8 */ stw r30, 0xa8(r1) +/* 801A04E8 0019D448 7C 7E 1B 78 */ mr r30, r3 +/* 801A04EC 0019D44C 7F E3 FB 78 */ mr r3, r31 +/* 801A04F0 0019D450 93 A1 00 A4 */ stw r29, 0xa4(r1) +/* 801A04F4 0019D454 93 81 00 A0 */ stw r28, 0xa0(r1) +/* 801A04F8 0019D458 A0 04 00 00 */ lhz r0, 0(r4) +/* 801A04FC 0019D45C 38 81 00 3C */ addi r4, r1, 0x3c +/* 801A0500 0019D460 B0 01 00 3C */ sth r0, 0x3c(r1) +/* 801A0504 0019D464 4B EA C0 A1 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801A0508 0019D468 7C 64 1B 78 */ mr r4, r3 +/* 801A050C 0019D46C 38 61 00 40 */ addi r3, r1, 0x40 +/* 801A0510 0019D470 4B F0 EE 3D */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801A0514 0019D474 83 A3 00 04 */ lwz r29, 4(r3) +/* 801A0518 0019D478 28 1D 00 00 */ cmplwi r29, 0 +/* 801A051C 0019D47C 41 82 01 CC */ beq lbl_801A06E8 +/* 801A0520 0019D480 7F C3 F3 78 */ mr r3, r30 +/* 801A0524 0019D484 7F E4 FB 78 */ mr r4, r31 +/* 801A0528 0019D488 81 9E 00 00 */ lwz r12, 0(r30) +/* 801A052C 0019D48C 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801A0530 0019D490 7D 89 03 A6 */ mtctr r12 +/* 801A0534 0019D494 4E 80 04 21 */ bctrl +/* 801A0538 0019D498 C0 23 00 00 */ lfs f1, 0(r3) +/* 801A053C 0019D49C C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 801A0540 0019D4A0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801A0544 0019D4A4 40 81 01 A4 */ ble lbl_801A06E8 +/* 801A0548 0019D4A8 88 7E 0B 28 */ lbz r3, 0xb28(r30) +/* 801A054C 0019D4AC 3B 80 00 00 */ li r28, 0 +/* 801A0550 0019D4B0 54 60 F7 FF */ rlwinm. r0, r3, 0x1e, 0x1f, 0x1f +/* 801A0554 0019D4B4 41 82 00 2C */ beq lbl_801A0580 +/* 801A0558 0019D4B8 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f +/* 801A055C 0019D4BC 41 82 00 18 */ beq lbl_801A0574 +/* 801A0560 0019D4C0 7F C3 F3 78 */ mr r3, r30 +/* 801A0564 0019D4C4 7F A4 EB 78 */ mr r4, r29 +/* 801A0568 0019D4C8 4B FF F7 1D */ bl sub_8019fc84 +/* 801A056C 0019D4CC 7C 7C 1B 78 */ mr r28, r3 +/* 801A0570 0019D4D0 48 00 00 10 */ b lbl_801A0580 +lbl_801A0574: +/* 801A0574 0019D4D4 54 60 EF FF */ rlwinm. r0, r3, 0x1d, 0x1f, 0x1f +/* 801A0578 0019D4D8 41 82 00 08 */ beq lbl_801A0580 +/* 801A057C 0019D4DC 3B 80 00 01 */ li r28, 1 +lbl_801A0580: +/* 801A0580 0019D4E0 7F A4 EB 78 */ mr r4, r29 +/* 801A0584 0019D4E4 38 61 00 38 */ addi r3, r1, 0x38 +/* 801A0588 0019D4E8 48 00 86 05 */ bl GetLastTouchedObject__15CCollisionActorCFv +/* 801A058C 0019D4EC 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 801A0590 0019D4F0 A0 81 00 38 */ lhz r4, 0x38(r1) +/* 801A0594 0019D4F4 A0 03 00 08 */ lhz r0, 8(r3) +/* 801A0598 0019D4F8 7C 04 00 40 */ cmplw r4, r0 +/* 801A059C 0019D4FC 40 82 01 4C */ bne lbl_801A06E8 +/* 801A05A0 0019D500 57 80 06 3F */ clrlwi. r0, r28, 0x18 +/* 801A05A4 0019D504 41 82 00 98 */ beq lbl_801A063C +/* 801A05A8 0019D508 80 AD 8F F8 */ lwz r5, lbl_805A7BB8@sda21(r13) +/* 801A05AC 0019D50C 38 60 00 00 */ li r3, 0 +/* 801A05B0 0019D510 38 80 00 01 */ li r4, 1 +/* 801A05B4 0019D514 48 1E 99 41 */ bl __shl2i +/* 801A05B8 0019D518 39 40 00 00 */ li r10, 0 +/* 801A05BC 0019D51C 38 00 00 03 */ li r0, 3 +/* 801A05C0 0019D520 90 81 00 84 */ stw r4, 0x84(r1) +/* 801A05C4 0019D524 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801A05C8 0019D528 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 801A05CC 0019D52C 38 A1 00 2C */ addi r5, r1, 0x2c +/* 801A05D0 0019D530 90 61 00 80 */ stw r3, 0x80(r1) +/* 801A05D4 0019D534 38 81 00 34 */ addi r4, r1, 0x34 +/* 801A05D8 0019D538 7F E3 FB 78 */ mr r3, r31 +/* 801A05DC 0019D53C 38 C1 00 24 */ addi r6, r1, 0x24 +/* 801A05E0 0019D540 91 41 00 8C */ stw r10, 0x8c(r1) +/* 801A05E4 0019D544 38 FE 07 24 */ addi r7, r30, 0x724 +/* 801A05E8 0019D548 39 01 00 80 */ addi r8, r1, 0x80 +/* 801A05EC 0019D54C 91 41 00 88 */ stw r10, 0x88(r1) +/* 801A05F0 0019D550 90 01 00 90 */ stw r0, 0x90(r1) +/* 801A05F4 0019D554 A0 1E 00 08 */ lhz r0, 8(r30) +/* 801A05F8 0019D558 B0 01 00 24 */ sth r0, 0x24(r1) +/* 801A05FC 0019D55C 81 5F 08 4C */ lwz r10, 0x84c(r31) +/* 801A0600 0019D560 B0 01 00 20 */ sth r0, 0x20(r1) +/* 801A0604 0019D564 A1 4A 00 08 */ lhz r10, 8(r10) +/* 801A0608 0019D568 B1 41 00 2C */ sth r10, 0x2c(r1) +/* 801A060C 0019D56C A0 1E 00 08 */ lhz r0, 8(r30) +/* 801A0610 0019D570 B1 41 00 28 */ sth r10, 0x28(r1) +/* 801A0614 0019D574 B0 01 00 30 */ sth r0, 0x30(r1) +/* 801A0618 0019D578 B0 01 00 34 */ sth r0, 0x34(r1) +/* 801A061C 0019D57C 4B EA 9A 85 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +/* 801A0620 0019D580 88 1E 0B 28 */ lbz r0, 0xb28(r30) +/* 801A0624 0019D584 38 60 00 00 */ li r3, 0 +/* 801A0628 0019D588 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801A062C 0019D58C 98 1E 0B 28 */ stb r0, 0xb28(r30) +/* 801A0630 0019D590 C0 1E 04 24 */ lfs f0, 0x424(r30) +/* 801A0634 0019D594 D0 1E 04 20 */ stfs f0, 0x420(r30) +/* 801A0638 0019D598 48 00 00 B0 */ b lbl_801A06E8 +lbl_801A063C: +/* 801A063C 0019D59C C0 3E 04 20 */ lfs f1, 0x420(r30) +/* 801A0640 0019D5A0 C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 801A0644 0019D5A4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801A0648 0019D5A8 4C 40 13 82 */ cror 2, 0, 2 +/* 801A064C 0019D5AC 40 82 00 9C */ bne lbl_801A06E8 +/* 801A0650 0019D5B0 80 AD 8F F8 */ lwz r5, lbl_805A7BB8@sda21(r13) +/* 801A0654 0019D5B4 38 60 00 00 */ li r3, 0 +/* 801A0658 0019D5B8 38 80 00 01 */ li r4, 1 +/* 801A065C 0019D5BC 48 1E 98 99 */ bl __shl2i +/* 801A0660 0019D5C0 38 A0 00 00 */ li r5, 0 +/* 801A0664 0019D5C4 38 00 00 03 */ li r0, 3 +/* 801A0668 0019D5C8 90 81 00 4C */ stw r4, 0x4c(r1) +/* 801A066C 0019D5CC 7F C4 F3 78 */ mr r4, r30 +/* 801A0670 0019D5D0 90 61 00 48 */ stw r3, 0x48(r1) +/* 801A0674 0019D5D4 38 61 00 60 */ addi r3, r1, 0x60 +/* 801A0678 0019D5D8 90 A1 00 54 */ stw r5, 0x54(r1) +/* 801A067C 0019D5DC 90 A1 00 50 */ stw r5, 0x50(r1) +/* 801A0680 0019D5E0 90 01 00 58 */ stw r0, 0x58(r1) +/* 801A0684 0019D5E4 A0 1E 00 08 */ lhz r0, 8(r30) +/* 801A0688 0019D5E8 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801A068C 0019D5EC 80 BF 08 4C */ lwz r5, 0x84c(r31) +/* 801A0690 0019D5F0 B0 01 00 08 */ sth r0, 8(r1) +/* 801A0694 0019D5F4 A0 A5 00 08 */ lhz r5, 8(r5) +/* 801A0698 0019D5F8 B0 A1 00 14 */ sth r5, 0x14(r1) +/* 801A069C 0019D5FC A0 1E 00 08 */ lhz r0, 8(r30) +/* 801A06A0 0019D600 B0 A1 00 10 */ sth r5, 0x10(r1) +/* 801A06A4 0019D604 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 801A06A8 0019D608 81 9E 00 00 */ lwz r12, 0(r30) +/* 801A06AC 0019D60C B0 01 00 18 */ sth r0, 0x18(r1) +/* 801A06B0 0019D610 81 8C 02 B0 */ lwz r12, 0x2b0(r12) +/* 801A06B4 0019D614 7D 89 03 A6 */ mtctr r12 +/* 801A06B8 0019D618 4E 80 04 21 */ bctrl +/* 801A06BC 0019D61C 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801A06C0 0019D620 7F E3 FB 78 */ mr r3, r31 +/* 801A06C4 0019D624 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 801A06C8 0019D628 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801A06CC 0019D62C 38 81 00 1C */ addi r4, r1, 0x1c +/* 801A06D0 0019D630 38 C1 00 0C */ addi r6, r1, 0xc +/* 801A06D4 0019D634 38 E1 00 60 */ addi r7, r1, 0x60 +/* 801A06D8 0019D638 39 01 00 48 */ addi r8, r1, 0x48 +/* 801A06DC 0019D63C 4B EA 99 C5 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +/* 801A06E0 0019D640 C0 1E 04 24 */ lfs f0, 0x424(r30) +/* 801A06E4 0019D644 D0 1E 04 20 */ stfs f0, 0x420(r30) +lbl_801A06E8: +/* 801A06E8 0019D648 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 801A06EC 0019D64C 83 E1 00 AC */ lwz r31, 0xac(r1) +/* 801A06F0 0019D650 83 C1 00 A8 */ lwz r30, 0xa8(r1) +/* 801A06F4 0019D654 83 A1 00 A4 */ lwz r29, 0xa4(r1) +/* 801A06F8 0019D658 83 81 00 A0 */ lwz r28, 0xa0(r1) +/* 801A06FC 0019D65C 7C 08 03 A6 */ mtlr r0 +/* 801A0700 0019D660 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 801A0704 0019D664 4E 80 00 20 */ blr + +.global sub_801a0708 +sub_801a0708: +/* 801A0708 0019D668 94 21 FE 50 */ stwu r1, -0x1b0(r1) +/* 801A070C 0019D66C 7C 08 02 A6 */ mflr r0 +/* 801A0710 0019D670 90 01 01 B4 */ stw r0, 0x1b4(r1) +/* 801A0714 0019D674 DB E1 01 A0 */ stfd f31, 0x1a0(r1) +/* 801A0718 0019D678 F3 E1 01 A8 */ psq_st f31, 424(r1), 0, qr0 +/* 801A071C 0019D67C DB C1 01 90 */ stfd f30, 0x190(r1) +/* 801A0720 0019D680 F3 C1 01 98 */ psq_st f30, 408(r1), 0, qr0 +/* 801A0724 0019D684 DB A1 01 80 */ stfd f29, 0x180(r1) +/* 801A0728 0019D688 F3 A1 01 88 */ psq_st f29, 392(r1), 0, qr0 +/* 801A072C 0019D68C DB 81 01 70 */ stfd f28, 0x170(r1) +/* 801A0730 0019D690 F3 81 01 78 */ psq_st f28, 376(r1), 0, qr0 +/* 801A0734 0019D694 DB 61 01 60 */ stfd f27, 0x160(r1) +/* 801A0738 0019D698 F3 61 01 68 */ psq_st f27, 360(r1), 0, qr0 +/* 801A073C 0019D69C DB 41 01 50 */ stfd f26, 0x150(r1) +/* 801A0740 0019D6A0 F3 41 01 58 */ psq_st f26, 344(r1), 0, qr0 +/* 801A0744 0019D6A4 DB 21 01 40 */ stfd f25, 0x140(r1) +/* 801A0748 0019D6A8 F3 21 01 48 */ psq_st f25, 328(r1), 0, qr0 +/* 801A074C 0019D6AC 93 E1 01 3C */ stw r31, 0x13c(r1) +/* 801A0750 0019D6B0 93 C1 01 38 */ stw r30, 0x138(r1) +/* 801A0754 0019D6B4 93 A1 01 34 */ stw r29, 0x134(r1) +/* 801A0758 0019D6B8 93 81 01 30 */ stw r28, 0x130(r1) +/* 801A075C 0019D6BC 7C 9E 23 78 */ mr r30, r4 +/* 801A0760 0019D6C0 7C 7D 1B 78 */ mr r29, r3 +/* 801A0764 0019D6C4 83 E4 08 4C */ lwz r31, 0x84c(r4) +/* 801A0768 0019D6C8 38 61 00 50 */ addi r3, r1, 0x50 +/* 801A076C 0019D6CC C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 801A0770 0019D6D0 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 801A0774 0019D6D4 C0 7D 00 60 */ lfs f3, 0x60(r29) +/* 801A0778 0019D6D8 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 801A077C 0019D6DC EC 81 00 28 */ fsubs f4, f1, f0 +/* 801A0780 0019D6E0 C0 3D 00 40 */ lfs f1, 0x40(r29) +/* 801A0784 0019D6E4 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801A0788 0019D6E8 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801A078C 0019D6EC EC 01 00 28 */ fsubs f0, f1, f0 +/* 801A0790 0019D6F0 D0 81 00 54 */ stfs f4, 0x54(r1) +/* 801A0794 0019D6F4 D0 41 00 58 */ stfs f2, 0x58(r1) +/* 801A0798 0019D6F8 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 801A079C 0019D6FC 48 17 41 1D */ bl Magnitude__9CVector3fCFv +/* 801A07A0 0019D700 FF C0 08 90 */ fmr f30, f1 +/* 801A07A4 0019D704 C0 42 A7 8C */ lfs f2, lbl_805AC4AC@sda21(r2) +/* 801A07A8 0019D708 C0 22 A7 88 */ lfs f1, lbl_805AC4A8@sda21(r2) +/* 801A07AC 0019D70C C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 801A07B0 0019D710 EF E2 0F BC */ fnmsubs f31, f2, f30, f1 +/* 801A07B4 0019D714 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 801A07B8 0019D718 40 81 02 28 */ ble lbl_801A09E0 +/* 801A07BC 0019D71C 80 1F 02 B0 */ lwz r0, 0x2b0(r31) +/* 801A07C0 0019D720 2C 00 00 02 */ cmpwi r0, 2 +/* 801A07C4 0019D724 40 82 00 0C */ bne lbl_801A07D0 +/* 801A07C8 0019D728 80 1F 02 AC */ lwz r0, 0x2ac(r31) +/* 801A07CC 0019D72C 48 00 00 08 */ b lbl_801A07D4 +lbl_801A07D0: +/* 801A07D0 0019D730 38 00 00 04 */ li r0, 4 +lbl_801A07D4: +/* 801A07D4 0019D734 2C 00 00 01 */ cmpwi r0, 1 +/* 801A07D8 0019D738 41 82 02 08 */ beq lbl_801A09E0 +/* 801A07DC 0019D73C 88 1F 09 C4 */ lbz r0, 0x9c4(r31) +/* 801A07E0 0019D740 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 801A07E4 0019D744 40 82 01 FC */ bne lbl_801A09E0 +/* 801A07E8 0019D748 80 1F 02 F8 */ lwz r0, 0x2f8(r31) +/* 801A07EC 0019D74C 38 60 00 01 */ li r3, 1 +/* 801A07F0 0019D750 2C 00 00 01 */ cmpwi r0, 1 +/* 801A07F4 0019D754 41 82 00 C0 */ beq lbl_801A08B4 +/* 801A07F8 0019D758 80 9E 08 70 */ lwz r4, 0x870(r30) +/* 801A07FC 0019D75C 38 61 00 08 */ addi r3, r1, 8 +/* 801A0800 0019D760 80 A4 00 7C */ lwz r5, 0x7c(r4) +/* 801A0804 0019D764 A3 85 00 08 */ lhz r28, 8(r5) +/* 801A0808 0019D768 4B E6 B3 D1 */ bl GetCurrentCameraId__14CCameraManagerCFv +/* 801A080C 0019D76C A0 01 00 08 */ lhz r0, 8(r1) +/* 801A0810 0019D770 7C 00 E0 40 */ cmplw r0, r28 +/* 801A0814 0019D774 40 82 00 98 */ bne lbl_801A08AC +/* 801A0818 0019D778 C0 3D 00 40 */ lfs f1, 0x40(r29) +/* 801A081C 0019D77C FC 40 F8 90 */ fmr f2, f31 +/* 801A0820 0019D780 C0 7D 00 50 */ lfs f3, 0x50(r29) +/* 801A0824 0019D784 38 61 00 5C */ addi r3, r1, 0x5c +/* 801A0828 0019D788 C0 1D 00 60 */ lfs f0, 0x60(r29) +/* 801A082C 0019D78C 38 81 00 38 */ addi r4, r1, 0x38 +/* 801A0830 0019D790 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 801A0834 0019D794 C0 22 A7 88 */ lfs f1, lbl_805AC4A8@sda21(r2) +/* 801A0838 0019D798 D0 61 00 30 */ stfs f3, 0x30(r1) +/* 801A083C 0019D79C 80 C1 00 2C */ lwz r6, 0x2c(r1) +/* 801A0840 0019D7A0 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801A0844 0019D7A4 80 A1 00 30 */ lwz r5, 0x30(r1) +/* 801A0848 0019D7A8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801A084C 0019D7AC 90 C1 00 38 */ stw r6, 0x38(r1) +/* 801A0850 0019D7B0 C0 62 A7 90 */ lfs f3, lbl_805AC4B0@sda21(r2) +/* 801A0854 0019D7B4 90 A1 00 3C */ stw r5, 0x3c(r1) +/* 801A0858 0019D7B8 90 01 00 40 */ stw r0, 0x40(r1) +/* 801A085C 0019D7BC 4B FB CD 69 */ bl BuildPatternedExplodeShakeData__16CCameraShakeDataFRC9CVector3ffff +/* 801A0860 0019D7C0 80 7E 08 70 */ lwz r3, 0x870(r30) +/* 801A0864 0019D7C4 38 81 00 5C */ addi r4, r1, 0x5c +/* 801A0868 0019D7C8 38 A0 00 01 */ li r5, 1 +/* 801A086C 0019D7CC 4B E6 A1 B5 */ bl AddCameraShaker__14CCameraManagerFRC16CCameraShakeDatab +/* 801A0870 0019D7D0 34 81 00 DC */ addic. r4, r1, 0xdc +/* 801A0874 0019D7D4 41 82 00 10 */ beq lbl_801A0884 +/* 801A0878 0019D7D8 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 801A087C 0019D7DC 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 801A0880 0019D7E0 90 04 00 00 */ stw r0, 0(r4) +lbl_801A0884: +/* 801A0884 0019D7E4 34 81 00 A0 */ addic. r4, r1, 0xa0 +/* 801A0888 0019D7E8 41 82 00 10 */ beq lbl_801A0898 +/* 801A088C 0019D7EC 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 801A0890 0019D7F0 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 801A0894 0019D7F4 90 04 00 00 */ stw r0, 0(r4) +lbl_801A0898: +/* 801A0898 0019D7F8 34 81 00 64 */ addic. r4, r1, 0x64 +/* 801A089C 0019D7FC 41 82 00 10 */ beq lbl_801A08AC +/* 801A08A0 0019D800 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 801A08A4 0019D804 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 801A08A8 0019D808 90 04 00 00 */ stw r0, 0(r4) +lbl_801A08AC: +/* 801A08AC 0019D80C 88 1D 0B 28 */ lbz r0, 0xb28(r29) +/* 801A08B0 0019D810 54 03 EF FE */ rlwinm r3, r0, 0x1d, 0x1f, 0x1f +lbl_801A08B4: +/* 801A08B4 0019D814 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A08B8 0019D818 41 82 01 28 */ beq lbl_801A09E0 +/* 801A08BC 0019D81C 88 1D 0B 28 */ lbz r0, 0xb28(r29) +/* 801A08C0 0019D820 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 801A08C4 0019D824 41 82 00 0C */ beq lbl_801A08D0 +/* 801A08C8 0019D828 C0 62 A7 94 */ lfs f3, lbl_805AC4B4@sda21(r2) +/* 801A08CC 0019D82C 48 00 00 08 */ b lbl_801A08D4 +lbl_801A08D0: +/* 801A08D0 0019D830 C0 62 A7 98 */ lfs f3, lbl_805AC4B8@sda21(r2) +lbl_801A08D4: +/* 801A08D4 0019D834 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 801A08D8 0019D838 C0 1D 09 78 */ lfs f0, 0x978(r29) +/* 801A08DC 0019D83C 38 83 66 F4 */ addi r4, r3, lbl_805A66F4@l +/* 801A08E0 0019D840 C0 44 00 00 */ lfs f2, 0(r4) +/* 801A08E4 0019D844 FC 1E 00 40 */ fcmpo cr0, f30, f0 +/* 801A08E8 0019D848 C0 24 00 04 */ lfs f1, 4(r4) +/* 801A08EC 0019D84C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801A08F0 0019D850 C0 04 00 08 */ lfs f0, 8(r4) +/* 801A08F4 0019D854 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 801A08F8 0019D858 EC 23 00 72 */ fmuls f1, f3, f1 +/* 801A08FC 0019D85C C7 63 66 A0 */ lfsu f27, skZero3f@l(r3) +/* 801A0900 0019D860 EC 03 00 32 */ fmuls f0, f3, f0 +/* 801A0904 0019D864 EF 9F 00 B2 */ fmuls f28, f31, f2 +/* 801A0908 0019D868 EF BF 00 72 */ fmuls f29, f31, f1 +/* 801A090C 0019D86C C3 43 00 04 */ lfs f26, 4(r3) +/* 801A0910 0019D870 EF DF 00 32 */ fmuls f30, f31, f0 +/* 801A0914 0019D874 C3 23 00 08 */ lfs f25, 8(r3) +/* 801A0918 0019D878 40 81 00 7C */ ble lbl_801A0994 +/* 801A091C 0019D87C C0 21 00 50 */ lfs f1, 0x50(r1) +/* 801A0920 0019D880 38 61 00 0C */ addi r3, r1, 0xc +/* 801A0924 0019D884 C0 41 00 54 */ lfs f2, 0x54(r1) +/* 801A0928 0019D888 48 17 38 D9 */ bl __ct__9CVector2fFff +/* 801A092C 0019D88C C0 41 00 0C */ lfs f2, 0xc(r1) +/* 801A0930 0019D890 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 801A0934 0019D894 C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 801A0938 0019D898 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 801A093C 0019D89C D0 21 00 48 */ stfs f1, 0x48(r1) +/* 801A0940 0019D8A0 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 801A0944 0019D8A4 88 1D 0B 28 */ lbz r0, 0xb28(r29) +/* 801A0948 0019D8A8 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 801A094C 0019D8AC 41 82 00 48 */ beq lbl_801A0994 +/* 801A0950 0019D8B0 38 61 00 44 */ addi r3, r1, 0x44 +/* 801A0954 0019D8B4 48 17 3D A5 */ bl CanBeNormalized__9CVector3fCFv +/* 801A0958 0019D8B8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A095C 0019D8BC 41 82 00 38 */ beq lbl_801A0994 +/* 801A0960 0019D8C0 38 61 00 20 */ addi r3, r1, 0x20 +/* 801A0964 0019D8C4 38 81 00 44 */ addi r4, r1, 0x44 +/* 801A0968 0019D8C8 48 17 3E E9 */ bl AsNormalized__9CVector3fCFv +/* 801A096C 0019D8CC C0 62 A7 9C */ lfs f3, lbl_805AC4BC@sda21(r2) +/* 801A0970 0019D8D0 C0 41 00 20 */ lfs f2, 0x20(r1) +/* 801A0974 0019D8D4 C0 21 00 24 */ lfs f1, 0x24(r1) +/* 801A0978 0019D8D8 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 801A097C 0019D8DC EC 43 00 B2 */ fmuls f2, f3, f2 +/* 801A0980 0019D8E0 EC 23 00 72 */ fmuls f1, f3, f1 +/* 801A0984 0019D8E4 EC 03 00 32 */ fmuls f0, f3, f0 +/* 801A0988 0019D8E8 EF 7F 00 B2 */ fmuls f27, f31, f2 +/* 801A098C 0019D8EC EF 5F 00 72 */ fmuls f26, f31, f1 +/* 801A0990 0019D8F0 EF 3F 00 32 */ fmuls f25, f31, f0 +lbl_801A0994: +/* 801A0994 0019D8F4 EC 5C D8 2A */ fadds f2, f28, f27 +/* 801A0998 0019D8F8 C0 7F 00 E8 */ lfs f3, 0xe8(r31) +/* 801A099C 0019D8FC EC 3D D0 2A */ fadds f1, f29, f26 +/* 801A09A0 0019D900 EC 1E C8 2A */ fadds f0, f30, f25 +/* 801A09A4 0019D904 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 801A09A8 0019D908 EC 23 00 72 */ fmuls f1, f3, f1 +/* 801A09AC 0019D90C EC 03 00 32 */ fmuls f0, f3, f0 +/* 801A09B0 0019D910 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801A09B4 0019D914 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801A09B8 0019D918 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801A09BC 0019D91C 4B E7 AB 79 */ bl Identity__10CAxisAngleFv +/* 801A09C0 0019D920 7C 65 1B 78 */ mr r5, r3 +/* 801A09C4 0019D924 7F E3 FB 78 */ mr r3, r31 +/* 801A09C8 0019D928 38 81 00 14 */ addi r4, r1, 0x14 +/* 801A09CC 0019D92C 4B F7 B9 CD */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +/* 801A09D0 0019D930 7F E3 FB 78 */ mr r3, r31 +/* 801A09D4 0019D934 7F C5 F3 78 */ mr r5, r30 +/* 801A09D8 0019D938 38 80 00 02 */ li r4, 2 +/* 801A09DC 0019D93C 48 0E 5A 11 */ bl SetMoveState__7CPlayerFQ27NPlayer20EPlayerMovementStateR13CStateManager +lbl_801A09E0: +/* 801A09E0 0019D940 88 1D 0B 28 */ lbz r0, 0xb28(r29) +/* 801A09E4 0019D944 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 801A09E8 0019D948 41 82 00 1C */ beq lbl_801A0A04 +/* 801A09EC 0019D94C C0 22 A7 A0 */ lfs f1, lbl_805AC4C0@sda21(r2) +/* 801A09F0 0019D950 7F A3 EB 78 */ mr r3, r29 +/* 801A09F4 0019D954 C0 1D 06 DC */ lfs f0, 0x6dc(r29) +/* 801A09F8 0019D958 7F C4 F3 78 */ mr r4, r30 +/* 801A09FC 0019D95C EC 21 00 32 */ fmuls f1, f1, f0 +/* 801A0A00 0019D960 4B FF E1 F1 */ bl sub_8019ebf0 +lbl_801A0A04: +/* 801A0A04 0019D964 E3 E1 01 A8 */ psq_l f31, 424(r1), 0, qr0 +/* 801A0A08 0019D968 CB E1 01 A0 */ lfd f31, 0x1a0(r1) +/* 801A0A0C 0019D96C E3 C1 01 98 */ psq_l f30, 408(r1), 0, qr0 +/* 801A0A10 0019D970 CB C1 01 90 */ lfd f30, 0x190(r1) +/* 801A0A14 0019D974 E3 A1 01 88 */ psq_l f29, 392(r1), 0, qr0 +/* 801A0A18 0019D978 CB A1 01 80 */ lfd f29, 0x180(r1) +/* 801A0A1C 0019D97C E3 81 01 78 */ psq_l f28, 376(r1), 0, qr0 +/* 801A0A20 0019D980 CB 81 01 70 */ lfd f28, 0x170(r1) +/* 801A0A24 0019D984 E3 61 01 68 */ psq_l f27, 360(r1), 0, qr0 +/* 801A0A28 0019D988 CB 61 01 60 */ lfd f27, 0x160(r1) +/* 801A0A2C 0019D98C E3 41 01 58 */ psq_l f26, 344(r1), 0, qr0 +/* 801A0A30 0019D990 CB 41 01 50 */ lfd f26, 0x150(r1) +/* 801A0A34 0019D994 E3 21 01 48 */ psq_l f25, 328(r1), 0, qr0 +/* 801A0A38 0019D998 CB 21 01 40 */ lfd f25, 0x140(r1) +/* 801A0A3C 0019D99C 83 E1 01 3C */ lwz r31, 0x13c(r1) +/* 801A0A40 0019D9A0 83 C1 01 38 */ lwz r30, 0x138(r1) +/* 801A0A44 0019D9A4 83 A1 01 34 */ lwz r29, 0x134(r1) +/* 801A0A48 0019D9A8 80 01 01 B4 */ lwz r0, 0x1b4(r1) +/* 801A0A4C 0019D9AC 83 81 01 30 */ lwz r28, 0x130(r1) +/* 801A0A50 0019D9B0 7C 08 03 A6 */ mtlr r0 +/* 801A0A54 0019D9B4 38 21 01 B0 */ addi r1, r1, 0x1b0 +/* 801A0A58 0019D9B8 4E 80 00 20 */ blr + +.global sub_801a0a5c +sub_801a0a5c: +/* 801A0A5C 0019D9BC 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801A0A60 0019D9C0 7C 08 02 A6 */ mflr r0 +/* 801A0A64 0019D9C4 90 01 00 54 */ stw r0, 0x54(r1) +/* 801A0A68 0019D9C8 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 801A0A6C 0019D9CC F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 801A0A70 0019D9D0 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801A0A74 0019D9D4 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801A0A78 0019D9D8 7C 7E 1B 78 */ mr r30, r3 +/* 801A0A7C 0019D9DC 7C BF 2B 78 */ mr r31, r5 +/* 801A0A80 0019D9E0 C0 63 00 60 */ lfs f3, 0x60(r3) +/* 801A0A84 0019D9E4 7C 85 23 78 */ mr r5, r4 +/* 801A0A88 0019D9E8 C0 43 00 50 */ lfs f2, 0x50(r3) +/* 801A0A8C 0019D9EC C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801A0A90 0019D9F0 C0 22 A7 5C */ lfs f1, lbl_805AC47C@sda21(r2) +/* 801A0A94 0019D9F4 D0 1F 00 00 */ stfs f0, 0(r31) +/* 801A0A98 0019D9F8 D0 5F 00 04 */ stfs f2, 4(r31) +/* 801A0A9C 0019D9FC D0 7F 00 08 */ stfs f3, 8(r31) +/* 801A0AA0 0019DA00 C0 03 09 54 */ lfs f0, 0x954(r3) +/* 801A0AA4 0019DA04 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801A0AA8 0019DA08 4C 40 13 82 */ cror 2, 0, 2 +/* 801A0AAC 0019DA0C 40 82 00 C0 */ bne lbl_801A0B6C +/* 801A0AB0 0019DA10 80 85 08 4C */ lwz r4, 0x84c(r5) +/* 801A0AB4 0019DA14 38 61 00 14 */ addi r3, r1, 0x14 +/* 801A0AB8 0019DA18 81 84 00 00 */ lwz r12, 0(r4) +/* 801A0ABC 0019DA1C 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801A0AC0 0019DA20 7D 89 03 A6 */ mtctr r12 +/* 801A0AC4 0019DA24 4E 80 04 21 */ bctrl +/* 801A0AC8 0019DA28 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 801A0ACC 0019DA2C 38 61 00 20 */ addi r3, r1, 0x20 +/* 801A0AD0 0019DA30 D0 1F 00 00 */ stfs f0, 0(r31) +/* 801A0AD4 0019DA34 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 801A0AD8 0019DA38 D0 1F 00 04 */ stfs f0, 4(r31) +/* 801A0ADC 0019DA3C C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 801A0AE0 0019DA40 D0 1F 00 08 */ stfs f0, 8(r31) +/* 801A0AE4 0019DA44 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 801A0AE8 0019DA48 C0 1F 00 04 */ lfs f0, 4(r31) +/* 801A0AEC 0019DA4C C0 7E 00 60 */ lfs f3, 0x60(r30) +/* 801A0AF0 0019DA50 C0 5F 00 08 */ lfs f2, 8(r31) +/* 801A0AF4 0019DA54 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801A0AF8 0019DA58 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 801A0AFC 0019DA5C C0 1F 00 00 */ lfs f0, 0(r31) +/* 801A0B00 0019DA60 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801A0B04 0019DA64 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801A0B08 0019DA68 D0 81 00 24 */ stfs f4, 0x24(r1) +/* 801A0B0C 0019DA6C D0 41 00 28 */ stfs f2, 0x28(r1) +/* 801A0B10 0019DA70 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801A0B14 0019DA74 48 17 3B E5 */ bl CanBeNormalized__9CVector3fCFv +/* 801A0B18 0019DA78 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A0B1C 0019DA7C 41 82 00 50 */ beq lbl_801A0B6C +/* 801A0B20 0019DA80 C3 FE 02 FC */ lfs f31, 0x2fc(r30) +/* 801A0B24 0019DA84 38 61 00 08 */ addi r3, r1, 8 +/* 801A0B28 0019DA88 38 81 00 20 */ addi r4, r1, 0x20 +/* 801A0B2C 0019DA8C 48 17 3D 25 */ bl AsNormalized__9CVector3fCFv +/* 801A0B30 0019DA90 C0 01 00 08 */ lfs f0, 8(r1) +/* 801A0B34 0019DA94 C0 61 00 0C */ lfs f3, 0xc(r1) +/* 801A0B38 0019DA98 EC 1F 00 32 */ fmuls f0, f31, f0 +/* 801A0B3C 0019DA9C C0 3F 00 00 */ lfs f1, 0(r31) +/* 801A0B40 0019DAA0 C0 41 00 10 */ lfs f2, 0x10(r1) +/* 801A0B44 0019DAA4 EC 7F 00 F2 */ fmuls f3, f31, f3 +/* 801A0B48 0019DAA8 EC 01 00 2A */ fadds f0, f1, f0 +/* 801A0B4C 0019DAAC EC 3F 00 B2 */ fmuls f1, f31, f2 +/* 801A0B50 0019DAB0 D0 1F 00 00 */ stfs f0, 0(r31) +/* 801A0B54 0019DAB4 C0 1F 00 04 */ lfs f0, 4(r31) +/* 801A0B58 0019DAB8 EC 00 18 2A */ fadds f0, f0, f3 +/* 801A0B5C 0019DABC D0 1F 00 04 */ stfs f0, 4(r31) +/* 801A0B60 0019DAC0 C0 1F 00 08 */ lfs f0, 8(r31) +/* 801A0B64 0019DAC4 EC 00 08 2A */ fadds f0, f0, f1 +/* 801A0B68 0019DAC8 D0 1F 00 08 */ stfs f0, 8(r31) +lbl_801A0B6C: +/* 801A0B6C 0019DACC E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 801A0B70 0019DAD0 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801A0B74 0019DAD4 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 801A0B78 0019DAD8 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801A0B7C 0019DADC 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801A0B80 0019DAE0 7C 08 03 A6 */ mtlr r0 +/* 801A0B84 0019DAE4 38 21 00 50 */ addi r1, r1, 0x50 +/* 801A0B88 0019DAE8 4E 80 00 20 */ blr + +.global sub_801a0b8c +sub_801a0b8c: +/* 801A0B8C 0019DAEC 88 03 0B 29 */ lbz r0, 0xb29(r3) +/* 801A0B90 0019DAF0 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 801A0B94 0019DAF4 41 82 00 0C */ beq lbl_801A0BA0 +/* 801A0B98 0019DAF8 C0 62 A7 74 */ lfs f3, lbl_805AC494@sda21(r2) +/* 801A0B9C 0019DAFC 48 00 00 08 */ b lbl_801A0BA4 +lbl_801A0BA0: +/* 801A0BA0 0019DB00 C0 62 A7 60 */ lfs f3, lbl_805AC480@sda21(r2) +lbl_801A0BA4: +/* 801A0BA4 0019DB04 C0 43 09 54 */ lfs f2, 0x954(r3) +/* 801A0BA8 0019DB08 C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 801A0BAC 0019DB0C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801A0BB0 0019DB10 40 81 00 0C */ ble lbl_801A0BBC +/* 801A0BB4 0019DB14 EC 03 10 7C */ fnmsubs f0, f3, f1, f2 +/* 801A0BB8 0019DB18 D0 03 09 54 */ stfs f0, 0x954(r3) +lbl_801A0BBC: +/* 801A0BBC 0019DB1C C0 43 09 60 */ lfs f2, 0x960(r3) +/* 801A0BC0 0019DB20 C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 801A0BC4 0019DB24 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801A0BC8 0019DB28 40 81 00 0C */ ble lbl_801A0BD4 +/* 801A0BCC 0019DB2C EC 02 08 28 */ fsubs f0, f2, f1 +/* 801A0BD0 0019DB30 D0 03 09 60 */ stfs f0, 0x960(r3) +lbl_801A0BD4: +/* 801A0BD4 0019DB34 C0 43 09 7C */ lfs f2, 0x97c(r3) +/* 801A0BD8 0019DB38 C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 801A0BDC 0019DB3C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801A0BE0 0019DB40 40 81 00 0C */ ble lbl_801A0BEC +/* 801A0BE4 0019DB44 EC 02 08 28 */ fsubs f0, f2, f1 +/* 801A0BE8 0019DB48 D0 03 09 7C */ stfs f0, 0x97c(r3) +lbl_801A0BEC: +/* 801A0BEC 0019DB4C C0 43 09 58 */ lfs f2, 0x958(r3) +/* 801A0BF0 0019DB50 C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 801A0BF4 0019DB54 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801A0BF8 0019DB58 40 81 00 0C */ ble lbl_801A0C04 +/* 801A0BFC 0019DB5C EC 02 08 28 */ fsubs f0, f2, f1 +/* 801A0C00 0019DB60 D0 03 09 58 */ stfs f0, 0x958(r3) +lbl_801A0C04: +/* 801A0C04 0019DB64 C0 43 09 68 */ lfs f2, 0x968(r3) +/* 801A0C08 0019DB68 C0 03 07 4C */ lfs f0, 0x74c(r3) +/* 801A0C0C 0019DB6C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801A0C10 0019DB70 4C 80 00 20 */ bgelr +/* 801A0C14 0019DB74 EC 02 08 2A */ fadds f0, f2, f1 +/* 801A0C18 0019DB78 D0 03 09 68 */ stfs f0, 0x968(r3) +/* 801A0C1C 0019DB7C 4E 80 00 20 */ blr + +.global sub_801a0c20 +sub_801a0c20: +/* 801A0C20 0019DB80 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801A0C24 0019DB84 7C 08 02 A6 */ mflr r0 +/* 801A0C28 0019DB88 C0 02 A7 A4 */ lfs f0, lbl_805AC4C4@sda21(r2) +/* 801A0C2C 0019DB8C 90 01 00 54 */ stw r0, 0x54(r1) +/* 801A0C30 0019DB90 38 81 00 14 */ addi r4, r1, 0x14 +/* 801A0C34 0019DB94 C0 22 A7 74 */ lfs f1, lbl_805AC494@sda21(r2) +/* 801A0C38 0019DB98 38 A1 00 08 */ addi r5, r1, 8 +/* 801A0C3C 0019DB9C 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801A0C40 0019DBA0 7C 7F 1B 78 */ mr r31, r3 +/* 801A0C44 0019DBA4 80 C3 00 64 */ lwz r6, 0x64(r3) +/* 801A0C48 0019DBA8 38 61 00 2C */ addi r3, r1, 0x2c +/* 801A0C4C 0019DBAC C0 86 00 04 */ lfs f4, 4(r6) +/* 801A0C50 0019DBB0 C0 A6 00 00 */ lfs f5, 0(r6) +/* 801A0C54 0019DBB4 EC 40 01 32 */ fmuls f2, f0, f4 +/* 801A0C58 0019DBB8 C0 66 00 08 */ lfs f3, 8(r6) +/* 801A0C5C 0019DBBC D0 81 00 24 */ stfs f4, 0x24(r1) +/* 801A0C60 0019DBC0 C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 801A0C64 0019DBC4 D0 5F 09 78 */ stfs f2, 0x978(r31) +/* 801A0C68 0019DBC8 C0 5F 09 78 */ lfs f2, 0x978(r31) +/* 801A0C6C 0019DBCC D0 A1 00 20 */ stfs f5, 0x20(r1) +/* 801A0C70 0019DBD0 FC 80 10 50 */ fneg f4, f2 +/* 801A0C74 0019DBD4 EC 21 00 B2 */ fmuls f1, f1, f2 +/* 801A0C78 0019DBD8 D0 61 00 28 */ stfs f3, 0x28(r1) +/* 801A0C7C 0019DBDC D0 41 00 08 */ stfs f2, 8(r1) +/* 801A0C80 0019DBE0 D0 41 00 0C */ stfs f2, 0xc(r1) +/* 801A0C84 0019DBE4 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 801A0C88 0019DBE8 D0 81 00 14 */ stfs f4, 0x14(r1) +/* 801A0C8C 0019DBEC D0 81 00 18 */ stfs f4, 0x18(r1) +/* 801A0C90 0019DBF0 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801A0C94 0019DBF4 48 19 78 75 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801A0C98 0019DBF8 7F E3 FB 78 */ mr r3, r31 +/* 801A0C9C 0019DBFC 38 81 00 2C */ addi r4, r1, 0x2c +/* 801A0CA0 0019DC00 4B F7 99 B9 */ bl SetBoundingBox__13CPhysicsActorFRC6CAABox +/* 801A0CA4 0019DC04 80 61 00 2C */ lwz r3, 0x2c(r1) +/* 801A0CA8 0019DC08 80 01 00 30 */ lwz r0, 0x30(r1) +/* 801A0CAC 0019DC0C C0 22 A7 7C */ lfs f1, lbl_805AC49C@sda21(r2) +/* 801A0CB0 0019DC10 90 7F 0A 40 */ stw r3, 0xa40(r31) +/* 801A0CB4 0019DC14 90 1F 0A 44 */ stw r0, 0xa44(r31) +/* 801A0CB8 0019DC18 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801A0CBC 0019DC1C 90 1F 0A 48 */ stw r0, 0xa48(r31) +/* 801A0CC0 0019DC20 80 61 00 38 */ lwz r3, 0x38(r1) +/* 801A0CC4 0019DC24 80 01 00 3C */ lwz r0, 0x3c(r1) +/* 801A0CC8 0019DC28 90 7F 0A 4C */ stw r3, 0xa4c(r31) +/* 801A0CCC 0019DC2C 90 1F 0A 50 */ stw r0, 0xa50(r31) +/* 801A0CD0 0019DC30 80 01 00 40 */ lwz r0, 0x40(r1) +/* 801A0CD4 0019DC34 90 1F 0A 54 */ stw r0, 0xa54(r31) +/* 801A0CD8 0019DC38 C0 1F 09 78 */ lfs f0, 0x978(r31) +/* 801A0CDC 0019DC3C D0 1F 08 34 */ stfs f0, 0x834(r31) +/* 801A0CE0 0019DC40 C0 1F 09 78 */ lfs f0, 0x978(r31) +/* 801A0CE4 0019DC44 D0 1F 08 30 */ stfs f0, 0x830(r31) +/* 801A0CE8 0019DC48 D0 3F 08 38 */ stfs f1, 0x838(r31) +/* 801A0CEC 0019DC4C C0 1F 09 78 */ lfs f0, 0x978(r31) +/* 801A0CF0 0019DC50 D0 1F 09 18 */ stfs f0, 0x918(r31) +/* 801A0CF4 0019DC54 C0 1F 09 78 */ lfs f0, 0x978(r31) +/* 801A0CF8 0019DC58 D0 1F 09 14 */ stfs f0, 0x914(r31) +/* 801A0CFC 0019DC5C D0 3F 09 1C */ stfs f1, 0x91c(r31) +/* 801A0D00 0019DC60 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801A0D04 0019DC64 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801A0D08 0019DC68 7C 08 03 A6 */ mtlr r0 +/* 801A0D0C 0019DC6C 38 21 00 50 */ addi r1, r1, 0x50 +/* 801A0D10 0019DC70 4E 80 00 20 */ blr + +.global sub_801a0d14 +sub_801a0d14: +/* 801A0D14 0019DC74 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801A0D18 0019DC78 7C 08 02 A6 */ mflr r0 +/* 801A0D1C 0019DC7C 90 01 00 24 */ stw r0, 0x24(r1) +/* 801A0D20 0019DC80 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801A0D24 0019DC84 7C 9F 23 78 */ mr r31, r4 +/* 801A0D28 0019DC88 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801A0D2C 0019DC8C 7C 7E 1B 78 */ mr r30, r3 +/* 801A0D30 0019DC90 7C A3 2B 78 */ mr r3, r5 +/* 801A0D34 0019DC94 A0 04 0A F6 */ lhz r0, 0xaf6(r4) +/* 801A0D38 0019DC98 38 81 00 08 */ addi r4, r1, 8 +/* 801A0D3C 0019DC9C B0 01 00 08 */ sth r0, 8(r1) +/* 801A0D40 0019DCA0 4B EA B8 65 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801A0D44 0019DCA4 7C 64 1B 78 */ mr r4, r3 +/* 801A0D48 0019DCA8 38 61 00 0C */ addi r3, r1, 0xc +/* 801A0D4C 0019DCAC 4B F0 E6 01 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801A0D50 0019DCB0 80 63 00 04 */ lwz r3, 4(r3) +/* 801A0D54 0019DCB4 28 03 00 00 */ cmplwi r3, 0 +/* 801A0D58 0019DCB8 41 82 00 20 */ beq lbl_801A0D78 +/* 801A0D5C 0019DCBC C0 43 00 60 */ lfs f2, 0x60(r3) +/* 801A0D60 0019DCC0 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801A0D64 0019DCC4 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801A0D68 0019DCC8 D0 1E 00 00 */ stfs f0, 0(r30) +/* 801A0D6C 0019DCCC D0 3E 00 04 */ stfs f1, 4(r30) +/* 801A0D70 0019DCD0 D0 5E 00 08 */ stfs f2, 8(r30) +/* 801A0D74 0019DCD4 48 00 00 1C */ b lbl_801A0D90 +lbl_801A0D78: +/* 801A0D78 0019DCD8 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 801A0D7C 0019DCDC C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 801A0D80 0019DCE0 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801A0D84 0019DCE4 D0 1E 00 00 */ stfs f0, 0(r30) +/* 801A0D88 0019DCE8 D0 3E 00 04 */ stfs f1, 4(r30) +/* 801A0D8C 0019DCEC D0 5E 00 08 */ stfs f2, 8(r30) +lbl_801A0D90: +/* 801A0D90 0019DCF0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801A0D94 0019DCF4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801A0D98 0019DCF8 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801A0D9C 0019DCFC 7C 08 03 A6 */ mtlr r0 +/* 801A0DA0 0019DD00 38 21 00 20 */ addi r1, r1, 0x20 +/* 801A0DA4 0019DD04 4E 80 00 20 */ blr + +.global sub_801a0da8 +sub_801a0da8: +/* 801A0DA8 0019DD08 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 801A0DAC 0019DD0C 7C 08 02 A6 */ mflr r0 +/* 801A0DB0 0019DD10 90 01 00 74 */ stw r0, 0x74(r1) +/* 801A0DB4 0019DD14 DB E1 00 60 */ stfd f31, 0x60(r1) +/* 801A0DB8 0019DD18 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 801A0DBC 0019DD1C 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 801A0DC0 0019DD20 93 C1 00 58 */ stw r30, 0x58(r1) +/* 801A0DC4 0019DD24 93 A1 00 54 */ stw r29, 0x54(r1) +/* 801A0DC8 0019DD28 93 81 00 50 */ stw r28, 0x50(r1) +/* 801A0DCC 0019DD2C 83 C4 00 F0 */ lwz r30, 0xf0(r4) +/* 801A0DD0 0019DD30 7C 9D 23 78 */ mr r29, r4 +/* 801A0DD4 0019DD34 7C 7C 1B 78 */ mr r28, r3 +/* 801A0DD8 0019DD38 3B E0 00 00 */ li r31, 0 +/* 801A0DDC 0019DD3C 2C 1E 00 06 */ cmpwi r30, 6 +/* 801A0DE0 0019DD40 41 82 00 24 */ beq lbl_801A0E04 +/* 801A0DE4 0019DD44 2C 1E 00 03 */ cmpwi r30, 3 +/* 801A0DE8 0019DD48 41 82 00 1C */ beq lbl_801A0E04 +/* 801A0DEC 0019DD4C 88 1D 01 30 */ lbz r0, 0x130(r29) +/* 801A0DF0 0019DD50 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801A0DF4 0019DD54 41 82 00 0C */ beq lbl_801A0E00 +/* 801A0DF8 0019DD58 2C 1E 00 00 */ cmpwi r30, 0 +/* 801A0DFC 0019DD5C 41 82 00 08 */ beq lbl_801A0E04 +lbl_801A0E00: +/* 801A0E00 0019DD60 3B E0 00 01 */ li r31, 1 +lbl_801A0E04: +/* 801A0E04 0019DD64 A0 1D 00 EC */ lhz r0, 0xec(r29) +/* 801A0E08 0019DD68 7C A3 2B 78 */ mr r3, r5 +/* 801A0E0C 0019DD6C 38 81 00 0C */ addi r4, r1, 0xc +/* 801A0E10 0019DD70 B0 01 00 08 */ sth r0, 8(r1) +/* 801A0E14 0019DD74 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801A0E18 0019DD78 4B EA B7 8D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801A0E1C 0019DD7C 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 801A0E20 0019DD80 7C 7F 1B 78 */ mr r31, r3 +/* 801A0E24 0019DD84 41 82 01 58 */ beq lbl_801A0F7C +/* 801A0E28 0019DD88 28 1F 00 00 */ cmplwi r31, 0 +/* 801A0E2C 0019DD8C 41 82 01 50 */ beq lbl_801A0F7C +/* 801A0E30 0019DD90 7F E4 FB 78 */ mr r4, r31 +/* 801A0E34 0019DD94 38 61 00 10 */ addi r3, r1, 0x10 +/* 801A0E38 0019DD98 4B F0 47 05 */ bl sub_800a553c +/* 801A0E3C 0019DD9C 4B F0 46 D5 */ bl "CastTo<12CIceSheegoth>__10CPatternedFP7CEntity" +/* 801A0E40 0019DDA0 28 03 00 00 */ cmplwi r3, 0 +/* 801A0E44 0019DDA4 40 82 01 38 */ bne lbl_801A0F7C +/* 801A0E48 0019DDA8 80 7D 00 04 */ lwz r3, 4(r29) +/* 801A0E4C 0019DDAC 80 1C 00 04 */ lwz r0, 4(r28) +/* 801A0E50 0019DDB0 7C 03 00 00 */ cmpw r3, r0 +/* 801A0E54 0019DDB4 40 82 01 28 */ bne lbl_801A0F7C +/* 801A0E58 0019DDB8 38 61 00 28 */ addi r3, r1, 0x28 +/* 801A0E5C 0019DDBC 38 9C 00 34 */ addi r4, r28, 0x34 +/* 801A0E60 0019DDC0 38 BC 05 74 */ addi r5, r28, 0x574 +/* 801A0E64 0019DDC4 48 17 1C 1D */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 801A0E68 0019DDC8 C0 7C 00 40 */ lfs f3, 0x40(r28) +/* 801A0E6C 0019DDCC 2C 1E 00 02 */ cmpwi r30, 2 +/* 801A0E70 0019DDD0 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 801A0E74 0019DDD4 C0 5C 00 50 */ lfs f2, 0x50(r28) +/* 801A0E78 0019DDD8 C0 21 00 2C */ lfs f1, 0x2c(r1) +/* 801A0E7C 0019DDDC EC 83 00 2A */ fadds f4, f3, f0 +/* 801A0E80 0019DDE0 C0 FD 00 50 */ lfs f7, 0x50(r29) +/* 801A0E84 0019DDE4 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 801A0E88 0019DDE8 EC 62 08 2A */ fadds f3, f2, f1 +/* 801A0E8C 0019DDEC C1 1D 00 40 */ lfs f8, 0x40(r29) +/* 801A0E90 0019DDF0 C0 5F 00 40 */ lfs f2, 0x40(r31) +/* 801A0E94 0019DDF4 EC A7 00 28 */ fsubs f5, f7, f0 +/* 801A0E98 0019DDF8 C0 3D 00 60 */ lfs f1, 0x60(r29) +/* 801A0E9C 0019DDFC C0 1F 00 60 */ lfs f0, 0x60(r31) +/* 801A0EA0 0019DE00 EC C8 10 28 */ fsubs f6, f8, f2 +/* 801A0EA4 0019DE04 EC 41 00 28 */ fsubs f2, f1, f0 +/* 801A0EA8 0019DE08 40 82 00 38 */ bne lbl_801A0EE0 +/* 801A0EAC 0019DE0C 88 7D 01 30 */ lbz r3, 0x130(r29) +/* 801A0EB0 0019DE10 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f +/* 801A0EB4 0019DE14 40 82 00 2C */ bne lbl_801A0EE0 +/* 801A0EB8 0019DE18 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f +/* 801A0EBC 0019DE1C 40 82 00 24 */ bne lbl_801A0EE0 +/* 801A0EC0 0019DE20 EC 25 01 72 */ fmuls f1, f5, f5 +/* 801A0EC4 0019DE24 C0 02 A7 A8 */ lfs f0, lbl_805AC4C8@sda21(r2) +/* 801A0EC8 0019DE28 EC 26 09 BA */ fmadds f1, f6, f6, f1 +/* 801A0ECC 0019DE2C EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 801A0ED0 0019DE30 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801A0ED4 0019DE34 40 80 00 0C */ bge lbl_801A0EE0 +/* 801A0ED8 0019DE38 38 60 00 00 */ li r3, 0 +/* 801A0EDC 0019DE3C 48 00 00 A4 */ b lbl_801A0F80 +lbl_801A0EE0: +/* 801A0EE0 0019DE40 EC 28 20 28 */ fsubs f1, f8, f4 +/* 801A0EE4 0019DE44 38 61 00 14 */ addi r3, r1, 0x14 +/* 801A0EE8 0019DE48 EC 47 18 28 */ fsubs f2, f7, f3 +/* 801A0EEC 0019DE4C 48 17 33 15 */ bl __ct__9CVector2fFff +/* 801A0EF0 0019DE50 C0 61 00 14 */ lfs f3, 0x14(r1) +/* 801A0EF4 0019DE54 38 61 00 34 */ addi r3, r1, 0x34 +/* 801A0EF8 0019DE58 C0 41 00 18 */ lfs f2, 0x18(r1) +/* 801A0EFC 0019DE5C 38 81 00 40 */ addi r4, r1, 0x40 +/* 801A0F00 0019DE60 C0 22 A7 5C */ lfs f1, lbl_805AC47C@sda21(r2) +/* 801A0F04 0019DE64 C0 BC 00 58 */ lfs f5, 0x58(r28) +/* 801A0F08 0019DE68 C0 9C 00 48 */ lfs f4, 0x48(r28) +/* 801A0F0C 0019DE6C C0 1C 00 38 */ lfs f0, 0x38(r28) +/* 801A0F10 0019DE70 D0 61 00 40 */ stfs f3, 0x40(r1) +/* 801A0F14 0019DE74 C3 FC 05 70 */ lfs f31, 0x570(r28) +/* 801A0F18 0019DE78 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 801A0F1C 0019DE7C D0 21 00 48 */ stfs f1, 0x48(r1) +/* 801A0F20 0019DE80 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801A0F24 0019DE84 D0 81 00 38 */ stfs f4, 0x38(r1) +/* 801A0F28 0019DE88 D0 A1 00 3C */ stfs f5, 0x3c(r1) +/* 801A0F2C 0019DE8C 48 17 37 05 */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f +/* 801A0F30 0019DE90 FC 01 F8 40 */ fcmpo cr0, f1, f31 +/* 801A0F34 0019DE94 41 80 00 40 */ blt lbl_801A0F74 +/* 801A0F38 0019DE98 C0 41 00 34 */ lfs f2, 0x34(r1) +/* 801A0F3C 0019DE9C 38 61 00 1C */ addi r3, r1, 0x1c +/* 801A0F40 0019DEA0 C0 21 00 38 */ lfs f1, 0x38(r1) +/* 801A0F44 0019DEA4 38 81 00 40 */ addi r4, r1, 0x40 +/* 801A0F48 0019DEA8 C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 801A0F4C 0019DEAC FC 40 10 50 */ fneg f2, f2 +/* 801A0F50 0019DEB0 FC 20 08 50 */ fneg f1, f1 +/* 801A0F54 0019DEB4 C3 FC 05 6C */ lfs f31, 0x56c(r28) +/* 801A0F58 0019DEB8 FC 00 00 50 */ fneg f0, f0 +/* 801A0F5C 0019DEBC D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 801A0F60 0019DEC0 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 801A0F64 0019DEC4 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801A0F68 0019DEC8 48 17 36 C9 */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f +/* 801A0F6C 0019DECC FC 01 F8 40 */ fcmpo cr0, f1, f31 +/* 801A0F70 0019DED0 40 80 00 0C */ bge lbl_801A0F7C +lbl_801A0F74: +/* 801A0F74 0019DED4 38 60 00 01 */ li r3, 1 +/* 801A0F78 0019DED8 48 00 00 08 */ b lbl_801A0F80 +lbl_801A0F7C: +/* 801A0F7C 0019DEDC 38 60 00 00 */ li r3, 0 +lbl_801A0F80: +/* 801A0F80 0019DEE0 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 801A0F84 0019DEE4 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801A0F88 0019DEE8 CB E1 00 60 */ lfd f31, 0x60(r1) +/* 801A0F8C 0019DEEC 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 801A0F90 0019DEF0 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 801A0F94 0019DEF4 83 A1 00 54 */ lwz r29, 0x54(r1) +/* 801A0F98 0019DEF8 83 81 00 50 */ lwz r28, 0x50(r1) +/* 801A0F9C 0019DEFC 7C 08 03 A6 */ mtlr r0 +/* 801A0FA0 0019DF00 38 21 00 70 */ addi r1, r1, 0x70 +/* 801A0FA4 0019DF04 4E 80 00 20 */ blr + +.global sub_801a0fa8 +sub_801a0fa8: +/* 801A0FA8 0019DF08 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801A0FAC 0019DF0C 7C 08 02 A6 */ mflr r0 +/* 801A0FB0 0019DF10 90 01 00 44 */ stw r0, 0x44(r1) +/* 801A0FB4 0019DF14 DB E1 00 30 */ stfd f31, 0x30(r1) +/* 801A0FB8 0019DF18 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 801A0FBC 0019DF1C BF 61 00 1C */ stmw r27, 0x1c(r1) +/* 801A0FC0 0019DF20 7C 7B 1B 78 */ mr r27, r3 +/* 801A0FC4 0019DF24 7C DE 33 78 */ mr r30, r6 +/* 801A0FC8 0019DF28 C0 26 00 04 */ lfs f1, 4(r6) +/* 801A0FCC 0019DF2C 7C BD 2B 78 */ mr r29, r5 +/* 801A0FD0 0019DF30 C0 03 00 50 */ lfs f0, 0x50(r3) +/* 801A0FD4 0019DF34 7C 9C 23 78 */ mr r28, r4 +/* 801A0FD8 0019DF38 C0 66 00 00 */ lfs f3, 0(r6) +/* 801A0FDC 0019DF3C 3B FD 00 04 */ addi r31, r29, 4 +/* 801A0FE0 0019DF40 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801A0FE4 0019DF44 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801A0FE8 0019DF48 C0 46 00 08 */ lfs f2, 8(r6) +/* 801A0FEC 0019DF4C EC 63 00 28 */ fsubs f3, f3, f0 +/* 801A0FF0 0019DF50 C0 23 00 60 */ lfs f1, 0x60(r3) +/* 801A0FF4 0019DF54 EC 04 01 32 */ fmuls f0, f4, f4 +/* 801A0FF8 0019DF58 EC 22 08 28 */ fsubs f1, f2, f1 +/* 801A0FFC 0019DF5C EC 03 00 FA */ fmadds f0, f3, f3, f0 +/* 801A1000 0019DF60 EF E1 00 7A */ fmadds f31, f1, f1, f0 +/* 801A1004 0019DF64 48 00 00 84 */ b lbl_801A1088 +lbl_801A1008: +/* 801A1008 0019DF68 A0 1F 00 00 */ lhz r0, 0(r31) +/* 801A100C 0019DF6C 7F 83 E3 78 */ mr r3, r28 +/* 801A1010 0019DF70 38 81 00 08 */ addi r4, r1, 8 +/* 801A1014 0019DF74 B0 01 00 08 */ sth r0, 8(r1) +/* 801A1018 0019DF78 4B EA B5 8D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801A101C 0019DF7C 7C 64 1B 78 */ mr r4, r3 +/* 801A1020 0019DF80 38 61 00 0C */ addi r3, r1, 0xc +/* 801A1024 0019DF84 4B F0 45 19 */ bl sub_800a553c +/* 801A1028 0019DF88 4B F0 44 E9 */ bl "CastTo<12CIceSheegoth>__10CPatternedFP7CEntity" +/* 801A102C 0019DF8C 28 03 00 00 */ cmplwi r3, 0 +/* 801A1030 0019DF90 41 82 00 54 */ beq lbl_801A1084 +/* 801A1034 0019DF94 A0 83 00 08 */ lhz r4, 8(r3) +/* 801A1038 0019DF98 A0 1B 00 08 */ lhz r0, 8(r27) +/* 801A103C 0019DF9C 7C 04 00 40 */ cmplw r4, r0 +/* 801A1040 0019DFA0 41 82 00 44 */ beq lbl_801A1084 +/* 801A1044 0019DFA4 C0 3E 00 04 */ lfs f1, 4(r30) +/* 801A1048 0019DFA8 C0 03 00 50 */ lfs f0, 0x50(r3) +/* 801A104C 0019DFAC C0 7E 00 00 */ lfs f3, 0(r30) +/* 801A1050 0019DFB0 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801A1054 0019DFB4 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801A1058 0019DFB8 C0 5E 00 08 */ lfs f2, 8(r30) +/* 801A105C 0019DFBC EC 63 00 28 */ fsubs f3, f3, f0 +/* 801A1060 0019DFC0 C0 23 00 60 */ lfs f1, 0x60(r3) +/* 801A1064 0019DFC4 EC 04 01 32 */ fmuls f0, f4, f4 +/* 801A1068 0019DFC8 EC 22 08 28 */ fsubs f1, f2, f1 +/* 801A106C 0019DFCC EC 03 00 FA */ fmadds f0, f3, f3, f0 +/* 801A1070 0019DFD0 EC 01 00 7A */ fmadds f0, f1, f1, f0 +/* 801A1074 0019DFD4 FC 00 F8 40 */ fcmpo cr0, f0, f31 +/* 801A1078 0019DFD8 40 80 00 0C */ bge lbl_801A1084 +/* 801A107C 0019DFDC 38 60 00 00 */ li r3, 0 +/* 801A1080 0019DFE0 48 00 00 24 */ b lbl_801A10A4 +lbl_801A1084: +/* 801A1084 0019DFE4 3B FF 00 02 */ addi r31, r31, 2 +lbl_801A1088: +/* 801A1088 0019DFE8 80 1D 00 00 */ lwz r0, 0(r29) +/* 801A108C 0019DFEC 54 00 08 3C */ slwi r0, r0, 1 +/* 801A1090 0019DFF0 7C 7D 02 14 */ add r3, r29, r0 +/* 801A1094 0019DFF4 38 03 00 04 */ addi r0, r3, 4 +/* 801A1098 0019DFF8 7C 1F 00 40 */ cmplw r31, r0 +/* 801A109C 0019DFFC 40 82 FF 6C */ bne lbl_801A1008 +/* 801A10A0 0019E000 38 60 00 01 */ li r3, 1 +lbl_801A10A4: +/* 801A10A4 0019E004 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 801A10A8 0019E008 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 801A10AC 0019E00C BB 61 00 1C */ lmw r27, 0x1c(r1) +/* 801A10B0 0019E010 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801A10B4 0019E014 7C 08 03 A6 */ mtlr r0 +/* 801A10B8 0019E018 38 21 00 40 */ addi r1, r1, 0x40 +/* 801A10BC 0019E01C 4E 80 00 20 */ blr + +.global sub_801a10c0 +sub_801a10c0: +/* 801A10C0 0019E020 94 21 ED 40 */ stwu r1, -0x12c0(r1) +/* 801A10C4 0019E024 7C 08 02 A6 */ mflr r0 +/* 801A10C8 0019E028 90 01 12 C4 */ stw r0, 0x12c4(r1) +/* 801A10CC 0019E02C 38 00 12 B8 */ li r0, 0x12b8 +/* 801A10D0 0019E030 DB E1 12 B0 */ stfd f31, 0x12b0(r1) +/* 801A10D4 0019E034 13 E1 00 0E */ psq_stx f31, r1, r0, 0, qr0 +/* 801A10D8 0019E038 38 00 12 A8 */ li r0, 0x12a8 +/* 801A10DC 0019E03C DB C1 12 A0 */ stfd f30, 0x12a0(r1) +/* 801A10E0 0019E040 13 C1 00 0E */ psq_stx f30, r1, r0, 0, qr0 +/* 801A10E4 0019E044 38 00 12 98 */ li r0, 0x1298 +/* 801A10E8 0019E048 DB A1 12 90 */ stfd f29, 0x1290(r1) +/* 801A10EC 0019E04C 13 A1 00 0E */ psq_stx f29, r1, r0, 0, qr0 +/* 801A10F0 0019E050 38 00 12 88 */ li r0, 0x1288 +/* 801A10F4 0019E054 DB 81 12 80 */ stfd f28, 0x1280(r1) +/* 801A10F8 0019E058 13 81 00 0E */ psq_stx f28, r1, r0, 0, qr0 +/* 801A10FC 0019E05C 38 00 12 78 */ li r0, 0x1278 +/* 801A1100 0019E060 DB 61 12 70 */ stfd f27, 0x1270(r1) +/* 801A1104 0019E064 13 61 00 0E */ psq_stx f27, r1, r0, 0, qr0 +/* 801A1108 0019E068 38 00 12 68 */ li r0, 0x1268 +/* 801A110C 0019E06C DB 41 12 60 */ stfd f26, 0x1260(r1) +/* 801A1110 0019E070 13 41 00 0E */ psq_stx f26, r1, r0, 0, qr0 +/* 801A1114 0019E074 BF 41 12 48 */ stmw r26, 0x1248(r1) +/* 801A1118 0019E078 88 03 04 00 */ lbz r0, 0x400(r3) +/* 801A111C 0019E07C 7C 7C 1B 78 */ mr r28, r3 +/* 801A1120 0019E080 7C 9D 23 78 */ mr r29, r4 +/* 801A1124 0019E084 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801A1128 0019E088 41 82 06 10 */ beq lbl_801A1738 +/* 801A112C 0019E08C C0 7C 05 80 */ lfs f3, 0x580(r28) +/* 801A1130 0019E090 38 61 01 C8 */ addi r3, r1, 0x1c8 +/* 801A1134 0019E094 C0 5C 00 60 */ lfs f2, 0x60(r28) +/* 801A1138 0019E098 38 81 00 F8 */ addi r4, r1, 0xf8 +/* 801A113C 0019E09C C0 3C 00 50 */ lfs f1, 0x50(r28) +/* 801A1140 0019E0A0 38 A1 00 EC */ addi r5, r1, 0xec +/* 801A1144 0019E0A4 C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 801A1148 0019E0A8 EF E2 18 2A */ fadds f31, f2, f3 +/* 801A114C 0019E0AC EF C1 18 2A */ fadds f30, f1, f3 +/* 801A1150 0019E0B0 EF A0 18 2A */ fadds f29, f0, f3 +/* 801A1154 0019E0B4 EF 80 18 28 */ fsubs f28, f0, f3 +/* 801A1158 0019E0B8 D3 E1 00 F4 */ stfs f31, 0xf4(r1) +/* 801A115C 0019E0BC EF 61 18 28 */ fsubs f27, f1, f3 +/* 801A1160 0019E0C0 EF 42 18 28 */ fsubs f26, f2, f3 +/* 801A1164 0019E0C4 D3 A1 00 EC */ stfs f29, 0xec(r1) +/* 801A1168 0019E0C8 D3 C1 00 F0 */ stfs f30, 0xf0(r1) +/* 801A116C 0019E0CC D3 81 00 F8 */ stfs f28, 0xf8(r1) +/* 801A1170 0019E0D0 D3 61 00 FC */ stfs f27, 0xfc(r1) +/* 801A1174 0019E0D4 D3 41 01 00 */ stfs f26, 0x100(r1) +/* 801A1178 0019E0D8 48 19 73 91 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801A117C 0019E0DC 80 AD 90 04 */ lwz r5, lbl_805A7BC4@sda21(r13) +/* 801A1180 0019E0E0 38 60 00 00 */ li r3, 0 +/* 801A1184 0019E0E4 38 80 00 01 */ li r4, 1 +/* 801A1188 0019E0E8 48 1E 8D 6D */ bl __shl2i +/* 801A118C 0019E0EC 38 00 00 00 */ li r0, 0 +/* 801A1190 0019E0F0 39 00 00 01 */ li r8, 1 +/* 801A1194 0019E0F4 90 81 01 B4 */ stw r4, 0x1b4(r1) +/* 801A1198 0019E0F8 38 81 0A 44 */ addi r4, r1, 0xa44 +/* 801A119C 0019E0FC 38 A1 01 C8 */ addi r5, r1, 0x1c8 +/* 801A11A0 0019E100 38 C1 01 B0 */ addi r6, r1, 0x1b0 +/* 801A11A4 0019E104 90 61 01 B0 */ stw r3, 0x1b0(r1) +/* 801A11A8 0019E108 7F A3 EB 78 */ mr r3, r29 +/* 801A11AC 0019E10C 38 E0 00 00 */ li r7, 0 +/* 801A11B0 0019E110 91 01 01 78 */ stw r8, 0x178(r1) +/* 801A11B4 0019E114 90 01 01 BC */ stw r0, 0x1bc(r1) +/* 801A11B8 0019E118 90 01 01 B8 */ stw r0, 0x1b8(r1) +/* 801A11BC 0019E11C 91 01 01 C0 */ stw r8, 0x1c0(r1) +/* 801A11C0 0019E120 90 01 0A 44 */ stw r0, 0xa44(r1) +/* 801A11C4 0019E124 4B EA B5 5D */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" +/* 801A11C8 0019E128 80 01 0A 44 */ lwz r0, 0xa44(r1) +/* 801A11CC 0019E12C 2C 00 00 00 */ cmpwi r0, 0 +/* 801A11D0 0019E130 41 82 05 14 */ beq lbl_801A16E4 +/* 801A11D4 0019E134 7F 84 E3 78 */ mr r4, r28 +/* 801A11D8 0019E138 7F A5 EB 78 */ mr r5, r29 +/* 801A11DC 0019E13C 38 61 00 E0 */ addi r3, r1, 0xe0 +/* 801A11E0 0019E140 4B FF FB 35 */ bl sub_801a0d14 +/* 801A11E4 0019E144 C0 41 00 E0 */ lfs f2, 0xe0(r1) +/* 801A11E8 0019E148 38 61 01 98 */ addi r3, r1, 0x198 +/* 801A11EC 0019E14C C0 21 00 E4 */ lfs f1, 0xe4(r1) +/* 801A11F0 0019E150 38 81 00 D4 */ addi r4, r1, 0xd4 +/* 801A11F4 0019E154 C0 01 00 E8 */ lfs f0, 0xe8(r1) +/* 801A11F8 0019E158 38 A1 00 C8 */ addi r5, r1, 0xc8 +/* 801A11FC 0019E15C D0 41 01 40 */ stfs f2, 0x140(r1) +/* 801A1200 0019E160 D0 21 01 44 */ stfs f1, 0x144(r1) +/* 801A1204 0019E164 D0 01 01 48 */ stfs f0, 0x148(r1) +/* 801A1208 0019E168 D3 A1 00 C8 */ stfs f29, 0xc8(r1) +/* 801A120C 0019E16C D3 C1 00 CC */ stfs f30, 0xcc(r1) +/* 801A1210 0019E170 D3 E1 00 D0 */ stfs f31, 0xd0(r1) +/* 801A1214 0019E174 D3 81 00 D4 */ stfs f28, 0xd4(r1) +/* 801A1218 0019E178 D3 61 00 D8 */ stfs f27, 0xd8(r1) +/* 801A121C 0019E17C D3 41 00 DC */ stfs f26, 0xdc(r1) +/* 801A1220 0019E180 48 19 72 E9 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801A1224 0019E184 80 AD 90 08 */ lwz r5, lbl_805A7BC8@sda21(r13) +/* 801A1228 0019E188 38 60 00 00 */ li r3, 0 +/* 801A122C 0019E18C 38 80 00 01 */ li r4, 1 +/* 801A1230 0019E190 48 1E 8C C5 */ bl __shl2i +/* 801A1234 0019E194 38 00 00 00 */ li r0, 0 +/* 801A1238 0019E198 39 00 00 01 */ li r8, 1 +/* 801A123C 0019E19C 90 81 01 84 */ stw r4, 0x184(r1) +/* 801A1240 0019E1A0 38 81 02 40 */ addi r4, r1, 0x240 +/* 801A1244 0019E1A4 38 A1 01 98 */ addi r5, r1, 0x198 +/* 801A1248 0019E1A8 38 C1 01 80 */ addi r6, r1, 0x180 +/* 801A124C 0019E1AC 90 61 01 80 */ stw r3, 0x180(r1) +/* 801A1250 0019E1B0 7F A3 EB 78 */ mr r3, r29 +/* 801A1254 0019E1B4 38 E0 00 00 */ li r7, 0 +/* 801A1258 0019E1B8 91 01 01 60 */ stw r8, 0x160(r1) +/* 801A125C 0019E1BC 90 01 01 8C */ stw r0, 0x18c(r1) +/* 801A1260 0019E1C0 90 01 01 88 */ stw r0, 0x188(r1) +/* 801A1264 0019E1C4 91 01 01 90 */ stw r8, 0x190(r1) +/* 801A1268 0019E1C8 90 01 02 40 */ stw r0, 0x240(r1) +/* 801A126C 0019E1CC 4B EA B4 B5 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" +/* 801A1270 0019E1D0 3B E1 0A 48 */ addi r31, r1, 0xa48 +/* 801A1274 0019E1D4 7F FE FB 78 */ mr r30, r31 +/* 801A1278 0019E1D8 48 00 04 04 */ b lbl_801A167C +lbl_801A127C: +/* 801A127C 0019E1DC A0 1E 00 00 */ lhz r0, 0(r30) +/* 801A1280 0019E1E0 7F A3 EB 78 */ mr r3, r29 +/* 801A1284 0019E1E4 38 81 00 08 */ addi r4, r1, 8 +/* 801A1288 0019E1E8 B0 01 00 08 */ sth r0, 8(r1) +/* 801A128C 0019E1EC 4B EA B2 E9 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801A1290 0019E1F0 7C 64 1B 78 */ mr r4, r3 +/* 801A1294 0019E1F4 38 61 00 0C */ addi r3, r1, 0xc +/* 801A1298 0019E1F8 4B F0 C4 75 */ bl "__ct__29TCastToPtr<15CGameProjectile>FP7CEntity" +/* 801A129C 0019E1FC 83 43 00 04 */ lwz r26, 4(r3) +/* 801A12A0 0019E200 28 1A 00 00 */ cmplwi r26, 0 +/* 801A12A4 0019E204 41 82 03 D4 */ beq lbl_801A1678 +/* 801A12A8 0019E208 7F 83 E3 78 */ mr r3, r28 +/* 801A12AC 0019E20C 7F 44 D3 78 */ mr r4, r26 +/* 801A12B0 0019E210 7F A5 EB 78 */ mr r5, r29 +/* 801A12B4 0019E214 4B FF FA F5 */ bl sub_801a0da8 +/* 801A12B8 0019E218 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A12BC 0019E21C 41 82 03 BC */ beq lbl_801A1678 +/* 801A12C0 0019E220 C0 01 01 44 */ lfs f0, 0x144(r1) +/* 801A12C4 0019E224 38 61 00 BC */ addi r3, r1, 0xbc +/* 801A12C8 0019E228 C0 BA 00 50 */ lfs f5, 0x50(r26) +/* 801A12CC 0019E22C C0 21 01 48 */ lfs f1, 0x148(r1) +/* 801A12D0 0019E230 C0 9A 00 60 */ lfs f4, 0x60(r26) +/* 801A12D4 0019E234 EC 40 28 28 */ fsubs f2, f0, f5 +/* 801A12D8 0019E238 C0 7A 00 40 */ lfs f3, 0x40(r26) +/* 801A12DC 0019E23C C0 01 01 40 */ lfs f0, 0x140(r1) +/* 801A12E0 0019E240 EC 21 20 28 */ fsubs f1, f1, f4 +/* 801A12E4 0019E244 D0 41 01 38 */ stfs f2, 0x138(r1) +/* 801A12E8 0019E248 EC 00 18 28 */ fsubs f0, f0, f3 +/* 801A12EC 0019E24C D0 21 01 3C */ stfs f1, 0x13c(r1) +/* 801A12F0 0019E250 D0 01 01 34 */ stfs f0, 0x134(r1) +/* 801A12F4 0019E254 C0 5A 02 9C */ lfs f2, 0x29c(r26) +/* 801A12F8 0019E258 C0 3A 02 A0 */ lfs f1, 0x2a0(r26) +/* 801A12FC 0019E25C C0 1A 02 98 */ lfs f0, 0x298(r26) +/* 801A1300 0019E260 EC 45 10 28 */ fsubs f2, f5, f2 +/* 801A1304 0019E264 EC 24 08 28 */ fsubs f1, f4, f1 +/* 801A1308 0019E268 EC 03 00 28 */ fsubs f0, f3, f0 +/* 801A130C 0019E26C D0 41 00 C0 */ stfs f2, 0xc0(r1) +/* 801A1310 0019E270 D0 01 00 BC */ stfs f0, 0xbc(r1) +/* 801A1314 0019E274 D0 21 00 C4 */ stfs f1, 0xc4(r1) +/* 801A1318 0019E278 48 17 33 E1 */ bl CanBeNormalized__9CVector3fCFv +/* 801A131C 0019E27C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A1320 0019E280 41 82 03 58 */ beq lbl_801A1678 +/* 801A1324 0019E284 C0 5A 00 60 */ lfs f2, 0x60(r26) +/* 801A1328 0019E288 7F 83 E3 78 */ mr r3, r28 +/* 801A132C 0019E28C C0 3A 00 50 */ lfs f1, 0x50(r26) +/* 801A1330 0019E290 7F A4 EB 78 */ mr r4, r29 +/* 801A1334 0019E294 C0 1A 00 40 */ lfs f0, 0x40(r26) +/* 801A1338 0019E298 38 A1 02 40 */ addi r5, r1, 0x240 +/* 801A133C 0019E29C 38 C1 00 B0 */ addi r6, r1, 0xb0 +/* 801A1340 0019E2A0 D0 01 00 B0 */ stfs f0, 0xb0(r1) +/* 801A1344 0019E2A4 D0 21 00 B4 */ stfs f1, 0xb4(r1) +/* 801A1348 0019E2A8 D0 41 00 B8 */ stfs f2, 0xb8(r1) +/* 801A134C 0019E2AC 4B FF FC 5D */ bl sub_801a0fa8 +/* 801A1350 0019E2B0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A1354 0019E2B4 41 82 03 24 */ beq lbl_801A1678 +/* 801A1358 0019E2B8 38 61 01 34 */ addi r3, r1, 0x134 +/* 801A135C 0019E2BC 48 17 35 5D */ bl Magnitude__9CVector3fCFv +/* 801A1360 0019E2C0 C0 9A 00 50 */ lfs f4, 0x50(r26) +/* 801A1364 0019E2C4 FF E0 08 90 */ fmr f31, f1 +/* 801A1368 0019E2C8 C0 1A 02 9C */ lfs f0, 0x29c(r26) +/* 801A136C 0019E2CC 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 801A1370 0019E2D0 C0 7A 00 60 */ lfs f3, 0x60(r26) +/* 801A1374 0019E2D4 38 81 00 98 */ addi r4, r1, 0x98 +/* 801A1378 0019E2D8 C0 5A 02 A0 */ lfs f2, 0x2a0(r26) +/* 801A137C 0019E2DC C0 3A 00 40 */ lfs f1, 0x40(r26) +/* 801A1380 0019E2E0 EC 84 00 28 */ fsubs f4, f4, f0 +/* 801A1384 0019E2E4 C0 1A 02 98 */ lfs f0, 0x298(r26) +/* 801A1388 0019E2E8 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801A138C 0019E2EC EC 01 00 28 */ fsubs f0, f1, f0 +/* 801A1390 0019E2F0 D0 81 00 9C */ stfs f4, 0x9c(r1) +/* 801A1394 0019E2F4 D0 41 00 A0 */ stfs f2, 0xa0(r1) +/* 801A1398 0019E2F8 D0 01 00 98 */ stfs f0, 0x98(r1) +/* 801A139C 0019E2FC 48 17 34 B5 */ bl AsNormalized__9CVector3fCFv +/* 801A13A0 0019E300 C0 02 A7 88 */ lfs f0, lbl_805AC4A8@sda21(r2) +/* 801A13A4 0019E304 3B 7A 01 70 */ addi r27, r26, 0x170 +/* 801A13A8 0019E308 C0 42 A7 AC */ lfs f2, lbl_805AC4CC@sda21(r2) +/* 801A13AC 0019E30C 38 61 00 8C */ addi r3, r1, 0x8c +/* 801A13B0 0019E310 ED 20 07 F2 */ fmuls f9, f0, f31 +/* 801A13B4 0019E314 C0 81 00 A4 */ lfs f4, 0xa4(r1) +/* 801A13B8 0019E318 EC 22 07 F2 */ fmuls f1, f2, f31 +/* 801A13BC 0019E31C C0 61 00 A8 */ lfs f3, 0xa8(r1) +/* 801A13C0 0019E320 C0 01 00 AC */ lfs f0, 0xac(r1) +/* 801A13C4 0019E324 38 81 00 80 */ addi r4, r1, 0x80 +/* 801A13C8 0019E328 EC A9 01 32 */ fmuls f5, f9, f4 +/* 801A13CC 0019E32C C0 DA 00 40 */ lfs f6, 0x40(r26) +/* 801A13D0 0019E330 EC 69 00 F2 */ fmuls f3, f9, f3 +/* 801A13D4 0019E334 C1 1A 00 50 */ lfs f8, 0x50(r26) +/* 801A13D8 0019E338 C0 FA 00 60 */ lfs f7, 0x60(r26) +/* 801A13DC 0019E33C EC 09 00 32 */ fmuls f0, f9, f0 +/* 801A13E0 0019E340 ED 48 18 2A */ fadds f10, f8, f3 +/* 801A13E4 0019E344 C0 61 01 44 */ lfs f3, 0x144(r1) +/* 801A13E8 0019E348 C0 82 A7 5C */ lfs f4, lbl_805AC47C@sda21(r2) +/* 801A13EC 0019E34C ED 27 00 2A */ fadds f9, f7, f0 +/* 801A13F0 0019E350 C0 01 01 40 */ lfs f0, 0x140(r1) +/* 801A13F4 0019E354 EC A6 28 2A */ fadds f5, f6, f5 +/* 801A13F8 0019E358 ED 63 20 2A */ fadds f11, f3, f4 +/* 801A13FC 0019E35C C0 61 01 48 */ lfs f3, 0x148(r1) +/* 801A1400 0019E360 EC 42 00 72 */ fmuls f2, f2, f1 +/* 801A1404 0019E364 D0 A1 01 28 */ stfs f5, 0x128(r1) +/* 801A1408 0019E368 EC 00 20 2A */ fadds f0, f0, f4 +/* 801A140C 0019E36C C0 22 A7 B0 */ lfs f1, lbl_805AC4D0@sda21(r2) +/* 801A1410 0019E370 EC 43 10 2A */ fadds f2, f3, f2 +/* 801A1414 0019E374 D1 41 01 2C */ stfs f10, 0x12c(r1) +/* 801A1418 0019E378 38 A1 01 28 */ addi r5, r1, 0x128 +/* 801A141C 0019E37C 38 C1 01 1C */ addi r6, r1, 0x11c +/* 801A1420 0019E380 D1 21 01 30 */ stfs f9, 0x130(r1) +/* 801A1424 0019E384 38 E1 01 40 */ addi r7, r1, 0x140 +/* 801A1428 0019E388 D0 01 01 1C */ stfs f0, 0x11c(r1) +/* 801A142C 0019E38C D1 61 01 20 */ stfs f11, 0x120(r1) +/* 801A1430 0019E390 D0 41 01 24 */ stfs f2, 0x124(r1) +/* 801A1434 0019E394 D0 C1 00 80 */ stfs f6, 0x80(r1) +/* 801A1438 0019E398 D1 01 00 84 */ stfs f8, 0x84(r1) +/* 801A143C 0019E39C D0 E1 00 88 */ stfs f7, 0x88(r1) +/* 801A1440 0019E3A0 48 17 3A D9 */ bl GetBezierPoint__5CMathFRC9CVector3fRC9CVector3fRC9CVector3fRC9CVector3ff +/* 801A1444 0019E3A4 C0 5A 00 60 */ lfs f2, 0x60(r26) +/* 801A1448 0019E3A8 38 61 00 74 */ addi r3, r1, 0x74 +/* 801A144C 0019E3AC C0 3A 00 50 */ lfs f1, 0x50(r26) +/* 801A1450 0019E3B0 38 81 00 68 */ addi r4, r1, 0x68 +/* 801A1454 0019E3B4 C0 1A 00 40 */ lfs f0, 0x40(r26) +/* 801A1458 0019E3B8 38 A1 01 28 */ addi r5, r1, 0x128 +/* 801A145C 0019E3BC C3 E1 00 8C */ lfs f31, 0x8c(r1) +/* 801A1460 0019E3C0 38 C1 01 1C */ addi r6, r1, 0x11c +/* 801A1464 0019E3C4 D0 01 00 68 */ stfs f0, 0x68(r1) +/* 801A1468 0019E3C8 38 E1 01 40 */ addi r7, r1, 0x140 +/* 801A146C 0019E3CC C3 A1 00 90 */ lfs f29, 0x90(r1) +/* 801A1470 0019E3D0 D0 21 00 6C */ stfs f1, 0x6c(r1) +/* 801A1474 0019E3D4 C3 C1 00 94 */ lfs f30, 0x94(r1) +/* 801A1478 0019E3D8 D0 41 00 70 */ stfs f2, 0x70(r1) +/* 801A147C 0019E3DC C0 22 A7 B4 */ lfs f1, lbl_805AC4D4@sda21(r2) +/* 801A1480 0019E3E0 48 17 3A 99 */ bl GetBezierPoint__5CMathFRC9CVector3fRC9CVector3fRC9CVector3fRC9CVector3ff +/* 801A1484 0019E3E4 C0 C1 00 78 */ lfs f6, 0x78(r1) +/* 801A1488 0019E3E8 38 61 00 44 */ addi r3, r1, 0x44 +/* 801A148C 0019E3EC C0 E1 00 7C */ lfs f7, 0x7c(r1) +/* 801A1490 0019E3F0 C0 A1 00 74 */ lfs f5, 0x74(r1) +/* 801A1494 0019E3F4 EC 06 E8 28 */ fsubs f0, f6, f29 +/* 801A1498 0019E3F8 EC 67 F0 28 */ fsubs f3, f7, f30 +/* 801A149C 0019E3FC C0 41 01 44 */ lfs f2, 0x144(r1) +/* 801A14A0 0019E400 EC 85 F8 28 */ fsubs f4, f5, f31 +/* 801A14A4 0019E404 C0 21 01 48 */ lfs f1, 0x148(r1) +/* 801A14A8 0019E408 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 801A14AC 0019E40C C0 01 01 40 */ lfs f0, 0x140(r1) +/* 801A14B0 0019E410 D0 81 00 44 */ stfs f4, 0x44(r1) +/* 801A14B4 0019E414 EC C2 30 28 */ fsubs f6, f2, f6 +/* 801A14B8 0019E418 EC 81 38 28 */ fsubs f4, f1, f7 +/* 801A14BC 0019E41C D0 61 00 4C */ stfs f3, 0x4c(r1) +/* 801A14C0 0019E420 EC 00 28 28 */ fsubs f0, f0, f5 +/* 801A14C4 0019E424 C0 7A 00 50 */ lfs f3, 0x50(r26) +/* 801A14C8 0019E428 C0 5A 00 60 */ lfs f2, 0x60(r26) +/* 801A14CC 0019E42C C0 3A 00 40 */ lfs f1, 0x40(r26) +/* 801A14D0 0019E430 EC 7D 18 28 */ fsubs f3, f29, f3 +/* 801A14D4 0019E434 EC 5E 10 28 */ fsubs f2, f30, f2 +/* 801A14D8 0019E438 EC 3F 08 28 */ fsubs f1, f31, f1 +/* 801A14DC 0019E43C D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 801A14E0 0019E440 D0 61 00 54 */ stfs f3, 0x54(r1) +/* 801A14E4 0019E444 D0 21 00 50 */ stfs f1, 0x50(r1) +/* 801A14E8 0019E448 D0 41 00 58 */ stfs f2, 0x58(r1) +/* 801A14EC 0019E44C D0 C1 00 60 */ stfs f6, 0x60(r1) +/* 801A14F0 0019E450 D0 81 00 64 */ stfs f4, 0x64(r1) +/* 801A14F4 0019E454 48 17 33 C5 */ bl Magnitude__9CVector3fCFv +/* 801A14F8 0019E458 FF E0 08 90 */ fmr f31, f1 +/* 801A14FC 0019E45C 38 61 00 50 */ addi r3, r1, 0x50 +/* 801A1500 0019E460 48 17 33 B9 */ bl Magnitude__9CVector3fCFv +/* 801A1504 0019E464 EF E1 F8 2A */ fadds f31, f1, f31 +/* 801A1508 0019E468 38 61 00 5C */ addi r3, r1, 0x5c +/* 801A150C 0019E46C 48 17 33 AD */ bl Magnitude__9CVector3fCFv +/* 801A1510 0019E470 C0 9A 00 50 */ lfs f4, 0x50(r26) +/* 801A1514 0019E474 EF 41 F8 2A */ fadds f26, f1, f31 +/* 801A1518 0019E478 C0 1A 02 9C */ lfs f0, 0x29c(r26) +/* 801A151C 0019E47C 38 61 00 38 */ addi r3, r1, 0x38 +/* 801A1520 0019E480 C0 7A 00 60 */ lfs f3, 0x60(r26) +/* 801A1524 0019E484 C0 5A 02 A0 */ lfs f2, 0x2a0(r26) +/* 801A1528 0019E488 EC 84 00 28 */ fsubs f4, f4, f0 +/* 801A152C 0019E48C C0 3A 00 40 */ lfs f1, 0x40(r26) +/* 801A1530 0019E490 C0 1A 02 98 */ lfs f0, 0x298(r26) +/* 801A1534 0019E494 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801A1538 0019E498 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801A153C 0019E49C D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 801A1540 0019E4A0 D0 41 00 40 */ stfs f2, 0x40(r1) +/* 801A1544 0019E4A4 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 801A1548 0019E4A8 48 17 33 71 */ bl Magnitude__9CVector3fCFv +/* 801A154C 0019E4AC EC 21 D0 24 */ fdivs f1, f1, f26 +/* 801A1550 0019E4B0 C0 7A 00 60 */ lfs f3, 0x60(r26) +/* 801A1554 0019E4B4 C0 5A 00 50 */ lfs f2, 0x50(r26) +/* 801A1558 0019E4B8 38 61 00 2C */ addi r3, r1, 0x2c +/* 801A155C 0019E4BC C0 1A 00 40 */ lfs f0, 0x40(r26) +/* 801A1560 0019E4C0 38 81 00 20 */ addi r4, r1, 0x20 +/* 801A1564 0019E4C4 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801A1568 0019E4C8 38 A1 01 28 */ addi r5, r1, 0x128 +/* 801A156C 0019E4CC 38 C1 01 1C */ addi r6, r1, 0x11c +/* 801A1570 0019E4D0 38 E1 01 40 */ addi r7, r1, 0x140 +/* 801A1574 0019E4D4 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 801A1578 0019E4D8 D0 61 00 28 */ stfs f3, 0x28(r1) +/* 801A157C 0019E4DC 48 17 39 9D */ bl GetBezierPoint__5CMathFRC9CVector3fRC9CVector3fRC9CVector3fRC9CVector3ff +/* 801A1580 0019E4E0 C0 21 00 30 */ lfs f1, 0x30(r1) +/* 801A1584 0019E4E4 38 61 01 10 */ addi r3, r1, 0x110 +/* 801A1588 0019E4E8 C0 1A 00 50 */ lfs f0, 0x50(r26) +/* 801A158C 0019E4EC C0 61 00 34 */ lfs f3, 0x34(r1) +/* 801A1590 0019E4F0 C0 5A 00 60 */ lfs f2, 0x60(r26) +/* 801A1594 0019E4F4 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801A1598 0019E4F8 C0 1A 00 40 */ lfs f0, 0x40(r26) +/* 801A159C 0019E4FC C0 21 00 2C */ lfs f1, 0x2c(r1) +/* 801A15A0 0019E500 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801A15A4 0019E504 D0 81 01 14 */ stfs f4, 0x114(r1) +/* 801A15A8 0019E508 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801A15AC 0019E50C D0 41 01 18 */ stfs f2, 0x118(r1) +/* 801A15B0 0019E510 D0 01 01 10 */ stfs f0, 0x110(r1) +/* 801A15B4 0019E514 48 17 31 45 */ bl CanBeNormalized__9CVector3fCFv +/* 801A15B8 0019E518 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A15BC 0019E51C 41 82 00 BC */ beq lbl_801A1678 +/* 801A15C0 0019E520 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801A15C4 0019E524 3C A0 80 5A */ lis r5, lbl_805A66F4@ha +/* 801A15C8 0019E528 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 801A15CC 0019E52C 38 C5 66 F4 */ addi r6, r5, lbl_805A66F4@l +/* 801A15D0 0019E530 38 61 01 E0 */ addi r3, r1, 0x1e0 +/* 801A15D4 0019E534 38 A1 01 10 */ addi r5, r1, 0x110 +/* 801A15D8 0019E538 48 17 25 39 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 801A15DC 0019E53C 38 61 02 10 */ addi r3, r1, 0x210 +/* 801A15E0 0019E540 38 81 01 E0 */ addi r4, r1, 0x1e0 +/* 801A15E4 0019E544 48 17 15 91 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801A15E8 0019E548 38 61 02 10 */ addi r3, r1, 0x210 +/* 801A15EC 0019E54C 48 17 1D B9 */ bl Orthonormalize__12CTransform4fFv +/* 801A15F0 0019E550 7F 63 DB 78 */ mr r3, r27 +/* 801A15F4 0019E554 38 81 02 10 */ addi r4, r1, 0x210 +/* 801A15F8 0019E558 48 10 EE AD */ bl SetWorldSpaceOrientation__17CProjectileWeaponFRC12CTransform4f +/* 801A15FC 0019E55C 7F 63 DB 78 */ mr r3, r27 +/* 801A1600 0019E560 48 10 DB 35 */ bl GetVelocity__17CProjectileWeaponCFv +/* 801A1604 0019E564 7C 64 1B 78 */ mr r4, r3 +/* 801A1608 0019E568 38 61 00 14 */ addi r3, r1, 0x14 +/* 801A160C 0019E56C 48 17 32 45 */ bl AsNormalized__9CVector3fCFv +/* 801A1610 0019E570 C0 62 A7 B8 */ lfs f3, lbl_805AC4D8@sda21(r2) +/* 801A1614 0019E574 7F 63 DB 78 */ mr r3, r27 +/* 801A1618 0019E578 C0 41 00 14 */ lfs f2, 0x14(r1) +/* 801A161C 0019E57C C0 21 00 18 */ lfs f1, 0x18(r1) +/* 801A1620 0019E580 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 801A1624 0019E584 EF A3 00 B2 */ fmuls f29, f3, f2 +/* 801A1628 0019E588 EF C3 00 72 */ fmuls f30, f3, f1 +/* 801A162C 0019E58C EF E3 00 32 */ fmuls f31, f3, f0 +/* 801A1630 0019E590 48 10 DB 05 */ bl GetVelocity__17CProjectileWeaponCFv +/* 801A1634 0019E594 C0 02 A7 58 */ lfs f0, lbl_805AC478@sda21(r2) +/* 801A1638 0019E598 38 81 01 04 */ addi r4, r1, 0x104 +/* 801A163C 0019E59C C0 C3 00 04 */ lfs f6, 4(r3) +/* 801A1640 0019E5A0 EC 9E 00 32 */ fmuls f4, f30, f0 +/* 801A1644 0019E5A4 C0 A2 A7 BC */ lfs f5, lbl_805AC4DC@sda21(r2) +/* 801A1648 0019E5A8 EC 5F 00 32 */ fmuls f2, f31, f0 +/* 801A164C 0019E5AC C0 63 00 08 */ lfs f3, 8(r3) +/* 801A1650 0019E5B0 C0 23 00 00 */ lfs f1, 0(r3) +/* 801A1654 0019E5B4 EC 1D 00 32 */ fmuls f0, f29, f0 +/* 801A1658 0019E5B8 EC 86 21 7A */ fmadds f4, f6, f5, f4 +/* 801A165C 0019E5BC 7F 63 DB 78 */ mr r3, r27 +/* 801A1660 0019E5C0 EC 43 11 7A */ fmadds f2, f3, f5, f2 +/* 801A1664 0019E5C4 EC 01 01 7A */ fmadds f0, f1, f5, f0 +/* 801A1668 0019E5C8 D0 81 01 08 */ stfs f4, 0x108(r1) +/* 801A166C 0019E5CC D0 01 01 04 */ stfs f0, 0x104(r1) +/* 801A1670 0019E5D0 D0 41 01 0C */ stfs f2, 0x10c(r1) +/* 801A1674 0019E5D4 48 10 DA C9 */ bl SetVelocity__17CProjectileWeaponFRC9CVector3f +lbl_801A1678: +/* 801A1678 0019E5D8 3B DE 00 02 */ addi r30, r30, 2 +lbl_801A167C: +/* 801A167C 0019E5DC 80 01 0A 44 */ lwz r0, 0xa44(r1) +/* 801A1680 0019E5E0 54 00 08 3C */ slwi r0, r0, 1 +/* 801A1684 0019E5E4 7C 1F 02 14 */ add r0, r31, r0 +/* 801A1688 0019E5E8 7C 1E 00 40 */ cmplw r30, r0 +/* 801A168C 0019E5EC 40 82 FB F0 */ bne lbl_801A127C +/* 801A1690 0019E5F0 80 A1 02 40 */ lwz r5, 0x240(r1) +/* 801A1694 0019E5F4 38 60 00 00 */ li r3, 0 +/* 801A1698 0019E5F8 2C 05 00 00 */ cmpwi r5, 0 +/* 801A169C 0019E5FC 40 81 00 40 */ ble lbl_801A16DC +/* 801A16A0 0019E600 2C 05 00 08 */ cmpwi r5, 8 +/* 801A16A4 0019E604 38 85 FF F8 */ addi r4, r5, -8 +/* 801A16A8 0019E608 40 81 00 20 */ ble lbl_801A16C8 +/* 801A16AC 0019E60C 38 04 00 07 */ addi r0, r4, 7 +/* 801A16B0 0019E610 54 00 E8 FE */ srwi r0, r0, 3 +/* 801A16B4 0019E614 7C 09 03 A6 */ mtctr r0 +/* 801A16B8 0019E618 2C 04 00 00 */ cmpwi r4, 0 +/* 801A16BC 0019E61C 40 81 00 0C */ ble lbl_801A16C8 +lbl_801A16C0: +/* 801A16C0 0019E620 38 63 00 08 */ addi r3, r3, 8 +/* 801A16C4 0019E624 42 00 FF FC */ bdnz lbl_801A16C0 +lbl_801A16C8: +/* 801A16C8 0019E628 7C 03 28 50 */ subf r0, r3, r5 +/* 801A16CC 0019E62C 7C 09 03 A6 */ mtctr r0 +/* 801A16D0 0019E630 7C 03 28 00 */ cmpw r3, r5 +/* 801A16D4 0019E634 40 80 00 08 */ bge lbl_801A16DC +lbl_801A16D8: +/* 801A16D8 0019E638 42 00 00 00 */ bdnz lbl_801A16D8 +lbl_801A16DC: +/* 801A16DC 0019E63C 38 00 00 00 */ li r0, 0 +/* 801A16E0 0019E640 90 01 02 40 */ stw r0, 0x240(r1) +lbl_801A16E4: +/* 801A16E4 0019E644 80 A1 0A 44 */ lwz r5, 0xa44(r1) +/* 801A16E8 0019E648 38 60 00 00 */ li r3, 0 +/* 801A16EC 0019E64C 2C 05 00 00 */ cmpwi r5, 0 +/* 801A16F0 0019E650 40 81 00 40 */ ble lbl_801A1730 +/* 801A16F4 0019E654 2C 05 00 08 */ cmpwi r5, 8 +/* 801A16F8 0019E658 38 85 FF F8 */ addi r4, r5, -8 +/* 801A16FC 0019E65C 40 81 00 20 */ ble lbl_801A171C +/* 801A1700 0019E660 38 04 00 07 */ addi r0, r4, 7 +/* 801A1704 0019E664 54 00 E8 FE */ srwi r0, r0, 3 +/* 801A1708 0019E668 7C 09 03 A6 */ mtctr r0 +/* 801A170C 0019E66C 2C 04 00 00 */ cmpwi r4, 0 +/* 801A1710 0019E670 40 81 00 0C */ ble lbl_801A171C +lbl_801A1714: +/* 801A1714 0019E674 38 63 00 08 */ addi r3, r3, 8 +/* 801A1718 0019E678 42 00 FF FC */ bdnz lbl_801A1714 +lbl_801A171C: +/* 801A171C 0019E67C 7C 03 28 50 */ subf r0, r3, r5 +/* 801A1720 0019E680 7C 09 03 A6 */ mtctr r0 +/* 801A1724 0019E684 7C 03 28 00 */ cmpw r3, r5 +/* 801A1728 0019E688 40 80 00 08 */ bge lbl_801A1730 +lbl_801A172C: +/* 801A172C 0019E68C 42 00 00 00 */ bdnz lbl_801A172C +lbl_801A1730: +/* 801A1730 0019E690 38 00 00 00 */ li r0, 0 +/* 801A1734 0019E694 90 01 0A 44 */ stw r0, 0xa44(r1) +lbl_801A1738: +/* 801A1738 0019E698 38 00 12 B8 */ li r0, 0x12b8 +/* 801A173C 0019E69C 13 E1 00 0C */ psq_lx f31, r1, r0, 0, qr0 +/* 801A1740 0019E6A0 CB E1 12 B0 */ lfd f31, 0x12b0(r1) +/* 801A1744 0019E6A4 38 00 12 A8 */ li r0, 0x12a8 +/* 801A1748 0019E6A8 13 C1 00 0C */ psq_lx f30, r1, r0, 0, qr0 +/* 801A174C 0019E6AC CB C1 12 A0 */ lfd f30, 0x12a0(r1) +/* 801A1750 0019E6B0 38 00 12 98 */ li r0, 0x1298 +/* 801A1754 0019E6B4 13 A1 00 0C */ psq_lx f29, r1, r0, 0, qr0 +/* 801A1758 0019E6B8 CB A1 12 90 */ lfd f29, 0x1290(r1) +/* 801A175C 0019E6BC 38 00 12 88 */ li r0, 0x1288 +/* 801A1760 0019E6C0 13 81 00 0C */ psq_lx f28, r1, r0, 0, qr0 +/* 801A1764 0019E6C4 CB 81 12 80 */ lfd f28, 0x1280(r1) +/* 801A1768 0019E6C8 38 00 12 78 */ li r0, 0x1278 +/* 801A176C 0019E6CC 13 61 00 0C */ psq_lx f27, r1, r0, 0, qr0 +/* 801A1770 0019E6D0 CB 61 12 70 */ lfd f27, 0x1270(r1) +/* 801A1774 0019E6D4 38 00 12 68 */ li r0, 0x1268 +/* 801A1778 0019E6D8 13 41 00 0C */ psq_lx f26, r1, r0, 0, qr0 +/* 801A177C 0019E6DC CB 41 12 60 */ lfd f26, 0x1260(r1) +/* 801A1780 0019E6E0 BB 41 12 48 */ lmw r26, 0x1248(r1) +/* 801A1784 0019E6E4 80 01 12 C4 */ lwz r0, 0x12c4(r1) +/* 801A1788 0019E6E8 7C 08 03 A6 */ mtlr r0 +/* 801A178C 0019E6EC 38 21 12 C0 */ addi r1, r1, 0x12c0 +/* 801A1790 0019E6F0 4E 80 00 20 */ blr + +.global sub_801a1794 +sub_801a1794: +/* 801A1794 0019E6F4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801A1798 0019E6F8 7C 08 02 A6 */ mflr r0 +/* 801A179C 0019E6FC 90 01 00 14 */ stw r0, 0x14(r1) +/* 801A17A0 0019E700 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801A17A4 0019E704 7C 7F 1B 78 */ mr r31, r3 +/* 801A17A8 0019E708 81 83 00 00 */ lwz r12, 0(r3) +/* 801A17AC 0019E70C 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801A17B0 0019E710 7D 89 03 A6 */ mtctr r12 +/* 801A17B4 0019E714 4E 80 04 21 */ bctrl +/* 801A17B8 0019E718 28 03 00 00 */ cmplwi r3, 0 +/* 801A17BC 0019E71C 41 82 00 24 */ beq lbl_801A17E0 +/* 801A17C0 0019E720 C0 22 A7 C0 */ lfs f1, lbl_805AC4E0@sda21(r2) +/* 801A17C4 0019E724 C0 1F 09 70 */ lfs f0, 0x970(r31) +/* 801A17C8 0019E728 C0 43 00 00 */ lfs f2, 0(r3) +/* 801A17CC 0019E72C EC 01 00 32 */ fmuls f0, f1, f0 +/* 801A17D0 0019E730 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801A17D4 0019E734 7C 00 00 26 */ mfcr r0 +/* 801A17D8 0019E738 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801A17DC 0019E73C 48 00 00 08 */ b lbl_801A17E4 +lbl_801A17E0: +/* 801A17E0 0019E740 38 60 00 00 */ li r3, 0 +lbl_801A17E4: +/* 801A17E4 0019E744 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801A17E8 0019E748 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801A17EC 0019E74C 7C 08 03 A6 */ mtlr r0 +/* 801A17F0 0019E750 38 21 00 10 */ addi r1, r1, 0x10 +/* 801A17F4 0019E754 4E 80 00 20 */ blr + +.global Flinch__12CIceSheegothR13CStateManager9EStateMsgf +Flinch__12CIceSheegothR13CStateManager9EStateMsgf: +/* 801A17F8 0019E758 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801A17FC 0019E75C 7C 08 02 A6 */ mflr r0 +/* 801A1800 0019E760 2C 05 00 01 */ cmpwi r5, 1 +/* 801A1804 0019E764 90 01 00 34 */ stw r0, 0x34(r1) +/* 801A1808 0019E768 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801A180C 0019E76C 7C 9F 23 78 */ mr r31, r4 +/* 801A1810 0019E770 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801A1814 0019E774 7C 7E 1B 78 */ mr r30, r3 +/* 801A1818 0019E778 41 82 00 54 */ beq lbl_801A186C +/* 801A181C 0019E77C 40 80 00 10 */ bge lbl_801A182C +/* 801A1820 0019E780 2C 05 00 00 */ cmpwi r5, 0 +/* 801A1824 0019E784 40 80 00 14 */ bge lbl_801A1838 +/* 801A1828 0019E788 48 00 01 54 */ b lbl_801A197C +lbl_801A182C: +/* 801A182C 0019E78C 2C 05 00 03 */ cmpwi r5, 3 +/* 801A1830 0019E790 40 80 01 4C */ bge lbl_801A197C +/* 801A1834 0019E794 48 00 01 20 */ b lbl_801A1954 +lbl_801A1838: +/* 801A1838 0019E798 38 00 00 00 */ li r0, 0 +/* 801A183C 0019E79C 38 C0 00 01 */ li r6, 1 +/* 801A1840 0019E7A0 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801A1844 0019E7A4 38 A0 00 01 */ li r5, 1 +/* 801A1848 0019E7A8 88 1E 0B 29 */ lbz r0, 0xb29(r30) +/* 801A184C 0019E7AC 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19 +/* 801A1850 0019E7B0 98 1E 0B 29 */ stb r0, 0xb29(r30) +/* 801A1854 0019E7B4 4B FF D1 79 */ bl sub_8019e9cc +/* 801A1858 0019E7B8 7F C3 F3 78 */ mr r3, r30 +/* 801A185C 0019E7BC 7F E4 FB 78 */ mr r4, r31 +/* 801A1860 0019E7C0 38 A0 00 01 */ li r5, 1 +/* 801A1864 0019E7C4 4B FF D0 31 */ bl sub_8019e894 +/* 801A1868 0019E7C8 48 00 01 14 */ b lbl_801A197C +lbl_801A186C: +/* 801A186C 0019E7CC 80 1E 05 68 */ lwz r0, 0x568(r30) +/* 801A1870 0019E7D0 2C 00 00 03 */ cmpwi r0, 3 +/* 801A1874 0019E7D4 41 82 00 C4 */ beq lbl_801A1938 +/* 801A1878 0019E7D8 40 80 01 04 */ bge lbl_801A197C +/* 801A187C 0019E7DC 2C 00 00 00 */ cmpwi r0, 0 +/* 801A1880 0019E7E0 41 82 00 08 */ beq lbl_801A1888 +/* 801A1884 0019E7E4 48 00 00 F8 */ b lbl_801A197C +lbl_801A1888: +/* 801A1888 0019E7E8 80 BE 04 50 */ lwz r5, 0x450(r30) +/* 801A188C 0019E7EC 80 05 02 B8 */ lwz r0, 0x2b8(r5) +/* 801A1890 0019E7F0 2C 00 00 06 */ cmpwi r0, 6 +/* 801A1894 0019E7F4 40 82 00 10 */ bne lbl_801A18A4 +/* 801A1898 0019E7F8 38 00 00 03 */ li r0, 3 +/* 801A189C 0019E7FC 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801A18A0 0019E800 48 00 00 DC */ b lbl_801A197C +lbl_801A18A4: +/* 801A18A4 0019E804 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801A18A8 0019E808 C0 5E 09 80 */ lfs f2, 0x980(r30) +/* 801A18AC 0019E80C 38 83 AA 68 */ addi r4, r3, lbl_803DAA68@l +/* 801A18B0 0019E810 C0 3E 09 84 */ lfs f1, 0x984(r30) +/* 801A18B4 0019E814 C0 1E 09 88 */ lfs f0, 0x988(r30) +/* 801A18B8 0019E818 3C 60 80 3E */ lis r3, lbl_803DAA44@ha +/* 801A18BC 0019E81C 38 C0 00 04 */ li r6, 4 +/* 801A18C0 0019E820 38 00 00 01 */ li r0, 1 +/* 801A18C4 0019E824 3B E5 00 04 */ addi r31, r5, 4 +/* 801A18C8 0019E828 90 81 00 08 */ stw r4, 8(r1) +/* 801A18CC 0019E82C 38 A3 AA 44 */ addi r5, r3, lbl_803DAA44@l +/* 801A18D0 0019E830 38 80 00 04 */ li r4, 4 +/* 801A18D4 0019E834 90 C1 00 0C */ stw r6, 0xc(r1) +/* 801A18D8 0019E838 7F E3 FB 78 */ mr r3, r31 +/* 801A18DC 0019E83C 90 A1 00 08 */ stw r5, 8(r1) +/* 801A18E0 0019E840 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 801A18E4 0019E844 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 801A18E8 0019E848 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801A18EC 0019E84C 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801A18F0 0019E850 4B F8 FB 49 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801A18F4 0019E854 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801A18F8 0019E858 3C 60 80 3E */ lis r3, lbl_803DAA44@ha +/* 801A18FC 0019E85C 38 83 AA 44 */ addi r4, r3, lbl_803DAA44@l +/* 801A1900 0019E860 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801A1904 0019E864 90 1F 00 F8 */ stw r0, 0xf8(r31) +/* 801A1908 0019E868 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801A190C 0019E86C 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 801A1910 0019E870 80 61 00 14 */ lwz r3, 0x14(r1) +/* 801A1914 0019E874 90 BF 00 FC */ stw r5, 0xfc(r31) +/* 801A1918 0019E878 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 801A191C 0019E87C 90 7F 01 00 */ stw r3, 0x100(r31) +/* 801A1920 0019E880 80 61 00 1C */ lwz r3, 0x1c(r1) +/* 801A1924 0019E884 90 BF 01 04 */ stw r5, 0x104(r31) +/* 801A1928 0019E888 90 81 00 08 */ stw r4, 8(r1) +/* 801A192C 0019E88C 90 7F 01 08 */ stw r3, 0x108(r31) +/* 801A1930 0019E890 90 01 00 08 */ stw r0, 8(r1) +/* 801A1934 0019E894 48 00 00 48 */ b lbl_801A197C +lbl_801A1938: +/* 801A1938 0019E898 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801A193C 0019E89C 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801A1940 0019E8A0 2C 00 00 06 */ cmpwi r0, 6 +/* 801A1944 0019E8A4 41 82 00 38 */ beq lbl_801A197C +/* 801A1948 0019E8A8 38 00 00 04 */ li r0, 4 +/* 801A194C 0019E8AC 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801A1950 0019E8B0 48 00 00 2C */ b lbl_801A197C +lbl_801A1954: +/* 801A1954 0019E8B4 38 A0 00 01 */ li r5, 1 +/* 801A1958 0019E8B8 4B FF D0 75 */ bl sub_8019e9cc +/* 801A195C 0019E8BC 7F C3 F3 78 */ mr r3, r30 +/* 801A1960 0019E8C0 7F E4 FB 78 */ mr r4, r31 +/* 801A1964 0019E8C4 38 A0 00 01 */ li r5, 1 +/* 801A1968 0019E8C8 4B FF CF 2D */ bl sub_8019e894 +/* 801A196C 0019E8CC 88 1E 0B 29 */ lbz r0, 0xb29(r30) +/* 801A1970 0019E8D0 38 60 00 00 */ li r3, 0 +/* 801A1974 0019E8D4 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801A1978 0019E8D8 98 1E 0B 29 */ stb r0, 0xb29(r30) +lbl_801A197C: +/* 801A197C 0019E8DC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801A1980 0019E8E0 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801A1984 0019E8E4 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801A1988 0019E8E8 7C 08 03 A6 */ mtlr r0 +/* 801A198C 0019E8EC 38 21 00 30 */ addi r1, r1, 0x30 +/* 801A1990 0019E8F0 4E 80 00 20 */ blr + +.global TurnAround__12CIceSheegothR13CStateManager9EStateMsgf +TurnAround__12CIceSheegothR13CStateManager9EStateMsgf: +/* 801A1994 0019E8F4 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 801A1998 0019E8F8 7C 08 02 A6 */ mflr r0 +/* 801A199C 0019E8FC 90 01 00 74 */ stw r0, 0x74(r1) +/* 801A19A0 0019E900 DB E1 00 60 */ stfd f31, 0x60(r1) +/* 801A19A4 0019E904 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 801A19A8 0019E908 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 801A19AC 0019E90C 93 C1 00 58 */ stw r30, 0x58(r1) +/* 801A19B0 0019E910 FF E0 08 90 */ fmr f31, f1 +/* 801A19B4 0019E914 2C 05 00 01 */ cmpwi r5, 1 +/* 801A19B8 0019E918 7C 7E 1B 78 */ mr r30, r3 +/* 801A19BC 0019E91C 7C 9F 23 78 */ mr r31, r4 +/* 801A19C0 0019E920 41 82 00 88 */ beq lbl_801A1A48 +/* 801A19C4 0019E924 40 80 00 10 */ bge lbl_801A19D4 +/* 801A19C8 0019E928 2C 05 00 00 */ cmpwi r5, 0 +/* 801A19CC 0019E92C 40 80 00 14 */ bge lbl_801A19E0 +/* 801A19D0 0019E930 48 00 01 A4 */ b lbl_801A1B74 +lbl_801A19D4: +/* 801A19D4 0019E934 2C 05 00 03 */ cmpwi r5, 3 +/* 801A19D8 0019E938 40 80 01 9C */ bge lbl_801A1B74 +/* 801A19DC 0019E93C 48 00 01 84 */ b lbl_801A1B60 +lbl_801A19E0: +/* 801A19E0 0019E940 80 BF 08 4C */ lwz r5, 0x84c(r31) +/* 801A19E4 0019E944 38 7E 09 F4 */ addi r3, r30, 0x9f4 +/* 801A19E8 0019E948 38 81 00 0C */ addi r4, r1, 0xc +/* 801A19EC 0019E94C A0 05 00 08 */ lhz r0, 8(r5) +/* 801A19F0 0019E950 B0 01 00 08 */ sth r0, 8(r1) +/* 801A19F4 0019E954 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801A19F8 0019E958 4B FD 38 21 */ bl SetTarget__13CBoneTrackingF9TUniqueId +/* 801A19FC 0019E95C 38 7E 09 F4 */ addi r3, r30, 0x9f4 +/* 801A1A00 0019E960 38 80 00 01 */ li r4, 1 +/* 801A1A04 0019E964 4B FD 38 21 */ bl SetActive__13CBoneTrackingFb +/* 801A1A08 0019E968 7F C3 F3 78 */ mr r3, r30 +/* 801A1A0C 0019E96C 7F E4 FB 78 */ mr r4, r31 +/* 801A1A10 0019E970 38 BE 02 E0 */ addi r5, r30, 0x2e0 +/* 801A1A14 0019E974 4B FF F0 49 */ bl sub_801a0a5c +/* 801A1A18 0019E978 7F C3 F3 78 */ mr r3, r30 +/* 801A1A1C 0019E97C 38 80 00 00 */ li r4, 0 +/* 801A1A20 0019E980 4B FF D3 F9 */ bl sub_8019ee18 +/* 801A1A24 0019E984 FC 20 F8 90 */ fmr f1, f31 +/* 801A1A28 0019E988 7F C3 F3 78 */ mr r3, r30 +/* 801A1A2C 0019E98C 7F E4 FB 78 */ mr r4, r31 +/* 801A1A30 0019E990 38 A0 00 00 */ li r5, 0 +/* 801A1A34 0019E994 48 05 4C 99 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 801A1A38 0019E998 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801A1A3C 0019E99C 38 63 00 04 */ addi r3, r3, 4 +/* 801A1A40 0019E9A0 4B F8 FA 69 */ bl ClearLocomotionCmds__16CBodyStateCmdMgrFv +/* 801A1A44 0019E9A4 48 00 01 30 */ b lbl_801A1B74 +lbl_801A1A48: +/* 801A1A48 0019E9A8 C0 22 A7 C4 */ lfs f1, lbl_805AC4E4@sda21(r2) +/* 801A1A4C 0019E9AC 4B FF D2 91 */ bl sub_8019ecdc +/* 801A1A50 0019E9B0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A1A54 0019E9B4 41 82 00 E0 */ beq lbl_801A1B34 +/* 801A1A58 0019E9B8 80 9E 00 64 */ lwz r4, 0x64(r30) +/* 801A1A5C 0019E9BC 7F E5 FB 78 */ mr r5, r31 +/* 801A1A60 0019E9C0 C0 22 A7 5C */ lfs f1, lbl_805AC47C@sda21(r2) +/* 801A1A64 0019E9C4 38 61 00 1C */ addi r3, r1, 0x1c +/* 801A1A68 0019E9C8 80 C4 00 10 */ lwz r6, 0x10(r4) +/* 801A1A6C 0019E9CC 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 801A1A70 0019E9D0 C0 46 02 00 */ lfs f2, 0x200(r6) +/* 801A1A74 0019E9D4 FC 02 08 40 */ fcmpo cr0, f2, f1 +/* 801A1A78 0019E9D8 40 81 00 0C */ ble lbl_801A1A84 +/* 801A1A7C 0019E9DC C0 02 A7 70 */ lfs f0, lbl_805AC490@sda21(r2) +/* 801A1A80 0019E9E0 EC 20 10 24 */ fdivs f1, f0, f2 +lbl_801A1A84: +/* 801A1A84 0019E9E4 81 84 00 00 */ lwz r12, 0(r4) +/* 801A1A88 0019E9E8 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801A1A8C 0019E9EC 7D 89 03 A6 */ mtctr r12 +/* 801A1A90 0019E9F0 4E 80 04 21 */ bctrl +/* 801A1A94 0019E9F4 C0 21 00 24 */ lfs f1, 0x24(r1) +/* 801A1A98 0019E9F8 38 61 00 28 */ addi r3, r1, 0x28 +/* 801A1A9C 0019E9FC C0 1E 00 60 */ lfs f0, 0x60(r30) +/* 801A1AA0 0019EA00 C0 61 00 20 */ lfs f3, 0x20(r1) +/* 801A1AA4 0019EA04 C0 5E 00 50 */ lfs f2, 0x50(r30) +/* 801A1AA8 0019EA08 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801A1AAC 0019EA0C C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801A1AB0 0019EA10 C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 801A1AB4 0019EA14 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801A1AB8 0019EA18 D0 81 00 30 */ stfs f4, 0x30(r1) +/* 801A1ABC 0019EA1C EC 21 00 28 */ fsubs f1, f1, f0 +/* 801A1AC0 0019EA20 C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 801A1AC4 0019EA24 D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 801A1AC8 0019EA28 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 801A1ACC 0019EA2C D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801A1AD0 0019EA30 48 17 2C 29 */ bl CanBeNormalized__9CVector3fCFv +/* 801A1AD4 0019EA34 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A1AD8 0019EA38 41 82 00 5C */ beq lbl_801A1B34 +/* 801A1ADC 0019EA3C 38 61 00 10 */ addi r3, r1, 0x10 +/* 801A1AE0 0019EA40 38 81 00 28 */ addi r4, r1, 0x28 +/* 801A1AE4 0019EA44 48 17 2D 6D */ bl AsNormalized__9CVector3fCFv +/* 801A1AE8 0019EA48 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801A1AEC 0019EA4C C4 C3 66 A0 */ lfsu f6, skZero3f@l(r3) +/* 801A1AF0 0019EA50 C0 61 00 10 */ lfs f3, 0x10(r1) +/* 801A1AF4 0019EA54 38 81 00 34 */ addi r4, r1, 0x34 +/* 801A1AF8 0019EA58 C0 41 00 14 */ lfs f2, 0x14(r1) +/* 801A1AFC 0019EA5C C0 A3 00 04 */ lfs f5, 4(r3) +/* 801A1B00 0019EA60 C0 83 00 08 */ lfs f4, 8(r3) +/* 801A1B04 0019EA64 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 801A1B08 0019EA68 C0 02 A7 60 */ lfs f0, lbl_805AC480@sda21(r2) +/* 801A1B0C 0019EA6C D0 C1 00 34 */ stfs f6, 0x34(r1) +/* 801A1B10 0019EA70 D0 A1 00 38 */ stfs f5, 0x38(r1) +/* 801A1B14 0019EA74 D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 801A1B18 0019EA78 D0 61 00 40 */ stfs f3, 0x40(r1) +/* 801A1B1C 0019EA7C D0 41 00 44 */ stfs f2, 0x44(r1) +/* 801A1B20 0019EA80 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 801A1B24 0019EA84 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 801A1B28 0019EA88 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801A1B2C 0019EA8C 38 63 00 04 */ addi r3, r3, 4 +/* 801A1B30 0019EA90 4B F8 FB E9 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +lbl_801A1B34: +/* 801A1B34 0019EA94 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801A1B38 0019EA98 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801A1B3C 0019EA9C 2C 00 00 08 */ cmpwi r0, 8 +/* 801A1B40 0019EAA0 40 82 00 0C */ bne lbl_801A1B4C +/* 801A1B44 0019EAA4 C0 22 A7 74 */ lfs f1, lbl_805AC494@sda21(r2) +/* 801A1B48 0019EAA8 48 00 00 08 */ b lbl_801A1B50 +lbl_801A1B4C: +/* 801A1B4C 0019EAAC C0 22 A7 60 */ lfs f1, lbl_805AC480@sda21(r2) +lbl_801A1B50: +/* 801A1B50 0019EAB0 C0 1E 09 4C */ lfs f0, 0x94c(r30) +/* 801A1B54 0019EAB4 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801A1B58 0019EAB8 D0 1E 03 B4 */ stfs f0, 0x3b4(r30) +/* 801A1B5C 0019EABC 48 00 00 18 */ b lbl_801A1B74 +lbl_801A1B60: +/* 801A1B60 0019EAC0 38 7E 09 F4 */ addi r3, r30, 0x9f4 +/* 801A1B64 0019EAC4 38 80 00 00 */ li r4, 0 +/* 801A1B68 0019EAC8 4B FD 36 BD */ bl SetActive__13CBoneTrackingFb +/* 801A1B6C 0019EACC C0 1E 09 4C */ lfs f0, 0x94c(r30) +/* 801A1B70 0019EAD0 D0 1E 03 B4 */ stfs f0, 0x3b4(r30) +lbl_801A1B74: +/* 801A1B74 0019EAD4 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 801A1B78 0019EAD8 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801A1B7C 0019EADC CB E1 00 60 */ lfd f31, 0x60(r1) +/* 801A1B80 0019EAE0 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 801A1B84 0019EAE4 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 801A1B88 0019EAE8 7C 08 03 A6 */ mtlr r0 +/* 801A1B8C 0019EAEC 38 21 00 70 */ addi r1, r1, 0x70 +/* 801A1B90 0019EAF0 4E 80 00 20 */ blr + +.global Enraged__12CIceSheegothR13CStateManager9EStateMsgf +Enraged__12CIceSheegothR13CStateManager9EStateMsgf: +/* 801A1B94 0019EAF4 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801A1B98 0019EAF8 7C 08 02 A6 */ mflr r0 +/* 801A1B9C 0019EAFC 2C 05 00 01 */ cmpwi r5, 1 +/* 801A1BA0 0019EB00 90 01 00 34 */ stw r0, 0x34(r1) +/* 801A1BA4 0019EB04 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801A1BA8 0019EB08 41 82 00 30 */ beq lbl_801A1BD8 +/* 801A1BAC 0019EB0C 40 80 01 4C */ bge lbl_801A1CF8 +/* 801A1BB0 0019EB10 2C 05 00 00 */ cmpwi r5, 0 +/* 801A1BB4 0019EB14 40 80 00 08 */ bge lbl_801A1BBC +/* 801A1BB8 0019EB18 48 00 01 40 */ b lbl_801A1CF8 +lbl_801A1BBC: +/* 801A1BBC 0019EB1C 38 00 00 00 */ li r0, 0 +/* 801A1BC0 0019EB20 38 80 00 01 */ li r4, 1 +/* 801A1BC4 0019EB24 90 03 05 68 */ stw r0, 0x568(r3) +/* 801A1BC8 0019EB28 88 03 0B 28 */ lbz r0, 0xb28(r3) +/* 801A1BCC 0019EB2C 50 80 0F BC */ rlwimi r0, r4, 1, 0x1e, 0x1e +/* 801A1BD0 0019EB30 98 03 0B 28 */ stb r0, 0xb28(r3) +/* 801A1BD4 0019EB34 48 00 01 24 */ b lbl_801A1CF8 +lbl_801A1BD8: +/* 801A1BD8 0019EB38 80 03 05 68 */ lwz r0, 0x568(r3) +/* 801A1BDC 0019EB3C 2C 00 00 03 */ cmpwi r0, 3 +/* 801A1BE0 0019EB40 41 82 01 00 */ beq lbl_801A1CE0 +/* 801A1BE4 0019EB44 40 80 01 14 */ bge lbl_801A1CF8 +/* 801A1BE8 0019EB48 2C 00 00 00 */ cmpwi r0, 0 +/* 801A1BEC 0019EB4C 41 82 00 08 */ beq lbl_801A1BF4 +/* 801A1BF0 0019EB50 48 00 01 08 */ b lbl_801A1CF8 +lbl_801A1BF4: +/* 801A1BF4 0019EB54 81 43 04 50 */ lwz r10, 0x450(r3) +/* 801A1BF8 0019EB58 80 0A 02 B8 */ lwz r0, 0x2b8(r10) +/* 801A1BFC 0019EB5C 2C 00 00 0C */ cmpwi r0, 0xc +/* 801A1C00 0019EB60 40 82 00 10 */ bne lbl_801A1C10 +/* 801A1C04 0019EB64 38 00 00 03 */ li r0, 3 +/* 801A1C08 0019EB68 90 03 05 68 */ stw r0, 0x568(r3) +/* 801A1C0C 0019EB6C 48 00 00 EC */ b lbl_801A1CF8 +lbl_801A1C10: +/* 801A1C10 0019EB70 3C C0 80 3E */ lis r6, lbl_803DAA68@ha +/* 801A1C14 0019EB74 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801A1C18 0019EB78 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 801A1C1C 0019EB7C 80 81 00 24 */ lwz r4, 0x24(r1) +/* 801A1C20 0019EB80 38 60 00 00 */ li r3, 0 +/* 801A1C24 0019EB84 39 26 AA 68 */ addi r9, r6, lbl_803DAA68@l +/* 801A1C28 0019EB88 50 64 F8 00 */ rlwimi r4, r3, 0x1f, 0, 0 +/* 801A1C2C 0019EB8C C0 45 00 00 */ lfs f2, 0(r5) +/* 801A1C30 0019EB90 C0 25 00 04 */ lfs f1, 4(r5) +/* 801A1C34 0019EB94 3C E0 80 3E */ lis r7, lbl_803DA9F0@ha +/* 801A1C38 0019EB98 C0 05 00 08 */ lfs f0, 8(r5) +/* 801A1C3C 0019EB9C 7C 80 23 78 */ mr r0, r4 +/* 801A1C40 0019EBA0 39 00 00 0E */ li r8, 0xe +/* 801A1C44 0019EBA4 38 C0 00 03 */ li r6, 3 +/* 801A1C48 0019EBA8 38 A0 FF FF */ li r5, -1 +/* 801A1C4C 0019EBAC 3B EA 00 04 */ addi r31, r10, 4 +/* 801A1C50 0019EBB0 91 21 00 08 */ stw r9, 8(r1) +/* 801A1C54 0019EBB4 38 E7 A9 F0 */ addi r7, r7, lbl_803DA9F0@l +/* 801A1C58 0019EBB8 50 60 F0 42 */ rlwimi r0, r3, 0x1e, 1, 1 +/* 801A1C5C 0019EBBC 7F E3 FB 78 */ mr r3, r31 +/* 801A1C60 0019EBC0 90 81 00 24 */ stw r4, 0x24(r1) +/* 801A1C64 0019EBC4 38 80 00 0E */ li r4, 0xe +/* 801A1C68 0019EBC8 91 01 00 0C */ stw r8, 0xc(r1) +/* 801A1C6C 0019EBCC 90 E1 00 08 */ stw r7, 8(r1) +/* 801A1C70 0019EBD0 90 C1 00 10 */ stw r6, 0x10(r1) +/* 801A1C74 0019EBD4 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801A1C78 0019EBD8 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801A1C7C 0019EBDC D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801A1C80 0019EBE0 90 A1 00 20 */ stw r5, 0x20(r1) +/* 801A1C84 0019EBE4 90 01 00 24 */ stw r0, 0x24(r1) +/* 801A1C88 0019EBE8 4B F8 F7 B1 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801A1C8C 0019EBEC 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801A1C90 0019EBF0 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha +/* 801A1C94 0019EBF4 38 83 A9 F0 */ addi r4, r3, lbl_803DA9F0@l +/* 801A1C98 0019EBF8 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801A1C9C 0019EBFC 90 1F 01 90 */ stw r0, 0x190(r31) +/* 801A1CA0 0019EC00 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801A1CA4 0019EC04 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 801A1CA8 0019EC08 80 61 00 14 */ lwz r3, 0x14(r1) +/* 801A1CAC 0019EC0C 90 BF 01 94 */ stw r5, 0x194(r31) +/* 801A1CB0 0019EC10 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 801A1CB4 0019EC14 90 7F 01 98 */ stw r3, 0x198(r31) +/* 801A1CB8 0019EC18 80 61 00 1C */ lwz r3, 0x1c(r1) +/* 801A1CBC 0019EC1C 90 BF 01 9C */ stw r5, 0x19c(r31) +/* 801A1CC0 0019EC20 80 A1 00 20 */ lwz r5, 0x20(r1) +/* 801A1CC4 0019EC24 90 7F 01 A0 */ stw r3, 0x1a0(r31) +/* 801A1CC8 0019EC28 80 61 00 24 */ lwz r3, 0x24(r1) +/* 801A1CCC 0019EC2C 90 BF 01 A4 */ stw r5, 0x1a4(r31) +/* 801A1CD0 0019EC30 90 81 00 08 */ stw r4, 8(r1) +/* 801A1CD4 0019EC34 90 7F 01 A8 */ stw r3, 0x1a8(r31) +/* 801A1CD8 0019EC38 90 01 00 08 */ stw r0, 8(r1) +/* 801A1CDC 0019EC3C 48 00 00 1C */ b lbl_801A1CF8 +lbl_801A1CE0: +/* 801A1CE0 0019EC40 80 83 04 50 */ lwz r4, 0x450(r3) +/* 801A1CE4 0019EC44 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 801A1CE8 0019EC48 2C 00 00 0C */ cmpwi r0, 0xc +/* 801A1CEC 0019EC4C 41 82 00 0C */ beq lbl_801A1CF8 +/* 801A1CF0 0019EC50 38 00 00 04 */ li r0, 4 +/* 801A1CF4 0019EC54 90 03 05 68 */ stw r0, 0x568(r3) +lbl_801A1CF8: +/* 801A1CF8 0019EC58 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801A1CFC 0019EC5C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801A1D00 0019EC60 7C 08 03 A6 */ mtlr r0 +/* 801A1D04 0019EC64 38 21 00 30 */ addi r1, r1, 0x30 +/* 801A1D08 0019EC68 4E 80 00 20 */ blr + +.global Taunt__12CIceSheegothR13CStateManager9EStateMsgf +Taunt__12CIceSheegothR13CStateManager9EStateMsgf: +/* 801A1D0C 0019EC6C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801A1D10 0019EC70 7C 08 02 A6 */ mflr r0 +/* 801A1D14 0019EC74 2C 05 00 01 */ cmpwi r5, 1 +/* 801A1D18 0019EC78 90 01 00 24 */ stw r0, 0x24(r1) +/* 801A1D1C 0019EC7C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801A1D20 0019EC80 7C 7F 1B 78 */ mr r31, r3 +/* 801A1D24 0019EC84 41 82 00 44 */ beq lbl_801A1D68 +/* 801A1D28 0019EC88 40 80 00 10 */ bge lbl_801A1D38 +/* 801A1D2C 0019EC8C 2C 05 00 00 */ cmpwi r5, 0 +/* 801A1D30 0019EC90 40 80 00 14 */ bge lbl_801A1D44 +/* 801A1D34 0019EC94 48 00 01 04 */ b lbl_801A1E38 +lbl_801A1D38: +/* 801A1D38 0019EC98 2C 05 00 03 */ cmpwi r5, 3 +/* 801A1D3C 0019EC9C 40 80 00 FC */ bge lbl_801A1E38 +/* 801A1D40 0019ECA0 48 00 00 E0 */ b lbl_801A1E20 +lbl_801A1D44: +/* 801A1D44 0019ECA4 38 00 00 00 */ li r0, 0 +/* 801A1D48 0019ECA8 38 C0 00 01 */ li r6, 1 +/* 801A1D4C 0019ECAC 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801A1D50 0019ECB0 38 A0 00 01 */ li r5, 1 +/* 801A1D54 0019ECB4 88 1F 0B 29 */ lbz r0, 0xb29(r31) +/* 801A1D58 0019ECB8 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19 +/* 801A1D5C 0019ECBC 98 1F 0B 29 */ stb r0, 0xb29(r31) +/* 801A1D60 0019ECC0 4B FF CB 35 */ bl sub_8019e894 +/* 801A1D64 0019ECC4 48 00 00 D4 */ b lbl_801A1E38 +lbl_801A1D68: +/* 801A1D68 0019ECC8 80 1F 05 68 */ lwz r0, 0x568(r31) +/* 801A1D6C 0019ECCC 2C 00 00 03 */ cmpwi r0, 3 +/* 801A1D70 0019ECD0 41 82 00 94 */ beq lbl_801A1E04 +/* 801A1D74 0019ECD4 40 80 00 C4 */ bge lbl_801A1E38 +/* 801A1D78 0019ECD8 2C 00 00 00 */ cmpwi r0, 0 +/* 801A1D7C 0019ECDC 41 82 00 08 */ beq lbl_801A1D84 +/* 801A1D80 0019ECE0 48 00 00 B8 */ b lbl_801A1E38 +lbl_801A1D84: +/* 801A1D84 0019ECE4 80 DF 04 50 */ lwz r6, 0x450(r31) +/* 801A1D88 0019ECE8 80 06 02 B8 */ lwz r0, 0x2b8(r6) +/* 801A1D8C 0019ECEC 2C 00 00 10 */ cmpwi r0, 0x10 +/* 801A1D90 0019ECF0 40 82 00 10 */ bne lbl_801A1DA0 +/* 801A1D94 0019ECF4 38 00 00 03 */ li r0, 3 +/* 801A1D98 0019ECF8 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801A1D9C 0019ECFC 48 00 00 9C */ b lbl_801A1E38 +lbl_801A1DA0: +/* 801A1DA0 0019ED00 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 801A1DA4 0019ED04 3C 60 80 3E */ lis r3, lbl_803DAA14@ha +/* 801A1DA8 0019ED08 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l +/* 801A1DAC 0019ED0C 38 80 00 12 */ li r4, 0x12 +/* 801A1DB0 0019ED10 90 01 00 08 */ stw r0, 8(r1) +/* 801A1DB4 0019ED14 38 A3 AA 14 */ addi r5, r3, lbl_803DAA14@l +/* 801A1DB8 0019ED18 38 00 00 00 */ li r0, 0 +/* 801A1DBC 0019ED1C 3B E6 00 04 */ addi r31, r6, 4 +/* 801A1DC0 0019ED20 90 81 00 0C */ stw r4, 0xc(r1) +/* 801A1DC4 0019ED24 7F E3 FB 78 */ mr r3, r31 +/* 801A1DC8 0019ED28 38 80 00 12 */ li r4, 0x12 +/* 801A1DCC 0019ED2C 90 A1 00 08 */ stw r5, 8(r1) +/* 801A1DD0 0019ED30 90 01 00 10 */ stw r0, 0x10(r1) +/* 801A1DD4 0019ED34 4B F8 F6 65 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801A1DD8 0019ED38 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801A1DDC 0019ED3C 3C 60 80 3E */ lis r3, lbl_803DAA14@ha +/* 801A1DE0 0019ED40 38 83 AA 14 */ addi r4, r3, lbl_803DAA14@l +/* 801A1DE4 0019ED44 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801A1DE8 0019ED48 90 1F 02 14 */ stw r0, 0x214(r31) +/* 801A1DEC 0019ED4C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801A1DF0 0019ED50 80 61 00 10 */ lwz r3, 0x10(r1) +/* 801A1DF4 0019ED54 90 81 00 08 */ stw r4, 8(r1) +/* 801A1DF8 0019ED58 90 7F 02 18 */ stw r3, 0x218(r31) +/* 801A1DFC 0019ED5C 90 01 00 08 */ stw r0, 8(r1) +/* 801A1E00 0019ED60 48 00 00 38 */ b lbl_801A1E38 +lbl_801A1E04: +/* 801A1E04 0019ED64 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801A1E08 0019ED68 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801A1E0C 0019ED6C 2C 00 00 10 */ cmpwi r0, 0x10 +/* 801A1E10 0019ED70 41 82 00 28 */ beq lbl_801A1E38 +/* 801A1E14 0019ED74 38 00 00 04 */ li r0, 4 +/* 801A1E18 0019ED78 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801A1E1C 0019ED7C 48 00 00 1C */ b lbl_801A1E38 +lbl_801A1E20: +/* 801A1E20 0019ED80 38 A0 00 00 */ li r5, 0 +/* 801A1E24 0019ED84 4B FF CA 71 */ bl sub_8019e894 +/* 801A1E28 0019ED88 88 1F 0B 29 */ lbz r0, 0xb29(r31) +/* 801A1E2C 0019ED8C 38 60 00 00 */ li r3, 0 +/* 801A1E30 0019ED90 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801A1E34 0019ED94 98 1F 0B 29 */ stb r0, 0xb29(r31) +lbl_801A1E38: +/* 801A1E38 0019ED98 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801A1E3C 0019ED9C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801A1E40 0019EDA0 7C 08 03 A6 */ mtlr r0 +/* 801A1E44 0019EDA4 38 21 00 20 */ addi r1, r1, 0x20 +/* 801A1E48 0019EDA8 4E 80 00 20 */ blr + +.global Crouch__12CIceSheegothR13CStateManager9EStateMsgf +Crouch__12CIceSheegothR13CStateManager9EStateMsgf: +/* 801A1E4C 0019EDAC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801A1E50 0019EDB0 7C 08 02 A6 */ mflr r0 +/* 801A1E54 0019EDB4 2C 05 00 01 */ cmpwi r5, 1 +/* 801A1E58 0019EDB8 90 01 00 24 */ stw r0, 0x24(r1) +/* 801A1E5C 0019EDBC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801A1E60 0019EDC0 7C 9F 23 78 */ mr r31, r4 +/* 801A1E64 0019EDC4 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801A1E68 0019EDC8 7C 7E 1B 78 */ mr r30, r3 +/* 801A1E6C 0019EDCC 41 82 00 88 */ beq lbl_801A1EF4 +/* 801A1E70 0019EDD0 40 80 00 10 */ bge lbl_801A1E80 +/* 801A1E74 0019EDD4 2C 05 00 00 */ cmpwi r5, 0 +/* 801A1E78 0019EDD8 40 80 00 14 */ bge lbl_801A1E8C +/* 801A1E7C 0019EDDC 48 00 00 78 */ b lbl_801A1EF4 +lbl_801A1E80: +/* 801A1E80 0019EDE0 2C 05 00 03 */ cmpwi r5, 3 +/* 801A1E84 0019EDE4 40 80 00 70 */ bge lbl_801A1EF4 +/* 801A1E88 0019EDE8 48 00 00 5C */ b lbl_801A1EE4 +lbl_801A1E8C: +/* 801A1E8C 0019EDEC 7F E6 FB 78 */ mr r6, r31 +/* 801A1E90 0019EDF0 38 80 00 29 */ li r4, 0x29 +/* 801A1E94 0019EDF4 38 A0 00 28 */ li r5, 0x28 +/* 801A1E98 0019EDF8 4B EB 20 3D */ bl RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager +/* 801A1E9C 0019EDFC A0 1E 00 08 */ lhz r0, 8(r30) +/* 801A1EA0 0019EE00 7F E6 FB 78 */ mr r6, r31 +/* 801A1EA4 0019EE04 38 81 00 0C */ addi r4, r1, 0xc +/* 801A1EA8 0019EE08 38 A0 00 08 */ li r5, 8 +/* 801A1EAC 0019EE0C B0 01 00 0C */ sth r0, 0xc(r1) +/* 801A1EB0 0019EE10 B0 01 00 08 */ sth r0, 8(r1) +/* 801A1EB4 0019EE14 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 801A1EB8 0019EE18 4B FD 93 9D */ bl SetOrbitRequestForTarget__7CPlayerF9TUniqueId19EPlayerOrbitRequestR13CStateManager +/* 801A1EBC 0019EE1C 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801A1EC0 0019EE20 38 80 00 00 */ li r4, 0 +/* 801A1EC4 0019EE24 4B F9 8B 15 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 801A1EC8 0019EE28 C0 1E 07 4C */ lfs f0, 0x74c(r30) +/* 801A1ECC 0019EE2C 38 60 00 00 */ li r3, 0 +/* 801A1ED0 0019EE30 D0 1E 09 68 */ stfs f0, 0x968(r30) +/* 801A1ED4 0019EE34 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 801A1ED8 0019EE38 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801A1EDC 0019EE3C 98 1E 04 00 */ stb r0, 0x400(r30) +/* 801A1EE0 0019EE40 48 00 00 14 */ b lbl_801A1EF4 +lbl_801A1EE4: +/* 801A1EE4 0019EE44 7F E6 FB 78 */ mr r6, r31 +/* 801A1EE8 0019EE48 38 80 00 29 */ li r4, 0x29 +/* 801A1EEC 0019EE4C 38 A0 00 28 */ li r5, 0x28 +/* 801A1EF0 0019EE50 4B EB 23 C5 */ bl AddMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager +lbl_801A1EF4: +/* 801A1EF4 0019EE54 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801A1EF8 0019EE58 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801A1EFC 0019EE5C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801A1F00 0019EE60 7C 08 03 A6 */ mtlr r0 +/* 801A1F04 0019EE64 38 21 00 20 */ addi r1, r1, 0x20 +/* 801A1F08 0019EE68 4E 80 00 20 */ blr + +.global Deactivate__12CIceSheegothR13CStateManager9EStateMsgf +Deactivate__12CIceSheegothR13CStateManager9EStateMsgf: +/* 801A1F0C 0019EE6C 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 801A1F10 0019EE70 7C 08 02 A6 */ mflr r0 +/* 801A1F14 0019EE74 2C 05 00 01 */ cmpwi r5, 1 +/* 801A1F18 0019EE78 90 01 00 84 */ stw r0, 0x84(r1) +/* 801A1F1C 0019EE7C 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 801A1F20 0019EE80 7C 7F 1B 78 */ mr r31, r3 +/* 801A1F24 0019EE84 41 82 00 20 */ beq lbl_801A1F44 +/* 801A1F28 0019EE88 40 80 02 98 */ bge lbl_801A21C0 +/* 801A1F2C 0019EE8C 2C 05 00 00 */ cmpwi r5, 0 +/* 801A1F30 0019EE90 40 80 00 08 */ bge lbl_801A1F38 +/* 801A1F34 0019EE94 48 00 02 8C */ b lbl_801A21C0 +lbl_801A1F38: +/* 801A1F38 0019EE98 38 00 00 01 */ li r0, 1 +/* 801A1F3C 0019EE9C 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801A1F40 0019EEA0 48 00 02 80 */ b lbl_801A21C0 +lbl_801A1F44: +/* 801A1F44 0019EEA4 80 1F 05 68 */ lwz r0, 0x568(r31) +/* 801A1F48 0019EEA8 2C 00 00 02 */ cmpwi r0, 2 +/* 801A1F4C 0019EEAC 41 82 00 D8 */ beq lbl_801A2024 +/* 801A1F50 0019EEB0 40 80 00 14 */ bge lbl_801A1F64 +/* 801A1F54 0019EEB4 2C 00 00 00 */ cmpwi r0, 0 +/* 801A1F58 0019EEB8 41 82 01 58 */ beq lbl_801A20B0 +/* 801A1F5C 0019EEBC 40 80 00 14 */ bge lbl_801A1F70 +/* 801A1F60 0019EEC0 48 00 02 60 */ b lbl_801A21C0 +lbl_801A1F64: +/* 801A1F64 0019EEC4 2C 00 00 04 */ cmpwi r0, 4 +/* 801A1F68 0019EEC8 40 80 02 58 */ bge lbl_801A21C0 +/* 801A1F6C 0019EECC 48 00 02 3C */ b lbl_801A21A8 +lbl_801A1F70: +/* 801A1F70 0019EED0 38 DF 03 A0 */ addi r6, r31, 0x3a0 +/* 801A1F74 0019EED4 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 801A1F78 0019EED8 C0 3F 03 A4 */ lfs f1, 0x3a4(r31) +/* 801A1F7C 0019EEDC C0 7F 03 A0 */ lfs f3, 0x3a0(r31) +/* 801A1F80 0019EEE0 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801A1F84 0019EEE4 C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 801A1F88 0019EEE8 C0 5F 03 A8 */ lfs f2, 0x3a8(r31) +/* 801A1F8C 0019EEEC C0 1F 00 60 */ lfs f0, 0x60(r31) +/* 801A1F90 0019EEF0 EC 63 08 28 */ fsubs f3, f3, f1 +/* 801A1F94 0019EEF4 EC 24 01 32 */ fmuls f1, f4, f4 +/* 801A1F98 0019EEF8 EC 42 00 28 */ fsubs f2, f2, f0 +/* 801A1F9C 0019EEFC C0 02 A7 60 */ lfs f0, lbl_805AC480@sda21(r2) +/* 801A1FA0 0019EF00 EC 23 08 FA */ fmadds f1, f3, f3, f1 +/* 801A1FA4 0019EF04 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 801A1FA8 0019EF08 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801A1FAC 0019EF0C 4C 40 13 82 */ cror 2, 0, 2 +/* 801A1FB0 0019EF10 40 82 00 10 */ bne lbl_801A1FC0 +/* 801A1FB4 0019EF14 38 00 00 02 */ li r0, 2 +/* 801A1FB8 0019EF18 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801A1FBC 0019EF1C 48 00 02 04 */ b lbl_801A21C0 +lbl_801A1FC0: +/* 801A1FC0 0019EF20 C0 22 A7 C8 */ lfs f1, lbl_805AC4E8@sda21(r2) +/* 801A1FC4 0019EF24 7F E5 FB 78 */ mr r5, r31 +/* 801A1FC8 0019EF28 38 61 00 08 */ addi r3, r1, 8 +/* 801A1FCC 0019EF2C 38 9F 04 5C */ addi r4, r31, 0x45c +/* 801A1FD0 0019EF30 4B F9 CB 4D */ bl Arrival__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3ff +/* 801A1FD4 0019EF34 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801A1FD8 0019EF38 C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) +/* 801A1FDC 0019EF3C C0 C1 00 08 */ lfs f6, 8(r1) +/* 801A1FE0 0019EF40 38 81 00 5C */ addi r4, r1, 0x5c +/* 801A1FE4 0019EF44 C0 A1 00 0C */ lfs f5, 0xc(r1) +/* 801A1FE8 0019EF48 C0 81 00 10 */ lfs f4, 0x10(r1) +/* 801A1FEC 0019EF4C C0 43 00 04 */ lfs f2, 4(r3) +/* 801A1FF0 0019EF50 C0 23 00 08 */ lfs f1, 8(r3) +/* 801A1FF4 0019EF54 C0 02 A7 60 */ lfs f0, lbl_805AC480@sda21(r2) +/* 801A1FF8 0019EF58 D0 C1 00 5C */ stfs f6, 0x5c(r1) +/* 801A1FFC 0019EF5C D0 A1 00 60 */ stfs f5, 0x60(r1) +/* 801A2000 0019EF60 D0 81 00 64 */ stfs f4, 0x64(r1) +/* 801A2004 0019EF64 D0 61 00 68 */ stfs f3, 0x68(r1) +/* 801A2008 0019EF68 D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 801A200C 0019EF6C D0 21 00 70 */ stfs f1, 0x70(r1) +/* 801A2010 0019EF70 D0 01 00 74 */ stfs f0, 0x74(r1) +/* 801A2014 0019EF74 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801A2018 0019EF78 38 63 00 04 */ addi r3, r3, 4 +/* 801A201C 0019EF7C 4B F8 F6 FD */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 801A2020 0019EF80 48 00 01 A0 */ b lbl_801A21C0 +lbl_801A2024: +/* 801A2024 0019EF84 C0 5F 00 58 */ lfs f2, 0x58(r31) +/* 801A2028 0019EF88 38 61 00 14 */ addi r3, r1, 0x14 +/* 801A202C 0019EF8C C0 3F 00 48 */ lfs f1, 0x48(r31) +/* 801A2030 0019EF90 38 9F 09 38 */ addi r4, r31, 0x938 +/* 801A2034 0019EF94 C0 1F 00 38 */ lfs f0, 0x38(r31) +/* 801A2038 0019EF98 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801A203C 0019EF9C D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801A2040 0019EFA0 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 801A2044 0019EFA4 48 17 25 ED */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f +/* 801A2048 0019EFA8 C0 02 A7 CC */ lfs f0, lbl_805AC4EC@sda21(r2) +/* 801A204C 0019EFAC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801A2050 0019EFB0 40 81 00 54 */ ble lbl_801A20A4 +/* 801A2054 0019EFB4 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801A2058 0019EFB8 C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) +/* 801A205C 0019EFBC C0 02 A7 60 */ lfs f0, lbl_805AC480@sda21(r2) +/* 801A2060 0019EFC0 38 81 00 40 */ addi r4, r1, 0x40 +/* 801A2064 0019EFC4 C0 43 00 04 */ lfs f2, 4(r3) +/* 801A2068 0019EFC8 C0 23 00 08 */ lfs f1, 8(r3) +/* 801A206C 0019EFCC D0 61 00 40 */ stfs f3, 0x40(r1) +/* 801A2070 0019EFD0 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 801A2074 0019EFD4 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 801A2078 0019EFD8 C0 3F 09 38 */ lfs f1, 0x938(r31) +/* 801A207C 0019EFDC D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 801A2080 0019EFE0 C0 3F 09 3C */ lfs f1, 0x93c(r31) +/* 801A2084 0019EFE4 D0 21 00 50 */ stfs f1, 0x50(r1) +/* 801A2088 0019EFE8 C0 3F 09 40 */ lfs f1, 0x940(r31) +/* 801A208C 0019EFEC D0 21 00 54 */ stfs f1, 0x54(r1) +/* 801A2090 0019EFF0 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 801A2094 0019EFF4 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801A2098 0019EFF8 38 63 00 04 */ addi r3, r3, 4 +/* 801A209C 0019EFFC 4B F8 F6 7D */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 801A20A0 0019F000 48 00 01 20 */ b lbl_801A21C0 +lbl_801A20A4: +/* 801A20A4 0019F004 38 00 00 00 */ li r0, 0 +/* 801A20A8 0019F008 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801A20AC 0019F00C 48 00 01 14 */ b lbl_801A21C0 +lbl_801A20B0: +/* 801A20B0 0019F010 81 5F 04 50 */ lwz r10, 0x450(r31) +/* 801A20B4 0019F014 80 0A 02 B8 */ lwz r0, 0x2b8(r10) +/* 801A20B8 0019F018 2C 00 00 0C */ cmpwi r0, 0xc +/* 801A20BC 0019F01C 40 82 00 1C */ bne lbl_801A20D8 +/* 801A20C0 0019F020 38 00 00 03 */ li r0, 3 +/* 801A20C4 0019F024 38 80 00 00 */ li r4, 0 +/* 801A20C8 0019F028 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801A20CC 0019F02C 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801A20D0 0019F030 4B F9 89 09 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 801A20D4 0019F034 48 00 00 EC */ b lbl_801A21C0 +lbl_801A20D8: +/* 801A20D8 0019F038 3C C0 80 3E */ lis r6, lbl_803DAA68@ha +/* 801A20DC 0019F03C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801A20E0 0019F040 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 801A20E4 0019F044 80 81 00 3C */ lwz r4, 0x3c(r1) +/* 801A20E8 0019F048 38 60 00 00 */ li r3, 0 +/* 801A20EC 0019F04C 39 26 AA 68 */ addi r9, r6, lbl_803DAA68@l +/* 801A20F0 0019F050 50 64 F8 00 */ rlwimi r4, r3, 0x1f, 0, 0 +/* 801A20F4 0019F054 C0 45 00 00 */ lfs f2, 0(r5) +/* 801A20F8 0019F058 C0 25 00 04 */ lfs f1, 4(r5) +/* 801A20FC 0019F05C 3C E0 80 3E */ lis r7, lbl_803DA9F0@ha +/* 801A2100 0019F060 C0 05 00 08 */ lfs f0, 8(r5) +/* 801A2104 0019F064 7C 80 23 78 */ mr r0, r4 +/* 801A2108 0019F068 39 00 00 0E */ li r8, 0xe +/* 801A210C 0019F06C 38 C0 00 01 */ li r6, 1 +/* 801A2110 0019F070 38 A0 FF FF */ li r5, -1 +/* 801A2114 0019F074 3B EA 00 04 */ addi r31, r10, 4 +/* 801A2118 0019F078 91 21 00 20 */ stw r9, 0x20(r1) +/* 801A211C 0019F07C 38 E7 A9 F0 */ addi r7, r7, lbl_803DA9F0@l +/* 801A2120 0019F080 50 60 F0 42 */ rlwimi r0, r3, 0x1e, 1, 1 +/* 801A2124 0019F084 7F E3 FB 78 */ mr r3, r31 +/* 801A2128 0019F088 90 81 00 3C */ stw r4, 0x3c(r1) +/* 801A212C 0019F08C 38 80 00 0E */ li r4, 0xe +/* 801A2130 0019F090 91 01 00 24 */ stw r8, 0x24(r1) +/* 801A2134 0019F094 90 E1 00 20 */ stw r7, 0x20(r1) +/* 801A2138 0019F098 90 C1 00 28 */ stw r6, 0x28(r1) +/* 801A213C 0019F09C D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 801A2140 0019F0A0 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 801A2144 0019F0A4 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801A2148 0019F0A8 90 A1 00 38 */ stw r5, 0x38(r1) +/* 801A214C 0019F0AC 90 01 00 3C */ stw r0, 0x3c(r1) +/* 801A2150 0019F0B0 4B F8 F2 E9 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801A2154 0019F0B4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801A2158 0019F0B8 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha +/* 801A215C 0019F0BC 38 83 A9 F0 */ addi r4, r3, lbl_803DA9F0@l +/* 801A2160 0019F0C0 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801A2164 0019F0C4 90 1F 01 90 */ stw r0, 0x190(r31) +/* 801A2168 0019F0C8 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801A216C 0019F0CC 80 A1 00 28 */ lwz r5, 0x28(r1) +/* 801A2170 0019F0D0 80 61 00 2C */ lwz r3, 0x2c(r1) +/* 801A2174 0019F0D4 90 BF 01 94 */ stw r5, 0x194(r31) +/* 801A2178 0019F0D8 80 A1 00 30 */ lwz r5, 0x30(r1) +/* 801A217C 0019F0DC 90 7F 01 98 */ stw r3, 0x198(r31) +/* 801A2180 0019F0E0 80 61 00 34 */ lwz r3, 0x34(r1) +/* 801A2184 0019F0E4 90 BF 01 9C */ stw r5, 0x19c(r31) +/* 801A2188 0019F0E8 80 A1 00 38 */ lwz r5, 0x38(r1) +/* 801A218C 0019F0EC 90 7F 01 A0 */ stw r3, 0x1a0(r31) +/* 801A2190 0019F0F0 80 61 00 3C */ lwz r3, 0x3c(r1) +/* 801A2194 0019F0F4 90 BF 01 A4 */ stw r5, 0x1a4(r31) +/* 801A2198 0019F0F8 90 81 00 20 */ stw r4, 0x20(r1) +/* 801A219C 0019F0FC 90 7F 01 A8 */ stw r3, 0x1a8(r31) +/* 801A21A0 0019F100 90 01 00 20 */ stw r0, 0x20(r1) +/* 801A21A4 0019F104 48 00 00 1C */ b lbl_801A21C0 +lbl_801A21A8: +/* 801A21A8 0019F108 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801A21AC 0019F10C 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801A21B0 0019F110 2C 00 00 0C */ cmpwi r0, 0xc +/* 801A21B4 0019F114 41 82 00 0C */ beq lbl_801A21C0 +/* 801A21B8 0019F118 38 00 00 04 */ li r0, 4 +/* 801A21BC 0019F11C 90 1F 05 68 */ stw r0, 0x568(r31) +lbl_801A21C0: +/* 801A21C0 0019F120 80 01 00 84 */ lwz r0, 0x84(r1) +/* 801A21C4 0019F124 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 801A21C8 0019F128 7C 08 03 A6 */ mtlr r0 +/* 801A21CC 0019F12C 38 21 00 80 */ addi r1, r1, 0x80 +/* 801A21D0 0019F130 4E 80 00 20 */ blr + +.global Generate__12CIceSheegothR13CStateManager9EStateMsgf +Generate__12CIceSheegothR13CStateManager9EStateMsgf: +/* 801A21D4 0019F134 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801A21D8 0019F138 7C 08 02 A6 */ mflr r0 +/* 801A21DC 0019F13C 2C 05 00 01 */ cmpwi r5, 1 +/* 801A21E0 0019F140 90 01 00 34 */ stw r0, 0x34(r1) +/* 801A21E4 0019F144 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801A21E8 0019F148 7C 9F 23 78 */ mr r31, r4 +/* 801A21EC 0019F14C 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801A21F0 0019F150 7C 7E 1B 78 */ mr r30, r3 +/* 801A21F4 0019F154 41 82 00 38 */ beq lbl_801A222C +/* 801A21F8 0019F158 40 80 01 7C */ bge lbl_801A2374 +/* 801A21FC 0019F15C 2C 05 00 00 */ cmpwi r5, 0 +/* 801A2200 0019F160 40 80 00 08 */ bge lbl_801A2208 +/* 801A2204 0019F164 48 00 01 70 */ b lbl_801A2374 +lbl_801A2208: +/* 801A2208 0019F168 38 00 00 00 */ li r0, 0 +/* 801A220C 0019F16C 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801A2210 0019F170 C0 5E 00 58 */ lfs f2, 0x58(r30) +/* 801A2214 0019F174 C0 3E 00 48 */ lfs f1, 0x48(r30) +/* 801A2218 0019F178 C0 1E 00 38 */ lfs f0, 0x38(r30) +/* 801A221C 0019F17C D0 1E 09 38 */ stfs f0, 0x938(r30) +/* 801A2220 0019F180 D0 3E 09 3C */ stfs f1, 0x93c(r30) +/* 801A2224 0019F184 D0 5E 09 40 */ stfs f2, 0x940(r30) +/* 801A2228 0019F188 48 00 01 4C */ b lbl_801A2374 +lbl_801A222C: +/* 801A222C 0019F18C 80 1E 05 68 */ lwz r0, 0x568(r30) +/* 801A2230 0019F190 2C 00 00 03 */ cmpwi r0, 3 +/* 801A2234 0019F194 41 82 01 28 */ beq lbl_801A235C +/* 801A2238 0019F198 40 80 01 3C */ bge lbl_801A2374 +/* 801A223C 0019F19C 2C 00 00 00 */ cmpwi r0, 0 +/* 801A2240 0019F1A0 41 82 00 08 */ beq lbl_801A2248 +/* 801A2244 0019F1A4 48 00 01 30 */ b lbl_801A2374 +lbl_801A2248: +/* 801A2248 0019F1A8 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801A224C 0019F1AC 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801A2250 0019F1B0 2C 00 00 0C */ cmpwi r0, 0xc +/* 801A2254 0019F1B4 40 82 00 2C */ bne lbl_801A2280 +/* 801A2258 0019F1B8 38 80 00 01 */ li r4, 1 +/* 801A225C 0019F1BC 4B F9 87 7D */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 801A2260 0019F1C0 38 00 00 03 */ li r0, 3 +/* 801A2264 0019F1C4 7F C3 F3 78 */ mr r3, r30 +/* 801A2268 0019F1C8 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801A226C 0019F1CC 7F E5 FB 78 */ mr r5, r31 +/* 801A2270 0019F1D0 38 80 00 0A */ li r4, 0xa +/* 801A2274 0019F1D4 38 C0 FF FF */ li r6, -1 +/* 801A2278 0019F1D8 4B EA EE 49 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 801A227C 0019F1DC 48 00 00 F8 */ b lbl_801A2374 +lbl_801A2280: +/* 801A2280 0019F1E0 88 1E 07 5C */ lbz r0, 0x75c(r30) +/* 801A2284 0019F1E4 39 20 00 00 */ li r9, 0 +/* 801A2288 0019F1E8 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801A228C 0019F1EC 41 82 00 08 */ beq lbl_801A2294 +/* 801A2290 0019F1F0 39 20 00 08 */ li r9, 8 +lbl_801A2294: +/* 801A2294 0019F1F4 3C A0 80 3E */ lis r5, lbl_803DAA68@ha +/* 801A2298 0019F1F8 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801A229C 0019F1FC C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) +/* 801A22A0 0019F200 39 05 AA 68 */ addi r8, r5, lbl_803DAA68@l +/* 801A22A4 0019F204 3C C0 80 3E */ lis r6, lbl_803DA9F0@ha +/* 801A22A8 0019F208 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801A22AC 0019F20C 38 80 00 00 */ li r4, 0 +/* 801A22B0 0019F210 C0 23 00 04 */ lfs f1, 4(r3) +/* 801A22B4 0019F214 C0 03 00 08 */ lfs f0, 8(r3) +/* 801A22B8 0019F218 50 80 F8 00 */ rlwimi r0, r4, 0x1f, 0, 0 +/* 801A22BC 0019F21C 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801A22C0 0019F220 38 E0 00 0E */ li r7, 0xe +/* 801A22C4 0019F224 90 01 00 24 */ stw r0, 0x24(r1) +/* 801A22C8 0019F228 50 80 F0 42 */ rlwimi r0, r4, 0x1e, 1, 1 +/* 801A22CC 0019F22C 38 A0 FF FF */ li r5, -1 +/* 801A22D0 0019F230 3B E3 00 04 */ addi r31, r3, 4 +/* 801A22D4 0019F234 91 01 00 08 */ stw r8, 8(r1) +/* 801A22D8 0019F238 38 C6 A9 F0 */ addi r6, r6, lbl_803DA9F0@l +/* 801A22DC 0019F23C 7F E3 FB 78 */ mr r3, r31 +/* 801A22E0 0019F240 38 80 00 0E */ li r4, 0xe +/* 801A22E4 0019F244 90 E1 00 0C */ stw r7, 0xc(r1) +/* 801A22E8 0019F248 90 C1 00 08 */ stw r6, 8(r1) +/* 801A22EC 0019F24C 91 21 00 10 */ stw r9, 0x10(r1) +/* 801A22F0 0019F250 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801A22F4 0019F254 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801A22F8 0019F258 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801A22FC 0019F25C 90 A1 00 20 */ stw r5, 0x20(r1) +/* 801A2300 0019F260 90 01 00 24 */ stw r0, 0x24(r1) +/* 801A2304 0019F264 4B F8 F1 35 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801A2308 0019F268 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801A230C 0019F26C 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha +/* 801A2310 0019F270 38 83 A9 F0 */ addi r4, r3, lbl_803DA9F0@l +/* 801A2314 0019F274 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801A2318 0019F278 90 1F 01 90 */ stw r0, 0x190(r31) +/* 801A231C 0019F27C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801A2320 0019F280 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 801A2324 0019F284 80 61 00 14 */ lwz r3, 0x14(r1) +/* 801A2328 0019F288 90 BF 01 94 */ stw r5, 0x194(r31) +/* 801A232C 0019F28C 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 801A2330 0019F290 90 7F 01 98 */ stw r3, 0x198(r31) +/* 801A2334 0019F294 80 61 00 1C */ lwz r3, 0x1c(r1) +/* 801A2338 0019F298 90 BF 01 9C */ stw r5, 0x19c(r31) +/* 801A233C 0019F29C 80 A1 00 20 */ lwz r5, 0x20(r1) +/* 801A2340 0019F2A0 90 7F 01 A0 */ stw r3, 0x1a0(r31) +/* 801A2344 0019F2A4 80 61 00 24 */ lwz r3, 0x24(r1) +/* 801A2348 0019F2A8 90 BF 01 A4 */ stw r5, 0x1a4(r31) +/* 801A234C 0019F2AC 90 81 00 08 */ stw r4, 8(r1) +/* 801A2350 0019F2B0 90 7F 01 A8 */ stw r3, 0x1a8(r31) +/* 801A2354 0019F2B4 90 01 00 08 */ stw r0, 8(r1) +/* 801A2358 0019F2B8 48 00 00 1C */ b lbl_801A2374 +lbl_801A235C: +/* 801A235C 0019F2BC 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801A2360 0019F2C0 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801A2364 0019F2C4 2C 00 00 0C */ cmpwi r0, 0xc +/* 801A2368 0019F2C8 41 82 00 0C */ beq lbl_801A2374 +/* 801A236C 0019F2CC 38 00 00 04 */ li r0, 4 +/* 801A2370 0019F2D0 90 1E 05 68 */ stw r0, 0x568(r30) +lbl_801A2374: +/* 801A2374 0019F2D4 C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 801A2378 0019F2D8 D0 1E 09 68 */ stfs f0, 0x968(r30) +/* 801A237C 0019F2DC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801A2380 0019F2E0 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801A2384 0019F2E4 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801A2388 0019F2E8 7C 08 03 A6 */ mtlr r0 +/* 801A238C 0019F2EC 38 21 00 30 */ addi r1, r1, 0x30 +/* 801A2390 0019F2F0 4E 80 00 20 */ blr + +.global TargetPatrol__12CIceSheegothR13CStateManager9EStateMsgf +TargetPatrol__12CIceSheegothR13CStateManager9EStateMsgf: +/* 801A2394 0019F2F4 94 21 FE F0 */ stwu r1, -0x110(r1) +/* 801A2398 0019F2F8 7C 08 02 A6 */ mflr r0 +/* 801A239C 0019F2FC 90 01 01 14 */ stw r0, 0x114(r1) +/* 801A23A0 0019F300 DB E1 01 00 */ stfd f31, 0x100(r1) +/* 801A23A4 0019F304 F3 E1 01 08 */ psq_st f31, 264(r1), 0, qr0 +/* 801A23A8 0019F308 93 E1 00 FC */ stw r31, 0xfc(r1) +/* 801A23AC 0019F30C 93 C1 00 F8 */ stw r30, 0xf8(r1) +/* 801A23B0 0019F310 93 A1 00 F4 */ stw r29, 0xf4(r1) +/* 801A23B4 0019F314 7C BE 2B 78 */ mr r30, r5 +/* 801A23B8 0019F318 FF E0 08 90 */ fmr f31, f1 +/* 801A23BC 0019F31C 2C 1E 00 01 */ cmpwi r30, 1 +/* 801A23C0 0019F320 7C 7F 1B 78 */ mr r31, r3 +/* 801A23C4 0019F324 7C 9D 23 78 */ mr r29, r4 +/* 801A23C8 0019F328 41 82 02 10 */ beq lbl_801A25D8 +/* 801A23CC 0019F32C 40 80 03 A0 */ bge lbl_801A276C +/* 801A23D0 0019F330 2C 1E 00 00 */ cmpwi r30, 0 +/* 801A23D4 0019F334 40 80 00 08 */ bge lbl_801A23DC +/* 801A23D8 0019F338 48 00 03 94 */ b lbl_801A276C +lbl_801A23DC: +/* 801A23DC 0019F33C 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801A23E0 0019F340 38 80 00 01 */ li r4, 1 +/* 801A23E4 0019F344 4B F9 85 F5 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 801A23E8 0019F348 88 1F 04 00 */ lbz r0, 0x400(r31) +/* 801A23EC 0019F34C 38 60 00 00 */ li r3, 0 +/* 801A23F0 0019F350 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801A23F4 0019F354 7F E3 FB 78 */ mr r3, r31 +/* 801A23F8 0019F358 98 1F 04 00 */ stb r0, 0x400(r31) +/* 801A23FC 0019F35C 7F A4 EB 78 */ mr r4, r29 +/* 801A2400 0019F360 C0 22 A7 5C */ lfs f1, lbl_805AC47C@sda21(r2) +/* 801A2404 0019F364 81 9F 00 00 */ lwz r12, 0(r31) +/* 801A2408 0019F368 81 8C 01 C0 */ lwz r12, 0x1c0(r12) +/* 801A240C 0019F36C 7D 89 03 A6 */ mtctr r12 +/* 801A2410 0019F370 4E 80 04 21 */ bctrl +/* 801A2414 0019F374 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A2418 0019F378 41 82 00 28 */ beq lbl_801A2440 +/* 801A241C 0019F37C FC 20 F8 90 */ fmr f1, f31 +/* 801A2420 0019F380 7F E3 FB 78 */ mr r3, r31 +/* 801A2424 0019F384 7F A4 EB 78 */ mr r4, r29 +/* 801A2428 0019F388 7F C5 F3 78 */ mr r5, r30 +/* 801A242C 0019F38C 48 05 4A 49 */ bl Patrol__10CPatternedFR13CStateManager9EStateMsgf +/* 801A2430 0019F390 7F E3 FB 78 */ mr r3, r31 +/* 801A2434 0019F394 7F A4 EB 78 */ mr r4, r29 +/* 801A2438 0019F398 48 05 2E 59 */ bl UpdateDest__10CPatternedFR13CStateManager +/* 801A243C 0019F39C 48 00 00 10 */ b lbl_801A244C +lbl_801A2440: +/* 801A2440 0019F3A0 7F E3 FB 78 */ mr r3, r31 +/* 801A2444 0019F3A4 38 9F 03 A0 */ addi r4, r31, 0x3a0 +/* 801A2448 0019F3A8 4B ED A7 15 */ bl SetDestPos__10CPatternedFRC9CVector3f +lbl_801A244C: +/* 801A244C 0019F3AC C0 1F 02 E0 */ lfs f0, 0x2e0(r31) +/* 801A2450 0019F3B0 7F E5 FB 78 */ mr r5, r31 +/* 801A2454 0019F3B4 C0 22 A7 C8 */ lfs f1, lbl_805AC4E8@sda21(r2) +/* 801A2458 0019F3B8 38 61 00 44 */ addi r3, r1, 0x44 +/* 801A245C 0019F3BC D0 1F 09 2C */ stfs f0, 0x92c(r31) +/* 801A2460 0019F3C0 38 9F 04 5C */ addi r4, r31, 0x45c +/* 801A2464 0019F3C4 38 DF 09 2C */ addi r6, r31, 0x92c +/* 801A2468 0019F3C8 C0 1F 02 E4 */ lfs f0, 0x2e4(r31) +/* 801A246C 0019F3CC D0 1F 09 30 */ stfs f0, 0x930(r31) +/* 801A2470 0019F3D0 C0 1F 02 E8 */ lfs f0, 0x2e8(r31) +/* 801A2474 0019F3D4 D0 1F 09 34 */ stfs f0, 0x934(r31) +/* 801A2478 0019F3D8 4B F9 C6 A5 */ bl Arrival__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3ff +/* 801A247C 0019F3DC C0 41 00 44 */ lfs f2, 0x44(r1) +/* 801A2480 0019F3E0 7F E3 FB 78 */ mr r3, r31 +/* 801A2484 0019F3E4 C0 21 00 48 */ lfs f1, 0x48(r1) +/* 801A2488 0019F3E8 C0 01 00 4C */ lfs f0, 0x4c(r1) +/* 801A248C 0019F3EC D0 41 00 74 */ stfs f2, 0x74(r1) +/* 801A2490 0019F3F0 D0 21 00 78 */ stfs f1, 0x78(r1) +/* 801A2494 0019F3F4 D0 01 00 7C */ stfs f0, 0x7c(r1) +/* 801A2498 0019F3F8 81 9F 00 00 */ lwz r12, 0(r31) +/* 801A249C 0019F3FC 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801A24A0 0019F400 7D 89 03 A6 */ mtctr r12 +/* 801A24A4 0019F404 4E 80 04 21 */ bctrl +/* 801A24A8 0019F408 28 03 00 00 */ cmplwi r3, 0 +/* 801A24AC 0019F40C 41 82 00 DC */ beq lbl_801A2588 +/* 801A24B0 0019F410 7F E3 FB 78 */ mr r3, r31 +/* 801A24B4 0019F414 38 80 00 00 */ li r4, 0 +/* 801A24B8 0019F418 4B FF C9 61 */ bl sub_8019ee18 +/* 801A24BC 0019F41C FC 20 F8 90 */ fmr f1, f31 +/* 801A24C0 0019F420 7F E3 FB 78 */ mr r3, r31 +/* 801A24C4 0019F424 7F A4 EB 78 */ mr r4, r29 +/* 801A24C8 0019F428 7F C5 F3 78 */ mr r5, r30 +/* 801A24CC 0019F42C 48 05 42 01 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 801A24D0 0019F430 80 9F 04 50 */ lwz r4, 0x450(r31) +/* 801A24D4 0019F434 38 61 00 68 */ addi r3, r1, 0x68 +/* 801A24D8 0019F438 C0 04 00 04 */ lfs f0, 4(r4) +/* 801A24DC 0019F43C D0 01 00 68 */ stfs f0, 0x68(r1) +/* 801A24E0 0019F440 C0 04 00 08 */ lfs f0, 8(r4) +/* 801A24E4 0019F444 D0 01 00 6C */ stfs f0, 0x6c(r1) +/* 801A24E8 0019F448 C0 04 00 0C */ lfs f0, 0xc(r4) +/* 801A24EC 0019F44C D0 01 00 70 */ stfs f0, 0x70(r1) +/* 801A24F0 0019F450 48 17 22 09 */ bl CanBeNormalized__9CVector3fCFv +/* 801A24F4 0019F454 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A24F8 0019F458 41 82 02 74 */ beq lbl_801A276C +/* 801A24FC 0019F45C 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801A2500 0019F460 38 63 00 04 */ addi r3, r3, 4 +/* 801A2504 0019F464 4B F8 EF A5 */ bl ClearLocomotionCmds__16CBodyStateCmdMgrFv +/* 801A2508 0019F468 38 61 00 74 */ addi r3, r1, 0x74 +/* 801A250C 0019F46C 48 17 23 AD */ bl Magnitude__9CVector3fCFv +/* 801A2510 0019F470 FF E0 08 90 */ fmr f31, f1 +/* 801A2514 0019F474 38 61 00 2C */ addi r3, r1, 0x2c +/* 801A2518 0019F478 38 81 00 68 */ addi r4, r1, 0x68 +/* 801A251C 0019F47C 48 17 23 35 */ bl AsNormalized__9CVector3fCFv +/* 801A2520 0019F480 C0 01 00 34 */ lfs f0, 0x34(r1) +/* 801A2524 0019F484 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801A2528 0019F488 C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) +/* 801A252C 0019F48C 38 81 00 D4 */ addi r4, r1, 0xd4 +/* 801A2530 0019F490 EC DF 00 32 */ fmuls f6, f31, f0 +/* 801A2534 0019F494 C0 21 00 2C */ lfs f1, 0x2c(r1) +/* 801A2538 0019F498 C0 01 00 30 */ lfs f0, 0x30(r1) +/* 801A253C 0019F49C EC BF 00 72 */ fmuls f5, f31, f1 +/* 801A2540 0019F4A0 C0 43 00 04 */ lfs f2, 4(r3) +/* 801A2544 0019F4A4 EC 9F 00 32 */ fmuls f4, f31, f0 +/* 801A2548 0019F4A8 C0 23 00 08 */ lfs f1, 8(r3) +/* 801A254C 0019F4AC C0 02 A7 60 */ lfs f0, lbl_805AC480@sda21(r2) +/* 801A2550 0019F4B0 D0 A1 00 D4 */ stfs f5, 0xd4(r1) +/* 801A2554 0019F4B4 D0 81 00 D8 */ stfs f4, 0xd8(r1) +/* 801A2558 0019F4B8 D0 C1 00 DC */ stfs f6, 0xdc(r1) +/* 801A255C 0019F4BC D0 61 00 E0 */ stfs f3, 0xe0(r1) +/* 801A2560 0019F4C0 D0 41 00 E4 */ stfs f2, 0xe4(r1) +/* 801A2564 0019F4C4 D0 21 00 E8 */ stfs f1, 0xe8(r1) +/* 801A2568 0019F4C8 D0 01 00 EC */ stfs f0, 0xec(r1) +/* 801A256C 0019F4CC 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801A2570 0019F4D0 D0 A1 00 38 */ stfs f5, 0x38(r1) +/* 801A2574 0019F4D4 38 63 00 04 */ addi r3, r3, 4 +/* 801A2578 0019F4D8 D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 801A257C 0019F4DC D0 C1 00 40 */ stfs f6, 0x40(r1) +/* 801A2580 0019F4E0 4B F8 F1 99 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 801A2584 0019F4E4 48 00 01 E8 */ b lbl_801A276C +lbl_801A2588: +/* 801A2588 0019F4E8 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801A258C 0019F4EC C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) +/* 801A2590 0019F4F0 C0 C1 00 74 */ lfs f6, 0x74(r1) +/* 801A2594 0019F4F4 38 81 00 B8 */ addi r4, r1, 0xb8 +/* 801A2598 0019F4F8 C0 A1 00 78 */ lfs f5, 0x78(r1) +/* 801A259C 0019F4FC C0 81 00 7C */ lfs f4, 0x7c(r1) +/* 801A25A0 0019F500 C0 43 00 04 */ lfs f2, 4(r3) +/* 801A25A4 0019F504 C0 23 00 08 */ lfs f1, 8(r3) +/* 801A25A8 0019F508 C0 02 A7 60 */ lfs f0, lbl_805AC480@sda21(r2) +/* 801A25AC 0019F50C D0 C1 00 B8 */ stfs f6, 0xb8(r1) +/* 801A25B0 0019F510 D0 A1 00 BC */ stfs f5, 0xbc(r1) +/* 801A25B4 0019F514 D0 81 00 C0 */ stfs f4, 0xc0(r1) +/* 801A25B8 0019F518 D0 61 00 C4 */ stfs f3, 0xc4(r1) +/* 801A25BC 0019F51C D0 41 00 C8 */ stfs f2, 0xc8(r1) +/* 801A25C0 0019F520 D0 21 00 CC */ stfs f1, 0xcc(r1) +/* 801A25C4 0019F524 D0 01 00 D0 */ stfs f0, 0xd0(r1) +/* 801A25C8 0019F528 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801A25CC 0019F52C 38 63 00 04 */ addi r3, r3, 4 +/* 801A25D0 0019F530 4B F8 F1 49 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 801A25D4 0019F534 48 00 01 98 */ b lbl_801A276C +lbl_801A25D8: +/* 801A25D8 0019F538 C0 22 A7 C8 */ lfs f1, lbl_805AC4E8@sda21(r2) +/* 801A25DC 0019F53C 7F E5 FB 78 */ mr r5, r31 +/* 801A25E0 0019F540 38 61 00 20 */ addi r3, r1, 0x20 +/* 801A25E4 0019F544 38 9F 04 5C */ addi r4, r31, 0x45c +/* 801A25E8 0019F548 38 DF 09 2C */ addi r6, r31, 0x92c +/* 801A25EC 0019F54C 4B F9 C5 31 */ bl Arrival__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3ff +/* 801A25F0 0019F550 C0 41 00 20 */ lfs f2, 0x20(r1) +/* 801A25F4 0019F554 7F E3 FB 78 */ mr r3, r31 +/* 801A25F8 0019F558 C0 21 00 24 */ lfs f1, 0x24(r1) +/* 801A25FC 0019F55C C0 01 00 28 */ lfs f0, 0x28(r1) +/* 801A2600 0019F560 D0 41 00 5C */ stfs f2, 0x5c(r1) +/* 801A2604 0019F564 D0 21 00 60 */ stfs f1, 0x60(r1) +/* 801A2608 0019F568 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 801A260C 0019F56C 81 9F 00 00 */ lwz r12, 0(r31) +/* 801A2610 0019F570 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801A2614 0019F574 7D 89 03 A6 */ mtctr r12 +/* 801A2618 0019F578 4E 80 04 21 */ bctrl +/* 801A261C 0019F57C 28 03 00 00 */ cmplwi r3, 0 +/* 801A2620 0019F580 41 82 01 00 */ beq lbl_801A2720 +/* 801A2624 0019F584 7F E3 FB 78 */ mr r3, r31 +/* 801A2628 0019F588 7F A4 EB 78 */ mr r4, r29 +/* 801A262C 0019F58C 81 9F 00 00 */ lwz r12, 0(r31) +/* 801A2630 0019F590 C0 22 A7 5C */ lfs f1, lbl_805AC47C@sda21(r2) +/* 801A2634 0019F594 81 8C 01 90 */ lwz r12, 0x190(r12) +/* 801A2638 0019F598 7D 89 03 A6 */ mtctr r12 +/* 801A263C 0019F59C 4E 80 04 21 */ bctrl +/* 801A2640 0019F5A0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A2644 0019F5A4 40 82 00 DC */ bne lbl_801A2720 +/* 801A2648 0019F5A8 7F E3 FB 78 */ mr r3, r31 +/* 801A264C 0019F5AC 38 80 00 00 */ li r4, 0 +/* 801A2650 0019F5B0 4B FF C7 C9 */ bl sub_8019ee18 +/* 801A2654 0019F5B4 FC 20 F8 90 */ fmr f1, f31 +/* 801A2658 0019F5B8 7F E3 FB 78 */ mr r3, r31 +/* 801A265C 0019F5BC 7F A4 EB 78 */ mr r4, r29 +/* 801A2660 0019F5C0 7F C5 F3 78 */ mr r5, r30 +/* 801A2664 0019F5C4 48 05 40 69 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 801A2668 0019F5C8 80 9F 04 50 */ lwz r4, 0x450(r31) +/* 801A266C 0019F5CC 38 61 00 50 */ addi r3, r1, 0x50 +/* 801A2670 0019F5D0 C0 04 00 04 */ lfs f0, 4(r4) +/* 801A2674 0019F5D4 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 801A2678 0019F5D8 C0 04 00 08 */ lfs f0, 8(r4) +/* 801A267C 0019F5DC D0 01 00 54 */ stfs f0, 0x54(r1) +/* 801A2680 0019F5E0 C0 04 00 0C */ lfs f0, 0xc(r4) +/* 801A2684 0019F5E4 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 801A2688 0019F5E8 48 17 20 71 */ bl CanBeNormalized__9CVector3fCFv +/* 801A268C 0019F5EC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A2690 0019F5F0 41 82 00 DC */ beq lbl_801A276C +/* 801A2694 0019F5F4 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801A2698 0019F5F8 38 63 00 04 */ addi r3, r3, 4 +/* 801A269C 0019F5FC 4B F8 EE 0D */ bl ClearLocomotionCmds__16CBodyStateCmdMgrFv +/* 801A26A0 0019F600 38 61 00 5C */ addi r3, r1, 0x5c +/* 801A26A4 0019F604 48 17 22 15 */ bl Magnitude__9CVector3fCFv +/* 801A26A8 0019F608 FF E0 08 90 */ fmr f31, f1 +/* 801A26AC 0019F60C 38 61 00 08 */ addi r3, r1, 8 +/* 801A26B0 0019F610 38 81 00 50 */ addi r4, r1, 0x50 +/* 801A26B4 0019F614 48 17 21 9D */ bl AsNormalized__9CVector3fCFv +/* 801A26B8 0019F618 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 801A26BC 0019F61C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801A26C0 0019F620 C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) +/* 801A26C4 0019F624 38 81 00 9C */ addi r4, r1, 0x9c +/* 801A26C8 0019F628 EC DF 00 32 */ fmuls f6, f31, f0 +/* 801A26CC 0019F62C C0 21 00 08 */ lfs f1, 8(r1) +/* 801A26D0 0019F630 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 801A26D4 0019F634 EC BF 00 72 */ fmuls f5, f31, f1 +/* 801A26D8 0019F638 C0 43 00 04 */ lfs f2, 4(r3) +/* 801A26DC 0019F63C EC 9F 00 32 */ fmuls f4, f31, f0 +/* 801A26E0 0019F640 C0 23 00 08 */ lfs f1, 8(r3) +/* 801A26E4 0019F644 C0 02 A7 60 */ lfs f0, lbl_805AC480@sda21(r2) +/* 801A26E8 0019F648 D0 A1 00 9C */ stfs f5, 0x9c(r1) +/* 801A26EC 0019F64C D0 81 00 A0 */ stfs f4, 0xa0(r1) +/* 801A26F0 0019F650 D0 C1 00 A4 */ stfs f6, 0xa4(r1) +/* 801A26F4 0019F654 D0 61 00 A8 */ stfs f3, 0xa8(r1) +/* 801A26F8 0019F658 D0 41 00 AC */ stfs f2, 0xac(r1) +/* 801A26FC 0019F65C D0 21 00 B0 */ stfs f1, 0xb0(r1) +/* 801A2700 0019F660 D0 01 00 B4 */ stfs f0, 0xb4(r1) +/* 801A2704 0019F664 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801A2708 0019F668 D0 A1 00 14 */ stfs f5, 0x14(r1) +/* 801A270C 0019F66C 38 63 00 04 */ addi r3, r3, 4 +/* 801A2710 0019F670 D0 81 00 18 */ stfs f4, 0x18(r1) +/* 801A2714 0019F674 D0 C1 00 1C */ stfs f6, 0x1c(r1) +/* 801A2718 0019F678 4B F8 F0 01 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 801A271C 0019F67C 48 00 00 50 */ b lbl_801A276C +lbl_801A2720: +/* 801A2720 0019F680 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801A2724 0019F684 C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) +/* 801A2728 0019F688 C0 C1 00 5C */ lfs f6, 0x5c(r1) +/* 801A272C 0019F68C 38 81 00 80 */ addi r4, r1, 0x80 +/* 801A2730 0019F690 C0 A1 00 60 */ lfs f5, 0x60(r1) +/* 801A2734 0019F694 C0 81 00 64 */ lfs f4, 0x64(r1) +/* 801A2738 0019F698 C0 43 00 04 */ lfs f2, 4(r3) +/* 801A273C 0019F69C C0 23 00 08 */ lfs f1, 8(r3) +/* 801A2740 0019F6A0 C0 02 A7 60 */ lfs f0, lbl_805AC480@sda21(r2) +/* 801A2744 0019F6A4 D0 C1 00 80 */ stfs f6, 0x80(r1) +/* 801A2748 0019F6A8 D0 A1 00 84 */ stfs f5, 0x84(r1) +/* 801A274C 0019F6AC D0 81 00 88 */ stfs f4, 0x88(r1) +/* 801A2750 0019F6B0 D0 61 00 8C */ stfs f3, 0x8c(r1) +/* 801A2754 0019F6B4 D0 41 00 90 */ stfs f2, 0x90(r1) +/* 801A2758 0019F6B8 D0 21 00 94 */ stfs f1, 0x94(r1) +/* 801A275C 0019F6BC D0 01 00 98 */ stfs f0, 0x98(r1) +/* 801A2760 0019F6C0 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801A2764 0019F6C4 38 63 00 04 */ addi r3, r3, 4 +/* 801A2768 0019F6C8 4B F8 EF B1 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +lbl_801A276C: +/* 801A276C 0019F6CC E3 E1 01 08 */ psq_l f31, 264(r1), 0, qr0 +/* 801A2770 0019F6D0 80 01 01 14 */ lwz r0, 0x114(r1) +/* 801A2774 0019F6D4 CB E1 01 00 */ lfd f31, 0x100(r1) +/* 801A2778 0019F6D8 83 E1 00 FC */ lwz r31, 0xfc(r1) +/* 801A277C 0019F6DC 83 C1 00 F8 */ lwz r30, 0xf8(r1) +/* 801A2780 0019F6E0 83 A1 00 F4 */ lwz r29, 0xf4(r1) +/* 801A2784 0019F6E4 7C 08 03 A6 */ mtlr r0 +/* 801A2788 0019F6E8 38 21 01 10 */ addi r1, r1, 0x110 +/* 801A278C 0019F6EC 4E 80 00 20 */ blr + +.global Approach__12CIceSheegothR13CStateManager9EStateMsgf +Approach__12CIceSheegothR13CStateManager9EStateMsgf: +/* 801A2790 0019F6F0 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 801A2794 0019F6F4 7C 08 02 A6 */ mflr r0 +/* 801A2798 0019F6F8 90 01 00 84 */ stw r0, 0x84(r1) +/* 801A279C 0019F6FC DB E1 00 70 */ stfd f31, 0x70(r1) +/* 801A27A0 0019F700 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 +/* 801A27A4 0019F704 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 801A27A8 0019F708 93 C1 00 68 */ stw r30, 0x68(r1) +/* 801A27AC 0019F70C 93 A1 00 64 */ stw r29, 0x64(r1) +/* 801A27B0 0019F710 7C BD 2B 78 */ mr r29, r5 +/* 801A27B4 0019F714 FF E0 08 90 */ fmr f31, f1 +/* 801A27B8 0019F718 2C 1D 00 01 */ cmpwi r29, 1 +/* 801A27BC 0019F71C 7C 7E 1B 78 */ mr r30, r3 +/* 801A27C0 0019F720 7C 9F 23 78 */ mr r31, r4 +/* 801A27C4 0019F724 41 82 01 00 */ beq lbl_801A28C4 +/* 801A27C8 0019F728 40 80 00 10 */ bge lbl_801A27D8 +/* 801A27CC 0019F72C 2C 1D 00 00 */ cmpwi r29, 0 +/* 801A27D0 0019F730 40 80 00 14 */ bge lbl_801A27E4 +/* 801A27D4 0019F734 48 00 03 70 */ b lbl_801A2B44 +lbl_801A27D8: +/* 801A27D8 0019F738 2C 1D 00 03 */ cmpwi r29, 3 +/* 801A27DC 0019F73C 40 80 03 68 */ bge lbl_801A2B44 +/* 801A27E0 0019F740 48 00 03 44 */ b lbl_801A2B24 +lbl_801A27E4: +/* 801A27E4 0019F744 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801A27E8 0019F748 38 80 00 01 */ li r4, 1 +/* 801A27EC 0019F74C 4B F9 81 ED */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 801A27F0 0019F750 80 BF 08 4C */ lwz r5, 0x84c(r31) +/* 801A27F4 0019F754 38 7E 09 F4 */ addi r3, r30, 0x9f4 +/* 801A27F8 0019F758 38 81 00 0C */ addi r4, r1, 0xc +/* 801A27FC 0019F75C A0 05 00 08 */ lhz r0, 8(r5) +/* 801A2800 0019F760 B0 01 00 08 */ sth r0, 8(r1) +/* 801A2804 0019F764 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801A2808 0019F768 4B FD 2A 11 */ bl SetTarget__13CBoneTrackingF9TUniqueId +/* 801A280C 0019F76C 38 7E 09 F4 */ addi r3, r30, 0x9f4 +/* 801A2810 0019F770 38 80 00 01 */ li r4, 1 +/* 801A2814 0019F774 4B FD 2A 11 */ bl SetActive__13CBoneTrackingFb +/* 801A2818 0019F778 7F C3 F3 78 */ mr r3, r30 +/* 801A281C 0019F77C 7F E4 FB 78 */ mr r4, r31 +/* 801A2820 0019F780 38 BE 02 E0 */ addi r5, r30, 0x2e0 +/* 801A2824 0019F784 4B FF E2 39 */ bl sub_801a0a5c +/* 801A2828 0019F788 7F C3 F3 78 */ mr r3, r30 +/* 801A282C 0019F78C 38 80 00 00 */ li r4, 0 +/* 801A2830 0019F790 4B FF C5 E9 */ bl sub_8019ee18 +/* 801A2834 0019F794 FC 20 F8 90 */ fmr f1, f31 +/* 801A2838 0019F798 7F C3 F3 78 */ mr r3, r30 +/* 801A283C 0019F79C 7F E4 FB 78 */ mr r4, r31 +/* 801A2840 0019F7A0 38 A0 00 00 */ li r5, 0 +/* 801A2844 0019F7A4 48 05 3E 89 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 801A2848 0019F7A8 88 1E 0B 29 */ lbz r0, 0xb29(r30) +/* 801A284C 0019F7AC 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 801A2850 0019F7B0 40 82 00 10 */ bne lbl_801A2860 +/* 801A2854 0019F7B4 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801A2858 0019F7B8 38 63 00 04 */ addi r3, r3, 4 +/* 801A285C 0019F7BC 4B F8 EC 4D */ bl ClearLocomotionCmds__16CBodyStateCmdMgrFv +lbl_801A2860: +/* 801A2860 0019F7C0 88 9E 07 5C */ lbz r4, 0x75c(r30) +/* 801A2864 0019F7C4 38 60 00 01 */ li r3, 1 +/* 801A2868 0019F7C8 88 1E 0B 29 */ lbz r0, 0xb29(r30) +/* 801A286C 0019F7CC 54 84 CF FE */ rlwinm r4, r4, 0x19, 0x1f, 0x1f +/* 801A2870 0019F7D0 7C 84 00 34 */ cntlzw r4, r4 +/* 801A2874 0019F7D4 50 80 16 30 */ rlwimi r0, r4, 2, 0x18, 0x18 +/* 801A2878 0019F7D8 98 1E 0B 29 */ stb r0, 0xb29(r30) +/* 801A287C 0019F7DC 88 1E 0B 29 */ lbz r0, 0xb29(r30) +/* 801A2880 0019F7E0 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801A2884 0019F7E4 98 1E 0B 29 */ stb r0, 0xb29(r30) +/* 801A2888 0019F7E8 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 801A288C 0019F7EC C0 43 00 60 */ lfs f2, 0x60(r3) +/* 801A2890 0019F7F0 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801A2894 0019F7F4 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801A2898 0019F7F8 D0 1E 09 2C */ stfs f0, 0x92c(r30) +/* 801A289C 0019F7FC D0 3E 09 30 */ stfs f1, 0x930(r30) +/* 801A28A0 0019F800 D0 5E 09 34 */ stfs f2, 0x934(r30) +/* 801A28A4 0019F804 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 801A28A8 0019F808 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 801A28AC 0019F80C C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801A28B0 0019F810 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 801A28B4 0019F814 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 801A28B8 0019F818 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 801A28BC 0019F81C D0 5E 09 34 */ stfs f2, 0x934(r30) +/* 801A28C0 0019F820 48 00 02 84 */ b lbl_801A2B44 +lbl_801A28C4: +/* 801A28C4 0019F824 38 80 00 01 */ li r4, 1 +/* 801A28C8 0019F828 4B FF C5 51 */ bl sub_8019ee18 +/* 801A28CC 0019F82C 88 1E 0B 29 */ lbz r0, 0xb29(r30) +/* 801A28D0 0019F830 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801A28D4 0019F834 41 82 00 E8 */ beq lbl_801A29BC +/* 801A28D8 0019F838 C0 1E 09 2C */ lfs f0, 0x92c(r30) +/* 801A28DC 0019F83C 38 7E 08 44 */ addi r3, r30, 0x844 +/* 801A28E0 0019F840 38 81 00 1C */ addi r4, r1, 0x1c +/* 801A28E4 0019F844 38 BE 02 E0 */ addi r5, r30, 0x2e0 +/* 801A28E8 0019F848 D0 1E 02 E0 */ stfs f0, 0x2e0(r30) +/* 801A28EC 0019F84C C0 1E 09 30 */ lfs f0, 0x930(r30) +/* 801A28F0 0019F850 D0 1E 02 E4 */ stfs f0, 0x2e4(r30) +/* 801A28F4 0019F854 C0 1E 09 34 */ lfs f0, 0x934(r30) +/* 801A28F8 0019F858 D0 1E 02 E8 */ stfs f0, 0x2e8(r30) +/* 801A28FC 0019F85C C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 801A2900 0019F860 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 801A2904 0019F864 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801A2908 0019F868 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801A290C 0019F86C D0 21 00 20 */ stfs f1, 0x20(r1) +/* 801A2910 0019F870 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 801A2914 0019F874 48 02 47 E9 */ bl FindClosestReachablePoint__15CPathFindSearchCFRC9CVector3fR9CVector3f +/* 801A2918 0019F878 2C 03 00 00 */ cmpwi r3, 0 +/* 801A291C 0019F87C 40 82 00 90 */ bne lbl_801A29AC +/* 801A2920 0019F880 C0 BE 00 50 */ lfs f5, 0x50(r30) +/* 801A2924 0019F884 C0 1E 02 E4 */ lfs f0, 0x2e4(r30) +/* 801A2928 0019F888 C0 DE 00 40 */ lfs f6, 0x40(r30) +/* 801A292C 0019F88C EC 20 28 28 */ fsubs f1, f0, f5 +/* 801A2930 0019F890 C0 1E 02 E0 */ lfs f0, 0x2e0(r30) +/* 801A2934 0019F894 C0 9E 00 60 */ lfs f4, 0x60(r30) +/* 801A2938 0019F898 EC 60 30 28 */ fsubs f3, f0, f6 +/* 801A293C 0019F89C C0 1E 02 E8 */ lfs f0, 0x2e8(r30) +/* 801A2940 0019F8A0 EC 21 00 72 */ fmuls f1, f1, f1 +/* 801A2944 0019F8A4 EC 40 20 28 */ fsubs f2, f0, f4 +/* 801A2948 0019F8A8 C0 02 A7 D0 */ lfs f0, lbl_805AC4F0@sda21(r2) +/* 801A294C 0019F8AC EC 23 08 FA */ fmadds f1, f3, f3, f1 +/* 801A2950 0019F8B0 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 801A2954 0019F8B4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801A2958 0019F8B8 40 80 00 10 */ bge lbl_801A2968 +/* 801A295C 0019F8BC D0 DE 02 E0 */ stfs f6, 0x2e0(r30) +/* 801A2960 0019F8C0 D0 BE 02 E4 */ stfs f5, 0x2e4(r30) +/* 801A2964 0019F8C4 D0 9E 02 E8 */ stfs f4, 0x2e8(r30) +lbl_801A2968: +/* 801A2968 0019F8C8 C0 1E 02 E0 */ lfs f0, 0x2e0(r30) +/* 801A296C 0019F8CC FC 20 F8 90 */ fmr f1, f31 +/* 801A2970 0019F8D0 7F C3 F3 78 */ mr r3, r30 +/* 801A2974 0019F8D4 7F E4 FB 78 */ mr r4, r31 +/* 801A2978 0019F8D8 D0 1E 09 2C */ stfs f0, 0x92c(r30) +/* 801A297C 0019F8DC 38 A0 00 00 */ li r5, 0 +/* 801A2980 0019F8E0 C0 1E 02 E4 */ lfs f0, 0x2e4(r30) +/* 801A2984 0019F8E4 D0 1E 09 30 */ stfs f0, 0x930(r30) +/* 801A2988 0019F8E8 C0 1E 02 E8 */ lfs f0, 0x2e8(r30) +/* 801A298C 0019F8EC D0 1E 09 34 */ stfs f0, 0x934(r30) +/* 801A2990 0019F8F0 48 05 3D 3D */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 801A2994 0019F8F4 88 1E 0B 29 */ lbz r0, 0xb29(r30) +/* 801A2998 0019F8F8 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 801A299C 0019F8FC 40 82 00 10 */ bne lbl_801A29AC +/* 801A29A0 0019F900 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801A29A4 0019F904 38 63 00 04 */ addi r3, r3, 4 +/* 801A29A8 0019F908 4B F8 EB 01 */ bl ClearLocomotionCmds__16CBodyStateCmdMgrFv +lbl_801A29AC: +/* 801A29AC 0019F90C 88 1E 0B 29 */ lbz r0, 0xb29(r30) +/* 801A29B0 0019F910 38 60 00 00 */ li r3, 0 +/* 801A29B4 0019F914 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801A29B8 0019F918 98 1E 0B 29 */ stb r0, 0xb29(r30) +lbl_801A29BC: +/* 801A29BC 0019F91C 88 1E 0B 29 */ lbz r0, 0xb29(r30) +/* 801A29C0 0019F920 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 801A29C4 0019F924 41 82 00 70 */ beq lbl_801A2A34 +/* 801A29C8 0019F928 7F C3 F3 78 */ mr r3, r30 +/* 801A29CC 0019F92C 81 9E 00 00 */ lwz r12, 0(r30) +/* 801A29D0 0019F930 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801A29D4 0019F934 7D 89 03 A6 */ mtctr r12 +/* 801A29D8 0019F938 4E 80 04 21 */ bctrl +/* 801A29DC 0019F93C 28 03 00 00 */ cmplwi r3, 0 +/* 801A29E0 0019F940 41 82 00 54 */ beq lbl_801A2A34 +/* 801A29E4 0019F944 7F C3 F3 78 */ mr r3, r30 +/* 801A29E8 0019F948 7F E4 FB 78 */ mr r4, r31 +/* 801A29EC 0019F94C 81 9E 00 00 */ lwz r12, 0(r30) +/* 801A29F0 0019F950 C0 22 A7 5C */ lfs f1, lbl_805AC47C@sda21(r2) +/* 801A29F4 0019F954 81 8C 01 90 */ lwz r12, 0x190(r12) +/* 801A29F8 0019F958 7D 89 03 A6 */ mtctr r12 +/* 801A29FC 0019F95C 4E 80 04 21 */ bctrl +/* 801A2A00 0019F960 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A2A04 0019F964 40 82 00 30 */ bne lbl_801A2A34 +/* 801A2A08 0019F968 80 7E 08 48 */ lwz r3, 0x848(r30) +/* 801A2A0C 0019F96C 80 9E 09 0C */ lwz r4, 0x90c(r30) +/* 801A2A10 0019F970 38 03 FF FF */ addi r0, r3, -1 +/* 801A2A14 0019F974 7C 04 00 00 */ cmpw r4, r0 +/* 801A2A18 0019F978 40 80 00 1C */ bge lbl_801A2A34 +/* 801A2A1C 0019F97C FC 20 F8 90 */ fmr f1, f31 +/* 801A2A20 0019F980 7F C3 F3 78 */ mr r3, r30 +/* 801A2A24 0019F984 7F E4 FB 78 */ mr r4, r31 +/* 801A2A28 0019F988 7F A5 EB 78 */ mr r5, r29 +/* 801A2A2C 0019F98C 48 05 3C A1 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 801A2A30 0019F990 48 00 00 B8 */ b lbl_801A2AE8 +lbl_801A2A34: +/* 801A2A34 0019F994 80 BF 08 4C */ lwz r5, 0x84c(r31) +/* 801A2A38 0019F998 7F C3 F3 78 */ mr r3, r30 +/* 801A2A3C 0019F99C C0 1E 00 50 */ lfs f0, 0x50(r30) +/* 801A2A40 0019F9A0 7F E4 FB 78 */ mr r4, r31 +/* 801A2A44 0019F9A4 C0 45 00 50 */ lfs f2, 0x50(r5) +/* 801A2A48 0019F9A8 C0 65 00 60 */ lfs f3, 0x60(r5) +/* 801A2A4C 0019F9AC C0 3E 00 60 */ lfs f1, 0x60(r30) +/* 801A2A50 0019F9B0 EC 82 00 28 */ fsubs f4, f2, f0 +/* 801A2A54 0019F9B4 C0 45 00 40 */ lfs f2, 0x40(r5) +/* 801A2A58 0019F9B8 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801A2A5C 0019F9BC EC 63 08 28 */ fsubs f3, f3, f1 +/* 801A2A60 0019F9C0 C0 22 A7 C4 */ lfs f1, lbl_805AC4E4@sda21(r2) +/* 801A2A64 0019F9C4 EC 02 00 28 */ fsubs f0, f2, f0 +/* 801A2A68 0019F9C8 D0 81 00 38 */ stfs f4, 0x38(r1) +/* 801A2A6C 0019F9CC D0 61 00 3C */ stfs f3, 0x3c(r1) +/* 801A2A70 0019F9D0 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801A2A74 0019F9D4 4B FF C2 69 */ bl sub_8019ecdc +/* 801A2A78 0019F9D8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A2A7C 0019F9DC 41 82 00 6C */ beq lbl_801A2AE8 +/* 801A2A80 0019F9E0 38 61 00 34 */ addi r3, r1, 0x34 +/* 801A2A84 0019F9E4 48 17 1C 75 */ bl CanBeNormalized__9CVector3fCFv +/* 801A2A88 0019F9E8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A2A8C 0019F9EC 41 82 00 5C */ beq lbl_801A2AE8 +/* 801A2A90 0019F9F0 38 61 00 10 */ addi r3, r1, 0x10 +/* 801A2A94 0019F9F4 38 81 00 34 */ addi r4, r1, 0x34 +/* 801A2A98 0019F9F8 48 17 1D B9 */ bl AsNormalized__9CVector3fCFv +/* 801A2A9C 0019F9FC 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801A2AA0 0019FA00 C4 C3 66 A0 */ lfsu f6, skZero3f@l(r3) +/* 801A2AA4 0019FA04 C0 61 00 10 */ lfs f3, 0x10(r1) +/* 801A2AA8 0019FA08 38 81 00 40 */ addi r4, r1, 0x40 +/* 801A2AAC 0019FA0C C0 41 00 14 */ lfs f2, 0x14(r1) +/* 801A2AB0 0019FA10 C0 A3 00 04 */ lfs f5, 4(r3) +/* 801A2AB4 0019FA14 C0 83 00 08 */ lfs f4, 8(r3) +/* 801A2AB8 0019FA18 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 801A2ABC 0019FA1C C0 02 A7 60 */ lfs f0, lbl_805AC480@sda21(r2) +/* 801A2AC0 0019FA20 D0 C1 00 40 */ stfs f6, 0x40(r1) +/* 801A2AC4 0019FA24 D0 A1 00 44 */ stfs f5, 0x44(r1) +/* 801A2AC8 0019FA28 D0 81 00 48 */ stfs f4, 0x48(r1) +/* 801A2ACC 0019FA2C D0 61 00 4C */ stfs f3, 0x4c(r1) +/* 801A2AD0 0019FA30 D0 41 00 50 */ stfs f2, 0x50(r1) +/* 801A2AD4 0019FA34 D0 21 00 54 */ stfs f1, 0x54(r1) +/* 801A2AD8 0019FA38 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 801A2ADC 0019FA3C 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801A2AE0 0019FA40 38 63 00 04 */ addi r3, r3, 4 +/* 801A2AE4 0019FA44 4B F8 EC 35 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +lbl_801A2AE8: +/* 801A2AE8 0019FA48 88 1E 0B 29 */ lbz r0, 0xb29(r30) +/* 801A2AEC 0019FA4C 38 60 00 01 */ li r3, 1 +/* 801A2AF0 0019FA50 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801A2AF4 0019FA54 98 1E 0B 29 */ stb r0, 0xb29(r30) +/* 801A2AF8 0019FA58 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801A2AFC 0019FA5C 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801A2B00 0019FA60 2C 00 00 08 */ cmpwi r0, 8 +/* 801A2B04 0019FA64 40 82 00 0C */ bne lbl_801A2B10 +/* 801A2B08 0019FA68 C0 22 A7 74 */ lfs f1, lbl_805AC494@sda21(r2) +/* 801A2B0C 0019FA6C 48 00 00 08 */ b lbl_801A2B14 +lbl_801A2B10: +/* 801A2B10 0019FA70 C0 22 A7 60 */ lfs f1, lbl_805AC480@sda21(r2) +lbl_801A2B14: +/* 801A2B14 0019FA74 C0 1E 09 4C */ lfs f0, 0x94c(r30) +/* 801A2B18 0019FA78 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801A2B1C 0019FA7C D0 1E 03 B4 */ stfs f0, 0x3b4(r30) +/* 801A2B20 0019FA80 48 00 00 24 */ b lbl_801A2B44 +lbl_801A2B24: +/* 801A2B24 0019FA84 38 7E 09 F4 */ addi r3, r30, 0x9f4 +/* 801A2B28 0019FA88 38 80 00 00 */ li r4, 0 +/* 801A2B2C 0019FA8C 4B FD 26 F9 */ bl SetActive__13CBoneTrackingFb +/* 801A2B30 0019FA90 7F C3 F3 78 */ mr r3, r30 +/* 801A2B34 0019FA94 38 80 00 00 */ li r4, 0 +/* 801A2B38 0019FA98 4B FF C2 E1 */ bl sub_8019ee18 +/* 801A2B3C 0019FA9C C0 1E 09 4C */ lfs f0, 0x94c(r30) +/* 801A2B40 0019FAA0 D0 1E 03 B4 */ stfs f0, 0x3b4(r30) +lbl_801A2B44: +/* 801A2B44 0019FAA4 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 +/* 801A2B48 0019FAA8 80 01 00 84 */ lwz r0, 0x84(r1) +/* 801A2B4C 0019FAAC CB E1 00 70 */ lfd f31, 0x70(r1) +/* 801A2B50 0019FAB0 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 801A2B54 0019FAB4 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 801A2B58 0019FAB8 83 A1 00 64 */ lwz r29, 0x64(r1) +/* 801A2B5C 0019FABC 7C 08 03 A6 */ mtlr r0 +/* 801A2B60 0019FAC0 38 21 00 80 */ addi r1, r1, 0x80 +/* 801A2B64 0019FAC4 4E 80 00 20 */ blr + +.global PathFind__12CIceSheegothR13CStateManager9EStateMsgf +PathFind__12CIceSheegothR13CStateManager9EStateMsgf: +/* 801A2B68 0019FAC8 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 801A2B6C 0019FACC 7C 08 02 A6 */ mflr r0 +/* 801A2B70 0019FAD0 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 801A2B74 0019FAD4 DB E1 00 90 */ stfd f31, 0x90(r1) +/* 801A2B78 0019FAD8 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 +/* 801A2B7C 0019FADC 93 E1 00 8C */ stw r31, 0x8c(r1) +/* 801A2B80 0019FAE0 93 C1 00 88 */ stw r30, 0x88(r1) +/* 801A2B84 0019FAE4 93 A1 00 84 */ stw r29, 0x84(r1) +/* 801A2B88 0019FAE8 7C BE 2B 78 */ mr r30, r5 +/* 801A2B8C 0019FAEC FF E0 08 90 */ fmr f31, f1 +/* 801A2B90 0019FAF0 2C 1E 00 01 */ cmpwi r30, 1 +/* 801A2B94 0019FAF4 7C 7F 1B 78 */ mr r31, r3 +/* 801A2B98 0019FAF8 7C 9D 23 78 */ mr r29, r4 +/* 801A2B9C 0019FAFC 41 82 00 B8 */ beq lbl_801A2C54 +/* 801A2BA0 0019FB00 40 80 00 10 */ bge lbl_801A2BB0 +/* 801A2BA4 0019FB04 2C 1E 00 00 */ cmpwi r30, 0 +/* 801A2BA8 0019FB08 40 80 00 14 */ bge lbl_801A2BBC +/* 801A2BAC 0019FB0C 48 00 02 D4 */ b lbl_801A2E80 +lbl_801A2BB0: +/* 801A2BB0 0019FB10 2C 1E 00 03 */ cmpwi r30, 3 +/* 801A2BB4 0019FB14 40 80 02 CC */ bge lbl_801A2E80 +/* 801A2BB8 0019FB18 48 00 02 B4 */ b lbl_801A2E6C +lbl_801A2BBC: +/* 801A2BBC 0019FB1C 88 1F 0B 28 */ lbz r0, 0xb28(r31) +/* 801A2BC0 0019FB20 38 60 00 00 */ li r3, 0 +/* 801A2BC4 0019FB24 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801A2BC8 0019FB28 C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 801A2BCC 0019FB2C 98 1F 0B 28 */ stb r0, 0xb28(r31) +/* 801A2BD0 0019FB30 38 80 00 01 */ li r4, 1 +/* 801A2BD4 0019FB34 88 1F 0B 29 */ lbz r0, 0xb29(r31) +/* 801A2BD8 0019FB38 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801A2BDC 0019FB3C 98 1F 0B 29 */ stb r0, 0xb29(r31) +/* 801A2BE0 0019FB40 D0 1F 09 68 */ stfs f0, 0x968(r31) +/* 801A2BE4 0019FB44 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801A2BE8 0019FB48 4B F9 7D F1 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 801A2BEC 0019FB4C 80 BD 08 4C */ lwz r5, 0x84c(r29) +/* 801A2BF0 0019FB50 38 7F 09 F4 */ addi r3, r31, 0x9f4 +/* 801A2BF4 0019FB54 38 81 00 0C */ addi r4, r1, 0xc +/* 801A2BF8 0019FB58 A0 05 00 08 */ lhz r0, 8(r5) +/* 801A2BFC 0019FB5C B0 01 00 08 */ sth r0, 8(r1) +/* 801A2C00 0019FB60 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801A2C04 0019FB64 4B FD 26 15 */ bl SetTarget__13CBoneTrackingF9TUniqueId +/* 801A2C08 0019FB68 38 7F 09 F4 */ addi r3, r31, 0x9f4 +/* 801A2C0C 0019FB6C 38 80 00 01 */ li r4, 1 +/* 801A2C10 0019FB70 4B FD 26 15 */ bl SetActive__13CBoneTrackingFb +/* 801A2C14 0019FB74 7F E3 FB 78 */ mr r3, r31 +/* 801A2C18 0019FB78 7F A4 EB 78 */ mr r4, r29 +/* 801A2C1C 0019FB7C 38 BF 02 E0 */ addi r5, r31, 0x2e0 +/* 801A2C20 0019FB80 4B FF DE 3D */ bl sub_801a0a5c +/* 801A2C24 0019FB84 7F E3 FB 78 */ mr r3, r31 +/* 801A2C28 0019FB88 38 80 00 00 */ li r4, 0 +/* 801A2C2C 0019FB8C 4B FF C1 ED */ bl sub_8019ee18 +/* 801A2C30 0019FB90 88 1F 07 5C */ lbz r0, 0x75c(r31) +/* 801A2C34 0019FB94 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801A2C38 0019FB98 40 82 02 48 */ bne lbl_801A2E80 +/* 801A2C3C 0019FB9C FC 20 F8 90 */ fmr f1, f31 +/* 801A2C40 0019FBA0 7F E3 FB 78 */ mr r3, r31 +/* 801A2C44 0019FBA4 7F A4 EB 78 */ mr r4, r29 +/* 801A2C48 0019FBA8 7F C5 F3 78 */ mr r5, r30 +/* 801A2C4C 0019FBAC 48 05 3A 81 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 801A2C50 0019FBB0 48 00 02 30 */ b lbl_801A2E80 +lbl_801A2C54: +/* 801A2C54 0019FBB4 38 80 00 00 */ li r4, 0 +/* 801A2C58 0019FBB8 4B FF C1 C1 */ bl sub_8019ee18 +/* 801A2C5C 0019FBBC 88 1F 07 5C */ lbz r0, 0x75c(r31) +/* 801A2C60 0019FBC0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801A2C64 0019FBC4 40 82 01 28 */ bne lbl_801A2D8C +/* 801A2C68 0019FBC8 7F E3 FB 78 */ mr r3, r31 +/* 801A2C6C 0019FBCC 81 9F 00 00 */ lwz r12, 0(r31) +/* 801A2C70 0019FBD0 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801A2C74 0019FBD4 7D 89 03 A6 */ mtctr r12 +/* 801A2C78 0019FBD8 4E 80 04 21 */ bctrl +/* 801A2C7C 0019FBDC 28 03 00 00 */ cmplwi r3, 0 +/* 801A2C80 0019FBE0 41 82 01 0C */ beq lbl_801A2D8C +/* 801A2C84 0019FBE4 7F E3 FB 78 */ mr r3, r31 +/* 801A2C88 0019FBE8 7F A4 EB 78 */ mr r4, r29 +/* 801A2C8C 0019FBEC 81 9F 00 00 */ lwz r12, 0(r31) +/* 801A2C90 0019FBF0 C0 22 A7 5C */ lfs f1, lbl_805AC47C@sda21(r2) +/* 801A2C94 0019FBF4 81 8C 01 90 */ lwz r12, 0x190(r12) +/* 801A2C98 0019FBF8 7D 89 03 A6 */ mtctr r12 +/* 801A2C9C 0019FBFC 4E 80 04 21 */ bctrl +/* 801A2CA0 0019FC00 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A2CA4 0019FC04 40 82 00 E8 */ bne lbl_801A2D8C +/* 801A2CA8 0019FC08 80 7F 07 64 */ lwz r3, 0x764(r31) +/* 801A2CAC 0019FC0C 80 9F 08 28 */ lwz r4, 0x828(r31) +/* 801A2CB0 0019FC10 38 03 FF FF */ addi r0, r3, -1 +/* 801A2CB4 0019FC14 7C 04 00 00 */ cmpw r4, r0 +/* 801A2CB8 0019FC18 40 80 00 D4 */ bge lbl_801A2D8C +/* 801A2CBC 0019FC1C FC 20 F8 90 */ fmr f1, f31 +/* 801A2CC0 0019FC20 7F E3 FB 78 */ mr r3, r31 +/* 801A2CC4 0019FC24 7F A4 EB 78 */ mr r4, r29 +/* 801A2CC8 0019FC28 7F C5 F3 78 */ mr r5, r30 +/* 801A2CCC 0019FC2C 48 05 3A 01 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 801A2CD0 0019FC30 C0 62 A7 5C */ lfs f3, lbl_805AC47C@sda21(r2) +/* 801A2CD4 0019FC34 D0 7F 09 68 */ stfs f3, 0x968(r31) +/* 801A2CD8 0019FC38 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801A2CDC 0019FC3C C0 BF 00 58 */ lfs f5, 0x58(r31) +/* 801A2CE0 0019FC40 C0 1F 00 48 */ lfs f0, 0x48(r31) +/* 801A2CE4 0019FC44 C0 9F 00 38 */ lfs f4, 0x38(r31) +/* 801A2CE8 0019FC48 C0 43 00 04 */ lfs f2, 4(r3) +/* 801A2CEC 0019FC4C D0 41 00 34 */ stfs f2, 0x34(r1) +/* 801A2CF0 0019FC50 C0 23 00 08 */ lfs f1, 8(r3) +/* 801A2CF4 0019FC54 EC 00 00 72 */ fmuls f0, f0, f1 +/* 801A2CF8 0019FC58 D0 21 00 38 */ stfs f1, 0x38(r1) +/* 801A2CFC 0019FC5C C0 23 00 0C */ lfs f1, 0xc(r3) +/* 801A2D00 0019FC60 EC 04 00 BA */ fmadds f0, f4, f2, f0 +/* 801A2D04 0019FC64 D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 801A2D08 0019FC68 EC 05 00 7A */ fmadds f0, f5, f1, f0 +/* 801A2D0C 0019FC6C FC 00 18 40 */ fcmpo cr0, f0, f3 +/* 801A2D10 0019FC70 40 80 01 30 */ bge lbl_801A2E40 +/* 801A2D14 0019FC74 38 61 00 34 */ addi r3, r1, 0x34 +/* 801A2D18 0019FC78 48 17 19 E1 */ bl CanBeNormalized__9CVector3fCFv +/* 801A2D1C 0019FC7C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A2D20 0019FC80 41 82 01 20 */ beq lbl_801A2E40 +/* 801A2D24 0019FC84 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801A2D28 0019FC88 38 63 00 04 */ addi r3, r3, 4 +/* 801A2D2C 0019FC8C 4B F8 E7 7D */ bl ClearLocomotionCmds__16CBodyStateCmdMgrFv +/* 801A2D30 0019FC90 38 61 00 1C */ addi r3, r1, 0x1c +/* 801A2D34 0019FC94 38 81 00 34 */ addi r4, r1, 0x34 +/* 801A2D38 0019FC98 48 17 1B 19 */ bl AsNormalized__9CVector3fCFv +/* 801A2D3C 0019FC9C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801A2D40 0019FCA0 C4 C3 66 A0 */ lfsu f6, skZero3f@l(r3) +/* 801A2D44 0019FCA4 C0 61 00 1C */ lfs f3, 0x1c(r1) +/* 801A2D48 0019FCA8 38 81 00 5C */ addi r4, r1, 0x5c +/* 801A2D4C 0019FCAC C0 41 00 20 */ lfs f2, 0x20(r1) +/* 801A2D50 0019FCB0 C0 A3 00 04 */ lfs f5, 4(r3) +/* 801A2D54 0019FCB4 C0 83 00 08 */ lfs f4, 8(r3) +/* 801A2D58 0019FCB8 C0 21 00 24 */ lfs f1, 0x24(r1) +/* 801A2D5C 0019FCBC C0 02 A7 60 */ lfs f0, lbl_805AC480@sda21(r2) +/* 801A2D60 0019FCC0 D0 C1 00 5C */ stfs f6, 0x5c(r1) +/* 801A2D64 0019FCC4 D0 A1 00 60 */ stfs f5, 0x60(r1) +/* 801A2D68 0019FCC8 D0 81 00 64 */ stfs f4, 0x64(r1) +/* 801A2D6C 0019FCCC D0 61 00 68 */ stfs f3, 0x68(r1) +/* 801A2D70 0019FCD0 D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 801A2D74 0019FCD4 D0 21 00 70 */ stfs f1, 0x70(r1) +/* 801A2D78 0019FCD8 D0 01 00 74 */ stfs f0, 0x74(r1) +/* 801A2D7C 0019FCDC 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801A2D80 0019FCE0 38 63 00 04 */ addi r3, r3, 4 +/* 801A2D84 0019FCE4 4B F8 E9 95 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 801A2D88 0019FCE8 48 00 00 B8 */ b lbl_801A2E40 +lbl_801A2D8C: +/* 801A2D8C 0019FCEC 80 BD 08 4C */ lwz r5, 0x84c(r29) +/* 801A2D90 0019FCF0 7F E3 FB 78 */ mr r3, r31 +/* 801A2D94 0019FCF4 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 801A2D98 0019FCF8 7F A4 EB 78 */ mr r4, r29 +/* 801A2D9C 0019FCFC C0 45 00 50 */ lfs f2, 0x50(r5) +/* 801A2DA0 0019FD00 C0 65 00 60 */ lfs f3, 0x60(r5) +/* 801A2DA4 0019FD04 C0 3F 00 60 */ lfs f1, 0x60(r31) +/* 801A2DA8 0019FD08 EC 82 00 28 */ fsubs f4, f2, f0 +/* 801A2DAC 0019FD0C C0 45 00 40 */ lfs f2, 0x40(r5) +/* 801A2DB0 0019FD10 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801A2DB4 0019FD14 EC 63 08 28 */ fsubs f3, f3, f1 +/* 801A2DB8 0019FD18 C0 22 A7 C4 */ lfs f1, lbl_805AC4E4@sda21(r2) +/* 801A2DBC 0019FD1C EC 02 00 28 */ fsubs f0, f2, f0 +/* 801A2DC0 0019FD20 D0 81 00 2C */ stfs f4, 0x2c(r1) +/* 801A2DC4 0019FD24 D0 61 00 30 */ stfs f3, 0x30(r1) +/* 801A2DC8 0019FD28 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 801A2DCC 0019FD2C 4B FF BF 11 */ bl sub_8019ecdc +/* 801A2DD0 0019FD30 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A2DD4 0019FD34 41 82 00 6C */ beq lbl_801A2E40 +/* 801A2DD8 0019FD38 38 61 00 28 */ addi r3, r1, 0x28 +/* 801A2DDC 0019FD3C 48 17 19 1D */ bl CanBeNormalized__9CVector3fCFv +/* 801A2DE0 0019FD40 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A2DE4 0019FD44 41 82 00 5C */ beq lbl_801A2E40 +/* 801A2DE8 0019FD48 38 61 00 10 */ addi r3, r1, 0x10 +/* 801A2DEC 0019FD4C 38 81 00 28 */ addi r4, r1, 0x28 +/* 801A2DF0 0019FD50 48 17 1A 61 */ bl AsNormalized__9CVector3fCFv +/* 801A2DF4 0019FD54 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801A2DF8 0019FD58 C4 C3 66 A0 */ lfsu f6, skZero3f@l(r3) +/* 801A2DFC 0019FD5C C0 61 00 10 */ lfs f3, 0x10(r1) +/* 801A2E00 0019FD60 38 81 00 40 */ addi r4, r1, 0x40 +/* 801A2E04 0019FD64 C0 41 00 14 */ lfs f2, 0x14(r1) +/* 801A2E08 0019FD68 C0 A3 00 04 */ lfs f5, 4(r3) +/* 801A2E0C 0019FD6C C0 83 00 08 */ lfs f4, 8(r3) +/* 801A2E10 0019FD70 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 801A2E14 0019FD74 C0 02 A7 60 */ lfs f0, lbl_805AC480@sda21(r2) +/* 801A2E18 0019FD78 D0 C1 00 40 */ stfs f6, 0x40(r1) +/* 801A2E1C 0019FD7C D0 A1 00 44 */ stfs f5, 0x44(r1) +/* 801A2E20 0019FD80 D0 81 00 48 */ stfs f4, 0x48(r1) +/* 801A2E24 0019FD84 D0 61 00 4C */ stfs f3, 0x4c(r1) +/* 801A2E28 0019FD88 D0 41 00 50 */ stfs f2, 0x50(r1) +/* 801A2E2C 0019FD8C D0 21 00 54 */ stfs f1, 0x54(r1) +/* 801A2E30 0019FD90 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 801A2E34 0019FD94 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801A2E38 0019FD98 38 63 00 04 */ addi r3, r3, 4 +/* 801A2E3C 0019FD9C 4B F8 E8 DD */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +lbl_801A2E40: +/* 801A2E40 0019FDA0 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801A2E44 0019FDA4 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801A2E48 0019FDA8 2C 00 00 08 */ cmpwi r0, 8 +/* 801A2E4C 0019FDAC 40 82 00 0C */ bne lbl_801A2E58 +/* 801A2E50 0019FDB0 C0 22 A7 74 */ lfs f1, lbl_805AC494@sda21(r2) +/* 801A2E54 0019FDB4 48 00 00 08 */ b lbl_801A2E5C +lbl_801A2E58: +/* 801A2E58 0019FDB8 C0 22 A7 60 */ lfs f1, lbl_805AC480@sda21(r2) +lbl_801A2E5C: +/* 801A2E5C 0019FDBC C0 1F 09 4C */ lfs f0, 0x94c(r31) +/* 801A2E60 0019FDC0 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801A2E64 0019FDC4 D0 1F 03 B4 */ stfs f0, 0x3b4(r31) +/* 801A2E68 0019FDC8 48 00 00 18 */ b lbl_801A2E80 +lbl_801A2E6C: +/* 801A2E6C 0019FDCC 38 7F 09 F4 */ addi r3, r31, 0x9f4 +/* 801A2E70 0019FDD0 38 80 00 00 */ li r4, 0 +/* 801A2E74 0019FDD4 4B FD 23 B1 */ bl SetActive__13CBoneTrackingFb +/* 801A2E78 0019FDD8 C0 1F 09 4C */ lfs f0, 0x94c(r31) +/* 801A2E7C 0019FDDC D0 1F 03 B4 */ stfs f0, 0x3b4(r31) +lbl_801A2E80: +/* 801A2E80 0019FDE0 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 +/* 801A2E84 0019FDE4 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 801A2E88 0019FDE8 CB E1 00 90 */ lfd f31, 0x90(r1) +/* 801A2E8C 0019FDEC 83 E1 00 8C */ lwz r31, 0x8c(r1) +/* 801A2E90 0019FDF0 83 C1 00 88 */ lwz r30, 0x88(r1) +/* 801A2E94 0019FDF4 83 A1 00 84 */ lwz r29, 0x84(r1) +/* 801A2E98 0019FDF8 7C 08 03 A6 */ mtlr r0 +/* 801A2E9C 0019FDFC 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 801A2EA0 0019FE00 4E 80 00 20 */ blr + +.global DoubleSnap__12CIceSheegothR13CStateManager9EStateMsgf +DoubleSnap__12CIceSheegothR13CStateManager9EStateMsgf: +/* 801A2EA4 0019FE04 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801A2EA8 0019FE08 7C 08 02 A6 */ mflr r0 +/* 801A2EAC 0019FE0C 2C 05 00 01 */ cmpwi r5, 1 +/* 801A2EB0 0019FE10 90 01 00 34 */ stw r0, 0x34(r1) +/* 801A2EB4 0019FE14 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801A2EB8 0019FE18 7C 7F 1B 78 */ mr r31, r3 +/* 801A2EBC 0019FE1C 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801A2EC0 0019FE20 7C 9E 23 78 */ mr r30, r4 +/* 801A2EC4 0019FE24 41 82 00 4C */ beq lbl_801A2F10 +/* 801A2EC8 0019FE28 40 80 00 10 */ bge lbl_801A2ED8 +/* 801A2ECC 0019FE2C 2C 05 00 00 */ cmpwi r5, 0 +/* 801A2ED0 0019FE30 40 80 00 14 */ bge lbl_801A2EE4 +/* 801A2ED4 0019FE34 48 00 01 B8 */ b lbl_801A308C +lbl_801A2ED8: +/* 801A2ED8 0019FE38 2C 05 00 03 */ cmpwi r5, 3 +/* 801A2EDC 0019FE3C 40 80 01 B0 */ bge lbl_801A308C +/* 801A2EE0 0019FE40 48 00 01 44 */ b lbl_801A3024 +lbl_801A2EE4: +/* 801A2EE4 0019FE44 38 00 00 00 */ li r0, 0 +/* 801A2EE8 0019FE48 38 60 00 01 */ li r3, 1 +/* 801A2EEC 0019FE4C 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801A2EF0 0019FE50 88 1F 0B 28 */ lbz r0, 0xb28(r31) +/* 801A2EF4 0019FE54 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801A2EF8 0019FE58 98 1F 0B 28 */ stb r0, 0xb28(r31) +/* 801A2EFC 0019FE5C 54 03 F7 FE */ rlwinm r3, r0, 0x1e, 0x1f, 0x1f +/* 801A2F00 0019FE60 88 1F 0B 28 */ lbz r0, 0xb28(r31) +/* 801A2F04 0019FE64 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801A2F08 0019FE68 98 1F 0B 28 */ stb r0, 0xb28(r31) +/* 801A2F0C 0019FE6C 48 00 01 80 */ b lbl_801A308C +lbl_801A2F10: +/* 801A2F10 0019FE70 80 1F 05 68 */ lwz r0, 0x568(r31) +/* 801A2F14 0019FE74 2C 00 00 03 */ cmpwi r0, 3 +/* 801A2F18 0019FE78 41 82 00 F0 */ beq lbl_801A3008 +/* 801A2F1C 0019FE7C 40 80 01 70 */ bge lbl_801A308C +/* 801A2F20 0019FE80 2C 00 00 00 */ cmpwi r0, 0 +/* 801A2F24 0019FE84 41 82 00 08 */ beq lbl_801A2F2C +/* 801A2F28 0019FE88 48 00 01 64 */ b lbl_801A308C +lbl_801A2F2C: +/* 801A2F2C 0019FE8C 80 9F 04 50 */ lwz r4, 0x450(r31) +/* 801A2F30 0019FE90 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 801A2F34 0019FE94 2C 00 00 07 */ cmpwi r0, 7 +/* 801A2F38 0019FE98 40 82 00 10 */ bne lbl_801A2F48 +/* 801A2F3C 0019FE9C 38 00 00 03 */ li r0, 3 +/* 801A2F40 0019FEA0 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801A2F44 0019FEA4 48 00 01 48 */ b lbl_801A308C +lbl_801A2F48: +/* 801A2F48 0019FEA8 81 83 00 00 */ lwz r12, 0(r3) +/* 801A2F4C 0019FEAC 81 8C 02 B8 */ lwz r12, 0x2b8(r12) +/* 801A2F50 0019FEB0 7D 89 03 A6 */ mtctr r12 +/* 801A2F54 0019FEB4 4E 80 04 21 */ bctrl +/* 801A2F58 0019FEB8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A2F5C 0019FEBC 41 82 01 30 */ beq lbl_801A308C +/* 801A2F60 0019FEC0 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 801A2F64 0019FEC4 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801A2F68 0019FEC8 C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) +/* 801A2F6C 0019FECC 38 E4 AA 68 */ addi r7, r4, lbl_803DAA68@l +/* 801A2F70 0019FED0 3C 80 80 3E */ lis r4, lbl_803DA9D8@ha +/* 801A2F74 0019FED4 90 E1 00 08 */ stw r7, 8(r1) +/* 801A2F78 0019FED8 38 00 00 00 */ li r0, 0 +/* 801A2F7C 0019FEDC C0 23 00 04 */ lfs f1, 4(r3) +/* 801A2F80 0019FEE0 C0 03 00 08 */ lfs f0, 8(r3) +/* 801A2F84 0019FEE4 38 A4 A9 D8 */ addi r5, r4, lbl_803DA9D8@l +/* 801A2F88 0019FEE8 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801A2F8C 0019FEEC 38 C0 00 05 */ li r6, 5 +/* 801A2F90 0019FEF0 90 C1 00 0C */ stw r6, 0xc(r1) +/* 801A2F94 0019FEF4 38 80 00 05 */ li r4, 5 +/* 801A2F98 0019FEF8 3B E3 00 04 */ addi r31, r3, 4 +/* 801A2F9C 0019FEFC 90 A1 00 08 */ stw r5, 8(r1) +/* 801A2FA0 0019FF00 7F E3 FB 78 */ mr r3, r31 +/* 801A2FA4 0019FF04 90 01 00 10 */ stw r0, 0x10(r1) +/* 801A2FA8 0019FF08 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801A2FAC 0019FF0C D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801A2FB0 0019FF10 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801A2FB4 0019FF14 98 01 00 20 */ stb r0, 0x20(r1) +/* 801A2FB8 0019FF18 4B F8 E4 81 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801A2FBC 0019FF1C 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801A2FC0 0019FF20 3C 60 80 3E */ lis r3, lbl_803DA9D8@ha +/* 801A2FC4 0019FF24 38 83 A9 D8 */ addi r4, r3, lbl_803DA9D8@l +/* 801A2FC8 0019FF28 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801A2FCC 0019FF2C 90 1F 01 10 */ stw r0, 0x110(r31) +/* 801A2FD0 0019FF30 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801A2FD4 0019FF34 80 61 00 10 */ lwz r3, 0x10(r1) +/* 801A2FD8 0019FF38 80 A1 00 14 */ lwz r5, 0x14(r1) +/* 801A2FDC 0019FF3C 90 7F 01 14 */ stw r3, 0x114(r31) +/* 801A2FE0 0019FF40 80 61 00 18 */ lwz r3, 0x18(r1) +/* 801A2FE4 0019FF44 90 BF 01 18 */ stw r5, 0x118(r31) +/* 801A2FE8 0019FF48 80 A1 00 1C */ lwz r5, 0x1c(r1) +/* 801A2FEC 0019FF4C 90 7F 01 1C */ stw r3, 0x11c(r31) +/* 801A2FF0 0019FF50 88 61 00 20 */ lbz r3, 0x20(r1) +/* 801A2FF4 0019FF54 90 BF 01 20 */ stw r5, 0x120(r31) +/* 801A2FF8 0019FF58 90 81 00 08 */ stw r4, 8(r1) +/* 801A2FFC 0019FF5C 98 7F 01 24 */ stb r3, 0x124(r31) +/* 801A3000 0019FF60 90 01 00 08 */ stw r0, 8(r1) +/* 801A3004 0019FF64 48 00 00 88 */ b lbl_801A308C +lbl_801A3008: +/* 801A3008 0019FF68 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801A300C 0019FF6C 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801A3010 0019FF70 2C 00 00 07 */ cmpwi r0, 7 +/* 801A3014 0019FF74 41 82 00 78 */ beq lbl_801A308C +/* 801A3018 0019FF78 38 00 00 04 */ li r0, 4 +/* 801A301C 0019FF7C 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801A3020 0019FF80 48 00 00 6C */ b lbl_801A308C +lbl_801A3024: +/* 801A3024 0019FF84 4B FF E7 71 */ bl sub_801a1794 +/* 801A3028 0019FF88 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A302C 0019FF8C 41 82 00 28 */ beq lbl_801A3054 +/* 801A3030 0019FF90 7F E3 FB 78 */ mr r3, r31 +/* 801A3034 0019FF94 7F C4 F3 78 */ mr r4, r30 +/* 801A3038 0019FF98 81 9F 00 00 */ lwz r12, 0(r31) +/* 801A303C 0019FF9C C0 22 A7 5C */ lfs f1, lbl_805AC47C@sda21(r2) +/* 801A3040 0019FFA0 81 8C 01 9C */ lwz r12, 0x19c(r12) +/* 801A3044 0019FFA4 7D 89 03 A6 */ mtctr r12 +/* 801A3048 0019FFA8 4E 80 04 21 */ bctrl +/* 801A304C 0019FFAC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A3050 0019FFB0 40 82 00 1C */ bne lbl_801A306C +lbl_801A3054: +/* 801A3054 0019FFB4 80 7E 09 00 */ lwz r3, 0x900(r30) +/* 801A3058 0019FFB8 48 16 F4 85 */ bl Float__9CRandom16Fv +/* 801A305C 0019FFBC C0 5F 03 08 */ lfs f2, 0x308(r31) +/* 801A3060 0019FFC0 C0 1F 03 04 */ lfs f0, 0x304(r31) +/* 801A3064 0019FFC4 EC 02 00 7A */ fmadds f0, f2, f1, f0 +/* 801A3068 0019FFC8 D0 1F 09 58 */ stfs f0, 0x958(r31) +lbl_801A306C: +/* 801A306C 0019FFCC 88 1F 0B 28 */ lbz r0, 0xb28(r31) +/* 801A3070 0019FFD0 38 60 00 00 */ li r3, 0 +/* 801A3074 0019FFD4 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801A3078 0019FFD8 98 1F 0B 28 */ stb r0, 0xb28(r31) +/* 801A307C 0019FFDC 54 03 F7 FE */ rlwinm r3, r0, 0x1e, 0x1f, 0x1f +/* 801A3080 0019FFE0 88 1F 0B 28 */ lbz r0, 0xb28(r31) +/* 801A3084 0019FFE4 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801A3088 0019FFE8 98 1F 0B 28 */ stb r0, 0xb28(r31) +lbl_801A308C: +/* 801A308C 0019FFEC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801A3090 0019FFF0 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801A3094 0019FFF4 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801A3098 0019FFF8 7C 08 03 A6 */ mtlr r0 +/* 801A309C 0019FFFC 38 21 00 30 */ addi r1, r1, 0x30 +/* 801A30A0 001A0000 4E 80 00 20 */ blr + +.global SpecialAttack__12CIceSheegothR13CStateManager9EStateMsgf +SpecialAttack__12CIceSheegothR13CStateManager9EStateMsgf: +/* 801A30A4 001A0004 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801A30A8 001A0008 7C 08 02 A6 */ mflr r0 +/* 801A30AC 001A000C 2C 05 00 01 */ cmpwi r5, 1 +/* 801A30B0 001A0010 90 01 00 24 */ stw r0, 0x24(r1) +/* 801A30B4 001A0014 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801A30B8 001A0018 7C 9F 23 78 */ mr r31, r4 +/* 801A30BC 001A001C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801A30C0 001A0020 7C 7E 1B 78 */ mr r30, r3 +/* 801A30C4 001A0024 41 82 00 50 */ beq lbl_801A3114 +/* 801A30C8 001A0028 40 80 00 10 */ bge lbl_801A30D8 +/* 801A30CC 001A002C 2C 05 00 00 */ cmpwi r5, 0 +/* 801A30D0 001A0030 40 80 00 14 */ bge lbl_801A30E4 +/* 801A30D4 001A0034 48 00 01 54 */ b lbl_801A3228 +lbl_801A30D8: +/* 801A30D8 001A0038 2C 05 00 03 */ cmpwi r5, 3 +/* 801A30DC 001A003C 40 80 01 4C */ bge lbl_801A3228 +/* 801A30E0 001A0040 48 00 01 0C */ b lbl_801A31EC +lbl_801A30E4: +/* 801A30E4 001A0044 38 80 00 00 */ li r4, 0 +/* 801A30E8 001A0048 C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 801A30EC 001A004C 90 9E 05 68 */ stw r4, 0x568(r30) +/* 801A30F0 001A0050 38 60 00 01 */ li r3, 1 +/* 801A30F4 001A0054 D0 1E 09 68 */ stfs f0, 0x968(r30) +/* 801A30F8 001A0058 88 1E 0B 28 */ lbz r0, 0xb28(r30) +/* 801A30FC 001A005C 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801A3100 001A0060 98 1E 0B 28 */ stb r0, 0xb28(r30) +/* 801A3104 001A0064 88 1E 0B 29 */ lbz r0, 0xb29(r30) +/* 801A3108 001A0068 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 801A310C 001A006C 98 1E 0B 29 */ stb r0, 0xb29(r30) +/* 801A3110 001A0070 48 00 01 18 */ b lbl_801A3228 +lbl_801A3114: +/* 801A3114 001A0074 80 1E 05 68 */ lwz r0, 0x568(r30) +/* 801A3118 001A0078 2C 00 00 03 */ cmpwi r0, 3 +/* 801A311C 001A007C 41 82 00 B4 */ beq lbl_801A31D0 +/* 801A3120 001A0080 40 80 01 08 */ bge lbl_801A3228 +/* 801A3124 001A0084 2C 00 00 00 */ cmpwi r0, 0 +/* 801A3128 001A0088 41 82 00 08 */ beq lbl_801A3130 +/* 801A312C 001A008C 48 00 00 FC */ b lbl_801A3228 +lbl_801A3130: +/* 801A3130 001A0090 80 FE 04 50 */ lwz r7, 0x450(r30) +/* 801A3134 001A0094 80 07 02 B8 */ lwz r0, 0x2b8(r7) +/* 801A3138 001A0098 2C 00 00 09 */ cmpwi r0, 9 +/* 801A313C 001A009C 40 82 00 20 */ bne lbl_801A315C +/* 801A3140 001A00A0 38 00 00 03 */ li r0, 3 +/* 801A3144 001A00A4 C0 22 A7 74 */ lfs f1, lbl_805AC494@sda21(r2) +/* 801A3148 001A00A8 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801A314C 001A00AC C0 1E 09 4C */ lfs f0, 0x94c(r30) +/* 801A3150 001A00B0 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801A3154 001A00B4 D0 1E 03 B4 */ stfs f0, 0x3b4(r30) +/* 801A3158 001A00B8 48 00 00 D0 */ b lbl_801A3228 +lbl_801A315C: +/* 801A315C 001A00BC 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 801A3160 001A00C0 3C 60 80 3E */ lis r3, lbl_803E10B0@ha +/* 801A3164 001A00C4 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l +/* 801A3168 001A00C8 38 80 00 07 */ li r4, 7 +/* 801A316C 001A00CC 90 01 00 08 */ stw r0, 8(r1) +/* 801A3170 001A00D0 38 C3 10 B0 */ addi r6, r3, lbl_803E10B0@l +/* 801A3174 001A00D4 38 A0 00 00 */ li r5, 0 +/* 801A3178 001A00D8 38 00 00 01 */ li r0, 1 +/* 801A317C 001A00DC 3B E7 00 04 */ addi r31, r7, 4 +/* 801A3180 001A00E0 90 81 00 0C */ stw r4, 0xc(r1) +/* 801A3184 001A00E4 7F E3 FB 78 */ mr r3, r31 +/* 801A3188 001A00E8 38 80 00 07 */ li r4, 7 +/* 801A318C 001A00EC 90 C1 00 08 */ stw r6, 8(r1) +/* 801A3190 001A00F0 90 A1 00 10 */ stw r5, 0x10(r1) +/* 801A3194 001A00F4 90 01 00 14 */ stw r0, 0x14(r1) +/* 801A3198 001A00F8 4B F8 E2 A1 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801A319C 001A00FC 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801A31A0 001A0100 3C 60 80 3E */ lis r3, lbl_803E10B0@ha +/* 801A31A4 001A0104 38 83 10 B0 */ addi r4, r3, lbl_803E10B0@l +/* 801A31A8 001A0108 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801A31AC 001A010C 90 1F 01 48 */ stw r0, 0x148(r31) +/* 801A31B0 001A0110 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801A31B4 001A0114 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 801A31B8 001A0118 90 81 00 08 */ stw r4, 8(r1) +/* 801A31BC 001A011C 80 61 00 14 */ lwz r3, 0x14(r1) +/* 801A31C0 001A0120 90 BF 01 4C */ stw r5, 0x14c(r31) +/* 801A31C4 001A0124 90 7F 01 50 */ stw r3, 0x150(r31) +/* 801A31C8 001A0128 90 01 00 08 */ stw r0, 8(r1) +/* 801A31CC 001A012C 48 00 00 5C */ b lbl_801A3228 +lbl_801A31D0: +/* 801A31D0 001A0130 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801A31D4 001A0134 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801A31D8 001A0138 2C 00 00 09 */ cmpwi r0, 9 +/* 801A31DC 001A013C 41 82 00 4C */ beq lbl_801A3228 +/* 801A31E0 001A0140 38 00 00 04 */ li r0, 4 +/* 801A31E4 001A0144 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801A31E8 001A0148 48 00 00 40 */ b lbl_801A3228 +lbl_801A31EC: +/* 801A31EC 001A014C 4B FF E5 A9 */ bl sub_801a1794 +/* 801A31F0 001A0150 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A31F4 001A0154 40 82 00 1C */ bne lbl_801A3210 +/* 801A31F8 001A0158 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 801A31FC 001A015C 48 16 F2 E1 */ bl Float__9CRandom16Fv +/* 801A3200 001A0160 C0 5E 03 08 */ lfs f2, 0x308(r30) +/* 801A3204 001A0164 C0 1E 03 04 */ lfs f0, 0x304(r30) +/* 801A3208 001A0168 EC 02 00 7A */ fmadds f0, f2, f1, f0 +/* 801A320C 001A016C D0 1E 09 54 */ stfs f0, 0x954(r30) +lbl_801A3210: +/* 801A3210 001A0170 88 1E 0B 28 */ lbz r0, 0xb28(r30) +/* 801A3214 001A0174 38 60 00 00 */ li r3, 0 +/* 801A3218 001A0178 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801A321C 001A017C 98 1E 0B 28 */ stb r0, 0xb28(r30) +/* 801A3220 001A0180 C0 1E 09 4C */ lfs f0, 0x94c(r30) +/* 801A3224 001A0184 D0 1E 03 B4 */ stfs f0, 0x3b4(r30) +lbl_801A3228: +/* 801A3228 001A0188 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801A322C 001A018C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801A3230 001A0190 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801A3234 001A0194 7C 08 03 A6 */ mtlr r0 +/* 801A3238 001A0198 38 21 00 20 */ addi r1, r1, 0x20 +/* 801A323C 001A019C 4E 80 00 20 */ blr + +.global Attack__12CIceSheegothR13CStateManager9EStateMsgf +Attack__12CIceSheegothR13CStateManager9EStateMsgf: +/* 801A3240 001A01A0 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 801A3244 001A01A4 7C 08 02 A6 */ mflr r0 +/* 801A3248 001A01A8 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 801A324C 001A01AC DB E1 00 A0 */ stfd f31, 0xa0(r1) +/* 801A3250 001A01B0 F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0 +/* 801A3254 001A01B4 93 E1 00 9C */ stw r31, 0x9c(r1) +/* 801A3258 001A01B8 93 C1 00 98 */ stw r30, 0x98(r1) +/* 801A325C 001A01BC 93 A1 00 94 */ stw r29, 0x94(r1) +/* 801A3260 001A01C0 7C BD 2B 78 */ mr r29, r5 +/* 801A3264 001A01C4 FF E0 08 90 */ fmr f31, f1 +/* 801A3268 001A01C8 2C 1D 00 01 */ cmpwi r29, 1 +/* 801A326C 001A01CC 7C 7E 1B 78 */ mr r30, r3 +/* 801A3270 001A01D0 7C 9F 23 78 */ mr r31, r4 +/* 801A3274 001A01D4 41 82 00 C0 */ beq lbl_801A3334 +/* 801A3278 001A01D8 40 80 00 10 */ bge lbl_801A3288 +/* 801A327C 001A01DC 2C 1D 00 00 */ cmpwi r29, 0 +/* 801A3280 001A01E0 40 80 00 14 */ bge lbl_801A3294 +/* 801A3284 001A01E4 48 00 03 40 */ b lbl_801A35C4 +lbl_801A3288: +/* 801A3288 001A01E8 2C 1D 00 03 */ cmpwi r29, 3 +/* 801A328C 001A01EC 40 80 03 38 */ bge lbl_801A35C4 +/* 801A3290 001A01F0 48 00 02 CC */ b lbl_801A355C +lbl_801A3294: +/* 801A3294 001A01F4 38 00 00 00 */ li r0, 0 +/* 801A3298 001A01F8 38 80 00 01 */ li r4, 1 +/* 801A329C 001A01FC 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801A32A0 001A0200 7F E5 FB 78 */ mr r5, r31 +/* 801A32A4 001A0204 38 61 00 08 */ addi r3, r1, 8 +/* 801A32A8 001A0208 C0 22 A7 5C */ lfs f1, lbl_805AC47C@sda21(r2) +/* 801A32AC 001A020C 88 1E 0B 28 */ lbz r0, 0xb28(r30) +/* 801A32B0 001A0210 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 801A32B4 001A0214 98 1E 0B 28 */ stb r0, 0xb28(r30) +/* 801A32B8 001A0218 54 04 D7 FE */ rlwinm r4, r0, 0x1a, 0x1f, 0x1f +/* 801A32BC 001A021C 88 1E 0B 28 */ lbz r0, 0xb28(r30) +/* 801A32C0 001A0220 50 80 17 7A */ rlwimi r0, r4, 2, 0x1d, 0x1d +/* 801A32C4 001A0224 98 1E 0B 28 */ stb r0, 0xb28(r30) +/* 801A32C8 001A0228 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 801A32CC 001A022C 81 84 00 00 */ lwz r12, 0(r4) +/* 801A32D0 001A0230 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801A32D4 001A0234 7D 89 03 A6 */ mtctr r12 +/* 801A32D8 001A0238 4E 80 04 21 */ bctrl +/* 801A32DC 001A023C C0 01 00 08 */ lfs f0, 8(r1) +/* 801A32E0 001A0240 7F C3 F3 78 */ mr r3, r30 +/* 801A32E4 001A0244 38 80 00 00 */ li r4, 0 +/* 801A32E8 001A0248 D0 1E 02 E0 */ stfs f0, 0x2e0(r30) +/* 801A32EC 001A024C C0 01 00 0C */ lfs f0, 0xc(r1) +/* 801A32F0 001A0250 D0 1E 02 E4 */ stfs f0, 0x2e4(r30) +/* 801A32F4 001A0254 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 801A32F8 001A0258 D0 1E 02 E8 */ stfs f0, 0x2e8(r30) +/* 801A32FC 001A025C 4B FF BB 1D */ bl sub_8019ee18 +/* 801A3300 001A0260 FC 20 F8 90 */ fmr f1, f31 +/* 801A3304 001A0264 7F C3 F3 78 */ mr r3, r30 +/* 801A3308 001A0268 7F E4 FB 78 */ mr r4, r31 +/* 801A330C 001A026C 7F A5 EB 78 */ mr r5, r29 +/* 801A3310 001A0270 48 05 33 BD */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 801A3314 001A0274 3C 80 80 57 */ lis r4, lbl_80572018@ha +/* 801A3318 001A0278 7F C3 F3 78 */ mr r3, r30 +/* 801A331C 001A027C 38 A4 20 18 */ addi r5, r4, lbl_80572018@l +/* 801A3320 001A0280 7F E4 FB 78 */ mr r4, r31 +/* 801A3324 001A0284 4B FF C8 65 */ bl sub_8019fb88 +/* 801A3328 001A0288 C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 801A332C 001A028C D0 1E 09 5C */ stfs f0, 0x95c(r30) +/* 801A3330 001A0290 48 00 02 94 */ b lbl_801A35C4 +lbl_801A3334: +/* 801A3334 001A0294 80 1E 05 68 */ lwz r0, 0x568(r30) +/* 801A3338 001A0298 2C 00 00 03 */ cmpwi r0, 3 +/* 801A333C 001A029C 41 82 02 04 */ beq lbl_801A3540 +/* 801A3340 001A02A0 40 80 02 84 */ bge lbl_801A35C4 +/* 801A3344 001A02A4 2C 00 00 00 */ cmpwi r0, 0 +/* 801A3348 001A02A8 41 82 00 08 */ beq lbl_801A3350 +/* 801A334C 001A02AC 48 00 02 78 */ b lbl_801A35C4 +lbl_801A3350: +/* 801A3350 001A02B0 C0 1E 09 5C */ lfs f0, 0x95c(r30) +/* 801A3354 001A02B4 EC 00 F8 2A */ fadds f0, f0, f31 +/* 801A3358 001A02B8 D0 1E 09 5C */ stfs f0, 0x95c(r30) +/* 801A335C 001A02BC C0 3E 09 5C */ lfs f1, 0x95c(r30) +/* 801A3360 001A02C0 C0 1E 07 44 */ lfs f0, 0x744(r30) +/* 801A3364 001A02C4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801A3368 001A02C8 40 80 01 CC */ bge lbl_801A3534 +/* 801A336C 001A02CC 88 1E 0B 28 */ lbz r0, 0xb28(r30) +/* 801A3370 001A02D0 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 801A3374 001A02D4 40 82 00 DC */ bne lbl_801A3450 +/* 801A3378 001A02D8 38 00 00 03 */ li r0, 3 +/* 801A337C 001A02DC 39 00 00 01 */ li r8, 1 +/* 801A3380 001A02E0 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801A3384 001A02E4 88 1E 0B 28 */ lbz r0, 0xb28(r30) +/* 801A3388 001A02E8 51 00 17 7A */ rlwimi r0, r8, 2, 0x1d, 0x1d +/* 801A338C 001A02EC 98 1E 0B 28 */ stb r0, 0xb28(r30) +/* 801A3390 001A02F0 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 801A3394 001A02F4 80 03 02 F8 */ lwz r0, 0x2f8(r3) +/* 801A3398 001A02F8 2C 00 00 01 */ cmpwi r0, 1 +/* 801A339C 001A02FC 40 82 00 08 */ bne lbl_801A33A4 +/* 801A33A0 001A0300 39 00 00 02 */ li r8, 2 +lbl_801A33A4: +/* 801A33A4 001A0304 3C A0 80 3E */ lis r5, lbl_803DAA68@ha +/* 801A33A8 001A0308 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801A33AC 001A030C 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 801A33B0 001A0310 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801A33B4 001A0314 38 E5 AA 68 */ addi r7, r5, lbl_803DAA68@l +/* 801A33B8 001A0318 C0 44 00 00 */ lfs f2, 0(r4) +/* 801A33BC 001A031C C0 24 00 04 */ lfs f1, 4(r4) +/* 801A33C0 001A0320 3C A0 80 3E */ lis r5, lbl_803DA9D8@ha +/* 801A33C4 001A0324 C0 04 00 08 */ lfs f0, 8(r4) +/* 801A33C8 001A0328 38 C0 00 05 */ li r6, 5 +/* 801A33CC 001A032C 38 00 00 00 */ li r0, 0 +/* 801A33D0 001A0330 3B E3 00 04 */ addi r31, r3, 4 +/* 801A33D4 001A0334 90 E1 00 14 */ stw r7, 0x14(r1) +/* 801A33D8 001A0338 38 A5 A9 D8 */ addi r5, r5, lbl_803DA9D8@l +/* 801A33DC 001A033C 7F E3 FB 78 */ mr r3, r31 +/* 801A33E0 001A0340 38 80 00 05 */ li r4, 5 +/* 801A33E4 001A0344 90 C1 00 18 */ stw r6, 0x18(r1) +/* 801A33E8 001A0348 90 A1 00 14 */ stw r5, 0x14(r1) +/* 801A33EC 001A034C 91 01 00 1C */ stw r8, 0x1c(r1) +/* 801A33F0 001A0350 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 801A33F4 001A0354 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 801A33F8 001A0358 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 801A33FC 001A035C 98 01 00 2C */ stb r0, 0x2c(r1) +/* 801A3400 001A0360 4B F8 E0 39 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801A3404 001A0364 80 01 00 18 */ lwz r0, 0x18(r1) +/* 801A3408 001A0368 3C 60 80 3E */ lis r3, lbl_803DA9D8@ha +/* 801A340C 001A036C 38 83 A9 D8 */ addi r4, r3, lbl_803DA9D8@l +/* 801A3410 001A0370 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801A3414 001A0374 90 1F 01 10 */ stw r0, 0x110(r31) +/* 801A3418 001A0378 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801A341C 001A037C 80 61 00 1C */ lwz r3, 0x1c(r1) +/* 801A3420 001A0380 80 A1 00 20 */ lwz r5, 0x20(r1) +/* 801A3424 001A0384 90 7F 01 14 */ stw r3, 0x114(r31) +/* 801A3428 001A0388 80 61 00 24 */ lwz r3, 0x24(r1) +/* 801A342C 001A038C 90 BF 01 18 */ stw r5, 0x118(r31) +/* 801A3430 001A0390 80 A1 00 28 */ lwz r5, 0x28(r1) +/* 801A3434 001A0394 90 7F 01 1C */ stw r3, 0x11c(r31) +/* 801A3438 001A0398 88 61 00 2C */ lbz r3, 0x2c(r1) +/* 801A343C 001A039C 90 BF 01 20 */ stw r5, 0x120(r31) +/* 801A3440 001A03A0 90 81 00 14 */ stw r4, 0x14(r1) +/* 801A3444 001A03A4 98 7F 01 24 */ stb r3, 0x124(r31) +/* 801A3448 001A03A8 90 01 00 14 */ stw r0, 0x14(r1) +/* 801A344C 001A03AC 48 00 01 78 */ b lbl_801A35C4 +lbl_801A3450: +/* 801A3450 001A03B0 7F C4 F3 78 */ mr r4, r30 +/* 801A3454 001A03B4 38 61 00 30 */ addi r3, r1, 0x30 +/* 801A3458 001A03B8 38 BE 0A F4 */ addi r5, r30, 0xaf4 +/* 801A345C 001A03BC 4B ED 54 5D */ bl GetLctrTransform__10CPatternedCFRC6CSegId +/* 801A3460 001A03C0 38 61 00 60 */ addi r3, r1, 0x60 +/* 801A3464 001A03C4 38 81 00 30 */ addi r4, r1, 0x30 +/* 801A3468 001A03C8 48 16 F7 0D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801A346C 001A03CC 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 801A3470 001A03D0 C0 01 00 7C */ lfs f0, 0x7c(r1) +/* 801A3474 001A03D4 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801A3478 001A03D8 C0 63 00 40 */ lfs f3, 0x40(r3) +/* 801A347C 001A03DC EC 01 00 28 */ fsubs f0, f1, f0 +/* 801A3480 001A03E0 C0 41 00 6C */ lfs f2, 0x6c(r1) +/* 801A3484 001A03E4 C0 3E 00 48 */ lfs f1, 0x48(r30) +/* 801A3488 001A03E8 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801A348C 001A03EC C0 83 00 60 */ lfs f4, 0x60(r3) +/* 801A3490 001A03F0 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801A3494 001A03F4 C0 61 00 8C */ lfs f3, 0x8c(r1) +/* 801A3498 001A03F8 C0 3E 00 38 */ lfs f1, 0x38(r30) +/* 801A349C 001A03FC EC 64 18 28 */ fsubs f3, f4, f3 +/* 801A34A0 001A0400 C0 9E 00 58 */ lfs f4, 0x58(r30) +/* 801A34A4 001A0404 EC 21 00 BA */ fmadds f1, f1, f2, f0 +/* 801A34A8 001A0408 C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 801A34AC 001A040C EC 24 08 FA */ fmadds f1, f4, f3, f1 +/* 801A34B0 001A0410 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801A34B4 001A0414 40 81 00 74 */ ble lbl_801A3528 +/* 801A34B8 001A0418 7F C3 F3 78 */ mr r3, r30 +/* 801A34BC 001A041C 38 80 00 00 */ li r4, 0 +/* 801A34C0 001A0420 4B FF B9 59 */ bl sub_8019ee18 +/* 801A34C4 001A0424 7F C3 F3 78 */ mr r3, r30 +/* 801A34C8 001A0428 81 9E 00 00 */ lwz r12, 0(r30) +/* 801A34CC 001A042C 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801A34D0 001A0430 7D 89 03 A6 */ mtctr r12 +/* 801A34D4 001A0434 4E 80 04 21 */ bctrl +/* 801A34D8 001A0438 28 03 00 00 */ cmplwi r3, 0 +/* 801A34DC 001A043C 41 82 00 40 */ beq lbl_801A351C +/* 801A34E0 001A0440 7F C3 F3 78 */ mr r3, r30 +/* 801A34E4 001A0444 7F E4 FB 78 */ mr r4, r31 +/* 801A34E8 001A0448 81 9E 00 00 */ lwz r12, 0(r30) +/* 801A34EC 001A044C C0 22 A7 5C */ lfs f1, lbl_805AC47C@sda21(r2) +/* 801A34F0 001A0450 81 8C 01 90 */ lwz r12, 0x190(r12) +/* 801A34F4 001A0454 7D 89 03 A6 */ mtctr r12 +/* 801A34F8 001A0458 4E 80 04 21 */ bctrl +/* 801A34FC 001A045C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A3500 001A0460 40 82 00 1C */ bne lbl_801A351C +/* 801A3504 001A0464 FC 20 F8 90 */ fmr f1, f31 +/* 801A3508 001A0468 7F C3 F3 78 */ mr r3, r30 +/* 801A350C 001A046C 7F E4 FB 78 */ mr r4, r31 +/* 801A3510 001A0470 7F A5 EB 78 */ mr r5, r29 +/* 801A3514 001A0474 48 05 31 B9 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 801A3518 001A0478 48 00 00 AC */ b lbl_801A35C4 +lbl_801A351C: +/* 801A351C 001A047C 38 00 00 04 */ li r0, 4 +/* 801A3520 001A0480 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801A3524 001A0484 48 00 00 A0 */ b lbl_801A35C4 +lbl_801A3528: +/* 801A3528 001A0488 38 00 00 04 */ li r0, 4 +/* 801A352C 001A048C 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801A3530 001A0490 48 00 00 94 */ b lbl_801A35C4 +lbl_801A3534: +/* 801A3534 001A0494 38 00 00 04 */ li r0, 4 +/* 801A3538 001A0498 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801A353C 001A049C 48 00 00 88 */ b lbl_801A35C4 +lbl_801A3540: +/* 801A3540 001A04A0 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801A3544 001A04A4 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801A3548 001A04A8 2C 00 00 07 */ cmpwi r0, 7 +/* 801A354C 001A04AC 41 82 00 78 */ beq lbl_801A35C4 +/* 801A3550 001A04B0 38 00 00 04 */ li r0, 4 +/* 801A3554 001A04B4 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801A3558 001A04B8 48 00 00 6C */ b lbl_801A35C4 +lbl_801A355C: +/* 801A355C 001A04BC 4B FF E2 39 */ bl sub_801a1794 +/* 801A3560 001A04C0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A3564 001A04C4 40 82 00 1C */ bne lbl_801A3580 +/* 801A3568 001A04C8 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 801A356C 001A04CC 48 16 EF 71 */ bl Float__9CRandom16Fv +/* 801A3570 001A04D0 C0 5E 03 08 */ lfs f2, 0x308(r30) +/* 801A3574 001A04D4 C0 1E 03 04 */ lfs f0, 0x304(r30) +/* 801A3578 001A04D8 EC 02 00 7A */ fmadds f0, f2, f1, f0 +/* 801A357C 001A04DC D0 1E 09 54 */ stfs f0, 0x954(r30) +lbl_801A3580: +/* 801A3580 001A04E0 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801A3584 001A04E4 7F C3 F3 78 */ mr r3, r30 +/* 801A3588 001A04E8 38 A4 66 A0 */ addi r5, r4, skZero3f@l +/* 801A358C 001A04EC 7F E4 FB 78 */ mr r4, r31 +/* 801A3590 001A04F0 4B FF C5 F9 */ bl sub_8019fb88 +/* 801A3594 001A04F4 88 1E 0B 28 */ lbz r0, 0xb28(r30) +/* 801A3598 001A04F8 38 60 00 00 */ li r3, 0 +/* 801A359C 001A04FC 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801A35A0 001A0500 C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 801A35A4 001A0504 98 1E 0B 28 */ stb r0, 0xb28(r30) +/* 801A35A8 001A0508 54 03 F7 FE */ rlwinm r3, r0, 0x1e, 0x1f, 0x1f +/* 801A35AC 001A050C 88 1E 0B 28 */ lbz r0, 0xb28(r30) +/* 801A35B0 001A0510 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801A35B4 001A0514 98 1E 0B 28 */ stb r0, 0xb28(r30) +/* 801A35B8 001A0518 C0 3E 07 48 */ lfs f1, 0x748(r30) +/* 801A35BC 001A051C D0 3E 09 60 */ stfs f1, 0x960(r30) +/* 801A35C0 001A0520 D0 1E 09 5C */ stfs f0, 0x95c(r30) +lbl_801A35C4: +/* 801A35C4 001A0524 C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 801A35C8 001A0528 D0 1E 09 68 */ stfs f0, 0x968(r30) +/* 801A35CC 001A052C E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0 +/* 801A35D0 001A0530 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 801A35D4 001A0534 CB E1 00 A0 */ lfd f31, 0xa0(r1) +/* 801A35D8 001A0538 83 E1 00 9C */ lwz r31, 0x9c(r1) +/* 801A35DC 001A053C 83 C1 00 98 */ lwz r30, 0x98(r1) +/* 801A35E0 001A0540 83 A1 00 94 */ lwz r29, 0x94(r1) +/* 801A35E4 001A0544 7C 08 03 A6 */ mtlr r0 +/* 801A35E8 001A0548 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 801A35EC 001A054C 4E 80 00 20 */ blr + +.global ProjectileAttack__12CIceSheegothR13CStateManager9EStateMsgf +ProjectileAttack__12CIceSheegothR13CStateManager9EStateMsgf: +/* 801A35F0 001A0550 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801A35F4 001A0554 7C 08 02 A6 */ mflr r0 +/* 801A35F8 001A0558 2C 05 00 01 */ cmpwi r5, 1 +/* 801A35FC 001A055C 90 01 00 44 */ stw r0, 0x44(r1) +/* 801A3600 001A0560 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801A3604 001A0564 7C 7F 1B 78 */ mr r31, r3 +/* 801A3608 001A0568 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801A360C 001A056C 7C 9E 23 78 */ mr r30, r4 +/* 801A3610 001A0570 41 82 00 64 */ beq lbl_801A3674 +/* 801A3614 001A0574 40 80 00 10 */ bge lbl_801A3624 +/* 801A3618 001A0578 2C 05 00 00 */ cmpwi r5, 0 +/* 801A361C 001A057C 40 80 00 14 */ bge lbl_801A3630 +/* 801A3620 001A0580 48 00 02 1C */ b lbl_801A383C +lbl_801A3624: +/* 801A3624 001A0584 2C 05 00 03 */ cmpwi r5, 3 +/* 801A3628 001A0588 40 80 02 14 */ bge lbl_801A383C +/* 801A362C 001A058C 48 00 01 54 */ b lbl_801A3780 +lbl_801A3630: +/* 801A3630 001A0590 38 E0 00 00 */ li r7, 0 +/* 801A3634 001A0594 38 C0 00 01 */ li r6, 1 +/* 801A3638 001A0598 90 FF 05 68 */ stw r7, 0x568(r31) +/* 801A363C 001A059C 38 A0 00 01 */ li r5, 1 +/* 801A3640 001A05A0 C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 801A3644 001A05A4 88 1F 0B 28 */ lbz r0, 0xb28(r31) +/* 801A3648 001A05A8 50 C0 2E B4 */ rlwimi r0, r6, 5, 0x1a, 0x1a +/* 801A364C 001A05AC 98 1F 0B 28 */ stb r0, 0xb28(r31) +/* 801A3650 001A05B0 88 1F 0B 29 */ lbz r0, 0xb29(r31) +/* 801A3654 001A05B4 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19 +/* 801A3658 001A05B8 98 1F 0B 29 */ stb r0, 0xb29(r31) +/* 801A365C 001A05BC 88 1F 0B 29 */ lbz r0, 0xb29(r31) +/* 801A3660 001A05C0 50 E0 26 F6 */ rlwimi r0, r7, 4, 0x1b, 0x1b +/* 801A3664 001A05C4 98 1F 0B 29 */ stb r0, 0xb29(r31) +/* 801A3668 001A05C8 D0 1F 09 68 */ stfs f0, 0x968(r31) +/* 801A366C 001A05CC 4B FF B3 61 */ bl sub_8019e9cc +/* 801A3670 001A05D0 48 00 01 CC */ b lbl_801A383C +lbl_801A3674: +/* 801A3674 001A05D4 80 1F 05 68 */ lwz r0, 0x568(r31) +/* 801A3678 001A05D8 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 801A367C 001A05DC 2C 00 00 03 */ cmpwi r0, 3 +/* 801A3680 001A05E0 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 801A3684 001A05E4 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801A3688 001A05E8 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801A368C 001A05EC 41 82 00 D8 */ beq lbl_801A3764 +/* 801A3690 001A05F0 40 80 01 AC */ bge lbl_801A383C +/* 801A3694 001A05F4 2C 00 00 00 */ cmpwi r0, 0 +/* 801A3698 001A05F8 41 82 00 08 */ beq lbl_801A36A0 +/* 801A369C 001A05FC 48 00 01 A0 */ b lbl_801A383C +lbl_801A36A0: +/* 801A36A0 001A0600 80 FF 04 50 */ lwz r7, 0x450(r31) +/* 801A36A4 001A0604 80 07 02 B8 */ lwz r0, 0x2b8(r7) +/* 801A36A8 001A0608 2C 00 00 12 */ cmpwi r0, 0x12 +/* 801A36AC 001A060C 40 82 00 20 */ bne lbl_801A36CC +/* 801A36B0 001A0610 38 00 00 03 */ li r0, 3 +/* 801A36B4 001A0614 C0 22 A7 74 */ lfs f1, lbl_805AC494@sda21(r2) +/* 801A36B8 001A0618 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801A36BC 001A061C C0 1F 09 4C */ lfs f0, 0x94c(r31) +/* 801A36C0 001A0620 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801A36C4 001A0624 D0 1F 03 B4 */ stfs f0, 0x3b4(r31) +/* 801A36C8 001A0628 48 00 01 74 */ b lbl_801A383C +lbl_801A36CC: +/* 801A36CC 001A062C 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 801A36D0 001A0630 3C 60 80 3E */ lis r3, lbl_803DA9CC@ha +/* 801A36D4 001A0634 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l +/* 801A36D8 001A0638 38 80 00 06 */ li r4, 6 +/* 801A36DC 001A063C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801A36E0 001A0640 38 C3 A9 CC */ addi r6, r3, lbl_803DA9CC@l +/* 801A36E4 001A0644 38 A0 00 02 */ li r5, 2 +/* 801A36E8 001A0648 38 00 00 00 */ li r0, 0 +/* 801A36EC 001A064C 3B E7 00 04 */ addi r31, r7, 4 +/* 801A36F0 001A0650 90 81 00 18 */ stw r4, 0x18(r1) +/* 801A36F4 001A0654 7F E3 FB 78 */ mr r3, r31 +/* 801A36F8 001A0658 38 80 00 06 */ li r4, 6 +/* 801A36FC 001A065C 90 C1 00 14 */ stw r6, 0x14(r1) +/* 801A3700 001A0660 90 A1 00 1C */ stw r5, 0x1c(r1) +/* 801A3704 001A0664 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801A3708 001A0668 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 801A370C 001A066C D0 41 00 28 */ stfs f2, 0x28(r1) +/* 801A3710 001A0670 98 01 00 2C */ stb r0, 0x2c(r1) +/* 801A3714 001A0674 4B F8 DD 25 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801A3718 001A0678 80 01 00 18 */ lwz r0, 0x18(r1) +/* 801A371C 001A067C 3C 60 80 3E */ lis r3, lbl_803DA9CC@ha +/* 801A3720 001A0680 38 83 A9 CC */ addi r4, r3, lbl_803DA9CC@l +/* 801A3724 001A0684 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801A3728 001A0688 90 1F 01 2C */ stw r0, 0x12c(r31) +/* 801A372C 001A068C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801A3730 001A0690 80 61 00 1C */ lwz r3, 0x1c(r1) +/* 801A3734 001A0694 80 A1 00 20 */ lwz r5, 0x20(r1) +/* 801A3738 001A0698 90 7F 01 30 */ stw r3, 0x130(r31) +/* 801A373C 001A069C 80 61 00 24 */ lwz r3, 0x24(r1) +/* 801A3740 001A06A0 90 BF 01 34 */ stw r5, 0x134(r31) +/* 801A3744 001A06A4 80 A1 00 28 */ lwz r5, 0x28(r1) +/* 801A3748 001A06A8 90 7F 01 38 */ stw r3, 0x138(r31) +/* 801A374C 001A06AC 88 61 00 2C */ lbz r3, 0x2c(r1) +/* 801A3750 001A06B0 90 BF 01 3C */ stw r5, 0x13c(r31) +/* 801A3754 001A06B4 90 81 00 14 */ stw r4, 0x14(r1) +/* 801A3758 001A06B8 98 7F 01 40 */ stb r3, 0x140(r31) +/* 801A375C 001A06BC 90 01 00 14 */ stw r0, 0x14(r1) +/* 801A3760 001A06C0 48 00 00 DC */ b lbl_801A383C +lbl_801A3764: +/* 801A3764 001A06C4 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801A3768 001A06C8 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801A376C 001A06CC 2C 00 00 12 */ cmpwi r0, 0x12 +/* 801A3770 001A06D0 41 82 00 CC */ beq lbl_801A383C +/* 801A3774 001A06D4 38 00 00 04 */ li r0, 4 +/* 801A3778 001A06D8 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801A377C 001A06DC 48 00 00 C0 */ b lbl_801A383C +lbl_801A3780: +/* 801A3780 001A06E0 C0 1F 09 4C */ lfs f0, 0x94c(r31) +/* 801A3784 001A06E4 D0 1F 03 B4 */ stfs f0, 0x3b4(r31) +/* 801A3788 001A06E8 4B FF E0 0D */ bl sub_801a1794 +/* 801A378C 001A06EC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A3790 001A06F0 40 82 00 1C */ bne lbl_801A37AC +/* 801A3794 001A06F4 80 7E 09 00 */ lwz r3, 0x900(r30) +/* 801A3798 001A06F8 48 16 ED 45 */ bl Float__9CRandom16Fv +/* 801A379C 001A06FC C0 5F 03 08 */ lfs f2, 0x308(r31) +/* 801A37A0 001A0700 C0 1F 03 04 */ lfs f0, 0x304(r31) +/* 801A37A4 001A0704 EC 02 00 7A */ fmadds f0, f2, f1, f0 +/* 801A37A8 001A0708 D0 1F 09 54 */ stfs f0, 0x954(r31) +lbl_801A37AC: +/* 801A37AC 001A070C A0 1F 0A 80 */ lhz r0, 0xa80(r31) +/* 801A37B0 001A0710 7F C3 F3 78 */ mr r3, r30 +/* 801A37B4 001A0714 38 81 00 08 */ addi r4, r1, 8 +/* 801A37B8 001A0718 B0 01 00 08 */ sth r0, 8(r1) +/* 801A37BC 001A071C 4B EA 8D B9 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801A37C0 001A0720 28 03 00 00 */ cmplwi r3, 0 +/* 801A37C4 001A0724 41 82 00 10 */ beq lbl_801A37D4 +/* 801A37C8 001A0728 7F C4 F3 78 */ mr r4, r30 +/* 801A37CC 001A072C 38 A0 00 00 */ li r5, 0 +/* 801A37D0 001A0730 4B FF 49 F1 */ bl Reset__13CFlameThrowerFR13CStateManagerb +lbl_801A37D4: +/* 801A37D4 001A0734 7F E3 FB 78 */ mr r3, r31 +/* 801A37D8 001A0738 7F C4 F3 78 */ mr r4, r30 +/* 801A37DC 001A073C 38 A0 00 00 */ li r5, 0 +/* 801A37E0 001A0740 4B FF B1 ED */ bl sub_8019e9cc +/* 801A37E4 001A0744 80 9F 04 50 */ lwz r4, 0x450(r31) +/* 801A37E8 001A0748 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 801A37EC 001A074C 2C 00 00 12 */ cmpwi r0, 0x12 +/* 801A37F0 001A0750 40 82 00 30 */ bne lbl_801A3820 +/* 801A37F4 001A0754 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801A37F8 001A0758 38 00 00 0C */ li r0, 0xc +/* 801A37FC 001A075C 38 A3 AA 68 */ addi r5, r3, lbl_803DAA68@l +/* 801A3800 001A0760 90 01 00 10 */ stw r0, 0x10(r1) +/* 801A3804 001A0764 38 64 00 04 */ addi r3, r4, 4 +/* 801A3808 001A0768 38 81 00 0C */ addi r4, r1, 0xc +/* 801A380C 001A076C 90 A1 00 0C */ stw r5, 0xc(r1) +/* 801A3810 001A0770 4B F8 DF A9 */ bl DeliverCmd__16CBodyStateCmdMgrFRC13CBodyStateCmd +/* 801A3814 001A0774 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801A3818 001A0778 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801A381C 001A077C 90 01 00 0C */ stw r0, 0xc(r1) +lbl_801A3820: +/* 801A3820 001A0780 88 1F 0B 29 */ lbz r0, 0xb29(r31) +/* 801A3824 001A0784 38 60 00 00 */ li r3, 0 +/* 801A3828 001A0788 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801A382C 001A078C 98 1F 0B 29 */ stb r0, 0xb29(r31) +/* 801A3830 001A0790 88 1F 0B 28 */ lbz r0, 0xb28(r31) +/* 801A3834 001A0794 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 801A3838 001A0798 98 1F 0B 28 */ stb r0, 0xb28(r31) +lbl_801A383C: +/* 801A383C 001A079C 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801A3840 001A07A0 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801A3844 001A07A4 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801A3848 001A07A8 7C 08 03 A6 */ mtlr r0 +/* 801A384C 001A07AC 38 21 00 40 */ addi r1, r1, 0x40 +/* 801A3850 001A07B0 4E 80 00 20 */ blr + +.global Patrol__12CIceSheegothR13CStateManager9EStateMsgf +Patrol__12CIceSheegothR13CStateManager9EStateMsgf: +/* 801A3854 001A07B4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801A3858 001A07B8 7C 08 02 A6 */ mflr r0 +/* 801A385C 001A07BC 90 01 00 14 */ stw r0, 0x14(r1) +/* 801A3860 001A07C0 48 05 36 15 */ bl Patrol__10CPatternedFR13CStateManager9EStateMsgf +/* 801A3864 001A07C4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801A3868 001A07C8 7C 08 03 A6 */ mtlr r0 +/* 801A386C 001A07CC 38 21 00 10 */ addi r1, r1, 0x10 +/* 801A3870 001A07D0 4E 80 00 20 */ blr + +.global sub_801a3874 +sub_801a3874: +/* 801A3874 001A07D4 80 03 05 68 */ lwz r0, 0x568(r3) +/* 801A3878 001A07D8 20 00 00 04 */ subfic r0, r0, 4 +/* 801A387C 001A07DC 7C 00 00 34 */ cntlzw r0, r0 +/* 801A3880 001A07E0 54 03 D9 7E */ srwi r3, r0, 5 +/* 801A3884 001A07E4 4E 80 00 20 */ blr + +.global SpotPlayer__12CIceSheegothR13CStateManagerf +SpotPlayer__12CIceSheegothR13CStateManagerf: +/* 801A3888 001A07E8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801A388C 001A07EC 7C 08 02 A6 */ mflr r0 +/* 801A3890 001A07F0 90 01 00 14 */ stw r0, 0x14(r1) +/* 801A3894 001A07F4 88 03 0B 28 */ lbz r0, 0xb28(r3) +/* 801A3898 001A07F8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801A389C 001A07FC 41 82 00 08 */ beq lbl_801A38A4 +/* 801A38A0 001A0800 48 00 00 0C */ b lbl_801A38AC +lbl_801A38A4: +/* 801A38A4 001A0804 48 05 29 59 */ bl SpotPlayer__10CPatternedFR13CStateManagerf +/* 801A38A8 001A0808 7C 60 1B 78 */ mr r0, r3 +lbl_801A38AC: +/* 801A38AC 001A080C 7C 03 03 78 */ mr r3, r0 +/* 801A38B0 001A0810 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801A38B4 001A0814 7C 08 03 A6 */ mtlr r0 +/* 801A38B8 001A0818 38 21 00 10 */ addi r1, r1, 0x10 +/* 801A38BC 001A081C 4E 80 00 20 */ blr + +.global InDetectionRange__12CIceSheegothR13CStateManagerf +InDetectionRange__12CIceSheegothR13CStateManagerf: +/* 801A38C0 001A0820 88 03 0B 28 */ lbz r0, 0xb28(r3) +/* 801A38C4 001A0824 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801A38C8 001A0828 40 82 00 90 */ bne lbl_801A3958 +/* 801A38CC 001A082C 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 801A38D0 001A0830 C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 801A38D4 001A0834 C0 A4 00 40 */ lfs f5, 0x40(r4) +/* 801A38D8 001A0838 C0 43 00 40 */ lfs f2, 0x40(r3) +/* 801A38DC 001A083C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801A38E0 001A0840 C0 84 00 50 */ lfs f4, 0x50(r4) +/* 801A38E4 001A0844 C0 63 00 50 */ lfs f3, 0x50(r3) +/* 801A38E8 001A0848 EC A5 10 28 */ fsubs f5, f5, f2 +/* 801A38EC 001A084C C0 44 00 60 */ lfs f2, 0x60(r4) +/* 801A38F0 001A0850 C0 03 00 60 */ lfs f0, 0x60(r3) +/* 801A38F4 001A0854 EC 84 18 28 */ fsubs f4, f4, f3 +/* 801A38F8 001A0858 EC 62 00 28 */ fsubs f3, f2, f0 +/* 801A38FC 001A085C 40 81 00 08 */ ble lbl_801A3904 +/* 801A3900 001A0860 48 00 00 08 */ b lbl_801A3908 +lbl_801A3904: +/* 801A3904 001A0864 C0 22 A7 60 */ lfs f1, lbl_805AC480@sda21(r2) +lbl_801A3908: +/* 801A3908 001A0868 EC 04 01 32 */ fmuls f0, f4, f4 +/* 801A390C 001A086C C0 43 03 BC */ lfs f2, 0x3bc(r3) +/* 801A3910 001A0870 EC 63 00 F2 */ fmuls f3, f3, f3 +/* 801A3914 001A0874 EC 41 00 B2 */ fmuls f2, f1, f2 +/* 801A3918 001A0878 EC 25 01 7A */ fmadds f1, f5, f5, f0 +/* 801A391C 001A087C EC 02 00 B2 */ fmuls f0, f2, f2 +/* 801A3920 001A0880 EC 23 08 2A */ fadds f1, f3, f1 +/* 801A3924 001A0884 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801A3928 001A0888 40 80 00 30 */ bge lbl_801A3958 +/* 801A392C 001A088C C0 23 03 C0 */ lfs f1, 0x3c0(r3) +/* 801A3930 001A0890 C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 801A3934 001A0894 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801A3938 001A0898 40 81 00 18 */ ble lbl_801A3950 +/* 801A393C 001A089C EC 01 00 72 */ fmuls f0, f1, f1 +/* 801A3940 001A08A0 FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 801A3944 001A08A4 7C 00 00 26 */ mfcr r0 +/* 801A3948 001A08A8 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801A394C 001A08AC 4E 80 00 20 */ blr +lbl_801A3950: +/* 801A3950 001A08B0 38 60 00 01 */ li r3, 1 +/* 801A3954 001A08B4 4E 80 00 20 */ blr +lbl_801A3958: +/* 801A3958 001A08B8 7C 03 03 78 */ mr r3, r0 +/* 801A395C 001A08BC 4E 80 00 20 */ blr + +.global InPosition__12CIceSheegothR13CStateManagerf +InPosition__12CIceSheegothR13CStateManagerf: +/* 801A3960 001A08C0 C0 23 09 30 */ lfs f1, 0x930(r3) +/* 801A3964 001A08C4 C0 03 00 50 */ lfs f0, 0x50(r3) +/* 801A3968 001A08C8 C0 63 09 2C */ lfs f3, 0x92c(r3) +/* 801A396C 001A08CC EC 21 00 28 */ fsubs f1, f1, f0 +/* 801A3970 001A08D0 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801A3974 001A08D4 C0 43 09 34 */ lfs f2, 0x934(r3) +/* 801A3978 001A08D8 EC 63 00 28 */ fsubs f3, f3, f0 +/* 801A397C 001A08DC C0 03 00 60 */ lfs f0, 0x60(r3) +/* 801A3980 001A08E0 EC 21 00 72 */ fmuls f1, f1, f1 +/* 801A3984 001A08E4 EC 42 00 28 */ fsubs f2, f2, f0 +/* 801A3988 001A08E8 C0 02 A7 D0 */ lfs f0, lbl_805AC4F0@sda21(r2) +/* 801A398C 001A08EC EC 23 08 FA */ fmadds f1, f3, f3, f1 +/* 801A3990 001A08F0 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 801A3994 001A08F4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801A3998 001A08F8 7C 00 00 26 */ mfcr r0 +/* 801A399C 001A08FC 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801A39A0 001A0900 4E 80 00 20 */ blr + +.global AggressionCheck__12CIceSheegothR13CStateManagerf +AggressionCheck__12CIceSheegothR13CStateManagerf: +/* 801A39A4 001A0904 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801A39A8 001A0908 7C 08 02 A6 */ mflr r0 +/* 801A39AC 001A090C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801A39B0 001A0910 88 03 04 00 */ lbz r0, 0x400(r3) +/* 801A39B4 001A0914 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801A39B8 001A0918 41 82 00 24 */ beq lbl_801A39DC +/* 801A39BC 001A091C 88 03 0B 28 */ lbz r0, 0xb28(r3) +/* 801A39C0 001A0920 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 801A39C4 001A0924 40 82 00 18 */ bne lbl_801A39DC +/* 801A39C8 001A0928 4B FF DD CD */ bl sub_801a1794 +/* 801A39CC 001A092C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A39D0 001A0930 41 82 00 0C */ beq lbl_801A39DC +/* 801A39D4 001A0934 38 60 00 01 */ li r3, 1 +/* 801A39D8 001A0938 48 00 00 08 */ b lbl_801A39E0 +lbl_801A39DC: +/* 801A39DC 001A093C 38 60 00 00 */ li r3, 0 +lbl_801A39E0: +/* 801A39E0 001A0940 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801A39E4 001A0944 7C 08 03 A6 */ mtlr r0 +/* 801A39E8 001A0948 38 21 00 10 */ addi r1, r1, 0x10 +/* 801A39EC 001A094C 4E 80 00 20 */ blr + +.global ShouldFlinch__12CIceSheegothR13CStateManagerf +ShouldFlinch__12CIceSheegothR13CStateManagerf: +/* 801A39F0 001A0950 88 03 0B 29 */ lbz r0, 0xb29(r3) +/* 801A39F4 001A0954 38 80 00 00 */ li r4, 0 +/* 801A39F8 001A0958 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801A39FC 001A095C 41 82 00 18 */ beq lbl_801A3A14 +/* 801A3A00 001A0960 C0 23 09 7C */ lfs f1, 0x97c(r3) +/* 801A3A04 001A0964 C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 801A3A08 001A0968 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801A3A0C 001A096C 40 81 00 08 */ ble lbl_801A3A14 +/* 801A3A10 001A0970 38 80 00 01 */ li r4, 1 +lbl_801A3A14: +/* 801A3A14 001A0974 7C 83 23 78 */ mr r3, r4 +/* 801A3A18 001A0978 4E 80 00 20 */ blr + +.global ShouldTurn__12CIceSheegothR13CStateManagerf +ShouldTurn__12CIceSheegothR13CStateManagerf: +/* 801A3A1C 001A097C 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 801A3A20 001A0980 7C 08 02 A6 */ mflr r0 +/* 801A3A24 001A0984 90 01 00 74 */ stw r0, 0x74(r1) +/* 801A3A28 001A0988 DB E1 00 60 */ stfd f31, 0x60(r1) +/* 801A3A2C 001A098C F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 801A3A30 001A0990 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 801A3A34 001A0994 C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 801A3A38 001A0998 7C 7F 1B 78 */ mr r31, r3 +/* 801A3A3C 001A099C 7C 85 23 78 */ mr r5, r4 +/* 801A3A40 001A09A0 FC 00 08 00 */ fcmpu cr0, f0, f1 +/* 801A3A44 001A09A4 40 82 00 0C */ bne lbl_801A3A50 +/* 801A3A48 001A09A8 C3 E2 A7 D4 */ lfs f31, lbl_805AC4F4@sda21(r2) +/* 801A3A4C 001A09AC 48 00 00 08 */ b lbl_801A3A54 +lbl_801A3A50: +/* 801A3A50 001A09B0 FF E0 08 90 */ fmr f31, f1 +lbl_801A3A54: +/* 801A3A54 001A09B4 80 85 08 4C */ lwz r4, 0x84c(r5) +/* 801A3A58 001A09B8 38 61 00 40 */ addi r3, r1, 0x40 +/* 801A3A5C 001A09BC C0 22 A7 5C */ lfs f1, lbl_805AC47C@sda21(r2) +/* 801A3A60 001A09C0 81 84 00 00 */ lwz r12, 0(r4) +/* 801A3A64 001A09C4 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801A3A68 001A09C8 7D 89 03 A6 */ mtctr r12 +/* 801A3A6C 001A09CC 4E 80 04 21 */ bctrl +/* 801A3A70 001A09D0 C0 41 00 44 */ lfs f2, 0x44(r1) +/* 801A3A74 001A09D4 38 61 00 10 */ addi r3, r1, 0x10 +/* 801A3A78 001A09D8 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 801A3A7C 001A09DC C0 21 00 40 */ lfs f1, 0x40(r1) +/* 801A3A80 001A09E0 EC 42 00 28 */ fsubs f2, f2, f0 +/* 801A3A84 001A09E4 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801A3A88 001A09E8 C0 61 00 48 */ lfs f3, 0x48(r1) +/* 801A3A8C 001A09EC EC 21 00 28 */ fsubs f1, f1, f0 +/* 801A3A90 001A09F0 C0 1F 00 60 */ lfs f0, 0x60(r31) +/* 801A3A94 001A09F4 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 801A3A98 001A09F8 EC 03 00 28 */ fsubs f0, f3, f0 +/* 801A3A9C 001A09FC D0 21 00 34 */ stfs f1, 0x34(r1) +/* 801A3AA0 001A0A00 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 801A3AA4 001A0A04 48 17 07 5D */ bl __ct__9CVector2fFff +/* 801A3AA8 001A0A08 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 801A3AAC 001A0A0C 38 61 00 08 */ addi r3, r1, 8 +/* 801A3AB0 001A0A10 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 801A3AB4 001A0A14 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 801A3AB8 001A0A18 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801A3ABC 001A0A1C C0 5F 00 48 */ lfs f2, 0x48(r31) +/* 801A3AC0 001A0A20 C0 3F 00 38 */ lfs f1, 0x38(r31) +/* 801A3AC4 001A0A24 C0 1F 00 58 */ lfs f0, 0x58(r31) +/* 801A3AC8 001A0A28 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 801A3ACC 001A0A2C D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 801A3AD0 001A0A30 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801A3AD4 001A0A34 48 17 07 2D */ bl __ct__9CVector2fFff +/* 801A3AD8 001A0A38 C0 21 00 08 */ lfs f1, 8(r1) +/* 801A3ADC 001A0A3C 38 61 00 18 */ addi r3, r1, 0x18 +/* 801A3AE0 001A0A40 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 801A3AE4 001A0A44 38 81 00 20 */ addi r4, r1, 0x20 +/* 801A3AE8 001A0A48 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801A3AEC 001A0A4C D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801A3AF0 001A0A50 48 17 04 D5 */ bl GetAngleDiff__9CVector2fFRC9CVector2fRC9CVector2f +/* 801A3AF4 001A0A54 FC 01 F8 40 */ fcmpo cr0, f1, f31 +/* 801A3AF8 001A0A58 7C 00 00 26 */ mfcr r0 +/* 801A3AFC 001A0A5C 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f +/* 801A3B00 001A0A60 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 801A3B04 001A0A64 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801A3B08 001A0A68 CB E1 00 60 */ lfd f31, 0x60(r1) +/* 801A3B0C 001A0A6C 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 801A3B10 001A0A70 7C 08 03 A6 */ mtlr r0 +/* 801A3B14 001A0A74 38 21 00 70 */ addi r1, r1, 0x70 +/* 801A3B18 001A0A78 4E 80 00 20 */ blr + +.global ShouldFire__12CIceSheegothR13CStateManagerf +ShouldFire__12CIceSheegothR13CStateManagerf: +/* 801A3B1C 001A0A7C 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 801A3B20 001A0A80 7C 08 02 A6 */ mflr r0 +/* 801A3B24 001A0A84 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 801A3B28 001A0A88 93 E1 00 9C */ stw r31, 0x9c(r1) +/* 801A3B2C 001A0A8C 7C 9F 23 78 */ mr r31, r4 +/* 801A3B30 001A0A90 93 C1 00 98 */ stw r30, 0x98(r1) +/* 801A3B34 001A0A94 7C 7E 1B 78 */ mr r30, r3 +/* 801A3B38 001A0A98 80 A4 08 4C */ lwz r5, 0x84c(r4) +/* 801A3B3C 001A0A9C 80 63 00 04 */ lwz r3, 4(r3) +/* 801A3B40 001A0AA0 80 05 00 04 */ lwz r0, 4(r5) +/* 801A3B44 001A0AA4 7C 03 00 00 */ cmpw r3, r0 +/* 801A3B48 001A0AA8 40 82 01 14 */ bne lbl_801A3C5C +/* 801A3B4C 001A0AAC C0 3E 09 54 */ lfs f1, 0x954(r30) +/* 801A3B50 001A0AB0 C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 801A3B54 001A0AB4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801A3B58 001A0AB8 4C 40 13 82 */ cror 2, 0, 2 +/* 801A3B5C 001A0ABC 40 82 01 00 */ bne lbl_801A3C5C +/* 801A3B60 001A0AC0 C0 45 00 60 */ lfs f2, 0x60(r5) +/* 801A3B64 001A0AC4 7F C4 F3 78 */ mr r4, r30 +/* 801A3B68 001A0AC8 C0 25 00 50 */ lfs f1, 0x50(r5) +/* 801A3B6C 001A0ACC 38 61 00 2C */ addi r3, r1, 0x2c +/* 801A3B70 001A0AD0 C0 05 00 40 */ lfs f0, 0x40(r5) +/* 801A3B74 001A0AD4 38 BE 0A F4 */ addi r5, r30, 0xaf4 +/* 801A3B78 001A0AD8 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801A3B7C 001A0ADC D0 21 00 24 */ stfs f1, 0x24(r1) +/* 801A3B80 001A0AE0 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 801A3B84 001A0AE4 4B ED 4D 35 */ bl GetLctrTransform__10CPatternedCFRC6CSegId +/* 801A3B88 001A0AE8 38 61 00 5C */ addi r3, r1, 0x5c +/* 801A3B8C 001A0AEC 38 81 00 2C */ addi r4, r1, 0x2c +/* 801A3B90 001A0AF0 48 16 EF E5 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801A3B94 001A0AF4 C0 21 00 78 */ lfs f1, 0x78(r1) +/* 801A3B98 001A0AF8 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 801A3B9C 001A0AFC C0 41 00 68 */ lfs f2, 0x68(r1) +/* 801A3BA0 001A0B00 EC 60 08 28 */ fsubs f3, f0, f1 +/* 801A3BA4 001A0B04 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 801A3BA8 001A0B08 C0 A1 00 88 */ lfs f5, 0x88(r1) +/* 801A3BAC 001A0B0C EC 80 10 28 */ fsubs f4, f0, f2 +/* 801A3BB0 001A0B10 C0 C1 00 28 */ lfs f6, 0x28(r1) +/* 801A3BB4 001A0B14 EC 03 00 F2 */ fmuls f0, f3, f3 +/* 801A3BB8 001A0B18 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801A3BBC 001A0B1C EC 46 28 28 */ fsubs f2, f6, f5 +/* 801A3BC0 001A0B20 EC 04 01 3A */ fmadds f0, f4, f4, f0 +/* 801A3BC4 001A0B24 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801A3BC8 001A0B28 D0 A1 00 1C */ stfs f5, 0x1c(r1) +/* 801A3BCC 001A0B2C EC 22 00 BA */ fmadds f1, f2, f2, f0 +/* 801A3BD0 001A0B30 C0 9E 00 60 */ lfs f4, 0x60(r30) +/* 801A3BD4 001A0B34 C0 1E 03 00 */ lfs f0, 0x300(r30) +/* 801A3BD8 001A0B38 C0 7E 00 50 */ lfs f3, 0x50(r30) +/* 801A3BDC 001A0B3C EC C6 20 28 */ fsubs f6, f6, f4 +/* 801A3BE0 001A0B40 EC 00 00 32 */ fmuls f0, f0, f0 +/* 801A3BE4 001A0B44 C0 5E 00 40 */ lfs f2, 0x40(r30) +/* 801A3BE8 001A0B48 EC A5 20 28 */ fsubs f5, f5, f4 +/* 801A3BEC 001A0B4C D0 61 00 0C */ stfs f3, 0xc(r1) +/* 801A3BF0 001A0B50 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801A3BF4 001A0B54 D0 41 00 08 */ stfs f2, 8(r1) +/* 801A3BF8 001A0B58 D0 81 00 10 */ stfs f4, 0x10(r1) +/* 801A3BFC 001A0B5C 4C 40 13 82 */ cror 2, 0, 2 +/* 801A3C00 001A0B60 40 82 00 5C */ bne lbl_801A3C5C +/* 801A3C04 001A0B64 FC 00 32 10 */ fabs f0, f6 +/* 801A3C08 001A0B68 FC 00 00 18 */ frsp f0, f0 +/* 801A3C0C 001A0B6C FC 00 28 40 */ fcmpo cr0, f0, f5 +/* 801A3C10 001A0B70 40 80 00 4C */ bge lbl_801A3C5C +/* 801A3C14 001A0B74 7F C3 F3 78 */ mr r3, r30 +/* 801A3C18 001A0B78 7F E4 FB 78 */ mr r4, r31 +/* 801A3C1C 001A0B7C 81 9E 00 00 */ lwz r12, 0(r30) +/* 801A3C20 001A0B80 C0 22 A7 C4 */ lfs f1, lbl_805AC4E4@sda21(r2) +/* 801A3C24 001A0B84 81 8C 01 E8 */ lwz r12, 0x1e8(r12) +/* 801A3C28 001A0B88 7D 89 03 A6 */ mtctr r12 +/* 801A3C2C 001A0B8C 4E 80 04 21 */ bctrl +/* 801A3C30 001A0B90 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A3C34 001A0B94 40 82 00 28 */ bne lbl_801A3C5C +/* 801A3C38 001A0B98 7F C3 F3 78 */ mr r3, r30 +/* 801A3C3C 001A0B9C 7F E4 FB 78 */ mr r4, r31 +/* 801A3C40 001A0BA0 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801A3C44 001A0BA4 38 C1 00 20 */ addi r6, r1, 0x20 +/* 801A3C48 001A0BA8 48 05 11 89 */ bl IsPatternObstructed__10CPatternedCFR13CStateManagerRC9CVector3fRC9CVector3f +/* 801A3C4C 001A0BAC 54 60 06 3E */ clrlwi r0, r3, 0x18 +/* 801A3C50 001A0BB0 7C 00 00 34 */ cntlzw r0, r0 +/* 801A3C54 001A0BB4 54 03 D9 7E */ srwi r3, r0, 5 +/* 801A3C58 001A0BB8 48 00 00 08 */ b lbl_801A3C60 +lbl_801A3C5C: +/* 801A3C5C 001A0BBC 38 60 00 00 */ li r3, 0 +lbl_801A3C60: +/* 801A3C60 001A0BC0 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 801A3C64 001A0BC4 83 E1 00 9C */ lwz r31, 0x9c(r1) +/* 801A3C68 001A0BC8 83 C1 00 98 */ lwz r30, 0x98(r1) +/* 801A3C6C 001A0BCC 7C 08 03 A6 */ mtlr r0 +/* 801A3C70 001A0BD0 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 801A3C74 001A0BD4 4E 80 00 20 */ blr + +.global ShouldDoubleSnap__12CIceSheegothR13CStateManagerf +ShouldDoubleSnap__12CIceSheegothR13CStateManagerf: +/* 801A3C78 001A0BD8 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801A3C7C 001A0BDC 7C 08 02 A6 */ mflr r0 +/* 801A3C80 001A0BE0 90 01 00 44 */ stw r0, 0x44(r1) +/* 801A3C84 001A0BE4 DB E1 00 30 */ stfd f31, 0x30(r1) +/* 801A3C88 001A0BE8 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 801A3C8C 001A0BEC DB C1 00 20 */ stfd f30, 0x20(r1) +/* 801A3C90 001A0BF0 F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 +/* 801A3C94 001A0BF4 DB A1 00 10 */ stfd f29, 0x10(r1) +/* 801A3C98 001A0BF8 F3 A1 00 18 */ psq_st f29, 24(r1), 0, qr0 +/* 801A3C9C 001A0BFC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801A3CA0 001A0C00 93 C1 00 08 */ stw r30, 8(r1) +/* 801A3CA4 001A0C04 7C 9F 23 78 */ mr r31, r4 +/* 801A3CA8 001A0C08 7C 7E 1B 78 */ mr r30, r3 +/* 801A3CAC 001A0C0C 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 801A3CB0 001A0C10 80 A3 00 04 */ lwz r5, 4(r3) +/* 801A3CB4 001A0C14 80 04 00 04 */ lwz r0, 4(r4) +/* 801A3CB8 001A0C18 7C 05 00 00 */ cmpw r5, r0 +/* 801A3CBC 001A0C1C 40 82 00 A4 */ bne lbl_801A3D60 +/* 801A3CC0 001A0C20 C0 3E 09 58 */ lfs f1, 0x958(r30) +/* 801A3CC4 001A0C24 C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 801A3CC8 001A0C28 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801A3CCC 001A0C2C 4C 40 13 82 */ cror 2, 0, 2 +/* 801A3CD0 001A0C30 40 82 00 90 */ bne lbl_801A3D60 +/* 801A3CD4 001A0C34 38 80 00 01 */ li r4, 1 +/* 801A3CD8 001A0C38 4B FF B1 41 */ bl sub_8019ee18 +/* 801A3CDC 001A0C3C 7F C3 F3 78 */ mr r3, r30 +/* 801A3CE0 001A0C40 C0 3E 09 2C */ lfs f1, 0x92c(r30) +/* 801A3CE4 001A0C44 81 9E 00 00 */ lwz r12, 0(r30) +/* 801A3CE8 001A0C48 7F E4 FB 78 */ mr r4, r31 +/* 801A3CEC 001A0C4C C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801A3CF0 001A0C50 3B E0 00 00 */ li r31, 0 +/* 801A3CF4 001A0C54 C0 7E 09 30 */ lfs f3, 0x930(r30) +/* 801A3CF8 001A0C58 C0 5E 00 50 */ lfs f2, 0x50(r30) +/* 801A3CFC 001A0C5C EF A1 00 28 */ fsubs f29, f1, f0 +/* 801A3D00 001A0C60 C0 3E 09 34 */ lfs f1, 0x934(r30) +/* 801A3D04 001A0C64 C0 1E 00 60 */ lfs f0, 0x60(r30) +/* 801A3D08 001A0C68 EF C3 10 28 */ fsubs f30, f3, f2 +/* 801A3D0C 001A0C6C 81 8C 01 90 */ lwz r12, 0x190(r12) +/* 801A3D10 001A0C70 EF E1 00 28 */ fsubs f31, f1, f0 +/* 801A3D14 001A0C74 C0 22 A7 5C */ lfs f1, lbl_805AC47C@sda21(r2) +/* 801A3D18 001A0C78 7D 89 03 A6 */ mtctr r12 +/* 801A3D1C 001A0C7C 4E 80 04 21 */ bctrl +/* 801A3D20 001A0C80 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A3D24 001A0C84 40 82 00 30 */ bne lbl_801A3D54 +/* 801A3D28 001A0C88 80 7E 08 48 */ lwz r3, 0x848(r30) +/* 801A3D2C 001A0C8C 80 9E 09 0C */ lwz r4, 0x90c(r30) +/* 801A3D30 001A0C90 38 03 FF FF */ addi r0, r3, -1 +/* 801A3D34 001A0C94 7C 04 00 00 */ cmpw r4, r0 +/* 801A3D38 001A0C98 40 80 00 1C */ bge lbl_801A3D54 +/* 801A3D3C 001A0C9C EC 3E 07 B2 */ fmuls f1, f30, f30 +/* 801A3D40 001A0CA0 C0 02 A7 D0 */ lfs f0, lbl_805AC4F0@sda21(r2) +/* 801A3D44 001A0CA4 EC 3D 0F 7A */ fmadds f1, f29, f29, f1 +/* 801A3D48 001A0CA8 EC 3F 0F FA */ fmadds f1, f31, f31, f1 +/* 801A3D4C 001A0CAC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801A3D50 001A0CB0 40 80 00 08 */ bge lbl_801A3D58 +lbl_801A3D54: +/* 801A3D54 001A0CB4 3B E0 00 01 */ li r31, 1 +lbl_801A3D58: +/* 801A3D58 001A0CB8 7F E3 FB 78 */ mr r3, r31 +/* 801A3D5C 001A0CBC 48 00 00 08 */ b lbl_801A3D64 +lbl_801A3D60: +/* 801A3D60 001A0CC0 38 60 00 00 */ li r3, 0 +lbl_801A3D64: +/* 801A3D64 001A0CC4 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 801A3D68 001A0CC8 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 801A3D6C 001A0CCC E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 +/* 801A3D70 001A0CD0 CB C1 00 20 */ lfd f30, 0x20(r1) +/* 801A3D74 001A0CD4 E3 A1 00 18 */ psq_l f29, 24(r1), 0, qr0 +/* 801A3D78 001A0CD8 CB A1 00 10 */ lfd f29, 0x10(r1) +/* 801A3D7C 001A0CDC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801A3D80 001A0CE0 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801A3D84 001A0CE4 83 C1 00 08 */ lwz r30, 8(r1) +/* 801A3D88 001A0CE8 7C 08 03 A6 */ mtlr r0 +/* 801A3D8C 001A0CEC 38 21 00 40 */ addi r1, r1, 0x40 +/* 801A3D90 001A0CF0 4E 80 00 20 */ blr + +.global ShouldSpecialAttack__12CIceSheegothR13CStateManagerf +ShouldSpecialAttack__12CIceSheegothR13CStateManagerf: +/* 801A3D94 001A0CF4 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 801A3D98 001A0CF8 7C 08 02 A6 */ mflr r0 +/* 801A3D9C 001A0CFC 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 801A3DA0 001A0D00 93 E1 00 9C */ stw r31, 0x9c(r1) +/* 801A3DA4 001A0D04 7C 9F 23 78 */ mr r31, r4 +/* 801A3DA8 001A0D08 93 C1 00 98 */ stw r30, 0x98(r1) +/* 801A3DAC 001A0D0C 7C 7E 1B 78 */ mr r30, r3 +/* 801A3DB0 001A0D10 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 801A3DB4 001A0D14 80 A3 00 04 */ lwz r5, 4(r3) +/* 801A3DB8 001A0D18 80 04 00 04 */ lwz r0, 4(r4) +/* 801A3DBC 001A0D1C 7C 05 00 00 */ cmpw r5, r0 +/* 801A3DC0 001A0D20 40 82 01 2C */ bne lbl_801A3EEC +/* 801A3DC4 001A0D24 C0 3E 09 54 */ lfs f1, 0x954(r30) +/* 801A3DC8 001A0D28 C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 801A3DCC 001A0D2C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801A3DD0 001A0D30 4C 40 13 82 */ cror 2, 0, 2 +/* 801A3DD4 001A0D34 40 82 01 18 */ bne lbl_801A3EEC +/* 801A3DD8 001A0D38 C0 22 A7 68 */ lfs f1, lbl_805AC488@sda21(r2) +/* 801A3DDC 001A0D3C C0 1E 06 DC */ lfs f0, 0x6dc(r30) +/* 801A3DE0 001A0D40 C0 5E 09 74 */ lfs f2, 0x974(r30) +/* 801A3DE4 001A0D44 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801A3DE8 001A0D48 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801A3DEC 001A0D4C 4C 41 13 82 */ cror 2, 1, 2 +/* 801A3DF0 001A0D50 40 82 00 FC */ bne lbl_801A3EEC +/* 801A3DF4 001A0D54 4B FF AE C9 */ bl sub_8019ecbc +/* 801A3DF8 001A0D58 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A3DFC 001A0D5C 41 82 00 F0 */ beq lbl_801A3EEC +/* 801A3E00 001A0D60 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 801A3E04 001A0D64 7F E5 FB 78 */ mr r5, r31 +/* 801A3E08 001A0D68 38 61 00 08 */ addi r3, r1, 8 +/* 801A3E0C 001A0D6C C0 22 A7 5C */ lfs f1, lbl_805AC47C@sda21(r2) +/* 801A3E10 001A0D70 81 84 00 00 */ lwz r12, 0(r4) +/* 801A3E14 001A0D74 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801A3E18 001A0D78 7D 89 03 A6 */ mtctr r12 +/* 801A3E1C 001A0D7C 4E 80 04 21 */ bctrl +/* 801A3E20 001A0D80 C0 41 00 08 */ lfs f2, 8(r1) +/* 801A3E24 001A0D84 7F C4 F3 78 */ mr r4, r30 +/* 801A3E28 001A0D88 C0 21 00 0C */ lfs f1, 0xc(r1) +/* 801A3E2C 001A0D8C 38 61 00 2C */ addi r3, r1, 0x2c +/* 801A3E30 001A0D90 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 801A3E34 001A0D94 38 BE 0A F4 */ addi r5, r30, 0xaf4 +/* 801A3E38 001A0D98 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 801A3E3C 001A0D9C D0 21 00 24 */ stfs f1, 0x24(r1) +/* 801A3E40 001A0DA0 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 801A3E44 001A0DA4 4B ED 4A 75 */ bl GetLctrTransform__10CPatternedCFRC6CSegId +/* 801A3E48 001A0DA8 38 61 00 5C */ addi r3, r1, 0x5c +/* 801A3E4C 001A0DAC 38 81 00 2C */ addi r4, r1, 0x2c +/* 801A3E50 001A0DB0 48 16 ED 25 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801A3E54 001A0DB4 C0 41 00 78 */ lfs f2, 0x78(r1) +/* 801A3E58 001A0DB8 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 801A3E5C 001A0DBC C0 61 00 68 */ lfs f3, 0x68(r1) +/* 801A3E60 001A0DC0 EC 80 10 28 */ fsubs f4, f0, f2 +/* 801A3E64 001A0DC4 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 801A3E68 001A0DC8 C0 C1 00 88 */ lfs f6, 0x88(r1) +/* 801A3E6C 001A0DCC EC A0 18 28 */ fsubs f5, f0, f3 +/* 801A3E70 001A0DD0 C0 21 00 28 */ lfs f1, 0x28(r1) +/* 801A3E74 001A0DD4 EC 04 01 32 */ fmuls f0, f4, f4 +/* 801A3E78 001A0DD8 D0 61 00 14 */ stfs f3, 0x14(r1) +/* 801A3E7C 001A0DDC EC 21 30 28 */ fsubs f1, f1, f6 +/* 801A3E80 001A0DE0 EC 05 01 7A */ fmadds f0, f5, f5, f0 +/* 801A3E84 001A0DE4 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 801A3E88 001A0DE8 D0 C1 00 1C */ stfs f6, 0x1c(r1) +/* 801A3E8C 001A0DEC EC 21 00 7A */ fmadds f1, f1, f1, f0 +/* 801A3E90 001A0DF0 C0 1E 02 FC */ lfs f0, 0x2fc(r30) +/* 801A3E94 001A0DF4 EC 00 00 32 */ fmuls f0, f0, f0 +/* 801A3E98 001A0DF8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801A3E9C 001A0DFC 4C 41 13 82 */ cror 2, 1, 2 +/* 801A3EA0 001A0E00 40 82 00 4C */ bne lbl_801A3EEC +/* 801A3EA4 001A0E04 7F C3 F3 78 */ mr r3, r30 +/* 801A3EA8 001A0E08 7F E4 FB 78 */ mr r4, r31 +/* 801A3EAC 001A0E0C 81 9E 00 00 */ lwz r12, 0(r30) +/* 801A3EB0 001A0E10 C0 22 A7 C4 */ lfs f1, lbl_805AC4E4@sda21(r2) +/* 801A3EB4 001A0E14 81 8C 01 E8 */ lwz r12, 0x1e8(r12) +/* 801A3EB8 001A0E18 7D 89 03 A6 */ mtctr r12 +/* 801A3EBC 001A0E1C 4E 80 04 21 */ bctrl +/* 801A3EC0 001A0E20 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A3EC4 001A0E24 40 82 00 28 */ bne lbl_801A3EEC +/* 801A3EC8 001A0E28 7F C3 F3 78 */ mr r3, r30 +/* 801A3ECC 001A0E2C 7F E4 FB 78 */ mr r4, r31 +/* 801A3ED0 001A0E30 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801A3ED4 001A0E34 38 C1 00 20 */ addi r6, r1, 0x20 +/* 801A3ED8 001A0E38 48 05 0E F9 */ bl IsPatternObstructed__10CPatternedCFR13CStateManagerRC9CVector3fRC9CVector3f +/* 801A3EDC 001A0E3C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A3EE0 001A0E40 40 82 00 0C */ bne lbl_801A3EEC +/* 801A3EE4 001A0E44 38 60 00 01 */ li r3, 1 +/* 801A3EE8 001A0E48 48 00 00 08 */ b lbl_801A3EF0 +lbl_801A3EEC: +/* 801A3EEC 001A0E4C 38 60 00 00 */ li r3, 0 +lbl_801A3EF0: +/* 801A3EF0 001A0E50 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 801A3EF4 001A0E54 83 E1 00 9C */ lwz r31, 0x9c(r1) +/* 801A3EF8 001A0E58 83 C1 00 98 */ lwz r30, 0x98(r1) +/* 801A3EFC 001A0E5C 7C 08 03 A6 */ mtlr r0 +/* 801A3F00 001A0E60 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 801A3F04 001A0E64 4E 80 00 20 */ blr + +.global ShouldAttack__12CIceSheegothR13CStateManagerf +ShouldAttack__12CIceSheegothR13CStateManagerf: +/* 801A3F08 001A0E68 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 801A3F0C 001A0E6C 7C 08 02 A6 */ mflr r0 +/* 801A3F10 001A0E70 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 801A3F14 001A0E74 DB E1 00 B0 */ stfd f31, 0xb0(r1) +/* 801A3F18 001A0E78 F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0 +/* 801A3F1C 001A0E7C DB C1 00 A0 */ stfd f30, 0xa0(r1) +/* 801A3F20 001A0E80 F3 C1 00 A8 */ psq_st f30, 168(r1), 0, qr0 +/* 801A3F24 001A0E84 93 E1 00 9C */ stw r31, 0x9c(r1) +/* 801A3F28 001A0E88 93 C1 00 98 */ stw r30, 0x98(r1) +/* 801A3F2C 001A0E8C 93 A1 00 94 */ stw r29, 0x94(r1) +/* 801A3F30 001A0E90 7C 9E 23 78 */ mr r30, r4 +/* 801A3F34 001A0E94 7C 7D 1B 78 */ mr r29, r3 +/* 801A3F38 001A0E98 83 E4 08 4C */ lwz r31, 0x84c(r4) +/* 801A3F3C 001A0E9C 80 63 00 04 */ lwz r3, 4(r3) +/* 801A3F40 001A0EA0 80 1F 00 04 */ lwz r0, 4(r31) +/* 801A3F44 001A0EA4 7C 03 00 00 */ cmpw r3, r0 +/* 801A3F48 001A0EA8 40 82 01 50 */ bne lbl_801A4098 +/* 801A3F4C 001A0EAC 88 1D 07 5C */ lbz r0, 0x75c(r29) +/* 801A3F50 001A0EB0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801A3F54 001A0EB4 40 82 01 44 */ bne lbl_801A4098 +/* 801A3F58 001A0EB8 7F E3 FB 78 */ mr r3, r31 +/* 801A3F5C 001A0EBC 4B E7 1D A1 */ bl GetFrozenState__7CPlayerCFv +/* 801A3F60 001A0EC0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A3F64 001A0EC4 40 82 01 34 */ bne lbl_801A4098 +/* 801A3F68 001A0EC8 7F E4 FB 78 */ mr r4, r31 +/* 801A3F6C 001A0ECC 7F C5 F3 78 */ mr r5, r30 +/* 801A3F70 001A0ED0 81 9F 00 00 */ lwz r12, 0(r31) +/* 801A3F74 001A0ED4 38 61 00 08 */ addi r3, r1, 8 +/* 801A3F78 001A0ED8 C0 22 A7 5C */ lfs f1, lbl_805AC47C@sda21(r2) +/* 801A3F7C 001A0EDC 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801A3F80 001A0EE0 7D 89 03 A6 */ mtctr r12 +/* 801A3F84 001A0EE4 4E 80 04 21 */ bctrl +/* 801A3F88 001A0EE8 C0 A1 00 08 */ lfs f5, 8(r1) +/* 801A3F8C 001A0EEC C0 41 00 0C */ lfs f2, 0xc(r1) +/* 801A3F90 001A0EF0 C0 81 00 10 */ lfs f4, 0x10(r1) +/* 801A3F94 001A0EF4 D0 A1 00 20 */ stfs f5, 0x20(r1) +/* 801A3F98 001A0EF8 C0 22 A7 5C */ lfs f1, lbl_805AC47C@sda21(r2) +/* 801A3F9C 001A0EFC D0 41 00 24 */ stfs f2, 0x24(r1) +/* 801A3FA0 001A0F00 D0 81 00 28 */ stfs f4, 0x28(r1) +/* 801A3FA4 001A0F04 C0 1D 00 50 */ lfs f0, 0x50(r29) +/* 801A3FA8 001A0F08 C0 7D 00 40 */ lfs f3, 0x40(r29) +/* 801A3FAC 001A0F0C EC C2 00 28 */ fsubs f6, f2, f0 +/* 801A3FB0 001A0F10 C0 5D 00 60 */ lfs f2, 0x60(r29) +/* 801A3FB4 001A0F14 C0 1D 09 54 */ lfs f0, 0x954(r29) +/* 801A3FB8 001A0F18 EC A5 18 28 */ fsubs f5, f5, f3 +/* 801A3FBC 001A0F1C EC 64 10 28 */ fsubs f3, f4, f2 +/* 801A3FC0 001A0F20 EC 46 01 B2 */ fmuls f2, f6, f6 +/* 801A3FC4 001A0F24 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801A3FC8 001A0F28 EC 05 11 7A */ fmadds f0, f5, f5, f2 +/* 801A3FCC 001A0F2C EF E3 00 FA */ fmadds f31, f3, f3, f0 +/* 801A3FD0 001A0F30 4C 40 13 82 */ cror 2, 0, 2 +/* 801A3FD4 001A0F34 40 82 00 14 */ bne lbl_801A3FE8 +/* 801A3FD8 001A0F38 C0 1D 09 60 */ lfs f0, 0x960(r29) +/* 801A3FDC 001A0F3C FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801A3FE0 001A0F40 4C 40 13 82 */ cror 2, 0, 2 +/* 801A3FE4 001A0F44 41 82 00 18 */ beq lbl_801A3FFC +lbl_801A3FE8: +/* 801A3FE8 001A0F48 C0 1D 02 FC */ lfs f0, 0x2fc(r29) +/* 801A3FEC 001A0F4C EC 00 00 32 */ fmuls f0, f0, f0 +/* 801A3FF0 001A0F50 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 801A3FF4 001A0F54 4C 40 13 82 */ cror 2, 0, 2 +/* 801A3FF8 001A0F58 40 82 00 A0 */ bne lbl_801A4098 +lbl_801A3FFC: +/* 801A3FFC 001A0F5C 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 801A4000 001A0F60 C3 DD 07 44 */ lfs f30, 0x744(r29) +/* 801A4004 001A0F64 38 63 02 A4 */ addi r3, r3, 0x2a4 +/* 801A4008 001A0F68 4B F8 FE A5 */ bl GetMaxSpeed__14CBodyStateInfoCFv +/* 801A400C 001A0F6C EC 01 07 B2 */ fmuls f0, f1, f30 +/* 801A4010 001A0F70 EC 00 00 32 */ fmuls f0, f0, f0 +/* 801A4014 001A0F74 FC 00 F8 40 */ fcmpo cr0, f0, f31 +/* 801A4018 001A0F78 40 81 00 80 */ ble lbl_801A4098 +/* 801A401C 001A0F7C 7F A3 EB 78 */ mr r3, r29 +/* 801A4020 001A0F80 7F C4 F3 78 */ mr r4, r30 +/* 801A4024 001A0F84 81 9D 00 00 */ lwz r12, 0(r29) +/* 801A4028 001A0F88 C0 22 A7 C4 */ lfs f1, lbl_805AC4E4@sda21(r2) +/* 801A402C 001A0F8C 81 8C 01 E8 */ lwz r12, 0x1e8(r12) +/* 801A4030 001A0F90 7D 89 03 A6 */ mtctr r12 +/* 801A4034 001A0F94 4E 80 04 21 */ bctrl +/* 801A4038 001A0F98 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A403C 001A0F9C 40 82 00 5C */ bne lbl_801A4098 +/* 801A4040 001A0FA0 7F A4 EB 78 */ mr r4, r29 +/* 801A4044 001A0FA4 38 61 00 2C */ addi r3, r1, 0x2c +/* 801A4048 001A0FA8 38 BD 0A F4 */ addi r5, r29, 0xaf4 +/* 801A404C 001A0FAC 4B ED 48 6D */ bl GetLctrTransform__10CPatternedCFRC6CSegId +/* 801A4050 001A0FB0 38 61 00 5C */ addi r3, r1, 0x5c +/* 801A4054 001A0FB4 38 81 00 2C */ addi r4, r1, 0x2c +/* 801A4058 001A0FB8 48 16 EB 1D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801A405C 001A0FBC C0 41 00 68 */ lfs f2, 0x68(r1) +/* 801A4060 001A0FC0 7F A3 EB 78 */ mr r3, r29 +/* 801A4064 001A0FC4 C0 21 00 78 */ lfs f1, 0x78(r1) +/* 801A4068 001A0FC8 7F C4 F3 78 */ mr r4, r30 +/* 801A406C 001A0FCC C0 01 00 88 */ lfs f0, 0x88(r1) +/* 801A4070 001A0FD0 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801A4074 001A0FD4 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801A4078 001A0FD8 38 C1 00 20 */ addi r6, r1, 0x20 +/* 801A407C 001A0FDC D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801A4080 001A0FE0 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801A4084 001A0FE4 48 05 0D 4D */ bl IsPatternObstructed__10CPatternedCFR13CStateManagerRC9CVector3fRC9CVector3f +/* 801A4088 001A0FE8 54 60 06 3E */ clrlwi r0, r3, 0x18 +/* 801A408C 001A0FEC 7C 00 00 34 */ cntlzw r0, r0 +/* 801A4090 001A0FF0 54 03 D9 7E */ srwi r3, r0, 5 +/* 801A4094 001A0FF4 48 00 00 08 */ b lbl_801A409C +lbl_801A4098: +/* 801A4098 001A0FF8 38 60 00 00 */ li r3, 0 +lbl_801A409C: +/* 801A409C 001A0FFC E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0 +/* 801A40A0 001A1000 CB E1 00 B0 */ lfd f31, 0xb0(r1) +/* 801A40A4 001A1004 E3 C1 00 A8 */ psq_l f30, 168(r1), 0, qr0 +/* 801A40A8 001A1008 CB C1 00 A0 */ lfd f30, 0xa0(r1) +/* 801A40AC 001A100C 83 E1 00 9C */ lwz r31, 0x9c(r1) +/* 801A40B0 001A1010 83 C1 00 98 */ lwz r30, 0x98(r1) +/* 801A40B4 001A1014 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 801A40B8 001A1018 83 A1 00 94 */ lwz r29, 0x94(r1) +/* 801A40BC 001A101C 7C 08 03 A6 */ mtlr r0 +/* 801A40C0 001A1020 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 801A40C4 001A1024 4E 80 00 20 */ blr + +.global Leash__12CIceSheegothR13CStateManagerf +Leash__12CIceSheegothR13CStateManagerf: +/* 801A40C8 001A1028 C0 C3 00 50 */ lfs f6, 0x50(r3) +/* 801A40CC 001A102C C0 03 03 A4 */ lfs f0, 0x3a4(r3) +/* 801A40D0 001A1030 C0 43 03 C8 */ lfs f2, 0x3c8(r3) +/* 801A40D4 001A1034 EC 60 30 28 */ fsubs f3, f0, f6 +/* 801A40D8 001A1038 C0 E3 00 40 */ lfs f7, 0x40(r3) +/* 801A40DC 001A103C C0 23 03 A0 */ lfs f1, 0x3a0(r3) +/* 801A40E0 001A1040 EC 02 00 B2 */ fmuls f0, f2, f2 +/* 801A40E4 001A1044 C0 A3 00 60 */ lfs f5, 0x60(r3) +/* 801A40E8 001A1048 C0 43 03 A8 */ lfs f2, 0x3a8(r3) +/* 801A40EC 001A104C EC 81 38 28 */ fsubs f4, f1, f7 +/* 801A40F0 001A1050 EC 23 00 F2 */ fmuls f1, f3, f3 +/* 801A40F4 001A1054 EC 42 28 28 */ fsubs f2, f2, f5 +/* 801A40F8 001A1058 EC 24 09 3A */ fmadds f1, f4, f4, f1 +/* 801A40FC 001A105C EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 801A4100 001A1060 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801A4104 001A1064 40 81 00 5C */ ble lbl_801A4160 +/* 801A4108 001A1068 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 801A410C 001A106C 38 00 00 00 */ li r0, 0 +/* 801A4110 001A1070 C0 03 03 CC */ lfs f0, 0x3cc(r3) +/* 801A4114 001A1074 C0 24 00 50 */ lfs f1, 0x50(r4) +/* 801A4118 001A1078 C0 44 00 40 */ lfs f2, 0x40(r4) +/* 801A411C 001A107C EC 00 00 32 */ fmuls f0, f0, f0 +/* 801A4120 001A1080 EC 61 30 28 */ fsubs f3, f1, f6 +/* 801A4124 001A1084 C0 24 00 60 */ lfs f1, 0x60(r4) +/* 801A4128 001A1088 EC 82 38 28 */ fsubs f4, f2, f7 +/* 801A412C 001A108C EC 41 28 28 */ fsubs f2, f1, f5 +/* 801A4130 001A1090 EC 23 00 F2 */ fmuls f1, f3, f3 +/* 801A4134 001A1094 EC 24 09 3A */ fmadds f1, f4, f4, f1 +/* 801A4138 001A1098 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 801A413C 001A109C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801A4140 001A10A0 40 81 00 18 */ ble lbl_801A4158 +/* 801A4144 001A10A4 C0 23 03 D4 */ lfs f1, 0x3d4(r3) +/* 801A4148 001A10A8 C0 03 03 D0 */ lfs f0, 0x3d0(r3) +/* 801A414C 001A10AC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801A4150 001A10B0 40 81 00 08 */ ble lbl_801A4158 +/* 801A4154 001A10B4 38 00 00 01 */ li r0, 1 +lbl_801A4158: +/* 801A4158 001A10B8 7C 03 03 78 */ mr r3, r0 +/* 801A415C 001A10BC 4E 80 00 20 */ blr +lbl_801A4160: +/* 801A4160 001A10C0 38 60 00 00 */ li r3, 0 +/* 801A4164 001A10C4 4E 80 00 20 */ blr + +.global LostInterest__12CIceSheegothR13CStateManagerf +LostInterest__12CIceSheegothR13CStateManagerf: +/* 801A4168 001A10C8 C0 23 09 68 */ lfs f1, 0x968(r3) +/* 801A416C 001A10CC C0 03 07 4C */ lfs f0, 0x74c(r3) +/* 801A4170 001A10D0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801A4174 001A10D4 4C 41 13 82 */ cror 2, 1, 2 +/* 801A4178 001A10D8 7C 00 00 26 */ mfcr r0 +/* 801A417C 001A10DC 54 03 1F FE */ rlwinm r3, r0, 3, 0x1f, 0x1f +/* 801A4180 001A10E0 4E 80 00 20 */ blr + +.global OffLine__12CIceSheegothR13CStateManagerf +OffLine__12CIceSheegothR13CStateManagerf: +/* 801A4184 001A10E4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801A4188 001A10E8 7C 08 02 A6 */ mflr r0 +/* 801A418C 001A10EC 90 01 00 14 */ stw r0, 0x14(r1) +/* 801A4190 001A10F0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801A4194 001A10F4 7C 9F 23 78 */ mr r31, r4 +/* 801A4198 001A10F8 38 80 00 00 */ li r4, 0 +/* 801A419C 001A10FC 93 C1 00 08 */ stw r30, 8(r1) +/* 801A41A0 001A1100 7C 7E 1B 78 */ mr r30, r3 +/* 801A41A4 001A1104 4B FF AC 75 */ bl sub_8019ee18 +/* 801A41A8 001A1108 7F C3 F3 78 */ mr r3, r30 +/* 801A41AC 001A110C 7F E4 FB 78 */ mr r4, r31 +/* 801A41B0 001A1110 81 9E 00 00 */ lwz r12, 0(r30) +/* 801A41B4 001A1114 C0 22 A7 5C */ lfs f1, lbl_805AC47C@sda21(r2) +/* 801A41B8 001A1118 81 8C 01 90 */ lwz r12, 0x190(r12) +/* 801A41BC 001A111C 7D 89 03 A6 */ mtctr r12 +/* 801A41C0 001A1120 4E 80 04 21 */ bctrl +/* 801A41C4 001A1124 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801A41C8 001A1128 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801A41CC 001A112C 83 C1 00 08 */ lwz r30, 8(r1) +/* 801A41D0 001A1130 7C 08 03 A6 */ mtlr r0 +/* 801A41D4 001A1134 38 21 00 10 */ addi r1, r1, 0x10 +/* 801A41D8 001A1138 4E 80 00 20 */ blr + +.global TooClose__12CIceSheegothR13CStateManagerf +TooClose__12CIceSheegothR13CStateManagerf: +/* 801A41DC 001A113C 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 801A41E0 001A1140 80 04 02 F8 */ lwz r0, 0x2f8(r4) +/* 801A41E4 001A1144 2C 00 00 01 */ cmpwi r0, 1 +/* 801A41E8 001A1148 40 82 00 5C */ bne lbl_801A4244 +/* 801A41EC 001A114C C0 24 00 60 */ lfs f1, 0x60(r4) +/* 801A41F0 001A1150 38 00 00 00 */ li r0, 0 +/* 801A41F4 001A1154 C0 03 00 60 */ lfs f0, 0x60(r3) +/* 801A41F8 001A1158 C0 84 00 40 */ lfs f4, 0x40(r4) +/* 801A41FC 001A115C C0 63 00 40 */ lfs f3, 0x40(r3) +/* 801A4200 001A1160 EC A1 00 28 */ fsubs f5, f1, f0 +/* 801A4204 001A1164 C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 801A4208 001A1168 C0 44 00 50 */ lfs f2, 0x50(r4) +/* 801A420C 001A116C EC 64 18 28 */ fsubs f3, f4, f3 +/* 801A4210 001A1170 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801A4214 001A1174 FC 05 00 40 */ fcmpo cr0, f5, f0 +/* 801A4218 001A1178 EC 02 08 28 */ fsubs f0, f2, f1 +/* 801A421C 001A117C 40 80 00 20 */ bge lbl_801A423C +/* 801A4220 001A1180 EC 20 00 32 */ fmuls f1, f0, f0 +/* 801A4224 001A1184 C0 03 09 78 */ lfs f0, 0x978(r3) +/* 801A4228 001A1188 EC 23 08 FA */ fmadds f1, f3, f3, f1 +/* 801A422C 001A118C EC 25 09 7A */ fmadds f1, f5, f5, f1 +/* 801A4230 001A1190 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801A4234 001A1194 40 80 00 08 */ bge lbl_801A423C +/* 801A4238 001A1198 38 00 00 01 */ li r0, 1 +lbl_801A423C: +/* 801A423C 001A119C 7C 03 03 78 */ mr r3, r0 +/* 801A4240 001A11A0 4E 80 00 20 */ blr +lbl_801A4244: +/* 801A4244 001A11A4 38 60 00 00 */ li r3, 0 +/* 801A4248 001A11A8 4E 80 00 20 */ blr + +.global ShotAt__12CIceSheegothR13CStateManagerf +ShotAt__12CIceSheegothR13CStateManagerf: +/* 801A424C 001A11AC 88 03 04 00 */ lbz r0, 0x400(r3) +/* 801A4250 001A11B0 54 03 CF FE */ rlwinm r3, r0, 0x19, 0x1f, 0x1f +/* 801A4254 001A11B4 7C 03 00 D0 */ neg r0, r3 +/* 801A4258 001A11B8 7C 00 1B 78 */ or r0, r0, r3 +/* 801A425C 001A11BC 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801A4260 001A11C0 4E 80 00 20 */ blr + +.global InMaxRange__12CIceSheegothR13CStateManagerf +InMaxRange__12CIceSheegothR13CStateManagerf: +/* 801A4264 001A11C4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801A4268 001A11C8 7C 08 02 A6 */ mflr r0 +/* 801A426C 001A11CC 90 01 00 14 */ stw r0, 0x14(r1) +/* 801A4270 001A11D0 88 03 07 5C */ lbz r0, 0x75c(r3) +/* 801A4274 001A11D4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801A4278 001A11D8 41 82 00 0C */ beq lbl_801A4284 +/* 801A427C 001A11DC 38 60 00 01 */ li r3, 1 +/* 801A4280 001A11E0 48 00 00 08 */ b lbl_801A4288 +lbl_801A4284: +/* 801A4284 001A11E4 48 05 21 61 */ bl InMaxRange__10CPatternedFR13CStateManagerf +lbl_801A4288: +/* 801A4288 001A11E8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801A428C 001A11EC 7C 08 03 A6 */ mtlr r0 +/* 801A4290 001A11F0 38 21 00 10 */ addi r1, r1, 0x10 +/* 801A4294 001A11F4 4E 80 00 20 */ blr + +.global GetDamageVulnerability__12CIceSheegothCFRC9CVector3fRC9CVector3fRC11CDamageInfo +GetDamageVulnerability__12CIceSheegothCFRC9CVector3fRC9CVector3fRC11CDamageInfo: +/* 801A4298 001A11F8 3C 60 80 57 */ lis r3, lbl_8056D7E8@ha +/* 801A429C 001A11FC 38 63 D7 E8 */ addi r3, r3, lbl_8056D7E8@l +/* 801A42A0 001A1200 4E 80 00 20 */ blr + +.global GetDamageVulnerability__12CIceSheegothCFv +GetDamageVulnerability__12CIceSheegothCFv: +/* 801A42A4 001A1204 3C 60 80 57 */ lis r3, lbl_8056D7E8@ha +/* 801A42A8 001A1208 38 63 D7 E8 */ addi r3, r3, lbl_8056D7E8@l +/* 801A42AC 001A120C 4E 80 00 20 */ blr + +.global GetAimPosition__12CIceSheegothCFRC13CStateManagerf +GetAimPosition__12CIceSheegothCFRC13CStateManagerf: +/* 801A42B0 001A1210 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 801A42B4 001A1214 7C 08 02 A6 */ mflr r0 +/* 801A42B8 001A1218 90 01 00 94 */ stw r0, 0x94(r1) +/* 801A42BC 001A121C DB E1 00 80 */ stfd f31, 0x80(r1) +/* 801A42C0 001A1220 F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0 +/* 801A42C4 001A1224 DB C1 00 70 */ stfd f30, 0x70(r1) +/* 801A42C8 001A1228 F3 C1 00 78 */ psq_st f30, 120(r1), 0, qr0 +/* 801A42CC 001A122C DB A1 00 60 */ stfd f29, 0x60(r1) +/* 801A42D0 001A1230 F3 A1 00 68 */ psq_st f29, 104(r1), 0, qr0 +/* 801A42D4 001A1234 DB 81 00 50 */ stfd f28, 0x50(r1) +/* 801A42D8 001A1238 F3 81 00 58 */ psq_st f28, 88(r1), 0, qr0 +/* 801A42DC 001A123C BF 61 00 3C */ stmw r27, 0x3c(r1) +/* 801A42E0 001A1240 7C 9E 23 78 */ mr r30, r4 +/* 801A42E4 001A1244 FF 80 08 90 */ fmr f28, f1 +/* 801A42E8 001A1248 80 84 04 50 */ lwz r4, 0x450(r4) +/* 801A42EC 001A124C 7C 7D 1B 78 */ mr r29, r3 +/* 801A42F0 001A1250 7C BF 2B 78 */ mr r31, r5 +/* 801A42F4 001A1254 80 04 02 EC */ lwz r0, 0x2ec(r4) +/* 801A42F8 001A1258 2C 00 00 00 */ cmpwi r0, 0 +/* 801A42FC 001A125C 41 82 01 B4 */ beq lbl_801A44B0 +/* 801A4300 001A1260 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 801A4304 001A1264 7F E4 FB 78 */ mr r4, r31 +/* 801A4308 001A1268 80 63 00 00 */ lwz r3, 0(r3) +/* 801A430C 001A126C 4B EE D2 4D */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager +/* 801A4310 001A1270 2C 03 00 03 */ cmpwi r3, 3 +/* 801A4314 001A1274 40 82 00 E8 */ bne lbl_801A43FC +/* 801A4318 001A1278 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801A431C 001A127C C7 E3 66 A0 */ lfsu f31, skZero3f@l(r3) +/* 801A4320 001A1280 3B 9E 0B 00 */ addi r28, r30, 0xb00 +/* 801A4324 001A1284 C3 C3 00 04 */ lfs f30, 4(r3) +/* 801A4328 001A1288 7F 9B E3 78 */ mr r27, r28 +/* 801A432C 001A128C C3 A3 00 08 */ lfs f29, 8(r3) +/* 801A4330 001A1290 48 00 00 4C */ b lbl_801A437C +lbl_801A4334: +/* 801A4334 001A1294 A0 1B 00 00 */ lhz r0, 0(r27) +/* 801A4338 001A1298 7F E3 FB 78 */ mr r3, r31 +/* 801A433C 001A129C 38 81 00 10 */ addi r4, r1, 0x10 +/* 801A4340 001A12A0 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801A4344 001A12A4 4B EA 82 61 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801A4348 001A12A8 7C 64 1B 78 */ mr r4, r3 +/* 801A434C 001A12AC 38 61 00 24 */ addi r3, r1, 0x24 +/* 801A4350 001A12B0 4B F0 AF FD */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801A4354 001A12B4 80 63 00 04 */ lwz r3, 4(r3) +/* 801A4358 001A12B8 28 03 00 00 */ cmplwi r3, 0 +/* 801A435C 001A12BC 41 82 00 1C */ beq lbl_801A4378 +/* 801A4360 001A12C0 C0 43 00 40 */ lfs f2, 0x40(r3) +/* 801A4364 001A12C4 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801A4368 001A12C8 C0 03 00 60 */ lfs f0, 0x60(r3) +/* 801A436C 001A12CC EF FF 10 2A */ fadds f31, f31, f2 +/* 801A4370 001A12D0 EF DE 08 2A */ fadds f30, f30, f1 +/* 801A4374 001A12D4 EF BD 00 2A */ fadds f29, f29, f0 +lbl_801A4378: +/* 801A4378 001A12D8 3B 7B 00 02 */ addi r27, r27, 2 +lbl_801A437C: +/* 801A437C 001A12DC 80 7E 0A FC */ lwz r3, 0xafc(r30) +/* 801A4380 001A12E0 54 60 08 3C */ slwi r0, r3, 1 +/* 801A4384 001A12E4 7C 1C 02 14 */ add r0, r28, r0 +/* 801A4388 001A12E8 7C 1B 00 40 */ cmplw r27, r0 +/* 801A438C 001A12EC 40 82 FF A8 */ bne lbl_801A4334 +/* 801A4390 001A12F0 C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 801A4394 001A12F4 38 00 00 00 */ li r0, 0 +/* 801A4398 001A12F8 FC 00 F8 00 */ fcmpu cr0, f0, f31 +/* 801A439C 001A12FC 40 82 00 14 */ bne lbl_801A43B0 +/* 801A43A0 001A1300 FC 00 F0 00 */ fcmpu cr0, f0, f30 +/* 801A43A4 001A1304 40 82 00 0C */ bne lbl_801A43B0 +/* 801A43A8 001A1308 FC 00 E8 00 */ fcmpu cr0, f0, f29 +/* 801A43AC 001A130C 41 82 00 08 */ beq lbl_801A43B4 +lbl_801A43B0: +/* 801A43B0 001A1310 38 00 00 01 */ li r0, 1 +lbl_801A43B4: +/* 801A43B4 001A1314 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 801A43B8 001A1318 41 82 00 F8 */ beq lbl_801A44B0 +/* 801A43BC 001A131C 6C 63 80 00 */ xoris r3, r3, 0x8000 +/* 801A43C0 001A1320 3C 00 43 30 */ lis r0, 0x4330 +/* 801A43C4 001A1324 90 61 00 34 */ stw r3, 0x34(r1) +/* 801A43C8 001A1328 C8 22 A7 D8 */ lfd f1, lbl_805AC4F8@sda21(r2) +/* 801A43CC 001A132C 90 01 00 30 */ stw r0, 0x30(r1) +/* 801A43D0 001A1330 C0 42 A7 60 */ lfs f2, lbl_805AC480@sda21(r2) +/* 801A43D4 001A1334 C8 01 00 30 */ lfd f0, 0x30(r1) +/* 801A43D8 001A1338 EC 00 08 28 */ fsubs f0, f0, f1 +/* 801A43DC 001A133C EC 02 00 24 */ fdivs f0, f2, f0 +/* 801A43E0 001A1340 EF FF 00 32 */ fmuls f31, f31, f0 +/* 801A43E4 001A1344 EF DE 00 32 */ fmuls f30, f30, f0 +/* 801A43E8 001A1348 EF BD 00 32 */ fmuls f29, f29, f0 +/* 801A43EC 001A134C D3 FD 00 00 */ stfs f31, 0(r29) +/* 801A43F0 001A1350 D3 DD 00 04 */ stfs f30, 4(r29) +/* 801A43F4 001A1354 D3 BD 00 08 */ stfs f29, 8(r29) +/* 801A43F8 001A1358 48 00 00 CC */ b lbl_801A44C4 +lbl_801A43FC: +/* 801A43FC 001A135C 88 1E 0B 29 */ lbz r0, 0xb29(r30) +/* 801A4400 001A1360 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 801A4404 001A1364 40 82 00 1C */ bne lbl_801A4420 +/* 801A4408 001A1368 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 801A440C 001A136C 7F E4 FB 78 */ mr r4, r31 +/* 801A4410 001A1370 80 63 00 00 */ lwz r3, 0(r3) +/* 801A4414 001A1374 4B EE D1 45 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager +/* 801A4418 001A1378 2C 03 00 02 */ cmpwi r3, 2 +/* 801A441C 001A137C 40 82 00 4C */ bne lbl_801A4468 +lbl_801A4420: +/* 801A4420 001A1380 A0 1E 0A F8 */ lhz r0, 0xaf8(r30) +/* 801A4424 001A1384 7F E3 FB 78 */ mr r3, r31 +/* 801A4428 001A1388 38 81 00 0C */ addi r4, r1, 0xc +/* 801A442C 001A138C B0 01 00 0C */ sth r0, 0xc(r1) +/* 801A4430 001A1390 4B EA 81 75 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801A4434 001A1394 7C 64 1B 78 */ mr r4, r3 +/* 801A4438 001A1398 38 61 00 1C */ addi r3, r1, 0x1c +/* 801A443C 001A139C 4B F0 AF 11 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801A4440 001A13A0 80 63 00 04 */ lwz r3, 4(r3) +/* 801A4444 001A13A4 28 03 00 00 */ cmplwi r3, 0 +/* 801A4448 001A13A8 41 82 00 68 */ beq lbl_801A44B0 +/* 801A444C 001A13AC C0 43 00 60 */ lfs f2, 0x60(r3) +/* 801A4450 001A13B0 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801A4454 001A13B4 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801A4458 001A13B8 D0 1D 00 00 */ stfs f0, 0(r29) +/* 801A445C 001A13BC D0 3D 00 04 */ stfs f1, 4(r29) +/* 801A4460 001A13C0 D0 5D 00 08 */ stfs f2, 8(r29) +/* 801A4464 001A13C4 48 00 00 60 */ b lbl_801A44C4 +lbl_801A4468: +/* 801A4468 001A13C8 A0 1E 0A F6 */ lhz r0, 0xaf6(r30) +/* 801A446C 001A13CC 7F E3 FB 78 */ mr r3, r31 +/* 801A4470 001A13D0 38 81 00 08 */ addi r4, r1, 8 +/* 801A4474 001A13D4 B0 01 00 08 */ sth r0, 8(r1) +/* 801A4478 001A13D8 4B EA 81 2D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801A447C 001A13DC 7C 64 1B 78 */ mr r4, r3 +/* 801A4480 001A13E0 38 61 00 14 */ addi r3, r1, 0x14 +/* 801A4484 001A13E4 4B F0 AE C9 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801A4488 001A13E8 80 63 00 04 */ lwz r3, 4(r3) +/* 801A448C 001A13EC 28 03 00 00 */ cmplwi r3, 0 +/* 801A4490 001A13F0 41 82 00 20 */ beq lbl_801A44B0 +/* 801A4494 001A13F4 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 801A4498 001A13F8 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801A449C 001A13FC C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801A44A0 001A1400 D0 1D 00 00 */ stfs f0, 0(r29) +/* 801A44A4 001A1404 D0 3D 00 04 */ stfs f1, 4(r29) +/* 801A44A8 001A1408 D0 5D 00 08 */ stfs f2, 8(r29) +/* 801A44AC 001A140C 48 00 00 18 */ b lbl_801A44C4 +lbl_801A44B0: +/* 801A44B0 001A1410 FC 20 E0 90 */ fmr f1, f28 +/* 801A44B4 001A1414 7F A3 EB 78 */ mr r3, r29 +/* 801A44B8 001A1418 7F C4 F3 78 */ mr r4, r30 +/* 801A44BC 001A141C 7F E5 FB 78 */ mr r5, r31 +/* 801A44C0 001A1420 4B ED 41 29 */ bl GetAimPosition__10CPatternedCFRC13CStateManagerf +lbl_801A44C4: +/* 801A44C4 001A1424 E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0 +/* 801A44C8 001A1428 CB E1 00 80 */ lfd f31, 0x80(r1) +/* 801A44CC 001A142C E3 C1 00 78 */ psq_l f30, 120(r1), 0, qr0 +/* 801A44D0 001A1430 CB C1 00 70 */ lfd f30, 0x70(r1) +/* 801A44D4 001A1434 E3 A1 00 68 */ psq_l f29, 104(r1), 0, qr0 +/* 801A44D8 001A1438 CB A1 00 60 */ lfd f29, 0x60(r1) +/* 801A44DC 001A143C E3 81 00 58 */ psq_l f28, 88(r1), 0, qr0 +/* 801A44E0 001A1440 CB 81 00 50 */ lfd f28, 0x50(r1) +/* 801A44E4 001A1444 BB 61 00 3C */ lmw r27, 0x3c(r1) +/* 801A44E8 001A1448 80 01 00 94 */ lwz r0, 0x94(r1) +/* 801A44EC 001A144C 7C 08 03 A6 */ mtlr r0 +/* 801A44F0 001A1450 38 21 00 90 */ addi r1, r1, 0x90 +/* 801A44F4 001A1454 4E 80 00 20 */ blr + +.global DoUserAnimEvent__12CIceSheegothFR13CStateManagerRC13CInt32POINode14EUserEventType +DoUserAnimEvent__12CIceSheegothFR13CStateManagerRC13CInt32POINode14EUserEventType: +/* 801A44F8 001A1458 94 21 FE 20 */ stwu r1, -0x1e0(r1) +/* 801A44FC 001A145C 7C 08 02 A6 */ mflr r0 +/* 801A4500 001A1460 90 01 01 E4 */ stw r0, 0x1e4(r1) +/* 801A4504 001A1464 DB E1 01 D0 */ stfd f31, 0x1d0(r1) +/* 801A4508 001A1468 F3 E1 01 D8 */ psq_st f31, 472(r1), 0, qr0 +/* 801A450C 001A146C DB C1 01 C0 */ stfd f30, 0x1c0(r1) +/* 801A4510 001A1470 F3 C1 01 C8 */ psq_st f30, 456(r1), 0, qr0 +/* 801A4514 001A1474 DB A1 01 B0 */ stfd f29, 0x1b0(r1) +/* 801A4518 001A1478 F3 A1 01 B8 */ psq_st f29, 440(r1), 0, qr0 +/* 801A451C 001A147C DB 81 01 A0 */ stfd f28, 0x1a0(r1) +/* 801A4520 001A1480 F3 81 01 A8 */ psq_st f28, 424(r1), 0, qr0 +/* 801A4524 001A1484 BF 61 01 8C */ stmw r27, 0x18c(r1) +/* 801A4528 001A1488 7C DF 33 78 */ mr r31, r6 +/* 801A452C 001A148C FF E0 08 90 */ fmr f31, f1 +/* 801A4530 001A1490 28 1F 00 17 */ cmplwi r31, 0x17 +/* 801A4534 001A1494 7C 7C 1B 78 */ mr r28, r3 +/* 801A4538 001A1498 7C 9D 23 78 */ mr r29, r4 +/* 801A453C 001A149C 7C BE 2B 78 */ mr r30, r5 +/* 801A4540 001A14A0 3B 60 00 00 */ li r27, 0 +/* 801A4544 001A14A4 41 81 03 C8 */ bgt lbl_801A490C +/* 801A4548 001A14A8 3C A0 80 3E */ lis r5, lbl_803E49F4@ha +/* 801A454C 001A14AC 57 E0 10 3A */ slwi r0, r31, 2 +/* 801A4550 001A14B0 38 A5 49 F4 */ addi r5, r5, lbl_803E49F4@l +/* 801A4554 001A14B4 7C 05 00 2E */ lwzx r0, r5, r0 +/* 801A4558 001A14B8 7C 09 03 A6 */ mtctr r0 +/* 801A455C 001A14BC 4E 80 04 20 */ bctr +/* 801A4560 001A14C0 7F 84 E3 78 */ mr r4, r28 +/* 801A4564 001A14C4 38 61 00 EC */ addi r3, r1, 0xec +/* 801A4568 001A14C8 38 BE 00 3C */ addi r5, r30, 0x3c +/* 801A456C 001A14CC 4B ED 44 0D */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801A4570 001A14D0 38 61 01 4C */ addi r3, r1, 0x14c +/* 801A4574 001A14D4 38 81 00 EC */ addi r4, r1, 0xec +/* 801A4578 001A14D8 48 16 E5 FD */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801A457C 001A14DC 80 9D 08 4C */ lwz r4, 0x84c(r29) +/* 801A4580 001A14E0 7F A5 EB 78 */ mr r5, r29 +/* 801A4584 001A14E4 38 61 00 80 */ addi r3, r1, 0x80 +/* 801A4588 001A14E8 C0 22 A7 5C */ lfs f1, lbl_805AC47C@sda21(r2) +/* 801A458C 001A14EC 81 84 00 00 */ lwz r12, 0(r4) +/* 801A4590 001A14F0 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801A4594 001A14F4 7D 89 03 A6 */ mtctr r12 +/* 801A4598 001A14F8 4E 80 04 21 */ bctrl +/* 801A459C 001A14FC C0 41 00 80 */ lfs f2, 0x80(r1) +/* 801A45A0 001A1500 7F 83 E3 78 */ mr r3, r28 +/* 801A45A4 001A1504 C0 21 00 84 */ lfs f1, 0x84(r1) +/* 801A45A8 001A1508 C0 01 00 88 */ lfs f0, 0x88(r1) +/* 801A45AC 001A150C D0 41 00 B0 */ stfs f2, 0xb0(r1) +/* 801A45B0 001A1510 C0 41 01 58 */ lfs f2, 0x158(r1) +/* 801A45B4 001A1514 D0 21 00 B4 */ stfs f1, 0xb4(r1) +/* 801A45B8 001A1518 C0 21 01 68 */ lfs f1, 0x168(r1) +/* 801A45BC 001A151C D0 01 00 B8 */ stfs f0, 0xb8(r1) +/* 801A45C0 001A1520 C0 01 01 78 */ lfs f0, 0x178(r1) +/* 801A45C4 001A1524 83 7D 08 4C */ lwz r27, 0x84c(r29) +/* 801A45C8 001A1528 D0 41 00 68 */ stfs f2, 0x68(r1) +/* 801A45CC 001A152C D0 21 00 6C */ stfs f1, 0x6c(r1) +/* 801A45D0 001A1530 D0 01 00 70 */ stfs f0, 0x70(r1) +/* 801A45D4 001A1534 81 9C 00 00 */ lwz r12, 0(r28) +/* 801A45D8 001A1538 81 8C 02 C0 */ lwz r12, 0x2c0(r12) +/* 801A45DC 001A153C 7D 89 03 A6 */ mtctr r12 +/* 801A45E0 001A1540 4E 80 04 21 */ bctrl +/* 801A45E4 001A1544 FC 20 F8 90 */ fmr f1, f31 +/* 801A45E8 001A1548 7C 64 1B 78 */ mr r4, r3 +/* 801A45EC 001A154C 7F 67 DB 78 */ mr r7, r27 +/* 801A45F0 001A1550 38 61 00 74 */ addi r3, r1, 0x74 +/* 801A45F4 001A1554 38 A1 00 68 */ addi r5, r1, 0x68 +/* 801A45F8 001A1558 38 C1 00 B0 */ addi r6, r1, 0xb0 +/* 801A45FC 001A155C 39 00 00 01 */ li r8, 1 +/* 801A4600 001A1560 48 07 78 ED */ bl PredictInterceptPos__15CProjectileInfoFRC9CVector3fRC9CVector3fRC7CPlayerbf +/* 801A4604 001A1564 C0 A1 00 74 */ lfs f5, 0x74(r1) +/* 801A4608 001A1568 38 61 00 98 */ addi r3, r1, 0x98 +/* 801A460C 001A156C C0 81 00 78 */ lfs f4, 0x78(r1) +/* 801A4610 001A1570 38 81 00 8C */ addi r4, r1, 0x8c +/* 801A4614 001A1574 C0 61 00 7C */ lfs f3, 0x7c(r1) +/* 801A4618 001A1578 C0 41 01 68 */ lfs f2, 0x168(r1) +/* 801A461C 001A157C C0 21 01 78 */ lfs f1, 0x178(r1) +/* 801A4620 001A1580 C0 01 01 58 */ lfs f0, 0x158(r1) +/* 801A4624 001A1584 EC C4 10 28 */ fsubs f6, f4, f2 +/* 801A4628 001A1588 D0 A1 00 A4 */ stfs f5, 0xa4(r1) +/* 801A462C 001A158C EC 43 08 28 */ fsubs f2, f3, f1 +/* 801A4630 001A1590 EC 05 00 28 */ fsubs f0, f5, f0 +/* 801A4634 001A1594 D0 81 00 A8 */ stfs f4, 0xa8(r1) +/* 801A4638 001A1598 D0 61 00 AC */ stfs f3, 0xac(r1) +/* 801A463C 001A159C C0 9C 00 58 */ lfs f4, 0x58(r28) +/* 801A4640 001A15A0 C0 7C 00 48 */ lfs f3, 0x48(r28) +/* 801A4644 001A15A4 C0 3C 00 38 */ lfs f1, 0x38(r28) +/* 801A4648 001A15A8 D0 21 00 98 */ stfs f1, 0x98(r1) +/* 801A464C 001A15AC D0 61 00 9C */ stfs f3, 0x9c(r1) +/* 801A4650 001A15B0 D0 81 00 A0 */ stfs f4, 0xa0(r1) +/* 801A4654 001A15B4 D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 801A4658 001A15B8 D0 C1 00 90 */ stfs f6, 0x90(r1) +/* 801A465C 001A15BC D0 41 00 94 */ stfs f2, 0x94(r1) +/* 801A4660 001A15C0 48 16 FF D1 */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f +/* 801A4664 001A15C4 C0 02 A7 E0 */ lfs f0, lbl_805AC500@sda21(r2) +/* 801A4668 001A15C8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801A466C 001A15CC 40 81 00 C8 */ ble lbl_801A4734 +/* 801A4670 001A15D0 38 61 00 8C */ addi r3, r1, 0x8c +/* 801A4674 001A15D4 48 17 00 85 */ bl CanBeNormalized__9CVector3fCFv +/* 801A4678 001A15D8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A467C 001A15DC 41 82 00 74 */ beq lbl_801A46F0 +/* 801A4680 001A15E0 C0 02 A7 E0 */ lfs f0, lbl_805AC500@sda21(r2) +/* 801A4684 001A15E4 38 61 00 50 */ addi r3, r1, 0x50 +/* 801A4688 001A15E8 38 81 00 8C */ addi r4, r1, 0x8c +/* 801A468C 001A15EC D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801A4690 001A15F0 48 17 01 C1 */ bl AsNormalized__9CVector3fCFv +/* 801A4694 001A15F4 38 61 00 5C */ addi r3, r1, 0x5c +/* 801A4698 001A15F8 38 81 00 98 */ addi r4, r1, 0x98 +/* 801A469C 001A15FC 38 A1 00 50 */ addi r5, r1, 0x50 +/* 801A46A0 001A1600 38 C1 00 1C */ addi r6, r1, 0x1c +/* 801A46A4 001A1604 48 17 02 B1 */ bl Slerp__9CVector3fFRC9CVector3fRC9CVector3fRC9CRelAngle +/* 801A46A8 001A1608 C3 C1 00 5C */ lfs f30, 0x5c(r1) +/* 801A46AC 001A160C 38 61 00 8C */ addi r3, r1, 0x8c +/* 801A46B0 001A1610 C3 A1 00 60 */ lfs f29, 0x60(r1) +/* 801A46B4 001A1614 C3 81 00 64 */ lfs f28, 0x64(r1) +/* 801A46B8 001A1618 48 17 02 01 */ bl Magnitude__9CVector3fCFv +/* 801A46BC 001A161C EC 81 07 72 */ fmuls f4, f1, f29 +/* 801A46C0 001A1620 C0 A1 01 68 */ lfs f5, 0x168(r1) +/* 801A46C4 001A1624 EC 41 07 32 */ fmuls f2, f1, f28 +/* 801A46C8 001A1628 C0 61 01 78 */ lfs f3, 0x178(r1) +/* 801A46CC 001A162C EC 01 07 B2 */ fmuls f0, f1, f30 +/* 801A46D0 001A1630 C0 21 01 58 */ lfs f1, 0x158(r1) +/* 801A46D4 001A1634 EC 85 20 2A */ fadds f4, f5, f4 +/* 801A46D8 001A1638 EC 43 10 2A */ fadds f2, f3, f2 +/* 801A46DC 001A163C EC 01 00 2A */ fadds f0, f1, f0 +/* 801A46E0 001A1640 D0 81 00 A8 */ stfs f4, 0xa8(r1) +/* 801A46E4 001A1644 D0 01 00 A4 */ stfs f0, 0xa4(r1) +/* 801A46E8 001A1648 D0 41 00 AC */ stfs f2, 0xac(r1) +/* 801A46EC 001A164C 48 00 00 48 */ b lbl_801A4734 +lbl_801A46F0: +/* 801A46F0 001A1650 38 61 00 8C */ addi r3, r1, 0x8c +/* 801A46F4 001A1654 48 17 01 C5 */ bl Magnitude__9CVector3fCFv +/* 801A46F8 001A1658 C0 61 01 60 */ lfs f3, 0x160(r1) +/* 801A46FC 001A165C C0 41 01 70 */ lfs f2, 0x170(r1) +/* 801A4700 001A1660 C0 01 01 50 */ lfs f0, 0x150(r1) +/* 801A4704 001A1664 EC 81 00 F2 */ fmuls f4, f1, f3 +/* 801A4708 001A1668 C0 A1 01 68 */ lfs f5, 0x168(r1) +/* 801A470C 001A166C EC 41 00 B2 */ fmuls f2, f1, f2 +/* 801A4710 001A1670 C0 61 01 78 */ lfs f3, 0x178(r1) +/* 801A4714 001A1674 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801A4718 001A1678 C0 21 01 58 */ lfs f1, 0x158(r1) +/* 801A471C 001A167C EC 85 20 2A */ fadds f4, f5, f4 +/* 801A4720 001A1680 EC 43 10 2A */ fadds f2, f3, f2 +/* 801A4724 001A1684 EC 01 00 2A */ fadds f0, f1, f0 +/* 801A4728 001A1688 D0 81 00 A8 */ stfs f4, 0xa8(r1) +/* 801A472C 001A168C D0 01 00 A4 */ stfs f0, 0xa4(r1) +/* 801A4730 001A1690 D0 41 00 AC */ stfs f2, 0xac(r1) +lbl_801A4734: +/* 801A4734 001A1694 C0 41 01 58 */ lfs f2, 0x158(r1) +/* 801A4738 001A1698 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 801A473C 001A169C C0 21 01 68 */ lfs f1, 0x168(r1) +/* 801A4740 001A16A0 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 801A4744 001A16A4 C0 01 01 78 */ lfs f0, 0x178(r1) +/* 801A4748 001A16A8 38 61 00 BC */ addi r3, r1, 0xbc +/* 801A474C 001A16AC D0 41 00 44 */ stfs f2, 0x44(r1) +/* 801A4750 001A16B0 38 81 00 44 */ addi r4, r1, 0x44 +/* 801A4754 001A16B4 38 A1 00 A4 */ addi r5, r1, 0xa4 +/* 801A4758 001A16B8 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 801A475C 001A16BC D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 801A4760 001A16C0 48 16 F3 B1 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 801A4764 001A16C4 38 61 01 1C */ addi r3, r1, 0x11c +/* 801A4768 001A16C8 38 81 00 BC */ addi r4, r1, 0xbc +/* 801A476C 001A16CC 48 16 E4 09 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801A4770 001A16D0 C0 02 A7 60 */ lfs f0, lbl_805AC480@sda21(r2) +/* 801A4774 001A16D4 39 60 00 00 */ li r11, 0 +/* 801A4778 001A16D8 99 61 00 40 */ stb r11, 0x40(r1) +/* 801A477C 001A16DC 38 01 00 28 */ addi r0, r1, 0x28 +/* 801A4780 001A16E0 A1 42 C5 FC */ lhz r10, lbl_805AE31C@sda21(r2) +/* 801A4784 001A16E4 7F 83 E3 78 */ mr r3, r28 +/* 801A4788 001A16E8 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 801A478C 001A16EC 7F A5 EB 78 */ mr r5, r29 +/* 801A4790 001A16F0 38 81 01 1C */ addi r4, r1, 0x11c +/* 801A4794 001A16F4 39 21 00 34 */ addi r9, r1, 0x34 +/* 801A4798 001A16F8 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801A479C 001A16FC 38 C0 00 04 */ li r6, 4 +/* 801A47A0 001A1700 38 E0 00 00 */ li r7, 0 +/* 801A47A4 001A1704 39 00 00 00 */ li r8, 0 +/* 801A47A8 001A1708 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801A47AC 001A170C 91 61 00 08 */ stw r11, 8(r1) +/* 801A47B0 001A1710 90 01 00 0C */ stw r0, 0xc(r1) +/* 801A47B4 001A1714 4B ED 32 45 */ bl "LaunchProjectile__10CPatternedFRC12CTransform4fR13CStateManageriQ27CWeapon17EProjectileAttribbRCQ24rstl50optional_object<31TLockedToken<15CGenDescription>>sbRC9CVector3f" +/* 801A47B8 001A1718 88 01 00 40 */ lbz r0, 0x40(r1) +/* 801A47BC 001A171C 28 00 00 00 */ cmplwi r0, 0 +/* 801A47C0 001A1720 41 82 00 1C */ beq lbl_801A47DC +/* 801A47C4 001A1724 34 61 00 34 */ addic. r3, r1, 0x34 +/* 801A47C8 001A1728 41 82 00 14 */ beq lbl_801A47DC +/* 801A47CC 001A172C 28 03 00 00 */ cmplwi r3, 0 +/* 801A47D0 001A1730 41 82 00 0C */ beq lbl_801A47DC +/* 801A47D4 001A1734 38 80 00 00 */ li r4, 0 +/* 801A47D8 001A1738 48 19 C6 69 */ bl __dt__6CTokenFv +lbl_801A47DC: +/* 801A47DC 001A173C 38 00 00 00 */ li r0, 0 +/* 801A47E0 001A1740 C0 42 A7 68 */ lfs f2, lbl_805AC488@sda21(r2) +/* 801A47E4 001A1744 98 01 00 40 */ stb r0, 0x40(r1) +/* 801A47E8 001A1748 C0 0D 90 00 */ lfs f0, lbl_805A7BC0@sda21(r13) +/* 801A47EC 001A174C C0 3C 06 DC */ lfs f1, 0x6dc(r28) +/* 801A47F0 001A1750 C0 7C 09 74 */ lfs f3, 0x974(r28) +/* 801A47F4 001A1754 EC 22 00 72 */ fmuls f1, f2, f1 +/* 801A47F8 001A1758 EC 23 08 28 */ fsubs f1, f3, f1 +/* 801A47FC 001A175C FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801A4800 001A1760 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801A4804 001A1764 40 80 00 0C */ bge lbl_801A4810 +/* 801A4808 001A1768 38 61 00 18 */ addi r3, r1, 0x18 +/* 801A480C 001A176C 48 00 00 08 */ b lbl_801A4814 +lbl_801A4810: +/* 801A4810 001A1770 38 6D 90 00 */ addi r3, r13, lbl_805A7BC0@sda21 +lbl_801A4814: +/* 801A4814 001A1774 C0 03 00 00 */ lfs f0, 0(r3) +/* 801A4818 001A1778 D0 1C 09 74 */ stfs f0, 0x974(r28) +/* 801A481C 001A177C 88 1C 0B 28 */ lbz r0, 0xb28(r28) +/* 801A4820 001A1780 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 801A4824 001A1784 41 82 00 58 */ beq lbl_801A487C +/* 801A4828 001A1788 7F 83 E3 78 */ mr r3, r28 +/* 801A482C 001A178C 7F A4 EB 78 */ mr r4, r29 +/* 801A4830 001A1790 81 9C 00 00 */ lwz r12, 0(r28) +/* 801A4834 001A1794 C0 22 A7 5C */ lfs f1, lbl_805AC47C@sda21(r2) +/* 801A4838 001A1798 81 8C 02 70 */ lwz r12, 0x270(r12) +/* 801A483C 001A179C 7D 89 03 A6 */ mtctr r12 +/* 801A4840 001A17A0 4E 80 04 21 */ bctrl +/* 801A4844 001A17A4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A4848 001A17A8 40 82 00 34 */ bne lbl_801A487C +/* 801A484C 001A17AC 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801A4850 001A17B0 38 00 00 0A */ li r0, 0xa +/* 801A4854 001A17B4 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l +/* 801A4858 001A17B8 90 01 00 24 */ stw r0, 0x24(r1) +/* 801A485C 001A17BC 38 81 00 20 */ addi r4, r1, 0x20 +/* 801A4860 001A17C0 90 61 00 20 */ stw r3, 0x20(r1) +/* 801A4864 001A17C4 80 7C 04 50 */ lwz r3, 0x450(r28) +/* 801A4868 001A17C8 38 63 00 04 */ addi r3, r3, 4 +/* 801A486C 001A17CC 4B F8 CF 4D */ bl DeliverCmd__16CBodyStateCmdMgrFRC13CBodyStateCmd +/* 801A4870 001A17D0 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801A4874 001A17D4 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801A4878 001A17D8 90 01 00 20 */ stw r0, 0x20(r1) +lbl_801A487C: +/* 801A487C 001A17DC 3B 60 00 01 */ li r27, 1 +/* 801A4880 001A17E0 48 00 00 8C */ b lbl_801A490C +/* 801A4884 001A17E4 4B FF BE 85 */ bl sub_801a0708 +/* 801A4888 001A17E8 3B 60 00 01 */ li r27, 1 +/* 801A488C 001A17EC 48 00 00 80 */ b lbl_801A490C +/* 801A4890 001A17F0 4B FF A2 C1 */ bl sub_8019eb50 +/* 801A4894 001A17F4 3B 60 00 01 */ li r27, 1 +/* 801A4898 001A17F8 48 00 00 74 */ b lbl_801A490C +/* 801A489C 001A17FC 88 1C 0B 28 */ lbz r0, 0xb28(r28) +/* 801A48A0 001A1800 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801A48A4 001A1804 41 82 00 68 */ beq lbl_801A490C +/* 801A48A8 001A1808 A0 1C 0A 80 */ lhz r0, 0xa80(r28) +/* 801A48AC 001A180C 7F A3 EB 78 */ mr r3, r29 +/* 801A48B0 001A1810 38 81 00 14 */ addi r4, r1, 0x14 +/* 801A48B4 001A1814 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801A48B8 001A1818 4B EA 7C BD */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801A48BC 001A181C 28 03 00 00 */ cmplwi r3, 0 +/* 801A48C0 001A1820 41 82 00 4C */ beq lbl_801A490C +/* 801A48C4 001A1824 7F A5 EB 78 */ mr r5, r29 +/* 801A48C8 001A1828 38 9C 00 34 */ addi r4, r28, 0x34 +/* 801A48CC 001A182C 38 C0 00 00 */ li r6, 0 +/* 801A48D0 001A1830 4B FF 3A 1D */ bl Fire__13CFlameThrowerFRC12CTransform4fR13CStateManagerb +/* 801A48D4 001A1834 48 00 00 38 */ b lbl_801A490C +/* 801A48D8 001A1838 88 1C 0B 28 */ lbz r0, 0xb28(r28) +/* 801A48DC 001A183C 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801A48E0 001A1840 41 82 00 2C */ beq lbl_801A490C +/* 801A48E4 001A1844 A0 1C 0A 80 */ lhz r0, 0xa80(r28) +/* 801A48E8 001A1848 7F A3 EB 78 */ mr r3, r29 +/* 801A48EC 001A184C 38 81 00 10 */ addi r4, r1, 0x10 +/* 801A48F0 001A1850 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801A48F4 001A1854 4B EA 7C 81 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801A48F8 001A1858 28 03 00 00 */ cmplwi r3, 0 +/* 801A48FC 001A185C 41 82 00 10 */ beq lbl_801A490C +/* 801A4900 001A1860 7F A4 EB 78 */ mr r4, r29 +/* 801A4904 001A1864 38 A0 00 00 */ li r5, 0 +/* 801A4908 001A1868 4B FF 38 B9 */ bl Reset__13CFlameThrowerFR13CStateManagerb +lbl_801A490C: +/* 801A490C 001A186C 57 60 06 3F */ clrlwi. r0, r27, 0x18 +/* 801A4910 001A1870 40 82 00 1C */ bne lbl_801A492C +/* 801A4914 001A1874 FC 20 F8 90 */ fmr f1, f31 +/* 801A4918 001A1878 7F 83 E3 78 */ mr r3, r28 +/* 801A491C 001A187C 7F A4 EB 78 */ mr r4, r29 +/* 801A4920 001A1880 7F C5 F3 78 */ mr r5, r30 +/* 801A4924 001A1884 7F E6 FB 78 */ mr r6, r31 +/* 801A4928 001A1888 4B ED 45 89 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +lbl_801A492C: +/* 801A492C 001A188C E3 E1 01 D8 */ psq_l f31, 472(r1), 0, qr0 +/* 801A4930 001A1890 CB E1 01 D0 */ lfd f31, 0x1d0(r1) +/* 801A4934 001A1894 E3 C1 01 C8 */ psq_l f30, 456(r1), 0, qr0 +/* 801A4938 001A1898 CB C1 01 C0 */ lfd f30, 0x1c0(r1) +/* 801A493C 001A189C E3 A1 01 B8 */ psq_l f29, 440(r1), 0, qr0 +/* 801A4940 001A18A0 CB A1 01 B0 */ lfd f29, 0x1b0(r1) +/* 801A4944 001A18A4 E3 81 01 A8 */ psq_l f28, 424(r1), 0, qr0 +/* 801A4948 001A18A8 CB 81 01 A0 */ lfd f28, 0x1a0(r1) +/* 801A494C 001A18AC BB 61 01 8C */ lmw r27, 0x18c(r1) +/* 801A4950 001A18B0 80 01 01 E4 */ lwz r0, 0x1e4(r1) +/* 801A4954 001A18B4 7C 08 03 A6 */ mtlr r0 +/* 801A4958 001A18B8 38 21 01 E0 */ addi r1, r1, 0x1e0 +/* 801A495C 001A18BC 4E 80 00 20 */ blr + +.global ProjectileInfo__12CIceSheegothFv +ProjectileInfo__12CIceSheegothFv: +/* 801A4960 001A18C0 38 63 0A 58 */ addi r3, r3, 0xa58 +/* 801A4964 001A18C4 4E 80 00 20 */ blr + +.global AddToRenderer__12CIceSheegothCFRC14CFrustumPlanesRC13CStateManager +AddToRenderer__12CIceSheegothCFRC14CFrustumPlanesRC13CStateManager: +/* 801A4968 001A18C8 94 21 FD D0 */ stwu r1, -0x230(r1) +/* 801A496C 001A18CC 7C 08 02 A6 */ mflr r0 +/* 801A4970 001A18D0 90 01 02 34 */ stw r0, 0x234(r1) +/* 801A4974 001A18D4 93 E1 02 2C */ stw r31, 0x22c(r1) +/* 801A4978 001A18D8 7C 9F 23 78 */ mr r31, r4 +/* 801A497C 001A18DC 93 C1 02 28 */ stw r30, 0x228(r1) +/* 801A4980 001A18E0 7C 7E 1B 78 */ mr r30, r3 +/* 801A4984 001A18E4 93 A1 02 24 */ stw r29, 0x224(r1) +/* 801A4988 001A18E8 7C BD 2B 78 */ mr r29, r5 +/* 801A498C 001A18EC 4B ED 2F 2D */ bl AddToRenderer__10CPatternedCFRC14CFrustumPlanesRC13CStateManager +/* 801A4990 001A18F0 80 1D 0F 34 */ lwz r0, 0xf34(r29) +/* 801A4994 001A18F4 2C 00 00 00 */ cmpwi r0, 0 +/* 801A4998 001A18F8 41 82 00 14 */ beq lbl_801A49AC +/* 801A499C 001A18FC 41 80 06 48 */ blt lbl_801A4FE4 +/* 801A49A0 001A1900 2C 00 00 03 */ cmpwi r0, 3 +/* 801A49A4 001A1904 40 80 06 40 */ bge lbl_801A4FE4 +/* 801A49A8 001A1908 48 00 00 60 */ b lbl_801A4A08 +lbl_801A49AC: +/* 801A49AC 001A190C C0 22 A7 5C */ lfs f1, lbl_805AC47C@sda21(r2) +/* 801A49B0 001A1910 C0 1E 04 28 */ lfs f0, 0x428(r30) +/* 801A49B4 001A1914 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 801A49B8 001A1918 40 82 06 2C */ bne lbl_801A4FE4 +/* 801A49BC 001A191C 88 1E 0B 29 */ lbz r0, 0xb29(r30) +/* 801A49C0 001A1920 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801A49C4 001A1924 41 82 06 20 */ beq lbl_801A4FE4 +/* 801A49C8 001A1928 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 801A49CC 001A192C 38 80 00 00 */ li r4, 0 +/* 801A49D0 001A1930 28 03 00 00 */ cmplwi r3, 0 +/* 801A49D4 001A1934 41 82 00 20 */ beq lbl_801A49F4 +/* 801A49D8 001A1938 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801A49DC 001A193C 28 00 00 00 */ cmplwi r0, 0 +/* 801A49E0 001A1940 40 82 00 10 */ bne lbl_801A49F0 +/* 801A49E4 001A1944 88 03 00 28 */ lbz r0, 0x28(r3) +/* 801A49E8 001A1948 28 00 00 00 */ cmplwi r0, 0 +/* 801A49EC 001A194C 41 82 00 08 */ beq lbl_801A49F4 +lbl_801A49F0: +/* 801A49F0 001A1950 38 80 00 01 */ li r4, 1 +lbl_801A49F4: +/* 801A49F4 001A1954 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 801A49F8 001A1958 41 82 05 EC */ beq lbl_801A4FE4 +/* 801A49FC 001A195C 7F E4 FB 78 */ mr r4, r31 +/* 801A4A00 001A1960 4B F7 12 81 */ bl RenderParticles__10CModelDataCFRC14CFrustumPlanes +/* 801A4A04 001A1964 48 00 05 E0 */ b lbl_801A4FE4 +lbl_801A4A08: +/* 801A4A08 001A1968 80 9E 0A EC */ lwz r4, 0xaec(r30) +/* 801A4A0C 001A196C 38 A0 00 00 */ li r5, 0 +/* 801A4A10 001A1970 3B A0 00 00 */ li r29, 0 +/* 801A4A14 001A1974 28 04 00 00 */ cmplwi r4, 0 +/* 801A4A18 001A1978 41 82 00 24 */ beq lbl_801A4A3C +/* 801A4A1C 001A197C 81 84 00 00 */ lwz r12, 0(r4) +/* 801A4A20 001A1980 38 61 01 3C */ addi r3, r1, 0x13c +/* 801A4A24 001A1984 81 8C 00 5C */ lwz r12, 0x5c(r12) +/* 801A4A28 001A1988 7D 89 03 A6 */ mtctr r12 +/* 801A4A2C 001A198C 4E 80 04 21 */ bctrl +/* 801A4A30 001A1990 38 61 01 3C */ addi r3, r1, 0x13c +/* 801A4A34 001A1994 38 A0 00 01 */ li r5, 1 +/* 801A4A38 001A1998 48 00 00 14 */ b lbl_801A4A4C +lbl_801A4A3C: +/* 801A4A3C 001A199C 38 00 00 00 */ li r0, 0 +/* 801A4A40 001A19A0 38 61 01 20 */ addi r3, r1, 0x120 +/* 801A4A44 001A19A4 98 01 01 38 */ stb r0, 0x138(r1) +/* 801A4A48 001A19A8 3B A0 00 01 */ li r29, 1 +lbl_801A4A4C: +/* 801A4A4C 001A19AC 88 03 00 18 */ lbz r0, 0x18(r3) +/* 801A4A50 001A19B0 28 00 00 00 */ cmplwi r0, 0 +/* 801A4A54 001A19B4 98 01 02 14 */ stb r0, 0x214(r1) +/* 801A4A58 001A19B8 41 82 00 3C */ beq lbl_801A4A94 +/* 801A4A5C 001A19BC 34 81 01 FC */ addic. r4, r1, 0x1fc +/* 801A4A60 001A19C0 41 82 00 34 */ beq lbl_801A4A94 +/* 801A4A64 001A19C4 C0 03 00 00 */ lfs f0, 0(r3) +/* 801A4A68 001A19C8 D0 04 00 00 */ stfs f0, 0(r4) +/* 801A4A6C 001A19CC C0 03 00 04 */ lfs f0, 4(r3) +/* 801A4A70 001A19D0 D0 04 00 04 */ stfs f0, 4(r4) +/* 801A4A74 001A19D4 C0 03 00 08 */ lfs f0, 8(r3) +/* 801A4A78 001A19D8 D0 04 00 08 */ stfs f0, 8(r4) +/* 801A4A7C 001A19DC C0 03 00 0C */ lfs f0, 0xc(r3) +/* 801A4A80 001A19E0 D0 04 00 0C */ stfs f0, 0xc(r4) +/* 801A4A84 001A19E4 C0 03 00 10 */ lfs f0, 0x10(r3) +/* 801A4A88 001A19E8 D0 04 00 10 */ stfs f0, 0x10(r4) +/* 801A4A8C 001A19EC C0 03 00 14 */ lfs f0, 0x14(r3) +/* 801A4A90 001A19F0 D0 04 00 14 */ stfs f0, 0x14(r4) +lbl_801A4A94: +/* 801A4A94 001A19F4 7F A0 07 75 */ extsb. r0, r29 +/* 801A4A98 001A19F8 41 82 00 0C */ beq lbl_801A4AA4 +/* 801A4A9C 001A19FC 38 00 00 00 */ li r0, 0 +/* 801A4AA0 001A1A00 98 01 01 38 */ stb r0, 0x138(r1) +lbl_801A4AA4: +/* 801A4AA4 001A1A04 7C A0 07 75 */ extsb. r0, r5 +/* 801A4AA8 001A1A08 41 82 00 0C */ beq lbl_801A4AB4 +/* 801A4AAC 001A1A0C 38 00 00 00 */ li r0, 0 +/* 801A4AB0 001A1A10 98 01 01 54 */ stb r0, 0x154(r1) +lbl_801A4AB4: +/* 801A4AB4 001A1A14 80 9E 0A 9C */ lwz r4, 0xa9c(r30) +/* 801A4AB8 001A1A18 38 A0 00 00 */ li r5, 0 +/* 801A4ABC 001A1A1C 3B A0 00 00 */ li r29, 0 +/* 801A4AC0 001A1A20 28 04 00 00 */ cmplwi r4, 0 +/* 801A4AC4 001A1A24 41 82 00 24 */ beq lbl_801A4AE8 +/* 801A4AC8 001A1A28 81 84 00 00 */ lwz r12, 0(r4) +/* 801A4ACC 001A1A2C 38 61 01 04 */ addi r3, r1, 0x104 +/* 801A4AD0 001A1A30 81 8C 00 5C */ lwz r12, 0x5c(r12) +/* 801A4AD4 001A1A34 7D 89 03 A6 */ mtctr r12 +/* 801A4AD8 001A1A38 4E 80 04 21 */ bctrl +/* 801A4ADC 001A1A3C 38 61 01 04 */ addi r3, r1, 0x104 +/* 801A4AE0 001A1A40 38 A0 00 01 */ li r5, 1 +/* 801A4AE4 001A1A44 48 00 00 14 */ b lbl_801A4AF8 +lbl_801A4AE8: +/* 801A4AE8 001A1A48 38 00 00 00 */ li r0, 0 +/* 801A4AEC 001A1A4C 38 61 00 E8 */ addi r3, r1, 0xe8 +/* 801A4AF0 001A1A50 98 01 01 00 */ stb r0, 0x100(r1) +/* 801A4AF4 001A1A54 3B A0 00 01 */ li r29, 1 +lbl_801A4AF8: +/* 801A4AF8 001A1A58 88 03 00 18 */ lbz r0, 0x18(r3) +/* 801A4AFC 001A1A5C 28 00 00 00 */ cmplwi r0, 0 +/* 801A4B00 001A1A60 98 01 01 F8 */ stb r0, 0x1f8(r1) +/* 801A4B04 001A1A64 41 82 00 3C */ beq lbl_801A4B40 +/* 801A4B08 001A1A68 34 81 01 E0 */ addic. r4, r1, 0x1e0 +/* 801A4B0C 001A1A6C 41 82 00 34 */ beq lbl_801A4B40 +/* 801A4B10 001A1A70 C0 03 00 00 */ lfs f0, 0(r3) +/* 801A4B14 001A1A74 D0 04 00 00 */ stfs f0, 0(r4) +/* 801A4B18 001A1A78 C0 03 00 04 */ lfs f0, 4(r3) +/* 801A4B1C 001A1A7C D0 04 00 04 */ stfs f0, 4(r4) +/* 801A4B20 001A1A80 C0 03 00 08 */ lfs f0, 8(r3) +/* 801A4B24 001A1A84 D0 04 00 08 */ stfs f0, 8(r4) +/* 801A4B28 001A1A88 C0 03 00 0C */ lfs f0, 0xc(r3) +/* 801A4B2C 001A1A8C D0 04 00 0C */ stfs f0, 0xc(r4) +/* 801A4B30 001A1A90 C0 03 00 10 */ lfs f0, 0x10(r3) +/* 801A4B34 001A1A94 D0 04 00 10 */ stfs f0, 0x10(r4) +/* 801A4B38 001A1A98 C0 03 00 14 */ lfs f0, 0x14(r3) +/* 801A4B3C 001A1A9C D0 04 00 14 */ stfs f0, 0x14(r4) +lbl_801A4B40: +/* 801A4B40 001A1AA0 7F A0 07 75 */ extsb. r0, r29 +/* 801A4B44 001A1AA4 41 82 00 0C */ beq lbl_801A4B50 +/* 801A4B48 001A1AA8 38 00 00 00 */ li r0, 0 +/* 801A4B4C 001A1AAC 98 01 01 00 */ stb r0, 0x100(r1) +lbl_801A4B50: +/* 801A4B50 001A1AB0 7C A0 07 75 */ extsb. r0, r5 +/* 801A4B54 001A1AB4 41 82 00 0C */ beq lbl_801A4B60 +/* 801A4B58 001A1AB8 38 00 00 00 */ li r0, 0 +/* 801A4B5C 001A1ABC 98 01 01 1C */ stb r0, 0x11c(r1) +lbl_801A4B60: +/* 801A4B60 001A1AC0 80 9E 0A B0 */ lwz r4, 0xab0(r30) +/* 801A4B64 001A1AC4 38 A0 00 00 */ li r5, 0 +/* 801A4B68 001A1AC8 3B A0 00 00 */ li r29, 0 +/* 801A4B6C 001A1ACC 28 04 00 00 */ cmplwi r4, 0 +/* 801A4B70 001A1AD0 41 82 00 24 */ beq lbl_801A4B94 +/* 801A4B74 001A1AD4 81 84 00 00 */ lwz r12, 0(r4) +/* 801A4B78 001A1AD8 38 61 00 CC */ addi r3, r1, 0xcc +/* 801A4B7C 001A1ADC 81 8C 00 5C */ lwz r12, 0x5c(r12) +/* 801A4B80 001A1AE0 7D 89 03 A6 */ mtctr r12 +/* 801A4B84 001A1AE4 4E 80 04 21 */ bctrl +/* 801A4B88 001A1AE8 38 61 00 CC */ addi r3, r1, 0xcc +/* 801A4B8C 001A1AEC 38 A0 00 01 */ li r5, 1 +/* 801A4B90 001A1AF0 48 00 00 14 */ b lbl_801A4BA4 +lbl_801A4B94: +/* 801A4B94 001A1AF4 38 00 00 00 */ li r0, 0 +/* 801A4B98 001A1AF8 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 801A4B9C 001A1AFC 98 01 00 C8 */ stb r0, 0xc8(r1) +/* 801A4BA0 001A1B00 3B A0 00 01 */ li r29, 1 +lbl_801A4BA4: +/* 801A4BA4 001A1B04 88 03 00 18 */ lbz r0, 0x18(r3) +/* 801A4BA8 001A1B08 28 00 00 00 */ cmplwi r0, 0 +/* 801A4BAC 001A1B0C 98 01 01 DC */ stb r0, 0x1dc(r1) +/* 801A4BB0 001A1B10 41 82 00 3C */ beq lbl_801A4BEC +/* 801A4BB4 001A1B14 34 81 01 C4 */ addic. r4, r1, 0x1c4 +/* 801A4BB8 001A1B18 41 82 00 34 */ beq lbl_801A4BEC +/* 801A4BBC 001A1B1C C0 03 00 00 */ lfs f0, 0(r3) +/* 801A4BC0 001A1B20 D0 04 00 00 */ stfs f0, 0(r4) +/* 801A4BC4 001A1B24 C0 03 00 04 */ lfs f0, 4(r3) +/* 801A4BC8 001A1B28 D0 04 00 04 */ stfs f0, 4(r4) +/* 801A4BCC 001A1B2C C0 03 00 08 */ lfs f0, 8(r3) +/* 801A4BD0 001A1B30 D0 04 00 08 */ stfs f0, 8(r4) +/* 801A4BD4 001A1B34 C0 03 00 0C */ lfs f0, 0xc(r3) +/* 801A4BD8 001A1B38 D0 04 00 0C */ stfs f0, 0xc(r4) +/* 801A4BDC 001A1B3C C0 03 00 10 */ lfs f0, 0x10(r3) +/* 801A4BE0 001A1B40 D0 04 00 10 */ stfs f0, 0x10(r4) +/* 801A4BE4 001A1B44 C0 03 00 14 */ lfs f0, 0x14(r3) +/* 801A4BE8 001A1B48 D0 04 00 14 */ stfs f0, 0x14(r4) +lbl_801A4BEC: +/* 801A4BEC 001A1B4C 7F A0 07 75 */ extsb. r0, r29 +/* 801A4BF0 001A1B50 41 82 00 0C */ beq lbl_801A4BFC +/* 801A4BF4 001A1B54 38 00 00 00 */ li r0, 0 +/* 801A4BF8 001A1B58 98 01 00 C8 */ stb r0, 0xc8(r1) +lbl_801A4BFC: +/* 801A4BFC 001A1B5C 7C A0 07 75 */ extsb. r0, r5 +/* 801A4C00 001A1B60 41 82 00 0C */ beq lbl_801A4C0C +/* 801A4C04 001A1B64 38 00 00 00 */ li r0, 0 +/* 801A4C08 001A1B68 98 01 00 E4 */ stb r0, 0xe4(r1) +lbl_801A4C0C: +/* 801A4C0C 001A1B6C 80 9E 0A C4 */ lwz r4, 0xac4(r30) +/* 801A4C10 001A1B70 38 A0 00 00 */ li r5, 0 +/* 801A4C14 001A1B74 3B A0 00 00 */ li r29, 0 +/* 801A4C18 001A1B78 28 04 00 00 */ cmplwi r4, 0 +/* 801A4C1C 001A1B7C 41 82 00 24 */ beq lbl_801A4C40 +/* 801A4C20 001A1B80 81 84 00 00 */ lwz r12, 0(r4) +/* 801A4C24 001A1B84 38 61 00 94 */ addi r3, r1, 0x94 +/* 801A4C28 001A1B88 81 8C 00 5C */ lwz r12, 0x5c(r12) +/* 801A4C2C 001A1B8C 7D 89 03 A6 */ mtctr r12 +/* 801A4C30 001A1B90 4E 80 04 21 */ bctrl +/* 801A4C34 001A1B94 38 61 00 94 */ addi r3, r1, 0x94 +/* 801A4C38 001A1B98 38 A0 00 01 */ li r5, 1 +/* 801A4C3C 001A1B9C 48 00 00 14 */ b lbl_801A4C50 +lbl_801A4C40: +/* 801A4C40 001A1BA0 38 00 00 00 */ li r0, 0 +/* 801A4C44 001A1BA4 38 61 00 78 */ addi r3, r1, 0x78 +/* 801A4C48 001A1BA8 98 01 00 90 */ stb r0, 0x90(r1) +/* 801A4C4C 001A1BAC 3B A0 00 01 */ li r29, 1 +lbl_801A4C50: +/* 801A4C50 001A1BB0 88 03 00 18 */ lbz r0, 0x18(r3) +/* 801A4C54 001A1BB4 28 00 00 00 */ cmplwi r0, 0 +/* 801A4C58 001A1BB8 98 01 01 C0 */ stb r0, 0x1c0(r1) +/* 801A4C5C 001A1BBC 41 82 00 3C */ beq lbl_801A4C98 +/* 801A4C60 001A1BC0 34 81 01 A8 */ addic. r4, r1, 0x1a8 +/* 801A4C64 001A1BC4 41 82 00 34 */ beq lbl_801A4C98 +/* 801A4C68 001A1BC8 C0 03 00 00 */ lfs f0, 0(r3) +/* 801A4C6C 001A1BCC D0 04 00 00 */ stfs f0, 0(r4) +/* 801A4C70 001A1BD0 C0 03 00 04 */ lfs f0, 4(r3) +/* 801A4C74 001A1BD4 D0 04 00 04 */ stfs f0, 4(r4) +/* 801A4C78 001A1BD8 C0 03 00 08 */ lfs f0, 8(r3) +/* 801A4C7C 001A1BDC D0 04 00 08 */ stfs f0, 8(r4) +/* 801A4C80 001A1BE0 C0 03 00 0C */ lfs f0, 0xc(r3) +/* 801A4C84 001A1BE4 D0 04 00 0C */ stfs f0, 0xc(r4) +/* 801A4C88 001A1BE8 C0 03 00 10 */ lfs f0, 0x10(r3) +/* 801A4C8C 001A1BEC D0 04 00 10 */ stfs f0, 0x10(r4) +/* 801A4C90 001A1BF0 C0 03 00 14 */ lfs f0, 0x14(r3) +/* 801A4C94 001A1BF4 D0 04 00 14 */ stfs f0, 0x14(r4) +lbl_801A4C98: +/* 801A4C98 001A1BF8 7F A0 07 75 */ extsb. r0, r29 +/* 801A4C9C 001A1BFC 41 82 00 0C */ beq lbl_801A4CA8 +/* 801A4CA0 001A1C00 38 00 00 00 */ li r0, 0 +/* 801A4CA4 001A1C04 98 01 00 90 */ stb r0, 0x90(r1) +lbl_801A4CA8: +/* 801A4CA8 001A1C08 7C A0 07 75 */ extsb. r0, r5 +/* 801A4CAC 001A1C0C 41 82 00 0C */ beq lbl_801A4CB8 +/* 801A4CB0 001A1C10 38 00 00 00 */ li r0, 0 +/* 801A4CB4 001A1C14 98 01 00 AC */ stb r0, 0xac(r1) +lbl_801A4CB8: +/* 801A4CB8 001A1C18 80 9E 0A D8 */ lwz r4, 0xad8(r30) +/* 801A4CBC 001A1C1C 38 A0 00 00 */ li r5, 0 +/* 801A4CC0 001A1C20 3B A0 00 00 */ li r29, 0 +/* 801A4CC4 001A1C24 28 04 00 00 */ cmplwi r4, 0 +/* 801A4CC8 001A1C28 41 82 00 24 */ beq lbl_801A4CEC +/* 801A4CCC 001A1C2C 81 84 00 00 */ lwz r12, 0(r4) +/* 801A4CD0 001A1C30 38 61 00 5C */ addi r3, r1, 0x5c +/* 801A4CD4 001A1C34 81 8C 00 5C */ lwz r12, 0x5c(r12) +/* 801A4CD8 001A1C38 7D 89 03 A6 */ mtctr r12 +/* 801A4CDC 001A1C3C 4E 80 04 21 */ bctrl +/* 801A4CE0 001A1C40 38 61 00 5C */ addi r3, r1, 0x5c +/* 801A4CE4 001A1C44 38 A0 00 01 */ li r5, 1 +/* 801A4CE8 001A1C48 48 00 00 14 */ b lbl_801A4CFC +lbl_801A4CEC: +/* 801A4CEC 001A1C4C 38 00 00 00 */ li r0, 0 +/* 801A4CF0 001A1C50 38 61 00 40 */ addi r3, r1, 0x40 +/* 801A4CF4 001A1C54 98 01 00 58 */ stb r0, 0x58(r1) +/* 801A4CF8 001A1C58 3B A0 00 01 */ li r29, 1 +lbl_801A4CFC: +/* 801A4CFC 001A1C5C 88 03 00 18 */ lbz r0, 0x18(r3) +/* 801A4D00 001A1C60 28 00 00 00 */ cmplwi r0, 0 +/* 801A4D04 001A1C64 98 01 01 A4 */ stb r0, 0x1a4(r1) +/* 801A4D08 001A1C68 41 82 00 3C */ beq lbl_801A4D44 +/* 801A4D0C 001A1C6C 34 81 01 8C */ addic. r4, r1, 0x18c +/* 801A4D10 001A1C70 41 82 00 34 */ beq lbl_801A4D44 +/* 801A4D14 001A1C74 C0 03 00 00 */ lfs f0, 0(r3) +/* 801A4D18 001A1C78 D0 04 00 00 */ stfs f0, 0(r4) +/* 801A4D1C 001A1C7C C0 03 00 04 */ lfs f0, 4(r3) +/* 801A4D20 001A1C80 D0 04 00 04 */ stfs f0, 4(r4) +/* 801A4D24 001A1C84 C0 03 00 08 */ lfs f0, 8(r3) +/* 801A4D28 001A1C88 D0 04 00 08 */ stfs f0, 8(r4) +/* 801A4D2C 001A1C8C C0 03 00 0C */ lfs f0, 0xc(r3) +/* 801A4D30 001A1C90 D0 04 00 0C */ stfs f0, 0xc(r4) +/* 801A4D34 001A1C94 C0 03 00 10 */ lfs f0, 0x10(r3) +/* 801A4D38 001A1C98 D0 04 00 10 */ stfs f0, 0x10(r4) +/* 801A4D3C 001A1C9C C0 03 00 14 */ lfs f0, 0x14(r3) +/* 801A4D40 001A1CA0 D0 04 00 14 */ stfs f0, 0x14(r4) +lbl_801A4D44: +/* 801A4D44 001A1CA4 7F A0 07 75 */ extsb. r0, r29 +/* 801A4D48 001A1CA8 41 82 00 0C */ beq lbl_801A4D54 +/* 801A4D4C 001A1CAC 38 00 00 00 */ li r0, 0 +/* 801A4D50 001A1CB0 98 01 00 58 */ stb r0, 0x58(r1) +lbl_801A4D54: +/* 801A4D54 001A1CB4 7C A0 07 75 */ extsb. r0, r5 +/* 801A4D58 001A1CB8 41 82 00 0C */ beq lbl_801A4D64 +/* 801A4D5C 001A1CBC 38 00 00 00 */ li r0, 0 +/* 801A4D60 001A1CC0 98 01 00 74 */ stb r0, 0x74(r1) +lbl_801A4D64: +/* 801A4D64 001A1CC4 80 9E 0A D8 */ lwz r4, 0xad8(r30) +/* 801A4D68 001A1CC8 38 A0 00 00 */ li r5, 0 +/* 801A4D6C 001A1CCC 3B A0 00 00 */ li r29, 0 +/* 801A4D70 001A1CD0 28 04 00 00 */ cmplwi r4, 0 +/* 801A4D74 001A1CD4 41 82 00 24 */ beq lbl_801A4D98 +/* 801A4D78 001A1CD8 81 84 00 00 */ lwz r12, 0(r4) +/* 801A4D7C 001A1CDC 38 61 00 24 */ addi r3, r1, 0x24 +/* 801A4D80 001A1CE0 81 8C 00 5C */ lwz r12, 0x5c(r12) +/* 801A4D84 001A1CE4 7D 89 03 A6 */ mtctr r12 +/* 801A4D88 001A1CE8 4E 80 04 21 */ bctrl +/* 801A4D8C 001A1CEC 38 61 00 24 */ addi r3, r1, 0x24 +/* 801A4D90 001A1CF0 38 A0 00 01 */ li r5, 1 +/* 801A4D94 001A1CF4 48 00 00 14 */ b lbl_801A4DA8 +lbl_801A4D98: +/* 801A4D98 001A1CF8 38 00 00 00 */ li r0, 0 +/* 801A4D9C 001A1CFC 38 61 00 08 */ addi r3, r1, 8 +/* 801A4DA0 001A1D00 98 01 00 20 */ stb r0, 0x20(r1) +/* 801A4DA4 001A1D04 3B A0 00 01 */ li r29, 1 +lbl_801A4DA8: +/* 801A4DA8 001A1D08 88 03 00 18 */ lbz r0, 0x18(r3) +/* 801A4DAC 001A1D0C 28 00 00 00 */ cmplwi r0, 0 +/* 801A4DB0 001A1D10 98 01 01 88 */ stb r0, 0x188(r1) +/* 801A4DB4 001A1D14 41 82 00 3C */ beq lbl_801A4DF0 +/* 801A4DB8 001A1D18 34 81 01 70 */ addic. r4, r1, 0x170 +/* 801A4DBC 001A1D1C 41 82 00 34 */ beq lbl_801A4DF0 +/* 801A4DC0 001A1D20 C0 03 00 00 */ lfs f0, 0(r3) +/* 801A4DC4 001A1D24 D0 04 00 00 */ stfs f0, 0(r4) +/* 801A4DC8 001A1D28 C0 03 00 04 */ lfs f0, 4(r3) +/* 801A4DCC 001A1D2C D0 04 00 04 */ stfs f0, 4(r4) +/* 801A4DD0 001A1D30 C0 03 00 08 */ lfs f0, 8(r3) +/* 801A4DD4 001A1D34 D0 04 00 08 */ stfs f0, 8(r4) +/* 801A4DD8 001A1D38 C0 03 00 0C */ lfs f0, 0xc(r3) +/* 801A4DDC 001A1D3C D0 04 00 0C */ stfs f0, 0xc(r4) +/* 801A4DE0 001A1D40 C0 03 00 10 */ lfs f0, 0x10(r3) +/* 801A4DE4 001A1D44 D0 04 00 10 */ stfs f0, 0x10(r4) +/* 801A4DE8 001A1D48 C0 03 00 14 */ lfs f0, 0x14(r3) +/* 801A4DEC 001A1D4C D0 04 00 14 */ stfs f0, 0x14(r4) +lbl_801A4DF0: +/* 801A4DF0 001A1D50 7F A0 07 75 */ extsb. r0, r29 +/* 801A4DF4 001A1D54 41 82 00 0C */ beq lbl_801A4E00 +/* 801A4DF8 001A1D58 38 00 00 00 */ li r0, 0 +/* 801A4DFC 001A1D5C 98 01 00 20 */ stb r0, 0x20(r1) +lbl_801A4E00: +/* 801A4E00 001A1D60 7C A0 07 75 */ extsb. r0, r5 +/* 801A4E04 001A1D64 41 82 00 0C */ beq lbl_801A4E10 +/* 801A4E08 001A1D68 38 00 00 00 */ li r0, 0 +/* 801A4E0C 001A1D6C 98 01 00 3C */ stb r0, 0x3c(r1) +lbl_801A4E10: +/* 801A4E10 001A1D70 3C 60 80 5A */ lis r3, lbl_805A6754@ha +/* 801A4E14 001A1D74 C4 A3 67 54 */ lfsu f5, lbl_805A6754@l(r3) +/* 801A4E18 001A1D78 88 01 02 14 */ lbz r0, 0x214(r1) +/* 801A4E1C 001A1D7C C0 83 00 04 */ lfs f4, 4(r3) +/* 801A4E20 001A1D80 C0 63 00 08 */ lfs f3, 8(r3) +/* 801A4E24 001A1D84 28 00 00 00 */ cmplwi r0, 0 +/* 801A4E28 001A1D88 C0 43 00 0C */ lfs f2, 0xc(r3) +/* 801A4E2C 001A1D8C C0 23 00 10 */ lfs f1, 0x10(r3) +/* 801A4E30 001A1D90 C0 03 00 14 */ lfs f0, 0x14(r3) +/* 801A4E34 001A1D94 D0 A1 01 58 */ stfs f5, 0x158(r1) +/* 801A4E38 001A1D98 D0 81 01 5C */ stfs f4, 0x15c(r1) +/* 801A4E3C 001A1D9C D0 61 01 60 */ stfs f3, 0x160(r1) +/* 801A4E40 001A1DA0 D0 41 01 64 */ stfs f2, 0x164(r1) +/* 801A4E44 001A1DA4 D0 21 01 68 */ stfs f1, 0x168(r1) +/* 801A4E48 001A1DA8 D0 01 01 6C */ stfs f0, 0x16c(r1) +/* 801A4E4C 001A1DAC 41 82 00 20 */ beq lbl_801A4E6C +/* 801A4E50 001A1DB0 3B A1 01 FC */ addi r29, r1, 0x1fc +/* 801A4E54 001A1DB4 38 61 01 58 */ addi r3, r1, 0x158 +/* 801A4E58 001A1DB8 7F A4 EB 78 */ mr r4, r29 +/* 801A4E5C 001A1DBC 48 19 2C AD */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 801A4E60 001A1DC0 38 61 01 58 */ addi r3, r1, 0x158 +/* 801A4E64 001A1DC4 38 9D 00 0C */ addi r4, r29, 0xc +/* 801A4E68 001A1DC8 48 19 2C A1 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +lbl_801A4E6C: +/* 801A4E6C 001A1DCC 88 01 01 88 */ lbz r0, 0x188(r1) +/* 801A4E70 001A1DD0 28 00 00 00 */ cmplwi r0, 0 +/* 801A4E74 001A1DD4 41 82 00 20 */ beq lbl_801A4E94 +/* 801A4E78 001A1DD8 3B A1 01 70 */ addi r29, r1, 0x170 +/* 801A4E7C 001A1DDC 38 61 01 58 */ addi r3, r1, 0x158 +/* 801A4E80 001A1DE0 7F A4 EB 78 */ mr r4, r29 +/* 801A4E84 001A1DE4 48 19 2C 85 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 801A4E88 001A1DE8 38 61 01 58 */ addi r3, r1, 0x158 +/* 801A4E8C 001A1DEC 38 9D 00 0C */ addi r4, r29, 0xc +/* 801A4E90 001A1DF0 48 19 2C 79 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +lbl_801A4E94: +/* 801A4E94 001A1DF4 88 01 01 F8 */ lbz r0, 0x1f8(r1) +/* 801A4E98 001A1DF8 28 00 00 00 */ cmplwi r0, 0 +/* 801A4E9C 001A1DFC 41 82 00 20 */ beq lbl_801A4EBC +/* 801A4EA0 001A1E00 3B A1 01 E0 */ addi r29, r1, 0x1e0 +/* 801A4EA4 001A1E04 38 61 01 58 */ addi r3, r1, 0x158 +/* 801A4EA8 001A1E08 7F A4 EB 78 */ mr r4, r29 +/* 801A4EAC 001A1E0C 48 19 2C 5D */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 801A4EB0 001A1E10 38 61 01 58 */ addi r3, r1, 0x158 +/* 801A4EB4 001A1E14 38 9D 00 0C */ addi r4, r29, 0xc +/* 801A4EB8 001A1E18 48 19 2C 51 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +lbl_801A4EBC: +/* 801A4EBC 001A1E1C 88 01 01 DC */ lbz r0, 0x1dc(r1) +/* 801A4EC0 001A1E20 28 00 00 00 */ cmplwi r0, 0 +/* 801A4EC4 001A1E24 41 82 00 20 */ beq lbl_801A4EE4 +/* 801A4EC8 001A1E28 3B A1 01 C4 */ addi r29, r1, 0x1c4 +/* 801A4ECC 001A1E2C 38 61 01 58 */ addi r3, r1, 0x158 +/* 801A4ED0 001A1E30 7F A4 EB 78 */ mr r4, r29 +/* 801A4ED4 001A1E34 48 19 2C 35 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 801A4ED8 001A1E38 38 61 01 58 */ addi r3, r1, 0x158 +/* 801A4EDC 001A1E3C 38 9D 00 0C */ addi r4, r29, 0xc +/* 801A4EE0 001A1E40 48 19 2C 29 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +lbl_801A4EE4: +/* 801A4EE4 001A1E44 88 01 01 C0 */ lbz r0, 0x1c0(r1) +/* 801A4EE8 001A1E48 28 00 00 00 */ cmplwi r0, 0 +/* 801A4EEC 001A1E4C 41 82 00 20 */ beq lbl_801A4F0C +/* 801A4EF0 001A1E50 3B A1 01 A8 */ addi r29, r1, 0x1a8 +/* 801A4EF4 001A1E54 38 61 01 58 */ addi r3, r1, 0x158 +/* 801A4EF8 001A1E58 7F A4 EB 78 */ mr r4, r29 +/* 801A4EFC 001A1E5C 48 19 2C 0D */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 801A4F00 001A1E60 38 61 01 58 */ addi r3, r1, 0x158 +/* 801A4F04 001A1E64 38 9D 00 0C */ addi r4, r29, 0xc +/* 801A4F08 001A1E68 48 19 2C 01 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +lbl_801A4F0C: +/* 801A4F0C 001A1E6C 88 01 01 A4 */ lbz r0, 0x1a4(r1) +/* 801A4F10 001A1E70 28 00 00 00 */ cmplwi r0, 0 +/* 801A4F14 001A1E74 41 82 00 20 */ beq lbl_801A4F34 +/* 801A4F18 001A1E78 3B A1 01 8C */ addi r29, r1, 0x18c +/* 801A4F1C 001A1E7C 38 61 01 58 */ addi r3, r1, 0x158 +/* 801A4F20 001A1E80 7F A4 EB 78 */ mr r4, r29 +/* 801A4F24 001A1E84 48 19 2B E5 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 801A4F28 001A1E88 38 61 01 58 */ addi r3, r1, 0x158 +/* 801A4F2C 001A1E8C 38 9D 00 0C */ addi r4, r29, 0xc +/* 801A4F30 001A1E90 48 19 2B D9 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +lbl_801A4F34: +/* 801A4F34 001A1E94 7F E3 FB 78 */ mr r3, r31 +/* 801A4F38 001A1E98 38 81 01 58 */ addi r4, r1, 0x158 +/* 801A4F3C 001A1E9C 48 1A 02 95 */ bl BoxInFrustumPlanes__14CFrustumPlanesCFRC6CAABox +/* 801A4F40 001A1EA0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A4F44 001A1EA4 41 82 00 84 */ beq lbl_801A4FC8 +/* 801A4F48 001A1EA8 80 9E 0A EC */ lwz r4, 0xaec(r30) +/* 801A4F4C 001A1EAC 28 04 00 00 */ cmplwi r4, 0 +/* 801A4F50 001A1EB0 41 82 00 18 */ beq lbl_801A4F68 +/* 801A4F54 001A1EB4 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801A4F58 001A1EB8 81 83 00 00 */ lwz r12, 0(r3) +/* 801A4F5C 001A1EBC 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801A4F60 001A1EC0 7D 89 03 A6 */ mtctr r12 +/* 801A4F64 001A1EC4 4E 80 04 21 */ bctrl +lbl_801A4F68: +/* 801A4F68 001A1EC8 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801A4F6C 001A1ECC 80 9E 0A 9C */ lwz r4, 0xa9c(r30) +/* 801A4F70 001A1ED0 81 83 00 00 */ lwz r12, 0(r3) +/* 801A4F74 001A1ED4 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801A4F78 001A1ED8 7D 89 03 A6 */ mtctr r12 +/* 801A4F7C 001A1EDC 4E 80 04 21 */ bctrl +/* 801A4F80 001A1EE0 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801A4F84 001A1EE4 80 9E 0A B0 */ lwz r4, 0xab0(r30) +/* 801A4F88 001A1EE8 81 83 00 00 */ lwz r12, 0(r3) +/* 801A4F8C 001A1EEC 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801A4F90 001A1EF0 7D 89 03 A6 */ mtctr r12 +/* 801A4F94 001A1EF4 4E 80 04 21 */ bctrl +/* 801A4F98 001A1EF8 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801A4F9C 001A1EFC 80 9E 0A C4 */ lwz r4, 0xac4(r30) +/* 801A4FA0 001A1F00 81 83 00 00 */ lwz r12, 0(r3) +/* 801A4FA4 001A1F04 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801A4FA8 001A1F08 7D 89 03 A6 */ mtctr r12 +/* 801A4FAC 001A1F0C 4E 80 04 21 */ bctrl +/* 801A4FB0 001A1F10 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801A4FB4 001A1F14 80 9E 0A D8 */ lwz r4, 0xad8(r30) +/* 801A4FB8 001A1F18 81 83 00 00 */ lwz r12, 0(r3) +/* 801A4FBC 001A1F1C 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801A4FC0 001A1F20 7D 89 03 A6 */ mtctr r12 +/* 801A4FC4 001A1F24 4E 80 04 21 */ bctrl +lbl_801A4FC8: +/* 801A4FC8 001A1F28 38 00 00 00 */ li r0, 0 +/* 801A4FCC 001A1F2C 98 01 01 88 */ stb r0, 0x188(r1) +/* 801A4FD0 001A1F30 98 01 01 A4 */ stb r0, 0x1a4(r1) +/* 801A4FD4 001A1F34 98 01 01 C0 */ stb r0, 0x1c0(r1) +/* 801A4FD8 001A1F38 98 01 01 DC */ stb r0, 0x1dc(r1) +/* 801A4FDC 001A1F3C 98 01 01 F8 */ stb r0, 0x1f8(r1) +/* 801A4FE0 001A1F40 98 01 02 14 */ stb r0, 0x214(r1) +lbl_801A4FE4: +/* 801A4FE4 001A1F44 80 01 02 34 */ lwz r0, 0x234(r1) +/* 801A4FE8 001A1F48 83 E1 02 2C */ lwz r31, 0x22c(r1) +/* 801A4FEC 001A1F4C 83 C1 02 28 */ lwz r30, 0x228(r1) +/* 801A4FF0 001A1F50 83 A1 02 24 */ lwz r29, 0x224(r1) +/* 801A4FF4 001A1F54 7C 08 03 A6 */ mtlr r0 +/* 801A4FF8 001A1F58 38 21 02 30 */ addi r1, r1, 0x230 +/* 801A4FFC 001A1F5C 4E 80 00 20 */ blr + +.global Render__12CIceSheegothCFRC13CStateManager +Render__12CIceSheegothCFRC13CStateManager: +/* 801A5000 001A1F60 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801A5004 001A1F64 7C 08 02 A6 */ mflr r0 +/* 801A5008 001A1F68 90 01 00 14 */ stw r0, 0x14(r1) +/* 801A500C 001A1F6C 4B ED 30 21 */ bl Render__10CPatternedCFRC13CStateManager +/* 801A5010 001A1F70 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801A5014 001A1F74 7C 08 03 A6 */ mtlr r0 +/* 801A5018 001A1F78 38 21 00 10 */ addi r1, r1, 0x10 +/* 801A501C 001A1F7C 4E 80 00 20 */ blr + +.global AcceptScriptMsg__12CIceSheegothF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__12CIceSheegothF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 801A5020 001A1F80 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 801A5024 001A1F84 7C 08 02 A6 */ mflr r0 +/* 801A5028 001A1F88 90 01 01 04 */ stw r0, 0x104(r1) +/* 801A502C 001A1F8C DB E1 00 F0 */ stfd f31, 0xf0(r1) +/* 801A5030 001A1F90 F3 E1 00 F8 */ psq_st f31, 248(r1), 0, qr0 +/* 801A5034 001A1F94 BF 41 00 D8 */ stmw r26, 0xd8(r1) +/* 801A5038 001A1F98 7C 9C 23 78 */ mr r28, r4 +/* 801A503C 001A1F9C 7C 7F 1B 78 */ mr r31, r3 +/* 801A5040 001A1FA0 28 1C 00 30 */ cmplwi r28, 0x30 +/* 801A5044 001A1FA4 7C BD 2B 78 */ mr r29, r5 +/* 801A5048 001A1FA8 7C DE 33 78 */ mr r30, r6 +/* 801A504C 001A1FAC 41 81 06 C0 */ bgt lbl_801A570C +/* 801A5050 001A1FB0 3C 80 80 3E */ lis r4, lbl_803E4A54@ha +/* 801A5054 001A1FB4 57 80 10 3A */ slwi r0, r28, 2 +/* 801A5058 001A1FB8 38 84 4A 54 */ addi r4, r4, lbl_803E4A54@l +/* 801A505C 001A1FBC 7C 04 00 2E */ lwzx r0, r4, r0 +/* 801A5060 001A1FC0 7C 09 03 A6 */ mtctr r0 +/* 801A5064 001A1FC4 4E 80 04 20 */ bctr +/* 801A5068 001A1FC8 81 83 00 00 */ lwz r12, 0(r3) +/* 801A506C 001A1FCC 7F C4 F3 78 */ mr r4, r30 +/* 801A5070 001A1FD0 C0 22 A7 5C */ lfs f1, lbl_805AC47C@sda21(r2) +/* 801A5074 001A1FD4 81 8C 01 C0 */ lwz r12, 0x1c0(r12) +/* 801A5078 001A1FD8 7D 89 03 A6 */ mtctr r12 +/* 801A507C 001A1FDC 4E 80 04 21 */ bctrl +/* 801A5080 001A1FE0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A5084 001A1FE4 40 82 00 10 */ bne lbl_801A5094 +/* 801A5088 001A1FE8 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801A508C 001A1FEC 38 80 00 00 */ li r4, 0 +/* 801A5090 001A1FF0 4B F9 59 49 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +lbl_801A5094: +/* 801A5094 001A1FF4 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801A5098 001A1FF8 7F C4 F3 78 */ mr r4, r30 +/* 801A509C 001A1FFC 4B F9 5C 55 */ bl Activate__15CBodyControllerFR13CStateManager +/* 801A50A0 001A2000 7F E3 FB 78 */ mr r3, r31 +/* 801A50A4 001A2004 7F C4 F3 78 */ mr r4, r30 +/* 801A50A8 001A2008 4B FF AF 41 */ bl sub_8019ffe8 +/* 801A50AC 001A200C 7F E3 FB 78 */ mr r3, r31 +/* 801A50B0 001A2010 7F C4 F3 78 */ mr r4, r30 +/* 801A50B4 001A2014 4B FF A3 B5 */ bl CreateFlameThrower__12CIceSheegothFR13CStateManager +/* 801A50B8 001A2018 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801A50BC 001A201C 38 63 02 A4 */ addi r3, r3, 0x2a4 +/* 801A50C0 001A2020 4B F8 ED ED */ bl GetMaxSpeed__14CBodyStateInfoCFv +/* 801A50C4 001A2024 FF E0 08 90 */ fmr f31, f1 +/* 801A50C8 001A2028 C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 801A50CC 001A202C FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 801A50D0 001A2030 40 81 00 28 */ ble lbl_801A50F8 +/* 801A50D4 001A2034 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801A50D8 001A2038 38 80 00 01 */ li r4, 1 +/* 801A50DC 001A203C 38 63 02 A4 */ addi r3, r3, 0x2a4 +/* 801A50E0 001A2040 4B F8 EC F5 */ bl GetLocomotionSpeed__14CBodyStateInfoCFQ23pas15ELocomotionAnim +/* 801A50E4 001A2044 C0 02 A7 E4 */ lfs f0, lbl_805AC504@sda21(r2) +/* 801A50E8 001A2048 EC 00 00 72 */ fmuls f0, f0, f1 +/* 801A50EC 001A204C EC 00 F8 24 */ fdivs f0, f0, f31 +/* 801A50F0 001A2050 D0 1F 09 48 */ stfs f0, 0x948(r31) +/* 801A50F4 001A2054 D0 1F 09 44 */ stfs f0, 0x944(r31) +lbl_801A50F8: +/* 801A50F8 001A2058 80 BF 04 50 */ lwz r5, 0x450(r31) +/* 801A50FC 001A205C 38 00 00 01 */ li r0, 1 +/* 801A5100 001A2060 80 82 A7 40 */ lwz r4, lbl_805AC460@sda21(r2) +/* 801A5104 001A2064 38 61 00 C0 */ addi r3, r1, 0xc0 +/* 801A5108 001A2068 90 05 00 34 */ stw r0, 0x34(r5) +/* 801A510C 001A206C 4B E5 FB AD */ bl string_l__4rstlFPCc +/* 801A5110 001A2070 80 9F 00 64 */ lwz r4, 0x64(r31) +/* 801A5114 001A2074 38 61 00 08 */ addi r3, r1, 8 +/* 801A5118 001A2078 38 A1 00 C0 */ addi r5, r1, 0xc0 +/* 801A511C 001A207C 80 84 00 10 */ lwz r4, 0x10(r4) +/* 801A5120 001A2080 4B E8 97 19 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801A5124 001A2084 88 01 00 08 */ lbz r0, 8(r1) +/* 801A5128 001A2088 38 61 00 C0 */ addi r3, r1, 0xc0 +/* 801A512C 001A208C 98 1F 0A F4 */ stb r0, 0xaf4(r31) +/* 801A5130 001A2090 48 19 89 B1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801A5134 001A2094 48 00 05 D8 */ b lbl_801A570C +/* 801A5138 001A2098 80 7F 0A 2C */ lwz r3, 0xa2c(r31) +/* 801A513C 001A209C 7F C4 F3 78 */ mr r4, r30 +/* 801A5140 001A20A0 38 A0 00 01 */ li r5, 1 +/* 801A5144 001A20A4 48 00 21 B5 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb +/* 801A5148 001A20A8 48 00 05 C4 */ b lbl_801A570C +/* 801A514C 001A20AC 80 7F 0A 2C */ lwz r3, 0xa2c(r31) +/* 801A5150 001A20B0 7F C4 F3 78 */ mr r4, r30 +/* 801A5154 001A20B4 38 A0 00 00 */ li r5, 0 +/* 801A5158 001A20B8 48 00 21 A1 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb +/* 801A515C 001A20BC 48 00 05 B0 */ b lbl_801A570C +/* 801A5160 001A20C0 80 7F 0A 2C */ lwz r3, 0xa2c(r31) +/* 801A5164 001A20C4 7F C4 F3 78 */ mr r4, r30 +/* 801A5168 001A20C8 48 00 22 5D */ bl Destroy__22CCollisionActorManagerCFR13CStateManager +/* 801A516C 001A20CC A0 7F 0A 80 */ lhz r3, 0xa80(r31) +/* 801A5170 001A20D0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801A5174 001A20D4 7C 03 00 40 */ cmplw r3, r0 +/* 801A5178 001A20D8 41 82 00 20 */ beq lbl_801A5198 +/* 801A517C 001A20DC A0 1F 0A 80 */ lhz r0, 0xa80(r31) +/* 801A5180 001A20E0 7F C3 F3 78 */ mr r3, r30 +/* 801A5184 001A20E4 38 81 00 3C */ addi r4, r1, 0x3c +/* 801A5188 001A20E8 B0 01 00 3C */ sth r0, 0x3c(r1) +/* 801A518C 001A20EC 4B EA 70 E1 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +/* 801A5190 001A20F0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801A5194 001A20F4 B0 1F 0A 80 */ sth r0, 0xa80(r31) +lbl_801A5198: +/* 801A5198 001A20F8 80 1F 0A F0 */ lwz r0, 0xaf0(r31) +/* 801A519C 001A20FC 28 00 00 00 */ cmplwi r0, 0 +/* 801A51A0 001A2100 41 82 05 6C */ beq lbl_801A570C +/* 801A51A4 001A2104 80 1F 0A F0 */ lwz r0, 0xaf0(r31) +/* 801A51A8 001A2108 38 61 00 50 */ addi r3, r1, 0x50 +/* 801A51AC 001A210C 90 01 00 50 */ stw r0, 0x50(r1) +/* 801A51B0 001A2110 48 14 4C D5 */ bl RemoveEmitter__11CSfxManagerFRC10CSfxHandle +/* 801A51B4 001A2114 48 00 05 58 */ b lbl_801A570C +/* 801A51B8 001A2118 88 1F 0B 28 */ lbz r0, 0xb28(r31) +/* 801A51BC 001A211C 38 60 00 01 */ li r3, 1 +/* 801A51C0 001A2120 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801A51C4 001A2124 98 1F 0B 28 */ stb r0, 0xb28(r31) +/* 801A51C8 001A2128 48 00 05 44 */ b lbl_801A570C +/* 801A51CC 001A212C 80 BF 00 04 */ lwz r5, 4(r31) +/* 801A51D0 001A2130 80 9E 08 50 */ lwz r4, 0x850(r30) +/* 801A51D4 001A2134 54 A3 18 38 */ slwi r3, r5, 3 +/* 801A51D8 001A2138 90 A1 00 54 */ stw r5, 0x54(r1) +/* 801A51DC 001A213C 80 84 00 20 */ lwz r4, 0x20(r4) +/* 801A51E0 001A2140 38 03 00 04 */ addi r0, r3, 4 +/* 801A51E4 001A2144 90 A1 00 4C */ stw r5, 0x4c(r1) +/* 801A51E8 001A2148 7C 84 00 2E */ lwzx r4, r4, r0 +/* 801A51EC 001A214C 80 64 01 2C */ lwz r3, 0x12c(r4) +/* 801A51F0 001A2150 80 03 10 BC */ lwz r0, 0x10bc(r3) +/* 801A51F4 001A2154 90 1F 07 60 */ stw r0, 0x760(r31) +/* 801A51F8 001A2158 80 64 01 2C */ lwz r3, 0x12c(r4) +/* 801A51FC 001A215C 80 03 10 BC */ lwz r0, 0x10bc(r3) +/* 801A5200 001A2160 90 1F 08 44 */ stw r0, 0x844(r31) +/* 801A5204 001A2164 48 00 05 08 */ b lbl_801A570C +/* 801A5208 001A2168 A0 1D 00 00 */ lhz r0, 0(r29) +/* 801A520C 001A216C 7F C5 F3 78 */ mr r5, r30 +/* 801A5210 001A2170 38 81 00 38 */ addi r4, r1, 0x38 +/* 801A5214 001A2174 B0 01 00 38 */ sth r0, 0x38(r1) +/* 801A5218 001A2178 4B FF B2 B9 */ bl sub_801a04d0 +/* 801A521C 001A217C A0 1D 00 00 */ lhz r0, 0(r29) +/* 801A5220 001A2180 7F C3 F3 78 */ mr r3, r30 +/* 801A5224 001A2184 38 81 00 34 */ addi r4, r1, 0x34 +/* 801A5228 001A2188 B0 01 00 34 */ sth r0, 0x34(r1) +/* 801A522C 001A218C 4B EA 73 49 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801A5230 001A2190 7C 64 1B 78 */ mr r4, r3 +/* 801A5234 001A2194 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 801A5238 001A2198 4B F0 A1 15 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801A523C 001A219C 80 83 00 04 */ lwz r4, 4(r3) +/* 801A5240 001A21A0 28 04 00 00 */ cmplwi r4, 0 +/* 801A5244 001A21A4 41 82 04 C8 */ beq lbl_801A570C +/* 801A5248 001A21A8 38 61 00 30 */ addi r3, r1, 0x30 +/* 801A524C 001A21AC 48 00 39 41 */ bl GetLastTouchedObject__15CCollisionActorCFv +/* 801A5250 001A21B0 A0 01 00 30 */ lhz r0, 0x30(r1) +/* 801A5254 001A21B4 7F C3 F3 78 */ mr r3, r30 +/* 801A5258 001A21B8 38 81 00 2C */ addi r4, r1, 0x2c +/* 801A525C 001A21BC B0 01 00 48 */ sth r0, 0x48(r1) +/* 801A5260 001A21C0 B0 01 00 2C */ sth r0, 0x2c(r1) +/* 801A5264 001A21C4 4B EA 73 41 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801A5268 001A21C8 7C 64 1B 78 */ mr r4, r3 +/* 801A526C 001A21CC 38 61 00 68 */ addi r3, r1, 0x68 +/* 801A5270 001A21D0 4B F0 06 29 */ bl "__ct__20TCastToPtr<7CWeapon>FP7CEntity" +/* 801A5274 001A21D4 80 83 00 04 */ lwz r4, 4(r3) +/* 801A5278 001A21D8 28 04 00 00 */ cmplwi r4, 0 +/* 801A527C 001A21DC 41 82 04 90 */ beq lbl_801A570C +/* 801A5280 001A21E0 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 801A5284 001A21E4 A0 84 00 EC */ lhz r4, 0xec(r4) +/* 801A5288 001A21E8 A0 03 00 08 */ lhz r0, 8(r3) +/* 801A528C 001A21EC 7C 04 00 40 */ cmplw r4, r0 +/* 801A5290 001A21F0 40 82 04 7C */ bne lbl_801A570C +/* 801A5294 001A21F4 88 1F 0B 28 */ lbz r0, 0xb28(r31) +/* 801A5298 001A21F8 38 60 00 01 */ li r3, 1 +/* 801A529C 001A21FC 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801A52A0 001A2200 98 1F 0B 28 */ stb r0, 0xb28(r31) +/* 801A52A4 001A2204 48 00 04 68 */ b lbl_801A570C +/* 801A52A8 001A2208 A0 1D 00 00 */ lhz r0, 0(r29) +/* 801A52AC 001A220C 7F C3 F3 78 */ mr r3, r30 +/* 801A52B0 001A2210 38 81 00 28 */ addi r4, r1, 0x28 +/* 801A52B4 001A2214 B0 01 00 28 */ sth r0, 0x28(r1) +/* 801A52B8 001A2218 4B EA 72 BD */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801A52BC 001A221C 7C 64 1B 78 */ mr r4, r3 +/* 801A52C0 001A2220 38 61 00 98 */ addi r3, r1, 0x98 +/* 801A52C4 001A2224 4B F0 A0 89 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801A52C8 001A2228 83 43 00 04 */ lwz r26, 4(r3) +/* 801A52CC 001A222C 28 1A 00 00 */ cmplwi r26, 0 +/* 801A52D0 001A2230 41 82 02 20 */ beq lbl_801A54F0 +/* 801A52D4 001A2234 7F 44 D3 78 */ mr r4, r26 +/* 801A52D8 001A2238 38 61 00 24 */ addi r3, r1, 0x24 +/* 801A52DC 001A223C 48 00 38 B1 */ bl GetLastTouchedObject__15CCollisionActorCFv +/* 801A52E0 001A2240 A0 01 00 24 */ lhz r0, 0x24(r1) +/* 801A52E4 001A2244 7F C3 F3 78 */ mr r3, r30 +/* 801A52E8 001A2248 38 81 00 20 */ addi r4, r1, 0x20 +/* 801A52EC 001A224C B0 01 00 44 */ sth r0, 0x44(r1) +/* 801A52F0 001A2250 B0 01 00 20 */ sth r0, 0x20(r1) +/* 801A52F4 001A2254 4B EA 72 B1 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801A52F8 001A2258 7C 64 1B 78 */ mr r4, r3 +/* 801A52FC 001A225C 38 61 00 60 */ addi r3, r1, 0x60 +/* 801A5300 001A2260 4B F0 05 99 */ bl "__ct__20TCastToPtr<7CWeapon>FP7CEntity" +/* 801A5304 001A2264 83 63 00 04 */ lwz r27, 4(r3) +/* 801A5308 001A2268 28 1B 00 00 */ cmplwi r27, 0 +/* 801A530C 001A226C 41 82 01 A0 */ beq lbl_801A54AC +/* 801A5310 001A2270 A0 7D 00 00 */ lhz r3, 0(r29) +/* 801A5314 001A2274 A0 1F 0A F6 */ lhz r0, 0xaf6(r31) +/* 801A5318 001A2278 7C 03 00 40 */ cmplw r3, r0 +/* 801A531C 001A227C 40 82 01 3C */ bne lbl_801A5458 +/* 801A5320 001A2280 88 1F 0B 28 */ lbz r0, 0xb28(r31) +/* 801A5324 001A2284 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 801A5328 001A2288 40 82 01 30 */ bne lbl_801A5458 +/* 801A532C 001A228C C0 3B 01 34 */ lfs f1, 0x134(r27) +/* 801A5330 001A2290 7F E3 FB 78 */ mr r3, r31 +/* 801A5334 001A2294 7F C4 F3 78 */ mr r4, r30 +/* 801A5338 001A2298 4B FF 98 B9 */ bl sub_8019ebf0 +/* 801A533C 001A229C 80 7F 0A EC */ lwz r3, 0xaec(r31) +/* 801A5340 001A22A0 28 03 00 00 */ cmplwi r3, 0 +/* 801A5344 001A22A4 41 82 00 1C */ beq lbl_801A5360 +/* 801A5348 001A22A8 81 83 00 00 */ lwz r12, 0(r3) +/* 801A534C 001A22AC 81 8C 00 58 */ lwz r12, 0x58(r12) +/* 801A5350 001A22B0 7D 89 03 A6 */ mtctr r12 +/* 801A5354 001A22B4 4E 80 04 21 */ bctrl +/* 801A5358 001A22B8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A535C 001A22BC 41 82 01 50 */ beq lbl_801A54AC +lbl_801A5360: +/* 801A5360 001A22C0 3C 60 80 3D */ lis r3, lbl_803D13D8@ha +/* 801A5364 001A22C4 3B 60 00 00 */ li r27, 0 +/* 801A5368 001A22C8 38 83 13 D8 */ addi r4, r3, lbl_803D13D8@l +/* 801A536C 001A22CC 38 60 03 40 */ li r3, 0x340 +/* 801A5370 001A22D0 38 84 00 8C */ addi r4, r4, 0x8c +/* 801A5374 001A22D4 38 A0 00 00 */ li r5, 0 +/* 801A5378 001A22D8 48 17 04 F5 */ bl __nw__FUlPCcPCc +/* 801A537C 001A22DC 7C 7A 1B 79 */ or. r26, r3, r3 +/* 801A5380 001A22E0 41 82 00 2C */ beq lbl_801A53AC +/* 801A5384 001A22E4 38 61 00 90 */ addi r3, r1, 0x90 +/* 801A5388 001A22E8 38 9F 0A DC */ addi r4, r31, 0xadc +/* 801A538C 001A22EC 48 19 BB 1D */ bl __ct__6CTokenFRC6CToken +/* 801A5390 001A22F0 7F 43 D3 78 */ mr r3, r26 +/* 801A5394 001A22F4 38 81 00 90 */ addi r4, r1, 0x90 +/* 801A5398 001A22F8 3B 60 00 01 */ li r27, 1 +/* 801A539C 001A22FC 38 A0 00 00 */ li r5, 0 +/* 801A53A0 001A2300 38 C0 00 01 */ li r6, 1 +/* 801A53A4 001A2304 48 17 A0 3D */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 801A53A8 001A2308 7C 7A 1B 78 */ mr r26, r3 +lbl_801A53AC: +/* 801A53AC 001A230C 7C 1A 00 D0 */ neg r0, r26 +/* 801A53B0 001A2310 38 61 00 88 */ addi r3, r1, 0x88 +/* 801A53B4 001A2314 7C 04 D3 78 */ or r4, r0, r26 +/* 801A53B8 001A2318 38 1F 0A E8 */ addi r0, r31, 0xae8 +/* 801A53BC 001A231C 54 84 0F FE */ srwi r4, r4, 0x1f +/* 801A53C0 001A2320 93 41 00 8C */ stw r26, 0x8c(r1) +/* 801A53C4 001A2324 7C 03 00 40 */ cmplw r3, r0 +/* 801A53C8 001A2328 98 81 00 88 */ stb r4, 0x88(r1) +/* 801A53CC 001A232C 41 82 00 48 */ beq lbl_801A5414 +/* 801A53D0 001A2330 88 1F 0A E8 */ lbz r0, 0xae8(r31) +/* 801A53D4 001A2334 28 00 00 00 */ cmplwi r0, 0 +/* 801A53D8 001A2338 41 82 00 24 */ beq lbl_801A53FC +/* 801A53DC 001A233C 80 7F 0A EC */ lwz r3, 0xaec(r31) +/* 801A53E0 001A2340 28 03 00 00 */ cmplwi r3, 0 +/* 801A53E4 001A2344 41 82 00 18 */ beq lbl_801A53FC +/* 801A53E8 001A2348 81 83 00 00 */ lwz r12, 0(r3) +/* 801A53EC 001A234C 38 80 00 01 */ li r4, 1 +/* 801A53F0 001A2350 81 8C 00 08 */ lwz r12, 8(r12) +/* 801A53F4 001A2354 7D 89 03 A6 */ mtctr r12 +/* 801A53F8 001A2358 4E 80 04 21 */ bctrl +lbl_801A53FC: +/* 801A53FC 001A235C 88 61 00 88 */ lbz r3, 0x88(r1) +/* 801A5400 001A2360 38 00 00 00 */ li r0, 0 +/* 801A5404 001A2364 98 7F 0A E8 */ stb r3, 0xae8(r31) +/* 801A5408 001A2368 80 61 00 8C */ lwz r3, 0x8c(r1) +/* 801A540C 001A236C 90 7F 0A EC */ stw r3, 0xaec(r31) +/* 801A5410 001A2370 98 01 00 88 */ stb r0, 0x88(r1) +lbl_801A5414: +/* 801A5414 001A2374 88 01 00 88 */ lbz r0, 0x88(r1) +/* 801A5418 001A2378 28 00 00 00 */ cmplwi r0, 0 +/* 801A541C 001A237C 41 82 00 24 */ beq lbl_801A5440 +/* 801A5420 001A2380 80 61 00 8C */ lwz r3, 0x8c(r1) +/* 801A5424 001A2384 28 03 00 00 */ cmplwi r3, 0 +/* 801A5428 001A2388 41 82 00 18 */ beq lbl_801A5440 +/* 801A542C 001A238C 81 83 00 00 */ lwz r12, 0(r3) +/* 801A5430 001A2390 38 80 00 01 */ li r4, 1 +/* 801A5434 001A2394 81 8C 00 08 */ lwz r12, 8(r12) +/* 801A5438 001A2398 7D 89 03 A6 */ mtctr r12 +/* 801A543C 001A239C 4E 80 04 21 */ bctrl +lbl_801A5440: +/* 801A5440 001A23A0 7F 60 07 75 */ extsb. r0, r27 +/* 801A5444 001A23A4 41 82 00 68 */ beq lbl_801A54AC +/* 801A5448 001A23A8 38 61 00 90 */ addi r3, r1, 0x90 +/* 801A544C 001A23AC 38 80 00 00 */ li r4, 0 +/* 801A5450 001A23B0 48 19 B9 F1 */ bl __dt__6CTokenFv +/* 801A5454 001A23B4 48 00 00 58 */ b lbl_801A54AC +lbl_801A5458: +/* 801A5458 001A23B8 81 9F 00 00 */ lwz r12, 0(r31) +/* 801A545C 001A23BC 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801A5460 001A23C0 7F E3 FB 78 */ mr r3, r31 +/* 801A5464 001A23C4 C0 22 A7 5C */ lfs f1, lbl_805AC47C@sda21(r2) +/* 801A5468 001A23C8 81 8C 00 90 */ lwz r12, 0x90(r12) +/* 801A546C 001A23CC 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 801A5470 001A23D0 7D 89 03 A6 */ mtctr r12 +/* 801A5474 001A23D4 4E 80 04 21 */ bctrl +/* 801A5478 001A23D8 7F E3 FB 78 */ mr r3, r31 +/* 801A547C 001A23DC 7F 44 D3 78 */ mr r4, r26 +/* 801A5480 001A23E0 4B FF A7 C1 */ bl sub_8019fc40 +/* 801A5484 001A23E4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A5488 001A23E8 41 82 00 24 */ beq lbl_801A54AC +/* 801A548C 001A23EC C0 02 A7 E8 */ lfs f0, lbl_805AC508@sda21(r2) +/* 801A5490 001A23F0 D0 1F 09 7C */ stfs f0, 0x97c(r31) +/* 801A5494 001A23F4 C0 5B 00 58 */ lfs f2, 0x58(r27) +/* 801A5498 001A23F8 C0 3B 00 48 */ lfs f1, 0x48(r27) +/* 801A549C 001A23FC C0 1B 00 38 */ lfs f0, 0x38(r27) +/* 801A54A0 001A2400 D0 1F 09 80 */ stfs f0, 0x980(r31) +/* 801A54A4 001A2404 D0 3F 09 84 */ stfs f1, 0x984(r31) +/* 801A54A8 001A2408 D0 5F 09 88 */ stfs f2, 0x988(r31) +lbl_801A54AC: +/* 801A54AC 001A240C 88 1F 0B 28 */ lbz r0, 0xb28(r31) +/* 801A54B0 001A2410 38 60 00 01 */ li r3, 1 +/* 801A54B4 001A2414 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801A54B8 001A2418 C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 801A54BC 001A241C 98 1F 0B 28 */ stb r0, 0xb28(r31) +/* 801A54C0 001A2420 7F C3 F3 78 */ mr r3, r30 +/* 801A54C4 001A2424 38 81 00 B4 */ addi r4, r1, 0xb4 +/* 801A54C8 001A2428 38 A0 00 00 */ li r5, 0 +/* 801A54CC 001A242C D0 1F 09 68 */ stfs f0, 0x968(r31) +/* 801A54D0 001A2430 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 801A54D4 001A2434 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 801A54D8 001A2438 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801A54DC 001A243C D0 01 00 B4 */ stfs f0, 0xb4(r1) +/* 801A54E0 001A2440 D0 21 00 B8 */ stfs f1, 0xb8(r1) +/* 801A54E4 001A2444 D0 41 00 BC */ stfs f2, 0xbc(r1) +/* 801A54E8 001A2448 4B EA 32 9D */ bl InformListeners__13CStateManagerFRC9CVector3f16EListenNoiseType +/* 801A54EC 001A244C 48 00 02 20 */ b lbl_801A570C +lbl_801A54F0: +/* 801A54F0 001A2450 A0 1D 00 00 */ lhz r0, 0(r29) +/* 801A54F4 001A2454 7F E3 FB 78 */ mr r3, r31 +/* 801A54F8 001A2458 7F C4 F3 78 */ mr r4, r30 +/* 801A54FC 001A245C 38 A1 00 1C */ addi r5, r1, 0x1c +/* 801A5500 001A2460 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 801A5504 001A2464 4B FF 92 71 */ bl sub_8019e774 +/* 801A5508 001A2468 48 00 02 04 */ b lbl_801A570C +/* 801A550C 001A246C A0 7D 00 00 */ lhz r3, 0(r29) +/* 801A5510 001A2470 A0 1F 0A F6 */ lhz r0, 0xaf6(r31) +/* 801A5514 001A2474 7C 03 00 40 */ cmplw r3, r0 +/* 801A5518 001A2478 40 82 01 98 */ bne lbl_801A56B0 +/* 801A551C 001A247C 88 1F 0B 28 */ lbz r0, 0xb28(r31) +/* 801A5520 001A2480 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 801A5524 001A2484 40 82 01 8C */ bne lbl_801A56B0 +/* 801A5528 001A2488 B0 61 00 18 */ sth r3, 0x18(r1) +/* 801A552C 001A248C 7F C3 F3 78 */ mr r3, r30 +/* 801A5530 001A2490 38 81 00 18 */ addi r4, r1, 0x18 +/* 801A5534 001A2494 4B EA 70 41 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801A5538 001A2498 7C 64 1B 78 */ mr r4, r3 +/* 801A553C 001A249C 38 61 00 80 */ addi r3, r1, 0x80 +/* 801A5540 001A24A0 4B F0 9E 0D */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801A5544 001A24A4 80 83 00 04 */ lwz r4, 4(r3) +/* 801A5548 001A24A8 28 04 00 00 */ cmplwi r4, 0 +/* 801A554C 001A24AC 41 82 01 64 */ beq lbl_801A56B0 +/* 801A5550 001A24B0 38 61 00 14 */ addi r3, r1, 0x14 +/* 801A5554 001A24B4 48 00 36 39 */ bl GetLastTouchedObject__15CCollisionActorCFv +/* 801A5558 001A24B8 A0 01 00 14 */ lhz r0, 0x14(r1) +/* 801A555C 001A24BC 7F C3 F3 78 */ mr r3, r30 +/* 801A5560 001A24C0 38 81 00 10 */ addi r4, r1, 0x10 +/* 801A5564 001A24C4 B0 01 00 40 */ sth r0, 0x40(r1) +/* 801A5568 001A24C8 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801A556C 001A24CC 4B EA 70 39 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801A5570 001A24D0 7C 64 1B 78 */ mr r4, r3 +/* 801A5574 001A24D4 38 61 00 58 */ addi r3, r1, 0x58 +/* 801A5578 001A24D8 4B F0 03 21 */ bl "__ct__20TCastToPtr<7CWeapon>FP7CEntity" +/* 801A557C 001A24DC 80 63 00 04 */ lwz r3, 4(r3) +/* 801A5580 001A24E0 28 03 00 00 */ cmplwi r3, 0 +/* 801A5584 001A24E4 41 82 01 2C */ beq lbl_801A56B0 +/* 801A5588 001A24E8 C0 23 01 34 */ lfs f1, 0x134(r3) +/* 801A558C 001A24EC 7F E3 FB 78 */ mr r3, r31 +/* 801A5590 001A24F0 7F C4 F3 78 */ mr r4, r30 +/* 801A5594 001A24F4 4B FF 96 5D */ bl sub_8019ebf0 +/* 801A5598 001A24F8 80 7F 0A EC */ lwz r3, 0xaec(r31) +/* 801A559C 001A24FC 28 03 00 00 */ cmplwi r3, 0 +/* 801A55A0 001A2500 41 82 00 1C */ beq lbl_801A55BC +/* 801A55A4 001A2504 81 83 00 00 */ lwz r12, 0(r3) +/* 801A55A8 001A2508 81 8C 00 58 */ lwz r12, 0x58(r12) +/* 801A55AC 001A250C 7D 89 03 A6 */ mtctr r12 +/* 801A55B0 001A2510 4E 80 04 21 */ bctrl +/* 801A55B4 001A2514 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A55B8 001A2518 41 82 00 F8 */ beq lbl_801A56B0 +lbl_801A55BC: +/* 801A55BC 001A251C 3C 60 80 3D */ lis r3, lbl_803D13D8@ha +/* 801A55C0 001A2520 3B 60 00 00 */ li r27, 0 +/* 801A55C4 001A2524 38 83 13 D8 */ addi r4, r3, lbl_803D13D8@l +/* 801A55C8 001A2528 38 60 03 40 */ li r3, 0x340 +/* 801A55CC 001A252C 38 84 00 8C */ addi r4, r4, 0x8c +/* 801A55D0 001A2530 38 A0 00 00 */ li r5, 0 +/* 801A55D4 001A2534 48 17 02 99 */ bl __nw__FUlPCcPCc +/* 801A55D8 001A2538 7C 7A 1B 79 */ or. r26, r3, r3 +/* 801A55DC 001A253C 41 82 00 2C */ beq lbl_801A5608 +/* 801A55E0 001A2540 38 61 00 78 */ addi r3, r1, 0x78 +/* 801A55E4 001A2544 38 9F 0A DC */ addi r4, r31, 0xadc +/* 801A55E8 001A2548 48 19 B8 C1 */ bl __ct__6CTokenFRC6CToken +/* 801A55EC 001A254C 7F 43 D3 78 */ mr r3, r26 +/* 801A55F0 001A2550 38 81 00 78 */ addi r4, r1, 0x78 +/* 801A55F4 001A2554 3B 60 00 01 */ li r27, 1 +/* 801A55F8 001A2558 38 A0 00 00 */ li r5, 0 +/* 801A55FC 001A255C 38 C0 00 01 */ li r6, 1 +/* 801A5600 001A2560 48 17 9D E1 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 801A5604 001A2564 7C 7A 1B 78 */ mr r26, r3 +lbl_801A5608: +/* 801A5608 001A2568 7C 1A 00 D0 */ neg r0, r26 +/* 801A560C 001A256C 38 61 00 70 */ addi r3, r1, 0x70 +/* 801A5610 001A2570 7C 04 D3 78 */ or r4, r0, r26 +/* 801A5614 001A2574 38 1F 0A E8 */ addi r0, r31, 0xae8 +/* 801A5618 001A2578 54 84 0F FE */ srwi r4, r4, 0x1f +/* 801A561C 001A257C 93 41 00 74 */ stw r26, 0x74(r1) +/* 801A5620 001A2580 7C 03 00 40 */ cmplw r3, r0 +/* 801A5624 001A2584 98 81 00 70 */ stb r4, 0x70(r1) +/* 801A5628 001A2588 41 82 00 48 */ beq lbl_801A5670 +/* 801A562C 001A258C 88 1F 0A E8 */ lbz r0, 0xae8(r31) +/* 801A5630 001A2590 28 00 00 00 */ cmplwi r0, 0 +/* 801A5634 001A2594 41 82 00 24 */ beq lbl_801A5658 +/* 801A5638 001A2598 80 7F 0A EC */ lwz r3, 0xaec(r31) +/* 801A563C 001A259C 28 03 00 00 */ cmplwi r3, 0 +/* 801A5640 001A25A0 41 82 00 18 */ beq lbl_801A5658 +/* 801A5644 001A25A4 81 83 00 00 */ lwz r12, 0(r3) +/* 801A5648 001A25A8 38 80 00 01 */ li r4, 1 +/* 801A564C 001A25AC 81 8C 00 08 */ lwz r12, 8(r12) +/* 801A5650 001A25B0 7D 89 03 A6 */ mtctr r12 +/* 801A5654 001A25B4 4E 80 04 21 */ bctrl +lbl_801A5658: +/* 801A5658 001A25B8 88 61 00 70 */ lbz r3, 0x70(r1) +/* 801A565C 001A25BC 38 00 00 00 */ li r0, 0 +/* 801A5660 001A25C0 98 7F 0A E8 */ stb r3, 0xae8(r31) +/* 801A5664 001A25C4 80 61 00 74 */ lwz r3, 0x74(r1) +/* 801A5668 001A25C8 90 7F 0A EC */ stw r3, 0xaec(r31) +/* 801A566C 001A25CC 98 01 00 70 */ stb r0, 0x70(r1) +lbl_801A5670: +/* 801A5670 001A25D0 88 01 00 70 */ lbz r0, 0x70(r1) +/* 801A5674 001A25D4 28 00 00 00 */ cmplwi r0, 0 +/* 801A5678 001A25D8 41 82 00 24 */ beq lbl_801A569C +/* 801A567C 001A25DC 80 61 00 74 */ lwz r3, 0x74(r1) +/* 801A5680 001A25E0 28 03 00 00 */ cmplwi r3, 0 +/* 801A5684 001A25E4 41 82 00 18 */ beq lbl_801A569C +/* 801A5688 001A25E8 81 83 00 00 */ lwz r12, 0(r3) +/* 801A568C 001A25EC 38 80 00 01 */ li r4, 1 +/* 801A5690 001A25F0 81 8C 00 08 */ lwz r12, 8(r12) +/* 801A5694 001A25F4 7D 89 03 A6 */ mtctr r12 +/* 801A5698 001A25F8 4E 80 04 21 */ bctrl +lbl_801A569C: +/* 801A569C 001A25FC 7F 60 07 75 */ extsb. r0, r27 +/* 801A56A0 001A2600 41 82 00 10 */ beq lbl_801A56B0 +/* 801A56A4 001A2604 38 61 00 78 */ addi r3, r1, 0x78 +/* 801A56A8 001A2608 38 80 00 00 */ li r4, 0 +/* 801A56AC 001A260C 48 19 B7 95 */ bl __dt__6CTokenFv +lbl_801A56B0: +/* 801A56B0 001A2610 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 801A56B4 001A2614 7F C3 F3 78 */ mr r3, r30 +/* 801A56B8 001A2618 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 801A56BC 001A261C 38 81 00 A8 */ addi r4, r1, 0xa8 +/* 801A56C0 001A2620 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801A56C4 001A2624 38 A0 00 00 */ li r5, 0 +/* 801A56C8 001A2628 D0 01 00 A8 */ stfs f0, 0xa8(r1) +/* 801A56CC 001A262C D0 21 00 AC */ stfs f1, 0xac(r1) +/* 801A56D0 001A2630 D0 41 00 B0 */ stfs f2, 0xb0(r1) +/* 801A56D4 001A2634 4B EA 30 B1 */ bl InformListeners__13CStateManagerFRC9CVector3f16EListenNoiseType +/* 801A56D8 001A2638 88 1F 0B 28 */ lbz r0, 0xb28(r31) +/* 801A56DC 001A263C 38 60 00 01 */ li r3, 1 +/* 801A56E0 001A2640 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801A56E4 001A2644 C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 801A56E8 001A2648 98 1F 0B 28 */ stb r0, 0xb28(r31) +/* 801A56EC 001A264C D0 1F 09 68 */ stfs f0, 0x968(r31) +/* 801A56F0 001A2650 48 00 00 1C */ b lbl_801A570C +/* 801A56F4 001A2654 80 7F 0A 2C */ lwz r3, 0xa2c(r31) +/* 801A56F8 001A2658 28 03 00 00 */ cmplwi r3, 0 +/* 801A56FC 001A265C 41 82 00 10 */ beq lbl_801A570C +/* 801A5700 001A2660 7F C4 F3 78 */ mr r4, r30 +/* 801A5704 001A2664 38 A0 00 00 */ li r5, 0 +/* 801A5708 001A2668 48 00 17 B9 */ bl SetMovable__22CCollisionActorManagerFb +lbl_801A570C: +/* 801A570C 001A266C A0 1D 00 00 */ lhz r0, 0(r29) +/* 801A5710 001A2670 7F E3 FB 78 */ mr r3, r31 +/* 801A5714 001A2674 7F 84 E3 78 */ mr r4, r28 +/* 801A5718 001A2678 7F C6 F3 78 */ mr r6, r30 +/* 801A571C 001A267C B0 01 00 0C */ sth r0, 0xc(r1) +/* 801A5720 001A2680 38 A1 00 0C */ addi r5, r1, 0xc +/* 801A5724 001A2684 4B ED 74 55 */ bl AcceptScriptMsg__10CPatternedF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 801A5728 001A2688 E3 E1 00 F8 */ psq_l f31, 248(r1), 0, qr0 +/* 801A572C 001A268C CB E1 00 F0 */ lfd f31, 0xf0(r1) +/* 801A5730 001A2690 BB 41 00 D8 */ lmw r26, 0xd8(r1) +/* 801A5734 001A2694 80 01 01 04 */ lwz r0, 0x104(r1) +/* 801A5738 001A2698 7C 08 03 A6 */ mtlr r0 +/* 801A573C 001A269C 38 21 01 00 */ addi r1, r1, 0x100 +/* 801A5740 001A26A0 4E 80 00 20 */ blr + +.global Think__12CIceSheegothFfR13CStateManager +Think__12CIceSheegothFfR13CStateManager: +/* 801A5744 001A26A4 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801A5748 001A26A8 7C 08 02 A6 */ mflr r0 +/* 801A574C 001A26AC 90 01 00 54 */ stw r0, 0x54(r1) +/* 801A5750 001A26B0 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 801A5754 001A26B4 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 801A5758 001A26B8 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801A575C 001A26BC 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801A5760 001A26C0 93 A1 00 34 */ stw r29, 0x34(r1) +/* 801A5764 001A26C4 88 03 00 30 */ lbz r0, 0x30(r3) +/* 801A5768 001A26C8 FF E0 08 90 */ fmr f31, f1 +/* 801A576C 001A26CC 7C 7E 1B 78 */ mr r30, r3 +/* 801A5770 001A26D0 7C 9F 23 78 */ mr r31, r4 +/* 801A5774 001A26D4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801A5778 001A26D8 41 82 02 0C */ beq lbl_801A5984 +/* 801A577C 001A26DC 4B ED 43 9D */ bl Think__10CPatternedFfR13CStateManager +/* 801A5780 001A26E0 7F C3 F3 78 */ mr r3, r30 +/* 801A5784 001A26E4 7F E4 FB 78 */ mr r4, r31 +/* 801A5788 001A26E8 4B FF B9 39 */ bl sub_801a10c0 +/* 801A578C 001A26EC FC 20 F8 90 */ fmr f1, f31 +/* 801A5790 001A26F0 7F C3 F3 78 */ mr r3, r30 +/* 801A5794 001A26F4 4B FF B3 F9 */ bl sub_801a0b8c +/* 801A5798 001A26F8 7F C3 F3 78 */ mr r3, r30 +/* 801A579C 001A26FC 7F E4 FB 78 */ mr r4, r31 +/* 801A57A0 001A2700 4B FF 8F 51 */ bl sub_8019e6f0 +/* 801A57A4 001A2704 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 801A57A8 001A2708 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801A57AC 001A270C 40 82 00 64 */ bne lbl_801A5810 +/* 801A57B0 001A2710 C0 5E 06 DC */ lfs f2, 0x6dc(r30) +/* 801A57B4 001A2714 C0 3E 09 74 */ lfs f1, 0x974(r30) +/* 801A57B8 001A2718 C0 0D 8F FC */ lfs f0, lbl_805A7BBC@sda21(r13) +/* 801A57BC 001A271C EC 3F 08 BC */ fnmsubs f1, f31, f2, f1 +/* 801A57C0 001A2720 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801A57C4 001A2724 D0 21 00 08 */ stfs f1, 8(r1) +/* 801A57C8 001A2728 40 80 00 0C */ bge lbl_801A57D4 +/* 801A57CC 001A272C 38 61 00 08 */ addi r3, r1, 8 +/* 801A57D0 001A2730 48 00 00 08 */ b lbl_801A57D8 +lbl_801A57D4: +/* 801A57D4 001A2734 38 6D 8F FC */ addi r3, r13, lbl_805A7BBC@sda21 +lbl_801A57D8: +/* 801A57D8 001A2738 C0 03 00 00 */ lfs f0, 0(r3) +/* 801A57DC 001A273C D0 1E 09 74 */ stfs f0, 0x974(r30) +/* 801A57E0 001A2740 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801A57E4 001A2744 38 63 02 A4 */ addi r3, r3, 0x2a4 +/* 801A57E8 001A2748 4B F8 E8 91 */ bl GetCurrentState__14CBodyStateInfoCFv +/* 801A57EC 001A274C 81 83 00 00 */ lwz r12, 0(r3) +/* 801A57F0 001A2750 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 801A57F4 001A2754 7D 89 03 A6 */ mtctr r12 +/* 801A57F8 001A2758 4E 80 04 21 */ bctrl +/* 801A57FC 001A275C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801A5800 001A2760 41 82 00 10 */ beq lbl_801A5810 +/* 801A5804 001A2764 7F C3 F3 78 */ mr r3, r30 +/* 801A5808 001A2768 7F E4 FB 78 */ mr r4, r31 +/* 801A580C 001A276C 4B FF 93 45 */ bl sub_8019eb50 +lbl_801A5810: +/* 801A5810 001A2770 C0 3E 09 6C */ lfs f1, 0x96c(r30) +/* 801A5814 001A2774 C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 801A5818 001A2778 EC 21 F8 28 */ fsubs f1, f1, f31 +/* 801A581C 001A277C D0 3E 09 6C */ stfs f1, 0x96c(r30) +/* 801A5820 001A2780 C0 3E 09 6C */ lfs f1, 0x96c(r30) +/* 801A5824 001A2784 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801A5828 001A2788 40 80 00 A0 */ bge lbl_801A58C8 +/* 801A582C 001A278C 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801A5830 001A2790 C0 02 A7 60 */ lfs f0, lbl_805AC480@sda21(r2) +/* 801A5834 001A2794 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801A5838 001A2798 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801A583C 001A279C 3C 80 80 3E */ lis r4, lbl_803E10C8@ha +/* 801A5840 001A27A0 90 01 00 18 */ stw r0, 0x18(r1) +/* 801A5844 001A27A4 38 C4 10 C8 */ addi r6, r4, lbl_803E10C8@l +/* 801A5848 001A27A8 38 80 00 1A */ li r4, 0x1a +/* 801A584C 001A27AC 38 A0 00 04 */ li r5, 4 +/* 801A5850 001A27B0 38 00 00 00 */ li r0, 0 +/* 801A5854 001A27B4 3B A3 00 04 */ addi r29, r3, 4 +/* 801A5858 001A27B8 90 81 00 1C */ stw r4, 0x1c(r1) +/* 801A585C 001A27BC 7F A3 EB 78 */ mr r3, r29 +/* 801A5860 001A27C0 38 80 00 1A */ li r4, 0x1a +/* 801A5864 001A27C4 90 C1 00 18 */ stw r6, 0x18(r1) +/* 801A5868 001A27C8 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801A586C 001A27CC 90 A1 00 24 */ stw r5, 0x24(r1) +/* 801A5870 001A27D0 98 01 00 28 */ stb r0, 0x28(r1) +/* 801A5874 001A27D4 4B F8 BB C5 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801A5878 001A27D8 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 801A587C 001A27DC 3C 60 80 3E */ lis r3, lbl_803E10C8@ha +/* 801A5880 001A27E0 38 83 10 C8 */ addi r4, r3, lbl_803E10C8@l +/* 801A5884 001A27E4 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801A5888 001A27E8 90 1D 02 88 */ stw r0, 0x288(r29) +/* 801A588C 001A27EC 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801A5890 001A27F0 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 801A5894 001A27F4 80 A1 00 24 */ lwz r5, 0x24(r1) +/* 801A5898 001A27F8 D0 1D 02 8C */ stfs f0, 0x28c(r29) +/* 801A589C 001A27FC 88 61 00 28 */ lbz r3, 0x28(r1) +/* 801A58A0 001A2800 90 BD 02 90 */ stw r5, 0x290(r29) +/* 801A58A4 001A2804 98 7D 02 94 */ stb r3, 0x294(r29) +/* 801A58A8 001A2808 90 81 00 18 */ stw r4, 0x18(r1) +/* 801A58AC 001A280C 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 801A58B0 001A2810 90 01 00 18 */ stw r0, 0x18(r1) +/* 801A58B4 001A2814 48 16 CC 29 */ bl Float__9CRandom16Fv +/* 801A58B8 001A2818 C0 42 A7 6C */ lfs f2, lbl_805AC48C@sda21(r2) +/* 801A58BC 001A281C C0 02 A7 74 */ lfs f0, lbl_805AC494@sda21(r2) +/* 801A58C0 001A2820 EC 02 00 7A */ fmadds f0, f2, f1, f0 +/* 801A58C4 001A2824 D0 1E 09 6C */ stfs f0, 0x96c(r30) +lbl_801A58C8: +/* 801A58C8 001A2828 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 801A58CC 001A282C 80 63 00 10 */ lwz r3, 0x10(r3) +/* 801A58D0 001A2830 4B E8 71 35 */ bl PreRender__9CAnimDataFv +/* 801A58D4 001A2834 FC 20 F8 90 */ fmr f1, f31 +/* 801A58D8 001A2838 38 7E 09 F4 */ addi r3, r30, 0x9f4 +/* 801A58DC 001A283C 4B FD 00 CD */ bl Update__13CBoneTrackingFf +/* 801A58E0 001A2840 80 BE 00 64 */ lwz r5, 0x64(r30) +/* 801A58E4 001A2844 7F E4 FB 78 */ mr r4, r31 +/* 801A58E8 001A2848 81 1E 04 50 */ lwz r8, 0x450(r30) +/* 801A58EC 001A284C 38 7E 09 F4 */ addi r3, r30, 0x9f4 +/* 801A58F0 001A2850 C0 05 00 00 */ lfs f0, 0(r5) +/* 801A58F4 001A2854 38 DE 00 34 */ addi r6, r30, 0x34 +/* 801A58F8 001A2858 38 E1 00 0C */ addi r7, r1, 0xc +/* 801A58FC 001A285C D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801A5900 001A2860 C0 05 00 04 */ lfs f0, 4(r5) +/* 801A5904 001A2864 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801A5908 001A2868 C0 05 00 08 */ lfs f0, 8(r5) +/* 801A590C 001A286C D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801A5910 001A2870 80 BE 00 64 */ lwz r5, 0x64(r30) +/* 801A5914 001A2874 80 A5 00 10 */ lwz r5, 0x10(r5) +/* 801A5918 001A2878 4B FC FF F9 */ bl PreRender__13CBoneTrackingFRC13CStateManagerR9CAnimDataRC12CTransform4fRC9CVector3fRC15CBodyController +/* 801A591C 001A287C FC 20 F8 90 */ fmr f1, f31 +/* 801A5920 001A2880 80 7E 0A 2C */ lwz r3, 0xa2c(r30) +/* 801A5924 001A2884 7F E4 FB 78 */ mr r4, r31 +/* 801A5928 001A2888 38 A0 00 00 */ li r5, 0 +/* 801A592C 001A288C 48 00 1B 25 */ bl Update__22CCollisionActorManagerCFfR13CStateManagerQ222CCollisionActorManager14EUpdateOptions +/* 801A5930 001A2890 FC 20 F8 90 */ fmr f1, f31 +/* 801A5934 001A2894 7F C3 F3 78 */ mr r3, r30 +/* 801A5938 001A2898 7F E4 FB 78 */ mr r4, r31 +/* 801A593C 001A289C 4B FF 8A 25 */ bl sub_8019e360 +/* 801A5940 001A28A0 7F C3 F3 78 */ mr r3, r30 +/* 801A5944 001A28A4 7F E4 FB 78 */ mr r4, r31 +/* 801A5948 001A28A8 4B FF 9D 39 */ bl sub_8019f680 +/* 801A594C 001A28AC FC 20 F8 90 */ fmr f1, f31 +/* 801A5950 001A28B0 7F C3 F3 78 */ mr r3, r30 +/* 801A5954 001A28B4 4B FF 9C 79 */ bl sub_8019f5cc +/* 801A5958 001A28B8 FC 20 F8 90 */ fmr f1, f31 +/* 801A595C 001A28BC 7F C3 F3 78 */ mr r3, r30 +/* 801A5960 001A28C0 7F E4 FB 78 */ mr r4, r31 +/* 801A5964 001A28C4 4B FF 94 BD */ bl sub_8019ee20 +/* 801A5968 001A28C8 C0 3E 04 28 */ lfs f1, 0x428(r30) +/* 801A596C 001A28CC 7F C3 F3 78 */ mr r3, r30 +/* 801A5970 001A28D0 C0 02 A7 5C */ lfs f0, lbl_805AC47C@sda21(r2) +/* 801A5974 001A28D4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801A5978 001A28D8 7C 00 00 26 */ mfcr r0 +/* 801A597C 001A28DC 54 04 17 FE */ rlwinm r4, r0, 2, 0x1f, 0x1f +/* 801A5980 001A28E0 4B ED 1E D5 */ bl UpdateThermalFrozenState__10CPatternedFb +lbl_801A5984: +/* 801A5984 001A28E4 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 801A5988 001A28E8 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801A598C 001A28EC CB E1 00 40 */ lfd f31, 0x40(r1) +/* 801A5990 001A28F0 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801A5994 001A28F4 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801A5998 001A28F8 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 801A599C 001A28FC 7C 08 03 A6 */ mtlr r0 +/* 801A59A0 001A2900 38 21 00 50 */ addi r1, r1, 0x50 +/* 801A59A4 001A2904 4E 80 00 20 */ blr + +.global Accept__12CIceSheegothFR8IVisitor +Accept__12CIceSheegothFR8IVisitor: +/* 801A59A8 001A2908 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801A59AC 001A290C 7C 08 02 A6 */ mflr r0 +/* 801A59B0 001A2910 90 01 00 14 */ stw r0, 0x14(r1) +/* 801A59B4 001A2914 7C 60 1B 78 */ mr r0, r3 +/* 801A59B8 001A2918 7C 83 23 78 */ mr r3, r4 +/* 801A59BC 001A291C 81 84 00 00 */ lwz r12, 0(r4) +/* 801A59C0 001A2920 7C 04 03 78 */ mr r4, r0 +/* 801A59C4 001A2924 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801A59C8 001A2928 7D 89 03 A6 */ mtctr r12 +/* 801A59CC 001A292C 4E 80 04 21 */ bctrl +/* 801A59D0 001A2930 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801A59D4 001A2934 7C 08 03 A6 */ mtlr r0 +/* 801A59D8 001A2938 38 21 00 10 */ addi r1, r1, 0x10 +/* 801A59DC 001A293C 4E 80 00 20 */ blr + +.global __dt__12CIceSheegothFv +__dt__12CIceSheegothFv: +/* 801A59E0 001A2940 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801A59E4 001A2944 7C 08 02 A6 */ mflr r0 +/* 801A59E8 001A2948 90 01 00 14 */ stw r0, 0x14(r1) +/* 801A59EC 001A294C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801A59F0 001A2950 7C 9F 23 78 */ mr r31, r4 +/* 801A59F4 001A2954 93 C1 00 08 */ stw r30, 8(r1) +/* 801A59F8 001A2958 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801A59FC 001A295C 41 82 04 24 */ beq lbl_801A5E20 +/* 801A5A00 001A2960 3C 60 80 3E */ lis r3, lbl_803E4728@ha +/* 801A5A04 001A2964 34 1E 0B 1C */ addic. r0, r30, 0xb1c +/* 801A5A08 001A2968 38 03 47 28 */ addi r0, r3, lbl_803E4728@l +/* 801A5A0C 001A296C 90 1E 00 00 */ stw r0, 0(r30) +/* 801A5A10 001A2970 41 82 00 58 */ beq lbl_801A5A68 +/* 801A5A14 001A2974 80 BE 0B 1C */ lwz r5, 0xb1c(r30) +/* 801A5A18 001A2978 38 60 00 00 */ li r3, 0 +/* 801A5A1C 001A297C 2C 05 00 00 */ cmpwi r5, 0 +/* 801A5A20 001A2980 40 81 00 40 */ ble lbl_801A5A60 +/* 801A5A24 001A2984 2C 05 00 08 */ cmpwi r5, 8 +/* 801A5A28 001A2988 38 85 FF F8 */ addi r4, r5, -8 +/* 801A5A2C 001A298C 40 81 00 20 */ ble lbl_801A5A4C +/* 801A5A30 001A2990 38 04 00 07 */ addi r0, r4, 7 +/* 801A5A34 001A2994 54 00 E8 FE */ srwi r0, r0, 3 +/* 801A5A38 001A2998 7C 09 03 A6 */ mtctr r0 +/* 801A5A3C 001A299C 2C 04 00 00 */ cmpwi r4, 0 +/* 801A5A40 001A29A0 40 81 00 0C */ ble lbl_801A5A4C +lbl_801A5A44: +/* 801A5A44 001A29A4 38 63 00 08 */ addi r3, r3, 8 +/* 801A5A48 001A29A8 42 00 FF FC */ bdnz lbl_801A5A44 +lbl_801A5A4C: +/* 801A5A4C 001A29AC 7C 03 28 50 */ subf r0, r3, r5 +/* 801A5A50 001A29B0 7C 09 03 A6 */ mtctr r0 +/* 801A5A54 001A29B4 7C 03 28 00 */ cmpw r3, r5 +/* 801A5A58 001A29B8 40 80 00 08 */ bge lbl_801A5A60 +lbl_801A5A5C: +/* 801A5A5C 001A29BC 42 00 00 00 */ bdnz lbl_801A5A5C +lbl_801A5A60: +/* 801A5A60 001A29C0 38 00 00 00 */ li r0, 0 +/* 801A5A64 001A29C4 90 1E 0B 1C */ stw r0, 0xb1c(r30) +lbl_801A5A68: +/* 801A5A68 001A29C8 34 1E 0B 04 */ addic. r0, r30, 0xb04 +/* 801A5A6C 001A29CC 41 82 00 58 */ beq lbl_801A5AC4 +/* 801A5A70 001A29D0 80 BE 0B 04 */ lwz r5, 0xb04(r30) +/* 801A5A74 001A29D4 38 60 00 00 */ li r3, 0 +/* 801A5A78 001A29D8 2C 05 00 00 */ cmpwi r5, 0 +/* 801A5A7C 001A29DC 40 81 00 40 */ ble lbl_801A5ABC +/* 801A5A80 001A29E0 2C 05 00 08 */ cmpwi r5, 8 +/* 801A5A84 001A29E4 38 85 FF F8 */ addi r4, r5, -8 +/* 801A5A88 001A29E8 40 81 00 20 */ ble lbl_801A5AA8 +/* 801A5A8C 001A29EC 38 04 00 07 */ addi r0, r4, 7 +/* 801A5A90 001A29F0 54 00 E8 FE */ srwi r0, r0, 3 +/* 801A5A94 001A29F4 7C 09 03 A6 */ mtctr r0 +/* 801A5A98 001A29F8 2C 04 00 00 */ cmpwi r4, 0 +/* 801A5A9C 001A29FC 40 81 00 0C */ ble lbl_801A5AA8 +lbl_801A5AA0: +/* 801A5AA0 001A2A00 38 63 00 08 */ addi r3, r3, 8 +/* 801A5AA4 001A2A04 42 00 FF FC */ bdnz lbl_801A5AA0 +lbl_801A5AA8: +/* 801A5AA8 001A2A08 7C 03 28 50 */ subf r0, r3, r5 +/* 801A5AAC 001A2A0C 7C 09 03 A6 */ mtctr r0 +/* 801A5AB0 001A2A10 7C 03 28 00 */ cmpw r3, r5 +/* 801A5AB4 001A2A14 40 80 00 08 */ bge lbl_801A5ABC +lbl_801A5AB8: +/* 801A5AB8 001A2A18 42 00 00 00 */ bdnz lbl_801A5AB8 +lbl_801A5ABC: +/* 801A5ABC 001A2A1C 38 00 00 00 */ li r0, 0 +/* 801A5AC0 001A2A20 90 1E 0B 04 */ stw r0, 0xb04(r30) +lbl_801A5AC4: +/* 801A5AC4 001A2A24 34 1E 0A FC */ addic. r0, r30, 0xafc +/* 801A5AC8 001A2A28 41 82 00 58 */ beq lbl_801A5B20 +/* 801A5ACC 001A2A2C 80 BE 0A FC */ lwz r5, 0xafc(r30) +/* 801A5AD0 001A2A30 38 60 00 00 */ li r3, 0 +/* 801A5AD4 001A2A34 2C 05 00 00 */ cmpwi r5, 0 +/* 801A5AD8 001A2A38 40 81 00 40 */ ble lbl_801A5B18 +/* 801A5ADC 001A2A3C 2C 05 00 08 */ cmpwi r5, 8 +/* 801A5AE0 001A2A40 38 85 FF F8 */ addi r4, r5, -8 +/* 801A5AE4 001A2A44 40 81 00 20 */ ble lbl_801A5B04 +/* 801A5AE8 001A2A48 38 04 00 07 */ addi r0, r4, 7 +/* 801A5AEC 001A2A4C 54 00 E8 FE */ srwi r0, r0, 3 +/* 801A5AF0 001A2A50 7C 09 03 A6 */ mtctr r0 +/* 801A5AF4 001A2A54 2C 04 00 00 */ cmpwi r4, 0 +/* 801A5AF8 001A2A58 40 81 00 0C */ ble lbl_801A5B04 +lbl_801A5AFC: +/* 801A5AFC 001A2A5C 38 63 00 08 */ addi r3, r3, 8 +/* 801A5B00 001A2A60 42 00 FF FC */ bdnz lbl_801A5AFC +lbl_801A5B04: +/* 801A5B04 001A2A64 7C 03 28 50 */ subf r0, r3, r5 +/* 801A5B08 001A2A68 7C 09 03 A6 */ mtctr r0 +/* 801A5B0C 001A2A6C 7C 03 28 00 */ cmpw r3, r5 +/* 801A5B10 001A2A70 40 80 00 08 */ bge lbl_801A5B18 +lbl_801A5B14: +/* 801A5B14 001A2A74 42 00 00 00 */ bdnz lbl_801A5B14 +lbl_801A5B18: +/* 801A5B18 001A2A78 38 00 00 00 */ li r0, 0 +/* 801A5B1C 001A2A7C 90 1E 0A FC */ stw r0, 0xafc(r30) +lbl_801A5B20: +/* 801A5B20 001A2A80 34 1E 0A E8 */ addic. r0, r30, 0xae8 +/* 801A5B24 001A2A84 41 82 00 30 */ beq lbl_801A5B54 +/* 801A5B28 001A2A88 88 1E 0A E8 */ lbz r0, 0xae8(r30) +/* 801A5B2C 001A2A8C 28 00 00 00 */ cmplwi r0, 0 +/* 801A5B30 001A2A90 41 82 00 24 */ beq lbl_801A5B54 +/* 801A5B34 001A2A94 80 7E 0A EC */ lwz r3, 0xaec(r30) +/* 801A5B38 001A2A98 28 03 00 00 */ cmplwi r3, 0 +/* 801A5B3C 001A2A9C 41 82 00 18 */ beq lbl_801A5B54 +/* 801A5B40 001A2AA0 81 83 00 00 */ lwz r12, 0(r3) +/* 801A5B44 001A2AA4 38 80 00 01 */ li r4, 1 +/* 801A5B48 001A2AA8 81 8C 00 08 */ lwz r12, 8(r12) +/* 801A5B4C 001A2AAC 7D 89 03 A6 */ mtctr r12 +/* 801A5B50 001A2AB0 4E 80 04 21 */ bctrl +lbl_801A5B54: +/* 801A5B54 001A2AB4 34 1E 0A DC */ addic. r0, r30, 0xadc +/* 801A5B58 001A2AB8 41 82 00 18 */ beq lbl_801A5B70 +/* 801A5B5C 001A2ABC 34 1E 0A DC */ addic. r0, r30, 0xadc +/* 801A5B60 001A2AC0 41 82 00 10 */ beq lbl_801A5B70 +/* 801A5B64 001A2AC4 38 7E 0A DC */ addi r3, r30, 0xadc +/* 801A5B68 001A2AC8 38 80 00 00 */ li r4, 0 +/* 801A5B6C 001A2ACC 48 19 B2 D5 */ bl __dt__6CTokenFv +lbl_801A5B70: +/* 801A5B70 001A2AD0 34 1E 0A D4 */ addic. r0, r30, 0xad4 +/* 801A5B74 001A2AD4 41 82 00 30 */ beq lbl_801A5BA4 +/* 801A5B78 001A2AD8 88 1E 0A D4 */ lbz r0, 0xad4(r30) +/* 801A5B7C 001A2ADC 28 00 00 00 */ cmplwi r0, 0 +/* 801A5B80 001A2AE0 41 82 00 24 */ beq lbl_801A5BA4 +/* 801A5B84 001A2AE4 80 7E 0A D8 */ lwz r3, 0xad8(r30) +/* 801A5B88 001A2AE8 28 03 00 00 */ cmplwi r3, 0 +/* 801A5B8C 001A2AEC 41 82 00 18 */ beq lbl_801A5BA4 +/* 801A5B90 001A2AF0 81 83 00 00 */ lwz r12, 0(r3) +/* 801A5B94 001A2AF4 38 80 00 01 */ li r4, 1 +/* 801A5B98 001A2AF8 81 8C 00 08 */ lwz r12, 8(r12) +/* 801A5B9C 001A2AFC 7D 89 03 A6 */ mtctr r12 +/* 801A5BA0 001A2B00 4E 80 04 21 */ bctrl +lbl_801A5BA4: +/* 801A5BA4 001A2B04 34 1E 0A C8 */ addic. r0, r30, 0xac8 +/* 801A5BA8 001A2B08 41 82 00 18 */ beq lbl_801A5BC0 +/* 801A5BAC 001A2B0C 34 1E 0A C8 */ addic. r0, r30, 0xac8 +/* 801A5BB0 001A2B10 41 82 00 10 */ beq lbl_801A5BC0 +/* 801A5BB4 001A2B14 38 7E 0A C8 */ addi r3, r30, 0xac8 +/* 801A5BB8 001A2B18 38 80 00 00 */ li r4, 0 +/* 801A5BBC 001A2B1C 48 19 B2 85 */ bl __dt__6CTokenFv +lbl_801A5BC0: +/* 801A5BC0 001A2B20 34 1E 0A C0 */ addic. r0, r30, 0xac0 +/* 801A5BC4 001A2B24 41 82 00 30 */ beq lbl_801A5BF4 +/* 801A5BC8 001A2B28 88 1E 0A C0 */ lbz r0, 0xac0(r30) +/* 801A5BCC 001A2B2C 28 00 00 00 */ cmplwi r0, 0 +/* 801A5BD0 001A2B30 41 82 00 24 */ beq lbl_801A5BF4 +/* 801A5BD4 001A2B34 80 7E 0A C4 */ lwz r3, 0xac4(r30) +/* 801A5BD8 001A2B38 28 03 00 00 */ cmplwi r3, 0 +/* 801A5BDC 001A2B3C 41 82 00 18 */ beq lbl_801A5BF4 +/* 801A5BE0 001A2B40 81 83 00 00 */ lwz r12, 0(r3) +/* 801A5BE4 001A2B44 38 80 00 01 */ li r4, 1 +/* 801A5BE8 001A2B48 81 8C 00 08 */ lwz r12, 8(r12) +/* 801A5BEC 001A2B4C 7D 89 03 A6 */ mtctr r12 +/* 801A5BF0 001A2B50 4E 80 04 21 */ bctrl +lbl_801A5BF4: +/* 801A5BF4 001A2B54 34 1E 0A B4 */ addic. r0, r30, 0xab4 +/* 801A5BF8 001A2B58 41 82 00 18 */ beq lbl_801A5C10 +/* 801A5BFC 001A2B5C 34 1E 0A B4 */ addic. r0, r30, 0xab4 +/* 801A5C00 001A2B60 41 82 00 10 */ beq lbl_801A5C10 +/* 801A5C04 001A2B64 38 7E 0A B4 */ addi r3, r30, 0xab4 +/* 801A5C08 001A2B68 38 80 00 00 */ li r4, 0 +/* 801A5C0C 001A2B6C 48 19 B2 35 */ bl __dt__6CTokenFv +lbl_801A5C10: +/* 801A5C10 001A2B70 34 1E 0A AC */ addic. r0, r30, 0xaac +/* 801A5C14 001A2B74 41 82 00 30 */ beq lbl_801A5C44 +/* 801A5C18 001A2B78 88 1E 0A AC */ lbz r0, 0xaac(r30) +/* 801A5C1C 001A2B7C 28 00 00 00 */ cmplwi r0, 0 +/* 801A5C20 001A2B80 41 82 00 24 */ beq lbl_801A5C44 +/* 801A5C24 001A2B84 80 7E 0A B0 */ lwz r3, 0xab0(r30) +/* 801A5C28 001A2B88 28 03 00 00 */ cmplwi r3, 0 +/* 801A5C2C 001A2B8C 41 82 00 18 */ beq lbl_801A5C44 +/* 801A5C30 001A2B90 81 83 00 00 */ lwz r12, 0(r3) +/* 801A5C34 001A2B94 38 80 00 01 */ li r4, 1 +/* 801A5C38 001A2B98 81 8C 00 08 */ lwz r12, 8(r12) +/* 801A5C3C 001A2B9C 7D 89 03 A6 */ mtctr r12 +/* 801A5C40 001A2BA0 4E 80 04 21 */ bctrl +lbl_801A5C44: +/* 801A5C44 001A2BA4 34 1E 0A A0 */ addic. r0, r30, 0xaa0 +/* 801A5C48 001A2BA8 41 82 00 18 */ beq lbl_801A5C60 +/* 801A5C4C 001A2BAC 34 1E 0A A0 */ addic. r0, r30, 0xaa0 +/* 801A5C50 001A2BB0 41 82 00 10 */ beq lbl_801A5C60 +/* 801A5C54 001A2BB4 38 7E 0A A0 */ addi r3, r30, 0xaa0 +/* 801A5C58 001A2BB8 38 80 00 00 */ li r4, 0 +/* 801A5C5C 001A2BBC 48 19 B1 E5 */ bl __dt__6CTokenFv +lbl_801A5C60: +/* 801A5C60 001A2BC0 34 1E 0A 98 */ addic. r0, r30, 0xa98 +/* 801A5C64 001A2BC4 41 82 00 30 */ beq lbl_801A5C94 +/* 801A5C68 001A2BC8 88 1E 0A 98 */ lbz r0, 0xa98(r30) +/* 801A5C6C 001A2BCC 28 00 00 00 */ cmplwi r0, 0 +/* 801A5C70 001A2BD0 41 82 00 24 */ beq lbl_801A5C94 +/* 801A5C74 001A2BD4 80 7E 0A 9C */ lwz r3, 0xa9c(r30) +/* 801A5C78 001A2BD8 28 03 00 00 */ cmplwi r3, 0 +/* 801A5C7C 001A2BDC 41 82 00 18 */ beq lbl_801A5C94 +/* 801A5C80 001A2BE0 81 83 00 00 */ lwz r12, 0(r3) +/* 801A5C84 001A2BE4 38 80 00 01 */ li r4, 1 +/* 801A5C88 001A2BE8 81 8C 00 08 */ lwz r12, 8(r12) +/* 801A5C8C 001A2BEC 7D 89 03 A6 */ mtctr r12 +/* 801A5C90 001A2BF0 4E 80 04 21 */ bctrl +lbl_801A5C94: +/* 801A5C94 001A2BF4 34 1E 0A 8C */ addic. r0, r30, 0xa8c +/* 801A5C98 001A2BF8 41 82 00 18 */ beq lbl_801A5CB0 +/* 801A5C9C 001A2BFC 34 1E 0A 8C */ addic. r0, r30, 0xa8c +/* 801A5CA0 001A2C00 41 82 00 10 */ beq lbl_801A5CB0 +/* 801A5CA4 001A2C04 38 7E 0A 8C */ addi r3, r30, 0xa8c +/* 801A5CA8 001A2C08 38 80 00 00 */ li r4, 0 +/* 801A5CAC 001A2C0C 48 19 B1 95 */ bl __dt__6CTokenFv +lbl_801A5CB0: +/* 801A5CB0 001A2C10 34 1E 0A 84 */ addic. r0, r30, 0xa84 +/* 801A5CB4 001A2C14 41 82 00 10 */ beq lbl_801A5CC4 +/* 801A5CB8 001A2C18 38 7E 0A 84 */ addi r3, r30, 0xa84 +/* 801A5CBC 001A2C1C 38 80 00 00 */ li r4, 0 +/* 801A5CC0 001A2C20 48 19 B1 81 */ bl __dt__6CTokenFv +lbl_801A5CC4: +/* 801A5CC4 001A2C24 34 1E 0A 58 */ addic. r0, r30, 0xa58 +/* 801A5CC8 001A2C28 41 82 00 20 */ beq lbl_801A5CE8 +/* 801A5CCC 001A2C2C 34 1E 0A 58 */ addic. r0, r30, 0xa58 +/* 801A5CD0 001A2C30 41 82 00 18 */ beq lbl_801A5CE8 +/* 801A5CD4 001A2C34 34 1E 0A 58 */ addic. r0, r30, 0xa58 +/* 801A5CD8 001A2C38 41 82 00 10 */ beq lbl_801A5CE8 +/* 801A5CDC 001A2C3C 38 7E 0A 58 */ addi r3, r30, 0xa58 +/* 801A5CE0 001A2C40 38 80 00 00 */ li r4, 0 +/* 801A5CE4 001A2C44 48 19 B1 5D */ bl __dt__6CTokenFv +lbl_801A5CE8: +/* 801A5CE8 001A2C48 34 1E 0A 30 */ addic. r0, r30, 0xa30 +/* 801A5CEC 001A2C4C 41 82 00 24 */ beq lbl_801A5D10 +/* 801A5CF0 001A2C50 3C 60 80 3F */ lis r3, lbl_803ECAD0@ha +/* 801A5CF4 001A2C54 34 1E 0A 30 */ addic. r0, r30, 0xa30 +/* 801A5CF8 001A2C58 38 03 CA D0 */ addi r0, r3, lbl_803ECAD0@l +/* 801A5CFC 001A2C5C 90 1E 0A 30 */ stw r0, 0xa30(r30) +/* 801A5D00 001A2C60 41 82 00 10 */ beq lbl_801A5D10 +/* 801A5D04 001A2C64 3C 60 80 3E */ lis r3, lbl_803D97E4@ha +/* 801A5D08 001A2C68 38 03 97 E4 */ addi r0, r3, lbl_803D97E4@l +/* 801A5D0C 001A2C6C 90 1E 0A 30 */ stw r0, 0xa30(r30) +lbl_801A5D10: +/* 801A5D10 001A2C70 34 1E 0A 2C */ addic. r0, r30, 0xa2c +/* 801A5D14 001A2C74 41 82 00 10 */ beq lbl_801A5D24 +/* 801A5D18 001A2C78 80 7E 0A 2C */ lwz r3, 0xa2c(r30) +/* 801A5D1C 001A2C7C 38 80 00 01 */ li r4, 1 +/* 801A5D20 001A2C80 48 00 1B BD */ bl sub_801a78dc +lbl_801A5D24: +/* 801A5D24 001A2C84 34 1E 09 F4 */ addic. r0, r30, 0x9f4 +/* 801A5D28 001A2C88 41 82 00 14 */ beq lbl_801A5D3C +/* 801A5D2C 001A2C8C 34 1E 0A 18 */ addic. r0, r30, 0xa18 +/* 801A5D30 001A2C90 41 82 00 0C */ beq lbl_801A5D3C +/* 801A5D34 001A2C94 38 00 00 00 */ li r0, 0 +/* 801A5D38 001A2C98 98 1E 0A 24 */ stb r0, 0xa24(r30) +lbl_801A5D3C: +/* 801A5D3C 001A2C9C 34 1E 08 44 */ addic. r0, r30, 0x844 +/* 801A5D40 001A2CA0 41 82 00 60 */ beq lbl_801A5DA0 +/* 801A5D44 001A2CA4 34 1E 08 48 */ addic. r0, r30, 0x848 +/* 801A5D48 001A2CA8 41 82 00 58 */ beq lbl_801A5DA0 +/* 801A5D4C 001A2CAC 80 BE 08 48 */ lwz r5, 0x848(r30) +/* 801A5D50 001A2CB0 38 60 00 00 */ li r3, 0 +/* 801A5D54 001A2CB4 2C 05 00 00 */ cmpwi r5, 0 +/* 801A5D58 001A2CB8 40 81 00 40 */ ble lbl_801A5D98 +/* 801A5D5C 001A2CBC 2C 05 00 08 */ cmpwi r5, 8 +/* 801A5D60 001A2CC0 38 85 FF F8 */ addi r4, r5, -8 +/* 801A5D64 001A2CC4 40 81 00 20 */ ble lbl_801A5D84 +/* 801A5D68 001A2CC8 38 04 00 07 */ addi r0, r4, 7 +/* 801A5D6C 001A2CCC 54 00 E8 FE */ srwi r0, r0, 3 +/* 801A5D70 001A2CD0 7C 09 03 A6 */ mtctr r0 +/* 801A5D74 001A2CD4 2C 04 00 00 */ cmpwi r4, 0 +/* 801A5D78 001A2CD8 40 81 00 0C */ ble lbl_801A5D84 +lbl_801A5D7C: +/* 801A5D7C 001A2CDC 38 63 00 08 */ addi r3, r3, 8 +/* 801A5D80 001A2CE0 42 00 FF FC */ bdnz lbl_801A5D7C +lbl_801A5D84: +/* 801A5D84 001A2CE4 7C 03 28 50 */ subf r0, r3, r5 +/* 801A5D88 001A2CE8 7C 09 03 A6 */ mtctr r0 +/* 801A5D8C 001A2CEC 7C 03 28 00 */ cmpw r3, r5 +/* 801A5D90 001A2CF0 40 80 00 08 */ bge lbl_801A5D98 +lbl_801A5D94: +/* 801A5D94 001A2CF4 42 00 00 00 */ bdnz lbl_801A5D94 +lbl_801A5D98: +/* 801A5D98 001A2CF8 38 00 00 00 */ li r0, 0 +/* 801A5D9C 001A2CFC 90 1E 08 48 */ stw r0, 0x848(r30) +lbl_801A5DA0: +/* 801A5DA0 001A2D00 34 1E 07 60 */ addic. r0, r30, 0x760 +/* 801A5DA4 001A2D04 41 82 00 60 */ beq lbl_801A5E04 +/* 801A5DA8 001A2D08 34 1E 07 64 */ addic. r0, r30, 0x764 +/* 801A5DAC 001A2D0C 41 82 00 58 */ beq lbl_801A5E04 +/* 801A5DB0 001A2D10 80 BE 07 64 */ lwz r5, 0x764(r30) +/* 801A5DB4 001A2D14 38 60 00 00 */ li r3, 0 +/* 801A5DB8 001A2D18 2C 05 00 00 */ cmpwi r5, 0 +/* 801A5DBC 001A2D1C 40 81 00 40 */ ble lbl_801A5DFC +/* 801A5DC0 001A2D20 2C 05 00 08 */ cmpwi r5, 8 +/* 801A5DC4 001A2D24 38 85 FF F8 */ addi r4, r5, -8 +/* 801A5DC8 001A2D28 40 81 00 20 */ ble lbl_801A5DE8 +/* 801A5DCC 001A2D2C 38 04 00 07 */ addi r0, r4, 7 +/* 801A5DD0 001A2D30 54 00 E8 FE */ srwi r0, r0, 3 +/* 801A5DD4 001A2D34 7C 09 03 A6 */ mtctr r0 +/* 801A5DD8 001A2D38 2C 04 00 00 */ cmpwi r4, 0 +/* 801A5DDC 001A2D3C 40 81 00 0C */ ble lbl_801A5DE8 +lbl_801A5DE0: +/* 801A5DE0 001A2D40 38 63 00 08 */ addi r3, r3, 8 +/* 801A5DE4 001A2D44 42 00 FF FC */ bdnz lbl_801A5DE0 +lbl_801A5DE8: +/* 801A5DE8 001A2D48 7C 03 28 50 */ subf r0, r3, r5 +/* 801A5DEC 001A2D4C 7C 09 03 A6 */ mtctr r0 +/* 801A5DF0 001A2D50 7C 03 28 00 */ cmpw r3, r5 +/* 801A5DF4 001A2D54 40 80 00 08 */ bge lbl_801A5DFC +lbl_801A5DF8: +/* 801A5DF8 001A2D58 42 00 00 00 */ bdnz lbl_801A5DF8 +lbl_801A5DFC: +/* 801A5DFC 001A2D5C 38 00 00 00 */ li r0, 0 +/* 801A5E00 001A2D60 90 1E 07 64 */ stw r0, 0x764(r30) +lbl_801A5E04: +/* 801A5E04 001A2D64 7F C3 F3 78 */ mr r3, r30 +/* 801A5E08 001A2D68 38 80 00 00 */ li r4, 0 +/* 801A5E0C 001A2D6C 4B ED 17 65 */ bl __dt__10CPatternedFv +/* 801A5E10 001A2D70 7F E0 07 35 */ extsh. r0, r31 +/* 801A5E14 001A2D74 40 81 00 0C */ ble lbl_801A5E20 +/* 801A5E18 001A2D78 7F C3 F3 78 */ mr r3, r30 +/* 801A5E1C 001A2D7C 48 16 FB 15 */ bl Free__7CMemoryFPCv +lbl_801A5E20: +/* 801A5E20 001A2D80 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801A5E24 001A2D84 7F C3 F3 78 */ mr r3, r30 +/* 801A5E28 001A2D88 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801A5E2C 001A2D8C 83 C1 00 08 */ lwz r30, 8(r1) +/* 801A5E30 001A2D90 7C 08 03 A6 */ mtlr r0 +/* 801A5E34 001A2D94 38 21 00 10 */ addi r1, r1, 0x10 +/* 801A5E38 001A2D98 4E 80 00 20 */ blr + +.global "__ct__12CIceSheegothF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC16CActorParametersRC16CIceSheegothData" +"__ct__12CIceSheegothF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC16CActorParametersRC16CIceSheegothData": +/* 801A5E3C 001A2D9C 94 21 FE 50 */ stwu r1, -0x1b0(r1) +/* 801A5E40 001A2DA0 7C 08 02 A6 */ mflr r0 +/* 801A5E44 001A2DA4 39 60 00 01 */ li r11, 1 +/* 801A5E48 001A2DA8 7D 0C 43 78 */ mr r12, r8 +/* 801A5E4C 001A2DAC 90 01 01 B4 */ stw r0, 0x1b4(r1) +/* 801A5E50 001A2DB0 93 E1 01 AC */ stw r31, 0x1ac(r1) +/* 801A5E54 001A2DB4 83 E1 01 B8 */ lwz r31, 0x1b8(r1) +/* 801A5E58 001A2DB8 93 C1 01 A8 */ stw r30, 0x1a8(r1) +/* 801A5E5C 001A2DBC 7D 3E 4B 78 */ mr r30, r9 +/* 801A5E60 001A2DC0 7C E9 3B 78 */ mr r9, r7 +/* 801A5E64 001A2DC4 38 E0 00 00 */ li r7, 0 +/* 801A5E68 001A2DC8 93 A1 01 A4 */ stw r29, 0x1a4(r1) +/* 801A5E6C 001A2DCC 7C 7D 1B 78 */ mr r29, r3 +/* 801A5E70 001A2DD0 93 81 01 A0 */ stw r28, 0x1a0(r1) +/* 801A5E74 001A2DD4 7C DC 33 78 */ mr r28, r6 +/* 801A5E78 001A2DD8 7C A6 2B 78 */ mr r6, r5 +/* 801A5E7C 001A2DDC 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801A5E80 001A2DE0 A0 04 00 00 */ lhz r0, 0(r4) +/* 801A5E84 001A2DE4 38 80 00 00 */ li r4, 0 +/* 801A5E88 001A2DE8 7F 88 E3 78 */ mr r8, r28 +/* 801A5E8C 001A2DEC B0 01 00 20 */ sth r0, 0x20(r1) +/* 801A5E90 001A2DF0 38 00 00 02 */ li r0, 2 +/* 801A5E94 001A2DF4 93 C1 00 08 */ stw r30, 8(r1) +/* 801A5E98 001A2DF8 90 81 00 0C */ stw r4, 0xc(r1) +/* 801A5E9C 001A2DFC 38 80 00 0F */ li r4, 0xf +/* 801A5EA0 001A2E00 91 61 00 10 */ stw r11, 0x10(r1) +/* 801A5EA4 001A2E04 91 61 00 14 */ stw r11, 0x14(r1) +/* 801A5EA8 001A2E08 91 41 00 18 */ stw r10, 0x18(r1) +/* 801A5EAC 001A2E0C 7D 8A 63 78 */ mr r10, r12 +/* 801A5EB0 001A2E10 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801A5EB4 001A2E14 4B ED 75 9D */ bl "__ct__10CPatternedFUi9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC16CActorParametersUi" +/* 801A5EB8 001A2E18 3C 60 80 3E */ lis r3, lbl_803E4728@ha +/* 801A5EBC 001A2E1C 38 00 FF FF */ li r0, -1 +/* 801A5EC0 001A2E20 38 63 47 28 */ addi r3, r3, lbl_803E4728@l +/* 801A5EC4 001A2E24 7F E4 FB 78 */ mr r4, r31 +/* 801A5EC8 001A2E28 90 7D 00 00 */ stw r3, 0(r29) +/* 801A5ECC 001A2E2C 38 7D 05 6C */ addi r3, r29, 0x56c +/* 801A5ED0 001A2E30 90 1D 05 68 */ stw r0, 0x568(r29) +/* 801A5ED4 001A2E34 48 00 09 F5 */ bl __ct__16CIceSheegothDataFR16CIceSheegothData +/* 801A5ED8 001A2E38 C0 22 A7 60 */ lfs f1, lbl_805AC480@sda21(r2) +/* 801A5EDC 001A2E3C 38 7D 07 60 */ addi r3, r29, 0x760 +/* 801A5EE0 001A2E40 80 DE 01 0C */ lwz r6, 0x10c(r30) +/* 801A5EE4 001A2E44 38 80 00 00 */ li r4, 0 +/* 801A5EE8 001A2E48 FC 40 08 90 */ fmr f2, f1 +/* 801A5EEC 001A2E4C 38 A0 00 01 */ li r5, 1 +/* 801A5EF0 001A2E50 48 02 2E A5 */ bl __ct__15CPathFindSearchFP7CPFAreaUiff +/* 801A5EF4 001A2E54 C0 22 A7 60 */ lfs f1, lbl_805AC480@sda21(r2) +/* 801A5EF8 001A2E58 38 7D 08 44 */ addi r3, r29, 0x844 +/* 801A5EFC 001A2E5C 80 DE 01 0C */ lwz r6, 0x10c(r30) +/* 801A5F00 001A2E60 38 80 00 00 */ li r4, 0 +/* 801A5F04 001A2E64 FC 40 08 90 */ fmr f2, f1 +/* 801A5F08 001A2E68 38 A0 00 01 */ li r5, 1 +/* 801A5F0C 001A2E6C 48 02 2E 89 */ bl __ct__15CPathFindSearchFP7CPFAreaUiff +/* 801A5F10 001A2E70 38 00 00 00 */ li r0, 0 +/* 801A5F14 001A2E74 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801A5F18 001A2E78 90 1D 09 28 */ stw r0, 0x928(r29) +/* 801A5F1C 001A2E7C 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 801A5F20 001A2E80 3C 60 80 3D */ lis r3, lbl_803D13D8@ha +/* 801A5F24 001A2E84 C0 42 A7 60 */ lfs f2, lbl_805AC480@sda21(r2) +/* 801A5F28 001A2E88 C0 05 00 00 */ lfs f0, 0(r5) +/* 801A5F2C 001A2E8C 38 83 13 D8 */ addi r4, r3, lbl_803D13D8@l +/* 801A5F30 001A2E90 C0 22 A7 5C */ lfs f1, lbl_805AC47C@sda21(r2) +/* 801A5F34 001A2E94 38 61 01 28 */ addi r3, r1, 0x128 +/* 801A5F38 001A2E98 D0 1D 09 2C */ stfs f0, 0x92c(r29) +/* 801A5F3C 001A2E9C 38 84 00 A5 */ addi r4, r4, 0xa5 +/* 801A5F40 001A2EA0 C0 02 A7 74 */ lfs f0, lbl_805AC494@sda21(r2) +/* 801A5F44 001A2EA4 C0 65 00 04 */ lfs f3, 4(r5) +/* 801A5F48 001A2EA8 D0 7D 09 30 */ stfs f3, 0x930(r29) +/* 801A5F4C 001A2EAC C0 65 00 08 */ lfs f3, 8(r5) +/* 801A5F50 001A2EB0 D0 7D 09 34 */ stfs f3, 0x934(r29) +/* 801A5F54 001A2EB4 C0 65 00 00 */ lfs f3, 0(r5) +/* 801A5F58 001A2EB8 D0 7D 09 38 */ stfs f3, 0x938(r29) +/* 801A5F5C 001A2EBC C0 65 00 04 */ lfs f3, 4(r5) +/* 801A5F60 001A2EC0 D0 7D 09 3C */ stfs f3, 0x93c(r29) +/* 801A5F64 001A2EC4 C0 65 00 08 */ lfs f3, 8(r5) +/* 801A5F68 001A2EC8 D0 7D 09 40 */ stfs f3, 0x940(r29) +/* 801A5F6C 001A2ECC D0 5D 09 44 */ stfs f2, 0x944(r29) +/* 801A5F70 001A2ED0 D0 5D 09 48 */ stfs f2, 0x948(r29) +/* 801A5F74 001A2ED4 C0 5D 03 B4 */ lfs f2, 0x3b4(r29) +/* 801A5F78 001A2ED8 D0 5D 09 4C */ stfs f2, 0x94c(r29) +/* 801A5F7C 001A2EDC D0 3D 09 50 */ stfs f1, 0x950(r29) +/* 801A5F80 001A2EE0 D0 3D 09 54 */ stfs f1, 0x954(r29) +/* 801A5F84 001A2EE4 D0 3D 09 58 */ stfs f1, 0x958(r29) +/* 801A5F88 001A2EE8 D0 3D 09 5C */ stfs f1, 0x95c(r29) +/* 801A5F8C 001A2EEC D0 3D 09 60 */ stfs f1, 0x960(r29) +/* 801A5F90 001A2EF0 D0 3D 09 68 */ stfs f1, 0x968(r29) +/* 801A5F94 001A2EF4 D0 1D 09 6C */ stfs f0, 0x96c(r29) +/* 801A5F98 001A2EF8 D0 3D 09 70 */ stfs f1, 0x970(r29) +/* 801A5F9C 001A2EFC C0 1F 01 74 */ lfs f0, 0x174(r31) +/* 801A5FA0 001A2F00 D0 1D 09 74 */ stfs f0, 0x974(r29) +/* 801A5FA4 001A2F04 D0 3D 09 78 */ stfs f1, 0x978(r29) +/* 801A5FA8 001A2F08 D0 3D 09 7C */ stfs f1, 0x97c(r29) +/* 801A5FAC 001A2F0C C0 05 00 00 */ lfs f0, 0(r5) +/* 801A5FB0 001A2F10 D0 1D 09 80 */ stfs f0, 0x980(r29) +/* 801A5FB4 001A2F14 C0 05 00 04 */ lfs f0, 4(r5) +/* 801A5FB8 001A2F18 D0 1D 09 84 */ stfs f0, 0x984(r29) +/* 801A5FBC 001A2F1C C0 05 00 08 */ lfs f0, 8(r5) +/* 801A5FC0 001A2F20 D0 1D 09 88 */ stfs f0, 0x988(r29) +/* 801A5FC4 001A2F24 80 BE 00 5C */ lwz r5, 0x5c(r30) +/* 801A5FC8 001A2F28 80 1E 00 60 */ lwz r0, 0x60(r30) +/* 801A5FCC 001A2F2C 90 BD 09 8C */ stw r5, 0x98c(r29) +/* 801A5FD0 001A2F30 90 1D 09 90 */ stw r0, 0x990(r29) +/* 801A5FD4 001A2F34 80 BE 00 64 */ lwz r5, 0x64(r30) +/* 801A5FD8 001A2F38 80 1E 00 68 */ lwz r0, 0x68(r30) +/* 801A5FDC 001A2F3C 90 BD 09 94 */ stw r5, 0x994(r29) +/* 801A5FE0 001A2F40 90 1D 09 98 */ stw r0, 0x998(r29) +/* 801A5FE4 001A2F44 80 BE 00 6C */ lwz r5, 0x6c(r30) +/* 801A5FE8 001A2F48 80 1E 00 70 */ lwz r0, 0x70(r30) +/* 801A5FEC 001A2F4C 90 BD 09 9C */ stw r5, 0x99c(r29) +/* 801A5FF0 001A2F50 90 1D 09 A0 */ stw r0, 0x9a0(r29) +/* 801A5FF4 001A2F54 80 BE 00 74 */ lwz r5, 0x74(r30) +/* 801A5FF8 001A2F58 80 1E 00 78 */ lwz r0, 0x78(r30) +/* 801A5FFC 001A2F5C 90 BD 09 A4 */ stw r5, 0x9a4(r29) +/* 801A6000 001A2F60 90 1D 09 A8 */ stw r0, 0x9a8(r29) +/* 801A6004 001A2F64 80 BE 00 7C */ lwz r5, 0x7c(r30) +/* 801A6008 001A2F68 80 1E 00 80 */ lwz r0, 0x80(r30) +/* 801A600C 001A2F6C 90 BD 09 AC */ stw r5, 0x9ac(r29) +/* 801A6010 001A2F70 90 1D 09 B0 */ stw r0, 0x9b0(r29) +/* 801A6014 001A2F74 80 BE 00 84 */ lwz r5, 0x84(r30) +/* 801A6018 001A2F78 80 1E 00 88 */ lwz r0, 0x88(r30) +/* 801A601C 001A2F7C 90 BD 09 B4 */ stw r5, 0x9b4(r29) +/* 801A6020 001A2F80 90 1D 09 B8 */ stw r0, 0x9b8(r29) +/* 801A6024 001A2F84 80 BE 00 8C */ lwz r5, 0x8c(r30) +/* 801A6028 001A2F88 80 1E 00 90 */ lwz r0, 0x90(r30) +/* 801A602C 001A2F8C 90 BD 09 BC */ stw r5, 0x9bc(r29) +/* 801A6030 001A2F90 90 1D 09 C0 */ stw r0, 0x9c0(r29) +/* 801A6034 001A2F94 80 1E 00 94 */ lwz r0, 0x94(r30) +/* 801A6038 001A2F98 90 1D 09 C4 */ stw r0, 0x9c4(r29) +/* 801A603C 001A2F9C 80 BE 00 98 */ lwz r5, 0x98(r30) +/* 801A6040 001A2FA0 80 1E 00 9C */ lwz r0, 0x9c(r30) +/* 801A6044 001A2FA4 90 BD 09 C8 */ stw r5, 0x9c8(r29) +/* 801A6048 001A2FA8 90 1D 09 CC */ stw r0, 0x9cc(r29) +/* 801A604C 001A2FAC 80 BE 00 A0 */ lwz r5, 0xa0(r30) +/* 801A6050 001A2FB0 80 1E 00 A4 */ lwz r0, 0xa4(r30) +/* 801A6054 001A2FB4 90 BD 09 D0 */ stw r5, 0x9d0(r29) +/* 801A6058 001A2FB8 90 1D 09 D4 */ stw r0, 0x9d4(r29) +/* 801A605C 001A2FBC 80 BE 00 A8 */ lwz r5, 0xa8(r30) +/* 801A6060 001A2FC0 80 1E 00 AC */ lwz r0, 0xac(r30) +/* 801A6064 001A2FC4 90 BD 09 D8 */ stw r5, 0x9d8(r29) +/* 801A6068 001A2FC8 90 1D 09 DC */ stw r0, 0x9dc(r29) +/* 801A606C 001A2FCC 80 BE 00 B0 */ lwz r5, 0xb0(r30) +/* 801A6070 001A2FD0 80 1E 00 B4 */ lwz r0, 0xb4(r30) +/* 801A6074 001A2FD4 90 BD 09 E0 */ stw r5, 0x9e0(r29) +/* 801A6078 001A2FD8 90 1D 09 E4 */ stw r0, 0x9e4(r29) +/* 801A607C 001A2FDC 80 1E 00 B8 */ lwz r0, 0xb8(r30) +/* 801A6080 001A2FE0 90 1D 09 E8 */ stw r0, 0x9e8(r29) +/* 801A6084 001A2FE4 80 1E 00 BC */ lwz r0, 0xbc(r30) +/* 801A6088 001A2FE8 90 1D 09 EC */ stw r0, 0x9ec(r29) +/* 801A608C 001A2FEC 80 1E 00 C0 */ lwz r0, 0xc0(r30) +/* 801A6090 001A2FF0 90 1D 09 F0 */ stw r0, 0x9f0(r29) +/* 801A6094 001A2FF4 4B E5 EC 25 */ bl string_l__4rstlFPCc +/* 801A6098 001A2FF8 80 9D 00 64 */ lwz r4, 0x64(r29) +/* 801A609C 001A2FFC 38 7D 09 F4 */ addi r3, r29, 0x9f4 +/* 801A60A0 001A3000 C0 22 A7 EC */ lfs f1, lbl_805AC50C@sda21(r2) +/* 801A60A4 001A3004 38 A1 01 28 */ addi r5, r1, 0x128 +/* 801A60A8 001A3008 80 84 00 10 */ lwz r4, 0x10(r4) +/* 801A60AC 001A300C 38 C0 00 00 */ li r6, 0 +/* 801A60B0 001A3010 C0 42 A7 F0 */ lfs f2, lbl_805AC510@sda21(r2) +/* 801A60B4 001A3014 4B FC F9 05 */ bl "__ct__13CBoneTrackingFRC9CAnimDataRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>ffb" +/* 801A60B8 001A3018 38 61 01 28 */ addi r3, r1, 0x128 +/* 801A60BC 001A301C 48 19 7A 25 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801A60C0 001A3020 38 00 00 00 */ li r0, 0 +/* 801A60C4 001A3024 7F A4 EB 78 */ mr r4, r29 +/* 801A60C8 001A3028 90 1D 0A 2C */ stw r0, 0xa2c(r29) +/* 801A60CC 001A302C 3B DD 00 68 */ addi r30, r29, 0x68 +/* 801A60D0 001A3030 38 61 01 38 */ addi r3, r1, 0x138 +/* 801A60D4 001A3034 4B F7 48 59 */ bl GetBoundingBox__13CPhysicsActorCFv +/* 801A60D8 001A3038 3B 9D 0A 30 */ addi r28, r29, 0xa30 +/* 801A60DC 001A303C 7F C4 F3 78 */ mr r4, r30 +/* 801A60E0 001A3040 7F 83 E3 78 */ mr r3, r28 +/* 801A60E4 001A3044 48 12 97 D1 */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList +/* 801A60E8 001A3048 3C 80 80 3F */ lis r4, lbl_803ECAD0@ha +/* 801A60EC 001A304C 38 7D 0A 58 */ addi r3, r29, 0xa58 +/* 801A60F0 001A3050 38 04 CA D0 */ addi r0, r4, lbl_803ECAD0@l +/* 801A60F4 001A3054 38 BF 01 54 */ addi r5, r31, 0x154 +/* 801A60F8 001A3058 90 1C 00 00 */ stw r0, 0(r28) +/* 801A60FC 001A305C C0 01 01 38 */ lfs f0, 0x138(r1) +/* 801A6100 001A3060 D0 1C 00 10 */ stfs f0, 0x10(r28) +/* 801A6104 001A3064 C0 01 01 3C */ lfs f0, 0x13c(r1) +/* 801A6108 001A3068 D0 1C 00 14 */ stfs f0, 0x14(r28) +/* 801A610C 001A306C C0 01 01 40 */ lfs f0, 0x140(r1) +/* 801A6110 001A3070 D0 1C 00 18 */ stfs f0, 0x18(r28) +/* 801A6114 001A3074 C0 01 01 44 */ lfs f0, 0x144(r1) +/* 801A6118 001A3078 D0 1C 00 1C */ stfs f0, 0x1c(r28) +/* 801A611C 001A307C C0 01 01 48 */ lfs f0, 0x148(r1) +/* 801A6120 001A3080 D0 1C 00 20 */ stfs f0, 0x20(r28) +/* 801A6124 001A3084 C0 01 01 4C */ lfs f0, 0x14c(r1) +/* 801A6128 001A3088 D0 1C 00 24 */ stfs f0, 0x24(r28) +/* 801A612C 001A308C 80 9F 01 50 */ lwz r4, 0x150(r31) +/* 801A6130 001A3090 48 07 5F 79 */ bl __ct__15CProjectileInfoFUiRC11CDamageInfo +/* 801A6134 001A3094 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801A6138 001A3098 3B 80 00 00 */ li r28, 0 +/* 801A613C 001A309C 3B C0 00 00 */ li r30, 0 +/* 801A6140 001A30A0 B0 1D 0A 80 */ sth r0, 0xa80(r29) +/* 801A6144 001A30A4 80 9F 01 78 */ lwz r4, 0x178(r31) +/* 801A6148 001A30A8 3C 04 00 01 */ addis r0, r4, 1 +/* 801A614C 001A30AC 28 00 FF FF */ cmplwi r0, 0xffff +/* 801A6150 001A30B0 41 82 00 3C */ beq lbl_801A618C +/* 801A6154 001A30B4 3C 60 57 50 */ lis r3, 0x57505343@ha +/* 801A6158 001A30B8 90 81 00 E8 */ stw r4, 0xe8(r1) +/* 801A615C 001A30BC 38 03 53 43 */ addi r0, r3, 0x57505343@l +/* 801A6160 001A30C0 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801A6164 001A30C4 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 801A6168 001A30C8 38 61 00 DC */ addi r3, r1, 0xdc +/* 801A616C 001A30CC 38 A1 00 E4 */ addi r5, r1, 0xe4 +/* 801A6170 001A30D0 81 84 00 00 */ lwz r12, 0(r4) +/* 801A6174 001A30D4 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801A6178 001A30D8 7D 89 03 A6 */ mtctr r12 +/* 801A617C 001A30DC 4E 80 04 21 */ bctrl +/* 801A6180 001A30E0 38 81 00 DC */ addi r4, r1, 0xdc +/* 801A6184 001A30E4 3B 80 00 01 */ li r28, 1 +/* 801A6188 001A30E8 48 00 00 30 */ b lbl_801A61B8 +lbl_801A618C: +/* 801A618C 001A30EC 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801A6190 001A30F0 3C 60 80 3D */ lis r3, lbl_803D13D8@ha +/* 801A6194 001A30F4 38 A3 13 D8 */ addi r5, r3, lbl_803D13D8@l +/* 801A6198 001A30F8 38 61 00 D4 */ addi r3, r1, 0xd4 +/* 801A619C 001A30FC 81 84 00 00 */ lwz r12, 0(r4) +/* 801A61A0 001A3100 38 A5 00 AC */ addi r5, r5, 0xac +/* 801A61A4 001A3104 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801A61A8 001A3108 7D 89 03 A6 */ mtctr r12 +/* 801A61AC 001A310C 4E 80 04 21 */ bctrl +/* 801A61B0 001A3110 3B C0 00 01 */ li r30, 1 +/* 801A61B4 001A3114 38 81 00 D4 */ addi r4, r1, 0xd4 +lbl_801A61B8: +/* 801A61B8 001A3118 38 7D 0A 84 */ addi r3, r29, 0xa84 +/* 801A61BC 001A311C 48 19 AC ED */ bl __ct__6CTokenFRC6CToken +/* 801A61C0 001A3120 7F C0 07 75 */ extsb. r0, r30 +/* 801A61C4 001A3124 41 82 00 10 */ beq lbl_801A61D4 +/* 801A61C8 001A3128 38 61 00 D4 */ addi r3, r1, 0xd4 +/* 801A61CC 001A312C 38 80 FF FF */ li r4, -1 +/* 801A61D0 001A3130 48 19 AC 71 */ bl __dt__6CTokenFv +lbl_801A61D4: +/* 801A61D4 001A3134 7F 80 07 75 */ extsb. r0, r28 +/* 801A61D8 001A3138 41 82 00 10 */ beq lbl_801A61E8 +/* 801A61DC 001A313C 38 61 00 DC */ addi r3, r1, 0xdc +/* 801A61E0 001A3140 38 80 FF FF */ li r4, -1 +/* 801A61E4 001A3144 48 19 AC 5D */ bl __dt__6CTokenFv +lbl_801A61E8: +/* 801A61E8 001A3148 80 DF 01 A0 */ lwz r6, 0x1a0(r31) +/* 801A61EC 001A314C 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 801A61F0 001A3150 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 801A61F4 001A3154 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801A61F8 001A3158 90 01 00 CC */ stw r0, 0xcc(r1) +/* 801A61FC 001A315C 38 61 00 C4 */ addi r3, r1, 0xc4 +/* 801A6200 001A3160 38 A1 00 CC */ addi r5, r1, 0xcc +/* 801A6204 001A3164 90 C1 00 D0 */ stw r6, 0xd0(r1) +/* 801A6208 001A3168 81 84 00 00 */ lwz r12, 0(r4) +/* 801A620C 001A316C 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801A6210 001A3170 7D 89 03 A6 */ mtctr r12 +/* 801A6214 001A3174 4E 80 04 21 */ bctrl +/* 801A6218 001A3178 3B 9D 0A 8C */ addi r28, r29, 0xa8c +/* 801A621C 001A317C 38 81 00 C4 */ addi r4, r1, 0xc4 +/* 801A6220 001A3180 7F 83 E3 78 */ mr r3, r28 +/* 801A6224 001A3184 48 19 AC 85 */ bl __ct__6CTokenFRC6CToken +/* 801A6228 001A3188 7F 83 E3 78 */ mr r3, r28 +/* 801A622C 001A318C 48 19 AB E1 */ bl GetObj__6CTokenFv +/* 801A6230 001A3190 80 03 00 04 */ lwz r0, 4(r3) +/* 801A6234 001A3194 38 61 00 C4 */ addi r3, r1, 0xc4 +/* 801A6238 001A3198 38 80 FF FF */ li r4, -1 +/* 801A623C 001A319C 90 1C 00 08 */ stw r0, 8(r28) +/* 801A6240 001A31A0 48 19 AC 01 */ bl __dt__6CTokenFv +/* 801A6244 001A31A4 3C 60 80 3D */ lis r3, lbl_803D13D8@ha +/* 801A6248 001A31A8 3B 80 00 00 */ li r28, 0 +/* 801A624C 001A31AC 38 83 13 D8 */ addi r4, r3, lbl_803D13D8@l +/* 801A6250 001A31B0 38 60 03 40 */ li r3, 0x340 +/* 801A6254 001A31B4 38 84 00 8C */ addi r4, r4, 0x8c +/* 801A6258 001A31B8 38 A0 00 00 */ li r5, 0 +/* 801A625C 001A31BC 48 16 F6 11 */ bl __nw__FUlPCcPCc +/* 801A6260 001A31C0 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801A6264 001A31C4 41 82 00 2C */ beq lbl_801A6290 +/* 801A6268 001A31C8 38 61 00 BC */ addi r3, r1, 0xbc +/* 801A626C 001A31CC 38 9D 0A 8C */ addi r4, r29, 0xa8c +/* 801A6270 001A31D0 48 19 AC 39 */ bl __ct__6CTokenFRC6CToken +/* 801A6274 001A31D4 7F C3 F3 78 */ mr r3, r30 +/* 801A6278 001A31D8 38 81 00 BC */ addi r4, r1, 0xbc +/* 801A627C 001A31DC 3B 80 00 01 */ li r28, 1 +/* 801A6280 001A31E0 38 A0 00 00 */ li r5, 0 +/* 801A6284 001A31E4 38 C0 00 01 */ li r6, 1 +/* 801A6288 001A31E8 48 17 91 59 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 801A628C 001A31EC 7C 7E 1B 78 */ mr r30, r3 +lbl_801A6290: +/* 801A6290 001A31F0 7C 7E 00 D0 */ neg r3, r30 +/* 801A6294 001A31F4 7F 80 07 75 */ extsb. r0, r28 +/* 801A6298 001A31F8 7C 60 F3 78 */ or r0, r3, r30 +/* 801A629C 001A31FC 54 00 0F FE */ srwi r0, r0, 0x1f +/* 801A62A0 001A3200 98 1D 0A 98 */ stb r0, 0xa98(r29) +/* 801A62A4 001A3204 93 DD 0A 9C */ stw r30, 0xa9c(r29) +/* 801A62A8 001A3208 41 82 00 10 */ beq lbl_801A62B8 +/* 801A62AC 001A320C 38 61 00 BC */ addi r3, r1, 0xbc +/* 801A62B0 001A3210 38 80 00 00 */ li r4, 0 +/* 801A62B4 001A3214 48 19 AB 8D */ bl __dt__6CTokenFv +lbl_801A62B8: +/* 801A62B8 001A3218 80 DF 01 A4 */ lwz r6, 0x1a4(r31) +/* 801A62BC 001A321C 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 801A62C0 001A3220 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 801A62C4 001A3224 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801A62C8 001A3228 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 801A62CC 001A322C 38 61 00 AC */ addi r3, r1, 0xac +/* 801A62D0 001A3230 38 A1 00 B4 */ addi r5, r1, 0xb4 +/* 801A62D4 001A3234 90 C1 00 B8 */ stw r6, 0xb8(r1) +/* 801A62D8 001A3238 81 84 00 00 */ lwz r12, 0(r4) +/* 801A62DC 001A323C 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801A62E0 001A3240 7D 89 03 A6 */ mtctr r12 +/* 801A62E4 001A3244 4E 80 04 21 */ bctrl +/* 801A62E8 001A3248 3B 9D 0A A0 */ addi r28, r29, 0xaa0 +/* 801A62EC 001A324C 38 81 00 AC */ addi r4, r1, 0xac +/* 801A62F0 001A3250 7F 83 E3 78 */ mr r3, r28 +/* 801A62F4 001A3254 48 19 AB B5 */ bl __ct__6CTokenFRC6CToken +/* 801A62F8 001A3258 7F 83 E3 78 */ mr r3, r28 +/* 801A62FC 001A325C 48 19 AB 11 */ bl GetObj__6CTokenFv +/* 801A6300 001A3260 80 03 00 04 */ lwz r0, 4(r3) +/* 801A6304 001A3264 38 61 00 AC */ addi r3, r1, 0xac +/* 801A6308 001A3268 38 80 FF FF */ li r4, -1 +/* 801A630C 001A326C 90 1C 00 08 */ stw r0, 8(r28) +/* 801A6310 001A3270 48 19 AB 31 */ bl __dt__6CTokenFv +/* 801A6314 001A3274 3C 60 80 3D */ lis r3, lbl_803D13D8@ha +/* 801A6318 001A3278 3B 80 00 00 */ li r28, 0 +/* 801A631C 001A327C 38 83 13 D8 */ addi r4, r3, lbl_803D13D8@l +/* 801A6320 001A3280 38 60 03 40 */ li r3, 0x340 +/* 801A6324 001A3284 38 84 00 8C */ addi r4, r4, 0x8c +/* 801A6328 001A3288 38 A0 00 00 */ li r5, 0 +/* 801A632C 001A328C 48 16 F5 41 */ bl __nw__FUlPCcPCc +/* 801A6330 001A3290 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801A6334 001A3294 41 82 00 2C */ beq lbl_801A6360 +/* 801A6338 001A3298 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 801A633C 001A329C 38 9D 0A A0 */ addi r4, r29, 0xaa0 +/* 801A6340 001A32A0 48 19 AB 69 */ bl __ct__6CTokenFRC6CToken +/* 801A6344 001A32A4 7F C3 F3 78 */ mr r3, r30 +/* 801A6348 001A32A8 38 81 00 A4 */ addi r4, r1, 0xa4 +/* 801A634C 001A32AC 3B 80 00 01 */ li r28, 1 +/* 801A6350 001A32B0 38 A0 00 00 */ li r5, 0 +/* 801A6354 001A32B4 38 C0 00 01 */ li r6, 1 +/* 801A6358 001A32B8 48 17 90 89 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 801A635C 001A32BC 7C 7E 1B 78 */ mr r30, r3 +lbl_801A6360: +/* 801A6360 001A32C0 7C 7E 00 D0 */ neg r3, r30 +/* 801A6364 001A32C4 7F 80 07 75 */ extsb. r0, r28 +/* 801A6368 001A32C8 7C 60 F3 78 */ or r0, r3, r30 +/* 801A636C 001A32CC 54 00 0F FE */ srwi r0, r0, 0x1f +/* 801A6370 001A32D0 98 1D 0A AC */ stb r0, 0xaac(r29) +/* 801A6374 001A32D4 93 DD 0A B0 */ stw r30, 0xab0(r29) +/* 801A6378 001A32D8 41 82 00 10 */ beq lbl_801A6388 +/* 801A637C 001A32DC 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 801A6380 001A32E0 38 80 00 00 */ li r4, 0 +/* 801A6384 001A32E4 48 19 AA BD */ bl __dt__6CTokenFv +lbl_801A6388: +/* 801A6388 001A32E8 80 DF 01 A8 */ lwz r6, 0x1a8(r31) +/* 801A638C 001A32EC 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 801A6390 001A32F0 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 801A6394 001A32F4 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801A6398 001A32F8 90 01 00 9C */ stw r0, 0x9c(r1) +/* 801A639C 001A32FC 38 61 00 94 */ addi r3, r1, 0x94 +/* 801A63A0 001A3300 38 A1 00 9C */ addi r5, r1, 0x9c +/* 801A63A4 001A3304 90 C1 00 A0 */ stw r6, 0xa0(r1) +/* 801A63A8 001A3308 81 84 00 00 */ lwz r12, 0(r4) +/* 801A63AC 001A330C 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801A63B0 001A3310 7D 89 03 A6 */ mtctr r12 +/* 801A63B4 001A3314 4E 80 04 21 */ bctrl +/* 801A63B8 001A3318 3B 9D 0A B4 */ addi r28, r29, 0xab4 +/* 801A63BC 001A331C 38 81 00 94 */ addi r4, r1, 0x94 +/* 801A63C0 001A3320 7F 83 E3 78 */ mr r3, r28 +/* 801A63C4 001A3324 48 19 AA E5 */ bl __ct__6CTokenFRC6CToken +/* 801A63C8 001A3328 7F 83 E3 78 */ mr r3, r28 +/* 801A63CC 001A332C 48 19 AA 41 */ bl GetObj__6CTokenFv +/* 801A63D0 001A3330 80 03 00 04 */ lwz r0, 4(r3) +/* 801A63D4 001A3334 38 61 00 94 */ addi r3, r1, 0x94 +/* 801A63D8 001A3338 38 80 FF FF */ li r4, -1 +/* 801A63DC 001A333C 90 1C 00 08 */ stw r0, 8(r28) +/* 801A63E0 001A3340 48 19 AA 61 */ bl __dt__6CTokenFv +/* 801A63E4 001A3344 3C 60 80 3D */ lis r3, lbl_803D13D8@ha +/* 801A63E8 001A3348 3B 80 00 00 */ li r28, 0 +/* 801A63EC 001A334C 38 83 13 D8 */ addi r4, r3, lbl_803D13D8@l +/* 801A63F0 001A3350 38 60 03 40 */ li r3, 0x340 +/* 801A63F4 001A3354 38 84 00 8C */ addi r4, r4, 0x8c +/* 801A63F8 001A3358 38 A0 00 00 */ li r5, 0 +/* 801A63FC 001A335C 48 16 F4 71 */ bl __nw__FUlPCcPCc +/* 801A6400 001A3360 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801A6404 001A3364 41 82 00 2C */ beq lbl_801A6430 +/* 801A6408 001A3368 38 61 00 8C */ addi r3, r1, 0x8c +/* 801A640C 001A336C 38 9D 0A B4 */ addi r4, r29, 0xab4 +/* 801A6410 001A3370 48 19 AA 99 */ bl __ct__6CTokenFRC6CToken +/* 801A6414 001A3374 7F C3 F3 78 */ mr r3, r30 +/* 801A6418 001A3378 38 81 00 8C */ addi r4, r1, 0x8c +/* 801A641C 001A337C 3B 80 00 01 */ li r28, 1 +/* 801A6420 001A3380 38 A0 00 00 */ li r5, 0 +/* 801A6424 001A3384 38 C0 00 01 */ li r6, 1 +/* 801A6428 001A3388 48 17 8F B9 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 801A642C 001A338C 7C 7E 1B 78 */ mr r30, r3 +lbl_801A6430: +/* 801A6430 001A3390 7C 7E 00 D0 */ neg r3, r30 +/* 801A6434 001A3394 7F 80 07 75 */ extsb. r0, r28 +/* 801A6438 001A3398 7C 60 F3 78 */ or r0, r3, r30 +/* 801A643C 001A339C 54 00 0F FE */ srwi r0, r0, 0x1f +/* 801A6440 001A33A0 98 1D 0A C0 */ stb r0, 0xac0(r29) +/* 801A6444 001A33A4 93 DD 0A C4 */ stw r30, 0xac4(r29) +/* 801A6448 001A33A8 41 82 00 10 */ beq lbl_801A6458 +/* 801A644C 001A33AC 38 61 00 8C */ addi r3, r1, 0x8c +/* 801A6450 001A33B0 38 80 00 00 */ li r4, 0 +/* 801A6454 001A33B4 48 19 A9 ED */ bl __dt__6CTokenFv +lbl_801A6458: +/* 801A6458 001A33B8 80 DF 01 AC */ lwz r6, 0x1ac(r31) +/* 801A645C 001A33BC 3C 60 45 4C */ lis r3, 0x454C5343@ha +/* 801A6460 001A33C0 38 03 53 43 */ addi r0, r3, 0x454C5343@l +/* 801A6464 001A33C4 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801A6468 001A33C8 90 01 00 84 */ stw r0, 0x84(r1) +/* 801A646C 001A33CC 38 61 00 7C */ addi r3, r1, 0x7c +/* 801A6470 001A33D0 38 A1 00 84 */ addi r5, r1, 0x84 +/* 801A6474 001A33D4 90 C1 00 88 */ stw r6, 0x88(r1) +/* 801A6478 001A33D8 81 84 00 00 */ lwz r12, 0(r4) +/* 801A647C 001A33DC 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801A6480 001A33E0 7D 89 03 A6 */ mtctr r12 +/* 801A6484 001A33E4 4E 80 04 21 */ bctrl +/* 801A6488 001A33E8 3B 9D 0A C8 */ addi r28, r29, 0xac8 +/* 801A648C 001A33EC 38 81 00 7C */ addi r4, r1, 0x7c +/* 801A6490 001A33F0 7F 83 E3 78 */ mr r3, r28 +/* 801A6494 001A33F4 48 19 AA 15 */ bl __ct__6CTokenFRC6CToken +/* 801A6498 001A33F8 7F 83 E3 78 */ mr r3, r28 +/* 801A649C 001A33FC 48 19 A9 71 */ bl GetObj__6CTokenFv +/* 801A64A0 001A3400 80 03 00 04 */ lwz r0, 4(r3) +/* 801A64A4 001A3404 38 61 00 7C */ addi r3, r1, 0x7c +/* 801A64A8 001A3408 38 80 FF FF */ li r4, -1 +/* 801A64AC 001A340C 90 1C 00 08 */ stw r0, 8(r28) +/* 801A64B0 001A3410 48 19 A9 91 */ bl __dt__6CTokenFv +/* 801A64B4 001A3414 3C 60 80 3D */ lis r3, lbl_803D13D8@ha +/* 801A64B8 001A3418 3B 80 00 00 */ li r28, 0 +/* 801A64BC 001A341C 38 83 13 D8 */ addi r4, r3, lbl_803D13D8@l +/* 801A64C0 001A3420 38 60 04 58 */ li r3, 0x458 +/* 801A64C4 001A3424 38 84 00 8C */ addi r4, r4, 0x8c +/* 801A64C8 001A3428 38 A0 00 00 */ li r5, 0 +/* 801A64CC 001A342C 48 16 F3 A1 */ bl __nw__FUlPCcPCc +/* 801A64D0 001A3430 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801A64D4 001A3434 41 82 00 24 */ beq lbl_801A64F8 +/* 801A64D8 001A3438 38 61 00 74 */ addi r3, r1, 0x74 +/* 801A64DC 001A343C 38 9D 0A C8 */ addi r4, r29, 0xac8 +/* 801A64E0 001A3440 48 19 A9 C9 */ bl __ct__6CTokenFRC6CToken +/* 801A64E4 001A3444 7F C3 F3 78 */ mr r3, r30 +/* 801A64E8 001A3448 38 81 00 74 */ addi r4, r1, 0x74 +/* 801A64EC 001A344C 3B 80 00 01 */ li r28, 1 +/* 801A64F0 001A3450 48 1B BC 81 */ bl "__ct__17CParticleElectricF30TToken<20CElectricDescription>" +/* 801A64F4 001A3454 7C 7E 1B 78 */ mr r30, r3 +lbl_801A64F8: +/* 801A64F8 001A3458 7C 7E 00 D0 */ neg r3, r30 +/* 801A64FC 001A345C 7F 80 07 75 */ extsb. r0, r28 +/* 801A6500 001A3460 7C 60 F3 78 */ or r0, r3, r30 +/* 801A6504 001A3464 54 00 0F FE */ srwi r0, r0, 0x1f +/* 801A6508 001A3468 98 1D 0A D4 */ stb r0, 0xad4(r29) +/* 801A650C 001A346C 93 DD 0A D8 */ stw r30, 0xad8(r29) +/* 801A6510 001A3470 41 82 00 10 */ beq lbl_801A6520 +/* 801A6514 001A3474 38 61 00 74 */ addi r3, r1, 0x74 +/* 801A6518 001A3478 38 80 00 00 */ li r4, 0 +/* 801A651C 001A347C 48 19 A9 25 */ bl __dt__6CTokenFv +lbl_801A6520: +/* 801A6520 001A3480 80 DF 01 9C */ lwz r6, 0x19c(r31) +/* 801A6524 001A3484 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 801A6528 001A3488 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 801A652C 001A348C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801A6530 001A3490 90 01 00 6C */ stw r0, 0x6c(r1) +/* 801A6534 001A3494 38 61 00 64 */ addi r3, r1, 0x64 +/* 801A6538 001A3498 38 A1 00 6C */ addi r5, r1, 0x6c +/* 801A653C 001A349C 90 C1 00 70 */ stw r6, 0x70(r1) +/* 801A6540 001A34A0 81 84 00 00 */ lwz r12, 0(r4) +/* 801A6544 001A34A4 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801A6548 001A34A8 7D 89 03 A6 */ mtctr r12 +/* 801A654C 001A34AC 4E 80 04 21 */ bctrl +/* 801A6550 001A34B0 3B 9D 0A DC */ addi r28, r29, 0xadc +/* 801A6554 001A34B4 38 81 00 64 */ addi r4, r1, 0x64 +/* 801A6558 001A34B8 7F 83 E3 78 */ mr r3, r28 +/* 801A655C 001A34BC 48 19 A9 4D */ bl __ct__6CTokenFRC6CToken +/* 801A6560 001A34C0 7F 83 E3 78 */ mr r3, r28 +/* 801A6564 001A34C4 48 19 A8 A9 */ bl GetObj__6CTokenFv +/* 801A6568 001A34C8 80 03 00 04 */ lwz r0, 4(r3) +/* 801A656C 001A34CC 38 61 00 64 */ addi r3, r1, 0x64 +/* 801A6570 001A34D0 38 80 FF FF */ li r4, -1 +/* 801A6574 001A34D4 90 1C 00 08 */ stw r0, 8(r28) +/* 801A6578 001A34D8 48 19 A8 C9 */ bl __dt__6CTokenFv +/* 801A657C 001A34DC 38 80 00 00 */ li r4, 0 +/* 801A6580 001A34E0 38 00 00 FF */ li r0, 0xff +/* 801A6584 001A34E4 98 9D 0A E8 */ stb r4, 0xae8(r29) +/* 801A6588 001A34E8 38 7D 0A 58 */ addi r3, r29, 0xa58 +/* 801A658C 001A34EC 90 9D 0A EC */ stw r4, 0xaec(r29) +/* 801A6590 001A34F0 90 9D 0A F0 */ stw r4, 0xaf0(r29) +/* 801A6594 001A34F4 98 1D 0A F4 */ stb r0, 0xaf4(r29) +/* 801A6598 001A34F8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801A659C 001A34FC B0 1D 0A F6 */ sth r0, 0xaf6(r29) +/* 801A65A0 001A3500 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801A65A4 001A3504 B0 1D 0A F8 */ sth r0, 0xaf8(r29) +/* 801A65A8 001A3508 90 9D 0A FC */ stw r4, 0xafc(r29) +/* 801A65AC 001A350C 90 9D 0B 04 */ stw r4, 0xb04(r29) +/* 801A65B0 001A3510 90 9D 0B 1C */ stw r4, 0xb1c(r29) +/* 801A65B4 001A3514 88 1D 0B 28 */ lbz r0, 0xb28(r29) +/* 801A65B8 001A3518 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801A65BC 001A351C 98 1D 0B 28 */ stb r0, 0xb28(r29) +/* 801A65C0 001A3520 88 1D 0B 28 */ lbz r0, 0xb28(r29) +/* 801A65C4 001A3524 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 801A65C8 001A3528 98 1D 0B 28 */ stb r0, 0xb28(r29) +/* 801A65CC 001A352C 88 1D 0B 28 */ lbz r0, 0xb28(r29) +/* 801A65D0 001A3530 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 801A65D4 001A3534 98 1D 0B 28 */ stb r0, 0xb28(r29) +/* 801A65D8 001A3538 88 1D 0B 28 */ lbz r0, 0xb28(r29) +/* 801A65DC 001A353C 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 801A65E0 001A3540 98 1D 0B 28 */ stb r0, 0xb28(r29) +/* 801A65E4 001A3544 88 1D 0B 28 */ lbz r0, 0xb28(r29) +/* 801A65E8 001A3548 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c +/* 801A65EC 001A354C 98 1D 0B 28 */ stb r0, 0xb28(r29) +/* 801A65F0 001A3550 88 1D 0B 28 */ lbz r0, 0xb28(r29) +/* 801A65F4 001A3554 50 80 17 7A */ rlwimi r0, r4, 2, 0x1d, 0x1d +/* 801A65F8 001A3558 98 1D 0B 28 */ stb r0, 0xb28(r29) +/* 801A65FC 001A355C 88 1D 0B 28 */ lbz r0, 0xb28(r29) +/* 801A6600 001A3560 50 80 0F BC */ rlwimi r0, r4, 1, 0x1e, 0x1e +/* 801A6604 001A3564 98 1D 0B 28 */ stb r0, 0xb28(r29) +/* 801A6608 001A3568 88 1D 0B 28 */ lbz r0, 0xb28(r29) +/* 801A660C 001A356C 50 80 07 FE */ rlwimi r0, r4, 0, 0x1f, 0x1f +/* 801A6610 001A3570 98 1D 0B 28 */ stb r0, 0xb28(r29) +/* 801A6614 001A3574 88 1D 0B 29 */ lbz r0, 0xb29(r29) +/* 801A6618 001A3578 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801A661C 001A357C 98 1D 0B 29 */ stb r0, 0xb29(r29) +/* 801A6620 001A3580 88 1D 0B 29 */ lbz r0, 0xb29(r29) +/* 801A6624 001A3584 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 801A6628 001A3588 98 1D 0B 29 */ stb r0, 0xb29(r29) +/* 801A662C 001A358C 88 1D 0B 29 */ lbz r0, 0xb29(r29) +/* 801A6630 001A3590 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 801A6634 001A3594 98 1D 0B 29 */ stb r0, 0xb29(r29) +/* 801A6638 001A3598 88 1D 0B 29 */ lbz r0, 0xb29(r29) +/* 801A663C 001A359C 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 801A6640 001A35A0 98 1D 0B 29 */ stb r0, 0xb29(r29) +/* 801A6644 001A35A4 88 1D 0B 29 */ lbz r0, 0xb29(r29) +/* 801A6648 001A35A8 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c +/* 801A664C 001A35AC 98 1D 0B 29 */ stb r0, 0xb29(r29) +/* 801A6650 001A35B0 88 1D 0B 29 */ lbz r0, 0xb29(r29) +/* 801A6654 001A35B4 50 80 17 7A */ rlwimi r0, r4, 2, 0x1d, 0x1d +/* 801A6658 001A35B8 98 1D 0B 29 */ stb r0, 0xb29(r29) +/* 801A665C 001A35BC 48 19 A7 29 */ bl Lock__6CTokenFv +/* 801A6660 001A35C0 7F A3 EB 78 */ mr r3, r29 +/* 801A6664 001A35C4 4B FF A5 BD */ bl sub_801a0c20 +/* 801A6668 001A35C8 88 1D 04 E1 */ lbz r0, 0x4e1(r29) +/* 801A666C 001A35CC 38 80 00 00 */ li r4, 0 +/* 801A6670 001A35D0 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 801A6674 001A35D4 38 61 00 24 */ addi r3, r1, 0x24 +/* 801A6678 001A35D8 98 1D 04 E1 */ stb r0, 0x4e1(r29) +/* 801A667C 001A35DC 88 1D 04 E2 */ lbz r0, 0x4e2(r29) +/* 801A6680 001A35E0 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801A6684 001A35E4 98 1D 04 E2 */ stb r0, 0x4e2(r29) +/* 801A6688 001A35E8 88 1D 04 E1 */ lbz r0, 0x4e1(r29) +/* 801A668C 001A35EC 50 80 0F BC */ rlwimi r0, r4, 1, 0x1e, 0x1e +/* 801A6690 001A35F0 98 1D 04 E1 */ stb r0, 0x4e1(r29) +/* 801A6694 001A35F4 88 1D 04 E1 */ lbz r0, 0x4e1(r29) +/* 801A6698 001A35F8 50 80 17 7A */ rlwimi r0, r4, 2, 0x1d, 0x1d +/* 801A669C 001A35FC 98 1D 04 E1 */ stb r0, 0x4e1(r29) +/* 801A66A0 001A3600 48 13 C9 DD */ bl NoParameter__12CPASAnimParmFv +/* 801A66A4 001A3604 38 61 00 2C */ addi r3, r1, 0x2c +/* 801A66A8 001A3608 48 13 C9 D5 */ bl NoParameter__12CPASAnimParmFv +/* 801A66AC 001A360C 38 61 00 34 */ addi r3, r1, 0x34 +/* 801A66B0 001A3610 48 13 C9 CD */ bl NoParameter__12CPASAnimParmFv +/* 801A66B4 001A3614 38 61 00 3C */ addi r3, r1, 0x3c +/* 801A66B8 001A3618 48 13 C9 C5 */ bl NoParameter__12CPASAnimParmFv +/* 801A66BC 001A361C 38 61 00 44 */ addi r3, r1, 0x44 +/* 801A66C0 001A3620 48 13 C9 BD */ bl NoParameter__12CPASAnimParmFv +/* 801A66C4 001A3624 38 61 00 4C */ addi r3, r1, 0x4c +/* 801A66C8 001A3628 48 13 C9 B5 */ bl NoParameter__12CPASAnimParmFv +/* 801A66CC 001A362C 38 61 00 54 */ addi r3, r1, 0x54 +/* 801A66D0 001A3630 38 80 00 00 */ li r4, 0 +/* 801A66D4 001A3634 48 13 C8 B1 */ bl FromEnum__12CPASAnimParmFi +/* 801A66D8 001A3638 38 61 00 5C */ addi r3, r1, 0x5c +/* 801A66DC 001A363C 38 80 00 01 */ li r4, 1 +/* 801A66E0 001A3640 48 13 C8 A5 */ bl FromEnum__12CPASAnimParmFi +/* 801A66E4 001A3644 38 61 00 2C */ addi r3, r1, 0x2c +/* 801A66E8 001A3648 38 01 00 24 */ addi r0, r1, 0x24 +/* 801A66EC 001A364C 90 61 00 08 */ stw r3, 8(r1) +/* 801A66F0 001A3650 38 61 01 50 */ addi r3, r1, 0x150 +/* 801A66F4 001A3654 38 A1 00 5C */ addi r5, r1, 0x5c +/* 801A66F8 001A3658 38 C1 00 54 */ addi r6, r1, 0x54 +/* 801A66FC 001A365C 90 01 00 0C */ stw r0, 0xc(r1) +/* 801A6700 001A3660 38 E1 00 4C */ addi r7, r1, 0x4c +/* 801A6704 001A3664 39 01 00 44 */ addi r8, r1, 0x44 +/* 801A6708 001A3668 39 21 00 3C */ addi r9, r1, 0x3c +/* 801A670C 001A366C 39 41 00 34 */ addi r10, r1, 0x34 +/* 801A6710 001A3670 38 80 00 03 */ li r4, 3 +/* 801A6714 001A3674 4B ED 6B B1 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 801A6718 001A3678 80 BD 00 64 */ lwz r5, 0x64(r29) +/* 801A671C 001A367C 7F A3 EB 78 */ mr r3, r29 +/* 801A6720 001A3680 38 81 01 50 */ addi r4, r1, 0x150 +/* 801A6724 001A3684 C0 45 00 00 */ lfs f2, 0(r5) +/* 801A6728 001A3688 C0 25 00 04 */ lfs f1, 4(r5) +/* 801A672C 001A368C C0 05 00 08 */ lfs f0, 8(r5) +/* 801A6730 001A3690 D0 41 01 1C */ stfs f2, 0x11c(r1) +/* 801A6734 001A3694 D0 21 01 20 */ stfs f1, 0x120(r1) +/* 801A6738 001A3698 D0 01 01 24 */ stfs f0, 0x124(r1) +/* 801A673C 001A369C 4B ED 62 C5 */ bl func_8007CA00 +/* 801A6740 001A36A0 C0 01 01 20 */ lfs f0, 0x120(r1) +/* 801A6744 001A36A4 38 81 01 10 */ addi r4, r1, 0x110 +/* 801A6748 001A36A8 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801A674C 001A36AC D0 1D 09 50 */ stfs f0, 0x950(r29) +/* 801A6750 001A36B0 80 7D 00 64 */ lwz r3, 0x64(r29) +/* 801A6754 001A36B4 C0 03 00 00 */ lfs f0, 0(r3) +/* 801A6758 001A36B8 D0 01 01 10 */ stfs f0, 0x110(r1) +/* 801A675C 001A36BC C0 03 00 04 */ lfs f0, 4(r3) +/* 801A6760 001A36C0 D0 01 01 14 */ stfs f0, 0x114(r1) +/* 801A6764 001A36C4 C0 03 00 08 */ lfs f0, 8(r3) +/* 801A6768 001A36C8 D0 01 01 18 */ stfs f0, 0x118(r1) +/* 801A676C 001A36CC 80 7D 0A 9C */ lwz r3, 0xa9c(r29) +/* 801A6770 001A36D0 81 83 00 00 */ lwz r12, 0(r3) +/* 801A6774 001A36D4 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 801A6778 001A36D8 7D 89 03 A6 */ mtctr r12 +/* 801A677C 001A36DC 4E 80 04 21 */ bctrl +/* 801A6780 001A36E0 80 7D 00 64 */ lwz r3, 0x64(r29) +/* 801A6784 001A36E4 38 81 01 04 */ addi r4, r1, 0x104 +/* 801A6788 001A36E8 C0 03 00 00 */ lfs f0, 0(r3) +/* 801A678C 001A36EC D0 01 01 04 */ stfs f0, 0x104(r1) +/* 801A6790 001A36F0 C0 03 00 04 */ lfs f0, 4(r3) +/* 801A6794 001A36F4 D0 01 01 08 */ stfs f0, 0x108(r1) +/* 801A6798 001A36F8 C0 03 00 08 */ lfs f0, 8(r3) +/* 801A679C 001A36FC D0 01 01 0C */ stfs f0, 0x10c(r1) +/* 801A67A0 001A3700 80 7D 0A B0 */ lwz r3, 0xab0(r29) +/* 801A67A4 001A3704 81 83 00 00 */ lwz r12, 0(r3) +/* 801A67A8 001A3708 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 801A67AC 001A370C 7D 89 03 A6 */ mtctr r12 +/* 801A67B0 001A3710 4E 80 04 21 */ bctrl +/* 801A67B4 001A3714 80 7D 00 64 */ lwz r3, 0x64(r29) +/* 801A67B8 001A3718 38 81 00 F8 */ addi r4, r1, 0xf8 +/* 801A67BC 001A371C C0 03 00 00 */ lfs f0, 0(r3) +/* 801A67C0 001A3720 D0 01 00 F8 */ stfs f0, 0xf8(r1) +/* 801A67C4 001A3724 C0 03 00 04 */ lfs f0, 4(r3) +/* 801A67C8 001A3728 D0 01 00 FC */ stfs f0, 0xfc(r1) +/* 801A67CC 001A372C C0 03 00 08 */ lfs f0, 8(r3) +/* 801A67D0 001A3730 D0 01 01 00 */ stfs f0, 0x100(r1) +/* 801A67D4 001A3734 80 7D 0A C4 */ lwz r3, 0xac4(r29) +/* 801A67D8 001A3738 81 83 00 00 */ lwz r12, 0(r3) +/* 801A67DC 001A373C 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 801A67E0 001A3740 7D 89 03 A6 */ mtctr r12 +/* 801A67E4 001A3744 4E 80 04 21 */ bctrl +/* 801A67E8 001A3748 80 7D 00 64 */ lwz r3, 0x64(r29) +/* 801A67EC 001A374C 38 81 00 EC */ addi r4, r1, 0xec +/* 801A67F0 001A3750 C0 03 00 00 */ lfs f0, 0(r3) +/* 801A67F4 001A3754 D0 01 00 EC */ stfs f0, 0xec(r1) +/* 801A67F8 001A3758 C0 03 00 04 */ lfs f0, 4(r3) +/* 801A67FC 001A375C D0 01 00 F0 */ stfs f0, 0xf0(r1) +/* 801A6800 001A3760 C0 03 00 08 */ lfs f0, 8(r3) +/* 801A6804 001A3764 D0 01 00 F4 */ stfs f0, 0xf4(r1) +/* 801A6808 001A3768 80 7D 0A D8 */ lwz r3, 0xad8(r29) +/* 801A680C 001A376C 81 83 00 00 */ lwz r12, 0(r3) +/* 801A6810 001A3770 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 801A6814 001A3774 7D 89 03 A6 */ mtctr r12 +/* 801A6818 001A3778 4E 80 04 21 */ bctrl +/* 801A681C 001A377C 80 9D 04 50 */ lwz r4, 0x450(r29) +/* 801A6820 001A3780 38 A0 00 01 */ li r5, 1 +/* 801A6824 001A3784 7F A3 EB 78 */ mr r3, r29 +/* 801A6828 001A3788 88 04 02 D8 */ lbz r0, 0x2d8(r4) +/* 801A682C 001A378C 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 801A6830 001A3790 98 04 02 D8 */ stb r0, 0x2d8(r4) +/* 801A6834 001A3794 4B ED 10 61 */ bl MakeThermalColdAndHot__10CPatternedFv +/* 801A6838 001A3798 88 1D 03 28 */ lbz r0, 0x328(r29) +/* 801A683C 001A379C 38 60 00 01 */ li r3, 1 +/* 801A6840 001A37A0 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f +/* 801A6844 001A37A4 34 A1 01 54 */ addic. r5, r1, 0x154 +/* 801A6848 001A37A8 98 1D 03 28 */ stb r0, 0x328(r29) +/* 801A684C 001A37AC 41 82 00 58 */ beq lbl_801A68A4 +/* 801A6850 001A37B0 80 C5 00 00 */ lwz r6, 0(r5) +/* 801A6854 001A37B4 38 60 00 00 */ li r3, 0 +/* 801A6858 001A37B8 2C 06 00 00 */ cmpwi r6, 0 +/* 801A685C 001A37BC 40 81 00 40 */ ble lbl_801A689C +/* 801A6860 001A37C0 2C 06 00 08 */ cmpwi r6, 8 +/* 801A6864 001A37C4 38 86 FF F8 */ addi r4, r6, -8 +/* 801A6868 001A37C8 40 81 00 20 */ ble lbl_801A6888 +/* 801A686C 001A37CC 38 04 00 07 */ addi r0, r4, 7 +/* 801A6870 001A37D0 54 00 E8 FE */ srwi r0, r0, 3 +/* 801A6874 001A37D4 7C 09 03 A6 */ mtctr r0 +/* 801A6878 001A37D8 2C 04 00 00 */ cmpwi r4, 0 +/* 801A687C 001A37DC 40 81 00 0C */ ble lbl_801A6888 +lbl_801A6880: +/* 801A6880 001A37E0 38 63 00 08 */ addi r3, r3, 8 +/* 801A6884 001A37E4 42 00 FF FC */ bdnz lbl_801A6880 +lbl_801A6888: +/* 801A6888 001A37E8 7C 03 30 50 */ subf r0, r3, r6 +/* 801A688C 001A37EC 7C 09 03 A6 */ mtctr r0 +/* 801A6890 001A37F0 7C 03 30 00 */ cmpw r3, r6 +/* 801A6894 001A37F4 40 80 00 08 */ bge lbl_801A689C +lbl_801A6898: +/* 801A6898 001A37F8 42 00 00 00 */ bdnz lbl_801A6898 +lbl_801A689C: +/* 801A689C 001A37FC 38 00 00 00 */ li r0, 0 +/* 801A68A0 001A3800 90 05 00 00 */ stw r0, 0(r5) +lbl_801A68A4: +/* 801A68A4 001A3804 80 01 01 B4 */ lwz r0, 0x1b4(r1) +/* 801A68A8 001A3808 7F A3 EB 78 */ mr r3, r29 +/* 801A68AC 001A380C 83 E1 01 AC */ lwz r31, 0x1ac(r1) +/* 801A68B0 001A3810 83 C1 01 A8 */ lwz r30, 0x1a8(r1) +/* 801A68B4 001A3814 83 A1 01 A4 */ lwz r29, 0x1a4(r1) +/* 801A68B8 001A3818 83 81 01 A0 */ lwz r28, 0x1a0(r1) +/* 801A68BC 001A381C 7C 08 03 A6 */ mtlr r0 +/* 801A68C0 001A3820 38 21 01 B0 */ addi r1, r1, 0x1b0 +/* 801A68C4 001A3824 4E 80 00 20 */ blr + +.global __ct__16CIceSheegothDataFR16CIceSheegothData +__ct__16CIceSheegothDataFR16CIceSheegothData: +/* 801A68C8 001A3828 C0 04 00 00 */ lfs f0, 0(r4) +/* 801A68CC 001A382C D0 03 00 00 */ stfs f0, 0(r3) +/* 801A68D0 001A3830 C0 04 00 04 */ lfs f0, 4(r4) +/* 801A68D4 001A3834 D0 03 00 04 */ stfs f0, 4(r3) +/* 801A68D8 001A3838 C0 04 00 08 */ lfs f0, 8(r4) +/* 801A68DC 001A383C D0 03 00 08 */ stfs f0, 8(r3) +/* 801A68E0 001A3840 C0 04 00 0C */ lfs f0, 0xc(r4) +/* 801A68E4 001A3844 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 801A68E8 001A3848 C0 04 00 10 */ lfs f0, 0x10(r4) +/* 801A68EC 001A384C D0 03 00 10 */ stfs f0, 0x10(r3) +/* 801A68F0 001A3850 C0 04 00 14 */ lfs f0, 0x14(r4) +/* 801A68F4 001A3854 D0 03 00 14 */ stfs f0, 0x14(r3) +/* 801A68F8 001A3858 80 A4 00 18 */ lwz r5, 0x18(r4) +/* 801A68FC 001A385C 80 04 00 1C */ lwz r0, 0x1c(r4) +/* 801A6900 001A3860 90 A3 00 18 */ stw r5, 0x18(r3) +/* 801A6904 001A3864 90 03 00 1C */ stw r0, 0x1c(r3) +/* 801A6908 001A3868 80 A4 00 20 */ lwz r5, 0x20(r4) +/* 801A690C 001A386C 80 04 00 24 */ lwz r0, 0x24(r4) +/* 801A6910 001A3870 90 A3 00 20 */ stw r5, 0x20(r3) +/* 801A6914 001A3874 90 03 00 24 */ stw r0, 0x24(r3) +/* 801A6918 001A3878 80 A4 00 28 */ lwz r5, 0x28(r4) +/* 801A691C 001A387C 80 04 00 2C */ lwz r0, 0x2c(r4) +/* 801A6920 001A3880 90 A3 00 28 */ stw r5, 0x28(r3) +/* 801A6924 001A3884 90 03 00 2C */ stw r0, 0x2c(r3) +/* 801A6928 001A3888 80 A4 00 30 */ lwz r5, 0x30(r4) +/* 801A692C 001A388C 80 04 00 34 */ lwz r0, 0x34(r4) +/* 801A6930 001A3890 90 A3 00 30 */ stw r5, 0x30(r3) +/* 801A6934 001A3894 90 03 00 34 */ stw r0, 0x34(r3) +/* 801A6938 001A3898 80 A4 00 38 */ lwz r5, 0x38(r4) +/* 801A693C 001A389C 80 04 00 3C */ lwz r0, 0x3c(r4) +/* 801A6940 001A38A0 90 A3 00 38 */ stw r5, 0x38(r3) +/* 801A6944 001A38A4 90 03 00 3C */ stw r0, 0x3c(r3) +/* 801A6948 001A38A8 80 A4 00 40 */ lwz r5, 0x40(r4) +/* 801A694C 001A38AC 80 04 00 44 */ lwz r0, 0x44(r4) +/* 801A6950 001A38B0 90 A3 00 40 */ stw r5, 0x40(r3) +/* 801A6954 001A38B4 90 03 00 44 */ stw r0, 0x44(r3) +/* 801A6958 001A38B8 80 A4 00 48 */ lwz r5, 0x48(r4) +/* 801A695C 001A38BC 80 04 00 4C */ lwz r0, 0x4c(r4) +/* 801A6960 001A38C0 90 A3 00 48 */ stw r5, 0x48(r3) +/* 801A6964 001A38C4 90 03 00 4C */ stw r0, 0x4c(r3) +/* 801A6968 001A38C8 80 04 00 50 */ lwz r0, 0x50(r4) +/* 801A696C 001A38CC 90 03 00 50 */ stw r0, 0x50(r3) +/* 801A6970 001A38D0 80 A4 00 54 */ lwz r5, 0x54(r4) +/* 801A6974 001A38D4 80 04 00 58 */ lwz r0, 0x58(r4) +/* 801A6978 001A38D8 90 A3 00 54 */ stw r5, 0x54(r3) +/* 801A697C 001A38DC 90 03 00 58 */ stw r0, 0x58(r3) +/* 801A6980 001A38E0 80 A4 00 5C */ lwz r5, 0x5c(r4) +/* 801A6984 001A38E4 80 04 00 60 */ lwz r0, 0x60(r4) +/* 801A6988 001A38E8 90 A3 00 5C */ stw r5, 0x5c(r3) +/* 801A698C 001A38EC 90 03 00 60 */ stw r0, 0x60(r3) +/* 801A6990 001A38F0 80 A4 00 64 */ lwz r5, 0x64(r4) +/* 801A6994 001A38F4 80 04 00 68 */ lwz r0, 0x68(r4) +/* 801A6998 001A38F8 90 A3 00 64 */ stw r5, 0x64(r3) +/* 801A699C 001A38FC 90 03 00 68 */ stw r0, 0x68(r3) +/* 801A69A0 001A3900 80 A4 00 6C */ lwz r5, 0x6c(r4) +/* 801A69A4 001A3904 80 04 00 70 */ lwz r0, 0x70(r4) +/* 801A69A8 001A3908 90 A3 00 6C */ stw r5, 0x6c(r3) +/* 801A69AC 001A390C 90 03 00 70 */ stw r0, 0x70(r3) +/* 801A69B0 001A3910 80 04 00 74 */ lwz r0, 0x74(r4) +/* 801A69B4 001A3914 90 03 00 74 */ stw r0, 0x74(r3) +/* 801A69B8 001A3918 80 04 00 78 */ lwz r0, 0x78(r4) +/* 801A69BC 001A391C 90 03 00 78 */ stw r0, 0x78(r3) +/* 801A69C0 001A3920 80 04 00 7C */ lwz r0, 0x7c(r4) +/* 801A69C4 001A3924 90 03 00 7C */ stw r0, 0x7c(r3) +/* 801A69C8 001A3928 80 A4 00 80 */ lwz r5, 0x80(r4) +/* 801A69CC 001A392C 80 04 00 84 */ lwz r0, 0x84(r4) +/* 801A69D0 001A3930 90 A3 00 80 */ stw r5, 0x80(r3) +/* 801A69D4 001A3934 90 03 00 84 */ stw r0, 0x84(r3) +/* 801A69D8 001A3938 80 A4 00 88 */ lwz r5, 0x88(r4) +/* 801A69DC 001A393C 80 04 00 8C */ lwz r0, 0x8c(r4) +/* 801A69E0 001A3940 90 A3 00 88 */ stw r5, 0x88(r3) +/* 801A69E4 001A3944 90 03 00 8C */ stw r0, 0x8c(r3) +/* 801A69E8 001A3948 80 A4 00 90 */ lwz r5, 0x90(r4) +/* 801A69EC 001A394C 80 04 00 94 */ lwz r0, 0x94(r4) +/* 801A69F0 001A3950 90 A3 00 90 */ stw r5, 0x90(r3) +/* 801A69F4 001A3954 90 03 00 94 */ stw r0, 0x94(r3) +/* 801A69F8 001A3958 80 A4 00 98 */ lwz r5, 0x98(r4) +/* 801A69FC 001A395C 80 04 00 9C */ lwz r0, 0x9c(r4) +/* 801A6A00 001A3960 90 A3 00 98 */ stw r5, 0x98(r3) +/* 801A6A04 001A3964 90 03 00 9C */ stw r0, 0x9c(r3) +/* 801A6A08 001A3968 80 A4 00 A0 */ lwz r5, 0xa0(r4) +/* 801A6A0C 001A396C 80 04 00 A4 */ lwz r0, 0xa4(r4) +/* 801A6A10 001A3970 90 A3 00 A0 */ stw r5, 0xa0(r3) +/* 801A6A14 001A3974 90 03 00 A4 */ stw r0, 0xa4(r3) +/* 801A6A18 001A3978 80 A4 00 A8 */ lwz r5, 0xa8(r4) +/* 801A6A1C 001A397C 80 04 00 AC */ lwz r0, 0xac(r4) +/* 801A6A20 001A3980 90 A3 00 A8 */ stw r5, 0xa8(r3) +/* 801A6A24 001A3984 90 03 00 AC */ stw r0, 0xac(r3) +/* 801A6A28 001A3988 80 A4 00 B0 */ lwz r5, 0xb0(r4) +/* 801A6A2C 001A398C 80 04 00 B4 */ lwz r0, 0xb4(r4) +/* 801A6A30 001A3990 90 A3 00 B0 */ stw r5, 0xb0(r3) +/* 801A6A34 001A3994 90 03 00 B4 */ stw r0, 0xb4(r3) +/* 801A6A38 001A3998 80 04 00 B8 */ lwz r0, 0xb8(r4) +/* 801A6A3C 001A399C 90 03 00 B8 */ stw r0, 0xb8(r3) +/* 801A6A40 001A39A0 80 A4 00 BC */ lwz r5, 0xbc(r4) +/* 801A6A44 001A39A4 80 04 00 C0 */ lwz r0, 0xc0(r4) +/* 801A6A48 001A39A8 90 A3 00 BC */ stw r5, 0xbc(r3) +/* 801A6A4C 001A39AC 90 03 00 C0 */ stw r0, 0xc0(r3) +/* 801A6A50 001A39B0 80 A4 00 C4 */ lwz r5, 0xc4(r4) +/* 801A6A54 001A39B4 80 04 00 C8 */ lwz r0, 0xc8(r4) +/* 801A6A58 001A39B8 90 A3 00 C4 */ stw r5, 0xc4(r3) +/* 801A6A5C 001A39BC 90 03 00 C8 */ stw r0, 0xc8(r3) +/* 801A6A60 001A39C0 80 A4 00 CC */ lwz r5, 0xcc(r4) +/* 801A6A64 001A39C4 80 04 00 D0 */ lwz r0, 0xd0(r4) +/* 801A6A68 001A39C8 90 A3 00 CC */ stw r5, 0xcc(r3) +/* 801A6A6C 001A39CC 90 03 00 D0 */ stw r0, 0xd0(r3) +/* 801A6A70 001A39D0 80 A4 00 D4 */ lwz r5, 0xd4(r4) +/* 801A6A74 001A39D4 80 04 00 D8 */ lwz r0, 0xd8(r4) +/* 801A6A78 001A39D8 90 A3 00 D4 */ stw r5, 0xd4(r3) +/* 801A6A7C 001A39DC 90 03 00 D8 */ stw r0, 0xd8(r3) +/* 801A6A80 001A39E0 80 04 00 DC */ lwz r0, 0xdc(r4) +/* 801A6A84 001A39E4 90 03 00 DC */ stw r0, 0xdc(r3) +/* 801A6A88 001A39E8 80 04 00 E0 */ lwz r0, 0xe0(r4) +/* 801A6A8C 001A39EC 90 03 00 E0 */ stw r0, 0xe0(r3) +/* 801A6A90 001A39F0 80 04 00 E4 */ lwz r0, 0xe4(r4) +/* 801A6A94 001A39F4 90 03 00 E4 */ stw r0, 0xe4(r3) +/* 801A6A98 001A39F8 80 A4 00 E8 */ lwz r5, 0xe8(r4) +/* 801A6A9C 001A39FC 80 04 00 EC */ lwz r0, 0xec(r4) +/* 801A6AA0 001A3A00 90 A3 00 E8 */ stw r5, 0xe8(r3) +/* 801A6AA4 001A3A04 90 03 00 EC */ stw r0, 0xec(r3) +/* 801A6AA8 001A3A08 80 A4 00 F0 */ lwz r5, 0xf0(r4) +/* 801A6AAC 001A3A0C 80 04 00 F4 */ lwz r0, 0xf4(r4) +/* 801A6AB0 001A3A10 90 A3 00 F0 */ stw r5, 0xf0(r3) +/* 801A6AB4 001A3A14 90 03 00 F4 */ stw r0, 0xf4(r3) +/* 801A6AB8 001A3A18 80 A4 00 F8 */ lwz r5, 0xf8(r4) +/* 801A6ABC 001A3A1C 80 04 00 FC */ lwz r0, 0xfc(r4) +/* 801A6AC0 001A3A20 90 A3 00 F8 */ stw r5, 0xf8(r3) +/* 801A6AC4 001A3A24 90 03 00 FC */ stw r0, 0xfc(r3) +/* 801A6AC8 001A3A28 80 A4 01 00 */ lwz r5, 0x100(r4) +/* 801A6ACC 001A3A2C 80 04 01 04 */ lwz r0, 0x104(r4) +/* 801A6AD0 001A3A30 90 A3 01 00 */ stw r5, 0x100(r3) +/* 801A6AD4 001A3A34 90 03 01 04 */ stw r0, 0x104(r3) +/* 801A6AD8 001A3A38 80 A4 01 08 */ lwz r5, 0x108(r4) +/* 801A6ADC 001A3A3C 80 04 01 0C */ lwz r0, 0x10c(r4) +/* 801A6AE0 001A3A40 90 A3 01 08 */ stw r5, 0x108(r3) +/* 801A6AE4 001A3A44 90 03 01 0C */ stw r0, 0x10c(r3) +/* 801A6AE8 001A3A48 80 A4 01 10 */ lwz r5, 0x110(r4) +/* 801A6AEC 001A3A4C 80 04 01 14 */ lwz r0, 0x114(r4) +/* 801A6AF0 001A3A50 90 A3 01 10 */ stw r5, 0x110(r3) +/* 801A6AF4 001A3A54 90 03 01 14 */ stw r0, 0x114(r3) +/* 801A6AF8 001A3A58 80 A4 01 18 */ lwz r5, 0x118(r4) +/* 801A6AFC 001A3A5C 80 04 01 1C */ lwz r0, 0x11c(r4) +/* 801A6B00 001A3A60 90 A3 01 18 */ stw r5, 0x118(r3) +/* 801A6B04 001A3A64 90 03 01 1C */ stw r0, 0x11c(r3) +/* 801A6B08 001A3A68 80 04 01 20 */ lwz r0, 0x120(r4) +/* 801A6B0C 001A3A6C 90 03 01 20 */ stw r0, 0x120(r3) +/* 801A6B10 001A3A70 80 A4 01 24 */ lwz r5, 0x124(r4) +/* 801A6B14 001A3A74 80 04 01 28 */ lwz r0, 0x128(r4) +/* 801A6B18 001A3A78 90 A3 01 24 */ stw r5, 0x124(r3) +/* 801A6B1C 001A3A7C 90 03 01 28 */ stw r0, 0x128(r3) +/* 801A6B20 001A3A80 80 A4 01 2C */ lwz r5, 0x12c(r4) +/* 801A6B24 001A3A84 80 04 01 30 */ lwz r0, 0x130(r4) +/* 801A6B28 001A3A88 90 A3 01 2C */ stw r5, 0x12c(r3) +/* 801A6B2C 001A3A8C 90 03 01 30 */ stw r0, 0x130(r3) +/* 801A6B30 001A3A90 80 A4 01 34 */ lwz r5, 0x134(r4) +/* 801A6B34 001A3A94 80 04 01 38 */ lwz r0, 0x138(r4) +/* 801A6B38 001A3A98 90 A3 01 34 */ stw r5, 0x134(r3) +/* 801A6B3C 001A3A9C 90 03 01 38 */ stw r0, 0x138(r3) +/* 801A6B40 001A3AA0 80 A4 01 3C */ lwz r5, 0x13c(r4) +/* 801A6B44 001A3AA4 80 04 01 40 */ lwz r0, 0x140(r4) +/* 801A6B48 001A3AA8 90 A3 01 3C */ stw r5, 0x13c(r3) +/* 801A6B4C 001A3AAC 90 03 01 40 */ stw r0, 0x140(r3) +/* 801A6B50 001A3AB0 80 04 01 44 */ lwz r0, 0x144(r4) +/* 801A6B54 001A3AB4 90 03 01 44 */ stw r0, 0x144(r3) +/* 801A6B58 001A3AB8 80 04 01 48 */ lwz r0, 0x148(r4) +/* 801A6B5C 001A3ABC 90 03 01 48 */ stw r0, 0x148(r3) +/* 801A6B60 001A3AC0 80 04 01 4C */ lwz r0, 0x14c(r4) +/* 801A6B64 001A3AC4 90 03 01 4C */ stw r0, 0x14c(r3) +/* 801A6B68 001A3AC8 80 04 01 50 */ lwz r0, 0x150(r4) +/* 801A6B6C 001A3ACC 90 03 01 50 */ stw r0, 0x150(r3) +/* 801A6B70 001A3AD0 80 04 01 54 */ lwz r0, 0x154(r4) +/* 801A6B74 001A3AD4 90 03 01 54 */ stw r0, 0x154(r3) +/* 801A6B78 001A3AD8 88 04 01 58 */ lbz r0, 0x158(r4) +/* 801A6B7C 001A3ADC 98 03 01 58 */ stb r0, 0x158(r3) +/* 801A6B80 001A3AE0 C0 04 01 5C */ lfs f0, 0x15c(r4) +/* 801A6B84 001A3AE4 D0 03 01 5C */ stfs f0, 0x15c(r3) +/* 801A6B88 001A3AE8 C0 04 01 60 */ lfs f0, 0x160(r4) +/* 801A6B8C 001A3AEC D0 03 01 60 */ stfs f0, 0x160(r3) +/* 801A6B90 001A3AF0 C0 04 01 64 */ lfs f0, 0x164(r4) +/* 801A6B94 001A3AF4 D0 03 01 64 */ stfs f0, 0x164(r3) +/* 801A6B98 001A3AF8 C0 04 01 68 */ lfs f0, 0x168(r4) +/* 801A6B9C 001A3AFC D0 03 01 68 */ stfs f0, 0x168(r3) +/* 801A6BA0 001A3B00 88 04 01 6C */ lbz r0, 0x16c(r4) +/* 801A6BA4 001A3B04 98 03 01 6C */ stb r0, 0x16c(r3) +/* 801A6BA8 001A3B08 C0 04 01 70 */ lfs f0, 0x170(r4) +/* 801A6BAC 001A3B0C D0 03 01 70 */ stfs f0, 0x170(r3) +/* 801A6BB0 001A3B10 C0 04 01 74 */ lfs f0, 0x174(r4) +/* 801A6BB4 001A3B14 D0 03 01 74 */ stfs f0, 0x174(r3) +/* 801A6BB8 001A3B18 80 04 01 78 */ lwz r0, 0x178(r4) +/* 801A6BBC 001A3B1C 90 03 01 78 */ stw r0, 0x178(r3) +/* 801A6BC0 001A3B20 80 04 01 7C */ lwz r0, 0x17c(r4) +/* 801A6BC4 001A3B24 90 03 01 7C */ stw r0, 0x17c(r3) +/* 801A6BC8 001A3B28 80 04 01 80 */ lwz r0, 0x180(r4) +/* 801A6BCC 001A3B2C 90 03 01 80 */ stw r0, 0x180(r3) +/* 801A6BD0 001A3B30 88 04 01 84 */ lbz r0, 0x184(r4) +/* 801A6BD4 001A3B34 98 03 01 84 */ stb r0, 0x184(r3) +/* 801A6BD8 001A3B38 C0 04 01 88 */ lfs f0, 0x188(r4) +/* 801A6BDC 001A3B3C D0 03 01 88 */ stfs f0, 0x188(r3) +/* 801A6BE0 001A3B40 C0 04 01 8C */ lfs f0, 0x18c(r4) +/* 801A6BE4 001A3B44 D0 03 01 8C */ stfs f0, 0x18c(r3) +/* 801A6BE8 001A3B48 C0 04 01 90 */ lfs f0, 0x190(r4) +/* 801A6BEC 001A3B4C D0 03 01 90 */ stfs f0, 0x190(r3) +/* 801A6BF0 001A3B50 C0 04 01 94 */ lfs f0, 0x194(r4) +/* 801A6BF4 001A3B54 D0 03 01 94 */ stfs f0, 0x194(r3) +/* 801A6BF8 001A3B58 88 04 01 98 */ lbz r0, 0x198(r4) +/* 801A6BFC 001A3B5C 98 03 01 98 */ stb r0, 0x198(r3) +/* 801A6C00 001A3B60 80 04 01 9C */ lwz r0, 0x19c(r4) +/* 801A6C04 001A3B64 90 03 01 9C */ stw r0, 0x19c(r3) +/* 801A6C08 001A3B68 80 04 01 A0 */ lwz r0, 0x1a0(r4) +/* 801A6C0C 001A3B6C 90 03 01 A0 */ stw r0, 0x1a0(r3) +/* 801A6C10 001A3B70 80 04 01 A4 */ lwz r0, 0x1a4(r4) +/* 801A6C14 001A3B74 90 03 01 A4 */ stw r0, 0x1a4(r3) +/* 801A6C18 001A3B78 80 04 01 A8 */ lwz r0, 0x1a8(r4) +/* 801A6C1C 001A3B7C 90 03 01 A8 */ stw r0, 0x1a8(r3) +/* 801A6C20 001A3B80 80 04 01 AC */ lwz r0, 0x1ac(r4) +/* 801A6C24 001A3B84 90 03 01 AC */ stw r0, 0x1ac(r3) +/* 801A6C28 001A3B88 C0 04 01 B0 */ lfs f0, 0x1b0(r4) +/* 801A6C2C 001A3B8C D0 03 01 B0 */ stfs f0, 0x1b0(r3) +/* 801A6C30 001A3B90 C0 04 01 B4 */ lfs f0, 0x1b4(r4) +/* 801A6C34 001A3B94 D0 03 01 B4 */ stfs f0, 0x1b4(r3) +/* 801A6C38 001A3B98 80 04 01 B8 */ lwz r0, 0x1b8(r4) +/* 801A6C3C 001A3B9C 90 03 01 B8 */ stw r0, 0x1b8(r3) +/* 801A6C40 001A3BA0 88 04 01 BC */ lbz r0, 0x1bc(r4) +/* 801A6C44 001A3BA4 98 03 01 BC */ stb r0, 0x1bc(r3) +/* 801A6C48 001A3BA8 C0 04 01 C0 */ lfs f0, 0x1c0(r4) +/* 801A6C4C 001A3BAC D0 03 01 C0 */ stfs f0, 0x1c0(r3) +/* 801A6C50 001A3BB0 C0 04 01 C4 */ lfs f0, 0x1c4(r4) +/* 801A6C54 001A3BB4 D0 03 01 C4 */ stfs f0, 0x1c4(r3) +/* 801A6C58 001A3BB8 C0 04 01 C8 */ lfs f0, 0x1c8(r4) +/* 801A6C5C 001A3BBC D0 03 01 C8 */ stfs f0, 0x1c8(r3) +/* 801A6C60 001A3BC0 C0 04 01 CC */ lfs f0, 0x1cc(r4) +/* 801A6C64 001A3BC4 D0 03 01 CC */ stfs f0, 0x1cc(r3) +/* 801A6C68 001A3BC8 88 04 01 D0 */ lbz r0, 0x1d0(r4) +/* 801A6C6C 001A3BCC 98 03 01 D0 */ stb r0, 0x1d0(r3) +/* 801A6C70 001A3BD0 A0 04 01 D4 */ lhz r0, 0x1d4(r4) +/* 801A6C74 001A3BD4 B0 03 01 D4 */ sth r0, 0x1d4(r3) +/* 801A6C78 001A3BD8 C0 04 01 D8 */ lfs f0, 0x1d8(r4) +/* 801A6C7C 001A3BDC D0 03 01 D8 */ stfs f0, 0x1d8(r3) +/* 801A6C80 001A3BE0 C0 04 01 DC */ lfs f0, 0x1dc(r4) +/* 801A6C84 001A3BE4 D0 03 01 DC */ stfs f0, 0x1dc(r3) +/* 801A6C88 001A3BE8 C0 04 01 E0 */ lfs f0, 0x1e0(r4) +/* 801A6C8C 001A3BEC D0 03 01 E0 */ stfs f0, 0x1e0(r3) +/* 801A6C90 001A3BF0 80 04 01 E4 */ lwz r0, 0x1e4(r4) +/* 801A6C94 001A3BF4 90 03 01 E4 */ stw r0, 0x1e4(r3) +/* 801A6C98 001A3BF8 A0 04 01 E8 */ lhz r0, 0x1e8(r4) +/* 801A6C9C 001A3BFC B0 03 01 E8 */ sth r0, 0x1e8(r3) +/* 801A6CA0 001A3C00 80 04 01 EC */ lwz r0, 0x1ec(r4) +/* 801A6CA4 001A3C04 90 03 01 EC */ stw r0, 0x1ec(r3) +/* 801A6CA8 001A3C08 88 04 01 F0 */ lbz r0, 0x1f0(r4) +/* 801A6CAC 001A3C0C 98 03 01 F0 */ stb r0, 0x1f0(r3) +/* 801A6CB0 001A3C10 4E 80 00 20 */ blr + +.global __ct__16CIceSheegothDataFR12CInputStreami +__ct__16CIceSheegothDataFR12CInputStreami: +/* 801A6CB4 001A3C14 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801A6CB8 001A3C18 7C 08 02 A6 */ mflr r0 +/* 801A6CBC 001A3C1C 90 01 00 24 */ stw r0, 0x24(r1) +/* 801A6CC0 001A3C20 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801A6CC4 001A3C24 7C 9F 23 78 */ mr r31, r4 +/* 801A6CC8 001A3C28 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801A6CCC 001A3C2C 7C 7E 1B 78 */ mr r30, r3 +/* 801A6CD0 001A3C30 7F E3 FB 78 */ mr r3, r31 +/* 801A6CD4 001A3C34 48 19 7F 55 */ bl ReadFloat__12CInputStreamFv +/* 801A6CD8 001A3C38 C0 02 A7 F4 */ lfs f0, lbl_805AC514@sda21(r2) +/* 801A6CDC 001A3C3C 7F E3 FB 78 */ mr r3, r31 +/* 801A6CE0 001A3C40 EC 00 00 72 */ fmuls f0, f0, f1 +/* 801A6CE4 001A3C44 D0 1E 00 00 */ stfs f0, 0(r30) +/* 801A6CE8 001A3C48 48 19 7F 41 */ bl ReadFloat__12CInputStreamFv +/* 801A6CEC 001A3C4C C0 02 A7 F4 */ lfs f0, lbl_805AC514@sda21(r2) +/* 801A6CF0 001A3C50 7F E4 FB 78 */ mr r4, r31 +/* 801A6CF4 001A3C54 38 61 00 08 */ addi r3, r1, 8 +/* 801A6CF8 001A3C58 EC 00 00 72 */ fmuls f0, f0, f1 +/* 801A6CFC 001A3C5C D0 1E 00 04 */ stfs f0, 4(r30) +/* 801A6D00 001A3C60 48 16 DE 8D */ bl __ct__9CVector3fFR12CInputStream +/* 801A6D04 001A3C64 C0 01 00 08 */ lfs f0, 8(r1) +/* 801A6D08 001A3C68 7F E3 FB 78 */ mr r3, r31 +/* 801A6D0C 001A3C6C D0 1E 00 08 */ stfs f0, 8(r30) +/* 801A6D10 001A3C70 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 801A6D14 001A3C74 D0 1E 00 0C */ stfs f0, 0xc(r30) +/* 801A6D18 001A3C78 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 801A6D1C 001A3C7C D0 1E 00 10 */ stfs f0, 0x10(r30) +/* 801A6D20 001A3C80 48 19 7F 09 */ bl ReadFloat__12CInputStreamFv +/* 801A6D24 001A3C84 D0 3E 00 14 */ stfs f1, 0x14(r30) +/* 801A6D28 001A3C88 7F E4 FB 78 */ mr r4, r31 +/* 801A6D2C 001A3C8C 38 7E 00 18 */ addi r3, r30, 0x18 +/* 801A6D30 001A3C90 4B F5 BE 29 */ bl __ct__20CDamageVulnerabilityFR12CInputStream +/* 801A6D34 001A3C94 7F E4 FB 78 */ mr r4, r31 +/* 801A6D38 001A3C98 38 7E 00 80 */ addi r3, r30, 0x80 +/* 801A6D3C 001A3C9C 4B F5 BE 1D */ bl __ct__20CDamageVulnerabilityFR12CInputStream +/* 801A6D40 001A3CA0 7F E4 FB 78 */ mr r4, r31 +/* 801A6D44 001A3CA4 38 7E 00 E8 */ addi r3, r30, 0xe8 +/* 801A6D48 001A3CA8 4B F5 BE 11 */ bl __ct__20CDamageVulnerabilityFR12CInputStream +/* 801A6D4C 001A3CAC 7F E3 FB 78 */ mr r3, r31 +/* 801A6D50 001A3CB0 48 19 7F 35 */ bl ReadLong__12CInputStreamFv +/* 801A6D54 001A3CB4 90 7E 01 50 */ stw r3, 0x150(r30) +/* 801A6D58 001A3CB8 7F E4 FB 78 */ mr r4, r31 +/* 801A6D5C 001A3CBC 38 7E 01 54 */ addi r3, r30, 0x154 +/* 801A6D60 001A3CC0 4B F1 C8 01 */ bl __ct__11CDamageInfoFR12CInputStream +/* 801A6D64 001A3CC4 7F E3 FB 78 */ mr r3, r31 +/* 801A6D68 001A3CC8 48 19 7E C1 */ bl ReadFloat__12CInputStreamFv +/* 801A6D6C 001A3CCC D0 3E 01 70 */ stfs f1, 0x170(r30) +/* 801A6D70 001A3CD0 7F E3 FB 78 */ mr r3, r31 +/* 801A6D74 001A3CD4 48 19 7E B5 */ bl ReadFloat__12CInputStreamFv +/* 801A6D78 001A3CD8 D0 3E 01 74 */ stfs f1, 0x174(r30) +/* 801A6D7C 001A3CDC 7F E3 FB 78 */ mr r3, r31 +/* 801A6D80 001A3CE0 48 19 7F 05 */ bl ReadLong__12CInputStreamFv +/* 801A6D84 001A3CE4 90 7E 01 78 */ stw r3, 0x178(r30) +/* 801A6D88 001A3CE8 7F E3 FB 78 */ mr r3, r31 +/* 801A6D8C 001A3CEC 48 19 7E F9 */ bl ReadLong__12CInputStreamFv +/* 801A6D90 001A3CF0 90 7E 01 7C */ stw r3, 0x17c(r30) +/* 801A6D94 001A3CF4 7F E4 FB 78 */ mr r4, r31 +/* 801A6D98 001A3CF8 38 7E 01 80 */ addi r3, r30, 0x180 +/* 801A6D9C 001A3CFC 4B F1 C7 C5 */ bl __ct__11CDamageInfoFR12CInputStream +/* 801A6DA0 001A3D00 7F E3 FB 78 */ mr r3, r31 +/* 801A6DA4 001A3D04 48 19 7E E1 */ bl ReadLong__12CInputStreamFv +/* 801A6DA8 001A3D08 90 7E 01 9C */ stw r3, 0x19c(r30) +/* 801A6DAC 001A3D0C 7F E3 FB 78 */ mr r3, r31 +/* 801A6DB0 001A3D10 48 19 7E D5 */ bl ReadLong__12CInputStreamFv +/* 801A6DB4 001A3D14 90 7E 01 A0 */ stw r3, 0x1a0(r30) +/* 801A6DB8 001A3D18 7F E3 FB 78 */ mr r3, r31 +/* 801A6DBC 001A3D1C 48 19 7E C9 */ bl ReadLong__12CInputStreamFv +/* 801A6DC0 001A3D20 90 7E 01 A4 */ stw r3, 0x1a4(r30) +/* 801A6DC4 001A3D24 7F E3 FB 78 */ mr r3, r31 +/* 801A6DC8 001A3D28 48 19 7E BD */ bl ReadLong__12CInputStreamFv +/* 801A6DCC 001A3D2C 90 7E 01 A8 */ stw r3, 0x1a8(r30) +/* 801A6DD0 001A3D30 7F E3 FB 78 */ mr r3, r31 +/* 801A6DD4 001A3D34 48 19 7E B1 */ bl ReadLong__12CInputStreamFv +/* 801A6DD8 001A3D38 90 7E 01 AC */ stw r3, 0x1ac(r30) +/* 801A6DDC 001A3D3C 7F E3 FB 78 */ mr r3, r31 +/* 801A6DE0 001A3D40 48 19 7E 49 */ bl ReadFloat__12CInputStreamFv +/* 801A6DE4 001A3D44 D0 3E 01 B0 */ stfs f1, 0x1b0(r30) +/* 801A6DE8 001A3D48 7F E3 FB 78 */ mr r3, r31 +/* 801A6DEC 001A3D4C 48 19 7E 3D */ bl ReadFloat__12CInputStreamFv +/* 801A6DF0 001A3D50 D0 3E 01 B4 */ stfs f1, 0x1b4(r30) +/* 801A6DF4 001A3D54 7F E4 FB 78 */ mr r4, r31 +/* 801A6DF8 001A3D58 38 7E 01 B8 */ addi r3, r30, 0x1b8 +/* 801A6DFC 001A3D5C 4B F1 C7 65 */ bl __ct__11CDamageInfoFR12CInputStream +/* 801A6E00 001A3D60 7F E3 FB 78 */ mr r3, r31 +/* 801A6E04 001A3D64 48 19 7E 81 */ bl ReadLong__12CInputStreamFv +/* 801A6E08 001A3D68 54 63 04 3E */ clrlwi r3, r3, 0x10 +/* 801A6E0C 001A3D6C 48 14 1B A5 */ bl TranslateSFXID__11CSfxManagerFUs +/* 801A6E10 001A3D70 B0 7E 01 D4 */ sth r3, 0x1d4(r30) +/* 801A6E14 001A3D74 7F E3 FB 78 */ mr r3, r31 +/* 801A6E18 001A3D78 48 19 7E 11 */ bl ReadFloat__12CInputStreamFv +/* 801A6E1C 001A3D7C D0 3E 01 D8 */ stfs f1, 0x1d8(r30) +/* 801A6E20 001A3D80 7F E3 FB 78 */ mr r3, r31 +/* 801A6E24 001A3D84 48 19 7E 05 */ bl ReadFloat__12CInputStreamFv +/* 801A6E28 001A3D88 D0 3E 01 DC */ stfs f1, 0x1dc(r30) +/* 801A6E2C 001A3D8C 7F E3 FB 78 */ mr r3, r31 +/* 801A6E30 001A3D90 48 19 7D F9 */ bl ReadFloat__12CInputStreamFv +/* 801A6E34 001A3D94 D0 3E 01 E0 */ stfs f1, 0x1e0(r30) +/* 801A6E38 001A3D98 7F E3 FB 78 */ mr r3, r31 +/* 801A6E3C 001A3D9C 48 19 7E 49 */ bl ReadLong__12CInputStreamFv +/* 801A6E40 001A3DA0 90 7E 01 E4 */ stw r3, 0x1e4(r30) +/* 801A6E44 001A3DA4 7F E3 FB 78 */ mr r3, r31 +/* 801A6E48 001A3DA8 48 19 7E 3D */ bl ReadLong__12CInputStreamFv +/* 801A6E4C 001A3DAC 54 63 04 3E */ clrlwi r3, r3, 0x10 +/* 801A6E50 001A3DB0 48 14 1B 61 */ bl TranslateSFXID__11CSfxManagerFUs +/* 801A6E54 001A3DB4 B0 7E 01 E8 */ sth r3, 0x1e8(r30) +/* 801A6E58 001A3DB8 7F E3 FB 78 */ mr r3, r31 +/* 801A6E5C 001A3DBC 48 19 7E 29 */ bl ReadLong__12CInputStreamFv +/* 801A6E60 001A3DC0 90 7E 01 EC */ stw r3, 0x1ec(r30) +/* 801A6E64 001A3DC4 7F E3 FB 78 */ mr r3, r31 +/* 801A6E68 001A3DC8 48 19 7E 75 */ bl ReadBool__12CInputStreamFv +/* 801A6E6C 001A3DCC 88 1E 01 F0 */ lbz r0, 0x1f0(r30) +/* 801A6E70 001A3DD0 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801A6E74 001A3DD4 7F E3 FB 78 */ mr r3, r31 +/* 801A6E78 001A3DD8 98 1E 01 F0 */ stb r0, 0x1f0(r30) +/* 801A6E7C 001A3DDC 48 19 7E 61 */ bl ReadBool__12CInputStreamFv +/* 801A6E80 001A3DE0 88 1E 01 F0 */ lbz r0, 0x1f0(r30) +/* 801A6E84 001A3DE4 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801A6E88 001A3DE8 7F C3 F3 78 */ mr r3, r30 +/* 801A6E8C 001A3DEC 98 1E 01 F0 */ stb r0, 0x1f0(r30) +/* 801A6E90 001A3DF0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801A6E94 001A3DF4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801A6E98 001A3DF8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801A6E9C 001A3DFC 7C 08 03 A6 */ mtlr r0 +/* 801A6EA0 001A3E00 38 21 00 20 */ addi r1, r1, 0x20 +/* 801A6EA4 001A3E04 4E 80 00 20 */ blr + +.global __sinit_CIceSheegoth_cpp +__sinit_CIceSheegoth_cpp: +/* 801A6EA8 001A3E08 C0 02 A7 74 */ lfs f0, lbl_805AC494@sda21(r2) +/* 801A6EAC 001A3E0C 3C 60 80 57 */ lis r3, lbl_80572018@ha +/* 801A6EB0 001A3E10 D4 03 20 18 */ stfsu f0, lbl_80572018@l(r3) +/* 801A6EB4 001A3E14 D0 03 00 04 */ stfs f0, 4(r3) +/* 801A6EB8 001A3E18 D0 03 00 08 */ stfs f0, 8(r3) +/* 801A6EBC 001A3E1C 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Enemies/CJellyZap.s b/asm/Kyoto_CWD/Enemies/CJellyZap.s new file mode 100644 index 00000000..b71316d0 --- /dev/null +++ b/asm/Kyoto_CWD/Enemies/CJellyZap.s @@ -0,0 +1,1412 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__9CJellyZapFv +__dt__9CJellyZapFv: +/* 801D791C 001D487C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D7920 001D4880 7C 08 02 A6 */ mflr r0 +/* 801D7924 001D4884 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D7928 001D4888 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801D792C 001D488C 7C 9F 23 78 */ mr r31, r4 +/* 801D7930 001D4890 93 C1 00 08 */ stw r30, 8(r1) +/* 801D7934 001D4894 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801D7938 001D4898 41 82 00 28 */ beq lbl_801D7960 +/* 801D793C 001D489C 3C A0 80 3E */ lis r5, lbl_803E5954@ha +/* 801D7940 001D48A0 38 80 00 00 */ li r4, 0 +/* 801D7944 001D48A4 38 05 59 54 */ addi r0, r5, lbl_803E5954@l +/* 801D7948 001D48A8 90 1E 00 00 */ stw r0, 0(r30) +/* 801D794C 001D48AC 4B E9 FC 25 */ bl __dt__10CPatternedFv +/* 801D7950 001D48B0 7F E0 07 35 */ extsh. r0, r31 +/* 801D7954 001D48B4 40 81 00 0C */ ble lbl_801D7960 +/* 801D7958 001D48B8 7F C3 F3 78 */ mr r3, r30 +/* 801D795C 001D48BC 48 13 DF D5 */ bl Free__7CMemoryFPCv +lbl_801D7960: +/* 801D7960 001D48C0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D7964 001D48C4 7F C3 F3 78 */ mr r3, r30 +/* 801D7968 001D48C8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801D796C 001D48CC 83 C1 00 08 */ lwz r30, 8(r1) +/* 801D7970 001D48D0 7C 08 03 A6 */ mtlr r0 +/* 801D7974 001D48D4 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D7978 001D48D8 4E 80 00 20 */ blr + +.global KnockBack__9CJellyZapFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef +KnockBack__9CJellyZapFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef: +/* 801D797C 001D48DC 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801D7980 001D48E0 7C 08 02 A6 */ mflr r0 +/* 801D7984 001D48E4 90 01 00 44 */ stw r0, 0x44(r1) +/* 801D7988 001D48E8 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801D798C 001D48EC 7C BF 2B 78 */ mr r31, r5 +/* 801D7990 001D48F0 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801D7994 001D48F4 7C 7E 1B 78 */ mr r30, r3 +/* 801D7998 001D48F8 80 06 00 00 */ lwz r0, 0(r6) +/* 801D799C 001D48FC 2C 00 00 01 */ cmpwi r0, 1 +/* 801D79A0 001D4900 40 82 00 6C */ bne lbl_801D7A0C +/* 801D79A4 001D4904 C0 02 AC 70 */ lfs f0, lbl_805AC990@sda21(r2) +/* 801D79A8 001D4908 7C 85 23 78 */ mr r5, r4 +/* 801D79AC 001D490C 38 61 00 14 */ addi r3, r1, 0x14 +/* 801D79B0 001D4910 38 9E 00 34 */ addi r4, r30, 0x34 +/* 801D79B4 001D4914 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801D79B8 001D4918 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801D79BC 001D491C D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801D79C0 001D4920 48 13 B0 65 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 801D79C4 001D4924 38 61 00 20 */ addi r3, r1, 0x20 +/* 801D79C8 001D4928 38 81 00 14 */ addi r4, r1, 0x14 +/* 801D79CC 001D492C 48 13 C4 05 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 801D79D0 001D4930 C0 3E 04 FC */ lfs f1, 0x4fc(r30) +/* 801D79D4 001D4934 7F C3 F3 78 */ mr r3, r30 +/* 801D79D8 001D4938 80 C1 00 20 */ lwz r6, 0x20(r1) +/* 801D79DC 001D493C 7F E4 FB 78 */ mr r4, r31 +/* 801D79E0 001D4940 80 E1 00 24 */ lwz r7, 0x24(r1) +/* 801D79E4 001D4944 38 A1 00 2C */ addi r5, r1, 0x2c +/* 801D79E8 001D4948 80 01 00 28 */ lwz r0, 0x28(r1) +/* 801D79EC 001D494C 90 C1 00 08 */ stw r6, 8(r1) +/* 801D79F0 001D4950 38 C1 00 08 */ addi r6, r1, 8 +/* 801D79F4 001D4954 90 E1 00 0C */ stw r7, 0xc(r1) +/* 801D79F8 001D4958 90 01 00 10 */ stw r0, 0x10(r1) +/* 801D79FC 001D495C 81 9E 00 00 */ lwz r12, 0(r30) +/* 801D7A00 001D4960 81 8C 02 90 */ lwz r12, 0x290(r12) +/* 801D7A04 001D4964 7D 89 03 A6 */ mtctr r12 +/* 801D7A08 001D4968 4E 80 04 21 */ bctrl +lbl_801D7A0C: +/* 801D7A0C 001D496C 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801D7A10 001D4970 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801D7A14 001D4974 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801D7A18 001D4978 7C 08 03 A6 */ mtlr r0 +/* 801D7A1C 001D497C 38 21 00 40 */ addi r1, r1, 0x40 +/* 801D7A20 001D4980 4E 80 00 20 */ blr + +.global ClosestToPlayer__9CJellyZapCFR13CStateManager +ClosestToPlayer__9CJellyZapCFR13CStateManager: +/* 801D7A24 001D4984 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 801D7A28 001D4988 7C 08 02 A6 */ mflr r0 +/* 801D7A2C 001D498C 90 01 00 94 */ stw r0, 0x94(r1) +/* 801D7A30 001D4990 DB E1 00 80 */ stfd f31, 0x80(r1) +/* 801D7A34 001D4994 F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0 +/* 801D7A38 001D4998 DB C1 00 70 */ stfd f30, 0x70(r1) +/* 801D7A3C 001D499C F3 C1 00 78 */ psq_st f30, 120(r1), 0, qr0 +/* 801D7A40 001D49A0 DB A1 00 60 */ stfd f29, 0x60(r1) +/* 801D7A44 001D49A4 F3 A1 00 68 */ psq_st f29, 104(r1), 0, qr0 +/* 801D7A48 001D49A8 DB 81 00 50 */ stfd f28, 0x50(r1) +/* 801D7A4C 001D49AC F3 81 00 58 */ psq_st f28, 88(r1), 0, qr0 +/* 801D7A50 001D49B0 DB 61 00 40 */ stfd f27, 0x40(r1) +/* 801D7A54 001D49B4 F3 61 00 48 */ psq_st f27, 72(r1), 0, qr0 +/* 801D7A58 001D49B8 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801D7A5C 001D49BC 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801D7A60 001D49C0 93 A1 00 34 */ stw r29, 0x34(r1) +/* 801D7A64 001D49C4 80 A4 08 4C */ lwz r5, 0x84c(r4) +/* 801D7A68 001D49C8 7C 7D 1B 78 */ mr r29, r3 +/* 801D7A6C 001D49CC 83 E4 08 20 */ lwz r31, 0x820(r4) +/* 801D7A70 001D49D0 C3 C5 00 50 */ lfs f30, 0x50(r5) +/* 801D7A74 001D49D4 C0 03 00 50 */ lfs f0, 0x50(r3) +/* 801D7A78 001D49D8 C3 E5 00 40 */ lfs f31, 0x40(r5) +/* 801D7A7C 001D49DC EC 9E 00 28 */ fsubs f4, f30, f0 +/* 801D7A80 001D49E0 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801D7A84 001D49E4 C3 A5 00 60 */ lfs f29, 0x60(r5) +/* 801D7A88 001D49E8 EC 5F 00 28 */ fsubs f2, f31, f0 +/* 801D7A8C 001D49EC C0 23 00 60 */ lfs f1, 0x60(r3) +/* 801D7A90 001D49F0 EC 04 01 32 */ fmuls f0, f4, f4 +/* 801D7A94 001D49F4 EC 7D 08 28 */ fsubs f3, f29, f1 +/* 801D7A98 001D49F8 D0 81 00 1C */ stfs f4, 0x1c(r1) +/* 801D7A9C 001D49FC EC 22 00 B2 */ fmuls f1, f2, f2 +/* 801D7AA0 001D4A00 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 801D7AA4 001D4A04 EC 43 00 F2 */ fmuls f2, f3, f3 +/* 801D7AA8 001D4A08 AB DF 20 08 */ lha r30, 0x2008(r31) +/* 801D7AAC 001D4A0C EC 01 00 2A */ fadds f0, f1, f0 +/* 801D7AB0 001D4A10 D0 61 00 20 */ stfs f3, 0x20(r1) +/* 801D7AB4 001D4A14 EF 82 00 2A */ fadds f28, f2, f0 +/* 801D7AB8 001D4A18 FF 60 E0 90 */ fmr f27, f28 +/* 801D7ABC 001D4A1C 48 00 00 B8 */ b lbl_801D7B74 +lbl_801D7AC0: +/* 801D7AC0 001D4A20 7F E3 FB 78 */ mr r3, r31 +/* 801D7AC4 001D4A24 7F C4 F3 78 */ mr r4, r30 +/* 801D7AC8 001D4A28 4B E3 82 4D */ bl __vc__11CObjectListFi +/* 801D7ACC 001D4A2C 7C 60 1B 78 */ mr r0, r3 +/* 801D7AD0 001D4A30 38 61 00 08 */ addi r3, r1, 8 +/* 801D7AD4 001D4A34 7C 04 03 78 */ mr r4, r0 +/* 801D7AD8 001D4A38 4B EC DA 31 */ bl sub_800a5508 +/* 801D7ADC 001D4A3C 4B EC DA 01 */ bl "CastTo<9CJellyZap>__10CPatternedFP7CEntity" +/* 801D7AE0 001D4A40 28 03 00 00 */ cmplwi r3, 0 +/* 801D7AE4 001D4A44 41 82 00 74 */ beq lbl_801D7B58 +/* 801D7AE8 001D4A48 80 83 00 04 */ lwz r4, 4(r3) +/* 801D7AEC 001D4A4C 80 1D 00 04 */ lwz r0, 4(r29) +/* 801D7AF0 001D4A50 7C 04 00 00 */ cmpw r4, r0 +/* 801D7AF4 001D4A54 40 82 00 64 */ bne lbl_801D7B58 +/* 801D7AF8 001D4A58 7C 03 E8 40 */ cmplw r3, r29 +/* 801D7AFC 001D4A5C 41 82 00 5C */ beq lbl_801D7B58 +/* 801D7B00 001D4A60 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801D7B04 001D4A64 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801D7B08 001D4A68 EC 5E 08 28 */ fsubs f2, f30, f1 +/* 801D7B0C 001D4A6C C0 23 00 60 */ lfs f1, 0x60(r3) +/* 801D7B10 001D4A70 EC 7F 00 28 */ fsubs f3, f31, f0 +/* 801D7B14 001D4A74 EC 9D 08 28 */ fsubs f4, f29, f1 +/* 801D7B18 001D4A78 EC 02 00 B2 */ fmuls f0, f2, f2 +/* 801D7B1C 001D4A7C D0 41 00 10 */ stfs f2, 0x10(r1) +/* 801D7B20 001D4A80 EC 23 00 F2 */ fmuls f1, f3, f3 +/* 801D7B24 001D4A84 EC 44 01 32 */ fmuls f2, f4, f4 +/* 801D7B28 001D4A88 D0 61 00 0C */ stfs f3, 0xc(r1) +/* 801D7B2C 001D4A8C EC 01 00 2A */ fadds f0, f1, f0 +/* 801D7B30 001D4A90 D0 81 00 14 */ stfs f4, 0x14(r1) +/* 801D7B34 001D4A94 EC 02 00 2A */ fadds f0, f2, f0 +/* 801D7B38 001D4A98 FC 00 D8 40 */ fcmpo cr0, f0, f27 +/* 801D7B3C 001D4A9C 40 80 00 08 */ bge lbl_801D7B44 +/* 801D7B40 001D4AA0 FF 60 00 90 */ fmr f27, f0 +lbl_801D7B44: +/* 801D7B44 001D4AA4 88 03 05 B8 */ lbz r0, 0x5b8(r3) +/* 801D7B48 001D4AA8 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801D7B4C 001D4AAC 41 82 00 0C */ beq lbl_801D7B58 +/* 801D7B50 001D4AB0 38 60 00 00 */ li r3, 0 +/* 801D7B54 001D4AB4 48 00 00 40 */ b lbl_801D7B94 +lbl_801D7B58: +/* 801D7B58 001D4AB8 2C 1E FF FF */ cmpwi r30, -1 +/* 801D7B5C 001D4ABC 41 82 00 14 */ beq lbl_801D7B70 +/* 801D7B60 001D4AC0 57 C3 18 38 */ slwi r3, r30, 3 +/* 801D7B64 001D4AC4 38 03 00 08 */ addi r0, r3, 8 +/* 801D7B68 001D4AC8 7F DF 02 AE */ lhax r30, r31, r0 +/* 801D7B6C 001D4ACC 48 00 00 08 */ b lbl_801D7B74 +lbl_801D7B70: +/* 801D7B70 001D4AD0 3B C0 FF FF */ li r30, -1 +lbl_801D7B74: +/* 801D7B74 001D4AD4 2C 1E FF FF */ cmpwi r30, -1 +/* 801D7B78 001D4AD8 40 82 FF 48 */ bne lbl_801D7AC0 +/* 801D7B7C 001D4ADC EC 3B E0 28 */ fsubs f1, f27, f28 +/* 801D7B80 001D4AE0 C0 02 AC 74 */ lfs f0, lbl_805AC994@sda21(r2) +/* 801D7B84 001D4AE4 FC 20 0A 10 */ fabs f1, f1 +/* 801D7B88 001D4AE8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801D7B8C 001D4AEC 7C 00 00 26 */ mfcr r0 +/* 801D7B90 001D4AF0 54 03 0F FE */ srwi r3, r0, 0x1f +lbl_801D7B94: +/* 801D7B94 001D4AF4 E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0 +/* 801D7B98 001D4AF8 CB E1 00 80 */ lfd f31, 0x80(r1) +/* 801D7B9C 001D4AFC E3 C1 00 78 */ psq_l f30, 120(r1), 0, qr0 +/* 801D7BA0 001D4B00 CB C1 00 70 */ lfd f30, 0x70(r1) +/* 801D7BA4 001D4B04 E3 A1 00 68 */ psq_l f29, 104(r1), 0, qr0 +/* 801D7BA8 001D4B08 CB A1 00 60 */ lfd f29, 0x60(r1) +/* 801D7BAC 001D4B0C E3 81 00 58 */ psq_l f28, 88(r1), 0, qr0 +/* 801D7BB0 001D4B10 CB 81 00 50 */ lfd f28, 0x50(r1) +/* 801D7BB4 001D4B14 E3 61 00 48 */ psq_l f27, 72(r1), 0, qr0 +/* 801D7BB8 001D4B18 CB 61 00 40 */ lfd f27, 0x40(r1) +/* 801D7BBC 001D4B1C 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801D7BC0 001D4B20 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801D7BC4 001D4B24 80 01 00 94 */ lwz r0, 0x94(r1) +/* 801D7BC8 001D4B28 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 801D7BCC 001D4B2C 7C 08 03 A6 */ mtlr r0 +/* 801D7BD0 001D4B30 38 21 00 90 */ addi r1, r1, 0x90 +/* 801D7BD4 001D4B34 4E 80 00 20 */ blr + +.global RemoveSelfFromFishCloud__9CJellyZapFR13CStateManager +RemoveSelfFromFishCloud__9CJellyZapFR13CStateManager: +/* 801D7BD8 001D4B38 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801D7BDC 001D4B3C 7C 08 02 A6 */ mflr r0 +/* 801D7BE0 001D4B40 90 01 00 44 */ stw r0, 0x44(r1) +/* 801D7BE4 001D4B44 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801D7BE8 001D4B48 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801D7BEC 001D4B4C 93 A1 00 34 */ stw r29, 0x34(r1) +/* 801D7BF0 001D4B50 7C 9D 23 78 */ mr r29, r4 +/* 801D7BF4 001D4B54 93 81 00 30 */ stw r28, 0x30(r1) +/* 801D7BF8 001D4B58 7C 7C 1B 78 */ mr r28, r3 +/* 801D7BFC 001D4B5C 83 C3 00 2C */ lwz r30, 0x2c(r3) +/* 801D7C00 001D4B60 48 00 00 A4 */ b lbl_801D7CA4 +lbl_801D7C04: +/* 801D7C04 001D4B64 80 1E 00 00 */ lwz r0, 0(r30) +/* 801D7C08 001D4B68 2C 00 00 19 */ cmpwi r0, 0x19 +/* 801D7C0C 001D4B6C 40 82 00 94 */ bne lbl_801D7CA0 +/* 801D7C10 001D4B70 80 1E 00 04 */ lwz r0, 4(r30) +/* 801D7C14 001D4B74 2C 00 00 06 */ cmpwi r0, 6 +/* 801D7C18 001D4B78 40 82 00 88 */ bne lbl_801D7CA0 +/* 801D7C1C 001D4B7C 80 1E 00 08 */ lwz r0, 8(r30) +/* 801D7C20 001D4B80 7F A4 EB 78 */ mr r4, r29 +/* 801D7C24 001D4B84 38 61 00 1C */ addi r3, r1, 0x1c +/* 801D7C28 001D4B88 38 A1 00 24 */ addi r5, r1, 0x24 +/* 801D7C2C 001D4B8C 90 01 00 24 */ stw r0, 0x24(r1) +/* 801D7C30 001D4B90 4B E7 02 ED */ bl GetIdForScript__13CStateManagerCF9TEditorId +/* 801D7C34 001D4B94 A0 61 00 1C */ lhz r3, 0x1c(r1) +/* 801D7C38 001D4B98 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801D7C3C 001D4B9C B0 61 00 20 */ sth r3, 0x20(r1) +/* 801D7C40 001D4BA0 7C 03 00 40 */ cmplw r3, r0 +/* 801D7C44 001D4BA4 41 82 00 5C */ beq lbl_801D7CA0 +/* 801D7C48 001D4BA8 B0 61 00 18 */ sth r3, 0x18(r1) +/* 801D7C4C 001D4BAC 7F A3 EB 78 */ mr r3, r29 +/* 801D7C50 001D4BB0 38 81 00 18 */ addi r4, r1, 0x18 +/* 801D7C54 001D4BB4 4B E7 49 21 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801D7C58 001D4BB8 7C 64 1B 78 */ mr r4, r3 +/* 801D7C5C 001D4BBC 38 61 00 28 */ addi r3, r1, 0x28 +/* 801D7C60 001D4BC0 4B ED 65 01 */ bl "__ct__24TCastToPtr<10CFishCloud>FP7CEntity" +/* 801D7C64 001D4BC4 83 E3 00 04 */ lwz r31, 4(r3) +/* 801D7C68 001D4BC8 28 1F 00 00 */ cmplwi r31, 0 +/* 801D7C6C 001D4BCC 41 82 00 34 */ beq lbl_801D7CA0 +/* 801D7C70 001D4BD0 A0 1C 00 08 */ lhz r0, 8(r28) +/* 801D7C74 001D4BD4 7F E3 FB 78 */ mr r3, r31 +/* 801D7C78 001D4BD8 38 81 00 14 */ addi r4, r1, 0x14 +/* 801D7C7C 001D4BDC B0 01 00 10 */ sth r0, 0x10(r1) +/* 801D7C80 001D4BE0 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801D7C84 001D4BE4 4B FF 8F 0D */ bl sub_801d0b90 +/* 801D7C88 001D4BE8 A0 1C 00 08 */ lhz r0, 8(r28) +/* 801D7C8C 001D4BEC 7F E3 FB 78 */ mr r3, r31 +/* 801D7C90 001D4BF0 38 81 00 0C */ addi r4, r1, 0xc +/* 801D7C94 001D4BF4 B0 01 00 08 */ sth r0, 8(r1) +/* 801D7C98 001D4BF8 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801D7C9C 001D4BFC 4B FF 8D 01 */ bl sub_801d099c +lbl_801D7CA0: +/* 801D7CA0 001D4C00 3B DE 00 0C */ addi r30, r30, 0xc +lbl_801D7CA4: +/* 801D7CA4 001D4C04 80 1C 00 24 */ lwz r0, 0x24(r28) +/* 801D7CA8 001D4C08 80 7C 00 2C */ lwz r3, 0x2c(r28) +/* 801D7CAC 001D4C0C 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801D7CB0 001D4C10 7C 03 02 14 */ add r0, r3, r0 +/* 801D7CB4 001D4C14 7C 1E 00 40 */ cmplw r30, r0 +/* 801D7CB8 001D4C18 40 82 FF 4C */ bne lbl_801D7C04 +/* 801D7CBC 001D4C1C 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801D7CC0 001D4C20 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801D7CC4 001D4C24 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801D7CC8 001D4C28 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 801D7CCC 001D4C2C 83 81 00 30 */ lwz r28, 0x30(r1) +/* 801D7CD0 001D4C30 7C 08 03 A6 */ mtlr r0 +/* 801D7CD4 001D4C34 38 21 00 40 */ addi r1, r1, 0x40 +/* 801D7CD8 001D4C38 4E 80 00 20 */ blr + +.global AddSelfToFishCloud__9CJellyZapFR13CStateManagerffb +AddSelfToFishCloud__9CJellyZapFR13CStateManagerffb: +/* 801D7CDC 001D4C3C 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801D7CE0 001D4C40 7C 08 02 A6 */ mflr r0 +/* 801D7CE4 001D4C44 90 01 00 54 */ stw r0, 0x54(r1) +/* 801D7CE8 001D4C48 DB E1 00 48 */ stfd f31, 0x48(r1) +/* 801D7CEC 001D4C4C FF E0 10 90 */ fmr f31, f2 +/* 801D7CF0 001D4C50 DB C1 00 40 */ stfd f30, 0x40(r1) +/* 801D7CF4 001D4C54 FF C0 08 90 */ fmr f30, f1 +/* 801D7CF8 001D4C58 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801D7CFC 001D4C5C 7C BF 2B 78 */ mr r31, r5 +/* 801D7D00 001D4C60 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801D7D04 001D4C64 7C 9E 23 78 */ mr r30, r4 +/* 801D7D08 001D4C68 93 A1 00 34 */ stw r29, 0x34(r1) +/* 801D7D0C 001D4C6C 7C 7D 1B 78 */ mr r29, r3 +/* 801D7D10 001D4C70 93 81 00 30 */ stw r28, 0x30(r1) +/* 801D7D14 001D4C74 83 83 00 2C */ lwz r28, 0x2c(r3) +/* 801D7D18 001D4C78 48 00 00 C0 */ b lbl_801D7DD8 +lbl_801D7D1C: +/* 801D7D1C 001D4C7C 80 1C 00 00 */ lwz r0, 0(r28) +/* 801D7D20 001D4C80 2C 00 00 19 */ cmpwi r0, 0x19 +/* 801D7D24 001D4C84 40 82 00 B0 */ bne lbl_801D7DD4 +/* 801D7D28 001D4C88 80 1C 00 04 */ lwz r0, 4(r28) +/* 801D7D2C 001D4C8C 2C 00 00 06 */ cmpwi r0, 6 +/* 801D7D30 001D4C90 40 82 00 A4 */ bne lbl_801D7DD4 +/* 801D7D34 001D4C94 80 1C 00 08 */ lwz r0, 8(r28) +/* 801D7D38 001D4C98 7F C4 F3 78 */ mr r4, r30 +/* 801D7D3C 001D4C9C 38 61 00 1C */ addi r3, r1, 0x1c +/* 801D7D40 001D4CA0 38 A1 00 24 */ addi r5, r1, 0x24 +/* 801D7D44 001D4CA4 90 01 00 24 */ stw r0, 0x24(r1) +/* 801D7D48 001D4CA8 4B E7 01 D5 */ bl GetIdForScript__13CStateManagerCF9TEditorId +/* 801D7D4C 001D4CAC A0 61 00 1C */ lhz r3, 0x1c(r1) +/* 801D7D50 001D4CB0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801D7D54 001D4CB4 B0 61 00 20 */ sth r3, 0x20(r1) +/* 801D7D58 001D4CB8 7C 03 00 40 */ cmplw r3, r0 +/* 801D7D5C 001D4CBC 41 82 00 78 */ beq lbl_801D7DD4 +/* 801D7D60 001D4CC0 B0 61 00 18 */ sth r3, 0x18(r1) +/* 801D7D64 001D4CC4 7F C3 F3 78 */ mr r3, r30 +/* 801D7D68 001D4CC8 38 81 00 18 */ addi r4, r1, 0x18 +/* 801D7D6C 001D4CCC 4B E7 48 09 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801D7D70 001D4CD0 7C 64 1B 78 */ mr r4, r3 +/* 801D7D74 001D4CD4 38 61 00 28 */ addi r3, r1, 0x28 +/* 801D7D78 001D4CD8 4B ED 63 E9 */ bl "__ct__24TCastToPtr<10CFishCloud>FP7CEntity" +/* 801D7D7C 001D4CDC 80 63 00 04 */ lwz r3, 4(r3) +/* 801D7D80 001D4CE0 28 03 00 00 */ cmplwi r3, 0 +/* 801D7D84 001D4CE4 41 82 00 50 */ beq lbl_801D7DD4 +/* 801D7D88 001D4CE8 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 801D7D8C 001D4CEC 41 82 00 28 */ beq lbl_801D7DB4 +/* 801D7D90 001D4CF0 A0 1D 00 08 */ lhz r0, 8(r29) +/* 801D7D94 001D4CF4 FC 20 F0 90 */ fmr f1, f30 +/* 801D7D98 001D4CF8 FC 40 F8 90 */ fmr f2, f31 +/* 801D7D9C 001D4CFC 38 81 00 14 */ addi r4, r1, 0x14 +/* 801D7DA0 001D4D00 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801D7DA4 001D4D04 38 A0 00 00 */ li r5, 0 +/* 801D7DA8 001D4D08 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801D7DAC 001D4D0C 4B FF 8E D9 */ bl sub_801d0c84 +/* 801D7DB0 001D4D10 48 00 00 24 */ b lbl_801D7DD4 +lbl_801D7DB4: +/* 801D7DB4 001D4D14 A0 1D 00 08 */ lhz r0, 8(r29) +/* 801D7DB8 001D4D18 FC 20 F0 90 */ fmr f1, f30 +/* 801D7DBC 001D4D1C FC 40 F8 90 */ fmr f2, f31 +/* 801D7DC0 001D4D20 38 81 00 0C */ addi r4, r1, 0xc +/* 801D7DC4 001D4D24 B0 01 00 08 */ sth r0, 8(r1) +/* 801D7DC8 001D4D28 38 A0 00 00 */ li r5, 0 +/* 801D7DCC 001D4D2C B0 01 00 0C */ sth r0, 0xc(r1) +/* 801D7DD0 001D4D30 4B FF 93 75 */ bl sub_801d1144 +lbl_801D7DD4: +/* 801D7DD4 001D4D34 3B 9C 00 0C */ addi r28, r28, 0xc +lbl_801D7DD8: +/* 801D7DD8 001D4D38 80 1D 00 24 */ lwz r0, 0x24(r29) +/* 801D7DDC 001D4D3C 80 7D 00 2C */ lwz r3, 0x2c(r29) +/* 801D7DE0 001D4D40 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801D7DE4 001D4D44 7C 03 02 14 */ add r0, r3, r0 +/* 801D7DE8 001D4D48 7C 1C 00 40 */ cmplw r28, r0 +/* 801D7DEC 001D4D4C 40 82 FF 30 */ bne lbl_801D7D1C +/* 801D7DF0 001D4D50 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801D7DF4 001D4D54 CB E1 00 48 */ lfd f31, 0x48(r1) +/* 801D7DF8 001D4D58 CB C1 00 40 */ lfd f30, 0x40(r1) +/* 801D7DFC 001D4D5C 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801D7E00 001D4D60 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801D7E04 001D4D64 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 801D7E08 001D4D68 83 81 00 30 */ lwz r28, 0x30(r1) +/* 801D7E0C 001D4D6C 7C 08 03 A6 */ mtlr r0 +/* 801D7E10 001D4D70 38 21 00 50 */ addi r1, r1, 0x50 +/* 801D7E14 001D4D74 4E 80 00 20 */ blr + +.global AddRepulsor__9CJellyZapFR13CStateManager +AddRepulsor__9CJellyZapFR13CStateManager: +/* 801D7E18 001D4D78 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D7E1C 001D4D7C 7C 08 02 A6 */ mflr r0 +/* 801D7E20 001D4D80 38 A0 00 01 */ li r5, 1 +/* 801D7E24 001D4D84 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D7E28 001D4D88 C0 23 05 A0 */ lfs f1, 0x5a0(r3) +/* 801D7E2C 001D4D8C C0 43 05 9C */ lfs f2, 0x59c(r3) +/* 801D7E30 001D4D90 4B FF FE AD */ bl AddSelfToFishCloud__9CJellyZapFR13CStateManagerffb +/* 801D7E34 001D4D94 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D7E38 001D4D98 7C 08 03 A6 */ mtlr r0 +/* 801D7E3C 001D4D9C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D7E40 001D4DA0 4E 80 00 20 */ blr + +.global RemoveAllAttractors__9CJellyZapFR13CStateManager +RemoveAllAttractors__9CJellyZapFR13CStateManager: +/* 801D7E44 001D4DA4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D7E48 001D4DA8 7C 08 02 A6 */ mflr r0 +/* 801D7E4C 001D4DAC 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D7E50 001D4DB0 4B FF FD 89 */ bl RemoveSelfFromFishCloud__9CJellyZapFR13CStateManager +/* 801D7E54 001D4DB4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D7E58 001D4DB8 7C 08 03 A6 */ mtlr r0 +/* 801D7E5C 001D4DBC 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D7E60 001D4DC0 4E 80 00 20 */ blr + +.global AddAttractor__9CJellyZapFR13CStateManager +AddAttractor__9CJellyZapFR13CStateManager: +/* 801D7E64 001D4DC4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D7E68 001D4DC8 7C 08 02 A6 */ mflr r0 +/* 801D7E6C 001D4DCC 38 A0 00 01 */ li r5, 1 +/* 801D7E70 001D4DD0 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D7E74 001D4DD4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801D7E78 001D4DD8 7C 9F 23 78 */ mr r31, r4 +/* 801D7E7C 001D4DDC 93 C1 00 08 */ stw r30, 8(r1) +/* 801D7E80 001D4DE0 7C 7E 1B 78 */ mr r30, r3 +/* 801D7E84 001D4DE4 C0 23 05 A0 */ lfs f1, 0x5a0(r3) +/* 801D7E88 001D4DE8 C0 43 05 9C */ lfs f2, 0x59c(r3) +/* 801D7E8C 001D4DEC 4B FF FE 51 */ bl AddSelfToFishCloud__9CJellyZapFR13CStateManagerffb +/* 801D7E90 001D4DF0 C0 3E 05 A4 */ lfs f1, 0x5a4(r30) +/* 801D7E94 001D4DF4 7F C3 F3 78 */ mr r3, r30 +/* 801D7E98 001D4DF8 C0 5E 05 9C */ lfs f2, 0x59c(r30) +/* 801D7E9C 001D4DFC 7F E4 FB 78 */ mr r4, r31 +/* 801D7EA0 001D4E00 38 A0 00 00 */ li r5, 0 +/* 801D7EA4 001D4E04 4B FF FE 39 */ bl AddSelfToFishCloud__9CJellyZapFR13CStateManagerffb +/* 801D7EA8 001D4E08 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D7EAC 001D4E0C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801D7EB0 001D4E10 83 C1 00 08 */ lwz r30, 8(r1) +/* 801D7EB4 001D4E14 7C 08 03 A6 */ mtlr r0 +/* 801D7EB8 001D4E18 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D7EBC 001D4E1C 4E 80 00 20 */ blr + +.global Flinch__9CJellyZapFR13CStateManager9EStateMsgf +Flinch__9CJellyZapFR13CStateManager9EStateMsgf: +/* 801D7EC0 001D4E20 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801D7EC4 001D4E24 7C 08 02 A6 */ mflr r0 +/* 801D7EC8 001D4E28 2C 05 00 01 */ cmpwi r5, 1 +/* 801D7ECC 001D4E2C 90 01 00 24 */ stw r0, 0x24(r1) +/* 801D7ED0 001D4E30 41 82 00 44 */ beq lbl_801D7F14 +/* 801D7ED4 001D4E34 40 80 00 10 */ bge lbl_801D7EE4 +/* 801D7ED8 001D4E38 2C 05 00 00 */ cmpwi r5, 0 +/* 801D7EDC 001D4E3C 40 80 00 14 */ bge lbl_801D7EF0 +/* 801D7EE0 001D4E40 48 00 00 70 */ b lbl_801D7F50 +lbl_801D7EE4: +/* 801D7EE4 001D4E44 2C 05 00 03 */ cmpwi r5, 3 +/* 801D7EE8 001D4E48 40 80 00 68 */ bge lbl_801D7F50 +/* 801D7EEC 001D4E4C 48 00 00 5C */ b lbl_801D7F48 +lbl_801D7EF0: +/* 801D7EF0 001D4E50 88 83 04 00 */ lbz r4, 0x400(r3) +/* 801D7EF4 001D4E54 38 00 00 00 */ li r0, 0 +/* 801D7EF8 001D4E58 50 04 3E 30 */ rlwimi r4, r0, 7, 0x18, 0x18 +/* 801D7EFC 001D4E5C 38 00 00 01 */ li r0, 1 +/* 801D7F00 001D4E60 98 83 04 00 */ stb r4, 0x400(r3) +/* 801D7F04 001D4E64 90 03 03 2C */ stw r0, 0x32c(r3) +/* 801D7F08 001D4E68 C0 03 05 B0 */ lfs f0, 0x5b0(r3) +/* 801D7F0C 001D4E6C D0 03 03 40 */ stfs f0, 0x340(r3) +/* 801D7F10 001D4E70 48 00 00 40 */ b lbl_801D7F50 +lbl_801D7F14: +/* 801D7F14 001D4E74 3C A0 80 3E */ lis r5, lbl_803E5948@ha +/* 801D7F18 001D4E78 38 C1 00 08 */ addi r6, r1, 8 +/* 801D7F1C 001D4E7C 39 45 59 48 */ addi r10, r5, lbl_803E5948@l +/* 801D7F20 001D4E80 38 A0 00 06 */ li r5, 6 +/* 801D7F24 001D4E84 81 2A 00 00 */ lwz r9, 0(r10) +/* 801D7F28 001D4E88 38 E0 00 00 */ li r7, 0 +/* 801D7F2C 001D4E8C 81 0A 00 04 */ lwz r8, 4(r10) +/* 801D7F30 001D4E90 80 0A 00 08 */ lwz r0, 8(r10) +/* 801D7F34 001D4E94 91 21 00 08 */ stw r9, 8(r1) +/* 801D7F38 001D4E98 91 01 00 0C */ stw r8, 0xc(r1) +/* 801D7F3C 001D4E9C 90 01 00 10 */ stw r0, 0x10(r1) +/* 801D7F40 001D4EA0 4B EA 48 75 */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi +/* 801D7F44 001D4EA4 48 00 00 0C */ b lbl_801D7F50 +lbl_801D7F48: +/* 801D7F48 001D4EA8 38 00 00 00 */ li r0, 0 +/* 801D7F4C 001D4EAC 90 03 03 2C */ stw r0, 0x32c(r3) +lbl_801D7F50: +/* 801D7F50 001D4EB0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801D7F54 001D4EB4 7C 08 03 A6 */ mtlr r0 +/* 801D7F58 001D4EB8 38 21 00 20 */ addi r1, r1, 0x20 +/* 801D7F5C 001D4EBC 4E 80 00 20 */ blr + +.global Attack__9CJellyZapFR13CStateManager9EStateMsgf +Attack__9CJellyZapFR13CStateManager9EStateMsgf: +/* 801D7F60 001D4EC0 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801D7F64 001D4EC4 7C 08 02 A6 */ mflr r0 +/* 801D7F68 001D4EC8 2C 05 00 01 */ cmpwi r5, 1 +/* 801D7F6C 001D4ECC 90 01 00 54 */ stw r0, 0x54(r1) +/* 801D7F70 001D4ED0 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801D7F74 001D4ED4 7C 9F 23 78 */ mr r31, r4 +/* 801D7F78 001D4ED8 93 C1 00 48 */ stw r30, 0x48(r1) +/* 801D7F7C 001D4EDC 7C 7E 1B 78 */ mr r30, r3 +/* 801D7F80 001D4EE0 41 82 01 28 */ beq lbl_801D80A8 +/* 801D7F84 001D4EE4 40 80 00 10 */ bge lbl_801D7F94 +/* 801D7F88 001D4EE8 2C 05 00 00 */ cmpwi r5, 0 +/* 801D7F8C 001D4EEC 40 80 00 14 */ bge lbl_801D7FA0 +/* 801D7F90 001D4EF0 48 00 01 64 */ b lbl_801D80F4 +lbl_801D7F94: +/* 801D7F94 001D4EF4 2C 05 00 03 */ cmpwi r5, 3 +/* 801D7F98 001D4EF8 40 80 01 5C */ bge lbl_801D80F4 +/* 801D7F9C 001D4EFC 48 00 01 40 */ b lbl_801D80DC +lbl_801D7FA0: +/* 801D7FA0 001D4F00 38 00 00 01 */ li r0, 1 +/* 801D7FA4 001D4F04 90 1E 03 2C */ stw r0, 0x32c(r30) +/* 801D7FA8 001D4F08 4B FF FE 71 */ bl AddRepulsor__9CJellyZapFR13CStateManager +/* 801D7FAC 001D4F0C 88 1E 05 B8 */ lbz r0, 0x5b8(r30) +/* 801D7FB0 001D4F10 38 60 00 01 */ li r3, 1 +/* 801D7FB4 001D4F14 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801D7FB8 001D4F18 38 61 00 3C */ addi r3, r1, 0x3c +/* 801D7FBC 001D4F1C 98 1E 05 B8 */ stb r0, 0x5b8(r30) +/* 801D7FC0 001D4F20 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 801D7FC4 001D4F24 C0 FE 00 60 */ lfs f7, 0x60(r30) +/* 801D7FC8 001D4F28 C0 A4 00 60 */ lfs f5, 0x60(r4) +/* 801D7FCC 001D4F2C C0 84 00 50 */ lfs f4, 0x50(r4) +/* 801D7FD0 001D4F30 C0 DE 00 50 */ lfs f6, 0x50(r30) +/* 801D7FD4 001D4F34 EC 47 28 28 */ fsubs f2, f7, f5 +/* 801D7FD8 001D4F38 C0 04 00 40 */ lfs f0, 0x40(r4) +/* 801D7FDC 001D4F3C C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 801D7FE0 001D4F40 EC 66 20 28 */ fsubs f3, f6, f4 +/* 801D7FE4 001D4F44 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801D7FE8 001D4F48 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801D7FEC 001D4F4C D0 81 00 28 */ stfs f4, 0x28(r1) +/* 801D7FF0 001D4F50 D0 A1 00 2C */ stfs f5, 0x2c(r1) +/* 801D7FF4 001D4F54 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 801D7FF8 001D4F58 D0 C1 00 34 */ stfs f6, 0x34(r1) +/* 801D7FFC 001D4F5C D0 E1 00 38 */ stfs f7, 0x38(r1) +/* 801D8000 001D4F60 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 801D8004 001D4F64 D0 61 00 40 */ stfs f3, 0x40(r1) +/* 801D8008 001D4F68 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 801D800C 001D4F6C 48 13 C8 AD */ bl Magnitude__9CVector3fCFv +/* 801D8010 001D4F70 C0 1E 05 7C */ lfs f0, 0x57c(r30) +/* 801D8014 001D4F74 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801D8018 001D4F78 40 80 00 84 */ bge lbl_801D809C +/* 801D801C 001D4F7C EC 41 00 24 */ fdivs f2, f1, f0 +/* 801D8020 001D4F80 C0 62 AC 80 */ lfs f3, lbl_805AC9A0@sda21(r2) +/* 801D8024 001D4F84 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 801D8028 001D4F88 C0 82 AC 7C */ lfs f4, lbl_805AC99C@sda21(r2) +/* 801D802C 001D4F8C C0 22 AC 78 */ lfs f1, lbl_805AC998@sda21(r2) +/* 801D8030 001D4F90 C0 03 07 40 */ lfs f0, 0x740(r3) +/* 801D8034 001D4F94 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801D8038 001D4F98 EC 24 08 BA */ fmadds f1, f4, f2, f1 +/* 801D803C 001D4F9C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801D8040 001D4FA0 40 81 00 34 */ ble lbl_801D8074 +/* 801D8044 001D4FA4 C0 42 80 F8 */ lfs f2, lbl_805A9E18@sda21(r2) +/* 801D8048 001D4FA8 C0 62 80 FC */ lfs f3, lbl_805A9E1C@sda21(r2) +/* 801D804C 001D4FAC 4B E3 B0 21 */ bl SetHudDisable__7CPlayerFfff +/* 801D8050 001D4FB0 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 801D8054 001D4FB4 7F E6 FB 78 */ mr r6, r31 +/* 801D8058 001D4FB8 38 81 00 14 */ addi r4, r1, 0x14 +/* 801D805C 001D4FBC 38 A0 00 08 */ li r5, 8 +/* 801D8060 001D4FC0 A0 03 03 10 */ lhz r0, 0x310(r3) +/* 801D8064 001D4FC4 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801D8068 001D4FC8 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801D806C 001D4FCC 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 801D8070 001D4FD0 4B FA 31 E5 */ bl SetOrbitRequestForTarget__7CPlayerF9TUniqueId19EPlayerOrbitRequestR13CStateManager +lbl_801D8074: +/* 801D8074 001D4FD4 A0 1E 00 08 */ lhz r0, 8(r30) +/* 801D8078 001D4FD8 38 81 00 0C */ addi r4, r1, 0xc +/* 801D807C 001D4FDC C0 22 AC 84 */ lfs f1, lbl_805AC9A4@sda21(r2) +/* 801D8080 001D4FE0 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801D8084 001D4FE4 FC 40 08 90 */ fmr f2, f1 +/* 801D8088 001D4FE8 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 801D808C 001D4FEC B0 01 00 08 */ sth r0, 8(r1) +/* 801D8090 001D4FF0 80 63 00 00 */ lwz r3, 0(r3) +/* 801D8094 001D4FF4 38 63 01 88 */ addi r3, r3, 0x188 +/* 801D8098 001D4FF8 4B FE 8A A1 */ bl AddSource__19CStaticInterferenceF9TUniqueId +lbl_801D809C: +/* 801D809C 001D4FFC C0 1E 05 AC */ lfs f0, 0x5ac(r30) +/* 801D80A0 001D5000 D0 1E 03 40 */ stfs f0, 0x340(r30) +/* 801D80A4 001D5004 48 00 00 50 */ b lbl_801D80F4 +lbl_801D80A8: +/* 801D80A8 001D5008 3C A0 80 3E */ lis r5, lbl_803E593C@ha +/* 801D80AC 001D500C 38 C1 00 18 */ addi r6, r1, 0x18 +/* 801D80B0 001D5010 39 45 59 3C */ addi r10, r5, lbl_803E593C@l +/* 801D80B4 001D5014 38 A0 00 07 */ li r5, 7 +/* 801D80B8 001D5018 81 2A 00 00 */ lwz r9, 0(r10) +/* 801D80BC 001D501C 38 E0 00 01 */ li r7, 1 +/* 801D80C0 001D5020 81 0A 00 04 */ lwz r8, 4(r10) +/* 801D80C4 001D5024 80 0A 00 08 */ lwz r0, 8(r10) +/* 801D80C8 001D5028 91 21 00 18 */ stw r9, 0x18(r1) +/* 801D80CC 001D502C 91 01 00 1C */ stw r8, 0x1c(r1) +/* 801D80D0 001D5030 90 01 00 20 */ stw r0, 0x20(r1) +/* 801D80D4 001D5034 4B EA 46 E1 */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi +/* 801D80D8 001D5038 48 00 00 1C */ b lbl_801D80F4 +lbl_801D80DC: +/* 801D80DC 001D503C 4B FF FD 69 */ bl RemoveAllAttractors__9CJellyZapFR13CStateManager +/* 801D80E0 001D5040 38 60 00 00 */ li r3, 0 +/* 801D80E4 001D5044 90 7E 03 2C */ stw r3, 0x32c(r30) +/* 801D80E8 001D5048 88 1E 05 B8 */ lbz r0, 0x5b8(r30) +/* 801D80EC 001D504C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801D80F0 001D5050 98 1E 05 B8 */ stb r0, 0x5b8(r30) +lbl_801D80F4: +/* 801D80F4 001D5054 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801D80F8 001D5058 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801D80FC 001D505C 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 801D8100 001D5060 7C 08 03 A6 */ mtlr r0 +/* 801D8104 001D5064 38 21 00 50 */ addi r1, r1, 0x50 +/* 801D8108 001D5068 4E 80 00 20 */ blr + +.global GetDamageVulnerability__9CJellyZapCFRC9CVector3fRC9CVector3fRC11CDamageInfo +GetDamageVulnerability__9CJellyZapCFRC9CVector3fRC9CVector3fRC11CDamageInfo: +/* 801D810C 001D506C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D8110 001D5070 7C 08 02 A6 */ mflr r0 +/* 801D8114 001D5074 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D8118 001D5078 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801D811C 001D507C 7C 7F 1B 78 */ mr r31, r3 +/* 801D8120 001D5080 48 00 00 71 */ bl sub801d8190__9CJellyZapFv +/* 801D8124 001D5084 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801D8128 001D5088 41 82 00 10 */ beq lbl_801D8138 +/* 801D812C 001D508C 3C 60 80 57 */ lis r3, lbl_8056D780@ha +/* 801D8130 001D5090 38 63 D7 80 */ addi r3, r3, lbl_8056D780@l +/* 801D8134 001D5094 48 00 00 0C */ b lbl_801D8140 +lbl_801D8138: +/* 801D8138 001D5098 7F E3 FB 78 */ mr r3, r31 +/* 801D813C 001D509C 4B EC AC 35 */ bl GetDamageVulnerability__3CAiCFv +lbl_801D8140: +/* 801D8140 001D50A0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D8144 001D50A4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801D8148 001D50A8 7C 08 03 A6 */ mtlr r0 +/* 801D814C 001D50AC 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D8150 001D50B0 4E 80 00 20 */ blr + +.global GetCollisionResponseType__9CJellyZapCFRC9CVector3fRC9CVector3fRC11CWeaponModei +GetCollisionResponseType__9CJellyZapCFRC9CVector3fRC9CVector3fRC11CWeaponModei: +/* 801D8154 001D50B4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D8158 001D50B8 7C 08 02 A6 */ mflr r0 +/* 801D815C 001D50BC 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D8160 001D50C0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801D8164 001D50C4 3B E0 00 27 */ li r31, 0x27 +/* 801D8168 001D50C8 48 00 00 29 */ bl sub801d8190__9CJellyZapFv +/* 801D816C 001D50CC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801D8170 001D50D0 41 82 00 08 */ beq lbl_801D8178 +/* 801D8174 001D50D4 3B E0 00 59 */ li r31, 0x59 +lbl_801D8178: +/* 801D8178 001D50D8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D817C 001D50DC 7F E3 FB 78 */ mr r3, r31 +/* 801D8180 001D50E0 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801D8184 001D50E4 7C 08 03 A6 */ mtlr r0 +/* 801D8188 001D50E8 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D818C 001D50EC 4E 80 00 20 */ blr + +.global sub801d8190__9CJellyZapFv +sub801d8190__9CJellyZapFv: +/* 801D8190 001D50F0 80 83 05 68 */ lwz r4, 0x568(r3) +/* 801D8194 001D50F4 20 64 00 01 */ subfic r3, r4, 1 +/* 801D8198 001D50F8 38 04 FF FF */ addi r0, r4, -1 +/* 801D819C 001D50FC 7C 60 03 78 */ or r0, r3, r0 +/* 801D81A0 001D5100 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801D81A4 001D5104 4E 80 00 20 */ blr + +.global Suck__9CJellyZapFR13CStateManager9EStateMsgf +Suck__9CJellyZapFR13CStateManager9EStateMsgf: +/* 801D81A8 001D5108 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 801D81AC 001D510C 7C 08 02 A6 */ mflr r0 +/* 801D81B0 001D5110 90 01 00 84 */ stw r0, 0x84(r1) +/* 801D81B4 001D5114 DB E1 00 70 */ stfd f31, 0x70(r1) +/* 801D81B8 001D5118 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 +/* 801D81BC 001D511C DB C1 00 60 */ stfd f30, 0x60(r1) +/* 801D81C0 001D5120 F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 +/* 801D81C4 001D5124 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 801D81C8 001D5128 93 C1 00 58 */ stw r30, 0x58(r1) +/* 801D81CC 001D512C 93 A1 00 54 */ stw r29, 0x54(r1) +/* 801D81D0 001D5130 93 81 00 50 */ stw r28, 0x50(r1) +/* 801D81D4 001D5134 7C 9F 23 78 */ mr r31, r4 +/* 801D81D8 001D5138 FF C0 08 90 */ fmr f30, f1 +/* 801D81DC 001D513C 80 C4 08 B8 */ lwz r6, 0x8b8(r4) +/* 801D81E0 001D5140 2C 05 00 01 */ cmpwi r5, 1 +/* 801D81E4 001D5144 7C 7E 1B 78 */ mr r30, r3 +/* 801D81E8 001D5148 80 C6 00 00 */ lwz r6, 0(r6) +/* 801D81EC 001D514C 83 86 00 20 */ lwz r28, 0x20(r6) +/* 801D81F0 001D5150 41 82 00 68 */ beq lbl_801D8258 +/* 801D81F4 001D5154 40 80 00 10 */ bge lbl_801D8204 +/* 801D81F8 001D5158 2C 05 00 00 */ cmpwi r5, 0 +/* 801D81FC 001D515C 40 80 00 14 */ bge lbl_801D8210 +/* 801D8200 001D5160 48 00 02 90 */ b lbl_801D8490 +lbl_801D8204: +/* 801D8204 001D5164 2C 05 00 03 */ cmpwi r5, 3 +/* 801D8208 001D5168 40 80 02 88 */ bge lbl_801D8490 +/* 801D820C 001D516C 48 00 02 0C */ b lbl_801D8418 +lbl_801D8210: +/* 801D8210 001D5170 38 00 00 01 */ li r0, 1 +/* 801D8214 001D5174 90 1E 03 2C */ stw r0, 0x32c(r30) +/* 801D8218 001D5178 4B FF FC 2D */ bl RemoveAllAttractors__9CJellyZapFR13CStateManager +/* 801D821C 001D517C 38 80 00 01 */ li r4, 1 +/* 801D8220 001D5180 38 60 00 00 */ li r3, 0 +/* 801D8224 001D5184 90 9E 05 68 */ stw r4, 0x568(r30) +/* 801D8228 001D5188 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 801D822C 001D518C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801D8230 001D5190 98 1E 04 00 */ stb r0, 0x400(r30) +/* 801D8234 001D5194 88 1E 05 B8 */ lbz r0, 0x5b8(r30) +/* 801D8238 001D5198 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801D823C 001D519C 98 1E 05 B8 */ stb r0, 0x5b8(r30) +/* 801D8240 001D51A0 88 1E 05 B8 */ lbz r0, 0x5b8(r30) +/* 801D8244 001D51A4 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 801D8248 001D51A8 98 1E 05 B8 */ stb r0, 0x5b8(r30) +/* 801D824C 001D51AC C0 1E 05 B4 */ lfs f0, 0x5b4(r30) +/* 801D8250 001D51B0 D0 1E 03 40 */ stfs f0, 0x340(r30) +/* 801D8254 001D51B4 48 00 02 3C */ b lbl_801D8490 +lbl_801D8258: +/* 801D8258 001D51B8 3C A0 80 3E */ lis r5, lbl_803E5930@ha +/* 801D825C 001D51BC 38 C1 00 2C */ addi r6, r1, 0x2c +/* 801D8260 001D51C0 39 45 59 30 */ addi r10, r5, lbl_803E5930@l +/* 801D8264 001D51C4 38 A0 00 0A */ li r5, 0xa +/* 801D8268 001D51C8 81 2A 00 00 */ lwz r9, 0(r10) +/* 801D826C 001D51CC 38 E0 00 00 */ li r7, 0 +/* 801D8270 001D51D0 81 0A 00 04 */ lwz r8, 4(r10) +/* 801D8274 001D51D4 80 0A 00 08 */ lwz r0, 8(r10) +/* 801D8278 001D51D8 91 21 00 2C */ stw r9, 0x2c(r1) +/* 801D827C 001D51DC 91 01 00 30 */ stw r8, 0x30(r1) +/* 801D8280 001D51E0 90 01 00 34 */ stw r0, 0x34(r1) +/* 801D8284 001D51E4 4B EA 45 31 */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi +/* 801D8288 001D51E8 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 801D828C 001D51EC 38 80 00 15 */ li r4, 0x15 +/* 801D8290 001D51F0 C0 42 AC 80 */ lfs f2, lbl_805AC9A0@sda21(r2) +/* 801D8294 001D51F4 C0 82 AC 70 */ lfs f4, lbl_805AC990@sda21(r2) +/* 801D8298 001D51F8 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801D829C 001D51FC FF E0 10 90 */ fmr f31, f2 +/* 801D82A0 001D5200 C0 A3 00 50 */ lfs f5, 0x50(r3) +/* 801D82A4 001D5204 EC 20 20 2A */ fadds f1, f0, f4 +/* 801D82A8 001D5208 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801D82AC 001D520C C0 63 00 60 */ lfs f3, 0x60(r3) +/* 801D82B0 001D5210 EC A5 20 2A */ fadds f5, f5, f4 +/* 801D82B4 001D5214 C0 9E 00 50 */ lfs f4, 0x50(r30) +/* 801D82B8 001D5218 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801D82BC 001D521C EC 43 10 2A */ fadds f2, f3, f2 +/* 801D82C0 001D5220 C0 3E 00 60 */ lfs f1, 0x60(r30) +/* 801D82C4 001D5224 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801D82C8 001D5228 EC 65 20 28 */ fsubs f3, f5, f4 +/* 801D82CC 001D522C D0 03 00 1C */ stfs f0, 0x1c(r3) +/* 801D82D0 001D5230 EC 02 08 28 */ fsubs f0, f2, f1 +/* 801D82D4 001D5234 D0 63 00 20 */ stfs f3, 0x20(r3) +/* 801D82D8 001D5238 D0 03 00 24 */ stfs f0, 0x24(r3) +/* 801D82DC 001D523C 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 801D82E0 001D5240 83 BF 08 4C */ lwz r29, 0x84c(r31) +/* 801D82E4 001D5244 80 63 00 00 */ lwz r3, 0(r3) +/* 801D82E8 001D5248 4B EB 97 D9 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 801D82EC 001D524C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801D82F0 001D5250 41 82 00 08 */ beq lbl_801D82F8 +/* 801D82F4 001D5254 C3 E2 AC 88 */ lfs f31, lbl_805AC9A8@sda21(r2) +lbl_801D82F8: +/* 801D82F8 001D5258 C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 801D82FC 001D525C 38 61 00 38 */ addi r3, r1, 0x38 +/* 801D8300 001D5260 C0 1E 00 50 */ lfs f0, 0x50(r30) +/* 801D8304 001D5264 C0 7D 00 60 */ lfs f3, 0x60(r29) +/* 801D8308 001D5268 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 801D830C 001D526C EC 81 00 28 */ fsubs f4, f1, f0 +/* 801D8310 001D5270 C0 3D 00 40 */ lfs f1, 0x40(r29) +/* 801D8314 001D5274 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801D8318 001D5278 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801D831C 001D527C EC 01 00 28 */ fsubs f0, f1, f0 +/* 801D8320 001D5280 D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 801D8324 001D5284 D0 41 00 40 */ stfs f2, 0x40(r1) +/* 801D8328 001D5288 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 801D832C 001D528C 48 13 C5 8D */ bl Magnitude__9CVector3fCFv +/* 801D8330 001D5290 80 1D 02 F8 */ lwz r0, 0x2f8(r29) +/* 801D8334 001D5294 C0 62 AC 8C */ lfs f3, lbl_805AC9AC@sda21(r2) +/* 801D8338 001D5298 2C 00 00 01 */ cmpwi r0, 1 +/* 801D833C 001D529C 40 82 00 0C */ bne lbl_801D8348 +/* 801D8340 001D52A0 C0 5E 05 94 */ lfs f2, 0x594(r30) +/* 801D8344 001D52A4 48 00 00 18 */ b lbl_801D835C +lbl_801D8348: +/* 801D8348 001D52A8 2C 1C 00 01 */ cmpwi r28, 1 +/* 801D834C 001D52AC 40 82 00 0C */ bne lbl_801D8358 +/* 801D8350 001D52B0 C0 5E 05 90 */ lfs f2, 0x590(r30) +/* 801D8354 001D52B4 48 00 00 08 */ b lbl_801D835C +lbl_801D8358: +/* 801D8358 001D52B8 C0 5E 05 8C */ lfs f2, 0x58c(r30) +lbl_801D835C: +/* 801D835C 001D52BC C0 02 AC 80 */ lfs f0, lbl_805AC9A0@sda21(r2) +/* 801D8360 001D52C0 EC 83 00 B2 */ fmuls f4, f3, f2 +/* 801D8364 001D52C4 C0 41 00 3C */ lfs f2, 0x3c(r1) +/* 801D8368 001D52C8 EC A0 08 24 */ fdivs f5, f0, f1 +/* 801D836C 001D52CC C0 21 00 40 */ lfs f1, 0x40(r1) +/* 801D8370 001D52D0 C0 01 00 38 */ lfs f0, 0x38(r1) +/* 801D8374 001D52D4 C0 7D 00 E8 */ lfs f3, 0xe8(r29) +/* 801D8378 001D52D8 FC 40 10 50 */ fneg f2, f2 +/* 801D837C 001D52DC FC 20 08 50 */ fneg f1, f1 +/* 801D8380 001D52E0 FC 00 00 50 */ fneg f0, f0 +/* 801D8384 001D52E4 EC 45 00 B2 */ fmuls f2, f5, f2 +/* 801D8388 001D52E8 EC 25 00 72 */ fmuls f1, f5, f1 +/* 801D838C 001D52EC EC 05 00 32 */ fmuls f0, f5, f0 +/* 801D8390 001D52F0 EC 64 00 F2 */ fmuls f3, f4, f3 +/* 801D8394 001D52F4 EC 5F 00 B2 */ fmuls f2, f31, f2 +/* 801D8398 001D52F8 EC 3F 00 72 */ fmuls f1, f31, f1 +/* 801D839C 001D52FC EC 1F 00 32 */ fmuls f0, f31, f0 +/* 801D83A0 001D5300 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 801D83A4 001D5304 EC 23 00 72 */ fmuls f1, f3, f1 +/* 801D83A8 001D5308 EC 03 00 32 */ fmuls f0, f3, f0 +/* 801D83AC 001D530C EC 5E 00 B2 */ fmuls f2, f30, f2 +/* 801D83B0 001D5310 EC 3E 00 72 */ fmuls f1, f30, f1 +/* 801D83B4 001D5314 EC 1E 00 32 */ fmuls f0, f30, f0 +/* 801D83B8 001D5318 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 801D83BC 001D531C D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801D83C0 001D5320 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 801D83C4 001D5324 4B E4 31 71 */ bl Identity__10CAxisAngleFv +/* 801D83C8 001D5328 7C 65 1B 78 */ mr r5, r3 +/* 801D83CC 001D532C 7F A3 EB 78 */ mr r3, r29 +/* 801D83D0 001D5330 38 81 00 20 */ addi r4, r1, 0x20 +/* 801D83D4 001D5334 4B F4 3F C5 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +/* 801D83D8 001D5338 7F A3 EB 78 */ mr r3, r29 +/* 801D83DC 001D533C 4B F4 2D A1 */ bl UseCollisionImpulses__13CPhysicsActorFv +/* 801D83E0 001D5340 C0 02 AC 78 */ lfs f0, lbl_805AC998@sda21(r2) +/* 801D83E4 001D5344 38 81 00 14 */ addi r4, r1, 0x14 +/* 801D83E8 001D5348 C0 22 AC 88 */ lfs f1, lbl_805AC9A8@sda21(r2) +/* 801D83EC 001D534C EC 00 07 B2 */ fmuls f0, f0, f30 +/* 801D83F0 001D5350 FC 40 08 90 */ fmr f2, f1 +/* 801D83F4 001D5354 D0 1D 02 D4 */ stfs f0, 0x2d4(r29) +/* 801D83F8 001D5358 A0 1E 00 08 */ lhz r0, 8(r30) +/* 801D83FC 001D535C B0 01 00 14 */ sth r0, 0x14(r1) +/* 801D8400 001D5360 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 801D8404 001D5364 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801D8408 001D5368 80 63 00 00 */ lwz r3, 0(r3) +/* 801D840C 001D536C 38 63 01 88 */ addi r3, r3, 0x188 +/* 801D8410 001D5370 4B FE 87 29 */ bl AddSource__19CStaticInterferenceF9TUniqueId +/* 801D8414 001D5374 48 00 00 7C */ b lbl_801D8490 +lbl_801D8418: +/* 801D8418 001D5378 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801D841C 001D537C 38 00 00 0A */ li r0, 0xa +/* 801D8420 001D5380 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l +/* 801D8424 001D5384 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801D8428 001D5388 38 81 00 18 */ addi r4, r1, 0x18 +/* 801D842C 001D538C 90 61 00 18 */ stw r3, 0x18(r1) +/* 801D8430 001D5390 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801D8434 001D5394 38 63 00 04 */ addi r3, r3, 4 +/* 801D8438 001D5398 4B F5 93 81 */ bl DeliverCmd__16CBodyStateCmdMgrFRC13CBodyStateCmd +/* 801D843C 001D539C 34 01 00 18 */ addic. r0, r1, 0x18 +/* 801D8440 001D53A0 41 82 00 10 */ beq lbl_801D8450 +/* 801D8444 001D53A4 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801D8448 001D53A8 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801D844C 001D53AC 90 01 00 18 */ stw r0, 0x18(r1) +lbl_801D8450: +/* 801D8450 001D53B0 A0 1E 00 08 */ lhz r0, 8(r30) +/* 801D8454 001D53B4 38 81 00 0C */ addi r4, r1, 0xc +/* 801D8458 001D53B8 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801D845C 001D53BC 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 801D8460 001D53C0 B0 01 00 08 */ sth r0, 8(r1) +/* 801D8464 001D53C4 80 63 00 00 */ lwz r3, 0(r3) +/* 801D8468 001D53C8 38 63 01 88 */ addi r3, r3, 0x188 +/* 801D846C 001D53CC 4B FE 85 49 */ bl sub_801c09b4 +/* 801D8470 001D53D0 38 60 00 00 */ li r3, 0 +/* 801D8474 001D53D4 90 7E 03 2C */ stw r3, 0x32c(r30) +/* 801D8478 001D53D8 88 1E 05 B8 */ lbz r0, 0x5b8(r30) +/* 801D847C 001D53DC 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801D8480 001D53E0 98 1E 05 B8 */ stb r0, 0x5b8(r30) +/* 801D8484 001D53E4 88 1E 05 B8 */ lbz r0, 0x5b8(r30) +/* 801D8488 001D53E8 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801D848C 001D53EC 98 1E 05 B8 */ stb r0, 0x5b8(r30) +lbl_801D8490: +/* 801D8490 001D53F0 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 +/* 801D8494 001D53F4 CB E1 00 70 */ lfd f31, 0x70(r1) +/* 801D8498 001D53F8 E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 +/* 801D849C 001D53FC CB C1 00 60 */ lfd f30, 0x60(r1) +/* 801D84A0 001D5400 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 801D84A4 001D5404 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 801D84A8 001D5408 83 A1 00 54 */ lwz r29, 0x54(r1) +/* 801D84AC 001D540C 80 01 00 84 */ lwz r0, 0x84(r1) +/* 801D84B0 001D5410 83 81 00 50 */ lwz r28, 0x50(r1) +/* 801D84B4 001D5414 7C 08 03 A6 */ mtlr r0 +/* 801D84B8 001D5418 38 21 00 80 */ addi r1, r1, 0x80 +/* 801D84BC 001D541C 4E 80 00 20 */ blr + +.global Active__9CJellyZapFR13CStateManager9EStateMsgf +Active__9CJellyZapFR13CStateManager9EStateMsgf: +/* 801D84C0 001D5420 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801D84C4 001D5424 7C 08 02 A6 */ mflr r0 +/* 801D84C8 001D5428 90 01 00 54 */ stw r0, 0x54(r1) +/* 801D84CC 001D542C DB E1 00 40 */ stfd f31, 0x40(r1) +/* 801D84D0 001D5430 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 801D84D4 001D5434 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801D84D8 001D5438 FF E0 08 90 */ fmr f31, f1 +/* 801D84DC 001D543C 2C 05 00 01 */ cmpwi r5, 1 +/* 801D84E0 001D5440 7C 7F 1B 78 */ mr r31, r3 +/* 801D84E4 001D5444 41 82 00 50 */ beq lbl_801D8534 +/* 801D84E8 001D5448 40 80 00 10 */ bge lbl_801D84F8 +/* 801D84EC 001D544C 2C 05 00 00 */ cmpwi r5, 0 +/* 801D84F0 001D5450 40 80 00 14 */ bge lbl_801D8504 +/* 801D84F4 001D5454 48 00 01 1C */ b lbl_801D8610 +lbl_801D84F8: +/* 801D84F8 001D5458 2C 05 00 03 */ cmpwi r5, 3 +/* 801D84FC 001D545C 40 80 01 14 */ bge lbl_801D8610 +/* 801D8500 001D5460 48 00 01 00 */ b lbl_801D8600 +lbl_801D8504: +/* 801D8504 001D5464 88 1F 05 B8 */ lbz r0, 0x5b8(r31) +/* 801D8508 001D5468 38 60 00 01 */ li r3, 1 +/* 801D850C 001D546C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801D8510 001D5470 38 80 00 02 */ li r4, 2 +/* 801D8514 001D5474 98 1F 05 B8 */ stb r0, 0x5b8(r31) +/* 801D8518 001D5478 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801D851C 001D547C 4B F6 24 BD */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 801D8520 001D5480 38 00 00 00 */ li r0, 0 +/* 801D8524 001D5484 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801D8528 001D5488 C0 1F 03 D0 */ lfs f0, 0x3d0(r31) +/* 801D852C 001D548C D0 1F 03 40 */ stfs f0, 0x340(r31) +/* 801D8530 001D5490 48 00 00 E0 */ b lbl_801D8610 +lbl_801D8534: +/* 801D8534 001D5494 80 64 08 4C */ lwz r3, 0x84c(r4) +/* 801D8538 001D5498 C0 C2 AC 70 */ lfs f6, lbl_805AC990@sda21(r2) +/* 801D853C 001D549C C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801D8540 001D54A0 C0 43 00 50 */ lfs f2, 0x50(r3) +/* 801D8544 001D54A4 EC 20 30 2A */ fadds f1, f0, f6 +/* 801D8548 001D54A8 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801D854C 001D54AC EC A2 30 2A */ fadds f5, f2, f6 +/* 801D8550 001D54B0 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 801D8554 001D54B4 C0 62 AC 80 */ lfs f3, lbl_805AC9A0@sda21(r2) +/* 801D8558 001D54B8 C0 9F 00 50 */ lfs f4, 0x50(r31) +/* 801D855C 001D54BC EC 01 00 28 */ fsubs f0, f1, f0 +/* 801D8560 001D54C0 C0 3F 00 60 */ lfs f1, 0x60(r31) +/* 801D8564 001D54C4 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801D8568 001D54C8 EC 42 18 2A */ fadds f2, f2, f3 +/* 801D856C 001D54CC EC 85 20 28 */ fsubs f4, f5, f4 +/* 801D8570 001D54D0 D0 03 00 1C */ stfs f0, 0x1c(r3) +/* 801D8574 001D54D4 EC 02 08 28 */ fsubs f0, f2, f1 +/* 801D8578 001D54D8 D0 83 00 20 */ stfs f4, 0x20(r3) +/* 801D857C 001D54DC D0 03 00 24 */ stfs f0, 0x24(r3) +/* 801D8580 001D54E0 88 1F 05 B8 */ lbz r0, 0x5b8(r31) +/* 801D8584 001D54E4 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801D8588 001D54E8 41 82 00 88 */ beq lbl_801D8610 +/* 801D858C 001D54EC C0 1F 05 98 */ lfs f0, 0x598(r31) +/* 801D8590 001D54F0 38 61 00 08 */ addi r3, r1, 8 +/* 801D8594 001D54F4 38 9F 00 34 */ addi r4, r31, 0x34 +/* 801D8598 001D54F8 38 A1 00 2C */ addi r5, r1, 0x2c +/* 801D859C 001D54FC EC 20 01 B2 */ fmuls f1, f0, f6 +/* 801D85A0 001D5500 EC 00 00 F2 */ fmuls f0, f0, f3 +/* 801D85A4 001D5504 EC 3F 00 72 */ fmuls f1, f31, f1 +/* 801D85A8 001D5508 EC 1F 00 32 */ fmuls f0, f31, f0 +/* 801D85AC 001D550C D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 801D85B0 001D5510 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801D85B4 001D5514 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 801D85B8 001D5518 48 13 A4 6D */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 801D85BC 001D551C FC 20 F8 90 */ fmr f1, f31 +/* 801D85C0 001D5520 7F E4 FB 78 */ mr r4, r31 +/* 801D85C4 001D5524 38 61 00 14 */ addi r3, r1, 0x14 +/* 801D85C8 001D5528 38 A1 00 08 */ addi r5, r1, 8 +/* 801D85CC 001D552C 4B F4 2A 3D */ bl GetMoveToORImpulseWR__13CPhysicsActorCFRC9CVector3ff +/* 801D85D0 001D5530 C0 41 00 14 */ lfs f2, 0x14(r1) +/* 801D85D4 001D5534 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 801D85D8 001D5538 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 801D85DC 001D553C D0 41 00 20 */ stfs f2, 0x20(r1) +/* 801D85E0 001D5540 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 801D85E4 001D5544 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 801D85E8 001D5548 4B E4 2F 4D */ bl Identity__10CAxisAngleFv +/* 801D85EC 001D554C 7C 65 1B 78 */ mr r5, r3 +/* 801D85F0 001D5550 7F E3 FB 78 */ mr r3, r31 +/* 801D85F4 001D5554 38 81 00 20 */ addi r4, r1, 0x20 +/* 801D85F8 001D5558 4B F4 3C 0D */ bl ApplyImpulseOR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +/* 801D85FC 001D555C 48 00 00 14 */ b lbl_801D8610 +lbl_801D8600: +/* 801D8600 001D5560 88 1F 05 B8 */ lbz r0, 0x5b8(r31) +/* 801D8604 001D5564 38 60 00 00 */ li r3, 0 +/* 801D8608 001D5568 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801D860C 001D556C 98 1F 05 B8 */ stb r0, 0x5b8(r31) +lbl_801D8610: +/* 801D8610 001D5570 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 801D8614 001D5574 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801D8618 001D5578 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 801D861C 001D557C 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801D8620 001D5580 7C 08 03 A6 */ mtlr r0 +/* 801D8624 001D5584 38 21 00 50 */ addi r1, r1, 0x50 +/* 801D8628 001D5588 4E 80 00 20 */ blr + +.global InActive__9CJellyZapFR13CStateManager9EStateMsgf +InActive__9CJellyZapFR13CStateManager9EStateMsgf: +/* 801D862C 001D558C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D8630 001D5590 7C 08 02 A6 */ mflr r0 +/* 801D8634 001D5594 2C 05 00 00 */ cmpwi r5, 0 +/* 801D8638 001D5598 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D863C 001D559C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801D8640 001D55A0 7C 9F 23 78 */ mr r31, r4 +/* 801D8644 001D55A4 93 C1 00 08 */ stw r30, 8(r1) +/* 801D8648 001D55A8 7C 7E 1B 78 */ mr r30, r3 +/* 801D864C 001D55AC 41 82 00 08 */ beq lbl_801D8654 +/* 801D8650 001D55B0 48 00 00 34 */ b lbl_801D8684 +lbl_801D8654: +/* 801D8654 001D55B4 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 801D8658 001D55B8 38 60 00 00 */ li r3, 0 +/* 801D865C 001D55BC 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801D8660 001D55C0 38 80 00 01 */ li r4, 1 +/* 801D8664 001D55C4 98 1E 04 00 */ stb r0, 0x400(r30) +/* 801D8668 001D55C8 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801D866C 001D55CC 4B F6 23 6D */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 801D8670 001D55D0 7F C3 F3 78 */ mr r3, r30 +/* 801D8674 001D55D4 7F E4 FB 78 */ mr r4, r31 +/* 801D8678 001D55D8 4B FF F7 ED */ bl AddAttractor__9CJellyZapFR13CStateManager +/* 801D867C 001D55DC 38 00 00 00 */ li r0, 0 +/* 801D8680 001D55E0 90 1E 05 68 */ stw r0, 0x568(r30) +lbl_801D8684: +/* 801D8684 001D55E4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D8688 001D55E8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801D868C 001D55EC 83 C1 00 08 */ lwz r30, 8(r1) +/* 801D8690 001D55F0 7C 08 03 A6 */ mtlr r0 +/* 801D8694 001D55F4 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D8698 001D55F8 4E 80 00 20 */ blr + +.global ShouldAttack__9CJellyZapFR13CStateManagerf +ShouldAttack__9CJellyZapFR13CStateManagerf: +/* 801D869C 001D55FC C0 23 03 38 */ lfs f1, 0x338(r3) +/* 801D86A0 001D5600 C0 03 05 A8 */ lfs f0, 0x5a8(r3) +/* 801D86A4 001D5604 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801D86A8 001D5608 7C 00 00 26 */ mfcr r0 +/* 801D86AC 001D560C 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f +/* 801D86B0 001D5610 4E 80 00 20 */ blr + +.global ShouldSpecialAttack__9CJellyZapFR13CStateManagerf +ShouldSpecialAttack__9CJellyZapFR13CStateManagerf: +/* 801D86B4 001D5614 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D86B8 001D5618 7C 08 02 A6 */ mflr r0 +/* 801D86BC 001D561C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D86C0 001D5620 4B FF F3 65 */ bl ClosestToPlayer__9CJellyZapCFR13CStateManager +/* 801D86C4 001D5624 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D86C8 001D5628 7C 08 03 A6 */ mtlr r0 +/* 801D86CC 001D562C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D86D0 001D5630 4E 80 00 20 */ blr + +.global InAttackPosition__9CJellyZapFR13CStateManagerf +InAttackPosition__9CJellyZapFR13CStateManagerf: +/* 801D86D4 001D5634 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801D86D8 001D5638 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 801D86DC 001D563C 88 04 00 E6 */ lbz r0, 0xe6(r4) +/* 801D86E0 001D5640 54 00 DF 7F */ rlwinm. r0, r0, 0x1b, 0x1d, 0x1f +/* 801D86E4 001D5644 40 82 00 0C */ bne lbl_801D86F0 +/* 801D86E8 001D5648 38 60 00 00 */ li r3, 0 +/* 801D86EC 001D564C 48 00 00 68 */ b lbl_801D8754 +lbl_801D86F0: +/* 801D86F0 001D5650 C0 E4 00 50 */ lfs f7, 0x50(r4) +/* 801D86F4 001D5654 C0 03 00 50 */ lfs f0, 0x50(r3) +/* 801D86F8 001D5658 C0 64 00 40 */ lfs f3, 0x40(r4) +/* 801D86FC 001D565C EC C7 00 28 */ fsubs f6, f7, f0 +/* 801D8700 001D5660 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801D8704 001D5664 C1 04 00 60 */ lfs f8, 0x60(r4) +/* 801D8708 001D5668 EC 83 00 28 */ fsubs f4, f3, f0 +/* 801D870C 001D566C C0 03 00 60 */ lfs f0, 0x60(r3) +/* 801D8710 001D5670 EC 26 01 B2 */ fmuls f1, f6, f6 +/* 801D8714 001D5674 EC A8 00 28 */ fsubs f5, f8, f0 +/* 801D8718 001D5678 C0 03 05 88 */ lfs f0, 0x588(r3) +/* 801D871C 001D567C EC 44 01 32 */ fmuls f2, f4, f4 +/* 801D8720 001D5680 EC 00 00 32 */ fmuls f0, f0, f0 +/* 801D8724 001D5684 D0 61 00 08 */ stfs f3, 8(r1) +/* 801D8728 001D5688 EC 65 01 72 */ fmuls f3, f5, f5 +/* 801D872C 001D568C EC 22 08 2A */ fadds f1, f2, f1 +/* 801D8730 001D5690 D0 E1 00 0C */ stfs f7, 0xc(r1) +/* 801D8734 001D5694 D1 01 00 10 */ stfs f8, 0x10(r1) +/* 801D8738 001D5698 EC 23 08 2A */ fadds f1, f3, f1 +/* 801D873C 001D569C D0 81 00 14 */ stfs f4, 0x14(r1) +/* 801D8740 001D56A0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801D8744 001D56A4 D0 C1 00 18 */ stfs f6, 0x18(r1) +/* 801D8748 001D56A8 D0 A1 00 1C */ stfs f5, 0x1c(r1) +/* 801D874C 001D56AC 7C 00 00 26 */ mfcr r0 +/* 801D8750 001D56B0 54 03 0F FE */ srwi r3, r0, 0x1f +lbl_801D8754: +/* 801D8754 001D56B4 38 21 00 20 */ addi r1, r1, 0x20 +/* 801D8758 001D56B8 4E 80 00 20 */ blr + +.global InDetectionRange__9CJellyZapFR13CStateManagerf +InDetectionRange__9CJellyZapFR13CStateManagerf: +/* 801D875C 001D56BC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D8760 001D56C0 7C 08 02 A6 */ mflr r0 +/* 801D8764 001D56C4 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D8768 001D56C8 80 A4 08 4C */ lwz r5, 0x84c(r4) +/* 801D876C 001D56CC 88 05 00 E6 */ lbz r0, 0xe6(r5) +/* 801D8770 001D56D0 54 00 DF 7F */ rlwinm. r0, r0, 0x1b, 0x1d, 0x1f +/* 801D8774 001D56D4 40 82 00 0C */ bne lbl_801D8780 +/* 801D8778 001D56D8 38 60 00 00 */ li r3, 0 +/* 801D877C 001D56DC 48 00 00 08 */ b lbl_801D8784 +lbl_801D8780: +/* 801D8780 001D56E0 48 01 DB ED */ bl InDetectionRange__10CPatternedFR13CStateManagerf +lbl_801D8784: +/* 801D8784 001D56E4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D8788 001D56E8 7C 08 03 A6 */ mtlr r0 +/* 801D878C 001D56EC 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D8790 001D56F0 4E 80 00 20 */ blr + +.global DoUserAnimEvent__9CJellyZapFR13CStateManagerRC13CInt32POINode14EUserEventType +DoUserAnimEvent__9CJellyZapFR13CStateManagerRC13CInt32POINode14EUserEventType: +/* 801D8794 001D56F4 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801D8798 001D56F8 7C 08 02 A6 */ mflr r0 +/* 801D879C 001D56FC 90 01 00 64 */ stw r0, 0x64(r1) +/* 801D87A0 001D5700 DB E1 00 50 */ stfd f31, 0x50(r1) +/* 801D87A4 001D5704 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 801D87A8 001D5708 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801D87AC 001D570C 93 C1 00 48 */ stw r30, 0x48(r1) +/* 801D87B0 001D5710 93 A1 00 44 */ stw r29, 0x44(r1) +/* 801D87B4 001D5714 93 81 00 40 */ stw r28, 0x40(r1) +/* 801D87B8 001D5718 88 0D A4 B0 */ lbz r0, lbl_805A9070@sda21(r13) +/* 801D87BC 001D571C FF E0 08 90 */ fmr f31, f1 +/* 801D87C0 001D5720 7C 7C 1B 78 */ mr r28, r3 +/* 801D87C4 001D5724 7C 9D 23 78 */ mr r29, r4 +/* 801D87C8 001D5728 7C 00 07 75 */ extsb. r0, r0 +/* 801D87CC 001D572C 7C BE 2B 78 */ mr r30, r5 +/* 801D87D0 001D5730 7C DF 33 78 */ mr r31, r6 +/* 801D87D4 001D5734 40 82 00 40 */ bne lbl_801D8814 +/* 801D87D8 001D5738 80 AD 91 D0 */ lwz r5, lbl_805A7D90@sda21(r13) +/* 801D87DC 001D573C 38 60 00 00 */ li r3, 0 +/* 801D87E0 001D5740 38 80 00 01 */ li r4, 1 +/* 801D87E4 001D5744 48 1B 17 11 */ bl __shl2i +/* 801D87E8 001D5748 3C A0 80 47 */ lis r5, lbl_8046C920@ha +/* 801D87EC 001D574C 38 C0 00 01 */ li r6, 1 +/* 801D87F0 001D5750 38 A5 C9 20 */ addi r5, r5, lbl_8046C920@l +/* 801D87F4 001D5754 38 00 00 00 */ li r0, 0 +/* 801D87F8 001D5758 90 C1 00 30 */ stw r6, 0x30(r1) +/* 801D87FC 001D575C 90 85 00 04 */ stw r4, 4(r5) +/* 801D8800 001D5760 90 65 00 00 */ stw r3, 0(r5) +/* 801D8804 001D5764 90 05 00 0C */ stw r0, 0xc(r5) +/* 801D8808 001D5768 90 05 00 08 */ stw r0, 8(r5) +/* 801D880C 001D576C 90 C5 00 10 */ stw r6, 0x10(r5) +/* 801D8810 001D5770 98 CD A4 B0 */ stb r6, lbl_805A9070@sda21(r13) +lbl_801D8814: +/* 801D8814 001D5774 2C 1F 00 08 */ cmpwi r31, 8 +/* 801D8818 001D5778 38 00 00 00 */ li r0, 0 +/* 801D881C 001D577C 41 82 00 08 */ beq lbl_801D8824 +/* 801D8820 001D5780 48 00 00 4C */ b lbl_801D886C +lbl_801D8824: +/* 801D8824 001D5784 C0 5C 00 60 */ lfs f2, 0x60(r28) +/* 801D8828 001D5788 3C 60 80 47 */ lis r3, lbl_8046C920@ha +/* 801D882C 001D578C C0 3C 00 50 */ lfs f1, 0x50(r28) +/* 801D8830 001D5790 39 03 C9 20 */ addi r8, r3, lbl_8046C920@l +/* 801D8834 001D5794 C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 801D8838 001D5798 7F A3 EB 78 */ mr r3, r29 +/* 801D883C 001D579C 7F 85 E3 78 */ mr r5, r28 +/* 801D8840 001D57A0 38 81 00 0C */ addi r4, r1, 0xc +/* 801D8844 001D57A4 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801D8848 001D57A8 38 C1 00 10 */ addi r6, r1, 0x10 +/* 801D884C 001D57AC 38 FC 05 6C */ addi r7, r28, 0x56c +/* 801D8850 001D57B0 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 801D8854 001D57B4 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 801D8858 001D57B8 A0 1C 00 08 */ lhz r0, 8(r28) +/* 801D885C 001D57BC B0 01 00 08 */ sth r0, 8(r1) +/* 801D8860 001D57C0 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801D8864 001D57C4 4B E7 04 49 */ bl ApplyDamageToWorld__13CStateManagerF9TUniqueIdRC6CActorRC9CVector3fRC11CDamageInfoRC15CMaterialFilter +/* 801D8868 001D57C8 38 00 00 01 */ li r0, 1 +lbl_801D886C: +/* 801D886C 001D57CC 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 801D8870 001D57D0 40 82 00 1C */ bne lbl_801D888C +/* 801D8874 001D57D4 FC 20 F8 90 */ fmr f1, f31 +/* 801D8878 001D57D8 7F 83 E3 78 */ mr r3, r28 +/* 801D887C 001D57DC 7F A4 EB 78 */ mr r4, r29 +/* 801D8880 001D57E0 7F C5 F3 78 */ mr r5, r30 +/* 801D8884 001D57E4 7F E6 FB 78 */ mr r6, r31 +/* 801D8888 001D57E8 4B EA 06 29 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +lbl_801D888C: +/* 801D888C 001D57EC E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 +/* 801D8890 001D57F0 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801D8894 001D57F4 CB E1 00 50 */ lfd f31, 0x50(r1) +/* 801D8898 001D57F8 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801D889C 001D57FC 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 801D88A0 001D5800 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 801D88A4 001D5804 83 81 00 40 */ lwz r28, 0x40(r1) +/* 801D88A8 001D5808 7C 08 03 A6 */ mtlr r0 +/* 801D88AC 001D580C 38 21 00 60 */ addi r1, r1, 0x60 +/* 801D88B0 001D5810 4E 80 00 20 */ blr + +.global AcceptScriptMsg__9CJellyZapF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__9CJellyZapF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 801D88B4 001D5814 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801D88B8 001D5818 7C 08 02 A6 */ mflr r0 +/* 801D88BC 001D581C 90 01 00 24 */ stw r0, 0x24(r1) +/* 801D88C0 001D5820 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801D88C4 001D5824 7C DF 33 78 */ mr r31, r6 +/* 801D88C8 001D5828 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801D88CC 001D582C 7C 9E 23 78 */ mr r30, r4 +/* 801D88D0 001D5830 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801D88D4 001D5834 7C 7D 1B 78 */ mr r29, r3 +/* 801D88D8 001D5838 A0 05 00 00 */ lhz r0, 0(r5) +/* 801D88DC 001D583C 38 A1 00 08 */ addi r5, r1, 8 +/* 801D88E0 001D5840 B0 01 00 08 */ sth r0, 8(r1) +/* 801D88E4 001D5844 4B EA 42 95 */ bl AcceptScriptMsg__10CPatternedF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 801D88E8 001D5848 2C 1E 00 04 */ cmpwi r30, 4 +/* 801D88EC 001D584C 41 82 00 4C */ beq lbl_801D8938 +/* 801D88F0 001D5850 40 80 00 10 */ bge lbl_801D8900 +/* 801D88F4 001D5854 2C 1E 00 01 */ cmpwi r30, 1 +/* 801D88F8 001D5858 41 82 00 20 */ beq lbl_801D8918 +/* 801D88FC 001D585C 48 00 00 48 */ b lbl_801D8944 +lbl_801D8900: +/* 801D8900 001D5860 2C 1E 00 22 */ cmpwi r30, 0x22 +/* 801D8904 001D5864 41 82 00 34 */ beq lbl_801D8938 +/* 801D8908 001D5868 40 80 00 3C */ bge lbl_801D8944 +/* 801D890C 001D586C 2C 1E 00 21 */ cmpwi r30, 0x21 +/* 801D8910 001D5870 40 80 00 18 */ bge lbl_801D8928 +/* 801D8914 001D5874 48 00 00 30 */ b lbl_801D8944 +lbl_801D8918: +/* 801D8918 001D5878 7F A3 EB 78 */ mr r3, r29 +/* 801D891C 001D587C 7F E4 FB 78 */ mr r4, r31 +/* 801D8920 001D5880 4B FF F5 45 */ bl AddAttractor__9CJellyZapFR13CStateManager +/* 801D8924 001D5884 48 00 00 20 */ b lbl_801D8944 +lbl_801D8928: +/* 801D8928 001D5888 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 801D892C 001D588C 7F E4 FB 78 */ mr r4, r31 +/* 801D8930 001D5890 4B F6 23 C1 */ bl Activate__15CBodyControllerFR13CStateManager +/* 801D8934 001D5894 48 00 00 10 */ b lbl_801D8944 +lbl_801D8938: +/* 801D8938 001D5898 7F A3 EB 78 */ mr r3, r29 +/* 801D893C 001D589C 7F E4 FB 78 */ mr r4, r31 +/* 801D8940 001D58A0 4B FF F5 05 */ bl RemoveAllAttractors__9CJellyZapFR13CStateManager +lbl_801D8944: +/* 801D8944 001D58A4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801D8948 001D58A8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801D894C 001D58AC 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801D8950 001D58B0 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801D8954 001D58B4 7C 08 03 A6 */ mtlr r0 +/* 801D8958 001D58B8 38 21 00 20 */ addi r1, r1, 0x20 +/* 801D895C 001D58BC 4E 80 00 20 */ blr + +.global Think__9CJellyZapFfR13CStateManager +Think__9CJellyZapFfR13CStateManager: +/* 801D8960 001D58C0 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801D8964 001D58C4 7C 08 02 A6 */ mflr r0 +/* 801D8968 001D58C8 90 01 00 44 */ stw r0, 0x44(r1) +/* 801D896C 001D58CC DB E1 00 30 */ stfd f31, 0x30(r1) +/* 801D8970 001D58D0 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 801D8974 001D58D4 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801D8978 001D58D8 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801D897C 001D58DC FF E0 08 90 */ fmr f31, f1 +/* 801D8980 001D58E0 7C 7E 1B 78 */ mr r30, r3 +/* 801D8984 001D58E4 7C 9F 23 78 */ mr r31, r4 +/* 801D8988 001D58E8 4B EA 11 91 */ bl Think__10CPatternedFfR13CStateManager +/* 801D898C 001D58EC 88 1E 00 30 */ lbz r0, 0x30(r30) +/* 801D8990 001D58F0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801D8994 001D58F4 41 82 00 CC */ beq lbl_801D8A60 +/* 801D8998 001D58F8 88 1E 05 B8 */ lbz r0, 0x5b8(r30) +/* 801D899C 001D58FC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801D89A0 001D5900 41 82 00 54 */ beq lbl_801D89F4 +/* 801D89A4 001D5904 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 801D89A8 001D5908 FC 20 F8 90 */ fmr f1, f31 +/* 801D89AC 001D590C C0 1E 00 60 */ lfs f0, 0x60(r30) +/* 801D89B0 001D5910 38 81 00 18 */ addi r4, r1, 0x18 +/* 801D89B4 001D5914 C0 C3 00 60 */ lfs f6, 0x60(r3) +/* 801D89B8 001D5918 C0 A3 00 50 */ lfs f5, 0x50(r3) +/* 801D89BC 001D591C C0 7E 00 50 */ lfs f3, 0x50(r30) +/* 801D89C0 001D5920 EC 46 00 28 */ fsubs f2, f6, f0 +/* 801D89C4 001D5924 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801D89C8 001D5928 C0 9E 00 40 */ lfs f4, 0x40(r30) +/* 801D89CC 001D592C EC 65 18 28 */ fsubs f3, f5, f3 +/* 801D89D0 001D5930 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801D89D4 001D5934 EC 00 20 28 */ fsubs f0, f0, f4 +/* 801D89D8 001D5938 D0 61 00 1C */ stfs f3, 0x1c(r1) +/* 801D89DC 001D593C D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801D89E0 001D5940 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 801D89E4 001D5944 D0 A1 00 10 */ stfs f5, 0x10(r1) +/* 801D89E8 001D5948 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801D89EC 001D594C D0 C1 00 14 */ stfs f6, 0x14(r1) +/* 801D89F0 001D5950 4B F6 1C B5 */ bl FaceDirection__15CBodyControllerFRC9CVector3ff +lbl_801D89F4: +/* 801D89F4 001D5954 C0 1E 05 0C */ lfs f0, 0x50c(r30) +/* 801D89F8 001D5958 D0 01 00 08 */ stfs f0, 8(r1) +/* 801D89FC 001D595C 88 1E 05 B8 */ lbz r0, 0x5b8(r30) +/* 801D8A00 001D5960 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801D8A04 001D5964 41 82 00 30 */ beq lbl_801D8A34 +/* 801D8A08 001D5968 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801D8A0C 001D596C 4B F6 16 C1 */ bl GetPercentageFrozen__15CBodyControllerCFv +/* 801D8A10 001D5970 C0 02 AC 70 */ lfs f0, lbl_805AC990@sda21(r2) +/* 801D8A14 001D5974 FC 00 08 00 */ fcmpu cr0, f0, f1 +/* 801D8A18 001D5978 40 82 00 1C */ bne lbl_801D8A34 +/* 801D8A1C 001D597C C0 02 AC 90 */ lfs f0, lbl_805AC9B0@sda21(r2) +/* 801D8A20 001D5980 C0 21 00 08 */ lfs f1, 8(r1) +/* 801D8A24 001D5984 EC 1F 00 24 */ fdivs f0, f31, f0 +/* 801D8A28 001D5988 EC 01 00 2A */ fadds f0, f1, f0 +/* 801D8A2C 001D598C D0 01 00 08 */ stfs f0, 8(r1) +/* 801D8A30 001D5990 48 00 00 18 */ b lbl_801D8A48 +lbl_801D8A34: +/* 801D8A34 001D5994 C0 02 AC 94 */ lfs f0, lbl_805AC9B4@sda21(r2) +/* 801D8A38 001D5998 C0 21 00 08 */ lfs f1, 8(r1) +/* 801D8A3C 001D599C EC 1F 00 24 */ fdivs f0, f31, f0 +/* 801D8A40 001D59A0 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801D8A44 001D59A4 D0 01 00 08 */ stfs f0, 8(r1) +lbl_801D8A48: +/* 801D8A48 001D59A8 38 81 00 08 */ addi r4, r1, 8 +/* 801D8A4C 001D59AC 38 6D 91 C8 */ addi r3, r13, lbl_805A7D88@sda21 +/* 801D8A50 001D59B0 38 AD 91 CC */ addi r5, r13, lbl_805A7D8C@sda21 +/* 801D8A54 001D59B4 4B E3 38 61 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 801D8A58 001D59B8 C0 03 00 00 */ lfs f0, 0(r3) +/* 801D8A5C 001D59BC D0 1E 05 0C */ stfs f0, 0x50c(r30) +lbl_801D8A60: +/* 801D8A60 001D59C0 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 801D8A64 001D59C4 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801D8A68 001D59C8 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 801D8A6C 001D59CC 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801D8A70 001D59D0 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801D8A74 001D59D4 7C 08 03 A6 */ mtlr r0 +/* 801D8A78 001D59D8 38 21 00 40 */ addi r1, r1, 0x40 +/* 801D8A7C 001D59DC 4E 80 00 20 */ blr + +.global Accept__9CJellyZapFR8IVisitor +Accept__9CJellyZapFR8IVisitor: +/* 801D8A80 001D59E0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D8A84 001D59E4 7C 08 02 A6 */ mflr r0 +/* 801D8A88 001D59E8 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D8A8C 001D59EC 7C 60 1B 78 */ mr r0, r3 +/* 801D8A90 001D59F0 7C 83 23 78 */ mr r3, r4 +/* 801D8A94 001D59F4 81 84 00 00 */ lwz r12, 0(r4) +/* 801D8A98 001D59F8 7C 04 03 78 */ mr r4, r0 +/* 801D8A9C 001D59FC 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801D8AA0 001D5A00 7D 89 03 A6 */ mtctr r12 +/* 801D8AA4 001D5A04 4E 80 04 21 */ bctrl +/* 801D8AA8 001D5A08 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D8AAC 001D5A0C 7C 08 03 A6 */ mtlr r0 +/* 801D8AB0 001D5A10 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D8AB4 001D5A14 4E 80 00 20 */ blr + +.global "__ct__9CJellyZapF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC11CDamageInfofffffffffffRC14CPatternedInfoRC16CActorParameters" +"__ct__9CJellyZapF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC11CDamageInfofffffffffffRC14CPatternedInfoRC16CActorParameters": +/* 801D8AB8 001D5A18 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 801D8ABC 001D5A1C 7C 08 02 A6 */ mflr r0 +/* 801D8AC0 001D5A20 90 01 01 04 */ stw r0, 0x104(r1) +/* 801D8AC4 001D5A24 DB E1 00 F0 */ stfd f31, 0xf0(r1) +/* 801D8AC8 001D5A28 F3 E1 00 F8 */ psq_st f31, 248(r1), 0, qr0 +/* 801D8ACC 001D5A2C DB C1 00 E0 */ stfd f30, 0xe0(r1) +/* 801D8AD0 001D5A30 F3 C1 00 E8 */ psq_st f30, 232(r1), 0, qr0 +/* 801D8AD4 001D5A34 DB A1 00 D0 */ stfd f29, 0xd0(r1) +/* 801D8AD8 001D5A38 F3 A1 00 D8 */ psq_st f29, 216(r1), 0, qr0 +/* 801D8ADC 001D5A3C DB 81 00 C0 */ stfd f28, 0xc0(r1) +/* 801D8AE0 001D5A40 F3 81 00 C8 */ psq_st f28, 200(r1), 0, qr0 +/* 801D8AE4 001D5A44 DB 61 00 B0 */ stfd f27, 0xb0(r1) +/* 801D8AE8 001D5A48 F3 61 00 B8 */ psq_st f27, 184(r1), 0, qr0 +/* 801D8AEC 001D5A4C DB 41 00 A0 */ stfd f26, 0xa0(r1) +/* 801D8AF0 001D5A50 F3 41 00 A8 */ psq_st f26, 168(r1), 0, qr0 +/* 801D8AF4 001D5A54 DB 21 00 90 */ stfd f25, 0x90(r1) +/* 801D8AF8 001D5A58 F3 21 00 98 */ psq_st f25, 152(r1), 0, qr0 +/* 801D8AFC 001D5A5C DB 01 00 80 */ stfd f24, 0x80(r1) +/* 801D8B00 001D5A60 F3 01 00 88 */ psq_st f24, 136(r1), 0, qr0 +/* 801D8B04 001D5A64 DA E1 00 70 */ stfd f23, 0x70(r1) +/* 801D8B08 001D5A68 F2 E1 00 78 */ psq_st f23, 120(r1), 0, qr0 +/* 801D8B0C 001D5A6C DA C1 00 60 */ stfd f22, 0x60(r1) +/* 801D8B10 001D5A70 F2 C1 00 68 */ psq_st f22, 104(r1), 0, qr0 +/* 801D8B14 001D5A74 DA A1 00 50 */ stfd f21, 0x50(r1) +/* 801D8B18 001D5A78 F2 A1 00 58 */ psq_st f21, 88(r1), 0, qr0 +/* 801D8B1C 001D5A7C DA 81 00 40 */ stfd f20, 0x40(r1) +/* 801D8B20 001D5A80 F2 81 00 48 */ psq_st f20, 72(r1), 0, qr0 +/* 801D8B24 001D5A84 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801D8B28 001D5A88 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801D8B2C 001D5A8C 93 A1 00 34 */ stw r29, 0x34(r1) +/* 801D8B30 001D5A90 A0 04 00 00 */ lhz r0, 0(r4) +/* 801D8B34 001D5A94 7C CC 33 78 */ mr r12, r6 +/* 801D8B38 001D5A98 7D 0B 43 78 */ mr r11, r8 +/* 801D8B3C 001D5A9C 7D 3E 4B 78 */ mr r30, r9 +/* 801D8B40 001D5AA0 B0 01 00 20 */ sth r0, 0x20(r1) +/* 801D8B44 001D5AA4 7D 5F 53 78 */ mr r31, r10 +/* 801D8B48 001D5AA8 80 81 01 18 */ lwz r4, 0x118(r1) +/* 801D8B4C 001D5AAC 7C A6 2B 78 */ mr r6, r5 +/* 801D8B50 001D5AB0 7C E9 3B 78 */ mr r9, r7 +/* 801D8B54 001D5AB4 38 00 00 01 */ li r0, 1 +/* 801D8B58 001D5AB8 90 81 00 08 */ stw r4, 8(r1) +/* 801D8B5C 001D5ABC FE 80 08 90 */ fmr f20, f1 +/* 801D8B60 001D5AC0 80 81 01 1C */ lwz r4, 0x11c(r1) +/* 801D8B64 001D5AC4 FE A0 10 90 */ fmr f21, f2 +/* 801D8B68 001D5AC8 90 01 00 0C */ stw r0, 0xc(r1) +/* 801D8B6C 001D5ACC FE C0 18 90 */ fmr f22, f3 +/* 801D8B70 001D5AD0 FE E0 20 90 */ fmr f23, f4 +/* 801D8B74 001D5AD4 90 01 00 10 */ stw r0, 0x10(r1) +/* 801D8B78 001D5AD8 FF 00 28 90 */ fmr f24, f5 +/* 801D8B7C 001D5ADC FF 20 30 90 */ fmr f25, f6 +/* 801D8B80 001D5AE0 C3 81 01 08 */ lfs f28, 0x108(r1) +/* 801D8B84 001D5AE4 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D8B88 001D5AE8 FF 40 38 90 */ fmr f26, f7 +/* 801D8B8C 001D5AEC C3 A1 01 0C */ lfs f29, 0x10c(r1) +/* 801D8B90 001D5AF0 90 81 00 18 */ stw r4, 0x18(r1) +/* 801D8B94 001D5AF4 FF 60 40 90 */ fmr f27, f8 +/* 801D8B98 001D5AF8 C3 C1 01 10 */ lfs f30, 0x110(r1) +/* 801D8B9C 001D5AFC 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801D8BA0 001D5B00 C3 E1 01 14 */ lfs f31, 0x114(r1) +/* 801D8BA4 001D5B04 7C 7D 1B 78 */ mr r29, r3 +/* 801D8BA8 001D5B08 7D 88 63 78 */ mr r8, r12 +/* 801D8BAC 001D5B0C 7D 6A 5B 78 */ mr r10, r11 +/* 801D8BB0 001D5B10 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801D8BB4 001D5B14 38 80 00 10 */ li r4, 0x10 +/* 801D8BB8 001D5B18 38 E0 00 00 */ li r7, 0 +/* 801D8BBC 001D5B1C 4B EA 48 95 */ bl "__ct__10CPatternedFUi9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC16CActorParametersUi" +/* 801D8BC0 001D5B20 3C 60 80 3E */ lis r3, lbl_803E5954@ha +/* 801D8BC4 001D5B24 38 C0 00 00 */ li r6, 0 +/* 801D8BC8 001D5B28 38 03 59 54 */ addi r0, r3, lbl_803E5954@l +/* 801D8BCC 001D5B2C 38 80 00 01 */ li r4, 1 +/* 801D8BD0 001D5B30 90 1D 00 00 */ stw r0, 0(r29) +/* 801D8BD4 001D5B34 7F A3 EB 78 */ mr r3, r29 +/* 801D8BD8 001D5B38 90 DD 05 68 */ stw r6, 0x568(r29) +/* 801D8BDC 001D5B3C 80 1E 00 00 */ lwz r0, 0(r30) +/* 801D8BE0 001D5B40 90 1D 05 6C */ stw r0, 0x56c(r29) +/* 801D8BE4 001D5B44 88 1E 00 04 */ lbz r0, 4(r30) +/* 801D8BE8 001D5B48 98 1D 05 70 */ stb r0, 0x570(r29) +/* 801D8BEC 001D5B4C C0 1E 00 08 */ lfs f0, 8(r30) +/* 801D8BF0 001D5B50 D0 1D 05 74 */ stfs f0, 0x574(r29) +/* 801D8BF4 001D5B54 C0 1E 00 0C */ lfs f0, 0xc(r30) +/* 801D8BF8 001D5B58 D0 1D 05 78 */ stfs f0, 0x578(r29) +/* 801D8BFC 001D5B5C C0 1E 00 10 */ lfs f0, 0x10(r30) +/* 801D8C00 001D5B60 D0 1D 05 7C */ stfs f0, 0x57c(r29) +/* 801D8C04 001D5B64 C0 1E 00 14 */ lfs f0, 0x14(r30) +/* 801D8C08 001D5B68 D0 1D 05 80 */ stfs f0, 0x580(r29) +/* 801D8C0C 001D5B6C 88 1E 00 18 */ lbz r0, 0x18(r30) +/* 801D8C10 001D5B70 98 1D 05 84 */ stb r0, 0x584(r29) +/* 801D8C14 001D5B74 D2 9D 05 88 */ stfs f20, 0x588(r29) +/* 801D8C18 001D5B78 D2 BD 05 8C */ stfs f21, 0x58c(r29) +/* 801D8C1C 001D5B7C D2 FD 05 90 */ stfs f23, 0x590(r29) +/* 801D8C20 001D5B80 D2 DD 05 94 */ stfs f22, 0x594(r29) +/* 801D8C24 001D5B84 D3 7D 05 98 */ stfs f27, 0x598(r29) +/* 801D8C28 001D5B88 D3 9D 05 9C */ stfs f28, 0x59c(r29) +/* 801D8C2C 001D5B8C D3 BD 05 A0 */ stfs f29, 0x5a0(r29) +/* 801D8C30 001D5B90 D3 DD 05 A4 */ stfs f30, 0x5a4(r29) +/* 801D8C34 001D5B94 D3 1D 05 A8 */ stfs f24, 0x5a8(r29) +/* 801D8C38 001D5B98 D3 3D 05 AC */ stfs f25, 0x5ac(r29) +/* 801D8C3C 001D5B9C D3 5D 05 B0 */ stfs f26, 0x5b0(r29) +/* 801D8C40 001D5BA0 D3 FD 05 B4 */ stfs f31, 0x5b4(r29) +/* 801D8C44 001D5BA4 88 1D 05 B8 */ lbz r0, 0x5b8(r29) +/* 801D8C48 001D5BA8 50 C0 3E 30 */ rlwimi r0, r6, 7, 0x18, 0x18 +/* 801D8C4C 001D5BAC 98 1D 05 B8 */ stb r0, 0x5b8(r29) +/* 801D8C50 001D5BB0 88 1D 05 B8 */ lbz r0, 0x5b8(r29) +/* 801D8C54 001D5BB4 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19 +/* 801D8C58 001D5BB8 98 1D 05 B8 */ stb r0, 0x5b8(r29) +/* 801D8C5C 001D5BBC 88 1D 05 B8 */ lbz r0, 0x5b8(r29) +/* 801D8C60 001D5BC0 53 E0 2E B4 */ rlwimi r0, r31, 5, 0x1a, 0x1a +/* 801D8C64 001D5BC4 98 1D 05 B8 */ stb r0, 0x5b8(r29) +/* 801D8C68 001D5BC8 4B E9 EB ED */ bl UpdateThermalFrozenState__10CPatternedFb +/* 801D8C6C 001D5BCC C0 02 AC 70 */ lfs f0, lbl_805AC990@sda21(r2) +/* 801D8C70 001D5BD0 7F A3 EB 78 */ mr r3, r29 +/* 801D8C74 001D5BD4 D0 1D 05 0C */ stfs f0, 0x50c(r29) +/* 801D8C78 001D5BD8 E3 E1 00 F8 */ psq_l f31, 248(r1), 0, qr0 +/* 801D8C7C 001D5BDC CB E1 00 F0 */ lfd f31, 0xf0(r1) +/* 801D8C80 001D5BE0 E3 C1 00 E8 */ psq_l f30, 232(r1), 0, qr0 +/* 801D8C84 001D5BE4 CB C1 00 E0 */ lfd f30, 0xe0(r1) +/* 801D8C88 001D5BE8 E3 A1 00 D8 */ psq_l f29, 216(r1), 0, qr0 +/* 801D8C8C 001D5BEC CB A1 00 D0 */ lfd f29, 0xd0(r1) +/* 801D8C90 001D5BF0 E3 81 00 C8 */ psq_l f28, 200(r1), 0, qr0 +/* 801D8C94 001D5BF4 CB 81 00 C0 */ lfd f28, 0xc0(r1) +/* 801D8C98 001D5BF8 E3 61 00 B8 */ psq_l f27, 184(r1), 0, qr0 +/* 801D8C9C 001D5BFC CB 61 00 B0 */ lfd f27, 0xb0(r1) +/* 801D8CA0 001D5C00 E3 41 00 A8 */ psq_l f26, 168(r1), 0, qr0 +/* 801D8CA4 001D5C04 CB 41 00 A0 */ lfd f26, 0xa0(r1) +/* 801D8CA8 001D5C08 E3 21 00 98 */ psq_l f25, 152(r1), 0, qr0 +/* 801D8CAC 001D5C0C CB 21 00 90 */ lfd f25, 0x90(r1) +/* 801D8CB0 001D5C10 E3 01 00 88 */ psq_l f24, 136(r1), 0, qr0 +/* 801D8CB4 001D5C14 CB 01 00 80 */ lfd f24, 0x80(r1) +/* 801D8CB8 001D5C18 E2 E1 00 78 */ psq_l f23, 120(r1), 0, qr0 +/* 801D8CBC 001D5C1C CA E1 00 70 */ lfd f23, 0x70(r1) +/* 801D8CC0 001D5C20 E2 C1 00 68 */ psq_l f22, 104(r1), 0, qr0 +/* 801D8CC4 001D5C24 CA C1 00 60 */ lfd f22, 0x60(r1) +/* 801D8CC8 001D5C28 E2 A1 00 58 */ psq_l f21, 88(r1), 0, qr0 +/* 801D8CCC 001D5C2C CA A1 00 50 */ lfd f21, 0x50(r1) +/* 801D8CD0 001D5C30 E2 81 00 48 */ psq_l f20, 72(r1), 0, qr0 +/* 801D8CD4 001D5C34 CA 81 00 40 */ lfd f20, 0x40(r1) +/* 801D8CD8 001D5C38 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801D8CDC 001D5C3C 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801D8CE0 001D5C40 80 01 01 04 */ lwz r0, 0x104(r1) +/* 801D8CE4 001D5C44 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 801D8CE8 001D5C48 7C 08 03 A6 */ mtlr r0 +/* 801D8CEC 001D5C4C 38 21 01 00 */ addi r1, r1, 0x100 +/* 801D8CF0 001D5C50 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Enemies/CKnockBackController.s b/asm/Kyoto_CWD/Enemies/CKnockBackController.s new file mode 100644 index 00000000..83d90883 --- /dev/null +++ b/asm/Kyoto_CWD/Enemies/CKnockBackController.s @@ -0,0 +1,1332 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global DoKnockBackAnimation__20CKnockBackControllerFRC9CVector3fR13CStateManagerR10CPatternedf +DoKnockBackAnimation__20CKnockBackControllerFRC9CVector3fR13CStateManagerR10CPatternedf: +/* 80232CA4 0022FC04 94 21 FE B0 */ stwu r1, -0x150(r1) +/* 80232CA8 0022FC08 7C 08 02 A6 */ mflr r0 +/* 80232CAC 0022FC0C 90 01 01 54 */ stw r0, 0x154(r1) +/* 80232CB0 0022FC10 DB E1 01 40 */ stfd f31, 0x140(r1) +/* 80232CB4 0022FC14 F3 E1 01 48 */ psq_st f31, 328(r1), 0, qr0 +/* 80232CB8 0022FC18 DB C1 01 30 */ stfd f30, 0x130(r1) +/* 80232CBC 0022FC1C F3 C1 01 38 */ psq_st f30, 312(r1), 0, qr0 +/* 80232CC0 0022FC20 BF 61 01 1C */ stmw r27, 0x11c(r1) +/* 80232CC4 0022FC24 7C 7D 1B 78 */ mr r29, r3 +/* 80232CC8 0022FC28 7C DE 33 78 */ mr r30, r6 +/* 80232CCC 0022FC2C 80 03 00 04 */ lwz r0, 4(r3) +/* 80232CD0 0022FC30 FF C0 08 90 */ fmr f30, f1 +/* 80232CD4 0022FC34 83 E6 04 50 */ lwz r31, 0x450(r6) +/* 80232CD8 0022FC38 7C 9B 23 78 */ mr r27, r4 +/* 80232CDC 0022FC3C 2C 00 00 03 */ cmpwi r0, 3 +/* 80232CE0 0022FC40 7C BC 2B 78 */ mr r28, r5 +/* 80232CE4 0022FC44 41 82 00 24 */ beq lbl_80232D08 +/* 80232CE8 0022FC48 40 80 00 14 */ bge lbl_80232CFC +/* 80232CEC 0022FC4C 2C 00 00 01 */ cmpwi r0, 1 +/* 80232CF0 0022FC50 41 82 03 30 */ beq lbl_80233020 +/* 80232CF4 0022FC54 40 80 02 8C */ bge lbl_80232F80 +/* 80232CF8 0022FC58 48 00 04 88 */ b lbl_80233180 +lbl_80232CFC: +/* 80232CFC 0022FC5C 2C 00 00 05 */ cmpwi r0, 5 +/* 80232D00 0022FC60 40 80 04 80 */ bge lbl_80233180 +/* 80232D04 0022FC64 48 00 01 DC */ b lbl_80232EE0 +lbl_80232D08: +/* 80232D08 0022FC68 7F C3 F3 78 */ mr r3, r30 +/* 80232D0C 0022FC6C 7F 84 E3 78 */ mr r4, r28 +/* 80232D10 0022FC70 81 9E 00 00 */ lwz r12, 0(r30) +/* 80232D14 0022FC74 C3 E2 B6 F8 */ lfs f31, lbl_805AD418@sda21(r2) +/* 80232D18 0022FC78 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80232D1C 0022FC7C 7D 89 03 A6 */ mtctr r12 +/* 80232D20 0022FC80 4E 80 04 21 */ bctrl +/* 80232D24 0022FC84 28 03 00 00 */ cmplwi r3, 0 +/* 80232D28 0022FC88 41 82 00 1C */ beq lbl_80232D44 +/* 80232D2C 0022FC8C FC 20 F0 90 */ fmr f1, f30 +/* 80232D30 0022FC90 C0 43 00 04 */ lfs f2, 4(r3) +/* 80232D34 0022FC94 7F A3 EB 78 */ mr r3, r29 +/* 80232D38 0022FC98 7F 84 E3 78 */ mr r4, r28 +/* 80232D3C 0022FC9C 48 00 0B F5 */ bl CalculateExtraHurlVelocity__20CKnockBackControllerFR13CStateManagerff +/* 80232D40 0022FCA0 EF FF 08 2A */ fadds f31, f31, f1 +lbl_80232D44: +/* 80232D44 0022FCA4 7F C3 F3 78 */ mr r3, r30 +/* 80232D48 0022FCA8 81 9E 00 00 */ lwz r12, 0(r30) +/* 80232D4C 0022FCAC 81 8C 02 BC */ lwz r12, 0x2bc(r12) +/* 80232D50 0022FCB0 7D 89 03 A6 */ mtctr r12 +/* 80232D54 0022FCB4 4E 80 04 21 */ bctrl +/* 80232D58 0022FCB8 C0 02 B6 FC */ lfs f0, lbl_805AD41C@sda21(r2) +/* 80232D5C 0022FCBC EC 00 07 F2 */ fmuls f0, f0, f31 +/* 80232D60 0022FCC0 EC 20 00 72 */ fmuls f1, f0, f1 +/* 80232D64 0022FCC4 48 0E 27 9D */ bl SqrtF__5CMathFf +/* 80232D68 0022FCC8 FF E0 08 90 */ fmr f31, f1 +/* 80232D6C 0022FCCC 7F 63 DB 78 */ mr r3, r27 +/* 80232D70 0022FCD0 48 0E 1B 49 */ bl Magnitude__9CVector3fCFv +/* 80232D74 0022FCD4 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 80232D78 0022FCD8 C0 DB 00 04 */ lfs f6, 4(r27) +/* 80232D7C 0022FCDC 38 83 66 F4 */ addi r4, r3, lbl_805A66F4@l +/* 80232D80 0022FCE0 C0 9B 00 08 */ lfs f4, 8(r27) +/* 80232D84 0022FCE4 C0 64 00 04 */ lfs f3, 4(r4) +/* 80232D88 0022FCE8 38 61 00 68 */ addi r3, r1, 0x68 +/* 80232D8C 0022FCEC C0 44 00 08 */ lfs f2, 8(r4) +/* 80232D90 0022FCF0 C0 04 00 00 */ lfs f0, 0(r4) +/* 80232D94 0022FCF4 EC A1 00 F2 */ fmuls f5, f1, f3 +/* 80232D98 0022FCF8 EC 61 00 B2 */ fmuls f3, f1, f2 +/* 80232D9C 0022FCFC C0 5B 00 00 */ lfs f2, 0(r27) +/* 80232DA0 0022FD00 EC 01 00 32 */ fmuls f0, f1, f0 +/* 80232DA4 0022FD04 EC A6 28 2A */ fadds f5, f6, f5 +/* 80232DA8 0022FD08 EC 24 18 2A */ fadds f1, f4, f3 +/* 80232DAC 0022FD0C EC 02 00 2A */ fadds f0, f2, f0 +/* 80232DB0 0022FD10 D0 A1 00 6C */ stfs f5, 0x6c(r1) +/* 80232DB4 0022FD14 D0 01 00 68 */ stfs f0, 0x68(r1) +/* 80232DB8 0022FD18 D0 21 00 70 */ stfs f1, 0x70(r1) +/* 80232DBC 0022FD1C 48 0E 19 3D */ bl CanBeNormalized__9CVector3fCFv +/* 80232DC0 0022FD20 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80232DC4 0022FD24 41 82 03 BC */ beq lbl_80233180 +/* 80232DC8 0022FD28 38 61 00 5C */ addi r3, r1, 0x5c +/* 80232DCC 0022FD2C 38 81 00 68 */ addi r4, r1, 0x68 +/* 80232DD0 0022FD30 48 0E 1A 81 */ bl AsNormalized__9CVector3fCFv +/* 80232DD4 0022FD34 C0 41 00 5C */ lfs f2, 0x5c(r1) +/* 80232DD8 0022FD38 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80232DDC 0022FD3C C0 21 00 60 */ lfs f1, 0x60(r1) +/* 80232DE0 0022FD40 38 83 AA 68 */ addi r4, r3, lbl_803DAA68@l +/* 80232DE4 0022FD44 C0 01 00 64 */ lfs f0, 0x64(r1) +/* 80232DE8 0022FD48 EC BF 00 B2 */ fmuls f5, f31, f2 +/* 80232DEC 0022FD4C C0 5B 00 08 */ lfs f2, 8(r27) +/* 80232DF0 0022FD50 EC 9F 00 72 */ fmuls f4, f31, f1 +/* 80232DF4 0022FD54 C0 3B 00 04 */ lfs f1, 4(r27) +/* 80232DF8 0022FD58 EC 7F 00 32 */ fmuls f3, f31, f0 +/* 80232DFC 0022FD5C C0 1B 00 00 */ lfs f0, 0(r27) +/* 80232E00 0022FD60 FC 40 10 50 */ fneg f2, f2 +/* 80232E04 0022FD64 3C 60 80 3E */ lis r3, lbl_803DAA5C@ha +/* 80232E08 0022FD68 FC 20 08 50 */ fneg f1, f1 +/* 80232E0C 0022FD6C 38 C0 00 0F */ li r6, 0xf +/* 80232E10 0022FD70 FC 00 00 50 */ fneg f0, f0 +/* 80232E14 0022FD74 38 00 00 00 */ li r0, 0 +/* 80232E18 0022FD78 3B FF 00 04 */ addi r31, r31, 4 +/* 80232E1C 0022FD7C 90 81 00 A4 */ stw r4, 0xa4(r1) +/* 80232E20 0022FD80 38 A3 AA 5C */ addi r5, r3, lbl_803DAA5C@l +/* 80232E24 0022FD84 38 80 00 0F */ li r4, 0xf +/* 80232E28 0022FD88 90 C1 00 A8 */ stw r6, 0xa8(r1) +/* 80232E2C 0022FD8C 7F E3 FB 78 */ mr r3, r31 +/* 80232E30 0022FD90 90 A1 00 A4 */ stw r5, 0xa4(r1) +/* 80232E34 0022FD94 D0 01 00 AC */ stfs f0, 0xac(r1) +/* 80232E38 0022FD98 D0 21 00 B0 */ stfs f1, 0xb0(r1) +/* 80232E3C 0022FD9C D0 41 00 B4 */ stfs f2, 0xb4(r1) +/* 80232E40 0022FDA0 D0 A1 00 B8 */ stfs f5, 0xb8(r1) +/* 80232E44 0022FDA4 D0 81 00 BC */ stfs f4, 0xbc(r1) +/* 80232E48 0022FDA8 D0 61 00 C0 */ stfs f3, 0xc0(r1) +/* 80232E4C 0022FDAC 98 01 00 C4 */ stb r0, 0xc4(r1) +/* 80232E50 0022FDB0 4B EF E5 E9 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80232E54 0022FDB4 80 01 00 A8 */ lwz r0, 0xa8(r1) +/* 80232E58 0022FDB8 3C 60 80 3E */ lis r3, lbl_803DAA5C@ha +/* 80232E5C 0022FDBC 38 A3 AA 5C */ addi r5, r3, lbl_803DAA5C@l +/* 80232E60 0022FDC0 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 80232E64 0022FDC4 90 1F 01 B0 */ stw r0, 0x1b0(r31) +/* 80232E68 0022FDC8 7F C3 F3 78 */ mr r3, r30 +/* 80232E6C 0022FDCC 80 E1 00 AC */ lwz r7, 0xac(r1) +/* 80232E70 0022FDD0 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l +/* 80232E74 0022FDD4 80 C1 00 B0 */ lwz r6, 0xb0(r1) +/* 80232E78 0022FDD8 90 FF 01 B4 */ stw r7, 0x1b4(r31) +/* 80232E7C 0022FDDC 80 81 00 B4 */ lwz r4, 0xb4(r1) +/* 80232E80 0022FDE0 90 DF 01 B8 */ stw r6, 0x1b8(r31) +/* 80232E84 0022FDE4 80 C1 00 B8 */ lwz r6, 0xb8(r1) +/* 80232E88 0022FDE8 90 9F 01 BC */ stw r4, 0x1bc(r31) +/* 80232E8C 0022FDEC 80 81 00 BC */ lwz r4, 0xbc(r1) +/* 80232E90 0022FDF0 90 DF 01 C0 */ stw r6, 0x1c0(r31) +/* 80232E94 0022FDF4 80 C1 00 C0 */ lwz r6, 0xc0(r1) +/* 80232E98 0022FDF8 90 9F 01 C4 */ stw r4, 0x1c4(r31) +/* 80232E9C 0022FDFC 88 81 00 C4 */ lbz r4, 0xc4(r1) +/* 80232EA0 0022FE00 90 DF 01 C8 */ stw r6, 0x1c8(r31) +/* 80232EA4 0022FE04 98 9F 01 CC */ stb r4, 0x1cc(r31) +/* 80232EA8 0022FE08 81 9E 00 00 */ lwz r12, 0(r30) +/* 80232EAC 0022FE0C 90 A1 00 A4 */ stw r5, 0xa4(r1) +/* 80232EB0 0022FE10 81 8C 02 BC */ lwz r12, 0x2bc(r12) +/* 80232EB4 0022FE14 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 80232EB8 0022FE18 C3 FE 00 E8 */ lfs f31, 0xe8(r30) +/* 80232EBC 0022FE1C 7D 89 03 A6 */ mtctr r12 +/* 80232EC0 0022FE20 4E 80 04 21 */ bctrl +/* 80232EC4 0022FE24 FC 40 F8 50 */ fneg f2, f31 +/* 80232EC8 0022FE28 C0 02 B7 00 */ lfs f0, lbl_805AD420@sda21(r2) +/* 80232ECC 0022FE2C D0 1E 01 50 */ stfs f0, 0x150(r30) +/* 80232ED0 0022FE30 EC 22 00 72 */ fmuls f1, f2, f1 +/* 80232ED4 0022FE34 D0 1E 01 54 */ stfs f0, 0x154(r30) +/* 80232ED8 0022FE38 D0 3E 01 58 */ stfs f1, 0x158(r30) +/* 80232EDC 0022FE3C 48 00 02 A4 */ b lbl_80233180 +lbl_80232EE0: +/* 80232EE0 0022FE40 C0 5B 00 08 */ lfs f2, 8(r27) +/* 80232EE4 0022FE44 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80232EE8 0022FE48 C0 3B 00 04 */ lfs f1, 4(r27) +/* 80232EEC 0022FE4C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 80232EF0 0022FE50 C0 1B 00 00 */ lfs f0, 0(r27) +/* 80232EF4 0022FE54 FC 40 10 50 */ fneg f2, f2 +/* 80232EF8 0022FE58 FC 20 08 50 */ fneg f1, f1 +/* 80232EFC 0022FE5C 80 DD 00 7C */ lwz r6, 0x7c(r29) +/* 80232F00 0022FE60 FC 00 00 50 */ fneg f0, f0 +/* 80232F04 0022FE64 3C 60 80 3E */ lis r3, lbl_803DAA50@ha +/* 80232F08 0022FE68 38 A0 00 03 */ li r5, 3 +/* 80232F0C 0022FE6C 3B BF 00 04 */ addi r29, r31, 4 +/* 80232F10 0022FE70 90 01 00 8C */ stw r0, 0x8c(r1) +/* 80232F14 0022FE74 38 03 AA 50 */ addi r0, r3, lbl_803DAA50@l +/* 80232F18 0022FE78 7F A3 EB 78 */ mr r3, r29 +/* 80232F1C 0022FE7C 38 80 00 03 */ li r4, 3 +/* 80232F20 0022FE80 90 A1 00 90 */ stw r5, 0x90(r1) +/* 80232F24 0022FE84 90 01 00 8C */ stw r0, 0x8c(r1) +/* 80232F28 0022FE88 D0 01 00 94 */ stfs f0, 0x94(r1) +/* 80232F2C 0022FE8C D0 21 00 98 */ stfs f1, 0x98(r1) +/* 80232F30 0022FE90 D0 41 00 9C */ stfs f2, 0x9c(r1) +/* 80232F34 0022FE94 90 C1 00 A0 */ stw r6, 0xa0(r1) +/* 80232F38 0022FE98 4B EF E5 01 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80232F3C 0022FE9C 80 01 00 90 */ lwz r0, 0x90(r1) +/* 80232F40 0022FEA0 3C 60 80 3E */ lis r3, lbl_803DAA50@ha +/* 80232F44 0022FEA4 38 83 AA 50 */ addi r4, r3, lbl_803DAA50@l +/* 80232F48 0022FEA8 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80232F4C 0022FEAC 90 1D 00 E0 */ stw r0, 0xe0(r29) +/* 80232F50 0022FEB0 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 80232F54 0022FEB4 80 A1 00 94 */ lwz r5, 0x94(r1) +/* 80232F58 0022FEB8 80 61 00 98 */ lwz r3, 0x98(r1) +/* 80232F5C 0022FEBC 90 BD 00 E4 */ stw r5, 0xe4(r29) +/* 80232F60 0022FEC0 80 A1 00 9C */ lwz r5, 0x9c(r1) +/* 80232F64 0022FEC4 90 7D 00 E8 */ stw r3, 0xe8(r29) +/* 80232F68 0022FEC8 80 61 00 A0 */ lwz r3, 0xa0(r1) +/* 80232F6C 0022FECC 90 BD 00 EC */ stw r5, 0xec(r29) +/* 80232F70 0022FED0 90 81 00 8C */ stw r4, 0x8c(r1) +/* 80232F74 0022FED4 90 7D 00 F0 */ stw r3, 0xf0(r29) +/* 80232F78 0022FED8 90 01 00 8C */ stw r0, 0x8c(r1) +/* 80232F7C 0022FEDC 48 00 02 04 */ b lbl_80233180 +lbl_80232F80: +/* 80232F80 0022FEE0 C0 5B 00 08 */ lfs f2, 8(r27) +/* 80232F84 0022FEE4 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80232F88 0022FEE8 C0 3B 00 04 */ lfs f1, 4(r27) +/* 80232F8C 0022FEEC 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 80232F90 0022FEF0 C0 1B 00 00 */ lfs f0, 0(r27) +/* 80232F94 0022FEF4 FC 40 10 50 */ fneg f2, f2 +/* 80232F98 0022FEF8 FC 20 08 50 */ fneg f1, f1 +/* 80232F9C 0022FEFC 80 DD 00 7C */ lwz r6, 0x7c(r29) +/* 80232FA0 0022FF00 FC 00 00 50 */ fneg f0, f0 +/* 80232FA4 0022FF04 3C 60 80 3E */ lis r3, lbl_803DAA44@ha +/* 80232FA8 0022FF08 38 A0 00 04 */ li r5, 4 +/* 80232FAC 0022FF0C 3B BF 00 04 */ addi r29, r31, 4 +/* 80232FB0 0022FF10 90 01 00 74 */ stw r0, 0x74(r1) +/* 80232FB4 0022FF14 38 03 AA 44 */ addi r0, r3, lbl_803DAA44@l +/* 80232FB8 0022FF18 7F A3 EB 78 */ mr r3, r29 +/* 80232FBC 0022FF1C 38 80 00 04 */ li r4, 4 +/* 80232FC0 0022FF20 90 A1 00 78 */ stw r5, 0x78(r1) +/* 80232FC4 0022FF24 90 01 00 74 */ stw r0, 0x74(r1) +/* 80232FC8 0022FF28 D0 01 00 7C */ stfs f0, 0x7c(r1) +/* 80232FCC 0022FF2C D0 21 00 80 */ stfs f1, 0x80(r1) +/* 80232FD0 0022FF30 D0 41 00 84 */ stfs f2, 0x84(r1) +/* 80232FD4 0022FF34 90 C1 00 88 */ stw r6, 0x88(r1) +/* 80232FD8 0022FF38 4B EF E4 61 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80232FDC 0022FF3C 80 01 00 78 */ lwz r0, 0x78(r1) +/* 80232FE0 0022FF40 3C 60 80 3E */ lis r3, lbl_803DAA44@ha +/* 80232FE4 0022FF44 38 83 AA 44 */ addi r4, r3, lbl_803DAA44@l +/* 80232FE8 0022FF48 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80232FEC 0022FF4C 90 1D 00 F8 */ stw r0, 0xf8(r29) +/* 80232FF0 0022FF50 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 80232FF4 0022FF54 80 A1 00 7C */ lwz r5, 0x7c(r1) +/* 80232FF8 0022FF58 80 61 00 80 */ lwz r3, 0x80(r1) +/* 80232FFC 0022FF5C 90 BD 00 FC */ stw r5, 0xfc(r29) +/* 80233000 0022FF60 80 A1 00 84 */ lwz r5, 0x84(r1) +/* 80233004 0022FF64 90 7D 01 00 */ stw r3, 0x100(r29) +/* 80233008 0022FF68 80 61 00 88 */ lwz r3, 0x88(r1) +/* 8023300C 0022FF6C 90 BD 01 04 */ stw r5, 0x104(r29) +/* 80233010 0022FF70 90 81 00 74 */ stw r4, 0x74(r1) +/* 80233014 0022FF74 90 7D 01 08 */ stw r3, 0x108(r29) +/* 80233018 0022FF78 90 01 00 74 */ stw r0, 0x74(r1) +/* 8023301C 0022FF7C 48 00 01 64 */ b lbl_80233180 +lbl_80233020: +/* 80233020 0022FF80 7F E3 FB 78 */ mr r3, r31 +/* 80233024 0022FF84 4B F0 74 31 */ bl GetPASDatabase__15CBodyControllerCFv +/* 80233028 0022FF88 7C 60 1B 78 */ mr r0, r3 +/* 8023302C 0022FF8C 38 61 00 1C */ addi r3, r1, 0x1c +/* 80233030 0022FF90 7C 1F 03 78 */ mr r31, r0 +/* 80233034 0022FF94 48 0B 00 49 */ bl NoParameter__12CPASAnimParmFv +/* 80233038 0022FF98 38 61 00 24 */ addi r3, r1, 0x24 +/* 8023303C 0022FF9C 48 0B 00 41 */ bl NoParameter__12CPASAnimParmFv +/* 80233040 0022FFA0 38 61 00 2C */ addi r3, r1, 0x2c +/* 80233044 0022FFA4 48 0B 00 39 */ bl NoParameter__12CPASAnimParmFv +/* 80233048 0022FFA8 38 61 00 34 */ addi r3, r1, 0x34 +/* 8023304C 0022FFAC 48 0B 00 31 */ bl NoParameter__12CPASAnimParmFv +/* 80233050 0022FFB0 38 61 00 3C */ addi r3, r1, 0x3c +/* 80233054 0022FFB4 48 0B 00 29 */ bl NoParameter__12CPASAnimParmFv +/* 80233058 0022FFB8 38 61 00 44 */ addi r3, r1, 0x44 +/* 8023305C 0022FFBC 48 0B 00 21 */ bl NoParameter__12CPASAnimParmFv +/* 80233060 0022FFC0 38 61 00 4C */ addi r3, r1, 0x4c +/* 80233064 0022FFC4 48 0B 00 19 */ bl NoParameter__12CPASAnimParmFv +/* 80233068 0022FFC8 38 61 00 54 */ addi r3, r1, 0x54 +/* 8023306C 0022FFCC 48 0B 00 11 */ bl NoParameter__12CPASAnimParmFv +/* 80233070 0022FFD0 38 61 00 24 */ addi r3, r1, 0x24 +/* 80233074 0022FFD4 38 01 00 1C */ addi r0, r1, 0x1c +/* 80233078 0022FFD8 90 61 00 08 */ stw r3, 8(r1) +/* 8023307C 0022FFDC 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 80233080 0022FFE0 38 A1 00 54 */ addi r5, r1, 0x54 +/* 80233084 0022FFE4 38 C1 00 4C */ addi r6, r1, 0x4c +/* 80233088 0022FFE8 90 01 00 0C */ stw r0, 0xc(r1) +/* 8023308C 0022FFEC 38 E1 00 44 */ addi r7, r1, 0x44 +/* 80233090 0022FFF0 39 01 00 3C */ addi r8, r1, 0x3c +/* 80233094 0022FFF4 39 21 00 34 */ addi r9, r1, 0x34 +/* 80233098 0022FFF8 39 41 00 2C */ addi r10, r1, 0x2c +/* 8023309C 0022FFFC 38 80 00 17 */ li r4, 0x17 +/* 802330A0 00230000 4B E4 A2 25 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 802330A4 00230004 80 DC 09 00 */ lwz r6, 0x900(r28) +/* 802330A8 00230008 7F E4 FB 78 */ mr r4, r31 +/* 802330AC 0023000C 38 61 00 14 */ addi r3, r1, 0x14 +/* 802330B0 00230010 38 A1 00 C8 */ addi r5, r1, 0xc8 +/* 802330B4 00230014 38 E0 FF FF */ li r7, -1 +/* 802330B8 00230018 48 0B 1F A9 */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i +/* 802330BC 0023001C C0 21 00 14 */ lfs f1, 0x14(r1) +/* 802330C0 00230020 C0 02 B7 00 */ lfs f0, lbl_805AD420@sda21(r2) +/* 802330C4 00230024 83 E1 00 18 */ lwz r31, 0x18(r1) +/* 802330C8 00230028 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802330CC 0023002C 40 81 00 58 */ ble lbl_80233124 +/* 802330D0 00230030 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 802330D4 00230034 7F E4 FB 78 */ mr r4, r31 +/* 802330D8 00230038 C0 22 B7 04 */ lfs f1, lbl_805AD424@sda21(r2) +/* 802330DC 0023003C 38 A0 00 00 */ li r5, 0 +/* 802330E0 00230040 80 63 00 10 */ lwz r3, 0x10(r3) +/* 802330E4 00230044 38 C0 00 01 */ li r6, 1 +/* 802330E8 00230048 4B DF 70 E9 */ bl AddAdditiveAnimation__9CAnimDataFUifbb +/* 802330EC 0023004C 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 802330F0 00230050 7F E4 FB 78 */ mr r4, r31 +/* 802330F4 00230054 80 63 00 10 */ lwz r3, 0x10(r3) +/* 802330F8 00230058 4B DF 93 D1 */ bl GetAnimationDuration__9CAnimDataCFi +/* 802330FC 0023005C D0 21 00 10 */ stfs f1, 0x10(r1) +/* 80233100 00230060 FC 00 08 18 */ frsp f0, f1 +/* 80233104 00230064 C0 3D 00 64 */ lfs f1, 0x64(r29) +/* 80233108 00230068 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8023310C 0023006C 40 80 00 0C */ bge lbl_80233118 +/* 80233110 00230070 38 61 00 10 */ addi r3, r1, 0x10 +/* 80233114 00230074 48 00 00 08 */ b lbl_8023311C +lbl_80233118: +/* 80233118 00230078 38 7D 00 64 */ addi r3, r29, 0x64 +lbl_8023311C: +/* 8023311C 0023007C C0 03 00 00 */ lfs f0, 0(r3) +/* 80233120 00230080 D0 1D 00 64 */ stfs f0, 0x64(r29) +lbl_80233124: +/* 80233124 00230084 34 A1 00 CC */ addic. r5, r1, 0xcc +/* 80233128 00230088 41 82 00 58 */ beq lbl_80233180 +/* 8023312C 0023008C 80 C5 00 00 */ lwz r6, 0(r5) +/* 80233130 00230090 38 60 00 00 */ li r3, 0 +/* 80233134 00230094 2C 06 00 00 */ cmpwi r6, 0 +/* 80233138 00230098 40 81 00 40 */ ble lbl_80233178 +/* 8023313C 0023009C 2C 06 00 08 */ cmpwi r6, 8 +/* 80233140 002300A0 38 86 FF F8 */ addi r4, r6, -8 +/* 80233144 002300A4 40 81 00 20 */ ble lbl_80233164 +/* 80233148 002300A8 38 04 00 07 */ addi r0, r4, 7 +/* 8023314C 002300AC 54 00 E8 FE */ srwi r0, r0, 3 +/* 80233150 002300B0 7C 09 03 A6 */ mtctr r0 +/* 80233154 002300B4 2C 04 00 00 */ cmpwi r4, 0 +/* 80233158 002300B8 40 81 00 0C */ ble lbl_80233164 +lbl_8023315C: +/* 8023315C 002300BC 38 63 00 08 */ addi r3, r3, 8 +/* 80233160 002300C0 42 00 FF FC */ bdnz lbl_8023315C +lbl_80233164: +/* 80233164 002300C4 7C 03 30 50 */ subf r0, r3, r6 +/* 80233168 002300C8 7C 09 03 A6 */ mtctr r0 +/* 8023316C 002300CC 7C 03 30 00 */ cmpw r3, r6 +/* 80233170 002300D0 40 80 00 08 */ bge lbl_80233178 +lbl_80233174: +/* 80233174 002300D4 42 00 00 00 */ bdnz lbl_80233174 +lbl_80233178: +/* 80233178 002300D8 38 00 00 00 */ li r0, 0 +/* 8023317C 002300DC 90 05 00 00 */ stw r0, 0(r5) +lbl_80233180: +/* 80233180 002300E0 E3 E1 01 48 */ psq_l f31, 328(r1), 0, qr0 +/* 80233184 002300E4 CB E1 01 40 */ lfd f31, 0x140(r1) +/* 80233188 002300E8 E3 C1 01 38 */ psq_l f30, 312(r1), 0, qr0 +/* 8023318C 002300EC CB C1 01 30 */ lfd f30, 0x130(r1) +/* 80233190 002300F0 BB 61 01 1C */ lmw r27, 0x11c(r1) +/* 80233194 002300F4 80 01 01 54 */ lwz r0, 0x154(r1) +/* 80233198 002300F8 7C 08 03 A6 */ mtlr r0 +/* 8023319C 002300FC 38 21 01 50 */ addi r1, r1, 0x150 +/* 802331A0 00230100 4E 80 00 20 */ blr + +.global DoDeferredKnockBack__20CKnockBackControllerFR13CStateManagerR10CPatterned +DoDeferredKnockBack__20CKnockBackControllerFR13CStateManagerR10CPatterned: +/* 802331A4 00230104 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 802331A8 00230108 7C 08 02 A6 */ mflr r0 +/* 802331AC 0023010C 90 01 00 54 */ stw r0, 0x54(r1) +/* 802331B0 00230110 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 802331B4 00230114 7C BF 2B 78 */ mr r31, r5 +/* 802331B8 00230118 93 C1 00 48 */ stw r30, 0x48(r1) +/* 802331BC 0023011C 7C 9E 23 78 */ mr r30, r4 +/* 802331C0 00230120 93 A1 00 44 */ stw r29, 0x44(r1) +/* 802331C4 00230124 7C 7D 1B 78 */ mr r29, r3 +/* 802331C8 00230128 80 03 00 14 */ lwz r0, 0x14(r3) +/* 802331CC 0023012C 2C 00 00 02 */ cmpwi r0, 2 +/* 802331D0 00230130 40 82 01 70 */ bne lbl_80233340 +/* 802331D4 00230134 7F E4 FB 78 */ mr r4, r31 +/* 802331D8 00230138 48 00 07 CD */ bl GetKnockBackCharacterState__20CKnockBackControllerFR10CPatterned +/* 802331DC 0023013C 80 BD 00 00 */ lwz r5, 0(r29) +/* 802331E0 00230140 3C 80 80 3D */ lis r4, lbl_803D34A0@ha +/* 802331E4 00230144 54 60 20 36 */ slwi r0, r3, 4 +/* 802331E8 00230148 7F A3 EB 78 */ mr r3, r29 +/* 802331EC 0023014C 1C C5 04 C0 */ mulli r6, r5, 0x4c0 +/* 802331F0 00230150 38 A4 34 A0 */ addi r5, r4, lbl_803D34A0@l +/* 802331F4 00230154 7F E4 FB 78 */ mr r4, r31 +/* 802331F8 00230158 7C A5 32 14 */ add r5, r5, r6 +/* 802331FC 0023015C 7C A5 02 14 */ add r5, r5, r0 +/* 80233200 00230160 38 C5 01 C0 */ addi r6, r5, 0x1c0 +/* 80233204 00230164 80 A5 01 C0 */ lwz r5, 0x1c0(r5) +/* 80233208 00230168 80 06 00 04 */ lwz r0, 4(r6) +/* 8023320C 0023016C 90 BD 00 04 */ stw r5, 4(r29) +/* 80233210 00230170 C0 26 00 08 */ lfs f1, 8(r6) +/* 80233214 00230174 90 1D 00 08 */ stw r0, 8(r29) +/* 80233218 00230178 C0 06 00 0C */ lfs f0, 0xc(r6) +/* 8023321C 0023017C D0 3D 00 0C */ stfs f1, 0xc(r29) +/* 80233220 00230180 D0 1D 00 10 */ stfs f0, 0x10(r29) +/* 80233224 00230184 48 00 04 59 */ bl ValidateState__20CKnockBackControllerFR10CPatterned +/* 80233228 00230188 7F E3 FB 78 */ mr r3, r31 +/* 8023322C 0023018C 7F C4 F3 78 */ mr r4, r30 +/* 80233230 00230190 81 9F 00 00 */ lwz r12, 0(r31) +/* 80233234 00230194 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80233238 00230198 7D 89 03 A6 */ mtctr r12 +/* 8023323C 0023019C 4E 80 04 21 */ bctrl +/* 80233240 002301A0 28 03 00 00 */ cmplwi r3, 0 +/* 80233244 002301A4 41 82 00 FC */ beq lbl_80233340 +/* 80233248 002301A8 C0 5F 00 58 */ lfs f2, 0x58(r31) +/* 8023324C 002301AC 7F A3 EB 78 */ mr r3, r29 +/* 80233250 002301B0 C0 3F 00 48 */ lfs f1, 0x48(r31) +/* 80233254 002301B4 7F C5 F3 78 */ mr r5, r30 +/* 80233258 002301B8 C0 1F 00 38 */ lfs f0, 0x38(r31) +/* 8023325C 002301BC FC 60 10 50 */ fneg f3, f2 +/* 80233260 002301C0 FC 40 08 50 */ fneg f2, f1 +/* 80233264 002301C4 C0 22 B7 08 */ lfs f1, lbl_805AD428@sda21(r2) +/* 80233268 002301C8 FC 00 00 50 */ fneg f0, f0 +/* 8023326C 002301CC 7F E6 FB 78 */ mr r6, r31 +/* 80233270 002301D0 D0 61 00 18 */ stfs f3, 0x18(r1) +/* 80233274 002301D4 38 81 00 10 */ addi r4, r1, 0x10 +/* 80233278 002301D8 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 8023327C 002301DC D0 41 00 14 */ stfs f2, 0x14(r1) +/* 80233280 002301E0 4B FF FA 25 */ bl DoKnockBackAnimation__20CKnockBackControllerFRC9CVector3fR13CStateManagerR10CPatternedf +/* 80233284 002301E4 C0 22 B7 0C */ lfs f1, lbl_805AD42C@sda21(r2) +/* 80233288 002301E8 7F A3 EB 78 */ mr r3, r29 +/* 8023328C 002301EC 7F E4 FB 78 */ mr r4, r31 +/* 80233290 002301F0 38 A1 00 10 */ addi r5, r1, 0x10 +/* 80233294 002301F4 48 00 02 6D */ bl ResetKnockBackImpulse__20CKnockBackControllerFR10CPatternedRC9CVector3ff +/* 80233298 002301F8 88 C1 00 0C */ lbz r6, 0xc(r1) +/* 8023329C 002301FC 38 60 00 00 */ li r3, 0 +/* 802332A0 00230200 50 66 3E 30 */ rlwimi r6, r3, 7, 0x18, 0x18 +/* 802332A4 00230204 39 40 00 01 */ li r10, 1 +/* 802332A8 00230208 81 7D 00 14 */ lwz r11, 0x14(r29) +/* 802332AC 0023020C 54 C8 06 3E */ clrlwi r8, r6, 0x18 +/* 802332B0 00230210 C0 02 B7 00 */ lfs f0, lbl_805AD420@sda21(r2) +/* 802332B4 00230214 51 48 36 72 */ rlwimi r8, r10, 6, 0x19, 0x19 +/* 802332B8 00230218 C0 22 B7 08 */ lfs f1, lbl_805AD428@sda21(r2) +/* 802332BC 0023021C 55 09 06 3E */ clrlwi r9, r8, 0x18 +/* 802332C0 00230220 88 01 00 34 */ lbz r0, 0x34(r1) +/* 802332C4 00230224 50 69 2E B4 */ rlwimi r9, r3, 5, 0x1a, 0x1a +/* 802332C8 00230228 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 802332CC 0023022C 91 61 00 1C */ stw r11, 0x1c(r1) +/* 802332D0 00230230 7F E3 FB 78 */ mr r3, r31 +/* 802332D4 00230234 7F C5 F3 78 */ mr r5, r30 +/* 802332D8 00230238 99 21 00 20 */ stb r9, 0x20(r1) +/* 802332DC 0023023C 38 81 00 10 */ addi r4, r1, 0x10 +/* 802332E0 00230240 38 E0 00 01 */ li r7, 1 +/* 802332E4 00230244 98 C1 00 0C */ stb r6, 0xc(r1) +/* 802332E8 00230248 38 C1 00 1C */ addi r6, r1, 0x1c +/* 802332EC 0023024C 99 01 00 0C */ stb r8, 0xc(r1) +/* 802332F0 00230250 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 802332F4 00230254 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 802332F8 00230258 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 802332FC 0023025C D0 21 00 30 */ stfs f1, 0x30(r1) +/* 80233300 00230260 98 01 00 34 */ stb r0, 0x34(r1) +/* 80233304 00230264 88 1D 00 82 */ lbz r0, 0x82(r29) +/* 80233308 00230268 51 40 36 72 */ rlwimi r0, r10, 6, 0x19, 0x19 +/* 8023330C 0023026C 91 61 00 08 */ stw r11, 8(r1) +/* 80233310 00230270 98 1D 00 82 */ stb r0, 0x82(r29) +/* 80233314 00230274 81 9F 00 00 */ lwz r12, 0(r31) +/* 80233318 00230278 88 1D 00 82 */ lbz r0, 0x82(r29) +/* 8023331C 0023027C 81 8C 00 88 */ lwz r12, 0x88(r12) +/* 80233320 00230280 54 08 D7 FE */ rlwinm r8, r0, 0x1a, 0x1f, 0x1f +/* 80233324 00230284 99 21 00 0C */ stb r9, 0xc(r1) +/* 80233328 00230288 7D 89 03 A6 */ mtctr r12 +/* 8023332C 0023028C 4E 80 04 21 */ bctrl +/* 80233330 00230290 88 1D 00 82 */ lbz r0, 0x82(r29) +/* 80233334 00230294 38 60 00 00 */ li r3, 0 +/* 80233338 00230298 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 8023333C 0023029C 98 1D 00 82 */ stb r0, 0x82(r29) +lbl_80233340: +/* 80233340 002302A0 C0 02 B7 00 */ lfs f0, lbl_805AD420@sda21(r2) +/* 80233344 002302A4 3C 60 80 3D */ lis r3, lbl_803D3490@ha +/* 80233348 002302A8 38 A3 34 90 */ addi r5, r3, lbl_803D3490@l +/* 8023334C 002302AC 38 00 FF FF */ li r0, -1 +/* 80233350 002302B0 D0 1D 00 68 */ stfs f0, 0x68(r29) +/* 80233354 002302B4 80 85 00 00 */ lwz r4, 0(r5) +/* 80233358 002302B8 80 65 00 04 */ lwz r3, 4(r5) +/* 8023335C 002302BC 90 9D 00 04 */ stw r4, 4(r29) +/* 80233360 002302C0 C0 25 00 08 */ lfs f1, 8(r5) +/* 80233364 002302C4 90 7D 00 08 */ stw r3, 8(r29) +/* 80233368 002302C8 C0 05 00 0C */ lfs f0, 0xc(r5) +/* 8023336C 002302CC D0 3D 00 0C */ stfs f1, 0xc(r29) +/* 80233370 002302D0 D0 1D 00 10 */ stfs f0, 0x10(r29) +/* 80233374 002302D4 90 1D 00 14 */ stw r0, 0x14(r29) +/* 80233378 002302D8 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 8023337C 002302DC 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 80233380 002302E0 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 80233384 002302E4 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80233388 002302E8 7C 08 03 A6 */ mtlr r0 +/* 8023338C 002302EC 38 21 00 50 */ addi r1, r1, 0x50 +/* 80233390 002302F0 4E 80 00 20 */ blr + +.global ApplyImpulse__20CKnockBackControllerFfR10CPatterned +ApplyImpulse__20CKnockBackControllerFfR10CPatterned: +/* 80233394 002302F4 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80233398 002302F8 7C 08 02 A6 */ mflr r0 +/* 8023339C 002302FC 90 01 00 64 */ stw r0, 0x64(r1) +/* 802333A0 00230300 DB E1 00 50 */ stfd f31, 0x50(r1) +/* 802333A4 00230304 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 802333A8 00230308 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 802333AC 0023030C 93 C1 00 48 */ stw r30, 0x48(r1) +/* 802333B0 00230310 7C 7E 1B 78 */ mr r30, r3 +/* 802333B4 00230314 FF E0 08 90 */ fmr f31, f1 +/* 802333B8 00230318 C0 03 00 60 */ lfs f0, 0x60(r3) +/* 802333BC 0023031C 7C 9F 23 78 */ mr r31, r4 +/* 802333C0 00230320 38 81 00 08 */ addi r4, r1, 8 +/* 802333C4 00230324 38 6D 96 3C */ addi r3, r13, lbl_805A81FC@sda21 +/* 802333C8 00230328 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 802333CC 0023032C D0 01 00 08 */ stfs f0, 8(r1) +/* 802333D0 00230330 4B E1 C3 61 */ bl "Max__5CMathFRCfRCf" +/* 802333D4 00230334 C0 03 00 00 */ lfs f0, 0(r3) +/* 802333D8 00230338 38 80 00 00 */ li r4, 0 +/* 802333DC 0023033C 38 00 08 00 */ li r0, 0x800 +/* 802333E0 00230340 D0 1E 00 60 */ stfs f0, 0x60(r30) +/* 802333E4 00230344 80 7F 00 68 */ lwz r3, 0x68(r31) +/* 802333E8 00230348 80 BF 00 6C */ lwz r5, 0x6c(r31) +/* 802333EC 0023034C 7C 60 00 38 */ and r0, r3, r0 +/* 802333F0 00230350 7C A3 20 38 */ and r3, r5, r4 +/* 802333F4 00230354 7C 63 22 78 */ xor r3, r3, r4 +/* 802333F8 00230358 7C 00 22 78 */ xor r0, r0, r4 +/* 802333FC 0023035C 7C 60 03 79 */ or. r0, r3, r0 +/* 80233400 00230360 40 82 00 E0 */ bne lbl_802334E0 +/* 80233404 00230364 C0 3E 00 60 */ lfs f1, 0x60(r30) +/* 80233408 00230368 C0 02 B7 00 */ lfs f0, lbl_805AD420@sda21(r2) +/* 8023340C 0023036C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80233410 00230370 40 81 00 D0 */ ble lbl_802334E0 +/* 80233414 00230374 80 9E 00 20 */ lwz r4, 0x20(r30) +/* 80233418 00230378 C0 A2 B7 04 */ lfs f5, lbl_805AD424@sda21(r2) +/* 8023341C 0023037C 2C 04 00 01 */ cmpwi r4, 1 +/* 80233420 00230380 41 82 00 08 */ beq lbl_80233428 +/* 80233424 00230384 48 00 00 14 */ b lbl_80233438 +lbl_80233428: +/* 80233428 00230388 54 80 10 3A */ slwi r0, r4, 2 +/* 8023342C 0023038C 38 62 B6 F0 */ addi r3, r2, lbl_805AD410@sda21 +/* 80233430 00230390 7C 03 04 2E */ lfsx f0, r3, r0 +/* 80233434 00230394 EC A1 00 24 */ fdivs f5, f1, f0 +lbl_80233438: +/* 80233438 00230398 54 80 10 3A */ slwi r0, r4, 2 +/* 8023343C 0023039C 38 82 B6 F0 */ addi r4, r2, lbl_805AD410@sda21 +/* 80233440 002303A0 C0 22 B7 04 */ lfs f1, lbl_805AD424@sda21(r2) +/* 80233444 002303A4 38 61 00 0C */ addi r3, r1, 0xc +/* 80233448 002303A8 7C 04 04 2E */ lfsx f0, r4, r0 +/* 8023344C 002303AC 38 9F 00 34 */ addi r4, r31, 0x34 +/* 80233450 002303B0 C0 7E 00 5C */ lfs f3, 0x5c(r30) +/* 80233454 002303B4 38 A1 00 30 */ addi r5, r1, 0x30 +/* 80233458 002303B8 EC 81 00 24 */ fdivs f4, f1, f0 +/* 8023345C 002303BC C0 5E 00 54 */ lfs f2, 0x54(r30) +/* 80233460 002303C0 C0 3E 00 58 */ lfs f1, 0x58(r30) +/* 80233464 002303C4 C0 1E 00 50 */ lfs f0, 0x50(r30) +/* 80233468 002303C8 EC 65 00 F2 */ fmuls f3, f5, f3 +/* 8023346C 002303CC EC 43 00 B2 */ fmuls f2, f3, f2 +/* 80233470 002303D0 EC 23 00 72 */ fmuls f1, f3, f1 +/* 80233474 002303D4 EC 03 00 32 */ fmuls f0, f3, f0 +/* 80233478 002303D8 EC 5F 00 B2 */ fmuls f2, f31, f2 +/* 8023347C 002303DC EC 3F 00 72 */ fmuls f1, f31, f1 +/* 80233480 002303E0 EC 1F 00 32 */ fmuls f0, f31, f0 +/* 80233484 002303E4 EC 44 00 B2 */ fmuls f2, f4, f2 +/* 80233488 002303E8 EC 24 00 72 */ fmuls f1, f4, f1 +/* 8023348C 002303EC EC 04 00 32 */ fmuls f0, f4, f0 +/* 80233490 002303F0 D0 41 00 34 */ stfs f2, 0x34(r1) +/* 80233494 002303F4 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 80233498 002303F8 D0 21 00 38 */ stfs f1, 0x38(r1) +/* 8023349C 002303FC 48 0D F5 89 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 802334A0 00230400 FC 20 F8 90 */ fmr f1, f31 +/* 802334A4 00230404 7F E4 FB 78 */ mr r4, r31 +/* 802334A8 00230408 38 61 00 18 */ addi r3, r1, 0x18 +/* 802334AC 0023040C 38 A1 00 0C */ addi r5, r1, 0xc +/* 802334B0 00230410 4B EE 7B 59 */ bl GetMoveToORImpulseWR__13CPhysicsActorCFRC9CVector3ff +/* 802334B4 00230414 C0 41 00 18 */ lfs f2, 0x18(r1) +/* 802334B8 00230418 C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 802334BC 0023041C C0 01 00 20 */ lfs f0, 0x20(r1) +/* 802334C0 00230420 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 802334C4 00230424 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 802334C8 00230428 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 802334CC 0023042C 4B DE 80 69 */ bl Identity__10CAxisAngleFv +/* 802334D0 00230430 7C 65 1B 78 */ mr r5, r3 +/* 802334D4 00230434 7F E3 FB 78 */ mr r3, r31 +/* 802334D8 00230438 38 81 00 24 */ addi r4, r1, 0x24 +/* 802334DC 0023043C 4B EE 8E BD */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +lbl_802334E0: +/* 802334E0 00230440 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 +/* 802334E4 00230444 80 01 00 64 */ lwz r0, 0x64(r1) +/* 802334E8 00230448 CB E1 00 50 */ lfd f31, 0x50(r1) +/* 802334EC 0023044C 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 802334F0 00230450 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 802334F4 00230454 7C 08 03 A6 */ mtlr r0 +/* 802334F8 00230458 38 21 00 60 */ addi r1, r1, 0x60 +/* 802334FC 0023045C 4E 80 00 20 */ blr + +.global ResetKnockBackImpulse__20CKnockBackControllerFR10CPatternedRC9CVector3ff +ResetKnockBackImpulse__20CKnockBackControllerFR10CPatternedRC9CVector3ff: +/* 80233500 00230460 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80233504 00230464 7C 08 02 A6 */ mflr r0 +/* 80233508 00230468 90 01 00 54 */ stw r0, 0x54(r1) +/* 8023350C 0023046C DB E1 00 40 */ stfd f31, 0x40(r1) +/* 80233510 00230470 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 80233514 00230474 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80233518 00230478 93 C1 00 38 */ stw r30, 0x38(r1) +/* 8023351C 0023047C 93 A1 00 34 */ stw r29, 0x34(r1) +/* 80233520 00230480 88 03 00 81 */ lbz r0, 0x81(r3) +/* 80233524 00230484 FF E0 08 90 */ fmr f31, f1 +/* 80233528 00230488 7C 7D 1B 78 */ mr r29, r3 +/* 8023352C 0023048C 7C 9E 23 78 */ mr r30, r4 +/* 80233530 00230490 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80233534 00230494 7C BF 2B 78 */ mr r31, r5 +/* 80233538 00230498 41 82 00 E4 */ beq lbl_8023361C +/* 8023353C 0023049C 80 1D 00 04 */ lwz r0, 4(r29) +/* 80233540 002304A0 2C 00 00 02 */ cmpwi r0, 2 +/* 80233544 002304A4 40 82 00 D8 */ bne lbl_8023361C +/* 80233548 002304A8 80 1D 00 08 */ lwz r0, 8(r29) +/* 8023354C 002304AC 2C 00 00 01 */ cmpwi r0, 1 +/* 80233550 002304B0 41 82 00 CC */ beq lbl_8023361C +/* 80233554 002304B4 7F E3 FB 78 */ mr r3, r31 +/* 80233558 002304B8 48 0E 11 A1 */ bl CanBeNormalized__9CVector3fCFv +/* 8023355C 002304BC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80233560 002304C0 41 82 00 18 */ beq lbl_80233578 +/* 80233564 002304C4 7F E4 FB 78 */ mr r4, r31 +/* 80233568 002304C8 38 61 00 20 */ addi r3, r1, 0x20 +/* 8023356C 002304CC 48 0E 12 E5 */ bl AsNormalized__9CVector3fCFv +/* 80233570 002304D0 38 61 00 20 */ addi r3, r1, 0x20 +/* 80233574 002304D4 48 00 00 38 */ b lbl_802335AC +lbl_80233578: +/* 80233578 002304D8 C0 9E 00 58 */ lfs f4, 0x58(r30) +/* 8023357C 002304DC 38 61 00 08 */ addi r3, r1, 8 +/* 80233580 002304E0 C0 5E 00 48 */ lfs f2, 0x48(r30) +/* 80233584 002304E4 C0 7E 00 38 */ lfs f3, 0x38(r30) +/* 80233588 002304E8 FC 00 20 50 */ fneg f0, f4 +/* 8023358C 002304EC FC 20 10 50 */ fneg f1, f2 +/* 80233590 002304F0 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 80233594 002304F4 FC 40 18 50 */ fneg f2, f3 +/* 80233598 002304F8 D0 61 00 14 */ stfs f3, 0x14(r1) +/* 8023359C 002304FC D0 81 00 1C */ stfs f4, 0x1c(r1) +/* 802335A0 00230500 D0 41 00 08 */ stfs f2, 8(r1) +/* 802335A4 00230504 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 802335A8 00230508 D0 01 00 10 */ stfs f0, 0x10(r1) +lbl_802335AC: +/* 802335AC 0023050C C0 23 00 00 */ lfs f1, 0(r3) +/* 802335B0 00230510 C0 02 B7 00 */ lfs f0, lbl_805AD420@sda21(r2) +/* 802335B4 00230514 D0 3D 00 50 */ stfs f1, 0x50(r29) +/* 802335B8 00230518 C0 23 00 04 */ lfs f1, 4(r3) +/* 802335BC 0023051C D0 3D 00 54 */ stfs f1, 0x54(r29) +/* 802335C0 00230520 C0 23 00 08 */ lfs f1, 8(r3) +/* 802335C4 00230524 D0 3D 00 58 */ stfs f1, 0x58(r29) +/* 802335C8 00230528 C0 7D 00 60 */ lfs f3, 0x60(r29) +/* 802335CC 0023052C FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 802335D0 00230530 4C 40 13 82 */ cror 2, 0, 2 +/* 802335D4 00230534 40 82 00 0C */ bne lbl_802335E0 +/* 802335D8 00230538 D3 FD 00 5C */ stfs f31, 0x5c(r29) +/* 802335DC 0023053C 48 00 00 2C */ b lbl_80233608 +lbl_802335E0: +/* 802335E0 00230540 80 1D 00 20 */ lwz r0, 0x20(r29) +/* 802335E4 00230544 38 62 B6 F0 */ addi r3, r2, lbl_805AD410@sda21 +/* 802335E8 00230548 C0 42 B7 04 */ lfs f2, lbl_805AD424@sda21(r2) +/* 802335EC 0023054C 54 00 10 3A */ slwi r0, r0, 2 +/* 802335F0 00230550 C0 1D 00 5C */ lfs f0, 0x5c(r29) +/* 802335F4 00230554 7C 23 04 2E */ lfsx f1, r3, r0 +/* 802335F8 00230558 EC 23 08 24 */ fdivs f1, f3, f1 +/* 802335FC 0023055C EC 22 08 28 */ fsubs f1, f2, f1 +/* 80233600 00230560 EC 1F 00 7A */ fmadds f0, f31, f1, f0 +/* 80233604 00230564 D0 1D 00 5C */ stfs f0, 0x5c(r29) +lbl_80233608: +/* 80233608 00230568 80 1D 00 20 */ lwz r0, 0x20(r29) +/* 8023360C 0023056C 38 62 B6 F0 */ addi r3, r2, lbl_805AD410@sda21 +/* 80233610 00230570 54 00 10 3A */ slwi r0, r0, 2 +/* 80233614 00230574 7C 03 04 2E */ lfsx f0, r3, r0 +/* 80233618 00230578 D0 1D 00 60 */ stfs f0, 0x60(r29) +lbl_8023361C: +/* 8023361C 0023057C E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 80233620 00230580 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80233624 00230584 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 80233628 00230588 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8023362C 0023058C 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 80233630 00230590 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 80233634 00230594 7C 08 03 A6 */ mtlr r0 +/* 80233638 00230598 38 21 00 50 */ addi r1, r1, 0x50 +/* 8023363C 0023059C 4E 80 00 20 */ blr + +.global TickDeferredTimer__20CKnockBackControllerFf +TickDeferredTimer__20CKnockBackControllerFf: +/* 80233640 002305A0 C0 03 00 68 */ lfs f0, 0x68(r3) +/* 80233644 002305A4 EC 00 08 28 */ fsubs f0, f0, f1 +/* 80233648 002305A8 D0 03 00 68 */ stfs f0, 0x68(r3) +/* 8023364C 002305AC 80 03 00 14 */ lwz r0, 0x14(r3) +/* 80233650 002305B0 2C 00 FF FF */ cmpwi r0, -1 +/* 80233654 002305B4 41 82 00 20 */ beq lbl_80233674 +/* 80233658 002305B8 C0 23 00 68 */ lfs f1, 0x68(r3) +/* 8023365C 002305BC C0 02 B7 00 */ lfs f0, lbl_805AD420@sda21(r2) +/* 80233660 002305C0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80233664 002305C4 4C 40 13 82 */ cror 2, 0, 2 +/* 80233668 002305C8 7C 00 00 26 */ mfcr r0 +/* 8023366C 002305CC 54 03 1F FE */ rlwinm r3, r0, 3, 0x1f, 0x1f +/* 80233670 002305D0 4E 80 00 20 */ blr +lbl_80233674: +/* 80233674 002305D4 38 60 00 00 */ li r3, 0 +/* 80233678 002305D8 4E 80 00 20 */ blr + +.global ValidateState__20CKnockBackControllerFR10CPatterned +ValidateState__20CKnockBackControllerFR10CPatterned: +/* 8023367C 002305DC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80233680 002305E0 7C 08 02 A6 */ mflr r0 +/* 80233684 002305E4 90 01 00 24 */ stw r0, 0x24(r1) +/* 80233688 002305E8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8023368C 002305EC 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80233690 002305F0 7C 7E 1B 78 */ mr r30, r3 +/* 80233694 002305F4 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80233698 002305F8 80 63 00 04 */ lwz r3, 4(r3) +/* 8023369C 002305FC 80 1E 00 18 */ lwz r0, 0x18(r30) +/* 802336A0 00230600 7C 03 00 00 */ cmpw r3, r0 +/* 802336A4 00230604 40 80 00 0C */ bge lbl_802336B0 +/* 802336A8 00230608 90 1E 00 04 */ stw r0, 4(r30) +/* 802336AC 0023060C 48 00 00 14 */ b lbl_802336C0 +lbl_802336B0: +/* 802336B0 00230610 80 1E 00 1C */ lwz r0, 0x1c(r30) +/* 802336B4 00230614 7C 03 00 00 */ cmpw r3, r0 +/* 802336B8 00230618 40 81 00 08 */ ble lbl_802336C0 +/* 802336BC 0023061C 90 1E 00 04 */ stw r0, 4(r30) +lbl_802336C0: +/* 802336C0 00230620 88 04 04 00 */ lbz r0, 0x400(r4) +/* 802336C4 00230624 3B E0 FF FF */ li r31, -1 +/* 802336C8 00230628 83 A4 04 50 */ lwz r29, 0x450(r4) +/* 802336CC 0023062C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 802336D0 00230630 41 82 00 B8 */ beq lbl_80233788 +/* 802336D4 00230634 7F A3 EB 78 */ mr r3, r29 +/* 802336D8 00230638 38 80 00 0E */ li r4, 0xe +/* 802336DC 0023063C 4B F0 74 D9 */ bl HasBodyState__15CBodyControllerCFQ23pas15EAnimationState +/* 802336E0 00230640 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 802336E4 00230644 41 82 00 2C */ beq lbl_80233710 +/* 802336E8 00230648 7F C3 F3 78 */ mr r3, r30 +/* 802336EC 0023064C 38 80 00 03 */ li r4, 3 +/* 802336F0 00230650 48 00 06 B1 */ bl TestAvailableState__20CKnockBackControllerCFi +/* 802336F4 00230654 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 802336F8 00230658 41 82 00 18 */ beq lbl_80233710 +/* 802336FC 0023065C 80 1E 00 04 */ lwz r0, 4(r30) +/* 80233700 00230660 2C 00 00 03 */ cmpwi r0, 3 +/* 80233704 00230664 41 80 00 0C */ blt lbl_80233710 +/* 80233708 00230668 3B E0 00 03 */ li r31, 3 +/* 8023370C 0023066C 48 00 01 10 */ b lbl_8023381C +lbl_80233710: +/* 80233710 00230670 7F A3 EB 78 */ mr r3, r29 +/* 80233714 00230674 38 80 00 06 */ li r4, 6 +/* 80233718 00230678 4B F0 74 9D */ bl HasBodyState__15CBodyControllerCFQ23pas15EAnimationState +/* 8023371C 0023067C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80233720 00230680 41 82 00 2C */ beq lbl_8023374C +/* 80233724 00230684 7F C3 F3 78 */ mr r3, r30 +/* 80233728 00230688 38 80 00 02 */ li r4, 2 +/* 8023372C 0023068C 48 00 06 75 */ bl TestAvailableState__20CKnockBackControllerCFi +/* 80233730 00230690 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80233734 00230694 41 82 00 18 */ beq lbl_8023374C +/* 80233738 00230698 80 1E 00 04 */ lwz r0, 4(r30) +/* 8023373C 0023069C 2C 00 00 02 */ cmpwi r0, 2 +/* 80233740 002306A0 41 80 00 0C */ blt lbl_8023374C +/* 80233744 002306A4 3B E0 00 02 */ li r31, 2 +/* 80233748 002306A8 48 00 00 D4 */ b lbl_8023381C +lbl_8023374C: +/* 8023374C 002306AC 7F A3 EB 78 */ mr r3, r29 +/* 80233750 002306B0 38 80 00 17 */ li r4, 0x17 +/* 80233754 002306B4 4B F0 74 61 */ bl HasBodyState__15CBodyControllerCFQ23pas15EAnimationState +/* 80233758 002306B8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8023375C 002306BC 41 82 00 C0 */ beq lbl_8023381C +/* 80233760 002306C0 7F C3 F3 78 */ mr r3, r30 +/* 80233764 002306C4 38 80 00 01 */ li r4, 1 +/* 80233768 002306C8 48 00 06 39 */ bl TestAvailableState__20CKnockBackControllerCFi +/* 8023376C 002306CC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80233770 002306D0 41 82 00 AC */ beq lbl_8023381C +/* 80233774 002306D4 80 1E 00 04 */ lwz r0, 4(r30) +/* 80233778 002306D8 2C 00 00 01 */ cmpwi r0, 1 +/* 8023377C 002306DC 41 80 00 A0 */ blt lbl_8023381C +/* 80233780 002306E0 3B E0 00 01 */ li r31, 1 +/* 80233784 002306E4 48 00 00 98 */ b lbl_8023381C +lbl_80233788: +/* 80233788 002306E8 7F A3 EB 78 */ mr r3, r29 +/* 8023378C 002306EC 38 80 00 00 */ li r4, 0 +/* 80233790 002306F0 4B F0 74 25 */ bl HasBodyState__15CBodyControllerCFQ23pas15EAnimationState +/* 80233794 002306F4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80233798 002306F8 41 82 00 4C */ beq lbl_802337E4 +/* 8023379C 002306FC 7F C3 F3 78 */ mr r3, r30 +/* 802337A0 00230700 38 80 00 04 */ li r4, 4 +/* 802337A4 00230704 48 00 05 FD */ bl TestAvailableState__20CKnockBackControllerCFi +/* 802337A8 00230708 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 802337AC 0023070C 41 82 00 38 */ beq lbl_802337E4 +/* 802337B0 00230710 80 1E 00 04 */ lwz r0, 4(r30) +/* 802337B4 00230714 2C 00 00 04 */ cmpwi r0, 4 +/* 802337B8 00230718 40 80 00 24 */ bge lbl_802337DC +/* 802337BC 0023071C 7F A3 EB 78 */ mr r3, r29 +/* 802337C0 00230720 38 80 00 0E */ li r4, 0xe +/* 802337C4 00230724 4B F0 73 F1 */ bl HasBodyState__15CBodyControllerCFQ23pas15EAnimationState +/* 802337C8 00230728 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 802337CC 0023072C 40 82 00 18 */ bne lbl_802337E4 +/* 802337D0 00230730 80 1E 00 04 */ lwz r0, 4(r30) +/* 802337D4 00230734 2C 00 00 03 */ cmpwi r0, 3 +/* 802337D8 00230738 41 80 00 0C */ blt lbl_802337E4 +lbl_802337DC: +/* 802337DC 0023073C 3B E0 00 04 */ li r31, 4 +/* 802337E0 00230740 48 00 00 3C */ b lbl_8023381C +lbl_802337E4: +/* 802337E4 00230744 7F A3 EB 78 */ mr r3, r29 +/* 802337E8 00230748 38 80 00 0E */ li r4, 0xe +/* 802337EC 0023074C 4B F0 73 C9 */ bl HasBodyState__15CBodyControllerCFQ23pas15EAnimationState +/* 802337F0 00230750 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 802337F4 00230754 41 82 00 28 */ beq lbl_8023381C +/* 802337F8 00230758 7F C3 F3 78 */ mr r3, r30 +/* 802337FC 0023075C 38 80 00 03 */ li r4, 3 +/* 80233800 00230760 48 00 05 A1 */ bl TestAvailableState__20CKnockBackControllerCFi +/* 80233804 00230764 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80233808 00230768 41 82 00 14 */ beq lbl_8023381C +/* 8023380C 0023076C 80 1E 00 04 */ lwz r0, 4(r30) +/* 80233810 00230770 2C 00 00 03 */ cmpwi r0, 3 +/* 80233814 00230774 41 80 00 08 */ blt lbl_8023381C +/* 80233818 00230778 3B E0 00 03 */ li r31, 3 +lbl_8023381C: +/* 8023381C 0023077C 2C 1F FF FF */ cmpwi r31, -1 +/* 80233820 00230780 38 00 00 00 */ li r0, 0 +/* 80233824 00230784 41 82 00 08 */ beq lbl_8023382C +/* 80233828 00230788 7F E0 FB 78 */ mr r0, r31 +lbl_8023382C: +/* 8023382C 0023078C 90 1E 00 04 */ stw r0, 4(r30) +/* 80233830 00230790 38 80 00 00 */ li r4, 0 +/* 80233834 00230794 80 1E 00 08 */ lwz r0, 8(r30) +/* 80233838 00230798 28 00 00 09 */ cmplwi r0, 9 +/* 8023383C 0023079C 41 81 00 C0 */ bgt lbl_802338FC +/* 80233840 002307A0 3C 60 80 3F */ lis r3, lbl_803E8150@ha +/* 80233844 002307A4 54 00 10 3A */ slwi r0, r0, 2 +/* 80233848 002307A8 38 63 81 50 */ addi r3, r3, lbl_803E8150@l +/* 8023384C 002307AC 7C 03 00 2E */ lwzx r0, r3, r0 +/* 80233850 002307B0 7C 09 03 A6 */ mtctr r0 +/* 80233854 002307B4 4E 80 04 20 */ bctr +/* 80233858 002307B8 88 1E 00 81 */ lbz r0, 0x81(r30) +/* 8023385C 002307BC 54 00 D7 FE */ rlwinm r0, r0, 0x1a, 0x1f, 0x1f +/* 80233860 002307C0 7C 00 00 34 */ cntlzw r0, r0 +/* 80233864 002307C4 54 00 D9 7E */ srwi r0, r0, 5 +/* 80233868 002307C8 7C 04 03 78 */ mr r4, r0 +/* 8023386C 002307CC 48 00 00 90 */ b lbl_802338FC +/* 80233870 002307D0 88 1E 00 81 */ lbz r0, 0x81(r30) +/* 80233874 002307D4 54 00 DF FE */ rlwinm r0, r0, 0x1b, 0x1f, 0x1f +/* 80233878 002307D8 7C 00 00 34 */ cntlzw r0, r0 +/* 8023387C 002307DC 54 00 D9 7E */ srwi r0, r0, 5 +/* 80233880 002307E0 7C 04 03 78 */ mr r4, r0 +/* 80233884 002307E4 48 00 00 78 */ b lbl_802338FC +/* 80233888 002307E8 88 1E 00 81 */ lbz r0, 0x81(r30) +/* 8023388C 002307EC 54 00 E7 FE */ rlwinm r0, r0, 0x1c, 0x1f, 0x1f +/* 80233890 002307F0 7C 00 00 34 */ cntlzw r0, r0 +/* 80233894 002307F4 54 00 D9 7E */ srwi r0, r0, 5 +/* 80233898 002307F8 7C 04 03 78 */ mr r4, r0 +/* 8023389C 002307FC 48 00 00 60 */ b lbl_802338FC +/* 802338A0 00230800 88 1E 00 81 */ lbz r0, 0x81(r30) +/* 802338A4 00230804 54 00 F7 FE */ rlwinm r0, r0, 0x1e, 0x1f, 0x1f +/* 802338A8 00230808 7C 00 00 34 */ cntlzw r0, r0 +/* 802338AC 0023080C 54 00 D9 7E */ srwi r0, r0, 5 +/* 802338B0 00230810 7C 04 03 78 */ mr r4, r0 +/* 802338B4 00230814 48 00 00 48 */ b lbl_802338FC +/* 802338B8 00230818 88 1E 00 81 */ lbz r0, 0x81(r30) +/* 802338BC 0023081C 54 00 F7 FE */ rlwinm r0, r0, 0x1e, 0x1f, 0x1f +/* 802338C0 00230820 7C 00 00 34 */ cntlzw r0, r0 +/* 802338C4 00230824 54 00 D9 7E */ srwi r0, r0, 5 +/* 802338C8 00230828 7C 04 03 78 */ mr r4, r0 +/* 802338CC 0023082C 48 00 00 30 */ b lbl_802338FC +/* 802338D0 00230830 88 1E 00 81 */ lbz r0, 0x81(r30) +/* 802338D4 00230834 54 00 EF FE */ rlwinm r0, r0, 0x1d, 0x1f, 0x1f +/* 802338D8 00230838 7C 00 00 34 */ cntlzw r0, r0 +/* 802338DC 0023083C 54 00 D9 7E */ srwi r0, r0, 5 +/* 802338E0 00230840 7C 04 03 78 */ mr r4, r0 +/* 802338E4 00230844 48 00 00 18 */ b lbl_802338FC +/* 802338E8 00230848 88 1E 00 81 */ lbz r0, 0x81(r30) +/* 802338EC 0023084C 54 00 FF FE */ rlwinm r0, r0, 0x1f, 0x1f, 0x1f +/* 802338F0 00230850 7C 00 00 34 */ cntlzw r0, r0 +/* 802338F4 00230854 54 00 D9 7E */ srwi r0, r0, 5 +/* 802338F8 00230858 7C 04 03 78 */ mr r4, r0 +lbl_802338FC: +/* 802338FC 0023085C 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 80233900 00230860 41 82 00 14 */ beq lbl_80233914 +/* 80233904 00230864 38 00 00 00 */ li r0, 0 +/* 80233908 00230868 C0 02 B7 00 */ lfs f0, lbl_805AD420@sda21(r2) +/* 8023390C 0023086C 90 1E 00 08 */ stw r0, 8(r30) +/* 80233910 00230870 D0 1E 00 0C */ stfs f0, 0xc(r30) +lbl_80233914: +/* 80233914 00230874 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80233918 00230878 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8023391C 0023087C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80233920 00230880 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80233924 00230884 7C 08 03 A6 */ mtlr r0 +/* 80233928 00230888 38 21 00 20 */ addi r1, r1, 0x20 +/* 8023392C 0023088C 4E 80 00 20 */ blr + +.global CalculateExtraHurlVelocity__20CKnockBackControllerFR13CStateManagerff +CalculateExtraHurlVelocity__20CKnockBackControllerFR13CStateManagerff: +/* 80233930 00230890 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80233934 00230894 7C 08 02 A6 */ mflr r0 +/* 80233938 00230898 90 01 00 34 */ stw r0, 0x34(r1) +/* 8023393C 0023089C DB E1 00 20 */ stfd f31, 0x20(r1) +/* 80233940 002308A0 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 80233944 002308A4 DB C1 00 10 */ stfd f30, 0x10(r1) +/* 80233948 002308A8 F3 C1 00 18 */ psq_st f30, 24(r1), 0, qr0 +/* 8023394C 002308AC FF C0 08 90 */ fmr f30, f1 +/* 80233950 002308B0 C0 22 B7 00 */ lfs f1, lbl_805AD420@sda21(r2) +/* 80233954 002308B4 FF E0 10 90 */ fmr f31, f2 +/* 80233958 002308B8 FC 1E F8 40 */ fcmpo cr0, f30, f31 +/* 8023395C 002308BC 40 81 00 28 */ ble lbl_80233984 +/* 80233960 002308C0 80 64 09 00 */ lwz r3, 0x900(r4) +/* 80233964 002308C4 48 0D EB 79 */ bl Float__9CRandom16Fv +/* 80233968 002308C8 C0 82 B7 14 */ lfs f4, lbl_805AD434@sda21(r2) +/* 8023396C 002308CC EC 1E F8 28 */ fsubs f0, f30, f31 +/* 80233970 002308D0 C0 62 B7 10 */ lfs f3, lbl_805AD430@sda21(r2) +/* 80233974 002308D4 C0 42 B7 0C */ lfs f2, lbl_805AD42C@sda21(r2) +/* 80233978 002308D8 EC 24 18 7C */ fnmsubs f1, f4, f1, f3 +/* 8023397C 002308DC EC 22 00 72 */ fmuls f1, f2, f1 +/* 80233980 002308E0 EC 21 00 32 */ fmuls f1, f1, f0 +lbl_80233984: +/* 80233984 002308E4 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 80233988 002308E8 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 8023398C 002308EC E3 C1 00 18 */ psq_l f30, 24(r1), 0, qr0 +/* 80233990 002308F0 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80233994 002308F4 CB C1 00 10 */ lfd f30, 0x10(r1) +/* 80233998 002308F8 7C 08 03 A6 */ mtlr r0 +/* 8023399C 002308FC 38 21 00 30 */ addi r1, r1, 0x30 +/* 802339A0 00230900 4E 80 00 20 */ blr + +.global GetKnockBackCharacterState__20CKnockBackControllerFR10CPatterned +GetKnockBackCharacterState__20CKnockBackControllerFR10CPatterned: +/* 802339A4 00230904 80 64 04 50 */ lwz r3, 0x450(r4) +/* 802339A8 00230908 88 03 03 00 */ lbz r0, 0x300(r3) +/* 802339AC 0023090C 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 802339B0 00230910 41 82 00 1C */ beq lbl_802339CC +/* 802339B4 00230914 88 04 04 00 */ lbz r0, 0x400(r4) +/* 802339B8 00230918 38 60 00 03 */ li r3, 3 +/* 802339BC 0023091C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 802339C0 00230920 4D 82 00 20 */ beqlr +/* 802339C4 00230924 38 60 00 02 */ li r3, 2 +/* 802339C8 00230928 4E 80 00 20 */ blr +lbl_802339CC: +/* 802339CC 0023092C 88 04 04 00 */ lbz r0, 0x400(r4) +/* 802339D0 00230930 54 00 D7 FE */ rlwinm r0, r0, 0x1a, 0x1f, 0x1f +/* 802339D4 00230934 7C 00 00 34 */ cntlzw r0, r0 +/* 802339D8 00230938 54 03 D9 7E */ srwi r3, r0, 5 +/* 802339DC 0023093C 4E 80 00 20 */ blr + +.global GetKnockBackWeaponType__20CKnockBackControllerFRC11CDamageInfo11EWeaponType14EKnockBackType +GetKnockBackWeaponType__20CKnockBackControllerFRC11CDamageInfo11EWeaponType14EKnockBackType: +/* 802339E0 00230940 88 84 00 04 */ lbz r4, 4(r4) +/* 802339E4 00230944 38 60 FF FF */ li r3, -1 +/* 802339E8 00230948 38 E0 00 00 */ li r7, 0 +/* 802339EC 0023094C 54 80 CF FF */ rlwinm. r0, r4, 0x19, 0x1f, 0x1f +/* 802339F0 00230950 41 82 00 0C */ beq lbl_802339FC +/* 802339F4 00230954 38 E0 00 01 */ li r7, 1 +/* 802339F8 00230958 48 00 00 10 */ b lbl_80233A08 +lbl_802339FC: +/* 802339FC 0023095C 54 80 D7 FF */ rlwinm. r0, r4, 0x1a, 0x1f, 0x1f +/* 80233A00 00230960 41 82 00 08 */ beq lbl_80233A08 +/* 80233A04 00230964 38 E0 00 02 */ li r7, 2 +lbl_80233A08: +/* 80233A08 00230968 28 05 00 08 */ cmplwi r5, 8 +/* 80233A0C 0023096C 4D 81 00 20 */ bgtlr +/* 80233A10 00230970 3C 80 80 3F */ lis r4, lbl_803E8178@ha +/* 80233A14 00230974 54 A0 10 3A */ slwi r0, r5, 2 +/* 80233A18 00230978 38 84 81 78 */ addi r4, r4, lbl_803E8178@l +/* 80233A1C 0023097C 7C 04 00 2E */ lwzx r0, r4, r0 +/* 80233A20 00230980 7C 09 03 A6 */ mtctr r0 +/* 80233A24 00230984 4E 80 04 20 */ bctr +/* 80233A28 00230988 54 C0 06 3F */ clrlwi. r0, r6, 0x18 +/* 80233A2C 0023098C 7C E3 3B 78 */ mr r3, r7 +/* 80233A30 00230990 4C 82 00 20 */ bnelr +/* 80233A34 00230994 38 67 00 01 */ addi r3, r7, 1 +/* 80233A38 00230998 4E 80 00 20 */ blr +/* 80233A3C 0023099C 54 C0 06 3F */ clrlwi. r0, r6, 0x18 +/* 80233A40 002309A0 38 67 00 08 */ addi r3, r7, 8 +/* 80233A44 002309A4 4C 82 00 20 */ bnelr +/* 80233A48 002309A8 38 63 00 01 */ addi r3, r3, 1 +/* 80233A4C 002309AC 4E 80 00 20 */ blr +/* 80233A50 002309B0 38 67 00 04 */ addi r3, r7, 4 +/* 80233A54 002309B4 4E 80 00 20 */ blr +/* 80233A58 002309B8 38 67 00 0C */ addi r3, r7, 0xc +/* 80233A5C 002309BC 4E 80 00 20 */ blr +/* 80233A60 002309C0 38 60 00 10 */ li r3, 0x10 +/* 80233A64 002309C4 4E 80 00 20 */ blr +/* 80233A68 002309C8 38 60 00 11 */ li r3, 0x11 +/* 80233A6C 002309CC 4E 80 00 20 */ blr +/* 80233A70 002309D0 38 60 00 0F */ li r3, 0xf +/* 80233A74 002309D4 4E 80 00 20 */ blr +/* 80233A78 002309D8 38 60 00 12 */ li r3, 0x12 +/* 80233A7C 002309DC 4E 80 00 20 */ blr + +.global SelectDamageState__20CKnockBackControllerFR10CPatternedRC11CDamageInfo11EWeaponType14EKnockBackType +SelectDamageState__20CKnockBackControllerFR10CPatternedRC11CDamageInfo11EWeaponType14EKnockBackType: +/* 80233A80 002309E0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80233A84 002309E4 7C 08 02 A6 */ mflr r0 +/* 80233A88 002309E8 3D 00 80 3D */ lis r8, lbl_803D0008@ha +/* 80233A8C 002309EC 90 01 00 24 */ stw r0, 0x24(r1) +/* 80233A90 002309F0 84 08 34 90 */ lwzu r0, 0x3490(r8) +/* 80233A94 002309F4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80233A98 002309F8 7C 7F 1B 78 */ mr r31, r3 +/* 80233A9C 002309FC C0 28 00 08 */ lfs f1, lbl_803D0008@l(r8) +/* 80233AA0 00230A00 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80233AA4 00230A04 C0 08 00 0C */ lfs f0, 0xc(r8) +/* 80233AA8 00230A08 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80233AAC 00230A0C 7C 9D 23 78 */ mr r29, r4 +/* 80233AB0 00230A10 7C A4 2B 78 */ mr r4, r5 +/* 80233AB4 00230A14 7C C5 33 78 */ mr r5, r6 +/* 80233AB8 00230A18 90 03 00 04 */ stw r0, 4(r3) +/* 80233ABC 00230A1C 7C E6 3B 78 */ mr r6, r7 +/* 80233AC0 00230A20 80 08 00 04 */ lwz r0, 4(r8) +/* 80233AC4 00230A24 90 03 00 08 */ stw r0, 8(r3) +/* 80233AC8 00230A28 D0 23 00 0C */ stfs f1, 0xc(r3) +/* 80233ACC 00230A2C D0 03 00 10 */ stfs f0, 0x10(r3) +/* 80233AD0 00230A30 4B FF FF 11 */ bl GetKnockBackWeaponType__20CKnockBackControllerFRC11CDamageInfo11EWeaponType14EKnockBackType +/* 80233AD4 00230A34 7C 7E 1B 78 */ mr r30, r3 +/* 80233AD8 00230A38 2C 1E FF FF */ cmpwi r30, -1 +/* 80233ADC 00230A3C 41 82 00 60 */ beq lbl_80233B3C +/* 80233AE0 00230A40 7F E3 FB 78 */ mr r3, r31 +/* 80233AE4 00230A44 7F A4 EB 78 */ mr r4, r29 +/* 80233AE8 00230A48 4B FF FE BD */ bl GetKnockBackCharacterState__20CKnockBackControllerFR10CPatterned +/* 80233AEC 00230A4C 80 DF 00 00 */ lwz r6, 0(r31) +/* 80233AF0 00230A50 3C 80 80 3D */ lis r4, lbl_803D34A0@ha +/* 80233AF4 00230A54 54 60 20 36 */ slwi r0, r3, 4 +/* 80233AF8 00230A58 57 C5 30 32 */ slwi r5, r30, 6 +/* 80233AFC 00230A5C 1C E6 04 C0 */ mulli r7, r6, 0x4c0 +/* 80233B00 00230A60 38 C4 34 A0 */ addi r6, r4, lbl_803D34A0@l +/* 80233B04 00230A64 7F E3 FB 78 */ mr r3, r31 +/* 80233B08 00230A68 7F A4 EB 78 */ mr r4, r29 +/* 80233B0C 00230A6C 7C C6 3A 14 */ add r6, r6, r7 +/* 80233B10 00230A70 7C A6 2A 14 */ add r5, r6, r5 +/* 80233B14 00230A74 7C C5 02 14 */ add r6, r5, r0 +/* 80233B18 00230A78 80 A6 00 00 */ lwz r5, 0(r6) +/* 80233B1C 00230A7C 80 06 00 04 */ lwz r0, 4(r6) +/* 80233B20 00230A80 90 BF 00 04 */ stw r5, 4(r31) +/* 80233B24 00230A84 C0 26 00 08 */ lfs f1, 8(r6) +/* 80233B28 00230A88 90 1F 00 08 */ stw r0, 8(r31) +/* 80233B2C 00230A8C C0 06 00 0C */ lfs f0, 0xc(r6) +/* 80233B30 00230A90 D0 3F 00 0C */ stfs f1, 0xc(r31) +/* 80233B34 00230A94 D0 1F 00 10 */ stfs f0, 0x10(r31) +/* 80233B38 00230A98 4B FF FB 45 */ bl ValidateState__20CKnockBackControllerFR10CPatterned +lbl_80233B3C: +/* 80233B3C 00230A9C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80233B40 00230AA0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80233B44 00230AA4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80233B48 00230AA8 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80233B4C 00230AAC 7C 08 03 A6 */ mtlr r0 +/* 80233B50 00230AB0 38 21 00 20 */ addi r1, r1, 0x20 +/* 80233B54 00230AB4 4E 80 00 20 */ blr + +.global Update__20CKnockBackControllerFfR13CStateManagerR10CPatterned +Update__20CKnockBackControllerFfR13CStateManagerR10CPatterned: +/* 80233B58 00230AB8 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80233B5C 00230ABC 7C 08 02 A6 */ mflr r0 +/* 80233B60 00230AC0 90 01 00 34 */ stw r0, 0x34(r1) +/* 80233B64 00230AC4 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 80233B68 00230AC8 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 80233B6C 00230ACC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80233B70 00230AD0 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80233B74 00230AD4 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80233B78 00230AD8 FF E0 08 90 */ fmr f31, f1 +/* 80233B7C 00230ADC 7C BF 2B 78 */ mr r31, r5 +/* 80233B80 00230AE0 7C 9E 23 78 */ mr r30, r4 +/* 80233B84 00230AE4 7C 7D 1B 78 */ mr r29, r3 +/* 80233B88 00230AE8 7F E4 FB 78 */ mr r4, r31 +/* 80233B8C 00230AEC 4B FF F8 09 */ bl ApplyImpulse__20CKnockBackControllerFfR10CPatterned +/* 80233B90 00230AF0 C0 1D 00 64 */ lfs f0, 0x64(r29) +/* 80233B94 00230AF4 FC 20 F8 90 */ fmr f1, f31 +/* 80233B98 00230AF8 7F A3 EB 78 */ mr r3, r29 +/* 80233B9C 00230AFC EC 00 F8 28 */ fsubs f0, f0, f31 +/* 80233BA0 00230B00 D0 1D 00 64 */ stfs f0, 0x64(r29) +/* 80233BA4 00230B04 4B FF FA 9D */ bl TickDeferredTimer__20CKnockBackControllerFf +/* 80233BA8 00230B08 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80233BAC 00230B0C 41 82 00 14 */ beq lbl_80233BC0 +/* 80233BB0 00230B10 7F A3 EB 78 */ mr r3, r29 +/* 80233BB4 00230B14 7F C4 F3 78 */ mr r4, r30 +/* 80233BB8 00230B18 7F E5 FB 78 */ mr r5, r31 +/* 80233BBC 00230B1C 4B FF F5 E9 */ bl DoDeferredKnockBack__20CKnockBackControllerFR13CStateManagerR10CPatterned +lbl_80233BC0: +/* 80233BC0 00230B20 88 1D 00 82 */ lbz r0, 0x82(r29) +/* 80233BC4 00230B24 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 80233BC8 00230B28 41 82 00 44 */ beq lbl_80233C0C +/* 80233BCC 00230B2C 80 9F 04 50 */ lwz r4, 0x450(r31) +/* 80233BD0 00230B30 C0 02 B7 00 */ lfs f0, lbl_805AD420@sda21(r2) +/* 80233BD4 00230B34 C0 24 03 24 */ lfs f1, 0x324(r4) +/* 80233BD8 00230B38 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80233BDC 00230B3C 40 81 00 30 */ ble lbl_80233C0C +/* 80233BE0 00230B40 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80233BE4 00230B44 38 00 00 16 */ li r0, 0x16 +/* 80233BE8 00230B48 38 A3 AA 68 */ addi r5, r3, lbl_803DAA68@l +/* 80233BEC 00230B4C 90 01 00 0C */ stw r0, 0xc(r1) +/* 80233BF0 00230B50 38 64 00 04 */ addi r3, r4, 4 +/* 80233BF4 00230B54 38 81 00 08 */ addi r4, r1, 8 +/* 80233BF8 00230B58 90 A1 00 08 */ stw r5, 8(r1) +/* 80233BFC 00230B5C 4B EF DB BD */ bl DeliverCmd__16CBodyStateCmdMgrFRC13CBodyStateCmd +/* 80233C00 00230B60 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80233C04 00230B64 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 80233C08 00230B68 90 01 00 08 */ stw r0, 8(r1) +lbl_80233C0C: +/* 80233C0C 00230B6C E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 80233C10 00230B70 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80233C14 00230B74 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 80233C18 00230B78 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80233C1C 00230B7C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80233C20 00230B80 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80233C24 00230B84 7C 08 03 A6 */ mtlr r0 +/* 80233C28 00230B88 38 21 00 30 */ addi r1, r1, 0x30 +/* 80233C2C 00230B8C 4E 80 00 20 */ blr + +.global KnockBack__C20CKnockBackControllerFRC9CVector3fR13CStateManagerR10CPatternedRC11CDamageInfo14EKnockBackTypef +KnockBack__C20CKnockBackControllerFRC9CVector3fR13CStateManagerR10CPatternedRC11CDamageInfo14EKnockBackTypef: +/* 80233C30 00230B90 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80233C34 00230B94 7C 08 02 A6 */ mflr r0 +/* 80233C38 00230B98 90 01 00 54 */ stw r0, 0x54(r1) +/* 80233C3C 00230B9C DB E1 00 40 */ stfd f31, 0x40(r1) +/* 80233C40 00230BA0 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 80233C44 00230BA4 BF 61 00 2C */ stmw r27, 0x2c(r1) +/* 80233C48 00230BA8 88 03 00 82 */ lbz r0, 0x82(r3) +/* 80233C4C 00230BAC FF E0 08 90 */ fmr f31, f1 +/* 80233C50 00230BB0 7C 7B 1B 78 */ mr r27, r3 +/* 80233C54 00230BB4 7C BC 2B 78 */ mr r28, r5 +/* 80233C58 00230BB8 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80233C5C 00230BBC 7C DD 33 78 */ mr r29, r6 +/* 80233C60 00230BC0 7C FE 3B 78 */ mr r30, r7 +/* 80233C64 00230BC4 7D 1F 43 78 */ mr r31, r8 +/* 80233C68 00230BC8 40 82 00 A4 */ bne lbl_80233D0C +/* 80233C6C 00230BCC C0 24 00 00 */ lfs f1, 0(r4) +/* 80233C70 00230BD0 38 61 00 08 */ addi r3, r1, 8 +/* 80233C74 00230BD4 C0 44 00 04 */ lfs f2, 4(r4) +/* 80233C78 00230BD8 48 0E 05 89 */ bl __ct__9CVector2fFff +/* 80233C7C 00230BDC C0 41 00 08 */ lfs f2, 8(r1) +/* 80233C80 00230BE0 38 61 00 10 */ addi r3, r1, 0x10 +/* 80233C84 00230BE4 C0 21 00 0C */ lfs f1, 0xc(r1) +/* 80233C88 00230BE8 C0 02 B7 00 */ lfs f0, lbl_805AD420@sda21(r2) +/* 80233C8C 00230BEC D0 41 00 10 */ stfs f2, 0x10(r1) +/* 80233C90 00230BF0 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 80233C94 00230BF4 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 80233C98 00230BF8 48 0E 0A F5 */ bl IsMagnitudeSafe__9CVector3fCFv +/* 80233C9C 00230BFC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80233CA0 00230C00 40 82 00 28 */ bne lbl_80233CC8 +/* 80233CA4 00230C04 C0 5D 00 58 */ lfs f2, 0x58(r29) +/* 80233CA8 00230C08 C0 3D 00 48 */ lfs f1, 0x48(r29) +/* 80233CAC 00230C0C C0 1D 00 38 */ lfs f0, 0x38(r29) +/* 80233CB0 00230C10 FC 40 10 50 */ fneg f2, f2 +/* 80233CB4 00230C14 FC 20 08 50 */ fneg f1, f1 +/* 80233CB8 00230C18 FC 00 00 50 */ fneg f0, f0 +/* 80233CBC 00230C1C D0 41 00 18 */ stfs f2, 0x18(r1) +/* 80233CC0 00230C20 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 80233CC4 00230C24 D0 21 00 14 */ stfs f1, 0x14(r1) +lbl_80233CC8: +/* 80233CC8 00230C28 80 DE 00 00 */ lwz r6, 0(r30) +/* 80233CCC 00230C2C 7F 63 DB 78 */ mr r3, r27 +/* 80233CD0 00230C30 7F A4 EB 78 */ mr r4, r29 +/* 80233CD4 00230C34 7F C5 F3 78 */ mr r5, r30 +/* 80233CD8 00230C38 7F E7 FB 78 */ mr r7, r31 +/* 80233CDC 00230C3C 4B FF FD A5 */ bl SelectDamageState__20CKnockBackControllerFR10CPatternedRC11CDamageInfo11EWeaponType14EKnockBackType +/* 80233CE0 00230C40 FC 20 F8 90 */ fmr f1, f31 +/* 80233CE4 00230C44 7F 63 DB 78 */ mr r3, r27 +/* 80233CE8 00230C48 7F 85 E3 78 */ mr r5, r28 +/* 80233CEC 00230C4C 7F A6 EB 78 */ mr r6, r29 +/* 80233CF0 00230C50 38 81 00 10 */ addi r4, r1, 0x10 +/* 80233CF4 00230C54 4B FF EF B1 */ bl DoKnockBackAnimation__20CKnockBackControllerFRC9CVector3fR13CStateManagerR10CPatternedf +/* 80233CF8 00230C58 C0 22 B7 0C */ lfs f1, lbl_805AD42C@sda21(r2) +/* 80233CFC 00230C5C 7F 63 DB 78 */ mr r3, r27 +/* 80233D00 00230C60 7F A4 EB 78 */ mr r4, r29 +/* 80233D04 00230C64 38 A1 00 10 */ addi r5, r1, 0x10 +/* 80233D08 00230C68 4B FF F7 F9 */ bl ResetKnockBackImpulse__20CKnockBackControllerFR10CPatternedRC9CVector3ff +lbl_80233D0C: +/* 80233D0C 00230C6C E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 80233D10 00230C70 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 80233D14 00230C74 BB 61 00 2C */ lmw r27, 0x2c(r1) +/* 80233D18 00230C78 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80233D1C 00230C7C 7C 08 03 A6 */ mtlr r0 +/* 80233D20 00230C80 38 21 00 50 */ addi r1, r1, 0x50 +/* 80233D24 00230C84 4E 80 00 20 */ blr + +.global SetKnockBackVariant__20CKnockBackControllerF17EKnockBackVariant +SetKnockBackVariant__20CKnockBackControllerF17EKnockBackVariant: +/* 80233D28 00230C88 90 83 00 00 */ stw r4, 0(r3) +/* 80233D2C 00230C8C 4E 80 00 20 */ blr + +.global DeferKnockBack__20CKnockBackControllerF11EWeaponType +DeferKnockBack__20CKnockBackControllerF11EWeaponType: +/* 80233D30 00230C90 90 83 00 14 */ stw r4, 0x14(r3) +/* 80233D34 00230C94 C0 02 B7 18 */ lfs f0, lbl_805AD438@sda21(r2) +/* 80233D38 00230C98 D0 03 00 68 */ stfs f0, 0x68(r3) +/* 80233D3C 00230C9C 4E 80 00 20 */ blr + +.global sub_80233d40 +sub_80233d40: +/* 80233D40 00230CA0 2C 04 00 00 */ cmpwi r4, 0 +/* 80233D44 00230CA4 4D 80 00 20 */ bltlr +/* 80233D48 00230CA8 2C 04 00 04 */ cmpwi r4, 4 +/* 80233D4C 00230CAC 4D 81 00 20 */ bgtlr +/* 80233D50 00230CB0 54 80 18 38 */ slwi r0, r4, 3 +/* 80233D54 00230CB4 7C 63 02 14 */ add r3, r3, r0 +/* 80233D58 00230CB8 D0 23 00 28 */ stfs f1, 0x28(r3) +/* 80233D5C 00230CBC D0 43 00 2C */ stfs f2, 0x2c(r3) +/* 80233D60 00230CC0 4E 80 00 20 */ blr + +.global SetAutoResetImpulse__20CKnockBackControllerFb +SetAutoResetImpulse__20CKnockBackControllerFb: +/* 80233D64 00230CC4 88 03 00 81 */ lbz r0, 0x81(r3) +/* 80233D68 00230CC8 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 80233D6C 00230CCC 98 03 00 81 */ stb r0, 0x81(r3) +/* 80233D70 00230CD0 88 03 00 81 */ lbz r0, 0x81(r3) +/* 80233D74 00230CD4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80233D78 00230CD8 4C 82 00 20 */ bnelr +/* 80233D7C 00230CDC C0 02 B7 00 */ lfs f0, lbl_805AD420@sda21(r2) +/* 80233D80 00230CE0 D0 03 00 5C */ stfs f0, 0x5c(r3) +/* 80233D84 00230CE4 D0 03 00 60 */ stfs f0, 0x60(r3) +/* 80233D88 00230CE8 4E 80 00 20 */ blr + +.global SetImpulseDurationIdx__20CKnockBackControllerFi +SetImpulseDurationIdx__20CKnockBackControllerFi: +/* 80233D8C 00230CEC 90 83 00 20 */ stw r4, 0x20(r3) +/* 80233D90 00230CF0 4E 80 00 20 */ blr + +.global SetAnimationStateRange__20CKnockBackControllerF24EKnockBackAnimationState24EKnockBackAnimationState +SetAnimationStateRange__20CKnockBackControllerF24EKnockBackAnimationState24EKnockBackAnimationState: +/* 80233D94 00230CF4 90 83 00 18 */ stw r4, 0x18(r3) +/* 80233D98 00230CF8 90 A3 00 1C */ stw r5, 0x1c(r3) +/* 80233D9C 00230CFC 4E 80 00 20 */ blr + +.global TestAvailableState__20CKnockBackControllerCFi +TestAvailableState__20CKnockBackControllerCFi: +/* 80233DA0 00230D00 38 00 00 01 */ li r0, 1 +/* 80233DA4 00230D04 88 63 00 80 */ lbz r3, 0x80(r3) +/* 80233DA8 00230D08 7C 00 20 30 */ slw r0, r0, r4 +/* 80233DAC 00230D0C 54 00 06 3E */ clrlwi r0, r0, 0x18 +/* 80233DB0 00230D10 7C 63 00 38 */ and r3, r3, r0 +/* 80233DB4 00230D14 7C 03 00 D0 */ neg r0, r3 +/* 80233DB8 00230D18 7C 00 1B 78 */ or r0, r0, r3 +/* 80233DBC 00230D1C 54 03 0F FE */ srwi r3, r0, 0x1f +/* 80233DC0 00230D20 4E 80 00 20 */ blr + +.global SetAvailableState__20CKnockBackControllerFib +SetAvailableState__20CKnockBackControllerFib: +/* 80233DC4 00230D24 54 A0 06 3F */ clrlwi. r0, r5, 0x18 +/* 80233DC8 00230D28 38 A0 00 01 */ li r5, 1 +/* 80233DCC 00230D2C 7C A0 20 30 */ slw r0, r5, r4 +/* 80233DD0 00230D30 54 04 06 3E */ clrlwi r4, r0, 0x18 +/* 80233DD4 00230D34 41 82 00 14 */ beq lbl_80233DE8 +/* 80233DD8 00230D38 88 03 00 80 */ lbz r0, 0x80(r3) +/* 80233DDC 00230D3C 7C 00 23 78 */ or r0, r0, r4 +/* 80233DE0 00230D40 98 03 00 80 */ stb r0, 0x80(r3) +/* 80233DE4 00230D44 4E 80 00 20 */ blr +lbl_80233DE8: +/* 80233DE8 00230D48 88 03 00 80 */ lbz r0, 0x80(r3) +/* 80233DEC 00230D4C 7C 00 20 78 */ andc r0, r0, r4 +/* 80233DF0 00230D50 98 03 00 80 */ stb r0, 0x80(r3) +/* 80233DF4 00230D54 4E 80 00 20 */ blr + +.global __ct__20CKnockBackController2F17EKnockBackVariant +__ct__20CKnockBackController2F17EKnockBackVariant: +/* 80233DF8 00230D58 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80233DFC 00230D5C 7C 08 02 A6 */ mflr r0 +/* 80233E00 00230D60 90 01 00 34 */ stw r0, 0x34(r1) +/* 80233E04 00230D64 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 80233E08 00230D68 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 80233E0C 00230D6C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80233E10 00230D70 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80233E14 00230D74 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80233E18 00230D78 3C A0 80 3D */ lis r5, lbl_803D3490@ha +/* 80233E1C 00230D7C 7C 7D 1B 78 */ mr r29, r3 +/* 80233E20 00230D80 39 25 34 90 */ addi r9, r5, lbl_803D3490@l +/* 80233E24 00230D84 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80233E28 00230D88 90 9D 00 00 */ stw r4, 0(r29) +/* 80233E2C 00230D8C 38 C0 FF FF */ li r6, -1 +/* 80233E30 00230D90 80 89 00 00 */ lwz r4, 0(r9) +/* 80233E34 00230D94 38 A0 00 00 */ li r5, 0 +/* 80233E38 00230D98 80 E9 00 04 */ lwz r7, 4(r9) +/* 80233E3C 00230D9C 38 00 00 04 */ li r0, 4 +/* 80233E40 00230DA0 90 9D 00 04 */ stw r4, 4(r29) +/* 80233E44 00230DA4 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 80233E48 00230DA8 81 09 00 08 */ lwz r8, 8(r9) +/* 80233E4C 00230DAC 38 60 00 01 */ li r3, 1 +/* 80233E50 00230DB0 90 FD 00 08 */ stw r7, 8(r29) +/* 80233E54 00230DB4 3B FD 00 28 */ addi r31, r29, 0x28 +/* 80233E58 00230DB8 80 E9 00 0C */ lwz r7, 0xc(r9) +/* 80233E5C 00230DBC 3B C0 00 00 */ li r30, 0 +/* 80233E60 00230DC0 91 1D 00 0C */ stw r8, 0xc(r29) +/* 80233E64 00230DC4 C0 02 B7 00 */ lfs f0, lbl_805AD420@sda21(r2) +/* 80233E68 00230DC8 90 FD 00 10 */ stw r7, 0x10(r29) +/* 80233E6C 00230DCC C3 E2 B7 1C */ lfs f31, lbl_805AD43C@sda21(r2) +/* 80233E70 00230DD0 90 DD 00 14 */ stw r6, 0x14(r29) +/* 80233E74 00230DD4 90 BD 00 18 */ stw r5, 0x18(r29) +/* 80233E78 00230DD8 90 1D 00 1C */ stw r0, 0x1c(r29) +/* 80233E7C 00230DDC 90 BD 00 20 */ stw r5, 0x20(r29) +/* 80233E80 00230DE0 90 BD 00 24 */ stw r5, 0x24(r29) +/* 80233E84 00230DE4 C0 24 00 00 */ lfs f1, 0(r4) +/* 80233E88 00230DE8 D0 3D 00 50 */ stfs f1, 0x50(r29) +/* 80233E8C 00230DEC C0 24 00 04 */ lfs f1, 4(r4) +/* 80233E90 00230DF0 D0 3D 00 54 */ stfs f1, 0x54(r29) +/* 80233E94 00230DF4 C0 24 00 08 */ lfs f1, 8(r4) +/* 80233E98 00230DF8 D0 3D 00 58 */ stfs f1, 0x58(r29) +/* 80233E9C 00230DFC D0 1D 00 5C */ stfs f0, 0x5c(r29) +/* 80233EA0 00230E00 D0 1D 00 60 */ stfs f0, 0x60(r29) +/* 80233EA4 00230E04 D0 1D 00 64 */ stfs f0, 0x64(r29) +/* 80233EA8 00230E08 D0 1D 00 68 */ stfs f0, 0x68(r29) +/* 80233EAC 00230E0C 90 BD 00 6C */ stw r5, 0x6c(r29) +/* 80233EB0 00230E10 90 BD 00 70 */ stw r5, 0x70(r29) +/* 80233EB4 00230E14 90 BD 00 74 */ stw r5, 0x74(r29) +/* 80233EB8 00230E18 90 7D 00 7C */ stw r3, 0x7c(r29) +/* 80233EBC 00230E1C 98 BD 00 80 */ stb r5, 0x80(r29) +/* 80233EC0 00230E20 88 1D 00 81 */ lbz r0, 0x81(r29) +/* 80233EC4 00230E24 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80233EC8 00230E28 98 1D 00 81 */ stb r0, 0x81(r29) +/* 80233ECC 00230E2C 88 1D 00 81 */ lbz r0, 0x81(r29) +/* 80233ED0 00230E30 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 80233ED4 00230E34 98 1D 00 81 */ stb r0, 0x81(r29) +/* 80233ED8 00230E38 88 1D 00 81 */ lbz r0, 0x81(r29) +/* 80233EDC 00230E3C 50 A0 2E B4 */ rlwimi r0, r5, 5, 0x1a, 0x1a +/* 80233EE0 00230E40 98 1D 00 81 */ stb r0, 0x81(r29) +/* 80233EE4 00230E44 88 1D 00 81 */ lbz r0, 0x81(r29) +/* 80233EE8 00230E48 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 80233EEC 00230E4C 98 1D 00 81 */ stb r0, 0x81(r29) +/* 80233EF0 00230E50 88 1D 00 81 */ lbz r0, 0x81(r29) +/* 80233EF4 00230E54 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 80233EF8 00230E58 98 1D 00 81 */ stb r0, 0x81(r29) +/* 80233EFC 00230E5C 88 1D 00 81 */ lbz r0, 0x81(r29) +/* 80233F00 00230E60 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 80233F04 00230E64 98 1D 00 81 */ stb r0, 0x81(r29) +/* 80233F08 00230E68 88 1D 00 81 */ lbz r0, 0x81(r29) +/* 80233F0C 00230E6C 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 80233F10 00230E70 98 1D 00 81 */ stb r0, 0x81(r29) +/* 80233F14 00230E74 88 1D 00 81 */ lbz r0, 0x81(r29) +/* 80233F18 00230E78 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f +/* 80233F1C 00230E7C 98 1D 00 81 */ stb r0, 0x81(r29) +/* 80233F20 00230E80 88 1D 00 82 */ lbz r0, 0x82(r29) +/* 80233F24 00230E84 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80233F28 00230E88 98 1D 00 82 */ stb r0, 0x82(r29) +/* 80233F2C 00230E8C 88 1D 00 82 */ lbz r0, 0x82(r29) +/* 80233F30 00230E90 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 80233F34 00230E94 98 1D 00 82 */ stb r0, 0x82(r29) +/* 80233F38 00230E98 88 1D 00 82 */ lbz r0, 0x82(r29) +/* 80233F3C 00230E9C 50 A0 2E B4 */ rlwimi r0, r5, 5, 0x1a, 0x1a +/* 80233F40 00230EA0 98 1D 00 82 */ stb r0, 0x82(r29) +lbl_80233F44: +/* 80233F44 00230EA4 80 1D 00 24 */ lwz r0, 0x24(r29) +/* 80233F48 00230EA8 C0 0D 96 38 */ lfs f0, lbl_805A81F8@sda21(r13) +/* 80233F4C 00230EAC 54 00 18 38 */ slwi r0, r0, 3 +/* 80233F50 00230EB0 7C 7F 02 15 */ add. r3, r31, r0 +/* 80233F54 00230EB4 41 82 00 0C */ beq lbl_80233F60 +/* 80233F58 00230EB8 D0 03 00 00 */ stfs f0, 0(r3) +/* 80233F5C 00230EBC D3 E3 00 04 */ stfs f31, 4(r3) +lbl_80233F60: +/* 80233F60 00230EC0 80 DD 00 24 */ lwz r6, 0x24(r29) +/* 80233F64 00230EC4 7F A3 EB 78 */ mr r3, r29 +/* 80233F68 00230EC8 7F C4 F3 78 */ mr r4, r30 +/* 80233F6C 00230ECC 38 A0 00 01 */ li r5, 1 +/* 80233F70 00230ED0 38 06 00 01 */ addi r0, r6, 1 +/* 80233F74 00230ED4 90 1D 00 24 */ stw r0, 0x24(r29) +/* 80233F78 00230ED8 4B FF FE 4D */ bl SetAvailableState__20CKnockBackControllerFib +/* 80233F7C 00230EDC 3B DE 00 01 */ addi r30, r30, 1 +/* 80233F80 00230EE0 2C 1E 00 04 */ cmpwi r30, 4 +/* 80233F84 00230EE4 40 81 FF C0 */ ble lbl_80233F44 +/* 80233F88 00230EE8 7F A3 EB 78 */ mr r3, r29 +/* 80233F8C 00230EEC E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 80233F90 00230EF0 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80233F94 00230EF4 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 80233F98 00230EF8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80233F9C 00230EFC 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80233FA0 00230F00 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80233FA4 00230F04 7C 08 03 A6 */ mtlr r0 +/* 80233FA8 00230F08 38 21 00 30 */ addi r1, r1, 0x30 +/* 80233FAC 00230F0C 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Enemies/CMagdolite.s b/asm/Kyoto_CWD/Enemies/CMagdolite.s new file mode 100644 index 00000000..fc2b184a --- /dev/null +++ b/asm/Kyoto_CWD/Enemies/CMagdolite.s @@ -0,0 +1,3659 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__10CMagdoliteFv +__dt__10CMagdoliteFv: +/* 80234674 002315D4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80234678 002315D8 7C 08 02 A6 */ mflr r0 +/* 8023467C 002315DC 90 01 00 14 */ stw r0, 0x14(r1) +/* 80234680 002315E0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80234684 002315E4 7C 9F 23 78 */ mr r31, r4 +/* 80234688 002315E8 93 C1 00 08 */ stw r30, 8(r1) +/* 8023468C 002315EC 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80234690 002315F0 41 82 00 FC */ beq lbl_8023478C +/* 80234694 002315F4 3C 60 80 3F */ lis r3, lbl_803E8240@ha +/* 80234698 002315F8 34 1E 06 CC */ addic. r0, r30, 0x6cc +/* 8023469C 002315FC 38 03 82 40 */ addi r0, r3, lbl_803E8240@l +/* 802346A0 00231600 90 1E 00 00 */ stw r0, 0(r30) +/* 802346A4 00231604 41 82 00 10 */ beq lbl_802346B4 +/* 802346A8 00231608 38 7E 06 CC */ addi r3, r30, 0x6cc +/* 802346AC 0023160C 38 80 00 00 */ li r4, 0 +/* 802346B0 00231610 48 10 C7 91 */ bl __dt__6CTokenFv +lbl_802346B4: +/* 802346B4 00231614 34 1E 06 9C */ addic. r0, r30, 0x69c +/* 802346B8 00231618 41 82 00 58 */ beq lbl_80234710 +/* 802346BC 0023161C 80 BE 06 9C */ lwz r5, 0x69c(r30) +/* 802346C0 00231620 38 60 00 00 */ li r3, 0 +/* 802346C4 00231624 2C 05 00 00 */ cmpwi r5, 0 +/* 802346C8 00231628 40 81 00 40 */ ble lbl_80234708 +/* 802346CC 0023162C 2C 05 00 08 */ cmpwi r5, 8 +/* 802346D0 00231630 38 85 FF F8 */ addi r4, r5, -8 +/* 802346D4 00231634 40 81 00 20 */ ble lbl_802346F4 +/* 802346D8 00231638 38 04 00 07 */ addi r0, r4, 7 +/* 802346DC 0023163C 54 00 E8 FE */ srwi r0, r0, 3 +/* 802346E0 00231640 7C 09 03 A6 */ mtctr r0 +/* 802346E4 00231644 2C 04 00 00 */ cmpwi r4, 0 +/* 802346E8 00231648 40 81 00 0C */ ble lbl_802346F4 +lbl_802346EC: +/* 802346EC 0023164C 38 63 00 08 */ addi r3, r3, 8 +/* 802346F0 00231650 42 00 FF FC */ bdnz lbl_802346EC +lbl_802346F4: +/* 802346F4 00231654 7C 03 28 50 */ subf r0, r3, r5 +/* 802346F8 00231658 7C 09 03 A6 */ mtctr r0 +/* 802346FC 0023165C 7C 03 28 00 */ cmpw r3, r5 +/* 80234700 00231660 40 80 00 08 */ bge lbl_80234708 +lbl_80234704: +/* 80234704 00231664 42 00 00 00 */ bdnz lbl_80234704 +lbl_80234708: +/* 80234708 00231668 38 00 00 00 */ li r0, 0 +/* 8023470C 0023166C 90 1E 06 9C */ stw r0, 0x69c(r30) +lbl_80234710: +/* 80234710 00231670 34 1E 06 90 */ addic. r0, r30, 0x690 +/* 80234714 00231674 41 82 00 18 */ beq lbl_8023472C +/* 80234718 00231678 34 1E 06 90 */ addic. r0, r30, 0x690 +/* 8023471C 0023167C 41 82 00 10 */ beq lbl_8023472C +/* 80234720 00231680 38 7E 06 90 */ addi r3, r30, 0x690 +/* 80234724 00231684 38 80 00 00 */ li r4, 0 +/* 80234728 00231688 48 10 C7 19 */ bl __dt__6CTokenFv +lbl_8023472C: +/* 8023472C 0023168C 34 1E 06 8C */ addic. r0, r30, 0x68c +/* 80234730 00231690 41 82 00 14 */ beq lbl_80234744 +/* 80234734 00231694 34 1E 06 8C */ addic. r0, r30, 0x68c +/* 80234738 00231698 41 82 00 0C */ beq lbl_80234744 +/* 8023473C 0023169C 38 7E 06 8C */ addi r3, r30, 0x68c +/* 80234740 002316A0 4B F9 EC 21 */ bl sub_801d3360 +lbl_80234744: +/* 80234744 002316A4 34 1E 05 84 */ addic. r0, r30, 0x584 +/* 80234748 002316A8 41 82 00 14 */ beq lbl_8023475C +/* 8023474C 002316AC 34 1E 05 A8 */ addic. r0, r30, 0x5a8 +/* 80234750 002316B0 41 82 00 0C */ beq lbl_8023475C +/* 80234754 002316B4 38 00 00 00 */ li r0, 0 +/* 80234758 002316B8 98 1E 05 B4 */ stb r0, 0x5b4(r30) +lbl_8023475C: +/* 8023475C 002316BC 34 1E 05 80 */ addic. r0, r30, 0x580 +/* 80234760 002316C0 41 82 00 10 */ beq lbl_80234770 +/* 80234764 002316C4 80 7E 05 80 */ lwz r3, 0x580(r30) +/* 80234768 002316C8 38 80 00 01 */ li r4, 1 +/* 8023476C 002316CC 4B F7 31 71 */ bl sub_801a78dc +lbl_80234770: +/* 80234770 002316D0 7F C3 F3 78 */ mr r3, r30 +/* 80234774 002316D4 38 80 00 00 */ li r4, 0 +/* 80234778 002316D8 4B E4 2D F9 */ bl __dt__10CPatternedFv +/* 8023477C 002316DC 7F E0 07 35 */ extsh. r0, r31 +/* 80234780 002316E0 40 81 00 0C */ ble lbl_8023478C +/* 80234784 002316E4 7F C3 F3 78 */ mr r3, r30 +/* 80234788 002316E8 48 0E 11 A9 */ bl Free__7CMemoryFPCv +lbl_8023478C: +/* 8023478C 002316EC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80234790 002316F0 7F C3 F3 78 */ mr r3, r30 +/* 80234794 002316F4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80234798 002316F8 83 C1 00 08 */ lwz r30, 8(r1) +/* 8023479C 002316FC 7C 08 03 A6 */ mtlr r0 +/* 802347A0 00231700 38 21 00 10 */ addi r1, r1, 0x10 +/* 802347A4 00231704 4E 80 00 20 */ blr + +.global sub_802347a8 +sub_802347a8: +/* 802347A8 00231708 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 802347AC 0023170C 7C 08 02 A6 */ mflr r0 +/* 802347B0 00231710 90 01 00 94 */ stw r0, 0x94(r1) +/* 802347B4 00231714 93 E1 00 8C */ stw r31, 0x8c(r1) +/* 802347B8 00231718 7C BF 2B 78 */ mr r31, r5 +/* 802347BC 0023171C 93 C1 00 88 */ stw r30, 0x88(r1) +/* 802347C0 00231720 7C 7E 1B 78 */ mr r30, r3 +/* 802347C4 00231724 7F E3 FB 78 */ mr r3, r31 +/* 802347C8 00231728 93 A1 00 84 */ stw r29, 0x84(r1) +/* 802347CC 0023172C A0 04 00 00 */ lhz r0, 0(r4) +/* 802347D0 00231730 38 81 00 24 */ addi r4, r1, 0x24 +/* 802347D4 00231734 B0 01 00 24 */ sth r0, 0x24(r1) +/* 802347D8 00231738 4B E1 7D CD */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 802347DC 0023173C 7C 64 1B 78 */ mr r4, r3 +/* 802347E0 00231740 38 61 00 28 */ addi r3, r1, 0x28 +/* 802347E4 00231744 4B E7 AB 69 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 802347E8 00231748 83 A3 00 04 */ lwz r29, 4(r3) +/* 802347EC 0023174C 28 1D 00 00 */ cmplwi r29, 0 +/* 802347F0 00231750 41 82 01 80 */ beq lbl_80234970 +/* 802347F4 00231754 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 802347F8 00231758 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 802347FC 0023175C 41 82 01 74 */ beq lbl_80234970 +/* 80234800 00231760 7F C4 F3 78 */ mr r4, r30 +/* 80234804 00231764 38 61 00 48 */ addi r3, r1, 0x48 +/* 80234808 00231768 81 9E 00 00 */ lwz r12, 0(r30) +/* 8023480C 0023176C 81 8C 02 B0 */ lwz r12, 0x2b0(r12) +/* 80234810 00231770 7D 89 03 A6 */ mtctr r12 +/* 80234814 00231774 4E 80 04 21 */ bctrl +/* 80234818 00231778 80 81 00 48 */ lwz r4, 0x48(r1) +/* 8023481C 0023177C 38 BE 06 A0 */ addi r5, r30, 0x6a0 +/* 80234820 00231780 88 61 00 4C */ lbz r3, 0x4c(r1) +/* 80234824 00231784 C0 61 00 50 */ lfs f3, 0x50(r1) +/* 80234828 00231788 C0 41 00 54 */ lfs f2, 0x54(r1) +/* 8023482C 0023178C C0 21 00 58 */ lfs f1, 0x58(r1) +/* 80234830 00231790 C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 80234834 00231794 88 01 00 60 */ lbz r0, 0x60(r1) +/* 80234838 00231798 90 81 00 64 */ stw r4, 0x64(r1) +/* 8023483C 0023179C 98 61 00 68 */ stb r3, 0x68(r1) +/* 80234840 002317A0 D0 61 00 6C */ stfs f3, 0x6c(r1) +/* 80234844 002317A4 D0 41 00 70 */ stfs f2, 0x70(r1) +/* 80234848 002317A8 D0 21 00 74 */ stfs f1, 0x74(r1) +/* 8023484C 002317AC D0 01 00 78 */ stfs f0, 0x78(r1) +/* 80234850 002317B0 98 01 00 7C */ stb r0, 0x7c(r1) +/* 80234854 002317B4 80 1E 06 9C */ lwz r0, 0x69c(r30) +/* 80234858 002317B8 54 00 08 3C */ slwi r0, r0, 1 +/* 8023485C 002317BC 7C 85 02 14 */ add r4, r5, r0 +/* 80234860 002317C0 48 00 00 54 */ b lbl_802348B4 +lbl_80234864: +/* 80234864 002317C4 A0 7D 00 08 */ lhz r3, 8(r29) +/* 80234868 002317C8 A0 05 00 00 */ lhz r0, 0(r5) +/* 8023486C 002317CC 7C 03 00 40 */ cmplw r3, r0 +/* 80234870 002317D0 40 82 00 40 */ bne lbl_802348B0 +/* 80234874 002317D4 80 7E 06 F0 */ lwz r3, 0x6f0(r30) +/* 80234878 002317D8 80 1E 06 F4 */ lwz r0, 0x6f4(r30) +/* 8023487C 002317DC 90 61 00 64 */ stw r3, 0x64(r1) +/* 80234880 002317E0 90 01 00 68 */ stw r0, 0x68(r1) +/* 80234884 002317E4 C0 1E 06 F8 */ lfs f0, 0x6f8(r30) +/* 80234888 002317E8 D0 01 00 6C */ stfs f0, 0x6c(r1) +/* 8023488C 002317EC C0 1E 06 FC */ lfs f0, 0x6fc(r30) +/* 80234890 002317F0 D0 01 00 70 */ stfs f0, 0x70(r1) +/* 80234894 002317F4 C0 1E 07 00 */ lfs f0, 0x700(r30) +/* 80234898 002317F8 D0 01 00 74 */ stfs f0, 0x74(r1) +/* 8023489C 002317FC C0 1E 07 04 */ lfs f0, 0x704(r30) +/* 802348A0 00231800 D0 01 00 78 */ stfs f0, 0x78(r1) +/* 802348A4 00231804 88 1E 07 08 */ lbz r0, 0x708(r30) +/* 802348A8 00231808 98 01 00 7C */ stb r0, 0x7c(r1) +/* 802348AC 0023180C 48 00 00 10 */ b lbl_802348BC +lbl_802348B0: +/* 802348B0 00231810 38 A5 00 02 */ addi r5, r5, 2 +lbl_802348B4: +/* 802348B4 00231814 7C 05 20 40 */ cmplw r5, r4 +/* 802348B8 00231818 40 82 FF AC */ bne lbl_80234864 +lbl_802348BC: +/* 802348BC 0023181C 7F A4 EB 78 */ mr r4, r29 +/* 802348C0 00231820 38 61 00 20 */ addi r3, r1, 0x20 +/* 802348C4 00231824 4B F7 42 C9 */ bl GetLastTouchedObject__15CCollisionActorCFv +/* 802348C8 00231828 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 802348CC 0023182C A0 81 00 20 */ lhz r4, 0x20(r1) +/* 802348D0 00231830 A0 03 00 08 */ lhz r0, 8(r3) +/* 802348D4 00231834 7C 04 00 40 */ cmplw r4, r0 +/* 802348D8 00231838 40 82 00 98 */ bne lbl_80234970 +/* 802348DC 0023183C C0 22 B7 20 */ lfs f1, lbl_805AD440@sda21(r2) +/* 802348E0 00231840 C0 1E 04 20 */ lfs f0, 0x420(r30) +/* 802348E4 00231844 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802348E8 00231848 4C 41 13 82 */ cror 2, 1, 2 +/* 802348EC 0023184C 40 82 00 84 */ bne lbl_80234970 +/* 802348F0 00231850 80 AD 96 48 */ lwz r5, lbl_805A8208@sda21(r13) +/* 802348F4 00231854 38 60 00 00 */ li r3, 0 +/* 802348F8 00231858 38 80 00 01 */ li r4, 1 +/* 802348FC 0023185C 48 15 55 F9 */ bl __shl2i +/* 80234900 00231860 39 40 00 00 */ li r10, 0 +/* 80234904 00231864 38 00 00 03 */ li r0, 3 +/* 80234908 00231868 90 81 00 34 */ stw r4, 0x34(r1) +/* 8023490C 0023186C 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80234910 00231870 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 80234914 00231874 38 A1 00 14 */ addi r5, r1, 0x14 +/* 80234918 00231878 90 61 00 30 */ stw r3, 0x30(r1) +/* 8023491C 0023187C 38 81 00 1C */ addi r4, r1, 0x1c +/* 80234920 00231880 7F E3 FB 78 */ mr r3, r31 +/* 80234924 00231884 38 C1 00 0C */ addi r6, r1, 0xc +/* 80234928 00231888 91 41 00 3C */ stw r10, 0x3c(r1) +/* 8023492C 0023188C 38 E1 00 64 */ addi r7, r1, 0x64 +/* 80234930 00231890 39 01 00 30 */ addi r8, r1, 0x30 +/* 80234934 00231894 91 41 00 38 */ stw r10, 0x38(r1) +/* 80234938 00231898 90 01 00 40 */ stw r0, 0x40(r1) +/* 8023493C 0023189C A0 1E 00 08 */ lhz r0, 8(r30) +/* 80234940 002318A0 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80234944 002318A4 81 5F 08 4C */ lwz r10, 0x84c(r31) +/* 80234948 002318A8 B0 01 00 08 */ sth r0, 8(r1) +/* 8023494C 002318AC A1 4A 00 08 */ lhz r10, 8(r10) +/* 80234950 002318B0 B1 41 00 14 */ sth r10, 0x14(r1) +/* 80234954 002318B4 A0 1E 00 08 */ lhz r0, 8(r30) +/* 80234958 002318B8 B1 41 00 10 */ sth r10, 0x10(r1) +/* 8023495C 002318BC B0 01 00 18 */ sth r0, 0x18(r1) +/* 80234960 002318C0 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 80234964 002318C4 4B E1 57 3D */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +/* 80234968 002318C8 C0 1E 04 24 */ lfs f0, 0x424(r30) +/* 8023496C 002318CC D0 1E 04 20 */ stfs f0, 0x420(r30) +lbl_80234970: +/* 80234970 002318D0 80 01 00 94 */ lwz r0, 0x94(r1) +/* 80234974 002318D4 83 E1 00 8C */ lwz r31, 0x8c(r1) +/* 80234978 002318D8 83 C1 00 88 */ lwz r30, 0x88(r1) +/* 8023497C 002318DC 83 A1 00 84 */ lwz r29, 0x84(r1) +/* 80234980 002318E0 7C 08 03 A6 */ mtlr r0 +/* 80234984 002318E4 38 21 00 90 */ addi r1, r1, 0x90 +/* 80234988 002318E8 4E 80 00 20 */ blr + +.global FluidFXThink__10CMagdoliteFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager +FluidFXThink__10CMagdoliteFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager: +/* 8023498C 002318EC 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80234990 002318F0 7C 08 02 A6 */ mflr r0 +/* 80234994 002318F4 90 01 00 64 */ stw r0, 0x64(r1) +/* 80234998 002318F8 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 8023499C 002318FC 7C DF 33 78 */ mr r31, r6 +/* 802349A0 00231900 93 C1 00 58 */ stw r30, 0x58(r1) +/* 802349A4 00231904 7C BE 2B 78 */ mr r30, r5 +/* 802349A8 00231908 93 A1 00 54 */ stw r29, 0x54(r1) +/* 802349AC 0023190C 7C 7D 1B 78 */ mr r29, r3 +/* 802349B0 00231910 88 03 07 54 */ lbz r0, 0x754(r3) +/* 802349B4 00231914 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 802349B8 00231918 41 82 00 9C */ beq lbl_80234A54 +/* 802349BC 0023191C 2C 04 00 01 */ cmpwi r4, 1 +/* 802349C0 00231920 40 82 00 94 */ bne lbl_80234A54 +/* 802349C4 00231924 A0 1D 00 08 */ lhz r0, 8(r29) +/* 802349C8 00231928 38 81 00 14 */ addi r4, r1, 0x14 +/* 802349CC 0023192C B0 01 00 14 */ sth r0, 0x14(r1) +/* 802349D0 00231930 B0 01 00 10 */ sth r0, 0x10(r1) +/* 802349D4 00231934 80 7F 08 7C */ lwz r3, 0x87c(r31) +/* 802349D8 00231938 4B EF AB A9 */ bl GetLastRippleDeltaTime__18CFluidPlaneManagerCF9TUniqueId +/* 802349DC 0023193C C0 02 B7 24 */ lfs f0, lbl_805AD444@sda21(r2) +/* 802349E0 00231940 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802349E4 00231944 4C 41 13 82 */ cror 2, 1, 2 +/* 802349E8 00231948 40 82 00 6C */ bne lbl_80234A54 +/* 802349EC 0023194C 7F C4 F3 78 */ mr r4, r30 +/* 802349F0 00231950 38 61 00 30 */ addi r3, r1, 0x30 +/* 802349F4 00231954 4B E4 1C D9 */ bl GetTriggerBoundsWR__14CScriptTriggerCFv +/* 802349F8 00231958 C0 5D 00 60 */ lfs f2, 0x60(r29) +/* 802349FC 0023195C 7F C6 F3 78 */ mr r6, r30 +/* 80234A00 00231960 C0 1D 00 50 */ lfs f0, 0x50(r29) +/* 80234A04 00231964 7F E7 FB 78 */ mr r7, r31 +/* 80234A08 00231968 C0 9D 00 40 */ lfs f4, 0x40(r29) +/* 80234A0C 0023196C 38 81 00 0C */ addi r4, r1, 0xc +/* 80234A10 00231970 C0 61 00 44 */ lfs f3, 0x44(r1) +/* 80234A14 00231974 38 A1 00 24 */ addi r5, r1, 0x24 +/* 80234A18 00231978 D0 81 00 24 */ stfs f4, 0x24(r1) +/* 80234A1C 0023197C C0 22 B7 28 */ lfs f1, lbl_805AD448@sda21(r2) +/* 80234A20 00231980 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 80234A24 00231984 D0 61 00 2C */ stfs f3, 0x2c(r1) +/* 80234A28 00231988 A0 1D 00 08 */ lhz r0, 8(r29) +/* 80234A2C 0023198C D0 81 00 18 */ stfs f4, 0x18(r1) +/* 80234A30 00231990 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80234A34 00231994 80 7E 01 B4 */ lwz r3, 0x1b4(r30) +/* 80234A38 00231998 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 80234A3C 0023199C 81 83 00 00 */ lwz r12, 0(r3) +/* 80234A40 002319A0 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 80234A44 002319A4 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80234A48 002319A8 B0 01 00 08 */ sth r0, 8(r1) +/* 80234A4C 002319AC 7D 89 03 A6 */ mtctr r12 +/* 80234A50 002319B0 4E 80 04 21 */ bctrl +lbl_80234A54: +/* 80234A54 002319B4 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80234A58 002319B8 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 80234A5C 002319BC 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 80234A60 002319C0 83 A1 00 54 */ lwz r29, 0x54(r1) +/* 80234A64 002319C4 7C 08 03 A6 */ mtlr r0 +/* 80234A68 002319C8 38 21 00 60 */ addi r1, r1, 0x60 +/* 80234A6C 002319CC 4E 80 00 20 */ blr + +.global sub_80234a70 +sub_80234a70: +/* 80234A70 002319D0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80234A74 002319D4 7C 08 02 A6 */ mflr r0 +/* 80234A78 002319D8 90 01 00 24 */ stw r0, 0x24(r1) +/* 80234A7C 002319DC 54 A0 06 3F */ clrlwi. r0, r5, 0x18 +/* 80234A80 002319E0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80234A84 002319E4 7C BF 2B 78 */ mr r31, r5 +/* 80234A88 002319E8 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80234A8C 002319EC 7C 9E 23 78 */ mr r30, r4 +/* 80234A90 002319F0 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80234A94 002319F4 7C 7D 1B 78 */ mr r29, r3 +/* 80234A98 002319F8 41 82 00 10 */ beq lbl_80234AA8 +/* 80234A9C 002319FC 88 1D 07 54 */ lbz r0, 0x754(r29) +/* 80234AA0 00231A00 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 80234AA4 00231A04 41 82 00 60 */ beq lbl_80234B04 +lbl_80234AA8: +/* 80234AA8 00231A08 88 1D 04 00 */ lbz r0, 0x400(r29) +/* 80234AAC 00231A0C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80234AB0 00231A10 41 82 00 54 */ beq lbl_80234B04 +/* 80234AB4 00231A14 A0 1D 06 C8 */ lhz r0, 0x6c8(r29) +/* 80234AB8 00231A18 7F C3 F3 78 */ mr r3, r30 +/* 80234ABC 00231A1C 38 81 00 08 */ addi r4, r1, 8 +/* 80234AC0 00231A20 B0 01 00 08 */ sth r0, 8(r1) +/* 80234AC4 00231A24 4B E1 7A B1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80234AC8 00231A28 28 03 00 00 */ cmplwi r3, 0 +/* 80234ACC 00231A2C 41 82 00 2C */ beq lbl_80234AF8 +/* 80234AD0 00231A30 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 80234AD4 00231A34 41 82 00 18 */ beq lbl_80234AEC +/* 80234AD8 00231A38 7F C5 F3 78 */ mr r5, r30 +/* 80234ADC 00231A3C 38 9D 00 34 */ addi r4, r29, 0x34 +/* 80234AE0 00231A40 38 C0 00 00 */ li r6, 0 +/* 80234AE4 00231A44 4B F6 38 09 */ bl Fire__13CFlameThrowerFRC12CTransform4fR13CStateManagerb +/* 80234AE8 00231A48 48 00 00 10 */ b lbl_80234AF8 +lbl_80234AEC: +/* 80234AEC 00231A4C 7F C4 F3 78 */ mr r4, r30 +/* 80234AF0 00231A50 38 A0 00 00 */ li r5, 0 +/* 80234AF4 00231A54 4B F6 36 CD */ bl Reset__13CFlameThrowerFR13CStateManagerb +lbl_80234AF8: +/* 80234AF8 00231A58 88 1D 07 54 */ lbz r0, 0x754(r29) +/* 80234AFC 00231A5C 53 E0 26 F6 */ rlwimi r0, r31, 4, 0x1b, 0x1b +/* 80234B00 00231A60 98 1D 07 54 */ stb r0, 0x754(r29) +lbl_80234B04: +/* 80234B04 00231A64 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80234B08 00231A68 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80234B0C 00231A6C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80234B10 00231A70 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80234B14 00231A74 7C 08 03 A6 */ mtlr r0 +/* 80234B18 00231A78 38 21 00 20 */ addi r1, r1, 0x20 +/* 80234B1C 00231A7C 4E 80 00 20 */ blr + +.global sub_80234b20 +sub_80234b20: +/* 80234B20 00231A80 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80234B24 00231A84 7C 08 02 A6 */ mflr r0 +/* 80234B28 00231A88 90 01 00 64 */ stw r0, 0x64(r1) +/* 80234B2C 00231A8C 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 80234B30 00231A90 7C 9F 23 78 */ mr r31, r4 +/* 80234B34 00231A94 93 C1 00 58 */ stw r30, 0x58(r1) +/* 80234B38 00231A98 7C 7E 1B 78 */ mr r30, r3 +/* 80234B3C 00231A9C 93 A1 00 54 */ stw r29, 0x54(r1) +/* 80234B40 00231AA0 93 81 00 50 */ stw r28, 0x50(r1) +/* 80234B44 00231AA4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80234B48 00231AA8 A0 63 06 C8 */ lhz r3, 0x6c8(r3) +/* 80234B4C 00231AAC 7C 03 00 40 */ cmplw r3, r0 +/* 80234B50 00231AB0 40 82 00 EC */ bne lbl_80234C3C +/* 80234B54 00231AB4 38 61 00 34 */ addi r3, r1, 0x34 +/* 80234B58 00231AB8 4B E1 85 85 */ bl AllocateUniqueId__13CStateManagerFv +/* 80234B5C 00231ABC A0 01 00 34 */ lhz r0, 0x34(r1) +/* 80234B60 00231AC0 3C 60 80 3D */ lis r3, lbl_803D4310@ha +/* 80234B64 00231AC4 38 63 43 10 */ addi r3, r3, lbl_803D4310@l +/* 80234B68 00231AC8 3B 80 00 00 */ li r28, 0 +/* 80234B6C 00231ACC B0 1E 06 C8 */ sth r0, 0x6c8(r30) +/* 80234B70 00231AD0 38 83 00 4B */ addi r4, r3, 0x4b +/* 80234B74 00231AD4 38 60 04 08 */ li r3, 0x408 +/* 80234B78 00231AD8 38 A0 00 00 */ li r5, 0 +/* 80234B7C 00231ADC 48 0E 0C F1 */ bl __nw__FUlPCcPCc +/* 80234B80 00231AE0 7C 7D 1B 79 */ or. r29, r3, r3 +/* 80234B84 00231AE4 41 82 00 9C */ beq lbl_80234C20 +/* 80234B88 00231AE8 A0 1E 00 08 */ lhz r0, 8(r30) +/* 80234B8C 00231AEC 3C 60 80 3D */ lis r3, lbl_803D4310@ha +/* 80234B90 00231AF0 38 83 43 10 */ addi r4, r3, lbl_803D4310@l +/* 80234B94 00231AF4 38 61 00 40 */ addi r3, r1, 0x40 +/* 80234B98 00231AF8 B0 01 00 30 */ sth r0, 0x30(r1) +/* 80234B9C 00231AFC 38 84 00 52 */ addi r4, r4, 0x52 +/* 80234BA0 00231B00 80 BE 00 04 */ lwz r5, 4(r30) +/* 80234BA4 00231B04 B0 01 00 2C */ sth r0, 0x2c(r1) +/* 80234BA8 00231B08 90 A1 00 3C */ stw r5, 0x3c(r1) +/* 80234BAC 00231B0C A0 1E 06 C8 */ lhz r0, 0x6c8(r30) +/* 80234BB0 00231B10 90 A1 00 38 */ stw r5, 0x38(r1) +/* 80234BB4 00231B14 B0 01 00 28 */ sth r0, 0x28(r1) +/* 80234BB8 00231B18 4B DD 01 01 */ bl string_l__4rstlFPCc +/* 80234BBC 00231B1C 38 01 00 28 */ addi r0, r1, 0x28 +/* 80234BC0 00231B20 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 80234BC4 00231B24 90 01 00 08 */ stw r0, 8(r1) +/* 80234BC8 00231B28 38 01 00 3C */ addi r0, r1, 0x3c +/* 80234BCC 00231B2C 39 03 66 70 */ addi r8, r3, skIdentity4f@l +/* 80234BD0 00231B30 38 61 00 30 */ addi r3, r1, 0x30 +/* 80234BD4 00231B34 90 01 00 0C */ stw r0, 0xc(r1) +/* 80234BD8 00231B38 38 A0 00 00 */ li r5, 0 +/* 80234BDC 00231B3C 39 60 FF FF */ li r11, -1 +/* 80234BE0 00231B40 A0 02 C5 FC */ lhz r0, lbl_805AE31C@sda21(r2) +/* 80234BE4 00231B44 90 61 00 10 */ stw r3, 0x10(r1) +/* 80234BE8 00231B48 7F A3 EB 78 */ mr r3, r29 +/* 80234BEC 00231B4C 38 9E 06 CC */ addi r4, r30, 0x6cc +/* 80234BF0 00231B50 38 FE 06 A8 */ addi r7, r30, 0x6a8 +/* 80234BF4 00231B54 90 A1 00 14 */ stw r5, 0x14(r1) +/* 80234BF8 00231B58 38 A1 00 40 */ addi r5, r1, 0x40 +/* 80234BFC 00231B5C 39 5E 06 D4 */ addi r10, r30, 0x6d4 +/* 80234C00 00231B60 3B 80 00 01 */ li r28, 1 +/* 80234C04 00231B64 91 61 00 18 */ stw r11, 0x18(r1) +/* 80234C08 00231B68 38 C0 00 03 */ li r6, 3 +/* 80234C0C 00231B6C 39 20 00 2F */ li r9, 0x2f +/* 80234C10 00231B70 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80234C14 00231B74 91 61 00 20 */ stw r11, 0x20(r1) +/* 80234C18 00231B78 4B F6 3E D9 */ bl "__ct__13CFlameThrowerFRC28TToken<18CWeaponDescription>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>11EWeaponTypeRC10CFlameInfoRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId9TUniqueIdUi" +/* 80234C1C 00231B7C 7C 7D 1B 78 */ mr r29, r3 +lbl_80234C20: +/* 80234C20 00231B80 7F 80 07 75 */ extsb. r0, r28 +/* 80234C24 00231B84 41 82 00 0C */ beq lbl_80234C30 +/* 80234C28 00231B88 38 61 00 40 */ addi r3, r1, 0x40 +/* 80234C2C 00231B8C 48 10 8E B5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80234C30: +/* 80234C30 00231B90 7F E3 FB 78 */ mr r3, r31 +/* 80234C34 00231B94 7F A4 EB 78 */ mr r4, r29 +/* 80234C38 00231B98 4B E1 7E DD */ bl AddObject__13CStateManagerFR7CEntity +lbl_80234C3C: +/* 80234C3C 00231B9C 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80234C40 00231BA0 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 80234C44 00231BA4 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 80234C48 00231BA8 83 A1 00 54 */ lwz r29, 0x54(r1) +/* 80234C4C 00231BAC 83 81 00 50 */ lwz r28, 0x50(r1) +/* 80234C50 00231BB0 7C 08 03 A6 */ mtlr r0 +/* 80234C54 00231BB4 38 21 00 60 */ addi r1, r1, 0x60 +/* 80234C58 00231BB8 4E 80 00 20 */ blr + +.global SelectTarget__10CMagdoliteFR13CStateManager9EStateMsgf +SelectTarget__10CMagdoliteFR13CStateManager9EStateMsgf: +/* 80234C5C 00231BBC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80234C60 00231BC0 7C 08 02 A6 */ mflr r0 +/* 80234C64 00231BC4 2C 05 00 02 */ cmpwi r5, 2 +/* 80234C68 00231BC8 90 01 00 34 */ stw r0, 0x34(r1) +/* 80234C6C 00231BCC 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80234C70 00231BD0 7C 9F 23 78 */ mr r31, r4 +/* 80234C74 00231BD4 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80234C78 00231BD8 7C 7E 1B 78 */ mr r30, r3 +/* 80234C7C 00231BDC 41 82 00 B8 */ beq lbl_80234D34 +/* 80234C80 00231BE0 40 80 00 B8 */ bge lbl_80234D38 +/* 80234C84 00231BE4 2C 05 00 01 */ cmpwi r5, 1 +/* 80234C88 00231BE8 40 80 00 08 */ bge lbl_80234C90 +/* 80234C8C 00231BEC 48 00 00 AC */ b lbl_80234D38 +lbl_80234C90: +/* 80234C90 00231BF0 7F C4 F3 78 */ mr r4, r30 +/* 80234C94 00231BF4 7F E5 FB 78 */ mr r5, r31 +/* 80234C98 00231BF8 38 61 00 0C */ addi r3, r1, 0xc +/* 80234C9C 00231BFC 38 C0 00 0A */ li r6, 0xa +/* 80234CA0 00231C00 38 E0 00 06 */ li r7, 6 +/* 80234CA4 00231C04 48 00 00 F9 */ bl sub_80234d9c +/* 80234CA8 00231C08 A0 61 00 0C */ lhz r3, 0xc(r1) +/* 80234CAC 00231C0C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80234CB0 00231C10 B0 61 00 10 */ sth r3, 0x10(r1) +/* 80234CB4 00231C14 7C 03 00 40 */ cmplw r3, r0 +/* 80234CB8 00231C18 41 82 00 80 */ beq lbl_80234D38 +/* 80234CBC 00231C1C B0 61 00 08 */ sth r3, 8(r1) +/* 80234CC0 00231C20 7F E3 FB 78 */ mr r3, r31 +/* 80234CC4 00231C24 38 81 00 08 */ addi r4, r1, 8 +/* 80234CC8 00231C28 4B E1 78 DD */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80234CCC 00231C2C 7C 64 1B 78 */ mr r4, r3 +/* 80234CD0 00231C30 38 61 00 14 */ addi r3, r1, 0x14 +/* 80234CD4 00231C34 4B E7 18 79 */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 80234CD8 00231C38 80 83 00 04 */ lwz r4, 4(r3) +/* 80234CDC 00231C3C 28 04 00 00 */ cmplwi r4, 0 +/* 80234CE0 00231C40 41 82 00 58 */ beq lbl_80234D38 +/* 80234CE4 00231C44 38 7E 00 34 */ addi r3, r30, 0x34 +/* 80234CE8 00231C48 38 84 00 34 */ addi r4, r4, 0x34 +/* 80234CEC 00231C4C 48 0D DE 55 */ bl __as__12CTransform4fFRC12CTransform4f +/* 80234CF0 00231C50 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 80234CF4 00231C54 38 60 00 01 */ li r3, 1 +/* 80234CF8 00231C58 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 80234CFC 00231C5C 98 1E 00 E4 */ stb r0, 0xe4(r30) +/* 80234D00 00231C60 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 80234D04 00231C64 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 80234D08 00231C68 98 1E 00 E4 */ stb r0, 0xe4(r30) +/* 80234D0C 00231C6C 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 80234D10 00231C70 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 80234D14 00231C74 98 1E 00 E4 */ stb r0, 0xe4(r30) +/* 80234D18 00231C78 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 80234D1C 00231C7C C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 80234D20 00231C80 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 80234D24 00231C84 D0 1E 07 1C */ stfs f0, 0x71c(r30) +/* 80234D28 00231C88 D0 3E 07 20 */ stfs f1, 0x720(r30) +/* 80234D2C 00231C8C D0 5E 07 24 */ stfs f2, 0x724(r30) +/* 80234D30 00231C90 48 00 00 08 */ b lbl_80234D38 +lbl_80234D34: +/* 80234D34 00231C94 48 00 15 D5 */ bl sub_80236308 +lbl_80234D38: +/* 80234D38 00231C98 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80234D3C 00231C9C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80234D40 00231CA0 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80234D44 00231CA4 7C 08 03 A6 */ mtlr r0 +/* 80234D48 00231CA8 38 21 00 30 */ addi r1, r1, 0x30 +/* 80234D4C 00231CAC 4E 80 00 20 */ blr + +.global HasAttackPattern__10CMagdoliteFR13CStateManagerf +HasAttackPattern__10CMagdoliteFR13CStateManagerf: +/* 80234D50 00231CB0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80234D54 00231CB4 7C 08 02 A6 */ mflr r0 +/* 80234D58 00231CB8 7C 85 23 78 */ mr r5, r4 +/* 80234D5C 00231CBC 7C 64 1B 78 */ mr r4, r3 +/* 80234D60 00231CC0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80234D64 00231CC4 38 61 00 08 */ addi r3, r1, 8 +/* 80234D68 00231CC8 38 C0 00 0A */ li r6, 0xa +/* 80234D6C 00231CCC 38 E0 00 06 */ li r7, 6 +/* 80234D70 00231CD0 48 00 00 2D */ bl sub_80234d9c +/* 80234D74 00231CD4 A0 81 00 08 */ lhz r4, 8(r1) +/* 80234D78 00231CD8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80234D7C 00231CDC 7C 64 00 50 */ subf r3, r4, r0 +/* 80234D80 00231CE0 7C 00 20 50 */ subf r0, r0, r4 +/* 80234D84 00231CE4 7C 60 03 78 */ or r0, r3, r0 +/* 80234D88 00231CE8 54 03 0F FE */ srwi r3, r0, 0x1f +/* 80234D8C 00231CEC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80234D90 00231CF0 7C 08 03 A6 */ mtlr r0 +/* 80234D94 00231CF4 38 21 00 10 */ addi r1, r1, 0x10 +/* 80234D98 00231CF8 4E 80 00 20 */ blr + +.global sub_80234d9c +sub_80234d9c: +/* 80234D9C 00231CFC 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 80234DA0 00231D00 7C 08 02 A6 */ mflr r0 +/* 80234DA4 00231D04 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 80234DA8 00231D08 DB E1 00 B0 */ stfd f31, 0xb0(r1) +/* 80234DAC 00231D0C F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0 +/* 80234DB0 00231D10 DB C1 00 A0 */ stfd f30, 0xa0(r1) +/* 80234DB4 00231D14 F3 C1 00 A8 */ psq_st f30, 168(r1), 0, qr0 +/* 80234DB8 00231D18 DB A1 00 90 */ stfd f29, 0x90(r1) +/* 80234DBC 00231D1C F3 A1 00 98 */ psq_st f29, 152(r1), 0, qr0 +/* 80234DC0 00231D20 DB 81 00 80 */ stfd f28, 0x80(r1) +/* 80234DC4 00231D24 F3 81 00 88 */ psq_st f28, 136(r1), 0, qr0 +/* 80234DC8 00231D28 DB 61 00 70 */ stfd f27, 0x70(r1) +/* 80234DCC 00231D2C F3 61 00 78 */ psq_st f27, 120(r1), 0, qr0 +/* 80234DD0 00231D30 BF 01 00 50 */ stmw r24, 0x50(r1) +/* 80234DD4 00231D34 88 04 07 54 */ lbz r0, 0x754(r4) +/* 80234DD8 00231D38 7C 99 23 78 */ mr r25, r4 +/* 80234DDC 00231D3C C3 62 B7 2C */ lfs f27, lbl_805AD44C@sda21(r2) +/* 80234DE0 00231D40 7C 78 1B 78 */ mr r24, r3 +/* 80234DE4 00231D44 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 80234DE8 00231D48 A3 ED A3 8C */ lhz r31, lbl_805A8F4C@sda21(r13) +/* 80234DEC 00231D4C 7C BA 2B 78 */ mr r26, r5 +/* 80234DF0 00231D50 7C DB 33 78 */ mr r27, r6 +/* 80234DF4 00231D54 7C FC 3B 78 */ mr r28, r7 +/* 80234DF8 00231D58 3B A0 00 00 */ li r29, 0 +/* 80234DFC 00231D5C 41 82 00 10 */ beq lbl_80234E0C +/* 80234E00 00231D60 C0 19 03 BC */ lfs f0, 0x3bc(r25) +/* 80234E04 00231D64 EF E0 00 32 */ fmuls f31, f0, f0 +/* 80234E08 00231D68 48 00 00 0C */ b lbl_80234E14 +lbl_80234E0C: +/* 80234E0C 00231D6C C0 19 03 00 */ lfs f0, 0x300(r25) +/* 80234E10 00231D70 EF E0 00 32 */ fmuls f31, f0, f0 +lbl_80234E14: +/* 80234E14 00231D74 80 7A 08 4C */ lwz r3, 0x84c(r26) +/* 80234E18 00231D78 83 D9 00 2C */ lwz r30, 0x2c(r25) +/* 80234E1C 00231D7C C3 C3 00 40 */ lfs f30, 0x40(r3) +/* 80234E20 00231D80 C3 A3 00 50 */ lfs f29, 0x50(r3) +/* 80234E24 00231D84 C3 83 00 60 */ lfs f28, 0x60(r3) +/* 80234E28 00231D88 48 00 00 D0 */ b lbl_80234EF8 +lbl_80234E2C: +/* 80234E2C 00231D8C 80 1E 00 00 */ lwz r0, 0(r30) +/* 80234E30 00231D90 7C 1B 00 00 */ cmpw r27, r0 +/* 80234E34 00231D94 40 82 00 C0 */ bne lbl_80234EF4 +/* 80234E38 00231D98 80 1E 00 04 */ lwz r0, 4(r30) +/* 80234E3C 00231D9C 7C 1C 00 00 */ cmpw r28, r0 +/* 80234E40 00231DA0 40 82 00 B4 */ bne lbl_80234EF4 +/* 80234E44 00231DA4 80 1E 00 08 */ lwz r0, 8(r30) +/* 80234E48 00231DA8 7F 44 D3 78 */ mr r4, r26 +/* 80234E4C 00231DAC 38 61 00 14 */ addi r3, r1, 0x14 +/* 80234E50 00231DB0 38 A1 00 24 */ addi r5, r1, 0x24 +/* 80234E54 00231DB4 90 01 00 24 */ stw r0, 0x24(r1) +/* 80234E58 00231DB8 4B E1 30 C5 */ bl GetIdForScript__13CStateManagerCF9TEditorId +/* 80234E5C 00231DBC A0 01 00 14 */ lhz r0, 0x14(r1) +/* 80234E60 00231DC0 7F 43 D3 78 */ mr r3, r26 +/* 80234E64 00231DC4 38 81 00 10 */ addi r4, r1, 0x10 +/* 80234E68 00231DC8 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 80234E6C 00231DCC B0 01 00 10 */ sth r0, 0x10(r1) +/* 80234E70 00231DD0 4B E1 77 35 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80234E74 00231DD4 28 03 00 00 */ cmplwi r3, 0 +/* 80234E78 00231DD8 41 82 00 7C */ beq lbl_80234EF4 +/* 80234E7C 00231DDC 88 03 00 30 */ lbz r0, 0x30(r3) +/* 80234E80 00231DE0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80234E84 00231DE4 41 82 00 70 */ beq lbl_80234EF4 +/* 80234E88 00231DE8 7C 64 1B 78 */ mr r4, r3 +/* 80234E8C 00231DEC 38 61 00 30 */ addi r3, r1, 0x30 +/* 80234E90 00231DF0 4B E7 16 BD */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 80234E94 00231DF4 80 63 00 04 */ lwz r3, 4(r3) +/* 80234E98 00231DF8 28 03 00 00 */ cmplwi r3, 0 +/* 80234E9C 00231DFC 41 82 00 58 */ beq lbl_80234EF4 +/* 80234EA0 00231E00 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 80234EA4 00231E04 3B BD 00 01 */ addi r29, r29, 1 +/* 80234EA8 00231E08 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 80234EAC 00231E0C EC 41 E8 28 */ fsubs f2, f1, f29 +/* 80234EB0 00231E10 C0 23 00 60 */ lfs f1, 0x60(r3) +/* 80234EB4 00231E14 EC 60 F0 28 */ fsubs f3, f0, f30 +/* 80234EB8 00231E18 EC 81 E0 28 */ fsubs f4, f1, f28 +/* 80234EBC 00231E1C EC 02 00 B2 */ fmuls f0, f2, f2 +/* 80234EC0 00231E20 D0 41 00 3C */ stfs f2, 0x3c(r1) +/* 80234EC4 00231E24 EC 23 00 F2 */ fmuls f1, f3, f3 +/* 80234EC8 00231E28 EC 44 01 32 */ fmuls f2, f4, f4 +/* 80234ECC 00231E2C D0 61 00 38 */ stfs f3, 0x38(r1) +/* 80234ED0 00231E30 EC 01 00 2A */ fadds f0, f1, f0 +/* 80234ED4 00231E34 D0 81 00 40 */ stfs f4, 0x40(r1) +/* 80234ED8 00231E38 EC 02 00 2A */ fadds f0, f2, f0 +/* 80234EDC 00231E3C FC 00 F8 40 */ fcmpo cr0, f0, f31 +/* 80234EE0 00231E40 40 80 00 14 */ bge lbl_80234EF4 +/* 80234EE4 00231E44 FC 00 D8 40 */ fcmpo cr0, f0, f27 +/* 80234EE8 00231E48 40 80 00 0C */ bge lbl_80234EF4 +/* 80234EEC 00231E4C A3 E1 00 1C */ lhz r31, 0x1c(r1) +/* 80234EF0 00231E50 FF 60 00 90 */ fmr f27, f0 +lbl_80234EF4: +/* 80234EF4 00231E54 3B DE 00 0C */ addi r30, r30, 0xc +lbl_80234EF8: +/* 80234EF8 00231E58 80 19 00 24 */ lwz r0, 0x24(r25) +/* 80234EFC 00231E5C 80 79 00 2C */ lwz r3, 0x2c(r25) +/* 80234F00 00231E60 1C 00 00 0C */ mulli r0, r0, 0xc +/* 80234F04 00231E64 7C 03 02 14 */ add r0, r3, r0 +/* 80234F08 00231E68 7C 1E 00 40 */ cmplw r30, r0 +/* 80234F0C 00231E6C 40 82 FF 20 */ bne lbl_80234E2C +/* 80234F10 00231E70 88 19 07 54 */ lbz r0, 0x754(r25) +/* 80234F14 00231E74 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 80234F18 00231E78 40 82 00 C4 */ bne lbl_80234FDC +/* 80234F1C 00231E7C 80 7A 09 00 */ lwz r3, 0x900(r26) +/* 80234F20 00231E80 48 0D D6 01 */ bl Next__9CRandom16Fv +/* 80234F24 00231E84 7C 03 EB D6 */ divw r0, r3, r29 +/* 80234F28 00231E88 83 D9 00 2C */ lwz r30, 0x2c(r25) +/* 80234F2C 00231E8C 7C 00 E9 D6 */ mullw r0, r0, r29 +/* 80234F30 00231E90 7F A0 18 50 */ subf r29, r0, r3 +/* 80234F34 00231E94 48 00 00 90 */ b lbl_80234FC4 +lbl_80234F38: +/* 80234F38 00231E98 80 1E 00 00 */ lwz r0, 0(r30) +/* 80234F3C 00231E9C 7C 1B 00 00 */ cmpw r27, r0 +/* 80234F40 00231EA0 40 82 00 80 */ bne lbl_80234FC0 +/* 80234F44 00231EA4 80 1E 00 04 */ lwz r0, 4(r30) +/* 80234F48 00231EA8 7C 1C 00 00 */ cmpw r28, r0 +/* 80234F4C 00231EAC 40 82 00 74 */ bne lbl_80234FC0 +/* 80234F50 00231EB0 80 1E 00 08 */ lwz r0, 8(r30) +/* 80234F54 00231EB4 7F 44 D3 78 */ mr r4, r26 +/* 80234F58 00231EB8 38 61 00 0C */ addi r3, r1, 0xc +/* 80234F5C 00231EBC 38 A1 00 20 */ addi r5, r1, 0x20 +/* 80234F60 00231EC0 90 01 00 20 */ stw r0, 0x20(r1) +/* 80234F64 00231EC4 4B E1 2F B9 */ bl GetIdForScript__13CStateManagerCF9TEditorId +/* 80234F68 00231EC8 A0 01 00 0C */ lhz r0, 0xc(r1) +/* 80234F6C 00231ECC 7F 43 D3 78 */ mr r3, r26 +/* 80234F70 00231ED0 38 81 00 08 */ addi r4, r1, 8 +/* 80234F74 00231ED4 B0 01 00 18 */ sth r0, 0x18(r1) +/* 80234F78 00231ED8 B0 01 00 08 */ sth r0, 8(r1) +/* 80234F7C 00231EDC 4B E1 76 29 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80234F80 00231EE0 28 03 00 00 */ cmplwi r3, 0 +/* 80234F84 00231EE4 41 82 00 3C */ beq lbl_80234FC0 +/* 80234F88 00231EE8 88 03 00 30 */ lbz r0, 0x30(r3) +/* 80234F8C 00231EEC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80234F90 00231EF0 41 82 00 30 */ beq lbl_80234FC0 +/* 80234F94 00231EF4 7C 64 1B 78 */ mr r4, r3 +/* 80234F98 00231EF8 38 61 00 28 */ addi r3, r1, 0x28 +/* 80234F9C 00231EFC 4B E7 15 B1 */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 80234FA0 00231F00 80 03 00 04 */ lwz r0, 4(r3) +/* 80234FA4 00231F04 28 00 00 00 */ cmplwi r0, 0 +/* 80234FA8 00231F08 41 82 00 18 */ beq lbl_80234FC0 +/* 80234FAC 00231F0C 2C 1D 00 00 */ cmpwi r29, 0 +/* 80234FB0 00231F10 40 82 00 0C */ bne lbl_80234FBC +/* 80234FB4 00231F14 A3 E1 00 18 */ lhz r31, 0x18(r1) +/* 80234FB8 00231F18 48 00 00 24 */ b lbl_80234FDC +lbl_80234FBC: +/* 80234FBC 00231F1C 3B BD FF FF */ addi r29, r29, -1 +lbl_80234FC0: +/* 80234FC0 00231F20 3B DE 00 0C */ addi r30, r30, 0xc +lbl_80234FC4: +/* 80234FC4 00231F24 80 19 00 24 */ lwz r0, 0x24(r25) +/* 80234FC8 00231F28 80 79 00 2C */ lwz r3, 0x2c(r25) +/* 80234FCC 00231F2C 1C 00 00 0C */ mulli r0, r0, 0xc +/* 80234FD0 00231F30 7C 03 02 14 */ add r0, r3, r0 +/* 80234FD4 00231F34 7C 1E 00 40 */ cmplw r30, r0 +/* 80234FD8 00231F38 40 82 FF 60 */ bne lbl_80234F38 +lbl_80234FDC: +/* 80234FDC 00231F3C B3 F8 00 00 */ sth r31, 0(r24) +/* 80234FE0 00231F40 E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0 +/* 80234FE4 00231F44 CB E1 00 B0 */ lfd f31, 0xb0(r1) +/* 80234FE8 00231F48 E3 C1 00 A8 */ psq_l f30, 168(r1), 0, qr0 +/* 80234FEC 00231F4C CB C1 00 A0 */ lfd f30, 0xa0(r1) +/* 80234FF0 00231F50 E3 A1 00 98 */ psq_l f29, 152(r1), 0, qr0 +/* 80234FF4 00231F54 CB A1 00 90 */ lfd f29, 0x90(r1) +/* 80234FF8 00231F58 E3 81 00 88 */ psq_l f28, 136(r1), 0, qr0 +/* 80234FFC 00231F5C CB 81 00 80 */ lfd f28, 0x80(r1) +/* 80235000 00231F60 E3 61 00 78 */ psq_l f27, 120(r1), 0, qr0 +/* 80235004 00231F64 CB 61 00 70 */ lfd f27, 0x70(r1) +/* 80235008 00231F68 BB 01 00 50 */ lmw r24, 0x50(r1) +/* 8023500C 00231F6C 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 80235010 00231F70 7C 08 03 A6 */ mtlr r0 +/* 80235014 00231F74 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 80235018 00231F78 4E 80 00 20 */ blr + +.global InAttackPosition__10CMagdoliteFR13CStateManagerf +InAttackPosition__10CMagdoliteFR13CStateManagerf: +/* 8023501C 00231F7C 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 80235020 00231F80 7C 08 02 A6 */ mflr r0 +/* 80235024 00231F84 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 80235028 00231F88 DB E1 00 A0 */ stfd f31, 0xa0(r1) +/* 8023502C 00231F8C F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0 +/* 80235030 00231F90 DB C1 00 90 */ stfd f30, 0x90(r1) +/* 80235034 00231F94 F3 C1 00 98 */ psq_st f30, 152(r1), 0, qr0 +/* 80235038 00231F98 DB A1 00 80 */ stfd f29, 0x80(r1) +/* 8023503C 00231F9C F3 A1 00 88 */ psq_st f29, 136(r1), 0, qr0 +/* 80235040 00231FA0 DB 81 00 70 */ stfd f28, 0x70(r1) +/* 80235044 00231FA4 F3 81 00 78 */ psq_st f28, 120(r1), 0, qr0 +/* 80235048 00231FA8 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 8023504C 00231FAC 93 C1 00 68 */ stw r30, 0x68(r1) +/* 80235050 00231FB0 7C 7E 1B 78 */ mr r30, r3 +/* 80235054 00231FB4 7C 9F 23 78 */ mr r31, r4 +/* 80235058 00231FB8 C3 C3 00 60 */ lfs f30, 0x60(r3) +/* 8023505C 00231FBC 38 61 00 14 */ addi r3, r1, 0x14 +/* 80235060 00231FC0 C3 BE 00 50 */ lfs f29, 0x50(r30) +/* 80235064 00231FC4 C3 9E 00 40 */ lfs f28, 0x40(r30) +/* 80235068 00231FC8 80 8D 96 50 */ lwz r4, lbl_805A8210@sda21(r13) +/* 8023506C 00231FCC 4B DC FC 4D */ bl string_l__4rstlFPCc +/* 80235070 00231FD0 7F C4 F3 78 */ mr r4, r30 +/* 80235074 00231FD4 38 61 00 30 */ addi r3, r1, 0x30 +/* 80235078 00231FD8 38 A1 00 14 */ addi r5, r1, 0x14 +/* 8023507C 00231FDC 4B E4 38 FD */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80235080 00231FE0 C3 E1 00 5C */ lfs f31, 0x5c(r1) +/* 80235084 00231FE4 38 61 00 14 */ addi r3, r1, 0x14 +/* 80235088 00231FE8 48 10 8A 59 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8023508C 00231FEC 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 80235090 00231FF0 7F E5 FB 78 */ mr r5, r31 +/* 80235094 00231FF4 38 61 00 08 */ addi r3, r1, 8 +/* 80235098 00231FF8 C0 22 B7 20 */ lfs f1, lbl_805AD440@sda21(r2) +/* 8023509C 00231FFC 81 84 00 00 */ lwz r12, 0(r4) +/* 802350A0 00232000 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 802350A4 00232004 7D 89 03 A6 */ mtctr r12 +/* 802350A8 00232008 4E 80 04 21 */ bctrl +/* 802350AC 0023200C C0 61 00 10 */ lfs f3, 0x10(r1) +/* 802350B0 00232010 C0 41 00 08 */ lfs f2, 8(r1) +/* 802350B4 00232014 C0 21 00 0C */ lfs f1, 0xc(r1) +/* 802350B8 00232018 EC 03 F0 28 */ fsubs f0, f3, f30 +/* 802350BC 0023201C EC 42 E0 28 */ fsubs f2, f2, f28 +/* 802350C0 00232020 EC 21 E8 28 */ fsubs f1, f1, f29 +/* 802350C4 00232024 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 802350C8 00232028 FC 03 F0 40 */ fcmpo cr0, f3, f30 +/* 802350CC 0023202C D0 41 00 24 */ stfs f2, 0x24(r1) +/* 802350D0 00232030 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 802350D4 00232034 C3 9E 00 58 */ lfs f28, 0x58(r30) +/* 802350D8 00232038 C3 BE 00 48 */ lfs f29, 0x48(r30) +/* 802350DC 0023203C C3 DE 00 38 */ lfs f30, 0x38(r30) +/* 802350E0 00232040 40 81 00 14 */ ble lbl_802350F4 +/* 802350E4 00232044 FC 03 F8 40 */ fcmpo cr0, f3, f31 +/* 802350E8 00232048 40 80 00 0C */ bge lbl_802350F4 +/* 802350EC 0023204C C0 02 B7 20 */ lfs f0, lbl_805AD440@sda21(r2) +/* 802350F0 00232050 D0 01 00 2C */ stfs f0, 0x2c(r1) +lbl_802350F4: +/* 802350F4 00232054 38 61 00 24 */ addi r3, r1, 0x24 +/* 802350F8 00232058 48 0D F7 C1 */ bl Magnitude__9CVector3fCFv +/* 802350FC 0023205C C0 42 B7 20 */ lfs f2, lbl_805AD440@sda21(r2) +/* 80235100 00232060 C0 02 B7 30 */ lfs f0, lbl_805AD450@sda21(r2) +/* 80235104 00232064 EC 41 10 28 */ fsubs f2, f1, f2 +/* 80235108 00232068 FC 40 12 10 */ fabs f2, f2 +/* 8023510C 0023206C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80235110 00232070 40 80 00 0C */ bge lbl_8023511C +/* 80235114 00232074 38 60 00 00 */ li r3, 0 +/* 80235118 00232078 48 00 00 54 */ b lbl_8023516C +lbl_8023511C: +/* 8023511C 0023207C C0 02 B7 34 */ lfs f0, lbl_805AD454@sda21(r2) +/* 80235120 00232080 C0 41 00 28 */ lfs f2, 0x28(r1) +/* 80235124 00232084 EC 80 08 24 */ fdivs f4, f0, f1 +/* 80235128 00232088 C0 21 00 24 */ lfs f1, 0x24(r1) +/* 8023512C 0023208C C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 80235130 00232090 EC 42 01 32 */ fmuls f2, f2, f4 +/* 80235134 00232094 EC 61 01 32 */ fmuls f3, f1, f4 +/* 80235138 00232098 EC 20 01 32 */ fmuls f1, f0, f4 +/* 8023513C 0023209C EC 02 07 72 */ fmuls f0, f2, f29 +/* 80235140 002320A0 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 80235144 002320A4 D0 61 00 24 */ stfs f3, 0x24(r1) +/* 80235148 002320A8 EC 03 07 BA */ fmadds f0, f3, f30, f0 +/* 8023514C 002320AC D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 80235150 002320B0 EC 21 07 3A */ fmadds f1, f1, f28, f0 +/* 80235154 002320B4 C0 1E 05 78 */ lfs f0, 0x578(r30) +/* 80235158 002320B8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8023515C 002320BC 7C 00 00 26 */ mfcr r0 +/* 80235160 002320C0 54 00 0F FE */ srwi r0, r0, 0x1f +/* 80235164 002320C4 7C 00 00 34 */ cntlzw r0, r0 +/* 80235168 002320C8 54 03 D9 7E */ srwi r3, r0, 5 +lbl_8023516C: +/* 8023516C 002320CC E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0 +/* 80235170 002320D0 CB E1 00 A0 */ lfd f31, 0xa0(r1) +/* 80235174 002320D4 E3 C1 00 98 */ psq_l f30, 152(r1), 0, qr0 +/* 80235178 002320D8 CB C1 00 90 */ lfd f30, 0x90(r1) +/* 8023517C 002320DC E3 A1 00 88 */ psq_l f29, 136(r1), 0, qr0 +/* 80235180 002320E0 CB A1 00 80 */ lfd f29, 0x80(r1) +/* 80235184 002320E4 E3 81 00 78 */ psq_l f28, 120(r1), 0, qr0 +/* 80235188 002320E8 CB 81 00 70 */ lfd f28, 0x70(r1) +/* 8023518C 002320EC 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 80235190 002320F0 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 80235194 002320F4 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 80235198 002320F8 7C 08 03 A6 */ mtlr r0 +/* 8023519C 002320FC 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 802351A0 00232100 4E 80 00 20 */ blr + +.global LineOfSight__10CMagdoliteFR13CStateManagerf +LineOfSight__10CMagdoliteFR13CStateManagerf: +/* 802351A4 00232104 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 802351A8 00232108 7C 08 02 A6 */ mflr r0 +/* 802351AC 0023210C 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 802351B0 00232110 DB E1 00 E0 */ stfd f31, 0xe0(r1) +/* 802351B4 00232114 F3 E1 00 E8 */ psq_st f31, 232(r1), 0, qr0 +/* 802351B8 00232118 DB C1 00 D0 */ stfd f30, 0xd0(r1) +/* 802351BC 0023211C F3 C1 00 D8 */ psq_st f30, 216(r1), 0, qr0 +/* 802351C0 00232120 DB A1 00 C0 */ stfd f29, 0xc0(r1) +/* 802351C4 00232124 F3 A1 00 C8 */ psq_st f29, 200(r1), 0, qr0 +/* 802351C8 00232128 BF 41 00 A8 */ stmw r26, 0xa8(r1) +/* 802351CC 0023212C 7C 9B 23 78 */ mr r27, r4 +/* 802351D0 00232130 80 8D 96 4C */ lwz r4, lbl_805A820C@sda21(r13) +/* 802351D4 00232134 7C 7A 1B 78 */ mr r26, r3 +/* 802351D8 00232138 38 61 00 14 */ addi r3, r1, 0x14 +/* 802351DC 0023213C 4B DC FA DD */ bl string_l__4rstlFPCc +/* 802351E0 00232140 7F 44 D3 78 */ mr r4, r26 +/* 802351E4 00232144 38 61 00 78 */ addi r3, r1, 0x78 +/* 802351E8 00232148 38 A1 00 14 */ addi r5, r1, 0x14 +/* 802351EC 0023214C 4B E4 37 8D */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 802351F0 00232150 C0 41 00 A4 */ lfs f2, 0xa4(r1) +/* 802351F4 00232154 38 61 00 14 */ addi r3, r1, 0x14 +/* 802351F8 00232158 C0 21 00 94 */ lfs f1, 0x94(r1) +/* 802351FC 0023215C C0 01 00 84 */ lfs f0, 0x84(r1) +/* 80235200 00232160 D0 21 00 40 */ stfs f1, 0x40(r1) +/* 80235204 00232164 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 80235208 00232168 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 8023520C 0023216C 48 10 88 D5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80235210 00232170 C0 3A 07 10 */ lfs f1, 0x710(r26) +/* 80235214 00232174 38 61 00 24 */ addi r3, r1, 0x24 +/* 80235218 00232178 C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 8023521C 0023217C D0 21 00 30 */ stfs f1, 0x30(r1) +/* 80235220 00232180 C0 41 00 44 */ lfs f2, 0x44(r1) +/* 80235224 00232184 EC 21 00 28 */ fsubs f1, f1, f0 +/* 80235228 00232188 C0 7A 07 14 */ lfs f3, 0x714(r26) +/* 8023522C 0023218C C0 01 00 40 */ lfs f0, 0x40(r1) +/* 80235230 00232190 D0 61 00 34 */ stfs f3, 0x34(r1) +/* 80235234 00232194 EC 83 00 28 */ fsubs f4, f3, f0 +/* 80235238 00232198 C0 02 B7 20 */ lfs f0, lbl_805AD440@sda21(r2) +/* 8023523C 0023219C C0 7A 07 18 */ lfs f3, 0x718(r26) +/* 80235240 002321A0 EC 43 10 28 */ fsubs f2, f3, f2 +/* 80235244 002321A4 D0 61 00 38 */ stfs f3, 0x38(r1) +/* 80235248 002321A8 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 8023524C 002321AC D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 80235250 002321B0 D0 81 00 28 */ stfs f4, 0x28(r1) +/* 80235254 002321B4 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 80235258 002321B8 C3 BA 00 58 */ lfs f29, 0x58(r26) +/* 8023525C 002321BC C3 DA 00 48 */ lfs f30, 0x48(r26) +/* 80235260 002321C0 C3 FA 00 38 */ lfs f31, 0x38(r26) +/* 80235264 002321C4 48 0D F4 95 */ bl CanBeNormalized__9CVector3fCFv +/* 80235268 002321C8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8023526C 002321CC 41 82 00 48 */ beq lbl_802352B4 +/* 80235270 002321D0 38 61 00 08 */ addi r3, r1, 8 +/* 80235274 002321D4 38 81 00 24 */ addi r4, r1, 0x24 +/* 80235278 002321D8 48 0D F5 D9 */ bl AsNormalized__9CVector3fCFv +/* 8023527C 002321DC C0 41 00 0C */ lfs f2, 0xc(r1) +/* 80235280 002321E0 C0 61 00 08 */ lfs f3, 8(r1) +/* 80235284 002321E4 EC 02 07 B2 */ fmuls f0, f2, f30 +/* 80235288 002321E8 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 8023528C 002321EC D0 61 00 24 */ stfs f3, 0x24(r1) +/* 80235290 002321F0 EC 03 07 FA */ fmadds f0, f3, f31, f0 +/* 80235294 002321F4 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 80235298 002321F8 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 8023529C 002321FC EC 21 07 7A */ fmadds f1, f1, f29, f0 +/* 802352A0 00232200 C0 1A 05 78 */ lfs f0, 0x578(r26) +/* 802352A4 00232204 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802352A8 00232208 40 80 00 0C */ bge lbl_802352B4 +/* 802352AC 0023220C 38 60 00 00 */ li r3, 0 +/* 802352B0 00232210 48 00 00 98 */ b lbl_80235348 +lbl_802352B4: +/* 802352B4 00232214 80 AD 96 68 */ lwz r5, lbl_805A8228@sda21(r13) +/* 802352B8 00232218 38 60 00 00 */ li r3, 0 +/* 802352BC 0023221C 38 80 00 01 */ li r4, 1 +/* 802352C0 00232220 48 15 4C 35 */ bl __shl2i +/* 802352C4 00232224 80 AD 96 6C */ lwz r5, lbl_805A822C@sda21(r13) +/* 802352C8 00232228 7C 9E 23 78 */ mr r30, r4 +/* 802352CC 0023222C 7C 7F 1B 78 */ mr r31, r3 +/* 802352D0 00232230 38 60 00 00 */ li r3, 0 +/* 802352D4 00232234 38 80 00 01 */ li r4, 1 +/* 802352D8 00232238 48 15 4C 1D */ bl __shl2i +/* 802352DC 0023223C 80 AD 96 60 */ lwz r5, lbl_805A8220@sda21(r13) +/* 802352E0 00232240 7F DE 23 78 */ or r30, r30, r4 +/* 802352E4 00232244 7F FF 1B 78 */ or r31, r31, r3 +/* 802352E8 00232248 38 60 00 00 */ li r3, 0 +/* 802352EC 0023224C 38 80 00 01 */ li r4, 1 +/* 802352F0 00232250 48 15 4C 05 */ bl __shl2i +/* 802352F4 00232254 80 AD 96 64 */ lwz r5, lbl_805A8224@sda21(r13) +/* 802352F8 00232258 7C 9C 23 78 */ mr r28, r4 +/* 802352FC 0023225C 7C 7D 1B 78 */ mr r29, r3 +/* 80235300 00232260 38 60 00 00 */ li r3, 0 +/* 80235304 00232264 38 80 00 01 */ li r4, 1 +/* 80235308 00232268 48 15 4B ED */ bl __shl2i +/* 8023530C 0023226C 7F 9C 23 78 */ or r28, r28, r4 +/* 80235310 00232270 7F BD 1B 78 */ or r29, r29, r3 +/* 80235314 00232274 38 00 00 03 */ li r0, 3 +/* 80235318 00232278 93 81 00 64 */ stw r28, 0x64(r1) +/* 8023531C 0023227C 7F 63 DB 78 */ mr r3, r27 +/* 80235320 00232280 7F 47 D3 78 */ mr r7, r26 +/* 80235324 00232284 90 01 00 58 */ stw r0, 0x58(r1) +/* 80235328 00232288 38 81 00 3C */ addi r4, r1, 0x3c +/* 8023532C 0023228C 38 A1 00 30 */ addi r5, r1, 0x30 +/* 80235330 00232290 38 C1 00 60 */ addi r6, r1, 0x60 +/* 80235334 00232294 93 A1 00 60 */ stw r29, 0x60(r1) +/* 80235338 00232298 93 C1 00 6C */ stw r30, 0x6c(r1) +/* 8023533C 0023229C 93 E1 00 68 */ stw r31, 0x68(r1) +/* 80235340 002322A0 90 01 00 70 */ stw r0, 0x70(r1) +/* 80235344 002322A4 4B E1 7A F9 */ bl RayCollideWorld__13CStateManagerFRC9CVector3fRC9CVector3fRC15CMaterialFilterPC6CActor +lbl_80235348: +/* 80235348 002322A8 E3 E1 00 E8 */ psq_l f31, 232(r1), 0, qr0 +/* 8023534C 002322AC CB E1 00 E0 */ lfd f31, 0xe0(r1) +/* 80235350 002322B0 E3 C1 00 D8 */ psq_l f30, 216(r1), 0, qr0 +/* 80235354 002322B4 CB C1 00 D0 */ lfd f30, 0xd0(r1) +/* 80235358 002322B8 E3 A1 00 C8 */ psq_l f29, 200(r1), 0, qr0 +/* 8023535C 002322BC CB A1 00 C0 */ lfd f29, 0xc0(r1) +/* 80235360 002322C0 BB 41 00 A8 */ lmw r26, 0xa8(r1) +/* 80235364 002322C4 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 80235368 002322C8 7C 08 03 A6 */ mtlr r0 +/* 8023536C 002322CC 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 80235370 002322D0 4E 80 00 20 */ blr + +.global Leash__10CMagdoliteFR13CStateManagerf +Leash__10CMagdoliteFR13CStateManagerf: +/* 80235374 002322D4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80235378 002322D8 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 8023537C 002322DC C0 03 03 C8 */ lfs f0, 0x3c8(r3) +/* 80235380 002322E0 C0 E4 00 50 */ lfs f7, 0x50(r4) +/* 80235384 002322E4 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 80235388 002322E8 EC 00 00 32 */ fmuls f0, f0, f0 +/* 8023538C 002322EC C0 44 00 40 */ lfs f2, 0x40(r4) +/* 80235390 002322F0 EC C7 08 28 */ fsubs f6, f7, f1 +/* 80235394 002322F4 C0 23 00 40 */ lfs f1, 0x40(r3) +/* 80235398 002322F8 C1 04 00 60 */ lfs f8, 0x60(r4) +/* 8023539C 002322FC EC 82 08 28 */ fsubs f4, f2, f1 +/* 802353A0 00232300 C0 63 00 60 */ lfs f3, 0x60(r3) +/* 802353A4 00232304 D0 41 00 08 */ stfs f2, 8(r1) +/* 802353A8 00232308 EC A8 18 28 */ fsubs f5, f8, f3 +/* 802353AC 0023230C EC 26 01 B2 */ fmuls f1, f6, f6 +/* 802353B0 00232310 D0 E1 00 0C */ stfs f7, 0xc(r1) +/* 802353B4 00232314 EC 44 01 32 */ fmuls f2, f4, f4 +/* 802353B8 00232318 EC 65 01 72 */ fmuls f3, f5, f5 +/* 802353BC 0023231C D1 01 00 10 */ stfs f8, 0x10(r1) +/* 802353C0 00232320 EC 22 08 2A */ fadds f1, f2, f1 +/* 802353C4 00232324 D0 81 00 14 */ stfs f4, 0x14(r1) +/* 802353C8 00232328 D0 C1 00 18 */ stfs f6, 0x18(r1) +/* 802353CC 0023232C EC 23 08 2A */ fadds f1, f3, f1 +/* 802353D0 00232330 D0 A1 00 1C */ stfs f5, 0x1c(r1) +/* 802353D4 00232334 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802353D8 00232338 7C 00 00 26 */ mfcr r0 +/* 802353DC 0023233C 54 03 0F FE */ srwi r3, r0, 0x1f +/* 802353E0 00232340 38 21 00 20 */ addi r1, r1, 0x20 +/* 802353E4 00232344 4E 80 00 20 */ blr + +.global ShouldRetreat__10CMagdoliteFR13CStateManagerf +ShouldRetreat__10CMagdoliteFR13CStateManagerf: +/* 802353E8 00232348 88 03 07 54 */ lbz r0, 0x754(r3) +/* 802353EC 0023234C 54 03 CF FE */ rlwinm r3, r0, 0x19, 0x1f, 0x1f +/* 802353F0 00232350 4E 80 00 20 */ blr + +.global Touch__10CMagdoliteFR6CActorR13CStateManager +Touch__10CMagdoliteFR6CActorR13CStateManager: +/* 802353F4 00232354 4E 80 00 20 */ blr + +.global Death__10CMagdoliteFRC9CVector3fR13CStateManager +Death__10CMagdoliteFRC9CVector3fR13CStateManager: +/* 802353F8 00232358 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 802353FC 0023235C 7C 08 02 A6 */ mflr r0 +/* 80235400 00232360 90 01 00 94 */ stw r0, 0x94(r1) +/* 80235404 00232364 93 E1 00 8C */ stw r31, 0x8c(r1) +/* 80235408 00232368 7C DF 33 78 */ mr r31, r6 +/* 8023540C 0023236C 93 C1 00 88 */ stw r30, 0x88(r1) +/* 80235410 00232370 7C BE 2B 78 */ mr r30, r5 +/* 80235414 00232374 93 A1 00 84 */ stw r29, 0x84(r1) +/* 80235418 00232378 7C 9D 23 78 */ mr r29, r4 +/* 8023541C 0023237C 93 81 00 80 */ stw r28, 0x80(r1) +/* 80235420 00232380 7C 7C 1B 78 */ mr r28, r3 +/* 80235424 00232384 88 03 04 00 */ lbz r0, 0x400(r3) +/* 80235428 00232388 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8023542C 0023238C 41 82 01 20 */ beq lbl_8023554C +/* 80235430 00232390 38 61 00 48 */ addi r3, r1, 0x48 +/* 80235434 00232394 38 9C 00 34 */ addi r4, r28, 0x34 +/* 80235438 00232398 48 0D D7 3D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8023543C 0023239C 80 8D 96 50 */ lwz r4, lbl_805A8210@sda21(r13) +/* 80235440 002323A0 38 61 00 08 */ addi r3, r1, 8 +/* 80235444 002323A4 4B DC F8 75 */ bl string_l__4rstlFPCc +/* 80235448 002323A8 7F 84 E3 78 */ mr r4, r28 +/* 8023544C 002323AC 38 61 00 18 */ addi r3, r1, 0x18 +/* 80235450 002323B0 38 A1 00 08 */ addi r5, r1, 8 +/* 80235454 002323B4 4B E4 35 25 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80235458 002323B8 38 7C 00 34 */ addi r3, r28, 0x34 +/* 8023545C 002323BC 38 81 00 18 */ addi r4, r1, 0x18 +/* 80235460 002323C0 48 0D D6 E1 */ bl __as__12CTransform4fFRC12CTransform4f +/* 80235464 002323C4 88 1C 00 E4 */ lbz r0, 0xe4(r28) +/* 80235468 002323C8 38 80 00 01 */ li r4, 1 +/* 8023546C 002323CC 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 80235470 002323D0 38 61 00 08 */ addi r3, r1, 8 +/* 80235474 002323D4 98 1C 00 E4 */ stb r0, 0xe4(r28) +/* 80235478 002323D8 88 1C 00 E4 */ lbz r0, 0xe4(r28) +/* 8023547C 002323DC 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c +/* 80235480 002323E0 98 1C 00 E4 */ stb r0, 0xe4(r28) +/* 80235484 002323E4 88 1C 00 E4 */ lbz r0, 0xe4(r28) +/* 80235488 002323E8 50 80 17 7A */ rlwimi r0, r4, 2, 0x1d, 0x1d +/* 8023548C 002323EC 98 1C 00 E4 */ stb r0, 0xe4(r28) +/* 80235490 002323F0 48 10 86 51 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80235494 002323F4 7F 83 E3 78 */ mr r3, r28 +/* 80235498 002323F8 7F A5 EB 78 */ mr r5, r29 +/* 8023549C 002323FC 38 80 00 13 */ li r4, 0x13 +/* 802354A0 00232400 38 C0 FF FF */ li r6, -1 +/* 802354A4 00232404 4B E1 BC 1D */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 802354A8 00232408 7F 83 E3 78 */ mr r3, r28 +/* 802354AC 0023240C 7F A4 EB 78 */ mr r4, r29 +/* 802354B0 00232410 4B E4 5B 29 */ bl GenerateDeathExplosion__10CPatternedFR13CStateManager +/* 802354B4 00232414 38 7C 00 34 */ addi r3, r28, 0x34 +/* 802354B8 00232418 38 81 00 48 */ addi r4, r1, 0x48 +/* 802354BC 0023241C 48 0D D6 85 */ bl __as__12CTransform4fFRC12CTransform4f +/* 802354C0 00232420 88 1C 00 E4 */ lbz r0, 0xe4(r28) +/* 802354C4 00232424 38 60 00 01 */ li r3, 1 +/* 802354C8 00232428 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 802354CC 0023242C 38 9C 06 90 */ addi r4, r28, 0x690 +/* 802354D0 00232430 98 1C 00 E4 */ stb r0, 0xe4(r28) +/* 802354D4 00232434 88 1C 00 E4 */ lbz r0, 0xe4(r28) +/* 802354D8 00232438 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 802354DC 0023243C 98 1C 00 E4 */ stb r0, 0xe4(r28) +/* 802354E0 00232440 88 1C 00 E4 */ lbz r0, 0xe4(r28) +/* 802354E4 00232444 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 802354E8 00232448 98 1C 00 E4 */ stb r0, 0xe4(r28) +/* 802354EC 0023244C 80 7C 00 64 */ lwz r3, 0x64(r28) +/* 802354F0 00232450 80 63 00 10 */ lwz r3, 0x10(r3) +/* 802354F4 00232454 4B DF 8B A9 */ bl "SubstituteModelData__9CAnimDataFRC29TCachedToken<13CSkinnedModel>" +/* 802354F8 00232458 88 1C 04 E1 */ lbz r0, 0x4e1(r28) +/* 802354FC 0023245C 38 60 00 00 */ li r3, 0 +/* 80235500 00232460 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 80235504 00232464 98 1C 04 E1 */ stb r0, 0x4e1(r28) +/* 80235508 00232468 80 7C 04 50 */ lwz r3, 0x450(r28) +/* 8023550C 0023246C 4B F0 4C 49 */ bl UnFreeze__15CBodyControllerFv +/* 80235510 00232470 88 1C 07 54 */ lbz r0, 0x754(r28) +/* 80235514 00232474 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 80235518 00232478 40 82 00 10 */ bne lbl_80235528 +/* 8023551C 0023247C 38 00 00 02 */ li r0, 2 +/* 80235520 00232480 90 1C 04 DC */ stw r0, 0x4dc(r28) +/* 80235524 00232484 48 00 00 14 */ b lbl_80235538 +lbl_80235528: +/* 80235528 00232488 80 7C 00 64 */ lwz r3, 0x64(r28) +/* 8023552C 0023248C 38 9C 06 90 */ addi r4, r28, 0x690 +/* 80235530 00232490 80 63 00 10 */ lwz r3, 0x10(r3) +/* 80235534 00232494 4B DF 8B 69 */ bl "SubstituteModelData__9CAnimDataFRC29TCachedToken<13CSkinnedModel>" +lbl_80235538: +/* 80235538 00232498 7F 83 E3 78 */ mr r3, r28 +/* 8023553C 0023249C 7F A4 EB 78 */ mr r4, r29 +/* 80235540 002324A0 7F C5 F3 78 */ mr r5, r30 +/* 80235544 002324A4 7F E6 FB 78 */ mr r6, r31 +/* 80235548 002324A8 4B E4 5E 5D */ bl Death__10CPatternedFR13CStateManagerRC9CVector3f18EScriptObjectState +lbl_8023554C: +/* 8023554C 002324AC 80 01 00 94 */ lwz r0, 0x94(r1) +/* 80235550 002324B0 83 E1 00 8C */ lwz r31, 0x8c(r1) +/* 80235554 002324B4 83 C1 00 88 */ lwz r30, 0x88(r1) +/* 80235558 002324B8 83 A1 00 84 */ lwz r29, 0x84(r1) +/* 8023555C 002324BC 83 81 00 80 */ lwz r28, 0x80(r1) +/* 80235560 002324C0 7C 08 03 A6 */ mtlr r0 +/* 80235564 002324C4 38 21 00 90 */ addi r1, r1, 0x90 +/* 80235568 002324C8 4E 80 00 20 */ blr + +.global Deactivate__10CMagdoliteFR13CStateManager9EStateMsgf +Deactivate__10CMagdoliteFR13CStateManager9EStateMsgf: +/* 8023556C 002324CC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80235570 002324D0 7C 08 02 A6 */ mflr r0 +/* 80235574 002324D4 2C 05 00 01 */ cmpwi r5, 1 +/* 80235578 002324D8 90 01 00 24 */ stw r0, 0x24(r1) +/* 8023557C 002324DC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80235580 002324E0 7C 7F 1B 78 */ mr r31, r3 +/* 80235584 002324E4 41 82 00 48 */ beq lbl_802355CC +/* 80235588 002324E8 40 80 00 10 */ bge lbl_80235598 +/* 8023558C 002324EC 2C 05 00 00 */ cmpwi r5, 0 +/* 80235590 002324F0 40 80 00 14 */ bge lbl_802355A4 +/* 80235594 002324F4 48 00 00 8C */ b lbl_80235620 +lbl_80235598: +/* 80235598 002324F8 2C 05 00 03 */ cmpwi r5, 3 +/* 8023559C 002324FC 40 80 00 84 */ bge lbl_80235620 +/* 802355A0 00232500 48 00 00 78 */ b lbl_80235618 +lbl_802355A4: +/* 802355A4 00232504 38 00 00 01 */ li r0, 1 +/* 802355A8 00232508 38 A0 00 00 */ li r5, 0 +/* 802355AC 0023250C 90 1F 03 2C */ stw r0, 0x32c(r31) +/* 802355B0 00232510 38 7F 05 84 */ addi r3, r31, 0x584 +/* 802355B4 00232514 38 80 00 00 */ li r4, 0 +/* 802355B8 00232518 88 1F 07 54 */ lbz r0, 0x754(r31) +/* 802355BC 0023251C 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 802355C0 00232520 98 1F 07 54 */ stb r0, 0x754(r31) +/* 802355C4 00232524 4B F3 FC 61 */ bl SetActive__13CBoneTrackingFb +/* 802355C8 00232528 48 00 00 58 */ b lbl_80235620 +lbl_802355CC: +/* 802355CC 0023252C 3C A0 80 3F */ lis r5, lbl_803E8234@ha +/* 802355D0 00232530 38 C1 00 08 */ addi r6, r1, 8 +/* 802355D4 00232534 39 45 82 34 */ addi r10, r5, lbl_803E8234@l +/* 802355D8 00232538 38 A0 00 03 */ li r5, 3 +/* 802355DC 0023253C 81 2A 00 00 */ lwz r9, 0(r10) +/* 802355E0 00232540 38 E0 00 05 */ li r7, 5 +/* 802355E4 00232544 81 0A 00 04 */ lwz r8, 4(r10) +/* 802355E8 00232548 80 0A 00 08 */ lwz r0, 8(r10) +/* 802355EC 0023254C 91 21 00 08 */ stw r9, 8(r1) +/* 802355F0 00232550 91 01 00 0C */ stw r8, 0xc(r1) +/* 802355F4 00232554 90 01 00 10 */ stw r0, 0x10(r1) +/* 802355F8 00232558 4B E4 71 BD */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi +/* 802355FC 0023255C 80 1F 03 2C */ lwz r0, 0x32c(r31) +/* 80235600 00232560 2C 00 00 02 */ cmpwi r0, 2 +/* 80235604 00232564 40 82 00 1C */ bne lbl_80235620 +/* 80235608 00232568 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8023560C 0023256C 38 80 00 07 */ li r4, 7 +/* 80235610 00232570 4B F0 53 C9 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 80235614 00232574 48 00 00 0C */ b lbl_80235620 +lbl_80235618: +/* 80235618 00232578 38 00 00 00 */ li r0, 0 +/* 8023561C 0023257C 90 1F 03 2C */ stw r0, 0x32c(r31) +lbl_80235620: +/* 80235620 00232580 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80235624 00232584 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80235628 00232588 7C 08 03 A6 */ mtlr r0 +/* 8023562C 0023258C 38 21 00 20 */ addi r1, r1, 0x20 +/* 80235630 00232590 4E 80 00 20 */ blr + +.global GetUp__10CMagdoliteFR13CStateManager9EStateMsgf +GetUp__10CMagdoliteFR13CStateManager9EStateMsgf: +/* 80235634 00232594 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80235638 00232598 7C 08 02 A6 */ mflr r0 +/* 8023563C 0023259C 2C 05 00 01 */ cmpwi r5, 1 +/* 80235640 002325A0 90 01 00 34 */ stw r0, 0x34(r1) +/* 80235644 002325A4 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80235648 002325A8 7C 7F 1B 78 */ mr r31, r3 +/* 8023564C 002325AC 41 82 00 58 */ beq lbl_802356A4 +/* 80235650 002325B0 40 80 00 10 */ bge lbl_80235660 +/* 80235654 002325B4 2C 05 00 00 */ cmpwi r5, 0 +/* 80235658 002325B8 40 80 00 14 */ bge lbl_8023566C +/* 8023565C 002325BC 48 00 00 E8 */ b lbl_80235744 +lbl_80235660: +/* 80235660 002325C0 2C 05 00 03 */ cmpwi r5, 3 +/* 80235664 002325C4 40 80 00 E0 */ bge lbl_80235744 +/* 80235668 002325C8 48 00 00 C8 */ b lbl_80235730 +lbl_8023566C: +/* 8023566C 002325CC 39 00 00 01 */ li r8, 1 +/* 80235670 002325D0 38 E0 00 00 */ li r7, 0 +/* 80235674 002325D4 91 1F 03 2C */ stw r8, 0x32c(r31) +/* 80235678 002325D8 7C 86 23 78 */ mr r6, r4 +/* 8023567C 002325DC 38 80 00 29 */ li r4, 0x29 +/* 80235680 002325E0 38 A0 00 28 */ li r5, 0x28 +/* 80235684 002325E4 88 1F 07 54 */ lbz r0, 0x754(r31) +/* 80235688 002325E8 50 E0 3E 30 */ rlwimi r0, r7, 7, 0x18, 0x18 +/* 8023568C 002325EC 98 1F 07 54 */ stb r0, 0x754(r31) +/* 80235690 002325F0 88 1F 07 54 */ lbz r0, 0x754(r31) +/* 80235694 002325F4 51 00 1F 38 */ rlwimi r0, r8, 3, 0x1c, 0x1c +/* 80235698 002325F8 98 1F 07 54 */ stb r0, 0x754(r31) +/* 8023569C 002325FC 4B E1 EC 19 */ bl AddMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager +/* 802356A0 00232600 48 00 00 A4 */ b lbl_80235744 +lbl_802356A4: +/* 802356A4 00232604 88 1F 07 54 */ lbz r0, 0x754(r31) +/* 802356A8 00232608 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 802356AC 0023260C 41 82 00 38 */ beq lbl_802356E4 +/* 802356B0 00232610 3C A0 80 3F */ lis r5, lbl_803E821C@ha +/* 802356B4 00232614 38 C1 00 14 */ addi r6, r1, 0x14 +/* 802356B8 00232618 39 45 82 1C */ addi r10, r5, lbl_803E821C@l +/* 802356BC 0023261C 38 A0 00 03 */ li r5, 3 +/* 802356C0 00232620 81 2A 00 00 */ lwz r9, 0(r10) +/* 802356C4 00232624 38 E0 00 04 */ li r7, 4 +/* 802356C8 00232628 81 0A 00 04 */ lwz r8, 4(r10) +/* 802356CC 0023262C 80 0A 00 08 */ lwz r0, 8(r10) +/* 802356D0 00232630 91 21 00 14 */ stw r9, 0x14(r1) +/* 802356D4 00232634 91 01 00 18 */ stw r8, 0x18(r1) +/* 802356D8 00232638 90 01 00 1C */ stw r0, 0x1c(r1) +/* 802356DC 0023263C 4B E4 70 D9 */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi +/* 802356E0 00232640 48 00 00 34 */ b lbl_80235714 +lbl_802356E4: +/* 802356E4 00232644 3C A0 80 3F */ lis r5, lbl_803E8228@ha +/* 802356E8 00232648 38 C1 00 08 */ addi r6, r1, 8 +/* 802356EC 0023264C 39 45 82 28 */ addi r10, r5, lbl_803E8228@l +/* 802356F0 00232650 38 A0 00 03 */ li r5, 3 +/* 802356F4 00232654 81 2A 00 00 */ lwz r9, 0(r10) +/* 802356F8 00232658 38 E0 00 00 */ li r7, 0 +/* 802356FC 0023265C 81 0A 00 04 */ lwz r8, 4(r10) +/* 80235700 00232660 80 0A 00 08 */ lwz r0, 8(r10) +/* 80235704 00232664 91 21 00 08 */ stw r9, 8(r1) +/* 80235708 00232668 91 01 00 0C */ stw r8, 0xc(r1) +/* 8023570C 0023266C 90 01 00 10 */ stw r0, 0x10(r1) +/* 80235710 00232670 4B E4 70 A5 */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi +lbl_80235714: +/* 80235714 00232674 80 1F 03 2C */ lwz r0, 0x32c(r31) +/* 80235718 00232678 2C 00 00 02 */ cmpwi r0, 2 +/* 8023571C 0023267C 40 82 00 28 */ bne lbl_80235744 +/* 80235720 00232680 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 80235724 00232684 38 80 00 02 */ li r4, 2 +/* 80235728 00232688 4B F0 52 B1 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 8023572C 0023268C 48 00 00 18 */ b lbl_80235744 +lbl_80235730: +/* 80235730 00232690 38 60 00 00 */ li r3, 0 +/* 80235734 00232694 90 7F 03 2C */ stw r3, 0x32c(r31) +/* 80235738 00232698 88 1F 07 54 */ lbz r0, 0x754(r31) +/* 8023573C 0023269C 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 80235740 002326A0 98 1F 07 54 */ stb r0, 0x754(r31) +lbl_80235744: +/* 80235744 002326A4 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80235748 002326A8 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8023574C 002326AC 7C 08 03 A6 */ mtlr r0 +/* 80235750 002326B0 38 21 00 30 */ addi r1, r1, 0x30 +/* 80235754 002326B4 4E 80 00 20 */ blr + +.global Generate__10CMagdoliteFR13CStateManager9EStateMsgf +Generate__10CMagdoliteFR13CStateManager9EStateMsgf: +/* 80235758 002326B8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8023575C 002326BC 7C 08 02 A6 */ mflr r0 +/* 80235760 002326C0 2C 05 00 01 */ cmpwi r5, 1 +/* 80235764 002326C4 90 01 00 24 */ stw r0, 0x24(r1) +/* 80235768 002326C8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8023576C 002326CC 7C 7F 1B 78 */ mr r31, r3 +/* 80235770 002326D0 41 82 00 3C */ beq lbl_802357AC +/* 80235774 002326D4 40 80 00 10 */ bge lbl_80235784 +/* 80235778 002326D8 2C 05 00 00 */ cmpwi r5, 0 +/* 8023577C 002326DC 40 80 00 14 */ bge lbl_80235790 +/* 80235780 002326E0 48 00 00 80 */ b lbl_80235800 +lbl_80235784: +/* 80235784 002326E4 2C 05 00 03 */ cmpwi r5, 3 +/* 80235788 002326E8 40 80 00 78 */ bge lbl_80235800 +/* 8023578C 002326EC 48 00 00 6C */ b lbl_802357F8 +lbl_80235790: +/* 80235790 002326F0 38 00 00 01 */ li r0, 1 +/* 80235794 002326F4 38 60 00 00 */ li r3, 0 +/* 80235798 002326F8 90 1F 03 2C */ stw r0, 0x32c(r31) +/* 8023579C 002326FC 88 1F 07 54 */ lbz r0, 0x754(r31) +/* 802357A0 00232700 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 802357A4 00232704 98 1F 07 54 */ stb r0, 0x754(r31) +/* 802357A8 00232708 48 00 00 58 */ b lbl_80235800 +lbl_802357AC: +/* 802357AC 0023270C 3C A0 80 3F */ lis r5, lbl_803E8210@ha +/* 802357B0 00232710 38 C1 00 08 */ addi r6, r1, 8 +/* 802357B4 00232714 39 45 82 10 */ addi r10, r5, lbl_803E8210@l +/* 802357B8 00232718 38 A0 00 0C */ li r5, 0xc +/* 802357BC 0023271C 81 2A 00 00 */ lwz r9, 0(r10) +/* 802357C0 00232720 38 E0 00 00 */ li r7, 0 +/* 802357C4 00232724 81 0A 00 04 */ lwz r8, 4(r10) +/* 802357C8 00232728 80 0A 00 08 */ lwz r0, 8(r10) +/* 802357CC 0023272C 91 21 00 08 */ stw r9, 8(r1) +/* 802357D0 00232730 91 01 00 0C */ stw r8, 0xc(r1) +/* 802357D4 00232734 90 01 00 10 */ stw r0, 0x10(r1) +/* 802357D8 00232738 4B E4 6F DD */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi +/* 802357DC 0023273C 80 1F 03 2C */ lwz r0, 0x32c(r31) +/* 802357E0 00232740 2C 00 00 02 */ cmpwi r0, 2 +/* 802357E4 00232744 40 82 00 1C */ bne lbl_80235800 +/* 802357E8 00232748 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 802357EC 0023274C 38 80 00 01 */ li r4, 1 +/* 802357F0 00232750 4B F0 51 E9 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 802357F4 00232754 48 00 00 0C */ b lbl_80235800 +lbl_802357F8: +/* 802357F8 00232758 38 00 00 00 */ li r0, 0 +/* 802357FC 0023275C 90 1F 03 2C */ stw r0, 0x32c(r31) +lbl_80235800: +/* 80235800 00232760 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80235804 00232764 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80235808 00232768 7C 08 03 A6 */ mtlr r0 +/* 8023580C 0023276C 38 21 00 20 */ addi r1, r1, 0x20 +/* 80235810 00232770 4E 80 00 20 */ blr + +.global Retreat__10CMagdoliteFR13CStateManager9EStateMsgf +Retreat__10CMagdoliteFR13CStateManager9EStateMsgf: +/* 80235814 00232774 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80235818 00232778 7C 08 02 A6 */ mflr r0 +/* 8023581C 0023277C 2C 05 00 01 */ cmpwi r5, 1 +/* 80235820 00232780 90 01 00 34 */ stw r0, 0x34(r1) +/* 80235824 00232784 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80235828 00232788 7C 7F 1B 78 */ mr r31, r3 +/* 8023582C 0023278C 41 82 00 90 */ beq lbl_802358BC +/* 80235830 00232790 40 80 00 10 */ bge lbl_80235840 +/* 80235834 00232794 2C 05 00 00 */ cmpwi r5, 0 +/* 80235838 00232798 40 80 00 14 */ bge lbl_8023584C +/* 8023583C 0023279C 48 00 00 E0 */ b lbl_8023591C +lbl_80235840: +/* 80235840 002327A0 2C 05 00 03 */ cmpwi r5, 3 +/* 80235844 002327A4 40 80 00 D8 */ bge lbl_8023591C +/* 80235848 002327A8 48 00 00 C0 */ b lbl_80235908 +lbl_8023584C: +/* 8023584C 002327AC 38 00 00 01 */ li r0, 1 +/* 80235850 002327B0 38 A0 00 00 */ li r5, 0 +/* 80235854 002327B4 90 1F 03 2C */ stw r0, 0x32c(r31) +/* 80235858 002327B8 38 7F 05 84 */ addi r3, r31, 0x584 +/* 8023585C 002327BC 38 80 00 00 */ li r4, 0 +/* 80235860 002327C0 88 1F 07 54 */ lbz r0, 0x754(r31) +/* 80235864 002327C4 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 80235868 002327C8 98 1F 07 54 */ stb r0, 0x754(r31) +/* 8023586C 002327CC 4B F3 F9 B9 */ bl SetActive__13CBoneTrackingFb +/* 80235870 002327D0 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80235874 002327D4 38 00 00 0C */ li r0, 0xc +/* 80235878 002327D8 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l +/* 8023587C 002327DC 90 01 00 0C */ stw r0, 0xc(r1) +/* 80235880 002327E0 38 81 00 08 */ addi r4, r1, 8 +/* 80235884 002327E4 90 61 00 08 */ stw r3, 8(r1) +/* 80235888 002327E8 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8023588C 002327EC 38 63 00 04 */ addi r3, r3, 4 +/* 80235890 002327F0 4B EF BF 29 */ bl DeliverCmd__16CBodyStateCmdMgrFRC13CBodyStateCmd +/* 80235894 002327F4 34 01 00 08 */ addic. r0, r1, 8 +/* 80235898 002327F8 41 82 00 10 */ beq lbl_802358A8 +/* 8023589C 002327FC 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 802358A0 00232800 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 802358A4 00232804 90 01 00 08 */ stw r0, 8(r1) +lbl_802358A8: +/* 802358A8 00232808 88 1F 07 54 */ lbz r0, 0x754(r31) +/* 802358AC 0023280C 38 60 00 01 */ li r3, 1 +/* 802358B0 00232810 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 802358B4 00232814 98 1F 07 54 */ stb r0, 0x754(r31) +/* 802358B8 00232818 48 00 00 64 */ b lbl_8023591C +lbl_802358BC: +/* 802358BC 0023281C 3C A0 80 3F */ lis r5, lbl_803E8204@ha +/* 802358C0 00232820 38 C1 00 10 */ addi r6, r1, 0x10 +/* 802358C4 00232824 39 45 82 04 */ addi r10, r5, lbl_803E8204@l +/* 802358C8 00232828 38 A0 00 0C */ li r5, 0xc +/* 802358CC 0023282C 81 2A 00 00 */ lwz r9, 0(r10) +/* 802358D0 00232830 38 E0 00 01 */ li r7, 1 +/* 802358D4 00232834 81 0A 00 04 */ lwz r8, 4(r10) +/* 802358D8 00232838 80 0A 00 08 */ lwz r0, 8(r10) +/* 802358DC 0023283C 91 21 00 10 */ stw r9, 0x10(r1) +/* 802358E0 00232840 91 01 00 14 */ stw r8, 0x14(r1) +/* 802358E4 00232844 90 01 00 18 */ stw r0, 0x18(r1) +/* 802358E8 00232848 4B E4 6E CD */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi +/* 802358EC 0023284C 80 1F 03 2C */ lwz r0, 0x32c(r31) +/* 802358F0 00232850 2C 00 00 02 */ cmpwi r0, 2 +/* 802358F4 00232854 40 82 00 28 */ bne lbl_8023591C +/* 802358F8 00232858 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 802358FC 0023285C 38 80 00 07 */ li r4, 7 +/* 80235900 00232860 4B F0 50 D9 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 80235904 00232864 48 00 00 18 */ b lbl_8023591C +lbl_80235908: +/* 80235908 00232868 88 1F 07 54 */ lbz r0, 0x754(r31) +/* 8023590C 0023286C 38 60 00 00 */ li r3, 0 +/* 80235910 00232870 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 80235914 00232874 98 1F 07 54 */ stb r0, 0x754(r31) +/* 80235918 00232878 90 7F 03 2C */ stw r3, 0x32c(r31) +lbl_8023591C: +/* 8023591C 0023287C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80235920 00232880 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80235924 00232884 7C 08 03 A6 */ mtlr r0 +/* 80235928 00232888 38 21 00 30 */ addi r1, r1, 0x30 +/* 8023592C 0023288C 4E 80 00 20 */ blr + +.global Flinch__10CMagdoliteFR13CStateManager9EStateMsgf +Flinch__10CMagdoliteFR13CStateManager9EStateMsgf: +/* 80235930 00232890 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80235934 00232894 7C 08 02 A6 */ mflr r0 +/* 80235938 00232898 2C 05 00 01 */ cmpwi r5, 1 +/* 8023593C 0023289C 7C 66 1B 78 */ mr r6, r3 +/* 80235940 002328A0 90 01 00 24 */ stw r0, 0x24(r1) +/* 80235944 002328A4 41 82 00 48 */ beq lbl_8023598C +/* 80235948 002328A8 40 80 00 10 */ bge lbl_80235958 +/* 8023594C 002328AC 2C 05 00 00 */ cmpwi r5, 0 +/* 80235950 002328B0 40 80 00 14 */ bge lbl_80235964 +/* 80235954 002328B4 48 00 00 74 */ b lbl_802359C8 +lbl_80235958: +/* 80235958 002328B8 2C 05 00 03 */ cmpwi r5, 3 +/* 8023595C 002328BC 40 80 00 6C */ bge lbl_802359C8 +/* 80235960 002328C0 48 00 00 60 */ b lbl_802359C0 +lbl_80235964: +/* 80235964 002328C4 38 00 00 01 */ li r0, 1 +/* 80235968 002328C8 38 A0 00 00 */ li r5, 0 +/* 8023596C 002328CC 90 06 03 2C */ stw r0, 0x32c(r6) +/* 80235970 002328D0 38 66 05 84 */ addi r3, r6, 0x584 +/* 80235974 002328D4 38 80 00 00 */ li r4, 0 +/* 80235978 002328D8 88 06 04 00 */ lbz r0, 0x400(r6) +/* 8023597C 002328DC 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 80235980 002328E0 98 06 04 00 */ stb r0, 0x400(r6) +/* 80235984 002328E4 4B F3 F8 A1 */ bl SetActive__13CBoneTrackingFb +/* 80235988 002328E8 48 00 00 40 */ b lbl_802359C8 +lbl_8023598C: +/* 8023598C 002328EC 3C A0 80 3F */ lis r5, lbl_803E81F8@ha +/* 80235990 002328F0 38 C1 00 08 */ addi r6, r1, 8 +/* 80235994 002328F4 39 45 81 F8 */ addi r10, r5, lbl_803E81F8@l +/* 80235998 002328F8 38 A0 00 06 */ li r5, 6 +/* 8023599C 002328FC 81 2A 00 00 */ lwz r9, 0(r10) +/* 802359A0 00232900 38 E0 00 00 */ li r7, 0 +/* 802359A4 00232904 81 0A 00 04 */ lwz r8, 4(r10) +/* 802359A8 00232908 80 0A 00 08 */ lwz r0, 8(r10) +/* 802359AC 0023290C 91 21 00 08 */ stw r9, 8(r1) +/* 802359B0 00232910 91 01 00 0C */ stw r8, 0xc(r1) +/* 802359B4 00232914 90 01 00 10 */ stw r0, 0x10(r1) +/* 802359B8 00232918 4B E4 6D FD */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi +/* 802359BC 0023291C 48 00 00 0C */ b lbl_802359C8 +lbl_802359C0: +/* 802359C0 00232920 38 00 00 00 */ li r0, 0 +/* 802359C4 00232924 90 06 03 2C */ stw r0, 0x32c(r6) +lbl_802359C8: +/* 802359C8 00232928 80 01 00 24 */ lwz r0, 0x24(r1) +/* 802359CC 0023292C 7C 08 03 A6 */ mtlr r0 +/* 802359D0 00232930 38 21 00 20 */ addi r1, r1, 0x20 +/* 802359D4 00232934 4E 80 00 20 */ blr + +.global ProjectileAttack__10CMagdoliteFR13CStateManager9EStateMsgf +ProjectileAttack__10CMagdoliteFR13CStateManager9EStateMsgf: +/* 802359D8 00232938 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 802359DC 0023293C 7C 08 02 A6 */ mflr r0 +/* 802359E0 00232940 2C 05 00 01 */ cmpwi r5, 1 +/* 802359E4 00232944 90 01 00 44 */ stw r0, 0x44(r1) +/* 802359E8 00232948 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 802359EC 0023294C 7C 7F 1B 78 */ mr r31, r3 +/* 802359F0 00232950 93 C1 00 38 */ stw r30, 0x38(r1) +/* 802359F4 00232954 7C 9E 23 78 */ mr r30, r4 +/* 802359F8 00232958 41 82 00 68 */ beq lbl_80235A60 +/* 802359FC 0023295C 40 80 00 10 */ bge lbl_80235A0C +/* 80235A00 00232960 2C 05 00 00 */ cmpwi r5, 0 +/* 80235A04 00232964 40 80 00 14 */ bge lbl_80235A18 +/* 80235A08 00232968 48 00 01 4C */ b lbl_80235B54 +lbl_80235A0C: +/* 80235A0C 0023296C 2C 05 00 03 */ cmpwi r5, 3 +/* 80235A10 00232970 40 80 01 44 */ bge lbl_80235B54 +/* 80235A14 00232974 48 00 00 EC */ b lbl_80235B00 +lbl_80235A18: +/* 80235A18 00232978 38 00 00 01 */ li r0, 1 +/* 80235A1C 0023297C 38 7F 05 84 */ addi r3, r31, 0x584 +/* 80235A20 00232980 90 1F 03 2C */ stw r0, 0x32c(r31) +/* 80235A24 00232984 38 80 00 01 */ li r4, 1 +/* 80235A28 00232988 4B F3 F7 FD */ bl SetActive__13CBoneTrackingFb +/* 80235A2C 0023298C 38 7F 05 84 */ addi r3, r31, 0x584 +/* 80235A30 00232990 38 80 00 01 */ li r4, 1 +/* 80235A34 00232994 4B F3 F7 75 */ bl SetNoHorizontalAim__13CBoneTrackingFb +/* 80235A38 00232998 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80235A3C 0023299C 38 7F 05 84 */ addi r3, r31, 0x584 +/* 80235A40 002329A0 38 81 00 10 */ addi r4, r1, 0x10 +/* 80235A44 002329A4 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80235A48 002329A8 4B F3 F7 D1 */ bl SetTarget__13CBoneTrackingF9TUniqueId +/* 80235A4C 002329AC 88 1F 07 54 */ lbz r0, 0x754(r31) +/* 80235A50 002329B0 38 60 00 01 */ li r3, 1 +/* 80235A54 002329B4 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 80235A58 002329B8 98 1F 07 54 */ stb r0, 0x754(r31) +/* 80235A5C 002329BC 48 00 00 F8 */ b lbl_80235B54 +lbl_80235A60: +/* 80235A60 002329C0 81 83 00 00 */ lwz r12, 0(r3) +/* 80235A64 002329C4 C0 22 B7 20 */ lfs f1, lbl_805AD440@sda21(r2) +/* 80235A68 002329C8 81 8C 01 9C */ lwz r12, 0x19c(r12) +/* 80235A6C 002329CC 7D 89 03 A6 */ mtctr r12 +/* 80235A70 002329D0 4E 80 04 21 */ bctrl +/* 80235A74 002329D4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80235A78 002329D8 41 82 00 40 */ beq lbl_80235AB8 +/* 80235A7C 002329DC 3C 80 80 3F */ lis r4, lbl_803E81E0@ha +/* 80235A80 002329E0 7F E3 FB 78 */ mr r3, r31 +/* 80235A84 002329E4 38 E4 81 E0 */ addi r7, r4, lbl_803E81E0@l +/* 80235A88 002329E8 7F C4 F3 78 */ mr r4, r30 +/* 80235A8C 002329EC 81 27 00 00 */ lwz r9, 0(r7) +/* 80235A90 002329F0 38 C1 00 20 */ addi r6, r1, 0x20 +/* 80235A94 002329F4 81 07 00 04 */ lwz r8, 4(r7) +/* 80235A98 002329F8 38 A0 00 12 */ li r5, 0x12 +/* 80235A9C 002329FC 80 07 00 08 */ lwz r0, 8(r7) +/* 80235AA0 00232A00 38 E0 00 00 */ li r7, 0 +/* 80235AA4 00232A04 91 21 00 20 */ stw r9, 0x20(r1) +/* 80235AA8 00232A08 91 01 00 24 */ stw r8, 0x24(r1) +/* 80235AAC 00232A0C 90 01 00 28 */ stw r0, 0x28(r1) +/* 80235AB0 00232A10 4B E4 6D 05 */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi +/* 80235AB4 00232A14 48 00 00 3C */ b lbl_80235AF0 +lbl_80235AB8: +/* 80235AB8 00232A18 3C 80 80 3F */ lis r4, lbl_803E81EC@ha +/* 80235ABC 00232A1C 7F E3 FB 78 */ mr r3, r31 +/* 80235AC0 00232A20 38 E4 81 EC */ addi r7, r4, lbl_803E81EC@l +/* 80235AC4 00232A24 7F C4 F3 78 */ mr r4, r30 +/* 80235AC8 00232A28 81 27 00 00 */ lwz r9, 0(r7) +/* 80235ACC 00232A2C 38 C1 00 14 */ addi r6, r1, 0x14 +/* 80235AD0 00232A30 81 07 00 04 */ lwz r8, 4(r7) +/* 80235AD4 00232A34 38 A0 00 12 */ li r5, 0x12 +/* 80235AD8 00232A38 80 07 00 08 */ lwz r0, 8(r7) +/* 80235ADC 00232A3C 38 E0 00 01 */ li r7, 1 +/* 80235AE0 00232A40 91 21 00 14 */ stw r9, 0x14(r1) +/* 80235AE4 00232A44 91 01 00 18 */ stw r8, 0x18(r1) +/* 80235AE8 00232A48 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80235AEC 00232A4C 4B E4 6C C9 */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi +lbl_80235AF0: +/* 80235AF0 00232A50 38 7F 05 84 */ addi r3, r31, 0x584 +/* 80235AF4 00232A54 38 9F 07 10 */ addi r4, r31, 0x710 +/* 80235AF8 00232A58 4B F3 F6 C1 */ bl SetTargetPosition__13CBoneTrackingFRC9CVector3f +/* 80235AFC 00232A5C 48 00 00 58 */ b lbl_80235B54 +lbl_80235B00: +/* 80235B00 00232A60 38 00 00 00 */ li r0, 0 +/* 80235B04 00232A64 38 A0 00 00 */ li r5, 0 +/* 80235B08 00232A68 90 1F 03 2C */ stw r0, 0x32c(r31) +/* 80235B0C 00232A6C 4B FF EF 65 */ bl sub_80234a70 +/* 80235B10 00232A70 38 7F 05 84 */ addi r3, r31, 0x584 +/* 80235B14 00232A74 38 80 00 00 */ li r4, 0 +/* 80235B18 00232A78 4B F3 F7 0D */ bl SetActive__13CBoneTrackingFb +/* 80235B1C 00232A7C 38 7F 05 84 */ addi r3, r31, 0x584 +/* 80235B20 00232A80 38 80 00 00 */ li r4, 0 +/* 80235B24 00232A84 4B F3 F6 85 */ bl SetNoHorizontalAim__13CBoneTrackingFb +/* 80235B28 00232A88 88 1F 07 54 */ lbz r0, 0x754(r31) +/* 80235B2C 00232A8C 38 60 00 00 */ li r3, 0 +/* 80235B30 00232A90 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 80235B34 00232A94 38 7F 05 84 */ addi r3, r31, 0x584 +/* 80235B38 00232A98 98 1F 07 54 */ stb r0, 0x754(r31) +/* 80235B3C 00232A9C 38 81 00 0C */ addi r4, r1, 0xc +/* 80235B40 00232AA0 80 BE 08 4C */ lwz r5, 0x84c(r30) +/* 80235B44 00232AA4 A0 05 00 08 */ lhz r0, 8(r5) +/* 80235B48 00232AA8 B0 01 00 08 */ sth r0, 8(r1) +/* 80235B4C 00232AAC B0 01 00 0C */ sth r0, 0xc(r1) +/* 80235B50 00232AB0 4B F3 F6 C9 */ bl SetTarget__13CBoneTrackingF9TUniqueId +lbl_80235B54: +/* 80235B54 00232AB4 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80235B58 00232AB8 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 80235B5C 00232ABC 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 80235B60 00232AC0 7C 08 03 A6 */ mtlr r0 +/* 80235B64 00232AC4 38 21 00 40 */ addi r1, r1, 0x40 +/* 80235B68 00232AC8 4E 80 00 20 */ blr + +.global Attack__10CMagdoliteFR13CStateManager9EStateMsgf +Attack__10CMagdoliteFR13CStateManager9EStateMsgf: +/* 80235B6C 00232ACC 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 80235B70 00232AD0 7C 08 02 A6 */ mflr r0 +/* 80235B74 00232AD4 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 80235B78 00232AD8 DB E1 00 E0 */ stfd f31, 0xe0(r1) +/* 80235B7C 00232ADC F3 E1 00 E8 */ psq_st f31, 232(r1), 0, qr0 +/* 80235B80 00232AE0 93 E1 00 DC */ stw r31, 0xdc(r1) +/* 80235B84 00232AE4 93 C1 00 D8 */ stw r30, 0xd8(r1) +/* 80235B88 00232AE8 FF E0 08 90 */ fmr f31, f1 +/* 80235B8C 00232AEC 2C 05 00 01 */ cmpwi r5, 1 +/* 80235B90 00232AF0 7C 7F 1B 78 */ mr r31, r3 +/* 80235B94 00232AF4 7C 9E 23 78 */ mr r30, r4 +/* 80235B98 00232AF8 41 82 01 78 */ beq lbl_80235D10 +/* 80235B9C 00232AFC 40 80 00 10 */ bge lbl_80235BAC +/* 80235BA0 00232B00 2C 05 00 00 */ cmpwi r5, 0 +/* 80235BA4 00232B04 40 80 00 14 */ bge lbl_80235BB8 +/* 80235BA8 00232B08 48 00 03 64 */ b lbl_80235F0C +lbl_80235BAC: +/* 80235BAC 00232B0C 2C 05 00 03 */ cmpwi r5, 3 +/* 80235BB0 00232B10 40 80 03 5C */ bge lbl_80235F0C +/* 80235BB4 00232B14 48 00 02 CC */ b lbl_80235E80 +lbl_80235BB8: +/* 80235BB8 00232B18 38 00 00 01 */ li r0, 1 +/* 80235BBC 00232B1C 38 7F 05 84 */ addi r3, r31, 0x584 +/* 80235BC0 00232B20 90 1F 03 2C */ stw r0, 0x32c(r31) +/* 80235BC4 00232B24 38 80 00 00 */ li r4, 0 +/* 80235BC8 00232B28 4B F3 F6 5D */ bl SetActive__13CBoneTrackingFb +/* 80235BCC 00232B2C 80 8D 96 50 */ lwz r4, lbl_805A8210@sda21(r13) +/* 80235BD0 00232B30 38 61 00 70 */ addi r3, r1, 0x70 +/* 80235BD4 00232B34 4B DC F0 E5 */ bl string_l__4rstlFPCc +/* 80235BD8 00232B38 80 DE 08 4C */ lwz r6, 0x84c(r30) +/* 80235BDC 00232B3C 7F E4 FB 78 */ mr r4, r31 +/* 80235BE0 00232B40 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 80235BE4 00232B44 38 A1 00 70 */ addi r5, r1, 0x70 +/* 80235BE8 00232B48 C0 46 00 60 */ lfs f2, 0x60(r6) +/* 80235BEC 00232B4C C0 26 00 50 */ lfs f1, 0x50(r6) +/* 80235BF0 00232B50 C0 06 00 40 */ lfs f0, 0x40(r6) +/* 80235BF4 00232B54 D0 21 00 68 */ stfs f1, 0x68(r1) +/* 80235BF8 00232B58 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 80235BFC 00232B5C D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 80235C00 00232B60 4B E4 2D 79 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80235C04 00232B64 C0 A1 00 D0 */ lfs f5, 0xd0(r1) +/* 80235C08 00232B68 38 61 00 70 */ addi r3, r1, 0x70 +/* 80235C0C 00232B6C C0 81 00 C0 */ lfs f4, 0xc0(r1) +/* 80235C10 00232B70 C0 61 00 B0 */ lfs f3, 0xb0(r1) +/* 80235C14 00232B74 C0 41 00 68 */ lfs f2, 0x68(r1) +/* 80235C18 00232B78 C0 21 00 6C */ lfs f1, 0x6c(r1) +/* 80235C1C 00232B7C C0 01 00 64 */ lfs f0, 0x64(r1) +/* 80235C20 00232B80 EC 44 10 28 */ fsubs f2, f4, f2 +/* 80235C24 00232B84 EF E5 08 28 */ fsubs f31, f5, f1 +/* 80235C28 00232B88 D0 61 00 80 */ stfs f3, 0x80(r1) +/* 80235C2C 00232B8C EC 03 00 28 */ fsubs f0, f3, f0 +/* 80235C30 00232B90 D0 81 00 84 */ stfs f4, 0x84(r1) +/* 80235C34 00232B94 D0 A1 00 88 */ stfs f5, 0x88(r1) +/* 80235C38 00232B98 D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 80235C3C 00232B9C D0 41 00 90 */ stfs f2, 0x90(r1) +/* 80235C40 00232BA0 D3 E1 00 94 */ stfs f31, 0x94(r1) +/* 80235C44 00232BA4 48 10 7E 9D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80235C48 00232BA8 C0 3F 07 4C */ lfs f1, 0x74c(r31) +/* 80235C4C 00232BAC C0 02 B7 20 */ lfs f0, lbl_805AD440@sda21(r2) +/* 80235C50 00232BB0 EC BF 08 28 */ fsubs f5, f31, f1 +/* 80235C54 00232BB4 FC 05 00 40 */ fcmpo cr0, f5, f0 +/* 80235C58 00232BB8 40 80 00 0C */ bge lbl_80235C64 +/* 80235C5C 00232BBC FC A0 00 90 */ fmr f5, f0 +/* 80235C60 00232BC0 48 00 00 14 */ b lbl_80235C74 +lbl_80235C64: +/* 80235C64 00232BC4 C0 1F 07 48 */ lfs f0, 0x748(r31) +/* 80235C68 00232BC8 FC 05 00 40 */ fcmpo cr0, f5, f0 +/* 80235C6C 00232BCC 40 81 00 08 */ ble lbl_80235C74 +/* 80235C70 00232BD0 FC A0 00 90 */ fmr f5, f0 +lbl_80235C74: +/* 80235C74 00232BD4 C0 62 B7 20 */ lfs f3, lbl_805AD440@sda21(r2) +/* 80235C78 00232BD8 C0 1F 07 1C */ lfs f0, 0x71c(r31) +/* 80235C7C 00232BDC C0 3F 07 20 */ lfs f1, 0x720(r31) +/* 80235C80 00232BE0 C0 5F 07 24 */ lfs f2, 0x724(r31) +/* 80235C84 00232BE4 EC 00 18 28 */ fsubs f0, f0, f3 +/* 80235C88 00232BE8 EC 81 18 28 */ fsubs f4, f1, f3 +/* 80235C8C 00232BEC C0 22 B7 38 */ lfs f1, lbl_805AD458@sda21(r2) +/* 80235C90 00232BF0 EC 42 28 28 */ fsubs f2, f2, f5 +/* 80235C94 00232BF4 D0 1F 07 28 */ stfs f0, 0x728(r31) +/* 80235C98 00232BF8 D0 9F 07 2C */ stfs f4, 0x72c(r31) +/* 80235C9C 00232BFC D0 5F 07 30 */ stfs f2, 0x730(r31) +/* 80235CA0 00232C00 D0 7F 07 40 */ stfs f3, 0x740(r31) +/* 80235CA4 00232C04 D0 7F 07 34 */ stfs f3, 0x734(r31) +/* 80235CA8 00232C08 D0 BF 07 38 */ stfs f5, 0x738(r31) +/* 80235CAC 00232C0C C0 1F 07 38 */ lfs f0, 0x738(r31) +/* 80235CB0 00232C10 C0 5F 07 44 */ lfs f2, 0x744(r31) +/* 80235CB4 00232C14 EC 21 00 32 */ fmuls f1, f1, f0 +/* 80235CB8 00232C18 EC 02 00 B2 */ fmuls f0, f2, f2 +/* 80235CBC 00232C1C EC 01 00 24 */ fdivs f0, f1, f0 +/* 80235CC0 00232C20 D0 1F 07 3C */ stfs f0, 0x73c(r31) +/* 80235CC4 00232C24 C0 7F 00 60 */ lfs f3, 0x60(r31) +/* 80235CC8 00232C28 C0 1F 07 30 */ lfs f0, 0x730(r31) +/* 80235CCC 00232C2C C0 5F 00 50 */ lfs f2, 0x50(r31) +/* 80235CD0 00232C30 C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 80235CD4 00232C34 FC 00 18 40 */ fcmpo cr0, f0, f3 +/* 80235CD8 00232C38 D0 41 00 5C */ stfs f2, 0x5c(r1) +/* 80235CDC 00232C3C D0 21 00 58 */ stfs f1, 0x58(r1) +/* 80235CE0 00232C40 D0 61 00 60 */ stfs f3, 0x60(r1) +/* 80235CE4 00232C44 40 80 00 10 */ bge lbl_80235CF4 +/* 80235CE8 00232C48 38 00 00 02 */ li r0, 2 +/* 80235CEC 00232C4C 90 1F 07 50 */ stw r0, 0x750(r31) +/* 80235CF0 00232C50 48 00 00 0C */ b lbl_80235CFC +lbl_80235CF4: +/* 80235CF4 00232C54 38 00 00 01 */ li r0, 1 +/* 80235CF8 00232C58 90 1F 07 50 */ stw r0, 0x750(r31) +lbl_80235CFC: +/* 80235CFC 00232C5C 88 1F 07 54 */ lbz r0, 0x754(r31) +/* 80235D00 00232C60 38 60 00 01 */ li r3, 1 +/* 80235D04 00232C64 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 80235D08 00232C68 98 1F 07 54 */ stb r0, 0x754(r31) +/* 80235D0C 00232C6C 48 00 02 00 */ b lbl_80235F0C +lbl_80235D10: +/* 80235D10 00232C70 3C A0 80 3F */ lis r5, lbl_803E81D4@ha +/* 80235D14 00232C74 38 C1 00 4C */ addi r6, r1, 0x4c +/* 80235D18 00232C78 39 45 81 D4 */ addi r10, r5, lbl_803E81D4@l +/* 80235D1C 00232C7C 38 A0 00 07 */ li r5, 7 +/* 80235D20 00232C80 81 2A 00 00 */ lwz r9, 0(r10) +/* 80235D24 00232C84 38 E0 00 01 */ li r7, 1 +/* 80235D28 00232C88 81 0A 00 04 */ lwz r8, 4(r10) +/* 80235D2C 00232C8C 80 0A 00 08 */ lwz r0, 8(r10) +/* 80235D30 00232C90 91 21 00 4C */ stw r9, 0x4c(r1) +/* 80235D34 00232C94 91 01 00 50 */ stw r8, 0x50(r1) +/* 80235D38 00232C98 90 01 00 54 */ stw r0, 0x54(r1) +/* 80235D3C 00232C9C 4B E4 6A 79 */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi +/* 80235D40 00232CA0 80 BE 08 4C */ lwz r5, 0x84c(r30) +/* 80235D44 00232CA4 38 61 00 40 */ addi r3, r1, 0x40 +/* 80235D48 00232CA8 C0 1F 00 60 */ lfs f0, 0x60(r31) +/* 80235D4C 00232CAC 38 81 00 98 */ addi r4, r1, 0x98 +/* 80235D50 00232CB0 C0 25 00 60 */ lfs f1, 0x60(r5) +/* 80235D54 00232CB4 C0 85 00 50 */ lfs f4, 0x50(r5) +/* 80235D58 00232CB8 C0 7F 00 50 */ lfs f3, 0x50(r31) +/* 80235D5C 00232CBC EC A1 00 28 */ fsubs f5, f1, f0 +/* 80235D60 00232CC0 C0 45 00 40 */ lfs f2, 0x40(r5) +/* 80235D64 00232CC4 C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 80235D68 00232CC8 EC 64 18 28 */ fsubs f3, f4, f3 +/* 80235D6C 00232CCC C0 02 B7 20 */ lfs f0, lbl_805AD440@sda21(r2) +/* 80235D70 00232CD0 EC 22 08 28 */ fsubs f1, f2, f1 +/* 80235D74 00232CD4 D0 A1 00 A0 */ stfs f5, 0xa0(r1) +/* 80235D78 00232CD8 D0 61 00 9C */ stfs f3, 0x9c(r1) +/* 80235D7C 00232CDC D0 21 00 98 */ stfs f1, 0x98(r1) +/* 80235D80 00232CE0 D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 80235D84 00232CE4 48 0D EA CD */ bl AsNormalized__9CVector3fCFv +/* 80235D88 00232CE8 C0 41 00 40 */ lfs f2, 0x40(r1) +/* 80235D8C 00232CEC 38 61 00 34 */ addi r3, r1, 0x34 +/* 80235D90 00232CF0 C0 21 00 44 */ lfs f1, 0x44(r1) +/* 80235D94 00232CF4 38 81 00 98 */ addi r4, r1, 0x98 +/* 80235D98 00232CF8 C0 01 00 48 */ lfs f0, 0x48(r1) +/* 80235D9C 00232CFC D0 41 00 98 */ stfs f2, 0x98(r1) +/* 80235DA0 00232D00 D0 21 00 9C */ stfs f1, 0x9c(r1) +/* 80235DA4 00232D04 D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 80235DA8 00232D08 C0 5F 00 58 */ lfs f2, 0x58(r31) +/* 80235DAC 00232D0C C0 3F 00 48 */ lfs f1, 0x48(r31) +/* 80235DB0 00232D10 C0 1F 00 38 */ lfs f0, 0x38(r31) +/* 80235DB4 00232D14 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 80235DB8 00232D18 D0 21 00 38 */ stfs f1, 0x38(r1) +/* 80235DBC 00232D1C D0 41 00 3C */ stfs f2, 0x3c(r1) +/* 80235DC0 00232D20 48 0D E8 71 */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f +/* 80235DC4 00232D24 D0 21 00 08 */ stfs f1, 8(r1) +/* 80235DC8 00232D28 C0 01 00 9C */ lfs f0, 0x9c(r1) +/* 80235DCC 00232D2C C0 BF 00 44 */ lfs f5, 0x44(r31) +/* 80235DD0 00232D30 C0 9F 00 34 */ lfs f4, 0x34(r31) +/* 80235DD4 00232D34 EC 05 00 32 */ fmuls f0, f5, f0 +/* 80235DD8 00232D38 C0 41 00 98 */ lfs f2, 0x98(r1) +/* 80235DDC 00232D3C C0 DF 00 54 */ lfs f6, 0x54(r31) +/* 80235DE0 00232D40 C0 61 00 A0 */ lfs f3, 0xa0(r1) +/* 80235DE4 00232D44 EC 44 00 BA */ fmadds f2, f4, f2, f0 +/* 80235DE8 00232D48 C0 02 B7 20 */ lfs f0, lbl_805AD440@sda21(r2) +/* 80235DEC 00232D4C D0 81 00 28 */ stfs f4, 0x28(r1) +/* 80235DF0 00232D50 EC 46 10 FA */ fmadds f2, f6, f3, f2 +/* 80235DF4 00232D54 D0 A1 00 2C */ stfs f5, 0x2c(r1) +/* 80235DF8 00232D58 D0 C1 00 30 */ stfs f6, 0x30(r1) +/* 80235DFC 00232D5C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80235E00 00232D60 40 81 00 14 */ ble lbl_80235E14 +/* 80235E04 00232D64 FC 20 08 18 */ frsp f1, f1 +/* 80235E08 00232D68 C0 02 B7 3C */ lfs f0, lbl_805AD45C@sda21(r2) +/* 80235E0C 00232D6C EC 01 00 32 */ fmuls f0, f1, f0 +/* 80235E10 00232D70 D0 01 00 08 */ stfs f0, 8(r1) +lbl_80235E14: +/* 80235E14 00232D74 C0 22 B7 40 */ lfs f1, lbl_805AD460@sda21(r2) +/* 80235E18 00232D78 C0 01 00 08 */ lfs f0, 8(r1) +/* 80235E1C 00232D7C C0 5F 03 B8 */ lfs f2, 0x3b8(r31) +/* 80235E20 00232D80 EC 01 00 32 */ fmuls f0, f1, f0 +/* 80235E24 00232D84 FC 00 10 40 */ fcmpo cr0, f0, f2 +/* 80235E28 00232D88 40 81 00 14 */ ble lbl_80235E3C +/* 80235E2C 00232D8C C0 02 B7 44 */ lfs f0, lbl_805AD464@sda21(r2) +/* 80235E30 00232D90 EC 00 00 B2 */ fmuls f0, f0, f2 +/* 80235E34 00232D94 D0 01 00 08 */ stfs f0, 8(r1) +/* 80235E38 00232D98 48 00 00 1C */ b lbl_80235E54 +lbl_80235E3C: +/* 80235E3C 00232D9C FC 20 10 50 */ fneg f1, f2 +/* 80235E40 00232DA0 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80235E44 00232DA4 40 80 00 10 */ bge lbl_80235E54 +/* 80235E48 00232DA8 C0 02 B7 44 */ lfs f0, lbl_805AD464@sda21(r2) +/* 80235E4C 00232DAC EC 00 00 72 */ fmuls f0, f0, f1 +/* 80235E50 00232DB0 D0 01 00 08 */ stfs f0, 8(r1) +lbl_80235E54: +/* 80235E54 00232DB4 C0 01 00 08 */ lfs f0, 8(r1) +/* 80235E58 00232DB8 38 61 00 18 */ addi r3, r1, 0x18 +/* 80235E5C 00232DBC 38 81 00 08 */ addi r4, r1, 8 +/* 80235E60 00232DC0 EC 00 07 F2 */ fmuls f0, f0, f31 +/* 80235E64 00232DC4 D0 01 00 08 */ stfs f0, 8(r1) +/* 80235E68 00232DC8 48 0D B2 91 */ bl ZRotation__11CQuaternionFRC9CRelAngle +/* 80235E6C 00232DCC FC 20 F8 90 */ fmr f1, f31 +/* 80235E70 00232DD0 7F E3 FB 78 */ mr r3, r31 +/* 80235E74 00232DD4 38 81 00 18 */ addi r4, r1, 0x18 +/* 80235E78 00232DD8 4B EE 4E E5 */ bl RotateInOneFrameOR__13CPhysicsActorFRC11CQuaternionf +/* 80235E7C 00232DDC 48 00 00 90 */ b lbl_80235F0C +lbl_80235E80: +/* 80235E80 00232DE0 38 00 00 00 */ li r0, 0 +/* 80235E84 00232DE4 38 A0 00 00 */ li r5, 0 +/* 80235E88 00232DE8 90 1F 03 2C */ stw r0, 0x32c(r31) +/* 80235E8C 00232DEC 4B FF EB E5 */ bl sub_80234a70 +/* 80235E90 00232DF0 38 00 00 01 */ li r0, 1 +/* 80235E94 00232DF4 C0 02 B7 20 */ lfs f0, lbl_805AD440@sda21(r2) +/* 80235E98 00232DF8 90 1F 07 50 */ stw r0, 0x750(r31) +/* 80235E9C 00232DFC 38 60 00 00 */ li r3, 0 +/* 80235EA0 00232E00 C0 22 B7 38 */ lfs f1, lbl_805AD458@sda21(r2) +/* 80235EA4 00232E04 C0 5F 07 1C */ lfs f2, 0x71c(r31) +/* 80235EA8 00232E08 D0 5F 07 28 */ stfs f2, 0x728(r31) +/* 80235EAC 00232E0C C0 5F 07 20 */ lfs f2, 0x720(r31) +/* 80235EB0 00232E10 D0 5F 07 2C */ stfs f2, 0x72c(r31) +/* 80235EB4 00232E14 C0 5F 07 24 */ lfs f2, 0x724(r31) +/* 80235EB8 00232E18 D0 5F 07 30 */ stfs f2, 0x730(r31) +/* 80235EBC 00232E1C D0 1F 07 40 */ stfs f0, 0x740(r31) +/* 80235EC0 00232E20 D0 1F 07 34 */ stfs f0, 0x734(r31) +/* 80235EC4 00232E24 C0 9F 00 60 */ lfs f4, 0x60(r31) +/* 80235EC8 00232E28 C0 1F 07 30 */ lfs f0, 0x730(r31) +/* 80235ECC 00232E2C C0 7F 00 50 */ lfs f3, 0x50(r31) +/* 80235ED0 00232E30 C0 5F 00 40 */ lfs f2, 0x40(r31) +/* 80235ED4 00232E34 EC 00 20 28 */ fsubs f0, f0, f4 +/* 80235ED8 00232E38 D0 61 00 10 */ stfs f3, 0x10(r1) +/* 80235EDC 00232E3C D0 1F 07 38 */ stfs f0, 0x738(r31) +/* 80235EE0 00232E40 C0 1F 07 38 */ lfs f0, 0x738(r31) +/* 80235EE4 00232E44 C0 7F 07 44 */ lfs f3, 0x744(r31) +/* 80235EE8 00232E48 EC 21 00 32 */ fmuls f1, f1, f0 +/* 80235EEC 00232E4C D0 41 00 0C */ stfs f2, 0xc(r1) +/* 80235EF0 00232E50 EC 03 00 F2 */ fmuls f0, f3, f3 +/* 80235EF4 00232E54 D0 81 00 14 */ stfs f4, 0x14(r1) +/* 80235EF8 00232E58 EC 01 00 24 */ fdivs f0, f1, f0 +/* 80235EFC 00232E5C D0 1F 07 3C */ stfs f0, 0x73c(r31) +/* 80235F00 00232E60 88 1F 07 54 */ lbz r0, 0x754(r31) +/* 80235F04 00232E64 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 80235F08 00232E68 98 1F 07 54 */ stb r0, 0x754(r31) +lbl_80235F0C: +/* 80235F0C 00232E6C E3 E1 00 E8 */ psq_l f31, 232(r1), 0, qr0 +/* 80235F10 00232E70 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 80235F14 00232E74 CB E1 00 E0 */ lfd f31, 0xe0(r1) +/* 80235F18 00232E78 83 E1 00 DC */ lwz r31, 0xdc(r1) +/* 80235F1C 00232E7C 83 C1 00 D8 */ lwz r30, 0xd8(r1) +/* 80235F20 00232E80 7C 08 03 A6 */ mtlr r0 +/* 80235F24 00232E84 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 80235F28 00232E88 4E 80 00 20 */ blr + +.global Taunt__10CMagdoliteFR13CStateManager9EStateMsgf +Taunt__10CMagdoliteFR13CStateManager9EStateMsgf: +/* 80235F2C 00232E8C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80235F30 00232E90 7C 08 02 A6 */ mflr r0 +/* 80235F34 00232E94 2C 05 00 01 */ cmpwi r5, 1 +/* 80235F38 00232E98 7C 66 1B 78 */ mr r6, r3 +/* 80235F3C 00232E9C 90 01 00 24 */ stw r0, 0x24(r1) +/* 80235F40 00232EA0 41 82 00 38 */ beq lbl_80235F78 +/* 80235F44 00232EA4 40 80 00 10 */ bge lbl_80235F54 +/* 80235F48 00232EA8 2C 05 00 00 */ cmpwi r5, 0 +/* 80235F4C 00232EAC 40 80 00 14 */ bge lbl_80235F60 +/* 80235F50 00232EB0 48 00 00 70 */ b lbl_80235FC0 +lbl_80235F54: +/* 80235F54 00232EB4 2C 05 00 03 */ cmpwi r5, 3 +/* 80235F58 00232EB8 40 80 00 68 */ bge lbl_80235FC0 +/* 80235F5C 00232EBC 48 00 00 50 */ b lbl_80235FAC +lbl_80235F60: +/* 80235F60 00232EC0 38 00 00 01 */ li r0, 1 +/* 80235F64 00232EC4 38 66 05 84 */ addi r3, r6, 0x584 +/* 80235F68 00232EC8 90 06 03 2C */ stw r0, 0x32c(r6) +/* 80235F6C 00232ECC 38 80 00 01 */ li r4, 1 +/* 80235F70 00232ED0 4B F3 F2 B5 */ bl SetActive__13CBoneTrackingFb +/* 80235F74 00232ED4 48 00 00 4C */ b lbl_80235FC0 +lbl_80235F78: +/* 80235F78 00232ED8 3C A0 80 3F */ lis r5, lbl_803E81C8@ha +/* 80235F7C 00232EDC 38 C1 00 08 */ addi r6, r1, 8 +/* 80235F80 00232EE0 39 45 81 C8 */ addi r10, r5, lbl_803E81C8@l +/* 80235F84 00232EE4 38 A0 00 10 */ li r5, 0x10 +/* 80235F88 00232EE8 81 2A 00 00 */ lwz r9, 0(r10) +/* 80235F8C 00232EEC 38 E0 00 01 */ li r7, 1 +/* 80235F90 00232EF0 81 0A 00 04 */ lwz r8, 4(r10) +/* 80235F94 00232EF4 80 0A 00 08 */ lwz r0, 8(r10) +/* 80235F98 00232EF8 91 21 00 08 */ stw r9, 8(r1) +/* 80235F9C 00232EFC 91 01 00 0C */ stw r8, 0xc(r1) +/* 80235FA0 00232F00 90 01 00 10 */ stw r0, 0x10(r1) +/* 80235FA4 00232F04 4B E4 68 11 */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi +/* 80235FA8 00232F08 48 00 00 18 */ b lbl_80235FC0 +lbl_80235FAC: +/* 80235FAC 00232F0C 38 00 00 00 */ li r0, 0 +/* 80235FB0 00232F10 38 66 05 84 */ addi r3, r6, 0x584 +/* 80235FB4 00232F14 90 06 03 2C */ stw r0, 0x32c(r6) +/* 80235FB8 00232F18 38 80 00 00 */ li r4, 0 +/* 80235FBC 00232F1C 4B F3 F2 69 */ bl SetActive__13CBoneTrackingFb +lbl_80235FC0: +/* 80235FC0 00232F20 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80235FC4 00232F24 7C 08 03 A6 */ mtlr r0 +/* 80235FC8 00232F28 38 21 00 20 */ addi r1, r1, 0x20 +/* 80235FCC 00232F2C 4E 80 00 20 */ blr + +.global Active__10CMagdoliteFR13CStateManager9EStateMsgf +Active__10CMagdoliteFR13CStateManager9EStateMsgf: +/* 80235FD0 00232F30 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 80235FD4 00232F34 7C 08 02 A6 */ mflr r0 +/* 80235FD8 00232F38 90 01 00 84 */ stw r0, 0x84(r1) +/* 80235FDC 00232F3C DB E1 00 70 */ stfd f31, 0x70(r1) +/* 80235FE0 00232F40 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 +/* 80235FE4 00232F44 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 80235FE8 00232F48 93 C1 00 68 */ stw r30, 0x68(r1) +/* 80235FEC 00232F4C 2C 05 00 01 */ cmpwi r5, 1 +/* 80235FF0 00232F50 7C 7E 1B 78 */ mr r30, r3 +/* 80235FF4 00232F54 7C 9F 23 78 */ mr r31, r4 +/* 80235FF8 00232F58 41 82 00 7C */ beq lbl_80236074 +/* 80235FFC 00232F5C 40 80 00 10 */ bge lbl_8023600C +/* 80236000 00232F60 2C 05 00 00 */ cmpwi r5, 0 +/* 80236004 00232F64 40 80 00 14 */ bge lbl_80236018 +/* 80236008 00232F68 48 00 01 78 */ b lbl_80236180 +lbl_8023600C: +/* 8023600C 00232F6C 2C 05 00 03 */ cmpwi r5, 3 +/* 80236010 00232F70 40 80 01 70 */ bge lbl_80236180 +/* 80236014 00232F74 48 00 01 50 */ b lbl_80236164 +lbl_80236018: +/* 80236018 00232F78 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8023601C 00232F7C 38 80 00 02 */ li r4, 2 +/* 80236020 00232F80 4B F0 49 B9 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 80236024 00232F84 38 7E 05 84 */ addi r3, r30, 0x584 +/* 80236028 00232F88 38 80 00 01 */ li r4, 1 +/* 8023602C 00232F8C 4B F3 F1 F9 */ bl SetActive__13CBoneTrackingFb +/* 80236030 00232F90 80 BF 08 4C */ lwz r5, 0x84c(r31) +/* 80236034 00232F94 38 7E 05 84 */ addi r3, r30, 0x584 +/* 80236038 00232F98 38 81 00 0C */ addi r4, r1, 0xc +/* 8023603C 00232F9C A0 05 00 08 */ lhz r0, 8(r5) +/* 80236040 00232FA0 B0 01 00 08 */ sth r0, 8(r1) +/* 80236044 00232FA4 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80236048 00232FA8 4B F3 F1 D1 */ bl SetTarget__13CBoneTrackingF9TUniqueId +/* 8023604C 00232FAC 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 80236050 00232FB0 38 60 00 00 */ li r3, 0 +/* 80236054 00232FB4 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80236058 00232FB8 98 1E 04 00 */ stb r0, 0x400(r30) +/* 8023605C 00232FBC 88 1E 07 54 */ lbz r0, 0x754(r30) +/* 80236060 00232FC0 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 80236064 00232FC4 98 1E 07 54 */ stb r0, 0x754(r30) +/* 80236068 00232FC8 C0 1E 05 68 */ lfs f0, 0x568(r30) +/* 8023606C 00232FCC D0 1E 03 40 */ stfs f0, 0x340(r30) +/* 80236070 00232FD0 48 00 01 10 */ b lbl_80236180 +lbl_80236074: +/* 80236074 00232FD4 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 80236078 00232FD8 38 61 00 34 */ addi r3, r1, 0x34 +/* 8023607C 00232FDC C0 1E 00 60 */ lfs f0, 0x60(r30) +/* 80236080 00232FE0 C0 24 00 60 */ lfs f1, 0x60(r4) +/* 80236084 00232FE4 C0 84 00 50 */ lfs f4, 0x50(r4) +/* 80236088 00232FE8 C0 7E 00 50 */ lfs f3, 0x50(r30) +/* 8023608C 00232FEC EC A1 00 28 */ fsubs f5, f1, f0 +/* 80236090 00232FF0 C0 44 00 40 */ lfs f2, 0x40(r4) +/* 80236094 00232FF4 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 80236098 00232FF8 EC 64 18 28 */ fsubs f3, f4, f3 +/* 8023609C 00232FFC C0 02 B7 20 */ lfs f0, lbl_805AD440@sda21(r2) +/* 802360A0 00233000 EC 22 08 28 */ fsubs f1, f2, f1 +/* 802360A4 00233004 D0 A1 00 3C */ stfs f5, 0x3c(r1) +/* 802360A8 00233008 D0 61 00 38 */ stfs f3, 0x38(r1) +/* 802360AC 0023300C D0 21 00 34 */ stfs f1, 0x34(r1) +/* 802360B0 00233010 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 802360B4 00233014 48 0D E6 45 */ bl CanBeNormalized__9CVector3fCFv +/* 802360B8 00233018 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 802360BC 0023301C 41 82 00 C4 */ beq lbl_80236180 +/* 802360C0 00233020 38 61 00 28 */ addi r3, r1, 0x28 +/* 802360C4 00233024 38 81 00 34 */ addi r4, r1, 0x34 +/* 802360C8 00233028 48 0D E7 89 */ bl AsNormalized__9CVector3fCFv +/* 802360CC 0023302C C0 9E 00 48 */ lfs f4, 0x48(r30) +/* 802360D0 00233030 C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 802360D4 00233034 C0 7E 00 38 */ lfs f3, 0x38(r30) +/* 802360D8 00233038 EC 04 00 32 */ fmuls f0, f4, f0 +/* 802360DC 0023303C C0 21 00 28 */ lfs f1, 0x28(r1) +/* 802360E0 00233040 C0 BE 00 58 */ lfs f5, 0x58(r30) +/* 802360E4 00233044 C0 41 00 30 */ lfs f2, 0x30(r1) +/* 802360E8 00233048 EC 23 00 7A */ fmadds f1, f3, f1, f0 +/* 802360EC 0023304C C0 1E 05 78 */ lfs f0, 0x578(r30) +/* 802360F0 00233050 D0 61 00 1C */ stfs f3, 0x1c(r1) +/* 802360F4 00233054 EC 25 08 BA */ fmadds f1, f5, f2, f1 +/* 802360F8 00233058 D0 81 00 20 */ stfs f4, 0x20(r1) +/* 802360FC 0023305C D0 A1 00 24 */ stfs f5, 0x24(r1) +/* 80236100 00233060 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80236104 00233064 40 80 00 7C */ bge lbl_80236180 +/* 80236108 00233068 38 61 00 10 */ addi r3, r1, 0x10 +/* 8023610C 0023306C 38 81 00 34 */ addi r4, r1, 0x34 +/* 80236110 00233070 48 0D E7 41 */ bl AsNormalized__9CVector3fCFv +/* 80236114 00233074 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80236118 00233078 C4 C3 66 A0 */ lfsu f6, skZero3f@l(r3) +/* 8023611C 0023307C C0 61 00 10 */ lfs f3, 0x10(r1) +/* 80236120 00233080 38 81 00 40 */ addi r4, r1, 0x40 +/* 80236124 00233084 C0 41 00 14 */ lfs f2, 0x14(r1) +/* 80236128 00233088 C0 A3 00 04 */ lfs f5, 4(r3) +/* 8023612C 0023308C C0 83 00 08 */ lfs f4, 8(r3) +/* 80236130 00233090 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 80236134 00233094 C0 02 B7 34 */ lfs f0, lbl_805AD454@sda21(r2) +/* 80236138 00233098 D0 C1 00 40 */ stfs f6, 0x40(r1) +/* 8023613C 0023309C D0 A1 00 44 */ stfs f5, 0x44(r1) +/* 80236140 002330A0 D0 81 00 48 */ stfs f4, 0x48(r1) +/* 80236144 002330A4 D0 61 00 4C */ stfs f3, 0x4c(r1) +/* 80236148 002330A8 D0 41 00 50 */ stfs f2, 0x50(r1) +/* 8023614C 002330AC D0 21 00 54 */ stfs f1, 0x54(r1) +/* 80236150 002330B0 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 80236154 002330B4 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80236158 002330B8 38 63 00 04 */ addi r3, r3, 4 +/* 8023615C 002330BC 4B EF B5 BD */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 80236160 002330C0 48 00 00 20 */ b lbl_80236180 +lbl_80236164: +/* 80236164 002330C4 C3 FE 05 6C */ lfs f31, 0x56c(r30) +/* 80236168 002330C8 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 8023616C 002330CC 48 0D C3 71 */ bl Float__9CRandom16Fv +/* 80236170 002330D0 C0 1E 05 70 */ lfs f0, 0x570(r30) +/* 80236174 002330D4 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 80236178 002330D8 EC 00 F8 7A */ fmadds f0, f0, f1, f31 +/* 8023617C 002330DC D0 1E 03 40 */ stfs f0, 0x340(r30) +lbl_80236180: +/* 80236180 002330E0 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 +/* 80236184 002330E4 80 01 00 84 */ lwz r0, 0x84(r1) +/* 80236188 002330E8 CB E1 00 70 */ lfd f31, 0x70(r1) +/* 8023618C 002330EC 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 80236190 002330F0 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 80236194 002330F4 7C 08 03 A6 */ mtlr r0 +/* 80236198 002330F8 38 21 00 80 */ addi r1, r1, 0x80 +/* 8023619C 002330FC 4E 80 00 20 */ blr + +.global Lurk__10CMagdoliteFR13CStateManager9EStateMsgf +Lurk__10CMagdoliteFR13CStateManager9EStateMsgf: +/* 802361A0 00233100 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 802361A4 00233104 7C 08 02 A6 */ mflr r0 +/* 802361A8 00233108 2C 05 00 01 */ cmpwi r5, 1 +/* 802361AC 0023310C 90 01 00 14 */ stw r0, 0x14(r1) +/* 802361B0 00233110 93 E1 00 0C */ stw r31, 0xc(r1) +/* 802361B4 00233114 7C 9F 23 78 */ mr r31, r4 +/* 802361B8 00233118 93 C1 00 08 */ stw r30, 8(r1) +/* 802361BC 0023311C 7C 7E 1B 78 */ mr r30, r3 +/* 802361C0 00233120 41 82 00 68 */ beq lbl_80236228 +/* 802361C4 00233124 40 80 00 10 */ bge lbl_802361D4 +/* 802361C8 00233128 2C 05 00 00 */ cmpwi r5, 0 +/* 802361CC 0023312C 40 80 00 14 */ bge lbl_802361E0 +/* 802361D0 00233130 48 00 00 58 */ b lbl_80236228 +lbl_802361D4: +/* 802361D4 00233134 2C 05 00 03 */ cmpwi r5, 3 +/* 802361D8 00233138 40 80 00 50 */ bge lbl_80236228 +/* 802361DC 0023313C 48 00 00 3C */ b lbl_80236218 +lbl_802361E0: +/* 802361E0 00233140 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 802361E4 00233144 38 80 00 01 */ li r4, 1 +/* 802361E8 00233148 4B F0 47 F1 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 802361EC 0023314C 38 7E 05 84 */ addi r3, r30, 0x584 +/* 802361F0 00233150 38 80 00 00 */ li r4, 0 +/* 802361F4 00233154 4B F3 F0 31 */ bl SetActive__13CBoneTrackingFb +/* 802361F8 00233158 C0 02 B7 20 */ lfs f0, lbl_805AD440@sda21(r2) +/* 802361FC 0023315C 7F C3 F3 78 */ mr r3, r30 +/* 80236200 00233160 7F E6 FB 78 */ mr r6, r31 +/* 80236204 00233164 38 80 00 28 */ li r4, 0x28 +/* 80236208 00233168 D0 1E 03 40 */ stfs f0, 0x340(r30) +/* 8023620C 0023316C 38 A0 00 29 */ li r5, 0x29 +/* 80236210 00233170 4B E1 E0 A5 */ bl AddMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager +/* 80236214 00233174 48 00 00 14 */ b lbl_80236228 +lbl_80236218: +/* 80236218 00233178 88 1E 07 54 */ lbz r0, 0x754(r30) +/* 8023621C 0023317C 38 60 00 01 */ li r3, 1 +/* 80236220 00233180 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 80236224 00233184 98 1E 07 54 */ stb r0, 0x754(r30) +lbl_80236228: +/* 80236228 00233188 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8023622C 0023318C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80236230 00233190 83 C1 00 08 */ lwz r30, 8(r1) +/* 80236234 00233194 7C 08 03 A6 */ mtlr r0 +/* 80236238 00233198 38 21 00 10 */ addi r1, r1, 0x10 +/* 8023623C 0023319C 4E 80 00 20 */ blr + +.global InActive__10CMagdoliteFR13CStateManager9EStateMsgf +InActive__10CMagdoliteFR13CStateManager9EStateMsgf: +/* 80236240 002331A0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80236244 002331A4 7C 08 02 A6 */ mflr r0 +/* 80236248 002331A8 2C 05 00 01 */ cmpwi r5, 1 +/* 8023624C 002331AC 90 01 00 14 */ stw r0, 0x14(r1) +/* 80236250 002331B0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80236254 002331B4 7C 9F 23 78 */ mr r31, r4 +/* 80236258 002331B8 93 C1 00 08 */ stw r30, 8(r1) +/* 8023625C 002331BC 7C 7E 1B 78 */ mr r30, r3 +/* 80236260 002331C0 41 82 00 90 */ beq lbl_802362F0 +/* 80236264 002331C4 40 80 00 10 */ bge lbl_80236274 +/* 80236268 002331C8 2C 05 00 00 */ cmpwi r5, 0 +/* 8023626C 002331CC 40 80 00 14 */ bge lbl_80236280 +/* 80236270 002331D0 48 00 00 80 */ b lbl_802362F0 +lbl_80236274: +/* 80236274 002331D4 2C 05 00 03 */ cmpwi r5, 3 +/* 80236278 002331D8 40 80 00 78 */ bge lbl_802362F0 +/* 8023627C 002331DC 48 00 00 38 */ b lbl_802362B4 +lbl_80236280: +/* 80236280 002331E0 88 1E 00 E7 */ lbz r0, 0xe7(r30) +/* 80236284 002331E4 38 60 00 00 */ li r3, 0 +/* 80236288 002331E8 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 8023628C 002331EC 38 80 00 07 */ li r4, 7 +/* 80236290 002331F0 98 1E 00 E7 */ stb r0, 0xe7(r30) +/* 80236294 002331F4 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80236298 002331F8 4B F0 47 41 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 8023629C 002331FC 7F C3 F3 78 */ mr r3, r30 +/* 802362A0 00233200 7F E6 FB 78 */ mr r6, r31 +/* 802362A4 00233204 38 80 00 29 */ li r4, 0x29 +/* 802362A8 00233208 38 A0 00 28 */ li r5, 0x28 +/* 802362AC 0023320C 4B E1 DC 29 */ bl RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager +/* 802362B0 00233210 48 00 00 40 */ b lbl_802362F0 +lbl_802362B4: +/* 802362B4 00233214 7F E6 FB 78 */ mr r6, r31 +/* 802362B8 00233218 38 80 00 29 */ li r4, 0x29 +/* 802362BC 0023321C 38 A0 00 28 */ li r5, 0x28 +/* 802362C0 00233220 4B E1 DF F5 */ bl AddMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager +/* 802362C4 00233224 88 1E 07 54 */ lbz r0, 0x754(r30) +/* 802362C8 00233228 38 60 00 00 */ li r3, 0 +/* 802362CC 0023322C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 802362D0 00233230 7F C3 F3 78 */ mr r3, r30 +/* 802362D4 00233234 98 1E 07 54 */ stb r0, 0x754(r30) +/* 802362D8 00233238 7F E4 FB 78 */ mr r4, r31 +/* 802362DC 0023323C 48 00 00 2D */ bl sub_80236308 +/* 802362E0 00233240 88 1E 00 E7 */ lbz r0, 0xe7(r30) +/* 802362E4 00233244 38 60 00 01 */ li r3, 1 +/* 802362E8 00233248 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 802362EC 0023324C 98 1E 00 E7 */ stb r0, 0xe7(r30) +lbl_802362F0: +/* 802362F0 00233250 80 01 00 14 */ lwz r0, 0x14(r1) +/* 802362F4 00233254 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 802362F8 00233258 83 C1 00 08 */ lwz r30, 8(r1) +/* 802362FC 0023325C 7C 08 03 A6 */ mtlr r0 +/* 80236300 00233260 38 21 00 10 */ addi r1, r1, 0x10 +/* 80236304 00233264 4E 80 00 20 */ blr + +.global sub_80236308 +sub_80236308: +/* 80236308 00233268 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 8023630C 0023326C 7C 08 02 A6 */ mflr r0 +/* 80236310 00233270 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 80236314 00233274 93 E1 00 AC */ stw r31, 0xac(r1) +/* 80236318 00233278 7C 7F 1B 78 */ mr r31, r3 +/* 8023631C 0023327C 80 A4 08 4C */ lwz r5, 0x84c(r4) +/* 80236320 00233280 38 81 00 6C */ addi r4, r1, 0x6c +/* 80236324 00233284 C0 03 00 60 */ lfs f0, 0x60(r3) +/* 80236328 00233288 38 61 00 60 */ addi r3, r1, 0x60 +/* 8023632C 0023328C C0 25 00 60 */ lfs f1, 0x60(r5) +/* 80236330 00233290 C0 85 00 50 */ lfs f4, 0x50(r5) +/* 80236334 00233294 EC A1 00 28 */ fsubs f5, f1, f0 +/* 80236338 00233298 C0 7F 00 50 */ lfs f3, 0x50(r31) +/* 8023633C 0023329C C0 45 00 40 */ lfs f2, 0x40(r5) +/* 80236340 002332A0 C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 80236344 002332A4 EC 64 18 28 */ fsubs f3, f4, f3 +/* 80236348 002332A8 C0 02 B7 20 */ lfs f0, lbl_805AD440@sda21(r2) +/* 8023634C 002332AC EC 22 08 28 */ fsubs f1, f2, f1 +/* 80236350 002332B0 D0 A1 00 74 */ stfs f5, 0x74(r1) +/* 80236354 002332B4 D0 61 00 70 */ stfs f3, 0x70(r1) +/* 80236358 002332B8 D0 21 00 6C */ stfs f1, 0x6c(r1) +/* 8023635C 002332BC D0 01 00 74 */ stfs f0, 0x74(r1) +/* 80236360 002332C0 48 0D E4 F1 */ bl AsNormalized__9CVector3fCFv +/* 80236364 002332C4 C0 41 00 60 */ lfs f2, 0x60(r1) +/* 80236368 002332C8 38 61 00 54 */ addi r3, r1, 0x54 +/* 8023636C 002332CC C0 21 00 64 */ lfs f1, 0x64(r1) +/* 80236370 002332D0 38 81 00 6C */ addi r4, r1, 0x6c +/* 80236374 002332D4 C0 01 00 68 */ lfs f0, 0x68(r1) +/* 80236378 002332D8 D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 8023637C 002332DC D0 21 00 70 */ stfs f1, 0x70(r1) +/* 80236380 002332E0 D0 01 00 74 */ stfs f0, 0x74(r1) +/* 80236384 002332E4 C0 5F 00 58 */ lfs f2, 0x58(r31) +/* 80236388 002332E8 C0 3F 00 48 */ lfs f1, 0x48(r31) +/* 8023638C 002332EC C0 1F 00 38 */ lfs f0, 0x38(r31) +/* 80236390 002332F0 D0 01 00 54 */ stfs f0, 0x54(r1) +/* 80236394 002332F4 D0 21 00 58 */ stfs f1, 0x58(r1) +/* 80236398 002332F8 D0 41 00 5C */ stfs f2, 0x5c(r1) +/* 8023639C 002332FC 48 0D E2 95 */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f +/* 802363A0 00233300 D0 21 00 08 */ stfs f1, 8(r1) +/* 802363A4 00233304 C0 01 00 70 */ lfs f0, 0x70(r1) +/* 802363A8 00233308 C0 BF 00 44 */ lfs f5, 0x44(r31) +/* 802363AC 0023330C C0 9F 00 34 */ lfs f4, 0x34(r31) +/* 802363B0 00233310 EC 05 00 32 */ fmuls f0, f5, f0 +/* 802363B4 00233314 C0 41 00 6C */ lfs f2, 0x6c(r1) +/* 802363B8 00233318 C0 DF 00 54 */ lfs f6, 0x54(r31) +/* 802363BC 0023331C C0 61 00 74 */ lfs f3, 0x74(r1) +/* 802363C0 00233320 EC 44 00 BA */ fmadds f2, f4, f2, f0 +/* 802363C4 00233324 C0 02 B7 20 */ lfs f0, lbl_805AD440@sda21(r2) +/* 802363C8 00233328 D0 81 00 48 */ stfs f4, 0x48(r1) +/* 802363CC 0023332C EC 46 10 FA */ fmadds f2, f6, f3, f2 +/* 802363D0 00233330 D0 A1 00 4C */ stfs f5, 0x4c(r1) +/* 802363D4 00233334 D0 C1 00 50 */ stfs f6, 0x50(r1) +/* 802363D8 00233338 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 802363DC 0023333C 40 81 00 14 */ ble lbl_802363F0 +/* 802363E0 00233340 FC 20 08 18 */ frsp f1, f1 +/* 802363E4 00233344 C0 02 B7 3C */ lfs f0, lbl_805AD45C@sda21(r2) +/* 802363E8 00233348 EC 01 00 32 */ fmuls f0, f1, f0 +/* 802363EC 0023334C D0 01 00 08 */ stfs f0, 8(r1) +lbl_802363F0: +/* 802363F0 00233350 38 61 00 28 */ addi r3, r1, 0x28 +/* 802363F4 00233354 38 9F 00 34 */ addi r4, r31, 0x34 +/* 802363F8 00233358 48 0D BD 31 */ bl FromMatrix__11CQuaternionFRC12CTransform4f +/* 802363FC 0023335C 38 61 00 18 */ addi r3, r1, 0x18 +/* 80236400 00233360 38 81 00 08 */ addi r4, r1, 8 +/* 80236404 00233364 48 0D AC F5 */ bl ZRotation__11CQuaternionFRC9CRelAngle +/* 80236408 00233368 38 61 00 38 */ addi r3, r1, 0x38 +/* 8023640C 0023336C 38 81 00 28 */ addi r4, r1, 0x28 +/* 80236410 00233370 38 A1 00 18 */ addi r5, r1, 0x18 +/* 80236414 00233374 48 0D AD 8D */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 80236418 00233378 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 8023641C 0023337C 38 61 00 78 */ addi r3, r1, 0x78 +/* 80236420 00233380 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 80236424 00233384 38 81 00 38 */ addi r4, r1, 0x38 +/* 80236428 00233388 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8023642C 0023338C 38 A1 00 0C */ addi r5, r1, 0xc +/* 80236430 00233390 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 80236434 00233394 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 80236438 00233398 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 8023643C 0023339C 48 0D BA 81 */ bl BuildTransform4f__11CQuaternionCFRC9CVector3f +/* 80236440 002333A0 38 7F 00 34 */ addi r3, r31, 0x34 +/* 80236444 002333A4 38 81 00 78 */ addi r4, r1, 0x78 +/* 80236448 002333A8 48 0D C6 F9 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8023644C 002333AC 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 80236450 002333B0 38 60 00 01 */ li r3, 1 +/* 80236454 002333B4 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 80236458 002333B8 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 8023645C 002333BC 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 80236460 002333C0 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 80236464 002333C4 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 80236468 002333C8 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 8023646C 002333CC 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 80236470 002333D0 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 80236474 002333D4 83 E1 00 AC */ lwz r31, 0xac(r1) +/* 80236478 002333D8 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 8023647C 002333DC 7C 08 03 A6 */ mtlr r0 +/* 80236480 002333E0 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 80236484 002333E4 4E 80 00 20 */ blr + +.global DoUserAnimEvent__10CMagdoliteFR13CStateManagerRC13CInt32POINode14EUserEventType +DoUserAnimEvent__10CMagdoliteFR13CStateManagerRC13CInt32POINode14EUserEventType: +/* 80236488 002333E8 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8023648C 002333EC 7C 08 02 A6 */ mflr r0 +/* 80236490 002333F0 90 01 00 34 */ stw r0, 0x34(r1) +/* 80236494 002333F4 DB E1 00 28 */ stfd f31, 0x28(r1) +/* 80236498 002333F8 FF E0 08 90 */ fmr f31, f1 +/* 8023649C 002333FC BF 61 00 14 */ stmw r27, 0x14(r1) +/* 802364A0 00233400 7C DE 33 78 */ mr r30, r6 +/* 802364A4 00233404 2C 1E 00 09 */ cmpwi r30, 9 +/* 802364A8 00233408 7C 7B 1B 78 */ mr r27, r3 +/* 802364AC 0023340C 7C 9C 23 78 */ mr r28, r4 +/* 802364B0 00233410 7C BD 2B 78 */ mr r29, r5 +/* 802364B4 00233414 3B E0 00 00 */ li r31, 0 +/* 802364B8 00233418 41 82 00 2C */ beq lbl_802364E4 +/* 802364BC 0023341C 40 80 00 10 */ bge lbl_802364CC +/* 802364C0 00233420 2C 1E 00 08 */ cmpwi r30, 8 +/* 802364C4 00233424 40 80 00 14 */ bge lbl_802364D8 +/* 802364C8 00233428 48 00 00 5C */ b lbl_80236524 +lbl_802364CC: +/* 802364CC 0023342C 2C 1E 00 16 */ cmpwi r30, 0x16 +/* 802364D0 00233430 41 82 00 20 */ beq lbl_802364F0 +/* 802364D4 00233434 48 00 00 50 */ b lbl_80236524 +lbl_802364D8: +/* 802364D8 00233438 38 A0 00 01 */ li r5, 1 +/* 802364DC 0023343C 4B FF E5 95 */ bl sub_80234a70 +/* 802364E0 00233440 48 00 00 44 */ b lbl_80236524 +lbl_802364E4: +/* 802364E4 00233444 38 A0 00 00 */ li r5, 0 +/* 802364E8 00233448 4B FF E5 89 */ bl sub_80234a70 +/* 802364EC 0023344C 48 00 00 38 */ b lbl_80236524 +lbl_802364F0: +/* 802364F0 00233450 7F 86 E3 78 */ mr r6, r28 +/* 802364F4 00233454 38 80 00 28 */ li r4, 0x28 +/* 802364F8 00233458 38 A0 00 29 */ li r5, 0x29 +/* 802364FC 0023345C 4B E1 D9 D9 */ bl RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager +/* 80236500 00233460 A0 1B 00 08 */ lhz r0, 8(r27) +/* 80236504 00233464 7F 86 E3 78 */ mr r6, r28 +/* 80236508 00233468 38 81 00 0C */ addi r4, r1, 0xc +/* 8023650C 0023346C 3B E0 00 01 */ li r31, 1 +/* 80236510 00233470 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80236514 00233474 38 A0 00 08 */ li r5, 8 +/* 80236518 00233478 B0 01 00 08 */ sth r0, 8(r1) +/* 8023651C 0023347C 80 7C 08 4C */ lwz r3, 0x84c(r28) +/* 80236520 00233480 4B F4 4D 35 */ bl SetOrbitRequestForTarget__7CPlayerF9TUniqueId19EPlayerOrbitRequestR13CStateManager +lbl_80236524: +/* 80236524 00233484 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 80236528 00233488 40 82 00 1C */ bne lbl_80236544 +/* 8023652C 0023348C FC 20 F8 90 */ fmr f1, f31 +/* 80236530 00233490 7F 63 DB 78 */ mr r3, r27 +/* 80236534 00233494 7F 84 E3 78 */ mr r4, r28 +/* 80236538 00233498 7F A5 EB 78 */ mr r5, r29 +/* 8023653C 0023349C 7F C6 F3 78 */ mr r6, r30 +/* 80236540 002334A0 4B E4 29 71 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +lbl_80236544: +/* 80236544 002334A4 CB E1 00 28 */ lfd f31, 0x28(r1) +/* 80236548 002334A8 BB 61 00 14 */ lmw r27, 0x14(r1) +/* 8023654C 002334AC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80236550 002334B0 7C 08 03 A6 */ mtlr r0 +/* 80236554 002334B4 38 21 00 30 */ addi r1, r1, 0x30 +/* 80236558 002334B8 4E 80 00 20 */ blr + +.global GetDamageVulnerability__10CMagdoliteCFRC9CVector3fRC9CVector3fRC11CDamageInfo +GetDamageVulnerability__10CMagdoliteCFRC9CVector3fRC9CVector3fRC11CDamageInfo: +/* 8023655C 002334BC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80236560 002334C0 7C 08 02 A6 */ mflr r0 +/* 80236564 002334C4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80236568 002334C8 81 83 00 00 */ lwz r12, 0(r3) +/* 8023656C 002334CC 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 80236570 002334D0 7D 89 03 A6 */ mtctr r12 +/* 80236574 002334D4 4E 80 04 21 */ bctrl +/* 80236578 002334D8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8023657C 002334DC 7C 08 03 A6 */ mtlr r0 +/* 80236580 002334E0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80236584 002334E4 4E 80 00 20 */ blr + +.global GetDamageVulnerability__10CMagdoliteCFv +GetDamageVulnerability__10CMagdoliteCFv: +/* 80236588 002334E8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8023658C 002334EC 7C 08 02 A6 */ mflr r0 +/* 80236590 002334F0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80236594 002334F4 88 03 04 00 */ lbz r0, 0x400(r3) +/* 80236598 002334F8 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8023659C 002334FC 41 82 00 0C */ beq lbl_802365A8 +/* 802365A0 00233500 4B E6 C7 D1 */ bl GetDamageVulnerability__3CAiCFv +/* 802365A4 00233504 48 00 00 0C */ b lbl_802365B0 +lbl_802365A8: +/* 802365A8 00233508 3C 60 80 57 */ lis r3, lbl_8056D718@ha +/* 802365AC 0023350C 38 63 D7 18 */ addi r3, r3, lbl_8056D718@l +lbl_802365B0: +/* 802365B0 00233510 80 01 00 14 */ lwz r0, 0x14(r1) +/* 802365B4 00233514 7C 08 03 A6 */ mtlr r0 +/* 802365B8 00233518 38 21 00 10 */ addi r1, r1, 0x10 +/* 802365BC 0023351C 4E 80 00 20 */ blr + +.global sub_802365c0 +sub_802365c0: +/* 802365C0 00233520 94 21 FD F0 */ stwu r1, -0x210(r1) +/* 802365C4 00233524 7C 08 02 A6 */ mflr r0 +/* 802365C8 00233528 90 01 02 14 */ stw r0, 0x214(r1) +/* 802365CC 0023352C 38 00 00 00 */ li r0, 0 +/* 802365D0 00233530 BF 21 01 F4 */ stmw r25, 0x1f4(r1) +/* 802365D4 00233534 7C 7D 1B 78 */ mr r29, r3 +/* 802365D8 00233538 7C 9E 23 78 */ mr r30, r4 +/* 802365DC 0023353C 38 61 00 CC */ addi r3, r1, 0xcc +/* 802365E0 00233540 38 80 00 08 */ li r4, 8 +/* 802365E4 00233544 90 01 00 D0 */ stw r0, 0xd0(r1) +/* 802365E8 00233548 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 802365EC 0023354C 90 01 00 D8 */ stw r0, 0xd8(r1) +/* 802365F0 00233550 4B F2 01 C9 */ bl "reserve__Q24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>Fi" +/* 802365F4 00233554 80 9D 00 64 */ lwz r4, 0x64(r29) +/* 802365F8 00233558 3C 60 80 3D */ lis r3, lbl_803D42E8@ha +/* 802365FC 0023355C 3B 83 42 E8 */ addi r28, r3, lbl_803D42E8@l +/* 80236600 00233560 3B 61 01 4C */ addi r27, r1, 0x14c +/* 80236604 00233564 83 E4 00 10 */ lwz r31, 0x10(r4) +/* 80236608 00233568 3B 41 01 D4 */ addi r26, r1, 0x1d4 +/* 8023660C 0023356C 3B 20 00 00 */ li r25, 0 +lbl_80236610: +/* 80236610 00233570 80 9C 00 00 */ lwz r4, 0(r28) +/* 80236614 00233574 38 61 00 BC */ addi r3, r1, 0xbc +/* 80236618 00233578 4B DC E6 A1 */ bl string_l__4rstlFPCc +/* 8023661C 0023357C 80 9C 00 00 */ lwz r4, 0(r28) +/* 80236620 00233580 38 61 00 AC */ addi r3, r1, 0xac +/* 80236624 00233584 4B DC E6 95 */ bl string_l__4rstlFPCc +/* 80236628 00233588 7F E4 FB 78 */ mr r4, r31 +/* 8023662C 0023358C 38 61 00 18 */ addi r3, r1, 0x18 +/* 80236630 00233590 38 A1 00 BC */ addi r5, r1, 0xbc +/* 80236634 00233594 4B DF 82 05 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80236638 00233598 88 01 00 18 */ lbz r0, 0x18(r1) +/* 8023663C 0023359C 38 61 01 20 */ addi r3, r1, 0x120 +/* 80236640 002335A0 C0 3C 00 04 */ lfs f1, 4(r28) +/* 80236644 002335A4 38 81 00 1C */ addi r4, r1, 0x1c +/* 80236648 002335A8 98 01 00 1C */ stb r0, 0x1c(r1) +/* 8023664C 002335AC 38 A1 00 AC */ addi r5, r1, 0xac +/* 80236650 002335B0 C0 42 B7 48 */ lfs f2, lbl_805AD468@sda21(r2) +/* 80236654 002335B4 4B F7 21 B9 */ bl "SphereCollision__26CJointCollisionDescriptionF6CSegIdfRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" +/* 80236658 002335B8 80 E1 01 20 */ lwz r7, 0x120(r1) +/* 8023665C 002335BC 7F 43 D3 78 */ mr r3, r26 +/* 80236660 002335C0 80 C1 01 24 */ lwz r6, 0x124(r1) +/* 80236664 002335C4 7F 64 DB 78 */ mr r4, r27 +/* 80236668 002335C8 88 A1 01 28 */ lbz r5, 0x128(r1) +/* 8023666C 002335CC 88 01 01 29 */ lbz r0, 0x129(r1) +/* 80236670 002335D0 C0 E1 01 2C */ lfs f7, 0x12c(r1) +/* 80236674 002335D4 C0 C1 01 30 */ lfs f6, 0x130(r1) +/* 80236678 002335D8 C0 A1 01 34 */ lfs f5, 0x134(r1) +/* 8023667C 002335DC C0 81 01 38 */ lfs f4, 0x138(r1) +/* 80236680 002335E0 C0 61 01 3C */ lfs f3, 0x13c(r1) +/* 80236684 002335E4 C0 41 01 40 */ lfs f2, 0x140(r1) +/* 80236688 002335E8 C0 21 01 44 */ lfs f1, 0x144(r1) +/* 8023668C 002335EC C0 01 01 48 */ lfs f0, 0x148(r1) +/* 80236690 002335F0 90 E1 01 A8 */ stw r7, 0x1a8(r1) +/* 80236694 002335F4 90 C1 01 AC */ stw r6, 0x1ac(r1) +/* 80236698 002335F8 98 A1 01 B0 */ stb r5, 0x1b0(r1) +/* 8023669C 002335FC 98 01 01 B1 */ stb r0, 0x1b1(r1) +/* 802366A0 00233600 D0 E1 01 B4 */ stfs f7, 0x1b4(r1) +/* 802366A4 00233604 D0 C1 01 B8 */ stfs f6, 0x1b8(r1) +/* 802366A8 00233608 D0 A1 01 BC */ stfs f5, 0x1bc(r1) +/* 802366AC 0023360C D0 81 01 C0 */ stfs f4, 0x1c0(r1) +/* 802366B0 00233610 D0 61 01 C4 */ stfs f3, 0x1c4(r1) +/* 802366B4 00233614 D0 41 01 C8 */ stfs f2, 0x1c8(r1) +/* 802366B8 00233618 D0 21 01 CC */ stfs f1, 0x1cc(r1) +/* 802366BC 0023361C D0 01 01 D0 */ stfs f0, 0x1d0(r1) +/* 802366C0 00233620 48 10 7A A1 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 802366C4 00233624 A0 01 01 5C */ lhz r0, 0x15c(r1) +/* 802366C8 00233628 28 1B 00 00 */ cmplwi r27, 0 +/* 802366CC 0023362C C0 01 01 60 */ lfs f0, 0x160(r1) +/* 802366D0 00233630 B0 01 01 E4 */ sth r0, 0x1e4(r1) +/* 802366D4 00233634 D0 01 01 E8 */ stfs f0, 0x1e8(r1) +/* 802366D8 00233638 41 82 00 0C */ beq lbl_802366E4 +/* 802366DC 0023363C 7F 63 DB 78 */ mr r3, r27 +/* 802366E0 00233640 48 10 74 01 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_802366E4: +/* 802366E4 00233644 38 61 00 AC */ addi r3, r1, 0xac +/* 802366E8 00233648 48 10 73 F9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 802366EC 0023364C 38 61 00 BC */ addi r3, r1, 0xbc +/* 802366F0 00233650 48 10 73 F1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 802366F4 00233654 38 61 00 CC */ addi r3, r1, 0xcc +/* 802366F8 00233658 38 81 01 A8 */ addi r4, r1, 0x1a8 +/* 802366FC 0023365C 4B F1 FB 35 */ bl sub_80156230 +/* 80236700 00233660 28 1A 00 00 */ cmplwi r26, 0 +/* 80236704 00233664 41 82 00 0C */ beq lbl_80236710 +/* 80236708 00233668 7F 43 D3 78 */ mr r3, r26 +/* 8023670C 0023366C 48 10 73 D5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80236710: +/* 80236710 00233670 3B 39 00 01 */ addi r25, r25, 1 +/* 80236714 00233674 3B 9C 00 08 */ addi r28, r28, 8 +/* 80236718 00233678 28 19 00 05 */ cmplwi r25, 5 +/* 8023671C 0023367C 41 80 FE F4 */ blt lbl_80236610 +/* 80236720 00233680 3C 60 80 3F */ lis r3, lbl_803E81A0@ha +/* 80236724 00233684 3B 61 01 08 */ addi r27, r1, 0x108 +/* 80236728 00233688 3B 43 81 A0 */ addi r26, r3, lbl_803E81A0@l +/* 8023672C 0023368C 3B 81 01 90 */ addi r28, r1, 0x190 +/* 80236730 00233690 3B 20 00 00 */ li r25, 0 +lbl_80236734: +/* 80236734 00233694 80 9A 00 00 */ lwz r4, 0(r26) +/* 80236738 00233698 38 61 00 9C */ addi r3, r1, 0x9c +/* 8023673C 0023369C 4B DC E5 7D */ bl string_l__4rstlFPCc +/* 80236740 002336A0 80 9A 00 04 */ lwz r4, 4(r26) +/* 80236744 002336A4 38 61 00 8C */ addi r3, r1, 0x8c +/* 80236748 002336A8 4B DC E5 71 */ bl string_l__4rstlFPCc +/* 8023674C 002336AC 80 9A 00 04 */ lwz r4, 4(r26) +/* 80236750 002336B0 38 61 00 70 */ addi r3, r1, 0x70 +/* 80236754 002336B4 4B DC E5 65 */ bl string_l__4rstlFPCc +/* 80236758 002336B8 C0 5A 00 10 */ lfs f2, 0x10(r26) +/* 8023675C 002336BC 7F E4 FB 78 */ mr r4, r31 +/* 80236760 002336C0 C0 3A 00 0C */ lfs f1, 0xc(r26) +/* 80236764 002336C4 38 61 00 08 */ addi r3, r1, 8 +/* 80236768 002336C8 C0 1A 00 08 */ lfs f0, 8(r26) +/* 8023676C 002336CC 38 A1 00 8C */ addi r5, r1, 0x8c +/* 80236770 002336D0 D0 21 00 84 */ stfs f1, 0x84(r1) +/* 80236774 002336D4 D0 01 00 80 */ stfs f0, 0x80(r1) +/* 80236778 002336D8 D0 41 00 88 */ stfs f2, 0x88(r1) +/* 8023677C 002336DC 4B DF 80 BD */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80236780 002336E0 88 01 00 08 */ lbz r0, 8(r1) +/* 80236784 002336E4 7F E4 FB 78 */ mr r4, r31 +/* 80236788 002336E8 38 61 00 10 */ addi r3, r1, 0x10 +/* 8023678C 002336EC 38 A1 00 9C */ addi r5, r1, 0x9c +/* 80236790 002336F0 98 01 00 0C */ stb r0, 0xc(r1) +/* 80236794 002336F4 4B DF 80 A5 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80236798 002336F8 88 01 00 10 */ lbz r0, 0x10(r1) +/* 8023679C 002336FC 38 61 00 DC */ addi r3, r1, 0xdc +/* 802367A0 00233700 C0 22 B7 48 */ lfs f1, lbl_805AD468@sda21(r2) +/* 802367A4 00233704 38 81 00 14 */ addi r4, r1, 0x14 +/* 802367A8 00233708 98 01 00 14 */ stb r0, 0x14(r1) +/* 802367AC 0023370C 38 A1 00 0C */ addi r5, r1, 0xc +/* 802367B0 00233710 38 C1 00 80 */ addi r6, r1, 0x80 +/* 802367B4 00233714 39 01 00 70 */ addi r8, r1, 0x70 +/* 802367B8 00233718 38 E0 00 01 */ li r7, 1 +/* 802367BC 0023371C 4B F7 1E 19 */ bl "OBBAutoSizeCollision__26CJointCollisionDescriptionF6CSegId6CSegIdRC9CVector3fQ226CJointCollisionDescription16EOrientationTypeRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" +/* 802367C0 00233720 80 E1 00 DC */ lwz r7, 0xdc(r1) +/* 802367C4 00233724 7F 83 E3 78 */ mr r3, r28 +/* 802367C8 00233728 80 C1 00 E0 */ lwz r6, 0xe0(r1) +/* 802367CC 0023372C 7F 64 DB 78 */ mr r4, r27 +/* 802367D0 00233730 88 A1 00 E4 */ lbz r5, 0xe4(r1) +/* 802367D4 00233734 88 01 00 E5 */ lbz r0, 0xe5(r1) +/* 802367D8 00233738 C0 E1 00 E8 */ lfs f7, 0xe8(r1) +/* 802367DC 0023373C C0 C1 00 EC */ lfs f6, 0xec(r1) +/* 802367E0 00233740 C0 A1 00 F0 */ lfs f5, 0xf0(r1) +/* 802367E4 00233744 C0 81 00 F4 */ lfs f4, 0xf4(r1) +/* 802367E8 00233748 C0 61 00 F8 */ lfs f3, 0xf8(r1) +/* 802367EC 0023374C C0 41 00 FC */ lfs f2, 0xfc(r1) +/* 802367F0 00233750 C0 21 01 00 */ lfs f1, 0x100(r1) +/* 802367F4 00233754 C0 01 01 04 */ lfs f0, 0x104(r1) +/* 802367F8 00233758 90 E1 01 64 */ stw r7, 0x164(r1) +/* 802367FC 0023375C 90 C1 01 68 */ stw r6, 0x168(r1) +/* 80236800 00233760 98 A1 01 6C */ stb r5, 0x16c(r1) +/* 80236804 00233764 98 01 01 6D */ stb r0, 0x16d(r1) +/* 80236808 00233768 D0 E1 01 70 */ stfs f7, 0x170(r1) +/* 8023680C 0023376C D0 C1 01 74 */ stfs f6, 0x174(r1) +/* 80236810 00233770 D0 A1 01 78 */ stfs f5, 0x178(r1) +/* 80236814 00233774 D0 81 01 7C */ stfs f4, 0x17c(r1) +/* 80236818 00233778 D0 61 01 80 */ stfs f3, 0x180(r1) +/* 8023681C 0023377C D0 41 01 84 */ stfs f2, 0x184(r1) +/* 80236820 00233780 D0 21 01 88 */ stfs f1, 0x188(r1) +/* 80236824 00233784 D0 01 01 8C */ stfs f0, 0x18c(r1) +/* 80236828 00233788 48 10 79 39 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8023682C 0023378C A0 01 01 18 */ lhz r0, 0x118(r1) +/* 80236830 00233790 28 1B 00 00 */ cmplwi r27, 0 +/* 80236834 00233794 C0 01 01 1C */ lfs f0, 0x11c(r1) +/* 80236838 00233798 B0 01 01 A0 */ sth r0, 0x1a0(r1) +/* 8023683C 0023379C D0 01 01 A4 */ stfs f0, 0x1a4(r1) +/* 80236840 002337A0 41 82 00 0C */ beq lbl_8023684C +/* 80236844 002337A4 7F 63 DB 78 */ mr r3, r27 +/* 80236848 002337A8 48 10 72 99 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8023684C: +/* 8023684C 002337AC 38 61 00 70 */ addi r3, r1, 0x70 +/* 80236850 002337B0 48 10 72 91 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80236854 002337B4 38 61 00 8C */ addi r3, r1, 0x8c +/* 80236858 002337B8 48 10 72 89 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8023685C 002337BC 38 61 00 9C */ addi r3, r1, 0x9c +/* 80236860 002337C0 48 10 72 81 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80236864 002337C4 38 61 00 CC */ addi r3, r1, 0xcc +/* 80236868 002337C8 38 81 01 64 */ addi r4, r1, 0x164 +/* 8023686C 002337CC 4B F1 F9 C5 */ bl sub_80156230 +/* 80236870 002337D0 28 1C 00 00 */ cmplwi r28, 0 +/* 80236874 002337D4 41 82 00 0C */ beq lbl_80236880 +/* 80236878 002337D8 7F 83 E3 78 */ mr r3, r28 +/* 8023687C 002337DC 48 10 72 65 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80236880: +/* 80236880 002337E0 3B 39 00 01 */ addi r25, r25, 1 +/* 80236884 002337E4 3B 5A 00 14 */ addi r26, r26, 0x14 +/* 80236888 002337E8 28 19 00 02 */ cmplwi r25, 2 +/* 8023688C 002337EC 41 80 FE A8 */ blt lbl_80236734 +/* 80236890 002337F0 3C 80 80 3D */ lis r4, lbl_803D4310@ha +/* 80236894 002337F4 38 60 00 18 */ li r3, 0x18 +/* 80236898 002337F8 38 84 43 10 */ addi r4, r4, lbl_803D4310@l +/* 8023689C 002337FC 38 A0 00 00 */ li r5, 0 +/* 802368A0 00233800 38 84 00 4B */ addi r4, r4, 0x4b +/* 802368A4 00233804 48 0D EF C9 */ bl __nw__FUlPCcPCc +/* 802368A8 00233808 7C 7C 1B 79 */ or. r28, r3, r3 +/* 802368AC 0023380C 41 82 00 3C */ beq lbl_802368E8 +/* 802368B0 00233810 88 1D 00 30 */ lbz r0, 0x30(r29) +/* 802368B4 00233814 7F C4 F3 78 */ mr r4, r30 +/* 802368B8 00233818 81 3D 00 04 */ lwz r9, 4(r29) +/* 802368BC 0023381C 38 A1 00 2C */ addi r5, r1, 0x2c +/* 802368C0 00233820 54 08 CF FE */ rlwinm r8, r0, 0x19, 0x1f, 0x1f +/* 802368C4 00233824 38 C1 00 3C */ addi r6, r1, 0x3c +/* 802368C8 00233828 91 21 00 3C */ stw r9, 0x3c(r1) +/* 802368CC 0023382C 38 E1 00 CC */ addi r7, r1, 0xcc +/* 802368D0 00233830 A0 1D 00 08 */ lhz r0, 8(r29) +/* 802368D4 00233834 91 21 00 38 */ stw r9, 0x38(r1) +/* 802368D8 00233838 B0 01 00 28 */ sth r0, 0x28(r1) +/* 802368DC 0023383C B0 01 00 2C */ sth r0, 0x2c(r1) +/* 802368E0 00233840 4B F7 10 51 */ bl "__ct__22CCollisionActorManagerFR13CStateManager9TUniqueId7TAreaIdRCQ24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>b" +/* 802368E4 00233844 7C 7C 1B 78 */ mr r28, r3 +lbl_802368E8: +/* 802368E8 00233848 80 7D 05 80 */ lwz r3, 0x580(r29) +/* 802368EC 0023384C 38 80 00 01 */ li r4, 1 +/* 802368F0 00233850 4B F7 0F ED */ bl sub_801a78dc +/* 802368F4 00233854 93 9D 05 80 */ stw r28, 0x580(r29) +/* 802368F8 00233858 3B 20 00 00 */ li r25, 0 +/* 802368FC 0023385C 48 00 00 50 */ b lbl_8023694C +lbl_80236900: +/* 80236900 00233860 80 7D 05 80 */ lwz r3, 0x580(r29) +/* 80236904 00233864 7F 24 CB 78 */ mr r4, r25 +/* 80236908 00233868 4B F7 09 31 */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 8023690C 0023386C A0 03 00 3C */ lhz r0, 0x3c(r3) +/* 80236910 00233870 7F C3 F3 78 */ mr r3, r30 +/* 80236914 00233874 38 81 00 24 */ addi r4, r1, 0x24 +/* 80236918 00233878 B0 01 00 34 */ sth r0, 0x34(r1) +/* 8023691C 0023387C B0 01 00 24 */ sth r0, 0x24(r1) +/* 80236920 00233880 4B E1 5C 55 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80236924 00233884 7C 64 1B 78 */ mr r4, r3 +/* 80236928 00233888 38 61 00 48 */ addi r3, r1, 0x48 +/* 8023692C 0023388C 4B E7 8A 21 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 80236930 00233890 80 63 00 04 */ lwz r3, 4(r3) +/* 80236934 00233894 28 03 00 00 */ cmplwi r3, 0 +/* 80236938 00233898 41 82 00 10 */ beq lbl_80236948 +/* 8023693C 0023389C 7F C5 F3 78 */ mr r5, r30 +/* 80236940 002338A0 38 80 00 35 */ li r4, 0x35 +/* 80236944 002338A4 4B E1 DA 0D */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +lbl_80236948: +/* 80236948 002338A8 3B 39 00 01 */ addi r25, r25, 1 +lbl_8023694C: +/* 8023694C 002338AC 80 7D 05 80 */ lwz r3, 0x580(r29) +/* 80236950 002338B0 4B F7 08 F9 */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 80236954 002338B4 7C 19 18 40 */ cmplw r25, r3 +/* 80236958 002338B8 41 80 FF A8 */ blt lbl_80236900 +/* 8023695C 002338BC 3B 5D 06 A0 */ addi r26, r29, 0x6a0 +/* 80236960 002338C0 3B 20 00 00 */ li r25, 0 +/* 80236964 002338C4 48 00 00 D4 */ b lbl_80236A38 +lbl_80236968: +/* 80236968 002338C8 80 7D 05 80 */ lwz r3, 0x580(r29) +/* 8023696C 002338CC 7F 24 CB 78 */ mr r4, r25 +/* 80236970 002338D0 4B F7 08 C9 */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 80236974 002338D4 80 8D 96 58 */ lwz r4, lbl_805A8218@sda21(r13) +/* 80236978 002338D8 7C 7C 1B 78 */ mr r28, r3 +/* 8023697C 002338DC 38 61 00 60 */ addi r3, r1, 0x60 +/* 80236980 002338E0 4B DC E3 39 */ bl string_l__4rstlFPCc +/* 80236984 002338E4 38 7C 00 2C */ addi r3, r28, 0x2c +/* 80236988 002338E8 38 81 00 60 */ addi r4, r1, 0x60 +/* 8023698C 002338EC 4B E1 BC 55 */ 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" +/* 80236990 002338F0 7C 7F 1B 78 */ mr r31, r3 +/* 80236994 002338F4 38 61 00 60 */ addi r3, r1, 0x60 +/* 80236998 002338F8 48 10 71 49 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8023699C 002338FC 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 802369A0 00233900 40 82 00 30 */ bne lbl_802369D0 +/* 802369A4 00233904 80 8D 96 5C */ lwz r4, lbl_805A821C@sda21(r13) +/* 802369A8 00233908 38 61 00 50 */ addi r3, r1, 0x50 +/* 802369AC 0023390C 4B DC E3 0D */ bl string_l__4rstlFPCc +/* 802369B0 00233910 38 7C 00 2C */ addi r3, r28, 0x2c +/* 802369B4 00233914 38 81 00 50 */ addi r4, r1, 0x50 +/* 802369B8 00233918 4B E1 BC 29 */ 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" +/* 802369BC 0023391C 7C 7F 1B 78 */ mr r31, r3 +/* 802369C0 00233920 38 61 00 50 */ addi r3, r1, 0x50 +/* 802369C4 00233924 48 10 71 1D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 802369C8 00233928 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 802369CC 0023392C 41 82 00 68 */ beq lbl_80236A34 +lbl_802369D0: +/* 802369D0 00233930 A0 1C 00 3C */ lhz r0, 0x3c(r28) +/* 802369D4 00233934 7F C3 F3 78 */ mr r3, r30 +/* 802369D8 00233938 38 81 00 20 */ addi r4, r1, 0x20 +/* 802369DC 0023393C B0 01 00 30 */ sth r0, 0x30(r1) +/* 802369E0 00233940 B0 01 00 20 */ sth r0, 0x20(r1) +/* 802369E4 00233944 4B E1 5B 91 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 802369E8 00233948 7C 64 1B 78 */ mr r4, r3 +/* 802369EC 0023394C 38 61 00 40 */ addi r3, r1, 0x40 +/* 802369F0 00233950 4B E7 89 5D */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 802369F4 00233954 83 63 00 04 */ lwz r27, 4(r3) +/* 802369F8 00233958 28 1B 00 00 */ cmplwi r27, 0 +/* 802369FC 0023395C 41 82 00 38 */ beq lbl_80236A34 +/* 80236A00 00233960 7F 63 DB 78 */ mr r3, r27 +/* 80236A04 00233964 7F C5 F3 78 */ mr r5, r30 +/* 80236A08 00233968 38 80 00 12 */ li r4, 0x12 +/* 80236A0C 0023396C 4B E1 D9 45 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 80236A10 00233970 80 1D 06 9C */ lwz r0, 0x69c(r29) +/* 80236A14 00233974 A0 9B 00 08 */ lhz r4, 8(r27) +/* 80236A18 00233978 54 00 08 3C */ slwi r0, r0, 1 +/* 80236A1C 0023397C 7C 7A 02 15 */ add. r3, r26, r0 +/* 80236A20 00233980 41 82 00 08 */ beq lbl_80236A28 +/* 80236A24 00233984 B0 83 00 00 */ sth r4, 0(r3) +lbl_80236A28: +/* 80236A28 00233988 80 7D 06 9C */ lwz r3, 0x69c(r29) +/* 80236A2C 0023398C 38 03 00 01 */ addi r0, r3, 1 +/* 80236A30 00233990 90 1D 06 9C */ stw r0, 0x69c(r29) +lbl_80236A34: +/* 80236A34 00233994 3B 39 00 01 */ addi r25, r25, 1 +lbl_80236A38: +/* 80236A38 00233998 80 7D 05 80 */ lwz r3, 0x580(r29) +/* 80236A3C 0023399C 4B F7 08 0D */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 80236A40 002339A0 7C 19 18 40 */ cmplw r25, r3 +/* 80236A44 002339A4 41 80 FF 24 */ blt lbl_80236968 +/* 80236A48 002339A8 38 61 00 CC */ addi r3, r1, 0xcc +/* 80236A4C 002339AC 38 80 FF FF */ li r4, -1 +/* 80236A50 002339B0 4B F1 F8 DD */ bl sub_8015632c +/* 80236A54 002339B4 BB 21 01 F4 */ lmw r25, 0x1f4(r1) +/* 80236A58 002339B8 80 01 02 14 */ lwz r0, 0x214(r1) +/* 80236A5C 002339BC 7C 08 03 A6 */ mtlr r0 +/* 80236A60 002339C0 38 21 02 10 */ addi r1, r1, 0x210 +/* 80236A64 002339C4 4E 80 00 20 */ blr + +.global AcceptScriptMsg__10CMagdoliteF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__10CMagdoliteF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 80236A68 002339C8 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 80236A6C 002339CC 7C 08 02 A6 */ mflr r0 +/* 80236A70 002339D0 90 01 00 74 */ stw r0, 0x74(r1) +/* 80236A74 002339D4 BF 61 00 5C */ stmw r27, 0x5c(r1) +/* 80236A78 002339D8 7C 9D 23 78 */ mr r29, r4 +/* 80236A7C 002339DC 38 1D FF E2 */ addi r0, r29, -30 +/* 80236A80 002339E0 7C 7C 1B 78 */ mr r28, r3 +/* 80236A84 002339E4 28 00 00 12 */ cmplwi r0, 0x12 +/* 80236A88 002339E8 7C BE 2B 78 */ mr r30, r5 +/* 80236A8C 002339EC 7C DF 33 78 */ mr r31, r6 +/* 80236A90 002339F0 3B 60 00 00 */ li r27, 0 +/* 80236A94 002339F4 41 81 02 AC */ bgt lbl_80236D40 +/* 80236A98 002339F8 3C 80 80 3F */ lis r4, lbl_803E850C@ha +/* 80236A9C 002339FC 54 00 10 3A */ slwi r0, r0, 2 +/* 80236AA0 00233A00 38 84 85 0C */ addi r4, r4, lbl_803E850C@l +/* 80236AA4 00233A04 7C 04 00 2E */ lwzx r0, r4, r0 +/* 80236AA8 00233A08 7C 09 03 A6 */ mtctr r0 +/* 80236AAC 00233A0C 4E 80 04 20 */ bctr +/* 80236AB0 00233A10 A0 1E 00 00 */ lhz r0, 0(r30) +/* 80236AB4 00233A14 7F E3 FB 78 */ mr r3, r31 +/* 80236AB8 00233A18 38 81 00 14 */ addi r4, r1, 0x14 +/* 80236ABC 00233A1C B0 01 00 14 */ sth r0, 0x14(r1) +/* 80236AC0 00233A20 4B E1 5A E5 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80236AC4 00233A24 7C 64 1B 78 */ mr r4, r3 +/* 80236AC8 00233A28 38 61 00 18 */ addi r3, r1, 0x18 +/* 80236ACC 00233A2C 4B E7 6C 41 */ bl "__ct__29TCastToPtr<15CGameProjectile>FP7CEntity" +/* 80236AD0 00233A30 83 63 00 04 */ lwz r27, 4(r3) +/* 80236AD4 00233A34 28 1B 00 00 */ cmplwi r27, 0 +/* 80236AD8 00233A38 41 82 00 FC */ beq lbl_80236BD4 +/* 80236ADC 00233A3C 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 80236AE0 00233A40 A0 9B 00 EC */ lhz r4, 0xec(r27) +/* 80236AE4 00233A44 A0 03 00 08 */ lhz r0, 8(r3) +/* 80236AE8 00233A48 7C 04 00 40 */ cmplw r4, r0 +/* 80236AEC 00233A4C 40 82 00 E8 */ bne lbl_80236BD4 +/* 80236AF0 00233A50 80 7C 04 50 */ lwz r3, 0x450(r28) +/* 80236AF4 00233A54 4B F0 35 D9 */ bl GetPercentageFrozen__15CBodyControllerCFv +/* 80236AF8 00233A58 C0 02 B7 20 */ lfs f0, lbl_805AD440@sda21(r2) +/* 80236AFC 00233A5C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80236B00 00233A60 40 81 00 48 */ ble lbl_80236B48 +/* 80236B04 00233A64 38 7C 05 BC */ addi r3, r28, 0x5bc +/* 80236B08 00233A68 38 9B 01 2C */ addi r4, r27, 0x12c +/* 80236B0C 00233A6C 38 A0 00 00 */ li r5, 0 +/* 80236B10 00233A70 4B EC B9 AD */ bl GetVulnerability__20CDamageVulnerabilityCFRC11CWeaponMode +/* 80236B14 00233A74 2C 03 00 02 */ cmpwi r3, 2 +/* 80236B18 00233A78 41 82 00 30 */ beq lbl_80236B48 +/* 80236B1C 00233A7C 88 1C 04 00 */ lbz r0, 0x400(r28) +/* 80236B20 00233A80 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80236B24 00233A84 41 82 00 B0 */ beq lbl_80236BD4 +/* 80236B28 00233A88 88 1C 07 54 */ lbz r0, 0x754(r28) +/* 80236B2C 00233A8C 38 60 00 01 */ li r3, 1 +/* 80236B30 00233A90 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 80236B34 00233A94 98 1C 07 54 */ stb r0, 0x754(r28) +/* 80236B38 00233A98 88 1C 04 01 */ lbz r0, 0x401(r28) +/* 80236B3C 00233A9C 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 80236B40 00233AA0 98 1C 04 01 */ stb r0, 0x401(r28) +/* 80236B44 00233AA4 48 00 00 90 */ b lbl_80236BD4 +lbl_80236B48: +/* 80236B48 00233AA8 7F 83 E3 78 */ mr r3, r28 +/* 80236B4C 00233AAC 7F E4 FB 78 */ mr r4, r31 +/* 80236B50 00233AB0 81 9C 00 00 */ lwz r12, 0(r28) +/* 80236B54 00233AB4 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80236B58 00233AB8 7D 89 03 A6 */ mtctr r12 +/* 80236B5C 00233ABC 4E 80 04 21 */ bctrl +/* 80236B60 00233AC0 C0 5C 07 0C */ lfs f2, 0x70c(r28) +/* 80236B64 00233AC4 C0 23 00 00 */ lfs f1, 0(r3) +/* 80236B68 00233AC8 C0 1C 05 74 */ lfs f0, 0x574(r28) +/* 80236B6C 00233ACC EC 22 08 28 */ fsubs f1, f2, f1 +/* 80236B70 00233AD0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80236B74 00233AD4 40 81 00 38 */ ble lbl_80236BAC +/* 80236B78 00233AD8 7F 83 E3 78 */ mr r3, r28 +/* 80236B7C 00233ADC 7F E4 FB 78 */ mr r4, r31 +/* 80236B80 00233AE0 81 9C 00 00 */ lwz r12, 0(r28) +/* 80236B84 00233AE4 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80236B88 00233AE8 7D 89 03 A6 */ mtctr r12 +/* 80236B8C 00233AEC 4E 80 04 21 */ bctrl +/* 80236B90 00233AF0 C0 03 00 00 */ lfs f0, 0(r3) +/* 80236B94 00233AF4 38 60 00 01 */ li r3, 1 +/* 80236B98 00233AF8 D0 1C 07 0C */ stfs f0, 0x70c(r28) +/* 80236B9C 00233AFC 88 1C 07 54 */ lbz r0, 0x754(r28) +/* 80236BA0 00233B00 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80236BA4 00233B04 98 1C 07 54 */ stb r0, 0x754(r28) +/* 80236BA8 00233B08 48 00 00 2C */ b lbl_80236BD4 +lbl_80236BAC: +/* 80236BAC 00233B0C 38 7C 06 24 */ addi r3, r28, 0x624 +/* 80236BB0 00233B10 38 9B 01 2C */ addi r4, r27, 0x12c +/* 80236BB4 00233B14 38 A0 00 00 */ li r5, 0 +/* 80236BB8 00233B18 4B EC B9 05 */ bl GetVulnerability__20CDamageVulnerabilityCFRC11CWeaponMode +/* 80236BBC 00233B1C 2C 03 00 02 */ cmpwi r3, 2 +/* 80236BC0 00233B20 41 82 00 14 */ beq lbl_80236BD4 +/* 80236BC4 00233B24 88 1C 04 00 */ lbz r0, 0x400(r28) +/* 80236BC8 00233B28 38 60 00 01 */ li r3, 1 +/* 80236BCC 00233B2C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80236BD0 00233B30 98 1C 04 00 */ stb r0, 0x400(r28) +lbl_80236BD4: +/* 80236BD4 00233B34 3B 60 00 01 */ li r27, 1 +/* 80236BD8 00233B38 48 00 01 68 */ b lbl_80236D40 +/* 80236BDC 00233B3C 80 7C 04 50 */ lwz r3, 0x450(r28) +/* 80236BE0 00233B40 7F E4 FB 78 */ mr r4, r31 +/* 80236BE4 00233B44 4B F0 41 0D */ bl Activate__15CBodyControllerFR13CStateManager +/* 80236BE8 00233B48 7F 83 E3 78 */ mr r3, r28 +/* 80236BEC 00233B4C 7F E5 FB 78 */ mr r5, r31 +/* 80236BF0 00233B50 38 80 00 13 */ li r4, 0x13 +/* 80236BF4 00233B54 4B E1 D3 8D */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 80236BF8 00233B58 7F 83 E3 78 */ mr r3, r28 +/* 80236BFC 00233B5C 7F E5 FB 78 */ mr r5, r31 +/* 80236C00 00233B60 38 80 00 32 */ li r4, 0x32 +/* 80236C04 00233B64 4B E1 D7 4D */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 80236C08 00233B68 38 7C 05 84 */ addi r3, r28, 0x584 +/* 80236C0C 00233B6C 38 80 00 00 */ li r4, 0 +/* 80236C10 00233B70 4B F3 E6 15 */ bl SetActive__13CBoneTrackingFb +/* 80236C14 00233B74 7F 83 E3 78 */ mr r3, r28 +/* 80236C18 00233B78 38 80 00 00 */ li r4, 0 +/* 80236C1C 00233B7C 4B E1 C1 51 */ bl CreateShadow__6CActorFb +/* 80236C20 00233B80 7F 84 E3 78 */ mr r4, r28 +/* 80236C24 00233B84 38 61 00 38 */ addi r3, r1, 0x38 +/* 80236C28 00233B88 4B EE 3D 05 */ bl GetBoundingBox__13CPhysicsActorCFv +/* 80236C2C 00233B8C C0 61 00 44 */ lfs f3, 0x44(r1) +/* 80236C30 00233B90 7F 83 E3 78 */ mr r3, r28 +/* 80236C34 00233B94 C0 41 00 38 */ lfs f2, 0x38(r1) +/* 80236C38 00233B98 38 81 00 20 */ addi r4, r1, 0x20 +/* 80236C3C 00233B9C C0 21 00 4C */ lfs f1, 0x4c(r1) +/* 80236C40 00233BA0 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 80236C44 00233BA4 EC 63 10 28 */ fsubs f3, f3, f2 +/* 80236C48 00233BA8 C0 82 B7 4C */ lfs f4, lbl_805AD46C@sda21(r2) +/* 80236C4C 00233BAC EC 41 00 28 */ fsubs f2, f1, f0 +/* 80236C50 00233BB0 C0 21 00 48 */ lfs f1, 0x48(r1) +/* 80236C54 00233BB4 EC 64 00 F2 */ fmuls f3, f4, f3 +/* 80236C58 00233BB8 C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 80236C5C 00233BBC EC A4 00 B2 */ fmuls f5, f4, f2 +/* 80236C60 00233BC0 EC 41 00 28 */ fsubs f2, f1, f0 +/* 80236C64 00233BC4 D0 61 00 2C */ stfs f3, 0x2c(r1) +/* 80236C68 00233BC8 FC 20 18 50 */ fneg f1, f3 +/* 80236C6C 00233BCC FC 00 28 50 */ fneg f0, f5 +/* 80236C70 00233BD0 D0 A1 00 34 */ stfs f5, 0x34(r1) +/* 80236C74 00233BD4 EC 44 00 B2 */ fmuls f2, f4, f2 +/* 80236C78 00233BD8 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 80236C7C 00233BDC FC 20 10 50 */ fneg f1, f2 +/* 80236C80 00233BE0 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 80236C84 00233BE4 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 80236C88 00233BE8 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 80236C8C 00233BEC 4B EE 39 CD */ bl SetBoundingBox__13CPhysicsActorFRC6CAABox +/* 80236C90 00233BF0 7F 83 E3 78 */ mr r3, r28 +/* 80236C94 00233BF4 7F E4 FB 78 */ mr r4, r31 +/* 80236C98 00233BF8 4B FF F9 29 */ bl sub_802365c0 +/* 80236C9C 00233BFC C0 02 B7 20 */ lfs f0, lbl_805AD440@sda21(r2) +/* 80236CA0 00233C00 7F 83 E3 78 */ mr r3, r28 +/* 80236CA4 00233C04 7F E4 FB 78 */ mr r4, r31 +/* 80236CA8 00233C08 D0 1C 03 40 */ stfs f0, 0x340(r28) +/* 80236CAC 00233C0C 4B FF DE 75 */ bl sub_80234b20 +/* 80236CB0 00233C10 7F 83 E3 78 */ mr r3, r28 +/* 80236CB4 00233C14 7F E4 FB 78 */ mr r4, r31 +/* 80236CB8 00233C18 81 9C 00 00 */ lwz r12, 0(r28) +/* 80236CBC 00233C1C 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80236CC0 00233C20 7D 89 03 A6 */ mtctr r12 +/* 80236CC4 00233C24 4E 80 04 21 */ bctrl +/* 80236CC8 00233C28 C0 03 00 00 */ lfs f0, 0(r3) +/* 80236CCC 00233C2C D0 1C 07 0C */ stfs f0, 0x70c(r28) +/* 80236CD0 00233C30 48 00 00 70 */ b lbl_80236D40 +/* 80236CD4 00233C34 80 7C 05 80 */ lwz r3, 0x580(r28) +/* 80236CD8 00233C38 7F E4 FB 78 */ mr r4, r31 +/* 80236CDC 00233C3C 4B F7 06 E9 */ bl Destroy__22CCollisionActorManagerCFR13CStateManager +/* 80236CE0 00233C40 A0 7C 06 C8 */ lhz r3, 0x6c8(r28) +/* 80236CE4 00233C44 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80236CE8 00233C48 7C 03 00 40 */ cmplw r3, r0 +/* 80236CEC 00233C4C 41 82 00 54 */ beq lbl_80236D40 +/* 80236CF0 00233C50 A0 1C 06 C8 */ lhz r0, 0x6c8(r28) +/* 80236CF4 00233C54 7F E3 FB 78 */ mr r3, r31 +/* 80236CF8 00233C58 38 81 00 10 */ addi r4, r1, 0x10 +/* 80236CFC 00233C5C B0 01 00 10 */ sth r0, 0x10(r1) +/* 80236D00 00233C60 4B E1 55 6D */ bl FreeScriptObject__13CStateManagerF9TUniqueId +/* 80236D04 00233C64 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80236D08 00233C68 B0 1C 06 C8 */ sth r0, 0x6c8(r28) +/* 80236D0C 00233C6C 48 00 00 34 */ b lbl_80236D40 +/* 80236D10 00233C70 A0 1E 00 00 */ lhz r0, 0(r30) +/* 80236D14 00233C74 7F E5 FB 78 */ mr r5, r31 +/* 80236D18 00233C78 38 81 00 0C */ addi r4, r1, 0xc +/* 80236D1C 00233C7C B0 01 00 0C */ sth r0, 0xc(r1) +/* 80236D20 00233C80 4B FF DA 89 */ bl sub_802347a8 +/* 80236D24 00233C84 48 00 00 1C */ b lbl_80236D40 +/* 80236D28 00233C88 80 7C 05 80 */ lwz r3, 0x580(r28) +/* 80236D2C 00233C8C 28 03 00 00 */ cmplwi r3, 0 +/* 80236D30 00233C90 41 82 00 10 */ beq lbl_80236D40 +/* 80236D34 00233C94 7F E4 FB 78 */ mr r4, r31 +/* 80236D38 00233C98 38 A0 00 00 */ li r5, 0 +/* 80236D3C 00233C9C 4B F7 01 85 */ bl SetMovable__22CCollisionActorManagerFb +lbl_80236D40: +/* 80236D40 00233CA0 57 60 06 3F */ clrlwi. r0, r27, 0x18 +/* 80236D44 00233CA4 40 82 00 20 */ bne lbl_80236D64 +/* 80236D48 00233CA8 A0 1E 00 00 */ lhz r0, 0(r30) +/* 80236D4C 00233CAC 7F 83 E3 78 */ mr r3, r28 +/* 80236D50 00233CB0 7F A4 EB 78 */ mr r4, r29 +/* 80236D54 00233CB4 7F E6 FB 78 */ mr r6, r31 +/* 80236D58 00233CB8 B0 01 00 08 */ sth r0, 8(r1) +/* 80236D5C 00233CBC 38 A1 00 08 */ addi r5, r1, 8 +/* 80236D60 00233CC0 4B E4 5E 19 */ bl AcceptScriptMsg__10CPatternedF20EScriptObjectMessage9TUniqueIdR13CStateManager +lbl_80236D64: +/* 80236D64 00233CC4 BB 61 00 5C */ lmw r27, 0x5c(r1) +/* 80236D68 00233CC8 80 01 00 74 */ lwz r0, 0x74(r1) +/* 80236D6C 00233CCC 7C 08 03 A6 */ mtlr r0 +/* 80236D70 00233CD0 38 21 00 70 */ addi r1, r1, 0x70 +/* 80236D74 00233CD4 4E 80 00 20 */ blr + +.global Render__10CMagdoliteCFRC13CStateManager +Render__10CMagdoliteCFRC13CStateManager: +/* 80236D78 00233CD8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80236D7C 00233CDC 7C 08 02 A6 */ mflr r0 +/* 80236D80 00233CE0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80236D84 00233CE4 4B E4 12 A9 */ bl Render__10CPatternedCFRC13CStateManager +/* 80236D88 00233CE8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80236D8C 00233CEC 7C 08 03 A6 */ mtlr r0 +/* 80236D90 00233CF0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80236D94 00233CF4 4E 80 00 20 */ blr + +.global KnockBack__10CMagdoliteFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef +KnockBack__10CMagdoliteFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef: +/* 80236D98 00233CF8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80236D9C 00233CFC 7C 08 02 A6 */ mflr r0 +/* 80236DA0 00233D00 90 01 00 14 */ stw r0, 0x14(r1) +/* 80236DA4 00233D04 4B E4 39 D9 */ bl KnockBack__10CPatternedFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef +/* 80236DA8 00233D08 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80236DAC 00233D0C 7C 08 03 A6 */ mtlr r0 +/* 80236DB0 00233D10 38 21 00 10 */ addi r1, r1, 0x10 +/* 80236DB4 00233D14 4E 80 00 20 */ blr + +.global Think__10CMagdoliteFfR13CStateManager +Think__10CMagdoliteFfR13CStateManager: +/* 80236DB8 00233D18 94 21 FD 40 */ stwu r1, -0x2c0(r1) +/* 80236DBC 00233D1C 7C 08 02 A6 */ mflr r0 +/* 80236DC0 00233D20 90 01 02 C4 */ stw r0, 0x2c4(r1) +/* 80236DC4 00233D24 DB E1 02 B0 */ stfd f31, 0x2b0(r1) +/* 80236DC8 00233D28 F3 E1 02 B8 */ psq_st f31, 696(r1), 0, qr0 +/* 80236DCC 00233D2C DB C1 02 A0 */ stfd f30, 0x2a0(r1) +/* 80236DD0 00233D30 F3 C1 02 A8 */ psq_st f30, 680(r1), 0, qr0 +/* 80236DD4 00233D34 DB A1 02 90 */ stfd f29, 0x290(r1) +/* 80236DD8 00233D38 F3 A1 02 98 */ psq_st f29, 664(r1), 0, qr0 +/* 80236DDC 00233D3C DB 81 02 80 */ stfd f28, 0x280(r1) +/* 80236DE0 00233D40 F3 81 02 88 */ psq_st f28, 648(r1), 0, qr0 +/* 80236DE4 00233D44 DB 61 02 70 */ stfd f27, 0x270(r1) +/* 80236DE8 00233D48 F3 61 02 78 */ psq_st f27, 632(r1), 0, qr0 +/* 80236DEC 00233D4C DB 41 02 60 */ stfd f26, 0x260(r1) +/* 80236DF0 00233D50 F3 41 02 68 */ psq_st f26, 616(r1), 0, qr0 +/* 80236DF4 00233D54 DB 21 02 50 */ stfd f25, 0x250(r1) +/* 80236DF8 00233D58 F3 21 02 58 */ psq_st f25, 600(r1), 0, qr0 +/* 80236DFC 00233D5C 93 E1 02 4C */ stw r31, 0x24c(r1) +/* 80236E00 00233D60 93 C1 02 48 */ stw r30, 0x248(r1) +/* 80236E04 00233D64 93 A1 02 44 */ stw r29, 0x244(r1) +/* 80236E08 00233D68 FF 20 08 90 */ fmr f25, f1 +/* 80236E0C 00233D6C 7C 7E 1B 78 */ mr r30, r3 +/* 80236E10 00233D70 7C 9F 23 78 */ mr r31, r4 +/* 80236E14 00233D74 4B E4 2D 05 */ bl Think__10CPatternedFfR13CStateManager +/* 80236E18 00233D78 88 1E 00 30 */ lbz r0, 0x30(r30) +/* 80236E1C 00233D7C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80236E20 00233D80 41 82 05 34 */ beq lbl_80237354 +/* 80236E24 00233D84 C0 1E 07 58 */ lfs f0, 0x758(r30) +/* 80236E28 00233D88 EC 00 C8 2A */ fadds f0, f0, f25 +/* 80236E2C 00233D8C D0 1E 07 58 */ stfs f0, 0x758(r30) +/* 80236E30 00233D90 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80236E34 00233D94 4B F0 32 99 */ bl GetPercentageFrozen__15CBodyControllerCFv +/* 80236E38 00233D98 C0 02 B7 20 */ lfs f0, lbl_805AD440@sda21(r2) +/* 80236E3C 00233D9C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80236E40 00233DA0 40 81 00 20 */ ble lbl_80236E60 +/* 80236E44 00233DA4 88 1E 07 54 */ lbz r0, 0x754(r30) +/* 80236E48 00233DA8 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 80236E4C 00233DAC 41 82 00 14 */ beq lbl_80236E60 +/* 80236E50 00233DB0 7F C3 F3 78 */ mr r3, r30 +/* 80236E54 00233DB4 7F E4 FB 78 */ mr r4, r31 +/* 80236E58 00233DB8 38 A0 00 00 */ li r5, 0 +/* 80236E5C 00233DBC 4B FF DC 15 */ bl sub_80234a70 +lbl_80236E60: +/* 80236E60 00233DC0 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 80236E64 00233DC4 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80236E68 00233DC8 40 82 00 64 */ bne lbl_80236ECC +/* 80236E6C 00233DCC A0 1E 06 C8 */ lhz r0, 0x6c8(r30) +/* 80236E70 00233DD0 7F E3 FB 78 */ mr r3, r31 +/* 80236E74 00233DD4 38 81 00 0C */ addi r4, r1, 0xc +/* 80236E78 00233DD8 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80236E7C 00233DDC 4B E1 56 F9 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80236E80 00233DE0 7C 7D 1B 79 */ or. r29, r3, r3 +/* 80236E84 00233DE4 41 82 00 48 */ beq lbl_80236ECC +/* 80236E88 00233DE8 80 8D 96 4C */ lwz r4, lbl_805A820C@sda21(r13) +/* 80236E8C 00233DEC 38 61 00 C0 */ addi r3, r1, 0xc0 +/* 80236E90 00233DF0 4B DC DE 29 */ bl string_l__4rstlFPCc +/* 80236E94 00233DF4 7F C4 F3 78 */ mr r4, r30 +/* 80236E98 00233DF8 38 61 01 78 */ addi r3, r1, 0x178 +/* 80236E9C 00233DFC 38 A1 00 C0 */ addi r5, r1, 0xc0 +/* 80236EA0 00233E00 4B E4 1A D9 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80236EA4 00233E04 38 61 02 08 */ addi r3, r1, 0x208 +/* 80236EA8 00233E08 38 81 01 78 */ addi r4, r1, 0x178 +/* 80236EAC 00233E0C 48 0D BC C9 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80236EB0 00233E10 38 61 00 C0 */ addi r3, r1, 0xc0 +/* 80236EB4 00233E14 48 10 6C 2D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80236EB8 00233E18 FC 20 C8 90 */ fmr f1, f25 +/* 80236EBC 00233E1C 7F A3 EB 78 */ mr r3, r29 +/* 80236EC0 00233E20 7F E5 FB 78 */ mr r5, r31 +/* 80236EC4 00233E24 38 81 02 08 */ addi r4, r1, 0x208 +/* 80236EC8 00233E28 4B F6 15 39 */ bl SetTransform__13CFlameThrowerFRC12CTransform4f +lbl_80236ECC: +/* 80236ECC 00233E2C 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 80236ED0 00233E30 7F E5 FB 78 */ mr r5, r31 +/* 80236ED4 00233E34 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 80236ED8 00233E38 C0 22 B7 20 */ lfs f1, lbl_805AD440@sda21(r2) +/* 80236EDC 00233E3C 81 84 00 00 */ lwz r12, 0(r4) +/* 80236EE0 00233E40 C3 A4 00 60 */ lfs f29, 0x60(r4) +/* 80236EE4 00233E44 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 80236EE8 00233E48 C3 C4 00 50 */ lfs f30, 0x50(r4) +/* 80236EEC 00233E4C C3 E4 00 40 */ lfs f31, 0x40(r4) +/* 80236EF0 00233E50 7D 89 03 A6 */ mtctr r12 +/* 80236EF4 00233E54 4E 80 04 21 */ bctrl +/* 80236EF8 00233E58 C3 81 00 B4 */ lfs f28, 0xb4(r1) +/* 80236EFC 00233E5C 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 80236F00 00233E60 C3 61 00 B8 */ lfs f27, 0xb8(r1) +/* 80236F04 00233E64 C3 41 00 BC */ lfs f26, 0xbc(r1) +/* 80236F08 00233E68 80 8D 96 4C */ lwz r4, lbl_805A820C@sda21(r13) +/* 80236F0C 00233E6C 4B DC DD AD */ bl string_l__4rstlFPCc +/* 80236F10 00233E70 7F C4 F3 78 */ mr r4, r30 +/* 80236F14 00233E74 38 61 01 48 */ addi r3, r1, 0x148 +/* 80236F18 00233E78 38 A1 00 A4 */ addi r5, r1, 0xa4 +/* 80236F1C 00233E7C 4B E4 1A 5D */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80236F20 00233E80 38 61 01 D8 */ addi r3, r1, 0x1d8 +/* 80236F24 00233E84 38 81 01 48 */ addi r4, r1, 0x148 +/* 80236F28 00233E88 48 0D BC 4D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80236F2C 00233E8C 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 80236F30 00233E90 48 10 6B B1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80236F34 00233E94 C0 41 01 E4 */ lfs f2, 0x1e4(r1) +/* 80236F38 00233E98 38 61 00 98 */ addi r3, r1, 0x98 +/* 80236F3C 00233E9C C0 21 01 F4 */ lfs f1, 0x1f4(r1) +/* 80236F40 00233EA0 38 81 00 8C */ addi r4, r1, 0x8c +/* 80236F44 00233EA4 C0 01 02 04 */ lfs f0, 0x204(r1) +/* 80236F48 00233EA8 EC 5C 10 28 */ fsubs f2, f28, f2 +/* 80236F4C 00233EAC EC 3B 08 28 */ fsubs f1, f27, f1 +/* 80236F50 00233EB0 EC 1A 00 28 */ fsubs f0, f26, f0 +/* 80236F54 00233EB4 D0 41 00 8C */ stfs f2, 0x8c(r1) +/* 80236F58 00233EB8 D0 21 00 90 */ stfs f1, 0x90(r1) +/* 80236F5C 00233EBC D0 01 00 94 */ stfs f0, 0x94(r1) +/* 80236F60 00233EC0 48 0D D8 F1 */ bl AsNormalized__9CVector3fCFv +/* 80236F64 00233EC4 C0 41 00 98 */ lfs f2, 0x98(r1) +/* 80236F68 00233EC8 38 61 00 80 */ addi r3, r1, 0x80 +/* 80236F6C 00233ECC C0 21 00 9C */ lfs f1, 0x9c(r1) +/* 80236F70 00233ED0 38 81 00 DC */ addi r4, r1, 0xdc +/* 80236F74 00233ED4 C0 01 00 A0 */ lfs f0, 0xa0(r1) +/* 80236F78 00233ED8 D0 41 00 DC */ stfs f2, 0xdc(r1) +/* 80236F7C 00233EDC C0 82 B7 44 */ lfs f4, lbl_805AD464@sda21(r2) +/* 80236F80 00233EE0 D0 21 00 E0 */ stfs f1, 0xe0(r1) +/* 80236F84 00233EE4 C0 41 01 DC */ lfs f2, 0x1dc(r1) +/* 80236F88 00233EE8 D0 01 00 E4 */ stfs f0, 0xe4(r1) +/* 80236F8C 00233EEC C0 21 01 EC */ lfs f1, 0x1ec(r1) +/* 80236F90 00233EF0 C0 7E 05 7C */ lfs f3, 0x57c(r30) +/* 80236F94 00233EF4 C0 01 01 FC */ lfs f0, 0x1fc(r1) +/* 80236F98 00233EF8 EC 64 00 F2 */ fmuls f3, f4, f3 +/* 80236F9C 00233EFC D0 41 00 80 */ stfs f2, 0x80(r1) +/* 80236FA0 00233F00 D0 21 00 84 */ stfs f1, 0x84(r1) +/* 80236FA4 00233F04 D0 61 00 14 */ stfs f3, 0x14(r1) +/* 80236FA8 00233F08 D0 01 00 88 */ stfs f0, 0x88(r1) +/* 80236FAC 00233F0C 48 0D D6 85 */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f +/* 80236FB0 00233F10 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 80236FB4 00233F14 38 61 00 10 */ addi r3, r1, 0x10 +/* 80236FB8 00233F18 38 81 00 14 */ addi r4, r1, 0x14 +/* 80236FBC 00233F1C 4B E4 6E 25 */ bl "Min__5CMathFRCfRCf" +/* 80236FC0 00233F20 C0 21 01 F0 */ lfs f1, 0x1f0(r1) +/* 80236FC4 00233F24 C0 01 00 E0 */ lfs f0, 0xe0(r1) +/* 80236FC8 00233F28 C0 41 01 E0 */ lfs f2, 0x1e0(r1) +/* 80236FCC 00233F2C EC 01 00 32 */ fmuls f0, f1, f0 +/* 80236FD0 00233F30 C0 21 00 DC */ lfs f1, 0xdc(r1) +/* 80236FD4 00233F34 C0 81 02 00 */ lfs f4, 0x200(r1) +/* 80236FD8 00233F38 C0 61 00 E4 */ lfs f3, 0xe4(r1) +/* 80236FDC 00233F3C EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 80236FE0 00233F40 C0 02 B7 20 */ lfs f0, lbl_805AD440@sda21(r2) +/* 80236FE4 00233F44 C0 43 00 00 */ lfs f2, 0(r3) +/* 80236FE8 00233F48 EC 24 08 FA */ fmadds f1, f4, f3, f1 +/* 80236FEC 00233F4C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80236FF0 00233F50 40 80 00 08 */ bge lbl_80236FF8 +/* 80236FF4 00233F54 FC 40 10 50 */ fneg f2, f2 +lbl_80236FF8: +/* 80236FF8 00233F58 C0 61 00 14 */ lfs f3, 0x14(r1) +/* 80236FFC 00233F5C C0 22 B7 38 */ lfs f1, lbl_805AD458@sda21(r2) +/* 80237000 00233F60 EC 42 18 2A */ fadds f2, f2, f3 +/* 80237004 00233F64 C0 02 B7 34 */ lfs f0, lbl_805AD454@sda21(r2) +/* 80237008 00233F68 EC 21 00 F2 */ fmuls f1, f1, f3 +/* 8023700C 00233F6C EC 82 08 24 */ fdivs f4, f2, f1 +/* 80237010 00233F70 EC 60 20 28 */ fsubs f3, f0, f4 +/* 80237014 00233F74 EC 5C 01 32 */ fmuls f2, f28, f4 +/* 80237018 00233F78 EC 3B 01 32 */ fmuls f1, f27, f4 +/* 8023701C 00233F7C EC 1A 01 32 */ fmuls f0, f26, f4 +/* 80237020 00233F80 EC 5F 10 FA */ fmadds f2, f31, f3, f2 +/* 80237024 00233F84 EC 3E 08 FA */ fmadds f1, f30, f3, f1 +/* 80237028 00233F88 EC 1D 00 FA */ fmadds f0, f29, f3, f0 +/* 8023702C 00233F8C D0 5E 07 10 */ stfs f2, 0x710(r30) +/* 80237030 00233F90 D0 3E 07 14 */ stfs f1, 0x714(r30) +/* 80237034 00233F94 D0 1E 07 18 */ stfs f0, 0x718(r30) +/* 80237038 00233F98 88 1E 00 30 */ lbz r0, 0x30(r30) +/* 8023703C 00233F9C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80237040 00233FA0 41 82 01 74 */ beq lbl_802371B4 +/* 80237044 00233FA4 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 80237048 00233FA8 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8023704C 00233FAC 41 82 00 B8 */ beq lbl_80237104 +/* 80237050 00233FB0 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 80237054 00233FB4 80 63 00 10 */ lwz r3, 0x10(r3) +/* 80237058 00233FB8 4B DF 59 AD */ bl PreRender__9CAnimDataFv +/* 8023705C 00233FBC FC 20 C8 90 */ fmr f1, f25 +/* 80237060 00233FC0 38 7E 05 84 */ addi r3, r30, 0x584 +/* 80237064 00233FC4 4B F3 E9 45 */ bl Update__13CBoneTrackingFf +/* 80237068 00233FC8 80 BE 00 64 */ lwz r5, 0x64(r30) +/* 8023706C 00233FCC 7F E4 FB 78 */ mr r4, r31 +/* 80237070 00233FD0 81 1E 04 50 */ lwz r8, 0x450(r30) +/* 80237074 00233FD4 38 7E 05 84 */ addi r3, r30, 0x584 +/* 80237078 00233FD8 C0 05 00 00 */ lfs f0, 0(r5) +/* 8023707C 00233FDC 38 DE 00 34 */ addi r6, r30, 0x34 +/* 80237080 00233FE0 38 E1 00 74 */ addi r7, r1, 0x74 +/* 80237084 00233FE4 D0 01 00 74 */ stfs f0, 0x74(r1) +/* 80237088 00233FE8 C0 05 00 04 */ lfs f0, 4(r5) +/* 8023708C 00233FEC D0 01 00 78 */ stfs f0, 0x78(r1) +/* 80237090 00233FF0 C0 05 00 08 */ lfs f0, 8(r5) +/* 80237094 00233FF4 D0 01 00 7C */ stfs f0, 0x7c(r1) +/* 80237098 00233FF8 80 BE 00 64 */ lwz r5, 0x64(r30) +/* 8023709C 00233FFC 80 A5 00 10 */ lwz r5, 0x10(r5) +/* 802370A0 00234000 4B F3 E8 71 */ bl PreRender__13CBoneTrackingFRC13CStateManagerR9CAnimDataRC12CTransform4fRC9CVector3fRC15CBodyController +/* 802370A4 00234004 A0 1E 06 C8 */ lhz r0, 0x6c8(r30) +/* 802370A8 00234008 7F E3 FB 78 */ mr r3, r31 +/* 802370AC 0023400C 38 81 00 08 */ addi r4, r1, 8 +/* 802370B0 00234010 B0 01 00 08 */ sth r0, 8(r1) +/* 802370B4 00234014 4B E1 54 C1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 802370B8 00234018 7C 7D 1B 79 */ or. r29, r3, r3 +/* 802370BC 0023401C 41 82 00 48 */ beq lbl_80237104 +/* 802370C0 00234020 80 8D 96 4C */ lwz r4, lbl_805A820C@sda21(r13) +/* 802370C4 00234024 38 61 00 64 */ addi r3, r1, 0x64 +/* 802370C8 00234028 4B DC DB F1 */ bl string_l__4rstlFPCc +/* 802370CC 0023402C 7F C4 F3 78 */ mr r4, r30 +/* 802370D0 00234030 38 61 01 18 */ addi r3, r1, 0x118 +/* 802370D4 00234034 38 A1 00 64 */ addi r5, r1, 0x64 +/* 802370D8 00234038 4B E4 18 A1 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 802370DC 0023403C 38 61 01 A8 */ addi r3, r1, 0x1a8 +/* 802370E0 00234040 38 81 01 18 */ addi r4, r1, 0x118 +/* 802370E4 00234044 48 0D BA 91 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 802370E8 00234048 38 61 00 64 */ addi r3, r1, 0x64 +/* 802370EC 0023404C 48 10 69 F5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 802370F0 00234050 FC 20 C8 90 */ fmr f1, f25 +/* 802370F4 00234054 7F A3 EB 78 */ mr r3, r29 +/* 802370F8 00234058 7F E5 FB 78 */ mr r5, r31 +/* 802370FC 0023405C 38 81 01 A8 */ addi r4, r1, 0x1a8 +/* 80237100 00234060 4B F6 13 01 */ bl SetTransform__13CFlameThrowerFRC12CTransform4f +lbl_80237104: +/* 80237104 00234064 FC 20 C8 90 */ fmr f1, f25 +/* 80237108 00234068 80 7E 05 80 */ lwz r3, 0x580(r30) +/* 8023710C 0023406C 7F E4 FB 78 */ mr r4, r31 +/* 80237110 00234070 38 A0 00 00 */ li r5, 0 +/* 80237114 00234074 4B F7 03 3D */ bl Update__22CCollisionActorManagerCFfR13CStateManagerQ222CCollisionActorManager14EUpdateOptions +/* 80237118 00234078 80 BE 00 64 */ lwz r5, 0x64(r30) +/* 8023711C 0023407C 38 61 00 54 */ addi r3, r1, 0x54 +/* 80237120 00234080 80 8D 96 54 */ lwz r4, lbl_805A8214@sda21(r13) +/* 80237124 00234084 C3 A5 00 00 */ lfs f29, 0(r5) +/* 80237128 00234088 C3 C5 00 04 */ lfs f30, 4(r5) +/* 8023712C 0023408C C3 E5 00 08 */ lfs f31, 8(r5) +/* 80237130 00234090 4B DC DB 89 */ bl string_l__4rstlFPCc +/* 80237134 00234094 7F C4 F3 78 */ mr r4, r30 +/* 80237138 00234098 38 61 00 E8 */ addi r3, r1, 0xe8 +/* 8023713C 0023409C 38 A1 00 54 */ addi r5, r1, 0x54 +/* 80237140 002340A0 4B E1 BD C1 */ bl "GetLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80237144 002340A4 C3 81 01 14 */ lfs f28, 0x114(r1) +/* 80237148 002340A8 38 61 00 54 */ addi r3, r1, 0x54 +/* 8023714C 002340AC C3 61 01 04 */ lfs f27, 0x104(r1) +/* 80237150 002340B0 C3 41 00 F4 */ lfs f26, 0xf4(r1) +/* 80237154 002340B4 48 10 69 8D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80237158 002340B8 EC 5D 06 B2 */ fmuls f2, f29, f26 +/* 8023715C 002340BC 38 61 00 48 */ addi r3, r1, 0x48 +/* 80237160 002340C0 EC 3E 06 F2 */ fmuls f1, f30, f27 +/* 80237164 002340C4 38 9E 00 34 */ addi r4, r30, 0x34 +/* 80237168 002340C8 EC 1F 07 32 */ fmuls f0, f31, f28 +/* 8023716C 002340CC 38 A1 00 D0 */ addi r5, r1, 0xd0 +/* 80237170 002340D0 D0 41 00 D0 */ stfs f2, 0xd0(r1) +/* 80237174 002340D4 D0 21 00 D4 */ stfs f1, 0xd4(r1) +/* 80237178 002340D8 D0 01 00 D8 */ stfs f0, 0xd8(r1) +/* 8023717C 002340DC 48 0D B9 05 */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 80237180 002340E0 C0 41 00 48 */ lfs f2, 0x48(r1) +/* 80237184 002340E4 7F C3 F3 78 */ mr r3, r30 +/* 80237188 002340E8 C0 21 00 4C */ lfs f1, 0x4c(r1) +/* 8023718C 002340EC 38 81 00 D0 */ addi r4, r1, 0xd0 +/* 80237190 002340F0 C0 01 00 50 */ lfs f0, 0x50(r1) +/* 80237194 002340F4 D0 41 00 D0 */ stfs f2, 0xd0(r1) +/* 80237198 002340F8 D0 21 00 D4 */ stfs f1, 0xd4(r1) +/* 8023719C 002340FC D0 01 00 D8 */ stfs f0, 0xd8(r1) +/* 802371A0 00234100 4B EE 38 99 */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f +/* 802371A4 00234104 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 802371A8 00234108 38 60 00 01 */ li r3, 1 +/* 802371AC 0023410C 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 802371B0 00234110 98 1E 00 E4 */ stb r0, 0xe4(r30) +lbl_802371B4: +/* 802371B4 00234114 80 1E 07 50 */ lwz r0, 0x750(r30) +/* 802371B8 00234118 2C 00 00 02 */ cmpwi r0, 2 +/* 802371BC 0023411C 41 82 00 D8 */ beq lbl_80237294 +/* 802371C0 00234120 40 80 01 94 */ bge lbl_80237354 +/* 802371C4 00234124 2C 00 00 01 */ cmpwi r0, 1 +/* 802371C8 00234128 40 80 00 08 */ bge lbl_802371D0 +/* 802371CC 0023412C 48 00 01 88 */ b lbl_80237354 +lbl_802371D0: +/* 802371D0 00234130 C0 3E 07 38 */ lfs f1, 0x738(r30) +/* 802371D4 00234134 C0 02 B7 4C */ lfs f0, lbl_805AD46C@sda21(r2) +/* 802371D8 00234138 C0 5E 07 34 */ lfs f2, 0x734(r30) +/* 802371DC 0023413C EC 01 00 32 */ fmuls f0, f1, f0 +/* 802371E0 00234140 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 802371E4 00234144 40 80 00 18 */ bge lbl_802371FC +/* 802371E8 00234148 C0 3E 07 3C */ lfs f1, 0x73c(r30) +/* 802371EC 0023414C C0 1E 07 40 */ lfs f0, 0x740(r30) +/* 802371F0 00234150 EC 01 06 7A */ fmadds f0, f1, f25, f0 +/* 802371F4 00234154 D0 1E 07 40 */ stfs f0, 0x740(r30) +/* 802371F8 00234158 48 00 00 14 */ b lbl_8023720C +lbl_802371FC: +/* 802371FC 0023415C C0 3E 07 3C */ lfs f1, 0x73c(r30) +/* 80237200 00234160 C0 1E 07 40 */ lfs f0, 0x740(r30) +/* 80237204 00234164 EC 01 06 7C */ fnmsubs f0, f1, f25, f0 +/* 80237208 00234168 D0 1E 07 40 */ stfs f0, 0x740(r30) +lbl_8023720C: +/* 8023720C 0023416C C0 3E 07 40 */ lfs f1, 0x740(r30) +/* 80237210 00234170 7F C3 F3 78 */ mr r3, r30 +/* 80237214 00234174 C0 1E 07 34 */ lfs f0, 0x734(r30) +/* 80237218 00234178 38 81 00 3C */ addi r4, r1, 0x3c +/* 8023721C 0023417C C0 62 B7 20 */ lfs f3, lbl_805AD440@sda21(r2) +/* 80237220 00234180 EC 01 06 7A */ fmadds f0, f1, f25, f0 +/* 80237224 00234184 D0 1E 07 34 */ stfs f0, 0x734(r30) +/* 80237228 00234188 C0 3E 07 40 */ lfs f1, 0x740(r30) +/* 8023722C 0023418C C0 9E 00 50 */ lfs f4, 0x50(r30) +/* 80237230 00234190 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 80237234 00234194 EC 21 06 72 */ fmuls f1, f1, f25 +/* 80237238 00234198 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 8023723C 0023419C EC 84 18 2A */ fadds f4, f4, f3 +/* 80237240 002341A0 EC 00 18 2A */ fadds f0, f0, f3 +/* 80237244 002341A4 EC 22 08 2A */ fadds f1, f2, f1 +/* 80237248 002341A8 D0 81 00 40 */ stfs f4, 0x40(r1) +/* 8023724C 002341AC D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 80237250 002341B0 D0 21 00 44 */ stfs f1, 0x44(r1) +/* 80237254 002341B4 4B E1 BC 39 */ bl SetTranslation__6CActorFRC9CVector3f +/* 80237258 002341B8 C0 7E 00 60 */ lfs f3, 0x60(r30) +/* 8023725C 002341BC C0 1E 07 30 */ lfs f0, 0x730(r30) +/* 80237260 002341C0 C0 5E 00 50 */ lfs f2, 0x50(r30) +/* 80237264 002341C4 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 80237268 002341C8 FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 8023726C 002341CC D0 41 00 34 */ stfs f2, 0x34(r1) +/* 80237270 002341D0 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 80237274 002341D4 D0 61 00 38 */ stfs f3, 0x38(r1) +/* 80237278 002341D8 40 81 00 DC */ ble lbl_80237354 +/* 8023727C 002341DC 7F C3 F3 78 */ mr r3, r30 +/* 80237280 002341E0 38 9E 07 28 */ addi r4, r30, 0x728 +/* 80237284 002341E4 4B E1 BC 09 */ bl SetTranslation__6CActorFRC9CVector3f +/* 80237288 002341E8 38 00 00 00 */ li r0, 0 +/* 8023728C 002341EC 90 1E 07 50 */ stw r0, 0x750(r30) +/* 80237290 002341F0 48 00 00 C4 */ b lbl_80237354 +lbl_80237294: +/* 80237294 002341F4 C0 3E 07 38 */ lfs f1, 0x738(r30) +/* 80237298 002341F8 C0 02 B7 4C */ lfs f0, lbl_805AD46C@sda21(r2) +/* 8023729C 002341FC C0 5E 07 34 */ lfs f2, 0x734(r30) +/* 802372A0 00234200 EC 01 00 32 */ fmuls f0, f1, f0 +/* 802372A4 00234204 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 802372A8 00234208 40 80 00 18 */ bge lbl_802372C0 +/* 802372AC 0023420C C0 3E 07 3C */ lfs f1, 0x73c(r30) +/* 802372B0 00234210 C0 1E 07 40 */ lfs f0, 0x740(r30) +/* 802372B4 00234214 EC 01 06 7A */ fmadds f0, f1, f25, f0 +/* 802372B8 00234218 D0 1E 07 40 */ stfs f0, 0x740(r30) +/* 802372BC 0023421C 48 00 00 14 */ b lbl_802372D0 +lbl_802372C0: +/* 802372C0 00234220 C0 3E 07 3C */ lfs f1, 0x73c(r30) +/* 802372C4 00234224 C0 1E 07 40 */ lfs f0, 0x740(r30) +/* 802372C8 00234228 EC 01 06 7C */ fnmsubs f0, f1, f25, f0 +/* 802372CC 0023422C D0 1E 07 40 */ stfs f0, 0x740(r30) +lbl_802372D0: +/* 802372D0 00234230 C0 3E 07 40 */ lfs f1, 0x740(r30) +/* 802372D4 00234234 7F C3 F3 78 */ mr r3, r30 +/* 802372D8 00234238 C0 1E 07 34 */ lfs f0, 0x734(r30) +/* 802372DC 0023423C 38 81 00 24 */ addi r4, r1, 0x24 +/* 802372E0 00234240 C0 62 B7 20 */ lfs f3, lbl_805AD440@sda21(r2) +/* 802372E4 00234244 EC 01 06 7A */ fmadds f0, f1, f25, f0 +/* 802372E8 00234248 D0 1E 07 34 */ stfs f0, 0x734(r30) +/* 802372EC 0023424C C0 3E 07 40 */ lfs f1, 0x740(r30) +/* 802372F0 00234250 C0 9E 00 50 */ lfs f4, 0x50(r30) +/* 802372F4 00234254 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 802372F8 00234258 EC 21 06 72 */ fmuls f1, f1, f25 +/* 802372FC 0023425C C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 80237300 00234260 EC 84 18 28 */ fsubs f4, f4, f3 +/* 80237304 00234264 EC 00 18 28 */ fsubs f0, f0, f3 +/* 80237308 00234268 EC 22 08 28 */ fsubs f1, f2, f1 +/* 8023730C 0023426C D0 81 00 28 */ stfs f4, 0x28(r1) +/* 80237310 00234270 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 80237314 00234274 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 80237318 00234278 4B E1 BB 75 */ bl SetTranslation__6CActorFRC9CVector3f +/* 8023731C 0023427C C0 7E 00 60 */ lfs f3, 0x60(r30) +/* 80237320 00234280 C0 1E 07 30 */ lfs f0, 0x730(r30) +/* 80237324 00234284 C0 5E 00 50 */ lfs f2, 0x50(r30) +/* 80237328 00234288 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 8023732C 0023428C FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 80237330 00234290 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 80237334 00234294 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 80237338 00234298 D0 61 00 20 */ stfs f3, 0x20(r1) +/* 8023733C 0023429C 40 80 00 18 */ bge lbl_80237354 +/* 80237340 002342A0 7F C3 F3 78 */ mr r3, r30 +/* 80237344 002342A4 38 9E 07 28 */ addi r4, r30, 0x728 +/* 80237348 002342A8 4B E1 BB 45 */ bl SetTranslation__6CActorFRC9CVector3f +/* 8023734C 002342AC 38 00 00 00 */ li r0, 0 +/* 80237350 002342B0 90 1E 07 50 */ stw r0, 0x750(r30) +lbl_80237354: +/* 80237354 002342B4 E3 E1 02 B8 */ psq_l f31, 696(r1), 0, qr0 +/* 80237358 002342B8 CB E1 02 B0 */ lfd f31, 0x2b0(r1) +/* 8023735C 002342BC E3 C1 02 A8 */ psq_l f30, 680(r1), 0, qr0 +/* 80237360 002342C0 CB C1 02 A0 */ lfd f30, 0x2a0(r1) +/* 80237364 002342C4 E3 A1 02 98 */ psq_l f29, 664(r1), 0, qr0 +/* 80237368 002342C8 CB A1 02 90 */ lfd f29, 0x290(r1) +/* 8023736C 002342CC E3 81 02 88 */ psq_l f28, 648(r1), 0, qr0 +/* 80237370 002342D0 CB 81 02 80 */ lfd f28, 0x280(r1) +/* 80237374 002342D4 E3 61 02 78 */ psq_l f27, 632(r1), 0, qr0 +/* 80237378 002342D8 CB 61 02 70 */ lfd f27, 0x270(r1) +/* 8023737C 002342DC E3 41 02 68 */ psq_l f26, 616(r1), 0, qr0 +/* 80237380 002342E0 CB 41 02 60 */ lfd f26, 0x260(r1) +/* 80237384 002342E4 E3 21 02 58 */ psq_l f25, 600(r1), 0, qr0 +/* 80237388 002342E8 CB 21 02 50 */ lfd f25, 0x250(r1) +/* 8023738C 002342EC 83 E1 02 4C */ lwz r31, 0x24c(r1) +/* 80237390 002342F0 83 C1 02 48 */ lwz r30, 0x248(r1) +/* 80237394 002342F4 80 01 02 C4 */ lwz r0, 0x2c4(r1) +/* 80237398 002342F8 83 A1 02 44 */ lwz r29, 0x244(r1) +/* 8023739C 002342FC 7C 08 03 A6 */ mtlr r0 +/* 802373A0 00234300 38 21 02 C0 */ addi r1, r1, 0x2c0 +/* 802373A4 00234304 4E 80 00 20 */ blr + +.global Accept__10CMagdoliteFR8IVisitor +Accept__10CMagdoliteFR8IVisitor: +/* 802373A8 00234308 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 802373AC 0023430C 7C 08 02 A6 */ mflr r0 +/* 802373B0 00234310 90 01 00 14 */ stw r0, 0x14(r1) +/* 802373B4 00234314 7C 60 1B 78 */ mr r0, r3 +/* 802373B8 00234318 7C 83 23 78 */ mr r3, r4 +/* 802373BC 0023431C 81 84 00 00 */ lwz r12, 0(r4) +/* 802373C0 00234320 7C 04 03 78 */ mr r4, r0 +/* 802373C4 00234324 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 802373C8 00234328 7D 89 03 A6 */ mtctr r12 +/* 802373CC 0023432C 4E 80 04 21 */ bctrl +/* 802373D0 00234330 80 01 00 14 */ lwz r0, 0x14(r1) +/* 802373D4 00234334 7C 08 03 A6 */ mtlr r0 +/* 802373D8 00234338 38 21 00 10 */ addi r1, r1, 0x10 +/* 802373DC 0023433C 4E 80 00 20 */ blr + +.global "__ct__10CMagdoliteF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfo" +"__ct__10CMagdoliteF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfo": +/* 802373E0 00234340 94 21 FE B0 */ stwu r1, -0x150(r1) +/* 802373E4 00234344 7C 08 02 A6 */ mflr r0 +/* 802373E8 00234348 90 01 01 54 */ stw r0, 0x154(r1) +/* 802373EC 0023434C DB E1 01 40 */ stfd f31, 0x140(r1) +/* 802373F0 00234350 F3 E1 01 48 */ psq_st f31, 328(r1), 0, qr0 +/* 802373F4 00234354 DB C1 01 30 */ stfd f30, 0x130(r1) +/* 802373F8 00234358 F3 C1 01 38 */ psq_st f30, 312(r1), 0, qr0 +/* 802373FC 0023435C DB A1 01 20 */ stfd f29, 0x120(r1) +/* 80237400 00234360 F3 A1 01 28 */ psq_st f29, 296(r1), 0, qr0 +/* 80237404 00234364 DB 81 01 10 */ stfd f28, 0x110(r1) +/* 80237408 00234368 F3 81 01 18 */ psq_st f28, 280(r1), 0, qr0 +/* 8023740C 0023436C DB 61 01 00 */ stfd f27, 0x100(r1) +/* 80237410 00234370 F3 61 01 08 */ psq_st f27, 264(r1), 0, qr0 +/* 80237414 00234374 DB 41 00 F0 */ stfd f26, 0xf0(r1) +/* 80237418 00234378 F3 41 00 F8 */ psq_st f26, 248(r1), 0, qr0 +/* 8023741C 0023437C DB 21 00 E0 */ stfd f25, 0xe0(r1) +/* 80237420 00234380 F3 21 00 E8 */ psq_st f25, 232(r1), 0, qr0 +/* 80237424 00234384 DB 01 00 D0 */ stfd f24, 0xd0(r1) +/* 80237428 00234388 F3 01 00 D8 */ psq_st f24, 216(r1), 0, qr0 +/* 8023742C 0023438C DA E1 00 C0 */ stfd f23, 0xc0(r1) +/* 80237430 00234390 F2 E1 00 C8 */ psq_st f23, 200(r1), 0, qr0 +/* 80237434 00234394 BE 81 00 90 */ stmw r20, 0x90(r1) +/* 80237438 00234398 A0 04 00 00 */ lhz r0, 0(r4) +/* 8023743C 0023439C 7C CB 33 78 */ mr r11, r6 +/* 80237440 002343A0 7C F8 3B 78 */ mr r24, r7 +/* 80237444 002343A4 7D 07 43 78 */ mr r7, r8 +/* 80237448 002343A8 B0 01 00 20 */ sth r0, 0x20(r1) +/* 8023744C 002343AC 7C A6 2B 78 */ mr r6, r5 +/* 80237450 002343B0 38 80 00 01 */ li r4, 1 +/* 80237454 002343B4 FE E0 08 90 */ fmr f23, f1 +/* 80237458 002343B8 91 21 00 08 */ stw r9, 8(r1) +/* 8023745C 002343BC FF 00 10 90 */ fmr f24, f2 +/* 80237460 002343C0 FF 20 18 90 */ fmr f25, f3 +/* 80237464 002343C4 38 00 00 02 */ li r0, 2 +/* 80237468 002343C8 90 81 00 0C */ stw r4, 0xc(r1) +/* 8023746C 002343CC FF 40 20 90 */ fmr f26, f4 +/* 80237470 002343D0 83 21 01 58 */ lwz r25, 0x158(r1) +/* 80237474 002343D4 90 81 00 10 */ stw r4, 0x10(r1) +/* 80237478 002343D8 FF 60 28 90 */ fmr f27, f5 +/* 8023747C 002343DC 83 41 01 5C */ lwz r26, 0x15c(r1) +/* 80237480 002343E0 90 81 00 14 */ stw r4, 0x14(r1) +/* 80237484 002343E4 FF 80 30 90 */ fmr f28, f6 +/* 80237488 002343E8 83 61 01 60 */ lwz r27, 0x160(r1) +/* 8023748C 002343EC 91 41 00 18 */ stw r10, 0x18(r1) +/* 80237490 002343F0 FF A0 38 90 */ fmr f29, f7 +/* 80237494 002343F4 7C EA 3B 78 */ mr r10, r7 +/* 80237498 002343F8 FF C0 40 90 */ fmr f30, f8 +/* 8023749C 002343FC 83 E1 01 64 */ lwz r31, 0x164(r1) +/* 802374A0 00234400 7C 77 1B 78 */ mr r23, r3 +/* 802374A4 00234404 90 01 00 1C */ stw r0, 0x1c(r1) +/* 802374A8 00234408 83 81 01 68 */ lwz r28, 0x168(r1) +/* 802374AC 0023440C 7D 68 5B 78 */ mr r8, r11 +/* 802374B0 00234410 83 A1 01 6C */ lwz r29, 0x16c(r1) +/* 802374B4 00234414 7F 09 C3 78 */ mr r9, r24 +/* 802374B8 00234418 83 C1 01 70 */ lwz r30, 0x170(r1) +/* 802374BC 0023441C 38 A1 00 20 */ addi r5, r1, 0x20 +/* 802374C0 00234420 C3 E1 01 74 */ lfs f31, 0x174(r1) +/* 802374C4 00234424 38 80 00 11 */ li r4, 0x11 +/* 802374C8 00234428 38 E0 00 00 */ li r7, 0 +/* 802374CC 0023442C 4B E4 5F 85 */ bl "__ct__10CPatternedFUi9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC16CActorParametersUi" +/* 802374D0 00234430 3C 60 80 3F */ lis r3, lbl_803E8240@ha +/* 802374D4 00234434 C0 02 B7 44 */ lfs f0, lbl_805AD464@sda21(r2) +/* 802374D8 00234438 38 03 82 40 */ addi r0, r3, lbl_803E8240@l +/* 802374DC 0023443C 90 17 00 00 */ stw r0, 0(r23) +/* 802374E0 00234440 EC 20 06 32 */ fmuls f1, f0, f24 +/* 802374E4 00234444 D3 57 05 68 */ stfs f26, 0x568(r23) +/* 802374E8 00234448 D3 77 05 6C */ stfs f27, 0x56c(r23) +/* 802374EC 0023444C D3 97 05 70 */ stfs f28, 0x570(r23) +/* 802374F0 00234450 D3 37 05 74 */ stfs f25, 0x574(r23) +/* 802374F4 00234454 48 15 CE FD */ bl cos +/* 802374F8 00234458 FC 00 08 18 */ frsp f0, f1 +/* 802374FC 0023445C 38 00 00 00 */ li r0, 0 +/* 80237500 00234460 38 61 00 78 */ addi r3, r1, 0x78 +/* 80237504 00234464 D0 17 05 78 */ stfs f0, 0x578(r23) +/* 80237508 00234468 D2 F7 05 7C */ stfs f23, 0x57c(r23) +/* 8023750C 0023446C 90 17 05 80 */ stw r0, 0x580(r23) +/* 80237510 00234470 80 8D 96 54 */ lwz r4, lbl_805A8214@sda21(r13) +/* 80237514 00234474 4B DC D7 A5 */ bl string_l__4rstlFPCc +/* 80237518 00234478 C0 02 B7 44 */ lfs f0, lbl_805AD464@sda21(r2) +/* 8023751C 0023447C 38 77 05 84 */ addi r3, r23, 0x584 +/* 80237520 00234480 80 97 00 64 */ lwz r4, 0x64(r23) +/* 80237524 00234484 38 A1 00 78 */ addi r5, r1, 0x78 +/* 80237528 00234488 EC 20 05 F2 */ fmuls f1, f0, f23 +/* 8023752C 0023448C C0 42 B7 50 */ lfs f2, lbl_805AD470@sda21(r2) +/* 80237530 00234490 80 84 00 10 */ lwz r4, 0x10(r4) +/* 80237534 00234494 38 C0 00 08 */ li r6, 8 +/* 80237538 00234498 4B F3 E4 81 */ bl "__ct__13CBoneTrackingFRC9CAnimDataRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>ffb" +/* 8023753C 0023449C 38 61 00 78 */ addi r3, r1, 0x78 +/* 80237540 002344A0 48 10 65 A1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80237544 002344A4 80 7B 00 00 */ lwz r3, 0(r27) +/* 80237548 002344A8 80 1B 00 04 */ lwz r0, 4(r27) +/* 8023754C 002344AC 90 77 05 BC */ stw r3, 0x5bc(r23) +/* 80237550 002344B0 90 17 05 C0 */ stw r0, 0x5c0(r23) +/* 80237554 002344B4 80 7B 00 08 */ lwz r3, 8(r27) +/* 80237558 002344B8 80 1B 00 0C */ lwz r0, 0xc(r27) +/* 8023755C 002344BC 90 77 05 C4 */ stw r3, 0x5c4(r23) +/* 80237560 002344C0 90 17 05 C8 */ stw r0, 0x5c8(r23) +/* 80237564 002344C4 80 7B 00 10 */ lwz r3, 0x10(r27) +/* 80237568 002344C8 80 1B 00 14 */ lwz r0, 0x14(r27) +/* 8023756C 002344CC 90 77 05 CC */ stw r3, 0x5cc(r23) +/* 80237570 002344D0 90 17 05 D0 */ stw r0, 0x5d0(r23) +/* 80237574 002344D4 80 7B 00 18 */ lwz r3, 0x18(r27) +/* 80237578 002344D8 80 1B 00 1C */ lwz r0, 0x1c(r27) +/* 8023757C 002344DC 90 77 05 D4 */ stw r3, 0x5d4(r23) +/* 80237580 002344E0 90 17 05 D8 */ stw r0, 0x5d8(r23) +/* 80237584 002344E4 80 7B 00 20 */ lwz r3, 0x20(r27) +/* 80237588 002344E8 80 1B 00 24 */ lwz r0, 0x24(r27) +/* 8023758C 002344EC 90 77 05 DC */ stw r3, 0x5dc(r23) +/* 80237590 002344F0 90 17 05 E0 */ stw r0, 0x5e0(r23) +/* 80237594 002344F4 80 7B 00 28 */ lwz r3, 0x28(r27) +/* 80237598 002344F8 80 1B 00 2C */ lwz r0, 0x2c(r27) +/* 8023759C 002344FC 90 77 05 E4 */ stw r3, 0x5e4(r23) +/* 802375A0 00234500 90 17 05 E8 */ stw r0, 0x5e8(r23) +/* 802375A4 00234504 80 7B 00 30 */ lwz r3, 0x30(r27) +/* 802375A8 00234508 80 1B 00 34 */ lwz r0, 0x34(r27) +/* 802375AC 0023450C 90 77 05 EC */ stw r3, 0x5ec(r23) +/* 802375B0 00234510 90 17 05 F0 */ stw r0, 0x5f0(r23) +/* 802375B4 00234514 80 1B 00 38 */ lwz r0, 0x38(r27) +/* 802375B8 00234518 90 17 05 F4 */ stw r0, 0x5f4(r23) +/* 802375BC 0023451C 80 7B 00 3C */ lwz r3, 0x3c(r27) +/* 802375C0 00234520 80 1B 00 40 */ lwz r0, 0x40(r27) +/* 802375C4 00234524 90 77 05 F8 */ stw r3, 0x5f8(r23) +/* 802375C8 00234528 90 17 05 FC */ stw r0, 0x5fc(r23) +/* 802375CC 0023452C 80 7B 00 44 */ lwz r3, 0x44(r27) +/* 802375D0 00234530 80 1B 00 48 */ lwz r0, 0x48(r27) +/* 802375D4 00234534 90 77 06 00 */ stw r3, 0x600(r23) +/* 802375D8 00234538 90 17 06 04 */ stw r0, 0x604(r23) +/* 802375DC 0023453C 80 7B 00 4C */ lwz r3, 0x4c(r27) +/* 802375E0 00234540 80 1B 00 50 */ lwz r0, 0x50(r27) +/* 802375E4 00234544 90 77 06 08 */ stw r3, 0x608(r23) +/* 802375E8 00234548 90 17 06 0C */ stw r0, 0x60c(r23) +/* 802375EC 0023454C 80 7B 00 54 */ lwz r3, 0x54(r27) +/* 802375F0 00234550 80 1B 00 58 */ lwz r0, 0x58(r27) +/* 802375F4 00234554 90 77 06 10 */ stw r3, 0x610(r23) +/* 802375F8 00234558 90 17 06 14 */ stw r0, 0x614(r23) +/* 802375FC 0023455C 80 1B 00 5C */ lwz r0, 0x5c(r27) +/* 80237600 00234560 90 17 06 18 */ stw r0, 0x618(r23) +/* 80237604 00234564 80 1B 00 60 */ lwz r0, 0x60(r27) +/* 80237608 00234568 90 17 06 1C */ stw r0, 0x61c(r23) +/* 8023760C 0023456C 80 1B 00 64 */ lwz r0, 0x64(r27) +/* 80237610 00234570 90 17 06 20 */ stw r0, 0x620(r23) +/* 80237614 00234574 80 7F 00 00 */ lwz r3, 0(r31) +/* 80237618 00234578 80 1F 00 04 */ lwz r0, 4(r31) +/* 8023761C 0023457C 90 77 06 24 */ stw r3, 0x624(r23) +/* 80237620 00234580 90 17 06 28 */ stw r0, 0x628(r23) +/* 80237624 00234584 80 7F 00 08 */ lwz r3, 8(r31) +/* 80237628 00234588 80 1F 00 0C */ lwz r0, 0xc(r31) +/* 8023762C 0023458C 90 77 06 2C */ stw r3, 0x62c(r23) +/* 80237630 00234590 90 17 06 30 */ stw r0, 0x630(r23) +/* 80237634 00234594 80 7F 00 10 */ lwz r3, 0x10(r31) +/* 80237638 00234598 80 1F 00 14 */ lwz r0, 0x14(r31) +/* 8023763C 0023459C 90 77 06 34 */ stw r3, 0x634(r23) +/* 80237640 002345A0 90 17 06 38 */ stw r0, 0x638(r23) +/* 80237644 002345A4 80 7F 00 18 */ lwz r3, 0x18(r31) +/* 80237648 002345A8 80 1F 00 1C */ lwz r0, 0x1c(r31) +/* 8023764C 002345AC 90 77 06 3C */ stw r3, 0x63c(r23) +/* 80237650 002345B0 90 17 06 40 */ stw r0, 0x640(r23) +/* 80237654 002345B4 80 7F 00 20 */ lwz r3, 0x20(r31) +/* 80237658 002345B8 80 1F 00 24 */ lwz r0, 0x24(r31) +/* 8023765C 002345BC 90 77 06 44 */ stw r3, 0x644(r23) +/* 80237660 002345C0 90 17 06 48 */ stw r0, 0x648(r23) +/* 80237664 002345C4 80 7F 00 28 */ lwz r3, 0x28(r31) +/* 80237668 002345C8 80 1F 00 2C */ lwz r0, 0x2c(r31) +/* 8023766C 002345CC 90 77 06 4C */ stw r3, 0x64c(r23) +/* 80237670 002345D0 90 17 06 50 */ stw r0, 0x650(r23) +/* 80237674 002345D4 80 7F 00 30 */ lwz r3, 0x30(r31) +/* 80237678 002345D8 80 1F 00 34 */ lwz r0, 0x34(r31) +/* 8023767C 002345DC 90 77 06 54 */ stw r3, 0x654(r23) +/* 80237680 002345E0 90 17 06 58 */ stw r0, 0x658(r23) +/* 80237684 002345E4 80 1F 00 38 */ lwz r0, 0x38(r31) +/* 80237688 002345E8 90 17 06 5C */ stw r0, 0x65c(r23) +/* 8023768C 002345EC 80 7F 00 3C */ lwz r3, 0x3c(r31) +/* 80237690 002345F0 80 1F 00 40 */ lwz r0, 0x40(r31) +/* 80237694 002345F4 90 77 06 60 */ stw r3, 0x660(r23) +/* 80237698 002345F8 90 17 06 64 */ stw r0, 0x664(r23) +/* 8023769C 002345FC 80 7F 00 44 */ lwz r3, 0x44(r31) +/* 802376A0 00234600 80 1F 00 48 */ lwz r0, 0x48(r31) +/* 802376A4 00234604 90 77 06 68 */ stw r3, 0x668(r23) +/* 802376A8 00234608 90 17 06 6C */ stw r0, 0x66c(r23) +/* 802376AC 0023460C 80 7F 00 4C */ lwz r3, 0x4c(r31) +/* 802376B0 00234610 80 1F 00 50 */ lwz r0, 0x50(r31) +/* 802376B4 00234614 90 77 06 70 */ stw r3, 0x670(r23) +/* 802376B8 00234618 90 17 06 74 */ stw r0, 0x674(r23) +/* 802376BC 0023461C 80 7F 00 54 */ lwz r3, 0x54(r31) +/* 802376C0 00234620 80 1F 00 58 */ lwz r0, 0x58(r31) +/* 802376C4 00234624 90 77 06 78 */ stw r3, 0x678(r23) +/* 802376C8 00234628 90 17 06 7C */ stw r0, 0x67c(r23) +/* 802376CC 0023462C 80 1F 00 5C */ lwz r0, 0x5c(r31) +/* 802376D0 00234630 90 17 06 80 */ stw r0, 0x680(r23) +/* 802376D4 00234634 80 1F 00 60 */ lwz r0, 0x60(r31) +/* 802376D8 00234638 90 17 06 84 */ stw r0, 0x684(r23) +/* 802376DC 0023463C 80 9F 00 64 */ lwz r4, 0x64(r31) +/* 802376E0 00234640 3C 60 80 3D */ lis r3, lbl_803D4310@ha +/* 802376E4 00234644 38 63 43 10 */ addi r3, r3, lbl_803D4310@l +/* 802376E8 00234648 38 0D A9 28 */ addi r0, r13, lbl_805A94E8@sda21 +/* 802376EC 0023464C 90 97 06 88 */ stw r4, 0x688(r23) +/* 802376F0 00234650 38 83 00 4B */ addi r4, r3, 0x4b +/* 802376F4 00234654 3B 60 00 00 */ li r27, 0 +/* 802376F8 00234658 3A C0 00 00 */ li r22, 0 +/* 802376FC 0023465C 90 17 06 8C */ stw r0, 0x68c(r23) +/* 80237700 00234660 3A A0 00 00 */ li r21, 0 +/* 80237704 00234664 3A 80 00 00 */ li r20, 0 +/* 80237708 00234668 38 60 00 3C */ li r3, 0x3c +/* 8023770C 0023466C 80 F7 06 8C */ lwz r7, 0x68c(r23) +/* 80237710 00234670 38 A0 00 00 */ li r5, 0 +/* 80237714 00234674 80 C7 00 04 */ lwz r6, 4(r7) +/* 80237718 00234678 38 06 00 01 */ addi r0, r6, 1 +/* 8023771C 0023467C 90 07 00 04 */ stw r0, 4(r7) +/* 80237720 00234680 48 0D E1 4D */ bl __nw__FUlPCcPCc +/* 80237724 00234684 7C 7F 1B 79 */ or. r31, r3, r3 +/* 80237728 00234688 41 82 00 D4 */ beq lbl_802377FC +/* 8023772C 0023468C 3C 60 43 4D */ lis r3, 0x434D444C@ha +/* 80237730 00234690 93 81 00 40 */ stw r28, 0x40(r1) +/* 80237734 00234694 38 03 44 4C */ addi r0, r3, 0x434D444C@l +/* 80237738 00234698 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8023773C 0023469C 90 01 00 3C */ stw r0, 0x3c(r1) +/* 80237740 002346A0 38 61 00 34 */ addi r3, r1, 0x34 +/* 80237744 002346A4 38 A1 00 3C */ addi r5, r1, 0x3c +/* 80237748 002346A8 81 84 00 00 */ lwz r12, 0(r4) +/* 8023774C 002346AC 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80237750 002346B0 7D 89 03 A6 */ mtctr r12 +/* 80237754 002346B4 4E 80 04 21 */ bctrl +/* 80237758 002346B8 3A 81 00 60 */ addi r20, r1, 0x60 +/* 8023775C 002346BC 38 81 00 34 */ addi r4, r1, 0x34 +/* 80237760 002346C0 7E 83 A3 78 */ mr r3, r20 +/* 80237764 002346C4 3A A0 00 01 */ li r21, 1 +/* 80237768 002346C8 48 10 97 41 */ bl __ct__6CTokenFRC6CToken +/* 8023776C 002346CC 7E 83 A3 78 */ mr r3, r20 +/* 80237770 002346D0 48 10 96 9D */ bl GetObj__6CTokenFv +/* 80237774 002346D4 80 A3 00 04 */ lwz r5, 4(r3) +/* 80237778 002346D8 3C 60 43 53 */ lis r3, 0x43534B52@ha +/* 8023777C 002346DC 38 03 4B 52 */ addi r0, r3, 0x43534B52@l +/* 80237780 002346E0 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80237784 002346E4 90 A1 00 68 */ stw r5, 0x68(r1) +/* 80237788 002346E8 38 61 00 44 */ addi r3, r1, 0x44 +/* 8023778C 002346EC 38 A1 00 4C */ addi r5, r1, 0x4c +/* 80237790 002346F0 3A 80 00 01 */ li r20, 1 +/* 80237794 002346F4 90 01 00 4C */ stw r0, 0x4c(r1) +/* 80237798 002346F8 93 A1 00 50 */ stw r29, 0x50(r1) +/* 8023779C 002346FC 81 84 00 00 */ lwz r12, 0(r4) +/* 802377A0 00234700 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 802377A4 00234704 7D 89 03 A6 */ mtctr r12 +/* 802377A8 00234708 4E 80 04 21 */ bctrl +/* 802377AC 0023470C 3A C1 00 6C */ addi r22, r1, 0x6c +/* 802377B0 00234710 38 81 00 44 */ addi r4, r1, 0x44 +/* 802377B4 00234714 7E C3 B3 78 */ mr r3, r22 +/* 802377B8 00234718 3B 60 00 01 */ li r27, 1 +/* 802377BC 0023471C 48 10 96 ED */ bl __ct__6CTokenFRC6CToken +/* 802377C0 00234720 7E C3 B3 78 */ mr r3, r22 +/* 802377C4 00234724 48 10 96 49 */ bl GetObj__6CTokenFv +/* 802377C8 00234728 80 03 00 04 */ lwz r0, 4(r3) +/* 802377CC 0023472C 7E C5 B3 78 */ mr r5, r22 +/* 802377D0 00234730 7F E3 FB 78 */ mr r3, r31 +/* 802377D4 00234734 38 81 00 60 */ addi r4, r1, 0x60 +/* 802377D8 00234738 90 01 00 74 */ stw r0, 0x74(r1) +/* 802377DC 0023473C 3A C0 00 01 */ li r22, 1 +/* 802377E0 00234740 38 E0 00 01 */ li r7, 1 +/* 802377E4 00234744 80 D7 00 64 */ lwz r6, 0x64(r23) +/* 802377E8 00234748 80 C6 00 10 */ lwz r6, 0x10(r6) +/* 802377EC 0023474C 80 C6 00 E0 */ lwz r6, 0xe0(r6) +/* 802377F0 00234750 38 C6 00 1C */ addi r6, r6, 0x1c +/* 802377F4 00234754 48 11 BC 45 */ bl "__ct__13CSkinnedModelFRC21TLockedToken<6CModel>RC26TLockedToken<10CSkinRules>RC31TLockedToken<15CCharLayoutInfo>Q213CSkinnedModel14EDataOwnership" +/* 802377F8 00234758 7C 7F 1B 78 */ mr r31, r3 +lbl_802377FC: +/* 802377FC 0023475C 3B 81 00 54 */ addi r28, r1, 0x54 +/* 80237800 00234760 7F E4 FB 78 */ mr r4, r31 +/* 80237804 00234764 38 61 00 24 */ addi r3, r1, 0x24 +/* 80237808 00234768 4B F2 33 B1 */ bl sub_8015abb8 +/* 8023780C 0023476C 38 00 00 00 */ li r0, 0 +/* 80237810 00234770 80 81 00 28 */ lwz r4, 0x28(r1) +/* 80237814 00234774 98 01 00 24 */ stb r0, 0x24(r1) +/* 80237818 00234778 7F 83 E3 78 */ mr r3, r28 +/* 8023781C 0023477C 48 10 96 E9 */ bl __ct__6CTokenFP4IObj +/* 80237820 00234780 88 01 00 24 */ lbz r0, 0x24(r1) +/* 80237824 00234784 28 00 00 00 */ cmplwi r0, 0 +/* 80237828 00234788 41 82 00 24 */ beq lbl_8023784C +/* 8023782C 0023478C 80 61 00 28 */ lwz r3, 0x28(r1) +/* 80237830 00234790 28 03 00 00 */ cmplwi r3, 0 +/* 80237834 00234794 41 82 00 18 */ beq lbl_8023784C +/* 80237838 00234798 81 83 00 00 */ lwz r12, 0(r3) +/* 8023783C 0023479C 38 80 00 01 */ li r4, 1 +/* 80237840 002347A0 81 8C 00 08 */ lwz r12, 8(r12) +/* 80237844 002347A4 7D 89 03 A6 */ mtctr r12 +/* 80237848 002347A8 4E 80 04 21 */ bctrl +lbl_8023784C: +/* 8023784C 002347AC 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 80237850 002347B0 7F 83 E3 78 */ mr r3, r28 +/* 80237854 002347B4 48 10 95 31 */ bl Lock__6CTokenFv +/* 80237858 002347B8 3B 97 06 90 */ addi r28, r23, 0x690 +/* 8023785C 002347BC 38 81 00 54 */ addi r4, r1, 0x54 +/* 80237860 002347C0 7F 83 E3 78 */ mr r3, r28 +/* 80237864 002347C4 48 10 96 45 */ bl __ct__6CTokenFRC6CToken +/* 80237868 002347C8 80 01 00 5C */ lwz r0, 0x5c(r1) +/* 8023786C 002347CC 7F 83 E3 78 */ mr r3, r28 +/* 80237870 002347D0 90 1C 00 08 */ stw r0, 8(r28) +/* 80237874 002347D4 48 10 95 11 */ bl Lock__6CTokenFv +/* 80237878 002347D8 38 61 00 54 */ addi r3, r1, 0x54 +/* 8023787C 002347DC 38 80 00 00 */ li r4, 0 +/* 80237880 002347E0 48 10 95 C1 */ bl __dt__6CTokenFv +/* 80237884 002347E4 7E 80 07 75 */ extsb. r0, r20 +/* 80237888 002347E8 41 82 00 10 */ beq lbl_80237898 +/* 8023788C 002347EC 38 61 00 60 */ addi r3, r1, 0x60 +/* 80237890 002347F0 38 80 00 00 */ li r4, 0 +/* 80237894 002347F4 48 10 95 AD */ bl __dt__6CTokenFv +lbl_80237898: +/* 80237898 002347F8 7E A0 07 75 */ extsb. r0, r21 +/* 8023789C 002347FC 41 82 00 10 */ beq lbl_802378AC +/* 802378A0 00234800 38 61 00 34 */ addi r3, r1, 0x34 +/* 802378A4 00234804 38 80 FF FF */ li r4, -1 +/* 802378A8 00234808 48 10 95 99 */ bl __dt__6CTokenFv +lbl_802378AC: +/* 802378AC 0023480C 7E C0 07 75 */ extsb. r0, r22 +/* 802378B0 00234810 41 82 00 10 */ beq lbl_802378C0 +/* 802378B4 00234814 38 61 00 6C */ addi r3, r1, 0x6c +/* 802378B8 00234818 38 80 00 00 */ li r4, 0 +/* 802378BC 0023481C 48 10 95 85 */ bl __dt__6CTokenFv +lbl_802378C0: +/* 802378C0 00234820 7F 60 07 75 */ extsb. r0, r27 +/* 802378C4 00234824 41 82 00 10 */ beq lbl_802378D4 +/* 802378C8 00234828 38 61 00 44 */ addi r3, r1, 0x44 +/* 802378CC 0023482C 38 80 FF FF */ li r4, -1 +/* 802378D0 00234830 48 10 95 71 */ bl __dt__6CTokenFv +lbl_802378D4: +/* 802378D4 00234834 38 00 00 00 */ li r0, 0 +/* 802378D8 00234838 3C 60 80 3D */ lis r3, lbl_803D4310@ha +/* 802378DC 0023483C 90 17 06 9C */ stw r0, 0x69c(r23) +/* 802378E0 00234840 38 83 43 10 */ addi r4, r3, lbl_803D4310@l +/* 802378E4 00234844 38 61 00 2C */ addi r3, r1, 0x2c +/* 802378E8 00234848 80 1E 00 00 */ lwz r0, 0(r30) +/* 802378EC 0023484C 38 A4 00 62 */ addi r5, r4, 0x62 +/* 802378F0 00234850 90 17 06 A8 */ stw r0, 0x6a8(r23) +/* 802378F4 00234854 80 1E 00 04 */ lwz r0, 4(r30) +/* 802378F8 00234858 90 17 06 AC */ stw r0, 0x6ac(r23) +/* 802378FC 0023485C 80 1E 00 08 */ lwz r0, 8(r30) +/* 80237900 00234860 90 17 06 B0 */ stw r0, 0x6b0(r23) +/* 80237904 00234864 80 1E 00 0C */ lwz r0, 0xc(r30) +/* 80237908 00234868 90 17 06 B4 */ stw r0, 0x6b4(r23) +/* 8023790C 0023486C C0 1E 00 10 */ lfs f0, 0x10(r30) +/* 80237910 00234870 D0 17 06 B8 */ stfs f0, 0x6b8(r23) +/* 80237914 00234874 C0 1E 00 14 */ lfs f0, 0x14(r30) +/* 80237918 00234878 D0 17 06 BC */ stfs f0, 0x6bc(r23) +/* 8023791C 0023487C C0 1E 00 18 */ lfs f0, 0x18(r30) +/* 80237920 00234880 D0 17 06 C0 */ stfs f0, 0x6c0(r23) +/* 80237924 00234884 C0 1E 00 1C */ lfs f0, 0x1c(r30) +/* 80237928 00234888 D0 17 06 C4 */ stfs f0, 0x6c4(r23) +/* 8023792C 0023488C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80237930 00234890 B0 17 06 C8 */ sth r0, 0x6c8(r23) +/* 80237934 00234894 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80237938 00234898 81 84 00 00 */ lwz r12, 0(r4) +/* 8023793C 0023489C 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 80237940 002348A0 7D 89 03 A6 */ mtctr r12 +/* 80237944 002348A4 4E 80 04 21 */ bctrl +/* 80237948 002348A8 38 77 06 CC */ addi r3, r23, 0x6cc +/* 8023794C 002348AC 38 81 00 2C */ addi r4, r1, 0x2c +/* 80237950 002348B0 48 10 95 59 */ bl __ct__6CTokenFRC6CToken +/* 80237954 002348B4 38 61 00 2C */ addi r3, r1, 0x2c +/* 80237958 002348B8 38 80 FF FF */ li r4, -1 +/* 8023795C 002348BC 48 10 94 E5 */ bl __dt__6CTokenFv +/* 80237960 002348C0 80 19 00 00 */ lwz r0, 0(r25) +/* 80237964 002348C4 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80237968 002348C8 38 E3 66 A0 */ addi r7, r3, skZero3f@l +/* 8023796C 002348CC C0 02 B7 20 */ lfs f0, lbl_805AD440@sda21(r2) +/* 80237970 002348D0 90 17 06 D4 */ stw r0, 0x6d4(r23) +/* 80237974 002348D4 38 C0 00 00 */ li r6, 0 +/* 80237978 002348D8 38 A0 00 01 */ li r5, 1 +/* 8023797C 002348DC 38 77 04 60 */ addi r3, r23, 0x460 +/* 80237980 002348E0 88 19 00 04 */ lbz r0, 4(r25) +/* 80237984 002348E4 38 80 00 00 */ li r4, 0 +/* 80237988 002348E8 98 17 06 D8 */ stb r0, 0x6d8(r23) +/* 8023798C 002348EC C0 39 00 08 */ lfs f1, 8(r25) +/* 80237990 002348F0 D0 37 06 DC */ stfs f1, 0x6dc(r23) +/* 80237994 002348F4 C0 39 00 0C */ lfs f1, 0xc(r25) +/* 80237998 002348F8 D0 37 06 E0 */ stfs f1, 0x6e0(r23) +/* 8023799C 002348FC C0 39 00 10 */ lfs f1, 0x10(r25) +/* 802379A0 00234900 D0 37 06 E4 */ stfs f1, 0x6e4(r23) +/* 802379A4 00234904 C0 39 00 14 */ lfs f1, 0x14(r25) +/* 802379A8 00234908 D0 37 06 E8 */ stfs f1, 0x6e8(r23) +/* 802379AC 0023490C 88 19 00 18 */ lbz r0, 0x18(r25) +/* 802379B0 00234910 98 17 06 EC */ stb r0, 0x6ec(r23) +/* 802379B4 00234914 80 1A 00 00 */ lwz r0, 0(r26) +/* 802379B8 00234918 90 17 06 F0 */ stw r0, 0x6f0(r23) +/* 802379BC 0023491C 88 1A 00 04 */ lbz r0, 4(r26) +/* 802379C0 00234920 98 17 06 F4 */ stb r0, 0x6f4(r23) +/* 802379C4 00234924 C0 3A 00 08 */ lfs f1, 8(r26) +/* 802379C8 00234928 D0 37 06 F8 */ stfs f1, 0x6f8(r23) +/* 802379CC 0023492C C0 3A 00 0C */ lfs f1, 0xc(r26) +/* 802379D0 00234930 D0 37 06 FC */ stfs f1, 0x6fc(r23) +/* 802379D4 00234934 C0 3A 00 10 */ lfs f1, 0x10(r26) +/* 802379D8 00234938 D0 37 07 00 */ stfs f1, 0x700(r23) +/* 802379DC 0023493C C0 3A 00 14 */ lfs f1, 0x14(r26) +/* 802379E0 00234940 D0 37 07 04 */ stfs f1, 0x704(r23) +/* 802379E4 00234944 88 1A 00 18 */ lbz r0, 0x18(r26) +/* 802379E8 00234948 98 17 07 08 */ stb r0, 0x708(r23) +/* 802379EC 0023494C C0 27 00 00 */ lfs f1, 0(r7) +/* 802379F0 00234950 D0 37 07 10 */ stfs f1, 0x710(r23) +/* 802379F4 00234954 C0 27 00 04 */ lfs f1, 4(r7) +/* 802379F8 00234958 D0 37 07 14 */ stfs f1, 0x714(r23) +/* 802379FC 0023495C C0 27 00 08 */ lfs f1, 8(r7) +/* 80237A00 00234960 D0 37 07 18 */ stfs f1, 0x718(r23) +/* 80237A04 00234964 C0 78 00 2C */ lfs f3, 0x2c(r24) +/* 80237A08 00234968 C0 58 00 1C */ lfs f2, 0x1c(r24) +/* 80237A0C 0023496C C0 38 00 0C */ lfs f1, 0xc(r24) +/* 80237A10 00234970 D0 37 07 1C */ stfs f1, 0x71c(r23) +/* 80237A14 00234974 D0 57 07 20 */ stfs f2, 0x720(r23) +/* 80237A18 00234978 D0 77 07 24 */ stfs f3, 0x724(r23) +/* 80237A1C 0023497C C0 27 00 00 */ lfs f1, 0(r7) +/* 80237A20 00234980 D0 37 07 28 */ stfs f1, 0x728(r23) +/* 80237A24 00234984 C0 27 00 04 */ lfs f1, 4(r7) +/* 80237A28 00234988 D0 37 07 2C */ stfs f1, 0x72c(r23) +/* 80237A2C 0023498C C0 27 00 08 */ lfs f1, 8(r7) +/* 80237A30 00234990 D0 37 07 30 */ stfs f1, 0x730(r23) +/* 80237A34 00234994 D0 17 07 34 */ stfs f0, 0x734(r23) +/* 80237A38 00234998 D0 17 07 38 */ stfs f0, 0x738(r23) +/* 80237A3C 0023499C D0 17 07 3C */ stfs f0, 0x73c(r23) +/* 80237A40 002349A0 D0 17 07 40 */ stfs f0, 0x740(r23) +/* 80237A44 002349A4 D3 B7 07 44 */ stfs f29, 0x744(r23) +/* 80237A48 002349A8 D3 D7 07 48 */ stfs f30, 0x748(r23) +/* 80237A4C 002349AC D3 F7 07 4C */ stfs f31, 0x74c(r23) +/* 80237A50 002349B0 90 D7 07 50 */ stw r6, 0x750(r23) +/* 80237A54 002349B4 88 17 07 54 */ lbz r0, 0x754(r23) +/* 80237A58 002349B8 50 C0 3E 30 */ rlwimi r0, r6, 7, 0x18, 0x18 +/* 80237A5C 002349BC 98 17 07 54 */ stb r0, 0x754(r23) +/* 80237A60 002349C0 88 17 07 54 */ lbz r0, 0x754(r23) +/* 80237A64 002349C4 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19 +/* 80237A68 002349C8 98 17 07 54 */ stb r0, 0x754(r23) +/* 80237A6C 002349CC 88 17 07 54 */ lbz r0, 0x754(r23) +/* 80237A70 002349D0 50 C0 2E B4 */ rlwimi r0, r6, 5, 0x1a, 0x1a +/* 80237A74 002349D4 98 17 07 54 */ stb r0, 0x754(r23) +/* 80237A78 002349D8 88 17 07 54 */ lbz r0, 0x754(r23) +/* 80237A7C 002349DC 50 C0 26 F6 */ rlwimi r0, r6, 4, 0x1b, 0x1b +/* 80237A80 002349E0 98 17 07 54 */ stb r0, 0x754(r23) +/* 80237A84 002349E4 88 17 07 54 */ lbz r0, 0x754(r23) +/* 80237A88 002349E8 50 C0 1F 38 */ rlwimi r0, r6, 3, 0x1c, 0x1c +/* 80237A8C 002349EC 98 17 07 54 */ stb r0, 0x754(r23) +/* 80237A90 002349F0 88 17 07 54 */ lbz r0, 0x754(r23) +/* 80237A94 002349F4 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d +/* 80237A98 002349F8 98 17 07 54 */ stb r0, 0x754(r23) +/* 80237A9C 002349FC 88 17 07 54 */ lbz r0, 0x754(r23) +/* 80237AA0 00234A00 50 C0 0F BC */ rlwimi r0, r6, 1, 0x1e, 0x1e +/* 80237AA4 00234A04 98 17 07 54 */ stb r0, 0x754(r23) +/* 80237AA8 00234A08 D0 17 07 58 */ stfs f0, 0x758(r23) +/* 80237AAC 00234A0C 4B FF C2 B9 */ bl SetAutoResetImpulse__20CKnockBackControllerFb +/* 80237AB0 00234A10 88 17 04 E1 */ lbz r0, 0x4e1(r23) +/* 80237AB4 00234A14 38 60 00 00 */ li r3, 0 +/* 80237AB8 00234A18 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 80237ABC 00234A1C 98 17 04 E1 */ stb r0, 0x4e1(r23) +/* 80237AC0 00234A20 80 77 00 64 */ lwz r3, 0x64(r23) +/* 80237AC4 00234A24 82 B7 06 98 */ lwz r21, 0x698(r23) +/* 80237AC8 00234A28 80 83 00 10 */ lwz r4, 0x10(r3) +/* 80237ACC 00234A2C 38 75 00 1C */ addi r3, r21, 0x1c +/* 80237AD0 00234A30 80 84 00 E0 */ lwz r4, 0xe0(r4) +/* 80237AD4 00234A34 3A 84 00 1C */ addi r20, r4, 0x1c +/* 80237AD8 00234A38 7E 84 A3 78 */ mr r4, r20 +/* 80237ADC 00234A3C 48 10 91 E9 */ bl __as__6CTokenFRC6CToken +/* 80237AE0 00234A40 80 14 00 08 */ lwz r0, 8(r20) +/* 80237AE4 00234A44 7E E3 BB 78 */ mr r3, r23 +/* 80237AE8 00234A48 90 15 00 24 */ stw r0, 0x24(r21) +/* 80237AEC 00234A4C E3 E1 01 48 */ psq_l f31, 328(r1), 0, qr0 +/* 80237AF0 00234A50 CB E1 01 40 */ lfd f31, 0x140(r1) +/* 80237AF4 00234A54 E3 C1 01 38 */ psq_l f30, 312(r1), 0, qr0 +/* 80237AF8 00234A58 CB C1 01 30 */ lfd f30, 0x130(r1) +/* 80237AFC 00234A5C E3 A1 01 28 */ psq_l f29, 296(r1), 0, qr0 +/* 80237B00 00234A60 CB A1 01 20 */ lfd f29, 0x120(r1) +/* 80237B04 00234A64 E3 81 01 18 */ psq_l f28, 280(r1), 0, qr0 +/* 80237B08 00234A68 CB 81 01 10 */ lfd f28, 0x110(r1) +/* 80237B0C 00234A6C E3 61 01 08 */ psq_l f27, 264(r1), 0, qr0 +/* 80237B10 00234A70 CB 61 01 00 */ lfd f27, 0x100(r1) +/* 80237B14 00234A74 E3 41 00 F8 */ psq_l f26, 248(r1), 0, qr0 +/* 80237B18 00234A78 CB 41 00 F0 */ lfd f26, 0xf0(r1) +/* 80237B1C 00234A7C E3 21 00 E8 */ psq_l f25, 232(r1), 0, qr0 +/* 80237B20 00234A80 CB 21 00 E0 */ lfd f25, 0xe0(r1) +/* 80237B24 00234A84 E3 01 00 D8 */ psq_l f24, 216(r1), 0, qr0 +/* 80237B28 00234A88 CB 01 00 D0 */ lfd f24, 0xd0(r1) +/* 80237B2C 00234A8C E2 E1 00 C8 */ psq_l f23, 200(r1), 0, qr0 +/* 80237B30 00234A90 CA E1 00 C0 */ lfd f23, 0xc0(r1) +/* 80237B34 00234A94 BA 81 00 90 */ lmw r20, 0x90(r1) +/* 80237B38 00234A98 80 01 01 54 */ lwz r0, 0x154(r1) +/* 80237B3C 00234A9C 7C 08 03 A6 */ mtlr r0 +/* 80237B40 00234AA0 38 21 01 50 */ addi r1, r1, 0x150 +/* 80237B44 00234AA4 4E 80 00 20 */ blr + +.global __sinit_CMagdolite_cpp +__sinit_CMagdolite_cpp: +/* 80237B48 00234AA8 3C 60 80 3F */ lis r3, lbl_803E81A0@ha +/* 80237B4C 00234AAC 80 8D 96 58 */ lwz r4, lbl_805A8218@sda21(r13) +/* 80237B50 00234AB0 38 63 81 A0 */ addi r3, r3, lbl_803E81A0@l +/* 80237B54 00234AB4 80 0D 96 5C */ lwz r0, lbl_805A821C@sda21(r13) +/* 80237B58 00234AB8 90 83 00 04 */ stw r4, 4(r3) +/* 80237B5C 00234ABC 90 03 00 18 */ stw r0, 0x18(r3) +/* 80237B60 00234AC0 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Enemies/CMetroidBeta.s b/asm/Kyoto_CWD/Enemies/CMetroidBeta.s new file mode 100644 index 00000000..3a6c3e7a --- /dev/null +++ b/asm/Kyoto_CWD/Enemies/CMetroidBeta.s @@ -0,0 +1,6450 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global IsListening__12CMetroidBetaCFv +IsListening__12CMetroidBetaCFv: +/* 801C0D8C 001BDCEC 38 60 00 01 */ li r3, 1 +/* 801C0D90 001BDCF0 4E 80 00 20 */ blr + +.global GetCollisionPrimitive__12CMetroidBetaCFv +GetCollisionPrimitive__12CMetroidBetaCFv: +/* 801C0D94 001BDCF4 38 63 07 68 */ addi r3, r3, 0x768 +/* 801C0D98 001BDCF8 4E 80 00 20 */ blr + +.global GetSearchPath__12CMetroidBetaFv +GetSearchPath__12CMetroidBetaFv: +/* 801C0D9C 001BDCFC 38 63 06 7C */ addi r3, r3, 0x67c +/* 801C0DA0 001BDD00 4E 80 00 20 */ blr + +.global sub_801c0da4 +sub_801c0da4: +/* 801C0DA4 001BDD04 C0 43 07 94 */ lfs f2, 0x794(r3) +/* 801C0DA8 001BDD08 C0 02 AA 98 */ lfs f0, lbl_805AC7B8@sda21(r2) +/* 801C0DAC 001BDD0C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801C0DB0 001BDD10 40 81 00 30 */ ble lbl_801C0DE0 +/* 801C0DB4 001BDD14 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 801C0DB8 001BDD18 80 04 02 F8 */ lwz r0, 0x2f8(r4) +/* 801C0DBC 001BDD1C 2C 00 00 01 */ cmpwi r0, 1 +/* 801C0DC0 001BDD20 40 82 00 10 */ bne lbl_801C0DD0 +/* 801C0DC4 001BDD24 C0 02 AA 9C */ lfs f0, lbl_805AC7BC@sda21(r2) +/* 801C0DC8 001BDD28 EC 40 00 72 */ fmuls f2, f0, f1 +/* 801C0DCC 001BDD2C 48 00 00 08 */ b lbl_801C0DD4 +lbl_801C0DD0: +/* 801C0DD0 001BDD30 FC 40 08 90 */ fmr f2, f1 +lbl_801C0DD4: +/* 801C0DD4 001BDD34 C0 03 07 94 */ lfs f0, 0x794(r3) +/* 801C0DD8 001BDD38 EC 00 10 28 */ fsubs f0, f0, f2 +/* 801C0DDC 001BDD3C D0 03 07 94 */ stfs f0, 0x794(r3) +lbl_801C0DE0: +/* 801C0DE0 001BDD40 C0 02 AA A0 */ lfs f0, lbl_805AC7C0@sda21(r2) +/* 801C0DE4 001BDD44 C0 43 08 3C */ lfs f2, 0x83c(r3) +/* 801C0DE8 001BDD48 EC 00 00 72 */ fmuls f0, f0, f1 +/* 801C0DEC 001BDD4C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801C0DF0 001BDD50 40 81 00 0C */ ble lbl_801C0DFC +/* 801C0DF4 001BDD54 EC 02 00 28 */ fsubs f0, f2, f0 +/* 801C0DF8 001BDD58 48 00 00 08 */ b lbl_801C0E00 +lbl_801C0DFC: +/* 801C0DFC 001BDD5C C0 02 AA 98 */ lfs f0, lbl_805AC7B8@sda21(r2) +lbl_801C0E00: +/* 801C0E00 001BDD60 D0 03 08 3C */ stfs f0, 0x83c(r3) +/* 801C0E04 001BDD64 4E 80 00 20 */ blr + +.global sub_801c0e08 +sub_801c0e08: +/* 801C0E08 001BDD68 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801C0E0C 001BDD6C 7C 08 02 A6 */ mflr r0 +/* 801C0E10 001BDD70 C0 02 AA 98 */ lfs f0, lbl_805AC7B8@sda21(r2) +/* 801C0E14 001BDD74 90 01 00 54 */ stw r0, 0x54(r1) +/* 801C0E18 001BDD78 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801C0E1C 001BDD7C 7C 7F 1B 78 */ mr r31, r3 +/* 801C0E20 001BDD80 80 63 04 50 */ lwz r3, 0x450(r3) +/* 801C0E24 001BDD84 C0 A3 00 04 */ lfs f5, 4(r3) +/* 801C0E28 001BDD88 D0 A1 00 14 */ stfs f5, 0x14(r1) +/* 801C0E2C 001BDD8C C0 63 00 08 */ lfs f3, 8(r3) +/* 801C0E30 001BDD90 D0 61 00 18 */ stfs f3, 0x18(r1) +/* 801C0E34 001BDD94 C0 83 00 0C */ lfs f4, 0xc(r3) +/* 801C0E38 001BDD98 D0 81 00 1C */ stfs f4, 0x1c(r1) +/* 801C0E3C 001BDD9C C0 3F 00 48 */ lfs f1, 0x48(r31) +/* 801C0E40 001BDDA0 C0 5F 00 38 */ lfs f2, 0x38(r31) +/* 801C0E44 001BDDA4 EC 21 00 F2 */ fmuls f1, f1, f3 +/* 801C0E48 001BDDA8 C0 7F 00 58 */ lfs f3, 0x58(r31) +/* 801C0E4C 001BDDAC EC 22 09 7A */ fmadds f1, f2, f5, f1 +/* 801C0E50 001BDDB0 EC 23 09 3A */ fmadds f1, f3, f4, f1 +/* 801C0E54 001BDDB4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C0E58 001BDDB8 40 80 00 78 */ bge lbl_801C0ED0 +/* 801C0E5C 001BDDBC 38 61 00 14 */ addi r3, r1, 0x14 +/* 801C0E60 001BDDC0 48 15 38 99 */ bl CanBeNormalized__9CVector3fCFv +/* 801C0E64 001BDDC4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C0E68 001BDDC8 41 82 00 68 */ beq lbl_801C0ED0 +/* 801C0E6C 001BDDCC 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801C0E70 001BDDD0 38 63 00 04 */ addi r3, r3, 4 +/* 801C0E74 001BDDD4 4B F7 06 35 */ bl ClearLocomotionCmds__16CBodyStateCmdMgrFv +/* 801C0E78 001BDDD8 38 61 00 08 */ addi r3, r1, 8 +/* 801C0E7C 001BDDDC 38 81 00 14 */ addi r4, r1, 0x14 +/* 801C0E80 001BDDE0 48 15 39 D1 */ bl AsNormalized__9CVector3fCFv +/* 801C0E84 001BDDE4 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801C0E88 001BDDE8 C4 C3 66 A0 */ lfsu f6, skZero3f@l(r3) +/* 801C0E8C 001BDDEC C0 61 00 08 */ lfs f3, 8(r1) +/* 801C0E90 001BDDF0 38 81 00 20 */ addi r4, r1, 0x20 +/* 801C0E94 001BDDF4 C0 41 00 0C */ lfs f2, 0xc(r1) +/* 801C0E98 001BDDF8 C0 A3 00 04 */ lfs f5, 4(r3) +/* 801C0E9C 001BDDFC C0 83 00 08 */ lfs f4, 8(r3) +/* 801C0EA0 001BDE00 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 801C0EA4 001BDE04 C0 02 AA A4 */ lfs f0, lbl_805AC7C4@sda21(r2) +/* 801C0EA8 001BDE08 D0 C1 00 20 */ stfs f6, 0x20(r1) +/* 801C0EAC 001BDE0C D0 A1 00 24 */ stfs f5, 0x24(r1) +/* 801C0EB0 001BDE10 D0 81 00 28 */ stfs f4, 0x28(r1) +/* 801C0EB4 001BDE14 D0 61 00 2C */ stfs f3, 0x2c(r1) +/* 801C0EB8 001BDE18 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 801C0EBC 001BDE1C D0 21 00 34 */ stfs f1, 0x34(r1) +/* 801C0EC0 001BDE20 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 801C0EC4 001BDE24 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801C0EC8 001BDE28 38 63 00 04 */ addi r3, r3, 4 +/* 801C0ECC 001BDE2C 4B F7 08 4D */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +lbl_801C0ED0: +/* 801C0ED0 001BDE30 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801C0ED4 001BDE34 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801C0ED8 001BDE38 7C 08 03 A6 */ mtlr r0 +/* 801C0EDC 001BDE3C 38 21 00 50 */ addi r1, r1, 0x50 +/* 801C0EE0 001BDE40 4E 80 00 20 */ blr + +.global sub_801c0ee4 +sub_801c0ee4: +/* 801C0EE4 001BDE44 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 801C0EE8 001BDE48 7C 08 02 A6 */ mflr r0 +/* 801C0EEC 001BDE4C 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 801C0EF0 001BDE50 93 E1 00 BC */ stw r31, 0xbc(r1) +/* 801C0EF4 001BDE54 7C BF 2B 78 */ mr r31, r5 +/* 801C0EF8 001BDE58 93 C1 00 B8 */ stw r30, 0xb8(r1) +/* 801C0EFC 001BDE5C 7C 9E 23 78 */ mr r30, r4 +/* 801C0F00 001BDE60 93 A1 00 B4 */ stw r29, 0xb4(r1) +/* 801C0F04 001BDE64 7C 7D 1B 78 */ mr r29, r3 +/* 801C0F08 001BDE68 C0 C3 00 50 */ lfs f6, 0x50(r3) +/* 801C0F0C 001BDE6C C0 05 00 04 */ lfs f0, 4(r5) +/* 801C0F10 001BDE70 C0 E3 00 40 */ lfs f7, 0x40(r3) +/* 801C0F14 001BDE74 EC 20 30 28 */ fsubs f1, f0, f6 +/* 801C0F18 001BDE78 C0 05 00 00 */ lfs f0, 0(r5) +/* 801C0F1C 001BDE7C C0 A3 00 60 */ lfs f5, 0x60(r3) +/* 801C0F20 001BDE80 EC 60 38 28 */ fsubs f3, f0, f7 +/* 801C0F24 001BDE84 C0 85 00 08 */ lfs f4, 8(r5) +/* 801C0F28 001BDE88 EC 21 00 72 */ fmuls f1, f1, f1 +/* 801C0F2C 001BDE8C EC 44 28 28 */ fsubs f2, f4, f5 +/* 801C0F30 001BDE90 C0 02 AA A8 */ lfs f0, lbl_805AC7C8@sda21(r2) +/* 801C0F34 001BDE94 EC 23 08 FA */ fmadds f1, f3, f3, f1 +/* 801C0F38 001BDE98 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 801C0F3C 001BDE9C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C0F40 001BDEA0 40 81 00 FC */ ble lbl_801C103C +/* 801C0F44 001BDEA4 D0 E1 00 2C */ stfs f7, 0x2c(r1) +/* 801C0F48 001BDEA8 7F A5 EB 78 */ mr r5, r29 +/* 801C0F4C 001BDEAC C0 22 AA AC */ lfs f1, lbl_805AC7CC@sda21(r2) +/* 801C0F50 001BDEB0 38 61 00 20 */ addi r3, r1, 0x20 +/* 801C0F54 001BDEB4 D0 C1 00 30 */ stfs f6, 0x30(r1) +/* 801C0F58 001BDEB8 38 9D 04 5C */ addi r4, r29, 0x45c +/* 801C0F5C 001BDEBC 38 C1 00 44 */ addi r6, r1, 0x44 +/* 801C0F60 001BDEC0 D0 A1 00 34 */ stfs f5, 0x34(r1) +/* 801C0F64 001BDEC4 D0 E1 00 44 */ stfs f7, 0x44(r1) +/* 801C0F68 001BDEC8 D0 C1 00 48 */ stfs f6, 0x48(r1) +/* 801C0F6C 001BDECC D0 81 00 4C */ stfs f4, 0x4c(r1) +/* 801C0F70 001BDED0 4B F7 DB AD */ bl Arrival__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3ff +/* 801C0F74 001BDED4 C0 81 00 24 */ lfs f4, 0x24(r1) +/* 801C0F78 001BDED8 C0 41 00 20 */ lfs f2, 0x20(r1) +/* 801C0F7C 001BDEDC EC 24 01 32 */ fmuls f1, f4, f4 +/* 801C0F80 001BDEE0 C0 A1 00 28 */ lfs f5, 0x28(r1) +/* 801C0F84 001BDEE4 C0 02 AA B0 */ lfs f0, lbl_805AC7D0@sda21(r2) +/* 801C0F88 001BDEE8 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 801C0F8C 001BDEEC EC 25 09 7A */ fmadds f1, f5, f5, f1 +/* 801C0F90 001BDEF0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C0F94 001BDEF4 40 81 00 44 */ ble lbl_801C0FD8 +/* 801C0F98 001BDEF8 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801C0F9C 001BDEFC C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) +/* 801C0FA0 001BDF00 C0 02 AA B4 */ lfs f0, lbl_805AC7D4@sda21(r2) +/* 801C0FA4 001BDF04 38 81 00 88 */ addi r4, r1, 0x88 +/* 801C0FA8 001BDF08 D0 41 00 88 */ stfs f2, 0x88(r1) +/* 801C0FAC 001BDF0C C0 43 00 04 */ lfs f2, 4(r3) +/* 801C0FB0 001BDF10 C0 23 00 08 */ lfs f1, 8(r3) +/* 801C0FB4 001BDF14 D0 81 00 8C */ stfs f4, 0x8c(r1) +/* 801C0FB8 001BDF18 D0 A1 00 90 */ stfs f5, 0x90(r1) +/* 801C0FBC 001BDF1C D0 61 00 94 */ stfs f3, 0x94(r1) +/* 801C0FC0 001BDF20 D0 41 00 98 */ stfs f2, 0x98(r1) +/* 801C0FC4 001BDF24 D0 21 00 9C */ stfs f1, 0x9c(r1) +/* 801C0FC8 001BDF28 D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 801C0FCC 001BDF2C 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 801C0FD0 001BDF30 38 63 00 04 */ addi r3, r3, 4 +/* 801C0FD4 001BDF34 4B F7 07 45 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +lbl_801C0FD8: +/* 801C0FD8 001BDF38 7F A5 EB 78 */ mr r5, r29 +/* 801C0FDC 001BDF3C 7F E6 FB 78 */ mr r6, r31 +/* 801C0FE0 001BDF40 38 61 00 14 */ addi r3, r1, 0x14 +/* 801C0FE4 001BDF44 38 9D 04 5C */ addi r4, r29, 0x45c +/* 801C0FE8 001BDF48 4B F7 DC 39 */ bl Seek__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3f +/* 801C0FEC 001BDF4C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801C0FF0 001BDF50 C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) +/* 801C0FF4 001BDF54 C0 C1 00 14 */ lfs f6, 0x14(r1) +/* 801C0FF8 001BDF58 38 81 00 6C */ addi r4, r1, 0x6c +/* 801C0FFC 001BDF5C C0 A1 00 18 */ lfs f5, 0x18(r1) +/* 801C1000 001BDF60 C0 81 00 1C */ lfs f4, 0x1c(r1) +/* 801C1004 001BDF64 C0 43 00 04 */ lfs f2, 4(r3) +/* 801C1008 001BDF68 C0 23 00 08 */ lfs f1, 8(r3) +/* 801C100C 001BDF6C C0 02 AA A4 */ lfs f0, lbl_805AC7C4@sda21(r2) +/* 801C1010 001BDF70 D0 C1 00 6C */ stfs f6, 0x6c(r1) +/* 801C1014 001BDF74 D0 A1 00 70 */ stfs f5, 0x70(r1) +/* 801C1018 001BDF78 D0 81 00 74 */ stfs f4, 0x74(r1) +/* 801C101C 001BDF7C D0 61 00 78 */ stfs f3, 0x78(r1) +/* 801C1020 001BDF80 D0 41 00 7C */ stfs f2, 0x7c(r1) +/* 801C1024 001BDF84 D0 21 00 80 */ stfs f1, 0x80(r1) +/* 801C1028 001BDF88 D0 01 00 84 */ stfs f0, 0x84(r1) +/* 801C102C 001BDF8C 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 801C1030 001BDF90 38 63 00 04 */ addi r3, r3, 4 +/* 801C1034 001BDF94 4B F7 06 E5 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 801C1038 001BDF98 48 00 00 BC */ b lbl_801C10F4 +lbl_801C103C: +/* 801C103C 001BDF9C 81 83 00 00 */ lwz r12, 0(r3) +/* 801C1040 001BDFA0 C0 22 AA 98 */ lfs f1, lbl_805AC7B8@sda21(r2) +/* 801C1044 001BDFA4 81 8C 01 E8 */ lwz r12, 0x1e8(r12) +/* 801C1048 001BDFA8 7D 89 03 A6 */ mtctr r12 +/* 801C104C 001BDFAC 4E 80 04 21 */ bctrl +/* 801C1050 001BDFB0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C1054 001BDFB4 41 82 00 A0 */ beq lbl_801C10F4 +/* 801C1058 001BDFB8 80 9E 08 4C */ lwz r4, 0x84c(r30) +/* 801C105C 001BDFBC 38 61 00 38 */ addi r3, r1, 0x38 +/* 801C1060 001BDFC0 C0 1D 00 50 */ lfs f0, 0x50(r29) +/* 801C1064 001BDFC4 C0 24 00 50 */ lfs f1, 0x50(r4) +/* 801C1068 001BDFC8 C0 64 00 60 */ lfs f3, 0x60(r4) +/* 801C106C 001BDFCC C0 5D 00 60 */ lfs f2, 0x60(r29) +/* 801C1070 001BDFD0 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801C1074 001BDFD4 C0 24 00 40 */ lfs f1, 0x40(r4) +/* 801C1078 001BDFD8 C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 801C107C 001BDFDC EC 43 10 28 */ fsubs f2, f3, f2 +/* 801C1080 001BDFE0 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801C1084 001BDFE4 D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 801C1088 001BDFE8 D0 41 00 40 */ stfs f2, 0x40(r1) +/* 801C108C 001BDFEC D0 01 00 38 */ stfs f0, 0x38(r1) +/* 801C1090 001BDFF0 48 15 36 69 */ bl CanBeNormalized__9CVector3fCFv +/* 801C1094 001BDFF4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C1098 001BDFF8 41 82 00 5C */ beq lbl_801C10F4 +/* 801C109C 001BDFFC 38 61 00 08 */ addi r3, r1, 8 +/* 801C10A0 001BE000 38 81 00 38 */ addi r4, r1, 0x38 +/* 801C10A4 001BE004 48 15 37 AD */ bl AsNormalized__9CVector3fCFv +/* 801C10A8 001BE008 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801C10AC 001BE00C C4 C3 66 A0 */ lfsu f6, skZero3f@l(r3) +/* 801C10B0 001BE010 C0 61 00 08 */ lfs f3, 8(r1) +/* 801C10B4 001BE014 38 81 00 50 */ addi r4, r1, 0x50 +/* 801C10B8 001BE018 C0 41 00 0C */ lfs f2, 0xc(r1) +/* 801C10BC 001BE01C C0 A3 00 04 */ lfs f5, 4(r3) +/* 801C10C0 001BE020 C0 83 00 08 */ lfs f4, 8(r3) +/* 801C10C4 001BE024 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 801C10C8 001BE028 C0 02 AA A4 */ lfs f0, lbl_805AC7C4@sda21(r2) +/* 801C10CC 001BE02C D0 C1 00 50 */ stfs f6, 0x50(r1) +/* 801C10D0 001BE030 D0 A1 00 54 */ stfs f5, 0x54(r1) +/* 801C10D4 001BE034 D0 81 00 58 */ stfs f4, 0x58(r1) +/* 801C10D8 001BE038 D0 61 00 5C */ stfs f3, 0x5c(r1) +/* 801C10DC 001BE03C D0 41 00 60 */ stfs f2, 0x60(r1) +/* 801C10E0 001BE040 D0 21 00 64 */ stfs f1, 0x64(r1) +/* 801C10E4 001BE044 D0 01 00 68 */ stfs f0, 0x68(r1) +/* 801C10E8 001BE048 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 801C10EC 001BE04C 38 63 00 04 */ addi r3, r3, 4 +/* 801C10F0 001BE050 4B F7 06 29 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +lbl_801C10F4: +/* 801C10F4 001BE054 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 801C10F8 001BE058 83 E1 00 BC */ lwz r31, 0xbc(r1) +/* 801C10FC 001BE05C 83 C1 00 B8 */ lwz r30, 0xb8(r1) +/* 801C1100 001BE060 83 A1 00 B4 */ lwz r29, 0xb4(r1) +/* 801C1104 001BE064 7C 08 03 A6 */ mtlr r0 +/* 801C1108 001BE068 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 801C110C 001BE06C 4E 80 00 20 */ blr + +.global sub_801c1110 +sub_801c1110: +/* 801C1110 001BE070 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801C1114 001BE074 7C 08 02 A6 */ mflr r0 +/* 801C1118 001BE078 90 01 00 64 */ stw r0, 0x64(r1) +/* 801C111C 001BE07C 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 801C1120 001BE080 7C 7F 1B 78 */ mr r31, r3 +/* 801C1124 001BE084 93 C1 00 58 */ stw r30, 0x58(r1) +/* 801C1128 001BE088 93 A1 00 54 */ stw r29, 0x54(r1) +/* 801C112C 001BE08C 93 81 00 50 */ stw r28, 0x50(r1) +/* 801C1130 001BE090 83 A4 08 38 */ lwz r29, 0x838(r4) +/* 801C1134 001BE094 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801C1138 001BE098 3B C4 66 A0 */ addi r30, r4, skZero3f@l +/* 801C113C 001BE09C AB 9D 20 08 */ lha r28, 0x2008(r29) +/* 801C1140 001BE0A0 48 00 01 04 */ b lbl_801C1244 +lbl_801C1144: +/* 801C1144 001BE0A4 7F A3 EB 78 */ mr r3, r29 +/* 801C1148 001BE0A8 7F 84 E3 78 */ mr r4, r28 +/* 801C114C 001BE0AC 4B E4 EB 91 */ bl __vc__11CObjectListCFi +/* 801C1150 001BE0B0 7C 64 1B 78 */ mr r4, r3 +/* 801C1154 001BE0B4 38 61 00 08 */ addi r3, r1, 8 +/* 801C1158 001BE0B8 4B EE B9 05 */ bl "__ct__16TCastToPtr<3CAi>FP7CEntity" +/* 801C115C 001BE0BC 80 83 00 04 */ lwz r4, 4(r3) +/* 801C1160 001BE0C0 28 04 00 00 */ cmplwi r4, 0 +/* 801C1164 001BE0C4 41 82 00 C4 */ beq lbl_801C1228 +/* 801C1168 001BE0C8 7C 04 F8 40 */ cmplw r4, r31 +/* 801C116C 001BE0CC 41 82 00 BC */ beq lbl_801C1228 +/* 801C1170 001BE0D0 80 64 00 04 */ lwz r3, 4(r4) +/* 801C1174 001BE0D4 80 1F 00 04 */ lwz r0, 4(r31) +/* 801C1178 001BE0D8 7C 03 00 00 */ cmpw r3, r0 +/* 801C117C 001BE0DC 40 82 00 AC */ bne lbl_801C1228 +/* 801C1180 001BE0E0 C0 64 00 60 */ lfs f3, 0x60(r4) +/* 801C1184 001BE0E4 7F E5 FB 78 */ mr r5, r31 +/* 801C1188 001BE0E8 C0 44 00 50 */ lfs f2, 0x50(r4) +/* 801C118C 001BE0EC 38 61 00 1C */ addi r3, r1, 0x1c +/* 801C1190 001BE0F0 C0 04 00 40 */ lfs f0, 0x40(r4) +/* 801C1194 001BE0F4 38 9F 04 5C */ addi r4, r31, 0x45c +/* 801C1198 001BE0F8 C0 22 AA B8 */ lfs f1, lbl_805AC7D8@sda21(r2) +/* 801C119C 001BE0FC 38 C1 00 10 */ addi r6, r1, 0x10 +/* 801C11A0 001BE100 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801C11A4 001BE104 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801C11A8 001BE108 D0 61 00 18 */ stfs f3, 0x18(r1) +/* 801C11AC 001BE10C 4B F7 D7 45 */ bl Separation__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3ff +/* 801C11B0 001BE110 C0 C1 00 1C */ lfs f6, 0x1c(r1) +/* 801C11B4 001BE114 38 00 00 00 */ li r0, 0 +/* 801C11B8 001BE118 C0 02 AA 98 */ lfs f0, lbl_805AC7B8@sda21(r2) +/* 801C11BC 001BE11C C0 81 00 20 */ lfs f4, 0x20(r1) +/* 801C11C0 001BE120 FC 00 30 00 */ fcmpu cr0, f0, f6 +/* 801C11C4 001BE124 C0 A1 00 24 */ lfs f5, 0x24(r1) +/* 801C11C8 001BE128 40 82 00 14 */ bne lbl_801C11DC +/* 801C11CC 001BE12C FC 00 20 00 */ fcmpu cr0, f0, f4 +/* 801C11D0 001BE130 40 82 00 0C */ bne lbl_801C11DC +/* 801C11D4 001BE134 FC 00 28 00 */ fcmpu cr0, f0, f5 +/* 801C11D8 001BE138 41 82 00 08 */ beq lbl_801C11E0 +lbl_801C11DC: +/* 801C11DC 001BE13C 38 00 00 01 */ li r0, 1 +lbl_801C11E0: +/* 801C11E0 001BE140 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 801C11E4 001BE144 41 82 00 44 */ beq lbl_801C1228 +/* 801C11E8 001BE148 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801C11EC 001BE14C C0 5E 00 04 */ lfs f2, 4(r30) +/* 801C11F0 001BE150 C0 3E 00 08 */ lfs f1, 8(r30) +/* 801C11F4 001BE154 38 81 00 28 */ addi r4, r1, 0x28 +/* 801C11F8 001BE158 C0 63 66 A0 */ lfs f3, skZero3f@l(r3) +/* 801C11FC 001BE15C C0 02 AA A4 */ lfs f0, lbl_805AC7C4@sda21(r2) +/* 801C1200 001BE160 D0 C1 00 28 */ stfs f6, 0x28(r1) +/* 801C1204 001BE164 D0 81 00 2C */ stfs f4, 0x2c(r1) +/* 801C1208 001BE168 D0 A1 00 30 */ stfs f5, 0x30(r1) +/* 801C120C 001BE16C D0 61 00 34 */ stfs f3, 0x34(r1) +/* 801C1210 001BE170 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 801C1214 001BE174 D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 801C1218 001BE178 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 801C121C 001BE17C 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801C1220 001BE180 38 63 00 04 */ addi r3, r3, 4 +/* 801C1224 001BE184 4B F7 04 F5 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +lbl_801C1228: +/* 801C1228 001BE188 2C 1C FF FF */ cmpwi r28, -1 +/* 801C122C 001BE18C 41 82 00 14 */ beq lbl_801C1240 +/* 801C1230 001BE190 57 83 18 38 */ slwi r3, r28, 3 +/* 801C1234 001BE194 38 03 00 08 */ addi r0, r3, 8 +/* 801C1238 001BE198 7F 9D 02 AE */ lhax r28, r29, r0 +/* 801C123C 001BE19C 48 00 00 08 */ b lbl_801C1244 +lbl_801C1240: +/* 801C1240 001BE1A0 3B 80 FF FF */ li r28, -1 +lbl_801C1244: +/* 801C1244 001BE1A4 2C 1C FF FF */ cmpwi r28, -1 +/* 801C1248 001BE1A8 40 82 FE FC */ bne lbl_801C1144 +/* 801C124C 001BE1AC 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801C1250 001BE1B0 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 801C1254 001BE1B4 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 801C1258 001BE1B8 83 A1 00 54 */ lwz r29, 0x54(r1) +/* 801C125C 001BE1BC 83 81 00 50 */ lwz r28, 0x50(r1) +/* 801C1260 001BE1C0 7C 08 03 A6 */ mtlr r0 +/* 801C1264 001BE1C4 38 21 00 60 */ addi r1, r1, 0x60 +/* 801C1268 001BE1C8 4E 80 00 20 */ blr + +.global sub_801c126c +sub_801c126c: +/* 801C126C 001BE1CC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801C1270 001BE1D0 7C 08 02 A6 */ mflr r0 +/* 801C1274 001BE1D4 90 01 00 34 */ stw r0, 0x34(r1) +/* 801C1278 001BE1D8 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801C127C 001BE1DC 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801C1280 001BE1E0 7C 7E 1B 78 */ mr r30, r3 +/* 801C1284 001BE1E4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801C1288 001BE1E8 A0 63 06 78 */ lhz r3, 0x678(r3) +/* 801C128C 001BE1EC 7C 03 00 40 */ cmplw r3, r0 +/* 801C1290 001BE1F0 41 82 00 68 */ beq lbl_801C12F8 +/* 801C1294 001BE1F4 A0 1E 06 78 */ lhz r0, 0x678(r30) +/* 801C1298 001BE1F8 7C 83 23 78 */ mr r3, r4 +/* 801C129C 001BE1FC 38 81 00 18 */ addi r4, r1, 0x18 +/* 801C12A0 001BE200 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801C12A4 001BE204 4B E8 B2 D1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801C12A8 001BE208 7C 64 1B 78 */ mr r4, r3 +/* 801C12AC 001BE20C 38 61 00 1C */ addi r3, r1, 0x1c +/* 801C12B0 001BE210 4B EE 62 C5 */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" +/* 801C12B4 001BE214 83 E3 00 04 */ lwz r31, 4(r3) +/* 801C12B8 001BE218 28 1F 00 00 */ cmplwi r31, 0 +/* 801C12BC 001BE21C 41 82 00 3C */ beq lbl_801C12F8 +/* 801C12C0 001BE220 A0 1E 00 08 */ lhz r0, 8(r30) +/* 801C12C4 001BE224 7F E3 FB 78 */ mr r3, r31 +/* 801C12C8 001BE228 38 81 00 14 */ addi r4, r1, 0x14 +/* 801C12CC 001BE22C B0 01 00 10 */ sth r0, 0x10(r1) +/* 801C12D0 001BE230 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801C12D4 001BE234 48 07 7D 1D */ bl IsPartOfTeam__10CTeamAiMgrCF9TUniqueId +/* 801C12D8 001BE238 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C12DC 001BE23C 41 82 00 1C */ beq lbl_801C12F8 +/* 801C12E0 001BE240 A0 1E 00 08 */ lhz r0, 8(r30) +/* 801C12E4 001BE244 7F E3 FB 78 */ mr r3, r31 +/* 801C12E8 001BE248 38 81 00 0C */ addi r4, r1, 0xc +/* 801C12EC 001BE24C B0 01 00 08 */ sth r0, 8(r1) +/* 801C12F0 001BE250 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801C12F4 001BE254 48 07 82 01 */ bl RemoveTeamAiRole__10CTeamAiMgrF9TUniqueId +lbl_801C12F8: +/* 801C12F8 001BE258 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801C12FC 001BE25C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801C1300 001BE260 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801C1304 001BE264 7C 08 03 A6 */ mtlr r0 +/* 801C1308 001BE268 38 21 00 30 */ addi r1, r1, 0x30 +/* 801C130C 001BE26C 4E 80 00 20 */ blr + +.global sub_801c1310 +sub_801c1310: +/* 801C1310 001BE270 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801C1314 001BE274 7C 08 02 A6 */ mflr r0 +/* 801C1318 001BE278 90 01 00 34 */ stw r0, 0x34(r1) +/* 801C131C 001BE27C 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801C1320 001BE280 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801C1324 001BE284 7C 7E 1B 78 */ mr r30, r3 +/* 801C1328 001BE288 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801C132C 001BE28C A0 63 06 78 */ lhz r3, 0x678(r3) +/* 801C1330 001BE290 7C 03 00 40 */ cmplw r3, r0 +/* 801C1334 001BE294 41 82 00 68 */ beq lbl_801C139C +/* 801C1338 001BE298 A0 1E 06 78 */ lhz r0, 0x678(r30) +/* 801C133C 001BE29C 7C 83 23 78 */ mr r3, r4 +/* 801C1340 001BE2A0 38 81 00 10 */ addi r4, r1, 0x10 +/* 801C1344 001BE2A4 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801C1348 001BE2A8 4B E8 B2 2D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801C134C 001BE2AC 7C 64 1B 78 */ mr r4, r3 +/* 801C1350 001BE2B0 38 61 00 14 */ addi r3, r1, 0x14 +/* 801C1354 001BE2B4 4B EE 62 21 */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" +/* 801C1358 001BE2B8 83 E3 00 04 */ lwz r31, 4(r3) +/* 801C135C 001BE2BC 28 1F 00 00 */ cmplwi r31, 0 +/* 801C1360 001BE2C0 41 82 00 3C */ beq lbl_801C139C +/* 801C1364 001BE2C4 A0 1E 00 08 */ lhz r0, 8(r30) +/* 801C1368 001BE2C8 7F E3 FB 78 */ mr r3, r31 +/* 801C136C 001BE2CC 38 81 00 0C */ addi r4, r1, 0xc +/* 801C1370 001BE2D0 B0 01 00 08 */ sth r0, 8(r1) +/* 801C1374 001BE2D4 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801C1378 001BE2D8 48 07 7C 79 */ bl IsPartOfTeam__10CTeamAiMgrCF9TUniqueId +/* 801C137C 001BE2DC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C1380 001BE2E0 40 82 00 1C */ bne lbl_801C139C +/* 801C1384 001BE2E4 7F E3 FB 78 */ mr r3, r31 +/* 801C1388 001BE2E8 7F C4 F3 78 */ mr r4, r30 +/* 801C138C 001BE2EC 38 A0 00 02 */ li r5, 2 +/* 801C1390 001BE2F0 38 C0 FF FF */ li r6, -1 +/* 801C1394 001BE2F4 38 E0 FF FF */ li r7, -1 +/* 801C1398 001BE2F8 48 07 84 15 */ bl AssignTeamAiRole__10CTeamAiMgrFRC3CAiiii +lbl_801C139C: +/* 801C139C 001BE2FC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801C13A0 001BE300 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801C13A4 001BE304 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801C13A8 001BE308 7C 08 03 A6 */ mtlr r0 +/* 801C13AC 001BE30C 38 21 00 30 */ addi r1, r1, 0x30 +/* 801C13B0 001BE310 4E 80 00 20 */ blr + +.global sub_801c13b4 +sub_801c13b4: +/* 801C13B4 001BE314 80 63 00 64 */ lwz r3, 0x64(r3) +/* 801C13B8 001BE318 C0 04 00 00 */ lfs f0, 0(r4) +/* 801C13BC 001BE31C D0 03 00 00 */ stfs f0, 0(r3) +/* 801C13C0 001BE320 C0 04 00 04 */ lfs f0, 4(r4) +/* 801C13C4 001BE324 D0 03 00 04 */ stfs f0, 4(r3) +/* 801C13C8 001BE328 C0 04 00 08 */ lfs f0, 8(r4) +/* 801C13CC 001BE32C D0 03 00 08 */ stfs f0, 8(r3) +/* 801C13D0 001BE330 4E 80 00 20 */ blr + +.global sub_801c13d4 +sub_801c13d4: +/* 801C13D4 001BE334 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801C13D8 001BE338 7C 08 02 A6 */ mflr r0 +/* 801C13DC 001BE33C 90 01 00 54 */ stw r0, 0x54(r1) +/* 801C13E0 001BE340 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 801C13E4 001BE344 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 801C13E8 001BE348 DB C1 00 30 */ stfd f30, 0x30(r1) +/* 801C13EC 001BE34C F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 +/* 801C13F0 001BE350 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801C13F4 001BE354 7C 7F 1B 78 */ mr r31, r3 +/* 801C13F8 001BE358 48 00 01 65 */ bl sub_801c155c +/* 801C13FC 001BE35C C0 02 AA A4 */ lfs f0, lbl_805AC7C4@sda21(r2) +/* 801C1400 001BE360 38 81 00 10 */ addi r4, r1, 0x10 +/* 801C1404 001BE364 38 6D 91 74 */ addi r3, r13, lbl_805A7D34@sda21 +/* 801C1408 001BE368 38 AD 91 78 */ addi r5, r13, lbl_805A7D38@sda21 +/* 801C140C 001BE36C EC 01 00 28 */ fsubs f0, f1, f0 +/* 801C1410 001BE370 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801C1414 001BE374 4B E4 AE A1 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 801C1418 001BE378 C3 E3 00 00 */ lfs f31, 0(r3) +/* 801C141C 001BE37C C0 22 AA C4 */ lfs f1, lbl_805AC7E4@sda21(r2) +/* 801C1420 001BE380 C0 02 AA C0 */ lfs f0, lbl_805AC7E0@sda21(r2) +/* 801C1424 001BE384 C0 42 AA BC */ lfs f2, lbl_805AC7DC@sda21(r2) +/* 801C1428 001BE388 EC 01 07 FA */ fmadds f0, f1, f31, f0 +/* 801C142C 001BE38C EF C2 00 32 */ fmuls f30, f2, f0 +/* 801C1430 001BE390 F3 C1 A0 08 */ psq_st f30, 8(r1), 1, qr2 +/* 801C1434 001BE394 38 81 00 09 */ addi r4, r1, 9 +/* 801C1438 001BE398 38 6D 91 7C */ addi r3, r13, lbl_805A7D3C@sda21 +/* 801C143C 001BE39C 38 AD 91 7D */ addi r5, r13, lbl_805A7D3D@sda21 +/* 801C1440 001BE3A0 88 01 00 08 */ lbz r0, 8(r1) +/* 801C1444 001BE3A4 98 01 00 09 */ stb r0, 9(r1) +/* 801C1448 001BE3A8 4B FB 13 C9 */ bl sub_80172810 +/* 801C144C 001BE3AC 88 83 00 00 */ lbz r4, 0(r3) +/* 801C1450 001BE3B0 7F E3 FB 78 */ mr r3, r31 +/* 801C1454 001BE3B4 4B E9 1F 1D */ bl SetVolume__6CActorFUc +/* 801C1458 001BE3B8 C0 02 AA C8 */ lfs f0, lbl_805AC7E8@sda21(r2) +/* 801C145C 001BE3BC 38 81 00 0C */ addi r4, r1, 0xc +/* 801C1460 001BE3C0 38 6D 91 80 */ addi r3, r13, lbl_805A7D40@sda21 +/* 801C1464 001BE3C4 38 AD 91 84 */ addi r5, r13, lbl_805A7D44@sda21 +/* 801C1468 001BE3C8 EC 00 07 F2 */ fmuls f0, f0, f31 +/* 801C146C 001BE3CC FC 00 00 1E */ fctiwz f0, f0 +/* 801C1470 001BE3D0 D8 01 00 18 */ stfd f0, 0x18(r1) +/* 801C1474 001BE3D4 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 801C1478 001BE3D8 20 00 10 00 */ subfic r0, r0, 0x1000 +/* 801C147C 001BE3DC 90 01 00 0C */ stw r0, 0xc(r1) +/* 801C1480 001BE3E0 4B E9 8B E5 */ bl "Clamp__5CMathFRCiRCiRCi" +/* 801C1484 001BE3E4 80 83 00 00 */ lwz r4, 0(r3) +/* 801C1488 001BE3E8 7F E3 FB 78 */ mr r3, r31 +/* 801C148C 001BE3EC 4B E9 1E 99 */ bl SetSoundEventPitchBend__6CActorFi +/* 801C1490 001BE3F0 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 801C1494 001BE3F4 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 801C1498 001BE3F8 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 +/* 801C149C 001BE3FC CB C1 00 30 */ lfd f30, 0x30(r1) +/* 801C14A0 001BE400 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801C14A4 001BE404 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801C14A8 001BE408 7C 08 03 A6 */ mtlr r0 +/* 801C14AC 001BE40C 38 21 00 50 */ addi r1, r1, 0x50 +/* 801C14B0 001BE410 4E 80 00 20 */ blr + +.global sub_801c14b4 +sub_801c14b4: +/* 801C14B4 001BE414 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801C14B8 001BE418 7C 08 02 A6 */ mflr r0 +/* 801C14BC 001BE41C 90 01 00 34 */ stw r0, 0x34(r1) +/* 801C14C0 001BE420 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 801C14C4 001BE424 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 801C14C8 001BE428 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801C14CC 001BE42C 7C 7F 1B 78 */ mr r31, r3 +/* 801C14D0 001BE430 38 81 00 08 */ addi r4, r1, 8 +/* 801C14D4 001BE434 C0 03 07 DC */ lfs f0, 0x7dc(r3) +/* 801C14D8 001BE438 38 6D 91 6C */ addi r3, r13, lbl_805A7D2C@sda21 +/* 801C14DC 001BE43C 38 AD 91 70 */ addi r5, r13, lbl_805A7D30@sda21 +/* 801C14E0 001BE440 EC 00 08 2A */ fadds f0, f0, f1 +/* 801C14E4 001BE444 D0 1F 07 DC */ stfs f0, 0x7dc(r31) +/* 801C14E8 001BE448 C0 3F 07 DC */ lfs f1, 0x7dc(r31) +/* 801C14EC 001BE44C C0 1F 06 58 */ lfs f0, 0x658(r31) +/* 801C14F0 001BE450 C0 5F 06 54 */ lfs f2, 0x654(r31) +/* 801C14F4 001BE454 EC 01 00 24 */ fdivs f0, f1, f0 +/* 801C14F8 001BE458 C0 3F 07 D0 */ lfs f1, 0x7d0(r31) +/* 801C14FC 001BE45C EF E2 08 28 */ fsubs f31, f2, f1 +/* 801C1500 001BE460 D0 01 00 08 */ stfs f0, 8(r1) +/* 801C1504 001BE464 4B E4 AD B1 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 801C1508 001BE468 C0 43 00 00 */ lfs f2, 0(r3) +/* 801C150C 001BE46C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801C1510 001BE470 C0 1F 07 D0 */ lfs f0, 0x7d0(r31) +/* 801C1514 001BE474 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 801C1518 001BE478 7F E3 FB 78 */ mr r3, r31 +/* 801C151C 001BE47C C0 22 AA 98 */ lfs f1, lbl_805AC7B8@sda21(r2) +/* 801C1520 001BE480 EC 02 07 FA */ fmadds f0, f2, f31, f0 +/* 801C1524 001BE484 D0 1F 07 B4 */ stfs f0, 0x7b4(r31) +/* 801C1528 001BE488 D0 1F 07 B8 */ stfs f0, 0x7b8(r31) +/* 801C152C 001BE48C D0 1F 07 BC */ stfs f0, 0x7bc(r31) +/* 801C1530 001BE490 81 9F 00 00 */ lwz r12, 0(r31) +/* 801C1534 001BE494 81 8C 00 90 */ lwz r12, 0x90(r12) +/* 801C1538 001BE498 7D 89 03 A6 */ mtctr r12 +/* 801C153C 001BE49C 4E 80 04 21 */ bctrl +/* 801C1540 001BE4A0 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 801C1544 001BE4A4 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801C1548 001BE4A8 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 801C154C 001BE4AC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801C1550 001BE4B0 7C 08 03 A6 */ mtlr r0 +/* 801C1554 001BE4B4 38 21 00 30 */ addi r1, r1, 0x30 +/* 801C1558 001BE4B8 4E 80 00 20 */ blr + +.global sub_801c155c +sub_801c155c: +/* 801C155C 001BE4BC C0 23 07 DC */ lfs f1, 0x7dc(r3) +/* 801C1560 001BE4C0 C0 03 06 58 */ lfs f0, 0x658(r3) +/* 801C1564 001BE4C4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C1568 001BE4C8 40 80 00 14 */ bge lbl_801C157C +/* 801C156C 001BE4CC EC 01 00 24 */ fdivs f0, f1, f0 +/* 801C1570 001BE4D0 C0 22 AA A4 */ lfs f1, lbl_805AC7C4@sda21(r2) +/* 801C1574 001BE4D4 EC 21 00 2A */ fadds f1, f1, f0 +/* 801C1578 001BE4D8 4E 80 00 20 */ blr +lbl_801C157C: +/* 801C157C 001BE4DC C0 63 06 5C */ lfs f3, 0x65c(r3) +/* 801C1580 001BE4E0 FC 01 18 40 */ fcmpo cr0, f1, f3 +/* 801C1584 001BE4E4 40 80 00 1C */ bge lbl_801C15A0 +/* 801C1588 001BE4E8 EC 21 00 28 */ fsubs f1, f1, f0 +/* 801C158C 001BE4EC C0 42 AA 9C */ lfs f2, lbl_805AC7BC@sda21(r2) +/* 801C1590 001BE4F0 EC 03 00 28 */ fsubs f0, f3, f0 +/* 801C1594 001BE4F4 EC 01 00 24 */ fdivs f0, f1, f0 +/* 801C1598 001BE4F8 EC 22 00 2A */ fadds f1, f2, f0 +/* 801C159C 001BE4FC 4E 80 00 20 */ blr +lbl_801C15A0: +/* 801C15A0 001BE500 C0 22 AA B4 */ lfs f1, lbl_805AC7D4@sda21(r2) +/* 801C15A4 001BE504 4E 80 00 20 */ blr + +.global sub_801c15a8 +sub_801c15a8: +/* 801C15A8 001BE508 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801C15AC 001BE50C 7C 08 02 A6 */ mflr r0 +/* 801C15B0 001BE510 90 01 00 14 */ stw r0, 0x14(r1) +/* 801C15B4 001BE514 4B FF FF A9 */ bl sub_801c155c +/* 801C15B8 001BE518 C0 42 AA A4 */ lfs f2, lbl_805AC7C4@sda21(r2) +/* 801C15BC 001BE51C C0 02 AA AC */ lfs f0, lbl_805AC7CC@sda21(r2) +/* 801C15C0 001BE520 EC 21 10 28 */ fsubs f1, f1, f2 +/* 801C15C4 001BE524 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801C15C8 001BE528 EC 20 10 7A */ fmadds f1, f0, f1, f2 +/* 801C15CC 001BE52C 7C 08 03 A6 */ mtlr r0 +/* 801C15D0 001BE530 38 21 00 10 */ addi r1, r1, 0x10 +/* 801C15D4 001BE534 4E 80 00 20 */ blr + +.global sub_801c15d8 +sub_801c15d8: +/* 801C15D8 001BE538 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801C15DC 001BE53C 7C 08 02 A6 */ mflr r0 +/* 801C15E0 001BE540 90 01 00 24 */ stw r0, 0x24(r1) +/* 801C15E4 001BE544 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801C15E8 001BE548 7C 7F 1B 78 */ mr r31, r3 +/* 801C15EC 001BE54C 80 85 08 4C */ lwz r4, 0x84c(r5) +/* 801C15F0 001BE550 80 04 02 F8 */ lwz r0, 0x2f8(r4) +/* 801C15F4 001BE554 C0 04 00 40 */ lfs f0, 0x40(r4) +/* 801C15F8 001BE558 2C 00 00 00 */ cmpwi r0, 0 +/* 801C15FC 001BE55C C0 24 00 50 */ lfs f1, 0x50(r4) +/* 801C1600 001BE560 C0 44 00 60 */ lfs f2, 0x60(r4) +/* 801C1604 001BE564 41 82 00 14 */ beq lbl_801C1618 +/* 801C1608 001BE568 41 80 00 48 */ blt lbl_801C1650 +/* 801C160C 001BE56C 2C 00 00 04 */ cmpwi r0, 4 +/* 801C1610 001BE570 40 80 00 40 */ bge lbl_801C1650 +/* 801C1614 001BE574 48 00 00 18 */ b lbl_801C162C +lbl_801C1618: +/* 801C1618 001BE578 80 64 04 90 */ lwz r3, 0x490(r4) +/* 801C161C 001BE57C C0 03 03 F4 */ lfs f0, 0x3f4(r3) +/* 801C1620 001BE580 C0 23 04 04 */ lfs f1, 0x404(r3) +/* 801C1624 001BE584 C0 43 04 14 */ lfs f2, 0x414(r3) +/* 801C1628 001BE588 48 00 00 28 */ b lbl_801C1650 +lbl_801C162C: +/* 801C162C 001BE58C 81 84 00 00 */ lwz r12, 0(r4) +/* 801C1630 001BE590 38 61 00 08 */ addi r3, r1, 8 +/* 801C1634 001BE594 C0 22 AA 98 */ lfs f1, lbl_805AC7B8@sda21(r2) +/* 801C1638 001BE598 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801C163C 001BE59C 7D 89 03 A6 */ mtctr r12 +/* 801C1640 001BE5A0 4E 80 04 21 */ bctrl +/* 801C1644 001BE5A4 C0 01 00 08 */ lfs f0, 8(r1) +/* 801C1648 001BE5A8 C0 21 00 0C */ lfs f1, 0xc(r1) +/* 801C164C 001BE5AC C0 41 00 10 */ lfs f2, 0x10(r1) +lbl_801C1650: +/* 801C1650 001BE5B0 D0 1F 00 00 */ stfs f0, 0(r31) +/* 801C1654 001BE5B4 D0 3F 00 04 */ stfs f1, 4(r31) +/* 801C1658 001BE5B8 D0 5F 00 08 */ stfs f2, 8(r31) +/* 801C165C 001BE5BC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801C1660 001BE5C0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801C1664 001BE5C4 7C 08 03 A6 */ mtlr r0 +/* 801C1668 001BE5C8 38 21 00 20 */ addi r1, r1, 0x20 +/* 801C166C 001BE5CC 4E 80 00 20 */ blr + +.global sub_801c1670 +sub_801c1670: +/* 801C1670 001BE5D0 94 21 FE F0 */ stwu r1, -0x110(r1) +/* 801C1674 001BE5D4 7C 08 02 A6 */ mflr r0 +/* 801C1678 001BE5D8 90 01 01 14 */ stw r0, 0x114(r1) +/* 801C167C 001BE5DC DB E1 01 00 */ stfd f31, 0x100(r1) +/* 801C1680 001BE5E0 F3 E1 01 08 */ psq_st f31, 264(r1), 0, qr0 +/* 801C1684 001BE5E4 DB C1 00 F0 */ stfd f30, 0xf0(r1) +/* 801C1688 001BE5E8 F3 C1 00 F8 */ psq_st f30, 248(r1), 0, qr0 +/* 801C168C 001BE5EC DB A1 00 E0 */ stfd f29, 0xe0(r1) +/* 801C1690 001BE5F0 F3 A1 00 E8 */ psq_st f29, 232(r1), 0, qr0 +/* 801C1694 001BE5F4 93 E1 00 DC */ stw r31, 0xdc(r1) +/* 801C1698 001BE5F8 93 C1 00 D8 */ stw r30, 0xd8(r1) +/* 801C169C 001BE5FC 7C 9F 23 78 */ mr r31, r4 +/* 801C16A0 001BE600 7C 7E 1B 78 */ mr r30, r3 +/* 801C16A4 001BE604 38 61 00 44 */ addi r3, r1, 0x44 +/* 801C16A8 001BE608 38 BF 07 60 */ addi r5, r31, 0x760 +/* 801C16AC 001BE60C 4B EB 72 0D */ bl GetLctrTransform__10CPatternedCFRC6CSegId +/* 801C16B0 001BE610 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 801C16B4 001BE614 38 81 00 44 */ addi r4, r1, 0x44 +/* 801C16B8 001BE618 48 15 14 BD */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801C16BC 001BE61C C3 E1 00 D0 */ lfs f31, 0xd0(r1) +/* 801C16C0 001BE620 7F E4 FB 78 */ mr r4, r31 +/* 801C16C4 001BE624 C3 C1 00 C0 */ lfs f30, 0xc0(r1) +/* 801C16C8 001BE628 38 61 00 14 */ addi r3, r1, 0x14 +/* 801C16CC 001BE62C C3 A1 00 B0 */ lfs f29, 0xb0(r1) +/* 801C16D0 001BE630 38 BF 07 61 */ addi r5, r31, 0x761 +/* 801C16D4 001BE634 4B EB 71 E5 */ bl GetLctrTransform__10CPatternedCFRC6CSegId +/* 801C16D8 001BE638 38 61 00 74 */ addi r3, r1, 0x74 +/* 801C16DC 001BE63C 38 81 00 14 */ addi r4, r1, 0x14 +/* 801C16E0 001BE640 48 15 14 95 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801C16E4 001BE644 C0 41 00 80 */ lfs f2, 0x80(r1) +/* 801C16E8 001BE648 3C 60 80 57 */ lis r3, lbl_80572060@ha +/* 801C16EC 001BE64C C0 21 00 90 */ lfs f1, 0x90(r1) +/* 801C16F0 001BE650 38 A3 20 60 */ addi r5, r3, lbl_80572060@l +/* 801C16F4 001BE654 C0 01 00 A0 */ lfs f0, 0xa0(r1) +/* 801C16F8 001BE658 EC 5D 10 2A */ fadds f2, f29, f2 +/* 801C16FC 001BE65C C0 62 AA AC */ lfs f3, lbl_805AC7CC@sda21(r2) +/* 801C1700 001BE660 EC 3E 08 2A */ fadds f1, f30, f1 +/* 801C1704 001BE664 EC 1F 00 2A */ fadds f0, f31, f0 +/* 801C1708 001BE668 38 61 00 08 */ addi r3, r1, 8 +/* 801C170C 001BE66C EF A3 00 B2 */ fmuls f29, f3, f2 +/* 801C1710 001BE670 EF C3 00 72 */ fmuls f30, f3, f1 +/* 801C1714 001BE674 38 9F 00 34 */ addi r4, r31, 0x34 +/* 801C1718 001BE678 EF E3 00 32 */ fmuls f31, f3, f0 +/* 801C171C 001BE67C 48 15 13 65 */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 801C1720 001BE680 80 7F 00 64 */ lwz r3, 0x64(r31) +/* 801C1724 001BE684 C0 01 00 08 */ lfs f0, 8(r1) +/* 801C1728 001BE688 C0 23 00 00 */ lfs f1, 0(r3) +/* 801C172C 001BE68C C0 63 00 04 */ lfs f3, 4(r3) +/* 801C1730 001BE690 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801C1734 001BE694 C0 21 00 0C */ lfs f1, 0xc(r1) +/* 801C1738 001BE698 C0 43 00 08 */ lfs f2, 8(r3) +/* 801C173C 001BE69C EC 63 00 72 */ fmuls f3, f3, f1 +/* 801C1740 001BE6A0 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 801C1744 001BE6A4 EC 1D 00 2A */ fadds f0, f29, f0 +/* 801C1748 001BE6A8 EC 22 00 72 */ fmuls f1, f2, f1 +/* 801C174C 001BE6AC EC 5E 18 2A */ fadds f2, f30, f3 +/* 801C1750 001BE6B0 D0 1E 00 00 */ stfs f0, 0(r30) +/* 801C1754 001BE6B4 EC 1F 08 2A */ fadds f0, f31, f1 +/* 801C1758 001BE6B8 D0 5E 00 04 */ stfs f2, 4(r30) +/* 801C175C 001BE6BC D0 1E 00 08 */ stfs f0, 8(r30) +/* 801C1760 001BE6C0 E3 E1 01 08 */ psq_l f31, 264(r1), 0, qr0 +/* 801C1764 001BE6C4 CB E1 01 00 */ lfd f31, 0x100(r1) +/* 801C1768 001BE6C8 E3 C1 00 F8 */ psq_l f30, 248(r1), 0, qr0 +/* 801C176C 001BE6CC CB C1 00 F0 */ lfd f30, 0xf0(r1) +/* 801C1770 001BE6D0 E3 A1 00 E8 */ psq_l f29, 232(r1), 0, qr0 +/* 801C1774 001BE6D4 CB A1 00 E0 */ lfd f29, 0xe0(r1) +/* 801C1778 001BE6D8 83 E1 00 DC */ lwz r31, 0xdc(r1) +/* 801C177C 001BE6DC 80 01 01 14 */ lwz r0, 0x114(r1) +/* 801C1780 001BE6E0 83 C1 00 D8 */ lwz r30, 0xd8(r1) +/* 801C1784 001BE6E4 7C 08 03 A6 */ mtlr r0 +/* 801C1788 001BE6E8 38 21 01 10 */ addi r1, r1, 0x110 +/* 801C178C 001BE6EC 4E 80 00 20 */ blr + +.global sub_801c1790 +sub_801c1790: +/* 801C1790 001BE6F0 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 801C1794 001BE6F4 7C 08 02 A6 */ mflr r0 +/* 801C1798 001BE6F8 90 01 00 84 */ stw r0, 0x84(r1) +/* 801C179C 001BE6FC DB E1 00 70 */ stfd f31, 0x70(r1) +/* 801C17A0 001BE700 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 +/* 801C17A4 001BE704 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 801C17A8 001BE708 93 C1 00 68 */ stw r30, 0x68(r1) +/* 801C17AC 001BE70C 88 03 08 40 */ lbz r0, 0x840(r3) +/* 801C17B0 001BE710 7C 7F 1B 78 */ mr r31, r3 +/* 801C17B4 001BE714 7C 9E 23 78 */ mr r30, r4 +/* 801C17B8 001BE718 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801C17BC 001BE71C 41 82 00 E0 */ beq lbl_801C189C +/* 801C17C0 001BE720 C3 FF 06 44 */ lfs f31, 0x644(r31) +/* 801C17C4 001BE724 4B FF FD E5 */ bl sub_801c15a8 +/* 801C17C8 001BE728 38 E0 00 00 */ li r7, 0 +/* 801C17CC 001BE72C 88 01 00 24 */ lbz r0, 0x24(r1) +/* 801C17D0 001BE730 50 E0 3E 30 */ rlwimi r0, r7, 7, 0x18, 0x18 +/* 801C17D4 001BE734 EC 3F 00 72 */ fmuls f1, f31, f1 +/* 801C17D8 001BE738 98 01 00 24 */ stb r0, 0x24(r1) +/* 801C17DC 001BE73C 54 00 06 3E */ clrlwi r0, r0, 0x18 +/* 801C17E0 001BE740 50 E0 36 72 */ rlwimi r0, r7, 6, 0x19, 0x19 +/* 801C17E4 001BE744 C0 02 AA 98 */ lfs f0, lbl_805AC7B8@sda21(r2) +/* 801C17E8 001BE748 54 06 06 3E */ clrlwi r6, r0, 0x18 +/* 801C17EC 001BE74C 98 01 00 24 */ stb r0, 0x24(r1) +/* 801C17F0 001BE750 50 E6 2E B4 */ rlwimi r6, r7, 5, 0x1a, 0x1a +/* 801C17F4 001BE754 88 01 00 58 */ lbz r0, 0x58(r1) +/* 801C17F8 001BE758 38 60 00 01 */ li r3, 1 +/* 801C17FC 001BE75C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801C1800 001BE760 80 AD 91 28 */ lwz r5, lbl_805A7CE8@sda21(r13) +/* 801C1804 001BE764 90 E1 00 20 */ stw r7, 0x20(r1) +/* 801C1808 001BE768 38 60 00 00 */ li r3, 0 +/* 801C180C 001BE76C 38 80 00 01 */ li r4, 1 +/* 801C1810 001BE770 98 C1 00 24 */ stb r6, 0x24(r1) +/* 801C1814 001BE774 90 E1 00 40 */ stw r7, 0x40(r1) +/* 801C1818 001BE778 98 C1 00 44 */ stb r6, 0x44(r1) +/* 801C181C 001BE77C D0 21 00 48 */ stfs f1, 0x48(r1) +/* 801C1820 001BE780 D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 801C1824 001BE784 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 801C1828 001BE788 D0 01 00 54 */ stfs f0, 0x54(r1) +/* 801C182C 001BE78C 98 01 00 58 */ stb r0, 0x58(r1) +/* 801C1830 001BE790 48 1C 86 C5 */ bl __shl2i +/* 801C1834 001BE794 39 40 00 00 */ li r10, 0 +/* 801C1838 001BE798 38 00 00 03 */ li r0, 3 +/* 801C183C 001BE79C 90 81 00 2C */ stw r4, 0x2c(r1) +/* 801C1840 001BE7A0 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801C1844 001BE7A4 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 801C1848 001BE7A8 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801C184C 001BE7AC 90 61 00 28 */ stw r3, 0x28(r1) +/* 801C1850 001BE7B0 38 81 00 1C */ addi r4, r1, 0x1c +/* 801C1854 001BE7B4 7F C3 F3 78 */ mr r3, r30 +/* 801C1858 001BE7B8 38 C1 00 0C */ addi r6, r1, 0xc +/* 801C185C 001BE7BC 91 41 00 34 */ stw r10, 0x34(r1) +/* 801C1860 001BE7C0 38 E1 00 40 */ addi r7, r1, 0x40 +/* 801C1864 001BE7C4 39 01 00 28 */ addi r8, r1, 0x28 +/* 801C1868 001BE7C8 91 41 00 30 */ stw r10, 0x30(r1) +/* 801C186C 001BE7CC 90 01 00 38 */ stw r0, 0x38(r1) +/* 801C1870 001BE7D0 A0 1F 00 08 */ lhz r0, 8(r31) +/* 801C1874 001BE7D4 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801C1878 001BE7D8 81 5E 08 4C */ lwz r10, 0x84c(r30) +/* 801C187C 001BE7DC B0 01 00 08 */ sth r0, 8(r1) +/* 801C1880 001BE7E0 A1 4A 00 08 */ lhz r10, 8(r10) +/* 801C1884 001BE7E4 B1 41 00 14 */ sth r10, 0x14(r1) +/* 801C1888 001BE7E8 A0 1F 00 08 */ lhz r0, 8(r31) +/* 801C188C 001BE7EC B1 41 00 10 */ sth r10, 0x10(r1) +/* 801C1890 001BE7F0 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801C1894 001BE7F4 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 801C1898 001BE7F8 4B E8 88 09 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +lbl_801C189C: +/* 801C189C 001BE7FC E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 +/* 801C18A0 001BE800 80 01 00 84 */ lwz r0, 0x84(r1) +/* 801C18A4 001BE804 CB E1 00 70 */ lfd f31, 0x70(r1) +/* 801C18A8 001BE808 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 801C18AC 001BE80C 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 801C18B0 001BE810 7C 08 03 A6 */ mtlr r0 +/* 801C18B4 001BE814 38 21 00 80 */ addi r1, r1, 0x80 +/* 801C18B8 001BE818 4E 80 00 20 */ blr + +.global sub_801c18bc +sub_801c18bc: +/* 801C18BC 001BE81C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801C18C0 001BE820 7C 08 02 A6 */ mflr r0 +/* 801C18C4 001BE824 90 01 00 24 */ stw r0, 0x24(r1) +/* 801C18C8 001BE828 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801C18CC 001BE82C 7C BF 2B 78 */ mr r31, r5 +/* 801C18D0 001BE830 A0 03 07 90 */ lhz r0, 0x790(r3) +/* 801C18D4 001BE834 7C 83 23 78 */ mr r3, r4 +/* 801C18D8 001BE838 38 81 00 08 */ addi r4, r1, 8 +/* 801C18DC 001BE83C B0 01 00 08 */ sth r0, 8(r1) +/* 801C18E0 001BE840 4B E8 AC 95 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801C18E4 001BE844 7C 64 1B 78 */ mr r4, r3 +/* 801C18E8 001BE848 38 61 00 0C */ addi r3, r1, 0xc +/* 801C18EC 001BE84C 4B EE DA 61 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801C18F0 001BE850 80 63 00 04 */ lwz r3, 4(r3) +/* 801C18F4 001BE854 28 03 00 00 */ cmplwi r3, 0 +/* 801C18F8 001BE858 41 82 00 1C */ beq lbl_801C1914 +/* 801C18FC 001BE85C C0 1F 00 00 */ lfs f0, 0(r31) +/* 801C1900 001BE860 D0 03 03 04 */ stfs f0, 0x304(r3) +/* 801C1904 001BE864 C0 1F 00 04 */ lfs f0, 4(r31) +/* 801C1908 001BE868 D0 03 03 08 */ stfs f0, 0x308(r3) +/* 801C190C 001BE86C C0 1F 00 08 */ lfs f0, 8(r31) +/* 801C1910 001BE870 D0 03 03 0C */ stfs f0, 0x30c(r3) +lbl_801C1914: +/* 801C1914 001BE874 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801C1918 001BE878 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801C191C 001BE87C 7C 08 03 A6 */ mtlr r0 +/* 801C1920 001BE880 38 21 00 20 */ addi r1, r1, 0x20 +/* 801C1924 001BE884 4E 80 00 20 */ blr + +.global sub_801c1928 +sub_801c1928: +/* 801C1928 001BE888 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801C192C 001BE88C 7C 08 02 A6 */ mflr r0 +/* 801C1930 001BE890 90 01 00 44 */ stw r0, 0x44(r1) +/* 801C1934 001BE894 DB E1 00 30 */ stfd f31, 0x30(r1) +/* 801C1938 001BE898 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 801C193C 001BE89C 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801C1940 001BE8A0 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801C1944 001BE8A4 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801C1948 001BE8A8 88 03 04 00 */ lbz r0, 0x400(r3) +/* 801C194C 001BE8AC 7C 7D 1B 78 */ mr r29, r3 +/* 801C1950 001BE8B0 7C 9E 23 78 */ mr r30, r4 +/* 801C1954 001BE8B4 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801C1958 001BE8B8 41 82 00 F8 */ beq lbl_801C1A50 +/* 801C195C 001BE8BC A0 1D 07 90 */ lhz r0, 0x790(r29) +/* 801C1960 001BE8C0 7F C3 F3 78 */ mr r3, r30 +/* 801C1964 001BE8C4 38 81 00 08 */ addi r4, r1, 8 +/* 801C1968 001BE8C8 B0 01 00 08 */ sth r0, 8(r1) +/* 801C196C 001BE8CC 4B E8 AC 09 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801C1970 001BE8D0 7C 64 1B 78 */ mr r4, r3 +/* 801C1974 001BE8D4 38 61 00 0C */ addi r3, r1, 0xc +/* 801C1978 001BE8D8 4B EE D9 D5 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801C197C 001BE8DC 83 E3 00 04 */ lwz r31, 4(r3) +/* 801C1980 001BE8E0 28 1F 00 00 */ cmplwi r31, 0 +/* 801C1984 001BE8E4 41 82 00 5C */ beq lbl_801C19E0 +/* 801C1988 001BE8E8 7F A3 EB 78 */ mr r3, r29 +/* 801C198C 001BE8EC 81 9D 00 00 */ lwz r12, 0(r29) +/* 801C1990 001BE8F0 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 801C1994 001BE8F4 7D 89 03 A6 */ mtctr r12 +/* 801C1998 001BE8F8 4E 80 04 21 */ bctrl +/* 801C199C 001BE8FC 7C 64 1B 78 */ mr r4, r3 +/* 801C19A0 001BE900 7F E3 FB 78 */ mr r3, r31 +/* 801C19A4 001BE904 4B FE 71 F5 */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability +/* 801C19A8 001BE908 7F E3 FB 78 */ mr r3, r31 +/* 801C19AC 001BE90C 7F C4 F3 78 */ mr r4, r30 +/* 801C19B0 001BE910 81 9F 00 00 */ lwz r12, 0(r31) +/* 801C19B4 001BE914 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801C19B8 001BE918 7D 89 03 A6 */ mtctr r12 +/* 801C19BC 001BE91C 4E 80 04 21 */ bctrl +/* 801C19C0 001BE920 C3 E3 00 00 */ lfs f31, 0(r3) +/* 801C19C4 001BE924 7F A3 EB 78 */ mr r3, r29 +/* 801C19C8 001BE928 81 9D 00 00 */ lwz r12, 0(r29) +/* 801C19CC 001BE92C 7F C4 F3 78 */ mr r4, r30 +/* 801C19D0 001BE930 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801C19D4 001BE934 7D 89 03 A6 */ mtctr r12 +/* 801C19D8 001BE938 4E 80 04 21 */ bctrl +/* 801C19DC 001BE93C D3 E3 00 00 */ stfs f31, 0(r3) +lbl_801C19E0: +/* 801C19E0 001BE940 7F A3 EB 78 */ mr r3, r29 +/* 801C19E4 001BE944 7F C4 F3 78 */ mr r4, r30 +/* 801C19E8 001BE948 81 9D 00 00 */ lwz r12, 0(r29) +/* 801C19EC 001BE94C 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801C19F0 001BE950 7D 89 03 A6 */ mtctr r12 +/* 801C19F4 001BE954 4E 80 04 21 */ bctrl +/* 801C19F8 001BE958 C0 23 00 00 */ lfs f1, 0(r3) +/* 801C19FC 001BE95C C0 02 AA 98 */ lfs f0, lbl_805AC7B8@sda21(r2) +/* 801C1A00 001BE960 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C1A04 001BE964 4C 40 13 82 */ cror 2, 0, 2 +/* 801C1A08 001BE968 40 82 00 48 */ bne lbl_801C1A50 +/* 801C1A0C 001BE96C 81 9D 00 00 */ lwz r12, 0(r29) +/* 801C1A10 001BE970 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801C1A14 001BE974 38 A4 66 A0 */ addi r5, r4, skZero3f@l +/* 801C1A18 001BE978 7F A3 EB 78 */ mr r3, r29 +/* 801C1A1C 001BE97C 81 8C 00 84 */ lwz r12, 0x84(r12) +/* 801C1A20 001BE980 7F C4 F3 78 */ mr r4, r30 +/* 801C1A24 001BE984 38 C0 00 14 */ li r6, 0x14 +/* 801C1A28 001BE988 7D 89 03 A6 */ mtctr r12 +/* 801C1A2C 001BE98C 4E 80 04 21 */ bctrl +/* 801C1A30 001BE990 7F A3 EB 78 */ mr r3, r29 +/* 801C1A34 001BE994 7F C4 F3 78 */ mr r4, r30 +/* 801C1A38 001BE998 4B FF F8 35 */ bl sub_801c126c +/* 801C1A3C 001BE99C 7F A3 EB 78 */ mr r3, r29 +/* 801C1A40 001BE9A0 7F C6 F3 78 */ mr r6, r30 +/* 801C1A44 001BE9A4 38 80 00 29 */ li r4, 0x29 +/* 801C1A48 001BE9A8 38 A0 00 28 */ li r5, 0x28 +/* 801C1A4C 001BE9AC 4B E9 24 89 */ bl RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager +lbl_801C1A50: +/* 801C1A50 001BE9B0 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 801C1A54 001BE9B4 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801C1A58 001BE9B8 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 801C1A5C 001BE9BC 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801C1A60 001BE9C0 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801C1A64 001BE9C4 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801C1A68 001BE9C8 7C 08 03 A6 */ mtlr r0 +/* 801C1A6C 001BE9CC 38 21 00 40 */ addi r1, r1, 0x40 +/* 801C1A70 001BE9D0 4E 80 00 20 */ blr + +.global sub_801c1a74 +sub_801c1a74: +/* 801C1A74 001BE9D4 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801C1A78 001BE9D8 7C 08 02 A6 */ mflr r0 +/* 801C1A7C 001BE9DC 90 01 00 34 */ stw r0, 0x34(r1) +/* 801C1A80 001BE9E0 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801C1A84 001BE9E4 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801C1A88 001BE9E8 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801C1A8C 001BE9EC 7C 9D 23 78 */ mr r29, r4 +/* 801C1A90 001BE9F0 93 81 00 20 */ stw r28, 0x20(r1) +/* 801C1A94 001BE9F4 7C 7C 1B 78 */ mr r28, r3 +/* 801C1A98 001BE9F8 81 83 00 00 */ lwz r12, 0(r3) +/* 801C1A9C 001BE9FC 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801C1AA0 001BEA00 7D 89 03 A6 */ mtctr r12 +/* 801C1AA4 001BEA04 4E 80 04 21 */ bctrl +/* 801C1AA8 001BEA08 A0 1C 07 90 */ lhz r0, 0x790(r28) +/* 801C1AAC 001BEA0C 7C 7F 1B 78 */ mr r31, r3 +/* 801C1AB0 001BEA10 7F A3 EB 78 */ mr r3, r29 +/* 801C1AB4 001BEA14 38 81 00 08 */ addi r4, r1, 8 +/* 801C1AB8 001BEA18 B0 01 00 08 */ sth r0, 8(r1) +/* 801C1ABC 001BEA1C 4B E8 AA B9 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801C1AC0 001BEA20 7C 64 1B 78 */ mr r4, r3 +/* 801C1AC4 001BEA24 38 61 00 0C */ addi r3, r1, 0xc +/* 801C1AC8 001BEA28 4B EE D8 85 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801C1ACC 001BEA2C 83 C3 00 04 */ lwz r30, 4(r3) +/* 801C1AD0 001BEA30 28 1E 00 00 */ cmplwi r30, 0 +/* 801C1AD4 001BEA34 41 82 00 4C */ beq lbl_801C1B20 +/* 801C1AD8 001BEA38 7F C3 F3 78 */ mr r3, r30 +/* 801C1ADC 001BEA3C 7F A4 EB 78 */ mr r4, r29 +/* 801C1AE0 001BEA40 81 9E 00 00 */ lwz r12, 0(r30) +/* 801C1AE4 001BEA44 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801C1AE8 001BEA48 7D 89 03 A6 */ mtctr r12 +/* 801C1AEC 001BEA4C 4E 80 04 21 */ bctrl +/* 801C1AF0 001BEA50 C0 1F 00 00 */ lfs f0, 0(r31) +/* 801C1AF4 001BEA54 D0 03 00 00 */ stfs f0, 0(r3) +/* 801C1AF8 001BEA58 C0 1F 00 04 */ lfs f0, 4(r31) +/* 801C1AFC 001BEA5C D0 03 00 04 */ stfs f0, 4(r3) +/* 801C1B00 001BEA60 7F 83 E3 78 */ mr r3, r28 +/* 801C1B04 001BEA64 81 9C 00 00 */ lwz r12, 0(r28) +/* 801C1B08 001BEA68 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 801C1B0C 001BEA6C 7D 89 03 A6 */ mtctr r12 +/* 801C1B10 001BEA70 4E 80 04 21 */ bctrl +/* 801C1B14 001BEA74 7C 64 1B 78 */ mr r4, r3 +/* 801C1B18 001BEA78 7F C3 F3 78 */ mr r3, r30 +/* 801C1B1C 001BEA7C 4B FE 70 7D */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability +lbl_801C1B20: +/* 801C1B20 001BEA80 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801C1B24 001BEA84 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801C1B28 001BEA88 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801C1B2C 001BEA8C 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801C1B30 001BEA90 83 81 00 20 */ lwz r28, 0x20(r1) +/* 801C1B34 001BEA94 7C 08 03 A6 */ mtlr r0 +/* 801C1B38 001BEA98 38 21 00 30 */ addi r1, r1, 0x30 +/* 801C1B3C 001BEA9C 4E 80 00 20 */ blr + +.global sub_801c1b40 +sub_801c1b40: +/* 801C1B40 001BEAA0 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 801C1B44 001BEAA4 7C 08 02 A6 */ mflr r0 +/* 801C1B48 001BEAA8 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 801C1B4C 001BEAAC BF 21 00 C4 */ stmw r25, 0xc4(r1) +/* 801C1B50 001BEAB0 7C B9 2B 78 */ mr r25, r5 +/* 801C1B54 001BEAB4 7C DA 33 78 */ mr r26, r6 +/* 801C1B58 001BEAB8 7C 9E 23 78 */ mr r30, r4 +/* 801C1B5C 001BEABC 3B A1 00 60 */ addi r29, r1, 0x60 +/* 801C1B60 001BEAC0 3B 81 00 A4 */ addi r28, r1, 0xa4 +/* 801C1B64 001BEAC4 3B 60 00 00 */ li r27, 0 +/* 801C1B68 001BEAC8 80 63 00 64 */ lwz r3, 0x64(r3) +/* 801C1B6C 001BEACC 83 E3 00 10 */ lwz r31, 0x10(r3) +/* 801C1B70 001BEAD0 48 00 01 20 */ b lbl_801C1C90 +lbl_801C1B74: +/* 801C1B74 001BEAD4 80 9E 00 00 */ lwz r4, 0(r30) +/* 801C1B78 001BEAD8 38 61 00 24 */ addi r3, r1, 0x24 +/* 801C1B7C 001BEADC 4B E4 31 3D */ bl string_l__4rstlFPCc +/* 801C1B80 001BEAE0 7F E4 FB 78 */ mr r4, r31 +/* 801C1B84 001BEAE4 38 61 00 0C */ addi r3, r1, 0xc +/* 801C1B88 001BEAE8 38 A1 00 24 */ addi r5, r1, 0x24 +/* 801C1B8C 001BEAEC 4B E6 CC AD */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801C1B90 001BEAF0 88 01 00 0C */ lbz r0, 0xc(r1) +/* 801C1B94 001BEAF4 38 61 00 24 */ addi r3, r1, 0x24 +/* 801C1B98 001BEAF8 98 01 00 10 */ stb r0, 0x10(r1) +/* 801C1B9C 001BEAFC 48 17 BF 45 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801C1BA0 001BEB00 88 01 00 10 */ lbz r0, 0x10(r1) +/* 801C1BA4 001BEB04 28 00 00 FF */ cmplwi r0, 0xff +/* 801C1BA8 001BEB08 41 82 00 E0 */ beq lbl_801C1C88 +/* 801C1BAC 001BEB0C 80 9E 00 00 */ lwz r4, 0(r30) +/* 801C1BB0 001BEB10 38 61 00 14 */ addi r3, r1, 0x14 +/* 801C1BB4 001BEB14 4B E4 31 05 */ bl string_l__4rstlFPCc +/* 801C1BB8 001BEB18 88 01 00 10 */ lbz r0, 0x10(r1) +/* 801C1BBC 001BEB1C 38 61 00 34 */ addi r3, r1, 0x34 +/* 801C1BC0 001BEB20 C0 3E 00 04 */ lfs f1, 4(r30) +/* 801C1BC4 001BEB24 38 81 00 08 */ addi r4, r1, 8 +/* 801C1BC8 001BEB28 98 01 00 08 */ stb r0, 8(r1) +/* 801C1BCC 001BEB2C 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801C1BD0 001BEB30 C0 42 AA CC */ lfs f2, lbl_805AC7EC@sda21(r2) +/* 801C1BD4 001BEB34 4B FE 6C 39 */ bl "SphereCollision__26CJointCollisionDescriptionF6CSegIdfRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" +/* 801C1BD8 001BEB38 80 E1 00 34 */ lwz r7, 0x34(r1) +/* 801C1BDC 001BEB3C 7F 83 E3 78 */ mr r3, r28 +/* 801C1BE0 001BEB40 80 C1 00 38 */ lwz r6, 0x38(r1) +/* 801C1BE4 001BEB44 7F A4 EB 78 */ mr r4, r29 +/* 801C1BE8 001BEB48 88 A1 00 3C */ lbz r5, 0x3c(r1) +/* 801C1BEC 001BEB4C 88 01 00 3D */ lbz r0, 0x3d(r1) +/* 801C1BF0 001BEB50 C0 E1 00 40 */ lfs f7, 0x40(r1) +/* 801C1BF4 001BEB54 C0 C1 00 44 */ lfs f6, 0x44(r1) +/* 801C1BF8 001BEB58 C0 A1 00 48 */ lfs f5, 0x48(r1) +/* 801C1BFC 001BEB5C C0 81 00 4C */ lfs f4, 0x4c(r1) +/* 801C1C00 001BEB60 C0 61 00 50 */ lfs f3, 0x50(r1) +/* 801C1C04 001BEB64 C0 41 00 54 */ lfs f2, 0x54(r1) +/* 801C1C08 001BEB68 C0 21 00 58 */ lfs f1, 0x58(r1) +/* 801C1C0C 001BEB6C C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 801C1C10 001BEB70 90 E1 00 78 */ stw r7, 0x78(r1) +/* 801C1C14 001BEB74 90 C1 00 7C */ stw r6, 0x7c(r1) +/* 801C1C18 001BEB78 98 A1 00 80 */ stb r5, 0x80(r1) +/* 801C1C1C 001BEB7C 98 01 00 81 */ stb r0, 0x81(r1) +/* 801C1C20 001BEB80 D0 E1 00 84 */ stfs f7, 0x84(r1) +/* 801C1C24 001BEB84 D0 C1 00 88 */ stfs f6, 0x88(r1) +/* 801C1C28 001BEB88 D0 A1 00 8C */ stfs f5, 0x8c(r1) +/* 801C1C2C 001BEB8C D0 81 00 90 */ stfs f4, 0x90(r1) +/* 801C1C30 001BEB90 D0 61 00 94 */ stfs f3, 0x94(r1) +/* 801C1C34 001BEB94 D0 41 00 98 */ stfs f2, 0x98(r1) +/* 801C1C38 001BEB98 D0 21 00 9C */ stfs f1, 0x9c(r1) +/* 801C1C3C 001BEB9C D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 801C1C40 001BEBA0 48 17 C5 21 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801C1C44 001BEBA4 A0 01 00 70 */ lhz r0, 0x70(r1) +/* 801C1C48 001BEBA8 28 1D 00 00 */ cmplwi r29, 0 +/* 801C1C4C 001BEBAC C0 01 00 74 */ lfs f0, 0x74(r1) +/* 801C1C50 001BEBB0 B0 01 00 B4 */ sth r0, 0xb4(r1) +/* 801C1C54 001BEBB4 D0 01 00 B8 */ stfs f0, 0xb8(r1) +/* 801C1C58 001BEBB8 41 82 00 0C */ beq lbl_801C1C64 +/* 801C1C5C 001BEBBC 7F A3 EB 78 */ mr r3, r29 +/* 801C1C60 001BEBC0 48 17 BE 81 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801C1C64: +/* 801C1C64 001BEBC4 38 61 00 14 */ addi r3, r1, 0x14 +/* 801C1C68 001BEBC8 48 17 BE 79 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801C1C6C 001BEBCC 7F 43 D3 78 */ mr r3, r26 +/* 801C1C70 001BEBD0 38 81 00 78 */ addi r4, r1, 0x78 +/* 801C1C74 001BEBD4 4B F9 45 BD */ bl sub_80156230 +/* 801C1C78 001BEBD8 28 1C 00 00 */ cmplwi r28, 0 +/* 801C1C7C 001BEBDC 41 82 00 0C */ beq lbl_801C1C88 +/* 801C1C80 001BEBE0 7F 83 E3 78 */ mr r3, r28 +/* 801C1C84 001BEBE4 48 17 BE 5D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801C1C88: +/* 801C1C88 001BEBE8 3B DE 00 08 */ addi r30, r30, 8 +/* 801C1C8C 001BEBEC 3B 7B 00 01 */ addi r27, r27, 1 +lbl_801C1C90: +/* 801C1C90 001BEBF0 7C 1B C8 00 */ cmpw r27, r25 +/* 801C1C94 001BEBF4 41 80 FE E0 */ blt lbl_801C1B74 +/* 801C1C98 001BEBF8 BB 21 00 C4 */ lmw r25, 0xc4(r1) +/* 801C1C9C 001BEBFC 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 801C1CA0 001BEC00 7C 08 03 A6 */ mtlr r0 +/* 801C1CA4 001BEC04 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 801C1CA8 001BEC08 4E 80 00 20 */ blr + +.global sub_801c1cac +sub_801c1cac: +/* 801C1CAC 001BEC0C 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 801C1CB0 001BEC10 7C 08 02 A6 */ mflr r0 +/* 801C1CB4 001BEC14 90 01 00 84 */ stw r0, 0x84(r1) +/* 801C1CB8 001BEC18 38 00 00 00 */ li r0, 0 +/* 801C1CBC 001BEC1C BF 41 00 68 */ stmw r26, 0x68(r1) +/* 801C1CC0 001BEC20 7C 7E 1B 78 */ mr r30, r3 +/* 801C1CC4 001BEC24 7C 9F 23 78 */ mr r31, r4 +/* 801C1CC8 001BEC28 38 61 00 40 */ addi r3, r1, 0x40 +/* 801C1CCC 001BEC2C 38 80 00 01 */ li r4, 1 +/* 801C1CD0 001BEC30 90 01 00 44 */ stw r0, 0x44(r1) +/* 801C1CD4 001BEC34 90 01 00 48 */ stw r0, 0x48(r1) +/* 801C1CD8 001BEC38 90 01 00 4C */ stw r0, 0x4c(r1) +/* 801C1CDC 001BEC3C 4B F9 4A DD */ bl "reserve__Q24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>Fi" +/* 801C1CE0 001BEC40 7F C3 F3 78 */ mr r3, r30 +/* 801C1CE4 001BEC44 38 C1 00 40 */ addi r6, r1, 0x40 +/* 801C1CE8 001BEC48 38 82 AA 84 */ addi r4, r2, lbl_805AC7A4@sda21 +/* 801C1CEC 001BEC4C 38 A0 00 01 */ li r5, 1 +/* 801C1CF0 001BEC50 4B FF FE 51 */ bl sub_801c1b40 +/* 801C1CF4 001BEC54 3C 80 80 3D */ lis r4, lbl_803D1A80@ha +/* 801C1CF8 001BEC58 38 60 00 18 */ li r3, 0x18 +/* 801C1CFC 001BEC5C 38 84 1A 80 */ addi r4, r4, lbl_803D1A80@l +/* 801C1D00 001BEC60 38 A0 00 00 */ li r5, 0 +/* 801C1D04 001BEC64 38 84 00 19 */ addi r4, r4, 0x19 +/* 801C1D08 001BEC68 48 15 3B 65 */ bl __nw__FUlPCcPCc +/* 801C1D0C 001BEC6C 7C 7D 1B 79 */ or. r29, r3, r3 +/* 801C1D10 001BEC70 41 82 00 38 */ beq lbl_801C1D48 +/* 801C1D14 001BEC74 81 3E 00 04 */ lwz r9, 4(r30) +/* 801C1D18 001BEC78 7F E4 FB 78 */ mr r4, r31 +/* 801C1D1C 001BEC7C 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801C1D20 001BEC80 38 C1 00 1C */ addi r6, r1, 0x1c +/* 801C1D24 001BEC84 91 21 00 1C */ stw r9, 0x1c(r1) +/* 801C1D28 001BEC88 38 E1 00 40 */ addi r7, r1, 0x40 +/* 801C1D2C 001BEC8C 39 00 00 00 */ li r8, 0 +/* 801C1D30 001BEC90 A0 1E 00 08 */ lhz r0, 8(r30) +/* 801C1D34 001BEC94 91 21 00 18 */ stw r9, 0x18(r1) +/* 801C1D38 001BEC98 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801C1D3C 001BEC9C B0 01 00 10 */ sth r0, 0x10(r1) +/* 801C1D40 001BECA0 4B FE 5B F1 */ bl "__ct__22CCollisionActorManagerFR13CStateManager9TUniqueId7TAreaIdRCQ24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>b" +/* 801C1D44 001BECA4 7C 7D 1B 78 */ mr r29, r3 +lbl_801C1D48: +/* 801C1D48 001BECA8 80 7E 07 64 */ lwz r3, 0x764(r30) +/* 801C1D4C 001BECAC 38 80 00 01 */ li r4, 1 +/* 801C1D50 001BECB0 4B FE 5B 8D */ bl sub_801a78dc +/* 801C1D54 001BECB4 93 BE 07 64 */ stw r29, 0x764(r30) +/* 801C1D58 001BECB8 7F E4 FB 78 */ mr r4, r31 +/* 801C1D5C 001BECBC 88 1E 00 30 */ lbz r0, 0x30(r30) +/* 801C1D60 001BECC0 80 7E 07 64 */ lwz r3, 0x764(r30) +/* 801C1D64 001BECC4 54 05 CF FE */ rlwinm r5, r0, 0x19, 0x1f, 0x1f +/* 801C1D68 001BECC8 4B FE 55 91 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb +/* 801C1D6C 001BECCC 3B 40 00 00 */ li r26, 0 +/* 801C1D70 001BECD0 48 00 00 7C */ b lbl_801C1DEC +lbl_801C1D74: +/* 801C1D74 001BECD4 80 7E 07 64 */ lwz r3, 0x764(r30) +/* 801C1D78 001BECD8 7F 44 D3 78 */ mr r4, r26 +/* 801C1D7C 001BECDC 4B FE 54 BD */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 801C1D80 001BECE0 7C 7D 1B 78 */ mr r29, r3 +/* 801C1D84 001BECE4 7F E3 FB 78 */ mr r3, r31 +/* 801C1D88 001BECE8 A0 1D 00 3C */ lhz r0, 0x3c(r29) +/* 801C1D8C 001BECEC 38 81 00 08 */ addi r4, r1, 8 +/* 801C1D90 001BECF0 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801C1D94 001BECF4 B0 01 00 08 */ sth r0, 8(r1) +/* 801C1D98 001BECF8 4B E8 A7 DD */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801C1D9C 001BECFC 7C 64 1B 78 */ mr r4, r3 +/* 801C1DA0 001BED00 38 61 00 28 */ addi r3, r1, 0x28 +/* 801C1DA4 001BED04 4B EE D5 A9 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801C1DA8 001BED08 80 03 00 04 */ lwz r0, 4(r3) +/* 801C1DAC 001BED0C 28 00 00 00 */ cmplwi r0, 0 +/* 801C1DB0 001BED10 41 82 00 38 */ beq lbl_801C1DE8 +/* 801C1DB4 001BED14 80 82 AA 94 */ lwz r4, lbl_805AC7B4@sda21(r2) +/* 801C1DB8 001BED18 38 61 00 30 */ addi r3, r1, 0x30 +/* 801C1DBC 001BED1C 4B E4 2E FD */ bl string_l__4rstlFPCc +/* 801C1DC0 001BED20 38 7D 00 2C */ addi r3, r29, 0x2c +/* 801C1DC4 001BED24 38 81 00 30 */ addi r4, r1, 0x30 +/* 801C1DC8 001BED28 4B E9 08 19 */ 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" +/* 801C1DCC 001BED2C 7C 7D 1B 78 */ mr r29, r3 +/* 801C1DD0 001BED30 38 61 00 30 */ addi r3, r1, 0x30 +/* 801C1DD4 001BED34 48 17 BD 0D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801C1DD8 001BED38 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 801C1DDC 001BED3C 41 82 00 0C */ beq lbl_801C1DE8 +/* 801C1DE0 001BED40 A0 01 00 14 */ lhz r0, 0x14(r1) +/* 801C1DE4 001BED44 B0 1E 07 90 */ sth r0, 0x790(r30) +lbl_801C1DE8: +/* 801C1DE8 001BED48 3B 5A 00 01 */ addi r26, r26, 1 +lbl_801C1DEC: +/* 801C1DEC 001BED4C 80 7E 07 64 */ lwz r3, 0x764(r30) +/* 801C1DF0 001BED50 4B FE 54 59 */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 801C1DF4 001BED54 7C 1A 18 40 */ cmplw r26, r3 +/* 801C1DF8 001BED58 41 80 FF 7C */ blt lbl_801C1D74 +/* 801C1DFC 001BED5C 7F C3 F3 78 */ mr r3, r30 +/* 801C1E00 001BED60 7F E4 FB 78 */ mr r4, r31 +/* 801C1E04 001BED64 4B FF FC 71 */ bl sub_801c1a74 +/* 801C1E08 001BED68 80 AD 91 58 */ lwz r5, lbl_805A7D18@sda21(r13) +/* 801C1E0C 001BED6C 38 60 00 00 */ li r3, 0 +/* 801C1E10 001BED70 38 80 00 01 */ li r4, 1 +/* 801C1E14 001BED74 48 1C 80 E1 */ bl __shl2i +/* 801C1E18 001BED78 80 AD 91 5C */ lwz r5, lbl_805A7D1C@sda21(r13) +/* 801C1E1C 001BED7C 7C 9C 23 78 */ mr r28, r4 +/* 801C1E20 001BED80 7C 7D 1B 78 */ mr r29, r3 +/* 801C1E24 001BED84 38 60 00 00 */ li r3, 0 +/* 801C1E28 001BED88 38 80 00 01 */ li r4, 1 +/* 801C1E2C 001BED8C 48 1C 80 C9 */ bl __shl2i +/* 801C1E30 001BED90 80 AD 91 60 */ lwz r5, lbl_805A7D20@sda21(r13) +/* 801C1E34 001BED94 7F 9C 23 78 */ or r28, r28, r4 +/* 801C1E38 001BED98 7F BD 1B 78 */ or r29, r29, r3 +/* 801C1E3C 001BED9C 38 60 00 00 */ li r3, 0 +/* 801C1E40 001BEDA0 38 80 00 01 */ li r4, 1 +/* 801C1E44 001BEDA4 48 1C 80 B1 */ bl __shl2i +/* 801C1E48 001BEDA8 80 AD 91 48 */ lwz r5, lbl_805A7D08@sda21(r13) +/* 801C1E4C 001BEDAC 7F 9C 23 78 */ or r28, r28, r4 +/* 801C1E50 001BEDB0 7F BD 1B 78 */ or r29, r29, r3 +/* 801C1E54 001BEDB4 38 60 00 00 */ li r3, 0 +/* 801C1E58 001BEDB8 38 80 00 01 */ li r4, 1 +/* 801C1E5C 001BEDBC 48 1C 80 99 */ bl __shl2i +/* 801C1E60 001BEDC0 80 AD 91 4C */ lwz r5, lbl_805A7D0C@sda21(r13) +/* 801C1E64 001BEDC4 7C 9A 23 78 */ mr r26, r4 +/* 801C1E68 001BEDC8 7C 7B 1B 78 */ mr r27, r3 +/* 801C1E6C 001BEDCC 38 60 00 00 */ li r3, 0 +/* 801C1E70 001BEDD0 38 80 00 01 */ li r4, 1 +/* 801C1E74 001BEDD4 48 1C 80 81 */ bl __shl2i +/* 801C1E78 001BEDD8 80 AD 91 50 */ lwz r5, lbl_805A7D10@sda21(r13) +/* 801C1E7C 001BEDDC 7F 5A 23 78 */ or r26, r26, r4 +/* 801C1E80 001BEDE0 7F 7B 1B 78 */ or r27, r27, r3 +/* 801C1E84 001BEDE4 38 60 00 00 */ li r3, 0 +/* 801C1E88 001BEDE8 38 80 00 01 */ li r4, 1 +/* 801C1E8C 001BEDEC 48 1C 80 69 */ bl __shl2i +/* 801C1E90 001BEDF0 80 AD 91 54 */ lwz r5, lbl_805A7D14@sda21(r13) +/* 801C1E94 001BEDF4 7F 5A 23 78 */ or r26, r26, r4 +/* 801C1E98 001BEDF8 7F 7B 1B 78 */ or r27, r27, r3 +/* 801C1E9C 001BEDFC 38 60 00 00 */ li r3, 0 +/* 801C1EA0 001BEE00 38 80 00 01 */ li r4, 1 +/* 801C1EA4 001BEE04 48 1C 80 51 */ bl __shl2i +/* 801C1EA8 001BEE08 7F 5A 23 78 */ or r26, r26, r4 +/* 801C1EAC 001BEE0C 7F 7B 1B 78 */ or r27, r27, r3 +/* 801C1EB0 001BEE10 38 00 00 03 */ li r0, 3 +/* 801C1EB4 001BEE14 93 41 00 54 */ stw r26, 0x54(r1) +/* 801C1EB8 001BEE18 7F C3 F3 78 */ mr r3, r30 +/* 801C1EBC 001BEE1C 38 81 00 50 */ addi r4, r1, 0x50 +/* 801C1EC0 001BEE20 93 61 00 50 */ stw r27, 0x50(r1) +/* 801C1EC4 001BEE24 93 81 00 5C */ stw r28, 0x5c(r1) +/* 801C1EC8 001BEE28 93 A1 00 58 */ stw r29, 0x58(r1) +/* 801C1ECC 001BEE2C 90 01 00 60 */ stw r0, 0x60(r1) +/* 801C1ED0 001BEE30 4B E9 19 D1 */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter +/* 801C1ED4 001BEE34 7F C3 F3 78 */ mr r3, r30 +/* 801C1ED8 001BEE38 7F E5 FB 78 */ mr r5, r31 +/* 801C1EDC 001BEE3C 38 80 00 12 */ li r4, 0x12 +/* 801C1EE0 001BEE40 4B E9 24 71 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801C1EE4 001BEE44 38 00 00 00 */ li r0, 0 +/* 801C1EE8 001BEE48 80 AD 91 64 */ lwz r5, lbl_805A7D24@sda21(r13) +/* 801C1EEC 001BEE4C 90 01 00 24 */ stw r0, 0x24(r1) +/* 801C1EF0 001BEE50 38 60 00 00 */ li r3, 0 +/* 801C1EF4 001BEE54 38 80 00 01 */ li r4, 1 +/* 801C1EF8 001BEE58 90 01 00 20 */ stw r0, 0x20(r1) +/* 801C1EFC 001BEE5C 48 1C 7F F9 */ bl __shl2i +/* 801C1F00 001BEE60 80 01 00 20 */ lwz r0, 0x20(r1) +/* 801C1F04 001BEE64 80 C1 00 24 */ lwz r6, 0x24(r1) +/* 801C1F08 001BEE68 7C 00 1B 78 */ or r0, r0, r3 +/* 801C1F0C 001BEE6C 80 AD 91 68 */ lwz r5, lbl_805A7D28@sda21(r13) +/* 801C1F10 001BEE70 7C C4 23 78 */ or r4, r6, r4 +/* 801C1F14 001BEE74 90 01 00 20 */ stw r0, 0x20(r1) +/* 801C1F18 001BEE78 38 60 00 00 */ li r3, 0 +/* 801C1F1C 001BEE7C 90 81 00 24 */ stw r4, 0x24(r1) +/* 801C1F20 001BEE80 38 80 00 01 */ li r4, 1 +/* 801C1F24 001BEE84 48 1C 7F D1 */ bl __shl2i +/* 801C1F28 001BEE88 80 01 00 20 */ lwz r0, 0x20(r1) +/* 801C1F2C 001BEE8C 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801C1F30 001BEE90 80 C1 00 24 */ lwz r6, 0x24(r1) +/* 801C1F34 001BEE94 7C 00 1B 78 */ or r0, r0, r3 +/* 801C1F38 001BEE98 7C C3 23 78 */ or r3, r6, r4 +/* 801C1F3C 001BEE9C 90 01 00 20 */ stw r0, 0x20(r1) +/* 801C1F40 001BEEA0 7F E4 FB 78 */ mr r4, r31 +/* 801C1F44 001BEEA4 90 61 00 24 */ stw r3, 0x24(r1) +/* 801C1F48 001BEEA8 80 7E 07 64 */ lwz r3, 0x764(r30) +/* 801C1F4C 001BEEAC 4B FE 53 05 */ bl AddMaterial__22CCollisionActorManagerFR13CStateManagerRC13CMaterialList +/* 801C1F50 001BEEB0 38 61 00 40 */ addi r3, r1, 0x40 +/* 801C1F54 001BEEB4 38 80 FF FF */ li r4, -1 +/* 801C1F58 001BEEB8 4B F9 43 D5 */ bl sub_8015632c +/* 801C1F5C 001BEEBC BB 41 00 68 */ lmw r26, 0x68(r1) +/* 801C1F60 001BEEC0 80 01 00 84 */ lwz r0, 0x84(r1) +/* 801C1F64 001BEEC4 7C 08 03 A6 */ mtlr r0 +/* 801C1F68 001BEEC8 38 21 00 80 */ addi r1, r1, 0x80 +/* 801C1F6C 001BEECC 4E 80 00 20 */ blr + +.global sub_801c1f70 +sub_801c1f70: +/* 801C1F70 001BEED0 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 801C1F74 001BEED4 7C 08 02 A6 */ mflr r0 +/* 801C1F78 001BEED8 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 801C1F7C 001BEEDC DB E1 00 90 */ stfd f31, 0x90(r1) +/* 801C1F80 001BEEE0 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 +/* 801C1F84 001BEEE4 93 E1 00 8C */ stw r31, 0x8c(r1) +/* 801C1F88 001BEEE8 93 C1 00 88 */ stw r30, 0x88(r1) +/* 801C1F8C 001BEEEC 93 A1 00 84 */ stw r29, 0x84(r1) +/* 801C1F90 001BEEF0 7C 7D 1B 78 */ mr r29, r3 +/* 801C1F94 001BEEF4 7C 9F 23 78 */ mr r31, r4 +/* 801C1F98 001BEEF8 80 63 08 28 */ lwz r3, 0x828(r3) +/* 801C1F9C 001BEEFC FF E0 08 90 */ fmr f31, f1 +/* 801C1FA0 001BEF00 7C BE 2B 78 */ mr r30, r5 +/* 801C1FA4 001BEF04 38 80 00 00 */ li r4, 0 +/* 801C1FA8 001BEF08 81 83 00 00 */ lwz r12, 0(r3) +/* 801C1FAC 001BEF0C 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801C1FB0 001BEF10 7D 89 03 A6 */ mtctr r12 +/* 801C1FB4 001BEF14 4E 80 04 21 */ bctrl +/* 801C1FB8 001BEF18 80 7D 08 2C */ lwz r3, 0x82c(r29) +/* 801C1FBC 001BEF1C 38 80 00 00 */ li r4, 0 +/* 801C1FC0 001BEF20 81 83 00 00 */ lwz r12, 0(r3) +/* 801C1FC4 001BEF24 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801C1FC8 001BEF28 7D 89 03 A6 */ mtctr r12 +/* 801C1FCC 001BEF2C 4E 80 04 21 */ bctrl +/* 801C1FD0 001BEF30 83 FF 08 4C */ lwz r31, 0x84c(r31) +/* 801C1FD4 001BEF34 80 1F 02 F8 */ lwz r0, 0x2f8(r31) +/* 801C1FD8 001BEF38 2C 00 00 01 */ cmpwi r0, 1 +/* 801C1FDC 001BEF3C 41 82 00 14 */ beq lbl_801C1FF0 +/* 801C1FE0 001BEF40 40 80 01 80 */ bge lbl_801C2160 +/* 801C1FE4 001BEF44 2C 00 00 00 */ cmpwi r0, 0 +/* 801C1FE8 001BEF48 40 80 00 A0 */ bge lbl_801C2088 +/* 801C1FEC 001BEF4C 48 00 01 74 */ b lbl_801C2160 +lbl_801C1FF0: +/* 801C1FF0 001BEF50 80 7D 08 28 */ lwz r3, 0x828(r29) +/* 801C1FF4 001BEF54 38 80 00 01 */ li r4, 1 +/* 801C1FF8 001BEF58 81 83 00 00 */ lwz r12, 0(r3) +/* 801C1FFC 001BEF5C 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801C2000 001BEF60 7D 89 03 A6 */ mtctr r12 +/* 801C2004 001BEF64 4E 80 04 21 */ bctrl +/* 801C2008 001BEF68 80 7F 07 68 */ lwz r3, 0x768(r31) +/* 801C200C 001BEF6C 4B F3 6D F9 */ bl GetBallRadius__10CMorphBallCFv +/* 801C2010 001BEF70 C0 1E 00 08 */ lfs f0, 8(r30) +/* 801C2014 001BEF74 38 81 00 38 */ addi r4, r1, 0x38 +/* 801C2018 001BEF78 C0 7E 00 04 */ lfs f3, 4(r30) +/* 801C201C 001BEF7C C0 42 AA 98 */ lfs f2, lbl_805AC7B8@sda21(r2) +/* 801C2020 001BEF80 EC 20 08 28 */ fsubs f1, f0, f1 +/* 801C2024 001BEF84 C0 1E 00 00 */ lfs f0, 0(r30) +/* 801C2028 001BEF88 EC 63 10 28 */ fsubs f3, f3, f2 +/* 801C202C 001BEF8C EC 00 10 28 */ fsubs f0, f0, f2 +/* 801C2030 001BEF90 D0 21 00 40 */ stfs f1, 0x40(r1) +/* 801C2034 001BEF94 D0 61 00 3C */ stfs f3, 0x3c(r1) +/* 801C2038 001BEF98 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 801C203C 001BEF9C 80 7D 08 28 */ lwz r3, 0x828(r29) +/* 801C2040 001BEFA0 81 83 00 00 */ lwz r12, 0(r3) +/* 801C2044 001BEFA4 81 8C 00 20 */ lwz r12, 0x20(r12) +/* 801C2048 001BEFA8 7D 89 03 A6 */ mtctr r12 +/* 801C204C 001BEFAC 4E 80 04 21 */ bctrl +/* 801C2050 001BEFB0 80 7F 00 64 */ lwz r3, 0x64(r31) +/* 801C2054 001BEFB4 38 81 00 20 */ addi r4, r1, 0x20 +/* 801C2058 001BEFB8 C0 03 00 00 */ lfs f0, 0(r3) +/* 801C205C 001BEFBC D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801C2060 001BEFC0 C0 03 00 04 */ lfs f0, 4(r3) +/* 801C2064 001BEFC4 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801C2068 001BEFC8 C0 03 00 08 */ lfs f0, 8(r3) +/* 801C206C 001BEFCC D0 01 00 28 */ stfs f0, 0x28(r1) +/* 801C2070 001BEFD0 80 7D 08 28 */ lwz r3, 0x828(r29) +/* 801C2074 001BEFD4 81 83 00 00 */ lwz r12, 0(r3) +/* 801C2078 001BEFD8 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 801C207C 001BEFDC 7D 89 03 A6 */ mtctr r12 +/* 801C2080 001BEFE0 4E 80 04 21 */ bctrl +/* 801C2084 001BEFE4 48 00 00 DC */ b lbl_801C2160 +lbl_801C2088: +/* 801C2088 001BEFE8 80 7D 08 2C */ lwz r3, 0x82c(r29) +/* 801C208C 001BEFEC 38 80 00 01 */ li r4, 1 +/* 801C2090 001BEFF0 81 83 00 00 */ lwz r12, 0(r3) +/* 801C2094 001BEFF4 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801C2098 001BEFF8 7D 89 03 A6 */ mtctr r12 +/* 801C209C 001BEFFC 4E 80 04 21 */ bctrl +/* 801C20A0 001BF000 80 9F 04 90 */ lwz r4, 0x490(r31) +/* 801C20A4 001BF004 38 61 00 44 */ addi r3, r1, 0x44 +/* 801C20A8 001BF008 C0 A2 AA D0 */ lfs f5, lbl_805AC7F0@sda21(r2) +/* 801C20AC 001BF00C 38 84 03 E8 */ addi r4, r4, 0x3e8 +/* 801C20B0 001BF010 C0 44 00 14 */ lfs f2, 0x14(r4) +/* 801C20B4 001BF014 C0 04 00 04 */ lfs f0, 4(r4) +/* 801C20B8 001BF018 C0 24 00 24 */ lfs f1, 0x24(r4) +/* 801C20BC 001BF01C EC 85 00 B2 */ fmuls f4, f5, f2 +/* 801C20C0 001BF020 C0 C4 00 1C */ lfs f6, 0x1c(r4) +/* 801C20C4 001BF024 EC 05 00 32 */ fmuls f0, f5, f0 +/* 801C20C8 001BF028 EC 45 00 72 */ fmuls f2, f5, f1 +/* 801C20CC 001BF02C C0 64 00 2C */ lfs f3, 0x2c(r4) +/* 801C20D0 001BF030 C0 24 00 0C */ lfs f1, 0xc(r4) +/* 801C20D4 001BF034 EC 86 20 2A */ fadds f4, f6, f4 +/* 801C20D8 001BF038 EC 43 10 2A */ fadds f2, f3, f2 +/* 801C20DC 001BF03C EC 01 00 2A */ fadds f0, f1, f0 +/* 801C20E0 001BF040 D0 81 00 30 */ stfs f4, 0x30(r1) +/* 801C20E4 001BF044 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801C20E8 001BF048 D0 41 00 34 */ stfs f2, 0x34(r1) +/* 801C20EC 001BF04C 83 FD 08 2C */ lwz r31, 0x82c(r29) +/* 801C20F0 001BF050 48 15 0B 51 */ bl GetRotation__12CTransform4fCFv +/* 801C20F4 001BF054 7F E3 FB 78 */ mr r3, r31 +/* 801C20F8 001BF058 38 81 00 44 */ addi r4, r1, 0x44 +/* 801C20FC 001BF05C 81 9F 00 00 */ lwz r12, 0(r31) +/* 801C2100 001BF060 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 801C2104 001BF064 7D 89 03 A6 */ mtctr r12 +/* 801C2108 001BF068 4E 80 04 21 */ bctrl +/* 801C210C 001BF06C 80 7D 08 2C */ lwz r3, 0x82c(r29) +/* 801C2110 001BF070 38 81 00 2C */ addi r4, r1, 0x2c +/* 801C2114 001BF074 81 83 00 00 */ lwz r12, 0(r3) +/* 801C2118 001BF078 81 8C 00 20 */ lwz r12, 0x20(r12) +/* 801C211C 001BF07C 7D 89 03 A6 */ mtctr r12 +/* 801C2120 001BF080 4E 80 04 21 */ bctrl +/* 801C2124 001BF084 C0 02 AA A4 */ lfs f0, lbl_805AC7C4@sda21(r2) +/* 801C2128 001BF088 38 81 00 14 */ addi r4, r1, 0x14 +/* 801C212C 001BF08C C0 22 84 4C */ lfs f1, lbl_805AA16C@sda21(r2) +/* 801C2130 001BF090 D0 01 00 08 */ stfs f0, 8(r1) +/* 801C2134 001BF094 EC 21 00 32 */ fmuls f1, f1, f0 +/* 801C2138 001BF098 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801C213C 001BF09C D0 21 00 14 */ stfs f1, 0x14(r1) +/* 801C2140 001BF0A0 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801C2144 001BF0A4 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 801C2148 001BF0A8 80 7D 08 2C */ lwz r3, 0x82c(r29) +/* 801C214C 001BF0AC D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801C2150 001BF0B0 81 83 00 00 */ lwz r12, 0(r3) +/* 801C2154 001BF0B4 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 801C2158 001BF0B8 7D 89 03 A6 */ mtctr r12 +/* 801C215C 001BF0BC 4E 80 04 21 */ bctrl +lbl_801C2160: +/* 801C2160 001BF0C0 80 7D 08 28 */ lwz r3, 0x828(r29) +/* 801C2164 001BF0C4 FC 20 F8 90 */ fmr f1, f31 +/* 801C2168 001BF0C8 81 83 00 00 */ lwz r12, 0(r3) +/* 801C216C 001BF0CC 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801C2170 001BF0D0 7D 89 03 A6 */ mtctr r12 +/* 801C2174 001BF0D4 4E 80 04 21 */ bctrl +/* 801C2178 001BF0D8 80 7D 08 2C */ lwz r3, 0x82c(r29) +/* 801C217C 001BF0DC FC 20 F8 90 */ fmr f1, f31 +/* 801C2180 001BF0E0 81 83 00 00 */ lwz r12, 0(r3) +/* 801C2184 001BF0E4 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801C2188 001BF0E8 7D 89 03 A6 */ mtctr r12 +/* 801C218C 001BF0EC 4E 80 04 21 */ bctrl +/* 801C2190 001BF0F0 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 +/* 801C2194 001BF0F4 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 801C2198 001BF0F8 CB E1 00 90 */ lfd f31, 0x90(r1) +/* 801C219C 001BF0FC 83 E1 00 8C */ lwz r31, 0x8c(r1) +/* 801C21A0 001BF100 83 C1 00 88 */ lwz r30, 0x88(r1) +/* 801C21A4 001BF104 83 A1 00 84 */ lwz r29, 0x84(r1) +/* 801C21A8 001BF108 7C 08 03 A6 */ mtlr r0 +/* 801C21AC 001BF10C 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 801C21B0 001BF110 4E 80 00 20 */ blr + +.global sub_801c21b4 +sub_801c21b4: +/* 801C21B4 001BF114 94 21 FE 20 */ stwu r1, -0x1e0(r1) +/* 801C21B8 001BF118 7C 08 02 A6 */ mflr r0 +/* 801C21BC 001BF11C 90 01 01 E4 */ stw r0, 0x1e4(r1) +/* 801C21C0 001BF120 DB E1 01 D0 */ stfd f31, 0x1d0(r1) +/* 801C21C4 001BF124 F3 E1 01 D8 */ psq_st f31, 472(r1), 0, qr0 +/* 801C21C8 001BF128 DB C1 01 C0 */ stfd f30, 0x1c0(r1) +/* 801C21CC 001BF12C F3 C1 01 C8 */ psq_st f30, 456(r1), 0, qr0 +/* 801C21D0 001BF130 DB A1 01 B0 */ stfd f29, 0x1b0(r1) +/* 801C21D4 001BF134 F3 A1 01 B8 */ psq_st f29, 440(r1), 0, qr0 +/* 801C21D8 001BF138 DB 81 01 A0 */ stfd f28, 0x1a0(r1) +/* 801C21DC 001BF13C F3 81 01 A8 */ psq_st f28, 424(r1), 0, qr0 +/* 801C21E0 001BF140 DB 61 01 90 */ stfd f27, 0x190(r1) +/* 801C21E4 001BF144 F3 61 01 98 */ psq_st f27, 408(r1), 0, qr0 +/* 801C21E8 001BF148 DB 41 01 80 */ stfd f26, 0x180(r1) +/* 801C21EC 001BF14C F3 41 01 88 */ psq_st f26, 392(r1), 0, qr0 +/* 801C21F0 001BF150 DB 21 01 70 */ stfd f25, 0x170(r1) +/* 801C21F4 001BF154 F3 21 01 78 */ psq_st f25, 376(r1), 0, qr0 +/* 801C21F8 001BF158 DB 01 01 60 */ stfd f24, 0x160(r1) +/* 801C21FC 001BF15C F3 01 01 68 */ psq_st f24, 360(r1), 0, qr0 +/* 801C2200 001BF160 DA E1 01 50 */ stfd f23, 0x150(r1) +/* 801C2204 001BF164 F2 E1 01 58 */ psq_st f23, 344(r1), 0, qr0 +/* 801C2208 001BF168 DA C1 01 40 */ stfd f22, 0x140(r1) +/* 801C220C 001BF16C F2 C1 01 48 */ psq_st f22, 328(r1), 0, qr0 +/* 801C2210 001BF170 DA A1 01 30 */ stfd f21, 0x130(r1) +/* 801C2214 001BF174 F2 A1 01 38 */ psq_st f21, 312(r1), 0, qr0 +/* 801C2218 001BF178 DA 81 01 20 */ stfd f20, 0x120(r1) +/* 801C221C 001BF17C F2 81 01 28 */ psq_st f20, 296(r1), 0, qr0 +/* 801C2220 001BF180 DA 61 01 10 */ stfd f19, 0x110(r1) +/* 801C2224 001BF184 F2 61 01 18 */ psq_st f19, 280(r1), 0, qr0 +/* 801C2228 001BF188 BE E1 00 EC */ stmw r23, 0xec(r1) +/* 801C222C 001BF18C FE C0 08 90 */ fmr f22, f1 +/* 801C2230 001BF190 7C 78 1B 78 */ mr r24, r3 +/* 801C2234 001BF194 7C 99 23 78 */ mr r25, r4 +/* 801C2238 001BF198 48 00 2A 79 */ bl sub_801c4cb0 +/* 801C223C 001BF19C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C2240 001BF1A0 41 82 03 DC */ beq lbl_801C261C +/* 801C2244 001BF1A4 83 D8 08 24 */ lwz r30, 0x824(r24) +/* 801C2248 001BF1A8 7F 04 C3 78 */ mr r4, r24 +/* 801C224C 001BF1AC 7F 25 CB 78 */ mr r5, r25 +/* 801C2250 001BF1B0 38 61 00 38 */ addi r3, r1, 0x38 +/* 801C2254 001BF1B4 83 BE 01 60 */ lwz r29, 0x160(r30) +/* 801C2258 001BF1B8 4B FF F3 81 */ bl sub_801c15d8 +/* 801C225C 001BF1BC C0 41 00 38 */ lfs f2, 0x38(r1) +/* 801C2260 001BF1C0 7F 04 C3 78 */ mr r4, r24 +/* 801C2264 001BF1C4 C0 21 00 3C */ lfs f1, 0x3c(r1) +/* 801C2268 001BF1C8 38 61 00 2C */ addi r3, r1, 0x2c +/* 801C226C 001BF1CC C0 01 00 40 */ lfs f0, 0x40(r1) +/* 801C2270 001BF1D0 D0 41 00 5C */ stfs f2, 0x5c(r1) +/* 801C2274 001BF1D4 D0 21 00 60 */ stfs f1, 0x60(r1) +/* 801C2278 001BF1D8 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 801C227C 001BF1DC 4B FF F3 F5 */ bl sub_801c1670 +/* 801C2280 001BF1E0 6F A3 80 00 */ xoris r3, r29, 0x8000 +/* 801C2284 001BF1E4 3C 00 43 30 */ lis r0, 0x4330 +/* 801C2288 001BF1E8 90 61 00 CC */ stw r3, 0xcc(r1) +/* 801C228C 001BF1EC 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801C2290 001BF1F0 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 801C2294 001BF1F4 C8 42 AA E0 */ lfd f2, lbl_805AC800@sda21(r2) +/* 801C2298 001BF1F8 90 01 00 C8 */ stw r0, 0xc8(r1) +/* 801C229C 001BF1FC 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 801C22A0 001BF200 C0 02 AA A4 */ lfs f0, lbl_805AC7C4@sda21(r2) +/* 801C22A4 001BF204 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 801C22A8 001BF208 C8 21 00 C8 */ lfd f1, 0xc8(r1) +/* 801C22AC 001BF20C 38 61 00 68 */ addi r3, r1, 0x68 +/* 801C22B0 001BF210 C3 21 00 2C */ lfs f25, 0x2c(r1) +/* 801C22B4 001BF214 38 A1 00 50 */ addi r5, r1, 0x50 +/* 801C22B8 001BF218 EF 81 10 28 */ fsubs f28, f1, f2 +/* 801C22BC 001BF21C C0 21 00 5C */ lfs f1, 0x5c(r1) +/* 801C22C0 001BF220 C3 61 00 30 */ lfs f27, 0x30(r1) +/* 801C22C4 001BF224 C0 41 00 60 */ lfs f2, 0x60(r1) +/* 801C22C8 001BF228 EC 21 C8 28 */ fsubs f1, f1, f25 +/* 801C22CC 001BF22C EC A0 E0 24 */ fdivs f5, f0, f28 +/* 801C22D0 001BF230 C3 41 00 34 */ lfs f26, 0x34(r1) +/* 801C22D4 001BF234 C0 01 00 64 */ lfs f0, 0x64(r1) +/* 801C22D8 001BF238 D0 21 00 50 */ stfs f1, 0x50(r1) +/* 801C22DC 001BF23C EC 82 D8 28 */ fsubs f4, f2, f27 +/* 801C22E0 001BF240 EC 60 D0 28 */ fsubs f3, f0, f26 +/* 801C22E4 001BF244 EC 41 01 72 */ fmuls f2, f1, f5 +/* 801C22E8 001BF248 EC 24 01 72 */ fmuls f1, f4, f5 +/* 801C22EC 001BF24C D0 81 00 54 */ stfs f4, 0x54(r1) +/* 801C22F0 001BF250 EC 03 01 72 */ fmuls f0, f3, f5 +/* 801C22F4 001BF254 D0 61 00 58 */ stfs f3, 0x58(r1) +/* 801C22F8 001BF258 D0 41 00 50 */ stfs f2, 0x50(r1) +/* 801C22FC 001BF25C D0 21 00 54 */ stfs f1, 0x54(r1) +/* 801C2300 001BF260 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 801C2304 001BF264 48 15 18 0D */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 801C2308 001BF268 38 61 00 98 */ addi r3, r1, 0x98 +/* 801C230C 001BF26C 38 81 00 68 */ addi r4, r1, 0x68 +/* 801C2310 001BF270 48 15 08 65 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801C2314 001BF274 80 78 08 20 */ lwz r3, 0x820(r24) +/* 801C2318 001BF278 38 80 00 01 */ li r4, 1 +/* 801C231C 001BF27C 81 83 00 00 */ lwz r12, 0(r3) +/* 801C2320 001BF280 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801C2324 001BF284 7D 89 03 A6 */ mtctr r12 +/* 801C2328 001BF288 4E 80 04 21 */ bctrl +/* 801C232C 001BF28C C0 38 08 3C */ lfs f1, 0x83c(r24) +/* 801C2330 001BF290 C0 02 AA 98 */ lfs f0, lbl_805AC7B8@sda21(r2) +/* 801C2334 001BF294 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C2338 001BF298 40 81 00 20 */ ble lbl_801C2358 +/* 801C233C 001BF29C C0 02 AA A4 */ lfs f0, lbl_805AC7C4@sda21(r2) +/* 801C2340 001BF2A0 EC 00 08 28 */ fsubs f0, f0, f1 +/* 801C2344 001BF2A4 EC 1C 00 32 */ fmuls f0, f28, f0 +/* 801C2348 001BF2A8 FC 00 00 1E */ fctiwz f0, f0 +/* 801C234C 001BF2AC D8 01 00 D0 */ stfd f0, 0xd0(r1) +/* 801C2350 001BF2B0 83 81 00 D4 */ lwz r28, 0xd4(r1) +/* 801C2354 001BF2B4 48 00 00 08 */ b lbl_801C235C +lbl_801C2358: +/* 801C2358 001BF2B8 3B 80 FF FF */ li r28, -1 +lbl_801C235C: +/* 801C235C 001BF2BC 80 78 08 30 */ lwz r3, 0x830(r24) +/* 801C2360 001BF2C0 57 80 0F FE */ srwi r0, r28, 0x1f +/* 801C2364 001BF2C4 68 04 00 01 */ xori r4, r0, 1 +/* 801C2368 001BF2C8 81 83 00 00 */ lwz r12, 0(r3) +/* 801C236C 001BF2CC 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801C2370 001BF2D0 7D 89 03 A6 */ mtctr r12 +/* 801C2374 001BF2D4 4E 80 04 21 */ bctrl +/* 801C2378 001BF2D8 6F A0 80 00 */ xoris r0, r29, 0x8000 +/* 801C237C 001BF2DC 3F E0 43 30 */ lis r31, 0x4330 +/* 801C2380 001BF2E0 90 01 00 DC */ stw r0, 0xdc(r1) +/* 801C2384 001BF2E4 3B 40 00 00 */ li r26, 0 +/* 801C2388 001BF2E8 80 7E 01 60 */ lwz r3, 0x160(r30) +/* 801C238C 001BF2EC 3B 60 00 00 */ li r27, 0 +/* 801C2390 001BF2F0 93 E1 00 D8 */ stw r31, 0xd8(r1) +/* 801C2394 001BF2F4 CB 82 AA E0 */ lfd f28, lbl_805AC800@sda21(r2) +/* 801C2398 001BF2F8 38 03 FF FF */ addi r0, r3, -1 +/* 801C239C 001BF2FC C8 01 00 D8 */ lfd f0, 0xd8(r1) +/* 801C23A0 001BF300 54 03 38 30 */ slwi r3, r0, 7 +/* 801C23A4 001BF304 C0 22 AA A4 */ lfs f1, lbl_805AC7C4@sda21(r2) +/* 801C23A8 001BF308 38 03 00 30 */ addi r0, r3, 0x30 +/* 801C23AC 001BF30C EC 00 E0 28 */ fsubs f0, f0, f28 +/* 801C23B0 001BF310 80 7E 01 68 */ lwz r3, 0x168(r30) +/* 801C23B4 001BF314 C3 A2 AA 98 */ lfs f29, lbl_805AC7B8@sda21(r2) +/* 801C23B8 001BF318 7E E3 04 2E */ lfsx f23, r3, r0 +/* 801C23BC 001BF31C EF 01 00 24 */ fdivs f24, f1, f0 +/* 801C23C0 001BF320 C3 C2 AA D0 */ lfs f30, lbl_805AC7F0@sda21(r2) +/* 801C23C4 001BF324 C3 E2 AA AC */ lfs f31, lbl_805AC7CC@sda21(r2) +/* 801C23C8 001BF328 48 00 01 F8 */ b lbl_801C25C0 +lbl_801C23CC: +/* 801C23CC 001BF32C 6F 40 80 00 */ xoris r0, r26, 0x8000 +/* 801C23D0 001BF330 93 E1 00 D0 */ stw r31, 0xd0(r1) +/* 801C23D4 001BF334 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 801C23D8 001BF338 C8 01 00 D0 */ lfd f0, 0xd0(r1) +/* 801C23DC 001BF33C 90 01 00 DC */ stw r0, 0xdc(r1) +/* 801C23E0 001BF340 EC 00 E0 28 */ fsubs f0, f0, f28 +/* 801C23E4 001BF344 93 E1 00 D8 */ stw r31, 0xd8(r1) +/* 801C23E8 001BF348 C8 21 00 D8 */ lfd f1, 0xd8(r1) +/* 801C23EC 001BF34C FC 00 E8 40 */ fcmpo cr0, f0, f29 +/* 801C23F0 001BF350 EC 21 E0 28 */ fsubs f1, f1, f28 +/* 801C23F4 001BF354 40 81 00 10 */ ble lbl_801C2404 +/* 801C23F8 001BF358 C0 02 AA D4 */ lfs f0, lbl_805AC7F4@sda21(r2) +/* 801C23FC 001BF35C EE A0 08 24 */ fdivs f21, f0, f1 +/* 801C2400 001BF360 48 00 00 08 */ b lbl_801C2408 +lbl_801C2404: +/* 801C2404 001BF364 FE A0 E8 90 */ fmr f21, f29 +lbl_801C2408: +/* 801C2408 001BF368 EC 1E 00 72 */ fmuls f0, f30, f1 +/* 801C240C 001BF36C 38 78 08 38 */ addi r3, r24, 0x838 +/* 801C2410 001BF370 EE 80 06 32 */ fmuls f20, f0, f24 +/* 801C2414 001BF374 48 15 00 C9 */ bl Float__9CRandom16Fv +/* 801C2418 001BF378 C0 18 08 34 */ lfs f0, 0x834(r24) +/* 801C241C 001BF37C EE 7F 00 72 */ fmuls f19, f31, f1 +/* 801C2420 001BF380 EC 35 00 2A */ fadds f1, f21, f0 +/* 801C2424 001BF384 48 15 29 21 */ bl FastCosR__5CMathFf +/* 801C2428 001BF388 EC 14 00 72 */ fmuls f0, f20, f1 +/* 801C242C 001BF38C FC 20 A8 90 */ fmr f1, f21 +/* 801C2430 001BF390 EE B3 00 32 */ fmuls f21, f19, f0 +/* 801C2434 001BF394 48 15 29 BD */ bl FastSinR__5CMathFf +/* 801C2438 001BF398 6F 40 80 00 */ xoris r0, r26, 0x8000 +/* 801C243C 001BF39C EC 14 00 72 */ fmuls f0, f20, f1 +/* 801C2440 001BF3A0 90 01 00 CC */ stw r0, 0xcc(r1) +/* 801C2444 001BF3A4 93 E1 00 C8 */ stw r31, 0xc8(r1) +/* 801C2448 001BF3A8 EC 33 00 32 */ fmuls f1, f19, f0 +/* 801C244C 001BF3AC C8 01 00 C8 */ lfd f0, 0xc8(r1) +/* 801C2450 001BF3B0 EC 00 E0 28 */ fsubs f0, f0, f28 +/* 801C2454 001BF3B4 FC 00 E8 40 */ fcmpo cr0, f0, f29 +/* 801C2458 001BF3B8 40 81 00 28 */ ble lbl_801C2480 +/* 801C245C 001BF3BC D2 A1 00 20 */ stfs f21, 0x20(r1) +/* 801C2460 001BF3C0 38 61 00 14 */ addi r3, r1, 0x14 +/* 801C2464 001BF3C4 38 81 00 98 */ addi r4, r1, 0x98 +/* 801C2468 001BF3C8 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801C246C 001BF3CC D3 A1 00 24 */ stfs f29, 0x24(r1) +/* 801C2470 001BF3D0 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 801C2474 001BF3D4 48 15 06 75 */ bl __ml__12CTransform4fCFRC9CVector3f +/* 801C2478 001BF3D8 38 61 00 14 */ addi r3, r1, 0x14 +/* 801C247C 001BF3DC 48 00 00 0C */ b lbl_801C2488 +lbl_801C2480: +/* 801C2480 001BF3E0 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801C2484 001BF3E4 38 63 66 A0 */ addi r3, r3, skZero3f@l +lbl_801C2488: +/* 801C2488 001BF3E8 C0 43 00 04 */ lfs f2, 4(r3) +/* 801C248C 001BF3EC 3A E0 00 00 */ li r23, 0 +/* 801C2490 001BF3F0 C0 23 00 08 */ lfs f1, 8(r3) +/* 801C2494 001BF3F4 C0 03 00 00 */ lfs f0, 0(r3) +/* 801C2498 001BF3F8 EC 5B 10 2A */ fadds f2, f27, f2 +/* 801C249C 001BF3FC EC 3A 08 2A */ fadds f1, f26, f1 +/* 801C24A0 001BF400 EC 19 00 2A */ fadds f0, f25, f0 +/* 801C24A4 001BF404 D0 41 00 48 */ stfs f2, 0x48(r1) +/* 801C24A8 001BF408 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 801C24AC 001BF40C D0 21 00 4C */ stfs f1, 0x4c(r1) +lbl_801C24B0: +/* 801C24B0 001BF410 6E E0 80 00 */ xoris r0, r23, 0x8000 +/* 801C24B4 001BF414 93 E1 00 D8 */ stw r31, 0xd8(r1) +/* 801C24B8 001BF418 C0 81 00 54 */ lfs f4, 0x54(r1) +/* 801C24BC 001BF41C 38 81 00 08 */ addi r4, r1, 8 +/* 801C24C0 001BF420 90 01 00 DC */ stw r0, 0xdc(r1) +/* 801C24C4 001BF424 C0 41 00 58 */ lfs f2, 0x58(r1) +/* 801C24C8 001BF428 C8 21 00 D8 */ lfd f1, 0xd8(r1) +/* 801C24CC 001BF42C C0 01 00 50 */ lfs f0, 0x50(r1) +/* 801C24D0 001BF430 EC C1 E0 28 */ fsubs f6, f1, f28 +/* 801C24D4 001BF434 C0 A1 00 48 */ lfs f5, 0x48(r1) +/* 801C24D8 001BF438 C0 61 00 4C */ lfs f3, 0x4c(r1) +/* 801C24DC 001BF43C C0 21 00 44 */ lfs f1, 0x44(r1) +/* 801C24E0 001BF440 EC 86 01 32 */ fmuls f4, f6, f4 +/* 801C24E4 001BF444 EC 46 00 B2 */ fmuls f2, f6, f2 +/* 801C24E8 001BF448 EC 06 00 32 */ fmuls f0, f6, f0 +/* 801C24EC 001BF44C EC 98 01 32 */ fmuls f4, f24, f4 +/* 801C24F0 001BF450 EC 58 00 B2 */ fmuls f2, f24, f2 +/* 801C24F4 001BF454 EC 18 00 32 */ fmuls f0, f24, f0 +/* 801C24F8 001BF458 EC 85 20 2A */ fadds f4, f5, f4 +/* 801C24FC 001BF45C EC 43 10 2A */ fadds f2, f3, f2 +/* 801C2500 001BF460 EC 01 00 2A */ fadds f0, f1, f0 +/* 801C2504 001BF464 D0 81 00 0C */ stfs f4, 0xc(r1) +/* 801C2508 001BF468 D0 01 00 08 */ stfs f0, 8(r1) +/* 801C250C 001BF46C D0 41 00 10 */ stfs f2, 0x10(r1) +/* 801C2510 001BF470 80 78 08 20 */ lwz r3, 0x820(r24) +/* 801C2514 001BF474 81 83 00 00 */ lwz r12, 0(r3) +/* 801C2518 001BF478 81 8C 00 18 */ lwz r12, 0x18(r12) +/* 801C251C 001BF47C 7D 89 03 A6 */ mtctr r12 +/* 801C2520 001BF480 4E 80 04 21 */ bctrl +/* 801C2524 001BF484 80 78 08 20 */ lwz r3, 0x820(r24) +/* 801C2528 001BF488 38 80 00 01 */ li r4, 1 +/* 801C252C 001BF48C 48 15 A3 95 */ bl ForceParticleCreation__11CElementGenFi +/* 801C2530 001BF490 3A F7 00 01 */ addi r23, r23, 1 +/* 801C2534 001BF494 2C 17 00 03 */ cmpwi r23, 3 +/* 801C2538 001BF498 41 80 FF 78 */ blt lbl_801C24B0 +/* 801C253C 001BF49C 80 1E 01 68 */ lwz r0, 0x168(r30) +/* 801C2540 001BF4A0 7C 1A E0 00 */ cmpw r26, r28 +/* 801C2544 001BF4A4 C0 01 00 44 */ lfs f0, 0x44(r1) +/* 801C2548 001BF4A8 7C 60 DA 14 */ add r3, r0, r27 +/* 801C254C 001BF4AC D0 03 00 0C */ stfs f0, 0xc(r3) +/* 801C2550 001BF4B0 C0 01 00 48 */ lfs f0, 0x48(r1) +/* 801C2554 001BF4B4 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 801C2558 001BF4B8 C0 01 00 4C */ lfs f0, 0x4c(r1) +/* 801C255C 001BF4BC D0 03 00 14 */ stfs f0, 0x14(r3) +/* 801C2560 001BF4C0 C0 03 00 30 */ lfs f0, 0x30(r3) +/* 801C2564 001BF4C4 D2 E3 00 30 */ stfs f23, 0x30(r3) +/* 801C2568 001BF4C8 FE E0 00 90 */ fmr f23, f0 +/* 801C256C 001BF4CC 40 82 00 34 */ bne lbl_801C25A0 +/* 801C2570 001BF4D0 80 78 08 30 */ lwz r3, 0x830(r24) +/* 801C2574 001BF4D4 38 81 00 44 */ addi r4, r1, 0x44 +/* 801C2578 001BF4D8 81 83 00 00 */ lwz r12, 0(r3) +/* 801C257C 001BF4DC 81 8C 00 18 */ lwz r12, 0x18(r12) +/* 801C2580 001BF4E0 7D 89 03 A6 */ mtctr r12 +/* 801C2584 001BF4E4 4E 80 04 21 */ bctrl +/* 801C2588 001BF4E8 80 78 08 30 */ lwz r3, 0x830(r24) +/* 801C258C 001BF4EC FC 20 B0 90 */ fmr f1, f22 +/* 801C2590 001BF4F0 81 83 00 00 */ lwz r12, 0(r3) +/* 801C2594 001BF4F4 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801C2598 001BF4F8 7D 89 03 A6 */ mtctr r12 +/* 801C259C 001BF4FC 4E 80 04 21 */ bctrl +lbl_801C25A0: +/* 801C25A0 001BF500 C0 41 00 50 */ lfs f2, 0x50(r1) +/* 801C25A4 001BF504 3B 7B 00 80 */ addi r27, r27, 0x80 +/* 801C25A8 001BF508 C0 21 00 54 */ lfs f1, 0x54(r1) +/* 801C25AC 001BF50C 3B 5A 00 01 */ addi r26, r26, 1 +/* 801C25B0 001BF510 C0 01 00 58 */ lfs f0, 0x58(r1) +/* 801C25B4 001BF514 EF 39 10 2A */ fadds f25, f25, f2 +/* 801C25B8 001BF518 EF 7B 08 2A */ fadds f27, f27, f1 +/* 801C25BC 001BF51C EF 5A 00 2A */ fadds f26, f26, f0 +lbl_801C25C0: +/* 801C25C0 001BF520 7C 1A E8 00 */ cmpw r26, r29 +/* 801C25C4 001BF524 41 80 FE 08 */ blt lbl_801C23CC +/* 801C25C8 001BF528 80 78 08 20 */ lwz r3, 0x820(r24) +/* 801C25CC 001BF52C 38 80 00 00 */ li r4, 0 +/* 801C25D0 001BF530 81 83 00 00 */ lwz r12, 0(r3) +/* 801C25D4 001BF534 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801C25D8 001BF538 7D 89 03 A6 */ mtctr r12 +/* 801C25DC 001BF53C 4E 80 04 21 */ bctrl +/* 801C25E0 001BF540 80 78 08 20 */ lwz r3, 0x820(r24) +/* 801C25E4 001BF544 FC 20 B0 90 */ fmr f1, f22 +/* 801C25E8 001BF548 81 83 00 00 */ lwz r12, 0(r3) +/* 801C25EC 001BF54C 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801C25F0 001BF550 7D 89 03 A6 */ mtctr r12 +/* 801C25F4 001BF554 4E 80 04 21 */ bctrl +/* 801C25F8 001BF558 C0 58 08 34 */ lfs f2, 0x834(r24) +/* 801C25FC 001BF55C FC 20 B0 90 */ fmr f1, f22 +/* 801C2600 001BF560 C0 02 AA D8 */ lfs f0, lbl_805AC7F8@sda21(r2) +/* 801C2604 001BF564 7F 03 C3 78 */ mr r3, r24 +/* 801C2608 001BF568 7F 24 CB 78 */ mr r4, r25 +/* 801C260C 001BF56C 38 A1 00 5C */ addi r5, r1, 0x5c +/* 801C2610 001BF570 EC 02 00 2A */ fadds f0, f2, f0 +/* 801C2614 001BF574 D0 18 08 34 */ stfs f0, 0x834(r24) +/* 801C2618 001BF578 4B FF F9 59 */ bl sub_801c1f70 +lbl_801C261C: +/* 801C261C 001BF57C E3 E1 01 D8 */ psq_l f31, 472(r1), 0, qr0 +/* 801C2620 001BF580 CB E1 01 D0 */ lfd f31, 0x1d0(r1) +/* 801C2624 001BF584 E3 C1 01 C8 */ psq_l f30, 456(r1), 0, qr0 +/* 801C2628 001BF588 CB C1 01 C0 */ lfd f30, 0x1c0(r1) +/* 801C262C 001BF58C E3 A1 01 B8 */ psq_l f29, 440(r1), 0, qr0 +/* 801C2630 001BF590 CB A1 01 B0 */ lfd f29, 0x1b0(r1) +/* 801C2634 001BF594 E3 81 01 A8 */ psq_l f28, 424(r1), 0, qr0 +/* 801C2638 001BF598 CB 81 01 A0 */ lfd f28, 0x1a0(r1) +/* 801C263C 001BF59C E3 61 01 98 */ psq_l f27, 408(r1), 0, qr0 +/* 801C2640 001BF5A0 CB 61 01 90 */ lfd f27, 0x190(r1) +/* 801C2644 001BF5A4 E3 41 01 88 */ psq_l f26, 392(r1), 0, qr0 +/* 801C2648 001BF5A8 CB 41 01 80 */ lfd f26, 0x180(r1) +/* 801C264C 001BF5AC E3 21 01 78 */ psq_l f25, 376(r1), 0, qr0 +/* 801C2650 001BF5B0 CB 21 01 70 */ lfd f25, 0x170(r1) +/* 801C2654 001BF5B4 E3 01 01 68 */ psq_l f24, 360(r1), 0, qr0 +/* 801C2658 001BF5B8 CB 01 01 60 */ lfd f24, 0x160(r1) +/* 801C265C 001BF5BC E2 E1 01 58 */ psq_l f23, 344(r1), 0, qr0 +/* 801C2660 001BF5C0 CA E1 01 50 */ lfd f23, 0x150(r1) +/* 801C2664 001BF5C4 E2 C1 01 48 */ psq_l f22, 328(r1), 0, qr0 +/* 801C2668 001BF5C8 CA C1 01 40 */ lfd f22, 0x140(r1) +/* 801C266C 001BF5CC E2 A1 01 38 */ psq_l f21, 312(r1), 0, qr0 +/* 801C2670 001BF5D0 CA A1 01 30 */ lfd f21, 0x130(r1) +/* 801C2674 001BF5D4 E2 81 01 28 */ psq_l f20, 296(r1), 0, qr0 +/* 801C2678 001BF5D8 CA 81 01 20 */ lfd f20, 0x120(r1) +/* 801C267C 001BF5DC E2 61 01 18 */ psq_l f19, 280(r1), 0, qr0 +/* 801C2680 001BF5E0 CA 61 01 10 */ lfd f19, 0x110(r1) +/* 801C2684 001BF5E4 BA E1 00 EC */ lmw r23, 0xec(r1) +/* 801C2688 001BF5E8 80 01 01 E4 */ lwz r0, 0x1e4(r1) +/* 801C268C 001BF5EC 7C 08 03 A6 */ mtlr r0 +/* 801C2690 001BF5F0 38 21 01 E0 */ addi r1, r1, 0x1e0 +/* 801C2694 001BF5F4 4E 80 00 20 */ blr + +.global sub_801c2698 +sub_801c2698: +/* 801C2698 001BF5F8 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 801C269C 001BF5FC 7C 08 02 A6 */ mflr r0 +/* 801C26A0 001BF600 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 801C26A4 001BF604 DB E1 00 90 */ stfd f31, 0x90(r1) +/* 801C26A8 001BF608 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 +/* 801C26AC 001BF60C DB C1 00 80 */ stfd f30, 0x80(r1) +/* 801C26B0 001BF610 F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 +/* 801C26B4 001BF614 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 801C26B8 001BF618 93 C1 00 78 */ stw r30, 0x78(r1) +/* 801C26BC 001BF61C 93 A1 00 74 */ stw r29, 0x74(r1) +/* 801C26C0 001BF620 7C 7D 1B 78 */ mr r29, r3 +/* 801C26C4 001BF624 7C 9E 23 78 */ mr r30, r4 +/* 801C26C8 001BF628 FF C0 08 90 */ fmr f30, f1 +/* 801C26CC 001BF62C 83 E4 08 4C */ lwz r31, 0x84c(r4) +/* 801C26D0 001BF630 C3 E3 06 3C */ lfs f31, 0x63c(r3) +/* 801C26D4 001BF634 4B FF EE D5 */ bl sub_801c15a8 +/* 801C26D8 001BF638 EC 1E 07 F2 */ fmuls f0, f30, f31 +/* 801C26DC 001BF63C 38 E0 00 0A */ li r7, 0xa +/* 801C26E0 001BF640 C0 5D 07 9C */ lfs f2, 0x79c(r29) +/* 801C26E4 001BF644 38 80 00 00 */ li r4, 0 +/* 801C26E8 001BF648 88 61 00 2C */ lbz r3, 0x2c(r1) +/* 801C26EC 001BF64C 50 83 3E 30 */ rlwimi r3, r4, 7, 0x18, 0x18 +/* 801C26F0 001BF650 EC 60 00 72 */ fmuls f3, f0, f1 +/* 801C26F4 001BF654 54 60 06 3E */ clrlwi r0, r3, 0x18 +/* 801C26F8 001BF658 98 61 00 2C */ stb r3, 0x2c(r1) +/* 801C26FC 001BF65C 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 801C2700 001BF660 54 06 06 3E */ clrlwi r6, r0, 0x18 +/* 801C2704 001BF664 C0 02 AA 98 */ lfs f0, lbl_805AC7B8@sda21(r2) +/* 801C2708 001BF668 EC 22 18 2A */ fadds f1, f2, f3 +/* 801C270C 001BF66C 50 86 2E B4 */ rlwimi r6, r4, 5, 0x1a, 0x1a +/* 801C2710 001BF670 98 01 00 2C */ stb r0, 0x2c(r1) +/* 801C2714 001BF674 38 A0 00 01 */ li r5, 1 +/* 801C2718 001BF678 38 60 00 00 */ li r3, 0 +/* 801C271C 001BF67C 38 80 00 01 */ li r4, 1 +/* 801C2720 001BF680 D0 3D 07 9C */ stfs f1, 0x79c(r29) +/* 801C2724 001BF684 88 01 00 60 */ lbz r0, 0x60(r1) +/* 801C2728 001BF688 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 801C272C 001BF68C 90 E1 00 48 */ stw r7, 0x48(r1) +/* 801C2730 001BF690 98 C1 00 4C */ stb r6, 0x4c(r1) +/* 801C2734 001BF694 D0 61 00 50 */ stfs f3, 0x50(r1) +/* 801C2738 001BF698 D0 61 00 54 */ stfs f3, 0x54(r1) +/* 801C273C 001BF69C D0 01 00 58 */ stfs f0, 0x58(r1) +/* 801C2740 001BF6A0 D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 801C2744 001BF6A4 98 01 00 60 */ stb r0, 0x60(r1) +/* 801C2748 001BF6A8 88 1F 09 C7 */ lbz r0, 0x9c7(r31) +/* 801C274C 001BF6AC 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 801C2750 001BF6B0 90 E1 00 28 */ stw r7, 0x28(r1) +/* 801C2754 001BF6B4 98 1F 09 C7 */ stb r0, 0x9c7(r31) +/* 801C2758 001BF6B8 80 AD 91 28 */ lwz r5, lbl_805A7CE8@sda21(r13) +/* 801C275C 001BF6BC 98 C1 00 2C */ stb r6, 0x2c(r1) +/* 801C2760 001BF6C0 48 1C 77 95 */ bl __shl2i +/* 801C2764 001BF6C4 39 40 00 00 */ li r10, 0 +/* 801C2768 001BF6C8 38 00 00 03 */ li r0, 3 +/* 801C276C 001BF6CC 90 81 00 34 */ stw r4, 0x34(r1) +/* 801C2770 001BF6D0 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801C2774 001BF6D4 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 801C2778 001BF6D8 38 A1 00 1C */ addi r5, r1, 0x1c +/* 801C277C 001BF6DC 90 61 00 30 */ stw r3, 0x30(r1) +/* 801C2780 001BF6E0 38 81 00 24 */ addi r4, r1, 0x24 +/* 801C2784 001BF6E4 7F C3 F3 78 */ mr r3, r30 +/* 801C2788 001BF6E8 38 C1 00 14 */ addi r6, r1, 0x14 +/* 801C278C 001BF6EC 91 41 00 3C */ stw r10, 0x3c(r1) +/* 801C2790 001BF6F0 38 E1 00 48 */ addi r7, r1, 0x48 +/* 801C2794 001BF6F4 39 01 00 30 */ addi r8, r1, 0x30 +/* 801C2798 001BF6F8 91 41 00 38 */ stw r10, 0x38(r1) +/* 801C279C 001BF6FC 90 01 00 40 */ stw r0, 0x40(r1) +/* 801C27A0 001BF700 A0 1D 00 08 */ lhz r0, 8(r29) +/* 801C27A4 001BF704 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801C27A8 001BF708 A1 5F 00 08 */ lhz r10, 8(r31) +/* 801C27AC 001BF70C B0 01 00 10 */ sth r0, 0x10(r1) +/* 801C27B0 001BF710 B1 41 00 1C */ sth r10, 0x1c(r1) +/* 801C27B4 001BF714 A0 1D 00 08 */ lhz r0, 8(r29) +/* 801C27B8 001BF718 B1 41 00 18 */ sth r10, 0x18(r1) +/* 801C27BC 001BF71C B0 01 00 20 */ sth r0, 0x20(r1) +/* 801C27C0 001BF720 B0 01 00 24 */ sth r0, 0x24(r1) +/* 801C27C4 001BF724 4B E8 78 DD */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +/* 801C27C8 001BF728 88 1F 09 C7 */ lbz r0, 0x9c7(r31) +/* 801C27CC 001BF72C 38 60 00 00 */ li r3, 0 +/* 801C27D0 001BF730 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801C27D4 001BF734 98 1F 09 C7 */ stb r0, 0x9c7(r31) +/* 801C27D8 001BF738 80 1F 02 F8 */ lwz r0, 0x2f8(r31) +/* 801C27DC 001BF73C 2C 00 00 00 */ cmpwi r0, 0 +/* 801C27E0 001BF740 40 82 00 6C */ bne lbl_801C284C +/* 801C27E4 001BF744 C0 22 AA E8 */ lfs f1, lbl_805AC808@sda21(r2) +/* 801C27E8 001BF748 C0 1D 07 A0 */ lfs f0, 0x7a0(r29) +/* 801C27EC 001BF74C EC 21 00 32 */ fmuls f1, f1, f0 +/* 801C27F0 001BF750 48 15 26 01 */ bl FastSinR__5CMathFf +/* 801C27F4 001BF754 A0 1D 00 08 */ lhz r0, 8(r29) +/* 801C27F8 001BF758 FC 00 0A 10 */ fabs f0, f1 +/* 801C27FC 001BF75C C0 22 AA EC */ lfs f1, lbl_805AC80C@sda21(r2) +/* 801C2800 001BF760 38 81 00 0C */ addi r4, r1, 0xc +/* 801C2804 001BF764 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801C2808 001BF768 FC 00 00 18 */ frsp f0, f0 +/* 801C280C 001BF76C C0 42 AA F0 */ lfs f2, lbl_805AC810@sda21(r2) +/* 801C2810 001BF770 80 7E 08 B8 */ lwz r3, 0x8b8(r30) +/* 801C2814 001BF774 B0 01 00 08 */ sth r0, 8(r1) +/* 801C2818 001BF778 80 63 00 00 */ lwz r3, 0(r3) +/* 801C281C 001BF77C EC 21 00 32 */ fmuls f1, f1, f0 +/* 801C2820 001BF780 38 63 01 88 */ addi r3, r3, 0x188 +/* 801C2824 001BF784 4B FF E3 15 */ bl AddSource__19CStaticInterferenceF9TUniqueId +/* 801C2828 001BF788 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 801C282C 001BF78C C0 22 AA F0 */ lfs f1, lbl_805AC810@sda21(r2) +/* 801C2830 001BF790 C0 03 07 40 */ lfs f0, 0x740(r3) +/* 801C2834 001BF794 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801C2838 001BF798 40 80 00 14 */ bge lbl_801C284C +/* 801C283C 001BF79C C0 42 80 F8 */ lfs f2, lbl_805A9E18@sda21(r2) +/* 801C2840 001BF7A0 7F E3 FB 78 */ mr r3, r31 +/* 801C2844 001BF7A4 C0 62 80 FC */ lfs f3, lbl_805A9E1C@sda21(r2) +/* 801C2848 001BF7A8 4B E5 08 25 */ bl SetHudDisable__7CPlayerFfff +lbl_801C284C: +/* 801C284C 001BF7AC C0 1D 07 A0 */ lfs f0, 0x7a0(r29) +/* 801C2850 001BF7B0 EC 00 F0 2A */ fadds f0, f0, f30 +/* 801C2854 001BF7B4 D0 1D 07 A0 */ stfs f0, 0x7a0(r29) +/* 801C2858 001BF7B8 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 +/* 801C285C 001BF7BC CB E1 00 90 */ lfd f31, 0x90(r1) +/* 801C2860 001BF7C0 E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 +/* 801C2864 001BF7C4 CB C1 00 80 */ lfd f30, 0x80(r1) +/* 801C2868 001BF7C8 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 801C286C 001BF7CC 83 C1 00 78 */ lwz r30, 0x78(r1) +/* 801C2870 001BF7D0 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 801C2874 001BF7D4 83 A1 00 74 */ lwz r29, 0x74(r1) +/* 801C2878 001BF7D8 7C 08 03 A6 */ mtlr r0 +/* 801C287C 001BF7DC 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 801C2880 001BF7E0 4E 80 00 20 */ blr + +.global sub_801c2884 +sub_801c2884: +/* 801C2884 001BF7E4 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801C2888 001BF7E8 7C 08 02 A6 */ mflr r0 +/* 801C288C 001BF7EC 90 01 00 64 */ stw r0, 0x64(r1) +/* 801C2890 001BF7F0 DB E1 00 50 */ stfd f31, 0x50(r1) +/* 801C2894 001BF7F4 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 801C2898 001BF7F8 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801C289C 001BF7FC 93 C1 00 48 */ stw r30, 0x48(r1) +/* 801C28A0 001BF800 7C 7E 1B 78 */ mr r30, r3 +/* 801C28A4 001BF804 80 63 04 50 */ lwz r3, 0x450(r3) +/* 801C28A8 001BF808 7C 9F 23 78 */ mr r31, r4 +/* 801C28AC 001BF80C 88 03 03 00 */ lbz r0, 0x300(r3) +/* 801C28B0 001BF810 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801C28B4 001BF814 41 82 00 0C */ beq lbl_801C28C0 +/* 801C28B8 001BF818 38 60 00 01 */ li r3, 1 +/* 801C28BC 001BF81C 48 00 01 58 */ b lbl_801C2A14 +lbl_801C28C0: +/* 801C28C0 001BF820 C0 3E 08 3C */ lfs f1, 0x83c(r30) +/* 801C28C4 001BF824 C0 02 AA A4 */ lfs f0, lbl_805AC7C4@sda21(r2) +/* 801C28C8 001BF828 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C28CC 001BF82C 4C 41 13 82 */ cror 2, 1, 2 +/* 801C28D0 001BF830 40 82 00 1C */ bne lbl_801C28EC +/* 801C28D4 001BF834 88 1E 08 40 */ lbz r0, 0x840(r30) +/* 801C28D8 001BF838 38 60 00 00 */ li r3, 0 +/* 801C28DC 001BF83C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801C28E0 001BF840 38 60 00 01 */ li r3, 1 +/* 801C28E4 001BF844 98 1E 08 40 */ stb r0, 0x840(r30) +/* 801C28E8 001BF848 48 00 01 2C */ b lbl_801C2A14 +lbl_801C28EC: +/* 801C28EC 001BF84C 7F C4 F3 78 */ mr r4, r30 +/* 801C28F0 001BF850 38 61 00 24 */ addi r3, r1, 0x24 +/* 801C28F4 001BF854 4B FF ED 7D */ bl sub_801c1670 +/* 801C28F8 001BF858 C0 41 00 24 */ lfs f2, 0x24(r1) +/* 801C28FC 001BF85C 7F C4 F3 78 */ mr r4, r30 +/* 801C2900 001BF860 C0 21 00 28 */ lfs f1, 0x28(r1) +/* 801C2904 001BF864 7F E5 FB 78 */ mr r5, r31 +/* 801C2908 001BF868 C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 801C290C 001BF86C 38 61 00 18 */ addi r3, r1, 0x18 +/* 801C2910 001BF870 D0 41 00 3C */ stfs f2, 0x3c(r1) +/* 801C2914 001BF874 D0 21 00 40 */ stfs f1, 0x40(r1) +/* 801C2918 001BF878 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 801C291C 001BF87C 4B FF EC BD */ bl sub_801c15d8 +/* 801C2920 001BF880 C0 A1 00 1C */ lfs f5, 0x1c(r1) +/* 801C2924 001BF884 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 801C2928 001BF888 C0 C1 00 18 */ lfs f6, 0x18(r1) +/* 801C292C 001BF88C EC 45 00 28 */ fsubs f2, f5, f0 +/* 801C2930 001BF890 C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 801C2934 001BF894 C0 81 00 20 */ lfs f4, 0x20(r1) +/* 801C2938 001BF898 EC 26 00 28 */ fsubs f1, f6, f0 +/* 801C293C 001BF89C C0 61 00 44 */ lfs f3, 0x44(r1) +/* 801C2940 001BF8A0 EC 02 00 B2 */ fmuls f0, f2, f2 +/* 801C2944 001BF8A4 D0 C1 00 30 */ stfs f6, 0x30(r1) +/* 801C2948 001BF8A8 EC 64 18 28 */ fsubs f3, f4, f3 +/* 801C294C 001BF8AC EC 01 00 7A */ fmadds f0, f1, f1, f0 +/* 801C2950 001BF8B0 D0 A1 00 34 */ stfs f5, 0x34(r1) +/* 801C2954 001BF8B4 D0 81 00 38 */ stfs f4, 0x38(r1) +/* 801C2958 001BF8B8 EC 63 00 FA */ fmadds f3, f3, f3, f0 +/* 801C295C 001BF8BC C0 1E 03 00 */ lfs f0, 0x300(r30) +/* 801C2960 001BF8C0 EC 00 00 32 */ fmuls f0, f0, f0 +/* 801C2964 001BF8C4 FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 801C2968 001BF8C8 40 81 00 0C */ ble lbl_801C2974 +/* 801C296C 001BF8CC 38 60 00 01 */ li r3, 1 +/* 801C2970 001BF8D0 48 00 00 A4 */ b lbl_801C2A14 +lbl_801C2974: +/* 801C2974 001BF8D4 38 61 00 08 */ addi r3, r1, 8 +/* 801C2978 001BF8D8 48 15 18 89 */ bl __ct__9CVector2fFff +/* 801C297C 001BF8DC C0 01 00 08 */ lfs f0, 8(r1) +/* 801C2980 001BF8E0 38 61 00 10 */ addi r3, r1, 0x10 +/* 801C2984 001BF8E4 C0 21 00 0C */ lfs f1, 0xc(r1) +/* 801C2988 001BF8E8 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801C298C 001BF8EC C0 02 AA D0 */ lfs f0, lbl_805AC7F0@sda21(r2) +/* 801C2990 001BF8F0 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 801C2994 001BF8F4 C0 3E 02 FC */ lfs f1, 0x2fc(r30) +/* 801C2998 001BF8F8 EC 00 00 72 */ fmuls f0, f0, f1 +/* 801C299C 001BF8FC EF E0 00 72 */ fmuls f31, f0, f1 +/* 801C29A0 001BF900 48 15 17 3D */ bl MagSquared__9CVector2fCFv +/* 801C29A4 001BF904 FC 01 F8 40 */ fcmpo cr0, f1, f31 +/* 801C29A8 001BF908 40 80 00 0C */ bge lbl_801C29B4 +/* 801C29AC 001BF90C 38 60 00 01 */ li r3, 1 +/* 801C29B0 001BF910 48 00 00 64 */ b lbl_801C2A14 +lbl_801C29B4: +/* 801C29B4 001BF914 7F C3 F3 78 */ mr r3, r30 +/* 801C29B8 001BF918 7F E4 FB 78 */ mr r4, r31 +/* 801C29BC 001BF91C 38 A1 00 3C */ addi r5, r1, 0x3c +/* 801C29C0 001BF920 38 C1 00 30 */ addi r6, r1, 0x30 +/* 801C29C4 001BF924 48 03 24 0D */ bl IsPatternObstructed__10CPatternedCFR13CStateManagerRC9CVector3fRC9CVector3f +/* 801C29C8 001BF928 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C29CC 001BF92C 41 82 00 0C */ beq lbl_801C29D8 +/* 801C29D0 001BF930 38 60 00 01 */ li r3, 1 +/* 801C29D4 001BF934 48 00 00 40 */ b lbl_801C2A14 +lbl_801C29D8: +/* 801C29D8 001BF938 C3 FE 06 40 */ lfs f31, 0x640(r30) +/* 801C29DC 001BF93C 7F C3 F3 78 */ mr r3, r30 +/* 801C29E0 001BF940 4B FF EB C9 */ bl sub_801c15a8 +/* 801C29E4 001BF944 EC 3F 00 72 */ fmuls f1, f31, f1 +/* 801C29E8 001BF948 C0 1E 07 9C */ lfs f0, 0x79c(r30) +/* 801C29EC 001BF94C FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801C29F0 001BF950 4C 41 13 82 */ cror 2, 1, 2 +/* 801C29F4 001BF954 41 82 00 14 */ beq lbl_801C2A08 +/* 801C29F8 001BF958 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 801C29FC 001BF95C 88 03 09 C4 */ lbz r0, 0x9c4(r3) +/* 801C2A00 001BF960 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 801C2A04 001BF964 41 82 00 0C */ beq lbl_801C2A10 +lbl_801C2A08: +/* 801C2A08 001BF968 38 60 00 01 */ li r3, 1 +/* 801C2A0C 001BF96C 48 00 00 08 */ b lbl_801C2A14 +lbl_801C2A10: +/* 801C2A10 001BF970 38 60 00 00 */ li r3, 0 +lbl_801C2A14: +/* 801C2A14 001BF974 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 +/* 801C2A18 001BF978 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801C2A1C 001BF97C CB E1 00 50 */ lfd f31, 0x50(r1) +/* 801C2A20 001BF980 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801C2A24 001BF984 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 801C2A28 001BF988 7C 08 03 A6 */ mtlr r0 +/* 801C2A2C 001BF98C 38 21 00 60 */ addi r1, r1, 0x60 +/* 801C2A30 001BF990 4E 80 00 20 */ blr + +.global WallHang__12CMetroidBetaFR13CStateManager9EStateMsgf +WallHang__12CMetroidBetaFR13CStateManager9EStateMsgf: +/* 801C2A34 001BF994 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801C2A38 001BF998 7C 08 02 A6 */ mflr r0 +/* 801C2A3C 001BF99C 2C 05 00 01 */ cmpwi r5, 1 +/* 801C2A40 001BF9A0 90 01 00 34 */ stw r0, 0x34(r1) +/* 801C2A44 001BF9A4 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801C2A48 001BF9A8 7C 9F 23 78 */ mr r31, r4 +/* 801C2A4C 001BF9AC 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801C2A50 001BF9B0 7C 7E 1B 78 */ mr r30, r3 +/* 801C2A54 001BF9B4 41 82 00 58 */ beq lbl_801C2AAC +/* 801C2A58 001BF9B8 40 80 00 10 */ bge lbl_801C2A68 +/* 801C2A5C 001BF9BC 2C 05 00 00 */ cmpwi r5, 0 +/* 801C2A60 001BF9C0 40 80 00 14 */ bge lbl_801C2A74 +/* 801C2A64 001BF9C4 48 00 01 A4 */ b lbl_801C2C08 +lbl_801C2A68: +/* 801C2A68 001BF9C8 2C 05 00 03 */ cmpwi r5, 3 +/* 801C2A6C 001BF9CC 40 80 01 9C */ bge lbl_801C2C08 +/* 801C2A70 001BF9D0 48 00 01 7C */ b lbl_801C2BEC +lbl_801C2A74: +/* 801C2A74 001BF9D4 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801C2A78 001BF9D8 38 80 00 00 */ li r4, 0 +/* 801C2A7C 001BF9DC 4B F7 7F 5D */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 801C2A80 001BF9E0 38 00 00 00 */ li r0, 0 +/* 801C2A84 001BF9E4 7F C3 F3 78 */ mr r3, r30 +/* 801C2A88 001BF9E8 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801C2A8C 001BF9EC 7F E5 FB 78 */ mr r5, r31 +/* 801C2A90 001BF9F0 38 80 00 13 */ li r4, 0x13 +/* 801C2A94 001BF9F4 4B E9 14 ED */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801C2A98 001BF9F8 80 7E 07 64 */ lwz r3, 0x764(r30) +/* 801C2A9C 001BF9FC 7F E4 FB 78 */ mr r4, r31 +/* 801C2AA0 001BFA00 38 A0 00 00 */ li r5, 0 +/* 801C2AA4 001BFA04 4B FE 48 55 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb +/* 801C2AA8 001BFA08 48 00 01 60 */ b lbl_801C2C08 +lbl_801C2AAC: +/* 801C2AAC 001BFA0C 80 1E 05 68 */ lwz r0, 0x568(r30) +/* 801C2AB0 001BFA10 2C 00 00 01 */ cmpwi r0, 1 +/* 801C2AB4 001BFA14 41 82 00 38 */ beq lbl_801C2AEC +/* 801C2AB8 001BFA18 40 80 00 10 */ bge lbl_801C2AC8 +/* 801C2ABC 001BFA1C 2C 00 00 00 */ cmpwi r0, 0 +/* 801C2AC0 001BFA20 40 80 00 14 */ bge lbl_801C2AD4 +/* 801C2AC4 001BFA24 48 00 01 44 */ b lbl_801C2C08 +lbl_801C2AC8: +/* 801C2AC8 001BFA28 2C 00 00 03 */ cmpwi r0, 3 +/* 801C2ACC 001BFA2C 40 80 01 3C */ bge lbl_801C2C08 +/* 801C2AD0 001BFA30 48 00 01 00 */ b lbl_801C2BD0 +lbl_801C2AD4: +/* 801C2AD4 001BFA34 88 1E 08 40 */ lbz r0, 0x840(r30) +/* 801C2AD8 001BFA38 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801C2ADC 001BFA3C 41 82 01 2C */ beq lbl_801C2C08 +/* 801C2AE0 001BFA40 38 00 00 01 */ li r0, 1 +/* 801C2AE4 001BFA44 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801C2AE8 001BFA48 48 00 01 20 */ b lbl_801C2C08 +lbl_801C2AEC: +/* 801C2AEC 001BFA4C 81 5E 04 50 */ lwz r10, 0x450(r30) +/* 801C2AF0 001BFA50 80 0A 02 B8 */ lwz r0, 0x2b8(r10) +/* 801C2AF4 001BFA54 2C 00 00 0C */ cmpwi r0, 0xc +/* 801C2AF8 001BFA58 40 82 00 10 */ bne lbl_801C2B08 +/* 801C2AFC 001BFA5C 38 00 00 02 */ li r0, 2 +/* 801C2B00 001BFA60 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801C2B04 001BFA64 48 00 01 04 */ b lbl_801C2C08 +lbl_801C2B08: +/* 801C2B08 001BFA68 3C A0 80 3E */ lis r5, lbl_803DAA68@ha +/* 801C2B0C 001BFA6C 38 C0 00 00 */ li r6, 0 +/* 801C2B10 001BFA70 39 25 AA 68 */ addi r9, r5, lbl_803DAA68@l +/* 801C2B14 001BFA74 80 61 00 24 */ lwz r3, 0x24(r1) +/* 801C2B18 001BFA78 50 C3 F8 00 */ rlwimi r3, r6, 0x1f, 0, 0 +/* 801C2B1C 001BFA7C 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801C2B20 001BFA80 C4 44 66 A0 */ lfsu f2, skZero3f@l(r4) +/* 801C2B24 001BFA84 3C E0 80 3E */ lis r7, lbl_803DA9F0@ha +/* 801C2B28 001BFA88 7C 60 1B 78 */ mr r0, r3 +/* 801C2B2C 001BFA8C 39 00 00 0E */ li r8, 0xe +/* 801C2B30 001BFA90 C0 24 00 04 */ lfs f1, 4(r4) +/* 801C2B34 001BFA94 38 A0 FF FF */ li r5, -1 +/* 801C2B38 001BFA98 C0 04 00 08 */ lfs f0, 8(r4) +/* 801C2B3C 001BFA9C 38 E7 A9 F0 */ addi r7, r7, lbl_803DA9F0@l +/* 801C2B40 001BFAA0 91 21 00 08 */ stw r9, 8(r1) +/* 801C2B44 001BFAA4 50 C0 F0 42 */ rlwimi r0, r6, 0x1e, 1, 1 +/* 801C2B48 001BFAA8 3B EA 00 04 */ addi r31, r10, 4 +/* 801C2B4C 001BFAAC 38 80 00 0E */ li r4, 0xe +/* 801C2B50 001BFAB0 90 61 00 24 */ stw r3, 0x24(r1) +/* 801C2B54 001BFAB4 7F E3 FB 78 */ mr r3, r31 +/* 801C2B58 001BFAB8 91 01 00 0C */ stw r8, 0xc(r1) +/* 801C2B5C 001BFABC 90 E1 00 08 */ stw r7, 8(r1) +/* 801C2B60 001BFAC0 90 C1 00 10 */ stw r6, 0x10(r1) +/* 801C2B64 001BFAC4 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801C2B68 001BFAC8 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801C2B6C 001BFACC D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801C2B70 001BFAD0 90 A1 00 20 */ stw r5, 0x20(r1) +/* 801C2B74 001BFAD4 90 01 00 24 */ stw r0, 0x24(r1) +/* 801C2B78 001BFAD8 4B F6 E8 C1 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801C2B7C 001BFADC 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801C2B80 001BFAE0 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha +/* 801C2B84 001BFAE4 38 83 A9 F0 */ addi r4, r3, lbl_803DA9F0@l +/* 801C2B88 001BFAE8 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801C2B8C 001BFAEC 90 1F 01 90 */ stw r0, 0x190(r31) +/* 801C2B90 001BFAF0 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801C2B94 001BFAF4 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 801C2B98 001BFAF8 80 61 00 14 */ lwz r3, 0x14(r1) +/* 801C2B9C 001BFAFC 90 BF 01 94 */ stw r5, 0x194(r31) +/* 801C2BA0 001BFB00 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 801C2BA4 001BFB04 90 7F 01 98 */ stw r3, 0x198(r31) +/* 801C2BA8 001BFB08 80 61 00 1C */ lwz r3, 0x1c(r1) +/* 801C2BAC 001BFB0C 90 BF 01 9C */ stw r5, 0x19c(r31) +/* 801C2BB0 001BFB10 80 A1 00 20 */ lwz r5, 0x20(r1) +/* 801C2BB4 001BFB14 90 7F 01 A0 */ stw r3, 0x1a0(r31) +/* 801C2BB8 001BFB18 80 61 00 24 */ lwz r3, 0x24(r1) +/* 801C2BBC 001BFB1C 90 BF 01 A4 */ stw r5, 0x1a4(r31) +/* 801C2BC0 001BFB20 90 81 00 08 */ stw r4, 8(r1) +/* 801C2BC4 001BFB24 90 7F 01 A8 */ stw r3, 0x1a8(r31) +/* 801C2BC8 001BFB28 90 01 00 08 */ stw r0, 8(r1) +/* 801C2BCC 001BFB2C 48 00 00 3C */ b lbl_801C2C08 +lbl_801C2BD0: +/* 801C2BD0 001BFB30 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801C2BD4 001BFB34 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801C2BD8 001BFB38 2C 00 00 0C */ cmpwi r0, 0xc +/* 801C2BDC 001BFB3C 41 82 00 2C */ beq lbl_801C2C08 +/* 801C2BE0 001BFB40 38 00 00 03 */ li r0, 3 +/* 801C2BE4 001BFB44 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801C2BE8 001BFB48 48 00 00 20 */ b lbl_801C2C08 +lbl_801C2BEC: +/* 801C2BEC 001BFB4C 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801C2BF0 001BFB50 38 80 00 01 */ li r4, 1 +/* 801C2BF4 001BFB54 4B F7 7D E5 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 801C2BF8 001BFB58 80 7E 07 64 */ lwz r3, 0x764(r30) +/* 801C2BFC 001BFB5C 7F E4 FB 78 */ mr r4, r31 +/* 801C2C00 001BFB60 38 A0 00 01 */ li r5, 1 +/* 801C2C04 001BFB64 4B FE 46 F5 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb +lbl_801C2C08: +/* 801C2C08 001BFB68 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801C2C0C 001BFB6C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801C2C10 001BFB70 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801C2C14 001BFB74 7C 08 03 A6 */ mtlr r0 +/* 801C2C18 001BFB78 38 21 00 30 */ addi r1, r1, 0x30 +/* 801C2C1C 001BFB7C 4E 80 00 20 */ blr + +.global Generate__12CMetroidBetaFR13CStateManager9EStateMsgf +Generate__12CMetroidBetaFR13CStateManager9EStateMsgf: +/* 801C2C20 001BFB80 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 801C2C24 001BFB84 7C 08 02 A6 */ mflr r0 +/* 801C2C28 001BFB88 90 01 00 84 */ stw r0, 0x84(r1) +/* 801C2C2C 001BFB8C DB E1 00 70 */ stfd f31, 0x70(r1) +/* 801C2C30 001BFB90 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 +/* 801C2C34 001BFB94 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 801C2C38 001BFB98 2C 05 00 01 */ cmpwi r5, 1 +/* 801C2C3C 001BFB9C 7C 7F 1B 78 */ mr r31, r3 +/* 801C2C40 001BFBA0 41 82 00 78 */ beq lbl_801C2CB8 +/* 801C2C44 001BFBA4 40 80 00 10 */ bge lbl_801C2C54 +/* 801C2C48 001BFBA8 2C 05 00 00 */ cmpwi r5, 0 +/* 801C2C4C 001BFBAC 40 80 00 14 */ bge lbl_801C2C60 +/* 801C2C50 001BFBB0 48 00 04 4C */ b lbl_801C309C +lbl_801C2C54: +/* 801C2C54 001BFBB4 2C 05 00 03 */ cmpwi r5, 3 +/* 801C2C58 001BFBB8 40 80 04 44 */ bge lbl_801C309C +/* 801C2C5C 001BFBBC 48 00 03 F4 */ b lbl_801C3050 +lbl_801C2C60: +/* 801C2C60 001BFBC0 C0 3F 07 DC */ lfs f1, 0x7dc(r31) +/* 801C2C64 001BFBC4 C0 1F 06 5C */ lfs f0, 0x65c(r31) +/* 801C2C68 001BFBC8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C2C6C 001BFBCC 4C 41 13 82 */ cror 2, 1, 2 +/* 801C2C70 001BFBD0 40 82 00 14 */ bne lbl_801C2C84 +/* 801C2C74 001BFBD4 81 83 00 00 */ lwz r12, 0(r3) +/* 801C2C78 001BFBD8 81 8C 02 98 */ lwz r12, 0x298(r12) +/* 801C2C7C 001BFBDC 7D 89 03 A6 */ mtctr r12 +/* 801C2C80 001BFBE0 4E 80 04 21 */ bctrl +lbl_801C2C84: +/* 801C2C84 001BFBE4 38 60 00 01 */ li r3, 1 +/* 801C2C88 001BFBE8 90 7F 05 68 */ stw r3, 0x568(r31) +/* 801C2C8C 001BFBEC 80 9F 00 64 */ lwz r4, 0x64(r31) +/* 801C2C90 001BFBF0 C0 24 00 04 */ lfs f1, 4(r4) +/* 801C2C94 001BFBF4 C0 44 00 08 */ lfs f2, 8(r4) +/* 801C2C98 001BFBF8 C0 04 00 00 */ lfs f0, 0(r4) +/* 801C2C9C 001BFBFC D0 1F 07 C0 */ stfs f0, 0x7c0(r31) +/* 801C2CA0 001BFC00 D0 3F 07 C4 */ stfs f1, 0x7c4(r31) +/* 801C2CA4 001BFC04 D0 5F 07 C8 */ stfs f2, 0x7c8(r31) +/* 801C2CA8 001BFC08 88 1F 08 40 */ lbz r0, 0x840(r31) +/* 801C2CAC 001BFC0C 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801C2CB0 001BFC10 98 1F 08 40 */ stb r0, 0x840(r31) +/* 801C2CB4 001BFC14 48 00 03 E8 */ b lbl_801C309C +lbl_801C2CB8: +/* 801C2CB8 001BFC18 80 1F 05 68 */ lwz r0, 0x568(r31) +/* 801C2CBC 001BFC1C 2C 00 00 02 */ cmpwi r0, 2 +/* 801C2CC0 001BFC20 41 82 02 10 */ beq lbl_801C2ED0 +/* 801C2CC4 001BFC24 40 80 03 D8 */ bge lbl_801C309C +/* 801C2CC8 001BFC28 2C 00 00 01 */ cmpwi r0, 1 +/* 801C2CCC 001BFC2C 40 80 00 08 */ bge lbl_801C2CD4 +/* 801C2CD0 001BFC30 48 00 03 CC */ b lbl_801C309C +lbl_801C2CD4: +/* 801C2CD4 001BFC34 80 BF 04 50 */ lwz r5, 0x450(r31) +/* 801C2CD8 001BFC38 80 05 02 B8 */ lwz r0, 0x2b8(r5) +/* 801C2CDC 001BFC3C 2C 00 00 0C */ cmpwi r0, 0xc +/* 801C2CE0 001BFC40 40 82 00 34 */ bne lbl_801C2D14 +/* 801C2CE4 001BFC44 7C A3 2B 78 */ mr r3, r5 +/* 801C2CE8 001BFC48 4B F7 7B D1 */ bl GetAnimTimeRemaining__15CBodyControllerCFv +/* 801C2CEC 001BFC4C D0 3F 07 D8 */ stfs f1, 0x7d8(r31) +/* 801C2CF0 001BFC50 C0 02 AA 98 */ lfs f0, lbl_805AC7B8@sda21(r2) +/* 801C2CF4 001BFC54 C0 3F 07 D8 */ lfs f1, 0x7d8(r31) +/* 801C2CF8 001BFC58 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C2CFC 001BFC5C 40 81 00 0C */ ble lbl_801C2D08 +/* 801C2D00 001BFC60 38 00 00 02 */ li r0, 2 +/* 801C2D04 001BFC64 48 00 00 08 */ b lbl_801C2D0C +lbl_801C2D08: +/* 801C2D08 001BFC68 38 00 00 03 */ li r0, 3 +lbl_801C2D0C: +/* 801C2D0C 001BFC6C 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801C2D10 001BFC70 48 00 03 8C */ b lbl_801C309C +lbl_801C2D14: +/* 801C2D14 001BFC74 81 83 00 00 */ lwz r12, 0(r3) +/* 801C2D18 001BFC78 C0 22 AA 98 */ lfs f1, lbl_805AC7B8@sda21(r2) +/* 801C2D1C 001BFC7C 81 8C 01 8C */ lwz r12, 0x18c(r12) +/* 801C2D20 001BFC80 7D 89 03 A6 */ mtctr r12 +/* 801C2D24 001BFC84 4E 80 04 21 */ bctrl +/* 801C2D28 001BFC88 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C2D2C 001BFC8C 41 82 00 D4 */ beq lbl_801C2E00 +/* 801C2D30 001BFC90 3C C0 80 3E */ lis r6, lbl_803DAA68@ha +/* 801C2D34 001BFC94 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801C2D38 001BFC98 C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) +/* 801C2D3C 001BFC9C 39 46 AA 68 */ addi r10, r6, lbl_803DAA68@l +/* 801C2D40 001BFCA0 3D 00 80 3E */ lis r8, lbl_803DA9F0@ha +/* 801C2D44 001BFCA4 80 81 00 58 */ lwz r4, 0x58(r1) +/* 801C2D48 001BFCA8 38 A0 00 00 */ li r5, 0 +/* 801C2D4C 001BFCAC C0 23 00 04 */ lfs f1, 4(r3) +/* 801C2D50 001BFCB0 50 A4 F8 00 */ rlwimi r4, r5, 0x1f, 0, 0 +/* 801C2D54 001BFCB4 C0 03 00 08 */ lfs f0, 8(r3) +/* 801C2D58 001BFCB8 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801C2D5C 001BFCBC 7C 80 23 78 */ mr r0, r4 +/* 801C2D60 001BFCC0 90 81 00 58 */ stw r4, 0x58(r1) +/* 801C2D64 001BFCC4 39 20 00 0E */ li r9, 0xe +/* 801C2D68 001BFCC8 38 E0 00 02 */ li r7, 2 +/* 801C2D6C 001BFCCC 38 C0 FF FF */ li r6, -1 +/* 801C2D70 001BFCD0 50 A0 F0 42 */ rlwimi r0, r5, 0x1e, 1, 1 +/* 801C2D74 001BFCD4 3B E3 00 04 */ addi r31, r3, 4 +/* 801C2D78 001BFCD8 91 41 00 3C */ stw r10, 0x3c(r1) +/* 801C2D7C 001BFCDC 39 08 A9 F0 */ addi r8, r8, lbl_803DA9F0@l +/* 801C2D80 001BFCE0 7F E3 FB 78 */ mr r3, r31 +/* 801C2D84 001BFCE4 38 80 00 0E */ li r4, 0xe +/* 801C2D88 001BFCE8 91 21 00 40 */ stw r9, 0x40(r1) +/* 801C2D8C 001BFCEC 91 01 00 3C */ stw r8, 0x3c(r1) +/* 801C2D90 001BFCF0 90 E1 00 44 */ stw r7, 0x44(r1) +/* 801C2D94 001BFCF4 D0 41 00 48 */ stfs f2, 0x48(r1) +/* 801C2D98 001BFCF8 D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 801C2D9C 001BFCFC D0 01 00 50 */ stfs f0, 0x50(r1) +/* 801C2DA0 001BFD00 90 C1 00 54 */ stw r6, 0x54(r1) +/* 801C2DA4 001BFD04 90 01 00 58 */ stw r0, 0x58(r1) +/* 801C2DA8 001BFD08 4B F6 E6 91 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801C2DAC 001BFD0C 80 01 00 40 */ lwz r0, 0x40(r1) +/* 801C2DB0 001BFD10 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha +/* 801C2DB4 001BFD14 38 83 A9 F0 */ addi r4, r3, lbl_803DA9F0@l +/* 801C2DB8 001BFD18 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801C2DBC 001BFD1C 90 1F 01 90 */ stw r0, 0x190(r31) +/* 801C2DC0 001BFD20 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801C2DC4 001BFD24 80 A1 00 44 */ lwz r5, 0x44(r1) +/* 801C2DC8 001BFD28 80 61 00 48 */ lwz r3, 0x48(r1) +/* 801C2DCC 001BFD2C 90 BF 01 94 */ stw r5, 0x194(r31) +/* 801C2DD0 001BFD30 80 A1 00 4C */ lwz r5, 0x4c(r1) +/* 801C2DD4 001BFD34 90 7F 01 98 */ stw r3, 0x198(r31) +/* 801C2DD8 001BFD38 80 61 00 50 */ lwz r3, 0x50(r1) +/* 801C2DDC 001BFD3C 90 BF 01 9C */ stw r5, 0x19c(r31) +/* 801C2DE0 001BFD40 80 A1 00 54 */ lwz r5, 0x54(r1) +/* 801C2DE4 001BFD44 90 7F 01 A0 */ stw r3, 0x1a0(r31) +/* 801C2DE8 001BFD48 80 61 00 58 */ lwz r3, 0x58(r1) +/* 801C2DEC 001BFD4C 90 BF 01 A4 */ stw r5, 0x1a4(r31) +/* 801C2DF0 001BFD50 90 81 00 3C */ stw r4, 0x3c(r1) +/* 801C2DF4 001BFD54 90 7F 01 A8 */ stw r3, 0x1a8(r31) +/* 801C2DF8 001BFD58 90 01 00 3C */ stw r0, 0x3c(r1) +/* 801C2DFC 001BFD5C 48 00 02 A0 */ b lbl_801C309C +lbl_801C2E00: +/* 801C2E00 001BFD60 3C C0 80 3E */ lis r6, lbl_803DAA68@ha +/* 801C2E04 001BFD64 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801C2E08 001BFD68 C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) +/* 801C2E0C 001BFD6C 39 46 AA 68 */ addi r10, r6, lbl_803DAA68@l +/* 801C2E10 001BFD70 3D 00 80 3E */ lis r8, lbl_803DA9F0@ha +/* 801C2E14 001BFD74 80 81 00 38 */ lwz r4, 0x38(r1) +/* 801C2E18 001BFD78 38 A0 00 00 */ li r5, 0 +/* 801C2E1C 001BFD7C C0 23 00 04 */ lfs f1, 4(r3) +/* 801C2E20 001BFD80 50 A4 F8 00 */ rlwimi r4, r5, 0x1f, 0, 0 +/* 801C2E24 001BFD84 C0 03 00 08 */ lfs f0, 8(r3) +/* 801C2E28 001BFD88 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801C2E2C 001BFD8C 7C 80 23 78 */ mr r0, r4 +/* 801C2E30 001BFD90 90 81 00 38 */ stw r4, 0x38(r1) +/* 801C2E34 001BFD94 39 20 00 0E */ li r9, 0xe +/* 801C2E38 001BFD98 38 E0 00 07 */ li r7, 7 +/* 801C2E3C 001BFD9C 38 C0 FF FF */ li r6, -1 +/* 801C2E40 001BFDA0 50 A0 F0 42 */ rlwimi r0, r5, 0x1e, 1, 1 +/* 801C2E44 001BFDA4 3B E3 00 04 */ addi r31, r3, 4 +/* 801C2E48 001BFDA8 91 41 00 1C */ stw r10, 0x1c(r1) +/* 801C2E4C 001BFDAC 39 08 A9 F0 */ addi r8, r8, lbl_803DA9F0@l +/* 801C2E50 001BFDB0 7F E3 FB 78 */ mr r3, r31 +/* 801C2E54 001BFDB4 38 80 00 0E */ li r4, 0xe +/* 801C2E58 001BFDB8 91 21 00 20 */ stw r9, 0x20(r1) +/* 801C2E5C 001BFDBC 91 01 00 1C */ stw r8, 0x1c(r1) +/* 801C2E60 001BFDC0 90 E1 00 24 */ stw r7, 0x24(r1) +/* 801C2E64 001BFDC4 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 801C2E68 001BFDC8 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 801C2E6C 001BFDCC D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801C2E70 001BFDD0 90 C1 00 34 */ stw r6, 0x34(r1) +/* 801C2E74 001BFDD4 90 01 00 38 */ stw r0, 0x38(r1) +/* 801C2E78 001BFDD8 4B F6 E5 C1 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801C2E7C 001BFDDC 80 01 00 20 */ lwz r0, 0x20(r1) +/* 801C2E80 001BFDE0 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha +/* 801C2E84 001BFDE4 38 83 A9 F0 */ addi r4, r3, lbl_803DA9F0@l +/* 801C2E88 001BFDE8 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801C2E8C 001BFDEC 90 1F 01 90 */ stw r0, 0x190(r31) +/* 801C2E90 001BFDF0 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801C2E94 001BFDF4 80 A1 00 24 */ lwz r5, 0x24(r1) +/* 801C2E98 001BFDF8 80 61 00 28 */ lwz r3, 0x28(r1) +/* 801C2E9C 001BFDFC 90 BF 01 94 */ stw r5, 0x194(r31) +/* 801C2EA0 001BFE00 80 A1 00 2C */ lwz r5, 0x2c(r1) +/* 801C2EA4 001BFE04 90 7F 01 98 */ stw r3, 0x198(r31) +/* 801C2EA8 001BFE08 80 61 00 30 */ lwz r3, 0x30(r1) +/* 801C2EAC 001BFE0C 90 BF 01 9C */ stw r5, 0x19c(r31) +/* 801C2EB0 001BFE10 80 A1 00 34 */ lwz r5, 0x34(r1) +/* 801C2EB4 001BFE14 90 7F 01 A0 */ stw r3, 0x1a0(r31) +/* 801C2EB8 001BFE18 80 61 00 38 */ lwz r3, 0x38(r1) +/* 801C2EBC 001BFE1C 90 BF 01 A4 */ stw r5, 0x1a4(r31) +/* 801C2EC0 001BFE20 90 81 00 1C */ stw r4, 0x1c(r1) +/* 801C2EC4 001BFE24 90 7F 01 A8 */ stw r3, 0x1a8(r31) +/* 801C2EC8 001BFE28 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801C2ECC 001BFE2C 48 00 01 D0 */ b lbl_801C309C +lbl_801C2ED0: +/* 801C2ED0 001BFE30 80 BF 04 50 */ lwz r5, 0x450(r31) +/* 801C2ED4 001BFE34 80 05 02 B8 */ lwz r0, 0x2b8(r5) +/* 801C2ED8 001BFE38 2C 00 00 0C */ cmpwi r0, 0xc +/* 801C2EDC 001BFE3C 41 82 00 10 */ beq lbl_801C2EEC +/* 801C2EE0 001BFE40 38 00 00 03 */ li r0, 3 +/* 801C2EE4 001BFE44 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801C2EE8 001BFE48 48 00 01 B4 */ b lbl_801C309C +lbl_801C2EEC: +/* 801C2EEC 001BFE4C 81 83 00 00 */ lwz r12, 0(r3) +/* 801C2EF0 001BFE50 C0 22 AA 98 */ lfs f1, lbl_805AC7B8@sda21(r2) +/* 801C2EF4 001BFE54 81 8C 01 8C */ lwz r12, 0x18c(r12) +/* 801C2EF8 001BFE58 7D 89 03 A6 */ mtctr r12 +/* 801C2EFC 001BFE5C 4E 80 04 21 */ bctrl +/* 801C2F00 001BFE60 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C2F04 001BFE64 41 82 01 98 */ beq lbl_801C309C +/* 801C2F08 001BFE68 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801C2F0C 001BFE6C 88 03 03 00 */ lbz r0, 0x300(r3) +/* 801C2F10 001BFE70 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801C2F14 001BFE74 40 82 01 88 */ bne lbl_801C309C +/* 801C2F18 001BFE78 4B F7 79 A1 */ bl GetAnimTimeRemaining__15CBodyControllerCFv +/* 801C2F1C 001BFE7C C0 1F 07 C0 */ lfs f0, 0x7c0(r31) +/* 801C2F20 001BFE80 FF E0 08 90 */ fmr f31, f1 +/* 801C2F24 001BFE84 C0 22 AA A4 */ lfs f1, lbl_805AC7C4@sda21(r2) +/* 801C2F28 001BFE88 38 81 00 0C */ addi r4, r1, 0xc +/* 801C2F2C 001BFE8C D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801C2F30 001BFE90 38 6D 91 38 */ addi r3, r13, lbl_805A7CF8@sda21 +/* 801C2F34 001BFE94 38 AD 91 3C */ addi r5, r13, lbl_805A7CFC@sda21 +/* 801C2F38 001BFE98 C0 1F 07 C4 */ lfs f0, 0x7c4(r31) +/* 801C2F3C 001BFE9C D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801C2F40 001BFEA0 C0 1F 07 C8 */ lfs f0, 0x7c8(r31) +/* 801C2F44 001BFEA4 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801C2F48 001BFEA8 C0 1F 07 D8 */ lfs f0, 0x7d8(r31) +/* 801C2F4C 001BFEAC EC 1F 00 24 */ fdivs f0, f31, f0 +/* 801C2F50 001BFEB0 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801C2F54 001BFEB4 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801C2F58 001BFEB8 4B E4 93 5D */ bl "Clamp__5CMathFRCfRCfRCf" +/* 801C2F5C 001BFEBC C0 23 00 00 */ lfs f1, 0(r3) +/* 801C2F60 001BFEC0 C0 02 AA D0 */ lfs f0, lbl_805AC7F0@sda21(r2) +/* 801C2F64 001BFEC4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C2F68 001BFEC8 40 80 00 54 */ bge lbl_801C2FBC +/* 801C2F6C 001BFECC EC 21 00 24 */ fdivs f1, f1, f0 +/* 801C2F70 001BFED0 C0 42 AA AC */ lfs f2, lbl_805AC7CC@sda21(r2) +/* 801C2F74 001BFED4 C0 02 AA A4 */ lfs f0, lbl_805AC7C4@sda21(r2) +/* 801C2F78 001BFED8 38 81 00 08 */ addi r4, r1, 8 +/* 801C2F7C 001BFEDC 38 6D 91 40 */ addi r3, r13, lbl_805A7D00@sda21 +/* 801C2F80 001BFEE0 38 AD 91 44 */ addi r5, r13, lbl_805A7D04@sda21 +/* 801C2F84 001BFEE4 EC 02 00 7C */ fnmsubs f0, f2, f1, f0 +/* 801C2F88 001BFEE8 D0 01 00 08 */ stfs f0, 8(r1) +/* 801C2F8C 001BFEEC 4B E4 93 29 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 801C2F90 001BFEF0 C0 63 00 00 */ lfs f3, 0(r3) +/* 801C2F94 001BFEF4 C0 5F 07 C4 */ lfs f2, 0x7c4(r31) +/* 801C2F98 001BFEF8 C0 3F 07 C8 */ lfs f1, 0x7c8(r31) +/* 801C2F9C 001BFEFC C0 1F 07 C0 */ lfs f0, 0x7c0(r31) +/* 801C2FA0 001BFF00 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 801C2FA4 001BFF04 EC 23 00 72 */ fmuls f1, f3, f1 +/* 801C2FA8 001BFF08 EC 03 00 32 */ fmuls f0, f3, f0 +/* 801C2FAC 001BFF0C D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801C2FB0 001BFF10 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801C2FB4 001BFF14 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801C2FB8 001BFF18 48 00 00 80 */ b lbl_801C3038 +lbl_801C2FBC: +/* 801C2FBC 001BFF1C C0 42 AA F4 */ lfs f2, lbl_805AC814@sda21(r2) +/* 801C2FC0 001BFF20 C0 3F 07 D8 */ lfs f1, 0x7d8(r31) +/* 801C2FC4 001BFF24 C0 02 AA A4 */ lfs f0, lbl_805AC7C4@sda21(r2) +/* 801C2FC8 001BFF28 ED 02 00 72 */ fmuls f8, f2, f1 +/* 801C2FCC 001BFF2C C0 C2 AA AC */ lfs f6, lbl_805AC7CC@sda21(r2) +/* 801C2FD0 001BFF30 C0 BF 07 C0 */ lfs f5, 0x7c0(r31) +/* 801C2FD4 001BFF34 C0 9F 07 C4 */ lfs f4, 0x7c4(r31) +/* 801C2FD8 001BFF38 EC E0 40 24 */ fdivs f7, f0, f8 +/* 801C2FDC 001BFF3C C0 7F 07 C8 */ lfs f3, 0x7c8(r31) +/* 801C2FE0 001BFF40 C0 5F 07 B8 */ lfs f2, 0x7b8(r31) +/* 801C2FE4 001BFF44 C0 3F 07 BC */ lfs f1, 0x7bc(r31) +/* 801C2FE8 001BFF48 C0 1F 07 B4 */ lfs f0, 0x7b4(r31) +/* 801C2FEC 001BFF4C EC A6 01 72 */ fmuls f5, f6, f5 +/* 801C2FF0 001BFF50 EC 86 01 32 */ fmuls f4, f6, f4 +/* 801C2FF4 001BFF54 EC 66 00 F2 */ fmuls f3, f6, f3 +/* 801C2FF8 001BFF58 EC 00 28 28 */ fsubs f0, f0, f5 +/* 801C2FFC 001BFF5C EC 42 20 28 */ fsubs f2, f2, f4 +/* 801C3000 001BFF60 EC 21 18 28 */ fsubs f1, f1, f3 +/* 801C3004 001BFF64 EC C8 F8 28 */ fsubs f6, f8, f31 +/* 801C3008 001BFF68 EC 47 00 B2 */ fmuls f2, f7, f2 +/* 801C300C 001BFF6C EC 27 00 72 */ fmuls f1, f7, f1 +/* 801C3010 001BFF70 EC 07 00 32 */ fmuls f0, f7, f0 +/* 801C3014 001BFF74 EC 46 00 B2 */ fmuls f2, f6, f2 +/* 801C3018 001BFF78 EC 26 00 72 */ fmuls f1, f6, f1 +/* 801C301C 001BFF7C EC 06 00 32 */ fmuls f0, f6, f0 +/* 801C3020 001BFF80 EC 44 10 2A */ fadds f2, f4, f2 +/* 801C3024 001BFF84 EC 23 08 2A */ fadds f1, f3, f1 +/* 801C3028 001BFF88 EC 05 00 2A */ fadds f0, f5, f0 +/* 801C302C 001BFF8C D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801C3030 001BFF90 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801C3034 001BFF94 D0 21 00 18 */ stfs f1, 0x18(r1) +lbl_801C3038: +/* 801C3038 001BFF98 7F E3 FB 78 */ mr r3, r31 +/* 801C303C 001BFF9C 38 81 00 10 */ addi r4, r1, 0x10 +/* 801C3040 001BFFA0 4B FF E3 75 */ bl sub_801c13b4 +/* 801C3044 001BFFA4 7F E3 FB 78 */ mr r3, r31 +/* 801C3048 001BFFA8 4B FF E3 8D */ bl sub_801c13d4 +/* 801C304C 001BFFAC 48 00 00 50 */ b lbl_801C309C +lbl_801C3050: +/* 801C3050 001BFFB0 C0 22 AA 98 */ lfs f1, lbl_805AC7B8@sda21(r2) +/* 801C3054 001BFFB4 38 A0 00 00 */ li r5, 0 +/* 801C3058 001BFFB8 D0 3F 07 D8 */ stfs f1, 0x7d8(r31) +/* 801C305C 001BFFBC 88 1F 08 40 */ lbz r0, 0x840(r31) +/* 801C3060 001BFFC0 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 801C3064 001BFFC4 98 1F 08 40 */ stb r0, 0x840(r31) +/* 801C3068 001BFFC8 81 83 00 00 */ lwz r12, 0(r3) +/* 801C306C 001BFFCC 81 8C 01 8C */ lwz r12, 0x18c(r12) +/* 801C3070 001BFFD0 7D 89 03 A6 */ mtctr r12 +/* 801C3074 001BFFD4 4E 80 04 21 */ bctrl +/* 801C3078 001BFFD8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C307C 001BFFDC 41 82 00 18 */ beq lbl_801C3094 +/* 801C3080 001BFFE0 C0 1F 07 DC */ lfs f0, 0x7dc(r31) +/* 801C3084 001BFFE4 7F E3 FB 78 */ mr r3, r31 +/* 801C3088 001BFFE8 38 9F 07 B4 */ addi r4, r31, 0x7b4 +/* 801C308C 001BFFEC D0 1F 07 E0 */ stfs f0, 0x7e0(r31) +/* 801C3090 001BFFF0 4B FF E3 25 */ bl sub_801c13b4 +lbl_801C3094: +/* 801C3094 001BFFF4 7F E3 FB 78 */ mr r3, r31 +/* 801C3098 001BFFF8 4B FF E3 3D */ bl sub_801c13d4 +lbl_801C309C: +/* 801C309C 001BFFFC E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 +/* 801C30A0 001C0000 80 01 00 84 */ lwz r0, 0x84(r1) +/* 801C30A4 001C0004 CB E1 00 70 */ lfd f31, 0x70(r1) +/* 801C30A8 001C0008 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 801C30AC 001C000C 7C 08 03 A6 */ mtlr r0 +/* 801C30B0 001C0010 38 21 00 80 */ addi r1, r1, 0x80 +/* 801C30B4 001C0014 4E 80 00 20 */ blr + +.global TelegraphAttack__12CMetroidBetaFR13CStateManager9EStateMsgf +TelegraphAttack__12CMetroidBetaFR13CStateManager9EStateMsgf: +/* 801C30B8 001C0018 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801C30BC 001C001C 7C 08 02 A6 */ mflr r0 +/* 801C30C0 001C0020 2C 05 00 01 */ cmpwi r5, 1 +/* 801C30C4 001C0024 90 01 00 54 */ stw r0, 0x54(r1) +/* 801C30C8 001C0028 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801C30CC 001C002C 7C 7F 1B 78 */ mr r31, r3 +/* 801C30D0 001C0030 41 82 00 5C */ beq lbl_801C312C +/* 801C30D4 001C0034 40 80 00 10 */ bge lbl_801C30E4 +/* 801C30D8 001C0038 2C 05 00 00 */ cmpwi r5, 0 +/* 801C30DC 001C003C 40 80 00 14 */ bge lbl_801C30F0 +/* 801C30E0 001C0040 48 00 01 24 */ b lbl_801C3204 +lbl_801C30E4: +/* 801C30E4 001C0044 2C 05 00 03 */ cmpwi r5, 3 +/* 801C30E8 001C0048 40 80 01 1C */ bge lbl_801C3204 +/* 801C30EC 001C004C 48 00 01 08 */ b lbl_801C31F4 +lbl_801C30F0: +/* 801C30F0 001C0050 38 00 00 02 */ li r0, 2 +/* 801C30F4 001C0054 38 60 00 00 */ li r3, 0 +/* 801C30F8 001C0058 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801C30FC 001C005C C0 1F 06 48 */ lfs f0, 0x648(r31) +/* 801C3100 001C0060 D0 1F 07 98 */ stfs f0, 0x798(r31) +/* 801C3104 001C0064 88 1F 08 40 */ lbz r0, 0x840(r31) +/* 801C3108 001C0068 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f +/* 801C310C 001C006C 98 1F 08 40 */ stb r0, 0x840(r31) +/* 801C3110 001C0070 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801C3114 001C0074 38 63 00 04 */ addi r3, r3, 4 +/* 801C3118 001C0078 4B F6 E3 91 */ bl ClearLocomotionCmds__16CBodyStateCmdMgrFv +/* 801C311C 001C007C 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801C3120 001C0080 38 80 00 03 */ li r4, 3 +/* 801C3124 001C0084 4B F7 78 B5 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 801C3128 001C0088 48 00 00 DC */ b lbl_801C3204 +lbl_801C312C: +/* 801C312C 001C008C C0 5F 07 98 */ lfs f2, 0x798(r31) +/* 801C3130 001C0090 C0 02 AA 98 */ lfs f0, lbl_805AC7B8@sda21(r2) +/* 801C3134 001C0094 EC 22 08 28 */ fsubs f1, f2, f1 +/* 801C3138 001C0098 D0 3F 07 98 */ stfs f1, 0x798(r31) +/* 801C313C 001C009C C0 3F 07 98 */ lfs f1, 0x798(r31) +/* 801C3140 001C00A0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C3144 001C00A4 40 81 00 A4 */ ble lbl_801C31E8 +/* 801C3148 001C00A8 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 801C314C 001C00AC 38 61 00 14 */ addi r3, r1, 0x14 +/* 801C3150 001C00B0 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 801C3154 001C00B4 C0 24 00 50 */ lfs f1, 0x50(r4) +/* 801C3158 001C00B8 C0 64 00 60 */ lfs f3, 0x60(r4) +/* 801C315C 001C00BC C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 801C3160 001C00C0 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801C3164 001C00C4 C0 24 00 40 */ lfs f1, 0x40(r4) +/* 801C3168 001C00C8 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801C316C 001C00CC EC 43 10 28 */ fsubs f2, f3, f2 +/* 801C3170 001C00D0 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801C3174 001C00D4 D0 81 00 18 */ stfs f4, 0x18(r1) +/* 801C3178 001C00D8 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 801C317C 001C00DC D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801C3180 001C00E0 48 15 15 79 */ bl CanBeNormalized__9CVector3fCFv +/* 801C3184 001C00E4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C3188 001C00E8 41 82 00 7C */ beq lbl_801C3204 +/* 801C318C 001C00EC 38 61 00 08 */ addi r3, r1, 8 +/* 801C3190 001C00F0 38 81 00 14 */ addi r4, r1, 0x14 +/* 801C3194 001C00F4 48 15 16 BD */ bl AsNormalized__9CVector3fCFv +/* 801C3198 001C00F8 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801C319C 001C00FC C4 C3 66 A0 */ lfsu f6, skZero3f@l(r3) +/* 801C31A0 001C0100 C0 61 00 08 */ lfs f3, 8(r1) +/* 801C31A4 001C0104 38 81 00 20 */ addi r4, r1, 0x20 +/* 801C31A8 001C0108 C0 41 00 0C */ lfs f2, 0xc(r1) +/* 801C31AC 001C010C C0 A3 00 04 */ lfs f5, 4(r3) +/* 801C31B0 001C0110 C0 83 00 08 */ lfs f4, 8(r3) +/* 801C31B4 001C0114 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 801C31B8 001C0118 C0 02 AA A4 */ lfs f0, lbl_805AC7C4@sda21(r2) +/* 801C31BC 001C011C D0 C1 00 20 */ stfs f6, 0x20(r1) +/* 801C31C0 001C0120 D0 A1 00 24 */ stfs f5, 0x24(r1) +/* 801C31C4 001C0124 D0 81 00 28 */ stfs f4, 0x28(r1) +/* 801C31C8 001C0128 D0 61 00 2C */ stfs f3, 0x2c(r1) +/* 801C31CC 001C012C D0 41 00 30 */ stfs f2, 0x30(r1) +/* 801C31D0 001C0130 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 801C31D4 001C0134 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 801C31D8 001C0138 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801C31DC 001C013C 38 63 00 04 */ addi r3, r3, 4 +/* 801C31E0 001C0140 4B F6 E5 39 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 801C31E4 001C0144 48 00 00 20 */ b lbl_801C3204 +lbl_801C31E8: +/* 801C31E8 001C0148 38 00 00 03 */ li r0, 3 +/* 801C31EC 001C014C 90 1F 05 68 */ stw r0, 0x568(r31) +/* 801C31F0 001C0150 48 00 00 14 */ b lbl_801C3204 +lbl_801C31F4: +/* 801C31F4 001C0154 88 1F 08 40 */ lbz r0, 0x840(r31) +/* 801C31F8 001C0158 38 60 00 00 */ li r3, 0 +/* 801C31FC 001C015C 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f +/* 801C3200 001C0160 98 1F 08 40 */ stb r0, 0x840(r31) +lbl_801C3204: +/* 801C3204 001C0164 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801C3208 001C0168 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801C320C 001C016C 7C 08 03 A6 */ mtlr r0 +/* 801C3210 001C0170 38 21 00 50 */ addi r1, r1, 0x50 +/* 801C3214 001C0174 4E 80 00 20 */ blr + +.global SelectTarget__12CMetroidBetaFR13CStateManager9EStateMsgf +SelectTarget__12CMetroidBetaFR13CStateManager9EStateMsgf: +/* 801C3218 001C0178 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801C321C 001C017C 7C 08 02 A6 */ mflr r0 +/* 801C3220 001C0180 2C 05 00 01 */ cmpwi r5, 1 +/* 801C3224 001C0184 90 01 00 34 */ stw r0, 0x34(r1) +/* 801C3228 001C0188 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801C322C 001C018C 41 82 00 24 */ beq lbl_801C3250 +/* 801C3230 001C0190 40 80 01 78 */ bge lbl_801C33A8 +/* 801C3234 001C0194 2C 05 00 00 */ cmpwi r5, 0 +/* 801C3238 001C0198 40 80 00 0C */ bge lbl_801C3244 +/* 801C323C 001C019C 48 00 01 6C */ b lbl_801C33A8 +/* 801C3240 001C01A0 48 00 01 68 */ b lbl_801C33A8 +lbl_801C3244: +/* 801C3244 001C01A4 38 00 00 01 */ li r0, 1 +/* 801C3248 001C01A8 90 03 05 68 */ stw r0, 0x568(r3) +/* 801C324C 001C01AC 48 00 01 5C */ b lbl_801C33A8 +lbl_801C3250: +/* 801C3250 001C01B0 80 03 05 68 */ lwz r0, 0x568(r3) +/* 801C3254 001C01B4 2C 00 00 02 */ cmpwi r0, 2 +/* 801C3258 001C01B8 41 82 01 00 */ beq lbl_801C3358 +/* 801C325C 001C01BC 40 80 01 4C */ bge lbl_801C33A8 +/* 801C3260 001C01C0 2C 00 00 01 */ cmpwi r0, 1 +/* 801C3264 001C01C4 40 80 00 08 */ bge lbl_801C326C +/* 801C3268 001C01C8 48 00 01 40 */ b lbl_801C33A8 +lbl_801C326C: +/* 801C326C 001C01CC 81 43 04 50 */ lwz r10, 0x450(r3) +/* 801C3270 001C01D0 80 0A 02 B8 */ lwz r0, 0x2b8(r10) +/* 801C3274 001C01D4 2C 00 00 0C */ cmpwi r0, 0xc +/* 801C3278 001C01D8 40 82 00 10 */ bne lbl_801C3288 +/* 801C327C 001C01DC 38 00 00 02 */ li r0, 2 +/* 801C3280 001C01E0 90 03 05 68 */ stw r0, 0x568(r3) +/* 801C3284 001C01E4 48 00 01 24 */ b lbl_801C33A8 +lbl_801C3288: +/* 801C3288 001C01E8 3C C0 80 3E */ lis r6, lbl_803DAA68@ha +/* 801C328C 001C01EC 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801C3290 001C01F0 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 801C3294 001C01F4 80 81 00 24 */ lwz r4, 0x24(r1) +/* 801C3298 001C01F8 38 60 00 00 */ li r3, 0 +/* 801C329C 001C01FC 39 26 AA 68 */ addi r9, r6, lbl_803DAA68@l +/* 801C32A0 001C0200 50 64 F8 00 */ rlwimi r4, r3, 0x1f, 0, 0 +/* 801C32A4 001C0204 C0 45 00 00 */ lfs f2, 0(r5) +/* 801C32A8 001C0208 C0 25 00 04 */ lfs f1, 4(r5) +/* 801C32AC 001C020C 3C E0 80 3E */ lis r7, lbl_803DA9F0@ha +/* 801C32B0 001C0210 C0 05 00 08 */ lfs f0, 8(r5) +/* 801C32B4 001C0214 7C 80 23 78 */ mr r0, r4 +/* 801C32B8 001C0218 39 00 00 0E */ li r8, 0xe +/* 801C32BC 001C021C 38 C0 00 03 */ li r6, 3 +/* 801C32C0 001C0220 38 A0 FF FF */ li r5, -1 +/* 801C32C4 001C0224 3B EA 00 04 */ addi r31, r10, 4 +/* 801C32C8 001C0228 91 21 00 08 */ stw r9, 8(r1) +/* 801C32CC 001C022C 38 E7 A9 F0 */ addi r7, r7, lbl_803DA9F0@l +/* 801C32D0 001C0230 50 60 F0 42 */ rlwimi r0, r3, 0x1e, 1, 1 +/* 801C32D4 001C0234 7F E3 FB 78 */ mr r3, r31 +/* 801C32D8 001C0238 90 81 00 24 */ stw r4, 0x24(r1) +/* 801C32DC 001C023C 38 80 00 0E */ li r4, 0xe +/* 801C32E0 001C0240 91 01 00 0C */ stw r8, 0xc(r1) +/* 801C32E4 001C0244 90 E1 00 08 */ stw r7, 8(r1) +/* 801C32E8 001C0248 90 C1 00 10 */ stw r6, 0x10(r1) +/* 801C32EC 001C024C D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801C32F0 001C0250 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801C32F4 001C0254 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801C32F8 001C0258 90 A1 00 20 */ stw r5, 0x20(r1) +/* 801C32FC 001C025C 90 01 00 24 */ stw r0, 0x24(r1) +/* 801C3300 001C0260 4B F6 E1 39 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801C3304 001C0264 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801C3308 001C0268 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha +/* 801C330C 001C026C 38 83 A9 F0 */ addi r4, r3, lbl_803DA9F0@l +/* 801C3310 001C0270 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801C3314 001C0274 90 1F 01 90 */ stw r0, 0x190(r31) +/* 801C3318 001C0278 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801C331C 001C027C 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 801C3320 001C0280 80 61 00 14 */ lwz r3, 0x14(r1) +/* 801C3324 001C0284 90 BF 01 94 */ stw r5, 0x194(r31) +/* 801C3328 001C0288 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 801C332C 001C028C 90 7F 01 98 */ stw r3, 0x198(r31) +/* 801C3330 001C0290 80 61 00 1C */ lwz r3, 0x1c(r1) +/* 801C3334 001C0294 90 BF 01 9C */ stw r5, 0x19c(r31) +/* 801C3338 001C0298 80 A1 00 20 */ lwz r5, 0x20(r1) +/* 801C333C 001C029C 90 7F 01 A0 */ stw r3, 0x1a0(r31) +/* 801C3340 001C02A0 80 61 00 24 */ lwz r3, 0x24(r1) +/* 801C3344 001C02A4 90 BF 01 A4 */ stw r5, 0x1a4(r31) +/* 801C3348 001C02A8 90 81 00 08 */ stw r4, 8(r1) +/* 801C334C 001C02AC 90 7F 01 A8 */ stw r3, 0x1a8(r31) +/* 801C3350 001C02B0 90 01 00 08 */ stw r0, 8(r1) +/* 801C3354 001C02B4 48 00 00 54 */ b lbl_801C33A8 +lbl_801C3358: +/* 801C3358 001C02B8 80 A3 04 50 */ lwz r5, 0x450(r3) +/* 801C335C 001C02BC 80 05 02 B8 */ lwz r0, 0x2b8(r5) +/* 801C3360 001C02C0 2C 00 00 0C */ cmpwi r0, 0xc +/* 801C3364 001C02C4 41 82 00 10 */ beq lbl_801C3374 +/* 801C3368 001C02C8 38 00 00 03 */ li r0, 3 +/* 801C336C 001C02CC 90 03 05 68 */ stw r0, 0x568(r3) +/* 801C3370 001C02D0 48 00 00 38 */ b lbl_801C33A8 +lbl_801C3374: +/* 801C3374 001C02D4 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 801C3378 001C02D8 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801C337C 001C02DC C0 24 00 40 */ lfs f1, 0x40(r4) +/* 801C3380 001C02E0 C0 84 00 50 */ lfs f4, 0x50(r4) +/* 801C3384 001C02E4 C0 63 00 50 */ lfs f3, 0x50(r3) +/* 801C3388 001C02E8 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801C338C 001C02EC C0 44 00 60 */ lfs f2, 0x60(r4) +/* 801C3390 001C02F0 C0 23 00 60 */ lfs f1, 0x60(r3) +/* 801C3394 001C02F4 EC 64 18 28 */ fsubs f3, f4, f3 +/* 801C3398 001C02F8 D0 05 00 1C */ stfs f0, 0x1c(r5) +/* 801C339C 001C02FC EC 02 08 28 */ fsubs f0, f2, f1 +/* 801C33A0 001C0300 D0 65 00 20 */ stfs f3, 0x20(r5) +/* 801C33A4 001C0304 D0 05 00 24 */ stfs f0, 0x24(r5) +lbl_801C33A8: +/* 801C33A8 001C0308 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801C33AC 001C030C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801C33B0 001C0310 7C 08 03 A6 */ mtlr r0 +/* 801C33B4 001C0314 38 21 00 30 */ addi r1, r1, 0x30 +/* 801C33B8 001C0318 4E 80 00 20 */ blr + +.global TargetPatrol__12CMetroidBetaFR13CStateManager9EStateMsgf +TargetPatrol__12CMetroidBetaFR13CStateManager9EStateMsgf: +/* 801C33BC 001C031C 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801C33C0 001C0320 7C 08 02 A6 */ mflr r0 +/* 801C33C4 001C0324 90 01 00 54 */ stw r0, 0x54(r1) +/* 801C33C8 001C0328 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 801C33CC 001C032C F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 801C33D0 001C0330 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801C33D4 001C0334 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801C33D8 001C0338 93 A1 00 34 */ stw r29, 0x34(r1) +/* 801C33DC 001C033C 7C BF 2B 78 */ mr r31, r5 +/* 801C33E0 001C0340 FF E0 08 90 */ fmr f31, f1 +/* 801C33E4 001C0344 2C 1F 00 01 */ cmpwi r31, 1 +/* 801C33E8 001C0348 7C 7D 1B 78 */ mr r29, r3 +/* 801C33EC 001C034C 7C 9E 23 78 */ mr r30, r4 +/* 801C33F0 001C0350 41 82 00 C0 */ beq lbl_801C34B0 +/* 801C33F4 001C0354 40 80 01 80 */ bge lbl_801C3574 +/* 801C33F8 001C0358 2C 1F 00 00 */ cmpwi r31, 0 +/* 801C33FC 001C035C 40 80 00 08 */ bge lbl_801C3404 +/* 801C3400 001C0360 48 00 01 74 */ b lbl_801C3574 +lbl_801C3404: +/* 801C3404 001C0364 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 801C3408 001C0368 38 80 00 01 */ li r4, 1 +/* 801C340C 001C036C 4B F7 75 CD */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 801C3410 001C0370 7F A3 EB 78 */ mr r3, r29 +/* 801C3414 001C0374 7F C4 F3 78 */ mr r4, r30 +/* 801C3418 001C0378 81 9D 00 00 */ lwz r12, 0(r29) +/* 801C341C 001C037C C0 22 AA 98 */ lfs f1, lbl_805AC7B8@sda21(r2) +/* 801C3420 001C0380 81 8C 01 C0 */ lwz r12, 0x1c0(r12) +/* 801C3424 001C0384 7D 89 03 A6 */ mtctr r12 +/* 801C3428 001C0388 4E 80 04 21 */ bctrl +/* 801C342C 001C038C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C3430 001C0390 41 82 00 28 */ beq lbl_801C3458 +/* 801C3434 001C0394 FC 20 F8 90 */ fmr f1, f31 +/* 801C3438 001C0398 7F A3 EB 78 */ mr r3, r29 +/* 801C343C 001C039C 7F C4 F3 78 */ mr r4, r30 +/* 801C3440 001C03A0 7F E5 FB 78 */ mr r5, r31 +/* 801C3444 001C03A4 48 03 3A 31 */ bl Patrol__10CPatternedFR13CStateManager9EStateMsgf +/* 801C3448 001C03A8 7F A3 EB 78 */ mr r3, r29 +/* 801C344C 001C03AC 7F C4 F3 78 */ mr r4, r30 +/* 801C3450 001C03B0 48 03 1E 41 */ bl UpdateDest__10CPatternedFR13CStateManager +/* 801C3454 001C03B4 48 00 00 10 */ b lbl_801C3464 +lbl_801C3458: +/* 801C3458 001C03B8 7F A3 EB 78 */ mr r3, r29 +/* 801C345C 001C03BC 38 9D 03 A0 */ addi r4, r29, 0x3a0 +/* 801C3460 001C03C0 4B EB 96 FD */ bl SetDestPos__10CPatternedFRC9CVector3f +lbl_801C3464: +/* 801C3464 001C03C4 C0 1D 02 E0 */ lfs f0, 0x2e0(r29) +/* 801C3468 001C03C8 7F A3 EB 78 */ mr r3, r29 +/* 801C346C 001C03CC D0 1D 07 A8 */ stfs f0, 0x7a8(r29) +/* 801C3470 001C03D0 C0 1D 02 E4 */ lfs f0, 0x2e4(r29) +/* 801C3474 001C03D4 D0 1D 07 AC */ stfs f0, 0x7ac(r29) +/* 801C3478 001C03D8 C0 1D 02 E8 */ lfs f0, 0x2e8(r29) +/* 801C347C 001C03DC D0 1D 07 B0 */ stfs f0, 0x7b0(r29) +/* 801C3480 001C03E0 81 9D 00 00 */ lwz r12, 0(r29) +/* 801C3484 001C03E4 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801C3488 001C03E8 7D 89 03 A6 */ mtctr r12 +/* 801C348C 001C03EC 4E 80 04 21 */ bctrl +/* 801C3490 001C03F0 28 03 00 00 */ cmplwi r3, 0 +/* 801C3494 001C03F4 41 82 00 E0 */ beq lbl_801C3574 +/* 801C3498 001C03F8 FC 20 F8 90 */ fmr f1, f31 +/* 801C349C 001C03FC 7F A3 EB 78 */ mr r3, r29 +/* 801C34A0 001C0400 7F C4 F3 78 */ mr r4, r30 +/* 801C34A4 001C0404 7F E5 FB 78 */ mr r5, r31 +/* 801C34A8 001C0408 48 03 32 25 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 801C34AC 001C040C 48 00 00 C8 */ b lbl_801C3574 +lbl_801C34B0: +/* 801C34B0 001C0410 81 83 00 00 */ lwz r12, 0(r3) +/* 801C34B4 001C0414 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801C34B8 001C0418 7D 89 03 A6 */ mtctr r12 +/* 801C34BC 001C041C 4E 80 04 21 */ bctrl +/* 801C34C0 001C0420 28 03 00 00 */ cmplwi r3, 0 +/* 801C34C4 001C0424 41 82 00 40 */ beq lbl_801C3504 +/* 801C34C8 001C0428 7F A3 EB 78 */ mr r3, r29 +/* 801C34CC 001C042C 7F C4 F3 78 */ mr r4, r30 +/* 801C34D0 001C0430 81 9D 00 00 */ lwz r12, 0(r29) +/* 801C34D4 001C0434 C0 22 AA 98 */ lfs f1, lbl_805AC7B8@sda21(r2) +/* 801C34D8 001C0438 81 8C 01 90 */ lwz r12, 0x190(r12) +/* 801C34DC 001C043C 7D 89 03 A6 */ mtctr r12 +/* 801C34E0 001C0440 4E 80 04 21 */ bctrl +/* 801C34E4 001C0444 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C34E8 001C0448 40 82 00 1C */ bne lbl_801C3504 +/* 801C34EC 001C044C FC 20 F8 90 */ fmr f1, f31 +/* 801C34F0 001C0450 7F A3 EB 78 */ mr r3, r29 +/* 801C34F4 001C0454 7F C4 F3 78 */ mr r4, r30 +/* 801C34F8 001C0458 7F E5 FB 78 */ mr r5, r31 +/* 801C34FC 001C045C 48 03 31 D1 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 801C3500 001C0460 48 00 00 68 */ b lbl_801C3568 +lbl_801C3504: +/* 801C3504 001C0464 C0 22 AA F8 */ lfs f1, lbl_805AC818@sda21(r2) +/* 801C3508 001C0468 7F A5 EB 78 */ mr r5, r29 +/* 801C350C 001C046C 38 61 00 08 */ addi r3, r1, 8 +/* 801C3510 001C0470 38 9D 04 5C */ addi r4, r29, 0x45c +/* 801C3514 001C0474 38 DD 07 A8 */ addi r6, r29, 0x7a8 +/* 801C3518 001C0478 4B F7 B6 05 */ bl Arrival__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3ff +/* 801C351C 001C047C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801C3520 001C0480 C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) +/* 801C3524 001C0484 C0 C1 00 08 */ lfs f6, 8(r1) +/* 801C3528 001C0488 38 81 00 14 */ addi r4, r1, 0x14 +/* 801C352C 001C048C C0 A1 00 0C */ lfs f5, 0xc(r1) +/* 801C3530 001C0490 C0 81 00 10 */ lfs f4, 0x10(r1) +/* 801C3534 001C0494 C0 43 00 04 */ lfs f2, 4(r3) +/* 801C3538 001C0498 C0 23 00 08 */ lfs f1, 8(r3) +/* 801C353C 001C049C C0 02 AA A4 */ lfs f0, lbl_805AC7C4@sda21(r2) +/* 801C3540 001C04A0 D0 C1 00 14 */ stfs f6, 0x14(r1) +/* 801C3544 001C04A4 D0 A1 00 18 */ stfs f5, 0x18(r1) +/* 801C3548 001C04A8 D0 81 00 1C */ stfs f4, 0x1c(r1) +/* 801C354C 001C04AC D0 61 00 20 */ stfs f3, 0x20(r1) +/* 801C3550 001C04B0 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 801C3554 001C04B4 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 801C3558 001C04B8 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801C355C 001C04BC 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 801C3560 001C04C0 38 63 00 04 */ addi r3, r3, 4 +/* 801C3564 001C04C4 4B F6 E1 B5 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +lbl_801C3568: +/* 801C3568 001C04C8 7F A3 EB 78 */ mr r3, r29 +/* 801C356C 001C04CC 7F C4 F3 78 */ mr r4, r30 +/* 801C3570 001C04D0 4B FF DB A1 */ bl sub_801c1110 +lbl_801C3574: +/* 801C3574 001C04D4 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 801C3578 001C04D8 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801C357C 001C04DC CB E1 00 40 */ lfd f31, 0x40(r1) +/* 801C3580 001C04E0 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801C3584 001C04E4 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801C3588 001C04E8 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 801C358C 001C04EC 7C 08 03 A6 */ mtlr r0 +/* 801C3590 001C04F0 38 21 00 50 */ addi r1, r1, 0x50 +/* 801C3594 001C04F4 4E 80 00 20 */ blr + +.global Patrol__12CMetroidBetaFR13CStateManager9EStateMsgf +Patrol__12CMetroidBetaFR13CStateManager9EStateMsgf: +/* 801C3598 001C04F8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801C359C 001C04FC 7C 08 02 A6 */ mflr r0 +/* 801C35A0 001C0500 90 01 00 24 */ stw r0, 0x24(r1) +/* 801C35A4 001C0504 DB E1 00 18 */ stfd f31, 0x18(r1) +/* 801C35A8 001C0508 FF E0 08 90 */ fmr f31, f1 +/* 801C35AC 001C050C 93 E1 00 14 */ stw r31, 0x14(r1) +/* 801C35B0 001C0510 7C BF 2B 79 */ or. r31, r5, r5 +/* 801C35B4 001C0514 93 C1 00 10 */ stw r30, 0x10(r1) +/* 801C35B8 001C0518 7C 9E 23 78 */ mr r30, r4 +/* 801C35BC 001C051C 93 A1 00 0C */ stw r29, 0xc(r1) +/* 801C35C0 001C0520 7C 7D 1B 78 */ mr r29, r3 +/* 801C35C4 001C0524 41 82 00 08 */ beq lbl_801C35CC +/* 801C35C8 001C0528 48 00 00 20 */ b lbl_801C35E8 +lbl_801C35CC: +/* 801C35CC 001C052C 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 801C35D0 001C0530 38 80 00 01 */ li r4, 1 +/* 801C35D4 001C0534 4B F7 74 05 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 801C35D8 001C0538 88 1D 08 40 */ lbz r0, 0x840(r29) +/* 801C35DC 001C053C 38 60 00 00 */ li r3, 0 +/* 801C35E0 001C0540 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801C35E4 001C0544 98 1D 08 40 */ stb r0, 0x840(r29) +lbl_801C35E8: +/* 801C35E8 001C0548 FC 20 F8 90 */ fmr f1, f31 +/* 801C35EC 001C054C 7F A3 EB 78 */ mr r3, r29 +/* 801C35F0 001C0550 7F C4 F3 78 */ mr r4, r30 +/* 801C35F4 001C0554 7F E5 FB 78 */ mr r5, r31 +/* 801C35F8 001C0558 48 03 38 7D */ bl Patrol__10CPatternedFR13CStateManager9EStateMsgf +/* 801C35FC 001C055C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801C3600 001C0560 CB E1 00 18 */ lfd f31, 0x18(r1) +/* 801C3604 001C0564 83 E1 00 14 */ lwz r31, 0x14(r1) +/* 801C3608 001C0568 83 C1 00 10 */ lwz r30, 0x10(r1) +/* 801C360C 001C056C 83 A1 00 0C */ lwz r29, 0xc(r1) +/* 801C3610 001C0570 7C 08 03 A6 */ mtlr r0 +/* 801C3614 001C0574 38 21 00 20 */ addi r1, r1, 0x20 +/* 801C3618 001C0578 4E 80 00 20 */ blr + +.global SpecialAttack__12CMetroidBetaFR13CStateManager9EStateMsgf +SpecialAttack__12CMetroidBetaFR13CStateManager9EStateMsgf: +/* 801C361C 001C057C 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801C3620 001C0580 7C 08 02 A6 */ mflr r0 +/* 801C3624 001C0584 2C 05 00 01 */ cmpwi r5, 1 +/* 801C3628 001C0588 90 01 00 64 */ stw r0, 0x64(r1) +/* 801C362C 001C058C 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 801C3630 001C0590 7C 9F 23 78 */ mr r31, r4 +/* 801C3634 001C0594 93 C1 00 58 */ stw r30, 0x58(r1) +/* 801C3638 001C0598 7C 7E 1B 78 */ mr r30, r3 +/* 801C363C 001C059C 41 82 00 84 */ beq lbl_801C36C0 +/* 801C3640 001C05A0 40 80 00 10 */ bge lbl_801C3650 +/* 801C3644 001C05A4 2C 05 00 00 */ cmpwi r5, 0 +/* 801C3648 001C05A8 40 80 00 14 */ bge lbl_801C365C +/* 801C364C 001C05AC 48 00 02 48 */ b lbl_801C3894 +lbl_801C3650: +/* 801C3650 001C05B0 2C 05 00 03 */ cmpwi r5, 3 +/* 801C3654 001C05B4 40 80 02 40 */ bge lbl_801C3894 +/* 801C3658 001C05B8 48 00 01 B0 */ b lbl_801C3808 +lbl_801C365C: +/* 801C365C 001C05BC 38 00 00 02 */ li r0, 2 +/* 801C3660 001C05C0 38 A0 00 01 */ li r5, 1 +/* 801C3664 001C05C4 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801C3668 001C05C8 38 60 00 00 */ li r3, 0 +/* 801C366C 001C05CC 38 80 00 0A */ li r4, 0xa +/* 801C3670 001C05D0 88 1E 08 40 */ lbz r0, 0x840(r30) +/* 801C3674 001C05D4 50 A0 0F BC */ rlwimi r0, r5, 1, 0x1e, 0x1e +/* 801C3678 001C05D8 98 1E 08 40 */ stb r0, 0x840(r30) +/* 801C367C 001C05DC 54 05 FF FE */ rlwinm r5, r0, 0x1f, 0x1f, 0x1f +/* 801C3680 001C05E0 88 1E 08 40 */ lbz r0, 0x840(r30) +/* 801C3684 001C05E4 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d +/* 801C3688 001C05E8 98 1E 08 40 */ stb r0, 0x840(r30) +/* 801C368C 001C05EC 88 1E 08 40 */ lbz r0, 0x840(r30) +/* 801C3690 001C05F0 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f +/* 801C3694 001C05F4 98 1E 08 40 */ stb r0, 0x840(r30) +/* 801C3698 001C05F8 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801C369C 001C05FC 4B F7 73 3D */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 801C36A0 001C0600 C0 02 AA 98 */ lfs f0, lbl_805AC7B8@sda21(r2) +/* 801C36A4 001C0604 3C 60 80 57 */ lis r3, lbl_80572048@ha +/* 801C36A8 001C0608 38 A3 20 48 */ addi r5, r3, lbl_80572048@l +/* 801C36AC 001C060C 7F E4 FB 78 */ mr r4, r31 +/* 801C36B0 001C0610 D0 1E 07 A4 */ stfs f0, 0x7a4(r30) +/* 801C36B4 001C0614 7F C3 F3 78 */ mr r3, r30 +/* 801C36B8 001C0618 4B FF E2 05 */ bl sub_801c18bc +/* 801C36BC 001C061C 48 00 01 D8 */ b lbl_801C3894 +lbl_801C36C0: +/* 801C36C0 001C0620 80 1E 05 68 */ lwz r0, 0x568(r30) +/* 801C36C4 001C0624 2C 00 00 02 */ cmpwi r0, 2 +/* 801C36C8 001C0628 41 82 00 08 */ beq lbl_801C36D0 +/* 801C36CC 001C062C 48 00 01 C8 */ b lbl_801C3894 +lbl_801C36D0: +/* 801C36D0 001C0630 C0 1E 07 A4 */ lfs f0, 0x7a4(r30) +/* 801C36D4 001C0634 EC 00 08 2A */ fadds f0, f0, f1 +/* 801C36D8 001C0638 D0 1E 07 A4 */ stfs f0, 0x7a4(r30) +/* 801C36DC 001C063C C0 3E 07 A4 */ lfs f1, 0x7a4(r30) +/* 801C36E0 001C0640 C0 1E 06 4C */ lfs f0, 0x64c(r30) +/* 801C36E4 001C0644 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C36E8 001C0648 40 80 01 14 */ bge lbl_801C37FC +/* 801C36EC 001C064C 88 7E 08 40 */ lbz r3, 0x840(r30) +/* 801C36F0 001C0650 54 60 FF FF */ rlwinm. r0, r3, 0x1f, 0x1f, 0x1f +/* 801C36F4 001C0654 41 82 00 0C */ beq lbl_801C3700 +/* 801C36F8 001C0658 54 60 07 FF */ clrlwi. r0, r3, 0x1f +/* 801C36FC 001C065C 41 82 00 10 */ beq lbl_801C370C +lbl_801C3700: +/* 801C3700 001C0660 38 00 00 03 */ li r0, 3 +/* 801C3704 001C0664 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801C3708 001C0668 48 00 01 8C */ b lbl_801C3894 +lbl_801C370C: +/* 801C370C 001C066C 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 801C3710 001C0670 7F E5 FB 78 */ mr r5, r31 +/* 801C3714 001C0674 38 61 00 20 */ addi r3, r1, 0x20 +/* 801C3718 001C0678 C0 22 AA 98 */ lfs f1, lbl_805AC7B8@sda21(r2) +/* 801C371C 001C067C 81 84 00 00 */ lwz r12, 0(r4) +/* 801C3720 001C0680 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801C3724 001C0684 7D 89 03 A6 */ mtctr r12 +/* 801C3728 001C0688 4E 80 04 21 */ bctrl +/* 801C372C 001C068C C0 81 00 20 */ lfs f4, 0x20(r1) +/* 801C3730 001C0690 C0 41 00 24 */ lfs f2, 0x24(r1) +/* 801C3734 001C0694 C0 C1 00 28 */ lfs f6, 0x28(r1) +/* 801C3738 001C0698 D0 81 00 2C */ stfs f4, 0x2c(r1) +/* 801C373C 001C069C C0 02 AA 98 */ lfs f0, lbl_805AC7B8@sda21(r2) +/* 801C3740 001C06A0 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 801C3744 001C06A4 D0 C1 00 34 */ stfs f6, 0x34(r1) +/* 801C3748 001C06A8 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 801C374C 001C06AC C0 7E 00 40 */ lfs f3, 0x40(r30) +/* 801C3750 001C06B0 C0 BE 00 60 */ lfs f5, 0x60(r30) +/* 801C3754 001C06B4 EC 22 08 28 */ fsubs f1, f2, f1 +/* 801C3758 001C06B8 C0 5E 00 48 */ lfs f2, 0x48(r30) +/* 801C375C 001C06BC EC 64 18 28 */ fsubs f3, f4, f3 +/* 801C3760 001C06C0 C0 9E 00 38 */ lfs f4, 0x38(r30) +/* 801C3764 001C06C4 EC A6 28 28 */ fsubs f5, f6, f5 +/* 801C3768 001C06C8 EC 22 00 72 */ fmuls f1, f2, f1 +/* 801C376C 001C06CC C0 5E 00 58 */ lfs f2, 0x58(r30) +/* 801C3770 001C06D0 EC 24 08 FA */ fmadds f1, f4, f3, f1 +/* 801C3774 001C06D4 EC 22 09 7A */ fmadds f1, f2, f5, f1 +/* 801C3778 001C06D8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C377C 001C06DC 40 81 00 74 */ ble lbl_801C37F0 +/* 801C3780 001C06E0 7F C5 F3 78 */ mr r5, r30 +/* 801C3784 001C06E4 38 61 00 14 */ addi r3, r1, 0x14 +/* 801C3788 001C06E8 38 9E 04 5C */ addi r4, r30, 0x45c +/* 801C378C 001C06EC 38 C1 00 2C */ addi r6, r1, 0x2c +/* 801C3790 001C06F0 4B F7 B4 91 */ bl Seek__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3f +/* 801C3794 001C06F4 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801C3798 001C06F8 C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) +/* 801C379C 001C06FC C0 C1 00 14 */ lfs f6, 0x14(r1) +/* 801C37A0 001C0700 38 81 00 38 */ addi r4, r1, 0x38 +/* 801C37A4 001C0704 C0 A1 00 18 */ lfs f5, 0x18(r1) +/* 801C37A8 001C0708 C0 81 00 1C */ lfs f4, 0x1c(r1) +/* 801C37AC 001C070C C0 43 00 04 */ lfs f2, 4(r3) +/* 801C37B0 001C0710 C0 23 00 08 */ lfs f1, 8(r3) +/* 801C37B4 001C0714 C0 02 AA A4 */ lfs f0, lbl_805AC7C4@sda21(r2) +/* 801C37B8 001C0718 D0 C1 00 38 */ stfs f6, 0x38(r1) +/* 801C37BC 001C071C D0 A1 00 3C */ stfs f5, 0x3c(r1) +/* 801C37C0 001C0720 D0 81 00 40 */ stfs f4, 0x40(r1) +/* 801C37C4 001C0724 D0 61 00 44 */ stfs f3, 0x44(r1) +/* 801C37C8 001C0728 D0 41 00 48 */ stfs f2, 0x48(r1) +/* 801C37CC 001C072C D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 801C37D0 001C0730 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 801C37D4 001C0734 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801C37D8 001C0738 38 63 00 04 */ addi r3, r3, 4 +/* 801C37DC 001C073C 4B F6 DF 3D */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 801C37E0 001C0740 7F C3 F3 78 */ mr r3, r30 +/* 801C37E4 001C0744 7F E4 FB 78 */ mr r4, r31 +/* 801C37E8 001C0748 4B FF D9 29 */ bl sub_801c1110 +/* 801C37EC 001C074C 48 00 00 A8 */ b lbl_801C3894 +lbl_801C37F0: +/* 801C37F0 001C0750 38 00 00 03 */ li r0, 3 +/* 801C37F4 001C0754 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801C37F8 001C0758 48 00 00 9C */ b lbl_801C3894 +lbl_801C37FC: +/* 801C37FC 001C075C 38 00 00 03 */ li r0, 3 +/* 801C3800 001C0760 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801C3804 001C0764 48 00 00 90 */ b lbl_801C3894 +lbl_801C3808: +/* 801C3808 001C0768 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 801C380C 001C076C 48 14 EC D1 */ bl Float__9CRandom16Fv +/* 801C3810 001C0770 C0 7E 03 08 */ lfs f3, 0x308(r30) +/* 801C3814 001C0774 38 60 00 00 */ li r3, 0 +/* 801C3818 001C0778 C0 5E 03 04 */ lfs f2, 0x304(r30) +/* 801C381C 001C077C 38 80 00 02 */ li r4, 2 +/* 801C3820 001C0780 C0 02 AA 98 */ lfs f0, lbl_805AC7B8@sda21(r2) +/* 801C3824 001C0784 EC 23 10 7A */ fmadds f1, f3, f1, f2 +/* 801C3828 001C0788 D0 3E 07 94 */ stfs f1, 0x794(r30) +/* 801C382C 001C078C 88 1E 08 40 */ lbz r0, 0x840(r30) +/* 801C3830 001C0790 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 801C3834 001C0794 98 1E 08 40 */ stb r0, 0x840(r30) +/* 801C3838 001C0798 54 03 FF FE */ rlwinm r3, r0, 0x1f, 0x1f, 0x1f +/* 801C383C 001C079C 88 1E 08 40 */ lbz r0, 0x840(r30) +/* 801C3840 001C07A0 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801C3844 001C07A4 98 1E 08 40 */ stb r0, 0x840(r30) +/* 801C3848 001C07A8 D0 1E 07 A4 */ stfs f0, 0x7a4(r30) +/* 801C384C 001C07AC 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801C3850 001C07B0 4B F7 71 89 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 801C3854 001C07B4 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801C3858 001C07B8 7F C3 F3 78 */ mr r3, r30 +/* 801C385C 001C07BC 38 A4 66 A0 */ addi r5, r4, skZero3f@l +/* 801C3860 001C07C0 7F E4 FB 78 */ mr r4, r31 +/* 801C3864 001C07C4 4B FF E0 59 */ bl sub_801c18bc +/* 801C3868 001C07C8 A1 1E 00 08 */ lhz r8, 8(r30) +/* 801C386C 001C07CC 7F E4 FB 78 */ mr r4, r31 +/* 801C3870 001C07D0 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801C3874 001C07D4 38 C1 00 0C */ addi r6, r1, 0xc +/* 801C3878 001C07D8 B1 01 00 0C */ sth r8, 0xc(r1) +/* 801C387C 001C07DC 38 60 00 00 */ li r3, 0 +/* 801C3880 001C07E0 38 E0 00 01 */ li r7, 1 +/* 801C3884 001C07E4 A0 1E 06 78 */ lhz r0, 0x678(r30) +/* 801C3888 001C07E8 B1 01 00 08 */ sth r8, 8(r1) +/* 801C388C 001C07EC B0 01 00 10 */ sth r0, 0x10(r1) +/* 801C3890 001C07F0 48 07 66 41 */ bl ResetTeamAiRole__10CTeamAiMgrF11EAttackTypeR13CStateManager9TUniqueId9TUniqueIdb +lbl_801C3894: +/* 801C3894 001C07F4 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801C3898 001C07F8 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 801C389C 001C07FC 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 801C38A0 001C0800 7C 08 03 A6 */ mtlr r0 +/* 801C38A4 001C0804 38 21 00 60 */ addi r1, r1, 0x60 +/* 801C38A8 001C0808 4E 80 00 20 */ blr + +.global Attack__12CMetroidBetaFR13CStateManager9EStateMsgf +Attack__12CMetroidBetaFR13CStateManager9EStateMsgf: +/* 801C38AC 001C080C 94 21 FE 50 */ stwu r1, -0x1b0(r1) +/* 801C38B0 001C0810 7C 08 02 A6 */ mflr r0 +/* 801C38B4 001C0814 90 01 01 B4 */ stw r0, 0x1b4(r1) +/* 801C38B8 001C0818 DB E1 01 A0 */ stfd f31, 0x1a0(r1) +/* 801C38BC 001C081C F3 E1 01 A8 */ psq_st f31, 424(r1), 0, qr0 +/* 801C38C0 001C0820 DB C1 01 90 */ stfd f30, 0x190(r1) +/* 801C38C4 001C0824 F3 C1 01 98 */ psq_st f30, 408(r1), 0, qr0 +/* 801C38C8 001C0828 DB A1 01 80 */ stfd f29, 0x180(r1) +/* 801C38CC 001C082C F3 A1 01 88 */ psq_st f29, 392(r1), 0, qr0 +/* 801C38D0 001C0830 DB 81 01 70 */ stfd f28, 0x170(r1) +/* 801C38D4 001C0834 F3 81 01 78 */ psq_st f28, 376(r1), 0, qr0 +/* 801C38D8 001C0838 93 E1 01 6C */ stw r31, 0x16c(r1) +/* 801C38DC 001C083C 93 C1 01 68 */ stw r30, 0x168(r1) +/* 801C38E0 001C0840 93 A1 01 64 */ stw r29, 0x164(r1) +/* 801C38E4 001C0844 7C 9F 23 78 */ mr r31, r4 +/* 801C38E8 001C0848 2C 05 00 01 */ cmpwi r5, 1 +/* 801C38EC 001C084C 83 A4 08 4C */ lwz r29, 0x84c(r4) +/* 801C38F0 001C0850 7C 7E 1B 78 */ mr r30, r3 +/* 801C38F4 001C0854 41 82 00 B4 */ beq lbl_801C39A8 +/* 801C38F8 001C0858 40 80 00 10 */ bge lbl_801C3908 +/* 801C38FC 001C085C 2C 05 00 00 */ cmpwi r5, 0 +/* 801C3900 001C0860 40 80 00 14 */ bge lbl_801C3914 +/* 801C3904 001C0864 48 00 04 24 */ b lbl_801C3D28 +lbl_801C3908: +/* 801C3908 001C0868 2C 05 00 03 */ cmpwi r5, 3 +/* 801C390C 001C086C 40 80 04 1C */ bge lbl_801C3D28 +/* 801C3910 001C0870 48 00 03 18 */ b lbl_801C3C28 +lbl_801C3914: +/* 801C3914 001C0874 38 00 00 02 */ li r0, 2 +/* 801C3918 001C0878 C0 02 AA 98 */ lfs f0, lbl_805AC7B8@sda21(r2) +/* 801C391C 001C087C 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801C3920 001C0880 38 60 00 01 */ li r3, 1 +/* 801C3924 001C0884 38 80 00 06 */ li r4, 6 +/* 801C3928 001C0888 D0 1E 07 9C */ stfs f0, 0x79c(r30) +/* 801C392C 001C088C 88 1E 08 40 */ lbz r0, 0x840(r30) +/* 801C3930 001C0890 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801C3934 001C0894 98 1E 08 40 */ stb r0, 0x840(r30) +/* 801C3938 001C0898 88 1E 08 40 */ lbz r0, 0x840(r30) +/* 801C393C 001C089C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801C3940 001C08A0 98 1E 08 40 */ stb r0, 0x840(r30) +/* 801C3944 001C08A4 D0 1E 08 3C */ stfs f0, 0x83c(r30) +/* 801C3948 001C08A8 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801C394C 001C08AC 4B F7 70 8D */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 801C3950 001C08B0 A0 1E 00 08 */ lhz r0, 8(r30) +/* 801C3954 001C08B4 38 7D 02 74 */ addi r3, r29, 0x274 +/* 801C3958 001C08B8 C0 22 AA A4 */ lfs f1, lbl_805AC7C4@sda21(r2) +/* 801C395C 001C08BC 38 81 00 30 */ addi r4, r1, 0x30 +/* 801C3960 001C08C0 B0 01 00 2C */ sth r0, 0x2c(r1) +/* 801C3964 001C08C4 B0 01 00 30 */ sth r0, 0x30(r1) +/* 801C3968 001C08C8 4B FF 0F 2D */ bl sub_801b4894 +/* 801C396C 001C08CC 80 1D 02 F8 */ lwz r0, 0x2f8(r29) +/* 801C3970 001C08D0 2C 00 00 01 */ cmpwi r0, 1 +/* 801C3974 001C08D4 41 82 03 B4 */ beq lbl_801C3D28 +/* 801C3978 001C08D8 7F A3 EB 78 */ mr r3, r29 +/* 801C397C 001C08DC 7F E5 FB 78 */ mr r5, r31 +/* 801C3980 001C08E0 38 80 00 04 */ li r4, 4 +/* 801C3984 001C08E4 4B FB 7B 11 */ bl SetOrbitState__7CPlayerFQ27CPlayer17EPlayerOrbitStateR13CStateManager +/* 801C3988 001C08E8 A0 1E 00 08 */ lhz r0, 8(r30) +/* 801C398C 001C08EC 7F A3 EB 78 */ mr r3, r29 +/* 801C3990 001C08F0 7F E5 FB 78 */ mr r5, r31 +/* 801C3994 001C08F4 38 81 00 28 */ addi r4, r1, 0x28 +/* 801C3998 001C08F8 B0 01 00 24 */ sth r0, 0x24(r1) +/* 801C399C 001C08FC B0 01 00 28 */ sth r0, 0x28(r1) +/* 801C39A0 001C0900 4B FB 7C 4D */ bl SetOrbitTargetId__7CPlayerF9TUniqueIdR13CStateManager +/* 801C39A4 001C0904 48 00 03 84 */ b lbl_801C3D28 +lbl_801C39A8: +/* 801C39A8 001C0908 4B FF EC F1 */ bl sub_801c2698 +/* 801C39AC 001C090C 7F C4 F3 78 */ mr r4, r30 +/* 801C39B0 001C0910 7F E5 FB 78 */ mr r5, r31 +/* 801C39B4 001C0914 38 61 00 C0 */ addi r3, r1, 0xc0 +/* 801C39B8 001C0918 4B FF DC 21 */ bl sub_801c15d8 +/* 801C39BC 001C091C C3 A1 00 C0 */ lfs f29, 0xc0(r1) +/* 801C39C0 001C0920 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801C39C4 001C0924 C3 E1 00 C4 */ lfs f31, 0xc4(r1) +/* 801C39C8 001C0928 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 801C39CC 001C092C EC 00 E8 28 */ fsubs f0, f0, f29 +/* 801C39D0 001C0930 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 801C39D4 001C0934 EC A1 F8 28 */ fsubs f5, f1, f31 +/* 801C39D8 001C0938 C3 C1 00 C8 */ lfs f30, 0xc8(r1) +/* 801C39DC 001C093C C0 62 AA 98 */ lfs f3, lbl_805AC7B8@sda21(r2) +/* 801C39E0 001C0940 EC 20 00 32 */ fmuls f1, f0, f0 +/* 801C39E4 001C0944 EC 82 F0 28 */ fsubs f4, f2, f30 +/* 801C39E8 001C0948 D0 01 01 04 */ stfs f0, 0x104(r1) +/* 801C39EC 001C094C EC 05 01 72 */ fmuls f0, f5, f5 +/* 801C39F0 001C0950 D0 A1 01 08 */ stfs f5, 0x108(r1) +/* 801C39F4 001C0954 EC 43 00 F2 */ fmuls f2, f3, f3 +/* 801C39F8 001C0958 D0 81 01 0C */ stfs f4, 0x10c(r1) +/* 801C39FC 001C095C EC 01 00 2A */ fadds f0, f1, f0 +/* 801C3A00 001C0960 D0 61 01 0C */ stfs f3, 0x10c(r1) +/* 801C3A04 001C0964 C3 9E 02 FC */ lfs f28, 0x2fc(r30) +/* 801C3A08 001C0968 EC 22 00 2A */ fadds f1, f2, f0 +/* 801C3A0C 001C096C EC 1C 07 32 */ fmuls f0, f28, f28 +/* 801C3A10 001C0970 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C3A14 001C0974 4C 41 13 82 */ cror 2, 1, 2 +/* 801C3A18 001C0978 40 82 00 A0 */ bne lbl_801C3AB8 +/* 801C3A1C 001C097C 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 801C3A20 001C0980 38 81 01 04 */ addi r4, r1, 0x104 +/* 801C3A24 001C0984 48 15 0E 2D */ bl AsNormalized__9CVector3fCFv +/* 801C3A28 001C0988 C0 41 00 B4 */ lfs f2, 0xb4(r1) +/* 801C3A2C 001C098C 7F C5 F3 78 */ mr r5, r30 +/* 801C3A30 001C0990 C0 21 00 B8 */ lfs f1, 0xb8(r1) +/* 801C3A34 001C0994 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 801C3A38 001C0998 C0 01 00 BC */ lfs f0, 0xbc(r1) +/* 801C3A3C 001C099C EC 5C 00 B2 */ fmuls f2, f28, f2 +/* 801C3A40 001C09A0 EC 3C 00 72 */ fmuls f1, f28, f1 +/* 801C3A44 001C09A4 38 9E 04 5C */ addi r4, r30, 0x45c +/* 801C3A48 001C09A8 EC 1C 00 32 */ fmuls f0, f28, f0 +/* 801C3A4C 001C09AC 38 C1 00 F8 */ addi r6, r1, 0xf8 +/* 801C3A50 001C09B0 EC 5D 10 2A */ fadds f2, f29, f2 +/* 801C3A54 001C09B4 EC 3F 08 2A */ fadds f1, f31, f1 +/* 801C3A58 001C09B8 EC 1E 00 2A */ fadds f0, f30, f0 +/* 801C3A5C 001C09BC D0 41 00 F8 */ stfs f2, 0xf8(r1) +/* 801C3A60 001C09C0 D0 21 00 FC */ stfs f1, 0xfc(r1) +/* 801C3A64 001C09C4 D0 01 01 00 */ stfs f0, 0x100(r1) +/* 801C3A68 001C09C8 4B F7 B1 B9 */ bl Seek__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3f +/* 801C3A6C 001C09CC 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801C3A70 001C09D0 C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) +/* 801C3A74 001C09D4 C0 C1 00 A8 */ lfs f6, 0xa8(r1) +/* 801C3A78 001C09D8 38 81 01 10 */ addi r4, r1, 0x110 +/* 801C3A7C 001C09DC C0 A1 00 AC */ lfs f5, 0xac(r1) +/* 801C3A80 001C09E0 C0 81 00 B0 */ lfs f4, 0xb0(r1) +/* 801C3A84 001C09E4 C0 43 00 04 */ lfs f2, 4(r3) +/* 801C3A88 001C09E8 C0 23 00 08 */ lfs f1, 8(r3) +/* 801C3A8C 001C09EC C0 02 AA A4 */ lfs f0, lbl_805AC7C4@sda21(r2) +/* 801C3A90 001C09F0 D0 C1 01 10 */ stfs f6, 0x110(r1) +/* 801C3A94 001C09F4 D0 A1 01 14 */ stfs f5, 0x114(r1) +/* 801C3A98 001C09F8 D0 81 01 18 */ stfs f4, 0x118(r1) +/* 801C3A9C 001C09FC D0 61 01 1C */ stfs f3, 0x11c(r1) +/* 801C3AA0 001C0A00 D0 41 01 20 */ stfs f2, 0x120(r1) +/* 801C3AA4 001C0A04 D0 21 01 24 */ stfs f1, 0x124(r1) +/* 801C3AA8 001C0A08 D0 01 01 28 */ stfs f0, 0x128(r1) +/* 801C3AAC 001C0A0C 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801C3AB0 001C0A10 38 63 00 04 */ addi r3, r3, 4 +/* 801C3AB4 001C0A14 4B F6 DC 65 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +lbl_801C3AB8: +/* 801C3AB8 001C0A18 C0 41 01 0C */ lfs f2, 0x10c(r1) +/* 801C3ABC 001C0A1C 38 61 00 EC */ addi r3, r1, 0xec +/* 801C3AC0 001C0A20 C0 21 01 08 */ lfs f1, 0x108(r1) +/* 801C3AC4 001C0A24 C0 01 01 04 */ lfs f0, 0x104(r1) +/* 801C3AC8 001C0A28 FC 40 10 50 */ fneg f2, f2 +/* 801C3ACC 001C0A2C FC 20 08 50 */ fneg f1, f1 +/* 801C3AD0 001C0A30 FC 00 00 50 */ fneg f0, f0 +/* 801C3AD4 001C0A34 D0 41 00 F4 */ stfs f2, 0xf4(r1) +/* 801C3AD8 001C0A38 D0 01 00 EC */ stfs f0, 0xec(r1) +/* 801C3ADC 001C0A3C D0 21 00 F0 */ stfs f1, 0xf0(r1) +/* 801C3AE0 001C0A40 48 15 0C 19 */ bl CanBeNormalized__9CVector3fCFv +/* 801C3AE4 001C0A44 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C3AE8 001C0A48 41 82 01 20 */ beq lbl_801C3C08 +/* 801C3AEC 001C0A4C 38 61 00 9C */ addi r3, r1, 0x9c +/* 801C3AF0 001C0A50 38 81 00 EC */ addi r4, r1, 0xec +/* 801C3AF4 001C0A54 48 15 0D 5D */ bl AsNormalized__9CVector3fCFv +/* 801C3AF8 001C0A58 C0 DE 00 58 */ lfs f6, 0x58(r30) +/* 801C3AFC 001C0A5C 38 61 00 8C */ addi r3, r1, 0x8c +/* 801C3B00 001C0A60 C0 BE 00 48 */ lfs f5, 0x48(r30) +/* 801C3B04 001C0A64 38 81 00 80 */ addi r4, r1, 0x80 +/* 801C3B08 001C0A68 C0 9E 00 38 */ lfs f4, 0x38(r30) +/* 801C3B0C 001C0A6C 38 A1 00 74 */ addi r5, r1, 0x74 +/* 801C3B10 001C0A70 C0 62 AA D4 */ lfs f3, lbl_805AC7F4@sda21(r2) +/* 801C3B14 001C0A74 38 C1 00 34 */ addi r6, r1, 0x34 +/* 801C3B18 001C0A78 C0 41 00 9C */ lfs f2, 0x9c(r1) +/* 801C3B1C 001C0A7C C0 21 00 A0 */ lfs f1, 0xa0(r1) +/* 801C3B20 001C0A80 C0 01 00 A4 */ lfs f0, 0xa4(r1) +/* 801C3B24 001C0A84 D0 61 00 34 */ stfs f3, 0x34(r1) +/* 801C3B28 001C0A88 D0 41 00 74 */ stfs f2, 0x74(r1) +/* 801C3B2C 001C0A8C D0 21 00 78 */ stfs f1, 0x78(r1) +/* 801C3B30 001C0A90 D0 01 00 7C */ stfs f0, 0x7c(r1) +/* 801C3B34 001C0A94 D0 81 00 80 */ stfs f4, 0x80(r1) +/* 801C3B38 001C0A98 D0 A1 00 84 */ stfs f5, 0x84(r1) +/* 801C3B3C 001C0A9C D0 C1 00 88 */ stfs f6, 0x88(r1) +/* 801C3B40 001C0AA0 48 14 DB 55 */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle +/* 801C3B44 001C0AA4 C0 61 00 8C */ lfs f3, 0x8c(r1) +/* 801C3B48 001C0AA8 38 61 00 54 */ addi r3, r1, 0x54 +/* 801C3B4C 001C0AAC C0 41 00 90 */ lfs f2, 0x90(r1) +/* 801C3B50 001C0AB0 38 9E 00 34 */ addi r4, r30, 0x34 +/* 801C3B54 001C0AB4 C0 21 00 94 */ lfs f1, 0x94(r1) +/* 801C3B58 001C0AB8 C0 01 00 98 */ lfs f0, 0x98(r1) +/* 801C3B5C 001C0ABC D0 61 00 DC */ stfs f3, 0xdc(r1) +/* 801C3B60 001C0AC0 D0 41 00 E0 */ stfs f2, 0xe0(r1) +/* 801C3B64 001C0AC4 D0 21 00 E4 */ stfs f1, 0xe4(r1) +/* 801C3B68 001C0AC8 D0 01 00 E8 */ stfs f0, 0xe8(r1) +/* 801C3B6C 001C0ACC 48 14 E5 BD */ bl FromMatrix__11CQuaternionFRC12CTransform4f +/* 801C3B70 001C0AD0 38 61 00 64 */ addi r3, r1, 0x64 +/* 801C3B74 001C0AD4 38 81 00 54 */ addi r4, r1, 0x54 +/* 801C3B78 001C0AD8 38 A1 00 DC */ addi r5, r1, 0xdc +/* 801C3B7C 001C0ADC 48 14 D6 25 */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 801C3B80 001C0AE0 C0 61 00 64 */ lfs f3, 0x64(r1) +/* 801C3B84 001C0AE4 38 61 00 44 */ addi r3, r1, 0x44 +/* 801C3B88 001C0AE8 C0 41 00 68 */ lfs f2, 0x68(r1) +/* 801C3B8C 001C0AEC 38 81 00 CC */ addi r4, r1, 0xcc +/* 801C3B90 001C0AF0 C0 21 00 6C */ lfs f1, 0x6c(r1) +/* 801C3B94 001C0AF4 C0 01 00 70 */ lfs f0, 0x70(r1) +/* 801C3B98 001C0AF8 D0 61 00 CC */ stfs f3, 0xcc(r1) +/* 801C3B9C 001C0AFC D0 41 00 D0 */ stfs f2, 0xd0(r1) +/* 801C3BA0 001C0B00 D0 21 00 D4 */ stfs f1, 0xd4(r1) +/* 801C3BA4 001C0B04 D0 01 00 D8 */ stfs f0, 0xd8(r1) +/* 801C3BA8 001C0B08 48 14 D7 F5 */ bl BuildNormalized__11CQuaternionCFv +/* 801C3BAC 001C0B0C C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 801C3BB0 001C0B10 38 61 01 2C */ addi r3, r1, 0x12c +/* 801C3BB4 001C0B14 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 801C3BB8 001C0B18 38 81 00 44 */ addi r4, r1, 0x44 +/* 801C3BBC 001C0B1C C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801C3BC0 001C0B20 38 A1 00 38 */ addi r5, r1, 0x38 +/* 801C3BC4 001C0B24 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 801C3BC8 001C0B28 D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 801C3BCC 001C0B2C D0 41 00 40 */ stfs f2, 0x40(r1) +/* 801C3BD0 001C0B30 48 14 E2 ED */ bl BuildTransform4f__11CQuaternionCFRC9CVector3f +/* 801C3BD4 001C0B34 38 7E 00 34 */ addi r3, r30, 0x34 +/* 801C3BD8 001C0B38 38 81 01 2C */ addi r4, r1, 0x12c +/* 801C3BDC 001C0B3C 48 14 EF 65 */ bl __as__12CTransform4fFRC12CTransform4f +/* 801C3BE0 001C0B40 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 801C3BE4 001C0B44 38 60 00 01 */ li r3, 1 +/* 801C3BE8 001C0B48 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801C3BEC 001C0B4C 98 1E 00 E4 */ stb r0, 0xe4(r30) +/* 801C3BF0 001C0B50 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 801C3BF4 001C0B54 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801C3BF8 001C0B58 98 1E 00 E4 */ stb r0, 0xe4(r30) +/* 801C3BFC 001C0B5C 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 801C3C00 001C0B60 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801C3C04 001C0B64 98 1E 00 E4 */ stb r0, 0xe4(r30) +lbl_801C3C08: +/* 801C3C08 001C0B68 7F C3 F3 78 */ mr r3, r30 +/* 801C3C0C 001C0B6C 7F E4 FB 78 */ mr r4, r31 +/* 801C3C10 001C0B70 4B FF EC 75 */ bl sub_801c2884 +/* 801C3C14 001C0B74 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C3C18 001C0B78 41 82 01 10 */ beq lbl_801C3D28 +/* 801C3C1C 001C0B7C 38 00 00 03 */ li r0, 3 +/* 801C3C20 001C0B80 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801C3C24 001C0B84 48 00 01 04 */ b lbl_801C3D28 +lbl_801C3C28: +/* 801C3C28 001C0B88 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801C3C2C 001C0B8C 38 80 00 02 */ li r4, 2 +/* 801C3C30 001C0B90 4B F7 6D A9 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 801C3C34 001C0B94 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 801C3C38 001C0B98 48 14 E8 A5 */ bl Float__9CRandom16Fv +/* 801C3C3C 001C0B9C C0 7E 03 08 */ lfs f3, 0x308(r30) +/* 801C3C40 001C0BA0 38 A0 00 00 */ li r5, 0 +/* 801C3C44 001C0BA4 C0 5E 03 04 */ lfs f2, 0x304(r30) +/* 801C3C48 001C0BA8 7F C3 F3 78 */ mr r3, r30 +/* 801C3C4C 001C0BAC C0 02 AA 98 */ lfs f0, lbl_805AC7B8@sda21(r2) +/* 801C3C50 001C0BB0 7F E4 FB 78 */ mr r4, r31 +/* 801C3C54 001C0BB4 EC 23 10 7A */ fmadds f1, f3, f1, f2 +/* 801C3C58 001C0BB8 D0 3E 07 94 */ stfs f1, 0x794(r30) +/* 801C3C5C 001C0BBC 88 1E 08 40 */ lbz r0, 0x840(r30) +/* 801C3C60 001C0BC0 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 801C3C64 001C0BC4 98 1E 08 40 */ stb r0, 0x840(r30) +/* 801C3C68 001C0BC8 D0 1E 08 3C */ stfs f0, 0x83c(r30) +/* 801C3C6C 001C0BCC 4B FF DB 25 */ bl sub_801c1790 +/* 801C3C70 001C0BD0 7F C3 F3 78 */ mr r3, r30 +/* 801C3C74 001C0BD4 4B FF D8 E9 */ bl sub_801c155c +/* 801C3C78 001C0BD8 C0 02 AA 9C */ lfs f0, lbl_805AC7BC@sda21(r2) +/* 801C3C7C 001C0BDC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C3C80 001C0BE0 40 80 00 14 */ bge lbl_801C3C94 +/* 801C3C84 001C0BE4 C0 3E 07 9C */ lfs f1, 0x79c(r30) +/* 801C3C88 001C0BE8 7F C3 F3 78 */ mr r3, r30 +/* 801C3C8C 001C0BEC 7F E4 FB 78 */ mr r4, r31 +/* 801C3C90 001C0BF0 4B FF D8 25 */ bl sub_801c14b4 +lbl_801C3C94: +/* 801C3C94 001C0BF4 83 BF 08 4C */ lwz r29, 0x84c(r31) +/* 801C3C98 001C0BF8 38 81 00 20 */ addi r4, r1, 0x20 +/* 801C3C9C 001C0BFC A0 1E 00 08 */ lhz r0, 8(r30) +/* 801C3CA0 001C0C00 38 7D 02 74 */ addi r3, r29, 0x274 +/* 801C3CA4 001C0C04 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 801C3CA8 001C0C08 B0 01 00 20 */ sth r0, 0x20(r1) +/* 801C3CAC 001C0C0C 4B FF 0A 19 */ bl RemoveEnergyDrainSource__18CPlayerEnergyDrainF9TUniqueId +/* 801C3CB0 001C0C10 A0 1E 00 08 */ lhz r0, 8(r30) +/* 801C3CB4 001C0C14 38 81 00 18 */ addi r4, r1, 0x18 +/* 801C3CB8 001C0C18 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801C3CBC 001C0C1C 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 801C3CC0 001C0C20 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801C3CC4 001C0C24 80 63 00 00 */ lwz r3, 0(r3) +/* 801C3CC8 001C0C28 38 63 01 88 */ addi r3, r3, 0x188 +/* 801C3CCC 001C0C2C 4B FF CC E9 */ bl sub_801c09b4 +/* 801C3CD0 001C0C30 80 1D 03 04 */ lwz r0, 0x304(r29) +/* 801C3CD4 001C0C34 2C 00 00 04 */ cmpwi r0, 4 +/* 801C3CD8 001C0C38 40 82 00 24 */ bne lbl_801C3CFC +/* 801C3CDC 001C0C3C A0 7D 03 10 */ lhz r3, 0x310(r29) +/* 801C3CE0 001C0C40 A0 1E 00 08 */ lhz r0, 8(r30) +/* 801C3CE4 001C0C44 7C 03 00 40 */ cmplw r3, r0 +/* 801C3CE8 001C0C48 40 82 00 14 */ bne lbl_801C3CFC +/* 801C3CEC 001C0C4C 7F A3 EB 78 */ mr r3, r29 +/* 801C3CF0 001C0C50 7F E5 FB 78 */ mr r5, r31 +/* 801C3CF4 001C0C54 38 80 00 01 */ li r4, 1 +/* 801C3CF8 001C0C58 4B FB 77 9D */ bl SetOrbitState__7CPlayerFQ27CPlayer17EPlayerOrbitStateR13CStateManager +lbl_801C3CFC: +/* 801C3CFC 001C0C5C A1 1E 00 08 */ lhz r8, 8(r30) +/* 801C3D00 001C0C60 7F E4 FB 78 */ mr r4, r31 +/* 801C3D04 001C0C64 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801C3D08 001C0C68 38 C1 00 0C */ addi r6, r1, 0xc +/* 801C3D0C 001C0C6C B1 01 00 0C */ sth r8, 0xc(r1) +/* 801C3D10 001C0C70 38 60 00 01 */ li r3, 1 +/* 801C3D14 001C0C74 38 E0 00 01 */ li r7, 1 +/* 801C3D18 001C0C78 A0 1E 06 78 */ lhz r0, 0x678(r30) +/* 801C3D1C 001C0C7C B1 01 00 08 */ sth r8, 8(r1) +/* 801C3D20 001C0C80 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801C3D24 001C0C84 48 07 61 AD */ bl ResetTeamAiRole__10CTeamAiMgrF11EAttackTypeR13CStateManager9TUniqueId9TUniqueIdb +lbl_801C3D28: +/* 801C3D28 001C0C88 E3 E1 01 A8 */ psq_l f31, 424(r1), 0, qr0 +/* 801C3D2C 001C0C8C CB E1 01 A0 */ lfd f31, 0x1a0(r1) +/* 801C3D30 001C0C90 E3 C1 01 98 */ psq_l f30, 408(r1), 0, qr0 +/* 801C3D34 001C0C94 CB C1 01 90 */ lfd f30, 0x190(r1) +/* 801C3D38 001C0C98 E3 A1 01 88 */ psq_l f29, 392(r1), 0, qr0 +/* 801C3D3C 001C0C9C CB A1 01 80 */ lfd f29, 0x180(r1) +/* 801C3D40 001C0CA0 E3 81 01 78 */ psq_l f28, 376(r1), 0, qr0 +/* 801C3D44 001C0CA4 CB 81 01 70 */ lfd f28, 0x170(r1) +/* 801C3D48 001C0CA8 83 E1 01 6C */ lwz r31, 0x16c(r1) +/* 801C3D4C 001C0CAC 83 C1 01 68 */ lwz r30, 0x168(r1) +/* 801C3D50 001C0CB0 80 01 01 B4 */ lwz r0, 0x1b4(r1) +/* 801C3D54 001C0CB4 83 A1 01 64 */ lwz r29, 0x164(r1) +/* 801C3D58 001C0CB8 7C 08 03 A6 */ mtlr r0 +/* 801C3D5C 001C0CBC 38 21 01 B0 */ addi r1, r1, 0x1b0 +/* 801C3D60 001C0CC0 4E 80 00 20 */ blr + +.global TurnAround__12CMetroidBetaFR13CStateManager9EStateMsgf +TurnAround__12CMetroidBetaFR13CStateManager9EStateMsgf: +/* 801C3D64 001C0CC4 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 801C3D68 001C0CC8 7C 08 02 A6 */ mflr r0 +/* 801C3D6C 001C0CCC 2C 05 00 01 */ cmpwi r5, 1 +/* 801C3D70 001C0CD0 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 801C3D74 001C0CD4 93 E1 00 DC */ stw r31, 0xdc(r1) +/* 801C3D78 001C0CD8 7C 7F 1B 78 */ mr r31, r3 +/* 801C3D7C 001C0CDC 93 C1 00 D8 */ stw r30, 0xd8(r1) +/* 801C3D80 001C0CE0 7C 9E 23 78 */ mr r30, r4 +/* 801C3D84 001C0CE4 41 82 00 08 */ beq lbl_801C3D8C +/* 801C3D88 001C0CE8 48 00 02 2C */ b lbl_801C3FB4 +lbl_801C3D8C: +/* 801C3D8C 001C0CEC 80 BE 08 4C */ lwz r5, 0x84c(r30) +/* 801C3D90 001C0CF0 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 801C3D94 001C0CF4 C0 45 00 50 */ lfs f2, 0x50(r5) +/* 801C3D98 001C0CF8 C0 65 00 60 */ lfs f3, 0x60(r5) +/* 801C3D9C 001C0CFC C0 3F 00 60 */ lfs f1, 0x60(r31) +/* 801C3DA0 001C0D00 EC 82 00 28 */ fsubs f4, f2, f0 +/* 801C3DA4 001C0D04 C0 45 00 40 */ lfs f2, 0x40(r5) +/* 801C3DA8 001C0D08 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801C3DAC 001C0D0C EC 63 08 28 */ fsubs f3, f3, f1 +/* 801C3DB0 001C0D10 C0 22 AA 98 */ lfs f1, lbl_805AC7B8@sda21(r2) +/* 801C3DB4 001C0D14 EC 02 00 28 */ fsubs f0, f2, f0 +/* 801C3DB8 001C0D18 D0 81 00 68 */ stfs f4, 0x68(r1) +/* 801C3DBC 001C0D1C D0 61 00 6C */ stfs f3, 0x6c(r1) +/* 801C3DC0 001C0D20 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 801C3DC4 001C0D24 81 83 00 00 */ lwz r12, 0(r3) +/* 801C3DC8 001C0D28 81 8C 01 E8 */ lwz r12, 0x1e8(r12) +/* 801C3DCC 001C0D2C 7D 89 03 A6 */ mtctr r12 +/* 801C3DD0 001C0D30 4E 80 04 21 */ bctrl +/* 801C3DD4 001C0D34 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C3DD8 001C0D38 41 82 00 70 */ beq lbl_801C3E48 +/* 801C3DDC 001C0D3C 38 61 00 64 */ addi r3, r1, 0x64 +/* 801C3DE0 001C0D40 48 15 09 19 */ bl CanBeNormalized__9CVector3fCFv +/* 801C3DE4 001C0D44 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C3DE8 001C0D48 41 82 00 60 */ beq lbl_801C3E48 +/* 801C3DEC 001C0D4C 38 61 00 4C */ addi r3, r1, 0x4c +/* 801C3DF0 001C0D50 38 81 00 64 */ addi r4, r1, 0x64 +/* 801C3DF4 001C0D54 48 15 0A 5D */ bl AsNormalized__9CVector3fCFv +/* 801C3DF8 001C0D58 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801C3DFC 001C0D5C C4 C3 66 A0 */ lfsu f6, skZero3f@l(r3) +/* 801C3E00 001C0D60 C0 61 00 4C */ lfs f3, 0x4c(r1) +/* 801C3E04 001C0D64 38 81 00 8C */ addi r4, r1, 0x8c +/* 801C3E08 001C0D68 C0 41 00 50 */ lfs f2, 0x50(r1) +/* 801C3E0C 001C0D6C C0 A3 00 04 */ lfs f5, 4(r3) +/* 801C3E10 001C0D70 C0 83 00 08 */ lfs f4, 8(r3) +/* 801C3E14 001C0D74 C0 21 00 54 */ lfs f1, 0x54(r1) +/* 801C3E18 001C0D78 C0 02 AA A4 */ lfs f0, lbl_805AC7C4@sda21(r2) +/* 801C3E1C 001C0D7C D0 C1 00 8C */ stfs f6, 0x8c(r1) +/* 801C3E20 001C0D80 D0 A1 00 90 */ stfs f5, 0x90(r1) +/* 801C3E24 001C0D84 D0 81 00 94 */ stfs f4, 0x94(r1) +/* 801C3E28 001C0D88 D0 61 00 98 */ stfs f3, 0x98(r1) +/* 801C3E2C 001C0D8C D0 41 00 9C */ stfs f2, 0x9c(r1) +/* 801C3E30 001C0D90 D0 21 00 A0 */ stfs f1, 0xa0(r1) +/* 801C3E34 001C0D94 D0 01 00 A4 */ stfs f0, 0xa4(r1) +/* 801C3E38 001C0D98 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801C3E3C 001C0D9C 38 63 00 04 */ addi r3, r3, 4 +/* 801C3E40 001C0DA0 4B F6 D8 D9 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 801C3E44 001C0DA4 48 00 01 70 */ b lbl_801C3FB4 +lbl_801C3E48: +/* 801C3E48 001C0DA8 A0 DF 00 08 */ lhz r6, 8(r31) +/* 801C3E4C 001C0DAC 7F C3 F3 78 */ mr r3, r30 +/* 801C3E50 001C0DB0 38 81 00 18 */ addi r4, r1, 0x18 +/* 801C3E54 001C0DB4 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801C3E58 001C0DB8 B0 C1 00 14 */ sth r6, 0x14(r1) +/* 801C3E5C 001C0DBC A0 1F 06 78 */ lhz r0, 0x678(r31) +/* 801C3E60 001C0DC0 B0 C1 00 10 */ sth r6, 0x10(r1) +/* 801C3E64 001C0DC4 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801C3E68 001C0DC8 48 07 63 19 */ bl GetTeamAiRole__10CTeamAiMgrCFRC13CStateManager9TUniqueId9TUniqueId +/* 801C3E6C 001C0DCC 28 03 00 00 */ cmplwi r3, 0 +/* 801C3E70 001C0DD0 41 82 00 0C */ beq lbl_801C3E7C +/* 801C3E74 001C0DD4 38 C3 00 1C */ addi r6, r3, 0x1c +/* 801C3E78 001C0DD8 48 00 00 98 */ b lbl_801C3F10 +lbl_801C3E7C: +/* 801C3E7C 001C0DDC 80 BE 08 4C */ lwz r5, 0x84c(r30) +/* 801C3E80 001C0DE0 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801C3E84 001C0DE4 39 03 66 A0 */ addi r8, r3, skZero3f@l +/* 801C3E88 001C0DE8 39 20 FF FF */ li r9, -1 +/* 801C3E8C 001C0DEC C0 85 00 60 */ lfs f4, 0x60(r5) +/* 801C3E90 001C0DF0 38 00 00 00 */ li r0, 0 +/* 801C3E94 001C0DF4 C0 65 00 50 */ lfs f3, 0x50(r5) +/* 801C3E98 001C0DF8 7F E4 FB 78 */ mr r4, r31 +/* 801C3E9C 001C0DFC C0 05 00 40 */ lfs f0, 0x40(r5) +/* 801C3EA0 001C0E00 7F C5 F3 78 */ mr r5, r30 +/* 801C3EA4 001C0E04 C0 48 00 00 */ lfs f2, 0(r8) +/* 801C3EA8 001C0E08 38 61 00 34 */ addi r3, r1, 0x34 +/* 801C3EAC 001C0E0C D0 01 00 40 */ stfs f0, 0x40(r1) +/* 801C3EB0 001C0E10 38 C1 00 A8 */ addi r6, r1, 0xa8 +/* 801C3EB4 001C0E14 C0 28 00 04 */ lfs f1, 4(r8) +/* 801C3EB8 001C0E18 38 E1 00 40 */ addi r7, r1, 0x40 +/* 801C3EBC 001C0E1C D0 61 00 44 */ stfs f3, 0x44(r1) +/* 801C3EC0 001C0E20 C0 08 00 08 */ lfs f0, 8(r8) +/* 801C3EC4 001C0E24 D0 81 00 48 */ stfs f4, 0x48(r1) +/* 801C3EC8 001C0E28 A1 1F 00 08 */ lhz r8, 8(r31) +/* 801C3ECC 001C0E2C B1 01 00 A8 */ sth r8, 0xa8(r1) +/* 801C3ED0 001C0E30 91 21 00 AC */ stw r9, 0xac(r1) +/* 801C3ED4 001C0E34 91 21 00 B0 */ stw r9, 0xb0(r1) +/* 801C3ED8 001C0E38 91 21 00 B4 */ stw r9, 0xb4(r1) +/* 801C3EDC 001C0E3C 91 21 00 B8 */ stw r9, 0xb8(r1) +/* 801C3EE0 001C0E40 91 21 00 BC */ stw r9, 0xbc(r1) +/* 801C3EE4 001C0E44 90 01 00 C0 */ stw r0, 0xc0(r1) +/* 801C3EE8 001C0E48 D0 41 00 C4 */ stfs f2, 0xc4(r1) +/* 801C3EEC 001C0E4C D0 21 00 C8 */ stfs f1, 0xc8(r1) +/* 801C3EF0 001C0E50 D0 01 00 CC */ stfs f0, 0xcc(r1) +/* 801C3EF4 001C0E54 81 9F 00 00 */ lwz r12, 0(r31) +/* 801C3EF8 001C0E58 B1 01 00 08 */ sth r8, 8(r1) +/* 801C3EFC 001C0E5C 81 8C 00 A0 */ lwz r12, 0xa0(r12) +/* 801C3F00 001C0E60 B1 01 00 0C */ sth r8, 0xc(r1) +/* 801C3F04 001C0E64 7D 89 03 A6 */ mtctr r12 +/* 801C3F08 001C0E68 4E 80 04 21 */ bctrl +/* 801C3F0C 001C0E6C 38 C1 00 34 */ addi r6, r1, 0x34 +lbl_801C3F10: +/* 801C3F10 001C0E70 C0 9F 00 60 */ lfs f4, 0x60(r31) +/* 801C3F14 001C0E74 7F E5 FB 78 */ mr r5, r31 +/* 801C3F18 001C0E78 C0 7F 00 50 */ lfs f3, 0x50(r31) +/* 801C3F1C 001C0E7C 38 61 00 1C */ addi r3, r1, 0x1c +/* 801C3F20 001C0E80 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801C3F24 001C0E84 38 9F 04 5C */ addi r4, r31, 0x45c +/* 801C3F28 001C0E88 C0 46 00 08 */ lfs f2, 8(r6) +/* 801C3F2C 001C0E8C 38 C1 00 58 */ addi r6, r1, 0x58 +/* 801C3F30 001C0E90 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 801C3F34 001C0E94 C0 22 AA AC */ lfs f1, lbl_805AC7CC@sda21(r2) +/* 801C3F38 001C0E98 D0 61 00 2C */ stfs f3, 0x2c(r1) +/* 801C3F3C 001C0E9C D0 81 00 30 */ stfs f4, 0x30(r1) +/* 801C3F40 001C0EA0 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 801C3F44 001C0EA4 D0 61 00 5C */ stfs f3, 0x5c(r1) +/* 801C3F48 001C0EA8 D0 41 00 60 */ stfs f2, 0x60(r1) +/* 801C3F4C 001C0EAC 4B F7 AB D1 */ bl Arrival__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3ff +/* 801C3F50 001C0EB0 C0 81 00 20 */ lfs f4, 0x20(r1) +/* 801C3F54 001C0EB4 C0 41 00 1C */ lfs f2, 0x1c(r1) +/* 801C3F58 001C0EB8 EC 24 01 32 */ fmuls f1, f4, f4 +/* 801C3F5C 001C0EBC C0 A1 00 24 */ lfs f5, 0x24(r1) +/* 801C3F60 001C0EC0 C0 02 AA B0 */ lfs f0, lbl_805AC7D0@sda21(r2) +/* 801C3F64 001C0EC4 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 801C3F68 001C0EC8 EC 25 09 7A */ fmadds f1, f5, f5, f1 +/* 801C3F6C 001C0ECC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C3F70 001C0ED0 40 81 00 44 */ ble lbl_801C3FB4 +/* 801C3F74 001C0ED4 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801C3F78 001C0ED8 C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) +/* 801C3F7C 001C0EDC C0 02 AA A4 */ lfs f0, lbl_805AC7C4@sda21(r2) +/* 801C3F80 001C0EE0 38 81 00 70 */ addi r4, r1, 0x70 +/* 801C3F84 001C0EE4 D0 41 00 70 */ stfs f2, 0x70(r1) +/* 801C3F88 001C0EE8 C0 43 00 04 */ lfs f2, 4(r3) +/* 801C3F8C 001C0EEC C0 23 00 08 */ lfs f1, 8(r3) +/* 801C3F90 001C0EF0 D0 81 00 74 */ stfs f4, 0x74(r1) +/* 801C3F94 001C0EF4 D0 A1 00 78 */ stfs f5, 0x78(r1) +/* 801C3F98 001C0EF8 D0 61 00 7C */ stfs f3, 0x7c(r1) +/* 801C3F9C 001C0EFC D0 41 00 80 */ stfs f2, 0x80(r1) +/* 801C3FA0 001C0F00 D0 21 00 84 */ stfs f1, 0x84(r1) +/* 801C3FA4 001C0F04 D0 01 00 88 */ stfs f0, 0x88(r1) +/* 801C3FA8 001C0F08 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801C3FAC 001C0F0C 38 63 00 04 */ addi r3, r3, 4 +/* 801C3FB0 001C0F10 4B F6 D7 69 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +lbl_801C3FB4: +/* 801C3FB4 001C0F14 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 801C3FB8 001C0F18 83 E1 00 DC */ lwz r31, 0xdc(r1) +/* 801C3FBC 001C0F1C 83 C1 00 D8 */ lwz r30, 0xd8(r1) +/* 801C3FC0 001C0F20 7C 08 03 A6 */ mtlr r0 +/* 801C3FC4 001C0F24 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 801C3FC8 001C0F28 4E 80 00 20 */ blr + +.global PathFind__12CMetroidBetaFR13CStateManager9EStateMsgf +PathFind__12CMetroidBetaFR13CStateManager9EStateMsgf: +/* 801C3FCC 001C0F2C 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 801C3FD0 001C0F30 7C 08 02 A6 */ mflr r0 +/* 801C3FD4 001C0F34 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 801C3FD8 001C0F38 DB E1 00 C0 */ stfd f31, 0xc0(r1) +/* 801C3FDC 001C0F3C F3 E1 00 C8 */ psq_st f31, 200(r1), 0, qr0 +/* 801C3FE0 001C0F40 93 E1 00 BC */ stw r31, 0xbc(r1) +/* 801C3FE4 001C0F44 93 C1 00 B8 */ stw r30, 0xb8(r1) +/* 801C3FE8 001C0F48 93 A1 00 B4 */ stw r29, 0xb4(r1) +/* 801C3FEC 001C0F4C 7C BD 2B 78 */ mr r29, r5 +/* 801C3FF0 001C0F50 FF E0 08 90 */ fmr f31, f1 +/* 801C3FF4 001C0F54 2C 1D 00 01 */ cmpwi r29, 1 +/* 801C3FF8 001C0F58 7C 7E 1B 78 */ mr r30, r3 +/* 801C3FFC 001C0F5C 7C 9F 23 78 */ mr r31, r4 +/* 801C4000 001C0F60 41 82 01 50 */ beq lbl_801C4150 +/* 801C4004 001C0F64 40 80 02 D0 */ bge lbl_801C42D4 +/* 801C4008 001C0F68 2C 1D 00 00 */ cmpwi r29, 0 +/* 801C400C 001C0F6C 40 80 00 08 */ bge lbl_801C4014 +/* 801C4010 001C0F70 48 00 02 C4 */ b lbl_801C42D4 +lbl_801C4014: +/* 801C4014 001C0F74 88 1E 08 40 */ lbz r0, 0x840(r30) +/* 801C4018 001C0F78 38 60 00 00 */ li r3, 0 +/* 801C401C 001C0F7C 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 801C4020 001C0F80 38 80 00 02 */ li r4, 2 +/* 801C4024 001C0F84 98 1E 08 40 */ stb r0, 0x840(r30) +/* 801C4028 001C0F88 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801C402C 001C0F8C 4B F7 69 AD */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 801C4030 001C0F90 A0 DE 00 08 */ lhz r6, 8(r30) +/* 801C4034 001C0F94 7F E3 FB 78 */ mr r3, r31 +/* 801C4038 001C0F98 38 81 00 2C */ addi r4, r1, 0x2c +/* 801C403C 001C0F9C 38 A1 00 28 */ addi r5, r1, 0x28 +/* 801C4040 001C0FA0 B0 C1 00 28 */ sth r6, 0x28(r1) +/* 801C4044 001C0FA4 A0 1E 06 78 */ lhz r0, 0x678(r30) +/* 801C4048 001C0FA8 B0 C1 00 24 */ sth r6, 0x24(r1) +/* 801C404C 001C0FAC B0 01 00 2C */ sth r0, 0x2c(r1) +/* 801C4050 001C0FB0 48 07 61 31 */ bl GetTeamAiRole__10CTeamAiMgrCFRC13CStateManager9TUniqueId9TUniqueId +/* 801C4054 001C0FB4 28 03 00 00 */ cmplwi r3, 0 +/* 801C4058 001C0FB8 41 82 00 20 */ beq lbl_801C4078 +/* 801C405C 001C0FBC C0 03 00 1C */ lfs f0, 0x1c(r3) +/* 801C4060 001C0FC0 D0 1E 02 E0 */ stfs f0, 0x2e0(r30) +/* 801C4064 001C0FC4 C0 03 00 20 */ lfs f0, 0x20(r3) +/* 801C4068 001C0FC8 D0 1E 02 E4 */ stfs f0, 0x2e4(r30) +/* 801C406C 001C0FCC C0 03 00 24 */ lfs f0, 0x24(r3) +/* 801C4070 001C0FD0 D0 1E 02 E8 */ stfs f0, 0x2e8(r30) +/* 801C4074 001C0FD4 48 00 00 AC */ b lbl_801C4120 +lbl_801C4078: +/* 801C4078 001C0FD8 80 BF 08 4C */ lwz r5, 0x84c(r31) +/* 801C407C 001C0FDC 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801C4080 001C0FE0 39 03 66 A0 */ addi r8, r3, skZero3f@l +/* 801C4084 001C0FE4 39 20 FF FF */ li r9, -1 +/* 801C4088 001C0FE8 C0 85 00 60 */ lfs f4, 0x60(r5) +/* 801C408C 001C0FEC 38 00 00 00 */ li r0, 0 +/* 801C4090 001C0FF0 C0 65 00 50 */ lfs f3, 0x50(r5) +/* 801C4094 001C0FF4 7F C4 F3 78 */ mr r4, r30 +/* 801C4098 001C0FF8 C0 05 00 40 */ lfs f0, 0x40(r5) +/* 801C409C 001C0FFC 7F E5 FB 78 */ mr r5, r31 +/* 801C40A0 001C1000 C0 48 00 00 */ lfs f2, 0(r8) +/* 801C40A4 001C1004 38 61 00 54 */ addi r3, r1, 0x54 +/* 801C40A8 001C1008 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 801C40AC 001C100C 38 C1 00 88 */ addi r6, r1, 0x88 +/* 801C40B0 001C1010 C0 28 00 04 */ lfs f1, 4(r8) +/* 801C40B4 001C1014 38 E1 00 48 */ addi r7, r1, 0x48 +/* 801C40B8 001C1018 D0 61 00 4C */ stfs f3, 0x4c(r1) +/* 801C40BC 001C101C C0 08 00 08 */ lfs f0, 8(r8) +/* 801C40C0 001C1020 D0 81 00 50 */ stfs f4, 0x50(r1) +/* 801C40C4 001C1024 A1 1E 00 08 */ lhz r8, 8(r30) +/* 801C40C8 001C1028 B1 01 00 88 */ sth r8, 0x88(r1) +/* 801C40CC 001C102C 91 21 00 8C */ stw r9, 0x8c(r1) +/* 801C40D0 001C1030 91 21 00 90 */ stw r9, 0x90(r1) +/* 801C40D4 001C1034 91 21 00 94 */ stw r9, 0x94(r1) +/* 801C40D8 001C1038 91 21 00 98 */ stw r9, 0x98(r1) +/* 801C40DC 001C103C 91 21 00 9C */ stw r9, 0x9c(r1) +/* 801C40E0 001C1040 90 01 00 A0 */ stw r0, 0xa0(r1) +/* 801C40E4 001C1044 D0 41 00 A4 */ stfs f2, 0xa4(r1) +/* 801C40E8 001C1048 D0 21 00 A8 */ stfs f1, 0xa8(r1) +/* 801C40EC 001C104C D0 01 00 AC */ stfs f0, 0xac(r1) +/* 801C40F0 001C1050 81 9E 00 00 */ lwz r12, 0(r30) +/* 801C40F4 001C1054 B1 01 00 1C */ sth r8, 0x1c(r1) +/* 801C40F8 001C1058 81 8C 00 A0 */ lwz r12, 0xa0(r12) +/* 801C40FC 001C105C B1 01 00 20 */ sth r8, 0x20(r1) +/* 801C4100 001C1060 7D 89 03 A6 */ mtctr r12 +/* 801C4104 001C1064 4E 80 04 21 */ bctrl +/* 801C4108 001C1068 C0 01 00 54 */ lfs f0, 0x54(r1) +/* 801C410C 001C106C D0 1E 02 E0 */ stfs f0, 0x2e0(r30) +/* 801C4110 001C1070 C0 01 00 58 */ lfs f0, 0x58(r1) +/* 801C4114 001C1074 D0 1E 02 E4 */ stfs f0, 0x2e4(r30) +/* 801C4118 001C1078 C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 801C411C 001C107C D0 1E 02 E8 */ stfs f0, 0x2e8(r30) +lbl_801C4120: +/* 801C4120 001C1080 C0 1E 02 E0 */ lfs f0, 0x2e0(r30) +/* 801C4124 001C1084 7F C3 F3 78 */ mr r3, r30 +/* 801C4128 001C1088 C0 22 AA 98 */ lfs f1, lbl_805AC7B8@sda21(r2) +/* 801C412C 001C108C 7F E4 FB 78 */ mr r4, r31 +/* 801C4130 001C1090 D0 1E 07 A8 */ stfs f0, 0x7a8(r30) +/* 801C4134 001C1094 38 A0 00 00 */ li r5, 0 +/* 801C4138 001C1098 C0 1E 02 E4 */ lfs f0, 0x2e4(r30) +/* 801C413C 001C109C D0 1E 07 AC */ stfs f0, 0x7ac(r30) +/* 801C4140 001C10A0 C0 1E 02 E8 */ lfs f0, 0x2e8(r30) +/* 801C4144 001C10A4 D0 1E 07 B0 */ stfs f0, 0x7b0(r30) +/* 801C4148 001C10A8 48 03 25 85 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 801C414C 001C10AC 48 00 01 88 */ b lbl_801C42D4 +lbl_801C4150: +/* 801C4150 001C10B0 81 83 00 00 */ lwz r12, 0(r3) +/* 801C4154 001C10B4 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801C4158 001C10B8 7D 89 03 A6 */ mtctr r12 +/* 801C415C 001C10BC 4E 80 04 21 */ bctrl +/* 801C4160 001C10C0 28 03 00 00 */ cmplwi r3, 0 +/* 801C4164 001C10C4 41 82 00 64 */ beq lbl_801C41C8 +/* 801C4168 001C10C8 7F C3 F3 78 */ mr r3, r30 +/* 801C416C 001C10CC 7F E4 FB 78 */ mr r4, r31 +/* 801C4170 001C10D0 81 9E 00 00 */ lwz r12, 0(r30) +/* 801C4174 001C10D4 C0 22 AA 98 */ lfs f1, lbl_805AC7B8@sda21(r2) +/* 801C4178 001C10D8 81 8C 01 90 */ lwz r12, 0x190(r12) +/* 801C417C 001C10DC 7D 89 03 A6 */ mtctr r12 +/* 801C4180 001C10E0 4E 80 04 21 */ bctrl +/* 801C4184 001C10E4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C4188 001C10E8 40 82 00 40 */ bne lbl_801C41C8 +/* 801C418C 001C10EC 7F C3 F3 78 */ mr r3, r30 +/* 801C4190 001C10F0 7F E4 FB 78 */ mr r4, r31 +/* 801C4194 001C10F4 81 9E 00 00 */ lwz r12, 0(r30) +/* 801C4198 001C10F8 C0 22 AA 98 */ lfs f1, lbl_805AC7B8@sda21(r2) +/* 801C419C 001C10FC 81 8C 01 94 */ lwz r12, 0x194(r12) +/* 801C41A0 001C1100 7D 89 03 A6 */ mtctr r12 +/* 801C41A4 001C1104 4E 80 04 21 */ bctrl +/* 801C41A8 001C1108 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C41AC 001C110C 40 82 00 1C */ bne lbl_801C41C8 +/* 801C41B0 001C1110 FC 20 F8 90 */ fmr f1, f31 +/* 801C41B4 001C1114 7F C3 F3 78 */ mr r3, r30 +/* 801C41B8 001C1118 7F E4 FB 78 */ mr r4, r31 +/* 801C41BC 001C111C 7F A5 EB 78 */ mr r5, r29 +/* 801C41C0 001C1120 48 03 25 0D */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 801C41C4 001C1124 48 00 01 04 */ b lbl_801C42C8 +lbl_801C41C8: +/* 801C41C8 001C1128 A0 DE 00 08 */ lhz r6, 8(r30) +/* 801C41CC 001C112C 7F E3 FB 78 */ mr r3, r31 +/* 801C41D0 001C1130 38 81 00 18 */ addi r4, r1, 0x18 +/* 801C41D4 001C1134 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801C41D8 001C1138 B0 C1 00 14 */ sth r6, 0x14(r1) +/* 801C41DC 001C113C A0 1E 06 78 */ lhz r0, 0x678(r30) +/* 801C41E0 001C1140 B0 C1 00 10 */ sth r6, 0x10(r1) +/* 801C41E4 001C1144 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801C41E8 001C1148 48 07 5F 99 */ bl GetTeamAiRole__10CTeamAiMgrCFRC13CStateManager9TUniqueId9TUniqueId +/* 801C41EC 001C114C 28 03 00 00 */ cmplwi r3, 0 +/* 801C41F0 001C1150 41 82 00 20 */ beq lbl_801C4210 +/* 801C41F4 001C1154 C0 03 00 1C */ lfs f0, 0x1c(r3) +/* 801C41F8 001C1158 D0 1E 07 A8 */ stfs f0, 0x7a8(r30) +/* 801C41FC 001C115C C0 03 00 20 */ lfs f0, 0x20(r3) +/* 801C4200 001C1160 D0 1E 07 AC */ stfs f0, 0x7ac(r30) +/* 801C4204 001C1164 C0 03 00 24 */ lfs f0, 0x24(r3) +/* 801C4208 001C1168 D0 1E 07 B0 */ stfs f0, 0x7b0(r30) +/* 801C420C 001C116C 48 00 00 AC */ b lbl_801C42B8 +lbl_801C4210: +/* 801C4210 001C1170 80 BF 08 4C */ lwz r5, 0x84c(r31) +/* 801C4214 001C1174 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801C4218 001C1178 39 03 66 A0 */ addi r8, r3, skZero3f@l +/* 801C421C 001C117C 39 20 FF FF */ li r9, -1 +/* 801C4220 001C1180 C0 85 00 60 */ lfs f4, 0x60(r5) +/* 801C4224 001C1184 38 00 00 00 */ li r0, 0 +/* 801C4228 001C1188 C0 65 00 50 */ lfs f3, 0x50(r5) +/* 801C422C 001C118C 7F C4 F3 78 */ mr r4, r30 +/* 801C4230 001C1190 C0 05 00 40 */ lfs f0, 0x40(r5) +/* 801C4234 001C1194 7F E5 FB 78 */ mr r5, r31 +/* 801C4238 001C1198 C0 48 00 00 */ lfs f2, 0(r8) +/* 801C423C 001C119C 38 61 00 3C */ addi r3, r1, 0x3c +/* 801C4240 001C11A0 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801C4244 001C11A4 38 C1 00 60 */ addi r6, r1, 0x60 +/* 801C4248 001C11A8 C0 28 00 04 */ lfs f1, 4(r8) +/* 801C424C 001C11AC 38 E1 00 30 */ addi r7, r1, 0x30 +/* 801C4250 001C11B0 D0 61 00 34 */ stfs f3, 0x34(r1) +/* 801C4254 001C11B4 C0 08 00 08 */ lfs f0, 8(r8) +/* 801C4258 001C11B8 D0 81 00 38 */ stfs f4, 0x38(r1) +/* 801C425C 001C11BC A1 1E 00 08 */ lhz r8, 8(r30) +/* 801C4260 001C11C0 B1 01 00 60 */ sth r8, 0x60(r1) +/* 801C4264 001C11C4 91 21 00 64 */ stw r9, 0x64(r1) +/* 801C4268 001C11C8 91 21 00 68 */ stw r9, 0x68(r1) +/* 801C426C 001C11CC 91 21 00 6C */ stw r9, 0x6c(r1) +/* 801C4270 001C11D0 91 21 00 70 */ stw r9, 0x70(r1) +/* 801C4274 001C11D4 91 21 00 74 */ stw r9, 0x74(r1) +/* 801C4278 001C11D8 90 01 00 78 */ stw r0, 0x78(r1) +/* 801C427C 001C11DC D0 41 00 7C */ stfs f2, 0x7c(r1) +/* 801C4280 001C11E0 D0 21 00 80 */ stfs f1, 0x80(r1) +/* 801C4284 001C11E4 D0 01 00 84 */ stfs f0, 0x84(r1) +/* 801C4288 001C11E8 81 9E 00 00 */ lwz r12, 0(r30) +/* 801C428C 001C11EC B1 01 00 08 */ sth r8, 8(r1) +/* 801C4290 001C11F0 81 8C 00 A0 */ lwz r12, 0xa0(r12) +/* 801C4294 001C11F4 B1 01 00 0C */ sth r8, 0xc(r1) +/* 801C4298 001C11F8 7D 89 03 A6 */ mtctr r12 +/* 801C429C 001C11FC 4E 80 04 21 */ bctrl +/* 801C42A0 001C1200 C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 801C42A4 001C1204 D0 1E 07 A8 */ stfs f0, 0x7a8(r30) +/* 801C42A8 001C1208 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 801C42AC 001C120C D0 1E 07 AC */ stfs f0, 0x7ac(r30) +/* 801C42B0 001C1210 C0 01 00 44 */ lfs f0, 0x44(r1) +/* 801C42B4 001C1214 D0 1E 07 B0 */ stfs f0, 0x7b0(r30) +lbl_801C42B8: +/* 801C42B8 001C1218 7F C3 F3 78 */ mr r3, r30 +/* 801C42BC 001C121C 7F E4 FB 78 */ mr r4, r31 +/* 801C42C0 001C1220 38 BE 07 A8 */ addi r5, r30, 0x7a8 +/* 801C42C4 001C1224 4B FF CC 21 */ bl sub_801c0ee4 +lbl_801C42C8: +/* 801C42C8 001C1228 7F C3 F3 78 */ mr r3, r30 +/* 801C42CC 001C122C 7F E4 FB 78 */ mr r4, r31 +/* 801C42D0 001C1230 4B FF CE 41 */ bl sub_801c1110 +lbl_801C42D4: +/* 801C42D4 001C1234 7F C3 F3 78 */ mr r3, r30 +/* 801C42D8 001C1238 7F E4 FB 78 */ mr r4, r31 +/* 801C42DC 001C123C 4B FF CB 2D */ bl sub_801c0e08 +/* 801C42E0 001C1240 E3 E1 00 C8 */ psq_l f31, 200(r1), 0, qr0 +/* 801C42E4 001C1244 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 801C42E8 001C1248 CB E1 00 C0 */ lfd f31, 0xc0(r1) +/* 801C42EC 001C124C 83 E1 00 BC */ lwz r31, 0xbc(r1) +/* 801C42F0 001C1250 83 C1 00 B8 */ lwz r30, 0xb8(r1) +/* 801C42F4 001C1254 83 A1 00 B4 */ lwz r29, 0xb4(r1) +/* 801C42F8 001C1258 7C 08 03 A6 */ mtlr r0 +/* 801C42FC 001C125C 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 801C4300 001C1260 4E 80 00 20 */ blr + +.global sub_801c4304 +sub_801c4304: +/* 801C4304 001C1264 80 03 05 68 */ lwz r0, 0x568(r3) +/* 801C4308 001C1268 20 00 00 03 */ subfic r0, r0, 3 +/* 801C430C 001C126C 7C 00 00 34 */ cntlzw r0, r0 +/* 801C4310 001C1270 54 03 D9 7E */ srwi r3, r0, 5 +/* 801C4314 001C1274 4E 80 00 20 */ blr + +.global ShouldWallHang__12CMetroidBetaFR13CStateManagerf +ShouldWallHang__12CMetroidBetaFR13CStateManagerf: +/* 801C4318 001C1278 88 03 06 74 */ lbz r0, 0x674(r3) +/* 801C431C 001C127C 54 03 CF FE */ rlwinm r3, r0, 0x19, 0x1f, 0x1f +/* 801C4320 001C1280 4E 80 00 20 */ blr + +.global ShouldTurn__12CMetroidBetaFR13CStateManagerf +ShouldTurn__12CMetroidBetaFR13CStateManagerf: +/* 801C4324 001C1284 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801C4328 001C1288 7C 08 02 A6 */ mflr r0 +/* 801C432C 001C128C 90 01 00 64 */ stw r0, 0x64(r1) +/* 801C4330 001C1290 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 801C4334 001C1294 7C 7F 1B 78 */ mr r31, r3 +/* 801C4338 001C1298 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 801C433C 001C129C C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801C4340 001C12A0 38 61 00 10 */ addi r3, r1, 0x10 +/* 801C4344 001C12A4 C0 84 00 50 */ lfs f4, 0x50(r4) +/* 801C4348 001C12A8 C0 04 00 40 */ lfs f0, 0x40(r4) +/* 801C434C 001C12AC EC 44 08 28 */ fsubs f2, f4, f1 +/* 801C4350 001C12B0 C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 801C4354 001C12B4 C0 A4 00 60 */ lfs f5, 0x60(r4) +/* 801C4358 001C12B8 C0 7F 00 60 */ lfs f3, 0x60(r31) +/* 801C435C 001C12BC EC 20 08 28 */ fsubs f1, f0, f1 +/* 801C4360 001C12C0 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801C4364 001C12C4 EC 65 18 28 */ fsubs f3, f5, f3 +/* 801C4368 001C12C8 D0 81 00 38 */ stfs f4, 0x38(r1) +/* 801C436C 001C12CC D0 A1 00 3C */ stfs f5, 0x3c(r1) +/* 801C4370 001C12D0 D0 21 00 40 */ stfs f1, 0x40(r1) +/* 801C4374 001C12D4 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 801C4378 001C12D8 D0 61 00 48 */ stfs f3, 0x48(r1) +/* 801C437C 001C12DC 48 14 FE 85 */ bl __ct__9CVector2fFff +/* 801C4380 001C12E0 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 801C4384 001C12E4 38 61 00 08 */ addi r3, r1, 8 +/* 801C4388 001C12E8 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 801C438C 001C12EC D0 21 00 20 */ stfs f1, 0x20(r1) +/* 801C4390 001C12F0 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801C4394 001C12F4 C0 5F 00 48 */ lfs f2, 0x48(r31) +/* 801C4398 001C12F8 C0 3F 00 38 */ lfs f1, 0x38(r31) +/* 801C439C 001C12FC C0 1F 00 58 */ lfs f0, 0x58(r31) +/* 801C43A0 001C1300 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 801C43A4 001C1304 D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 801C43A8 001C1308 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801C43AC 001C130C 48 14 FE 55 */ bl __ct__9CVector2fFff +/* 801C43B0 001C1310 C0 21 00 08 */ lfs f1, 8(r1) +/* 801C43B4 001C1314 38 61 00 18 */ addi r3, r1, 0x18 +/* 801C43B8 001C1318 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 801C43BC 001C131C 38 81 00 20 */ addi r4, r1, 0x20 +/* 801C43C0 001C1320 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801C43C4 001C1324 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801C43C8 001C1328 48 14 FB FD */ bl GetAngleDiff__9CVector2fFRC9CVector2fRC9CVector2f +/* 801C43CC 001C132C C0 02 AA FC */ lfs f0, lbl_805AC81C@sda21(r2) +/* 801C43D0 001C1330 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C43D4 001C1334 7C 00 00 26 */ mfcr r0 +/* 801C43D8 001C1338 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f +/* 801C43DC 001C133C 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 801C43E0 001C1340 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801C43E4 001C1344 7C 08 03 A6 */ mtlr r0 +/* 801C43E8 001C1348 38 21 00 60 */ addi r1, r1, 0x60 +/* 801C43EC 001C134C 4E 80 00 20 */ blr + +.global InPosition__12CMetroidBetaFR13CStateManagerf +InPosition__12CMetroidBetaFR13CStateManagerf: +/* 801C43F0 001C1350 C0 23 07 AC */ lfs f1, 0x7ac(r3) +/* 801C43F4 001C1354 C0 03 00 50 */ lfs f0, 0x50(r3) +/* 801C43F8 001C1358 C0 63 07 A8 */ lfs f3, 0x7a8(r3) +/* 801C43FC 001C135C EC 21 00 28 */ fsubs f1, f1, f0 +/* 801C4400 001C1360 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801C4404 001C1364 C0 43 07 B0 */ lfs f2, 0x7b0(r3) +/* 801C4408 001C1368 EC 63 00 28 */ fsubs f3, f3, f0 +/* 801C440C 001C136C C0 03 00 60 */ lfs f0, 0x60(r3) +/* 801C4410 001C1370 EC 21 00 72 */ fmuls f1, f1, f1 +/* 801C4414 001C1374 EC 42 00 28 */ fsubs f2, f2, f0 +/* 801C4418 001C1378 C0 02 AA A8 */ lfs f0, lbl_805AC7C8@sda21(r2) +/* 801C441C 001C137C EC 23 08 FA */ fmadds f1, f3, f3, f1 +/* 801C4420 001C1380 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 801C4424 001C1384 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C4428 001C1388 7C 00 00 26 */ mfcr r0 +/* 801C442C 001C138C 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801C4430 001C1390 4E 80 00 20 */ blr + +.global InDetectionRange__12CMetroidBetaFR13CStateManagerf +InDetectionRange__12CMetroidBetaFR13CStateManagerf: +/* 801C4434 001C1394 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801C4438 001C1398 7C 08 02 A6 */ mflr r0 +/* 801C443C 001C139C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801C4440 001C13A0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801C4444 001C13A4 93 C1 00 08 */ stw r30, 8(r1) +/* 801C4448 001C13A8 7C 9E 23 78 */ mr r30, r4 +/* 801C444C 001C13AC 88 03 08 40 */ lbz r0, 0x840(r3) +/* 801C4450 001C13B0 54 1F DF FF */ rlwinm. r31, r0, 0x1b, 0x1f, 0x1f +/* 801C4454 001C13B4 41 82 00 08 */ beq lbl_801C445C +/* 801C4458 001C13B8 48 00 00 28 */ b lbl_801C4480 +lbl_801C445C: +/* 801C445C 001C13BC 3B E0 00 00 */ li r31, 0 +/* 801C4460 001C13C0 48 03 1F 0D */ bl InDetectionRange__10CPatternedFR13CStateManagerf +/* 801C4464 001C13C4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C4468 001C13C8 41 82 00 18 */ beq lbl_801C4480 +/* 801C446C 001C13CC 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 801C4470 001C13D0 88 03 09 C4 */ lbz r0, 0x9c4(r3) +/* 801C4474 001C13D4 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 801C4478 001C13D8 40 82 00 08 */ bne lbl_801C4480 +/* 801C447C 001C13DC 3B E0 00 01 */ li r31, 1 +lbl_801C4480: +/* 801C4480 001C13E0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801C4484 001C13E4 7F E3 FB 78 */ mr r3, r31 +/* 801C4488 001C13E8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801C448C 001C13EC 83 C1 00 08 */ lwz r30, 8(r1) +/* 801C4490 001C13F0 7C 08 03 A6 */ mtlr r0 +/* 801C4494 001C13F4 38 21 00 10 */ addi r1, r1, 0x10 +/* 801C4498 001C13F8 4E 80 00 20 */ blr + +.global BreakAttack__12CMetroidBetaFR13CStateManagerf +BreakAttack__12CMetroidBetaFR13CStateManagerf: +/* 801C449C 001C13FC 88 03 08 40 */ lbz r0, 0x840(r3) +/* 801C44A0 001C1400 54 03 07 FE */ clrlwi r3, r0, 0x1f +/* 801C44A4 001C1404 4E 80 00 20 */ blr + +.global StartAttack__12CMetroidBetaFR13CStateManagerf +StartAttack__12CMetroidBetaFR13CStateManagerf: +/* 801C44A8 001C1408 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801C44AC 001C140C 7C 08 02 A6 */ mflr r0 +/* 801C44B0 001C1410 90 01 00 64 */ stw r0, 0x64(r1) +/* 801C44B4 001C1414 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 801C44B8 001C1418 7C 9F 23 78 */ mr r31, r4 +/* 801C44BC 001C141C 93 C1 00 58 */ stw r30, 0x58(r1) +/* 801C44C0 001C1420 7C 7E 1B 78 */ mr r30, r3 +/* 801C44C4 001C1424 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 801C44C8 001C1428 88 04 09 C4 */ lbz r0, 0x9c4(r4) +/* 801C44CC 001C142C 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 801C44D0 001C1430 40 82 00 24 */ bne lbl_801C44F4 +/* 801C44D4 001C1434 80 7E 00 04 */ lwz r3, 4(r30) +/* 801C44D8 001C1438 80 04 00 04 */ lwz r0, 4(r4) +/* 801C44DC 001C143C 7C 03 00 00 */ cmpw r3, r0 +/* 801C44E0 001C1440 40 82 00 14 */ bne lbl_801C44F4 +/* 801C44E4 001C1444 C0 3E 07 94 */ lfs f1, 0x794(r30) +/* 801C44E8 001C1448 C0 02 AA 98 */ lfs f0, lbl_805AC7B8@sda21(r2) +/* 801C44EC 001C144C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C44F0 001C1450 40 81 00 0C */ ble lbl_801C44FC +lbl_801C44F4: +/* 801C44F4 001C1454 38 60 00 00 */ li r3, 0 +/* 801C44F8 001C1458 48 00 01 60 */ b lbl_801C4658 +lbl_801C44FC: +/* 801C44FC 001C145C 80 04 03 04 */ lwz r0, 0x304(r4) +/* 801C4500 001C1460 2C 00 00 04 */ cmpwi r0, 4 +/* 801C4504 001C1464 41 82 00 24 */ beq lbl_801C4528 +/* 801C4508 001C1468 2C 00 00 05 */ cmpwi r0, 5 +/* 801C450C 001C146C 41 82 00 1C */ beq lbl_801C4528 +/* 801C4510 001C1470 80 04 03 B8 */ lwz r0, 0x3b8(r4) +/* 801C4514 001C1474 2C 00 00 00 */ cmpwi r0, 0 +/* 801C4518 001C1478 40 82 00 10 */ bne lbl_801C4528 +/* 801C451C 001C147C 80 04 02 F8 */ lwz r0, 0x2f8(r4) +/* 801C4520 001C1480 2C 00 00 03 */ cmpwi r0, 3 +/* 801C4524 001C1484 40 82 00 0C */ bne lbl_801C4530 +lbl_801C4528: +/* 801C4528 001C1488 38 60 00 00 */ li r3, 0 +/* 801C452C 001C148C 48 00 01 2C */ b lbl_801C4658 +lbl_801C4530: +/* 801C4530 001C1490 7F C4 F3 78 */ mr r4, r30 +/* 801C4534 001C1494 38 61 00 30 */ addi r3, r1, 0x30 +/* 801C4538 001C1498 4B FF D1 39 */ bl sub_801c1670 +/* 801C453C 001C149C C0 41 00 30 */ lfs f2, 0x30(r1) +/* 801C4540 001C14A0 7F C4 F3 78 */ mr r4, r30 +/* 801C4544 001C14A4 C0 21 00 34 */ lfs f1, 0x34(r1) +/* 801C4548 001C14A8 7F E5 FB 78 */ mr r5, r31 +/* 801C454C 001C14AC C0 01 00 38 */ lfs f0, 0x38(r1) +/* 801C4550 001C14B0 38 61 00 24 */ addi r3, r1, 0x24 +/* 801C4554 001C14B4 D0 41 00 48 */ stfs f2, 0x48(r1) +/* 801C4558 001C14B8 D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 801C455C 001C14BC D0 01 00 50 */ stfs f0, 0x50(r1) +/* 801C4560 001C14C0 4B FF D0 79 */ bl sub_801c15d8 +/* 801C4564 001C14C4 C0 61 00 28 */ lfs f3, 0x28(r1) +/* 801C4568 001C14C8 C0 01 00 4C */ lfs f0, 0x4c(r1) +/* 801C456C 001C14CC C0 81 00 24 */ lfs f4, 0x24(r1) +/* 801C4570 001C14D0 EC A3 00 28 */ fsubs f5, f3, f0 +/* 801C4574 001C14D4 C0 01 00 48 */ lfs f0, 0x48(r1) +/* 801C4578 001C14D8 C0 41 00 2C */ lfs f2, 0x2c(r1) +/* 801C457C 001C14DC EC C4 00 28 */ fsubs f6, f4, f0 +/* 801C4580 001C14E0 C0 21 00 50 */ lfs f1, 0x50(r1) +/* 801C4584 001C14E4 EC 05 01 72 */ fmuls f0, f5, f5 +/* 801C4588 001C14E8 D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 801C458C 001C14EC EC 22 08 28 */ fsubs f1, f2, f1 +/* 801C4590 001C14F0 EC 06 01 BA */ fmadds f0, f6, f6, f0 +/* 801C4594 001C14F4 D0 61 00 40 */ stfs f3, 0x40(r1) +/* 801C4598 001C14F8 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 801C459C 001C14FC EC 21 00 7A */ fmadds f1, f1, f1, f0 +/* 801C45A0 001C1500 C0 1E 02 FC */ lfs f0, 0x2fc(r30) +/* 801C45A4 001C1504 C0 5E 03 00 */ lfs f2, 0x300(r30) +/* 801C45A8 001C1508 EC 00 00 32 */ fmuls f0, f0, f0 +/* 801C45AC 001C150C EC 42 00 B2 */ fmuls f2, f2, f2 +/* 801C45B0 001C1510 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C45B4 001C1514 41 80 00 0C */ blt lbl_801C45C0 +/* 801C45B8 001C1518 FC 01 10 40 */ fcmpo cr0, f1, f2 +/* 801C45BC 001C151C 40 81 00 0C */ ble lbl_801C45C8 +lbl_801C45C0: +/* 801C45C0 001C1520 38 60 00 00 */ li r3, 0 +/* 801C45C4 001C1524 48 00 00 94 */ b lbl_801C4658 +lbl_801C45C8: +/* 801C45C8 001C1528 7F C3 F3 78 */ mr r3, r30 +/* 801C45CC 001C152C 7F E4 FB 78 */ mr r4, r31 +/* 801C45D0 001C1530 38 A1 00 48 */ addi r5, r1, 0x48 +/* 801C45D4 001C1534 38 C1 00 3C */ addi r6, r1, 0x3c +/* 801C45D8 001C1538 48 03 07 F9 */ bl IsPatternObstructed__10CPatternedCFR13CStateManagerRC9CVector3fRC9CVector3f +/* 801C45DC 001C153C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C45E0 001C1540 41 82 00 0C */ beq lbl_801C45EC +/* 801C45E4 001C1544 38 60 00 00 */ li r3, 0 +/* 801C45E8 001C1548 48 00 00 70 */ b lbl_801C4658 +lbl_801C45EC: +/* 801C45EC 001C154C A0 1E 06 78 */ lhz r0, 0x678(r30) +/* 801C45F0 001C1550 7F E3 FB 78 */ mr r3, r31 +/* 801C45F4 001C1554 38 81 00 18 */ addi r4, r1, 0x18 +/* 801C45F8 001C1558 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801C45FC 001C155C 4B E8 7F 79 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801C4600 001C1560 7C 64 1B 78 */ mr r4, r3 +/* 801C4604 001C1564 38 61 00 1C */ addi r3, r1, 0x1c +/* 801C4608 001C1568 4B EE 2F 6D */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" +/* 801C460C 001C156C 83 E3 00 04 */ lwz r31, 4(r3) +/* 801C4610 001C1570 28 1F 00 00 */ cmplwi r31, 0 +/* 801C4614 001C1574 41 82 00 40 */ beq lbl_801C4654 +/* 801C4618 001C1578 A0 1E 00 08 */ lhz r0, 8(r30) +/* 801C461C 001C157C 7F E3 FB 78 */ mr r3, r31 +/* 801C4620 001C1580 38 81 00 14 */ addi r4, r1, 0x14 +/* 801C4624 001C1584 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801C4628 001C1588 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801C462C 001C158C 48 07 49 C5 */ bl IsPartOfTeam__10CTeamAiMgrCF9TUniqueId +/* 801C4630 001C1590 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C4634 001C1594 41 82 00 20 */ beq lbl_801C4654 +/* 801C4638 001C1598 A0 1E 00 08 */ lhz r0, 8(r30) +/* 801C463C 001C159C 7F E3 FB 78 */ mr r3, r31 +/* 801C4640 001C15A0 38 81 00 0C */ addi r4, r1, 0xc +/* 801C4644 001C15A4 B0 01 00 08 */ sth r0, 8(r1) +/* 801C4648 001C15A8 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801C464C 001C15AC 48 07 3F 79 */ bl AddProjectileAttacker__10CTeamAiMgrF9TUniqueId +/* 801C4650 001C15B0 48 00 00 08 */ b lbl_801C4658 +lbl_801C4654: +/* 801C4654 001C15B4 38 60 00 01 */ li r3, 1 +lbl_801C4658: +/* 801C4658 001C15B8 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801C465C 001C15BC 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 801C4660 001C15C0 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 801C4664 001C15C4 7C 08 03 A6 */ mtlr r0 +/* 801C4668 001C15C8 38 21 00 60 */ addi r1, r1, 0x60 +/* 801C466C 001C15CC 4E 80 00 20 */ blr + +.global InAttackPosition__12CMetroidBetaFR13CStateManager9EStateMsgf +InAttackPosition__12CMetroidBetaFR13CStateManager9EStateMsgf: +/* 801C4670 001C15D0 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 801C4674 001C15D4 7C 08 02 A6 */ mflr r0 +/* 801C4678 001C15D8 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 801C467C 001C15DC DB E1 00 D0 */ stfd f31, 0xd0(r1) +/* 801C4680 001C15E0 F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 +/* 801C4684 001C15E4 DB C1 00 C0 */ stfd f30, 0xc0(r1) +/* 801C4688 001C15E8 F3 C1 00 C8 */ psq_st f30, 200(r1), 0, qr0 +/* 801C468C 001C15EC DB A1 00 B0 */ stfd f29, 0xb0(r1) +/* 801C4690 001C15F0 F3 A1 00 B8 */ psq_st f29, 184(r1), 0, qr0 +/* 801C4694 001C15F4 DB 81 00 A0 */ stfd f28, 0xa0(r1) +/* 801C4698 001C15F8 F3 81 00 A8 */ psq_st f28, 168(r1), 0, qr0 +/* 801C469C 001C15FC 93 E1 00 9C */ stw r31, 0x9c(r1) +/* 801C46A0 001C1600 93 C1 00 98 */ stw r30, 0x98(r1) +/* 801C46A4 001C1604 93 A1 00 94 */ stw r29, 0x94(r1) +/* 801C46A8 001C1608 7C 9E 23 78 */ mr r30, r4 +/* 801C46AC 001C160C 7C 7D 1B 78 */ mr r29, r3 +/* 801C46B0 001C1610 83 E4 08 4C */ lwz r31, 0x84c(r4) +/* 801C46B4 001C1614 C0 23 00 40 */ lfs f1, 0x40(r3) +/* 801C46B8 001C1618 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801C46BC 001C161C 80 1F 02 F8 */ lwz r0, 0x2f8(r31) +/* 801C46C0 001C1620 C0 63 00 50 */ lfs f3, 0x50(r3) +/* 801C46C4 001C1624 EF A1 00 28 */ fsubs f29, f1, f0 +/* 801C46C8 001C1628 C0 5F 00 50 */ lfs f2, 0x50(r31) +/* 801C46CC 001C162C 2C 00 00 01 */ cmpwi r0, 1 +/* 801C46D0 001C1630 C0 23 00 60 */ lfs f1, 0x60(r3) +/* 801C46D4 001C1634 C0 1F 00 60 */ lfs f0, 0x60(r31) +/* 801C46D8 001C1638 EF C3 10 28 */ fsubs f30, f3, f2 +/* 801C46DC 001C163C C0 5F 00 48 */ lfs f2, 0x48(r31) +/* 801C46E0 001C1640 EF E1 00 28 */ fsubs f31, f1, f0 +/* 801C46E4 001C1644 C0 3F 00 38 */ lfs f1, 0x38(r31) +/* 801C46E8 001C1648 C3 82 AB 00 */ lfs f28, lbl_805AC820@sda21(r2) +/* 801C46EC 001C164C 41 82 00 08 */ beq lbl_801C46F4 +/* 801C46F0 001C1650 C3 82 AB 04 */ lfs f28, lbl_805AC824@sda21(r2) +lbl_801C46F4: +/* 801C46F4 001C1654 38 61 00 08 */ addi r3, r1, 8 +/* 801C46F8 001C1658 48 14 FB 09 */ bl __ct__9CVector2fFff +/* 801C46FC 001C165C FC 20 E8 90 */ fmr f1, f29 +/* 801C4700 001C1660 38 61 00 10 */ addi r3, r1, 0x10 +/* 801C4704 001C1664 FC 40 F0 90 */ fmr f2, f30 +/* 801C4708 001C1668 48 14 FA F9 */ bl __ct__9CVector2fFff +/* 801C470C 001C166C 38 61 00 10 */ addi r3, r1, 0x10 +/* 801C4710 001C1670 38 81 00 08 */ addi r4, r1, 8 +/* 801C4714 001C1674 48 14 F8 B1 */ bl GetAngleDiff__9CVector2fFRC9CVector2fRC9CVector2f +/* 801C4718 001C1678 FC 01 E0 40 */ fcmpo cr0, f1, f28 +/* 801C471C 001C167C 40 80 01 34 */ bge lbl_801C4850 +/* 801C4720 001C1680 C0 7D 00 48 */ lfs f3, 0x48(r29) +/* 801C4724 001C1684 C0 5D 00 38 */ lfs f2, 0x38(r29) +/* 801C4728 001C1688 EC 3E 00 F2 */ fmuls f1, f30, f3 +/* 801C472C 001C168C C0 9D 00 58 */ lfs f4, 0x58(r29) +/* 801C4730 001C1690 C0 02 AA 98 */ lfs f0, lbl_805AC7B8@sda21(r2) +/* 801C4734 001C1694 D0 41 00 60 */ stfs f2, 0x60(r1) +/* 801C4738 001C1698 EC 3D 08 BA */ fmadds f1, f29, f2, f1 +/* 801C473C 001C169C D0 61 00 64 */ stfs f3, 0x64(r1) +/* 801C4740 001C16A0 EC 3F 09 3A */ fmadds f1, f31, f4, f1 +/* 801C4744 001C16A4 D0 81 00 68 */ stfs f4, 0x68(r1) +/* 801C4748 001C16A8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C474C 001C16AC 40 80 01 04 */ bge lbl_801C4850 +/* 801C4750 001C16B0 C1 1F 00 50 */ lfs f8, 0x50(r31) +/* 801C4754 001C16B4 C1 7D 00 50 */ lfs f11, 0x50(r29) +/* 801C4758 001C16B8 C0 BF 00 40 */ lfs f5, 0x40(r31) +/* 801C475C 001C16BC EC E8 58 28 */ fsubs f7, f8, f11 +/* 801C4760 001C16C0 C1 9D 00 40 */ lfs f12, 0x40(r29) +/* 801C4764 001C16C4 C1 3F 00 60 */ lfs f9, 0x60(r31) +/* 801C4768 001C16C8 EC 85 60 28 */ fsubs f4, f5, f12 +/* 801C476C 001C16CC C1 5D 00 60 */ lfs f10, 0x60(r29) +/* 801C4770 001C16D0 EC 27 01 F2 */ fmuls f1, f7, f7 +/* 801C4774 001C16D4 EC C9 50 28 */ fsubs f6, f9, f10 +/* 801C4778 001C16D8 C0 1D 03 00 */ lfs f0, 0x300(r29) +/* 801C477C 001C16DC EC 44 01 32 */ fmuls f2, f4, f4 +/* 801C4780 001C16E0 EC 00 00 32 */ fmuls f0, f0, f0 +/* 801C4784 001C16E4 D0 A1 00 48 */ stfs f5, 0x48(r1) +/* 801C4788 001C16E8 EC 66 01 B2 */ fmuls f3, f6, f6 +/* 801C478C 001C16EC EC 22 08 2A */ fadds f1, f2, f1 +/* 801C4790 001C16F0 D1 01 00 4C */ stfs f8, 0x4c(r1) +/* 801C4794 001C16F4 D1 21 00 50 */ stfs f9, 0x50(r1) +/* 801C4798 001C16F8 EC 23 08 2A */ fadds f1, f3, f1 +/* 801C479C 001C16FC D0 81 00 54 */ stfs f4, 0x54(r1) +/* 801C47A0 001C1700 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C47A4 001C1704 D0 E1 00 58 */ stfs f7, 0x58(r1) +/* 801C47A8 001C1708 D0 C1 00 5C */ stfs f6, 0x5c(r1) +/* 801C47AC 001C170C 40 80 00 A4 */ bge lbl_801C4850 +/* 801C47B0 001C1710 FC 0A 48 40 */ fcmpo cr0, f10, f9 +/* 801C47B4 001C1714 D1 81 00 3C */ stfs f12, 0x3c(r1) +/* 801C47B8 001C1718 D1 61 00 40 */ stfs f11, 0x40(r1) +/* 801C47BC 001C171C D1 41 00 44 */ stfs f10, 0x44(r1) +/* 801C47C0 001C1720 D0 A1 00 30 */ stfs f5, 0x30(r1) +/* 801C47C4 001C1724 D1 01 00 34 */ stfs f8, 0x34(r1) +/* 801C47C8 001C1728 D1 21 00 38 */ stfs f9, 0x38(r1) +/* 801C47CC 001C172C 40 81 00 84 */ ble lbl_801C4850 +/* 801C47D0 001C1730 C0 02 AA AC */ lfs f0, lbl_805AC7CC@sda21(r2) +/* 801C47D4 001C1734 EC 00 48 2A */ fadds f0, f0, f9 +/* 801C47D8 001C1738 FC 0A 00 40 */ fcmpo cr0, f10, f0 +/* 801C47DC 001C173C 40 80 00 74 */ bge lbl_801C4850 +/* 801C47E0 001C1740 7F A4 EB 78 */ mr r4, r29 +/* 801C47E4 001C1744 38 61 00 24 */ addi r3, r1, 0x24 +/* 801C47E8 001C1748 4B FF CE 89 */ bl sub_801c1670 +/* 801C47EC 001C174C C0 41 00 24 */ lfs f2, 0x24(r1) +/* 801C47F0 001C1750 7F A4 EB 78 */ mr r4, r29 +/* 801C47F4 001C1754 C0 21 00 28 */ lfs f1, 0x28(r1) +/* 801C47F8 001C1758 7F C5 F3 78 */ mr r5, r30 +/* 801C47FC 001C175C C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 801C4800 001C1760 38 61 00 18 */ addi r3, r1, 0x18 +/* 801C4804 001C1764 D0 41 00 78 */ stfs f2, 0x78(r1) +/* 801C4808 001C1768 D0 21 00 7C */ stfs f1, 0x7c(r1) +/* 801C480C 001C176C D0 01 00 80 */ stfs f0, 0x80(r1) +/* 801C4810 001C1770 4B FF CD C9 */ bl sub_801c15d8 +/* 801C4814 001C1774 C0 41 00 18 */ lfs f2, 0x18(r1) +/* 801C4818 001C1778 7F A3 EB 78 */ mr r3, r29 +/* 801C481C 001C177C C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 801C4820 001C1780 7F C4 F3 78 */ mr r4, r30 +/* 801C4824 001C1784 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 801C4828 001C1788 38 A1 00 78 */ addi r5, r1, 0x78 +/* 801C482C 001C178C D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 801C4830 001C1790 38 C1 00 6C */ addi r6, r1, 0x6c +/* 801C4834 001C1794 D0 21 00 70 */ stfs f1, 0x70(r1) +/* 801C4838 001C1798 D0 01 00 74 */ stfs f0, 0x74(r1) +/* 801C483C 001C179C 48 03 05 95 */ bl IsPatternObstructed__10CPatternedCFR13CStateManagerRC9CVector3fRC9CVector3f +/* 801C4840 001C17A0 54 60 06 3E */ clrlwi r0, r3, 0x18 +/* 801C4844 001C17A4 7C 00 00 34 */ cntlzw r0, r0 +/* 801C4848 001C17A8 54 03 D9 7E */ srwi r3, r0, 5 +/* 801C484C 001C17AC 48 00 00 08 */ b lbl_801C4854 +lbl_801C4850: +/* 801C4850 001C17B0 38 60 00 00 */ li r3, 0 +lbl_801C4854: +/* 801C4854 001C17B4 E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 +/* 801C4858 001C17B8 CB E1 00 D0 */ lfd f31, 0xd0(r1) +/* 801C485C 001C17BC E3 C1 00 C8 */ psq_l f30, 200(r1), 0, qr0 +/* 801C4860 001C17C0 CB C1 00 C0 */ lfd f30, 0xc0(r1) +/* 801C4864 001C17C4 E3 A1 00 B8 */ psq_l f29, 184(r1), 0, qr0 +/* 801C4868 001C17C8 CB A1 00 B0 */ lfd f29, 0xb0(r1) +/* 801C486C 001C17CC E3 81 00 A8 */ psq_l f28, 168(r1), 0, qr0 +/* 801C4870 001C17D0 CB 81 00 A0 */ lfd f28, 0xa0(r1) +/* 801C4874 001C17D4 83 E1 00 9C */ lwz r31, 0x9c(r1) +/* 801C4878 001C17D8 83 C1 00 98 */ lwz r30, 0x98(r1) +/* 801C487C 001C17DC 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 801C4880 001C17E0 83 A1 00 94 */ lwz r29, 0x94(r1) +/* 801C4884 001C17E4 7C 08 03 A6 */ mtlr r0 +/* 801C4888 001C17E8 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 801C488C 001C17EC 4E 80 00 20 */ blr + +.global ShouldSpecialAttack__12CMetroidBetaFR13CStateManagerf +ShouldSpecialAttack__12CMetroidBetaFR13CStateManagerf: +/* 801C4890 001C17F0 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801C4894 001C17F4 7C 08 02 A6 */ mflr r0 +/* 801C4898 001C17F8 90 01 00 54 */ stw r0, 0x54(r1) +/* 801C489C 001C17FC 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801C48A0 001C1800 7C 9F 23 78 */ mr r31, r4 +/* 801C48A4 001C1804 93 C1 00 48 */ stw r30, 0x48(r1) +/* 801C48A8 001C1808 7C 7E 1B 78 */ mr r30, r3 +/* 801C48AC 001C180C 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 801C48B0 001C1810 80 63 00 04 */ lwz r3, 4(r3) +/* 801C48B4 001C1814 80 04 00 04 */ lwz r0, 4(r4) +/* 801C48B8 001C1818 7C 03 00 00 */ cmpw r3, r0 +/* 801C48BC 001C181C 40 82 01 44 */ bne lbl_801C4A00 +/* 801C48C0 001C1820 C0 1E 07 94 */ lfs f0, 0x794(r30) +/* 801C48C4 001C1824 C0 22 AA 98 */ lfs f1, lbl_805AC7B8@sda21(r2) +/* 801C48C8 001C1828 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801C48CC 001C182C 4C 40 13 82 */ cror 2, 0, 2 +/* 801C48D0 001C1830 40 82 01 30 */ bne lbl_801C4A00 +/* 801C48D4 001C1834 81 84 00 00 */ lwz r12, 0(r4) +/* 801C48D8 001C1838 7F E5 FB 78 */ mr r5, r31 +/* 801C48DC 001C183C 38 61 00 30 */ addi r3, r1, 0x30 +/* 801C48E0 001C1840 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801C48E4 001C1844 7D 89 03 A6 */ mtctr r12 +/* 801C48E8 001C1848 4E 80 04 21 */ bctrl +/* 801C48EC 001C184C C0 81 00 30 */ lfs f4, 0x30(r1) +/* 801C48F0 001C1850 C0 61 00 34 */ lfs f3, 0x34(r1) +/* 801C48F4 001C1854 C0 41 00 38 */ lfs f2, 0x38(r1) +/* 801C48F8 001C1858 D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 801C48FC 001C185C D0 61 00 40 */ stfs f3, 0x40(r1) +/* 801C4900 001C1860 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 801C4904 001C1864 C0 1E 00 50 */ lfs f0, 0x50(r30) +/* 801C4908 001C1868 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 801C490C 001C186C EC 63 00 28 */ fsubs f3, f3, f0 +/* 801C4910 001C1870 C0 1E 00 60 */ lfs f0, 0x60(r30) +/* 801C4914 001C1874 EC 84 08 28 */ fsubs f4, f4, f1 +/* 801C4918 001C1878 C0 BE 02 FC */ lfs f5, 0x2fc(r30) +/* 801C491C 001C187C EC 42 00 28 */ fsubs f2, f2, f0 +/* 801C4920 001C1880 EC 23 00 F2 */ fmuls f1, f3, f3 +/* 801C4924 001C1884 EC 05 01 72 */ fmuls f0, f5, f5 +/* 801C4928 001C1888 EC 24 09 3A */ fmadds f1, f4, f4, f1 +/* 801C492C 001C188C EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 801C4930 001C1890 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C4934 001C1894 40 80 00 CC */ bge lbl_801C4A00 +/* 801C4938 001C1898 7F C3 F3 78 */ mr r3, r30 +/* 801C493C 001C189C 7F E4 FB 78 */ mr r4, r31 +/* 801C4940 001C18A0 81 9E 00 00 */ lwz r12, 0(r30) +/* 801C4944 001C18A4 C0 22 AA 98 */ lfs f1, lbl_805AC7B8@sda21(r2) +/* 801C4948 001C18A8 81 8C 01 E8 */ lwz r12, 0x1e8(r12) +/* 801C494C 001C18AC 7D 89 03 A6 */ mtctr r12 +/* 801C4950 001C18B0 4E 80 04 21 */ bctrl +/* 801C4954 001C18B4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C4958 001C18B8 40 82 00 A8 */ bne lbl_801C4A00 +/* 801C495C 001C18BC C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 801C4960 001C18C0 7F C3 F3 78 */ mr r3, r30 +/* 801C4964 001C18C4 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 801C4968 001C18C8 7F E4 FB 78 */ mr r4, r31 +/* 801C496C 001C18CC C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801C4970 001C18D0 38 A1 00 24 */ addi r5, r1, 0x24 +/* 801C4974 001C18D4 38 C1 00 3C */ addi r6, r1, 0x3c +/* 801C4978 001C18D8 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801C497C 001C18DC D0 21 00 28 */ stfs f1, 0x28(r1) +/* 801C4980 001C18E0 D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 801C4984 001C18E4 48 03 04 4D */ bl IsPatternObstructed__10CPatternedCFR13CStateManagerRC9CVector3fRC9CVector3f +/* 801C4988 001C18E8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C498C 001C18EC 40 82 00 74 */ bne lbl_801C4A00 +/* 801C4990 001C18F0 A0 1E 06 78 */ lhz r0, 0x678(r30) +/* 801C4994 001C18F4 7F E3 FB 78 */ mr r3, r31 +/* 801C4998 001C18F8 38 81 00 18 */ addi r4, r1, 0x18 +/* 801C499C 001C18FC B0 01 00 18 */ sth r0, 0x18(r1) +/* 801C49A0 001C1900 4B E8 7B D5 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801C49A4 001C1904 7C 64 1B 78 */ mr r4, r3 +/* 801C49A8 001C1908 38 61 00 1C */ addi r3, r1, 0x1c +/* 801C49AC 001C190C 4B EE 2B C9 */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" +/* 801C49B0 001C1910 83 E3 00 04 */ lwz r31, 4(r3) +/* 801C49B4 001C1914 28 1F 00 00 */ cmplwi r31, 0 +/* 801C49B8 001C1918 41 82 00 40 */ beq lbl_801C49F8 +/* 801C49BC 001C191C A0 1E 00 08 */ lhz r0, 8(r30) +/* 801C49C0 001C1920 7F E3 FB 78 */ mr r3, r31 +/* 801C49C4 001C1924 38 81 00 14 */ addi r4, r1, 0x14 +/* 801C49C8 001C1928 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801C49CC 001C192C B0 01 00 14 */ sth r0, 0x14(r1) +/* 801C49D0 001C1930 48 07 46 21 */ bl IsPartOfTeam__10CTeamAiMgrCF9TUniqueId +/* 801C49D4 001C1934 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C49D8 001C1938 41 82 00 20 */ beq lbl_801C49F8 +/* 801C49DC 001C193C A0 1E 00 08 */ lhz r0, 8(r30) +/* 801C49E0 001C1940 7F E3 FB 78 */ mr r3, r31 +/* 801C49E4 001C1944 38 81 00 0C */ addi r4, r1, 0xc +/* 801C49E8 001C1948 B0 01 00 08 */ sth r0, 8(r1) +/* 801C49EC 001C194C B0 01 00 0C */ sth r0, 0xc(r1) +/* 801C49F0 001C1950 48 07 42 BD */ bl AddMeleeAttacker__10CTeamAiMgrF9TUniqueId +/* 801C49F4 001C1954 48 00 00 10 */ b lbl_801C4A04 +lbl_801C49F8: +/* 801C49F8 001C1958 38 60 00 01 */ li r3, 1 +/* 801C49FC 001C195C 48 00 00 08 */ b lbl_801C4A04 +lbl_801C4A00: +/* 801C4A00 001C1960 38 60 00 00 */ li r3, 0 +lbl_801C4A04: +/* 801C4A04 001C1964 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801C4A08 001C1968 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801C4A0C 001C196C 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 801C4A10 001C1970 7C 08 03 A6 */ mtlr r0 +/* 801C4A14 001C1974 38 21 00 50 */ addi r1, r1, 0x50 +/* 801C4A18 001C1978 4E 80 00 20 */ blr + +.global ShouldAttack__12CMetroidBetaFR13CStateManagerf +ShouldAttack__12CMetroidBetaFR13CStateManagerf: +/* 801C4A1C 001C197C 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801C4A20 001C1980 7C 08 02 A6 */ mflr r0 +/* 801C4A24 001C1984 90 01 00 54 */ stw r0, 0x54(r1) +/* 801C4A28 001C1988 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801C4A2C 001C198C 7C 9F 23 78 */ mr r31, r4 +/* 801C4A30 001C1990 93 C1 00 48 */ stw r30, 0x48(r1) +/* 801C4A34 001C1994 7C 7E 1B 78 */ mr r30, r3 +/* 801C4A38 001C1998 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 801C4A3C 001C199C 88 04 09 C4 */ lbz r0, 0x9c4(r4) +/* 801C4A40 001C19A0 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 801C4A44 001C19A4 40 82 00 24 */ bne lbl_801C4A68 +/* 801C4A48 001C19A8 80 7E 00 04 */ lwz r3, 4(r30) +/* 801C4A4C 001C19AC 80 04 00 04 */ lwz r0, 4(r4) +/* 801C4A50 001C19B0 7C 03 00 00 */ cmpw r3, r0 +/* 801C4A54 001C19B4 40 82 00 14 */ bne lbl_801C4A68 +/* 801C4A58 001C19B8 C0 3E 07 94 */ lfs f1, 0x794(r30) +/* 801C4A5C 001C19BC C0 02 AA 98 */ lfs f0, lbl_805AC7B8@sda21(r2) +/* 801C4A60 001C19C0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C4A64 001C19C4 40 81 00 0C */ ble lbl_801C4A70 +lbl_801C4A68: +/* 801C4A68 001C19C8 38 60 00 00 */ li r3, 0 +/* 801C4A6C 001C19CC 48 00 01 54 */ b lbl_801C4BC0 +lbl_801C4A70: +/* 801C4A70 001C19D0 80 04 03 04 */ lwz r0, 0x304(r4) +/* 801C4A74 001C19D4 2C 00 00 04 */ cmpwi r0, 4 +/* 801C4A78 001C19D8 41 82 00 24 */ beq lbl_801C4A9C +/* 801C4A7C 001C19DC 2C 00 00 05 */ cmpwi r0, 5 +/* 801C4A80 001C19E0 41 82 00 1C */ beq lbl_801C4A9C +/* 801C4A84 001C19E4 80 04 03 B8 */ lwz r0, 0x3b8(r4) +/* 801C4A88 001C19E8 2C 00 00 00 */ cmpwi r0, 0 +/* 801C4A8C 001C19EC 40 82 00 10 */ bne lbl_801C4A9C +/* 801C4A90 001C19F0 80 04 02 F8 */ lwz r0, 0x2f8(r4) +/* 801C4A94 001C19F4 2C 00 00 03 */ cmpwi r0, 3 +/* 801C4A98 001C19F8 40 82 00 0C */ bne lbl_801C4AA4 +lbl_801C4A9C: +/* 801C4A9C 001C19FC 38 60 00 00 */ li r3, 0 +/* 801C4AA0 001C1A00 48 00 01 20 */ b lbl_801C4BC0 +lbl_801C4AA4: +/* 801C4AA4 001C1A04 7F C4 F3 78 */ mr r4, r30 +/* 801C4AA8 001C1A08 38 61 00 20 */ addi r3, r1, 0x20 +/* 801C4AAC 001C1A0C 4B FF CB C5 */ bl sub_801c1670 +/* 801C4AB0 001C1A10 C0 41 00 20 */ lfs f2, 0x20(r1) +/* 801C4AB4 001C1A14 7F C4 F3 78 */ mr r4, r30 +/* 801C4AB8 001C1A18 C0 21 00 24 */ lfs f1, 0x24(r1) +/* 801C4ABC 001C1A1C 7F E5 FB 78 */ mr r5, r31 +/* 801C4AC0 001C1A20 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 801C4AC4 001C1A24 38 61 00 14 */ addi r3, r1, 0x14 +/* 801C4AC8 001C1A28 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 801C4ACC 001C1A2C D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 801C4AD0 001C1A30 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 801C4AD4 001C1A34 4B FF CB 05 */ bl sub_801c15d8 +/* 801C4AD8 001C1A38 C0 81 00 14 */ lfs f4, 0x14(r1) +/* 801C4ADC 001C1A3C C0 21 00 18 */ lfs f1, 0x18(r1) +/* 801C4AE0 001C1A40 C0 61 00 1C */ lfs f3, 0x1c(r1) +/* 801C4AE4 001C1A44 D0 81 00 2C */ stfs f4, 0x2c(r1) +/* 801C4AE8 001C1A48 C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 801C4AEC 001C1A4C D0 21 00 30 */ stfs f1, 0x30(r1) +/* 801C4AF0 001C1A50 EC 21 00 28 */ fsubs f1, f1, f0 +/* 801C4AF4 001C1A54 C0 01 00 38 */ lfs f0, 0x38(r1) +/* 801C4AF8 001C1A58 D0 61 00 34 */ stfs f3, 0x34(r1) +/* 801C4AFC 001C1A5C C0 42 AA D0 */ lfs f2, lbl_805AC7F0@sda21(r2) +/* 801C4B00 001C1A60 EC 84 00 28 */ fsubs f4, f4, f0 +/* 801C4B04 001C1A64 EC 01 00 72 */ fmuls f0, f1, f1 +/* 801C4B08 001C1A68 C0 21 00 40 */ lfs f1, 0x40(r1) +/* 801C4B0C 001C1A6C C0 BE 03 00 */ lfs f5, 0x300(r30) +/* 801C4B10 001C1A70 C0 DE 02 FC */ lfs f6, 0x2fc(r30) +/* 801C4B14 001C1A74 EC 63 08 28 */ fsubs f3, f3, f1 +/* 801C4B18 001C1A78 EC 04 01 3A */ fmadds f0, f4, f4, f0 +/* 801C4B1C 001C1A7C EC 25 30 28 */ fsubs f1, f5, f6 +/* 801C4B20 001C1A80 EC 63 00 FA */ fmadds f3, f3, f3, f0 +/* 801C4B24 001C1A84 EC 22 00 72 */ fmuls f1, f2, f1 +/* 801C4B28 001C1A88 EC 01 30 2A */ fadds f0, f1, f6 +/* 801C4B2C 001C1A8C EC 25 08 28 */ fsubs f1, f5, f1 +/* 801C4B30 001C1A90 EC 00 00 32 */ fmuls f0, f0, f0 +/* 801C4B34 001C1A94 EC 21 00 72 */ fmuls f1, f1, f1 +/* 801C4B38 001C1A98 FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 801C4B3C 001C1A9C 41 80 00 0C */ blt lbl_801C4B48 +/* 801C4B40 001C1AA0 FC 03 08 40 */ fcmpo cr0, f3, f1 +/* 801C4B44 001C1AA4 40 81 00 0C */ ble lbl_801C4B50 +lbl_801C4B48: +/* 801C4B48 001C1AA8 38 60 00 00 */ li r3, 0 +/* 801C4B4C 001C1AAC 48 00 00 74 */ b lbl_801C4BC0 +lbl_801C4B50: +/* 801C4B50 001C1AB0 7F C3 F3 78 */ mr r3, r30 +/* 801C4B54 001C1AB4 7F E4 FB 78 */ mr r4, r31 +/* 801C4B58 001C1AB8 38 A1 00 38 */ addi r5, r1, 0x38 +/* 801C4B5C 001C1ABC 38 C1 00 2C */ addi r6, r1, 0x2c +/* 801C4B60 001C1AC0 48 03 02 71 */ bl IsPatternObstructed__10CPatternedCFR13CStateManagerRC9CVector3fRC9CVector3f +/* 801C4B64 001C1AC4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C4B68 001C1AC8 41 82 00 0C */ beq lbl_801C4B74 +/* 801C4B6C 001C1ACC 38 60 00 00 */ li r3, 0 +/* 801C4B70 001C1AD0 48 00 00 50 */ b lbl_801C4BC0 +lbl_801C4B74: +/* 801C4B74 001C1AD4 A0 1E 06 78 */ lhz r0, 0x678(r30) +/* 801C4B78 001C1AD8 7F E3 FB 78 */ mr r3, r31 +/* 801C4B7C 001C1ADC 38 81 00 08 */ addi r4, r1, 8 +/* 801C4B80 001C1AE0 B0 01 00 08 */ sth r0, 8(r1) +/* 801C4B84 001C1AE4 4B E8 7A 21 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801C4B88 001C1AE8 7C 64 1B 78 */ mr r4, r3 +/* 801C4B8C 001C1AEC 38 61 00 0C */ addi r3, r1, 0xc +/* 801C4B90 001C1AF0 4B EE 29 E5 */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" +/* 801C4B94 001C1AF4 80 63 00 04 */ lwz r3, 4(r3) +/* 801C4B98 001C1AF8 28 03 00 00 */ cmplwi r3, 0 +/* 801C4B9C 001C1AFC 41 82 00 20 */ beq lbl_801C4BBC +/* 801C4BA0 001C1B00 80 03 00 7C */ lwz r0, 0x7c(r3) +/* 801C4BA4 001C1B04 80 63 00 3C */ lwz r3, 0x3c(r3) +/* 801C4BA8 001C1B08 7C 60 02 78 */ xor r0, r3, r0 +/* 801C4BAC 001C1B0C 7C 00 00 34 */ cntlzw r0, r0 +/* 801C4BB0 001C1B10 7C 60 00 30 */ slw r0, r3, r0 +/* 801C4BB4 001C1B14 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801C4BB8 001C1B18 48 00 00 08 */ b lbl_801C4BC0 +lbl_801C4BBC: +/* 801C4BBC 001C1B1C 38 60 00 01 */ li r3, 1 +lbl_801C4BC0: +/* 801C4BC0 001C1B20 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801C4BC4 001C1B24 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801C4BC8 001C1B28 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 801C4BCC 001C1B2C 7C 08 03 A6 */ mtlr r0 +/* 801C4BD0 001C1B30 38 21 00 50 */ addi r1, r1, 0x50 +/* 801C4BD4 001C1B34 4E 80 00 20 */ blr + +.global ShotAt__12CMetroidBetaFR13CStateManagerf +ShotAt__12CMetroidBetaFR13CStateManagerf: +/* 801C4BD8 001C1B38 88 03 08 40 */ lbz r0, 0x840(r3) +/* 801C4BDC 001C1B3C 54 03 E7 FE */ rlwinm r3, r0, 0x1c, 0x1f, 0x1f +/* 801C4BE0 001C1B40 4E 80 00 20 */ blr + +.global Attacked__12CMetroidBetaFR13CStateManagerf +Attacked__12CMetroidBetaFR13CStateManagerf: +/* 801C4BE4 001C1B44 C0 63 07 DC */ lfs f3, 0x7dc(r3) +/* 801C4BE8 001C1B48 C0 43 07 E0 */ lfs f2, 0x7e0(r3) +/* 801C4BEC 001C1B4C C0 02 AA 98 */ lfs f0, lbl_805AC7B8@sda21(r2) +/* 801C4BF0 001C1B50 EC 23 10 28 */ fsubs f1, f3, f2 +/* 801C4BF4 001C1B54 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C4BF8 001C1B58 40 81 00 3C */ ble lbl_801C4C34 +/* 801C4BFC 001C1B5C C0 03 06 58 */ lfs f0, 0x658(r3) +/* 801C4C00 001C1B60 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801C4C04 001C1B64 40 80 00 18 */ bge lbl_801C4C1C +/* 801C4C08 001C1B68 FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 801C4C0C 001C1B6C 4C 41 13 82 */ cror 2, 1, 2 +/* 801C4C10 001C1B70 7C 00 00 26 */ mfcr r0 +/* 801C4C14 001C1B74 54 03 1F FE */ rlwinm r3, r0, 3, 0x1f, 0x1f +/* 801C4C18 001C1B78 4E 80 00 20 */ blr +lbl_801C4C1C: +/* 801C4C1C 001C1B7C C0 03 06 5C */ lfs f0, 0x65c(r3) +/* 801C4C20 001C1B80 FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 801C4C24 001C1B84 4C 41 13 82 */ cror 2, 1, 2 +/* 801C4C28 001C1B88 40 82 00 0C */ bne lbl_801C4C34 +/* 801C4C2C 001C1B8C 38 60 00 01 */ li r3, 1 +/* 801C4C30 001C1B90 4E 80 00 20 */ blr +lbl_801C4C34: +/* 801C4C34 001C1B94 38 60 00 00 */ li r3, 0 +/* 801C4C38 001C1B98 4E 80 00 20 */ blr + +.global PathShagged__12CMetroidBetaFR13CStateManagerf +PathShagged__12CMetroidBetaFR13CStateManagerf: +/* 801C4C3C 001C1B9C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801C4C40 001C1BA0 7C 08 02 A6 */ mflr r0 +/* 801C4C44 001C1BA4 90 01 00 14 */ stw r0, 0x14(r1) +/* 801C4C48 001C1BA8 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801C4C4C 001C1BAC 7C 7F 1B 78 */ mr r31, r3 +/* 801C4C50 001C1BB0 81 83 00 00 */ lwz r12, 0(r3) +/* 801C4C54 001C1BB4 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801C4C58 001C1BB8 7D 89 03 A6 */ mtctr r12 +/* 801C4C5C 001C1BBC 4E 80 04 21 */ bctrl +/* 801C4C60 001C1BC0 28 03 00 00 */ cmplwi r3, 0 +/* 801C4C64 001C1BC4 41 82 00 2C */ beq lbl_801C4C90 +/* 801C4C68 001C1BC8 7F E3 FB 78 */ mr r3, r31 +/* 801C4C6C 001C1BCC 81 9F 00 00 */ lwz r12, 0(r31) +/* 801C4C70 001C1BD0 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801C4C74 001C1BD4 7D 89 03 A6 */ mtctr r12 +/* 801C4C78 001C1BD8 4E 80 04 21 */ bctrl +/* 801C4C7C 001C1BDC 80 63 00 CC */ lwz r3, 0xcc(r3) +/* 801C4C80 001C1BE0 7C 03 00 D0 */ neg r0, r3 +/* 801C4C84 001C1BE4 7C 00 1B 78 */ or r0, r0, r3 +/* 801C4C88 001C1BE8 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801C4C8C 001C1BEC 48 00 00 08 */ b lbl_801C4C94 +lbl_801C4C90: +/* 801C4C90 001C1BF0 38 60 00 00 */ li r3, 0 +lbl_801C4C94: +/* 801C4C94 001C1BF4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801C4C98 001C1BF8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801C4C9C 001C1BFC 7C 08 03 A6 */ mtlr r0 +/* 801C4CA0 001C1C00 38 21 00 10 */ addi r1, r1, 0x10 +/* 801C4CA4 001C1C04 4E 80 00 20 */ blr + +.global AttackOver__12CMetroidBetaFR13CStateManagerf +AttackOver__12CMetroidBetaFR13CStateManagerf: +/* 801C4CA8 001C1C08 38 60 00 00 */ li r3, 0 +/* 801C4CAC 001C1C0C 4E 80 00 20 */ blr + +.global sub_801c4cb0 +sub_801c4cb0: +/* 801C4CB0 001C1C10 88 03 08 40 */ lbz r0, 0x840(r3) +/* 801C4CB4 001C1C14 38 80 00 00 */ li r4, 0 +/* 801C4CB8 001C1C18 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801C4CBC 001C1C1C 41 82 00 18 */ beq lbl_801C4CD4 +/* 801C4CC0 001C1C20 80 63 04 50 */ lwz r3, 0x450(r3) +/* 801C4CC4 001C1C24 88 03 03 00 */ lbz r0, 0x300(r3) +/* 801C4CC8 001C1C28 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801C4CCC 001C1C2C 40 82 00 08 */ bne lbl_801C4CD4 +/* 801C4CD0 001C1C30 38 80 00 01 */ li r4, 1 +lbl_801C4CD4: +/* 801C4CD4 001C1C34 7C 83 23 78 */ mr r3, r4 +/* 801C4CD8 001C1C38 4E 80 00 20 */ blr + +.global GetCollisionResponseType__12CMetroidBetaCFRC9CVector3fRC9CVector3fRC11CWeaponModei +GetCollisionResponseType__12CMetroidBetaCFRC9CVector3fRC9CVector3fRC11CWeaponModei: +/* 801C4CDC 001C1C3C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801C4CE0 001C1C40 7C 08 02 A6 */ mflr r0 +/* 801C4CE4 001C1C44 90 01 00 24 */ stw r0, 0x24(r1) +/* 801C4CE8 001C1C48 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801C4CEC 001C1C4C 3B E0 00 21 */ li r31, 0x21 +/* 801C4CF0 001C1C50 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801C4CF4 001C1C54 7C 7E 1B 78 */ mr r30, r3 +/* 801C4CF8 001C1C58 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801C4CFC 001C1C5C 7C DD 33 78 */ mr r29, r6 +/* 801C4D00 001C1C60 80 63 04 50 */ lwz r3, 0x450(r3) +/* 801C4D04 001C1C64 4B F7 53 C9 */ bl GetPercentageFrozen__15CBodyControllerCFv +/* 801C4D08 001C1C68 C0 02 AA 98 */ lfs f0, lbl_805AC7B8@sda21(r2) +/* 801C4D0C 001C1C6C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C4D10 001C1C70 7C 00 00 26 */ mfcr r0 +/* 801C4D14 001C1C74 7F C3 F3 78 */ mr r3, r30 +/* 801C4D18 001C1C78 81 9E 00 00 */ lwz r12, 0(r30) +/* 801C4D1C 001C1C7C 54 1E 17 FE */ rlwinm r30, r0, 2, 0x1f, 0x1f +/* 801C4D20 001C1C80 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 801C4D24 001C1C84 7D 89 03 A6 */ mtctr r12 +/* 801C4D28 001C1C88 4E 80 04 21 */ bctrl +/* 801C4D2C 001C1C8C 7F A4 EB 78 */ mr r4, r29 +/* 801C4D30 001C1C90 38 A0 00 00 */ li r5, 0 +/* 801C4D34 001C1C94 4B F3 D9 D5 */ bl WeaponHurts__20CDamageVulnerabilityCFRC11CWeaponMode +/* 801C4D38 001C1C98 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C4D3C 001C1C9C 40 82 00 10 */ bne lbl_801C4D4C +/* 801C4D40 001C1CA0 28 1E 00 00 */ cmplwi r30, 0 +/* 801C4D44 001C1CA4 40 82 00 08 */ bne lbl_801C4D4C +/* 801C4D48 001C1CA8 3B E0 00 3A */ li r31, 0x3a +lbl_801C4D4C: +/* 801C4D4C 001C1CAC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801C4D50 001C1CB0 7F E3 FB 78 */ mr r3, r31 +/* 801C4D54 001C1CB4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801C4D58 001C1CB8 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801C4D5C 001C1CBC 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801C4D60 001C1CC0 7C 08 03 A6 */ mtlr r0 +/* 801C4D64 001C1CC4 38 21 00 20 */ addi r1, r1, 0x20 +/* 801C4D68 001C1CC8 4E 80 00 20 */ blr + +.global GetDamageVulnerability__12CMetroidBetaCFRC9CVector3fRC9CVector3fRC11CDamageInfo +GetDamageVulnerability__12CMetroidBetaCFRC9CVector3fRC9CVector3fRC11CDamageInfo: +/* 801C4D6C 001C1CCC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801C4D70 001C1CD0 7C 08 02 A6 */ mflr r0 +/* 801C4D74 001C1CD4 90 01 00 14 */ stw r0, 0x14(r1) +/* 801C4D78 001C1CD8 81 83 00 00 */ lwz r12, 0(r3) +/* 801C4D7C 001C1CDC 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 801C4D80 001C1CE0 7D 89 03 A6 */ mtctr r12 +/* 801C4D84 001C1CE4 4E 80 04 21 */ bctrl +/* 801C4D88 001C1CE8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801C4D8C 001C1CEC 7C 08 03 A6 */ mtlr r0 +/* 801C4D90 001C1CF0 38 21 00 10 */ addi r1, r1, 0x10 +/* 801C4D94 001C1CF4 4E 80 00 20 */ blr + +.global GetDamageVulnerability__12CMetroidBetaCFv +GetDamageVulnerability__12CMetroidBetaCFv: +/* 801C4D98 001C1CF8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801C4D9C 001C1CFC 7C 08 02 A6 */ mflr r0 +/* 801C4DA0 001C1D00 90 01 00 14 */ stw r0, 0x14(r1) +/* 801C4DA4 001C1D04 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801C4DA8 001C1D08 7C 7F 1B 78 */ mr r31, r3 +/* 801C4DAC 001C1D0C 80 63 04 50 */ lwz r3, 0x450(r3) +/* 801C4DB0 001C1D10 4B F7 53 1D */ bl GetPercentageFrozen__15CBodyControllerCFv +/* 801C4DB4 001C1D14 C0 02 AA 98 */ lfs f0, lbl_805AC7B8@sda21(r2) +/* 801C4DB8 001C1D18 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C4DBC 001C1D1C 40 81 00 0C */ ble lbl_801C4DC8 +/* 801C4DC0 001C1D20 38 7F 05 6C */ addi r3, r31, 0x56c +/* 801C4DC4 001C1D24 48 00 00 40 */ b lbl_801C4E04 +lbl_801C4DC8: +/* 801C4DC8 001C1D28 88 7F 08 40 */ lbz r3, 0x840(r31) +/* 801C4DCC 001C1D2C 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f +/* 801C4DD0 001C1D30 41 82 00 0C */ beq lbl_801C4DDC +/* 801C4DD4 001C1D34 38 7F 05 D4 */ addi r3, r31, 0x5d4 +/* 801C4DD8 001C1D38 48 00 00 2C */ b lbl_801C4E04 +lbl_801C4DDC: +/* 801C4DDC 001C1D3C 54 60 EF FF */ rlwinm. r0, r3, 0x1d, 0x1f, 0x1f +/* 801C4DE0 001C1D40 41 82 00 1C */ beq lbl_801C4DFC +/* 801C4DE4 001C1D44 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801C4DE8 001C1D48 88 03 03 00 */ lbz r0, 0x300(r3) +/* 801C4DEC 001C1D4C 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801C4DF0 001C1D50 40 82 00 0C */ bne lbl_801C4DFC +/* 801C4DF4 001C1D54 38 7F 05 D4 */ addi r3, r31, 0x5d4 +/* 801C4DF8 001C1D58 48 00 00 0C */ b lbl_801C4E04 +lbl_801C4DFC: +/* 801C4DFC 001C1D5C 7F E3 FB 78 */ mr r3, r31 +/* 801C4E00 001C1D60 4B ED DF 71 */ bl GetDamageVulnerability__3CAiCFv +lbl_801C4E04: +/* 801C4E04 001C1D64 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801C4E08 001C1D68 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801C4E0C 001C1D6C 7C 08 03 A6 */ mtlr r0 +/* 801C4E10 001C1D70 38 21 00 10 */ addi r1, r1, 0x10 +/* 801C4E14 001C1D74 4E 80 00 20 */ blr + +.global GetOrigin__12CMetroidBetaCFRC13CStateManagerRC11CTeamAiRole +GetOrigin__12CMetroidBetaCFRC13CStateManagerRC11CTeamAiRole: +/* 801C4E18 001C1D78 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 801C4E1C 001C1D7C 7C 08 02 A6 */ mflr r0 +/* 801C4E20 001C1D80 90 01 00 94 */ stw r0, 0x94(r1) +/* 801C4E24 001C1D84 DB E1 00 80 */ stfd f31, 0x80(r1) +/* 801C4E28 001C1D88 F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0 +/* 801C4E2C 001C1D8C DB C1 00 70 */ stfd f30, 0x70(r1) +/* 801C4E30 001C1D90 F3 C1 00 78 */ psq_st f30, 120(r1), 0, qr0 +/* 801C4E34 001C1D94 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 801C4E38 001C1D98 93 C1 00 68 */ stw r30, 0x68(r1) +/* 801C4E3C 001C1D9C 93 A1 00 64 */ stw r29, 0x64(r1) +/* 801C4E40 001C1DA0 83 E5 08 4C */ lwz r31, 0x84c(r5) +/* 801C4E44 001C1DA4 7C 7D 1B 78 */ mr r29, r3 +/* 801C4E48 001C1DA8 C0 A4 00 50 */ lfs f5, 0x50(r4) +/* 801C4E4C 001C1DAC 7C 9E 23 78 */ mr r30, r4 +/* 801C4E50 001C1DB0 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 801C4E54 001C1DB4 38 61 00 08 */ addi r3, r1, 8 +/* 801C4E58 001C1DB8 C0 04 00 40 */ lfs f0, 0x40(r4) +/* 801C4E5C 001C1DBC EC 45 08 28 */ fsubs f2, f5, f1 +/* 801C4E60 001C1DC0 C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 801C4E64 001C1DC4 C0 84 00 60 */ lfs f4, 0x60(r4) +/* 801C4E68 001C1DC8 C0 7F 00 60 */ lfs f3, 0x60(r31) +/* 801C4E6C 001C1DCC EC 20 08 28 */ fsubs f1, f0, f1 +/* 801C4E70 001C1DD0 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801C4E74 001C1DD4 EC 64 18 28 */ fsubs f3, f4, f3 +/* 801C4E78 001C1DD8 D0 A1 00 38 */ stfs f5, 0x38(r1) +/* 801C4E7C 001C1DDC D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 801C4E80 001C1DE0 D0 21 00 40 */ stfs f1, 0x40(r1) +/* 801C4E84 001C1DE4 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 801C4E88 001C1DE8 D0 61 00 48 */ stfs f3, 0x48(r1) +/* 801C4E8C 001C1DEC 48 14 F3 75 */ bl __ct__9CVector2fFff +/* 801C4E90 001C1DF0 C0 41 00 08 */ lfs f2, 8(r1) +/* 801C4E94 001C1DF4 38 61 00 4C */ addi r3, r1, 0x4c +/* 801C4E98 001C1DF8 C0 21 00 0C */ lfs f1, 0xc(r1) +/* 801C4E9C 001C1DFC C0 02 AA 98 */ lfs f0, lbl_805AC7B8@sda21(r2) +/* 801C4EA0 001C1E00 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 801C4EA4 001C1E04 D0 21 00 50 */ stfs f1, 0x50(r1) +/* 801C4EA8 001C1E08 D0 01 00 54 */ stfs f0, 0x54(r1) +/* 801C4EAC 001C1E0C 48 14 F8 4D */ bl CanBeNormalized__9CVector3fCFv +/* 801C4EB0 001C1E10 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C4EB4 001C1E14 41 82 00 18 */ beq lbl_801C4ECC +/* 801C4EB8 001C1E18 38 61 00 28 */ addi r3, r1, 0x28 +/* 801C4EBC 001C1E1C 38 81 00 4C */ addi r4, r1, 0x4c +/* 801C4EC0 001C1E20 48 14 F9 91 */ bl AsNormalized__9CVector3fCFv +/* 801C4EC4 001C1E24 38 81 00 28 */ addi r4, r1, 0x28 +/* 801C4EC8 001C1E28 48 00 00 20 */ b lbl_801C4EE8 +lbl_801C4ECC: +/* 801C4ECC 001C1E2C C0 5F 00 58 */ lfs f2, 0x58(r31) +/* 801C4ED0 001C1E30 38 81 00 1C */ addi r4, r1, 0x1c +/* 801C4ED4 001C1E34 C0 3F 00 48 */ lfs f1, 0x48(r31) +/* 801C4ED8 001C1E38 C0 1F 00 38 */ lfs f0, 0x38(r31) +/* 801C4EDC 001C1E3C D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801C4EE0 001C1E40 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 801C4EE4 001C1E44 D0 41 00 24 */ stfs f2, 0x24(r1) +lbl_801C4EE8: +/* 801C4EE8 001C1E48 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801C4EEC 001C1E4C C3 E4 00 00 */ lfs f31, 0(r4) +/* 801C4EF0 001C1E50 C3 C4 00 04 */ lfs f30, 4(r4) +/* 801C4EF4 001C1E54 38 63 02 A4 */ addi r3, r3, 0x2a4 +/* 801C4EF8 001C1E58 4B F6 EF B5 */ bl GetMaxSpeed__14CBodyStateInfoCFv +/* 801C4EFC 001C1E5C C0 02 AA AC */ lfs f0, lbl_805AC7CC@sda21(r2) +/* 801C4F00 001C1E60 C0 BF 00 40 */ lfs f5, 0x40(r31) +/* 801C4F04 001C1E64 EC 00 00 72 */ fmuls f0, f0, f1 +/* 801C4F08 001C1E68 C0 9F 00 50 */ lfs f4, 0x50(r31) +/* 801C4F0C 001C1E6C C0 7F 00 60 */ lfs f3, 0x60(r31) +/* 801C4F10 001C1E70 C0 42 AB 08 */ lfs f2, lbl_805AC828@sda21(r2) +/* 801C4F14 001C1E74 EC 20 07 F2 */ fmuls f1, f0, f31 +/* 801C4F18 001C1E78 D0 A1 00 10 */ stfs f5, 0x10(r1) +/* 801C4F1C 001C1E7C EC 00 07 B2 */ fmuls f0, f0, f30 +/* 801C4F20 001C1E80 EC 42 18 2A */ fadds f2, f2, f3 +/* 801C4F24 001C1E84 D0 81 00 14 */ stfs f4, 0x14(r1) +/* 801C4F28 001C1E88 EC 25 08 2A */ fadds f1, f5, f1 +/* 801C4F2C 001C1E8C EC 04 00 2A */ fadds f0, f4, f0 +/* 801C4F30 001C1E90 D0 61 00 18 */ stfs f3, 0x18(r1) +/* 801C4F34 001C1E94 D0 3D 00 00 */ stfs f1, 0(r29) +/* 801C4F38 001C1E98 D0 1D 00 04 */ stfs f0, 4(r29) +/* 801C4F3C 001C1E9C D0 5D 00 08 */ stfs f2, 8(r29) +/* 801C4F40 001C1EA0 E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0 +/* 801C4F44 001C1EA4 CB E1 00 80 */ lfd f31, 0x80(r1) +/* 801C4F48 001C1EA8 E3 C1 00 78 */ psq_l f30, 120(r1), 0, qr0 +/* 801C4F4C 001C1EAC CB C1 00 70 */ lfd f30, 0x70(r1) +/* 801C4F50 001C1EB0 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 801C4F54 001C1EB4 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 801C4F58 001C1EB8 80 01 00 94 */ lwz r0, 0x94(r1) +/* 801C4F5C 001C1EBC 83 A1 00 64 */ lwz r29, 0x64(r1) +/* 801C4F60 001C1EC0 7C 08 03 A6 */ mtlr r0 +/* 801C4F64 001C1EC4 38 21 00 90 */ addi r1, r1, 0x90 +/* 801C4F68 001C1EC8 4E 80 00 20 */ blr + +.global GetAimPosition__12CMetroidBetaCFRC13CStateManagerf +GetAimPosition__12CMetroidBetaCFRC13CStateManagerf: +/* 801C4F6C 001C1ECC 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801C4F70 001C1ED0 7C 08 02 A6 */ mflr r0 +/* 801C4F74 001C1ED4 90 01 00 44 */ stw r0, 0x44(r1) +/* 801C4F78 001C1ED8 DB E1 00 30 */ stfd f31, 0x30(r1) +/* 801C4F7C 001C1EDC F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 801C4F80 001C1EE0 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801C4F84 001C1EE4 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801C4F88 001C1EE8 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801C4F8C 001C1EEC 7C 9E 23 78 */ mr r30, r4 +/* 801C4F90 001C1EF0 FF E0 08 90 */ fmr f31, f1 +/* 801C4F94 001C1EF4 A0 04 07 90 */ lhz r0, 0x790(r4) +/* 801C4F98 001C1EF8 7C BF 2B 78 */ mr r31, r5 +/* 801C4F9C 001C1EFC 7C 7D 1B 78 */ mr r29, r3 +/* 801C4FA0 001C1F00 38 81 00 08 */ addi r4, r1, 8 +/* 801C4FA4 001C1F04 B0 01 00 08 */ sth r0, 8(r1) +/* 801C4FA8 001C1F08 7F E3 FB 78 */ mr r3, r31 +/* 801C4FAC 001C1F0C 4B E8 75 F9 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801C4FB0 001C1F10 7C 64 1B 78 */ mr r4, r3 +/* 801C4FB4 001C1F14 38 61 00 0C */ addi r3, r1, 0xc +/* 801C4FB8 001C1F18 4B EE A3 95 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801C4FBC 001C1F1C 80 63 00 04 */ lwz r3, 4(r3) +/* 801C4FC0 001C1F20 28 03 00 00 */ cmplwi r3, 0 +/* 801C4FC4 001C1F24 41 82 00 20 */ beq lbl_801C4FE4 +/* 801C4FC8 001C1F28 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 801C4FCC 001C1F2C C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801C4FD0 001C1F30 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801C4FD4 001C1F34 D0 1D 00 00 */ stfs f0, 0(r29) +/* 801C4FD8 001C1F38 D0 3D 00 04 */ stfs f1, 4(r29) +/* 801C4FDC 001C1F3C D0 5D 00 08 */ stfs f2, 8(r29) +/* 801C4FE0 001C1F40 48 00 00 18 */ b lbl_801C4FF8 +lbl_801C4FE4: +/* 801C4FE4 001C1F44 FC 20 F8 90 */ fmr f1, f31 +/* 801C4FE8 001C1F48 7F A3 EB 78 */ mr r3, r29 +/* 801C4FEC 001C1F4C 7F C4 F3 78 */ mr r4, r30 +/* 801C4FF0 001C1F50 7F E5 FB 78 */ mr r5, r31 +/* 801C4FF4 001C1F54 4B EB 35 F5 */ bl GetAimPosition__10CPatternedCFRC13CStateManagerf +lbl_801C4FF8: +/* 801C4FF8 001C1F58 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 801C4FFC 001C1F5C 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801C5000 001C1F60 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 801C5004 001C1F64 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801C5008 001C1F68 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801C500C 001C1F6C 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801C5010 001C1F70 7C 08 03 A6 */ mtlr r0 +/* 801C5014 001C1F74 38 21 00 40 */ addi r1, r1, 0x40 +/* 801C5018 001C1F78 4E 80 00 20 */ blr + +.global DoUserAnimEvent__12CMetroidBetaFR13CStateManagerRC13CInt32POINode14EUserEventType +DoUserAnimEvent__12CMetroidBetaFR13CStateManagerRC13CInt32POINode14EUserEventType: +/* 801C501C 001C1F7C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801C5020 001C1F80 7C 08 02 A6 */ mflr r0 +/* 801C5024 001C1F84 90 01 00 24 */ stw r0, 0x24(r1) +/* 801C5028 001C1F88 38 00 00 00 */ li r0, 0 +/* 801C502C 001C1F8C DB E1 00 18 */ stfd f31, 0x18(r1) +/* 801C5030 001C1F90 FF E0 08 90 */ fmr f31, f1 +/* 801C5034 001C1F94 93 E1 00 14 */ stw r31, 0x14(r1) +/* 801C5038 001C1F98 7C DF 33 78 */ mr r31, r6 +/* 801C503C 001C1F9C 2C 1F 00 07 */ cmpwi r31, 7 +/* 801C5040 001C1FA0 93 C1 00 10 */ stw r30, 0x10(r1) +/* 801C5044 001C1FA4 7C BE 2B 78 */ mr r30, r5 +/* 801C5048 001C1FA8 93 A1 00 0C */ stw r29, 0xc(r1) +/* 801C504C 001C1FAC 7C 9D 23 78 */ mr r29, r4 +/* 801C5050 001C1FB0 93 81 00 08 */ stw r28, 8(r1) +/* 801C5054 001C1FB4 7C 7C 1B 78 */ mr r28, r3 +/* 801C5058 001C1FB8 41 82 00 08 */ beq lbl_801C5060 +/* 801C505C 001C1FBC 48 00 00 14 */ b lbl_801C5070 +lbl_801C5060: +/* 801C5060 001C1FC0 7F A5 EB 78 */ mr r5, r29 +/* 801C5064 001C1FC4 38 80 00 13 */ li r4, 0x13 +/* 801C5068 001C1FC8 4B E8 F2 E9 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801C506C 001C1FCC 38 00 00 01 */ li r0, 1 +lbl_801C5070: +/* 801C5070 001C1FD0 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 801C5074 001C1FD4 40 82 00 1C */ bne lbl_801C5090 +/* 801C5078 001C1FD8 FC 20 F8 90 */ fmr f1, f31 +/* 801C507C 001C1FDC 7F 83 E3 78 */ mr r3, r28 +/* 801C5080 001C1FE0 7F A4 EB 78 */ mr r4, r29 +/* 801C5084 001C1FE4 7F C5 F3 78 */ mr r5, r30 +/* 801C5088 001C1FE8 7F E6 FB 78 */ mr r6, r31 +/* 801C508C 001C1FEC 4B EB 3E 25 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +lbl_801C5090: +/* 801C5090 001C1FF0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801C5094 001C1FF4 CB E1 00 18 */ lfd f31, 0x18(r1) +/* 801C5098 001C1FF8 83 E1 00 14 */ lwz r31, 0x14(r1) +/* 801C509C 001C1FFC 83 C1 00 10 */ lwz r30, 0x10(r1) +/* 801C50A0 001C2000 83 A1 00 0C */ lwz r29, 0xc(r1) +/* 801C50A4 001C2004 83 81 00 08 */ lwz r28, 8(r1) +/* 801C50A8 001C2008 7C 08 03 A6 */ mtlr r0 +/* 801C50AC 001C200C 38 21 00 20 */ addi r1, r1, 0x20 +/* 801C50B0 001C2010 4E 80 00 20 */ blr + +.global CollidedWith__12CMetroidBetaFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager +CollidedWith__12CMetroidBetaFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager: +/* 801C50B4 001C2014 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801C50B8 001C2018 7C 08 02 A6 */ mflr r0 +/* 801C50BC 001C201C 90 01 00 24 */ stw r0, 0x24(r1) +/* 801C50C0 001C2020 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801C50C4 001C2024 7C DF 33 78 */ mr r31, r6 +/* 801C50C8 001C2028 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801C50CC 001C202C 7C BE 2B 78 */ mr r30, r5 +/* 801C50D0 001C2030 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801C50D4 001C2034 7C 9D 23 78 */ mr r29, r4 +/* 801C50D8 001C2038 93 81 00 10 */ stw r28, 0x10(r1) +/* 801C50DC 001C203C 7C 7C 1B 78 */ mr r28, r3 +/* 801C50E0 001C2040 88 03 08 40 */ lbz r0, 0x840(r3) +/* 801C50E4 001C2044 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 801C50E8 001C2048 41 82 00 FC */ beq lbl_801C51E4 +/* 801C50EC 001C204C 88 0D A4 A0 */ lbz r0, lbl_805A9060@sda21(r13) +/* 801C50F0 001C2050 7C 00 07 75 */ extsb. r0, r0 +/* 801C50F4 001C2054 40 82 00 90 */ bne lbl_801C5184 +/* 801C50F8 001C2058 38 00 00 00 */ li r0, 0 +/* 801C50FC 001C205C 80 AD 91 2C */ lwz r5, lbl_805A7CEC@sda21(r13) +/* 801C5100 001C2060 90 0D A4 AC */ stw r0, lbl_805A906C@sda21(r13) +/* 801C5104 001C2064 38 60 00 00 */ li r3, 0 +/* 801C5108 001C2068 38 80 00 01 */ li r4, 1 +/* 801C510C 001C206C 90 0D A4 A8 */ stw r0, lbl_805A9068@sda21(r13) +/* 801C5110 001C2070 48 1C 4D E5 */ bl __shl2i +/* 801C5114 001C2074 80 0D A4 A8 */ lwz r0, lbl_805A9068@sda21(r13) +/* 801C5118 001C2078 80 CD A4 AC */ lwz r6, lbl_805A906C@sda21(r13) +/* 801C511C 001C207C 7C 00 1B 78 */ or r0, r0, r3 +/* 801C5120 001C2080 80 AD 91 30 */ lwz r5, lbl_805A7CF0@sda21(r13) +/* 801C5124 001C2084 7C C4 23 78 */ or r4, r6, r4 +/* 801C5128 001C2088 90 0D A4 A8 */ stw r0, lbl_805A9068@sda21(r13) +/* 801C512C 001C208C 38 60 00 00 */ li r3, 0 +/* 801C5130 001C2090 90 8D A4 AC */ stw r4, lbl_805A906C@sda21(r13) +/* 801C5134 001C2094 38 80 00 01 */ li r4, 1 +/* 801C5138 001C2098 48 1C 4D BD */ bl __shl2i +/* 801C513C 001C209C 80 0D A4 A8 */ lwz r0, lbl_805A9068@sda21(r13) +/* 801C5140 001C20A0 80 CD A4 AC */ lwz r6, lbl_805A906C@sda21(r13) +/* 801C5144 001C20A4 7C 00 1B 78 */ or r0, r0, r3 +/* 801C5148 001C20A8 80 AD 91 34 */ lwz r5, lbl_805A7CF4@sda21(r13) +/* 801C514C 001C20AC 7C C4 23 78 */ or r4, r6, r4 +/* 801C5150 001C20B0 90 0D A4 A8 */ stw r0, lbl_805A9068@sda21(r13) +/* 801C5154 001C20B4 38 60 00 00 */ li r3, 0 +/* 801C5158 001C20B8 90 8D A4 AC */ stw r4, lbl_805A906C@sda21(r13) +/* 801C515C 001C20BC 38 80 00 01 */ li r4, 1 +/* 801C5160 001C20C0 48 1C 4D 95 */ bl __shl2i +/* 801C5164 001C20C4 80 AD A4 A8 */ lwz r5, lbl_805A9068@sda21(r13) +/* 801C5168 001C20C8 38 00 00 01 */ li r0, 1 +/* 801C516C 001C20CC 80 CD A4 AC */ lwz r6, lbl_805A906C@sda21(r13) +/* 801C5170 001C20D0 7C A3 1B 78 */ or r3, r5, r3 +/* 801C5174 001C20D4 98 0D A4 A0 */ stb r0, lbl_805A9060@sda21(r13) +/* 801C5178 001C20D8 7C C0 23 78 */ or r0, r6, r4 +/* 801C517C 001C20DC 90 0D A4 AC */ stw r0, lbl_805A906C@sda21(r13) +/* 801C5180 001C20E0 90 6D A4 A8 */ stw r3, lbl_805A9068@sda21(r13) +lbl_801C5184: +/* 801C5184 001C20E4 80 1E 00 00 */ lwz r0, 0(r30) +/* 801C5188 001C20E8 38 BE 00 04 */ addi r5, r30, 4 +/* 801C518C 001C20EC 80 CD A4 A8 */ lwz r6, lbl_805A9068@sda21(r13) +/* 801C5190 001C20F0 38 80 00 00 */ li r4, 0 +/* 801C5194 001C20F4 80 ED A4 AC */ lwz r7, lbl_805A906C@sda21(r13) +/* 801C5198 001C20F8 7C 09 03 A6 */ mtctr r0 +/* 801C519C 001C20FC 2C 00 00 00 */ cmpwi r0, 0 +/* 801C51A0 001C2100 40 81 00 44 */ ble lbl_801C51E4 +lbl_801C51A4: +/* 801C51A4 001C2104 80 05 00 38 */ lwz r0, 0x38(r5) +/* 801C51A8 001C2108 80 65 00 3C */ lwz r3, 0x3c(r5) +/* 801C51AC 001C210C 7C C0 00 38 */ and r0, r6, r0 +/* 801C51B0 001C2110 7C E3 18 38 */ and r3, r7, r3 +/* 801C51B4 001C2114 7C 63 22 78 */ xor r3, r3, r4 +/* 801C51B8 001C2118 7C 00 22 78 */ xor r0, r0, r4 +/* 801C51BC 001C211C 7C 60 03 79 */ or. r0, r3, r0 +/* 801C51C0 001C2120 41 82 00 1C */ beq lbl_801C51DC +/* 801C51C4 001C2124 C0 42 AA B4 */ lfs f2, lbl_805AC7D4@sda21(r2) +/* 801C51C8 001C2128 C0 3C 05 00 */ lfs f1, 0x500(r28) +/* 801C51CC 001C212C C0 1C 07 A4 */ lfs f0, 0x7a4(r28) +/* 801C51D0 001C2130 EC 02 00 7A */ fmadds f0, f2, f1, f0 +/* 801C51D4 001C2134 D0 1C 07 A4 */ stfs f0, 0x7a4(r28) +/* 801C51D8 001C2138 48 00 00 0C */ b lbl_801C51E4 +lbl_801C51DC: +/* 801C51DC 001C213C 38 A5 00 60 */ addi r5, r5, 0x60 +/* 801C51E0 001C2140 42 00 FF C4 */ bdnz lbl_801C51A4 +lbl_801C51E4: +/* 801C51E4 001C2144 7F 83 E3 78 */ mr r3, r28 +/* 801C51E8 001C2148 7F A4 EB 78 */ mr r4, r29 +/* 801C51EC 001C214C 7F C5 F3 78 */ mr r5, r30 +/* 801C51F0 001C2150 7F E6 FB 78 */ mr r6, r31 +/* 801C51F4 001C2154 4B EB 44 5D */ bl CollidedWith__10CPatternedFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager +/* 801C51F8 001C2158 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801C51FC 001C215C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801C5200 001C2160 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801C5204 001C2164 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801C5208 001C2168 83 81 00 10 */ lwz r28, 0x10(r1) +/* 801C520C 001C216C 7C 08 03 A6 */ mtlr r0 +/* 801C5210 001C2170 38 21 00 20 */ addi r1, r1, 0x20 +/* 801C5214 001C2174 4E 80 00 20 */ blr + +.global Touch__12CMetroidBetaFR6CActorR13CStateManager +Touch__12CMetroidBetaFR6CActorR13CStateManager: +/* 801C5218 001C2178 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 801C521C 001C217C 7C 08 02 A6 */ mflr r0 +/* 801C5220 001C2180 90 01 00 84 */ stw r0, 0x84(r1) +/* 801C5224 001C2184 DB E1 00 70 */ stfd f31, 0x70(r1) +/* 801C5228 001C2188 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 +/* 801C522C 001C218C 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 801C5230 001C2190 93 C1 00 68 */ stw r30, 0x68(r1) +/* 801C5234 001C2194 93 A1 00 64 */ stw r29, 0x64(r1) +/* 801C5238 001C2198 93 81 00 60 */ stw r28, 0x60(r1) +/* 801C523C 001C219C 88 03 04 00 */ lbz r0, 0x400(r3) +/* 801C5240 001C21A0 7C 7C 1B 78 */ mr r28, r3 +/* 801C5244 001C21A4 7C 9D 23 78 */ mr r29, r4 +/* 801C5248 001C21A8 7C BE 2B 78 */ mr r30, r5 +/* 801C524C 001C21AC 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801C5250 001C21B0 41 82 01 E8 */ beq lbl_801C5438 +/* 801C5254 001C21B4 38 61 00 10 */ addi r3, r1, 0x10 +/* 801C5258 001C21B8 4B EE 85 21 */ bl "__ct__29TCastToPtr<15CGameProjectile>FR7CEntity" +/* 801C525C 001C21BC 83 E3 00 04 */ lwz r31, 4(r3) +/* 801C5260 001C21C0 28 1F 00 00 */ cmplwi r31, 0 +/* 801C5264 001C21C4 41 82 01 C4 */ beq lbl_801C5428 +/* 801C5268 001C21C8 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 801C526C 001C21CC A0 9F 00 EC */ lhz r4, 0xec(r31) +/* 801C5270 001C21D0 A0 03 00 08 */ lhz r0, 8(r3) +/* 801C5274 001C21D4 7C 04 00 40 */ cmplw r4, r0 +/* 801C5278 001C21D8 40 82 01 B0 */ bne lbl_801C5428 +/* 801C527C 001C21DC 80 7F 00 E8 */ lwz r3, 0xe8(r31) +/* 801C5280 001C21E0 54 60 07 7A */ rlwinm r0, r3, 0, 0x1d, 0x1d +/* 801C5284 001C21E4 2C 00 00 04 */ cmpwi r0, 4 +/* 801C5288 001C21E8 40 82 00 40 */ bne lbl_801C52C8 +/* 801C528C 001C21EC 54 60 07 38 */ rlwinm r0, r3, 0, 0x1c, 0x1c +/* 801C5290 001C21F0 2C 00 00 08 */ cmpwi r0, 8 +/* 801C5294 001C21F4 41 82 00 34 */ beq lbl_801C52C8 +/* 801C5298 001C21F8 C3 FC 06 40 */ lfs f31, 0x640(r28) +/* 801C529C 001C21FC 7F 83 E3 78 */ mr r3, r28 +/* 801C52A0 001C2200 4B FF C3 09 */ bl sub_801c15a8 +/* 801C52A4 001C2204 EC 3F 00 72 */ fmuls f1, f31, f1 +/* 801C52A8 001C2208 C0 02 AA A4 */ lfs f0, lbl_805AC7C4@sda21(r2) +/* 801C52AC 001C220C 38 60 00 00 */ li r3, 0 +/* 801C52B0 001C2210 D0 3C 07 9C */ stfs f1, 0x79c(r28) +/* 801C52B4 001C2214 D0 1C 08 3C */ stfs f0, 0x83c(r28) +/* 801C52B8 001C2218 88 1C 08 40 */ lbz r0, 0x840(r28) +/* 801C52BC 001C221C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801C52C0 001C2220 98 1C 08 40 */ stb r0, 0x840(r28) +/* 801C52C4 001C2224 48 00 01 54 */ b lbl_801C5418 +lbl_801C52C8: +/* 801C52C8 001C2228 7F 83 E3 78 */ mr r3, r28 +/* 801C52CC 001C222C 81 9C 00 00 */ lwz r12, 0(r28) +/* 801C52D0 001C2230 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 801C52D4 001C2234 7D 89 03 A6 */ mtctr r12 +/* 801C52D8 001C2238 4E 80 04 21 */ bctrl +/* 801C52DC 001C223C 80 1F 00 E8 */ lwz r0, 0xe8(r31) +/* 801C52E0 001C2240 54 00 07 38 */ rlwinm r0, r0, 0, 0x1c, 0x1c +/* 801C52E4 001C2244 2C 00 00 08 */ cmpwi r0, 8 +/* 801C52E8 001C2248 40 82 01 20 */ bne lbl_801C5408 +/* 801C52EC 001C224C 88 01 00 0C */ lbz r0, 0xc(r1) +/* 801C52F0 001C2250 38 A0 00 00 */ li r5, 0 +/* 801C52F4 001C2254 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 801C52F8 001C2258 38 C0 00 01 */ li r6, 1 +/* 801C52FC 001C225C 98 01 00 0C */ stb r0, 0xc(r1) +/* 801C5300 001C2260 54 00 06 3E */ clrlwi r0, r0, 0x18 +/* 801C5304 001C2264 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 801C5308 001C2268 38 81 00 08 */ addi r4, r1, 8 +/* 801C530C 001C226C 98 01 00 0C */ stb r0, 0xc(r1) +/* 801C5310 001C2270 54 00 06 3E */ clrlwi r0, r0, 0x18 +/* 801C5314 001C2274 50 A0 2E B4 */ rlwimi r0, r5, 5, 0x1a, 0x1a +/* 801C5318 001C2278 38 A0 00 00 */ li r5, 0 +/* 801C531C 001C227C 90 C1 00 08 */ stw r6, 8(r1) +/* 801C5320 001C2280 98 01 00 0C */ stb r0, 0xc(r1) +/* 801C5324 001C2284 4B F3 D2 61 */ bl WeaponHits__20CDamageVulnerabilityCFRC11CWeaponModei +/* 801C5328 001C2288 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C532C 001C228C 41 82 00 DC */ beq lbl_801C5408 +/* 801C5330 001C2290 80 1F 00 E8 */ lwz r0, 0xe8(r31) +/* 801C5334 001C2294 C3 E2 AA A4 */ lfs f31, lbl_805AC7C4@sda21(r2) +/* 801C5338 001C2298 54 00 07 7A */ rlwinm r0, r0, 0, 0x1d, 0x1d +/* 801C533C 001C229C 2C 00 00 04 */ cmpwi r0, 4 +/* 801C5340 001C22A0 40 82 00 08 */ bne lbl_801C5348 +/* 801C5344 001C22A4 C3 E2 AA 9C */ lfs f31, lbl_805AC7BC@sda21(r2) +lbl_801C5348: +/* 801C5348 001C22A8 C0 BF 00 50 */ lfs f5, 0x50(r31) +/* 801C534C 001C22AC 38 61 00 30 */ addi r3, r1, 0x30 +/* 801C5350 001C22B0 C0 1C 00 50 */ lfs f0, 0x50(r28) +/* 801C5354 001C22B4 38 9C 00 34 */ addi r4, r28, 0x34 +/* 801C5358 001C22B8 C0 9F 00 60 */ lfs f4, 0x60(r31) +/* 801C535C 001C22BC 38 A1 00 24 */ addi r5, r1, 0x24 +/* 801C5360 001C22C0 C0 3C 00 60 */ lfs f1, 0x60(r28) +/* 801C5364 001C22C4 EC 45 00 28 */ fsubs f2, f5, f0 +/* 801C5368 001C22C8 C0 7F 00 40 */ lfs f3, 0x40(r31) +/* 801C536C 001C22CC C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 801C5370 001C22D0 EC 24 08 28 */ fsubs f1, f4, f1 +/* 801C5374 001C22D4 EC 03 00 28 */ fsubs f0, f3, f0 +/* 801C5378 001C22D8 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 801C537C 001C22DC D0 21 00 50 */ stfs f1, 0x50(r1) +/* 801C5380 001C22E0 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 801C5384 001C22E4 C0 5F 02 9C */ lfs f2, 0x29c(r31) +/* 801C5388 001C22E8 C0 3F 02 A0 */ lfs f1, 0x2a0(r31) +/* 801C538C 001C22EC C0 1F 02 98 */ lfs f0, 0x298(r31) +/* 801C5390 001C22F0 EC 45 10 28 */ fsubs f2, f5, f2 +/* 801C5394 001C22F4 EC 24 08 28 */ fsubs f1, f4, f1 +/* 801C5398 001C22F8 EC 03 00 28 */ fsubs f0, f3, f0 +/* 801C539C 001C22FC D0 41 00 28 */ stfs f2, 0x28(r1) +/* 801C53A0 001C2300 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801C53A4 001C2304 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 801C53A8 001C2308 48 14 D6 7D */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 801C53AC 001C230C 38 61 00 3C */ addi r3, r1, 0x3c +/* 801C53B0 001C2310 38 81 00 30 */ addi r4, r1, 0x30 +/* 801C53B4 001C2314 48 14 EA 1D */ bl __ct__11CUnitVectorFRC9CVector3f +/* 801C53B8 001C2318 C0 1C 04 FC */ lfs f0, 0x4fc(r28) +/* 801C53BC 001C231C 7F 83 E3 78 */ mr r3, r28 +/* 801C53C0 001C2320 80 C1 00 3C */ lwz r6, 0x3c(r1) +/* 801C53C4 001C2324 7F C4 F3 78 */ mr r4, r30 +/* 801C53C8 001C2328 80 E1 00 40 */ lwz r7, 0x40(r1) +/* 801C53CC 001C232C EC 3F 00 32 */ fmuls f1, f31, f0 +/* 801C53D0 001C2330 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801C53D4 001C2334 38 A1 00 48 */ addi r5, r1, 0x48 +/* 801C53D8 001C2338 90 C1 00 18 */ stw r6, 0x18(r1) +/* 801C53DC 001C233C 38 C1 00 18 */ addi r6, r1, 0x18 +/* 801C53E0 001C2340 90 E1 00 1C */ stw r7, 0x1c(r1) +/* 801C53E4 001C2344 90 01 00 20 */ stw r0, 0x20(r1) +/* 801C53E8 001C2348 81 9C 00 00 */ lwz r12, 0(r28) +/* 801C53EC 001C234C 81 8C 02 90 */ lwz r12, 0x290(r12) +/* 801C53F0 001C2350 7D 89 03 A6 */ mtctr r12 +/* 801C53F4 001C2354 4E 80 04 21 */ bctrl +/* 801C53F8 001C2358 88 1C 08 40 */ lbz r0, 0x840(r28) +/* 801C53FC 001C235C 38 60 00 00 */ li r3, 0 +/* 801C5400 001C2360 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801C5404 001C2364 98 1C 08 40 */ stb r0, 0x840(r28) +lbl_801C5408: +/* 801C5408 001C2368 C0 3C 08 3C */ lfs f1, 0x83c(r28) +/* 801C540C 001C236C C0 02 AA EC */ lfs f0, lbl_805AC80C@sda21(r2) +/* 801C5410 001C2370 EC 01 00 2A */ fadds f0, f1, f0 +/* 801C5414 001C2374 D0 1C 08 3C */ stfs f0, 0x83c(r28) +lbl_801C5418: +/* 801C5418 001C2378 88 1C 08 40 */ lbz r0, 0x840(r28) +/* 801C541C 001C237C 38 60 00 01 */ li r3, 1 +/* 801C5420 001C2380 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801C5424 001C2384 98 1C 08 40 */ stb r0, 0x840(r28) +lbl_801C5428: +/* 801C5428 001C2388 7F 83 E3 78 */ mr r3, r28 +/* 801C542C 001C238C 7F A4 EB 78 */ mr r4, r29 +/* 801C5430 001C2390 7F C5 F3 78 */ mr r5, r30 +/* 801C5434 001C2394 4B EB 46 6D */ bl Touch__10CPatternedFR6CActorR13CStateManager +lbl_801C5438: +/* 801C5438 001C2398 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 +/* 801C543C 001C239C 80 01 00 84 */ lwz r0, 0x84(r1) +/* 801C5440 001C23A0 CB E1 00 70 */ lfd f31, 0x70(r1) +/* 801C5444 001C23A4 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 801C5448 001C23A8 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 801C544C 001C23AC 83 A1 00 64 */ lwz r29, 0x64(r1) +/* 801C5450 001C23B0 83 81 00 60 */ lwz r28, 0x60(r1) +/* 801C5454 001C23B4 7C 08 03 A6 */ mtlr r0 +/* 801C5458 001C23B8 38 21 00 80 */ addi r1, r1, 0x80 +/* 801C545C 001C23BC 4E 80 00 20 */ blr + +.global AddToRenderer__12CMetroidBetaCFRC14CFrustumPlanesRC13CStateManager +AddToRenderer__12CMetroidBetaCFRC14CFrustumPlanesRC13CStateManager: +/* 801C5460 001C23C0 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 801C5464 001C23C4 7C 08 02 A6 */ mflr r0 +/* 801C5468 001C23C8 90 01 00 74 */ stw r0, 0x74(r1) +/* 801C546C 001C23CC 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 801C5470 001C23D0 7C BF 2B 78 */ mr r31, r5 +/* 801C5474 001C23D4 93 C1 00 68 */ stw r30, 0x68(r1) +/* 801C5478 001C23D8 7C 9E 23 78 */ mr r30, r4 +/* 801C547C 001C23DC 38 80 00 00 */ li r4, 0 +/* 801C5480 001C23E0 93 A1 00 64 */ stw r29, 0x64(r1) +/* 801C5484 001C23E4 7C 7D 1B 78 */ mr r29, r3 +/* 801C5488 001C23E8 80 63 00 64 */ lwz r3, 0x64(r3) +/* 801C548C 001C23EC 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801C5490 001C23F0 28 00 00 00 */ cmplwi r0, 0 +/* 801C5494 001C23F4 40 82 00 14 */ bne lbl_801C54A8 +/* 801C5498 001C23F8 88 03 00 28 */ lbz r0, 0x28(r3) +/* 801C549C 001C23FC 28 00 00 00 */ cmplwi r0, 0 +/* 801C54A0 001C2400 40 82 00 08 */ bne lbl_801C54A8 +/* 801C54A4 001C2404 38 80 00 01 */ li r4, 1 +lbl_801C54A8: +/* 801C54A8 001C2408 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 801C54AC 001C240C 40 82 01 64 */ bne lbl_801C5610 +/* 801C54B0 001C2410 7F C4 F3 78 */ mr r4, r30 +/* 801C54B4 001C2414 4B F5 07 CD */ bl RenderParticles__10CModelDataCFRC14CFrustumPlanes +/* 801C54B8 001C2418 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 801C54BC 001C241C 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 801C54C0 001C2420 41 82 00 14 */ beq lbl_801C54D4 +/* 801C54C4 001C2424 7F A3 EB 78 */ mr r3, r29 +/* 801C54C8 001C2428 4B FF F7 E9 */ bl sub_801c4cb0 +/* 801C54CC 001C242C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C54D0 001C2430 41 82 00 4C */ beq lbl_801C551C +lbl_801C54D4: +/* 801C54D4 001C2434 7F A3 EB 78 */ mr r3, r29 +/* 801C54D8 001C2438 7F E4 FB 78 */ mr r4, r31 +/* 801C54DC 001C243C 81 9D 00 00 */ lwz r12, 0(r29) +/* 801C54E0 001C2440 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801C54E4 001C2444 7D 89 03 A6 */ mtctr r12 +/* 801C54E8 001C2448 4E 80 04 21 */ bctrl +/* 801C54EC 001C244C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C54F0 001C2450 41 82 00 20 */ beq lbl_801C5510 +/* 801C54F4 001C2454 7F A3 EB 78 */ mr r3, r29 +/* 801C54F8 001C2458 7F E4 FB 78 */ mr r4, r31 +/* 801C54FC 001C245C 81 9D 00 00 */ lwz r12, 0(r29) +/* 801C5500 001C2460 81 8C 00 28 */ lwz r12, 0x28(r12) +/* 801C5504 001C2464 7D 89 03 A6 */ mtctr r12 +/* 801C5508 001C2468 4E 80 04 21 */ bctrl +/* 801C550C 001C246C 48 00 00 10 */ b lbl_801C551C +lbl_801C5510: +/* 801C5510 001C2470 7F A3 EB 78 */ mr r3, r29 +/* 801C5514 001C2474 7F E4 FB 78 */ mr r4, r31 +/* 801C5518 001C2478 4B E8 F4 B5 */ bl EnsureRendered__6CActorCFRC13CStateManager +lbl_801C551C: +/* 801C551C 001C247C 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 801C5520 001C2480 7F E4 FB 78 */ mr r4, r31 +/* 801C5524 001C2484 80 63 00 00 */ lwz r3, 0(r3) +/* 801C5528 001C2488 4B EC C0 31 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager +/* 801C552C 001C248C 2C 03 00 01 */ cmpwi r3, 1 +/* 801C5530 001C2490 41 82 00 E0 */ beq lbl_801C5610 +/* 801C5534 001C2494 88 1D 00 E5 */ lbz r0, 0xe5(r29) +/* 801C5538 001C2498 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801C553C 001C249C 41 82 00 D4 */ beq lbl_801C5610 +/* 801C5540 001C24A0 80 7D 00 94 */ lwz r3, 0x94(r29) +/* 801C5544 001C24A4 4B F4 05 BD */ bl Valid__13CSimpleShadowCFv +/* 801C5548 001C24A8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C554C 001C24AC 41 82 00 C4 */ beq lbl_801C5610 +/* 801C5550 001C24B0 80 9D 00 94 */ lwz r4, 0x94(r29) +/* 801C5554 001C24B4 38 61 00 44 */ addi r3, r1, 0x44 +/* 801C5558 001C24B8 4B F4 07 1D */ bl GetBounds__13CSimpleShadowCFv +/* 801C555C 001C24BC 7F C3 F3 78 */ mr r3, r30 +/* 801C5560 001C24C0 38 81 00 44 */ addi r4, r1, 0x44 +/* 801C5564 001C24C4 48 17 FC 6D */ bl BoxInFrustumPlanes__14CFrustumPlanesCFRC6CAABox +/* 801C5568 001C24C8 54 60 06 3E */ clrlwi r0, r3, 0x18 +/* 801C556C 001C24CC 28 00 00 01 */ cmplwi r0, 1 +/* 801C5570 001C24D0 40 82 00 A0 */ bne lbl_801C5610 +/* 801C5574 001C24D4 80 7D 00 94 */ lwz r3, 0x94(r29) +/* 801C5578 001C24D8 4B F4 07 99 */ bl GetTransform__13CSimpleShadowCFv +/* 801C557C 001C24DC C0 43 00 2C */ lfs f2, 0x2c(r3) +/* 801C5580 001C24E0 C0 23 00 1C */ lfs f1, 0x1c(r3) +/* 801C5584 001C24E4 C0 03 00 0C */ lfs f0, 0xc(r3) +/* 801C5588 001C24E8 80 7D 00 94 */ lwz r3, 0x94(r29) +/* 801C558C 001C24EC D0 01 00 08 */ stfs f0, 8(r1) +/* 801C5590 001C24F0 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 801C5594 001C24F4 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 801C5598 001C24F8 4B F4 07 79 */ bl GetTransform__13CSimpleShadowCFv +/* 801C559C 001C24FC C0 43 00 2C */ lfs f2, 0x2c(r3) +/* 801C55A0 001C2500 C0 23 00 1C */ lfs f1, 0x1c(r3) +/* 801C55A4 001C2504 C0 03 00 0C */ lfs f0, 0xc(r3) +/* 801C55A8 001C2508 80 7D 00 94 */ lwz r3, 0x94(r29) +/* 801C55AC 001C250C D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801C55B0 001C2510 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801C55B4 001C2514 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 801C55B8 001C2518 4B F4 07 59 */ bl GetTransform__13CSimpleShadowCFv +/* 801C55BC 001C251C C0 43 00 2C */ lfs f2, 0x2c(r3) +/* 801C55C0 001C2520 38 81 00 14 */ addi r4, r1, 0x14 +/* 801C55C4 001C2524 C0 23 00 1C */ lfs f1, 0x1c(r3) +/* 801C55C8 001C2528 38 A1 00 08 */ addi r5, r1, 8 +/* 801C55CC 001C252C C0 03 00 0C */ lfs f0, 0xc(r3) +/* 801C55D0 001C2530 38 61 00 2C */ addi r3, r1, 0x2c +/* 801C55D4 001C2534 83 FD 00 94 */ lwz r31, 0x94(r29) +/* 801C55D8 001C2538 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801C55DC 001C253C D0 21 00 24 */ stfs f1, 0x24(r1) +/* 801C55E0 001C2540 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 801C55E4 001C2544 48 17 2F 25 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801C55E8 001C2548 7C 66 1B 78 */ mr r6, r3 +/* 801C55EC 001C254C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801C55F0 001C2550 7F E4 FB 78 */ mr r4, r31 +/* 801C55F4 001C2554 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801C55F8 001C2558 81 83 00 00 */ lwz r12, 0(r3) +/* 801C55FC 001C255C 38 E0 00 01 */ li r7, 1 +/* 801C5600 001C2560 39 00 00 00 */ li r8, 0 +/* 801C5604 001C2564 81 8C 00 40 */ lwz r12, 0x40(r12) +/* 801C5608 001C2568 7D 89 03 A6 */ mtctr r12 +/* 801C560C 001C256C 4E 80 04 21 */ bctrl +lbl_801C5610: +/* 801C5610 001C2570 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801C5614 001C2574 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 801C5618 001C2578 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 801C561C 001C257C 83 A1 00 64 */ lwz r29, 0x64(r1) +/* 801C5620 001C2580 7C 08 03 A6 */ mtlr r0 +/* 801C5624 001C2584 38 21 00 70 */ addi r1, r1, 0x70 +/* 801C5628 001C2588 4E 80 00 20 */ blr + +.global RenderHitGunEffect__12CMetroidBetaCFv +RenderHitGunEffect__12CMetroidBetaCFv: +/* 801C562C 001C258C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801C5630 001C2590 7C 08 02 A6 */ mflr r0 +/* 801C5634 001C2594 90 01 00 14 */ stw r0, 0x14(r1) +/* 801C5638 001C2598 88 03 08 40 */ lbz r0, 0x840(r3) +/* 801C563C 001C259C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801C5640 001C25A0 41 82 00 18 */ beq lbl_801C5658 +/* 801C5644 001C25A4 80 63 08 2C */ lwz r3, 0x82c(r3) +/* 801C5648 001C25A8 81 83 00 00 */ lwz r12, 0(r3) +/* 801C564C 001C25AC 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801C5650 001C25B0 7D 89 03 A6 */ mtctr r12 +/* 801C5654 001C25B4 4E 80 04 21 */ bctrl +lbl_801C5658: +/* 801C5658 001C25B8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801C565C 001C25BC 7C 08 03 A6 */ mtlr r0 +/* 801C5660 001C25C0 38 21 00 10 */ addi r1, r1, 0x10 +/* 801C5664 001C25C4 4E 80 00 20 */ blr + +.global RenderHitBallEffect__12CMetroidBetaCFv +RenderHitBallEffect__12CMetroidBetaCFv: +/* 801C5668 001C25C8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801C566C 001C25CC 7C 08 02 A6 */ mflr r0 +/* 801C5670 001C25D0 90 01 00 14 */ stw r0, 0x14(r1) +/* 801C5674 001C25D4 88 03 08 40 */ lbz r0, 0x840(r3) +/* 801C5678 001C25D8 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801C567C 001C25DC 41 82 00 18 */ beq lbl_801C5694 +/* 801C5680 001C25E0 80 63 08 28 */ lwz r3, 0x828(r3) +/* 801C5684 001C25E4 81 83 00 00 */ lwz r12, 0(r3) +/* 801C5688 001C25E8 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801C568C 001C25EC 7D 89 03 A6 */ mtctr r12 +/* 801C5690 001C25F0 4E 80 04 21 */ bctrl +lbl_801C5694: +/* 801C5694 001C25F4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801C5698 001C25F8 7C 08 03 A6 */ mtlr r0 +/* 801C569C 001C25FC 38 21 00 10 */ addi r1, r1, 0x10 +/* 801C56A0 001C2600 4E 80 00 20 */ blr + +.global Render__12CMetroidBetaCFRC13CStateManager +Render__12CMetroidBetaCFRC13CStateManager: +/* 801C56A4 001C2604 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801C56A8 001C2608 7C 08 02 A6 */ mflr r0 +/* 801C56AC 001C260C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801C56B0 001C2610 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801C56B4 001C2614 7C 7F 1B 78 */ mr r31, r3 +/* 801C56B8 001C2618 4B EB 29 75 */ bl Render__10CPatternedCFRC13CStateManager +/* 801C56BC 001C261C 88 1F 08 40 */ lbz r0, 0x840(r31) +/* 801C56C0 001C2620 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801C56C4 001C2624 41 82 00 50 */ beq lbl_801C5714 +/* 801C56C8 001C2628 80 7F 08 20 */ lwz r3, 0x820(r31) +/* 801C56CC 001C262C 81 83 00 00 */ lwz r12, 0(r3) +/* 801C56D0 001C2630 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801C56D4 001C2634 7D 89 03 A6 */ mtctr r12 +/* 801C56D8 001C2638 4E 80 04 21 */ bctrl +/* 801C56DC 001C263C 80 7F 08 24 */ lwz r3, 0x824(r31) +/* 801C56E0 001C2640 81 83 00 00 */ lwz r12, 0(r3) +/* 801C56E4 001C2644 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801C56E8 001C2648 7D 89 03 A6 */ mtctr r12 +/* 801C56EC 001C264C 4E 80 04 21 */ bctrl +/* 801C56F0 001C2650 C0 3F 08 3C */ lfs f1, 0x83c(r31) +/* 801C56F4 001C2654 C0 02 AA 98 */ lfs f0, lbl_805AC7B8@sda21(r2) +/* 801C56F8 001C2658 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C56FC 001C265C 40 81 00 18 */ ble lbl_801C5714 +/* 801C5700 001C2660 80 7F 08 30 */ lwz r3, 0x830(r31) +/* 801C5704 001C2664 81 83 00 00 */ lwz r12, 0(r3) +/* 801C5708 001C2668 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801C570C 001C266C 7D 89 03 A6 */ mtctr r12 +/* 801C5710 001C2670 4E 80 04 21 */ bctrl +lbl_801C5714: +/* 801C5714 001C2674 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801C5718 001C2678 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801C571C 001C267C 7C 08 03 A6 */ mtlr r0 +/* 801C5720 001C2680 38 21 00 10 */ addi r1, r1, 0x10 +/* 801C5724 001C2684 4E 80 00 20 */ blr + +.global AcceptScriptMsg__12CMetroidBetaF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__12CMetroidBetaF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 801C5728 001C2688 94 21 FE 90 */ stwu r1, -0x170(r1) +/* 801C572C 001C268C 7C 08 02 A6 */ mflr r0 +/* 801C5730 001C2690 90 01 01 74 */ stw r0, 0x174(r1) +/* 801C5734 001C2694 BF 61 01 5C */ stmw r27, 0x15c(r1) +/* 801C5738 001C2698 7C BE 2B 78 */ mr r30, r5 +/* 801C573C 001C269C 7C 7D 1B 78 */ mr r29, r3 +/* 801C5740 001C26A0 7C 9B 23 78 */ mr r27, r4 +/* 801C5744 001C26A4 7C DF 33 78 */ mr r31, r6 +/* 801C5748 001C26A8 A0 05 00 00 */ lhz r0, 0(r5) +/* 801C574C 001C26AC 38 A1 00 54 */ addi r5, r1, 0x54 +/* 801C5750 001C26B0 B0 01 00 54 */ sth r0, 0x54(r1) +/* 801C5754 001C26B4 4B EB 74 25 */ bl AcceptScriptMsg__10CPatternedF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 801C5758 001C26B8 28 1B 00 30 */ cmplwi r27, 0x30 +/* 801C575C 001C26BC 41 81 05 B8 */ bgt lbl_801C5D14 +/* 801C5760 001C26C0 3C 60 80 3E */ lis r3, lbl_803E5654@ha +/* 801C5764 001C26C4 57 60 10 3A */ slwi r0, r27, 2 +/* 801C5768 001C26C8 38 63 56 54 */ addi r3, r3, lbl_803E5654@l +/* 801C576C 001C26CC 7C 03 00 2E */ lwzx r0, r3, r0 +/* 801C5770 001C26D0 7C 09 03 A6 */ mtctr r0 +/* 801C5774 001C26D4 4E 80 04 20 */ bctr +/* 801C5778 001C26D8 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 801C577C 001C26DC 7F E4 FB 78 */ mr r4, r31 +/* 801C5780 001C26E0 4B F7 55 71 */ bl Activate__15CBodyControllerFR13CStateManager +/* 801C5784 001C26E4 7F A3 EB 78 */ mr r3, r29 +/* 801C5788 001C26E8 7F E4 FB 78 */ mr r4, r31 +/* 801C578C 001C26EC 4B FF C5 21 */ bl sub_801c1cac +/* 801C5790 001C26F0 7F A3 EB 78 */ mr r3, r29 +/* 801C5794 001C26F4 4B FF BC 41 */ bl sub_801c13d4 +/* 801C5798 001C26F8 80 82 AA 8C */ lwz r4, lbl_805AC7AC@sda21(r2) +/* 801C579C 001C26FC 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 801C57A0 001C2700 4B E3 F5 19 */ bl string_l__4rstlFPCc +/* 801C57A4 001C2704 80 9D 00 64 */ lwz r4, 0x64(r29) +/* 801C57A8 001C2708 38 61 00 0C */ addi r3, r1, 0xc +/* 801C57AC 001C270C 38 A1 00 A0 */ addi r5, r1, 0xa0 +/* 801C57B0 001C2710 80 84 00 10 */ lwz r4, 0x10(r4) +/* 801C57B4 001C2714 4B E6 90 85 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801C57B8 001C2718 88 01 00 0C */ lbz r0, 0xc(r1) +/* 801C57BC 001C271C 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 801C57C0 001C2720 98 1D 07 60 */ stb r0, 0x760(r29) +/* 801C57C4 001C2724 48 17 83 1D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801C57C8 001C2728 80 82 AA 90 */ lwz r4, lbl_805AC7B0@sda21(r2) +/* 801C57CC 001C272C 38 61 00 90 */ addi r3, r1, 0x90 +/* 801C57D0 001C2730 4B E3 F4 E9 */ bl string_l__4rstlFPCc +/* 801C57D4 001C2734 80 9D 00 64 */ lwz r4, 0x64(r29) +/* 801C57D8 001C2738 38 61 00 08 */ addi r3, r1, 8 +/* 801C57DC 001C273C 38 A1 00 90 */ addi r5, r1, 0x90 +/* 801C57E0 001C2740 80 84 00 10 */ lwz r4, 0x10(r4) +/* 801C57E4 001C2744 4B E6 90 55 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801C57E8 001C2748 88 01 00 08 */ lbz r0, 8(r1) +/* 801C57EC 001C274C 38 61 00 90 */ addi r3, r1, 0x90 +/* 801C57F0 001C2750 98 1D 07 61 */ stb r0, 0x761(r29) +/* 801C57F4 001C2754 48 17 82 ED */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801C57F8 001C2758 48 00 05 1C */ b lbl_801C5D14 +/* 801C57FC 001C275C 80 7D 07 64 */ lwz r3, 0x764(r29) +/* 801C5800 001C2760 7F E4 FB 78 */ mr r4, r31 +/* 801C5804 001C2764 38 A0 00 01 */ li r5, 1 +/* 801C5808 001C2768 4B FE 1A F1 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb +/* 801C580C 001C276C 48 00 05 08 */ b lbl_801C5D14 +/* 801C5810 001C2770 80 7D 07 64 */ lwz r3, 0x764(r29) +/* 801C5814 001C2774 7F E4 FB 78 */ mr r4, r31 +/* 801C5818 001C2778 38 A0 00 00 */ li r5, 0 +/* 801C581C 001C277C 4B FE 1A DD */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb +/* 801C5820 001C2780 7F A3 EB 78 */ mr r3, r29 +/* 801C5824 001C2784 7F E4 FB 78 */ mr r4, r31 +/* 801C5828 001C2788 4B FF BA 45 */ bl sub_801c126c +/* 801C582C 001C278C 48 00 04 E8 */ b lbl_801C5D14 +/* 801C5830 001C2790 80 7D 07 64 */ lwz r3, 0x764(r29) +/* 801C5834 001C2794 7F E4 FB 78 */ mr r4, r31 +/* 801C5838 001C2798 4B FE 1B 8D */ bl Destroy__22CCollisionActorManagerCFR13CStateManager +/* 801C583C 001C279C 7F A3 EB 78 */ mr r3, r29 +/* 801C5840 001C27A0 7F E4 FB 78 */ mr r4, r31 +/* 801C5844 001C27A4 4B FF BA 29 */ bl sub_801c126c +/* 801C5848 001C27A8 48 00 04 CC */ b lbl_801C5D14 +/* 801C584C 001C27AC A0 1E 00 00 */ lhz r0, 0(r30) +/* 801C5850 001C27B0 7F E3 FB 78 */ mr r3, r31 +/* 801C5854 001C27B4 38 81 00 50 */ addi r4, r1, 0x50 +/* 801C5858 001C27B8 B0 01 00 50 */ sth r0, 0x50(r1) +/* 801C585C 001C27BC 4B E8 6D 19 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801C5860 001C27C0 7C 64 1B 78 */ mr r4, r3 +/* 801C5864 001C27C4 38 61 00 7C */ addi r3, r1, 0x7c +/* 801C5868 001C27C8 4B EE 9A E5 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801C586C 001C27CC 83 83 00 04 */ lwz r28, 4(r3) +/* 801C5870 001C27D0 28 1C 00 00 */ cmplwi r28, 0 +/* 801C5874 001C27D4 41 82 01 64 */ beq lbl_801C59D8 +/* 801C5878 001C27D8 7F 84 E3 78 */ mr r4, r28 +/* 801C587C 001C27DC 38 61 00 4C */ addi r3, r1, 0x4c +/* 801C5880 001C27E0 4B FE 33 0D */ bl GetLastTouchedObject__15CCollisionActorCFv +/* 801C5884 001C27E4 A0 01 00 4C */ lhz r0, 0x4c(r1) +/* 801C5888 001C27E8 7F E3 FB 78 */ mr r3, r31 +/* 801C588C 001C27EC 38 81 00 48 */ addi r4, r1, 0x48 +/* 801C5890 001C27F0 B0 01 00 58 */ sth r0, 0x58(r1) +/* 801C5894 001C27F4 B0 01 00 48 */ sth r0, 0x48(r1) +/* 801C5898 001C27F8 4B E8 6D 0D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801C589C 001C27FC 7C 64 1B 78 */ mr r4, r3 +/* 801C58A0 001C2800 38 61 00 74 */ addi r3, r1, 0x74 +/* 801C58A4 001C2804 4B EE 7E 69 */ bl "__ct__29TCastToPtr<15CGameProjectile>FP7CEntity" +/* 801C58A8 001C2808 83 C3 00 04 */ lwz r30, 4(r3) +/* 801C58AC 001C280C 28 1E 00 00 */ cmplwi r30, 0 +/* 801C58B0 001C2810 41 82 04 64 */ beq lbl_801C5D14 +/* 801C58B4 001C2814 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 801C58B8 001C2818 A0 9E 00 EC */ lhz r4, 0xec(r30) +/* 801C58BC 001C281C A0 03 00 08 */ lhz r0, 8(r3) +/* 801C58C0 001C2820 7C 04 00 40 */ cmplw r4, r0 +/* 801C58C4 001C2824 40 82 04 50 */ bne lbl_801C5D14 +/* 801C58C8 001C2828 7F 83 E3 78 */ mr r3, r28 +/* 801C58CC 001C282C 81 9C 00 00 */ lwz r12, 0(r28) +/* 801C58D0 001C2830 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 801C58D4 001C2834 7D 89 03 A6 */ mtctr r12 +/* 801C58D8 001C2838 4E 80 04 21 */ bctrl +/* 801C58DC 001C283C C0 3E 01 34 */ lfs f1, 0x134(r30) +/* 801C58E0 001C2840 7C 7B 1B 78 */ mr r27, r3 +/* 801C58E4 001C2844 3B 9E 01 2C */ addi r28, r30, 0x12c +/* 801C58E8 001C2848 7F A3 EB 78 */ mr r3, r29 +/* 801C58EC 001C284C 7F E4 FB 78 */ mr r4, r31 +/* 801C58F0 001C2850 4B FF BB C5 */ bl sub_801c14b4 +/* 801C58F4 001C2854 7F 63 DB 78 */ mr r3, r27 +/* 801C58F8 001C2858 7F 84 E3 78 */ mr r4, r28 +/* 801C58FC 001C285C 38 A0 00 00 */ li r5, 0 +/* 801C5900 001C2860 4B F3 CC 85 */ bl WeaponHits__20CDamageVulnerabilityCFRC11CWeaponModei +/* 801C5904 001C2864 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C5908 001C2868 41 82 00 A0 */ beq lbl_801C59A8 +/* 801C590C 001C286C 88 7C 00 04 */ lbz r3, 4(r28) +/* 801C5910 001C2870 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f +/* 801C5914 001C2874 40 82 00 18 */ bne lbl_801C592C +/* 801C5918 001C2878 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f +/* 801C591C 001C287C 40 82 00 10 */ bne lbl_801C592C +/* 801C5920 001C2880 80 1C 00 00 */ lwz r0, 0(r28) +/* 801C5924 001C2884 2C 00 00 06 */ cmpwi r0, 6 +/* 801C5928 001C2888 40 82 00 24 */ bne lbl_801C594C +lbl_801C592C: +/* 801C592C 001C288C 88 1D 08 40 */ lbz r0, 0x840(r29) +/* 801C5930 001C2890 38 60 00 01 */ li r3, 1 +/* 801C5934 001C2894 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f +/* 801C5938 001C2898 C0 02 AA A4 */ lfs f0, lbl_805AC7C4@sda21(r2) +/* 801C593C 001C289C 98 1D 08 40 */ stb r0, 0x840(r29) +/* 801C5940 001C28A0 C0 3D 08 3C */ lfs f1, 0x83c(r29) +/* 801C5944 001C28A4 EC 01 00 2A */ fadds f0, f1, f0 +/* 801C5948 001C28A8 D0 1D 08 3C */ stfs f0, 0x83c(r29) +lbl_801C594C: +/* 801C594C 001C28AC C0 5E 00 50 */ lfs f2, 0x50(r30) +/* 801C5950 001C28B0 7F A3 EB 78 */ mr r3, r29 +/* 801C5954 001C28B4 C0 3E 02 9C */ lfs f1, 0x29c(r30) +/* 801C5958 001C28B8 7F E5 FB 78 */ mr r5, r31 +/* 801C595C 001C28BC C0 7E 00 60 */ lfs f3, 0x60(r30) +/* 801C5960 001C28C0 7F 86 E3 78 */ mr r6, r28 +/* 801C5964 001C28C4 EC 82 08 28 */ fsubs f4, f2, f1 +/* 801C5968 001C28C8 C0 1E 02 A0 */ lfs f0, 0x2a0(r30) +/* 801C596C 001C28CC C0 5E 00 40 */ lfs f2, 0x40(r30) +/* 801C5970 001C28D0 38 81 00 84 */ addi r4, r1, 0x84 +/* 801C5974 001C28D4 EC 63 00 28 */ fsubs f3, f3, f0 +/* 801C5978 001C28D8 C0 1E 02 98 */ lfs f0, 0x298(r30) +/* 801C597C 001C28DC C0 3C 00 14 */ lfs f1, 0x14(r28) +/* 801C5980 001C28E0 EC 02 00 28 */ fsubs f0, f2, f0 +/* 801C5984 001C28E4 38 E0 00 01 */ li r7, 1 +/* 801C5988 001C28E8 39 00 00 00 */ li r8, 0 +/* 801C598C 001C28EC D0 81 00 88 */ stfs f4, 0x88(r1) +/* 801C5990 001C28F0 D0 61 00 8C */ stfs f3, 0x8c(r1) +/* 801C5994 001C28F4 D0 01 00 84 */ stfs f0, 0x84(r1) +/* 801C5998 001C28F8 81 9D 00 00 */ lwz r12, 0(r29) +/* 801C599C 001C28FC 81 8C 00 88 */ lwz r12, 0x88(r12) +/* 801C59A0 001C2900 7D 89 03 A6 */ mtctr r12 +/* 801C59A4 001C2904 4E 80 04 21 */ bctrl +lbl_801C59A8: +/* 801C59A8 001C2908 88 1D 08 40 */ lbz r0, 0x840(r29) +/* 801C59AC 001C290C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801C59B0 001C2910 41 82 00 14 */ beq lbl_801C59C4 +/* 801C59B4 001C2914 C0 3D 08 3C */ lfs f1, 0x83c(r29) +/* 801C59B8 001C2918 C0 02 AA EC */ lfs f0, lbl_805AC80C@sda21(r2) +/* 801C59BC 001C291C EC 01 00 2A */ fadds f0, f1, f0 +/* 801C59C0 001C2920 D0 1D 08 3C */ stfs f0, 0x83c(r29) +lbl_801C59C4: +/* 801C59C4 001C2924 88 1D 08 40 */ lbz r0, 0x840(r29) +/* 801C59C8 001C2928 38 60 00 01 */ li r3, 1 +/* 801C59CC 001C292C 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 801C59D0 001C2930 98 1D 08 40 */ stb r0, 0x840(r29) +/* 801C59D4 001C2934 48 00 03 40 */ b lbl_801C5D14 +lbl_801C59D8: +/* 801C59D8 001C2938 A0 1E 00 00 */ lhz r0, 0(r30) +/* 801C59DC 001C293C 7F E3 FB 78 */ mr r3, r31 +/* 801C59E0 001C2940 38 81 00 44 */ addi r4, r1, 0x44 +/* 801C59E4 001C2944 B0 01 00 44 */ sth r0, 0x44(r1) +/* 801C59E8 001C2948 4B E8 6B BD */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801C59EC 001C294C 7C 64 1B 78 */ mr r4, r3 +/* 801C59F0 001C2950 38 61 00 6C */ addi r3, r1, 0x6c +/* 801C59F4 001C2954 4B ED FE A5 */ bl "__ct__20TCastToPtr<7CWeapon>FP7CEntity" +/* 801C59F8 001C2958 83 83 00 04 */ lwz r28, 4(r3) +/* 801C59FC 001C295C 28 1C 00 00 */ cmplwi r28, 0 +/* 801C5A00 001C2960 41 82 03 14 */ beq lbl_801C5D14 +/* 801C5A04 001C2964 80 1C 01 2C */ lwz r0, 0x12c(r28) +/* 801C5A08 001C2968 38 60 00 00 */ li r3, 0 +/* 801C5A0C 001C296C C0 02 AA 98 */ lfs f0, lbl_805AC7B8@sda21(r2) +/* 801C5A10 001C2970 38 80 00 01 */ li r4, 1 +/* 801C5A14 001C2974 90 01 01 34 */ stw r0, 0x134(r1) +/* 801C5A18 001C2978 80 AD 91 28 */ lwz r5, lbl_805A7CE8@sda21(r13) +/* 801C5A1C 001C297C 88 1C 01 30 */ lbz r0, 0x130(r28) +/* 801C5A20 001C2980 98 01 01 38 */ stb r0, 0x138(r1) +/* 801C5A24 001C2984 C0 3C 01 34 */ lfs f1, 0x134(r28) +/* 801C5A28 001C2988 D0 21 01 3C */ stfs f1, 0x13c(r1) +/* 801C5A2C 001C298C C0 3C 01 38 */ lfs f1, 0x138(r28) +/* 801C5A30 001C2990 D0 21 01 40 */ stfs f1, 0x140(r1) +/* 801C5A34 001C2994 C0 3C 01 3C */ lfs f1, 0x13c(r28) +/* 801C5A38 001C2998 D0 21 01 44 */ stfs f1, 0x144(r1) +/* 801C5A3C 001C299C C0 3C 01 40 */ lfs f1, 0x140(r28) +/* 801C5A40 001C29A0 D0 21 01 48 */ stfs f1, 0x148(r1) +/* 801C5A44 001C29A4 88 1C 01 44 */ lbz r0, 0x144(r28) +/* 801C5A48 001C29A8 98 01 01 4C */ stb r0, 0x14c(r1) +/* 801C5A4C 001C29AC D0 01 01 44 */ stfs f0, 0x144(r1) +/* 801C5A50 001C29B0 48 1C 44 A5 */ bl __shl2i +/* 801C5A54 001C29B4 39 00 00 00 */ li r8, 0 +/* 801C5A58 001C29B8 39 40 00 03 */ li r10, 3 +/* 801C5A5C 001C29BC 90 81 01 04 */ stw r4, 0x104(r1) +/* 801C5A60 001C29C0 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801C5A64 001C29C4 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 801C5A68 001C29C8 A0 1E 00 00 */ lhz r0, 0(r30) +/* 801C5A6C 001C29CC 90 61 01 00 */ stw r3, 0x100(r1) +/* 801C5A70 001C29D0 7F E3 FB 78 */ mr r3, r31 +/* 801C5A74 001C29D4 38 81 00 40 */ addi r4, r1, 0x40 +/* 801C5A78 001C29D8 38 A1 00 3C */ addi r5, r1, 0x3c +/* 801C5A7C 001C29DC 91 01 01 0C */ stw r8, 0x10c(r1) +/* 801C5A80 001C29E0 38 C1 00 38 */ addi r6, r1, 0x38 +/* 801C5A84 001C29E4 38 E1 01 34 */ addi r7, r1, 0x134 +/* 801C5A88 001C29E8 91 01 01 08 */ stw r8, 0x108(r1) +/* 801C5A8C 001C29EC 39 01 01 00 */ addi r8, r1, 0x100 +/* 801C5A90 001C29F0 91 41 01 10 */ stw r10, 0x110(r1) +/* 801C5A94 001C29F4 A1 7C 00 EC */ lhz r11, 0xec(r28) +/* 801C5A98 001C29F8 B1 61 00 38 */ sth r11, 0x38(r1) +/* 801C5A9C 001C29FC A1 5D 07 90 */ lhz r10, 0x790(r29) +/* 801C5AA0 001C2A00 B1 61 00 34 */ sth r11, 0x34(r1) +/* 801C5AA4 001C2A04 B1 41 00 3C */ sth r10, 0x3c(r1) +/* 801C5AA8 001C2A08 B0 01 00 40 */ sth r0, 0x40(r1) +/* 801C5AAC 001C2A0C 4B E8 45 F5 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +/* 801C5AB0 001C2A10 48 00 02 64 */ b lbl_801C5D14 +/* 801C5AB4 001C2A14 88 1D 08 40 */ lbz r0, 0x840(r29) +/* 801C5AB8 001C2A18 38 60 00 01 */ li r3, 1 +/* 801C5ABC 001C2A1C 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 801C5AC0 001C2A20 98 1D 08 40 */ stb r0, 0x840(r29) +/* 801C5AC4 001C2A24 48 00 02 50 */ b lbl_801C5D14 +/* 801C5AC8 001C2A28 A0 1E 00 00 */ lhz r0, 0(r30) +/* 801C5ACC 001C2A2C 7F E3 FB 78 */ mr r3, r31 +/* 801C5AD0 001C2A30 38 81 00 30 */ addi r4, r1, 0x30 +/* 801C5AD4 001C2A34 B0 01 00 30 */ sth r0, 0x30(r1) +/* 801C5AD8 001C2A38 4B E8 6A CD */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801C5ADC 001C2A3C 7C 64 1B 78 */ mr r4, r3 +/* 801C5AE0 001C2A40 38 61 00 64 */ addi r3, r1, 0x64 +/* 801C5AE4 001C2A44 4B EE 98 69 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801C5AE8 001C2A48 83 83 00 04 */ lwz r28, 4(r3) +/* 801C5AEC 001C2A4C 28 1C 00 00 */ cmplwi r28, 0 +/* 801C5AF0 001C2A50 41 82 02 24 */ beq lbl_801C5D14 +/* 801C5AF4 001C2A54 7F A3 EB 78 */ mr r3, r29 +/* 801C5AF8 001C2A58 7F E4 FB 78 */ mr r4, r31 +/* 801C5AFC 001C2A5C 81 9D 00 00 */ lwz r12, 0(r29) +/* 801C5B00 001C2A60 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801C5B04 001C2A64 7D 89 03 A6 */ mtctr r12 +/* 801C5B08 001C2A68 4E 80 04 21 */ bctrl +/* 801C5B0C 001C2A6C C0 23 00 00 */ lfs f1, 0(r3) +/* 801C5B10 001C2A70 C0 02 AA 98 */ lfs f0, lbl_805AC7B8@sda21(r2) +/* 801C5B14 001C2A74 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C5B18 001C2A78 40 81 01 FC */ ble lbl_801C5D14 +/* 801C5B1C 001C2A7C 7F 84 E3 78 */ mr r4, r28 +/* 801C5B20 001C2A80 38 61 00 2C */ addi r3, r1, 0x2c +/* 801C5B24 001C2A84 4B FE 30 69 */ bl GetLastTouchedObject__15CCollisionActorCFv +/* 801C5B28 001C2A88 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 801C5B2C 001C2A8C A0 81 00 2C */ lhz r4, 0x2c(r1) +/* 801C5B30 001C2A90 A0 03 00 08 */ lhz r0, 8(r3) +/* 801C5B34 001C2A94 7C 04 00 40 */ cmplw r4, r0 +/* 801C5B38 001C2A98 40 82 01 DC */ bne lbl_801C5D14 +/* 801C5B3C 001C2A9C C0 3D 04 20 */ lfs f1, 0x420(r29) +/* 801C5B40 001C2AA0 C0 02 AA 98 */ lfs f0, lbl_805AC7B8@sda21(r2) +/* 801C5B44 001C2AA4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C5B48 001C2AA8 4C 40 13 82 */ cror 2, 0, 2 +/* 801C5B4C 001C2AAC 40 82 01 C8 */ bne lbl_801C5D14 +/* 801C5B50 001C2AB0 7F A4 EB 78 */ mr r4, r29 +/* 801C5B54 001C2AB4 38 61 00 E4 */ addi r3, r1, 0xe4 +/* 801C5B58 001C2AB8 81 9D 00 00 */ lwz r12, 0(r29) +/* 801C5B5C 001C2ABC 81 8C 02 B0 */ lwz r12, 0x2b0(r12) +/* 801C5B60 001C2AC0 7D 89 03 A6 */ mtctr r12 +/* 801C5B64 001C2AC4 4E 80 04 21 */ bctrl +/* 801C5B68 001C2AC8 C0 21 00 EC */ lfs f1, 0xec(r1) +/* 801C5B6C 001C2ACC C0 02 AA AC */ lfs f0, lbl_805AC7CC@sda21(r2) +/* 801C5B70 001C2AD0 80 81 00 E4 */ lwz r4, 0xe4(r1) +/* 801C5B74 001C2AD4 88 61 00 E8 */ lbz r3, 0xe8(r1) +/* 801C5B78 001C2AD8 EC 00 00 72 */ fmuls f0, f0, f1 +/* 801C5B7C 001C2ADC D0 21 01 20 */ stfs f1, 0x120(r1) +/* 801C5B80 001C2AE0 C0 61 00 F0 */ lfs f3, 0xf0(r1) +/* 801C5B84 001C2AE4 C0 41 00 F4 */ lfs f2, 0xf4(r1) +/* 801C5B88 001C2AE8 C0 21 00 F8 */ lfs f1, 0xf8(r1) +/* 801C5B8C 001C2AEC 88 01 00 FC */ lbz r0, 0xfc(r1) +/* 801C5B90 001C2AF0 90 81 01 18 */ stw r4, 0x118(r1) +/* 801C5B94 001C2AF4 98 61 01 1C */ stb r3, 0x11c(r1) +/* 801C5B98 001C2AF8 D0 61 01 24 */ stfs f3, 0x124(r1) +/* 801C5B9C 001C2AFC D0 41 01 28 */ stfs f2, 0x128(r1) +/* 801C5BA0 001C2B00 D0 21 01 2C */ stfs f1, 0x12c(r1) +/* 801C5BA4 001C2B04 98 01 01 30 */ stb r0, 0x130(r1) +/* 801C5BA8 001C2B08 D0 01 01 20 */ stfs f0, 0x120(r1) +/* 801C5BAC 001C2B0C 88 7D 08 40 */ lbz r3, 0x840(r29) +/* 801C5BB0 001C2B10 54 60 F7 FF */ rlwinm. r0, r3, 0x1e, 0x1f, 0x1f +/* 801C5BB4 001C2B14 41 82 00 5C */ beq lbl_801C5C10 +/* 801C5BB8 001C2B18 54 60 FF FF */ rlwinm. r0, r3, 0x1f, 0x1f, 0x1f +/* 801C5BBC 001C2B1C 41 82 00 54 */ beq lbl_801C5C10 +/* 801C5BC0 001C2B20 7F A4 EB 78 */ mr r4, r29 +/* 801C5BC4 001C2B24 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 801C5BC8 001C2B28 81 9D 00 00 */ lwz r12, 0(r29) +/* 801C5BCC 001C2B2C 81 8C 02 B0 */ lwz r12, 0x2b0(r12) +/* 801C5BD0 001C2B30 7D 89 03 A6 */ mtctr r12 +/* 801C5BD4 001C2B34 4E 80 04 21 */ bctrl +/* 801C5BD8 001C2B38 80 81 00 C8 */ lwz r4, 0xc8(r1) +/* 801C5BDC 001C2B3C 80 61 00 CC */ lwz r3, 0xcc(r1) +/* 801C5BE0 001C2B40 C0 61 00 D0 */ lfs f3, 0xd0(r1) +/* 801C5BE4 001C2B44 C0 41 00 D4 */ lfs f2, 0xd4(r1) +/* 801C5BE8 001C2B48 C0 21 00 D8 */ lfs f1, 0xd8(r1) +/* 801C5BEC 001C2B4C C0 01 00 DC */ lfs f0, 0xdc(r1) +/* 801C5BF0 001C2B50 88 01 00 E0 */ lbz r0, 0xe0(r1) +/* 801C5BF4 001C2B54 90 81 01 18 */ stw r4, 0x118(r1) +/* 801C5BF8 001C2B58 90 61 01 1C */ stw r3, 0x11c(r1) +/* 801C5BFC 001C2B5C D0 61 01 20 */ stfs f3, 0x120(r1) +/* 801C5C00 001C2B60 D0 41 01 24 */ stfs f2, 0x124(r1) +/* 801C5C04 001C2B64 D0 21 01 28 */ stfs f1, 0x128(r1) +/* 801C5C08 001C2B68 D0 01 01 2C */ stfs f0, 0x12c(r1) +/* 801C5C0C 001C2B6C 98 01 01 30 */ stb r0, 0x130(r1) +lbl_801C5C10: +/* 801C5C10 001C2B70 80 AD 91 28 */ lwz r5, lbl_805A7CE8@sda21(r13) +/* 801C5C14 001C2B74 38 60 00 00 */ li r3, 0 +/* 801C5C18 001C2B78 38 80 00 01 */ li r4, 1 +/* 801C5C1C 001C2B7C 48 1C 42 D9 */ bl __shl2i +/* 801C5C20 001C2B80 39 40 00 00 */ li r10, 0 +/* 801C5C24 001C2B84 38 00 00 03 */ li r0, 3 +/* 801C5C28 001C2B88 90 81 00 B4 */ stw r4, 0xb4(r1) +/* 801C5C2C 001C2B8C 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801C5C30 001C2B90 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 801C5C34 001C2B94 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801C5C38 001C2B98 90 61 00 B0 */ stw r3, 0xb0(r1) +/* 801C5C3C 001C2B9C 38 81 00 28 */ addi r4, r1, 0x28 +/* 801C5C40 001C2BA0 7F E3 FB 78 */ mr r3, r31 +/* 801C5C44 001C2BA4 38 C1 00 18 */ addi r6, r1, 0x18 +/* 801C5C48 001C2BA8 91 41 00 BC */ stw r10, 0xbc(r1) +/* 801C5C4C 001C2BAC 38 E1 01 18 */ addi r7, r1, 0x118 +/* 801C5C50 001C2BB0 39 01 00 B0 */ addi r8, r1, 0xb0 +/* 801C5C54 001C2BB4 91 41 00 B8 */ stw r10, 0xb8(r1) +/* 801C5C58 001C2BB8 90 01 00 C0 */ stw r0, 0xc0(r1) +/* 801C5C5C 001C2BBC A0 1D 00 08 */ lhz r0, 8(r29) +/* 801C5C60 001C2BC0 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801C5C64 001C2BC4 81 5F 08 4C */ lwz r10, 0x84c(r31) +/* 801C5C68 001C2BC8 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801C5C6C 001C2BCC A1 4A 00 08 */ lhz r10, 8(r10) +/* 801C5C70 001C2BD0 B1 41 00 20 */ sth r10, 0x20(r1) +/* 801C5C74 001C2BD4 A0 1D 00 08 */ lhz r0, 8(r29) +/* 801C5C78 001C2BD8 B1 41 00 1C */ sth r10, 0x1c(r1) +/* 801C5C7C 001C2BDC B0 01 00 24 */ sth r0, 0x24(r1) +/* 801C5C80 001C2BE0 B0 01 00 28 */ sth r0, 0x28(r1) +/* 801C5C84 001C2BE4 4B E8 44 1D */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +/* 801C5C88 001C2BE8 C0 1D 04 24 */ lfs f0, 0x424(r29) +/* 801C5C8C 001C2BEC 38 60 00 00 */ li r3, 0 +/* 801C5C90 001C2BF0 D0 1D 04 20 */ stfs f0, 0x420(r29) +/* 801C5C94 001C2BF4 88 1D 08 40 */ lbz r0, 0x840(r29) +/* 801C5C98 001C2BF8 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 801C5C9C 001C2BFC 98 1D 08 40 */ stb r0, 0x840(r29) +/* 801C5CA0 001C2C00 48 00 00 74 */ b lbl_801C5D14 +/* 801C5CA4 001C2C04 A0 7D 06 78 */ lhz r3, 0x678(r29) +/* 801C5CA8 001C2C08 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801C5CAC 001C2C0C 7C 03 00 40 */ cmplw r3, r0 +/* 801C5CB0 001C2C10 40 82 00 1C */ bne lbl_801C5CCC +/* 801C5CB4 001C2C14 7F A4 EB 78 */ mr r4, r29 +/* 801C5CB8 001C2C18 7F E5 FB 78 */ mr r5, r31 +/* 801C5CBC 001C2C1C 38 61 00 10 */ addi r3, r1, 0x10 +/* 801C5CC0 001C2C20 48 07 45 29 */ bl GetTeamAiMgr__10CTeamAiMgrF3CAiRC13CStateManager +/* 801C5CC4 001C2C24 A0 01 00 10 */ lhz r0, 0x10(r1) +/* 801C5CC8 001C2C28 B0 1D 06 78 */ sth r0, 0x678(r29) +lbl_801C5CCC: +/* 801C5CCC 001C2C2C 80 BD 00 04 */ lwz r5, 4(r29) +/* 801C5CD0 001C2C30 80 9F 08 50 */ lwz r4, 0x850(r31) +/* 801C5CD4 001C2C34 54 A3 18 38 */ slwi r3, r5, 3 +/* 801C5CD8 001C2C38 90 A1 00 60 */ stw r5, 0x60(r1) +/* 801C5CDC 001C2C3C 80 84 00 20 */ lwz r4, 0x20(r4) +/* 801C5CE0 001C2C40 38 03 00 04 */ addi r0, r3, 4 +/* 801C5CE4 001C2C44 90 A1 00 5C */ stw r5, 0x5c(r1) +/* 801C5CE8 001C2C48 7C 64 00 2E */ lwzx r3, r4, r0 +/* 801C5CEC 001C2C4C 80 63 01 2C */ lwz r3, 0x12c(r3) +/* 801C5CF0 001C2C50 80 03 10 BC */ lwz r0, 0x10bc(r3) +/* 801C5CF4 001C2C54 90 1D 06 7C */ stw r0, 0x67c(r29) +/* 801C5CF8 001C2C58 48 00 00 1C */ b lbl_801C5D14 +/* 801C5CFC 001C2C5C 80 7D 07 64 */ lwz r3, 0x764(r29) +/* 801C5D00 001C2C60 28 03 00 00 */ cmplwi r3, 0 +/* 801C5D04 001C2C64 41 82 00 10 */ beq lbl_801C5D14 +/* 801C5D08 001C2C68 7F E4 FB 78 */ mr r4, r31 +/* 801C5D0C 001C2C6C 38 A0 00 00 */ li r5, 0 +/* 801C5D10 001C2C70 4B FE 11 B1 */ bl SetMovable__22CCollisionActorManagerFb +lbl_801C5D14: +/* 801C5D14 001C2C74 BB 61 01 5C */ lmw r27, 0x15c(r1) +/* 801C5D18 001C2C78 80 01 01 74 */ lwz r0, 0x174(r1) +/* 801C5D1C 001C2C7C 7C 08 03 A6 */ mtlr r0 +/* 801C5D20 001C2C80 38 21 01 70 */ addi r1, r1, 0x170 +/* 801C5D24 001C2C84 4E 80 00 20 */ blr + +.global Think__12CMetroidBetaFfR13CStateManager +Think__12CMetroidBetaFfR13CStateManager: +/* 801C5D28 001C2C88 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801C5D2C 001C2C8C 7C 08 02 A6 */ mflr r0 +/* 801C5D30 001C2C90 90 01 00 34 */ stw r0, 0x34(r1) +/* 801C5D34 001C2C94 DB E1 00 28 */ stfd f31, 0x28(r1) +/* 801C5D38 001C2C98 FF E0 08 90 */ fmr f31, f1 +/* 801C5D3C 001C2C9C 93 E1 00 24 */ stw r31, 0x24(r1) +/* 801C5D40 001C2CA0 7C 9F 23 78 */ mr r31, r4 +/* 801C5D44 001C2CA4 93 C1 00 20 */ stw r30, 0x20(r1) +/* 801C5D48 001C2CA8 7C 7E 1B 78 */ mr r30, r3 +/* 801C5D4C 001C2CAC 88 03 00 30 */ lbz r0, 0x30(r3) +/* 801C5D50 001C2CB0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801C5D54 001C2CB4 41 82 00 8C */ beq lbl_801C5DE0 +/* 801C5D58 001C2CB8 A0 DE 00 08 */ lhz r6, 8(r30) +/* 801C5D5C 001C2CBC 7F E3 FB 78 */ mr r3, r31 +/* 801C5D60 001C2CC0 38 81 00 10 */ addi r4, r1, 0x10 +/* 801C5D64 001C2CC4 38 A1 00 0C */ addi r5, r1, 0xc +/* 801C5D68 001C2CC8 B0 C1 00 0C */ sth r6, 0xc(r1) +/* 801C5D6C 001C2CCC A0 1E 06 78 */ lhz r0, 0x678(r30) +/* 801C5D70 001C2CD0 B0 C1 00 08 */ sth r6, 8(r1) +/* 801C5D74 001C2CD4 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801C5D78 001C2CD8 48 07 44 09 */ bl GetTeamAiRole__10CTeamAiMgrCFRC13CStateManager9TUniqueId9TUniqueId +/* 801C5D7C 001C2CDC 28 03 00 00 */ cmplwi r3, 0 +/* 801C5D80 001C2CE0 40 82 00 10 */ bne lbl_801C5D90 +/* 801C5D84 001C2CE4 7F C3 F3 78 */ mr r3, r30 +/* 801C5D88 001C2CE8 7F E4 FB 78 */ mr r4, r31 +/* 801C5D8C 001C2CEC 4B FF B5 85 */ bl sub_801c1310 +lbl_801C5D90: +/* 801C5D90 001C2CF0 FC 20 F8 90 */ fmr f1, f31 +/* 801C5D94 001C2CF4 7F C3 F3 78 */ mr r3, r30 +/* 801C5D98 001C2CF8 7F E4 FB 78 */ mr r4, r31 +/* 801C5D9C 001C2CFC 4B EB 3D 7D */ bl Think__10CPatternedFfR13CStateManager +/* 801C5DA0 001C2D00 FC 20 F8 90 */ fmr f1, f31 +/* 801C5DA4 001C2D04 80 7E 07 64 */ lwz r3, 0x764(r30) +/* 801C5DA8 001C2D08 7F E4 FB 78 */ mr r4, r31 +/* 801C5DAC 001C2D0C 38 A0 00 00 */ li r5, 0 +/* 801C5DB0 001C2D10 4B FE 16 A1 */ bl Update__22CCollisionActorManagerCFfR13CStateManagerQ222CCollisionActorManager14EUpdateOptions +/* 801C5DB4 001C2D14 7F C3 F3 78 */ mr r3, r30 +/* 801C5DB8 001C2D18 7F E4 FB 78 */ mr r4, r31 +/* 801C5DBC 001C2D1C 4B FF BB 6D */ bl sub_801c1928 +/* 801C5DC0 001C2D20 FC 20 F8 90 */ fmr f1, f31 +/* 801C5DC4 001C2D24 7F C3 F3 78 */ mr r3, r30 +/* 801C5DC8 001C2D28 7F E4 FB 78 */ mr r4, r31 +/* 801C5DCC 001C2D2C 4B FF AF D9 */ bl sub_801c0da4 +/* 801C5DD0 001C2D30 FC 20 F8 90 */ fmr f1, f31 +/* 801C5DD4 001C2D34 7F C3 F3 78 */ mr r3, r30 +/* 801C5DD8 001C2D38 7F E4 FB 78 */ mr r4, r31 +/* 801C5DDC 001C2D3C 4B FF C3 D9 */ bl sub_801c21b4 +lbl_801C5DE0: +/* 801C5DE0 001C2D40 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801C5DE4 001C2D44 CB E1 00 28 */ lfd f31, 0x28(r1) +/* 801C5DE8 001C2D48 83 E1 00 24 */ lwz r31, 0x24(r1) +/* 801C5DEC 001C2D4C 83 C1 00 20 */ lwz r30, 0x20(r1) +/* 801C5DF0 001C2D50 7C 08 03 A6 */ mtlr r0 +/* 801C5DF4 001C2D54 38 21 00 30 */ addi r1, r1, 0x30 +/* 801C5DF8 001C2D58 4E 80 00 20 */ blr + +.global Accept__12CMetroidBetaFR8IVisitor +Accept__12CMetroidBetaFR8IVisitor: +/* 801C5DFC 001C2D5C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801C5E00 001C2D60 7C 08 02 A6 */ mflr r0 +/* 801C5E04 001C2D64 90 01 00 14 */ stw r0, 0x14(r1) +/* 801C5E08 001C2D68 7C 60 1B 78 */ mr r0, r3 +/* 801C5E0C 001C2D6C 7C 83 23 78 */ mr r3, r4 +/* 801C5E10 001C2D70 81 84 00 00 */ lwz r12, 0(r4) +/* 801C5E14 001C2D74 7C 04 03 78 */ mr r4, r0 +/* 801C5E18 001C2D78 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801C5E1C 001C2D7C 7D 89 03 A6 */ mtctr r12 +/* 801C5E20 001C2D80 4E 80 04 21 */ bctrl +/* 801C5E24 001C2D84 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801C5E28 001C2D88 7C 08 03 A6 */ mtlr r0 +/* 801C5E2C 001C2D8C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801C5E30 001C2D90 4E 80 00 20 */ blr + +.global __dt__12CMetroidBetaFv +__dt__12CMetroidBetaFv: +/* 801C5E34 001C2D94 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801C5E38 001C2D98 7C 08 02 A6 */ mflr r0 +/* 801C5E3C 001C2D9C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801C5E40 001C2DA0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801C5E44 001C2DA4 7C 9F 23 78 */ mr r31, r4 +/* 801C5E48 001C2DA8 93 C1 00 08 */ stw r30, 8(r1) +/* 801C5E4C 001C2DAC 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801C5E50 001C2DB0 41 82 02 20 */ beq lbl_801C6070 +/* 801C5E54 001C2DB4 3C 60 80 3E */ lis r3, lbl_803E5388@ha +/* 801C5E58 001C2DB8 34 1E 08 30 */ addic. r0, r30, 0x830 +/* 801C5E5C 001C2DBC 38 03 53 88 */ addi r0, r3, lbl_803E5388@l +/* 801C5E60 001C2DC0 90 1E 00 00 */ stw r0, 0(r30) +/* 801C5E64 001C2DC4 41 82 00 24 */ beq lbl_801C5E88 +/* 801C5E68 001C2DC8 80 7E 08 30 */ lwz r3, 0x830(r30) +/* 801C5E6C 001C2DCC 28 03 00 00 */ cmplwi r3, 0 +/* 801C5E70 001C2DD0 41 82 00 18 */ beq lbl_801C5E88 +/* 801C5E74 001C2DD4 81 83 00 00 */ lwz r12, 0(r3) +/* 801C5E78 001C2DD8 38 80 00 01 */ li r4, 1 +/* 801C5E7C 001C2DDC 81 8C 00 08 */ lwz r12, 8(r12) +/* 801C5E80 001C2DE0 7D 89 03 A6 */ mtctr r12 +/* 801C5E84 001C2DE4 4E 80 04 21 */ bctrl +lbl_801C5E88: +/* 801C5E88 001C2DE8 34 1E 08 2C */ addic. r0, r30, 0x82c +/* 801C5E8C 001C2DEC 41 82 00 24 */ beq lbl_801C5EB0 +/* 801C5E90 001C2DF0 80 7E 08 2C */ lwz r3, 0x82c(r30) +/* 801C5E94 001C2DF4 28 03 00 00 */ cmplwi r3, 0 +/* 801C5E98 001C2DF8 41 82 00 18 */ beq lbl_801C5EB0 +/* 801C5E9C 001C2DFC 81 83 00 00 */ lwz r12, 0(r3) +/* 801C5EA0 001C2E00 38 80 00 01 */ li r4, 1 +/* 801C5EA4 001C2E04 81 8C 00 08 */ lwz r12, 8(r12) +/* 801C5EA8 001C2E08 7D 89 03 A6 */ mtctr r12 +/* 801C5EAC 001C2E0C 4E 80 04 21 */ bctrl +lbl_801C5EB0: +/* 801C5EB0 001C2E10 34 1E 08 28 */ addic. r0, r30, 0x828 +/* 801C5EB4 001C2E14 41 82 00 24 */ beq lbl_801C5ED8 +/* 801C5EB8 001C2E18 80 7E 08 28 */ lwz r3, 0x828(r30) +/* 801C5EBC 001C2E1C 28 03 00 00 */ cmplwi r3, 0 +/* 801C5EC0 001C2E20 41 82 00 18 */ beq lbl_801C5ED8 +/* 801C5EC4 001C2E24 81 83 00 00 */ lwz r12, 0(r3) +/* 801C5EC8 001C2E28 38 80 00 01 */ li r4, 1 +/* 801C5ECC 001C2E2C 81 8C 00 08 */ lwz r12, 8(r12) +/* 801C5ED0 001C2E30 7D 89 03 A6 */ mtctr r12 +/* 801C5ED4 001C2E34 4E 80 04 21 */ bctrl +lbl_801C5ED8: +/* 801C5ED8 001C2E38 34 1E 08 24 */ addic. r0, r30, 0x824 +/* 801C5EDC 001C2E3C 41 82 00 24 */ beq lbl_801C5F00 +/* 801C5EE0 001C2E40 80 7E 08 24 */ lwz r3, 0x824(r30) +/* 801C5EE4 001C2E44 28 03 00 00 */ cmplwi r3, 0 +/* 801C5EE8 001C2E48 41 82 00 18 */ beq lbl_801C5F00 +/* 801C5EEC 001C2E4C 81 83 00 00 */ lwz r12, 0(r3) +/* 801C5EF0 001C2E50 38 80 00 01 */ li r4, 1 +/* 801C5EF4 001C2E54 81 8C 00 08 */ lwz r12, 8(r12) +/* 801C5EF8 001C2E58 7D 89 03 A6 */ mtctr r12 +/* 801C5EFC 001C2E5C 4E 80 04 21 */ bctrl +lbl_801C5F00: +/* 801C5F00 001C2E60 34 1E 08 20 */ addic. r0, r30, 0x820 +/* 801C5F04 001C2E64 41 82 00 24 */ beq lbl_801C5F28 +/* 801C5F08 001C2E68 80 7E 08 20 */ lwz r3, 0x820(r30) +/* 801C5F0C 001C2E6C 28 03 00 00 */ cmplwi r3, 0 +/* 801C5F10 001C2E70 41 82 00 18 */ beq lbl_801C5F28 +/* 801C5F14 001C2E74 81 83 00 00 */ lwz r12, 0(r3) +/* 801C5F18 001C2E78 38 80 00 01 */ li r4, 1 +/* 801C5F1C 001C2E7C 81 8C 00 08 */ lwz r12, 8(r12) +/* 801C5F20 001C2E80 7D 89 03 A6 */ mtctr r12 +/* 801C5F24 001C2E84 4E 80 04 21 */ bctrl +lbl_801C5F28: +/* 801C5F28 001C2E88 34 1E 08 14 */ addic. r0, r30, 0x814 +/* 801C5F2C 001C2E8C 41 82 00 18 */ beq lbl_801C5F44 +/* 801C5F30 001C2E90 34 1E 08 14 */ addic. r0, r30, 0x814 +/* 801C5F34 001C2E94 41 82 00 10 */ beq lbl_801C5F44 +/* 801C5F38 001C2E98 38 7E 08 14 */ addi r3, r30, 0x814 +/* 801C5F3C 001C2E9C 38 80 00 00 */ li r4, 0 +/* 801C5F40 001C2EA0 48 17 AF 01 */ bl __dt__6CTokenFv +lbl_801C5F44: +/* 801C5F44 001C2EA4 34 1E 08 08 */ addic. r0, r30, 0x808 +/* 801C5F48 001C2EA8 41 82 00 18 */ beq lbl_801C5F60 +/* 801C5F4C 001C2EAC 34 1E 08 08 */ addic. r0, r30, 0x808 +/* 801C5F50 001C2EB0 41 82 00 10 */ beq lbl_801C5F60 +/* 801C5F54 001C2EB4 38 7E 08 08 */ addi r3, r30, 0x808 +/* 801C5F58 001C2EB8 38 80 00 00 */ li r4, 0 +/* 801C5F5C 001C2EBC 48 17 AE E5 */ bl __dt__6CTokenFv +lbl_801C5F60: +/* 801C5F60 001C2EC0 34 1E 07 FC */ addic. r0, r30, 0x7fc +/* 801C5F64 001C2EC4 41 82 00 18 */ beq lbl_801C5F7C +/* 801C5F68 001C2EC8 34 1E 07 FC */ addic. r0, r30, 0x7fc +/* 801C5F6C 001C2ECC 41 82 00 10 */ beq lbl_801C5F7C +/* 801C5F70 001C2ED0 38 7E 07 FC */ addi r3, r30, 0x7fc +/* 801C5F74 001C2ED4 38 80 00 00 */ li r4, 0 +/* 801C5F78 001C2ED8 48 17 AE C9 */ bl __dt__6CTokenFv +lbl_801C5F7C: +/* 801C5F7C 001C2EDC 34 1E 07 F0 */ addic. r0, r30, 0x7f0 +/* 801C5F80 001C2EE0 41 82 00 18 */ beq lbl_801C5F98 +/* 801C5F84 001C2EE4 34 1E 07 F0 */ addic. r0, r30, 0x7f0 +/* 801C5F88 001C2EE8 41 82 00 10 */ beq lbl_801C5F98 +/* 801C5F8C 001C2EEC 38 7E 07 F0 */ addi r3, r30, 0x7f0 +/* 801C5F90 001C2EF0 38 80 00 00 */ li r4, 0 +/* 801C5F94 001C2EF4 48 17 AE AD */ bl __dt__6CTokenFv +lbl_801C5F98: +/* 801C5F98 001C2EF8 34 1E 07 E4 */ addic. r0, r30, 0x7e4 +/* 801C5F9C 001C2EFC 41 82 00 18 */ beq lbl_801C5FB4 +/* 801C5FA0 001C2F00 34 1E 07 E4 */ addic. r0, r30, 0x7e4 +/* 801C5FA4 001C2F04 41 82 00 10 */ beq lbl_801C5FB4 +/* 801C5FA8 001C2F08 38 7E 07 E4 */ addi r3, r30, 0x7e4 +/* 801C5FAC 001C2F0C 38 80 00 00 */ li r4, 0 +/* 801C5FB0 001C2F10 48 17 AE 91 */ bl __dt__6CTokenFv +lbl_801C5FB4: +/* 801C5FB4 001C2F14 34 1E 07 68 */ addic. r0, r30, 0x768 +/* 801C5FB8 001C2F18 41 82 00 24 */ beq lbl_801C5FDC +/* 801C5FBC 001C2F1C 3C 60 80 3F */ lis r3, lbl_803ECAD0@ha +/* 801C5FC0 001C2F20 34 1E 07 68 */ addic. r0, r30, 0x768 +/* 801C5FC4 001C2F24 38 03 CA D0 */ addi r0, r3, lbl_803ECAD0@l +/* 801C5FC8 001C2F28 90 1E 07 68 */ stw r0, 0x768(r30) +/* 801C5FCC 001C2F2C 41 82 00 10 */ beq lbl_801C5FDC +/* 801C5FD0 001C2F30 3C 60 80 3E */ lis r3, lbl_803D97E4@ha +/* 801C5FD4 001C2F34 38 03 97 E4 */ addi r0, r3, lbl_803D97E4@l +/* 801C5FD8 001C2F38 90 1E 07 68 */ stw r0, 0x768(r30) +lbl_801C5FDC: +/* 801C5FDC 001C2F3C 34 1E 07 64 */ addic. r0, r30, 0x764 +/* 801C5FE0 001C2F40 41 82 00 10 */ beq lbl_801C5FF0 +/* 801C5FE4 001C2F44 80 7E 07 64 */ lwz r3, 0x764(r30) +/* 801C5FE8 001C2F48 38 80 00 01 */ li r4, 1 +/* 801C5FEC 001C2F4C 4B FE 18 F1 */ bl sub_801a78dc +lbl_801C5FF0: +/* 801C5FF0 001C2F50 34 1E 06 7C */ addic. r0, r30, 0x67c +/* 801C5FF4 001C2F54 41 82 00 60 */ beq lbl_801C6054 +/* 801C5FF8 001C2F58 34 1E 06 80 */ addic. r0, r30, 0x680 +/* 801C5FFC 001C2F5C 41 82 00 58 */ beq lbl_801C6054 +/* 801C6000 001C2F60 80 BE 06 80 */ lwz r5, 0x680(r30) +/* 801C6004 001C2F64 38 60 00 00 */ li r3, 0 +/* 801C6008 001C2F68 2C 05 00 00 */ cmpwi r5, 0 +/* 801C600C 001C2F6C 40 81 00 40 */ ble lbl_801C604C +/* 801C6010 001C2F70 2C 05 00 08 */ cmpwi r5, 8 +/* 801C6014 001C2F74 38 85 FF F8 */ addi r4, r5, -8 +/* 801C6018 001C2F78 40 81 00 20 */ ble lbl_801C6038 +/* 801C601C 001C2F7C 38 04 00 07 */ addi r0, r4, 7 +/* 801C6020 001C2F80 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C6024 001C2F84 7C 09 03 A6 */ mtctr r0 +/* 801C6028 001C2F88 2C 04 00 00 */ cmpwi r4, 0 +/* 801C602C 001C2F8C 40 81 00 0C */ ble lbl_801C6038 +lbl_801C6030: +/* 801C6030 001C2F90 38 63 00 08 */ addi r3, r3, 8 +/* 801C6034 001C2F94 42 00 FF FC */ bdnz lbl_801C6030 +lbl_801C6038: +/* 801C6038 001C2F98 7C 03 28 50 */ subf r0, r3, r5 +/* 801C603C 001C2F9C 7C 09 03 A6 */ mtctr r0 +/* 801C6040 001C2FA0 7C 03 28 00 */ cmpw r3, r5 +/* 801C6044 001C2FA4 40 80 00 08 */ bge lbl_801C604C +lbl_801C6048: +/* 801C6048 001C2FA8 42 00 00 00 */ bdnz lbl_801C6048 +lbl_801C604C: +/* 801C604C 001C2FAC 38 00 00 00 */ li r0, 0 +/* 801C6050 001C2FB0 90 1E 06 80 */ stw r0, 0x680(r30) +lbl_801C6054: +/* 801C6054 001C2FB4 7F C3 F3 78 */ mr r3, r30 +/* 801C6058 001C2FB8 38 80 00 00 */ li r4, 0 +/* 801C605C 001C2FBC 4B EB 15 15 */ bl __dt__10CPatternedFv +/* 801C6060 001C2FC0 7F E0 07 35 */ extsh. r0, r31 +/* 801C6064 001C2FC4 40 81 00 0C */ ble lbl_801C6070 +/* 801C6068 001C2FC8 7F C3 F3 78 */ mr r3, r30 +/* 801C606C 001C2FCC 48 14 F8 C5 */ bl Free__7CMemoryFPCv +lbl_801C6070: +/* 801C6070 001C2FD0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801C6074 001C2FD4 7F C3 F3 78 */ mr r3, r30 +/* 801C6078 001C2FD8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801C607C 001C2FDC 83 C1 00 08 */ lwz r30, 8(r1) +/* 801C6080 001C2FE0 7C 08 03 A6 */ mtlr r0 +/* 801C6084 001C2FE4 38 21 00 10 */ addi r1, r1, 0x10 +/* 801C6088 001C2FE8 4E 80 00 20 */ blr + +.global "__ct__12CMetroidBetaF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC16CActorParametersRC12CMetroidData" +"__ct__12CMetroidBetaF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC16CActorParametersRC12CMetroidData": +/* 801C608C 001C2FEC 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 801C6090 001C2FF0 7C 08 02 A6 */ mflr r0 +/* 801C6094 001C2FF4 39 60 00 03 */ li r11, 3 +/* 801C6098 001C2FF8 7D 0C 43 78 */ mr r12, r8 +/* 801C609C 001C2FFC 90 01 01 04 */ stw r0, 0x104(r1) +/* 801C60A0 001C3000 93 E1 00 FC */ stw r31, 0xfc(r1) +/* 801C60A4 001C3004 83 E1 01 08 */ lwz r31, 0x108(r1) +/* 801C60A8 001C3008 93 C1 00 F8 */ stw r30, 0xf8(r1) +/* 801C60AC 001C300C 7C 7E 1B 78 */ mr r30, r3 +/* 801C60B0 001C3010 93 A1 00 F4 */ stw r29, 0xf4(r1) +/* 801C60B4 001C3014 7C DD 33 78 */ mr r29, r6 +/* 801C60B8 001C3018 7C A6 2B 78 */ mr r6, r5 +/* 801C60BC 001C301C 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801C60C0 001C3020 93 81 00 F0 */ stw r28, 0xf0(r1) +/* 801C60C4 001C3024 7D 3C 4B 78 */ mr r28, r9 +/* 801C60C8 001C3028 7C E9 3B 78 */ mr r9, r7 +/* 801C60CC 001C302C 7F A8 EB 78 */ mr r8, r29 +/* 801C60D0 001C3030 A0 04 00 00 */ lhz r0, 0(r4) +/* 801C60D4 001C3034 38 80 00 01 */ li r4, 1 +/* 801C60D8 001C3038 38 E0 00 01 */ li r7, 1 +/* 801C60DC 001C303C B0 01 00 20 */ sth r0, 0x20(r1) +/* 801C60E0 001C3040 38 00 00 02 */ li r0, 2 +/* 801C60E4 001C3044 93 81 00 08 */ stw r28, 8(r1) +/* 801C60E8 001C3048 90 81 00 0C */ stw r4, 0xc(r1) +/* 801C60EC 001C304C 90 81 00 10 */ stw r4, 0x10(r1) +/* 801C60F0 001C3050 38 80 00 14 */ li r4, 0x14 +/* 801C60F4 001C3054 91 61 00 14 */ stw r11, 0x14(r1) +/* 801C60F8 001C3058 91 41 00 18 */ stw r10, 0x18(r1) +/* 801C60FC 001C305C 7D 8A 63 78 */ mr r10, r12 +/* 801C6100 001C3060 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801C6104 001C3064 4B EB 73 4D */ bl "__ct__10CPatternedFUi9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC16CActorParametersUi" +/* 801C6108 001C3068 3C 60 80 3E */ lis r3, lbl_803E5388@ha +/* 801C610C 001C306C 38 00 FF FF */ li r0, -1 +/* 801C6110 001C3070 38 63 53 88 */ addi r3, r3, lbl_803E5388@l +/* 801C6114 001C3074 7F E4 FB 78 */ mr r4, r31 +/* 801C6118 001C3078 90 7E 00 00 */ stw r3, 0(r30) +/* 801C611C 001C307C 38 7E 05 6C */ addi r3, r30, 0x56c +/* 801C6120 001C3080 90 1E 05 68 */ stw r0, 0x568(r30) +/* 801C6124 001C3084 48 00 06 BD */ bl sub_801c67e0 +/* 801C6128 001C3088 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801C612C 001C308C 38 7E 06 7C */ addi r3, r30, 0x67c +/* 801C6130 001C3090 C0 22 AA A4 */ lfs f1, lbl_805AC7C4@sda21(r2) +/* 801C6134 001C3094 38 80 00 00 */ li r4, 0 +/* 801C6138 001C3098 B0 1E 06 78 */ sth r0, 0x678(r30) +/* 801C613C 001C309C 38 A0 00 03 */ li r5, 3 +/* 801C6140 001C30A0 FC 40 08 90 */ fmr f2, f1 +/* 801C6144 001C30A4 80 DC 01 0C */ lwz r6, 0x10c(r28) +/* 801C6148 001C30A8 48 00 2C 4D */ bl __ct__15CPathFindSearchFP7CPFAreaUiff +/* 801C614C 001C30AC 38 A0 00 FF */ li r5, 0xff +/* 801C6150 001C30B0 38 00 00 00 */ li r0, 0 +/* 801C6154 001C30B4 98 BE 07 60 */ stb r5, 0x760(r30) +/* 801C6158 001C30B8 7F C4 F3 78 */ mr r4, r30 +/* 801C615C 001C30BC 3B BE 00 68 */ addi r29, r30, 0x68 +/* 801C6160 001C30C0 38 61 00 C0 */ addi r3, r1, 0xc0 +/* 801C6164 001C30C4 98 BE 07 61 */ stb r5, 0x761(r30) +/* 801C6168 001C30C8 90 1E 07 64 */ stw r0, 0x764(r30) +/* 801C616C 001C30CC 4B F5 47 C1 */ bl GetBoundingBox__13CPhysicsActorCFv +/* 801C6170 001C30D0 3B 9E 07 68 */ addi r28, r30, 0x768 +/* 801C6174 001C30D4 7F A4 EB 78 */ mr r4, r29 +/* 801C6178 001C30D8 7F 83 E3 78 */ mr r3, r28 +/* 801C617C 001C30DC 48 10 97 39 */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList +/* 801C6180 001C30E0 3C 60 80 3F */ lis r3, lbl_803ECAD0@ha +/* 801C6184 001C30E4 C0 22 AA 98 */ lfs f1, lbl_805AC7B8@sda21(r2) +/* 801C6188 001C30E8 38 03 CA D0 */ addi r0, r3, lbl_803ECAD0@l +/* 801C618C 001C30EC 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801C6190 001C30F0 90 1C 00 00 */ stw r0, 0(r28) +/* 801C6194 001C30F4 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 801C6198 001C30F8 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 801C619C 001C30FC 38 A1 00 94 */ addi r5, r1, 0x94 +/* 801C61A0 001C3100 C0 01 00 C0 */ lfs f0, 0xc0(r1) +/* 801C61A4 001C3104 38 61 00 8C */ addi r3, r1, 0x8c +/* 801C61A8 001C3108 D0 1C 00 10 */ stfs f0, 0x10(r28) +/* 801C61AC 001C310C C0 01 00 C4 */ lfs f0, 0xc4(r1) +/* 801C61B0 001C3110 D0 1C 00 14 */ stfs f0, 0x14(r28) +/* 801C61B4 001C3114 C0 01 00 C8 */ lfs f0, 0xc8(r1) +/* 801C61B8 001C3118 D0 1C 00 18 */ stfs f0, 0x18(r28) +/* 801C61BC 001C311C C0 01 00 CC */ lfs f0, 0xcc(r1) +/* 801C61C0 001C3120 D0 1C 00 1C */ stfs f0, 0x1c(r28) +/* 801C61C4 001C3124 C0 01 00 D0 */ lfs f0, 0xd0(r1) +/* 801C61C8 001C3128 D0 1C 00 20 */ stfs f0, 0x20(r28) +/* 801C61CC 001C312C C0 01 00 D4 */ lfs f0, 0xd4(r1) +/* 801C61D0 001C3130 D0 1C 00 24 */ stfs f0, 0x24(r28) +/* 801C61D4 001C3134 A0 CD A3 8C */ lhz r6, lbl_805A8F4C@sda21(r13) +/* 801C61D8 001C3138 B0 DE 07 90 */ sth r6, 0x790(r30) +/* 801C61DC 001C313C D0 3E 07 94 */ stfs f1, 0x794(r30) +/* 801C61E0 001C3140 D0 3E 07 98 */ stfs f1, 0x798(r30) +/* 801C61E4 001C3144 D0 3E 07 9C */ stfs f1, 0x79c(r30) +/* 801C61E8 001C3148 D0 3E 07 A0 */ stfs f1, 0x7a0(r30) +/* 801C61EC 001C314C D0 3E 07 A4 */ stfs f1, 0x7a4(r30) +/* 801C61F0 001C3150 C4 04 66 A0 */ lfsu f0, skZero3f@l(r4) +/* 801C61F4 001C3154 D0 1E 07 A8 */ stfs f0, 0x7a8(r30) +/* 801C61F8 001C3158 C0 04 00 04 */ lfs f0, 4(r4) +/* 801C61FC 001C315C D0 1E 07 AC */ stfs f0, 0x7ac(r30) +/* 801C6200 001C3160 C0 04 00 08 */ lfs f0, 8(r4) +/* 801C6204 001C3164 D0 1E 07 B0 */ stfs f0, 0x7b0(r30) +/* 801C6208 001C3168 80 9E 00 64 */ lwz r4, 0x64(r30) +/* 801C620C 001C316C C0 44 00 04 */ lfs f2, 4(r4) +/* 801C6210 001C3170 C0 64 00 08 */ lfs f3, 8(r4) +/* 801C6214 001C3174 C0 04 00 00 */ lfs f0, 0(r4) +/* 801C6218 001C3178 D0 1E 07 B4 */ stfs f0, 0x7b4(r30) +/* 801C621C 001C317C D0 5E 07 B8 */ stfs f2, 0x7b8(r30) +/* 801C6220 001C3180 D0 7E 07 BC */ stfs f3, 0x7bc(r30) +/* 801C6224 001C3184 80 9E 00 64 */ lwz r4, 0x64(r30) +/* 801C6228 001C3188 C0 44 00 04 */ lfs f2, 4(r4) +/* 801C622C 001C318C C0 64 00 08 */ lfs f3, 8(r4) +/* 801C6230 001C3190 C0 04 00 00 */ lfs f0, 0(r4) +/* 801C6234 001C3194 D0 1E 07 C0 */ stfs f0, 0x7c0(r30) +/* 801C6238 001C3198 D0 5E 07 C4 */ stfs f2, 0x7c4(r30) +/* 801C623C 001C319C D0 7E 07 C8 */ stfs f3, 0x7c8(r30) +/* 801C6240 001C31A0 80 9E 00 64 */ lwz r4, 0x64(r30) +/* 801C6244 001C31A4 C0 44 00 04 */ lfs f2, 4(r4) +/* 801C6248 001C31A8 C0 64 00 08 */ lfs f3, 8(r4) +/* 801C624C 001C31AC C0 04 00 00 */ lfs f0, 0(r4) +/* 801C6250 001C31B0 D0 1E 07 CC */ stfs f0, 0x7cc(r30) +/* 801C6254 001C31B4 D0 5E 07 D0 */ stfs f2, 0x7d0(r30) +/* 801C6258 001C31B8 D0 7E 07 D4 */ stfs f3, 0x7d4(r30) +/* 801C625C 001C31BC D0 3E 07 D8 */ stfs f1, 0x7d8(r30) +/* 801C6260 001C31C0 D0 3E 07 DC */ stfs f1, 0x7dc(r30) +/* 801C6264 001C31C4 D0 3E 07 E0 */ stfs f1, 0x7e0(r30) +/* 801C6268 001C31C8 80 DF 00 F4 */ lwz r6, 0xf4(r31) +/* 801C626C 001C31CC 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801C6270 001C31D0 90 01 00 94 */ stw r0, 0x94(r1) +/* 801C6274 001C31D4 90 C1 00 98 */ stw r6, 0x98(r1) +/* 801C6278 001C31D8 81 84 00 00 */ lwz r12, 0(r4) +/* 801C627C 001C31DC 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801C6280 001C31E0 7D 89 03 A6 */ mtctr r12 +/* 801C6284 001C31E4 4E 80 04 21 */ bctrl +/* 801C6288 001C31E8 3B 9E 07 E4 */ addi r28, r30, 0x7e4 +/* 801C628C 001C31EC 38 81 00 8C */ addi r4, r1, 0x8c +/* 801C6290 001C31F0 7F 83 E3 78 */ mr r3, r28 +/* 801C6294 001C31F4 48 17 AC 15 */ bl __ct__6CTokenFRC6CToken +/* 801C6298 001C31F8 7F 83 E3 78 */ mr r3, r28 +/* 801C629C 001C31FC 48 17 AB 71 */ bl GetObj__6CTokenFv +/* 801C62A0 001C3200 80 03 00 04 */ lwz r0, 4(r3) +/* 801C62A4 001C3204 38 61 00 8C */ addi r3, r1, 0x8c +/* 801C62A8 001C3208 38 80 FF FF */ li r4, -1 +/* 801C62AC 001C320C 90 1C 00 08 */ stw r0, 8(r28) +/* 801C62B0 001C3210 48 17 AB 91 */ bl __dt__6CTokenFv +/* 801C62B4 001C3214 80 DF 00 F8 */ lwz r6, 0xf8(r31) +/* 801C62B8 001C3218 3C 60 53 57 */ lis r3, 0x53574843@ha +/* 801C62BC 001C321C 38 03 48 43 */ addi r0, r3, 0x53574843@l +/* 801C62C0 001C3220 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801C62C4 001C3224 90 01 00 84 */ stw r0, 0x84(r1) +/* 801C62C8 001C3228 38 61 00 7C */ addi r3, r1, 0x7c +/* 801C62CC 001C322C 38 A1 00 84 */ addi r5, r1, 0x84 +/* 801C62D0 001C3230 90 C1 00 88 */ stw r6, 0x88(r1) +/* 801C62D4 001C3234 81 84 00 00 */ lwz r12, 0(r4) +/* 801C62D8 001C3238 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801C62DC 001C323C 7D 89 03 A6 */ mtctr r12 +/* 801C62E0 001C3240 4E 80 04 21 */ bctrl +/* 801C62E4 001C3244 3B 9E 07 F0 */ addi r28, r30, 0x7f0 +/* 801C62E8 001C3248 38 81 00 7C */ addi r4, r1, 0x7c +/* 801C62EC 001C324C 7F 83 E3 78 */ mr r3, r28 +/* 801C62F0 001C3250 48 17 AB B9 */ bl __ct__6CTokenFRC6CToken +/* 801C62F4 001C3254 7F 83 E3 78 */ mr r3, r28 +/* 801C62F8 001C3258 48 17 AB 15 */ bl GetObj__6CTokenFv +/* 801C62FC 001C325C 80 03 00 04 */ lwz r0, 4(r3) +/* 801C6300 001C3260 38 61 00 7C */ addi r3, r1, 0x7c +/* 801C6304 001C3264 38 80 FF FF */ li r4, -1 +/* 801C6308 001C3268 90 1C 00 08 */ stw r0, 8(r28) +/* 801C630C 001C326C 48 17 AB 35 */ bl __dt__6CTokenFv +/* 801C6310 001C3270 80 DF 00 FC */ lwz r6, 0xfc(r31) +/* 801C6314 001C3274 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 801C6318 001C3278 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 801C631C 001C327C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801C6320 001C3280 90 01 00 74 */ stw r0, 0x74(r1) +/* 801C6324 001C3284 38 61 00 6C */ addi r3, r1, 0x6c +/* 801C6328 001C3288 38 A1 00 74 */ addi r5, r1, 0x74 +/* 801C632C 001C328C 90 C1 00 78 */ stw r6, 0x78(r1) +/* 801C6330 001C3290 81 84 00 00 */ lwz r12, 0(r4) +/* 801C6334 001C3294 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801C6338 001C3298 7D 89 03 A6 */ mtctr r12 +/* 801C633C 001C329C 4E 80 04 21 */ bctrl +/* 801C6340 001C32A0 3B 9E 07 FC */ addi r28, r30, 0x7fc +/* 801C6344 001C32A4 38 81 00 6C */ addi r4, r1, 0x6c +/* 801C6348 001C32A8 7F 83 E3 78 */ mr r3, r28 +/* 801C634C 001C32AC 48 17 AB 5D */ bl __ct__6CTokenFRC6CToken +/* 801C6350 001C32B0 7F 83 E3 78 */ mr r3, r28 +/* 801C6354 001C32B4 48 17 AA B9 */ bl GetObj__6CTokenFv +/* 801C6358 001C32B8 80 03 00 04 */ lwz r0, 4(r3) +/* 801C635C 001C32BC 38 61 00 6C */ addi r3, r1, 0x6c +/* 801C6360 001C32C0 38 80 FF FF */ li r4, -1 +/* 801C6364 001C32C4 90 1C 00 08 */ stw r0, 8(r28) +/* 801C6368 001C32C8 48 17 AA D9 */ bl __dt__6CTokenFv +/* 801C636C 001C32CC 80 DF 01 00 */ lwz r6, 0x100(r31) +/* 801C6370 001C32D0 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 801C6374 001C32D4 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 801C6378 001C32D8 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801C637C 001C32DC 90 01 00 64 */ stw r0, 0x64(r1) +/* 801C6380 001C32E0 38 61 00 5C */ addi r3, r1, 0x5c +/* 801C6384 001C32E4 38 A1 00 64 */ addi r5, r1, 0x64 +/* 801C6388 001C32E8 90 C1 00 68 */ stw r6, 0x68(r1) +/* 801C638C 001C32EC 81 84 00 00 */ lwz r12, 0(r4) +/* 801C6390 001C32F0 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801C6394 001C32F4 7D 89 03 A6 */ mtctr r12 +/* 801C6398 001C32F8 4E 80 04 21 */ bctrl +/* 801C639C 001C32FC 3B 9E 08 08 */ addi r28, r30, 0x808 +/* 801C63A0 001C3300 38 81 00 5C */ addi r4, r1, 0x5c +/* 801C63A4 001C3304 7F 83 E3 78 */ mr r3, r28 +/* 801C63A8 001C3308 48 17 AB 01 */ bl __ct__6CTokenFRC6CToken +/* 801C63AC 001C330C 7F 83 E3 78 */ mr r3, r28 +/* 801C63B0 001C3310 48 17 AA 5D */ bl GetObj__6CTokenFv +/* 801C63B4 001C3314 80 03 00 04 */ lwz r0, 4(r3) +/* 801C63B8 001C3318 38 61 00 5C */ addi r3, r1, 0x5c +/* 801C63BC 001C331C 38 80 FF FF */ li r4, -1 +/* 801C63C0 001C3320 90 1C 00 08 */ stw r0, 8(r28) +/* 801C63C4 001C3324 48 17 AA 7D */ bl __dt__6CTokenFv +/* 801C63C8 001C3328 80 DF 01 04 */ lwz r6, 0x104(r31) +/* 801C63CC 001C332C 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 801C63D0 001C3330 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 801C63D4 001C3334 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801C63D8 001C3338 90 01 00 54 */ stw r0, 0x54(r1) +/* 801C63DC 001C333C 38 61 00 4C */ addi r3, r1, 0x4c +/* 801C63E0 001C3340 38 A1 00 54 */ addi r5, r1, 0x54 +/* 801C63E4 001C3344 90 C1 00 58 */ stw r6, 0x58(r1) +/* 801C63E8 001C3348 81 84 00 00 */ lwz r12, 0(r4) +/* 801C63EC 001C334C 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801C63F0 001C3350 7D 89 03 A6 */ mtctr r12 +/* 801C63F4 001C3354 4E 80 04 21 */ bctrl +/* 801C63F8 001C3358 3B 9E 08 14 */ addi r28, r30, 0x814 +/* 801C63FC 001C335C 38 81 00 4C */ addi r4, r1, 0x4c +/* 801C6400 001C3360 7F 83 E3 78 */ mr r3, r28 +/* 801C6404 001C3364 48 17 AA A5 */ bl __ct__6CTokenFRC6CToken +/* 801C6408 001C3368 7F 83 E3 78 */ mr r3, r28 +/* 801C640C 001C336C 48 17 AA 01 */ bl GetObj__6CTokenFv +/* 801C6410 001C3370 80 03 00 04 */ lwz r0, 4(r3) +/* 801C6414 001C3374 38 61 00 4C */ addi r3, r1, 0x4c +/* 801C6418 001C3378 38 80 FF FF */ li r4, -1 +/* 801C641C 001C337C 90 1C 00 08 */ stw r0, 8(r28) +/* 801C6420 001C3380 48 17 AA 21 */ bl __dt__6CTokenFv +/* 801C6424 001C3384 3C 60 80 3D */ lis r3, lbl_803D1A80@ha +/* 801C6428 001C3388 3B 80 00 00 */ li r28, 0 +/* 801C642C 001C338C 38 83 1A 80 */ addi r4, r3, lbl_803D1A80@l +/* 801C6430 001C3390 38 60 03 40 */ li r3, 0x340 +/* 801C6434 001C3394 38 84 00 19 */ addi r4, r4, 0x19 +/* 801C6438 001C3398 38 A0 00 00 */ li r5, 0 +/* 801C643C 001C339C 48 14 F4 31 */ bl __nw__FUlPCcPCc +/* 801C6440 001C33A0 7C 7D 1B 79 */ or. r29, r3, r3 +/* 801C6444 001C33A4 41 82 00 2C */ beq lbl_801C6470 +/* 801C6448 001C33A8 38 61 00 44 */ addi r3, r1, 0x44 +/* 801C644C 001C33AC 38 9E 07 E4 */ addi r4, r30, 0x7e4 +/* 801C6450 001C33B0 48 17 AA 59 */ bl __ct__6CTokenFRC6CToken +/* 801C6454 001C33B4 7F A3 EB 78 */ mr r3, r29 +/* 801C6458 001C33B8 38 81 00 44 */ addi r4, r1, 0x44 +/* 801C645C 001C33BC 3B 80 00 01 */ li r28, 1 +/* 801C6460 001C33C0 38 A0 00 00 */ li r5, 0 +/* 801C6464 001C33C4 38 C0 00 01 */ li r6, 1 +/* 801C6468 001C33C8 48 15 8F 79 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 801C646C 001C33CC 7C 7D 1B 78 */ mr r29, r3 +lbl_801C6470: +/* 801C6470 001C33D0 7F 80 07 75 */ extsb. r0, r28 +/* 801C6474 001C33D4 93 BE 08 20 */ stw r29, 0x820(r30) +/* 801C6478 001C33D8 41 82 00 10 */ beq lbl_801C6488 +/* 801C647C 001C33DC 38 61 00 44 */ addi r3, r1, 0x44 +/* 801C6480 001C33E0 38 80 00 00 */ li r4, 0 +/* 801C6484 001C33E4 48 17 A9 BD */ bl __dt__6CTokenFv +lbl_801C6488: +/* 801C6488 001C33E8 3C 60 80 3D */ lis r3, lbl_803D1A80@ha +/* 801C648C 001C33EC 3B 80 00 00 */ li r28, 0 +/* 801C6490 001C33F0 38 83 1A 80 */ addi r4, r3, lbl_803D1A80@l +/* 801C6494 001C33F4 38 60 02 10 */ li r3, 0x210 +/* 801C6498 001C33F8 38 84 00 19 */ addi r4, r4, 0x19 +/* 801C649C 001C33FC 38 A0 00 00 */ li r5, 0 +/* 801C64A0 001C3400 48 14 F3 CD */ bl __nw__FUlPCcPCc +/* 801C64A4 001C3404 7C 7D 1B 79 */ or. r29, r3, r3 +/* 801C64A8 001C3408 41 82 00 28 */ beq lbl_801C64D0 +/* 801C64AC 001C340C 38 61 00 3C */ addi r3, r1, 0x3c +/* 801C64B0 001C3410 38 9E 07 F0 */ addi r4, r30, 0x7f0 +/* 801C64B4 001C3414 48 17 A9 F5 */ bl __ct__6CTokenFRC6CToken +/* 801C64B8 001C3418 7F A3 EB 78 */ mr r3, r29 +/* 801C64BC 001C341C 38 81 00 3C */ addi r4, r1, 0x3c +/* 801C64C0 001C3420 3B 80 00 01 */ li r28, 1 +/* 801C64C4 001C3424 38 A0 00 00 */ li r5, 0 +/* 801C64C8 001C3428 48 16 89 1D */ bl "__ct__15CParticleSwooshF28TToken<18CSwooshDescription>i" +/* 801C64CC 001C342C 7C 7D 1B 78 */ mr r29, r3 +lbl_801C64D0: +/* 801C64D0 001C3430 7F 80 07 75 */ extsb. r0, r28 +/* 801C64D4 001C3434 93 BE 08 24 */ stw r29, 0x824(r30) +/* 801C64D8 001C3438 41 82 00 10 */ beq lbl_801C64E8 +/* 801C64DC 001C343C 38 61 00 3C */ addi r3, r1, 0x3c +/* 801C64E0 001C3440 38 80 00 00 */ li r4, 0 +/* 801C64E4 001C3444 48 17 A9 5D */ bl __dt__6CTokenFv +lbl_801C64E8: +/* 801C64E8 001C3448 3C 60 80 3D */ lis r3, lbl_803D1A80@ha +/* 801C64EC 001C344C 3B 80 00 00 */ li r28, 0 +/* 801C64F0 001C3450 38 83 1A 80 */ addi r4, r3, lbl_803D1A80@l +/* 801C64F4 001C3454 38 60 03 40 */ li r3, 0x340 +/* 801C64F8 001C3458 38 84 00 19 */ addi r4, r4, 0x19 +/* 801C64FC 001C345C 38 A0 00 00 */ li r5, 0 +/* 801C6500 001C3460 48 14 F3 6D */ bl __nw__FUlPCcPCc +/* 801C6504 001C3464 7C 7D 1B 79 */ or. r29, r3, r3 +/* 801C6508 001C3468 41 82 00 2C */ beq lbl_801C6534 +/* 801C650C 001C346C 38 61 00 34 */ addi r3, r1, 0x34 +/* 801C6510 001C3470 38 9E 07 FC */ addi r4, r30, 0x7fc +/* 801C6514 001C3474 48 17 A9 95 */ bl __ct__6CTokenFRC6CToken +/* 801C6518 001C3478 7F A3 EB 78 */ mr r3, r29 +/* 801C651C 001C347C 38 81 00 34 */ addi r4, r1, 0x34 +/* 801C6520 001C3480 3B 80 00 01 */ li r28, 1 +/* 801C6524 001C3484 38 A0 00 00 */ li r5, 0 +/* 801C6528 001C3488 38 C0 00 01 */ li r6, 1 +/* 801C652C 001C348C 48 15 8E B5 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 801C6530 001C3490 7C 7D 1B 78 */ mr r29, r3 +lbl_801C6534: +/* 801C6534 001C3494 7F 80 07 75 */ extsb. r0, r28 +/* 801C6538 001C3498 93 BE 08 28 */ stw r29, 0x828(r30) +/* 801C653C 001C349C 41 82 00 10 */ beq lbl_801C654C +/* 801C6540 001C34A0 38 61 00 34 */ addi r3, r1, 0x34 +/* 801C6544 001C34A4 38 80 00 00 */ li r4, 0 +/* 801C6548 001C34A8 48 17 A8 F9 */ bl __dt__6CTokenFv +lbl_801C654C: +/* 801C654C 001C34AC 3C 60 80 3D */ lis r3, lbl_803D1A80@ha +/* 801C6550 001C34B0 3B 80 00 00 */ li r28, 0 +/* 801C6554 001C34B4 38 83 1A 80 */ addi r4, r3, lbl_803D1A80@l +/* 801C6558 001C34B8 38 60 03 40 */ li r3, 0x340 +/* 801C655C 001C34BC 38 84 00 19 */ addi r4, r4, 0x19 +/* 801C6560 001C34C0 38 A0 00 00 */ li r5, 0 +/* 801C6564 001C34C4 48 14 F3 09 */ bl __nw__FUlPCcPCc +/* 801C6568 001C34C8 7C 7D 1B 79 */ or. r29, r3, r3 +/* 801C656C 001C34CC 41 82 00 2C */ beq lbl_801C6598 +/* 801C6570 001C34D0 38 61 00 2C */ addi r3, r1, 0x2c +/* 801C6574 001C34D4 38 9E 08 08 */ addi r4, r30, 0x808 +/* 801C6578 001C34D8 48 17 A9 31 */ bl __ct__6CTokenFRC6CToken +/* 801C657C 001C34DC 7F A3 EB 78 */ mr r3, r29 +/* 801C6580 001C34E0 38 81 00 2C */ addi r4, r1, 0x2c +/* 801C6584 001C34E4 3B 80 00 01 */ li r28, 1 +/* 801C6588 001C34E8 38 A0 00 00 */ li r5, 0 +/* 801C658C 001C34EC 38 C0 00 01 */ li r6, 1 +/* 801C6590 001C34F0 48 15 8E 51 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 801C6594 001C34F4 7C 7D 1B 78 */ mr r29, r3 +lbl_801C6598: +/* 801C6598 001C34F8 7F 80 07 75 */ extsb. r0, r28 +/* 801C659C 001C34FC 93 BE 08 2C */ stw r29, 0x82c(r30) +/* 801C65A0 001C3500 41 82 00 10 */ beq lbl_801C65B0 +/* 801C65A4 001C3504 38 61 00 2C */ addi r3, r1, 0x2c +/* 801C65A8 001C3508 38 80 00 00 */ li r4, 0 +/* 801C65AC 001C350C 48 17 A8 95 */ bl __dt__6CTokenFv +lbl_801C65B0: +/* 801C65B0 001C3510 3C 60 80 3D */ lis r3, lbl_803D1A80@ha +/* 801C65B4 001C3514 3B 80 00 00 */ li r28, 0 +/* 801C65B8 001C3518 38 83 1A 80 */ addi r4, r3, lbl_803D1A80@l +/* 801C65BC 001C351C 38 60 03 40 */ li r3, 0x340 +/* 801C65C0 001C3520 38 84 00 19 */ addi r4, r4, 0x19 +/* 801C65C4 001C3524 38 A0 00 00 */ li r5, 0 +/* 801C65C8 001C3528 48 14 F2 A5 */ bl __nw__FUlPCcPCc +/* 801C65CC 001C352C 7C 7D 1B 79 */ or. r29, r3, r3 +/* 801C65D0 001C3530 41 82 00 2C */ beq lbl_801C65FC +/* 801C65D4 001C3534 38 61 00 24 */ addi r3, r1, 0x24 +/* 801C65D8 001C3538 38 9E 08 14 */ addi r4, r30, 0x814 +/* 801C65DC 001C353C 48 17 A8 CD */ bl __ct__6CTokenFRC6CToken +/* 801C65E0 001C3540 7F A3 EB 78 */ mr r3, r29 +/* 801C65E4 001C3544 38 81 00 24 */ addi r4, r1, 0x24 +/* 801C65E8 001C3548 3B 80 00 01 */ li r28, 1 +/* 801C65EC 001C354C 38 A0 00 00 */ li r5, 0 +/* 801C65F0 001C3550 38 C0 00 01 */ li r6, 1 +/* 801C65F4 001C3554 48 15 8D ED */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 801C65F8 001C3558 7C 7D 1B 78 */ mr r29, r3 +lbl_801C65FC: +/* 801C65FC 001C355C 7F 80 07 75 */ extsb. r0, r28 +/* 801C6600 001C3560 93 BE 08 30 */ stw r29, 0x830(r30) +/* 801C6604 001C3564 41 82 00 10 */ beq lbl_801C6614 +/* 801C6608 001C3568 38 61 00 24 */ addi r3, r1, 0x24 +/* 801C660C 001C356C 38 80 00 00 */ li r4, 0 +/* 801C6610 001C3570 48 17 A8 31 */ bl __dt__6CTokenFv +lbl_801C6614: +/* 801C6614 001C3574 C0 02 AA 98 */ lfs f0, lbl_805AC7B8@sda21(r2) +/* 801C6618 001C3578 38 7E 08 38 */ addi r3, r30, 0x838 +/* 801C661C 001C357C 38 80 05 BD */ li r4, 0x5bd +/* 801C6620 001C3580 D0 1E 08 34 */ stfs f0, 0x834(r30) +/* 801C6624 001C3584 48 14 BF C9 */ bl __ct__9CRandom16FUi +/* 801C6628 001C3588 88 1E 08 40 */ lbz r0, 0x840(r30) +/* 801C662C 001C358C 38 60 00 00 */ li r3, 0 +/* 801C6630 001C3590 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801C6634 001C3594 38 80 00 00 */ li r4, 0 +/* 801C6638 001C3598 98 1E 08 40 */ stb r0, 0x840(r30) +/* 801C663C 001C359C 88 1E 08 40 */ lbz r0, 0x840(r30) +/* 801C6640 001C35A0 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801C6644 001C35A4 98 1E 08 40 */ stb r0, 0x840(r30) +/* 801C6648 001C35A8 88 1E 08 40 */ lbz r0, 0x840(r30) +/* 801C664C 001C35AC 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 801C6650 001C35B0 98 1E 08 40 */ stb r0, 0x840(r30) +/* 801C6654 001C35B4 88 1E 08 40 */ lbz r0, 0x840(r30) +/* 801C6658 001C35B8 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801C665C 001C35BC 98 1E 08 40 */ stb r0, 0x840(r30) +/* 801C6660 001C35C0 88 1E 08 40 */ lbz r0, 0x840(r30) +/* 801C6664 001C35C4 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801C6668 001C35C8 98 1E 08 40 */ stb r0, 0x840(r30) +/* 801C666C 001C35CC 88 1E 08 40 */ lbz r0, 0x840(r30) +/* 801C6670 001C35D0 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801C6674 001C35D4 98 1E 08 40 */ stb r0, 0x840(r30) +/* 801C6678 001C35D8 88 1E 08 40 */ lbz r0, 0x840(r30) +/* 801C667C 001C35DC 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 801C6680 001C35E0 98 1E 08 40 */ stb r0, 0x840(r30) +/* 801C6684 001C35E4 88 1E 08 40 */ lbz r0, 0x840(r30) +/* 801C6688 001C35E8 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f +/* 801C668C 001C35EC 98 1E 08 40 */ stb r0, 0x840(r30) +/* 801C6690 001C35F0 80 7E 08 20 */ lwz r3, 0x820(r30) +/* 801C6694 001C35F4 81 83 00 00 */ lwz r12, 0(r3) +/* 801C6698 001C35F8 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801C669C 001C35FC 7D 89 03 A6 */ mtctr r12 +/* 801C66A0 001C3600 4E 80 04 21 */ bctrl +/* 801C66A4 001C3604 80 7E 08 28 */ lwz r3, 0x828(r30) +/* 801C66A8 001C3608 38 80 00 00 */ li r4, 0 +/* 801C66AC 001C360C 81 83 00 00 */ lwz r12, 0(r3) +/* 801C66B0 001C3610 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801C66B4 001C3614 7D 89 03 A6 */ mtctr r12 +/* 801C66B8 001C3618 4E 80 04 21 */ bctrl +/* 801C66BC 001C361C 80 7E 08 2C */ lwz r3, 0x82c(r30) +/* 801C66C0 001C3620 38 80 00 00 */ li r4, 0 +/* 801C66C4 001C3624 81 83 00 00 */ lwz r12, 0(r3) +/* 801C66C8 001C3628 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801C66CC 001C362C 7D 89 03 A6 */ mtctr r12 +/* 801C66D0 001C3630 4E 80 04 21 */ bctrl +/* 801C66D4 001C3634 83 BE 08 24 */ lwz r29, 0x824(r30) +/* 801C66D8 001C3638 3B 80 00 00 */ li r28, 0 +/* 801C66DC 001C363C 3B E0 00 01 */ li r31, 1 +/* 801C66E0 001C3640 48 00 00 30 */ b lbl_801C6710 +lbl_801C66E4: +/* 801C66E4 001C3644 80 7E 08 24 */ lwz r3, 0x824(r30) +/* 801C66E8 001C3648 C8 22 AB 10 */ lfd f1, lbl_805AC830@sda21(r2) +/* 801C66EC 001C364C 88 03 01 D0 */ lbz r0, 0x1d0(r3) +/* 801C66F0 001C3650 53 E0 2E B4 */ rlwimi r0, r31, 5, 0x1a, 0x1a +/* 801C66F4 001C3654 98 03 01 D0 */ stb r0, 0x1d0(r3) +/* 801C66F8 001C3658 80 7E 08 24 */ lwz r3, 0x824(r30) +/* 801C66FC 001C365C 81 83 00 00 */ lwz r12, 0(r3) +/* 801C6700 001C3660 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801C6704 001C3664 7D 89 03 A6 */ mtctr r12 +/* 801C6708 001C3668 4E 80 04 21 */ bctrl +/* 801C670C 001C366C 3B 9C 00 01 */ addi r28, r28, 1 +lbl_801C6710: +/* 801C6710 001C3670 80 7D 01 60 */ lwz r3, 0x160(r29) +/* 801C6714 001C3674 38 03 FF FF */ addi r0, r3, -1 +/* 801C6718 001C3678 7C 1C 00 00 */ cmpw r28, r0 +/* 801C671C 001C367C 41 80 FF C8 */ blt lbl_801C66E4 +/* 801C6720 001C3680 80 DE 00 64 */ lwz r6, 0x64(r30) +/* 801C6724 001C3684 38 61 00 D8 */ addi r3, r1, 0xd8 +/* 801C6728 001C3688 C0 02 AA F4 */ lfs f0, lbl_805AC814@sda21(r2) +/* 801C672C 001C368C 38 81 00 A8 */ addi r4, r1, 0xa8 +/* 801C6730 001C3690 C0 66 00 04 */ lfs f3, 4(r6) +/* 801C6734 001C3694 38 A1 00 9C */ addi r5, r1, 0x9c +/* 801C6738 001C3698 C0 86 00 00 */ lfs f4, 0(r6) +/* 801C673C 001C369C EC C0 00 F2 */ fmuls f6, f0, f3 +/* 801C6740 001C36A0 C0 46 00 08 */ lfs f2, 8(r6) +/* 801C6744 001C36A4 C0 22 AA 9C */ lfs f1, lbl_805AC7BC@sda21(r2) +/* 801C6748 001C36A8 C0 02 AB 18 */ lfs f0, lbl_805AC838@sda21(r2) +/* 801C674C 001C36AC FC A0 30 50 */ fneg f5, f6 +/* 801C6750 001C36B0 D0 81 00 B4 */ stfs f4, 0xb4(r1) +/* 801C6754 001C36B4 EC 21 01 B2 */ fmuls f1, f1, f6 +/* 801C6758 001C36B8 EC 00 01 B2 */ fmuls f0, f0, f6 +/* 801C675C 001C36BC D0 61 00 B8 */ stfs f3, 0xb8(r1) +/* 801C6760 001C36C0 D0 41 00 BC */ stfs f2, 0xbc(r1) +/* 801C6764 001C36C4 D0 C1 00 9C */ stfs f6, 0x9c(r1) +/* 801C6768 001C36C8 D0 C1 00 A0 */ stfs f6, 0xa0(r1) +/* 801C676C 001C36CC D0 21 00 A4 */ stfs f1, 0xa4(r1) +/* 801C6770 001C36D0 D0 A1 00 A8 */ stfs f5, 0xa8(r1) +/* 801C6774 001C36D4 D0 A1 00 AC */ stfs f5, 0xac(r1) +/* 801C6778 001C36D8 D0 01 00 B0 */ stfs f0, 0xb0(r1) +/* 801C677C 001C36DC 48 17 1D 8D */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801C6780 001C36E0 7F C3 F3 78 */ mr r3, r30 +/* 801C6784 001C36E4 38 81 00 D8 */ addi r4, r1, 0xd8 +/* 801C6788 001C36E8 4B F5 3E D1 */ bl SetBoundingBox__13CPhysicsActorFRC6CAABox +/* 801C678C 001C36EC 80 81 00 D8 */ lwz r4, 0xd8(r1) +/* 801C6790 001C36F0 7F C3 F3 78 */ mr r3, r30 +/* 801C6794 001C36F4 80 01 00 DC */ lwz r0, 0xdc(r1) +/* 801C6798 001C36F8 90 9E 07 78 */ stw r4, 0x778(r30) +/* 801C679C 001C36FC 90 1E 07 7C */ stw r0, 0x77c(r30) +/* 801C67A0 001C3700 80 01 00 E0 */ lwz r0, 0xe0(r1) +/* 801C67A4 001C3704 90 1E 07 80 */ stw r0, 0x780(r30) +/* 801C67A8 001C3708 80 81 00 E4 */ lwz r4, 0xe4(r1) +/* 801C67AC 001C370C 80 01 00 E8 */ lwz r0, 0xe8(r1) +/* 801C67B0 001C3710 90 9E 07 84 */ stw r4, 0x784(r30) +/* 801C67B4 001C3714 90 1E 07 88 */ stw r0, 0x788(r30) +/* 801C67B8 001C3718 80 01 00 EC */ lwz r0, 0xec(r1) +/* 801C67BC 001C371C 90 1E 07 8C */ stw r0, 0x78c(r30) +/* 801C67C0 001C3720 83 E1 00 FC */ lwz r31, 0xfc(r1) +/* 801C67C4 001C3724 83 C1 00 F8 */ lwz r30, 0xf8(r1) +/* 801C67C8 001C3728 83 A1 00 F4 */ lwz r29, 0xf4(r1) +/* 801C67CC 001C372C 83 81 00 F0 */ lwz r28, 0xf0(r1) +/* 801C67D0 001C3730 80 01 01 04 */ lwz r0, 0x104(r1) +/* 801C67D4 001C3734 7C 08 03 A6 */ mtlr r0 +/* 801C67D8 001C3738 38 21 01 00 */ addi r1, r1, 0x100 +/* 801C67DC 001C373C 4E 80 00 20 */ blr + +.global sub_801c67e0 +sub_801c67e0: +/* 801C67E0 001C3740 80 A4 00 00 */ lwz r5, 0(r4) +/* 801C67E4 001C3744 80 04 00 04 */ lwz r0, 4(r4) +/* 801C67E8 001C3748 90 A3 00 00 */ stw r5, 0(r3) +/* 801C67EC 001C374C 90 03 00 04 */ stw r0, 4(r3) +/* 801C67F0 001C3750 80 A4 00 08 */ lwz r5, 8(r4) +/* 801C67F4 001C3754 80 04 00 0C */ lwz r0, 0xc(r4) +/* 801C67F8 001C3758 90 A3 00 08 */ stw r5, 8(r3) +/* 801C67FC 001C375C 90 03 00 0C */ stw r0, 0xc(r3) +/* 801C6800 001C3760 80 A4 00 10 */ lwz r5, 0x10(r4) +/* 801C6804 001C3764 80 04 00 14 */ lwz r0, 0x14(r4) +/* 801C6808 001C3768 90 A3 00 10 */ stw r5, 0x10(r3) +/* 801C680C 001C376C 90 03 00 14 */ stw r0, 0x14(r3) +/* 801C6810 001C3770 80 A4 00 18 */ lwz r5, 0x18(r4) +/* 801C6814 001C3774 80 04 00 1C */ lwz r0, 0x1c(r4) +/* 801C6818 001C3778 90 A3 00 18 */ stw r5, 0x18(r3) +/* 801C681C 001C377C 90 03 00 1C */ stw r0, 0x1c(r3) +/* 801C6820 001C3780 80 A4 00 20 */ lwz r5, 0x20(r4) +/* 801C6824 001C3784 80 04 00 24 */ lwz r0, 0x24(r4) +/* 801C6828 001C3788 90 A3 00 20 */ stw r5, 0x20(r3) +/* 801C682C 001C378C 90 03 00 24 */ stw r0, 0x24(r3) +/* 801C6830 001C3790 80 A4 00 28 */ lwz r5, 0x28(r4) +/* 801C6834 001C3794 80 04 00 2C */ lwz r0, 0x2c(r4) +/* 801C6838 001C3798 90 A3 00 28 */ stw r5, 0x28(r3) +/* 801C683C 001C379C 90 03 00 2C */ stw r0, 0x2c(r3) +/* 801C6840 001C37A0 80 A4 00 30 */ lwz r5, 0x30(r4) +/* 801C6844 001C37A4 80 04 00 34 */ lwz r0, 0x34(r4) +/* 801C6848 001C37A8 90 A3 00 30 */ stw r5, 0x30(r3) +/* 801C684C 001C37AC 90 03 00 34 */ stw r0, 0x34(r3) +/* 801C6850 001C37B0 80 04 00 38 */ lwz r0, 0x38(r4) +/* 801C6854 001C37B4 90 03 00 38 */ stw r0, 0x38(r3) +/* 801C6858 001C37B8 80 A4 00 3C */ lwz r5, 0x3c(r4) +/* 801C685C 001C37BC 80 04 00 40 */ lwz r0, 0x40(r4) +/* 801C6860 001C37C0 90 A3 00 3C */ stw r5, 0x3c(r3) +/* 801C6864 001C37C4 90 03 00 40 */ stw r0, 0x40(r3) +/* 801C6868 001C37C8 80 A4 00 44 */ lwz r5, 0x44(r4) +/* 801C686C 001C37CC 80 04 00 48 */ lwz r0, 0x48(r4) +/* 801C6870 001C37D0 90 A3 00 44 */ stw r5, 0x44(r3) +/* 801C6874 001C37D4 90 03 00 48 */ stw r0, 0x48(r3) +/* 801C6878 001C37D8 80 A4 00 4C */ lwz r5, 0x4c(r4) +/* 801C687C 001C37DC 80 04 00 50 */ lwz r0, 0x50(r4) +/* 801C6880 001C37E0 90 A3 00 4C */ stw r5, 0x4c(r3) +/* 801C6884 001C37E4 90 03 00 50 */ stw r0, 0x50(r3) +/* 801C6888 001C37E8 80 A4 00 54 */ lwz r5, 0x54(r4) +/* 801C688C 001C37EC 80 04 00 58 */ lwz r0, 0x58(r4) +/* 801C6890 001C37F0 90 A3 00 54 */ stw r5, 0x54(r3) +/* 801C6894 001C37F4 90 03 00 58 */ stw r0, 0x58(r3) +/* 801C6898 001C37F8 80 04 00 5C */ lwz r0, 0x5c(r4) +/* 801C689C 001C37FC 90 03 00 5C */ stw r0, 0x5c(r3) +/* 801C68A0 001C3800 80 04 00 60 */ lwz r0, 0x60(r4) +/* 801C68A4 001C3804 90 03 00 60 */ stw r0, 0x60(r3) +/* 801C68A8 001C3808 80 04 00 64 */ lwz r0, 0x64(r4) +/* 801C68AC 001C380C 90 03 00 64 */ stw r0, 0x64(r3) +/* 801C68B0 001C3810 80 A4 00 68 */ lwz r5, 0x68(r4) +/* 801C68B4 001C3814 80 04 00 6C */ lwz r0, 0x6c(r4) +/* 801C68B8 001C3818 90 A3 00 68 */ stw r5, 0x68(r3) +/* 801C68BC 001C381C 90 03 00 6C */ stw r0, 0x6c(r3) +/* 801C68C0 001C3820 80 A4 00 70 */ lwz r5, 0x70(r4) +/* 801C68C4 001C3824 80 04 00 74 */ lwz r0, 0x74(r4) +/* 801C68C8 001C3828 90 A3 00 70 */ stw r5, 0x70(r3) +/* 801C68CC 001C382C 90 03 00 74 */ stw r0, 0x74(r3) +/* 801C68D0 001C3830 80 A4 00 78 */ lwz r5, 0x78(r4) +/* 801C68D4 001C3834 80 04 00 7C */ lwz r0, 0x7c(r4) +/* 801C68D8 001C3838 90 A3 00 78 */ stw r5, 0x78(r3) +/* 801C68DC 001C383C 90 03 00 7C */ stw r0, 0x7c(r3) +/* 801C68E0 001C3840 80 A4 00 80 */ lwz r5, 0x80(r4) +/* 801C68E4 001C3844 80 04 00 84 */ lwz r0, 0x84(r4) +/* 801C68E8 001C3848 90 A3 00 80 */ stw r5, 0x80(r3) +/* 801C68EC 001C384C 90 03 00 84 */ stw r0, 0x84(r3) +/* 801C68F0 001C3850 80 A4 00 88 */ lwz r5, 0x88(r4) +/* 801C68F4 001C3854 80 04 00 8C */ lwz r0, 0x8c(r4) +/* 801C68F8 001C3858 90 A3 00 88 */ stw r5, 0x88(r3) +/* 801C68FC 001C385C 90 03 00 8C */ stw r0, 0x8c(r3) +/* 801C6900 001C3860 80 A4 00 90 */ lwz r5, 0x90(r4) +/* 801C6904 001C3864 80 04 00 94 */ lwz r0, 0x94(r4) +/* 801C6908 001C3868 90 A3 00 90 */ stw r5, 0x90(r3) +/* 801C690C 001C386C 90 03 00 94 */ stw r0, 0x94(r3) +/* 801C6910 001C3870 80 A4 00 98 */ lwz r5, 0x98(r4) +/* 801C6914 001C3874 80 04 00 9C */ lwz r0, 0x9c(r4) +/* 801C6918 001C3878 90 A3 00 98 */ stw r5, 0x98(r3) +/* 801C691C 001C387C 90 03 00 9C */ stw r0, 0x9c(r3) +/* 801C6920 001C3880 80 04 00 A0 */ lwz r0, 0xa0(r4) +/* 801C6924 001C3884 90 03 00 A0 */ stw r0, 0xa0(r3) +/* 801C6928 001C3888 80 A4 00 A4 */ lwz r5, 0xa4(r4) +/* 801C692C 001C388C 80 04 00 A8 */ lwz r0, 0xa8(r4) +/* 801C6930 001C3890 90 A3 00 A4 */ stw r5, 0xa4(r3) +/* 801C6934 001C3894 90 03 00 A8 */ stw r0, 0xa8(r3) +/* 801C6938 001C3898 80 A4 00 AC */ lwz r5, 0xac(r4) +/* 801C693C 001C389C 80 04 00 B0 */ lwz r0, 0xb0(r4) +/* 801C6940 001C38A0 90 A3 00 AC */ stw r5, 0xac(r3) +/* 801C6944 001C38A4 90 03 00 B0 */ stw r0, 0xb0(r3) +/* 801C6948 001C38A8 80 A4 00 B4 */ lwz r5, 0xb4(r4) +/* 801C694C 001C38AC 80 04 00 B8 */ lwz r0, 0xb8(r4) +/* 801C6950 001C38B0 90 A3 00 B4 */ stw r5, 0xb4(r3) +/* 801C6954 001C38B4 90 03 00 B8 */ stw r0, 0xb8(r3) +/* 801C6958 001C38B8 80 A4 00 BC */ lwz r5, 0xbc(r4) +/* 801C695C 001C38BC 80 04 00 C0 */ lwz r0, 0xc0(r4) +/* 801C6960 001C38C0 90 A3 00 BC */ stw r5, 0xbc(r3) +/* 801C6964 001C38C4 90 03 00 C0 */ stw r0, 0xc0(r3) +/* 801C6968 001C38C8 80 04 00 C4 */ lwz r0, 0xc4(r4) +/* 801C696C 001C38CC 90 03 00 C4 */ stw r0, 0xc4(r3) +/* 801C6970 001C38D0 80 04 00 C8 */ lwz r0, 0xc8(r4) +/* 801C6974 001C38D4 90 03 00 C8 */ stw r0, 0xc8(r3) +/* 801C6978 001C38D8 80 04 00 CC */ lwz r0, 0xcc(r4) +/* 801C697C 001C38DC 90 03 00 CC */ stw r0, 0xcc(r3) +/* 801C6980 001C38E0 C0 04 00 D0 */ lfs f0, 0xd0(r4) +/* 801C6984 001C38E4 D0 03 00 D0 */ stfs f0, 0xd0(r3) +/* 801C6988 001C38E8 C0 04 00 D4 */ lfs f0, 0xd4(r4) +/* 801C698C 001C38EC D0 03 00 D4 */ stfs f0, 0xd4(r3) +/* 801C6990 001C38F0 C0 04 00 D8 */ lfs f0, 0xd8(r4) +/* 801C6994 001C38F4 D0 03 00 D8 */ stfs f0, 0xd8(r3) +/* 801C6998 001C38F8 C0 04 00 DC */ lfs f0, 0xdc(r4) +/* 801C699C 001C38FC D0 03 00 DC */ stfs f0, 0xdc(r3) +/* 801C69A0 001C3900 C0 04 00 E0 */ lfs f0, 0xe0(r4) +/* 801C69A4 001C3904 D0 03 00 E0 */ stfs f0, 0xe0(r3) +/* 801C69A8 001C3908 C0 04 00 E4 */ lfs f0, 0xe4(r4) +/* 801C69AC 001C390C D0 03 00 E4 */ stfs f0, 0xe4(r3) +/* 801C69B0 001C3910 C0 04 00 E8 */ lfs f0, 0xe8(r4) +/* 801C69B4 001C3914 D0 03 00 E8 */ stfs f0, 0xe8(r3) +/* 801C69B8 001C3918 C0 04 00 EC */ lfs f0, 0xec(r4) +/* 801C69BC 001C391C D0 03 00 EC */ stfs f0, 0xec(r3) +/* 801C69C0 001C3920 C0 04 00 F0 */ lfs f0, 0xf0(r4) +/* 801C69C4 001C3924 D0 03 00 F0 */ stfs f0, 0xf0(r3) +/* 801C69C8 001C3928 80 04 00 F4 */ lwz r0, 0xf4(r4) +/* 801C69CC 001C392C 90 03 00 F4 */ stw r0, 0xf4(r3) +/* 801C69D0 001C3930 80 04 00 F8 */ lwz r0, 0xf8(r4) +/* 801C69D4 001C3934 90 03 00 F8 */ stw r0, 0xf8(r3) +/* 801C69D8 001C3938 80 04 00 FC */ lwz r0, 0xfc(r4) +/* 801C69DC 001C393C 90 03 00 FC */ stw r0, 0xfc(r3) +/* 801C69E0 001C3940 80 04 01 00 */ lwz r0, 0x100(r4) +/* 801C69E4 001C3944 90 03 01 00 */ stw r0, 0x100(r3) +/* 801C69E8 001C3948 80 04 01 04 */ lwz r0, 0x104(r4) +/* 801C69EC 001C394C 90 03 01 04 */ stw r0, 0x104(r3) +/* 801C69F0 001C3950 88 04 01 08 */ lbz r0, 0x108(r4) +/* 801C69F4 001C3954 98 03 01 08 */ stb r0, 0x108(r3) +/* 801C69F8 001C3958 4E 80 00 20 */ blr + +.global __ct__16CMetroidBetaDataFR12CInputStream +__ct__16CMetroidBetaDataFR12CInputStream: +/* 801C69FC 001C395C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801C6A00 001C3960 7C 08 02 A6 */ mflr r0 +/* 801C6A04 001C3964 90 01 00 14 */ stw r0, 0x14(r1) +/* 801C6A08 001C3968 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801C6A0C 001C396C 7C 9F 23 78 */ mr r31, r4 +/* 801C6A10 001C3970 93 C1 00 08 */ stw r30, 8(r1) +/* 801C6A14 001C3974 7C 7E 1B 78 */ mr r30, r3 +/* 801C6A18 001C3978 4B F3 C1 41 */ bl __ct__20CDamageVulnerabilityFR12CInputStream +/* 801C6A1C 001C397C 7F E4 FB 78 */ mr r4, r31 +/* 801C6A20 001C3980 38 7E 00 68 */ addi r3, r30, 0x68 +/* 801C6A24 001C3984 4B F3 C1 35 */ bl __ct__20CDamageVulnerabilityFR12CInputStream +/* 801C6A28 001C3988 7F E3 FB 78 */ mr r3, r31 +/* 801C6A2C 001C398C 48 17 81 FD */ bl ReadFloat__12CInputStreamFv +/* 801C6A30 001C3990 D0 3E 00 D0 */ stfs f1, 0xd0(r30) +/* 801C6A34 001C3994 7F E3 FB 78 */ mr r3, r31 +/* 801C6A38 001C3998 48 17 81 F1 */ bl ReadFloat__12CInputStreamFv +/* 801C6A3C 001C399C D0 3E 00 D4 */ stfs f1, 0xd4(r30) +/* 801C6A40 001C39A0 7F E3 FB 78 */ mr r3, r31 +/* 801C6A44 001C39A4 48 17 81 E5 */ bl ReadFloat__12CInputStreamFv +/* 801C6A48 001C39A8 D0 3E 00 D8 */ stfs f1, 0xd8(r30) +/* 801C6A4C 001C39AC 7F E3 FB 78 */ mr r3, r31 +/* 801C6A50 001C39B0 48 17 81 D9 */ bl ReadFloat__12CInputStreamFv +/* 801C6A54 001C39B4 D0 3E 00 DC */ stfs f1, 0xdc(r30) +/* 801C6A58 001C39B8 7F E3 FB 78 */ mr r3, r31 +/* 801C6A5C 001C39BC 48 17 81 CD */ bl ReadFloat__12CInputStreamFv +/* 801C6A60 001C39C0 D0 3E 00 E0 */ stfs f1, 0xe0(r30) +/* 801C6A64 001C39C4 7F E3 FB 78 */ mr r3, r31 +/* 801C6A68 001C39C8 48 17 81 C1 */ bl ReadFloat__12CInputStreamFv +/* 801C6A6C 001C39CC D0 3E 00 E4 */ stfs f1, 0xe4(r30) +/* 801C6A70 001C39D0 7F E3 FB 78 */ mr r3, r31 +/* 801C6A74 001C39D4 48 17 81 B5 */ bl ReadFloat__12CInputStreamFv +/* 801C6A78 001C39D8 D0 3E 00 E8 */ stfs f1, 0xe8(r30) +/* 801C6A7C 001C39DC 7F E3 FB 78 */ mr r3, r31 +/* 801C6A80 001C39E0 48 17 81 A9 */ bl ReadFloat__12CInputStreamFv +/* 801C6A84 001C39E4 D0 3E 00 EC */ stfs f1, 0xec(r30) +/* 801C6A88 001C39E8 7F E3 FB 78 */ mr r3, r31 +/* 801C6A8C 001C39EC 48 17 81 9D */ bl ReadFloat__12CInputStreamFv +/* 801C6A90 001C39F0 D0 3E 00 F0 */ stfs f1, 0xf0(r30) +/* 801C6A94 001C39F4 7F E3 FB 78 */ mr r3, r31 +/* 801C6A98 001C39F8 48 17 81 ED */ bl ReadLong__12CInputStreamFv +/* 801C6A9C 001C39FC 90 7E 00 F4 */ stw r3, 0xf4(r30) +/* 801C6AA0 001C3A00 7F E3 FB 78 */ mr r3, r31 +/* 801C6AA4 001C3A04 48 17 81 E1 */ bl ReadLong__12CInputStreamFv +/* 801C6AA8 001C3A08 90 7E 00 F8 */ stw r3, 0xf8(r30) +/* 801C6AAC 001C3A0C 7F E3 FB 78 */ mr r3, r31 +/* 801C6AB0 001C3A10 48 17 81 D5 */ bl ReadLong__12CInputStreamFv +/* 801C6AB4 001C3A14 90 7E 00 FC */ stw r3, 0xfc(r30) +/* 801C6AB8 001C3A18 7F E3 FB 78 */ mr r3, r31 +/* 801C6ABC 001C3A1C 48 17 81 C9 */ bl ReadLong__12CInputStreamFv +/* 801C6AC0 001C3A20 90 7E 01 00 */ stw r3, 0x100(r30) +/* 801C6AC4 001C3A24 7F E3 FB 78 */ mr r3, r31 +/* 801C6AC8 001C3A28 48 17 81 BD */ bl ReadLong__12CInputStreamFv +/* 801C6ACC 001C3A2C 90 7E 01 04 */ stw r3, 0x104(r30) +/* 801C6AD0 001C3A30 7F E3 FB 78 */ mr r3, r31 +/* 801C6AD4 001C3A34 48 17 82 09 */ bl ReadBool__12CInputStreamFv +/* 801C6AD8 001C3A38 88 1E 01 08 */ lbz r0, 0x108(r30) +/* 801C6ADC 001C3A3C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801C6AE0 001C3A40 7F C3 F3 78 */ mr r3, r30 +/* 801C6AE4 001C3A44 98 1E 01 08 */ stb r0, 0x108(r30) +/* 801C6AE8 001C3A48 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801C6AEC 001C3A4C 83 C1 00 08 */ lwz r30, 8(r1) +/* 801C6AF0 001C3A50 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801C6AF4 001C3A54 7C 08 03 A6 */ mtlr r0 +/* 801C6AF8 001C3A58 38 21 00 10 */ addi r1, r1, 0x10 +/* 801C6AFC 001C3A5C 4E 80 00 20 */ blr + +.global __sinit_CMetroidBeta_cpp +__sinit_CMetroidBeta_cpp: +/* 801C6B00 001C3A60 C0 62 AA A4 */ lfs f3, lbl_805AC7C4@sda21(r2) +/* 801C6B04 001C3A64 3C 80 80 57 */ lis r4, lbl_80572048@ha +/* 801C6B08 001C3A68 C0 42 AB 1C */ lfs f2, lbl_805AC83C@sda21(r2) +/* 801C6B0C 001C3A6C 3C 60 80 57 */ lis r3, lbl_80572060@ha +/* 801C6B10 001C3A70 D4 64 20 48 */ stfsu f3, lbl_80572048@l(r4) +/* 801C6B14 001C3A74 C0 22 AA 98 */ lfs f1, lbl_805AC7B8@sda21(r2) +/* 801C6B18 001C3A78 D4 43 20 60 */ stfsu f2, lbl_80572060@l(r3) +/* 801C6B1C 001C3A7C C0 02 AB 20 */ lfs f0, lbl_805AC840@sda21(r2) +/* 801C6B20 001C3A80 D0 64 00 04 */ stfs f3, 4(r4) +/* 801C6B24 001C3A84 D0 64 00 08 */ stfs f3, 8(r4) +/* 801C6B28 001C3A88 D0 23 00 04 */ stfs f1, 4(r3) +/* 801C6B2C 001C3A8C D0 03 00 08 */ stfs f0, 8(r3) +/* 801C6B30 001C3A90 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Enemies/CRipperControlledPlatform.s b/asm/Kyoto_CWD/Enemies/CRipperControlledPlatform.s new file mode 100644 index 00000000..f90f29e8 --- /dev/null +++ b/asm/Kyoto_CWD/Enemies/CRipperControlledPlatform.s @@ -0,0 +1,342 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__25CRipperControlledPlatformFv +__dt__25CRipperControlledPlatformFv: +/* 802327C0 0022F720 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 802327C4 0022F724 7C 08 02 A6 */ mflr r0 +/* 802327C8 0022F728 90 01 00 14 */ stw r0, 0x14(r1) +/* 802327CC 0022F72C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 802327D0 0022F730 7C 9F 23 78 */ mr r31, r4 +/* 802327D4 0022F734 93 C1 00 08 */ stw r30, 8(r1) +/* 802327D8 0022F738 7C 7E 1B 79 */ or. r30, r3, r3 +/* 802327DC 0022F73C 41 82 00 28 */ beq lbl_80232804 +/* 802327E0 0022F740 3C A0 80 3F */ lis r5, lbl_803E80C0@ha +/* 802327E4 0022F744 38 80 00 00 */ li r4, 0 +/* 802327E8 0022F748 38 05 80 C0 */ addi r0, r5, lbl_803E80C0@l +/* 802327EC 0022F74C 90 1E 00 00 */ stw r0, 0(r30) +/* 802327F0 0022F750 4B E8 14 1D */ bl __dt__15CScriptPlatformFv +/* 802327F4 0022F754 7F E0 07 35 */ extsh. r0, r31 +/* 802327F8 0022F758 40 81 00 0C */ ble lbl_80232804 +/* 802327FC 0022F75C 7F C3 F3 78 */ mr r3, r30 +/* 80232800 0022F760 48 0E 31 31 */ bl Free__7CMemoryFPCv +lbl_80232804: +/* 80232804 0022F764 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80232808 0022F768 7F C3 F3 78 */ mr r3, r30 +/* 8023280C 0022F76C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80232810 0022F770 83 C1 00 08 */ lwz r30, 8(r1) +/* 80232814 0022F774 7C 08 03 A6 */ mtlr r0 +/* 80232818 0022F778 38 21 00 10 */ addi r1, r1, 0x10 +/* 8023281C 0022F77C 4E 80 00 20 */ blr + +.global Move__25CRipperControlledPlatformFR13CStateManager +Move__25CRipperControlledPlatformFR13CStateManager: +/* 80232820 0022F780 94 21 EF 40 */ stwu r1, -0x10c0(r1) +/* 80232824 0022F784 7C 08 02 A6 */ mflr r0 +/* 80232828 0022F788 90 01 10 C4 */ stw r0, 0x10c4(r1) +/* 8023282C 0022F78C 38 00 10 B8 */ li r0, 0x10b8 +/* 80232830 0022F790 DB E1 10 B0 */ stfd f31, 0x10b0(r1) +/* 80232834 0022F794 13 E1 00 0E */ psq_stx f31, r1, r0, 0, qr0 +/* 80232838 0022F798 BF 41 10 98 */ stmw r26, 0x1098(r1) +/* 8023283C 0022F79C 7C 9B 23 78 */ mr r27, r4 +/* 80232840 0022F7A0 FF E0 08 90 */ fmr f31, f1 +/* 80232844 0022F7A4 A0 04 03 58 */ lhz r0, 0x358(r4) +/* 80232848 0022F7A8 7C BC 2B 78 */ mr r28, r5 +/* 8023284C 0022F7AC 7C 7A 1B 78 */ mr r26, r3 +/* 80232850 0022F7B0 38 81 00 10 */ addi r4, r1, 0x10 +/* 80232854 0022F7B4 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80232858 0022F7B8 7F 83 E3 78 */ mr r3, r28 +/* 8023285C 0022F7BC 4B E1 9D 19 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80232860 0022F7C0 7C 7D 1B 79 */ or. r29, r3, r3 +/* 80232864 0022F7C4 41 82 02 F0 */ beq lbl_80232B54 +/* 80232868 0022F7C8 C0 9B 00 60 */ lfs f4, 0x60(r27) +/* 8023286C 0022F7CC FC 20 F8 90 */ fmr f1, f31 +/* 80232870 0022F7D0 C0 1D 00 60 */ lfs f0, 0x60(r29) +/* 80232874 0022F7D4 7F 63 DB 78 */ mr r3, r27 +/* 80232878 0022F7D8 C0 BB 00 50 */ lfs f5, 0x50(r27) +/* 8023287C 0022F7DC 38 81 00 28 */ addi r4, r1, 0x28 +/* 80232880 0022F7E0 C0 7D 00 50 */ lfs f3, 0x50(r29) +/* 80232884 0022F7E4 EC 40 20 28 */ fsubs f2, f0, f4 +/* 80232888 0022F7E8 C0 DB 00 40 */ lfs f6, 0x40(r27) +/* 8023288C 0022F7EC C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 80232890 0022F7F0 EC 63 28 28 */ fsubs f3, f3, f5 +/* 80232894 0022F7F4 EC 00 30 28 */ fsubs f0, f0, f6 +/* 80232898 0022F7F8 EC 65 18 2A */ fadds f3, f5, f3 +/* 8023289C 0022F7FC EC 44 10 2A */ fadds f2, f4, f2 +/* 802328A0 0022F800 EC 06 00 2A */ fadds f0, f6, f0 +/* 802328A4 0022F804 D0 61 00 2C */ stfs f3, 0x2c(r1) +/* 802328A8 0022F808 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 802328AC 0022F80C D0 41 00 30 */ stfs f2, 0x30(r1) +/* 802328B0 0022F810 4B EE 88 59 */ bl MoveToWR__13CPhysicsActorFRC9CVector3ff +/* 802328B4 0022F814 7F A3 EB 78 */ mr r3, r29 +/* 802328B8 0022F818 4B E2 1B F9 */ bl GetYaw__6CActorCFv +/* 802328BC 0022F81C C0 5B 03 5C */ lfs f2, 0x35c(r27) +/* 802328C0 0022F820 3C 00 43 30 */ lis r0, 0x4330 +/* 802328C4 0022F824 C0 02 B6 C8 */ lfs f0, lbl_805AD3E8@sda21(r2) +/* 802328C8 0022F828 EC 81 10 28 */ fsubs f4, f1, f2 +/* 802328CC 0022F82C 90 01 10 88 */ stw r0, 0x1088(r1) +/* 802328D0 0022F830 C8 62 B6 D8 */ lfd f3, lbl_805AD3F8@sda21(r2) +/* 802328D4 0022F834 C0 22 B6 CC */ lfs f1, lbl_805AD3EC@sda21(r2) +/* 802328D8 0022F838 EC 44 00 32 */ fmuls f2, f4, f0 +/* 802328DC 0022F83C C0 02 B6 D0 */ lfs f0, lbl_805AD3F0@sda21(r2) +/* 802328E0 0022F840 FC 40 10 1E */ fctiwz f2, f2 +/* 802328E4 0022F844 D8 41 10 80 */ stfd f2, 0x1080(r1) +/* 802328E8 0022F848 80 01 10 84 */ lwz r0, 0x1084(r1) +/* 802328EC 0022F84C 6C 00 80 00 */ xoris r0, r0, 0x8000 +/* 802328F0 0022F850 90 01 10 8C */ stw r0, 0x108c(r1) +/* 802328F4 0022F854 C8 41 10 88 */ lfd f2, 0x1088(r1) +/* 802328F8 0022F858 EC 42 18 28 */ fsubs f2, f2, f3 +/* 802328FC 0022F85C EC 42 20 7C */ fnmsubs f2, f2, f1, f4 +/* 80232900 0022F860 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80232904 0022F864 40 80 00 08 */ bge lbl_8023290C +/* 80232908 0022F868 EC 42 08 2A */ fadds f2, f2, f1 +lbl_8023290C: +/* 8023290C 0022F86C C0 02 B6 D4 */ lfs f0, lbl_805AD3F4@sda21(r2) +/* 80232910 0022F870 FC 20 10 90 */ fmr f1, f2 +/* 80232914 0022F874 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80232918 0022F878 40 81 00 0C */ ble lbl_80232924 +/* 8023291C 0022F87C C0 02 B6 CC */ lfs f0, lbl_805AD3EC@sda21(r2) +/* 80232920 0022F880 EC 22 00 28 */ fsubs f1, f2, f0 +lbl_80232924: +/* 80232924 0022F884 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 80232928 0022F888 38 61 00 18 */ addi r3, r1, 0x18 +/* 8023292C 0022F88C 38 81 00 14 */ addi r4, r1, 0x14 +/* 80232930 0022F890 48 0D E7 C9 */ bl ZRotation__11CQuaternionFRC9CRelAngle +/* 80232934 0022F894 C0 81 00 18 */ lfs f4, 0x18(r1) +/* 80232938 0022F898 FC 20 F8 90 */ fmr f1, f31 +/* 8023293C 0022F89C C0 61 00 1C */ lfs f3, 0x1c(r1) +/* 80232940 0022F8A0 7F 63 DB 78 */ mr r3, r27 +/* 80232944 0022F8A4 C0 41 00 20 */ lfs f2, 0x20(r1) +/* 80232948 0022F8A8 38 81 00 34 */ addi r4, r1, 0x34 +/* 8023294C 0022F8AC C0 01 00 24 */ lfs f0, 0x24(r1) +/* 80232950 0022F8B0 D0 81 00 34 */ stfs f4, 0x34(r1) +/* 80232954 0022F8B4 D0 61 00 38 */ stfs f3, 0x38(r1) +/* 80232958 0022F8B8 D0 41 00 3C */ stfs f2, 0x3c(r1) +/* 8023295C 0022F8BC D0 01 00 40 */ stfs f0, 0x40(r1) +/* 80232960 0022F8C0 4B EE 84 B5 */ bl RotateToOR__13CPhysicsActorFRC11CQuaternionf +/* 80232964 0022F8C4 38 00 00 00 */ li r0, 0 +/* 80232968 0022F8C8 FC 20 F8 90 */ fmr f1, f31 +/* 8023296C 0022F8CC 90 01 08 78 */ stw r0, 0x878(r1) +/* 80232970 0022F8D0 7F 64 DB 78 */ mr r4, r27 +/* 80232974 0022F8D4 38 61 00 44 */ addi r3, r1, 0x44 +/* 80232978 0022F8D8 4B EE 7D 3D */ bl GetMotionVolume__13CPhysicsActorCFf +/* 8023297C 0022F8DC C0 A1 00 44 */ lfs f5, 0x44(r1) +/* 80232980 0022F8E0 7F 83 E3 78 */ mr r3, r28 +/* 80232984 0022F8E4 C0 81 00 48 */ lfs f4, 0x48(r1) +/* 80232988 0022F8E8 7F 65 DB 78 */ mr r5, r27 +/* 8023298C 0022F8EC C0 61 00 4C */ lfs f3, 0x4c(r1) +/* 80232990 0022F8F0 38 81 08 78 */ addi r4, r1, 0x878 +/* 80232994 0022F8F4 C0 41 00 50 */ lfs f2, 0x50(r1) +/* 80232998 0022F8F8 38 C1 00 5C */ addi r6, r1, 0x5c +/* 8023299C 0022F8FC C0 21 00 54 */ lfs f1, 0x54(r1) +/* 802329A0 0022F900 C0 01 00 58 */ lfs f0, 0x58(r1) +/* 802329A4 0022F904 D0 A1 00 5C */ stfs f5, 0x5c(r1) +/* 802329A8 0022F908 D0 81 00 60 */ stfs f4, 0x60(r1) +/* 802329AC 0022F90C D0 61 00 64 */ stfs f3, 0x64(r1) +/* 802329B0 0022F910 D0 41 00 68 */ stfs f2, 0x68(r1) +/* 802329B4 0022F914 D0 21 00 6C */ stfs f1, 0x6c(r1) +/* 802329B8 0022F918 D0 01 00 70 */ stfs f0, 0x70(r1) +/* 802329BC 0022F91C 4B E1 9D 41 */ bl "BuildColliderList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CActorRC6CAABox" +/* 802329C0 0022F920 38 00 00 00 */ li r0, 0 +/* 802329C4 0022F924 3B C1 08 7C */ addi r30, r1, 0x87c +/* 802329C8 0022F928 90 01 00 74 */ stw r0, 0x74(r1) +/* 802329CC 0022F92C 7F DD F3 78 */ mr r29, r30 +/* 802329D0 0022F930 3B E1 00 78 */ addi r31, r1, 0x78 +/* 802329D4 0022F934 48 00 00 64 */ b lbl_80232A38 +lbl_802329D8: +/* 802329D8 0022F938 A0 1D 00 00 */ lhz r0, 0(r29) +/* 802329DC 0022F93C 7F 63 DB 78 */ mr r3, r27 +/* 802329E0 0022F940 38 81 00 0C */ addi r4, r1, 0xc +/* 802329E4 0022F944 B0 01 00 0C */ sth r0, 0xc(r1) +/* 802329E8 0022F948 4B E7 F3 69 */ bl IsRider__15CScriptPlatformCF9TUniqueId +/* 802329EC 0022F94C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 802329F0 0022F950 40 82 00 44 */ bne lbl_80232A34 +/* 802329F4 0022F954 A0 1D 00 00 */ lhz r0, 0(r29) +/* 802329F8 0022F958 7F 63 DB 78 */ mr r3, r27 +/* 802329FC 0022F95C 38 81 00 08 */ addi r4, r1, 8 +/* 80232A00 0022F960 B0 01 00 08 */ sth r0, 8(r1) +/* 80232A04 0022F964 4B E7 F1 F5 */ bl IsSlave__15CScriptPlatformCF9TUniqueId +/* 80232A08 0022F968 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80232A0C 0022F96C 40 82 00 28 */ bne lbl_80232A34 +/* 80232A10 0022F970 80 01 00 74 */ lwz r0, 0x74(r1) +/* 80232A14 0022F974 54 00 08 3C */ slwi r0, r0, 1 +/* 80232A18 0022F978 7C 7F 02 15 */ add. r3, r31, r0 +/* 80232A1C 0022F97C 41 82 00 0C */ beq lbl_80232A28 +/* 80232A20 0022F980 A0 1D 00 00 */ lhz r0, 0(r29) +/* 80232A24 0022F984 B0 03 00 00 */ sth r0, 0(r3) +lbl_80232A28: +/* 80232A28 0022F988 80 61 00 74 */ lwz r3, 0x74(r1) +/* 80232A2C 0022F98C 38 03 00 01 */ addi r0, r3, 1 +/* 80232A30 0022F990 90 01 00 74 */ stw r0, 0x74(r1) +lbl_80232A34: +/* 80232A34 0022F994 3B BD 00 02 */ addi r29, r29, 2 +lbl_80232A38: +/* 80232A38 0022F998 80 01 08 78 */ lwz r0, 0x878(r1) +/* 80232A3C 0022F99C 54 00 08 3C */ slwi r0, r0, 1 +/* 80232A40 0022F9A0 7C 1E 02 14 */ add r0, r30, r0 +/* 80232A44 0022F9A4 7C 1D 00 40 */ cmplw r29, r0 +/* 80232A48 0022F9A8 40 82 FF 90 */ bne lbl_802329D8 +/* 80232A4C 0022F9AC 88 1B 00 F8 */ lbz r0, 0xf8(r27) +/* 80232A50 0022F9B0 38 60 00 01 */ li r3, 1 +/* 80232A54 0022F9B4 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80232A58 0022F9B8 FC 20 F8 90 */ fmr f1, f31 +/* 80232A5C 0022F9BC 98 1B 00 F8 */ stb r0, 0xf8(r27) +/* 80232A60 0022F9C0 7F 83 E3 78 */ mr r3, r28 +/* 80232A64 0022F9C4 7F 64 DB 78 */ mr r4, r27 +/* 80232A68 0022F9C8 38 A1 00 74 */ addi r5, r1, 0x74 +/* 80232A6C 0022F9CC 4B F4 F2 CD */ bl "Move__14CGameCollisionFR13CStateManagerR13CPhysicsActorfPCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 80232A70 0022F9D0 88 1B 00 F8 */ lbz r0, 0xf8(r27) +/* 80232A74 0022F9D4 38 60 00 00 */ li r3, 0 +/* 80232A78 0022F9D8 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80232A7C 0022F9DC 7F 63 DB 78 */ mr r3, r27 +/* 80232A80 0022F9E0 98 1B 00 F8 */ stb r0, 0xf8(r27) +/* 80232A84 0022F9E4 4B E2 1A 2D */ bl GetYaw__6CActorCFv +/* 80232A88 0022F9E8 D0 3B 03 5C */ stfs f1, 0x35c(r27) +/* 80232A8C 0022F9EC 38 60 00 00 */ li r3, 0 +/* 80232A90 0022F9F0 C0 01 00 34 */ lfs f0, 0x34(r1) +/* 80232A94 0022F9F4 D0 1A 00 00 */ stfs f0, 0(r26) +/* 80232A98 0022F9F8 C0 01 00 38 */ lfs f0, 0x38(r1) +/* 80232A9C 0022F9FC D0 1A 00 04 */ stfs f0, 4(r26) +/* 80232AA0 0022FA00 C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 80232AA4 0022FA04 D0 1A 00 08 */ stfs f0, 8(r26) +/* 80232AA8 0022FA08 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 80232AAC 0022FA0C D0 1A 00 0C */ stfs f0, 0xc(r26) +/* 80232AB0 0022FA10 80 A1 00 74 */ lwz r5, 0x74(r1) +/* 80232AB4 0022FA14 2C 05 00 00 */ cmpwi r5, 0 +/* 80232AB8 0022FA18 40 81 00 40 */ ble lbl_80232AF8 +/* 80232ABC 0022FA1C 2C 05 00 08 */ cmpwi r5, 8 +/* 80232AC0 0022FA20 38 85 FF F8 */ addi r4, r5, -8 +/* 80232AC4 0022FA24 40 81 00 20 */ ble lbl_80232AE4 +/* 80232AC8 0022FA28 38 04 00 07 */ addi r0, r4, 7 +/* 80232ACC 0022FA2C 54 00 E8 FE */ srwi r0, r0, 3 +/* 80232AD0 0022FA30 7C 09 03 A6 */ mtctr r0 +/* 80232AD4 0022FA34 2C 04 00 00 */ cmpwi r4, 0 +/* 80232AD8 0022FA38 40 81 00 0C */ ble lbl_80232AE4 +lbl_80232ADC: +/* 80232ADC 0022FA3C 38 63 00 08 */ addi r3, r3, 8 +/* 80232AE0 0022FA40 42 00 FF FC */ bdnz lbl_80232ADC +lbl_80232AE4: +/* 80232AE4 0022FA44 7C 03 28 50 */ subf r0, r3, r5 +/* 80232AE8 0022FA48 7C 09 03 A6 */ mtctr r0 +/* 80232AEC 0022FA4C 7C 03 28 00 */ cmpw r3, r5 +/* 80232AF0 0022FA50 40 80 00 08 */ bge lbl_80232AF8 +lbl_80232AF4: +/* 80232AF4 0022FA54 42 00 00 00 */ bdnz lbl_80232AF4 +lbl_80232AF8: +/* 80232AF8 0022FA58 80 A1 08 78 */ lwz r5, 0x878(r1) +/* 80232AFC 0022FA5C 38 60 00 00 */ li r3, 0 +/* 80232B00 0022FA60 90 61 00 74 */ stw r3, 0x74(r1) +/* 80232B04 0022FA64 2C 05 00 00 */ cmpwi r5, 0 +/* 80232B08 0022FA68 40 81 00 40 */ ble lbl_80232B48 +/* 80232B0C 0022FA6C 2C 05 00 08 */ cmpwi r5, 8 +/* 80232B10 0022FA70 38 85 FF F8 */ addi r4, r5, -8 +/* 80232B14 0022FA74 40 81 00 20 */ ble lbl_80232B34 +/* 80232B18 0022FA78 38 04 00 07 */ addi r0, r4, 7 +/* 80232B1C 0022FA7C 54 00 E8 FE */ srwi r0, r0, 3 +/* 80232B20 0022FA80 7C 09 03 A6 */ mtctr r0 +/* 80232B24 0022FA84 2C 04 00 00 */ cmpwi r4, 0 +/* 80232B28 0022FA88 40 81 00 0C */ ble lbl_80232B34 +lbl_80232B2C: +/* 80232B2C 0022FA8C 38 63 00 08 */ addi r3, r3, 8 +/* 80232B30 0022FA90 42 00 FF FC */ bdnz lbl_80232B2C +lbl_80232B34: +/* 80232B34 0022FA94 7C 03 28 50 */ subf r0, r3, r5 +/* 80232B38 0022FA98 7C 09 03 A6 */ mtctr r0 +/* 80232B3C 0022FA9C 7C 03 28 00 */ cmpw r3, r5 +/* 80232B40 0022FAA0 40 80 00 08 */ bge lbl_80232B48 +lbl_80232B44: +/* 80232B44 0022FAA4 42 00 00 00 */ bdnz lbl_80232B44 +lbl_80232B48: +/* 80232B48 0022FAA8 38 00 00 00 */ li r0, 0 +/* 80232B4C 0022FAAC 90 01 08 78 */ stw r0, 0x878(r1) +/* 80232B50 0022FAB0 48 00 00 28 */ b lbl_80232B78 +lbl_80232B54: +/* 80232B54 0022FAB4 3C 60 80 5A */ lis r3, lbl_805A6660@ha +/* 80232B58 0022FAB8 C4 03 66 60 */ lfsu f0, lbl_805A6660@l(r3) +/* 80232B5C 0022FABC D0 1A 00 00 */ stfs f0, 0(r26) +/* 80232B60 0022FAC0 C0 03 00 04 */ lfs f0, 4(r3) +/* 80232B64 0022FAC4 D0 1A 00 04 */ stfs f0, 4(r26) +/* 80232B68 0022FAC8 C0 03 00 08 */ lfs f0, 8(r3) +/* 80232B6C 0022FACC D0 1A 00 08 */ stfs f0, 8(r26) +/* 80232B70 0022FAD0 C0 03 00 0C */ lfs f0, 0xc(r3) +/* 80232B74 0022FAD4 D0 1A 00 0C */ stfs f0, 0xc(r26) +lbl_80232B78: +/* 80232B78 0022FAD8 38 00 10 B8 */ li r0, 0x10b8 +/* 80232B7C 0022FADC 13 E1 00 0C */ psq_lx f31, r1, r0, 0, qr0 +/* 80232B80 0022FAE0 CB E1 10 B0 */ lfd f31, 0x10b0(r1) +/* 80232B84 0022FAE4 BB 41 10 98 */ lmw r26, 0x1098(r1) +/* 80232B88 0022FAE8 80 01 10 C4 */ lwz r0, 0x10c4(r1) +/* 80232B8C 0022FAEC 7C 08 03 A6 */ mtlr r0 +/* 80232B90 0022FAF0 38 21 10 C0 */ addi r1, r1, 0x10c0 +/* 80232B94 0022FAF4 4E 80 00 20 */ blr + +.global "__ct__25CRipperControlledPlatformF9TUniqueId9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC6CAABoxbRCQ24rstl58optional_object<39TLockedToken<23CCollidableOBBTreeGroup>>" +"__ct__25CRipperControlledPlatformF9TUniqueId9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC6CAABoxbRCQ24rstl58optional_object<39TLockedToken<23CCollidableOBBTreeGroup>>": +/* 80232B98 0022FAF8 94 21 FE F0 */ stwu r1, -0x110(r1) +/* 80232B9C 0022FAFC 7C 08 02 A6 */ mflr r0 +/* 80232BA0 0022FB00 90 01 01 14 */ stw r0, 0x114(r1) +/* 80232BA4 0022FB04 BE C1 00 E8 */ stmw r22, 0xe8(r1) +/* 80232BA8 0022FB08 7C 7F 1B 78 */ mr r31, r3 +/* 80232BAC 0022FB0C 83 A1 01 18 */ lwz r29, 0x118(r1) +/* 80232BB0 0022FB10 7C 96 23 78 */ mr r22, r4 +/* 80232BB4 0022FB14 7C B7 2B 78 */ mr r23, r5 +/* 80232BB8 0022FB18 7C D8 33 78 */ mr r24, r6 +/* 80232BBC 0022FB1C 7C F9 3B 78 */ mr r25, r7 +/* 80232BC0 0022FB20 7D 1A 43 78 */ mr r26, r8 +/* 80232BC4 0022FB24 7D 3B 4B 78 */ mr r27, r9 +/* 80232BC8 0022FB28 7D 5C 53 78 */ mr r28, r10 +/* 80232BCC 0022FB2C 38 61 00 9C */ addi r3, r1, 0x9c +/* 80232BD0 0022FB30 4B E0 7B D5 */ bl CModelDataNull__10CModelDataFv +/* 80232BD4 0022FB34 38 61 00 34 */ addi r3, r1, 0x34 +/* 80232BD8 0022FB38 4B DE 82 61 */ bl None__16CActorParametersFv +/* 80232BDC 0022FB3C C0 22 B6 E0 */ lfs f1, lbl_805AD400@sda21(r2) +/* 80232BE0 0022FB40 3C 60 80 57 */ lis r3, lbl_8056D718@ha +/* 80232BE4 0022FB44 C0 02 B6 E4 */ lfs f0, lbl_805AD404@sda21(r2) +/* 80232BE8 0022FB48 3B C0 00 00 */ li r30, 0 +/* 80232BEC 0022FB4C A0 96 00 00 */ lhz r4, 0(r22) +/* 80232BF0 0022FB50 39 81 00 2C */ addi r12, r1, 0x2c +/* 80232BF4 0022FB54 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 80232BF8 0022FB58 39 63 D7 18 */ addi r11, r3, lbl_8056D718@l +/* 80232BFC 0022FB5C 38 00 00 01 */ li r0, 1 +/* 80232C00 0022FB60 C0 22 B6 D0 */ lfs f1, lbl_805AD3F0@sda21(r2) +/* 80232C04 0022FB64 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 80232C08 0022FB68 7F E3 FB 78 */ mr r3, r31 +/* 80232C0C 0022FB6C C0 42 B6 E8 */ lfs f2, lbl_805AD408@sda21(r2) +/* 80232C10 0022FB70 7F 05 C3 78 */ mr r5, r24 +/* 80232C14 0022FB74 B0 81 00 28 */ sth r4, 0x28(r1) +/* 80232C18 0022FB78 7F 26 CB 78 */ mr r6, r25 +/* 80232C1C 0022FB7C 7F 47 D3 78 */ mr r7, r26 +/* 80232C20 0022FB80 7F 6A DB 78 */ mr r10, r27 +/* 80232C24 0022FB84 93 C1 00 08 */ stw r30, 8(r1) +/* 80232C28 0022FB88 38 81 00 28 */ addi r4, r1, 0x28 +/* 80232C2C 0022FB8C 39 01 00 9C */ addi r8, r1, 0x9c +/* 80232C30 0022FB90 39 21 00 34 */ addi r9, r1, 0x34 +/* 80232C34 0022FB94 93 81 00 0C */ stw r28, 0xc(r1) +/* 80232C38 0022FB98 91 81 00 10 */ stw r12, 0x10(r1) +/* 80232C3C 0022FB9C 91 61 00 14 */ stw r11, 0x14(r1) +/* 80232C40 0022FBA0 93 A1 00 18 */ stw r29, 0x18(r1) +/* 80232C44 0022FBA4 93 C1 00 1C */ stw r30, 0x1c(r1) +/* 80232C48 0022FBA8 90 01 00 20 */ stw r0, 0x20(r1) +/* 80232C4C 0022FBAC 90 01 00 24 */ stw r0, 0x24(r1) +/* 80232C50 0022FBB0 4B E8 11 B1 */ bl "__ct__15CScriptPlatformF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC16CActorParametersRC6CAABoxfbbRC11CHealthInfoRC20CDamageVulnerabilityRCQ24rstl58optional_object<39TLockedToken<23CCollidableOBBTreeGroup>>bii" +/* 80232C54 0022FBB4 38 61 00 34 */ addi r3, r1, 0x34 +/* 80232C58 0022FBB8 38 80 FF FF */ li r4, -1 +/* 80232C5C 0022FBBC 4B ED 39 AD */ bl __dt__16CActorParametersFv +/* 80232C60 0022FBC0 38 61 00 9C */ addi r3, r1, 0x9c +/* 80232C64 0022FBC4 38 80 FF FF */ li r4, -1 +/* 80232C68 0022FBC8 4B EE 3D E5 */ bl __dt__10CModelDataFv +/* 80232C6C 0022FBCC 3C 80 80 3F */ lis r4, lbl_803E80C0@ha +/* 80232C70 0022FBD0 7F E3 FB 78 */ mr r3, r31 +/* 80232C74 0022FBD4 38 04 80 C0 */ addi r0, r4, lbl_803E80C0@l +/* 80232C78 0022FBD8 90 1F 00 00 */ stw r0, 0(r31) +/* 80232C7C 0022FBDC A0 17 00 00 */ lhz r0, 0(r23) +/* 80232C80 0022FBE0 B0 1F 03 58 */ sth r0, 0x358(r31) +/* 80232C84 0022FBE4 4B E2 18 2D */ bl GetYaw__6CActorCFv +/* 80232C88 0022FBE8 D0 3F 03 5C */ stfs f1, 0x35c(r31) +/* 80232C8C 0022FBEC 7F E3 FB 78 */ mr r3, r31 +/* 80232C90 0022FBF0 BA C1 00 E8 */ lmw r22, 0xe8(r1) +/* 80232C94 0022FBF4 80 01 01 14 */ lwz r0, 0x114(r1) +/* 80232C98 0022FBF8 7C 08 03 A6 */ mtlr r0 +/* 80232C9C 0022FBFC 38 21 01 10 */ addi r1, r1, 0x110 +/* 80232CA0 0022FC00 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Enemies/CSnakeWeedSwarm.s b/asm/Kyoto_CWD/Enemies/CSnakeWeedSwarm.s new file mode 100644 index 00000000..43e61e00 --- /dev/null +++ b/asm/Kyoto_CWD/Enemies/CSnakeWeedSwarm.s @@ -0,0 +1,3469 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__15CSnakeWeedSwarmFv +__dt__15CSnakeWeedSwarmFv: +/* 8023B4DC 0023843C 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 8023B4E0 00238440 7C 08 02 A6 */ mflr r0 +/* 8023B4E4 00238444 90 01 00 54 */ stw r0, 0x54(r1) +/* 8023B4E8 00238448 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 8023B4EC 0023844C 7C 9F 23 78 */ mr r31, r4 +/* 8023B4F0 00238450 93 C1 00 48 */ stw r30, 0x48(r1) +/* 8023B4F4 00238454 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8023B4F8 00238458 93 A1 00 44 */ stw r29, 0x44(r1) +/* 8023B4FC 0023845C 93 81 00 40 */ stw r28, 0x40(r1) +/* 8023B500 00238460 41 82 02 F0 */ beq lbl_8023B7F0 +/* 8023B504 00238464 3C 60 80 3F */ lis r3, lbl_803E8578@ha +/* 8023B508 00238468 34 1E 01 F4 */ addic. r0, r30, 0x1f4 +/* 8023B50C 0023846C 38 03 85 78 */ addi r0, r3, lbl_803E8578@l +/* 8023B510 00238470 90 1E 00 00 */ stw r0, 0(r30) +/* 8023B514 00238474 41 82 00 30 */ beq lbl_8023B544 +/* 8023B518 00238478 88 1E 01 F4 */ lbz r0, 0x1f4(r30) +/* 8023B51C 0023847C 28 00 00 00 */ cmplwi r0, 0 +/* 8023B520 00238480 41 82 00 24 */ beq lbl_8023B544 +/* 8023B524 00238484 80 7E 01 F8 */ lwz r3, 0x1f8(r30) +/* 8023B528 00238488 28 03 00 00 */ cmplwi r3, 0 +/* 8023B52C 0023848C 41 82 00 18 */ beq lbl_8023B544 +/* 8023B530 00238490 81 83 00 00 */ lwz r12, 0(r3) +/* 8023B534 00238494 38 80 00 01 */ li r4, 1 +/* 8023B538 00238498 81 8C 00 08 */ lwz r12, 8(r12) +/* 8023B53C 0023849C 7D 89 03 A6 */ mtctr r12 +/* 8023B540 002384A0 4E 80 04 21 */ bctrl +lbl_8023B544: +/* 8023B544 002384A4 34 1E 01 EC */ addic. r0, r30, 0x1ec +/* 8023B548 002384A8 41 82 00 30 */ beq lbl_8023B578 +/* 8023B54C 002384AC 88 1E 01 EC */ lbz r0, 0x1ec(r30) +/* 8023B550 002384B0 28 00 00 00 */ cmplwi r0, 0 +/* 8023B554 002384B4 41 82 00 24 */ beq lbl_8023B578 +/* 8023B558 002384B8 80 7E 01 F0 */ lwz r3, 0x1f0(r30) +/* 8023B55C 002384BC 28 03 00 00 */ cmplwi r3, 0 +/* 8023B560 002384C0 41 82 00 18 */ beq lbl_8023B578 +/* 8023B564 002384C4 81 83 00 00 */ lwz r12, 0(r3) +/* 8023B568 002384C8 38 80 00 01 */ li r4, 1 +/* 8023B56C 002384CC 81 8C 00 08 */ lwz r12, 8(r12) +/* 8023B570 002384D0 7D 89 03 A6 */ mtctr r12 +/* 8023B574 002384D4 4E 80 04 21 */ bctrl +lbl_8023B578: +/* 8023B578 002384D8 34 1E 01 E4 */ addic. r0, r30, 0x1e4 +/* 8023B57C 002384DC 41 82 00 34 */ beq lbl_8023B5B0 +/* 8023B580 002384E0 88 1E 01 E4 */ lbz r0, 0x1e4(r30) +/* 8023B584 002384E4 28 00 00 00 */ cmplwi r0, 0 +/* 8023B588 002384E8 41 82 00 28 */ beq lbl_8023B5B0 +/* 8023B58C 002384EC 83 BE 01 E8 */ lwz r29, 0x1e8(r30) +/* 8023B590 002384F0 28 1D 00 00 */ cmplwi r29, 0 +/* 8023B594 002384F4 41 82 00 1C */ beq lbl_8023B5B0 +/* 8023B598 002384F8 41 82 00 10 */ beq lbl_8023B5A8 +/* 8023B59C 002384FC 7F A3 EB 78 */ mr r3, r29 +/* 8023B5A0 00238500 38 80 00 00 */ li r4, 0 +/* 8023B5A4 00238504 48 10 58 9D */ bl __dt__6CTokenFv +lbl_8023B5A8: +/* 8023B5A8 00238508 7F A3 EB 78 */ mr r3, r29 +/* 8023B5AC 0023850C 48 0D A3 85 */ bl Free__7CMemoryFPCv +lbl_8023B5B0: +/* 8023B5B0 00238510 34 1E 01 DC */ addic. r0, r30, 0x1dc +/* 8023B5B4 00238514 41 82 00 34 */ beq lbl_8023B5E8 +/* 8023B5B8 00238518 88 1E 01 DC */ lbz r0, 0x1dc(r30) +/* 8023B5BC 0023851C 28 00 00 00 */ cmplwi r0, 0 +/* 8023B5C0 00238520 41 82 00 28 */ beq lbl_8023B5E8 +/* 8023B5C4 00238524 83 BE 01 E0 */ lwz r29, 0x1e0(r30) +/* 8023B5C8 00238528 28 1D 00 00 */ cmplwi r29, 0 +/* 8023B5CC 0023852C 41 82 00 1C */ beq lbl_8023B5E8 +/* 8023B5D0 00238530 41 82 00 10 */ beq lbl_8023B5E0 +/* 8023B5D4 00238534 7F A3 EB 78 */ mr r3, r29 +/* 8023B5D8 00238538 38 80 00 00 */ li r4, 0 +/* 8023B5DC 0023853C 48 10 58 65 */ bl __dt__6CTokenFv +lbl_8023B5E0: +/* 8023B5E0 00238540 7F A3 EB 78 */ mr r3, r29 +/* 8023B5E4 00238544 48 0D A3 4D */ bl Free__7CMemoryFPCv +lbl_8023B5E8: +/* 8023B5E8 00238548 34 1E 01 CC */ addic. r0, r30, 0x1cc +/* 8023B5EC 0023854C 41 82 00 58 */ beq lbl_8023B644 +/* 8023B5F0 00238550 83 BE 01 CC */ lwz r29, 0x1cc(r30) +/* 8023B5F4 00238554 28 1D 00 00 */ cmplwi r29, 0 +/* 8023B5F8 00238558 41 82 00 4C */ beq lbl_8023B644 +/* 8023B5FC 0023855C 80 1D 00 04 */ lwz r0, 4(r29) +/* 8023B600 00238560 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 8023B604 00238564 54 00 10 3A */ slwi r0, r0, 2 +/* 8023B608 00238568 7C 03 02 14 */ add r0, r3, r0 +/* 8023B60C 0023856C 90 61 00 1C */ stw r3, 0x1c(r1) +/* 8023B610 00238570 7C 64 1B 78 */ mr r4, r3 +/* 8023B614 00238574 90 01 00 24 */ stw r0, 0x24(r1) +/* 8023B618 00238578 90 01 00 20 */ stw r0, 0x20(r1) +/* 8023B61C 0023857C 90 61 00 18 */ stw r3, 0x18(r1) +/* 8023B620 00238580 48 00 00 08 */ b lbl_8023B628 +lbl_8023B624: +/* 8023B624 00238584 38 84 00 04 */ addi r4, r4, 4 +lbl_8023B628: +/* 8023B628 00238588 7C 04 00 40 */ cmplw r4, r0 +/* 8023B62C 0023858C 40 82 FF F8 */ bne lbl_8023B624 +/* 8023B630 00238590 28 03 00 00 */ cmplwi r3, 0 +/* 8023B634 00238594 41 82 00 08 */ beq lbl_8023B63C +/* 8023B638 00238598 48 0D A2 F9 */ bl Free__7CMemoryFPCv +lbl_8023B63C: +/* 8023B63C 0023859C 7F A3 EB 78 */ mr r3, r29 +/* 8023B640 002385A0 48 0D A2 F1 */ bl Free__7CMemoryFPCv +lbl_8023B644: +/* 8023B644 002385A4 34 1E 01 C8 */ addic. r0, r30, 0x1c8 +/* 8023B648 002385A8 41 82 00 58 */ beq lbl_8023B6A0 +/* 8023B64C 002385AC 83 BE 01 C8 */ lwz r29, 0x1c8(r30) +/* 8023B650 002385B0 28 1D 00 00 */ cmplwi r29, 0 +/* 8023B654 002385B4 41 82 00 4C */ beq lbl_8023B6A0 +/* 8023B658 002385B8 80 1D 00 04 */ lwz r0, 4(r29) +/* 8023B65C 002385BC 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 8023B660 002385C0 1C 00 00 0C */ mulli r0, r0, 0xc +/* 8023B664 002385C4 90 61 00 0C */ stw r3, 0xc(r1) +/* 8023B668 002385C8 7C 64 1B 78 */ mr r4, r3 +/* 8023B66C 002385CC 7C 03 02 14 */ add r0, r3, r0 +/* 8023B670 002385D0 90 61 00 08 */ stw r3, 8(r1) +/* 8023B674 002385D4 90 01 00 14 */ stw r0, 0x14(r1) +/* 8023B678 002385D8 90 01 00 10 */ stw r0, 0x10(r1) +/* 8023B67C 002385DC 48 00 00 08 */ b lbl_8023B684 +lbl_8023B680: +/* 8023B680 002385E0 38 84 00 0C */ addi r4, r4, 0xc +lbl_8023B684: +/* 8023B684 002385E4 7C 04 00 40 */ cmplw r4, r0 +/* 8023B688 002385E8 40 82 FF F8 */ bne lbl_8023B680 +/* 8023B68C 002385EC 28 03 00 00 */ cmplwi r3, 0 +/* 8023B690 002385F0 41 82 00 08 */ beq lbl_8023B698 +/* 8023B694 002385F4 48 0D A2 9D */ bl Free__7CMemoryFPCv +lbl_8023B698: +/* 8023B698 002385F8 7F A3 EB 78 */ mr r3, r29 +/* 8023B69C 002385FC 48 0D A2 95 */ bl Free__7CMemoryFPCv +lbl_8023B6A0: +/* 8023B6A0 00238600 34 1E 01 B0 */ addic. r0, r30, 0x1b0 +/* 8023B6A4 00238604 41 82 00 40 */ beq lbl_8023B6E4 +/* 8023B6A8 00238608 3B 9E 01 B4 */ addi r28, r30, 0x1b4 +/* 8023B6AC 0023860C 3B A0 00 00 */ li r29, 0 +/* 8023B6B0 00238610 48 00 00 20 */ b lbl_8023B6D0 +lbl_8023B6B4: +/* 8023B6B4 00238614 28 1C 00 00 */ cmplwi r28, 0 +/* 8023B6B8 00238618 41 82 00 10 */ beq lbl_8023B6C8 +/* 8023B6BC 0023861C 41 82 00 0C */ beq lbl_8023B6C8 +/* 8023B6C0 00238620 7F 83 E3 78 */ mr r3, r28 +/* 8023B6C4 00238624 4B F9 7C 9D */ bl sub_801d3360 +lbl_8023B6C8: +/* 8023B6C8 00238628 3B 9C 00 04 */ addi r28, r28, 4 +/* 8023B6CC 0023862C 3B BD 00 01 */ addi r29, r29, 1 +lbl_8023B6D0: +/* 8023B6D0 00238630 80 1E 01 B0 */ lwz r0, 0x1b0(r30) +/* 8023B6D4 00238634 7C 1D 00 00 */ cmpw r29, r0 +/* 8023B6D8 00238638 41 80 FF DC */ blt lbl_8023B6B4 +/* 8023B6DC 0023863C 38 00 00 00 */ li r0, 0 +/* 8023B6E0 00238640 90 1E 01 B0 */ stw r0, 0x1b0(r30) +lbl_8023B6E4: +/* 8023B6E4 00238644 34 1E 01 9C */ addic. r0, r30, 0x19c +/* 8023B6E8 00238648 41 82 00 58 */ beq lbl_8023B740 +/* 8023B6EC 0023864C 80 BE 01 9C */ lwz r5, 0x19c(r30) +/* 8023B6F0 00238650 38 60 00 00 */ li r3, 0 +/* 8023B6F4 00238654 2C 05 00 00 */ cmpwi r5, 0 +/* 8023B6F8 00238658 40 81 00 40 */ ble lbl_8023B738 +/* 8023B6FC 0023865C 2C 05 00 08 */ cmpwi r5, 8 +/* 8023B700 00238660 38 85 FF F8 */ addi r4, r5, -8 +/* 8023B704 00238664 40 81 00 20 */ ble lbl_8023B724 +/* 8023B708 00238668 38 04 00 07 */ addi r0, r4, 7 +/* 8023B70C 0023866C 54 00 E8 FE */ srwi r0, r0, 3 +/* 8023B710 00238670 7C 09 03 A6 */ mtctr r0 +/* 8023B714 00238674 2C 04 00 00 */ cmpwi r4, 0 +/* 8023B718 00238678 40 81 00 0C */ ble lbl_8023B724 +lbl_8023B71C: +/* 8023B71C 0023867C 38 63 00 08 */ addi r3, r3, 8 +/* 8023B720 00238680 42 00 FF FC */ bdnz lbl_8023B71C +lbl_8023B724: +/* 8023B724 00238684 7C 03 28 50 */ subf r0, r3, r5 +/* 8023B728 00238688 7C 09 03 A6 */ mtctr r0 +/* 8023B72C 0023868C 7C 03 28 00 */ cmpw r3, r5 +/* 8023B730 00238690 40 80 00 08 */ bge lbl_8023B738 +lbl_8023B734: +/* 8023B734 00238694 42 00 00 00 */ bdnz lbl_8023B734 +lbl_8023B738: +/* 8023B738 00238698 38 00 00 00 */ li r0, 0 +/* 8023B73C 0023869C 90 1E 01 9C */ stw r0, 0x19c(r30) +lbl_8023B740: +/* 8023B740 002386A0 34 1E 01 78 */ addic. r0, r30, 0x178 +/* 8023B744 002386A4 41 82 00 48 */ beq lbl_8023B78C +/* 8023B748 002386A8 3B 9E 01 7C */ addi r28, r30, 0x17c +/* 8023B74C 002386AC 3B A0 00 00 */ li r29, 0 +/* 8023B750 002386B0 48 00 00 28 */ b lbl_8023B778 +lbl_8023B754: +/* 8023B754 002386B4 28 1C 00 00 */ cmplwi r28, 0 +/* 8023B758 002386B8 41 82 00 18 */ beq lbl_8023B770 +/* 8023B75C 002386BC 88 1C 00 00 */ lbz r0, 0(r28) +/* 8023B760 002386C0 28 00 00 00 */ cmplwi r0, 0 +/* 8023B764 002386C4 41 82 00 0C */ beq lbl_8023B770 +/* 8023B768 002386C8 80 7C 00 04 */ lwz r3, 4(r28) +/* 8023B76C 002386CC 48 0D A1 C5 */ bl Free__7CMemoryFPCv +lbl_8023B770: +/* 8023B770 002386D0 3B 9C 00 08 */ addi r28, r28, 8 +/* 8023B774 002386D4 3B BD 00 01 */ addi r29, r29, 1 +lbl_8023B778: +/* 8023B778 002386D8 80 1E 01 78 */ lwz r0, 0x178(r30) +/* 8023B77C 002386DC 7C 1D 00 00 */ cmpw r29, r0 +/* 8023B780 002386E0 41 80 FF D4 */ blt lbl_8023B754 +/* 8023B784 002386E4 38 00 00 00 */ li r0, 0 +/* 8023B788 002386E8 90 1E 01 78 */ stw r0, 0x178(r30) +lbl_8023B78C: +/* 8023B78C 002386EC 34 1E 01 30 */ addic. r0, r30, 0x130 +/* 8023B790 002386F0 41 82 00 44 */ beq lbl_8023B7D4 +/* 8023B794 002386F4 80 1E 01 34 */ lwz r0, 0x134(r30) +/* 8023B798 002386F8 80 7E 01 3C */ lwz r3, 0x13c(r30) +/* 8023B79C 002386FC 1C 00 00 24 */ mulli r0, r0, 0x24 +/* 8023B7A0 00238700 90 61 00 2C */ stw r3, 0x2c(r1) +/* 8023B7A4 00238704 7C 64 1B 78 */ mr r4, r3 +/* 8023B7A8 00238708 7C 03 02 14 */ add r0, r3, r0 +/* 8023B7AC 0023870C 90 61 00 28 */ stw r3, 0x28(r1) +/* 8023B7B0 00238710 90 01 00 34 */ stw r0, 0x34(r1) +/* 8023B7B4 00238714 90 01 00 30 */ stw r0, 0x30(r1) +/* 8023B7B8 00238718 48 00 00 08 */ b lbl_8023B7C0 +lbl_8023B7BC: +/* 8023B7BC 0023871C 38 84 00 24 */ addi r4, r4, 0x24 +lbl_8023B7C0: +/* 8023B7C0 00238720 7C 04 00 40 */ cmplw r4, r0 +/* 8023B7C4 00238724 40 82 FF F8 */ bne lbl_8023B7BC +/* 8023B7C8 00238728 28 03 00 00 */ cmplwi r3, 0 +/* 8023B7CC 0023872C 41 82 00 08 */ beq lbl_8023B7D4 +/* 8023B7D0 00238730 48 0D A1 61 */ bl Free__7CMemoryFPCv +lbl_8023B7D4: +/* 8023B7D4 00238734 7F C3 F3 78 */ mr r3, r30 +/* 8023B7D8 00238738 38 80 00 00 */ li r4, 0 +/* 8023B7DC 0023873C 4B E1 9F 15 */ bl __dt__6CActorFv +/* 8023B7E0 00238740 7F E0 07 35 */ extsh. r0, r31 +/* 8023B7E4 00238744 40 81 00 0C */ ble lbl_8023B7F0 +/* 8023B7E8 00238748 7F C3 F3 78 */ mr r3, r30 +/* 8023B7EC 0023874C 48 0D A1 45 */ bl Free__7CMemoryFPCv +lbl_8023B7F0: +/* 8023B7F0 00238750 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8023B7F4 00238754 7F C3 F3 78 */ mr r3, r30 +/* 8023B7F8 00238758 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 8023B7FC 0023875C 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 8023B800 00238760 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 8023B804 00238764 83 81 00 40 */ lwz r28, 0x40(r1) +/* 8023B808 00238768 7C 08 03 A6 */ mtlr r0 +/* 8023B80C 0023876C 38 21 00 50 */ addi r1, r1, 0x50 +/* 8023B810 00238770 4E 80 00 20 */ blr + +.global sub_8023b814 +sub_8023b814: +/* 8023B814 00238774 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8023B818 00238778 7C 08 02 A6 */ mflr r0 +/* 8023B81C 0023877C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8023B820 00238780 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8023B824 00238784 7C 9F 23 78 */ mr r31, r4 +/* 8023B828 00238788 93 C1 00 08 */ stw r30, 8(r1) +/* 8023B82C 0023878C 7C 7E 1B 78 */ mr r30, r3 +/* 8023B830 00238790 80 63 01 F0 */ lwz r3, 0x1f0(r3) +/* 8023B834 00238794 28 03 00 00 */ cmplwi r3, 0 +/* 8023B838 00238798 41 82 00 54 */ beq lbl_8023B88C +/* 8023B83C 0023879C 81 83 00 00 */ lwz r12, 0(r3) +/* 8023B840 002387A0 38 80 00 01 */ li r4, 1 +/* 8023B844 002387A4 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8023B848 002387A8 7D 89 03 A6 */ mtctr r12 +/* 8023B84C 002387AC 4E 80 04 21 */ bctrl +/* 8023B850 002387B0 80 7E 01 F0 */ lwz r3, 0x1f0(r30) +/* 8023B854 002387B4 7F E4 FB 78 */ mr r4, r31 +/* 8023B858 002387B8 81 83 00 00 */ lwz r12, 0(r3) +/* 8023B85C 002387BC 81 8C 00 18 */ lwz r12, 0x18(r12) +/* 8023B860 002387C0 7D 89 03 A6 */ mtctr r12 +/* 8023B864 002387C4 4E 80 04 21 */ bctrl +/* 8023B868 002387C8 80 7E 01 F0 */ lwz r3, 0x1f0(r30) +/* 8023B86C 002387CC 80 9E 01 FC */ lwz r4, 0x1fc(r30) +/* 8023B870 002387D0 48 0E 10 51 */ bl ForceParticleCreation__11CElementGenFi +/* 8023B874 002387D4 80 7E 01 F0 */ lwz r3, 0x1f0(r30) +/* 8023B878 002387D8 38 80 00 00 */ li r4, 0 +/* 8023B87C 002387DC 81 83 00 00 */ lwz r12, 0(r3) +/* 8023B880 002387E0 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8023B884 002387E4 7D 89 03 A6 */ mtctr r12 +/* 8023B888 002387E8 4E 80 04 21 */ bctrl +lbl_8023B88C: +/* 8023B88C 002387EC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8023B890 002387F0 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8023B894 002387F4 83 C1 00 08 */ lwz r30, 8(r1) +/* 8023B898 002387F8 7C 08 03 A6 */ mtlr r0 +/* 8023B89C 002387FC 38 21 00 10 */ addi r1, r1, 0x10 +/* 8023B8A0 00238800 4E 80 00 20 */ blr + +.global sub_8023b8a4 +sub_8023b8a4: +/* 8023B8A4 00238804 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8023B8A8 00238808 7C 08 02 A6 */ mflr r0 +/* 8023B8AC 0023880C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8023B8B0 00238810 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8023B8B4 00238814 7C 9F 23 78 */ mr r31, r4 +/* 8023B8B8 00238818 93 C1 00 08 */ stw r30, 8(r1) +/* 8023B8BC 0023881C 7C 7E 1B 78 */ mr r30, r3 +/* 8023B8C0 00238820 80 63 01 F8 */ lwz r3, 0x1f8(r3) +/* 8023B8C4 00238824 28 03 00 00 */ cmplwi r3, 0 +/* 8023B8C8 00238828 41 82 00 54 */ beq lbl_8023B91C +/* 8023B8CC 0023882C 81 83 00 00 */ lwz r12, 0(r3) +/* 8023B8D0 00238830 38 80 00 01 */ li r4, 1 +/* 8023B8D4 00238834 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8023B8D8 00238838 7D 89 03 A6 */ mtctr r12 +/* 8023B8DC 0023883C 4E 80 04 21 */ bctrl +/* 8023B8E0 00238840 80 7E 01 F8 */ lwz r3, 0x1f8(r30) +/* 8023B8E4 00238844 7F E4 FB 78 */ mr r4, r31 +/* 8023B8E8 00238848 81 83 00 00 */ lwz r12, 0(r3) +/* 8023B8EC 0023884C 81 8C 00 18 */ lwz r12, 0x18(r12) +/* 8023B8F0 00238850 7D 89 03 A6 */ mtctr r12 +/* 8023B8F4 00238854 4E 80 04 21 */ bctrl +/* 8023B8F8 00238858 80 7E 01 F8 */ lwz r3, 0x1f8(r30) +/* 8023B8FC 0023885C 38 80 00 01 */ li r4, 1 +/* 8023B900 00238860 48 0E 0F C1 */ bl ForceParticleCreation__11CElementGenFi +/* 8023B904 00238864 80 7E 01 F8 */ lwz r3, 0x1f8(r30) +/* 8023B908 00238868 38 80 00 00 */ li r4, 0 +/* 8023B90C 0023886C 81 83 00 00 */ lwz r12, 0(r3) +/* 8023B910 00238870 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8023B914 00238874 7D 89 03 A6 */ mtctr r12 +/* 8023B918 00238878 4E 80 04 21 */ bctrl +lbl_8023B91C: +/* 8023B91C 0023887C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8023B920 00238880 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8023B924 00238884 83 C1 00 08 */ lwz r30, 8(r1) +/* 8023B928 00238888 7C 08 03 A6 */ mtlr r0 +/* 8023B92C 0023888C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8023B930 00238890 4E 80 00 20 */ blr + +.global sub_8023b934 +sub_8023b934: +/* 8023B934 00238894 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 8023B938 00238898 7C 08 02 A6 */ mflr r0 +/* 8023B93C 0023889C 90 01 01 04 */ stw r0, 0x104(r1) +/* 8023B940 002388A0 DB E1 00 F0 */ stfd f31, 0xf0(r1) +/* 8023B944 002388A4 F3 E1 00 F8 */ psq_st f31, 248(r1), 0, qr0 +/* 8023B948 002388A8 DB C1 00 E0 */ stfd f30, 0xe0(r1) +/* 8023B94C 002388AC F3 C1 00 E8 */ psq_st f30, 232(r1), 0, qr0 +/* 8023B950 002388B0 93 E1 00 DC */ stw r31, 0xdc(r1) +/* 8023B954 002388B4 93 C1 00 D8 */ stw r30, 0xd8(r1) +/* 8023B958 002388B8 93 A1 00 D4 */ stw r29, 0xd4(r1) +/* 8023B95C 002388BC 88 0D A5 31 */ lbz r0, lbl_805A90F1@sda21(r13) +/* 8023B960 002388C0 7C 7F 1B 78 */ mr r31, r3 +/* 8023B964 002388C4 7C 9D 23 78 */ mr r29, r4 +/* 8023B968 002388C8 7C BE 2B 78 */ mr r30, r5 +/* 8023B96C 002388CC 7C 00 07 75 */ extsb. r0, r0 +/* 8023B970 002388D0 40 82 00 40 */ bne lbl_8023B9B0 +/* 8023B974 002388D4 80 AD 96 84 */ lwz r5, lbl_805A8244@sda21(r13) +/* 8023B978 002388D8 38 60 00 00 */ li r3, 0 +/* 8023B97C 002388DC 38 80 00 01 */ li r4, 1 +/* 8023B980 002388E0 48 14 E5 75 */ bl __shl2i +/* 8023B984 002388E4 3C A0 80 47 */ lis r5, lbl_8046D378@ha +/* 8023B988 002388E8 38 C0 00 01 */ li r6, 1 +/* 8023B98C 002388EC 38 A5 D3 78 */ addi r5, r5, lbl_8046D378@l +/* 8023B990 002388F0 38 00 00 00 */ li r0, 0 +/* 8023B994 002388F4 90 C1 00 40 */ stw r6, 0x40(r1) +/* 8023B998 002388F8 90 85 00 04 */ stw r4, 4(r5) +/* 8023B99C 002388FC 90 65 00 00 */ stw r3, 0(r5) +/* 8023B9A0 00238900 90 05 00 0C */ stw r0, 0xc(r5) +/* 8023B9A4 00238904 90 05 00 08 */ stw r0, 8(r5) +/* 8023B9A8 00238908 90 C5 00 10 */ stw r6, 0x10(r5) +/* 8023B9AC 0023890C 98 CD A5 31 */ stb r6, lbl_805A90F1@sda21(r13) +lbl_8023B9B0: +/* 8023B9B0 00238910 C3 DF 00 F8 */ lfs f30, 0xf8(r31) +/* 8023B9B4 00238914 7F E3 FB 78 */ mr r3, r31 +/* 8023B9B8 00238918 7F A4 EB 78 */ mr r4, r29 +/* 8023B9BC 0023891C 48 00 02 0D */ bl sub_8023bbc8 +/* 8023B9C0 00238920 FF E0 08 90 */ fmr f31, f1 +/* 8023B9C4 00238924 7F E3 FB 78 */ mr r3, r31 +/* 8023B9C8 00238928 7F A4 EB 78 */ mr r4, r29 +/* 8023B9CC 0023892C 48 00 02 6D */ bl sub_8023bc38 +/* 8023B9D0 00238930 C0 5D 00 04 */ lfs f2, 4(r29) +/* 8023B9D4 00238934 3C 60 80 47 */ lis r3, lbl_8046D378@ha +/* 8023B9D8 00238938 C0 7D 00 08 */ lfs f3, 8(r29) +/* 8023B9DC 0023893C 38 E3 D3 78 */ addi r7, r3, lbl_8046D378@l +/* 8023B9E0 00238940 EC A2 F8 2A */ fadds f5, f2, f31 +/* 8023B9E4 00238944 C0 1D 00 00 */ lfs f0, 0(r29) +/* 8023B9E8 00238948 EC 83 F0 2A */ fadds f4, f3, f30 +/* 8023B9EC 0023894C C0 42 B7 68 */ lfs f2, lbl_805AD488@sda21(r2) +/* 8023B9F0 00238950 EC 60 08 2A */ fadds f3, f0, f1 +/* 8023B9F4 00238954 C0 02 B7 6C */ lfs f0, lbl_805AD48C@sda21(r2) +/* 8023B9F8 00238958 D0 A1 00 24 */ stfs f5, 0x24(r1) +/* 8023B9FC 0023895C 7F C4 F3 78 */ mr r4, r30 +/* 8023BA00 00238960 C0 22 B7 70 */ lfs f1, lbl_805AD490@sda21(r2) +/* 8023BA04 00238964 38 61 00 48 */ addi r3, r1, 0x48 +/* 8023BA08 00238968 D0 61 00 20 */ stfs f3, 0x20(r1) +/* 8023BA0C 0023896C 38 A1 00 20 */ addi r5, r1, 0x20 +/* 8023BA10 00238970 38 C1 00 14 */ addi r6, r1, 0x14 +/* 8023BA14 00238974 D0 81 00 28 */ stfs f4, 0x28(r1) +/* 8023BA18 00238978 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 8023BA1C 0023897C D0 41 00 18 */ stfs f2, 0x18(r1) +/* 8023BA20 00238980 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8023BA24 00238984 C0 1F 00 F8 */ lfs f0, 0xf8(r31) +/* 8023BA28 00238988 EC 21 00 32 */ fmuls f1, f1, f0 +/* 8023BA2C 0023898C 4B E1 15 6D */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter +/* 8023BA30 00238990 88 81 00 68 */ lbz r4, 0x68(r1) +/* 8023BA34 00238994 C0 41 00 48 */ lfs f2, 0x48(r1) +/* 8023BA38 00238998 C1 01 00 4C */ lfs f8, 0x4c(r1) +/* 8023BA3C 0023899C 28 04 00 00 */ cmplwi r4, 0 +/* 8023BA40 002389A0 C0 E1 00 50 */ lfs f7, 0x50(r1) +/* 8023BA44 002389A4 C0 C1 00 54 */ lfs f6, 0x54(r1) +/* 8023BA48 002389A8 C0 A1 00 58 */ lfs f5, 0x58(r1) +/* 8023BA4C 002389AC C0 21 00 5C */ lfs f1, 0x5c(r1) +/* 8023BA50 002389B0 C0 81 00 60 */ lfs f4, 0x60(r1) +/* 8023BA54 002389B4 C0 01 00 64 */ lfs f0, 0x64(r1) +/* 8023BA58 002389B8 80 01 00 70 */ lwz r0, 0x70(r1) +/* 8023BA5C 002389BC 80 61 00 74 */ lwz r3, 0x74(r1) +/* 8023BA60 002389C0 D0 41 00 A0 */ stfs f2, 0xa0(r1) +/* 8023BA64 002389C4 D1 01 00 A4 */ stfs f8, 0xa4(r1) +/* 8023BA68 002389C8 D0 E1 00 A8 */ stfs f7, 0xa8(r1) +/* 8023BA6C 002389CC D0 C1 00 AC */ stfs f6, 0xac(r1) +/* 8023BA70 002389D0 D0 A1 00 B0 */ stfs f5, 0xb0(r1) +/* 8023BA74 002389D4 D0 21 00 B4 */ stfs f1, 0xb4(r1) +/* 8023BA78 002389D8 D0 81 00 B8 */ stfs f4, 0xb8(r1) +/* 8023BA7C 002389DC D0 01 00 BC */ stfs f0, 0xbc(r1) +/* 8023BA80 002389E0 98 81 00 C0 */ stb r4, 0xc0(r1) +/* 8023BA84 002389E4 90 61 00 CC */ stw r3, 0xcc(r1) +/* 8023BA88 002389E8 90 01 00 C8 */ stw r0, 0xc8(r1) +/* 8023BA8C 002389EC 41 82 01 0C */ beq lbl_8023BB98 +/* 8023BA90 002389F0 C0 42 B7 68 */ lfs f2, lbl_805AD488@sda21(r2) +/* 8023BA94 002389F4 C0 62 B7 74 */ lfs f3, lbl_805AD494@sda21(r2) +/* 8023BA98 002389F8 EC 21 00 B2 */ fmuls f1, f1, f2 +/* 8023BA9C 002389FC C0 1F 01 1C */ lfs f0, 0x11c(r31) +/* 8023BAA0 00238A00 EC 25 08 BA */ fmadds f1, f5, f2, f1 +/* 8023BAA4 00238A04 EC 24 08 FA */ fmadds f1, f4, f3, f1 +/* 8023BAA8 00238A08 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8023BAAC 00238A0C 40 81 00 EC */ ble lbl_8023BB98 +/* 8023BAB0 00238A10 C0 3F 01 28 */ lfs f1, 0x128(r31) +/* 8023BAB4 00238A14 EC 67 10 28 */ fsubs f3, f7, f2 +/* 8023BAB8 00238A18 EC 08 10 28 */ fsubs f0, f8, f2 +/* 8023BABC 00238A1C EC 26 08 28 */ fsubs f1, f6, f1 +/* 8023BAC0 00238A20 D0 61 00 0C */ stfs f3, 0xc(r1) +/* 8023BAC4 00238A24 D0 01 00 08 */ stfs f0, 8(r1) +/* 8023BAC8 00238A28 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 8023BACC 00238A2C C3 DF 01 20 */ lfs f30, 0x120(r31) +/* 8023BAD0 00238A30 80 7E 09 00 */ lwz r3, 0x900(r30) +/* 8023BAD4 00238A34 48 0D 6A 09 */ bl Float__9CRandom16Fv +/* 8023BAD8 00238A38 C0 1F 01 24 */ lfs f0, 0x124(r31) +/* 8023BADC 00238A3C 38 61 00 78 */ addi r3, r1, 0x78 +/* 8023BAE0 00238A40 C0 5F 01 14 */ lfs f2, 0x114(r31) +/* 8023BAE4 00238A44 38 81 00 08 */ addi r4, r1, 8 +/* 8023BAE8 00238A48 EC 60 F0 28 */ fsubs f3, f0, f30 +/* 8023BAEC 00238A4C C0 1F 01 18 */ lfs f0, 0x118(r31) +/* 8023BAF0 00238A50 EC 42 00 2A */ fadds f2, f2, f0 +/* 8023BAF4 00238A54 EC 63 F0 7A */ fmadds f3, f3, f1, f30 +/* 8023BAF8 00238A58 C0 3F 01 10 */ lfs f1, 0x110(r31) +/* 8023BAFC 00238A5C 48 00 28 B5 */ bl sub_8023e3b0 +/* 8023BB00 00238A60 80 1F 01 34 */ lwz r0, 0x134(r31) +/* 8023BB04 00238A64 80 BF 01 38 */ lwz r5, 0x138(r31) +/* 8023BB08 00238A68 7C 00 28 00 */ cmpw r0, r5 +/* 8023BB0C 00238A6C 41 80 00 1C */ blt lbl_8023BB28 +/* 8023BB10 00238A70 2C 05 00 00 */ cmpwi r5, 0 +/* 8023BB14 00238A74 38 7F 01 30 */ addi r3, r31, 0x130 +/* 8023BB18 00238A78 38 80 00 04 */ li r4, 4 +/* 8023BB1C 00238A7C 41 82 00 08 */ beq lbl_8023BB24 +/* 8023BB20 00238A80 54 A4 08 3C */ slwi r4, r5, 1 +lbl_8023BB24: +/* 8023BB24 00238A84 48 00 28 BD */ bl sub_8023e3e0 +lbl_8023BB28: +/* 8023BB28 00238A88 80 1F 01 34 */ lwz r0, 0x134(r31) +/* 8023BB2C 00238A8C 80 7F 01 3C */ lwz r3, 0x13c(r31) +/* 8023BB30 00238A90 1C 00 00 24 */ mulli r0, r0, 0x24 +/* 8023BB34 00238A94 7C 63 02 15 */ add. r3, r3, r0 +/* 8023BB38 00238A98 41 82 00 4C */ beq lbl_8023BB84 +/* 8023BB3C 00238A9C C0 01 00 78 */ lfs f0, 0x78(r1) +/* 8023BB40 00238AA0 D0 03 00 00 */ stfs f0, 0(r3) +/* 8023BB44 00238AA4 C0 01 00 7C */ lfs f0, 0x7c(r1) +/* 8023BB48 00238AA8 D0 03 00 04 */ stfs f0, 4(r3) +/* 8023BB4C 00238AAC C0 01 00 80 */ lfs f0, 0x80(r1) +/* 8023BB50 00238AB0 D0 03 00 08 */ stfs f0, 8(r3) +/* 8023BB54 00238AB4 80 01 00 84 */ lwz r0, 0x84(r1) +/* 8023BB58 00238AB8 90 03 00 0C */ stw r0, 0xc(r3) +/* 8023BB5C 00238ABC C0 01 00 88 */ lfs f0, 0x88(r1) +/* 8023BB60 00238AC0 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 8023BB64 00238AC4 C0 01 00 8C */ lfs f0, 0x8c(r1) +/* 8023BB68 00238AC8 D0 03 00 14 */ stfs f0, 0x14(r3) +/* 8023BB6C 00238ACC C0 01 00 90 */ lfs f0, 0x90(r1) +/* 8023BB70 00238AD0 D0 03 00 18 */ stfs f0, 0x18(r3) +/* 8023BB74 00238AD4 C0 01 00 94 */ lfs f0, 0x94(r1) +/* 8023BB78 00238AD8 D0 03 00 1C */ stfs f0, 0x1c(r3) +/* 8023BB7C 00238ADC C0 01 00 98 */ lfs f0, 0x98(r1) +/* 8023BB80 00238AE0 D0 03 00 20 */ stfs f0, 0x20(r3) +lbl_8023BB84: +/* 8023BB84 00238AE4 80 9F 01 34 */ lwz r4, 0x134(r31) +/* 8023BB88 00238AE8 38 60 00 01 */ li r3, 1 +/* 8023BB8C 00238AEC 38 04 00 01 */ addi r0, r4, 1 +/* 8023BB90 00238AF0 90 1F 01 34 */ stw r0, 0x134(r31) +/* 8023BB94 00238AF4 48 00 00 08 */ b lbl_8023BB9C +lbl_8023BB98: +/* 8023BB98 00238AF8 38 60 00 00 */ li r3, 0 +lbl_8023BB9C: +/* 8023BB9C 00238AFC E3 E1 00 F8 */ psq_l f31, 248(r1), 0, qr0 +/* 8023BBA0 00238B00 CB E1 00 F0 */ lfd f31, 0xf0(r1) +/* 8023BBA4 00238B04 E3 C1 00 E8 */ psq_l f30, 232(r1), 0, qr0 +/* 8023BBA8 00238B08 CB C1 00 E0 */ lfd f30, 0xe0(r1) +/* 8023BBAC 00238B0C 83 E1 00 DC */ lwz r31, 0xdc(r1) +/* 8023BBB0 00238B10 83 C1 00 D8 */ lwz r30, 0xd8(r1) +/* 8023BBB4 00238B14 80 01 01 04 */ lwz r0, 0x104(r1) +/* 8023BBB8 00238B18 83 A1 00 D4 */ lwz r29, 0xd4(r1) +/* 8023BBBC 00238B1C 7C 08 03 A6 */ mtlr r0 +/* 8023BBC0 00238B20 38 21 01 00 */ addi r1, r1, 0x100 +/* 8023BBC4 00238B24 4E 80 00 20 */ blr + +.global sub_8023bbc8 +sub_8023bbc8: +/* 8023BBC8 00238B28 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8023BBCC 00238B2C 3C 00 43 30 */ lis r0, 0x4330 +/* 8023BBD0 00238B30 C0 22 B7 7C */ lfs f1, lbl_805AD49C@sda21(r2) +/* 8023BBD4 00238B34 C0 04 00 00 */ lfs f0, 0(r4) +/* 8023BBD8 00238B38 C0 A2 B7 78 */ lfs f5, lbl_805AD498@sda21(r2) +/* 8023BBDC 00238B3C EC 00 00 32 */ fmuls f0, f0, f0 +/* 8023BBE0 00238B40 C0 64 00 04 */ lfs f3, 4(r4) +/* 8023BBE4 00238B44 90 01 00 10 */ stw r0, 0x10(r1) +/* 8023BBE8 00238B48 C8 82 B7 80 */ lfd f4, lbl_805AD4A0@sda21(r2) +/* 8023BBEC 00238B4C EC 21 00 32 */ fmuls f1, f1, f0 +/* 8023BBF0 00238B50 C0 42 B7 70 */ lfs f2, lbl_805AD490@sda21(r2) +/* 8023BBF4 00238B54 C0 02 B7 74 */ lfs f0, lbl_805AD494@sda21(r2) +/* 8023BBF8 00238B58 EC A5 08 FA */ fmadds f5, f5, f3, f1 +/* 8023BBFC 00238B5C C0 63 00 FC */ lfs f3, 0xfc(r3) +/* 8023BC00 00238B60 FC 20 28 1E */ fctiwz f1, f5 +/* 8023BC04 00238B64 D8 21 00 08 */ stfd f1, 8(r1) +/* 8023BC08 00238B68 80 01 00 0C */ lwz r0, 0xc(r1) +/* 8023BC0C 00238B6C 6C 00 80 00 */ xoris r0, r0, 0x8000 +/* 8023BC10 00238B70 90 01 00 14 */ stw r0, 0x14(r1) +/* 8023BC14 00238B74 C8 21 00 10 */ lfd f1, 0x10(r1) +/* 8023BC18 00238B78 EC 21 20 28 */ fsubs f1, f1, f4 +/* 8023BC1C 00238B7C EC 25 08 28 */ fsubs f1, f5, f1 +/* 8023BC20 00238B80 FC 20 0A 10 */ fabs f1, f1 +/* 8023BC24 00238B84 FC 20 08 18 */ frsp f1, f1 +/* 8023BC28 00238B88 EC 02 00 78 */ fmsubs f0, f2, f1, f0 +/* 8023BC2C 00238B8C EC 23 00 32 */ fmuls f1, f3, f0 +/* 8023BC30 00238B90 38 21 00 20 */ addi r1, r1, 0x20 +/* 8023BC34 00238B94 4E 80 00 20 */ blr + +.global sub_8023bc38 +sub_8023bc38: +/* 8023BC38 00238B98 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8023BC3C 00238B9C 3C 00 43 30 */ lis r0, 0x4330 +/* 8023BC40 00238BA0 C0 22 B7 8C */ lfs f1, lbl_805AD4AC@sda21(r2) +/* 8023BC44 00238BA4 C0 04 00 04 */ lfs f0, 4(r4) +/* 8023BC48 00238BA8 C0 A2 B7 88 */ lfs f5, lbl_805AD4A8@sda21(r2) +/* 8023BC4C 00238BAC EC 00 00 32 */ fmuls f0, f0, f0 +/* 8023BC50 00238BB0 C0 64 00 00 */ lfs f3, 0(r4) +/* 8023BC54 00238BB4 90 01 00 10 */ stw r0, 0x10(r1) +/* 8023BC58 00238BB8 C8 82 B7 80 */ lfd f4, lbl_805AD4A0@sda21(r2) +/* 8023BC5C 00238BBC EC 21 00 32 */ fmuls f1, f1, f0 +/* 8023BC60 00238BC0 C0 42 B7 70 */ lfs f2, lbl_805AD490@sda21(r2) +/* 8023BC64 00238BC4 C0 02 B7 74 */ lfs f0, lbl_805AD494@sda21(r2) +/* 8023BC68 00238BC8 EC A5 08 FA */ fmadds f5, f5, f3, f1 +/* 8023BC6C 00238BCC C0 63 00 FC */ lfs f3, 0xfc(r3) +/* 8023BC70 00238BD0 FC 20 28 1E */ fctiwz f1, f5 +/* 8023BC74 00238BD4 D8 21 00 08 */ stfd f1, 8(r1) +/* 8023BC78 00238BD8 80 01 00 0C */ lwz r0, 0xc(r1) +/* 8023BC7C 00238BDC 6C 00 80 00 */ xoris r0, r0, 0x8000 +/* 8023BC80 00238BE0 90 01 00 14 */ stw r0, 0x14(r1) +/* 8023BC84 00238BE4 C8 21 00 10 */ lfd f1, 0x10(r1) +/* 8023BC88 00238BE8 EC 21 20 28 */ fsubs f1, f1, f4 +/* 8023BC8C 00238BEC EC 25 08 28 */ fsubs f1, f5, f1 +/* 8023BC90 00238BF0 FC 20 0A 10 */ fabs f1, f1 +/* 8023BC94 00238BF4 FC 20 08 18 */ frsp f1, f1 +/* 8023BC98 00238BF8 EC 02 00 78 */ fmsubs f0, f2, f1, f0 +/* 8023BC9C 00238BFC EC 23 00 32 */ fmuls f1, f3, f0 +/* 8023BCA0 00238C00 38 21 00 20 */ addi r1, r1, 0x20 +/* 8023BCA4 00238C04 4E 80 00 20 */ blr + +.global sub_8023bca8 +sub_8023bca8: +/* 8023BCA8 00238C08 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 8023BCAC 00238C0C 7C 08 02 A6 */ mflr r0 +/* 8023BCB0 00238C10 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 8023BCB4 00238C14 BF 61 00 BC */ stmw r27, 0xbc(r1) +/* 8023BCB8 00238C18 7C 7B 1B 78 */ mr r27, r3 +/* 8023BCBC 00238C1C 7C 9C 23 78 */ mr r28, r4 +/* 8023BCC0 00238C20 7C BD 2B 78 */ mr r29, r5 +/* 8023BCC4 00238C24 48 00 04 91 */ bl sub_8023c154 +/* 8023BCC8 00238C28 7C 7F 1B 78 */ mr r31, r3 +/* 8023BCCC 00238C2C 3B C0 00 00 */ li r30, 0 +/* 8023BCD0 00238C30 48 00 01 F0 */ b lbl_8023BEC0 +lbl_8023BCD4: +/* 8023BCD4 00238C34 80 A3 00 04 */ lwz r5, 4(r3) +/* 8023BCD8 00238C38 7F 64 DB 78 */ mr r4, r27 +/* 8023BCDC 00238C3C 80 C3 00 0C */ lwz r6, 0xc(r3) +/* 8023BCE0 00238C40 38 61 00 28 */ addi r3, r1, 0x28 +/* 8023BCE4 00238C44 38 05 FF FF */ addi r0, r5, -1 +/* 8023BCE8 00238C48 38 A1 00 98 */ addi r5, r1, 0x98 +/* 8023BCEC 00238C4C 1C 00 00 0C */ mulli r0, r0, 0xc +/* 8023BCF0 00238C50 7C C6 02 14 */ add r6, r6, r0 +/* 8023BCF4 00238C54 C0 06 00 00 */ lfs f0, 0(r6) +/* 8023BCF8 00238C58 D0 01 00 A4 */ stfs f0, 0xa4(r1) +/* 8023BCFC 00238C5C C0 06 00 04 */ lfs f0, 4(r6) +/* 8023BD00 00238C60 D0 01 00 A8 */ stfs f0, 0xa8(r1) +/* 8023BD04 00238C64 C0 06 00 08 */ lfs f0, 8(r6) +/* 8023BD08 00238C68 D0 01 00 AC */ stfs f0, 0xac(r1) +/* 8023BD0C 00238C6C 80 FB 01 C8 */ lwz r7, 0x1c8(r27) +/* 8023BD10 00238C70 80 C7 00 04 */ lwz r6, 4(r7) +/* 8023BD14 00238C74 38 06 FF FF */ addi r0, r6, -1 +/* 8023BD18 00238C78 90 07 00 04 */ stw r0, 4(r7) +/* 8023BD1C 00238C7C 80 E1 00 A4 */ lwz r7, 0xa4(r1) +/* 8023BD20 00238C80 80 C1 00 A8 */ lwz r6, 0xa8(r1) +/* 8023BD24 00238C84 80 01 00 AC */ lwz r0, 0xac(r1) +/* 8023BD28 00238C88 90 E1 00 98 */ stw r7, 0x98(r1) +/* 8023BD2C 00238C8C 90 C1 00 9C */ stw r6, 0x9c(r1) +/* 8023BD30 00238C90 90 01 00 A0 */ stw r0, 0xa0(r1) +/* 8023BD34 00238C94 48 00 04 79 */ bl sub_8023c1ac +/* 8023BD38 00238C98 80 81 00 28 */ lwz r4, 0x28(r1) +/* 8023BD3C 00238C9C 7F 63 DB 78 */ mr r3, r27 +/* 8023BD40 00238CA0 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 8023BD44 00238CA4 7F 85 E3 78 */ mr r5, r28 +/* 8023BD48 00238CA8 90 81 00 30 */ stw r4, 0x30(r1) +/* 8023BD4C 00238CAC 38 81 00 A4 */ addi r4, r1, 0xa4 +/* 8023BD50 00238CB0 90 01 00 34 */ stw r0, 0x34(r1) +/* 8023BD54 00238CB4 4B FF FB E1 */ bl sub_8023b934 +/* 8023BD58 00238CB8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8023BD5C 00238CBC 41 82 01 3C */ beq lbl_8023BE98 +/* 8023BD60 00238CC0 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8023BD64 00238CC4 38 E0 00 03 */ li r7, 3 +/* 8023BD68 00238CC8 80 9B 01 CC */ lwz r4, 0x1cc(r27) +/* 8023BD6C 00238CCC 7F 63 DB 78 */ mr r3, r27 +/* 8023BD70 00238CD0 7C 1F 01 D6 */ mullw r0, r31, r0 +/* 8023BD74 00238CD4 80 A1 00 30 */ lwz r5, 0x30(r1) +/* 8023BD78 00238CD8 80 C4 00 0C */ lwz r6, 0xc(r4) +/* 8023BD7C 00238CDC 38 81 00 8C */ addi r4, r1, 0x8c +/* 8023BD80 00238CE0 7C 05 02 14 */ add r0, r5, r0 +/* 8023BD84 00238CE4 54 00 10 3A */ slwi r0, r0, 2 +/* 8023BD88 00238CE8 7C E6 01 2E */ stwx r7, r6, r0 +/* 8023BD8C 00238CEC C0 41 00 A8 */ lfs f2, 0xa8(r1) +/* 8023BD90 00238CF0 C0 1B 00 F4 */ lfs f0, 0xf4(r27) +/* 8023BD94 00238CF4 C0 21 00 A4 */ lfs f1, 0xa4(r1) +/* 8023BD98 00238CF8 EC 42 00 28 */ fsubs f2, f2, f0 +/* 8023BD9C 00238CFC C0 01 00 AC */ lfs f0, 0xac(r1) +/* 8023BDA0 00238D00 D0 21 00 80 */ stfs f1, 0x80(r1) +/* 8023BDA4 00238D04 D0 41 00 84 */ stfs f2, 0x84(r1) +/* 8023BDA8 00238D08 80 C1 00 80 */ lwz r6, 0x80(r1) +/* 8023BDAC 00238D0C D0 01 00 88 */ stfs f0, 0x88(r1) +/* 8023BDB0 00238D10 80 A1 00 84 */ lwz r5, 0x84(r1) +/* 8023BDB4 00238D14 80 01 00 88 */ lwz r0, 0x88(r1) +/* 8023BDB8 00238D18 90 C1 00 8C */ stw r6, 0x8c(r1) +/* 8023BDBC 00238D1C 90 A1 00 90 */ stw r5, 0x90(r1) +/* 8023BDC0 00238D20 90 01 00 94 */ stw r0, 0x94(r1) +/* 8023BDC4 00238D24 48 00 01 F5 */ bl sub_8023bfb8 +/* 8023BDC8 00238D28 C0 5B 00 F4 */ lfs f2, 0xf4(r27) +/* 8023BDCC 00238D2C 7F 63 DB 78 */ mr r3, r27 +/* 8023BDD0 00238D30 C0 01 00 A8 */ lfs f0, 0xa8(r1) +/* 8023BDD4 00238D34 38 81 00 74 */ addi r4, r1, 0x74 +/* 8023BDD8 00238D38 C0 21 00 A4 */ lfs f1, 0xa4(r1) +/* 8023BDDC 00238D3C EC 42 00 2A */ fadds f2, f2, f0 +/* 8023BDE0 00238D40 C0 01 00 AC */ lfs f0, 0xac(r1) +/* 8023BDE4 00238D44 D0 21 00 68 */ stfs f1, 0x68(r1) +/* 8023BDE8 00238D48 D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 8023BDEC 00238D4C 80 C1 00 68 */ lwz r6, 0x68(r1) +/* 8023BDF0 00238D50 D0 01 00 70 */ stfs f0, 0x70(r1) +/* 8023BDF4 00238D54 80 A1 00 6C */ lwz r5, 0x6c(r1) +/* 8023BDF8 00238D58 80 01 00 70 */ lwz r0, 0x70(r1) +/* 8023BDFC 00238D5C 90 C1 00 74 */ stw r6, 0x74(r1) +/* 8023BE00 00238D60 90 A1 00 78 */ stw r5, 0x78(r1) +/* 8023BE04 00238D64 90 01 00 7C */ stw r0, 0x7c(r1) +/* 8023BE08 00238D68 48 00 01 B1 */ bl sub_8023bfb8 +/* 8023BE0C 00238D6C C0 41 00 A4 */ lfs f2, 0xa4(r1) +/* 8023BE10 00238D70 7F 63 DB 78 */ mr r3, r27 +/* 8023BE14 00238D74 C0 1B 00 F4 */ lfs f0, 0xf4(r27) +/* 8023BE18 00238D78 38 81 00 5C */ addi r4, r1, 0x5c +/* 8023BE1C 00238D7C C0 21 00 A8 */ lfs f1, 0xa8(r1) +/* 8023BE20 00238D80 EC 42 00 28 */ fsubs f2, f2, f0 +/* 8023BE24 00238D84 C0 01 00 AC */ lfs f0, 0xac(r1) +/* 8023BE28 00238D88 D0 21 00 54 */ stfs f1, 0x54(r1) +/* 8023BE2C 00238D8C D0 41 00 50 */ stfs f2, 0x50(r1) +/* 8023BE30 00238D90 80 A1 00 54 */ lwz r5, 0x54(r1) +/* 8023BE34 00238D94 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 8023BE38 00238D98 80 C1 00 50 */ lwz r6, 0x50(r1) +/* 8023BE3C 00238D9C 80 01 00 58 */ lwz r0, 0x58(r1) +/* 8023BE40 00238DA0 90 C1 00 5C */ stw r6, 0x5c(r1) +/* 8023BE44 00238DA4 90 A1 00 60 */ stw r5, 0x60(r1) +/* 8023BE48 00238DA8 90 01 00 64 */ stw r0, 0x64(r1) +/* 8023BE4C 00238DAC 48 00 01 6D */ bl sub_8023bfb8 +/* 8023BE50 00238DB0 C0 5B 00 F4 */ lfs f2, 0xf4(r27) +/* 8023BE54 00238DB4 7F 63 DB 78 */ mr r3, r27 +/* 8023BE58 00238DB8 C0 01 00 A4 */ lfs f0, 0xa4(r1) +/* 8023BE5C 00238DBC 38 81 00 44 */ addi r4, r1, 0x44 +/* 8023BE60 00238DC0 C0 21 00 A8 */ lfs f1, 0xa8(r1) +/* 8023BE64 00238DC4 EC 42 00 2A */ fadds f2, f2, f0 +/* 8023BE68 00238DC8 C0 01 00 AC */ lfs f0, 0xac(r1) +/* 8023BE6C 00238DCC D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 8023BE70 00238DD0 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 8023BE74 00238DD4 80 A1 00 3C */ lwz r5, 0x3c(r1) +/* 8023BE78 00238DD8 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 8023BE7C 00238DDC 80 C1 00 38 */ lwz r6, 0x38(r1) +/* 8023BE80 00238DE0 80 01 00 40 */ lwz r0, 0x40(r1) +/* 8023BE84 00238DE4 90 C1 00 44 */ stw r6, 0x44(r1) +/* 8023BE88 00238DE8 90 A1 00 48 */ stw r5, 0x48(r1) +/* 8023BE8C 00238DEC 90 01 00 4C */ stw r0, 0x4c(r1) +/* 8023BE90 00238DF0 48 00 01 29 */ bl sub_8023bfb8 +/* 8023BE94 00238DF4 48 00 00 28 */ b lbl_8023BEBC +lbl_8023BE98: +/* 8023BE98 00238DF8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8023BE9C 00238DFC 38 A0 00 02 */ li r5, 2 +/* 8023BEA0 00238E00 80 9B 01 CC */ lwz r4, 0x1cc(r27) +/* 8023BEA4 00238E04 7C 1F 01 D6 */ mullw r0, r31, r0 +/* 8023BEA8 00238E08 80 61 00 30 */ lwz r3, 0x30(r1) +/* 8023BEAC 00238E0C 80 84 00 0C */ lwz r4, 0xc(r4) +/* 8023BEB0 00238E10 7C 03 02 14 */ add r0, r3, r0 +/* 8023BEB4 00238E14 54 00 10 3A */ slwi r0, r0, 2 +/* 8023BEB8 00238E18 7C A4 01 2E */ stwx r5, r4, r0 +lbl_8023BEBC: +/* 8023BEBC 00238E1C 3B DE 00 01 */ addi r30, r30, 1 +lbl_8023BEC0: +/* 8023BEC0 00238E20 7C 1E E8 00 */ cmpw r30, r29 +/* 8023BEC4 00238E24 40 80 00 14 */ bge lbl_8023BED8 +/* 8023BEC8 00238E28 80 7B 01 C8 */ lwz r3, 0x1c8(r27) +/* 8023BECC 00238E2C 80 03 00 04 */ lwz r0, 4(r3) +/* 8023BED0 00238E30 2C 00 00 00 */ cmpwi r0, 0 +/* 8023BED4 00238E34 41 81 FE 00 */ bgt lbl_8023BCD4 +lbl_8023BED8: +/* 8023BED8 00238E38 7F 63 DB 78 */ mr r3, r27 +/* 8023BEDC 00238E3C 48 00 13 29 */ bl sub_8023d204 +/* 8023BEE0 00238E40 83 9B 01 C8 */ lwz r28, 0x1c8(r27) +/* 8023BEE4 00238E44 80 1C 00 04 */ lwz r0, 4(r28) +/* 8023BEE8 00238E48 2C 00 00 00 */ cmpwi r0, 0 +/* 8023BEEC 00238E4C 40 82 00 B8 */ bne lbl_8023BFA4 +/* 8023BEF0 00238E50 28 1C 00 00 */ cmplwi r28, 0 +/* 8023BEF4 00238E54 41 82 00 4C */ beq lbl_8023BF40 +/* 8023BEF8 00238E58 80 1C 00 04 */ lwz r0, 4(r28) +/* 8023BEFC 00238E5C 80 7C 00 0C */ lwz r3, 0xc(r28) +/* 8023BF00 00238E60 1C 00 00 0C */ mulli r0, r0, 0xc +/* 8023BF04 00238E64 90 61 00 1C */ stw r3, 0x1c(r1) +/* 8023BF08 00238E68 7C 64 1B 78 */ mr r4, r3 +/* 8023BF0C 00238E6C 7C 03 02 14 */ add r0, r3, r0 +/* 8023BF10 00238E70 90 61 00 18 */ stw r3, 0x18(r1) +/* 8023BF14 00238E74 90 01 00 24 */ stw r0, 0x24(r1) +/* 8023BF18 00238E78 90 01 00 20 */ stw r0, 0x20(r1) +/* 8023BF1C 00238E7C 48 00 00 08 */ b lbl_8023BF24 +lbl_8023BF20: +/* 8023BF20 00238E80 38 84 00 0C */ addi r4, r4, 0xc +lbl_8023BF24: +/* 8023BF24 00238E84 7C 04 00 40 */ cmplw r4, r0 +/* 8023BF28 00238E88 40 82 FF F8 */ bne lbl_8023BF20 +/* 8023BF2C 00238E8C 28 03 00 00 */ cmplwi r3, 0 +/* 8023BF30 00238E90 41 82 00 08 */ beq lbl_8023BF38 +/* 8023BF34 00238E94 48 0D 99 FD */ bl Free__7CMemoryFPCv +lbl_8023BF38: +/* 8023BF38 00238E98 7F 83 E3 78 */ mr r3, r28 +/* 8023BF3C 00238E9C 48 0D 99 F5 */ bl Free__7CMemoryFPCv +lbl_8023BF40: +/* 8023BF40 00238EA0 38 00 00 00 */ li r0, 0 +/* 8023BF44 00238EA4 90 1B 01 C8 */ stw r0, 0x1c8(r27) +/* 8023BF48 00238EA8 83 9B 01 CC */ lwz r28, 0x1cc(r27) +/* 8023BF4C 00238EAC 28 1C 00 00 */ cmplwi r28, 0 +/* 8023BF50 00238EB0 41 82 00 4C */ beq lbl_8023BF9C +/* 8023BF54 00238EB4 80 1C 00 04 */ lwz r0, 4(r28) +/* 8023BF58 00238EB8 80 7C 00 0C */ lwz r3, 0xc(r28) +/* 8023BF5C 00238EBC 54 00 10 3A */ slwi r0, r0, 2 +/* 8023BF60 00238EC0 7C 03 02 14 */ add r0, r3, r0 +/* 8023BF64 00238EC4 90 61 00 0C */ stw r3, 0xc(r1) +/* 8023BF68 00238EC8 7C 64 1B 78 */ mr r4, r3 +/* 8023BF6C 00238ECC 90 01 00 14 */ stw r0, 0x14(r1) +/* 8023BF70 00238ED0 90 01 00 10 */ stw r0, 0x10(r1) +/* 8023BF74 00238ED4 90 61 00 08 */ stw r3, 8(r1) +/* 8023BF78 00238ED8 48 00 00 08 */ b lbl_8023BF80 +lbl_8023BF7C: +/* 8023BF7C 00238EDC 38 84 00 04 */ addi r4, r4, 4 +lbl_8023BF80: +/* 8023BF80 00238EE0 7C 04 00 40 */ cmplw r4, r0 +/* 8023BF84 00238EE4 40 82 FF F8 */ bne lbl_8023BF7C +/* 8023BF88 00238EE8 28 03 00 00 */ cmplwi r3, 0 +/* 8023BF8C 00238EEC 41 82 00 08 */ beq lbl_8023BF94 +/* 8023BF90 00238EF0 48 0D 99 A1 */ bl Free__7CMemoryFPCv +lbl_8023BF94: +/* 8023BF94 00238EF4 7F 83 E3 78 */ mr r3, r28 +/* 8023BF98 00238EF8 48 0D 99 99 */ bl Free__7CMemoryFPCv +lbl_8023BF9C: +/* 8023BF9C 00238EFC 38 00 00 00 */ li r0, 0 +/* 8023BFA0 00238F00 90 1B 01 CC */ stw r0, 0x1cc(r27) +lbl_8023BFA4: +/* 8023BFA4 00238F04 BB 61 00 BC */ lmw r27, 0xbc(r1) +/* 8023BFA8 00238F08 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 8023BFAC 00238F0C 7C 08 03 A6 */ mtlr r0 +/* 8023BFB0 00238F10 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 8023BFB4 00238F14 4E 80 00 20 */ blr + +.global sub_8023bfb8 +sub_8023bfb8: +/* 8023BFB8 00238F18 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8023BFBC 00238F1C 7C 08 02 A6 */ mflr r0 +/* 8023BFC0 00238F20 90 01 00 44 */ stw r0, 0x44(r1) +/* 8023BFC4 00238F24 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8023BFC8 00238F28 7C 9F 23 78 */ mr r31, r4 +/* 8023BFCC 00238F2C 93 C1 00 38 */ stw r30, 0x38(r1) +/* 8023BFD0 00238F30 93 A1 00 34 */ stw r29, 0x34(r1) +/* 8023BFD4 00238F34 93 81 00 30 */ stw r28, 0x30(r1) +/* 8023BFD8 00238F38 7C 7C 1B 78 */ mr r28, r3 +/* 8023BFDC 00238F3C 48 00 01 79 */ bl sub_8023c154 +/* 8023BFE0 00238F40 7C 7D 1B 78 */ mr r29, r3 +/* 8023BFE4 00238F44 7F 83 E3 78 */ mr r3, r28 +/* 8023BFE8 00238F48 48 00 01 15 */ bl sub_8023c0fc +/* 8023BFEC 00238F4C 80 BF 00 00 */ lwz r5, 0(r31) +/* 8023BFF0 00238F50 7C 7E 1B 78 */ mr r30, r3 +/* 8023BFF4 00238F54 80 DF 00 04 */ lwz r6, 4(r31) +/* 8023BFF8 00238F58 7F 84 E3 78 */ mr r4, r28 +/* 8023BFFC 00238F5C 80 1F 00 08 */ lwz r0, 8(r31) +/* 8023C000 00238F60 38 61 00 08 */ addi r3, r1, 8 +/* 8023C004 00238F64 90 A1 00 18 */ stw r5, 0x18(r1) +/* 8023C008 00238F68 38 A1 00 18 */ addi r5, r1, 0x18 +/* 8023C00C 00238F6C 90 C1 00 1C */ stw r6, 0x1c(r1) +/* 8023C010 00238F70 90 01 00 20 */ stw r0, 0x20(r1) +/* 8023C014 00238F74 48 00 01 99 */ bl sub_8023c1ac +/* 8023C018 00238F78 80 81 00 08 */ lwz r4, 8(r1) +/* 8023C01C 00238F7C 80 01 00 0C */ lwz r0, 0xc(r1) +/* 8023C020 00238F80 2C 04 00 00 */ cmpwi r4, 0 +/* 8023C024 00238F84 90 81 00 10 */ stw r4, 0x10(r1) +/* 8023C028 00238F88 90 01 00 14 */ stw r0, 0x14(r1) +/* 8023C02C 00238F8C 41 80 00 B0 */ blt lbl_8023C0DC +/* 8023C030 00238F90 7C 04 E8 00 */ cmpw r4, r29 +/* 8023C034 00238F94 41 80 00 08 */ blt lbl_8023C03C +/* 8023C038 00238F98 48 00 00 A4 */ b lbl_8023C0DC +lbl_8023C03C: +/* 8023C03C 00238F9C 2C 00 00 00 */ cmpwi r0, 0 +/* 8023C040 00238FA0 41 80 00 9C */ blt lbl_8023C0DC +/* 8023C044 00238FA4 7C 00 F0 00 */ cmpw r0, r30 +/* 8023C048 00238FA8 41 80 00 08 */ blt lbl_8023C050 +/* 8023C04C 00238FAC 48 00 00 90 */ b lbl_8023C0DC +lbl_8023C050: +/* 8023C050 00238FB0 7C 1D 01 D6 */ mullw r0, r29, r0 +/* 8023C054 00238FB4 80 7C 01 CC */ lwz r3, 0x1cc(r28) +/* 8023C058 00238FB8 80 63 00 0C */ lwz r3, 0xc(r3) +/* 8023C05C 00238FBC 7C 04 02 14 */ add r0, r4, r0 +/* 8023C060 00238FC0 54 04 10 3A */ slwi r4, r0, 2 +/* 8023C064 00238FC4 7C 03 20 2E */ lwzx r0, r3, r4 +/* 8023C068 00238FC8 2C 00 00 00 */ cmpwi r0, 0 +/* 8023C06C 00238FCC 40 82 00 70 */ bne lbl_8023C0DC +/* 8023C070 00238FD0 38 00 00 01 */ li r0, 1 +/* 8023C074 00238FD4 7C 03 21 2E */ stwx r0, r3, r4 +/* 8023C078 00238FD8 83 BC 01 C8 */ lwz r29, 0x1c8(r28) +/* 8023C07C 00238FDC 80 1D 00 04 */ lwz r0, 4(r29) +/* 8023C080 00238FE0 80 BD 00 08 */ lwz r5, 8(r29) +/* 8023C084 00238FE4 7C 00 28 00 */ cmpw r0, r5 +/* 8023C088 00238FE8 41 80 00 1C */ blt lbl_8023C0A4 +/* 8023C08C 00238FEC 2C 05 00 00 */ cmpwi r5, 0 +/* 8023C090 00238FF0 7F A3 EB 78 */ mr r3, r29 +/* 8023C094 00238FF4 38 80 00 04 */ li r4, 4 +/* 8023C098 00238FF8 41 82 00 08 */ beq lbl_8023C0A0 +/* 8023C09C 00238FFC 54 A4 08 3C */ slwi r4, r5, 1 +lbl_8023C0A0: +/* 8023C0A0 00239000 4B E2 1C 59 */ bl "reserve__Q24rstl45vector<9CVector3f,Q24rstl17rmemory_allocator>Fi" +lbl_8023C0A4: +/* 8023C0A4 00239004 80 1D 00 04 */ lwz r0, 4(r29) +/* 8023C0A8 00239008 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 8023C0AC 0023900C 1C 00 00 0C */ mulli r0, r0, 0xc +/* 8023C0B0 00239010 7C 63 02 15 */ add. r3, r3, r0 +/* 8023C0B4 00239014 41 82 00 1C */ beq lbl_8023C0D0 +/* 8023C0B8 00239018 C0 1F 00 00 */ lfs f0, 0(r31) +/* 8023C0BC 0023901C D0 03 00 00 */ stfs f0, 0(r3) +/* 8023C0C0 00239020 C0 1F 00 04 */ lfs f0, 4(r31) +/* 8023C0C4 00239024 D0 03 00 04 */ stfs f0, 4(r3) +/* 8023C0C8 00239028 C0 1F 00 08 */ lfs f0, 8(r31) +/* 8023C0CC 0023902C D0 03 00 08 */ stfs f0, 8(r3) +lbl_8023C0D0: +/* 8023C0D0 00239030 80 7D 00 04 */ lwz r3, 4(r29) +/* 8023C0D4 00239034 38 03 00 01 */ addi r0, r3, 1 +/* 8023C0D8 00239038 90 1D 00 04 */ stw r0, 4(r29) +lbl_8023C0DC: +/* 8023C0DC 0023903C 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8023C0E0 00239040 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8023C0E4 00239044 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 8023C0E8 00239048 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 8023C0EC 0023904C 83 81 00 30 */ lwz r28, 0x30(r1) +/* 8023C0F0 00239050 7C 08 03 A6 */ mtlr r0 +/* 8023C0F4 00239054 38 21 00 40 */ addi r1, r1, 0x40 +/* 8023C0F8 00239058 4E 80 00 20 */ blr + +.global sub_8023c0fc +sub_8023c0fc: +/* 8023C0FC 0023905C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8023C100 00239060 7C 08 02 A6 */ mflr r0 +/* 8023C104 00239064 90 01 00 34 */ stw r0, 0x34(r1) +/* 8023C108 00239068 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8023C10C 0023906C 7C 7F 1B 78 */ mr r31, r3 +/* 8023C110 00239070 38 61 00 08 */ addi r3, r1, 8 +/* 8023C114 00239074 7F E4 FB 78 */ mr r4, r31 +/* 8023C118 00239078 48 00 12 DD */ bl sub_8023d3f4 +/* 8023C11C 0023907C C0 41 00 18 */ lfs f2, 0x18(r1) +/* 8023C120 00239080 C0 21 00 0C */ lfs f1, 0xc(r1) +/* 8023C124 00239084 C0 1F 00 F4 */ lfs f0, 0xf4(r31) +/* 8023C128 00239088 EC 22 08 28 */ fsubs f1, f2, f1 +/* 8023C12C 0023908C EC 01 00 24 */ fdivs f0, f1, f0 +/* 8023C130 00239090 FC 00 00 1E */ fctiwz f0, f0 +/* 8023C134 00239094 D8 01 00 20 */ stfd f0, 0x20(r1) +/* 8023C138 00239098 80 61 00 24 */ lwz r3, 0x24(r1) +/* 8023C13C 0023909C 38 63 00 01 */ addi r3, r3, 1 +/* 8023C140 002390A0 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8023C144 002390A4 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8023C148 002390A8 7C 08 03 A6 */ mtlr r0 +/* 8023C14C 002390AC 38 21 00 30 */ addi r1, r1, 0x30 +/* 8023C150 002390B0 4E 80 00 20 */ blr + +.global sub_8023c154 +sub_8023c154: +/* 8023C154 002390B4 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8023C158 002390B8 7C 08 02 A6 */ mflr r0 +/* 8023C15C 002390BC 90 01 00 34 */ stw r0, 0x34(r1) +/* 8023C160 002390C0 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8023C164 002390C4 7C 7F 1B 78 */ mr r31, r3 +/* 8023C168 002390C8 38 61 00 08 */ addi r3, r1, 8 +/* 8023C16C 002390CC 7F E4 FB 78 */ mr r4, r31 +/* 8023C170 002390D0 48 00 12 85 */ bl sub_8023d3f4 +/* 8023C174 002390D4 C0 41 00 14 */ lfs f2, 0x14(r1) +/* 8023C178 002390D8 C0 21 00 08 */ lfs f1, 8(r1) +/* 8023C17C 002390DC C0 1F 00 F4 */ lfs f0, 0xf4(r31) +/* 8023C180 002390E0 EC 22 08 28 */ fsubs f1, f2, f1 +/* 8023C184 002390E4 EC 01 00 24 */ fdivs f0, f1, f0 +/* 8023C188 002390E8 FC 00 00 1E */ fctiwz f0, f0 +/* 8023C18C 002390EC D8 01 00 20 */ stfd f0, 0x20(r1) +/* 8023C190 002390F0 80 61 00 24 */ lwz r3, 0x24(r1) +/* 8023C194 002390F4 38 63 00 01 */ addi r3, r3, 1 +/* 8023C198 002390F8 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8023C19C 002390FC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8023C1A0 00239100 7C 08 03 A6 */ mtlr r0 +/* 8023C1A4 00239104 38 21 00 30 */ addi r1, r1, 0x30 +/* 8023C1A8 00239108 4E 80 00 20 */ blr + +.global sub_8023c1ac +sub_8023c1ac: +/* 8023C1AC 0023910C 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8023C1B0 00239110 7C 08 02 A6 */ mflr r0 +/* 8023C1B4 00239114 90 01 00 44 */ stw r0, 0x44(r1) +/* 8023C1B8 00239118 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8023C1BC 0023911C 7C BF 2B 78 */ mr r31, r5 +/* 8023C1C0 00239120 93 C1 00 38 */ stw r30, 0x38(r1) +/* 8023C1C4 00239124 7C 9E 23 78 */ mr r30, r4 +/* 8023C1C8 00239128 93 A1 00 34 */ stw r29, 0x34(r1) +/* 8023C1CC 0023912C 7C 7D 1B 78 */ mr r29, r3 +/* 8023C1D0 00239130 38 61 00 08 */ addi r3, r1, 8 +/* 8023C1D4 00239134 48 00 12 21 */ bl sub_8023d3f4 +/* 8023C1D8 00239138 C0 7F 00 00 */ lfs f3, 0(r31) +/* 8023C1DC 0023913C 7F A3 EB 78 */ mr r3, r29 +/* 8023C1E0 00239140 C0 41 00 08 */ lfs f2, 8(r1) +/* 8023C1E4 00239144 C0 3F 00 04 */ lfs f1, 4(r31) +/* 8023C1E8 00239148 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 8023C1EC 0023914C EC 43 10 28 */ fsubs f2, f3, f2 +/* 8023C1F0 00239150 C0 7E 00 F4 */ lfs f3, 0xf4(r30) +/* 8023C1F4 00239154 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8023C1F8 00239158 EC 22 18 24 */ fdivs f1, f2, f3 +/* 8023C1FC 0023915C EC 00 18 24 */ fdivs f0, f0, f3 +/* 8023C200 00239160 FC 20 08 1E */ fctiwz f1, f1 +/* 8023C204 00239164 FC 00 00 1E */ fctiwz f0, f0 +/* 8023C208 00239168 D8 21 00 20 */ stfd f1, 0x20(r1) +/* 8023C20C 0023916C D8 01 00 28 */ stfd f0, 0x28(r1) +/* 8023C210 00239170 80 81 00 24 */ lwz r4, 0x24(r1) +/* 8023C214 00239174 80 A1 00 2C */ lwz r5, 0x2c(r1) +/* 8023C218 00239178 48 0D 81 35 */ bl __ct__9CVector2iFii +/* 8023C21C 0023917C 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8023C220 00239180 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8023C224 00239184 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 8023C228 00239188 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 8023C22C 0023918C 7C 08 03 A6 */ mtlr r0 +/* 8023C230 00239190 38 21 00 40 */ addi r1, r1, 0x40 +/* 8023C234 00239194 4E 80 00 20 */ blr + +.global sub_8023c238 +sub_8023c238: +/* 8023C238 00239198 94 21 FE E0 */ stwu r1, -0x120(r1) +/* 8023C23C 0023919C 7C 08 02 A6 */ mflr r0 +/* 8023C240 002391A0 90 01 01 24 */ stw r0, 0x124(r1) +/* 8023C244 002391A4 DB E1 01 10 */ stfd f31, 0x110(r1) +/* 8023C248 002391A8 F3 E1 01 18 */ psq_st f31, 280(r1), 0, qr0 +/* 8023C24C 002391AC DB C1 01 00 */ stfd f30, 0x100(r1) +/* 8023C250 002391B0 F3 C1 01 08 */ psq_st f30, 264(r1), 0, qr0 +/* 8023C254 002391B4 DB A1 00 F0 */ stfd f29, 0xf0(r1) +/* 8023C258 002391B8 F3 A1 00 F8 */ psq_st f29, 248(r1), 0, qr0 +/* 8023C25C 002391BC 93 E1 00 EC */ stw r31, 0xec(r1) +/* 8023C260 002391C0 93 C1 00 E8 */ stw r30, 0xe8(r1) +/* 8023C264 002391C4 93 A1 00 E4 */ stw r29, 0xe4(r1) +/* 8023C268 002391C8 88 0D A5 30 */ lbz r0, lbl_805A90F0@sda21(r13) +/* 8023C26C 002391CC 7C 7F 1B 78 */ mr r31, r3 +/* 8023C270 002391D0 7C 9D 23 78 */ mr r29, r4 +/* 8023C274 002391D4 7C 00 07 75 */ extsb. r0, r0 +/* 8023C278 002391D8 40 82 00 40 */ bne lbl_8023C2B8 +/* 8023C27C 002391DC 80 AD 96 7C */ lwz r5, lbl_805A823C@sda21(r13) +/* 8023C280 002391E0 38 60 00 00 */ li r3, 0 +/* 8023C284 002391E4 38 80 00 01 */ li r4, 1 +/* 8023C288 002391E8 48 14 DC 6D */ bl __shl2i +/* 8023C28C 002391EC 3C A0 80 47 */ lis r5, lbl_8046D360@ha +/* 8023C290 002391F0 38 C0 00 01 */ li r6, 1 +/* 8023C294 002391F4 38 A5 D3 60 */ addi r5, r5, lbl_8046D360@l +/* 8023C298 002391F8 38 00 00 00 */ li r0, 0 +/* 8023C29C 002391FC 90 C1 00 58 */ stw r6, 0x58(r1) +/* 8023C2A0 00239200 90 85 00 04 */ stw r4, 4(r5) +/* 8023C2A4 00239204 90 65 00 00 */ stw r3, 0(r5) +/* 8023C2A8 00239208 90 05 00 0C */ stw r0, 0xc(r5) +/* 8023C2AC 0023920C 90 05 00 08 */ stw r0, 8(r5) +/* 8023C2B0 00239210 90 C5 00 10 */ stw r6, 0x10(r5) +/* 8023C2B4 00239214 98 CD A5 30 */ stb r6, lbl_805A90F0@sda21(r13) +lbl_8023C2B8: +/* 8023C2B8 00239218 7F E4 FB 78 */ mr r4, r31 +/* 8023C2BC 0023921C 38 61 00 2C */ addi r3, r1, 0x2c +/* 8023C2C0 00239220 48 00 11 35 */ bl sub_8023d3f4 +/* 8023C2C4 00239224 C0 A1 00 2C */ lfs f5, 0x2c(r1) +/* 8023C2C8 00239228 38 61 00 08 */ addi r3, r1, 8 +/* 8023C2CC 0023922C C0 81 00 30 */ lfs f4, 0x30(r1) +/* 8023C2D0 00239230 38 81 00 60 */ addi r4, r1, 0x60 +/* 8023C2D4 00239234 C0 61 00 34 */ lfs f3, 0x34(r1) +/* 8023C2D8 00239238 C0 41 00 38 */ lfs f2, 0x38(r1) +/* 8023C2DC 0023923C C0 21 00 3C */ lfs f1, 0x3c(r1) +/* 8023C2E0 00239240 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 8023C2E4 00239244 D0 A1 00 60 */ stfs f5, 0x60(r1) +/* 8023C2E8 00239248 D0 81 00 64 */ stfs f4, 0x64(r1) +/* 8023C2EC 0023924C D0 61 00 68 */ stfs f3, 0x68(r1) +/* 8023C2F0 00239250 D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 8023C2F4 00239254 D0 21 00 70 */ stfs f1, 0x70(r1) +/* 8023C2F8 00239258 D0 01 00 74 */ stfs f0, 0x74(r1) +/* 8023C2FC 0023925C 48 0F B3 11 */ bl GetCenterPoint__6CAABoxCFv +/* 8023C300 00239260 C0 21 00 74 */ lfs f1, 0x74(r1) +/* 8023C304 00239264 3C 60 80 47 */ lis r3, lbl_8046D360@ha +/* 8023C308 00239268 C0 01 00 68 */ lfs f0, 0x68(r1) +/* 8023C30C 0023926C 38 E3 D3 60 */ addi r7, r3, lbl_8046D360@l +/* 8023C310 00239270 C0 42 B7 68 */ lfs f2, lbl_805AD488@sda21(r2) +/* 8023C314 00239274 7F A4 EB 78 */ mr r4, r29 +/* 8023C318 00239278 C0 A1 00 08 */ lfs f5, 8(r1) +/* 8023C31C 0023927C EC 21 00 28 */ fsubs f1, f1, f0 +/* 8023C320 00239280 C0 81 00 0C */ lfs f4, 0xc(r1) +/* 8023C324 00239284 38 61 00 78 */ addi r3, r1, 0x78 +/* 8023C328 00239288 C0 61 00 10 */ lfs f3, 0x10(r1) +/* 8023C32C 0023928C 38 A1 00 20 */ addi r5, r1, 0x20 +/* 8023C330 00239290 C0 02 B7 6C */ lfs f0, lbl_805AD48C@sda21(r2) +/* 8023C334 00239294 D0 A1 00 20 */ stfs f5, 0x20(r1) +/* 8023C338 00239298 38 C1 00 14 */ addi r6, r1, 0x14 +/* 8023C33C 0023929C D0 81 00 24 */ stfs f4, 0x24(r1) +/* 8023C340 002392A0 D0 61 00 28 */ stfs f3, 0x28(r1) +/* 8023C344 002392A4 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 8023C348 002392A8 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 8023C34C 002392AC D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8023C350 002392B0 4B E1 0C 49 */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter +/* 8023C354 002392B4 88 81 00 98 */ lbz r4, 0x98(r1) +/* 8023C358 002392B8 C0 81 00 78 */ lfs f4, 0x78(r1) +/* 8023C35C 002392BC C3 A1 00 7C */ lfs f29, 0x7c(r1) +/* 8023C360 002392C0 28 04 00 00 */ cmplwi r4, 0 +/* 8023C364 002392C4 C3 C1 00 80 */ lfs f30, 0x80(r1) +/* 8023C368 002392C8 C3 E1 00 84 */ lfs f31, 0x84(r1) +/* 8023C36C 002392CC C0 61 00 88 */ lfs f3, 0x88(r1) +/* 8023C370 002392D0 C0 41 00 8C */ lfs f2, 0x8c(r1) +/* 8023C374 002392D4 C0 21 00 90 */ lfs f1, 0x90(r1) +/* 8023C378 002392D8 C0 01 00 94 */ lfs f0, 0x94(r1) +/* 8023C37C 002392DC 80 01 00 A0 */ lwz r0, 0xa0(r1) +/* 8023C380 002392E0 80 61 00 A4 */ lwz r3, 0xa4(r1) +/* 8023C384 002392E4 D0 81 00 A8 */ stfs f4, 0xa8(r1) +/* 8023C388 002392E8 D3 A1 00 AC */ stfs f29, 0xac(r1) +/* 8023C38C 002392EC D3 C1 00 B0 */ stfs f30, 0xb0(r1) +/* 8023C390 002392F0 D3 E1 00 B4 */ stfs f31, 0xb4(r1) +/* 8023C394 002392F4 D0 61 00 B8 */ stfs f3, 0xb8(r1) +/* 8023C398 002392F8 D0 41 00 BC */ stfs f2, 0xbc(r1) +/* 8023C39C 002392FC D0 21 00 C0 */ stfs f1, 0xc0(r1) +/* 8023C3A0 00239300 D0 01 00 C4 */ stfs f0, 0xc4(r1) +/* 8023C3A4 00239304 98 81 00 C8 */ stb r4, 0xc8(r1) +/* 8023C3A8 00239308 90 61 00 D4 */ stw r3, 0xd4(r1) +/* 8023C3AC 0023930C 90 01 00 D0 */ stw r0, 0xd0(r1) +/* 8023C3B0 00239310 41 82 00 D8 */ beq lbl_8023C488 +/* 8023C3B4 00239314 7F E3 FB 78 */ mr r3, r31 +/* 8023C3B8 00239318 4B FF FD 45 */ bl sub_8023c0fc +/* 8023C3BC 0023931C 7C 7E 1B 78 */ mr r30, r3 +/* 8023C3C0 00239320 7F E3 FB 78 */ mr r3, r31 +/* 8023C3C4 00239324 4B FF FD 91 */ bl sub_8023c154 +/* 8023C3C8 00239328 7C 83 F1 D6 */ mullw r4, r3, r30 +/* 8023C3CC 0023932C 38 7F 01 30 */ addi r3, r31, 0x130 +/* 8023C3D0 00239330 48 00 20 11 */ bl sub_8023e3e0 +/* 8023C3D4 00239334 83 BF 01 C8 */ lwz r29, 0x1c8(r31) +/* 8023C3D8 00239338 7F E3 FB 78 */ mr r3, r31 +/* 8023C3DC 0023933C 4B FF FD 21 */ bl sub_8023c0fc +/* 8023C3E0 00239340 7C 7E 1B 78 */ mr r30, r3 +/* 8023C3E4 00239344 7F E3 FB 78 */ mr r3, r31 +/* 8023C3E8 00239348 4B FF FD 6D */ bl sub_8023c154 +/* 8023C3EC 0023934C 7C 83 F1 D6 */ mullw r4, r3, r30 +/* 8023C3F0 00239350 7F A3 EB 78 */ mr r3, r29 +/* 8023C3F4 00239354 4B E2 19 05 */ bl "reserve__Q24rstl45vector<9CVector3f,Q24rstl17rmemory_allocator>Fi" +/* 8023C3F8 00239358 83 BF 01 CC */ lwz r29, 0x1cc(r31) +/* 8023C3FC 0023935C 7F E3 FB 78 */ mr r3, r31 +/* 8023C400 00239360 4B FF FC FD */ bl sub_8023c0fc +/* 8023C404 00239364 7C 7E 1B 78 */ mr r30, r3 +/* 8023C408 00239368 7F E3 FB 78 */ mr r3, r31 +/* 8023C40C 0023936C 4B FF FD 49 */ bl sub_8023c154 +/* 8023C410 00239370 7C 83 F1 D6 */ mullw r4, r3, r30 +/* 8023C414 00239374 7F A3 EB 78 */ mr r3, r29 +/* 8023C418 00239378 38 AD 96 80 */ addi r5, r13, lbl_805A8240@sda21 +/* 8023C41C 0023937C 48 00 00 A1 */ bl sub_8023c4bc +/* 8023C420 00239380 83 BF 01 C8 */ lwz r29, 0x1c8(r31) +/* 8023C424 00239384 80 1D 00 04 */ lwz r0, 4(r29) +/* 8023C428 00239388 80 BD 00 08 */ lwz r5, 8(r29) +/* 8023C42C 0023938C 7C 00 28 00 */ cmpw r0, r5 +/* 8023C430 00239390 41 80 00 1C */ blt lbl_8023C44C +/* 8023C434 00239394 2C 05 00 00 */ cmpwi r5, 0 +/* 8023C438 00239398 7F A3 EB 78 */ mr r3, r29 +/* 8023C43C 0023939C 38 80 00 04 */ li r4, 4 +/* 8023C440 002393A0 41 82 00 08 */ beq lbl_8023C448 +/* 8023C444 002393A4 54 A4 08 3C */ slwi r4, r5, 1 +lbl_8023C448: +/* 8023C448 002393A8 4B E2 18 B1 */ bl "reserve__Q24rstl45vector<9CVector3f,Q24rstl17rmemory_allocator>Fi" +lbl_8023C44C: +/* 8023C44C 002393AC 80 1D 00 04 */ lwz r0, 4(r29) +/* 8023C450 002393B0 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 8023C454 002393B4 1C 00 00 0C */ mulli r0, r0, 0xc +/* 8023C458 002393B8 7C 63 02 15 */ add. r3, r3, r0 +/* 8023C45C 002393BC 41 82 00 10 */ beq lbl_8023C46C +/* 8023C460 002393C0 D3 A3 00 00 */ stfs f29, 0(r3) +/* 8023C464 002393C4 D3 C3 00 04 */ stfs f30, 4(r3) +/* 8023C468 002393C8 D3 E3 00 08 */ stfs f31, 8(r3) +lbl_8023C46C: +/* 8023C46C 002393CC 80 9D 00 04 */ lwz r4, 4(r29) +/* 8023C470 002393D0 38 60 00 01 */ li r3, 1 +/* 8023C474 002393D4 38 04 00 01 */ addi r0, r4, 1 +/* 8023C478 002393D8 90 1D 00 04 */ stw r0, 4(r29) +/* 8023C47C 002393DC 88 1F 01 40 */ lbz r0, 0x140(r31) +/* 8023C480 002393E0 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8023C484 002393E4 98 1F 01 40 */ stb r0, 0x140(r31) +lbl_8023C488: +/* 8023C488 002393E8 E3 E1 01 18 */ psq_l f31, 280(r1), 0, qr0 +/* 8023C48C 002393EC CB E1 01 10 */ lfd f31, 0x110(r1) +/* 8023C490 002393F0 E3 C1 01 08 */ psq_l f30, 264(r1), 0, qr0 +/* 8023C494 002393F4 CB C1 01 00 */ lfd f30, 0x100(r1) +/* 8023C498 002393F8 E3 A1 00 F8 */ psq_l f29, 248(r1), 0, qr0 +/* 8023C49C 002393FC CB A1 00 F0 */ lfd f29, 0xf0(r1) +/* 8023C4A0 00239400 83 E1 00 EC */ lwz r31, 0xec(r1) +/* 8023C4A4 00239404 83 C1 00 E8 */ lwz r30, 0xe8(r1) +/* 8023C4A8 00239408 80 01 01 24 */ lwz r0, 0x124(r1) +/* 8023C4AC 0023940C 83 A1 00 E4 */ lwz r29, 0xe4(r1) +/* 8023C4B0 00239410 7C 08 03 A6 */ mtlr r0 +/* 8023C4B4 00239414 38 21 01 20 */ addi r1, r1, 0x120 +/* 8023C4B8 00239418 4E 80 00 20 */ blr + +.global sub_8023c4bc +sub_8023c4bc: +/* 8023C4BC 0023941C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8023C4C0 00239420 7C 08 02 A6 */ mflr r0 +/* 8023C4C4 00239424 90 01 00 34 */ stw r0, 0x34(r1) +/* 8023C4C8 00239428 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8023C4CC 0023942C 7C BF 2B 78 */ mr r31, r5 +/* 8023C4D0 00239430 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8023C4D4 00239434 7C 9E 23 78 */ mr r30, r4 +/* 8023C4D8 00239438 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8023C4DC 0023943C 7C 7D 1B 78 */ mr r29, r3 +/* 8023C4E0 00239440 80 03 00 04 */ lwz r0, 4(r3) +/* 8023C4E4 00239444 7C 00 F0 00 */ cmpw r0, r30 +/* 8023C4E8 00239448 41 82 00 80 */ beq lbl_8023C568 +/* 8023C4EC 0023944C 7C 1E 00 00 */ cmpw r30, r0 +/* 8023C4F0 00239450 40 81 00 40 */ ble lbl_8023C530 +/* 8023C4F4 00239454 48 00 20 21 */ bl sub_8023e514 +/* 8023C4F8 00239458 80 9D 00 04 */ lwz r4, 4(r29) +/* 8023C4FC 0023945C 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 8023C500 00239460 54 80 10 3A */ slwi r0, r4, 2 +/* 8023C504 00239464 7C 84 F0 51 */ subf. r4, r4, r30 +/* 8023C508 00239468 7C 63 02 14 */ add r3, r3, r0 +/* 8023C50C 0023946C 7C 89 03 A6 */ mtctr r4 +/* 8023C510 00239470 40 81 00 54 */ ble lbl_8023C564 +lbl_8023C514: +/* 8023C514 00239474 28 03 00 00 */ cmplwi r3, 0 +/* 8023C518 00239478 41 82 00 0C */ beq lbl_8023C524 +/* 8023C51C 0023947C 80 1F 00 00 */ lwz r0, 0(r31) +/* 8023C520 00239480 90 03 00 00 */ stw r0, 0(r3) +lbl_8023C524: +/* 8023C524 00239484 38 63 00 04 */ addi r3, r3, 4 +/* 8023C528 00239488 42 00 FF EC */ bdnz lbl_8023C514 +/* 8023C52C 0023948C 48 00 00 38 */ b lbl_8023C564 +lbl_8023C530: +/* 8023C530 00239490 80 9D 00 0C */ lwz r4, 0xc(r29) +/* 8023C534 00239494 54 03 10 3A */ slwi r3, r0, 2 +/* 8023C538 00239498 57 C0 10 3A */ slwi r0, r30, 2 +/* 8023C53C 0023949C 7C A4 02 14 */ add r5, r4, r0 +/* 8023C540 002394A0 7C 04 1A 14 */ add r0, r4, r3 +/* 8023C544 002394A4 90 A1 00 10 */ stw r5, 0x10(r1) +/* 8023C548 002394A8 90 01 00 08 */ stw r0, 8(r1) +/* 8023C54C 002394AC 90 01 00 0C */ stw r0, 0xc(r1) +/* 8023C550 002394B0 90 A1 00 14 */ stw r5, 0x14(r1) +/* 8023C554 002394B4 48 00 00 08 */ b lbl_8023C55C +lbl_8023C558: +/* 8023C558 002394B8 38 A5 00 04 */ addi r5, r5, 4 +lbl_8023C55C: +/* 8023C55C 002394BC 7C 05 00 40 */ cmplw r5, r0 +/* 8023C560 002394C0 40 82 FF F8 */ bne lbl_8023C558 +lbl_8023C564: +/* 8023C564 002394C4 93 DD 00 04 */ stw r30, 4(r29) +lbl_8023C568: +/* 8023C568 002394C8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8023C56C 002394CC 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8023C570 002394D0 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8023C574 002394D4 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8023C578 002394D8 7C 08 03 A6 */ mtlr r0 +/* 8023C57C 002394DC 38 21 00 30 */ addi r1, r1, 0x30 +/* 8023C580 002394E0 4E 80 00 20 */ blr + +.global AddToRenderer__15CSnakeWeedSwarmCFRC14CFrustumPlanesRC13CStateManager +AddToRenderer__15CSnakeWeedSwarmCFRC14CFrustumPlanesRC13CStateManager: +/* 8023C584 002394E4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8023C588 002394E8 7C 08 02 A6 */ mflr r0 +/* 8023C58C 002394EC 90 01 00 24 */ stw r0, 0x24(r1) +/* 8023C590 002394F0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8023C594 002394F4 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8023C598 002394F8 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8023C59C 002394FC 7C 7D 1B 78 */ mr r29, r3 +/* 8023C5A0 00239500 88 03 00 E4 */ lbz r0, 0xe4(r3) +/* 8023C5A4 00239504 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 8023C5A8 00239508 40 82 00 C4 */ bne lbl_8023C66C +/* 8023C5AC 0023950C 80 9D 01 F0 */ lwz r4, 0x1f0(r29) +/* 8023C5B0 00239510 28 04 00 00 */ cmplwi r4, 0 +/* 8023C5B4 00239514 41 82 00 18 */ beq lbl_8023C5CC +/* 8023C5B8 00239518 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 8023C5BC 0023951C 81 83 00 00 */ lwz r12, 0(r3) +/* 8023C5C0 00239520 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8023C5C4 00239524 7D 89 03 A6 */ mtctr r12 +/* 8023C5C8 00239528 4E 80 04 21 */ bctrl +lbl_8023C5CC: +/* 8023C5CC 0023952C 80 9D 01 F8 */ lwz r4, 0x1f8(r29) +/* 8023C5D0 00239530 28 04 00 00 */ cmplwi r4, 0 +/* 8023C5D4 00239534 41 82 00 18 */ beq lbl_8023C5EC +/* 8023C5D8 00239538 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 8023C5DC 0023953C 81 83 00 00 */ lwz r12, 0(r3) +/* 8023C5E0 00239540 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8023C5E4 00239544 7D 89 03 A6 */ mtctr r12 +/* 8023C5E8 00239548 4E 80 04 21 */ bctrl +lbl_8023C5EC: +/* 8023C5EC 0023954C 80 7D 00 90 */ lwz r3, 0x90(r29) +/* 8023C5F0 00239550 38 00 FF FF */ li r0, -1 +/* 8023C5F4 00239554 90 01 00 08 */ stw r0, 8(r1) +/* 8023C5F8 00239558 28 03 00 00 */ cmplwi r3, 0 +/* 8023C5FC 0023955C 41 82 00 0C */ beq lbl_8023C608 +/* 8023C600 00239560 4B EC 87 89 */ bl ActivateLights__12CActorLightsCFv +/* 8023C604 00239564 48 00 00 24 */ b lbl_8023C628 +lbl_8023C608: +/* 8023C608 00239568 48 0D 03 75 */ bl DisableAllLights__9CGraphicsFv +/* 8023C60C 0023956C 48 10 D9 A1 */ bl White__6CColorFv +/* 8023C610 00239570 7C 64 1B 78 */ mr r4, r3 +/* 8023C614 00239574 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 8023C618 00239578 81 83 00 00 */ lwz r12, 0(r3) +/* 8023C61C 0023957C 81 8C 00 BC */ lwz r12, 0xbc(r12) +/* 8023C620 00239580 7D 89 03 A6 */ mtctr r12 +/* 8023C624 00239584 4E 80 04 21 */ bctrl +lbl_8023C628: +/* 8023C628 00239588 83 FD 01 3C */ lwz r31, 0x13c(r29) +/* 8023C62C 0023958C 3B C0 00 00 */ li r30, 0 +/* 8023C630 00239590 48 00 00 20 */ b lbl_8023C650 +lbl_8023C634: +/* 8023C634 00239594 7F A3 EB 78 */ mr r3, r29 +/* 8023C638 00239598 7F C4 F3 78 */ mr r4, r30 +/* 8023C63C 0023959C 7F E5 FB 78 */ mr r5, r31 +/* 8023C640 002395A0 38 C1 00 08 */ addi r6, r1, 8 +/* 8023C644 002395A4 48 00 00 45 */ bl sub_8023c688 +/* 8023C648 002395A8 3B FF 00 24 */ addi r31, r31, 0x24 +/* 8023C64C 002395AC 3B DE 00 01 */ addi r30, r30, 1 +lbl_8023C650: +/* 8023C650 002395B0 80 1D 01 34 */ lwz r0, 0x134(r29) +/* 8023C654 002395B4 80 7D 01 3C */ lwz r3, 0x13c(r29) +/* 8023C658 002395B8 1C 00 00 24 */ mulli r0, r0, 0x24 +/* 8023C65C 002395BC 7C 03 02 14 */ add r0, r3, r0 +/* 8023C660 002395C0 7C 1F 00 40 */ cmplw r31, r0 +/* 8023C664 002395C4 40 82 FF D0 */ bne lbl_8023C634 +/* 8023C668 002395C8 48 0D 03 15 */ bl DisableAllLights__9CGraphicsFv +lbl_8023C66C: +/* 8023C66C 002395CC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8023C670 002395D0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8023C674 002395D4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8023C678 002395D8 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8023C67C 002395DC 7C 08 03 A6 */ mtlr r0 +/* 8023C680 002395E0 38 21 00 20 */ addi r1, r1, 0x20 +/* 8023C684 002395E4 4E 80 00 20 */ blr + +.global sub_8023c688 +sub_8023c688: +/* 8023C688 002395E8 94 21 FE D0 */ stwu r1, -0x130(r1) +/* 8023C68C 002395EC 7C 08 02 A6 */ mflr r0 +/* 8023C690 002395F0 90 01 01 34 */ stw r0, 0x134(r1) +/* 8023C694 002395F4 DB E1 01 20 */ stfd f31, 0x120(r1) +/* 8023C698 002395F8 F3 E1 01 28 */ psq_st f31, 296(r1), 0, qr0 +/* 8023C69C 002395FC BF 01 01 00 */ stmw r24, 0x100(r1) +/* 8023C6A0 00239600 7C 7D 1B 78 */ mr r29, r3 +/* 8023C6A4 00239604 54 9B 17 3A */ rlwinm r27, r4, 2, 0x1c, 0x1d +/* 8023C6A8 00239608 7C 7D DA 14 */ add r3, r29, r27 +/* 8023C6AC 0023960C 54 9A 07 BE */ clrlwi r26, r4, 0x1e +/* 8023C6B0 00239610 80 63 01 B4 */ lwz r3, 0x1b4(r3) +/* 8023C6B4 00239614 7C DE 33 78 */ mr r30, r6 +/* 8023C6B8 00239618 83 E6 00 00 */ lwz r31, 0(r6) +/* 8023C6BC 0023961C 7C B8 2B 78 */ mr r24, r5 +/* 8023C6C0 00239620 80 63 00 00 */ lwz r3, 0(r3) +/* 8023C6C4 00239624 80 9D 01 C4 */ lwz r4, 0x1c4(r29) +/* 8023C6C8 00239628 83 83 00 10 */ lwz r28, 0x10(r3) +/* 8023C6CC 0023962C 4B ED 88 91 */ bl PickAnimatedModel__10CModelDataCFQ210CModelData11EWhichModel +/* 8023C6D0 00239630 38 00 00 01 */ li r0, 1 +/* 8023C6D4 00239634 7C 79 1B 78 */ mr r25, r3 +/* 8023C6D8 00239638 7C 04 D0 30 */ slw r4, r0, r26 +/* 8023C6DC 0023963C 7F E0 20 39 */ and. r0, r31, r4 +/* 8023C6E0 00239640 41 82 00 44 */ beq lbl_8023C724 +/* 8023C6E4 00239644 7F 83 E3 78 */ mr r3, r28 +/* 8023C6E8 00239648 7F FF 20 78 */ andc r31, r31, r4 +/* 8023C6EC 0023964C 4B DF 03 75 */ bl BuildPose__9CAnimDataFv +/* 8023C6F0 00239650 57 40 18 38 */ slwi r0, r26, 3 +/* 8023C6F4 00239654 38 80 00 00 */ li r4, 0 +/* 8023C6F8 00239658 7C 7D 02 14 */ add r3, r29, r0 +/* 8023C6FC 0023965C 98 81 00 F4 */ stb r4, 0xf4(r1) +/* 8023C700 00239660 80 E3 01 80 */ lwz r7, 0x180(r3) +/* 8023C704 00239664 7F 23 CB 78 */ mr r3, r25 +/* 8023C708 00239668 38 9C 02 24 */ addi r4, r28, 0x224 +/* 8023C70C 0023966C 38 A1 00 AC */ addi r5, r1, 0xac +/* 8023C710 00239670 38 C0 00 00 */ li r6, 0 +/* 8023C714 00239674 48 11 65 E5 */ bl "Calculate__13CSkinnedModelFRC17CPoseAsTransformsRCQ24rstl37optional_object<18CVertexMorphEffect>PCfPf" +/* 8023C718 00239678 38 61 00 AC */ addi r3, r1, 0xac +/* 8023C71C 0023967C 38 80 FF FF */ li r4, -1 +/* 8023C720 00239680 4B E3 B5 6D */ bl sub_80077c8c +lbl_8023C724: +/* 8023C724 00239684 7F 03 C3 78 */ mr r3, r24 +/* 8023C728 00239688 48 00 1C 5D */ bl sub_8023e384 +/* 8023C72C 0023968C FF E0 08 90 */ fmr f31, f1 +/* 8023C730 00239690 7F 03 C3 78 */ mr r3, r24 +/* 8023C734 00239694 48 00 1C 69 */ bl nullsub_21 +/* 8023C738 00239698 C0 03 00 08 */ lfs f0, 8(r3) +/* 8023C73C 0023969C C0 43 00 04 */ lfs f2, 4(r3) +/* 8023C740 002396A0 C0 22 B7 68 */ lfs f1, lbl_805AD488@sda21(r2) +/* 8023C744 002396A4 EC 60 F8 28 */ fsubs f3, f0, f31 +/* 8023C748 002396A8 C0 03 00 00 */ lfs f0, 0(r3) +/* 8023C74C 002396AC 7F 03 C3 78 */ mr r3, r24 +/* 8023C750 002396B0 EC 42 08 28 */ fsubs f2, f2, f1 +/* 8023C754 002396B4 EC 00 08 28 */ fsubs f0, f0, f1 +/* 8023C758 002396B8 D0 61 00 18 */ stfs f3, 0x18(r1) +/* 8023C75C 002396BC D0 41 00 14 */ stfs f2, 0x14(r1) +/* 8023C760 002396C0 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 8023C764 002396C4 48 00 1C 01 */ bl sub_8023e364 +/* 8023C768 002396C8 38 61 00 1C */ addi r3, r1, 0x1c +/* 8023C76C 002396CC 48 0D 6A D5 */ bl Scale__12CTransform4fFf +/* 8023C770 002396D0 38 61 00 4C */ addi r3, r1, 0x4c +/* 8023C774 002396D4 38 81 00 10 */ addi r4, r1, 0x10 +/* 8023C778 002396D8 48 0D 69 C9 */ bl Translate__12CTransform4fFRC9CVector3f +/* 8023C77C 002396DC 38 61 00 7C */ addi r3, r1, 0x7c +/* 8023C780 002396E0 38 81 00 4C */ addi r4, r1, 0x4c +/* 8023C784 002396E4 38 A1 00 1C */ addi r5, r1, 0x1c +/* 8023C788 002396E8 48 0D 61 C9 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 8023C78C 002396EC 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 8023C790 002396F0 38 81 00 7C */ addi r4, r1, 0x7c +/* 8023C794 002396F4 81 83 00 00 */ lwz r12, 0(r3) +/* 8023C798 002396F8 81 8C 00 30 */ lwz r12, 0x30(r12) +/* 8023C79C 002396FC 7D 89 03 A6 */ mtctr r12 +/* 8023C7A0 00239700 4E 80 04 21 */ bctrl +/* 8023C7A4 00239704 C0 22 B7 74 */ lfs f1, lbl_805AD494@sda21(r2) +/* 8023C7A8 00239708 38 80 00 00 */ li r4, 0 +/* 8023C7AC 0023970C 38 00 00 03 */ li r0, 3 +/* 8023C7B0 00239710 98 81 00 08 */ stb r4, 8(r1) +/* 8023C7B4 00239714 FC 40 08 90 */ fmr f2, f1 +/* 8023C7B8 00239718 38 61 00 0C */ addi r3, r1, 0xc +/* 8023C7BC 0023971C FC 60 08 90 */ fmr f3, f1 +/* 8023C7C0 00239720 98 81 00 09 */ stb r4, 9(r1) +/* 8023C7C4 00239724 FC 80 08 90 */ fmr f4, f1 +/* 8023C7C8 00239728 B0 01 00 0A */ sth r0, 0xa(r1) +/* 8023C7CC 0023972C 48 12 6C 21 */ bl __ct__6CColorFffff +/* 8023C7D0 00239730 57 40 18 38 */ slwi r0, r26, 3 +/* 8023C7D4 00239734 7C 7D DA 14 */ add r3, r29, r27 +/* 8023C7D8 00239738 7C 9D 02 14 */ add r4, r29, r0 +/* 8023C7DC 0023973C 80 A3 01 A0 */ lwz r5, 0x1a0(r3) +/* 8023C7E0 00239740 80 84 01 80 */ lwz r4, 0x180(r4) +/* 8023C7E4 00239744 7F 23 CB 78 */ mr r3, r25 +/* 8023C7E8 00239748 38 C1 00 08 */ addi r6, r1, 8 +/* 8023C7EC 0023974C 48 11 66 FD */ bl sub_80352ee8 +/* 8023C7F0 00239750 93 FE 00 00 */ stw r31, 0(r30) +/* 8023C7F4 00239754 E3 E1 01 28 */ psq_l f31, 296(r1), 0, qr0 +/* 8023C7F8 00239758 CB E1 01 20 */ lfd f31, 0x120(r1) +/* 8023C7FC 0023975C BB 01 01 00 */ lmw r24, 0x100(r1) +/* 8023C800 00239760 80 01 01 34 */ lwz r0, 0x134(r1) +/* 8023C804 00239764 7C 08 03 A6 */ mtlr r0 +/* 8023C808 00239768 38 21 01 30 */ addi r1, r1, 0x130 +/* 8023C80C 0023976C 4E 80 00 20 */ blr + +.global PreRender__15CSnakeWeedSwarmFR13CStateManagerRC14CFrustumPlanes +PreRender__15CSnakeWeedSwarmFR13CStateManagerRC14CFrustumPlanes: +/* 8023C810 00239770 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8023C814 00239774 7C 08 02 A6 */ mflr r0 +/* 8023C818 00239778 90 01 00 44 */ stw r0, 0x44(r1) +/* 8023C81C 0023977C 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8023C820 00239780 7C 9F 23 78 */ mr r31, r4 +/* 8023C824 00239784 93 C1 00 38 */ stw r30, 0x38(r1) +/* 8023C828 00239788 7C 7E 1B 78 */ mr r30, r3 +/* 8023C82C 0023978C 7C A3 2B 78 */ mr r3, r5 +/* 8023C830 00239790 93 A1 00 34 */ stw r29, 0x34(r1) +/* 8023C834 00239794 38 9E 01 44 */ addi r4, r30, 0x144 +/* 8023C838 00239798 93 81 00 30 */ stw r28, 0x30(r1) +/* 8023C83C 0023979C 48 10 89 95 */ bl BoxInFrustumPlanes__14CFrustumPlanesCFRC6CAABox +/* 8023C840 002397A0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8023C844 002397A4 40 82 00 18 */ bne lbl_8023C85C +/* 8023C848 002397A8 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 8023C84C 002397AC 38 60 00 01 */ li r3, 1 +/* 8023C850 002397B0 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 8023C854 002397B4 98 1E 00 E4 */ stb r0, 0xe4(r30) +/* 8023C858 002397B8 48 00 01 8C */ b lbl_8023C9E4 +lbl_8023C85C: +/* 8023C85C 002397BC 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 8023C860 002397C0 38 60 00 00 */ li r3, 0 +/* 8023C864 002397C4 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 8023C868 002397C8 3B BE 01 B4 */ addi r29, r30, 0x1b4 +/* 8023C86C 002397CC 98 1E 00 E4 */ stb r0, 0xe4(r30) +/* 8023C870 002397D0 3B 80 00 00 */ li r28, 0 +lbl_8023C874: +/* 8023C874 002397D4 80 7D 00 00 */ lwz r3, 0(r29) +/* 8023C878 002397D8 80 63 00 00 */ lwz r3, 0(r3) +/* 8023C87C 002397DC 80 63 00 10 */ lwz r3, 0x10(r3) +/* 8023C880 002397E0 4B DF 01 85 */ bl PreRender__9CAnimDataFv +/* 8023C884 002397E4 3B 9C 00 01 */ addi r28, r28, 1 +/* 8023C888 002397E8 3B BD 00 04 */ addi r29, r29, 4 +/* 8023C88C 002397EC 2C 1C 00 04 */ cmpwi r28, 4 +/* 8023C890 002397F0 41 80 FF E4 */ blt lbl_8023C874 +/* 8023C894 002397F4 80 7E 00 90 */ lwz r3, 0x90(r30) +/* 8023C898 002397F8 3B 80 00 00 */ li r28, 0 +/* 8023C89C 002397FC 28 03 00 00 */ cmplwi r3, 0 +/* 8023C8A0 00239800 41 82 01 44 */ beq lbl_8023C9E4 +/* 8023C8A4 00239804 88 1E 01 40 */ lbz r0, 0x140(r30) +/* 8023C8A8 00239808 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8023C8AC 0023980C 41 82 01 38 */ beq lbl_8023C9E4 +/* 8023C8B0 00239810 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 8023C8B4 00239814 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 8023C8B8 00239818 41 82 00 1C */ beq lbl_8023C8D4 +/* 8023C8BC 0023981C 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 8023C8C0 00239820 38 60 00 00 */ li r3, 0 +/* 8023C8C4 00239824 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 8023C8C8 00239828 3B 80 00 01 */ li r28, 1 +/* 8023C8CC 0023982C 98 1E 00 E4 */ stb r0, 0xe4(r30) +/* 8023C8D0 00239830 48 00 00 18 */ b lbl_8023C8E8 +lbl_8023C8D4: +/* 8023C8D4 00239834 88 03 02 98 */ lbz r0, 0x298(r3) +/* 8023C8D8 00239838 54 00 CF FE */ rlwinm r0, r0, 0x19, 0x1f, 0x1f +/* 8023C8DC 0023983C 28 00 00 01 */ cmplwi r0, 1 +/* 8023C8E0 00239840 40 82 00 08 */ bne lbl_8023C8E8 +/* 8023C8E4 00239844 3B 80 00 01 */ li r28, 1 +lbl_8023C8E8: +/* 8023C8E8 00239848 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 8023C8EC 0023984C 38 60 00 00 */ li r3, 0 +/* 8023C8F0 00239850 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 8023C8F4 00239854 41 82 00 14 */ beq lbl_8023C908 +/* 8023C8F8 00239858 80 1E 00 90 */ lwz r0, 0x90(r30) +/* 8023C8FC 0023985C 28 00 00 00 */ cmplwi r0, 0 +/* 8023C900 00239860 41 82 00 08 */ beq lbl_8023C908 +/* 8023C904 00239864 38 60 00 01 */ li r3, 1 +lbl_8023C908: +/* 8023C908 00239868 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8023C90C 0023986C 41 82 00 D8 */ beq lbl_8023C9E4 +/* 8023C910 00239870 C0 1E 01 44 */ lfs f0, 0x144(r30) +/* 8023C914 00239874 7F E4 FB 78 */ mr r4, r31 +/* 8023C918 00239878 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 8023C91C 0023987C C0 1E 01 48 */ lfs f0, 0x148(r30) +/* 8023C920 00239880 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8023C924 00239884 C0 1E 01 4C */ lfs f0, 0x14c(r30) +/* 8023C928 00239888 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 8023C92C 0023988C C0 1E 01 50 */ lfs f0, 0x150(r30) +/* 8023C930 00239890 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 8023C934 00239894 C0 1E 01 54 */ lfs f0, 0x154(r30) +/* 8023C938 00239898 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 8023C93C 0023989C C0 1E 01 58 */ lfs f0, 0x158(r30) +/* 8023C940 002398A0 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 8023C944 002398A4 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 8023C948 002398A8 80 63 00 00 */ lwz r3, 0(r3) +/* 8023C94C 002398AC 4B E5 4C 0D */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager +/* 8023C950 002398B0 2C 03 00 03 */ cmpwi r3, 3 +/* 8023C954 002398B4 40 82 00 1C */ bne lbl_8023C970 +/* 8023C958 002398B8 83 DE 00 90 */ lwz r30, 0x90(r30) +/* 8023C95C 002398BC 48 10 D6 51 */ bl White__6CColorFv +/* 8023C960 002398C0 7C 64 1B 78 */ mr r4, r3 +/* 8023C964 002398C4 7F C3 F3 78 */ mr r3, r30 +/* 8023C968 002398C8 4B EC 67 49 */ bl BuildConstantAmbientLighting__12CActorLightsFRC6CColor +/* 8023C96C 002398CC 48 00 00 78 */ b lbl_8023C9E4 +lbl_8023C970: +/* 8023C970 002398D0 57 80 06 3E */ clrlwi r0, r28, 0x18 +/* 8023C974 002398D4 28 00 00 01 */ cmplwi r0, 1 +/* 8023C978 002398D8 40 82 00 5C */ bne lbl_8023C9D4 +/* 8023C97C 002398DC 80 BE 00 04 */ lwz r5, 4(r30) +/* 8023C980 002398E0 80 0D A3 90 */ lwz r0, lbl_805A8F50@sda21(r13) +/* 8023C984 002398E4 7C 05 00 00 */ cmpw r5, r0 +/* 8023C988 002398E8 41 82 00 4C */ beq lbl_8023C9D4 +/* 8023C98C 002398EC 80 7F 08 50 */ lwz r3, 0x850(r31) +/* 8023C990 002398F0 54 A4 18 38 */ slwi r4, r5, 3 +/* 8023C994 002398F4 90 A1 00 10 */ stw r5, 0x10(r1) +/* 8023C998 002398F8 80 E3 00 20 */ lwz r7, 0x20(r3) +/* 8023C99C 002398FC 90 A1 00 14 */ stw r5, 0x14(r1) +/* 8023C9A0 00239900 7C 67 22 14 */ add r3, r7, r4 +/* 8023C9A4 00239904 80 63 00 04 */ lwz r3, 4(r3) +/* 8023C9A8 00239908 88 03 00 F0 */ lbz r0, 0xf0(r3) +/* 8023C9AC 0023990C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8023C9B0 00239910 41 82 00 24 */ beq lbl_8023C9D4 +/* 8023C9B4 00239914 38 04 00 04 */ addi r0, r4, 4 +/* 8023C9B8 00239918 90 A1 00 08 */ stw r5, 8(r1) +/* 8023C9BC 0023991C 80 7E 00 90 */ lwz r3, 0x90(r30) +/* 8023C9C0 00239920 7F E4 FB 78 */ mr r4, r31 +/* 8023C9C4 00239924 90 A1 00 0C */ stw r5, 0xc(r1) +/* 8023C9C8 00239928 38 C1 00 18 */ addi r6, r1, 0x18 +/* 8023C9CC 0023992C 7C A7 00 2E */ lwzx r5, r7, r0 +/* 8023C9D0 00239930 4B EC 73 F1 */ bl BuildAreaLightList__12CActorLightsFRC13CStateManagerRC9CGameAreaRC6CAABox +lbl_8023C9D4: +/* 8023C9D4 00239934 80 7E 00 90 */ lwz r3, 0x90(r30) +/* 8023C9D8 00239938 7F E4 FB 78 */ mr r4, r31 +/* 8023C9DC 0023993C 38 A1 00 18 */ addi r5, r1, 0x18 +/* 8023C9E0 00239940 4B EC 6D 31 */ bl BuildDynamicLightList__12CActorLightsFRC13CStateManagerRC6CAABox +lbl_8023C9E4: +/* 8023C9E4 00239944 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8023C9E8 00239948 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8023C9EC 0023994C 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 8023C9F0 00239950 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 8023C9F4 00239954 83 81 00 30 */ lwz r28, 0x30(r1) +/* 8023C9F8 00239958 7C 08 03 A6 */ mtlr r0 +/* 8023C9FC 0023995C 38 21 00 40 */ addi r1, r1, 0x40 +/* 8023CA00 00239960 4E 80 00 20 */ blr + +.global ApplyRadiusDamage__15CSnakeWeedSwarmF9CVector3ffR13CStateManager +ApplyRadiusDamage__15CSnakeWeedSwarmF9CVector3ffR13CStateManager: +/* 8023CA04 00239964 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8023CA08 00239968 7C 08 02 A6 */ mflr r0 +/* 8023CA0C 0023996C 7C 87 23 78 */ mr r7, r4 +/* 8023CA10 00239970 90 01 00 14 */ stw r0, 0x14(r1) +/* 8023CA14 00239974 80 05 00 00 */ lwz r0, 0(r5) +/* 8023CA18 00239978 2C 00 00 04 */ cmpwi r0, 4 +/* 8023CA1C 0023997C 41 82 00 0C */ beq lbl_8023CA28 +/* 8023CA20 00239980 2C 00 00 05 */ cmpwi r0, 5 +/* 8023CA24 00239984 40 82 00 14 */ bne lbl_8023CA38 +lbl_8023CA28: +/* 8023CA28 00239988 C0 25 00 10 */ lfs f1, 0x10(r5) +/* 8023CA2C 0023998C 7C C4 33 78 */ mr r4, r6 +/* 8023CA30 00239990 7C E5 3B 78 */ mr r5, r7 +/* 8023CA34 00239994 48 00 00 15 */ bl sub_8023ca48 +lbl_8023CA38: +/* 8023CA38 00239998 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8023CA3C 0023999C 7C 08 03 A6 */ mtlr r0 +/* 8023CA40 002399A0 38 21 00 10 */ addi r1, r1, 0x10 +/* 8023CA44 002399A4 4E 80 00 20 */ blr + +.global sub_8023ca48 +sub_8023ca48: +/* 8023CA48 002399A8 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8023CA4C 002399AC 7C 08 02 A6 */ mflr r0 +/* 8023CA50 002399B0 90 01 00 44 */ stw r0, 0x44(r1) +/* 8023CA54 002399B4 DB E1 00 30 */ stfd f31, 0x30(r1) +/* 8023CA58 002399B8 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 8023CA5C 002399BC 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8023CA60 002399C0 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8023CA64 002399C4 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8023CA68 002399C8 93 81 00 20 */ stw r28, 0x20(r1) +/* 8023CA6C 002399CC 7C 7C 1B 78 */ mr r28, r3 +/* 8023CA70 002399D0 EF E1 00 72 */ fmuls f31, f1, f1 +/* 8023CA74 002399D4 83 E3 01 3C */ lwz r31, 0x13c(r3) +/* 8023CA78 002399D8 7C 9D 23 78 */ mr r29, r4 +/* 8023CA7C 002399DC 7C BE 2B 78 */ mr r30, r5 +/* 8023CA80 002399E0 48 00 00 E8 */ b lbl_8023CB68 +lbl_8023CA84: +/* 8023CA84 002399E4 7F E3 FB 78 */ mr r3, r31 +/* 8023CA88 002399E8 48 00 19 15 */ bl nullsub_21 +/* 8023CA8C 002399EC C0 43 00 04 */ lfs f2, 4(r3) +/* 8023CA90 002399F0 C0 1E 00 04 */ lfs f0, 4(r30) +/* 8023CA94 002399F4 C0 23 00 00 */ lfs f1, 0(r3) +/* 8023CA98 002399F8 EC 82 00 28 */ fsubs f4, f2, f0 +/* 8023CA9C 002399FC C0 1E 00 00 */ lfs f0, 0(r30) +/* 8023CAA0 00239A00 C0 63 00 08 */ lfs f3, 8(r3) +/* 8023CAA4 00239A04 EC 41 00 28 */ fsubs f2, f1, f0 +/* 8023CAA8 00239A08 C0 3E 00 08 */ lfs f1, 8(r30) +/* 8023CAAC 00239A0C EC 04 01 32 */ fmuls f0, f4, f4 +/* 8023CAB0 00239A10 EC 63 08 28 */ fsubs f3, f3, f1 +/* 8023CAB4 00239A14 D0 81 00 10 */ stfs f4, 0x10(r1) +/* 8023CAB8 00239A18 EC 22 00 B2 */ fmuls f1, f2, f2 +/* 8023CABC 00239A1C D0 41 00 0C */ stfs f2, 0xc(r1) +/* 8023CAC0 00239A20 EC 43 00 F2 */ fmuls f2, f3, f3 +/* 8023CAC4 00239A24 EC 01 00 2A */ fadds f0, f1, f0 +/* 8023CAC8 00239A28 D0 61 00 14 */ stfs f3, 0x14(r1) +/* 8023CACC 00239A2C EC 02 00 2A */ fadds f0, f2, f0 +/* 8023CAD0 00239A30 FC 00 F8 40 */ fcmpo cr0, f0, f31 +/* 8023CAD4 00239A34 40 80 00 90 */ bge lbl_8023CB64 +/* 8023CAD8 00239A38 7F E3 FB 78 */ mr r3, r31 +/* 8023CADC 00239A3C 48 00 18 C5 */ bl sub_8023e3a0 +/* 8023CAE0 00239A40 2C 03 00 00 */ cmpwi r3, 0 +/* 8023CAE4 00239A44 41 82 00 14 */ beq lbl_8023CAF8 +/* 8023CAE8 00239A48 7F E3 FB 78 */ mr r3, r31 +/* 8023CAEC 00239A4C 48 00 18 B5 */ bl sub_8023e3a0 +/* 8023CAF0 00239A50 2C 03 00 01 */ cmpwi r3, 1 +/* 8023CAF4 00239A54 40 82 00 70 */ bne lbl_8023CB64 +lbl_8023CAF8: +/* 8023CAF8 00239A58 7F E3 FB 78 */ mr r3, r31 +/* 8023CAFC 00239A5C 38 80 00 03 */ li r4, 3 +/* 8023CB00 00239A60 48 00 18 A9 */ bl sub_8023e3a8 +/* 8023CB04 00239A64 80 7D 09 00 */ lwz r3, 0x900(r29) +/* 8023CB08 00239A68 48 0D 59 D5 */ bl Float__9CRandom16Fv +/* 8023CB0C 00239A6C C0 5C 01 18 */ lfs f2, 0x118(r28) +/* 8023CB10 00239A70 7F E3 FB 78 */ mr r3, r31 +/* 8023CB14 00239A74 C0 1C 01 14 */ lfs f0, 0x114(r28) +/* 8023CB18 00239A78 EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 8023CB1C 00239A7C 48 00 18 51 */ bl sub_8023e36c +/* 8023CB20 00239A80 7F E3 FB 78 */ mr r3, r31 +/* 8023CB24 00239A84 48 00 18 79 */ bl nullsub_21 +/* 8023CB28 00239A88 3C A0 80 5A */ lis r5, skZero3f@ha +/* 8023CB2C 00239A8C A0 9C 01 D2 */ lhz r4, 0x1d2(r28) +/* 8023CB30 00239A90 38 C5 66 A0 */ addi r6, r5, skZero3f@l +/* 8023CB34 00239A94 A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) +/* 8023CB38 00239A98 7C 65 1B 78 */ mr r5, r3 +/* 8023CB3C 00239A9C 81 5C 00 04 */ lwz r10, 4(r28) +/* 8023CB40 00239AA0 38 61 00 08 */ addi r3, r1, 8 +/* 8023CB44 00239AA4 38 E0 00 01 */ li r7, 1 +/* 8023CB48 00239AA8 39 00 00 00 */ li r8, 0 +/* 8023CB4C 00239AAC 48 0A D7 65 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +/* 8023CB50 00239AB0 7F E3 FB 78 */ mr r3, r31 +/* 8023CB54 00239AB4 48 00 18 49 */ bl nullsub_21 +/* 8023CB58 00239AB8 7C 64 1B 78 */ mr r4, r3 +/* 8023CB5C 00239ABC 7F 83 E3 78 */ mr r3, r28 +/* 8023CB60 00239AC0 4B FF EC B5 */ bl sub_8023b814 +lbl_8023CB64: +/* 8023CB64 00239AC4 3B FF 00 24 */ addi r31, r31, 0x24 +lbl_8023CB68: +/* 8023CB68 00239AC8 80 1C 01 34 */ lwz r0, 0x134(r28) +/* 8023CB6C 00239ACC 80 7C 01 3C */ lwz r3, 0x13c(r28) +/* 8023CB70 00239AD0 1C 00 00 24 */ mulli r0, r0, 0x24 +/* 8023CB74 00239AD4 7C 03 02 14 */ add r0, r3, r0 +/* 8023CB78 00239AD8 7C 1F 00 40 */ cmplw r31, r0 +/* 8023CB7C 00239ADC 40 82 FF 08 */ bne lbl_8023CA84 +/* 8023CB80 00239AE0 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 8023CB84 00239AE4 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8023CB88 00239AE8 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 8023CB8C 00239AEC 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8023CB90 00239AF0 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8023CB94 00239AF4 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8023CB98 00239AF8 83 81 00 20 */ lwz r28, 0x20(r1) +/* 8023CB9C 00239AFC 7C 08 03 A6 */ mtlr r0 +/* 8023CBA0 00239B00 38 21 00 40 */ addi r1, r1, 0x40 +/* 8023CBA4 00239B04 4E 80 00 20 */ blr + +.global Touch__15CSnakeWeedSwarmFR6CActorR13CStateManager +Touch__15CSnakeWeedSwarmFR6CActorR13CStateManager: +/* 8023CBA8 00239B08 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 8023CBAC 00239B0C 7C 08 02 A6 */ mflr r0 +/* 8023CBB0 00239B10 90 01 00 84 */ stw r0, 0x84(r1) +/* 8023CBB4 00239B14 DB E1 00 70 */ stfd f31, 0x70(r1) +/* 8023CBB8 00239B18 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 +/* 8023CBBC 00239B1C DB C1 00 60 */ stfd f30, 0x60(r1) +/* 8023CBC0 00239B20 F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 +/* 8023CBC4 00239B24 DB A1 00 50 */ stfd f29, 0x50(r1) +/* 8023CBC8 00239B28 F3 A1 00 58 */ psq_st f29, 88(r1), 0, qr0 +/* 8023CBCC 00239B2C 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 8023CBD0 00239B30 93 C1 00 48 */ stw r30, 0x48(r1) +/* 8023CBD4 00239B34 93 A1 00 44 */ stw r29, 0x44(r1) +/* 8023CBD8 00239B38 93 81 00 40 */ stw r28, 0x40(r1) +/* 8023CBDC 00239B3C 7C 7C 1B 78 */ mr r28, r3 +/* 8023CBE0 00239B40 7C 9E 23 78 */ mr r30, r4 +/* 8023CBE4 00239B44 7C BD 2B 78 */ mr r29, r5 +/* 8023CBE8 00239B48 38 61 00 14 */ addi r3, r1, 0x14 +/* 8023CBEC 00239B4C 4B E7 0B 8D */ bl "__ct__29TCastToPtr<15CGameProjectile>FR7CEntity" +/* 8023CBF0 00239B50 80 A3 00 04 */ lwz r5, 4(r3) +/* 8023CBF4 00239B54 28 05 00 00 */ cmplwi r5, 0 +/* 8023CBF8 00239B58 41 82 00 3C */ beq lbl_8023CC34 +/* 8023CBFC 00239B5C 80 05 01 2C */ lwz r0, 0x12c(r5) +/* 8023CC00 00239B60 2C 00 00 09 */ cmpwi r0, 9 +/* 8023CC04 00239B64 41 82 00 30 */ beq lbl_8023CC34 +/* 8023CC08 00239B68 C0 45 00 60 */ lfs f2, 0x60(r5) +/* 8023CC0C 00239B6C 7F 83 E3 78 */ mr r3, r28 +/* 8023CC10 00239B70 C0 25 00 50 */ lfs f1, 0x50(r5) +/* 8023CC14 00239B74 7F A4 EB 78 */ mr r4, r29 +/* 8023CC18 00239B78 C0 05 00 40 */ lfs f0, 0x40(r5) +/* 8023CC1C 00239B7C 38 A1 00 28 */ addi r5, r1, 0x28 +/* 8023CC20 00239B80 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 8023CC24 00239B84 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 8023CC28 00239B88 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 8023CC2C 00239B8C C0 3C 01 00 */ lfs f1, 0x100(r28) +/* 8023CC30 00239B90 4B FF FE 19 */ bl sub_8023ca48 +lbl_8023CC34: +/* 8023CC34 00239B94 7F C4 F3 78 */ mr r4, r30 +/* 8023CC38 00239B98 38 61 00 0C */ addi r3, r1, 0xc +/* 8023CC3C 00239B9C 4B E6 F7 C5 */ bl "__ct__20TCastToPtr<7CPlayer>FR7CEntity" +/* 8023CC40 00239BA0 83 E3 00 04 */ lwz r31, 4(r3) +/* 8023CC44 00239BA4 28 1F 00 00 */ cmplwi r31, 0 +/* 8023CC48 00239BA8 41 82 00 B4 */ beq lbl_8023CCFC +/* 8023CC4C 00239BAC 83 DC 01 3C */ lwz r30, 0x13c(r28) +/* 8023CC50 00239BB0 48 00 00 94 */ b lbl_8023CCE4 +lbl_8023CC54: +/* 8023CC54 00239BB4 C3 BF 00 60 */ lfs f29, 0x60(r31) +/* 8023CC58 00239BB8 7F C3 F3 78 */ mr r3, r30 +/* 8023CC5C 00239BBC C3 DF 00 50 */ lfs f30, 0x50(r31) +/* 8023CC60 00239BC0 C3 FF 00 40 */ lfs f31, 0x40(r31) +/* 8023CC64 00239BC4 48 00 17 39 */ bl nullsub_21 +/* 8023CC68 00239BC8 C0 43 00 04 */ lfs f2, 4(r3) +/* 8023CC6C 00239BCC C0 23 00 08 */ lfs f1, 8(r3) +/* 8023CC70 00239BD0 C0 03 00 00 */ lfs f0, 0(r3) +/* 8023CC74 00239BD4 EC 42 F0 28 */ fsubs f2, f2, f30 +/* 8023CC78 00239BD8 EC 21 E8 28 */ fsubs f1, f1, f29 +/* 8023CC7C 00239BDC 38 61 00 1C */ addi r3, r1, 0x1c +/* 8023CC80 00239BE0 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 8023CC84 00239BE4 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 8023CC88 00239BE8 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8023CC8C 00239BEC D0 21 00 24 */ stfs f1, 0x24(r1) +/* 8023CC90 00239BF0 48 0D 7C 29 */ bl Magnitude__9CVector3fCFv +/* 8023CC94 00239BF4 C0 1C 01 04 */ lfs f0, 0x104(r28) +/* 8023CC98 00239BF8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8023CC9C 00239BFC 40 80 00 44 */ bge lbl_8023CCE0 +/* 8023CCA0 00239C00 7F C3 F3 78 */ mr r3, r30 +/* 8023CCA4 00239C04 48 00 16 FD */ bl sub_8023e3a0 +/* 8023CCA8 00239C08 2C 03 00 00 */ cmpwi r3, 0 +/* 8023CCAC 00239C0C 40 82 00 34 */ bne lbl_8023CCE0 +/* 8023CCB0 00239C10 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8023CCB4 00239C14 7F A3 EB 78 */ mr r3, r29 +/* 8023CCB8 00239C18 7F E4 FB 78 */ mr r4, r31 +/* 8023CCBC 00239C1C 38 A1 00 08 */ addi r5, r1, 8 +/* 8023CCC0 00239C20 B0 01 00 08 */ sth r0, 8(r1) +/* 8023CCC4 00239C24 38 C0 00 2C */ li r6, 0x2c +/* 8023CCC8 00239C28 4B E0 72 09 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +/* 8023CCCC 00239C2C 88 1C 01 40 */ lbz r0, 0x140(r28) +/* 8023CCD0 00239C30 38 60 00 01 */ li r3, 1 +/* 8023CCD4 00239C34 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 8023CCD8 00239C38 98 1C 01 40 */ stb r0, 0x140(r28) +/* 8023CCDC 00239C3C 48 00 00 20 */ b lbl_8023CCFC +lbl_8023CCE0: +/* 8023CCE0 00239C40 3B DE 00 24 */ addi r30, r30, 0x24 +lbl_8023CCE4: +/* 8023CCE4 00239C44 80 1C 01 34 */ lwz r0, 0x134(r28) +/* 8023CCE8 00239C48 80 7C 01 3C */ lwz r3, 0x13c(r28) +/* 8023CCEC 00239C4C 1C 00 00 24 */ mulli r0, r0, 0x24 +/* 8023CCF0 00239C50 7C 03 02 14 */ add r0, r3, r0 +/* 8023CCF4 00239C54 7C 1E 00 40 */ cmplw r30, r0 +/* 8023CCF8 00239C58 40 82 FF 5C */ bne lbl_8023CC54 +lbl_8023CCFC: +/* 8023CCFC 00239C5C E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 +/* 8023CD00 00239C60 CB E1 00 70 */ lfd f31, 0x70(r1) +/* 8023CD04 00239C64 E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 +/* 8023CD08 00239C68 CB C1 00 60 */ lfd f30, 0x60(r1) +/* 8023CD0C 00239C6C E3 A1 00 58 */ psq_l f29, 88(r1), 0, qr0 +/* 8023CD10 00239C70 CB A1 00 50 */ lfd f29, 0x50(r1) +/* 8023CD14 00239C74 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 8023CD18 00239C78 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 8023CD1C 00239C7C 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 8023CD20 00239C80 80 01 00 84 */ lwz r0, 0x84(r1) +/* 8023CD24 00239C84 83 81 00 40 */ lwz r28, 0x40(r1) +/* 8023CD28 00239C88 7C 08 03 A6 */ mtlr r0 +/* 8023CD2C 00239C8C 38 21 00 80 */ addi r1, r1, 0x80 +/* 8023CD30 00239C90 4E 80 00 20 */ blr + +.global Think__15CSnakeWeedSwarmFfR13CStateManager +Think__15CSnakeWeedSwarmFfR13CStateManager: +/* 8023CD34 00239C94 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 8023CD38 00239C98 7C 08 02 A6 */ mflr r0 +/* 8023CD3C 00239C9C 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 8023CD40 00239CA0 DB E1 00 D0 */ stfd f31, 0xd0(r1) +/* 8023CD44 00239CA4 F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 +/* 8023CD48 00239CA8 DB C1 00 C0 */ stfd f30, 0xc0(r1) +/* 8023CD4C 00239CAC F3 C1 00 C8 */ psq_st f30, 200(r1), 0, qr0 +/* 8023CD50 00239CB0 BF 61 00 AC */ stmw r27, 0xac(r1) +/* 8023CD54 00239CB4 FF E0 08 90 */ fmr f31, f1 +/* 8023CD58 00239CB8 7C 7D 1B 78 */ mr r29, r3 +/* 8023CD5C 00239CBC 7C 9E 23 78 */ mr r30, r4 +/* 8023CD60 00239CC0 4B E1 43 59 */ bl Think__7CEntityFfR13CStateManager +/* 8023CD64 00239CC4 88 1D 00 30 */ lbz r0, 0x30(r29) +/* 8023CD68 00239CC8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8023CD6C 00239CCC 41 82 04 74 */ beq lbl_8023D1E0 +/* 8023CD70 00239CD0 80 7D 01 F0 */ lwz r3, 0x1f0(r29) +/* 8023CD74 00239CD4 28 03 00 00 */ cmplwi r3, 0 +/* 8023CD78 00239CD8 41 82 00 18 */ beq lbl_8023CD90 +/* 8023CD7C 00239CDC 81 83 00 00 */ lwz r12, 0(r3) +/* 8023CD80 00239CE0 FC 20 F8 90 */ fmr f1, f31 +/* 8023CD84 00239CE4 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8023CD88 00239CE8 7D 89 03 A6 */ mtctr r12 +/* 8023CD8C 00239CEC 4E 80 04 21 */ bctrl +lbl_8023CD90: +/* 8023CD90 00239CF0 80 7D 01 F8 */ lwz r3, 0x1f8(r29) +/* 8023CD94 00239CF4 28 03 00 00 */ cmplwi r3, 0 +/* 8023CD98 00239CF8 41 82 00 18 */ beq lbl_8023CDB0 +/* 8023CD9C 00239CFC 81 83 00 00 */ lwz r12, 0(r3) +/* 8023CDA0 00239D00 FC 20 F8 90 */ fmr f1, f31 +/* 8023CDA4 00239D04 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8023CDA8 00239D08 7D 89 03 A6 */ mtctr r12 +/* 8023CDAC 00239D0C 4E 80 04 21 */ bctrl +lbl_8023CDB0: +/* 8023CDB0 00239D10 C0 3D 02 04 */ lfs f1, 0x204(r29) +/* 8023CDB4 00239D14 3B E0 00 00 */ li r31, 0 +/* 8023CDB8 00239D18 C0 02 B7 68 */ lfs f0, lbl_805AD488@sda21(r2) +/* 8023CDBC 00239D1C EC 21 F8 28 */ fsubs f1, f1, f31 +/* 8023CDC0 00239D20 D0 3D 02 04 */ stfs f1, 0x204(r29) +/* 8023CDC4 00239D24 C0 3D 02 04 */ lfs f1, 0x204(r29) +/* 8023CDC8 00239D28 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8023CDCC 00239D2C 40 80 00 0C */ bge lbl_8023CDD8 +/* 8023CDD0 00239D30 D0 1D 02 04 */ stfs f0, 0x204(r29) +/* 8023CDD4 00239D34 3B E0 00 01 */ li r31, 1 +lbl_8023CDD8: +/* 8023CDD8 00239D38 88 1D 01 40 */ lbz r0, 0x140(r29) +/* 8023CDDC 00239D3C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8023CDE0 00239D40 40 82 00 10 */ bne lbl_8023CDF0 +/* 8023CDE4 00239D44 7F A3 EB 78 */ mr r3, r29 +/* 8023CDE8 00239D48 7F C4 F3 78 */ mr r4, r30 +/* 8023CDEC 00239D4C 4B FF F4 4D */ bl sub_8023c238 +lbl_8023CDF0: +/* 8023CDF0 00239D50 88 1D 01 40 */ lbz r0, 0x140(r29) +/* 8023CDF4 00239D54 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8023CDF8 00239D58 41 82 00 5C */ beq lbl_8023CE54 +/* 8023CDFC 00239D5C 80 7D 01 C8 */ lwz r3, 0x1c8(r29) +/* 8023CE00 00239D60 28 03 00 00 */ cmplwi r3, 0 +/* 8023CE04 00239D64 41 82 00 50 */ beq lbl_8023CE54 +/* 8023CE08 00239D68 80 03 00 04 */ lwz r0, 4(r3) +/* 8023CE0C 00239D6C 2C 00 00 00 */ cmpwi r0, 0 +/* 8023CE10 00239D70 40 81 00 44 */ ble lbl_8023CE54 +/* 8023CE14 00239D74 80 7D 01 CC */ lwz r3, 0x1cc(r29) +/* 8023CE18 00239D78 3C 00 43 30 */ lis r0, 0x4330 +/* 8023CE1C 00239D7C 90 01 00 98 */ stw r0, 0x98(r1) +/* 8023CE20 00239D80 80 03 00 04 */ lwz r0, 4(r3) +/* 8023CE24 00239D84 C8 22 B7 80 */ lfd f1, lbl_805AD4A0@sda21(r2) +/* 8023CE28 00239D88 6C 00 80 00 */ xoris r0, r0, 0x8000 +/* 8023CE2C 00239D8C 90 01 00 9C */ stw r0, 0x9c(r1) +/* 8023CE30 00239D90 C8 01 00 98 */ lfd f0, 0x98(r1) +/* 8023CE34 00239D94 EC 00 08 28 */ fsubs f0, f0, f1 +/* 8023CE38 00239D98 EF DF 00 32 */ fmuls f30, f31, f0 +/* 8023CE3C 00239D9C F3 C1 D0 08 */ psq_st f30, 8(r1), 1, qr5 +/* 8023CE40 00239DA0 7F A3 EB 78 */ mr r3, r29 +/* 8023CE44 00239DA4 7F C4 F3 78 */ mr r4, r30 +/* 8023CE48 00239DA8 A8 A1 00 08 */ lha r5, 8(r1) +/* 8023CE4C 00239DAC 38 A5 00 01 */ addi r5, r5, 1 +/* 8023CE50 00239DB0 4B FF EE 59 */ bl sub_8023bca8 +lbl_8023CE54: +/* 8023CE54 00239DB4 88 1D 01 40 */ lbz r0, 0x140(r29) +/* 8023CE58 00239DB8 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8023CE5C 00239DBC 41 82 00 28 */ beq lbl_8023CE84 +/* 8023CE60 00239DC0 7F C3 F3 78 */ mr r3, r30 +/* 8023CE64 00239DC4 4B ED 80 79 */ bl GetRenderingModel__10CModelDataFRC13CStateManager +/* 8023CE68 00239DC8 80 1D 01 C4 */ lwz r0, 0x1c4(r29) +/* 8023CE6C 00239DCC 7C 65 1B 78 */ mr r5, r3 +/* 8023CE70 00239DD0 7C 00 28 00 */ cmpw r0, r5 +/* 8023CE74 00239DD4 41 82 00 10 */ beq lbl_8023CE84 +/* 8023CE78 00239DD8 7F A3 EB 78 */ mr r3, r29 +/* 8023CE7C 00239DDC 7F C4 F3 78 */ mr r4, r30 +/* 8023CE80 00239DE0 48 00 05 F5 */ bl sub_8023d474 +lbl_8023CE84: +/* 8023CE84 00239DE4 3B 60 00 00 */ li r27, 0 +/* 8023CE88 00239DE8 3B 9D 01 B4 */ addi r28, r29, 0x1b4 +lbl_8023CE8C: +/* 8023CE8C 00239DEC 80 7C 00 00 */ lwz r3, 0(r28) +/* 8023CE90 00239DF0 C0 22 B7 74 */ lfs f1, lbl_805AD494@sda21(r2) +/* 8023CE94 00239DF4 80 63 00 00 */ lwz r3, 0(r3) +/* 8023CE98 00239DF8 80 63 00 10 */ lwz r3, 0x10(r3) +/* 8023CE9C 00239DFC 4B DE E5 CD */ bl SetPlaybackRate__9CAnimDataFf +/* 8023CEA0 00239E00 80 1D 00 04 */ lwz r0, 4(r29) +/* 8023CEA4 00239E04 FC 20 F8 90 */ fmr f1, f31 +/* 8023CEA8 00239E08 7F C5 F3 78 */ mr r5, r30 +/* 8023CEAC 00239E0C 38 61 00 7C */ addi r3, r1, 0x7c +/* 8023CEB0 00239E10 90 01 00 34 */ stw r0, 0x34(r1) +/* 8023CEB4 00239E14 38 C1 00 34 */ addi r6, r1, 0x34 +/* 8023CEB8 00239E18 38 E0 00 01 */ li r7, 1 +/* 8023CEBC 00239E1C 80 9C 00 00 */ lwz r4, 0(r28) +/* 8023CEC0 00239E20 90 01 00 30 */ stw r0, 0x30(r1) +/* 8023CEC4 00239E24 80 84 00 00 */ lwz r4, 0(r4) +/* 8023CEC8 00239E28 4B ED 8C 6D */ bl AdvanceAnimation__10CModelDataFfR13CStateManager7TAreaIdb +/* 8023CECC 00239E2C 3B 7B 00 01 */ addi r27, r27, 1 +/* 8023CED0 00239E30 3B 9C 00 04 */ addi r28, r28, 4 +/* 8023CED4 00239E34 2C 1B 00 04 */ cmpwi r27, 4 +/* 8023CED8 00239E38 41 80 FF B4 */ blt lbl_8023CE8C +/* 8023CEDC 00239E3C 83 9D 01 3C */ lwz r28, 0x13c(r29) +/* 8023CEE0 00239E40 3B 60 00 00 */ li r27, 0 +/* 8023CEE4 00239E44 48 00 01 BC */ b lbl_8023D0A0 +lbl_8023CEE8: +/* 8023CEE8 00239E48 7F 83 E3 78 */ mr r3, r28 +/* 8023CEEC 00239E4C 48 00 14 B5 */ bl sub_8023e3a0 +/* 8023CEF0 00239E50 2C 03 00 02 */ cmpwi r3, 2 +/* 8023CEF4 00239E54 41 82 00 A8 */ beq lbl_8023CF9C +/* 8023CEF8 00239E58 40 80 00 14 */ bge lbl_8023CF0C +/* 8023CEFC 00239E5C 2C 03 00 00 */ cmpwi r3, 0 +/* 8023CF00 00239E60 41 82 00 18 */ beq lbl_8023CF18 +/* 8023CF04 00239E64 40 80 00 44 */ bge lbl_8023CF48 +/* 8023CF08 00239E68 48 00 01 94 */ b lbl_8023D09C +lbl_8023CF0C: +/* 8023CF0C 00239E6C 2C 03 00 04 */ cmpwi r3, 4 +/* 8023CF10 00239E70 40 80 01 8C */ bge lbl_8023D09C +/* 8023CF14 00239E74 48 00 01 08 */ b lbl_8023D01C +lbl_8023CF18: +/* 8023CF18 00239E78 80 1D 01 F8 */ lwz r0, 0x1f8(r29) +/* 8023CF1C 00239E7C 3B 7B 00 01 */ addi r27, r27, 1 +/* 8023CF20 00239E80 28 00 00 00 */ cmplwi r0, 0 +/* 8023CF24 00239E84 41 82 01 78 */ beq lbl_8023D09C +/* 8023CF28 00239E88 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 8023CF2C 00239E8C 41 82 01 70 */ beq lbl_8023D09C +/* 8023CF30 00239E90 7F 83 E3 78 */ mr r3, r28 +/* 8023CF34 00239E94 48 00 14 69 */ bl nullsub_21 +/* 8023CF38 00239E98 7C 64 1B 78 */ mr r4, r3 +/* 8023CF3C 00239E9C 7F A3 EB 78 */ mr r3, r29 +/* 8023CF40 00239EA0 4B FF E9 65 */ bl sub_8023b8a4 +/* 8023CF44 00239EA4 48 00 01 58 */ b lbl_8023D09C +lbl_8023CF48: +/* 8023CF48 00239EA8 7F 83 E3 78 */ mr r3, r28 +/* 8023CF4C 00239EAC 48 00 14 39 */ bl sub_8023e384 +/* 8023CF50 00239EB0 FF C0 08 90 */ fmr f30, f1 +/* 8023CF54 00239EB4 7F 83 E3 78 */ mr r3, r28 +/* 8023CF58 00239EB8 48 00 14 1D */ bl sub_8023e374 +/* 8023CF5C 00239EBC EC 3F F0 7C */ fnmsubs f1, f31, f1, f30 +/* 8023CF60 00239EC0 7F 83 E3 78 */ mr r3, r28 +/* 8023CF64 00239EC4 48 00 14 19 */ bl sub_8023e37c +/* 8023CF68 00239EC8 7F 83 E3 78 */ mr r3, r28 +/* 8023CF6C 00239ECC 48 00 14 19 */ bl sub_8023e384 +/* 8023CF70 00239ED0 C0 02 B7 68 */ lfs f0, lbl_805AD488@sda21(r2) +/* 8023CF74 00239ED4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8023CF78 00239ED8 4C 40 13 82 */ cror 2, 0, 2 +/* 8023CF7C 00239EDC 40 82 01 20 */ bne lbl_8023D09C +/* 8023CF80 00239EE0 FC 20 00 90 */ fmr f1, f0 +/* 8023CF84 00239EE4 7F 83 E3 78 */ mr r3, r28 +/* 8023CF88 00239EE8 48 00 13 F5 */ bl sub_8023e37c +/* 8023CF8C 00239EEC 7F 83 E3 78 */ mr r3, r28 +/* 8023CF90 00239EF0 38 80 00 00 */ li r4, 0 +/* 8023CF94 00239EF4 48 00 14 15 */ bl sub_8023e3a8 +/* 8023CF98 00239EF8 48 00 01 04 */ b lbl_8023D09C +lbl_8023CF9C: +/* 8023CF9C 00239EFC 7F 83 E3 78 */ mr r3, r28 +/* 8023CFA0 00239F00 48 00 13 F5 */ bl sub_8023e394 +/* 8023CFA4 00239F04 EC 21 F8 28 */ fsubs f1, f1, f31 +/* 8023CFA8 00239F08 7F 83 E3 78 */ mr r3, r28 +/* 8023CFAC 00239F0C 48 00 13 E1 */ bl sub_8023e38c +/* 8023CFB0 00239F10 7F 83 E3 78 */ mr r3, r28 +/* 8023CFB4 00239F14 48 00 13 E1 */ bl sub_8023e394 +/* 8023CFB8 00239F18 C0 02 B7 68 */ lfs f0, lbl_805AD488@sda21(r2) +/* 8023CFBC 00239F1C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8023CFC0 00239F20 4C 40 13 82 */ cror 2, 0, 2 +/* 8023CFC4 00239F24 40 82 00 D8 */ bne lbl_8023D09C +/* 8023CFC8 00239F28 7F 83 E3 78 */ mr r3, r28 +/* 8023CFCC 00239F2C 38 80 00 01 */ li r4, 1 +/* 8023CFD0 00239F30 48 00 13 D9 */ bl sub_8023e3a8 +/* 8023CFD4 00239F34 7F 83 E3 78 */ mr r3, r28 +/* 8023CFD8 00239F38 48 00 13 C5 */ bl nullsub_21 +/* 8023CFDC 00239F3C 3C A0 80 5A */ lis r5, skZero3f@ha +/* 8023CFE0 00239F40 A0 9D 01 D4 */ lhz r4, 0x1d4(r29) +/* 8023CFE4 00239F44 38 C5 66 A0 */ addi r6, r5, skZero3f@l +/* 8023CFE8 00239F48 A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) +/* 8023CFEC 00239F4C 7C 65 1B 78 */ mr r5, r3 +/* 8023CFF0 00239F50 81 5D 00 04 */ lwz r10, 4(r29) +/* 8023CFF4 00239F54 38 61 00 2C */ addi r3, r1, 0x2c +/* 8023CFF8 00239F58 38 E0 00 01 */ li r7, 1 +/* 8023CFFC 00239F5C 39 00 00 00 */ li r8, 0 +/* 8023D000 00239F60 48 0A D2 B1 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +/* 8023D004 00239F64 7F 83 E3 78 */ mr r3, r28 +/* 8023D008 00239F68 48 00 13 95 */ bl nullsub_21 +/* 8023D00C 00239F6C 7C 64 1B 78 */ mr r4, r3 +/* 8023D010 00239F70 7F A3 EB 78 */ mr r3, r29 +/* 8023D014 00239F74 4B FF E8 01 */ bl sub_8023b814 +/* 8023D018 00239F78 48 00 00 84 */ b lbl_8023D09C +lbl_8023D01C: +/* 8023D01C 00239F7C 7F 83 E3 78 */ mr r3, r28 +/* 8023D020 00239F80 48 00 13 65 */ bl sub_8023e384 +/* 8023D024 00239F84 FF C0 08 90 */ fmr f30, f1 +/* 8023D028 00239F88 7F 83 E3 78 */ mr r3, r28 +/* 8023D02C 00239F8C 48 00 13 49 */ bl sub_8023e374 +/* 8023D030 00239F90 EC 3F F0 7A */ fmadds f1, f31, f1, f30 +/* 8023D034 00239F94 7F 83 E3 78 */ mr r3, r28 +/* 8023D038 00239F98 48 00 13 45 */ bl sub_8023e37c +/* 8023D03C 00239F9C 7F 83 E3 78 */ mr r3, r28 +/* 8023D040 00239FA0 48 00 13 25 */ bl sub_8023e364 +/* 8023D044 00239FA4 C0 1D 01 10 */ lfs f0, 0x110(r29) +/* 8023D048 00239FA8 7F 83 E3 78 */ mr r3, r28 +/* 8023D04C 00239FAC EF C0 00 72 */ fmuls f30, f0, f1 +/* 8023D050 00239FB0 48 00 13 35 */ bl sub_8023e384 +/* 8023D054 00239FB4 FC 01 F0 40 */ fcmpo cr0, f1, f30 +/* 8023D058 00239FB8 40 81 00 44 */ ble lbl_8023D09C +/* 8023D05C 00239FBC 7F 83 E3 78 */ mr r3, r28 +/* 8023D060 00239FC0 48 00 13 05 */ bl sub_8023e364 +/* 8023D064 00239FC4 C0 1D 01 10 */ lfs f0, 0x110(r29) +/* 8023D068 00239FC8 7F 83 E3 78 */ mr r3, r28 +/* 8023D06C 00239FCC EC 20 00 72 */ fmuls f1, f0, f1 +/* 8023D070 00239FD0 48 00 13 0D */ bl sub_8023e37c +/* 8023D074 00239FD4 80 7E 09 00 */ lwz r3, 0x900(r30) +/* 8023D078 00239FD8 48 0D 54 65 */ bl Float__9CRandom16Fv +/* 8023D07C 00239FDC C0 5D 01 0C */ lfs f2, 0x10c(r29) +/* 8023D080 00239FE0 7F 83 E3 78 */ mr r3, r28 +/* 8023D084 00239FE4 C0 1D 01 08 */ lfs f0, 0x108(r29) +/* 8023D088 00239FE8 EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 8023D08C 00239FEC 48 00 13 01 */ bl sub_8023e38c +/* 8023D090 00239FF0 7F 83 E3 78 */ mr r3, r28 +/* 8023D094 00239FF4 38 80 00 02 */ li r4, 2 +/* 8023D098 00239FF8 48 00 13 11 */ bl sub_8023e3a8 +lbl_8023D09C: +/* 8023D09C 00239FFC 3B 9C 00 24 */ addi r28, r28, 0x24 +lbl_8023D0A0: +/* 8023D0A0 0023A000 80 1D 01 34 */ lwz r0, 0x134(r29) +/* 8023D0A4 0023A004 80 7D 01 3C */ lwz r3, 0x13c(r29) +/* 8023D0A8 0023A008 1C 00 00 24 */ mulli r0, r0, 0x24 +/* 8023D0AC 0023A00C 7C 03 02 14 */ add r0, r3, r0 +/* 8023D0B0 0023A010 7C 1C 00 40 */ cmplw r28, r0 +/* 8023D0B4 0023A014 40 82 FE 34 */ bne lbl_8023CEE8 +/* 8023D0B8 0023A018 2C 1B 00 00 */ cmpwi r27, 0 +/* 8023D0BC 0023A01C 40 81 00 5C */ ble lbl_8023D118 +/* 8023D0C0 0023A020 80 1D 01 D8 */ lwz r0, 0x1d8(r29) +/* 8023D0C4 0023A024 28 00 00 00 */ cmplwi r0, 0 +/* 8023D0C8 0023A028 40 82 00 74 */ bne lbl_8023D13C +/* 8023D0CC 0023A02C 81 5D 00 04 */ lwz r10, 4(r29) +/* 8023D0D0 0023A030 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8023D0D4 0023A034 C0 5D 00 60 */ lfs f2, 0x60(r29) +/* 8023D0D8 0023A038 38 C3 66 A0 */ addi r6, r3, skZero3f@l +/* 8023D0DC 0023A03C C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 8023D0E0 0023A040 38 61 00 28 */ addi r3, r1, 0x28 +/* 8023D0E4 0023A044 C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 8023D0E8 0023A048 38 A1 00 38 */ addi r5, r1, 0x38 +/* 8023D0EC 0023A04C A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) +/* 8023D0F0 0023A050 38 E0 00 01 */ li r7, 1 +/* 8023D0F4 0023A054 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 8023D0F8 0023A058 39 00 00 01 */ li r8, 1 +/* 8023D0FC 0023A05C D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 8023D100 0023A060 D0 41 00 40 */ stfs f2, 0x40(r1) +/* 8023D104 0023A064 A0 9D 01 D0 */ lhz r4, 0x1d0(r29) +/* 8023D108 0023A068 48 0A D1 A9 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +/* 8023D10C 0023A06C 80 01 00 28 */ lwz r0, 0x28(r1) +/* 8023D110 0023A070 90 1D 01 D8 */ stw r0, 0x1d8(r29) +/* 8023D114 0023A074 48 00 00 28 */ b lbl_8023D13C +lbl_8023D118: +/* 8023D118 0023A078 80 1D 01 D8 */ lwz r0, 0x1d8(r29) +/* 8023D11C 0023A07C 28 00 00 00 */ cmplwi r0, 0 +/* 8023D120 0023A080 41 82 00 1C */ beq lbl_8023D13C +/* 8023D124 0023A084 80 1D 01 D8 */ lwz r0, 0x1d8(r29) +/* 8023D128 0023A088 38 61 00 24 */ addi r3, r1, 0x24 +/* 8023D12C 0023A08C 90 01 00 24 */ stw r0, 0x24(r1) +/* 8023D130 0023A090 48 0A CD 55 */ bl RemoveEmitter__11CSfxManagerFRC10CSfxHandle +/* 8023D134 0023A094 38 00 00 00 */ li r0, 0 +/* 8023D138 0023A098 90 1D 01 D8 */ stw r0, 0x1d8(r29) +lbl_8023D13C: +/* 8023D13C 0023A09C 88 1D 01 40 */ lbz r0, 0x140(r29) +/* 8023D140 0023A0A0 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 8023D144 0023A0A4 41 82 00 8C */ beq lbl_8023D1D0 +/* 8023D148 0023A0A8 80 AD 96 70 */ lwz r5, lbl_805A8230@sda21(r13) +/* 8023D14C 0023A0AC 38 60 00 00 */ li r3, 0 +/* 8023D150 0023A0B0 38 80 00 01 */ li r4, 1 +/* 8023D154 0023A0B4 48 14 CD A1 */ bl __shl2i +/* 8023D158 0023A0B8 38 A0 00 00 */ li r5, 0 +/* 8023D15C 0023A0BC 38 00 00 03 */ li r0, 3 +/* 8023D160 0023A0C0 90 81 00 4C */ stw r4, 0x4c(r1) +/* 8023D164 0023A0C4 FC 20 F8 90 */ fmr f1, f31 +/* 8023D168 0023A0C8 38 9D 01 5C */ addi r4, r29, 0x15c +/* 8023D16C 0023A0CC 90 61 00 48 */ stw r3, 0x48(r1) +/* 8023D170 0023A0D0 38 61 00 60 */ addi r3, r1, 0x60 +/* 8023D174 0023A0D4 90 A1 00 54 */ stw r5, 0x54(r1) +/* 8023D178 0023A0D8 90 A1 00 50 */ stw r5, 0x50(r1) +/* 8023D17C 0023A0DC 90 01 00 58 */ stw r0, 0x58(r1) +/* 8023D180 0023A0E0 A0 1D 00 08 */ lhz r0, 8(r29) +/* 8023D184 0023A0E4 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8023D188 0023A0E8 80 BE 08 4C */ lwz r5, 0x84c(r30) +/* 8023D18C 0023A0EC B0 01 00 0C */ sth r0, 0xc(r1) +/* 8023D190 0023A0F0 A0 A5 00 08 */ lhz r5, 8(r5) +/* 8023D194 0023A0F4 B0 A1 00 18 */ sth r5, 0x18(r1) +/* 8023D198 0023A0F8 A0 1D 00 08 */ lhz r0, 8(r29) +/* 8023D19C 0023A0FC B0 A1 00 14 */ sth r5, 0x14(r1) +/* 8023D1A0 0023A100 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 8023D1A4 0023A104 B0 01 00 20 */ sth r0, 0x20(r1) +/* 8023D1A8 0023A108 4B E8 62 A1 */ bl __ct__11CDamageInfoFRC11CDamageInfof +/* 8023D1AC 0023A10C 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8023D1B0 0023A110 7F C3 F3 78 */ mr r3, r30 +/* 8023D1B4 0023A114 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 8023D1B8 0023A118 38 A1 00 18 */ addi r5, r1, 0x18 +/* 8023D1BC 0023A11C 38 81 00 20 */ addi r4, r1, 0x20 +/* 8023D1C0 0023A120 38 C1 00 10 */ addi r6, r1, 0x10 +/* 8023D1C4 0023A124 38 E1 00 60 */ addi r7, r1, 0x60 +/* 8023D1C8 0023A128 39 01 00 48 */ addi r8, r1, 0x48 +/* 8023D1CC 0023A12C 4B E0 CE D5 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +lbl_8023D1D0: +/* 8023D1D0 0023A130 88 1D 01 40 */ lbz r0, 0x140(r29) +/* 8023D1D4 0023A134 38 60 00 00 */ li r3, 0 +/* 8023D1D8 0023A138 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 8023D1DC 0023A13C 98 1D 01 40 */ stb r0, 0x140(r29) +lbl_8023D1E0: +/* 8023D1E0 0023A140 E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 +/* 8023D1E4 0023A144 CB E1 00 D0 */ lfd f31, 0xd0(r1) +/* 8023D1E8 0023A148 E3 C1 00 C8 */ psq_l f30, 200(r1), 0, qr0 +/* 8023D1EC 0023A14C CB C1 00 C0 */ lfd f30, 0xc0(r1) +/* 8023D1F0 0023A150 BB 61 00 AC */ lmw r27, 0xac(r1) +/* 8023D1F4 0023A154 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 8023D1F8 0023A158 7C 08 03 A6 */ mtlr r0 +/* 8023D1FC 0023A15C 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 8023D200 0023A160 4E 80 00 20 */ blr + +.global sub_8023d204 +sub_8023d204: +/* 8023D204 0023A164 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 8023D208 0023A168 7C 08 02 A6 */ mflr r0 +/* 8023D20C 0023A16C 90 01 00 74 */ stw r0, 0x74(r1) +/* 8023D210 0023A170 DB E1 00 60 */ stfd f31, 0x60(r1) +/* 8023D214 0023A174 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 8023D218 0023A178 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 8023D21C 0023A17C 93 C1 00 58 */ stw r30, 0x58(r1) +/* 8023D220 0023A180 7C 7F 1B 78 */ mr r31, r3 +/* 8023D224 0023A184 80 03 01 34 */ lwz r0, 0x134(r3) +/* 8023D228 0023A188 2C 00 00 00 */ cmpwi r0, 0 +/* 8023D22C 0023A18C 40 81 00 D8 */ ble lbl_8023D304 +/* 8023D230 0023A190 3C 60 80 5A */ lis r3, lbl_805A6754@ha +/* 8023D234 0023A194 38 83 67 54 */ addi r4, r3, lbl_805A6754@l +/* 8023D238 0023A198 80 64 00 00 */ lwz r3, 0(r4) +/* 8023D23C 0023A19C 80 04 00 04 */ lwz r0, 4(r4) +/* 8023D240 0023A1A0 90 7F 01 44 */ stw r3, 0x144(r31) +/* 8023D244 0023A1A4 90 1F 01 48 */ stw r0, 0x148(r31) +/* 8023D248 0023A1A8 80 04 00 08 */ lwz r0, 8(r4) +/* 8023D24C 0023A1AC 90 1F 01 4C */ stw r0, 0x14c(r31) +/* 8023D250 0023A1B0 80 64 00 0C */ lwz r3, 0xc(r4) +/* 8023D254 0023A1B4 80 04 00 10 */ lwz r0, 0x10(r4) +/* 8023D258 0023A1B8 90 7F 01 50 */ stw r3, 0x150(r31) +/* 8023D25C 0023A1BC 90 1F 01 54 */ stw r0, 0x154(r31) +/* 8023D260 0023A1C0 80 04 00 14 */ lwz r0, 0x14(r4) +/* 8023D264 0023A1C4 90 1F 01 58 */ stw r0, 0x158(r31) +/* 8023D268 0023A1C8 C3 FF 01 00 */ lfs f31, 0x100(r31) +/* 8023D26C 0023A1CC 83 DF 01 3C */ lwz r30, 0x13c(r31) +/* 8023D270 0023A1D0 48 00 00 78 */ b lbl_8023D2E8 +lbl_8023D274: +/* 8023D274 0023A1D4 7F C3 F3 78 */ mr r3, r30 +/* 8023D278 0023A1D8 48 00 11 25 */ bl nullsub_21 +/* 8023D27C 0023A1DC C0 43 00 04 */ lfs f2, 4(r3) +/* 8023D280 0023A1E0 38 81 00 2C */ addi r4, r1, 0x2c +/* 8023D284 0023A1E4 C0 23 00 08 */ lfs f1, 8(r3) +/* 8023D288 0023A1E8 C0 03 00 00 */ lfs f0, 0(r3) +/* 8023D28C 0023A1EC EC 42 F8 28 */ fsubs f2, f2, f31 +/* 8023D290 0023A1F0 EC 21 F8 28 */ fsubs f1, f1, f31 +/* 8023D294 0023A1F4 38 7F 01 44 */ addi r3, r31, 0x144 +/* 8023D298 0023A1F8 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 8023D29C 0023A1FC D0 41 00 30 */ stfs f2, 0x30(r1) +/* 8023D2A0 0023A200 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 8023D2A4 0023A204 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 8023D2A8 0023A208 48 0F A8 61 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 8023D2AC 0023A20C 7F C3 F3 78 */ mr r3, r30 +/* 8023D2B0 0023A210 48 00 10 ED */ bl nullsub_21 +/* 8023D2B4 0023A214 C0 43 00 04 */ lfs f2, 4(r3) +/* 8023D2B8 0023A218 38 81 00 20 */ addi r4, r1, 0x20 +/* 8023D2BC 0023A21C C0 23 00 08 */ lfs f1, 8(r3) +/* 8023D2C0 0023A220 C0 03 00 00 */ lfs f0, 0(r3) +/* 8023D2C4 0023A224 EC 42 F8 2A */ fadds f2, f2, f31 +/* 8023D2C8 0023A228 EC 21 F8 2A */ fadds f1, f1, f31 +/* 8023D2CC 0023A22C 38 7F 01 44 */ addi r3, r31, 0x144 +/* 8023D2D0 0023A230 EC 00 F8 2A */ fadds f0, f0, f31 +/* 8023D2D4 0023A234 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 8023D2D8 0023A238 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 8023D2DC 0023A23C D0 21 00 28 */ stfs f1, 0x28(r1) +/* 8023D2E0 0023A240 48 0F A8 29 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 8023D2E4 0023A244 3B DE 00 24 */ addi r30, r30, 0x24 +lbl_8023D2E8: +/* 8023D2E8 0023A248 80 1F 01 34 */ lwz r0, 0x134(r31) +/* 8023D2EC 0023A24C 80 7F 01 3C */ lwz r3, 0x13c(r31) +/* 8023D2F0 0023A250 1C 00 00 24 */ mulli r0, r0, 0x24 +/* 8023D2F4 0023A254 7C 03 02 14 */ add r0, r3, r0 +/* 8023D2F8 0023A258 7C 1E 00 40 */ cmplw r30, r0 +/* 8023D2FC 0023A25C 40 82 FF 78 */ bne lbl_8023D274 +/* 8023D300 0023A260 48 00 00 68 */ b lbl_8023D368 +lbl_8023D304: +/* 8023D304 0023A264 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 8023D308 0023A268 38 61 00 38 */ addi r3, r1, 0x38 +/* 8023D30C 0023A26C C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 8023D310 0023A270 38 81 00 14 */ addi r4, r1, 0x14 +/* 8023D314 0023A274 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8023D318 0023A278 38 A1 00 08 */ addi r5, r1, 8 +/* 8023D31C 0023A27C D0 01 00 08 */ stfs f0, 8(r1) +/* 8023D320 0023A280 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 8023D324 0023A284 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 8023D328 0023A288 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 8023D32C 0023A28C D0 21 00 18 */ stfs f1, 0x18(r1) +/* 8023D330 0023A290 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 8023D334 0023A294 48 0F B1 D5 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 8023D338 0023A298 80 61 00 38 */ lwz r3, 0x38(r1) +/* 8023D33C 0023A29C 80 01 00 3C */ lwz r0, 0x3c(r1) +/* 8023D340 0023A2A0 90 7F 01 44 */ stw r3, 0x144(r31) +/* 8023D344 0023A2A4 90 1F 01 48 */ stw r0, 0x148(r31) +/* 8023D348 0023A2A8 80 01 00 40 */ lwz r0, 0x40(r1) +/* 8023D34C 0023A2AC 90 1F 01 4C */ stw r0, 0x14c(r31) +/* 8023D350 0023A2B0 80 61 00 44 */ lwz r3, 0x44(r1) +/* 8023D354 0023A2B4 80 01 00 48 */ lwz r0, 0x48(r1) +/* 8023D358 0023A2B8 90 7F 01 50 */ stw r3, 0x150(r31) +/* 8023D35C 0023A2BC 90 1F 01 54 */ stw r0, 0x154(r31) +/* 8023D360 0023A2C0 80 01 00 4C */ lwz r0, 0x4c(r1) +/* 8023D364 0023A2C4 90 1F 01 58 */ stw r0, 0x158(r31) +lbl_8023D368: +/* 8023D368 0023A2C8 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 8023D36C 0023A2CC 38 60 00 01 */ li r3, 1 +/* 8023D370 0023A2D0 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 8023D374 0023A2D4 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 8023D378 0023A2D8 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 8023D37C 0023A2DC 80 01 00 74 */ lwz r0, 0x74(r1) +/* 8023D380 0023A2E0 CB E1 00 60 */ lfd f31, 0x60(r1) +/* 8023D384 0023A2E4 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 8023D388 0023A2E8 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 8023D38C 0023A2EC 7C 08 03 A6 */ mtlr r0 +/* 8023D390 0023A2F0 38 21 00 70 */ addi r1, r1, 0x70 +/* 8023D394 0023A2F4 4E 80 00 20 */ blr + +.global GetTouchBounds__15CSnakeWeedSwarmCFv +GetTouchBounds__15CSnakeWeedSwarmCFv: +/* 8023D398 0023A2F8 88 04 01 40 */ lbz r0, 0x140(r4) +/* 8023D39C 0023A2FC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8023D3A0 0023A300 40 82 00 10 */ bne lbl_8023D3B0 +/* 8023D3A4 0023A304 38 00 00 00 */ li r0, 0 +/* 8023D3A8 0023A308 98 03 00 18 */ stb r0, 0x18(r3) +/* 8023D3AC 0023A30C 4E 80 00 20 */ blr +lbl_8023D3B0: +/* 8023D3B0 0023A310 38 00 00 01 */ li r0, 1 +/* 8023D3B4 0023A314 28 03 00 00 */ cmplwi r3, 0 +/* 8023D3B8 0023A318 98 03 00 18 */ stb r0, 0x18(r3) +/* 8023D3BC 0023A31C 4D 82 00 20 */ beqlr +/* 8023D3C0 0023A320 C0 04 01 44 */ lfs f0, 0x144(r4) +/* 8023D3C4 0023A324 D0 03 00 00 */ stfs f0, 0(r3) +/* 8023D3C8 0023A328 C0 04 01 48 */ lfs f0, 0x148(r4) +/* 8023D3CC 0023A32C D0 03 00 04 */ stfs f0, 4(r3) +/* 8023D3D0 0023A330 C0 04 01 4C */ lfs f0, 0x14c(r4) +/* 8023D3D4 0023A334 D0 03 00 08 */ stfs f0, 8(r3) +/* 8023D3D8 0023A338 C0 04 01 50 */ lfs f0, 0x150(r4) +/* 8023D3DC 0023A33C D0 03 00 0C */ stfs f0, 0xc(r3) +/* 8023D3E0 0023A340 C0 04 01 54 */ lfs f0, 0x154(r4) +/* 8023D3E4 0023A344 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 8023D3E8 0023A348 C0 04 01 58 */ lfs f0, 0x158(r4) +/* 8023D3EC 0023A34C D0 03 00 14 */ stfs f0, 0x14(r3) +/* 8023D3F0 0023A350 4E 80 00 20 */ blr + +.global sub_8023d3f4 +sub_8023d3f4: +/* 8023D3F4 0023A354 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8023D3F8 0023A358 7C 08 02 A6 */ mflr r0 +/* 8023D3FC 0023A35C C0 82 B7 90 */ lfs f4, lbl_805AD4B0@sda21(r2) +/* 8023D400 0023A360 90 01 00 24 */ stw r0, 0x24(r1) +/* 8023D404 0023A364 38 A1 00 08 */ addi r5, r1, 8 +/* 8023D408 0023A368 C0 44 00 F0 */ lfs f2, 0xf0(r4) +/* 8023D40C 0023A36C C0 24 00 EC */ lfs f1, 0xec(r4) +/* 8023D410 0023A370 EC C4 00 B2 */ fmuls f6, f4, f2 +/* 8023D414 0023A374 C0 04 00 E8 */ lfs f0, 0xe8(r4) +/* 8023D418 0023A378 EC A4 00 72 */ fmuls f5, f4, f1 +/* 8023D41C 0023A37C C0 44 00 60 */ lfs f2, 0x60(r4) +/* 8023D420 0023A380 EC 84 00 32 */ fmuls f4, f4, f0 +/* 8023D424 0023A384 C0 64 00 50 */ lfs f3, 0x50(r4) +/* 8023D428 0023A388 C0 04 00 40 */ lfs f0, 0x40(r4) +/* 8023D42C 0023A38C ED 03 28 2A */ fadds f8, f3, f5 +/* 8023D430 0023A390 EC E2 30 2A */ fadds f7, f2, f6 +/* 8023D434 0023A394 38 81 00 14 */ addi r4, r1, 0x14 +/* 8023D438 0023A398 EC 20 20 2A */ fadds f1, f0, f4 +/* 8023D43C 0023A39C EC 63 28 28 */ fsubs f3, f3, f5 +/* 8023D440 0023A3A0 D1 01 00 0C */ stfs f8, 0xc(r1) +/* 8023D444 0023A3A4 EC 42 30 28 */ fsubs f2, f2, f6 +/* 8023D448 0023A3A8 EC 00 20 28 */ fsubs f0, f0, f4 +/* 8023D44C 0023A3AC D0 21 00 08 */ stfs f1, 8(r1) +/* 8023D450 0023A3B0 D0 E1 00 10 */ stfs f7, 0x10(r1) +/* 8023D454 0023A3B4 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 8023D458 0023A3B8 D0 61 00 18 */ stfs f3, 0x18(r1) +/* 8023D45C 0023A3BC D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 8023D460 0023A3C0 48 0F B0 A9 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 8023D464 0023A3C4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8023D468 0023A3C8 7C 08 03 A6 */ mtlr r0 +/* 8023D46C 0023A3CC 38 21 00 20 */ addi r1, r1, 0x20 +/* 8023D470 0023A3D0 4E 80 00 20 */ blr + +.global sub_8023d474 +sub_8023d474: +/* 8023D474 0023A3D4 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 8023D478 0023A3D8 7C 08 02 A6 */ mflr r0 +/* 8023D47C 0023A3DC 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 8023D480 0023A3E0 DB E1 00 90 */ stfd f31, 0x90(r1) +/* 8023D484 0023A3E4 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 +/* 8023D488 0023A3E8 DB C1 00 80 */ stfd f30, 0x80(r1) +/* 8023D48C 0023A3EC F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 +/* 8023D490 0023A3F0 BE C1 00 58 */ stmw r22, 0x58(r1) +/* 8023D494 0023A3F4 7C 79 1B 78 */ mr r25, r3 +/* 8023D498 0023A3F8 7C 9A 23 78 */ mr r26, r4 +/* 8023D49C 0023A3FC 3B D9 01 7C */ addi r30, r25, 0x17c +/* 8023D4A0 0023A400 7C BB 2B 78 */ mr r27, r5 +/* 8023D4A4 0023A404 7F D8 F3 78 */ mr r24, r30 +/* 8023D4A8 0023A408 3A E0 00 00 */ li r23, 0 +/* 8023D4AC 0023A40C 48 00 00 28 */ b lbl_8023D4D4 +lbl_8023D4B0: +/* 8023D4B0 0023A410 28 18 00 00 */ cmplwi r24, 0 +/* 8023D4B4 0023A414 41 82 00 18 */ beq lbl_8023D4CC +/* 8023D4B8 0023A418 88 18 00 00 */ lbz r0, 0(r24) +/* 8023D4BC 0023A41C 28 00 00 00 */ cmplwi r0, 0 +/* 8023D4C0 0023A420 41 82 00 0C */ beq lbl_8023D4CC +/* 8023D4C4 0023A424 80 78 00 04 */ lwz r3, 4(r24) +/* 8023D4C8 0023A428 48 0D 84 69 */ bl Free__7CMemoryFPCv +lbl_8023D4CC: +/* 8023D4CC 0023A42C 3B 18 00 08 */ addi r24, r24, 8 +/* 8023D4D0 0023A430 3A F7 00 01 */ addi r23, r23, 1 +lbl_8023D4D4: +/* 8023D4D4 0023A434 80 19 01 78 */ lwz r0, 0x178(r25) +/* 8023D4D8 0023A438 7C 17 00 00 */ cmpw r23, r0 +/* 8023D4DC 0023A43C 41 80 FF D4 */ blt lbl_8023D4B0 +/* 8023D4E0 0023A440 38 60 00 00 */ li r3, 0 +/* 8023D4E4 0023A444 3B B9 01 A0 */ addi r29, r25, 0x1a0 +/* 8023D4E8 0023A448 90 79 01 78 */ stw r3, 0x178(r25) +/* 8023D4EC 0023A44C 80 B9 01 9C */ lwz r5, 0x19c(r25) +/* 8023D4F0 0023A450 2C 05 00 00 */ cmpwi r5, 0 +/* 8023D4F4 0023A454 40 81 00 40 */ ble lbl_8023D534 +/* 8023D4F8 0023A458 2C 05 00 08 */ cmpwi r5, 8 +/* 8023D4FC 0023A45C 38 85 FF F8 */ addi r4, r5, -8 +/* 8023D500 0023A460 40 81 00 20 */ ble lbl_8023D520 +/* 8023D504 0023A464 38 04 00 07 */ addi r0, r4, 7 +/* 8023D508 0023A468 54 00 E8 FE */ srwi r0, r0, 3 +/* 8023D50C 0023A46C 7C 09 03 A6 */ mtctr r0 +/* 8023D510 0023A470 2C 04 00 00 */ cmpwi r4, 0 +/* 8023D514 0023A474 40 81 00 0C */ ble lbl_8023D520 +lbl_8023D518: +/* 8023D518 0023A478 38 63 00 08 */ addi r3, r3, 8 +/* 8023D51C 0023A47C 42 00 FF FC */ bdnz lbl_8023D518 +lbl_8023D520: +/* 8023D520 0023A480 7C 03 28 50 */ subf r0, r3, r5 +/* 8023D524 0023A484 7C 09 03 A6 */ mtctr r0 +/* 8023D528 0023A488 7C 03 28 00 */ cmpw r3, r5 +/* 8023D52C 0023A48C 40 80 00 08 */ bge lbl_8023D534 +lbl_8023D530: +/* 8023D530 0023A490 42 00 00 00 */ bdnz lbl_8023D530 +lbl_8023D534: +/* 8023D534 0023A494 38 00 00 00 */ li r0, 0 +/* 8023D538 0023A498 3C 60 80 3D */ lis r3, lbl_803D4388@ha +/* 8023D53C 0023A49C 90 19 01 9C */ stw r0, 0x19c(r25) +/* 8023D540 0023A4A0 3B F9 01 B4 */ addi r31, r25, 0x1b4 +/* 8023D544 0023A4A4 CB C2 B7 80 */ lfd f30, lbl_805AD4A0@sda21(r2) +/* 8023D548 0023A4A8 3A E3 43 88 */ addi r23, r3, lbl_803D4388@l +/* 8023D54C 0023A4AC C3 E2 B7 94 */ lfs f31, lbl_805AD4B4@sda21(r2) +/* 8023D550 0023A4B0 3B 80 00 00 */ li r28, 0 +/* 8023D554 0023A4B4 3F 00 43 30 */ lis r24, 0x4330 +lbl_8023D558: +/* 8023D558 0023A4B8 80 7F 00 00 */ lwz r3, 0(r31) +/* 8023D55C 0023A4BC 7F 64 DB 78 */ mr r4, r27 +/* 8023D560 0023A4C0 80 63 00 00 */ lwz r3, 0(r3) +/* 8023D564 0023A4C4 4B ED 79 F9 */ bl PickAnimatedModel__10CModelDataCFQ210CModelData11EWhichModel +/* 8023D568 0023A4C8 38 81 00 10 */ addi r4, r1, 0x10 +/* 8023D56C 0023A4CC 48 11 50 FD */ bl sub_80352668 +/* 8023D570 0023A4D0 80 19 01 78 */ lwz r0, 0x178(r25) +/* 8023D574 0023A4D4 7C 83 00 D0 */ neg r4, r3 +/* 8023D578 0023A4D8 7C 84 1B 78 */ or r4, r4, r3 +/* 8023D57C 0023A4DC 90 61 00 18 */ stw r3, 0x18(r1) +/* 8023D580 0023A4E0 54 00 18 38 */ slwi r0, r0, 3 +/* 8023D584 0023A4E4 54 84 0F FE */ srwi r4, r4, 0x1f +/* 8023D588 0023A4E8 7C BE 02 15 */ add. r5, r30, r0 +/* 8023D58C 0023A4EC 98 81 00 14 */ stb r4, 0x14(r1) +/* 8023D590 0023A4F0 41 82 00 14 */ beq lbl_8023D5A4 +/* 8023D594 0023A4F4 98 85 00 00 */ stb r4, 0(r5) +/* 8023D598 0023A4F8 38 00 00 00 */ li r0, 0 +/* 8023D59C 0023A4FC 90 65 00 04 */ stw r3, 4(r5) +/* 8023D5A0 0023A500 98 01 00 14 */ stb r0, 0x14(r1) +lbl_8023D5A4: +/* 8023D5A4 0023A504 80 79 01 78 */ lwz r3, 0x178(r25) +/* 8023D5A8 0023A508 88 01 00 14 */ lbz r0, 0x14(r1) +/* 8023D5AC 0023A50C 38 63 00 01 */ addi r3, r3, 1 +/* 8023D5B0 0023A510 28 00 00 00 */ cmplwi r0, 0 +/* 8023D5B4 0023A514 90 79 01 78 */ stw r3, 0x178(r25) +/* 8023D5B8 0023A518 41 82 00 0C */ beq lbl_8023D5C4 +/* 8023D5BC 0023A51C 80 61 00 18 */ lwz r3, 0x18(r1) +/* 8023D5C0 0023A520 48 0D 83 71 */ bl Free__7CMemoryFPCv +lbl_8023D5C4: +/* 8023D5C4 0023A524 80 19 01 9C */ lwz r0, 0x19c(r25) +/* 8023D5C8 0023A528 54 00 10 3A */ slwi r0, r0, 2 +/* 8023D5CC 0023A52C 7C 7D 02 15 */ add. r3, r29, r0 +/* 8023D5D0 0023A530 41 82 00 0C */ beq lbl_8023D5DC +/* 8023D5D4 0023A534 80 01 00 10 */ lwz r0, 0x10(r1) +/* 8023D5D8 0023A538 90 03 00 00 */ stw r0, 0(r3) +lbl_8023D5DC: +/* 8023D5DC 0023A53C 80 79 01 9C */ lwz r3, 0x19c(r25) +/* 8023D5E0 0023A540 38 80 00 01 */ li r4, 1 +/* 8023D5E4 0023A544 38 03 00 01 */ addi r0, r3, 1 +/* 8023D5E8 0023A548 90 19 01 9C */ stw r0, 0x19c(r25) +/* 8023D5EC 0023A54C 80 7F 00 00 */ lwz r3, 0(r31) +/* 8023D5F0 0023A550 80 63 00 00 */ lwz r3, 0(r3) +/* 8023D5F4 0023A554 4B ED 7F 6D */ bl EnableLooping__10CModelDataFb +/* 8023D5F8 0023A558 7E E4 BB 78 */ mr r4, r23 +/* 8023D5FC 0023A55C 38 61 00 1C */ addi r3, r1, 0x1c +/* 8023D600 0023A560 4B DC 76 B9 */ bl string_l__4rstlFPCc +/* 8023D604 0023A564 80 19 00 04 */ lwz r0, 4(r25) +/* 8023D608 0023A568 38 81 00 1C */ addi r4, r1, 0x1c +/* 8023D60C 0023A56C 90 01 00 0C */ stw r0, 0xc(r1) +/* 8023D610 0023A570 80 7F 00 00 */ lwz r3, 0(r31) +/* 8023D614 0023A574 90 01 00 08 */ stw r0, 8(r1) +/* 8023D618 0023A578 82 C3 00 00 */ lwz r22, 0(r3) +/* 8023D61C 0023A57C 80 76 00 10 */ lwz r3, 0x10(r22) +/* 8023D620 0023A580 4B DE EE 4D */ bl "GetAnimTimeRemaining__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8023D624 0023A584 6F 80 80 00 */ xoris r0, r28, 0x8000 +/* 8023D628 0023A588 93 01 00 48 */ stw r24, 0x48(r1) +/* 8023D62C 0023A58C 7E C4 B3 78 */ mr r4, r22 +/* 8023D630 0023A590 7F 45 D3 78 */ mr r5, r26 +/* 8023D634 0023A594 90 01 00 4C */ stw r0, 0x4c(r1) +/* 8023D638 0023A598 38 61 00 2C */ addi r3, r1, 0x2c +/* 8023D63C 0023A59C 38 C1 00 0C */ addi r6, r1, 0xc +/* 8023D640 0023A5A0 38 E0 00 01 */ li r7, 1 +/* 8023D644 0023A5A4 C8 01 00 48 */ lfd f0, 0x48(r1) +/* 8023D648 0023A5A8 EC 00 F0 28 */ fsubs f0, f0, f30 +/* 8023D64C 0023A5AC EC 00 07 F2 */ fmuls f0, f0, f31 +/* 8023D650 0023A5B0 EC 20 00 72 */ fmuls f1, f0, f1 +/* 8023D654 0023A5B4 4B ED 84 E1 */ bl AdvanceAnimation__10CModelDataFfR13CStateManager7TAreaIdb +/* 8023D658 0023A5B8 38 61 00 1C */ addi r3, r1, 0x1c +/* 8023D65C 0023A5BC 48 10 04 85 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8023D660 0023A5C0 3B 9C 00 01 */ addi r28, r28, 1 +/* 8023D664 0023A5C4 3B FF 00 04 */ addi r31, r31, 4 +/* 8023D668 0023A5C8 2C 1C 00 04 */ cmpwi r28, 4 +/* 8023D66C 0023A5CC 41 80 FE EC */ blt lbl_8023D558 +/* 8023D670 0023A5D0 93 79 01 C4 */ stw r27, 0x1c4(r25) +/* 8023D674 0023A5D4 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 +/* 8023D678 0023A5D8 CB E1 00 90 */ lfd f31, 0x90(r1) +/* 8023D67C 0023A5DC E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 +/* 8023D680 0023A5E0 CB C1 00 80 */ lfd f30, 0x80(r1) +/* 8023D684 0023A5E4 BA C1 00 58 */ lmw r22, 0x58(r1) +/* 8023D688 0023A5E8 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 8023D68C 0023A5EC 7C 08 03 A6 */ mtlr r0 +/* 8023D690 0023A5F0 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 8023D694 0023A5F4 4E 80 00 20 */ blr + +.global AcceptScriptMsg__15CSnakeWeedSwarmF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__15CSnakeWeedSwarmF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 8023D698 0023A5F8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8023D69C 0023A5FC 7C 08 02 A6 */ mflr r0 +/* 8023D6A0 0023A600 90 01 00 24 */ stw r0, 0x24(r1) +/* 8023D6A4 0023A604 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8023D6A8 0023A608 7C DF 33 78 */ mr r31, r6 +/* 8023D6AC 0023A60C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8023D6B0 0023A610 7C 9E 23 78 */ mr r30, r4 +/* 8023D6B4 0023A614 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8023D6B8 0023A618 7C 7D 1B 78 */ mr r29, r3 +/* 8023D6BC 0023A61C A0 05 00 00 */ lhz r0, 0(r5) +/* 8023D6C0 0023A620 38 A1 00 08 */ addi r5, r1, 8 +/* 8023D6C4 0023A624 B0 01 00 08 */ sth r0, 8(r1) +/* 8023D6C8 0023A628 4B E1 5F 4D */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 8023D6CC 0023A62C 2C 1E 00 22 */ cmpwi r30, 0x22 +/* 8023D6D0 0023A630 41 82 00 48 */ beq lbl_8023D718 +/* 8023D6D4 0023A634 40 80 00 68 */ bge lbl_8023D73C +/* 8023D6D8 0023A638 2C 1E 00 21 */ cmpwi r30, 0x21 +/* 8023D6DC 0023A63C 40 80 00 08 */ bge lbl_8023D6E4 +/* 8023D6E0 0023A640 48 00 00 5C */ b lbl_8023D73C +lbl_8023D6E4: +/* 8023D6E4 0023A644 7F A3 EB 78 */ mr r3, r29 +/* 8023D6E8 0023A648 7F E4 FB 78 */ mr r4, r31 +/* 8023D6EC 0023A64C 38 A0 00 00 */ li r5, 0 +/* 8023D6F0 0023A650 4B FF FD 85 */ bl sub_8023d474 +/* 8023D6F4 0023A654 7F A3 EB 78 */ mr r3, r29 +/* 8023D6F8 0023A658 38 80 00 01 */ li r4, 1 +/* 8023D6FC 0023A65C 4B E1 62 25 */ bl SetCalculateLighting__6CActorFb +/* 8023D700 0023A660 80 7D 00 90 */ lwz r3, 0x90(r29) +/* 8023D704 0023A664 38 80 00 01 */ li r4, 1 +/* 8023D708 0023A668 88 03 02 98 */ lbz r0, 0x298(r3) +/* 8023D70C 0023A66C 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 8023D710 0023A670 98 03 02 98 */ stb r0, 0x298(r3) +/* 8023D714 0023A674 48 00 00 28 */ b lbl_8023D73C +lbl_8023D718: +/* 8023D718 0023A678 80 1D 01 D8 */ lwz r0, 0x1d8(r29) +/* 8023D71C 0023A67C 28 00 00 00 */ cmplwi r0, 0 +/* 8023D720 0023A680 41 82 00 1C */ beq lbl_8023D73C +/* 8023D724 0023A684 80 1D 01 D8 */ lwz r0, 0x1d8(r29) +/* 8023D728 0023A688 38 61 00 0C */ addi r3, r1, 0xc +/* 8023D72C 0023A68C 90 01 00 0C */ stw r0, 0xc(r1) +/* 8023D730 0023A690 48 0A C7 55 */ bl RemoveEmitter__11CSfxManagerFRC10CSfxHandle +/* 8023D734 0023A694 38 00 00 00 */ li r0, 0 +/* 8023D738 0023A698 90 1D 01 D8 */ stw r0, 0x1d8(r29) +lbl_8023D73C: +/* 8023D73C 0023A69C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8023D740 0023A6A0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8023D744 0023A6A4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8023D748 0023A6A8 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8023D74C 0023A6AC 7C 08 03 A6 */ mtlr r0 +/* 8023D750 0023A6B0 38 21 00 20 */ addi r1, r1, 0x20 +/* 8023D754 0023A6B4 4E 80 00 20 */ blr + +.global Accept__15CSnakeWeedSwarmFR8IVisitor +Accept__15CSnakeWeedSwarmFR8IVisitor: +/* 8023D758 0023A6B8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8023D75C 0023A6BC 7C 08 02 A6 */ mflr r0 +/* 8023D760 0023A6C0 90 01 00 14 */ stw r0, 0x14(r1) +/* 8023D764 0023A6C4 7C 60 1B 78 */ mr r0, r3 +/* 8023D768 0023A6C8 7C 83 23 78 */ mr r3, r4 +/* 8023D76C 0023A6CC 81 84 00 00 */ lwz r12, 0(r4) +/* 8023D770 0023A6D0 7C 04 03 78 */ mr r4, r0 +/* 8023D774 0023A6D4 81 8C 00 DC */ lwz r12, 0xdc(r12) +/* 8023D778 0023A6D8 7D 89 03 A6 */ mtctr r12 +/* 8023D77C 0023A6DC 4E 80 04 21 */ bctrl +/* 8023D780 0023A6E0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8023D784 0023A6E4 7C 08 03 A6 */ mtlr r0 +/* 8023D788 0023A6E8 38 21 00 10 */ addi r1, r1, 0x10 +/* 8023D78C 0023A6EC 4E 80 00 20 */ blr + +.global __ct__15CSnakeWeedSwarm +__ct__15CSnakeWeedSwarm: +/* 8023D790 0023A6F0 94 21 FD C0 */ stwu r1, -0x240(r1) +/* 8023D794 0023A6F4 7C 08 02 A6 */ mflr r0 +/* 8023D798 0023A6F8 90 01 02 44 */ stw r0, 0x244(r1) +/* 8023D79C 0023A6FC DB E1 02 30 */ stfd f31, 0x230(r1) +/* 8023D7A0 0023A700 F3 E1 02 38 */ psq_st f31, 568(r1), 0, qr0 +/* 8023D7A4 0023A704 DB C1 02 20 */ stfd f30, 0x220(r1) +/* 8023D7A8 0023A708 F3 C1 02 28 */ psq_st f30, 552(r1), 0, qr0 +/* 8023D7AC 0023A70C DB A1 02 10 */ stfd f29, 0x210(r1) +/* 8023D7B0 0023A710 F3 A1 02 18 */ psq_st f29, 536(r1), 0, qr0 +/* 8023D7B4 0023A714 DB 81 02 00 */ stfd f28, 0x200(r1) +/* 8023D7B8 0023A718 F3 81 02 08 */ psq_st f28, 520(r1), 0, qr0 +/* 8023D7BC 0023A71C DB 61 01 F0 */ stfd f27, 0x1f0(r1) +/* 8023D7C0 0023A720 F3 61 01 F8 */ psq_st f27, 504(r1), 0, qr0 +/* 8023D7C4 0023A724 DB 41 01 E0 */ stfd f26, 0x1e0(r1) +/* 8023D7C8 0023A728 F3 41 01 E8 */ psq_st f26, 488(r1), 0, qr0 +/* 8023D7CC 0023A72C DB 21 01 D0 */ stfd f25, 0x1d0(r1) +/* 8023D7D0 0023A730 F3 21 01 D8 */ psq_st f25, 472(r1), 0, qr0 +/* 8023D7D4 0023A734 DB 01 01 C0 */ stfd f24, 0x1c0(r1) +/* 8023D7D8 0023A738 F3 01 01 C8 */ psq_st f24, 456(r1), 0, qr0 +/* 8023D7DC 0023A73C DA E1 01 B0 */ stfd f23, 0x1b0(r1) +/* 8023D7E0 0023A740 F2 E1 01 B8 */ psq_st f23, 440(r1), 0, qr0 +/* 8023D7E4 0023A744 DA C1 01 A0 */ stfd f22, 0x1a0(r1) +/* 8023D7E8 0023A748 F2 C1 01 A8 */ psq_st f22, 424(r1), 0, qr0 +/* 8023D7EC 0023A74C DA A1 01 90 */ stfd f21, 0x190(r1) +/* 8023D7F0 0023A750 F2 A1 01 98 */ psq_st f21, 408(r1), 0, qr0 +/* 8023D7F4 0023A754 DA 81 01 80 */ stfd f20, 0x180(r1) +/* 8023D7F8 0023A758 F2 81 01 88 */ psq_st f20, 392(r1), 0, qr0 +/* 8023D7FC 0023A75C DA 61 01 70 */ stfd f19, 0x170(r1) +/* 8023D800 0023A760 F2 61 01 78 */ psq_st f19, 376(r1), 0, qr0 +/* 8023D804 0023A764 DA 41 01 60 */ stfd f18, 0x160(r1) +/* 8023D808 0023A768 F2 41 01 68 */ psq_st f18, 360(r1), 0, qr0 +/* 8023D80C 0023A76C DA 21 01 50 */ stfd f17, 0x150(r1) +/* 8023D810 0023A770 F2 21 01 58 */ psq_st f17, 344(r1), 0, qr0 +/* 8023D814 0023A774 BE 01 01 10 */ stmw r16, 0x110(r1) +/* 8023D818 0023A778 FE 40 08 90 */ fmr f18, f1 +/* 8023D81C 0023A77C 7C 7F 1B 78 */ mr r31, r3 +/* 8023D820 0023A780 FE 60 10 90 */ fmr f19, f2 +/* 8023D824 0023A784 83 A1 02 48 */ lwz r29, 0x248(r1) +/* 8023D828 0023A788 FE 80 18 90 */ fmr f20, f3 +/* 8023D82C 0023A78C C3 41 02 4C */ lfs f26, 0x24c(r1) +/* 8023D830 0023A790 FE A0 20 90 */ fmr f21, f4 +/* 8023D834 0023A794 C3 61 02 50 */ lfs f27, 0x250(r1) +/* 8023D838 0023A798 FE C0 28 90 */ fmr f22, f5 +/* 8023D83C 0023A79C C2 21 02 54 */ lfs f17, 0x254(r1) +/* 8023D840 0023A7A0 FE E0 30 90 */ fmr f23, f6 +/* 8023D844 0023A7A4 C3 81 02 58 */ lfs f28, 0x258(r1) +/* 8023D848 0023A7A8 FF 00 38 90 */ fmr f24, f7 +/* 8023D84C 0023A7AC C3 A1 02 5C */ lfs f29, 0x25c(r1) +/* 8023D850 0023A7B0 FF 20 40 90 */ fmr f25, f8 +/* 8023D854 0023A7B4 C3 C1 02 60 */ lfs f30, 0x260(r1) +/* 8023D858 0023A7B8 82 E1 02 64 */ lwz r23, 0x264(r1) +/* 8023D85C 0023A7BC 7C 92 23 78 */ mr r18, r4 +/* 8023D860 0023A7C0 83 01 02 6C */ lwz r24, 0x26c(r1) +/* 8023D864 0023A7C4 7C B3 2B 78 */ mr r19, r5 +/* 8023D868 0023A7C8 83 21 02 70 */ lwz r25, 0x270(r1) +/* 8023D86C 0023A7CC 7C D4 33 78 */ mr r20, r6 +/* 8023D870 0023A7D0 83 41 02 74 */ lwz r26, 0x274(r1) +/* 8023D874 0023A7D4 7C F5 3B 78 */ mr r21, r7 +/* 8023D878 0023A7D8 83 61 02 78 */ lwz r27, 0x278(r1) +/* 8023D87C 0023A7DC 7D 11 43 78 */ mr r17, r8 +/* 8023D880 0023A7E0 82 01 02 7C */ lwz r16, 0x27c(r1) +/* 8023D884 0023A7E4 7D 36 4B 78 */ mr r22, r9 +/* 8023D888 0023A7E8 83 C1 02 80 */ lwz r30, 0x280(r1) +/* 8023D88C 0023A7EC 7D 5C 53 78 */ mr r28, r10 +/* 8023D890 0023A7F0 C3 E1 02 84 */ lfs f31, 0x284(r1) +/* 8023D894 0023A7F4 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 8023D898 0023A7F8 4B DF CF 0D */ bl CModelDataNull__10CModelDataFv +/* 8023D89C 0023A7FC A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 8023D8A0 0023A800 38 00 00 00 */ li r0, 0 +/* 8023D8A4 0023A804 80 AD 96 74 */ lwz r5, lbl_805A8234@sda21(r13) +/* 8023D8A8 0023A808 38 60 00 00 */ li r3, 0 +/* 8023D8AC 0023A80C B0 81 00 10 */ sth r4, 0x10(r1) +/* 8023D8B0 0023A810 38 80 00 01 */ li r4, 1 +/* 8023D8B4 0023A814 90 01 00 84 */ stw r0, 0x84(r1) +/* 8023D8B8 0023A818 90 01 00 80 */ stw r0, 0x80(r1) +/* 8023D8BC 0023A81C 48 14 C6 39 */ bl __shl2i +/* 8023D8C0 0023A820 80 01 00 80 */ lwz r0, 0x80(r1) +/* 8023D8C4 0023A824 80 C1 00 84 */ lwz r6, 0x84(r1) +/* 8023D8C8 0023A828 7C 00 1B 78 */ or r0, r0, r3 +/* 8023D8CC 0023A82C 80 AD 96 78 */ lwz r5, lbl_805A8238@sda21(r13) +/* 8023D8D0 0023A830 7C C4 23 78 */ or r4, r6, r4 +/* 8023D8D4 0023A834 90 01 00 80 */ stw r0, 0x80(r1) +/* 8023D8D8 0023A838 38 60 00 00 */ li r3, 0 +/* 8023D8DC 0023A83C 90 81 00 84 */ stw r4, 0x84(r1) +/* 8023D8E0 0023A840 38 80 00 01 */ li r4, 1 +/* 8023D8E4 0023A844 48 14 C6 11 */ bl __shl2i +/* 8023D8E8 0023A848 80 01 00 80 */ lwz r0, 0x80(r1) +/* 8023D8EC 0023A84C 80 A1 00 84 */ lwz r5, 0x84(r1) +/* 8023D8F0 0023A850 7C 03 1B 78 */ or r3, r0, r3 +/* 8023D8F4 0023A854 A0 12 00 00 */ lhz r0, 0(r18) +/* 8023D8F8 0023A858 7C A5 23 78 */ or r5, r5, r4 +/* 8023D8FC 0023A85C 90 61 00 80 */ stw r3, 0x80(r1) +/* 8023D900 0023A860 7E 24 8B 78 */ mr r4, r17 +/* 8023D904 0023A864 38 61 00 88 */ addi r3, r1, 0x88 +/* 8023D908 0023A868 90 A1 00 84 */ stw r5, 0x84(r1) +/* 8023D90C 0023A86C B0 01 00 14 */ sth r0, 0x14(r1) +/* 8023D910 0023A870 48 0D 58 31 */ bl Translate__12CTransform4fFRC9CVector3f +/* 8023D914 0023A874 93 A1 00 08 */ stw r29, 8(r1) +/* 8023D918 0023A878 38 01 00 10 */ addi r0, r1, 0x10 +/* 8023D91C 0023A87C 7F E3 FB 78 */ mr r3, r31 +/* 8023D920 0023A880 7E 65 9B 78 */ mr r5, r19 +/* 8023D924 0023A884 90 01 00 0C */ stw r0, 0xc(r1) +/* 8023D928 0023A888 7E 86 A3 78 */ mr r6, r20 +/* 8023D92C 0023A88C 7E A7 AB 78 */ mr r7, r21 +/* 8023D930 0023A890 38 81 00 14 */ addi r4, r1, 0x14 +/* 8023D934 0023A894 39 01 00 88 */ addi r8, r1, 0x88 +/* 8023D938 0023A898 39 21 00 B8 */ addi r9, r1, 0xb8 +/* 8023D93C 0023A89C 39 41 00 80 */ addi r10, r1, 0x80 +/* 8023D940 0023A8A0 4B E1 7E E1 */ bl "__ct__6CActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC16CActorParameters9TUniqueId" +/* 8023D944 0023A8A4 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 8023D948 0023A8A8 38 80 FF FF */ li r4, -1 +/* 8023D94C 0023A8AC 4B ED 91 01 */ bl __dt__10CModelDataFv +/* 8023D950 0023A8B0 3C 60 80 3F */ lis r3, lbl_803E8578@ha +/* 8023D954 0023A8B4 C0 02 B7 98 */ lfs f0, lbl_805AD4B8@sda21(r2) +/* 8023D958 0023A8B8 38 03 85 78 */ addi r0, r3, lbl_803E8578@l +/* 8023D95C 0023A8BC 90 1F 00 00 */ stw r0, 0(r31) +/* 8023D960 0023A8C0 EC 20 04 72 */ fmuls f1, f0, f17 +/* 8023D964 0023A8C4 C0 16 00 00 */ lfs f0, 0(r22) +/* 8023D968 0023A8C8 D0 1F 00 E8 */ stfs f0, 0xe8(r31) +/* 8023D96C 0023A8CC C0 16 00 04 */ lfs f0, 4(r22) +/* 8023D970 0023A8D0 D0 1F 00 EC */ stfs f0, 0xec(r31) +/* 8023D974 0023A8D4 C0 16 00 08 */ lfs f0, 8(r22) +/* 8023D978 0023A8D8 D0 1F 00 F0 */ stfs f0, 0xf0(r31) +/* 8023D97C 0023A8DC D2 5F 00 F4 */ stfs f18, 0xf4(r31) +/* 8023D980 0023A8E0 D2 7F 00 F8 */ stfs f19, 0xf8(r31) +/* 8023D984 0023A8E4 D2 9F 00 FC */ stfs f20, 0xfc(r31) +/* 8023D988 0023A8E8 D2 BF 01 00 */ stfs f21, 0x100(r31) +/* 8023D98C 0023A8EC D2 DF 01 04 */ stfs f22, 0x104(r31) +/* 8023D990 0023A8F0 D2 FF 01 08 */ stfs f23, 0x108(r31) +/* 8023D994 0023A8F4 D3 1F 01 0C */ stfs f24, 0x10c(r31) +/* 8023D998 0023A8F8 D3 3F 01 10 */ stfs f25, 0x110(r31) +/* 8023D99C 0023A8FC D3 5F 01 14 */ stfs f26, 0x114(r31) +/* 8023D9A0 0023A900 D3 7F 01 18 */ stfs f27, 0x118(r31) +/* 8023D9A4 0023A904 48 15 6A 4D */ bl cos +/* 8023D9A8 0023A908 FC 00 08 18 */ frsp f0, f1 +/* 8023D9AC 0023A90C 3C 80 80 5A */ lis r4, lbl_805A6754@ha +/* 8023D9B0 0023A910 3C 60 80 3D */ lis r3, lbl_803D4388@ha +/* 8023D9B4 0023A914 38 E0 00 00 */ li r7, 0 +/* 8023D9B8 0023A918 38 63 43 88 */ addi r3, r3, lbl_803D4388@l +/* 8023D9BC 0023A91C 38 C4 67 54 */ addi r6, r4, lbl_805A6754@l +/* 8023D9C0 0023A920 D0 1F 01 1C */ stfs f0, 0x11c(r31) +/* 8023D9C4 0023A924 38 83 00 0B */ addi r4, r3, 0xb +/* 8023D9C8 0023A928 38 60 00 10 */ li r3, 0x10 +/* 8023D9CC 0023A92C 38 A0 00 00 */ li r5, 0 +/* 8023D9D0 0023A930 D3 9F 01 20 */ stfs f28, 0x120(r31) +/* 8023D9D4 0023A934 D3 BF 01 24 */ stfs f29, 0x124(r31) +/* 8023D9D8 0023A938 D3 DF 01 28 */ stfs f30, 0x128(r31) +/* 8023D9DC 0023A93C 90 FF 01 2C */ stw r7, 0x12c(r31) +/* 8023D9E0 0023A940 90 FF 01 34 */ stw r7, 0x134(r31) +/* 8023D9E4 0023A944 90 FF 01 38 */ stw r7, 0x138(r31) +/* 8023D9E8 0023A948 90 FF 01 3C */ stw r7, 0x13c(r31) +/* 8023D9EC 0023A94C 88 1F 01 40 */ lbz r0, 0x140(r31) +/* 8023D9F0 0023A950 50 E0 3E 30 */ rlwimi r0, r7, 7, 0x18, 0x18 +/* 8023D9F4 0023A954 98 1F 01 40 */ stb r0, 0x140(r31) +/* 8023D9F8 0023A958 88 1F 01 40 */ lbz r0, 0x140(r31) +/* 8023D9FC 0023A95C 50 E0 36 72 */ rlwimi r0, r7, 6, 0x19, 0x19 +/* 8023DA00 0023A960 98 1F 01 40 */ stb r0, 0x140(r31) +/* 8023DA04 0023A964 88 1F 01 40 */ lbz r0, 0x140(r31) +/* 8023DA08 0023A968 50 E0 2E B4 */ rlwimi r0, r7, 5, 0x1a, 0x1a +/* 8023DA0C 0023A96C 98 1F 01 40 */ stb r0, 0x140(r31) +/* 8023DA10 0023A970 C0 06 00 00 */ lfs f0, 0(r6) +/* 8023DA14 0023A974 D0 1F 01 44 */ stfs f0, 0x144(r31) +/* 8023DA18 0023A978 C0 06 00 04 */ lfs f0, 4(r6) +/* 8023DA1C 0023A97C D0 1F 01 48 */ stfs f0, 0x148(r31) +/* 8023DA20 0023A980 C0 06 00 08 */ lfs f0, 8(r6) +/* 8023DA24 0023A984 D0 1F 01 4C */ stfs f0, 0x14c(r31) +/* 8023DA28 0023A988 C0 06 00 0C */ lfs f0, 0xc(r6) +/* 8023DA2C 0023A98C D0 1F 01 50 */ stfs f0, 0x150(r31) +/* 8023DA30 0023A990 C0 06 00 10 */ lfs f0, 0x10(r6) +/* 8023DA34 0023A994 D0 1F 01 54 */ stfs f0, 0x154(r31) +/* 8023DA38 0023A998 C0 06 00 14 */ lfs f0, 0x14(r6) +/* 8023DA3C 0023A99C D0 1F 01 58 */ stfs f0, 0x158(r31) +/* 8023DA40 0023A9A0 80 17 00 00 */ lwz r0, 0(r23) +/* 8023DA44 0023A9A4 90 1F 01 5C */ stw r0, 0x15c(r31) +/* 8023DA48 0023A9A8 88 17 00 04 */ lbz r0, 4(r23) +/* 8023DA4C 0023A9AC 98 1F 01 60 */ stb r0, 0x160(r31) +/* 8023DA50 0023A9B0 C0 17 00 08 */ lfs f0, 8(r23) +/* 8023DA54 0023A9B4 D0 1F 01 64 */ stfs f0, 0x164(r31) +/* 8023DA58 0023A9B8 C0 17 00 0C */ lfs f0, 0xc(r23) +/* 8023DA5C 0023A9BC D0 1F 01 68 */ stfs f0, 0x168(r31) +/* 8023DA60 0023A9C0 C0 17 00 10 */ lfs f0, 0x10(r23) +/* 8023DA64 0023A9C4 D0 1F 01 6C */ stfs f0, 0x16c(r31) +/* 8023DA68 0023A9C8 C0 17 00 14 */ lfs f0, 0x14(r23) +/* 8023DA6C 0023A9CC D0 1F 01 70 */ stfs f0, 0x170(r31) +/* 8023DA70 0023A9D0 88 17 00 18 */ lbz r0, 0x18(r23) +/* 8023DA74 0023A9D4 98 1F 01 74 */ stb r0, 0x174(r31) +/* 8023DA78 0023A9D8 90 FF 01 78 */ stw r7, 0x178(r31) +/* 8023DA7C 0023A9DC 90 FF 01 9C */ stw r7, 0x19c(r31) +/* 8023DA80 0023A9E0 90 FF 01 B0 */ stw r7, 0x1b0(r31) +/* 8023DA84 0023A9E4 48 0D 7D E9 */ bl __nw__FUlPCcPCc +/* 8023DA88 0023A9E8 28 03 00 00 */ cmplwi r3, 0 +/* 8023DA8C 0023A9EC 41 82 00 14 */ beq lbl_8023DAA0 +/* 8023DA90 0023A9F0 38 00 00 00 */ li r0, 0 +/* 8023DA94 0023A9F4 90 03 00 04 */ stw r0, 4(r3) +/* 8023DA98 0023A9F8 90 03 00 08 */ stw r0, 8(r3) +/* 8023DA9C 0023A9FC 90 03 00 0C */ stw r0, 0xc(r3) +lbl_8023DAA0: +/* 8023DAA0 0023AA00 3C 80 80 3D */ lis r4, lbl_803D4388@ha +/* 8023DAA4 0023AA04 90 7F 01 C8 */ stw r3, 0x1c8(r31) +/* 8023DAA8 0023AA08 38 84 43 88 */ addi r4, r4, lbl_803D4388@l +/* 8023DAAC 0023AA0C 38 60 00 10 */ li r3, 0x10 +/* 8023DAB0 0023AA10 38 84 00 0B */ addi r4, r4, 0xb +/* 8023DAB4 0023AA14 38 A0 00 00 */ li r5, 0 +/* 8023DAB8 0023AA18 48 0D 7D B5 */ bl __nw__FUlPCcPCc +/* 8023DABC 0023AA1C 28 03 00 00 */ cmplwi r3, 0 +/* 8023DAC0 0023AA20 41 82 00 14 */ beq lbl_8023DAD4 +/* 8023DAC4 0023AA24 38 00 00 00 */ li r0, 0 +/* 8023DAC8 0023AA28 90 03 00 04 */ stw r0, 4(r3) +/* 8023DACC 0023AA2C 90 03 00 08 */ stw r0, 8(r3) +/* 8023DAD0 0023AA30 90 03 00 0C */ stw r0, 0xc(r3) +lbl_8023DAD4: +/* 8023DAD4 0023AA34 2C 18 FF FF */ cmpwi r24, -1 +/* 8023DAD8 0023AA38 90 7F 01 CC */ stw r3, 0x1cc(r31) +/* 8023DADC 0023AA3C 7F 00 C3 78 */ mr r0, r24 +/* 8023DAE0 0023AA40 40 82 00 08 */ bne lbl_8023DAE8 +/* 8023DAE4 0023AA44 A0 02 C5 FC */ lhz r0, lbl_805AE31C@sda21(r2) +lbl_8023DAE8: +/* 8023DAE8 0023AA48 54 03 04 3E */ clrlwi r3, r0, 0x10 +/* 8023DAEC 0023AA4C 48 0A AE C5 */ bl TranslateSFXID__11CSfxManagerFUs +/* 8023DAF0 0023AA50 2C 19 FF FF */ cmpwi r25, -1 +/* 8023DAF4 0023AA54 B0 7F 01 D0 */ sth r3, 0x1d0(r31) +/* 8023DAF8 0023AA58 7F 20 CB 78 */ mr r0, r25 +/* 8023DAFC 0023AA5C 40 82 00 08 */ bne lbl_8023DB04 +/* 8023DB00 0023AA60 A0 02 C5 FC */ lhz r0, lbl_805AE31C@sda21(r2) +lbl_8023DB04: +/* 8023DB04 0023AA64 54 03 04 3E */ clrlwi r3, r0, 0x10 +/* 8023DB08 0023AA68 48 0A AE A9 */ bl TranslateSFXID__11CSfxManagerFUs +/* 8023DB0C 0023AA6C 2C 1A FF FF */ cmpwi r26, -1 +/* 8023DB10 0023AA70 B0 7F 01 D2 */ sth r3, 0x1d2(r31) +/* 8023DB14 0023AA74 7F 40 D3 78 */ mr r0, r26 +/* 8023DB18 0023AA78 40 82 00 08 */ bne lbl_8023DB20 +/* 8023DB1C 0023AA7C A0 02 C5 FC */ lhz r0, lbl_805AE31C@sda21(r2) +lbl_8023DB20: +/* 8023DB20 0023AA80 54 03 04 3E */ clrlwi r3, r0, 0x10 +/* 8023DB24 0023AA84 48 0A AE 8D */ bl TranslateSFXID__11CSfxManagerFUs +/* 8023DB28 0023AA88 B0 7F 01 D4 */ sth r3, 0x1d4(r31) +/* 8023DB2C 0023AA8C 38 00 00 00 */ li r0, 0 +/* 8023DB30 0023AA90 C0 02 B7 68 */ lfs f0, lbl_805AD488@sda21(r2) +/* 8023DB34 0023AA94 7F A4 EB 78 */ mr r4, r29 +/* 8023DB38 0023AA98 90 1F 01 D8 */ stw r0, 0x1d8(r31) +/* 8023DB3C 0023AA9C 38 61 00 78 */ addi r3, r1, 0x78 +/* 8023DB40 0023AAA0 98 1F 01 DC */ stb r0, 0x1dc(r31) +/* 8023DB44 0023AAA4 90 1F 01 E0 */ stw r0, 0x1e0(r31) +/* 8023DB48 0023AAA8 98 1F 01 E4 */ stb r0, 0x1e4(r31) +/* 8023DB4C 0023AAAC 90 1F 01 E8 */ stw r0, 0x1e8(r31) +/* 8023DB50 0023AAB0 98 1F 01 EC */ stb r0, 0x1ec(r31) +/* 8023DB54 0023AAB4 90 1F 01 F0 */ stw r0, 0x1f0(r31) +/* 8023DB58 0023AAB8 98 1F 01 F4 */ stb r0, 0x1f4(r31) +/* 8023DB5C 0023AABC 90 1F 01 F8 */ stw r0, 0x1f8(r31) +/* 8023DB60 0023AAC0 92 1F 01 FC */ stw r16, 0x1fc(r31) +/* 8023DB64 0023AAC4 D3 FF 02 00 */ stfs f31, 0x200(r31) +/* 8023DB68 0023AAC8 D0 1F 02 04 */ stfs f0, 0x204(r31) +/* 8023DB6C 0023AACC 4B EC 88 A5 */ bl MakeActorLights__16CLightParametersCFv +/* 8023DB70 0023AAD0 7F E3 FB 78 */ mr r3, r31 +/* 8023DB74 0023AAD4 38 81 00 78 */ addi r4, r1, 0x78 +/* 8023DB78 0023AAD8 4B E1 5D 4D */ bl sub_800538c4 +/* 8023DB7C 0023AADC 88 01 00 78 */ lbz r0, 0x78(r1) +/* 8023DB80 0023AAE0 28 00 00 00 */ cmplwi r0, 0 +/* 8023DB84 0023AAE4 41 82 00 10 */ beq lbl_8023DB94 +/* 8023DB88 0023AAE8 80 61 00 7C */ lwz r3, 0x7c(r1) +/* 8023DB8C 0023AAEC 38 80 00 01 */ li r4, 1 +/* 8023DB90 0023AAF0 4B EC 75 45 */ bl __dt__12CActorLightsFv +lbl_8023DB94: +/* 8023DB94 0023AAF4 3C 80 80 3D */ lis r4, lbl_803D4388@ha +/* 8023DB98 0023AAF8 38 60 00 4C */ li r3, 0x4c +/* 8023DB9C 0023AAFC 38 84 43 88 */ addi r4, r4, lbl_803D4388@l +/* 8023DBA0 0023AB00 38 A0 00 00 */ li r5, 0 +/* 8023DBA4 0023AB04 38 84 00 0B */ addi r4, r4, 0xb +/* 8023DBA8 0023AB08 48 0D 7C C5 */ bl __nw__FUlPCcPCc +/* 8023DBAC 0023AB0C 7C 70 1B 79 */ or. r16, r3, r3 +/* 8023DBB0 0023AB10 41 82 00 10 */ beq lbl_8023DBC0 +/* 8023DBB4 0023AB14 7F 84 E3 78 */ mr r4, r28 +/* 8023DBB8 0023AB18 4B ED 8F 9D */ bl __ct__10CModelDataFRC8CAnimRes +/* 8023DBBC 0023AB1C 7C 70 1B 78 */ mr r16, r3 +lbl_8023DBC0: +/* 8023DBC0 0023AB20 3C 80 80 3D */ lis r4, lbl_803D4388@ha +/* 8023DBC4 0023AB24 38 60 00 08 */ li r3, 8 +/* 8023DBC8 0023AB28 38 84 43 88 */ addi r4, r4, lbl_803D4388@l +/* 8023DBCC 0023AB2C 38 A0 00 00 */ li r5, 0 +/* 8023DBD0 0023AB30 38 84 00 0B */ addi r4, r4, 0xb +/* 8023DBD4 0023AB34 48 0D 7C 99 */ bl __nw__FUlPCcPCc +/* 8023DBD8 0023AB38 28 03 00 00 */ cmplwi r3, 0 +/* 8023DBDC 0023AB3C 41 82 00 10 */ beq lbl_8023DBEC +/* 8023DBE0 0023AB40 92 03 00 00 */ stw r16, 0(r3) +/* 8023DBE4 0023AB44 38 00 00 01 */ li r0, 1 +/* 8023DBE8 0023AB48 90 03 00 04 */ stw r0, 4(r3) +lbl_8023DBEC: +/* 8023DBEC 0023AB4C 90 61 00 24 */ stw r3, 0x24(r1) +/* 8023DBF0 0023AB50 38 9F 01 B0 */ addi r4, r31, 0x1b0 +/* 8023DBF4 0023AB54 80 1F 01 B0 */ lwz r0, 0x1b0(r31) +/* 8023DBF8 0023AB58 54 00 10 3A */ slwi r0, r0, 2 +/* 8023DBFC 0023AB5C 7C 84 02 14 */ add r4, r4, r0 +/* 8023DC00 0023AB60 34 84 00 04 */ addic. r4, r4, 4 +/* 8023DC04 0023AB64 41 82 00 18 */ beq lbl_8023DC1C +/* 8023DC08 0023AB68 90 64 00 00 */ stw r3, 0(r4) +/* 8023DC0C 0023AB6C 80 84 00 00 */ lwz r4, 0(r4) +/* 8023DC10 0023AB70 80 64 00 04 */ lwz r3, 4(r4) +/* 8023DC14 0023AB74 38 03 00 01 */ addi r0, r3, 1 +/* 8023DC18 0023AB78 90 04 00 04 */ stw r0, 4(r4) +lbl_8023DC1C: +/* 8023DC1C 0023AB7C 80 9F 01 B0 */ lwz r4, 0x1b0(r31) +/* 8023DC20 0023AB80 38 61 00 24 */ addi r3, r1, 0x24 +/* 8023DC24 0023AB84 38 04 00 01 */ addi r0, r4, 1 +/* 8023DC28 0023AB88 90 1F 01 B0 */ stw r0, 0x1b0(r31) +/* 8023DC2C 0023AB8C 4B F9 57 35 */ bl sub_801d3360 +/* 8023DC30 0023AB90 3C 80 80 3D */ lis r4, lbl_803D4388@ha +/* 8023DC34 0023AB94 38 60 00 4C */ li r3, 0x4c +/* 8023DC38 0023AB98 38 84 43 88 */ addi r4, r4, lbl_803D4388@l +/* 8023DC3C 0023AB9C 38 A0 00 00 */ li r5, 0 +/* 8023DC40 0023ABA0 38 84 00 0B */ addi r4, r4, 0xb +/* 8023DC44 0023ABA4 48 0D 7C 29 */ bl __nw__FUlPCcPCc +/* 8023DC48 0023ABA8 7C 70 1B 79 */ or. r16, r3, r3 +/* 8023DC4C 0023ABAC 41 82 00 10 */ beq lbl_8023DC5C +/* 8023DC50 0023ABB0 7F 84 E3 78 */ mr r4, r28 +/* 8023DC54 0023ABB4 4B ED 8F 01 */ bl __ct__10CModelDataFRC8CAnimRes +/* 8023DC58 0023ABB8 7C 70 1B 78 */ mr r16, r3 +lbl_8023DC5C: +/* 8023DC5C 0023ABBC 3C 80 80 3D */ lis r4, lbl_803D4388@ha +/* 8023DC60 0023ABC0 38 60 00 08 */ li r3, 8 +/* 8023DC64 0023ABC4 38 84 43 88 */ addi r4, r4, lbl_803D4388@l +/* 8023DC68 0023ABC8 38 A0 00 00 */ li r5, 0 +/* 8023DC6C 0023ABCC 38 84 00 0B */ addi r4, r4, 0xb +/* 8023DC70 0023ABD0 48 0D 7B FD */ bl __nw__FUlPCcPCc +/* 8023DC74 0023ABD4 28 03 00 00 */ cmplwi r3, 0 +/* 8023DC78 0023ABD8 41 82 00 10 */ beq lbl_8023DC88 +/* 8023DC7C 0023ABDC 92 03 00 00 */ stw r16, 0(r3) +/* 8023DC80 0023ABE0 38 00 00 01 */ li r0, 1 +/* 8023DC84 0023ABE4 90 03 00 04 */ stw r0, 4(r3) +lbl_8023DC88: +/* 8023DC88 0023ABE8 90 61 00 20 */ stw r3, 0x20(r1) +/* 8023DC8C 0023ABEC 38 9F 01 B0 */ addi r4, r31, 0x1b0 +/* 8023DC90 0023ABF0 80 1F 01 B0 */ lwz r0, 0x1b0(r31) +/* 8023DC94 0023ABF4 54 00 10 3A */ slwi r0, r0, 2 +/* 8023DC98 0023ABF8 7C 84 02 14 */ add r4, r4, r0 +/* 8023DC9C 0023ABFC 34 84 00 04 */ addic. r4, r4, 4 +/* 8023DCA0 0023AC00 41 82 00 18 */ beq lbl_8023DCB8 +/* 8023DCA4 0023AC04 90 64 00 00 */ stw r3, 0(r4) +/* 8023DCA8 0023AC08 80 84 00 00 */ lwz r4, 0(r4) +/* 8023DCAC 0023AC0C 80 64 00 04 */ lwz r3, 4(r4) +/* 8023DCB0 0023AC10 38 03 00 01 */ addi r0, r3, 1 +/* 8023DCB4 0023AC14 90 04 00 04 */ stw r0, 4(r4) +lbl_8023DCB8: +/* 8023DCB8 0023AC18 80 9F 01 B0 */ lwz r4, 0x1b0(r31) +/* 8023DCBC 0023AC1C 38 61 00 20 */ addi r3, r1, 0x20 +/* 8023DCC0 0023AC20 38 04 00 01 */ addi r0, r4, 1 +/* 8023DCC4 0023AC24 90 1F 01 B0 */ stw r0, 0x1b0(r31) +/* 8023DCC8 0023AC28 4B F9 56 99 */ bl sub_801d3360 +/* 8023DCCC 0023AC2C 3C 80 80 3D */ lis r4, lbl_803D4388@ha +/* 8023DCD0 0023AC30 38 60 00 4C */ li r3, 0x4c +/* 8023DCD4 0023AC34 38 84 43 88 */ addi r4, r4, lbl_803D4388@l +/* 8023DCD8 0023AC38 38 A0 00 00 */ li r5, 0 +/* 8023DCDC 0023AC3C 38 84 00 0B */ addi r4, r4, 0xb +/* 8023DCE0 0023AC40 48 0D 7B 8D */ bl __nw__FUlPCcPCc +/* 8023DCE4 0023AC44 7C 70 1B 79 */ or. r16, r3, r3 +/* 8023DCE8 0023AC48 41 82 00 10 */ beq lbl_8023DCF8 +/* 8023DCEC 0023AC4C 7F 84 E3 78 */ mr r4, r28 +/* 8023DCF0 0023AC50 4B ED 8E 65 */ bl __ct__10CModelDataFRC8CAnimRes +/* 8023DCF4 0023AC54 7C 70 1B 78 */ mr r16, r3 +lbl_8023DCF8: +/* 8023DCF8 0023AC58 3C 80 80 3D */ lis r4, lbl_803D4388@ha +/* 8023DCFC 0023AC5C 38 60 00 08 */ li r3, 8 +/* 8023DD00 0023AC60 38 84 43 88 */ addi r4, r4, lbl_803D4388@l +/* 8023DD04 0023AC64 38 A0 00 00 */ li r5, 0 +/* 8023DD08 0023AC68 38 84 00 0B */ addi r4, r4, 0xb +/* 8023DD0C 0023AC6C 48 0D 7B 61 */ bl __nw__FUlPCcPCc +/* 8023DD10 0023AC70 28 03 00 00 */ cmplwi r3, 0 +/* 8023DD14 0023AC74 41 82 00 10 */ beq lbl_8023DD24 +/* 8023DD18 0023AC78 92 03 00 00 */ stw r16, 0(r3) +/* 8023DD1C 0023AC7C 38 00 00 01 */ li r0, 1 +/* 8023DD20 0023AC80 90 03 00 04 */ stw r0, 4(r3) +lbl_8023DD24: +/* 8023DD24 0023AC84 90 61 00 1C */ stw r3, 0x1c(r1) +/* 8023DD28 0023AC88 38 9F 01 B0 */ addi r4, r31, 0x1b0 +/* 8023DD2C 0023AC8C 80 1F 01 B0 */ lwz r0, 0x1b0(r31) +/* 8023DD30 0023AC90 54 00 10 3A */ slwi r0, r0, 2 +/* 8023DD34 0023AC94 7C 84 02 14 */ add r4, r4, r0 +/* 8023DD38 0023AC98 34 84 00 04 */ addic. r4, r4, 4 +/* 8023DD3C 0023AC9C 41 82 00 18 */ beq lbl_8023DD54 +/* 8023DD40 0023ACA0 90 64 00 00 */ stw r3, 0(r4) +/* 8023DD44 0023ACA4 80 84 00 00 */ lwz r4, 0(r4) +/* 8023DD48 0023ACA8 80 64 00 04 */ lwz r3, 4(r4) +/* 8023DD4C 0023ACAC 38 03 00 01 */ addi r0, r3, 1 +/* 8023DD50 0023ACB0 90 04 00 04 */ stw r0, 4(r4) +lbl_8023DD54: +/* 8023DD54 0023ACB4 80 9F 01 B0 */ lwz r4, 0x1b0(r31) +/* 8023DD58 0023ACB8 38 61 00 1C */ addi r3, r1, 0x1c +/* 8023DD5C 0023ACBC 38 04 00 01 */ addi r0, r4, 1 +/* 8023DD60 0023ACC0 90 1F 01 B0 */ stw r0, 0x1b0(r31) +/* 8023DD64 0023ACC4 4B F9 55 FD */ bl sub_801d3360 +/* 8023DD68 0023ACC8 3C 80 80 3D */ lis r4, lbl_803D4388@ha +/* 8023DD6C 0023ACCC 38 60 00 4C */ li r3, 0x4c +/* 8023DD70 0023ACD0 38 84 43 88 */ addi r4, r4, lbl_803D4388@l +/* 8023DD74 0023ACD4 38 A0 00 00 */ li r5, 0 +/* 8023DD78 0023ACD8 38 84 00 0B */ addi r4, r4, 0xb +/* 8023DD7C 0023ACDC 48 0D 7A F1 */ bl __nw__FUlPCcPCc +/* 8023DD80 0023ACE0 7C 70 1B 79 */ or. r16, r3, r3 +/* 8023DD84 0023ACE4 41 82 00 10 */ beq lbl_8023DD94 +/* 8023DD88 0023ACE8 7F 84 E3 78 */ mr r4, r28 +/* 8023DD8C 0023ACEC 4B ED 8D C9 */ bl __ct__10CModelDataFRC8CAnimRes +/* 8023DD90 0023ACF0 7C 70 1B 78 */ mr r16, r3 +lbl_8023DD94: +/* 8023DD94 0023ACF4 3C 80 80 3D */ lis r4, lbl_803D4388@ha +/* 8023DD98 0023ACF8 38 60 00 08 */ li r3, 8 +/* 8023DD9C 0023ACFC 38 84 43 88 */ addi r4, r4, lbl_803D4388@l +/* 8023DDA0 0023AD00 38 A0 00 00 */ li r5, 0 +/* 8023DDA4 0023AD04 38 84 00 0B */ addi r4, r4, 0xb +/* 8023DDA8 0023AD08 48 0D 7A C5 */ bl __nw__FUlPCcPCc +/* 8023DDAC 0023AD0C 28 03 00 00 */ cmplwi r3, 0 +/* 8023DDB0 0023AD10 41 82 00 10 */ beq lbl_8023DDC0 +/* 8023DDB4 0023AD14 92 03 00 00 */ stw r16, 0(r3) +/* 8023DDB8 0023AD18 38 00 00 01 */ li r0, 1 +/* 8023DDBC 0023AD1C 90 03 00 04 */ stw r0, 4(r3) +lbl_8023DDC0: +/* 8023DDC0 0023AD20 90 61 00 18 */ stw r3, 0x18(r1) +/* 8023DDC4 0023AD24 38 9F 01 B0 */ addi r4, r31, 0x1b0 +/* 8023DDC8 0023AD28 80 1F 01 B0 */ lwz r0, 0x1b0(r31) +/* 8023DDCC 0023AD2C 54 00 10 3A */ slwi r0, r0, 2 +/* 8023DDD0 0023AD30 7C 84 02 14 */ add r4, r4, r0 +/* 8023DDD4 0023AD34 34 84 00 04 */ addic. r4, r4, 4 +/* 8023DDD8 0023AD38 41 82 00 18 */ beq lbl_8023DDF0 +/* 8023DDDC 0023AD3C 90 64 00 00 */ stw r3, 0(r4) +/* 8023DDE0 0023AD40 80 84 00 00 */ lwz r4, 0(r4) +/* 8023DDE4 0023AD44 80 64 00 04 */ lwz r3, 4(r4) +/* 8023DDE8 0023AD48 38 03 00 01 */ addi r0, r3, 1 +/* 8023DDEC 0023AD4C 90 04 00 04 */ stw r0, 4(r4) +lbl_8023DDF0: +/* 8023DDF0 0023AD50 80 9F 01 B0 */ lwz r4, 0x1b0(r31) +/* 8023DDF4 0023AD54 38 61 00 18 */ addi r3, r1, 0x18 +/* 8023DDF8 0023AD58 38 04 00 01 */ addi r0, r4, 1 +/* 8023DDFC 0023AD5C 90 1F 01 B0 */ stw r0, 0x1b0(r31) +/* 8023DE00 0023AD60 4B F9 55 61 */ bl sub_801d3360 +/* 8023DE04 0023AD64 80 1D 00 44 */ lwz r0, 0x44(r29) +/* 8023DE08 0023AD68 28 00 00 00 */ cmplwi r0, 0 +/* 8023DE0C 0023AD6C 41 82 00 40 */ beq lbl_8023DE4C +/* 8023DE10 0023AD70 3A 20 00 00 */ li r17, 0 +/* 8023DE14 0023AD74 3A 00 00 00 */ li r16, 0 +lbl_8023DE18: +/* 8023DE18 0023AD78 7C 7F 82 14 */ add r3, r31, r16 +/* 8023DE1C 0023AD7C 38 9D 00 44 */ addi r4, r29, 0x44 +/* 8023DE20 0023AD80 80 63 01 B4 */ lwz r3, 0x1b4(r3) +/* 8023DE24 0023AD84 80 63 00 00 */ lwz r3, 0(r3) +/* 8023DE28 0023AD88 4B ED 71 C9 */ bl "SetXRayModel__10CModelDataFRCQ24rstl11pair" +/* 8023DE2C 0023AD8C 3A 31 00 01 */ addi r17, r17, 1 +/* 8023DE30 0023AD90 3A 10 00 04 */ addi r16, r16, 4 +/* 8023DE34 0023AD94 2C 11 00 04 */ cmpwi r17, 4 +/* 8023DE38 0023AD98 41 80 FF E0 */ blt lbl_8023DE18 +/* 8023DE3C 0023AD9C 88 1F 01 40 */ lbz r0, 0x140(r31) +/* 8023DE40 0023ADA0 38 60 00 01 */ li r3, 1 +/* 8023DE44 0023ADA4 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 8023DE48 0023ADA8 98 1F 01 40 */ stb r0, 0x140(r31) +lbl_8023DE4C: +/* 8023DE4C 0023ADAC 80 1D 00 4C */ lwz r0, 0x4c(r29) +/* 8023DE50 0023ADB0 28 00 00 00 */ cmplwi r0, 0 +/* 8023DE54 0023ADB4 41 82 00 40 */ beq lbl_8023DE94 +/* 8023DE58 0023ADB8 3A 20 00 00 */ li r17, 0 +/* 8023DE5C 0023ADBC 3A 00 00 00 */ li r16, 0 +lbl_8023DE60: +/* 8023DE60 0023ADC0 7C 7F 82 14 */ add r3, r31, r16 +/* 8023DE64 0023ADC4 38 9D 00 4C */ addi r4, r29, 0x4c +/* 8023DE68 0023ADC8 80 63 01 B4 */ lwz r3, 0x1b4(r3) +/* 8023DE6C 0023ADCC 80 63 00 00 */ lwz r3, 0(r3) +/* 8023DE70 0023ADD0 4B ED 73 E5 */ bl "SetInfraModel__10CModelDataFRCQ24rstl11pair" +/* 8023DE74 0023ADD4 3A 31 00 01 */ addi r17, r17, 1 +/* 8023DE78 0023ADD8 3A 10 00 04 */ addi r16, r16, 4 +/* 8023DE7C 0023ADDC 2C 11 00 04 */ cmpwi r17, 4 +/* 8023DE80 0023ADE0 41 80 FF E0 */ blt lbl_8023DE60 +/* 8023DE84 0023ADE4 88 1F 01 40 */ lbz r0, 0x140(r31) +/* 8023DE88 0023ADE8 38 60 00 01 */ li r3, 1 +/* 8023DE8C 0023ADEC 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 8023DE90 0023ADF0 98 1F 01 40 */ stb r0, 0x140(r31) +lbl_8023DE94: +/* 8023DE94 0023ADF4 3C 1B 00 01 */ addis r0, r27, 1 +/* 8023DE98 0023ADF8 28 00 FF FF */ cmplwi r0, 0xffff +/* 8023DE9C 0023ADFC 41 82 02 18 */ beq lbl_8023E0B4 +/* 8023DEA0 0023AE00 3C 60 80 3D */ lis r3, lbl_803D4388@ha +/* 8023DEA4 0023AE04 3A 00 00 00 */ li r16, 0 +/* 8023DEA8 0023AE08 38 83 43 88 */ addi r4, r3, lbl_803D4388@l +/* 8023DEAC 0023AE0C 38 60 00 0C */ li r3, 0xc +/* 8023DEB0 0023AE10 38 84 00 0B */ addi r4, r4, 0xb +/* 8023DEB4 0023AE14 38 A0 00 00 */ li r5, 0 +/* 8023DEB8 0023AE18 48 0D 79 B5 */ bl __nw__FUlPCcPCc +/* 8023DEBC 0023AE1C 7C 71 1B 79 */ or. r17, r3, r3 +/* 8023DEC0 0023AE20 41 82 00 50 */ beq lbl_8023DF10 +/* 8023DEC4 0023AE24 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 8023DEC8 0023AE28 93 61 00 74 */ stw r27, 0x74(r1) +/* 8023DECC 0023AE2C 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 8023DED0 0023AE30 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8023DED4 0023AE34 90 01 00 70 */ stw r0, 0x70(r1) +/* 8023DED8 0023AE38 38 61 00 68 */ addi r3, r1, 0x68 +/* 8023DEDC 0023AE3C 38 A1 00 70 */ addi r5, r1, 0x70 +/* 8023DEE0 0023AE40 81 84 00 00 */ lwz r12, 0(r4) +/* 8023DEE4 0023AE44 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8023DEE8 0023AE48 7D 89 03 A6 */ mtctr r12 +/* 8023DEEC 0023AE4C 4E 80 04 21 */ bctrl +/* 8023DEF0 0023AE50 7E 23 8B 78 */ mr r3, r17 +/* 8023DEF4 0023AE54 38 81 00 68 */ addi r4, r1, 0x68 +/* 8023DEF8 0023AE58 3A 00 00 01 */ li r16, 1 +/* 8023DEFC 0023AE5C 48 10 2F AD */ bl __ct__6CTokenFRC6CToken +/* 8023DF00 0023AE60 7E 23 8B 78 */ mr r3, r17 +/* 8023DF04 0023AE64 48 10 2F 09 */ bl GetObj__6CTokenFv +/* 8023DF08 0023AE68 80 03 00 04 */ lwz r0, 4(r3) +/* 8023DF0C 0023AE6C 90 11 00 08 */ stw r0, 8(r17) +lbl_8023DF10: +/* 8023DF10 0023AE70 7C 71 00 D0 */ neg r3, r17 +/* 8023DF14 0023AE74 38 01 00 60 */ addi r0, r1, 0x60 +/* 8023DF18 0023AE78 7C 63 8B 78 */ or r3, r3, r17 +/* 8023DF1C 0023AE7C 38 9F 01 DC */ addi r4, r31, 0x1dc +/* 8023DF20 0023AE80 54 63 0F FE */ srwi r3, r3, 0x1f +/* 8023DF24 0023AE84 92 21 00 64 */ stw r17, 0x64(r1) +/* 8023DF28 0023AE88 7C 00 20 40 */ cmplw r0, r4 +/* 8023DF2C 0023AE8C 98 61 00 60 */ stb r3, 0x60(r1) +/* 8023DF30 0023AE90 41 82 00 4C */ beq lbl_8023DF7C +/* 8023DF34 0023AE94 88 04 00 00 */ lbz r0, 0(r4) +/* 8023DF38 0023AE98 28 00 00 00 */ cmplwi r0, 0 +/* 8023DF3C 0023AE9C 41 82 00 28 */ beq lbl_8023DF64 +/* 8023DF40 0023AEA0 82 3F 01 E0 */ lwz r17, 0x1e0(r31) +/* 8023DF44 0023AEA4 28 11 00 00 */ cmplwi r17, 0 +/* 8023DF48 0023AEA8 41 82 00 1C */ beq lbl_8023DF64 +/* 8023DF4C 0023AEAC 41 82 00 10 */ beq lbl_8023DF5C +/* 8023DF50 0023AEB0 7E 23 8B 78 */ mr r3, r17 +/* 8023DF54 0023AEB4 38 80 00 00 */ li r4, 0 +/* 8023DF58 0023AEB8 48 10 2E E9 */ bl __dt__6CTokenFv +lbl_8023DF5C: +/* 8023DF5C 0023AEBC 7E 23 8B 78 */ mr r3, r17 +/* 8023DF60 0023AEC0 48 0D 79 D1 */ bl Free__7CMemoryFPCv +lbl_8023DF64: +/* 8023DF64 0023AEC4 88 61 00 60 */ lbz r3, 0x60(r1) +/* 8023DF68 0023AEC8 38 00 00 00 */ li r0, 0 +/* 8023DF6C 0023AECC 98 7F 01 DC */ stb r3, 0x1dc(r31) +/* 8023DF70 0023AED0 80 61 00 64 */ lwz r3, 0x64(r1) +/* 8023DF74 0023AED4 90 7F 01 E0 */ stw r3, 0x1e0(r31) +/* 8023DF78 0023AED8 98 01 00 60 */ stb r0, 0x60(r1) +lbl_8023DF7C: +/* 8023DF7C 0023AEDC 88 01 00 60 */ lbz r0, 0x60(r1) +/* 8023DF80 0023AEE0 28 00 00 00 */ cmplwi r0, 0 +/* 8023DF84 0023AEE4 41 82 00 28 */ beq lbl_8023DFAC +/* 8023DF88 0023AEE8 82 21 00 64 */ lwz r17, 0x64(r1) +/* 8023DF8C 0023AEEC 28 11 00 00 */ cmplwi r17, 0 +/* 8023DF90 0023AEF0 41 82 00 1C */ beq lbl_8023DFAC +/* 8023DF94 0023AEF4 41 82 00 10 */ beq lbl_8023DFA4 +/* 8023DF98 0023AEF8 7E 23 8B 78 */ mr r3, r17 +/* 8023DF9C 0023AEFC 38 80 00 00 */ li r4, 0 +/* 8023DFA0 0023AF00 48 10 2E A1 */ bl __dt__6CTokenFv +lbl_8023DFA4: +/* 8023DFA4 0023AF04 7E 23 8B 78 */ mr r3, r17 +/* 8023DFA8 0023AF08 48 0D 79 89 */ bl Free__7CMemoryFPCv +lbl_8023DFAC: +/* 8023DFAC 0023AF0C 7E 00 07 75 */ extsb. r0, r16 +/* 8023DFB0 0023AF10 41 82 00 10 */ beq lbl_8023DFC0 +/* 8023DFB4 0023AF14 38 61 00 68 */ addi r3, r1, 0x68 +/* 8023DFB8 0023AF18 38 80 FF FF */ li r4, -1 +/* 8023DFBC 0023AF1C 48 10 2E 85 */ bl __dt__6CTokenFv +lbl_8023DFC0: +/* 8023DFC0 0023AF20 3C 60 80 3D */ lis r3, lbl_803D4388@ha +/* 8023DFC4 0023AF24 3A 00 00 00 */ li r16, 0 +/* 8023DFC8 0023AF28 38 83 43 88 */ addi r4, r3, lbl_803D4388@l +/* 8023DFCC 0023AF2C 38 60 03 40 */ li r3, 0x340 +/* 8023DFD0 0023AF30 38 84 00 0B */ addi r4, r4, 0xb +/* 8023DFD4 0023AF34 38 A0 00 00 */ li r5, 0 +/* 8023DFD8 0023AF38 48 0D 78 95 */ bl __nw__FUlPCcPCc +/* 8023DFDC 0023AF3C 7C 71 1B 79 */ or. r17, r3, r3 +/* 8023DFE0 0023AF40 41 82 00 2C */ beq lbl_8023E00C +/* 8023DFE4 0023AF44 80 9F 01 E0 */ lwz r4, 0x1e0(r31) +/* 8023DFE8 0023AF48 38 61 00 58 */ addi r3, r1, 0x58 +/* 8023DFEC 0023AF4C 48 10 2E BD */ bl __ct__6CTokenFRC6CToken +/* 8023DFF0 0023AF50 7E 23 8B 78 */ mr r3, r17 +/* 8023DFF4 0023AF54 38 81 00 58 */ addi r4, r1, 0x58 +/* 8023DFF8 0023AF58 3A 00 00 01 */ li r16, 1 +/* 8023DFFC 0023AF5C 38 A0 00 00 */ li r5, 0 +/* 8023E000 0023AF60 38 C0 00 01 */ li r6, 1 +/* 8023E004 0023AF64 48 0E 13 DD */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 8023E008 0023AF68 7C 71 1B 78 */ mr r17, r3 +lbl_8023E00C: +/* 8023E00C 0023AF6C 7C 71 00 D0 */ neg r3, r17 +/* 8023E010 0023AF70 38 01 00 50 */ addi r0, r1, 0x50 +/* 8023E014 0023AF74 7C 63 8B 78 */ or r3, r3, r17 +/* 8023E018 0023AF78 38 9F 01 EC */ addi r4, r31, 0x1ec +/* 8023E01C 0023AF7C 54 63 0F FE */ srwi r3, r3, 0x1f +/* 8023E020 0023AF80 92 21 00 54 */ stw r17, 0x54(r1) +/* 8023E024 0023AF84 7C 00 20 40 */ cmplw r0, r4 +/* 8023E028 0023AF88 98 61 00 50 */ stb r3, 0x50(r1) +/* 8023E02C 0023AF8C 41 82 00 48 */ beq lbl_8023E074 +/* 8023E030 0023AF90 88 04 00 00 */ lbz r0, 0(r4) +/* 8023E034 0023AF94 28 00 00 00 */ cmplwi r0, 0 +/* 8023E038 0023AF98 41 82 00 24 */ beq lbl_8023E05C +/* 8023E03C 0023AF9C 80 7F 01 F0 */ lwz r3, 0x1f0(r31) +/* 8023E040 0023AFA0 28 03 00 00 */ cmplwi r3, 0 +/* 8023E044 0023AFA4 41 82 00 18 */ beq lbl_8023E05C +/* 8023E048 0023AFA8 81 83 00 00 */ lwz r12, 0(r3) +/* 8023E04C 0023AFAC 38 80 00 01 */ li r4, 1 +/* 8023E050 0023AFB0 81 8C 00 08 */ lwz r12, 8(r12) +/* 8023E054 0023AFB4 7D 89 03 A6 */ mtctr r12 +/* 8023E058 0023AFB8 4E 80 04 21 */ bctrl +lbl_8023E05C: +/* 8023E05C 0023AFBC 88 61 00 50 */ lbz r3, 0x50(r1) +/* 8023E060 0023AFC0 38 00 00 00 */ li r0, 0 +/* 8023E064 0023AFC4 98 7F 01 EC */ stb r3, 0x1ec(r31) +/* 8023E068 0023AFC8 80 61 00 54 */ lwz r3, 0x54(r1) +/* 8023E06C 0023AFCC 90 7F 01 F0 */ stw r3, 0x1f0(r31) +/* 8023E070 0023AFD0 98 01 00 50 */ stb r0, 0x50(r1) +lbl_8023E074: +/* 8023E074 0023AFD4 88 01 00 50 */ lbz r0, 0x50(r1) +/* 8023E078 0023AFD8 28 00 00 00 */ cmplwi r0, 0 +/* 8023E07C 0023AFDC 41 82 00 24 */ beq lbl_8023E0A0 +/* 8023E080 0023AFE0 80 61 00 54 */ lwz r3, 0x54(r1) +/* 8023E084 0023AFE4 28 03 00 00 */ cmplwi r3, 0 +/* 8023E088 0023AFE8 41 82 00 18 */ beq lbl_8023E0A0 +/* 8023E08C 0023AFEC 81 83 00 00 */ lwz r12, 0(r3) +/* 8023E090 0023AFF0 38 80 00 01 */ li r4, 1 +/* 8023E094 0023AFF4 81 8C 00 08 */ lwz r12, 8(r12) +/* 8023E098 0023AFF8 7D 89 03 A6 */ mtctr r12 +/* 8023E09C 0023AFFC 4E 80 04 21 */ bctrl +lbl_8023E0A0: +/* 8023E0A0 0023B000 7E 00 07 75 */ extsb. r0, r16 +/* 8023E0A4 0023B004 41 82 00 10 */ beq lbl_8023E0B4 +/* 8023E0A8 0023B008 38 61 00 58 */ addi r3, r1, 0x58 +/* 8023E0AC 0023B00C 38 80 00 00 */ li r4, 0 +/* 8023E0B0 0023B010 48 10 2D 91 */ bl __dt__6CTokenFv +lbl_8023E0B4: +/* 8023E0B4 0023B014 3C 1E 00 01 */ addis r0, r30, 1 +/* 8023E0B8 0023B018 28 00 FF FF */ cmplwi r0, 0xffff +/* 8023E0BC 0023B01C 41 82 02 18 */ beq lbl_8023E2D4 +/* 8023E0C0 0023B020 3C 60 80 3D */ lis r3, lbl_803D4388@ha +/* 8023E0C4 0023B024 3A 00 00 00 */ li r16, 0 +/* 8023E0C8 0023B028 38 83 43 88 */ addi r4, r3, lbl_803D4388@l +/* 8023E0CC 0023B02C 38 60 00 0C */ li r3, 0xc +/* 8023E0D0 0023B030 38 84 00 0B */ addi r4, r4, 0xb +/* 8023E0D4 0023B034 38 A0 00 00 */ li r5, 0 +/* 8023E0D8 0023B038 48 0D 77 95 */ bl __nw__FUlPCcPCc +/* 8023E0DC 0023B03C 7C 71 1B 79 */ or. r17, r3, r3 +/* 8023E0E0 0023B040 41 82 00 50 */ beq lbl_8023E130 +/* 8023E0E4 0023B044 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 8023E0E8 0023B048 93 C1 00 4C */ stw r30, 0x4c(r1) +/* 8023E0EC 0023B04C 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 8023E0F0 0023B050 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8023E0F4 0023B054 90 01 00 48 */ stw r0, 0x48(r1) +/* 8023E0F8 0023B058 38 61 00 40 */ addi r3, r1, 0x40 +/* 8023E0FC 0023B05C 38 A1 00 48 */ addi r5, r1, 0x48 +/* 8023E100 0023B060 81 84 00 00 */ lwz r12, 0(r4) +/* 8023E104 0023B064 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8023E108 0023B068 7D 89 03 A6 */ mtctr r12 +/* 8023E10C 0023B06C 4E 80 04 21 */ bctrl +/* 8023E110 0023B070 7E 23 8B 78 */ mr r3, r17 +/* 8023E114 0023B074 38 81 00 40 */ addi r4, r1, 0x40 +/* 8023E118 0023B078 3A 00 00 01 */ li r16, 1 +/* 8023E11C 0023B07C 48 10 2D 8D */ bl __ct__6CTokenFRC6CToken +/* 8023E120 0023B080 7E 23 8B 78 */ mr r3, r17 +/* 8023E124 0023B084 48 10 2C E9 */ bl GetObj__6CTokenFv +/* 8023E128 0023B088 80 03 00 04 */ lwz r0, 4(r3) +/* 8023E12C 0023B08C 90 11 00 08 */ stw r0, 8(r17) +lbl_8023E130: +/* 8023E130 0023B090 7C 71 00 D0 */ neg r3, r17 +/* 8023E134 0023B094 38 01 00 38 */ addi r0, r1, 0x38 +/* 8023E138 0023B098 7C 63 8B 78 */ or r3, r3, r17 +/* 8023E13C 0023B09C 38 9F 01 DC */ addi r4, r31, 0x1dc +/* 8023E140 0023B0A0 54 63 0F FE */ srwi r3, r3, 0x1f +/* 8023E144 0023B0A4 92 21 00 3C */ stw r17, 0x3c(r1) +/* 8023E148 0023B0A8 7C 00 20 40 */ cmplw r0, r4 +/* 8023E14C 0023B0AC 98 61 00 38 */ stb r3, 0x38(r1) +/* 8023E150 0023B0B0 41 82 00 4C */ beq lbl_8023E19C +/* 8023E154 0023B0B4 88 04 00 00 */ lbz r0, 0(r4) +/* 8023E158 0023B0B8 28 00 00 00 */ cmplwi r0, 0 +/* 8023E15C 0023B0BC 41 82 00 28 */ beq lbl_8023E184 +/* 8023E160 0023B0C0 82 3F 01 E0 */ lwz r17, 0x1e0(r31) +/* 8023E164 0023B0C4 28 11 00 00 */ cmplwi r17, 0 +/* 8023E168 0023B0C8 41 82 00 1C */ beq lbl_8023E184 +/* 8023E16C 0023B0CC 41 82 00 10 */ beq lbl_8023E17C +/* 8023E170 0023B0D0 7E 23 8B 78 */ mr r3, r17 +/* 8023E174 0023B0D4 38 80 00 00 */ li r4, 0 +/* 8023E178 0023B0D8 48 10 2C C9 */ bl __dt__6CTokenFv +lbl_8023E17C: +/* 8023E17C 0023B0DC 7E 23 8B 78 */ mr r3, r17 +/* 8023E180 0023B0E0 48 0D 77 B1 */ bl Free__7CMemoryFPCv +lbl_8023E184: +/* 8023E184 0023B0E4 88 61 00 38 */ lbz r3, 0x38(r1) +/* 8023E188 0023B0E8 38 00 00 00 */ li r0, 0 +/* 8023E18C 0023B0EC 98 7F 01 DC */ stb r3, 0x1dc(r31) +/* 8023E190 0023B0F0 80 61 00 3C */ lwz r3, 0x3c(r1) +/* 8023E194 0023B0F4 90 7F 01 E0 */ stw r3, 0x1e0(r31) +/* 8023E198 0023B0F8 98 01 00 38 */ stb r0, 0x38(r1) +lbl_8023E19C: +/* 8023E19C 0023B0FC 88 01 00 38 */ lbz r0, 0x38(r1) +/* 8023E1A0 0023B100 28 00 00 00 */ cmplwi r0, 0 +/* 8023E1A4 0023B104 41 82 00 28 */ beq lbl_8023E1CC +/* 8023E1A8 0023B108 82 21 00 3C */ lwz r17, 0x3c(r1) +/* 8023E1AC 0023B10C 28 11 00 00 */ cmplwi r17, 0 +/* 8023E1B0 0023B110 41 82 00 1C */ beq lbl_8023E1CC +/* 8023E1B4 0023B114 41 82 00 10 */ beq lbl_8023E1C4 +/* 8023E1B8 0023B118 7E 23 8B 78 */ mr r3, r17 +/* 8023E1BC 0023B11C 38 80 00 00 */ li r4, 0 +/* 8023E1C0 0023B120 48 10 2C 81 */ bl __dt__6CTokenFv +lbl_8023E1C4: +/* 8023E1C4 0023B124 7E 23 8B 78 */ mr r3, r17 +/* 8023E1C8 0023B128 48 0D 77 69 */ bl Free__7CMemoryFPCv +lbl_8023E1CC: +/* 8023E1CC 0023B12C 7E 00 07 75 */ extsb. r0, r16 +/* 8023E1D0 0023B130 41 82 00 10 */ beq lbl_8023E1E0 +/* 8023E1D4 0023B134 38 61 00 40 */ addi r3, r1, 0x40 +/* 8023E1D8 0023B138 38 80 FF FF */ li r4, -1 +/* 8023E1DC 0023B13C 48 10 2C 65 */ bl __dt__6CTokenFv +lbl_8023E1E0: +/* 8023E1E0 0023B140 3C 60 80 3D */ lis r3, lbl_803D4388@ha +/* 8023E1E4 0023B144 3A 00 00 00 */ li r16, 0 +/* 8023E1E8 0023B148 38 83 43 88 */ addi r4, r3, lbl_803D4388@l +/* 8023E1EC 0023B14C 38 60 03 40 */ li r3, 0x340 +/* 8023E1F0 0023B150 38 84 00 0B */ addi r4, r4, 0xb +/* 8023E1F4 0023B154 38 A0 00 00 */ li r5, 0 +/* 8023E1F8 0023B158 48 0D 76 75 */ bl __nw__FUlPCcPCc +/* 8023E1FC 0023B15C 7C 71 1B 79 */ or. r17, r3, r3 +/* 8023E200 0023B160 41 82 00 2C */ beq lbl_8023E22C +/* 8023E204 0023B164 80 9F 01 E0 */ lwz r4, 0x1e0(r31) +/* 8023E208 0023B168 38 61 00 30 */ addi r3, r1, 0x30 +/* 8023E20C 0023B16C 48 10 2C 9D */ bl __ct__6CTokenFRC6CToken +/* 8023E210 0023B170 7E 23 8B 78 */ mr r3, r17 +/* 8023E214 0023B174 38 81 00 30 */ addi r4, r1, 0x30 +/* 8023E218 0023B178 3A 00 00 01 */ li r16, 1 +/* 8023E21C 0023B17C 38 A0 00 00 */ li r5, 0 +/* 8023E220 0023B180 38 C0 00 01 */ li r6, 1 +/* 8023E224 0023B184 48 0E 11 BD */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 8023E228 0023B188 7C 71 1B 78 */ mr r17, r3 +lbl_8023E22C: +/* 8023E22C 0023B18C 7C 71 00 D0 */ neg r3, r17 +/* 8023E230 0023B190 38 01 00 28 */ addi r0, r1, 0x28 +/* 8023E234 0023B194 7C 63 8B 78 */ or r3, r3, r17 +/* 8023E238 0023B198 38 9F 01 F4 */ addi r4, r31, 0x1f4 +/* 8023E23C 0023B19C 54 63 0F FE */ srwi r3, r3, 0x1f +/* 8023E240 0023B1A0 92 21 00 2C */ stw r17, 0x2c(r1) +/* 8023E244 0023B1A4 7C 00 20 40 */ cmplw r0, r4 +/* 8023E248 0023B1A8 98 61 00 28 */ stb r3, 0x28(r1) +/* 8023E24C 0023B1AC 41 82 00 48 */ beq lbl_8023E294 +/* 8023E250 0023B1B0 88 04 00 00 */ lbz r0, 0(r4) +/* 8023E254 0023B1B4 28 00 00 00 */ cmplwi r0, 0 +/* 8023E258 0023B1B8 41 82 00 24 */ beq lbl_8023E27C +/* 8023E25C 0023B1BC 80 7F 01 F8 */ lwz r3, 0x1f8(r31) +/* 8023E260 0023B1C0 28 03 00 00 */ cmplwi r3, 0 +/* 8023E264 0023B1C4 41 82 00 18 */ beq lbl_8023E27C +/* 8023E268 0023B1C8 81 83 00 00 */ lwz r12, 0(r3) +/* 8023E26C 0023B1CC 38 80 00 01 */ li r4, 1 +/* 8023E270 0023B1D0 81 8C 00 08 */ lwz r12, 8(r12) +/* 8023E274 0023B1D4 7D 89 03 A6 */ mtctr r12 +/* 8023E278 0023B1D8 4E 80 04 21 */ bctrl +lbl_8023E27C: +/* 8023E27C 0023B1DC 88 61 00 28 */ lbz r3, 0x28(r1) +/* 8023E280 0023B1E0 38 00 00 00 */ li r0, 0 +/* 8023E284 0023B1E4 98 7F 01 F4 */ stb r3, 0x1f4(r31) +/* 8023E288 0023B1E8 80 61 00 2C */ lwz r3, 0x2c(r1) +/* 8023E28C 0023B1EC 90 7F 01 F8 */ stw r3, 0x1f8(r31) +/* 8023E290 0023B1F0 98 01 00 28 */ stb r0, 0x28(r1) +lbl_8023E294: +/* 8023E294 0023B1F4 88 01 00 28 */ lbz r0, 0x28(r1) +/* 8023E298 0023B1F8 28 00 00 00 */ cmplwi r0, 0 +/* 8023E29C 0023B1FC 41 82 00 24 */ beq lbl_8023E2C0 +/* 8023E2A0 0023B200 80 61 00 2C */ lwz r3, 0x2c(r1) +/* 8023E2A4 0023B204 28 03 00 00 */ cmplwi r3, 0 +/* 8023E2A8 0023B208 41 82 00 18 */ beq lbl_8023E2C0 +/* 8023E2AC 0023B20C 81 83 00 00 */ lwz r12, 0(r3) +/* 8023E2B0 0023B210 38 80 00 01 */ li r4, 1 +/* 8023E2B4 0023B214 81 8C 00 08 */ lwz r12, 8(r12) +/* 8023E2B8 0023B218 7D 89 03 A6 */ mtctr r12 +/* 8023E2BC 0023B21C 4E 80 04 21 */ bctrl +lbl_8023E2C0: +/* 8023E2C0 0023B220 7E 00 07 75 */ extsb. r0, r16 +/* 8023E2C4 0023B224 41 82 00 10 */ beq lbl_8023E2D4 +/* 8023E2C8 0023B228 38 61 00 30 */ addi r3, r1, 0x30 +/* 8023E2CC 0023B22C 38 80 00 00 */ li r4, 0 +/* 8023E2D0 0023B230 48 10 2B 71 */ bl __dt__6CTokenFv +lbl_8023E2D4: +/* 8023E2D4 0023B234 7F E3 FB 78 */ mr r3, r31 +/* 8023E2D8 0023B238 E3 E1 02 38 */ psq_l f31, 568(r1), 0, qr0 +/* 8023E2DC 0023B23C CB E1 02 30 */ lfd f31, 0x230(r1) +/* 8023E2E0 0023B240 E3 C1 02 28 */ psq_l f30, 552(r1), 0, qr0 +/* 8023E2E4 0023B244 CB C1 02 20 */ lfd f30, 0x220(r1) +/* 8023E2E8 0023B248 E3 A1 02 18 */ psq_l f29, 536(r1), 0, qr0 +/* 8023E2EC 0023B24C CB A1 02 10 */ lfd f29, 0x210(r1) +/* 8023E2F0 0023B250 E3 81 02 08 */ psq_l f28, 520(r1), 0, qr0 +/* 8023E2F4 0023B254 CB 81 02 00 */ lfd f28, 0x200(r1) +/* 8023E2F8 0023B258 E3 61 01 F8 */ psq_l f27, 504(r1), 0, qr0 +/* 8023E2FC 0023B25C CB 61 01 F0 */ lfd f27, 0x1f0(r1) +/* 8023E300 0023B260 E3 41 01 E8 */ psq_l f26, 488(r1), 0, qr0 +/* 8023E304 0023B264 CB 41 01 E0 */ lfd f26, 0x1e0(r1) +/* 8023E308 0023B268 E3 21 01 D8 */ psq_l f25, 472(r1), 0, qr0 +/* 8023E30C 0023B26C CB 21 01 D0 */ lfd f25, 0x1d0(r1) +/* 8023E310 0023B270 E3 01 01 C8 */ psq_l f24, 456(r1), 0, qr0 +/* 8023E314 0023B274 CB 01 01 C0 */ lfd f24, 0x1c0(r1) +/* 8023E318 0023B278 E2 E1 01 B8 */ psq_l f23, 440(r1), 0, qr0 +/* 8023E31C 0023B27C CA E1 01 B0 */ lfd f23, 0x1b0(r1) +/* 8023E320 0023B280 E2 C1 01 A8 */ psq_l f22, 424(r1), 0, qr0 +/* 8023E324 0023B284 CA C1 01 A0 */ lfd f22, 0x1a0(r1) +/* 8023E328 0023B288 E2 A1 01 98 */ psq_l f21, 408(r1), 0, qr0 +/* 8023E32C 0023B28C CA A1 01 90 */ lfd f21, 0x190(r1) +/* 8023E330 0023B290 E2 81 01 88 */ psq_l f20, 392(r1), 0, qr0 +/* 8023E334 0023B294 CA 81 01 80 */ lfd f20, 0x180(r1) +/* 8023E338 0023B298 E2 61 01 78 */ psq_l f19, 376(r1), 0, qr0 +/* 8023E33C 0023B29C CA 61 01 70 */ lfd f19, 0x170(r1) +/* 8023E340 0023B2A0 E2 41 01 68 */ psq_l f18, 360(r1), 0, qr0 +/* 8023E344 0023B2A4 CA 41 01 60 */ lfd f18, 0x160(r1) +/* 8023E348 0023B2A8 E2 21 01 58 */ psq_l f17, 344(r1), 0, qr0 +/* 8023E34C 0023B2AC CA 21 01 50 */ lfd f17, 0x150(r1) +/* 8023E350 0023B2B0 BA 01 01 10 */ lmw r16, 0x110(r1) +/* 8023E354 0023B2B4 80 01 02 44 */ lwz r0, 0x244(r1) +/* 8023E358 0023B2B8 7C 08 03 A6 */ mtlr r0 +/* 8023E35C 0023B2BC 38 21 02 40 */ addi r1, r1, 0x240 +/* 8023E360 0023B2C0 4E 80 00 20 */ blr + +.global sub_8023e364 +sub_8023e364: +/* 8023E364 0023B2C4 C0 23 00 20 */ lfs f1, 0x20(r3) +/* 8023E368 0023B2C8 4E 80 00 20 */ blr + +.global sub_8023e36c +sub_8023e36c: +/* 8023E36C 0023B2CC D0 23 00 18 */ stfs f1, 0x18(r3) +/* 8023E370 0023B2D0 4E 80 00 20 */ blr + +.global sub_8023e374 +sub_8023e374: +/* 8023E374 0023B2D4 C0 23 00 18 */ lfs f1, 0x18(r3) +/* 8023E378 0023B2D8 4E 80 00 20 */ blr + +.global sub_8023e37c +sub_8023e37c: +/* 8023E37C 0023B2DC D0 23 00 14 */ stfs f1, 0x14(r3) +/* 8023E380 0023B2E0 4E 80 00 20 */ blr + +.global sub_8023e384 +sub_8023e384: +/* 8023E384 0023B2E4 C0 23 00 14 */ lfs f1, 0x14(r3) +/* 8023E388 0023B2E8 4E 80 00 20 */ blr + +.global sub_8023e38c +sub_8023e38c: +/* 8023E38C 0023B2EC D0 23 00 10 */ stfs f1, 0x10(r3) +/* 8023E390 0023B2F0 4E 80 00 20 */ blr + +.global sub_8023e394 +sub_8023e394: +/* 8023E394 0023B2F4 C0 23 00 10 */ lfs f1, 0x10(r3) +/* 8023E398 0023B2F8 4E 80 00 20 */ blr + +.global nullsub_21 +nullsub_21: +/* 8023E39C 0023B2FC 4E 80 00 20 */ blr + +.global sub_8023e3a0 +sub_8023e3a0: +/* 8023E3A0 0023B300 80 63 00 0C */ lwz r3, 0xc(r3) +/* 8023E3A4 0023B304 4E 80 00 20 */ blr + +.global sub_8023e3a8 +sub_8023e3a8: +/* 8023E3A8 0023B308 90 83 00 0C */ stw r4, 0xc(r3) +/* 8023E3AC 0023B30C 4E 80 00 20 */ blr + +.global sub_8023e3b0 +sub_8023e3b0: +/* 8023E3B0 0023B310 C0 04 00 00 */ lfs f0, 0(r4) +/* 8023E3B4 0023B314 38 00 00 01 */ li r0, 1 +/* 8023E3B8 0023B318 D0 03 00 00 */ stfs f0, 0(r3) +/* 8023E3BC 0023B31C C0 04 00 04 */ lfs f0, 4(r4) +/* 8023E3C0 0023B320 D0 03 00 04 */ stfs f0, 4(r3) +/* 8023E3C4 0023B324 C0 04 00 08 */ lfs f0, 8(r4) +/* 8023E3C8 0023B328 D0 03 00 08 */ stfs f0, 8(r3) +/* 8023E3CC 0023B32C 90 03 00 0C */ stw r0, 0xc(r3) +/* 8023E3D0 0023B330 D0 23 00 14 */ stfs f1, 0x14(r3) +/* 8023E3D4 0023B334 D0 43 00 18 */ stfs f2, 0x18(r3) +/* 8023E3D8 0023B338 D0 63 00 20 */ stfs f3, 0x20(r3) +/* 8023E3DC 0023B33C 4E 80 00 20 */ blr + +.global sub_8023e3e0 +sub_8023e3e0: +/* 8023E3E0 0023B340 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8023E3E4 0023B344 7C 08 02 A6 */ mflr r0 +/* 8023E3E8 0023B348 90 01 00 34 */ stw r0, 0x34(r1) +/* 8023E3EC 0023B34C 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8023E3F0 0023B350 7C 9F 23 78 */ mr r31, r4 +/* 8023E3F4 0023B354 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8023E3F8 0023B358 7C 7E 1B 78 */ mr r30, r3 +/* 8023E3FC 0023B35C 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8023E400 0023B360 80 03 00 08 */ lwz r0, 8(r3) +/* 8023E404 0023B364 7C 1F 00 00 */ cmpw r31, r0 +/* 8023E408 0023B368 40 81 00 F0 */ ble lbl_8023E4F8 +/* 8023E40C 0023B36C 1C 7F 00 24 */ mulli r3, r31, 0x24 +/* 8023E410 0023B370 2C 03 00 00 */ cmpwi r3, 0 +/* 8023E414 0023B374 40 82 00 0C */ bne lbl_8023E420 +/* 8023E418 0023B378 3B A0 00 00 */ li r29, 0 +/* 8023E41C 0023B37C 48 00 00 1C */ b lbl_8023E438 +lbl_8023E420: +/* 8023E420 0023B380 3C 80 80 3D */ lis r4, lbl_803D4388@ha +/* 8023E424 0023B384 38 A0 00 00 */ li r5, 0 +/* 8023E428 0023B388 38 84 43 88 */ addi r4, r4, lbl_803D4388@l +/* 8023E42C 0023B38C 38 84 00 0B */ addi r4, r4, 0xb +/* 8023E430 0023B390 48 0D 73 E9 */ bl __nwa__FUlPCcPCc +/* 8023E434 0023B394 7C 7D 1B 78 */ mr r29, r3 +lbl_8023E438: +/* 8023E438 0023B398 80 1E 00 04 */ lwz r0, 4(r30) +/* 8023E43C 0023B39C 7F A4 EB 78 */ mr r4, r29 +/* 8023E440 0023B3A0 80 BE 00 0C */ lwz r5, 0xc(r30) +/* 8023E444 0023B3A4 1C 00 00 24 */ mulli r0, r0, 0x24 +/* 8023E448 0023B3A8 90 A1 00 10 */ stw r5, 0x10(r1) +/* 8023E44C 0023B3AC 7C 65 02 14 */ add r3, r5, r0 +/* 8023E450 0023B3B0 90 A1 00 14 */ stw r5, 0x14(r1) +/* 8023E454 0023B3B4 90 61 00 08 */ stw r3, 8(r1) +/* 8023E458 0023B3B8 90 61 00 0C */ stw r3, 0xc(r1) +/* 8023E45C 0023B3BC 48 00 00 5C */ b lbl_8023E4B8 +lbl_8023E460: +/* 8023E460 0023B3C0 28 04 00 00 */ cmplwi r4, 0 +/* 8023E464 0023B3C4 41 82 00 4C */ beq lbl_8023E4B0 +/* 8023E468 0023B3C8 C0 05 00 00 */ lfs f0, 0(r5) +/* 8023E46C 0023B3CC D0 04 00 00 */ stfs f0, 0(r4) +/* 8023E470 0023B3D0 C0 05 00 04 */ lfs f0, 4(r5) +/* 8023E474 0023B3D4 D0 04 00 04 */ stfs f0, 4(r4) +/* 8023E478 0023B3D8 C0 05 00 08 */ lfs f0, 8(r5) +/* 8023E47C 0023B3DC D0 04 00 08 */ stfs f0, 8(r4) +/* 8023E480 0023B3E0 80 05 00 0C */ lwz r0, 0xc(r5) +/* 8023E484 0023B3E4 90 04 00 0C */ stw r0, 0xc(r4) +/* 8023E488 0023B3E8 C0 05 00 10 */ lfs f0, 0x10(r5) +/* 8023E48C 0023B3EC D0 04 00 10 */ stfs f0, 0x10(r4) +/* 8023E490 0023B3F0 C0 05 00 14 */ lfs f0, 0x14(r5) +/* 8023E494 0023B3F4 D0 04 00 14 */ stfs f0, 0x14(r4) +/* 8023E498 0023B3F8 C0 05 00 18 */ lfs f0, 0x18(r5) +/* 8023E49C 0023B3FC D0 04 00 18 */ stfs f0, 0x18(r4) +/* 8023E4A0 0023B400 C0 05 00 1C */ lfs f0, 0x1c(r5) +/* 8023E4A4 0023B404 D0 04 00 1C */ stfs f0, 0x1c(r4) +/* 8023E4A8 0023B408 C0 05 00 20 */ lfs f0, 0x20(r5) +/* 8023E4AC 0023B40C D0 04 00 20 */ stfs f0, 0x20(r4) +lbl_8023E4B0: +/* 8023E4B0 0023B410 38 84 00 24 */ addi r4, r4, 0x24 +/* 8023E4B4 0023B414 38 A5 00 24 */ addi r5, r5, 0x24 +lbl_8023E4B8: +/* 8023E4B8 0023B418 7C 05 18 40 */ cmplw r5, r3 +/* 8023E4BC 0023B41C 40 82 FF A4 */ bne lbl_8023E460 +/* 8023E4C0 0023B420 80 1E 00 04 */ lwz r0, 4(r30) +/* 8023E4C4 0023B424 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 8023E4C8 0023B428 1C 00 00 24 */ mulli r0, r0, 0x24 +/* 8023E4CC 0023B42C 7C 64 1B 78 */ mr r4, r3 +/* 8023E4D0 0023B430 7C 03 02 14 */ add r0, r3, r0 +/* 8023E4D4 0023B434 48 00 00 08 */ b lbl_8023E4DC +lbl_8023E4D8: +/* 8023E4D8 0023B438 38 84 00 24 */ addi r4, r4, 0x24 +lbl_8023E4DC: +/* 8023E4DC 0023B43C 7C 04 00 40 */ cmplw r4, r0 +/* 8023E4E0 0023B440 40 82 FF F8 */ bne lbl_8023E4D8 +/* 8023E4E4 0023B444 28 03 00 00 */ cmplwi r3, 0 +/* 8023E4E8 0023B448 41 82 00 08 */ beq lbl_8023E4F0 +/* 8023E4EC 0023B44C 48 0D 74 45 */ bl Free__7CMemoryFPCv +lbl_8023E4F0: +/* 8023E4F0 0023B450 93 BE 00 0C */ stw r29, 0xc(r30) +/* 8023E4F4 0023B454 93 FE 00 08 */ stw r31, 8(r30) +lbl_8023E4F8: +/* 8023E4F8 0023B458 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8023E4FC 0023B45C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8023E500 0023B460 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8023E504 0023B464 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8023E508 0023B468 7C 08 03 A6 */ mtlr r0 +/* 8023E50C 0023B46C 38 21 00 30 */ addi r1, r1, 0x30 +/* 8023E510 0023B470 4E 80 00 20 */ blr + +.global sub_8023e514 +sub_8023e514: +/* 8023E514 0023B474 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8023E518 0023B478 7C 08 02 A6 */ mflr r0 +/* 8023E51C 0023B47C 90 01 00 34 */ stw r0, 0x34(r1) +/* 8023E520 0023B480 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8023E524 0023B484 7C 9F 23 78 */ mr r31, r4 +/* 8023E528 0023B488 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8023E52C 0023B48C 7C 7E 1B 78 */ mr r30, r3 +/* 8023E530 0023B490 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8023E534 0023B494 80 03 00 08 */ lwz r0, 8(r3) +/* 8023E538 0023B498 7C 1F 00 00 */ cmpw r31, r0 +/* 8023E53C 0023B49C 40 81 00 AC */ ble lbl_8023E5E8 +/* 8023E540 0023B4A0 57 E3 10 3B */ rlwinm. r3, r31, 2, 0, 0x1d +/* 8023E544 0023B4A4 40 82 00 0C */ bne lbl_8023E550 +/* 8023E548 0023B4A8 3B A0 00 00 */ li r29, 0 +/* 8023E54C 0023B4AC 48 00 00 1C */ b lbl_8023E568 +lbl_8023E550: +/* 8023E550 0023B4B0 3C 80 80 3D */ lis r4, lbl_803D4388@ha +/* 8023E554 0023B4B4 38 A0 00 00 */ li r5, 0 +/* 8023E558 0023B4B8 38 84 43 88 */ addi r4, r4, lbl_803D4388@l +/* 8023E55C 0023B4BC 38 84 00 0B */ addi r4, r4, 0xb +/* 8023E560 0023B4C0 48 0D 72 B9 */ bl __nwa__FUlPCcPCc +/* 8023E564 0023B4C4 7C 7D 1B 78 */ mr r29, r3 +lbl_8023E568: +/* 8023E568 0023B4C8 80 1E 00 04 */ lwz r0, 4(r30) +/* 8023E56C 0023B4CC 7F A4 EB 78 */ mr r4, r29 +/* 8023E570 0023B4D0 80 BE 00 0C */ lwz r5, 0xc(r30) +/* 8023E574 0023B4D4 54 00 10 3A */ slwi r0, r0, 2 +/* 8023E578 0023B4D8 7C 65 02 14 */ add r3, r5, r0 +/* 8023E57C 0023B4DC 90 A1 00 10 */ stw r5, 0x10(r1) +/* 8023E580 0023B4E0 90 61 00 08 */ stw r3, 8(r1) +/* 8023E584 0023B4E4 90 61 00 0C */ stw r3, 0xc(r1) +/* 8023E588 0023B4E8 90 A1 00 14 */ stw r5, 0x14(r1) +/* 8023E58C 0023B4EC 48 00 00 1C */ b lbl_8023E5A8 +lbl_8023E590: +/* 8023E590 0023B4F0 28 04 00 00 */ cmplwi r4, 0 +/* 8023E594 0023B4F4 41 82 00 0C */ beq lbl_8023E5A0 +/* 8023E598 0023B4F8 80 05 00 00 */ lwz r0, 0(r5) +/* 8023E59C 0023B4FC 90 04 00 00 */ stw r0, 0(r4) +lbl_8023E5A0: +/* 8023E5A0 0023B500 38 84 00 04 */ addi r4, r4, 4 +/* 8023E5A4 0023B504 38 A5 00 04 */ addi r5, r5, 4 +lbl_8023E5A8: +/* 8023E5A8 0023B508 7C 05 18 40 */ cmplw r5, r3 +/* 8023E5AC 0023B50C 40 82 FF E4 */ bne lbl_8023E590 +/* 8023E5B0 0023B510 80 1E 00 04 */ lwz r0, 4(r30) +/* 8023E5B4 0023B514 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 8023E5B8 0023B518 54 00 10 3A */ slwi r0, r0, 2 +/* 8023E5BC 0023B51C 7C 64 1B 78 */ mr r4, r3 +/* 8023E5C0 0023B520 7C 03 02 14 */ add r0, r3, r0 +/* 8023E5C4 0023B524 48 00 00 08 */ b lbl_8023E5CC +lbl_8023E5C8: +/* 8023E5C8 0023B528 38 84 00 04 */ addi r4, r4, 4 +lbl_8023E5CC: +/* 8023E5CC 0023B52C 7C 04 00 40 */ cmplw r4, r0 +/* 8023E5D0 0023B530 40 82 FF F8 */ bne lbl_8023E5C8 +/* 8023E5D4 0023B534 28 03 00 00 */ cmplwi r3, 0 +/* 8023E5D8 0023B538 41 82 00 08 */ beq lbl_8023E5E0 +/* 8023E5DC 0023B53C 48 0D 73 55 */ bl Free__7CMemoryFPCv +lbl_8023E5E0: +/* 8023E5E0 0023B540 93 BE 00 0C */ stw r29, 0xc(r30) +/* 8023E5E4 0023B544 93 FE 00 08 */ stw r31, 8(r30) +lbl_8023E5E8: +/* 8023E5E8 0023B548 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8023E5EC 0023B54C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8023E5F0 0023B550 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8023E5F4 0023B554 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8023E5F8 0023B558 7C 08 03 A6 */ mtlr r0 +/* 8023E5FC 0023B55C 38 21 00 30 */ addi r1, r1, 0x30 +/* 8023E600 0023B560 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Enemies/CTeamAiMgr.s b/asm/Kyoto_CWD/Enemies/CTeamAiMgr.s new file mode 100644 index 00000000..980cb0c7 --- /dev/null +++ b/asm/Kyoto_CWD/Enemies/CTeamAiMgr.s @@ -0,0 +1,4112 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__10CTeamAiMgr +__dt__10CTeamAiMgr: +/* 80237B64 00234AC4 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80237B68 00234AC8 7C 08 02 A6 */ mflr r0 +/* 80237B6C 00234ACC 90 01 00 44 */ stw r0, 0x44(r1) +/* 80237B70 00234AD0 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80237B74 00234AD4 7C 9F 23 78 */ mr r31, r4 +/* 80237B78 00234AD8 93 C1 00 38 */ stw r30, 0x38(r1) +/* 80237B7C 00234ADC 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80237B80 00234AE0 41 82 01 04 */ beq lbl_80237C84 +/* 80237B84 00234AE4 3C 60 80 3F */ lis r3, lbl_803E8558@ha +/* 80237B88 00234AE8 34 1E 00 78 */ addic. r0, r30, 0x78 +/* 80237B8C 00234AEC 38 03 85 58 */ addi r0, r3, lbl_803E8558@l +/* 80237B90 00234AF0 90 1E 00 00 */ stw r0, 0(r30) +/* 80237B94 00234AF4 41 82 00 44 */ beq lbl_80237BD8 +/* 80237B98 00234AF8 80 1E 00 7C */ lwz r0, 0x7c(r30) +/* 80237B9C 00234AFC 80 7E 00 84 */ lwz r3, 0x84(r30) +/* 80237BA0 00234B00 54 00 08 3C */ slwi r0, r0, 1 +/* 80237BA4 00234B04 7C 03 02 14 */ add r0, r3, r0 +/* 80237BA8 00234B08 90 61 00 2C */ stw r3, 0x2c(r1) +/* 80237BAC 00234B0C 7C 64 1B 78 */ mr r4, r3 +/* 80237BB0 00234B10 90 01 00 34 */ stw r0, 0x34(r1) +/* 80237BB4 00234B14 90 01 00 30 */ stw r0, 0x30(r1) +/* 80237BB8 00234B18 90 61 00 28 */ stw r3, 0x28(r1) +/* 80237BBC 00234B1C 48 00 00 08 */ b lbl_80237BC4 +lbl_80237BC0: +/* 80237BC0 00234B20 38 84 00 02 */ addi r4, r4, 2 +lbl_80237BC4: +/* 80237BC4 00234B24 7C 04 00 40 */ cmplw r4, r0 +/* 80237BC8 00234B28 40 82 FF F8 */ bne lbl_80237BC0 +/* 80237BCC 00234B2C 28 03 00 00 */ cmplwi r3, 0 +/* 80237BD0 00234B30 41 82 00 08 */ beq lbl_80237BD8 +/* 80237BD4 00234B34 48 0D DD 5D */ bl Free__7CMemoryFPCv +lbl_80237BD8: +/* 80237BD8 00234B38 34 1E 00 68 */ addic. r0, r30, 0x68 +/* 80237BDC 00234B3C 41 82 00 44 */ beq lbl_80237C20 +/* 80237BE0 00234B40 80 1E 00 6C */ lwz r0, 0x6c(r30) +/* 80237BE4 00234B44 80 7E 00 74 */ lwz r3, 0x74(r30) +/* 80237BE8 00234B48 54 00 08 3C */ slwi r0, r0, 1 +/* 80237BEC 00234B4C 7C 03 02 14 */ add r0, r3, r0 +/* 80237BF0 00234B50 90 61 00 1C */ stw r3, 0x1c(r1) +/* 80237BF4 00234B54 7C 64 1B 78 */ mr r4, r3 +/* 80237BF8 00234B58 90 01 00 24 */ stw r0, 0x24(r1) +/* 80237BFC 00234B5C 90 01 00 20 */ stw r0, 0x20(r1) +/* 80237C00 00234B60 90 61 00 18 */ stw r3, 0x18(r1) +/* 80237C04 00234B64 48 00 00 08 */ b lbl_80237C0C +lbl_80237C08: +/* 80237C08 00234B68 38 84 00 02 */ addi r4, r4, 2 +lbl_80237C0C: +/* 80237C0C 00234B6C 7C 04 00 40 */ cmplw r4, r0 +/* 80237C10 00234B70 40 82 FF F8 */ bne lbl_80237C08 +/* 80237C14 00234B74 28 03 00 00 */ cmplwi r3, 0 +/* 80237C18 00234B78 41 82 00 08 */ beq lbl_80237C20 +/* 80237C1C 00234B7C 48 0D DD 15 */ bl Free__7CMemoryFPCv +lbl_80237C20: +/* 80237C20 00234B80 34 1E 00 58 */ addic. r0, r30, 0x58 +/* 80237C24 00234B84 41 82 00 44 */ beq lbl_80237C68 +/* 80237C28 00234B88 80 1E 00 5C */ lwz r0, 0x5c(r30) +/* 80237C2C 00234B8C 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 80237C30 00234B90 1C 00 00 28 */ mulli r0, r0, 0x28 +/* 80237C34 00234B94 90 61 00 0C */ stw r3, 0xc(r1) +/* 80237C38 00234B98 7C 64 1B 78 */ mr r4, r3 +/* 80237C3C 00234B9C 7C 03 02 14 */ add r0, r3, r0 +/* 80237C40 00234BA0 90 61 00 08 */ stw r3, 8(r1) +/* 80237C44 00234BA4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80237C48 00234BA8 90 01 00 10 */ stw r0, 0x10(r1) +/* 80237C4C 00234BAC 48 00 00 08 */ b lbl_80237C54 +lbl_80237C50: +/* 80237C50 00234BB0 38 84 00 28 */ addi r4, r4, 0x28 +lbl_80237C54: +/* 80237C54 00234BB4 7C 04 00 40 */ cmplw r4, r0 +/* 80237C58 00234BB8 40 82 FF F8 */ bne lbl_80237C50 +/* 80237C5C 00234BBC 28 03 00 00 */ cmplwi r3, 0 +/* 80237C60 00234BC0 41 82 00 08 */ beq lbl_80237C68 +/* 80237C64 00234BC4 48 0D DC CD */ bl Free__7CMemoryFPCv +lbl_80237C68: +/* 80237C68 00234BC8 7F C3 F3 78 */ mr r3, r30 +/* 80237C6C 00234BCC 38 80 00 00 */ li r4, 0 +/* 80237C70 00234BD0 4B E1 96 05 */ bl __dt__7CEntityFv +/* 80237C74 00234BD4 7F E0 07 35 */ extsh. r0, r31 +/* 80237C78 00234BD8 40 81 00 0C */ ble lbl_80237C84 +/* 80237C7C 00234BDC 7F C3 F3 78 */ mr r3, r30 +/* 80237C80 00234BE0 48 0D DC B1 */ bl Free__7CMemoryFPCv +lbl_80237C84: +/* 80237C84 00234BE4 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80237C88 00234BE8 7F C3 F3 78 */ mr r3, r30 +/* 80237C8C 00234BEC 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 80237C90 00234BF0 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 80237C94 00234BF4 7C 08 03 A6 */ mtlr r0 +/* 80237C98 00234BF8 38 21 00 40 */ addi r1, r1, 0x40 +/* 80237C9C 00234BFC 4E 80 00 20 */ blr + +.global UpdateTeamCaptain__10CTeamAiMgrFv +UpdateTeamCaptain__10CTeamAiMgrFv: +/* 80237CA0 00234C00 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80237CA4 00234C04 3C C0 80 00 */ lis r6, 0x8000 +/* 80237CA8 00234C08 B0 03 00 8C */ sth r0, 0x8c(r3) +/* 80237CAC 00234C0C 80 A3 00 64 */ lwz r5, 0x64(r3) +/* 80237CB0 00234C10 48 00 00 20 */ b lbl_80237CD0 +lbl_80237CB4: +/* 80237CB4 00234C14 80 85 00 18 */ lwz r4, 0x18(r5) +/* 80237CB8 00234C18 7C 04 30 00 */ cmpw r4, r6 +/* 80237CBC 00234C1C 40 81 00 10 */ ble lbl_80237CCC +/* 80237CC0 00234C20 A0 05 00 00 */ lhz r0, 0(r5) +/* 80237CC4 00234C24 7C 86 23 78 */ mr r6, r4 +/* 80237CC8 00234C28 B0 03 00 8C */ sth r0, 0x8c(r3) +lbl_80237CCC: +/* 80237CCC 00234C2C 38 A5 00 28 */ addi r5, r5, 0x28 +lbl_80237CD0: +/* 80237CD0 00234C30 80 03 00 5C */ lwz r0, 0x5c(r3) +/* 80237CD4 00234C34 80 83 00 64 */ lwz r4, 0x64(r3) +/* 80237CD8 00234C38 1C 00 00 28 */ mulli r0, r0, 0x28 +/* 80237CDC 00234C3C 7C 04 02 14 */ add r0, r4, r0 +/* 80237CE0 00234C40 7C 05 00 40 */ cmplw r5, r0 +/* 80237CE4 00234C44 40 82 FF D0 */ bne lbl_80237CB4 + +.global sub_80237ce8 +sub_80237ce8: +/* 80237CE8 00234C48 4E 80 00 20 */ blr + +.global SpacingSort__10CTeamAiMgrFR13CStateManagerRC9CVector3f +SpacingSort__10CTeamAiMgrFR13CStateManagerRC9CVector3f: +/* 80237CEC 00234C4C 94 21 FE D0 */ stwu r1, -0x130(r1) +/* 80237CF0 00234C50 7C 08 02 A6 */ mflr r0 +/* 80237CF4 00234C54 90 01 01 34 */ stw r0, 0x134(r1) +/* 80237CF8 00234C58 DB E1 01 20 */ stfd f31, 0x120(r1) +/* 80237CFC 00234C5C F3 E1 01 28 */ psq_st f31, 296(r1), 0, qr0 +/* 80237D00 00234C60 DB C1 01 10 */ stfd f30, 0x110(r1) +/* 80237D04 00234C64 F3 C1 01 18 */ psq_st f30, 280(r1), 0, qr0 +/* 80237D08 00234C68 BF 21 00 F4 */ stmw r25, 0xf4(r1) +/* 80237D0C 00234C6C 7C BF 2B 78 */ mr r31, r5 +/* 80237D10 00234C70 39 00 00 02 */ li r8, 2 +/* 80237D14 00234C74 C0 45 00 00 */ lfs f2, 0(r5) +/* 80237D18 00234C78 7C 7D 1B 78 */ mr r29, r3 +/* 80237D1C 00234C7C C0 25 00 04 */ lfs f1, 4(r5) +/* 80237D20 00234C80 7C 9E 23 78 */ mr r30, r4 +/* 80237D24 00234C84 C0 05 00 08 */ lfs f0, 8(r5) +/* 80237D28 00234C88 38 61 00 34 */ addi r3, r1, 0x34 +/* 80237D2C 00234C8C D0 41 00 BC */ stfs f2, 0xbc(r1) +/* 80237D30 00234C90 38 81 00 2C */ addi r4, r1, 0x2c +/* 80237D34 00234C94 38 A1 00 CC */ addi r5, r1, 0xcc +/* 80237D38 00234C98 D0 21 00 C0 */ stfs f1, 0xc0(r1) +/* 80237D3C 00234C9C 80 E1 00 BC */ lwz r7, 0xbc(r1) +/* 80237D40 00234CA0 D0 01 00 C4 */ stfs f0, 0xc4(r1) +/* 80237D44 00234CA4 80 C1 00 C0 */ lwz r6, 0xc0(r1) +/* 80237D48 00234CA8 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 80237D4C 00234CAC 90 E1 00 CC */ stw r7, 0xcc(r1) +/* 80237D50 00234CB0 90 C1 00 D0 */ stw r6, 0xd0(r1) +/* 80237D54 00234CB4 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 80237D58 00234CB8 91 01 00 D8 */ stw r8, 0xd8(r1) +/* 80237D5C 00234CBC 80 1D 00 5C */ lwz r0, 0x5c(r29) +/* 80237D60 00234CC0 80 DD 00 64 */ lwz r6, 0x64(r29) +/* 80237D64 00234CC4 1C 00 00 28 */ mulli r0, r0, 0x28 +/* 80237D68 00234CC8 91 01 00 C8 */ stw r8, 0xc8(r1) +/* 80237D6C 00234CCC 7C C6 02 14 */ add r6, r6, r0 +/* 80237D70 00234CD0 90 C1 00 2C */ stw r6, 0x2c(r1) +/* 80237D74 00234CD4 80 1D 00 64 */ lwz r0, 0x64(r29) +/* 80237D78 00234CD8 90 C1 00 28 */ stw r6, 0x28(r1) +/* 80237D7C 00234CDC 90 01 00 30 */ stw r0, 0x30(r1) +/* 80237D80 00234CE0 90 01 00 34 */ stw r0, 0x34(r1) +/* 80237D84 00234CE4 48 00 28 49 */ bl "sort_with_custom_comparator>" +/* 80237D88 00234CE8 C3 E2 B7 5C */ lfs f31, lbl_805AD47C@sda21(r2) +/* 80237D8C 00234CEC 83 9D 00 64 */ lwz r28, 0x64(r29) +/* 80237D90 00234CF0 48 00 00 5C */ b lbl_80237DEC +lbl_80237D94: +/* 80237D94 00234CF4 A0 1C 00 00 */ lhz r0, 0(r28) +/* 80237D98 00234CF8 7F C3 F3 78 */ mr r3, r30 +/* 80237D9C 00234CFC 38 81 00 14 */ addi r4, r1, 0x14 +/* 80237DA0 00234D00 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80237DA4 00234D04 B0 01 00 14 */ sth r0, 0x14(r1) +/* 80237DA8 00234D08 4B E1 47 CD */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80237DAC 00234D0C 7C 64 1B 78 */ mr r4, r3 +/* 80237DB0 00234D10 38 61 00 40 */ addi r3, r1, 0x40 +/* 80237DB4 00234D14 4B E7 4C A9 */ bl "__ct__16TCastToPtr<3CAi>FP7CEntity" +/* 80237DB8 00234D18 80 63 00 04 */ lwz r3, 4(r3) +/* 80237DBC 00234D1C 28 03 00 00 */ cmplwi r3, 0 +/* 80237DC0 00234D20 41 82 00 28 */ beq lbl_80237DE8 +/* 80237DC4 00234D24 4B EE 2B FD */ bl GetBaseBoundingBox__13CPhysicsActorCFv +/* 80237DC8 00234D28 C0 23 00 10 */ lfs f1, 0x10(r3) +/* 80237DCC 00234D2C C0 03 00 04 */ lfs f0, 4(r3) +/* 80237DD0 00234D30 C0 42 B7 60 */ lfs f2, lbl_805AD480@sda21(r2) +/* 80237DD4 00234D34 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80237DD8 00234D38 EC 02 00 32 */ fmuls f0, f2, f0 +/* 80237DDC 00234D3C FC 00 F8 40 */ fcmpo cr0, f0, f31 +/* 80237DE0 00234D40 40 81 00 08 */ ble lbl_80237DE8 +/* 80237DE4 00234D44 FF E0 00 90 */ fmr f31, f0 +lbl_80237DE8: +/* 80237DE8 00234D48 3B 9C 00 28 */ addi r28, r28, 0x28 +lbl_80237DEC: +/* 80237DEC 00234D4C 80 1D 00 5C */ lwz r0, 0x5c(r29) +/* 80237DF0 00234D50 83 7D 00 64 */ lwz r27, 0x64(r29) +/* 80237DF4 00234D54 1C 00 00 28 */ mulli r0, r0, 0x28 +/* 80237DF8 00234D58 7C 1B 02 14 */ add r0, r27, r0 +/* 80237DFC 00234D5C 7C 1C 00 40 */ cmplw r28, r0 +/* 80237E00 00234D60 40 82 FF 94 */ bne lbl_80237D94 +/* 80237E04 00234D64 FF C0 F8 90 */ fmr f30, f31 +/* 80237E08 00234D68 3B 80 00 00 */ li r28, 0 +/* 80237E0C 00234D6C 3B 40 00 03 */ li r26, 3 +/* 80237E10 00234D70 48 00 01 78 */ b lbl_80237F88 +lbl_80237E14: +/* 80237E14 00234D74 A0 1B 00 00 */ lhz r0, 0(r27) +/* 80237E18 00234D78 7F C3 F3 78 */ mr r3, r30 +/* 80237E1C 00234D7C 38 81 00 0C */ addi r4, r1, 0xc +/* 80237E20 00234D80 B0 01 00 08 */ sth r0, 8(r1) +/* 80237E24 00234D84 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80237E28 00234D88 4B E1 47 4D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80237E2C 00234D8C 7C 64 1B 78 */ mr r4, r3 +/* 80237E30 00234D90 38 61 00 38 */ addi r3, r1, 0x38 +/* 80237E34 00234D94 4B E7 4C 29 */ bl "__ct__16TCastToPtr<3CAi>FP7CEntity" +/* 80237E38 00234D98 83 23 00 04 */ lwz r25, 4(r3) +/* 80237E3C 00234D9C 28 19 00 00 */ cmplwi r25, 0 +/* 80237E40 00234DA0 41 82 01 44 */ beq lbl_80237F84 +/* 80237E44 00234DA4 C0 39 00 60 */ lfs f1, 0x60(r25) +/* 80237E48 00234DA8 38 61 00 DC */ addi r3, r1, 0xdc +/* 80237E4C 00234DAC C0 1F 00 08 */ lfs f0, 8(r31) +/* 80237E50 00234DB0 C0 79 00 50 */ lfs f3, 0x50(r25) +/* 80237E54 00234DB4 C0 5F 00 04 */ lfs f2, 4(r31) +/* 80237E58 00234DB8 EC 81 00 28 */ fsubs f4, f1, f0 +/* 80237E5C 00234DBC C0 39 00 40 */ lfs f1, 0x40(r25) +/* 80237E60 00234DC0 C0 1F 00 00 */ lfs f0, 0(r31) +/* 80237E64 00234DC4 EC 43 10 28 */ fsubs f2, f3, f2 +/* 80237E68 00234DC8 D0 81 00 E4 */ stfs f4, 0xe4(r1) +/* 80237E6C 00234DCC EC 21 00 28 */ fsubs f1, f1, f0 +/* 80237E70 00234DD0 C0 02 B7 64 */ lfs f0, lbl_805AD484@sda21(r2) +/* 80237E74 00234DD4 D0 41 00 E0 */ stfs f2, 0xe0(r1) +/* 80237E78 00234DD8 D0 21 00 DC */ stfs f1, 0xdc(r1) +/* 80237E7C 00234DDC D0 01 00 E4 */ stfs f0, 0xe4(r1) +/* 80237E80 00234DE0 48 0D C8 79 */ bl CanBeNormalized__9CVector3fCFv +/* 80237E84 00234DE4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80237E88 00234DE8 41 82 00 60 */ beq lbl_80237EE8 +/* 80237E8C 00234DEC 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 80237E90 00234DF0 38 81 00 DC */ addi r4, r1, 0xdc +/* 80237E94 00234DF4 48 0D C9 BD */ bl AsNormalized__9CVector3fCFv +/* 80237E98 00234DF8 C0 41 00 B4 */ lfs f2, 0xb4(r1) +/* 80237E9C 00234DFC 38 61 00 98 */ addi r3, r1, 0x98 +/* 80237EA0 00234E00 C0 21 00 B8 */ lfs f1, 0xb8(r1) +/* 80237EA4 00234E04 C0 01 00 B0 */ lfs f0, 0xb0(r1) +/* 80237EA8 00234E08 EC BE 00 B2 */ fmuls f5, f30, f2 +/* 80237EAC 00234E0C EC 9E 00 72 */ fmuls f4, f30, f1 +/* 80237EB0 00234E10 C0 5F 00 04 */ lfs f2, 4(r31) +/* 80237EB4 00234E14 EC 7E 00 32 */ fmuls f3, f30, f0 +/* 80237EB8 00234E18 C0 3F 00 08 */ lfs f1, 8(r31) +/* 80237EBC 00234E1C C0 1F 00 00 */ lfs f0, 0(r31) +/* 80237EC0 00234E20 EC 42 28 2A */ fadds f2, f2, f5 +/* 80237EC4 00234E24 EC 21 20 2A */ fadds f1, f1, f4 +/* 80237EC8 00234E28 D0 61 00 A4 */ stfs f3, 0xa4(r1) +/* 80237ECC 00234E2C EC 00 18 2A */ fadds f0, f0, f3 +/* 80237ED0 00234E30 D0 A1 00 A8 */ stfs f5, 0xa8(r1) +/* 80237ED4 00234E34 D0 81 00 AC */ stfs f4, 0xac(r1) +/* 80237ED8 00234E38 D0 01 00 98 */ stfs f0, 0x98(r1) +/* 80237EDC 00234E3C D0 41 00 9C */ stfs f2, 0x9c(r1) +/* 80237EE0 00234E40 D0 21 00 A0 */ stfs f1, 0xa0(r1) +/* 80237EE4 00234E44 48 00 00 5C */ b lbl_80237F40 +lbl_80237EE8: +/* 80237EE8 00234E48 C1 19 00 58 */ lfs f8, 0x58(r25) +/* 80237EEC 00234E4C 38 61 00 74 */ addi r3, r1, 0x74 +/* 80237EF0 00234E50 C0 F9 00 48 */ lfs f7, 0x48(r25) +/* 80237EF4 00234E54 C0 99 00 38 */ lfs f4, 0x38(r25) +/* 80237EF8 00234E58 EC BE 02 32 */ fmuls f5, f30, f8 +/* 80237EFC 00234E5C EC DE 01 F2 */ fmuls f6, f30, f7 +/* 80237F00 00234E60 C0 5F 00 04 */ lfs f2, 4(r31) +/* 80237F04 00234E64 EC 7E 01 32 */ fmuls f3, f30, f4 +/* 80237F08 00234E68 C0 3F 00 08 */ lfs f1, 8(r31) +/* 80237F0C 00234E6C C0 1F 00 00 */ lfs f0, 0(r31) +/* 80237F10 00234E70 EC 42 30 2A */ fadds f2, f2, f6 +/* 80237F14 00234E74 EC 21 28 2A */ fadds f1, f1, f5 +/* 80237F18 00234E78 D0 81 00 8C */ stfs f4, 0x8c(r1) +/* 80237F1C 00234E7C EC 00 18 2A */ fadds f0, f0, f3 +/* 80237F20 00234E80 D0 E1 00 90 */ stfs f7, 0x90(r1) +/* 80237F24 00234E84 D1 01 00 94 */ stfs f8, 0x94(r1) +/* 80237F28 00234E88 D0 61 00 80 */ stfs f3, 0x80(r1) +/* 80237F2C 00234E8C D0 C1 00 84 */ stfs f6, 0x84(r1) +/* 80237F30 00234E90 D0 A1 00 88 */ stfs f5, 0x88(r1) +/* 80237F34 00234E94 D0 01 00 74 */ stfs f0, 0x74(r1) +/* 80237F38 00234E98 D0 41 00 78 */ stfs f2, 0x78(r1) +/* 80237F3C 00234E9C D0 21 00 7C */ stfs f1, 0x7c(r1) +lbl_80237F40: +/* 80237F40 00234EA0 C0 59 00 60 */ lfs f2, 0x60(r25) +/* 80237F44 00234EA4 3B 9C 00 01 */ addi r28, r28, 1 +/* 80237F48 00234EA8 C0 39 00 50 */ lfs f1, 0x50(r25) +/* 80237F4C 00234EAC 7C 1C D0 00 */ cmpw r28, r26 +/* 80237F50 00234EB0 C0 19 00 40 */ lfs f0, 0x40(r25) +/* 80237F54 00234EB4 C0 63 00 00 */ lfs f3, 0(r3) +/* 80237F58 00234EB8 C0 83 00 04 */ lfs f4, 4(r3) +/* 80237F5C 00234EBC D0 01 00 68 */ stfs f0, 0x68(r1) +/* 80237F60 00234EC0 D0 7B 00 1C */ stfs f3, 0x1c(r27) +/* 80237F64 00234EC4 D0 9B 00 20 */ stfs f4, 0x20(r27) +/* 80237F68 00234EC8 D0 21 00 6C */ stfs f1, 0x6c(r1) +/* 80237F6C 00234ECC D0 41 00 70 */ stfs f2, 0x70(r1) +/* 80237F70 00234ED0 D0 5B 00 24 */ stfs f2, 0x24(r27) +/* 80237F74 00234ED4 40 81 00 10 */ ble lbl_80237F84 +/* 80237F78 00234ED8 EF DE F8 2A */ fadds f30, f30, f31 +/* 80237F7C 00234EDC 3B 80 00 00 */ li r28, 0 +/* 80237F80 00234EE0 3B 5A 00 01 */ addi r26, r26, 1 +lbl_80237F84: +/* 80237F84 00234EE4 3B 7B 00 28 */ addi r27, r27, 0x28 +lbl_80237F88: +/* 80237F88 00234EE8 80 1D 00 5C */ lwz r0, 0x5c(r29) +/* 80237F8C 00234EEC 80 7D 00 64 */ lwz r3, 0x64(r29) +/* 80237F90 00234EF0 1C 00 00 28 */ mulli r0, r0, 0x28 +/* 80237F94 00234EF4 7D 23 02 14 */ add r9, r3, r0 +/* 80237F98 00234EF8 7C 1B 48 40 */ cmplw r27, r9 +/* 80237F9C 00234EFC 40 82 FE 78 */ bne lbl_80237E14 +/* 80237FA0 00234F00 C0 5F 00 00 */ lfs f2, 0(r31) +/* 80237FA4 00234F04 39 00 00 00 */ li r8, 0 +/* 80237FA8 00234F08 C0 3F 00 04 */ lfs f1, 4(r31) +/* 80237FAC 00234F0C 38 61 00 24 */ addi r3, r1, 0x24 +/* 80237FB0 00234F10 C0 1F 00 08 */ lfs f0, 8(r31) +/* 80237FB4 00234F14 38 81 00 1C */ addi r4, r1, 0x1c +/* 80237FB8 00234F18 D0 41 00 48 */ stfs f2, 0x48(r1) +/* 80237FBC 00234F1C 38 A1 00 58 */ addi r5, r1, 0x58 +/* 80237FC0 00234F20 D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 80237FC4 00234F24 80 E1 00 48 */ lwz r7, 0x48(r1) +/* 80237FC8 00234F28 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 80237FCC 00234F2C 80 C1 00 4C */ lwz r6, 0x4c(r1) +/* 80237FD0 00234F30 80 01 00 50 */ lwz r0, 0x50(r1) +/* 80237FD4 00234F34 90 E1 00 58 */ stw r7, 0x58(r1) +/* 80237FD8 00234F38 90 C1 00 5C */ stw r6, 0x5c(r1) +/* 80237FDC 00234F3C 90 01 00 60 */ stw r0, 0x60(r1) +/* 80237FE0 00234F40 91 01 00 64 */ stw r8, 0x64(r1) +/* 80237FE4 00234F44 91 21 00 1C */ stw r9, 0x1c(r1) +/* 80237FE8 00234F48 80 1D 00 64 */ lwz r0, 0x64(r29) +/* 80237FEC 00234F4C 91 01 00 54 */ stw r8, 0x54(r1) +/* 80237FF0 00234F50 91 21 00 18 */ stw r9, 0x18(r1) +/* 80237FF4 00234F54 90 01 00 20 */ stw r0, 0x20(r1) +/* 80237FF8 00234F58 90 01 00 24 */ stw r0, 0x24(r1) +/* 80237FFC 00234F5C 48 00 25 D1 */ bl "sort_with_custom_comparator>" +/* 80238000 00234F60 E3 E1 01 28 */ psq_l f31, 296(r1), 0, qr0 +/* 80238004 00234F64 CB E1 01 20 */ lfd f31, 0x120(r1) +/* 80238008 00234F68 E3 C1 01 18 */ psq_l f30, 280(r1), 0, qr0 +/* 8023800C 00234F6C CB C1 01 10 */ lfd f30, 0x110(r1) +/* 80238010 00234F70 BB 21 00 F4 */ lmw r25, 0xf4(r1) +/* 80238014 00234F74 80 01 01 34 */ lwz r0, 0x134(r1) +/* 80238018 00234F78 7C 08 03 A6 */ mtlr r0 +/* 8023801C 00234F7C 38 21 01 30 */ addi r1, r1, 0x130 +/* 80238020 00234F80 4E 80 00 20 */ blr + +.global PositionTeam__10CTeamAiMgrFR13CStateManager +PositionTeam__10CTeamAiMgrFR13CStateManager: +/* 80238024 00234F84 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80238028 00234F88 7C 08 02 A6 */ mflr r0 +/* 8023802C 00234F8C C0 22 B7 64 */ lfs f1, lbl_805AD484@sda21(r2) +/* 80238030 00234F90 90 01 00 54 */ stw r0, 0x54(r1) +/* 80238034 00234F94 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 80238038 00234F98 93 C1 00 48 */ stw r30, 0x48(r1) +/* 8023803C 00234F9C 7C 9E 23 78 */ mr r30, r4 +/* 80238040 00234FA0 7F C5 F3 78 */ mr r5, r30 +/* 80238044 00234FA4 93 A1 00 44 */ stw r29, 0x44(r1) +/* 80238048 00234FA8 7C 7D 1B 78 */ mr r29, r3 +/* 8023804C 00234FAC 38 61 00 24 */ addi r3, r1, 0x24 +/* 80238050 00234FB0 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 80238054 00234FB4 81 84 00 00 */ lwz r12, 0(r4) +/* 80238058 00234FB8 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 8023805C 00234FBC 7D 89 03 A6 */ mtctr r12 +/* 80238060 00234FC0 4E 80 04 21 */ bctrl +/* 80238064 00234FC4 C0 41 00 24 */ lfs f2, 0x24(r1) +/* 80238068 00234FC8 C0 21 00 28 */ lfs f1, 0x28(r1) +/* 8023806C 00234FCC C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 80238070 00234FD0 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 80238074 00234FD4 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 80238078 00234FD8 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 8023807C 00234FDC 80 1D 00 4C */ lwz r0, 0x4c(r29) +/* 80238080 00234FE0 2C 00 00 01 */ cmpwi r0, 1 +/* 80238084 00234FE4 41 82 00 0C */ beq lbl_80238090 +/* 80238088 00234FE8 40 80 00 1C */ bge lbl_802380A4 +/* 8023808C 00234FEC 48 00 00 18 */ b lbl_802380A4 +lbl_80238090: +/* 80238090 00234FF0 7F A3 EB 78 */ mr r3, r29 +/* 80238094 00234FF4 7F C4 F3 78 */ mr r4, r30 +/* 80238098 00234FF8 38 A1 00 30 */ addi r5, r1, 0x30 +/* 8023809C 00234FFC 4B FF FC 51 */ bl SpacingSort__10CTeamAiMgrFR13CStateManagerRC9CVector3f +/* 802380A0 00235000 48 00 00 90 */ b lbl_80238130 +lbl_802380A4: +/* 802380A4 00235004 83 FD 00 64 */ lwz r31, 0x64(r29) +/* 802380A8 00235008 48 00 00 70 */ b lbl_80238118 +lbl_802380AC: +/* 802380AC 0023500C A0 1F 00 00 */ lhz r0, 0(r31) +/* 802380B0 00235010 7F C3 F3 78 */ mr r3, r30 +/* 802380B4 00235014 38 81 00 0C */ addi r4, r1, 0xc +/* 802380B8 00235018 B0 01 00 08 */ sth r0, 8(r1) +/* 802380BC 0023501C B0 01 00 0C */ sth r0, 0xc(r1) +/* 802380C0 00235020 4B E1 44 B5 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 802380C4 00235024 7C 64 1B 78 */ mr r4, r3 +/* 802380C8 00235028 38 61 00 10 */ addi r3, r1, 0x10 +/* 802380CC 0023502C 4B E7 49 91 */ bl "__ct__16TCastToPtr<3CAi>FP7CEntity" +/* 802380D0 00235030 80 83 00 04 */ lwz r4, 4(r3) +/* 802380D4 00235034 28 04 00 00 */ cmplwi r4, 0 +/* 802380D8 00235038 41 82 00 3C */ beq lbl_80238114 +/* 802380DC 0023503C 81 84 00 00 */ lwz r12, 0(r4) +/* 802380E0 00235040 7F C5 F3 78 */ mr r5, r30 +/* 802380E4 00235044 7F E6 FB 78 */ mr r6, r31 +/* 802380E8 00235048 38 61 00 18 */ addi r3, r1, 0x18 +/* 802380EC 0023504C 81 8C 00 A0 */ lwz r12, 0xa0(r12) +/* 802380F0 00235050 38 E1 00 30 */ addi r7, r1, 0x30 +/* 802380F4 00235054 7D 89 03 A6 */ mtctr r12 +/* 802380F8 00235058 4E 80 04 21 */ bctrl +/* 802380FC 0023505C C0 01 00 18 */ lfs f0, 0x18(r1) +/* 80238100 00235060 D0 1F 00 1C */ stfs f0, 0x1c(r31) +/* 80238104 00235064 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 80238108 00235068 D0 1F 00 20 */ stfs f0, 0x20(r31) +/* 8023810C 0023506C C0 01 00 20 */ lfs f0, 0x20(r1) +/* 80238110 00235070 D0 1F 00 24 */ stfs f0, 0x24(r31) +lbl_80238114: +/* 80238114 00235074 3B FF 00 28 */ addi r31, r31, 0x28 +lbl_80238118: +/* 80238118 00235078 80 1D 00 5C */ lwz r0, 0x5c(r29) +/* 8023811C 0023507C 80 7D 00 64 */ lwz r3, 0x64(r29) +/* 80238120 00235080 1C 00 00 28 */ mulli r0, r0, 0x28 +/* 80238124 00235084 7C 03 02 14 */ add r0, r3, r0 +/* 80238128 00235088 7C 1F 00 40 */ cmplw r31, r0 +/* 8023812C 0023508C 40 82 FF 80 */ bne lbl_802380AC +lbl_80238130: +/* 80238130 00235090 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80238134 00235094 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 80238138 00235098 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 8023813C 0023509C 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 80238140 002350A0 7C 08 03 A6 */ mtlr r0 +/* 80238144 002350A4 38 21 00 50 */ addi r1, r1, 0x50 +/* 80238148 002350A8 4E 80 00 20 */ blr + +.global AssignRoles__10CTeamAiMgrFQ211CTeamAiRole11ETeamAiRoleQ211CTeamAiRole11ETeamAiRole +AssignRoles__10CTeamAiMgrFQ211CTeamAiRole11ETeamAiRoleQ211CTeamAiRole11ETeamAiRole: +/* 8023814C 002350AC 28 05 00 00 */ cmplwi r5, 0 +/* 80238150 002350B0 4D 82 00 20 */ beqlr +/* 80238154 002350B4 80 E3 00 64 */ lwz r7, 0x64(r3) +/* 80238158 002350B8 39 00 00 00 */ li r8, 0 +/* 8023815C 002350BC 48 00 00 5C */ b lbl_802381B8 +lbl_80238160: +/* 80238160 002350C0 80 07 00 10 */ lwz r0, 0x10(r7) +/* 80238164 002350C4 2C 00 00 00 */ cmpwi r0, 0 +/* 80238168 002350C8 40 82 00 4C */ bne lbl_802381B4 +/* 8023816C 002350CC 80 07 00 04 */ lwz r0, 4(r7) +/* 80238170 002350D0 38 C0 00 00 */ li r6, 0 +/* 80238174 002350D4 7C 00 20 00 */ cmpw r0, r4 +/* 80238178 002350D8 41 82 00 1C */ beq lbl_80238194 +/* 8023817C 002350DC 80 07 00 08 */ lwz r0, 8(r7) +/* 80238180 002350E0 7C 00 20 00 */ cmpw r0, r4 +/* 80238184 002350E4 41 82 00 10 */ beq lbl_80238194 +/* 80238188 002350E8 80 07 00 0C */ lwz r0, 0xc(r7) +/* 8023818C 002350EC 7C 00 20 00 */ cmpw r0, r4 +/* 80238190 002350F0 40 82 00 08 */ bne lbl_80238198 +lbl_80238194: +/* 80238194 002350F4 38 C0 00 01 */ li r6, 1 +lbl_80238198: +/* 80238198 002350F8 54 C0 06 3F */ clrlwi. r0, r6, 0x18 +/* 8023819C 002350FC 41 82 00 18 */ beq lbl_802381B4 +/* 802381A0 00235100 90 87 00 10 */ stw r4, 0x10(r7) +/* 802381A4 00235104 91 07 00 14 */ stw r8, 0x14(r7) +/* 802381A8 00235108 39 08 00 01 */ addi r8, r8, 1 +/* 802381AC 0023510C 7C 08 28 40 */ cmplw r8, r5 +/* 802381B0 00235110 4D 82 00 20 */ beqlr +lbl_802381B4: +/* 802381B4 00235114 38 E7 00 28 */ addi r7, r7, 0x28 +lbl_802381B8: +/* 802381B8 00235118 80 03 00 5C */ lwz r0, 0x5c(r3) +/* 802381BC 0023511C 80 C3 00 64 */ lwz r6, 0x64(r3) +/* 802381C0 00235120 1C 00 00 28 */ mulli r0, r0, 0x28 +/* 802381C4 00235124 7C 06 02 14 */ add r0, r6, r0 +/* 802381C8 00235128 7C 07 00 40 */ cmplw r7, r0 +/* 802381CC 0023512C 40 82 FF 94 */ bne lbl_80238160 + +.global sub_802381d0 +sub_802381d0: +/* 802381D0 00235130 4E 80 00 20 */ blr + +.global ResetRoles__10CTeamAiMgrFR13CStateManager +ResetRoles__10CTeamAiMgrFR13CStateManager: +/* 802381D4 00235134 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 802381D8 00235138 7C 08 02 A6 */ mflr r0 +/* 802381DC 0023513C 90 01 00 24 */ stw r0, 0x24(r1) +/* 802381E0 00235140 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 802381E4 00235144 3B E0 00 00 */ li r31, 0 +/* 802381E8 00235148 93 C1 00 18 */ stw r30, 0x18(r1) +/* 802381EC 0023514C 93 A1 00 14 */ stw r29, 0x14(r1) +/* 802381F0 00235150 7C 9D 23 78 */ mr r29, r4 +/* 802381F4 00235154 93 81 00 10 */ stw r28, 0x10(r1) +/* 802381F8 00235158 7C 7C 1B 78 */ mr r28, r3 +/* 802381FC 0023515C 83 C3 00 64 */ lwz r30, 0x64(r3) +/* 80238200 00235160 48 00 00 48 */ b lbl_80238248 +lbl_80238204: +/* 80238204 00235164 93 FE 00 10 */ stw r31, 0x10(r30) +/* 80238208 00235168 7F A3 EB 78 */ mr r3, r29 +/* 8023820C 0023516C 38 81 00 0C */ addi r4, r1, 0xc +/* 80238210 00235170 93 FE 00 14 */ stw r31, 0x14(r30) +/* 80238214 00235174 A0 1E 00 00 */ lhz r0, 0(r30) +/* 80238218 00235178 B0 01 00 08 */ sth r0, 8(r1) +/* 8023821C 0023517C B0 01 00 0C */ sth r0, 0xc(r1) +/* 80238220 00235180 4B E1 43 85 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80238224 00235184 28 03 00 00 */ cmplwi r3, 0 +/* 80238228 00235188 41 82 00 1C */ beq lbl_80238244 +/* 8023822C 0023518C C0 43 00 60 */ lfs f2, 0x60(r3) +/* 80238230 00235190 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 80238234 00235194 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 80238238 00235198 D0 1E 00 1C */ stfs f0, 0x1c(r30) +/* 8023823C 0023519C D0 3E 00 20 */ stfs f1, 0x20(r30) +/* 80238240 002351A0 D0 5E 00 24 */ stfs f2, 0x24(r30) +lbl_80238244: +/* 80238244 002351A4 3B DE 00 28 */ addi r30, r30, 0x28 +lbl_80238248: +/* 80238248 002351A8 80 1C 00 5C */ lwz r0, 0x5c(r28) +/* 8023824C 002351AC 80 7C 00 64 */ lwz r3, 0x64(r28) +/* 80238250 002351B0 1C 00 00 28 */ mulli r0, r0, 0x28 +/* 80238254 002351B4 7C 03 02 14 */ add r0, r3, r0 +/* 80238258 002351B8 7C 1E 00 40 */ cmplw r30, r0 +/* 8023825C 002351BC 40 82 FF A8 */ bne lbl_80238204 +/* 80238260 002351C0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80238264 002351C4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80238268 002351C8 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8023826C 002351CC 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80238270 002351D0 83 81 00 10 */ lwz r28, 0x10(r1) +/* 80238274 002351D4 7C 08 03 A6 */ mtlr r0 +/* 80238278 002351D8 38 21 00 20 */ addi r1, r1, 0x20 +/* 8023827C 002351DC 4E 80 00 20 */ blr + +.global UpdateRoles__10CTeamAiMgrFR13CStateManager +UpdateRoles__10CTeamAiMgrFR13CStateManager: +/* 80238280 002351E0 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 80238284 002351E4 7C 08 02 A6 */ mflr r0 +/* 80238288 002351E8 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 8023828C 002351EC DB E1 00 A0 */ stfd f31, 0xa0(r1) +/* 80238290 002351F0 F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0 +/* 80238294 002351F4 DB C1 00 90 */ stfd f30, 0x90(r1) +/* 80238298 002351F8 F3 C1 00 98 */ psq_st f30, 152(r1), 0, qr0 +/* 8023829C 002351FC DB A1 00 80 */ stfd f29, 0x80(r1) +/* 802382A0 00235200 F3 A1 00 88 */ psq_st f29, 136(r1), 0, qr0 +/* 802382A4 00235204 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 802382A8 00235208 93 C1 00 78 */ stw r30, 0x78(r1) +/* 802382AC 0023520C 7C 7F 1B 78 */ mr r31, r3 +/* 802382B0 00235210 7C 9E 23 78 */ mr r30, r4 +/* 802382B4 00235214 4B FF FF 21 */ bl ResetRoles__10CTeamAiMgrFR13CStateManager +/* 802382B8 00235218 80 9E 08 4C */ lwz r4, 0x84c(r30) +/* 802382BC 0023521C 7F C5 F3 78 */ mr r5, r30 +/* 802382C0 00235220 38 61 00 68 */ addi r3, r1, 0x68 +/* 802382C4 00235224 C0 22 B7 64 */ lfs f1, lbl_805AD484@sda21(r2) +/* 802382C8 00235228 81 84 00 00 */ lwz r12, 0(r4) +/* 802382CC 0023522C 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 802382D0 00235230 7D 89 03 A6 */ mtctr r12 +/* 802382D4 00235234 4E 80 04 21 */ bctrl +/* 802382D8 00235238 C3 A1 00 68 */ lfs f29, 0x68(r1) +/* 802382DC 0023523C 39 00 00 01 */ li r8, 1 +/* 802382E0 00235240 C3 E1 00 6C */ lfs f31, 0x6c(r1) +/* 802382E4 00235244 38 61 00 24 */ addi r3, r1, 0x24 +/* 802382E8 00235248 C3 C1 00 70 */ lfs f30, 0x70(r1) +/* 802382EC 0023524C 38 81 00 1C */ addi r4, r1, 0x1c +/* 802382F0 00235250 D3 A1 00 48 */ stfs f29, 0x48(r1) +/* 802382F4 00235254 38 A1 00 58 */ addi r5, r1, 0x58 +/* 802382F8 00235258 D3 E1 00 4C */ stfs f31, 0x4c(r1) +/* 802382FC 0023525C 80 E1 00 48 */ lwz r7, 0x48(r1) +/* 80238300 00235260 D3 C1 00 50 */ stfs f30, 0x50(r1) +/* 80238304 00235264 80 C1 00 4C */ lwz r6, 0x4c(r1) +/* 80238308 00235268 80 01 00 50 */ lwz r0, 0x50(r1) +/* 8023830C 0023526C 90 E1 00 58 */ stw r7, 0x58(r1) +/* 80238310 00235270 90 C1 00 5C */ stw r6, 0x5c(r1) +/* 80238314 00235274 90 01 00 60 */ stw r0, 0x60(r1) +/* 80238318 00235278 91 01 00 64 */ stw r8, 0x64(r1) +/* 8023831C 0023527C 80 1F 00 5C */ lwz r0, 0x5c(r31) +/* 80238320 00235280 80 DF 00 64 */ lwz r6, 0x64(r31) +/* 80238324 00235284 1C 00 00 28 */ mulli r0, r0, 0x28 +/* 80238328 00235288 91 01 00 54 */ stw r8, 0x54(r1) +/* 8023832C 0023528C 7C C6 02 14 */ add r6, r6, r0 +/* 80238330 00235290 90 C1 00 1C */ stw r6, 0x1c(r1) +/* 80238334 00235294 80 1F 00 64 */ lwz r0, 0x64(r31) +/* 80238338 00235298 90 C1 00 18 */ stw r6, 0x18(r1) +/* 8023833C 0023529C 90 01 00 20 */ stw r0, 0x20(r1) +/* 80238340 002352A0 90 01 00 24 */ stw r0, 0x24(r1) +/* 80238344 002352A4 48 00 22 89 */ bl "sort_with_custom_comparator>" +/* 80238348 002352A8 80 BF 00 38 */ lwz r5, 0x38(r31) +/* 8023834C 002352AC 7F E3 FB 78 */ mr r3, r31 +/* 80238350 002352B0 38 80 00 01 */ li r4, 1 +/* 80238354 002352B4 4B FF FD F9 */ bl AssignRoles__10CTeamAiMgrFQ211CTeamAiRole11ETeamAiRoleQ211CTeamAiRole11ETeamAiRole +/* 80238358 002352B8 80 BF 00 3C */ lwz r5, 0x3c(r31) +/* 8023835C 002352BC 7F E3 FB 78 */ mr r3, r31 +/* 80238360 002352C0 38 80 00 02 */ li r4, 2 +/* 80238364 002352C4 4B FF FD E9 */ bl AssignRoles__10CTeamAiMgrFQ211CTeamAiRole11ETeamAiRoleQ211CTeamAiRole11ETeamAiRole +/* 80238368 002352C8 80 BF 00 40 */ lwz r5, 0x40(r31) +/* 8023836C 002352CC 7F E3 FB 78 */ mr r3, r31 +/* 80238370 002352D0 38 80 00 03 */ li r4, 3 +/* 80238374 002352D4 4B FF FD D9 */ bl AssignRoles__10CTeamAiMgrFQ211CTeamAiRole11ETeamAiRoleQ211CTeamAiRole11ETeamAiRole +/* 80238378 002352D8 80 BF 00 64 */ lwz r5, 0x64(r31) +/* 8023837C 002352DC 38 80 00 04 */ li r4, 4 +/* 80238380 002352E0 48 00 00 34 */ b lbl_802383B4 +lbl_80238384: +/* 80238384 002352E4 80 65 00 10 */ lwz r3, 0x10(r5) +/* 80238388 002352E8 38 00 00 00 */ li r0, 0 +/* 8023838C 002352EC 2C 03 00 00 */ cmpwi r3, 0 +/* 80238390 002352F0 41 82 00 14 */ beq lbl_802383A4 +/* 80238394 002352F4 41 80 00 10 */ blt lbl_802383A4 +/* 80238398 002352F8 2C 03 00 04 */ cmpwi r3, 4 +/* 8023839C 002352FC 41 81 00 08 */ bgt lbl_802383A4 +/* 802383A0 00235300 38 00 00 01 */ li r0, 1 +lbl_802383A4: +/* 802383A4 00235304 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 802383A8 00235308 40 82 00 08 */ bne lbl_802383B0 +/* 802383AC 0023530C 90 85 00 10 */ stw r4, 0x10(r5) +lbl_802383B0: +/* 802383B0 00235310 38 A5 00 28 */ addi r5, r5, 0x28 +lbl_802383B4: +/* 802383B4 00235314 80 1F 00 5C */ lwz r0, 0x5c(r31) +/* 802383B8 00235318 80 7F 00 64 */ lwz r3, 0x64(r31) +/* 802383BC 0023531C 1C 00 00 28 */ mulli r0, r0, 0x28 +/* 802383C0 00235320 7D 23 02 14 */ add r9, r3, r0 +/* 802383C4 00235324 7C 05 48 40 */ cmplw r5, r9 +/* 802383C8 00235328 40 82 FF BC */ bne lbl_80238384 +/* 802383CC 0023532C D3 A1 00 28 */ stfs f29, 0x28(r1) +/* 802383D0 00235330 39 00 00 00 */ li r8, 0 +/* 802383D4 00235334 38 61 00 14 */ addi r3, r1, 0x14 +/* 802383D8 00235338 38 81 00 0C */ addi r4, r1, 0xc +/* 802383DC 0023533C D3 E1 00 2C */ stfs f31, 0x2c(r1) +/* 802383E0 00235340 38 A1 00 38 */ addi r5, r1, 0x38 +/* 802383E4 00235344 80 E1 00 28 */ lwz r7, 0x28(r1) +/* 802383E8 00235348 D3 C1 00 30 */ stfs f30, 0x30(r1) +/* 802383EC 0023534C 80 C1 00 2C */ lwz r6, 0x2c(r1) +/* 802383F0 00235350 80 01 00 30 */ lwz r0, 0x30(r1) +/* 802383F4 00235354 90 E1 00 38 */ stw r7, 0x38(r1) +/* 802383F8 00235358 90 C1 00 3C */ stw r6, 0x3c(r1) +/* 802383FC 0023535C 90 01 00 40 */ stw r0, 0x40(r1) +/* 80238400 00235360 91 01 00 44 */ stw r8, 0x44(r1) +/* 80238404 00235364 91 21 00 0C */ stw r9, 0xc(r1) +/* 80238408 00235368 80 1F 00 64 */ lwz r0, 0x64(r31) +/* 8023840C 0023536C 91 01 00 34 */ stw r8, 0x34(r1) +/* 80238410 00235370 91 21 00 08 */ stw r9, 8(r1) +/* 80238414 00235374 90 01 00 10 */ stw r0, 0x10(r1) +/* 80238418 00235378 90 01 00 14 */ stw r0, 0x14(r1) +/* 8023841C 0023537C 48 00 21 B1 */ bl "sort_with_custom_comparator>" +/* 80238420 00235380 C0 02 B7 64 */ lfs f0, lbl_805AD484@sda21(r2) +/* 80238424 00235384 D0 1F 00 88 */ stfs f0, 0x88(r31) +/* 80238428 00235388 E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0 +/* 8023842C 0023538C CB E1 00 A0 */ lfd f31, 0xa0(r1) +/* 80238430 00235390 E3 C1 00 98 */ psq_l f30, 152(r1), 0, qr0 +/* 80238434 00235394 CB C1 00 90 */ lfd f30, 0x90(r1) +/* 80238438 00235398 E3 A1 00 88 */ psq_l f29, 136(r1), 0, qr0 +/* 8023843C 0023539C CB A1 00 80 */ lfd f29, 0x80(r1) +/* 80238440 002353A0 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 80238444 002353A4 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 80238448 002353A8 83 C1 00 78 */ lwz r30, 0x78(r1) +/* 8023844C 002353AC 7C 08 03 A6 */ mtlr r0 +/* 80238450 002353B0 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 80238454 002353B4 4E 80 00 20 */ blr + +.global ShouldUpdateRoles__10CTeamAiMgrFf +ShouldUpdateRoles__10CTeamAiMgrFf: +/* 80238458 002353B8 80 03 00 5C */ lwz r0, 0x5c(r3) +/* 8023845C 002353BC 2C 00 00 00 */ cmpwi r0, 0 +/* 80238460 002353C0 40 81 00 7C */ ble lbl_802384DC +/* 80238464 002353C4 C0 43 00 88 */ lfs f2, 0x88(r3) +/* 80238468 002353C8 C0 02 B7 60 */ lfs f0, lbl_805AD480@sda21(r2) +/* 8023846C 002353CC EC 22 08 2A */ fadds f1, f2, f1 +/* 80238470 002353D0 D0 23 00 88 */ stfs f1, 0x88(r3) +/* 80238474 002353D4 C0 23 00 88 */ lfs f1, 0x88(r3) +/* 80238478 002353D8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8023847C 002353DC 4C 41 13 82 */ cror 2, 1, 2 +/* 80238480 002353E0 40 82 00 0C */ bne lbl_8023848C +/* 80238484 002353E4 38 60 00 01 */ li r3, 1 +/* 80238488 002353E8 4E 80 00 20 */ blr +lbl_8023848C: +/* 8023848C 002353EC 80 03 00 5C */ lwz r0, 0x5c(r3) +/* 80238490 002353F0 80 83 00 64 */ lwz r4, 0x64(r3) +/* 80238494 002353F4 1C 00 00 28 */ mulli r0, r0, 0x28 +/* 80238498 002353F8 7C 64 02 14 */ add r3, r4, r0 +/* 8023849C 002353FC 48 00 00 38 */ b lbl_802384D4 +lbl_802384A0: +/* 802384A0 00235400 80 A4 00 10 */ lwz r5, 0x10(r4) +/* 802384A4 00235404 38 00 00 00 */ li r0, 0 +/* 802384A8 00235408 2C 05 00 00 */ cmpwi r5, 0 +/* 802384AC 0023540C 41 82 00 14 */ beq lbl_802384C0 +/* 802384B0 00235410 41 80 00 10 */ blt lbl_802384C0 +/* 802384B4 00235414 2C 05 00 04 */ cmpwi r5, 4 +/* 802384B8 00235418 41 81 00 08 */ bgt lbl_802384C0 +/* 802384BC 0023541C 38 00 00 01 */ li r0, 1 +lbl_802384C0: +/* 802384C0 00235420 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 802384C4 00235424 40 82 00 0C */ bne lbl_802384D0 +/* 802384C8 00235428 38 60 00 01 */ li r3, 1 +/* 802384CC 0023542C 4E 80 00 20 */ blr +lbl_802384D0: +/* 802384D0 00235430 38 84 00 28 */ addi r4, r4, 0x28 +lbl_802384D4: +/* 802384D4 00235434 7C 04 18 40 */ cmplw r4, r3 +/* 802384D8 00235438 40 82 FF C8 */ bne lbl_802384A0 +lbl_802384DC: +/* 802384DC 0023543C 38 60 00 00 */ li r3, 0 +/* 802384E0 00235440 4E 80 00 20 */ blr + +.global RemoveProjectileAttacker__10CTeamAiMgrF9TUniqueId +RemoveProjectileAttacker__10CTeamAiMgrF9TUniqueId: +/* 802384E4 00235444 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 802384E8 00235448 7C 08 02 A6 */ mflr r0 +/* 802384EC 0023544C 90 01 00 44 */ stw r0, 0x44(r1) +/* 802384F0 00235450 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 802384F4 00235454 7C 7F 1B 78 */ mr r31, r3 +/* 802384F8 00235458 93 C1 00 38 */ stw r30, 0x38(r1) +/* 802384FC 0023545C 7C 9E 23 78 */ mr r30, r4 +/* 80238500 00235460 7F C6 F3 78 */ mr r6, r30 +/* 80238504 00235464 38 81 00 10 */ addi r4, r1, 0x10 +/* 80238508 00235468 80 03 00 7C */ lwz r0, 0x7c(r3) +/* 8023850C 0023546C 80 A3 00 84 */ lwz r5, 0x84(r3) +/* 80238510 00235470 38 61 00 0C */ addi r3, r1, 0xc +/* 80238514 00235474 54 00 08 3C */ slwi r0, r0, 1 +/* 80238518 00235478 7C E5 02 14 */ add r7, r5, r0 +/* 8023851C 0023547C 38 A1 00 14 */ addi r5, r1, 0x14 +/* 80238520 00235480 90 E1 00 24 */ stw r7, 0x24(r1) +/* 80238524 00235484 80 1F 00 84 */ lwz r0, 0x84(r31) +/* 80238528 00235488 90 E1 00 20 */ stw r7, 0x20(r1) +/* 8023852C 0023548C 90 01 00 28 */ stw r0, 0x28(r1) +/* 80238530 00235490 90 E1 00 14 */ stw r7, 0x14(r1) +/* 80238534 00235494 90 01 00 10 */ stw r0, 0x10(r1) +/* 80238538 00235498 48 00 26 79 */ bl "lower_bound>" +/* 8023853C 0023549C 80 A1 00 0C */ lwz r5, 0xc(r1) +/* 80238540 002354A0 38 80 00 00 */ li r4, 0 +/* 80238544 002354A4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80238548 002354A8 90 A1 00 08 */ stw r5, 8(r1) +/* 8023854C 002354AC 7C 05 00 40 */ cmplw r5, r0 +/* 80238550 002354B0 41 82 00 18 */ beq lbl_80238568 +/* 80238554 002354B4 A0 7E 00 00 */ lhz r3, 0(r30) +/* 80238558 002354B8 A0 05 00 00 */ lhz r0, 0(r5) +/* 8023855C 002354BC 7C 03 00 40 */ cmplw r3, r0 +/* 80238560 002354C0 41 80 00 08 */ blt lbl_80238568 +/* 80238564 002354C4 38 80 00 01 */ li r4, 1 +lbl_80238568: +/* 80238568 002354C8 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 8023856C 002354CC 38 81 00 24 */ addi r4, r1, 0x24 +/* 80238570 002354D0 41 82 00 08 */ beq lbl_80238578 +/* 80238574 002354D4 38 81 00 08 */ addi r4, r1, 8 +lbl_80238578: +/* 80238578 002354D8 80 1F 00 7C */ lwz r0, 0x7c(r31) +/* 8023857C 002354DC 80 7F 00 84 */ lwz r3, 0x84(r31) +/* 80238580 002354E0 54 00 08 3C */ slwi r0, r0, 1 +/* 80238584 002354E4 80 84 00 00 */ lwz r4, 0(r4) +/* 80238588 002354E8 7C 03 02 14 */ add r0, r3, r0 +/* 8023858C 002354EC 7C 04 00 40 */ cmplw r4, r0 +/* 80238590 002354F0 90 81 00 2C */ stw r4, 0x2c(r1) +/* 80238594 002354F4 41 82 00 18 */ beq lbl_802385AC +/* 80238598 002354F8 90 81 00 18 */ stw r4, 0x18(r1) +/* 8023859C 002354FC 38 61 00 1C */ addi r3, r1, 0x1c +/* 802385A0 00235500 38 9F 00 78 */ addi r4, r31, 0x78 +/* 802385A4 00235504 38 A1 00 18 */ addi r5, r1, 0x18 +/* 802385A8 00235508 4B DD 2C B1 */ bl "find,Q24rstl17rmemory_allocator>,9TUniqueId>__4rstlFQ24rstl110pointer_iterator<9TUniqueId,Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Q24rstl110pointer_iterator<9TUniqueId,Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>RC9TUniqueId" +lbl_802385AC: +/* 802385AC 0023550C 80 01 00 44 */ lwz r0, 0x44(r1) +/* 802385B0 00235510 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 802385B4 00235514 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 802385B8 00235518 7C 08 03 A6 */ mtlr r0 +/* 802385BC 0023551C 38 21 00 40 */ addi r1, r1, 0x40 +/* 802385C0 00235520 4E 80 00 20 */ blr + +.global AddProjectileAttacker__10CTeamAiMgrF9TUniqueId +AddProjectileAttacker__10CTeamAiMgrF9TUniqueId: +/* 802385C4 00235524 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 802385C8 00235528 7C 08 02 A6 */ mflr r0 +/* 802385CC 0023552C 90 01 00 54 */ stw r0, 0x54(r1) +/* 802385D0 00235530 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 802385D4 00235534 7C 9F 23 78 */ mr r31, r4 +/* 802385D8 00235538 93 C1 00 48 */ stw r30, 0x48(r1) +/* 802385DC 0023553C 7C 7E 1B 78 */ mr r30, r3 +/* 802385E0 00235540 C0 23 00 94 */ lfs f1, 0x94(r3) +/* 802385E4 00235544 C0 03 00 54 */ lfs f0, 0x54(r3) +/* 802385E8 00235548 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802385EC 0023554C 4C 41 13 82 */ cror 2, 1, 2 +/* 802385F0 00235550 40 82 01 34 */ bne lbl_80238724 +/* 802385F4 00235554 80 9E 00 7C */ lwz r4, 0x7c(r30) +/* 802385F8 00235558 80 1E 00 48 */ lwz r0, 0x48(r30) +/* 802385FC 0023555C 7C 04 00 40 */ cmplw r4, r0 +/* 80238600 00235560 40 80 01 24 */ bge lbl_80238724 +/* 80238604 00235564 A0 1F 00 00 */ lhz r0, 0(r31) +/* 80238608 00235568 38 81 00 08 */ addi r4, r1, 8 +/* 8023860C 0023556C B0 01 00 08 */ sth r0, 8(r1) +/* 80238610 00235570 48 00 0A F5 */ bl HasTeamAiRole__10CTeamAiMgrCF9TUniqueId +/* 80238614 00235574 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80238618 00235578 41 82 01 0C */ beq lbl_80238724 +/* 8023861C 0023557C 80 1E 00 7C */ lwz r0, 0x7c(r30) +/* 80238620 00235580 7F E6 FB 78 */ mr r6, r31 +/* 80238624 00235584 80 BE 00 84 */ lwz r5, 0x84(r30) +/* 80238628 00235588 38 61 00 10 */ addi r3, r1, 0x10 +/* 8023862C 0023558C 54 00 08 3C */ slwi r0, r0, 1 +/* 80238630 00235590 38 81 00 14 */ addi r4, r1, 0x14 +/* 80238634 00235594 7C E5 02 14 */ add r7, r5, r0 +/* 80238638 00235598 38 A1 00 18 */ addi r5, r1, 0x18 +/* 8023863C 0023559C 90 E1 00 3C */ stw r7, 0x3c(r1) +/* 80238640 002355A0 80 1E 00 84 */ lwz r0, 0x84(r30) +/* 80238644 002355A4 90 E1 00 38 */ stw r7, 0x38(r1) +/* 80238648 002355A8 90 01 00 40 */ stw r0, 0x40(r1) +/* 8023864C 002355AC 90 E1 00 18 */ stw r7, 0x18(r1) +/* 80238650 002355B0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80238654 002355B4 48 00 25 5D */ bl "lower_bound>" +/* 80238658 002355B8 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 8023865C 002355BC 38 80 00 00 */ li r4, 0 +/* 80238660 002355C0 80 01 00 3C */ lwz r0, 0x3c(r1) +/* 80238664 002355C4 90 A1 00 0C */ stw r5, 0xc(r1) +/* 80238668 002355C8 7C 05 00 40 */ cmplw r5, r0 +/* 8023866C 002355CC 41 82 00 18 */ beq lbl_80238684 +/* 80238670 002355D0 A0 7F 00 00 */ lhz r3, 0(r31) +/* 80238674 002355D4 A0 05 00 00 */ lhz r0, 0(r5) +/* 80238678 002355D8 7C 03 00 40 */ cmplw r3, r0 +/* 8023867C 002355DC 41 80 00 08 */ blt lbl_80238684 +/* 80238680 002355E0 38 80 00 01 */ li r4, 1 +lbl_80238684: +/* 80238684 002355E4 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 80238688 002355E8 38 A1 00 3C */ addi r5, r1, 0x3c +/* 8023868C 002355EC 41 82 00 08 */ beq lbl_80238694 +/* 80238690 002355F0 38 A1 00 0C */ addi r5, r1, 0xc +lbl_80238694: +/* 80238694 002355F4 80 DE 00 7C */ lwz r6, 0x7c(r30) +/* 80238698 002355F8 80 9E 00 84 */ lwz r4, 0x84(r30) +/* 8023869C 002355FC 54 C3 08 3C */ slwi r3, r6, 1 +/* 802386A0 00235600 80 05 00 00 */ lwz r0, 0(r5) +/* 802386A4 00235604 7C 64 1A 14 */ add r3, r4, r3 +/* 802386A8 00235608 7C 00 18 40 */ cmplw r0, r3 +/* 802386AC 0023560C 40 82 00 70 */ bne lbl_8023871C +/* 802386B0 00235610 38 7E 00 78 */ addi r3, r30, 0x78 +/* 802386B4 00235614 38 86 00 01 */ addi r4, r6, 1 +/* 802386B8 00235618 4B DD 3D 51 */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" +/* 802386BC 0023561C 80 1E 00 7C */ lwz r0, 0x7c(r30) +/* 802386C0 00235620 7F E6 FB 78 */ mr r6, r31 +/* 802386C4 00235624 80 BE 00 84 */ lwz r5, 0x84(r30) +/* 802386C8 00235628 38 61 00 34 */ addi r3, r1, 0x34 +/* 802386CC 0023562C 54 00 08 3C */ slwi r0, r0, 1 +/* 802386D0 00235630 38 81 00 30 */ addi r4, r1, 0x30 +/* 802386D4 00235634 7C E5 02 14 */ add r7, r5, r0 +/* 802386D8 00235638 38 A1 00 28 */ addi r5, r1, 0x28 +/* 802386DC 0023563C 90 E1 00 28 */ stw r7, 0x28(r1) +/* 802386E0 00235640 80 1E 00 84 */ lwz r0, 0x84(r30) +/* 802386E4 00235644 90 E1 00 24 */ stw r7, 0x24(r1) +/* 802386E8 00235648 90 01 00 2C */ stw r0, 0x2c(r1) +/* 802386EC 0023564C 90 01 00 30 */ stw r0, 0x30(r1) +/* 802386F0 00235650 48 00 24 C1 */ bl "lower_bound>" +/* 802386F4 00235654 80 01 00 34 */ lwz r0, 0x34(r1) +/* 802386F8 00235658 7F E6 FB 78 */ mr r6, r31 +/* 802386FC 0023565C 38 61 00 20 */ addi r3, r1, 0x20 +/* 80238700 00235660 38 9E 00 78 */ addi r4, r30, 0x78 +/* 80238704 00235664 90 01 00 44 */ stw r0, 0x44(r1) +/* 80238708 00235668 38 A1 00 1C */ addi r5, r1, 0x1c +/* 8023870C 0023566C 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80238710 00235670 48 00 00 31 */ bl sub_80238740 +/* 80238714 00235674 C0 02 B7 64 */ lfs f0, lbl_805AD484@sda21(r2) +/* 80238718 00235678 D0 1E 00 94 */ stfs f0, 0x94(r30) +lbl_8023871C: +/* 8023871C 0023567C 38 60 00 01 */ li r3, 1 +/* 80238720 00235680 48 00 00 08 */ b lbl_80238728 +lbl_80238724: +/* 80238724 00235684 38 60 00 00 */ li r3, 0 +lbl_80238728: +/* 80238728 00235688 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8023872C 0023568C 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 80238730 00235690 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 80238734 00235694 7C 08 03 A6 */ mtlr r0 +/* 80238738 00235698 38 21 00 50 */ addi r1, r1, 0x50 +/* 8023873C 0023569C 4E 80 00 20 */ blr + +.global sub_80238740 +sub_80238740: +/* 80238740 002356A0 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80238744 002356A4 7C 08 02 A6 */ mflr r0 +/* 80238748 002356A8 90 01 00 34 */ stw r0, 0x34(r1) +/* 8023874C 002356AC 38 00 00 00 */ li r0, 0 +/* 80238750 002356B0 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80238754 002356B4 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80238758 002356B8 7C 9E 23 78 */ mr r30, r4 +/* 8023875C 002356BC 93 A1 00 24 */ stw r29, 0x24(r1) +/* 80238760 002356C0 7C 7D 1B 78 */ mr r29, r3 +/* 80238764 002356C4 7F C3 F3 78 */ mr r3, r30 +/* 80238768 002356C8 80 84 00 0C */ lwz r4, 0xc(r4) +/* 8023876C 002356CC 80 E5 00 00 */ lwz r7, 0(r5) +/* 80238770 002356D0 90 C1 00 14 */ stw r6, 0x14(r1) +/* 80238774 002356D4 7C A4 38 50 */ subf r5, r4, r7 +/* 80238778 002356D8 54 A4 0F FE */ srwi r4, r5, 0x1f +/* 8023877C 002356DC 90 C1 00 0C */ stw r6, 0xc(r1) +/* 80238780 002356E0 7C A4 2A 14 */ add r5, r4, r5 +/* 80238784 002356E4 38 C1 00 0C */ addi r6, r1, 0xc +/* 80238788 002356E8 7C BF 0E 70 */ srawi r31, r5, 1 +/* 8023878C 002356EC 90 01 00 18 */ stw r0, 0x18(r1) +/* 80238790 002356F0 38 81 00 08 */ addi r4, r1, 8 +/* 80238794 002356F4 38 A0 00 01 */ li r5, 1 +/* 80238798 002356F8 90 01 00 10 */ stw r0, 0x10(r1) +/* 8023879C 002356FC 90 E1 00 08 */ stw r7, 8(r1) +/* 802387A0 00235700 48 00 00 31 */ bl sub_802387d0 +/* 802387A4 00235704 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 802387A8 00235708 57 E0 08 3C */ slwi r0, r31, 1 +/* 802387AC 0023570C 7C 63 02 14 */ add r3, r3, r0 +/* 802387B0 00235710 90 7D 00 00 */ stw r3, 0(r29) +/* 802387B4 00235714 80 01 00 34 */ lwz r0, 0x34(r1) +/* 802387B8 00235718 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 802387BC 0023571C 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 802387C0 00235720 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 802387C4 00235724 7C 08 03 A6 */ mtlr r0 +/* 802387C8 00235728 38 21 00 30 */ addi r1, r1, 0x30 +/* 802387CC 0023572C 4E 80 00 20 */ blr + +.global sub_802387d0 +sub_802387d0: +/* 802387D0 00235730 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 802387D4 00235734 7C 08 02 A6 */ mflr r0 +/* 802387D8 00235738 90 01 00 34 */ stw r0, 0x34(r1) +/* 802387DC 0023573C BF 21 00 14 */ stmw r25, 0x14(r1) +/* 802387E0 00235740 7C 7A 1B 78 */ mr r26, r3 +/* 802387E4 00235744 7C BB 2B 78 */ mr r27, r5 +/* 802387E8 00235748 7C 99 23 78 */ mr r25, r4 +/* 802387EC 0023574C 81 03 00 04 */ lwz r8, 4(r3) +/* 802387F0 00235750 80 63 00 08 */ lwz r3, 8(r3) +/* 802387F4 00235754 7C 88 DA 14 */ add r4, r8, r27 +/* 802387F8 00235758 80 FA 00 0C */ lwz r7, 0xc(r26) +/* 802387FC 0023575C 7C 04 18 00 */ cmpw r4, r3 +/* 80238800 00235760 83 C6 00 00 */ lwz r30, 0(r6) +/* 80238804 00235764 7C FD 3B 78 */ mr r29, r7 +/* 80238808 00235768 41 81 00 A0 */ bgt lbl_802388A8 +/* 8023880C 0023576C 80 19 00 00 */ lwz r0, 0(r25) +/* 80238810 00235770 57 64 08 3C */ slwi r4, r27, 1 +/* 80238814 00235774 7C 67 00 50 */ subf r3, r7, r0 +/* 80238818 00235778 54 60 0F FE */ srwi r0, r3, 0x1f +/* 8023881C 0023577C 7C 00 1A 14 */ add r0, r0, r3 +/* 80238820 00235780 7C 05 0E 70 */ srawi r5, r0, 1 +/* 80238824 00235784 7C 65 40 50 */ subf r3, r5, r8 +/* 80238828 00235788 35 03 FF FF */ addic. r8, r3, -1 +/* 8023882C 0023578C 54 A0 08 3C */ slwi r0, r5, 1 +/* 80238830 00235790 7C C7 02 14 */ add r6, r7, r0 +/* 80238834 00235794 55 03 08 3C */ slwi r3, r8, 1 +/* 80238838 00235798 38 08 00 01 */ addi r0, r8, 1 +/* 8023883C 0023579C 7C 84 1A 14 */ add r4, r4, r3 +/* 80238840 002357A0 7C 86 22 14 */ add r4, r6, r4 +/* 80238844 002357A4 7C 09 03 A6 */ mtctr r0 +/* 80238848 002357A8 41 80 00 2C */ blt lbl_80238874 +lbl_8023884C: +/* 8023884C 002357AC 28 04 00 00 */ cmplwi r4, 0 +/* 80238850 002357B0 7C 05 42 14 */ add r0, r5, r8 +/* 80238854 002357B4 80 7A 00 0C */ lwz r3, 0xc(r26) +/* 80238858 002357B8 54 00 08 3C */ slwi r0, r0, 1 +/* 8023885C 002357BC 41 82 00 0C */ beq lbl_80238868 +/* 80238860 002357C0 7C 03 02 2E */ lhzx r0, r3, r0 +/* 80238864 002357C4 B0 04 00 00 */ sth r0, 0(r4) +lbl_80238868: +/* 80238868 002357C8 38 84 FF FE */ addi r4, r4, -2 +/* 8023886C 002357CC 39 08 FF FF */ addi r8, r8, -1 +/* 80238870 002357D0 42 00 FF DC */ bdnz lbl_8023884C +lbl_80238874: +/* 80238874 002357D4 7F 69 03 A6 */ mtctr r27 +/* 80238878 002357D8 2C 1B 00 00 */ cmpwi r27, 0 +/* 8023887C 002357DC 40 81 00 1C */ ble lbl_80238898 +lbl_80238880: +/* 80238880 002357E0 28 06 00 00 */ cmplwi r6, 0 +/* 80238884 002357E4 41 82 00 0C */ beq lbl_80238890 +/* 80238888 002357E8 A0 1E 00 00 */ lhz r0, 0(r30) +/* 8023888C 002357EC B0 06 00 00 */ sth r0, 0(r6) +lbl_80238890: +/* 80238890 002357F0 38 C6 00 02 */ addi r6, r6, 2 +/* 80238894 002357F4 42 00 FF EC */ bdnz lbl_80238880 +lbl_80238898: +/* 80238898 002357F8 80 1A 00 04 */ lwz r0, 4(r26) +/* 8023889C 002357FC 7C 00 DA 14 */ add r0, r0, r27 +/* 802388A0 00235800 90 1A 00 04 */ stw r0, 4(r26) +/* 802388A4 00235804 48 00 01 4C */ b lbl_802389F0 +lbl_802388A8: +/* 802388A8 00235808 2C 03 00 00 */ cmpwi r3, 0 +/* 802388AC 0023580C 38 00 00 04 */ li r0, 4 +/* 802388B0 00235810 41 82 00 08 */ beq lbl_802388B8 +/* 802388B4 00235814 54 60 08 3C */ slwi r0, r3, 1 +lbl_802388B8: +/* 802388B8 00235818 7C 1C 03 78 */ mr r28, r0 +/* 802388BC 0023581C 48 00 00 08 */ b lbl_802388C4 +lbl_802388C0: +/* 802388C0 00235820 57 9C 08 3C */ slwi r28, r28, 1 +lbl_802388C4: +/* 802388C4 00235824 7C 1C 20 00 */ cmpw r28, r4 +/* 802388C8 00235828 41 80 FF F8 */ blt lbl_802388C0 +/* 802388CC 0023582C 57 83 08 3D */ rlwinm. r3, r28, 1, 0, 0x1e +/* 802388D0 00235830 40 82 00 0C */ bne lbl_802388DC +/* 802388D4 00235834 3B E0 00 00 */ li r31, 0 +/* 802388D8 00235838 48 00 00 18 */ b lbl_802388F0 +lbl_802388DC: +/* 802388DC 0023583C 3C 80 80 3D */ lis r4, lbl_803D4380@ha +/* 802388E0 00235840 38 A0 00 00 */ li r5, 0 +/* 802388E4 00235844 38 84 43 80 */ addi r4, r4, lbl_803D4380@l +/* 802388E8 00235848 48 0D CF 31 */ bl __nwa__FUlPCcPCc +/* 802388EC 0023584C 7C 7F 1B 78 */ mr r31, r3 +lbl_802388F0: +/* 802388F0 00235850 80 7A 00 0C */ lwz r3, 0xc(r26) +/* 802388F4 00235854 7F E6 FB 78 */ mr r6, r31 +/* 802388F8 00235858 80 19 00 00 */ lwz r0, 0(r25) +/* 802388FC 0023585C 38 E0 00 00 */ li r7, 0 +/* 80238900 00235860 38 A0 00 00 */ li r5, 0 +/* 80238904 00235864 7C 63 00 50 */ subf r3, r3, r0 +/* 80238908 00235868 54 60 0F FE */ srwi r0, r3, 0x1f +/* 8023890C 0023586C 7C 00 1A 14 */ add r0, r0, r3 +/* 80238910 00235870 7C 04 0E 71 */ srawi. r4, r0, 1 +/* 80238914 00235874 7C 89 03 A6 */ mtctr r4 +/* 80238918 00235878 40 81 00 28 */ ble lbl_80238940 +lbl_8023891C: +/* 8023891C 0023587C 28 06 00 00 */ cmplwi r6, 0 +/* 80238920 00235880 80 7A 00 0C */ lwz r3, 0xc(r26) +/* 80238924 00235884 41 82 00 0C */ beq lbl_80238930 +/* 80238928 00235888 7C 03 2A 2E */ lhzx r0, r3, r5 +/* 8023892C 0023588C B0 06 00 00 */ sth r0, 0(r6) +lbl_80238930: +/* 80238930 00235890 38 C6 00 02 */ addi r6, r6, 2 +/* 80238934 00235894 38 E7 00 01 */ addi r7, r7, 1 +/* 80238938 00235898 38 A5 00 02 */ addi r5, r5, 2 +/* 8023893C 0023589C 42 00 FF E0 */ bdnz lbl_8023891C +lbl_80238940: +/* 80238940 002358A0 54 E0 08 3C */ slwi r0, r7, 1 +/* 80238944 002358A4 7C 7F 02 14 */ add r3, r31, r0 +/* 80238948 002358A8 7F 69 03 A6 */ mtctr r27 +/* 8023894C 002358AC 2C 1B 00 00 */ cmpwi r27, 0 +/* 80238950 002358B0 40 81 00 20 */ ble lbl_80238970 +lbl_80238954: +/* 80238954 002358B4 28 03 00 00 */ cmplwi r3, 0 +/* 80238958 002358B8 41 82 00 0C */ beq lbl_80238964 +/* 8023895C 002358BC A0 1E 00 00 */ lhz r0, 0(r30) +/* 80238960 002358C0 B0 03 00 00 */ sth r0, 0(r3) +lbl_80238964: +/* 80238964 002358C4 38 63 00 02 */ addi r3, r3, 2 +/* 80238968 002358C8 38 E7 00 01 */ addi r7, r7, 1 +/* 8023896C 002358CC 42 00 FF E8 */ bdnz lbl_80238954 +lbl_80238970: +/* 80238970 002358D0 54 E0 08 3C */ slwi r0, r7, 1 +/* 80238974 002358D4 7C 86 23 78 */ mr r6, r4 +/* 80238978 002358D8 54 84 08 3C */ slwi r4, r4, 1 +/* 8023897C 002358DC 7C BF 02 14 */ add r5, r31, r0 +/* 80238980 002358E0 48 00 00 24 */ b lbl_802389A4 +lbl_80238984: +/* 80238984 002358E4 28 05 00 00 */ cmplwi r5, 0 +/* 80238988 002358E8 80 7A 00 0C */ lwz r3, 0xc(r26) +/* 8023898C 002358EC 41 82 00 0C */ beq lbl_80238998 +/* 80238990 002358F0 7C 03 22 2E */ lhzx r0, r3, r4 +/* 80238994 002358F4 B0 05 00 00 */ sth r0, 0(r5) +lbl_80238998: +/* 80238998 002358F8 38 A5 00 02 */ addi r5, r5, 2 +/* 8023899C 002358FC 38 84 00 02 */ addi r4, r4, 2 +/* 802389A0 00235900 38 C6 00 01 */ addi r6, r6, 1 +lbl_802389A4: +/* 802389A4 00235904 80 1A 00 04 */ lwz r0, 4(r26) +/* 802389A8 00235908 7C 06 00 00 */ cmpw r6, r0 +/* 802389AC 0023590C 41 80 FF D8 */ blt lbl_80238984 +/* 802389B0 00235910 54 00 08 3C */ slwi r0, r0, 1 +/* 802389B4 00235914 7F A3 EB 78 */ mr r3, r29 +/* 802389B8 00235918 7C 1D 02 14 */ add r0, r29, r0 +/* 802389BC 0023591C 48 00 00 08 */ b lbl_802389C4 +lbl_802389C0: +/* 802389C0 00235920 38 63 00 02 */ addi r3, r3, 2 +lbl_802389C4: +/* 802389C4 00235924 7C 03 00 40 */ cmplw r3, r0 +/* 802389C8 00235928 40 82 FF F8 */ bne lbl_802389C0 +/* 802389CC 0023592C 80 7A 00 0C */ lwz r3, 0xc(r26) +/* 802389D0 00235930 28 03 00 00 */ cmplwi r3, 0 +/* 802389D4 00235934 41 82 00 08 */ beq lbl_802389DC +/* 802389D8 00235938 48 0D CF 59 */ bl Free__7CMemoryFPCv +lbl_802389DC: +/* 802389DC 0023593C 93 FA 00 0C */ stw r31, 0xc(r26) +/* 802389E0 00235940 93 9A 00 08 */ stw r28, 8(r26) +/* 802389E4 00235944 80 1A 00 04 */ lwz r0, 4(r26) +/* 802389E8 00235948 7C 00 DA 14 */ add r0, r0, r27 +/* 802389EC 0023594C 90 1A 00 04 */ stw r0, 4(r26) +lbl_802389F0: +/* 802389F0 00235950 BB 21 00 14 */ lmw r25, 0x14(r1) +/* 802389F4 00235954 80 01 00 34 */ lwz r0, 0x34(r1) +/* 802389F8 00235958 7C 08 03 A6 */ mtlr r0 +/* 802389FC 0023595C 38 21 00 30 */ addi r1, r1, 0x30 +/* 80238A00 00235960 4E 80 00 20 */ blr + +.global CanAcceptProjectileAttacker__10CTeamAiMgrCF9TUniqueId +CanAcceptProjectileAttacker__10CTeamAiMgrCF9TUniqueId: +/* 80238A04 00235964 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80238A08 00235968 7C 08 02 A6 */ mflr r0 +/* 80238A0C 0023596C 90 01 00 34 */ stw r0, 0x34(r1) +/* 80238A10 00235970 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80238A14 00235974 7C 9F 23 78 */ mr r31, r4 +/* 80238A18 00235978 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80238A1C 0023597C 7C 7E 1B 78 */ mr r30, r3 +/* 80238A20 00235980 C0 23 00 94 */ lfs f1, 0x94(r3) +/* 80238A24 00235984 C0 03 00 54 */ lfs f0, 0x54(r3) +/* 80238A28 00235988 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80238A2C 0023598C 4C 41 13 82 */ cror 2, 1, 2 +/* 80238A30 00235990 40 82 00 1C */ bne lbl_80238A4C +/* 80238A34 00235994 80 7E 00 7C */ lwz r3, 0x7c(r30) +/* 80238A38 00235998 80 1E 00 48 */ lwz r0, 0x48(r30) +/* 80238A3C 0023599C 7C 03 00 40 */ cmplw r3, r0 +/* 80238A40 002359A0 40 80 00 0C */ bge lbl_80238A4C +/* 80238A44 002359A4 38 60 00 01 */ li r3, 1 +/* 80238A48 002359A8 48 00 00 A0 */ b lbl_80238AE8 +lbl_80238A4C: +/* 80238A4C 002359AC 80 1E 00 7C */ lwz r0, 0x7c(r30) +/* 80238A50 002359B0 7F E6 FB 78 */ mr r6, r31 +/* 80238A54 002359B4 80 FE 00 84 */ lwz r7, 0x84(r30) +/* 80238A58 002359B8 38 61 00 0C */ addi r3, r1, 0xc +/* 80238A5C 002359BC 54 00 08 3C */ slwi r0, r0, 1 +/* 80238A60 002359C0 38 81 00 10 */ addi r4, r1, 0x10 +/* 80238A64 002359C4 7C 07 02 14 */ add r0, r7, r0 +/* 80238A68 002359C8 90 E1 00 20 */ stw r7, 0x20(r1) +/* 80238A6C 002359CC 38 A1 00 14 */ addi r5, r1, 0x14 +/* 80238A70 002359D0 90 01 00 18 */ stw r0, 0x18(r1) +/* 80238A74 002359D4 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80238A78 002359D8 90 01 00 14 */ stw r0, 0x14(r1) +/* 80238A7C 002359DC 90 E1 00 10 */ stw r7, 0x10(r1) +/* 80238A80 002359E0 48 00 20 71 */ bl "lower_bound_const>" +/* 80238A84 002359E4 80 A1 00 0C */ lwz r5, 0xc(r1) +/* 80238A88 002359E8 38 80 00 00 */ li r4, 0 +/* 80238A8C 002359EC 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 80238A90 002359F0 90 A1 00 08 */ stw r5, 8(r1) +/* 80238A94 002359F4 7C 05 00 40 */ cmplw r5, r0 +/* 80238A98 002359F8 41 82 00 18 */ beq lbl_80238AB0 +/* 80238A9C 002359FC A0 7F 00 00 */ lhz r3, 0(r31) +/* 80238AA0 00235A00 A0 05 00 00 */ lhz r0, 0(r5) +/* 80238AA4 00235A04 7C 03 00 40 */ cmplw r3, r0 +/* 80238AA8 00235A08 41 80 00 08 */ blt lbl_80238AB0 +/* 80238AAC 00235A0C 38 80 00 01 */ li r4, 1 +lbl_80238AB0: +/* 80238AB0 00235A10 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 80238AB4 00235A14 38 81 00 1C */ addi r4, r1, 0x1c +/* 80238AB8 00235A18 41 82 00 08 */ beq lbl_80238AC0 +/* 80238ABC 00235A1C 38 81 00 08 */ addi r4, r1, 8 +lbl_80238AC0: +/* 80238AC0 00235A20 80 1E 00 7C */ lwz r0, 0x7c(r30) +/* 80238AC4 00235A24 80 7E 00 84 */ lwz r3, 0x84(r30) +/* 80238AC8 00235A28 54 00 08 3C */ slwi r0, r0, 1 +/* 80238ACC 00235A2C 80 84 00 00 */ lwz r4, 0(r4) +/* 80238AD0 00235A30 7C 03 02 14 */ add r0, r3, r0 +/* 80238AD4 00235A34 7C 04 00 40 */ cmplw r4, r0 +/* 80238AD8 00235A38 41 82 00 0C */ beq lbl_80238AE4 +/* 80238ADC 00235A3C 38 60 00 01 */ li r3, 1 +/* 80238AE0 00235A40 48 00 00 08 */ b lbl_80238AE8 +lbl_80238AE4: +/* 80238AE4 00235A44 38 60 00 00 */ li r3, 0 +lbl_80238AE8: +/* 80238AE8 00235A48 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80238AEC 00235A4C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80238AF0 00235A50 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80238AF4 00235A54 7C 08 03 A6 */ mtlr r0 +/* 80238AF8 00235A58 38 21 00 30 */ addi r1, r1, 0x30 +/* 80238AFC 00235A5C 4E 80 00 20 */ blr + +.global IsProjectileAttacker__10CTeamAiMgrCF9TUniqueId +IsProjectileAttacker__10CTeamAiMgrCF9TUniqueId: +/* 80238B00 00235A60 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80238B04 00235A64 7C 08 02 A6 */ mflr r0 +/* 80238B08 00235A68 90 01 00 34 */ stw r0, 0x34(r1) +/* 80238B0C 00235A6C 38 A1 00 14 */ addi r5, r1, 0x14 +/* 80238B10 00235A70 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80238B14 00235A74 7C 9F 23 78 */ mr r31, r4 +/* 80238B18 00235A78 7F E6 FB 78 */ mr r6, r31 +/* 80238B1C 00235A7C 38 81 00 10 */ addi r4, r1, 0x10 +/* 80238B20 00235A80 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80238B24 00235A84 7C 7E 1B 78 */ mr r30, r3 +/* 80238B28 00235A88 80 03 00 7C */ lwz r0, 0x7c(r3) +/* 80238B2C 00235A8C 80 E3 00 84 */ lwz r7, 0x84(r3) +/* 80238B30 00235A90 38 61 00 0C */ addi r3, r1, 0xc +/* 80238B34 00235A94 54 00 08 3C */ slwi r0, r0, 1 +/* 80238B38 00235A98 7C 07 02 14 */ add r0, r7, r0 +/* 80238B3C 00235A9C 90 E1 00 20 */ stw r7, 0x20(r1) +/* 80238B40 00235AA0 90 01 00 18 */ stw r0, 0x18(r1) +/* 80238B44 00235AA4 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80238B48 00235AA8 90 01 00 14 */ stw r0, 0x14(r1) +/* 80238B4C 00235AAC 90 E1 00 10 */ stw r7, 0x10(r1) +/* 80238B50 00235AB0 48 00 1F A1 */ bl "lower_bound_const>" +/* 80238B54 00235AB4 80 A1 00 0C */ lwz r5, 0xc(r1) +/* 80238B58 00235AB8 38 80 00 00 */ li r4, 0 +/* 80238B5C 00235ABC 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 80238B60 00235AC0 90 A1 00 08 */ stw r5, 8(r1) +/* 80238B64 00235AC4 7C 05 00 40 */ cmplw r5, r0 +/* 80238B68 00235AC8 41 82 00 18 */ beq lbl_80238B80 +/* 80238B6C 00235ACC A0 7F 00 00 */ lhz r3, 0(r31) +/* 80238B70 00235AD0 A0 05 00 00 */ lhz r0, 0(r5) +/* 80238B74 00235AD4 7C 03 00 40 */ cmplw r3, r0 +/* 80238B78 00235AD8 41 80 00 08 */ blt lbl_80238B80 +/* 80238B7C 00235ADC 38 80 00 01 */ li r4, 1 +lbl_80238B80: +/* 80238B80 00235AE0 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 80238B84 00235AE4 38 81 00 1C */ addi r4, r1, 0x1c +/* 80238B88 00235AE8 41 82 00 08 */ beq lbl_80238B90 +/* 80238B8C 00235AEC 38 81 00 08 */ addi r4, r1, 8 +lbl_80238B90: +/* 80238B90 00235AF0 80 1E 00 7C */ lwz r0, 0x7c(r30) +/* 80238B94 00235AF4 80 7E 00 84 */ lwz r3, 0x84(r30) +/* 80238B98 00235AF8 54 00 08 3C */ slwi r0, r0, 1 +/* 80238B9C 00235AFC 80 84 00 00 */ lwz r4, 0(r4) +/* 80238BA0 00235B00 7C 03 02 14 */ add r0, r3, r0 +/* 80238BA4 00235B04 7C 64 00 50 */ subf r3, r4, r0 +/* 80238BA8 00235B08 7C 00 20 50 */ subf r0, r0, r4 +/* 80238BAC 00235B0C 7C 60 03 78 */ or r0, r3, r0 +/* 80238BB0 00235B10 54 03 0F FE */ srwi r3, r0, 0x1f +/* 80238BB4 00235B14 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80238BB8 00235B18 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80238BBC 00235B1C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80238BC0 00235B20 7C 08 03 A6 */ mtlr r0 +/* 80238BC4 00235B24 38 21 00 30 */ addi r1, r1, 0x30 +/* 80238BC8 00235B28 4E 80 00 20 */ blr + +.global RemoveMeleeAttacker__10CTeamAiMgrF9TUniqueId +RemoveMeleeAttacker__10CTeamAiMgrF9TUniqueId: +/* 80238BCC 00235B2C 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80238BD0 00235B30 7C 08 02 A6 */ mflr r0 +/* 80238BD4 00235B34 90 01 00 44 */ stw r0, 0x44(r1) +/* 80238BD8 00235B38 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80238BDC 00235B3C 7C 7F 1B 78 */ mr r31, r3 +/* 80238BE0 00235B40 93 C1 00 38 */ stw r30, 0x38(r1) +/* 80238BE4 00235B44 7C 9E 23 78 */ mr r30, r4 +/* 80238BE8 00235B48 7F C6 F3 78 */ mr r6, r30 +/* 80238BEC 00235B4C 38 81 00 10 */ addi r4, r1, 0x10 +/* 80238BF0 00235B50 80 03 00 6C */ lwz r0, 0x6c(r3) +/* 80238BF4 00235B54 80 A3 00 74 */ lwz r5, 0x74(r3) +/* 80238BF8 00235B58 38 61 00 0C */ addi r3, r1, 0xc +/* 80238BFC 00235B5C 54 00 08 3C */ slwi r0, r0, 1 +/* 80238C00 00235B60 7C E5 02 14 */ add r7, r5, r0 +/* 80238C04 00235B64 38 A1 00 14 */ addi r5, r1, 0x14 +/* 80238C08 00235B68 90 E1 00 24 */ stw r7, 0x24(r1) +/* 80238C0C 00235B6C 80 1F 00 74 */ lwz r0, 0x74(r31) +/* 80238C10 00235B70 90 E1 00 20 */ stw r7, 0x20(r1) +/* 80238C14 00235B74 90 01 00 28 */ stw r0, 0x28(r1) +/* 80238C18 00235B78 90 E1 00 14 */ stw r7, 0x14(r1) +/* 80238C1C 00235B7C 90 01 00 10 */ stw r0, 0x10(r1) +/* 80238C20 00235B80 48 00 1F 91 */ bl "lower_bound>" +/* 80238C24 00235B84 80 A1 00 0C */ lwz r5, 0xc(r1) +/* 80238C28 00235B88 38 80 00 00 */ li r4, 0 +/* 80238C2C 00235B8C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80238C30 00235B90 90 A1 00 08 */ stw r5, 8(r1) +/* 80238C34 00235B94 7C 05 00 40 */ cmplw r5, r0 +/* 80238C38 00235B98 41 82 00 18 */ beq lbl_80238C50 +/* 80238C3C 00235B9C A0 7E 00 00 */ lhz r3, 0(r30) +/* 80238C40 00235BA0 A0 05 00 00 */ lhz r0, 0(r5) +/* 80238C44 00235BA4 7C 03 00 40 */ cmplw r3, r0 +/* 80238C48 00235BA8 41 80 00 08 */ blt lbl_80238C50 +/* 80238C4C 00235BAC 38 80 00 01 */ li r4, 1 +lbl_80238C50: +/* 80238C50 00235BB0 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 80238C54 00235BB4 38 81 00 24 */ addi r4, r1, 0x24 +/* 80238C58 00235BB8 41 82 00 08 */ beq lbl_80238C60 +/* 80238C5C 00235BBC 38 81 00 08 */ addi r4, r1, 8 +lbl_80238C60: +/* 80238C60 00235BC0 80 1F 00 6C */ lwz r0, 0x6c(r31) +/* 80238C64 00235BC4 80 7F 00 74 */ lwz r3, 0x74(r31) +/* 80238C68 00235BC8 54 00 08 3C */ slwi r0, r0, 1 +/* 80238C6C 00235BCC 80 84 00 00 */ lwz r4, 0(r4) +/* 80238C70 00235BD0 7C 03 02 14 */ add r0, r3, r0 +/* 80238C74 00235BD4 7C 04 00 40 */ cmplw r4, r0 +/* 80238C78 00235BD8 90 81 00 2C */ stw r4, 0x2c(r1) +/* 80238C7C 00235BDC 41 82 00 18 */ beq lbl_80238C94 +/* 80238C80 00235BE0 90 81 00 18 */ stw r4, 0x18(r1) +/* 80238C84 00235BE4 38 61 00 1C */ addi r3, r1, 0x1c +/* 80238C88 00235BE8 38 9F 00 68 */ addi r4, r31, 0x68 +/* 80238C8C 00235BEC 38 A1 00 18 */ addi r5, r1, 0x18 +/* 80238C90 00235BF0 4B DD 25 C9 */ bl "find,Q24rstl17rmemory_allocator>,9TUniqueId>__4rstlFQ24rstl110pointer_iterator<9TUniqueId,Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Q24rstl110pointer_iterator<9TUniqueId,Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>RC9TUniqueId" +lbl_80238C94: +/* 80238C94 00235BF4 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80238C98 00235BF8 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 80238C9C 00235BFC 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 80238CA0 00235C00 7C 08 03 A6 */ mtlr r0 +/* 80238CA4 00235C04 38 21 00 40 */ addi r1, r1, 0x40 +/* 80238CA8 00235C08 4E 80 00 20 */ blr + +.global AddMeleeAttacker__10CTeamAiMgrF9TUniqueId +AddMeleeAttacker__10CTeamAiMgrF9TUniqueId: +/* 80238CAC 00235C0C 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80238CB0 00235C10 7C 08 02 A6 */ mflr r0 +/* 80238CB4 00235C14 90 01 00 54 */ stw r0, 0x54(r1) +/* 80238CB8 00235C18 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 80238CBC 00235C1C 7C 9F 23 78 */ mr r31, r4 +/* 80238CC0 00235C20 93 C1 00 48 */ stw r30, 0x48(r1) +/* 80238CC4 00235C24 7C 7E 1B 78 */ mr r30, r3 +/* 80238CC8 00235C28 C0 23 00 90 */ lfs f1, 0x90(r3) +/* 80238CCC 00235C2C C0 03 00 50 */ lfs f0, 0x50(r3) +/* 80238CD0 00235C30 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80238CD4 00235C34 4C 41 13 82 */ cror 2, 1, 2 +/* 80238CD8 00235C38 40 82 01 34 */ bne lbl_80238E0C +/* 80238CDC 00235C3C 80 9E 00 6C */ lwz r4, 0x6c(r30) +/* 80238CE0 00235C40 80 1E 00 44 */ lwz r0, 0x44(r30) +/* 80238CE4 00235C44 7C 04 00 40 */ cmplw r4, r0 +/* 80238CE8 00235C48 40 80 01 24 */ bge lbl_80238E0C +/* 80238CEC 00235C4C A0 1F 00 00 */ lhz r0, 0(r31) +/* 80238CF0 00235C50 38 81 00 08 */ addi r4, r1, 8 +/* 80238CF4 00235C54 B0 01 00 08 */ sth r0, 8(r1) +/* 80238CF8 00235C58 48 00 04 0D */ bl HasTeamAiRole__10CTeamAiMgrCF9TUniqueId +/* 80238CFC 00235C5C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80238D00 00235C60 41 82 01 0C */ beq lbl_80238E0C +/* 80238D04 00235C64 80 1E 00 6C */ lwz r0, 0x6c(r30) +/* 80238D08 00235C68 7F E6 FB 78 */ mr r6, r31 +/* 80238D0C 00235C6C 80 BE 00 74 */ lwz r5, 0x74(r30) +/* 80238D10 00235C70 38 61 00 10 */ addi r3, r1, 0x10 +/* 80238D14 00235C74 54 00 08 3C */ slwi r0, r0, 1 +/* 80238D18 00235C78 38 81 00 14 */ addi r4, r1, 0x14 +/* 80238D1C 00235C7C 7C E5 02 14 */ add r7, r5, r0 +/* 80238D20 00235C80 38 A1 00 18 */ addi r5, r1, 0x18 +/* 80238D24 00235C84 90 E1 00 3C */ stw r7, 0x3c(r1) +/* 80238D28 00235C88 80 1E 00 74 */ lwz r0, 0x74(r30) +/* 80238D2C 00235C8C 90 E1 00 38 */ stw r7, 0x38(r1) +/* 80238D30 00235C90 90 01 00 40 */ stw r0, 0x40(r1) +/* 80238D34 00235C94 90 E1 00 18 */ stw r7, 0x18(r1) +/* 80238D38 00235C98 90 01 00 14 */ stw r0, 0x14(r1) +/* 80238D3C 00235C9C 48 00 1E 75 */ bl "lower_bound>" +/* 80238D40 00235CA0 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 80238D44 00235CA4 38 80 00 00 */ li r4, 0 +/* 80238D48 00235CA8 80 01 00 3C */ lwz r0, 0x3c(r1) +/* 80238D4C 00235CAC 90 A1 00 0C */ stw r5, 0xc(r1) +/* 80238D50 00235CB0 7C 05 00 40 */ cmplw r5, r0 +/* 80238D54 00235CB4 41 82 00 18 */ beq lbl_80238D6C +/* 80238D58 00235CB8 A0 7F 00 00 */ lhz r3, 0(r31) +/* 80238D5C 00235CBC A0 05 00 00 */ lhz r0, 0(r5) +/* 80238D60 00235CC0 7C 03 00 40 */ cmplw r3, r0 +/* 80238D64 00235CC4 41 80 00 08 */ blt lbl_80238D6C +/* 80238D68 00235CC8 38 80 00 01 */ li r4, 1 +lbl_80238D6C: +/* 80238D6C 00235CCC 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 80238D70 00235CD0 38 A1 00 3C */ addi r5, r1, 0x3c +/* 80238D74 00235CD4 41 82 00 08 */ beq lbl_80238D7C +/* 80238D78 00235CD8 38 A1 00 0C */ addi r5, r1, 0xc +lbl_80238D7C: +/* 80238D7C 00235CDC 80 DE 00 6C */ lwz r6, 0x6c(r30) +/* 80238D80 00235CE0 80 9E 00 74 */ lwz r4, 0x74(r30) +/* 80238D84 00235CE4 54 C3 08 3C */ slwi r3, r6, 1 +/* 80238D88 00235CE8 80 05 00 00 */ lwz r0, 0(r5) +/* 80238D8C 00235CEC 7C 64 1A 14 */ add r3, r4, r3 +/* 80238D90 00235CF0 7C 00 18 40 */ cmplw r0, r3 +/* 80238D94 00235CF4 40 82 00 70 */ bne lbl_80238E04 +/* 80238D98 00235CF8 38 7E 00 68 */ addi r3, r30, 0x68 +/* 80238D9C 00235CFC 38 86 00 01 */ addi r4, r6, 1 +/* 80238DA0 00235D00 4B DD 36 69 */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" +/* 80238DA4 00235D04 80 1E 00 6C */ lwz r0, 0x6c(r30) +/* 80238DA8 00235D08 7F E6 FB 78 */ mr r6, r31 +/* 80238DAC 00235D0C 80 BE 00 74 */ lwz r5, 0x74(r30) +/* 80238DB0 00235D10 38 61 00 34 */ addi r3, r1, 0x34 +/* 80238DB4 00235D14 54 00 08 3C */ slwi r0, r0, 1 +/* 80238DB8 00235D18 38 81 00 30 */ addi r4, r1, 0x30 +/* 80238DBC 00235D1C 7C E5 02 14 */ add r7, r5, r0 +/* 80238DC0 00235D20 38 A1 00 28 */ addi r5, r1, 0x28 +/* 80238DC4 00235D24 90 E1 00 28 */ stw r7, 0x28(r1) +/* 80238DC8 00235D28 80 1E 00 74 */ lwz r0, 0x74(r30) +/* 80238DCC 00235D2C 90 E1 00 24 */ stw r7, 0x24(r1) +/* 80238DD0 00235D30 90 01 00 2C */ stw r0, 0x2c(r1) +/* 80238DD4 00235D34 90 01 00 30 */ stw r0, 0x30(r1) +/* 80238DD8 00235D38 48 00 1D D9 */ bl "lower_bound>" +/* 80238DDC 00235D3C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80238DE0 00235D40 7F E6 FB 78 */ mr r6, r31 +/* 80238DE4 00235D44 38 61 00 20 */ addi r3, r1, 0x20 +/* 80238DE8 00235D48 38 9E 00 68 */ addi r4, r30, 0x68 +/* 80238DEC 00235D4C 90 01 00 44 */ stw r0, 0x44(r1) +/* 80238DF0 00235D50 38 A1 00 1C */ addi r5, r1, 0x1c +/* 80238DF4 00235D54 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80238DF8 00235D58 4B FF F9 49 */ bl sub_80238740 +/* 80238DFC 00235D5C C0 02 B7 64 */ lfs f0, lbl_805AD484@sda21(r2) +/* 80238E00 00235D60 D0 1E 00 90 */ stfs f0, 0x90(r30) +lbl_80238E04: +/* 80238E04 00235D64 38 60 00 01 */ li r3, 1 +/* 80238E08 00235D68 48 00 00 08 */ b lbl_80238E10 +lbl_80238E0C: +/* 80238E0C 00235D6C 38 60 00 00 */ li r3, 0 +lbl_80238E10: +/* 80238E10 00235D70 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80238E14 00235D74 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 80238E18 00235D78 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 80238E1C 00235D7C 7C 08 03 A6 */ mtlr r0 +/* 80238E20 00235D80 38 21 00 50 */ addi r1, r1, 0x50 +/* 80238E24 00235D84 4E 80 00 20 */ blr + +.global CanAcceptMeleeAttacker__10CTeamAiMgrCF9TUniqueId +CanAcceptMeleeAttacker__10CTeamAiMgrCF9TUniqueId: +/* 80238E28 00235D88 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80238E2C 00235D8C 7C 08 02 A6 */ mflr r0 +/* 80238E30 00235D90 90 01 00 34 */ stw r0, 0x34(r1) +/* 80238E34 00235D94 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80238E38 00235D98 7C 9F 23 78 */ mr r31, r4 +/* 80238E3C 00235D9C 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80238E40 00235DA0 7C 7E 1B 78 */ mr r30, r3 +/* 80238E44 00235DA4 C0 23 00 90 */ lfs f1, 0x90(r3) +/* 80238E48 00235DA8 C0 03 00 50 */ lfs f0, 0x50(r3) +/* 80238E4C 00235DAC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80238E50 00235DB0 4C 41 13 82 */ cror 2, 1, 2 +/* 80238E54 00235DB4 40 82 00 1C */ bne lbl_80238E70 +/* 80238E58 00235DB8 80 7E 00 6C */ lwz r3, 0x6c(r30) +/* 80238E5C 00235DBC 80 1E 00 44 */ lwz r0, 0x44(r30) +/* 80238E60 00235DC0 7C 03 00 40 */ cmplw r3, r0 +/* 80238E64 00235DC4 40 80 00 0C */ bge lbl_80238E70 +/* 80238E68 00235DC8 38 60 00 01 */ li r3, 1 +/* 80238E6C 00235DCC 48 00 00 A0 */ b lbl_80238F0C +lbl_80238E70: +/* 80238E70 00235DD0 80 1E 00 6C */ lwz r0, 0x6c(r30) +/* 80238E74 00235DD4 7F E6 FB 78 */ mr r6, r31 +/* 80238E78 00235DD8 80 FE 00 74 */ lwz r7, 0x74(r30) +/* 80238E7C 00235DDC 38 61 00 0C */ addi r3, r1, 0xc +/* 80238E80 00235DE0 54 00 08 3C */ slwi r0, r0, 1 +/* 80238E84 00235DE4 38 81 00 10 */ addi r4, r1, 0x10 +/* 80238E88 00235DE8 7C 07 02 14 */ add r0, r7, r0 +/* 80238E8C 00235DEC 90 E1 00 20 */ stw r7, 0x20(r1) +/* 80238E90 00235DF0 38 A1 00 14 */ addi r5, r1, 0x14 +/* 80238E94 00235DF4 90 01 00 18 */ stw r0, 0x18(r1) +/* 80238E98 00235DF8 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80238E9C 00235DFC 90 01 00 14 */ stw r0, 0x14(r1) +/* 80238EA0 00235E00 90 E1 00 10 */ stw r7, 0x10(r1) +/* 80238EA4 00235E04 48 00 1C 4D */ bl "lower_bound_const>" +/* 80238EA8 00235E08 80 A1 00 0C */ lwz r5, 0xc(r1) +/* 80238EAC 00235E0C 38 80 00 00 */ li r4, 0 +/* 80238EB0 00235E10 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 80238EB4 00235E14 90 A1 00 08 */ stw r5, 8(r1) +/* 80238EB8 00235E18 7C 05 00 40 */ cmplw r5, r0 +/* 80238EBC 00235E1C 41 82 00 18 */ beq lbl_80238ED4 +/* 80238EC0 00235E20 A0 7F 00 00 */ lhz r3, 0(r31) +/* 80238EC4 00235E24 A0 05 00 00 */ lhz r0, 0(r5) +/* 80238EC8 00235E28 7C 03 00 40 */ cmplw r3, r0 +/* 80238ECC 00235E2C 41 80 00 08 */ blt lbl_80238ED4 +/* 80238ED0 00235E30 38 80 00 01 */ li r4, 1 +lbl_80238ED4: +/* 80238ED4 00235E34 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 80238ED8 00235E38 38 81 00 1C */ addi r4, r1, 0x1c +/* 80238EDC 00235E3C 41 82 00 08 */ beq lbl_80238EE4 +/* 80238EE0 00235E40 38 81 00 08 */ addi r4, r1, 8 +lbl_80238EE4: +/* 80238EE4 00235E44 80 1E 00 6C */ lwz r0, 0x6c(r30) +/* 80238EE8 00235E48 80 7E 00 74 */ lwz r3, 0x74(r30) +/* 80238EEC 00235E4C 54 00 08 3C */ slwi r0, r0, 1 +/* 80238EF0 00235E50 80 84 00 00 */ lwz r4, 0(r4) +/* 80238EF4 00235E54 7C 03 02 14 */ add r0, r3, r0 +/* 80238EF8 00235E58 7C 04 00 40 */ cmplw r4, r0 +/* 80238EFC 00235E5C 41 82 00 0C */ beq lbl_80238F08 +/* 80238F00 00235E60 38 60 00 01 */ li r3, 1 +/* 80238F04 00235E64 48 00 00 08 */ b lbl_80238F0C +lbl_80238F08: +/* 80238F08 00235E68 38 60 00 00 */ li r3, 0 +lbl_80238F0C: +/* 80238F0C 00235E6C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80238F10 00235E70 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80238F14 00235E74 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80238F18 00235E78 7C 08 03 A6 */ mtlr r0 +/* 80238F1C 00235E7C 38 21 00 30 */ addi r1, r1, 0x30 +/* 80238F20 00235E80 4E 80 00 20 */ blr + +.global IsMeleeAttacker__10CTeamAiMgrCF9TUniqueId +IsMeleeAttacker__10CTeamAiMgrCF9TUniqueId: +/* 80238F24 00235E84 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80238F28 00235E88 7C 08 02 A6 */ mflr r0 +/* 80238F2C 00235E8C 90 01 00 34 */ stw r0, 0x34(r1) +/* 80238F30 00235E90 38 A1 00 14 */ addi r5, r1, 0x14 +/* 80238F34 00235E94 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80238F38 00235E98 7C 9F 23 78 */ mr r31, r4 +/* 80238F3C 00235E9C 7F E6 FB 78 */ mr r6, r31 +/* 80238F40 00235EA0 38 81 00 10 */ addi r4, r1, 0x10 +/* 80238F44 00235EA4 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80238F48 00235EA8 7C 7E 1B 78 */ mr r30, r3 +/* 80238F4C 00235EAC 80 03 00 6C */ lwz r0, 0x6c(r3) +/* 80238F50 00235EB0 80 E3 00 74 */ lwz r7, 0x74(r3) +/* 80238F54 00235EB4 38 61 00 0C */ addi r3, r1, 0xc +/* 80238F58 00235EB8 54 00 08 3C */ slwi r0, r0, 1 +/* 80238F5C 00235EBC 7C 07 02 14 */ add r0, r7, r0 +/* 80238F60 00235EC0 90 E1 00 20 */ stw r7, 0x20(r1) +/* 80238F64 00235EC4 90 01 00 18 */ stw r0, 0x18(r1) +/* 80238F68 00235EC8 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80238F6C 00235ECC 90 01 00 14 */ stw r0, 0x14(r1) +/* 80238F70 00235ED0 90 E1 00 10 */ stw r7, 0x10(r1) +/* 80238F74 00235ED4 48 00 1B 7D */ bl "lower_bound_const>" +/* 80238F78 00235ED8 80 A1 00 0C */ lwz r5, 0xc(r1) +/* 80238F7C 00235EDC 38 80 00 00 */ li r4, 0 +/* 80238F80 00235EE0 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 80238F84 00235EE4 90 A1 00 08 */ stw r5, 8(r1) +/* 80238F88 00235EE8 7C 05 00 40 */ cmplw r5, r0 +/* 80238F8C 00235EEC 41 82 00 18 */ beq lbl_80238FA4 +/* 80238F90 00235EF0 A0 7F 00 00 */ lhz r3, 0(r31) +/* 80238F94 00235EF4 A0 05 00 00 */ lhz r0, 0(r5) +/* 80238F98 00235EF8 7C 03 00 40 */ cmplw r3, r0 +/* 80238F9C 00235EFC 41 80 00 08 */ blt lbl_80238FA4 +/* 80238FA0 00235F00 38 80 00 01 */ li r4, 1 +lbl_80238FA4: +/* 80238FA4 00235F04 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 80238FA8 00235F08 38 81 00 1C */ addi r4, r1, 0x1c +/* 80238FAC 00235F0C 41 82 00 08 */ beq lbl_80238FB4 +/* 80238FB0 00235F10 38 81 00 08 */ addi r4, r1, 8 +lbl_80238FB4: +/* 80238FB4 00235F14 80 1E 00 6C */ lwz r0, 0x6c(r30) +/* 80238FB8 00235F18 80 7E 00 74 */ lwz r3, 0x74(r30) +/* 80238FBC 00235F1C 54 00 08 3C */ slwi r0, r0, 1 +/* 80238FC0 00235F20 80 84 00 00 */ lwz r4, 0(r4) +/* 80238FC4 00235F24 7C 03 02 14 */ add r0, r3, r0 +/* 80238FC8 00235F28 7C 64 00 50 */ subf r3, r4, r0 +/* 80238FCC 00235F2C 7C 00 20 50 */ subf r0, r0, r4 +/* 80238FD0 00235F30 7C 60 03 78 */ or r0, r3, r0 +/* 80238FD4 00235F34 54 03 0F FE */ srwi r3, r0, 0x1f +/* 80238FD8 00235F38 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80238FDC 00235F3C 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80238FE0 00235F40 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80238FE4 00235F44 7C 08 03 A6 */ mtlr r0 +/* 80238FE8 00235F48 38 21 00 30 */ addi r1, r1, 0x30 +/* 80238FEC 00235F4C 4E 80 00 20 */ blr + +.global IsPartOfTeam__10CTeamAiMgrCF9TUniqueId +IsPartOfTeam__10CTeamAiMgrCF9TUniqueId: +/* 80238FF0 00235F50 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80238FF4 00235F54 7C 08 02 A6 */ mflr r0 +/* 80238FF8 00235F58 39 20 FF FF */ li r9, -1 +/* 80238FFC 00235F5C 39 00 00 00 */ li r8, 0 +/* 80239000 00235F60 90 01 00 64 */ stw r0, 0x64(r1) +/* 80239004 00235F64 38 C1 00 28 */ addi r6, r1, 0x28 +/* 80239008 00235F68 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 8023900C 00235F6C 7C 7F 1B 78 */ mr r31, r3 +/* 80239010 00235F70 80 03 00 5C */ lwz r0, 0x5c(r3) +/* 80239014 00235F74 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80239018 00235F78 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 8023901C 00235F7C A1 44 00 00 */ lhz r10, 0(r4) +/* 80239020 00235F80 1C 00 00 28 */ mulli r0, r0, 0x28 +/* 80239024 00235F84 80 FF 00 64 */ lwz r7, 0x64(r31) +/* 80239028 00235F88 C0 45 00 00 */ lfs f2, 0(r5) +/* 8023902C 00235F8C 38 61 00 10 */ addi r3, r1, 0x10 +/* 80239030 00235F90 C0 25 00 04 */ lfs f1, 4(r5) +/* 80239034 00235F94 38 81 00 14 */ addi r4, r1, 0x14 +/* 80239038 00235F98 7C 07 02 14 */ add r0, r7, r0 +/* 8023903C 00235F9C C0 05 00 08 */ lfs f0, 8(r5) +/* 80239040 00235FA0 B1 41 00 08 */ sth r10, 8(r1) +/* 80239044 00235FA4 38 A1 00 18 */ addi r5, r1, 0x18 +/* 80239048 00235FA8 B1 41 00 28 */ sth r10, 0x28(r1) +/* 8023904C 00235FAC 91 21 00 2C */ stw r9, 0x2c(r1) +/* 80239050 00235FB0 91 21 00 30 */ stw r9, 0x30(r1) +/* 80239054 00235FB4 91 21 00 34 */ stw r9, 0x34(r1) +/* 80239058 00235FB8 91 21 00 38 */ stw r9, 0x38(r1) +/* 8023905C 00235FBC 91 21 00 3C */ stw r9, 0x3c(r1) +/* 80239060 00235FC0 91 01 00 40 */ stw r8, 0x40(r1) +/* 80239064 00235FC4 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 80239068 00235FC8 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 8023906C 00235FCC D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 80239070 00235FD0 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80239074 00235FD4 90 01 00 20 */ stw r0, 0x20(r1) +/* 80239078 00235FD8 90 E1 00 24 */ stw r7, 0x24(r1) +/* 8023907C 00235FDC 90 01 00 18 */ stw r0, 0x18(r1) +/* 80239080 00235FE0 90 E1 00 14 */ stw r7, 0x14(r1) +/* 80239084 00235FE4 48 00 19 A5 */ bl "lower_bound_const8iterator,11CTeamAiRole>__4rstlFQ34rstl46list<11CTeamAiRole,Q24rstl17rmemory_allocator>8const_iteratorQ34rstl46list<11CTeamAiRole,Q24rstl17rmemory_allocator>8const_iteratorRC11CTeamAiRole" +/* 80239088 00235FE8 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 8023908C 00235FEC 38 80 00 00 */ li r4, 0 +/* 80239090 00235FF0 80 01 00 20 */ lwz r0, 0x20(r1) +/* 80239094 00235FF4 90 A1 00 0C */ stw r5, 0xc(r1) +/* 80239098 00235FF8 7C 05 00 40 */ cmplw r5, r0 +/* 8023909C 00235FFC 41 82 00 20 */ beq lbl_802390BC +/* 802390A0 00236000 A0 61 00 28 */ lhz r3, 0x28(r1) +/* 802390A4 00236004 A0 05 00 00 */ lhz r0, 0(r5) +/* 802390A8 00236008 54 63 05 BE */ clrlwi r3, r3, 0x16 +/* 802390AC 0023600C 54 00 05 BE */ clrlwi r0, r0, 0x16 +/* 802390B0 00236010 7C 03 00 40 */ cmplw r3, r0 +/* 802390B4 00236014 41 80 00 08 */ blt lbl_802390BC +/* 802390B8 00236018 38 80 00 01 */ li r4, 1 +lbl_802390BC: +/* 802390BC 0023601C 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 802390C0 00236020 38 81 00 20 */ addi r4, r1, 0x20 +/* 802390C4 00236024 41 82 00 08 */ beq lbl_802390CC +/* 802390C8 00236028 38 81 00 0C */ addi r4, r1, 0xc +lbl_802390CC: +/* 802390CC 0023602C 80 1F 00 5C */ lwz r0, 0x5c(r31) +/* 802390D0 00236030 80 7F 00 64 */ lwz r3, 0x64(r31) +/* 802390D4 00236034 1C 00 00 28 */ mulli r0, r0, 0x28 +/* 802390D8 00236038 80 84 00 00 */ lwz r4, 0(r4) +/* 802390DC 0023603C 7C 03 02 14 */ add r0, r3, r0 +/* 802390E0 00236040 7C 64 00 50 */ subf r3, r4, r0 +/* 802390E4 00236044 7C 00 20 50 */ subf r0, r0, r4 +/* 802390E8 00236048 7C 60 03 78 */ or r0, r3, r0 +/* 802390EC 0023604C 54 03 0F FE */ srwi r3, r0, 0x1f +/* 802390F0 00236050 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 802390F4 00236054 80 01 00 64 */ lwz r0, 0x64(r1) +/* 802390F8 00236058 7C 08 03 A6 */ mtlr r0 +/* 802390FC 0023605C 38 21 00 60 */ addi r1, r1, 0x60 +/* 80239100 00236060 4E 80 00 20 */ blr + +.global HasTeamAiRole__10CTeamAiMgrCF9TUniqueId +HasTeamAiRole__10CTeamAiMgrCF9TUniqueId: +/* 80239104 00236064 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80239108 00236068 7C 08 02 A6 */ mflr r0 +/* 8023910C 0023606C 39 20 FF FF */ li r9, -1 +/* 80239110 00236070 39 00 00 00 */ li r8, 0 +/* 80239114 00236074 90 01 00 64 */ stw r0, 0x64(r1) +/* 80239118 00236078 38 C1 00 28 */ addi r6, r1, 0x28 +/* 8023911C 0023607C 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 80239120 00236080 7C 7F 1B 78 */ mr r31, r3 +/* 80239124 00236084 80 03 00 5C */ lwz r0, 0x5c(r3) +/* 80239128 00236088 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8023912C 0023608C 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 80239130 00236090 A1 44 00 00 */ lhz r10, 0(r4) +/* 80239134 00236094 1C 00 00 28 */ mulli r0, r0, 0x28 +/* 80239138 00236098 80 FF 00 64 */ lwz r7, 0x64(r31) +/* 8023913C 0023609C C0 45 00 00 */ lfs f2, 0(r5) +/* 80239140 002360A0 38 61 00 10 */ addi r3, r1, 0x10 +/* 80239144 002360A4 C0 25 00 04 */ lfs f1, 4(r5) +/* 80239148 002360A8 38 81 00 14 */ addi r4, r1, 0x14 +/* 8023914C 002360AC 7C 07 02 14 */ add r0, r7, r0 +/* 80239150 002360B0 C0 05 00 08 */ lfs f0, 8(r5) +/* 80239154 002360B4 B1 41 00 08 */ sth r10, 8(r1) +/* 80239158 002360B8 38 A1 00 18 */ addi r5, r1, 0x18 +/* 8023915C 002360BC B1 41 00 28 */ sth r10, 0x28(r1) +/* 80239160 002360C0 91 21 00 2C */ stw r9, 0x2c(r1) +/* 80239164 002360C4 91 21 00 30 */ stw r9, 0x30(r1) +/* 80239168 002360C8 91 21 00 34 */ stw r9, 0x34(r1) +/* 8023916C 002360CC 91 21 00 38 */ stw r9, 0x38(r1) +/* 80239170 002360D0 91 21 00 3C */ stw r9, 0x3c(r1) +/* 80239174 002360D4 91 01 00 40 */ stw r8, 0x40(r1) +/* 80239178 002360D8 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 8023917C 002360DC D0 21 00 48 */ stfs f1, 0x48(r1) +/* 80239180 002360E0 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 80239184 002360E4 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80239188 002360E8 90 01 00 20 */ stw r0, 0x20(r1) +/* 8023918C 002360EC 90 E1 00 24 */ stw r7, 0x24(r1) +/* 80239190 002360F0 90 01 00 18 */ stw r0, 0x18(r1) +/* 80239194 002360F4 90 E1 00 14 */ stw r7, 0x14(r1) +/* 80239198 002360F8 48 00 18 91 */ bl "lower_bound_const8iterator,11CTeamAiRole>__4rstlFQ34rstl46list<11CTeamAiRole,Q24rstl17rmemory_allocator>8const_iteratorQ34rstl46list<11CTeamAiRole,Q24rstl17rmemory_allocator>8const_iteratorRC11CTeamAiRole" +/* 8023919C 002360FC 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 802391A0 00236100 38 80 00 00 */ li r4, 0 +/* 802391A4 00236104 80 01 00 20 */ lwz r0, 0x20(r1) +/* 802391A8 00236108 90 A1 00 0C */ stw r5, 0xc(r1) +/* 802391AC 0023610C 7C 05 00 40 */ cmplw r5, r0 +/* 802391B0 00236110 41 82 00 20 */ beq lbl_802391D0 +/* 802391B4 00236114 A0 61 00 28 */ lhz r3, 0x28(r1) +/* 802391B8 00236118 A0 05 00 00 */ lhz r0, 0(r5) +/* 802391BC 0023611C 54 63 05 BE */ clrlwi r3, r3, 0x16 +/* 802391C0 00236120 54 00 05 BE */ clrlwi r0, r0, 0x16 +/* 802391C4 00236124 7C 03 00 40 */ cmplw r3, r0 +/* 802391C8 00236128 41 80 00 08 */ blt lbl_802391D0 +/* 802391CC 0023612C 38 80 00 01 */ li r4, 1 +lbl_802391D0: +/* 802391D0 00236130 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 802391D4 00236134 38 81 00 20 */ addi r4, r1, 0x20 +/* 802391D8 00236138 41 82 00 08 */ beq lbl_802391E0 +/* 802391DC 0023613C 38 81 00 0C */ addi r4, r1, 0xc +lbl_802391E0: +/* 802391E0 00236140 80 1F 00 5C */ lwz r0, 0x5c(r31) +/* 802391E4 00236144 80 7F 00 64 */ lwz r3, 0x64(r31) +/* 802391E8 00236148 1C 00 00 28 */ mulli r0, r0, 0x28 +/* 802391EC 0023614C 80 84 00 00 */ lwz r4, 0(r4) +/* 802391F0 00236150 7C 03 02 14 */ add r0, r3, r0 +/* 802391F4 00236154 7C 04 00 40 */ cmplw r4, r0 +/* 802391F8 00236158 41 82 00 28 */ beq lbl_80239220 +/* 802391FC 0023615C 80 04 00 10 */ lwz r0, 0x10(r4) +/* 80239200 00236160 38 60 00 00 */ li r3, 0 +/* 80239204 00236164 2C 00 00 00 */ cmpwi r0, 0 +/* 80239208 00236168 41 82 00 1C */ beq lbl_80239224 +/* 8023920C 0023616C 41 80 00 18 */ blt lbl_80239224 +/* 80239210 00236170 2C 00 00 04 */ cmpwi r0, 4 +/* 80239214 00236174 41 81 00 10 */ bgt lbl_80239224 +/* 80239218 00236178 38 60 00 01 */ li r3, 1 +/* 8023921C 0023617C 48 00 00 08 */ b lbl_80239224 +lbl_80239220: +/* 80239220 00236180 38 60 00 00 */ li r3, 0 +lbl_80239224: +/* 80239224 00236184 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80239228 00236188 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 8023922C 0023618C 7C 08 03 A6 */ mtlr r0 +/* 80239230 00236190 38 21 00 60 */ addi r1, r1, 0x60 +/* 80239234 00236194 4E 80 00 20 */ blr + +.global ClearTeamAiRole__10CTeamAiMgrF9TUniqueId +ClearTeamAiRole__10CTeamAiMgrF9TUniqueId: +/* 80239238 00236198 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 8023923C 0023619C 7C 08 02 A6 */ mflr r0 +/* 80239240 002361A0 3C A0 80 5A */ lis r5, skZero3f@ha +/* 80239244 002361A4 38 E0 FF FF */ li r7, -1 +/* 80239248 002361A8 90 01 00 64 */ stw r0, 0x64(r1) +/* 8023924C 002361AC 38 00 00 00 */ li r0, 0 +/* 80239250 002361B0 38 C1 00 28 */ addi r6, r1, 0x28 +/* 80239254 002361B4 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 80239258 002361B8 7C 7F 1B 78 */ mr r31, r3 +/* 8023925C 002361BC 38 61 00 10 */ addi r3, r1, 0x10 +/* 80239260 002361C0 C4 45 66 A0 */ lfsu f2, skZero3f@l(r5) +/* 80239264 002361C4 A1 04 00 00 */ lhz r8, 0(r4) +/* 80239268 002361C8 38 81 00 14 */ addi r4, r1, 0x14 +/* 8023926C 002361CC C0 25 00 04 */ lfs f1, 4(r5) +/* 80239270 002361D0 C0 05 00 08 */ lfs f0, 8(r5) +/* 80239274 002361D4 38 A1 00 18 */ addi r5, r1, 0x18 +/* 80239278 002361D8 B1 01 00 28 */ sth r8, 0x28(r1) +/* 8023927C 002361DC 90 E1 00 2C */ stw r7, 0x2c(r1) +/* 80239280 002361E0 90 E1 00 30 */ stw r7, 0x30(r1) +/* 80239284 002361E4 90 E1 00 34 */ stw r7, 0x34(r1) +/* 80239288 002361E8 90 E1 00 38 */ stw r7, 0x38(r1) +/* 8023928C 002361EC 90 E1 00 3C */ stw r7, 0x3c(r1) +/* 80239290 002361F0 90 01 00 40 */ stw r0, 0x40(r1) +/* 80239294 002361F4 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 80239298 002361F8 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 8023929C 002361FC D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 802392A0 00236200 80 1F 00 5C */ lwz r0, 0x5c(r31) +/* 802392A4 00236204 80 FF 00 64 */ lwz r7, 0x64(r31) +/* 802392A8 00236208 1C 00 00 28 */ mulli r0, r0, 0x28 +/* 802392AC 0023620C B1 01 00 08 */ sth r8, 8(r1) +/* 802392B0 00236210 7C E7 02 14 */ add r7, r7, r0 +/* 802392B4 00236214 90 E1 00 20 */ stw r7, 0x20(r1) +/* 802392B8 00236218 80 1F 00 64 */ lwz r0, 0x64(r31) +/* 802392BC 0023621C 90 E1 00 1C */ stw r7, 0x1c(r1) +/* 802392C0 00236220 90 01 00 24 */ stw r0, 0x24(r1) +/* 802392C4 00236224 90 E1 00 18 */ stw r7, 0x18(r1) +/* 802392C8 00236228 90 01 00 14 */ stw r0, 0x14(r1) +/* 802392CC 0023622C 48 00 16 95 */ bl "lower_bound14const_iterator,11CTeamAiRole>__4rstlFQ34rstl46list<11CTeamAiRole,Q24rstl17rmemory_allocator>14iteratorQ34rstl46list<11CTeamAiRole,Q24rstl17rmemory_allocator>14iteratorRC11CTeamAiRole" +/* 802392D0 00236230 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 802392D4 00236234 38 80 00 00 */ li r4, 0 +/* 802392D8 00236238 80 01 00 20 */ lwz r0, 0x20(r1) +/* 802392DC 0023623C 90 A1 00 0C */ stw r5, 0xc(r1) +/* 802392E0 00236240 7C 05 00 40 */ cmplw r5, r0 +/* 802392E4 00236244 41 82 00 20 */ beq lbl_80239304 +/* 802392E8 00236248 A0 61 00 28 */ lhz r3, 0x28(r1) +/* 802392EC 0023624C A0 05 00 00 */ lhz r0, 0(r5) +/* 802392F0 00236250 54 63 05 BE */ clrlwi r3, r3, 0x16 +/* 802392F4 00236254 54 00 05 BE */ clrlwi r0, r0, 0x16 +/* 802392F8 00236258 7C 03 00 40 */ cmplw r3, r0 +/* 802392FC 0023625C 41 80 00 08 */ blt lbl_80239304 +/* 80239300 00236260 38 80 00 01 */ li r4, 1 +lbl_80239304: +/* 80239304 00236264 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 80239308 00236268 38 81 00 20 */ addi r4, r1, 0x20 +/* 8023930C 0023626C 41 82 00 08 */ beq lbl_80239314 +/* 80239310 00236270 38 81 00 0C */ addi r4, r1, 0xc +lbl_80239314: +/* 80239314 00236274 80 1F 00 5C */ lwz r0, 0x5c(r31) +/* 80239318 00236278 80 7F 00 64 */ lwz r3, 0x64(r31) +/* 8023931C 0023627C 1C 00 00 28 */ mulli r0, r0, 0x28 +/* 80239320 00236280 80 84 00 00 */ lwz r4, 0(r4) +/* 80239324 00236284 7C 03 02 14 */ add r0, r3, r0 +/* 80239328 00236288 7C 04 00 40 */ cmplw r4, r0 +/* 8023932C 0023628C 41 82 00 0C */ beq lbl_80239338 +/* 80239330 00236290 38 00 00 00 */ li r0, 0 +/* 80239334 00236294 90 04 00 10 */ stw r0, 0x10(r4) +lbl_80239338: +/* 80239338 00236298 80 01 00 64 */ lwz r0, 0x64(r1) +/* 8023933C 0023629C 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 80239340 002362A0 7C 08 03 A6 */ mtlr r0 +/* 80239344 002362A4 38 21 00 60 */ addi r1, r1, 0x60 +/* 80239348 002362A8 4E 80 00 20 */ blr + +.global GetTeamAiRole__10CTeamAiMgrCF9TUniqueId +GetTeamAiRole__10CTeamAiMgrCF9TUniqueId: +/* 8023934C 002362AC 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80239350 002362B0 7C 08 02 A6 */ mflr r0 +/* 80239354 002362B4 39 20 FF FF */ li r9, -1 +/* 80239358 002362B8 39 00 00 00 */ li r8, 0 +/* 8023935C 002362BC 90 01 00 64 */ stw r0, 0x64(r1) +/* 80239360 002362C0 38 C1 00 28 */ addi r6, r1, 0x28 +/* 80239364 002362C4 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 80239368 002362C8 7C 7F 1B 78 */ mr r31, r3 +/* 8023936C 002362CC 80 03 00 5C */ lwz r0, 0x5c(r3) +/* 80239370 002362D0 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80239374 002362D4 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 80239378 002362D8 A1 44 00 00 */ lhz r10, 0(r4) +/* 8023937C 002362DC 1C 00 00 28 */ mulli r0, r0, 0x28 +/* 80239380 002362E0 80 FF 00 64 */ lwz r7, 0x64(r31) +/* 80239384 002362E4 C0 45 00 00 */ lfs f2, 0(r5) +/* 80239388 002362E8 38 61 00 10 */ addi r3, r1, 0x10 +/* 8023938C 002362EC C0 25 00 04 */ lfs f1, 4(r5) +/* 80239390 002362F0 38 81 00 14 */ addi r4, r1, 0x14 +/* 80239394 002362F4 7C 07 02 14 */ add r0, r7, r0 +/* 80239398 002362F8 C0 05 00 08 */ lfs f0, 8(r5) +/* 8023939C 002362FC B1 41 00 08 */ sth r10, 8(r1) +/* 802393A0 00236300 38 A1 00 18 */ addi r5, r1, 0x18 +/* 802393A4 00236304 B1 41 00 28 */ sth r10, 0x28(r1) +/* 802393A8 00236308 91 21 00 2C */ stw r9, 0x2c(r1) +/* 802393AC 0023630C 91 21 00 30 */ stw r9, 0x30(r1) +/* 802393B0 00236310 91 21 00 34 */ stw r9, 0x34(r1) +/* 802393B4 00236314 91 21 00 38 */ stw r9, 0x38(r1) +/* 802393B8 00236318 91 21 00 3C */ stw r9, 0x3c(r1) +/* 802393BC 0023631C 91 01 00 40 */ stw r8, 0x40(r1) +/* 802393C0 00236320 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 802393C4 00236324 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 802393C8 00236328 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 802393CC 0023632C 90 01 00 1C */ stw r0, 0x1c(r1) +/* 802393D0 00236330 90 01 00 20 */ stw r0, 0x20(r1) +/* 802393D4 00236334 90 E1 00 24 */ stw r7, 0x24(r1) +/* 802393D8 00236338 90 01 00 18 */ stw r0, 0x18(r1) +/* 802393DC 0023633C 90 E1 00 14 */ stw r7, 0x14(r1) +/* 802393E0 00236340 48 00 16 49 */ bl "lower_bound_const8iterator,11CTeamAiRole>__4rstlFQ34rstl46list<11CTeamAiRole,Q24rstl17rmemory_allocator>8const_iteratorQ34rstl46list<11CTeamAiRole,Q24rstl17rmemory_allocator>8const_iteratorRC11CTeamAiRole" +/* 802393E4 00236344 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 802393E8 00236348 38 80 00 00 */ li r4, 0 +/* 802393EC 0023634C 80 01 00 20 */ lwz r0, 0x20(r1) +/* 802393F0 00236350 90 A1 00 0C */ stw r5, 0xc(r1) +/* 802393F4 00236354 7C 05 00 40 */ cmplw r5, r0 +/* 802393F8 00236358 41 82 00 20 */ beq lbl_80239418 +/* 802393FC 0023635C A0 61 00 28 */ lhz r3, 0x28(r1) +/* 80239400 00236360 A0 05 00 00 */ lhz r0, 0(r5) +/* 80239404 00236364 54 63 05 BE */ clrlwi r3, r3, 0x16 +/* 80239408 00236368 54 00 05 BE */ clrlwi r0, r0, 0x16 +/* 8023940C 0023636C 7C 03 00 40 */ cmplw r3, r0 +/* 80239410 00236370 41 80 00 08 */ blt lbl_80239418 +/* 80239414 00236374 38 80 00 01 */ li r4, 1 +lbl_80239418: +/* 80239418 00236378 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 8023941C 0023637C 38 61 00 20 */ addi r3, r1, 0x20 +/* 80239420 00236380 41 82 00 08 */ beq lbl_80239428 +/* 80239424 00236384 38 61 00 0C */ addi r3, r1, 0xc +lbl_80239428: +/* 80239428 00236388 80 1F 00 5C */ lwz r0, 0x5c(r31) +/* 8023942C 0023638C 80 9F 00 64 */ lwz r4, 0x64(r31) +/* 80239430 00236390 1C 00 00 28 */ mulli r0, r0, 0x28 +/* 80239434 00236394 80 63 00 00 */ lwz r3, 0(r3) +/* 80239438 00236398 7C 04 02 14 */ add r0, r4, r0 +/* 8023943C 0023639C 7C 03 00 40 */ cmplw r3, r0 +/* 80239440 002363A0 41 82 00 08 */ beq lbl_80239448 +/* 80239444 002363A4 48 00 00 08 */ b lbl_8023944C +lbl_80239448: +/* 80239448 002363A8 38 60 00 00 */ li r3, 0 +lbl_8023944C: +/* 8023944C 002363AC 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80239450 002363B0 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 80239454 002363B4 7C 08 03 A6 */ mtlr r0 +/* 80239458 002363B8 38 21 00 60 */ addi r1, r1, 0x60 +/* 8023945C 002363BC 4E 80 00 20 */ blr + +.global GetNumAssignedOfRole__10CTeamAiMgrCFQ211CTeamAiRole11ETeamAiRole +GetNumAssignedOfRole__10CTeamAiMgrCFQ211CTeamAiRole11ETeamAiRole: +/* 80239460 002363C0 80 03 00 5C */ lwz r0, 0x5c(r3) +/* 80239464 002363C4 38 C0 00 00 */ li r6, 0 +/* 80239468 002363C8 80 A3 00 64 */ lwz r5, 0x64(r3) +/* 8023946C 002363CC 1C 00 00 28 */ mulli r0, r0, 0x28 +/* 80239470 002363D0 7C 65 02 14 */ add r3, r5, r0 +/* 80239474 002363D4 48 00 00 18 */ b lbl_8023948C +lbl_80239478: +/* 80239478 002363D8 80 05 00 10 */ lwz r0, 0x10(r5) +/* 8023947C 002363DC 7C 04 00 00 */ cmpw r4, r0 +/* 80239480 002363E0 40 82 00 08 */ bne lbl_80239488 +/* 80239484 002363E4 38 C6 00 01 */ addi r6, r6, 1 +lbl_80239488: +/* 80239488 002363E8 38 A5 00 28 */ addi r5, r5, 0x28 +lbl_8023948C: +/* 8023948C 002363EC 7C 05 18 40 */ cmplw r5, r3 +/* 80239490 002363F0 40 82 FF E8 */ bne lbl_80239478 +/* 80239494 002363F4 7C C3 33 78 */ mr r3, r6 +/* 80239498 002363F8 4E 80 00 20 */ blr + +.global GetNumAssignedAiRoles__10CTeamAiMgrCFv +GetNumAssignedAiRoles__10CTeamAiMgrCFv: +/* 8023949C 002363FC 80 03 00 5C */ lwz r0, 0x5c(r3) +/* 802394A0 00236400 38 C0 00 00 */ li r6, 0 +/* 802394A4 00236404 80 83 00 64 */ lwz r4, 0x64(r3) +/* 802394A8 00236408 1C 00 00 28 */ mulli r0, r0, 0x28 +/* 802394AC 0023640C 7C 64 02 14 */ add r3, r4, r0 +/* 802394B0 00236410 48 00 00 34 */ b lbl_802394E4 +lbl_802394B4: +/* 802394B4 00236414 80 A4 00 10 */ lwz r5, 0x10(r4) +/* 802394B8 00236418 38 00 00 00 */ li r0, 0 +/* 802394BC 0023641C 2C 05 00 00 */ cmpwi r5, 0 +/* 802394C0 00236420 41 82 00 14 */ beq lbl_802394D4 +/* 802394C4 00236424 41 80 00 10 */ blt lbl_802394D4 +/* 802394C8 00236428 2C 05 00 04 */ cmpwi r5, 4 +/* 802394CC 0023642C 41 81 00 08 */ bgt lbl_802394D4 +/* 802394D0 00236430 38 00 00 01 */ li r0, 1 +lbl_802394D4: +/* 802394D4 00236434 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 802394D8 00236438 41 82 00 08 */ beq lbl_802394E0 +/* 802394DC 0023643C 38 C6 00 01 */ addi r6, r6, 1 +lbl_802394E0: +/* 802394E0 00236440 38 84 00 28 */ addi r4, r4, 0x28 +lbl_802394E4: +/* 802394E4 00236444 7C 04 18 40 */ cmplw r4, r3 +/* 802394E8 00236448 40 82 FF CC */ bne lbl_802394B4 +/* 802394EC 0023644C 7C C3 33 78 */ mr r3, r6 +/* 802394F0 00236450 4E 80 00 20 */ blr + +.global RemoveTeamAiRole__10CTeamAiMgrF9TUniqueId +RemoveTeamAiRole__10CTeamAiMgrF9TUniqueId: +/* 802394F4 00236454 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 802394F8 00236458 7C 08 02 A6 */ mflr r0 +/* 802394FC 0023645C 90 01 00 84 */ stw r0, 0x84(r1) +/* 80239500 00236460 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 80239504 00236464 7C 7F 1B 78 */ mr r31, r3 +/* 80239508 00236468 93 C1 00 78 */ stw r30, 0x78(r1) +/* 8023950C 0023646C 7C 9E 23 78 */ mr r30, r4 +/* 80239510 00236470 A0 04 00 00 */ lhz r0, 0(r4) +/* 80239514 00236474 38 81 00 18 */ addi r4, r1, 0x18 +/* 80239518 00236478 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8023951C 0023647C 4B FF FA 09 */ bl IsMeleeAttacker__10CTeamAiMgrCF9TUniqueId +/* 80239520 00236480 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80239524 00236484 41 82 00 18 */ beq lbl_8023953C +/* 80239528 00236488 A0 1E 00 00 */ lhz r0, 0(r30) +/* 8023952C 0023648C 7F E3 FB 78 */ mr r3, r31 +/* 80239530 00236490 38 81 00 14 */ addi r4, r1, 0x14 +/* 80239534 00236494 B0 01 00 14 */ sth r0, 0x14(r1) +/* 80239538 00236498 4B FF F6 95 */ bl RemoveMeleeAttacker__10CTeamAiMgrF9TUniqueId +lbl_8023953C: +/* 8023953C 0023649C A0 1E 00 00 */ lhz r0, 0(r30) +/* 80239540 002364A0 7F E3 FB 78 */ mr r3, r31 +/* 80239544 002364A4 38 81 00 10 */ addi r4, r1, 0x10 +/* 80239548 002364A8 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8023954C 002364AC 4B FF F5 B5 */ bl IsProjectileAttacker__10CTeamAiMgrCF9TUniqueId +/* 80239550 002364B0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80239554 002364B4 41 82 00 18 */ beq lbl_8023956C +/* 80239558 002364B8 A0 1E 00 00 */ lhz r0, 0(r30) +/* 8023955C 002364BC 7F E3 FB 78 */ mr r3, r31 +/* 80239560 002364C0 38 81 00 0C */ addi r4, r1, 0xc +/* 80239564 002364C4 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80239568 002364C8 4B FF EF 7D */ bl RemoveProjectileAttacker__10CTeamAiMgrF9TUniqueId +lbl_8023956C: +/* 8023956C 002364CC 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80239570 002364D0 38 E0 FF FF */ li r7, -1 +/* 80239574 002364D4 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 80239578 002364D8 A1 1E 00 00 */ lhz r8, 0(r30) +/* 8023957C 002364DC C0 44 00 00 */ lfs f2, 0(r4) +/* 80239580 002364E0 38 00 00 00 */ li r0, 0 +/* 80239584 002364E4 C0 24 00 04 */ lfs f1, 4(r4) +/* 80239588 002364E8 38 61 00 20 */ addi r3, r1, 0x20 +/* 8023958C 002364EC C0 04 00 08 */ lfs f0, 8(r4) +/* 80239590 002364F0 38 81 00 24 */ addi r4, r1, 0x24 +/* 80239594 002364F4 B1 01 00 44 */ sth r8, 0x44(r1) +/* 80239598 002364F8 38 A1 00 28 */ addi r5, r1, 0x28 +/* 8023959C 002364FC 38 C1 00 44 */ addi r6, r1, 0x44 +/* 802395A0 00236500 90 E1 00 48 */ stw r7, 0x48(r1) +/* 802395A4 00236504 90 E1 00 4C */ stw r7, 0x4c(r1) +/* 802395A8 00236508 90 E1 00 50 */ stw r7, 0x50(r1) +/* 802395AC 0023650C 90 E1 00 54 */ stw r7, 0x54(r1) +/* 802395B0 00236510 90 E1 00 58 */ stw r7, 0x58(r1) +/* 802395B4 00236514 90 01 00 5C */ stw r0, 0x5c(r1) +/* 802395B8 00236518 D0 41 00 60 */ stfs f2, 0x60(r1) +/* 802395BC 0023651C D0 21 00 64 */ stfs f1, 0x64(r1) +/* 802395C0 00236520 D0 01 00 68 */ stfs f0, 0x68(r1) +/* 802395C4 00236524 80 1F 00 5C */ lwz r0, 0x5c(r31) +/* 802395C8 00236528 80 FF 00 64 */ lwz r7, 0x64(r31) +/* 802395CC 0023652C 1C 00 00 28 */ mulli r0, r0, 0x28 +/* 802395D0 00236530 B1 01 00 08 */ sth r8, 8(r1) +/* 802395D4 00236534 7C E7 02 14 */ add r7, r7, r0 +/* 802395D8 00236538 90 E1 00 38 */ stw r7, 0x38(r1) +/* 802395DC 0023653C 80 1F 00 64 */ lwz r0, 0x64(r31) +/* 802395E0 00236540 90 E1 00 34 */ stw r7, 0x34(r1) +/* 802395E4 00236544 90 01 00 3C */ stw r0, 0x3c(r1) +/* 802395E8 00236548 90 E1 00 28 */ stw r7, 0x28(r1) +/* 802395EC 0023654C 90 01 00 24 */ stw r0, 0x24(r1) +/* 802395F0 00236550 48 00 13 71 */ bl "lower_bound14const_iterator,11CTeamAiRole>__4rstlFQ34rstl46list<11CTeamAiRole,Q24rstl17rmemory_allocator>14iteratorQ34rstl46list<11CTeamAiRole,Q24rstl17rmemory_allocator>14iteratorRC11CTeamAiRole" +/* 802395F4 00236554 80 A1 00 20 */ lwz r5, 0x20(r1) +/* 802395F8 00236558 38 80 00 00 */ li r4, 0 +/* 802395FC 0023655C 80 01 00 38 */ lwz r0, 0x38(r1) +/* 80239600 00236560 90 A1 00 1C */ stw r5, 0x1c(r1) +/* 80239604 00236564 7C 05 00 40 */ cmplw r5, r0 +/* 80239608 00236568 41 82 00 20 */ beq lbl_80239628 +/* 8023960C 0023656C A0 61 00 44 */ lhz r3, 0x44(r1) +/* 80239610 00236570 A0 05 00 00 */ lhz r0, 0(r5) +/* 80239614 00236574 54 63 05 BE */ clrlwi r3, r3, 0x16 +/* 80239618 00236578 54 00 05 BE */ clrlwi r0, r0, 0x16 +/* 8023961C 0023657C 7C 03 00 40 */ cmplw r3, r0 +/* 80239620 00236580 41 80 00 08 */ blt lbl_80239628 +/* 80239624 00236584 38 80 00 01 */ li r4, 1 +lbl_80239628: +/* 80239628 00236588 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 8023962C 0023658C 38 61 00 38 */ addi r3, r1, 0x38 +/* 80239630 00236590 41 82 00 08 */ beq lbl_80239638 +/* 80239634 00236594 38 61 00 1C */ addi r3, r1, 0x1c +lbl_80239638: +/* 80239638 00236598 80 03 00 00 */ lwz r0, 0(r3) +/* 8023963C 0023659C 38 61 00 30 */ addi r3, r1, 0x30 +/* 80239640 002365A0 38 9F 00 58 */ addi r4, r31, 0x58 +/* 80239644 002365A4 38 A1 00 2C */ addi r5, r1, 0x2c +/* 80239648 002365A8 90 01 00 40 */ stw r0, 0x40(r1) +/* 8023964C 002365AC 90 01 00 2C */ stw r0, 0x2c(r1) +/* 80239650 002365B0 48 00 00 25 */ bl sub_80239674 +/* 80239654 002365B4 7F E3 FB 78 */ mr r3, r31 +/* 80239658 002365B8 4B FF E6 49 */ bl UpdateTeamCaptain__10CTeamAiMgrFv +/* 8023965C 002365BC 80 01 00 84 */ lwz r0, 0x84(r1) +/* 80239660 002365C0 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 80239664 002365C4 83 C1 00 78 */ lwz r30, 0x78(r1) +/* 80239668 002365C8 7C 08 03 A6 */ mtlr r0 +/* 8023966C 002365CC 38 21 00 80 */ addi r1, r1, 0x80 +/* 80239670 002365D0 4E 80 00 20 */ blr + +.global sub_80239674 +sub_80239674: +/* 80239674 002365D4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80239678 002365D8 7C 08 02 A6 */ mflr r0 +/* 8023967C 002365DC 90 01 00 24 */ stw r0, 0x24(r1) +/* 80239680 002365E0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80239684 002365E4 7C 7F 1B 78 */ mr r31, r3 +/* 80239688 002365E8 80 C5 00 00 */ lwz r6, 0(r5) +/* 8023968C 002365EC 80 05 00 00 */ lwz r0, 0(r5) +/* 80239690 002365F0 38 A1 00 10 */ addi r5, r1, 0x10 +/* 80239694 002365F4 38 E6 00 28 */ addi r7, r6, 0x28 +/* 80239698 002365F8 38 C1 00 0C */ addi r6, r1, 0xc +/* 8023969C 002365FC 90 E1 00 08 */ stw r7, 8(r1) +/* 802396A0 00236600 90 E1 00 0C */ stw r7, 0xc(r1) +/* 802396A4 00236604 90 01 00 10 */ stw r0, 0x10(r1) +/* 802396A8 00236608 48 00 00 19 */ bl sub_802396c0 +/* 802396AC 0023660C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 802396B0 00236610 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 802396B4 00236614 7C 08 03 A6 */ mtlr r0 +/* 802396B8 00236618 38 21 00 20 */ addi r1, r1, 0x20 +/* 802396BC 0023661C 4E 80 00 20 */ blr + +.global sub_802396c0 +sub_802396c0: +/* 802396C0 00236620 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 802396C4 00236624 80 E5 00 00 */ lwz r7, 0(r5) +/* 802396C8 00236628 80 06 00 00 */ lwz r0, 0(r6) +/* 802396CC 0023662C 90 E1 00 0C */ stw r7, 0xc(r1) +/* 802396D0 00236630 90 01 00 08 */ stw r0, 8(r1) +/* 802396D4 00236634 48 00 00 08 */ b lbl_802396DC +lbl_802396D8: +/* 802396D8 00236638 38 E7 00 28 */ addi r7, r7, 0x28 +lbl_802396DC: +/* 802396DC 0023663C 7C 07 00 40 */ cmplw r7, r0 +/* 802396E0 00236640 40 82 FF F8 */ bne lbl_802396D8 +/* 802396E4 00236644 81 24 00 0C */ lwz r9, 0xc(r4) +/* 802396E8 00236648 3C E0 66 66 */ lis r7, 0x66666667@ha +/* 802396EC 0023664C 80 05 00 00 */ lwz r0, 0(r5) +/* 802396F0 00236650 38 E7 66 67 */ addi r7, r7, 0x66666667@l +/* 802396F4 00236654 81 06 00 00 */ lwz r8, 0(r6) +/* 802396F8 00236658 7C 09 00 50 */ subf r0, r9, r0 +/* 802396FC 0023665C 7C 07 00 96 */ mulhw r0, r7, r0 +/* 80239700 00236660 7C 00 26 70 */ srawi r0, r0, 4 +/* 80239704 00236664 54 06 0F FE */ srwi r6, r0, 0x1f +/* 80239708 00236668 7C C0 32 14 */ add r6, r0, r6 +/* 8023970C 0023666C 1C 06 00 28 */ mulli r0, r6, 0x28 +/* 80239710 00236670 7C CA 33 78 */ mr r10, r6 +/* 80239714 00236674 7C E9 02 14 */ add r7, r9, r0 +/* 80239718 00236678 48 00 00 68 */ b lbl_80239780 +lbl_8023971C: +/* 8023971C 0023667C 28 07 00 00 */ cmplwi r7, 0 +/* 80239720 00236680 41 82 00 54 */ beq lbl_80239774 +/* 80239724 00236684 A0 08 00 00 */ lhz r0, 0(r8) +/* 80239728 00236688 B0 07 00 00 */ sth r0, 0(r7) +/* 8023972C 0023668C 80 08 00 04 */ lwz r0, 4(r8) +/* 80239730 00236690 90 07 00 04 */ stw r0, 4(r7) +/* 80239734 00236694 80 08 00 08 */ lwz r0, 8(r8) +/* 80239738 00236698 90 07 00 08 */ stw r0, 8(r7) +/* 8023973C 0023669C 80 08 00 0C */ lwz r0, 0xc(r8) +/* 80239740 002366A0 90 07 00 0C */ stw r0, 0xc(r7) +/* 80239744 002366A4 80 08 00 10 */ lwz r0, 0x10(r8) +/* 80239748 002366A8 90 07 00 10 */ stw r0, 0x10(r7) +/* 8023974C 002366AC 80 08 00 14 */ lwz r0, 0x14(r8) +/* 80239750 002366B0 90 07 00 14 */ stw r0, 0x14(r7) +/* 80239754 002366B4 80 08 00 18 */ lwz r0, 0x18(r8) +/* 80239758 002366B8 90 07 00 18 */ stw r0, 0x18(r7) +/* 8023975C 002366BC C0 08 00 1C */ lfs f0, 0x1c(r8) +/* 80239760 002366C0 D0 07 00 1C */ stfs f0, 0x1c(r7) +/* 80239764 002366C4 C0 08 00 20 */ lfs f0, 0x20(r8) +/* 80239768 002366C8 D0 07 00 20 */ stfs f0, 0x20(r7) +/* 8023976C 002366CC C0 08 00 24 */ lfs f0, 0x24(r8) +/* 80239770 002366D0 D0 07 00 24 */ stfs f0, 0x24(r7) +lbl_80239774: +/* 80239774 002366D4 38 E7 00 28 */ addi r7, r7, 0x28 +/* 80239778 002366D8 39 4A 00 01 */ addi r10, r10, 1 +/* 8023977C 002366DC 39 08 00 28 */ addi r8, r8, 0x28 +lbl_80239780: +/* 80239780 002366E0 80 04 00 04 */ lwz r0, 4(r4) +/* 80239784 002366E4 80 C4 00 0C */ lwz r6, 0xc(r4) +/* 80239788 002366E8 1C 00 00 28 */ mulli r0, r0, 0x28 +/* 8023978C 002366EC 7C 06 02 14 */ add r0, r6, r0 +/* 80239790 002366F0 7C 08 00 40 */ cmplw r8, r0 +/* 80239794 002366F4 40 82 FF 88 */ bne lbl_8023971C +/* 80239798 002366F8 91 44 00 04 */ stw r10, 4(r4) +/* 8023979C 002366FC 80 05 00 00 */ lwz r0, 0(r5) +/* 802397A0 00236700 90 03 00 00 */ stw r0, 0(r3) +/* 802397A4 00236704 38 21 00 10 */ addi r1, r1, 0x10 +/* 802397A8 00236708 4E 80 00 20 */ blr + +.global AssignTeamAiRole__10CTeamAiMgrFRC3CAiiii +AssignTeamAiRole__10CTeamAiMgrFRC3CAiiii: +/* 802397AC 0023670C 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 802397B0 00236710 7C 08 02 A6 */ mflr r0 +/* 802397B4 00236714 3D 00 80 5A */ lis r8, skZero3f@ha +/* 802397B8 00236718 90 01 00 84 */ stw r0, 0x84(r1) +/* 802397BC 0023671C 38 00 00 00 */ li r0, 0 +/* 802397C0 00236720 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 802397C4 00236724 7C 7F 1B 78 */ mr r31, r3 +/* 802397C8 00236728 38 61 00 14 */ addi r3, r1, 0x14 +/* 802397CC 0023672C A1 24 00 08 */ lhz r9, 8(r4) +/* 802397D0 00236730 38 88 66 A0 */ addi r4, r8, skZero3f@l +/* 802397D4 00236734 C0 44 00 00 */ lfs f2, 0(r4) +/* 802397D8 00236738 39 00 FF FF */ li r8, -1 +/* 802397DC 0023673C C0 24 00 04 */ lfs f1, 4(r4) +/* 802397E0 00236740 C0 04 00 08 */ lfs f0, 8(r4) +/* 802397E4 00236744 38 81 00 18 */ addi r4, r1, 0x18 +/* 802397E8 00236748 90 A1 00 50 */ stw r5, 0x50(r1) +/* 802397EC 0023674C 38 A1 00 1C */ addi r5, r1, 0x1c +/* 802397F0 00236750 90 C1 00 54 */ stw r6, 0x54(r1) +/* 802397F4 00236754 38 C1 00 4C */ addi r6, r1, 0x4c +/* 802397F8 00236758 B1 21 00 4C */ sth r9, 0x4c(r1) +/* 802397FC 0023675C 90 E1 00 58 */ stw r7, 0x58(r1) +/* 80239800 00236760 91 01 00 5C */ stw r8, 0x5c(r1) +/* 80239804 00236764 91 01 00 60 */ stw r8, 0x60(r1) +/* 80239808 00236768 90 01 00 64 */ stw r0, 0x64(r1) +/* 8023980C 0023676C D0 41 00 68 */ stfs f2, 0x68(r1) +/* 80239810 00236770 D0 21 00 6C */ stfs f1, 0x6c(r1) +/* 80239814 00236774 D0 01 00 70 */ stfs f0, 0x70(r1) +/* 80239818 00236778 80 1F 00 5C */ lwz r0, 0x5c(r31) +/* 8023981C 0023677C 80 FF 00 64 */ lwz r7, 0x64(r31) +/* 80239820 00236780 1C 00 00 28 */ mulli r0, r0, 0x28 +/* 80239824 00236784 B1 21 00 08 */ sth r9, 8(r1) +/* 80239828 00236788 B1 21 00 0C */ sth r9, 0xc(r1) +/* 8023982C 0023678C 7C E7 02 14 */ add r7, r7, r0 +/* 80239830 00236790 90 E1 00 40 */ stw r7, 0x40(r1) +/* 80239834 00236794 80 1F 00 64 */ lwz r0, 0x64(r31) +/* 80239838 00236798 90 E1 00 3C */ stw r7, 0x3c(r1) +/* 8023983C 0023679C 90 01 00 44 */ stw r0, 0x44(r1) +/* 80239840 002367A0 90 E1 00 1C */ stw r7, 0x1c(r1) +/* 80239844 002367A4 90 01 00 18 */ stw r0, 0x18(r1) +/* 80239848 002367A8 48 00 11 19 */ bl "lower_bound14const_iterator,11CTeamAiRole>__4rstlFQ34rstl46list<11CTeamAiRole,Q24rstl17rmemory_allocator>14iteratorQ34rstl46list<11CTeamAiRole,Q24rstl17rmemory_allocator>14iteratorRC11CTeamAiRole" +/* 8023984C 002367AC 80 A1 00 14 */ lwz r5, 0x14(r1) +/* 80239850 002367B0 38 80 00 00 */ li r4, 0 +/* 80239854 002367B4 80 01 00 40 */ lwz r0, 0x40(r1) +/* 80239858 002367B8 90 A1 00 10 */ stw r5, 0x10(r1) +/* 8023985C 002367BC 7C 05 00 40 */ cmplw r5, r0 +/* 80239860 002367C0 41 82 00 20 */ beq lbl_80239880 +/* 80239864 002367C4 A0 61 00 4C */ lhz r3, 0x4c(r1) +/* 80239868 002367C8 A0 05 00 00 */ lhz r0, 0(r5) +/* 8023986C 002367CC 54 63 05 BE */ clrlwi r3, r3, 0x16 +/* 80239870 002367D0 54 00 05 BE */ clrlwi r0, r0, 0x16 +/* 80239874 002367D4 7C 03 00 40 */ cmplw r3, r0 +/* 80239878 002367D8 41 80 00 08 */ blt lbl_80239880 +/* 8023987C 002367DC 38 80 00 01 */ li r4, 1 +lbl_80239880: +/* 80239880 002367E0 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 80239884 002367E4 38 81 00 40 */ addi r4, r1, 0x40 +/* 80239888 002367E8 41 82 00 08 */ beq lbl_80239890 +/* 8023988C 002367EC 38 81 00 10 */ addi r4, r1, 0x10 +lbl_80239890: +/* 80239890 002367F0 80 BF 00 5C */ lwz r5, 0x5c(r31) +/* 80239894 002367F4 80 7F 00 64 */ lwz r3, 0x64(r31) +/* 80239898 002367F8 1C 05 00 28 */ mulli r0, r5, 0x28 +/* 8023989C 002367FC 80 84 00 00 */ lwz r4, 0(r4) +/* 802398A0 00236800 7C E3 02 14 */ add r7, r3, r0 +/* 802398A4 00236804 7C 04 38 40 */ cmplw r4, r7 +/* 802398A8 00236808 40 82 00 64 */ bne lbl_8023990C +/* 802398AC 0023680C 80 1F 00 60 */ lwz r0, 0x60(r31) +/* 802398B0 00236810 7C 05 00 00 */ cmpw r5, r0 +/* 802398B4 00236814 40 80 00 50 */ bge lbl_80239904 +/* 802398B8 00236818 90 E1 00 2C */ stw r7, 0x2c(r1) +/* 802398BC 0023681C 38 61 00 38 */ addi r3, r1, 0x38 +/* 802398C0 00236820 38 81 00 34 */ addi r4, r1, 0x34 +/* 802398C4 00236824 38 A1 00 2C */ addi r5, r1, 0x2c +/* 802398C8 00236828 80 1F 00 64 */ lwz r0, 0x64(r31) +/* 802398CC 0023682C 38 C1 00 4C */ addi r6, r1, 0x4c +/* 802398D0 00236830 90 E1 00 28 */ stw r7, 0x28(r1) +/* 802398D4 00236834 90 01 00 30 */ stw r0, 0x30(r1) +/* 802398D8 00236838 90 01 00 34 */ stw r0, 0x34(r1) +/* 802398DC 0023683C 48 00 10 85 */ bl "lower_bound14const_iterator,11CTeamAiRole>__4rstlFQ34rstl46list<11CTeamAiRole,Q24rstl17rmemory_allocator>14iteratorQ34rstl46list<11CTeamAiRole,Q24rstl17rmemory_allocator>14iteratorRC11CTeamAiRole" +/* 802398E0 00236840 80 01 00 38 */ lwz r0, 0x38(r1) +/* 802398E4 00236844 38 61 00 24 */ addi r3, r1, 0x24 +/* 802398E8 00236848 38 9F 00 58 */ addi r4, r31, 0x58 +/* 802398EC 0023684C 38 A1 00 20 */ addi r5, r1, 0x20 +/* 802398F0 00236850 90 01 00 48 */ stw r0, 0x48(r1) +/* 802398F4 00236854 38 C1 00 4C */ addi r6, r1, 0x4c +/* 802398F8 00236858 90 01 00 20 */ stw r0, 0x20(r1) +/* 802398FC 0023685C 48 00 00 81 */ bl sub_8023997c +/* 80239900 00236860 48 00 00 5C */ b lbl_8023995C +lbl_80239904: +/* 80239904 00236864 38 60 00 00 */ li r3, 0 +/* 80239908 00236868 48 00 00 60 */ b lbl_80239968 +lbl_8023990C: +/* 8023990C 0023686C A0 01 00 4C */ lhz r0, 0x4c(r1) +/* 80239910 00236870 B0 04 00 00 */ sth r0, 0(r4) +/* 80239914 00236874 80 01 00 50 */ lwz r0, 0x50(r1) +/* 80239918 00236878 90 04 00 04 */ stw r0, 4(r4) +/* 8023991C 0023687C 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80239920 00236880 90 04 00 08 */ stw r0, 8(r4) +/* 80239924 00236884 80 01 00 58 */ lwz r0, 0x58(r1) +/* 80239928 00236888 90 04 00 0C */ stw r0, 0xc(r4) +/* 8023992C 0023688C 80 01 00 5C */ lwz r0, 0x5c(r1) +/* 80239930 00236890 90 04 00 10 */ stw r0, 0x10(r4) +/* 80239934 00236894 80 01 00 60 */ lwz r0, 0x60(r1) +/* 80239938 00236898 90 04 00 14 */ stw r0, 0x14(r4) +/* 8023993C 0023689C 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80239940 002368A0 90 04 00 18 */ stw r0, 0x18(r4) +/* 80239944 002368A4 80 61 00 68 */ lwz r3, 0x68(r1) +/* 80239948 002368A8 80 01 00 6C */ lwz r0, 0x6c(r1) +/* 8023994C 002368AC 90 64 00 1C */ stw r3, 0x1c(r4) +/* 80239950 002368B0 90 04 00 20 */ stw r0, 0x20(r4) +/* 80239954 002368B4 80 01 00 70 */ lwz r0, 0x70(r1) +/* 80239958 002368B8 90 04 00 24 */ stw r0, 0x24(r4) +lbl_8023995C: +/* 8023995C 002368BC 7F E3 FB 78 */ mr r3, r31 +/* 80239960 002368C0 4B FF E3 41 */ bl UpdateTeamCaptain__10CTeamAiMgrFv +/* 80239964 002368C4 38 60 00 01 */ li r3, 1 +lbl_80239968: +/* 80239968 002368C8 80 01 00 84 */ lwz r0, 0x84(r1) +/* 8023996C 002368CC 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 80239970 002368D0 7C 08 03 A6 */ mtlr r0 +/* 80239974 002368D4 38 21 00 80 */ addi r1, r1, 0x80 +/* 80239978 002368D8 4E 80 00 20 */ blr + +.global sub_8023997c +sub_8023997c: +/* 8023997C 002368DC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80239980 002368E0 7C 08 02 A6 */ mflr r0 +/* 80239984 002368E4 90 01 00 34 */ stw r0, 0x34(r1) +/* 80239988 002368E8 38 00 00 00 */ li r0, 0 +/* 8023998C 002368EC 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80239990 002368F0 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80239994 002368F4 7C 9E 23 78 */ mr r30, r4 +/* 80239998 002368F8 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8023999C 002368FC 7C 7D 1B 78 */ mr r29, r3 +/* 802399A0 00236900 7F C3 F3 78 */ mr r3, r30 +/* 802399A4 00236904 81 05 00 00 */ lwz r8, 0(r5) +/* 802399A8 00236908 80 A4 00 0C */ lwz r5, 0xc(r4) +/* 802399AC 0023690C 3C 80 66 66 */ lis r4, 0x66666667@ha +/* 802399B0 00236910 38 84 66 67 */ addi r4, r4, 0x66666667@l +/* 802399B4 00236914 90 C1 00 14 */ stw r6, 0x14(r1) +/* 802399B8 00236918 7C A5 40 50 */ subf r5, r5, r8 +/* 802399BC 0023691C 7C E4 28 96 */ mulhw r7, r4, r5 +/* 802399C0 00236920 90 C1 00 0C */ stw r6, 0xc(r1) +/* 802399C4 00236924 38 81 00 08 */ addi r4, r1, 8 +/* 802399C8 00236928 90 01 00 18 */ stw r0, 0x18(r1) +/* 802399CC 0023692C 38 C1 00 0C */ addi r6, r1, 0xc +/* 802399D0 00236930 38 A0 00 01 */ li r5, 1 +/* 802399D4 00236934 7C E7 26 70 */ srawi r7, r7, 4 +/* 802399D8 00236938 90 01 00 10 */ stw r0, 0x10(r1) +/* 802399DC 0023693C 54 E0 0F FE */ srwi r0, r7, 0x1f +/* 802399E0 00236940 91 01 00 08 */ stw r8, 8(r1) +/* 802399E4 00236944 7F E7 02 14 */ add r31, r7, r0 +/* 802399E8 00236948 48 00 00 31 */ bl sub_80239a18 +/* 802399EC 0023694C 1C 1F 00 28 */ mulli r0, r31, 0x28 +/* 802399F0 00236950 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 802399F4 00236954 7C 63 02 14 */ add r3, r3, r0 +/* 802399F8 00236958 90 7D 00 00 */ stw r3, 0(r29) +/* 802399FC 0023695C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80239A00 00236960 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80239A04 00236964 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80239A08 00236968 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 80239A0C 0023696C 7C 08 03 A6 */ mtlr r0 +/* 80239A10 00236970 38 21 00 30 */ addi r1, r1, 0x30 +/* 80239A14 00236974 4E 80 00 20 */ blr + +.global sub_80239a18 +sub_80239a18: +/* 80239A18 00236978 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80239A1C 0023697C 7C 08 02 A6 */ mflr r0 +/* 80239A20 00236980 90 01 00 34 */ stw r0, 0x34(r1) +/* 80239A24 00236984 BF 21 00 14 */ stmw r25, 0x14(r1) +/* 80239A28 00236988 7C 7A 1B 78 */ mr r26, r3 +/* 80239A2C 0023698C 7C BB 2B 78 */ mr r27, r5 +/* 80239A30 00236990 7C 99 23 78 */ mr r25, r4 +/* 80239A34 00236994 81 03 00 04 */ lwz r8, 4(r3) +/* 80239A38 00236998 80 63 00 08 */ lwz r3, 8(r3) +/* 80239A3C 0023699C 7C 88 DA 14 */ add r4, r8, r27 +/* 80239A40 002369A0 80 FA 00 0C */ lwz r7, 0xc(r26) +/* 80239A44 002369A4 7C 04 18 00 */ cmpw r4, r3 +/* 80239A48 002369A8 83 C6 00 00 */ lwz r30, 0(r6) +/* 80239A4C 002369AC 7C FD 3B 78 */ mr r29, r7 +/* 80239A50 002369B0 41 81 01 40 */ bgt lbl_80239B90 +/* 80239A54 002369B4 80 19 00 00 */ lwz r0, 0(r25) +/* 80239A58 002369B8 3C 60 66 66 */ lis r3, 0x66666667@ha +/* 80239A5C 002369BC 38 63 66 67 */ addi r3, r3, 0x66666667@l +/* 80239A60 002369C0 7C 07 00 50 */ subf r0, r7, r0 +/* 80239A64 002369C4 7C 03 00 96 */ mulhw r0, r3, r0 +/* 80239A68 002369C8 7C 00 26 70 */ srawi r0, r0, 4 +/* 80239A6C 002369CC 54 03 0F FE */ srwi r3, r0, 0x1f +/* 80239A70 002369D0 7C A0 1A 14 */ add r5, r0, r3 +/* 80239A74 002369D4 7C 65 40 50 */ subf r3, r5, r8 +/* 80239A78 002369D8 35 03 FF FF */ addic. r8, r3, -1 +/* 80239A7C 002369DC 1C 65 00 28 */ mulli r3, r5, 0x28 +/* 80239A80 002369E0 38 08 00 01 */ addi r0, r8, 1 +/* 80239A84 002369E4 7C C7 1A 14 */ add r6, r7, r3 +/* 80239A88 002369E8 1C 9B 00 28 */ mulli r4, r27, 0x28 +/* 80239A8C 002369EC 1C 68 00 28 */ mulli r3, r8, 0x28 +/* 80239A90 002369F0 7C 84 1A 14 */ add r4, r4, r3 +/* 80239A94 002369F4 7C 86 22 14 */ add r4, r6, r4 +/* 80239A98 002369F8 7C 09 03 A6 */ mtctr r0 +/* 80239A9C 002369FC 41 80 00 78 */ blt lbl_80239B14 +lbl_80239AA0: +/* 80239AA0 00236A00 7C 05 42 14 */ add r0, r5, r8 +/* 80239AA4 00236A04 28 04 00 00 */ cmplwi r4, 0 +/* 80239AA8 00236A08 1C 00 00 28 */ mulli r0, r0, 0x28 +/* 80239AAC 00236A0C 80 7A 00 0C */ lwz r3, 0xc(r26) +/* 80239AB0 00236A10 7C 63 02 14 */ add r3, r3, r0 +/* 80239AB4 00236A14 41 82 00 54 */ beq lbl_80239B08 +/* 80239AB8 00236A18 A0 03 00 00 */ lhz r0, 0(r3) +/* 80239ABC 00236A1C B0 04 00 00 */ sth r0, 0(r4) +/* 80239AC0 00236A20 80 03 00 04 */ lwz r0, 4(r3) +/* 80239AC4 00236A24 90 04 00 04 */ stw r0, 4(r4) +/* 80239AC8 00236A28 80 03 00 08 */ lwz r0, 8(r3) +/* 80239ACC 00236A2C 90 04 00 08 */ stw r0, 8(r4) +/* 80239AD0 00236A30 80 03 00 0C */ lwz r0, 0xc(r3) +/* 80239AD4 00236A34 90 04 00 0C */ stw r0, 0xc(r4) +/* 80239AD8 00236A38 80 03 00 10 */ lwz r0, 0x10(r3) +/* 80239ADC 00236A3C 90 04 00 10 */ stw r0, 0x10(r4) +/* 80239AE0 00236A40 80 03 00 14 */ lwz r0, 0x14(r3) +/* 80239AE4 00236A44 90 04 00 14 */ stw r0, 0x14(r4) +/* 80239AE8 00236A48 80 03 00 18 */ lwz r0, 0x18(r3) +/* 80239AEC 00236A4C 90 04 00 18 */ stw r0, 0x18(r4) +/* 80239AF0 00236A50 C0 03 00 1C */ lfs f0, 0x1c(r3) +/* 80239AF4 00236A54 D0 04 00 1C */ stfs f0, 0x1c(r4) +/* 80239AF8 00236A58 C0 03 00 20 */ lfs f0, 0x20(r3) +/* 80239AFC 00236A5C D0 04 00 20 */ stfs f0, 0x20(r4) +/* 80239B00 00236A60 C0 03 00 24 */ lfs f0, 0x24(r3) +/* 80239B04 00236A64 D0 04 00 24 */ stfs f0, 0x24(r4) +lbl_80239B08: +/* 80239B08 00236A68 38 84 FF D8 */ addi r4, r4, -40 +/* 80239B0C 00236A6C 39 08 FF FF */ addi r8, r8, -1 +/* 80239B10 00236A70 42 00 FF 90 */ bdnz lbl_80239AA0 +lbl_80239B14: +/* 80239B14 00236A74 7F 69 03 A6 */ mtctr r27 +/* 80239B18 00236A78 2C 1B 00 00 */ cmpwi r27, 0 +/* 80239B1C 00236A7C 40 81 00 64 */ ble lbl_80239B80 +lbl_80239B20: +/* 80239B20 00236A80 28 06 00 00 */ cmplwi r6, 0 +/* 80239B24 00236A84 41 82 00 54 */ beq lbl_80239B78 +/* 80239B28 00236A88 A0 1E 00 00 */ lhz r0, 0(r30) +/* 80239B2C 00236A8C B0 06 00 00 */ sth r0, 0(r6) +/* 80239B30 00236A90 80 1E 00 04 */ lwz r0, 4(r30) +/* 80239B34 00236A94 90 06 00 04 */ stw r0, 4(r6) +/* 80239B38 00236A98 80 1E 00 08 */ lwz r0, 8(r30) +/* 80239B3C 00236A9C 90 06 00 08 */ stw r0, 8(r6) +/* 80239B40 00236AA0 80 1E 00 0C */ lwz r0, 0xc(r30) +/* 80239B44 00236AA4 90 06 00 0C */ stw r0, 0xc(r6) +/* 80239B48 00236AA8 80 1E 00 10 */ lwz r0, 0x10(r30) +/* 80239B4C 00236AAC 90 06 00 10 */ stw r0, 0x10(r6) +/* 80239B50 00236AB0 80 1E 00 14 */ lwz r0, 0x14(r30) +/* 80239B54 00236AB4 90 06 00 14 */ stw r0, 0x14(r6) +/* 80239B58 00236AB8 80 1E 00 18 */ lwz r0, 0x18(r30) +/* 80239B5C 00236ABC 90 06 00 18 */ stw r0, 0x18(r6) +/* 80239B60 00236AC0 C0 1E 00 1C */ lfs f0, 0x1c(r30) +/* 80239B64 00236AC4 D0 06 00 1C */ stfs f0, 0x1c(r6) +/* 80239B68 00236AC8 C0 1E 00 20 */ lfs f0, 0x20(r30) +/* 80239B6C 00236ACC D0 06 00 20 */ stfs f0, 0x20(r6) +/* 80239B70 00236AD0 C0 1E 00 24 */ lfs f0, 0x24(r30) +/* 80239B74 00236AD4 D0 06 00 24 */ stfs f0, 0x24(r6) +lbl_80239B78: +/* 80239B78 00236AD8 38 C6 00 28 */ addi r6, r6, 0x28 +/* 80239B7C 00236ADC 42 00 FF A4 */ bdnz lbl_80239B20 +lbl_80239B80: +/* 80239B80 00236AE0 80 1A 00 04 */ lwz r0, 4(r26) +/* 80239B84 00236AE4 7C 00 DA 14 */ add r0, r0, r27 +/* 80239B88 00236AE8 90 1A 00 04 */ stw r0, 4(r26) +/* 80239B8C 00236AEC 48 00 02 3C */ b lbl_80239DC8 +lbl_80239B90: +/* 80239B90 00236AF0 2C 03 00 00 */ cmpwi r3, 0 +/* 80239B94 00236AF4 38 00 00 04 */ li r0, 4 +/* 80239B98 00236AF8 41 82 00 08 */ beq lbl_80239BA0 +/* 80239B9C 00236AFC 54 60 08 3C */ slwi r0, r3, 1 +lbl_80239BA0: +/* 80239BA0 00236B00 7C 1C 03 78 */ mr r28, r0 +/* 80239BA4 00236B04 48 00 00 08 */ b lbl_80239BAC +lbl_80239BA8: +/* 80239BA8 00236B08 57 9C 08 3C */ slwi r28, r28, 1 +lbl_80239BAC: +/* 80239BAC 00236B0C 7C 1C 20 00 */ cmpw r28, r4 +/* 80239BB0 00236B10 41 80 FF F8 */ blt lbl_80239BA8 +/* 80239BB4 00236B14 1C 7C 00 28 */ mulli r3, r28, 0x28 +/* 80239BB8 00236B18 2C 03 00 00 */ cmpwi r3, 0 +/* 80239BBC 00236B1C 40 82 00 0C */ bne lbl_80239BC8 +/* 80239BC0 00236B20 3B E0 00 00 */ li r31, 0 +/* 80239BC4 00236B24 48 00 00 18 */ b lbl_80239BDC +lbl_80239BC8: +/* 80239BC8 00236B28 3C 80 80 3D */ lis r4, lbl_803D4380@ha +/* 80239BCC 00236B2C 38 A0 00 00 */ li r5, 0 +/* 80239BD0 00236B30 38 84 43 80 */ addi r4, r4, lbl_803D4380@l +/* 80239BD4 00236B34 48 0D BC 45 */ bl __nwa__FUlPCcPCc +/* 80239BD8 00236B38 7C 7F 1B 78 */ mr r31, r3 +lbl_80239BDC: +/* 80239BDC 00236B3C 80 9A 00 0C */ lwz r4, 0xc(r26) +/* 80239BE0 00236B40 3C 60 66 66 */ lis r3, 0x66666667@ha +/* 80239BE4 00236B44 80 19 00 00 */ lwz r0, 0(r25) +/* 80239BE8 00236B48 38 A3 66 67 */ addi r5, r3, 0x66666667@l +/* 80239BEC 00236B4C 7F E7 FB 78 */ mr r7, r31 +/* 80239BF0 00236B50 38 60 00 00 */ li r3, 0 +/* 80239BF4 00236B54 7C 04 00 50 */ subf r0, r4, r0 +/* 80239BF8 00236B58 38 C0 00 00 */ li r6, 0 +/* 80239BFC 00236B5C 7C 05 00 96 */ mulhw r0, r5, r0 +/* 80239C00 00236B60 7C 00 26 70 */ srawi r0, r0, 4 +/* 80239C04 00236B64 54 04 0F FE */ srwi r4, r0, 0x1f +/* 80239C08 00236B68 7C A0 22 15 */ add. r5, r0, r4 +/* 80239C0C 00236B6C 7C A9 03 A6 */ mtctr r5 +/* 80239C10 00236B70 40 81 00 74 */ ble lbl_80239C84 +lbl_80239C14: +/* 80239C14 00236B74 80 1A 00 0C */ lwz r0, 0xc(r26) +/* 80239C18 00236B78 28 07 00 00 */ cmplwi r7, 0 +/* 80239C1C 00236B7C 7C 80 32 14 */ add r4, r0, r6 +/* 80239C20 00236B80 41 82 00 54 */ beq lbl_80239C74 +/* 80239C24 00236B84 A0 04 00 00 */ lhz r0, 0(r4) +/* 80239C28 00236B88 B0 07 00 00 */ sth r0, 0(r7) +/* 80239C2C 00236B8C 80 04 00 04 */ lwz r0, 4(r4) +/* 80239C30 00236B90 90 07 00 04 */ stw r0, 4(r7) +/* 80239C34 00236B94 80 04 00 08 */ lwz r0, 8(r4) +/* 80239C38 00236B98 90 07 00 08 */ stw r0, 8(r7) +/* 80239C3C 00236B9C 80 04 00 0C */ lwz r0, 0xc(r4) +/* 80239C40 00236BA0 90 07 00 0C */ stw r0, 0xc(r7) +/* 80239C44 00236BA4 80 04 00 10 */ lwz r0, 0x10(r4) +/* 80239C48 00236BA8 90 07 00 10 */ stw r0, 0x10(r7) +/* 80239C4C 00236BAC 80 04 00 14 */ lwz r0, 0x14(r4) +/* 80239C50 00236BB0 90 07 00 14 */ stw r0, 0x14(r7) +/* 80239C54 00236BB4 80 04 00 18 */ lwz r0, 0x18(r4) +/* 80239C58 00236BB8 90 07 00 18 */ stw r0, 0x18(r7) +/* 80239C5C 00236BBC C0 04 00 1C */ lfs f0, 0x1c(r4) +/* 80239C60 00236BC0 D0 07 00 1C */ stfs f0, 0x1c(r7) +/* 80239C64 00236BC4 C0 04 00 20 */ lfs f0, 0x20(r4) +/* 80239C68 00236BC8 D0 07 00 20 */ stfs f0, 0x20(r7) +/* 80239C6C 00236BCC C0 04 00 24 */ lfs f0, 0x24(r4) +/* 80239C70 00236BD0 D0 07 00 24 */ stfs f0, 0x24(r7) +lbl_80239C74: +/* 80239C74 00236BD4 38 E7 00 28 */ addi r7, r7, 0x28 +/* 80239C78 00236BD8 38 63 00 01 */ addi r3, r3, 1 +/* 80239C7C 00236BDC 38 C6 00 28 */ addi r6, r6, 0x28 +/* 80239C80 00236BE0 42 00 FF 94 */ bdnz lbl_80239C14 +lbl_80239C84: +/* 80239C84 00236BE4 1C 03 00 28 */ mulli r0, r3, 0x28 +/* 80239C88 00236BE8 7C 9F 02 14 */ add r4, r31, r0 +/* 80239C8C 00236BEC 7F 69 03 A6 */ mtctr r27 +/* 80239C90 00236BF0 2C 1B 00 00 */ cmpwi r27, 0 +/* 80239C94 00236BF4 40 81 00 68 */ ble lbl_80239CFC +lbl_80239C98: +/* 80239C98 00236BF8 28 04 00 00 */ cmplwi r4, 0 +/* 80239C9C 00236BFC 41 82 00 54 */ beq lbl_80239CF0 +/* 80239CA0 00236C00 A0 1E 00 00 */ lhz r0, 0(r30) +/* 80239CA4 00236C04 B0 04 00 00 */ sth r0, 0(r4) +/* 80239CA8 00236C08 80 1E 00 04 */ lwz r0, 4(r30) +/* 80239CAC 00236C0C 90 04 00 04 */ stw r0, 4(r4) +/* 80239CB0 00236C10 80 1E 00 08 */ lwz r0, 8(r30) +/* 80239CB4 00236C14 90 04 00 08 */ stw r0, 8(r4) +/* 80239CB8 00236C18 80 1E 00 0C */ lwz r0, 0xc(r30) +/* 80239CBC 00236C1C 90 04 00 0C */ stw r0, 0xc(r4) +/* 80239CC0 00236C20 80 1E 00 10 */ lwz r0, 0x10(r30) +/* 80239CC4 00236C24 90 04 00 10 */ stw r0, 0x10(r4) +/* 80239CC8 00236C28 80 1E 00 14 */ lwz r0, 0x14(r30) +/* 80239CCC 00236C2C 90 04 00 14 */ stw r0, 0x14(r4) +/* 80239CD0 00236C30 80 1E 00 18 */ lwz r0, 0x18(r30) +/* 80239CD4 00236C34 90 04 00 18 */ stw r0, 0x18(r4) +/* 80239CD8 00236C38 C0 1E 00 1C */ lfs f0, 0x1c(r30) +/* 80239CDC 00236C3C D0 04 00 1C */ stfs f0, 0x1c(r4) +/* 80239CE0 00236C40 C0 1E 00 20 */ lfs f0, 0x20(r30) +/* 80239CE4 00236C44 D0 04 00 20 */ stfs f0, 0x20(r4) +/* 80239CE8 00236C48 C0 1E 00 24 */ lfs f0, 0x24(r30) +/* 80239CEC 00236C4C D0 04 00 24 */ stfs f0, 0x24(r4) +lbl_80239CF0: +/* 80239CF0 00236C50 38 84 00 28 */ addi r4, r4, 0x28 +/* 80239CF4 00236C54 38 63 00 01 */ addi r3, r3, 1 +/* 80239CF8 00236C58 42 00 FF A0 */ bdnz lbl_80239C98 +lbl_80239CFC: +/* 80239CFC 00236C5C 1C 03 00 28 */ mulli r0, r3, 0x28 +/* 80239D00 00236C60 7C A6 2B 78 */ mr r6, r5 +/* 80239D04 00236C64 1C 85 00 28 */ mulli r4, r5, 0x28 +/* 80239D08 00236C68 7C BF 02 14 */ add r5, r31, r0 +/* 80239D0C 00236C6C 48 00 00 70 */ b lbl_80239D7C +lbl_80239D10: +/* 80239D10 00236C70 80 1A 00 0C */ lwz r0, 0xc(r26) +/* 80239D14 00236C74 28 05 00 00 */ cmplwi r5, 0 +/* 80239D18 00236C78 7C 60 22 14 */ add r3, r0, r4 +/* 80239D1C 00236C7C 41 82 00 54 */ beq lbl_80239D70 +/* 80239D20 00236C80 A0 03 00 00 */ lhz r0, 0(r3) +/* 80239D24 00236C84 B0 05 00 00 */ sth r0, 0(r5) +/* 80239D28 00236C88 80 03 00 04 */ lwz r0, 4(r3) +/* 80239D2C 00236C8C 90 05 00 04 */ stw r0, 4(r5) +/* 80239D30 00236C90 80 03 00 08 */ lwz r0, 8(r3) +/* 80239D34 00236C94 90 05 00 08 */ stw r0, 8(r5) +/* 80239D38 00236C98 80 03 00 0C */ lwz r0, 0xc(r3) +/* 80239D3C 00236C9C 90 05 00 0C */ stw r0, 0xc(r5) +/* 80239D40 00236CA0 80 03 00 10 */ lwz r0, 0x10(r3) +/* 80239D44 00236CA4 90 05 00 10 */ stw r0, 0x10(r5) +/* 80239D48 00236CA8 80 03 00 14 */ lwz r0, 0x14(r3) +/* 80239D4C 00236CAC 90 05 00 14 */ stw r0, 0x14(r5) +/* 80239D50 00236CB0 80 03 00 18 */ lwz r0, 0x18(r3) +/* 80239D54 00236CB4 90 05 00 18 */ stw r0, 0x18(r5) +/* 80239D58 00236CB8 C0 03 00 1C */ lfs f0, 0x1c(r3) +/* 80239D5C 00236CBC D0 05 00 1C */ stfs f0, 0x1c(r5) +/* 80239D60 00236CC0 C0 03 00 20 */ lfs f0, 0x20(r3) +/* 80239D64 00236CC4 D0 05 00 20 */ stfs f0, 0x20(r5) +/* 80239D68 00236CC8 C0 03 00 24 */ lfs f0, 0x24(r3) +/* 80239D6C 00236CCC D0 05 00 24 */ stfs f0, 0x24(r5) +lbl_80239D70: +/* 80239D70 00236CD0 38 A5 00 28 */ addi r5, r5, 0x28 +/* 80239D74 00236CD4 38 84 00 28 */ addi r4, r4, 0x28 +/* 80239D78 00236CD8 38 C6 00 01 */ addi r6, r6, 1 +lbl_80239D7C: +/* 80239D7C 00236CDC 80 1A 00 04 */ lwz r0, 4(r26) +/* 80239D80 00236CE0 7C 06 00 00 */ cmpw r6, r0 +/* 80239D84 00236CE4 41 80 FF 8C */ blt lbl_80239D10 +/* 80239D88 00236CE8 1C 00 00 28 */ mulli r0, r0, 0x28 +/* 80239D8C 00236CEC 7F A3 EB 78 */ mr r3, r29 +/* 80239D90 00236CF0 7C 1D 02 14 */ add r0, r29, r0 +/* 80239D94 00236CF4 48 00 00 08 */ b lbl_80239D9C +lbl_80239D98: +/* 80239D98 00236CF8 38 63 00 28 */ addi r3, r3, 0x28 +lbl_80239D9C: +/* 80239D9C 00236CFC 7C 03 00 40 */ cmplw r3, r0 +/* 80239DA0 00236D00 40 82 FF F8 */ bne lbl_80239D98 +/* 80239DA4 00236D04 80 7A 00 0C */ lwz r3, 0xc(r26) +/* 80239DA8 00236D08 28 03 00 00 */ cmplwi r3, 0 +/* 80239DAC 00236D0C 41 82 00 08 */ beq lbl_80239DB4 +/* 80239DB0 00236D10 48 0D BB 81 */ bl Free__7CMemoryFPCv +lbl_80239DB4: +/* 80239DB4 00236D14 93 FA 00 0C */ stw r31, 0xc(r26) +/* 80239DB8 00236D18 93 9A 00 08 */ stw r28, 8(r26) +/* 80239DBC 00236D1C 80 1A 00 04 */ lwz r0, 4(r26) +/* 80239DC0 00236D20 7C 00 DA 14 */ add r0, r0, r27 +/* 80239DC4 00236D24 90 1A 00 04 */ stw r0, 4(r26) +lbl_80239DC8: +/* 80239DC8 00236D28 BB 21 00 14 */ lmw r25, 0x14(r1) +/* 80239DCC 00236D2C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80239DD0 00236D30 7C 08 03 A6 */ mtlr r0 +/* 80239DD4 00236D34 38 21 00 30 */ addi r1, r1, 0x30 +/* 80239DD8 00236D38 4E 80 00 20 */ blr + +.global Think__10CTeamAiMgrFfR13CStateManager +Think__10CTeamAiMgrFfR13CStateManager: +/* 80239DDC 00236D3C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80239DE0 00236D40 7C 08 02 A6 */ mflr r0 +/* 80239DE4 00236D44 90 01 00 24 */ stw r0, 0x24(r1) +/* 80239DE8 00236D48 DB E1 00 10 */ stfd f31, 0x10(r1) +/* 80239DEC 00236D4C F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 +/* 80239DF0 00236D50 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80239DF4 00236D54 93 C1 00 08 */ stw r30, 8(r1) +/* 80239DF8 00236D58 FF E0 08 90 */ fmr f31, f1 +/* 80239DFC 00236D5C 7C 7E 1B 78 */ mr r30, r3 +/* 80239E00 00236D60 7C 9F 23 78 */ mr r31, r4 +/* 80239E04 00236D64 4B E1 72 B5 */ bl Think__7CEntityFfR13CStateManager +/* 80239E08 00236D68 FC 20 F8 90 */ fmr f1, f31 +/* 80239E0C 00236D6C 7F C3 F3 78 */ mr r3, r30 +/* 80239E10 00236D70 4B FF E6 49 */ bl ShouldUpdateRoles__10CTeamAiMgrFf +/* 80239E14 00236D74 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80239E18 00236D78 41 82 00 10 */ beq lbl_80239E28 +/* 80239E1C 00236D7C 7F C3 F3 78 */ mr r3, r30 +/* 80239E20 00236D80 7F E4 FB 78 */ mr r4, r31 +/* 80239E24 00236D84 4B FF E4 5D */ bl UpdateRoles__10CTeamAiMgrFR13CStateManager +lbl_80239E28: +/* 80239E28 00236D88 7F C3 F3 78 */ mr r3, r30 +/* 80239E2C 00236D8C 7F E4 FB 78 */ mr r4, r31 +/* 80239E30 00236D90 4B FF E1 F5 */ bl PositionTeam__10CTeamAiMgrFR13CStateManager +/* 80239E34 00236D94 C0 1E 00 90 */ lfs f0, 0x90(r30) +/* 80239E38 00236D98 EC 00 F8 2A */ fadds f0, f0, f31 +/* 80239E3C 00236D9C D0 1E 00 90 */ stfs f0, 0x90(r30) +/* 80239E40 00236DA0 C0 1E 00 94 */ lfs f0, 0x94(r30) +/* 80239E44 00236DA4 EC 00 F8 2A */ fadds f0, f0, f31 +/* 80239E48 00236DA8 D0 1E 00 94 */ stfs f0, 0x94(r30) +/* 80239E4C 00236DAC E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 +/* 80239E50 00236DB0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80239E54 00236DB4 CB E1 00 10 */ lfd f31, 0x10(r1) +/* 80239E58 00236DB8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80239E5C 00236DBC 83 C1 00 08 */ lwz r30, 8(r1) +/* 80239E60 00236DC0 7C 08 03 A6 */ mtlr r0 +/* 80239E64 00236DC4 38 21 00 20 */ addi r1, r1, 0x20 +/* 80239E68 00236DC8 4E 80 00 20 */ blr + +.global Accept__10CTeamAiMgrFR8IVisitor +Accept__10CTeamAiMgrFR8IVisitor: +/* 80239E6C 00236DCC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80239E70 00236DD0 7C 08 02 A6 */ mflr r0 +/* 80239E74 00236DD4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80239E78 00236DD8 7C 60 1B 78 */ mr r0, r3 +/* 80239E7C 00236DDC 7C 83 23 78 */ mr r3, r4 +/* 80239E80 00236DE0 81 84 00 00 */ lwz r12, 0(r4) +/* 80239E84 00236DE4 7C 04 03 78 */ mr r4, r0 +/* 80239E88 00236DE8 81 8C 00 C4 */ lwz r12, 0xc4(r12) +/* 80239E8C 00236DEC 7D 89 03 A6 */ mtctr r12 +/* 80239E90 00236DF0 4E 80 04 21 */ bctrl +/* 80239E94 00236DF4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80239E98 00236DF8 7C 08 03 A6 */ mtlr r0 +/* 80239E9C 00236DFC 38 21 00 10 */ addi r1, r1, 0x10 +/* 80239EA0 00236E00 4E 80 00 20 */ blr + +.global AcceptScriptMsg__10CTeamAiMgrF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__10CTeamAiMgrF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 80239EA4 00236E04 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80239EA8 00236E08 7C 08 02 A6 */ mflr r0 +/* 80239EAC 00236E0C 90 01 00 14 */ stw r0, 0x14(r1) +/* 80239EB0 00236E10 A0 05 00 00 */ lhz r0, 0(r5) +/* 80239EB4 00236E14 38 A1 00 08 */ addi r5, r1, 8 +/* 80239EB8 00236E18 B0 01 00 08 */ sth r0, 8(r1) +/* 80239EBC 00236E1C 4B E1 72 A1 */ bl AcceptScriptMsg__7CEntityF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 80239EC0 00236E20 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80239EC4 00236E24 7C 08 03 A6 */ mtlr r0 +/* 80239EC8 00236E28 38 21 00 10 */ addi r1, r1, 0x10 +/* 80239ECC 00236E2C 4E 80 00 20 */ blr + +.global ResetTeamAiRole__10CTeamAiMgrF11EAttackTypeR13CStateManager9TUniqueId9TUniqueIdb +ResetTeamAiRole__10CTeamAiMgrF11EAttackTypeR13CStateManager9TUniqueId9TUniqueIdb: +/* 80239ED0 00236E30 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80239ED4 00236E34 7C 08 02 A6 */ mflr r0 +/* 80239ED8 00236E38 90 01 00 44 */ stw r0, 0x44(r1) +/* 80239EDC 00236E3C 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80239EE0 00236E40 93 C1 00 38 */ stw r30, 0x38(r1) +/* 80239EE4 00236E44 7C FE 3B 78 */ mr r30, r7 +/* 80239EE8 00236E48 93 A1 00 34 */ stw r29, 0x34(r1) +/* 80239EEC 00236E4C 7C DD 33 78 */ mr r29, r6 +/* 80239EF0 00236E50 93 81 00 30 */ stw r28, 0x30(r1) +/* 80239EF4 00236E54 7C 7C 1B 78 */ mr r28, r3 +/* 80239EF8 00236E58 7C 83 23 78 */ mr r3, r4 +/* 80239EFC 00236E5C 38 81 00 20 */ addi r4, r1, 0x20 +/* 80239F00 00236E60 A0 05 00 00 */ lhz r0, 0(r5) +/* 80239F04 00236E64 B0 01 00 20 */ sth r0, 0x20(r1) +/* 80239F08 00236E68 4B E1 26 6D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80239F0C 00236E6C 7C 64 1B 78 */ mr r4, r3 +/* 80239F10 00236E70 38 61 00 24 */ addi r3, r1, 0x24 +/* 80239F14 00236E74 4B E6 D6 61 */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" +/* 80239F18 00236E78 83 E3 00 04 */ lwz r31, 4(r3) +/* 80239F1C 00236E7C 28 1F 00 00 */ cmplwi r31, 0 +/* 80239F20 00236E80 41 82 00 B0 */ beq lbl_80239FD0 +/* 80239F24 00236E84 A0 1D 00 00 */ lhz r0, 0(r29) +/* 80239F28 00236E88 7F E3 FB 78 */ mr r3, r31 +/* 80239F2C 00236E8C 38 81 00 1C */ addi r4, r1, 0x1c +/* 80239F30 00236E90 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 80239F34 00236E94 4B FF F1 D1 */ bl HasTeamAiRole__10CTeamAiMgrCF9TUniqueId +/* 80239F38 00236E98 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80239F3C 00236E9C 41 82 00 94 */ beq lbl_80239FD0 +/* 80239F40 00236EA0 2C 1C 00 00 */ cmpwi r28, 0 +/* 80239F44 00236EA4 40 82 00 38 */ bne lbl_80239F7C +/* 80239F48 00236EA8 A0 1D 00 00 */ lhz r0, 0(r29) +/* 80239F4C 00236EAC 7F E3 FB 78 */ mr r3, r31 +/* 80239F50 00236EB0 38 81 00 18 */ addi r4, r1, 0x18 +/* 80239F54 00236EB4 B0 01 00 18 */ sth r0, 0x18(r1) +/* 80239F58 00236EB8 4B FF EF CD */ bl IsMeleeAttacker__10CTeamAiMgrCF9TUniqueId +/* 80239F5C 00236EBC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80239F60 00236EC0 41 82 00 54 */ beq lbl_80239FB4 +/* 80239F64 00236EC4 A0 1D 00 00 */ lhz r0, 0(r29) +/* 80239F68 00236EC8 7F E3 FB 78 */ mr r3, r31 +/* 80239F6C 00236ECC 38 81 00 14 */ addi r4, r1, 0x14 +/* 80239F70 00236ED0 B0 01 00 14 */ sth r0, 0x14(r1) +/* 80239F74 00236ED4 4B FF EC 59 */ bl RemoveMeleeAttacker__10CTeamAiMgrF9TUniqueId +/* 80239F78 00236ED8 48 00 00 3C */ b lbl_80239FB4 +lbl_80239F7C: +/* 80239F7C 00236EDC 2C 1C 00 01 */ cmpwi r28, 1 +/* 80239F80 00236EE0 40 82 00 34 */ bne lbl_80239FB4 +/* 80239F84 00236EE4 A0 1D 00 00 */ lhz r0, 0(r29) +/* 80239F88 00236EE8 7F E3 FB 78 */ mr r3, r31 +/* 80239F8C 00236EEC 38 81 00 10 */ addi r4, r1, 0x10 +/* 80239F90 00236EF0 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80239F94 00236EF4 4B FF EB 6D */ bl IsProjectileAttacker__10CTeamAiMgrCF9TUniqueId +/* 80239F98 00236EF8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80239F9C 00236EFC 41 82 00 18 */ beq lbl_80239FB4 +/* 80239FA0 00236F00 A0 1D 00 00 */ lhz r0, 0(r29) +/* 80239FA4 00236F04 7F E3 FB 78 */ mr r3, r31 +/* 80239FA8 00236F08 38 81 00 0C */ addi r4, r1, 0xc +/* 80239FAC 00236F0C B0 01 00 0C */ sth r0, 0xc(r1) +/* 80239FB0 00236F10 4B FF E5 35 */ bl RemoveProjectileAttacker__10CTeamAiMgrF9TUniqueId +lbl_80239FB4: +/* 80239FB4 00236F14 57 C0 06 3F */ clrlwi. r0, r30, 0x18 +/* 80239FB8 00236F18 41 82 00 18 */ beq lbl_80239FD0 +/* 80239FBC 00236F1C A0 1D 00 00 */ lhz r0, 0(r29) +/* 80239FC0 00236F20 7F E3 FB 78 */ mr r3, r31 +/* 80239FC4 00236F24 38 81 00 08 */ addi r4, r1, 8 +/* 80239FC8 00236F28 B0 01 00 08 */ sth r0, 8(r1) +/* 80239FCC 00236F2C 4B FF F2 6D */ bl ClearTeamAiRole__10CTeamAiMgrF9TUniqueId +lbl_80239FD0: +/* 80239FD0 00236F30 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80239FD4 00236F34 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 80239FD8 00236F38 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 80239FDC 00236F3C 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 80239FE0 00236F40 83 81 00 30 */ lwz r28, 0x30(r1) +/* 80239FE4 00236F44 7C 08 03 A6 */ mtlr r0 +/* 80239FE8 00236F48 38 21 00 40 */ addi r1, r1, 0x40 +/* 80239FEC 00236F4C 4E 80 00 20 */ blr + +.global AddAttacker__10CTeamAiMgrF11EAttackTypeR13CStateManager9TUniqueId9TUniqueId +AddAttacker__10CTeamAiMgrF11EAttackTypeR13CStateManager9TUniqueId9TUniqueId: +/* 80239FF0 00236F50 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80239FF4 00236F54 7C 08 02 A6 */ mflr r0 +/* 80239FF8 00236F58 90 01 00 34 */ stw r0, 0x34(r1) +/* 80239FFC 00236F5C 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8023A000 00236F60 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8023A004 00236F64 7C DE 33 78 */ mr r30, r6 +/* 8023A008 00236F68 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8023A00C 00236F6C 7C 7D 1B 78 */ mr r29, r3 +/* 8023A010 00236F70 7C 83 23 78 */ mr r3, r4 +/* 8023A014 00236F74 38 81 00 14 */ addi r4, r1, 0x14 +/* 8023A018 00236F78 A0 05 00 00 */ lhz r0, 0(r5) +/* 8023A01C 00236F7C B0 01 00 14 */ sth r0, 0x14(r1) +/* 8023A020 00236F80 4B E1 25 55 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8023A024 00236F84 7C 64 1B 78 */ mr r4, r3 +/* 8023A028 00236F88 38 61 00 18 */ addi r3, r1, 0x18 +/* 8023A02C 00236F8C 4B E6 D5 49 */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" +/* 8023A030 00236F90 83 E3 00 04 */ lwz r31, 4(r3) +/* 8023A034 00236F94 28 1F 00 00 */ cmplwi r31, 0 +/* 8023A038 00236F98 41 82 00 60 */ beq lbl_8023A098 +/* 8023A03C 00236F9C A0 1E 00 00 */ lhz r0, 0(r30) +/* 8023A040 00236FA0 7F E3 FB 78 */ mr r3, r31 +/* 8023A044 00236FA4 38 81 00 10 */ addi r4, r1, 0x10 +/* 8023A048 00236FA8 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8023A04C 00236FAC 4B FF F0 B9 */ bl HasTeamAiRole__10CTeamAiMgrCF9TUniqueId +/* 8023A050 00236FB0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8023A054 00236FB4 41 82 00 44 */ beq lbl_8023A098 +/* 8023A058 00236FB8 2C 1D 00 00 */ cmpwi r29, 0 +/* 8023A05C 00236FBC 40 82 00 1C */ bne lbl_8023A078 +/* 8023A060 00236FC0 A0 1E 00 00 */ lhz r0, 0(r30) +/* 8023A064 00236FC4 7F E3 FB 78 */ mr r3, r31 +/* 8023A068 00236FC8 38 81 00 0C */ addi r4, r1, 0xc +/* 8023A06C 00236FCC B0 01 00 0C */ sth r0, 0xc(r1) +/* 8023A070 00236FD0 4B FF EC 3D */ bl AddMeleeAttacker__10CTeamAiMgrF9TUniqueId +/* 8023A074 00236FD4 48 00 00 28 */ b lbl_8023A09C +lbl_8023A078: +/* 8023A078 00236FD8 2C 1D 00 01 */ cmpwi r29, 1 +/* 8023A07C 00236FDC 40 82 00 1C */ bne lbl_8023A098 +/* 8023A080 00236FE0 A0 1E 00 00 */ lhz r0, 0(r30) +/* 8023A084 00236FE4 7F E3 FB 78 */ mr r3, r31 +/* 8023A088 00236FE8 38 81 00 08 */ addi r4, r1, 8 +/* 8023A08C 00236FEC B0 01 00 08 */ sth r0, 8(r1) +/* 8023A090 00236FF0 4B FF E5 35 */ bl AddProjectileAttacker__10CTeamAiMgrF9TUniqueId +/* 8023A094 00236FF4 48 00 00 08 */ b lbl_8023A09C +lbl_8023A098: +/* 8023A098 00236FF8 38 60 00 00 */ li r3, 0 +lbl_8023A09C: +/* 8023A09C 00236FFC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8023A0A0 00237000 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8023A0A4 00237004 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8023A0A8 00237008 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8023A0AC 0023700C 7C 08 03 A6 */ mtlr r0 +/* 8023A0B0 00237010 38 21 00 30 */ addi r1, r1, 0x30 +/* 8023A0B4 00237014 4E 80 00 20 */ blr + +.global CanAcceptAttacker__10CTeamAiMgrF11EAttackTypeR13CStateManager9TUniqueId9TUniqueId +CanAcceptAttacker__10CTeamAiMgrF11EAttackTypeR13CStateManager9TUniqueId9TUniqueId: +/* 8023A0B8 00237018 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8023A0BC 0023701C 7C 08 02 A6 */ mflr r0 +/* 8023A0C0 00237020 90 01 00 34 */ stw r0, 0x34(r1) +/* 8023A0C4 00237024 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8023A0C8 00237028 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8023A0CC 0023702C 7C DE 33 78 */ mr r30, r6 +/* 8023A0D0 00237030 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8023A0D4 00237034 7C 7D 1B 78 */ mr r29, r3 +/* 8023A0D8 00237038 7C 83 23 78 */ mr r3, r4 +/* 8023A0DC 0023703C 38 81 00 14 */ addi r4, r1, 0x14 +/* 8023A0E0 00237040 A0 05 00 00 */ lhz r0, 0(r5) +/* 8023A0E4 00237044 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8023A0E8 00237048 4B E1 24 8D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8023A0EC 0023704C 7C 64 1B 78 */ mr r4, r3 +/* 8023A0F0 00237050 38 61 00 18 */ addi r3, r1, 0x18 +/* 8023A0F4 00237054 4B E6 D4 81 */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" +/* 8023A0F8 00237058 83 E3 00 04 */ lwz r31, 4(r3) +/* 8023A0FC 0023705C 28 1F 00 00 */ cmplwi r31, 0 +/* 8023A100 00237060 41 82 00 60 */ beq lbl_8023A160 +/* 8023A104 00237064 A0 1E 00 00 */ lhz r0, 0(r30) +/* 8023A108 00237068 7F E3 FB 78 */ mr r3, r31 +/* 8023A10C 0023706C 38 81 00 10 */ addi r4, r1, 0x10 +/* 8023A110 00237070 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8023A114 00237074 4B FF EF F1 */ bl HasTeamAiRole__10CTeamAiMgrCF9TUniqueId +/* 8023A118 00237078 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8023A11C 0023707C 41 82 00 44 */ beq lbl_8023A160 +/* 8023A120 00237080 2C 1D 00 00 */ cmpwi r29, 0 +/* 8023A124 00237084 40 82 00 1C */ bne lbl_8023A140 +/* 8023A128 00237088 A0 1E 00 00 */ lhz r0, 0(r30) +/* 8023A12C 0023708C 7F E3 FB 78 */ mr r3, r31 +/* 8023A130 00237090 38 81 00 0C */ addi r4, r1, 0xc +/* 8023A134 00237094 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8023A138 00237098 4B FF EC F1 */ bl CanAcceptMeleeAttacker__10CTeamAiMgrCF9TUniqueId +/* 8023A13C 0023709C 48 00 00 28 */ b lbl_8023A164 +lbl_8023A140: +/* 8023A140 002370A0 2C 1D 00 01 */ cmpwi r29, 1 +/* 8023A144 002370A4 40 82 00 1C */ bne lbl_8023A160 +/* 8023A148 002370A8 A0 1E 00 00 */ lhz r0, 0(r30) +/* 8023A14C 002370AC 7F E3 FB 78 */ mr r3, r31 +/* 8023A150 002370B0 38 81 00 08 */ addi r4, r1, 8 +/* 8023A154 002370B4 B0 01 00 08 */ sth r0, 8(r1) +/* 8023A158 002370B8 4B FF E8 AD */ bl CanAcceptProjectileAttacker__10CTeamAiMgrCF9TUniqueId +/* 8023A15C 002370BC 48 00 00 08 */ b lbl_8023A164 +lbl_8023A160: +/* 8023A160 002370C0 38 60 00 00 */ li r3, 0 +lbl_8023A164: +/* 8023A164 002370C4 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8023A168 002370C8 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8023A16C 002370CC 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8023A170 002370D0 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8023A174 002370D4 7C 08 03 A6 */ mtlr r0 +/* 8023A178 002370D8 38 21 00 30 */ addi r1, r1, 0x30 +/* 8023A17C 002370DC 4E 80 00 20 */ blr + +.global GetTeamAiRole__10CTeamAiMgrCFRC13CStateManager9TUniqueId9TUniqueId +GetTeamAiRole__10CTeamAiMgrCFRC13CStateManager9TUniqueId9TUniqueId: +/* 8023A180 002370E0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8023A184 002370E4 7C 08 02 A6 */ mflr r0 +/* 8023A188 002370E8 90 01 00 24 */ stw r0, 0x24(r1) +/* 8023A18C 002370EC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8023A190 002370F0 7C BF 2B 78 */ mr r31, r5 +/* 8023A194 002370F4 A0 04 00 00 */ lhz r0, 0(r4) +/* 8023A198 002370F8 38 81 00 0C */ addi r4, r1, 0xc +/* 8023A19C 002370FC B0 01 00 0C */ sth r0, 0xc(r1) +/* 8023A1A0 00237100 4B E1 24 05 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8023A1A4 00237104 7C 64 1B 78 */ mr r4, r3 +/* 8023A1A8 00237108 38 61 00 10 */ addi r3, r1, 0x10 +/* 8023A1AC 0023710C 4B E6 D3 C9 */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" +/* 8023A1B0 00237110 80 63 00 04 */ lwz r3, 4(r3) +/* 8023A1B4 00237114 28 03 00 00 */ cmplwi r3, 0 +/* 8023A1B8 00237118 41 82 00 18 */ beq lbl_8023A1D0 +/* 8023A1BC 0023711C A0 1F 00 00 */ lhz r0, 0(r31) +/* 8023A1C0 00237120 38 81 00 08 */ addi r4, r1, 8 +/* 8023A1C4 00237124 B0 01 00 08 */ sth r0, 8(r1) +/* 8023A1C8 00237128 4B FF F1 85 */ bl GetTeamAiRole__10CTeamAiMgrCF9TUniqueId +/* 8023A1CC 0023712C 48 00 00 08 */ b lbl_8023A1D4 +lbl_8023A1D0: +/* 8023A1D0 00237130 38 60 00 00 */ li r3, 0 +lbl_8023A1D4: +/* 8023A1D4 00237134 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8023A1D8 00237138 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8023A1DC 0023713C 7C 08 03 A6 */ mtlr r0 +/* 8023A1E0 00237140 38 21 00 20 */ addi r1, r1, 0x20 +/* 8023A1E4 00237144 4E 80 00 20 */ blr + +.global GetTeamAiMgr__10CTeamAiMgrF3CAiRC13CStateManager +GetTeamAiMgr__10CTeamAiMgrF3CAiRC13CStateManager: +/* 8023A1E8 00237148 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8023A1EC 0023714C 7C 08 02 A6 */ mflr r0 +/* 8023A1F0 00237150 90 01 00 34 */ stw r0, 0x34(r1) +/* 8023A1F4 00237154 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8023A1F8 00237158 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8023A1FC 0023715C 7C BE 2B 78 */ mr r30, r5 +/* 8023A200 00237160 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8023A204 00237164 7C 9D 23 78 */ mr r29, r4 +/* 8023A208 00237168 93 81 00 20 */ stw r28, 0x20(r1) +/* 8023A20C 0023716C 7C 7C 1B 78 */ mr r28, r3 +/* 8023A210 00237170 83 E4 00 2C */ lwz r31, 0x2c(r4) +/* 8023A214 00237174 48 00 00 70 */ b lbl_8023A284 +lbl_8023A218: +/* 8023A218 00237178 80 1F 00 00 */ lwz r0, 0(r31) +/* 8023A21C 0023717C 2C 00 00 00 */ cmpwi r0, 0 +/* 8023A220 00237180 40 82 00 60 */ bne lbl_8023A280 +/* 8023A224 00237184 80 1F 00 04 */ lwz r0, 4(r31) +/* 8023A228 00237188 2C 00 00 14 */ cmpwi r0, 0x14 +/* 8023A22C 0023718C 40 82 00 54 */ bne lbl_8023A280 +/* 8023A230 00237190 80 1F 00 08 */ lwz r0, 8(r31) +/* 8023A234 00237194 7F C4 F3 78 */ mr r4, r30 +/* 8023A238 00237198 38 61 00 08 */ addi r3, r1, 8 +/* 8023A23C 0023719C 38 A1 00 10 */ addi r5, r1, 0x10 +/* 8023A240 002371A0 90 01 00 10 */ stw r0, 0x10(r1) +/* 8023A244 002371A4 4B E0 DC D9 */ bl GetIdForScript__13CStateManagerCF9TEditorId +/* 8023A248 002371A8 A0 01 00 08 */ lhz r0, 8(r1) +/* 8023A24C 002371AC 7F C3 F3 78 */ mr r3, r30 +/* 8023A250 002371B0 38 81 00 0C */ addi r4, r1, 0xc +/* 8023A254 002371B4 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8023A258 002371B8 4B E1 23 4D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8023A25C 002371BC 7C 64 1B 78 */ mr r4, r3 +/* 8023A260 002371C0 38 61 00 14 */ addi r3, r1, 0x14 +/* 8023A264 002371C4 4B E6 D3 11 */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" +/* 8023A268 002371C8 80 63 00 04 */ lwz r3, 4(r3) +/* 8023A26C 002371CC 28 03 00 00 */ cmplwi r3, 0 +/* 8023A270 002371D0 41 82 00 10 */ beq lbl_8023A280 +/* 8023A274 002371D4 A0 03 00 08 */ lhz r0, 8(r3) +/* 8023A278 002371D8 B0 1C 00 00 */ sth r0, 0(r28) +/* 8023A27C 002371DC 48 00 00 28 */ b lbl_8023A2A4 +lbl_8023A280: +/* 8023A280 002371E0 3B FF 00 0C */ addi r31, r31, 0xc +lbl_8023A284: +/* 8023A284 002371E4 80 1D 00 24 */ lwz r0, 0x24(r29) +/* 8023A288 002371E8 80 7D 00 2C */ lwz r3, 0x2c(r29) +/* 8023A28C 002371EC 1C 00 00 0C */ mulli r0, r0, 0xc +/* 8023A290 002371F0 7C 03 02 14 */ add r0, r3, r0 +/* 8023A294 002371F4 7C 1F 00 40 */ cmplw r31, r0 +/* 8023A298 002371F8 40 82 FF 80 */ bne lbl_8023A218 +/* 8023A29C 002371FC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8023A2A0 00237200 B0 1C 00 00 */ sth r0, 0(r28) +lbl_8023A2A4: +/* 8023A2A4 00237204 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8023A2A8 00237208 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8023A2AC 0023720C 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8023A2B0 00237210 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8023A2B4 00237214 83 81 00 20 */ lwz r28, 0x20(r1) +/* 8023A2B8 00237218 7C 08 03 A6 */ mtlr r0 +/* 8023A2BC 0023721C 38 21 00 30 */ addi r1, r1, 0x30 +/* 8023A2C0 00237220 4E 80 00 20 */ blr + +.global "__ct__10CTeamAiMgrF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRCQ210CTeamAiMgr8CUnknown" +"__ct__10CTeamAiMgrF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRCQ210CTeamAiMgr8CUnknown": +/* 8023A2C4 00237224 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8023A2C8 00237228 7C 08 02 A6 */ mflr r0 +/* 8023A2CC 0023722C 90 01 00 24 */ stw r0, 0x24(r1) +/* 8023A2D0 00237230 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8023A2D4 00237234 7C 7F 1B 78 */ mr r31, r3 +/* 8023A2D8 00237238 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8023A2DC 0023723C 7C FE 3B 78 */ mr r30, r7 +/* 8023A2E0 00237240 A0 04 00 00 */ lhz r0, 0(r4) +/* 8023A2E4 00237244 7C A4 2B 78 */ mr r4, r5 +/* 8023A2E8 00237248 7C C5 33 78 */ mr r5, r6 +/* 8023A2EC 0023724C 38 C0 00 01 */ li r6, 1 +/* 8023A2F0 00237250 B0 01 00 08 */ sth r0, 8(r1) +/* 8023A2F4 00237254 7C 87 23 78 */ mr r7, r4 +/* 8023A2F8 00237258 38 81 00 08 */ addi r4, r1, 8 +/* 8023A2FC 0023725C 4B E1 70 29 */ bl "__ct__7CEntityF9TUniqueIdRC11CEntityInfobRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8023A300 00237260 3C 60 80 3F */ lis r3, lbl_803E8558@ha +/* 8023A304 00237264 38 00 00 00 */ li r0, 0 +/* 8023A308 00237268 38 63 85 58 */ addi r3, r3, lbl_803E8558@l +/* 8023A30C 0023726C C0 02 B7 64 */ lfs f0, lbl_805AD484@sda21(r2) +/* 8023A310 00237270 90 7F 00 00 */ stw r3, 0(r31) +/* 8023A314 00237274 80 7E 00 00 */ lwz r3, 0(r30) +/* 8023A318 00237278 90 7F 00 34 */ stw r3, 0x34(r31) +/* 8023A31C 0023727C 80 7E 00 04 */ lwz r3, 4(r30) +/* 8023A320 00237280 90 7F 00 38 */ stw r3, 0x38(r31) +/* 8023A324 00237284 80 7E 00 08 */ lwz r3, 8(r30) +/* 8023A328 00237288 90 7F 00 3C */ stw r3, 0x3c(r31) +/* 8023A32C 0023728C 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 8023A330 00237290 90 7F 00 40 */ stw r3, 0x40(r31) +/* 8023A334 00237294 80 7E 00 10 */ lwz r3, 0x10(r30) +/* 8023A338 00237298 90 7F 00 44 */ stw r3, 0x44(r31) +/* 8023A33C 0023729C 80 7E 00 14 */ lwz r3, 0x14(r30) +/* 8023A340 002372A0 90 7F 00 48 */ stw r3, 0x48(r31) +/* 8023A344 002372A4 80 7E 00 18 */ lwz r3, 0x18(r30) +/* 8023A348 002372A8 90 7F 00 4C */ stw r3, 0x4c(r31) +/* 8023A34C 002372AC C0 3E 00 1C */ lfs f1, 0x1c(r30) +/* 8023A350 002372B0 D0 3F 00 50 */ stfs f1, 0x50(r31) +/* 8023A354 002372B4 C0 3E 00 20 */ lfs f1, 0x20(r30) +/* 8023A358 002372B8 D0 3F 00 54 */ stfs f1, 0x54(r31) +/* 8023A35C 002372BC 90 1F 00 5C */ stw r0, 0x5c(r31) +/* 8023A360 002372C0 90 1F 00 60 */ stw r0, 0x60(r31) +/* 8023A364 002372C4 90 1F 00 64 */ stw r0, 0x64(r31) +/* 8023A368 002372C8 90 1F 00 6C */ stw r0, 0x6c(r31) +/* 8023A36C 002372CC 90 1F 00 70 */ stw r0, 0x70(r31) +/* 8023A370 002372D0 90 1F 00 74 */ stw r0, 0x74(r31) +/* 8023A374 002372D4 90 1F 00 7C */ stw r0, 0x7c(r31) +/* 8023A378 002372D8 90 1F 00 80 */ stw r0, 0x80(r31) +/* 8023A37C 002372DC 90 1F 00 84 */ stw r0, 0x84(r31) +/* 8023A380 002372E0 D0 1F 00 88 */ stfs f0, 0x88(r31) +/* 8023A384 002372E4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8023A388 002372E8 B0 1F 00 8C */ sth r0, 0x8c(r31) +/* 8023A38C 002372EC C0 1E 00 1C */ lfs f0, 0x1c(r30) +/* 8023A390 002372F0 D0 1F 00 90 */ stfs f0, 0x90(r31) +/* 8023A394 002372F4 C0 1E 00 20 */ lfs f0, 0x20(r30) +/* 8023A398 002372F8 D0 1F 00 94 */ stfs f0, 0x94(r31) +/* 8023A39C 002372FC 80 9F 00 34 */ lwz r4, 0x34(r31) +/* 8023A3A0 00237300 28 04 00 00 */ cmplwi r4, 0 +/* 8023A3A4 00237304 41 82 00 0C */ beq lbl_8023A3B0 +/* 8023A3A8 00237308 38 7F 00 58 */ addi r3, r31, 0x58 +/* 8023A3AC 0023730C 48 00 08 C5 */ bl sub_8023ac70 +lbl_8023A3B0: +/* 8023A3B0 00237310 80 9F 00 38 */ lwz r4, 0x38(r31) +/* 8023A3B4 00237314 28 04 00 00 */ cmplwi r4, 0 +/* 8023A3B8 00237318 41 82 00 0C */ beq lbl_8023A3C4 +/* 8023A3BC 0023731C 38 7F 00 68 */ addi r3, r31, 0x68 +/* 8023A3C0 00237320 4B DD 20 49 */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" +lbl_8023A3C4: +/* 8023A3C4 00237324 80 9F 00 3C */ lwz r4, 0x3c(r31) +/* 8023A3C8 00237328 28 04 00 00 */ cmplwi r4, 0 +/* 8023A3CC 0023732C 41 82 00 0C */ beq lbl_8023A3D8 +/* 8023A3D0 00237330 38 7F 00 78 */ addi r3, r31, 0x78 +/* 8023A3D4 00237334 4B DD 20 35 */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" +lbl_8023A3D8: +/* 8023A3D8 00237338 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8023A3DC 0023733C 7F E3 FB 78 */ mr r3, r31 +/* 8023A3E0 00237340 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8023A3E4 00237344 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8023A3E8 00237348 7C 08 03 A6 */ mtlr r0 +/* 8023A3EC 0023734C 38 21 00 20 */ addi r1, r1, 0x20 +/* 8023A3F0 00237350 4E 80 00 20 */ blr + +.global sub_8023a3f4 +sub_8023a3f4: +/* 8023A3F4 00237354 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8023A3F8 00237358 7C 08 02 A6 */ mflr r0 +/* 8023A3FC 0023735C 90 01 00 24 */ stw r0, 0x24(r1) +/* 8023A400 00237360 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8023A404 00237364 7C BF 2B 78 */ mr r31, r5 +/* 8023A408 00237368 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8023A40C 0023736C 7C 9E 23 78 */ mr r30, r4 +/* 8023A410 00237370 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8023A414 00237374 7C 7D 1B 78 */ mr r29, r3 +/* 8023A418 00237378 7F C3 F3 78 */ mr r3, r30 +/* 8023A41C 0023737C 48 10 48 69 */ bl ReadLong__12CInputStreamFv +/* 8023A420 00237380 90 7D 00 00 */ stw r3, 0(r29) +/* 8023A424 00237384 7F C3 F3 78 */ mr r3, r30 +/* 8023A428 00237388 48 10 48 5D */ bl ReadLong__12CInputStreamFv +/* 8023A42C 0023738C 90 7D 00 04 */ stw r3, 4(r29) +/* 8023A430 00237390 7F C3 F3 78 */ mr r3, r30 +/* 8023A434 00237394 48 10 48 51 */ bl ReadLong__12CInputStreamFv +/* 8023A438 00237398 90 7D 00 08 */ stw r3, 8(r29) +/* 8023A43C 0023739C 7F C3 F3 78 */ mr r3, r30 +/* 8023A440 002373A0 48 10 48 45 */ bl ReadLong__12CInputStreamFv +/* 8023A444 002373A4 90 7D 00 0C */ stw r3, 0xc(r29) +/* 8023A448 002373A8 7F C3 F3 78 */ mr r3, r30 +/* 8023A44C 002373AC 48 10 48 39 */ bl ReadLong__12CInputStreamFv +/* 8023A450 002373B0 90 7D 00 10 */ stw r3, 0x10(r29) +/* 8023A454 002373B4 7F C3 F3 78 */ mr r3, r30 +/* 8023A458 002373B8 48 10 48 2D */ bl ReadLong__12CInputStreamFv +/* 8023A45C 002373BC 90 7D 00 14 */ stw r3, 0x14(r29) +/* 8023A460 002373C0 7F C3 F3 78 */ mr r3, r30 +/* 8023A464 002373C4 48 10 48 21 */ bl ReadLong__12CInputStreamFv +/* 8023A468 002373C8 2C 1F 00 08 */ cmpwi r31, 8 +/* 8023A46C 002373CC 90 7D 00 18 */ stw r3, 0x18(r29) +/* 8023A470 002373D0 40 81 00 10 */ ble lbl_8023A480 +/* 8023A474 002373D4 7F C3 F3 78 */ mr r3, r30 +/* 8023A478 002373D8 48 10 47 B1 */ bl ReadFloat__12CInputStreamFv +/* 8023A47C 002373DC 48 00 00 08 */ b lbl_8023A484 +lbl_8023A480: +/* 8023A480 002373E0 C0 22 B7 64 */ lfs f1, lbl_805AD484@sda21(r2) +lbl_8023A484: +/* 8023A484 002373E4 2C 1F 00 08 */ cmpwi r31, 8 +/* 8023A488 002373E8 D0 3D 00 1C */ stfs f1, 0x1c(r29) +/* 8023A48C 002373EC 40 81 00 10 */ ble lbl_8023A49C +/* 8023A490 002373F0 7F C3 F3 78 */ mr r3, r30 +/* 8023A494 002373F4 48 10 47 95 */ bl ReadFloat__12CInputStreamFv +/* 8023A498 002373F8 48 00 00 08 */ b lbl_8023A4A0 +lbl_8023A49C: +/* 8023A49C 002373FC C0 22 B7 64 */ lfs f1, lbl_805AD484@sda21(r2) +lbl_8023A4A0: +/* 8023A4A0 00237400 D0 3D 00 20 */ stfs f1, 0x20(r29) +/* 8023A4A4 00237404 7F A3 EB 78 */ mr r3, r29 +/* 8023A4A8 00237408 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8023A4AC 0023740C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8023A4B0 00237410 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8023A4B4 00237414 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8023A4B8 00237418 7C 08 03 A6 */ mtlr r0 +/* 8023A4BC 0023741C 38 21 00 20 */ addi r1, r1, 0x20 +/* 8023A4C0 00237420 4E 80 00 20 */ blr + +.global __lt__11CTeamAiRoleCFRC11CTeamAiRole +__lt__11CTeamAiRoleCFRC11CTeamAiRole: +/* 8023A4C4 00237424 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8023A4C8 00237428 C0 43 00 00 */ lfs f2, 0(r3) +/* 8023A4CC 0023742C C0 24 00 1C */ lfs f1, 0x1c(r4) +/* 8023A4D0 00237430 C0 05 00 1C */ lfs f0, 0x1c(r5) +/* 8023A4D4 00237434 EC A2 08 28 */ fsubs f5, f2, f1 +/* 8023A4D8 00237438 C0 83 00 04 */ lfs f4, 4(r3) +/* 8023A4DC 0023743C EC 62 00 28 */ fsubs f3, f2, f0 +/* 8023A4E0 00237440 C0 24 00 20 */ lfs f1, 0x20(r4) +/* 8023A4E4 00237444 C0 05 00 20 */ lfs f0, 0x20(r5) +/* 8023A4E8 00237448 EC E4 08 28 */ fsubs f7, f4, f1 +/* 8023A4EC 0023744C ED 24 00 28 */ fsubs f9, f4, f0 +/* 8023A4F0 00237450 C0 43 00 08 */ lfs f2, 8(r3) +/* 8023A4F4 00237454 C0 24 00 24 */ lfs f1, 0x24(r4) +/* 8023A4F8 00237458 EC 85 01 72 */ fmuls f4, f5, f5 +/* 8023A4FC 0023745C C0 05 00 24 */ lfs f0, 0x24(r5) +/* 8023A500 00237460 EC C2 08 28 */ fsubs f6, f2, f1 +/* 8023A504 00237464 ED 02 00 28 */ fsubs f8, f2, f0 +/* 8023A508 00237468 D0 A1 00 14 */ stfs f5, 0x14(r1) +/* 8023A50C 0023746C EC 47 01 F2 */ fmuls f2, f7, f7 +/* 8023A510 00237470 80 03 00 0C */ lwz r0, 0xc(r3) +/* 8023A514 00237474 EC 23 00 F2 */ fmuls f1, f3, f3 +/* 8023A518 00237478 EC 09 02 72 */ fmuls f0, f9, f9 +/* 8023A51C 0023747C EC 84 10 2A */ fadds f4, f4, f2 +/* 8023A520 00237480 2C 00 00 01 */ cmpwi r0, 1 +/* 8023A524 00237484 EC A6 01 B2 */ fmuls f5, f6, f6 +/* 8023A528 00237488 D0 E1 00 18 */ stfs f7, 0x18(r1) +/* 8023A52C 0023748C EC 01 00 2A */ fadds f0, f1, f0 +/* 8023A530 00237490 EC 48 02 32 */ fmuls f2, f8, f8 +/* 8023A534 00237494 EC 25 20 2A */ fadds f1, f5, f4 +/* 8023A538 00237498 D0 C1 00 1C */ stfs f6, 0x1c(r1) +/* 8023A53C 0023749C EC 02 00 2A */ fadds f0, f2, f0 +/* 8023A540 002374A0 D0 61 00 08 */ stfs f3, 8(r1) +/* 8023A544 002374A4 D1 21 00 0C */ stfs f9, 0xc(r1) +/* 8023A548 002374A8 D1 01 00 10 */ stfs f8, 0x10(r1) +/* 8023A54C 002374AC 41 82 00 34 */ beq lbl_8023A580 +/* 8023A550 002374B0 40 80 00 40 */ bge lbl_8023A590 +/* 8023A554 002374B4 2C 00 00 00 */ cmpwi r0, 0 +/* 8023A558 002374B8 40 80 00 0C */ bge lbl_8023A564 +/* 8023A55C 002374BC 48 00 00 34 */ b lbl_8023A590 +/* 8023A560 002374C0 48 00 00 30 */ b lbl_8023A590 +lbl_8023A564: +/* 8023A564 002374C4 A0 64 00 00 */ lhz r3, 0(r4) +/* 8023A568 002374C8 A0 05 00 00 */ lhz r0, 0(r5) +/* 8023A56C 002374CC 54 63 05 BE */ clrlwi r3, r3, 0x16 +/* 8023A570 002374D0 54 00 05 BE */ clrlwi r0, r0, 0x16 +/* 8023A574 002374D4 7C 00 18 50 */ subf r0, r0, r3 +/* 8023A578 002374D8 54 03 0F FE */ srwi r3, r0, 0x1f +/* 8023A57C 002374DC 48 00 00 48 */ b lbl_8023A5C4 +lbl_8023A580: +/* 8023A580 002374E0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8023A584 002374E4 7C 00 00 26 */ mfcr r0 +/* 8023A588 002374E8 54 03 0F FE */ srwi r3, r0, 0x1f +/* 8023A58C 002374EC 48 00 00 38 */ b lbl_8023A5C4 +lbl_8023A590: +/* 8023A590 002374F0 80 04 00 10 */ lwz r0, 0x10(r4) +/* 8023A594 002374F4 80 85 00 10 */ lwz r4, 0x10(r5) +/* 8023A598 002374F8 7C 00 20 00 */ cmpw r0, r4 +/* 8023A59C 002374FC 40 82 00 14 */ bne lbl_8023A5B0 +/* 8023A5A0 00237500 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8023A5A4 00237504 7C 00 00 26 */ mfcr r0 +/* 8023A5A8 00237508 54 03 0F FE */ srwi r3, r0, 0x1f +/* 8023A5AC 0023750C 48 00 00 18 */ b lbl_8023A5C4 +lbl_8023A5B0: +/* 8023A5B0 00237510 7C 80 02 78 */ xor r0, r4, r0 +/* 8023A5B4 00237514 7C 03 0E 70 */ srawi r3, r0, 1 +/* 8023A5B8 00237518 7C 00 20 38 */ and r0, r0, r4 +/* 8023A5BC 0023751C 7C 00 18 50 */ subf r0, r0, r3 +/* 8023A5C0 00237520 54 03 0F FE */ srwi r3, r0, 0x1f +lbl_8023A5C4: +/* 8023A5C4 00237524 38 21 00 20 */ addi r1, r1, 0x20 +/* 8023A5C8 00237528 4E 80 00 20 */ blr + +.global "sort_with_custom_comparator>" +"sort_with_custom_comparator>": +/* 8023A5CC 0023752C 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 8023A5D0 00237530 7C 08 02 A6 */ mflr r0 +/* 8023A5D4 00237534 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 8023A5D8 00237538 93 E1 00 AC */ stw r31, 0xac(r1) +/* 8023A5DC 0023753C 93 C1 00 A8 */ stw r30, 0xa8(r1) +/* 8023A5E0 00237540 7C BE 2B 78 */ mr r30, r5 +/* 8023A5E4 00237544 93 A1 00 A4 */ stw r29, 0xa4(r1) +/* 8023A5E8 00237548 7C 9D 23 78 */ mr r29, r4 +/* 8023A5EC 0023754C 3C 80 66 66 */ lis r4, 0x66666667@ha +/* 8023A5F0 00237550 93 81 00 A0 */ stw r28, 0xa0(r1) +/* 8023A5F4 00237554 7C 7C 1B 78 */ mr r28, r3 +/* 8023A5F8 00237558 38 84 66 67 */ addi r4, r4, 0x66666667@l +/* 8023A5FC 0023755C 80 63 00 00 */ lwz r3, 0(r3) +/* 8023A600 00237560 80 DD 00 00 */ lwz r6, 0(r29) +/* 8023A604 00237564 7C 03 30 50 */ subf r0, r3, r6 +/* 8023A608 00237568 7C 04 00 96 */ mulhw r0, r4, r0 +/* 8023A60C 0023756C 7C 00 26 70 */ srawi r0, r0, 4 +/* 8023A610 00237570 54 04 0F FE */ srwi r4, r0, 0x1f +/* 8023A614 00237574 7C 80 22 14 */ add r4, r0, r4 +/* 8023A618 00237578 2C 04 00 01 */ cmpwi r4, 1 +/* 8023A61C 0023757C 40 81 02 18 */ ble lbl_8023A834 +/* 8023A620 00237580 2C 04 00 14 */ cmpwi r4, 0x14 +/* 8023A624 00237584 41 81 00 48 */ bgt lbl_8023A66C +/* 8023A628 00237588 81 5E 00 00 */ lwz r10, 0(r30) +/* 8023A62C 0023758C 38 61 00 24 */ addi r3, r1, 0x24 +/* 8023A630 00237590 81 3E 00 04 */ lwz r9, 4(r30) +/* 8023A634 00237594 38 81 00 20 */ addi r4, r1, 0x20 +/* 8023A638 00237598 81 1E 00 08 */ lwz r8, 8(r30) +/* 8023A63C 0023759C 38 A1 00 60 */ addi r5, r1, 0x60 +/* 8023A640 002375A0 80 FE 00 0C */ lwz r7, 0xc(r30) +/* 8023A644 002375A4 80 DD 00 00 */ lwz r6, 0(r29) +/* 8023A648 002375A8 80 1C 00 00 */ lwz r0, 0(r28) +/* 8023A64C 002375AC 91 41 00 60 */ stw r10, 0x60(r1) +/* 8023A650 002375B0 91 21 00 64 */ stw r9, 0x64(r1) +/* 8023A654 002375B4 91 01 00 68 */ stw r8, 0x68(r1) +/* 8023A658 002375B8 90 E1 00 6C */ stw r7, 0x6c(r1) +/* 8023A65C 002375BC 90 C1 00 20 */ stw r6, 0x20(r1) +/* 8023A660 002375C0 90 01 00 24 */ stw r0, 0x24(r1) +/* 8023A664 002375C4 48 00 0D 05 */ bl sub_8023b368 +/* 8023A668 002375C8 48 00 01 CC */ b lbl_8023A834 +lbl_8023A66C: +/* 8023A66C 002375CC 54 80 0F FE */ srwi r0, r4, 0x1f +/* 8023A670 002375D0 38 A6 FF D8 */ addi r5, r6, -40 +/* 8023A674 002375D4 7C 00 22 14 */ add r0, r0, r4 +/* 8023A678 002375D8 80 9E 00 00 */ lwz r4, 0(r30) +/* 8023A67C 002375DC 7C 00 0E 70 */ srawi r0, r0, 1 +/* 8023A680 002375E0 81 1E 00 04 */ lwz r8, 4(r30) +/* 8023A684 002375E4 1C C0 00 28 */ mulli r6, r0, 0x28 +/* 8023A688 002375E8 80 FE 00 08 */ lwz r7, 8(r30) +/* 8023A68C 002375EC 80 1E 00 0C */ lwz r0, 0xc(r30) +/* 8023A690 002375F0 90 A1 00 2C */ stw r5, 0x2c(r1) +/* 8023A694 002375F4 7F E3 32 14 */ add r31, r3, r6 +/* 8023A698 002375F8 90 81 00 50 */ stw r4, 0x50(r1) +/* 8023A69C 002375FC 7F E4 FB 78 */ mr r4, r31 +/* 8023A6A0 00237600 38 C1 00 50 */ addi r6, r1, 0x50 +/* 8023A6A4 00237604 91 01 00 54 */ stw r8, 0x54(r1) +/* 8023A6A8 00237608 90 E1 00 58 */ stw r7, 0x58(r1) +/* 8023A6AC 0023760C 90 01 00 5C */ stw r0, 0x5c(r1) +/* 8023A6B0 00237610 48 00 09 91 */ bl sub_8023b040 +/* 8023A6B4 00237614 A0 1F 00 00 */ lhz r0, 0(r31) +/* 8023A6B8 00237618 80 9C 00 00 */ lwz r4, 0(r28) +/* 8023A6BC 0023761C B0 01 00 70 */ sth r0, 0x70(r1) +/* 8023A6C0 00237620 80 61 00 2C */ lwz r3, 0x2c(r1) +/* 8023A6C4 00237624 38 84 00 28 */ addi r4, r4, 0x28 +/* 8023A6C8 00237628 80 BF 00 04 */ lwz r5, 4(r31) +/* 8023A6CC 0023762C 38 03 FF D8 */ addi r0, r3, -40 +/* 8023A6D0 00237630 90 81 00 28 */ stw r4, 0x28(r1) +/* 8023A6D4 00237634 90 A1 00 74 */ stw r5, 0x74(r1) +/* 8023A6D8 00237638 80 7F 00 08 */ lwz r3, 8(r31) +/* 8023A6DC 0023763C 90 01 00 2C */ stw r0, 0x2c(r1) +/* 8023A6E0 00237640 90 61 00 78 */ stw r3, 0x78(r1) +/* 8023A6E4 00237644 80 1F 00 0C */ lwz r0, 0xc(r31) +/* 8023A6E8 00237648 90 01 00 7C */ stw r0, 0x7c(r1) +/* 8023A6EC 0023764C 80 1F 00 10 */ lwz r0, 0x10(r31) +/* 8023A6F0 00237650 90 01 00 80 */ stw r0, 0x80(r1) +/* 8023A6F4 00237654 80 1F 00 14 */ lwz r0, 0x14(r31) +/* 8023A6F8 00237658 90 01 00 84 */ stw r0, 0x84(r1) +/* 8023A6FC 0023765C 80 1F 00 18 */ lwz r0, 0x18(r31) +/* 8023A700 00237660 90 01 00 88 */ stw r0, 0x88(r1) +/* 8023A704 00237664 C0 1F 00 1C */ lfs f0, 0x1c(r31) +/* 8023A708 00237668 D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 8023A70C 0023766C C0 1F 00 20 */ lfs f0, 0x20(r31) +/* 8023A710 00237670 D0 01 00 90 */ stfs f0, 0x90(r1) +/* 8023A714 00237674 C0 1F 00 24 */ lfs f0, 0x24(r31) +/* 8023A718 00237678 D0 01 00 94 */ stfs f0, 0x94(r1) +/* 8023A71C 0023767C 48 00 00 10 */ b lbl_8023A72C +lbl_8023A720: +/* 8023A720 00237680 80 61 00 28 */ lwz r3, 0x28(r1) +/* 8023A724 00237684 38 03 00 28 */ addi r0, r3, 0x28 +/* 8023A728 00237688 90 01 00 28 */ stw r0, 0x28(r1) +lbl_8023A72C: +/* 8023A72C 0023768C 80 81 00 28 */ lwz r4, 0x28(r1) +/* 8023A730 00237690 7F C3 F3 78 */ mr r3, r30 +/* 8023A734 00237694 38 A1 00 70 */ addi r5, r1, 0x70 +/* 8023A738 00237698 4B FF FD 8D */ bl __lt__11CTeamAiRoleCFRC11CTeamAiRole +/* 8023A73C 0023769C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8023A740 002376A0 40 82 FF E0 */ bne lbl_8023A720 +/* 8023A744 002376A4 48 00 00 10 */ b lbl_8023A754 +lbl_8023A748: +/* 8023A748 002376A8 80 61 00 2C */ lwz r3, 0x2c(r1) +/* 8023A74C 002376AC 38 03 FF D8 */ addi r0, r3, -40 +/* 8023A750 002376B0 90 01 00 2C */ stw r0, 0x2c(r1) +lbl_8023A754: +/* 8023A754 002376B4 80 A1 00 2C */ lwz r5, 0x2c(r1) +/* 8023A758 002376B8 7F C3 F3 78 */ mr r3, r30 +/* 8023A75C 002376BC 38 81 00 70 */ addi r4, r1, 0x70 +/* 8023A760 002376C0 4B FF FD 65 */ bl __lt__11CTeamAiRoleCFRC11CTeamAiRole +/* 8023A764 002376C4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8023A768 002376C8 40 82 FF E0 */ bne lbl_8023A748 +/* 8023A76C 002376CC 80 61 00 28 */ lwz r3, 0x28(r1) +/* 8023A770 002376D0 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 8023A774 002376D4 7C 03 00 40 */ cmplw r3, r0 +/* 8023A778 002376D8 40 80 00 3C */ bge lbl_8023A7B4 +/* 8023A77C 002376DC 80 A1 00 2C */ lwz r5, 0x2c(r1) +/* 8023A780 002376E0 38 61 00 1C */ addi r3, r1, 0x1c +/* 8023A784 002376E4 80 01 00 28 */ lwz r0, 0x28(r1) +/* 8023A788 002376E8 38 81 00 18 */ addi r4, r1, 0x18 +/* 8023A78C 002376EC 90 A1 00 18 */ stw r5, 0x18(r1) +/* 8023A790 002376F0 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8023A794 002376F4 48 00 00 C1 */ bl __swap__11CTeamAiRoleFRC11CTeamAiRole +/* 8023A798 002376F8 80 81 00 28 */ lwz r4, 0x28(r1) +/* 8023A79C 002376FC 80 61 00 2C */ lwz r3, 0x2c(r1) +/* 8023A7A0 00237700 38 84 00 28 */ addi r4, r4, 0x28 +/* 8023A7A4 00237704 38 03 FF D8 */ addi r0, r3, -40 +/* 8023A7A8 00237708 90 81 00 28 */ stw r4, 0x28(r1) +/* 8023A7AC 0023770C 90 01 00 2C */ stw r0, 0x2c(r1) +/* 8023A7B0 00237710 4B FF FF 7C */ b lbl_8023A72C +lbl_8023A7B4: +/* 8023A7B4 00237714 81 5E 00 00 */ lwz r10, 0(r30) +/* 8023A7B8 00237718 38 61 00 14 */ addi r3, r1, 0x14 +/* 8023A7BC 0023771C 81 3E 00 04 */ lwz r9, 4(r30) +/* 8023A7C0 00237720 38 81 00 10 */ addi r4, r1, 0x10 +/* 8023A7C4 00237724 81 1E 00 08 */ lwz r8, 8(r30) +/* 8023A7C8 00237728 38 A1 00 40 */ addi r5, r1, 0x40 +/* 8023A7CC 0023772C 80 FE 00 0C */ lwz r7, 0xc(r30) +/* 8023A7D0 00237730 80 C1 00 28 */ lwz r6, 0x28(r1) +/* 8023A7D4 00237734 80 1C 00 00 */ lwz r0, 0(r28) +/* 8023A7D8 00237738 91 41 00 40 */ stw r10, 0x40(r1) +/* 8023A7DC 0023773C 91 21 00 44 */ stw r9, 0x44(r1) +/* 8023A7E0 00237740 91 01 00 48 */ stw r8, 0x48(r1) +/* 8023A7E4 00237744 90 E1 00 4C */ stw r7, 0x4c(r1) +/* 8023A7E8 00237748 90 C1 00 10 */ stw r6, 0x10(r1) +/* 8023A7EC 0023774C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8023A7F0 00237750 4B FF FD DD */ bl "sort_with_custom_comparator>" +/* 8023A7F4 00237754 81 5E 00 00 */ lwz r10, 0(r30) +/* 8023A7F8 00237758 38 61 00 0C */ addi r3, r1, 0xc +/* 8023A7FC 0023775C 81 3E 00 04 */ lwz r9, 4(r30) +/* 8023A800 00237760 38 81 00 08 */ addi r4, r1, 8 +/* 8023A804 00237764 81 1E 00 08 */ lwz r8, 8(r30) +/* 8023A808 00237768 38 A1 00 30 */ addi r5, r1, 0x30 +/* 8023A80C 0023776C 80 FE 00 0C */ lwz r7, 0xc(r30) +/* 8023A810 00237770 80 DD 00 00 */ lwz r6, 0(r29) +/* 8023A814 00237774 80 01 00 28 */ lwz r0, 0x28(r1) +/* 8023A818 00237778 91 41 00 30 */ stw r10, 0x30(r1) +/* 8023A81C 0023777C 91 21 00 34 */ stw r9, 0x34(r1) +/* 8023A820 00237780 91 01 00 38 */ stw r8, 0x38(r1) +/* 8023A824 00237784 90 E1 00 3C */ stw r7, 0x3c(r1) +/* 8023A828 00237788 90 C1 00 08 */ stw r6, 8(r1) +/* 8023A82C 0023778C 90 01 00 0C */ stw r0, 0xc(r1) +/* 8023A830 00237790 4B FF FD 9D */ bl "sort_with_custom_comparator>" +lbl_8023A834: +/* 8023A834 00237794 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 8023A838 00237798 83 E1 00 AC */ lwz r31, 0xac(r1) +/* 8023A83C 0023779C 83 C1 00 A8 */ lwz r30, 0xa8(r1) +/* 8023A840 002377A0 83 A1 00 A4 */ lwz r29, 0xa4(r1) +/* 8023A844 002377A4 83 81 00 A0 */ lwz r28, 0xa0(r1) +/* 8023A848 002377A8 7C 08 03 A6 */ mtlr r0 +/* 8023A84C 002377AC 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 8023A850 002377B0 4E 80 00 20 */ blr + +.global __swap__11CTeamAiRoleFRC11CTeamAiRole +__swap__11CTeamAiRoleFRC11CTeamAiRole: +/* 8023A854 002377B4 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8023A858 002377B8 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8023A85C 002377BC 93 C1 00 38 */ stw r30, 0x38(r1) +/* 8023A860 002377C0 93 A1 00 34 */ stw r29, 0x34(r1) +/* 8023A864 002377C4 93 81 00 30 */ stw r28, 0x30(r1) +/* 8023A868 002377C8 83 83 00 00 */ lwz r28, 0(r3) +/* 8023A86C 002377CC 83 A4 00 00 */ lwz r29, 0(r4) +/* 8023A870 002377D0 A3 DC 00 00 */ lhz r30, 0(r28) +/* 8023A874 002377D4 83 FC 00 04 */ lwz r31, 4(r28) +/* 8023A878 002377D8 81 9C 00 08 */ lwz r12, 8(r28) +/* 8023A87C 002377DC 81 7C 00 0C */ lwz r11, 0xc(r28) +/* 8023A880 002377E0 81 5C 00 10 */ lwz r10, 0x10(r28) +/* 8023A884 002377E4 81 3C 00 14 */ lwz r9, 0x14(r28) +/* 8023A888 002377E8 81 1C 00 18 */ lwz r8, 0x18(r28) +/* 8023A88C 002377EC C0 5C 00 1C */ lfs f2, 0x1c(r28) +/* 8023A890 002377F0 C0 3C 00 20 */ lfs f1, 0x20(r28) +/* 8023A894 002377F4 C0 1C 00 24 */ lfs f0, 0x24(r28) +/* 8023A898 002377F8 A0 1D 00 00 */ lhz r0, 0(r29) +/* 8023A89C 002377FC D0 41 00 24 */ stfs f2, 0x24(r1) +/* 8023A8A0 00237800 B0 1C 00 00 */ sth r0, 0(r28) +/* 8023A8A4 00237804 80 A1 00 24 */ lwz r5, 0x24(r1) +/* 8023A8A8 00237808 80 1D 00 04 */ lwz r0, 4(r29) +/* 8023A8AC 0023780C D0 21 00 28 */ stfs f1, 0x28(r1) +/* 8023A8B0 00237810 90 1C 00 04 */ stw r0, 4(r28) +/* 8023A8B4 00237814 80 61 00 28 */ lwz r3, 0x28(r1) +/* 8023A8B8 00237818 80 1D 00 08 */ lwz r0, 8(r29) +/* 8023A8BC 0023781C D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 8023A8C0 00237820 90 1C 00 08 */ stw r0, 8(r28) +/* 8023A8C4 00237824 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 8023A8C8 00237828 80 DD 00 0C */ lwz r6, 0xc(r29) +/* 8023A8CC 0023782C B3 C1 00 08 */ sth r30, 8(r1) +/* 8023A8D0 00237830 90 DC 00 0C */ stw r6, 0xc(r28) +/* 8023A8D4 00237834 80 DD 00 10 */ lwz r6, 0x10(r29) +/* 8023A8D8 00237838 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8023A8DC 0023783C 90 DC 00 10 */ stw r6, 0x10(r28) +/* 8023A8E0 00237840 80 DD 00 14 */ lwz r6, 0x14(r29) +/* 8023A8E4 00237844 91 81 00 10 */ stw r12, 0x10(r1) +/* 8023A8E8 00237848 90 DC 00 14 */ stw r6, 0x14(r28) +/* 8023A8EC 0023784C 80 DD 00 18 */ lwz r6, 0x18(r29) +/* 8023A8F0 00237850 91 61 00 14 */ stw r11, 0x14(r1) +/* 8023A8F4 00237854 90 DC 00 18 */ stw r6, 0x18(r28) +/* 8023A8F8 00237858 80 FD 00 1C */ lwz r7, 0x1c(r29) +/* 8023A8FC 0023785C 80 DD 00 20 */ lwz r6, 0x20(r29) +/* 8023A900 00237860 91 41 00 18 */ stw r10, 0x18(r1) +/* 8023A904 00237864 90 FC 00 1C */ stw r7, 0x1c(r28) +/* 8023A908 00237868 90 DC 00 20 */ stw r6, 0x20(r28) +/* 8023A90C 0023786C 80 DD 00 24 */ lwz r6, 0x24(r29) +/* 8023A910 00237870 91 21 00 1C */ stw r9, 0x1c(r1) +/* 8023A914 00237874 90 DC 00 24 */ stw r6, 0x24(r28) +/* 8023A918 00237878 80 84 00 00 */ lwz r4, 0(r4) +/* 8023A91C 0023787C 91 01 00 20 */ stw r8, 0x20(r1) +/* 8023A920 00237880 B3 C4 00 00 */ sth r30, 0(r4) +/* 8023A924 00237884 93 E4 00 04 */ stw r31, 4(r4) +/* 8023A928 00237888 91 84 00 08 */ stw r12, 8(r4) +/* 8023A92C 0023788C 91 64 00 0C */ stw r11, 0xc(r4) +/* 8023A930 00237890 91 44 00 10 */ stw r10, 0x10(r4) +/* 8023A934 00237894 91 24 00 14 */ stw r9, 0x14(r4) +/* 8023A938 00237898 91 04 00 18 */ stw r8, 0x18(r4) +/* 8023A93C 0023789C 90 A4 00 1C */ stw r5, 0x1c(r4) +/* 8023A940 002378A0 90 64 00 20 */ stw r3, 0x20(r4) +/* 8023A944 002378A4 90 04 00 24 */ stw r0, 0x24(r4) +/* 8023A948 002378A8 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8023A94C 002378AC 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 8023A950 002378B0 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 8023A954 002378B4 83 81 00 30 */ lwz r28, 0x30(r1) +/* 8023A958 002378B8 38 21 00 40 */ addi r1, r1, 0x40 +/* 8023A95C 002378BC 4E 80 00 20 */ blr + +.global "lower_bound14const_iterator,11CTeamAiRole>__4rstlFQ34rstl46list<11CTeamAiRole,Q24rstl17rmemory_allocator>14iteratorQ34rstl46list<11CTeamAiRole,Q24rstl17rmemory_allocator>14iteratorRC11CTeamAiRole" +"lower_bound14const_iterator,11CTeamAiRole>__4rstlFQ34rstl46list<11CTeamAiRole,Q24rstl17rmemory_allocator>14iteratorQ34rstl46list<11CTeamAiRole,Q24rstl17rmemory_allocator>14iteratorRC11CTeamAiRole": +/* 8023A960 002378C0 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8023A964 002378C4 7C 08 02 A6 */ mflr r0 +/* 8023A968 002378C8 90 01 00 34 */ stw r0, 0x34(r1) +/* 8023A96C 002378CC BF 61 00 1C */ stmw r27, 0x1c(r1) +/* 8023A970 002378D0 7C 9E 23 78 */ mr r30, r4 +/* 8023A974 002378D4 7C 7D 1B 78 */ mr r29, r3 +/* 8023A978 002378D8 7C DF 33 78 */ mr r31, r6 +/* 8023A97C 002378DC 38 61 00 0C */ addi r3, r1, 0xc +/* 8023A980 002378E0 80 85 00 00 */ lwz r4, 0(r5) +/* 8023A984 002378E4 80 1E 00 00 */ lwz r0, 0(r30) +/* 8023A988 002378E8 90 81 00 08 */ stw r4, 8(r1) +/* 8023A98C 002378EC 38 81 00 08 */ addi r4, r1, 8 +/* 8023A990 002378F0 90 01 00 0C */ stw r0, 0xc(r1) +/* 8023A994 002378F4 48 00 05 15 */ bl sub_8023aea8 +/* 8023A998 002378F8 80 1E 00 00 */ lwz r0, 0(r30) +/* 8023A99C 002378FC 7C 7C 1B 78 */ mr r28, r3 +/* 8023A9A0 00237900 90 01 00 10 */ stw r0, 0x10(r1) +/* 8023A9A4 00237904 48 00 00 60 */ b lbl_8023AA04 +lbl_8023A9A8: +/* 8023A9A8 00237908 57 83 0F FE */ srwi r3, r28, 0x1f +/* 8023A9AC 0023790C 80 1E 00 00 */ lwz r0, 0(r30) +/* 8023A9B0 00237910 7C 83 E2 14 */ add r4, r3, r28 +/* 8023A9B4 00237914 38 61 00 10 */ addi r3, r1, 0x10 +/* 8023A9B8 00237918 7C 9B 0E 70 */ srawi r27, r4, 1 +/* 8023A9BC 0023791C 90 01 00 10 */ stw r0, 0x10(r1) +/* 8023A9C0 00237920 7F 64 DB 78 */ mr r4, r27 +/* 8023A9C4 00237924 48 00 03 E5 */ bl sub_8023ada8 +/* 8023A9C8 00237928 80 81 00 10 */ lwz r4, 0x10(r1) +/* 8023A9CC 0023792C A0 1F 00 00 */ lhz r0, 0(r31) +/* 8023A9D0 00237930 A0 64 00 00 */ lhz r3, 0(r4) +/* 8023A9D4 00237934 54 00 05 BE */ clrlwi r0, r0, 0x16 +/* 8023A9D8 00237938 54 63 05 BE */ clrlwi r3, r3, 0x16 +/* 8023A9DC 0023793C 7C 03 00 40 */ cmplw r3, r0 +/* 8023A9E0 00237940 40 80 00 20 */ bge lbl_8023AA00 +/* 8023A9E4 00237944 90 9E 00 00 */ stw r4, 0(r30) +/* 8023A9E8 00237948 7C 7B E0 50 */ subf r3, r27, r28 +/* 8023A9EC 0023794C 3B 83 FF FF */ addi r28, r3, -1 +/* 8023A9F0 00237950 80 7E 00 00 */ lwz r3, 0(r30) +/* 8023A9F4 00237954 38 03 00 28 */ addi r0, r3, 0x28 +/* 8023A9F8 00237958 90 1E 00 00 */ stw r0, 0(r30) +/* 8023A9FC 0023795C 48 00 00 08 */ b lbl_8023AA04 +lbl_8023AA00: +/* 8023AA00 00237960 7F 7C DB 78 */ mr r28, r27 +lbl_8023AA04: +/* 8023AA04 00237964 2C 1C 00 00 */ cmpwi r28, 0 +/* 8023AA08 00237968 41 81 FF A0 */ bgt lbl_8023A9A8 +/* 8023AA0C 0023796C 80 1E 00 00 */ lwz r0, 0(r30) +/* 8023AA10 00237970 90 1D 00 00 */ stw r0, 0(r29) +/* 8023AA14 00237974 BB 61 00 1C */ lmw r27, 0x1c(r1) +/* 8023AA18 00237978 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8023AA1C 0023797C 7C 08 03 A6 */ mtlr r0 +/* 8023AA20 00237980 38 21 00 30 */ addi r1, r1, 0x30 +/* 8023AA24 00237984 4E 80 00 20 */ blr + +.global "lower_bound_const8iterator,11CTeamAiRole>__4rstlFQ34rstl46list<11CTeamAiRole,Q24rstl17rmemory_allocator>8const_iteratorQ34rstl46list<11CTeamAiRole,Q24rstl17rmemory_allocator>8const_iteratorRC11CTeamAiRole" +"lower_bound_const8iterator,11CTeamAiRole>__4rstlFQ34rstl46list<11CTeamAiRole,Q24rstl17rmemory_allocator>8const_iteratorQ34rstl46list<11CTeamAiRole,Q24rstl17rmemory_allocator>8const_iteratorRC11CTeamAiRole": +/* 8023AA28 00237988 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8023AA2C 0023798C 7C 08 02 A6 */ mflr r0 +/* 8023AA30 00237990 90 01 00 34 */ stw r0, 0x34(r1) +/* 8023AA34 00237994 BF 61 00 1C */ stmw r27, 0x1c(r1) +/* 8023AA38 00237998 7C 9E 23 78 */ mr r30, r4 +/* 8023AA3C 0023799C 7C 7D 1B 78 */ mr r29, r3 +/* 8023AA40 002379A0 7C DF 33 78 */ mr r31, r6 +/* 8023AA44 002379A4 38 61 00 0C */ addi r3, r1, 0xc +/* 8023AA48 002379A8 80 85 00 00 */ lwz r4, 0(r5) +/* 8023AA4C 002379AC 80 1E 00 00 */ lwz r0, 0(r30) +/* 8023AA50 002379B0 90 81 00 08 */ stw r4, 8(r1) +/* 8023AA54 002379B4 38 81 00 08 */ addi r4, r1, 8 +/* 8023AA58 002379B8 90 01 00 0C */ stw r0, 0xc(r1) +/* 8023AA5C 002379BC 48 00 04 91 */ bl sub_8023aeec +/* 8023AA60 002379C0 80 1E 00 00 */ lwz r0, 0(r30) +/* 8023AA64 002379C4 7C 7C 1B 78 */ mr r28, r3 +/* 8023AA68 002379C8 90 01 00 10 */ stw r0, 0x10(r1) +/* 8023AA6C 002379CC 48 00 00 60 */ b lbl_8023AACC +lbl_8023AA70: +/* 8023AA70 002379D0 57 83 0F FE */ srwi r3, r28, 0x1f +/* 8023AA74 002379D4 80 1E 00 00 */ lwz r0, 0(r30) +/* 8023AA78 002379D8 7C 83 E2 14 */ add r4, r3, r28 +/* 8023AA7C 002379DC 38 61 00 10 */ addi r3, r1, 0x10 +/* 8023AA80 002379E0 7C 9B 0E 70 */ srawi r27, r4, 1 +/* 8023AA84 002379E4 90 01 00 10 */ stw r0, 0x10(r1) +/* 8023AA88 002379E8 7F 64 DB 78 */ mr r4, r27 +/* 8023AA8C 002379EC 48 00 03 49 */ bl sub_8023add4 +/* 8023AA90 002379F0 80 81 00 10 */ lwz r4, 0x10(r1) +/* 8023AA94 002379F4 A0 1F 00 00 */ lhz r0, 0(r31) +/* 8023AA98 002379F8 A0 64 00 00 */ lhz r3, 0(r4) +/* 8023AA9C 002379FC 54 00 05 BE */ clrlwi r0, r0, 0x16 +/* 8023AAA0 00237A00 54 63 05 BE */ clrlwi r3, r3, 0x16 +/* 8023AAA4 00237A04 7C 03 00 40 */ cmplw r3, r0 +/* 8023AAA8 00237A08 40 80 00 20 */ bge lbl_8023AAC8 +/* 8023AAAC 00237A0C 90 9E 00 00 */ stw r4, 0(r30) +/* 8023AAB0 00237A10 7C 7B E0 50 */ subf r3, r27, r28 +/* 8023AAB4 00237A14 3B 83 FF FF */ addi r28, r3, -1 +/* 8023AAB8 00237A18 80 7E 00 00 */ lwz r3, 0(r30) +/* 8023AABC 00237A1C 38 03 00 28 */ addi r0, r3, 0x28 +/* 8023AAC0 00237A20 90 1E 00 00 */ stw r0, 0(r30) +/* 8023AAC4 00237A24 48 00 00 08 */ b lbl_8023AACC +lbl_8023AAC8: +/* 8023AAC8 00237A28 7F 7C DB 78 */ mr r28, r27 +lbl_8023AACC: +/* 8023AACC 00237A2C 2C 1C 00 00 */ cmpwi r28, 0 +/* 8023AAD0 00237A30 41 81 FF A0 */ bgt lbl_8023AA70 +/* 8023AAD4 00237A34 80 1E 00 00 */ lwz r0, 0(r30) +/* 8023AAD8 00237A38 90 1D 00 00 */ stw r0, 0(r29) +/* 8023AADC 00237A3C BB 61 00 1C */ lmw r27, 0x1c(r1) +/* 8023AAE0 00237A40 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8023AAE4 00237A44 7C 08 03 A6 */ mtlr r0 +/* 8023AAE8 00237A48 38 21 00 30 */ addi r1, r1, 0x30 +/* 8023AAEC 00237A4C 4E 80 00 20 */ blr + +.global "lower_bound_const>" +"lower_bound_const>": +/* 8023AAF0 00237A50 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8023AAF4 00237A54 7C 08 02 A6 */ mflr r0 +/* 8023AAF8 00237A58 90 01 00 34 */ stw r0, 0x34(r1) +/* 8023AAFC 00237A5C BF 61 00 1C */ stmw r27, 0x1c(r1) +/* 8023AB00 00237A60 7C 9F 23 78 */ mr r31, r4 +/* 8023AB04 00237A64 7C 7E 1B 78 */ mr r30, r3 +/* 8023AB08 00237A68 7C DB 33 78 */ mr r27, r6 +/* 8023AB0C 00237A6C 38 61 00 0C */ addi r3, r1, 0xc +/* 8023AB10 00237A70 80 85 00 00 */ lwz r4, 0(r5) +/* 8023AB14 00237A74 80 1F 00 00 */ lwz r0, 0(r31) +/* 8023AB18 00237A78 90 81 00 08 */ stw r4, 8(r1) +/* 8023AB1C 00237A7C 38 81 00 08 */ addi r4, r1, 8 +/* 8023AB20 00237A80 90 01 00 0C */ stw r0, 0xc(r1) +/* 8023AB24 00237A84 48 00 04 0D */ bl sub_8023af30 +/* 8023AB28 00237A88 80 1F 00 00 */ lwz r0, 0(r31) +/* 8023AB2C 00237A8C 7C 7D 1B 78 */ mr r29, r3 +/* 8023AB30 00237A90 90 01 00 10 */ stw r0, 0x10(r1) +/* 8023AB34 00237A94 48 00 00 58 */ b lbl_8023AB8C +lbl_8023AB38: +/* 8023AB38 00237A98 57 A3 0F FE */ srwi r3, r29, 0x1f +/* 8023AB3C 00237A9C 80 1F 00 00 */ lwz r0, 0(r31) +/* 8023AB40 00237AA0 7C 83 EA 14 */ add r4, r3, r29 +/* 8023AB44 00237AA4 38 61 00 10 */ addi r3, r1, 0x10 +/* 8023AB48 00237AA8 7C 9C 0E 70 */ srawi r28, r4, 1 +/* 8023AB4C 00237AAC 90 01 00 10 */ stw r0, 0x10(r1) +/* 8023AB50 00237AB0 7F 84 E3 78 */ mr r4, r28 +/* 8023AB54 00237AB4 48 00 02 AD */ bl sub_8023ae00 +/* 8023AB58 00237AB8 80 81 00 10 */ lwz r4, 0x10(r1) +/* 8023AB5C 00237ABC A0 1B 00 00 */ lhz r0, 0(r27) +/* 8023AB60 00237AC0 A0 64 00 00 */ lhz r3, 0(r4) +/* 8023AB64 00237AC4 7C 03 00 40 */ cmplw r3, r0 +/* 8023AB68 00237AC8 40 80 00 20 */ bge lbl_8023AB88 +/* 8023AB6C 00237ACC 90 9F 00 00 */ stw r4, 0(r31) +/* 8023AB70 00237AD0 7C 7C E8 50 */ subf r3, r28, r29 +/* 8023AB74 00237AD4 3B A3 FF FF */ addi r29, r3, -1 +/* 8023AB78 00237AD8 80 7F 00 00 */ lwz r3, 0(r31) +/* 8023AB7C 00237ADC 38 03 00 02 */ addi r0, r3, 2 +/* 8023AB80 00237AE0 90 1F 00 00 */ stw r0, 0(r31) +/* 8023AB84 00237AE4 48 00 00 08 */ b lbl_8023AB8C +lbl_8023AB88: +/* 8023AB88 00237AE8 7F 9D E3 78 */ mr r29, r28 +lbl_8023AB8C: +/* 8023AB8C 00237AEC 2C 1D 00 00 */ cmpwi r29, 0 +/* 8023AB90 00237AF0 41 81 FF A8 */ bgt lbl_8023AB38 +/* 8023AB94 00237AF4 80 1F 00 00 */ lwz r0, 0(r31) +/* 8023AB98 00237AF8 90 1E 00 00 */ stw r0, 0(r30) +/* 8023AB9C 00237AFC BB 61 00 1C */ lmw r27, 0x1c(r1) +/* 8023ABA0 00237B00 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8023ABA4 00237B04 7C 08 03 A6 */ mtlr r0 +/* 8023ABA8 00237B08 38 21 00 30 */ addi r1, r1, 0x30 +/* 8023ABAC 00237B0C 4E 80 00 20 */ blr + +.global "lower_bound>" +"lower_bound>": +/* 8023ABB0 00237B10 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8023ABB4 00237B14 7C 08 02 A6 */ mflr r0 +/* 8023ABB8 00237B18 90 01 00 34 */ stw r0, 0x34(r1) +/* 8023ABBC 00237B1C BF 61 00 1C */ stmw r27, 0x1c(r1) +/* 8023ABC0 00237B20 7C 9F 23 78 */ mr r31, r4 +/* 8023ABC4 00237B24 7C 7E 1B 78 */ mr r30, r3 +/* 8023ABC8 00237B28 7C DB 33 78 */ mr r27, r6 +/* 8023ABCC 00237B2C 38 61 00 0C */ addi r3, r1, 0xc +/* 8023ABD0 00237B30 80 85 00 00 */ lwz r4, 0(r5) +/* 8023ABD4 00237B34 80 1F 00 00 */ lwz r0, 0(r31) +/* 8023ABD8 00237B38 90 81 00 08 */ stw r4, 8(r1) +/* 8023ABDC 00237B3C 38 81 00 08 */ addi r4, r1, 8 +/* 8023ABE0 00237B40 90 01 00 0C */ stw r0, 0xc(r1) +/* 8023ABE4 00237B44 48 00 03 91 */ bl sub_8023af74 +/* 8023ABE8 00237B48 80 1F 00 00 */ lwz r0, 0(r31) +/* 8023ABEC 00237B4C 7C 7D 1B 78 */ mr r29, r3 +/* 8023ABF0 00237B50 90 01 00 10 */ stw r0, 0x10(r1) +/* 8023ABF4 00237B54 48 00 00 58 */ b lbl_8023AC4C +lbl_8023ABF8: +/* 8023ABF8 00237B58 57 A3 0F FE */ srwi r3, r29, 0x1f +/* 8023ABFC 00237B5C 80 1F 00 00 */ lwz r0, 0(r31) +/* 8023AC00 00237B60 7C 83 EA 14 */ add r4, r3, r29 +/* 8023AC04 00237B64 38 61 00 10 */ addi r3, r1, 0x10 +/* 8023AC08 00237B68 7C 9C 0E 70 */ srawi r28, r4, 1 +/* 8023AC0C 00237B6C 90 01 00 10 */ stw r0, 0x10(r1) +/* 8023AC10 00237B70 7F 84 E3 78 */ mr r4, r28 +/* 8023AC14 00237B74 48 00 02 19 */ bl sub_8023ae2c +/* 8023AC18 00237B78 80 81 00 10 */ lwz r4, 0x10(r1) +/* 8023AC1C 00237B7C A0 1B 00 00 */ lhz r0, 0(r27) +/* 8023AC20 00237B80 A0 64 00 00 */ lhz r3, 0(r4) +/* 8023AC24 00237B84 7C 03 00 40 */ cmplw r3, r0 +/* 8023AC28 00237B88 40 80 00 20 */ bge lbl_8023AC48 +/* 8023AC2C 00237B8C 90 9F 00 00 */ stw r4, 0(r31) +/* 8023AC30 00237B90 7C 7C E8 50 */ subf r3, r28, r29 +/* 8023AC34 00237B94 3B A3 FF FF */ addi r29, r3, -1 +/* 8023AC38 00237B98 80 7F 00 00 */ lwz r3, 0(r31) +/* 8023AC3C 00237B9C 38 03 00 02 */ addi r0, r3, 2 +/* 8023AC40 00237BA0 90 1F 00 00 */ stw r0, 0(r31) +/* 8023AC44 00237BA4 48 00 00 08 */ b lbl_8023AC4C +lbl_8023AC48: +/* 8023AC48 00237BA8 7F 9D E3 78 */ mr r29, r28 +lbl_8023AC4C: +/* 8023AC4C 00237BAC 2C 1D 00 00 */ cmpwi r29, 0 +/* 8023AC50 00237BB0 41 81 FF A8 */ bgt lbl_8023ABF8 +/* 8023AC54 00237BB4 80 1F 00 00 */ lwz r0, 0(r31) +/* 8023AC58 00237BB8 90 1E 00 00 */ stw r0, 0(r30) +/* 8023AC5C 00237BBC BB 61 00 1C */ lmw r27, 0x1c(r1) +/* 8023AC60 00237BC0 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8023AC64 00237BC4 7C 08 03 A6 */ mtlr r0 +/* 8023AC68 00237BC8 38 21 00 30 */ addi r1, r1, 0x30 +/* 8023AC6C 00237BCC 4E 80 00 20 */ blr + +.global sub_8023ac70 +sub_8023ac70: +/* 8023AC70 00237BD0 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8023AC74 00237BD4 7C 08 02 A6 */ mflr r0 +/* 8023AC78 00237BD8 90 01 00 34 */ stw r0, 0x34(r1) +/* 8023AC7C 00237BDC 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8023AC80 00237BE0 7C 9F 23 78 */ mr r31, r4 +/* 8023AC84 00237BE4 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8023AC88 00237BE8 7C 7E 1B 78 */ mr r30, r3 +/* 8023AC8C 00237BEC 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8023AC90 00237BF0 80 03 00 08 */ lwz r0, 8(r3) +/* 8023AC94 00237BF4 7C 1F 00 00 */ cmpw r31, r0 +/* 8023AC98 00237BF8 40 81 00 F4 */ ble lbl_8023AD8C +/* 8023AC9C 00237BFC 1C 7F 00 28 */ mulli r3, r31, 0x28 +/* 8023ACA0 00237C00 2C 03 00 00 */ cmpwi r3, 0 +/* 8023ACA4 00237C04 40 82 00 0C */ bne lbl_8023ACB0 +/* 8023ACA8 00237C08 3B A0 00 00 */ li r29, 0 +/* 8023ACAC 00237C0C 48 00 00 18 */ b lbl_8023ACC4 +lbl_8023ACB0: +/* 8023ACB0 00237C10 3C 80 80 3D */ lis r4, lbl_803D4380@ha +/* 8023ACB4 00237C14 38 A0 00 00 */ li r5, 0 +/* 8023ACB8 00237C18 38 84 43 80 */ addi r4, r4, lbl_803D4380@l +/* 8023ACBC 00237C1C 48 0D AB 5D */ bl __nwa__FUlPCcPCc +/* 8023ACC0 00237C20 7C 7D 1B 78 */ mr r29, r3 +lbl_8023ACC4: +/* 8023ACC4 00237C24 80 1E 00 04 */ lwz r0, 4(r30) +/* 8023ACC8 00237C28 7F A4 EB 78 */ mr r4, r29 +/* 8023ACCC 00237C2C 80 BE 00 0C */ lwz r5, 0xc(r30) +/* 8023ACD0 00237C30 1C 00 00 28 */ mulli r0, r0, 0x28 +/* 8023ACD4 00237C34 90 A1 00 10 */ stw r5, 0x10(r1) +/* 8023ACD8 00237C38 7C 65 02 14 */ add r3, r5, r0 +/* 8023ACDC 00237C3C 90 A1 00 14 */ stw r5, 0x14(r1) +/* 8023ACE0 00237C40 90 61 00 08 */ stw r3, 8(r1) +/* 8023ACE4 00237C44 90 61 00 0C */ stw r3, 0xc(r1) +/* 8023ACE8 00237C48 48 00 00 64 */ b lbl_8023AD4C +lbl_8023ACEC: +/* 8023ACEC 00237C4C 28 04 00 00 */ cmplwi r4, 0 +/* 8023ACF0 00237C50 41 82 00 54 */ beq lbl_8023AD44 +/* 8023ACF4 00237C54 A0 05 00 00 */ lhz r0, 0(r5) +/* 8023ACF8 00237C58 B0 04 00 00 */ sth r0, 0(r4) +/* 8023ACFC 00237C5C 80 05 00 04 */ lwz r0, 4(r5) +/* 8023AD00 00237C60 90 04 00 04 */ stw r0, 4(r4) +/* 8023AD04 00237C64 80 05 00 08 */ lwz r0, 8(r5) +/* 8023AD08 00237C68 90 04 00 08 */ stw r0, 8(r4) +/* 8023AD0C 00237C6C 80 05 00 0C */ lwz r0, 0xc(r5) +/* 8023AD10 00237C70 90 04 00 0C */ stw r0, 0xc(r4) +/* 8023AD14 00237C74 80 05 00 10 */ lwz r0, 0x10(r5) +/* 8023AD18 00237C78 90 04 00 10 */ stw r0, 0x10(r4) +/* 8023AD1C 00237C7C 80 05 00 14 */ lwz r0, 0x14(r5) +/* 8023AD20 00237C80 90 04 00 14 */ stw r0, 0x14(r4) +/* 8023AD24 00237C84 80 05 00 18 */ lwz r0, 0x18(r5) +/* 8023AD28 00237C88 90 04 00 18 */ stw r0, 0x18(r4) +/* 8023AD2C 00237C8C C0 05 00 1C */ lfs f0, 0x1c(r5) +/* 8023AD30 00237C90 D0 04 00 1C */ stfs f0, 0x1c(r4) +/* 8023AD34 00237C94 C0 05 00 20 */ lfs f0, 0x20(r5) +/* 8023AD38 00237C98 D0 04 00 20 */ stfs f0, 0x20(r4) +/* 8023AD3C 00237C9C C0 05 00 24 */ lfs f0, 0x24(r5) +/* 8023AD40 00237CA0 D0 04 00 24 */ stfs f0, 0x24(r4) +lbl_8023AD44: +/* 8023AD44 00237CA4 38 84 00 28 */ addi r4, r4, 0x28 +/* 8023AD48 00237CA8 38 A5 00 28 */ addi r5, r5, 0x28 +lbl_8023AD4C: +/* 8023AD4C 00237CAC 7C 05 18 40 */ cmplw r5, r3 +/* 8023AD50 00237CB0 40 82 FF 9C */ bne lbl_8023ACEC +/* 8023AD54 00237CB4 80 1E 00 04 */ lwz r0, 4(r30) +/* 8023AD58 00237CB8 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 8023AD5C 00237CBC 1C 00 00 28 */ mulli r0, r0, 0x28 +/* 8023AD60 00237CC0 7C 64 1B 78 */ mr r4, r3 +/* 8023AD64 00237CC4 7C 03 02 14 */ add r0, r3, r0 +/* 8023AD68 00237CC8 48 00 00 08 */ b lbl_8023AD70 +lbl_8023AD6C: +/* 8023AD6C 00237CCC 38 84 00 28 */ addi r4, r4, 0x28 +lbl_8023AD70: +/* 8023AD70 00237CD0 7C 04 00 40 */ cmplw r4, r0 +/* 8023AD74 00237CD4 40 82 FF F8 */ bne lbl_8023AD6C +/* 8023AD78 00237CD8 28 03 00 00 */ cmplwi r3, 0 +/* 8023AD7C 00237CDC 41 82 00 08 */ beq lbl_8023AD84 +/* 8023AD80 00237CE0 48 0D AB B1 */ bl Free__7CMemoryFPCv +lbl_8023AD84: +/* 8023AD84 00237CE4 93 BE 00 0C */ stw r29, 0xc(r30) +/* 8023AD88 00237CE8 93 FE 00 08 */ stw r31, 8(r30) +lbl_8023AD8C: +/* 8023AD8C 00237CEC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8023AD90 00237CF0 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8023AD94 00237CF4 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8023AD98 00237CF8 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8023AD9C 00237CFC 7C 08 03 A6 */ mtlr r0 +/* 8023ADA0 00237D00 38 21 00 30 */ addi r1, r1, 0x30 +/* 8023ADA4 00237D04 4E 80 00 20 */ blr + +.global sub_8023ada8 +sub_8023ada8: +/* 8023ADA8 00237D08 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8023ADAC 00237D0C 7C 08 02 A6 */ mflr r0 +/* 8023ADB0 00237D10 90 01 00 14 */ stw r0, 0x14(r1) +/* 8023ADB4 00237D14 38 A1 00 0C */ addi r5, r1, 0xc +/* 8023ADB8 00237D18 88 01 00 08 */ lbz r0, 8(r1) +/* 8023ADBC 00237D1C 98 01 00 0C */ stb r0, 0xc(r1) +/* 8023ADC0 00237D20 48 00 00 D5 */ bl sub_8023ae94 +/* 8023ADC4 00237D24 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8023ADC8 00237D28 7C 08 03 A6 */ mtlr r0 +/* 8023ADCC 00237D2C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8023ADD0 00237D30 4E 80 00 20 */ blr + +.global sub_8023add4 +sub_8023add4: +/* 8023ADD4 00237D34 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8023ADD8 00237D38 7C 08 02 A6 */ mflr r0 +/* 8023ADDC 00237D3C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8023ADE0 00237D40 38 A1 00 0C */ addi r5, r1, 0xc +/* 8023ADE4 00237D44 88 01 00 08 */ lbz r0, 8(r1) +/* 8023ADE8 00237D48 98 01 00 0C */ stb r0, 0xc(r1) +/* 8023ADEC 00237D4C 48 00 00 95 */ bl sub_8023ae80 +/* 8023ADF0 00237D50 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8023ADF4 00237D54 7C 08 03 A6 */ mtlr r0 +/* 8023ADF8 00237D58 38 21 00 10 */ addi r1, r1, 0x10 +/* 8023ADFC 00237D5C 4E 80 00 20 */ blr + +.global sub_8023ae00 +sub_8023ae00: +/* 8023AE00 00237D60 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8023AE04 00237D64 7C 08 02 A6 */ mflr r0 +/* 8023AE08 00237D68 90 01 00 14 */ stw r0, 0x14(r1) +/* 8023AE0C 00237D6C 38 A1 00 0C */ addi r5, r1, 0xc +/* 8023AE10 00237D70 88 01 00 08 */ lbz r0, 8(r1) +/* 8023AE14 00237D74 98 01 00 0C */ stb r0, 0xc(r1) +/* 8023AE18 00237D78 48 00 00 55 */ bl sub_8023ae6c +/* 8023AE1C 00237D7C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8023AE20 00237D80 7C 08 03 A6 */ mtlr r0 +/* 8023AE24 00237D84 38 21 00 10 */ addi r1, r1, 0x10 +/* 8023AE28 00237D88 4E 80 00 20 */ blr + +.global sub_8023ae2c +sub_8023ae2c: +/* 8023AE2C 00237D8C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8023AE30 00237D90 7C 08 02 A6 */ mflr r0 +/* 8023AE34 00237D94 90 01 00 14 */ stw r0, 0x14(r1) +/* 8023AE38 00237D98 38 A1 00 0C */ addi r5, r1, 0xc +/* 8023AE3C 00237D9C 88 01 00 08 */ lbz r0, 8(r1) +/* 8023AE40 00237DA0 98 01 00 0C */ stb r0, 0xc(r1) +/* 8023AE44 00237DA4 48 00 00 15 */ bl sub_8023ae58 +/* 8023AE48 00237DA8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8023AE4C 00237DAC 7C 08 03 A6 */ mtlr r0 +/* 8023AE50 00237DB0 38 21 00 10 */ addi r1, r1, 0x10 +/* 8023AE54 00237DB4 4E 80 00 20 */ blr + +.global sub_8023ae58 +sub_8023ae58: +/* 8023AE58 00237DB8 80 A3 00 00 */ lwz r5, 0(r3) +/* 8023AE5C 00237DBC 54 80 08 3C */ slwi r0, r4, 1 +/* 8023AE60 00237DC0 7C 05 02 14 */ add r0, r5, r0 +/* 8023AE64 00237DC4 90 03 00 00 */ stw r0, 0(r3) +/* 8023AE68 00237DC8 4E 80 00 20 */ blr + +.global sub_8023ae6c +sub_8023ae6c: +/* 8023AE6C 00237DCC 80 A3 00 00 */ lwz r5, 0(r3) +/* 8023AE70 00237DD0 54 80 08 3C */ slwi r0, r4, 1 +/* 8023AE74 00237DD4 7C 05 02 14 */ add r0, r5, r0 +/* 8023AE78 00237DD8 90 03 00 00 */ stw r0, 0(r3) +/* 8023AE7C 00237DDC 4E 80 00 20 */ blr + +.global sub_8023ae80 +sub_8023ae80: +/* 8023AE80 00237DE0 1C 04 00 28 */ mulli r0, r4, 0x28 +/* 8023AE84 00237DE4 80 83 00 00 */ lwz r4, 0(r3) +/* 8023AE88 00237DE8 7C 04 02 14 */ add r0, r4, r0 +/* 8023AE8C 00237DEC 90 03 00 00 */ stw r0, 0(r3) +/* 8023AE90 00237DF0 4E 80 00 20 */ blr + +.global sub_8023ae94 +sub_8023ae94: +/* 8023AE94 00237DF4 1C 04 00 28 */ mulli r0, r4, 0x28 +/* 8023AE98 00237DF8 80 83 00 00 */ lwz r4, 0(r3) +/* 8023AE9C 00237DFC 7C 04 02 14 */ add r0, r4, r0 +/* 8023AEA0 00237E00 90 03 00 00 */ stw r0, 0(r3) +/* 8023AEA4 00237E04 4E 80 00 20 */ blr + +.global sub_8023aea8 +sub_8023aea8: +/* 8023AEA8 00237E08 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8023AEAC 00237E0C 7C 08 02 A6 */ mflr r0 +/* 8023AEB0 00237E10 90 01 00 24 */ stw r0, 0x24(r1) +/* 8023AEB4 00237E14 38 A1 00 0C */ addi r5, r1, 0xc +/* 8023AEB8 00237E18 88 E1 00 08 */ lbz r7, 8(r1) +/* 8023AEBC 00237E1C 80 C4 00 00 */ lwz r6, 0(r4) +/* 8023AEC0 00237E20 38 81 00 10 */ addi r4, r1, 0x10 +/* 8023AEC4 00237E24 80 03 00 00 */ lwz r0, 0(r3) +/* 8023AEC8 00237E28 38 61 00 14 */ addi r3, r1, 0x14 +/* 8023AECC 00237E2C 90 C1 00 10 */ stw r6, 0x10(r1) +/* 8023AED0 00237E30 98 E1 00 0C */ stb r7, 0xc(r1) +/* 8023AED4 00237E34 90 01 00 14 */ stw r0, 0x14(r1) +/* 8023AED8 00237E38 48 00 00 FD */ bl sub_8023afd4 +/* 8023AEDC 00237E3C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8023AEE0 00237E40 7C 08 03 A6 */ mtlr r0 +/* 8023AEE4 00237E44 38 21 00 20 */ addi r1, r1, 0x20 +/* 8023AEE8 00237E48 4E 80 00 20 */ blr + +.global sub_8023aeec +sub_8023aeec: +/* 8023AEEC 00237E4C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8023AEF0 00237E50 7C 08 02 A6 */ mflr r0 +/* 8023AEF4 00237E54 90 01 00 24 */ stw r0, 0x24(r1) +/* 8023AEF8 00237E58 38 A1 00 0C */ addi r5, r1, 0xc +/* 8023AEFC 00237E5C 88 E1 00 08 */ lbz r7, 8(r1) +/* 8023AF00 00237E60 80 C4 00 00 */ lwz r6, 0(r4) +/* 8023AF04 00237E64 38 81 00 10 */ addi r4, r1, 0x10 +/* 8023AF08 00237E68 80 03 00 00 */ lwz r0, 0(r3) +/* 8023AF0C 00237E6C 38 61 00 14 */ addi r3, r1, 0x14 +/* 8023AF10 00237E70 90 C1 00 10 */ stw r6, 0x10(r1) +/* 8023AF14 00237E74 98 E1 00 0C */ stb r7, 0xc(r1) +/* 8023AF18 00237E78 90 01 00 14 */ stw r0, 0x14(r1) +/* 8023AF1C 00237E7C 48 00 00 E1 */ bl sub_8023affc +/* 8023AF20 00237E80 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8023AF24 00237E84 7C 08 03 A6 */ mtlr r0 +/* 8023AF28 00237E88 38 21 00 20 */ addi r1, r1, 0x20 +/* 8023AF2C 00237E8C 4E 80 00 20 */ blr + +.global sub_8023af30 +sub_8023af30: +/* 8023AF30 00237E90 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8023AF34 00237E94 7C 08 02 A6 */ mflr r0 +/* 8023AF38 00237E98 90 01 00 24 */ stw r0, 0x24(r1) +/* 8023AF3C 00237E9C 38 A1 00 0C */ addi r5, r1, 0xc +/* 8023AF40 00237EA0 88 E1 00 08 */ lbz r7, 8(r1) +/* 8023AF44 00237EA4 80 C4 00 00 */ lwz r6, 0(r4) +/* 8023AF48 00237EA8 38 81 00 10 */ addi r4, r1, 0x10 +/* 8023AF4C 00237EAC 80 03 00 00 */ lwz r0, 0(r3) +/* 8023AF50 00237EB0 38 61 00 14 */ addi r3, r1, 0x14 +/* 8023AF54 00237EB4 90 C1 00 10 */ stw r6, 0x10(r1) +/* 8023AF58 00237EB8 98 E1 00 0C */ stb r7, 0xc(r1) +/* 8023AF5C 00237EBC 90 01 00 14 */ stw r0, 0x14(r1) +/* 8023AF60 00237EC0 48 00 00 C5 */ bl sub_8023b024 +/* 8023AF64 00237EC4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8023AF68 00237EC8 7C 08 03 A6 */ mtlr r0 +/* 8023AF6C 00237ECC 38 21 00 20 */ addi r1, r1, 0x20 +/* 8023AF70 00237ED0 4E 80 00 20 */ blr + +.global sub_8023af74 +sub_8023af74: +/* 8023AF74 00237ED4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8023AF78 00237ED8 7C 08 02 A6 */ mflr r0 +/* 8023AF7C 00237EDC 90 01 00 24 */ stw r0, 0x24(r1) +/* 8023AF80 00237EE0 38 A1 00 0C */ addi r5, r1, 0xc +/* 8023AF84 00237EE4 88 E1 00 08 */ lbz r7, 8(r1) +/* 8023AF88 00237EE8 80 C4 00 00 */ lwz r6, 0(r4) +/* 8023AF8C 00237EEC 38 81 00 10 */ addi r4, r1, 0x10 +/* 8023AF90 00237EF0 80 03 00 00 */ lwz r0, 0(r3) +/* 8023AF94 00237EF4 38 61 00 14 */ addi r3, r1, 0x14 +/* 8023AF98 00237EF8 90 C1 00 10 */ stw r6, 0x10(r1) +/* 8023AF9C 00237EFC 98 E1 00 0C */ stb r7, 0xc(r1) +/* 8023AFA0 00237F00 90 01 00 14 */ stw r0, 0x14(r1) +/* 8023AFA4 00237F04 48 00 00 15 */ bl sub_8023afb8 +/* 8023AFA8 00237F08 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8023AFAC 00237F0C 7C 08 03 A6 */ mtlr r0 +/* 8023AFB0 00237F10 38 21 00 20 */ addi r1, r1, 0x20 +/* 8023AFB4 00237F14 4E 80 00 20 */ blr + +.global sub_8023afb8 +sub_8023afb8: +/* 8023AFB8 00237F18 80 63 00 00 */ lwz r3, 0(r3) +/* 8023AFBC 00237F1C 80 04 00 00 */ lwz r0, 0(r4) +/* 8023AFC0 00237F20 7C 63 00 50 */ subf r3, r3, r0 +/* 8023AFC4 00237F24 54 60 0F FE */ srwi r0, r3, 0x1f +/* 8023AFC8 00237F28 7C 00 1A 14 */ add r0, r0, r3 +/* 8023AFCC 00237F2C 7C 03 0E 70 */ srawi r3, r0, 1 +/* 8023AFD0 00237F30 4E 80 00 20 */ blr + +.global sub_8023afd4 +sub_8023afd4: +/* 8023AFD4 00237F34 80 A3 00 00 */ lwz r5, 0(r3) +/* 8023AFD8 00237F38 3C 60 66 66 */ lis r3, 0x66666667@ha +/* 8023AFDC 00237F3C 80 04 00 00 */ lwz r0, 0(r4) +/* 8023AFE0 00237F40 38 63 66 67 */ addi r3, r3, 0x66666667@l +/* 8023AFE4 00237F44 7C 05 00 50 */ subf r0, r5, r0 +/* 8023AFE8 00237F48 7C 03 00 96 */ mulhw r0, r3, r0 +/* 8023AFEC 00237F4C 7C 00 26 70 */ srawi r0, r0, 4 +/* 8023AFF0 00237F50 54 03 0F FE */ srwi r3, r0, 0x1f +/* 8023AFF4 00237F54 7C 60 1A 14 */ add r3, r0, r3 +/* 8023AFF8 00237F58 4E 80 00 20 */ blr + +.global sub_8023affc +sub_8023affc: +/* 8023AFFC 00237F5C 80 A3 00 00 */ lwz r5, 0(r3) +/* 8023B000 00237F60 3C 60 66 66 */ lis r3, 0x66666667@ha +/* 8023B004 00237F64 80 04 00 00 */ lwz r0, 0(r4) +/* 8023B008 00237F68 38 63 66 67 */ addi r3, r3, 0x66666667@l +/* 8023B00C 00237F6C 7C 05 00 50 */ subf r0, r5, r0 +/* 8023B010 00237F70 7C 03 00 96 */ mulhw r0, r3, r0 +/* 8023B014 00237F74 7C 00 26 70 */ srawi r0, r0, 4 +/* 8023B018 00237F78 54 03 0F FE */ srwi r3, r0, 0x1f +/* 8023B01C 00237F7C 7C 60 1A 14 */ add r3, r0, r3 +/* 8023B020 00237F80 4E 80 00 20 */ blr + +.global sub_8023b024 +sub_8023b024: +/* 8023B024 00237F84 80 63 00 00 */ lwz r3, 0(r3) +/* 8023B028 00237F88 80 04 00 00 */ lwz r0, 0(r4) +/* 8023B02C 00237F8C 7C 63 00 50 */ subf r3, r3, r0 +/* 8023B030 00237F90 54 60 0F FE */ srwi r0, r3, 0x1f +/* 8023B034 00237F94 7C 00 1A 14 */ add r0, r0, r3 +/* 8023B038 00237F98 7C 03 0E 70 */ srawi r3, r0, 1 +/* 8023B03C 00237F9C 4E 80 00 20 */ blr + +.global sub_8023b040 +sub_8023b040: +/* 8023B040 00237FA0 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8023B044 00237FA4 7C 08 02 A6 */ mflr r0 +/* 8023B048 00237FA8 90 01 00 44 */ stw r0, 0x44(r1) +/* 8023B04C 00237FAC 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8023B050 00237FB0 7C BF 2B 78 */ mr r31, r5 +/* 8023B054 00237FB4 93 C1 00 38 */ stw r30, 0x38(r1) +/* 8023B058 00237FB8 7C 9E 23 78 */ mr r30, r4 +/* 8023B05C 00237FBC 93 A1 00 34 */ stw r29, 0x34(r1) +/* 8023B060 00237FC0 7C 7D 1B 78 */ mr r29, r3 +/* 8023B064 00237FC4 7F A5 EB 78 */ mr r5, r29 +/* 8023B068 00237FC8 93 81 00 30 */ stw r28, 0x30(r1) +/* 8023B06C 00237FCC 7C DC 33 78 */ mr r28, r6 +/* 8023B070 00237FD0 7F 83 E3 78 */ mr r3, r28 +/* 8023B074 00237FD4 4B FF F4 51 */ bl __lt__11CTeamAiRoleCFRC11CTeamAiRole +/* 8023B078 00237FD8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8023B07C 00237FDC 41 82 00 10 */ beq lbl_8023B08C +/* 8023B080 00237FE0 7F A3 EB 78 */ mr r3, r29 +/* 8023B084 00237FE4 7F C4 F3 78 */ mr r4, r30 +/* 8023B088 00237FE8 48 00 01 E9 */ bl sub_8023b270 +lbl_8023B08C: +/* 8023B08C 00237FEC 7F 83 E3 78 */ mr r3, r28 +/* 8023B090 00237FF0 7F E4 FB 78 */ mr r4, r31 +/* 8023B094 00237FF4 7F C5 F3 78 */ mr r5, r30 +/* 8023B098 00237FF8 4B FF F4 2D */ bl __lt__11CTeamAiRoleCFRC11CTeamAiRole +/* 8023B09C 00237FFC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8023B0A0 00238000 41 82 01 B0 */ beq lbl_8023B250 +/* 8023B0A4 00238004 A0 1F 00 00 */ lhz r0, 0(r31) +/* 8023B0A8 00238008 7F 83 E3 78 */ mr r3, r28 +/* 8023B0AC 0023800C 7F A5 EB 78 */ mr r5, r29 +/* 8023B0B0 00238010 38 81 00 08 */ addi r4, r1, 8 +/* 8023B0B4 00238014 B0 01 00 08 */ sth r0, 8(r1) +/* 8023B0B8 00238018 80 1F 00 04 */ lwz r0, 4(r31) +/* 8023B0BC 0023801C 90 01 00 0C */ stw r0, 0xc(r1) +/* 8023B0C0 00238020 80 1F 00 08 */ lwz r0, 8(r31) +/* 8023B0C4 00238024 90 01 00 10 */ stw r0, 0x10(r1) +/* 8023B0C8 00238028 80 1F 00 0C */ lwz r0, 0xc(r31) +/* 8023B0CC 0023802C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8023B0D0 00238030 80 1F 00 10 */ lwz r0, 0x10(r31) +/* 8023B0D4 00238034 90 01 00 18 */ stw r0, 0x18(r1) +/* 8023B0D8 00238038 80 1F 00 14 */ lwz r0, 0x14(r31) +/* 8023B0DC 0023803C 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8023B0E0 00238040 80 1F 00 18 */ lwz r0, 0x18(r31) +/* 8023B0E4 00238044 90 01 00 20 */ stw r0, 0x20(r1) +/* 8023B0E8 00238048 C0 1F 00 1C */ lfs f0, 0x1c(r31) +/* 8023B0EC 0023804C D0 01 00 24 */ stfs f0, 0x24(r1) +/* 8023B0F0 00238050 C0 1F 00 20 */ lfs f0, 0x20(r31) +/* 8023B0F4 00238054 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 8023B0F8 00238058 C0 1F 00 24 */ lfs f0, 0x24(r31) +/* 8023B0FC 0023805C D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 8023B100 00238060 A0 1E 00 00 */ lhz r0, 0(r30) +/* 8023B104 00238064 B0 1F 00 00 */ sth r0, 0(r31) +/* 8023B108 00238068 80 1E 00 04 */ lwz r0, 4(r30) +/* 8023B10C 0023806C 90 1F 00 04 */ stw r0, 4(r31) +/* 8023B110 00238070 80 1E 00 08 */ lwz r0, 8(r30) +/* 8023B114 00238074 90 1F 00 08 */ stw r0, 8(r31) +/* 8023B118 00238078 80 1E 00 0C */ lwz r0, 0xc(r30) +/* 8023B11C 0023807C 90 1F 00 0C */ stw r0, 0xc(r31) +/* 8023B120 00238080 80 1E 00 10 */ lwz r0, 0x10(r30) +/* 8023B124 00238084 90 1F 00 10 */ stw r0, 0x10(r31) +/* 8023B128 00238088 80 1E 00 14 */ lwz r0, 0x14(r30) +/* 8023B12C 0023808C 90 1F 00 14 */ stw r0, 0x14(r31) +/* 8023B130 00238090 80 1E 00 18 */ lwz r0, 0x18(r30) +/* 8023B134 00238094 90 1F 00 18 */ stw r0, 0x18(r31) +/* 8023B138 00238098 80 DE 00 1C */ lwz r6, 0x1c(r30) +/* 8023B13C 0023809C 80 1E 00 20 */ lwz r0, 0x20(r30) +/* 8023B140 002380A0 90 DF 00 1C */ stw r6, 0x1c(r31) +/* 8023B144 002380A4 90 1F 00 20 */ stw r0, 0x20(r31) +/* 8023B148 002380A8 80 1E 00 24 */ lwz r0, 0x24(r30) +/* 8023B14C 002380AC 90 1F 00 24 */ stw r0, 0x24(r31) +/* 8023B150 002380B0 4B FF F3 75 */ bl __lt__11CTeamAiRoleCFRC11CTeamAiRole +/* 8023B154 002380B4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8023B158 002380B8 41 82 00 A8 */ beq lbl_8023B200 +/* 8023B15C 002380BC A0 1D 00 00 */ lhz r0, 0(r29) +/* 8023B160 002380C0 B0 1E 00 00 */ sth r0, 0(r30) +/* 8023B164 002380C4 80 1D 00 04 */ lwz r0, 4(r29) +/* 8023B168 002380C8 90 1E 00 04 */ stw r0, 4(r30) +/* 8023B16C 002380CC 80 1D 00 08 */ lwz r0, 8(r29) +/* 8023B170 002380D0 90 1E 00 08 */ stw r0, 8(r30) +/* 8023B174 002380D4 80 1D 00 0C */ lwz r0, 0xc(r29) +/* 8023B178 002380D8 90 1E 00 0C */ stw r0, 0xc(r30) +/* 8023B17C 002380DC 80 1D 00 10 */ lwz r0, 0x10(r29) +/* 8023B180 002380E0 90 1E 00 10 */ stw r0, 0x10(r30) +/* 8023B184 002380E4 80 1D 00 14 */ lwz r0, 0x14(r29) +/* 8023B188 002380E8 90 1E 00 14 */ stw r0, 0x14(r30) +/* 8023B18C 002380EC 80 1D 00 18 */ lwz r0, 0x18(r29) +/* 8023B190 002380F0 90 1E 00 18 */ stw r0, 0x18(r30) +/* 8023B194 002380F4 80 7D 00 1C */ lwz r3, 0x1c(r29) +/* 8023B198 002380F8 80 1D 00 20 */ lwz r0, 0x20(r29) +/* 8023B19C 002380FC 90 7E 00 1C */ stw r3, 0x1c(r30) +/* 8023B1A0 00238100 90 1E 00 20 */ stw r0, 0x20(r30) +/* 8023B1A4 00238104 80 1D 00 24 */ lwz r0, 0x24(r29) +/* 8023B1A8 00238108 90 1E 00 24 */ stw r0, 0x24(r30) +/* 8023B1AC 0023810C A0 01 00 08 */ lhz r0, 8(r1) +/* 8023B1B0 00238110 B0 1D 00 00 */ sth r0, 0(r29) +/* 8023B1B4 00238114 80 01 00 0C */ lwz r0, 0xc(r1) +/* 8023B1B8 00238118 90 1D 00 04 */ stw r0, 4(r29) +/* 8023B1BC 0023811C 80 01 00 10 */ lwz r0, 0x10(r1) +/* 8023B1C0 00238120 90 1D 00 08 */ stw r0, 8(r29) +/* 8023B1C4 00238124 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8023B1C8 00238128 90 1D 00 0C */ stw r0, 0xc(r29) +/* 8023B1CC 0023812C 80 01 00 18 */ lwz r0, 0x18(r1) +/* 8023B1D0 00238130 90 1D 00 10 */ stw r0, 0x10(r29) +/* 8023B1D4 00238134 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 8023B1D8 00238138 90 1D 00 14 */ stw r0, 0x14(r29) +/* 8023B1DC 0023813C 80 01 00 20 */ lwz r0, 0x20(r1) +/* 8023B1E0 00238140 90 1D 00 18 */ stw r0, 0x18(r29) +/* 8023B1E4 00238144 80 61 00 24 */ lwz r3, 0x24(r1) +/* 8023B1E8 00238148 80 01 00 28 */ lwz r0, 0x28(r1) +/* 8023B1EC 0023814C 90 7D 00 1C */ stw r3, 0x1c(r29) +/* 8023B1F0 00238150 90 1D 00 20 */ stw r0, 0x20(r29) +/* 8023B1F4 00238154 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 8023B1F8 00238158 90 1D 00 24 */ stw r0, 0x24(r29) +/* 8023B1FC 0023815C 48 00 00 54 */ b lbl_8023B250 +lbl_8023B200: +/* 8023B200 00238160 A0 01 00 08 */ lhz r0, 8(r1) +/* 8023B204 00238164 B0 1E 00 00 */ sth r0, 0(r30) +/* 8023B208 00238168 80 01 00 0C */ lwz r0, 0xc(r1) +/* 8023B20C 0023816C 90 1E 00 04 */ stw r0, 4(r30) +/* 8023B210 00238170 80 01 00 10 */ lwz r0, 0x10(r1) +/* 8023B214 00238174 90 1E 00 08 */ stw r0, 8(r30) +/* 8023B218 00238178 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8023B21C 0023817C 90 1E 00 0C */ stw r0, 0xc(r30) +/* 8023B220 00238180 80 01 00 18 */ lwz r0, 0x18(r1) +/* 8023B224 00238184 90 1E 00 10 */ stw r0, 0x10(r30) +/* 8023B228 00238188 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 8023B22C 0023818C 90 1E 00 14 */ stw r0, 0x14(r30) +/* 8023B230 00238190 80 01 00 20 */ lwz r0, 0x20(r1) +/* 8023B234 00238194 90 1E 00 18 */ stw r0, 0x18(r30) +/* 8023B238 00238198 80 61 00 24 */ lwz r3, 0x24(r1) +/* 8023B23C 0023819C 80 01 00 28 */ lwz r0, 0x28(r1) +/* 8023B240 002381A0 90 7E 00 1C */ stw r3, 0x1c(r30) +/* 8023B244 002381A4 90 1E 00 20 */ stw r0, 0x20(r30) +/* 8023B248 002381A8 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 8023B24C 002381AC 90 1E 00 24 */ stw r0, 0x24(r30) +lbl_8023B250: +/* 8023B250 002381B0 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8023B254 002381B4 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8023B258 002381B8 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 8023B25C 002381BC 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 8023B260 002381C0 83 81 00 30 */ lwz r28, 0x30(r1) +/* 8023B264 002381C4 7C 08 03 A6 */ mtlr r0 +/* 8023B268 002381C8 38 21 00 40 */ addi r1, r1, 0x40 +/* 8023B26C 002381CC 4E 80 00 20 */ blr + +.global sub_8023b270 +sub_8023b270: +/* 8023B270 002381D0 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8023B274 002381D4 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8023B278 002381D8 93 C1 00 38 */ stw r30, 0x38(r1) +/* 8023B27C 002381DC 93 A1 00 34 */ stw r29, 0x34(r1) +/* 8023B280 002381E0 A3 A3 00 00 */ lhz r29, 0(r3) +/* 8023B284 002381E4 83 C3 00 04 */ lwz r30, 4(r3) +/* 8023B288 002381E8 83 E3 00 08 */ lwz r31, 8(r3) +/* 8023B28C 002381EC 81 83 00 0C */ lwz r12, 0xc(r3) +/* 8023B290 002381F0 81 63 00 10 */ lwz r11, 0x10(r3) +/* 8023B294 002381F4 81 43 00 14 */ lwz r10, 0x14(r3) +/* 8023B298 002381F8 81 23 00 18 */ lwz r9, 0x18(r3) +/* 8023B29C 002381FC C0 43 00 1C */ lfs f2, 0x1c(r3) +/* 8023B2A0 00238200 C0 23 00 20 */ lfs f1, 0x20(r3) +/* 8023B2A4 00238204 C0 03 00 24 */ lfs f0, 0x24(r3) +/* 8023B2A8 00238208 A0 04 00 00 */ lhz r0, 0(r4) +/* 8023B2AC 0023820C D0 41 00 24 */ stfs f2, 0x24(r1) +/* 8023B2B0 00238210 B0 03 00 00 */ sth r0, 0(r3) +/* 8023B2B4 00238214 80 C1 00 24 */ lwz r6, 0x24(r1) +/* 8023B2B8 00238218 80 04 00 04 */ lwz r0, 4(r4) +/* 8023B2BC 0023821C D0 21 00 28 */ stfs f1, 0x28(r1) +/* 8023B2C0 00238220 90 03 00 04 */ stw r0, 4(r3) +/* 8023B2C4 00238224 80 A1 00 28 */ lwz r5, 0x28(r1) +/* 8023B2C8 00238228 80 04 00 08 */ lwz r0, 8(r4) +/* 8023B2CC 0023822C D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 8023B2D0 00238230 90 03 00 08 */ stw r0, 8(r3) +/* 8023B2D4 00238234 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 8023B2D8 00238238 80 E4 00 0C */ lwz r7, 0xc(r4) +/* 8023B2DC 0023823C B3 A1 00 08 */ sth r29, 8(r1) +/* 8023B2E0 00238240 90 E3 00 0C */ stw r7, 0xc(r3) +/* 8023B2E4 00238244 80 E4 00 10 */ lwz r7, 0x10(r4) +/* 8023B2E8 00238248 93 C1 00 0C */ stw r30, 0xc(r1) +/* 8023B2EC 0023824C 90 E3 00 10 */ stw r7, 0x10(r3) +/* 8023B2F0 00238250 80 E4 00 14 */ lwz r7, 0x14(r4) +/* 8023B2F4 00238254 93 E1 00 10 */ stw r31, 0x10(r1) +/* 8023B2F8 00238258 90 E3 00 14 */ stw r7, 0x14(r3) +/* 8023B2FC 0023825C 80 E4 00 18 */ lwz r7, 0x18(r4) +/* 8023B300 00238260 91 81 00 14 */ stw r12, 0x14(r1) +/* 8023B304 00238264 90 E3 00 18 */ stw r7, 0x18(r3) +/* 8023B308 00238268 81 04 00 1C */ lwz r8, 0x1c(r4) +/* 8023B30C 0023826C 80 E4 00 20 */ lwz r7, 0x20(r4) +/* 8023B310 00238270 91 61 00 18 */ stw r11, 0x18(r1) +/* 8023B314 00238274 91 03 00 1C */ stw r8, 0x1c(r3) +/* 8023B318 00238278 90 E3 00 20 */ stw r7, 0x20(r3) +/* 8023B31C 0023827C 80 E4 00 24 */ lwz r7, 0x24(r4) +/* 8023B320 00238280 91 41 00 1C */ stw r10, 0x1c(r1) +/* 8023B324 00238284 90 E3 00 24 */ stw r7, 0x24(r3) +/* 8023B328 00238288 B3 A4 00 00 */ sth r29, 0(r4) +/* 8023B32C 0023828C 93 C4 00 04 */ stw r30, 4(r4) +/* 8023B330 00238290 93 E4 00 08 */ stw r31, 8(r4) +/* 8023B334 00238294 91 84 00 0C */ stw r12, 0xc(r4) +/* 8023B338 00238298 91 64 00 10 */ stw r11, 0x10(r4) +/* 8023B33C 0023829C 91 44 00 14 */ stw r10, 0x14(r4) +/* 8023B340 002382A0 91 24 00 18 */ stw r9, 0x18(r4) +/* 8023B344 002382A4 90 C4 00 1C */ stw r6, 0x1c(r4) +/* 8023B348 002382A8 90 A4 00 20 */ stw r5, 0x20(r4) +/* 8023B34C 002382AC 90 04 00 24 */ stw r0, 0x24(r4) +/* 8023B350 002382B0 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8023B354 002382B4 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 8023B358 002382B8 91 21 00 20 */ stw r9, 0x20(r1) +/* 8023B35C 002382BC 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 8023B360 002382C0 38 21 00 40 */ addi r1, r1, 0x40 +/* 8023B364 002382C4 4E 80 00 20 */ blr + +.global sub_8023b368 +sub_8023b368: +/* 8023B368 002382C8 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 8023B36C 002382CC 7C 08 02 A6 */ mflr r0 +/* 8023B370 002382D0 90 01 00 54 */ stw r0, 0x54(r1) +/* 8023B374 002382D4 BF 41 00 38 */ stmw r26, 0x38(r1) +/* 8023B378 002382D8 7C 7A 1B 78 */ mr r26, r3 +/* 8023B37C 002382DC 7C 9B 23 78 */ mr r27, r4 +/* 8023B380 002382E0 7C BC 2B 78 */ mr r28, r5 +/* 8023B384 002382E4 83 E3 00 00 */ lwz r31, 0(r3) +/* 8023B388 002382E8 3B FF 00 28 */ addi r31, r31, 0x28 +/* 8023B38C 002382EC 48 00 01 30 */ b lbl_8023B4BC +lbl_8023B390: +/* 8023B390 002382F0 A0 1F 00 00 */ lhz r0, 0(r31) +/* 8023B394 002382F4 7F FD FB 78 */ mr r29, r31 +/* 8023B398 002382F8 3B DF FF D8 */ addi r30, r31, -40 +/* 8023B39C 002382FC B0 01 00 08 */ sth r0, 8(r1) +/* 8023B3A0 00238300 80 1F 00 04 */ lwz r0, 4(r31) +/* 8023B3A4 00238304 90 01 00 0C */ stw r0, 0xc(r1) +/* 8023B3A8 00238308 80 1F 00 08 */ lwz r0, 8(r31) +/* 8023B3AC 0023830C 90 01 00 10 */ stw r0, 0x10(r1) +/* 8023B3B0 00238310 80 1F 00 0C */ lwz r0, 0xc(r31) +/* 8023B3B4 00238314 90 01 00 14 */ stw r0, 0x14(r1) +/* 8023B3B8 00238318 80 1F 00 10 */ lwz r0, 0x10(r31) +/* 8023B3BC 0023831C 90 01 00 18 */ stw r0, 0x18(r1) +/* 8023B3C0 00238320 80 1F 00 14 */ lwz r0, 0x14(r31) +/* 8023B3C4 00238324 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8023B3C8 00238328 80 1F 00 18 */ lwz r0, 0x18(r31) +/* 8023B3CC 0023832C 90 01 00 20 */ stw r0, 0x20(r1) +/* 8023B3D0 00238330 C0 1F 00 1C */ lfs f0, 0x1c(r31) +/* 8023B3D4 00238334 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 8023B3D8 00238338 C0 1F 00 20 */ lfs f0, 0x20(r31) +/* 8023B3DC 0023833C D0 01 00 28 */ stfs f0, 0x28(r1) +/* 8023B3E0 00238340 C0 1F 00 24 */ lfs f0, 0x24(r31) +/* 8023B3E4 00238344 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 8023B3E8 00238348 48 00 00 5C */ b lbl_8023B444 +lbl_8023B3EC: +/* 8023B3EC 0023834C A0 1E 00 00 */ lhz r0, 0(r30) +/* 8023B3F0 00238350 B0 1D 00 00 */ sth r0, 0(r29) +/* 8023B3F4 00238354 80 1E 00 04 */ lwz r0, 4(r30) +/* 8023B3F8 00238358 90 1D 00 04 */ stw r0, 4(r29) +/* 8023B3FC 0023835C 80 1E 00 08 */ lwz r0, 8(r30) +/* 8023B400 00238360 90 1D 00 08 */ stw r0, 8(r29) +/* 8023B404 00238364 80 1E 00 0C */ lwz r0, 0xc(r30) +/* 8023B408 00238368 90 1D 00 0C */ stw r0, 0xc(r29) +/* 8023B40C 0023836C 80 1E 00 10 */ lwz r0, 0x10(r30) +/* 8023B410 00238370 90 1D 00 10 */ stw r0, 0x10(r29) +/* 8023B414 00238374 80 1E 00 14 */ lwz r0, 0x14(r30) +/* 8023B418 00238378 90 1D 00 14 */ stw r0, 0x14(r29) +/* 8023B41C 0023837C 80 1E 00 18 */ lwz r0, 0x18(r30) +/* 8023B420 00238380 90 1D 00 18 */ stw r0, 0x18(r29) +/* 8023B424 00238384 80 7E 00 1C */ lwz r3, 0x1c(r30) +/* 8023B428 00238388 80 1E 00 20 */ lwz r0, 0x20(r30) +/* 8023B42C 0023838C 90 7D 00 1C */ stw r3, 0x1c(r29) +/* 8023B430 00238390 90 1D 00 20 */ stw r0, 0x20(r29) +/* 8023B434 00238394 80 1E 00 24 */ lwz r0, 0x24(r30) +/* 8023B438 00238398 3B DE FF D8 */ addi r30, r30, -40 +/* 8023B43C 0023839C 90 1D 00 24 */ stw r0, 0x24(r29) +/* 8023B440 002383A0 3B BD FF D8 */ addi r29, r29, -40 +lbl_8023B444: +/* 8023B444 002383A4 80 1A 00 00 */ lwz r0, 0(r26) +/* 8023B448 002383A8 7C 00 E8 40 */ cmplw r0, r29 +/* 8023B44C 002383AC 40 80 00 1C */ bge lbl_8023B468 +/* 8023B450 002383B0 7F 83 E3 78 */ mr r3, r28 +/* 8023B454 002383B4 7F C5 F3 78 */ mr r5, r30 +/* 8023B458 002383B8 38 81 00 08 */ addi r4, r1, 8 +/* 8023B45C 002383BC 4B FF F0 69 */ bl __lt__11CTeamAiRoleCFRC11CTeamAiRole +/* 8023B460 002383C0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8023B464 002383C4 40 82 FF 88 */ bne lbl_8023B3EC +lbl_8023B468: +/* 8023B468 002383C8 A0 01 00 08 */ lhz r0, 8(r1) +/* 8023B46C 002383CC 3B FF 00 28 */ addi r31, r31, 0x28 +/* 8023B470 002383D0 B0 1D 00 00 */ sth r0, 0(r29) +/* 8023B474 002383D4 80 01 00 0C */ lwz r0, 0xc(r1) +/* 8023B478 002383D8 90 1D 00 04 */ stw r0, 4(r29) +/* 8023B47C 002383DC 80 01 00 10 */ lwz r0, 0x10(r1) +/* 8023B480 002383E0 90 1D 00 08 */ stw r0, 8(r29) +/* 8023B484 002383E4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8023B488 002383E8 90 1D 00 0C */ stw r0, 0xc(r29) +/* 8023B48C 002383EC 80 01 00 18 */ lwz r0, 0x18(r1) +/* 8023B490 002383F0 90 1D 00 10 */ stw r0, 0x10(r29) +/* 8023B494 002383F4 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 8023B498 002383F8 90 1D 00 14 */ stw r0, 0x14(r29) +/* 8023B49C 002383FC 80 01 00 20 */ lwz r0, 0x20(r1) +/* 8023B4A0 00238400 90 1D 00 18 */ stw r0, 0x18(r29) +/* 8023B4A4 00238404 80 61 00 24 */ lwz r3, 0x24(r1) +/* 8023B4A8 00238408 80 01 00 28 */ lwz r0, 0x28(r1) +/* 8023B4AC 0023840C 90 7D 00 1C */ stw r3, 0x1c(r29) +/* 8023B4B0 00238410 90 1D 00 20 */ stw r0, 0x20(r29) +/* 8023B4B4 00238414 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 8023B4B8 00238418 90 1D 00 24 */ stw r0, 0x24(r29) +lbl_8023B4BC: +/* 8023B4BC 0023841C 80 1B 00 00 */ lwz r0, 0(r27) +/* 8023B4C0 00238420 7C 1F 00 40 */ cmplw r31, r0 +/* 8023B4C4 00238424 41 80 FE CC */ blt lbl_8023B390 +/* 8023B4C8 00238428 BB 41 00 38 */ lmw r26, 0x38(r1) +/* 8023B4CC 0023842C 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8023B4D0 00238430 7C 08 03 A6 */ mtlr r0 +/* 8023B4D4 00238434 38 21 00 50 */ addi r1, r1, 0x50 +/* 8023B4D8 00238438 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Enemies/CThardus.s b/asm/Kyoto_CWD/Enemies/CThardus.s new file mode 100644 index 00000000..a5f8c456 --- /dev/null +++ b/asm/Kyoto_CWD/Enemies/CThardus.s @@ -0,0 +1,10232 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__8CThardusFv +__dt__8CThardusFv: +/* 801DA6D8 001D7638 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 801DA6DC 001D763C 7C 08 02 A6 */ mflr r0 +/* 801DA6E0 001D7640 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 801DA6E4 001D7644 93 E1 00 CC */ stw r31, 0xcc(r1) +/* 801DA6E8 001D7648 7C 9F 23 78 */ mr r31, r4 +/* 801DA6EC 001D764C 93 C1 00 C8 */ stw r30, 0xc8(r1) +/* 801DA6F0 001D7650 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801DA6F4 001D7654 93 A1 00 C4 */ stw r29, 0xc4(r1) +/* 801DA6F8 001D7658 93 81 00 C0 */ stw r28, 0xc0(r1) +/* 801DA6FC 001D765C 41 82 05 00 */ beq lbl_801DABFC +/* 801DA700 001D7660 3C 60 80 3E */ lis r3, lbl_803E5CE0@ha +/* 801DA704 001D7664 34 1E 09 1C */ addic. r0, r30, 0x91c +/* 801DA708 001D7668 38 03 5C E0 */ addi r0, r3, lbl_803E5CE0@l +/* 801DA70C 001D766C 90 1E 00 00 */ stw r0, 0(r30) +/* 801DA710 001D7670 41 82 00 18 */ beq lbl_801DA728 +/* 801DA714 001D7674 34 1E 09 1C */ addic. r0, r30, 0x91c +/* 801DA718 001D7678 41 82 00 10 */ beq lbl_801DA728 +/* 801DA71C 001D767C 38 7E 09 1C */ addi r3, r30, 0x91c +/* 801DA720 001D7680 38 80 00 00 */ li r4, 0 +/* 801DA724 001D7684 48 16 67 1D */ bl __dt__6CTokenFv +lbl_801DA728: +/* 801DA728 001D7688 34 1E 09 0C */ addic. r0, r30, 0x90c +/* 801DA72C 001D768C 41 82 00 44 */ beq lbl_801DA770 +/* 801DA730 001D7690 80 1E 09 10 */ lwz r0, 0x910(r30) +/* 801DA734 001D7694 80 7E 09 18 */ lwz r3, 0x918(r30) +/* 801DA738 001D7698 54 00 10 3A */ slwi r0, r0, 2 +/* 801DA73C 001D769C 7C 03 02 14 */ add r0, r3, r0 +/* 801DA740 001D76A0 90 61 00 AC */ stw r3, 0xac(r1) +/* 801DA744 001D76A4 7C 64 1B 78 */ mr r4, r3 +/* 801DA748 001D76A8 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 801DA74C 001D76AC 90 01 00 B0 */ stw r0, 0xb0(r1) +/* 801DA750 001D76B0 90 61 00 A8 */ stw r3, 0xa8(r1) +/* 801DA754 001D76B4 48 00 00 08 */ b lbl_801DA75C +lbl_801DA758: +/* 801DA758 001D76B8 38 84 00 04 */ addi r4, r4, 4 +lbl_801DA75C: +/* 801DA75C 001D76BC 7C 04 00 40 */ cmplw r4, r0 +/* 801DA760 001D76C0 40 82 FF F8 */ bne lbl_801DA758 +/* 801DA764 001D76C4 28 03 00 00 */ cmplwi r3, 0 +/* 801DA768 001D76C8 41 82 00 08 */ beq lbl_801DA770 +/* 801DA76C 001D76CC 48 13 B1 C5 */ bl Free__7CMemoryFPCv +lbl_801DA770: +/* 801DA770 001D76D0 34 1E 08 F4 */ addic. r0, r30, 0x8f4 +/* 801DA774 001D76D4 41 82 00 44 */ beq lbl_801DA7B8 +/* 801DA778 001D76D8 80 1E 08 F8 */ lwz r0, 0x8f8(r30) +/* 801DA77C 001D76DC 80 7E 09 00 */ lwz r3, 0x900(r30) +/* 801DA780 001D76E0 54 00 08 3C */ slwi r0, r0, 1 +/* 801DA784 001D76E4 7C 03 02 14 */ add r0, r3, r0 +/* 801DA788 001D76E8 90 61 00 9C */ stw r3, 0x9c(r1) +/* 801DA78C 001D76EC 7C 64 1B 78 */ mr r4, r3 +/* 801DA790 001D76F0 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 801DA794 001D76F4 90 01 00 A0 */ stw r0, 0xa0(r1) +/* 801DA798 001D76F8 90 61 00 98 */ stw r3, 0x98(r1) +/* 801DA79C 001D76FC 48 00 00 08 */ b lbl_801DA7A4 +lbl_801DA7A0: +/* 801DA7A0 001D7700 38 84 00 02 */ addi r4, r4, 2 +lbl_801DA7A4: +/* 801DA7A4 001D7704 7C 04 00 40 */ cmplw r4, r0 +/* 801DA7A8 001D7708 40 82 FF F8 */ bne lbl_801DA7A0 +/* 801DA7AC 001D770C 28 03 00 00 */ cmplwi r3, 0 +/* 801DA7B0 001D7710 41 82 00 08 */ beq lbl_801DA7B8 +/* 801DA7B4 001D7714 48 13 B1 7D */ bl Free__7CMemoryFPCv +lbl_801DA7B8: +/* 801DA7B8 001D7718 34 1E 07 F0 */ addic. r0, r30, 0x7f0 +/* 801DA7BC 001D771C 41 82 00 60 */ beq lbl_801DA81C +/* 801DA7C0 001D7720 34 1E 07 F4 */ addic. r0, r30, 0x7f4 +/* 801DA7C4 001D7724 41 82 00 58 */ beq lbl_801DA81C +/* 801DA7C8 001D7728 80 BE 07 F4 */ lwz r5, 0x7f4(r30) +/* 801DA7CC 001D772C 38 60 00 00 */ li r3, 0 +/* 801DA7D0 001D7730 2C 05 00 00 */ cmpwi r5, 0 +/* 801DA7D4 001D7734 40 81 00 40 */ ble lbl_801DA814 +/* 801DA7D8 001D7738 2C 05 00 08 */ cmpwi r5, 8 +/* 801DA7DC 001D773C 38 85 FF F8 */ addi r4, r5, -8 +/* 801DA7E0 001D7740 40 81 00 20 */ ble lbl_801DA800 +/* 801DA7E4 001D7744 38 04 00 07 */ addi r0, r4, 7 +/* 801DA7E8 001D7748 54 00 E8 FE */ srwi r0, r0, 3 +/* 801DA7EC 001D774C 7C 09 03 A6 */ mtctr r0 +/* 801DA7F0 001D7750 2C 04 00 00 */ cmpwi r4, 0 +/* 801DA7F4 001D7754 40 81 00 0C */ ble lbl_801DA800 +lbl_801DA7F8: +/* 801DA7F8 001D7758 38 63 00 08 */ addi r3, r3, 8 +/* 801DA7FC 001D775C 42 00 FF FC */ bdnz lbl_801DA7F8 +lbl_801DA800: +/* 801DA800 001D7760 7C 03 28 50 */ subf r0, r3, r5 +/* 801DA804 001D7764 7C 09 03 A6 */ mtctr r0 +/* 801DA808 001D7768 7C 03 28 00 */ cmpw r3, r5 +/* 801DA80C 001D776C 40 80 00 08 */ bge lbl_801DA814 +lbl_801DA810: +/* 801DA810 001D7770 42 00 00 00 */ bdnz lbl_801DA810 +lbl_801DA814: +/* 801DA814 001D7774 38 00 00 00 */ li r0, 0 +/* 801DA818 001D7778 90 1E 07 F4 */ stw r0, 0x7f4(r30) +lbl_801DA81C: +/* 801DA81C 001D777C 34 1E 07 A8 */ addic. r0, r30, 0x7a8 +/* 801DA820 001D7780 41 82 00 44 */ beq lbl_801DA864 +/* 801DA824 001D7784 80 1E 07 AC */ lwz r0, 0x7ac(r30) +/* 801DA828 001D7788 80 7E 07 B4 */ lwz r3, 0x7b4(r30) +/* 801DA82C 001D778C 54 00 08 3C */ slwi r0, r0, 1 +/* 801DA830 001D7790 7C 03 02 14 */ add r0, r3, r0 +/* 801DA834 001D7794 90 61 00 8C */ stw r3, 0x8c(r1) +/* 801DA838 001D7798 7C 64 1B 78 */ mr r4, r3 +/* 801DA83C 001D779C 90 01 00 94 */ stw r0, 0x94(r1) +/* 801DA840 001D77A0 90 01 00 90 */ stw r0, 0x90(r1) +/* 801DA844 001D77A4 90 61 00 88 */ stw r3, 0x88(r1) +/* 801DA848 001D77A8 48 00 00 08 */ b lbl_801DA850 +lbl_801DA84C: +/* 801DA84C 001D77AC 38 84 00 02 */ addi r4, r4, 2 +lbl_801DA850: +/* 801DA850 001D77B0 7C 04 00 40 */ cmplw r4, r0 +/* 801DA854 001D77B4 40 82 FF F8 */ bne lbl_801DA84C +/* 801DA858 001D77B8 28 03 00 00 */ cmplwi r3, 0 +/* 801DA85C 001D77BC 41 82 00 08 */ beq lbl_801DA864 +/* 801DA860 001D77C0 48 13 B0 D1 */ bl Free__7CMemoryFPCv +lbl_801DA864: +/* 801DA864 001D77C4 34 1E 07 98 */ addic. r0, r30, 0x798 +/* 801DA868 001D77C8 41 82 00 44 */ beq lbl_801DA8AC +/* 801DA86C 001D77CC 80 1E 07 9C */ lwz r0, 0x79c(r30) +/* 801DA870 001D77D0 80 7E 07 A4 */ lwz r3, 0x7a4(r30) +/* 801DA874 001D77D4 54 00 08 3C */ slwi r0, r0, 1 +/* 801DA878 001D77D8 7C 03 02 14 */ add r0, r3, r0 +/* 801DA87C 001D77DC 90 61 00 7C */ stw r3, 0x7c(r1) +/* 801DA880 001D77E0 7C 64 1B 78 */ mr r4, r3 +/* 801DA884 001D77E4 90 01 00 84 */ stw r0, 0x84(r1) +/* 801DA888 001D77E8 90 01 00 80 */ stw r0, 0x80(r1) +/* 801DA88C 001D77EC 90 61 00 78 */ stw r3, 0x78(r1) +/* 801DA890 001D77F0 48 00 00 08 */ b lbl_801DA898 +lbl_801DA894: +/* 801DA894 001D77F4 38 84 00 02 */ addi r4, r4, 2 +lbl_801DA898: +/* 801DA898 001D77F8 7C 04 00 40 */ cmplw r4, r0 +/* 801DA89C 001D77FC 40 82 FF F8 */ bne lbl_801DA894 +/* 801DA8A0 001D7800 28 03 00 00 */ cmplwi r3, 0 +/* 801DA8A4 001D7804 41 82 00 08 */ beq lbl_801DA8AC +/* 801DA8A8 001D7808 48 13 B0 89 */ bl Free__7CMemoryFPCv +lbl_801DA8AC: +/* 801DA8AC 001D780C 34 1E 06 C0 */ addic. r0, r30, 0x6c0 +/* 801DA8B0 001D7810 41 82 00 44 */ beq lbl_801DA8F4 +/* 801DA8B4 001D7814 80 1E 06 C4 */ lwz r0, 0x6c4(r30) +/* 801DA8B8 001D7818 80 7E 06 CC */ lwz r3, 0x6cc(r30) +/* 801DA8BC 001D781C 54 00 08 3C */ slwi r0, r0, 1 +/* 801DA8C0 001D7820 7C 03 02 14 */ add r0, r3, r0 +/* 801DA8C4 001D7824 90 61 00 6C */ stw r3, 0x6c(r1) +/* 801DA8C8 001D7828 7C 64 1B 78 */ mr r4, r3 +/* 801DA8CC 001D782C 90 01 00 74 */ stw r0, 0x74(r1) +/* 801DA8D0 001D7830 90 01 00 70 */ stw r0, 0x70(r1) +/* 801DA8D4 001D7834 90 61 00 68 */ stw r3, 0x68(r1) +/* 801DA8D8 001D7838 48 00 00 08 */ b lbl_801DA8E0 +lbl_801DA8DC: +/* 801DA8DC 001D783C 38 84 00 02 */ addi r4, r4, 2 +lbl_801DA8E0: +/* 801DA8E0 001D7840 7C 04 00 40 */ cmplw r4, r0 +/* 801DA8E4 001D7844 40 82 FF F8 */ bne lbl_801DA8DC +/* 801DA8E8 001D7848 28 03 00 00 */ cmplwi r3, 0 +/* 801DA8EC 001D784C 41 82 00 08 */ beq lbl_801DA8F4 +/* 801DA8F0 001D7850 48 13 B0 41 */ bl Free__7CMemoryFPCv +lbl_801DA8F4: +/* 801DA8F4 001D7854 34 1E 06 B0 */ addic. r0, r30, 0x6b0 +/* 801DA8F8 001D7858 41 82 00 40 */ beq lbl_801DA938 +/* 801DA8FC 001D785C 80 7E 06 BC */ lwz r3, 0x6bc(r30) +/* 801DA900 001D7860 80 1E 06 B4 */ lwz r0, 0x6b4(r30) +/* 801DA904 001D7864 90 61 00 5C */ stw r3, 0x5c(r1) +/* 801DA908 001D7868 7C 83 02 14 */ add r4, r3, r0 +/* 801DA90C 001D786C 7C 03 20 50 */ subf r0, r3, r4 +/* 801DA910 001D7870 90 81 00 64 */ stw r4, 0x64(r1) +/* 801DA914 001D7874 90 81 00 60 */ stw r4, 0x60(r1) +/* 801DA918 001D7878 90 61 00 58 */ stw r3, 0x58(r1) +/* 801DA91C 001D787C 7C 09 03 A6 */ mtctr r0 +/* 801DA920 001D7880 7C 03 20 40 */ cmplw r3, r4 +/* 801DA924 001D7884 41 82 00 08 */ beq lbl_801DA92C +lbl_801DA928: +/* 801DA928 001D7888 42 00 00 00 */ bdnz lbl_801DA928 +lbl_801DA92C: +/* 801DA92C 001D788C 28 03 00 00 */ cmplwi r3, 0 +/* 801DA930 001D7890 41 82 00 08 */ beq lbl_801DA938 +/* 801DA934 001D7894 48 13 AF FD */ bl Free__7CMemoryFPCv +lbl_801DA938: +/* 801DA938 001D7898 34 1E 06 64 */ addic. r0, r30, 0x664 +/* 801DA93C 001D789C 41 82 00 58 */ beq lbl_801DA994 +/* 801DA940 001D78A0 80 BE 06 64 */ lwz r5, 0x664(r30) +/* 801DA944 001D78A4 38 60 00 00 */ li r3, 0 +/* 801DA948 001D78A8 2C 05 00 00 */ cmpwi r5, 0 +/* 801DA94C 001D78AC 40 81 00 40 */ ble lbl_801DA98C +/* 801DA950 001D78B0 2C 05 00 08 */ cmpwi r5, 8 +/* 801DA954 001D78B4 38 85 FF F8 */ addi r4, r5, -8 +/* 801DA958 001D78B8 40 81 00 20 */ ble lbl_801DA978 +/* 801DA95C 001D78BC 38 04 00 07 */ addi r0, r4, 7 +/* 801DA960 001D78C0 54 00 E8 FE */ srwi r0, r0, 3 +/* 801DA964 001D78C4 7C 09 03 A6 */ mtctr r0 +/* 801DA968 001D78C8 2C 04 00 00 */ cmpwi r4, 0 +/* 801DA96C 001D78CC 40 81 00 0C */ ble lbl_801DA978 +lbl_801DA970: +/* 801DA970 001D78D0 38 63 00 08 */ addi r3, r3, 8 +/* 801DA974 001D78D4 42 00 FF FC */ bdnz lbl_801DA970 +lbl_801DA978: +/* 801DA978 001D78D8 7C 03 28 50 */ subf r0, r3, r5 +/* 801DA97C 001D78DC 7C 09 03 A6 */ mtctr r0 +/* 801DA980 001D78E0 7C 03 28 00 */ cmpw r3, r5 +/* 801DA984 001D78E4 40 80 00 08 */ bge lbl_801DA98C +lbl_801DA988: +/* 801DA988 001D78E8 42 00 00 00 */ bdnz lbl_801DA988 +lbl_801DA98C: +/* 801DA98C 001D78EC 38 00 00 00 */ li r0, 0 +/* 801DA990 001D78F0 90 1E 06 64 */ stw r0, 0x664(r30) +lbl_801DA994: +/* 801DA994 001D78F4 34 1E 06 34 */ addic. r0, r30, 0x634 +/* 801DA998 001D78F8 41 82 00 44 */ beq lbl_801DA9DC +/* 801DA99C 001D78FC 80 1E 06 38 */ lwz r0, 0x638(r30) +/* 801DA9A0 001D7900 80 7E 06 40 */ lwz r3, 0x640(r30) +/* 801DA9A4 001D7904 54 00 08 3C */ slwi r0, r0, 1 +/* 801DA9A8 001D7908 7C 03 02 14 */ add r0, r3, r0 +/* 801DA9AC 001D790C 90 61 00 4C */ stw r3, 0x4c(r1) +/* 801DA9B0 001D7910 7C 64 1B 78 */ mr r4, r3 +/* 801DA9B4 001D7914 90 01 00 54 */ stw r0, 0x54(r1) +/* 801DA9B8 001D7918 90 01 00 50 */ stw r0, 0x50(r1) +/* 801DA9BC 001D791C 90 61 00 48 */ stw r3, 0x48(r1) +/* 801DA9C0 001D7920 48 00 00 08 */ b lbl_801DA9C8 +lbl_801DA9C4: +/* 801DA9C4 001D7924 38 84 00 02 */ addi r4, r4, 2 +lbl_801DA9C8: +/* 801DA9C8 001D7928 7C 04 00 40 */ cmplw r4, r0 +/* 801DA9CC 001D792C 40 82 FF F8 */ bne lbl_801DA9C4 +/* 801DA9D0 001D7930 28 03 00 00 */ cmplwi r3, 0 +/* 801DA9D4 001D7934 41 82 00 08 */ beq lbl_801DA9DC +/* 801DA9D8 001D7938 48 13 AF 59 */ bl Free__7CMemoryFPCv +lbl_801DA9DC: +/* 801DA9DC 001D793C 34 1E 06 20 */ addic. r0, r30, 0x620 +/* 801DA9E0 001D7940 41 82 00 44 */ beq lbl_801DAA24 +/* 801DA9E4 001D7944 80 1E 06 24 */ lwz r0, 0x624(r30) +/* 801DA9E8 001D7948 80 7E 06 2C */ lwz r3, 0x62c(r30) +/* 801DA9EC 001D794C 54 00 08 3C */ slwi r0, r0, 1 +/* 801DA9F0 001D7950 7C 03 02 14 */ add r0, r3, r0 +/* 801DA9F4 001D7954 90 61 00 3C */ stw r3, 0x3c(r1) +/* 801DA9F8 001D7958 7C 64 1B 78 */ mr r4, r3 +/* 801DA9FC 001D795C 90 01 00 44 */ stw r0, 0x44(r1) +/* 801DAA00 001D7960 90 01 00 40 */ stw r0, 0x40(r1) +/* 801DAA04 001D7964 90 61 00 38 */ stw r3, 0x38(r1) +/* 801DAA08 001D7968 48 00 00 08 */ b lbl_801DAA10 +lbl_801DAA0C: +/* 801DAA0C 001D796C 38 84 00 02 */ addi r4, r4, 2 +lbl_801DAA10: +/* 801DAA10 001D7970 7C 04 00 40 */ cmplw r4, r0 +/* 801DAA14 001D7974 40 82 FF F8 */ bne lbl_801DAA0C +/* 801DAA18 001D7978 28 03 00 00 */ cmplwi r3, 0 +/* 801DAA1C 001D797C 41 82 00 08 */ beq lbl_801DAA24 +/* 801DAA20 001D7980 48 13 AF 11 */ bl Free__7CMemoryFPCv +lbl_801DAA24: +/* 801DAA24 001D7984 34 1E 06 10 */ addic. r0, r30, 0x610 +/* 801DAA28 001D7988 41 82 00 44 */ beq lbl_801DAA6C +/* 801DAA2C 001D798C 80 1E 06 14 */ lwz r0, 0x614(r30) +/* 801DAA30 001D7990 80 7E 06 1C */ lwz r3, 0x61c(r30) +/* 801DAA34 001D7994 54 00 08 3C */ slwi r0, r0, 1 +/* 801DAA38 001D7998 7C 03 02 14 */ add r0, r3, r0 +/* 801DAA3C 001D799C 90 61 00 2C */ stw r3, 0x2c(r1) +/* 801DAA40 001D79A0 7C 64 1B 78 */ mr r4, r3 +/* 801DAA44 001D79A4 90 01 00 34 */ stw r0, 0x34(r1) +/* 801DAA48 001D79A8 90 01 00 30 */ stw r0, 0x30(r1) +/* 801DAA4C 001D79AC 90 61 00 28 */ stw r3, 0x28(r1) +/* 801DAA50 001D79B0 48 00 00 08 */ b lbl_801DAA58 +lbl_801DAA54: +/* 801DAA54 001D79B4 38 84 00 02 */ addi r4, r4, 2 +lbl_801DAA58: +/* 801DAA58 001D79B8 7C 04 00 40 */ cmplw r4, r0 +/* 801DAA5C 001D79BC 40 82 FF F8 */ bne lbl_801DAA54 +/* 801DAA60 001D79C0 28 03 00 00 */ cmplwi r3, 0 +/* 801DAA64 001D79C4 41 82 00 08 */ beq lbl_801DAA6C +/* 801DAA68 001D79C8 48 13 AE C9 */ bl Free__7CMemoryFPCv +lbl_801DAA6C: +/* 801DAA6C 001D79CC 34 1E 05 F8 */ addic. r0, r30, 0x5f8 +/* 801DAA70 001D79D0 41 82 00 10 */ beq lbl_801DAA80 +/* 801DAA74 001D79D4 80 7E 05 F8 */ lwz r3, 0x5f8(r30) +/* 801DAA78 001D79D8 38 80 00 01 */ li r4, 1 +/* 801DAA7C 001D79DC 4B FC CE 61 */ bl sub_801a78dc +lbl_801DAA80: +/* 801DAA80 001D79E0 34 1E 05 F4 */ addic. r0, r30, 0x5f4 +/* 801DAA84 001D79E4 41 82 00 10 */ beq lbl_801DAA94 +/* 801DAA88 001D79E8 80 7E 05 F4 */ lwz r3, 0x5f4(r30) +/* 801DAA8C 001D79EC 38 80 00 01 */ li r4, 1 +/* 801DAA90 001D79F0 4B FC CE 4D */ bl sub_801a78dc +lbl_801DAA94: +/* 801DAA94 001D79F4 34 1E 05 F0 */ addic. r0, r30, 0x5f0 +/* 801DAA98 001D79F8 41 82 00 10 */ beq lbl_801DAAA8 +/* 801DAA9C 001D79FC 80 7E 05 F0 */ lwz r3, 0x5f0(r30) +/* 801DAAA0 001D7A00 38 80 00 01 */ li r4, 1 +/* 801DAAA4 001D7A04 4B FC CE 39 */ bl sub_801a78dc +lbl_801DAAA8: +/* 801DAAA8 001D7A08 34 1E 05 DC */ addic. r0, r30, 0x5dc +/* 801DAAAC 001D7A0C 41 82 00 50 */ beq lbl_801DAAFC +/* 801DAAB0 001D7A10 80 1E 05 E0 */ lwz r0, 0x5e0(r30) +/* 801DAAB4 001D7A14 83 9E 05 E8 */ lwz r28, 0x5e8(r30) +/* 801DAAB8 001D7A18 1C 00 00 4C */ mulli r0, r0, 0x4c +/* 801DAABC 001D7A1C 93 81 00 1C */ stw r28, 0x1c(r1) +/* 801DAAC0 001D7A20 7F BC 02 14 */ add r29, r28, r0 +/* 801DAAC4 001D7A24 93 81 00 18 */ stw r28, 0x18(r1) +/* 801DAAC8 001D7A28 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801DAACC 001D7A2C 93 A1 00 20 */ stw r29, 0x20(r1) +/* 801DAAD0 001D7A30 48 00 00 14 */ b lbl_801DAAE4 +lbl_801DAAD4: +/* 801DAAD4 001D7A34 7F 83 E3 78 */ mr r3, r28 +/* 801DAAD8 001D7A38 38 80 FF FF */ li r4, -1 +/* 801DAADC 001D7A3C 4B F3 BF 71 */ bl __dt__10CModelDataFv +/* 801DAAE0 001D7A40 3B 9C 00 4C */ addi r28, r28, 0x4c +lbl_801DAAE4: +/* 801DAAE4 001D7A44 7C 1C E8 40 */ cmplw r28, r29 +/* 801DAAE8 001D7A48 40 82 FF EC */ bne lbl_801DAAD4 +/* 801DAAEC 001D7A4C 80 7E 05 E8 */ lwz r3, 0x5e8(r30) +/* 801DAAF0 001D7A50 28 03 00 00 */ cmplwi r3, 0 +/* 801DAAF4 001D7A54 41 82 00 08 */ beq lbl_801DAAFC +/* 801DAAF8 001D7A58 48 13 AE 39 */ bl Free__7CMemoryFPCv +lbl_801DAAFC: +/* 801DAAFC 001D7A5C 34 1E 05 CC */ addic. r0, r30, 0x5cc +/* 801DAB00 001D7A60 41 82 00 50 */ beq lbl_801DAB50 +/* 801DAB04 001D7A64 80 1E 05 D0 */ lwz r0, 0x5d0(r30) +/* 801DAB08 001D7A68 83 9E 05 D8 */ lwz r28, 0x5d8(r30) +/* 801DAB0C 001D7A6C 1C 00 00 4C */ mulli r0, r0, 0x4c +/* 801DAB10 001D7A70 93 81 00 0C */ stw r28, 0xc(r1) +/* 801DAB14 001D7A74 7F BC 02 14 */ add r29, r28, r0 +/* 801DAB18 001D7A78 93 81 00 08 */ stw r28, 8(r1) +/* 801DAB1C 001D7A7C 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801DAB20 001D7A80 93 A1 00 10 */ stw r29, 0x10(r1) +/* 801DAB24 001D7A84 48 00 00 14 */ b lbl_801DAB38 +lbl_801DAB28: +/* 801DAB28 001D7A88 7F 83 E3 78 */ mr r3, r28 +/* 801DAB2C 001D7A8C 38 80 FF FF */ li r4, -1 +/* 801DAB30 001D7A90 4B F3 BF 1D */ bl __dt__10CModelDataFv +/* 801DAB34 001D7A94 3B 9C 00 4C */ addi r28, r28, 0x4c +lbl_801DAB38: +/* 801DAB38 001D7A98 7C 1C E8 40 */ cmplw r28, r29 +/* 801DAB3C 001D7A9C 40 82 FF EC */ bne lbl_801DAB28 +/* 801DAB40 001D7AA0 80 7E 05 D8 */ lwz r3, 0x5d8(r30) +/* 801DAB44 001D7AA4 28 03 00 00 */ cmplwi r3, 0 +/* 801DAB48 001D7AA8 41 82 00 08 */ beq lbl_801DAB50 +/* 801DAB4C 001D7AAC 48 13 AD E5 */ bl Free__7CMemoryFPCv +lbl_801DAB50: +/* 801DAB50 001D7AB0 34 1E 05 78 */ addic. r0, r30, 0x578 +/* 801DAB54 001D7AB4 41 82 00 8C */ beq lbl_801DABE0 +/* 801DAB58 001D7AB8 38 DE 05 7C */ addi r6, r30, 0x57c +/* 801DAB5C 001D7ABC 38 60 00 00 */ li r3, 0 +/* 801DAB60 001D7AC0 48 00 00 6C */ b lbl_801DABCC +lbl_801DAB64: +/* 801DAB64 001D7AC4 28 06 00 00 */ cmplwi r6, 0 +/* 801DAB68 001D7AC8 41 82 00 5C */ beq lbl_801DABC4 +/* 801DAB6C 001D7ACC 80 E6 00 00 */ lwz r7, 0(r6) +/* 801DAB70 001D7AD0 38 80 00 00 */ li r4, 0 +/* 801DAB74 001D7AD4 2C 07 00 00 */ cmpwi r7, 0 +/* 801DAB78 001D7AD8 40 81 00 44 */ ble lbl_801DABBC +/* 801DAB7C 001D7ADC 2C 07 00 08 */ cmpwi r7, 8 +/* 801DAB80 001D7AE0 38 A7 FF F8 */ addi r5, r7, -8 +/* 801DAB84 001D7AE4 40 81 00 20 */ ble lbl_801DABA4 +/* 801DAB88 001D7AE8 38 05 00 07 */ addi r0, r5, 7 +/* 801DAB8C 001D7AEC 54 00 E8 FE */ srwi r0, r0, 3 +/* 801DAB90 001D7AF0 7C 09 03 A6 */ mtctr r0 +/* 801DAB94 001D7AF4 2C 05 00 00 */ cmpwi r5, 0 +/* 801DAB98 001D7AF8 40 81 00 0C */ ble lbl_801DABA4 +lbl_801DAB9C: +/* 801DAB9C 001D7AFC 38 84 00 08 */ addi r4, r4, 8 +/* 801DABA0 001D7B00 42 00 FF FC */ bdnz lbl_801DAB9C +lbl_801DABA4: +/* 801DABA4 001D7B04 7C 04 38 50 */ subf r0, r4, r7 +/* 801DABA8 001D7B08 7C 09 03 A6 */ mtctr r0 +/* 801DABAC 001D7B0C 7C 04 38 00 */ cmpw r4, r7 +/* 801DABB0 001D7B10 40 80 00 0C */ bge lbl_801DABBC +lbl_801DABB4: +/* 801DABB4 001D7B14 38 84 00 01 */ addi r4, r4, 1 +/* 801DABB8 001D7B18 42 00 FF FC */ bdnz lbl_801DABB4 +lbl_801DABBC: +/* 801DABBC 001D7B1C 38 00 00 00 */ li r0, 0 +/* 801DABC0 001D7B20 90 06 00 00 */ stw r0, 0(r6) +lbl_801DABC4: +/* 801DABC4 001D7B24 38 C6 00 24 */ addi r6, r6, 0x24 +/* 801DABC8 001D7B28 38 63 00 01 */ addi r3, r3, 1 +lbl_801DABCC: +/* 801DABCC 001D7B2C 80 1E 05 78 */ lwz r0, 0x578(r30) +/* 801DABD0 001D7B30 7C 03 00 00 */ cmpw r3, r0 +/* 801DABD4 001D7B34 41 80 FF 90 */ blt lbl_801DAB64 +/* 801DABD8 001D7B38 38 00 00 00 */ li r0, 0 +/* 801DABDC 001D7B3C 90 1E 05 78 */ stw r0, 0x578(r30) +lbl_801DABE0: +/* 801DABE0 001D7B40 7F C3 F3 78 */ mr r3, r30 +/* 801DABE4 001D7B44 38 80 00 00 */ li r4, 0 +/* 801DABE8 001D7B48 4B E9 C9 89 */ bl __dt__10CPatternedFv +/* 801DABEC 001D7B4C 7F E0 07 35 */ extsh. r0, r31 +/* 801DABF0 001D7B50 40 81 00 0C */ ble lbl_801DABFC +/* 801DABF4 001D7B54 7F C3 F3 78 */ mr r3, r30 +/* 801DABF8 001D7B58 48 13 AD 39 */ bl Free__7CMemoryFPCv +lbl_801DABFC: +/* 801DABFC 001D7B5C 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 801DAC00 001D7B60 7F C3 F3 78 */ mr r3, r30 +/* 801DAC04 001D7B64 83 E1 00 CC */ lwz r31, 0xcc(r1) +/* 801DAC08 001D7B68 83 C1 00 C8 */ lwz r30, 0xc8(r1) +/* 801DAC0C 001D7B6C 83 A1 00 C4 */ lwz r29, 0xc4(r1) +/* 801DAC10 001D7B70 83 81 00 C0 */ lwz r28, 0xc0(r1) +/* 801DAC14 001D7B74 7C 08 03 A6 */ mtlr r0 +/* 801DAC18 001D7B78 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 801DAC1C 001D7B7C 4E 80 00 20 */ blr + +.global CanRenderUnsorted__8CThardusCFRC13CStateManager +CanRenderUnsorted__8CThardusCFRC13CStateManager: +/* 801DAC20 001D7B80 38 60 00 00 */ li r3, 0 +/* 801DAC24 001D7B84 4E 80 00 20 */ blr + +.global GetSearchPath__8CThardusFv +GetSearchPath__8CThardusFv: +/* 801DAC28 001D7B88 38 63 07 F0 */ addi r3, r3, 0x7f0 +/* 801DAC2C 001D7B8C 4E 80 00 20 */ blr + +.global sub_801dac30 +sub_801dac30: +/* 801DAC30 001D7B90 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 801DAC34 001D7B94 7C 08 02 A6 */ mflr r0 +/* 801DAC38 001D7B98 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 801DAC3C 001D7B9C DB E1 00 C0 */ stfd f31, 0xc0(r1) +/* 801DAC40 001D7BA0 F3 E1 00 C8 */ psq_st f31, 200(r1), 0, qr0 +/* 801DAC44 001D7BA4 BF 01 00 A0 */ stmw r24, 0xa0(r1) +/* 801DAC48 001D7BA8 7C 99 23 78 */ mr r25, r4 +/* 801DAC4C 001D7BAC 38 8D A8 98 */ addi r4, r13, lbl_805A9458@sda21 +/* 801DAC50 001D7BB0 83 B9 06 64 */ lwz r29, 0x664(r25) +/* 801DAC54 001D7BB4 7C 78 1B 78 */ mr r24, r3 +/* 801DAC58 001D7BB8 C0 2D A8 98 */ lfs f1, lbl_805A9458@sda21(r13) +/* 801DAC5C 001D7BBC 7C BA 2B 78 */ mr r26, r5 +/* 801DAC60 001D7BC0 C0 04 00 04 */ lfs f0, 4(r4) +/* 801DAC64 001D7BC4 38 61 00 48 */ addi r3, r1, 0x48 +/* 801DAC68 001D7BC8 D0 21 00 68 */ stfs f1, 0x68(r1) +/* 801DAC6C 001D7BCC D0 01 00 6C */ stfs f0, 0x6c(r1) +/* 801DAC70 001D7BD0 C0 59 00 50 */ lfs f2, 0x50(r25) +/* 801DAC74 001D7BD4 C0 39 00 40 */ lfs f1, 0x40(r25) +/* 801DAC78 001D7BD8 C0 19 00 60 */ lfs f0, 0x60(r25) +/* 801DAC7C 001D7BDC D0 21 00 88 */ stfs f1, 0x88(r1) +/* 801DAC80 001D7BE0 D0 41 00 8C */ stfs f2, 0x8c(r1) +/* 801DAC84 001D7BE4 D0 01 00 90 */ stfs f0, 0x90(r1) +/* 801DAC88 001D7BE8 48 13 95 79 */ bl __ct__9CVector2fFff +/* 801DAC8C 001D7BEC C0 21 00 48 */ lfs f1, 0x48(r1) +/* 801DAC90 001D7BF0 3B D9 06 68 */ addi r30, r25, 0x668 +/* 801DAC94 001D7BF4 C0 01 00 4C */ lfs f0, 0x4c(r1) +/* 801DAC98 001D7BF8 3B 80 00 00 */ li r28, 0 +/* 801DAC9C 001D7BFC D0 21 00 60 */ stfs f1, 0x60(r1) +/* 801DACA0 001D7C00 3B E0 00 00 */ li r31, 0 +/* 801DACA4 001D7C04 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 801DACA8 001D7C08 48 00 00 C8 */ b lbl_801DAD70 +lbl_801DACAC: +/* 801DACAC 001D7C0C 7C 1E FA 2E */ lhzx r0, r30, r31 +/* 801DACB0 001D7C10 7F 43 D3 78 */ mr r3, r26 +/* 801DACB4 001D7C14 38 81 00 08 */ addi r4, r1, 8 +/* 801DACB8 001D7C18 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801DACBC 001D7C1C B0 01 00 08 */ sth r0, 8(r1) +/* 801DACC0 001D7C20 4B E7 18 E5 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801DACC4 001D7C24 7C 64 1B 78 */ mr r4, r3 +/* 801DACC8 001D7C28 38 61 00 10 */ addi r3, r1, 0x10 +/* 801DACCC 001D7C2C 4B ED 13 B5 */ bl "__ct__22TCastToPtr<9CRepulsor>FP7CEntity" +/* 801DACD0 001D7C30 83 63 00 04 */ lwz r27, 4(r3) +/* 801DACD4 001D7C34 38 61 00 40 */ addi r3, r1, 0x40 +/* 801DACD8 001D7C38 C0 5B 00 50 */ lfs f2, 0x50(r27) +/* 801DACDC 001D7C3C C0 3B 00 40 */ lfs f1, 0x40(r27) +/* 801DACE0 001D7C40 C0 1B 00 60 */ lfs f0, 0x60(r27) +/* 801DACE4 001D7C44 D0 21 00 7C */ stfs f1, 0x7c(r1) +/* 801DACE8 001D7C48 D0 41 00 80 */ stfs f2, 0x80(r1) +/* 801DACEC 001D7C4C D0 01 00 84 */ stfs f0, 0x84(r1) +/* 801DACF0 001D7C50 48 13 95 11 */ bl __ct__9CVector2fFff +/* 801DACF4 001D7C54 C0 21 00 40 */ lfs f1, 0x40(r1) +/* 801DACF8 001D7C58 38 61 00 38 */ addi r3, r1, 0x38 +/* 801DACFC 001D7C5C C0 01 00 44 */ lfs f0, 0x44(r1) +/* 801DAD00 001D7C60 38 81 00 60 */ addi r4, r1, 0x60 +/* 801DAD04 001D7C64 D0 21 00 58 */ stfs f1, 0x58(r1) +/* 801DAD08 001D7C68 38 A1 00 58 */ addi r5, r1, 0x58 +/* 801DAD0C 001D7C6C D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 801DAD10 001D7C70 C3 FB 00 E8 */ lfs f31, 0xe8(r27) +/* 801DAD14 001D7C74 48 13 92 25 */ bl __mi__FRC9CVector2fRC9CVector2f +/* 801DAD18 001D7C78 C0 21 00 38 */ lfs f1, 0x38(r1) +/* 801DAD1C 001D7C7C 38 61 00 50 */ addi r3, r1, 0x50 +/* 801DAD20 001D7C80 C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 801DAD24 001D7C84 D0 21 00 50 */ stfs f1, 0x50(r1) +/* 801DAD28 001D7C88 D0 01 00 54 */ stfs f0, 0x54(r1) +/* 801DAD2C 001D7C8C 48 13 93 B1 */ bl MagSquared__9CVector2fCFv +/* 801DAD30 001D7C90 EC 1F 07 F2 */ fmuls f0, f31, f31 +/* 801DAD34 001D7C94 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801DAD38 001D7C98 40 80 00 30 */ bge lbl_801DAD68 +/* 801DAD3C 001D7C9C 48 13 A7 C5 */ bl SqrtF__5CMathFf +/* 801DAD40 001D7CA0 7F 25 CB 78 */ mr r5, r25 +/* 801DAD44 001D7CA4 38 61 00 30 */ addi r3, r1, 0x30 +/* 801DAD48 001D7CA8 38 99 04 5C */ addi r4, r25, 0x45c +/* 801DAD4C 001D7CAC 38 C1 00 58 */ addi r6, r1, 0x58 +/* 801DAD50 001D7CB0 4B F6 38 0D */ bl Flee2D__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector2f +/* 801DAD54 001D7CB4 C0 21 00 30 */ lfs f1, 0x30(r1) +/* 801DAD58 001D7CB8 C0 01 00 34 */ lfs f0, 0x34(r1) +/* 801DAD5C 001D7CBC D0 21 00 68 */ stfs f1, 0x68(r1) +/* 801DAD60 001D7CC0 D0 01 00 6C */ stfs f0, 0x6c(r1) +/* 801DAD64 001D7CC4 48 00 00 14 */ b lbl_801DAD78 +lbl_801DAD68: +/* 801DAD68 001D7CC8 3B 9C 00 01 */ addi r28, r28, 1 +/* 801DAD6C 001D7CCC 3B FF 00 02 */ addi r31, r31, 2 +lbl_801DAD70: +/* 801DAD70 001D7CD0 7C 1C E8 40 */ cmplw r28, r29 +/* 801DAD74 001D7CD4 41 80 FF 38 */ blt lbl_801DACAC +lbl_801DAD78: +/* 801DAD78 001D7CD8 38 61 00 68 */ addi r3, r1, 0x68 +/* 801DAD7C 001D7CDC 38 8D A8 98 */ addi r4, r13, lbl_805A9458@sda21 +/* 801DAD80 001D7CE0 48 13 91 89 */ bl __eq__FRC9CVector2fRC9CVector2f +/* 801DAD84 001D7CE4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801DAD88 001D7CE8 40 82 00 78 */ bne lbl_801DAE00 +/* 801DAD8C 001D7CEC C0 59 07 80 */ lfs f2, 0x780(r25) +/* 801DAD90 001D7CF0 38 61 00 20 */ addi r3, r1, 0x20 +/* 801DAD94 001D7CF4 C0 39 07 70 */ lfs f1, 0x770(r25) +/* 801DAD98 001D7CF8 C0 19 07 90 */ lfs f0, 0x790(r25) +/* 801DAD9C 001D7CFC D0 21 00 70 */ stfs f1, 0x70(r1) +/* 801DADA0 001D7D00 D0 41 00 74 */ stfs f2, 0x74(r1) +/* 801DADA4 001D7D04 D0 01 00 78 */ stfs f0, 0x78(r1) +/* 801DADA8 001D7D08 48 13 94 59 */ bl __ct__9CVector2fFff +/* 801DADAC 001D7D0C 7F 25 CB 78 */ mr r5, r25 +/* 801DADB0 001D7D10 38 61 00 28 */ addi r3, r1, 0x28 +/* 801DADB4 001D7D14 38 99 04 5C */ addi r4, r25, 0x45c +/* 801DADB8 001D7D18 38 C1 00 20 */ addi r6, r1, 0x20 +/* 801DADBC 001D7D1C 4B F6 36 F5 */ bl Arrival2D__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector2ff +/* 801DADC0 001D7D20 C0 21 00 68 */ lfs f1, 0x68(r1) +/* 801DADC4 001D7D24 38 61 00 18 */ addi r3, r1, 0x18 +/* 801DADC8 001D7D28 C0 42 AC DC */ lfs f2, lbl_805AC9FC@sda21(r2) +/* 801DADCC 001D7D2C C0 01 00 6C */ lfs f0, 0x6c(r1) +/* 801DADD0 001D7D30 EC 21 00 B2 */ fmuls f1, f1, f2 +/* 801DADD4 001D7D34 C0 81 00 28 */ lfs f4, 0x28(r1) +/* 801DADD8 001D7D38 C0 62 AC D8 */ lfs f3, lbl_805AC9F8@sda21(r2) +/* 801DADDC 001D7D3C EC 00 00 B2 */ fmuls f0, f0, f2 +/* 801DADE0 001D7D40 C0 41 00 2C */ lfs f2, 0x2c(r1) +/* 801DADE4 001D7D44 EC 24 08 FA */ fmadds f1, f4, f3, f1 +/* 801DADE8 001D7D48 EC 42 00 FA */ fmadds f2, f2, f3, f0 +/* 801DADEC 001D7D4C 48 13 94 15 */ bl __ct__9CVector2fFff +/* 801DADF0 001D7D50 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 801DADF4 001D7D54 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 801DADF8 001D7D58 D0 21 00 68 */ stfs f1, 0x68(r1) +/* 801DADFC 001D7D5C D0 01 00 6C */ stfs f0, 0x6c(r1) +lbl_801DAE00: +/* 801DAE00 001D7D60 C0 01 00 68 */ lfs f0, 0x68(r1) +/* 801DAE04 001D7D64 D0 18 00 00 */ stfs f0, 0(r24) +/* 801DAE08 001D7D68 C0 01 00 6C */ lfs f0, 0x6c(r1) +/* 801DAE0C 001D7D6C D0 18 00 04 */ stfs f0, 4(r24) +/* 801DAE10 001D7D70 E3 E1 00 C8 */ psq_l f31, 200(r1), 0, qr0 +/* 801DAE14 001D7D74 CB E1 00 C0 */ lfd f31, 0xc0(r1) +/* 801DAE18 001D7D78 BB 01 00 A0 */ lmw r24, 0xa0(r1) +/* 801DAE1C 001D7D7C 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 801DAE20 001D7D80 7C 08 03 A6 */ mtlr r0 +/* 801DAE24 001D7D84 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 801DAE28 001D7D88 4E 80 00 20 */ blr + +.global sub_801dae2c +sub_801dae2c: +/* 801DAE2C 001D7D8C 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 801DAE30 001D7D90 7C 08 02 A6 */ mflr r0 +/* 801DAE34 001D7D94 90 01 00 84 */ stw r0, 0x84(r1) +/* 801DAE38 001D7D98 DB E1 00 70 */ stfd f31, 0x70(r1) +/* 801DAE3C 001D7D9C F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 +/* 801DAE40 001D7DA0 BF 21 00 54 */ stmw r25, 0x54(r1) +/* 801DAE44 001D7DA4 7C 7C 1B 78 */ mr r28, r3 +/* 801DAE48 001D7DA8 7C 9D 23 78 */ mr r29, r4 +/* 801DAE4C 001D7DAC 80 63 05 F0 */ lwz r3, 0x5f0(r3) +/* 801DAE50 001D7DB0 7C BE 2B 78 */ mr r30, r5 +/* 801DAE54 001D7DB4 4B FC C3 F5 */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 801DAE58 001D7DB8 80 9C 06 1C */ lwz r4, 0x61c(r28) +/* 801DAE5C 001D7DBC 57 D9 08 3C */ slwi r25, r30, 1 +/* 801DAE60 001D7DC0 7C 7B 1B 78 */ mr r27, r3 +/* 801DAE64 001D7DC4 7F A3 EB 78 */ mr r3, r29 +/* 801DAE68 001D7DC8 7C 04 CA 2E */ lhzx r0, r4, r25 +/* 801DAE6C 001D7DCC 38 81 00 18 */ addi r4, r1, 0x18 +/* 801DAE70 001D7DD0 B0 01 00 20 */ sth r0, 0x20(r1) +/* 801DAE74 001D7DD4 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801DAE78 001D7DD8 4B E7 16 FD */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801DAE7C 001D7DDC 7C 60 1B 78 */ mr r0, r3 +/* 801DAE80 001D7DE0 80 7C 05 F0 */ lwz r3, 0x5f0(r28) +/* 801DAE84 001D7DE4 7C 1F 03 78 */ mr r31, r0 +/* 801DAE88 001D7DE8 7F C4 F3 78 */ mr r4, r30 +/* 801DAE8C 001D7DEC 4B FC C3 AD */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 801DAE90 001D7DF0 A0 03 00 3C */ lhz r0, 0x3c(r3) +/* 801DAE94 001D7DF4 7F A3 EB 78 */ mr r3, r29 +/* 801DAE98 001D7DF8 38 81 00 14 */ addi r4, r1, 0x14 +/* 801DAE9C 001D7DFC B0 01 00 1C */ sth r0, 0x1c(r1) +/* 801DAEA0 001D7E00 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801DAEA4 001D7E04 4B E7 16 D1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801DAEA8 001D7E08 7C 64 1B 78 */ mr r4, r3 +/* 801DAEAC 001D7E0C 38 61 00 24 */ addi r3, r1, 0x24 +/* 801DAEB0 001D7E10 4B ED 44 9D */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801DAEB4 001D7E14 28 1F 00 00 */ cmplwi r31, 0 +/* 801DAEB8 001D7E18 83 43 00 04 */ lwz r26, 4(r3) +/* 801DAEBC 001D7E1C 41 82 01 8C */ beq lbl_801DB048 +/* 801DAEC0 001D7E20 28 1A 00 00 */ cmplwi r26, 0 +/* 801DAEC4 001D7E24 41 82 01 84 */ beq lbl_801DB048 +/* 801DAEC8 001D7E28 88 1F 03 35 */ lbz r0, 0x335(r31) +/* 801DAECC 001D7E2C 28 00 00 00 */ cmplwi r0, 0 +/* 801DAED0 001D7E30 40 82 01 78 */ bne lbl_801DB048 +/* 801DAED4 001D7E34 7F E3 FB 78 */ mr r3, r31 +/* 801DAED8 001D7E38 48 00 80 89 */ bl UsePhazonModel__16CDestroyableRockFv +/* 801DAEDC 001D7E3C 38 1B FF FF */ addi r0, r27, -1 +/* 801DAEE0 001D7E40 7C 1E 00 40 */ cmplw r30, r0 +/* 801DAEE4 001D7E44 40 82 00 14 */ bne lbl_801DAEF8 +/* 801DAEE8 001D7E48 C0 22 AC E0 */ lfs f1, lbl_805ACA00@sda21(r2) +/* 801DAEEC 001D7E4C C0 1C 06 A4 */ lfs f0, 0x6a4(r28) +/* 801DAEF0 001D7E50 EF E1 00 32 */ fmuls f31, f1, f0 +/* 801DAEF4 001D7E54 48 00 00 08 */ b lbl_801DAEFC +lbl_801DAEF8: +/* 801DAEF8 001D7E58 C3 FC 06 A4 */ lfs f31, 0x6a4(r28) +lbl_801DAEFC: +/* 801DAEFC 001D7E5C 7F E3 FB 78 */ mr r3, r31 +/* 801DAF00 001D7E60 7F A4 EB 78 */ mr r4, r29 +/* 801DAF04 001D7E64 81 9F 00 00 */ lwz r12, 0(r31) +/* 801DAF08 001D7E68 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801DAF0C 001D7E6C 7D 89 03 A6 */ mtctr r12 +/* 801DAF10 001D7E70 4E 80 04 21 */ bctrl +/* 801DAF14 001D7E74 D3 E3 00 00 */ stfs f31, 0(r3) +/* 801DAF18 001D7E78 7F A4 EB 78 */ mr r4, r29 +/* 801DAF1C 001D7E7C C0 02 AC DC */ lfs f0, lbl_805AC9FC@sda21(r2) +/* 801DAF20 001D7E80 D0 03 00 04 */ stfs f0, 4(r3) +/* 801DAF24 001D7E84 7F 43 D3 78 */ mr r3, r26 +/* 801DAF28 001D7E88 81 9A 00 00 */ lwz r12, 0(r26) +/* 801DAF2C 001D7E8C 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801DAF30 001D7E90 7D 89 03 A6 */ mtctr r12 +/* 801DAF34 001D7E94 4E 80 04 21 */ bctrl +/* 801DAF38 001D7E98 D3 E3 00 00 */ stfs f31, 0(r3) +/* 801DAF3C 001D7E9C 38 00 00 01 */ li r0, 1 +/* 801DAF40 001D7EA0 C0 02 AC DC */ lfs f0, lbl_805AC9FC@sda21(r2) +/* 801DAF44 001D7EA4 38 81 00 10 */ addi r4, r1, 0x10 +/* 801DAF48 001D7EA8 D0 03 00 04 */ stfs f0, 4(r3) +/* 801DAF4C 001D7EAC 7F A3 EB 78 */ mr r3, r29 +/* 801DAF50 001D7EB0 80 BC 06 BC */ lwz r5, 0x6bc(r28) +/* 801DAF54 001D7EB4 7C 05 F1 AE */ stbx r0, r5, r30 +/* 801DAF58 001D7EB8 80 BC 06 CC */ lwz r5, 0x6cc(r28) +/* 801DAF5C 001D7EBC 7C 05 CA 2E */ lhzx r0, r5, r25 +/* 801DAF60 001D7EC0 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801DAF64 001D7EC4 4B E7 16 11 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801DAF68 001D7EC8 81 83 00 00 */ lwz r12, 0(r3) +/* 801DAF6C 001D7ECC 38 80 00 01 */ li r4, 1 +/* 801DAF70 001D7ED0 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801DAF74 001D7ED4 7D 89 03 A6 */ mtctr r12 +/* 801DAF78 001D7ED8 4E 80 04 21 */ bctrl +/* 801DAF7C 001D7EDC C0 02 AC E4 */ lfs f0, lbl_805ACA04@sda21(r2) +/* 801DAF80 001D7EE0 D0 1F 03 2C */ stfs f0, 0x32c(r31) +/* 801DAF84 001D7EE4 80 7D 08 B8 */ lwz r3, 0x8b8(r29) +/* 801DAF88 001D7EE8 80 63 00 00 */ lwz r3, 0(r3) +/* 801DAF8C 001D7EEC 80 03 00 14 */ lwz r0, 0x14(r3) +/* 801DAF90 001D7EF0 2C 00 00 03 */ cmpwi r0, 3 +/* 801DAF94 001D7EF4 40 82 00 14 */ bne lbl_801DAFA8 +/* 801DAF98 001D7EF8 40 82 00 3C */ bne lbl_801DAFD4 +/* 801DAF9C 001D7EFC 80 1C 07 C4 */ lwz r0, 0x7c4(r28) +/* 801DAFA0 001D7F00 2C 00 00 03 */ cmpwi r0, 3 +/* 801DAFA4 001D7F04 41 82 00 30 */ beq lbl_801DAFD4 +lbl_801DAFA8: +/* 801DAFA8 001D7F08 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 801DAFAC 001D7F0C 7F 83 E3 78 */ mr r3, r28 +/* 801DAFB0 001D7F10 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 801DAFB4 001D7F14 7F A4 EB 78 */ mr r4, r29 +/* 801DAFB8 001D7F18 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801DAFBC 001D7F1C 38 A1 00 2C */ addi r5, r1, 0x2c +/* 801DAFC0 001D7F20 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801DAFC4 001D7F24 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 801DAFC8 001D7F28 D0 41 00 34 */ stfs f2, 0x34(r1) +/* 801DAFCC 001D7F2C 80 DC 06 D4 */ lwz r6, 0x6d4(r28) +/* 801DAFD0 001D7F30 48 00 14 75 */ bl sub_801dc444 +lbl_801DAFD4: +/* 801DAFD4 001D7F34 80 BC 09 18 */ lwz r5, 0x918(r28) +/* 801DAFD8 001D7F38 57 C0 10 3A */ slwi r0, r30, 2 +/* 801DAFDC 001D7F3C 7F 83 E3 78 */ mr r3, r28 +/* 801DAFE0 001D7F40 7F A4 EB 78 */ mr r4, r29 +/* 801DAFE4 001D7F44 7F E5 05 2E */ stfsx f31, r5, r0 +/* 801DAFE8 001D7F48 7F E5 FB 78 */ mr r5, r31 +/* 801DAFEC 001D7F4C 48 00 0C 71 */ bl sub_801dbc5c +/* 801DAFF0 001D7F50 C0 9F 00 60 */ lfs f4, 0x60(r31) +/* 801DAFF4 001D7F54 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801DAFF8 001D7F58 C0 7F 00 50 */ lfs f3, 0x50(r31) +/* 801DAFFC 001D7F5C 39 03 66 A0 */ addi r8, r3, skZero3f@l +/* 801DB000 001D7F60 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801DB004 001D7F64 38 00 00 01 */ li r0, 1 +/* 801DB008 001D7F68 C0 22 AC D8 */ lfs f1, lbl_805AC9F8@sda21(r2) +/* 801DB00C 001D7F6C 7F 83 E3 78 */ mr r3, r28 +/* 801DB010 001D7F70 D0 61 00 3C */ stfs f3, 0x3c(r1) +/* 801DB014 001D7F74 39 21 00 38 */ addi r9, r1, 0x38 +/* 801DB018 001D7F78 C0 42 AC E8 */ lfs f2, lbl_805ACA08@sda21(r2) +/* 801DB01C 001D7F7C 38 A0 00 00 */ li r5, 0 +/* 801DB020 001D7F80 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 801DB024 001D7F84 38 C0 00 14 */ li r6, 0x14 +/* 801DB028 001D7F88 C0 62 AC EC */ lfs f3, lbl_805ACA0C@sda21(r2) +/* 801DB02C 001D7F8C 38 E0 00 7F */ li r7, 0x7f +/* 801DB030 001D7F90 D0 81 00 40 */ stfs f4, 0x40(r1) +/* 801DB034 001D7F94 93 A1 00 08 */ stw r29, 8(r1) +/* 801DB038 001D7F98 90 01 00 0C */ stw r0, 0xc(r1) +/* 801DB03C 001D7F9C 80 9C 07 60 */ lwz r4, 0x760(r28) +/* 801DB040 001D7FA0 81 5D 08 CC */ lwz r10, 0x8cc(r29) +/* 801DB044 001D7FA4 4B E7 7E ED */ bl ProcessSoundEvent__6CActorFififfUcUcRC9CVector3fRC9CVector3fiR13CStateManager +lbl_801DB048: +/* 801DB048 001D7FA8 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 +/* 801DB04C 001D7FAC CB E1 00 70 */ lfd f31, 0x70(r1) +/* 801DB050 001D7FB0 BB 21 00 54 */ lmw r25, 0x54(r1) +/* 801DB054 001D7FB4 80 01 00 84 */ lwz r0, 0x84(r1) +/* 801DB058 001D7FB8 7C 08 03 A6 */ mtlr r0 +/* 801DB05C 001D7FBC 38 21 00 80 */ addi r1, r1, 0x80 +/* 801DB060 001D7FC0 4E 80 00 20 */ blr + +.global GetSortingBounds__8CThardusCFRC12CTransform4f +GetSortingBounds__8CThardusCFRC12CTransform4f: +/* 801DB064 001D7FC4 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 801DB068 001D7FC8 7C 08 02 A6 */ mflr r0 +/* 801DB06C 001D7FCC 90 01 00 74 */ stw r0, 0x74(r1) +/* 801DB070 001D7FD0 DB E1 00 60 */ stfd f31, 0x60(r1) +/* 801DB074 001D7FD4 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 801DB078 001D7FD8 DB C1 00 50 */ stfd f30, 0x50(r1) +/* 801DB07C 001D7FDC F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 +/* 801DB080 001D7FE0 DB A1 00 40 */ stfd f29, 0x40(r1) +/* 801DB084 001D7FE4 F3 A1 00 48 */ psq_st f29, 72(r1), 0, qr0 +/* 801DB088 001D7FE8 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801DB08C 001D7FEC 38 84 00 9C */ addi r4, r4, 0x9c +/* 801DB090 001D7FF0 7C 7F 1B 78 */ mr r31, r3 +/* 801DB094 001D7FF4 C0 64 00 0C */ lfs f3, 0xc(r4) +/* 801DB098 001D7FF8 38 61 00 20 */ addi r3, r1, 0x20 +/* 801DB09C 001D7FFC C0 44 00 00 */ lfs f2, 0(r4) +/* 801DB0A0 001D8000 C0 24 00 10 */ lfs f1, 0x10(r4) +/* 801DB0A4 001D8004 C0 04 00 04 */ lfs f0, 4(r4) +/* 801DB0A8 001D8008 EC 63 10 28 */ fsubs f3, f3, f2 +/* 801DB0AC 001D800C C0 82 AC F0 */ lfs f4, lbl_805ACA10@sda21(r2) +/* 801DB0B0 001D8010 EC 41 00 28 */ fsubs f2, f1, f0 +/* 801DB0B4 001D8014 C0 24 00 14 */ lfs f1, 0x14(r4) +/* 801DB0B8 001D8018 C0 04 00 08 */ lfs f0, 8(r4) +/* 801DB0BC 001D801C EF A4 00 F2 */ fmuls f29, f4, f3 +/* 801DB0C0 001D8020 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801DB0C4 001D8024 EF C4 00 B2 */ fmuls f30, f4, f2 +/* 801DB0C8 001D8028 EF E4 00 32 */ fmuls f31, f4, f0 +/* 801DB0CC 001D802C 48 15 C5 41 */ bl GetCenterPoint__6CAABoxCFv +/* 801DB0D0 001D8030 C0 21 00 24 */ lfs f1, 0x24(r1) +/* 801DB0D4 001D8034 7F E3 FB 78 */ mr r3, r31 +/* 801DB0D8 001D8038 C0 A1 00 28 */ lfs f5, 0x28(r1) +/* 801DB0DC 001D803C 38 81 00 14 */ addi r4, r1, 0x14 +/* 801DB0E0 001D8040 C0 41 00 20 */ lfs f2, 0x20(r1) +/* 801DB0E4 001D8044 EC 01 F0 2A */ fadds f0, f1, f30 +/* 801DB0E8 001D8048 EC 65 F8 2A */ fadds f3, f5, f31 +/* 801DB0EC 001D804C 38 A1 00 08 */ addi r5, r1, 8 +/* 801DB0F0 001D8050 EC 82 E8 2A */ fadds f4, f2, f29 +/* 801DB0F4 001D8054 EC 42 E8 28 */ fsubs f2, f2, f29 +/* 801DB0F8 001D8058 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801DB0FC 001D805C EC 21 F0 28 */ fsubs f1, f1, f30 +/* 801DB100 001D8060 EC 05 F8 28 */ fsubs f0, f5, f31 +/* 801DB104 001D8064 D0 81 00 08 */ stfs f4, 8(r1) +/* 801DB108 001D8068 D0 61 00 10 */ stfs f3, 0x10(r1) +/* 801DB10C 001D806C D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801DB110 001D8070 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801DB114 001D8074 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801DB118 001D8078 48 15 D3 F1 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801DB11C 001D807C E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 801DB120 001D8080 CB E1 00 60 */ lfd f31, 0x60(r1) +/* 801DB124 001D8084 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 +/* 801DB128 001D8088 CB C1 00 50 */ lfd f30, 0x50(r1) +/* 801DB12C 001D808C E3 A1 00 48 */ psq_l f29, 72(r1), 0, qr0 +/* 801DB130 001D8090 CB A1 00 40 */ lfd f29, 0x40(r1) +/* 801DB134 001D8094 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801DB138 001D8098 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801DB13C 001D809C 7C 08 03 A6 */ mtlr r0 +/* 801DB140 001D80A0 38 21 00 70 */ addi r1, r1, 0x70 +/* 801DB144 001D80A4 4E 80 00 20 */ blr + +.global sub_801db148 +sub_801db148: +/* 801DB148 001D80A8 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801DB14C 001D80AC 7C 08 02 A6 */ mflr r0 +/* 801DB150 001D80B0 90 01 00 54 */ stw r0, 0x54(r1) +/* 801DB154 001D80B4 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 801DB158 001D80B8 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 801DB15C 001D80BC DB C1 00 30 */ stfd f30, 0x30(r1) +/* 801DB160 001D80C0 F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 +/* 801DB164 001D80C4 BF 41 00 18 */ stmw r26, 0x18(r1) +/* 801DB168 001D80C8 7C 7A 1B 78 */ mr r26, r3 +/* 801DB16C 001D80CC C3 C2 AC DC */ lfs f30, lbl_805AC9FC@sda21(r2) +/* 801DB170 001D80D0 83 A3 06 14 */ lwz r29, 0x614(r3) +/* 801DB174 001D80D4 7C 9B 23 78 */ mr r27, r4 +/* 801DB178 001D80D8 83 83 06 48 */ lwz r28, 0x648(r3) +/* 801DB17C 001D80DC 3B DD FF FF */ addi r30, r29, -1 +/* 801DB180 001D80E0 57 9F 08 3C */ slwi r31, r28, 1 +/* 801DB184 001D80E4 48 00 00 74 */ b lbl_801DB1F8 +lbl_801DB188: +/* 801DB188 001D80E8 7C 1C F0 40 */ cmplw r28, r30 +/* 801DB18C 001D80EC 40 82 00 14 */ bne lbl_801DB1A0 +/* 801DB190 001D80F0 C0 22 AC E0 */ lfs f1, lbl_805ACA00@sda21(r2) +/* 801DB194 001D80F4 C0 1A 06 A4 */ lfs f0, 0x6a4(r26) +/* 801DB198 001D80F8 EF E1 00 32 */ fmuls f31, f1, f0 +/* 801DB19C 001D80FC 48 00 00 08 */ b lbl_801DB1A4 +lbl_801DB1A0: +/* 801DB1A0 001D8100 C3 FA 06 A4 */ lfs f31, 0x6a4(r26) +lbl_801DB1A4: +/* 801DB1A4 001D8104 80 BA 06 1C */ lwz r5, 0x61c(r26) +/* 801DB1A8 001D8108 7F 63 DB 78 */ mr r3, r27 +/* 801DB1AC 001D810C 38 81 00 08 */ addi r4, r1, 8 +/* 801DB1B0 001D8110 7C 05 FA 2E */ lhzx r0, r5, r31 +/* 801DB1B4 001D8114 B0 01 00 08 */ sth r0, 8(r1) +/* 801DB1B8 001D8118 4B E7 13 BD */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801DB1BC 001D811C 28 03 00 00 */ cmplwi r3, 0 +/* 801DB1C0 001D8120 41 82 00 30 */ beq lbl_801DB1F0 +/* 801DB1C4 001D8124 88 03 03 35 */ lbz r0, 0x335(r3) +/* 801DB1C8 001D8128 28 00 00 00 */ cmplwi r0, 0 +/* 801DB1CC 001D812C 40 82 00 08 */ bne lbl_801DB1D4 +/* 801DB1D0 001D8130 EF DE F8 2A */ fadds f30, f30, f31 +lbl_801DB1D4: +/* 801DB1D4 001D8134 81 83 00 00 */ lwz r12, 0(r3) +/* 801DB1D8 001D8138 7F 64 DB 78 */ mr r4, r27 +/* 801DB1DC 001D813C 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801DB1E0 001D8140 7D 89 03 A6 */ mtctr r12 +/* 801DB1E4 001D8144 4E 80 04 21 */ bctrl +/* 801DB1E8 001D8148 C0 03 00 00 */ lfs f0, 0(r3) +/* 801DB1EC 001D814C EF DE 00 2A */ fadds f30, f30, f0 +lbl_801DB1F0: +/* 801DB1F0 001D8150 3B 9C 00 01 */ addi r28, r28, 1 +/* 801DB1F4 001D8154 3B FF 00 02 */ addi r31, r31, 2 +lbl_801DB1F8: +/* 801DB1F8 001D8158 7C 1C E8 40 */ cmplw r28, r29 +/* 801DB1FC 001D815C 41 80 FF 8C */ blt lbl_801DB188 +/* 801DB200 001D8160 7F 43 D3 78 */ mr r3, r26 +/* 801DB204 001D8164 7F 64 DB 78 */ mr r4, r27 +/* 801DB208 001D8168 81 9A 00 00 */ lwz r12, 0(r26) +/* 801DB20C 001D816C 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801DB210 001D8170 7D 89 03 A6 */ mtctr r12 +/* 801DB214 001D8174 4E 80 04 21 */ bctrl +/* 801DB218 001D8178 D3 C3 00 00 */ stfs f30, 0(r3) +/* 801DB21C 001D817C E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 801DB220 001D8180 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 801DB224 001D8184 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 +/* 801DB228 001D8188 CB C1 00 30 */ lfd f30, 0x30(r1) +/* 801DB22C 001D818C BB 41 00 18 */ lmw r26, 0x18(r1) +/* 801DB230 001D8190 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801DB234 001D8194 7C 08 03 A6 */ mtlr r0 +/* 801DB238 001D8198 38 21 00 50 */ addi r1, r1, 0x50 +/* 801DB23C 001D819C 4E 80 00 20 */ blr + +.global CodeTrigger__8CThardusFR13CStateManagerf +CodeTrigger__8CThardusFR13CStateManagerf: +/* 801DB240 001D81A0 88 63 09 5C */ lbz r3, 0x95c(r3) +/* 801DB244 001D81A4 4E 80 00 20 */ blr + +.global Faint__8CThardusFR13CStateManager9EStateMsgf +Faint__8CThardusFR13CStateManager9EStateMsgf: +/* 801DB248 001D81A8 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801DB24C 001D81AC 7C 08 02 A6 */ mflr r0 +/* 801DB250 001D81B0 2C 05 00 01 */ cmpwi r5, 1 +/* 801DB254 001D81B4 90 01 00 44 */ stw r0, 0x44(r1) +/* 801DB258 001D81B8 BF 61 00 2C */ stmw r27, 0x2c(r1) +/* 801DB25C 001D81BC 7C 7B 1B 78 */ mr r27, r3 +/* 801DB260 001D81C0 7C 9C 23 78 */ mr r28, r4 +/* 801DB264 001D81C4 41 82 00 94 */ beq lbl_801DB2F8 +/* 801DB268 001D81C8 40 80 01 84 */ bge lbl_801DB3EC +/* 801DB26C 001D81CC 2C 05 00 00 */ cmpwi r5, 0 +/* 801DB270 001D81D0 40 80 00 0C */ bge lbl_801DB27C +/* 801DB274 001D81D4 48 00 01 78 */ b lbl_801DB3EC +/* 801DB278 001D81D8 48 00 01 74 */ b lbl_801DB3EC +lbl_801DB27C: +/* 801DB27C 001D81DC 38 00 00 00 */ li r0, 0 +/* 801DB280 001D81E0 7F 85 E3 78 */ mr r5, r28 +/* 801DB284 001D81E4 90 1B 05 EC */ stw r0, 0x5ec(r27) +/* 801DB288 001D81E8 38 80 FF FF */ li r4, -1 +/* 801DB28C 001D81EC 98 1B 09 3C */ stb r0, 0x93c(r27) +/* 801DB290 001D81F0 48 00 02 D1 */ bl sub_801db560 +/* 801DB294 001D81F4 83 DB 07 9C */ lwz r30, 0x79c(r27) +/* 801DB298 001D81F8 3B A0 00 00 */ li r29, 0 +/* 801DB29C 001D81FC 3B E0 00 00 */ li r31, 0 +/* 801DB2A0 001D8200 48 00 00 44 */ b lbl_801DB2E4 +lbl_801DB2A4: +/* 801DB2A4 001D8204 80 BB 07 A4 */ lwz r5, 0x7a4(r27) +/* 801DB2A8 001D8208 7F 83 E3 78 */ mr r3, r28 +/* 801DB2AC 001D820C 38 81 00 08 */ addi r4, r1, 8 +/* 801DB2B0 001D8210 7C 05 FA 2E */ lhzx r0, r5, r31 +/* 801DB2B4 001D8214 B0 01 00 08 */ sth r0, 8(r1) +/* 801DB2B8 001D8218 4B E7 12 BD */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801DB2BC 001D821C 7C 64 1B 78 */ mr r4, r3 +/* 801DB2C0 001D8220 38 61 00 0C */ addi r3, r1, 0xc +/* 801DB2C4 001D8224 4B EC A0 D9 */ bl sub_800a539c +/* 801DB2C8 001D8228 4B EC A0 A9 */ bl "CastTo<22CThardusRockProjectile>__10CPatternedFP7CEntity" +/* 801DB2CC 001D822C 28 03 00 00 */ cmplwi r3, 0 +/* 801DB2D0 001D8230 41 82 00 0C */ beq lbl_801DB2DC +/* 801DB2D4 001D8234 7F 84 E3 78 */ mr r4, r28 +/* 801DB2D8 001D8238 48 02 8A 81 */ bl sub_80203d58 +lbl_801DB2DC: +/* 801DB2DC 001D823C 3B BD 00 01 */ addi r29, r29, 1 +/* 801DB2E0 001D8240 3B FF 00 02 */ addi r31, r31, 2 +lbl_801DB2E4: +/* 801DB2E4 001D8244 7C 1D F0 40 */ cmplw r29, r30 +/* 801DB2E8 001D8248 41 80 FF BC */ blt lbl_801DB2A4 +/* 801DB2EC 001D824C 38 00 00 01 */ li r0, 1 +/* 801DB2F0 001D8250 98 1B 09 4D */ stb r0, 0x94d(r27) +/* 801DB2F4 001D8254 48 00 00 F8 */ b lbl_801DB3EC +lbl_801DB2F8: +/* 801DB2F8 001D8258 80 1B 05 EC */ lwz r0, 0x5ec(r27) +/* 801DB2FC 001D825C 2C 00 00 01 */ cmpwi r0, 1 +/* 801DB300 001D8260 41 82 00 EC */ beq lbl_801DB3EC +/* 801DB304 001D8264 40 80 00 10 */ bge lbl_801DB314 +/* 801DB308 001D8268 2C 00 00 00 */ cmpwi r0, 0 +/* 801DB30C 001D826C 40 80 00 14 */ bge lbl_801DB320 +/* 801DB310 001D8270 48 00 00 DC */ b lbl_801DB3EC +lbl_801DB314: +/* 801DB314 001D8274 2C 00 00 03 */ cmpwi r0, 3 +/* 801DB318 001D8278 40 80 00 D4 */ bge lbl_801DB3EC +/* 801DB31C 001D827C 48 00 00 B8 */ b lbl_801DB3D4 +lbl_801DB320: +/* 801DB320 001D8280 80 FB 04 50 */ lwz r7, 0x450(r27) +/* 801DB324 001D8284 80 07 02 B8 */ lwz r0, 0x2b8(r7) +/* 801DB328 001D8288 2C 00 00 06 */ cmpwi r0, 6 +/* 801DB32C 001D828C 40 82 00 10 */ bne lbl_801DB33C +/* 801DB330 001D8290 38 00 00 02 */ li r0, 2 +/* 801DB334 001D8294 90 1B 05 EC */ stw r0, 0x5ec(r27) +/* 801DB338 001D8298 48 00 00 B4 */ b lbl_801DB3EC +lbl_801DB33C: +/* 801DB33C 001D829C 3C A0 80 3E */ lis r5, lbl_803DAA68@ha +/* 801DB340 001D82A0 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801DB344 001D82A4 C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) +/* 801DB348 001D82A8 38 A5 AA 68 */ addi r5, r5, lbl_803DAA68@l +/* 801DB34C 001D82AC 3C 80 80 3E */ lis r4, lbl_803DAA44@ha +/* 801DB350 001D82B0 90 A1 00 10 */ stw r5, 0x10(r1) +/* 801DB354 001D82B4 38 A4 AA 44 */ addi r5, r4, lbl_803DAA44@l +/* 801DB358 001D82B8 C0 23 00 04 */ lfs f1, 4(r3) +/* 801DB35C 001D82BC C0 03 00 08 */ lfs f0, 8(r3) +/* 801DB360 001D82C0 38 C0 00 04 */ li r6, 4 +/* 801DB364 001D82C4 38 00 00 06 */ li r0, 6 +/* 801DB368 001D82C8 3B E7 00 04 */ addi r31, r7, 4 +/* 801DB36C 001D82CC 90 C1 00 14 */ stw r6, 0x14(r1) +/* 801DB370 001D82D0 38 80 00 04 */ li r4, 4 +/* 801DB374 001D82D4 7F E3 FB 78 */ mr r3, r31 +/* 801DB378 001D82D8 90 A1 00 10 */ stw r5, 0x10(r1) +/* 801DB37C 001D82DC D0 41 00 18 */ stfs f2, 0x18(r1) +/* 801DB380 001D82E0 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 801DB384 001D82E4 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801DB388 001D82E8 90 01 00 24 */ stw r0, 0x24(r1) +/* 801DB38C 001D82EC 4B F5 60 AD */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801DB390 001D82F0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801DB394 001D82F4 3C 60 80 3E */ lis r3, lbl_803DAA44@ha +/* 801DB398 001D82F8 38 83 AA 44 */ addi r4, r3, lbl_803DAA44@l +/* 801DB39C 001D82FC 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801DB3A0 001D8300 90 1F 00 F8 */ stw r0, 0xf8(r31) +/* 801DB3A4 001D8304 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801DB3A8 001D8308 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 801DB3AC 001D830C 80 61 00 1C */ lwz r3, 0x1c(r1) +/* 801DB3B0 001D8310 90 BF 00 FC */ stw r5, 0xfc(r31) +/* 801DB3B4 001D8314 80 A1 00 20 */ lwz r5, 0x20(r1) +/* 801DB3B8 001D8318 90 7F 01 00 */ stw r3, 0x100(r31) +/* 801DB3BC 001D831C 80 61 00 24 */ lwz r3, 0x24(r1) +/* 801DB3C0 001D8320 90 BF 01 04 */ stw r5, 0x104(r31) +/* 801DB3C4 001D8324 90 81 00 10 */ stw r4, 0x10(r1) +/* 801DB3C8 001D8328 90 7F 01 08 */ stw r3, 0x108(r31) +/* 801DB3CC 001D832C 90 01 00 10 */ stw r0, 0x10(r1) +/* 801DB3D0 001D8330 48 00 00 1C */ b lbl_801DB3EC +lbl_801DB3D4: +/* 801DB3D4 001D8334 80 7B 04 50 */ lwz r3, 0x450(r27) +/* 801DB3D8 001D8338 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801DB3DC 001D833C 2C 00 00 06 */ cmpwi r0, 6 +/* 801DB3E0 001D8340 41 82 00 0C */ beq lbl_801DB3EC +/* 801DB3E4 001D8344 38 00 00 03 */ li r0, 3 +/* 801DB3E8 001D8348 90 1B 05 EC */ stw r0, 0x5ec(r27) +lbl_801DB3EC: +/* 801DB3EC 001D834C BB 61 00 2C */ lmw r27, 0x2c(r1) +/* 801DB3F0 001D8350 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801DB3F4 001D8354 7C 08 03 A6 */ mtlr r0 +/* 801DB3F8 001D8358 38 21 00 40 */ addi r1, r1, 0x40 +/* 801DB3FC 001D835C 4E 80 00 20 */ blr + +.global DoubleSnap__8CThardusFR13CStateManager9EStateMsgf +DoubleSnap__8CThardusFR13CStateManager9EStateMsgf: +/* 801DB400 001D8360 4E 80 00 20 */ blr + +.global GetAimPosition__8CThardusCFRC13CStateManagerf +GetAimPosition__8CThardusCFRC13CStateManagerf: +/* 801DB404 001D8364 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 801DB408 001D8368 7C 08 02 A6 */ mflr r0 +/* 801DB40C 001D836C 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 801DB410 001D8370 93 E1 00 9C */ stw r31, 0x9c(r1) +/* 801DB414 001D8374 7C 9F 23 78 */ mr r31, r4 +/* 801DB418 001D8378 93 C1 00 98 */ stw r30, 0x98(r1) +/* 801DB41C 001D837C 7C 7E 1B 78 */ mr r30, r3 +/* 801DB420 001D8380 93 A1 00 94 */ stw r29, 0x94(r1) +/* 801DB424 001D8384 3B A0 00 00 */ li r29, 0 +/* 801DB428 001D8388 93 81 00 90 */ stw r28, 0x90(r1) +/* 801DB42C 001D838C 3B 80 00 00 */ li r28, 0 +/* 801DB430 001D8390 88 04 09 3C */ lbz r0, 0x93c(r4) +/* 801DB434 001D8394 28 00 00 00 */ cmplwi r0, 0 +/* 801DB438 001D8398 41 82 00 2C */ beq lbl_801DB464 +/* 801DB43C 001D839C 3C 80 80 3D */ lis r4, lbl_803D1CB8@ha +/* 801DB440 001D83A0 38 61 00 20 */ addi r3, r1, 0x20 +/* 801DB444 001D83A4 38 84 1C B8 */ addi r4, r4, lbl_803D1CB8@l +/* 801DB448 001D83A8 38 C1 00 0C */ addi r6, r1, 0xc +/* 801DB44C 001D83AC 38 84 01 7C */ addi r4, r4, 0x17c +/* 801DB450 001D83B0 38 A0 FF FF */ li r5, -1 +/* 801DB454 001D83B4 48 16 2D 41 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator" +/* 801DB458 001D83B8 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801DB45C 001D83BC 3B A0 00 01 */ li r29, 1 +/* 801DB460 001D83C0 48 00 00 24 */ b lbl_801DB484 +lbl_801DB464: +/* 801DB464 001D83C4 3C 80 80 3D */ lis r4, lbl_803D1CB8@ha +/* 801DB468 001D83C8 38 61 00 10 */ addi r3, r1, 0x10 +/* 801DB46C 001D83CC 38 84 1C B8 */ addi r4, r4, lbl_803D1CB8@l +/* 801DB470 001D83D0 38 C1 00 08 */ addi r6, r1, 8 +/* 801DB474 001D83D4 38 A0 FF FF */ li r5, -1 +/* 801DB478 001D83D8 48 16 2D 1D */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator" +/* 801DB47C 001D83DC 3B 80 00 01 */ li r28, 1 +/* 801DB480 001D83E0 38 A1 00 10 */ addi r5, r1, 0x10 +lbl_801DB484: +/* 801DB484 001D83E4 7F E4 FB 78 */ mr r4, r31 +/* 801DB488 001D83E8 38 61 00 30 */ addi r3, r1, 0x30 +/* 801DB48C 001D83EC 4B E9 D4 ED */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801DB490 001D83F0 38 61 00 60 */ addi r3, r1, 0x60 +/* 801DB494 001D83F4 38 81 00 30 */ addi r4, r1, 0x30 +/* 801DB498 001D83F8 48 13 76 DD */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801DB49C 001D83FC 7F 80 07 75 */ extsb. r0, r28 +/* 801DB4A0 001D8400 41 82 00 0C */ beq lbl_801DB4AC +/* 801DB4A4 001D8404 38 61 00 10 */ addi r3, r1, 0x10 +/* 801DB4A8 001D8408 48 16 26 39 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801DB4AC: +/* 801DB4AC 001D840C 7F A0 07 75 */ extsb. r0, r29 +/* 801DB4B0 001D8410 41 82 00 0C */ beq lbl_801DB4BC +/* 801DB4B4 001D8414 38 61 00 20 */ addi r3, r1, 0x20 +/* 801DB4B8 001D8418 48 16 26 29 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801DB4BC: +/* 801DB4BC 001D841C C0 41 00 8C */ lfs f2, 0x8c(r1) +/* 801DB4C0 001D8420 C0 21 00 7C */ lfs f1, 0x7c(r1) +/* 801DB4C4 001D8424 C0 01 00 6C */ lfs f0, 0x6c(r1) +/* 801DB4C8 001D8428 D0 1E 00 00 */ stfs f0, 0(r30) +/* 801DB4CC 001D842C D0 3E 00 04 */ stfs f1, 4(r30) +/* 801DB4D0 001D8430 D0 5E 00 08 */ stfs f2, 8(r30) +/* 801DB4D4 001D8434 83 E1 00 9C */ lwz r31, 0x9c(r1) +/* 801DB4D8 001D8438 83 C1 00 98 */ lwz r30, 0x98(r1) +/* 801DB4DC 001D843C 83 A1 00 94 */ lwz r29, 0x94(r1) +/* 801DB4E0 001D8440 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 801DB4E4 001D8444 83 81 00 90 */ lwz r28, 0x90(r1) +/* 801DB4E8 001D8448 7C 08 03 A6 */ mtlr r0 +/* 801DB4EC 001D844C 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 801DB4F0 001D8450 4E 80 00 20 */ blr + +.global GetOrbitPosition__8CThardusCFRC13CStateManager +GetOrbitPosition__8CThardusCFRC13CStateManager: +/* 801DB4F4 001D8454 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801DB4F8 001D8458 7C 08 02 A6 */ mflr r0 +/* 801DB4FC 001D845C C0 22 AC DC */ lfs f1, lbl_805AC9FC@sda21(r2) +/* 801DB500 001D8460 90 01 00 14 */ stw r0, 0x14(r1) +/* 801DB504 001D8464 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801DB508 001D8468 7C 7F 1B 78 */ mr r31, r3 +/* 801DB50C 001D846C 81 84 00 00 */ lwz r12, 0(r4) +/* 801DB510 001D8470 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801DB514 001D8474 7D 89 03 A6 */ mtctr r12 +/* 801DB518 001D8478 4E 80 04 21 */ bctrl +/* 801DB51C 001D847C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801DB520 001D8480 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801DB524 001D8484 7C 08 03 A6 */ mtlr r0 +/* 801DB528 001D8488 38 21 00 10 */ addi r1, r1, 0x10 +/* 801DB52C 001D848C 4E 80 00 20 */ blr + +.global IsDizzy__8CThardusFR13CStateManagerf +IsDizzy__8CThardusFR13CStateManagerf: +/* 801DB530 001D8490 C0 23 03 38 */ lfs f1, 0x338(r3) +/* 801DB534 001D8494 C0 02 AC F4 */ lfs f0, lbl_805ACA14@sda21(r2) +/* 801DB538 001D8498 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801DB53C 001D849C 7C 00 00 26 */ mfcr r0 +/* 801DB540 001D84A0 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f +/* 801DB544 001D84A4 4E 80 00 20 */ blr + +.global ShouldCallForBackup__8CThardusFR13CStateManagerf +ShouldCallForBackup__8CThardusFR13CStateManagerf: +/* 801DB548 001D84A8 C0 23 03 38 */ lfs f1, 0x338(r3) +/* 801DB54C 001D84AC C0 02 AC F8 */ lfs f0, lbl_805ACA18@sda21(r2) +/* 801DB550 001D84B0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801DB554 001D84B4 7C 00 00 26 */ mfcr r0 +/* 801DB558 001D84B8 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f +/* 801DB55C 001D84BC 4E 80 00 20 */ blr + +.global sub_801db560 +sub_801db560: +/* 801DB560 001D84C0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801DB564 001D84C4 7C 08 02 A6 */ mflr r0 +/* 801DB568 001D84C8 2C 04 00 02 */ cmpwi r4, 2 +/* 801DB56C 001D84CC 90 01 00 14 */ stw r0, 0x14(r1) +/* 801DB570 001D84D0 90 83 06 44 */ stw r4, 0x644(r3) +/* 801DB574 001D84D4 41 82 00 14 */ beq lbl_801DB588 +/* 801DB578 001D84D8 40 80 00 2C */ bge lbl_801DB5A4 +/* 801DB57C 001D84DC 2C 04 00 01 */ cmpwi r4, 1 +/* 801DB580 001D84E0 40 80 00 18 */ bge lbl_801DB598 +/* 801DB584 001D84E4 48 00 00 20 */ b lbl_801DB5A4 +lbl_801DB588: +/* 801DB588 001D84E8 38 80 00 0D */ li r4, 0xd +/* 801DB58C 001D84EC 38 C0 FF FF */ li r6, -1 +/* 801DB590 001D84F0 4B E7 5B 31 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 801DB594 001D84F4 48 00 00 10 */ b lbl_801DB5A4 +lbl_801DB598: +/* 801DB598 001D84F8 38 80 00 0C */ li r4, 0xc +/* 801DB59C 001D84FC 38 C0 FF FF */ li r6, -1 +/* 801DB5A0 001D8500 4B E7 5B 21 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +lbl_801DB5A4: +/* 801DB5A4 001D8504 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801DB5A8 001D8508 7C 08 03 A6 */ mtlr r0 +/* 801DB5AC 001D850C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801DB5B0 001D8510 4E 80 00 20 */ blr + +.global sub_801db5b4 +sub_801db5b4: +/* 801DB5B4 001D8514 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801DB5B8 001D8518 7C 08 02 A6 */ mflr r0 +/* 801DB5BC 001D851C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801DB5C0 001D8520 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801DB5C4 001D8524 7C 7F 1B 78 */ mr r31, r3 +/* 801DB5C8 001D8528 80 A4 08 B8 */ lwz r5, 0x8b8(r4) +/* 801DB5CC 001D852C 80 65 00 00 */ lwz r3, 0(r5) +/* 801DB5D0 001D8530 4B EB 5F 89 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager +/* 801DB5D4 001D8534 2C 03 00 03 */ cmpwi r3, 3 +/* 801DB5D8 001D8538 40 82 00 28 */ bne lbl_801DB600 +/* 801DB5DC 001D853C 88 1F 09 3A */ lbz r0, 0x93a(r31) +/* 801DB5E0 001D8540 38 60 00 00 */ li r3, 0 +/* 801DB5E4 001D8544 28 00 00 00 */ cmplwi r0, 0 +/* 801DB5E8 001D8548 41 82 00 10 */ beq lbl_801DB5F8 +/* 801DB5EC 001D854C 80 1F 07 C4 */ lwz r0, 0x7c4(r31) +/* 801DB5F0 001D8550 2C 00 00 00 */ cmpwi r0, 0 +/* 801DB5F4 001D8554 40 82 00 10 */ bne lbl_801DB604 +lbl_801DB5F8: +/* 801DB5F8 001D8558 38 60 00 01 */ li r3, 1 +/* 801DB5FC 001D855C 48 00 00 08 */ b lbl_801DB604 +lbl_801DB600: +/* 801DB600 001D8560 38 60 00 01 */ li r3, 1 +lbl_801DB604: +/* 801DB604 001D8564 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801DB608 001D8568 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801DB60C 001D856C 7C 08 03 A6 */ mtlr r0 +/* 801DB610 001D8570 38 21 00 10 */ addi r1, r1, 0x10 +/* 801DB614 001D8574 4E 80 00 20 */ blr + +.global sub_801db618 +sub_801db618: +/* 801DB618 001D8578 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 801DB61C 001D857C 7C 08 02 A6 */ mflr r0 +/* 801DB620 001D8580 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 801DB624 001D8584 DB E1 00 B0 */ stfd f31, 0xb0(r1) +/* 801DB628 001D8588 F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0 +/* 801DB62C 001D858C DB C1 00 A0 */ stfd f30, 0xa0(r1) +/* 801DB630 001D8590 F3 C1 00 A8 */ psq_st f30, 168(r1), 0, qr0 +/* 801DB634 001D8594 DB A1 00 90 */ stfd f29, 0x90(r1) +/* 801DB638 001D8598 F3 A1 00 98 */ psq_st f29, 152(r1), 0, qr0 +/* 801DB63C 001D859C DB 81 00 80 */ stfd f28, 0x80(r1) +/* 801DB640 001D85A0 F3 81 00 88 */ psq_st f28, 136(r1), 0, qr0 +/* 801DB644 001D85A4 DB 61 00 70 */ stfd f27, 0x70(r1) +/* 801DB648 001D85A8 F3 61 00 78 */ psq_st f27, 120(r1), 0, qr0 +/* 801DB64C 001D85AC DB 41 00 60 */ stfd f26, 0x60(r1) +/* 801DB650 001D85B0 F3 41 00 68 */ psq_st f26, 104(r1), 0, qr0 +/* 801DB654 001D85B4 DB 21 00 50 */ stfd f25, 0x50(r1) +/* 801DB658 001D85B8 F3 21 00 58 */ psq_st f25, 88(r1), 0, qr0 +/* 801DB65C 001D85BC 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801DB660 001D85C0 93 C1 00 48 */ stw r30, 0x48(r1) +/* 801DB664 001D85C4 FF E0 08 90 */ fmr f31, f1 +/* 801DB668 001D85C8 C0 02 AC DC */ lfs f0, lbl_805AC9FC@sda21(r2) +/* 801DB66C 001D85CC 7C 9E 23 78 */ mr r30, r4 +/* 801DB670 001D85D0 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 801DB674 001D85D4 40 81 01 70 */ ble lbl_801DB7E4 +/* 801DB678 001D85D8 83 FE 08 4C */ lwz r31, 0x84c(r30) +/* 801DB67C 001D85DC C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801DB680 001D85E0 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 801DB684 001D85E4 C0 63 00 60 */ lfs f3, 0x60(r3) +/* 801DB688 001D85E8 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 801DB68C 001D85EC EC 81 00 28 */ fsubs f4, f1, f0 +/* 801DB690 001D85F0 C0 23 00 40 */ lfs f1, 0x40(r3) +/* 801DB694 001D85F4 38 61 00 34 */ addi r3, r1, 0x34 +/* 801DB698 001D85F8 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801DB69C 001D85FC EC 43 10 28 */ fsubs f2, f3, f2 +/* 801DB6A0 001D8600 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801DB6A4 001D8604 D0 81 00 38 */ stfs f4, 0x38(r1) +/* 801DB6A8 001D8608 D0 41 00 3C */ stfs f2, 0x3c(r1) +/* 801DB6AC 001D860C D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801DB6B0 001D8610 48 13 92 09 */ bl Magnitude__9CVector3fCFv +/* 801DB6B4 001D8614 80 1F 02 B0 */ lwz r0, 0x2b0(r31) +/* 801DB6B8 001D8618 2C 00 00 02 */ cmpwi r0, 2 +/* 801DB6BC 001D861C 40 82 00 0C */ bne lbl_801DB6C8 +/* 801DB6C0 001D8620 80 1F 02 AC */ lwz r0, 0x2ac(r31) +/* 801DB6C4 001D8624 48 00 00 08 */ b lbl_801DB6CC +lbl_801DB6C8: +/* 801DB6C8 001D8628 38 00 00 04 */ li r0, 4 +lbl_801DB6CC: +/* 801DB6CC 001D862C 2C 00 00 01 */ cmpwi r0, 1 +/* 801DB6D0 001D8630 41 82 01 14 */ beq lbl_801DB7E4 +/* 801DB6D4 001D8634 88 1F 09 C4 */ lbz r0, 0x9c4(r31) +/* 801DB6D8 001D8638 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 801DB6DC 001D863C 40 82 01 08 */ bne lbl_801DB7E4 +/* 801DB6E0 001D8640 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 801DB6E4 001D8644 C0 02 AD 00 */ lfs f0, lbl_805ACA20@sda21(r2) +/* 801DB6E8 001D8648 38 83 66 F4 */ addi r4, r3, lbl_805A66F4@l +/* 801DB6EC 001D864C C0 62 AC FC */ lfs f3, lbl_805ACA1C@sda21(r2) +/* 801DB6F0 001D8650 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801DB6F4 001D8654 C0 44 00 00 */ lfs f2, 0(r4) +/* 801DB6F8 001D8658 C0 24 00 04 */ lfs f1, 4(r4) +/* 801DB6FC 001D865C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801DB700 001D8660 C0 04 00 08 */ lfs f0, 8(r4) +/* 801DB704 001D8664 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 801DB708 001D8668 C7 63 66 A0 */ lfsu f27, skZero3f@l(r3) +/* 801DB70C 001D866C EC 23 00 72 */ fmuls f1, f3, f1 +/* 801DB710 001D8670 EC 03 00 32 */ fmuls f0, f3, f0 +/* 801DB714 001D8674 EF 9F 00 B2 */ fmuls f28, f31, f2 +/* 801DB718 001D8678 C3 43 00 04 */ lfs f26, 4(r3) +/* 801DB71C 001D867C EF BF 00 72 */ fmuls f29, f31, f1 +/* 801DB720 001D8680 C3 23 00 08 */ lfs f25, 8(r3) +/* 801DB724 001D8684 EF DF 00 32 */ fmuls f30, f31, f0 +/* 801DB728 001D8688 40 81 00 70 */ ble lbl_801DB798 +/* 801DB72C 001D868C C0 21 00 34 */ lfs f1, 0x34(r1) +/* 801DB730 001D8690 38 61 00 08 */ addi r3, r1, 8 +/* 801DB734 001D8694 C0 41 00 38 */ lfs f2, 0x38(r1) +/* 801DB738 001D8698 48 13 8A C9 */ bl __ct__9CVector2fFff +/* 801DB73C 001D869C C0 41 00 08 */ lfs f2, 8(r1) +/* 801DB740 001D86A0 38 61 00 28 */ addi r3, r1, 0x28 +/* 801DB744 001D86A4 C0 21 00 0C */ lfs f1, 0xc(r1) +/* 801DB748 001D86A8 C0 02 AC DC */ lfs f0, lbl_805AC9FC@sda21(r2) +/* 801DB74C 001D86AC D0 41 00 28 */ stfs f2, 0x28(r1) +/* 801DB750 001D86B0 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 801DB754 001D86B4 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801DB758 001D86B8 48 13 8F A1 */ bl CanBeNormalized__9CVector3fCFv +/* 801DB75C 001D86BC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801DB760 001D86C0 41 82 00 38 */ beq lbl_801DB798 +/* 801DB764 001D86C4 38 61 00 1C */ addi r3, r1, 0x1c +/* 801DB768 001D86C8 38 81 00 28 */ addi r4, r1, 0x28 +/* 801DB76C 001D86CC 48 13 90 E5 */ bl AsNormalized__9CVector3fCFv +/* 801DB770 001D86D0 C0 62 AD 04 */ lfs f3, lbl_805ACA24@sda21(r2) +/* 801DB774 001D86D4 C0 41 00 1C */ lfs f2, 0x1c(r1) +/* 801DB778 001D86D8 C0 21 00 20 */ lfs f1, 0x20(r1) +/* 801DB77C 001D86DC C0 01 00 24 */ lfs f0, 0x24(r1) +/* 801DB780 001D86E0 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 801DB784 001D86E4 EC 23 00 72 */ fmuls f1, f3, f1 +/* 801DB788 001D86E8 EC 03 00 32 */ fmuls f0, f3, f0 +/* 801DB78C 001D86EC EF 7F 00 B2 */ fmuls f27, f31, f2 +/* 801DB790 001D86F0 EF 5F 00 72 */ fmuls f26, f31, f1 +/* 801DB794 001D86F4 EF 3F 00 32 */ fmuls f25, f31, f0 +lbl_801DB798: +/* 801DB798 001D86F8 EC 5C D8 2A */ fadds f2, f28, f27 +/* 801DB79C 001D86FC C0 7F 00 E8 */ lfs f3, 0xe8(r31) +/* 801DB7A0 001D8700 EC 3D D0 2A */ fadds f1, f29, f26 +/* 801DB7A4 001D8704 EC 1E C8 2A */ fadds f0, f30, f25 +/* 801DB7A8 001D8708 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 801DB7AC 001D870C EC 23 00 72 */ fmuls f1, f3, f1 +/* 801DB7B0 001D8710 EC 03 00 32 */ fmuls f0, f3, f0 +/* 801DB7B4 001D8714 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 801DB7B8 001D8718 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 801DB7BC 001D871C D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801DB7C0 001D8720 4B E3 FD 75 */ bl Identity__10CAxisAngleFv +/* 801DB7C4 001D8724 7C 65 1B 78 */ mr r5, r3 +/* 801DB7C8 001D8728 7F E3 FB 78 */ mr r3, r31 +/* 801DB7CC 001D872C 38 81 00 10 */ addi r4, r1, 0x10 +/* 801DB7D0 001D8730 4B F4 0B C9 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +/* 801DB7D4 001D8734 7F E3 FB 78 */ mr r3, r31 +/* 801DB7D8 001D8738 7F C5 F3 78 */ mr r5, r30 +/* 801DB7DC 001D873C 38 80 00 02 */ li r4, 2 +/* 801DB7E0 001D8740 48 0A AC 0D */ bl SetMoveState__7CPlayerFQ27NPlayer20EPlayerMovementStateR13CStateManager +lbl_801DB7E4: +/* 801DB7E4 001D8744 E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0 +/* 801DB7E8 001D8748 CB E1 00 B0 */ lfd f31, 0xb0(r1) +/* 801DB7EC 001D874C E3 C1 00 A8 */ psq_l f30, 168(r1), 0, qr0 +/* 801DB7F0 001D8750 CB C1 00 A0 */ lfd f30, 0xa0(r1) +/* 801DB7F4 001D8754 E3 A1 00 98 */ psq_l f29, 152(r1), 0, qr0 +/* 801DB7F8 001D8758 CB A1 00 90 */ lfd f29, 0x90(r1) +/* 801DB7FC 001D875C E3 81 00 88 */ psq_l f28, 136(r1), 0, qr0 +/* 801DB800 001D8760 CB 81 00 80 */ lfd f28, 0x80(r1) +/* 801DB804 001D8764 E3 61 00 78 */ psq_l f27, 120(r1), 0, qr0 +/* 801DB808 001D8768 CB 61 00 70 */ lfd f27, 0x70(r1) +/* 801DB80C 001D876C E3 41 00 68 */ psq_l f26, 104(r1), 0, qr0 +/* 801DB810 001D8770 CB 41 00 60 */ lfd f26, 0x60(r1) +/* 801DB814 001D8774 E3 21 00 58 */ psq_l f25, 88(r1), 0, qr0 +/* 801DB818 001D8778 CB 21 00 50 */ lfd f25, 0x50(r1) +/* 801DB81C 001D877C 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801DB820 001D8780 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 801DB824 001D8784 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 801DB828 001D8788 7C 08 03 A6 */ mtlr r0 +/* 801DB82C 001D878C 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 801DB830 001D8790 4E 80 00 20 */ blr + +.global StartAttack__8CThardusFR13CStateManagerf +StartAttack__8CThardusFR13CStateManagerf: +/* 801DB834 001D8794 38 60 00 01 */ li r3, 1 +/* 801DB838 001D8798 4E 80 00 20 */ blr + +.global Suck__8CThardusFR13CStateManager9EStateMsgf +Suck__8CThardusFR13CStateManager9EStateMsgf: +/* 801DB83C 001D879C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801DB840 001D87A0 7C 08 02 A6 */ mflr r0 +/* 801DB844 001D87A4 2C 05 00 01 */ cmpwi r5, 1 +/* 801DB848 001D87A8 90 01 00 14 */ stw r0, 0x14(r1) +/* 801DB84C 001D87AC 41 82 00 48 */ beq lbl_801DB894 +/* 801DB850 001D87B0 40 80 00 10 */ bge lbl_801DB860 +/* 801DB854 001D87B4 2C 05 00 00 */ cmpwi r5, 0 +/* 801DB858 001D87B8 40 80 00 14 */ bge lbl_801DB86C +/* 801DB85C 001D87BC 48 00 00 38 */ b lbl_801DB894 +lbl_801DB860: +/* 801DB860 001D87C0 2C 05 00 03 */ cmpwi r5, 3 +/* 801DB864 001D87C4 40 80 00 30 */ bge lbl_801DB894 +/* 801DB868 001D87C8 48 00 00 24 */ b lbl_801DB88C +lbl_801DB86C: +/* 801DB86C 001D87CC 38 00 00 01 */ li r0, 1 +/* 801DB870 001D87D0 7C 85 23 78 */ mr r5, r4 +/* 801DB874 001D87D4 98 03 09 09 */ stb r0, 0x909(r3) +/* 801DB878 001D87D8 38 80 00 07 */ li r4, 7 +/* 801DB87C 001D87DC 38 C0 FF FF */ li r6, -1 +/* 801DB880 001D87E0 98 03 09 3D */ stb r0, 0x93d(r3) +/* 801DB884 001D87E4 4B E7 58 3D */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 801DB888 001D87E8 48 00 00 0C */ b lbl_801DB894 +lbl_801DB88C: +/* 801DB88C 001D87EC 38 00 00 01 */ li r0, 1 +/* 801DB890 001D87F0 98 03 06 89 */ stb r0, 0x689(r3) +lbl_801DB894: +/* 801DB894 001D87F4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801DB898 001D87F8 7C 08 03 A6 */ mtlr r0 +/* 801DB89C 001D87FC 38 21 00 10 */ addi r1, r1, 0x10 +/* 801DB8A0 001D8800 4E 80 00 20 */ blr + +.global Explode__8CThardusFR13CStateManager9EStateMsgf +Explode__8CThardusFR13CStateManager9EStateMsgf: +/* 801DB8A4 001D8804 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801DB8A8 001D8808 7C 08 02 A6 */ mflr r0 +/* 801DB8AC 001D880C 2C 05 00 01 */ cmpwi r5, 1 +/* 801DB8B0 001D8810 90 01 00 34 */ stw r0, 0x34(r1) +/* 801DB8B4 001D8814 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801DB8B8 001D8818 7C 9F 23 78 */ mr r31, r4 +/* 801DB8BC 001D881C 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801DB8C0 001D8820 7C 7E 1B 78 */ mr r30, r3 +/* 801DB8C4 001D8824 41 82 00 60 */ beq lbl_801DB924 +/* 801DB8C8 001D8828 40 80 00 10 */ bge lbl_801DB8D8 +/* 801DB8CC 001D882C 2C 05 00 00 */ cmpwi r5, 0 +/* 801DB8D0 001D8830 40 80 00 14 */ bge lbl_801DB8E4 +/* 801DB8D4 001D8834 48 00 01 34 */ b lbl_801DBA08 +lbl_801DB8D8: +/* 801DB8D8 001D8838 2C 05 00 03 */ cmpwi r5, 3 +/* 801DB8DC 001D883C 40 80 01 2C */ bge lbl_801DBA08 +/* 801DB8E0 001D8840 48 00 01 14 */ b lbl_801DB9F4 +lbl_801DB8E4: +/* 801DB8E4 001D8844 38 00 00 00 */ li r0, 0 +/* 801DB8E8 001D8848 38 61 00 08 */ addi r3, r1, 8 +/* 801DB8EC 001D884C 90 1E 05 EC */ stw r0, 0x5ec(r30) +/* 801DB8F0 001D8850 80 1E 09 04 */ lwz r0, 0x904(r30) +/* 801DB8F4 001D8854 90 01 00 08 */ stw r0, 8(r1) +/* 801DB8F8 001D8858 48 10 E4 51 */ bl SfxStop__11CSfxManagerFRC10CSfxHandle +/* 801DB8FC 001D885C 38 00 00 01 */ li r0, 1 +/* 801DB900 001D8860 7F C3 F3 78 */ mr r3, r30 +/* 801DB904 001D8864 98 1E 09 09 */ stb r0, 0x909(r30) +/* 801DB908 001D8868 7F E5 FB 78 */ mr r5, r31 +/* 801DB90C 001D886C 38 80 00 01 */ li r4, 1 +/* 801DB910 001D8870 38 C0 FF FF */ li r6, -1 +/* 801DB914 001D8874 98 1E 09 3D */ stb r0, 0x93d(r30) +/* 801DB918 001D8878 98 1E 09 09 */ stb r0, 0x909(r30) +/* 801DB91C 001D887C 4B E7 57 A5 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 801DB920 001D8880 48 00 00 E8 */ b lbl_801DBA08 +lbl_801DB924: +/* 801DB924 001D8884 80 1E 05 EC */ lwz r0, 0x5ec(r30) +/* 801DB928 001D8888 2C 00 00 01 */ cmpwi r0, 1 +/* 801DB92C 001D888C 41 82 00 DC */ beq lbl_801DBA08 +/* 801DB930 001D8890 40 80 00 10 */ bge lbl_801DB940 +/* 801DB934 001D8894 2C 00 00 00 */ cmpwi r0, 0 +/* 801DB938 001D8898 40 80 00 14 */ bge lbl_801DB94C +/* 801DB93C 001D889C 48 00 00 CC */ b lbl_801DBA08 +lbl_801DB940: +/* 801DB940 001D88A0 2C 00 00 03 */ cmpwi r0, 3 +/* 801DB944 001D88A4 40 80 00 C4 */ bge lbl_801DBA08 +/* 801DB948 001D88A8 48 00 00 90 */ b lbl_801DB9D8 +lbl_801DB94C: +/* 801DB94C 001D88AC 80 9E 04 50 */ lwz r4, 0x450(r30) +/* 801DB950 001D88B0 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 801DB954 001D88B4 2C 00 00 03 */ cmpwi r0, 3 +/* 801DB958 001D88B8 40 82 00 10 */ bne lbl_801DB968 +/* 801DB95C 001D88BC 38 00 00 02 */ li r0, 2 +/* 801DB960 001D88C0 90 1E 05 EC */ stw r0, 0x5ec(r30) +/* 801DB964 001D88C4 48 00 00 A4 */ b lbl_801DBA08 +lbl_801DB968: +/* 801DB968 001D88C8 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801DB96C 001D88CC 38 C0 00 01 */ li r6, 1 +/* 801DB970 001D88D0 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801DB974 001D88D4 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha +/* 801DB978 001D88D8 90 01 00 0C */ stw r0, 0xc(r1) +/* 801DB97C 001D88DC 38 A3 A9 E4 */ addi r5, r3, lbl_803DA9E4@l +/* 801DB980 001D88E0 38 00 00 00 */ li r0, 0 +/* 801DB984 001D88E4 3B E4 00 04 */ addi r31, r4, 4 +/* 801DB988 001D88E8 90 C1 00 10 */ stw r6, 0x10(r1) +/* 801DB98C 001D88EC 7F E3 FB 78 */ mr r3, r31 +/* 801DB990 001D88F0 38 80 00 01 */ li r4, 1 +/* 801DB994 001D88F4 90 A1 00 0C */ stw r5, 0xc(r1) +/* 801DB998 001D88F8 90 01 00 14 */ stw r0, 0x14(r1) +/* 801DB99C 001D88FC 90 C1 00 18 */ stw r6, 0x18(r1) +/* 801DB9A0 001D8900 4B F5 5A 99 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801DB9A4 001D8904 80 01 00 10 */ lwz r0, 0x10(r1) +/* 801DB9A8 001D8908 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha +/* 801DB9AC 001D890C 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l +/* 801DB9B0 001D8910 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801DB9B4 001D8914 90 1F 00 C8 */ stw r0, 0xc8(r31) +/* 801DB9B8 001D8918 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801DB9BC 001D891C 80 A1 00 14 */ lwz r5, 0x14(r1) +/* 801DB9C0 001D8920 90 81 00 0C */ stw r4, 0xc(r1) +/* 801DB9C4 001D8924 80 61 00 18 */ lwz r3, 0x18(r1) +/* 801DB9C8 001D8928 90 BF 00 CC */ stw r5, 0xcc(r31) +/* 801DB9CC 001D892C 90 7F 00 D0 */ stw r3, 0xd0(r31) +/* 801DB9D0 001D8930 90 01 00 0C */ stw r0, 0xc(r1) +/* 801DB9D4 001D8934 48 00 00 34 */ b lbl_801DBA08 +lbl_801DB9D8: +/* 801DB9D8 001D8938 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801DB9DC 001D893C 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801DB9E0 001D8940 2C 00 00 03 */ cmpwi r0, 3 +/* 801DB9E4 001D8944 41 82 00 24 */ beq lbl_801DBA08 +/* 801DB9E8 001D8948 38 00 00 03 */ li r0, 3 +/* 801DB9EC 001D894C 90 1E 05 EC */ stw r0, 0x5ec(r30) +/* 801DB9F0 001D8950 48 00 00 18 */ b lbl_801DBA08 +lbl_801DB9F4: +/* 801DB9F4 001D8954 38 60 00 01 */ li r3, 1 +/* 801DB9F8 001D8958 38 00 00 00 */ li r0, 0 +/* 801DB9FC 001D895C 98 7E 08 F0 */ stb r3, 0x8f0(r30) +/* 801DBA00 001D8960 98 1E 09 09 */ stb r0, 0x909(r30) +/* 801DBA04 001D8964 98 1E 09 3D */ stb r0, 0x93d(r30) +lbl_801DBA08: +/* 801DBA08 001D8968 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801DBA0C 001D896C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801DBA10 001D8970 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801DBA14 001D8974 7C 08 03 A6 */ mtlr r0 +/* 801DBA18 001D8978 38 21 00 30 */ addi r1, r1, 0x30 +/* 801DBA1C 001D897C 4E 80 00 20 */ blr + +.global sub_801dba20 +sub_801dba20: +/* 801DBA20 001D8980 94 21 FE A0 */ stwu r1, -0x160(r1) +/* 801DBA24 001D8984 7C 08 02 A6 */ mflr r0 +/* 801DBA28 001D8988 90 01 01 64 */ stw r0, 0x164(r1) +/* 801DBA2C 001D898C DB E1 01 50 */ stfd f31, 0x150(r1) +/* 801DBA30 001D8990 F3 E1 01 58 */ psq_st f31, 344(r1), 0, qr0 +/* 801DBA34 001D8994 DB C1 01 40 */ stfd f30, 0x140(r1) +/* 801DBA38 001D8998 F3 C1 01 48 */ psq_st f30, 328(r1), 0, qr0 +/* 801DBA3C 001D899C DB A1 01 30 */ stfd f29, 0x130(r1) +/* 801DBA40 001D89A0 F3 A1 01 38 */ psq_st f29, 312(r1), 0, qr0 +/* 801DBA44 001D89A4 DB 81 01 20 */ stfd f28, 0x120(r1) +/* 801DBA48 001D89A8 F3 81 01 28 */ psq_st f28, 296(r1), 0, qr0 +/* 801DBA4C 001D89AC 93 E1 01 1C */ stw r31, 0x11c(r1) +/* 801DBA50 001D89B0 93 C1 01 18 */ stw r30, 0x118(r1) +/* 801DBA54 001D89B4 93 A1 01 14 */ stw r29, 0x114(r1) +/* 801DBA58 001D89B8 7C 9F 23 78 */ mr r31, r4 +/* 801DBA5C 001D89BC 7C 7E 1B 78 */ mr r30, r3 +/* 801DBA60 001D89C0 80 64 08 4C */ lwz r3, 0x84c(r4) +/* 801DBA64 001D89C4 FF 80 08 90 */ fmr f28, f1 +/* 801DBA68 001D89C8 C0 25 00 04 */ lfs f1, 4(r5) +/* 801DBA6C 001D89CC FF A0 10 90 */ fmr f29, f2 +/* 801DBA70 001D89D0 C0 03 00 50 */ lfs f0, 0x50(r3) +/* 801DBA74 001D89D4 FF C0 18 90 */ fmr f30, f3 +/* 801DBA78 001D89D8 C0 65 00 08 */ lfs f3, 8(r5) +/* 801DBA7C 001D89DC C0 43 00 60 */ lfs f2, 0x60(r3) +/* 801DBA80 001D89E0 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801DBA84 001D89E4 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801DBA88 001D89E8 38 61 00 28 */ addi r3, r1, 0x28 +/* 801DBA8C 001D89EC C0 25 00 00 */ lfs f1, 0(r5) +/* 801DBA90 001D89F0 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801DBA94 001D89F4 D0 81 00 2C */ stfs f4, 0x2c(r1) +/* 801DBA98 001D89F8 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801DBA9C 001D89FC D0 41 00 30 */ stfs f2, 0x30(r1) +/* 801DBAA0 001D8A00 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 801DBAA4 001D8A04 48 13 8E 15 */ bl Magnitude__9CVector3fCFv +/* 801DBAA8 001D8A08 EC 5C E8 24 */ fdivs f2, f28, f29 +/* 801DBAAC 001D8A0C C0 0D 92 24 */ lfs f0, lbl_805A7DE4@sda21(r13) +/* 801DBAB0 001D8A10 EC 21 E0 BC */ fnmsubs f1, f1, f2, f28 +/* 801DBAB4 001D8A14 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801DBAB8 001D8A18 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 801DBABC 001D8A1C 40 80 00 0C */ bge lbl_801DBAC8 +/* 801DBAC0 001D8A20 38 A1 00 0C */ addi r5, r1, 0xc +/* 801DBAC4 001D8A24 48 00 00 08 */ b lbl_801DBACC +lbl_801DBAC8: +/* 801DBAC8 001D8A28 38 AD 92 24 */ addi r5, r13, lbl_805A7DE4@sda21 +lbl_801DBACC: +/* 801DBACC 001D8A2C 80 9F 08 70 */ lwz r4, 0x870(r31) +/* 801DBAD0 001D8A30 38 61 00 08 */ addi r3, r1, 8 +/* 801DBAD4 001D8A34 C3 E5 00 00 */ lfs f31, 0(r5) +/* 801DBAD8 001D8A38 80 A4 00 7C */ lwz r5, 0x7c(r4) +/* 801DBADC 001D8A3C A3 A5 00 08 */ lhz r29, 8(r5) +/* 801DBAE0 001D8A40 4B E3 00 F9 */ bl GetCurrentCameraId__14CCameraManagerCFv +/* 801DBAE4 001D8A44 A0 01 00 08 */ lhz r0, 8(r1) +/* 801DBAE8 001D8A48 7C 00 E8 40 */ cmplw r0, r29 +/* 801DBAEC 001D8A4C 40 82 00 98 */ bne lbl_801DBB84 +/* 801DBAF0 001D8A50 C0 BE 00 40 */ lfs f5, 0x40(r30) +/* 801DBAF4 001D8A54 FC 20 F0 90 */ fmr f1, f30 +/* 801DBAF8 001D8A58 C0 9E 00 50 */ lfs f4, 0x50(r30) +/* 801DBAFC 001D8A5C FC 40 E0 90 */ fmr f2, f28 +/* 801DBB00 001D8A60 C0 1E 00 60 */ lfs f0, 0x60(r30) +/* 801DBB04 001D8A64 FC 60 E8 90 */ fmr f3, f29 +/* 801DBB08 001D8A68 D0 A1 00 10 */ stfs f5, 0x10(r1) +/* 801DBB0C 001D8A6C 38 61 00 34 */ addi r3, r1, 0x34 +/* 801DBB10 001D8A70 38 81 00 1C */ addi r4, r1, 0x1c +/* 801DBB14 001D8A74 D0 81 00 14 */ stfs f4, 0x14(r1) +/* 801DBB18 001D8A78 80 C1 00 10 */ lwz r6, 0x10(r1) +/* 801DBB1C 001D8A7C D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801DBB20 001D8A80 80 A1 00 14 */ lwz r5, 0x14(r1) +/* 801DBB24 001D8A84 80 01 00 18 */ lwz r0, 0x18(r1) +/* 801DBB28 001D8A88 90 C1 00 1C */ stw r6, 0x1c(r1) +/* 801DBB2C 001D8A8C 90 A1 00 20 */ stw r5, 0x20(r1) +/* 801DBB30 001D8A90 90 01 00 24 */ stw r0, 0x24(r1) +/* 801DBB34 001D8A94 4B F8 19 91 */ bl BuildMissileShakeData__16CCameraShakeDataFfffRC9CVector3f +/* 801DBB38 001D8A98 80 7F 08 70 */ lwz r3, 0x870(r31) +/* 801DBB3C 001D8A9C 38 81 00 34 */ addi r4, r1, 0x34 +/* 801DBB40 001D8AA0 38 A0 00 01 */ li r5, 1 +/* 801DBB44 001D8AA4 4B E2 EE DD */ bl AddCameraShaker__14CCameraManagerFRC16CCameraShakeDatab +/* 801DBB48 001D8AA8 34 81 00 B4 */ addic. r4, r1, 0xb4 +/* 801DBB4C 001D8AAC 41 82 00 10 */ beq lbl_801DBB5C +/* 801DBB50 001D8AB0 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 801DBB54 001D8AB4 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 801DBB58 001D8AB8 90 04 00 00 */ stw r0, 0(r4) +lbl_801DBB5C: +/* 801DBB5C 001D8ABC 34 81 00 78 */ addic. r4, r1, 0x78 +/* 801DBB60 001D8AC0 41 82 00 10 */ beq lbl_801DBB70 +/* 801DBB64 001D8AC4 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 801DBB68 001D8AC8 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 801DBB6C 001D8ACC 90 04 00 00 */ stw r0, 0(r4) +lbl_801DBB70: +/* 801DBB70 001D8AD0 34 81 00 3C */ addic. r4, r1, 0x3c +/* 801DBB74 001D8AD4 41 82 00 10 */ beq lbl_801DBB84 +/* 801DBB78 001D8AD8 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 801DBB7C 001D8ADC 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 801DBB80 001D8AE0 90 04 00 00 */ stw r0, 0(r4) +lbl_801DBB84: +/* 801DBB84 001D8AE4 88 1E 09 08 */ lbz r0, 0x908(r30) +/* 801DBB88 001D8AE8 28 00 00 00 */ cmplwi r0, 0 +/* 801DBB8C 001D8AEC 41 82 00 14 */ beq lbl_801DBBA0 +/* 801DBB90 001D8AF0 FC 20 F8 90 */ fmr f1, f31 +/* 801DBB94 001D8AF4 7F C3 F3 78 */ mr r3, r30 +/* 801DBB98 001D8AF8 7F E4 FB 78 */ mr r4, r31 +/* 801DBB9C 001D8AFC 4B FF FA 7D */ bl sub_801db618 +lbl_801DBBA0: +/* 801DBBA0 001D8B00 E3 E1 01 58 */ psq_l f31, 344(r1), 0, qr0 +/* 801DBBA4 001D8B04 CB E1 01 50 */ lfd f31, 0x150(r1) +/* 801DBBA8 001D8B08 E3 C1 01 48 */ psq_l f30, 328(r1), 0, qr0 +/* 801DBBAC 001D8B0C CB C1 01 40 */ lfd f30, 0x140(r1) +/* 801DBBB0 001D8B10 E3 A1 01 38 */ psq_l f29, 312(r1), 0, qr0 +/* 801DBBB4 001D8B14 CB A1 01 30 */ lfd f29, 0x130(r1) +/* 801DBBB8 001D8B18 E3 81 01 28 */ psq_l f28, 296(r1), 0, qr0 +/* 801DBBBC 001D8B1C CB 81 01 20 */ lfd f28, 0x120(r1) +/* 801DBBC0 001D8B20 83 E1 01 1C */ lwz r31, 0x11c(r1) +/* 801DBBC4 001D8B24 83 C1 01 18 */ lwz r30, 0x118(r1) +/* 801DBBC8 001D8B28 80 01 01 64 */ lwz r0, 0x164(r1) +/* 801DBBCC 001D8B2C 83 A1 01 14 */ lwz r29, 0x114(r1) +/* 801DBBD0 001D8B30 7C 08 03 A6 */ mtlr r0 +/* 801DBBD4 001D8B34 38 21 01 60 */ addi r1, r1, 0x160 +/* 801DBBD8 001D8B38 4E 80 00 20 */ blr + +.global sub_801dbbdc +sub_801dbbdc: +/* 801DBBDC 001D8B3C 80 84 08 B8 */ lwz r4, 0x8b8(r4) +/* 801DBBE0 001D8B40 80 84 00 00 */ lwz r4, 0(r4) +/* 801DBBE4 001D8B44 80 04 00 14 */ lwz r0, 0x14(r4) +/* 801DBBE8 001D8B48 2C 00 00 03 */ cmpwi r0, 3 +/* 801DBBEC 001D8B4C 40 82 00 0C */ bne lbl_801DBBF8 +/* 801DBBF0 001D8B50 38 00 00 01 */ li r0, 1 +/* 801DBBF4 001D8B54 98 03 06 88 */ stb r0, 0x688(r3) +lbl_801DBBF8: +/* 801DBBF8 001D8B58 80 03 07 C4 */ lwz r0, 0x7c4(r3) +/* 801DBBFC 001D8B5C 2C 00 00 00 */ cmpwi r0, 0 +/* 801DBC00 001D8B60 41 82 00 0C */ beq lbl_801DBC0C +/* 801DBC04 001D8B64 2C 00 00 02 */ cmpwi r0, 2 +/* 801DBC08 001D8B68 40 82 00 14 */ bne lbl_801DBC1C +lbl_801DBC0C: +/* 801DBC0C 001D8B6C 38 00 00 01 */ li r0, 1 +/* 801DBC10 001D8B70 C0 02 AC DC */ lfs f0, lbl_805AC9FC@sda21(r2) +/* 801DBC14 001D8B74 90 03 07 C4 */ stw r0, 0x7c4(r3) +/* 801DBC18 001D8B78 D0 03 07 B8 */ stfs f0, 0x7b8(r3) +lbl_801DBC1C: +/* 801DBC1C 001D8B7C A0 05 00 08 */ lhz r0, 8(r5) +/* 801DBC20 001D8B80 B0 03 09 28 */ sth r0, 0x928(r3) +/* 801DBC24 001D8B84 C0 45 00 60 */ lfs f2, 0x60(r5) +/* 801DBC28 001D8B88 C0 25 00 50 */ lfs f1, 0x50(r5) +/* 801DBC2C 001D8B8C C0 05 00 40 */ lfs f0, 0x40(r5) +/* 801DBC30 001D8B90 D0 03 09 2C */ stfs f0, 0x92c(r3) +/* 801DBC34 001D8B94 D0 23 09 30 */ stfs f1, 0x930(r3) +/* 801DBC38 001D8B98 D0 43 09 34 */ stfs f2, 0x934(r3) +/* 801DBC3C 001D8B9C 4E 80 00 20 */ blr + +.global sub_801dbc40 +sub_801dbc40: +/* 801DBC40 001D8BA0 C0 22 AD 08 */ lfs f1, lbl_805ACA28@sda21(r2) +/* 801DBC44 001D8BA4 38 00 00 00 */ li r0, 0 +/* 801DBC48 001D8BA8 C0 03 07 BC */ lfs f0, 0x7bc(r3) +/* 801DBC4C 001D8BAC EC 01 00 2A */ fadds f0, f1, f0 +/* 801DBC50 001D8BB0 D0 03 07 B8 */ stfs f0, 0x7b8(r3) +/* 801DBC54 001D8BB4 98 03 09 38 */ stb r0, 0x938(r3) +/* 801DBC58 001D8BB8 4E 80 00 20 */ blr + +.global sub_801dbc5c +sub_801dbc5c: +/* 801DBC5C 001D8BBC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801DBC60 001D8BC0 7C 08 02 A6 */ mflr r0 +/* 801DBC64 001D8BC4 90 01 00 14 */ stw r0, 0x14(r1) +/* 801DBC68 001D8BC8 88 03 09 38 */ lbz r0, 0x938(r3) +/* 801DBC6C 001D8BCC 28 00 00 00 */ cmplwi r0, 0 +/* 801DBC70 001D8BD0 40 82 00 18 */ bne lbl_801DBC88 +/* 801DBC74 001D8BD4 38 C0 00 01 */ li r6, 1 +/* 801DBC78 001D8BD8 38 00 00 00 */ li r0, 0 +/* 801DBC7C 001D8BDC 98 C3 09 38 */ stb r6, 0x938(r3) +/* 801DBC80 001D8BE0 98 03 09 39 */ stb r0, 0x939(r3) +/* 801DBC84 001D8BE4 4B FF FF 59 */ bl sub_801dbbdc +lbl_801DBC88: +/* 801DBC88 001D8BE8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801DBC8C 001D8BEC 7C 08 03 A6 */ mtlr r0 +/* 801DBC90 001D8BF0 38 21 00 10 */ addi r1, r1, 0x10 +/* 801DBC94 001D8BF4 4E 80 00 20 */ blr + +.global sub_801dbc98 +sub_801dbc98: +/* 801DBC98 001D8BF8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801DBC9C 001D8BFC 7C 08 02 A6 */ mflr r0 +/* 801DBCA0 001D8C00 90 01 00 14 */ stw r0, 0x14(r1) +/* 801DBCA4 001D8C04 88 03 09 38 */ lbz r0, 0x938(r3) +/* 801DBCA8 001D8C08 28 00 00 00 */ cmplwi r0, 0 +/* 801DBCAC 001D8C0C 40 82 00 14 */ bne lbl_801DBCC0 +/* 801DBCB0 001D8C10 D0 23 07 BC */ stfs f1, 0x7bc(r3) +/* 801DBCB4 001D8C14 38 00 00 01 */ li r0, 1 +/* 801DBCB8 001D8C18 98 03 09 39 */ stb r0, 0x939(r3) +/* 801DBCBC 001D8C1C 4B FF FF 21 */ bl sub_801dbbdc +lbl_801DBCC0: +/* 801DBCC0 001D8C20 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801DBCC4 001D8C24 7C 08 03 A6 */ mtlr r0 +/* 801DBCC8 001D8C28 38 21 00 10 */ addi r1, r1, 0x10 +/* 801DBCCC 001D8C2C 4E 80 00 20 */ blr + +.global PathFind__8CThardusFR13CStateManager9EStateMsgf +PathFind__8CThardusFR13CStateManager9EStateMsgf: +/* 801DBCD0 001D8C30 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 801DBCD4 001D8C34 7C 08 02 A6 */ mflr r0 +/* 801DBCD8 001D8C38 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 801DBCDC 001D8C3C DB E1 00 90 */ stfd f31, 0x90(r1) +/* 801DBCE0 001D8C40 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 +/* 801DBCE4 001D8C44 93 E1 00 8C */ stw r31, 0x8c(r1) +/* 801DBCE8 001D8C48 93 C1 00 88 */ stw r30, 0x88(r1) +/* 801DBCEC 001D8C4C FF E0 08 90 */ fmr f31, f1 +/* 801DBCF0 001D8C50 2C 05 00 01 */ cmpwi r5, 1 +/* 801DBCF4 001D8C54 7C 7E 1B 78 */ mr r30, r3 +/* 801DBCF8 001D8C58 7C 9F 23 78 */ mr r31, r4 +/* 801DBCFC 001D8C5C 41 82 00 90 */ beq lbl_801DBD8C +/* 801DBD00 001D8C60 40 80 00 10 */ bge lbl_801DBD10 +/* 801DBD04 001D8C64 2C 05 00 00 */ cmpwi r5, 0 +/* 801DBD08 001D8C68 40 80 00 14 */ bge lbl_801DBD1C +/* 801DBD0C 001D8C6C 48 00 01 B4 */ b lbl_801DBEC0 +lbl_801DBD10: +/* 801DBD10 001D8C70 2C 05 00 03 */ cmpwi r5, 3 +/* 801DBD14 001D8C74 40 80 01 AC */ bge lbl_801DBEC0 +/* 801DBD18 001D8C78 48 00 01 A0 */ b lbl_801DBEB8 +lbl_801DBD1C: +/* 801DBD1C 001D8C7C 7F C4 F3 78 */ mr r4, r30 +/* 801DBD20 001D8C80 7F E5 FB 78 */ mr r5, r31 +/* 801DBD24 001D8C84 38 61 00 5C */ addi r3, r1, 0x5c +/* 801DBD28 001D8C88 48 00 28 29 */ bl sub_801de550 +/* 801DBD2C 001D8C8C C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 801DBD30 001D8C90 FC 20 F8 90 */ fmr f1, f31 +/* 801DBD34 001D8C94 7F C3 F3 78 */ mr r3, r30 +/* 801DBD38 001D8C98 7F E4 FB 78 */ mr r4, r31 +/* 801DBD3C 001D8C9C D0 1E 02 E0 */ stfs f0, 0x2e0(r30) +/* 801DBD40 001D8CA0 38 A0 00 00 */ li r5, 0 +/* 801DBD44 001D8CA4 C0 01 00 60 */ lfs f0, 0x60(r1) +/* 801DBD48 001D8CA8 D0 1E 02 E4 */ stfs f0, 0x2e4(r30) +/* 801DBD4C 001D8CAC C0 01 00 64 */ lfs f0, 0x64(r1) +/* 801DBD50 001D8CB0 D0 1E 02 E8 */ stfs f0, 0x2e8(r30) +/* 801DBD54 001D8CB4 C0 1E 02 E0 */ lfs f0, 0x2e0(r30) +/* 801DBD58 001D8CB8 D0 1E 07 D8 */ stfs f0, 0x7d8(r30) +/* 801DBD5C 001D8CBC C0 1E 02 E4 */ lfs f0, 0x2e4(r30) +/* 801DBD60 001D8CC0 D0 1E 07 DC */ stfs f0, 0x7dc(r30) +/* 801DBD64 001D8CC4 C0 1E 02 E8 */ lfs f0, 0x2e8(r30) +/* 801DBD68 001D8CC8 D0 1E 07 E0 */ stfs f0, 0x7e0(r30) +/* 801DBD6C 001D8CCC C0 1E 07 D8 */ lfs f0, 0x7d8(r30) +/* 801DBD70 001D8CD0 D0 1E 07 E4 */ stfs f0, 0x7e4(r30) +/* 801DBD74 001D8CD4 C0 1E 07 DC */ lfs f0, 0x7dc(r30) +/* 801DBD78 001D8CD8 D0 1E 07 E8 */ stfs f0, 0x7e8(r30) +/* 801DBD7C 001D8CDC C0 1E 07 E0 */ lfs f0, 0x7e0(r30) +/* 801DBD80 001D8CE0 D0 1E 07 EC */ stfs f0, 0x7ec(r30) +/* 801DBD84 001D8CE4 48 01 A9 49 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 801DBD88 001D8CE8 48 00 01 38 */ b lbl_801DBEC0 +lbl_801DBD8C: +/* 801DBD8C 001D8CEC C0 5E 00 50 */ lfs f2, 0x50(r30) +/* 801DBD90 001D8CF0 38 61 00 20 */ addi r3, r1, 0x20 +/* 801DBD94 001D8CF4 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 801DBD98 001D8CF8 C0 1E 00 60 */ lfs f0, 0x60(r30) +/* 801DBD9C 001D8CFC D0 21 00 50 */ stfs f1, 0x50(r1) +/* 801DBDA0 001D8D00 D0 41 00 54 */ stfs f2, 0x54(r1) +/* 801DBDA4 001D8D04 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 801DBDA8 001D8D08 48 13 84 59 */ bl __ct__9CVector2fFff +/* 801DBDAC 001D8D0C C0 21 00 20 */ lfs f1, 0x20(r1) +/* 801DBDB0 001D8D10 38 61 00 18 */ addi r3, r1, 0x18 +/* 801DBDB4 001D8D14 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 801DBDB8 001D8D18 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 801DBDBC 001D8D1C D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801DBDC0 001D8D20 C0 3E 07 E4 */ lfs f1, 0x7e4(r30) +/* 801DBDC4 001D8D24 C0 5E 07 E8 */ lfs f2, 0x7e8(r30) +/* 801DBDC8 001D8D28 48 13 84 39 */ bl __ct__9CVector2fFff +/* 801DBDCC 001D8D2C C0 21 00 18 */ lfs f1, 0x18(r1) +/* 801DBDD0 001D8D30 38 61 00 10 */ addi r3, r1, 0x10 +/* 801DBDD4 001D8D34 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 801DBDD8 001D8D38 38 81 00 30 */ addi r4, r1, 0x30 +/* 801DBDDC 001D8D3C D0 21 00 28 */ stfs f1, 0x28(r1) +/* 801DBDE0 001D8D40 38 A1 00 28 */ addi r5, r1, 0x28 +/* 801DBDE4 001D8D44 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801DBDE8 001D8D48 48 13 81 51 */ bl __mi__FRC9CVector2fRC9CVector2f +/* 801DBDEC 001D8D4C C0 41 00 10 */ lfs f2, 0x10(r1) +/* 801DBDF0 001D8D50 38 61 00 44 */ addi r3, r1, 0x44 +/* 801DBDF4 001D8D54 C0 21 00 14 */ lfs f1, 0x14(r1) +/* 801DBDF8 001D8D58 C0 02 AC DC */ lfs f0, lbl_805AC9FC@sda21(r2) +/* 801DBDFC 001D8D5C D0 41 00 44 */ stfs f2, 0x44(r1) +/* 801DBE00 001D8D60 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 801DBE04 001D8D64 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 801DBE08 001D8D68 48 13 8A B1 */ bl Magnitude__9CVector3fCFv +/* 801DBE0C 001D8D6C C0 02 AD 00 */ lfs f0, lbl_805ACA20@sda21(r2) +/* 801DBE10 001D8D70 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801DBE14 001D8D74 40 80 00 7C */ bge lbl_801DBE90 +/* 801DBE18 001D8D78 7F C4 F3 78 */ mr r4, r30 +/* 801DBE1C 001D8D7C 7F E5 FB 78 */ mr r5, r31 +/* 801DBE20 001D8D80 38 61 00 38 */ addi r3, r1, 0x38 +/* 801DBE24 001D8D84 48 00 26 11 */ bl sub_801de434 +/* 801DBE28 001D8D88 C0 01 00 38 */ lfs f0, 0x38(r1) +/* 801DBE2C 001D8D8C FC 20 F8 90 */ fmr f1, f31 +/* 801DBE30 001D8D90 7F C3 F3 78 */ mr r3, r30 +/* 801DBE34 001D8D94 7F E4 FB 78 */ mr r4, r31 +/* 801DBE38 001D8D98 D0 1E 02 E0 */ stfs f0, 0x2e0(r30) +/* 801DBE3C 001D8D9C 38 A0 00 00 */ li r5, 0 +/* 801DBE40 001D8DA0 C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 801DBE44 001D8DA4 D0 1E 02 E4 */ stfs f0, 0x2e4(r30) +/* 801DBE48 001D8DA8 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 801DBE4C 001D8DAC D0 1E 02 E8 */ stfs f0, 0x2e8(r30) +/* 801DBE50 001D8DB0 C0 1E 02 E0 */ lfs f0, 0x2e0(r30) +/* 801DBE54 001D8DB4 D0 1E 07 D8 */ stfs f0, 0x7d8(r30) +/* 801DBE58 001D8DB8 C0 1E 02 E4 */ lfs f0, 0x2e4(r30) +/* 801DBE5C 001D8DBC D0 1E 07 DC */ stfs f0, 0x7dc(r30) +/* 801DBE60 001D8DC0 C0 1E 02 E8 */ lfs f0, 0x2e8(r30) +/* 801DBE64 001D8DC4 D0 1E 07 E0 */ stfs f0, 0x7e0(r30) +/* 801DBE68 001D8DC8 C0 1E 07 D8 */ lfs f0, 0x7d8(r30) +/* 801DBE6C 001D8DCC D0 1E 07 E4 */ stfs f0, 0x7e4(r30) +/* 801DBE70 001D8DD0 C0 1E 07 DC */ lfs f0, 0x7dc(r30) +/* 801DBE74 001D8DD4 D0 1E 07 E8 */ stfs f0, 0x7e8(r30) +/* 801DBE78 001D8DD8 C0 1E 07 E0 */ lfs f0, 0x7e0(r30) +/* 801DBE7C 001D8DDC D0 1E 07 EC */ stfs f0, 0x7ec(r30) +/* 801DBE80 001D8DE0 48 01 A8 4D */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 801DBE84 001D8DE4 80 7E 06 60 */ lwz r3, 0x660(r30) +/* 801DBE88 001D8DE8 38 03 00 01 */ addi r0, r3, 1 +/* 801DBE8C 001D8DEC 90 1E 06 60 */ stw r0, 0x660(r30) +lbl_801DBE90: +/* 801DBE90 001D8DF0 FC 20 F8 90 */ fmr f1, f31 +/* 801DBE94 001D8DF4 7F C4 F3 78 */ mr r4, r30 +/* 801DBE98 001D8DF8 7F E5 FB 78 */ mr r5, r31 +/* 801DBE9C 001D8DFC 38 61 00 08 */ addi r3, r1, 8 +/* 801DBEA0 001D8E00 48 00 07 6D */ bl sub_801dc60c +/* 801DBEA4 001D8E04 C0 01 00 08 */ lfs f0, 8(r1) +/* 801DBEA8 001D8E08 D0 1E 06 50 */ stfs f0, 0x650(r30) +/* 801DBEAC 001D8E0C C0 01 00 0C */ lfs f0, 0xc(r1) +/* 801DBEB0 001D8E10 D0 1E 06 54 */ stfs f0, 0x654(r30) +/* 801DBEB4 001D8E14 48 00 00 0C */ b lbl_801DBEC0 +lbl_801DBEB8: +/* 801DBEB8 001D8E18 38 00 00 00 */ li r0, 0 +/* 801DBEBC 001D8E1C 98 1E 08 D4 */ stb r0, 0x8d4(r30) +lbl_801DBEC0: +/* 801DBEC0 001D8E20 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801DBEC4 001D8E24 C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) +/* 801DBEC8 001D8E28 C0 DE 06 54 */ lfs f6, 0x654(r30) +/* 801DBECC 001D8E2C 38 81 00 68 */ addi r4, r1, 0x68 +/* 801DBED0 001D8E30 C0 BE 06 50 */ lfs f5, 0x650(r30) +/* 801DBED4 001D8E34 C0 82 AC DC */ lfs f4, lbl_805AC9FC@sda21(r2) +/* 801DBED8 001D8E38 C0 43 00 04 */ lfs f2, 4(r3) +/* 801DBEDC 001D8E3C C0 23 00 08 */ lfs f1, 8(r3) +/* 801DBEE0 001D8E40 C0 02 AC D8 */ lfs f0, lbl_805AC9F8@sda21(r2) +/* 801DBEE4 001D8E44 D0 A1 00 68 */ stfs f5, 0x68(r1) +/* 801DBEE8 001D8E48 D0 C1 00 6C */ stfs f6, 0x6c(r1) +/* 801DBEEC 001D8E4C D0 81 00 70 */ stfs f4, 0x70(r1) +/* 801DBEF0 001D8E50 D0 61 00 74 */ stfs f3, 0x74(r1) +/* 801DBEF4 001D8E54 D0 41 00 78 */ stfs f2, 0x78(r1) +/* 801DBEF8 001D8E58 D0 21 00 7C */ stfs f1, 0x7c(r1) +/* 801DBEFC 001D8E5C D0 01 00 80 */ stfs f0, 0x80(r1) +/* 801DBF00 001D8E60 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801DBF04 001D8E64 38 63 00 04 */ addi r3, r3, 4 +/* 801DBF08 001D8E68 4B F5 58 11 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 801DBF0C 001D8E6C E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 +/* 801DBF10 001D8E70 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 801DBF14 001D8E74 CB E1 00 90 */ lfd f31, 0x90(r1) +/* 801DBF18 001D8E78 83 E1 00 8C */ lwz r31, 0x8c(r1) +/* 801DBF1C 001D8E7C 83 C1 00 88 */ lwz r30, 0x88(r1) +/* 801DBF20 001D8E80 7C 08 03 A6 */ mtlr r0 +/* 801DBF24 001D8E84 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 801DBF28 001D8E88 4E 80 00 20 */ blr + +.global PathFound__8CThardusFR13CStateManagerf +PathFound__8CThardusFR13CStateManagerf: +/* 801DBF2C 001D8E8C 88 63 08 D4 */ lbz r3, 0x8d4(r3) +/* 801DBF30 001D8E90 4E 80 00 20 */ blr + +.global sub_801dbf34 +sub_801dbf34: +/* 801DBF34 001D8E94 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 801DBF38 001D8E98 7C 08 02 A6 */ mflr r0 +/* 801DBF3C 001D8E9C 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 801DBF40 001D8EA0 DB E1 00 A0 */ stfd f31, 0xa0(r1) +/* 801DBF44 001D8EA4 F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0 +/* 801DBF48 001D8EA8 DB C1 00 90 */ stfd f30, 0x90(r1) +/* 801DBF4C 001D8EAC F3 C1 00 98 */ psq_st f30, 152(r1), 0, qr0 +/* 801DBF50 001D8EB0 DB A1 00 80 */ stfd f29, 0x80(r1) +/* 801DBF54 001D8EB4 F3 A1 00 88 */ psq_st f29, 136(r1), 0, qr0 +/* 801DBF58 001D8EB8 DB 81 00 70 */ stfd f28, 0x70(r1) +/* 801DBF5C 001D8EBC F3 81 00 78 */ psq_st f28, 120(r1), 0, qr0 +/* 801DBF60 001D8EC0 DB 61 00 60 */ stfd f27, 0x60(r1) +/* 801DBF64 001D8EC4 F3 61 00 68 */ psq_st f27, 104(r1), 0, qr0 +/* 801DBF68 001D8EC8 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 801DBF6C 001D8ECC 93 C1 00 58 */ stw r30, 0x58(r1) +/* 801DBF70 001D8ED0 93 A1 00 54 */ stw r29, 0x54(r1) +/* 801DBF74 001D8ED4 7C 7D 1B 78 */ mr r29, r3 +/* 801DBF78 001D8ED8 FF A0 08 90 */ fmr f29, f1 +/* 801DBF7C 001D8EDC 80 03 07 C4 */ lwz r0, 0x7c4(r3) +/* 801DBF80 001D8EE0 7C 9E 23 78 */ mr r30, r4 +/* 801DBF84 001D8EE4 2C 00 00 00 */ cmpwi r0, 0 +/* 801DBF88 001D8EE8 40 82 00 10 */ bne lbl_801DBF98 +/* 801DBF8C 001D8EEC 38 00 00 00 */ li r0, 0 +/* 801DBF90 001D8EF0 98 1D 09 3A */ stb r0, 0x93a(r29) +/* 801DBF94 001D8EF4 48 00 02 F0 */ b lbl_801DC284 +lbl_801DBF98: +/* 801DBF98 001D8EF8 A0 7D 09 28 */ lhz r3, 0x928(r29) +/* 801DBF9C 001D8EFC 3B E0 00 00 */ li r31, 0 +/* 801DBFA0 001D8F00 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801DBFA4 001D8F04 C3 E2 AC DC */ lfs f31, lbl_805AC9FC@sda21(r2) +/* 801DBFA8 001D8F08 7C 03 00 40 */ cmplw r3, r0 +/* 801DBFAC 001D8F0C C3 C2 AC D8 */ lfs f30, lbl_805AC9F8@sda21(r2) +/* 801DBFB0 001D8F10 41 82 00 54 */ beq lbl_801DC004 +/* 801DBFB4 001D8F14 A0 1D 09 28 */ lhz r0, 0x928(r29) +/* 801DBFB8 001D8F18 7F C3 F3 78 */ mr r3, r30 +/* 801DBFBC 001D8F1C 38 81 00 08 */ addi r4, r1, 8 +/* 801DBFC0 001D8F20 B0 01 00 08 */ sth r0, 8(r1) +/* 801DBFC4 001D8F24 4B E7 05 E1 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801DBFC8 001D8F28 7C 64 1B 78 */ mr r4, r3 +/* 801DBFCC 001D8F2C 38 61 00 0C */ addi r3, r1, 0xc +/* 801DBFD0 001D8F30 4B ED 3C C1 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 801DBFD4 001D8F34 80 63 00 04 */ lwz r3, 4(r3) +/* 801DBFD8 001D8F38 28 03 00 00 */ cmplwi r3, 0 +/* 801DBFDC 001D8F3C 41 82 00 20 */ beq lbl_801DBFFC +/* 801DBFE0 001D8F40 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 801DBFE4 001D8F44 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801DBFE8 001D8F48 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801DBFEC 001D8F4C D0 1D 09 2C */ stfs f0, 0x92c(r29) +/* 801DBFF0 001D8F50 D0 3D 09 30 */ stfs f1, 0x930(r29) +/* 801DBFF4 001D8F54 D0 5D 09 34 */ stfs f2, 0x934(r29) +/* 801DBFF8 001D8F58 48 00 00 0C */ b lbl_801DC004 +lbl_801DBFFC: +/* 801DBFFC 001D8F5C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801DC000 001D8F60 B0 1D 09 28 */ sth r0, 0x928(r29) +lbl_801DC004: +/* 801DC004 001D8F64 88 1D 09 39 */ lbz r0, 0x939(r29) +/* 801DC008 001D8F68 28 00 00 00 */ cmplwi r0, 0 +/* 801DC00C 001D8F6C 40 82 00 88 */ bne lbl_801DC094 +/* 801DC010 001D8F70 80 7E 08 70 */ lwz r3, 0x870(r30) +/* 801DC014 001D8F74 7F C4 F3 78 */ mr r4, r30 +/* 801DC018 001D8F78 4B E2 FB 01 */ bl GetCurrentCamera__14CCameraManagerCFR13CStateManager +/* 801DC01C 001D8F7C C0 3D 09 30 */ lfs f1, 0x930(r29) +/* 801DC020 001D8F80 38 81 00 38 */ addi r4, r1, 0x38 +/* 801DC024 001D8F84 C0 03 00 50 */ lfs f0, 0x50(r3) +/* 801DC028 001D8F88 C0 7D 09 34 */ lfs f3, 0x934(r29) +/* 801DC02C 001D8F8C C0 43 00 60 */ lfs f2, 0x60(r3) +/* 801DC030 001D8F90 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801DC034 001D8F94 C0 3D 09 2C */ lfs f1, 0x92c(r29) +/* 801DC038 001D8F98 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801DC03C 001D8F9C EC 43 10 28 */ fsubs f2, f3, f2 +/* 801DC040 001D8FA0 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801DC044 001D8FA4 D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 801DC048 001D8FA8 D0 41 00 40 */ stfs f2, 0x40(r1) +/* 801DC04C 001D8FAC D0 01 00 38 */ stfs f0, 0x38(r1) +/* 801DC050 001D8FB0 C3 63 00 58 */ lfs f27, 0x58(r3) +/* 801DC054 001D8FB4 C3 83 00 48 */ lfs f28, 0x48(r3) +/* 801DC058 001D8FB8 C3 C3 00 38 */ lfs f30, 0x38(r3) +/* 801DC05C 001D8FBC 38 61 00 2C */ addi r3, r1, 0x2c +/* 801DC060 001D8FC0 48 13 87 F1 */ bl AsNormalized__9CVector3fCFv +/* 801DC064 001D8FC4 C0 01 00 30 */ lfs f0, 0x30(r1) +/* 801DC068 001D8FC8 C0 41 00 2C */ lfs f2, 0x2c(r1) +/* 801DC06C 001D8FCC EC 20 07 32 */ fmuls f1, f0, f28 +/* 801DC070 001D8FD0 C0 61 00 34 */ lfs f3, 0x34(r1) +/* 801DC074 001D8FD4 C0 02 AC DC */ lfs f0, lbl_805AC9FC@sda21(r2) +/* 801DC078 001D8FD8 EC 22 0F BA */ fmadds f1, f2, f30, f1 +/* 801DC07C 001D8FDC EC 23 0E FA */ fmadds f1, f3, f27, f1 +/* 801DC080 001D8FE0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801DC084 001D8FE4 40 80 00 0C */ bge lbl_801DC090 +/* 801DC088 001D8FE8 FF C0 00 90 */ fmr f30, f0 +/* 801DC08C 001D8FEC 48 00 00 08 */ b lbl_801DC094 +lbl_801DC090: +/* 801DC090 001D8FF0 EF C1 00 72 */ fmuls f30, f1, f1 +lbl_801DC094: +/* 801DC094 001D8FF4 80 1D 07 C4 */ lwz r0, 0x7c4(r29) +/* 801DC098 001D8FF8 2C 00 00 02 */ cmpwi r0, 2 +/* 801DC09C 001D8FFC 41 82 00 8C */ beq lbl_801DC128 +/* 801DC0A0 001D9000 40 80 00 10 */ bge lbl_801DC0B0 +/* 801DC0A4 001D9004 2C 00 00 01 */ cmpwi r0, 1 +/* 801DC0A8 001D9008 40 80 00 14 */ bge lbl_801DC0BC +/* 801DC0AC 001D900C 48 00 01 54 */ b lbl_801DC200 +lbl_801DC0B0: +/* 801DC0B0 001D9010 2C 00 00 04 */ cmpwi r0, 4 +/* 801DC0B4 001D9014 40 80 01 4C */ bge lbl_801DC200 +/* 801DC0B8 001D9018 48 00 00 CC */ b lbl_801DC184 +lbl_801DC0BC: +/* 801DC0BC 001D901C C0 02 AC D0 */ lfs f0, lbl_805AC9F0@sda21(r2) +/* 801DC0C0 001D9020 C0 5D 07 B8 */ lfs f2, 0x7b8(r29) +/* 801DC0C4 001D9024 FC 00 10 40 */ fcmpo cr0, f0, f2 +/* 801DC0C8 001D9028 40 80 00 0C */ bge lbl_801DC0D4 +/* 801DC0CC 001D902C 38 62 AC D0 */ addi r3, r2, lbl_805AC9F0@sda21 +/* 801DC0D0 001D9030 48 00 00 08 */ b lbl_801DC0D8 +lbl_801DC0D4: +/* 801DC0D4 001D9034 38 7D 07 B8 */ addi r3, r29, 0x7b8 +lbl_801DC0D8: +/* 801DC0D8 001D9038 C0 02 AD 0C */ lfs f0, lbl_805ACA2C@sda21(r2) +/* 801DC0DC 001D903C C0 23 00 00 */ lfs f1, 0(r3) +/* 801DC0E0 001D9040 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801DC0E4 001D9044 EF E1 00 24 */ fdivs f31, f1, f0 +/* 801DC0E8 001D9048 40 81 00 14 */ ble lbl_801DC0FC +/* 801DC0EC 001D904C 38 00 00 03 */ li r0, 3 +/* 801DC0F0 001D9050 C0 02 AC DC */ lfs f0, lbl_805AC9FC@sda21(r2) +/* 801DC0F4 001D9054 90 1D 07 C4 */ stw r0, 0x7c4(r29) +/* 801DC0F8 001D9058 D0 1D 07 B8 */ stfs f0, 0x7b8(r29) +lbl_801DC0FC: +/* 801DC0FC 001D905C C0 1D 07 B8 */ lfs f0, 0x7b8(r29) +/* 801DC100 001D9060 EC 00 E8 2A */ fadds f0, f0, f29 +/* 801DC104 001D9064 D0 1D 07 B8 */ stfs f0, 0x7b8(r29) +/* 801DC108 001D9068 80 7E 08 B8 */ lwz r3, 0x8b8(r30) +/* 801DC10C 001D906C 80 63 00 00 */ lwz r3, 0(r3) +/* 801DC110 001D9070 80 03 00 14 */ lwz r0, 0x14(r3) +/* 801DC114 001D9074 2C 00 00 03 */ cmpwi r0, 3 +/* 801DC118 001D9078 40 82 00 E8 */ bne lbl_801DC200 +/* 801DC11C 001D907C 38 00 00 01 */ li r0, 1 +/* 801DC120 001D9080 98 1D 06 88 */ stb r0, 0x688(r29) +/* 801DC124 001D9084 48 00 00 DC */ b lbl_801DC200 +lbl_801DC128: +/* 801DC128 001D9088 C0 02 AC D4 */ lfs f0, lbl_805AC9F4@sda21(r2) +/* 801DC12C 001D908C C0 7D 07 B8 */ lfs f3, 0x7b8(r29) +/* 801DC130 001D9090 FC 00 18 40 */ fcmpo cr0, f0, f3 +/* 801DC134 001D9094 40 80 00 0C */ bge lbl_801DC140 +/* 801DC138 001D9098 38 62 AC D4 */ addi r3, r2, lbl_805AC9F4@sda21 +/* 801DC13C 001D909C 48 00 00 08 */ b lbl_801DC144 +lbl_801DC140: +/* 801DC140 001D90A0 38 7D 07 B8 */ addi r3, r29, 0x7b8 +lbl_801DC144: +/* 801DC144 001D90A4 C0 02 AC E0 */ lfs f0, lbl_805ACA00@sda21(r2) +/* 801DC148 001D90A8 C0 43 00 00 */ lfs f2, 0(r3) +/* 801DC14C 001D90AC C0 22 AC F8 */ lfs f1, lbl_805ACA18@sda21(r2) +/* 801DC150 001D90B0 FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 801DC154 001D90B4 C0 02 AC D8 */ lfs f0, lbl_805AC9F8@sda21(r2) +/* 801DC158 001D90B8 EF E2 00 7C */ fnmsubs f31, f2, f1, f0 +/* 801DC15C 001D90BC 40 81 00 18 */ ble lbl_801DC174 +/* 801DC160 001D90C0 38 00 00 00 */ li r0, 0 +/* 801DC164 001D90C4 C0 02 AC DC */ lfs f0, lbl_805AC9FC@sda21(r2) +/* 801DC168 001D90C8 90 1D 07 C4 */ stw r0, 0x7c4(r29) +/* 801DC16C 001D90CC D0 1D 07 B8 */ stfs f0, 0x7b8(r29) +/* 801DC170 001D90D0 D0 1D 07 C0 */ stfs f0, 0x7c0(r29) +lbl_801DC174: +/* 801DC174 001D90D4 C0 1D 07 B8 */ lfs f0, 0x7b8(r29) +/* 801DC178 001D90D8 EC 00 E8 2A */ fadds f0, f0, f29 +/* 801DC17C 001D90DC D0 1D 07 B8 */ stfs f0, 0x7b8(r29) +/* 801DC180 001D90E0 48 00 00 80 */ b lbl_801DC200 +lbl_801DC184: +/* 801DC184 001D90E4 C0 3D 07 B8 */ lfs f1, 0x7b8(r29) +/* 801DC188 001D90E8 C0 1D 07 BC */ lfs f0, 0x7bc(r29) +/* 801DC18C 001D90EC C3 E2 AC D8 */ lfs f31, lbl_805AC9F8@sda21(r2) +/* 801DC190 001D90F0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801DC194 001D90F4 40 81 00 20 */ ble lbl_801DC1B4 +/* 801DC198 001D90F8 88 1D 09 38 */ lbz r0, 0x938(r29) +/* 801DC19C 001D90FC 28 00 00 00 */ cmplwi r0, 0 +/* 801DC1A0 001D9100 40 82 00 14 */ bne lbl_801DC1B4 +/* 801DC1A4 001D9104 38 00 00 02 */ li r0, 2 +/* 801DC1A8 001D9108 C0 02 AC DC */ lfs f0, lbl_805AC9FC@sda21(r2) +/* 801DC1AC 001D910C 90 1D 07 C4 */ stw r0, 0x7c4(r29) +/* 801DC1B0 001D9110 D0 1D 07 B8 */ stfs f0, 0x7b8(r29) +lbl_801DC1B4: +/* 801DC1B4 001D9114 C0 1D 07 B8 */ lfs f0, 0x7b8(r29) +/* 801DC1B8 001D9118 EC 00 E8 2A */ fadds f0, f0, f29 +/* 801DC1BC 001D911C D0 1D 07 B8 */ stfs f0, 0x7b8(r29) +/* 801DC1C0 001D9120 80 7E 08 B8 */ lwz r3, 0x8b8(r30) +/* 801DC1C4 001D9124 80 63 00 00 */ lwz r3, 0(r3) +/* 801DC1C8 001D9128 80 03 00 14 */ lwz r0, 0x14(r3) +/* 801DC1CC 001D912C 2C 00 00 03 */ cmpwi r0, 3 +/* 801DC1D0 001D9130 40 82 00 30 */ bne lbl_801DC200 +/* 801DC1D4 001D9134 38 80 00 01 */ li r4, 1 +/* 801DC1D8 001D9138 38 60 00 00 */ li r3, 0 +/* 801DC1DC 001D913C 98 9D 06 88 */ stb r4, 0x688(r29) +/* 801DC1E0 001D9140 88 1D 09 38 */ lbz r0, 0x938(r29) +/* 801DC1E4 001D9144 28 00 00 00 */ cmplwi r0, 0 +/* 801DC1E8 001D9148 41 82 00 14 */ beq lbl_801DC1FC +/* 801DC1EC 001D914C C0 02 AD 10 */ lfs f0, lbl_805ACA30@sda21(r2) +/* 801DC1F0 001D9150 FC 1E 00 40 */ fcmpo cr0, f30, f0 +/* 801DC1F4 001D9154 40 81 00 08 */ ble lbl_801DC1FC +/* 801DC1F8 001D9158 7C 83 23 78 */ mr r3, r4 +lbl_801DC1FC: +/* 801DC1FC 001D915C 7C 7F 1B 78 */ mr r31, r3 +lbl_801DC200: +/* 801DC200 001D9160 EF FF 07 B2 */ fmuls f31, f31, f30 +/* 801DC204 001D9164 C0 02 AD 14 */ lfs f0, lbl_805ACA34@sda21(r2) +/* 801DC208 001D9168 57 E3 06 3E */ clrlwi r3, r31, 0x18 +/* 801DC20C 001D916C D3 FD 07 C0 */ stfs f31, 0x7c0(r29) +/* 801DC210 001D9170 EC 20 07 F2 */ fmuls f1, f0, f31 +/* 801DC214 001D9174 C0 1E 0F 28 */ lfs f0, 0xf28(r30) +/* 801DC218 001D9178 EC 00 08 2A */ fadds f0, f0, f1 +/* 801DC21C 001D917C D0 1E 0F 28 */ stfs f0, 0xf28(r30) +/* 801DC220 001D9180 D0 3D 05 0C */ stfs f1, 0x50c(r29) +/* 801DC224 001D9184 88 1D 09 3A */ lbz r0, 0x93a(r29) +/* 801DC228 001D9188 7C 03 00 40 */ cmplw r3, r0 +/* 801DC22C 001D918C 41 82 00 58 */ beq lbl_801DC284 +/* 801DC230 001D9190 28 03 00 00 */ cmplwi r3, 0 +/* 801DC234 001D9194 41 82 00 4C */ beq lbl_801DC280 +/* 801DC238 001D9198 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 801DC23C 001D919C 38 80 00 12 */ li r4, 0x12 +/* 801DC240 001D91A0 48 17 A4 BD */ bl GetString__12CStringTableCFi +/* 801DC244 001D91A4 7C 64 1B 78 */ mr r4, r3 +/* 801DC248 001D91A8 38 61 00 1C */ addi r3, r1, 0x1c +/* 801DC24C 001D91AC 4B E3 97 A5 */ bl wstring_l__4rstlFPCw +/* 801DC250 001D91B0 C0 02 AD 18 */ lfs f0, lbl_805ACA38@sda21(r2) +/* 801DC254 001D91B4 38 00 00 00 */ li r0, 0 +/* 801DC258 001D91B8 38 A0 00 01 */ li r5, 1 +/* 801DC25C 001D91BC 98 01 00 19 */ stb r0, 0x19(r1) +/* 801DC260 001D91C0 38 61 00 1C */ addi r3, r1, 0x1c +/* 801DC264 001D91C4 38 81 00 14 */ addi r4, r1, 0x14 +/* 801DC268 001D91C8 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801DC26C 001D91CC 98 A1 00 18 */ stb r5, 0x18(r1) +/* 801DC270 001D91D0 98 01 00 1A */ stb r0, 0x1a(r1) +/* 801DC274 001D91D4 4B E8 F9 F5 */ bl DisplayHudMemo__9CSamusHudFRC7wstringRC12SHudMemoInfo +/* 801DC278 001D91D8 38 61 00 1C */ addi r3, r1, 0x1c +/* 801DC27C 001D91DC 48 16 0E B9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801DC280: +/* 801DC280 001D91E0 9B FD 09 3A */ stb r31, 0x93a(r29) +lbl_801DC284: +/* 801DC284 001D91E4 E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0 +/* 801DC288 001D91E8 CB E1 00 A0 */ lfd f31, 0xa0(r1) +/* 801DC28C 001D91EC E3 C1 00 98 */ psq_l f30, 152(r1), 0, qr0 +/* 801DC290 001D91F0 CB C1 00 90 */ lfd f30, 0x90(r1) +/* 801DC294 001D91F4 E3 A1 00 88 */ psq_l f29, 136(r1), 0, qr0 +/* 801DC298 001D91F8 CB A1 00 80 */ lfd f29, 0x80(r1) +/* 801DC29C 001D91FC E3 81 00 78 */ psq_l f28, 120(r1), 0, qr0 +/* 801DC2A0 001D9200 CB 81 00 70 */ lfd f28, 0x70(r1) +/* 801DC2A4 001D9204 E3 61 00 68 */ psq_l f27, 104(r1), 0, qr0 +/* 801DC2A8 001D9208 CB 61 00 60 */ lfd f27, 0x60(r1) +/* 801DC2AC 001D920C 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 801DC2B0 001D9210 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 801DC2B4 001D9214 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 801DC2B8 001D9218 83 A1 00 54 */ lwz r29, 0x54(r1) +/* 801DC2BC 001D921C 7C 08 03 A6 */ mtlr r0 +/* 801DC2C0 001D9220 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 801DC2C4 001D9224 4E 80 00 20 */ blr + +.global sub_801dc2c8 +sub_801dc2c8: +/* 801DC2C8 001D9228 80 83 06 14 */ lwz r4, 0x614(r3) +/* 801DC2CC 001D922C 80 63 06 48 */ lwz r3, 0x648(r3) +/* 801DC2D0 001D9230 38 04 FF FF */ addi r0, r4, -1 +/* 801DC2D4 001D9234 7C 03 00 50 */ subf r0, r3, r0 +/* 801DC2D8 001D9238 7C 00 00 34 */ cntlzw r0, r0 +/* 801DC2DC 001D923C 54 03 D9 7E */ srwi r3, r0, 5 +/* 801DC2E0 001D9240 4E 80 00 20 */ blr + +.global CoverBlown__8CThardusFR13CStateManagerf +CoverBlown__8CThardusFR13CStateManagerf: +/* 801DC2E4 001D9244 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801DC2E8 001D9248 7C 08 02 A6 */ mflr r0 +/* 801DC2EC 001D924C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801DC2F0 001D9250 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801DC2F4 001D9254 3B E0 00 00 */ li r31, 0 +/* 801DC2F8 001D9258 80 03 05 C4 */ lwz r0, 0x5c4(r3) +/* 801DC2FC 001D925C 2C 00 00 02 */ cmpwi r0, 2 +/* 801DC300 001D9260 40 82 00 24 */ bne lbl_801DC324 +/* 801DC304 001D9264 81 83 00 00 */ lwz r12, 0(r3) +/* 801DC308 001D9268 C0 22 AC DC */ lfs f1, lbl_805AC9FC@sda21(r2) +/* 801DC30C 001D926C 81 8C 02 4C */ lwz r12, 0x24c(r12) +/* 801DC310 001D9270 7D 89 03 A6 */ mtctr r12 +/* 801DC314 001D9274 4E 80 04 21 */ bctrl +/* 801DC318 001D9278 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801DC31C 001D927C 40 82 00 08 */ bne lbl_801DC324 +/* 801DC320 001D9280 3B E0 00 01 */ li r31, 1 +lbl_801DC324: +/* 801DC324 001D9284 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801DC328 001D9288 7F E3 FB 78 */ mr r3, r31 +/* 801DC32C 001D928C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801DC330 001D9290 7C 08 03 A6 */ mtlr r0 +/* 801DC334 001D9294 38 21 00 10 */ addi r1, r1, 0x10 +/* 801DC338 001D9298 4E 80 00 20 */ blr + +.global AttackOver__8CThardusFR13CStateManagerf +AttackOver__8CThardusFR13CStateManagerf: +/* 801DC33C 001D929C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801DC340 001D92A0 7C 08 02 A6 */ mflr r0 +/* 801DC344 001D92A4 90 01 00 24 */ stw r0, 0x24(r1) +/* 801DC348 001D92A8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801DC34C 001D92AC 7C 7F 1B 78 */ mr r31, r3 +/* 801DC350 001D92B0 80 03 05 C4 */ lwz r0, 0x5c4(r3) +/* 801DC354 001D92B4 2C 00 00 01 */ cmpwi r0, 1 +/* 801DC358 001D92B8 40 82 00 80 */ bne lbl_801DC3D8 +/* 801DC35C 001D92BC 88 1F 09 4D */ lbz r0, 0x94d(r31) +/* 801DC360 001D92C0 28 00 00 00 */ cmplwi r0, 0 +/* 801DC364 001D92C4 40 82 00 74 */ bne lbl_801DC3D8 +/* 801DC368 001D92C8 80 9F 09 40 */ lwz r4, 0x940(r31) +/* 801DC36C 001D92CC 3C 00 43 30 */ lis r0, 0x4330 +/* 801DC370 001D92D0 90 01 00 10 */ stw r0, 0x10(r1) +/* 801DC374 001D92D4 C8 22 AD 20 */ lfd f1, lbl_805ACA40@sda21(r2) +/* 801DC378 001D92D8 90 81 00 14 */ stw r4, 0x14(r1) +/* 801DC37C 001D92DC C0 42 AD 1C */ lfs f2, lbl_805ACA3C@sda21(r2) +/* 801DC380 001D92E0 C8 01 00 10 */ lfd f0, 0x10(r1) +/* 801DC384 001D92E4 EC 00 08 28 */ fsubs f0, f0, f1 +/* 801DC388 001D92E8 EC 02 00 32 */ fmuls f0, f2, f0 +/* 801DC38C 001D92EC D0 01 00 08 */ stfs f0, 8(r1) +/* 801DC390 001D92F0 4B FF FF 39 */ bl sub_801dc2c8 +/* 801DC394 001D92F4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801DC398 001D92F8 41 82 00 0C */ beq lbl_801DC3A4 +/* 801DC39C 001D92FC C0 21 00 08 */ lfs f1, 8(r1) +/* 801DC3A0 001D9300 48 00 00 24 */ b lbl_801DC3C4 +lbl_801DC3A4: +/* 801DC3A4 001D9304 C0 21 00 08 */ lfs f1, 8(r1) +/* 801DC3A8 001D9308 C0 02 AC CC */ lfs f0, lbl_805AC9EC@sda21(r2) +/* 801DC3AC 001D930C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801DC3B0 001D9310 40 80 00 0C */ bge lbl_801DC3BC +/* 801DC3B4 001D9314 38 62 AC CC */ addi r3, r2, lbl_805AC9EC@sda21 +/* 801DC3B8 001D9318 48 00 00 08 */ b lbl_801DC3C0 +lbl_801DC3BC: +/* 801DC3BC 001D931C 38 61 00 08 */ addi r3, r1, 8 +lbl_801DC3C0: +/* 801DC3C0 001D9320 C0 23 00 00 */ lfs f1, 0(r3) +lbl_801DC3C4: +/* 801DC3C4 001D9324 C0 1F 03 38 */ lfs f0, 0x338(r31) +/* 801DC3C8 001D9328 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801DC3CC 001D932C 40 81 00 60 */ ble lbl_801DC42C +/* 801DC3D0 001D9330 38 60 00 01 */ li r3, 1 +/* 801DC3D4 001D9334 48 00 00 5C */ b lbl_801DC430 +lbl_801DC3D8: +/* 801DC3D8 001D9338 7F E3 FB 78 */ mr r3, r31 +/* 801DC3DC 001D933C 4B FF FE ED */ bl sub_801dc2c8 +/* 801DC3E0 001D9340 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801DC3E4 001D9344 40 82 00 28 */ bne lbl_801DC40C +/* 801DC3E8 001D9348 88 1F 09 3B */ lbz r0, 0x93b(r31) +/* 801DC3EC 001D934C 28 00 00 00 */ cmplwi r0, 0 +/* 801DC3F0 001D9350 40 82 00 1C */ bne lbl_801DC40C +/* 801DC3F4 001D9354 88 1F 09 4D */ lbz r0, 0x94d(r31) +/* 801DC3F8 001D9358 28 00 00 00 */ cmplwi r0, 0 +/* 801DC3FC 001D935C 40 82 00 10 */ bne lbl_801DC40C +/* 801DC400 001D9360 80 1F 05 C4 */ lwz r0, 0x5c4(r31) +/* 801DC404 001D9364 2C 00 FF FF */ cmpwi r0, -1 +/* 801DC408 001D9368 40 82 00 0C */ bne lbl_801DC414 +lbl_801DC40C: +/* 801DC40C 001D936C 38 60 00 01 */ li r3, 1 +/* 801DC410 001D9370 48 00 00 20 */ b lbl_801DC430 +lbl_801DC414: +/* 801DC414 001D9374 C0 3F 03 38 */ lfs f1, 0x338(r31) +/* 801DC418 001D9378 C0 02 AD 10 */ lfs f0, lbl_805ACA30@sda21(r2) +/* 801DC41C 001D937C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801DC420 001D9380 40 81 00 0C */ ble lbl_801DC42C +/* 801DC424 001D9384 38 60 00 01 */ li r3, 1 +/* 801DC428 001D9388 48 00 00 08 */ b lbl_801DC430 +lbl_801DC42C: +/* 801DC42C 001D938C 38 60 00 00 */ li r3, 0 +lbl_801DC430: +/* 801DC430 001D9390 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801DC434 001D9394 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801DC438 001D9398 7C 08 03 A6 */ mtlr r0 +/* 801DC43C 001D939C 38 21 00 20 */ addi r1, r1, 0x20 +/* 801DC440 001D93A0 4E 80 00 20 */ blr + +.global sub_801dc444 +sub_801dc444: +/* 801DC444 001D93A4 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 801DC448 001D93A8 7C 08 02 A6 */ mflr r0 +/* 801DC44C 001D93AC 3C E0 80 3D */ lis r7, lbl_803D1CB8@ha +/* 801DC450 001D93B0 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 801DC454 001D93B4 38 E7 1C B8 */ addi r7, r7, lbl_803D1CB8@l +/* 801DC458 001D93B8 93 E1 00 DC */ stw r31, 0xdc(r1) +/* 801DC45C 001D93BC 7C DF 33 78 */ mr r31, r6 +/* 801DC460 001D93C0 38 C1 00 0C */ addi r6, r1, 0xc +/* 801DC464 001D93C4 93 C1 00 D8 */ stw r30, 0xd8(r1) +/* 801DC468 001D93C8 7C BE 2B 78 */ mr r30, r5 +/* 801DC46C 001D93CC 38 A0 FF FF */ li r5, -1 +/* 801DC470 001D93D0 93 A1 00 D4 */ stw r29, 0xd4(r1) +/* 801DC474 001D93D4 7C 9D 23 78 */ mr r29, r4 +/* 801DC478 001D93D8 38 87 01 88 */ addi r4, r7, 0x188 +/* 801DC47C 001D93DC 93 81 00 D0 */ stw r28, 0xd0(r1) +/* 801DC480 001D93E0 7C 7C 1B 78 */ mr r28, r3 +/* 801DC484 001D93E4 38 61 00 90 */ addi r3, r1, 0x90 +/* 801DC488 001D93E8 48 16 1D 0D */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator" +/* 801DC48C 001D93EC 7F E4 FB 78 */ mr r4, r31 +/* 801DC490 001D93F0 38 61 00 80 */ addi r3, r1, 0x80 +/* 801DC494 001D93F4 48 16 24 01 */ bl CreateFromInteger__13CStringExtrasFi +/* 801DC498 001D93F8 38 61 00 70 */ addi r3, r1, 0x70 +/* 801DC49C 001D93FC 38 81 00 90 */ addi r4, r1, 0x90 +/* 801DC4A0 001D9400 38 A1 00 80 */ addi r5, r1, 0x80 +/* 801DC4A4 001D9404 4B E2 87 B9 */ bl "__pl__4rstlFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801DC4A8 001D9408 3C 80 80 3D */ lis r4, lbl_803D1CB8@ha +/* 801DC4AC 001D940C 38 61 00 60 */ addi r3, r1, 0x60 +/* 801DC4B0 001D9410 38 84 1C B8 */ addi r4, r4, lbl_803D1CB8@l +/* 801DC4B4 001D9414 38 C1 00 08 */ addi r6, r1, 8 +/* 801DC4B8 001D9418 38 84 01 94 */ addi r4, r4, 0x194 +/* 801DC4BC 001D941C 38 A0 FF FF */ li r5, -1 +/* 801DC4C0 001D9420 48 16 1C D5 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator" +/* 801DC4C4 001D9424 38 61 00 50 */ addi r3, r1, 0x50 +/* 801DC4C8 001D9428 38 81 00 70 */ addi r4, r1, 0x70 +/* 801DC4CC 001D942C 38 A1 00 60 */ addi r5, r1, 0x60 +/* 801DC4D0 001D9430 4B E2 87 8D */ bl "__pl__4rstlFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801DC4D4 001D9434 80 9C 06 F4 */ lwz r4, 0x6f4(r28) +/* 801DC4D8 001D9438 38 61 00 40 */ addi r3, r1, 0x40 +/* 801DC4DC 001D943C 38 04 00 01 */ addi r0, r4, 1 +/* 801DC4E0 001D9440 90 1C 06 F4 */ stw r0, 0x6f4(r28) +/* 801DC4E4 001D9444 48 16 23 B1 */ bl CreateFromInteger__13CStringExtrasFi +/* 801DC4E8 001D9448 38 61 00 30 */ addi r3, r1, 0x30 +/* 801DC4EC 001D944C 38 81 00 50 */ addi r4, r1, 0x50 +/* 801DC4F0 001D9450 38 A1 00 40 */ addi r5, r1, 0x40 +/* 801DC4F4 001D9454 4B E2 87 69 */ bl "__pl__4rstlFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801DC4F8 001D9458 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 801DC4FC 001D945C 38 81 00 30 */ addi r4, r1, 0x30 +/* 801DC500 001D9460 48 16 1C 61 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801DC504 001D9464 38 61 00 30 */ addi r3, r1, 0x30 +/* 801DC508 001D9468 48 16 15 D9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801DC50C 001D946C 38 61 00 40 */ addi r3, r1, 0x40 +/* 801DC510 001D9470 48 16 15 D1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801DC514 001D9474 38 61 00 50 */ addi r3, r1, 0x50 +/* 801DC518 001D9478 48 16 15 C9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801DC51C 001D947C 38 61 00 60 */ addi r3, r1, 0x60 +/* 801DC520 001D9480 48 16 15 C1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801DC524 001D9484 38 61 00 70 */ addi r3, r1, 0x70 +/* 801DC528 001D9488 48 16 15 B9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801DC52C 001D948C 38 61 00 80 */ addi r3, r1, 0x80 +/* 801DC530 001D9490 48 16 15 B1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801DC534 001D9494 38 61 00 90 */ addi r3, r1, 0x90 +/* 801DC538 001D9498 48 16 15 A9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801DC53C 001D949C 81 7C 00 04 */ lwz r11, 4(r28) +/* 801DC540 001D94A0 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 801DC544 001D94A4 C0 02 AC E0 */ lfs f0, lbl_805ACA00@sda21(r2) +/* 801DC548 001D94A8 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 801DC54C 001D94AC 91 61 00 14 */ stw r11, 0x14(r1) +/* 801DC550 001D94B0 38 60 00 00 */ li r3, 0 +/* 801DC554 001D94B4 C0 7E 00 00 */ lfs f3, 0(r30) +/* 801DC558 001D94B8 7F A8 EB 78 */ mr r8, r29 +/* 801DC55C 001D94BC 80 BC 00 64 */ lwz r5, 0x64(r28) +/* 801DC560 001D94C0 38 81 00 A0 */ addi r4, r1, 0xa0 +/* 801DC564 001D94C4 C0 5E 00 04 */ lfs f2, 4(r30) +/* 801DC568 001D94C8 38 C1 00 B0 */ addi r6, r1, 0xb0 +/* 801DC56C 001D94CC C0 E5 00 00 */ lfs f7, 0(r5) +/* 801DC570 001D94D0 38 E1 00 24 */ addi r7, r1, 0x24 +/* 801DC574 001D94D4 C0 C5 00 04 */ lfs f6, 4(r5) +/* 801DC578 001D94D8 39 21 00 14 */ addi r9, r1, 0x14 +/* 801DC57C 001D94DC C0 A5 00 08 */ lfs f5, 8(r5) +/* 801DC580 001D94E0 EC 80 01 F2 */ fmuls f4, f0, f7 +/* 801DC584 001D94E4 ED 20 01 B2 */ fmuls f9, f0, f6 +/* 801DC588 001D94E8 C0 3E 00 08 */ lfs f1, 8(r30) +/* 801DC58C 001D94EC ED 00 01 72 */ fmuls f8, f0, f5 +/* 801DC590 001D94F0 C0 02 AC D8 */ lfs f0, lbl_805AC9F8@sda21(r2) +/* 801DC594 001D94F4 D0 81 00 24 */ stfs f4, 0x24(r1) +/* 801DC598 001D94F8 38 A0 00 40 */ li r5, 0x40 +/* 801DC59C 001D94FC D1 21 00 28 */ stfs f9, 0x28(r1) +/* 801DC5A0 001D9500 39 40 00 00 */ li r10, 0 +/* 801DC5A4 001D9504 D1 01 00 2C */ stfs f8, 0x2c(r1) +/* 801DC5A8 001D9508 90 61 00 B0 */ stw r3, 0xb0(r1) +/* 801DC5AC 001D950C 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 801DC5B0 001D9510 93 E1 00 B8 */ stw r31, 0xb8(r1) +/* 801DC5B4 001D9514 D0 61 00 BC */ stfs f3, 0xbc(r1) +/* 801DC5B8 001D9518 D0 41 00 C0 */ stfs f2, 0xc0(r1) +/* 801DC5BC 001D951C D0 21 00 C4 */ stfs f1, 0xc4(r1) +/* 801DC5C0 001D9520 D0 01 00 C8 */ stfs f0, 0xc8(r1) +/* 801DC5C4 001D9524 80 7C 00 64 */ lwz r3, 0x64(r28) +/* 801DC5C8 001D9528 91 61 00 10 */ stw r11, 0x10(r1) +/* 801DC5CC 001D952C 80 63 00 10 */ lwz r3, 0x10(r3) +/* 801DC5D0 001D9530 D0 E1 00 18 */ stfs f7, 0x18(r1) +/* 801DC5D4 001D9534 38 63 01 20 */ addi r3, r3, 0x120 +/* 801DC5D8 001D9538 D0 C1 00 1C */ stfs f6, 0x1c(r1) +/* 801DC5DC 001D953C D0 A1 00 20 */ stfs f5, 0x20(r1) +/* 801DC5E0 001D9540 4B ED C9 85 */ bl "AddAuxiliaryParticleEffect__17CParticleDatabaseFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>iRC22CAuxiliaryParticleDataRC9CVector3fR13CStateManager7TAreaIdi" +/* 801DC5E4 001D9544 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 801DC5E8 001D9548 48 16 14 F9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801DC5EC 001D954C 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 801DC5F0 001D9550 83 E1 00 DC */ lwz r31, 0xdc(r1) +/* 801DC5F4 001D9554 83 C1 00 D8 */ lwz r30, 0xd8(r1) +/* 801DC5F8 001D9558 83 A1 00 D4 */ lwz r29, 0xd4(r1) +/* 801DC5FC 001D955C 83 81 00 D0 */ lwz r28, 0xd0(r1) +/* 801DC600 001D9560 7C 08 03 A6 */ mtlr r0 +/* 801DC604 001D9564 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 801DC608 001D9568 4E 80 00 20 */ blr + +.global sub_801dc60c +sub_801dc60c: +/* 801DC60C 001D956C 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 801DC610 001D9570 7C 08 02 A6 */ mflr r0 +/* 801DC614 001D9574 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 801DC618 001D9578 DB E1 00 A0 */ stfd f31, 0xa0(r1) +/* 801DC61C 001D957C F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0 +/* 801DC620 001D9580 DB C1 00 90 */ stfd f30, 0x90(r1) +/* 801DC624 001D9584 F3 C1 00 98 */ psq_st f30, 152(r1), 0, qr0 +/* 801DC628 001D9588 DB A1 00 80 */ stfd f29, 0x80(r1) +/* 801DC62C 001D958C F3 A1 00 88 */ psq_st f29, 136(r1), 0, qr0 +/* 801DC630 001D9590 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 801DC634 001D9594 93 C1 00 78 */ stw r30, 0x78(r1) +/* 801DC638 001D9598 93 A1 00 74 */ stw r29, 0x74(r1) +/* 801DC63C 001D959C 93 81 00 70 */ stw r28, 0x70(r1) +/* 801DC640 001D95A0 7C 9D 23 78 */ mr r29, r4 +/* 801DC644 001D95A4 7C 7C 1B 78 */ mr r28, r3 +/* 801DC648 001D95A8 7F A3 EB 78 */ mr r3, r29 +/* 801DC64C 001D95AC 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801DC650 001D95B0 81 9D 00 00 */ lwz r12, 0(r29) +/* 801DC654 001D95B4 3B E4 66 A0 */ addi r31, r4, skZero3f@l +/* 801DC658 001D95B8 FF A0 08 90 */ fmr f29, f1 +/* 801DC65C 001D95BC 7C BE 2B 78 */ mr r30, r5 +/* 801DC660 001D95C0 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801DC664 001D95C4 C3 FF 00 00 */ lfs f31, 0(r31) +/* 801DC668 001D95C8 C3 DF 00 04 */ lfs f30, 4(r31) +/* 801DC66C 001D95CC 7D 89 03 A6 */ mtctr r12 +/* 801DC670 001D95D0 4E 80 04 21 */ bctrl +/* 801DC674 001D95D4 28 03 00 00 */ cmplwi r3, 0 +/* 801DC678 001D95D8 41 82 00 C8 */ beq lbl_801DC740 +/* 801DC67C 001D95DC 7F A3 EB 78 */ mr r3, r29 +/* 801DC680 001D95E0 81 9D 00 00 */ lwz r12, 0(r29) +/* 801DC684 001D95E4 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801DC688 001D95E8 7D 89 03 A6 */ mtctr r12 +/* 801DC68C 001D95EC 4E 80 04 21 */ bctrl +/* 801DC690 001D95F0 80 03 00 CC */ lwz r0, 0xcc(r3) +/* 801DC694 001D95F4 2C 00 00 00 */ cmpwi r0, 0 +/* 801DC698 001D95F8 41 82 00 88 */ beq lbl_801DC720 +/* 801DC69C 001D95FC 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801DC6A0 001D9600 C0 3F 00 04 */ lfs f1, 4(r31) +/* 801DC6A4 001D9604 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 801DC6A8 001D9608 7F A3 EB 78 */ mr r3, r29 +/* 801DC6AC 001D960C C0 44 00 00 */ lfs f2, 0(r4) +/* 801DC6B0 001D9610 C0 04 00 08 */ lfs f0, 8(r4) +/* 801DC6B4 001D9614 D0 41 00 60 */ stfs f2, 0x60(r1) +/* 801DC6B8 001D9618 D0 21 00 64 */ stfs f1, 0x64(r1) +/* 801DC6BC 001D961C D0 01 00 68 */ stfs f0, 0x68(r1) +/* 801DC6C0 001D9620 C0 5D 00 60 */ lfs f2, 0x60(r29) +/* 801DC6C4 001D9624 C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 801DC6C8 001D9628 C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 801DC6CC 001D962C D0 01 00 48 */ stfs f0, 0x48(r1) +/* 801DC6D0 001D9630 D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 801DC6D4 001D9634 D0 41 00 50 */ stfs f2, 0x50(r1) +/* 801DC6D8 001D9638 81 9D 00 00 */ lwz r12, 0(r29) +/* 801DC6DC 001D963C 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801DC6E0 001D9640 7D 89 03 A6 */ mtctr r12 +/* 801DC6E4 001D9644 4E 80 04 21 */ bctrl +/* 801DC6E8 001D9648 38 81 00 48 */ addi r4, r1, 0x48 +/* 801DC6EC 001D964C 38 A1 00 60 */ addi r5, r1, 0x60 +/* 801DC6F0 001D9650 4B FE AA 0D */ bl FindClosestReachablePoint__15CPathFindSearchCFRC9CVector3fR9CVector3f +/* 801DC6F4 001D9654 2C 03 00 00 */ cmpwi r3, 0 +/* 801DC6F8 001D9658 40 82 00 48 */ bne lbl_801DC740 +/* 801DC6FC 001D965C C0 22 AC DC */ lfs f1, lbl_805AC9FC@sda21(r2) +/* 801DC700 001D9660 7F A5 EB 78 */ mr r5, r29 +/* 801DC704 001D9664 38 61 00 3C */ addi r3, r1, 0x3c +/* 801DC708 001D9668 38 9D 04 5C */ addi r4, r29, 0x45c +/* 801DC70C 001D966C 38 DD 07 D8 */ addi r6, r29, 0x7d8 +/* 801DC710 001D9670 4B F6 24 0D */ bl Arrival__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3ff +/* 801DC714 001D9674 C3 E1 00 3C */ lfs f31, 0x3c(r1) +/* 801DC718 001D9678 C3 C1 00 40 */ lfs f30, 0x40(r1) +/* 801DC71C 001D967C 48 00 00 24 */ b lbl_801DC740 +lbl_801DC720: +/* 801DC720 001D9680 FC 20 E8 90 */ fmr f1, f29 +/* 801DC724 001D9684 7F A3 EB 78 */ mr r3, r29 +/* 801DC728 001D9688 7F C4 F3 78 */ mr r4, r30 +/* 801DC72C 001D968C 38 A0 00 01 */ li r5, 1 +/* 801DC730 001D9690 48 01 9F 9D */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 801DC734 001D9694 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 801DC738 001D9698 C3 E3 00 04 */ lfs f31, 4(r3) +/* 801DC73C 001D969C C3 C3 00 08 */ lfs f30, 8(r3) +lbl_801DC740: +/* 801DC740 001D96A0 FC 20 F8 90 */ fmr f1, f31 +/* 801DC744 001D96A4 38 61 00 18 */ addi r3, r1, 0x18 +/* 801DC748 001D96A8 FC 40 F0 90 */ fmr f2, f30 +/* 801DC74C 001D96AC 48 13 7A B5 */ bl __ct__9CVector2fFff +/* 801DC750 001D96B0 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 801DC754 001D96B4 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 801DC758 001D96B8 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 801DC75C 001D96BC D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801DC760 001D96C0 C0 5D 00 60 */ lfs f2, 0x60(r29) +/* 801DC764 001D96C4 C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 801DC768 001D96C8 C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 801DC76C 001D96CC D0 01 00 54 */ stfs f0, 0x54(r1) +/* 801DC770 001D96D0 D0 21 00 58 */ stfs f1, 0x58(r1) +/* 801DC774 001D96D4 D0 41 00 5C */ stfs f2, 0x5c(r1) +/* 801DC778 001D96D8 88 1D 08 D4 */ lbz r0, 0x8d4(r29) +/* 801DC77C 001D96DC 28 00 00 00 */ cmplwi r0, 0 +/* 801DC780 001D96E0 41 82 00 1C */ beq lbl_801DC79C +/* 801DC784 001D96E4 41 82 00 60 */ beq lbl_801DC7E4 +/* 801DC788 001D96E8 38 7D 07 F0 */ addi r3, r29, 0x7f0 +/* 801DC78C 001D96EC 38 81 00 54 */ addi r4, r1, 0x54 +/* 801DC790 001D96F0 4B FE A3 A5 */ bl OnPath__15CPathFindSearchCFRC9CVector3f +/* 801DC794 001D96F4 2C 03 00 00 */ cmpwi r3, 0 +/* 801DC798 001D96F8 41 82 00 4C */ beq lbl_801DC7E4 +lbl_801DC79C: +/* 801DC79C 001D96FC 7F A4 EB 78 */ mr r4, r29 +/* 801DC7A0 001D9700 7F C5 F3 78 */ mr r5, r30 +/* 801DC7A4 001D9704 38 61 00 10 */ addi r3, r1, 0x10 +/* 801DC7A8 001D9708 4B FF E4 89 */ bl sub_801dac30 +/* 801DC7AC 001D970C C0 21 00 10 */ lfs f1, 0x10(r1) +/* 801DC7B0 001D9710 38 61 00 20 */ addi r3, r1, 0x20 +/* 801DC7B4 001D9714 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 801DC7B8 001D9718 38 8D A8 98 */ addi r4, r13, lbl_805A9458@sda21 +/* 801DC7BC 001D971C D0 21 00 20 */ stfs f1, 0x20(r1) +/* 801DC7C0 001D9720 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801DC7C4 001D9724 48 13 77 45 */ bl __eq__FRC9CVector2fRC9CVector2f +/* 801DC7C8 001D9728 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801DC7CC 001D972C 40 82 00 18 */ bne lbl_801DC7E4 +/* 801DC7D0 001D9730 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 801DC7D4 001D9734 D0 1C 00 00 */ stfs f0, 0(r28) +/* 801DC7D8 001D9738 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 801DC7DC 001D973C D0 1C 00 04 */ stfs f0, 4(r28) +/* 801DC7E0 001D9740 48 00 00 60 */ b lbl_801DC840 +lbl_801DC7E4: +/* 801DC7E4 001D9744 38 61 00 28 */ addi r3, r1, 0x28 +/* 801DC7E8 001D9748 38 8D A8 98 */ addi r4, r13, lbl_805A9458@sda21 +/* 801DC7EC 001D974C 48 13 77 1D */ bl __eq__FRC9CVector2fRC9CVector2f +/* 801DC7F0 001D9750 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801DC7F4 001D9754 41 82 00 3C */ beq lbl_801DC830 +/* 801DC7F8 001D9758 C0 22 AC DC */ lfs f1, lbl_805AC9FC@sda21(r2) +/* 801DC7FC 001D975C 7F A5 EB 78 */ mr r5, r29 +/* 801DC800 001D9760 38 61 00 30 */ addi r3, r1, 0x30 +/* 801DC804 001D9764 38 9D 04 5C */ addi r4, r29, 0x45c +/* 801DC808 001D9768 38 DD 07 D8 */ addi r6, r29, 0x7d8 +/* 801DC80C 001D976C 4B F6 23 11 */ bl Arrival__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3ff +/* 801DC810 001D9770 C0 21 00 30 */ lfs f1, 0x30(r1) +/* 801DC814 001D9774 38 61 00 08 */ addi r3, r1, 8 +/* 801DC818 001D9778 C0 41 00 34 */ lfs f2, 0x34(r1) +/* 801DC81C 001D977C 48 13 79 E5 */ bl __ct__9CVector2fFff +/* 801DC820 001D9780 C0 21 00 08 */ lfs f1, 8(r1) +/* 801DC824 001D9784 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 801DC828 001D9788 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 801DC82C 001D978C D0 01 00 2C */ stfs f0, 0x2c(r1) +lbl_801DC830: +/* 801DC830 001D9790 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 801DC834 001D9794 D0 1C 00 00 */ stfs f0, 0(r28) +/* 801DC838 001D9798 C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 801DC83C 001D979C D0 1C 00 04 */ stfs f0, 4(r28) +lbl_801DC840: +/* 801DC840 001D97A0 E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0 +/* 801DC844 001D97A4 CB E1 00 A0 */ lfd f31, 0xa0(r1) +/* 801DC848 001D97A8 E3 C1 00 98 */ psq_l f30, 152(r1), 0, qr0 +/* 801DC84C 001D97AC CB C1 00 90 */ lfd f30, 0x90(r1) +/* 801DC850 001D97B0 E3 A1 00 88 */ psq_l f29, 136(r1), 0, qr0 +/* 801DC854 001D97B4 CB A1 00 80 */ lfd f29, 0x80(r1) +/* 801DC858 001D97B8 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 801DC85C 001D97BC 83 C1 00 78 */ lwz r30, 0x78(r1) +/* 801DC860 001D97C0 83 A1 00 74 */ lwz r29, 0x74(r1) +/* 801DC864 001D97C4 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 801DC868 001D97C8 83 81 00 70 */ lwz r28, 0x70(r1) +/* 801DC86C 001D97CC 7C 08 03 A6 */ mtlr r0 +/* 801DC870 001D97D0 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 801DC874 001D97D4 4E 80 00 20 */ blr + +.global sub_801dc878 +sub_801dc878: +/* 801DC878 001D97D8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801DC87C 001D97DC 7C 08 02 A6 */ mflr r0 +/* 801DC880 001D97E0 3C A0 80 3D */ lis r5, lbl_803D1CB8@ha +/* 801DC884 001D97E4 90 01 00 24 */ stw r0, 0x24(r1) +/* 801DC888 001D97E8 38 A5 1C B8 */ addi r5, r5, lbl_803D1CB8@l +/* 801DC88C 001D97EC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801DC890 001D97F0 7C 9F 23 78 */ mr r31, r4 +/* 801DC894 001D97F4 38 85 01 96 */ addi r4, r5, 0x196 +/* 801DC898 001D97F8 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801DC89C 001D97FC 7C 7E 1B 78 */ mr r30, r3 +/* 801DC8A0 001D9800 38 61 00 08 */ addi r3, r1, 8 +/* 801DC8A4 001D9804 4B E2 84 15 */ bl string_l__4rstlFPCc +/* 801DC8A8 001D9808 7F C3 F3 78 */ mr r3, r30 +/* 801DC8AC 001D980C 4B EC 60 4D */ bl GetStateMachine__3CAiFv +/* 801DC8B0 001D9810 7C 66 1B 78 */ mr r6, r3 +/* 801DC8B4 001D9814 7F E4 FB 78 */ mr r4, r31 +/* 801DC8B8 001D9818 7F C5 F3 78 */ mr r5, r30 +/* 801DC8BC 001D981C 38 7E 03 30 */ addi r3, r30, 0x330 +/* 801DC8C0 001D9820 38 E1 00 08 */ addi r7, r1, 8 +/* 801DC8C4 001D9824 4B EA 33 41 */ bl "SetState__18CStateMachineStateFR13CStateManagerR3CAiPC13CStateMachineRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801DC8C8 001D9828 38 61 00 08 */ addi r3, r1, 8 +/* 801DC8CC 001D982C 48 16 12 15 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801DC8D0 001D9830 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801DC8D4 001D9834 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801DC8D8 001D9838 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801DC8DC 001D983C 7C 08 03 A6 */ mtlr r0 +/* 801DC8E0 001D9840 38 21 00 20 */ addi r1, r1, 0x20 +/* 801DC8E4 001D9844 4E 80 00 20 */ blr + +.global sub_801dc8e8 +sub_801dc8e8: +/* 801DC8E8 001D9848 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801DC8EC 001D984C 7C 08 02 A6 */ mflr r0 +/* 801DC8F0 001D9850 3C A0 80 3D */ lis r5, lbl_803D1CB8@ha +/* 801DC8F4 001D9854 90 01 00 24 */ stw r0, 0x24(r1) +/* 801DC8F8 001D9858 38 A5 1C B8 */ addi r5, r5, lbl_803D1CB8@l +/* 801DC8FC 001D985C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801DC900 001D9860 7C 9F 23 78 */ mr r31, r4 +/* 801DC904 001D9864 38 85 01 9B */ addi r4, r5, 0x19b +/* 801DC908 001D9868 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801DC90C 001D986C 7C 7E 1B 78 */ mr r30, r3 +/* 801DC910 001D9870 38 61 00 08 */ addi r3, r1, 8 +/* 801DC914 001D9874 4B E2 83 A5 */ bl string_l__4rstlFPCc +/* 801DC918 001D9878 7F C3 F3 78 */ mr r3, r30 +/* 801DC91C 001D987C 4B EC 5F DD */ bl GetStateMachine__3CAiFv +/* 801DC920 001D9880 7C 66 1B 78 */ mr r6, r3 +/* 801DC924 001D9884 7F E4 FB 78 */ mr r4, r31 +/* 801DC928 001D9888 7F C5 F3 78 */ mr r5, r30 +/* 801DC92C 001D988C 38 7E 03 30 */ addi r3, r30, 0x330 +/* 801DC930 001D9890 38 E1 00 08 */ addi r7, r1, 8 +/* 801DC934 001D9894 4B EA 32 D1 */ bl "SetState__18CStateMachineStateFR13CStateManagerR3CAiPC13CStateMachineRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801DC938 001D9898 38 61 00 08 */ addi r3, r1, 8 +/* 801DC93C 001D989C 48 16 11 A5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801DC940 001D98A0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801DC944 001D98A4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801DC948 001D98A8 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801DC94C 001D98AC 7C 08 03 A6 */ mtlr r0 +/* 801DC950 001D98B0 38 21 00 20 */ addi r1, r1, 0x20 +/* 801DC954 001D98B4 4E 80 00 20 */ blr + +.global sub_801dc958 +sub_801dc958: +/* 801DC958 001D98B8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801DC95C 001D98BC 7C 08 02 A6 */ mflr r0 +/* 801DC960 001D98C0 3C A0 80 3D */ lis r5, lbl_803D1CB8@ha +/* 801DC964 001D98C4 90 01 00 24 */ stw r0, 0x24(r1) +/* 801DC968 001D98C8 38 A5 1C B8 */ addi r5, r5, lbl_803D1CB8@l +/* 801DC96C 001D98CC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801DC970 001D98D0 7C 9F 23 78 */ mr r31, r4 +/* 801DC974 001D98D4 38 85 01 A6 */ addi r4, r5, 0x1a6 +/* 801DC978 001D98D8 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801DC97C 001D98DC 7C 7E 1B 78 */ mr r30, r3 +/* 801DC980 001D98E0 38 61 00 08 */ addi r3, r1, 8 +/* 801DC984 001D98E4 4B E2 83 35 */ bl string_l__4rstlFPCc +/* 801DC988 001D98E8 7F C3 F3 78 */ mr r3, r30 +/* 801DC98C 001D98EC 4B EC 5F 6D */ bl GetStateMachine__3CAiFv +/* 801DC990 001D98F0 7C 66 1B 78 */ mr r6, r3 +/* 801DC994 001D98F4 7F E4 FB 78 */ mr r4, r31 +/* 801DC998 001D98F8 7F C5 F3 78 */ mr r5, r30 +/* 801DC99C 001D98FC 38 7E 03 30 */ addi r3, r30, 0x330 +/* 801DC9A0 001D9900 38 E1 00 08 */ addi r7, r1, 8 +/* 801DC9A4 001D9904 4B EA 32 61 */ bl "SetState__18CStateMachineStateFR13CStateManagerR3CAiPC13CStateMachineRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801DC9A8 001D9908 38 61 00 08 */ addi r3, r1, 8 +/* 801DC9AC 001D990C 48 16 11 35 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801DC9B0 001D9910 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801DC9B4 001D9914 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801DC9B8 001D9918 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801DC9BC 001D991C 7C 08 03 A6 */ mtlr r0 +/* 801DC9C0 001D9920 38 21 00 20 */ addi r1, r1, 0x20 +/* 801DC9C4 001D9924 4E 80 00 20 */ blr + +.global sub_801dc9c8 +sub_801dc9c8: +/* 801DC9C8 001D9928 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801DC9CC 001D992C 7C 08 02 A6 */ mflr r0 +/* 801DC9D0 001D9930 90 01 00 24 */ stw r0, 0x24(r1) +/* 801DC9D4 001D9934 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801DC9D8 001D9938 7C 9F 23 78 */ mr r31, r4 +/* 801DC9DC 001D993C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801DC9E0 001D9940 7C 7E 1B 78 */ mr r30, r3 +/* 801DC9E4 001D9944 80 03 06 44 */ lwz r0, 0x644(r3) +/* 801DC9E8 001D9948 2C 00 00 01 */ cmpwi r0, 1 +/* 801DC9EC 001D994C 41 82 00 40 */ beq lbl_801DCA2C +/* 801DC9F0 001D9950 3C 80 80 3D */ lis r4, lbl_803D1CB8@ha +/* 801DC9F4 001D9954 38 61 00 08 */ addi r3, r1, 8 +/* 801DC9F8 001D9958 38 84 1C B8 */ addi r4, r4, lbl_803D1CB8@l +/* 801DC9FC 001D995C 38 84 01 AD */ addi r4, r4, 0x1ad +/* 801DCA00 001D9960 4B E2 82 B9 */ bl string_l__4rstlFPCc +/* 801DCA04 001D9964 7F C3 F3 78 */ mr r3, r30 +/* 801DCA08 001D9968 4B EC 5E F1 */ bl GetStateMachine__3CAiFv +/* 801DCA0C 001D996C 7C 66 1B 78 */ mr r6, r3 +/* 801DCA10 001D9970 7F E4 FB 78 */ mr r4, r31 +/* 801DCA14 001D9974 7F C5 F3 78 */ mr r5, r30 +/* 801DCA18 001D9978 38 7E 03 30 */ addi r3, r30, 0x330 +/* 801DCA1C 001D997C 38 E1 00 08 */ addi r7, r1, 8 +/* 801DCA20 001D9980 4B EA 31 E5 */ bl "SetState__18CStateMachineStateFR13CStateManagerR3CAiPC13CStateMachineRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801DCA24 001D9984 38 61 00 08 */ addi r3, r1, 8 +/* 801DCA28 001D9988 48 16 10 B9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801DCA2C: +/* 801DCA2C 001D998C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801DCA30 001D9990 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801DCA34 001D9994 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801DCA38 001D9998 7C 08 03 A6 */ mtlr r0 +/* 801DCA3C 001D999C 38 21 00 20 */ addi r1, r1, 0x20 +/* 801DCA40 001D99A0 4E 80 00 20 */ blr + +.global AggressionCheck__8CThardusFR13CStateManagerf +AggressionCheck__8CThardusFR13CStateManagerf: +/* 801DCA44 001D99A4 C0 23 03 38 */ lfs f1, 0x338(r3) +/* 801DCA48 001D99A8 C0 02 AC E8 */ lfs f0, lbl_805ACA08@sda21(r2) +/* 801DCA4C 001D99AC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801DCA50 001D99B0 7C 00 00 26 */ mfcr r0 +/* 801DCA54 001D99B4 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f +/* 801DCA58 001D99B8 4E 80 00 20 */ blr + +.global Shuffle__8CThardusFR13CStateManager9EStateMsgf +Shuffle__8CThardusFR13CStateManager9EStateMsgf: +/* 801DCA5C 001D99BC 4E 80 00 20 */ blr + +.global Enraged__8CThardusFR13CStateManager9EStateMsgf +Enraged__8CThardusFR13CStateManager9EStateMsgf: +/* 801DCA60 001D99C0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801DCA64 001D99C4 7C 08 02 A6 */ mflr r0 +/* 801DCA68 001D99C8 2C 05 00 01 */ cmpwi r5, 1 +/* 801DCA6C 001D99CC 90 01 00 24 */ stw r0, 0x24(r1) +/* 801DCA70 001D99D0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801DCA74 001D99D4 41 82 00 38 */ beq lbl_801DCAAC +/* 801DCA78 001D99D8 40 80 00 10 */ bge lbl_801DCA88 +/* 801DCA7C 001D99DC 2C 05 00 00 */ cmpwi r5, 0 +/* 801DCA80 001D99E0 40 80 00 14 */ bge lbl_801DCA94 +/* 801DCA84 001D99E4 48 00 00 F4 */ b lbl_801DCB78 +lbl_801DCA88: +/* 801DCA88 001D99E8 2C 05 00 03 */ cmpwi r5, 3 +/* 801DCA8C 001D99EC 40 80 00 EC */ bge lbl_801DCB78 +/* 801DCA90 001D99F0 48 00 00 E0 */ b lbl_801DCB70 +lbl_801DCA94: +/* 801DCA94 001D99F4 38 80 00 00 */ li r4, 0 +/* 801DCA98 001D99F8 38 00 00 01 */ li r0, 1 +/* 801DCA9C 001D99FC 90 83 05 EC */ stw r4, 0x5ec(r3) +/* 801DCAA0 001D9A00 98 03 06 88 */ stb r0, 0x688(r3) +/* 801DCAA4 001D9A04 98 03 09 08 */ stb r0, 0x908(r3) +/* 801DCAA8 001D9A08 48 00 00 D0 */ b lbl_801DCB78 +lbl_801DCAAC: +/* 801DCAAC 001D9A0C 80 03 05 EC */ lwz r0, 0x5ec(r3) +/* 801DCAB0 001D9A10 2C 00 00 01 */ cmpwi r0, 1 +/* 801DCAB4 001D9A14 41 82 00 C4 */ beq lbl_801DCB78 +/* 801DCAB8 001D9A18 40 80 00 10 */ bge lbl_801DCAC8 +/* 801DCABC 001D9A1C 2C 00 00 00 */ cmpwi r0, 0 +/* 801DCAC0 001D9A20 40 80 00 14 */ bge lbl_801DCAD4 +/* 801DCAC4 001D9A24 48 00 00 B4 */ b lbl_801DCB78 +lbl_801DCAC8: +/* 801DCAC8 001D9A28 2C 00 00 03 */ cmpwi r0, 3 +/* 801DCACC 001D9A2C 40 80 00 AC */ bge lbl_801DCB78 +/* 801DCAD0 001D9A30 48 00 00 84 */ b lbl_801DCB54 +lbl_801DCAD4: +/* 801DCAD4 001D9A34 80 C3 04 50 */ lwz r6, 0x450(r3) +/* 801DCAD8 001D9A38 80 06 02 B8 */ lwz r0, 0x2b8(r6) +/* 801DCADC 001D9A3C 2C 00 00 10 */ cmpwi r0, 0x10 +/* 801DCAE0 001D9A40 40 82 00 10 */ bne lbl_801DCAF0 +/* 801DCAE4 001D9A44 38 00 00 02 */ li r0, 2 +/* 801DCAE8 001D9A48 90 03 05 EC */ stw r0, 0x5ec(r3) +/* 801DCAEC 001D9A4C 48 00 00 8C */ b lbl_801DCB78 +lbl_801DCAF0: +/* 801DCAF0 001D9A50 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 801DCAF4 001D9A54 3C 60 80 3E */ lis r3, lbl_803DAA14@ha +/* 801DCAF8 001D9A58 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l +/* 801DCAFC 001D9A5C 38 80 00 12 */ li r4, 0x12 +/* 801DCB00 001D9A60 90 01 00 08 */ stw r0, 8(r1) +/* 801DCB04 001D9A64 38 A3 AA 14 */ addi r5, r3, lbl_803DAA14@l +/* 801DCB08 001D9A68 38 00 00 00 */ li r0, 0 +/* 801DCB0C 001D9A6C 3B E6 00 04 */ addi r31, r6, 4 +/* 801DCB10 001D9A70 90 81 00 0C */ stw r4, 0xc(r1) +/* 801DCB14 001D9A74 7F E3 FB 78 */ mr r3, r31 +/* 801DCB18 001D9A78 38 80 00 12 */ li r4, 0x12 +/* 801DCB1C 001D9A7C 90 A1 00 08 */ stw r5, 8(r1) +/* 801DCB20 001D9A80 90 01 00 10 */ stw r0, 0x10(r1) +/* 801DCB24 001D9A84 4B F5 49 15 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801DCB28 001D9A88 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801DCB2C 001D9A8C 3C 60 80 3E */ lis r3, lbl_803DAA14@ha +/* 801DCB30 001D9A90 38 83 AA 14 */ addi r4, r3, lbl_803DAA14@l +/* 801DCB34 001D9A94 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801DCB38 001D9A98 90 1F 02 14 */ stw r0, 0x214(r31) +/* 801DCB3C 001D9A9C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801DCB40 001D9AA0 80 61 00 10 */ lwz r3, 0x10(r1) +/* 801DCB44 001D9AA4 90 81 00 08 */ stw r4, 8(r1) +/* 801DCB48 001D9AA8 90 7F 02 18 */ stw r3, 0x218(r31) +/* 801DCB4C 001D9AAC 90 01 00 08 */ stw r0, 8(r1) +/* 801DCB50 001D9AB0 48 00 00 28 */ b lbl_801DCB78 +lbl_801DCB54: +/* 801DCB54 001D9AB4 80 83 04 50 */ lwz r4, 0x450(r3) +/* 801DCB58 001D9AB8 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 801DCB5C 001D9ABC 2C 00 00 10 */ cmpwi r0, 0x10 +/* 801DCB60 001D9AC0 41 82 00 18 */ beq lbl_801DCB78 +/* 801DCB64 001D9AC4 38 00 00 03 */ li r0, 3 +/* 801DCB68 001D9AC8 90 03 05 EC */ stw r0, 0x5ec(r3) +/* 801DCB6C 001D9ACC 48 00 00 0C */ b lbl_801DCB78 +lbl_801DCB70: +/* 801DCB70 001D9AD0 38 00 00 00 */ li r0, 0 +/* 801DCB74 001D9AD4 98 03 09 08 */ stb r0, 0x908(r3) +lbl_801DCB78: +/* 801DCB78 001D9AD8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801DCB7C 001D9ADC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801DCB80 001D9AE0 7C 08 03 A6 */ mtlr r0 +/* 801DCB84 001D9AE4 38 21 00 20 */ addi r1, r1, 0x20 +/* 801DCB88 001D9AE8 4E 80 00 20 */ blr + +.global Growth__8CThardusFR13CStateManager9EStateMsgf +Growth__8CThardusFR13CStateManager9EStateMsgf: +/* 801DCB8C 001D9AEC 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801DCB90 001D9AF0 7C 08 02 A6 */ mflr r0 +/* 801DCB94 001D9AF4 2C 05 00 01 */ cmpwi r5, 1 +/* 801DCB98 001D9AF8 90 01 00 54 */ stw r0, 0x54(r1) +/* 801DCB9C 001D9AFC 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801DCBA0 001D9B00 7C 9F 23 78 */ mr r31, r4 +/* 801DCBA4 001D9B04 93 C1 00 48 */ stw r30, 0x48(r1) +/* 801DCBA8 001D9B08 7C 7E 1B 78 */ mr r30, r3 +/* 801DCBAC 001D9B0C 41 82 00 58 */ beq lbl_801DCC04 +/* 801DCBB0 001D9B10 40 80 00 10 */ bge lbl_801DCBC0 +/* 801DCBB4 001D9B14 2C 05 00 00 */ cmpwi r5, 0 +/* 801DCBB8 001D9B18 40 80 00 14 */ bge lbl_801DCBCC +/* 801DCBBC 001D9B1C 48 00 01 A0 */ b lbl_801DCD5C +lbl_801DCBC0: +/* 801DCBC0 001D9B20 2C 05 00 03 */ cmpwi r5, 3 +/* 801DCBC4 001D9B24 40 80 01 98 */ bge lbl_801DCD5C +/* 801DCBC8 001D9B28 48 00 01 10 */ b lbl_801DCCD8 +lbl_801DCBCC: +/* 801DCBCC 001D9B2C 38 00 00 00 */ li r0, 0 +/* 801DCBD0 001D9B30 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 801DCBD4 001D9B34 90 1E 05 EC */ stw r0, 0x5ec(r30) +/* 801DCBD8 001D9B38 38 61 00 24 */ addi r3, r1, 0x24 +/* 801DCBDC 001D9B3C 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 801DCBE0 001D9B40 38 80 07 AD */ li r4, 0x7ad +/* 801DCBE4 001D9B44 38 A0 00 7F */ li r5, 0x7f +/* 801DCBE8 001D9B48 38 C0 00 40 */ li r6, 0x40 +/* 801DCBEC 001D9B4C 38 E0 00 00 */ li r7, 0 +/* 801DCBF0 001D9B50 39 20 00 01 */ li r9, 1 +/* 801DCBF4 001D9B54 48 10 D1 81 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 801DCBF8 001D9B58 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801DCBFC 001D9B5C 90 1E 09 04 */ stw r0, 0x904(r30) +/* 801DCC00 001D9B60 48 00 01 5C */ b lbl_801DCD5C +lbl_801DCC04: +/* 801DCC04 001D9B64 80 1E 05 EC */ lwz r0, 0x5ec(r30) +/* 801DCC08 001D9B68 2C 00 00 01 */ cmpwi r0, 1 +/* 801DCC0C 001D9B6C 41 82 01 50 */ beq lbl_801DCD5C +/* 801DCC10 001D9B70 40 80 00 10 */ bge lbl_801DCC20 +/* 801DCC14 001D9B74 2C 00 00 00 */ cmpwi r0, 0 +/* 801DCC18 001D9B78 40 80 00 14 */ bge lbl_801DCC2C +/* 801DCC1C 001D9B7C 48 00 01 40 */ b lbl_801DCD5C +lbl_801DCC20: +/* 801DCC20 001D9B80 2C 00 00 03 */ cmpwi r0, 3 +/* 801DCC24 001D9B84 40 80 01 38 */ bge lbl_801DCD5C +/* 801DCC28 001D9B88 48 00 00 94 */ b lbl_801DCCBC +lbl_801DCC2C: +/* 801DCC2C 001D9B8C 80 FE 04 50 */ lwz r7, 0x450(r30) +/* 801DCC30 001D9B90 80 07 02 B8 */ lwz r0, 0x2b8(r7) +/* 801DCC34 001D9B94 2C 00 00 03 */ cmpwi r0, 3 +/* 801DCC38 001D9B98 40 82 00 10 */ bne lbl_801DCC48 +/* 801DCC3C 001D9B9C 38 00 00 02 */ li r0, 2 +/* 801DCC40 001D9BA0 90 1E 05 EC */ stw r0, 0x5ec(r30) +/* 801DCC44 001D9BA4 48 00 01 18 */ b lbl_801DCD5C +lbl_801DCC48: +/* 801DCC48 001D9BA8 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 801DCC4C 001D9BAC 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha +/* 801DCC50 001D9BB0 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l +/* 801DCC54 001D9BB4 38 80 00 01 */ li r4, 1 +/* 801DCC58 001D9BB8 90 01 00 34 */ stw r0, 0x34(r1) +/* 801DCC5C 001D9BBC 38 C3 A9 E4 */ addi r6, r3, lbl_803DA9E4@l +/* 801DCC60 001D9BC0 38 A0 00 00 */ li r5, 0 +/* 801DCC64 001D9BC4 38 00 00 02 */ li r0, 2 +/* 801DCC68 001D9BC8 3B E7 00 04 */ addi r31, r7, 4 +/* 801DCC6C 001D9BCC 90 81 00 38 */ stw r4, 0x38(r1) +/* 801DCC70 001D9BD0 7F E3 FB 78 */ mr r3, r31 +/* 801DCC74 001D9BD4 38 80 00 01 */ li r4, 1 +/* 801DCC78 001D9BD8 90 C1 00 34 */ stw r6, 0x34(r1) +/* 801DCC7C 001D9BDC 90 A1 00 3C */ stw r5, 0x3c(r1) +/* 801DCC80 001D9BE0 90 01 00 40 */ stw r0, 0x40(r1) +/* 801DCC84 001D9BE4 4B F5 47 B5 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801DCC88 001D9BE8 80 01 00 38 */ lwz r0, 0x38(r1) +/* 801DCC8C 001D9BEC 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha +/* 801DCC90 001D9BF0 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l +/* 801DCC94 001D9BF4 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801DCC98 001D9BF8 90 1F 00 C8 */ stw r0, 0xc8(r31) +/* 801DCC9C 001D9BFC 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801DCCA0 001D9C00 80 A1 00 3C */ lwz r5, 0x3c(r1) +/* 801DCCA4 001D9C04 90 81 00 34 */ stw r4, 0x34(r1) +/* 801DCCA8 001D9C08 80 61 00 40 */ lwz r3, 0x40(r1) +/* 801DCCAC 001D9C0C 90 BF 00 CC */ stw r5, 0xcc(r31) +/* 801DCCB0 001D9C10 90 7F 00 D0 */ stw r3, 0xd0(r31) +/* 801DCCB4 001D9C14 90 01 00 34 */ stw r0, 0x34(r1) +/* 801DCCB8 001D9C18 48 00 00 A4 */ b lbl_801DCD5C +lbl_801DCCBC: +/* 801DCCBC 001D9C1C 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801DCCC0 001D9C20 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801DCCC4 001D9C24 2C 00 00 03 */ cmpwi r0, 3 +/* 801DCCC8 001D9C28 41 82 00 94 */ beq lbl_801DCD5C +/* 801DCCCC 001D9C2C 38 00 00 03 */ li r0, 3 +/* 801DCCD0 001D9C30 90 1E 05 EC */ stw r0, 0x5ec(r30) +/* 801DCCD4 001D9C34 48 00 00 88 */ b lbl_801DCD5C +lbl_801DCCD8: +/* 801DCCD8 001D9C38 A0 1E 06 4C */ lhz r0, 0x64c(r30) +/* 801DCCDC 001D9C3C 7F E3 FB 78 */ mr r3, r31 +/* 801DCCE0 001D9C40 38 81 00 18 */ addi r4, r1, 0x18 +/* 801DCCE4 001D9C44 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801DCCE8 001D9C48 4B E6 F8 8D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801DCCEC 001D9C4C 7C 64 1B 78 */ mr r4, r3 +/* 801DCCF0 001D9C50 38 61 00 2C */ addi r3, r1, 0x2c +/* 801DCCF4 001D9C54 4B EC DA 25 */ bl "__ct__32TCastToPtr<18CScriptDistanceFog>FP7CEntity" +/* 801DCCF8 001D9C58 80 C3 00 04 */ lwz r6, 4(r3) +/* 801DCCFC 001D9C5C 7F E4 FB 78 */ mr r4, r31 +/* 801DCD00 001D9C60 38 61 00 20 */ addi r3, r1, 0x20 +/* 801DCD04 001D9C64 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801DCD08 001D9C68 A0 06 00 08 */ lhz r0, 8(r6) +/* 801DCD0C 001D9C6C B0 01 00 10 */ sth r0, 0x10(r1) +/* 801DCD10 001D9C70 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801DCD14 001D9C74 4B E6 B1 AD */ bl GetEditorIdForUniqueId__13CStateManagerCF9TUniqueId +/* 801DCD18 001D9C78 81 01 00 20 */ lwz r8, 0x20(r1) +/* 801DCD1C 001D9C7C 7F E3 FB 78 */ mr r3, r31 +/* 801DCD20 001D9C80 38 81 00 0C */ addi r4, r1, 0xc +/* 801DCD24 001D9C84 38 A1 00 1C */ addi r5, r1, 0x1c +/* 801DCD28 001D9C88 91 01 00 1C */ stw r8, 0x1c(r1) +/* 801DCD2C 001D9C8C 38 C0 00 01 */ li r6, 1 +/* 801DCD30 001D9C90 38 E0 FF FF */ li r7, -1 +/* 801DCD34 001D9C94 A0 1E 00 08 */ lhz r0, 8(r30) +/* 801DCD38 001D9C98 91 01 00 28 */ stw r8, 0x28(r1) +/* 801DCD3C 001D9C9C B0 01 00 08 */ sth r0, 8(r1) +/* 801DCD40 001D9CA0 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801DCD44 001D9CA4 4B E6 AD F9 */ bl SendScriptMsg__13CStateManagerF9TUniqueId9TEditorId20EScriptObjectMessage18EScriptObjectState +/* 801DCD48 001D9CA8 7F C3 F3 78 */ mr r3, r30 +/* 801DCD4C 001D9CAC 7F E5 FB 78 */ mr r5, r31 +/* 801DCD50 001D9CB0 38 80 00 12 */ li r4, 0x12 +/* 801DCD54 001D9CB4 38 C0 FF FF */ li r6, -1 +/* 801DCD58 001D9CB8 4B E7 43 69 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +lbl_801DCD5C: +/* 801DCD5C 001D9CBC 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801DCD60 001D9CC0 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801DCD64 001D9CC4 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 801DCD68 001D9CC8 7C 08 03 A6 */ mtlr r0 +/* 801DCD6C 001D9CCC 38 21 00 50 */ addi r1, r1, 0x50 +/* 801DCD70 001D9CD0 4E 80 00 20 */ blr + +.global Flinch__8CThardusFR13CStateManager9EStateMsgf +Flinch__8CThardusFR13CStateManager9EStateMsgf: +/* 801DCD74 001D9CD4 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801DCD78 001D9CD8 7C 08 02 A6 */ mflr r0 +/* 801DCD7C 001D9CDC 2C 05 00 01 */ cmpwi r5, 1 +/* 801DCD80 001D9CE0 90 01 00 44 */ stw r0, 0x44(r1) +/* 801DCD84 001D9CE4 BF 61 00 2C */ stmw r27, 0x2c(r1) +/* 801DCD88 001D9CE8 7C 7F 1B 78 */ mr r31, r3 +/* 801DCD8C 001D9CEC 7C 9B 23 78 */ mr r27, r4 +/* 801DCD90 001D9CF0 41 82 00 A8 */ beq lbl_801DCE38 +/* 801DCD94 001D9CF4 40 80 01 FC */ bge lbl_801DCF90 +/* 801DCD98 001D9CF8 2C 05 00 00 */ cmpwi r5, 0 +/* 801DCD9C 001D9CFC 40 80 00 0C */ bge lbl_801DCDA8 +/* 801DCDA0 001D9D00 48 00 01 F0 */ b lbl_801DCF90 +/* 801DCDA4 001D9D04 48 00 01 EC */ b lbl_801DCF90 +lbl_801DCDA8: +/* 801DCDA8 001D9D08 3B C0 00 00 */ li r30, 0 +/* 801DCDAC 001D9D0C 3B 80 00 00 */ li r28, 0 +/* 801DCDB0 001D9D10 93 DF 05 EC */ stw r30, 0x5ec(r31) +/* 801DCDB4 001D9D14 83 BF 07 9C */ lwz r29, 0x79c(r31) +/* 801DCDB8 001D9D18 48 00 00 44 */ b lbl_801DCDFC +lbl_801DCDBC: +/* 801DCDBC 001D9D1C 80 BF 07 A4 */ lwz r5, 0x7a4(r31) +/* 801DCDC0 001D9D20 7F 63 DB 78 */ mr r3, r27 +/* 801DCDC4 001D9D24 38 81 00 08 */ addi r4, r1, 8 +/* 801DCDC8 001D9D28 7C 05 F2 2E */ lhzx r0, r5, r30 +/* 801DCDCC 001D9D2C B0 01 00 08 */ sth r0, 8(r1) +/* 801DCDD0 001D9D30 4B E6 F7 A5 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801DCDD4 001D9D34 7C 64 1B 78 */ mr r4, r3 +/* 801DCDD8 001D9D38 38 61 00 0C */ addi r3, r1, 0xc +/* 801DCDDC 001D9D3C 4B EC 85 C1 */ bl sub_800a539c +/* 801DCDE0 001D9D40 4B EC 85 91 */ bl "CastTo<22CThardusRockProjectile>__10CPatternedFP7CEntity" +/* 801DCDE4 001D9D44 28 03 00 00 */ cmplwi r3, 0 +/* 801DCDE8 001D9D48 41 82 00 0C */ beq lbl_801DCDF4 +/* 801DCDEC 001D9D4C 7F 64 DB 78 */ mr r4, r27 +/* 801DCDF0 001D9D50 48 02 6F 69 */ bl sub_80203d58 +lbl_801DCDF4: +/* 801DCDF4 001D9D54 3B 9C 00 01 */ addi r28, r28, 1 +/* 801DCDF8 001D9D58 3B DE 00 02 */ addi r30, r30, 2 +lbl_801DCDFC: +/* 801DCDFC 001D9D5C 7C 1C E8 40 */ cmplw r28, r29 +/* 801DCE00 001D9D60 41 80 FF BC */ blt lbl_801DCDBC +/* 801DCE04 001D9D64 38 C0 00 01 */ li r6, 1 +/* 801DCE08 001D9D68 38 00 00 00 */ li r0, 0 +/* 801DCE0C 001D9D6C 98 DF 09 3B */ stb r6, 0x93b(r31) +/* 801DCE10 001D9D70 7F E3 FB 78 */ mr r3, r31 +/* 801DCE14 001D9D74 7F 65 DB 78 */ mr r5, r27 +/* 801DCE18 001D9D78 38 80 FF FF */ li r4, -1 +/* 801DCE1C 001D9D7C 98 DF 09 3D */ stb r6, 0x93d(r31) +/* 801DCE20 001D9D80 98 DF 09 09 */ stb r6, 0x909(r31) +/* 801DCE24 001D9D84 98 1F 09 3C */ stb r0, 0x93c(r31) +/* 801DCE28 001D9D88 4B FF E7 39 */ bl sub_801db560 +/* 801DCE2C 001D9D8C 38 00 00 01 */ li r0, 1 +/* 801DCE30 001D9D90 98 1F 09 4D */ stb r0, 0x94d(r31) +/* 801DCE34 001D9D94 48 00 01 5C */ b lbl_801DCF90 +lbl_801DCE38: +/* 801DCE38 001D9D98 80 1F 06 48 */ lwz r0, 0x648(r31) +/* 801DCE3C 001D9D9C 38 E0 FF FF */ li r7, -1 +/* 801DCE40 001D9DA0 2C 00 00 04 */ cmpwi r0, 4 +/* 801DCE44 001D9DA4 41 82 00 48 */ beq lbl_801DCE8C +/* 801DCE48 001D9DA8 40 80 00 1C */ bge lbl_801DCE64 +/* 801DCE4C 001D9DAC 2C 00 00 02 */ cmpwi r0, 2 +/* 801DCE50 001D9DB0 41 82 00 2C */ beq lbl_801DCE7C +/* 801DCE54 001D9DB4 40 80 00 30 */ bge lbl_801DCE84 +/* 801DCE58 001D9DB8 2C 00 00 01 */ cmpwi r0, 1 +/* 801DCE5C 001D9DBC 40 80 00 18 */ bge lbl_801DCE74 +/* 801DCE60 001D9DC0 48 00 00 40 */ b lbl_801DCEA0 +lbl_801DCE64: +/* 801DCE64 001D9DC4 2C 00 00 06 */ cmpwi r0, 6 +/* 801DCE68 001D9DC8 41 82 00 34 */ beq lbl_801DCE9C +/* 801DCE6C 001D9DCC 40 80 00 34 */ bge lbl_801DCEA0 +/* 801DCE70 001D9DD0 48 00 00 24 */ b lbl_801DCE94 +lbl_801DCE74: +/* 801DCE74 001D9DD4 38 E0 00 00 */ li r7, 0 +/* 801DCE78 001D9DD8 48 00 00 28 */ b lbl_801DCEA0 +lbl_801DCE7C: +/* 801DCE7C 001D9DDC 38 E0 00 01 */ li r7, 1 +/* 801DCE80 001D9DE0 48 00 00 20 */ b lbl_801DCEA0 +lbl_801DCE84: +/* 801DCE84 001D9DE4 38 E0 00 02 */ li r7, 2 +/* 801DCE88 001D9DE8 48 00 00 18 */ b lbl_801DCEA0 +lbl_801DCE8C: +/* 801DCE8C 001D9DEC 38 E0 00 03 */ li r7, 3 +/* 801DCE90 001D9DF0 48 00 00 10 */ b lbl_801DCEA0 +lbl_801DCE94: +/* 801DCE94 001D9DF4 38 E0 00 04 */ li r7, 4 +/* 801DCE98 001D9DF8 48 00 00 08 */ b lbl_801DCEA0 +lbl_801DCE9C: +/* 801DCE9C 001D9DFC 38 E0 00 05 */ li r7, 5 +lbl_801DCEA0: +/* 801DCEA0 001D9E00 80 1F 05 EC */ lwz r0, 0x5ec(r31) +/* 801DCEA4 001D9E04 2C 00 00 01 */ cmpwi r0, 1 +/* 801DCEA8 001D9E08 41 82 00 E8 */ beq lbl_801DCF90 +/* 801DCEAC 001D9E0C 40 80 00 10 */ bge lbl_801DCEBC +/* 801DCEB0 001D9E10 2C 00 00 00 */ cmpwi r0, 0 +/* 801DCEB4 001D9E14 40 80 00 14 */ bge lbl_801DCEC8 +/* 801DCEB8 001D9E18 48 00 00 D8 */ b lbl_801DCF90 +lbl_801DCEBC: +/* 801DCEBC 001D9E1C 2C 00 00 03 */ cmpwi r0, 3 +/* 801DCEC0 001D9E20 40 80 00 D0 */ bge lbl_801DCF90 +/* 801DCEC4 001D9E24 48 00 00 B4 */ b lbl_801DCF78 +lbl_801DCEC8: +/* 801DCEC8 001D9E28 80 DF 04 50 */ lwz r6, 0x450(r31) +/* 801DCECC 001D9E2C 80 06 02 B8 */ lwz r0, 0x2b8(r6) +/* 801DCED0 001D9E30 2C 00 00 06 */ cmpwi r0, 6 +/* 801DCED4 001D9E34 40 82 00 10 */ bne lbl_801DCEE4 +/* 801DCED8 001D9E38 38 00 00 02 */ li r0, 2 +/* 801DCEDC 001D9E3C 90 1F 05 EC */ stw r0, 0x5ec(r31) +/* 801DCEE0 001D9E40 48 00 00 B0 */ b lbl_801DCF90 +lbl_801DCEE4: +/* 801DCEE4 001D9E44 3C A0 80 3E */ lis r5, lbl_803DAA68@ha +/* 801DCEE8 001D9E48 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801DCEEC 001D9E4C C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) +/* 801DCEF0 001D9E50 38 05 AA 68 */ addi r0, r5, lbl_803DAA68@l +/* 801DCEF4 001D9E54 3C 80 80 3E */ lis r4, lbl_803DAA44@ha +/* 801DCEF8 001D9E58 90 01 00 10 */ stw r0, 0x10(r1) +/* 801DCEFC 001D9E5C 38 04 AA 44 */ addi r0, r4, lbl_803DAA44@l +/* 801DCF00 001D9E60 C0 23 00 04 */ lfs f1, 4(r3) +/* 801DCF04 001D9E64 C0 03 00 08 */ lfs f0, 8(r3) +/* 801DCF08 001D9E68 38 A0 00 04 */ li r5, 4 +/* 801DCF0C 001D9E6C 3B C6 00 04 */ addi r30, r6, 4 +/* 801DCF10 001D9E70 90 A1 00 14 */ stw r5, 0x14(r1) +/* 801DCF14 001D9E74 7F C3 F3 78 */ mr r3, r30 +/* 801DCF18 001D9E78 38 80 00 04 */ li r4, 4 +/* 801DCF1C 001D9E7C 90 01 00 10 */ stw r0, 0x10(r1) +/* 801DCF20 001D9E80 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 801DCF24 001D9E84 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 801DCF28 001D9E88 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801DCF2C 001D9E8C 90 E1 00 24 */ stw r7, 0x24(r1) +/* 801DCF30 001D9E90 4B F5 45 09 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801DCF34 001D9E94 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801DCF38 001D9E98 3C 60 80 3E */ lis r3, lbl_803DAA44@ha +/* 801DCF3C 001D9E9C 38 83 AA 44 */ addi r4, r3, lbl_803DAA44@l +/* 801DCF40 001D9EA0 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801DCF44 001D9EA4 90 1E 00 F8 */ stw r0, 0xf8(r30) +/* 801DCF48 001D9EA8 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801DCF4C 001D9EAC 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 801DCF50 001D9EB0 80 61 00 1C */ lwz r3, 0x1c(r1) +/* 801DCF54 001D9EB4 90 BE 00 FC */ stw r5, 0xfc(r30) +/* 801DCF58 001D9EB8 80 A1 00 20 */ lwz r5, 0x20(r1) +/* 801DCF5C 001D9EBC 90 7E 01 00 */ stw r3, 0x100(r30) +/* 801DCF60 001D9EC0 80 61 00 24 */ lwz r3, 0x24(r1) +/* 801DCF64 001D9EC4 90 BE 01 04 */ stw r5, 0x104(r30) +/* 801DCF68 001D9EC8 90 81 00 10 */ stw r4, 0x10(r1) +/* 801DCF6C 001D9ECC 90 7E 01 08 */ stw r3, 0x108(r30) +/* 801DCF70 001D9ED0 90 01 00 10 */ stw r0, 0x10(r1) +/* 801DCF74 001D9ED4 48 00 00 1C */ b lbl_801DCF90 +lbl_801DCF78: +/* 801DCF78 001D9ED8 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801DCF7C 001D9EDC 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801DCF80 001D9EE0 2C 00 00 06 */ cmpwi r0, 6 +/* 801DCF84 001D9EE4 41 82 00 0C */ beq lbl_801DCF90 +/* 801DCF88 001D9EE8 38 00 00 03 */ li r0, 3 +/* 801DCF8C 001D9EEC 90 1F 05 EC */ stw r0, 0x5ec(r31) +lbl_801DCF90: +/* 801DCF90 001D9EF0 BB 61 00 2C */ lmw r27, 0x2c(r1) +/* 801DCF94 001D9EF4 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801DCF98 001D9EF8 7C 08 03 A6 */ mtlr r0 +/* 801DCF9C 001D9EFC 38 21 00 40 */ addi r1, r1, 0x40 +/* 801DCFA0 001D9F00 4E 80 00 20 */ blr + +.global sub_801dcfa4 +sub_801dcfa4: +/* 801DCFA4 001D9F04 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 801DCFA8 001D9F08 7C 08 02 A6 */ mflr r0 +/* 801DCFAC 001D9F0C 90 01 00 74 */ stw r0, 0x74(r1) +/* 801DCFB0 001D9F10 DB E1 00 60 */ stfd f31, 0x60(r1) +/* 801DCFB4 001D9F14 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 801DCFB8 001D9F18 BE E1 00 3C */ stmw r23, 0x3c(r1) +/* 801DCFBC 001D9F1C 7C 7A 1B 78 */ mr r26, r3 +/* 801DCFC0 001D9F20 7C 9B 23 78 */ mr r27, r4 +/* 801DCFC4 001D9F24 80 63 05 F0 */ lwz r3, 0x5f0(r3) +/* 801DCFC8 001D9F28 4B FC A2 81 */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 801DCFCC 001D9F2C 7C 7F 1B 78 */ mr r31, r3 +/* 801DCFD0 001D9F30 3B A0 00 00 */ li r29, 0 +/* 801DCFD4 001D9F34 3B 20 00 00 */ li r25, 0 +/* 801DCFD8 001D9F38 3B 00 00 00 */ li r24, 0 +/* 801DCFDC 001D9F3C 48 00 02 EC */ b lbl_801DD2C8 +lbl_801DCFE0: +/* 801DCFE0 001D9F40 80 7A 05 F0 */ lwz r3, 0x5f0(r26) +/* 801DCFE4 001D9F44 7F A4 EB 78 */ mr r4, r29 +/* 801DCFE8 001D9F48 4B FC A2 51 */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 801DCFEC 001D9F4C A0 03 00 3C */ lhz r0, 0x3c(r3) +/* 801DCFF0 001D9F50 7F 63 DB 78 */ mr r3, r27 +/* 801DCFF4 001D9F54 38 81 00 18 */ addi r4, r1, 0x18 +/* 801DCFF8 001D9F58 B0 01 00 20 */ sth r0, 0x20(r1) +/* 801DCFFC 001D9F5C B0 01 00 18 */ sth r0, 0x18(r1) +/* 801DD000 001D9F60 4B E6 F5 75 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801DD004 001D9F64 7C 64 1B 78 */ mr r4, r3 +/* 801DD008 001D9F68 38 61 00 24 */ addi r3, r1, 0x24 +/* 801DD00C 001D9F6C 4B ED 23 41 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801DD010 001D9F70 83 C3 00 04 */ lwz r30, 4(r3) +/* 801DD014 001D9F74 28 1E 00 00 */ cmplwi r30, 0 +/* 801DD018 001D9F78 41 82 02 A4 */ beq lbl_801DD2BC +/* 801DD01C 001D9F7C 88 1E 00 30 */ lbz r0, 0x30(r30) +/* 801DD020 001D9F80 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801DD024 001D9F84 41 82 02 98 */ beq lbl_801DD2BC +/* 801DD028 001D9F88 80 BA 06 1C */ lwz r5, 0x61c(r26) +/* 801DD02C 001D9F8C 7F 63 DB 78 */ mr r3, r27 +/* 801DD030 001D9F90 38 81 00 14 */ addi r4, r1, 0x14 +/* 801DD034 001D9F94 7C 05 C2 2E */ lhzx r0, r5, r24 +/* 801DD038 001D9F98 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 801DD03C 001D9F9C B0 01 00 14 */ sth r0, 0x14(r1) +/* 801DD040 001D9FA0 4B E6 F5 35 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801DD044 001D9FA4 7C 7C 1B 79 */ or. r28, r3, r3 +/* 801DD048 001D9FA8 41 82 02 74 */ beq lbl_801DD2BC +/* 801DD04C 001D9FAC 88 1A 09 09 */ lbz r0, 0x909(r26) +/* 801DD050 001D9FB0 28 00 00 00 */ cmplwi r0, 0 +/* 801DD054 001D9FB4 41 82 00 30 */ beq lbl_801DD084 +/* 801DD058 001D9FB8 7F C3 F3 78 */ mr r3, r30 +/* 801DD05C 001D9FBC 80 BA 09 18 */ lwz r5, 0x918(r26) +/* 801DD060 001D9FC0 81 9E 00 00 */ lwz r12, 0(r30) +/* 801DD064 001D9FC4 7F 64 DB 78 */ mr r4, r27 +/* 801DD068 001D9FC8 7F E5 CC 2E */ lfsx f31, r5, r25 +/* 801DD06C 001D9FCC 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801DD070 001D9FD0 7D 89 03 A6 */ mtctr r12 +/* 801DD074 001D9FD4 4E 80 04 21 */ bctrl +/* 801DD078 001D9FD8 D3 E3 00 00 */ stfs f31, 0(r3) +/* 801DD07C 001D9FDC C0 02 AC DC */ lfs f0, lbl_805AC9FC@sda21(r2) +/* 801DD080 001D9FE0 D0 03 00 04 */ stfs f0, 4(r3) +lbl_801DD084: +/* 801DD084 001D9FE4 80 1A 06 48 */ lwz r0, 0x648(r26) +/* 801DD088 001D9FE8 7C 1D 00 40 */ cmplw r29, r0 +/* 801DD08C 001D9FEC 40 82 00 10 */ bne lbl_801DD09C +/* 801DD090 001D9FF0 88 1A 09 3D */ lbz r0, 0x93d(r26) +/* 801DD094 001D9FF4 28 00 00 00 */ cmplwi r0, 0 +/* 801DD098 001D9FF8 41 82 00 20 */ beq lbl_801DD0B8 +lbl_801DD09C: +/* 801DD09C 001D9FFC 3C 80 80 57 */ lis r4, lbl_8056D718@ha +/* 801DD0A0 001DA000 7F C3 F3 78 */ mr r3, r30 +/* 801DD0A4 001DA004 38 84 D7 18 */ addi r4, r4, lbl_8056D718@l +/* 801DD0A8 001DA008 4B FC BA F1 */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability +/* 801DD0AC 001DA00C C0 02 AC DC */ lfs f0, lbl_805AC9FC@sda21(r2) +/* 801DD0B0 001DA010 D0 1C 03 2C */ stfs f0, 0x32c(r28) +/* 801DD0B4 001DA014 48 00 00 2C */ b lbl_801DD0E0 +lbl_801DD0B8: +/* 801DD0B8 001DA018 7F 83 E3 78 */ mr r3, r28 +/* 801DD0BC 001DA01C 81 9C 00 00 */ lwz r12, 0(r28) +/* 801DD0C0 001DA020 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 801DD0C4 001DA024 7D 89 03 A6 */ mtctr r12 +/* 801DD0C8 001DA028 4E 80 04 21 */ bctrl +/* 801DD0CC 001DA02C 7C 64 1B 78 */ mr r4, r3 +/* 801DD0D0 001DA030 7F C3 F3 78 */ mr r3, r30 +/* 801DD0D4 001DA034 4B FC BA C5 */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability +/* 801DD0D8 001DA038 C0 02 AD 14 */ lfs f0, lbl_805ACA34@sda21(r2) +/* 801DD0DC 001DA03C D0 1C 03 2C */ stfs f0, 0x32c(r28) +lbl_801DD0E0: +/* 801DD0E0 001DA040 7F C3 F3 78 */ mr r3, r30 +/* 801DD0E4 001DA044 7F 64 DB 78 */ mr r4, r27 +/* 801DD0E8 001DA048 81 9E 00 00 */ lwz r12, 0(r30) +/* 801DD0EC 001DA04C 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801DD0F0 001DA050 7D 89 03 A6 */ mtctr r12 +/* 801DD0F4 001DA054 4E 80 04 21 */ bctrl +/* 801DD0F8 001DA058 7C 77 1B 79 */ or. r23, r3, r3 +/* 801DD0FC 001DA05C 41 82 01 C0 */ beq lbl_801DD2BC +/* 801DD100 001DA060 C0 37 00 00 */ lfs f1, 0(r23) +/* 801DD104 001DA064 C0 02 AC DC */ lfs f0, lbl_805AC9FC@sda21(r2) +/* 801DD108 001DA068 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801DD10C 001DA06C 4C 40 13 82 */ cror 2, 0, 2 +/* 801DD110 001DA070 40 82 01 6C */ bne lbl_801DD27C +/* 801DD114 001DA074 88 1C 03 35 */ lbz r0, 0x335(r28) +/* 801DD118 001DA078 28 00 00 00 */ cmplwi r0, 0 +/* 801DD11C 001DA07C 41 82 01 40 */ beq lbl_801DD25C +/* 801DD120 001DA080 7F 83 E3 78 */ mr r3, r28 +/* 801DD124 001DA084 38 80 00 00 */ li r4, 0 +/* 801DD128 001DA088 81 9C 00 00 */ lwz r12, 0(r28) +/* 801DD12C 001DA08C 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801DD130 001DA090 7D 89 03 A6 */ mtctr r12 +/* 801DD134 001DA094 4E 80 04 21 */ bctrl +/* 801DD138 001DA098 7F C3 F3 78 */ mr r3, r30 +/* 801DD13C 001DA09C 38 80 00 00 */ li r4, 0 +/* 801DD140 001DA0A0 81 9E 00 00 */ lwz r12, 0(r30) +/* 801DD144 001DA0A4 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801DD148 001DA0A8 7D 89 03 A6 */ mtctr r12 +/* 801DD14C 001DA0AC 4E 80 04 21 */ bctrl +/* 801DD150 001DA0B0 80 BA 06 CC */ lwz r5, 0x6cc(r26) +/* 801DD154 001DA0B4 7F 63 DB 78 */ mr r3, r27 +/* 801DD158 001DA0B8 38 81 00 10 */ addi r4, r1, 0x10 +/* 801DD15C 001DA0BC 7C 05 C2 2E */ lhzx r0, r5, r24 +/* 801DD160 001DA0C0 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801DD164 001DA0C4 4B E6 F4 11 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801DD168 001DA0C8 81 83 00 00 */ lwz r12, 0(r3) +/* 801DD16C 001DA0CC 38 80 00 00 */ li r4, 0 +/* 801DD170 001DA0D0 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801DD174 001DA0D4 7D 89 03 A6 */ mtctr r12 +/* 801DD178 001DA0D8 4E 80 04 21 */ bctrl +/* 801DD17C 001DA0DC 80 BA 06 48 */ lwz r5, 0x648(r26) +/* 801DD180 001DA0E0 7F 43 D3 78 */ mr r3, r26 +/* 801DD184 001DA0E4 7F 64 DB 78 */ mr r4, r27 +/* 801DD188 001DA0E8 38 05 00 01 */ addi r0, r5, 1 +/* 801DD18C 001DA0EC 90 1A 06 48 */ stw r0, 0x648(r26) +/* 801DD190 001DA0F0 4B FF F7 C9 */ bl sub_801dc958 +/* 801DD194 001DA0F4 C0 5C 00 60 */ lfs f2, 0x60(r28) +/* 801DD198 001DA0F8 C0 3C 00 50 */ lfs f1, 0x50(r28) +/* 801DD19C 001DA0FC C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 801DD1A0 001DA100 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801DD1A4 001DA104 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 801DD1A8 001DA108 D0 41 00 34 */ stfs f2, 0x34(r1) +/* 801DD1AC 001DA10C 80 7B 08 B8 */ lwz r3, 0x8b8(r27) +/* 801DD1B0 001DA110 80 63 00 00 */ lwz r3, 0(r3) +/* 801DD1B4 001DA114 80 03 00 14 */ lwz r0, 0x14(r3) +/* 801DD1B8 001DA118 2C 00 00 03 */ cmpwi r0, 3 +/* 801DD1BC 001DA11C 40 82 00 14 */ bne lbl_801DD1D0 +/* 801DD1C0 001DA120 40 82 00 24 */ bne lbl_801DD1E4 +/* 801DD1C4 001DA124 80 1A 07 C4 */ lwz r0, 0x7c4(r26) +/* 801DD1C8 001DA128 2C 00 00 03 */ cmpwi r0, 3 +/* 801DD1CC 001DA12C 41 82 00 18 */ beq lbl_801DD1E4 +lbl_801DD1D0: +/* 801DD1D0 001DA130 80 DA 06 D8 */ lwz r6, 0x6d8(r26) +/* 801DD1D4 001DA134 7F 43 D3 78 */ mr r3, r26 +/* 801DD1D8 001DA138 7F 64 DB 78 */ mr r4, r27 +/* 801DD1DC 001DA13C 38 A1 00 2C */ addi r5, r1, 0x2c +/* 801DD1E0 001DA140 4B FF F2 65 */ bl sub_801dc444 +lbl_801DD1E4: +/* 801DD1E4 001DA144 93 61 00 08 */ stw r27, 8(r1) +/* 801DD1E8 001DA148 38 00 00 01 */ li r0, 1 +/* 801DD1EC 001DA14C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801DD1F0 001DA150 C0 22 AC D8 */ lfs f1, lbl_805AC9F8@sda21(r2) +/* 801DD1F4 001DA154 90 01 00 0C */ stw r0, 0xc(r1) +/* 801DD1F8 001DA158 39 03 66 A0 */ addi r8, r3, skZero3f@l +/* 801DD1FC 001DA15C C0 42 AC E8 */ lfs f2, lbl_805ACA08@sda21(r2) +/* 801DD200 001DA160 7F 43 D3 78 */ mr r3, r26 +/* 801DD204 001DA164 80 9A 07 58 */ lwz r4, 0x758(r26) +/* 801DD208 001DA168 39 21 00 2C */ addi r9, r1, 0x2c +/* 801DD20C 001DA16C C0 62 AC EC */ lfs f3, lbl_805ACA0C@sda21(r2) +/* 801DD210 001DA170 38 A0 00 00 */ li r5, 0 +/* 801DD214 001DA174 81 5B 08 CC */ lwz r10, 0x8cc(r27) +/* 801DD218 001DA178 38 C0 00 14 */ li r6, 0x14 +/* 801DD21C 001DA17C 38 E0 00 7F */ li r7, 0x7f +/* 801DD220 001DA180 4B E7 5D 11 */ bl ProcessSoundEvent__6CActorFififfUcUcRC9CVector3fRC9CVector3fiR13CStateManager +/* 801DD224 001DA184 7F 43 D3 78 */ mr r3, r26 +/* 801DD228 001DA188 4B FF F0 A1 */ bl sub_801dc2c8 +/* 801DD22C 001DA18C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801DD230 001DA190 41 82 00 1C */ beq lbl_801DD24C +/* 801DD234 001DA194 88 1A 08 F0 */ lbz r0, 0x8f0(r26) +/* 801DD238 001DA198 28 00 00 00 */ cmplwi r0, 0 +/* 801DD23C 001DA19C 40 82 00 10 */ bne lbl_801DD24C +/* 801DD240 001DA1A0 7F 43 D3 78 */ mr r3, r26 +/* 801DD244 001DA1A4 7F 64 DB 78 */ mr r4, r27 +/* 801DD248 001DA1A8 4B FF F6 A1 */ bl sub_801dc8e8 +lbl_801DD24C: +/* 801DD24C 001DA1AC 7F 43 D3 78 */ mr r3, r26 +/* 801DD250 001DA1B0 7F 64 DB 78 */ mr r4, r27 +/* 801DD254 001DA1B4 4B FF E9 ED */ bl sub_801dbc40 +/* 801DD258 001DA1B8 48 00 00 64 */ b lbl_801DD2BC +lbl_801DD25C: +/* 801DD25C 001DA1BC 7F 43 D3 78 */ mr r3, r26 +/* 801DD260 001DA1C0 7F 64 DB 78 */ mr r4, r27 +/* 801DD264 001DA1C4 7F A5 EB 78 */ mr r5, r29 +/* 801DD268 001DA1C8 4B FF DB C5 */ bl sub_801dae2c +/* 801DD26C 001DA1CC 7F 43 D3 78 */ mr r3, r26 +/* 801DD270 001DA1D0 7F 64 DB 78 */ mr r4, r27 +/* 801DD274 001DA1D4 4B FF F7 55 */ bl sub_801dc9c8 +/* 801DD278 001DA1D8 48 00 00 44 */ b lbl_801DD2BC +lbl_801DD27C: +/* 801DD27C 001DA1DC 7F 83 E3 78 */ mr r3, r28 +/* 801DD280 001DA1E0 7F 64 DB 78 */ mr r4, r27 +/* 801DD284 001DA1E4 81 9C 00 00 */ lwz r12, 0(r28) +/* 801DD288 001DA1E8 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801DD28C 001DA1EC 7D 89 03 A6 */ mtctr r12 +/* 801DD290 001DA1F0 4E 80 04 21 */ bctrl +/* 801DD294 001DA1F4 C0 17 00 00 */ lfs f0, 0(r23) +/* 801DD298 001DA1F8 D0 03 00 00 */ stfs f0, 0(r3) +/* 801DD29C 001DA1FC C0 17 00 04 */ lfs f0, 4(r23) +/* 801DD2A0 001DA200 D0 03 00 04 */ stfs f0, 4(r3) +/* 801DD2A4 001DA204 88 1A 09 09 */ lbz r0, 0x909(r26) +/* 801DD2A8 001DA208 28 00 00 00 */ cmplwi r0, 0 +/* 801DD2AC 001DA20C 40 82 00 10 */ bne lbl_801DD2BC +/* 801DD2B0 001DA210 C0 17 00 00 */ lfs f0, 0(r23) +/* 801DD2B4 001DA214 80 7A 09 18 */ lwz r3, 0x918(r26) +/* 801DD2B8 001DA218 7C 03 CD 2E */ stfsx f0, r3, r25 +lbl_801DD2BC: +/* 801DD2BC 001DA21C 3B BD 00 01 */ addi r29, r29, 1 +/* 801DD2C0 001DA220 3B 39 00 04 */ addi r25, r25, 4 +/* 801DD2C4 001DA224 3B 18 00 02 */ addi r24, r24, 2 +lbl_801DD2C8: +/* 801DD2C8 001DA228 7C 1D F8 40 */ cmplw r29, r31 +/* 801DD2CC 001DA22C 41 80 FD 14 */ blt lbl_801DCFE0 +/* 801DD2D0 001DA230 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 801DD2D4 001DA234 CB E1 00 60 */ lfd f31, 0x60(r1) +/* 801DD2D8 001DA238 BA E1 00 3C */ lmw r23, 0x3c(r1) +/* 801DD2DC 001DA23C 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801DD2E0 001DA240 7C 08 03 A6 */ mtlr r0 +/* 801DD2E4 001DA244 38 21 00 70 */ addi r1, r1, 0x70 +/* 801DD2E8 001DA248 4E 80 00 20 */ blr + +.global sub_801dd2ec +sub_801dd2ec: +/* 801DD2EC 001DA24C 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801DD2F0 001DA250 7C 08 02 A6 */ mflr r0 +/* 801DD2F4 001DA254 90 01 00 44 */ stw r0, 0x44(r1) +/* 801DD2F8 001DA258 BE E1 00 1C */ stmw r23, 0x1c(r1) +/* 801DD2FC 001DA25C 7C 77 1B 78 */ mr r23, r3 +/* 801DD300 001DA260 7C 98 23 78 */ mr r24, r4 +/* 801DD304 001DA264 7C B9 2B 78 */ mr r25, r5 +/* 801DD308 001DA268 7C DA 33 78 */ mr r26, r6 +/* 801DD30C 001DA26C 3B 60 00 00 */ li r27, 0 +/* 801DD310 001DA270 3B E0 00 00 */ li r31, 0 +/* 801DD314 001DA274 3B AD A4 B8 */ addi r29, r13, lbl_805A9078@sda21 +/* 801DD318 001DA278 83 83 06 38 */ lwz r28, 0x638(r3) +/* 801DD31C 001DA27C 48 00 00 A4 */ b lbl_801DD3C0 +lbl_801DD320: +/* 801DD320 001DA280 80 B7 06 40 */ lwz r5, 0x640(r23) +/* 801DD324 001DA284 7F 43 D3 78 */ mr r3, r26 +/* 801DD328 001DA288 38 81 00 08 */ addi r4, r1, 8 +/* 801DD32C 001DA28C 7C 05 FA 2E */ lhzx r0, r5, r31 +/* 801DD330 001DA290 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801DD334 001DA294 B0 01 00 08 */ sth r0, 8(r1) +/* 801DD338 001DA298 4B E6 F2 3D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801DD33C 001DA29C 7C 64 1B 78 */ mr r4, r3 +/* 801DD340 001DA2A0 38 61 00 10 */ addi r3, r1, 0x10 +/* 801DD344 001DA2A4 4B ED 20 09 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801DD348 001DA2A8 83 C3 00 04 */ lwz r30, 4(r3) +/* 801DD34C 001DA2AC 28 1E 00 00 */ cmplwi r30, 0 +/* 801DD350 001DA2B0 41 82 00 68 */ beq lbl_801DD3B8 +/* 801DD354 001DA2B4 2C 18 00 01 */ cmpwi r24, 1 +/* 801DD358 001DA2B8 41 82 00 28 */ beq lbl_801DD380 +/* 801DD35C 001DA2BC 40 80 00 34 */ bge lbl_801DD390 +/* 801DD360 001DA2C0 2C 18 00 00 */ cmpwi r24, 0 +/* 801DD364 001DA2C4 40 80 00 08 */ bge lbl_801DD36C +/* 801DD368 001DA2C8 48 00 00 28 */ b lbl_801DD390 +lbl_801DD36C: +/* 801DD36C 001DA2CC 7F C3 F3 78 */ mr r3, r30 +/* 801DD370 001DA2D0 7F 24 CB 78 */ mr r4, r25 +/* 801DD374 001DA2D4 7F 45 D3 78 */ mr r5, r26 +/* 801DD378 001DA2D8 4B E7 6F D9 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801DD37C 001DA2DC 48 00 00 14 */ b lbl_801DD390 +lbl_801DD380: +/* 801DD380 001DA2E0 7F C3 F3 78 */ mr r3, r30 +/* 801DD384 001DA2E4 7F 24 CB 78 */ mr r4, r25 +/* 801DD388 001DA2E8 7F 45 D3 78 */ mr r5, r26 +/* 801DD38C 001DA2EC 4B E7 6B F5 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +lbl_801DD390: +/* 801DD390 001DA2F0 7F C3 F3 78 */ mr r3, r30 +/* 801DD394 001DA2F4 7F 44 D3 78 */ mr r4, r26 +/* 801DD398 001DA2F8 81 9E 00 00 */ lwz r12, 0(r30) +/* 801DD39C 001DA2FC 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801DD3A0 001DA300 7D 89 03 A6 */ mtctr r12 +/* 801DD3A4 001DA304 4E 80 04 21 */ bctrl +/* 801DD3A8 001DA308 C0 0D A4 B8 */ lfs f0, lbl_805A9078@sda21(r13) +/* 801DD3AC 001DA30C D0 03 00 00 */ stfs f0, 0(r3) +/* 801DD3B0 001DA310 C0 1D 00 04 */ lfs f0, 4(r29) +/* 801DD3B4 001DA314 D0 03 00 04 */ stfs f0, 4(r3) +lbl_801DD3B8: +/* 801DD3B8 001DA318 3B 7B 00 01 */ addi r27, r27, 1 +/* 801DD3BC 001DA31C 3B FF 00 02 */ addi r31, r31, 2 +lbl_801DD3C0: +/* 801DD3C0 001DA320 7C 1B E0 40 */ cmplw r27, r28 +/* 801DD3C4 001DA324 41 80 FF 5C */ blt lbl_801DD320 +/* 801DD3C8 001DA328 BA E1 00 1C */ lmw r23, 0x1c(r1) +/* 801DD3CC 001DA32C 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801DD3D0 001DA330 7C 08 03 A6 */ mtlr r0 +/* 801DD3D4 001DA334 38 21 00 40 */ addi r1, r1, 0x40 +/* 801DD3D8 001DA338 4E 80 00 20 */ blr + +.global sub_801dd3dc +sub_801dd3dc: +/* 801DD3DC 001DA33C 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801DD3E0 001DA340 7C 08 02 A6 */ mflr r0 +/* 801DD3E4 001DA344 90 01 00 64 */ stw r0, 0x64(r1) +/* 801DD3E8 001DA348 BE 81 00 30 */ stmw r20, 0x30(r1) +/* 801DD3EC 001DA34C 7C 9E 23 78 */ mr r30, r4 +/* 801DD3F0 001DA350 7C BF 2B 78 */ mr r31, r5 +/* 801DD3F4 001DA354 7C D5 33 78 */ mr r21, r6 +/* 801DD3F8 001DA358 7C F4 3B 78 */ mr r20, r7 +/* 801DD3FC 001DA35C 7F C3 F3 78 */ mr r3, r30 +/* 801DD400 001DA360 4B FC 9E 49 */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 801DD404 001DA364 7C 7B 1B 78 */ mr r27, r3 +/* 801DD408 001DA368 7E A5 AB 78 */ mr r5, r21 +/* 801DD40C 001DA36C 3A A0 00 00 */ li r21, 0 +/* 801DD410 001DA370 38 60 00 00 */ li r3, 0 +/* 801DD414 001DA374 38 80 00 01 */ li r4, 1 +/* 801DD418 001DA378 48 1A CA DD */ bl __shl2i +/* 801DD41C 001DA37C 7C 9C 23 78 */ mr r28, r4 +/* 801DD420 001DA380 7C 7D 1B 78 */ mr r29, r3 +/* 801DD424 001DA384 7F 96 E0 F8 */ nor r22, r28, r28 +/* 801DD428 001DA388 7F B7 E8 F8 */ nor r23, r29, r29 +/* 801DD42C 001DA38C 48 00 00 B4 */ b lbl_801DD4E0 +lbl_801DD430: +/* 801DD430 001DA390 7F C3 F3 78 */ mr r3, r30 +/* 801DD434 001DA394 7E A4 AB 78 */ mr r4, r21 +/* 801DD438 001DA398 4B FC 9E 01 */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 801DD43C 001DA39C A0 03 00 3C */ lhz r0, 0x3c(r3) +/* 801DD440 001DA3A0 7E 83 A3 78 */ mr r3, r20 +/* 801DD444 001DA3A4 38 81 00 08 */ addi r4, r1, 8 +/* 801DD448 001DA3A8 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801DD44C 001DA3AC B0 01 00 08 */ sth r0, 8(r1) +/* 801DD450 001DA3B0 4B E6 F1 25 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801DD454 001DA3B4 7C 64 1B 78 */ mr r4, r3 +/* 801DD458 001DA3B8 38 61 00 10 */ addi r3, r1, 0x10 +/* 801DD45C 001DA3BC 4B ED 28 35 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 801DD460 001DA3C0 83 43 00 04 */ lwz r26, 4(r3) +/* 801DD464 001DA3C4 28 1A 00 00 */ cmplwi r26, 0 +/* 801DD468 001DA3C8 41 82 00 74 */ beq lbl_801DD4DC +/* 801DD46C 001DA3CC 7F 43 D3 78 */ mr r3, r26 +/* 801DD470 001DA3D0 4B E7 64 4D */ bl GetMaterialFilter__6CActorCFv +/* 801DD474 001DA3D4 2C 1F 00 01 */ cmpwi r31, 1 +/* 801DD478 001DA3D8 83 23 00 08 */ lwz r25, 8(r3) +/* 801DD47C 001DA3DC 83 03 00 0C */ lwz r24, 0xc(r3) +/* 801DD480 001DA3E0 41 82 00 20 */ beq lbl_801DD4A0 +/* 801DD484 001DA3E4 40 80 00 24 */ bge lbl_801DD4A8 +/* 801DD488 001DA3E8 2C 1F 00 00 */ cmpwi r31, 0 +/* 801DD48C 001DA3EC 40 80 00 08 */ bge lbl_801DD494 +/* 801DD490 001DA3F0 48 00 00 18 */ b lbl_801DD4A8 +lbl_801DD494: +/* 801DD494 001DA3F4 7F 18 E3 78 */ or r24, r24, r28 +/* 801DD498 001DA3F8 7F 39 EB 78 */ or r25, r25, r29 +/* 801DD49C 001DA3FC 48 00 00 0C */ b lbl_801DD4A8 +lbl_801DD4A0: +/* 801DD4A0 001DA400 7F 18 B0 38 */ and r24, r24, r22 +/* 801DD4A4 001DA404 7F 39 B8 38 */ and r25, r25, r23 +lbl_801DD4A8: +/* 801DD4A8 001DA408 7F 43 D3 78 */ mr r3, r26 +/* 801DD4AC 001DA40C 4B E7 64 11 */ bl GetMaterialFilter__6CActorCFv +/* 801DD4B0 001DA410 80 A3 00 00 */ lwz r5, 0(r3) +/* 801DD4B4 001DA414 38 00 00 03 */ li r0, 3 +/* 801DD4B8 001DA418 80 C3 00 04 */ lwz r6, 4(r3) +/* 801DD4BC 001DA41C 7F 43 D3 78 */ mr r3, r26 +/* 801DD4C0 001DA420 38 81 00 18 */ addi r4, r1, 0x18 +/* 801DD4C4 001DA424 90 C1 00 1C */ stw r6, 0x1c(r1) +/* 801DD4C8 001DA428 90 A1 00 18 */ stw r5, 0x18(r1) +/* 801DD4CC 001DA42C 93 01 00 24 */ stw r24, 0x24(r1) +/* 801DD4D0 001DA430 93 21 00 20 */ stw r25, 0x20(r1) +/* 801DD4D4 001DA434 90 01 00 28 */ stw r0, 0x28(r1) +/* 801DD4D8 001DA438 4B E7 63 C9 */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter +lbl_801DD4DC: +/* 801DD4DC 001DA43C 3A B5 00 01 */ addi r21, r21, 1 +lbl_801DD4E0: +/* 801DD4E0 001DA440 7C 15 D8 40 */ cmplw r21, r27 +/* 801DD4E4 001DA444 41 80 FF 4C */ blt lbl_801DD430 +/* 801DD4E8 001DA448 BA 81 00 30 */ lmw r20, 0x30(r1) +/* 801DD4EC 001DA44C 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801DD4F0 001DA450 7C 08 03 A6 */ mtlr r0 +/* 801DD4F4 001DA454 38 21 00 60 */ addi r1, r1, 0x60 +/* 801DD4F8 001DA458 4E 80 00 20 */ blr + +.global sub_801dd4fc +sub_801dd4fc: +/* 801DD4FC 001DA45C 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801DD500 001DA460 7C 08 02 A6 */ mflr r0 +/* 801DD504 001DA464 90 01 00 54 */ stw r0, 0x54(r1) +/* 801DD508 001DA468 BE A1 00 24 */ stmw r21, 0x24(r1) +/* 801DD50C 001DA46C 7C 9E 23 78 */ mr r30, r4 +/* 801DD510 001DA470 7C 7D 1B 78 */ mr r29, r3 +/* 801DD514 001DA474 7F C3 F3 78 */ mr r3, r30 +/* 801DD518 001DA478 4B FC 9D 31 */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 801DD51C 001DA47C 3C 80 80 3D */ lis r4, lbl_803D1BBC@ha +/* 801DD520 001DA480 7C 7A 1B 78 */ mr r26, r3 +/* 801DD524 001DA484 3B 64 1B BC */ addi r27, r4, lbl_803D1BBC@l +/* 801DD528 001DA488 3B E0 00 00 */ li r31, 0 +/* 801DD52C 001DA48C 48 00 00 C0 */ b lbl_801DD5EC +lbl_801DD530: +/* 801DD530 001DA490 7F C3 F3 78 */ mr r3, r30 +/* 801DD534 001DA494 7F E4 FB 78 */ mr r4, r31 +/* 801DD538 001DA498 4B FC 9D 01 */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 801DD53C 001DA49C A3 03 00 3C */ lhz r24, 0x3c(r3) +/* 801DD540 001DA4A0 7F 77 DB 78 */ mr r23, r27 +/* 801DD544 001DA4A4 3B 23 00 2C */ addi r25, r3, 0x2c +/* 801DD548 001DA4A8 3A C0 00 00 */ li r22, 0 +/* 801DD54C 001DA4AC 3A A0 00 00 */ li r21, 0 +lbl_801DD550: +/* 801DD550 001DA4B0 80 97 00 00 */ lwz r4, 0(r23) +/* 801DD554 001DA4B4 38 61 00 08 */ addi r3, r1, 8 +/* 801DD558 001DA4B8 4B E2 77 61 */ bl string_l__4rstlFPCc +/* 801DD55C 001DA4BC 7F 23 CB 78 */ mr r3, r25 +/* 801DD560 001DA4C0 38 81 00 08 */ addi r4, r1, 8 +/* 801DD564 001DA4C4 4B E7 50 7D */ 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" +/* 801DD568 001DA4C8 7C 7C 1B 78 */ mr r28, r3 +/* 801DD56C 001DA4CC 38 61 00 08 */ addi r3, r1, 8 +/* 801DD570 001DA4D0 48 16 05 71 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801DD574 001DA4D4 57 80 06 3F */ clrlwi. r0, r28, 0x18 +/* 801DD578 001DA4D8 41 82 00 0C */ beq lbl_801DD584 +/* 801DD57C 001DA4DC 3A C0 00 01 */ li r22, 1 +/* 801DD580 001DA4E0 48 00 00 14 */ b lbl_801DD594 +lbl_801DD584: +/* 801DD584 001DA4E4 3A B5 00 01 */ addi r21, r21, 1 +/* 801DD588 001DA4E8 3A F7 00 04 */ addi r23, r23, 4 +/* 801DD58C 001DA4EC 28 15 00 07 */ cmplwi r21, 7 +/* 801DD590 001DA4F0 41 80 FF C0 */ blt lbl_801DD550 +lbl_801DD594: +/* 801DD594 001DA4F4 56 C0 06 3F */ clrlwi. r0, r22, 0x18 +/* 801DD598 001DA4F8 40 82 00 50 */ bne lbl_801DD5E8 +/* 801DD59C 001DA4FC 80 1D 06 38 */ lwz r0, 0x638(r29) +/* 801DD5A0 001DA500 80 BD 06 3C */ lwz r5, 0x63c(r29) +/* 801DD5A4 001DA504 7C 00 28 00 */ cmpw r0, r5 +/* 801DD5A8 001DA508 41 80 00 1C */ blt lbl_801DD5C4 +/* 801DD5AC 001DA50C 2C 05 00 00 */ cmpwi r5, 0 +/* 801DD5B0 001DA510 38 7D 06 34 */ addi r3, r29, 0x634 +/* 801DD5B4 001DA514 38 80 00 04 */ li r4, 4 +/* 801DD5B8 001DA518 41 82 00 08 */ beq lbl_801DD5C0 +/* 801DD5BC 001DA51C 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801DD5C0: +/* 801DD5C0 001DA520 4B E2 EE 49 */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" +lbl_801DD5C4: +/* 801DD5C4 001DA524 80 1D 06 38 */ lwz r0, 0x638(r29) +/* 801DD5C8 001DA528 80 7D 06 40 */ lwz r3, 0x640(r29) +/* 801DD5CC 001DA52C 54 00 08 3C */ slwi r0, r0, 1 +/* 801DD5D0 001DA530 7C 63 02 15 */ add. r3, r3, r0 +/* 801DD5D4 001DA534 41 82 00 08 */ beq lbl_801DD5DC +/* 801DD5D8 001DA538 B3 03 00 00 */ sth r24, 0(r3) +lbl_801DD5DC: +/* 801DD5DC 001DA53C 80 7D 06 38 */ lwz r3, 0x638(r29) +/* 801DD5E0 001DA540 38 03 00 01 */ addi r0, r3, 1 +/* 801DD5E4 001DA544 90 1D 06 38 */ stw r0, 0x638(r29) +lbl_801DD5E8: +/* 801DD5E8 001DA548 3B FF 00 01 */ addi r31, r31, 1 +lbl_801DD5EC: +/* 801DD5EC 001DA54C 7C 1F D0 40 */ cmplw r31, r26 +/* 801DD5F0 001DA550 41 80 FF 40 */ blt lbl_801DD530 +/* 801DD5F4 001DA554 BA A1 00 24 */ lmw r21, 0x24(r1) +/* 801DD5F8 001DA558 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801DD5FC 001DA55C 7C 08 03 A6 */ mtlr r0 +/* 801DD600 001DA560 38 21 00 50 */ addi r1, r1, 0x50 +/* 801DD604 001DA564 4E 80 00 20 */ blr + +.global sub_801dd608 +sub_801dd608: +/* 801DD608 001DA568 94 21 FE 70 */ stwu r1, -0x190(r1) +/* 801DD60C 001DA56C 7C 08 02 A6 */ mflr r0 +/* 801DD610 001DA570 90 01 01 94 */ stw r0, 0x194(r1) +/* 801DD614 001DA574 BE E1 01 6C */ stmw r23, 0x16c(r1) +/* 801DD618 001DA578 7C 79 1B 78 */ mr r25, r3 +/* 801DD61C 001DA57C 3C 60 80 3D */ lis r3, lbl_803D1BA0@ha +/* 801DD620 001DA580 7C 9A 23 78 */ mr r26, r4 +/* 801DD624 001DA584 3B A3 1B A0 */ addi r29, r3, lbl_803D1BA0@l +/* 801DD628 001DA588 3B F9 00 34 */ addi r31, r25, 0x34 +/* 801DD62C 001DA58C 3B C1 00 3C */ addi r30, r1, 0x3c +/* 801DD630 001DA590 3B 60 00 00 */ li r27, 0 +/* 801DD634 001DA594 3B 00 00 00 */ li r24, 0 +/* 801DD638 001DA598 80 B9 00 64 */ lwz r5, 0x64(r25) +/* 801DD63C 001DA59C 83 99 06 14 */ lwz r28, 0x614(r25) +/* 801DD640 001DA5A0 C0 05 00 00 */ lfs f0, 0(r5) +/* 801DD644 001DA5A4 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 801DD648 001DA5A8 C0 05 00 04 */ lfs f0, 4(r5) +/* 801DD64C 001DA5AC D0 01 00 40 */ stfs f0, 0x40(r1) +/* 801DD650 001DA5B0 C0 05 00 08 */ lfs f0, 8(r5) +/* 801DD654 001DA5B4 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 801DD658 001DA5B8 48 00 01 58 */ b lbl_801DD7B0 +lbl_801DD65C: +/* 801DD65C 001DA5BC 80 9D 00 00 */ lwz r4, 0(r29) +/* 801DD660 001DA5C0 38 61 00 2C */ addi r3, r1, 0x2c +/* 801DD664 001DA5C4 38 C1 00 08 */ addi r6, r1, 8 +/* 801DD668 001DA5C8 38 A0 FF FF */ li r5, -1 +/* 801DD66C 001DA5CC 48 16 0B 29 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator" +/* 801DD670 001DA5D0 80 99 00 64 */ lwz r4, 0x64(r25) +/* 801DD674 001DA5D4 38 61 00 D8 */ addi r3, r1, 0xd8 +/* 801DD678 001DA5D8 38 A1 00 2C */ addi r5, r1, 0x2c +/* 801DD67C 001DA5DC 38 C0 00 00 */ li r6, 0 +/* 801DD680 001DA5E0 80 84 00 10 */ lwz r4, 0x10(r4) +/* 801DD684 001DA5E4 4B E4 EC FD */ bl "GetLocatorTransform__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>PC13CCharAnimTime" +/* 801DD688 001DA5E8 38 61 01 38 */ addi r3, r1, 0x138 +/* 801DD68C 001DA5EC 38 81 00 D8 */ addi r4, r1, 0xd8 +/* 801DD690 001DA5F0 48 13 54 E5 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801DD694 001DA5F4 38 61 00 2C */ addi r3, r1, 0x2c +/* 801DD698 001DA5F8 48 16 04 49 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801DD69C 001DA5FC 7F C4 F3 78 */ mr r4, r30 +/* 801DD6A0 001DA600 38 61 00 48 */ addi r3, r1, 0x48 +/* 801DD6A4 001DA604 48 13 5B 21 */ bl Scale__12CTransform4fFRC9CVector3f +/* 801DD6A8 001DA608 38 61 00 78 */ addi r3, r1, 0x78 +/* 801DD6AC 001DA60C 38 81 00 48 */ addi r4, r1, 0x48 +/* 801DD6B0 001DA610 38 A1 01 38 */ addi r5, r1, 0x138 +/* 801DD6B4 001DA614 48 13 52 9D */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 801DD6B8 001DA618 7F E4 FB 78 */ mr r4, r31 +/* 801DD6BC 001DA61C 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 801DD6C0 001DA620 38 A1 00 78 */ addi r5, r1, 0x78 +/* 801DD6C4 001DA624 48 13 52 8D */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 801DD6C8 001DA628 38 61 01 08 */ addi r3, r1, 0x108 +/* 801DD6CC 001DA62C 38 81 00 A8 */ addi r4, r1, 0xa8 +/* 801DD6D0 001DA630 48 13 54 A5 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801DD6D4 001DA634 80 B9 06 1C */ lwz r5, 0x61c(r25) +/* 801DD6D8 001DA638 7F 43 D3 78 */ mr r3, r26 +/* 801DD6DC 001DA63C 38 81 00 10 */ addi r4, r1, 0x10 +/* 801DD6E0 001DA640 7C 05 C2 2E */ lhzx r0, r5, r24 +/* 801DD6E4 001DA644 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801DD6E8 001DA648 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801DD6EC 001DA64C 4B E6 EE 89 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801DD6F0 001DA650 7C 64 1B 78 */ mr r4, r3 +/* 801DD6F4 001DA654 38 61 00 24 */ addi r3, r1, 0x24 +/* 801DD6F8 001DA658 4B ED 25 99 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 801DD6FC 001DA65C 82 E3 00 04 */ lwz r23, 4(r3) +/* 801DD700 001DA660 28 17 00 00 */ cmplwi r23, 0 +/* 801DD704 001DA664 41 82 00 38 */ beq lbl_801DD73C +/* 801DD708 001DA668 38 77 00 34 */ addi r3, r23, 0x34 +/* 801DD70C 001DA66C 38 81 01 08 */ addi r4, r1, 0x108 +/* 801DD710 001DA670 48 13 54 31 */ bl __as__12CTransform4fFRC12CTransform4f +/* 801DD714 001DA674 88 17 00 E4 */ lbz r0, 0xe4(r23) +/* 801DD718 001DA678 38 60 00 01 */ li r3, 1 +/* 801DD71C 001DA67C 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801DD720 001DA680 98 17 00 E4 */ stb r0, 0xe4(r23) +/* 801DD724 001DA684 88 17 00 E4 */ lbz r0, 0xe4(r23) +/* 801DD728 001DA688 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801DD72C 001DA68C 98 17 00 E4 */ stb r0, 0xe4(r23) +/* 801DD730 001DA690 88 17 00 E4 */ lbz r0, 0xe4(r23) +/* 801DD734 001DA694 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801DD738 001DA698 98 17 00 E4 */ stb r0, 0xe4(r23) +lbl_801DD73C: +/* 801DD73C 001DA69C 80 B9 06 CC */ lwz r5, 0x6cc(r25) +/* 801DD740 001DA6A0 7F 43 D3 78 */ mr r3, r26 +/* 801DD744 001DA6A4 38 81 00 0C */ addi r4, r1, 0xc +/* 801DD748 001DA6A8 7C 05 C2 2E */ lhzx r0, r5, r24 +/* 801DD74C 001DA6AC B0 01 00 14 */ sth r0, 0x14(r1) +/* 801DD750 001DA6B0 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801DD754 001DA6B4 4B E6 EE 21 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801DD758 001DA6B8 7C 64 1B 78 */ mr r4, r3 +/* 801DD75C 001DA6BC 38 61 00 1C */ addi r3, r1, 0x1c +/* 801DD760 001DA6C0 4B ED 03 25 */ bl "__ct__24TCastToPtr<10CGameLight>FP7CEntity" +/* 801DD764 001DA6C4 82 E3 00 04 */ lwz r23, 4(r3) +/* 801DD768 001DA6C8 28 17 00 00 */ cmplwi r23, 0 +/* 801DD76C 001DA6CC 41 82 00 38 */ beq lbl_801DD7A4 +/* 801DD770 001DA6D0 38 77 00 34 */ addi r3, r23, 0x34 +/* 801DD774 001DA6D4 38 81 01 08 */ addi r4, r1, 0x108 +/* 801DD778 001DA6D8 48 13 53 C9 */ bl __as__12CTransform4fFRC12CTransform4f +/* 801DD77C 001DA6DC 88 17 00 E4 */ lbz r0, 0xe4(r23) +/* 801DD780 001DA6E0 38 60 00 01 */ li r3, 1 +/* 801DD784 001DA6E4 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801DD788 001DA6E8 98 17 00 E4 */ stb r0, 0xe4(r23) +/* 801DD78C 001DA6EC 88 17 00 E4 */ lbz r0, 0xe4(r23) +/* 801DD790 001DA6F0 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801DD794 001DA6F4 98 17 00 E4 */ stb r0, 0xe4(r23) +/* 801DD798 001DA6F8 88 17 00 E4 */ lbz r0, 0xe4(r23) +/* 801DD79C 001DA6FC 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801DD7A0 001DA700 98 17 00 E4 */ stb r0, 0xe4(r23) +lbl_801DD7A4: +/* 801DD7A4 001DA704 3B BD 00 04 */ addi r29, r29, 4 +/* 801DD7A8 001DA708 3B 7B 00 01 */ addi r27, r27, 1 +/* 801DD7AC 001DA70C 3B 18 00 02 */ addi r24, r24, 2 +lbl_801DD7B0: +/* 801DD7B0 001DA710 7C 1B E0 40 */ cmplw r27, r28 +/* 801DD7B4 001DA714 41 80 FE A8 */ blt lbl_801DD65C +/* 801DD7B8 001DA718 BA E1 01 6C */ lmw r23, 0x16c(r1) +/* 801DD7BC 001DA71C 80 01 01 94 */ lwz r0, 0x194(r1) +/* 801DD7C0 001DA720 7C 08 03 A6 */ mtlr r0 +/* 801DD7C4 001DA724 38 21 01 90 */ addi r1, r1, 0x190 +/* 801DD7C8 001DA728 4E 80 00 20 */ blr + +.global sub_801dd7cc +sub_801dd7cc: +/* 801DD7CC 001DA72C 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 801DD7D0 001DA730 7C 08 02 A6 */ mflr r0 +/* 801DD7D4 001DA734 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 801DD7D8 001DA738 BF 21 00 D4 */ stmw r25, 0xd4(r1) +/* 801DD7DC 001DA73C 7C B9 2B 78 */ mr r25, r5 +/* 801DD7E0 001DA740 7C DA 33 78 */ mr r26, r6 +/* 801DD7E4 001DA744 7C 9E 23 78 */ mr r30, r4 +/* 801DD7E8 001DA748 3B A1 00 6C */ addi r29, r1, 0x6c +/* 801DD7EC 001DA74C 3B 81 00 B0 */ addi r28, r1, 0xb0 +/* 801DD7F0 001DA750 3B 60 00 00 */ li r27, 0 +/* 801DD7F4 001DA754 80 63 00 64 */ lwz r3, 0x64(r3) +/* 801DD7F8 001DA758 83 E3 00 10 */ lwz r31, 0x10(r3) +/* 801DD7FC 001DA75C 48 00 01 38 */ b lbl_801DD934 +lbl_801DD800: +/* 801DD800 001DA760 80 9E 00 00 */ lwz r4, 0(r30) +/* 801DD804 001DA764 38 61 00 30 */ addi r3, r1, 0x30 +/* 801DD808 001DA768 4B E2 74 B1 */ bl string_l__4rstlFPCc +/* 801DD80C 001DA76C 7F E4 FB 78 */ mr r4, r31 +/* 801DD810 001DA770 38 61 00 0C */ addi r3, r1, 0xc +/* 801DD814 001DA774 38 A1 00 30 */ addi r5, r1, 0x30 +/* 801DD818 001DA778 4B E5 10 21 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801DD81C 001DA77C 88 01 00 0C */ lbz r0, 0xc(r1) +/* 801DD820 001DA780 38 61 00 30 */ addi r3, r1, 0x30 +/* 801DD824 001DA784 98 01 00 10 */ stb r0, 0x10(r1) +/* 801DD828 001DA788 48 16 02 B9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801DD82C 001DA78C 88 01 00 10 */ lbz r0, 0x10(r1) +/* 801DD830 001DA790 28 00 00 FF */ cmplwi r0, 0xff +/* 801DD834 001DA794 41 82 00 F8 */ beq lbl_801DD92C +/* 801DD838 001DA798 80 9E 00 00 */ lwz r4, 0(r30) +/* 801DD83C 001DA79C 38 61 00 14 */ addi r3, r1, 0x14 +/* 801DD840 001DA7A0 4B E2 74 79 */ bl string_l__4rstlFPCc +/* 801DD844 001DA7A4 C0 7E 00 0C */ lfs f3, 0xc(r30) +/* 801DD848 001DA7A8 38 61 00 40 */ addi r3, r1, 0x40 +/* 801DD84C 001DA7AC C0 5E 00 08 */ lfs f2, 8(r30) +/* 801DD850 001DA7B0 38 81 00 08 */ addi r4, r1, 8 +/* 801DD854 001DA7B4 C0 1E 00 04 */ lfs f0, 4(r30) +/* 801DD858 001DA7B8 38 A1 00 24 */ addi r5, r1, 0x24 +/* 801DD85C 001DA7BC 88 01 00 10 */ lbz r0, 0x10(r1) +/* 801DD860 001DA7C0 38 C1 00 14 */ addi r6, r1, 0x14 +/* 801DD864 001DA7C4 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801DD868 001DA7C8 C0 22 AD 28 */ lfs f1, lbl_805ACA48@sda21(r2) +/* 801DD86C 001DA7CC D0 41 00 28 */ stfs f2, 0x28(r1) +/* 801DD870 001DA7D0 D0 61 00 2C */ stfs f3, 0x2c(r1) +/* 801DD874 001DA7D4 98 01 00 08 */ stb r0, 8(r1) +/* 801DD878 001DA7D8 4B FC AE 19 */ bl "AABoxCollision__26CJointCollisionDescriptionF6CSegIdRC9CVector3fRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" +/* 801DD87C 001DA7DC 80 E1 00 40 */ lwz r7, 0x40(r1) +/* 801DD880 001DA7E0 7F 83 E3 78 */ mr r3, r28 +/* 801DD884 001DA7E4 80 C1 00 44 */ lwz r6, 0x44(r1) +/* 801DD888 001DA7E8 7F A4 EB 78 */ mr r4, r29 +/* 801DD88C 001DA7EC 88 A1 00 48 */ lbz r5, 0x48(r1) +/* 801DD890 001DA7F0 88 01 00 49 */ lbz r0, 0x49(r1) +/* 801DD894 001DA7F4 C0 E1 00 4C */ lfs f7, 0x4c(r1) +/* 801DD898 001DA7F8 C0 C1 00 50 */ lfs f6, 0x50(r1) +/* 801DD89C 001DA7FC C0 A1 00 54 */ lfs f5, 0x54(r1) +/* 801DD8A0 001DA800 C0 81 00 58 */ lfs f4, 0x58(r1) +/* 801DD8A4 001DA804 C0 61 00 5C */ lfs f3, 0x5c(r1) +/* 801DD8A8 001DA808 C0 41 00 60 */ lfs f2, 0x60(r1) +/* 801DD8AC 001DA80C C0 21 00 64 */ lfs f1, 0x64(r1) +/* 801DD8B0 001DA810 C0 01 00 68 */ lfs f0, 0x68(r1) +/* 801DD8B4 001DA814 90 E1 00 84 */ stw r7, 0x84(r1) +/* 801DD8B8 001DA818 90 C1 00 88 */ stw r6, 0x88(r1) +/* 801DD8BC 001DA81C 98 A1 00 8C */ stb r5, 0x8c(r1) +/* 801DD8C0 001DA820 98 01 00 8D */ stb r0, 0x8d(r1) +/* 801DD8C4 001DA824 D0 E1 00 90 */ stfs f7, 0x90(r1) +/* 801DD8C8 001DA828 D0 C1 00 94 */ stfs f6, 0x94(r1) +/* 801DD8CC 001DA82C D0 A1 00 98 */ stfs f5, 0x98(r1) +/* 801DD8D0 001DA830 D0 81 00 9C */ stfs f4, 0x9c(r1) +/* 801DD8D4 001DA834 D0 61 00 A0 */ stfs f3, 0xa0(r1) +/* 801DD8D8 001DA838 D0 41 00 A4 */ stfs f2, 0xa4(r1) +/* 801DD8DC 001DA83C D0 21 00 A8 */ stfs f1, 0xa8(r1) +/* 801DD8E0 001DA840 D0 01 00 AC */ stfs f0, 0xac(r1) +/* 801DD8E4 001DA844 48 16 08 7D */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801DD8E8 001DA848 A0 01 00 7C */ lhz r0, 0x7c(r1) +/* 801DD8EC 001DA84C 28 1D 00 00 */ cmplwi r29, 0 +/* 801DD8F0 001DA850 C0 01 00 80 */ lfs f0, 0x80(r1) +/* 801DD8F4 001DA854 B0 01 00 C0 */ sth r0, 0xc0(r1) +/* 801DD8F8 001DA858 D0 01 00 C4 */ stfs f0, 0xc4(r1) +/* 801DD8FC 001DA85C 41 82 00 0C */ beq lbl_801DD908 +/* 801DD900 001DA860 7F A3 EB 78 */ mr r3, r29 +/* 801DD904 001DA864 48 16 01 DD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801DD908: +/* 801DD908 001DA868 38 61 00 14 */ addi r3, r1, 0x14 +/* 801DD90C 001DA86C 48 16 01 D5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801DD910 001DA870 7F 43 D3 78 */ mr r3, r26 +/* 801DD914 001DA874 38 81 00 84 */ addi r4, r1, 0x84 +/* 801DD918 001DA878 4B F7 89 19 */ bl sub_80156230 +/* 801DD91C 001DA87C 28 1C 00 00 */ cmplwi r28, 0 +/* 801DD920 001DA880 41 82 00 0C */ beq lbl_801DD92C +/* 801DD924 001DA884 7F 83 E3 78 */ mr r3, r28 +/* 801DD928 001DA888 48 16 01 B9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801DD92C: +/* 801DD92C 001DA88C 3B DE 00 10 */ addi r30, r30, 0x10 +/* 801DD930 001DA890 3B 7B 00 01 */ addi r27, r27, 1 +lbl_801DD934: +/* 801DD934 001DA894 7C 1B C8 00 */ cmpw r27, r25 +/* 801DD938 001DA898 41 80 FE C8 */ blt lbl_801DD800 +/* 801DD93C 001DA89C BB 21 00 D4 */ lmw r25, 0xd4(r1) +/* 801DD940 001DA8A0 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 801DD944 001DA8A4 7C 08 03 A6 */ mtlr r0 +/* 801DD948 001DA8A8 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 801DD94C 001DA8AC 4E 80 00 20 */ blr + +.global sub_801dd950 +sub_801dd950: +/* 801DD950 001DA8B0 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 801DD954 001DA8B4 7C 08 02 A6 */ mflr r0 +/* 801DD958 001DA8B8 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 801DD95C 001DA8BC BF 21 00 C4 */ stmw r25, 0xc4(r1) +/* 801DD960 001DA8C0 7C B9 2B 78 */ mr r25, r5 +/* 801DD964 001DA8C4 7C DA 33 78 */ mr r26, r6 +/* 801DD968 001DA8C8 7C 9E 23 78 */ mr r30, r4 +/* 801DD96C 001DA8CC 3B A1 00 60 */ addi r29, r1, 0x60 +/* 801DD970 001DA8D0 3B 81 00 A4 */ addi r28, r1, 0xa4 +/* 801DD974 001DA8D4 3B 60 00 00 */ li r27, 0 +/* 801DD978 001DA8D8 80 63 00 64 */ lwz r3, 0x64(r3) +/* 801DD97C 001DA8DC 83 E3 00 10 */ lwz r31, 0x10(r3) +/* 801DD980 001DA8E0 48 00 01 20 */ b lbl_801DDAA0 +lbl_801DD984: +/* 801DD984 001DA8E4 80 9E 00 00 */ lwz r4, 0(r30) +/* 801DD988 001DA8E8 38 61 00 24 */ addi r3, r1, 0x24 +/* 801DD98C 001DA8EC 4B E2 73 2D */ bl string_l__4rstlFPCc +/* 801DD990 001DA8F0 7F E4 FB 78 */ mr r4, r31 +/* 801DD994 001DA8F4 38 61 00 0C */ addi r3, r1, 0xc +/* 801DD998 001DA8F8 38 A1 00 24 */ addi r5, r1, 0x24 +/* 801DD99C 001DA8FC 4B E5 0E 9D */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801DD9A0 001DA900 88 01 00 0C */ lbz r0, 0xc(r1) +/* 801DD9A4 001DA904 38 61 00 24 */ addi r3, r1, 0x24 +/* 801DD9A8 001DA908 98 01 00 10 */ stb r0, 0x10(r1) +/* 801DD9AC 001DA90C 48 16 01 35 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801DD9B0 001DA910 88 01 00 10 */ lbz r0, 0x10(r1) +/* 801DD9B4 001DA914 28 00 00 FF */ cmplwi r0, 0xff +/* 801DD9B8 001DA918 41 82 00 E0 */ beq lbl_801DDA98 +/* 801DD9BC 001DA91C 80 9E 00 00 */ lwz r4, 0(r30) +/* 801DD9C0 001DA920 38 61 00 14 */ addi r3, r1, 0x14 +/* 801DD9C4 001DA924 4B E2 72 F5 */ bl string_l__4rstlFPCc +/* 801DD9C8 001DA928 88 01 00 10 */ lbz r0, 0x10(r1) +/* 801DD9CC 001DA92C 38 61 00 34 */ addi r3, r1, 0x34 +/* 801DD9D0 001DA930 C0 3E 00 04 */ lfs f1, 4(r30) +/* 801DD9D4 001DA934 38 81 00 08 */ addi r4, r1, 8 +/* 801DD9D8 001DA938 98 01 00 08 */ stb r0, 8(r1) +/* 801DD9DC 001DA93C 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801DD9E0 001DA940 C0 42 AD 28 */ lfs f2, lbl_805ACA48@sda21(r2) +/* 801DD9E4 001DA944 4B FC AE 29 */ bl "SphereCollision__26CJointCollisionDescriptionF6CSegIdfRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" +/* 801DD9E8 001DA948 80 E1 00 34 */ lwz r7, 0x34(r1) +/* 801DD9EC 001DA94C 7F 83 E3 78 */ mr r3, r28 +/* 801DD9F0 001DA950 80 C1 00 38 */ lwz r6, 0x38(r1) +/* 801DD9F4 001DA954 7F A4 EB 78 */ mr r4, r29 +/* 801DD9F8 001DA958 88 A1 00 3C */ lbz r5, 0x3c(r1) +/* 801DD9FC 001DA95C 88 01 00 3D */ lbz r0, 0x3d(r1) +/* 801DDA00 001DA960 C0 E1 00 40 */ lfs f7, 0x40(r1) +/* 801DDA04 001DA964 C0 C1 00 44 */ lfs f6, 0x44(r1) +/* 801DDA08 001DA968 C0 A1 00 48 */ lfs f5, 0x48(r1) +/* 801DDA0C 001DA96C C0 81 00 4C */ lfs f4, 0x4c(r1) +/* 801DDA10 001DA970 C0 61 00 50 */ lfs f3, 0x50(r1) +/* 801DDA14 001DA974 C0 41 00 54 */ lfs f2, 0x54(r1) +/* 801DDA18 001DA978 C0 21 00 58 */ lfs f1, 0x58(r1) +/* 801DDA1C 001DA97C C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 801DDA20 001DA980 90 E1 00 78 */ stw r7, 0x78(r1) +/* 801DDA24 001DA984 90 C1 00 7C */ stw r6, 0x7c(r1) +/* 801DDA28 001DA988 98 A1 00 80 */ stb r5, 0x80(r1) +/* 801DDA2C 001DA98C 98 01 00 81 */ stb r0, 0x81(r1) +/* 801DDA30 001DA990 D0 E1 00 84 */ stfs f7, 0x84(r1) +/* 801DDA34 001DA994 D0 C1 00 88 */ stfs f6, 0x88(r1) +/* 801DDA38 001DA998 D0 A1 00 8C */ stfs f5, 0x8c(r1) +/* 801DDA3C 001DA99C D0 81 00 90 */ stfs f4, 0x90(r1) +/* 801DDA40 001DA9A0 D0 61 00 94 */ stfs f3, 0x94(r1) +/* 801DDA44 001DA9A4 D0 41 00 98 */ stfs f2, 0x98(r1) +/* 801DDA48 001DA9A8 D0 21 00 9C */ stfs f1, 0x9c(r1) +/* 801DDA4C 001DA9AC D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 801DDA50 001DA9B0 48 16 07 11 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801DDA54 001DA9B4 A0 01 00 70 */ lhz r0, 0x70(r1) +/* 801DDA58 001DA9B8 28 1D 00 00 */ cmplwi r29, 0 +/* 801DDA5C 001DA9BC C0 01 00 74 */ lfs f0, 0x74(r1) +/* 801DDA60 001DA9C0 B0 01 00 B4 */ sth r0, 0xb4(r1) +/* 801DDA64 001DA9C4 D0 01 00 B8 */ stfs f0, 0xb8(r1) +/* 801DDA68 001DA9C8 41 82 00 0C */ beq lbl_801DDA74 +/* 801DDA6C 001DA9CC 7F A3 EB 78 */ mr r3, r29 +/* 801DDA70 001DA9D0 48 16 00 71 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801DDA74: +/* 801DDA74 001DA9D4 38 61 00 14 */ addi r3, r1, 0x14 +/* 801DDA78 001DA9D8 48 16 00 69 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801DDA7C 001DA9DC 7F 43 D3 78 */ mr r3, r26 +/* 801DDA80 001DA9E0 38 81 00 78 */ addi r4, r1, 0x78 +/* 801DDA84 001DA9E4 4B F7 87 AD */ bl sub_80156230 +/* 801DDA88 001DA9E8 28 1C 00 00 */ cmplwi r28, 0 +/* 801DDA8C 001DA9EC 41 82 00 0C */ beq lbl_801DDA98 +/* 801DDA90 001DA9F0 7F 83 E3 78 */ mr r3, r28 +/* 801DDA94 001DA9F4 48 16 00 4D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801DDA98: +/* 801DDA98 001DA9F8 3B DE 00 08 */ addi r30, r30, 8 +/* 801DDA9C 001DA9FC 3B 7B 00 01 */ addi r27, r27, 1 +lbl_801DDAA0: +/* 801DDAA0 001DAA00 7C 1B C8 00 */ cmpw r27, r25 +/* 801DDAA4 001DAA04 41 80 FE E0 */ blt lbl_801DD984 +/* 801DDAA8 001DAA08 BB 21 00 C4 */ lmw r25, 0xc4(r1) +/* 801DDAAC 001DAA0C 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 801DDAB0 001DAA10 7C 08 03 A6 */ mtlr r0 +/* 801DDAB4 001DAA14 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 801DDAB8 001DAA18 4E 80 00 20 */ blr + +.global sub_801ddabc +sub_801ddabc: +/* 801DDABC 001DAA1C 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801DDAC0 001DAA20 7C 08 02 A6 */ mflr r0 +/* 801DDAC4 001DAA24 90 01 00 64 */ stw r0, 0x64(r1) +/* 801DDAC8 001DAA28 BE A1 00 34 */ stmw r21, 0x34(r1) +/* 801DDACC 001DAA2C 7C 7B 1B 78 */ mr r27, r3 +/* 801DDAD0 001DAA30 7C 9C 23 78 */ mr r28, r4 +/* 801DDAD4 001DAA34 7C BD 2B 78 */ mr r29, r5 +/* 801DDAD8 001DAA38 3B E0 00 00 */ li r31, 0 +/* 801DDADC 001DAA3C 48 00 00 E4 */ b lbl_801DDBC0 +lbl_801DDAE0: +/* 801DDAE0 001DAA40 80 7C 00 00 */ lwz r3, 0(r28) +/* 801DDAE4 001DAA44 7F E4 FB 78 */ mr r4, r31 +/* 801DDAE8 001DAA48 4B FC 97 51 */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 801DDAEC 001DAA4C A0 03 00 3C */ lhz r0, 0x3c(r3) +/* 801DDAF0 001DAA50 7F A3 EB 78 */ mr r3, r29 +/* 801DDAF4 001DAA54 38 81 00 08 */ addi r4, r1, 8 +/* 801DDAF8 001DAA58 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801DDAFC 001DAA5C B0 01 00 08 */ sth r0, 8(r1) +/* 801DDB00 001DAA60 4B E6 EA 75 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801DDB04 001DAA64 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801DDB08 001DAA68 41 82 00 B4 */ beq lbl_801DDBBC +/* 801DDB0C 001DAA6C 7F A5 EB 78 */ mr r5, r29 +/* 801DDB10 001DAA70 38 80 00 1B */ li r4, 0x1b +/* 801DDB14 001DAA74 4B E7 68 3D */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801DDB18 001DAA78 7F C3 F3 78 */ mr r3, r30 +/* 801DDB1C 001DAA7C 7F A5 EB 78 */ mr r5, r29 +/* 801DDB20 001DAA80 38 80 00 15 */ li r4, 0x15 +/* 801DDB24 001DAA84 4B E7 68 2D */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801DDB28 001DAA88 7F C3 F3 78 */ mr r3, r30 +/* 801DDB2C 001DAA8C 7F A5 EB 78 */ mr r5, r29 +/* 801DDB30 001DAA90 38 80 00 2B */ li r4, 0x2b +/* 801DDB34 001DAA94 4B E7 68 1D */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801DDB38 001DAA98 7F C3 F3 78 */ mr r3, r30 +/* 801DDB3C 001DAA9C 7F A5 EB 78 */ mr r5, r29 +/* 801DDB40 001DAAA0 38 80 00 3A */ li r4, 0x3a +/* 801DDB44 001DAAA4 4B E7 68 0D */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801DDB48 001DAAA8 7F 63 DB 78 */ mr r3, r27 +/* 801DDB4C 001DAAAC 4B E7 5D 71 */ bl GetMaterialFilter__6CActorCFv +/* 801DDB50 001DAAB0 83 43 00 00 */ lwz r26, 0(r3) +/* 801DDB54 001DAAB4 83 23 00 04 */ lwz r25, 4(r3) +/* 801DDB58 001DAAB8 7F 63 DB 78 */ mr r3, r27 +/* 801DDB5C 001DAABC 4B E7 5D 61 */ bl GetMaterialFilter__6CActorCFv +/* 801DDB60 001DAAC0 83 03 00 08 */ lwz r24, 8(r3) +/* 801DDB64 001DAAC4 82 E3 00 0C */ lwz r23, 0xc(r3) +/* 801DDB68 001DAAC8 7F C3 F3 78 */ mr r3, r30 +/* 801DDB6C 001DAACC 4B E7 5D 51 */ bl GetMaterialFilter__6CActorCFv +/* 801DDB70 001DAAD0 82 C3 00 00 */ lwz r22, 0(r3) +/* 801DDB74 001DAAD4 82 A3 00 04 */ lwz r21, 4(r3) +/* 801DDB78 001DAAD8 7F C3 F3 78 */ mr r3, r30 +/* 801DDB7C 001DAADC 4B E7 5D 41 */ bl GetMaterialFilter__6CActorCFv +/* 801DDB80 001DAAE0 80 03 00 08 */ lwz r0, 8(r3) +/* 801DDB84 001DAAE4 7F 24 AB 78 */ or r4, r25, r21 +/* 801DDB88 001DAAE8 80 63 00 0C */ lwz r3, 0xc(r3) +/* 801DDB8C 001DAAEC 7F 45 B3 78 */ or r5, r26, r22 +/* 801DDB90 001DAAF0 7F 06 03 78 */ or r6, r24, r0 +/* 801DDB94 001DAAF4 38 00 00 03 */ li r0, 3 +/* 801DDB98 001DAAF8 7E E7 1B 78 */ or r7, r23, r3 +/* 801DDB9C 001DAAFC 90 81 00 14 */ stw r4, 0x14(r1) +/* 801DDBA0 001DAB00 7F C3 F3 78 */ mr r3, r30 +/* 801DDBA4 001DAB04 38 81 00 10 */ addi r4, r1, 0x10 +/* 801DDBA8 001DAB08 90 A1 00 10 */ stw r5, 0x10(r1) +/* 801DDBAC 001DAB0C 90 E1 00 1C */ stw r7, 0x1c(r1) +/* 801DDBB0 001DAB10 90 C1 00 18 */ stw r6, 0x18(r1) +/* 801DDBB4 001DAB14 90 01 00 20 */ stw r0, 0x20(r1) +/* 801DDBB8 001DAB18 4B E7 5C E9 */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter +lbl_801DDBBC: +/* 801DDBBC 001DAB1C 3B FF 00 01 */ addi r31, r31, 1 +lbl_801DDBC0: +/* 801DDBC0 001DAB20 80 7C 00 00 */ lwz r3, 0(r28) +/* 801DDBC4 001DAB24 4B FC 96 85 */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 801DDBC8 001DAB28 7C 1F 18 40 */ cmplw r31, r3 +/* 801DDBCC 001DAB2C 41 80 FF 14 */ blt lbl_801DDAE0 +/* 801DDBD0 001DAB30 BA A1 00 34 */ lmw r21, 0x34(r1) +/* 801DDBD4 001DAB34 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801DDBD8 001DAB38 7C 08 03 A6 */ mtlr r0 +/* 801DDBDC 001DAB3C 38 21 00 60 */ addi r1, r1, 0x60 +/* 801DDBE0 001DAB40 4E 80 00 20 */ blr + +.global sub_801ddbe4 +sub_801ddbe4: +/* 801DDBE4 001DAB44 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 801DDBE8 001DAB48 7C 08 02 A6 */ mflr r0 +/* 801DDBEC 001DAB4C 3C A0 80 3D */ lis r5, lbl_803D1BA0@ha +/* 801DDBF0 001DAB50 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 801DDBF4 001DAB54 38 00 00 00 */ li r0, 0 +/* 801DDBF8 001DAB58 BF 21 00 84 */ stmw r25, 0x84(r1) +/* 801DDBFC 001DAB5C 7C 7E 1B 78 */ mr r30, r3 +/* 801DDC00 001DAB60 7C 9F 23 78 */ mr r31, r4 +/* 801DDC04 001DAB64 3B 65 1B A0 */ addi r27, r5, lbl_803D1BA0@l +/* 801DDC08 001DAB68 38 61 00 70 */ addi r3, r1, 0x70 +/* 801DDC0C 001DAB6C 38 80 00 07 */ li r4, 7 +/* 801DDC10 001DAB70 90 01 00 74 */ stw r0, 0x74(r1) +/* 801DDC14 001DAB74 90 01 00 78 */ stw r0, 0x78(r1) +/* 801DDC18 001DAB78 90 01 00 7C */ stw r0, 0x7c(r1) +/* 801DDC1C 001DAB7C 90 01 00 64 */ stw r0, 0x64(r1) +/* 801DDC20 001DAB80 90 01 00 68 */ stw r0, 0x68(r1) +/* 801DDC24 001DAB84 90 01 00 6C */ stw r0, 0x6c(r1) +/* 801DDC28 001DAB88 4B F7 8B 91 */ bl "reserve__Q24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>Fi" +/* 801DDC2C 001DAB8C 38 61 00 60 */ addi r3, r1, 0x60 +/* 801DDC30 001DAB90 38 80 00 05 */ li r4, 5 +/* 801DDC34 001DAB94 4B F7 8B 85 */ bl "reserve__Q24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>Fi" +/* 801DDC38 001DAB98 7F C3 F3 78 */ mr r3, r30 +/* 801DDC3C 001DAB9C 38 9B 00 98 */ addi r4, r27, 0x98 +/* 801DDC40 001DABA0 38 C1 00 70 */ addi r6, r1, 0x70 +/* 801DDC44 001DABA4 38 A0 00 07 */ li r5, 7 +/* 801DDC48 001DABA8 4B FF FD 09 */ bl sub_801dd950 +/* 801DDC4C 001DABAC 7F C3 F3 78 */ mr r3, r30 +/* 801DDC50 001DABB0 38 9B 00 D0 */ addi r4, r27, 0xd0 +/* 801DDC54 001DABB4 38 C1 00 60 */ addi r6, r1, 0x60 +/* 801DDC58 001DABB8 38 A0 00 05 */ li r5, 5 +/* 801DDC5C 001DABBC 4B FF FC F5 */ bl sub_801dd950 +/* 801DDC60 001DABC0 3C 80 80 3D */ lis r4, lbl_803D1CB8@ha +/* 801DDC64 001DABC4 38 60 00 18 */ li r3, 0x18 +/* 801DDC68 001DABC8 38 84 1C B8 */ addi r4, r4, lbl_803D1CB8@l +/* 801DDC6C 001DABCC 38 A0 00 00 */ li r5, 0 +/* 801DDC70 001DABD0 38 84 01 B3 */ addi r4, r4, 0x1b3 +/* 801DDC74 001DABD4 48 13 7B F9 */ bl __nw__FUlPCcPCc +/* 801DDC78 001DABD8 7C 7C 1B 79 */ or. r28, r3, r3 +/* 801DDC7C 001DABDC 41 82 00 38 */ beq lbl_801DDCB4 +/* 801DDC80 001DABE0 81 3E 00 04 */ lwz r9, 4(r30) +/* 801DDC84 001DABE4 7F E4 FB 78 */ mr r4, r31 +/* 801DDC88 001DABE8 38 A1 00 24 */ addi r5, r1, 0x24 +/* 801DDC8C 001DABEC 38 C1 00 44 */ addi r6, r1, 0x44 +/* 801DDC90 001DABF0 91 21 00 44 */ stw r9, 0x44(r1) +/* 801DDC94 001DABF4 38 E1 00 70 */ addi r7, r1, 0x70 +/* 801DDC98 001DABF8 39 00 00 01 */ li r8, 1 +/* 801DDC9C 001DABFC A0 1E 00 08 */ lhz r0, 8(r30) +/* 801DDCA0 001DAC00 91 21 00 40 */ stw r9, 0x40(r1) +/* 801DDCA4 001DAC04 B0 01 00 20 */ sth r0, 0x20(r1) +/* 801DDCA8 001DAC08 B0 01 00 24 */ sth r0, 0x24(r1) +/* 801DDCAC 001DAC0C 4B FC 9C 85 */ bl "__ct__22CCollisionActorManagerFR13CStateManager9TUniqueId7TAreaIdRCQ24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>b" +/* 801DDCB0 001DAC10 7C 7C 1B 78 */ mr r28, r3 +lbl_801DDCB4: +/* 801DDCB4 001DAC14 80 7E 05 F0 */ lwz r3, 0x5f0(r30) +/* 801DDCB8 001DAC18 38 80 00 01 */ li r4, 1 +/* 801DDCBC 001DAC1C 4B FC 9C 21 */ bl sub_801a78dc +/* 801DDCC0 001DAC20 93 9E 05 F0 */ stw r28, 0x5f0(r30) +/* 801DDCC4 001DAC24 7F C3 F3 78 */ mr r3, r30 +/* 801DDCC8 001DAC28 7F E5 FB 78 */ mr r5, r31 +/* 801DDCCC 001DAC2C 38 9E 05 F0 */ addi r4, r30, 0x5f0 +/* 801DDCD0 001DAC30 4B FF FD ED */ bl sub_801ddabc +/* 801DDCD4 001DAC34 3C 80 80 3D */ lis r4, lbl_803D1CB8@ha +/* 801DDCD8 001DAC38 38 60 00 18 */ li r3, 0x18 +/* 801DDCDC 001DAC3C 38 84 1C B8 */ addi r4, r4, lbl_803D1CB8@l +/* 801DDCE0 001DAC40 38 A0 00 00 */ li r5, 0 +/* 801DDCE4 001DAC44 38 84 01 B3 */ addi r4, r4, 0x1b3 +/* 801DDCE8 001DAC48 48 13 7B 85 */ bl __nw__FUlPCcPCc +/* 801DDCEC 001DAC4C 7C 7C 1B 79 */ or. r28, r3, r3 +/* 801DDCF0 001DAC50 41 82 00 38 */ beq lbl_801DDD28 +/* 801DDCF4 001DAC54 81 3E 00 04 */ lwz r9, 4(r30) +/* 801DDCF8 001DAC58 7F E4 FB 78 */ mr r4, r31 +/* 801DDCFC 001DAC5C 38 A1 00 1C */ addi r5, r1, 0x1c +/* 801DDD00 001DAC60 38 C1 00 3C */ addi r6, r1, 0x3c +/* 801DDD04 001DAC64 91 21 00 3C */ stw r9, 0x3c(r1) +/* 801DDD08 001DAC68 38 E1 00 60 */ addi r7, r1, 0x60 +/* 801DDD0C 001DAC6C 39 00 00 01 */ li r8, 1 +/* 801DDD10 001DAC70 A0 1E 00 08 */ lhz r0, 8(r30) +/* 801DDD14 001DAC74 91 21 00 38 */ stw r9, 0x38(r1) +/* 801DDD18 001DAC78 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801DDD1C 001DAC7C B0 01 00 1C */ sth r0, 0x1c(r1) +/* 801DDD20 001DAC80 4B FC 9C 11 */ bl "__ct__22CCollisionActorManagerFR13CStateManager9TUniqueId7TAreaIdRCQ24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>b" +/* 801DDD24 001DAC84 7C 7C 1B 78 */ mr r28, r3 +lbl_801DDD28: +/* 801DDD28 001DAC88 80 7E 05 F4 */ lwz r3, 0x5f4(r30) +/* 801DDD2C 001DAC8C 38 80 00 01 */ li r4, 1 +/* 801DDD30 001DAC90 4B FC 9B AD */ bl sub_801a78dc +/* 801DDD34 001DAC94 93 9E 05 F4 */ stw r28, 0x5f4(r30) +/* 801DDD38 001DAC98 7F C3 F3 78 */ mr r3, r30 +/* 801DDD3C 001DAC9C 7F E5 FB 78 */ mr r5, r31 +/* 801DDD40 001DACA0 38 9E 05 F4 */ addi r4, r30, 0x5f4 +/* 801DDD44 001DACA4 4B FF FD 79 */ bl sub_801ddabc +/* 801DDD48 001DACA8 38 00 00 00 */ li r0, 0 +/* 801DDD4C 001DACAC 38 61 00 50 */ addi r3, r1, 0x50 +/* 801DDD50 001DACB0 90 01 00 54 */ stw r0, 0x54(r1) +/* 801DDD54 001DACB4 38 80 00 02 */ li r4, 2 +/* 801DDD58 001DACB8 90 01 00 58 */ stw r0, 0x58(r1) +/* 801DDD5C 001DACBC 90 01 00 5C */ stw r0, 0x5c(r1) +/* 801DDD60 001DACC0 4B F7 8A 59 */ bl "reserve__Q24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>Fi" +/* 801DDD64 001DACC4 7F C3 F3 78 */ mr r3, r30 +/* 801DDD68 001DACC8 38 9B 00 F8 */ addi r4, r27, 0xf8 +/* 801DDD6C 001DACCC 38 C1 00 50 */ addi r6, r1, 0x50 +/* 801DDD70 001DACD0 38 A0 00 02 */ li r5, 2 +/* 801DDD74 001DACD4 4B FF FA 59 */ bl sub_801dd7cc +/* 801DDD78 001DACD8 3C 80 80 3D */ lis r4, lbl_803D1CB8@ha +/* 801DDD7C 001DACDC 38 60 00 18 */ li r3, 0x18 +/* 801DDD80 001DACE0 38 84 1C B8 */ addi r4, r4, lbl_803D1CB8@l +/* 801DDD84 001DACE4 38 A0 00 00 */ li r5, 0 +/* 801DDD88 001DACE8 38 84 01 B3 */ addi r4, r4, 0x1b3 +/* 801DDD8C 001DACEC 48 13 7A E1 */ bl __nw__FUlPCcPCc +/* 801DDD90 001DACF0 7C 7B 1B 79 */ or. r27, r3, r3 +/* 801DDD94 001DACF4 41 82 00 38 */ beq lbl_801DDDCC +/* 801DDD98 001DACF8 81 3E 00 04 */ lwz r9, 4(r30) +/* 801DDD9C 001DACFC 7F E4 FB 78 */ mr r4, r31 +/* 801DDDA0 001DAD00 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801DDDA4 001DAD04 38 C1 00 34 */ addi r6, r1, 0x34 +/* 801DDDA8 001DAD08 91 21 00 34 */ stw r9, 0x34(r1) +/* 801DDDAC 001DAD0C 38 E1 00 50 */ addi r7, r1, 0x50 +/* 801DDDB0 001DAD10 39 00 00 01 */ li r8, 1 +/* 801DDDB4 001DAD14 A0 1E 00 08 */ lhz r0, 8(r30) +/* 801DDDB8 001DAD18 91 21 00 30 */ stw r9, 0x30(r1) +/* 801DDDBC 001DAD1C B0 01 00 10 */ sth r0, 0x10(r1) +/* 801DDDC0 001DAD20 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801DDDC4 001DAD24 4B FC 9B 6D */ bl "__ct__22CCollisionActorManagerFR13CStateManager9TUniqueId7TAreaIdRCQ24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>b" +/* 801DDDC8 001DAD28 7C 7B 1B 78 */ mr r27, r3 +lbl_801DDDCC: +/* 801DDDCC 001DAD2C 80 7E 05 F8 */ lwz r3, 0x5f8(r30) +/* 801DDDD0 001DAD30 38 80 00 01 */ li r4, 1 +/* 801DDDD4 001DAD34 4B FC 9B 09 */ bl sub_801a78dc +/* 801DDDD8 001DAD38 93 7E 05 F8 */ stw r27, 0x5f8(r30) +/* 801DDDDC 001DAD3C 7F C3 F3 78 */ mr r3, r30 +/* 801DDDE0 001DAD40 7F E5 FB 78 */ mr r5, r31 +/* 801DDDE4 001DAD44 38 9E 05 F8 */ addi r4, r30, 0x5f8 +/* 801DDDE8 001DAD48 4B FF FC D5 */ bl sub_801ddabc +/* 801DDDEC 001DAD4C 83 9E 05 F0 */ lwz r28, 0x5f0(r30) +/* 801DDDF0 001DAD50 80 7E 05 F4 */ lwz r3, 0x5f4(r30) +/* 801DDDF4 001DAD54 4B FC 94 55 */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 801DDDF8 001DAD58 7C 7B 1B 78 */ mr r27, r3 +/* 801DDDFC 001DAD5C 7F 83 E3 78 */ mr r3, r28 +/* 801DDE00 001DAD60 4B FC 94 49 */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 801DDE04 001DAD64 7F 43 DA 14 */ add r26, r3, r27 +/* 801DDE08 001DAD68 80 7E 05 F8 */ lwz r3, 0x5f8(r30) +/* 801DDE0C 001DAD6C 4B FC 94 3D */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 801DDE10 001DAD70 7C 60 1B 78 */ mr r0, r3 +/* 801DDE14 001DAD74 38 7E 06 34 */ addi r3, r30, 0x634 +/* 801DDE18 001DAD78 7C 9A 02 14 */ add r4, r26, r0 +/* 801DDE1C 001DAD7C 4B E2 E5 ED */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" +/* 801DDE20 001DAD80 80 9E 05 F4 */ lwz r4, 0x5f4(r30) +/* 801DDE24 001DAD84 7F C3 F3 78 */ mr r3, r30 +/* 801DDE28 001DAD88 4B FF F6 D5 */ bl sub_801dd4fc +/* 801DDE2C 001DAD8C 80 9E 05 F8 */ lwz r4, 0x5f8(r30) +/* 801DDE30 001DAD90 7F C3 F3 78 */ mr r3, r30 +/* 801DDE34 001DAD94 4B FF F6 C9 */ bl sub_801dd4fc +/* 801DDE38 001DAD98 80 7E 05 F0 */ lwz r3, 0x5f0(r30) +/* 801DDE3C 001DAD9C 4B FC 94 0D */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 801DDE40 001DADA0 7C 7B 1B 78 */ mr r27, r3 +/* 801DDE44 001DADA4 3B 20 00 00 */ li r25, 0 +/* 801DDE48 001DADA8 3B A0 00 00 */ li r29, 0 +/* 801DDE4C 001DADAC 48 00 01 00 */ b lbl_801DDF4C +lbl_801DDE50: +/* 801DDE50 001DADB0 80 7E 05 F0 */ lwz r3, 0x5f0(r30) +/* 801DDE54 001DADB4 7F 24 CB 78 */ mr r4, r25 +/* 801DDE58 001DADB8 4B FC 93 E1 */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 801DDE5C 001DADBC 80 BE 06 1C */ lwz r5, 0x61c(r30) +/* 801DDE60 001DADC0 38 81 00 0C */ addi r4, r1, 0xc +/* 801DDE64 001DADC4 A0 C3 00 3C */ lhz r6, 0x3c(r3) +/* 801DDE68 001DADC8 7F E3 FB 78 */ mr r3, r31 +/* 801DDE6C 001DADCC 7C 05 EA 2E */ lhzx r0, r5, r29 +/* 801DDE70 001DADD0 B0 C1 00 2C */ sth r6, 0x2c(r1) +/* 801DDE74 001DADD4 B0 01 00 28 */ sth r0, 0x28(r1) +/* 801DDE78 001DADD8 B0 C1 00 0C */ sth r6, 0xc(r1) +/* 801DDE7C 001DADDC 4B E6 E6 F9 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801DDE80 001DADE0 7C 64 1B 78 */ mr r4, r3 +/* 801DDE84 001DADE4 38 61 00 48 */ addi r3, r1, 0x48 +/* 801DDE88 001DADE8 4B ED 14 C5 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801DDE8C 001DADEC 83 43 00 04 */ lwz r26, 4(r3) +/* 801DDE90 001DADF0 7F E3 FB 78 */ mr r3, r31 +/* 801DDE94 001DADF4 A0 01 00 28 */ lhz r0, 0x28(r1) +/* 801DDE98 001DADF8 38 81 00 08 */ addi r4, r1, 8 +/* 801DDE9C 001DADFC B0 01 00 08 */ sth r0, 8(r1) +/* 801DDEA0 001DAE00 4B E6 E6 D5 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801DDEA4 001DAE04 28 1A 00 00 */ cmplwi r26, 0 +/* 801DDEA8 001DAE08 7C 7C 1B 78 */ mr r28, r3 +/* 801DDEAC 001DAE0C 41 82 00 98 */ beq lbl_801DDF44 +/* 801DDEB0 001DAE10 28 1C 00 00 */ cmplwi r28, 0 +/* 801DDEB4 001DAE14 41 82 00 90 */ beq lbl_801DDF44 +/* 801DDEB8 001DAE18 28 19 00 00 */ cmplwi r25, 0 +/* 801DDEBC 001DAE1C 41 82 00 20 */ beq lbl_801DDEDC +/* 801DDEC0 001DAE20 3C 80 80 57 */ lis r4, lbl_8056D718@ha +/* 801DDEC4 001DAE24 7F 43 D3 78 */ mr r3, r26 +/* 801DDEC8 001DAE28 38 84 D7 18 */ addi r4, r4, lbl_8056D718@l +/* 801DDECC 001DAE2C 4B FC AC CD */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability +/* 801DDED0 001DAE30 C0 02 AC DC */ lfs f0, lbl_805AC9FC@sda21(r2) +/* 801DDED4 001DAE34 D0 1C 03 2C */ stfs f0, 0x32c(r28) +/* 801DDED8 001DAE38 48 00 00 28 */ b lbl_801DDF00 +lbl_801DDEDC: +/* 801DDEDC 001DAE3C 81 83 00 00 */ lwz r12, 0(r3) +/* 801DDEE0 001DAE40 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 801DDEE4 001DAE44 7D 89 03 A6 */ mtctr r12 +/* 801DDEE8 001DAE48 4E 80 04 21 */ bctrl +/* 801DDEEC 001DAE4C 7C 64 1B 78 */ mr r4, r3 +/* 801DDEF0 001DAE50 7F 43 D3 78 */ mr r3, r26 +/* 801DDEF4 001DAE54 4B FC AC A5 */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability +/* 801DDEF8 001DAE58 C0 02 AD 14 */ lfs f0, lbl_805ACA34@sda21(r2) +/* 801DDEFC 001DAE5C D0 1C 03 2C */ stfs f0, 0x32c(r28) +lbl_801DDF00: +/* 801DDF00 001DAE60 7F 83 E3 78 */ mr r3, r28 +/* 801DDF04 001DAE64 7F E4 FB 78 */ mr r4, r31 +/* 801DDF08 001DAE68 81 9C 00 00 */ lwz r12, 0(r28) +/* 801DDF0C 001DAE6C 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801DDF10 001DAE70 7D 89 03 A6 */ mtctr r12 +/* 801DDF14 001DAE74 4E 80 04 21 */ bctrl +/* 801DDF18 001DAE78 7C 7C 1B 78 */ mr r28, r3 +/* 801DDF1C 001DAE7C 7F 43 D3 78 */ mr r3, r26 +/* 801DDF20 001DAE80 81 9A 00 00 */ lwz r12, 0(r26) +/* 801DDF24 001DAE84 7F E4 FB 78 */ mr r4, r31 +/* 801DDF28 001DAE88 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801DDF2C 001DAE8C 7D 89 03 A6 */ mtctr r12 +/* 801DDF30 001DAE90 4E 80 04 21 */ bctrl +/* 801DDF34 001DAE94 C0 1C 00 00 */ lfs f0, 0(r28) +/* 801DDF38 001DAE98 D0 03 00 00 */ stfs f0, 0(r3) +/* 801DDF3C 001DAE9C C0 1C 00 04 */ lfs f0, 4(r28) +/* 801DDF40 001DAEA0 D0 03 00 04 */ stfs f0, 4(r3) +lbl_801DDF44: +/* 801DDF44 001DAEA4 3B 39 00 01 */ addi r25, r25, 1 +/* 801DDF48 001DAEA8 3B BD 00 02 */ addi r29, r29, 2 +lbl_801DDF4C: +/* 801DDF4C 001DAEAC 7C 19 D8 40 */ cmplw r25, r27 +/* 801DDF50 001DAEB0 41 80 FF 00 */ blt lbl_801DDE50 +/* 801DDF54 001DAEB4 38 61 00 50 */ addi r3, r1, 0x50 +/* 801DDF58 001DAEB8 38 80 FF FF */ li r4, -1 +/* 801DDF5C 001DAEBC 4B F7 83 D1 */ bl sub_8015632c +/* 801DDF60 001DAEC0 38 61 00 60 */ addi r3, r1, 0x60 +/* 801DDF64 001DAEC4 38 80 FF FF */ li r4, -1 +/* 801DDF68 001DAEC8 4B F7 83 C5 */ bl sub_8015632c +/* 801DDF6C 001DAECC 38 61 00 70 */ addi r3, r1, 0x70 +/* 801DDF70 001DAED0 38 80 FF FF */ li r4, -1 +/* 801DDF74 001DAED4 4B F7 83 B9 */ bl sub_8015632c +/* 801DDF78 001DAED8 BB 21 00 84 */ lmw r25, 0x84(r1) +/* 801DDF7C 001DAEDC 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 801DDF80 001DAEE0 7C 08 03 A6 */ mtlr r0 +/* 801DDF84 001DAEE4 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 801DDF88 001DAEE8 4E 80 00 20 */ blr + +.global Generate__8CThardusFR13CStateManager9EStateMsgf +Generate__8CThardusFR13CStateManager9EStateMsgf: +/* 801DDF8C 001DAEEC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801DDF90 001DAEF0 7C 08 02 A6 */ mflr r0 +/* 801DDF94 001DAEF4 2C 05 00 01 */ cmpwi r5, 1 +/* 801DDF98 001DAEF8 90 01 00 24 */ stw r0, 0x24(r1) +/* 801DDF9C 001DAEFC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801DDFA0 001DAF00 41 82 00 2C */ beq lbl_801DDFCC +/* 801DDFA4 001DAF04 40 80 00 10 */ bge lbl_801DDFB4 +/* 801DDFA8 001DAF08 2C 05 00 00 */ cmpwi r5, 0 +/* 801DDFAC 001DAF0C 40 80 00 14 */ bge lbl_801DDFC0 +/* 801DDFB0 001DAF10 48 00 00 E4 */ b lbl_801DE094 +lbl_801DDFB4: +/* 801DDFB4 001DAF14 2C 05 00 03 */ cmpwi r5, 3 +/* 801DDFB8 001DAF18 40 80 00 DC */ bge lbl_801DE094 +/* 801DDFBC 001DAF1C 48 00 00 D0 */ b lbl_801DE08C +lbl_801DDFC0: +/* 801DDFC0 001DAF20 38 00 00 00 */ li r0, 0 +/* 801DDFC4 001DAF24 90 03 05 EC */ stw r0, 0x5ec(r3) +/* 801DDFC8 001DAF28 48 00 00 CC */ b lbl_801DE094 +lbl_801DDFCC: +/* 801DDFCC 001DAF2C 80 03 05 EC */ lwz r0, 0x5ec(r3) +/* 801DDFD0 001DAF30 2C 00 00 01 */ cmpwi r0, 1 +/* 801DDFD4 001DAF34 41 82 00 C0 */ beq lbl_801DE094 +/* 801DDFD8 001DAF38 40 80 00 10 */ bge lbl_801DDFE8 +/* 801DDFDC 001DAF3C 2C 00 00 00 */ cmpwi r0, 0 +/* 801DDFE0 001DAF40 40 80 00 14 */ bge lbl_801DDFF4 +/* 801DDFE4 001DAF44 48 00 00 B0 */ b lbl_801DE094 +lbl_801DDFE8: +/* 801DDFE8 001DAF48 2C 00 00 03 */ cmpwi r0, 3 +/* 801DDFEC 001DAF4C 40 80 00 A8 */ bge lbl_801DE094 +/* 801DDFF0 001DAF50 48 00 00 80 */ b lbl_801DE070 +lbl_801DDFF4: +/* 801DDFF4 001DAF54 80 83 04 50 */ lwz r4, 0x450(r3) +/* 801DDFF8 001DAF58 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 801DDFFC 001DAF5C 2C 00 00 01 */ cmpwi r0, 1 +/* 801DE000 001DAF60 40 82 00 10 */ bne lbl_801DE010 +/* 801DE004 001DAF64 38 00 00 02 */ li r0, 2 +/* 801DE008 001DAF68 90 03 05 EC */ stw r0, 0x5ec(r3) +/* 801DE00C 001DAF6C 48 00 00 88 */ b lbl_801DE094 +lbl_801DE010: +/* 801DE010 001DAF70 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801DE014 001DAF74 38 A0 00 00 */ li r5, 0 +/* 801DE018 001DAF78 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801DE01C 001DAF7C 3C 60 80 3E */ lis r3, lbl_803DAA20@ha +/* 801DE020 001DAF80 90 01 00 08 */ stw r0, 8(r1) +/* 801DE024 001DAF84 38 03 AA 20 */ addi r0, r3, lbl_803DAA20@l +/* 801DE028 001DAF88 3B E4 00 04 */ addi r31, r4, 4 +/* 801DE02C 001DAF8C 38 80 00 00 */ li r4, 0 +/* 801DE030 001DAF90 90 A1 00 0C */ stw r5, 0xc(r1) +/* 801DE034 001DAF94 7F E3 FB 78 */ mr r3, r31 +/* 801DE038 001DAF98 90 01 00 08 */ stw r0, 8(r1) +/* 801DE03C 001DAF9C 90 A1 00 10 */ stw r5, 0x10(r1) +/* 801DE040 001DAFA0 4B F5 33 F9 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801DE044 001DAFA4 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801DE048 001DAFA8 3C 60 80 3E */ lis r3, lbl_803DAA20@ha +/* 801DE04C 001DAFAC 38 83 AA 20 */ addi r4, r3, lbl_803DAA20@l +/* 801DE050 001DAFB0 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801DE054 001DAFB4 90 1F 00 BC */ stw r0, 0xbc(r31) +/* 801DE058 001DAFB8 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801DE05C 001DAFBC 80 61 00 10 */ lwz r3, 0x10(r1) +/* 801DE060 001DAFC0 90 81 00 08 */ stw r4, 8(r1) +/* 801DE064 001DAFC4 90 7F 00 C0 */ stw r3, 0xc0(r31) +/* 801DE068 001DAFC8 90 01 00 08 */ stw r0, 8(r1) +/* 801DE06C 001DAFCC 48 00 00 28 */ b lbl_801DE094 +lbl_801DE070: +/* 801DE070 001DAFD0 80 83 04 50 */ lwz r4, 0x450(r3) +/* 801DE074 001DAFD4 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 801DE078 001DAFD8 2C 00 00 01 */ cmpwi r0, 1 +/* 801DE07C 001DAFDC 41 82 00 18 */ beq lbl_801DE094 +/* 801DE080 001DAFE0 38 00 00 03 */ li r0, 3 +/* 801DE084 001DAFE4 90 03 05 EC */ stw r0, 0x5ec(r3) +/* 801DE088 001DAFE8 48 00 00 0C */ b lbl_801DE094 +lbl_801DE08C: +/* 801DE08C 001DAFEC 38 00 00 00 */ li r0, 0 +/* 801DE090 001DAFF0 98 03 09 3D */ stb r0, 0x93d(r3) +lbl_801DE094: +/* 801DE094 001DAFF4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801DE098 001DAFF8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801DE09C 001DAFFC 7C 08 03 A6 */ mtlr r0 +/* 801DE0A0 001DB000 38 21 00 20 */ addi r1, r1, 0x20 +/* 801DE0A4 001DB004 4E 80 00 20 */ blr + +.global HearPlayer__8CThardusFR13CStateManagerf +HearPlayer__8CThardusFR13CStateManagerf: +/* 801DE0A8 001DB008 88 63 05 C8 */ lbz r3, 0x5c8(r3) +/* 801DE0AC 001DB00C 4E 80 00 20 */ blr + +.global Touch__8CThardusFR6CActorR13CStateManager +Touch__8CThardusFR6CActorR13CStateManager: +/* 801DE0B0 001DB010 4E 80 00 20 */ blr + +.global sub_801de0b4 +sub_801de0b4: +/* 801DE0B4 001DB014 80 03 05 EC */ lwz r0, 0x5ec(r3) +/* 801DE0B8 001DB018 20 00 00 03 */ subfic r0, r0, 3 +/* 801DE0BC 001DB01C 7C 00 00 34 */ cntlzw r0, r0 +/* 801DE0C0 001DB020 54 03 D9 7E */ srwi r3, r0, 5 +/* 801DE0C4 001DB024 4E 80 00 20 */ blr + +.global Cover__8CThardusFR13CStateManager9EStateMsgf +Cover__8CThardusFR13CStateManager9EStateMsgf: +/* 801DE0C8 001DB028 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801DE0CC 001DB02C 7C 08 02 A6 */ mflr r0 +/* 801DE0D0 001DB030 2C 05 00 01 */ cmpwi r5, 1 +/* 801DE0D4 001DB034 90 01 00 14 */ stw r0, 0x14(r1) +/* 801DE0D8 001DB038 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801DE0DC 001DB03C 7C 9F 23 78 */ mr r31, r4 +/* 801DE0E0 001DB040 93 C1 00 08 */ stw r30, 8(r1) +/* 801DE0E4 001DB044 7C 7E 1B 78 */ mr r30, r3 +/* 801DE0E8 001DB048 41 82 00 70 */ beq lbl_801DE158 +/* 801DE0EC 001DB04C 40 80 00 10 */ bge lbl_801DE0FC +/* 801DE0F0 001DB050 2C 05 00 00 */ cmpwi r5, 0 +/* 801DE0F4 001DB054 40 80 00 14 */ bge lbl_801DE108 +/* 801DE0F8 001DB058 48 00 00 60 */ b lbl_801DE158 +lbl_801DE0FC: +/* 801DE0FC 001DB05C 2C 05 00 03 */ cmpwi r5, 3 +/* 801DE100 001DB060 40 80 00 58 */ bge lbl_801DE158 +/* 801DE104 001DB064 48 00 00 4C */ b lbl_801DE150 +lbl_801DE108: +/* 801DE108 001DB068 7F E5 FB 78 */ mr r5, r31 +/* 801DE10C 001DB06C 38 80 00 01 */ li r4, 1 +/* 801DE110 001DB070 4B FF D4 51 */ bl sub_801db560 +/* 801DE114 001DB074 38 00 00 00 */ li r0, 0 +/* 801DE118 001DB078 98 1E 09 3D */ stb r0, 0x93d(r30) +/* 801DE11C 001DB07C 98 1E 09 09 */ stb r0, 0x909(r30) +/* 801DE120 001DB080 80 7E 06 14 */ lwz r3, 0x614(r30) +/* 801DE124 001DB084 80 9E 06 48 */ lwz r4, 0x648(r30) +/* 801DE128 001DB088 38 03 FF FE */ addi r0, r3, -2 +/* 801DE12C 001DB08C 7C 04 00 40 */ cmplw r4, r0 +/* 801DE130 001DB090 41 80 00 0C */ blt lbl_801DE13C +/* 801DE134 001DB094 C0 02 AD 2C */ lfs f0, lbl_805ACA4C@sda21(r2) +/* 801DE138 001DB098 D0 1E 06 90 */ stfs f0, 0x690(r30) +lbl_801DE13C: +/* 801DE13C 001DB09C 7F C3 F3 78 */ mr r3, r30 +/* 801DE140 001DB0A0 7F E5 FB 78 */ mr r5, r31 +/* 801DE144 001DB0A4 38 80 00 33 */ li r4, 0x33 +/* 801DE148 001DB0A8 4B E7 62 09 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801DE14C 001DB0AC 48 00 00 0C */ b lbl_801DE158 +lbl_801DE150: +/* 801DE150 001DB0B0 C0 02 AC D8 */ lfs f0, lbl_805AC9F8@sda21(r2) +/* 801DE154 001DB0B4 D0 1E 06 90 */ stfs f0, 0x690(r30) +lbl_801DE158: +/* 801DE158 001DB0B8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801DE15C 001DB0BC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801DE160 001DB0C0 83 C1 00 08 */ lwz r30, 8(r1) +/* 801DE164 001DB0C4 7C 08 03 A6 */ mtlr r0 +/* 801DE168 001DB0C8 38 21 00 10 */ addi r1, r1, 0x10 +/* 801DE16C 001DB0CC 4E 80 00 20 */ blr + +.global GetUp__8CThardusFR13CStateManager9EStateMsgf +GetUp__8CThardusFR13CStateManager9EStateMsgf: +/* 801DE170 001DB0D0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801DE174 001DB0D4 7C 08 02 A6 */ mflr r0 +/* 801DE178 001DB0D8 2C 05 00 00 */ cmpwi r5, 0 +/* 801DE17C 001DB0DC 90 01 00 14 */ stw r0, 0x14(r1) +/* 801DE180 001DB0E0 41 82 00 0C */ beq lbl_801DE18C +/* 801DE184 001DB0E4 41 80 00 14 */ blt lbl_801DE198 +/* 801DE188 001DB0E8 48 00 00 10 */ b lbl_801DE198 +lbl_801DE18C: +/* 801DE18C 001DB0EC 7C 85 23 78 */ mr r5, r4 +/* 801DE190 001DB0F0 38 80 00 33 */ li r4, 0x33 +/* 801DE194 001DB0F4 4B E7 5D ED */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +lbl_801DE198: +/* 801DE198 001DB0F8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801DE19C 001DB0FC 7C 08 03 A6 */ mtlr r0 +/* 801DE1A0 001DB100 38 21 00 10 */ addi r1, r1, 0x10 +/* 801DE1A4 001DB104 4E 80 00 20 */ blr + +.global sub_801de1a8 +sub_801de1a8: +/* 801DE1A8 001DB108 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801DE1AC 001DB10C 7C 08 02 A6 */ mflr r0 +/* 801DE1B0 001DB110 90 01 00 44 */ stw r0, 0x44(r1) +/* 801DE1B4 001DB114 BF 21 00 24 */ stmw r25, 0x24(r1) +/* 801DE1B8 001DB118 7C DF 33 78 */ mr r31, r6 +/* 801DE1BC 001DB11C 7C 7C 1B 78 */ mr r28, r3 +/* 801DE1C0 001DB120 7C 9D 23 78 */ mr r29, r4 +/* 801DE1C4 001DB124 7C BE 2B 78 */ mr r30, r5 +/* 801DE1C8 001DB128 80 06 00 00 */ lwz r0, 0(r6) +/* 801DE1CC 001DB12C 28 00 00 10 */ cmplwi r0, 0x10 +/* 801DE1D0 001DB130 40 80 00 F4 */ bge lbl_801DE2C4 +/* 801DE1D4 001DB134 88 1D 00 30 */ lbz r0, 0x30(r29) +/* 801DE1D8 001DB138 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801DE1DC 001DB13C 41 82 00 E8 */ beq lbl_801DE2C4 +/* 801DE1E0 001DB140 7F A3 EB 78 */ mr r3, r29 +/* 801DE1E4 001DB144 38 80 00 00 */ li r4, 0 +/* 801DE1E8 001DB148 81 9D 00 00 */ lwz r12, 0(r29) +/* 801DE1EC 001DB14C 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801DE1F0 001DB150 7D 89 03 A6 */ mtctr r12 +/* 801DE1F4 001DB154 4E 80 04 21 */ bctrl +/* 801DE1F8 001DB158 80 1F 00 00 */ lwz r0, 0(r31) +/* 801DE1FC 001DB15C A0 9D 00 08 */ lhz r4, 8(r29) +/* 801DE200 001DB160 54 00 08 3C */ slwi r0, r0, 1 +/* 801DE204 001DB164 7C 7F 02 14 */ add r3, r31, r0 +/* 801DE208 001DB168 34 63 00 04 */ addic. r3, r3, 4 +/* 801DE20C 001DB16C 41 82 00 08 */ beq lbl_801DE214 +/* 801DE210 001DB170 B0 83 00 00 */ sth r4, 0(r3) +lbl_801DE214: +/* 801DE214 001DB174 80 7F 00 00 */ lwz r3, 0(r31) +/* 801DE218 001DB178 3B 20 00 00 */ li r25, 0 +/* 801DE21C 001DB17C 3B 60 00 00 */ li r27, 0 +/* 801DE220 001DB180 38 03 00 01 */ addi r0, r3, 1 +/* 801DE224 001DB184 90 1F 00 00 */ stw r0, 0(r31) +/* 801DE228 001DB188 83 5D 00 24 */ lwz r26, 0x24(r29) +/* 801DE22C 001DB18C 48 00 00 78 */ b lbl_801DE2A4 +lbl_801DE230: +/* 801DE230 001DB190 80 BD 00 2C */ lwz r5, 0x2c(r29) +/* 801DE234 001DB194 38 1B 00 08 */ addi r0, r27, 8 +/* 801DE238 001DB198 7F C4 F3 78 */ mr r4, r30 +/* 801DE23C 001DB19C 38 61 00 0C */ addi r3, r1, 0xc +/* 801DE240 001DB1A0 7C 05 00 2E */ lwzx r0, r5, r0 +/* 801DE244 001DB1A4 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801DE248 001DB1A8 90 01 00 14 */ stw r0, 0x14(r1) +/* 801DE24C 001DB1AC 4B E6 9C D1 */ bl GetIdForScript__13CStateManagerCF9TEditorId +/* 801DE250 001DB1B0 A0 61 00 0C */ lhz r3, 0xc(r1) +/* 801DE254 001DB1B4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801DE258 001DB1B8 B0 61 00 10 */ sth r3, 0x10(r1) +/* 801DE25C 001DB1BC 7C 03 00 40 */ cmplw r3, r0 +/* 801DE260 001DB1C0 41 82 00 3C */ beq lbl_801DE29C +/* 801DE264 001DB1C4 B0 61 00 08 */ sth r3, 8(r1) +/* 801DE268 001DB1C8 7F C3 F3 78 */ mr r3, r30 +/* 801DE26C 001DB1CC 38 81 00 08 */ addi r4, r1, 8 +/* 801DE270 001DB1D0 4B E6 E3 05 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801DE274 001DB1D4 7C 64 1B 78 */ mr r4, r3 +/* 801DE278 001DB1D8 38 61 00 18 */ addi r3, r1, 0x18 +/* 801DE27C 001DB1DC 4B EC 82 D1 */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 801DE280 001DB1E0 80 83 00 04 */ lwz r4, 4(r3) +/* 801DE284 001DB1E4 28 04 00 00 */ cmplwi r4, 0 +/* 801DE288 001DB1E8 41 82 00 14 */ beq lbl_801DE29C +/* 801DE28C 001DB1EC 7F 83 E3 78 */ mr r3, r28 +/* 801DE290 001DB1F0 7F C5 F3 78 */ mr r5, r30 +/* 801DE294 001DB1F4 7F E6 FB 78 */ mr r6, r31 +/* 801DE298 001DB1F8 4B FF FF 11 */ bl sub_801de1a8 +lbl_801DE29C: +/* 801DE29C 001DB1FC 3B 39 00 01 */ addi r25, r25, 1 +/* 801DE2A0 001DB200 3B 7B 00 0C */ addi r27, r27, 0xc +lbl_801DE2A4: +/* 801DE2A4 001DB204 7C 19 D0 40 */ cmplw r25, r26 +/* 801DE2A8 001DB208 41 80 FF 88 */ blt lbl_801DE230 +/* 801DE2AC 001DB20C 7F A3 EB 78 */ mr r3, r29 +/* 801DE2B0 001DB210 38 80 00 01 */ li r4, 1 +/* 801DE2B4 001DB214 81 9D 00 00 */ lwz r12, 0(r29) +/* 801DE2B8 001DB218 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801DE2BC 001DB21C 7D 89 03 A6 */ mtctr r12 +/* 801DE2C0 001DB220 4E 80 04 21 */ bctrl +lbl_801DE2C4: +/* 801DE2C4 001DB224 BB 21 00 24 */ lmw r25, 0x24(r1) +/* 801DE2C8 001DB228 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801DE2CC 001DB22C 7C 08 03 A6 */ mtlr r0 +/* 801DE2D0 001DB230 38 21 00 40 */ addi r1, r1, 0x40 +/* 801DE2D4 001DB234 4E 80 00 20 */ blr + +.global Render__8CThardusCFRC13CStateManager +Render__8CThardusCFRC13CStateManager: +/* 801DE2D8 001DB238 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801DE2DC 001DB23C 7C 08 02 A6 */ mflr r0 +/* 801DE2E0 001DB240 90 01 00 14 */ stw r0, 0x14(r1) +/* 801DE2E4 001DB244 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801DE2E8 001DB248 7C 9F 23 78 */ mr r31, r4 +/* 801DE2EC 001DB24C 93 C1 00 08 */ stw r30, 8(r1) +/* 801DE2F0 001DB250 7C 7E 1B 78 */ mr r30, r3 +/* 801DE2F4 001DB254 4B E9 9D 39 */ bl Render__10CPatternedCFRC13CStateManager +/* 801DE2F8 001DB258 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 801DE2FC 001DB25C 7F E4 FB 78 */ mr r4, r31 +/* 801DE300 001DB260 80 63 00 00 */ lwz r3, 0(r3) +/* 801DE304 001DB264 4B EB 32 55 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager +/* 801DE308 001DB268 2C 03 00 03 */ cmpwi r3, 3 +/* 801DE30C 001DB26C 40 82 00 1C */ bne lbl_801DE328 +/* 801DE310 001DB270 80 1E 07 C4 */ lwz r0, 0x7c4(r30) +/* 801DE314 001DB274 2C 00 00 00 */ cmpwi r0, 0 +/* 801DE318 001DB278 41 82 00 10 */ beq lbl_801DE328 +/* 801DE31C 001DB27C C0 3E 07 C0 */ lfs f1, 0x7c0(r30) +/* 801DE320 001DB280 7F C3 F3 78 */ mr r3, r30 +/* 801DE324 001DB284 48 00 4F 7D */ bl sub_801e32a0 +lbl_801DE328: +/* 801DE328 001DB288 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801DE32C 001DB28C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801DE330 001DB290 83 C1 00 08 */ lwz r30, 8(r1) +/* 801DE334 001DB294 7C 08 03 A6 */ mtlr r0 +/* 801DE338 001DB298 38 21 00 10 */ addi r1, r1, 0x10 +/* 801DE33C 001DB29C 4E 80 00 20 */ blr + +.global PreRender__8CThardusFR13CStateManagerRC14CFrustumPlanes +PreRender__8CThardusFR13CStateManagerRC14CFrustumPlanes: +/* 801DE340 001DB2A0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801DE344 001DB2A4 7C 08 02 A6 */ mflr r0 +/* 801DE348 001DB2A8 90 01 00 24 */ stw r0, 0x24(r1) +/* 801DE34C 001DB2AC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801DE350 001DB2B0 7C 7F 1B 78 */ mr r31, r3 +/* 801DE354 001DB2B4 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801DE358 001DB2B8 7C 9E 23 78 */ mr r30, r4 +/* 801DE35C 001DB2BC 4B E9 9F 81 */ bl PreRender__10CPatternedFR13CStateManagerRC14CFrustumPlanes +/* 801DE360 001DB2C0 80 7E 08 B8 */ lwz r3, 0x8b8(r30) +/* 801DE364 001DB2C4 7F C4 F3 78 */ mr r4, r30 +/* 801DE368 001DB2C8 80 63 00 00 */ lwz r3, 0(r3) +/* 801DE36C 001DB2CC 4B EB 31 ED */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager +/* 801DE370 001DB2D0 2C 03 00 03 */ cmpwi r3, 3 +/* 801DE374 001DB2D4 40 82 00 5C */ bne lbl_801DE3D0 +/* 801DE378 001DB2D8 C0 22 AC D8 */ lfs f1, lbl_805AC9F8@sda21(r2) +/* 801DE37C 001DB2DC 38 80 00 00 */ li r4, 0 +/* 801DE380 001DB2E0 38 00 00 03 */ li r0, 3 +/* 801DE384 001DB2E4 98 81 00 10 */ stb r4, 0x10(r1) +/* 801DE388 001DB2E8 FC 40 08 90 */ fmr f2, f1 +/* 801DE38C 001DB2EC 38 61 00 14 */ addi r3, r1, 0x14 +/* 801DE390 001DB2F0 FC 60 08 90 */ fmr f3, f1 +/* 801DE394 001DB2F4 98 81 00 11 */ stb r4, 0x11(r1) +/* 801DE398 001DB2F8 FC 80 08 90 */ fmr f4, f1 +/* 801DE39C 001DB2FC B0 01 00 12 */ sth r0, 0x12(r1) +/* 801DE3A0 001DB300 48 18 50 4D */ bl __ct__6CColorFffff +/* 801DE3A4 001DB304 A0 01 00 12 */ lhz r0, 0x12(r1) +/* 801DE3A8 001DB308 88 81 00 11 */ lbz r4, 0x11(r1) +/* 801DE3AC 001DB30C 54 03 00 3A */ rlwinm r3, r0, 0, 0, 0x1d +/* 801DE3B0 001DB310 80 A1 00 14 */ lwz r5, 0x14(r1) +/* 801DE3B4 001DB314 88 01 00 10 */ lbz r0, 0x10(r1) +/* 801DE3B8 001DB318 60 63 00 01 */ ori r3, r3, 1 +/* 801DE3BC 001DB31C 98 1F 00 B4 */ stb r0, 0xb4(r31) +/* 801DE3C0 001DB320 98 9F 00 B5 */ stb r4, 0xb5(r31) +/* 801DE3C4 001DB324 B0 7F 00 B6 */ sth r3, 0xb6(r31) +/* 801DE3C8 001DB328 90 BF 00 B8 */ stw r5, 0xb8(r31) +/* 801DE3CC 001DB32C 48 00 00 50 */ b lbl_801DE41C +lbl_801DE3D0: +/* 801DE3D0 001DB330 C0 22 AC D8 */ lfs f1, lbl_805AC9F8@sda21(r2) +/* 801DE3D4 001DB334 38 80 00 00 */ li r4, 0 +/* 801DE3D8 001DB338 38 00 00 03 */ li r0, 3 +/* 801DE3DC 001DB33C 98 81 00 08 */ stb r4, 8(r1) +/* 801DE3E0 001DB340 FC 40 08 90 */ fmr f2, f1 +/* 801DE3E4 001DB344 38 61 00 0C */ addi r3, r1, 0xc +/* 801DE3E8 001DB348 FC 60 08 90 */ fmr f3, f1 +/* 801DE3EC 001DB34C 98 81 00 09 */ stb r4, 9(r1) +/* 801DE3F0 001DB350 FC 80 08 90 */ fmr f4, f1 +/* 801DE3F4 001DB354 B0 01 00 0A */ sth r0, 0xa(r1) +/* 801DE3F8 001DB358 48 18 4F F5 */ bl __ct__6CColorFffff +/* 801DE3FC 001DB35C 88 01 00 08 */ lbz r0, 8(r1) +/* 801DE400 001DB360 98 1F 00 B4 */ stb r0, 0xb4(r31) +/* 801DE404 001DB364 88 01 00 09 */ lbz r0, 9(r1) +/* 801DE408 001DB368 98 1F 00 B5 */ stb r0, 0xb5(r31) +/* 801DE40C 001DB36C A0 01 00 0A */ lhz r0, 0xa(r1) +/* 801DE410 001DB370 B0 1F 00 B6 */ sth r0, 0xb6(r31) +/* 801DE414 001DB374 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801DE418 001DB378 90 1F 00 B8 */ stw r0, 0xb8(r31) +lbl_801DE41C: +/* 801DE41C 001DB37C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801DE420 001DB380 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801DE424 001DB384 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801DE428 001DB388 7C 08 03 A6 */ mtlr r0 +/* 801DE42C 001DB38C 38 21 00 20 */ addi r1, r1, 0x20 +/* 801DE430 001DB390 4E 80 00 20 */ blr + +.global sub_801de434 +sub_801de434: +/* 801DE434 001DB394 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801DE438 001DB398 7C 08 02 A6 */ mflr r0 +/* 801DE43C 001DB39C 90 01 00 34 */ stw r0, 0x34(r1) +/* 801DE440 001DB3A0 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801DE444 001DB3A4 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801DE448 001DB3A8 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801DE44C 001DB3AC 7C BD 2B 78 */ mr r29, r5 +/* 801DE450 001DB3B0 93 81 00 20 */ stw r28, 0x20(r1) +/* 801DE454 001DB3B4 7C 7C 1B 78 */ mr r28, r3 +/* 801DE458 001DB3B8 88 04 08 F1 */ lbz r0, 0x8f1(r4) +/* 801DE45C 001DB3BC 7C 00 07 74 */ extsb r0, r0 +/* 801DE460 001DB3C0 2C 00 FF FF */ cmpwi r0, -1 +/* 801DE464 001DB3C4 41 82 00 B0 */ beq lbl_801DE514 +/* 801DE468 001DB3C8 8B C4 08 F2 */ lbz r30, 0x8f2(r4) +/* 801DE46C 001DB3CC 7F C3 07 74 */ extsb r3, r30 +/* 801DE470 001DB3D0 2C 03 FF FF */ cmpwi r3, -1 +/* 801DE474 001DB3D4 41 82 00 A0 */ beq lbl_801DE514 +/* 801DE478 001DB3D8 1C 00 00 24 */ mulli r0, r0, 0x24 +/* 801DE47C 001DB3DC 38 C3 00 01 */ addi r6, r3, 1 +/* 801DE480 001DB3E0 7F A3 EB 78 */ mr r3, r29 +/* 801DE484 001DB3E4 7F E4 02 14 */ add r31, r4, r0 +/* 801DE488 001DB3E8 84 BF 05 7C */ lwzu r5, 0x57c(r31) +/* 801DE48C 001DB3EC 7C 06 2B D6 */ divw r0, r6, r5 +/* 801DE490 001DB3F0 7C 00 29 D6 */ mullw r0, r0, r5 +/* 801DE494 001DB3F4 7C 00 30 50 */ subf r0, r0, r6 +/* 801DE498 001DB3F8 98 04 08 F2 */ stb r0, 0x8f2(r4) +/* 801DE49C 001DB3FC 88 04 08 F2 */ lbz r0, 0x8f2(r4) +/* 801DE4A0 001DB400 38 81 00 0C */ addi r4, r1, 0xc +/* 801DE4A4 001DB404 7C 00 07 74 */ extsb r0, r0 +/* 801DE4A8 001DB408 54 00 08 3C */ slwi r0, r0, 1 +/* 801DE4AC 001DB40C 7C BF 02 14 */ add r5, r31, r0 +/* 801DE4B0 001DB410 A0 05 00 04 */ lhz r0, 4(r5) +/* 801DE4B4 001DB414 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801DE4B8 001DB418 4B E6 E0 ED */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801DE4BC 001DB41C 7C 64 1B 78 */ mr r4, r3 +/* 801DE4C0 001DB420 38 61 00 18 */ addi r3, r1, 0x18 +/* 801DE4C4 001DB424 4B EC 80 89 */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 801DE4C8 001DB428 7F C0 07 74 */ extsb r0, r30 +/* 801DE4CC 001DB42C 83 C3 00 04 */ lwz r30, 4(r3) +/* 801DE4D0 001DB430 54 00 08 3C */ slwi r0, r0, 1 +/* 801DE4D4 001DB434 7F A3 EB 78 */ mr r3, r29 +/* 801DE4D8 001DB438 7C BF 02 14 */ add r5, r31, r0 +/* 801DE4DC 001DB43C 38 81 00 08 */ addi r4, r1, 8 +/* 801DE4E0 001DB440 A0 05 00 04 */ lhz r0, 4(r5) +/* 801DE4E4 001DB444 B0 01 00 08 */ sth r0, 8(r1) +/* 801DE4E8 001DB448 4B E6 E0 BD */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801DE4EC 001DB44C 7C 64 1B 78 */ mr r4, r3 +/* 801DE4F0 001DB450 38 61 00 10 */ addi r3, r1, 0x10 +/* 801DE4F4 001DB454 4B EC 80 59 */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 801DE4F8 001DB458 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 801DE4FC 001DB45C C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 801DE500 001DB460 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801DE504 001DB464 D0 1C 00 00 */ stfs f0, 0(r28) +/* 801DE508 001DB468 D0 3C 00 04 */ stfs f1, 4(r28) +/* 801DE50C 001DB46C D0 5C 00 08 */ stfs f2, 8(r28) +/* 801DE510 001DB470 48 00 00 20 */ b lbl_801DE530 +lbl_801DE514: +/* 801DE514 001DB474 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801DE518 001DB478 C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) +/* 801DE51C 001DB47C D0 1C 00 00 */ stfs f0, 0(r28) +/* 801DE520 001DB480 C0 03 00 04 */ lfs f0, 4(r3) +/* 801DE524 001DB484 D0 1C 00 04 */ stfs f0, 4(r28) +/* 801DE528 001DB488 C0 03 00 08 */ lfs f0, 8(r3) +/* 801DE52C 001DB48C D0 1C 00 08 */ stfs f0, 8(r28) +lbl_801DE530: +/* 801DE530 001DB490 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801DE534 001DB494 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801DE538 001DB498 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801DE53C 001DB49C 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801DE540 001DB4A0 83 81 00 20 */ lwz r28, 0x20(r1) +/* 801DE544 001DB4A4 7C 08 03 A6 */ mtlr r0 +/* 801DE548 001DB4A8 38 21 00 30 */ addi r1, r1, 0x30 +/* 801DE54C 001DB4AC 4E 80 00 20 */ blr + +.global sub_801de550 +sub_801de550: +/* 801DE550 001DB4B0 94 21 FE 60 */ stwu r1, -0x1a0(r1) +/* 801DE554 001DB4B4 7C 08 02 A6 */ mflr r0 +/* 801DE558 001DB4B8 90 01 01 A4 */ stw r0, 0x1a4(r1) +/* 801DE55C 001DB4BC DB E1 01 90 */ stfd f31, 0x190(r1) +/* 801DE560 001DB4C0 F3 E1 01 98 */ psq_st f31, 408(r1), 0, qr0 +/* 801DE564 001DB4C4 DB C1 01 80 */ stfd f30, 0x180(r1) +/* 801DE568 001DB4C8 F3 C1 01 88 */ psq_st f30, 392(r1), 0, qr0 +/* 801DE56C 001DB4CC DB A1 01 70 */ stfd f29, 0x170(r1) +/* 801DE570 001DB4D0 F3 A1 01 78 */ psq_st f29, 376(r1), 0, qr0 +/* 801DE574 001DB4D4 BE 61 01 3C */ stmw r19, 0x13c(r1) +/* 801DE578 001DB4D8 7C 9E 23 78 */ mr r30, r4 +/* 801DE57C 001DB4DC 7C 7D 1B 78 */ mr r29, r3 +/* 801DE580 001DB4E0 83 24 05 78 */ lwz r25, 0x578(r4) +/* 801DE584 001DB4E4 7C BF 2B 78 */ mr r31, r5 +/* 801DE588 001DB4E8 3B 40 FF FF */ li r26, -1 +/* 801DE58C 001DB4EC 3A A0 FF FF */ li r21, -1 +/* 801DE590 001DB4F0 28 19 00 00 */ cmplwi r25, 0 +/* 801DE594 001DB4F4 41 82 03 AC */ beq lbl_801DE940 +/* 801DE598 001DB4F8 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 801DE59C 001DB4FC 38 00 00 00 */ li r0, 0 +/* 801DE5A0 001DB500 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 801DE5A4 001DB504 7F 24 CB 78 */ mr r4, r25 +/* 801DE5A8 001DB508 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801DE5AC 001DB50C 38 61 01 1C */ addi r3, r1, 0x11c +/* 801DE5B0 001DB510 D0 21 01 14 */ stfs f1, 0x114(r1) +/* 801DE5B4 001DB514 D0 01 01 10 */ stfs f0, 0x110(r1) +/* 801DE5B8 001DB518 D0 41 01 18 */ stfs f2, 0x118(r1) +/* 801DE5BC 001DB51C 90 01 01 20 */ stw r0, 0x120(r1) +/* 801DE5C0 001DB520 90 01 01 24 */ stw r0, 0x124(r1) +/* 801DE5C4 001DB524 90 01 01 28 */ stw r0, 0x128(r1) +/* 801DE5C8 001DB528 4B E8 55 5D */ bl "reserve__Q24rstl37vectorFi" +/* 801DE5CC 001DB52C C0 5E 00 48 */ lfs f2, 0x48(r30) +/* 801DE5D0 001DB530 38 61 00 8C */ addi r3, r1, 0x8c +/* 801DE5D4 001DB534 C0 3E 00 38 */ lfs f1, 0x38(r30) +/* 801DE5D8 001DB538 C0 1E 00 58 */ lfs f0, 0x58(r30) +/* 801DE5DC 001DB53C D0 21 01 04 */ stfs f1, 0x104(r1) +/* 801DE5E0 001DB540 D0 41 01 08 */ stfs f2, 0x108(r1) +/* 801DE5E4 001DB544 D0 01 01 0C */ stfs f0, 0x10c(r1) +/* 801DE5E8 001DB548 48 13 5C 19 */ bl __ct__9CVector2fFff +/* 801DE5EC 001DB54C 38 61 00 94 */ addi r3, r1, 0x94 +/* 801DE5F0 001DB550 38 81 00 8C */ addi r4, r1, 0x8c +/* 801DE5F4 001DB554 48 13 5A 8D */ bl AsNormalized__9CVector2fCFv +/* 801DE5F8 001DB558 3B 9E 05 7C */ addi r28, r30, 0x57c +/* 801DE5FC 001DB55C 3B 60 00 00 */ li r27, 0 +/* 801DE600 001DB560 3A C0 00 00 */ li r22, 0 +/* 801DE604 001DB564 48 00 01 24 */ b lbl_801DE728 +lbl_801DE608: +/* 801DE608 001DB568 7E BC B2 14 */ add r21, r28, r22 +/* 801DE60C 001DB56C C3 C2 AD 30 */ lfs f30, lbl_805ACA50@sda21(r2) +/* 801DE610 001DB570 82 95 00 00 */ lwz r20, 0(r21) +/* 801DE614 001DB574 3B 00 00 00 */ li r24, 0 +/* 801DE618 001DB578 3A 60 00 00 */ li r19, 0 +/* 801DE61C 001DB57C 3A E0 00 00 */ li r23, 0 +/* 801DE620 001DB580 48 00 00 AC */ b lbl_801DE6CC +lbl_801DE624: +/* 801DE624 001DB584 7C 95 BA 14 */ add r4, r21, r23 +/* 801DE628 001DB588 7F E3 FB 78 */ mr r3, r31 +/* 801DE62C 001DB58C A0 04 00 04 */ lhz r0, 4(r4) +/* 801DE630 001DB590 38 81 00 18 */ addi r4, r1, 0x18 +/* 801DE634 001DB594 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801DE638 001DB598 4B E6 DF 6D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801DE63C 001DB59C 7C 64 1B 78 */ mr r4, r3 +/* 801DE640 001DB5A0 38 61 00 44 */ addi r3, r1, 0x44 +/* 801DE644 001DB5A4 4B EC 7F 09 */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 801DE648 001DB5A8 80 83 00 04 */ lwz r4, 4(r3) +/* 801DE64C 001DB5AC 38 61 00 84 */ addi r3, r1, 0x84 +/* 801DE650 001DB5B0 C0 44 00 50 */ lfs f2, 0x50(r4) +/* 801DE654 001DB5B4 C0 24 00 40 */ lfs f1, 0x40(r4) +/* 801DE658 001DB5B8 C0 04 00 60 */ lfs f0, 0x60(r4) +/* 801DE65C 001DB5BC D0 21 00 F8 */ stfs f1, 0xf8(r1) +/* 801DE660 001DB5C0 D0 41 00 FC */ stfs f2, 0xfc(r1) +/* 801DE664 001DB5C4 D0 01 01 00 */ stfs f0, 0x100(r1) +/* 801DE668 001DB5C8 48 13 5B 99 */ bl __ct__9CVector2fFff +/* 801DE66C 001DB5CC C0 21 00 84 */ lfs f1, 0x84(r1) +/* 801DE670 001DB5D0 38 61 00 74 */ addi r3, r1, 0x74 +/* 801DE674 001DB5D4 C0 01 00 88 */ lfs f0, 0x88(r1) +/* 801DE678 001DB5D8 D0 21 00 CC */ stfs f1, 0xcc(r1) +/* 801DE67C 001DB5DC C0 21 01 10 */ lfs f1, 0x110(r1) +/* 801DE680 001DB5E0 D0 01 00 D0 */ stfs f0, 0xd0(r1) +/* 801DE684 001DB5E4 C0 41 01 14 */ lfs f2, 0x114(r1) +/* 801DE688 001DB5E8 48 13 5B 79 */ bl __ct__9CVector2fFff +/* 801DE68C 001DB5EC 38 61 00 7C */ addi r3, r1, 0x7c +/* 801DE690 001DB5F0 38 81 00 CC */ addi r4, r1, 0xcc +/* 801DE694 001DB5F4 38 A1 00 74 */ addi r5, r1, 0x74 +/* 801DE698 001DB5F8 48 13 58 A1 */ bl __mi__FRC9CVector2fRC9CVector2f +/* 801DE69C 001DB5FC C0 21 00 7C */ lfs f1, 0x7c(r1) +/* 801DE6A0 001DB600 38 61 00 C4 */ addi r3, r1, 0xc4 +/* 801DE6A4 001DB604 C0 01 00 80 */ lfs f0, 0x80(r1) +/* 801DE6A8 001DB608 D0 21 00 C4 */ stfs f1, 0xc4(r1) +/* 801DE6AC 001DB60C D0 01 00 C8 */ stfs f0, 0xc8(r1) +/* 801DE6B0 001DB610 48 13 5A 45 */ bl Magnitude__9CVector2fCFv +/* 801DE6B4 001DB614 FC 01 F0 40 */ fcmpo cr0, f1, f30 +/* 801DE6B8 001DB618 40 80 00 0C */ bge lbl_801DE6C4 +/* 801DE6BC 001DB61C 7E 78 9B 78 */ mr r24, r19 +/* 801DE6C0 001DB620 FF C0 08 90 */ fmr f30, f1 +lbl_801DE6C4: +/* 801DE6C4 001DB624 3A 73 00 01 */ addi r19, r19, 1 +/* 801DE6C8 001DB628 3A F7 00 02 */ addi r23, r23, 2 +lbl_801DE6CC: +/* 801DE6CC 001DB62C 7C 13 A0 40 */ cmplw r19, r20 +/* 801DE6D0 001DB630 41 80 FF 54 */ blt lbl_801DE624 +/* 801DE6D4 001DB634 80 01 01 20 */ lwz r0, 0x120(r1) +/* 801DE6D8 001DB638 80 A1 01 24 */ lwz r5, 0x124(r1) +/* 801DE6DC 001DB63C 7C 00 28 00 */ cmpw r0, r5 +/* 801DE6E0 001DB640 41 80 00 1C */ blt lbl_801DE6FC +/* 801DE6E4 001DB644 2C 05 00 00 */ cmpwi r5, 0 +/* 801DE6E8 001DB648 38 61 01 1C */ addi r3, r1, 0x11c +/* 801DE6EC 001DB64C 38 80 00 04 */ li r4, 4 +/* 801DE6F0 001DB650 41 82 00 08 */ beq lbl_801DE6F8 +/* 801DE6F4 001DB654 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801DE6F8: +/* 801DE6F8 001DB658 4B E8 54 2D */ bl "reserve__Q24rstl37vectorFi" +lbl_801DE6FC: +/* 801DE6FC 001DB65C 80 01 01 20 */ lwz r0, 0x120(r1) +/* 801DE700 001DB660 80 61 01 28 */ lwz r3, 0x128(r1) +/* 801DE704 001DB664 54 00 10 3A */ slwi r0, r0, 2 +/* 801DE708 001DB668 7C 63 02 15 */ add. r3, r3, r0 +/* 801DE70C 001DB66C 41 82 00 08 */ beq lbl_801DE714 +/* 801DE710 001DB670 93 03 00 00 */ stw r24, 0(r3) +lbl_801DE714: +/* 801DE714 001DB674 80 61 01 20 */ lwz r3, 0x120(r1) +/* 801DE718 001DB678 3B 7B 00 01 */ addi r27, r27, 1 +/* 801DE71C 001DB67C 3A D6 00 24 */ addi r22, r22, 0x24 +/* 801DE720 001DB680 38 03 00 01 */ addi r0, r3, 1 +/* 801DE724 001DB684 90 01 01 20 */ stw r0, 0x120(r1) +lbl_801DE728: +/* 801DE728 001DB688 7C 1B C8 40 */ cmplw r27, r25 +/* 801DE72C 001DB68C 41 80 FE DC */ blt lbl_801DE608 +/* 801DE730 001DB690 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 801DE734 001DB694 38 61 00 6C */ addi r3, r1, 0x6c +/* 801DE738 001DB698 C0 44 00 50 */ lfs f2, 0x50(r4) +/* 801DE73C 001DB69C C0 24 00 40 */ lfs f1, 0x40(r4) +/* 801DE740 001DB6A0 C0 04 00 60 */ lfs f0, 0x60(r4) +/* 801DE744 001DB6A4 D0 21 00 EC */ stfs f1, 0xec(r1) +/* 801DE748 001DB6A8 D0 41 00 F0 */ stfs f2, 0xf0(r1) +/* 801DE74C 001DB6AC D0 01 00 F4 */ stfs f0, 0xf4(r1) +/* 801DE750 001DB6B0 48 13 5A B1 */ bl __ct__9CVector2fFff +/* 801DE754 001DB6B4 C3 E2 AC DC */ lfs f31, lbl_805AC9FC@sda21(r2) +/* 801DE758 001DB6B8 3B 00 00 00 */ li r24, 0 +/* 801DE75C 001DB6BC C0 21 00 6C */ lfs f1, 0x6c(r1) +/* 801DE760 001DB6C0 3B 60 00 00 */ li r27, 0 +/* 801DE764 001DB6C4 C0 01 00 70 */ lfs f0, 0x70(r1) +/* 801DE768 001DB6C8 FF C0 F8 90 */ fmr f30, f31 +/* 801DE76C 001DB6CC D0 21 00 BC */ stfs f1, 0xbc(r1) +/* 801DE770 001DB6D0 3A E0 00 00 */ li r23, 0 +/* 801DE774 001DB6D4 3A C0 00 00 */ li r22, 0 +/* 801DE778 001DB6D8 D0 01 00 C0 */ stfs f0, 0xc0(r1) +/* 801DE77C 001DB6DC 48 00 01 5C */ b lbl_801DE8D8 +lbl_801DE780: +/* 801DE780 001DB6E0 80 A1 01 28 */ lwz r5, 0x128(r1) +/* 801DE784 001DB6E4 7C DC B2 14 */ add r6, r28, r22 +/* 801DE788 001DB6E8 7F E3 FB 78 */ mr r3, r31 +/* 801DE78C 001DB6EC 38 81 00 14 */ addi r4, r1, 0x14 +/* 801DE790 001DB6F0 7C 05 B8 2E */ lwzx r0, r5, r23 +/* 801DE794 001DB6F4 54 00 08 3C */ slwi r0, r0, 1 +/* 801DE798 001DB6F8 7C A6 02 14 */ add r5, r6, r0 +/* 801DE79C 001DB6FC A0 05 00 04 */ lhz r0, 4(r5) +/* 801DE7A0 001DB700 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801DE7A4 001DB704 4B E6 DE 01 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801DE7A8 001DB708 7C 64 1B 78 */ mr r4, r3 +/* 801DE7AC 001DB70C 38 61 00 3C */ addi r3, r1, 0x3c +/* 801DE7B0 001DB710 4B EC 7D 9D */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 801DE7B4 001DB714 82 63 00 04 */ lwz r19, 4(r3) +/* 801DE7B8 001DB718 7F E5 FB 78 */ mr r5, r31 +/* 801DE7BC 001DB71C 38 61 00 0C */ addi r3, r1, 0xc +/* 801DE7C0 001DB720 7E 64 9B 78 */ mr r4, r19 +/* 801DE7C4 001DB724 4B E9 89 71 */ bl NextWaypoint__15CScriptWaypointCFR13CStateManager +/* 801DE7C8 001DB728 A0 01 00 0C */ lhz r0, 0xc(r1) +/* 801DE7CC 001DB72C 7F E3 FB 78 */ mr r3, r31 +/* 801DE7D0 001DB730 38 81 00 10 */ addi r4, r1, 0x10 +/* 801DE7D4 001DB734 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801DE7D8 001DB738 4B E6 DD CD */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801DE7DC 001DB73C 7C 64 1B 78 */ mr r4, r3 +/* 801DE7E0 001DB740 38 61 00 34 */ addi r3, r1, 0x34 +/* 801DE7E4 001DB744 4B EC 7D 69 */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 801DE7E8 001DB748 C0 53 00 50 */ lfs f2, 0x50(r19) +/* 801DE7EC 001DB74C C0 33 00 40 */ lfs f1, 0x40(r19) +/* 801DE7F0 001DB750 C0 13 00 60 */ lfs f0, 0x60(r19) +/* 801DE7F4 001DB754 82 63 00 04 */ lwz r19, 4(r3) +/* 801DE7F8 001DB758 38 61 00 64 */ addi r3, r1, 0x64 +/* 801DE7FC 001DB75C D0 21 00 E0 */ stfs f1, 0xe0(r1) +/* 801DE800 001DB760 D0 41 00 E4 */ stfs f2, 0xe4(r1) +/* 801DE804 001DB764 D0 01 00 E8 */ stfs f0, 0xe8(r1) +/* 801DE808 001DB768 48 13 59 F9 */ bl __ct__9CVector2fFff +/* 801DE80C 001DB76C C0 21 00 64 */ lfs f1, 0x64(r1) +/* 801DE810 001DB770 38 61 00 5C */ addi r3, r1, 0x5c +/* 801DE814 001DB774 C0 01 00 68 */ lfs f0, 0x68(r1) +/* 801DE818 001DB778 D0 21 00 B4 */ stfs f1, 0xb4(r1) +/* 801DE81C 001DB77C D0 01 00 B8 */ stfs f0, 0xb8(r1) +/* 801DE820 001DB780 C0 53 00 50 */ lfs f2, 0x50(r19) +/* 801DE824 001DB784 C0 33 00 40 */ lfs f1, 0x40(r19) +/* 801DE828 001DB788 C0 13 00 60 */ lfs f0, 0x60(r19) +/* 801DE82C 001DB78C D0 21 00 D4 */ stfs f1, 0xd4(r1) +/* 801DE830 001DB790 D0 41 00 D8 */ stfs f2, 0xd8(r1) +/* 801DE834 001DB794 D0 01 00 DC */ stfs f0, 0xdc(r1) +/* 801DE838 001DB798 48 13 59 C9 */ bl __ct__9CVector2fFff +/* 801DE83C 001DB79C C0 21 00 5C */ lfs f1, 0x5c(r1) +/* 801DE840 001DB7A0 38 61 00 54 */ addi r3, r1, 0x54 +/* 801DE844 001DB7A4 C0 01 00 60 */ lfs f0, 0x60(r1) +/* 801DE848 001DB7A8 38 81 00 B4 */ addi r4, r1, 0xb4 +/* 801DE84C 001DB7AC D0 21 00 AC */ stfs f1, 0xac(r1) +/* 801DE850 001DB7B0 38 A1 00 BC */ addi r5, r1, 0xbc +/* 801DE854 001DB7B4 D0 01 00 B0 */ stfs f0, 0xb0(r1) +/* 801DE858 001DB7B8 48 13 56 E1 */ bl __mi__FRC9CVector2fRC9CVector2f +/* 801DE85C 001DB7BC C0 21 00 54 */ lfs f1, 0x54(r1) +/* 801DE860 001DB7C0 38 61 00 4C */ addi r3, r1, 0x4c +/* 801DE864 001DB7C4 C0 01 00 58 */ lfs f0, 0x58(r1) +/* 801DE868 001DB7C8 38 81 00 AC */ addi r4, r1, 0xac +/* 801DE86C 001DB7CC D0 21 00 A4 */ stfs f1, 0xa4(r1) +/* 801DE870 001DB7D0 38 A1 00 BC */ addi r5, r1, 0xbc +/* 801DE874 001DB7D4 D0 01 00 A8 */ stfs f0, 0xa8(r1) +/* 801DE878 001DB7D8 48 13 56 C1 */ bl __mi__FRC9CVector2fRC9CVector2f +/* 801DE87C 001DB7DC C0 21 00 4C */ lfs f1, 0x4c(r1) +/* 801DE880 001DB7E0 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 801DE884 001DB7E4 C0 01 00 50 */ lfs f0, 0x50(r1) +/* 801DE888 001DB7E8 D0 21 00 9C */ stfs f1, 0x9c(r1) +/* 801DE88C 001DB7EC D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 801DE890 001DB7F0 48 13 58 65 */ bl Magnitude__9CVector2fCFv +/* 801DE894 001DB7F4 FF A0 08 90 */ fmr f29, f1 +/* 801DE898 001DB7F8 38 61 00 9C */ addi r3, r1, 0x9c +/* 801DE89C 001DB7FC 48 13 58 59 */ bl Magnitude__9CVector2fCFv +/* 801DE8A0 001DB800 FC 1D F8 40 */ fcmpo cr0, f29, f31 +/* 801DE8A4 001DB804 40 81 00 18 */ ble lbl_801DE8BC +/* 801DE8A8 001DB808 FC 01 E8 40 */ fcmpo cr0, f1, f29 +/* 801DE8AC 001DB80C 4C 41 13 82 */ cror 2, 1, 2 +/* 801DE8B0 001DB810 40 82 00 0C */ bne lbl_801DE8BC +/* 801DE8B4 001DB814 7F 7A 07 74 */ extsb r26, r27 +/* 801DE8B8 001DB818 FF E0 E8 90 */ fmr f31, f29 +lbl_801DE8BC: +/* 801DE8BC 001DB81C FC 1D F0 40 */ fcmpo cr0, f29, f30 +/* 801DE8C0 001DB820 40 81 00 0C */ ble lbl_801DE8CC +/* 801DE8C4 001DB824 7F 78 07 74 */ extsb r24, r27 +/* 801DE8C8 001DB828 FF C0 E8 90 */ fmr f30, f29 +lbl_801DE8CC: +/* 801DE8CC 001DB82C 3B 7B 00 01 */ addi r27, r27, 1 +/* 801DE8D0 001DB830 3A F7 00 04 */ addi r23, r23, 4 +/* 801DE8D4 001DB834 3A D6 00 24 */ addi r22, r22, 0x24 +lbl_801DE8D8: +/* 801DE8D8 001DB838 7C 1B C8 40 */ cmplw r27, r25 +/* 801DE8DC 001DB83C 41 80 FE A4 */ blt lbl_801DE780 +/* 801DE8E0 001DB840 7F 40 07 74 */ extsb r0, r26 +/* 801DE8E4 001DB844 2C 00 FF FF */ cmpwi r0, -1 +/* 801DE8E8 001DB848 40 82 00 08 */ bne lbl_801DE8F0 +/* 801DE8EC 001DB84C 7F 1A C3 78 */ mr r26, r24 +lbl_801DE8F0: +/* 801DE8F0 001DB850 80 01 01 20 */ lwz r0, 0x120(r1) +/* 801DE8F4 001DB854 7F 44 07 74 */ extsb r4, r26 +/* 801DE8F8 001DB858 80 61 01 28 */ lwz r3, 0x128(r1) +/* 801DE8FC 001DB85C 54 84 10 3A */ slwi r4, r4, 2 +/* 801DE900 001DB860 54 00 10 3A */ slwi r0, r0, 2 +/* 801DE904 001DB864 7C 03 02 14 */ add r0, r3, r0 +/* 801DE908 001DB868 7C 83 20 2E */ lwzx r4, r3, r4 +/* 801DE90C 001DB86C 90 01 00 28 */ stw r0, 0x28(r1) +/* 801DE910 001DB870 7C 65 1B 78 */ mr r5, r3 +/* 801DE914 001DB874 7C 95 07 74 */ extsb r21, r4 +/* 801DE918 001DB878 90 01 00 24 */ stw r0, 0x24(r1) +/* 801DE91C 001DB87C 90 61 00 20 */ stw r3, 0x20(r1) +/* 801DE920 001DB880 90 61 00 1C */ stw r3, 0x1c(r1) +/* 801DE924 001DB884 48 00 00 08 */ b lbl_801DE92C +lbl_801DE928: +/* 801DE928 001DB888 38 A5 00 04 */ addi r5, r5, 4 +lbl_801DE92C: +/* 801DE92C 001DB88C 7C 05 00 40 */ cmplw r5, r0 +/* 801DE930 001DB890 40 82 FF F8 */ bne lbl_801DE928 +/* 801DE934 001DB894 28 03 00 00 */ cmplwi r3, 0 +/* 801DE938 001DB898 41 82 00 08 */ beq lbl_801DE940 +/* 801DE93C 001DB89C 48 13 6F F5 */ bl Free__7CMemoryFPCv +lbl_801DE940: +/* 801DE940 001DB8A0 7F 43 07 74 */ extsb r3, r26 +/* 801DE944 001DB8A4 2C 03 FF FF */ cmpwi r3, -1 +/* 801DE948 001DB8A8 41 82 00 68 */ beq lbl_801DE9B0 +/* 801DE94C 001DB8AC 7E A0 07 74 */ extsb r0, r21 +/* 801DE950 001DB8B0 2C 00 FF FF */ cmpwi r0, -1 +/* 801DE954 001DB8B4 41 82 00 5C */ beq lbl_801DE9B0 +/* 801DE958 001DB8B8 1C 83 00 24 */ mulli r4, r3, 0x24 +/* 801DE95C 001DB8BC 9B 5E 08 F1 */ stb r26, 0x8f1(r30) +/* 801DE960 001DB8C0 54 00 08 3C */ slwi r0, r0, 1 +/* 801DE964 001DB8C4 9A BE 08 F2 */ stb r21, 0x8f2(r30) +/* 801DE968 001DB8C8 7F E3 FB 78 */ mr r3, r31 +/* 801DE96C 001DB8CC 7C 9E 22 14 */ add r4, r30, r4 +/* 801DE970 001DB8D0 7C A4 02 14 */ add r5, r4, r0 +/* 801DE974 001DB8D4 38 81 00 08 */ addi r4, r1, 8 +/* 801DE978 001DB8D8 A0 05 05 80 */ lhz r0, 0x580(r5) +/* 801DE97C 001DB8DC B0 01 00 08 */ sth r0, 8(r1) +/* 801DE980 001DB8E0 4B E6 DC 25 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801DE984 001DB8E4 7C 64 1B 78 */ mr r4, r3 +/* 801DE988 001DB8E8 38 61 00 2C */ addi r3, r1, 0x2c +/* 801DE98C 001DB8EC 4B EC 7B C1 */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 801DE990 001DB8F0 80 63 00 04 */ lwz r3, 4(r3) +/* 801DE994 001DB8F4 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 801DE998 001DB8F8 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801DE99C 001DB8FC C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801DE9A0 001DB900 D0 1D 00 00 */ stfs f0, 0(r29) +/* 801DE9A4 001DB904 D0 3D 00 04 */ stfs f1, 4(r29) +/* 801DE9A8 001DB908 D0 5D 00 08 */ stfs f2, 8(r29) +/* 801DE9AC 001DB90C 48 00 00 20 */ b lbl_801DE9CC +lbl_801DE9B0: +/* 801DE9B0 001DB910 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801DE9B4 001DB914 C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) +/* 801DE9B8 001DB918 D0 1D 00 00 */ stfs f0, 0(r29) +/* 801DE9BC 001DB91C C0 03 00 04 */ lfs f0, 4(r3) +/* 801DE9C0 001DB920 D0 1D 00 04 */ stfs f0, 4(r29) +/* 801DE9C4 001DB924 C0 03 00 08 */ lfs f0, 8(r3) +/* 801DE9C8 001DB928 D0 1D 00 08 */ stfs f0, 8(r29) +lbl_801DE9CC: +/* 801DE9CC 001DB92C E3 E1 01 98 */ psq_l f31, 408(r1), 0, qr0 +/* 801DE9D0 001DB930 CB E1 01 90 */ lfd f31, 0x190(r1) +/* 801DE9D4 001DB934 E3 C1 01 88 */ psq_l f30, 392(r1), 0, qr0 +/* 801DE9D8 001DB938 CB C1 01 80 */ lfd f30, 0x180(r1) +/* 801DE9DC 001DB93C E3 A1 01 78 */ psq_l f29, 376(r1), 0, qr0 +/* 801DE9E0 001DB940 CB A1 01 70 */ lfd f29, 0x170(r1) +/* 801DE9E4 001DB944 BA 61 01 3C */ lmw r19, 0x13c(r1) +/* 801DE9E8 001DB948 80 01 01 A4 */ lwz r0, 0x1a4(r1) +/* 801DE9EC 001DB94C 7C 08 03 A6 */ mtlr r0 +/* 801DE9F0 001DB950 38 21 01 A0 */ addi r1, r1, 0x1a0 +/* 801DE9F4 001DB954 4E 80 00 20 */ blr + +.global sub_801de9f8 +sub_801de9f8: +/* 801DE9F8 001DB958 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801DE9FC 001DB95C 7C 08 02 A6 */ mflr r0 +/* 801DEA00 001DB960 90 01 00 34 */ stw r0, 0x34(r1) +/* 801DEA04 001DB964 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 801DEA08 001DB968 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 801DEA0C 001DB96C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801DEA10 001DB970 7C 7F 1B 78 */ mr r31, r3 +/* 801DEA14 001DB974 80 64 09 00 */ lwz r3, 0x900(r4) +/* 801DEA18 001DB978 48 13 3A C5 */ bl Float__9CRandom16Fv +/* 801DEA1C 001DB97C FF E0 08 90 */ fmr f31, f1 +/* 801DEA20 001DB980 7F E3 FB 78 */ mr r3, r31 +/* 801DEA24 001DB984 4B FF D8 A5 */ bl sub_801dc2c8 +/* 801DEA28 001DB988 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801DEA2C 001DB98C 41 82 00 1C */ beq lbl_801DEA48 +/* 801DEA30 001DB990 C0 02 AD 34 */ lfs f0, lbl_805ACA54@sda21(r2) +/* 801DEA34 001DB994 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 801DEA38 001DB998 40 80 00 10 */ bge lbl_801DEA48 +/* 801DEA3C 001DB99C 38 00 00 01 */ li r0, 1 +/* 801DEA40 001DB9A0 98 1F 09 3B */ stb r0, 0x93b(r31) +/* 801DEA44 001DB9A4 48 00 00 7C */ b lbl_801DEAC0 +lbl_801DEA48: +/* 801DEA48 001DB9A8 C0 22 AD 38 */ lfs f1, lbl_805ACA58@sda21(r2) +/* 801DEA4C 001DB9AC C0 0D 92 20 */ lfs f0, lbl_805A7DE0@sda21(r13) +/* 801DEA50 001DB9B0 EC 3F 08 28 */ fsubs f1, f31, f1 +/* 801DEA54 001DB9B4 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801DEA58 001DB9B8 D0 21 00 08 */ stfs f1, 8(r1) +/* 801DEA5C 001DB9BC 40 80 00 0C */ bge lbl_801DEA68 +/* 801DEA60 001DB9C0 38 61 00 08 */ addi r3, r1, 8 +/* 801DEA64 001DB9C4 48 00 00 08 */ b lbl_801DEA6C +lbl_801DEA68: +/* 801DEA68 001DB9C8 38 6D 92 20 */ addi r3, r13, lbl_805A7DE0@sda21 +lbl_801DEA6C: +/* 801DEA6C 001DB9CC C0 23 00 00 */ lfs f1, 0(r3) +/* 801DEA70 001DB9D0 C0 02 AD 3C */ lfs f0, lbl_805ACA5C@sda21(r2) +/* 801DEA74 001DB9D4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801DEA78 001DB9D8 40 80 00 10 */ bge lbl_801DEA88 +/* 801DEA7C 001DB9DC 38 00 00 00 */ li r0, 0 +/* 801DEA80 001DB9E0 90 1F 05 C4 */ stw r0, 0x5c4(r31) +/* 801DEA84 001DB9E4 48 00 00 28 */ b lbl_801DEAAC +lbl_801DEA88: +/* 801DEA88 001DB9E8 C0 02 AD 14 */ lfs f0, lbl_805ACA34@sda21(r2) +/* 801DEA8C 001DB9EC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801DEA90 001DB9F0 4C 40 13 82 */ cror 2, 0, 2 +/* 801DEA94 001DB9F4 40 82 00 10 */ bne lbl_801DEAA4 +/* 801DEA98 001DB9F8 38 00 00 01 */ li r0, 1 +/* 801DEA9C 001DB9FC 90 1F 05 C4 */ stw r0, 0x5c4(r31) +/* 801DEAA0 001DBA00 48 00 00 0C */ b lbl_801DEAAC +lbl_801DEAA4: +/* 801DEAA4 001DBA04 38 00 00 02 */ li r0, 2 +/* 801DEAA8 001DBA08 90 1F 05 C4 */ stw r0, 0x5c4(r31) +lbl_801DEAAC: +/* 801DEAAC 001DBA0C 80 7F 05 74 */ lwz r3, 0x574(r31) +/* 801DEAB0 001DBA10 C0 02 AD 34 */ lfs f0, lbl_805ACA54@sda21(r2) +/* 801DEAB4 001DBA14 38 03 00 01 */ addi r0, r3, 1 +/* 801DEAB8 001DBA18 90 1F 05 74 */ stw r0, 0x574(r31) +/* 801DEABC 001DBA1C D0 1F 09 44 */ stfs f0, 0x944(r31) +lbl_801DEAC0: +/* 801DEAC0 001DBA20 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 801DEAC4 001DBA24 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801DEAC8 001DBA28 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 801DEACC 001DBA2C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801DEAD0 001DBA30 7C 08 03 A6 */ mtlr r0 +/* 801DEAD4 001DBA34 38 21 00 30 */ addi r1, r1, 0x30 +/* 801DEAD8 001DBA38 4E 80 00 20 */ blr + +.global sub_801deadc +sub_801deadc: +/* 801DEADC 001DBA3C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801DEAE0 001DBA40 7C 08 02 A6 */ mflr r0 +/* 801DEAE4 001DBA44 90 01 00 14 */ stw r0, 0x14(r1) +/* 801DEAE8 001DBA48 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801DEAEC 001DBA4C 7C 9F 23 78 */ mr r31, r4 +/* 801DEAF0 001DBA50 93 C1 00 08 */ stw r30, 8(r1) +/* 801DEAF4 001DBA54 7C 7E 1B 78 */ mr r30, r3 +/* 801DEAF8 001DBA58 80 03 05 74 */ lwz r0, 0x574(r3) +/* 801DEAFC 001DBA5C 28 00 00 00 */ cmplwi r0, 0 +/* 801DEB00 001DBA60 41 82 00 44 */ beq lbl_801DEB44 +/* 801DEB04 001DBA64 4B FF D7 C5 */ bl sub_801dc2c8 +/* 801DEB08 001DBA68 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801DEB0C 001DBA6C 41 82 00 28 */ beq lbl_801DEB34 +/* 801DEB10 001DBA70 80 1E 05 C4 */ lwz r0, 0x5c4(r30) +/* 801DEB14 001DBA74 2C 00 00 00 */ cmpwi r0, 0 +/* 801DEB18 001DBA78 40 82 00 1C */ bne lbl_801DEB34 +/* 801DEB1C 001DBA7C C0 3E 09 44 */ lfs f1, 0x944(r30) +/* 801DEB20 001DBA80 C0 02 AC DC */ lfs f0, lbl_805AC9FC@sda21(r2) +/* 801DEB24 001DBA84 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801DEB28 001DBA88 40 81 00 0C */ ble lbl_801DEB34 +/* 801DEB2C 001DBA8C D0 1E 09 44 */ stfs f0, 0x944(r30) +/* 801DEB30 001DBA90 48 00 00 18 */ b lbl_801DEB48 +lbl_801DEB34: +/* 801DEB34 001DBA94 7F C3 F3 78 */ mr r3, r30 +/* 801DEB38 001DBA98 7F E4 FB 78 */ mr r4, r31 +/* 801DEB3C 001DBA9C 4B FF FE BD */ bl sub_801de9f8 +/* 801DEB40 001DBAA0 48 00 00 08 */ b lbl_801DEB48 +lbl_801DEB44: +/* 801DEB44 001DBAA4 4B FF FE B5 */ bl sub_801de9f8 +lbl_801DEB48: +/* 801DEB48 001DBAA8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801DEB4C 001DBAAC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801DEB50 001DBAB0 83 C1 00 08 */ lwz r30, 8(r1) +/* 801DEB54 001DBAB4 7C 08 03 A6 */ mtlr r0 +/* 801DEB58 001DBAB8 38 21 00 10 */ addi r1, r1, 0x10 +/* 801DEB5C 001DBABC 4E 80 00 20 */ blr + +.global ShouldTurn__8CThardusFR13CStateManagerf +ShouldTurn__8CThardusFR13CStateManagerf: +/* 801DEB60 001DBAC0 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801DEB64 001DBAC4 7C 08 02 A6 */ mflr r0 +/* 801DEB68 001DBAC8 90 01 00 64 */ stw r0, 0x64(r1) +/* 801DEB6C 001DBACC 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 801DEB70 001DBAD0 7C 7F 1B 78 */ mr r31, r3 +/* 801DEB74 001DBAD4 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 801DEB78 001DBAD8 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801DEB7C 001DBADC 38 61 00 10 */ addi r3, r1, 0x10 +/* 801DEB80 001DBAE0 C0 84 00 50 */ lfs f4, 0x50(r4) +/* 801DEB84 001DBAE4 C0 04 00 40 */ lfs f0, 0x40(r4) +/* 801DEB88 001DBAE8 EC 44 08 28 */ fsubs f2, f4, f1 +/* 801DEB8C 001DBAEC C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 801DEB90 001DBAF0 C0 A4 00 60 */ lfs f5, 0x60(r4) +/* 801DEB94 001DBAF4 C0 7F 00 60 */ lfs f3, 0x60(r31) +/* 801DEB98 001DBAF8 EC 20 08 28 */ fsubs f1, f0, f1 +/* 801DEB9C 001DBAFC D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801DEBA0 001DBB00 EC 65 18 28 */ fsubs f3, f5, f3 +/* 801DEBA4 001DBB04 D0 81 00 38 */ stfs f4, 0x38(r1) +/* 801DEBA8 001DBB08 D0 A1 00 3C */ stfs f5, 0x3c(r1) +/* 801DEBAC 001DBB0C D0 21 00 40 */ stfs f1, 0x40(r1) +/* 801DEBB0 001DBB10 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 801DEBB4 001DBB14 D0 61 00 48 */ stfs f3, 0x48(r1) +/* 801DEBB8 001DBB18 48 13 56 49 */ bl __ct__9CVector2fFff +/* 801DEBBC 001DBB1C C0 21 00 10 */ lfs f1, 0x10(r1) +/* 801DEBC0 001DBB20 38 61 00 08 */ addi r3, r1, 8 +/* 801DEBC4 001DBB24 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 801DEBC8 001DBB28 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 801DEBCC 001DBB2C D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801DEBD0 001DBB30 C0 5F 00 48 */ lfs f2, 0x48(r31) +/* 801DEBD4 001DBB34 C0 3F 00 38 */ lfs f1, 0x38(r31) +/* 801DEBD8 001DBB38 C0 1F 00 58 */ lfs f0, 0x58(r31) +/* 801DEBDC 001DBB3C D0 21 00 28 */ stfs f1, 0x28(r1) +/* 801DEBE0 001DBB40 D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 801DEBE4 001DBB44 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801DEBE8 001DBB48 48 13 56 19 */ bl __ct__9CVector2fFff +/* 801DEBEC 001DBB4C C0 21 00 08 */ lfs f1, 8(r1) +/* 801DEBF0 001DBB50 38 61 00 18 */ addi r3, r1, 0x18 +/* 801DEBF4 001DBB54 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 801DEBF8 001DBB58 38 81 00 20 */ addi r4, r1, 0x20 +/* 801DEBFC 001DBB5C D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801DEC00 001DBB60 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801DEC04 001DBB64 48 13 53 C1 */ bl GetAngleDiff__9CVector2fFRC9CVector2fRC9CVector2f +/* 801DEC08 001DBB68 FC 20 0A 10 */ fabs f1, f1 +/* 801DEC0C 001DBB6C C0 02 AD 40 */ lfs f0, lbl_805ACA60@sda21(r2) +/* 801DEC10 001DBB70 FC 20 08 18 */ frsp f1, f1 +/* 801DEC14 001DBB74 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801DEC18 001DBB78 7C 00 00 26 */ mfcr r0 +/* 801DEC1C 001DBB7C 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f +/* 801DEC20 001DBB80 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 801DEC24 001DBB84 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801DEC28 001DBB88 7C 08 03 A6 */ mtlr r0 +/* 801DEC2C 001DBB8C 38 21 00 60 */ addi r1, r1, 0x60 +/* 801DEC30 001DBB90 4E 80 00 20 */ blr + +.global HitSomething__8CThardusFR13CStateManagerf +HitSomething__8CThardusFR13CStateManagerf: +/* 801DEC34 001DBB94 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801DEC38 001DBB98 7C 08 02 A6 */ mflr r0 +/* 801DEC3C 001DBB9C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801DEC40 001DBBA0 80 64 08 4C */ lwz r3, 0x84c(r4) +/* 801DEC44 001DBBA4 4B E3 70 B9 */ bl GetFrozenState__7CPlayerCFv +/* 801DEC48 001DBBA8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801DEC4C 001DBBAC 7C 08 03 A6 */ mtlr r0 +/* 801DEC50 001DBBB0 38 21 00 10 */ addi r1, r1, 0x10 +/* 801DEC54 001DBBB4 4E 80 00 20 */ blr + +.global sub_801dec58 +sub_801dec58: +/* 801DEC58 001DBBB8 80 03 05 70 */ lwz r0, 0x570(r3) +/* 801DEC5C 001DBBBC 38 80 00 00 */ li r4, 0 +/* 801DEC60 001DBBC0 28 00 00 01 */ cmplwi r0, 1 +/* 801DEC64 001DBBC4 40 80 00 10 */ bge lbl_801DEC74 +/* 801DEC68 001DBBC8 88 03 09 3B */ lbz r0, 0x93b(r3) +/* 801DEC6C 001DBBCC 28 00 00 00 */ cmplwi r0, 0 +/* 801DEC70 001DBBD0 41 82 00 08 */ beq lbl_801DEC78 +lbl_801DEC74: +/* 801DEC74 001DBBD4 38 80 00 01 */ li r4, 1 +lbl_801DEC78: +/* 801DEC78 001DBBD8 7C 83 23 78 */ mr r3, r4 +/* 801DEC7C 001DBBDC 4E 80 00 20 */ blr + +.global sub_801dec80 +sub_801dec80: +/* 801DEC80 001DBBE0 38 00 4E 20 */ li r0, 0x4e20 +/* 801DEC84 001DBBE4 90 03 06 8C */ stw r0, 0x68c(r3) +/* 801DEC88 001DBBE8 4E 80 00 20 */ blr + +.global ShouldMove__8CThardusFR13CStateManagerf +ShouldMove__8CThardusFR13CStateManagerf: +/* 801DEC8C 001DBBEC 80 83 05 74 */ lwz r4, 0x574(r3) +/* 801DEC90 001DBBF0 38 A0 00 00 */ li r5, 0 +/* 801DEC94 001DBBF4 80 03 06 8C */ lwz r0, 0x68c(r3) +/* 801DEC98 001DBBF8 7C 04 00 40 */ cmplw r4, r0 +/* 801DEC9C 001DBBFC 41 81 00 10 */ bgt lbl_801DECAC +/* 801DECA0 001DBC00 88 03 09 3B */ lbz r0, 0x93b(r3) +/* 801DECA4 001DBC04 28 00 00 00 */ cmplwi r0, 0 +/* 801DECA8 001DBC08 41 82 00 08 */ beq lbl_801DECB0 +lbl_801DECAC: +/* 801DECAC 001DBC0C 38 A0 00 01 */ li r5, 1 +lbl_801DECB0: +/* 801DECB0 001DBC10 7C A3 2B 78 */ mr r3, r5 +/* 801DECB4 001DBC14 4E 80 00 20 */ blr + +.global CoveringFire__8CThardusFR13CStateManagerf +CoveringFire__8CThardusFR13CStateManagerf: +/* 801DECB8 001DBC18 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801DECBC 001DBC1C 7C 08 02 A6 */ mflr r0 +/* 801DECC0 001DBC20 90 01 00 14 */ stw r0, 0x14(r1) +/* 801DECC4 001DBC24 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801DECC8 001DBC28 3B E0 00 00 */ li r31, 0 +/* 801DECCC 001DBC2C 80 03 05 C4 */ lwz r0, 0x5c4(r3) +/* 801DECD0 001DBC30 2C 00 00 00 */ cmpwi r0, 0 +/* 801DECD4 001DBC34 40 82 00 24 */ bne lbl_801DECF8 +/* 801DECD8 001DBC38 81 83 00 00 */ lwz r12, 0(r3) +/* 801DECDC 001DBC3C C0 22 AC DC */ lfs f1, lbl_805AC9FC@sda21(r2) +/* 801DECE0 001DBC40 81 8C 02 4C */ lwz r12, 0x24c(r12) +/* 801DECE4 001DBC44 7D 89 03 A6 */ mtctr r12 +/* 801DECE8 001DBC48 4E 80 04 21 */ bctrl +/* 801DECEC 001DBC4C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801DECF0 001DBC50 40 82 00 08 */ bne lbl_801DECF8 +/* 801DECF4 001DBC54 3B E0 00 01 */ li r31, 1 +lbl_801DECF8: +/* 801DECF8 001DBC58 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801DECFC 001DBC5C 7F E3 FB 78 */ mr r3, r31 +/* 801DED00 001DBC60 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801DED04 001DBC64 7C 08 03 A6 */ mtlr r0 +/* 801DED08 001DBC68 38 21 00 10 */ addi r1, r1, 0x10 +/* 801DED0C 001DBC6C 4E 80 00 20 */ blr + +.global HasAttackPattern__8CThardusFR13CStateManagerf +HasAttackPattern__8CThardusFR13CStateManagerf: +/* 801DED10 001DBC70 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801DED14 001DBC74 7C 08 02 A6 */ mflr r0 +/* 801DED18 001DBC78 90 01 00 14 */ stw r0, 0x14(r1) +/* 801DED1C 001DBC7C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801DED20 001DBC80 3B E0 00 00 */ li r31, 0 +/* 801DED24 001DBC84 80 03 05 C4 */ lwz r0, 0x5c4(r3) +/* 801DED28 001DBC88 2C 00 00 01 */ cmpwi r0, 1 +/* 801DED2C 001DBC8C 40 82 00 24 */ bne lbl_801DED50 +/* 801DED30 001DBC90 81 83 00 00 */ lwz r12, 0(r3) +/* 801DED34 001DBC94 C0 22 AC DC */ lfs f1, lbl_805AC9FC@sda21(r2) +/* 801DED38 001DBC98 81 8C 02 4C */ lwz r12, 0x24c(r12) +/* 801DED3C 001DBC9C 7D 89 03 A6 */ mtctr r12 +/* 801DED40 001DBCA0 4E 80 04 21 */ bctrl +/* 801DED44 001DBCA4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801DED48 001DBCA8 40 82 00 08 */ bne lbl_801DED50 +/* 801DED4C 001DBCAC 3B E0 00 01 */ li r31, 1 +lbl_801DED50: +/* 801DED50 001DBCB0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801DED54 001DBCB4 7F E3 FB 78 */ mr r3, r31 +/* 801DED58 001DBCB8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801DED5C 001DBCBC 7C 08 03 A6 */ mtlr r0 +/* 801DED60 001DBCC0 38 21 00 10 */ addi r1, r1, 0x10 +/* 801DED64 001DBCC4 4E 80 00 20 */ blr + +.global InRange__8CThardusFR13CStateManagerf +InRange__8CThardusFR13CStateManagerf: +/* 801DED68 001DBCC8 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801DED6C 001DBCCC 7C 08 02 A6 */ mflr r0 +/* 801DED70 001DBCD0 90 01 00 64 */ stw r0, 0x64(r1) +/* 801DED74 001DBCD4 DB E1 00 50 */ stfd f31, 0x50(r1) +/* 801DED78 001DBCD8 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 801DED7C 001DBCDC 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801DED80 001DBCE0 C0 43 00 50 */ lfs f2, 0x50(r3) +/* 801DED84 001DBCE4 7C 9F 23 78 */ mr r31, r4 +/* 801DED88 001DBCE8 C0 23 00 40 */ lfs f1, 0x40(r3) +/* 801DED8C 001DBCEC 80 83 00 64 */ lwz r4, 0x64(r3) +/* 801DED90 001DBCF0 C0 03 00 60 */ lfs f0, 0x60(r3) +/* 801DED94 001DBCF4 38 61 00 08 */ addi r3, r1, 8 +/* 801DED98 001DBCF8 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 801DED9C 001DBCFC C3 E4 00 00 */ lfs f31, 0(r4) +/* 801DEDA0 001DBD00 D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 801DEDA4 001DBD04 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801DEDA8 001DBD08 48 13 54 59 */ bl __ct__9CVector2fFff +/* 801DEDAC 001DBD0C 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 801DEDB0 001DBD10 38 61 00 10 */ addi r3, r1, 0x10 +/* 801DEDB4 001DBD14 C0 44 00 50 */ lfs f2, 0x50(r4) +/* 801DEDB8 001DBD18 C0 24 00 40 */ lfs f1, 0x40(r4) +/* 801DEDBC 001DBD1C C0 04 00 60 */ lfs f0, 0x60(r4) +/* 801DEDC0 001DBD20 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 801DEDC4 001DBD24 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 801DEDC8 001DBD28 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 801DEDCC 001DBD2C 48 13 54 35 */ bl __ct__9CVector2fFff +/* 801DEDD0 001DBD30 38 61 00 18 */ addi r3, r1, 0x18 +/* 801DEDD4 001DBD34 38 81 00 10 */ addi r4, r1, 0x10 +/* 801DEDD8 001DBD38 38 A1 00 08 */ addi r5, r1, 8 +/* 801DEDDC 001DBD3C 48 13 51 5D */ bl __mi__FRC9CVector2fRC9CVector2f +/* 801DEDE0 001DBD40 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 801DEDE4 001DBD44 38 61 00 20 */ addi r3, r1, 0x20 +/* 801DEDE8 001DBD48 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 801DEDEC 001DBD4C D0 21 00 20 */ stfs f1, 0x20(r1) +/* 801DEDF0 001DBD50 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801DEDF4 001DBD54 48 13 53 01 */ bl Magnitude__9CVector2fCFv +/* 801DEDF8 001DBD58 C0 02 AD 00 */ lfs f0, lbl_805ACA20@sda21(r2) +/* 801DEDFC 001DBD5C EC 00 07 F2 */ fmuls f0, f0, f31 +/* 801DEE00 001DBD60 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801DEE04 001DBD64 7C 00 00 26 */ mfcr r0 +/* 801DEE08 001DBD68 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801DEE0C 001DBD6C E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 +/* 801DEE10 001DBD70 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801DEE14 001DBD74 CB E1 00 50 */ lfd f31, 0x50(r1) +/* 801DEE18 001DBD78 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801DEE1C 001DBD7C 7C 08 03 A6 */ mtlr r0 +/* 801DEE20 001DBD80 38 21 00 60 */ addi r1, r1, 0x60 +/* 801DEE24 001DBD84 4E 80 00 20 */ blr + +.global ShouldTaunt__8CThardusFR13CStateManagerf +ShouldTaunt__8CThardusFR13CStateManagerf: +/* 801DEE28 001DBD88 38 60 00 00 */ li r3, 0 +/* 801DEE2C 001DBD8C 4E 80 00 20 */ blr + +.global InPosition__8CThardusFR13CStateManagerf +InPosition__8CThardusFR13CStateManagerf: +/* 801DEE30 001DBD90 80 63 06 60 */ lwz r3, 0x660(r3) +/* 801DEE34 001DBD94 38 00 00 03 */ li r0, 3 +/* 801DEE38 001DBD98 7C 60 02 78 */ xor r0, r3, r0 +/* 801DEE3C 001DBD9C 7C 00 00 34 */ cntlzw r0, r0 +/* 801DEE40 001DBDA0 7C 60 00 30 */ slw r0, r3, r0 +/* 801DEE44 001DBDA4 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801DEE48 001DBDA8 4E 80 00 20 */ blr + +.global Dead__8CThardusFR13CStateManager9EStateMsgf +Dead__8CThardusFR13CStateManager9EStateMsgf: +/* 801DEE4C 001DBDAC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801DEE50 001DBDB0 7C 08 02 A6 */ mflr r0 +/* 801DEE54 001DBDB4 90 01 00 24 */ stw r0, 0x24(r1) +/* 801DEE58 001DBDB8 DB E1 00 18 */ stfd f31, 0x18(r1) +/* 801DEE5C 001DBDBC FF E0 08 90 */ fmr f31, f1 +/* 801DEE60 001DBDC0 93 E1 00 14 */ stw r31, 0x14(r1) +/* 801DEE64 001DBDC4 7C BF 2B 79 */ or. r31, r5, r5 +/* 801DEE68 001DBDC8 93 C1 00 10 */ stw r30, 0x10(r1) +/* 801DEE6C 001DBDCC 7C 9E 23 78 */ mr r30, r4 +/* 801DEE70 001DBDD0 93 A1 00 0C */ stw r29, 0xc(r1) +/* 801DEE74 001DBDD4 7C 7D 1B 78 */ mr r29, r3 +/* 801DEE78 001DBDD8 41 82 00 0C */ beq lbl_801DEE84 +/* 801DEE7C 001DBDDC 41 80 00 48 */ blt lbl_801DEEC4 +/* 801DEE80 001DBDE0 48 00 00 44 */ b lbl_801DEEC4 +lbl_801DEE84: +/* 801DEE84 001DBDE4 38 7D 00 34 */ addi r3, r29, 0x34 +/* 801DEE88 001DBDE8 38 9D 07 64 */ addi r4, r29, 0x764 +/* 801DEE8C 001DBDEC 48 13 3C B5 */ bl __as__12CTransform4fFRC12CTransform4f +/* 801DEE90 001DBDF0 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 801DEE94 001DBDF4 38 A0 00 01 */ li r5, 1 +/* 801DEE98 001DBDF8 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 801DEE9C 001DBDFC 7F A3 EB 78 */ mr r3, r29 +/* 801DEEA0 001DBE00 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 801DEEA4 001DBE04 7F C4 F3 78 */ mr r4, r30 +/* 801DEEA8 001DBE08 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 801DEEAC 001DBE0C 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 801DEEB0 001DBE10 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 801DEEB4 001DBE14 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 801DEEB8 001DBE18 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d +/* 801DEEBC 001DBE1C 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 801DEEC0 001DBE20 4B FF CD 81 */ bl sub_801dbc40 +lbl_801DEEC4: +/* 801DEEC4 001DBE24 FC 20 F8 90 */ fmr f1, f31 +/* 801DEEC8 001DBE28 7F A3 EB 78 */ mr r3, r29 +/* 801DEECC 001DBE2C 7F C4 F3 78 */ mr r4, r30 +/* 801DEED0 001DBE30 7F E5 FB 78 */ mr r5, r31 +/* 801DEED4 001DBE34 48 01 7A F1 */ bl Dead__10CPatternedFR13CStateManager9EStateMsgf +/* 801DEED8 001DBE38 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801DEEDC 001DBE3C CB E1 00 18 */ lfd f31, 0x18(r1) +/* 801DEEE0 001DBE40 83 E1 00 14 */ lwz r31, 0x14(r1) +/* 801DEEE4 001DBE44 83 C1 00 10 */ lwz r30, 0x10(r1) +/* 801DEEE8 001DBE48 83 A1 00 0C */ lwz r29, 0xc(r1) +/* 801DEEEC 001DBE4C 7C 08 03 A6 */ mtlr r0 +/* 801DEEF0 001DBE50 38 21 00 20 */ addi r1, r1, 0x20 +/* 801DEEF4 001DBE54 4E 80 00 20 */ blr + +.global Attack__8CThardusFR13CStateManager9EStateMsgf +Attack__8CThardusFR13CStateManager9EStateMsgf: +/* 801DEEF8 001DBE58 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801DEEFC 001DBE5C 7C 08 02 A6 */ mflr r0 +/* 801DEF00 001DBE60 2C 05 00 01 */ cmpwi r5, 1 +/* 801DEF04 001DBE64 90 01 00 54 */ stw r0, 0x54(r1) +/* 801DEF08 001DBE68 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801DEF0C 001DBE6C 93 C1 00 48 */ stw r30, 0x48(r1) +/* 801DEF10 001DBE70 7C 7E 1B 78 */ mr r30, r3 +/* 801DEF14 001DBE74 41 82 00 34 */ beq lbl_801DEF48 +/* 801DEF18 001DBE78 40 80 02 04 */ bge lbl_801DF11C +/* 801DEF1C 001DBE7C 2C 05 00 00 */ cmpwi r5, 0 +/* 801DEF20 001DBE80 40 80 00 0C */ bge lbl_801DEF2C +/* 801DEF24 001DBE84 48 00 01 F8 */ b lbl_801DF11C +/* 801DEF28 001DBE88 48 00 01 F4 */ b lbl_801DF11C +lbl_801DEF2C: +/* 801DEF2C 001DBE8C 38 80 00 00 */ li r4, 0 +/* 801DEF30 001DBE90 90 9E 05 EC */ stw r4, 0x5ec(r30) +/* 801DEF34 001DBE94 80 7E 05 70 */ lwz r3, 0x570(r30) +/* 801DEF38 001DBE98 38 03 00 01 */ addi r0, r3, 1 +/* 801DEF3C 001DBE9C 90 1E 05 70 */ stw r0, 0x570(r30) +/* 801DEF40 001DBEA0 90 9E 05 EC */ stw r4, 0x5ec(r30) +/* 801DEF44 001DBEA4 48 00 01 D8 */ b lbl_801DF11C +lbl_801DEF48: +/* 801DEF48 001DBEA8 80 1E 05 EC */ lwz r0, 0x5ec(r30) +/* 801DEF4C 001DBEAC 2C 00 00 01 */ cmpwi r0, 1 +/* 801DEF50 001DBEB0 41 82 01 CC */ beq lbl_801DF11C +/* 801DEF54 001DBEB4 40 80 00 10 */ bge lbl_801DEF64 +/* 801DEF58 001DBEB8 2C 00 00 00 */ cmpwi r0, 0 +/* 801DEF5C 001DBEBC 40 80 00 14 */ bge lbl_801DEF70 +/* 801DEF60 001DBEC0 48 00 01 BC */ b lbl_801DF11C +lbl_801DEF64: +/* 801DEF64 001DBEC4 2C 00 00 03 */ cmpwi r0, 3 +/* 801DEF68 001DBEC8 40 80 01 B4 */ bge lbl_801DF11C +/* 801DEF6C 001DBECC 48 00 01 98 */ b lbl_801DF104 +lbl_801DEF70: +/* 801DEF70 001DBED0 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801DEF74 001DBED4 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801DEF78 001DBED8 2C 00 00 07 */ cmpwi r0, 7 +/* 801DEF7C 001DBEDC 40 82 00 10 */ bne lbl_801DEF8C +/* 801DEF80 001DBEE0 38 00 00 02 */ li r0, 2 +/* 801DEF84 001DBEE4 90 1E 05 EC */ stw r0, 0x5ec(r30) +/* 801DEF88 001DBEE8 48 00 01 94 */ b lbl_801DF11C +lbl_801DEF8C: +/* 801DEF8C 001DBEEC 80 64 09 00 */ lwz r3, 0x900(r4) +/* 801DEF90 001DBEF0 48 13 35 4D */ bl Float__9CRandom16Fv +/* 801DEF94 001DBEF4 C0 02 AC F8 */ lfs f0, lbl_805ACA18@sda21(r2) +/* 801DEF98 001DBEF8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801DEF9C 001DBEFC 40 81 00 AC */ ble lbl_801DF048 +/* 801DEFA0 001DBF00 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 801DEFA4 001DBF04 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801DEFA8 001DBF08 C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) +/* 801DEFAC 001DBF0C 38 E4 AA 68 */ addi r7, r4, lbl_803DAA68@l +/* 801DEFB0 001DBF10 3C 80 80 3E */ lis r4, lbl_803DA9D8@ha +/* 801DEFB4 001DBF14 90 E1 00 24 */ stw r7, 0x24(r1) +/* 801DEFB8 001DBF18 38 00 00 00 */ li r0, 0 +/* 801DEFBC 001DBF1C C0 23 00 04 */ lfs f1, 4(r3) +/* 801DEFC0 001DBF20 C0 03 00 08 */ lfs f0, 8(r3) +/* 801DEFC4 001DBF24 38 A4 A9 D8 */ addi r5, r4, lbl_803DA9D8@l +/* 801DEFC8 001DBF28 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801DEFCC 001DBF2C 38 C0 00 05 */ li r6, 5 +/* 801DEFD0 001DBF30 90 C1 00 28 */ stw r6, 0x28(r1) +/* 801DEFD4 001DBF34 38 80 00 05 */ li r4, 5 +/* 801DEFD8 001DBF38 3B E3 00 04 */ addi r31, r3, 4 +/* 801DEFDC 001DBF3C 90 A1 00 24 */ stw r5, 0x24(r1) +/* 801DEFE0 001DBF40 7F E3 FB 78 */ mr r3, r31 +/* 801DEFE4 001DBF44 90 01 00 2C */ stw r0, 0x2c(r1) +/* 801DEFE8 001DBF48 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 801DEFEC 001DBF4C D0 21 00 34 */ stfs f1, 0x34(r1) +/* 801DEFF0 001DBF50 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 801DEFF4 001DBF54 98 01 00 3C */ stb r0, 0x3c(r1) +/* 801DEFF8 001DBF58 4B F5 24 41 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801DEFFC 001DBF5C 80 01 00 28 */ lwz r0, 0x28(r1) +/* 801DF000 001DBF60 3C 60 80 3E */ lis r3, lbl_803DA9D8@ha +/* 801DF004 001DBF64 38 83 A9 D8 */ addi r4, r3, lbl_803DA9D8@l +/* 801DF008 001DBF68 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801DF00C 001DBF6C 90 1F 01 10 */ stw r0, 0x110(r31) +/* 801DF010 001DBF70 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801DF014 001DBF74 80 61 00 2C */ lwz r3, 0x2c(r1) +/* 801DF018 001DBF78 80 A1 00 30 */ lwz r5, 0x30(r1) +/* 801DF01C 001DBF7C 90 7F 01 14 */ stw r3, 0x114(r31) +/* 801DF020 001DBF80 80 61 00 34 */ lwz r3, 0x34(r1) +/* 801DF024 001DBF84 90 BF 01 18 */ stw r5, 0x118(r31) +/* 801DF028 001DBF88 80 A1 00 38 */ lwz r5, 0x38(r1) +/* 801DF02C 001DBF8C 90 7F 01 1C */ stw r3, 0x11c(r31) +/* 801DF030 001DBF90 88 61 00 3C */ lbz r3, 0x3c(r1) +/* 801DF034 001DBF94 90 BF 01 20 */ stw r5, 0x120(r31) +/* 801DF038 001DBF98 90 81 00 24 */ stw r4, 0x24(r1) +/* 801DF03C 001DBF9C 98 7F 01 24 */ stb r3, 0x124(r31) +/* 801DF040 001DBFA0 90 01 00 24 */ stw r0, 0x24(r1) +/* 801DF044 001DBFA4 48 00 00 B0 */ b lbl_801DF0F4 +lbl_801DF048: +/* 801DF048 001DBFA8 3C A0 80 3E */ lis r5, lbl_803DAA68@ha +/* 801DF04C 001DBFAC 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801DF050 001DBFB0 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 801DF054 001DBFB4 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801DF058 001DBFB8 39 05 AA 68 */ addi r8, r5, lbl_803DAA68@l +/* 801DF05C 001DBFBC C0 44 00 00 */ lfs f2, 0(r4) +/* 801DF060 001DBFC0 C0 24 00 04 */ lfs f1, 4(r4) +/* 801DF064 001DBFC4 3C C0 80 3E */ lis r6, lbl_803DA9D8@ha +/* 801DF068 001DBFC8 C0 04 00 08 */ lfs f0, 8(r4) +/* 801DF06C 001DBFCC 38 E0 00 05 */ li r7, 5 +/* 801DF070 001DBFD0 38 A0 00 01 */ li r5, 1 +/* 801DF074 001DBFD4 38 00 00 00 */ li r0, 0 +/* 801DF078 001DBFD8 3B E3 00 04 */ addi r31, r3, 4 +/* 801DF07C 001DBFDC 91 01 00 08 */ stw r8, 8(r1) +/* 801DF080 001DBFE0 38 C6 A9 D8 */ addi r6, r6, lbl_803DA9D8@l +/* 801DF084 001DBFE4 38 80 00 05 */ li r4, 5 +/* 801DF088 001DBFE8 90 E1 00 0C */ stw r7, 0xc(r1) +/* 801DF08C 001DBFEC 7F E3 FB 78 */ mr r3, r31 +/* 801DF090 001DBFF0 90 C1 00 08 */ stw r6, 8(r1) +/* 801DF094 001DBFF4 90 A1 00 10 */ stw r5, 0x10(r1) +/* 801DF098 001DBFF8 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801DF09C 001DBFFC D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801DF0A0 001DC000 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801DF0A4 001DC004 98 01 00 20 */ stb r0, 0x20(r1) +/* 801DF0A8 001DC008 4B F5 23 91 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801DF0AC 001DC00C 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801DF0B0 001DC010 3C 60 80 3E */ lis r3, lbl_803DA9D8@ha +/* 801DF0B4 001DC014 38 83 A9 D8 */ addi r4, r3, lbl_803DA9D8@l +/* 801DF0B8 001DC018 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801DF0BC 001DC01C 90 1F 01 10 */ stw r0, 0x110(r31) +/* 801DF0C0 001DC020 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801DF0C4 001DC024 80 61 00 10 */ lwz r3, 0x10(r1) +/* 801DF0C8 001DC028 80 A1 00 14 */ lwz r5, 0x14(r1) +/* 801DF0CC 001DC02C 90 7F 01 14 */ stw r3, 0x114(r31) +/* 801DF0D0 001DC030 80 61 00 18 */ lwz r3, 0x18(r1) +/* 801DF0D4 001DC034 90 BF 01 18 */ stw r5, 0x118(r31) +/* 801DF0D8 001DC038 80 A1 00 1C */ lwz r5, 0x1c(r1) +/* 801DF0DC 001DC03C 90 7F 01 1C */ stw r3, 0x11c(r31) +/* 801DF0E0 001DC040 88 61 00 20 */ lbz r3, 0x20(r1) +/* 801DF0E4 001DC044 90 BF 01 20 */ stw r5, 0x120(r31) +/* 801DF0E8 001DC048 90 81 00 08 */ stw r4, 8(r1) +/* 801DF0EC 001DC04C 98 7F 01 24 */ stb r3, 0x124(r31) +/* 801DF0F0 001DC050 90 01 00 08 */ stw r0, 8(r1) +lbl_801DF0F4: +/* 801DF0F4 001DC054 80 7E 05 70 */ lwz r3, 0x570(r30) +/* 801DF0F8 001DC058 38 03 00 01 */ addi r0, r3, 1 +/* 801DF0FC 001DC05C 90 1E 05 70 */ stw r0, 0x570(r30) +/* 801DF100 001DC060 48 00 00 1C */ b lbl_801DF11C +lbl_801DF104: +/* 801DF104 001DC064 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801DF108 001DC068 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801DF10C 001DC06C 2C 00 00 07 */ cmpwi r0, 7 +/* 801DF110 001DC070 41 82 00 0C */ beq lbl_801DF11C +/* 801DF114 001DC074 38 00 00 03 */ li r0, 3 +/* 801DF118 001DC078 90 1E 05 EC */ stw r0, 0x5ec(r30) +lbl_801DF11C: +/* 801DF11C 001DC07C 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801DF120 001DC080 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801DF124 001DC084 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 801DF128 001DC088 7C 08 03 A6 */ mtlr r0 +/* 801DF12C 001DC08C 38 21 00 50 */ addi r1, r1, 0x50 +/* 801DF130 001DC090 4E 80 00 20 */ blr + +.global LoopedAttack__8CThardusFR13CStateManager9EStateMsgf +LoopedAttack__8CThardusFR13CStateManager9EStateMsgf: +/* 801DF134 001DC094 94 21 FE 20 */ stwu r1, -0x1e0(r1) +/* 801DF138 001DC098 7C 08 02 A6 */ mflr r0 +/* 801DF13C 001DC09C 90 01 01 E4 */ stw r0, 0x1e4(r1) +/* 801DF140 001DC0A0 DB E1 01 D0 */ stfd f31, 0x1d0(r1) +/* 801DF144 001DC0A4 F3 E1 01 D8 */ psq_st f31, 472(r1), 0, qr0 +/* 801DF148 001DC0A8 DB C1 01 C0 */ stfd f30, 0x1c0(r1) +/* 801DF14C 001DC0AC F3 C1 01 C8 */ psq_st f30, 456(r1), 0, qr0 +/* 801DF150 001DC0B0 93 E1 01 BC */ stw r31, 0x1bc(r1) +/* 801DF154 001DC0B4 93 C1 01 B8 */ stw r30, 0x1b8(r1) +/* 801DF158 001DC0B8 93 A1 01 B4 */ stw r29, 0x1b4(r1) +/* 801DF15C 001DC0BC 93 81 01 B0 */ stw r28, 0x1b0(r1) +/* 801DF160 001DC0C0 2C 05 00 01 */ cmpwi r5, 1 +/* 801DF164 001DC0C4 7C 7F 1B 78 */ mr r31, r3 +/* 801DF168 001DC0C8 7C 9C 23 78 */ mr r28, r4 +/* 801DF16C 001DC0CC 41 82 00 44 */ beq lbl_801DF1B0 +/* 801DF170 001DC0D0 40 80 04 40 */ bge lbl_801DF5B0 +/* 801DF174 001DC0D4 2C 05 00 00 */ cmpwi r5, 0 +/* 801DF178 001DC0D8 40 80 00 0C */ bge lbl_801DF184 +/* 801DF17C 001DC0DC 48 00 04 34 */ b lbl_801DF5B0 +/* 801DF180 001DC0E0 48 00 04 30 */ b lbl_801DF5B0 +lbl_801DF184: +/* 801DF184 001DC0E4 38 00 00 00 */ li r0, 0 +/* 801DF188 001DC0E8 90 1F 06 58 */ stw r0, 0x658(r31) +/* 801DF18C 001DC0EC 90 1F 06 60 */ stw r0, 0x660(r31) +/* 801DF190 001DC0F0 90 1F 05 70 */ stw r0, 0x570(r31) +/* 801DF194 001DC0F4 90 1F 05 74 */ stw r0, 0x574(r31) +/* 801DF198 001DC0F8 4B FF FA E9 */ bl sub_801dec80 +/* 801DF19C 001DC0FC 38 60 00 00 */ li r3, 0 +/* 801DF1A0 001DC100 38 00 FF FF */ li r0, -1 +/* 801DF1A4 001DC104 98 7F 09 3B */ stb r3, 0x93b(r31) +/* 801DF1A8 001DC108 90 1F 05 C4 */ stw r0, 0x5c4(r31) +/* 801DF1AC 001DC10C 48 00 04 04 */ b lbl_801DF5B0 +lbl_801DF1B0: +/* 801DF1B0 001DC110 80 1F 06 58 */ lwz r0, 0x658(r31) +/* 801DF1B4 001DC114 C0 FF 00 60 */ lfs f7, 0x60(r31) +/* 801DF1B8 001DC118 C0 DF 00 50 */ lfs f6, 0x50(r31) +/* 801DF1BC 001DC11C 2C 00 00 01 */ cmpwi r0, 1 +/* 801DF1C0 001DC120 C0 BF 00 40 */ lfs f5, 0x40(r31) +/* 801DF1C4 001DC124 D0 C1 00 CC */ stfs f6, 0xcc(r1) +/* 801DF1C8 001DC128 D0 A1 00 C8 */ stfs f5, 0xc8(r1) +/* 801DF1CC 001DC12C D0 E1 00 D0 */ stfs f7, 0xd0(r1) +/* 801DF1D0 001DC130 41 82 01 3C */ beq lbl_801DF30C +/* 801DF1D4 001DC134 40 80 03 58 */ bge lbl_801DF52C +/* 801DF1D8 001DC138 2C 00 00 00 */ cmpwi r0, 0 +/* 801DF1DC 001DC13C 40 80 00 0C */ bge lbl_801DF1E8 +/* 801DF1E0 001DC140 48 00 03 4C */ b lbl_801DF52C +/* 801DF1E4 001DC144 48 00 03 48 */ b lbl_801DF52C +lbl_801DF1E8: +/* 801DF1E8 001DC148 80 BC 08 4C */ lwz r5, 0x84c(r28) +/* 801DF1EC 001DC14C 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 801DF1F0 001DC150 38 81 00 A4 */ addi r4, r1, 0xa4 +/* 801DF1F4 001DC154 C0 85 00 60 */ lfs f4, 0x60(r5) +/* 801DF1F8 001DC158 C0 05 00 50 */ lfs f0, 0x50(r5) +/* 801DF1FC 001DC15C C0 25 00 40 */ lfs f1, 0x40(r5) +/* 801DF200 001DC160 EC 44 38 28 */ fsubs f2, f4, f7 +/* 801DF204 001DC164 EC 60 30 28 */ fsubs f3, f0, f6 +/* 801DF208 001DC168 D0 01 00 C0 */ stfs f0, 0xc0(r1) +/* 801DF20C 001DC16C EC 01 28 28 */ fsubs f0, f1, f5 +/* 801DF210 001DC170 D0 21 00 BC */ stfs f1, 0xbc(r1) +/* 801DF214 001DC174 D0 81 00 C4 */ stfs f4, 0xc4(r1) +/* 801DF218 001DC178 D0 01 00 98 */ stfs f0, 0x98(r1) +/* 801DF21C 001DC17C D0 61 00 9C */ stfs f3, 0x9c(r1) +/* 801DF220 001DC180 D0 41 00 A0 */ stfs f2, 0xa0(r1) +/* 801DF224 001DC184 D0 01 00 A4 */ stfs f0, 0xa4(r1) +/* 801DF228 001DC188 D0 61 00 A8 */ stfs f3, 0xa8(r1) +/* 801DF22C 001DC18C D0 41 00 AC */ stfs f2, 0xac(r1) +/* 801DF230 001DC190 48 13 56 21 */ bl AsNormalized__9CVector3fCFv +/* 801DF234 001DC194 C3 E1 00 B0 */ lfs f31, 0xb0(r1) +/* 801DF238 001DC198 7F E4 FB 78 */ mr r4, r31 +/* 801DF23C 001DC19C C3 C1 00 B4 */ lfs f30, 0xb4(r1) +/* 801DF240 001DC1A0 7F 85 E3 78 */ mr r5, r28 +/* 801DF244 001DC1A4 38 61 00 28 */ addi r3, r1, 0x28 +/* 801DF248 001DC1A8 4B FF B9 E9 */ bl sub_801dac30 +/* 801DF24C 001DC1AC C0 21 00 28 */ lfs f1, 0x28(r1) +/* 801DF250 001DC1B0 38 61 00 38 */ addi r3, r1, 0x38 +/* 801DF254 001DC1B4 C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 801DF258 001DC1B8 38 8D A8 98 */ addi r4, r13, lbl_805A9458@sda21 +/* 801DF25C 001DC1BC D0 21 00 38 */ stfs f1, 0x38(r1) +/* 801DF260 001DC1C0 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 801DF264 001DC1C4 48 13 4C A5 */ bl __eq__FRC9CVector2fRC9CVector2f +/* 801DF268 001DC1C8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801DF26C 001DC1CC 40 82 00 18 */ bne lbl_801DF284 +/* 801DF270 001DC1D0 C0 01 00 38 */ lfs f0, 0x38(r1) +/* 801DF274 001DC1D4 D0 1F 06 50 */ stfs f0, 0x650(r31) +/* 801DF278 001DC1D8 C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 801DF27C 001DC1DC D0 1F 06 54 */ stfs f0, 0x654(r31) +/* 801DF280 001DC1E0 48 00 00 30 */ b lbl_801DF2B0 +lbl_801DF284: +/* 801DF284 001DC1E4 FC 20 F8 90 */ fmr f1, f31 +/* 801DF288 001DC1E8 38 61 00 18 */ addi r3, r1, 0x18 +/* 801DF28C 001DC1EC FC 40 F0 90 */ fmr f2, f30 +/* 801DF290 001DC1F0 48 13 4F 71 */ bl __ct__9CVector2fFff +/* 801DF294 001DC1F4 38 61 00 20 */ addi r3, r1, 0x20 +/* 801DF298 001DC1F8 38 81 00 18 */ addi r4, r1, 0x18 +/* 801DF29C 001DC1FC 48 13 4D E5 */ bl AsNormalized__9CVector2fCFv +/* 801DF2A0 001DC200 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 801DF2A4 001DC204 D0 1F 06 50 */ stfs f0, 0x650(r31) +/* 801DF2A8 001DC208 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 801DF2AC 001DC20C D0 1F 06 54 */ stfs f0, 0x654(r31) +lbl_801DF2B0: +/* 801DF2B0 001DC210 C0 21 00 C0 */ lfs f1, 0xc0(r1) +/* 801DF2B4 001DC214 38 61 00 8C */ addi r3, r1, 0x8c +/* 801DF2B8 001DC218 C0 01 00 CC */ lfs f0, 0xcc(r1) +/* 801DF2BC 001DC21C C0 41 00 C4 */ lfs f2, 0xc4(r1) +/* 801DF2C0 001DC220 EC 61 00 28 */ fsubs f3, f1, f0 +/* 801DF2C4 001DC224 C0 01 00 D0 */ lfs f0, 0xd0(r1) +/* 801DF2C8 001DC228 C0 21 00 BC */ lfs f1, 0xbc(r1) +/* 801DF2CC 001DC22C EC 42 00 28 */ fsubs f2, f2, f0 +/* 801DF2D0 001DC230 C0 01 00 C8 */ lfs f0, 0xc8(r1) +/* 801DF2D4 001DC234 D0 61 00 84 */ stfs f3, 0x84(r1) +/* 801DF2D8 001DC238 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801DF2DC 001DC23C D0 41 00 88 */ stfs f2, 0x88(r1) +/* 801DF2E0 001DC240 D0 01 00 80 */ stfs f0, 0x80(r1) +/* 801DF2E4 001DC244 D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 801DF2E8 001DC248 D0 61 00 90 */ stfs f3, 0x90(r1) +/* 801DF2EC 001DC24C D0 41 00 94 */ stfs f2, 0x94(r1) +/* 801DF2F0 001DC250 48 13 55 C9 */ bl Magnitude__9CVector3fCFv +/* 801DF2F4 001DC254 C0 1F 06 98 */ lfs f0, 0x698(r31) +/* 801DF2F8 001DC258 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801DF2FC 001DC25C 40 80 02 30 */ bge lbl_801DF52C +/* 801DF300 001DC260 38 00 00 01 */ li r0, 1 +/* 801DF304 001DC264 90 1F 06 58 */ stw r0, 0x658(r31) +/* 801DF308 001DC268 48 00 02 24 */ b lbl_801DF52C +lbl_801DF30C: +/* 801DF30C 001DC26C 3C 60 80 57 */ lis r3, lbl_8057206C@ha +/* 801DF310 001DC270 C0 22 AC DC */ lfs f1, lbl_805AC9FC@sda21(r2) +/* 801DF314 001DC274 38 A3 20 6C */ addi r5, r3, lbl_8057206C@l +/* 801DF318 001DC278 C0 02 AC D8 */ lfs f0, lbl_805AC9F8@sda21(r2) +/* 801DF31C 001DC27C C0 85 00 04 */ lfs f4, 4(r5) +/* 801DF320 001DC280 38 61 00 64 */ addi r3, r1, 0x64 +/* 801DF324 001DC284 C0 65 00 08 */ lfs f3, 8(r5) +/* 801DF328 001DC288 38 9F 00 34 */ addi r4, r31, 0x34 +/* 801DF32C 001DC28C C0 45 00 00 */ lfs f2, 0(r5) +/* 801DF330 001DC290 EC 86 20 2A */ fadds f4, f6, f4 +/* 801DF334 001DC294 EC 67 18 2A */ fadds f3, f7, f3 +/* 801DF338 001DC298 D0 21 00 58 */ stfs f1, 0x58(r1) +/* 801DF33C 001DC29C EC 45 10 2A */ fadds f2, f5, f2 +/* 801DF340 001DC2A0 D0 81 00 E4 */ stfs f4, 0xe4(r1) +/* 801DF344 001DC2A4 D0 41 00 E0 */ stfs f2, 0xe0(r1) +/* 801DF348 001DC2A8 D0 61 00 E8 */ stfs f3, 0xe8(r1) +/* 801DF34C 001DC2AC D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 801DF350 001DC2B0 D0 21 00 60 */ stfs f1, 0x60(r1) +/* 801DF354 001DC2B4 48 13 2D D5 */ bl FromMatrix__11CQuaternionFRC12CTransform4f +/* 801DF358 001DC2B8 38 61 01 50 */ addi r3, r1, 0x150 +/* 801DF35C 001DC2BC 38 81 00 64 */ addi r4, r1, 0x64 +/* 801DF360 001DC2C0 48 13 2D 2D */ bl BuildTransform__11CQuaternionCFv +/* 801DF364 001DC2C4 38 61 00 74 */ addi r3, r1, 0x74 +/* 801DF368 001DC2C8 38 81 01 50 */ addi r4, r1, 0x150 +/* 801DF36C 001DC2CC 38 A1 00 58 */ addi r5, r1, 0x58 +/* 801DF370 001DC2D0 48 13 0F 25 */ bl __ml__9CMatrix3fCFRC9CVector3f +/* 801DF374 001DC2D4 C0 41 00 74 */ lfs f2, 0x74(r1) +/* 801DF378 001DC2D8 38 60 00 00 */ li r3, 0 +/* 801DF37C 001DC2DC C0 21 00 78 */ lfs f1, 0x78(r1) +/* 801DF380 001DC2E0 38 80 00 01 */ li r4, 1 +/* 801DF384 001DC2E4 C0 01 00 7C */ lfs f0, 0x7c(r1) +/* 801DF388 001DC2E8 80 AD 92 14 */ lwz r5, lbl_805A7DD4@sda21(r13) +/* 801DF38C 001DC2EC D0 41 00 D4 */ stfs f2, 0xd4(r1) +/* 801DF390 001DC2F0 D0 21 00 D8 */ stfs f1, 0xd8(r1) +/* 801DF394 001DC2F4 D0 01 00 DC */ stfs f0, 0xdc(r1) +/* 801DF398 001DC2F8 48 1A AB 5D */ bl __shl2i +/* 801DF39C 001DC2FC 80 AD 92 18 */ lwz r5, lbl_805A7DD8@sda21(r13) +/* 801DF3A0 001DC300 7C 9D 23 78 */ mr r29, r4 +/* 801DF3A4 001DC304 7C 7E 1B 78 */ mr r30, r3 +/* 801DF3A8 001DC308 38 60 00 00 */ li r3, 0 +/* 801DF3AC 001DC30C 38 80 00 01 */ li r4, 1 +/* 801DF3B0 001DC310 48 1A AB 45 */ bl __shl2i +/* 801DF3B4 001DC314 80 AD 92 1C */ lwz r5, lbl_805A7DDC@sda21(r13) +/* 801DF3B8 001DC318 7F BD 23 78 */ or r29, r29, r4 +/* 801DF3BC 001DC31C 7F DE 1B 78 */ or r30, r30, r3 +/* 801DF3C0 001DC320 38 60 00 00 */ li r3, 0 +/* 801DF3C4 001DC324 38 80 00 01 */ li r4, 1 +/* 801DF3C8 001DC328 48 1A AB 2D */ bl __shl2i +/* 801DF3CC 001DC32C 7F BD 23 78 */ or r29, r29, r4 +/* 801DF3D0 001DC330 7F DE 1B 78 */ or r30, r30, r3 +/* 801DF3D4 001DC334 39 00 00 00 */ li r8, 0 +/* 801DF3D8 001DC338 38 00 00 01 */ li r0, 1 +/* 801DF3DC 001DC33C 93 A1 01 0C */ stw r29, 0x10c(r1) +/* 801DF3E0 001DC340 7F 84 E3 78 */ mr r4, r28 +/* 801DF3E4 001DC344 C0 22 AD 44 */ lfs f1, lbl_805ACA64@sda21(r2) +/* 801DF3E8 001DC348 38 61 01 20 */ addi r3, r1, 0x120 +/* 801DF3EC 001DC34C 93 C1 01 08 */ stw r30, 0x108(r1) +/* 801DF3F0 001DC350 38 A1 00 E0 */ addi r5, r1, 0xe0 +/* 801DF3F4 001DC354 38 C1 00 D4 */ addi r6, r1, 0xd4 +/* 801DF3F8 001DC358 38 E1 01 08 */ addi r7, r1, 0x108 +/* 801DF3FC 001DC35C 91 01 01 14 */ stw r8, 0x114(r1) +/* 801DF400 001DC360 91 01 01 10 */ stw r8, 0x110(r1) +/* 801DF404 001DC364 90 01 01 18 */ stw r0, 0x118(r1) +/* 801DF408 001DC368 4B E6 DB 91 */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter +/* 801DF40C 001DC36C 88 81 01 40 */ lbz r4, 0x140(r1) +/* 801DF410 001DC370 C0 E1 01 20 */ lfs f7, 0x120(r1) +/* 801DF414 001DC374 C0 C1 01 24 */ lfs f6, 0x124(r1) +/* 801DF418 001DC378 28 04 00 00 */ cmplwi r4, 0 +/* 801DF41C 001DC37C C0 A1 01 28 */ lfs f5, 0x128(r1) +/* 801DF420 001DC380 C0 81 01 2C */ lfs f4, 0x12c(r1) +/* 801DF424 001DC384 C0 61 01 30 */ lfs f3, 0x130(r1) +/* 801DF428 001DC388 C0 41 01 34 */ lfs f2, 0x134(r1) +/* 801DF42C 001DC38C C0 21 01 38 */ lfs f1, 0x138(r1) +/* 801DF430 001DC390 C0 01 01 3C */ lfs f0, 0x13c(r1) +/* 801DF434 001DC394 80 01 01 48 */ lwz r0, 0x148(r1) +/* 801DF438 001DC398 80 61 01 4C */ lwz r3, 0x14c(r1) +/* 801DF43C 001DC39C D0 E1 01 78 */ stfs f7, 0x178(r1) +/* 801DF440 001DC3A0 D0 C1 01 7C */ stfs f6, 0x17c(r1) +/* 801DF444 001DC3A4 D0 A1 01 80 */ stfs f5, 0x180(r1) +/* 801DF448 001DC3A8 D0 81 01 84 */ stfs f4, 0x184(r1) +/* 801DF44C 001DC3AC D0 61 01 88 */ stfs f3, 0x188(r1) +/* 801DF450 001DC3B0 D0 41 01 8C */ stfs f2, 0x18c(r1) +/* 801DF454 001DC3B4 D0 21 01 90 */ stfs f1, 0x190(r1) +/* 801DF458 001DC3B8 D0 01 01 94 */ stfs f0, 0x194(r1) +/* 801DF45C 001DC3BC 98 81 01 98 */ stb r4, 0x198(r1) +/* 801DF460 001DC3C0 90 61 01 A4 */ stw r3, 0x1a4(r1) +/* 801DF464 001DC3C4 90 01 01 A0 */ stw r0, 0x1a0(r1) +/* 801DF468 001DC3C8 41 82 00 80 */ beq lbl_801DF4E8 +/* 801DF46C 001DC3CC D0 DF 08 D8 */ stfs f6, 0x8d8(r31) +/* 801DF470 001DC3D0 38 61 00 4C */ addi r3, r1, 0x4c +/* 801DF474 001DC3D4 D0 BF 08 DC */ stfs f5, 0x8dc(r31) +/* 801DF478 001DC3D8 D0 9F 08 E0 */ stfs f4, 0x8e0(r31) +/* 801DF47C 001DC3DC C0 01 00 E0 */ lfs f0, 0xe0(r1) +/* 801DF480 001DC3E0 D0 1F 08 E4 */ stfs f0, 0x8e4(r31) +/* 801DF484 001DC3E4 C0 01 00 E4 */ lfs f0, 0xe4(r1) +/* 801DF488 001DC3E8 D0 1F 08 E8 */ stfs f0, 0x8e8(r31) +/* 801DF48C 001DC3EC C0 01 00 E8 */ lfs f0, 0xe8(r1) +/* 801DF490 001DC3F0 D0 1F 08 EC */ stfs f0, 0x8ec(r31) +/* 801DF494 001DC3F4 C0 01 00 E4 */ lfs f0, 0xe4(r1) +/* 801DF498 001DC3F8 C0 21 00 E8 */ lfs f1, 0xe8(r1) +/* 801DF49C 001DC3FC EC 45 00 28 */ fsubs f2, f5, f0 +/* 801DF4A0 001DC400 C0 01 00 E0 */ lfs f0, 0xe0(r1) +/* 801DF4A4 001DC404 EC 24 08 28 */ fsubs f1, f4, f1 +/* 801DF4A8 001DC408 EC 06 00 28 */ fsubs f0, f6, f0 +/* 801DF4AC 001DC40C D0 41 00 44 */ stfs f2, 0x44(r1) +/* 801DF4B0 001DC410 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 801DF4B4 001DC414 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 801DF4B8 001DC418 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 801DF4BC 001DC41C D0 41 00 50 */ stfs f2, 0x50(r1) +/* 801DF4C0 001DC420 D0 21 00 54 */ stfs f1, 0x54(r1) +/* 801DF4C4 001DC424 48 13 53 F5 */ bl Magnitude__9CVector3fCFv +/* 801DF4C8 001DC428 C0 02 AD 48 */ lfs f0, lbl_805ACA68@sda21(r2) +/* 801DF4CC 001DC42C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801DF4D0 001DC430 40 80 00 5C */ bge lbl_801DF52C +/* 801DF4D4 001DC434 38 60 00 02 */ li r3, 2 +/* 801DF4D8 001DC438 38 00 00 01 */ li r0, 1 +/* 801DF4DC 001DC43C 90 7F 06 58 */ stw r3, 0x658(r31) +/* 801DF4E0 001DC440 98 1F 08 D4 */ stb r0, 0x8d4(r31) +/* 801DF4E4 001DC444 48 00 00 48 */ b lbl_801DF52C +lbl_801DF4E8: +/* 801DF4E8 001DC448 7F E4 FB 78 */ mr r4, r31 +/* 801DF4EC 001DC44C 7F 85 E3 78 */ mr r5, r28 +/* 801DF4F0 001DC450 38 61 00 10 */ addi r3, r1, 0x10 +/* 801DF4F4 001DC454 4B FF B7 3D */ bl sub_801dac30 +/* 801DF4F8 001DC458 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 801DF4FC 001DC45C 38 61 00 30 */ addi r3, r1, 0x30 +/* 801DF500 001DC460 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 801DF504 001DC464 38 8D A8 98 */ addi r4, r13, lbl_805A9458@sda21 +/* 801DF508 001DC468 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 801DF50C 001DC46C D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801DF510 001DC470 48 13 49 F9 */ bl __eq__FRC9CVector2fRC9CVector2f +/* 801DF514 001DC474 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801DF518 001DC478 40 82 00 14 */ bne lbl_801DF52C +/* 801DF51C 001DC47C C0 01 00 30 */ lfs f0, 0x30(r1) +/* 801DF520 001DC480 D0 1F 06 50 */ stfs f0, 0x650(r31) +/* 801DF524 001DC484 C0 01 00 34 */ lfs f0, 0x34(r1) +/* 801DF528 001DC488 D0 1F 06 54 */ stfs f0, 0x654(r31) +lbl_801DF52C: +/* 801DF52C 001DC48C 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801DF530 001DC490 38 00 00 0D */ li r0, 0xd +/* 801DF534 001DC494 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l +/* 801DF538 001DC498 90 01 00 0C */ stw r0, 0xc(r1) +/* 801DF53C 001DC49C 38 81 00 08 */ addi r4, r1, 8 +/* 801DF540 001DC4A0 90 61 00 08 */ stw r3, 8(r1) +/* 801DF544 001DC4A4 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801DF548 001DC4A8 38 63 00 04 */ addi r3, r3, 4 +/* 801DF54C 001DC4AC 4B F5 22 6D */ bl DeliverCmd__16CBodyStateCmdMgrFRC13CBodyStateCmd +/* 801DF550 001DC4B0 34 01 00 08 */ addic. r0, r1, 8 +/* 801DF554 001DC4B4 41 82 00 10 */ beq lbl_801DF564 +/* 801DF558 001DC4B8 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801DF55C 001DC4BC 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801DF560 001DC4C0 90 01 00 08 */ stw r0, 8(r1) +lbl_801DF564: +/* 801DF564 001DC4C4 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801DF568 001DC4C8 C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) +/* 801DF56C 001DC4CC C0 DF 06 54 */ lfs f6, 0x654(r31) +/* 801DF570 001DC4D0 38 81 00 EC */ addi r4, r1, 0xec +/* 801DF574 001DC4D4 C0 BF 06 50 */ lfs f5, 0x650(r31) +/* 801DF578 001DC4D8 C0 82 AC DC */ lfs f4, lbl_805AC9FC@sda21(r2) +/* 801DF57C 001DC4DC C0 43 00 04 */ lfs f2, 4(r3) +/* 801DF580 001DC4E0 C0 23 00 08 */ lfs f1, 8(r3) +/* 801DF584 001DC4E4 C0 02 AC D8 */ lfs f0, lbl_805AC9F8@sda21(r2) +/* 801DF588 001DC4E8 D0 A1 00 EC */ stfs f5, 0xec(r1) +/* 801DF58C 001DC4EC D0 C1 00 F0 */ stfs f6, 0xf0(r1) +/* 801DF590 001DC4F0 D0 81 00 F4 */ stfs f4, 0xf4(r1) +/* 801DF594 001DC4F4 D0 61 00 F8 */ stfs f3, 0xf8(r1) +/* 801DF598 001DC4F8 D0 41 00 FC */ stfs f2, 0xfc(r1) +/* 801DF59C 001DC4FC D0 21 01 00 */ stfs f1, 0x100(r1) +/* 801DF5A0 001DC500 D0 01 01 04 */ stfs f0, 0x104(r1) +/* 801DF5A4 001DC504 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801DF5A8 001DC508 38 63 00 04 */ addi r3, r3, 4 +/* 801DF5AC 001DC50C 4B F5 21 6D */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +lbl_801DF5B0: +/* 801DF5B0 001DC510 E3 E1 01 D8 */ psq_l f31, 472(r1), 0, qr0 +/* 801DF5B4 001DC514 CB E1 01 D0 */ lfd f31, 0x1d0(r1) +/* 801DF5B8 001DC518 E3 C1 01 C8 */ psq_l f30, 456(r1), 0, qr0 +/* 801DF5BC 001DC51C CB C1 01 C0 */ lfd f30, 0x1c0(r1) +/* 801DF5C0 001DC520 83 E1 01 BC */ lwz r31, 0x1bc(r1) +/* 801DF5C4 001DC524 83 C1 01 B8 */ lwz r30, 0x1b8(r1) +/* 801DF5C8 001DC528 83 A1 01 B4 */ lwz r29, 0x1b4(r1) +/* 801DF5CC 001DC52C 80 01 01 E4 */ lwz r0, 0x1e4(r1) +/* 801DF5D0 001DC530 83 81 01 B0 */ lwz r28, 0x1b0(r1) +/* 801DF5D4 001DC534 7C 08 03 A6 */ mtlr r0 +/* 801DF5D8 001DC538 38 21 01 E0 */ addi r1, r1, 0x1e0 +/* 801DF5DC 001DC53C 4E 80 00 20 */ blr + +.global TelegraphAttack__8CThardusFR13CStateManager9EStateMsgf +TelegraphAttack__8CThardusFR13CStateManager9EStateMsgf: +/* 801DF5E0 001DC540 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801DF5E4 001DC544 7C 08 02 A6 */ mflr r0 +/* 801DF5E8 001DC548 2C 05 00 01 */ cmpwi r5, 1 +/* 801DF5EC 001DC54C 90 01 00 34 */ stw r0, 0x34(r1) +/* 801DF5F0 001DC550 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801DF5F4 001DC554 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801DF5F8 001DC558 7C 7E 1B 78 */ mr r30, r3 +/* 801DF5FC 001DC55C 41 82 00 24 */ beq lbl_801DF620 +/* 801DF600 001DC560 40 80 01 2C */ bge lbl_801DF72C +/* 801DF604 001DC564 2C 05 00 00 */ cmpwi r5, 0 +/* 801DF608 001DC568 40 80 00 0C */ bge lbl_801DF614 +/* 801DF60C 001DC56C 48 00 01 20 */ b lbl_801DF72C +/* 801DF610 001DC570 48 00 01 1C */ b lbl_801DF72C +lbl_801DF614: +/* 801DF614 001DC574 38 00 00 00 */ li r0, 0 +/* 801DF618 001DC578 90 1E 05 EC */ stw r0, 0x5ec(r30) +/* 801DF61C 001DC57C 48 00 01 10 */ b lbl_801DF72C +lbl_801DF620: +/* 801DF620 001DC580 80 1E 05 EC */ lwz r0, 0x5ec(r30) +/* 801DF624 001DC584 2C 00 00 01 */ cmpwi r0, 1 +/* 801DF628 001DC588 41 82 01 04 */ beq lbl_801DF72C +/* 801DF62C 001DC58C 40 80 00 10 */ bge lbl_801DF63C +/* 801DF630 001DC590 2C 00 00 00 */ cmpwi r0, 0 +/* 801DF634 001DC594 40 80 00 14 */ bge lbl_801DF648 +/* 801DF638 001DC598 48 00 00 F4 */ b lbl_801DF72C +lbl_801DF63C: +/* 801DF63C 001DC59C 2C 00 00 03 */ cmpwi r0, 3 +/* 801DF640 001DC5A0 40 80 00 EC */ bge lbl_801DF72C +/* 801DF644 001DC5A4 48 00 00 D0 */ b lbl_801DF714 +lbl_801DF648: +/* 801DF648 001DC5A8 81 1E 04 50 */ lwz r8, 0x450(r30) +/* 801DF64C 001DC5AC 80 08 02 B8 */ lwz r0, 0x2b8(r8) +/* 801DF650 001DC5B0 2C 00 00 12 */ cmpwi r0, 0x12 +/* 801DF654 001DC5B4 40 82 00 10 */ bne lbl_801DF664 +/* 801DF658 001DC5B8 38 00 00 02 */ li r0, 2 +/* 801DF65C 001DC5BC 90 1E 05 EC */ stw r0, 0x5ec(r30) +/* 801DF660 001DC5C0 48 00 00 CC */ b lbl_801DF72C +lbl_801DF664: +/* 801DF664 001DC5C4 3C A0 80 3E */ lis r5, lbl_803DAA68@ha +/* 801DF668 001DC5C8 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801DF66C 001DC5CC C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) +/* 801DF670 001DC5D0 38 C5 AA 68 */ addi r6, r5, lbl_803DAA68@l +/* 801DF674 001DC5D4 3C 80 80 3E */ lis r4, lbl_803DA9CC@ha +/* 801DF678 001DC5D8 90 C1 00 08 */ stw r6, 8(r1) +/* 801DF67C 001DC5DC 38 C4 A9 CC */ addi r6, r4, lbl_803DA9CC@l +/* 801DF680 001DC5E0 C0 23 00 04 */ lfs f1, 4(r3) +/* 801DF684 001DC5E4 C0 03 00 08 */ lfs f0, 8(r3) +/* 801DF688 001DC5E8 38 E0 00 06 */ li r7, 6 +/* 801DF68C 001DC5EC 38 A0 00 01 */ li r5, 1 +/* 801DF690 001DC5F0 38 00 00 00 */ li r0, 0 +/* 801DF694 001DC5F4 3B E8 00 04 */ addi r31, r8, 4 +/* 801DF698 001DC5F8 90 E1 00 0C */ stw r7, 0xc(r1) +/* 801DF69C 001DC5FC 7F E3 FB 78 */ mr r3, r31 +/* 801DF6A0 001DC600 38 80 00 06 */ li r4, 6 +/* 801DF6A4 001DC604 90 C1 00 08 */ stw r6, 8(r1) +/* 801DF6A8 001DC608 90 A1 00 10 */ stw r5, 0x10(r1) +/* 801DF6AC 001DC60C D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801DF6B0 001DC610 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801DF6B4 001DC614 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801DF6B8 001DC618 98 01 00 20 */ stb r0, 0x20(r1) +/* 801DF6BC 001DC61C 4B F5 1D 7D */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801DF6C0 001DC620 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801DF6C4 001DC624 3C 60 80 3E */ lis r3, lbl_803DA9CC@ha +/* 801DF6C8 001DC628 38 83 A9 CC */ addi r4, r3, lbl_803DA9CC@l +/* 801DF6CC 001DC62C 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801DF6D0 001DC630 90 1F 01 2C */ stw r0, 0x12c(r31) +/* 801DF6D4 001DC634 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l +/* 801DF6D8 001DC638 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 801DF6DC 001DC63C 38 00 00 00 */ li r0, 0 +/* 801DF6E0 001DC640 80 C1 00 14 */ lwz r6, 0x14(r1) +/* 801DF6E4 001DC644 90 BF 01 30 */ stw r5, 0x130(r31) +/* 801DF6E8 001DC648 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 801DF6EC 001DC64C 90 DF 01 34 */ stw r6, 0x134(r31) +/* 801DF6F0 001DC650 80 C1 00 1C */ lwz r6, 0x1c(r1) +/* 801DF6F4 001DC654 90 BF 01 38 */ stw r5, 0x138(r31) +/* 801DF6F8 001DC658 88 A1 00 20 */ lbz r5, 0x20(r1) +/* 801DF6FC 001DC65C 90 DF 01 3C */ stw r6, 0x13c(r31) +/* 801DF700 001DC660 98 BF 01 40 */ stb r5, 0x140(r31) +/* 801DF704 001DC664 90 81 00 08 */ stw r4, 8(r1) +/* 801DF708 001DC668 90 61 00 08 */ stw r3, 8(r1) +/* 801DF70C 001DC66C 90 1E 05 EC */ stw r0, 0x5ec(r30) +/* 801DF710 001DC670 48 00 00 1C */ b lbl_801DF72C +lbl_801DF714: +/* 801DF714 001DC674 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801DF718 001DC678 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801DF71C 001DC67C 2C 00 00 12 */ cmpwi r0, 0x12 +/* 801DF720 001DC680 41 82 00 0C */ beq lbl_801DF72C +/* 801DF724 001DC684 38 00 00 03 */ li r0, 3 +/* 801DF728 001DC688 90 1E 05 EC */ stw r0, 0x5ec(r30) +lbl_801DF72C: +/* 801DF72C 001DC68C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801DF730 001DC690 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801DF734 001DC694 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801DF738 001DC698 7C 08 03 A6 */ mtlr r0 +/* 801DF73C 001DC69C 38 21 00 30 */ addi r1, r1, 0x30 +/* 801DF740 001DC6A0 4E 80 00 20 */ blr + +.global ProjectileAttack__8CThardusFR13CStateManager9EStateMsgf +ProjectileAttack__8CThardusFR13CStateManager9EStateMsgf: +/* 801DF744 001DC6A4 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801DF748 001DC6A8 7C 08 02 A6 */ mflr r0 +/* 801DF74C 001DC6AC 2C 05 00 01 */ cmpwi r5, 1 +/* 801DF750 001DC6B0 90 01 00 34 */ stw r0, 0x34(r1) +/* 801DF754 001DC6B4 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801DF758 001DC6B8 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801DF75C 001DC6BC 7C 7E 1B 78 */ mr r30, r3 +/* 801DF760 001DC6C0 41 82 00 24 */ beq lbl_801DF784 +/* 801DF764 001DC6C4 40 80 01 28 */ bge lbl_801DF88C +/* 801DF768 001DC6C8 2C 05 00 00 */ cmpwi r5, 0 +/* 801DF76C 001DC6CC 40 80 00 0C */ bge lbl_801DF778 +/* 801DF770 001DC6D0 48 00 01 1C */ b lbl_801DF88C +/* 801DF774 001DC6D4 48 00 01 18 */ b lbl_801DF88C +lbl_801DF778: +/* 801DF778 001DC6D8 38 00 00 00 */ li r0, 0 +/* 801DF77C 001DC6DC 90 1E 05 EC */ stw r0, 0x5ec(r30) +/* 801DF780 001DC6E0 48 00 01 0C */ b lbl_801DF88C +lbl_801DF784: +/* 801DF784 001DC6E4 80 1E 05 EC */ lwz r0, 0x5ec(r30) +/* 801DF788 001DC6E8 2C 00 00 01 */ cmpwi r0, 1 +/* 801DF78C 001DC6EC 41 82 01 00 */ beq lbl_801DF88C +/* 801DF790 001DC6F0 40 80 00 10 */ bge lbl_801DF7A0 +/* 801DF794 001DC6F4 2C 00 00 00 */ cmpwi r0, 0 +/* 801DF798 001DC6F8 40 80 00 14 */ bge lbl_801DF7AC +/* 801DF79C 001DC6FC 48 00 00 F0 */ b lbl_801DF88C +lbl_801DF7A0: +/* 801DF7A0 001DC700 2C 00 00 03 */ cmpwi r0, 3 +/* 801DF7A4 001DC704 40 80 00 E8 */ bge lbl_801DF88C +/* 801DF7A8 001DC708 48 00 00 CC */ b lbl_801DF874 +lbl_801DF7AC: +/* 801DF7AC 001DC70C 80 DE 04 50 */ lwz r6, 0x450(r30) +/* 801DF7B0 001DC710 80 06 02 B8 */ lwz r0, 0x2b8(r6) +/* 801DF7B4 001DC714 2C 00 00 12 */ cmpwi r0, 0x12 +/* 801DF7B8 001DC718 40 82 00 10 */ bne lbl_801DF7C8 +/* 801DF7BC 001DC71C 38 00 00 02 */ li r0, 2 +/* 801DF7C0 001DC720 90 1E 05 EC */ stw r0, 0x5ec(r30) +/* 801DF7C4 001DC724 48 00 00 C8 */ b lbl_801DF88C +lbl_801DF7C8: +/* 801DF7C8 001DC728 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 801DF7CC 001DC72C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801DF7D0 001DC730 C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) +/* 801DF7D4 001DC734 38 A4 AA 68 */ addi r5, r4, lbl_803DAA68@l +/* 801DF7D8 001DC738 3C 80 80 3E */ lis r4, lbl_803DA9CC@ha +/* 801DF7DC 001DC73C 90 A1 00 08 */ stw r5, 8(r1) +/* 801DF7E0 001DC740 38 00 00 00 */ li r0, 0 +/* 801DF7E4 001DC744 C0 23 00 04 */ lfs f1, 4(r3) +/* 801DF7E8 001DC748 C0 03 00 08 */ lfs f0, 8(r3) +/* 801DF7EC 001DC74C 38 A4 A9 CC */ addi r5, r4, lbl_803DA9CC@l +/* 801DF7F0 001DC750 38 60 00 06 */ li r3, 6 +/* 801DF7F4 001DC754 3B E6 00 04 */ addi r31, r6, 4 +/* 801DF7F8 001DC758 90 61 00 0C */ stw r3, 0xc(r1) +/* 801DF7FC 001DC75C 38 80 00 06 */ li r4, 6 +/* 801DF800 001DC760 7F E3 FB 78 */ mr r3, r31 +/* 801DF804 001DC764 90 A1 00 08 */ stw r5, 8(r1) +/* 801DF808 001DC768 90 01 00 10 */ stw r0, 0x10(r1) +/* 801DF80C 001DC76C D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801DF810 001DC770 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801DF814 001DC774 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801DF818 001DC778 98 01 00 20 */ stb r0, 0x20(r1) +/* 801DF81C 001DC77C 4B F5 1C 1D */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801DF820 001DC780 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801DF824 001DC784 3C 60 80 3E */ lis r3, lbl_803DA9CC@ha +/* 801DF828 001DC788 38 83 A9 CC */ addi r4, r3, lbl_803DA9CC@l +/* 801DF82C 001DC78C 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801DF830 001DC790 90 1F 01 2C */ stw r0, 0x12c(r31) +/* 801DF834 001DC794 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l +/* 801DF838 001DC798 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 801DF83C 001DC79C 38 00 00 00 */ li r0, 0 +/* 801DF840 001DC7A0 80 C1 00 14 */ lwz r6, 0x14(r1) +/* 801DF844 001DC7A4 90 BF 01 30 */ stw r5, 0x130(r31) +/* 801DF848 001DC7A8 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 801DF84C 001DC7AC 90 DF 01 34 */ stw r6, 0x134(r31) +/* 801DF850 001DC7B0 80 C1 00 1C */ lwz r6, 0x1c(r1) +/* 801DF854 001DC7B4 90 BF 01 38 */ stw r5, 0x138(r31) +/* 801DF858 001DC7B8 88 A1 00 20 */ lbz r5, 0x20(r1) +/* 801DF85C 001DC7BC 90 DF 01 3C */ stw r6, 0x13c(r31) +/* 801DF860 001DC7C0 98 BF 01 40 */ stb r5, 0x140(r31) +/* 801DF864 001DC7C4 90 81 00 08 */ stw r4, 8(r1) +/* 801DF868 001DC7C8 90 61 00 08 */ stw r3, 8(r1) +/* 801DF86C 001DC7CC 90 1E 05 EC */ stw r0, 0x5ec(r30) +/* 801DF870 001DC7D0 48 00 00 1C */ b lbl_801DF88C +lbl_801DF874: +/* 801DF874 001DC7D4 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801DF878 001DC7D8 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801DF87C 001DC7DC 2C 00 00 12 */ cmpwi r0, 0x12 +/* 801DF880 001DC7E0 41 82 00 0C */ beq lbl_801DF88C +/* 801DF884 001DC7E4 38 00 00 03 */ li r0, 3 +/* 801DF888 001DC7E8 90 1E 05 EC */ stw r0, 0x5ec(r30) +lbl_801DF88C: +/* 801DF88C 001DC7EC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801DF890 001DC7F0 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801DF894 001DC7F4 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801DF898 001DC7F8 7C 08 03 A6 */ mtlr r0 +/* 801DF89C 001DC7FC 38 21 00 30 */ addi r1, r1, 0x30 +/* 801DF8A0 001DC800 4E 80 00 20 */ blr + +.global Taunt__8CThardusFR13CStateManager9EStateMsgf +Taunt__8CThardusFR13CStateManager9EStateMsgf: +/* 801DF8A4 001DC804 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801DF8A8 001DC808 7C 08 02 A6 */ mflr r0 +/* 801DF8AC 001DC80C 2C 05 00 01 */ cmpwi r5, 1 +/* 801DF8B0 001DC810 90 01 00 24 */ stw r0, 0x24(r1) +/* 801DF8B4 001DC814 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801DF8B8 001DC818 41 82 00 24 */ beq lbl_801DF8DC +/* 801DF8BC 001DC81C 40 80 00 E0 */ bge lbl_801DF99C +/* 801DF8C0 001DC820 2C 05 00 00 */ cmpwi r5, 0 +/* 801DF8C4 001DC824 40 80 00 0C */ bge lbl_801DF8D0 +/* 801DF8C8 001DC828 48 00 00 D4 */ b lbl_801DF99C +/* 801DF8CC 001DC82C 48 00 00 D0 */ b lbl_801DF99C +lbl_801DF8D0: +/* 801DF8D0 001DC830 38 00 00 00 */ li r0, 0 +/* 801DF8D4 001DC834 90 03 05 EC */ stw r0, 0x5ec(r3) +/* 801DF8D8 001DC838 48 00 00 C4 */ b lbl_801DF99C +lbl_801DF8DC: +/* 801DF8DC 001DC83C 80 03 05 EC */ lwz r0, 0x5ec(r3) +/* 801DF8E0 001DC840 2C 00 00 01 */ cmpwi r0, 1 +/* 801DF8E4 001DC844 41 82 00 B8 */ beq lbl_801DF99C +/* 801DF8E8 001DC848 40 80 00 10 */ bge lbl_801DF8F8 +/* 801DF8EC 001DC84C 2C 00 00 00 */ cmpwi r0, 0 +/* 801DF8F0 001DC850 40 80 00 14 */ bge lbl_801DF904 +/* 801DF8F4 001DC854 48 00 00 A8 */ b lbl_801DF99C +lbl_801DF8F8: +/* 801DF8F8 001DC858 2C 00 00 03 */ cmpwi r0, 3 +/* 801DF8FC 001DC85C 40 80 00 A0 */ bge lbl_801DF99C +/* 801DF900 001DC860 48 00 00 84 */ b lbl_801DF984 +lbl_801DF904: +/* 801DF904 001DC864 80 C3 04 50 */ lwz r6, 0x450(r3) +/* 801DF908 001DC868 80 06 02 B8 */ lwz r0, 0x2b8(r6) +/* 801DF90C 001DC86C 2C 00 00 10 */ cmpwi r0, 0x10 +/* 801DF910 001DC870 40 82 00 10 */ bne lbl_801DF920 +/* 801DF914 001DC874 38 00 00 02 */ li r0, 2 +/* 801DF918 001DC878 90 03 05 EC */ stw r0, 0x5ec(r3) +/* 801DF91C 001DC87C 48 00 00 80 */ b lbl_801DF99C +lbl_801DF920: +/* 801DF920 001DC880 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 801DF924 001DC884 3C 60 80 3E */ lis r3, lbl_803DAA14@ha +/* 801DF928 001DC888 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l +/* 801DF92C 001DC88C 38 80 00 12 */ li r4, 0x12 +/* 801DF930 001DC890 90 01 00 08 */ stw r0, 8(r1) +/* 801DF934 001DC894 38 A3 AA 14 */ addi r5, r3, lbl_803DAA14@l +/* 801DF938 001DC898 38 00 00 01 */ li r0, 1 +/* 801DF93C 001DC89C 3B E6 00 04 */ addi r31, r6, 4 +/* 801DF940 001DC8A0 90 81 00 0C */ stw r4, 0xc(r1) +/* 801DF944 001DC8A4 7F E3 FB 78 */ mr r3, r31 +/* 801DF948 001DC8A8 38 80 00 12 */ li r4, 0x12 +/* 801DF94C 001DC8AC 90 A1 00 08 */ stw r5, 8(r1) +/* 801DF950 001DC8B0 90 01 00 10 */ stw r0, 0x10(r1) +/* 801DF954 001DC8B4 4B F5 1A E5 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801DF958 001DC8B8 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801DF95C 001DC8BC 3C 60 80 3E */ lis r3, lbl_803DAA14@ha +/* 801DF960 001DC8C0 38 83 AA 14 */ addi r4, r3, lbl_803DAA14@l +/* 801DF964 001DC8C4 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801DF968 001DC8C8 90 1F 02 14 */ stw r0, 0x214(r31) +/* 801DF96C 001DC8CC 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801DF970 001DC8D0 80 61 00 10 */ lwz r3, 0x10(r1) +/* 801DF974 001DC8D4 90 81 00 08 */ stw r4, 8(r1) +/* 801DF978 001DC8D8 90 7F 02 18 */ stw r3, 0x218(r31) +/* 801DF97C 001DC8DC 90 01 00 08 */ stw r0, 8(r1) +/* 801DF980 001DC8E0 48 00 00 1C */ b lbl_801DF99C +lbl_801DF984: +/* 801DF984 001DC8E4 80 83 04 50 */ lwz r4, 0x450(r3) +/* 801DF988 001DC8E8 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 801DF98C 001DC8EC 2C 00 00 10 */ cmpwi r0, 0x10 +/* 801DF990 001DC8F0 41 82 00 0C */ beq lbl_801DF99C +/* 801DF994 001DC8F4 38 00 00 03 */ li r0, 3 +/* 801DF998 001DC8F8 90 03 05 EC */ stw r0, 0x5ec(r3) +lbl_801DF99C: +/* 801DF99C 001DC8FC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801DF9A0 001DC900 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801DF9A4 001DC904 7C 08 03 A6 */ mtlr r0 +/* 801DF9A8 001DC908 38 21 00 20 */ addi r1, r1, 0x20 +/* 801DF9AC 001DC90C 4E 80 00 20 */ blr + +.global TargetPatrol__8CThardusFR13CStateManager9EStateMsgf +TargetPatrol__8CThardusFR13CStateManager9EStateMsgf: +/* 801DF9B0 001DC910 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801DF9B4 001DC914 7C 08 02 A6 */ mflr r0 +/* 801DF9B8 001DC918 2C 05 00 01 */ cmpwi r5, 1 +/* 801DF9BC 001DC91C 90 01 00 34 */ stw r0, 0x34(r1) +/* 801DF9C0 001DC920 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801DF9C4 001DC924 7C 9F 23 78 */ mr r31, r4 +/* 801DF9C8 001DC928 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801DF9CC 001DC92C 7C 7E 1B 78 */ mr r30, r3 +/* 801DF9D0 001DC930 41 82 00 68 */ beq lbl_801DFA38 +/* 801DF9D4 001DC934 40 80 01 24 */ bge lbl_801DFAF8 +/* 801DF9D8 001DC938 2C 05 00 00 */ cmpwi r5, 0 +/* 801DF9DC 001DC93C 40 80 00 0C */ bge lbl_801DF9E8 +/* 801DF9E0 001DC940 48 00 01 18 */ b lbl_801DFAF8 +/* 801DF9E4 001DC944 48 00 01 14 */ b lbl_801DFAF8 +lbl_801DF9E8: +/* 801DF9E8 001DC948 38 00 00 00 */ li r0, 0 +/* 801DF9EC 001DC94C 90 1E 05 EC */ stw r0, 0x5ec(r30) +/* 801DF9F0 001DC950 88 1E 09 5E */ lbz r0, 0x95e(r30) +/* 801DF9F4 001DC954 28 00 00 00 */ cmplwi r0, 0 +/* 801DF9F8 001DC958 40 82 01 00 */ bne lbl_801DFAF8 +/* 801DF9FC 001DC95C 81 83 00 00 */ lwz r12, 0(r3) +/* 801DFA00 001DC960 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801DFA04 001DC964 7D 89 03 A6 */ mtctr r12 +/* 801DFA08 001DC968 4E 80 04 21 */ bctrl +/* 801DFA0C 001DC96C C0 23 00 00 */ lfs f1, 0(r3) +/* 801DFA10 001DC970 7F E3 FB 78 */ mr r3, r31 +/* 801DFA14 001DC974 A0 1E 00 08 */ lhz r0, 8(r30) +/* 801DFA18 001DC978 38 81 00 0C */ addi r4, r1, 0xc +/* 801DFA1C 001DC97C 38 A0 00 58 */ li r5, 0x58 +/* 801DFA20 001DC980 B0 01 00 08 */ sth r0, 8(r1) +/* 801DFA24 001DC984 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801DFA28 001DC988 4B E6 45 1D */ bl SetBossParams__13CStateManagerF9TUniqueIdfUi +/* 801DFA2C 001DC98C 38 00 00 01 */ li r0, 1 +/* 801DFA30 001DC990 98 1E 09 5E */ stb r0, 0x95e(r30) +/* 801DFA34 001DC994 48 00 00 C4 */ b lbl_801DFAF8 +lbl_801DFA38: +/* 801DFA38 001DC998 80 1E 05 EC */ lwz r0, 0x5ec(r30) +/* 801DFA3C 001DC99C 2C 00 00 01 */ cmpwi r0, 1 +/* 801DFA40 001DC9A0 41 82 00 B8 */ beq lbl_801DFAF8 +/* 801DFA44 001DC9A4 40 80 00 10 */ bge lbl_801DFA54 +/* 801DFA48 001DC9A8 2C 00 00 00 */ cmpwi r0, 0 +/* 801DFA4C 001DC9AC 40 80 00 14 */ bge lbl_801DFA60 +/* 801DFA50 001DC9B0 48 00 00 A8 */ b lbl_801DFAF8 +lbl_801DFA54: +/* 801DFA54 001DC9B4 2C 00 00 03 */ cmpwi r0, 3 +/* 801DFA58 001DC9B8 40 80 00 A0 */ bge lbl_801DFAF8 +/* 801DFA5C 001DC9BC 48 00 00 84 */ b lbl_801DFAE0 +lbl_801DFA60: +/* 801DFA60 001DC9C0 80 DE 04 50 */ lwz r6, 0x450(r30) +/* 801DFA64 001DC9C4 80 06 02 B8 */ lwz r0, 0x2b8(r6) +/* 801DFA68 001DC9C8 2C 00 00 10 */ cmpwi r0, 0x10 +/* 801DFA6C 001DC9CC 40 82 00 10 */ bne lbl_801DFA7C +/* 801DFA70 001DC9D0 38 00 00 02 */ li r0, 2 +/* 801DFA74 001DC9D4 90 1E 05 EC */ stw r0, 0x5ec(r30) +/* 801DFA78 001DC9D8 48 00 00 80 */ b lbl_801DFAF8 +lbl_801DFA7C: +/* 801DFA7C 001DC9DC 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 801DFA80 001DC9E0 3C 60 80 3E */ lis r3, lbl_803DAA14@ha +/* 801DFA84 001DC9E4 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l +/* 801DFA88 001DC9E8 38 80 00 12 */ li r4, 0x12 +/* 801DFA8C 001DC9EC 90 01 00 10 */ stw r0, 0x10(r1) +/* 801DFA90 001DC9F0 38 A3 AA 14 */ addi r5, r3, lbl_803DAA14@l +/* 801DFA94 001DC9F4 38 00 00 01 */ li r0, 1 +/* 801DFA98 001DC9F8 3B E6 00 04 */ addi r31, r6, 4 +/* 801DFA9C 001DC9FC 90 81 00 14 */ stw r4, 0x14(r1) +/* 801DFAA0 001DCA00 7F E3 FB 78 */ mr r3, r31 +/* 801DFAA4 001DCA04 38 80 00 12 */ li r4, 0x12 +/* 801DFAA8 001DCA08 90 A1 00 10 */ stw r5, 0x10(r1) +/* 801DFAAC 001DCA0C 90 01 00 18 */ stw r0, 0x18(r1) +/* 801DFAB0 001DCA10 4B F5 19 89 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801DFAB4 001DCA14 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801DFAB8 001DCA18 3C 60 80 3E */ lis r3, lbl_803DAA14@ha +/* 801DFABC 001DCA1C 38 83 AA 14 */ addi r4, r3, lbl_803DAA14@l +/* 801DFAC0 001DCA20 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801DFAC4 001DCA24 90 1F 02 14 */ stw r0, 0x214(r31) +/* 801DFAC8 001DCA28 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801DFACC 001DCA2C 80 61 00 18 */ lwz r3, 0x18(r1) +/* 801DFAD0 001DCA30 90 81 00 10 */ stw r4, 0x10(r1) +/* 801DFAD4 001DCA34 90 7F 02 18 */ stw r3, 0x218(r31) +/* 801DFAD8 001DCA38 90 01 00 10 */ stw r0, 0x10(r1) +/* 801DFADC 001DCA3C 48 00 00 1C */ b lbl_801DFAF8 +lbl_801DFAE0: +/* 801DFAE0 001DCA40 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801DFAE4 001DCA44 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801DFAE8 001DCA48 2C 00 00 10 */ cmpwi r0, 0x10 +/* 801DFAEC 001DCA4C 41 82 00 0C */ beq lbl_801DFAF8 +/* 801DFAF0 001DCA50 38 00 00 03 */ li r0, 3 +/* 801DFAF4 001DCA54 90 1E 05 EC */ stw r0, 0x5ec(r30) +lbl_801DFAF8: +/* 801DFAF8 001DCA58 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801DFAFC 001DCA5C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801DFB00 001DCA60 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801DFB04 001DCA64 7C 08 03 A6 */ mtlr r0 +/* 801DFB08 001DCA68 38 21 00 30 */ addi r1, r1, 0x30 +/* 801DFB0C 001DCA6C 4E 80 00 20 */ blr + +.global Patrol__8CThardusFR13CStateManager9EStateMsgf +Patrol__8CThardusFR13CStateManager9EStateMsgf: +/* 801DFB10 001DCA70 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 801DFB14 001DCA74 7C 08 02 A6 */ mflr r0 +/* 801DFB18 001DCA78 2C 05 00 01 */ cmpwi r5, 1 +/* 801DFB1C 001DCA7C 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 801DFB20 001DCA80 93 E1 00 DC */ stw r31, 0xdc(r1) +/* 801DFB24 001DCA84 7C 9F 23 78 */ mr r31, r4 +/* 801DFB28 001DCA88 93 C1 00 D8 */ stw r30, 0xd8(r1) +/* 801DFB2C 001DCA8C 7C 7E 1B 78 */ mr r30, r3 +/* 801DFB30 001DCA90 41 82 00 48 */ beq lbl_801DFB78 +/* 801DFB34 001DCA94 40 80 00 10 */ bge lbl_801DFB44 +/* 801DFB38 001DCA98 2C 05 00 00 */ cmpwi r5, 0 +/* 801DFB3C 001DCA9C 40 80 00 14 */ bge lbl_801DFB50 +/* 801DFB40 001DCAA0 48 00 01 C4 */ b lbl_801DFD04 +lbl_801DFB44: +/* 801DFB44 001DCAA4 2C 05 00 03 */ cmpwi r5, 3 +/* 801DFB48 001DCAA8 40 80 01 BC */ bge lbl_801DFD04 +/* 801DFB4C 001DCAAC 48 00 01 AC */ b lbl_801DFCF8 +lbl_801DFB50: +/* 801DFB50 001DCAB0 38 00 FF FF */ li r0, -1 +/* 801DFB54 001DCAB4 90 1E 06 58 */ stw r0, 0x658(r30) +/* 801DFB58 001DCAB8 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 801DFB5C 001DCABC C0 43 00 60 */ lfs f2, 0x60(r3) +/* 801DFB60 001DCAC0 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801DFB64 001DCAC4 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801DFB68 001DCAC8 D0 1E 09 50 */ stfs f0, 0x950(r30) +/* 801DFB6C 001DCACC D0 3E 09 54 */ stfs f1, 0x954(r30) +/* 801DFB70 001DCAD0 D0 5E 09 58 */ stfs f2, 0x958(r30) +/* 801DFB74 001DCAD4 48 00 01 90 */ b lbl_801DFD04 +lbl_801DFB78: +/* 801DFB78 001DCAD8 81 83 00 00 */ lwz r12, 0(r3) +/* 801DFB7C 001DCADC C0 22 AC DC */ lfs f1, lbl_805AC9FC@sda21(r2) +/* 801DFB80 001DCAE0 81 8C 01 E8 */ lwz r12, 0x1e8(r12) +/* 801DFB84 001DCAE4 7D 89 03 A6 */ mtctr r12 +/* 801DFB88 001DCAE8 4E 80 04 21 */ bctrl +/* 801DFB8C 001DCAEC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801DFB90 001DCAF0 41 82 01 74 */ beq lbl_801DFD04 +/* 801DFB94 001DCAF4 80 BF 08 4C */ lwz r5, 0x84c(r31) +/* 801DFB98 001DCAF8 38 61 00 3C */ addi r3, r1, 0x3c +/* 801DFB9C 001DCAFC C0 02 AD 4C */ lfs f0, lbl_805ACA6C@sda21(r2) +/* 801DFBA0 001DCB00 38 81 00 8C */ addi r4, r1, 0x8c +/* 801DFBA4 001DCB04 C0 65 00 60 */ lfs f3, 0x60(r5) +/* 801DFBA8 001DCB08 C0 45 00 50 */ lfs f2, 0x50(r5) +/* 801DFBAC 001DCB0C C0 25 00 40 */ lfs f1, 0x40(r5) +/* 801DFBB0 001DCB10 D0 21 00 8C */ stfs f1, 0x8c(r1) +/* 801DFBB4 001DCB14 D0 41 00 90 */ stfs f2, 0x90(r1) +/* 801DFBB8 001DCB18 D0 61 00 94 */ stfs f3, 0x94(r1) +/* 801DFBBC 001DCB1C D0 01 00 08 */ stfs f0, 8(r1) +/* 801DFBC0 001DCB20 48 13 4C 91 */ bl AsNormalized__9CVector3fCFv +/* 801DFBC4 001DCB24 38 61 00 48 */ addi r3, r1, 0x48 +/* 801DFBC8 001DCB28 38 81 00 3C */ addi r4, r1, 0x3c +/* 801DFBCC 001DCB2C 48 13 42 05 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 801DFBD0 001DCB30 7C 7F 1B 78 */ mr r31, r3 +/* 801DFBD4 001DCB34 38 61 00 54 */ addi r3, r1, 0x54 +/* 801DFBD8 001DCB38 38 9E 09 50 */ addi r4, r30, 0x950 +/* 801DFBDC 001DCB3C 48 13 41 F5 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 801DFBE0 001DCB40 7C 64 1B 78 */ mr r4, r3 +/* 801DFBE4 001DCB44 7F E5 FB 78 */ mr r5, r31 +/* 801DFBE8 001DCB48 38 61 00 60 */ addi r3, r1, 0x60 +/* 801DFBEC 001DCB4C 38 C1 00 08 */ addi r6, r1, 8 +/* 801DFBF0 001DCB50 48 13 1A A5 */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle +/* 801DFBF4 001DCB54 C0 61 00 60 */ lfs f3, 0x60(r1) +/* 801DFBF8 001DCB58 38 61 00 30 */ addi r3, r1, 0x30 +/* 801DFBFC 001DCB5C C0 41 00 64 */ lfs f2, 0x64(r1) +/* 801DFC00 001DCB60 38 81 00 24 */ addi r4, r1, 0x24 +/* 801DFC04 001DCB64 C0 21 00 68 */ lfs f1, 0x68(r1) +/* 801DFC08 001DCB68 C0 01 00 6C */ lfs f0, 0x6c(r1) +/* 801DFC0C 001DCB6C D0 61 00 7C */ stfs f3, 0x7c(r1) +/* 801DFC10 001DCB70 C0 A1 00 90 */ lfs f5, 0x90(r1) +/* 801DFC14 001DCB74 D0 41 00 80 */ stfs f2, 0x80(r1) +/* 801DFC18 001DCB78 C0 61 00 94 */ lfs f3, 0x94(r1) +/* 801DFC1C 001DCB7C D0 21 00 84 */ stfs f1, 0x84(r1) +/* 801DFC20 001DCB80 C0 21 00 8C */ lfs f1, 0x8c(r1) +/* 801DFC24 001DCB84 D0 01 00 88 */ stfs f0, 0x88(r1) +/* 801DFC28 001DCB88 C0 9E 00 50 */ lfs f4, 0x50(r30) +/* 801DFC2C 001DCB8C C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 801DFC30 001DCB90 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801DFC34 001DCB94 EC 85 20 28 */ fsubs f4, f5, f4 +/* 801DFC38 001DCB98 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801DFC3C 001DCB9C EC 01 00 28 */ fsubs f0, f1, f0 +/* 801DFC40 001DCBA0 D0 81 00 1C */ stfs f4, 0x1c(r1) +/* 801DFC44 001DCBA4 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801DFC48 001DCBA8 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 801DFC4C 001DCBAC D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801DFC50 001DCBB0 D0 81 00 28 */ stfs f4, 0x28(r1) +/* 801DFC54 001DCBB4 D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 801DFC58 001DCBB8 48 13 4B F9 */ bl AsNormalized__9CVector3fCFv +/* 801DFC5C 001DCBBC C0 41 00 30 */ lfs f2, 0x30(r1) +/* 801DFC60 001DCBC0 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 801DFC64 001DCBC4 C0 21 00 34 */ lfs f1, 0x34(r1) +/* 801DFC68 001DCBC8 38 81 00 7C */ addi r4, r1, 0x7c +/* 801DFC6C 001DCBCC C0 01 00 38 */ lfs f0, 0x38(r1) +/* 801DFC70 001DCBD0 D0 41 00 70 */ stfs f2, 0x70(r1) +/* 801DFC74 001DCBD4 D0 21 00 74 */ stfs f1, 0x74(r1) +/* 801DFC78 001DCBD8 D0 01 00 78 */ stfs f0, 0x78(r1) +/* 801DFC7C 001DCBDC 48 13 24 11 */ bl BuildTransform__11CQuaternionCFv +/* 801DFC80 001DCBE0 38 61 00 0C */ addi r3, r1, 0xc +/* 801DFC84 001DCBE4 38 81 00 B4 */ addi r4, r1, 0xb4 +/* 801DFC88 001DCBE8 38 A1 00 70 */ addi r5, r1, 0x70 +/* 801DFC8C 001DCBEC 48 13 06 09 */ bl __ml__9CMatrix3fCFRC9CVector3f +/* 801DFC90 001DCBF0 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801DFC94 001DCBF4 C4 C3 66 A0 */ lfsu f6, skZero3f@l(r3) +/* 801DFC98 001DCBF8 C0 61 00 70 */ lfs f3, 0x70(r1) +/* 801DFC9C 001DCBFC 38 81 00 98 */ addi r4, r1, 0x98 +/* 801DFCA0 001DCC00 C0 41 00 74 */ lfs f2, 0x74(r1) +/* 801DFCA4 001DCC04 C0 A3 00 04 */ lfs f5, 4(r3) +/* 801DFCA8 001DCC08 C0 83 00 08 */ lfs f4, 8(r3) +/* 801DFCAC 001DCC0C C0 21 00 78 */ lfs f1, 0x78(r1) +/* 801DFCB0 001DCC10 C0 02 AC D8 */ lfs f0, lbl_805AC9F8@sda21(r2) +/* 801DFCB4 001DCC14 D0 C1 00 98 */ stfs f6, 0x98(r1) +/* 801DFCB8 001DCC18 D0 A1 00 9C */ stfs f5, 0x9c(r1) +/* 801DFCBC 001DCC1C D0 81 00 A0 */ stfs f4, 0xa0(r1) +/* 801DFCC0 001DCC20 D0 61 00 A4 */ stfs f3, 0xa4(r1) +/* 801DFCC4 001DCC24 D0 41 00 A8 */ stfs f2, 0xa8(r1) +/* 801DFCC8 001DCC28 D0 21 00 AC */ stfs f1, 0xac(r1) +/* 801DFCCC 001DCC2C D0 01 00 B0 */ stfs f0, 0xb0(r1) +/* 801DFCD0 001DCC30 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801DFCD4 001DCC34 38 63 00 04 */ addi r3, r3, 4 +/* 801DFCD8 001DCC38 4B F5 1A 41 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 801DFCDC 001DCC3C C0 01 00 8C */ lfs f0, 0x8c(r1) +/* 801DFCE0 001DCC40 D0 1E 09 50 */ stfs f0, 0x950(r30) +/* 801DFCE4 001DCC44 C0 01 00 90 */ lfs f0, 0x90(r1) +/* 801DFCE8 001DCC48 D0 1E 09 54 */ stfs f0, 0x954(r30) +/* 801DFCEC 001DCC4C C0 01 00 94 */ lfs f0, 0x94(r1) +/* 801DFCF0 001DCC50 D0 1E 09 58 */ stfs f0, 0x958(r30) +/* 801DFCF4 001DCC54 48 00 00 10 */ b lbl_801DFD04 +lbl_801DFCF8: +/* 801DFCF8 001DCC58 4B FF ED E5 */ bl sub_801deadc +/* 801DFCFC 001DCC5C 38 00 00 00 */ li r0, 0 +/* 801DFD00 001DCC60 98 1E 09 4D */ stb r0, 0x94d(r30) +lbl_801DFD04: +/* 801DFD04 001DCC64 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 801DFD08 001DCC68 83 E1 00 DC */ lwz r31, 0xdc(r1) +/* 801DFD0C 001DCC6C 83 C1 00 D8 */ lwz r30, 0xd8(r1) +/* 801DFD10 001DCC70 7C 08 03 A6 */ mtlr r0 +/* 801DFD14 001DCC74 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 801DFD18 001DCC78 4E 80 00 20 */ blr + +.global Think__8CThardusFfR13CStateManager +Think__8CThardusFfR13CStateManager: +/* 801DFD1C 001DCC7C 94 21 FE 40 */ stwu r1, -0x1c0(r1) +/* 801DFD20 001DCC80 7C 08 02 A6 */ mflr r0 +/* 801DFD24 001DCC84 90 01 01 C4 */ stw r0, 0x1c4(r1) +/* 801DFD28 001DCC88 DB E1 01 B0 */ stfd f31, 0x1b0(r1) +/* 801DFD2C 001DCC8C F3 E1 01 B8 */ psq_st f31, 440(r1), 0, qr0 +/* 801DFD30 001DCC90 BF 01 01 90 */ stmw r24, 0x190(r1) +/* 801DFD34 001DCC94 88 03 00 30 */ lbz r0, 0x30(r3) +/* 801DFD38 001DCC98 FF E0 08 90 */ fmr f31, f1 +/* 801DFD3C 001DCC9C 7C 7A 1B 78 */ mr r26, r3 +/* 801DFD40 001DCCA0 7C 9B 23 78 */ mr r27, r4 +/* 801DFD44 001DCCA4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801DFD48 001DCCA8 41 82 07 FC */ beq lbl_801E0544 +/* 801DFD4C 001DCCAC 80 7A 04 50 */ lwz r3, 0x450(r26) +/* 801DFD50 001DCCB0 88 03 03 00 */ lbz r0, 0x300(r3) +/* 801DFD54 001DCCB4 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801DFD58 001DCCB8 41 82 07 EC */ beq lbl_801E0544 +/* 801DFD5C 001DCCBC 80 1A 09 24 */ lwz r0, 0x924(r26) +/* 801DFD60 001DCCC0 28 00 00 00 */ cmplwi r0, 0 +/* 801DFD64 001DCCC4 40 82 00 30 */ bne lbl_801DFD94 +/* 801DFD68 001DCCC8 88 1A 09 20 */ lbz r0, 0x920(r26) +/* 801DFD6C 001DCCCC 28 00 00 00 */ cmplwi r0, 0 +/* 801DFD70 001DCCD0 41 82 00 24 */ beq lbl_801DFD94 +/* 801DFD74 001DCCD4 80 7A 09 1C */ lwz r3, 0x91c(r26) +/* 801DFD78 001DCCD8 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801DFD7C 001DCCDC 28 00 00 00 */ cmplwi r0, 0 +/* 801DFD80 001DCCE0 41 82 00 14 */ beq lbl_801DFD94 +/* 801DFD84 001DCCE4 38 7A 09 1C */ addi r3, r26, 0x91c +/* 801DFD88 001DCCE8 48 16 10 85 */ bl GetObj__6CTokenFv +/* 801DFD8C 001DCCEC 80 03 00 04 */ lwz r0, 4(r3) +/* 801DFD90 001DCCF0 90 1A 09 24 */ stw r0, 0x924(r26) +lbl_801DFD94: +/* 801DFD94 001DCCF4 88 1A 07 C8 */ lbz r0, 0x7c8(r26) +/* 801DFD98 001DCCF8 28 00 00 00 */ cmplwi r0, 0 +/* 801DFD9C 001DCCFC 41 82 01 40 */ beq lbl_801DFEDC +/* 801DFDA0 001DCD00 81 3B 08 4C */ lwz r9, 0x84c(r27) +/* 801DFDA4 001DCD04 C0 3A 07 D0 */ lfs f1, 0x7d0(r26) +/* 801DFDA8 001DCD08 C0 49 00 50 */ lfs f2, 0x50(r9) +/* 801DFDAC 001DCD0C C0 69 00 60 */ lfs f3, 0x60(r9) +/* 801DFDB0 001DCD10 C0 1A 07 D4 */ lfs f0, 0x7d4(r26) +/* 801DFDB4 001DCD14 EC C2 08 28 */ fsubs f6, f2, f1 +/* 801DFDB8 001DCD18 C0 49 00 40 */ lfs f2, 0x40(r9) +/* 801DFDBC 001DCD1C C0 3A 07 CC */ lfs f1, 0x7cc(r26) +/* 801DFDC0 001DCD20 EC A3 00 28 */ fsubs f5, f3, f0 +/* 801DFDC4 001DCD24 EC 06 01 B2 */ fmuls f0, f6, f6 +/* 801DFDC8 001DCD28 C0 82 AD 00 */ lfs f4, lbl_805ACA20@sda21(r2) +/* 801DFDCC 001DCD2C EC 62 08 28 */ fsubs f3, f2, f1 +/* 801DFDD0 001DCD30 D0 C1 00 98 */ stfs f6, 0x98(r1) +/* 801DFDD4 001DCD34 EC 45 01 72 */ fmuls f2, f5, f5 +/* 801DFDD8 001DCD38 D0 A1 00 9C */ stfs f5, 0x9c(r1) +/* 801DFDDC 001DCD3C EC 23 00 F2 */ fmuls f1, f3, f3 +/* 801DFDE0 001DCD40 D0 61 00 94 */ stfs f3, 0x94(r1) +/* 801DFDE4 001DCD44 80 7A 00 64 */ lwz r3, 0x64(r26) +/* 801DFDE8 001DCD48 EC 01 00 2A */ fadds f0, f1, f0 +/* 801DFDEC 001DCD4C C0 63 00 00 */ lfs f3, 0(r3) +/* 801DFDF0 001DCD50 EC 22 00 2A */ fadds f1, f2, f0 +/* 801DFDF4 001DCD54 EC 44 00 F2 */ fmuls f2, f4, f3 +/* 801DFDF8 001DCD58 EC 02 00 B2 */ fmuls f0, f2, f2 +/* 801DFDFC 001DCD5C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801DFE00 001DCD60 40 80 00 DC */ bge lbl_801DFEDC +/* 801DFE04 001DCD64 88 C1 00 3C */ lbz r6, 0x3c(r1) +/* 801DFE08 001DCD68 38 80 00 00 */ li r4, 0 +/* 801DFE0C 001DCD6C 50 86 3E 30 */ rlwimi r6, r4, 7, 0x18, 0x18 +/* 801DFE10 001DCD70 C0 02 AC DC */ lfs f0, lbl_805AC9FC@sda21(r2) +/* 801DFE14 001DCD74 54 C5 06 3E */ clrlwi r5, r6, 0x18 +/* 801DFE18 001DCD78 88 01 00 B8 */ lbz r0, 0xb8(r1) +/* 801DFE1C 001DCD7C 39 00 00 09 */ li r8, 9 +/* 801DFE20 001DCD80 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801DFE24 001DCD84 50 85 36 72 */ rlwimi r5, r4, 6, 0x19, 0x19 +/* 801DFE28 001DCD88 91 01 00 A0 */ stw r8, 0xa0(r1) +/* 801DFE2C 001DCD8C 54 A7 06 3E */ clrlwi r7, r5, 0x18 +/* 801DFE30 001DCD90 38 61 00 88 */ addi r3, r1, 0x88 +/* 801DFE34 001DCD94 50 87 2E B4 */ rlwimi r7, r4, 5, 0x1a, 0x1a +/* 801DFE38 001DCD98 98 C1 00 3C */ stb r6, 0x3c(r1) +/* 801DFE3C 001DCD9C 38 81 00 94 */ addi r4, r1, 0x94 +/* 801DFE40 001DCDA0 D0 01 00 A8 */ stfs f0, 0xa8(r1) +/* 801DFE44 001DCDA4 98 A1 00 3C */ stb r5, 0x3c(r1) +/* 801DFE48 001DCDA8 98 E1 00 A4 */ stb r7, 0xa4(r1) +/* 801DFE4C 001DCDAC D0 01 00 AC */ stfs f0, 0xac(r1) +/* 801DFE50 001DCDB0 D0 41 00 B0 */ stfs f2, 0xb0(r1) +/* 801DFE54 001DCDB4 D0 81 00 B4 */ stfs f4, 0xb4(r1) +/* 801DFE58 001DCDB8 98 01 00 B8 */ stb r0, 0xb8(r1) +/* 801DFE5C 001DCDBC A0 DA 00 08 */ lhz r6, 8(r26) +/* 801DFE60 001DCDC0 91 01 00 38 */ stw r8, 0x38(r1) +/* 801DFE64 001DCDC4 B0 C1 00 1C */ sth r6, 0x1c(r1) +/* 801DFE68 001DCDC8 A0 A9 00 08 */ lhz r5, 8(r9) +/* 801DFE6C 001DCDCC 98 E1 00 3C */ stb r7, 0x3c(r1) +/* 801DFE70 001DCDD0 B0 A1 00 24 */ sth r5, 0x24(r1) +/* 801DFE74 001DCDD4 A0 1A 00 08 */ lhz r0, 8(r26) +/* 801DFE78 001DCDD8 B0 C1 00 18 */ sth r6, 0x18(r1) +/* 801DFE7C 001DCDDC B0 A1 00 20 */ sth r5, 0x20(r1) +/* 801DFE80 001DCDE0 B0 01 00 28 */ sth r0, 0x28(r1) +/* 801DFE84 001DCDE4 B0 01 00 2C */ sth r0, 0x2c(r1) +/* 801DFE88 001DCDE8 48 13 49 C9 */ bl AsNormalized__9CVector3fCFv +/* 801DFE8C 001DCDEC 3C 80 80 5A */ lis r4, lbl_8059FD18@ha +/* 801DFE90 001DCDF0 7F 63 DB 78 */ mr r3, r27 +/* 801DFE94 001DCDF4 39 04 FD 18 */ addi r8, r4, lbl_8059FD18@l +/* 801DFE98 001DCDF8 38 A1 00 24 */ addi r5, r1, 0x24 +/* 801DFE9C 001DCDFC 38 81 00 2C */ addi r4, r1, 0x2c +/* 801DFEA0 001DCE00 38 C1 00 1C */ addi r6, r1, 0x1c +/* 801DFEA4 001DCE04 38 E1 00 A0 */ addi r7, r1, 0xa0 +/* 801DFEA8 001DCE08 39 21 00 88 */ addi r9, r1, 0x88 +/* 801DFEAC 001DCE0C 4B E6 A1 F5 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +/* 801DFEB0 001DCE10 38 00 00 01 */ li r0, 1 +/* 801DFEB4 001DCE14 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801DFEB8 001DCE18 98 1A 06 88 */ stb r0, 0x688(r26) +/* 801DFEBC 001DCE1C 38 00 00 00 */ li r0, 0 +/* 801DFEC0 001DCE20 98 1A 07 C8 */ stb r0, 0x7c8(r26) +/* 801DFEC4 001DCE24 C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) +/* 801DFEC8 001DCE28 D0 1A 07 CC */ stfs f0, 0x7cc(r26) +/* 801DFECC 001DCE2C C0 03 00 04 */ lfs f0, 4(r3) +/* 801DFED0 001DCE30 D0 1A 07 D0 */ stfs f0, 0x7d0(r26) +/* 801DFED4 001DCE34 C0 03 00 08 */ lfs f0, 8(r3) +/* 801DFED8 001DCE38 D0 1A 07 D4 */ stfs f0, 0x7d4(r26) +lbl_801DFEDC: +/* 801DFEDC 001DCE3C FC 20 F8 90 */ fmr f1, f31 +/* 801DFEE0 001DCE40 7F 43 D3 78 */ mr r3, r26 +/* 801DFEE4 001DCE44 7F 64 DB 78 */ mr r4, r27 +/* 801DFEE8 001DCE48 4B FF C0 4D */ bl sub_801dbf34 +/* 801DFEEC 001DCE4C 83 FA 06 14 */ lwz r31, 0x614(r26) +/* 801DFEF0 001DCE50 7F 43 D3 78 */ mr r3, r26 +/* 801DFEF4 001DCE54 4B FF C3 D5 */ bl sub_801dc2c8 +/* 801DFEF8 001DCE58 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801DFEFC 001DCE5C 41 82 00 24 */ beq lbl_801DFF20 +/* 801DFF00 001DCE60 C0 02 AC D8 */ lfs f0, lbl_805AC9F8@sda21(r2) +/* 801DFF04 001DCE64 7F 43 D3 78 */ mr r3, r26 +/* 801DFF08 001DCE68 7F 65 DB 78 */ mr r5, r27 +/* 801DFF0C 001DCE6C 38 80 00 11 */ li r4, 0x11 +/* 801DFF10 001DCE70 D0 1A 06 90 */ stfs f0, 0x690(r26) +/* 801DFF14 001DCE74 38 C0 FF FF */ li r6, -1 +/* 801DFF18 001DCE78 4B E7 11 A9 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 801DFF1C 001DCE7C 48 00 00 2C */ b lbl_801DFF48 +lbl_801DFF20: +/* 801DFF20 001DCE80 80 7A 06 14 */ lwz r3, 0x614(r26) +/* 801DFF24 001DCE84 80 9A 06 48 */ lwz r4, 0x648(r26) +/* 801DFF28 001DCE88 38 03 FF FE */ addi r0, r3, -2 +/* 801DFF2C 001DCE8C 7C 04 00 40 */ cmplw r4, r0 +/* 801DFF30 001DCE90 41 80 00 10 */ blt lbl_801DFF40 +/* 801DFF34 001DCE94 C0 02 AC D8 */ lfs f0, lbl_805AC9F8@sda21(r2) +/* 801DFF38 001DCE98 D0 1A 06 90 */ stfs f0, 0x690(r26) +/* 801DFF3C 001DCE9C 48 00 00 0C */ b lbl_801DFF48 +lbl_801DFF40: +/* 801DFF40 001DCEA0 C0 02 AC D8 */ lfs f0, lbl_805AC9F8@sda21(r2) +/* 801DFF44 001DCEA4 D0 1A 06 90 */ stfs f0, 0x690(r26) +lbl_801DFF48: +/* 801DFF48 001DCEA8 88 1A 09 3C */ lbz r0, 0x93c(r26) +/* 801DFF4C 001DCEAC 28 00 00 00 */ cmplwi r0, 0 +/* 801DFF50 001DCEB0 40 82 00 28 */ bne lbl_801DFF78 +/* 801DFF54 001DCEB4 C0 3A 06 90 */ lfs f1, 0x690(r26) +/* 801DFF58 001DCEB8 38 60 00 00 */ li r3, 0 +/* 801DFF5C 001DCEBC C0 02 AC DC */ lfs f0, lbl_805AC9FC@sda21(r2) +/* 801DFF60 001DCEC0 D0 3A 03 B4 */ stfs f1, 0x3b4(r26) +/* 801DFF64 001DCEC4 88 1A 04 02 */ lbz r0, 0x402(r26) +/* 801DFF68 001DCEC8 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801DFF6C 001DCECC 98 1A 04 02 */ stb r0, 0x402(r26) +/* 801DFF70 001DCED0 D0 1A 05 04 */ stfs f0, 0x504(r26) +/* 801DFF74 001DCED4 48 00 00 2C */ b lbl_801DFFA0 +lbl_801DFF78: +/* 801DFF78 001DCED8 C0 5A 06 90 */ lfs f2, 0x690(r26) +/* 801DFF7C 001DCEDC 38 60 00 01 */ li r3, 1 +/* 801DFF80 001DCEE0 C0 3A 06 94 */ lfs f1, 0x694(r26) +/* 801DFF84 001DCEE4 C0 02 AC D8 */ lfs f0, lbl_805AC9F8@sda21(r2) +/* 801DFF88 001DCEE8 EC 22 00 72 */ fmuls f1, f2, f1 +/* 801DFF8C 001DCEEC D0 3A 03 B4 */ stfs f1, 0x3b4(r26) +/* 801DFF90 001DCEF0 88 1A 04 02 */ lbz r0, 0x402(r26) +/* 801DFF94 001DCEF4 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801DFF98 001DCEF8 98 1A 04 02 */ stb r0, 0x402(r26) +/* 801DFF9C 001DCEFC D0 1A 05 04 */ stfs f0, 0x504(r26) +lbl_801DFFA0: +/* 801DFFA0 001DCF00 FC 20 F8 90 */ fmr f1, f31 +/* 801DFFA4 001DCF04 7F 43 D3 78 */ mr r3, r26 +/* 801DFFA8 001DCF08 7F 64 DB 78 */ mr r4, r27 +/* 801DFFAC 001DCF0C 4B E9 9B 6D */ bl Think__10CPatternedFfR13CStateManager +/* 801DFFB0 001DCF10 80 1A 06 48 */ lwz r0, 0x648(r26) +/* 801DFFB4 001DCF14 28 00 00 03 */ cmplwi r0, 3 +/* 801DFFB8 001DCF18 41 80 00 1C */ blt lbl_801DFFD4 +/* 801DFFBC 001DCF1C 88 1A 06 89 */ lbz r0, 0x689(r26) +/* 801DFFC0 001DCF20 28 00 00 00 */ cmplwi r0, 0 +/* 801DFFC4 001DCF24 40 82 00 10 */ bne lbl_801DFFD4 +/* 801DFFC8 001DCF28 7F 43 D3 78 */ mr r3, r26 +/* 801DFFCC 001DCF2C 7F 64 DB 78 */ mr r4, r27 +/* 801DFFD0 001DCF30 4B FF C8 A9 */ bl sub_801dc878 +lbl_801DFFD4: +/* 801DFFD4 001DCF34 FC 20 F8 90 */ fmr f1, f31 +/* 801DFFD8 001DCF38 80 7A 05 F0 */ lwz r3, 0x5f0(r26) +/* 801DFFDC 001DCF3C 7F 64 DB 78 */ mr r4, r27 +/* 801DFFE0 001DCF40 38 A0 00 00 */ li r5, 0 +/* 801DFFE4 001DCF44 4B FC 74 6D */ bl Update__22CCollisionActorManagerCFfR13CStateManagerQ222CCollisionActorManager14EUpdateOptions +/* 801DFFE8 001DCF48 FC 20 F8 90 */ fmr f1, f31 +/* 801DFFEC 001DCF4C 80 7A 05 F4 */ lwz r3, 0x5f4(r26) +/* 801DFFF0 001DCF50 7F 64 DB 78 */ mr r4, r27 +/* 801DFFF4 001DCF54 38 A0 00 00 */ li r5, 0 +/* 801DFFF8 001DCF58 4B FC 74 59 */ bl Update__22CCollisionActorManagerCFfR13CStateManagerQ222CCollisionActorManager14EUpdateOptions +/* 801DFFFC 001DCF5C FC 20 F8 90 */ fmr f1, f31 +/* 801E0000 001DCF60 80 7A 05 F8 */ lwz r3, 0x5f8(r26) +/* 801E0004 001DCF64 7F 64 DB 78 */ mr r4, r27 +/* 801E0008 001DCF68 38 A0 00 00 */ li r5, 0 +/* 801E000C 001DCF6C 4B FC 74 45 */ bl Update__22CCollisionActorManagerCFfR13CStateManagerQ222CCollisionActorManager14EUpdateOptions +/* 801E0010 001DCF70 7F 43 D3 78 */ mr r3, r26 +/* 801E0014 001DCF74 7F 64 DB 78 */ mr r4, r27 +/* 801E0018 001DCF78 4B FF D5 F1 */ bl sub_801dd608 +/* 801E001C 001DCF7C 7F 43 D3 78 */ mr r3, r26 +/* 801E0020 001DCF80 7F 64 DB 78 */ mr r4, r27 +/* 801E0024 001DCF84 4B FF CF 81 */ bl sub_801dcfa4 +/* 801E0028 001DCF88 80 7A 06 48 */ lwz r3, 0x648(r26) +/* 801E002C 001DCF8C 80 1A 06 14 */ lwz r0, 0x614(r26) +/* 801E0030 001DCF90 7C 03 00 40 */ cmplw r3, r0 +/* 801E0034 001DCF94 41 80 00 28 */ blt lbl_801E005C +/* 801E0038 001DCF98 81 9A 00 00 */ lwz r12, 0(r26) +/* 801E003C 001DCF9C 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801E0040 001DCFA0 38 A4 66 A0 */ addi r5, r4, skZero3f@l +/* 801E0044 001DCFA4 7F 43 D3 78 */ mr r3, r26 +/* 801E0048 001DCFA8 81 8C 00 84 */ lwz r12, 0x84(r12) +/* 801E004C 001DCFAC 7F 64 DB 78 */ mr r4, r27 +/* 801E0050 001DCFB0 38 C0 00 14 */ li r6, 0x14 +/* 801E0054 001DCFB4 7D 89 03 A6 */ mtctr r12 +/* 801E0058 001DCFB8 4E 80 04 21 */ bctrl +lbl_801E005C: +/* 801E005C 001DCFBC 80 7B 08 B8 */ lwz r3, 0x8b8(r27) +/* 801E0060 001DCFC0 80 63 00 00 */ lwz r3, 0(r3) +/* 801E0064 001DCFC4 80 03 00 14 */ lwz r0, 0x14(r3) +/* 801E0068 001DCFC8 2C 00 00 03 */ cmpwi r0, 3 +/* 801E006C 001DCFCC 40 82 00 F8 */ bne lbl_801E0164 +/* 801E0070 001DCFD0 88 1A 04 02 */ lbz r0, 0x402(r26) +/* 801E0074 001DCFD4 38 60 00 00 */ li r3, 0 +/* 801E0078 001DCFD8 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801E007C 001DCFDC 7F 43 D3 78 */ mr r3, r26 +/* 801E0080 001DCFE0 98 1A 04 02 */ stb r0, 0x402(r26) +/* 801E0084 001DCFE4 7F 66 DB 78 */ mr r6, r27 +/* 801E0088 001DCFE8 38 80 00 00 */ li r4, 0 +/* 801E008C 001DCFEC 38 A0 00 12 */ li r5, 0x12 +/* 801E0090 001DCFF0 4B FF D2 5D */ bl sub_801dd2ec +/* 801E0094 001DCFF4 3B 00 00 00 */ li r24, 0 +/* 801E0098 001DCFF8 3B 20 00 00 */ li r25, 0 +/* 801E009C 001DCFFC 48 00 00 A8 */ b lbl_801E0144 +lbl_801E00A0: +/* 801E00A0 001DD000 80 BA 06 1C */ lwz r5, 0x61c(r26) +/* 801E00A4 001DD004 7F 63 DB 78 */ mr r3, r27 +/* 801E00A8 001DD008 38 81 00 14 */ addi r4, r1, 0x14 +/* 801E00AC 001DD00C 7C 05 CA 2E */ lhzx r0, r5, r25 +/* 801E00B0 001DD010 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801E00B4 001DD014 4B E6 C4 C1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801E00B8 001DD018 7C 7C 1B 79 */ or. r28, r3, r3 +/* 801E00BC 001DD01C 41 82 00 80 */ beq lbl_801E013C +/* 801E00C0 001DD020 80 1A 06 48 */ lwz r0, 0x648(r26) +/* 801E00C4 001DD024 7C 18 00 40 */ cmplw r24, r0 +/* 801E00C8 001DD028 40 82 00 54 */ bne lbl_801E011C +/* 801E00CC 001DD02C 88 1A 06 88 */ lbz r0, 0x688(r26) +/* 801E00D0 001DD030 28 00 00 00 */ cmplwi r0, 0 +/* 801E00D4 001DD034 40 82 00 48 */ bne lbl_801E011C +/* 801E00D8 001DD038 88 1A 09 3C */ lbz r0, 0x93c(r26) +/* 801E00DC 001DD03C 28 00 00 00 */ cmplwi r0, 0 +/* 801E00E0 001DD040 40 82 00 3C */ bne lbl_801E011C +/* 801E00E4 001DD044 88 1A 09 09 */ lbz r0, 0x909(r26) +/* 801E00E8 001DD048 28 00 00 00 */ cmplwi r0, 0 +/* 801E00EC 001DD04C 40 82 00 30 */ bne lbl_801E011C +/* 801E00F0 001DD050 88 1A 09 3D */ lbz r0, 0x93d(r26) +/* 801E00F4 001DD054 28 00 00 00 */ cmplwi r0, 0 +/* 801E00F8 001DD058 40 82 00 24 */ bne lbl_801E011C +/* 801E00FC 001DD05C 7F 65 DB 78 */ mr r5, r27 +/* 801E0100 001DD060 38 80 00 29 */ li r4, 0x29 +/* 801E0104 001DD064 4B E7 42 4D */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801E0108 001DD068 7F 83 E3 78 */ mr r3, r28 +/* 801E010C 001DD06C 7F 65 DB 78 */ mr r5, r27 +/* 801E0110 001DD070 38 80 00 28 */ li r4, 0x28 +/* 801E0114 001DD074 4B E7 42 3D */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801E0118 001DD078 48 00 00 24 */ b lbl_801E013C +lbl_801E011C: +/* 801E011C 001DD07C 7F 83 E3 78 */ mr r3, r28 +/* 801E0120 001DD080 7F 65 DB 78 */ mr r5, r27 +/* 801E0124 001DD084 38 80 00 29 */ li r4, 0x29 +/* 801E0128 001DD088 4B E7 3E 59 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801E012C 001DD08C 7F 83 E3 78 */ mr r3, r28 +/* 801E0130 001DD090 7F 65 DB 78 */ mr r5, r27 +/* 801E0134 001DD094 38 80 00 28 */ li r4, 0x28 +/* 801E0138 001DD098 4B E7 3E 49 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +lbl_801E013C: +/* 801E013C 001DD09C 3B 18 00 01 */ addi r24, r24, 1 +/* 801E0140 001DD0A0 3B 39 00 02 */ addi r25, r25, 2 +lbl_801E0144: +/* 801E0144 001DD0A4 7C 18 F8 40 */ cmplw r24, r31 +/* 801E0148 001DD0A8 41 80 FF 58 */ blt lbl_801E00A0 +/* 801E014C 001DD0AC 88 1A 06 88 */ lbz r0, 0x688(r26) +/* 801E0150 001DD0B0 28 00 00 00 */ cmplwi r0, 0 +/* 801E0154 001DD0B4 41 82 01 D8 */ beq lbl_801E032C +/* 801E0158 001DD0B8 38 00 00 00 */ li r0, 0 +/* 801E015C 001DD0BC 98 1A 06 88 */ stb r0, 0x688(r26) +/* 801E0160 001DD0C0 48 00 01 CC */ b lbl_801E032C +lbl_801E0164: +/* 801E0164 001DD0C4 88 1A 04 02 */ lbz r0, 0x402(r26) +/* 801E0168 001DD0C8 38 60 00 01 */ li r3, 1 +/* 801E016C 001DD0CC 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801E0170 001DD0D0 7F 43 D3 78 */ mr r3, r26 +/* 801E0174 001DD0D4 98 1A 04 02 */ stb r0, 0x402(r26) +/* 801E0178 001DD0D8 7F 66 DB 78 */ mr r6, r27 +/* 801E017C 001DD0DC 38 80 00 01 */ li r4, 1 +/* 801E0180 001DD0E0 38 A0 00 12 */ li r5, 0x12 +/* 801E0184 001DD0E4 4B FF D1 69 */ bl sub_801dd2ec +/* 801E0188 001DD0E8 83 DA 06 14 */ lwz r30, 0x614(r26) +/* 801E018C 001DD0EC 3B A0 00 00 */ li r29, 0 +/* 801E0190 001DD0F0 3B 20 00 00 */ li r25, 0 +/* 801E0194 001DD0F4 48 00 01 90 */ b lbl_801E0324 +lbl_801E0198: +/* 801E0198 001DD0F8 80 BA 06 1C */ lwz r5, 0x61c(r26) +/* 801E019C 001DD0FC 7F 63 DB 78 */ mr r3, r27 +/* 801E01A0 001DD100 38 81 00 10 */ addi r4, r1, 0x10 +/* 801E01A4 001DD104 7C 05 CA 2E */ lhzx r0, r5, r25 +/* 801E01A8 001DD108 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801E01AC 001DD10C 4B E6 C3 C9 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801E01B0 001DD110 7C 7C 1B 79 */ or. r28, r3, r3 +/* 801E01B4 001DD114 41 82 01 68 */ beq lbl_801E031C +/* 801E01B8 001DD118 88 1A 06 88 */ lbz r0, 0x688(r26) +/* 801E01BC 001DD11C 3B FC 00 10 */ addi r31, r28, 0x10 +/* 801E01C0 001DD120 28 00 00 00 */ cmplwi r0, 0 +/* 801E01C4 001DD124 40 82 00 28 */ bne lbl_801E01EC +/* 801E01C8 001DD128 88 1A 09 3C */ lbz r0, 0x93c(r26) +/* 801E01CC 001DD12C 28 00 00 00 */ cmplwi r0, 0 +/* 801E01D0 001DD130 40 82 00 1C */ bne lbl_801E01EC +/* 801E01D4 001DD134 88 1A 09 09 */ lbz r0, 0x909(r26) +/* 801E01D8 001DD138 28 00 00 00 */ cmplwi r0, 0 +/* 801E01DC 001DD13C 40 82 00 10 */ bne lbl_801E01EC +/* 801E01E0 001DD140 88 1A 09 3D */ lbz r0, 0x93d(r26) +/* 801E01E4 001DD144 28 00 00 00 */ cmplwi r0, 0 +/* 801E01E8 001DD148 41 82 00 30 */ beq lbl_801E0218 +lbl_801E01EC: +/* 801E01EC 001DD14C 38 00 00 00 */ li r0, 0 +/* 801E01F0 001DD150 7F 83 E3 78 */ mr r3, r28 +/* 801E01F4 001DD154 98 1A 06 88 */ stb r0, 0x688(r26) +/* 801E01F8 001DD158 7F 65 DB 78 */ mr r5, r27 +/* 801E01FC 001DD15C 38 80 00 29 */ li r4, 0x29 +/* 801E0200 001DD160 4B E7 3D 81 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801E0204 001DD164 7F 83 E3 78 */ mr r3, r28 +/* 801E0208 001DD168 7F 65 DB 78 */ mr r5, r27 +/* 801E020C 001DD16C 38 80 00 28 */ li r4, 0x28 +/* 801E0210 001DD170 4B E7 3D 71 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801E0214 001DD174 48 00 01 08 */ b lbl_801E031C +lbl_801E0218: +/* 801E0218 001DD178 80 82 AC C8 */ lwz r4, lbl_805AC9E8@sda21(r2) +/* 801E021C 001DD17C 38 61 00 78 */ addi r3, r1, 0x78 +/* 801E0220 001DD180 4B E2 4A 99 */ bl string_l__4rstlFPCc +/* 801E0224 001DD184 7F E3 FB 78 */ mr r3, r31 +/* 801E0228 001DD188 38 81 00 78 */ addi r4, r1, 0x78 +/* 801E022C 001DD18C 4B E7 23 B5 */ 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" +/* 801E0230 001DD190 7C 78 1B 78 */ mr r24, r3 +/* 801E0234 001DD194 38 61 00 78 */ addi r3, r1, 0x78 +/* 801E0238 001DD198 48 15 D8 A9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801E023C 001DD19C 57 00 06 3F */ clrlwi. r0, r24, 0x18 +/* 801E0240 001DD1A0 41 82 00 48 */ beq lbl_801E0288 +/* 801E0244 001DD1A4 80 7A 06 BC */ lwz r3, 0x6bc(r26) +/* 801E0248 001DD1A8 80 9A 06 48 */ lwz r4, 0x648(r26) +/* 801E024C 001DD1AC 7C 03 20 AE */ lbzx r0, r3, r4 +/* 801E0250 001DD1B0 28 00 00 00 */ cmplwi r0, 0 +/* 801E0254 001DD1B4 41 82 00 34 */ beq lbl_801E0288 +/* 801E0258 001DD1B8 38 1E FF FF */ addi r0, r30, -1 +/* 801E025C 001DD1BC 7C 04 00 40 */ cmplw r4, r0 +/* 801E0260 001DD1C0 41 82 00 28 */ beq lbl_801E0288 +/* 801E0264 001DD1C4 7F 83 E3 78 */ mr r3, r28 +/* 801E0268 001DD1C8 7F 65 DB 78 */ mr r5, r27 +/* 801E026C 001DD1CC 38 80 00 29 */ li r4, 0x29 +/* 801E0270 001DD1D0 4B E7 3D 11 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801E0274 001DD1D4 7F 83 E3 78 */ mr r3, r28 +/* 801E0278 001DD1D8 7F 65 DB 78 */ mr r5, r27 +/* 801E027C 001DD1DC 38 80 00 28 */ li r4, 0x28 +/* 801E0280 001DD1E0 4B E7 3D 01 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801E0284 001DD1E4 48 00 00 98 */ b lbl_801E031C +lbl_801E0288: +/* 801E0288 001DD1E8 80 7A 06 BC */ lwz r3, 0x6bc(r26) +/* 801E028C 001DD1EC 7C 03 E8 AE */ lbzx r0, r3, r29 +/* 801E0290 001DD1F0 28 00 00 00 */ cmplwi r0, 0 +/* 801E0294 001DD1F4 40 82 00 44 */ bne lbl_801E02D8 +/* 801E0298 001DD1F8 80 82 AC C8 */ lwz r4, lbl_805AC9E8@sda21(r2) +/* 801E029C 001DD1FC 38 61 00 68 */ addi r3, r1, 0x68 +/* 801E02A0 001DD200 4B E2 4A 19 */ bl string_l__4rstlFPCc +/* 801E02A4 001DD204 7F E3 FB 78 */ mr r3, r31 +/* 801E02A8 001DD208 38 81 00 68 */ addi r4, r1, 0x68 +/* 801E02AC 001DD20C 4B E7 23 35 */ 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" +/* 801E02B0 001DD210 7C 7F 1B 78 */ mr r31, r3 +/* 801E02B4 001DD214 38 61 00 68 */ addi r3, r1, 0x68 +/* 801E02B8 001DD218 48 15 D8 29 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801E02BC 001DD21C 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 801E02C0 001DD220 41 82 00 3C */ beq lbl_801E02FC +/* 801E02C4 001DD224 80 7A 06 BC */ lwz r3, 0x6bc(r26) +/* 801E02C8 001DD228 80 1A 06 48 */ lwz r0, 0x648(r26) +/* 801E02CC 001DD22C 7C 03 00 AE */ lbzx r0, r3, r0 +/* 801E02D0 001DD230 28 00 00 00 */ cmplwi r0, 0 +/* 801E02D4 001DD234 40 82 00 28 */ bne lbl_801E02FC +lbl_801E02D8: +/* 801E02D8 001DD238 7F 83 E3 78 */ mr r3, r28 +/* 801E02DC 001DD23C 7F 65 DB 78 */ mr r5, r27 +/* 801E02E0 001DD240 38 80 00 29 */ li r4, 0x29 +/* 801E02E4 001DD244 4B E7 40 6D */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801E02E8 001DD248 7F 83 E3 78 */ mr r3, r28 +/* 801E02EC 001DD24C 7F 65 DB 78 */ mr r5, r27 +/* 801E02F0 001DD250 38 80 00 28 */ li r4, 0x28 +/* 801E02F4 001DD254 4B E7 40 5D */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801E02F8 001DD258 48 00 00 24 */ b lbl_801E031C +lbl_801E02FC: +/* 801E02FC 001DD25C 7F 83 E3 78 */ mr r3, r28 +/* 801E0300 001DD260 7F 65 DB 78 */ mr r5, r27 +/* 801E0304 001DD264 38 80 00 29 */ li r4, 0x29 +/* 801E0308 001DD268 4B E7 3C 79 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801E030C 001DD26C 7F 83 E3 78 */ mr r3, r28 +/* 801E0310 001DD270 7F 65 DB 78 */ mr r5, r27 +/* 801E0314 001DD274 38 80 00 28 */ li r4, 0x28 +/* 801E0318 001DD278 4B E7 3C 69 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +lbl_801E031C: +/* 801E031C 001DD27C 3B BD 00 01 */ addi r29, r29, 1 +/* 801E0320 001DD280 3B 39 00 02 */ addi r25, r25, 2 +lbl_801E0324: +/* 801E0324 001DD284 7C 1D F0 40 */ cmplw r29, r30 +/* 801E0328 001DD288 41 80 FE 70 */ blt lbl_801E0198 +lbl_801E032C: +/* 801E032C 001DD28C 80 1A 06 44 */ lwz r0, 0x644(r26) +/* 801E0330 001DD290 2C 00 00 01 */ cmpwi r0, 1 +/* 801E0334 001DD294 40 82 01 BC */ bne lbl_801E04F0 +/* 801E0338 001DD298 80 9A 05 F0 */ lwz r4, 0x5f0(r26) +/* 801E033C 001DD29C 7F 43 D3 78 */ mr r3, r26 +/* 801E0340 001DD2A0 7F 67 DB 78 */ mr r7, r27 +/* 801E0344 001DD2A4 38 A0 00 00 */ li r5, 0 +/* 801E0348 001DD2A8 38 C0 00 20 */ li r6, 0x20 +/* 801E034C 001DD2AC 4B FF D0 91 */ bl sub_801dd3dc +/* 801E0350 001DD2B0 80 9A 05 F4 */ lwz r4, 0x5f4(r26) +/* 801E0354 001DD2B4 7F 43 D3 78 */ mr r3, r26 +/* 801E0358 001DD2B8 7F 67 DB 78 */ mr r7, r27 +/* 801E035C 001DD2BC 38 A0 00 00 */ li r5, 0 +/* 801E0360 001DD2C0 38 C0 00 20 */ li r6, 0x20 +/* 801E0364 001DD2C4 4B FF D0 79 */ bl sub_801dd3dc +/* 801E0368 001DD2C8 80 9A 05 F8 */ lwz r4, 0x5f8(r26) +/* 801E036C 001DD2CC 7F 43 D3 78 */ mr r3, r26 +/* 801E0370 001DD2D0 7F 67 DB 78 */ mr r7, r27 +/* 801E0374 001DD2D4 38 A0 00 00 */ li r5, 0 +/* 801E0378 001DD2D8 38 C0 00 20 */ li r6, 0x20 +/* 801E037C 001DD2DC 4B FF D0 61 */ bl sub_801dd3dc +/* 801E0380 001DD2E0 88 1A 09 3C */ lbz r0, 0x93c(r26) +/* 801E0384 001DD2E4 28 00 00 00 */ cmplwi r0, 0 +/* 801E0388 001DD2E8 41 82 01 B0 */ beq lbl_801E0538 +/* 801E038C 001DD2EC C0 3A 06 F8 */ lfs f1, 0x6f8(r26) +/* 801E0390 001DD2F0 C0 02 AD 34 */ lfs f0, lbl_805ACA54@sda21(r2) +/* 801E0394 001DD2F4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801E0398 001DD2F8 4C 41 13 82 */ cror 2, 1, 2 +/* 801E039C 001DD2FC 40 82 00 C4 */ bne lbl_801E0460 +/* 801E03A0 001DD300 80 9B 08 70 */ lwz r4, 0x870(r27) +/* 801E03A4 001DD304 38 61 00 0C */ addi r3, r1, 0xc +/* 801E03A8 001DD308 80 A4 00 7C */ lwz r5, 0x7c(r4) +/* 801E03AC 001DD30C A3 05 00 08 */ lhz r24, 8(r5) +/* 801E03B0 001DD310 4B E2 B8 29 */ bl GetCurrentCameraId__14CCameraManagerCFv +/* 801E03B4 001DD314 A0 01 00 0C */ lhz r0, 0xc(r1) +/* 801E03B8 001DD318 7C 00 C0 40 */ cmplw r0, r24 +/* 801E03BC 001DD31C 40 82 00 98 */ bne lbl_801E0454 +/* 801E03C0 001DD320 C0 3A 00 40 */ lfs f1, 0x40(r26) +/* 801E03C4 001DD324 38 61 00 BC */ addi r3, r1, 0xbc +/* 801E03C8 001DD328 C0 5A 00 50 */ lfs f2, 0x50(r26) +/* 801E03CC 001DD32C 38 81 00 5C */ addi r4, r1, 0x5c +/* 801E03D0 001DD330 C0 1A 00 60 */ lfs f0, 0x60(r26) +/* 801E03D4 001DD334 D0 21 00 50 */ stfs f1, 0x50(r1) +/* 801E03D8 001DD338 C0 22 AD 0C */ lfs f1, lbl_805ACA2C@sda21(r2) +/* 801E03DC 001DD33C D0 41 00 54 */ stfs f2, 0x54(r1) +/* 801E03E0 001DD340 80 C1 00 50 */ lwz r6, 0x50(r1) +/* 801E03E4 001DD344 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 801E03E8 001DD348 80 A1 00 54 */ lwz r5, 0x54(r1) +/* 801E03EC 001DD34C 80 01 00 58 */ lwz r0, 0x58(r1) +/* 801E03F0 001DD350 90 C1 00 5C */ stw r6, 0x5c(r1) +/* 801E03F4 001DD354 C0 42 AD 10 */ lfs f2, lbl_805ACA30@sda21(r2) +/* 801E03F8 001DD358 90 A1 00 60 */ stw r5, 0x60(r1) +/* 801E03FC 001DD35C C0 62 AD 50 */ lfs f3, lbl_805ACA70@sda21(r2) +/* 801E0400 001DD360 90 01 00 64 */ stw r0, 0x64(r1) +/* 801E0404 001DD364 4B F7 D0 C1 */ bl BuildMissileShakeData__16CCameraShakeDataFfffRC9CVector3f +/* 801E0408 001DD368 80 7B 08 70 */ lwz r3, 0x870(r27) +/* 801E040C 001DD36C 38 81 00 BC */ addi r4, r1, 0xbc +/* 801E0410 001DD370 38 A0 00 01 */ li r5, 1 +/* 801E0414 001DD374 4B E2 A6 0D */ bl AddCameraShaker__14CCameraManagerFRC16CCameraShakeDatab +/* 801E0418 001DD378 34 81 01 3C */ addic. r4, r1, 0x13c +/* 801E041C 001DD37C 41 82 00 10 */ beq lbl_801E042C +/* 801E0420 001DD380 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 801E0424 001DD384 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 801E0428 001DD388 90 04 00 00 */ stw r0, 0(r4) +lbl_801E042C: +/* 801E042C 001DD38C 34 81 01 00 */ addic. r4, r1, 0x100 +/* 801E0430 001DD390 41 82 00 10 */ beq lbl_801E0440 +/* 801E0434 001DD394 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 801E0438 001DD398 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 801E043C 001DD39C 90 04 00 00 */ stw r0, 0(r4) +lbl_801E0440: +/* 801E0440 001DD3A0 34 81 00 C4 */ addic. r4, r1, 0xc4 +/* 801E0444 001DD3A4 41 82 00 10 */ beq lbl_801E0454 +/* 801E0448 001DD3A8 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 801E044C 001DD3AC 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 801E0450 001DD3B0 90 04 00 00 */ stw r0, 0(r4) +lbl_801E0454: +/* 801E0454 001DD3B4 C0 02 AC DC */ lfs f0, lbl_805AC9FC@sda21(r2) +/* 801E0458 001DD3B8 D0 1A 06 F8 */ stfs f0, 0x6f8(r26) +/* 801E045C 001DD3BC 48 00 00 0C */ b lbl_801E0468 +lbl_801E0460: +/* 801E0460 001DD3C0 EC 01 F8 2A */ fadds f0, f1, f31 +/* 801E0464 001DD3C4 D0 1A 06 F8 */ stfs f0, 0x6f8(r26) +lbl_801E0468: +/* 801E0468 001DD3C8 80 9B 08 70 */ lwz r4, 0x870(r27) +/* 801E046C 001DD3CC 38 61 00 08 */ addi r3, r1, 8 +/* 801E0470 001DD3D0 80 A4 00 7C */ lwz r5, 0x7c(r4) +/* 801E0474 001DD3D4 A3 05 00 08 */ lhz r24, 8(r5) +/* 801E0478 001DD3D8 4B E2 B7 61 */ bl GetCurrentCameraId__14CCameraManagerCFv +/* 801E047C 001DD3DC A0 01 00 08 */ lhz r0, 8(r1) +/* 801E0480 001DD3E0 7C 00 C0 40 */ cmplw r0, r24 +/* 801E0484 001DD3E4 41 82 00 B4 */ beq lbl_801E0538 +/* 801E0488 001DD3E8 88 1A 09 5D */ lbz r0, 0x95d(r26) +/* 801E048C 001DD3EC 28 00 00 01 */ cmplwi r0, 1 +/* 801E0490 001DD3F0 40 80 00 A8 */ bge lbl_801E0538 +/* 801E0494 001DD3F4 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 801E0498 001DD3F8 38 80 00 68 */ li r4, 0x68 +/* 801E049C 001DD3FC 48 17 62 61 */ bl GetString__12CStringTableCFi +/* 801E04A0 001DD400 7C 60 1B 78 */ mr r0, r3 +/* 801E04A4 001DD404 38 61 00 40 */ addi r3, r1, 0x40 +/* 801E04A8 001DD408 7C 04 03 78 */ mr r4, r0 +/* 801E04AC 001DD40C 4B E3 55 45 */ bl wstring_l__4rstlFPCw +/* 801E04B0 001DD410 C0 02 AD 18 */ lfs f0, lbl_805ACA38@sda21(r2) +/* 801E04B4 001DD414 38 00 00 00 */ li r0, 0 +/* 801E04B8 001DD418 38 A0 00 01 */ li r5, 1 +/* 801E04BC 001DD41C 98 01 00 35 */ stb r0, 0x35(r1) +/* 801E04C0 001DD420 38 61 00 40 */ addi r3, r1, 0x40 +/* 801E04C4 001DD424 38 81 00 30 */ addi r4, r1, 0x30 +/* 801E04C8 001DD428 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801E04CC 001DD42C 98 A1 00 34 */ stb r5, 0x34(r1) +/* 801E04D0 001DD430 98 01 00 36 */ stb r0, 0x36(r1) +/* 801E04D4 001DD434 4B E8 B7 95 */ bl DisplayHudMemo__9CSamusHudFRC7wstringRC12SHudMemoInfo +/* 801E04D8 001DD438 38 61 00 40 */ addi r3, r1, 0x40 +/* 801E04DC 001DD43C 48 15 CC 59 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801E04E0 001DD440 88 7A 09 5D */ lbz r3, 0x95d(r26) +/* 801E04E4 001DD444 38 03 00 01 */ addi r0, r3, 1 +/* 801E04E8 001DD448 98 1A 09 5D */ stb r0, 0x95d(r26) +/* 801E04EC 001DD44C 48 00 00 4C */ b lbl_801E0538 +lbl_801E04F0: +/* 801E04F0 001DD450 80 9A 05 F0 */ lwz r4, 0x5f0(r26) +/* 801E04F4 001DD454 7F 43 D3 78 */ mr r3, r26 +/* 801E04F8 001DD458 7F 67 DB 78 */ mr r7, r27 +/* 801E04FC 001DD45C 38 A0 00 01 */ li r5, 1 +/* 801E0500 001DD460 38 C0 00 20 */ li r6, 0x20 +/* 801E0504 001DD464 4B FF CE D9 */ bl sub_801dd3dc +/* 801E0508 001DD468 80 9A 05 F4 */ lwz r4, 0x5f4(r26) +/* 801E050C 001DD46C 7F 43 D3 78 */ mr r3, r26 +/* 801E0510 001DD470 7F 67 DB 78 */ mr r7, r27 +/* 801E0514 001DD474 38 A0 00 01 */ li r5, 1 +/* 801E0518 001DD478 38 C0 00 20 */ li r6, 0x20 +/* 801E051C 001DD47C 4B FF CE C1 */ bl sub_801dd3dc +/* 801E0520 001DD480 80 9A 05 F8 */ lwz r4, 0x5f8(r26) +/* 801E0524 001DD484 7F 43 D3 78 */ mr r3, r26 +/* 801E0528 001DD488 7F 67 DB 78 */ mr r7, r27 +/* 801E052C 001DD48C 38 A0 00 01 */ li r5, 1 +/* 801E0530 001DD490 38 C0 00 20 */ li r6, 0x20 +/* 801E0534 001DD494 4B FF CE A9 */ bl sub_801dd3dc +lbl_801E0538: +/* 801E0538 001DD498 7F 43 D3 78 */ mr r3, r26 +/* 801E053C 001DD49C 7F 64 DB 78 */ mr r4, r27 +/* 801E0540 001DD4A0 4B FF AC 09 */ bl sub_801db148 +lbl_801E0544: +/* 801E0544 001DD4A4 E3 E1 01 B8 */ psq_l f31, 440(r1), 0, qr0 +/* 801E0548 001DD4A8 CB E1 01 B0 */ lfd f31, 0x1b0(r1) +/* 801E054C 001DD4AC BB 01 01 90 */ lmw r24, 0x190(r1) +/* 801E0550 001DD4B0 80 01 01 C4 */ lwz r0, 0x1c4(r1) +/* 801E0554 001DD4B4 7C 08 03 A6 */ mtlr r0 +/* 801E0558 001DD4B8 38 21 01 C0 */ addi r1, r1, 0x1c0 +/* 801E055C 001DD4BC 4E 80 00 20 */ blr + +.global DoUserAnimEvent__8CThardusFR13CStateManagerRC13CInt32POINode14EUserEventType +DoUserAnimEvent__8CThardusFR13CStateManagerRC13CInt32POINode14EUserEventType: +/* 801E0560 001DD4C0 94 21 FA 90 */ stwu r1, -0x570(r1) +/* 801E0564 001DD4C4 7C 08 02 A6 */ mflr r0 +/* 801E0568 001DD4C8 90 01 05 74 */ stw r0, 0x574(r1) +/* 801E056C 001DD4CC DB E1 05 60 */ stfd f31, 0x560(r1) +/* 801E0570 001DD4D0 F3 E1 05 68 */ psq_st f31, 1384(r1), 0, qr0 +/* 801E0574 001DD4D4 DB C1 05 50 */ stfd f30, 0x550(r1) +/* 801E0578 001DD4D8 F3 C1 05 58 */ psq_st f30, 1368(r1), 0, qr0 +/* 801E057C 001DD4DC DB A1 05 40 */ stfd f29, 0x540(r1) +/* 801E0580 001DD4E0 F3 A1 05 48 */ psq_st f29, 1352(r1), 0, qr0 +/* 801E0584 001DD4E4 DB 81 05 30 */ stfd f28, 0x530(r1) +/* 801E0588 001DD4E8 F3 81 05 38 */ psq_st f28, 1336(r1), 0, qr0 +/* 801E058C 001DD4EC DB 61 05 20 */ stfd f27, 0x520(r1) +/* 801E0590 001DD4F0 F3 61 05 28 */ psq_st f27, 1320(r1), 0, qr0 +/* 801E0594 001DD4F4 BE E1 04 FC */ stmw r23, 0x4fc(r1) +/* 801E0598 001DD4F8 28 06 00 11 */ cmplwi r6, 0x11 +/* 801E059C 001DD4FC 7C 7E 1B 78 */ mr r30, r3 +/* 801E05A0 001DD500 7C 9F 23 78 */ mr r31, r4 +/* 801E05A4 001DD504 41 81 0A D8 */ bgt lbl_801E107C +/* 801E05A8 001DD508 3C E0 80 3E */ lis r7, lbl_803E5FAC@ha +/* 801E05AC 001DD50C 54 C0 10 3A */ slwi r0, r6, 2 +/* 801E05B0 001DD510 38 E7 5F AC */ addi r7, r7, lbl_803E5FAC@l +/* 801E05B4 001DD514 7C 07 00 2E */ lwzx r0, r7, r0 +/* 801E05B8 001DD518 7C 09 03 A6 */ mtctr r0 +/* 801E05BC 001DD51C 4E 80 04 20 */ bctr +/* 801E05C0 001DD520 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 801E05C4 001DD524 48 13 1F 5D */ bl Next__9CRandom16Fv +/* 801E05C8 001DD528 54 64 0F FE */ srwi r4, r3, 0x1f +/* 801E05CC 001DD52C 54 60 07 FE */ clrlwi r0, r3, 0x1f +/* 801E05D0 001DD530 7C 00 22 78 */ xor r0, r0, r4 +/* 801E05D4 001DD534 7F C3 F3 78 */ mr r3, r30 +/* 801E05D8 001DD538 7E E4 00 50 */ subf r23, r4, r0 +/* 801E05DC 001DD53C 4B FF BC ED */ bl sub_801dc2c8 +/* 801E05E0 001DD540 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E05E4 001DD544 38 60 00 03 */ li r3, 3 +/* 801E05E8 001DD548 41 82 00 08 */ beq lbl_801E05F0 +/* 801E05EC 001DD54C 38 60 00 06 */ li r3, 6 +lbl_801E05F0: +/* 801E05F0 001DD550 7F 97 18 50 */ subf r28, r23, r3 +/* 801E05F4 001DD554 93 9E 09 40 */ stw r28, 0x940(r30) +/* 801E05F8 001DD558 80 1E 07 9C */ lwz r0, 0x79c(r30) +/* 801E05FC 001DD55C 80 7E 07 A4 */ lwz r3, 0x7a4(r30) +/* 801E0600 001DD560 54 00 08 3C */ slwi r0, r0, 1 +/* 801E0604 001DD564 7C 03 02 14 */ add r0, r3, r0 +/* 801E0608 001DD568 90 61 00 70 */ stw r3, 0x70(r1) +/* 801E060C 001DD56C 90 01 00 78 */ stw r0, 0x78(r1) +/* 801E0610 001DD570 90 01 00 74 */ stw r0, 0x74(r1) +/* 801E0614 001DD574 90 61 00 6C */ stw r3, 0x6c(r1) +/* 801E0618 001DD578 48 00 00 08 */ b lbl_801E0620 +lbl_801E061C: +/* 801E061C 001DD57C 38 63 00 02 */ addi r3, r3, 2 +lbl_801E0620: +/* 801E0620 001DD580 7C 03 00 40 */ cmplw r3, r0 +/* 801E0624 001DD584 40 82 FF F8 */ bne lbl_801E061C +/* 801E0628 001DD588 38 00 00 00 */ li r0, 0 +/* 801E062C 001DD58C 3C 60 80 3D */ lis r3, lbl_803D1BD8@ha +/* 801E0630 001DD590 90 1E 07 9C */ stw r0, 0x79c(r30) +/* 801E0634 001DD594 3B A3 1B D8 */ addi r29, r3, lbl_803D1BD8@l +/* 801E0638 001DD598 3B 60 00 00 */ li r27, 0 +/* 801E063C 001DD59C 48 00 02 F4 */ b lbl_801E0930 +lbl_801E0640: +/* 801E0640 001DD5A0 7F E4 FB 78 */ mr r4, r31 +/* 801E0644 001DD5A4 38 61 00 EC */ addi r3, r1, 0xec +/* 801E0648 001DD5A8 38 BE 06 0C */ addi r5, r30, 0x60c +/* 801E064C 001DD5AC 4B E6 7C 9D */ bl GenerateObject__13CStateManagerF9TEditorId +/* 801E0650 001DD5B0 A0 81 00 F0 */ lhz r4, 0xf0(r1) +/* 801E0654 001DD5B4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801E0658 001DD5B8 54 83 04 3E */ clrlwi r3, r4, 0x10 +/* 801E065C 001DD5BC B0 81 00 58 */ sth r4, 0x58(r1) +/* 801E0660 001DD5C0 7C 03 00 40 */ cmplw r3, r0 +/* 801E0664 001DD5C4 41 82 02 C4 */ beq lbl_801E0928 +/* 801E0668 001DD5C8 B0 81 00 50 */ sth r4, 0x50(r1) +/* 801E066C 001DD5CC 7F E3 FB 78 */ mr r3, r31 +/* 801E0670 001DD5D0 38 81 00 50 */ addi r4, r1, 0x50 +/* 801E0674 001DD5D4 4B E6 BF 01 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801E0678 001DD5D8 7C 64 1B 78 */ mr r4, r3 +/* 801E067C 001DD5DC 38 61 00 88 */ addi r3, r1, 0x88 +/* 801E0680 001DD5E0 4B EC 4D 1D */ bl sub_800a539c +/* 801E0684 001DD5E4 4B EC 4C ED */ bl "CastTo<22CThardusRockProjectile>__10CPatternedFP7CEntity" +/* 801E0688 001DD5E8 7C 7A 1B 79 */ or. r26, r3, r3 +/* 801E068C 001DD5EC 41 82 02 9C */ beq lbl_801E0928 +/* 801E0690 001DD5F0 81 83 00 00 */ lwz r12, 0(r3) +/* 801E0694 001DD5F4 38 80 00 01 */ li r4, 1 +/* 801E0698 001DD5F8 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801E069C 001DD5FC 7D 89 03 A6 */ mtctr r12 +/* 801E06A0 001DD600 4E 80 04 21 */ bctrl +/* 801E06A4 001DD604 7F 43 D3 78 */ mr r3, r26 +/* 801E06A8 001DD608 7F E4 FB 78 */ mr r4, r31 +/* 801E06AC 001DD60C 38 A0 00 01 */ li r5, 1 +/* 801E06B0 001DD610 48 02 38 65 */ bl SetChildrenActive__22CThardusRockProjectileFR13CStateManagerb +/* 801E06B4 001DD614 80 BE 00 64 */ lwz r5, 0x64(r30) +/* 801E06B8 001DD618 38 61 03 B0 */ addi r3, r1, 0x3b0 +/* 801E06BC 001DD61C 38 9E 00 34 */ addi r4, r30, 0x34 +/* 801E06C0 001DD620 C3 85 00 00 */ lfs f28, 0(r5) +/* 801E06C4 001DD624 C3 65 00 04 */ lfs f27, 4(r5) +/* 801E06C8 001DD628 C3 C5 00 08 */ lfs f30, 8(r5) +/* 801E06CC 001DD62C 48 13 2A 29 */ bl BuildMatrix3f__12CTransform4fCFv +/* 801E06D0 001DD630 38 61 04 C4 */ addi r3, r1, 0x4c4 +/* 801E06D4 001DD634 38 81 03 B0 */ addi r4, r1, 0x3b0 +/* 801E06D8 001DD638 48 12 F9 4D */ bl __ct__9CMatrix3fFRC9CMatrix3f +/* 801E06DC 001DD63C 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 801E06E0 001DD640 48 13 1E 41 */ bl Next__9CRandom16Fv +/* 801E06E4 001DD644 54 64 0F FE */ srwi r4, r3, 0x1f +/* 801E06E8 001DD648 54 60 07 FE */ clrlwi r0, r3, 0x1f +/* 801E06EC 001DD64C 7C 00 22 78 */ xor r0, r0, r4 +/* 801E06F0 001DD650 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 801E06F4 001DD654 7E E4 00 50 */ subf r23, r4, r0 +/* 801E06F8 001DD658 48 13 1D E5 */ bl Float__9CRandom16Fv +/* 801E06FC 001DD65C 2C 17 00 00 */ cmpwi r23, 0 +/* 801E0700 001DD660 40 81 00 0C */ ble lbl_801E070C +/* 801E0704 001DD664 FF A0 08 90 */ fmr f29, f1 +/* 801E0708 001DD668 48 00 00 08 */ b lbl_801E0710 +lbl_801E070C: +/* 801E070C 001DD66C FF A0 08 50 */ fneg f29, f1 +lbl_801E0710: +/* 801E0710 001DD670 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 801E0714 001DD674 48 13 1D C9 */ bl Float__9CRandom16Fv +/* 801E0718 001DD678 C0 42 AD 54 */ lfs f2, lbl_805ACA74@sda21(r2) +/* 801E071C 001DD67C FF E0 08 90 */ fmr f31, f1 +/* 801E0720 001DD680 C0 3D 00 04 */ lfs f1, 4(r29) +/* 801E0724 001DD684 38 61 01 80 */ addi r3, r1, 0x180 +/* 801E0728 001DD688 C0 1D 00 08 */ lfs f0, 8(r29) +/* 801E072C 001DD68C 38 81 04 C4 */ addi r4, r1, 0x4c4 +/* 801E0730 001DD690 EC 42 0F 7A */ fmadds f2, f2, f29, f1 +/* 801E0734 001DD694 EC 20 06 F2 */ fmuls f1, f0, f27 +/* 801E0738 001DD698 C0 02 AD 18 */ lfs f0, lbl_805ACA38@sda21(r2) +/* 801E073C 001DD69C 38 A1 01 74 */ addi r5, r1, 0x174 +/* 801E0740 001DD6A0 EC 42 07 32 */ fmuls f2, f2, f28 +/* 801E0744 001DD6A4 D0 01 01 7C */ stfs f0, 0x17c(r1) +/* 801E0748 001DD6A8 D0 21 01 78 */ stfs f1, 0x178(r1) +/* 801E074C 001DD6AC D0 41 01 74 */ stfs f2, 0x174(r1) +/* 801E0750 001DD6B0 48 12 FB 45 */ bl __ml__9CMatrix3fCFRC9CVector3f +/* 801E0754 001DD6B4 C0 7E 00 50 */ lfs f3, 0x50(r30) +/* 801E0758 001DD6B8 3C 60 80 5A */ lis r3, lbl_8059FD18@ha +/* 801E075C 001DD6BC C0 41 01 84 */ lfs f2, 0x184(r1) +/* 801E0760 001DD6C0 38 E3 FD 18 */ addi r7, r3, lbl_8059FD18@l +/* 801E0764 001DD6C4 C0 3E 00 60 */ lfs f1, 0x60(r30) +/* 801E0768 001DD6C8 7F E4 FB 78 */ mr r4, r31 +/* 801E076C 001DD6CC EC A3 10 2A */ fadds f5, f3, f2 +/* 801E0770 001DD6D0 C0 01 01 88 */ lfs f0, 0x188(r1) +/* 801E0774 001DD6D4 C0 7E 00 40 */ lfs f3, 0x40(r30) +/* 801E0778 001DD6D8 38 61 03 80 */ addi r3, r1, 0x380 +/* 801E077C 001DD6DC EC 81 00 2A */ fadds f4, f1, f0 +/* 801E0780 001DD6E0 C0 42 AC DC */ lfs f2, lbl_805AC9FC@sda21(r2) +/* 801E0784 001DD6E4 C0 21 01 80 */ lfs f1, 0x180(r1) +/* 801E0788 001DD6E8 38 A1 01 A8 */ addi r5, r1, 0x1a8 +/* 801E078C 001DD6EC C0 02 AC D8 */ lfs f0, lbl_805AC9F8@sda21(r2) +/* 801E0790 001DD6F0 38 C1 01 68 */ addi r6, r1, 0x168 +/* 801E0794 001DD6F4 EC 63 08 2A */ fadds f3, f3, f1 +/* 801E0798 001DD6F8 D0 A1 01 AC */ stfs f5, 0x1ac(r1) +/* 801E079C 001DD6FC C0 22 AD 44 */ lfs f1, lbl_805ACA64@sda21(r2) +/* 801E07A0 001DD700 D0 81 01 B0 */ stfs f4, 0x1b0(r1) +/* 801E07A4 001DD704 D0 61 01 A8 */ stfs f3, 0x1a8(r1) +/* 801E07A8 001DD708 D0 41 01 68 */ stfs f2, 0x168(r1) +/* 801E07AC 001DD70C D0 01 01 6C */ stfs f0, 0x16c(r1) +/* 801E07B0 001DD710 D0 41 01 70 */ stfs f2, 0x170(r1) +/* 801E07B4 001DD714 4B E6 C7 E5 */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter +/* 801E07B8 001DD718 C0 02 AD 58 */ lfs f0, lbl_805ACA78@sda21(r2) +/* 801E07BC 001DD71C 38 61 03 50 */ addi r3, r1, 0x350 +/* 801E07C0 001DD720 C0 41 01 AC */ lfs f2, 0x1ac(r1) +/* 801E07C4 001DD724 38 81 04 C4 */ addi r4, r1, 0x4c4 +/* 801E07C8 001DD728 EC 20 F8 2A */ fadds f1, f0, f31 +/* 801E07CC 001DD72C C0 62 AC DC */ lfs f3, lbl_805AC9FC@sda21(r2) +/* 801E07D0 001DD730 C0 01 01 A8 */ lfs f0, 0x1a8(r1) +/* 801E07D4 001DD734 38 A1 01 9C */ addi r5, r1, 0x19c +/* 801E07D8 001DD738 EC 82 18 2A */ fadds f4, f2, f3 +/* 801E07DC 001DD73C C0 41 01 B0 */ lfs f2, 0x1b0(r1) +/* 801E07E0 001DD740 EC 21 07 B2 */ fmuls f1, f1, f30 +/* 801E07E4 001DD744 EC 00 18 2A */ fadds f0, f0, f3 +/* 801E07E8 001DD748 D0 81 01 A0 */ stfs f4, 0x1a0(r1) +/* 801E07EC 001DD74C EC 22 08 2A */ fadds f1, f2, f1 +/* 801E07F0 001DD750 D0 01 01 9C */ stfs f0, 0x19c(r1) +/* 801E07F4 001DD754 D0 21 01 A4 */ stfs f1, 0x1a4(r1) +/* 801E07F8 001DD758 48 13 2A 81 */ bl __ct__12CTransform4fFRC9CMatrix3fRC9CVector3f +/* 801E07FC 001DD75C 38 7A 00 34 */ addi r3, r26, 0x34 +/* 801E0800 001DD760 38 81 03 50 */ addi r4, r1, 0x350 +/* 801E0804 001DD764 48 13 23 3D */ bl __as__12CTransform4fFRC12CTransform4f +/* 801E0808 001DD768 3C 00 43 30 */ lis r0, 0x4330 +/* 801E080C 001DD76C 93 61 04 EC */ stw r27, 0x4ec(r1) +/* 801E0810 001DD770 88 7A 00 E4 */ lbz r3, 0xe4(r26) +/* 801E0814 001DD774 38 80 00 01 */ li r4, 1 +/* 801E0818 001DD778 90 01 04 E8 */ stw r0, 0x4e8(r1) +/* 801E081C 001DD77C 50 83 26 F6 */ rlwimi r3, r4, 4, 0x1b, 0x1b +/* 801E0820 001DD780 C8 62 AD 20 */ lfd f3, lbl_805ACA40@sda21(r2) +/* 801E0824 001DD784 C8 01 04 E8 */ lfd f0, 0x4e8(r1) +/* 801E0828 001DD788 98 7A 00 E4 */ stb r3, 0xe4(r26) +/* 801E082C 001DD78C EC 00 18 28 */ fsubs f0, f0, f3 +/* 801E0830 001DD790 C0 82 AC F8 */ lfs f4, lbl_805ACA18@sda21(r2) +/* 801E0834 001DD794 88 7A 00 E4 */ lbz r3, 0xe4(r26) +/* 801E0838 001DD798 50 83 1F 38 */ rlwimi r3, r4, 3, 0x1c, 0x1c +/* 801E083C 001DD79C 93 61 04 F4 */ stw r27, 0x4f4(r1) +/* 801E0840 001DD7A0 EC 44 20 3A */ fmadds f2, f4, f0, f4 +/* 801E0844 001DD7A4 90 01 04 F0 */ stw r0, 0x4f0(r1) +/* 801E0848 001DD7A8 C0 22 AD 3C */ lfs f1, lbl_805ACA5C@sda21(r2) +/* 801E084C 001DD7AC C8 01 04 F0 */ lfd f0, 0x4f0(r1) +/* 801E0850 001DD7B0 EC 44 10 2A */ fadds f2, f4, f2 +/* 801E0854 001DD7B4 98 7A 00 E4 */ stb r3, 0xe4(r26) +/* 801E0858 001DD7B8 EC 00 18 28 */ fsubs f0, f0, f3 +/* 801E085C 001DD7BC 88 1A 00 E4 */ lbz r0, 0xe4(r26) +/* 801E0860 001DD7C0 50 80 17 7A */ rlwimi r0, r4, 2, 0x1d, 0x1d +/* 801E0864 001DD7C4 98 1A 00 E4 */ stb r0, 0xe4(r26) +/* 801E0868 001DD7C8 EC 01 08 3A */ fmadds f0, f1, f0, f1 +/* 801E086C 001DD7CC 90 9A 05 6C */ stw r4, 0x56c(r26) +/* 801E0870 001DD7D0 EC 04 00 2A */ fadds f0, f4, f0 +/* 801E0874 001DD7D4 D0 5A 05 A8 */ stfs f2, 0x5a8(r26) +/* 801E0878 001DD7D8 D0 1A 05 AC */ stfs f0, 0x5ac(r26) +/* 801E087C 001DD7DC A0 7E 00 08 */ lhz r3, 8(r30) +/* 801E0880 001DD7E0 B0 7A 05 D0 */ sth r3, 0x5d0(r26) +/* 801E0884 001DD7E4 80 1E 06 DC */ lwz r0, 0x6dc(r30) +/* 801E0888 001DD7E8 B0 61 00 48 */ sth r3, 0x48(r1) +/* 801E088C 001DD7EC 90 1A 05 C4 */ stw r0, 0x5c4(r26) +/* 801E0890 001DD7F0 80 1E 06 E0 */ lwz r0, 0x6e0(r30) +/* 801E0894 001DD7F4 B0 61 00 4C */ sth r3, 0x4c(r1) +/* 801E0898 001DD7F8 90 1A 05 C8 */ stw r0, 0x5c8(r26) +/* 801E089C 001DD7FC 80 1E 06 E4 */ lwz r0, 0x6e4(r30) +/* 801E08A0 001DD800 90 1A 05 CC */ stw r0, 0x5cc(r26) +/* 801E08A4 001DD804 80 1E 07 5C */ lwz r0, 0x75c(r30) +/* 801E08A8 001DD808 90 1A 05 D4 */ stw r0, 0x5d4(r26) +/* 801E08AC 001DD80C 80 1E 07 58 */ lwz r0, 0x758(r30) +/* 801E08B0 001DD810 90 1A 05 D8 */ stw r0, 0x5d8(r26) +/* 801E08B4 001DD814 80 7E 06 14 */ lwz r3, 0x614(r30) +/* 801E08B8 001DD818 80 9E 06 48 */ lwz r4, 0x648(r30) +/* 801E08BC 001DD81C 38 63 FF FE */ addi r3, r3, -2 +/* 801E08C0 001DD820 7C 03 20 50 */ subf r0, r3, r4 +/* 801E08C4 001DD824 7C 83 1B 38 */ orc r3, r4, r3 +/* 801E08C8 001DD828 54 00 F8 7E */ srwi r0, r0, 1 +/* 801E08CC 001DD82C 7C 00 18 50 */ subf r0, r0, r3 +/* 801E08D0 001DD830 54 00 0F FE */ srwi r0, r0, 0x1f +/* 801E08D4 001DD834 98 1A 05 DE */ stb r0, 0x5de(r26) +/* 801E08D8 001DD838 80 1E 07 9C */ lwz r0, 0x79c(r30) +/* 801E08DC 001DD83C 80 BE 07 A0 */ lwz r5, 0x7a0(r30) +/* 801E08E0 001DD840 A2 FA 00 08 */ lhz r23, 8(r26) +/* 801E08E4 001DD844 7C 00 28 00 */ cmpw r0, r5 +/* 801E08E8 001DD848 41 80 00 1C */ blt lbl_801E0904 +/* 801E08EC 001DD84C 2C 05 00 00 */ cmpwi r5, 0 +/* 801E08F0 001DD850 38 7E 07 98 */ addi r3, r30, 0x798 +/* 801E08F4 001DD854 38 80 00 04 */ li r4, 4 +/* 801E08F8 001DD858 41 82 00 08 */ beq lbl_801E0900 +/* 801E08FC 001DD85C 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801E0900: +/* 801E0900 001DD860 4B E2 BB 09 */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" +lbl_801E0904: +/* 801E0904 001DD864 80 1E 07 9C */ lwz r0, 0x79c(r30) +/* 801E0908 001DD868 80 7E 07 A4 */ lwz r3, 0x7a4(r30) +/* 801E090C 001DD86C 54 00 08 3C */ slwi r0, r0, 1 +/* 801E0910 001DD870 7C 63 02 15 */ add. r3, r3, r0 +/* 801E0914 001DD874 41 82 00 08 */ beq lbl_801E091C +/* 801E0918 001DD878 B2 E3 00 00 */ sth r23, 0(r3) +lbl_801E091C: +/* 801E091C 001DD87C 80 7E 07 9C */ lwz r3, 0x79c(r30) +/* 801E0920 001DD880 38 03 00 01 */ addi r0, r3, 1 +/* 801E0924 001DD884 90 1E 07 9C */ stw r0, 0x79c(r30) +lbl_801E0928: +/* 801E0928 001DD888 3B BD 00 10 */ addi r29, r29, 0x10 +/* 801E092C 001DD88C 3B 7B 00 01 */ addi r27, r27, 1 +lbl_801E0930: +/* 801E0930 001DD890 7C 1B E0 40 */ cmplw r27, r28 +/* 801E0934 001DD894 41 80 FD 0C */ blt lbl_801E0640 +/* 801E0938 001DD898 48 00 07 44 */ b lbl_801E107C +/* 801E093C 001DD89C 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 801E0940 001DD8A0 48 13 1B E1 */ bl Next__9CRandom16Fv +/* 801E0944 001DD8A4 38 00 00 00 */ li r0, 0 +/* 801E0948 001DD8A8 54 63 07 FE */ clrlwi r3, r3, 0x1f +/* 801E094C 001DD8AC 90 01 01 90 */ stw r0, 0x190(r1) +/* 801E0950 001DD8B0 3B 43 00 02 */ addi r26, r3, 2 +/* 801E0954 001DD8B4 38 61 01 8C */ addi r3, r1, 0x18c +/* 801E0958 001DD8B8 90 01 01 94 */ stw r0, 0x194(r1) +/* 801E095C 001DD8BC 90 01 01 98 */ stw r0, 0x198(r1) +/* 801E0960 001DD8C0 83 7E 08 F8 */ lwz r27, 0x8f8(r30) +/* 801E0964 001DD8C4 7F 64 DB 78 */ mr r4, r27 +/* 801E0968 001DD8C8 4B E8 31 BD */ bl "reserve__Q24rstl37vectorFi" +/* 801E096C 001DD8CC 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 801E0970 001DD8D0 3B 80 00 00 */ li r28, 0 +/* 801E0974 001DD8D4 3A E0 00 00 */ li r23, 0 +/* 801E0978 001DD8D8 C3 63 00 40 */ lfs f27, 0x40(r3) +/* 801E097C 001DD8DC C3 83 00 50 */ lfs f28, 0x50(r3) +/* 801E0980 001DD8E0 C3 A3 00 60 */ lfs f29, 0x60(r3) +/* 801E0984 001DD8E4 48 00 00 B8 */ b lbl_801E0A3C +lbl_801E0988: +/* 801E0988 001DD8E8 80 BE 09 00 */ lwz r5, 0x900(r30) +/* 801E098C 001DD8EC 7F E3 FB 78 */ mr r3, r31 +/* 801E0990 001DD8F0 38 81 00 44 */ addi r4, r1, 0x44 +/* 801E0994 001DD8F4 7C 05 BA 2E */ lhzx r0, r5, r23 +/* 801E0998 001DD8F8 B0 01 00 44 */ sth r0, 0x44(r1) +/* 801E099C 001DD8FC 4B E6 BB D9 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801E09A0 001DD900 7C 64 1B 78 */ mr r4, r3 +/* 801E09A4 001DD904 38 61 00 E4 */ addi r3, r1, 0xe4 +/* 801E09A8 001DD908 4B EC 5B A5 */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 801E09AC 001DD90C 80 63 00 04 */ lwz r3, 4(r3) +/* 801E09B0 001DD910 28 03 00 00 */ cmplwi r3, 0 +/* 801E09B4 001DD914 41 82 00 80 */ beq lbl_801E0A34 +/* 801E09B8 001DD918 C0 03 00 50 */ lfs f0, 0x50(r3) +/* 801E09BC 001DD91C C0 43 00 40 */ lfs f2, 0x40(r3) +/* 801E09C0 001DD920 EC 60 E0 28 */ fsubs f3, f0, f28 +/* 801E09C4 001DD924 C0 23 00 60 */ lfs f1, 0x60(r3) +/* 801E09C8 001DD928 EC 82 D8 28 */ fsubs f4, f2, f27 +/* 801E09CC 001DD92C C0 02 AD 00 */ lfs f0, lbl_805ACA20@sda21(r2) +/* 801E09D0 001DD930 EC 41 E8 28 */ fsubs f2, f1, f29 +/* 801E09D4 001DD934 EC 23 00 F2 */ fmuls f1, f3, f3 +/* 801E09D8 001DD938 EC 24 09 3A */ fmadds f1, f4, f4, f1 +/* 801E09DC 001DD93C EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 801E09E0 001DD940 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801E09E4 001DD944 40 81 00 50 */ ble lbl_801E0A34 +/* 801E09E8 001DD948 80 01 01 90 */ lwz r0, 0x190(r1) +/* 801E09EC 001DD94C 80 A1 01 94 */ lwz r5, 0x194(r1) +/* 801E09F0 001DD950 7C 00 28 00 */ cmpw r0, r5 +/* 801E09F4 001DD954 41 80 00 1C */ blt lbl_801E0A10 +/* 801E09F8 001DD958 2C 05 00 00 */ cmpwi r5, 0 +/* 801E09FC 001DD95C 38 61 01 8C */ addi r3, r1, 0x18c +/* 801E0A00 001DD960 38 80 00 04 */ li r4, 4 +/* 801E0A04 001DD964 41 82 00 08 */ beq lbl_801E0A0C +/* 801E0A08 001DD968 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801E0A0C: +/* 801E0A0C 001DD96C 4B E8 31 19 */ bl "reserve__Q24rstl37vectorFi" +lbl_801E0A10: +/* 801E0A10 001DD970 80 01 01 90 */ lwz r0, 0x190(r1) +/* 801E0A14 001DD974 80 61 01 98 */ lwz r3, 0x198(r1) +/* 801E0A18 001DD978 54 00 10 3A */ slwi r0, r0, 2 +/* 801E0A1C 001DD97C 7C 63 02 15 */ add. r3, r3, r0 +/* 801E0A20 001DD980 41 82 00 08 */ beq lbl_801E0A28 +/* 801E0A24 001DD984 93 83 00 00 */ stw r28, 0(r3) +lbl_801E0A28: +/* 801E0A28 001DD988 80 61 01 90 */ lwz r3, 0x190(r1) +/* 801E0A2C 001DD98C 38 03 00 01 */ addi r0, r3, 1 +/* 801E0A30 001DD990 90 01 01 90 */ stw r0, 0x190(r1) +lbl_801E0A34: +/* 801E0A34 001DD994 3B 9C 00 01 */ addi r28, r28, 1 +/* 801E0A38 001DD998 3A F7 00 02 */ addi r23, r23, 2 +lbl_801E0A3C: +/* 801E0A3C 001DD99C 7C 1C D8 40 */ cmplw r28, r27 +/* 801E0A40 001DD9A0 41 80 FF 48 */ blt lbl_801E0988 +/* 801E0A44 001DD9A4 83 21 01 90 */ lwz r25, 0x190(r1) +/* 801E0A48 001DD9A8 3B 00 00 00 */ li r24, 0 +/* 801E0A4C 001DD9AC 48 00 00 98 */ b lbl_801E0AE4 +lbl_801E0A50: +/* 801E0A50 001DD9B0 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 801E0A54 001DD9B4 48 13 1A CD */ bl Next__9CRandom16Fv +/* 801E0A58 001DD9B8 7C 03 CB 96 */ divwu r0, r3, r25 +/* 801E0A5C 001DD9BC 80 BE 09 00 */ lwz r5, 0x900(r30) +/* 801E0A60 001DD9C0 38 81 00 40 */ addi r4, r1, 0x40 +/* 801E0A64 001DD9C4 7C 00 C9 D6 */ mullw r0, r0, r25 +/* 801E0A68 001DD9C8 7C 00 18 50 */ subf r0, r0, r3 +/* 801E0A6C 001DD9CC 7F E3 FB 78 */ mr r3, r31 +/* 801E0A70 001DD9D0 54 00 08 3C */ slwi r0, r0, 1 +/* 801E0A74 001DD9D4 7C 05 02 2E */ lhzx r0, r5, r0 +/* 801E0A78 001DD9D8 B0 01 00 54 */ sth r0, 0x54(r1) +/* 801E0A7C 001DD9DC B0 01 00 40 */ sth r0, 0x40(r1) +/* 801E0A80 001DD9E0 4B E6 BA F5 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801E0A84 001DD9E4 7C 64 1B 78 */ mr r4, r3 +/* 801E0A88 001DD9E8 38 61 00 DC */ addi r3, r1, 0xdc +/* 801E0A8C 001DD9EC 4B EC 5A C1 */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 801E0A90 001DD9F0 82 E3 00 04 */ lwz r23, 4(r3) +/* 801E0A94 001DD9F4 28 17 00 00 */ cmplwi r23, 0 +/* 801E0A98 001DD9F8 41 82 00 48 */ beq lbl_801E0AE0 +/* 801E0A9C 001DD9FC 7E E3 BB 78 */ mr r3, r23 +/* 801E0AA0 001DDA00 38 80 00 01 */ li r4, 1 +/* 801E0AA4 001DDA04 81 97 00 00 */ lwz r12, 0(r23) +/* 801E0AA8 001DDA08 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801E0AAC 001DDA0C 7D 89 03 A6 */ mtctr r12 +/* 801E0AB0 001DDA10 4E 80 04 21 */ bctrl +/* 801E0AB4 001DDA14 7F C3 F3 78 */ mr r3, r30 +/* 801E0AB8 001DDA18 7F E5 FB 78 */ mr r5, r31 +/* 801E0ABC 001DDA1C 38 80 00 09 */ li r4, 9 +/* 801E0AC0 001DDA20 38 C0 FF FF */ li r6, -1 +/* 801E0AC4 001DDA24 4B E7 05 FD */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 801E0AC8 001DDA28 7E E3 BB 78 */ mr r3, r23 +/* 801E0ACC 001DDA2C 38 80 00 00 */ li r4, 0 +/* 801E0AD0 001DDA30 81 97 00 00 */ lwz r12, 0(r23) +/* 801E0AD4 001DDA34 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801E0AD8 001DDA38 7D 89 03 A6 */ mtctr r12 +/* 801E0ADC 001DDA3C 4E 80 04 21 */ bctrl +lbl_801E0AE0: +/* 801E0AE0 001DDA40 3B 18 00 01 */ addi r24, r24, 1 +lbl_801E0AE4: +/* 801E0AE4 001DDA44 7C 18 D0 40 */ cmplw r24, r26 +/* 801E0AE8 001DDA48 41 80 FF 68 */ blt lbl_801E0A50 +/* 801E0AEC 001DDA4C 80 01 01 90 */ lwz r0, 0x190(r1) +/* 801E0AF0 001DDA50 80 61 01 98 */ lwz r3, 0x198(r1) +/* 801E0AF4 001DDA54 54 00 10 3A */ slwi r0, r0, 2 +/* 801E0AF8 001DDA58 7C 03 02 14 */ add r0, r3, r0 +/* 801E0AFC 001DDA5C 90 61 00 60 */ stw r3, 0x60(r1) +/* 801E0B00 001DDA60 7C 64 1B 78 */ mr r4, r3 +/* 801E0B04 001DDA64 90 01 00 68 */ stw r0, 0x68(r1) +/* 801E0B08 001DDA68 90 01 00 64 */ stw r0, 0x64(r1) +/* 801E0B0C 001DDA6C 90 61 00 5C */ stw r3, 0x5c(r1) +/* 801E0B10 001DDA70 48 00 00 08 */ b lbl_801E0B18 +lbl_801E0B14: +/* 801E0B14 001DDA74 38 84 00 04 */ addi r4, r4, 4 +lbl_801E0B18: +/* 801E0B18 001DDA78 7C 04 00 40 */ cmplw r4, r0 +/* 801E0B1C 001DDA7C 40 82 FF F8 */ bne lbl_801E0B14 +/* 801E0B20 001DDA80 28 03 00 00 */ cmplwi r3, 0 +/* 801E0B24 001DDA84 41 82 05 58 */ beq lbl_801E107C +/* 801E0B28 001DDA88 48 13 4E 09 */ bl Free__7CMemoryFPCv +/* 801E0B2C 001DDA8C 48 00 05 50 */ b lbl_801E107C +/* 801E0B30 001DDA90 3C 80 80 3D */ lis r4, lbl_803D1CB8@ha +/* 801E0B34 001DDA94 38 61 01 58 */ addi r3, r1, 0x158 +/* 801E0B38 001DDA98 38 84 1C B8 */ addi r4, r4, lbl_803D1CB8@l +/* 801E0B3C 001DDA9C 38 C1 00 2C */ addi r6, r1, 0x2c +/* 801E0B40 001DDAA0 38 84 01 BA */ addi r4, r4, 0x1ba +/* 801E0B44 001DDAA4 38 A0 FF FF */ li r5, -1 +/* 801E0B48 001DDAA8 48 15 D6 4D */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator" +/* 801E0B4C 001DDAAC 7F C4 F3 78 */ mr r4, r30 +/* 801E0B50 001DDAB0 38 61 03 20 */ addi r3, r1, 0x320 +/* 801E0B54 001DDAB4 38 A1 01 58 */ addi r5, r1, 0x158 +/* 801E0B58 001DDAB8 4B E9 7E 21 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801E0B5C 001DDABC 38 61 04 94 */ addi r3, r1, 0x494 +/* 801E0B60 001DDAC0 38 81 03 20 */ addi r4, r1, 0x320 +/* 801E0B64 001DDAC4 48 13 20 11 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801E0B68 001DDAC8 38 61 01 58 */ addi r3, r1, 0x158 +/* 801E0B6C 001DDACC 48 15 CF 75 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801E0B70 001DDAD0 80 AD 92 10 */ lwz r5, lbl_805A7DD0@sda21(r13) +/* 801E0B74 001DDAD4 38 60 00 00 */ li r3, 0 +/* 801E0B78 001DDAD8 38 80 00 01 */ li r4, 1 +/* 801E0B7C 001DDADC 48 1A 93 79 */ bl __shl2i +/* 801E0B80 001DDAE0 C0 61 04 A0 */ lfs f3, 0x4a0(r1) +/* 801E0B84 001DDAE4 39 00 00 00 */ li r8, 0 +/* 801E0B88 001DDAE8 C0 41 04 B0 */ lfs f2, 0x4b0(r1) +/* 801E0B8C 001DDAEC 38 00 00 01 */ li r0, 1 +/* 801E0B90 001DDAF0 C0 01 04 C0 */ lfs f0, 0x4c0(r1) +/* 801E0B94 001DDAF4 3C A0 80 5A */ lis r5, lbl_805A6700@ha +/* 801E0B98 001DDAF8 90 81 01 EC */ stw r4, 0x1ec(r1) +/* 801E0B9C 001DDAFC 38 C5 67 00 */ addi r6, r5, lbl_805A6700@l +/* 801E0BA0 001DDB00 C0 22 AD 44 */ lfs f1, lbl_805ACA64@sda21(r2) +/* 801E0BA4 001DDB04 7F E4 FB 78 */ mr r4, r31 +/* 801E0BA8 001DDB08 90 61 01 E8 */ stw r3, 0x1e8(r1) +/* 801E0BAC 001DDB0C 38 61 02 F0 */ addi r3, r1, 0x2f0 +/* 801E0BB0 001DDB10 38 A1 01 4C */ addi r5, r1, 0x14c +/* 801E0BB4 001DDB14 38 E1 01 E8 */ addi r7, r1, 0x1e8 +/* 801E0BB8 001DDB18 91 01 01 F4 */ stw r8, 0x1f4(r1) +/* 801E0BBC 001DDB1C 91 01 01 F0 */ stw r8, 0x1f0(r1) +/* 801E0BC0 001DDB20 90 01 01 F8 */ stw r0, 0x1f8(r1) +/* 801E0BC4 001DDB24 D0 61 01 4C */ stfs f3, 0x14c(r1) +/* 801E0BC8 001DDB28 D0 41 01 50 */ stfs f2, 0x150(r1) +/* 801E0BCC 001DDB2C D0 01 01 54 */ stfs f0, 0x154(r1) +/* 801E0BD0 001DDB30 4B E6 C3 C9 */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter +/* 801E0BD4 001DDB34 C0 01 02 F4 */ lfs f0, 0x2f4(r1) +/* 801E0BD8 001DDB38 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 801E0BDC 001DDB3C C0 82 AC DC */ lfs f4, lbl_805AC9FC@sda21(r2) +/* 801E0BE0 001DDB40 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 801E0BE4 001DDB44 C0 41 02 F8 */ lfs f2, 0x2f8(r1) +/* 801E0BE8 001DDB48 38 61 02 C0 */ addi r3, r1, 0x2c0 +/* 801E0BEC 001DDB4C EC 60 20 2A */ fadds f3, f0, f4 +/* 801E0BF0 001DDB50 80 FF 08 4C */ lwz r7, 0x84c(r31) +/* 801E0BF4 001DDB54 EC 42 20 2A */ fadds f2, f2, f4 +/* 801E0BF8 001DDB58 C0 21 02 FC */ lfs f1, 0x2fc(r1) +/* 801E0BFC 001DDB5C C0 02 AC E0 */ lfs f0, lbl_805ACA00@sda21(r2) +/* 801E0C00 001DDB60 38 81 01 40 */ addi r4, r1, 0x140 +/* 801E0C04 001DDB64 EC 01 00 2A */ fadds f0, f1, f0 +/* 801E0C08 001DDB68 C0 A7 00 60 */ lfs f5, 0x60(r7) +/* 801E0C0C 001DDB6C C0 87 00 50 */ lfs f4, 0x50(r7) +/* 801E0C10 001DDB70 38 A1 01 34 */ addi r5, r1, 0x134 +/* 801E0C14 001DDB74 C0 27 00 40 */ lfs f1, 0x40(r7) +/* 801E0C18 001DDB78 D0 21 01 34 */ stfs f1, 0x134(r1) +/* 801E0C1C 001DDB7C D0 81 01 38 */ stfs f4, 0x138(r1) +/* 801E0C20 001DDB80 D0 A1 01 3C */ stfs f5, 0x13c(r1) +/* 801E0C24 001DDB84 D0 61 01 40 */ stfs f3, 0x140(r1) +/* 801E0C28 001DDB88 D0 41 01 44 */ stfs f2, 0x144(r1) +/* 801E0C2C 001DDB8C D0 01 01 48 */ stfs f0, 0x148(r1) +/* 801E0C30 001DDB90 48 13 2E E1 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 801E0C34 001DDB94 38 61 04 64 */ addi r3, r1, 0x464 +/* 801E0C38 001DDB98 38 81 02 C0 */ addi r4, r1, 0x2c0 +/* 801E0C3C 001DDB9C 48 13 1F 39 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801E0C40 001DDBA0 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 801E0C44 001DDBA4 C0 22 AD 5C */ lfs f1, lbl_805ACA7C@sda21(r2) +/* 801E0C48 001DDBA8 C0 42 AD 18 */ lfs f2, lbl_805ACA38@sda21(r2) +/* 801E0C4C 001DDBAC 48 13 18 F9 */ bl Range__9CRandom16Fff +/* 801E0C50 001DDBB0 C0 02 AD 60 */ lfs f0, lbl_805ACA80@sda21(r2) +/* 801E0C54 001DDBB4 38 61 04 64 */ addi r3, r1, 0x464 +/* 801E0C58 001DDBB8 38 81 00 84 */ addi r4, r1, 0x84 +/* 801E0C5C 001DDBBC EC 00 00 72 */ fmuls f0, f0, f1 +/* 801E0C60 001DDBC0 D0 01 00 84 */ stfs f0, 0x84(r1) +/* 801E0C64 001DDBC4 48 13 28 59 */ bl RotateLocalZ__12CTransform4fFRC9CRelAngle +/* 801E0C68 001DDBC8 3C 60 80 3D */ lis r3, lbl_803D1CB8@ha +/* 801E0C6C 001DDBCC 3B 40 00 00 */ li r26, 0 +/* 801E0C70 001DDBD0 38 63 1C B8 */ addi r3, r3, lbl_803D1CB8@l +/* 801E0C74 001DDBD4 3B 60 00 00 */ li r27, 0 +/* 801E0C78 001DDBD8 38 83 01 B3 */ addi r4, r3, 0x1b3 +/* 801E0C7C 001DDBDC 3B 80 00 00 */ li r28, 0 +/* 801E0C80 001DDBE0 3B 20 00 00 */ li r25, 0 +/* 801E0C84 001DDBE4 3B 00 00 00 */ li r24, 0 +/* 801E0C88 001DDBE8 3A E0 00 00 */ li r23, 0 +/* 801E0C8C 001DDBEC 38 60 01 98 */ li r3, 0x198 +/* 801E0C90 001DDBF0 38 A0 00 00 */ li r5, 0 +/* 801E0C94 001DDBF4 48 13 4B D9 */ bl __nw__FUlPCcPCc +/* 801E0C98 001DDBF8 7C 7D 1B 79 */ or. r29, r3, r3 +/* 801E0C9C 001DDBFC 41 82 01 F0 */ beq lbl_801E0E8C +/* 801E0CA0 001DDC00 80 DE 06 00 */ lwz r6, 0x600(r30) +/* 801E0CA4 001DDC04 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 801E0CA8 001DDC08 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 801E0CAC 001DDC0C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801E0CB0 001DDC10 90 01 00 9C */ stw r0, 0x9c(r1) +/* 801E0CB4 001DDC14 38 61 00 94 */ addi r3, r1, 0x94 +/* 801E0CB8 001DDC18 38 A1 00 9C */ addi r5, r1, 0x9c +/* 801E0CBC 001DDC1C 90 C1 00 A0 */ stw r6, 0xa0(r1) +/* 801E0CC0 001DDC20 81 84 00 00 */ lwz r12, 0(r4) +/* 801E0CC4 001DDC24 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801E0CC8 001DDC28 7D 89 03 A6 */ mtctr r12 +/* 801E0CCC 001DDC2C 4E 80 04 21 */ bctrl +/* 801E0CD0 001DDC30 38 61 00 8C */ addi r3, r1, 0x8c +/* 801E0CD4 001DDC34 38 81 00 94 */ addi r4, r1, 0x94 +/* 801E0CD8 001DDC38 3B 00 00 01 */ li r24, 1 +/* 801E0CDC 001DDC3C 48 16 01 CD */ bl __ct__6CTokenFRC6CToken +/* 801E0CE0 001DDC40 80 DE 06 04 */ lwz r6, 0x604(r30) +/* 801E0CE4 001DDC44 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 801E0CE8 001DDC48 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 801E0CEC 001DDC4C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801E0CF0 001DDC50 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 801E0CF4 001DDC54 38 61 00 AC */ addi r3, r1, 0xac +/* 801E0CF8 001DDC58 38 A1 00 B4 */ addi r5, r1, 0xb4 +/* 801E0CFC 001DDC5C 3A E0 00 01 */ li r23, 1 +/* 801E0D00 001DDC60 90 C1 00 B8 */ stw r6, 0xb8(r1) +/* 801E0D04 001DDC64 81 84 00 00 */ lwz r12, 0(r4) +/* 801E0D08 001DDC68 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801E0D0C 001DDC6C 7D 89 03 A6 */ mtctr r12 +/* 801E0D10 001DDC70 4E 80 04 21 */ bctrl +/* 801E0D14 001DDC74 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 801E0D18 001DDC78 38 81 00 AC */ addi r4, r1, 0xac +/* 801E0D1C 001DDC7C 3B 80 00 01 */ li r28, 1 +/* 801E0D20 001DDC80 48 16 01 89 */ bl __ct__6CTokenFRC6CToken +/* 801E0D24 001DDC84 80 DE 06 08 */ lwz r6, 0x608(r30) +/* 801E0D28 001DDC88 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 801E0D2C 001DDC8C 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 801E0D30 001DDC90 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801E0D34 001DDC94 90 01 00 CC */ stw r0, 0xcc(r1) +/* 801E0D38 001DDC98 38 61 00 C4 */ addi r3, r1, 0xc4 +/* 801E0D3C 001DDC9C 38 A1 00 CC */ addi r5, r1, 0xcc +/* 801E0D40 001DDCA0 3B 20 00 01 */ li r25, 1 +/* 801E0D44 001DDCA4 90 C1 00 D0 */ stw r6, 0xd0(r1) +/* 801E0D48 001DDCA8 81 84 00 00 */ lwz r12, 0(r4) +/* 801E0D4C 001DDCAC 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801E0D50 001DDCB0 7D 89 03 A6 */ mtctr r12 +/* 801E0D54 001DDCB4 4E 80 04 21 */ bctrl +/* 801E0D58 001DDCB8 38 61 00 BC */ addi r3, r1, 0xbc +/* 801E0D5C 001DDCBC 38 81 00 C4 */ addi r4, r1, 0xc4 +/* 801E0D60 001DDCC0 3B 40 00 01 */ li r26, 1 +/* 801E0D64 001DDCC4 48 16 01 45 */ bl __ct__6CTokenFRC6CToken +/* 801E0D68 001DDCC8 7F E4 FB 78 */ mr r4, r31 +/* 801E0D6C 001DDCCC 38 61 00 30 */ addi r3, r1, 0x30 +/* 801E0D70 001DDCD0 3B 60 00 01 */ li r27, 1 +/* 801E0D74 001DDCD4 4B E6 C3 69 */ bl AllocateUniqueId__13CStateManagerFv +/* 801E0D78 001DDCD8 A0 01 00 30 */ lhz r0, 0x30(r1) +/* 801E0D7C 001DDCDC 38 E0 00 01 */ li r7, 1 +/* 801E0D80 001DDCE0 88 61 00 D8 */ lbz r3, 0xd8(r1) +/* 801E0D84 001DDCE4 38 A0 00 00 */ li r5, 0 +/* 801E0D88 001DDCE8 B0 01 00 34 */ sth r0, 0x34(r1) +/* 801E0D8C 001DDCEC 50 A3 3E 30 */ rlwimi r3, r5, 7, 0x18, 0x18 +/* 801E0D90 001DDCF0 54 64 06 3E */ clrlwi r4, r3, 0x18 +/* 801E0D94 001DDCF4 88 01 01 CC */ lbz r0, 0x1cc(r1) +/* 801E0D98 001DDCF8 81 3E 00 04 */ lwz r9, 4(r30) +/* 801E0D9C 001DDCFC 50 A4 36 72 */ rlwimi r4, r5, 6, 0x19, 0x19 +/* 801E0DA0 001DDD00 98 61 00 D8 */ stb r3, 0xd8(r1) +/* 801E0DA4 001DDD04 54 86 06 3E */ clrlwi r6, r4, 0x18 +/* 801E0DA8 001DDD08 50 A6 2E B4 */ rlwimi r6, r5, 5, 0x1a, 0x1a +/* 801E0DAC 001DDD0C 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 801E0DB0 001DDD10 91 21 00 80 */ stw r9, 0x80(r1) +/* 801E0DB4 001DDD14 38 61 01 D0 */ addi r3, r1, 0x1d0 +/* 801E0DB8 001DDD18 C0 62 AD 64 */ lfs f3, lbl_805ACA84@sda21(r2) +/* 801E0DBC 001DDD1C 80 BF 08 4C */ lwz r5, 0x84c(r31) +/* 801E0DC0 001DDD20 98 81 00 D8 */ stb r4, 0xd8(r1) +/* 801E0DC4 001DDD24 38 81 01 1C */ addi r4, r1, 0x11c +/* 801E0DC8 001DDD28 A1 05 00 08 */ lhz r8, 8(r5) +/* 801E0DCC 001DDD2C 38 A1 01 28 */ addi r5, r1, 0x128 +/* 801E0DD0 001DDD30 C0 22 AD 68 */ lfs f1, lbl_805ACA88@sda21(r2) +/* 801E0DD4 001DDD34 C0 02 AC D8 */ lfs f0, lbl_805AC9F8@sda21(r2) +/* 801E0DD8 001DDD38 C0 42 AC DC */ lfs f2, lbl_805AC9FC@sda21(r2) +/* 801E0DDC 001DDD3C 91 21 00 7C */ stw r9, 0x7c(r1) +/* 801E0DE0 001DDD40 B1 01 00 38 */ sth r8, 0x38(r1) +/* 801E0DE4 001DDD44 B1 01 00 3C */ sth r8, 0x3c(r1) +/* 801E0DE8 001DDD48 90 E1 00 D4 */ stw r7, 0xd4(r1) +/* 801E0DEC 001DDD4C 98 C1 00 D8 */ stb r6, 0xd8(r1) +/* 801E0DF0 001DDD50 90 E1 01 B4 */ stw r7, 0x1b4(r1) +/* 801E0DF4 001DDD54 98 C1 01 B8 */ stb r6, 0x1b8(r1) +/* 801E0DF8 001DDD58 D0 61 01 BC */ stfs f3, 0x1bc(r1) +/* 801E0DFC 001DDD5C D0 61 01 C0 */ stfs f3, 0x1c0(r1) +/* 801E0E00 001DDD60 D0 41 01 C4 */ stfs f2, 0x1c4(r1) +/* 801E0E04 001DDD64 D0 41 01 C8 */ stfs f2, 0x1c8(r1) +/* 801E0E08 001DDD68 98 01 01 CC */ stb r0, 0x1cc(r1) +/* 801E0E0C 001DDD6C D0 21 01 1C */ stfs f1, 0x11c(r1) +/* 801E0E10 001DDD70 D0 21 01 20 */ stfs f1, 0x120(r1) +/* 801E0E14 001DDD74 D0 21 01 24 */ stfs f1, 0x124(r1) +/* 801E0E18 001DDD78 D0 01 01 28 */ stfs f0, 0x128(r1) +/* 801E0E1C 001DDD7C D0 01 01 2C */ stfs f0, 0x12c(r1) +/* 801E0E20 001DDD80 D0 01 01 30 */ stfs f0, 0x130(r1) +/* 801E0E24 001DDD84 48 15 76 E5 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801E0E28 001DDD88 38 01 04 64 */ addi r0, r1, 0x464 +/* 801E0E2C 001DDD8C 38 A1 01 B4 */ addi r5, r1, 0x1b4 +/* 801E0E30 001DDD90 90 01 00 08 */ stw r0, 8(r1) +/* 801E0E34 001DDD94 38 00 0A AD */ li r0, 0xaad +/* 801E0E38 001DDD98 C0 42 AD 6C */ lfs f2, lbl_805ACA8C@sda21(r2) +/* 801E0E3C 001DDD9C 38 81 00 8C */ addi r4, r1, 0x8c +/* 801E0E40 001DDDA0 90 A1 00 0C */ stw r5, 0xc(r1) +/* 801E0E44 001DDDA4 38 A1 00 A4 */ addi r5, r1, 0xa4 +/* 801E0E48 001DDDA8 38 C1 00 BC */ addi r6, r1, 0xbc +/* 801E0E4C 001DDDAC 38 E1 00 34 */ addi r7, r1, 0x34 +/* 801E0E50 001DDDB0 90 61 00 10 */ stw r3, 0x10(r1) +/* 801E0E54 001DDDB4 7F A3 EB 78 */ mr r3, r29 +/* 801E0E58 001DDDB8 39 01 00 80 */ addi r8, r1, 0x80 +/* 801E0E5C 001DDDBC 39 21 00 3C */ addi r9, r1, 0x3c +/* 801E0E60 001DDDC0 81 7E 06 E8 */ lwz r11, 0x6e8(r30) +/* 801E0E64 001DDDC4 39 40 00 01 */ li r10, 1 +/* 801E0E68 001DDDC8 91 61 00 14 */ stw r11, 0x14(r1) +/* 801E0E6C 001DDDCC A1 7E 06 EC */ lhz r11, 0x6ec(r30) +/* 801E0E70 001DDDD0 91 61 00 18 */ stw r11, 0x18(r1) +/* 801E0E74 001DDDD4 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801E0E78 001DDDD8 80 1E 06 F0 */ lwz r0, 0x6f0(r30) +/* 801E0E7C 001DDDDC 90 01 00 20 */ stw r0, 0x20(r1) +/* 801E0E80 001DDDE0 C0 3E 06 AC */ lfs f1, 0x6ac(r30) +/* 801E0E84 001DDDE4 48 01 2B 75 */ bl "__ct__20CIceAttackProjectileF25TToken<15CGenDescription>25TToken<15CGenDescription>9TUniqueId9TUniqueIdbRC12CTransform4fRC11CDamageInfoRC6CAABoxff" +/* 801E0E88 001DDDE8 7C 7D 1B 78 */ mr r29, r3 +lbl_801E0E8C: +/* 801E0E8C 001DDDEC 7F E3 FB 78 */ mr r3, r31 +/* 801E0E90 001DDDF0 7F A4 EB 78 */ mr r4, r29 +/* 801E0E94 001DDDF4 4B E6 BE 61 */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +/* 801E0E98 001DDDF8 7E E0 07 75 */ extsb. r0, r23 +/* 801E0E9C 001DDDFC 41 82 00 10 */ beq lbl_801E0EAC +/* 801E0EA0 001DDE00 38 61 00 8C */ addi r3, r1, 0x8c +/* 801E0EA4 001DDE04 38 80 00 00 */ li r4, 0 +/* 801E0EA8 001DDE08 48 15 FF 99 */ bl __dt__6CTokenFv +lbl_801E0EAC: +/* 801E0EAC 001DDE0C 7F 00 07 75 */ extsb. r0, r24 +/* 801E0EB0 001DDE10 41 82 00 10 */ beq lbl_801E0EC0 +/* 801E0EB4 001DDE14 38 61 00 94 */ addi r3, r1, 0x94 +/* 801E0EB8 001DDE18 38 80 FF FF */ li r4, -1 +/* 801E0EBC 001DDE1C 48 15 FF 85 */ bl __dt__6CTokenFv +lbl_801E0EC0: +/* 801E0EC0 001DDE20 7F 20 07 75 */ extsb. r0, r25 +/* 801E0EC4 001DDE24 41 82 00 10 */ beq lbl_801E0ED4 +/* 801E0EC8 001DDE28 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 801E0ECC 001DDE2C 38 80 00 00 */ li r4, 0 +/* 801E0ED0 001DDE30 48 15 FF 71 */ bl __dt__6CTokenFv +lbl_801E0ED4: +/* 801E0ED4 001DDE34 7F 80 07 75 */ extsb. r0, r28 +/* 801E0ED8 001DDE38 41 82 00 10 */ beq lbl_801E0EE8 +/* 801E0EDC 001DDE3C 38 61 00 AC */ addi r3, r1, 0xac +/* 801E0EE0 001DDE40 38 80 FF FF */ li r4, -1 +/* 801E0EE4 001DDE44 48 15 FF 5D */ bl __dt__6CTokenFv +lbl_801E0EE8: +/* 801E0EE8 001DDE48 7F 60 07 75 */ extsb. r0, r27 +/* 801E0EEC 001DDE4C 41 82 00 10 */ beq lbl_801E0EFC +/* 801E0EF0 001DDE50 38 61 00 BC */ addi r3, r1, 0xbc +/* 801E0EF4 001DDE54 38 80 00 00 */ li r4, 0 +/* 801E0EF8 001DDE58 48 15 FF 49 */ bl __dt__6CTokenFv +lbl_801E0EFC: +/* 801E0EFC 001DDE5C 7F 40 07 75 */ extsb. r0, r26 +/* 801E0F00 001DDE60 41 82 01 7C */ beq lbl_801E107C +/* 801E0F04 001DDE64 38 61 00 C4 */ addi r3, r1, 0xc4 +/* 801E0F08 001DDE68 38 80 FF FF */ li r4, -1 +/* 801E0F0C 001DDE6C 48 15 FF 35 */ bl __dt__6CTokenFv +/* 801E0F10 001DDE70 48 00 01 6C */ b lbl_801E107C +/* 801E0F14 001DDE74 C0 9E 00 60 */ lfs f4, 0x60(r30) +/* 801E0F18 001DDE78 38 A1 01 10 */ addi r5, r1, 0x110 +/* 801E0F1C 001DDE7C C0 7E 00 50 */ lfs f3, 0x50(r30) +/* 801E0F20 001DDE80 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801E0F24 001DDE84 C0 22 AD 70 */ lfs f1, lbl_805ACA90@sda21(r2) +/* 801E0F28 001DDE88 D0 01 01 10 */ stfs f0, 0x110(r1) +/* 801E0F2C 001DDE8C C0 42 AD 50 */ lfs f2, lbl_805ACA70@sda21(r2) +/* 801E0F30 001DDE90 D0 61 01 14 */ stfs f3, 0x114(r1) +/* 801E0F34 001DDE94 C0 62 AC D8 */ lfs f3, lbl_805AC9F8@sda21(r2) +/* 801E0F38 001DDE98 D0 81 01 18 */ stfs f4, 0x118(r1) +/* 801E0F3C 001DDE9C 4B FF AA E5 */ bl sub_801dba20 +/* 801E0F40 001DDEA0 48 00 01 3C */ b lbl_801E107C +/* 801E0F44 001DDEA4 38 00 00 01 */ li r0, 1 +/* 801E0F48 001DDEA8 38 61 04 34 */ addi r3, r1, 0x434 +/* 801E0F4C 001DDEAC 98 1E 07 C8 */ stb r0, 0x7c8(r30) +/* 801E0F50 001DDEB0 38 9E 00 34 */ addi r4, r30, 0x34 +/* 801E0F54 001DDEB4 48 13 1C 21 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801E0F58 001DDEB8 3C 80 80 3D */ lis r4, lbl_803D1CB8@ha +/* 801E0F5C 001DDEBC 38 61 01 00 */ addi r3, r1, 0x100 +/* 801E0F60 001DDEC0 38 84 1C B8 */ addi r4, r4, lbl_803D1CB8@l +/* 801E0F64 001DDEC4 38 C1 00 28 */ addi r6, r1, 0x28 +/* 801E0F68 001DDEC8 38 84 01 C2 */ addi r4, r4, 0x1c2 +/* 801E0F6C 001DDECC 38 A0 FF FF */ li r5, -1 +/* 801E0F70 001DDED0 48 15 D2 25 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator" +/* 801E0F74 001DDED4 80 9E 00 64 */ lwz r4, 0x64(r30) +/* 801E0F78 001DDED8 38 61 02 90 */ addi r3, r1, 0x290 +/* 801E0F7C 001DDEDC 38 A1 01 00 */ addi r5, r1, 0x100 +/* 801E0F80 001DDEE0 38 C0 00 00 */ li r6, 0 +/* 801E0F84 001DDEE4 80 84 00 10 */ lwz r4, 0x10(r4) +/* 801E0F88 001DDEE8 4B E4 B3 F9 */ bl "GetLocatorTransform__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>PC13CCharAnimTime" +/* 801E0F8C 001DDEEC 38 61 04 04 */ addi r3, r1, 0x404 +/* 801E0F90 001DDEF0 38 81 02 90 */ addi r4, r1, 0x290 +/* 801E0F94 001DDEF4 48 13 1B E1 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801E0F98 001DDEF8 38 61 01 00 */ addi r3, r1, 0x100 +/* 801E0F9C 001DDEFC 48 15 CB 45 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801E0FA0 001DDF00 80 BE 00 64 */ lwz r5, 0x64(r30) +/* 801E0FA4 001DDF04 38 61 02 00 */ addi r3, r1, 0x200 +/* 801E0FA8 001DDF08 38 81 00 F4 */ addi r4, r1, 0xf4 +/* 801E0FAC 001DDF0C C0 05 00 00 */ lfs f0, 0(r5) +/* 801E0FB0 001DDF10 D0 01 00 F4 */ stfs f0, 0xf4(r1) +/* 801E0FB4 001DDF14 C0 05 00 04 */ lfs f0, 4(r5) +/* 801E0FB8 001DDF18 D0 01 00 F8 */ stfs f0, 0xf8(r1) +/* 801E0FBC 001DDF1C C0 05 00 08 */ lfs f0, 8(r5) +/* 801E0FC0 001DDF20 D0 01 00 FC */ stfs f0, 0xfc(r1) +/* 801E0FC4 001DDF24 48 13 22 01 */ bl Scale__12CTransform4fFRC9CVector3f +/* 801E0FC8 001DDF28 38 61 02 30 */ addi r3, r1, 0x230 +/* 801E0FCC 001DDF2C 38 81 02 00 */ addi r4, r1, 0x200 +/* 801E0FD0 001DDF30 38 A1 04 04 */ addi r5, r1, 0x404 +/* 801E0FD4 001DDF34 48 13 19 7D */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 801E0FD8 001DDF38 38 61 02 60 */ addi r3, r1, 0x260 +/* 801E0FDC 001DDF3C 38 81 04 34 */ addi r4, r1, 0x434 +/* 801E0FE0 001DDF40 38 A1 02 30 */ addi r5, r1, 0x230 +/* 801E0FE4 001DDF44 48 13 19 6D */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 801E0FE8 001DDF48 38 61 03 D4 */ addi r3, r1, 0x3d4 +/* 801E0FEC 001DDF4C 38 81 02 60 */ addi r4, r1, 0x260 +/* 801E0FF0 001DDF50 48 13 1B 85 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801E0FF4 001DDF54 C0 41 04 00 */ lfs f2, 0x400(r1) +/* 801E0FF8 001DDF58 C0 21 03 F0 */ lfs f1, 0x3f0(r1) +/* 801E0FFC 001DDF5C C0 01 03 E0 */ lfs f0, 0x3e0(r1) +/* 801E1000 001DDF60 D0 1E 07 CC */ stfs f0, 0x7cc(r30) +/* 801E1004 001DDF64 D0 3E 07 D0 */ stfs f1, 0x7d0(r30) +/* 801E1008 001DDF68 D0 5E 07 D4 */ stfs f2, 0x7d4(r30) +/* 801E100C 001DDF6C 48 00 00 70 */ b lbl_801E107C +/* 801E1010 001DDF70 38 00 00 00 */ li r0, 0 +/* 801E1014 001DDF74 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801E1018 001DDF78 98 1E 07 C8 */ stb r0, 0x7c8(r30) +/* 801E101C 001DDF7C C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) +/* 801E1020 001DDF80 D0 1E 07 CC */ stfs f0, 0x7cc(r30) +/* 801E1024 001DDF84 C0 03 00 04 */ lfs f0, 4(r3) +/* 801E1028 001DDF88 D0 1E 07 D0 */ stfs f0, 0x7d0(r30) +/* 801E102C 001DDF8C C0 03 00 08 */ lfs f0, 8(r3) +/* 801E1030 001DDF90 D0 1E 07 D4 */ stfs f0, 0x7d4(r30) +/* 801E1034 001DDF94 48 00 00 48 */ b lbl_801E107C +/* 801E1038 001DDF98 80 1E 06 44 */ lwz r0, 0x644(r30) +/* 801E103C 001DDF9C 2C 00 00 01 */ cmpwi r0, 1 +/* 801E1040 001DDFA0 40 82 00 3C */ bne lbl_801E107C +/* 801E1044 001DDFA4 38 00 00 01 */ li r0, 1 +/* 801E1048 001DDFA8 98 1E 09 3C */ stb r0, 0x93c(r30) +/* 801E104C 001DDFAC 98 1E 06 88 */ stb r0, 0x688(r30) +/* 801E1050 001DDFB0 48 00 00 2C */ b lbl_801E107C +/* 801E1054 001DDFB4 38 00 00 00 */ li r0, 0 +/* 801E1058 001DDFB8 98 1E 09 3C */ stb r0, 0x93c(r30) +/* 801E105C 001DDFBC 48 00 00 20 */ b lbl_801E107C +/* 801E1060 001DDFC0 7F E5 FB 78 */ mr r5, r31 +/* 801E1064 001DDFC4 38 80 00 02 */ li r4, 2 +/* 801E1068 001DDFC8 4B FF A4 F9 */ bl sub_801db560 +/* 801E106C 001DDFCC 48 00 00 10 */ b lbl_801E107C +/* 801E1070 001DDFD0 4B E9 7E 41 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +/* 801E1074 001DDFD4 48 00 00 08 */ b lbl_801E107C +/* 801E1078 001DDFD8 4B E9 7E 39 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +lbl_801E107C: +/* 801E107C 001DDFDC E3 E1 05 68 */ psq_l f31, 1384(r1), 0, qr0 +/* 801E1080 001DDFE0 CB E1 05 60 */ lfd f31, 0x560(r1) +/* 801E1084 001DDFE4 E3 C1 05 58 */ psq_l f30, 1368(r1), 0, qr0 +/* 801E1088 001DDFE8 CB C1 05 50 */ lfd f30, 0x550(r1) +/* 801E108C 001DDFEC E3 A1 05 48 */ psq_l f29, 1352(r1), 0, qr0 +/* 801E1090 001DDFF0 CB A1 05 40 */ lfd f29, 0x540(r1) +/* 801E1094 001DDFF4 E3 81 05 38 */ psq_l f28, 1336(r1), 0, qr0 +/* 801E1098 001DDFF8 CB 81 05 30 */ lfd f28, 0x530(r1) +/* 801E109C 001DDFFC E3 61 05 28 */ psq_l f27, 1320(r1), 0, qr0 +/* 801E10A0 001DE000 CB 61 05 20 */ lfd f27, 0x520(r1) +/* 801E10A4 001DE004 BA E1 04 FC */ lmw r23, 0x4fc(r1) +/* 801E10A8 001DE008 80 01 05 74 */ lwz r0, 0x574(r1) +/* 801E10AC 001DE00C 7C 08 03 A6 */ mtlr r0 +/* 801E10B0 001DE010 38 21 05 70 */ addi r1, r1, 0x570 +/* 801E10B4 001DE014 4E 80 00 20 */ blr + +.global AcceptScriptMsg__8CThardusF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__8CThardusF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 801E10B8 001DE018 94 21 FB A0 */ stwu r1, -0x460(r1) +/* 801E10BC 001DE01C 7C 08 02 A6 */ mflr r0 +/* 801E10C0 001DE020 90 01 04 64 */ stw r0, 0x464(r1) +/* 801E10C4 001DE024 DB E1 04 50 */ stfd f31, 0x450(r1) +/* 801E10C8 001DE028 F3 E1 04 58 */ psq_st f31, 1112(r1), 0, qr0 +/* 801E10CC 001DE02C BE 41 04 18 */ stmw r18, 0x418(r1) +/* 801E10D0 001DE030 7C B4 2B 78 */ mr r20, r5 +/* 801E10D4 001DE034 7C 7F 1B 78 */ mr r31, r3 +/* 801E10D8 001DE038 A0 05 00 00 */ lhz r0, 0(r5) +/* 801E10DC 001DE03C 7C 92 23 78 */ mr r18, r4 +/* 801E10E0 001DE040 7C DE 33 78 */ mr r30, r6 +/* 801E10E4 001DE044 38 A1 00 B0 */ addi r5, r1, 0xb0 +/* 801E10E8 001DE048 B0 01 00 B0 */ sth r0, 0xb0(r1) +/* 801E10EC 001DE04C 4B E9 BA 8D */ bl AcceptScriptMsg__10CPatternedF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 801E10F0 001DE050 38 12 FF F6 */ addi r0, r18, -10 +/* 801E10F4 001DE054 28 00 00 1F */ cmplwi r0, 0x1f +/* 801E10F8 001DE058 41 81 10 D8 */ bgt lbl_801E21D0 +/* 801E10FC 001DE05C 3C 60 80 3E */ lis r3, lbl_803E5FF4@ha +/* 801E1100 001DE060 54 00 10 3A */ slwi r0, r0, 2 +/* 801E1104 001DE064 38 63 5F F4 */ addi r3, r3, lbl_803E5FF4@l +/* 801E1108 001DE068 7C 03 00 2E */ lwzx r0, r3, r0 +/* 801E110C 001DE06C 7C 09 03 A6 */ mtctr r0 +/* 801E1110 001DE070 4E 80 04 20 */ bctr +/* 801E1114 001DE074 88 1F 05 C8 */ lbz r0, 0x5c8(r31) +/* 801E1118 001DE078 28 00 00 00 */ cmplwi r0, 0 +/* 801E111C 001DE07C 40 82 10 B4 */ bne lbl_801E21D0 +/* 801E1120 001DE080 38 00 00 01 */ li r0, 1 +/* 801E1124 001DE084 98 1F 05 C8 */ stb r0, 0x5c8(r31) +/* 801E1128 001DE088 48 00 10 A8 */ b lbl_801E21D0 +/* 801E112C 001DE08C 83 5F 05 D0 */ lwz r26, 0x5d0(r31) +/* 801E1130 001DE090 38 7F 06 10 */ addi r3, r31, 0x610 +/* 801E1134 001DE094 7F 52 D3 78 */ mr r18, r26 +/* 801E1138 001DE098 7F 44 D3 78 */ mr r4, r26 +/* 801E113C 001DE09C 4B E2 B2 CD */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" +/* 801E1140 001DE0A0 7E 44 93 78 */ mr r4, r18 +/* 801E1144 001DE0A4 38 7F 06 B0 */ addi r3, r31, 0x6b0 +/* 801E1148 001DE0A8 4B EC 0F 21 */ bl sub_800a2068 +/* 801E114C 001DE0AC 7E 44 93 78 */ mr r4, r18 +/* 801E1150 001DE0B0 38 7F 06 C0 */ addi r3, r31, 0x6c0 +/* 801E1154 001DE0B4 4B E2 B2 B5 */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" +/* 801E1158 001DE0B8 7E 44 93 78 */ mr r4, r18 +/* 801E115C 001DE0BC 38 7F 09 0C */ addi r3, r31, 0x90c +/* 801E1160 001DE0C0 4B E7 CC 99 */ bl "reserve__Q24rstl36vectorFi" +/* 801E1164 001DE0C4 3C 60 80 3D */ lis r3, lbl_803D1CB8@ha +/* 801E1168 001DE0C8 3B 01 02 3C */ addi r24, r1, 0x23c +/* 801E116C 001DE0CC 3B 3A FF FF */ addi r25, r26, -1 +/* 801E1170 001DE0D0 3B 80 00 00 */ li r28, 0 +/* 801E1174 001DE0D4 3B A3 1C B8 */ addi r29, r3, lbl_803D1CB8@l +/* 801E1178 001DE0D8 3B 60 00 00 */ li r27, 0 +/* 801E117C 001DE0DC 48 00 05 14 */ b lbl_801E1690 +lbl_801E1180: +/* 801E1180 001DE0E0 7C 1C C8 40 */ cmplw r28, r25 +/* 801E1184 001DE0E4 40 82 00 14 */ bne lbl_801E1198 +/* 801E1188 001DE0E8 C0 22 AC E0 */ lfs f1, lbl_805ACA00@sda21(r2) +/* 801E118C 001DE0EC C0 1F 06 A8 */ lfs f0, 0x6a8(r31) +/* 801E1190 001DE0F0 EF E1 00 32 */ fmuls f31, f1, f0 +/* 801E1194 001DE0F4 48 00 00 08 */ b lbl_801E119C +lbl_801E1198: +/* 801E1198 001DE0F8 C3 FF 06 A8 */ lfs f31, 0x6a8(r31) +lbl_801E119C: +/* 801E119C 001DE0FC 38 61 01 C4 */ addi r3, r1, 0x1c4 +/* 801E11A0 001DE100 38 9D 00 DA */ addi r4, r29, 0xda +/* 801E11A4 001DE104 38 C1 00 34 */ addi r6, r1, 0x34 +/* 801E11A8 001DE108 38 A0 FF FF */ li r5, -1 +/* 801E11AC 001DE10C 48 15 CF E9 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator" +/* 801E11B0 001DE110 7F C4 F3 78 */ mr r4, r30 +/* 801E11B4 001DE114 38 61 00 AC */ addi r3, r1, 0xac +/* 801E11B8 001DE118 4B E6 BF 25 */ bl AllocateUniqueId__13CStateManagerFv +/* 801E11BC 001DE11C A0 01 00 AC */ lhz r0, 0xac(r1) +/* 801E11C0 001DE120 38 9D 01 B3 */ addi r4, r29, 0x1b3 +/* 801E11C4 001DE124 3A E0 00 00 */ li r23, 0 +/* 801E11C8 001DE128 3A C0 00 00 */ li r22, 0 +/* 801E11CC 001DE12C B0 01 00 CC */ sth r0, 0xcc(r1) +/* 801E11D0 001DE130 3A 40 00 00 */ li r18, 0 +/* 801E11D4 001DE134 38 60 03 48 */ li r3, 0x348 +/* 801E11D8 001DE138 38 A0 00 00 */ li r5, 0 +/* 801E11DC 001DE13C 48 13 46 91 */ bl __nw__FUlPCcPCc +/* 801E11E0 001DE140 7C 75 1B 79 */ or. r21, r3, r3 +/* 801E11E4 001DE144 41 82 02 00 */ beq lbl_801E13E4 +/* 801E11E8 001DE148 81 3F 05 E8 */ lwz r9, 0x5e8(r31) +/* 801E11EC 001DE14C 38 00 00 0F */ li r0, 0xf +/* 801E11F0 001DE150 81 01 01 08 */ lwz r8, 0x108(r1) +/* 801E11F4 001DE154 50 08 E0 06 */ rlwimi r8, r0, 0x1c, 0, 3 +/* 801E11F8 001DE158 38 60 00 00 */ li r3, 0 +/* 801E11FC 001DE15C C0 22 AC D8 */ lfs f1, lbl_805AC9F8@sda21(r2) +/* 801E1200 001DE160 91 01 01 08 */ stw r8, 0x108(r1) +/* 801E1204 001DE164 50 68 D9 08 */ rlwimi r8, r3, 0x1b, 4, 4 +/* 801E1208 001DE168 C0 02 AC DC */ lfs f0, lbl_805AC9FC@sda21(r2) +/* 801E120C 001DE16C 38 00 FF FF */ li r0, -1 +/* 801E1210 001DE170 80 ED 92 00 */ lwz r7, lbl_805A7DC0@sda21(r13) +/* 801E1214 001DE174 FC 40 08 90 */ fmr f2, f1 +/* 801E1218 001DE178 80 CD 92 04 */ lwz r6, lbl_805A7DC4@sda21(r13) +/* 801E121C 001DE17C FC 60 08 90 */ fmr f3, f1 +/* 801E1220 001DE180 80 AD 91 F8 */ lwz r5, lbl_805A7DB8@sda21(r13) +/* 801E1224 001DE184 FC 80 08 90 */ fmr f4, f1 +/* 801E1228 001DE188 80 8D 91 FC */ lwz r4, lbl_805A7DBC@sda21(r13) +/* 801E122C 001DE18C 91 01 01 08 */ stw r8, 0x108(r1) +/* 801E1230 001DE190 50 68 D1 4A */ rlwimi r8, r3, 0x1a, 5, 5 +/* 801E1234 001DE194 7E 89 DA 14 */ add r20, r9, r27 +/* 801E1238 001DE198 38 61 01 00 */ addi r3, r1, 0x100 +/* 801E123C 001DE19C 91 01 01 08 */ stw r8, 0x108(r1) +/* 801E1240 001DE1A0 90 E1 01 70 */ stw r7, 0x170(r1) +/* 801E1244 001DE1A4 90 C1 01 74 */ stw r6, 0x174(r1) +/* 801E1248 001DE1A8 90 A1 01 68 */ stw r5, 0x168(r1) +/* 801E124C 001DE1AC 90 81 01 6C */ stw r4, 0x16c(r1) +/* 801E1250 001DE1B0 90 01 01 04 */ stw r0, 0x104(r1) +/* 801E1254 001DE1B4 D0 01 01 90 */ stfs f0, 0x190(r1) +/* 801E1258 001DE1B8 D0 01 01 94 */ stfs f0, 0x194(r1) +/* 801E125C 001DE1BC D0 01 01 98 */ stfs f0, 0x198(r1) +/* 801E1260 001DE1C0 48 18 21 8D */ bl __ct__6CColorFffff +/* 801E1264 001DE1C4 38 80 FF FF */ li r4, -1 +/* 801E1268 001DE1C8 C0 22 AC DC */ lfs f1, lbl_805AC9FC@sda21(r2) +/* 801E126C 001DE1CC 90 81 00 08 */ stw r4, 8(r1) +/* 801E1270 001DE1D0 7C 66 1B 78 */ mr r6, r3 +/* 801E1274 001DE1D4 38 00 00 00 */ li r0, 0 +/* 801E1278 001DE1D8 FC 40 08 90 */ fmr f2, f1 +/* 801E127C 001DE1DC 90 81 00 0C */ stw r4, 0xc(r1) +/* 801E1280 001DE1E0 FC 60 08 90 */ fmr f3, f1 +/* 801E1284 001DE1E4 38 61 02 90 */ addi r3, r1, 0x290 +/* 801E1288 001DE1E8 39 41 01 90 */ addi r10, r1, 0x190 +/* 801E128C 001DE1EC 90 01 00 10 */ stw r0, 0x10(r1) +/* 801E1290 001DE1F0 38 80 00 00 */ li r4, 0 +/* 801E1294 001DE1F4 38 A0 FF FF */ li r5, -1 +/* 801E1298 001DE1F8 90 01 00 14 */ stw r0, 0x14(r1) +/* 801E129C 001DE1FC 38 E0 00 01 */ li r7, 1 +/* 801E12A0 001DE200 39 00 00 02 */ li r8, 2 +/* 801E12A4 001DE204 39 20 00 00 */ li r9, 0 +/* 801E12A8 001DE208 4B F2 54 51 */ bl __ct__16CLightParametersFbfQ216CLightParameters19EShadowTessellationffRC6CColorbQ216CLightParameters21EWorldLightingOptionsQ216CLightParameters26ELightRecalculationOptionsRC9CVector3fii +/* 801E12AC 001DE20C C0 22 AC DC */ lfs f1, lbl_805AC9FC@sda21(r2) +/* 801E12B0 001DE210 38 00 00 00 */ li r0, 0 +/* 801E12B4 001DE214 90 01 00 08 */ stw r0, 8(r1) +/* 801E12B8 001DE218 38 61 03 AC */ addi r3, r1, 0x3ac +/* 801E12BC 001DE21C FC 40 08 90 */ fmr f2, f1 +/* 801E12C0 001DE220 C0 62 AC D8 */ lfs f3, lbl_805AC9F8@sda21(r2) +/* 801E12C4 001DE224 90 01 00 0C */ stw r0, 0xc(r1) +/* 801E12C8 001DE228 38 81 02 90 */ addi r4, r1, 0x290 +/* 801E12CC 001DE22C 38 A1 01 04 */ addi r5, r1, 0x104 +/* 801E12D0 001DE230 38 C1 01 68 */ addi r6, r1, 0x168 +/* 801E12D4 001DE234 38 E1 01 70 */ addi r7, r1, 0x170 +/* 801E12D8 001DE238 39 01 01 08 */ addi r8, r1, 0x108 +/* 801E12DC 001DE23C 3A E0 00 01 */ li r23, 1 +/* 801E12E0 001DE240 39 20 00 01 */ li r9, 1 +/* 801E12E4 001DE244 39 40 00 01 */ li r10, 1 +/* 801E12E8 001DE248 4B F2 55 E1 */ bl sub_801068c8 +/* 801E12EC 001DE24C C0 02 AC DC */ lfs f0, lbl_805AC9FC@sda21(r2) +/* 801E12F0 001DE250 3C 60 80 57 */ lis r3, lbl_8056D410@ha +/* 801E12F4 001DE254 38 A3 D4 10 */ addi r5, r3, lbl_8056D410@l +/* 801E12F8 001DE258 D3 E1 01 60 */ stfs f31, 0x160(r1) +/* 801E12FC 001DE25C 80 0D A3 88 */ lwz r0, lbl_805A8F48@sda21(r13) +/* 801E1300 001DE260 38 61 02 38 */ addi r3, r1, 0x238 +/* 801E1304 001DE264 D0 01 01 64 */ stfs f0, 0x164(r1) +/* 801E1308 001DE268 38 81 00 F8 */ addi r4, r1, 0xf8 +/* 801E130C 001DE26C 38 C1 00 FC */ addi r6, r1, 0xfc +/* 801E1310 001DE270 3A C0 00 01 */ li r22, 1 +/* 801E1314 001DE274 80 FF 05 D8 */ lwz r7, 0x5d8(r31) +/* 801E1318 001DE278 90 01 00 FC */ stw r0, 0xfc(r1) +/* 801E131C 001DE27C 7E 67 DA 14 */ add r19, r7, r27 +/* 801E1320 001DE280 80 1F 00 04 */ lwz r0, 4(r31) +/* 801E1324 001DE284 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 801E1328 001DE288 90 01 00 F8 */ stw r0, 0xf8(r1) +/* 801E132C 001DE28C 4B E7 01 59 */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" +/* 801E1330 001DE290 A0 81 00 CC */ lhz r4, 0xcc(r1) +/* 801E1334 001DE294 39 60 00 02 */ li r11, 2 +/* 801E1338 001DE298 38 00 00 01 */ li r0, 1 +/* 801E133C 001DE29C 38 61 03 44 */ addi r3, r1, 0x344 +/* 801E1340 001DE2A0 B0 81 00 A8 */ sth r4, 0xa8(r1) +/* 801E1344 001DE2A4 3A 40 00 01 */ li r18, 1 +/* 801E1348 001DE2A8 38 80 00 01 */ li r4, 1 +/* 801E134C 001DE2AC 38 A0 00 02 */ li r5, 2 +/* 801E1350 001DE2B0 91 61 00 08 */ stw r11, 8(r1) +/* 801E1354 001DE2B4 38 C0 00 01 */ li r6, 1 +/* 801E1358 001DE2B8 38 E0 00 01 */ li r7, 1 +/* 801E135C 001DE2BC 39 00 00 01 */ li r8, 1 +/* 801E1360 001DE2C0 91 61 00 0C */ stw r11, 0xc(r1) +/* 801E1364 001DE2C4 39 20 00 01 */ li r9, 1 +/* 801E1368 001DE2C8 39 40 00 01 */ li r10, 1 +/* 801E136C 001DE2CC 91 61 00 10 */ stw r11, 0x10(r1) +/* 801E1370 001DE2D0 91 61 00 14 */ stw r11, 0x14(r1) +/* 801E1374 001DE2D4 91 61 00 18 */ stw r11, 0x18(r1) +/* 801E1378 001DE2D8 91 61 00 1C */ stw r11, 0x1c(r1) +/* 801E137C 001DE2DC 91 61 00 20 */ stw r11, 0x20(r1) +/* 801E1380 001DE2E0 91 61 00 24 */ stw r11, 0x24(r1) +/* 801E1384 001DE2E4 90 01 00 28 */ stw r0, 0x28(r1) +/* 801E1388 001DE2E8 4B F2 15 AD */ bl __ct__20CDamageVulnerabilityF14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability15EDeflectionType +/* 801E138C 001DE2EC 90 61 00 08 */ stw r3, 8(r1) +/* 801E1390 001DE2F0 38 1F 00 68 */ addi r0, r31, 0x68 +/* 801E1394 001DE2F4 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 801E1398 001DE2F8 38 A1 03 AC */ addi r5, r1, 0x3ac +/* 801E139C 001DE2FC 90 01 00 0C */ stw r0, 0xc(r1) +/* 801E13A0 001DE300 39 03 66 70 */ addi r8, r3, skIdentity4f@l +/* 801E13A4 001DE304 38 00 00 00 */ li r0, 0 +/* 801E13A8 001DE308 C0 22 AC DC */ lfs f1, lbl_805AC9FC@sda21(r2) +/* 801E13AC 001DE30C 80 9F 06 30 */ lwz r4, 0x630(r31) +/* 801E13B0 001DE310 7E A3 AB 78 */ mr r3, r21 +/* 801E13B4 001DE314 7E 69 9B 78 */ mr r9, r19 +/* 801E13B8 001DE318 38 C1 01 C4 */ addi r6, r1, 0x1c4 +/* 801E13BC 001DE31C 90 81 00 10 */ stw r4, 0x10(r1) +/* 801E13C0 001DE320 38 81 00 A8 */ addi r4, r1, 0xa8 +/* 801E13C4 001DE324 38 E1 02 38 */ addi r7, r1, 0x238 +/* 801E13C8 001DE328 39 41 01 60 */ addi r10, r1, 0x160 +/* 801E13CC 001DE32C 90 A1 00 14 */ stw r5, 0x14(r1) +/* 801E13D0 001DE330 38 A0 00 01 */ li r5, 1 +/* 801E13D4 001DE334 92 81 00 18 */ stw r20, 0x18(r1) +/* 801E13D8 001DE338 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801E13DC 001DE33C 48 00 22 CD */ bl "__ct__16CDestroyableRockF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDatafRC11CHealthInfoRC20CDamageVulnerabilityRC13CMaterialListUiRC16CActorParametersRC10CModelData" +/* 801E13E0 001DE340 7C 75 1B 78 */ mr r21, r3 +lbl_801E13E4: +/* 801E13E4 001DE344 7E 40 07 75 */ extsb. r0, r18 +/* 801E13E8 001DE348 7E B3 AB 78 */ mr r19, r21 +/* 801E13EC 001DE34C 41 82 00 4C */ beq lbl_801E1438 +/* 801E13F0 001DE350 28 18 00 00 */ cmplwi r24, 0 +/* 801E13F4 001DE354 41 82 00 44 */ beq lbl_801E1438 +/* 801E13F8 001DE358 80 01 02 40 */ lwz r0, 0x240(r1) +/* 801E13FC 001DE35C 80 61 02 48 */ lwz r3, 0x248(r1) +/* 801E1400 001DE360 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801E1404 001DE364 90 61 00 D4 */ stw r3, 0xd4(r1) +/* 801E1408 001DE368 7C 64 1B 78 */ mr r4, r3 +/* 801E140C 001DE36C 7C 03 02 14 */ add r0, r3, r0 +/* 801E1410 001DE370 90 61 00 D0 */ stw r3, 0xd0(r1) +/* 801E1414 001DE374 90 01 00 DC */ stw r0, 0xdc(r1) +/* 801E1418 001DE378 90 01 00 D8 */ stw r0, 0xd8(r1) +/* 801E141C 001DE37C 48 00 00 08 */ b lbl_801E1424 +lbl_801E1420: +/* 801E1420 001DE380 38 84 00 0C */ addi r4, r4, 0xc +lbl_801E1424: +/* 801E1424 001DE384 7C 04 00 40 */ cmplw r4, r0 +/* 801E1428 001DE388 40 82 FF F8 */ bne lbl_801E1420 +/* 801E142C 001DE38C 28 03 00 00 */ cmplwi r3, 0 +/* 801E1430 001DE390 41 82 00 08 */ beq lbl_801E1438 +/* 801E1434 001DE394 48 13 44 FD */ bl Free__7CMemoryFPCv +lbl_801E1438: +/* 801E1438 001DE398 7E C0 07 75 */ extsb. r0, r22 +/* 801E143C 001DE39C 41 82 00 10 */ beq lbl_801E144C +/* 801E1440 001DE3A0 38 61 03 AC */ addi r3, r1, 0x3ac +/* 801E1444 001DE3A4 38 80 FF FF */ li r4, -1 +/* 801E1448 001DE3A8 4B F2 51 C1 */ bl __dt__16CActorParametersFv +lbl_801E144C: +/* 801E144C 001DE3AC 7E E0 07 75 */ extsb. r0, r23 +/* 801E1450 001DE3B0 41 82 00 10 */ beq lbl_801E1460 +/* 801E1454 001DE3B4 38 61 02 90 */ addi r3, r1, 0x290 +/* 801E1458 001DE3B8 38 80 FF FF */ li r4, -1 +/* 801E145C 001DE3BC 4B F2 51 AD */ bl __dt__16CActorParametersFv +lbl_801E1460: +/* 801E1460 001DE3C0 7F C3 F3 78 */ mr r3, r30 +/* 801E1464 001DE3C4 7E 64 9B 78 */ mr r4, r19 +/* 801E1468 001DE3C8 4B E6 B8 8D */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +/* 801E146C 001DE3CC 80 1F 06 14 */ lwz r0, 0x614(r31) +/* 801E1470 001DE3D0 80 BF 06 18 */ lwz r5, 0x618(r31) +/* 801E1474 001DE3D4 7C 00 28 00 */ cmpw r0, r5 +/* 801E1478 001DE3D8 41 80 00 1C */ blt lbl_801E1494 +/* 801E147C 001DE3DC 2C 05 00 00 */ cmpwi r5, 0 +/* 801E1480 001DE3E0 38 7F 06 10 */ addi r3, r31, 0x610 +/* 801E1484 001DE3E4 38 80 00 04 */ li r4, 4 +/* 801E1488 001DE3E8 41 82 00 08 */ beq lbl_801E1490 +/* 801E148C 001DE3EC 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801E1490: +/* 801E1490 001DE3F0 4B E2 AF 79 */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" +lbl_801E1494: +/* 801E1494 001DE3F4 80 1F 06 14 */ lwz r0, 0x614(r31) +/* 801E1498 001DE3F8 80 7F 06 1C */ lwz r3, 0x61c(r31) +/* 801E149C 001DE3FC 54 00 08 3C */ slwi r0, r0, 1 +/* 801E14A0 001DE400 7C 63 02 15 */ add. r3, r3, r0 +/* 801E14A4 001DE404 41 82 00 0C */ beq lbl_801E14B0 +/* 801E14A8 001DE408 A0 01 00 CC */ lhz r0, 0xcc(r1) +/* 801E14AC 001DE40C B0 03 00 00 */ sth r0, 0(r3) +lbl_801E14B0: +/* 801E14B0 001DE410 80 7F 06 14 */ lwz r3, 0x614(r31) +/* 801E14B4 001DE414 38 03 00 01 */ addi r0, r3, 1 +/* 801E14B8 001DE418 90 1F 06 14 */ stw r0, 0x614(r31) +/* 801E14BC 001DE41C 80 1F 06 B4 */ lwz r0, 0x6b4(r31) +/* 801E14C0 001DE420 80 BF 06 B8 */ lwz r5, 0x6b8(r31) +/* 801E14C4 001DE424 7C 00 28 00 */ cmpw r0, r5 +/* 801E14C8 001DE428 41 80 00 1C */ blt lbl_801E14E4 +/* 801E14CC 001DE42C 2C 05 00 00 */ cmpwi r5, 0 +/* 801E14D0 001DE430 38 7F 06 B0 */ addi r3, r31, 0x6b0 +/* 801E14D4 001DE434 38 80 00 04 */ li r4, 4 +/* 801E14D8 001DE438 41 82 00 08 */ beq lbl_801E14E0 +/* 801E14DC 001DE43C 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801E14E0: +/* 801E14E0 001DE440 4B EC 0B 89 */ bl sub_800a2068 +lbl_801E14E4: +/* 801E14E4 001DE444 80 7F 06 BC */ lwz r3, 0x6bc(r31) +/* 801E14E8 001DE448 80 1F 06 B4 */ lwz r0, 0x6b4(r31) +/* 801E14EC 001DE44C 7C 63 02 15 */ add. r3, r3, r0 +/* 801E14F0 001DE450 41 82 00 0C */ beq lbl_801E14FC +/* 801E14F4 001DE454 88 0D 92 08 */ lbz r0, lbl_805A7DC8@sda21(r13) +/* 801E14F8 001DE458 98 03 00 00 */ stb r0, 0(r3) +lbl_801E14FC: +/* 801E14FC 001DE45C 80 BF 06 B4 */ lwz r5, 0x6b4(r31) +/* 801E1500 001DE460 7F C4 F3 78 */ mr r4, r30 +/* 801E1504 001DE464 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 801E1508 001DE468 38 05 00 01 */ addi r0, r5, 1 +/* 801E150C 001DE46C 90 1F 06 B4 */ stw r0, 0x6b4(r31) +/* 801E1510 001DE470 4B E6 BB CD */ bl AllocateUniqueId__13CStateManagerFv +/* 801E1514 001DE474 A0 01 00 A4 */ lhz r0, 0xa4(r1) +/* 801E1518 001DE478 38 61 01 B4 */ addi r3, r1, 0x1b4 +/* 801E151C 001DE47C 38 9D 00 DA */ addi r4, r29, 0xda +/* 801E1520 001DE480 38 C1 00 30 */ addi r6, r1, 0x30 +/* 801E1524 001DE484 B0 01 00 C8 */ sth r0, 0xc8(r1) +/* 801E1528 001DE488 38 A0 FF FF */ li r5, -1 +/* 801E152C 001DE48C 48 15 CC 69 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator" +/* 801E1530 001DE490 38 9D 01 B3 */ addi r4, r29, 0x1b3 +/* 801E1534 001DE494 38 60 01 48 */ li r3, 0x148 +/* 801E1538 001DE498 38 A0 00 00 */ li r5, 0 +/* 801E153C 001DE49C 48 13 43 31 */ bl __nw__FUlPCcPCc +/* 801E1540 001DE4A0 7C 73 1B 79 */ or. r19, r3, r3 +/* 801E1544 001DE4A4 41 82 00 74 */ beq lbl_801E15B8 +/* 801E1548 001DE4A8 A0 61 00 CC */ lhz r3, 0xcc(r1) +/* 801E154C 001DE4AC A0 01 00 C8 */ lhz r0, 0xc8(r1) +/* 801E1550 001DE4B0 B0 61 00 A0 */ sth r3, 0xa0(r1) +/* 801E1554 001DE4B4 80 7F 00 04 */ lwz r3, 4(r31) +/* 801E1558 001DE4B8 90 61 00 EC */ stw r3, 0xec(r1) +/* 801E155C 001DE4BC 90 61 00 F0 */ stw r3, 0xf0(r1) +/* 801E1560 001DE4C0 B0 01 00 9C */ sth r0, 0x9c(r1) +/* 801E1564 001DE4C4 48 16 8A 31 */ bl Blue__6CColorFv +/* 801E1568 001DE4C8 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801E156C 001DE4CC 7C 65 1B 78 */ mr r5, r3 +/* 801E1570 001DE4D0 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 801E1574 001DE4D4 38 61 02 F4 */ addi r3, r1, 0x2f4 +/* 801E1578 001DE4D8 48 12 4E BD */ bl BuildPoint__6CLightFRC9CVector3fRC6CColor +/* 801E157C 001DE4DC 38 00 00 00 */ li r0, 0 +/* 801E1580 001DE4E0 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 801E1584 001DE4E4 90 01 00 08 */ stw r0, 8(r1) +/* 801E1588 001DE4E8 39 03 66 70 */ addi r8, r3, skIdentity4f@l +/* 801E158C 001DE4EC C0 22 AC DC */ lfs f1, lbl_805AC9FC@sda21(r2) +/* 801E1590 001DE4F0 7E 63 9B 78 */ mr r3, r19 +/* 801E1594 001DE4F4 90 01 00 0C */ stw r0, 0xc(r1) +/* 801E1598 001DE4F8 38 81 00 9C */ addi r4, r1, 0x9c +/* 801E159C 001DE4FC 38 A1 00 F0 */ addi r5, r1, 0xf0 +/* 801E15A0 001DE500 38 E1 01 B4 */ addi r7, r1, 0x1b4 +/* 801E15A4 001DE504 39 21 00 A0 */ addi r9, r1, 0xa0 +/* 801E15A8 001DE508 39 41 02 F4 */ addi r10, r1, 0x2f4 +/* 801E15AC 001DE50C 38 C0 00 00 */ li r6, 0 +/* 801E15B0 001DE510 4B ED 42 75 */ bl "__ct__10CGameLightF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC12CTransform4f9TUniqueIdRC6CLightUiUif" +/* 801E15B4 001DE514 7C 73 1B 78 */ mr r19, r3 +lbl_801E15B8: +/* 801E15B8 001DE518 7E 63 9B 78 */ mr r3, r19 +/* 801E15BC 001DE51C 38 80 00 00 */ li r4, 0 +/* 801E15C0 001DE520 81 93 00 00 */ lwz r12, 0(r19) +/* 801E15C4 001DE524 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801E15C8 001DE528 7D 89 03 A6 */ mtctr r12 +/* 801E15CC 001DE52C 4E 80 04 21 */ bctrl +/* 801E15D0 001DE530 7F C3 F3 78 */ mr r3, r30 +/* 801E15D4 001DE534 7E 64 9B 78 */ mr r4, r19 +/* 801E15D8 001DE538 4B E6 B5 3D */ bl AddObject__13CStateManagerFR7CEntity +/* 801E15DC 001DE53C 80 1F 06 C4 */ lwz r0, 0x6c4(r31) +/* 801E15E0 001DE540 80 BF 06 C8 */ lwz r5, 0x6c8(r31) +/* 801E15E4 001DE544 7C 00 28 00 */ cmpw r0, r5 +/* 801E15E8 001DE548 41 80 00 1C */ blt lbl_801E1604 +/* 801E15EC 001DE54C 2C 05 00 00 */ cmpwi r5, 0 +/* 801E15F0 001DE550 38 7F 06 C0 */ addi r3, r31, 0x6c0 +/* 801E15F4 001DE554 38 80 00 04 */ li r4, 4 +/* 801E15F8 001DE558 41 82 00 08 */ beq lbl_801E1600 +/* 801E15FC 001DE55C 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801E1600: +/* 801E1600 001DE560 4B E2 AE 09 */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" +lbl_801E1604: +/* 801E1604 001DE564 80 1F 06 C4 */ lwz r0, 0x6c4(r31) +/* 801E1608 001DE568 80 7F 06 CC */ lwz r3, 0x6cc(r31) +/* 801E160C 001DE56C 54 00 08 3C */ slwi r0, r0, 1 +/* 801E1610 001DE570 7C 63 02 15 */ add. r3, r3, r0 +/* 801E1614 001DE574 41 82 00 0C */ beq lbl_801E1620 +/* 801E1618 001DE578 A0 01 00 C8 */ lhz r0, 0xc8(r1) +/* 801E161C 001DE57C B0 03 00 00 */ sth r0, 0(r3) +lbl_801E1620: +/* 801E1620 001DE580 80 7F 06 C4 */ lwz r3, 0x6c4(r31) +/* 801E1624 001DE584 38 03 00 01 */ addi r0, r3, 1 +/* 801E1628 001DE588 90 1F 06 C4 */ stw r0, 0x6c4(r31) +/* 801E162C 001DE58C 80 1F 09 10 */ lwz r0, 0x910(r31) +/* 801E1630 001DE590 80 BF 09 14 */ lwz r5, 0x914(r31) +/* 801E1634 001DE594 7C 00 28 00 */ cmpw r0, r5 +/* 801E1638 001DE598 41 80 00 1C */ blt lbl_801E1654 +/* 801E163C 001DE59C 2C 05 00 00 */ cmpwi r5, 0 +/* 801E1640 001DE5A0 38 7F 09 0C */ addi r3, r31, 0x90c +/* 801E1644 001DE5A4 38 80 00 04 */ li r4, 4 +/* 801E1648 001DE5A8 41 82 00 08 */ beq lbl_801E1650 +/* 801E164C 001DE5AC 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801E1650: +/* 801E1650 001DE5B0 4B E7 C7 A9 */ bl "reserve__Q24rstl36vectorFi" +lbl_801E1654: +/* 801E1654 001DE5B4 80 1F 09 10 */ lwz r0, 0x910(r31) +/* 801E1658 001DE5B8 80 7F 09 18 */ lwz r3, 0x918(r31) +/* 801E165C 001DE5BC 54 00 10 3A */ slwi r0, r0, 2 +/* 801E1660 001DE5C0 7C 63 02 15 */ add. r3, r3, r0 +/* 801E1664 001DE5C4 41 82 00 08 */ beq lbl_801E166C +/* 801E1668 001DE5C8 D3 E3 00 00 */ stfs f31, 0(r3) +lbl_801E166C: +/* 801E166C 001DE5CC 80 9F 09 10 */ lwz r4, 0x910(r31) +/* 801E1670 001DE5D0 38 61 01 B4 */ addi r3, r1, 0x1b4 +/* 801E1674 001DE5D4 38 04 00 01 */ addi r0, r4, 1 +/* 801E1678 001DE5D8 90 1F 09 10 */ stw r0, 0x910(r31) +/* 801E167C 001DE5DC 48 15 C4 65 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801E1680 001DE5E0 38 61 01 C4 */ addi r3, r1, 0x1c4 +/* 801E1684 001DE5E4 48 15 C4 5D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801E1688 001DE5E8 3B 9C 00 01 */ addi r28, r28, 1 +/* 801E168C 001DE5EC 3B 7B 00 4C */ addi r27, r27, 0x4c +lbl_801E1690: +/* 801E1690 001DE5F0 7C 1C D0 40 */ cmplw r28, r26 +/* 801E1694 001DE5F4 41 80 FA EC */ blt lbl_801E1180 +/* 801E1698 001DE5F8 7F E3 FB 78 */ mr r3, r31 +/* 801E169C 001DE5FC 7F C5 F3 78 */ mr r5, r30 +/* 801E16A0 001DE600 38 80 00 1B */ li r4, 0x1b +/* 801E16A4 001DE604 4B E7 2C AD */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801E16A8 001DE608 7F E3 FB 78 */ mr r3, r31 +/* 801E16AC 001DE60C 7F C5 F3 78 */ mr r5, r30 +/* 801E16B0 001DE610 38 80 00 15 */ li r4, 0x15 +/* 801E16B4 001DE614 4B E7 2C 9D */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801E16B8 001DE618 7F E3 FB 78 */ mr r3, r31 +/* 801E16BC 001DE61C 7F C5 F3 78 */ mr r5, r30 +/* 801E16C0 001DE620 38 80 00 29 */ li r4, 0x29 +/* 801E16C4 001DE624 4B E7 28 BD */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801E16C8 001DE628 7F E3 FB 78 */ mr r3, r31 +/* 801E16CC 001DE62C 7F C5 F3 78 */ mr r5, r30 +/* 801E16D0 001DE630 38 80 00 28 */ li r4, 0x28 +/* 801E16D4 001DE634 4B E7 28 AD */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801E16D8 001DE638 7F E3 FB 78 */ mr r3, r31 +/* 801E16DC 001DE63C 7F C4 F3 78 */ mr r4, r30 +/* 801E16E0 001DE640 4B FF C5 05 */ bl sub_801ddbe4 +/* 801E16E4 001DE644 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801E16E8 001DE648 38 80 00 02 */ li r4, 2 +/* 801E16EC 001DE64C 4B F5 94 B9 */ bl SetFallState__15CBodyControllerFQ23pas10EFallState +/* 801E16F0 001DE650 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801E16F4 001DE654 7F C4 F3 78 */ mr r4, r30 +/* 801E16F8 001DE658 4B F5 95 F9 */ bl Activate__15CBodyControllerFR13CStateManager +/* 801E16FC 001DE65C 80 DF 04 50 */ lwz r6, 0x450(r31) +/* 801E1700 001DE660 38 80 00 01 */ li r4, 1 +/* 801E1704 001DE664 7F E3 FB 78 */ mr r3, r31 +/* 801E1708 001DE668 7F C5 F3 78 */ mr r5, r30 +/* 801E170C 001DE66C 88 06 02 D8 */ lbz r0, 0x2d8(r6) +/* 801E1710 001DE670 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801E1714 001DE674 38 80 00 00 */ li r4, 0 +/* 801E1718 001DE678 98 06 02 D8 */ stb r0, 0x2d8(r6) +/* 801E171C 001DE67C 4B FF 9E 45 */ bl sub_801db560 +/* 801E1720 001DE680 7F E3 FB 78 */ mr r3, r31 +/* 801E1724 001DE684 7F C4 F3 78 */ mr r4, r30 +/* 801E1728 001DE688 4B FF D5 59 */ bl sub_801dec80 +/* 801E172C 001DE68C 7F E3 FB 78 */ mr r3, r31 +/* 801E1730 001DE690 7F C5 F3 78 */ mr r5, r30 +/* 801E1734 001DE694 38 80 00 33 */ li r4, 0x33 +/* 801E1738 001DE698 4B E7 2C 19 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801E173C 001DE69C 48 00 0A 94 */ b lbl_801E21D0 +/* 801E1740 001DE6A0 80 7F 05 F0 */ lwz r3, 0x5f0(r31) +/* 801E1744 001DE6A4 7F C4 F3 78 */ mr r4, r30 +/* 801E1748 001DE6A8 4B FC 5C 7D */ bl Destroy__22CCollisionActorManagerCFR13CStateManager +/* 801E174C 001DE6AC 80 7F 05 F4 */ lwz r3, 0x5f4(r31) +/* 801E1750 001DE6B0 7F C4 F3 78 */ mr r4, r30 +/* 801E1754 001DE6B4 4B FC 5C 71 */ bl Destroy__22CCollisionActorManagerCFR13CStateManager +/* 801E1758 001DE6B8 80 7F 05 F8 */ lwz r3, 0x5f8(r31) +/* 801E175C 001DE6BC 7F C4 F3 78 */ mr r4, r30 +/* 801E1760 001DE6C0 4B FC 5C 65 */ bl Destroy__22CCollisionActorManagerCFR13CStateManager +/* 801E1764 001DE6C4 A0 1F 06 4C */ lhz r0, 0x64c(r31) +/* 801E1768 001DE6C8 7F C3 F3 78 */ mr r3, r30 +/* 801E176C 001DE6CC 38 81 00 98 */ addi r4, r1, 0x98 +/* 801E1770 001DE6D0 B0 01 00 98 */ sth r0, 0x98(r1) +/* 801E1774 001DE6D4 4B E6 AA F9 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +/* 801E1778 001DE6D8 82 7F 06 14 */ lwz r19, 0x614(r31) +/* 801E177C 001DE6DC 3A 80 00 00 */ li r20, 0 +/* 801E1780 001DE6E0 3A 40 00 00 */ li r18, 0 +/* 801E1784 001DE6E4 48 00 00 24 */ b lbl_801E17A8 +lbl_801E1788: +/* 801E1788 001DE6E8 80 BF 06 1C */ lwz r5, 0x61c(r31) +/* 801E178C 001DE6EC 7F C3 F3 78 */ mr r3, r30 +/* 801E1790 001DE6F0 38 81 00 94 */ addi r4, r1, 0x94 +/* 801E1794 001DE6F4 7C 05 92 2E */ lhzx r0, r5, r18 +/* 801E1798 001DE6F8 B0 01 00 94 */ sth r0, 0x94(r1) +/* 801E179C 001DE6FC 4B E6 AA D1 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +/* 801E17A0 001DE700 3A 94 00 01 */ addi r20, r20, 1 +/* 801E17A4 001DE704 3A 52 00 02 */ addi r18, r18, 2 +lbl_801E17A8: +/* 801E17A8 001DE708 7C 14 98 40 */ cmplw r20, r19 +/* 801E17AC 001DE70C 41 80 FF DC */ blt lbl_801E1788 +/* 801E17B0 001DE710 82 9F 06 C4 */ lwz r20, 0x6c4(r31) +/* 801E17B4 001DE714 3A 60 00 00 */ li r19, 0 +/* 801E17B8 001DE718 3A 40 00 00 */ li r18, 0 +/* 801E17BC 001DE71C 48 00 00 24 */ b lbl_801E17E0 +lbl_801E17C0: +/* 801E17C0 001DE720 80 BF 06 CC */ lwz r5, 0x6cc(r31) +/* 801E17C4 001DE724 7F C3 F3 78 */ mr r3, r30 +/* 801E17C8 001DE728 38 81 00 90 */ addi r4, r1, 0x90 +/* 801E17CC 001DE72C 7C 05 92 2E */ lhzx r0, r5, r18 +/* 801E17D0 001DE730 B0 01 00 90 */ sth r0, 0x90(r1) +/* 801E17D4 001DE734 4B E6 AA 99 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +/* 801E17D8 001DE738 3A 73 00 01 */ addi r19, r19, 1 +/* 801E17DC 001DE73C 3A 52 00 02 */ addi r18, r18, 2 +lbl_801E17E0: +/* 801E17E0 001DE740 7C 13 A0 40 */ cmplw r19, r20 +/* 801E17E4 001DE744 41 80 FF DC */ blt lbl_801E17C0 +/* 801E17E8 001DE748 48 00 09 E8 */ b lbl_801E21D0 +/* 801E17EC 001DE74C 88 1F 09 4C */ lbz r0, 0x94c(r31) +/* 801E17F0 001DE750 28 00 00 00 */ cmplwi r0, 0 +/* 801E17F4 001DE754 40 82 09 DC */ bne lbl_801E21D0 +/* 801E17F8 001DE758 38 00 00 01 */ li r0, 1 +/* 801E17FC 001DE75C 38 7F 07 64 */ addi r3, r31, 0x764 +/* 801E1800 001DE760 98 1F 09 4C */ stb r0, 0x94c(r31) +/* 801E1804 001DE764 38 9F 00 34 */ addi r4, r31, 0x34 +/* 801E1808 001DE768 48 13 13 39 */ bl __as__12CTransform4fFRC12CTransform4f +/* 801E180C 001DE76C 83 7F 00 24 */ lwz r27, 0x24(r31) +/* 801E1810 001DE770 3B 3F 05 7C */ addi r25, r31, 0x57c +/* 801E1814 001DE774 3B 01 02 D4 */ addi r24, r1, 0x2d4 +/* 801E1818 001DE778 3B BF 06 68 */ addi r29, r31, 0x668 +/* 801E181C 001DE77C 3B 80 00 00 */ li r28, 0 +/* 801E1820 001DE780 3B 40 00 00 */ li r26, 0 +/* 801E1824 001DE784 48 00 03 48 */ b lbl_801E1B6C +lbl_801E1828: +/* 801E1828 001DE788 80 1F 00 2C */ lwz r0, 0x2c(r31) +/* 801E182C 001DE78C 7F C4 F3 78 */ mr r4, r30 +/* 801E1830 001DE790 38 61 00 8C */ addi r3, r1, 0x8c +/* 801E1834 001DE794 38 A1 00 E8 */ addi r5, r1, 0xe8 +/* 801E1838 001DE798 7E 40 D2 14 */ add r18, r0, r26 +/* 801E183C 001DE79C 80 12 00 08 */ lwz r0, 8(r18) +/* 801E1840 001DE7A0 90 01 00 E8 */ stw r0, 0xe8(r1) +/* 801E1844 001DE7A4 4B E6 66 D9 */ bl GetIdForScript__13CStateManagerCF9TEditorId +/* 801E1848 001DE7A8 A0 61 00 8C */ lhz r3, 0x8c(r1) +/* 801E184C 001DE7AC A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 801E1850 001DE7B0 B0 61 00 C4 */ sth r3, 0xc4(r1) +/* 801E1854 001DE7B4 7C 03 20 40 */ cmplw r3, r4 +/* 801E1858 001DE7B8 41 82 03 0C */ beq lbl_801E1B64 +/* 801E185C 001DE7BC 80 12 00 00 */ lwz r0, 0(r18) +/* 801E1860 001DE7C0 2C 00 00 0D */ cmpwi r0, 0xd +/* 801E1864 001DE7C4 40 82 01 D8 */ bne lbl_801E1A3C +/* 801E1868 001DE7C8 B0 61 00 88 */ sth r3, 0x88(r1) +/* 801E186C 001DE7CC 7F C3 F3 78 */ mr r3, r30 +/* 801E1870 001DE7D0 38 81 00 88 */ addi r4, r1, 0x88 +/* 801E1874 001DE7D4 4B E6 AD 01 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801E1878 001DE7D8 7C 64 1B 78 */ mr r4, r3 +/* 801E187C 001DE7DC 38 61 01 58 */ addi r3, r1, 0x158 +/* 801E1880 001DE7E0 4B EC 4C CD */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 801E1884 001DE7E4 80 83 00 04 */ lwz r4, 4(r3) +/* 801E1888 001DE7E8 28 04 00 00 */ cmplwi r4, 0 +/* 801E188C 001DE7EC 41 82 00 D0 */ beq lbl_801E195C +/* 801E1890 001DE7F0 38 00 00 00 */ li r0, 0 +/* 801E1894 001DE7F4 7F E3 FB 78 */ mr r3, r31 +/* 801E1898 001DE7F8 90 01 02 D0 */ stw r0, 0x2d0(r1) +/* 801E189C 001DE7FC 7F C5 F3 78 */ mr r5, r30 +/* 801E18A0 001DE800 38 C1 02 D0 */ addi r6, r1, 0x2d0 +/* 801E18A4 001DE804 4B FF C9 05 */ bl sub_801de1a8 +/* 801E18A8 001DE808 80 1F 05 78 */ lwz r0, 0x578(r31) +/* 801E18AC 001DE80C 1C 00 00 24 */ mulli r0, r0, 0x24 +/* 801E18B0 001DE810 7C 79 02 15 */ add. r3, r25, r0 +/* 801E18B4 001DE814 41 82 00 40 */ beq lbl_801E18F4 +/* 801E18B8 001DE818 80 01 02 D0 */ lwz r0, 0x2d0(r1) +/* 801E18BC 001DE81C 7F 05 C3 78 */ mr r5, r24 +/* 801E18C0 001DE820 38 83 00 04 */ addi r4, r3, 4 +/* 801E18C4 001DE824 90 03 00 00 */ stw r0, 0(r3) +/* 801E18C8 001DE828 80 03 00 00 */ lwz r0, 0(r3) +/* 801E18CC 001DE82C 7C 09 03 A6 */ mtctr r0 +/* 801E18D0 001DE830 2C 00 00 00 */ cmpwi r0, 0 +/* 801E18D4 001DE834 40 81 00 20 */ ble lbl_801E18F4 +lbl_801E18D8: +/* 801E18D8 001DE838 28 04 00 00 */ cmplwi r4, 0 +/* 801E18DC 001DE83C 41 82 00 0C */ beq lbl_801E18E8 +/* 801E18E0 001DE840 A0 05 00 00 */ lhz r0, 0(r5) +/* 801E18E4 001DE844 B0 04 00 00 */ sth r0, 0(r4) +lbl_801E18E8: +/* 801E18E8 001DE848 38 84 00 02 */ addi r4, r4, 2 +/* 801E18EC 001DE84C 38 A5 00 02 */ addi r5, r5, 2 +/* 801E18F0 001DE850 42 00 FF E8 */ bdnz lbl_801E18D8 +lbl_801E18F4: +/* 801E18F4 001DE854 80 7F 05 78 */ lwz r3, 0x578(r31) +/* 801E18F8 001DE858 38 80 00 00 */ li r4, 0 +/* 801E18FC 001DE85C 38 03 00 01 */ addi r0, r3, 1 +/* 801E1900 001DE860 90 1F 05 78 */ stw r0, 0x578(r31) +/* 801E1904 001DE864 80 A1 02 D0 */ lwz r5, 0x2d0(r1) +/* 801E1908 001DE868 2C 05 00 00 */ cmpwi r5, 0 +/* 801E190C 001DE86C 40 81 00 44 */ ble lbl_801E1950 +/* 801E1910 001DE870 2C 05 00 08 */ cmpwi r5, 8 +/* 801E1914 001DE874 38 65 FF F8 */ addi r3, r5, -8 +/* 801E1918 001DE878 40 81 00 20 */ ble lbl_801E1938 +/* 801E191C 001DE87C 38 03 00 07 */ addi r0, r3, 7 +/* 801E1920 001DE880 54 00 E8 FE */ srwi r0, r0, 3 +/* 801E1924 001DE884 7C 09 03 A6 */ mtctr r0 +/* 801E1928 001DE888 2C 03 00 00 */ cmpwi r3, 0 +/* 801E192C 001DE88C 40 81 00 0C */ ble lbl_801E1938 +lbl_801E1930: +/* 801E1930 001DE890 38 84 00 08 */ addi r4, r4, 8 +/* 801E1934 001DE894 42 00 FF FC */ bdnz lbl_801E1930 +lbl_801E1938: +/* 801E1938 001DE898 7C 04 28 50 */ subf r0, r4, r5 +/* 801E193C 001DE89C 7C 09 03 A6 */ mtctr r0 +/* 801E1940 001DE8A0 7C 04 28 00 */ cmpw r4, r5 +/* 801E1944 001DE8A4 40 80 00 0C */ bge lbl_801E1950 +lbl_801E1948: +/* 801E1948 001DE8A8 38 84 00 01 */ addi r4, r4, 1 +/* 801E194C 001DE8AC 42 00 FF FC */ bdnz lbl_801E1948 +lbl_801E1950: +/* 801E1950 001DE8B0 38 00 00 00 */ li r0, 0 +/* 801E1954 001DE8B4 90 01 02 D0 */ stw r0, 0x2d0(r1) +/* 801E1958 001DE8B8 48 00 02 0C */ b lbl_801E1B64 +lbl_801E195C: +/* 801E195C 001DE8BC A0 01 00 C4 */ lhz r0, 0xc4(r1) +/* 801E1960 001DE8C0 7F C3 F3 78 */ mr r3, r30 +/* 801E1964 001DE8C4 38 81 00 84 */ addi r4, r1, 0x84 +/* 801E1968 001DE8C8 B0 01 00 84 */ sth r0, 0x84(r1) +/* 801E196C 001DE8CC 4B E6 AC 09 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801E1970 001DE8D0 7C 64 1B 78 */ mr r4, r3 +/* 801E1974 001DE8D4 38 61 00 E4 */ addi r3, r1, 0xe4 +/* 801E1978 001DE8D8 4B EC 3A 25 */ bl sub_800a539c +/* 801E197C 001DE8DC 4B EC 39 F5 */ bl "CastTo<22CThardusRockProjectile>__10CPatternedFP7CEntity" +/* 801E1980 001DE8E0 28 03 00 00 */ cmplwi r3, 0 +/* 801E1984 001DE8E4 41 82 00 2C */ beq lbl_801E19B0 +/* 801E1988 001DE8E8 A0 01 00 C4 */ lhz r0, 0xc4(r1) +/* 801E198C 001DE8EC 38 80 00 00 */ li r4, 0 +/* 801E1990 001DE8F0 B0 1F 05 FC */ sth r0, 0x5fc(r31) +/* 801E1994 001DE8F4 80 12 00 08 */ lwz r0, 8(r18) +/* 801E1998 001DE8F8 90 1F 06 0C */ stw r0, 0x60c(r31) +/* 801E199C 001DE8FC 81 83 00 00 */ lwz r12, 0(r3) +/* 801E19A0 001DE900 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801E19A4 001DE904 7D 89 03 A6 */ mtctr r12 +/* 801E19A8 001DE908 4E 80 04 21 */ bctrl +/* 801E19AC 001DE90C 48 00 01 B8 */ b lbl_801E1B64 +lbl_801E19B0: +/* 801E19B0 001DE910 A0 01 00 C4 */ lhz r0, 0xc4(r1) +/* 801E19B4 001DE914 7F C3 F3 78 */ mr r3, r30 +/* 801E19B8 001DE918 38 81 00 80 */ addi r4, r1, 0x80 +/* 801E19BC 001DE91C B0 01 00 80 */ sth r0, 0x80(r1) +/* 801E19C0 001DE920 4B E6 AB E5 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801E19C4 001DE924 7C 64 1B 78 */ mr r4, r3 +/* 801E19C8 001DE928 38 61 01 30 */ addi r3, r1, 0x130 +/* 801E19CC 001DE92C 4B EC A6 B5 */ bl "__ct__22TCastToPtr<9CRepulsor>FP7CEntity" +/* 801E19D0 001DE930 80 03 00 04 */ lwz r0, 4(r3) +/* 801E19D4 001DE934 28 00 00 00 */ cmplwi r0, 0 +/* 801E19D8 001DE938 41 82 00 2C */ beq lbl_801E1A04 +/* 801E19DC 001DE93C 80 1F 06 64 */ lwz r0, 0x664(r31) +/* 801E19E0 001DE940 54 00 08 3C */ slwi r0, r0, 1 +/* 801E19E4 001DE944 7C 7D 02 15 */ add. r3, r29, r0 +/* 801E19E8 001DE948 41 82 00 0C */ beq lbl_801E19F4 +/* 801E19EC 001DE94C A0 01 00 C4 */ lhz r0, 0xc4(r1) +/* 801E19F0 001DE950 B0 03 00 00 */ sth r0, 0(r3) +lbl_801E19F4: +/* 801E19F4 001DE954 80 7F 06 64 */ lwz r3, 0x664(r31) +/* 801E19F8 001DE958 38 03 00 01 */ addi r0, r3, 1 +/* 801E19FC 001DE95C 90 1F 06 64 */ stw r0, 0x664(r31) +/* 801E1A00 001DE960 48 00 01 64 */ b lbl_801E1B64 +lbl_801E1A04: +/* 801E1A04 001DE964 A0 01 00 C4 */ lhz r0, 0xc4(r1) +/* 801E1A08 001DE968 7F C3 F3 78 */ mr r3, r30 +/* 801E1A0C 001DE96C 38 81 00 7C */ addi r4, r1, 0x7c +/* 801E1A10 001DE970 B0 01 00 7C */ sth r0, 0x7c(r1) +/* 801E1A14 001DE974 4B E6 AB 91 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801E1A18 001DE978 7C 64 1B 78 */ mr r4, r3 +/* 801E1A1C 001DE97C 38 61 01 28 */ addi r3, r1, 0x128 +/* 801E1A20 001DE980 4B EC 8C F9 */ bl "__ct__32TCastToPtr<18CScriptDistanceFog>FP7CEntity" +/* 801E1A24 001DE984 80 03 00 04 */ lwz r0, 4(r3) +/* 801E1A28 001DE988 28 00 00 00 */ cmplwi r0, 0 +/* 801E1A2C 001DE98C 41 82 01 38 */ beq lbl_801E1B64 +/* 801E1A30 001DE990 A0 01 00 C4 */ lhz r0, 0xc4(r1) +/* 801E1A34 001DE994 B0 1F 06 4C */ sth r0, 0x64c(r31) +/* 801E1A38 001DE998 48 00 01 2C */ b lbl_801E1B64 +lbl_801E1A3C: +/* 801E1A3C 001DE99C 2C 00 00 09 */ cmpwi r0, 9 +/* 801E1A40 001DE9A0 40 82 00 A4 */ bne lbl_801E1AE4 +/* 801E1A44 001DE9A4 54 60 04 3E */ clrlwi r0, r3, 0x10 +/* 801E1A48 001DE9A8 7C 00 20 40 */ cmplw r0, r4 +/* 801E1A4C 001DE9AC 41 82 01 18 */ beq lbl_801E1B64 +/* 801E1A50 001DE9B0 B0 61 00 78 */ sth r3, 0x78(r1) +/* 801E1A54 001DE9B4 7F C3 F3 78 */ mr r3, r30 +/* 801E1A58 001DE9B8 38 81 00 78 */ addi r4, r1, 0x78 +/* 801E1A5C 001DE9BC 4B E6 AB 19 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801E1A60 001DE9C0 7C 64 1B 78 */ mr r4, r3 +/* 801E1A64 001DE9C4 38 61 01 50 */ addi r3, r1, 0x150 +/* 801E1A68 001DE9C8 4B EC 4A E5 */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 801E1A6C 001DE9CC 82 43 00 04 */ lwz r18, 4(r3) +/* 801E1A70 001DE9D0 28 12 00 00 */ cmplwi r18, 0 +/* 801E1A74 001DE9D4 41 82 00 F0 */ beq lbl_801E1B64 +/* 801E1A78 001DE9D8 80 1F 08 F8 */ lwz r0, 0x8f8(r31) +/* 801E1A7C 001DE9DC 80 BF 08 FC */ lwz r5, 0x8fc(r31) +/* 801E1A80 001DE9E0 7C 00 28 00 */ cmpw r0, r5 +/* 801E1A84 001DE9E4 41 80 00 1C */ blt lbl_801E1AA0 +/* 801E1A88 001DE9E8 2C 05 00 00 */ cmpwi r5, 0 +/* 801E1A8C 001DE9EC 38 7F 08 F4 */ addi r3, r31, 0x8f4 +/* 801E1A90 001DE9F0 38 80 00 04 */ li r4, 4 +/* 801E1A94 001DE9F4 41 82 00 08 */ beq lbl_801E1A9C +/* 801E1A98 001DE9F8 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801E1A9C: +/* 801E1A9C 001DE9FC 4B E2 A9 6D */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" +lbl_801E1AA0: +/* 801E1AA0 001DEA00 80 1F 08 F8 */ lwz r0, 0x8f8(r31) +/* 801E1AA4 001DEA04 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 801E1AA8 001DEA08 54 00 08 3C */ slwi r0, r0, 1 +/* 801E1AAC 001DEA0C 7C 63 02 15 */ add. r3, r3, r0 +/* 801E1AB0 001DEA10 41 82 00 0C */ beq lbl_801E1ABC +/* 801E1AB4 001DEA14 A0 01 00 C4 */ lhz r0, 0xc4(r1) +/* 801E1AB8 001DEA18 B0 03 00 00 */ sth r0, 0(r3) +lbl_801E1ABC: +/* 801E1ABC 001DEA1C 80 BF 08 F8 */ lwz r5, 0x8f8(r31) +/* 801E1AC0 001DEA20 7E 43 93 78 */ mr r3, r18 +/* 801E1AC4 001DEA24 38 80 00 00 */ li r4, 0 +/* 801E1AC8 001DEA28 38 05 00 01 */ addi r0, r5, 1 +/* 801E1ACC 001DEA2C 90 1F 08 F8 */ stw r0, 0x8f8(r31) +/* 801E1AD0 001DEA30 81 92 00 00 */ lwz r12, 0(r18) +/* 801E1AD4 001DEA34 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801E1AD8 001DEA38 7D 89 03 A6 */ mtctr r12 +/* 801E1ADC 001DEA3C 4E 80 04 21 */ bctrl +/* 801E1AE0 001DEA40 48 00 00 84 */ b lbl_801E1B64 +lbl_801E1AE4: +/* 801E1AE4 001DEA44 2C 00 00 0E */ cmpwi r0, 0xe +/* 801E1AE8 001DEA48 40 82 00 7C */ bne lbl_801E1B64 +/* 801E1AEC 001DEA4C B0 61 00 74 */ sth r3, 0x74(r1) +/* 801E1AF0 001DEA50 7F C3 F3 78 */ mr r3, r30 +/* 801E1AF4 001DEA54 38 81 00 74 */ addi r4, r1, 0x74 +/* 801E1AF8 001DEA58 4B E6 AA AD */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801E1AFC 001DEA5C 7C 64 1B 78 */ mr r4, r3 +/* 801E1B00 001DEA60 38 61 01 20 */ addi r3, r1, 0x120 +/* 801E1B04 001DEA64 4B EC 57 5D */ bl "__ct__26TCastToPtr<12CScriptTimer>FP7CEntity" +/* 801E1B08 001DEA68 80 03 00 04 */ lwz r0, 4(r3) +/* 801E1B0C 001DEA6C 28 00 00 00 */ cmplwi r0, 0 +/* 801E1B10 001DEA70 41 82 00 54 */ beq lbl_801E1B64 +/* 801E1B14 001DEA74 80 1F 07 AC */ lwz r0, 0x7ac(r31) +/* 801E1B18 001DEA78 80 BF 07 B0 */ lwz r5, 0x7b0(r31) +/* 801E1B1C 001DEA7C 7C 00 28 00 */ cmpw r0, r5 +/* 801E1B20 001DEA80 41 80 00 1C */ blt lbl_801E1B3C +/* 801E1B24 001DEA84 2C 05 00 00 */ cmpwi r5, 0 +/* 801E1B28 001DEA88 38 7F 07 A8 */ addi r3, r31, 0x7a8 +/* 801E1B2C 001DEA8C 38 80 00 04 */ li r4, 4 +/* 801E1B30 001DEA90 41 82 00 08 */ beq lbl_801E1B38 +/* 801E1B34 001DEA94 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801E1B38: +/* 801E1B38 001DEA98 4B E2 A8 D1 */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" +lbl_801E1B3C: +/* 801E1B3C 001DEA9C 80 1F 07 AC */ lwz r0, 0x7ac(r31) +/* 801E1B40 001DEAA0 80 7F 07 B4 */ lwz r3, 0x7b4(r31) +/* 801E1B44 001DEAA4 54 00 08 3C */ slwi r0, r0, 1 +/* 801E1B48 001DEAA8 7C 63 02 15 */ add. r3, r3, r0 +/* 801E1B4C 001DEAAC 41 82 00 0C */ beq lbl_801E1B58 +/* 801E1B50 001DEAB0 A0 01 00 C4 */ lhz r0, 0xc4(r1) +/* 801E1B54 001DEAB4 B0 03 00 00 */ sth r0, 0(r3) +lbl_801E1B58: +/* 801E1B58 001DEAB8 80 7F 07 AC */ lwz r3, 0x7ac(r31) +/* 801E1B5C 001DEABC 38 03 00 01 */ addi r0, r3, 1 +/* 801E1B60 001DEAC0 90 1F 07 AC */ stw r0, 0x7ac(r31) +lbl_801E1B64: +/* 801E1B64 001DEAC4 3B 9C 00 01 */ addi r28, r28, 1 +/* 801E1B68 001DEAC8 3B 5A 00 0C */ addi r26, r26, 0xc +lbl_801E1B6C: +/* 801E1B6C 001DEACC 7C 1C D8 40 */ cmplw r28, r27 +/* 801E1B70 001DEAD0 41 80 FC B8 */ blt lbl_801E1828 +/* 801E1B74 001DEAD4 80 BF 00 04 */ lwz r5, 4(r31) +/* 801E1B78 001DEAD8 80 9E 08 50 */ lwz r4, 0x850(r30) +/* 801E1B7C 001DEADC 54 A3 18 38 */ slwi r3, r5, 3 +/* 801E1B80 001DEAE0 90 A1 01 0C */ stw r5, 0x10c(r1) +/* 801E1B84 001DEAE4 80 84 00 20 */ lwz r4, 0x20(r4) +/* 801E1B88 001DEAE8 38 03 00 04 */ addi r0, r3, 4 +/* 801E1B8C 001DEAEC 90 A1 00 E0 */ stw r5, 0xe0(r1) +/* 801E1B90 001DEAF0 7C 64 00 2E */ lwzx r3, r4, r0 +/* 801E1B94 001DEAF4 80 63 01 2C */ lwz r3, 0x12c(r3) +/* 801E1B98 001DEAF8 80 03 10 BC */ lwz r0, 0x10bc(r3) +/* 801E1B9C 001DEAFC 90 1F 07 F0 */ stw r0, 0x7f0(r31) +/* 801E1BA0 001DEB00 48 00 06 30 */ b lbl_801E21D0 +/* 801E1BA4 001DEB04 A0 14 00 00 */ lhz r0, 0(r20) +/* 801E1BA8 001DEB08 7F C3 F3 78 */ mr r3, r30 +/* 801E1BAC 001DEB0C 38 81 00 70 */ addi r4, r1, 0x70 +/* 801E1BB0 001DEB10 B0 01 00 70 */ sth r0, 0x70(r1) +/* 801E1BB4 001DEB14 4B E6 A9 C1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801E1BB8 001DEB18 7C 60 1B 78 */ mr r0, r3 +/* 801E1BBC 001DEB1C 38 61 01 48 */ addi r3, r1, 0x148 +/* 801E1BC0 001DEB20 7C 04 03 78 */ mr r4, r0 +/* 801E1BC4 001DEB24 4B EC D7 89 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801E1BC8 001DEB28 80 83 00 04 */ lwz r4, 4(r3) +/* 801E1BCC 001DEB2C 28 04 00 00 */ cmplwi r4, 0 +/* 801E1BD0 001DEB30 41 82 06 00 */ beq lbl_801E21D0 +/* 801E1BD4 001DEB34 38 61 00 6C */ addi r3, r1, 0x6c +/* 801E1BD8 001DEB38 4B FC 6F B5 */ bl GetLastTouchedObject__15CCollisionActorCFv +/* 801E1BDC 001DEB3C A0 01 00 6C */ lhz r0, 0x6c(r1) +/* 801E1BE0 001DEB40 7F C3 F3 78 */ mr r3, r30 +/* 801E1BE4 001DEB44 38 81 00 68 */ addi r4, r1, 0x68 +/* 801E1BE8 001DEB48 B0 01 00 C0 */ sth r0, 0xc0(r1) +/* 801E1BEC 001DEB4C B0 01 00 68 */ sth r0, 0x68(r1) +/* 801E1BF0 001DEB50 4B E6 A9 85 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801E1BF4 001DEB54 7C 60 1B 78 */ mr r0, r3 +/* 801E1BF8 001DEB58 38 61 01 40 */ addi r3, r1, 0x140 +/* 801E1BFC 001DEB5C 7C 04 03 78 */ mr r4, r0 +/* 801E1C00 001DEB60 4B EC A7 95 */ bl "__ct__20TCastToPtr<7CPlayer>FP7CEntity" +/* 801E1C04 001DEB64 82 63 00 04 */ lwz r19, 4(r3) +/* 801E1C08 001DEB68 28 13 00 00 */ cmplwi r19, 0 +/* 801E1C0C 001DEB6C 41 82 02 10 */ beq lbl_801E1E1C +/* 801E1C10 001DEB70 C0 3F 04 20 */ lfs f1, 0x420(r31) +/* 801E1C14 001DEB74 C0 02 AC DC */ lfs f0, lbl_805AC9FC@sda21(r2) +/* 801E1C18 001DEB78 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801E1C1C 001DEB7C 4C 40 13 82 */ cror 2, 0, 2 +/* 801E1C20 001DEB80 40 82 05 B0 */ bne lbl_801E21D0 +/* 801E1C24 001DEB84 3C 60 80 5A */ lis r3, lbl_805A6724@ha +/* 801E1C28 001DEB88 C4 43 67 24 */ lfsu f2, lbl_805A6724@l(r3) +/* 801E1C2C 001DEB8C C3 E2 AC D8 */ lfs f31, lbl_805AC9F8@sda21(r2) +/* 801E1C30 001DEB90 C0 23 00 04 */ lfs f1, 4(r3) +/* 801E1C34 001DEB94 C0 03 00 08 */ lfs f0, 8(r3) +/* 801E1C38 001DEB98 D0 41 01 A8 */ stfs f2, 0x1a8(r1) +/* 801E1C3C 001DEB9C D0 21 01 AC */ stfs f1, 0x1ac(r1) +/* 801E1C40 001DEBA0 D0 01 01 B0 */ stfs f0, 0x1b0(r1) +/* 801E1C44 001DEBA4 80 1F 06 44 */ lwz r0, 0x644(r31) +/* 801E1C48 001DEBA8 2C 00 00 01 */ cmpwi r0, 1 +/* 801E1C4C 001DEBAC 40 82 00 60 */ bne lbl_801E1CAC +/* 801E1C50 001DEBB0 C3 E2 AC E0 */ lfs f31, lbl_805ACA00@sda21(r2) +/* 801E1C54 001DEBB4 80 7E 09 00 */ lwz r3, 0x900(r30) +/* 801E1C58 001DEBB8 48 13 08 C9 */ bl Next__9CRandom16Fv +/* 801E1C5C 001DEBBC 54 64 0F FE */ srwi r4, r3, 0x1f +/* 801E1C60 001DEBC0 54 60 07 FE */ clrlwi r0, r3, 0x1f +/* 801E1C64 001DEBC4 7C 00 22 78 */ xor r0, r0, r4 +/* 801E1C68 001DEBC8 7C 04 00 51 */ subf. r0, r4, r0 +/* 801E1C6C 001DEBCC 41 82 00 24 */ beq lbl_801E1C90 +/* 801E1C70 001DEBD0 3C 60 80 5A */ lis r3, lbl_805A670C@ha +/* 801E1C74 001DEBD4 C4 43 67 0C */ lfsu f2, lbl_805A670C@l(r3) +/* 801E1C78 001DEBD8 C0 23 00 04 */ lfs f1, 4(r3) +/* 801E1C7C 001DEBDC C0 03 00 08 */ lfs f0, 8(r3) +/* 801E1C80 001DEBE0 D0 41 01 A8 */ stfs f2, 0x1a8(r1) +/* 801E1C84 001DEBE4 D0 21 01 AC */ stfs f1, 0x1ac(r1) +/* 801E1C88 001DEBE8 D0 01 01 B0 */ stfs f0, 0x1b0(r1) +/* 801E1C8C 001DEBEC 48 00 00 20 */ b lbl_801E1CAC +lbl_801E1C90: +/* 801E1C90 001DEBF0 3C 60 80 5A */ lis r3, lbl_805A6718@ha +/* 801E1C94 001DEBF4 C4 43 67 18 */ lfsu f2, lbl_805A6718@l(r3) +/* 801E1C98 001DEBF8 C0 23 00 04 */ lfs f1, 4(r3) +/* 801E1C9C 001DEBFC C0 03 00 08 */ lfs f0, 8(r3) +/* 801E1CA0 001DEC00 D0 41 01 A8 */ stfs f2, 0x1a8(r1) +/* 801E1CA4 001DEC04 D0 21 01 AC */ stfs f1, 0x1ac(r1) +/* 801E1CA8 001DEC08 D0 01 01 B0 */ stfs f0, 0x1b0(r1) +lbl_801E1CAC: +/* 801E1CAC 001DEC0C 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 801E1CB0 001DEC10 4B E3 40 4D */ bl GetFrozenState__7CPlayerCFv +/* 801E1CB4 001DEC14 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E1CB8 001DEC18 41 82 00 10 */ beq lbl_801E1CC8 +/* 801E1CBC 001DEC1C 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 801E1CC0 001DEC20 7F C4 F3 78 */ mr r4, r30 +/* 801E1CC4 001DEC24 4B E3 3D 69 */ bl UnFreeze__7CPlayerFR13CStateManager +lbl_801E1CC8: +/* 801E1CC8 001DEC28 38 61 02 6C */ addi r3, r1, 0x26c +/* 801E1CCC 001DEC2C 38 9F 00 34 */ addi r4, r31, 0x34 +/* 801E1CD0 001DEC30 48 13 14 25 */ bl BuildMatrix3f__12CTransform4fCFv +/* 801E1CD4 001DEC34 38 61 01 84 */ addi r3, r1, 0x184 +/* 801E1CD8 001DEC38 38 81 02 6C */ addi r4, r1, 0x26c +/* 801E1CDC 001DEC3C 38 A1 01 A8 */ addi r5, r1, 0x1a8 +/* 801E1CE0 001DEC40 48 12 E5 B5 */ bl __ml__9CMatrix3fCFRC9CVector3f +/* 801E1CE4 001DEC44 C0 41 01 84 */ lfs f2, 0x184(r1) +/* 801E1CE8 001DEC48 7F E4 FB 78 */ mr r4, r31 +/* 801E1CEC 001DEC4C C0 21 01 88 */ lfs f1, 0x188(r1) +/* 801E1CF0 001DEC50 38 61 02 1C */ addi r3, r1, 0x21c +/* 801E1CF4 001DEC54 C0 01 01 8C */ lfs f0, 0x18c(r1) +/* 801E1CF8 001DEC58 D0 41 01 A8 */ stfs f2, 0x1a8(r1) +/* 801E1CFC 001DEC5C D0 21 01 AC */ stfs f1, 0x1ac(r1) +/* 801E1D00 001DEC60 D0 01 01 B0 */ stfs f0, 0x1b0(r1) +/* 801E1D04 001DEC64 81 9F 00 00 */ lwz r12, 0(r31) +/* 801E1D08 001DEC68 81 8C 02 B0 */ lwz r12, 0x2b0(r12) +/* 801E1D0C 001DEC6C 7D 89 03 A6 */ mtctr r12 +/* 801E1D10 001DEC70 4E 80 04 21 */ bctrl +/* 801E1D14 001DEC74 80 1F 06 44 */ lwz r0, 0x644(r31) +/* 801E1D18 001DEC78 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801E1D1C 001DEC7C 80 81 02 1C */ lwz r4, 0x21c(r1) +/* 801E1D20 001DEC80 3A 83 66 A0 */ addi r20, r3, skZero3f@l +/* 801E1D24 001DEC84 88 61 02 20 */ lbz r3, 0x220(r1) +/* 801E1D28 001DEC88 2C 00 00 01 */ cmpwi r0, 1 +/* 801E1D2C 001DEC8C C0 61 02 24 */ lfs f3, 0x224(r1) +/* 801E1D30 001DEC90 C0 41 02 28 */ lfs f2, 0x228(r1) +/* 801E1D34 001DEC94 C0 21 02 2C */ lfs f1, 0x22c(r1) +/* 801E1D38 001DEC98 C0 01 02 30 */ lfs f0, 0x230(r1) +/* 801E1D3C 001DEC9C 88 01 02 34 */ lbz r0, 0x234(r1) +/* 801E1D40 001DECA0 90 81 02 50 */ stw r4, 0x250(r1) +/* 801E1D44 001DECA4 98 61 02 54 */ stb r3, 0x254(r1) +/* 801E1D48 001DECA8 D0 61 02 58 */ stfs f3, 0x258(r1) +/* 801E1D4C 001DECAC D0 41 02 5C */ stfs f2, 0x25c(r1) +/* 801E1D50 001DECB0 D0 21 02 60 */ stfs f1, 0x260(r1) +/* 801E1D54 001DECB4 D0 01 02 64 */ stfs f0, 0x264(r1) +/* 801E1D58 001DECB8 98 01 02 68 */ stb r0, 0x268(r1) +/* 801E1D5C 001DECBC 40 82 00 08 */ bne lbl_801E1D64 +/* 801E1D60 001DECC0 3A 81 01 A8 */ addi r20, r1, 0x1a8 +lbl_801E1D64: +/* 801E1D64 001DECC4 80 AD 92 0C */ lwz r5, lbl_805A7DCC@sda21(r13) +/* 801E1D68 001DECC8 38 60 00 00 */ li r3, 0 +/* 801E1D6C 001DECCC 38 80 00 01 */ li r4, 1 +/* 801E1D70 001DECD0 48 1A 81 85 */ bl __shl2i +/* 801E1D74 001DECD4 C0 01 02 58 */ lfs f0, 0x258(r1) +/* 801E1D78 001DECD8 3A 40 00 00 */ li r18, 0 +/* 801E1D7C 001DECDC C0 21 02 64 */ lfs f1, 0x264(r1) +/* 801E1D80 001DECE0 39 80 00 03 */ li r12, 3 +/* 801E1D84 001DECE4 EC 1F 00 32 */ fmuls f0, f31, f0 +/* 801E1D88 001DECE8 C0 41 02 60 */ lfs f2, 0x260(r1) +/* 801E1D8C 001DECEC 81 61 02 50 */ lwz r11, 0x250(r1) +/* 801E1D90 001DECF0 7E 89 A3 78 */ mr r9, r20 +/* 801E1D94 001DECF4 89 41 02 54 */ lbz r10, 0x254(r1) +/* 801E1D98 001DECF8 38 A1 00 5C */ addi r5, r1, 0x5c +/* 801E1D9C 001DECFC 88 01 02 18 */ lbz r0, 0x218(r1) +/* 801E1DA0 001DED00 52 40 3E 30 */ rlwimi r0, r18, 7, 0x18, 0x18 +/* 801E1DA4 001DED04 90 81 01 EC */ stw r4, 0x1ec(r1) +/* 801E1DA8 001DED08 38 81 00 64 */ addi r4, r1, 0x64 +/* 801E1DAC 001DED0C 38 C1 00 54 */ addi r6, r1, 0x54 +/* 801E1DB0 001DED10 38 E1 02 00 */ addi r7, r1, 0x200 +/* 801E1DB4 001DED14 90 61 01 E8 */ stw r3, 0x1e8(r1) +/* 801E1DB8 001DED18 7F C3 F3 78 */ mr r3, r30 +/* 801E1DBC 001DED1C 39 01 01 E8 */ addi r8, r1, 0x1e8 +/* 801E1DC0 001DED20 92 41 01 F4 */ stw r18, 0x1f4(r1) +/* 801E1DC4 001DED24 92 41 01 F0 */ stw r18, 0x1f0(r1) +/* 801E1DC8 001DED28 91 81 01 F8 */ stw r12, 0x1f8(r1) +/* 801E1DCC 001DED2C 91 61 02 00 */ stw r11, 0x200(r1) +/* 801E1DD0 001DED30 99 41 02 04 */ stb r10, 0x204(r1) +/* 801E1DD4 001DED34 D0 01 02 08 */ stfs f0, 0x208(r1) +/* 801E1DD8 001DED38 D0 01 02 0C */ stfs f0, 0x20c(r1) +/* 801E1DDC 001DED3C D0 41 02 10 */ stfs f2, 0x210(r1) +/* 801E1DE0 001DED40 D0 21 02 14 */ stfs f1, 0x214(r1) +/* 801E1DE4 001DED44 98 01 02 18 */ stb r0, 0x218(r1) +/* 801E1DE8 001DED48 A0 1F 00 08 */ lhz r0, 8(r31) +/* 801E1DEC 001DED4C B0 01 00 54 */ sth r0, 0x54(r1) +/* 801E1DF0 001DED50 A1 53 00 08 */ lhz r10, 8(r19) +/* 801E1DF4 001DED54 B0 01 00 50 */ sth r0, 0x50(r1) +/* 801E1DF8 001DED58 B1 41 00 5C */ sth r10, 0x5c(r1) +/* 801E1DFC 001DED5C A0 1F 00 08 */ lhz r0, 8(r31) +/* 801E1E00 001DED60 B1 41 00 58 */ sth r10, 0x58(r1) +/* 801E1E04 001DED64 B0 01 00 60 */ sth r0, 0x60(r1) +/* 801E1E08 001DED68 B0 01 00 64 */ sth r0, 0x64(r1) +/* 801E1E0C 001DED6C 4B E6 82 95 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +/* 801E1E10 001DED70 C0 1F 04 24 */ lfs f0, 0x424(r31) +/* 801E1E14 001DED74 D0 1F 04 20 */ stfs f0, 0x420(r31) +/* 801E1E18 001DED78 48 00 03 B8 */ b lbl_801E21D0 +lbl_801E1E1C: +/* 801E1E1C 001DED7C A0 01 00 C0 */ lhz r0, 0xc0(r1) +/* 801E1E20 001DED80 7F C3 F3 78 */ mr r3, r30 +/* 801E1E24 001DED84 38 81 00 4C */ addi r4, r1, 0x4c +/* 801E1E28 001DED88 B0 01 00 4C */ sth r0, 0x4c(r1) +/* 801E1E2C 001DED8C 4B E6 A7 79 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801E1E30 001DED90 7C 64 1B 78 */ mr r4, r3 +/* 801E1E34 001DED94 38 61 01 18 */ addi r3, r1, 0x118 +/* 801E1E38 001DED98 4B EC DC 05 */ bl "__ct__18TCastToPtr<5CBomb>FP7CEntity" +/* 801E1E3C 001DED9C 80 03 00 04 */ lwz r0, 4(r3) +/* 801E1E40 001DEDA0 28 00 00 00 */ cmplwi r0, 0 +/* 801E1E44 001DEDA4 41 82 03 8C */ beq lbl_801E21D0 +/* 801E1E48 001DEDA8 80 1F 06 44 */ lwz r0, 0x644(r31) +/* 801E1E4C 001DEDAC 2C 00 00 01 */ cmpwi r0, 1 +/* 801E1E50 001DEDB0 40 82 03 80 */ bne lbl_801E21D0 +/* 801E1E54 001DEDB4 88 1F 09 3C */ lbz r0, 0x93c(r31) +/* 801E1E58 001DEDB8 28 00 00 00 */ cmplwi r0, 0 +/* 801E1E5C 001DEDBC 41 82 03 74 */ beq lbl_801E21D0 +/* 801E1E60 001DEDC0 80 BF 06 48 */ lwz r5, 0x648(r31) +/* 801E1E64 001DEDC4 7F E3 FB 78 */ mr r3, r31 +/* 801E1E68 001DEDC8 7F C4 F3 78 */ mr r4, r30 +/* 801E1E6C 001DEDCC 4B FF 8F C1 */ bl sub_801dae2c +/* 801E1E70 001DEDD0 48 00 03 60 */ b lbl_801E21D0 +/* 801E1E74 001DEDD4 A0 14 00 00 */ lhz r0, 0(r20) +/* 801E1E78 001DEDD8 7F C3 F3 78 */ mr r3, r30 +/* 801E1E7C 001DEDDC 38 81 00 48 */ addi r4, r1, 0x48 +/* 801E1E80 001DEDE0 B0 01 00 48 */ sth r0, 0x48(r1) +/* 801E1E84 001DEDE4 4B E6 A6 F1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801E1E88 001DEDE8 7C 64 1B 78 */ mr r4, r3 +/* 801E1E8C 001DEDEC 38 61 01 38 */ addi r3, r1, 0x138 +/* 801E1E90 001DEDF0 4B EC D4 BD */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 801E1E94 001DEDF4 80 83 00 04 */ lwz r4, 4(r3) +/* 801E1E98 001DEDF8 28 04 00 00 */ cmplwi r4, 0 +/* 801E1E9C 001DEDFC 41 82 03 34 */ beq lbl_801E21D0 +/* 801E1EA0 001DEE00 38 61 00 44 */ addi r3, r1, 0x44 +/* 801E1EA4 001DEE04 4B FC 6C E9 */ bl GetLastTouchedObject__15CCollisionActorCFv +/* 801E1EA8 001DEE08 A0 01 00 44 */ lhz r0, 0x44(r1) +/* 801E1EAC 001DEE0C 80 7F 05 F0 */ lwz r3, 0x5f0(r31) +/* 801E1EB0 001DEE10 B0 01 00 BC */ sth r0, 0xbc(r1) +/* 801E1EB4 001DEE14 4B FC 53 95 */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 801E1EB8 001DEE18 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801E1EBC 001DEE1C 7C 72 1B 78 */ mr r18, r3 +/* 801E1EC0 001DEE20 3A 60 00 00 */ li r19, 0 +/* 801E1EC4 001DEE24 B0 01 00 B8 */ sth r0, 0xb8(r1) +/* 801E1EC8 001DEE28 48 00 00 38 */ b lbl_801E1F00 +lbl_801E1ECC: +/* 801E1ECC 001DEE2C 80 7F 05 F0 */ lwz r3, 0x5f0(r31) +/* 801E1ED0 001DEE30 7E 64 9B 78 */ mr r4, r19 +/* 801E1ED4 001DEE34 4B FC 53 65 */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 801E1ED8 001DEE38 A0 94 00 00 */ lhz r4, 0(r20) +/* 801E1EDC 001DEE3C A0 03 00 3C */ lhz r0, 0x3c(r3) +/* 801E1EE0 001DEE40 7C 04 00 40 */ cmplw r4, r0 +/* 801E1EE4 001DEE44 40 82 00 18 */ bne lbl_801E1EFC +/* 801E1EE8 001DEE48 80 7F 06 1C */ lwz r3, 0x61c(r31) +/* 801E1EEC 001DEE4C 56 60 08 3C */ slwi r0, r19, 1 +/* 801E1EF0 001DEE50 7C 03 02 2E */ lhzx r0, r3, r0 +/* 801E1EF4 001DEE54 B0 01 00 B8 */ sth r0, 0xb8(r1) +/* 801E1EF8 001DEE58 48 00 00 10 */ b lbl_801E1F08 +lbl_801E1EFC: +/* 801E1EFC 001DEE5C 3A 73 00 01 */ addi r19, r19, 1 +lbl_801E1F00: +/* 801E1F00 001DEE60 7C 13 90 40 */ cmplw r19, r18 +/* 801E1F04 001DEE64 41 80 FF C8 */ blt lbl_801E1ECC +lbl_801E1F08: +/* 801E1F08 001DEE68 A0 61 00 B8 */ lhz r3, 0xb8(r1) +/* 801E1F0C 001DEE6C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801E1F10 001DEE70 7C 03 00 40 */ cmplw r3, r0 +/* 801E1F14 001DEE74 41 82 02 BC */ beq lbl_801E21D0 +/* 801E1F18 001DEE78 A0 01 00 B8 */ lhz r0, 0xb8(r1) +/* 801E1F1C 001DEE7C 7F C3 F3 78 */ mr r3, r30 +/* 801E1F20 001DEE80 38 81 00 40 */ addi r4, r1, 0x40 +/* 801E1F24 001DEE84 B0 01 00 40 */ sth r0, 0x40(r1) +/* 801E1F28 001DEE88 4B E6 A6 4D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801E1F2C 001DEE8C 7C 73 1B 79 */ or. r19, r3, r3 +/* 801E1F30 001DEE90 41 82 02 A0 */ beq lbl_801E21D0 +/* 801E1F34 001DEE94 A0 01 00 BC */ lhz r0, 0xbc(r1) +/* 801E1F38 001DEE98 7F C3 F3 78 */ mr r3, r30 +/* 801E1F3C 001DEE9C 38 81 00 3C */ addi r4, r1, 0x3c +/* 801E1F40 001DEEA0 B0 01 00 3C */ sth r0, 0x3c(r1) +/* 801E1F44 001DEEA4 4B E6 A6 61 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801E1F48 001DEEA8 7C 64 1B 78 */ mr r4, r3 +/* 801E1F4C 001DEEAC 38 61 01 10 */ addi r3, r1, 0x110 +/* 801E1F50 001DEEB0 4B EC B7 BD */ bl "__ct__29TCastToPtr<15CGameProjectile>FP7CEntity" +/* 801E1F54 001DEEB4 82 83 00 04 */ lwz r20, 4(r3) +/* 801E1F58 001DEEB8 28 14 00 00 */ cmplwi r20, 0 +/* 801E1F5C 001DEEBC 41 82 02 74 */ beq lbl_801E21D0 +/* 801E1F60 001DEEC0 80 9F 04 50 */ lwz r4, 0x450(r31) +/* 801E1F64 001DEEC4 80 04 02 D0 */ lwz r0, 0x2d0(r4) +/* 801E1F68 001DEEC8 2C 00 00 18 */ cmpwi r0, 0x18 +/* 801E1F6C 001DEECC 41 82 00 98 */ beq lbl_801E2004 +/* 801E1F70 001DEED0 C0 33 03 24 */ lfs f1, 0x324(r19) +/* 801E1F74 001DEED4 C0 02 AC DC */ lfs f0, lbl_805AC9FC@sda21(r2) +/* 801E1F78 001DEED8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801E1F7C 001DEEDC 4C 40 13 82 */ cror 2, 0, 2 +/* 801E1F80 001DEEE0 40 82 00 84 */ bne lbl_801E2004 +/* 801E1F84 001DEEE4 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801E1F88 001DEEE8 C0 02 AC D8 */ lfs f0, lbl_805AC9F8@sda21(r2) +/* 801E1F8C 001DEEEC 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801E1F90 001DEEF0 3C 60 80 3E */ lis r3, lbl_803E10C8@ha +/* 801E1F94 001DEEF4 90 01 01 D4 */ stw r0, 0x1d4(r1) +/* 801E1F98 001DEEF8 38 C3 10 C8 */ addi r6, r3, lbl_803E10C8@l +/* 801E1F9C 001DEEFC 38 60 00 1A */ li r3, 0x1a +/* 801E1FA0 001DEF00 38 A0 00 05 */ li r5, 5 +/* 801E1FA4 001DEF04 38 00 00 00 */ li r0, 0 +/* 801E1FA8 001DEF08 3A 44 00 04 */ addi r18, r4, 4 +/* 801E1FAC 001DEF0C 90 61 01 D8 */ stw r3, 0x1d8(r1) +/* 801E1FB0 001DEF10 7E 43 93 78 */ mr r3, r18 +/* 801E1FB4 001DEF14 38 80 00 1A */ li r4, 0x1a +/* 801E1FB8 001DEF18 90 C1 01 D4 */ stw r6, 0x1d4(r1) +/* 801E1FBC 001DEF1C D0 01 01 DC */ stfs f0, 0x1dc(r1) +/* 801E1FC0 001DEF20 90 A1 01 E0 */ stw r5, 0x1e0(r1) +/* 801E1FC4 001DEF24 98 01 01 E4 */ stb r0, 0x1e4(r1) +/* 801E1FC8 001DEF28 4B F4 F4 71 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801E1FCC 001DEF2C 80 01 01 D8 */ lwz r0, 0x1d8(r1) +/* 801E1FD0 001DEF30 3C 60 80 3E */ lis r3, lbl_803E10C8@ha +/* 801E1FD4 001DEF34 38 83 10 C8 */ addi r4, r3, lbl_803E10C8@l +/* 801E1FD8 001DEF38 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801E1FDC 001DEF3C 90 12 02 88 */ stw r0, 0x288(r18) +/* 801E1FE0 001DEF40 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801E1FE4 001DEF44 C0 01 01 DC */ lfs f0, 0x1dc(r1) +/* 801E1FE8 001DEF48 80 A1 01 E0 */ lwz r5, 0x1e0(r1) +/* 801E1FEC 001DEF4C D0 12 02 8C */ stfs f0, 0x28c(r18) +/* 801E1FF0 001DEF50 88 61 01 E4 */ lbz r3, 0x1e4(r1) +/* 801E1FF4 001DEF54 90 B2 02 90 */ stw r5, 0x290(r18) +/* 801E1FF8 001DEF58 90 81 01 D4 */ stw r4, 0x1d4(r1) +/* 801E1FFC 001DEF5C 98 72 02 94 */ stb r3, 0x294(r18) +/* 801E2000 001DEF60 90 01 01 D4 */ stw r0, 0x1d4(r1) +lbl_801E2004: +/* 801E2004 001DEF64 C0 22 AC DC */ lfs f1, lbl_805AC9FC@sda21(r2) +/* 801E2008 001DEF68 7E 63 9B 78 */ mr r3, r19 +/* 801E200C 001DEF6C 38 81 01 78 */ addi r4, r1, 0x178 +/* 801E2010 001DEF70 D0 21 01 78 */ stfs f1, 0x178(r1) +/* 801E2014 001DEF74 D0 21 01 7C */ stfs f1, 0x17c(r1) +/* 801E2018 001DEF78 D0 21 01 80 */ stfs f1, 0x180(r1) +/* 801E201C 001DEF7C 81 93 00 00 */ lwz r12, 0(r19) +/* 801E2020 001DEF80 81 8C 00 90 */ lwz r12, 0x90(r12) +/* 801E2024 001DEF84 7D 89 03 A6 */ mtctr r12 +/* 801E2028 001DEF88 4E 80 04 21 */ bctrl +/* 801E202C 001DEF8C C0 54 00 60 */ lfs f2, 0x60(r20) +/* 801E2030 001DEF90 C0 34 00 50 */ lfs f1, 0x50(r20) +/* 801E2034 001DEF94 C0 14 00 40 */ lfs f0, 0x40(r20) +/* 801E2038 001DEF98 D0 01 01 9C */ stfs f0, 0x19c(r1) +/* 801E203C 001DEF9C D0 21 01 A0 */ stfs f1, 0x1a0(r1) +/* 801E2040 001DEFA0 D0 41 01 A4 */ stfs f2, 0x1a4(r1) +/* 801E2044 001DEFA4 80 7E 08 B8 */ lwz r3, 0x8b8(r30) +/* 801E2048 001DEFA8 80 63 00 00 */ lwz r3, 0(r3) +/* 801E204C 001DEFAC 80 03 00 14 */ lwz r0, 0x14(r3) +/* 801E2050 001DEFB0 2C 00 00 03 */ cmpwi r0, 3 +/* 801E2054 001DEFB4 40 82 00 14 */ bne lbl_801E2068 +/* 801E2058 001DEFB8 40 82 00 24 */ bne lbl_801E207C +/* 801E205C 001DEFBC 80 1F 07 C4 */ lwz r0, 0x7c4(r31) +/* 801E2060 001DEFC0 2C 00 00 03 */ cmpwi r0, 3 +/* 801E2064 001DEFC4 41 82 00 18 */ beq lbl_801E207C +lbl_801E2068: +/* 801E2068 001DEFC8 80 DF 06 D0 */ lwz r6, 0x6d0(r31) +/* 801E206C 001DEFCC 7F E3 FB 78 */ mr r3, r31 +/* 801E2070 001DEFD0 7F C4 F3 78 */ mr r4, r30 +/* 801E2074 001DEFD4 38 A1 01 9C */ addi r5, r1, 0x19c +/* 801E2078 001DEFD8 4B FF A3 CD */ bl sub_801dc444 +lbl_801E207C: +/* 801E207C 001DEFDC 88 13 03 35 */ lbz r0, 0x335(r19) +/* 801E2080 001DEFE0 28 00 00 00 */ cmplwi r0, 0 +/* 801E2084 001DEFE4 41 82 00 48 */ beq lbl_801E20CC +/* 801E2088 001DEFE8 93 C1 00 08 */ stw r30, 8(r1) +/* 801E208C 001DEFEC 38 00 00 00 */ li r0, 0 +/* 801E2090 001DEFF0 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801E2094 001DEFF4 C0 22 AC D8 */ lfs f1, lbl_805AC9F8@sda21(r2) +/* 801E2098 001DEFF8 90 01 00 0C */ stw r0, 0xc(r1) +/* 801E209C 001DEFFC 39 03 66 A0 */ addi r8, r3, skZero3f@l +/* 801E20A0 001DF000 C0 42 AC E8 */ lfs f2, lbl_805ACA08@sda21(r2) +/* 801E20A4 001DF004 7F E3 FB 78 */ mr r3, r31 +/* 801E20A8 001DF008 C0 62 AC EC */ lfs f3, lbl_805ACA0C@sda21(r2) +/* 801E20AC 001DF00C 39 21 01 9C */ addi r9, r1, 0x19c +/* 801E20B0 001DF010 81 5E 08 CC */ lwz r10, 0x8cc(r30) +/* 801E20B4 001DF014 38 80 0A C0 */ li r4, 0xac0 +/* 801E20B8 001DF018 38 A0 00 00 */ li r5, 0 +/* 801E20BC 001DF01C 38 C0 00 14 */ li r6, 0x14 +/* 801E20C0 001DF020 38 E0 00 7F */ li r7, 0x7f +/* 801E20C4 001DF024 4B E7 0E 6D */ bl ProcessSoundEvent__6CActorFififfUcUcRC9CVector3fRC9CVector3fiR13CStateManager +/* 801E20C8 001DF028 48 00 01 08 */ b lbl_801E21D0 +lbl_801E20CC: +/* 801E20CC 001DF02C 93 C1 00 08 */ stw r30, 8(r1) +/* 801E20D0 001DF030 38 00 00 01 */ li r0, 1 +/* 801E20D4 001DF034 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801E20D8 001DF038 C0 22 AC D8 */ lfs f1, lbl_805AC9F8@sda21(r2) +/* 801E20DC 001DF03C 90 01 00 0C */ stw r0, 0xc(r1) +/* 801E20E0 001DF040 39 03 66 A0 */ addi r8, r3, skZero3f@l +/* 801E20E4 001DF044 C0 42 AC E8 */ lfs f2, lbl_805ACA08@sda21(r2) +/* 801E20E8 001DF048 7F E3 FB 78 */ mr r3, r31 +/* 801E20EC 001DF04C 80 9F 07 5C */ lwz r4, 0x75c(r31) +/* 801E20F0 001DF050 39 21 01 9C */ addi r9, r1, 0x19c +/* 801E20F4 001DF054 C0 62 AC EC */ lfs f3, lbl_805ACA0C@sda21(r2) +/* 801E20F8 001DF058 38 A0 00 00 */ li r5, 0 +/* 801E20FC 001DF05C 81 5E 08 CC */ lwz r10, 0x8cc(r30) +/* 801E2100 001DF060 38 C0 00 14 */ li r6, 0x14 +/* 801E2104 001DF064 38 E0 00 7F */ li r7, 0x7f +/* 801E2108 001DF068 4B E7 0E 29 */ bl ProcessSoundEvent__6CActorFififfUcUcRC9CVector3fRC9CVector3fiR13CStateManager +/* 801E210C 001DF06C 48 00 00 C4 */ b lbl_801E21D0 +/* 801E2110 001DF070 81 9F 00 00 */ lwz r12, 0(r31) +/* 801E2114 001DF074 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801E2118 001DF078 38 A4 66 A0 */ addi r5, r4, skZero3f@l +/* 801E211C 001DF07C 7F E3 FB 78 */ mr r3, r31 +/* 801E2120 001DF080 81 8C 00 84 */ lwz r12, 0x84(r12) +/* 801E2124 001DF084 7F C4 F3 78 */ mr r4, r30 +/* 801E2128 001DF088 38 C0 00 14 */ li r6, 0x14 +/* 801E212C 001DF08C 7D 89 03 A6 */ mtctr r12 +/* 801E2130 001DF090 4E 80 04 21 */ bctrl +/* 801E2134 001DF094 48 00 00 9C */ b lbl_801E21D0 +/* 801E2138 001DF098 80 7F 06 14 */ lwz r3, 0x614(r31) +/* 801E213C 001DF09C 82 9F 06 48 */ lwz r20, 0x648(r31) +/* 801E2140 001DF0A0 3A 63 FF FF */ addi r19, r3, -1 +/* 801E2144 001DF0A4 56 92 08 3C */ slwi r18, r20, 1 +/* 801E2148 001DF0A8 48 00 00 50 */ b lbl_801E2198 +lbl_801E214C: +/* 801E214C 001DF0AC 80 BF 06 1C */ lwz r5, 0x61c(r31) +/* 801E2150 001DF0B0 7F C3 F3 78 */ mr r3, r30 +/* 801E2154 001DF0B4 38 81 00 38 */ addi r4, r1, 0x38 +/* 801E2158 001DF0B8 7C 05 92 2E */ lhzx r0, r5, r18 +/* 801E215C 001DF0BC B0 01 00 B4 */ sth r0, 0xb4(r1) +/* 801E2160 001DF0C0 B0 01 00 38 */ sth r0, 0x38(r1) +/* 801E2164 001DF0C4 4B E6 A4 11 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801E2168 001DF0C8 28 03 00 00 */ cmplwi r3, 0 +/* 801E216C 001DF0CC 41 82 00 18 */ beq lbl_801E2184 +/* 801E2170 001DF0D0 81 83 00 00 */ lwz r12, 0(r3) +/* 801E2174 001DF0D4 38 80 00 00 */ li r4, 0 +/* 801E2178 001DF0D8 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801E217C 001DF0DC 7D 89 03 A6 */ mtctr r12 +/* 801E2180 001DF0E0 4E 80 04 21 */ bctrl +lbl_801E2184: +/* 801E2184 001DF0E4 80 7F 06 48 */ lwz r3, 0x648(r31) +/* 801E2188 001DF0E8 3A 94 00 01 */ addi r20, r20, 1 +/* 801E218C 001DF0EC 3A 52 00 02 */ addi r18, r18, 2 +/* 801E2190 001DF0F0 38 03 00 01 */ addi r0, r3, 1 +/* 801E2194 001DF0F4 90 1F 06 48 */ stw r0, 0x648(r31) +lbl_801E2198: +/* 801E2198 001DF0F8 7C 14 98 40 */ cmplw r20, r19 +/* 801E219C 001DF0FC 41 80 FF B0 */ blt lbl_801E214C +/* 801E21A0 001DF100 48 00 00 30 */ b lbl_801E21D0 +/* 801E21A4 001DF104 38 00 00 01 */ li r0, 1 +/* 801E21A8 001DF108 38 80 00 00 */ li r4, 0 +/* 801E21AC 001DF10C 98 1F 09 5C */ stb r0, 0x95c(r31) +/* 801E21B0 001DF110 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801E21B4 001DF114 4B F5 89 F1 */ bl SetFallState__15CBodyControllerFQ23pas10EFallState +/* 801E21B8 001DF118 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801E21BC 001DF11C 38 80 00 05 */ li r4, 5 +/* 801E21C0 001DF120 38 63 02 A4 */ addi r3, r3, 0x2a4 +/* 801E21C4 001DF124 4B F5 1F 19 */ bl SetState__14CBodyStateInfoFQ23pas15EAnimationState +/* 801E21C8 001DF128 38 00 00 00 */ li r0, 0 +/* 801E21CC 001DF12C 98 1F 09 3D */ stb r0, 0x93d(r31) +lbl_801E21D0: +/* 801E21D0 001DF130 E3 E1 04 58 */ psq_l f31, 1112(r1), 0, qr0 +/* 801E21D4 001DF134 CB E1 04 50 */ lfd f31, 0x450(r1) +/* 801E21D8 001DF138 BA 41 04 18 */ lmw r18, 0x418(r1) +/* 801E21DC 001DF13C 80 01 04 64 */ lwz r0, 0x464(r1) +/* 801E21E0 001DF140 7C 08 03 A6 */ mtlr r0 +/* 801E21E4 001DF144 38 21 04 60 */ addi r1, r1, 0x460 +/* 801E21E8 001DF148 4E 80 00 20 */ blr + +.global Accept__8CThardusFR8IVisitor +Accept__8CThardusFR8IVisitor: +/* 801E21EC 001DF14C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801E21F0 001DF150 7C 08 02 A6 */ mflr r0 +/* 801E21F4 001DF154 90 01 00 14 */ stw r0, 0x14(r1) +/* 801E21F8 001DF158 7C 60 1B 78 */ mr r0, r3 +/* 801E21FC 001DF15C 7C 83 23 78 */ mr r3, r4 +/* 801E2200 001DF160 81 84 00 00 */ lwz r12, 0(r4) +/* 801E2204 001DF164 7C 04 03 78 */ mr r4, r0 +/* 801E2208 001DF168 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801E220C 001DF16C 7D 89 03 A6 */ mtctr r12 +/* 801E2210 001DF170 4E 80 04 21 */ bctrl +/* 801E2214 001DF174 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801E2218 001DF178 7C 08 03 A6 */ mtlr r0 +/* 801E221C 001DF17C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801E2220 001DF180 4E 80 00 20 */ blr + +.global "__ct__8CThardusF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC16CActorParametersRC14CPatternedInfoRCQ24rstl47vector<10CModelData,Q24rstl17rmemory_allocator>RCQ24rstl47vector<10CModelData,Q24rstl17rmemory_allocator>UiUiUifffffff" +"__ct__8CThardusF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC16CActorParametersRC14CPatternedInfoRCQ24rstl47vector<10CModelData,Q24rstl17rmemory_allocator>RCQ24rstl47vector<10CModelData,Q24rstl17rmemory_allocator>UiUiUifffffff": +/* 801E2224 001DF184 94 21 FE 50 */ stwu r1, -0x1b0(r1) +/* 801E2228 001DF188 7C 08 02 A6 */ mflr r0 +/* 801E222C 001DF18C 90 01 01 B4 */ stw r0, 0x1b4(r1) +/* 801E2230 001DF190 DB E1 01 A0 */ stfd f31, 0x1a0(r1) +/* 801E2234 001DF194 F3 E1 01 A8 */ psq_st f31, 424(r1), 0, qr0 +/* 801E2238 001DF198 DB C1 01 90 */ stfd f30, 0x190(r1) +/* 801E223C 001DF19C F3 C1 01 98 */ psq_st f30, 408(r1), 0, qr0 +/* 801E2240 001DF1A0 DB A1 01 80 */ stfd f29, 0x180(r1) +/* 801E2244 001DF1A4 F3 A1 01 88 */ psq_st f29, 392(r1), 0, qr0 +/* 801E2248 001DF1A8 DB 81 01 70 */ stfd f28, 0x170(r1) +/* 801E224C 001DF1AC F3 81 01 78 */ psq_st f28, 376(r1), 0, qr0 +/* 801E2250 001DF1B0 DB 61 01 60 */ stfd f27, 0x160(r1) +/* 801E2254 001DF1B4 F3 61 01 68 */ psq_st f27, 360(r1), 0, qr0 +/* 801E2258 001DF1B8 DB 41 01 50 */ stfd f26, 0x150(r1) +/* 801E225C 001DF1BC F3 41 01 58 */ psq_st f26, 344(r1), 0, qr0 +/* 801E2260 001DF1C0 BD C1 01 08 */ stmw r14, 0x108(r1) +/* 801E2264 001DF1C4 A0 04 00 00 */ lhz r0, 0(r4) +/* 801E2268 001DF1C8 7D 50 53 78 */ mr r16, r10 +/* 801E226C 001DF1CC 7C CB 33 78 */ mr r11, r6 +/* 801E2270 001DF1D0 7D 0A 43 78 */ mr r10, r8 +/* 801E2274 001DF1D4 B0 01 00 20 */ sth r0, 0x20(r1) +/* 801E2278 001DF1D8 38 C0 00 00 */ li r6, 0 +/* 801E227C 001DF1DC 38 00 00 01 */ li r0, 1 +/* 801E2280 001DF1E0 FF 40 08 90 */ fmr f26, f1 +/* 801E2284 001DF1E4 92 01 00 08 */ stw r16, 8(r1) +/* 801E2288 001DF1E8 38 80 00 02 */ li r4, 2 +/* 801E228C 001DF1EC FF 60 10 90 */ fmr f27, f2 +/* 801E2290 001DF1F0 82 21 01 B8 */ lwz r17, 0x1b8(r1) +/* 801E2294 001DF1F4 90 C1 00 0C */ stw r6, 0xc(r1) +/* 801E2298 001DF1F8 7C A6 2B 78 */ mr r6, r5 +/* 801E229C 001DF1FC FF 80 18 90 */ fmr f28, f3 +/* 801E22A0 001DF200 90 01 00 10 */ stw r0, 0x10(r1) +/* 801E22A4 001DF204 FF A0 20 90 */ fmr f29, f4 +/* 801E22A8 001DF208 82 41 01 BC */ lwz r18, 0x1bc(r1) +/* 801E22AC 001DF20C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801E22B0 001DF210 FF C0 28 90 */ fmr f30, f5 +/* 801E22B4 001DF214 FF E0 30 90 */ fmr f31, f6 +/* 801E22B8 001DF218 82 61 01 C8 */ lwz r19, 0x1c8(r1) +/* 801E22BC 001DF21C 91 21 00 18 */ stw r9, 0x18(r1) +/* 801E22C0 001DF220 7C E9 3B 78 */ mr r9, r7 +/* 801E22C4 001DF224 82 81 01 CC */ lwz r20, 0x1cc(r1) +/* 801E22C8 001DF228 7C 6F 1B 78 */ mr r15, r3 +/* 801E22CC 001DF22C 90 81 00 1C */ stw r4, 0x1c(r1) +/* 801E22D0 001DF230 7D 68 5B 78 */ mr r8, r11 +/* 801E22D4 001DF234 82 A1 01 D0 */ lwz r21, 0x1d0(r1) +/* 801E22D8 001DF238 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801E22DC 001DF23C 82 C1 01 D4 */ lwz r22, 0x1d4(r1) +/* 801E22E0 001DF240 38 80 00 24 */ li r4, 0x24 +/* 801E22E4 001DF244 82 E1 01 D8 */ lwz r23, 0x1d8(r1) +/* 801E22E8 001DF248 38 E0 00 00 */ li r7, 0 +/* 801E22EC 001DF24C 83 01 01 DC */ lwz r24, 0x1dc(r1) +/* 801E22F0 001DF250 83 21 01 E0 */ lwz r25, 0x1e0(r1) +/* 801E22F4 001DF254 83 41 01 E4 */ lwz r26, 0x1e4(r1) +/* 801E22F8 001DF258 83 61 01 E8 */ lwz r27, 0x1e8(r1) +/* 801E22FC 001DF25C 83 81 01 EC */ lwz r28, 0x1ec(r1) +/* 801E2300 001DF260 83 A1 01 F0 */ lwz r29, 0x1f0(r1) +/* 801E2304 001DF264 83 C1 01 F4 */ lwz r30, 0x1f4(r1) +/* 801E2308 001DF268 83 E1 01 F8 */ lwz r31, 0x1f8(r1) +/* 801E230C 001DF26C 81 C1 01 FC */ lwz r14, 0x1fc(r1) +/* 801E2310 001DF270 4B E9 B1 41 */ bl "__ct__10CPatternedFUi9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC16CActorParametersUi" +/* 801E2314 001DF274 3C 60 80 3E */ lis r3, lbl_803E5CE0@ha +/* 801E2318 001DF278 38 A0 00 00 */ li r5, 0 +/* 801E231C 001DF27C 38 63 5C E0 */ addi r3, r3, lbl_803E5CE0@l +/* 801E2320 001DF280 38 00 00 01 */ li r0, 1 +/* 801E2324 001DF284 90 6F 00 00 */ stw r3, 0(r15) +/* 801E2328 001DF288 7E 24 8B 78 */ mr r4, r17 +/* 801E232C 001DF28C 38 6F 05 CC */ addi r3, r15, 0x5cc +/* 801E2330 001DF290 A0 CD A3 8C */ lhz r6, lbl_805A8F4C@sda21(r13) +/* 801E2334 001DF294 B0 CF 05 6C */ sth r6, 0x56c(r15) +/* 801E2338 001DF298 90 AF 05 70 */ stw r5, 0x570(r15) +/* 801E233C 001DF29C 90 AF 05 74 */ stw r5, 0x574(r15) +/* 801E2340 001DF2A0 90 AF 05 78 */ stw r5, 0x578(r15) +/* 801E2344 001DF2A4 90 0F 05 C4 */ stw r0, 0x5c4(r15) +/* 801E2348 001DF2A8 98 AF 05 C8 */ stb r5, 0x5c8(r15) +/* 801E234C 001DF2AC 48 00 0A C1 */ bl sub_801e2e0c +/* 801E2350 001DF2B0 7E 44 93 78 */ mr r4, r18 +/* 801E2354 001DF2B4 38 6F 05 DC */ addi r3, r15, 0x5dc +/* 801E2358 001DF2B8 48 00 0A B5 */ bl sub_801e2e0c +/* 801E235C 001DF2BC 38 A0 FF FF */ li r5, -1 +/* 801E2360 001DF2C0 38 80 00 00 */ li r4, 0 +/* 801E2364 001DF2C4 90 AF 05 EC */ stw r5, 0x5ec(r15) +/* 801E2368 001DF2C8 38 6F 06 50 */ addi r3, r15, 0x650 +/* 801E236C 001DF2CC C0 22 AC DC */ lfs f1, lbl_805AC9FC@sda21(r2) +/* 801E2370 001DF2D0 90 8F 05 F0 */ stw r4, 0x5f0(r15) +/* 801E2374 001DF2D4 C0 42 AC D8 */ lfs f2, lbl_805AC9F8@sda21(r2) +/* 801E2378 001DF2D8 90 8F 05 F4 */ stw r4, 0x5f4(r15) +/* 801E237C 001DF2DC 90 8F 05 F8 */ stw r4, 0x5f8(r15) +/* 801E2380 001DF2E0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801E2384 001DF2E4 B0 0F 05 FC */ sth r0, 0x5fc(r15) +/* 801E2388 001DF2E8 80 01 01 C0 */ lwz r0, 0x1c0(r1) +/* 801E238C 001DF2EC 90 0F 06 00 */ stw r0, 0x600(r15) +/* 801E2390 001DF2F0 80 01 01 C4 */ lwz r0, 0x1c4(r1) +/* 801E2394 001DF2F4 90 0F 06 04 */ stw r0, 0x604(r15) +/* 801E2398 001DF2F8 92 6F 06 08 */ stw r19, 0x608(r15) +/* 801E239C 001DF2FC 80 0D A3 88 */ lwz r0, lbl_805A8F48@sda21(r13) +/* 801E23A0 001DF300 90 0F 06 0C */ stw r0, 0x60c(r15) +/* 801E23A4 001DF304 90 8F 06 14 */ stw r4, 0x614(r15) +/* 801E23A8 001DF308 90 8F 06 18 */ stw r4, 0x618(r15) +/* 801E23AC 001DF30C 90 8F 06 1C */ stw r4, 0x61c(r15) +/* 801E23B0 001DF310 90 8F 06 24 */ stw r4, 0x624(r15) +/* 801E23B4 001DF314 90 8F 06 28 */ stw r4, 0x628(r15) +/* 801E23B8 001DF318 90 8F 06 2C */ stw r4, 0x62c(r15) +/* 801E23BC 001DF31C 92 8F 06 30 */ stw r20, 0x630(r15) +/* 801E23C0 001DF320 90 8F 06 38 */ stw r4, 0x638(r15) +/* 801E23C4 001DF324 90 8F 06 3C */ stw r4, 0x63c(r15) +/* 801E23C8 001DF328 90 8F 06 40 */ stw r4, 0x640(r15) +/* 801E23CC 001DF32C 90 AF 06 44 */ stw r5, 0x644(r15) +/* 801E23D0 001DF330 90 8F 06 48 */ stw r4, 0x648(r15) +/* 801E23D4 001DF334 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801E23D8 001DF338 B0 0F 06 4C */ sth r0, 0x64c(r15) +/* 801E23DC 001DF33C 48 13 1E 25 */ bl __ct__9CVector2fFff +/* 801E23E0 001DF340 38 80 FF FF */ li r4, -1 +/* 801E23E4 001DF344 38 00 00 00 */ li r0, 0 +/* 801E23E8 001DF348 90 8F 06 58 */ stw r4, 0x658(r15) +/* 801E23EC 001DF34C 57 83 04 3E */ clrlwi r3, r28, 0x10 +/* 801E23F0 001DF350 C0 02 AC D8 */ lfs f0, lbl_805AC9F8@sda21(r2) +/* 801E23F4 001DF354 90 8F 06 5C */ stw r4, 0x65c(r15) +/* 801E23F8 001DF358 90 0F 06 60 */ stw r0, 0x660(r15) +/* 801E23FC 001DF35C 90 0F 06 64 */ stw r0, 0x664(r15) +/* 801E2400 001DF360 98 0F 06 88 */ stb r0, 0x688(r15) +/* 801E2404 001DF364 98 0F 06 89 */ stb r0, 0x689(r15) +/* 801E2408 001DF368 90 0F 06 8C */ stw r0, 0x68c(r15) +/* 801E240C 001DF36C D0 0F 06 90 */ stfs f0, 0x690(r15) +/* 801E2410 001DF370 D3 4F 06 94 */ stfs f26, 0x694(r15) +/* 801E2414 001DF374 D3 6F 06 98 */ stfs f27, 0x698(r15) +/* 801E2418 001DF378 D3 8F 06 A0 */ stfs f28, 0x6a0(r15) +/* 801E241C 001DF37C D3 AF 06 A4 */ stfs f29, 0x6a4(r15) +/* 801E2420 001DF380 D3 CF 06 A8 */ stfs f30, 0x6a8(r15) +/* 801E2424 001DF384 D3 EF 06 AC */ stfs f31, 0x6ac(r15) +/* 801E2428 001DF388 90 0F 06 B4 */ stw r0, 0x6b4(r15) +/* 801E242C 001DF38C 90 0F 06 B8 */ stw r0, 0x6b8(r15) +/* 801E2430 001DF390 90 0F 06 BC */ stw r0, 0x6bc(r15) +/* 801E2434 001DF394 90 0F 06 C4 */ stw r0, 0x6c4(r15) +/* 801E2438 001DF398 90 0F 06 C8 */ stw r0, 0x6c8(r15) +/* 801E243C 001DF39C 90 0F 06 CC */ stw r0, 0x6cc(r15) +/* 801E2440 001DF3A0 92 AF 06 D0 */ stw r21, 0x6d0(r15) +/* 801E2444 001DF3A4 92 CF 06 D4 */ stw r22, 0x6d4(r15) +/* 801E2448 001DF3A8 92 EF 06 D8 */ stw r23, 0x6d8(r15) +/* 801E244C 001DF3AC 93 0F 06 DC */ stw r24, 0x6dc(r15) +/* 801E2450 001DF3B0 93 2F 06 E0 */ stw r25, 0x6e0(r15) +/* 801E2454 001DF3B4 93 4F 06 E4 */ stw r26, 0x6e4(r15) +/* 801E2458 001DF3B8 93 6F 06 E8 */ stw r27, 0x6e8(r15) +/* 801E245C 001DF3BC 48 10 65 55 */ bl TranslateSFXID__11CSfxManagerFUs +/* 801E2460 001DF3C0 B0 6F 06 EC */ sth r3, 0x6ec(r15) +/* 801E2464 001DF3C4 3C 60 80 1E */ lis r3, sub_801e2dd0@ha +/* 801E2468 001DF3C8 38 83 2D D0 */ addi r4, r3, sub_801e2dd0@l +/* 801E246C 001DF3CC 38 00 00 00 */ li r0, 0 +/* 801E2470 001DF3D0 93 AF 06 F0 */ stw r29, 0x6f0(r15) +/* 801E2474 001DF3D4 38 6F 06 FC */ addi r3, r15, 0x6fc +/* 801E2478 001DF3D8 C0 02 AD 34 */ lfs f0, lbl_805ACA54@sda21(r2) +/* 801E247C 001DF3DC 38 A0 00 00 */ li r5, 0 +/* 801E2480 001DF3E0 90 0F 06 F4 */ stw r0, 0x6f4(r15) +/* 801E2484 001DF3E4 38 C0 00 14 */ li r6, 0x14 +/* 801E2488 001DF3E8 38 E0 00 04 */ li r7, 4 +/* 801E248C 001DF3EC D0 0F 06 F8 */ stfs f0, 0x6f8(r15) +/* 801E2490 001DF3F0 48 1A 72 BD */ bl __construct_array +/* 801E2494 001DF3F4 3C 60 80 5A */ lis r3, lbl_805A6724@ha +/* 801E2498 001DF3F8 3C 80 80 5A */ lis r4, skIdentity4f@ha +/* 801E249C 001DF3FC 38 A3 67 24 */ addi r5, r3, lbl_805A6724@l +/* 801E24A0 001DF400 C0 05 00 00 */ lfs f0, 0(r5) +/* 801E24A4 001DF404 38 6F 07 64 */ addi r3, r15, 0x764 +/* 801E24A8 001DF408 38 84 66 70 */ addi r4, r4, skIdentity4f@l +/* 801E24AC 001DF40C D0 0F 07 4C */ stfs f0, 0x74c(r15) +/* 801E24B0 001DF410 C0 05 00 04 */ lfs f0, 4(r5) +/* 801E24B4 001DF414 D0 0F 07 50 */ stfs f0, 0x750(r15) +/* 801E24B8 001DF418 C0 05 00 08 */ lfs f0, 8(r5) +/* 801E24BC 001DF41C D0 0F 07 54 */ stfs f0, 0x754(r15) +/* 801E24C0 001DF420 93 CF 07 58 */ stw r30, 0x758(r15) +/* 801E24C4 001DF424 93 EF 07 5C */ stw r31, 0x75c(r15) +/* 801E24C8 001DF428 91 CF 07 60 */ stw r14, 0x760(r15) +/* 801E24CC 001DF42C 48 13 06 A9 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801E24D0 001DF430 38 00 00 00 */ li r0, 0 +/* 801E24D4 001DF434 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801E24D8 001DF438 90 0F 07 94 */ stw r0, 0x794(r15) +/* 801E24DC 001DF43C 39 C3 66 A0 */ addi r14, r3, skZero3f@l +/* 801E24E0 001DF440 C0 22 AC D8 */ lfs f1, lbl_805AC9F8@sda21(r2) +/* 801E24E4 001DF444 38 6F 07 F0 */ addi r3, r15, 0x7f0 +/* 801E24E8 001DF448 90 0F 07 9C */ stw r0, 0x79c(r15) +/* 801E24EC 001DF44C 38 80 00 00 */ li r4, 0 +/* 801E24F0 001DF450 C0 62 AC DC */ lfs f3, lbl_805AC9FC@sda21(r2) +/* 801E24F4 001DF454 FC 40 08 90 */ fmr f2, f1 +/* 801E24F8 001DF458 90 0F 07 A0 */ stw r0, 0x7a0(r15) +/* 801E24FC 001DF45C 38 A0 00 01 */ li r5, 1 +/* 801E2500 001DF460 C0 02 AD 00 */ lfs f0, lbl_805ACA20@sda21(r2) +/* 801E2504 001DF464 90 0F 07 A4 */ stw r0, 0x7a4(r15) +/* 801E2508 001DF468 90 0F 07 AC */ stw r0, 0x7ac(r15) +/* 801E250C 001DF46C 90 0F 07 B0 */ stw r0, 0x7b0(r15) +/* 801E2510 001DF470 90 0F 07 B4 */ stw r0, 0x7b4(r15) +/* 801E2514 001DF474 D0 6F 07 B8 */ stfs f3, 0x7b8(r15) +/* 801E2518 001DF478 D0 0F 07 BC */ stfs f0, 0x7bc(r15) +/* 801E251C 001DF47C 90 0F 07 C4 */ stw r0, 0x7c4(r15) +/* 801E2520 001DF480 98 0F 07 C8 */ stb r0, 0x7c8(r15) +/* 801E2524 001DF484 C0 0E 00 00 */ lfs f0, 0(r14) +/* 801E2528 001DF488 D0 0F 07 CC */ stfs f0, 0x7cc(r15) +/* 801E252C 001DF48C C0 0E 00 04 */ lfs f0, 4(r14) +/* 801E2530 001DF490 D0 0F 07 D0 */ stfs f0, 0x7d0(r15) +/* 801E2534 001DF494 C0 0E 00 08 */ lfs f0, 8(r14) +/* 801E2538 001DF498 D0 0F 07 D4 */ stfs f0, 0x7d4(r15) +/* 801E253C 001DF49C C0 0E 00 00 */ lfs f0, 0(r14) +/* 801E2540 001DF4A0 D0 0F 07 D8 */ stfs f0, 0x7d8(r15) +/* 801E2544 001DF4A4 C0 0E 00 04 */ lfs f0, 4(r14) +/* 801E2548 001DF4A8 D0 0F 07 DC */ stfs f0, 0x7dc(r15) +/* 801E254C 001DF4AC C0 0E 00 08 */ lfs f0, 8(r14) +/* 801E2550 001DF4B0 D0 0F 07 E0 */ stfs f0, 0x7e0(r15) +/* 801E2554 001DF4B4 C0 0E 00 00 */ lfs f0, 0(r14) +/* 801E2558 001DF4B8 D0 0F 07 E4 */ stfs f0, 0x7e4(r15) +/* 801E255C 001DF4BC C0 0E 00 04 */ lfs f0, 4(r14) +/* 801E2560 001DF4C0 D0 0F 07 E8 */ stfs f0, 0x7e8(r15) +/* 801E2564 001DF4C4 C0 0E 00 08 */ lfs f0, 8(r14) +/* 801E2568 001DF4C8 D0 0F 07 EC */ stfs f0, 0x7ec(r15) +/* 801E256C 001DF4CC 80 D0 01 0C */ lwz r6, 0x10c(r16) +/* 801E2570 001DF4D0 4B FE 68 25 */ bl __ct__15CPathFindSearchFP7CPFAreaUiff +/* 801E2574 001DF4D4 38 00 00 00 */ li r0, 0 +/* 801E2578 001DF4D8 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801E257C 001DF4DC 98 0F 08 D4 */ stb r0, 0x8d4(r15) +/* 801E2580 001DF4E0 38 C3 66 A0 */ addi r6, r3, skZero3f@l +/* 801E2584 001DF4E4 3C 80 80 3D */ lis r4, lbl_803D1CB8@ha +/* 801E2588 001DF4E8 38 61 00 64 */ addi r3, r1, 0x64 +/* 801E258C 001DF4EC C0 06 00 00 */ lfs f0, 0(r6) +/* 801E2590 001DF4F0 38 84 1C B8 */ addi r4, r4, lbl_803D1CB8@l +/* 801E2594 001DF4F4 38 A4 01 CA */ addi r5, r4, 0x1ca +/* 801E2598 001DF4F8 D0 0F 08 D8 */ stfs f0, 0x8d8(r15) +/* 801E259C 001DF4FC C0 0E 00 04 */ lfs f0, 4(r14) +/* 801E25A0 001DF500 D0 0F 08 DC */ stfs f0, 0x8dc(r15) +/* 801E25A4 001DF504 C0 0E 00 08 */ lfs f0, 8(r14) +/* 801E25A8 001DF508 D0 0F 08 E0 */ stfs f0, 0x8e0(r15) +/* 801E25AC 001DF50C C0 06 00 00 */ lfs f0, 0(r6) +/* 801E25B0 001DF510 D0 0F 08 E4 */ stfs f0, 0x8e4(r15) +/* 801E25B4 001DF514 C0 0E 00 04 */ lfs f0, 4(r14) +/* 801E25B8 001DF518 D0 0F 08 E8 */ stfs f0, 0x8e8(r15) +/* 801E25BC 001DF51C C0 0E 00 08 */ lfs f0, 8(r14) +/* 801E25C0 001DF520 D0 0F 08 EC */ stfs f0, 0x8ec(r15) +/* 801E25C4 001DF524 98 0F 08 F0 */ stb r0, 0x8f0(r15) +/* 801E25C8 001DF528 90 0F 08 F8 */ stw r0, 0x8f8(r15) +/* 801E25CC 001DF52C 90 0F 08 FC */ stw r0, 0x8fc(r15) +/* 801E25D0 001DF530 90 0F 09 00 */ stw r0, 0x900(r15) +/* 801E25D4 001DF534 90 0F 09 04 */ stw r0, 0x904(r15) +/* 801E25D8 001DF538 98 0F 09 08 */ stb r0, 0x908(r15) +/* 801E25DC 001DF53C 98 0F 09 09 */ stb r0, 0x909(r15) +/* 801E25E0 001DF540 90 0F 09 10 */ stw r0, 0x910(r15) +/* 801E25E4 001DF544 90 0F 09 14 */ stw r0, 0x914(r15) +/* 801E25E8 001DF548 90 0F 09 18 */ stw r0, 0x918(r15) +/* 801E25EC 001DF54C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801E25F0 001DF550 81 84 00 00 */ lwz r12, 0(r4) +/* 801E25F4 001DF554 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801E25F8 001DF558 7D 89 03 A6 */ mtctr r12 +/* 801E25FC 001DF55C 4E 80 04 21 */ bctrl +/* 801E2600 001DF560 3A 0F 09 1C */ addi r16, r15, 0x91c +/* 801E2604 001DF564 38 81 00 64 */ addi r4, r1, 0x64 +/* 801E2608 001DF568 7E 03 83 78 */ mr r3, r16 +/* 801E260C 001DF56C 48 15 E8 9D */ bl __ct__6CTokenFRC6CToken +/* 801E2610 001DF570 38 00 00 00 */ li r0, 0 +/* 801E2614 001DF574 38 61 00 64 */ addi r3, r1, 0x64 +/* 801E2618 001DF578 90 10 00 08 */ stw r0, 8(r16) +/* 801E261C 001DF57C 38 80 FF FF */ li r4, -1 +/* 801E2620 001DF580 48 15 E8 21 */ bl __dt__6CTokenFv +/* 801E2624 001DF584 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801E2628 001DF588 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801E262C 001DF58C 38 C3 66 A0 */ addi r6, r3, skZero3f@l +/* 801E2630 001DF590 38 A0 00 00 */ li r5, 0 +/* 801E2634 001DF594 B0 0F 09 28 */ sth r0, 0x928(r15) +/* 801E2638 001DF598 38 80 00 01 */ li r4, 1 +/* 801E263C 001DF59C C0 02 AD 34 */ lfs f0, lbl_805ACA54@sda21(r2) +/* 801E2640 001DF5A0 7D E3 7B 78 */ mr r3, r15 +/* 801E2644 001DF5A4 C0 26 00 00 */ lfs f1, 0(r6) +/* 801E2648 001DF5A8 D0 2F 09 2C */ stfs f1, 0x92c(r15) +/* 801E264C 001DF5AC C0 2E 00 04 */ lfs f1, 4(r14) +/* 801E2650 001DF5B0 D0 2F 09 30 */ stfs f1, 0x930(r15) +/* 801E2654 001DF5B4 C0 2E 00 08 */ lfs f1, 8(r14) +/* 801E2658 001DF5B8 D0 2F 09 34 */ stfs f1, 0x934(r15) +/* 801E265C 001DF5BC 98 AF 09 38 */ stb r5, 0x938(r15) +/* 801E2660 001DF5C0 98 AF 09 39 */ stb r5, 0x939(r15) +/* 801E2664 001DF5C4 98 AF 09 3A */ stb r5, 0x93a(r15) +/* 801E2668 001DF5C8 98 AF 09 3B */ stb r5, 0x93b(r15) +/* 801E266C 001DF5CC 98 AF 09 3C */ stb r5, 0x93c(r15) +/* 801E2670 001DF5D0 98 8F 09 3D */ stb r4, 0x93d(r15) +/* 801E2674 001DF5D4 90 AF 09 40 */ stw r5, 0x940(r15) +/* 801E2678 001DF5D8 D0 0F 09 44 */ stfs f0, 0x944(r15) +/* 801E267C 001DF5DC 98 AF 09 4C */ stb r5, 0x94c(r15) +/* 801E2680 001DF5E0 98 AF 09 4D */ stb r5, 0x94d(r15) +/* 801E2684 001DF5E4 C0 06 00 00 */ lfs f0, 0(r6) +/* 801E2688 001DF5E8 D0 0F 09 50 */ stfs f0, 0x950(r15) +/* 801E268C 001DF5EC C0 0E 00 04 */ lfs f0, 4(r14) +/* 801E2690 001DF5F0 D0 0F 09 54 */ stfs f0, 0x954(r15) +/* 801E2694 001DF5F4 C0 0E 00 08 */ lfs f0, 8(r14) +/* 801E2698 001DF5F8 D0 0F 09 58 */ stfs f0, 0x958(r15) +/* 801E269C 001DF5FC 98 AF 09 5C */ stb r5, 0x95c(r15) +/* 801E26A0 001DF600 98 AF 09 5D */ stb r5, 0x95d(r15) +/* 801E26A4 001DF604 98 AF 09 5E */ stb r5, 0x95e(r15) +/* 801E26A8 001DF608 88 0F 00 E7 */ lbz r0, 0xe7(r15) +/* 801E26AC 001DF60C 50 A0 0F BC */ rlwimi r0, r5, 1, 0x1e, 0x1e +/* 801E26B0 001DF610 98 0F 00 E7 */ stb r0, 0xe7(r15) +/* 801E26B4 001DF614 88 0F 00 F8 */ lbz r0, 0xf8(r15) +/* 801E26B8 001DF618 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 801E26BC 001DF61C 98 0F 00 F8 */ stb r0, 0xf8(r15) +/* 801E26C0 001DF620 4B E7 11 FD */ bl GetMaterialFilter__6CActorCFv +/* 801E26C4 001DF624 80 AD 91 EC */ lwz r5, lbl_805A7DAC@sda21(r13) +/* 801E26C8 001DF628 38 80 00 01 */ li r4, 1 +/* 801E26CC 001DF62C 81 C3 00 08 */ lwz r14, 8(r3) +/* 801E26D0 001DF630 82 03 00 0C */ lwz r16, 0xc(r3) +/* 801E26D4 001DF634 38 60 00 00 */ li r3, 0 +/* 801E26D8 001DF638 48 1A 78 1D */ bl __shl2i +/* 801E26DC 001DF63C 80 AD 91 F0 */ lwz r5, lbl_805A7DB0@sda21(r13) +/* 801E26E0 001DF640 7C 92 23 78 */ mr r18, r4 +/* 801E26E4 001DF644 7C 71 1B 78 */ mr r17, r3 +/* 801E26E8 001DF648 38 60 00 00 */ li r3, 0 +/* 801E26EC 001DF64C 38 80 00 01 */ li r4, 1 +/* 801E26F0 001DF650 48 1A 78 05 */ bl __shl2i +/* 801E26F4 001DF654 80 AD 91 F4 */ lwz r5, lbl_805A7DB4@sda21(r13) +/* 801E26F8 001DF658 7E 52 23 78 */ or r18, r18, r4 +/* 801E26FC 001DF65C 7E 31 1B 78 */ or r17, r17, r3 +/* 801E2700 001DF660 38 60 00 00 */ li r3, 0 +/* 801E2704 001DF664 38 80 00 01 */ li r4, 1 +/* 801E2708 001DF668 48 1A 77 ED */ bl __shl2i +/* 801E270C 001DF66C 7E 31 1B 78 */ or r17, r17, r3 +/* 801E2710 001DF670 7E 52 23 78 */ or r18, r18, r4 +/* 801E2714 001DF674 7D E3 7B 78 */ mr r3, r15 +/* 801E2718 001DF678 7E 10 93 78 */ or r16, r16, r18 +/* 801E271C 001DF67C 7D CE 8B 78 */ or r14, r14, r17 +/* 801E2720 001DF680 4B E7 11 9D */ bl GetMaterialFilter__6CActorCFv +/* 801E2724 001DF684 80 A3 00 00 */ lwz r5, 0(r3) +/* 801E2728 001DF688 38 00 00 03 */ li r0, 3 +/* 801E272C 001DF68C 80 C3 00 04 */ lwz r6, 4(r3) +/* 801E2730 001DF690 7D E3 7B 78 */ mr r3, r15 +/* 801E2734 001DF694 38 81 00 B0 */ addi r4, r1, 0xb0 +/* 801E2738 001DF698 90 C1 00 B4 */ stw r6, 0xb4(r1) +/* 801E273C 001DF69C 90 A1 00 B0 */ stw r5, 0xb0(r1) +/* 801E2740 001DF6A0 92 01 00 BC */ stw r16, 0xbc(r1) +/* 801E2744 001DF6A4 91 C1 00 B8 */ stw r14, 0xb8(r1) +/* 801E2748 001DF6A8 90 01 00 C0 */ stw r0, 0xc0(r1) +/* 801E274C 001DF6AC 4B E7 11 55 */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter +/* 801E2750 001DF6B0 38 00 00 00 */ li r0, 0 +/* 801E2754 001DF6B4 38 61 00 9C */ addi r3, r1, 0x9c +/* 801E2758 001DF6B8 90 01 00 A0 */ stw r0, 0xa0(r1) +/* 801E275C 001DF6BC 38 80 00 06 */ li r4, 6 +/* 801E2760 001DF6C0 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 801E2764 001DF6C4 90 01 00 A8 */ stw r0, 0xa8(r1) +/* 801E2768 001DF6C8 4B E8 13 BD */ bl "reserve__Q24rstl37vectorFi" +/* 801E276C 001DF6CC 80 01 00 A0 */ lwz r0, 0xa0(r1) +/* 801E2770 001DF6D0 80 A1 00 A4 */ lwz r5, 0xa4(r1) +/* 801E2774 001DF6D4 7C 00 28 00 */ cmpw r0, r5 +/* 801E2778 001DF6D8 41 80 00 1C */ blt lbl_801E2794 +/* 801E277C 001DF6DC 2C 05 00 00 */ cmpwi r5, 0 +/* 801E2780 001DF6E0 38 61 00 9C */ addi r3, r1, 0x9c +/* 801E2784 001DF6E4 38 80 00 04 */ li r4, 4 +/* 801E2788 001DF6E8 41 82 00 08 */ beq lbl_801E2790 +/* 801E278C 001DF6EC 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801E2790: +/* 801E2790 001DF6F0 4B E8 13 95 */ bl "reserve__Q24rstl37vectorFi" +lbl_801E2794: +/* 801E2794 001DF6F4 80 01 00 A0 */ lwz r0, 0xa0(r1) +/* 801E2798 001DF6F8 80 61 00 A8 */ lwz r3, 0xa8(r1) +/* 801E279C 001DF6FC 54 00 10 3A */ slwi r0, r0, 2 +/* 801E27A0 001DF700 7C 63 02 15 */ add. r3, r3, r0 +/* 801E27A4 001DF704 41 82 00 08 */ beq lbl_801E27AC +/* 801E27A8 001DF708 92 A3 00 00 */ stw r21, 0(r3) +lbl_801E27AC: +/* 801E27AC 001DF70C 80 61 00 A0 */ lwz r3, 0xa0(r1) +/* 801E27B0 001DF710 80 A1 00 A4 */ lwz r5, 0xa4(r1) +/* 801E27B4 001DF714 38 03 00 01 */ addi r0, r3, 1 +/* 801E27B8 001DF718 7C 00 28 00 */ cmpw r0, r5 +/* 801E27BC 001DF71C 90 01 00 A0 */ stw r0, 0xa0(r1) +/* 801E27C0 001DF720 41 80 00 1C */ blt lbl_801E27DC +/* 801E27C4 001DF724 2C 05 00 00 */ cmpwi r5, 0 +/* 801E27C8 001DF728 38 61 00 9C */ addi r3, r1, 0x9c +/* 801E27CC 001DF72C 38 80 00 04 */ li r4, 4 +/* 801E27D0 001DF730 41 82 00 08 */ beq lbl_801E27D8 +/* 801E27D4 001DF734 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801E27D8: +/* 801E27D8 001DF738 4B E8 13 4D */ bl "reserve__Q24rstl37vectorFi" +lbl_801E27DC: +/* 801E27DC 001DF73C 80 01 00 A0 */ lwz r0, 0xa0(r1) +/* 801E27E0 001DF740 80 61 00 A8 */ lwz r3, 0xa8(r1) +/* 801E27E4 001DF744 54 00 10 3A */ slwi r0, r0, 2 +/* 801E27E8 001DF748 7C 63 02 15 */ add. r3, r3, r0 +/* 801E27EC 001DF74C 41 82 00 08 */ beq lbl_801E27F4 +/* 801E27F0 001DF750 92 C3 00 00 */ stw r22, 0(r3) +lbl_801E27F4: +/* 801E27F4 001DF754 80 61 00 A0 */ lwz r3, 0xa0(r1) +/* 801E27F8 001DF758 80 A1 00 A4 */ lwz r5, 0xa4(r1) +/* 801E27FC 001DF75C 38 03 00 01 */ addi r0, r3, 1 +/* 801E2800 001DF760 7C 00 28 00 */ cmpw r0, r5 +/* 801E2804 001DF764 90 01 00 A0 */ stw r0, 0xa0(r1) +/* 801E2808 001DF768 41 80 00 1C */ blt lbl_801E2824 +/* 801E280C 001DF76C 2C 05 00 00 */ cmpwi r5, 0 +/* 801E2810 001DF770 38 61 00 9C */ addi r3, r1, 0x9c +/* 801E2814 001DF774 38 80 00 04 */ li r4, 4 +/* 801E2818 001DF778 41 82 00 08 */ beq lbl_801E2820 +/* 801E281C 001DF77C 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801E2820: +/* 801E2820 001DF780 4B E8 13 05 */ bl "reserve__Q24rstl37vectorFi" +lbl_801E2824: +/* 801E2824 001DF784 80 01 00 A0 */ lwz r0, 0xa0(r1) +/* 801E2828 001DF788 80 61 00 A8 */ lwz r3, 0xa8(r1) +/* 801E282C 001DF78C 54 00 10 3A */ slwi r0, r0, 2 +/* 801E2830 001DF790 7C 63 02 15 */ add. r3, r3, r0 +/* 801E2834 001DF794 41 82 00 08 */ beq lbl_801E283C +/* 801E2838 001DF798 92 E3 00 00 */ stw r23, 0(r3) +lbl_801E283C: +/* 801E283C 001DF79C 80 61 00 A0 */ lwz r3, 0xa0(r1) +/* 801E2840 001DF7A0 80 A1 00 A4 */ lwz r5, 0xa4(r1) +/* 801E2844 001DF7A4 38 03 00 01 */ addi r0, r3, 1 +/* 801E2848 001DF7A8 7C 00 28 00 */ cmpw r0, r5 +/* 801E284C 001DF7AC 90 01 00 A0 */ stw r0, 0xa0(r1) +/* 801E2850 001DF7B0 41 80 00 1C */ blt lbl_801E286C +/* 801E2854 001DF7B4 2C 05 00 00 */ cmpwi r5, 0 +/* 801E2858 001DF7B8 38 61 00 9C */ addi r3, r1, 0x9c +/* 801E285C 001DF7BC 38 80 00 04 */ li r4, 4 +/* 801E2860 001DF7C0 41 82 00 08 */ beq lbl_801E2868 +/* 801E2864 001DF7C4 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801E2868: +/* 801E2868 001DF7C8 4B E8 12 BD */ bl "reserve__Q24rstl37vectorFi" +lbl_801E286C: +/* 801E286C 001DF7CC 80 01 00 A0 */ lwz r0, 0xa0(r1) +/* 801E2870 001DF7D0 80 61 00 A8 */ lwz r3, 0xa8(r1) +/* 801E2874 001DF7D4 54 00 10 3A */ slwi r0, r0, 2 +/* 801E2878 001DF7D8 7C 63 02 15 */ add. r3, r3, r0 +/* 801E287C 001DF7DC 41 82 00 08 */ beq lbl_801E2884 +/* 801E2880 001DF7E0 93 03 00 00 */ stw r24, 0(r3) +lbl_801E2884: +/* 801E2884 001DF7E4 80 61 00 A0 */ lwz r3, 0xa0(r1) +/* 801E2888 001DF7E8 80 A1 00 A4 */ lwz r5, 0xa4(r1) +/* 801E288C 001DF7EC 38 03 00 01 */ addi r0, r3, 1 +/* 801E2890 001DF7F0 7C 00 28 00 */ cmpw r0, r5 +/* 801E2894 001DF7F4 90 01 00 A0 */ stw r0, 0xa0(r1) +/* 801E2898 001DF7F8 41 80 00 1C */ blt lbl_801E28B4 +/* 801E289C 001DF7FC 2C 05 00 00 */ cmpwi r5, 0 +/* 801E28A0 001DF800 38 61 00 9C */ addi r3, r1, 0x9c +/* 801E28A4 001DF804 38 80 00 04 */ li r4, 4 +/* 801E28A8 001DF808 41 82 00 08 */ beq lbl_801E28B0 +/* 801E28AC 001DF80C 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801E28B0: +/* 801E28B0 001DF810 4B E8 12 75 */ bl "reserve__Q24rstl37vectorFi" +lbl_801E28B4: +/* 801E28B4 001DF814 80 01 00 A0 */ lwz r0, 0xa0(r1) +/* 801E28B8 001DF818 80 61 00 A8 */ lwz r3, 0xa8(r1) +/* 801E28BC 001DF81C 54 00 10 3A */ slwi r0, r0, 2 +/* 801E28C0 001DF820 7C 63 02 15 */ add. r3, r3, r0 +/* 801E28C4 001DF824 41 82 00 08 */ beq lbl_801E28CC +/* 801E28C8 001DF828 93 23 00 00 */ stw r25, 0(r3) +lbl_801E28CC: +/* 801E28CC 001DF82C 80 61 00 A0 */ lwz r3, 0xa0(r1) +/* 801E28D0 001DF830 80 A1 00 A4 */ lwz r5, 0xa4(r1) +/* 801E28D4 001DF834 38 03 00 01 */ addi r0, r3, 1 +/* 801E28D8 001DF838 7C 00 28 00 */ cmpw r0, r5 +/* 801E28DC 001DF83C 90 01 00 A0 */ stw r0, 0xa0(r1) +/* 801E28E0 001DF840 41 80 00 1C */ blt lbl_801E28FC +/* 801E28E4 001DF844 2C 05 00 00 */ cmpwi r5, 0 +/* 801E28E8 001DF848 38 61 00 9C */ addi r3, r1, 0x9c +/* 801E28EC 001DF84C 38 80 00 04 */ li r4, 4 +/* 801E28F0 001DF850 41 82 00 08 */ beq lbl_801E28F8 +/* 801E28F4 001DF854 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801E28F8: +/* 801E28F8 001DF858 4B E8 12 2D */ bl "reserve__Q24rstl37vectorFi" +lbl_801E28FC: +/* 801E28FC 001DF85C 80 01 00 A0 */ lwz r0, 0xa0(r1) +/* 801E2900 001DF860 80 61 00 A8 */ lwz r3, 0xa8(r1) +/* 801E2904 001DF864 54 00 10 3A */ slwi r0, r0, 2 +/* 801E2908 001DF868 7C 63 02 15 */ add. r3, r3, r0 +/* 801E290C 001DF86C 41 82 00 08 */ beq lbl_801E2914 +/* 801E2910 001DF870 93 43 00 00 */ stw r26, 0(r3) +lbl_801E2914: +/* 801E2914 001DF874 80 81 00 A0 */ lwz r4, 0xa0(r1) +/* 801E2918 001DF878 38 00 00 00 */ li r0, 0 +/* 801E291C 001DF87C 90 01 00 90 */ stw r0, 0x90(r1) +/* 801E2920 001DF880 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 801E2924 001DF884 38 A4 00 01 */ addi r5, r4, 1 +/* 801E2928 001DF888 38 81 00 9C */ addi r4, r1, 0x9c +/* 801E292C 001DF88C 90 A1 00 A0 */ stw r5, 0xa0(r1) +/* 801E2930 001DF890 38 A1 00 8C */ addi r5, r1, 0x8c +/* 801E2934 001DF894 38 C1 00 7C */ addi r6, r1, 0x7c +/* 801E2938 001DF898 38 E1 00 6C */ addi r7, r1, 0x6c +/* 801E293C 001DF89C 90 01 00 94 */ stw r0, 0x94(r1) +/* 801E2940 001DF8A0 90 01 00 98 */ stw r0, 0x98(r1) +/* 801E2944 001DF8A4 90 01 00 80 */ stw r0, 0x80(r1) +/* 801E2948 001DF8A8 90 01 00 84 */ stw r0, 0x84(r1) +/* 801E294C 001DF8AC 90 01 00 88 */ stw r0, 0x88(r1) +/* 801E2950 001DF8B0 90 01 00 70 */ stw r0, 0x70(r1) +/* 801E2954 001DF8B4 90 01 00 74 */ stw r0, 0x74(r1) +/* 801E2958 001DF8B8 90 01 00 78 */ stw r0, 0x78(r1) +/* 801E295C 001DF8BC 48 00 01 D9 */ bl sub_801e2b34 +/* 801E2960 001DF8C0 80 6F 00 64 */ lwz r3, 0x64(r15) +/* 801E2964 001DF8C4 38 81 00 C8 */ addi r4, r1, 0xc8 +/* 801E2968 001DF8C8 80 63 00 10 */ lwz r3, 0x10(r3) +/* 801E296C 001DF8CC 38 63 01 20 */ addi r3, r3, 0x120 +/* 801E2970 001DF8D0 4B ED 79 25 */ bl CacheParticleDesc__17CParticleDatabaseFRCQ213CharacterInfo16CParticleResData +/* 801E2974 001DF8D4 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 801E2978 001DF8D8 38 80 FF FF */ li r4, -1 +/* 801E297C 001DF8DC 4B E4 CA 21 */ bl __dt__Q214CCharacterInfo16CParticleResDataFv +/* 801E2980 001DF8E0 80 01 00 70 */ lwz r0, 0x70(r1) +/* 801E2984 001DF8E4 80 61 00 78 */ lwz r3, 0x78(r1) +/* 801E2988 001DF8E8 54 00 10 3A */ slwi r0, r0, 2 +/* 801E298C 001DF8EC 7C 03 02 14 */ add r0, r3, r0 +/* 801E2990 001DF8F0 90 61 00 58 */ stw r3, 0x58(r1) +/* 801E2994 001DF8F4 7C 64 1B 78 */ mr r4, r3 +/* 801E2998 001DF8F8 90 01 00 60 */ stw r0, 0x60(r1) +/* 801E299C 001DF8FC 90 01 00 5C */ stw r0, 0x5c(r1) +/* 801E29A0 001DF900 90 61 00 54 */ stw r3, 0x54(r1) +/* 801E29A4 001DF904 48 00 00 08 */ b lbl_801E29AC +lbl_801E29A8: +/* 801E29A8 001DF908 38 84 00 04 */ addi r4, r4, 4 +lbl_801E29AC: +/* 801E29AC 001DF90C 7C 04 00 40 */ cmplw r4, r0 +/* 801E29B0 001DF910 40 82 FF F8 */ bne lbl_801E29A8 +/* 801E29B4 001DF914 28 03 00 00 */ cmplwi r3, 0 +/* 801E29B8 001DF918 41 82 00 08 */ beq lbl_801E29C0 +/* 801E29BC 001DF91C 48 13 2F 75 */ bl Free__7CMemoryFPCv +lbl_801E29C0: +/* 801E29C0 001DF920 80 01 00 80 */ lwz r0, 0x80(r1) +/* 801E29C4 001DF924 80 61 00 88 */ lwz r3, 0x88(r1) +/* 801E29C8 001DF928 54 00 10 3A */ slwi r0, r0, 2 +/* 801E29CC 001DF92C 7C 03 02 14 */ add r0, r3, r0 +/* 801E29D0 001DF930 90 61 00 48 */ stw r3, 0x48(r1) +/* 801E29D4 001DF934 7C 64 1B 78 */ mr r4, r3 +/* 801E29D8 001DF938 90 01 00 50 */ stw r0, 0x50(r1) +/* 801E29DC 001DF93C 90 01 00 4C */ stw r0, 0x4c(r1) +/* 801E29E0 001DF940 90 61 00 44 */ stw r3, 0x44(r1) +/* 801E29E4 001DF944 48 00 00 08 */ b lbl_801E29EC +lbl_801E29E8: +/* 801E29E8 001DF948 38 84 00 04 */ addi r4, r4, 4 +lbl_801E29EC: +/* 801E29EC 001DF94C 7C 04 00 40 */ cmplw r4, r0 +/* 801E29F0 001DF950 40 82 FF F8 */ bne lbl_801E29E8 +/* 801E29F4 001DF954 28 03 00 00 */ cmplwi r3, 0 +/* 801E29F8 001DF958 41 82 00 08 */ beq lbl_801E2A00 +/* 801E29FC 001DF95C 48 13 2F 35 */ bl Free__7CMemoryFPCv +lbl_801E2A00: +/* 801E2A00 001DF960 80 01 00 90 */ lwz r0, 0x90(r1) +/* 801E2A04 001DF964 80 61 00 98 */ lwz r3, 0x98(r1) +/* 801E2A08 001DF968 54 00 10 3A */ slwi r0, r0, 2 +/* 801E2A0C 001DF96C 7C 03 02 14 */ add r0, r3, r0 +/* 801E2A10 001DF970 90 61 00 38 */ stw r3, 0x38(r1) +/* 801E2A14 001DF974 7C 64 1B 78 */ mr r4, r3 +/* 801E2A18 001DF978 90 01 00 40 */ stw r0, 0x40(r1) +/* 801E2A1C 001DF97C 90 01 00 3C */ stw r0, 0x3c(r1) +/* 801E2A20 001DF980 90 61 00 34 */ stw r3, 0x34(r1) +/* 801E2A24 001DF984 48 00 00 08 */ b lbl_801E2A2C +lbl_801E2A28: +/* 801E2A28 001DF988 38 84 00 04 */ addi r4, r4, 4 +lbl_801E2A2C: +/* 801E2A2C 001DF98C 7C 04 00 40 */ cmplw r4, r0 +/* 801E2A30 001DF990 40 82 FF F8 */ bne lbl_801E2A28 +/* 801E2A34 001DF994 28 03 00 00 */ cmplwi r3, 0 +/* 801E2A38 001DF998 41 82 00 08 */ beq lbl_801E2A40 +/* 801E2A3C 001DF99C 48 13 2E F5 */ bl Free__7CMemoryFPCv +lbl_801E2A40: +/* 801E2A40 001DF9A0 38 6F 07 98 */ addi r3, r15, 0x798 +/* 801E2A44 001DF9A4 38 80 00 06 */ li r4, 6 +/* 801E2A48 001DF9A8 4B E2 99 C1 */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" +/* 801E2A4C 001DF9AC 38 6F 07 A8 */ addi r3, r15, 0x7a8 +/* 801E2A50 001DF9B0 38 80 00 10 */ li r4, 0x10 +/* 801E2A54 001DF9B4 4B E2 99 B5 */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" +/* 801E2A58 001DF9B8 7D E3 7B 78 */ mr r3, r15 +/* 801E2A5C 001DF9BC 38 80 00 01 */ li r4, 1 +/* 801E2A60 001DF9C0 4B E9 4D F5 */ bl UpdateThermalFrozenState__10CPatternedFb +/* 801E2A64 001DF9C4 C0 02 AC DC */ lfs f0, lbl_805AC9FC@sda21(r2) +/* 801E2A68 001DF9C8 38 6F 08 F4 */ addi r3, r15, 0x8f4 +/* 801E2A6C 001DF9CC 38 80 00 10 */ li r4, 0x10 +/* 801E2A70 001DF9D0 D0 0F 00 D0 */ stfs f0, 0xd0(r15) +/* 801E2A74 001DF9D4 D0 0F 05 0C */ stfs f0, 0x50c(r15) +/* 801E2A78 001DF9D8 4B E2 99 91 */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" +/* 801E2A7C 001DF9DC 38 6F 09 1C */ addi r3, r15, 0x91c +/* 801E2A80 001DF9E0 48 15 E3 05 */ bl Lock__6CTokenFv +/* 801E2A84 001DF9E4 88 0F 04 03 */ lbz r0, 0x403(r15) +/* 801E2A88 001DF9E8 38 60 00 00 */ li r3, 0 +/* 801E2A8C 001DF9EC 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 801E2A90 001DF9F0 38 6F 04 60 */ addi r3, r15, 0x460 +/* 801E2A94 001DF9F4 98 0F 04 03 */ stb r0, 0x403(r15) +/* 801E2A98 001DF9F8 38 80 00 00 */ li r4, 0 +/* 801E2A9C 001DF9FC 48 05 12 C9 */ bl SetAutoResetImpulse__20CKnockBackControllerFb +/* 801E2AA0 001DFA00 C0 22 AD 74 */ lfs f1, lbl_805ACA94@sda21(r2) +/* 801E2AA4 001DFA04 7D E3 7B 78 */ mr r3, r15 +/* 801E2AA8 001DFA08 4B F3 7F E1 */ bl SetMass__13CPhysicsActorFf +/* 801E2AAC 001DFA0C 80 01 00 A0 */ lwz r0, 0xa0(r1) +/* 801E2AB0 001DFA10 80 61 00 A8 */ lwz r3, 0xa8(r1) +/* 801E2AB4 001DFA14 54 00 10 3A */ slwi r0, r0, 2 +/* 801E2AB8 001DFA18 7C 03 02 14 */ add r0, r3, r0 +/* 801E2ABC 001DFA1C 90 61 00 28 */ stw r3, 0x28(r1) +/* 801E2AC0 001DFA20 7C 64 1B 78 */ mr r4, r3 +/* 801E2AC4 001DFA24 90 01 00 30 */ stw r0, 0x30(r1) +/* 801E2AC8 001DFA28 90 01 00 2C */ stw r0, 0x2c(r1) +/* 801E2ACC 001DFA2C 90 61 00 24 */ stw r3, 0x24(r1) +/* 801E2AD0 001DFA30 48 00 00 08 */ b lbl_801E2AD8 +lbl_801E2AD4: +/* 801E2AD4 001DFA34 38 84 00 04 */ addi r4, r4, 4 +lbl_801E2AD8: +/* 801E2AD8 001DFA38 7C 04 00 40 */ cmplw r4, r0 +/* 801E2ADC 001DFA3C 40 82 FF F8 */ bne lbl_801E2AD4 +/* 801E2AE0 001DFA40 28 03 00 00 */ cmplwi r3, 0 +/* 801E2AE4 001DFA44 41 82 00 08 */ beq lbl_801E2AEC +/* 801E2AE8 001DFA48 48 13 2E 49 */ bl Free__7CMemoryFPCv +lbl_801E2AEC: +/* 801E2AEC 001DFA4C 7D E3 7B 78 */ mr r3, r15 +/* 801E2AF0 001DFA50 E3 E1 01 A8 */ psq_l f31, 424(r1), 0, qr0 +/* 801E2AF4 001DFA54 CB E1 01 A0 */ lfd f31, 0x1a0(r1) +/* 801E2AF8 001DFA58 E3 C1 01 98 */ psq_l f30, 408(r1), 0, qr0 +/* 801E2AFC 001DFA5C CB C1 01 90 */ lfd f30, 0x190(r1) +/* 801E2B00 001DFA60 E3 A1 01 88 */ psq_l f29, 392(r1), 0, qr0 +/* 801E2B04 001DFA64 CB A1 01 80 */ lfd f29, 0x180(r1) +/* 801E2B08 001DFA68 E3 81 01 78 */ psq_l f28, 376(r1), 0, qr0 +/* 801E2B0C 001DFA6C CB 81 01 70 */ lfd f28, 0x170(r1) +/* 801E2B10 001DFA70 E3 61 01 68 */ psq_l f27, 360(r1), 0, qr0 +/* 801E2B14 001DFA74 CB 61 01 60 */ lfd f27, 0x160(r1) +/* 801E2B18 001DFA78 E3 41 01 58 */ psq_l f26, 344(r1), 0, qr0 +/* 801E2B1C 001DFA7C CB 41 01 50 */ lfd f26, 0x150(r1) +/* 801E2B20 001DFA80 B9 C1 01 08 */ lmw r14, 0x108(r1) +/* 801E2B24 001DFA84 80 01 01 B4 */ lwz r0, 0x1b4(r1) +/* 801E2B28 001DFA88 7C 08 03 A6 */ mtlr r0 +/* 801E2B2C 001DFA8C 38 21 01 B0 */ addi r1, r1, 0x1b0 +/* 801E2B30 001DFA90 4E 80 00 20 */ blr + +.global sub_801e2b34 +sub_801e2b34: +/* 801E2B34 001DFA94 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801E2B38 001DFA98 7C 08 02 A6 */ mflr r0 +/* 801E2B3C 001DFA9C 90 01 00 24 */ stw r0, 0x24(r1) +/* 801E2B40 001DFAA0 BF 61 00 0C */ stmw r27, 0xc(r1) +/* 801E2B44 001DFAA4 7C 9B 23 78 */ mr r27, r4 +/* 801E2B48 001DFAA8 7C 7C 1B 78 */ mr r28, r3 +/* 801E2B4C 001DFAAC 7C BD 2B 78 */ mr r29, r5 +/* 801E2B50 001DFAB0 7C DE 33 78 */ mr r30, r6 +/* 801E2B54 001DFAB4 7C FF 3B 78 */ mr r31, r7 +/* 801E2B58 001DFAB8 80 04 00 04 */ lwz r0, 4(r4) +/* 801E2B5C 001DFABC 90 03 00 04 */ stw r0, 4(r3) +/* 801E2B60 001DFAC0 80 04 00 08 */ lwz r0, 8(r4) +/* 801E2B64 001DFAC4 90 03 00 08 */ stw r0, 8(r3) +/* 801E2B68 001DFAC8 80 04 00 04 */ lwz r0, 4(r4) +/* 801E2B6C 001DFACC 2C 00 00 00 */ cmpwi r0, 0 +/* 801E2B70 001DFAD0 40 82 00 1C */ bne lbl_801E2B8C +/* 801E2B74 001DFAD4 80 1B 00 08 */ lwz r0, 8(r27) +/* 801E2B78 001DFAD8 2C 00 00 00 */ cmpwi r0, 0 +/* 801E2B7C 001DFADC 40 82 00 10 */ bne lbl_801E2B8C +/* 801E2B80 001DFAE0 38 00 00 00 */ li r0, 0 +/* 801E2B84 001DFAE4 90 1C 00 0C */ stw r0, 0xc(r28) +/* 801E2B88 001DFAE8 48 00 00 68 */ b lbl_801E2BF0 +lbl_801E2B8C: +/* 801E2B8C 001DFAEC 80 1C 00 08 */ lwz r0, 8(r28) +/* 801E2B90 001DFAF0 54 03 10 3B */ rlwinm. r3, r0, 2, 0, 0x1d +/* 801E2B94 001DFAF4 40 82 00 10 */ bne lbl_801E2BA4 +/* 801E2B98 001DFAF8 38 00 00 00 */ li r0, 0 +/* 801E2B9C 001DFAFC 90 1C 00 0C */ stw r0, 0xc(r28) +/* 801E2BA0 001DFB00 48 00 00 1C */ b lbl_801E2BBC +lbl_801E2BA4: +/* 801E2BA4 001DFB04 3C 80 80 3D */ lis r4, lbl_803D1CB8@ha +/* 801E2BA8 001DFB08 38 A0 00 00 */ li r5, 0 +/* 801E2BAC 001DFB0C 38 84 1C B8 */ addi r4, r4, lbl_803D1CB8@l +/* 801E2BB0 001DFB10 38 84 01 B3 */ addi r4, r4, 0x1b3 +/* 801E2BB4 001DFB14 48 13 2C 65 */ bl __nwa__FUlPCcPCc +/* 801E2BB8 001DFB18 90 7C 00 0C */ stw r3, 0xc(r28) +lbl_801E2BBC: +/* 801E2BBC 001DFB1C 80 1C 00 04 */ lwz r0, 4(r28) +/* 801E2BC0 001DFB20 80 9B 00 0C */ lwz r4, 0xc(r27) +/* 801E2BC4 001DFB24 80 7C 00 0C */ lwz r3, 0xc(r28) +/* 801E2BC8 001DFB28 7C 09 03 A6 */ mtctr r0 +/* 801E2BCC 001DFB2C 2C 00 00 00 */ cmpwi r0, 0 +/* 801E2BD0 001DFB30 40 81 00 20 */ ble lbl_801E2BF0 +lbl_801E2BD4: +/* 801E2BD4 001DFB34 28 03 00 00 */ cmplwi r3, 0 +/* 801E2BD8 001DFB38 41 82 00 0C */ beq lbl_801E2BE4 +/* 801E2BDC 001DFB3C 80 04 00 00 */ lwz r0, 0(r4) +/* 801E2BE0 001DFB40 90 03 00 00 */ stw r0, 0(r3) +lbl_801E2BE4: +/* 801E2BE4 001DFB44 38 63 00 04 */ addi r3, r3, 4 +/* 801E2BE8 001DFB48 38 84 00 04 */ addi r4, r4, 4 +/* 801E2BEC 001DFB4C 42 00 FF E8 */ bdnz lbl_801E2BD4 +lbl_801E2BF0: +/* 801E2BF0 001DFB50 80 1D 00 04 */ lwz r0, 4(r29) +/* 801E2BF4 001DFB54 90 1C 00 14 */ stw r0, 0x14(r28) +/* 801E2BF8 001DFB58 80 1D 00 08 */ lwz r0, 8(r29) +/* 801E2BFC 001DFB5C 90 1C 00 18 */ stw r0, 0x18(r28) +/* 801E2C00 001DFB60 80 1D 00 04 */ lwz r0, 4(r29) +/* 801E2C04 001DFB64 2C 00 00 00 */ cmpwi r0, 0 +/* 801E2C08 001DFB68 40 82 00 1C */ bne lbl_801E2C24 +/* 801E2C0C 001DFB6C 80 1D 00 08 */ lwz r0, 8(r29) +/* 801E2C10 001DFB70 2C 00 00 00 */ cmpwi r0, 0 +/* 801E2C14 001DFB74 40 82 00 10 */ bne lbl_801E2C24 +/* 801E2C18 001DFB78 38 00 00 00 */ li r0, 0 +/* 801E2C1C 001DFB7C 90 1C 00 1C */ stw r0, 0x1c(r28) +/* 801E2C20 001DFB80 48 00 00 68 */ b lbl_801E2C88 +lbl_801E2C24: +/* 801E2C24 001DFB84 80 1C 00 18 */ lwz r0, 0x18(r28) +/* 801E2C28 001DFB88 54 03 10 3B */ rlwinm. r3, r0, 2, 0, 0x1d +/* 801E2C2C 001DFB8C 40 82 00 10 */ bne lbl_801E2C3C +/* 801E2C30 001DFB90 38 00 00 00 */ li r0, 0 +/* 801E2C34 001DFB94 90 1C 00 1C */ stw r0, 0x1c(r28) +/* 801E2C38 001DFB98 48 00 00 1C */ b lbl_801E2C54 +lbl_801E2C3C: +/* 801E2C3C 001DFB9C 3C 80 80 3D */ lis r4, lbl_803D1CB8@ha +/* 801E2C40 001DFBA0 38 A0 00 00 */ li r5, 0 +/* 801E2C44 001DFBA4 38 84 1C B8 */ addi r4, r4, lbl_803D1CB8@l +/* 801E2C48 001DFBA8 38 84 01 B3 */ addi r4, r4, 0x1b3 +/* 801E2C4C 001DFBAC 48 13 2B CD */ bl __nwa__FUlPCcPCc +/* 801E2C50 001DFBB0 90 7C 00 1C */ stw r3, 0x1c(r28) +lbl_801E2C54: +/* 801E2C54 001DFBB4 80 1C 00 14 */ lwz r0, 0x14(r28) +/* 801E2C58 001DFBB8 80 9D 00 0C */ lwz r4, 0xc(r29) +/* 801E2C5C 001DFBBC 80 7C 00 1C */ lwz r3, 0x1c(r28) +/* 801E2C60 001DFBC0 7C 09 03 A6 */ mtctr r0 +/* 801E2C64 001DFBC4 2C 00 00 00 */ cmpwi r0, 0 +/* 801E2C68 001DFBC8 40 81 00 20 */ ble lbl_801E2C88 +lbl_801E2C6C: +/* 801E2C6C 001DFBCC 28 03 00 00 */ cmplwi r3, 0 +/* 801E2C70 001DFBD0 41 82 00 0C */ beq lbl_801E2C7C +/* 801E2C74 001DFBD4 80 04 00 00 */ lwz r0, 0(r4) +/* 801E2C78 001DFBD8 90 03 00 00 */ stw r0, 0(r3) +lbl_801E2C7C: +/* 801E2C7C 001DFBDC 38 63 00 04 */ addi r3, r3, 4 +/* 801E2C80 001DFBE0 38 84 00 04 */ addi r4, r4, 4 +/* 801E2C84 001DFBE4 42 00 FF E8 */ bdnz lbl_801E2C6C +lbl_801E2C88: +/* 801E2C88 001DFBE8 80 1E 00 04 */ lwz r0, 4(r30) +/* 801E2C8C 001DFBEC 90 1C 00 24 */ stw r0, 0x24(r28) +/* 801E2C90 001DFBF0 80 1E 00 08 */ lwz r0, 8(r30) +/* 801E2C94 001DFBF4 90 1C 00 28 */ stw r0, 0x28(r28) +/* 801E2C98 001DFBF8 80 1E 00 04 */ lwz r0, 4(r30) +/* 801E2C9C 001DFBFC 2C 00 00 00 */ cmpwi r0, 0 +/* 801E2CA0 001DFC00 40 82 00 1C */ bne lbl_801E2CBC +/* 801E2CA4 001DFC04 80 1E 00 08 */ lwz r0, 8(r30) +/* 801E2CA8 001DFC08 2C 00 00 00 */ cmpwi r0, 0 +/* 801E2CAC 001DFC0C 40 82 00 10 */ bne lbl_801E2CBC +/* 801E2CB0 001DFC10 38 00 00 00 */ li r0, 0 +/* 801E2CB4 001DFC14 90 1C 00 2C */ stw r0, 0x2c(r28) +/* 801E2CB8 001DFC18 48 00 00 68 */ b lbl_801E2D20 +lbl_801E2CBC: +/* 801E2CBC 001DFC1C 80 1C 00 28 */ lwz r0, 0x28(r28) +/* 801E2CC0 001DFC20 54 03 10 3B */ rlwinm. r3, r0, 2, 0, 0x1d +/* 801E2CC4 001DFC24 40 82 00 10 */ bne lbl_801E2CD4 +/* 801E2CC8 001DFC28 38 00 00 00 */ li r0, 0 +/* 801E2CCC 001DFC2C 90 1C 00 2C */ stw r0, 0x2c(r28) +/* 801E2CD0 001DFC30 48 00 00 1C */ b lbl_801E2CEC +lbl_801E2CD4: +/* 801E2CD4 001DFC34 3C 80 80 3D */ lis r4, lbl_803D1CB8@ha +/* 801E2CD8 001DFC38 38 A0 00 00 */ li r5, 0 +/* 801E2CDC 001DFC3C 38 84 1C B8 */ addi r4, r4, lbl_803D1CB8@l +/* 801E2CE0 001DFC40 38 84 01 B3 */ addi r4, r4, 0x1b3 +/* 801E2CE4 001DFC44 48 13 2B 35 */ bl __nwa__FUlPCcPCc +/* 801E2CE8 001DFC48 90 7C 00 2C */ stw r3, 0x2c(r28) +lbl_801E2CEC: +/* 801E2CEC 001DFC4C 80 1C 00 24 */ lwz r0, 0x24(r28) +/* 801E2CF0 001DFC50 80 9E 00 0C */ lwz r4, 0xc(r30) +/* 801E2CF4 001DFC54 80 7C 00 2C */ lwz r3, 0x2c(r28) +/* 801E2CF8 001DFC58 7C 09 03 A6 */ mtctr r0 +/* 801E2CFC 001DFC5C 2C 00 00 00 */ cmpwi r0, 0 +/* 801E2D00 001DFC60 40 81 00 20 */ ble lbl_801E2D20 +lbl_801E2D04: +/* 801E2D04 001DFC64 28 03 00 00 */ cmplwi r3, 0 +/* 801E2D08 001DFC68 41 82 00 0C */ beq lbl_801E2D14 +/* 801E2D0C 001DFC6C 80 04 00 00 */ lwz r0, 0(r4) +/* 801E2D10 001DFC70 90 03 00 00 */ stw r0, 0(r3) +lbl_801E2D14: +/* 801E2D14 001DFC74 38 63 00 04 */ addi r3, r3, 4 +/* 801E2D18 001DFC78 38 84 00 04 */ addi r4, r4, 4 +/* 801E2D1C 001DFC7C 42 00 FF E8 */ bdnz lbl_801E2D04 +lbl_801E2D20: +/* 801E2D20 001DFC80 80 1F 00 04 */ lwz r0, 4(r31) +/* 801E2D24 001DFC84 90 1C 00 34 */ stw r0, 0x34(r28) +/* 801E2D28 001DFC88 80 1F 00 08 */ lwz r0, 8(r31) +/* 801E2D2C 001DFC8C 90 1C 00 38 */ stw r0, 0x38(r28) +/* 801E2D30 001DFC90 80 1F 00 04 */ lwz r0, 4(r31) +/* 801E2D34 001DFC94 2C 00 00 00 */ cmpwi r0, 0 +/* 801E2D38 001DFC98 40 82 00 1C */ bne lbl_801E2D54 +/* 801E2D3C 001DFC9C 80 1F 00 08 */ lwz r0, 8(r31) +/* 801E2D40 001DFCA0 2C 00 00 00 */ cmpwi r0, 0 +/* 801E2D44 001DFCA4 40 82 00 10 */ bne lbl_801E2D54 +/* 801E2D48 001DFCA8 38 00 00 00 */ li r0, 0 +/* 801E2D4C 001DFCAC 90 1C 00 3C */ stw r0, 0x3c(r28) +/* 801E2D50 001DFCB0 48 00 00 68 */ b lbl_801E2DB8 +lbl_801E2D54: +/* 801E2D54 001DFCB4 80 1C 00 38 */ lwz r0, 0x38(r28) +/* 801E2D58 001DFCB8 54 03 10 3B */ rlwinm. r3, r0, 2, 0, 0x1d +/* 801E2D5C 001DFCBC 40 82 00 10 */ bne lbl_801E2D6C +/* 801E2D60 001DFCC0 38 00 00 00 */ li r0, 0 +/* 801E2D64 001DFCC4 90 1C 00 3C */ stw r0, 0x3c(r28) +/* 801E2D68 001DFCC8 48 00 00 1C */ b lbl_801E2D84 +lbl_801E2D6C: +/* 801E2D6C 001DFCCC 3C 80 80 3D */ lis r4, lbl_803D1CB8@ha +/* 801E2D70 001DFCD0 38 A0 00 00 */ li r5, 0 +/* 801E2D74 001DFCD4 38 84 1C B8 */ addi r4, r4, lbl_803D1CB8@l +/* 801E2D78 001DFCD8 38 84 01 B3 */ addi r4, r4, 0x1b3 +/* 801E2D7C 001DFCDC 48 13 2A 9D */ bl __nwa__FUlPCcPCc +/* 801E2D80 001DFCE0 90 7C 00 3C */ stw r3, 0x3c(r28) +lbl_801E2D84: +/* 801E2D84 001DFCE4 80 1C 00 34 */ lwz r0, 0x34(r28) +/* 801E2D88 001DFCE8 80 9F 00 0C */ lwz r4, 0xc(r31) +/* 801E2D8C 001DFCEC 80 7C 00 3C */ lwz r3, 0x3c(r28) +/* 801E2D90 001DFCF0 7C 09 03 A6 */ mtctr r0 +/* 801E2D94 001DFCF4 2C 00 00 00 */ cmpwi r0, 0 +/* 801E2D98 001DFCF8 40 81 00 20 */ ble lbl_801E2DB8 +lbl_801E2D9C: +/* 801E2D9C 001DFCFC 28 03 00 00 */ cmplwi r3, 0 +/* 801E2DA0 001DFD00 41 82 00 0C */ beq lbl_801E2DAC +/* 801E2DA4 001DFD04 80 04 00 00 */ lwz r0, 0(r4) +/* 801E2DA8 001DFD08 90 03 00 00 */ stw r0, 0(r3) +lbl_801E2DAC: +/* 801E2DAC 001DFD0C 38 63 00 04 */ addi r3, r3, 4 +/* 801E2DB0 001DFD10 38 84 00 04 */ addi r4, r4, 4 +/* 801E2DB4 001DFD14 42 00 FF E8 */ bdnz lbl_801E2D9C +lbl_801E2DB8: +/* 801E2DB8 001DFD18 7F 83 E3 78 */ mr r3, r28 +/* 801E2DBC 001DFD1C BB 61 00 0C */ lmw r27, 0xc(r1) +/* 801E2DC0 001DFD20 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801E2DC4 001DFD24 7C 08 03 A6 */ mtlr r0 +/* 801E2DC8 001DFD28 38 21 00 20 */ addi r1, r1, 0x20 +/* 801E2DCC 001DFD2C 4E 80 00 20 */ blr + +.global sub_801e2dd0 +sub_801e2dd0: +/* 801E2DD0 001DFD30 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801E2DD4 001DFD34 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801E2DD8 001DFD38 38 A4 66 A0 */ addi r5, r4, skZero3f@l +/* 801E2DDC 001DFD3C 38 80 00 00 */ li r4, 0 +/* 801E2DE0 001DFD40 B0 03 00 00 */ sth r0, 0(r3) +/* 801E2DE4 001DFD44 C0 05 00 00 */ lfs f0, 0(r5) +/* 801E2DE8 001DFD48 D0 03 00 04 */ stfs f0, 4(r3) +/* 801E2DEC 001DFD4C C0 05 00 04 */ lfs f0, 4(r5) +/* 801E2DF0 001DFD50 D0 03 00 08 */ stfs f0, 8(r3) +/* 801E2DF4 001DFD54 C0 05 00 08 */ lfs f0, 8(r5) +/* 801E2DF8 001DFD58 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 801E2DFC 001DFD5C 88 03 00 10 */ lbz r0, 0x10(r3) +/* 801E2E00 001DFD60 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801E2E04 001DFD64 98 03 00 10 */ stb r0, 0x10(r3) +/* 801E2E08 001DFD68 4E 80 00 20 */ blr + +.global sub_801e2e0c +sub_801e2e0c: +/* 801E2E0C 001DFD6C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801E2E10 001DFD70 7C 08 02 A6 */ mflr r0 +/* 801E2E14 001DFD74 90 01 00 14 */ stw r0, 0x14(r1) +/* 801E2E18 001DFD78 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801E2E1C 001DFD7C 7C 9F 23 78 */ mr r31, r4 +/* 801E2E20 001DFD80 93 C1 00 08 */ stw r30, 8(r1) +/* 801E2E24 001DFD84 7C 7E 1B 78 */ mr r30, r3 +/* 801E2E28 001DFD88 80 04 00 04 */ lwz r0, 4(r4) +/* 801E2E2C 001DFD8C 90 03 00 04 */ stw r0, 4(r3) +/* 801E2E30 001DFD90 80 04 00 08 */ lwz r0, 8(r4) +/* 801E2E34 001DFD94 90 03 00 08 */ stw r0, 8(r3) +/* 801E2E38 001DFD98 80 04 00 04 */ lwz r0, 4(r4) +/* 801E2E3C 001DFD9C 2C 00 00 00 */ cmpwi r0, 0 +/* 801E2E40 001DFDA0 40 82 00 1C */ bne lbl_801E2E5C +/* 801E2E44 001DFDA4 80 1F 00 08 */ lwz r0, 8(r31) +/* 801E2E48 001DFDA8 2C 00 00 00 */ cmpwi r0, 0 +/* 801E2E4C 001DFDAC 40 82 00 10 */ bne lbl_801E2E5C +/* 801E2E50 001DFDB0 38 00 00 00 */ li r0, 0 +/* 801E2E54 001DFDB4 90 1E 00 0C */ stw r0, 0xc(r30) +/* 801E2E58 001DFDB8 48 00 00 48 */ b lbl_801E2EA0 +lbl_801E2E5C: +/* 801E2E5C 001DFDBC 80 1E 00 08 */ lwz r0, 8(r30) +/* 801E2E60 001DFDC0 1C 60 00 4C */ mulli r3, r0, 0x4c +/* 801E2E64 001DFDC4 2C 03 00 00 */ cmpwi r3, 0 +/* 801E2E68 001DFDC8 40 82 00 10 */ bne lbl_801E2E78 +/* 801E2E6C 001DFDCC 38 00 00 00 */ li r0, 0 +/* 801E2E70 001DFDD0 90 1E 00 0C */ stw r0, 0xc(r30) +/* 801E2E74 001DFDD4 48 00 00 1C */ b lbl_801E2E90 +lbl_801E2E78: +/* 801E2E78 001DFDD8 3C 80 80 3D */ lis r4, lbl_803D1CB8@ha +/* 801E2E7C 001DFDDC 38 A0 00 00 */ li r5, 0 +/* 801E2E80 001DFDE0 38 84 1C B8 */ addi r4, r4, lbl_803D1CB8@l +/* 801E2E84 001DFDE4 38 84 01 B3 */ addi r4, r4, 0x1b3 +/* 801E2E88 001DFDE8 48 13 29 91 */ bl __nwa__FUlPCcPCc +/* 801E2E8C 001DFDEC 90 7E 00 0C */ stw r3, 0xc(r30) +lbl_801E2E90: +/* 801E2E90 001DFDF0 80 7F 00 0C */ lwz r3, 0xc(r31) +/* 801E2E94 001DFDF4 80 9E 00 04 */ lwz r4, 4(r30) +/* 801E2E98 001DFDF8 80 BE 00 0C */ lwz r5, 0xc(r30) +/* 801E2E9C 001DFDFC 48 00 00 21 */ bl sub_801e2ebc +lbl_801E2EA0: +/* 801E2EA0 001DFE00 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801E2EA4 001DFE04 7F C3 F3 78 */ mr r3, r30 +/* 801E2EA8 001DFE08 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801E2EAC 001DFE0C 83 C1 00 08 */ lwz r30, 8(r1) +/* 801E2EB0 001DFE10 7C 08 03 A6 */ mtlr r0 +/* 801E2EB4 001DFE14 38 21 00 10 */ addi r1, r1, 0x10 +/* 801E2EB8 001DFE18 4E 80 00 20 */ blr + +.global sub_801e2ebc +sub_801e2ebc: +/* 801E2EBC 001DFE1C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801E2EC0 001DFE20 7C 08 02 A6 */ mflr r0 +/* 801E2EC4 001DFE24 90 01 00 24 */ stw r0, 0x24(r1) +/* 801E2EC8 001DFE28 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801E2ECC 001DFE2C 7C 7F 1B 78 */ mr r31, r3 +/* 801E2ED0 001DFE30 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801E2ED4 001DFE34 7C BE 2B 78 */ mr r30, r5 +/* 801E2ED8 001DFE38 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801E2EDC 001DFE3C 3B A0 00 00 */ li r29, 0 +/* 801E2EE0 001DFE40 93 81 00 10 */ stw r28, 0x10(r1) +/* 801E2EE4 001DFE44 7C 9C 23 78 */ mr r28, r4 +/* 801E2EE8 001DFE48 48 00 00 1C */ b lbl_801E2F04 +lbl_801E2EEC: +/* 801E2EEC 001DFE4C 7F C3 F3 78 */ mr r3, r30 +/* 801E2EF0 001DFE50 7F E4 FB 78 */ mr r4, r31 +/* 801E2EF4 001DFE54 48 00 00 3D */ bl sub_801e2f30 +/* 801E2EF8 001DFE58 3B DE 00 4C */ addi r30, r30, 0x4c +/* 801E2EFC 001DFE5C 3B BD 00 01 */ addi r29, r29, 1 +/* 801E2F00 001DFE60 3B FF 00 4C */ addi r31, r31, 0x4c +lbl_801E2F04: +/* 801E2F04 001DFE64 7C 1D E0 00 */ cmpw r29, r28 +/* 801E2F08 001DFE68 41 80 FF E4 */ blt lbl_801E2EEC +/* 801E2F0C 001DFE6C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801E2F10 001DFE70 7F C3 F3 78 */ mr r3, r30 +/* 801E2F14 001DFE74 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801E2F18 001DFE78 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801E2F1C 001DFE7C 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801E2F20 001DFE80 83 81 00 10 */ lwz r28, 0x10(r1) +/* 801E2F24 001DFE84 7C 08 03 A6 */ mtlr r0 +/* 801E2F28 001DFE88 38 21 00 20 */ addi r1, r1, 0x20 +/* 801E2F2C 001DFE8C 4E 80 00 20 */ blr + +.global sub_801e2f30 +sub_801e2f30: +/* 801E2F30 001DFE90 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801E2F34 001DFE94 7C 08 02 A6 */ mflr r0 +/* 801E2F38 001DFE98 28 03 00 00 */ cmplwi r3, 0 +/* 801E2F3C 001DFE9C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801E2F40 001DFEA0 41 82 00 08 */ beq lbl_801E2F48 +/* 801E2F44 001DFEA4 4B E3 5E 49 */ bl __ct__10CModelDataFRC10CModelData +lbl_801E2F48: +/* 801E2F48 001DFEA8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801E2F4C 001DFEAC 7C 08 03 A6 */ mtlr r0 +/* 801E2F50 001DFEB0 38 21 00 10 */ addi r1, r1, 0x10 +/* 801E2F54 001DFEB4 4E 80 00 20 */ blr + + +.global CanRenderUnsorted__16CDestroyableRockCFRC13CStateManager +CanRenderUnsorted__16CDestroyableRockCFRC13CStateManager: +/* 801E2F58 001DFEB8 38 60 00 01 */ li r3, 1 +/* 801E2F5C 001DFEBC 4E 80 00 20 */ blr + +.global UsePhazonModel__16CDestroyableRockFv +UsePhazonModel__16CDestroyableRockFv: +/* 801E2F60 001DFEC0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801E2F64 001DFEC4 7C 08 02 A6 */ mflr r0 +/* 801E2F68 001DFEC8 90 01 00 14 */ stw r0, 0x14(r1) +/* 801E2F6C 001DFECC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801E2F70 001DFED0 7C 7F 1B 78 */ mr r31, r3 +/* 801E2F74 001DFED4 38 9F 02 D8 */ addi r4, r31, 0x2d8 +/* 801E2F78 001DFED8 4B E7 20 B9 */ bl SetModelData__6CActorFRC10CModelData +/* 801E2F7C 001DFEDC 38 00 00 01 */ li r0, 1 +/* 801E2F80 001DFEE0 98 1F 03 35 */ stb r0, 0x335(r31) +/* 801E2F84 001DFEE4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801E2F88 001DFEE8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801E2F8C 001DFEEC 7C 08 03 A6 */ mtlr r0 +/* 801E2F90 001DFEF0 38 21 00 10 */ addi r1, r1, 0x10 +/* 801E2F94 001DFEF4 4E 80 00 20 */ blr + +.global TakeDamage__16CDestroyableRockFRC9CVector3ff +TakeDamage__16CDestroyableRockFRC9CVector3ff: +/* 801E2F98 001DFEF8 C0 22 AC D8 */ lfs f1, lbl_805AC9F8@sda21(r2) +/* 801E2F9C 001DFEFC C0 02 AC E0 */ lfs f0, lbl_805ACA00@sda21(r2) +/* 801E2FA0 001DFF00 D0 23 03 24 */ stfs f1, 0x324(r3) +/* 801E2FA4 001DFF04 D0 03 03 28 */ stfs f0, 0x328(r3) +/* 801E2FA8 001DFF08 4E 80 00 20 */ blr + +.global GetAimPosition__16CDestroyableRockCFRC13CStateManagerf +GetAimPosition__16CDestroyableRockCFRC13CStateManagerf: +/* 801E2FAC 001DFF0C C0 44 00 60 */ lfs f2, 0x60(r4) +/* 801E2FB0 001DFF10 C0 24 00 50 */ lfs f1, 0x50(r4) +/* 801E2FB4 001DFF14 C0 04 00 40 */ lfs f0, 0x40(r4) +/* 801E2FB8 001DFF18 D0 03 00 00 */ stfs f0, 0(r3) +/* 801E2FBC 001DFF1C D0 23 00 04 */ stfs f1, 4(r3) +/* 801E2FC0 001DFF20 D0 43 00 08 */ stfs f2, 8(r3) +/* 801E2FC4 001DFF24 4E 80 00 20 */ blr + +.global GetOrbitPosition__16CDestroyableRockCFRC13CStateManager +GetOrbitPosition__16CDestroyableRockCFRC13CStateManager: +/* 801E2FC8 001DFF28 C0 44 00 60 */ lfs f2, 0x60(r4) +/* 801E2FCC 001DFF2C C0 24 00 50 */ lfs f1, 0x50(r4) +/* 801E2FD0 001DFF30 C0 04 00 40 */ lfs f0, 0x40(r4) +/* 801E2FD4 001DFF34 D0 03 00 00 */ stfs f0, 0(r3) +/* 801E2FD8 001DFF38 D0 23 00 04 */ stfs f1, 4(r3) +/* 801E2FDC 001DFF3C D0 43 00 08 */ stfs f2, 8(r3) +/* 801E2FE0 001DFF40 4E 80 00 20 */ blr + +.global KnockBack__16CDestroyableRockFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef +KnockBack__16CDestroyableRockFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef: +/* 801E2FE4 001DFF44 4E 80 00 20 */ blr + +.global Death__16CDestroyableRockFRC9CVector3fR13CStateManager +Death__16CDestroyableRockFRC9CVector3fR13CStateManager: +/* 801E2FE8 001DFF48 38 00 00 01 */ li r0, 1 +/* 801E2FEC 001DFF4C 98 03 03 34 */ stb r0, 0x334(r3) +/* 801E2FF0 001DFF50 4E 80 00 20 */ blr + +.global GetTouchBounds__16CDestroyableRockCFv +GetTouchBounds__16CDestroyableRockCFv: +/* 801E2FF4 001DFF54 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801E2FF8 001DFF58 7C 08 02 A6 */ mflr r0 +/* 801E2FFC 001DFF5C 7C 85 23 78 */ mr r5, r4 +/* 801E3000 001DFF60 90 01 00 34 */ stw r0, 0x34(r1) +/* 801E3004 001DFF64 38 A5 00 34 */ addi r5, r5, 0x34 +/* 801E3008 001DFF68 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801E300C 001DFF6C 7C 7F 1B 78 */ mr r31, r3 +/* 801E3010 001DFF70 38 61 00 08 */ addi r3, r1, 8 +/* 801E3014 001DFF74 80 84 00 64 */ lwz r4, 0x64(r4) +/* 801E3018 001DFF78 4B F3 27 9D */ bl GetBounds__10CModelDataCFRC12CTransform4f +/* 801E301C 001DFF7C 38 00 00 01 */ li r0, 1 +/* 801E3020 001DFF80 28 1F 00 00 */ cmplwi r31, 0 +/* 801E3024 001DFF84 98 1F 00 18 */ stb r0, 0x18(r31) +/* 801E3028 001DFF88 41 82 00 34 */ beq lbl_801E305C +/* 801E302C 001DFF8C C0 01 00 08 */ lfs f0, 8(r1) +/* 801E3030 001DFF90 D0 1F 00 00 */ stfs f0, 0(r31) +/* 801E3034 001DFF94 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 801E3038 001DFF98 D0 1F 00 04 */ stfs f0, 4(r31) +/* 801E303C 001DFF9C C0 01 00 10 */ lfs f0, 0x10(r1) +/* 801E3040 001DFFA0 D0 1F 00 08 */ stfs f0, 8(r31) +/* 801E3044 001DFFA4 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 801E3048 001DFFA8 D0 1F 00 0C */ stfs f0, 0xc(r31) +/* 801E304C 001DFFAC C0 01 00 18 */ lfs f0, 0x18(r1) +/* 801E3050 001DFFB0 D0 1F 00 10 */ stfs f0, 0x10(r31) +/* 801E3054 001DFFB4 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 801E3058 001DFFB8 D0 1F 00 14 */ stfs f0, 0x14(r31) +lbl_801E305C: +/* 801E305C 001DFFBC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801E3060 001DFFC0 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801E3064 001DFFC4 7C 08 03 A6 */ mtlr r0 +/* 801E3068 001DFFC8 38 21 00 30 */ addi r1, r1, 0x30 +/* 801E306C 001DFFCC 4E 80 00 20 */ blr + +.global AcceptScriptMsg__16CDestroyableRockF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__16CDestroyableRockF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 801E3070 001DFFD0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801E3074 001DFFD4 7C 08 02 A6 */ mflr r0 +/* 801E3078 001DFFD8 90 01 00 24 */ stw r0, 0x24(r1) +/* 801E307C 001DFFDC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801E3080 001DFFE0 7C DF 33 78 */ mr r31, r6 +/* 801E3084 001DFFE4 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801E3088 001DFFE8 7C 9E 23 78 */ mr r30, r4 +/* 801E308C 001DFFEC 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801E3090 001DFFF0 7C 7D 1B 78 */ mr r29, r3 +/* 801E3094 001DFFF4 A0 05 00 00 */ lhz r0, 0(r5) +/* 801E3098 001DFFF8 38 A1 00 08 */ addi r5, r1, 8 +/* 801E309C 001DFFFC B0 01 00 08 */ sth r0, 8(r1) +/* 801E30A0 001E0000 4B EB FC 05 */ bl AcceptScriptMsg__3CAiF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 801E30A4 001E0004 2C 1E 00 21 */ cmpwi r30, 0x21 +/* 801E30A8 001E0008 41 82 00 08 */ beq lbl_801E30B0 +/* 801E30AC 001E000C 48 00 00 24 */ b lbl_801E30D0 +lbl_801E30B0: +/* 801E30B0 001E0010 7F A3 EB 78 */ mr r3, r29 +/* 801E30B4 001E0014 7F E5 FB 78 */ mr r5, r31 +/* 801E30B8 001E0018 38 80 00 12 */ li r4, 0x12 +/* 801E30BC 001E001C 4B E7 12 95 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801E30C0 001E0020 7F A3 EB 78 */ mr r3, r29 +/* 801E30C4 001E0024 7F E5 FB 78 */ mr r5, r31 +/* 801E30C8 001E0028 38 80 00 15 */ li r4, 0x15 +/* 801E30CC 001E002C 4B E7 12 85 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +lbl_801E30D0: +/* 801E30D0 001E0030 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801E30D4 001E0034 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801E30D8 001E0038 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801E30DC 001E003C 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801E30E0 001E0040 7C 08 03 A6 */ mtlr r0 +/* 801E30E4 001E0044 38 21 00 20 */ addi r1, r1, 0x20 +/* 801E30E8 001E0048 4E 80 00 20 */ blr + +.global Accept__16CDestroyableRockFR8IVisitor +Accept__16CDestroyableRockFR8IVisitor: +/* 801E30EC 001E004C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801E30F0 001E0050 7C 08 02 A6 */ mflr r0 +/* 801E30F4 001E0054 90 01 00 14 */ stw r0, 0x14(r1) +/* 801E30F8 001E0058 7C 60 1B 78 */ mr r0, r3 +/* 801E30FC 001E005C 7C 83 23 78 */ mr r3, r4 +/* 801E3100 001E0060 81 84 00 00 */ lwz r12, 0(r4) +/* 801E3104 001E0064 7C 04 03 78 */ mr r4, r0 +/* 801E3108 001E0068 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801E310C 001E006C 7D 89 03 A6 */ mtctr r12 +/* 801E3110 001E0070 4E 80 04 21 */ bctrl +/* 801E3114 001E0074 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801E3118 001E0078 7C 08 03 A6 */ mtlr r0 +/* 801E311C 001E007C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801E3120 001E0080 4E 80 00 20 */ blr + +.global Render__16CDestroyableRockCFRC13CStateManager +Render__16CDestroyableRockCFRC13CStateManager: +/* 801E3124 001E0084 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801E3128 001E0088 7C 08 02 A6 */ mflr r0 +/* 801E312C 001E008C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801E3130 001E0090 4B F3 73 B9 */ bl Render__13CPhysicsActorCFRC13CStateManager +/* 801E3134 001E0094 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801E3138 001E0098 7C 08 03 A6 */ mtlr r0 +/* 801E313C 001E009C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801E3140 001E00A0 4E 80 00 20 */ blr + +.global PreRender__16CDestroyableRockFR13CStateManagerRC14CFrustumPlanes +PreRender__16CDestroyableRockFR13CStateManagerRC14CFrustumPlanes: +/* 801E3144 001E00A4 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801E3148 001E00A8 7C 08 02 A6 */ mflr r0 +/* 801E314C 001E00AC 90 01 00 34 */ stw r0, 0x34(r1) +/* 801E3150 001E00B0 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801E3154 001E00B4 7C BF 2B 78 */ mr r31, r5 +/* 801E3158 001E00B8 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801E315C 001E00BC 7C 9E 23 78 */ mr r30, r4 +/* 801E3160 001E00C0 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801E3164 001E00C4 7C 7D 1B 78 */ mr r29, r3 +/* 801E3168 001E00C8 88 03 00 30 */ lbz r0, 0x30(r3) +/* 801E316C 001E00CC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801E3170 001E00D0 41 82 01 04 */ beq lbl_801E3274 +/* 801E3174 001E00D4 80 7E 08 B8 */ lwz r3, 0x8b8(r30) +/* 801E3178 001E00D8 80 63 00 00 */ lwz r3, 0(r3) +/* 801E317C 001E00DC 4B EA E3 DD */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager +/* 801E3180 001E00E0 2C 03 00 03 */ cmpwi r3, 3 +/* 801E3184 001E00E4 40 82 00 5C */ bne lbl_801E31E0 +/* 801E3188 001E00E8 C0 22 AC D8 */ lfs f1, lbl_805AC9F8@sda21(r2) +/* 801E318C 001E00EC 38 80 00 00 */ li r4, 0 +/* 801E3190 001E00F0 38 00 00 03 */ li r0, 3 +/* 801E3194 001E00F4 98 81 00 10 */ stb r4, 0x10(r1) +/* 801E3198 001E00F8 FC 40 08 90 */ fmr f2, f1 +/* 801E319C 001E00FC 38 61 00 14 */ addi r3, r1, 0x14 +/* 801E31A0 001E0100 FC 60 08 90 */ fmr f3, f1 +/* 801E31A4 001E0104 98 81 00 11 */ stb r4, 0x11(r1) +/* 801E31A8 001E0108 FC 80 08 90 */ fmr f4, f1 +/* 801E31AC 001E010C B0 01 00 12 */ sth r0, 0x12(r1) +/* 801E31B0 001E0110 48 18 02 3D */ bl __ct__6CColorFffff +/* 801E31B4 001E0114 A0 01 00 12 */ lhz r0, 0x12(r1) +/* 801E31B8 001E0118 88 81 00 11 */ lbz r4, 0x11(r1) +/* 801E31BC 001E011C 54 03 00 3A */ rlwinm r3, r0, 0, 0, 0x1d +/* 801E31C0 001E0120 80 A1 00 14 */ lwz r5, 0x14(r1) +/* 801E31C4 001E0124 88 01 00 10 */ lbz r0, 0x10(r1) +/* 801E31C8 001E0128 60 63 00 01 */ ori r3, r3, 1 +/* 801E31CC 001E012C 98 1D 00 B4 */ stb r0, 0xb4(r29) +/* 801E31D0 001E0130 98 9D 00 B5 */ stb r4, 0xb5(r29) +/* 801E31D4 001E0134 B0 7D 00 B6 */ sth r3, 0xb6(r29) +/* 801E31D8 001E0138 90 BD 00 B8 */ stw r5, 0xb8(r29) +/* 801E31DC 001E013C 48 00 00 98 */ b lbl_801E3274 +lbl_801E31E0: +/* 801E31E0 001E0140 88 7D 03 30 */ lbz r3, 0x330(r29) +/* 801E31E4 001E0144 88 1D 03 31 */ lbz r0, 0x331(r29) +/* 801E31E8 001E0148 88 9D 03 32 */ lbz r4, 0x332(r29) +/* 801E31EC 001E014C 7C 60 00 38 */ and r0, r3, r0 +/* 801E31F0 001E0150 7C 80 00 38 */ and r0, r4, r0 +/* 801E31F4 001E0154 2C 00 00 FF */ cmpwi r0, 0xff +/* 801E31F8 001E0158 40 80 00 30 */ bge lbl_801E3228 +/* 801E31FC 001E015C 38 00 00 FF */ li r0, 0xff +/* 801E3200 001E0160 38 80 00 02 */ li r4, 2 +/* 801E3204 001E0164 98 1D 03 33 */ stb r0, 0x333(r29) +/* 801E3208 001E0168 38 60 00 00 */ li r3, 0 +/* 801E320C 001E016C 38 00 00 03 */ li r0, 3 +/* 801E3210 001E0170 80 BD 03 30 */ lwz r5, 0x330(r29) +/* 801E3214 001E0174 98 9D 00 B4 */ stb r4, 0xb4(r29) +/* 801E3218 001E0178 98 7D 00 B5 */ stb r3, 0xb5(r29) +/* 801E321C 001E017C B0 1D 00 B6 */ sth r0, 0xb6(r29) +/* 801E3220 001E0180 90 BD 00 B8 */ stw r5, 0xb8(r29) +/* 801E3224 001E0184 48 00 00 50 */ b lbl_801E3274 +lbl_801E3228: +/* 801E3228 001E0188 C0 22 AC D8 */ lfs f1, lbl_805AC9F8@sda21(r2) +/* 801E322C 001E018C 38 80 00 00 */ li r4, 0 +/* 801E3230 001E0190 38 00 00 03 */ li r0, 3 +/* 801E3234 001E0194 98 81 00 08 */ stb r4, 8(r1) +/* 801E3238 001E0198 FC 40 08 90 */ fmr f2, f1 +/* 801E323C 001E019C 38 61 00 0C */ addi r3, r1, 0xc +/* 801E3240 001E01A0 FC 60 08 90 */ fmr f3, f1 +/* 801E3244 001E01A4 98 81 00 09 */ stb r4, 9(r1) +/* 801E3248 001E01A8 FC 80 08 90 */ fmr f4, f1 +/* 801E324C 001E01AC B0 01 00 0A */ sth r0, 0xa(r1) +/* 801E3250 001E01B0 48 18 01 9D */ bl __ct__6CColorFffff +/* 801E3254 001E01B4 88 01 00 08 */ lbz r0, 8(r1) +/* 801E3258 001E01B8 98 1D 00 B4 */ stb r0, 0xb4(r29) +/* 801E325C 001E01BC 88 01 00 09 */ lbz r0, 9(r1) +/* 801E3260 001E01C0 98 1D 00 B5 */ stb r0, 0xb5(r29) +/* 801E3264 001E01C4 A0 01 00 0A */ lhz r0, 0xa(r1) +/* 801E3268 001E01C8 B0 1D 00 B6 */ sth r0, 0xb6(r29) +/* 801E326C 001E01CC 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801E3270 001E01D0 90 1D 00 B8 */ stw r0, 0xb8(r29) +lbl_801E3274: +/* 801E3274 001E01D4 7F A3 EB 78 */ mr r3, r29 +/* 801E3278 001E01D8 7F C4 F3 78 */ mr r4, r30 +/* 801E327C 001E01DC 7F E5 FB 78 */ mr r5, r31 +/* 801E3280 001E01E0 4B E7 1A 61 */ bl PreRender__6CActorFR13CStateManagerRC14CFrustumPlanes +/* 801E3284 001E01E4 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801E3288 001E01E8 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801E328C 001E01EC 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801E3290 001E01F0 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801E3294 001E01F4 7C 08 03 A6 */ mtlr r0 +/* 801E3298 001E01F8 38 21 00 30 */ addi r1, r1, 0x30 +/* 801E329C 001E01FC 4E 80 00 20 */ blr + +.global sub_801e32a0 +sub_801e32a0: +/* 801E32A0 001E0200 94 21 FE C0 */ stwu r1, -0x140(r1) +/* 801E32A4 001E0204 7C 08 02 A6 */ mflr r0 +/* 801E32A8 001E0208 90 01 01 44 */ stw r0, 0x144(r1) +/* 801E32AC 001E020C DB E1 01 30 */ stfd f31, 0x130(r1) +/* 801E32B0 001E0210 F3 E1 01 38 */ psq_st f31, 312(r1), 0, qr0 +/* 801E32B4 001E0214 DB C1 01 20 */ stfd f30, 0x120(r1) +/* 801E32B8 001E0218 F3 C1 01 28 */ psq_st f30, 296(r1), 0, qr0 +/* 801E32BC 001E021C DB A1 01 10 */ stfd f29, 0x110(r1) +/* 801E32C0 001E0220 F3 A1 01 18 */ psq_st f29, 280(r1), 0, qr0 +/* 801E32C4 001E0224 DB 81 01 00 */ stfd f28, 0x100(r1) +/* 801E32C8 001E0228 F3 81 01 08 */ psq_st f28, 264(r1), 0, qr0 +/* 801E32CC 001E022C DB 61 00 F0 */ stfd f27, 0xf0(r1) +/* 801E32D0 001E0230 F3 61 00 F8 */ psq_st f27, 248(r1), 0, qr0 +/* 801E32D4 001E0234 DB 41 00 E0 */ stfd f26, 0xe0(r1) +/* 801E32D8 001E0238 F3 41 00 E8 */ psq_st f26, 232(r1), 0, qr0 +/* 801E32DC 001E023C DB 21 00 D0 */ stfd f25, 0xd0(r1) +/* 801E32E0 001E0240 F3 21 00 D8 */ psq_st f25, 216(r1), 0, qr0 +/* 801E32E4 001E0244 DB 01 00 C0 */ stfd f24, 0xc0(r1) +/* 801E32E8 001E0248 F3 01 00 C8 */ psq_st f24, 200(r1), 0, qr0 +/* 801E32EC 001E024C DA E1 00 B0 */ stfd f23, 0xb0(r1) +/* 801E32F0 001E0250 F2 E1 00 B8 */ psq_st f23, 184(r1), 0, qr0 +/* 801E32F4 001E0254 DA C1 00 A0 */ stfd f22, 0xa0(r1) +/* 801E32F8 001E0258 F2 C1 00 A8 */ psq_st f22, 168(r1), 0, qr0 +/* 801E32FC 001E025C DA A1 00 90 */ stfd f21, 0x90(r1) +/* 801E3300 001E0260 F2 A1 00 98 */ psq_st f21, 152(r1), 0, qr0 +/* 801E3304 001E0264 DA 81 00 80 */ stfd f20, 0x80(r1) +/* 801E3308 001E0268 F2 81 00 88 */ psq_st f20, 136(r1), 0, qr0 +/* 801E330C 001E026C 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 801E3310 001E0270 7C 7F 1B 78 */ mr r31, r3 +/* 801E3314 001E0274 FE 80 08 90 */ fmr f20, f1 +/* 801E3318 001E0278 80 63 09 24 */ lwz r3, 0x924(r3) +/* 801E331C 001E027C 28 03 00 00 */ cmplwi r3, 0 +/* 801E3320 001E0280 41 82 01 CC */ beq lbl_801E34EC +/* 801E3324 001E0284 38 80 00 00 */ li r4, 0 +/* 801E3328 001E0288 38 A0 00 01 */ li r5, 1 +/* 801E332C 001E028C 48 12 C4 11 */ bl Load__8CTextureCF11_GXTexMapIDQ28CTexture10EClampMode +/* 801E3330 001E0290 C0 02 AD 78 */ lfs f0, lbl_805ACA98@sda21(r2) +/* 801E3334 001E0294 3C 60 80 5A */ lis r3, lbl_805A61D4@ha +/* 801E3338 001E0298 38 83 61 D4 */ addi r4, r3, lbl_805A61D4@l +/* 801E333C 001E029C C3 3F 09 2C */ lfs f25, 0x92c(r31) +/* 801E3340 001E02A0 EC 80 05 32 */ fmuls f4, f0, f20 +/* 801E3344 001E02A4 C0 24 00 00 */ lfs f1, 0(r4) +/* 801E3348 001E02A8 C0 04 00 10 */ lfs f0, 0x10(r4) +/* 801E334C 001E02AC 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 801E3350 001E02B0 C0 64 00 20 */ lfs f3, 0x20(r4) +/* 801E3354 001E02B4 38 63 66 70 */ addi r3, r3, skIdentity4f@l +/* 801E3358 001E02B8 C0 44 00 08 */ lfs f2, 8(r4) +/* 801E335C 001E02BC EF 84 00 72 */ fmuls f28, f4, f1 +/* 801E3360 001E02C0 C0 24 00 18 */ lfs f1, 0x18(r4) +/* 801E3364 001E02C4 EF A4 00 32 */ fmuls f29, f4, f0 +/* 801E3368 001E02C8 C0 04 00 28 */ lfs f0, 0x28(r4) +/* 801E336C 001E02CC EF C4 00 F2 */ fmuls f30, f4, f3 +/* 801E3370 001E02D0 EF E4 00 B2 */ fmuls f31, f4, f2 +/* 801E3374 001E02D4 EF 44 00 72 */ fmuls f26, f4, f1 +/* 801E3378 001E02D8 C3 1F 09 30 */ lfs f24, 0x930(r31) +/* 801E337C 001E02DC EF 64 00 32 */ fmuls f27, f4, f0 +/* 801E3380 001E02E0 C2 FF 09 34 */ lfs f23, 0x934(r31) +/* 801E3384 001E02E4 48 12 92 5D */ bl SetModelMatrix__9CGraphicsFRC12CTransform4f +/* 801E3388 001E02E8 38 60 00 01 */ li r3, 1 +/* 801E338C 001E02EC 38 80 00 01 */ li r4, 1 +/* 801E3390 001E02F0 38 A0 00 01 */ li r5, 1 +/* 801E3394 001E02F4 38 C0 00 00 */ li r6, 0 +/* 801E3398 001E02F8 48 12 86 B9 */ bl SetBlendMode__9CGraphicsF13ERglBlendMode15ERglBlendFactor15ERglBlendFactor11ERglLogicOp +/* 801E339C 001E02FC 3C 80 80 5A */ lis r4, lbl_805A5EBC@ha +/* 801E33A0 001E0300 38 60 00 00 */ li r3, 0 +/* 801E33A4 001E0304 38 84 5E BC */ addi r4, r4, lbl_805A5EBC@l +/* 801E33A8 001E0308 48 12 6F 11 */ bl SetTevOp__9CGraphicsF12ERglTevStageRCQ213CTevCombiners8CTevPass +/* 801E33AC 001E030C 80 8D 9C 68 */ lwz r4, lbl_805A8828@sda21(r13) +/* 801E33B0 001E0310 38 60 00 01 */ li r3, 1 +/* 801E33B4 001E0314 48 12 6F 05 */ bl SetTevOp__9CGraphicsF12ERglTevStageRCQ213CTevCombiners8CTevPass +/* 801E33B8 001E0318 38 60 00 00 */ li r3, 0 +/* 801E33BC 001E031C 38 80 00 07 */ li r4, 7 +/* 801E33C0 001E0320 38 A0 00 00 */ li r5, 0 +/* 801E33C4 001E0324 48 12 86 D1 */ bl SetDepthWriteMode__9CGraphicsFb8ERglEnumb +/* 801E33C8 001E0328 FC 20 A0 90 */ fmr f1, f20 +/* 801E33CC 001E032C 38 61 00 08 */ addi r3, r1, 8 +/* 801E33D0 001E0330 FC 40 A0 90 */ fmr f2, f20 +/* 801E33D4 001E0334 FC 60 A0 90 */ fmr f3, f20 +/* 801E33D8 001E0338 FC 80 A0 90 */ fmr f4, f20 +/* 801E33DC 001E033C 48 18 00 11 */ bl __ct__6CColorFffff +/* 801E33E0 001E0340 38 61 00 08 */ addi r3, r1, 8 +/* 801E33E4 001E0344 48 12 81 65 */ bl StreamColor__9CGraphicsFRC6CColor +/* 801E33E8 001E0348 38 60 00 A0 */ li r3, 0xa0 +/* 801E33EC 001E034C 48 12 82 7D */ bl StreamBegin__9CGraphicsF13ERglPrimitive +/* 801E33F0 001E0350 C0 22 AC DC */ lfs f1, lbl_805AC9FC@sda21(r2) +/* 801E33F4 001E0354 FC 40 08 90 */ fmr f2, f1 +/* 801E33F8 001E0358 48 12 80 6D */ bl StreamTexcoord__9CGraphicsFff +/* 801E33FC 001E035C EE D9 E0 28 */ fsubs f22, f25, f28 +/* 801E3400 001E0360 38 61 00 60 */ addi r3, r1, 0x60 +/* 801E3404 001E0364 EE B8 E8 28 */ fsubs f21, f24, f29 +/* 801E3408 001E0368 EE 97 F0 28 */ fsubs f20, f23, f30 +/* 801E340C 001E036C EC 16 F8 2A */ fadds f0, f22, f31 +/* 801E3410 001E0370 D2 C1 00 54 */ stfs f22, 0x54(r1) +/* 801E3414 001E0374 EC 55 D0 2A */ fadds f2, f21, f26 +/* 801E3418 001E0378 EC 34 D8 2A */ fadds f1, f20, f27 +/* 801E341C 001E037C D2 A1 00 58 */ stfs f21, 0x58(r1) +/* 801E3420 001E0380 D2 81 00 5C */ stfs f20, 0x5c(r1) +/* 801E3424 001E0384 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 801E3428 001E0388 D0 41 00 64 */ stfs f2, 0x64(r1) +/* 801E342C 001E038C D0 21 00 68 */ stfs f1, 0x68(r1) +/* 801E3430 001E0390 48 12 81 91 */ bl StreamVertex__9CGraphicsFRC9CVector3f +/* 801E3434 001E0394 C0 22 AC D8 */ lfs f1, lbl_805AC9F8@sda21(r2) +/* 801E3438 001E0398 C0 42 AC DC */ lfs f2, lbl_805AC9FC@sda21(r2) +/* 801E343C 001E039C 48 12 80 29 */ bl StreamTexcoord__9CGraphicsFff +/* 801E3440 001E03A0 EC 55 D0 28 */ fsubs f2, f21, f26 +/* 801E3444 001E03A4 D2 C1 00 3C */ stfs f22, 0x3c(r1) +/* 801E3448 001E03A8 EC 34 D8 28 */ fsubs f1, f20, f27 +/* 801E344C 001E03AC 38 61 00 48 */ addi r3, r1, 0x48 +/* 801E3450 001E03B0 EC 16 F8 28 */ fsubs f0, f22, f31 +/* 801E3454 001E03B4 D2 A1 00 40 */ stfs f21, 0x40(r1) +/* 801E3458 001E03B8 D2 81 00 44 */ stfs f20, 0x44(r1) +/* 801E345C 001E03BC D0 01 00 48 */ stfs f0, 0x48(r1) +/* 801E3460 001E03C0 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 801E3464 001E03C4 D0 21 00 50 */ stfs f1, 0x50(r1) +/* 801E3468 001E03C8 48 12 81 59 */ bl StreamVertex__9CGraphicsFRC9CVector3f +/* 801E346C 001E03CC C0 22 AC D8 */ lfs f1, lbl_805AC9F8@sda21(r2) +/* 801E3470 001E03D0 FC 40 08 90 */ fmr f2, f1 +/* 801E3474 001E03D4 48 12 7F F1 */ bl StreamTexcoord__9CGraphicsFff +/* 801E3478 001E03D8 EE 99 E0 2A */ fadds f20, f25, f28 +/* 801E347C 001E03DC 38 61 00 30 */ addi r3, r1, 0x30 +/* 801E3480 001E03E0 EE B8 E8 2A */ fadds f21, f24, f29 +/* 801E3484 001E03E4 EE D7 F0 2A */ fadds f22, f23, f30 +/* 801E3488 001E03E8 EC 14 F8 28 */ fsubs f0, f20, f31 +/* 801E348C 001E03EC D2 81 00 24 */ stfs f20, 0x24(r1) +/* 801E3490 001E03F0 EC 55 D0 28 */ fsubs f2, f21, f26 +/* 801E3494 001E03F4 EC 36 D8 28 */ fsubs f1, f22, f27 +/* 801E3498 001E03F8 D2 A1 00 28 */ stfs f21, 0x28(r1) +/* 801E349C 001E03FC D2 C1 00 2C */ stfs f22, 0x2c(r1) +/* 801E34A0 001E0400 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801E34A4 001E0404 D0 41 00 34 */ stfs f2, 0x34(r1) +/* 801E34A8 001E0408 D0 21 00 38 */ stfs f1, 0x38(r1) +/* 801E34AC 001E040C 48 12 81 15 */ bl StreamVertex__9CGraphicsFRC9CVector3f +/* 801E34B0 001E0410 C0 22 AC DC */ lfs f1, lbl_805AC9FC@sda21(r2) +/* 801E34B4 001E0414 C0 42 AC D8 */ lfs f2, lbl_805AC9F8@sda21(r2) +/* 801E34B8 001E0418 48 12 7F AD */ bl StreamTexcoord__9CGraphicsFff +/* 801E34BC 001E041C EC 55 D0 2A */ fadds f2, f21, f26 +/* 801E34C0 001E0420 D2 81 00 0C */ stfs f20, 0xc(r1) +/* 801E34C4 001E0424 EC 36 D8 2A */ fadds f1, f22, f27 +/* 801E34C8 001E0428 38 61 00 18 */ addi r3, r1, 0x18 +/* 801E34CC 001E042C EC 14 F8 2A */ fadds f0, f20, f31 +/* 801E34D0 001E0430 D2 A1 00 10 */ stfs f21, 0x10(r1) +/* 801E34D4 001E0434 D2 C1 00 14 */ stfs f22, 0x14(r1) +/* 801E34D8 001E0438 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801E34DC 001E043C D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 801E34E0 001E0440 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 801E34E4 001E0444 48 12 80 DD */ bl StreamVertex__9CGraphicsFRC9CVector3f +/* 801E34E8 001E0448 48 12 7F 29 */ bl StreamEnd__9CGraphicsFv +lbl_801E34EC: +/* 801E34EC 001E044C E3 E1 01 38 */ psq_l f31, 312(r1), 0, qr0 +/* 801E34F0 001E0450 CB E1 01 30 */ lfd f31, 0x130(r1) +/* 801E34F4 001E0454 E3 C1 01 28 */ psq_l f30, 296(r1), 0, qr0 +/* 801E34F8 001E0458 CB C1 01 20 */ lfd f30, 0x120(r1) +/* 801E34FC 001E045C E3 A1 01 18 */ psq_l f29, 280(r1), 0, qr0 +/* 801E3500 001E0460 CB A1 01 10 */ lfd f29, 0x110(r1) +/* 801E3504 001E0464 E3 81 01 08 */ psq_l f28, 264(r1), 0, qr0 +/* 801E3508 001E0468 CB 81 01 00 */ lfd f28, 0x100(r1) +/* 801E350C 001E046C E3 61 00 F8 */ psq_l f27, 248(r1), 0, qr0 +/* 801E3510 001E0470 CB 61 00 F0 */ lfd f27, 0xf0(r1) +/* 801E3514 001E0474 E3 41 00 E8 */ psq_l f26, 232(r1), 0, qr0 +/* 801E3518 001E0478 CB 41 00 E0 */ lfd f26, 0xe0(r1) +/* 801E351C 001E047C E3 21 00 D8 */ psq_l f25, 216(r1), 0, qr0 +/* 801E3520 001E0480 CB 21 00 D0 */ lfd f25, 0xd0(r1) +/* 801E3524 001E0484 E3 01 00 C8 */ psq_l f24, 200(r1), 0, qr0 +/* 801E3528 001E0488 CB 01 00 C0 */ lfd f24, 0xc0(r1) +/* 801E352C 001E048C E2 E1 00 B8 */ psq_l f23, 184(r1), 0, qr0 +/* 801E3530 001E0490 CA E1 00 B0 */ lfd f23, 0xb0(r1) +/* 801E3534 001E0494 E2 C1 00 A8 */ psq_l f22, 168(r1), 0, qr0 +/* 801E3538 001E0498 CA C1 00 A0 */ lfd f22, 0xa0(r1) +/* 801E353C 001E049C E2 A1 00 98 */ psq_l f21, 152(r1), 0, qr0 +/* 801E3540 001E04A0 CA A1 00 90 */ lfd f21, 0x90(r1) +/* 801E3544 001E04A4 E2 81 00 88 */ psq_l f20, 136(r1), 0, qr0 +/* 801E3548 001E04A8 CA 81 00 80 */ lfd f20, 0x80(r1) +/* 801E354C 001E04AC 80 01 01 44 */ lwz r0, 0x144(r1) +/* 801E3550 001E04B0 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 801E3554 001E04B4 7C 08 03 A6 */ mtlr r0 +/* 801E3558 001E04B8 38 21 01 40 */ addi r1, r1, 0x140 +/* 801E355C 001E04BC 4E 80 00 20 */ blr + +.global Think__16CDestroyableRockFfR13CStateManager +Think__16CDestroyableRockFfR13CStateManager: +/* 801E3560 001E04C0 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801E3564 001E04C4 7C 08 02 A6 */ mflr r0 +/* 801E3568 001E04C8 90 01 00 54 */ stw r0, 0x54(r1) +/* 801E356C 001E04CC DB E1 00 40 */ stfd f31, 0x40(r1) +/* 801E3570 001E04D0 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 801E3574 001E04D4 DB C1 00 30 */ stfd f30, 0x30(r1) +/* 801E3578 001E04D8 F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 +/* 801E357C 001E04DC 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801E3580 001E04E0 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801E3584 001E04E4 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801E3588 001E04E8 88 03 00 30 */ lbz r0, 0x30(r3) +/* 801E358C 001E04EC FF C0 08 90 */ fmr f30, f1 +/* 801E3590 001E04F0 7C 7D 1B 78 */ mr r29, r3 +/* 801E3594 001E04F4 7C 9E 23 78 */ mr r30, r4 +/* 801E3598 001E04F8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801E359C 001E04FC 41 82 00 C0 */ beq lbl_801E365C +/* 801E35A0 001E0500 C0 3D 03 24 */ lfs f1, 0x324(r29) +/* 801E35A4 001E0504 C0 02 AC DC */ lfs f0, lbl_805AC9FC@sda21(r2) +/* 801E35A8 001E0508 C3 FD 03 2C */ lfs f31, 0x32c(r29) +/* 801E35AC 001E050C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801E35B0 001E0510 40 81 00 98 */ ble lbl_801E3648 +/* 801E35B4 001E0514 EC 01 F0 28 */ fsubs f0, f1, f30 +/* 801E35B8 001E0518 38 81 00 14 */ addi r4, r1, 0x14 +/* 801E35BC 001E051C 38 6D 91 E8 */ addi r3, r13, lbl_805A7DA8@sda21 +/* 801E35C0 001E0520 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801E35C4 001E0524 4B E6 C1 6D */ bl "Max__5CMathFRCfRCf" +/* 801E35C8 001E0528 C0 42 AC DC */ lfs f2, lbl_805AC9FC@sda21(r2) +/* 801E35CC 001E052C C0 03 00 00 */ lfs f0, 0(r3) +/* 801E35D0 001E0530 38 61 00 08 */ addi r3, r1, 8 +/* 801E35D4 001E0534 FC 60 10 90 */ fmr f3, f2 +/* 801E35D8 001E0538 C0 22 AC F8 */ lfs f1, lbl_805ACA18@sda21(r2) +/* 801E35DC 001E053C D0 1D 03 24 */ stfs f0, 0x324(r29) +/* 801E35E0 001E0540 C0 82 AC D8 */ lfs f4, lbl_805AC9F8@sda21(r2) +/* 801E35E4 001E0544 48 17 FE 09 */ bl __ct__6CColorFffff +/* 801E35E8 001E0548 C0 22 AC DC */ lfs f1, lbl_805AC9FC@sda21(r2) +/* 801E35EC 001E054C 7C 7F 1B 78 */ mr r31, r3 +/* 801E35F0 001E0550 C0 82 AC D8 */ lfs f4, lbl_805AC9F8@sda21(r2) +/* 801E35F4 001E0554 38 61 00 0C */ addi r3, r1, 0xc +/* 801E35F8 001E0558 FC 40 08 90 */ fmr f2, f1 +/* 801E35FC 001E055C FC 60 08 90 */ fmr f3, f1 +/* 801E3600 001E0560 48 17 FD ED */ bl __ct__6CColorFffff +/* 801E3604 001E0564 C0 3D 03 24 */ lfs f1, 0x324(r29) +/* 801E3608 001E0568 7C 64 1B 78 */ mr r4, r3 +/* 801E360C 001E056C 7F E5 FB 78 */ mr r5, r31 +/* 801E3610 001E0570 38 61 00 10 */ addi r3, r1, 0x10 +/* 801E3614 001E0574 48 17 FC 99 */ bl Lerp__6CColorFRC6CColorRC6CColorf +/* 801E3618 001E0578 80 01 00 10 */ lwz r0, 0x10(r1) +/* 801E361C 001E057C 90 1D 03 30 */ stw r0, 0x330(r29) +/* 801E3620 001E0580 88 1D 03 35 */ lbz r0, 0x335(r29) +/* 801E3624 001E0584 28 00 00 00 */ cmplwi r0, 0 +/* 801E3628 001E0588 41 82 00 14 */ beq lbl_801E363C +/* 801E362C 001E058C C0 22 AC F8 */ lfs f1, lbl_805ACA18@sda21(r2) +/* 801E3630 001E0590 C0 1D 03 24 */ lfs f0, 0x324(r29) +/* 801E3634 001E0594 EF E1 F8 3A */ fmadds f31, f1, f0, f31 +/* 801E3638 001E0598 48 00 00 10 */ b lbl_801E3648 +lbl_801E363C: +/* 801E363C 001E059C C0 22 AD 0C */ lfs f1, lbl_805ACA2C@sda21(r2) +/* 801E3640 001E05A0 C0 1D 03 24 */ lfs f0, 0x324(r29) +/* 801E3644 001E05A4 EF E1 F8 3A */ fmadds f31, f1, f0, f31 +lbl_801E3648: +/* 801E3648 001E05A8 FC 20 F0 90 */ fmr f1, f30 +/* 801E364C 001E05AC D3 FD 00 D0 */ stfs f31, 0xd0(r29) +/* 801E3650 001E05B0 7F A3 EB 78 */ mr r3, r29 +/* 801E3654 001E05B4 7F C4 F3 78 */ mr r4, r30 +/* 801E3658 001E05B8 4B E6 DA 61 */ bl Think__7CEntityFfR13CStateManager +lbl_801E365C: +/* 801E365C 001E05BC E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 801E3660 001E05C0 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 801E3664 001E05C4 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 +/* 801E3668 001E05C8 CB C1 00 30 */ lfd f30, 0x30(r1) +/* 801E366C 001E05CC 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801E3670 001E05D0 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801E3674 001E05D4 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801E3678 001E05D8 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801E367C 001E05DC 7C 08 03 A6 */ mtlr r0 +/* 801E3680 001E05E0 38 21 00 50 */ addi r1, r1, 0x50 +/* 801E3684 001E05E4 4E 80 00 20 */ blr + +.global PreThink__16CDestroyableRockFfR13CStateManager +PreThink__16CDestroyableRockFfR13CStateManager: +/* 801E3688 001E05E8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801E368C 001E05EC 7C 08 02 A6 */ mflr r0 +/* 801E3690 001E05F0 90 01 00 14 */ stw r0, 0x14(r1) +/* 801E3694 001E05F4 4B E6 DA 29 */ bl PreThink__7CEntityFfR13CStateManager +/* 801E3698 001E05F8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801E369C 001E05FC 7C 08 03 A6 */ mtlr r0 +/* 801E36A0 001E0600 38 21 00 10 */ addi r1, r1, 0x10 +/* 801E36A4 001E0604 4E 80 00 20 */ blr + +.global "__ct__16CDestroyableRockF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDatafRC11CHealthInfoRC20CDamageVulnerabilityRC13CMaterialListUiRC16CActorParametersRC10CModelData" +"__ct__16CDestroyableRockF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDatafRC11CHealthInfoRC20CDamageVulnerabilityRC13CMaterialListUiRC16CActorParametersRC10CModelData": +/* 801E36A8 001E0608 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 801E36AC 001E060C 7C 08 02 A6 */ mflr r0 +/* 801E36B0 001E0610 90 01 00 94 */ stw r0, 0x94(r1) +/* 801E36B4 001E0614 DB E1 00 80 */ stfd f31, 0x80(r1) +/* 801E36B8 001E0618 F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0 +/* 801E36BC 001E061C BE 61 00 4C */ stmw r19, 0x4c(r1) +/* 801E36C0 001E0620 A0 04 00 00 */ lhz r0, 0(r4) +/* 801E36C4 001E0624 7D 37 4B 78 */ mr r23, r9 +/* 801E36C8 001E0628 FF E0 08 90 */ fmr f31, f1 +/* 801E36CC 001E062C 7C 7F 1B 78 */ mr r31, r3 +/* 801E36D0 001E0630 B0 01 00 20 */ sth r0, 0x20(r1) +/* 801E36D4 001E0634 7C B3 2B 78 */ mr r19, r5 +/* 801E36D8 001E0638 83 21 00 98 */ lwz r25, 0x98(r1) +/* 801E36DC 001E063C 7C D4 33 78 */ mr r20, r6 +/* 801E36E0 001E0640 83 41 00 9C */ lwz r26, 0x9c(r1) +/* 801E36E4 001E0644 7C F5 3B 78 */ mr r21, r7 +/* 801E36E8 001E0648 83 61 00 A0 */ lwz r27, 0xa0(r1) +/* 801E36EC 001E064C 7D 16 43 78 */ mr r22, r8 +/* 801E36F0 001E0650 83 81 00 A4 */ lwz r28, 0xa4(r1) +/* 801E36F4 001E0654 7D 58 53 78 */ mr r24, r10 +/* 801E36F8 001E0658 83 A1 00 A8 */ lwz r29, 0xa8(r1) +/* 801E36FC 001E065C 7E E4 BB 78 */ mr r4, r23 +/* 801E3700 001E0660 83 C1 00 AC */ lwz r30, 0xac(r1) +/* 801E3704 001E0664 38 61 00 24 */ addi r3, r1, 0x24 +/* 801E3708 001E0668 4B F3 1E BD */ bl GetBounds__10CModelDataCFv +/* 801E370C 001E066C 93 01 00 08 */ stw r24, 8(r1) +/* 801E3710 001E0670 FC 20 F8 90 */ fmr f1, f31 +/* 801E3714 001E0674 C0 42 AD 34 */ lfs f2, lbl_805ACA54@sda21(r2) +/* 801E3718 001E0678 7F E3 FB 78 */ mr r3, r31 +/* 801E371C 001E067C 93 21 00 0C */ stw r25, 0xc(r1) +/* 801E3720 001E0680 7E 65 9B 78 */ mr r5, r19 +/* 801E3724 001E0684 C0 62 AD 14 */ lfs f3, lbl_805ACA34@sda21(r2) +/* 801E3728 001E0688 93 41 00 10 */ stw r26, 0x10(r1) +/* 801E372C 001E068C 7E 86 A3 78 */ mr r6, r20 +/* 801E3730 001E0690 7E A7 AB 78 */ mr r7, r21 +/* 801E3734 001E0694 7E C8 B3 78 */ mr r8, r22 +/* 801E3738 001E0698 93 61 00 14 */ stw r27, 0x14(r1) +/* 801E373C 001E069C 7E E9 BB 78 */ mr r9, r23 +/* 801E3740 001E06A0 38 81 00 20 */ addi r4, r1, 0x20 +/* 801E3744 001E06A4 39 41 00 24 */ addi r10, r1, 0x24 +/* 801E3748 001E06A8 93 81 00 18 */ stw r28, 0x18(r1) +/* 801E374C 001E06AC 4B EB F6 B5 */ bl "__ct__3CAiF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC6CAABoxfRC11CHealthInfoRC20CDamageVulnerabilityRC13CMaterialListUiRC16CActorParametersff" +/* 801E3750 001E06B0 3C 60 80 3E */ lis r3, lbl_803E6074@ha +/* 801E3754 001E06B4 7F A4 EB 78 */ mr r4, r29 +/* 801E3758 001E06B8 38 03 60 74 */ addi r0, r3, lbl_803E6074@l +/* 801E375C 001E06BC 38 7F 02 D8 */ addi r3, r31, 0x2d8 +/* 801E3760 001E06C0 90 1F 00 00 */ stw r0, 0(r31) +/* 801E3764 001E06C4 4B E3 56 29 */ bl __ct__10CModelDataFRC10CModelData +/* 801E3768 001E06C8 C0 02 AC DC */ lfs f0, lbl_805AC9FC@sda21(r2) +/* 801E376C 001E06CC 38 7F 03 30 */ addi r3, r31, 0x330 +/* 801E3770 001E06D0 C0 22 AC D8 */ lfs f1, lbl_805AC9F8@sda21(r2) +/* 801E3774 001E06D4 D0 1F 03 24 */ stfs f0, 0x324(r31) +/* 801E3778 001E06D8 FC 40 08 90 */ fmr f2, f1 +/* 801E377C 001E06DC D0 1F 03 28 */ stfs f0, 0x328(r31) +/* 801E3780 001E06E0 FC 60 08 90 */ fmr f3, f1 +/* 801E3784 001E06E4 FC 80 08 90 */ fmr f4, f1 +/* 801E3788 001E06E8 C0 1C 00 64 */ lfs f0, 0x64(r28) +/* 801E378C 001E06EC D0 1F 03 2C */ stfs f0, 0x32c(r31) +/* 801E3790 001E06F0 48 17 FC 5D */ bl __ct__6CColorFffff +/* 801E3794 001E06F4 38 C0 00 00 */ li r6, 0 +/* 801E3798 001E06F8 7F C0 00 34 */ cntlzw r0, r30 +/* 801E379C 001E06FC 98 DF 03 34 */ stb r6, 0x334(r31) +/* 801E37A0 001E0700 54 00 D9 7E */ srwi r0, r0, 5 +/* 801E37A4 001E0704 38 A0 00 01 */ li r5, 1 +/* 801E37A8 001E0708 7F E3 FB 78 */ mr r3, r31 +/* 801E37AC 001E070C 98 DF 03 35 */ stb r6, 0x335(r31) +/* 801E37B0 001E0710 38 80 00 00 */ li r4, 0 +/* 801E37B4 001E0714 C0 18 00 00 */ lfs f0, 0(r24) +/* 801E37B8 001E0718 D0 1F 03 38 */ stfs f0, 0x338(r31) +/* 801E37BC 001E071C C0 18 00 04 */ lfs f0, 4(r24) +/* 801E37C0 001E0720 D0 1F 03 3C */ stfs f0, 0x33c(r31) +/* 801E37C4 001E0724 98 1F 03 41 */ stb r0, 0x341(r31) +/* 801E37C8 001E0728 88 1F 00 E7 */ lbz r0, 0xe7(r31) +/* 801E37CC 001E072C 50 C0 0F BC */ rlwimi r0, r6, 1, 0x1e, 0x1e +/* 801E37D0 001E0730 98 1F 00 E7 */ stb r0, 0xe7(r31) +/* 801E37D4 001E0734 88 1F 02 EC */ lbz r0, 0x2ec(r31) +/* 801E37D8 001E0738 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 801E37DC 001E073C 98 1F 02 EC */ stb r0, 0x2ec(r31) +/* 801E37E0 001E0740 4B E6 F5 8D */ bl CreateShadow__6CActorFb +/* 801E37E4 001E0744 7F E3 FB 78 */ mr r3, r31 +/* 801E37E8 001E0748 E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0 +/* 801E37EC 001E074C CB E1 00 80 */ lfd f31, 0x80(r1) +/* 801E37F0 001E0750 BA 61 00 4C */ lmw r19, 0x4c(r1) +/* 801E37F4 001E0754 80 01 00 94 */ lwz r0, 0x94(r1) +/* 801E37F8 001E0758 7C 08 03 A6 */ mtlr r0 +/* 801E37FC 001E075C 38 21 00 90 */ addi r1, r1, 0x90 +/* 801E3800 001E0760 4E 80 00 20 */ blr + +.global __dt__16CDestroyableRockFv +__dt__16CDestroyableRockFv: +/* 801E3804 001E0764 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801E3808 001E0768 7C 08 02 A6 */ mflr r0 +/* 801E380C 001E076C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801E3810 001E0770 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801E3814 001E0774 7C 9F 23 78 */ mr r31, r4 +/* 801E3818 001E0778 93 C1 00 08 */ stw r30, 8(r1) +/* 801E381C 001E077C 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801E3820 001E0780 41 82 00 38 */ beq lbl_801E3858 +/* 801E3824 001E0784 3C 80 80 3E */ lis r4, lbl_803E6074@ha +/* 801E3828 001E0788 38 7E 02 D8 */ addi r3, r30, 0x2d8 +/* 801E382C 001E078C 38 04 60 74 */ addi r0, r4, lbl_803E6074@l +/* 801E3830 001E0790 38 80 FF FF */ li r4, -1 +/* 801E3834 001E0794 90 1E 00 00 */ stw r0, 0(r30) +/* 801E3838 001E0798 4B F3 32 15 */ bl __dt__10CModelDataFv +/* 801E383C 001E079C 7F C3 F3 78 */ mr r3, r30 +/* 801E3840 001E07A0 38 80 00 00 */ li r4, 0 +/* 801E3844 001E07A4 4B EB F5 3D */ bl __dt__3CAiFv +/* 801E3848 001E07A8 7F E0 07 35 */ extsh. r0, r31 +/* 801E384C 001E07AC 40 81 00 0C */ ble lbl_801E3858 +/* 801E3850 001E07B0 7F C3 F3 78 */ mr r3, r30 +/* 801E3854 001E07B4 48 13 20 DD */ bl Free__7CMemoryFPCv +lbl_801E3858: +/* 801E3858 001E07B8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801E385C 001E07BC 7F C3 F3 78 */ mr r3, r30 +/* 801E3860 001E07C0 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801E3864 001E07C4 83 C1 00 08 */ lwz r30, 8(r1) +/* 801E3868 001E07C8 7C 08 03 A6 */ mtlr r0 +/* 801E386C 001E07CC 38 21 00 10 */ addi r1, r1, 0x10 +/* 801E3870 001E07D0 4E 80 00 20 */ blr + +.global __sinit_CThardus_cpp +__sinit_CThardus_cpp: +/* 801E3874 001E07D4 C0 02 AD 30 */ lfs f0, lbl_805ACA50@sda21(r2) +/* 801E3878 001E07D8 3C 60 80 57 */ lis r3, lbl_8057206C@ha +/* 801E387C 001E07DC C0 42 AC DC */ lfs f2, lbl_805AC9FC@sda21(r2) +/* 801E3880 001E07E0 38 83 20 6C */ addi r4, r3, lbl_8057206C@l +/* 801E3884 001E07E4 C0 22 AD 00 */ lfs f1, lbl_805ACA20@sda21(r2) +/* 801E3888 001E07E8 38 6D A4 B8 */ addi r3, r13, lbl_805A9078@sda21 +/* 801E388C 001E07EC D0 44 00 00 */ stfs f2, 0(r4) +/* 801E3890 001E07F0 D0 44 00 04 */ stfs f2, 4(r4) +/* 801E3894 001E07F4 D0 24 00 08 */ stfs f1, 8(r4) +/* 801E3898 001E07F8 D0 0D A4 B8 */ stfs f0, lbl_805A9078@sda21(r13) +/* 801E389C 001E07FC D0 23 00 04 */ stfs f1, 4(r3) +/* 801E38A0 001E0800 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Enemies/CThardusRockProjectile.s b/asm/Kyoto_CWD/Enemies/CThardusRockProjectile.s new file mode 100644 index 00000000..787143e4 --- /dev/null +++ b/asm/Kyoto_CWD/Enemies/CThardusRockProjectile.s @@ -0,0 +1,2638 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__22CThardusRockProjectileFv +__dt__22CThardusRockProjectileFv: +/* 80203700 00200660 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80203704 00200664 7C 08 02 A6 */ mflr r0 +/* 80203708 00200668 90 01 00 44 */ stw r0, 0x44(r1) +/* 8020370C 0020066C 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80203710 00200670 7C 9F 23 78 */ mr r31, r4 +/* 80203714 00200674 93 C1 00 38 */ stw r30, 0x38(r1) +/* 80203718 00200678 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8020371C 0020067C 93 A1 00 34 */ stw r29, 0x34(r1) +/* 80203720 00200680 93 81 00 30 */ stw r28, 0x30(r1) +/* 80203724 00200684 41 82 00 DC */ beq lbl_80203800 +/* 80203728 00200688 3C 60 80 3E */ lis r3, lbl_803E6BE0@ha +/* 8020372C 0020068C 34 1E 05 8C */ addic. r0, r30, 0x58c +/* 80203730 00200690 38 03 6B E0 */ addi r0, r3, lbl_803E6BE0@l +/* 80203734 00200694 90 1E 00 00 */ stw r0, 0(r30) +/* 80203738 00200698 41 82 00 44 */ beq lbl_8020377C +/* 8020373C 0020069C 80 1E 05 90 */ lwz r0, 0x590(r30) +/* 80203740 002006A0 80 7E 05 98 */ lwz r3, 0x598(r30) +/* 80203744 002006A4 54 00 08 3C */ slwi r0, r0, 1 +/* 80203748 002006A8 7C 03 02 14 */ add r0, r3, r0 +/* 8020374C 002006AC 90 61 00 1C */ stw r3, 0x1c(r1) +/* 80203750 002006B0 7C 64 1B 78 */ mr r4, r3 +/* 80203754 002006B4 90 01 00 24 */ stw r0, 0x24(r1) +/* 80203758 002006B8 90 01 00 20 */ stw r0, 0x20(r1) +/* 8020375C 002006BC 90 61 00 18 */ stw r3, 0x18(r1) +/* 80203760 002006C0 48 00 00 08 */ b lbl_80203768 +lbl_80203764: +/* 80203764 002006C4 38 84 00 02 */ addi r4, r4, 2 +lbl_80203768: +/* 80203768 002006C8 7C 04 00 40 */ cmplw r4, r0 +/* 8020376C 002006CC 40 82 FF F8 */ bne lbl_80203764 +/* 80203770 002006D0 28 03 00 00 */ cmplwi r3, 0 +/* 80203774 002006D4 41 82 00 08 */ beq lbl_8020377C +/* 80203778 002006D8 48 11 21 B9 */ bl Free__7CMemoryFPCv +lbl_8020377C: +/* 8020377C 002006DC 34 1E 05 7C */ addic. r0, r30, 0x57c +/* 80203780 002006E0 41 82 00 50 */ beq lbl_802037D0 +/* 80203784 002006E4 80 1E 05 80 */ lwz r0, 0x580(r30) +/* 80203788 002006E8 83 9E 05 88 */ lwz r28, 0x588(r30) +/* 8020378C 002006EC 1C 00 00 4C */ mulli r0, r0, 0x4c +/* 80203790 002006F0 93 81 00 0C */ stw r28, 0xc(r1) +/* 80203794 002006F4 7F BC 02 14 */ add r29, r28, r0 +/* 80203798 002006F8 93 81 00 08 */ stw r28, 8(r1) +/* 8020379C 002006FC 93 A1 00 14 */ stw r29, 0x14(r1) +/* 802037A0 00200700 93 A1 00 10 */ stw r29, 0x10(r1) +/* 802037A4 00200704 48 00 00 14 */ b lbl_802037B8 +lbl_802037A8: +/* 802037A8 00200708 7F 83 E3 78 */ mr r3, r28 +/* 802037AC 0020070C 38 80 FF FF */ li r4, -1 +/* 802037B0 00200710 4B F1 32 9D */ bl __dt__10CModelDataFv +/* 802037B4 00200714 3B 9C 00 4C */ addi r28, r28, 0x4c +lbl_802037B8: +/* 802037B8 00200718 7C 1C E8 40 */ cmplw r28, r29 +/* 802037BC 0020071C 40 82 FF EC */ bne lbl_802037A8 +/* 802037C0 00200720 80 7E 05 88 */ lwz r3, 0x588(r30) +/* 802037C4 00200724 28 03 00 00 */ cmplwi r3, 0 +/* 802037C8 00200728 41 82 00 08 */ beq lbl_802037D0 +/* 802037CC 0020072C 48 11 21 65 */ bl Free__7CMemoryFPCv +lbl_802037D0: +/* 802037D0 00200730 34 1E 05 78 */ addic. r0, r30, 0x578 +/* 802037D4 00200734 41 82 00 10 */ beq lbl_802037E4 +/* 802037D8 00200738 80 7E 05 78 */ lwz r3, 0x578(r30) +/* 802037DC 0020073C 38 80 00 01 */ li r4, 1 +/* 802037E0 00200740 4B FA 40 FD */ bl sub_801a78dc +lbl_802037E4: +/* 802037E4 00200744 7F C3 F3 78 */ mr r3, r30 +/* 802037E8 00200748 38 80 00 00 */ li r4, 0 +/* 802037EC 0020074C 4B E7 3D 85 */ bl __dt__10CPatternedFv +/* 802037F0 00200750 7F E0 07 35 */ extsh. r0, r31 +/* 802037F4 00200754 40 81 00 0C */ ble lbl_80203800 +/* 802037F8 00200758 7F C3 F3 78 */ mr r3, r30 +/* 802037FC 0020075C 48 11 21 35 */ bl Free__7CMemoryFPCv +lbl_80203800: +/* 80203800 00200760 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80203804 00200764 7F C3 F3 78 */ mr r3, r30 +/* 80203808 00200768 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8020380C 0020076C 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 80203810 00200770 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 80203814 00200774 83 81 00 30 */ lwz r28, 0x30(r1) +/* 80203818 00200778 7C 08 03 A6 */ mtlr r0 +/* 8020381C 0020077C 38 21 00 40 */ addi r1, r1, 0x40 +/* 80203820 00200780 4E 80 00 20 */ blr + +.global sub_80203824 +sub_80203824: +/* 80203824 00200784 94 21 FB 00 */ stwu r1, -0x500(r1) +/* 80203828 00200788 7C 08 02 A6 */ mflr r0 +/* 8020382C 0020078C 90 01 05 04 */ stw r0, 0x504(r1) +/* 80203830 00200790 38 61 00 18 */ addi r3, r1, 0x18 +/* 80203834 00200794 BE A1 04 D4 */ stmw r21, 0x4d4(r1) +/* 80203838 00200798 7C 9A 23 78 */ mr r26, r4 +/* 8020383C 0020079C 7C BB 2B 78 */ mr r27, r5 +/* 80203840 002007A0 7C DC 33 78 */ mr r28, r6 +/* 80203844 002007A4 7C FD 3B 78 */ mr r29, r7 +/* 80203848 002007A8 7D 1E 43 78 */ mr r30, r8 +/* 8020384C 002007AC 4B E4 98 91 */ bl AllocateUniqueId__13CStateManagerFv +/* 80203850 002007B0 A0 01 00 18 */ lhz r0, 0x18(r1) +/* 80203854 002007B4 3C 60 80 3D */ lis r3, lbl_803D2590@ha +/* 80203858 002007B8 38 83 25 90 */ addi r4, r3, lbl_803D2590@l +/* 8020385C 002007BC 7F 65 DB 78 */ mr r5, r27 +/* 80203860 002007C0 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 80203864 002007C4 54 06 05 BE */ clrlwi r6, r0, 0x16 +/* 80203868 002007C8 38 61 00 D0 */ addi r3, r1, 0xd0 +/* 8020386C 002007CC 38 84 00 17 */ addi r4, r4, 0x17 +/* 80203870 002007D0 4C C6 31 82 */ crclr 6 +/* 80203874 002007D4 48 18 A4 69 */ bl sprintf +/* 80203878 002007D8 3C 60 80 3D */ lis r3, lbl_803D2590@ha +/* 8020387C 002007DC 3B 20 00 00 */ li r25, 0 +/* 80203880 002007E0 38 63 25 90 */ addi r3, r3, lbl_803D2590@l +/* 80203884 002007E4 3B 00 00 00 */ li r24, 0 +/* 80203888 002007E8 38 83 00 34 */ addi r4, r3, 0x34 +/* 8020388C 002007EC 3A E0 00 00 */ li r23, 0 +/* 80203890 002007F0 3A C0 00 00 */ li r22, 0 +/* 80203894 002007F4 3A A0 00 00 */ li r21, 0 +/* 80203898 002007F8 38 60 01 00 */ li r3, 0x100 +/* 8020389C 002007FC 38 A0 00 00 */ li r5, 0 +/* 802038A0 00200800 48 11 1F CD */ bl __nw__FUlPCcPCc +/* 802038A4 00200804 7C 7F 1B 79 */ or. r31, r3, r3 +/* 802038A8 00200808 41 82 01 04 */ beq lbl_802039AC +/* 802038AC 0020080C 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 802038B0 00200810 93 61 00 58 */ stw r27, 0x58(r1) +/* 802038B4 00200814 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 802038B8 00200818 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 802038BC 0020081C 90 01 00 54 */ stw r0, 0x54(r1) +/* 802038C0 00200820 38 61 00 4C */ addi r3, r1, 0x4c +/* 802038C4 00200824 38 A1 00 54 */ addi r5, r1, 0x54 +/* 802038C8 00200828 81 84 00 00 */ lwz r12, 0(r4) +/* 802038CC 0020082C 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 802038D0 00200830 7D 89 03 A6 */ mtctr r12 +/* 802038D4 00200834 4E 80 04 21 */ bctrl +/* 802038D8 00200838 3A A1 00 5C */ addi r21, r1, 0x5c +/* 802038DC 0020083C 38 81 00 4C */ addi r4, r1, 0x4c +/* 802038E0 00200840 7E A3 AB 78 */ mr r3, r21 +/* 802038E4 00200844 3A C0 00 01 */ li r22, 1 +/* 802038E8 00200848 48 13 D5 C1 */ bl __ct__6CTokenFRC6CToken +/* 802038EC 0020084C 7E A3 AB 78 */ mr r3, r21 +/* 802038F0 00200850 48 13 D5 1D */ bl GetObj__6CTokenFv +/* 802038F4 00200854 80 03 00 04 */ lwz r0, 4(r3) +/* 802038F8 00200858 38 E0 00 00 */ li r7, 0 +/* 802038FC 0020085C A0 C1 00 1C */ lhz r6, 0x1c(r1) +/* 80203900 00200860 38 61 00 88 */ addi r3, r1, 0x88 +/* 80203904 00200864 90 01 00 64 */ stw r0, 0x64(r1) +/* 80203908 00200868 38 81 00 44 */ addi r4, r1, 0x44 +/* 8020390C 0020086C 80 0D A3 88 */ lwz r0, lbl_805A8F48@sda21(r13) +/* 80203910 00200870 38 A1 00 68 */ addi r5, r1, 0x68 +/* 80203914 00200874 B0 C1 00 14 */ sth r6, 0x14(r1) +/* 80203918 00200878 38 C1 00 48 */ addi r6, r1, 0x48 +/* 8020391C 0020087C 3A A0 00 01 */ li r21, 1 +/* 80203920 00200880 3B 00 00 01 */ li r24, 1 +/* 80203924 00200884 81 1A 08 CC */ lwz r8, 0x8cc(r26) +/* 80203928 00200888 91 01 00 40 */ stw r8, 0x40(r1) +/* 8020392C 0020088C 91 01 00 44 */ stw r8, 0x44(r1) +/* 80203930 00200890 90 E1 00 6C */ stw r7, 0x6c(r1) +/* 80203934 00200894 90 E1 00 70 */ stw r7, 0x70(r1) +/* 80203938 00200898 90 E1 00 74 */ stw r7, 0x74(r1) +/* 8020393C 0020089C 90 01 00 48 */ stw r0, 0x48(r1) +/* 80203940 002008A0 4B E4 DB 45 */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" +/* 80203944 002008A4 38 61 00 78 */ addi r3, r1, 0x78 +/* 80203948 002008A8 38 81 00 D0 */ addi r4, r1, 0xd0 +/* 8020394C 002008AC 38 C1 00 10 */ addi r6, r1, 0x10 +/* 80203950 002008B0 3A E0 00 01 */ li r23, 1 +/* 80203954 002008B4 38 A0 FF FF */ li r5, -1 +/* 80203958 002008B8 48 13 A8 3D */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator" +/* 8020395C 002008BC 3B 20 00 01 */ li r25, 1 +/* 80203960 002008C0 48 14 66 4D */ bl White__6CColorFv +/* 80203964 002008C4 3C 80 80 5A */ lis r4, lbl_805A65FC@ha +/* 80203968 002008C8 7C 7B 1B 78 */ mr r27, r3 +/* 8020396C 002008CC 38 84 65 FC */ addi r4, r4, lbl_805A65FC@l +/* 80203970 002008D0 7F 85 E3 78 */ mr r5, r28 +/* 80203974 002008D4 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 80203978 002008D8 48 10 F9 01 */ bl __ct__12CTransform4fFRC9CMatrix3fRC9CVector3f +/* 8020397C 002008DC 93 A1 00 08 */ stw r29, 8(r1) +/* 80203980 002008E0 7C 69 1B 78 */ mr r9, r3 +/* 80203984 002008E4 7F E3 FB 78 */ mr r3, r31 +/* 80203988 002008E8 7F CA F3 78 */ mr r10, r30 +/* 8020398C 002008EC 93 61 00 0C */ stw r27, 0xc(r1) +/* 80203990 002008F0 38 81 00 5C */ addi r4, r1, 0x5c +/* 80203994 002008F4 38 A1 00 14 */ addi r5, r1, 0x14 +/* 80203998 002008F8 38 E1 00 88 */ addi r7, r1, 0x88 +/* 8020399C 002008FC 39 01 00 78 */ addi r8, r1, 0x78 +/* 802039A0 00200900 38 C0 00 01 */ li r6, 1 +/* 802039A4 00200904 4B E5 71 55 */ bl "__ct__10CExplosionFRC31TLockedToken<15CGenDescription>9TUniqueIdbRC11CEntityInfoRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC12CTransform4fUiRC9CVector3fRC6CColor" +/* 802039A8 00200908 7C 7F 1B 78 */ mr r31, r3 +lbl_802039AC: +/* 802039AC 0020090C 7E A0 07 75 */ extsb. r0, r21 +/* 802039B0 00200910 41 82 00 10 */ beq lbl_802039C0 +/* 802039B4 00200914 38 61 00 5C */ addi r3, r1, 0x5c +/* 802039B8 00200918 38 80 00 00 */ li r4, 0 +/* 802039BC 0020091C 48 13 D4 85 */ bl __dt__6CTokenFv +lbl_802039C0: +/* 802039C0 00200920 7E C0 07 75 */ extsb. r0, r22 +/* 802039C4 00200924 41 82 00 10 */ beq lbl_802039D4 +/* 802039C8 00200928 38 61 00 4C */ addi r3, r1, 0x4c +/* 802039CC 0020092C 38 80 FF FF */ li r4, -1 +/* 802039D0 00200930 48 13 D4 71 */ bl __dt__6CTokenFv +lbl_802039D4: +/* 802039D4 00200934 7E E0 07 75 */ extsb. r0, r23 +/* 802039D8 00200938 41 82 00 44 */ beq lbl_80203A1C +/* 802039DC 0020093C 80 01 00 90 */ lwz r0, 0x90(r1) +/* 802039E0 00200940 80 61 00 98 */ lwz r3, 0x98(r1) +/* 802039E4 00200944 1C 00 00 0C */ mulli r0, r0, 0xc +/* 802039E8 00200948 90 61 00 24 */ stw r3, 0x24(r1) +/* 802039EC 0020094C 7C 64 1B 78 */ mr r4, r3 +/* 802039F0 00200950 7C 03 02 14 */ add r0, r3, r0 +/* 802039F4 00200954 90 61 00 20 */ stw r3, 0x20(r1) +/* 802039F8 00200958 90 01 00 2C */ stw r0, 0x2c(r1) +/* 802039FC 0020095C 90 01 00 28 */ stw r0, 0x28(r1) +/* 80203A00 00200960 48 00 00 08 */ b lbl_80203A08 +lbl_80203A04: +/* 80203A04 00200964 38 84 00 0C */ addi r4, r4, 0xc +lbl_80203A08: +/* 80203A08 00200968 7C 04 00 40 */ cmplw r4, r0 +/* 80203A0C 0020096C 40 82 FF F8 */ bne lbl_80203A04 +/* 80203A10 00200970 28 03 00 00 */ cmplwi r3, 0 +/* 80203A14 00200974 41 82 00 08 */ beq lbl_80203A1C +/* 80203A18 00200978 48 11 1F 19 */ bl Free__7CMemoryFPCv +lbl_80203A1C: +/* 80203A1C 0020097C 7F 00 07 75 */ extsb. r0, r24 +/* 80203A20 00200980 41 82 00 44 */ beq lbl_80203A64 +/* 80203A24 00200984 80 01 00 6C */ lwz r0, 0x6c(r1) +/* 80203A28 00200988 80 61 00 74 */ lwz r3, 0x74(r1) +/* 80203A2C 0020098C 1C 00 00 0C */ mulli r0, r0, 0xc +/* 80203A30 00200990 90 61 00 34 */ stw r3, 0x34(r1) +/* 80203A34 00200994 7C 64 1B 78 */ mr r4, r3 +/* 80203A38 00200998 7C 03 02 14 */ add r0, r3, r0 +/* 80203A3C 0020099C 90 61 00 30 */ stw r3, 0x30(r1) +/* 80203A40 002009A0 90 01 00 3C */ stw r0, 0x3c(r1) +/* 80203A44 002009A4 90 01 00 38 */ stw r0, 0x38(r1) +/* 80203A48 002009A8 48 00 00 08 */ b lbl_80203A50 +lbl_80203A4C: +/* 80203A4C 002009AC 38 84 00 0C */ addi r4, r4, 0xc +lbl_80203A50: +/* 80203A50 002009B0 7C 04 00 40 */ cmplw r4, r0 +/* 80203A54 002009B4 40 82 FF F8 */ bne lbl_80203A4C +/* 80203A58 002009B8 28 03 00 00 */ cmplwi r3, 0 +/* 80203A5C 002009BC 41 82 00 08 */ beq lbl_80203A64 +/* 80203A60 002009C0 48 11 1E D1 */ bl Free__7CMemoryFPCv +lbl_80203A64: +/* 80203A64 002009C4 7F 20 07 75 */ extsb. r0, r25 +/* 80203A68 002009C8 41 82 00 0C */ beq lbl_80203A74 +/* 80203A6C 002009CC 38 61 00 78 */ addi r3, r1, 0x78 +/* 80203A70 002009D0 48 13 A0 71 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80203A74: +/* 80203A74 002009D4 7F 43 D3 78 */ mr r3, r26 +/* 80203A78 002009D8 7F E4 FB 78 */ mr r4, r31 +/* 80203A7C 002009DC 4B E4 90 99 */ bl AddObject__13CStateManagerFR7CEntity +/* 80203A80 002009E0 BA A1 04 D4 */ lmw r21, 0x4d4(r1) +/* 80203A84 002009E4 80 01 05 04 */ lwz r0, 0x504(r1) +/* 80203A88 002009E8 7C 08 03 A6 */ mtlr r0 +/* 80203A8C 002009EC 38 21 05 00 */ addi r1, r1, 0x500 +/* 80203A90 002009F0 4E 80 00 20 */ blr + +.global sub_80203a94 +sub_80203a94: +/* 80203A94 002009F4 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 80203A98 002009F8 7C 08 02 A6 */ mflr r0 +/* 80203A9C 002009FC 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 80203AA0 00200A00 DB E1 00 E0 */ stfd f31, 0xe0(r1) +/* 80203AA4 00200A04 F3 E1 00 E8 */ psq_st f31, 232(r1), 0, qr0 +/* 80203AA8 00200A08 DB C1 00 D0 */ stfd f30, 0xd0(r1) +/* 80203AAC 00200A0C F3 C1 00 D8 */ psq_st f30, 216(r1), 0, qr0 +/* 80203AB0 00200A10 93 E1 00 CC */ stw r31, 0xcc(r1) +/* 80203AB4 00200A14 93 C1 00 C8 */ stw r30, 0xc8(r1) +/* 80203AB8 00200A18 93 A1 00 C4 */ stw r29, 0xc4(r1) +/* 80203ABC 00200A1C 93 81 00 C0 */ stw r28, 0xc0(r1) +/* 80203AC0 00200A20 7C 7D 1B 78 */ mr r29, r3 +/* 80203AC4 00200A24 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80203AC8 00200A28 A0 63 05 D0 */ lhz r3, 0x5d0(r3) +/* 80203ACC 00200A2C 7C 9E 23 78 */ mr r30, r4 +/* 80203AD0 00200A30 7C BC 2B 78 */ mr r28, r5 +/* 80203AD4 00200A34 7C 03 00 40 */ cmplw r3, r0 +/* 80203AD8 00200A38 41 82 02 50 */ beq lbl_80203D28 +/* 80203ADC 00200A3C A0 1D 05 D0 */ lhz r0, 0x5d0(r29) +/* 80203AE0 00200A40 7F C3 F3 78 */ mr r3, r30 +/* 80203AE4 00200A44 38 81 00 28 */ addi r4, r1, 0x28 +/* 80203AE8 00200A48 B0 01 00 28 */ sth r0, 0x28(r1) +/* 80203AEC 00200A4C 4B E4 8A 89 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80203AF0 00200A50 7C 7F 1B 79 */ or. r31, r3, r3 +/* 80203AF4 00200A54 41 82 02 34 */ beq lbl_80203D28 +/* 80203AF8 00200A58 80 BD 00 64 */ lwz r5, 0x64(r29) +/* 80203AFC 00200A5C 7F A3 EB 78 */ mr r3, r29 +/* 80203B00 00200A60 7F C4 F3 78 */ mr r4, r30 +/* 80203B04 00200A64 7F 86 E3 78 */ mr r6, r28 +/* 80203B08 00200A68 C0 05 00 00 */ lfs f0, 0(r5) +/* 80203B0C 00200A6C 38 E1 00 4C */ addi r7, r1, 0x4c +/* 80203B10 00200A70 39 00 00 00 */ li r8, 0 +/* 80203B14 00200A74 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 80203B18 00200A78 C0 05 00 04 */ lfs f0, 4(r5) +/* 80203B1C 00200A7C D0 01 00 50 */ stfs f0, 0x50(r1) +/* 80203B20 00200A80 C0 05 00 08 */ lfs f0, 8(r5) +/* 80203B24 00200A84 D0 01 00 54 */ stfs f0, 0x54(r1) +/* 80203B28 00200A88 80 BD 05 C8 */ lwz r5, 0x5c8(r29) +/* 80203B2C 00200A8C 4B FF FC F9 */ bl sub_80203824 +/* 80203B30 00200A90 C0 22 B0 80 */ lfs f1, lbl_805ACDA0@sda21(r2) +/* 80203B34 00200A94 7F E3 FB 78 */ mr r3, r31 +/* 80203B38 00200A98 C0 42 B0 84 */ lfs f2, lbl_805ACDA4@sda21(r2) +/* 80203B3C 00200A9C 7F C4 F3 78 */ mr r4, r30 +/* 80203B40 00200AA0 C0 62 B0 88 */ lfs f3, lbl_805ACDA8@sda21(r2) +/* 80203B44 00200AA4 7F 85 E3 78 */ mr r5, r28 +/* 80203B48 00200AA8 4B FD 7E D9 */ bl sub_801dba20 +/* 80203B4C 00200AAC 83 9E 08 4C */ lwz r28, 0x84c(r30) +/* 80203B50 00200AB0 C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 80203B54 00200AB4 C0 5C 00 50 */ lfs f2, 0x50(r28) +/* 80203B58 00200AB8 C0 7C 00 60 */ lfs f3, 0x60(r28) +/* 80203B5C 00200ABC C0 1D 00 60 */ lfs f0, 0x60(r29) +/* 80203B60 00200AC0 EC C2 08 28 */ fsubs f6, f2, f1 +/* 80203B64 00200AC4 C0 5C 00 40 */ lfs f2, 0x40(r28) +/* 80203B68 00200AC8 C0 3D 00 40 */ lfs f1, 0x40(r29) +/* 80203B6C 00200ACC EC A3 00 28 */ fsubs f5, f3, f0 +/* 80203B70 00200AD0 EC 06 01 B2 */ fmuls f0, f6, f6 +/* 80203B74 00200AD4 C0 82 B0 8C */ lfs f4, lbl_805ACDAC@sda21(r2) +/* 80203B78 00200AD8 EC 62 08 28 */ fsubs f3, f2, f1 +/* 80203B7C 00200ADC D0 C1 00 5C */ stfs f6, 0x5c(r1) +/* 80203B80 00200AE0 EC 45 01 72 */ fmuls f2, f5, f5 +/* 80203B84 00200AE4 D0 A1 00 60 */ stfs f5, 0x60(r1) +/* 80203B88 00200AE8 EC 23 00 F2 */ fmuls f1, f3, f3 +/* 80203B8C 00200AEC D0 61 00 58 */ stfs f3, 0x58(r1) +/* 80203B90 00200AF0 80 7D 00 64 */ lwz r3, 0x64(r29) +/* 80203B94 00200AF4 EC 01 00 2A */ fadds f0, f1, f0 +/* 80203B98 00200AF8 C0 63 00 00 */ lfs f3, 0(r3) +/* 80203B9C 00200AFC EC 22 00 2A */ fadds f1, f2, f0 +/* 80203BA0 00200B00 EF C4 00 F2 */ fmuls f30, f4, f3 +/* 80203BA4 00200B04 EC 1E 07 B2 */ fmuls f0, f30, f30 +/* 80203BA8 00200B08 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80203BAC 00200B0C 40 80 00 F0 */ bge lbl_80203C9C +/* 80203BB0 00200B10 7F A4 EB 78 */ mr r4, r29 +/* 80203BB4 00200B14 38 61 00 64 */ addi r3, r1, 0x64 +/* 80203BB8 00200B18 81 9D 00 00 */ lwz r12, 0(r29) +/* 80203BBC 00200B1C 81 8C 02 B0 */ lwz r12, 0x2b0(r12) +/* 80203BC0 00200B20 7D 89 03 A6 */ mtctr r12 +/* 80203BC4 00200B24 4E 80 04 21 */ bctrl +/* 80203BC8 00200B28 7F A4 EB 78 */ mr r4, r29 +/* 80203BCC 00200B2C 38 61 00 80 */ addi r3, r1, 0x80 +/* 80203BD0 00200B30 81 9D 00 00 */ lwz r12, 0(r29) +/* 80203BD4 00200B34 C3 E1 00 78 */ lfs f31, 0x78(r1) +/* 80203BD8 00200B38 81 8C 02 B0 */ lwz r12, 0x2b0(r12) +/* 80203BDC 00200B3C 7D 89 03 A6 */ mtctr r12 +/* 80203BE0 00200B40 4E 80 04 21 */ bctrl +/* 80203BE4 00200B44 C0 02 B0 90 */ lfs f0, lbl_805ACDB0@sda21(r2) +/* 80203BE8 00200B48 39 00 00 09 */ li r8, 9 +/* 80203BEC 00200B4C C0 21 00 88 */ lfs f1, 0x88(r1) +/* 80203BF0 00200B50 38 60 00 00 */ li r3, 0 +/* 80203BF4 00200B54 88 C1 00 30 */ lbz r6, 0x30(r1) +/* 80203BF8 00200B58 50 66 3E 30 */ rlwimi r6, r3, 7, 0x18, 0x18 +/* 80203BFC 00200B5C EC 20 00 72 */ fmuls f1, f0, f1 +/* 80203C00 00200B60 88 01 00 B4 */ lbz r0, 0xb4(r1) +/* 80203C04 00200B64 EC 00 07 F2 */ fmuls f0, f0, f31 +/* 80203C08 00200B68 54 C5 06 3E */ clrlwi r5, r6, 0x18 +/* 80203C0C 00200B6C 50 65 36 72 */ rlwimi r5, r3, 6, 0x19, 0x19 +/* 80203C10 00200B70 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80203C14 00200B74 54 A7 06 3E */ clrlwi r7, r5, 0x18 +/* 80203C18 00200B78 98 C1 00 30 */ stb r6, 0x30(r1) +/* 80203C1C 00200B7C 50 67 2E B4 */ rlwimi r7, r3, 5, 0x1a, 0x1a +/* 80203C20 00200B80 38 61 00 40 */ addi r3, r1, 0x40 +/* 80203C24 00200B84 91 01 00 9C */ stw r8, 0x9c(r1) +/* 80203C28 00200B88 38 81 00 58 */ addi r4, r1, 0x58 +/* 80203C2C 00200B8C 98 A1 00 30 */ stb r5, 0x30(r1) +/* 80203C30 00200B90 98 E1 00 A0 */ stb r7, 0xa0(r1) +/* 80203C34 00200B94 D0 21 00 A4 */ stfs f1, 0xa4(r1) +/* 80203C38 00200B98 D0 21 00 A8 */ stfs f1, 0xa8(r1) +/* 80203C3C 00200B9C D3 C1 00 AC */ stfs f30, 0xac(r1) +/* 80203C40 00200BA0 D0 01 00 B0 */ stfs f0, 0xb0(r1) +/* 80203C44 00200BA4 98 01 00 B4 */ stb r0, 0xb4(r1) +/* 80203C48 00200BA8 A0 DD 00 08 */ lhz r6, 8(r29) +/* 80203C4C 00200BAC 91 01 00 2C */ stw r8, 0x2c(r1) +/* 80203C50 00200BB0 B0 C1 00 14 */ sth r6, 0x14(r1) +/* 80203C54 00200BB4 A0 BC 00 08 */ lhz r5, 8(r28) +/* 80203C58 00200BB8 98 E1 00 30 */ stb r7, 0x30(r1) +/* 80203C5C 00200BBC B0 A1 00 1C */ sth r5, 0x1c(r1) +/* 80203C60 00200BC0 A0 1D 00 08 */ lhz r0, 8(r29) +/* 80203C64 00200BC4 B0 C1 00 10 */ sth r6, 0x10(r1) +/* 80203C68 00200BC8 B0 A1 00 18 */ sth r5, 0x18(r1) +/* 80203C6C 00200BCC B0 01 00 20 */ sth r0, 0x20(r1) +/* 80203C70 00200BD0 B0 01 00 24 */ sth r0, 0x24(r1) +/* 80203C74 00200BD4 48 11 0B DD */ bl AsNormalized__9CVector3fCFv +/* 80203C78 00200BD8 3C 80 80 5A */ lis r4, lbl_8059FD18@ha +/* 80203C7C 00200BDC 7F C3 F3 78 */ mr r3, r30 +/* 80203C80 00200BE0 39 04 FD 18 */ addi r8, r4, lbl_8059FD18@l +/* 80203C84 00200BE4 38 A1 00 1C */ addi r5, r1, 0x1c +/* 80203C88 00200BE8 38 81 00 24 */ addi r4, r1, 0x24 +/* 80203C8C 00200BEC 38 C1 00 14 */ addi r6, r1, 0x14 +/* 80203C90 00200BF0 38 E1 00 9C */ addi r7, r1, 0x9c +/* 80203C94 00200BF4 39 21 00 40 */ addi r9, r1, 0x40 +/* 80203C98 00200BF8 4B E4 64 09 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +lbl_80203C9C: +/* 80203C9C 00200BFC 81 5E 08 CC */ lwz r10, 0x8cc(r30) +/* 80203CA0 00200C00 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80203CA4 00200C04 C0 9D 00 60 */ lfs f4, 0x60(r29) +/* 80203CA8 00200C08 39 03 66 A0 */ addi r8, r3, skZero3f@l +/* 80203CAC 00200C0C C0 7D 00 50 */ lfs f3, 0x50(r29) +/* 80203CB0 00200C10 38 00 00 01 */ li r0, 1 +/* 80203CB4 00200C14 C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 80203CB8 00200C18 7F A3 EB 78 */ mr r3, r29 +/* 80203CBC 00200C1C C0 22 B0 88 */ lfs f1, lbl_805ACDA8@sda21(r2) +/* 80203CC0 00200C20 39 21 00 34 */ addi r9, r1, 0x34 +/* 80203CC4 00200C24 D0 61 00 38 */ stfs f3, 0x38(r1) +/* 80203CC8 00200C28 38 A0 00 00 */ li r5, 0 +/* 80203CCC 00200C2C C0 42 B0 94 */ lfs f2, lbl_805ACDB4@sda21(r2) +/* 80203CD0 00200C30 38 C0 00 14 */ li r6, 0x14 +/* 80203CD4 00200C34 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 80203CD8 00200C38 38 E0 00 7F */ li r7, 0x7f +/* 80203CDC 00200C3C C0 62 B0 98 */ lfs f3, lbl_805ACDB8@sda21(r2) +/* 80203CE0 00200C40 D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 80203CE4 00200C44 93 C1 00 08 */ stw r30, 8(r1) +/* 80203CE8 00200C48 90 01 00 0C */ stw r0, 0xc(r1) +/* 80203CEC 00200C4C 80 9D 05 D8 */ lwz r4, 0x5d8(r29) +/* 80203CF0 00200C50 4B E4 F2 41 */ bl ProcessSoundEvent__6CActorFififfUcUcRC9CVector3fRC9CVector3fiR13CStateManager +/* 80203CF4 00200C54 88 1D 05 DD */ lbz r0, 0x5dd(r29) +/* 80203CF8 00200C58 28 00 00 00 */ cmplwi r0, 0 +/* 80203CFC 00200C5C 41 82 00 2C */ beq lbl_80203D28 +/* 80203D00 00200C60 C0 22 B0 9C */ lfs f1, lbl_805ACDBC@sda21(r2) +/* 80203D04 00200C64 7F E3 FB 78 */ mr r3, r31 +/* 80203D08 00200C68 7F C4 F3 78 */ mr r4, r30 +/* 80203D0C 00200C6C 7F A5 EB 78 */ mr r5, r29 +/* 80203D10 00200C70 4B FD 7F 89 */ bl sub_801dbc98 +/* 80203D14 00200C74 7F A3 EB 78 */ mr r3, r29 +/* 80203D18 00200C78 7F C5 F3 78 */ mr r5, r30 +/* 80203D1C 00200C7C 38 80 00 09 */ li r4, 9 +/* 80203D20 00200C80 38 C0 FF FF */ li r6, -1 +/* 80203D24 00200C84 4B E4 D3 9D */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +lbl_80203D28: +/* 80203D28 00200C88 E3 E1 00 E8 */ psq_l f31, 232(r1), 0, qr0 +/* 80203D2C 00200C8C CB E1 00 E0 */ lfd f31, 0xe0(r1) +/* 80203D30 00200C90 E3 C1 00 D8 */ psq_l f30, 216(r1), 0, qr0 +/* 80203D34 00200C94 CB C1 00 D0 */ lfd f30, 0xd0(r1) +/* 80203D38 00200C98 83 E1 00 CC */ lwz r31, 0xcc(r1) +/* 80203D3C 00200C9C 83 C1 00 C8 */ lwz r30, 0xc8(r1) +/* 80203D40 00200CA0 83 A1 00 C4 */ lwz r29, 0xc4(r1) +/* 80203D44 00200CA4 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 80203D48 00200CA8 83 81 00 C0 */ lwz r28, 0xc0(r1) +/* 80203D4C 00200CAC 7C 08 03 A6 */ mtlr r0 +/* 80203D50 00200CB0 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 80203D54 00200CB4 4E 80 00 20 */ blr + +.global sub_80203d58 +sub_80203d58: +/* 80203D58 00200CB8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80203D5C 00200CBC 7C 08 02 A6 */ mflr r0 +/* 80203D60 00200CC0 38 80 00 00 */ li r4, 0 +/* 80203D64 00200CC4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80203D68 00200CC8 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80203D6C 00200CCC 7C 7F 1B 78 */ mr r31, r3 +/* 80203D70 00200CD0 88 03 03 28 */ lbz r0, 0x328(r3) +/* 80203D74 00200CD4 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 80203D78 00200CD8 98 03 03 28 */ stb r0, 0x328(r3) +/* 80203D7C 00200CDC 4B F1 75 FD */ bl Stop__13CPhysicsActorFv +/* 80203D80 00200CE0 7F E3 FB 78 */ mr r3, r31 +/* 80203D84 00200CE4 81 9F 00 00 */ lwz r12, 0(r31) +/* 80203D88 00200CE8 81 8C 00 80 */ lwz r12, 0x80(r12) +/* 80203D8C 00200CEC 7D 89 03 A6 */ mtctr r12 +/* 80203D90 00200CF0 4E 80 04 21 */ bctrl +/* 80203D94 00200CF4 C0 02 B0 A0 */ lfs f0, lbl_805ACDC0@sda21(r2) +/* 80203D98 00200CF8 FC 40 08 50 */ fneg f2, f1 +/* 80203D9C 00200CFC C0 22 B0 9C */ lfs f1, lbl_805ACDBC@sda21(r2) +/* 80203DA0 00200D00 38 00 00 03 */ li r0, 3 +/* 80203DA4 00200D04 D0 1F 01 50 */ stfs f0, 0x150(r31) +/* 80203DA8 00200D08 EC 21 00 B2 */ fmuls f1, f1, f2 +/* 80203DAC 00200D0C D0 1F 01 54 */ stfs f0, 0x154(r31) +/* 80203DB0 00200D10 D0 3F 01 58 */ stfs f1, 0x158(r31) +/* 80203DB4 00200D14 90 1F 05 6C */ stw r0, 0x56c(r31) +/* 80203DB8 00200D18 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80203DBC 00200D1C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80203DC0 00200D20 7C 08 03 A6 */ mtlr r0 +/* 80203DC4 00200D24 38 21 00 10 */ addi r1, r1, 0x10 +/* 80203DC8 00200D28 4E 80 00 20 */ blr + +.global Render__22CThardusRockProjectileCFRC13CStateManager +Render__22CThardusRockProjectileCFRC13CStateManager: +/* 80203DCC 00200D2C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80203DD0 00200D30 7C 08 02 A6 */ mflr r0 +/* 80203DD4 00200D34 90 01 00 14 */ stw r0, 0x14(r1) +/* 80203DD8 00200D38 4B E7 42 55 */ bl Render__10CPatternedCFRC13CStateManager +/* 80203DDC 00200D3C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80203DE0 00200D40 7C 08 03 A6 */ mtlr r0 +/* 80203DE4 00200D44 38 21 00 10 */ addi r1, r1, 0x10 +/* 80203DE8 00200D48 4E 80 00 20 */ blr + +.global sub_80203dec +sub_80203dec: +/* 80203DEC 00200D4C 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80203DF0 00200D50 7C 08 02 A6 */ mflr r0 +/* 80203DF4 00200D54 90 01 00 54 */ stw r0, 0x54(r1) +/* 80203DF8 00200D58 BE E1 00 2C */ stmw r23, 0x2c(r1) +/* 80203DFC 00200D5C 7C 77 1B 78 */ mr r23, r3 +/* 80203E00 00200D60 7C 98 23 78 */ mr r24, r4 +/* 80203E04 00200D64 7C B9 2B 78 */ mr r25, r5 +/* 80203E08 00200D68 7C DA 33 78 */ mr r26, r6 +/* 80203E0C 00200D6C 3B 60 00 00 */ li r27, 0 +/* 80203E10 00200D70 3B E0 00 00 */ li r31, 0 +/* 80203E14 00200D74 83 83 05 90 */ lwz r28, 0x590(r3) +/* 80203E18 00200D78 48 00 00 E0 */ b lbl_80203EF8 +lbl_80203E1C: +/* 80203E1C 00200D7C 80 B7 05 98 */ lwz r5, 0x598(r23) +/* 80203E20 00200D80 7F 64 DB 78 */ mr r4, r27 +/* 80203E24 00200D84 80 77 05 78 */ lwz r3, 0x578(r23) +/* 80203E28 00200D88 7C 05 FA 2E */ lhzx r0, r5, r31 +/* 80203E2C 00200D8C B0 01 00 14 */ sth r0, 0x14(r1) +/* 80203E30 00200D90 4B FA 34 09 */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 80203E34 00200D94 A0 A3 00 3C */ lhz r5, 0x3c(r3) +/* 80203E38 00200D98 7F 03 C3 78 */ mr r3, r24 +/* 80203E3C 00200D9C A0 01 00 14 */ lhz r0, 0x14(r1) +/* 80203E40 00200DA0 38 81 00 0C */ addi r4, r1, 0xc +/* 80203E44 00200DA4 B0 A1 00 10 */ sth r5, 0x10(r1) +/* 80203E48 00200DA8 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80203E4C 00200DAC 4B E4 87 29 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80203E50 00200DB0 7C 64 1B 78 */ mr r4, r3 +/* 80203E54 00200DB4 38 61 00 20 */ addi r3, r1, 0x20 +/* 80203E58 00200DB8 4B EA BE 39 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 80203E5C 00200DBC 83 C3 00 04 */ lwz r30, 4(r3) +/* 80203E60 00200DC0 28 1E 00 00 */ cmplwi r30, 0 +/* 80203E64 00200DC4 41 82 00 8C */ beq lbl_80203EF0 +/* 80203E68 00200DC8 A0 01 00 10 */ lhz r0, 0x10(r1) +/* 80203E6C 00200DCC 7F 03 C3 78 */ mr r3, r24 +/* 80203E70 00200DD0 38 81 00 08 */ addi r4, r1, 8 +/* 80203E74 00200DD4 B0 01 00 08 */ sth r0, 8(r1) +/* 80203E78 00200DD8 4B E4 86 FD */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80203E7C 00200DDC 7C 64 1B 78 */ mr r4, r3 +/* 80203E80 00200DE0 38 61 00 18 */ addi r3, r1, 0x18 +/* 80203E84 00200DE4 4B EA BE 0D */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 80203E88 00200DE8 83 A3 00 04 */ lwz r29, 4(r3) +/* 80203E8C 00200DEC 28 1D 00 00 */ cmplwi r29, 0 +/* 80203E90 00200DF0 41 82 00 60 */ beq lbl_80203EF0 +/* 80203E94 00200DF4 2C 19 00 01 */ cmpwi r25, 1 +/* 80203E98 00200DF8 41 82 00 38 */ beq lbl_80203ED0 +/* 80203E9C 00200DFC 40 80 00 54 */ bge lbl_80203EF0 +/* 80203EA0 00200E00 2C 19 00 00 */ cmpwi r25, 0 +/* 80203EA4 00200E04 40 80 00 08 */ bge lbl_80203EAC +/* 80203EA8 00200E08 48 00 00 48 */ b lbl_80203EF0 +lbl_80203EAC: +/* 80203EAC 00200E0C 7F C3 F3 78 */ mr r3, r30 +/* 80203EB0 00200E10 7F 44 D3 78 */ mr r4, r26 +/* 80203EB4 00200E14 7F 05 C3 78 */ mr r5, r24 +/* 80203EB8 00200E18 4B E5 04 99 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 80203EBC 00200E1C 7F A3 EB 78 */ mr r3, r29 +/* 80203EC0 00200E20 7F 44 D3 78 */ mr r4, r26 +/* 80203EC4 00200E24 7F 05 C3 78 */ mr r5, r24 +/* 80203EC8 00200E28 4B E5 04 89 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 80203ECC 00200E2C 48 00 00 24 */ b lbl_80203EF0 +lbl_80203ED0: +/* 80203ED0 00200E30 7F C3 F3 78 */ mr r3, r30 +/* 80203ED4 00200E34 7F 44 D3 78 */ mr r4, r26 +/* 80203ED8 00200E38 7F 05 C3 78 */ mr r5, r24 +/* 80203EDC 00200E3C 4B E5 00 A5 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 80203EE0 00200E40 7F A3 EB 78 */ mr r3, r29 +/* 80203EE4 00200E44 7F 44 D3 78 */ mr r4, r26 +/* 80203EE8 00200E48 7F 05 C3 78 */ mr r5, r24 +/* 80203EEC 00200E4C 4B E5 00 95 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +lbl_80203EF0: +/* 80203EF0 00200E50 3B 7B 00 01 */ addi r27, r27, 1 +/* 80203EF4 00200E54 3B FF 00 02 */ addi r31, r31, 2 +lbl_80203EF8: +/* 80203EF8 00200E58 7C 1B E0 40 */ cmplw r27, r28 +/* 80203EFC 00200E5C 41 80 FF 20 */ blt lbl_80203E1C +/* 80203F00 00200E60 BA E1 00 2C */ lmw r23, 0x2c(r1) +/* 80203F04 00200E64 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80203F08 00200E68 7C 08 03 A6 */ mtlr r0 +/* 80203F0C 00200E6C 38 21 00 50 */ addi r1, r1, 0x50 +/* 80203F10 00200E70 4E 80 00 20 */ blr + +.global SetChildrenActive__22CThardusRockProjectileFR13CStateManagerb +SetChildrenActive__22CThardusRockProjectileFR13CStateManagerb: +/* 80203F14 00200E74 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80203F18 00200E78 7C 08 02 A6 */ mflr r0 +/* 80203F1C 00200E7C 90 01 00 44 */ stw r0, 0x44(r1) +/* 80203F20 00200E80 BF 01 00 20 */ stmw r24, 0x20(r1) +/* 80203F24 00200E84 7C 78 1B 78 */ mr r24, r3 +/* 80203F28 00200E88 7C 99 23 78 */ mr r25, r4 +/* 80203F2C 00200E8C 54 BE 06 3E */ clrlwi r30, r5, 0x18 +/* 80203F30 00200E90 3B 80 00 00 */ li r28, 0 +/* 80203F34 00200E94 3B E0 00 00 */ li r31, 0 +/* 80203F38 00200E98 83 A3 05 90 */ lwz r29, 0x590(r3) +/* 80203F3C 00200E9C 48 00 00 94 */ b lbl_80203FD0 +lbl_80203F40: +/* 80203F40 00200EA0 80 B8 05 98 */ lwz r5, 0x598(r24) +/* 80203F44 00200EA4 7F 84 E3 78 */ mr r4, r28 +/* 80203F48 00200EA8 80 78 05 78 */ lwz r3, 0x578(r24) +/* 80203F4C 00200EAC 7C 05 FA 2E */ lhzx r0, r5, r31 +/* 80203F50 00200EB0 B0 01 00 14 */ sth r0, 0x14(r1) +/* 80203F54 00200EB4 4B FA 32 E5 */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 80203F58 00200EB8 A0 A3 00 3C */ lhz r5, 0x3c(r3) +/* 80203F5C 00200EBC 7F 23 CB 78 */ mr r3, r25 +/* 80203F60 00200EC0 A0 01 00 14 */ lhz r0, 0x14(r1) +/* 80203F64 00200EC4 38 81 00 0C */ addi r4, r1, 0xc +/* 80203F68 00200EC8 B0 A1 00 10 */ sth r5, 0x10(r1) +/* 80203F6C 00200ECC B0 01 00 0C */ sth r0, 0xc(r1) +/* 80203F70 00200ED0 4B E4 86 05 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80203F74 00200ED4 7C 7B 1B 79 */ or. r27, r3, r3 +/* 80203F78 00200ED8 41 82 00 50 */ beq lbl_80203FC8 +/* 80203F7C 00200EDC A0 01 00 10 */ lhz r0, 0x10(r1) +/* 80203F80 00200EE0 7F 23 CB 78 */ mr r3, r25 +/* 80203F84 00200EE4 38 81 00 08 */ addi r4, r1, 8 +/* 80203F88 00200EE8 B0 01 00 08 */ sth r0, 8(r1) +/* 80203F8C 00200EEC 4B E4 85 E9 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80203F90 00200EF0 7C 7A 1B 79 */ or. r26, r3, r3 +/* 80203F94 00200EF4 41 82 00 34 */ beq lbl_80203FC8 +/* 80203F98 00200EF8 7F 63 DB 78 */ mr r3, r27 +/* 80203F9C 00200EFC 7F C4 F3 78 */ mr r4, r30 +/* 80203FA0 00200F00 81 9B 00 00 */ lwz r12, 0(r27) +/* 80203FA4 00200F04 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80203FA8 00200F08 7D 89 03 A6 */ mtctr r12 +/* 80203FAC 00200F0C 4E 80 04 21 */ bctrl +/* 80203FB0 00200F10 7F 43 D3 78 */ mr r3, r26 +/* 80203FB4 00200F14 7F C4 F3 78 */ mr r4, r30 +/* 80203FB8 00200F18 81 9A 00 00 */ lwz r12, 0(r26) +/* 80203FBC 00200F1C 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80203FC0 00200F20 7D 89 03 A6 */ mtctr r12 +/* 80203FC4 00200F24 4E 80 04 21 */ bctrl +lbl_80203FC8: +/* 80203FC8 00200F28 3B 9C 00 01 */ addi r28, r28, 1 +/* 80203FCC 00200F2C 3B FF 00 02 */ addi r31, r31, 2 +lbl_80203FD0: +/* 80203FD0 00200F30 7C 1C E8 40 */ cmplw r28, r29 +/* 80203FD4 00200F34 41 80 FF 6C */ blt lbl_80203F40 +/* 80203FD8 00200F38 BB 01 00 20 */ lmw r24, 0x20(r1) +/* 80203FDC 00200F3C 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80203FE0 00200F40 7C 08 03 A6 */ mtlr r0 +/* 80203FE4 00200F44 38 21 00 40 */ addi r1, r1, 0x40 +/* 80203FE8 00200F48 4E 80 00 20 */ blr + +.global UpdateDestroyableRockCollisionActors__22CThardusRockProjectileFR13CStateManager +UpdateDestroyableRockCollisionActors__22CThardusRockProjectileFR13CStateManager: +/* 80203FEC 00200F4C 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 80203FF0 00200F50 7C 08 02 A6 */ mflr r0 +/* 80203FF4 00200F54 90 01 00 84 */ stw r0, 0x84(r1) +/* 80203FF8 00200F58 BE E1 00 5C */ stmw r23, 0x5c(r1) +/* 80203FFC 00200F5C 7C 79 1B 78 */ mr r25, r3 +/* 80204000 00200F60 7C 9A 23 78 */ mr r26, r4 +/* 80204004 00200F64 80 63 05 78 */ lwz r3, 0x578(r3) +/* 80204008 00200F68 4B FA 32 41 */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 8020400C 00200F6C 7C 7E 1B 78 */ mr r30, r3 +/* 80204010 00200F70 3B 80 00 00 */ li r28, 0 +/* 80204014 00200F74 3B 00 00 00 */ li r24, 0 +/* 80204018 00200F78 48 00 02 0C */ b lbl_80204224 +lbl_8020401C: +/* 8020401C 00200F7C 80 79 05 78 */ lwz r3, 0x578(r25) +/* 80204020 00200F80 7F 84 E3 78 */ mr r4, r28 +/* 80204024 00200F84 4B FA 32 15 */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 80204028 00200F88 A0 03 00 3C */ lhz r0, 0x3c(r3) +/* 8020402C 00200F8C 7F 43 D3 78 */ mr r3, r26 +/* 80204030 00200F90 38 81 00 0C */ addi r4, r1, 0xc +/* 80204034 00200F94 B0 01 00 14 */ sth r0, 0x14(r1) +/* 80204038 00200F98 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8020403C 00200F9C 4B E4 85 39 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80204040 00200FA0 7C 64 1B 78 */ mr r4, r3 +/* 80204044 00200FA4 38 61 00 18 */ addi r3, r1, 0x18 +/* 80204048 00200FA8 4B EA B3 05 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8020404C 00200FAC 83 A3 00 04 */ lwz r29, 4(r3) +/* 80204050 00200FB0 28 1D 00 00 */ cmplwi r29, 0 +/* 80204054 00200FB4 41 82 01 C8 */ beq lbl_8020421C +/* 80204058 00200FB8 88 1D 00 30 */ lbz r0, 0x30(r29) +/* 8020405C 00200FBC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80204060 00200FC0 41 82 01 BC */ beq lbl_8020421C +/* 80204064 00200FC4 80 B9 05 98 */ lwz r5, 0x598(r25) +/* 80204068 00200FC8 7F 43 D3 78 */ mr r3, r26 +/* 8020406C 00200FCC 38 81 00 08 */ addi r4, r1, 8 +/* 80204070 00200FD0 7C 05 C2 2E */ lhzx r0, r5, r24 +/* 80204074 00200FD4 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80204078 00200FD8 B0 01 00 08 */ sth r0, 8(r1) +/* 8020407C 00200FDC 4B E4 84 F9 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80204080 00200FE0 7C 7B 1B 79 */ or. r27, r3, r3 +/* 80204084 00200FE4 41 82 01 98 */ beq lbl_8020421C +/* 80204088 00200FE8 81 83 00 00 */ lwz r12, 0(r3) +/* 8020408C 00200FEC 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 80204090 00200FF0 7D 89 03 A6 */ mtctr r12 +/* 80204094 00200FF4 4E 80 04 21 */ bctrl +/* 80204098 00200FF8 7C 64 1B 78 */ mr r4, r3 +/* 8020409C 00200FFC 7F A3 EB 78 */ mr r3, r29 +/* 802040A0 00201000 4B FA 4A F9 */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability +/* 802040A4 00201004 7F A3 EB 78 */ mr r3, r29 +/* 802040A8 00201008 7F 44 D3 78 */ mr r4, r26 +/* 802040AC 0020100C 81 9D 00 00 */ lwz r12, 0(r29) +/* 802040B0 00201010 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 802040B4 00201014 7D 89 03 A6 */ mtctr r12 +/* 802040B8 00201018 4E 80 04 21 */ bctrl +/* 802040BC 0020101C 7C 7F 1B 78 */ mr r31, r3 +/* 802040C0 00201020 7F 63 DB 78 */ mr r3, r27 +/* 802040C4 00201024 81 9B 00 00 */ lwz r12, 0(r27) +/* 802040C8 00201028 7F 44 D3 78 */ mr r4, r26 +/* 802040CC 0020102C 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 802040D0 00201030 7D 89 03 A6 */ mtctr r12 +/* 802040D4 00201034 4E 80 04 21 */ bctrl +/* 802040D8 00201038 C0 1F 00 00 */ lfs f0, 0(r31) +/* 802040DC 0020103C 38 80 00 00 */ li r4, 0 +/* 802040E0 00201040 D0 03 00 00 */ stfs f0, 0(r3) +/* 802040E4 00201044 C0 1F 00 04 */ lfs f0, 4(r31) +/* 802040E8 00201048 D0 03 00 04 */ stfs f0, 4(r3) +/* 802040EC 0020104C 88 19 05 BC */ lbz r0, 0x5bc(r25) +/* 802040F0 00201050 28 00 00 00 */ cmplwi r0, 0 +/* 802040F4 00201054 41 82 00 14 */ beq lbl_80204108 +/* 802040F8 00201058 80 19 05 6C */ lwz r0, 0x56c(r25) +/* 802040FC 0020105C 2C 00 00 03 */ cmpwi r0, 3 +/* 80204100 00201060 41 82 00 08 */ beq lbl_80204108 +/* 80204104 00201064 38 80 00 01 */ li r4, 1 +lbl_80204108: +/* 80204108 00201068 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 8020410C 0020106C 41 82 00 38 */ beq lbl_80204144 +/* 80204110 00201070 80 AD 93 78 */ lwz r5, lbl_805A7F38@sda21(r13) +/* 80204114 00201074 38 60 00 00 */ li r3, 0 +/* 80204118 00201078 38 80 00 01 */ li r4, 1 +/* 8020411C 0020107C 48 18 5D D9 */ bl __shl2i +/* 80204120 00201080 38 A0 00 00 */ li r5, 0 +/* 80204124 00201084 38 00 00 01 */ li r0, 1 +/* 80204128 00201088 90 81 00 3C */ stw r4, 0x3c(r1) +/* 8020412C 0020108C 3A E1 00 38 */ addi r23, r1, 0x38 +/* 80204130 00201090 90 61 00 38 */ stw r3, 0x38(r1) +/* 80204134 00201094 90 A1 00 44 */ stw r5, 0x44(r1) +/* 80204138 00201098 90 A1 00 40 */ stw r5, 0x40(r1) +/* 8020413C 0020109C 90 01 00 48 */ stw r0, 0x48(r1) +/* 80204140 002010A0 48 00 00 34 */ b lbl_80204174 +lbl_80204144: +/* 80204144 002010A4 80 AD 93 7C */ lwz r5, lbl_805A7F3C@sda21(r13) +/* 80204148 002010A8 38 60 00 00 */ li r3, 0 +/* 8020414C 002010AC 38 80 00 01 */ li r4, 1 +/* 80204150 002010B0 48 18 5D A5 */ bl __shl2i +/* 80204154 002010B4 38 A0 00 00 */ li r5, 0 +/* 80204158 002010B8 38 00 00 01 */ li r0, 1 +/* 8020415C 002010BC 90 81 00 24 */ stw r4, 0x24(r1) +/* 80204160 002010C0 3A E1 00 20 */ addi r23, r1, 0x20 +/* 80204164 002010C4 90 61 00 20 */ stw r3, 0x20(r1) +/* 80204168 002010C8 90 A1 00 2C */ stw r5, 0x2c(r1) +/* 8020416C 002010CC 90 A1 00 28 */ stw r5, 0x28(r1) +/* 80204170 002010D0 90 01 00 30 */ stw r0, 0x30(r1) +lbl_80204174: +/* 80204174 002010D4 7F A3 EB 78 */ mr r3, r29 +/* 80204178 002010D8 81 9D 00 00 */ lwz r12, 0(r29) +/* 8020417C 002010DC 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 80204180 002010E0 7D 89 03 A6 */ mtctr r12 +/* 80204184 002010E4 4E 80 04 21 */ bctrl +/* 80204188 002010E8 7C 64 1B 78 */ mr r4, r3 +/* 8020418C 002010EC 7F 43 D3 78 */ mr r3, r26 +/* 80204190 002010F0 7E E6 BB 78 */ mr r6, r23 +/* 80204194 002010F4 38 BD 00 34 */ addi r5, r29, 0x34 +/* 80204198 002010F8 4B F7 F2 09 */ bl DetectStaticCollisionBoolean__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter +/* 8020419C 002010FC C0 3F 00 00 */ lfs f1, 0(r31) +/* 802041A0 00201100 C0 02 B0 A0 */ lfs f0, lbl_805ACDC0@sda21(r2) +/* 802041A4 00201104 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802041A8 00201108 4C 40 13 82 */ cror 2, 0, 2 +/* 802041AC 0020110C 41 82 00 18 */ beq lbl_802041C4 +/* 802041B0 00201110 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 802041B4 00201114 41 82 00 68 */ beq lbl_8020421C +/* 802041B8 00201118 88 19 05 A4 */ lbz r0, 0x5a4(r25) +/* 802041BC 0020111C 28 00 00 00 */ cmplwi r0, 0 +/* 802041C0 00201120 41 82 00 5C */ beq lbl_8020421C +lbl_802041C4: +/* 802041C4 00201124 7F 63 DB 78 */ mr r3, r27 +/* 802041C8 00201128 38 80 00 00 */ li r4, 0 +/* 802041CC 0020112C 81 9B 00 00 */ lwz r12, 0(r27) +/* 802041D0 00201130 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 802041D4 00201134 7D 89 03 A6 */ mtctr r12 +/* 802041D8 00201138 4E 80 04 21 */ bctrl +/* 802041DC 0020113C 7F A3 EB 78 */ mr r3, r29 +/* 802041E0 00201140 38 80 00 00 */ li r4, 0 +/* 802041E4 00201144 81 9D 00 00 */ lwz r12, 0(r29) +/* 802041E8 00201148 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 802041EC 0020114C 7D 89 03 A6 */ mtctr r12 +/* 802041F0 00201150 4E 80 04 21 */ bctrl +/* 802041F4 00201154 80 79 05 A0 */ lwz r3, 0x5a0(r25) +/* 802041F8 00201158 C0 02 B0 A0 */ lfs f0, lbl_805ACDC0@sda21(r2) +/* 802041FC 0020115C 38 03 00 01 */ addi r0, r3, 1 +/* 80204200 00201160 90 19 05 A0 */ stw r0, 0x5a0(r25) +/* 80204204 00201164 C0 3F 00 00 */ lfs f1, 0(r31) +/* 80204208 00201168 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8020420C 0020116C 4C 40 13 82 */ cror 2, 0, 2 +/* 80204210 00201170 40 82 00 0C */ bne lbl_8020421C +/* 80204214 00201174 38 00 00 01 */ li r0, 1 +/* 80204218 00201178 98 19 05 DD */ stb r0, 0x5dd(r25) +lbl_8020421C: +/* 8020421C 0020117C 3B 9C 00 01 */ addi r28, r28, 1 +/* 80204220 00201180 3B 18 00 02 */ addi r24, r24, 2 +lbl_80204224: +/* 80204224 00201184 7C 1C F0 40 */ cmplw r28, r30 +/* 80204228 00201188 41 80 FD F4 */ blt lbl_8020401C +/* 8020422C 0020118C BA E1 00 5C */ lmw r23, 0x5c(r1) +/* 80204230 00201190 80 01 00 84 */ lwz r0, 0x84(r1) +/* 80204234 00201194 7C 08 03 A6 */ mtlr r0 +/* 80204238 00201198 38 21 00 80 */ addi r1, r1, 0x80 +/* 8020423C 0020119C 4E 80 00 20 */ blr + +.global UpdateDestroyableRockPositions__22CThardusRockProjectileFR13CStateManager +UpdateDestroyableRockPositions__22CThardusRockProjectileFR13CStateManager: +/* 80204240 002011A0 94 21 FE B0 */ stwu r1, -0x150(r1) +/* 80204244 002011A4 7C 08 02 A6 */ mflr r0 +/* 80204248 002011A8 90 01 01 54 */ stw r0, 0x154(r1) +/* 8020424C 002011AC BE E1 01 2C */ stmw r23, 0x12c(r1) +/* 80204250 002011B0 7C 7B 1B 78 */ mr r27, r3 +/* 80204254 002011B4 7C 9C 23 78 */ mr r28, r4 +/* 80204258 002011B8 3B 01 00 2C */ addi r24, r1, 0x2c +/* 8020425C 002011BC 3B 3B 00 34 */ addi r25, r27, 0x34 +/* 80204260 002011C0 3B A0 00 00 */ li r29, 0 +/* 80204264 002011C4 3B 40 00 00 */ li r26, 0 +/* 80204268 002011C8 3B E2 B0 78 */ addi r31, r2, lbl_805ACD98@sda21 +/* 8020426C 002011CC 80 63 00 64 */ lwz r3, 0x64(r3) +/* 80204270 002011D0 83 DB 05 90 */ lwz r30, 0x590(r27) +/* 80204274 002011D4 C0 03 00 00 */ lfs f0, 0(r3) +/* 80204278 002011D8 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 8020427C 002011DC C0 03 00 04 */ lfs f0, 4(r3) +/* 80204280 002011E0 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 80204284 002011E4 C0 03 00 08 */ lfs f0, 8(r3) +/* 80204288 002011E8 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 8020428C 002011EC 48 00 00 E4 */ b lbl_80204370 +lbl_80204290: +/* 80204290 002011F0 80 9F 00 00 */ lwz r4, 0(r31) +/* 80204294 002011F4 38 61 00 1C */ addi r3, r1, 0x1c +/* 80204298 002011F8 38 C1 00 08 */ addi r6, r1, 8 +/* 8020429C 002011FC 38 A0 FF FF */ li r5, -1 +/* 802042A0 00201200 48 13 9E F5 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator" +/* 802042A4 00201204 80 9B 00 64 */ lwz r4, 0x64(r27) +/* 802042A8 00201208 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 802042AC 0020120C 38 A1 00 1C */ addi r5, r1, 0x1c +/* 802042B0 00201210 38 C0 00 00 */ li r6, 0 +/* 802042B4 00201214 80 84 00 10 */ lwz r4, 0x10(r4) +/* 802042B8 00201218 4B E2 80 C9 */ bl "GetLocatorTransform__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>PC13CCharAnimTime" +/* 802042BC 0020121C 38 61 00 F8 */ addi r3, r1, 0xf8 +/* 802042C0 00201220 38 81 00 C8 */ addi r4, r1, 0xc8 +/* 802042C4 00201224 48 10 E8 B1 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 802042C8 00201228 38 61 00 1C */ addi r3, r1, 0x1c +/* 802042CC 0020122C 48 13 98 15 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 802042D0 00201230 80 BB 05 98 */ lwz r5, 0x598(r27) +/* 802042D4 00201234 7F 83 E3 78 */ mr r3, r28 +/* 802042D8 00201238 38 81 00 0C */ addi r4, r1, 0xc +/* 802042DC 0020123C 7C 05 D2 2E */ lhzx r0, r5, r26 +/* 802042E0 00201240 B0 01 00 10 */ sth r0, 0x10(r1) +/* 802042E4 00201244 B0 01 00 0C */ sth r0, 0xc(r1) +/* 802042E8 00201248 4B E4 82 8D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 802042EC 0020124C 7C 64 1B 78 */ mr r4, r3 +/* 802042F0 00201250 38 61 00 14 */ addi r3, r1, 0x14 +/* 802042F4 00201254 4B EA B9 9D */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 802042F8 00201258 82 E3 00 04 */ lwz r23, 4(r3) +/* 802042FC 0020125C 28 17 00 00 */ cmplwi r23, 0 +/* 80204300 00201260 41 82 00 64 */ beq lbl_80204364 +/* 80204304 00201264 7F 04 C3 78 */ mr r4, r24 +/* 80204308 00201268 38 61 00 38 */ addi r3, r1, 0x38 +/* 8020430C 0020126C 48 10 EE B9 */ bl Scale__12CTransform4fFRC9CVector3f +/* 80204310 00201270 38 61 00 68 */ addi r3, r1, 0x68 +/* 80204314 00201274 38 81 00 38 */ addi r4, r1, 0x38 +/* 80204318 00201278 38 A1 00 F8 */ addi r5, r1, 0xf8 +/* 8020431C 0020127C 48 10 E6 35 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80204320 00201280 7F 24 CB 78 */ mr r4, r25 +/* 80204324 00201284 38 61 00 98 */ addi r3, r1, 0x98 +/* 80204328 00201288 38 A1 00 68 */ addi r5, r1, 0x68 +/* 8020432C 0020128C 48 10 E6 25 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80204330 00201290 38 77 00 34 */ addi r3, r23, 0x34 +/* 80204334 00201294 38 81 00 98 */ addi r4, r1, 0x98 +/* 80204338 00201298 48 10 E8 09 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8020433C 0020129C 88 17 00 E4 */ lbz r0, 0xe4(r23) +/* 80204340 002012A0 38 60 00 01 */ li r3, 1 +/* 80204344 002012A4 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 80204348 002012A8 98 17 00 E4 */ stb r0, 0xe4(r23) +/* 8020434C 002012AC 88 17 00 E4 */ lbz r0, 0xe4(r23) +/* 80204350 002012B0 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 80204354 002012B4 98 17 00 E4 */ stb r0, 0xe4(r23) +/* 80204358 002012B8 88 17 00 E4 */ lbz r0, 0xe4(r23) +/* 8020435C 002012BC 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 80204360 002012C0 98 17 00 E4 */ stb r0, 0xe4(r23) +lbl_80204364: +/* 80204364 002012C4 3B FF 00 08 */ addi r31, r31, 8 +/* 80204368 002012C8 3B BD 00 01 */ addi r29, r29, 1 +/* 8020436C 002012CC 3B 5A 00 02 */ addi r26, r26, 2 +lbl_80204370: +/* 80204370 002012D0 7C 1D F0 40 */ cmplw r29, r30 +/* 80204374 002012D4 41 80 FF 1C */ blt lbl_80204290 +/* 80204378 002012D8 BA E1 01 2C */ lmw r23, 0x12c(r1) +/* 8020437C 002012DC 80 01 01 54 */ lwz r0, 0x154(r1) +/* 80204380 002012E0 7C 08 03 A6 */ mtlr r0 +/* 80204384 002012E4 38 21 01 50 */ addi r1, r1, 0x150 +/* 80204388 002012E8 4E 80 00 20 */ blr + +.global sub_8020438c +sub_8020438c: +/* 8020438C 002012EC 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 80204390 002012F0 7C 08 02 A6 */ mflr r0 +/* 80204394 002012F4 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 80204398 002012F8 BF 21 00 C4 */ stmw r25, 0xc4(r1) +/* 8020439C 002012FC 7C B9 2B 78 */ mr r25, r5 +/* 802043A0 00201300 7C DA 33 78 */ mr r26, r6 +/* 802043A4 00201304 7C 9E 23 78 */ mr r30, r4 +/* 802043A8 00201308 3B A1 00 60 */ addi r29, r1, 0x60 +/* 802043AC 0020130C 3B 81 00 A4 */ addi r28, r1, 0xa4 +/* 802043B0 00201310 3B 60 00 00 */ li r27, 0 +/* 802043B4 00201314 80 63 00 64 */ lwz r3, 0x64(r3) +/* 802043B8 00201318 83 E3 00 10 */ lwz r31, 0x10(r3) +/* 802043BC 0020131C 48 00 01 20 */ b lbl_802044DC +lbl_802043C0: +/* 802043C0 00201320 80 9E 00 00 */ lwz r4, 0(r30) +/* 802043C4 00201324 38 61 00 24 */ addi r3, r1, 0x24 +/* 802043C8 00201328 4B E0 08 F1 */ bl string_l__4rstlFPCc +/* 802043CC 0020132C 7F E4 FB 78 */ mr r4, r31 +/* 802043D0 00201330 38 61 00 0C */ addi r3, r1, 0xc +/* 802043D4 00201334 38 A1 00 24 */ addi r5, r1, 0x24 +/* 802043D8 00201338 4B E2 A4 61 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 802043DC 0020133C 88 01 00 0C */ lbz r0, 0xc(r1) +/* 802043E0 00201340 38 61 00 24 */ addi r3, r1, 0x24 +/* 802043E4 00201344 98 01 00 10 */ stb r0, 0x10(r1) +/* 802043E8 00201348 48 13 96 F9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 802043EC 0020134C 88 01 00 10 */ lbz r0, 0x10(r1) +/* 802043F0 00201350 28 00 00 FF */ cmplwi r0, 0xff +/* 802043F4 00201354 41 82 00 E0 */ beq lbl_802044D4 +/* 802043F8 00201358 80 9E 00 00 */ lwz r4, 0(r30) +/* 802043FC 0020135C 38 61 00 14 */ addi r3, r1, 0x14 +/* 80204400 00201360 4B E0 08 B9 */ bl string_l__4rstlFPCc +/* 80204404 00201364 88 01 00 10 */ lbz r0, 0x10(r1) +/* 80204408 00201368 38 61 00 34 */ addi r3, r1, 0x34 +/* 8020440C 0020136C C0 3E 00 04 */ lfs f1, 4(r30) +/* 80204410 00201370 38 81 00 08 */ addi r4, r1, 8 +/* 80204414 00201374 98 01 00 08 */ stb r0, 8(r1) +/* 80204418 00201378 38 A1 00 14 */ addi r5, r1, 0x14 +/* 8020441C 0020137C C0 42 B0 A4 */ lfs f2, lbl_805ACDC4@sda21(r2) +/* 80204420 00201380 4B FA 43 ED */ bl "SphereCollision__26CJointCollisionDescriptionF6CSegIdfRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" +/* 80204424 00201384 80 E1 00 34 */ lwz r7, 0x34(r1) +/* 80204428 00201388 7F 83 E3 78 */ mr r3, r28 +/* 8020442C 0020138C 80 C1 00 38 */ lwz r6, 0x38(r1) +/* 80204430 00201390 7F A4 EB 78 */ mr r4, r29 +/* 80204434 00201394 88 A1 00 3C */ lbz r5, 0x3c(r1) +/* 80204438 00201398 88 01 00 3D */ lbz r0, 0x3d(r1) +/* 8020443C 0020139C C0 E1 00 40 */ lfs f7, 0x40(r1) +/* 80204440 002013A0 C0 C1 00 44 */ lfs f6, 0x44(r1) +/* 80204444 002013A4 C0 A1 00 48 */ lfs f5, 0x48(r1) +/* 80204448 002013A8 C0 81 00 4C */ lfs f4, 0x4c(r1) +/* 8020444C 002013AC C0 61 00 50 */ lfs f3, 0x50(r1) +/* 80204450 002013B0 C0 41 00 54 */ lfs f2, 0x54(r1) +/* 80204454 002013B4 C0 21 00 58 */ lfs f1, 0x58(r1) +/* 80204458 002013B8 C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 8020445C 002013BC 90 E1 00 78 */ stw r7, 0x78(r1) +/* 80204460 002013C0 90 C1 00 7C */ stw r6, 0x7c(r1) +/* 80204464 002013C4 98 A1 00 80 */ stb r5, 0x80(r1) +/* 80204468 002013C8 98 01 00 81 */ stb r0, 0x81(r1) +/* 8020446C 002013CC D0 E1 00 84 */ stfs f7, 0x84(r1) +/* 80204470 002013D0 D0 C1 00 88 */ stfs f6, 0x88(r1) +/* 80204474 002013D4 D0 A1 00 8C */ stfs f5, 0x8c(r1) +/* 80204478 002013D8 D0 81 00 90 */ stfs f4, 0x90(r1) +/* 8020447C 002013DC D0 61 00 94 */ stfs f3, 0x94(r1) +/* 80204480 002013E0 D0 41 00 98 */ stfs f2, 0x98(r1) +/* 80204484 002013E4 D0 21 00 9C */ stfs f1, 0x9c(r1) +/* 80204488 002013E8 D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 8020448C 002013EC 48 13 9C D5 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80204490 002013F0 A0 01 00 70 */ lhz r0, 0x70(r1) +/* 80204494 002013F4 28 1D 00 00 */ cmplwi r29, 0 +/* 80204498 002013F8 C0 01 00 74 */ lfs f0, 0x74(r1) +/* 8020449C 002013FC B0 01 00 B4 */ sth r0, 0xb4(r1) +/* 802044A0 00201400 D0 01 00 B8 */ stfs f0, 0xb8(r1) +/* 802044A4 00201404 41 82 00 0C */ beq lbl_802044B0 +/* 802044A8 00201408 7F A3 EB 78 */ mr r3, r29 +/* 802044AC 0020140C 48 13 96 35 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_802044B0: +/* 802044B0 00201410 38 61 00 14 */ addi r3, r1, 0x14 +/* 802044B4 00201414 48 13 96 2D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 802044B8 00201418 7F 43 D3 78 */ mr r3, r26 +/* 802044BC 0020141C 38 81 00 78 */ addi r4, r1, 0x78 +/* 802044C0 00201420 4B F5 1D 71 */ bl sub_80156230 +/* 802044C4 00201424 28 1C 00 00 */ cmplwi r28, 0 +/* 802044C8 00201428 41 82 00 0C */ beq lbl_802044D4 +/* 802044CC 0020142C 7F 83 E3 78 */ mr r3, r28 +/* 802044D0 00201430 48 13 96 11 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_802044D4: +/* 802044D4 00201434 3B DE 00 08 */ addi r30, r30, 8 +/* 802044D8 00201438 3B 7B 00 01 */ addi r27, r27, 1 +lbl_802044DC: +/* 802044DC 0020143C 7C 1B C8 00 */ cmpw r27, r25 +/* 802044E0 00201440 41 80 FE E0 */ blt lbl_802043C0 +/* 802044E4 00201444 BB 21 00 C4 */ lmw r25, 0xc4(r1) +/* 802044E8 00201448 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 802044EC 0020144C 7C 08 03 A6 */ mtlr r0 +/* 802044F0 00201450 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 802044F4 00201454 4E 80 00 20 */ blr + +.global "SetMaterialProperties__22CThardusRockProjectileFRQ24rstl36single_ptr<22CCollisionActorManager>R13CStateManager" +"SetMaterialProperties__22CThardusRockProjectileFRQ24rstl36single_ptr<22CCollisionActorManager>R13CStateManager": +/* 802044F8 00201458 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 802044FC 0020145C 7C 08 02 A6 */ mflr r0 +/* 80204500 00201460 90 01 00 64 */ stw r0, 0x64(r1) +/* 80204504 00201464 BE A1 00 34 */ stmw r21, 0x34(r1) +/* 80204508 00201468 7C 7B 1B 78 */ mr r27, r3 +/* 8020450C 0020146C 7C 9C 23 78 */ mr r28, r4 +/* 80204510 00201470 7C BD 2B 78 */ mr r29, r5 +/* 80204514 00201474 3B E0 00 00 */ li r31, 0 +/* 80204518 00201478 48 00 00 B4 */ b lbl_802045CC +lbl_8020451C: +/* 8020451C 0020147C 80 7C 00 00 */ lwz r3, 0(r28) +/* 80204520 00201480 7F E4 FB 78 */ mr r4, r31 +/* 80204524 00201484 4B FA 2D 15 */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 80204528 00201488 A0 03 00 3C */ lhz r0, 0x3c(r3) +/* 8020452C 0020148C 7F A3 EB 78 */ mr r3, r29 +/* 80204530 00201490 38 81 00 08 */ addi r4, r1, 8 +/* 80204534 00201494 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80204538 00201498 B0 01 00 08 */ sth r0, 8(r1) +/* 8020453C 0020149C 4B E4 80 39 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80204540 002014A0 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80204544 002014A4 41 82 00 84 */ beq lbl_802045C8 +/* 80204548 002014A8 7F A5 EB 78 */ mr r5, r29 +/* 8020454C 002014AC 38 80 00 1B */ li r4, 0x1b +/* 80204550 002014B0 4B E4 FE 01 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 80204554 002014B4 7F 63 DB 78 */ mr r3, r27 +/* 80204558 002014B8 4B E4 F3 65 */ bl GetMaterialFilter__6CActorCFv +/* 8020455C 002014BC 83 43 00 00 */ lwz r26, 0(r3) +/* 80204560 002014C0 83 23 00 04 */ lwz r25, 4(r3) +/* 80204564 002014C4 7F 63 DB 78 */ mr r3, r27 +/* 80204568 002014C8 4B E4 F3 55 */ bl GetMaterialFilter__6CActorCFv +/* 8020456C 002014CC 83 03 00 08 */ lwz r24, 8(r3) +/* 80204570 002014D0 82 E3 00 0C */ lwz r23, 0xc(r3) +/* 80204574 002014D4 7F C3 F3 78 */ mr r3, r30 +/* 80204578 002014D8 4B E4 F3 45 */ bl GetMaterialFilter__6CActorCFv +/* 8020457C 002014DC 82 C3 00 00 */ lwz r22, 0(r3) +/* 80204580 002014E0 82 A3 00 04 */ lwz r21, 4(r3) +/* 80204584 002014E4 7F C3 F3 78 */ mr r3, r30 +/* 80204588 002014E8 4B E4 F3 35 */ bl GetMaterialFilter__6CActorCFv +/* 8020458C 002014EC 80 03 00 08 */ lwz r0, 8(r3) +/* 80204590 002014F0 7F 24 AB 78 */ or r4, r25, r21 +/* 80204594 002014F4 80 63 00 0C */ lwz r3, 0xc(r3) +/* 80204598 002014F8 7F 45 B3 78 */ or r5, r26, r22 +/* 8020459C 002014FC 7F 06 03 78 */ or r6, r24, r0 +/* 802045A0 00201500 38 00 00 03 */ li r0, 3 +/* 802045A4 00201504 7E E7 1B 78 */ or r7, r23, r3 +/* 802045A8 00201508 90 81 00 14 */ stw r4, 0x14(r1) +/* 802045AC 0020150C 7F C3 F3 78 */ mr r3, r30 +/* 802045B0 00201510 38 81 00 10 */ addi r4, r1, 0x10 +/* 802045B4 00201514 90 A1 00 10 */ stw r5, 0x10(r1) +/* 802045B8 00201518 90 E1 00 1C */ stw r7, 0x1c(r1) +/* 802045BC 0020151C 90 C1 00 18 */ stw r6, 0x18(r1) +/* 802045C0 00201520 90 01 00 20 */ stw r0, 0x20(r1) +/* 802045C4 00201524 4B E4 F2 DD */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter +lbl_802045C8: +/* 802045C8 00201528 3B FF 00 01 */ addi r31, r31, 1 +lbl_802045CC: +/* 802045CC 0020152C 80 7C 00 00 */ lwz r3, 0(r28) +/* 802045D0 00201530 4B FA 2C 79 */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 802045D4 00201534 7C 1F 18 40 */ cmplw r31, r3 +/* 802045D8 00201538 41 80 FF 44 */ blt lbl_8020451C +/* 802045DC 0020153C BA A1 00 34 */ lmw r21, 0x34(r1) +/* 802045E0 00201540 80 01 00 64 */ lwz r0, 0x64(r1) +/* 802045E4 00201544 7C 08 03 A6 */ mtlr r0 +/* 802045E8 00201548 38 21 00 60 */ addi r1, r1, 0x60 +/* 802045EC 0020154C 4E 80 00 20 */ blr + +.global InitializeCollisionManager__22CThardusRockProjectileFR13CStateManager +InitializeCollisionManager__22CThardusRockProjectileFR13CStateManager: +/* 802045F0 00201550 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 802045F4 00201554 7C 08 02 A6 */ mflr r0 +/* 802045F8 00201558 90 01 00 64 */ stw r0, 0x64(r1) +/* 802045FC 0020155C 38 00 00 00 */ li r0, 0 +/* 80204600 00201560 BF 21 00 44 */ stmw r25, 0x44(r1) +/* 80204604 00201564 7C 7E 1B 78 */ mr r30, r3 +/* 80204608 00201568 7C 9F 23 78 */ mr r31, r4 +/* 8020460C 0020156C 38 61 00 30 */ addi r3, r1, 0x30 +/* 80204610 00201570 38 80 00 01 */ li r4, 1 +/* 80204614 00201574 90 01 00 34 */ stw r0, 0x34(r1) +/* 80204618 00201578 90 01 00 38 */ stw r0, 0x38(r1) +/* 8020461C 0020157C 90 01 00 3C */ stw r0, 0x3c(r1) +/* 80204620 00201580 4B F5 21 99 */ bl "reserve__Q24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>Fi" +/* 80204624 00201584 7F C3 F3 78 */ mr r3, r30 +/* 80204628 00201588 38 C1 00 30 */ addi r6, r1, 0x30 +/* 8020462C 0020158C 38 82 B0 78 */ addi r4, r2, lbl_805ACD98@sda21 +/* 80204630 00201590 38 A0 00 01 */ li r5, 1 +/* 80204634 00201594 4B FF FD 59 */ bl sub_8020438c +/* 80204638 00201598 3C 80 80 3D */ lis r4, lbl_803D2590@ha +/* 8020463C 0020159C 38 60 00 18 */ li r3, 0x18 +/* 80204640 002015A0 38 84 25 90 */ addi r4, r4, lbl_803D2590@l +/* 80204644 002015A4 38 A0 00 00 */ li r5, 0 +/* 80204648 002015A8 38 84 00 34 */ addi r4, r4, 0x34 +/* 8020464C 002015AC 48 11 12 21 */ bl __nw__FUlPCcPCc +/* 80204650 002015B0 7C 7B 1B 79 */ or. r27, r3, r3 +/* 80204654 002015B4 41 82 00 38 */ beq lbl_8020468C +/* 80204658 002015B8 81 3E 00 04 */ lwz r9, 4(r30) +/* 8020465C 002015BC 7F E4 FB 78 */ mr r4, r31 +/* 80204660 002015C0 38 A1 00 14 */ addi r5, r1, 0x14 +/* 80204664 002015C4 38 C1 00 24 */ addi r6, r1, 0x24 +/* 80204668 002015C8 91 21 00 24 */ stw r9, 0x24(r1) +/* 8020466C 002015CC 38 E1 00 30 */ addi r7, r1, 0x30 +/* 80204670 002015D0 39 00 00 01 */ li r8, 1 +/* 80204674 002015D4 A0 1E 00 08 */ lhz r0, 8(r30) +/* 80204678 002015D8 91 21 00 20 */ stw r9, 0x20(r1) +/* 8020467C 002015DC B0 01 00 10 */ sth r0, 0x10(r1) +/* 80204680 002015E0 B0 01 00 14 */ sth r0, 0x14(r1) +/* 80204684 002015E4 4B FA 32 AD */ bl "__ct__22CCollisionActorManagerFR13CStateManager9TUniqueId7TAreaIdRCQ24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>b" +/* 80204688 002015E8 7C 7B 1B 78 */ mr r27, r3 +lbl_8020468C: +/* 8020468C 002015EC 80 7E 05 78 */ lwz r3, 0x578(r30) +/* 80204690 002015F0 38 80 00 01 */ li r4, 1 +/* 80204694 002015F4 4B FA 32 49 */ bl sub_801a78dc +/* 80204698 002015F8 93 7E 05 78 */ stw r27, 0x578(r30) +/* 8020469C 002015FC 7F C3 F3 78 */ mr r3, r30 +/* 802046A0 00201600 7F E5 FB 78 */ mr r5, r31 +/* 802046A4 00201604 38 9E 05 78 */ addi r4, r30, 0x578 +/* 802046A8 00201608 4B FF FE 51 */ bl "SetMaterialProperties__22CThardusRockProjectileFRQ24rstl36single_ptr<22CCollisionActorManager>R13CStateManager" +/* 802046AC 0020160C 80 7E 05 78 */ lwz r3, 0x578(r30) +/* 802046B0 00201610 4B FA 2B 99 */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 802046B4 00201614 7C 7B 1B 78 */ mr r27, r3 +/* 802046B8 00201618 3B 20 00 00 */ li r25, 0 +/* 802046BC 0020161C 3B A0 00 00 */ li r29, 0 +/* 802046C0 00201620 48 00 00 D4 */ b lbl_80204794 +lbl_802046C4: +/* 802046C4 00201624 80 7E 05 78 */ lwz r3, 0x578(r30) +/* 802046C8 00201628 7F 24 CB 78 */ mr r4, r25 +/* 802046CC 0020162C 4B FA 2B 6D */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 802046D0 00201630 80 BE 05 98 */ lwz r5, 0x598(r30) +/* 802046D4 00201634 38 81 00 0C */ addi r4, r1, 0xc +/* 802046D8 00201638 A0 C3 00 3C */ lhz r6, 0x3c(r3) +/* 802046DC 0020163C 7F E3 FB 78 */ mr r3, r31 +/* 802046E0 00201640 7C 05 EA 2E */ lhzx r0, r5, r29 +/* 802046E4 00201644 B0 C1 00 1C */ sth r6, 0x1c(r1) +/* 802046E8 00201648 B0 01 00 18 */ sth r0, 0x18(r1) +/* 802046EC 0020164C B0 01 00 0C */ sth r0, 0xc(r1) +/* 802046F0 00201650 4B E4 7E B5 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 802046F4 00201654 7C 7C 1B 79 */ or. r28, r3, r3 +/* 802046F8 00201658 41 82 00 94 */ beq lbl_8020478C +/* 802046FC 0020165C A0 01 00 1C */ lhz r0, 0x1c(r1) +/* 80204700 00201660 7F E3 FB 78 */ mr r3, r31 +/* 80204704 00201664 38 81 00 08 */ addi r4, r1, 8 +/* 80204708 00201668 B0 01 00 08 */ sth r0, 8(r1) +/* 8020470C 0020166C 4B E4 7E 69 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80204710 00201670 7C 64 1B 78 */ mr r4, r3 +/* 80204714 00201674 38 61 00 28 */ addi r3, r1, 0x28 +/* 80204718 00201678 4B EA AC 35 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8020471C 0020167C 83 43 00 04 */ lwz r26, 4(r3) +/* 80204720 00201680 28 1A 00 00 */ cmplwi r26, 0 +/* 80204724 00201684 41 82 00 68 */ beq lbl_8020478C +/* 80204728 00201688 7F 83 E3 78 */ mr r3, r28 +/* 8020472C 0020168C 81 9C 00 00 */ lwz r12, 0(r28) +/* 80204730 00201690 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 80204734 00201694 7D 89 03 A6 */ mtctr r12 +/* 80204738 00201698 4E 80 04 21 */ bctrl +/* 8020473C 0020169C 7C 64 1B 78 */ mr r4, r3 +/* 80204740 002016A0 7F 43 D3 78 */ mr r3, r26 +/* 80204744 002016A4 4B FA 44 55 */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability +/* 80204748 002016A8 7F 83 E3 78 */ mr r3, r28 +/* 8020474C 002016AC 7F E4 FB 78 */ mr r4, r31 +/* 80204750 002016B0 81 9C 00 00 */ lwz r12, 0(r28) +/* 80204754 002016B4 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80204758 002016B8 7D 89 03 A6 */ mtctr r12 +/* 8020475C 002016BC 4E 80 04 21 */ bctrl +/* 80204760 002016C0 7C 7C 1B 78 */ mr r28, r3 +/* 80204764 002016C4 7F 43 D3 78 */ mr r3, r26 +/* 80204768 002016C8 81 9A 00 00 */ lwz r12, 0(r26) +/* 8020476C 002016CC 7F E4 FB 78 */ mr r4, r31 +/* 80204770 002016D0 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80204774 002016D4 7D 89 03 A6 */ mtctr r12 +/* 80204778 002016D8 4E 80 04 21 */ bctrl +/* 8020477C 002016DC C0 1C 00 00 */ lfs f0, 0(r28) +/* 80204780 002016E0 D0 03 00 00 */ stfs f0, 0(r3) +/* 80204784 002016E4 C0 1C 00 04 */ lfs f0, 4(r28) +/* 80204788 002016E8 D0 03 00 04 */ stfs f0, 4(r3) +lbl_8020478C: +/* 8020478C 002016EC 3B 39 00 01 */ addi r25, r25, 1 +/* 80204790 002016F0 3B BD 00 02 */ addi r29, r29, 2 +lbl_80204794: +/* 80204794 002016F4 7C 19 D8 40 */ cmplw r25, r27 +/* 80204798 002016F8 41 80 FF 2C */ blt lbl_802046C4 +/* 8020479C 002016FC 38 61 00 30 */ addi r3, r1, 0x30 +/* 802047A0 00201700 38 80 FF FF */ li r4, -1 +/* 802047A4 00201704 4B F5 1B 89 */ bl sub_8015632c +/* 802047A8 00201708 BB 21 00 44 */ lmw r25, 0x44(r1) +/* 802047AC 0020170C 80 01 00 64 */ lwz r0, 0x64(r1) +/* 802047B0 00201710 7C 08 03 A6 */ mtlr r0 +/* 802047B4 00201714 38 21 00 60 */ addi r1, r1, 0x60 +/* 802047B8 00201718 4E 80 00 20 */ blr + +.global Delay__22CThardusRockProjectileFR13CStateManagerf +Delay__22CThardusRockProjectileFR13CStateManagerf: +/* 802047BC 0020171C C0 23 03 38 */ lfs f1, 0x338(r3) +/* 802047C0 00201720 C0 03 05 A8 */ lfs f0, 0x5a8(r3) +/* 802047C4 00201724 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802047C8 00201728 7C 00 00 26 */ mfcr r0 +/* 802047CC 0020172C 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f +/* 802047D0 00201730 4E 80 00 20 */ blr + +.global sub_802047d4 +sub_802047d4: +/* 802047D4 00201734 80 03 05 74 */ lwz r0, 0x574(r3) +/* 802047D8 00201738 20 00 00 03 */ subfic r0, r0, 3 +/* 802047DC 0020173C 7C 00 00 34 */ cntlzw r0, r0 +/* 802047E0 00201740 54 03 D9 7E */ srwi r3, r0, 5 +/* 802047E4 00201744 4E 80 00 20 */ blr + +.global HitSomething__22CThardusRockProjectileFR13CStateManagerf +HitSomething__22CThardusRockProjectileFR13CStateManagerf: +/* 802047E8 00201748 88 63 05 72 */ lbz r3, 0x572(r3) +/* 802047EC 0020174C 4E 80 00 20 */ blr + +.global ShouldAttack__22CThardusRockProjectileFR13CStateManagerf +ShouldAttack__22CThardusRockProjectileFR13CStateManagerf: +/* 802047F0 00201750 C0 23 03 38 */ lfs f1, 0x338(r3) +/* 802047F4 00201754 C0 03 05 AC */ lfs f0, 0x5ac(r3) +/* 802047F8 00201758 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802047FC 0020175C 40 81 00 20 */ ble lbl_8020481C +/* 80204800 00201760 80 03 05 6C */ lwz r0, 0x56c(r3) +/* 80204804 00201764 2C 00 00 03 */ cmpwi r0, 3 +/* 80204808 00201768 41 82 00 14 */ beq lbl_8020481C +/* 8020480C 0020176C 38 00 00 02 */ li r0, 2 +/* 80204810 00201770 90 03 05 6C */ stw r0, 0x56c(r3) +/* 80204814 00201774 38 60 00 01 */ li r3, 1 +/* 80204818 00201778 4E 80 00 20 */ blr +lbl_8020481C: +/* 8020481C 0020177C 38 60 00 00 */ li r3, 0 +/* 80204820 00201780 4E 80 00 20 */ blr + +.global ShouldMove__22CThardusRockProjectileFR13CStateManagerf +ShouldMove__22CThardusRockProjectileFR13CStateManagerf: +/* 80204824 00201784 80 A3 05 6C */ lwz r5, 0x56c(r3) +/* 80204828 00201788 38 00 00 01 */ li r0, 1 +/* 8020482C 0020178C 54 03 0F FE */ srwi r3, r0, 0x1f +/* 80204830 00201790 7C A4 FE 70 */ srawi r4, r5, 0x1f +/* 80204834 00201794 7C 00 28 10 */ subfc r0, r0, r5 +/* 80204838 00201798 7C 64 19 14 */ adde r3, r4, r3 +/* 8020483C 0020179C 4E 80 00 20 */ blr + +.global Lurk__22CThardusRockProjectileFR13CStateManager9EStateMsgf +Lurk__22CThardusRockProjectileFR13CStateManager9EStateMsgf: +/* 80204840 002017A0 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80204844 002017A4 7C 08 02 A6 */ mflr r0 +/* 80204848 002017A8 2C 05 00 01 */ cmpwi r5, 1 +/* 8020484C 002017AC 90 01 00 54 */ stw r0, 0x54(r1) +/* 80204850 002017B0 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 80204854 002017B4 7C 7F 1B 78 */ mr r31, r3 +/* 80204858 002017B8 41 82 00 10 */ beq lbl_80204868 +/* 8020485C 002017BC 40 80 00 98 */ bge lbl_802048F4 +/* 80204860 002017C0 48 00 00 94 */ b lbl_802048F4 +/* 80204864 002017C4 48 00 00 90 */ b lbl_802048F4 +lbl_80204868: +/* 80204868 002017C8 80 A4 08 4C */ lwz r5, 0x84c(r4) +/* 8020486C 002017CC 38 61 00 08 */ addi r3, r1, 8 +/* 80204870 002017D0 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 80204874 002017D4 38 81 00 14 */ addi r4, r1, 0x14 +/* 80204878 002017D8 C0 25 00 50 */ lfs f1, 0x50(r5) +/* 8020487C 002017DC C0 65 00 60 */ lfs f3, 0x60(r5) +/* 80204880 002017E0 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 80204884 002017E4 EC 81 00 28 */ fsubs f4, f1, f0 +/* 80204888 002017E8 C0 25 00 40 */ lfs f1, 0x40(r5) +/* 8020488C 002017EC C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 80204890 002017F0 EC 43 10 28 */ fsubs f2, f3, f2 +/* 80204894 002017F4 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80204898 002017F8 D0 81 00 18 */ stfs f4, 0x18(r1) +/* 8020489C 002017FC D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 802048A0 00201800 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 802048A4 00201804 48 10 FF AD */ bl AsNormalized__9CVector3fCFv +/* 802048A8 00201808 3C 60 80 5A */ lis r3, skZero3f@ha +/* 802048AC 0020180C C4 C3 66 A0 */ lfsu f6, skZero3f@l(r3) +/* 802048B0 00201810 C0 61 00 08 */ lfs f3, 8(r1) +/* 802048B4 00201814 38 81 00 20 */ addi r4, r1, 0x20 +/* 802048B8 00201818 C0 41 00 0C */ lfs f2, 0xc(r1) +/* 802048BC 0020181C C0 A3 00 04 */ lfs f5, 4(r3) +/* 802048C0 00201820 C0 83 00 08 */ lfs f4, 8(r3) +/* 802048C4 00201824 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 802048C8 00201828 C0 02 B0 88 */ lfs f0, lbl_805ACDA8@sda21(r2) +/* 802048CC 0020182C D0 C1 00 20 */ stfs f6, 0x20(r1) +/* 802048D0 00201830 D0 A1 00 24 */ stfs f5, 0x24(r1) +/* 802048D4 00201834 D0 81 00 28 */ stfs f4, 0x28(r1) +/* 802048D8 00201838 D0 61 00 2C */ stfs f3, 0x2c(r1) +/* 802048DC 0020183C D0 41 00 30 */ stfs f2, 0x30(r1) +/* 802048E0 00201840 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 802048E4 00201844 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 802048E8 00201848 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 802048EC 0020184C 38 63 00 04 */ addi r3, r3, 4 +/* 802048F0 00201850 4B F2 CE 29 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +lbl_802048F4: +/* 802048F4 00201854 80 01 00 54 */ lwz r0, 0x54(r1) +/* 802048F8 00201858 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 802048FC 0020185C 7C 08 03 A6 */ mtlr r0 +/* 80204900 00201860 38 21 00 50 */ addi r1, r1, 0x50 +/* 80204904 00201864 4E 80 00 20 */ blr + +.global Dead__22CThardusRockProjectileFR13CStateManager9EStateMsgf +Dead__22CThardusRockProjectileFR13CStateManager9EStateMsgf: +/* 80204908 00201868 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8020490C 0020186C 7C 08 02 A6 */ mflr r0 +/* 80204910 00201870 2C 05 00 00 */ cmpwi r5, 0 +/* 80204914 00201874 90 01 00 24 */ stw r0, 0x24(r1) +/* 80204918 00201878 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8020491C 0020187C 7C 9F 23 78 */ mr r31, r4 +/* 80204920 00201880 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80204924 00201884 7C 7E 1B 78 */ mr r30, r3 +/* 80204928 00201888 41 82 00 0C */ beq lbl_80204934 +/* 8020492C 0020188C 41 80 00 40 */ blt lbl_8020496C +/* 80204930 00201890 48 00 00 3C */ b lbl_8020496C +lbl_80204934: +/* 80204934 00201894 A0 1E 00 08 */ lhz r0, 8(r30) +/* 80204938 00201898 7F E3 FB 78 */ mr r3, r31 +/* 8020493C 0020189C 38 81 00 0C */ addi r4, r1, 0xc +/* 80204940 002018A0 B0 01 00 08 */ sth r0, 8(r1) +/* 80204944 002018A4 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80204948 002018A8 4B E4 79 25 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +/* 8020494C 002018AC 7F C3 F3 78 */ mr r3, r30 +/* 80204950 002018B0 7F E5 FB 78 */ mr r5, r31 +/* 80204954 002018B4 38 80 00 13 */ li r4, 0x13 +/* 80204958 002018B8 38 C0 FF FF */ li r6, -1 +/* 8020495C 002018BC 4B E4 C7 65 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 80204960 002018C0 7F C3 F3 78 */ mr r3, r30 +/* 80204964 002018C4 7F E4 FB 78 */ mr r4, r31 +/* 80204968 002018C8 4B E7 66 71 */ bl GenerateDeathExplosion__10CPatternedFR13CStateManager +lbl_8020496C: +/* 8020496C 002018CC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80204970 002018D0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80204974 002018D4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80204978 002018D8 7C 08 03 A6 */ mtlr r0 +/* 8020497C 002018DC 38 21 00 20 */ addi r1, r1, 0x20 +/* 80204980 002018E0 4E 80 00 20 */ blr + +.global LoopedAttack__22CThardusRockProjectileFR13CStateManager9EStateMsgf +LoopedAttack__22CThardusRockProjectileFR13CStateManager9EStateMsgf: +/* 80204984 002018E4 94 21 FE B0 */ stwu r1, -0x150(r1) +/* 80204988 002018E8 7C 08 02 A6 */ mflr r0 +/* 8020498C 002018EC 90 01 01 54 */ stw r0, 0x154(r1) +/* 80204990 002018F0 DB E1 01 40 */ stfd f31, 0x140(r1) +/* 80204994 002018F4 F3 E1 01 48 */ psq_st f31, 328(r1), 0, qr0 +/* 80204998 002018F8 DB C1 01 30 */ stfd f30, 0x130(r1) +/* 8020499C 002018FC F3 C1 01 38 */ psq_st f30, 312(r1), 0, qr0 +/* 802049A0 00201900 DB A1 01 20 */ stfd f29, 0x120(r1) +/* 802049A4 00201904 F3 A1 01 28 */ psq_st f29, 296(r1), 0, qr0 +/* 802049A8 00201908 DB 81 01 10 */ stfd f28, 0x110(r1) +/* 802049AC 0020190C F3 81 01 18 */ psq_st f28, 280(r1), 0, qr0 +/* 802049B0 00201910 93 E1 01 0C */ stw r31, 0x10c(r1) +/* 802049B4 00201914 93 C1 01 08 */ stw r30, 0x108(r1) +/* 802049B8 00201918 2C 05 00 01 */ cmpwi r5, 1 +/* 802049BC 0020191C 7C 7F 1B 78 */ mr r31, r3 +/* 802049C0 00201920 7C 9E 23 78 */ mr r30, r4 +/* 802049C4 00201924 41 82 00 24 */ beq lbl_802049E8 +/* 802049C8 00201928 40 80 02 64 */ bge lbl_80204C2C +/* 802049CC 0020192C 2C 05 00 00 */ cmpwi r5, 0 +/* 802049D0 00201930 40 80 00 0C */ bge lbl_802049DC +/* 802049D4 00201934 48 00 02 58 */ b lbl_80204C2C +/* 802049D8 00201938 48 00 02 54 */ b lbl_80204C2C +lbl_802049DC: +/* 802049DC 0020193C 38 00 00 01 */ li r0, 1 +/* 802049E0 00201940 98 1F 05 A4 */ stb r0, 0x5a4(r31) +/* 802049E4 00201944 48 00 02 48 */ b lbl_80204C2C +lbl_802049E8: +/* 802049E8 00201948 80 9E 08 4C */ lwz r4, 0x84c(r30) +/* 802049EC 0020194C 7F C5 F3 78 */ mr r5, r30 +/* 802049F0 00201950 38 61 00 50 */ addi r3, r1, 0x50 +/* 802049F4 00201954 C0 22 B0 A0 */ lfs f1, lbl_805ACDC0@sda21(r2) +/* 802049F8 00201958 81 84 00 00 */ lwz r12, 0(r4) +/* 802049FC 0020195C 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 80204A00 00201960 7D 89 03 A6 */ mtctr r12 +/* 80204A04 00201964 4E 80 04 21 */ bctrl +/* 80204A08 00201968 C0 A1 00 50 */ lfs f5, 0x50(r1) +/* 80204A0C 0020196C C0 81 00 54 */ lfs f4, 0x54(r1) +/* 80204A10 00201970 C0 61 00 58 */ lfs f3, 0x58(r1) +/* 80204A14 00201974 D0 A1 00 5C */ stfs f5, 0x5c(r1) +/* 80204A18 00201978 D0 81 00 60 */ stfs f4, 0x60(r1) +/* 80204A1C 0020197C D0 61 00 64 */ stfs f3, 0x64(r1) +/* 80204A20 00201980 C0 5F 00 40 */ lfs f2, 0x40(r31) +/* 80204A24 00201984 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 80204A28 00201988 C0 1F 00 60 */ lfs f0, 0x60(r31) +/* 80204A2C 0020198C EC A5 10 28 */ fsubs f5, f5, f2 +/* 80204A30 00201990 88 1F 05 BC */ lbz r0, 0x5bc(r31) +/* 80204A34 00201994 EC 24 08 28 */ fsubs f1, f4, f1 +/* 80204A38 00201998 EC 43 00 28 */ fsubs f2, f3, f0 +/* 80204A3C 0020199C 28 00 00 00 */ cmplwi r0, 0 +/* 80204A40 002019A0 41 82 00 5C */ beq lbl_80204A9C +/* 80204A44 002019A4 EC 21 00 72 */ fmuls f1, f1, f1 +/* 80204A48 002019A8 C0 1F 05 C0 */ lfs f0, 0x5c0(r31) +/* 80204A4C 002019AC EC 00 00 32 */ fmuls f0, f0, f0 +/* 80204A50 002019B0 EC 25 09 7A */ fmadds f1, f5, f5, f1 +/* 80204A54 002019B4 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 80204A58 002019B8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80204A5C 002019BC 40 81 00 40 */ ble lbl_80204A9C +/* 80204A60 002019C0 C0 22 B0 A0 */ lfs f1, lbl_805ACDC0@sda21(r2) +/* 80204A64 002019C4 7F E5 FB 78 */ mr r5, r31 +/* 80204A68 002019C8 38 61 00 44 */ addi r3, r1, 0x44 +/* 80204A6C 002019CC 38 9F 04 5C */ addi r4, r31, 0x45c +/* 80204A70 002019D0 38 C1 00 5C */ addi r6, r1, 0x5c +/* 80204A74 002019D4 4B F3 A0 A9 */ bl Arrival__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3ff +/* 80204A78 002019D8 C0 01 00 44 */ lfs f0, 0x44(r1) +/* 80204A7C 002019DC 38 00 00 01 */ li r0, 1 +/* 80204A80 002019E0 D0 1F 05 B0 */ stfs f0, 0x5b0(r31) +/* 80204A84 002019E4 C0 01 00 48 */ lfs f0, 0x48(r1) +/* 80204A88 002019E8 D0 1F 05 B4 */ stfs f0, 0x5b4(r31) +/* 80204A8C 002019EC C0 01 00 4C */ lfs f0, 0x4c(r1) +/* 80204A90 002019F0 D0 1F 05 B8 */ stfs f0, 0x5b8(r31) +/* 80204A94 002019F4 98 1F 05 BC */ stb r0, 0x5bc(r31) +/* 80204A98 002019F8 48 00 00 0C */ b lbl_80204AA4 +lbl_80204A9C: +/* 80204A9C 002019FC 38 00 00 00 */ li r0, 0 +/* 80204AA0 00201A00 98 1F 05 BC */ stb r0, 0x5bc(r31) +lbl_80204AA4: +/* 80204AA4 00201A04 38 C2 B0 78 */ addi r6, r2, lbl_805ACD98@sda21 +/* 80204AA8 00201A08 80 AD 93 74 */ lwz r5, lbl_805A7F34@sda21(r13) +/* 80204AAC 00201A0C C3 FF 05 B0 */ lfs f31, 0x5b0(r31) +/* 80204AB0 00201A10 38 60 00 00 */ li r3, 0 +/* 80204AB4 00201A14 C3 DF 05 B4 */ lfs f30, 0x5b4(r31) +/* 80204AB8 00201A18 38 80 00 01 */ li r4, 1 +/* 80204ABC 00201A1C C3 BF 05 B8 */ lfs f29, 0x5b8(r31) +/* 80204AC0 00201A20 C3 86 00 04 */ lfs f28, 4(r6) +/* 80204AC4 00201A24 48 18 54 31 */ bl __shl2i +/* 80204AC8 00201A28 39 00 00 00 */ li r8, 0 +/* 80204ACC 00201A2C 38 00 00 01 */ li r0, 1 +/* 80204AD0 00201A30 90 81 00 8C */ stw r4, 0x8c(r1) +/* 80204AD4 00201A34 3C 80 80 5A */ lis r4, lbl_805A6700@ha +/* 80204AD8 00201A38 38 C4 67 00 */ addi r6, r4, lbl_805A6700@l +/* 80204ADC 00201A3C C0 22 B0 A8 */ lfs f1, lbl_805ACDC8@sda21(r2) +/* 80204AE0 00201A40 90 61 00 88 */ stw r3, 0x88(r1) +/* 80204AE4 00201A44 7F C4 F3 78 */ mr r4, r30 +/* 80204AE8 00201A48 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 80204AEC 00201A4C 38 A1 00 38 */ addi r5, r1, 0x38 +/* 80204AF0 00201A50 91 01 00 94 */ stw r8, 0x94(r1) +/* 80204AF4 00201A54 38 E1 00 88 */ addi r7, r1, 0x88 +/* 80204AF8 00201A58 91 01 00 90 */ stw r8, 0x90(r1) +/* 80204AFC 00201A5C 90 01 00 98 */ stw r0, 0x98(r1) +/* 80204B00 00201A60 C0 7F 00 60 */ lfs f3, 0x60(r31) +/* 80204B04 00201A64 C0 5F 00 50 */ lfs f2, 0x50(r31) +/* 80204B08 00201A68 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 80204B0C 00201A6C D0 01 00 38 */ stfs f0, 0x38(r1) +/* 80204B10 00201A70 D0 41 00 3C */ stfs f2, 0x3c(r1) +/* 80204B14 00201A74 D0 61 00 40 */ stfs f3, 0x40(r1) +/* 80204B18 00201A78 4B E4 84 81 */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter +/* 80204B1C 00201A7C 88 81 00 C0 */ lbz r4, 0xc0(r1) +/* 80204B20 00201A80 38 C1 00 D4 */ addi r6, r1, 0xd4 +/* 80204B24 00201A84 C0 E1 00 A0 */ lfs f7, 0xa0(r1) +/* 80204B28 00201A88 C0 C1 00 A4 */ lfs f6, 0xa4(r1) +/* 80204B2C 00201A8C 28 04 00 00 */ cmplwi r4, 0 +/* 80204B30 00201A90 C0 A1 00 A8 */ lfs f5, 0xa8(r1) +/* 80204B34 00201A94 C0 81 00 AC */ lfs f4, 0xac(r1) +/* 80204B38 00201A98 C0 61 00 B0 */ lfs f3, 0xb0(r1) +/* 80204B3C 00201A9C C0 41 00 B4 */ lfs f2, 0xb4(r1) +/* 80204B40 00201AA0 C0 21 00 B8 */ lfs f1, 0xb8(r1) +/* 80204B44 00201AA4 C0 01 00 BC */ lfs f0, 0xbc(r1) +/* 80204B48 00201AA8 80 01 00 C8 */ lwz r0, 0xc8(r1) +/* 80204B4C 00201AAC 80 61 00 CC */ lwz r3, 0xcc(r1) +/* 80204B50 00201AB0 D0 E1 00 D0 */ stfs f7, 0xd0(r1) +/* 80204B54 00201AB4 D0 C1 00 D4 */ stfs f6, 0xd4(r1) +/* 80204B58 00201AB8 D0 A1 00 D8 */ stfs f5, 0xd8(r1) +/* 80204B5C 00201ABC D0 81 00 DC */ stfs f4, 0xdc(r1) +/* 80204B60 00201AC0 D0 61 00 E0 */ stfs f3, 0xe0(r1) +/* 80204B64 00201AC4 D0 41 00 E4 */ stfs f2, 0xe4(r1) +/* 80204B68 00201AC8 D0 21 00 E8 */ stfs f1, 0xe8(r1) +/* 80204B6C 00201ACC D0 01 00 EC */ stfs f0, 0xec(r1) +/* 80204B70 00201AD0 98 81 00 F0 */ stb r4, 0xf0(r1) +/* 80204B74 00201AD4 90 61 00 FC */ stw r3, 0xfc(r1) +/* 80204B78 00201AD8 90 01 00 F8 */ stw r0, 0xf8(r1) +/* 80204B7C 00201ADC 41 82 00 70 */ beq lbl_80204BEC +/* 80204B80 00201AE0 C0 02 B0 9C */ lfs f0, lbl_805ACDBC@sda21(r2) +/* 80204B84 00201AE4 7F E5 FB 78 */ mr r5, r31 +/* 80204B88 00201AE8 38 61 00 2C */ addi r3, r1, 0x2c +/* 80204B8C 00201AEC 38 9F 04 5C */ addi r4, r31, 0x45c +/* 80204B90 00201AF0 EC 20 07 32 */ fmuls f1, f0, f28 +/* 80204B94 00201AF4 4B F3 9D 5D */ bl Separation__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3ff +/* 80204B98 00201AF8 C0 61 00 30 */ lfs f3, 0x30(r1) +/* 80204B9C 00201AFC 38 61 00 20 */ addi r3, r1, 0x20 +/* 80204BA0 00201B00 C0 1F 05 B4 */ lfs f0, 0x5b4(r31) +/* 80204BA4 00201B04 38 81 00 14 */ addi r4, r1, 0x14 +/* 80204BA8 00201B08 C0 41 00 34 */ lfs f2, 0x34(r1) +/* 80204BAC 00201B0C C0 3F 05 B8 */ lfs f1, 0x5b8(r31) +/* 80204BB0 00201B10 EC 63 00 2A */ fadds f3, f3, f0 +/* 80204BB4 00201B14 C0 1F 05 B0 */ lfs f0, 0x5b0(r31) +/* 80204BB8 00201B18 EC 42 08 2A */ fadds f2, f2, f1 +/* 80204BBC 00201B1C C0 21 00 2C */ lfs f1, 0x2c(r1) +/* 80204BC0 00201B20 D0 61 00 0C */ stfs f3, 0xc(r1) +/* 80204BC4 00201B24 EC 01 00 2A */ fadds f0, f1, f0 +/* 80204BC8 00201B28 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 80204BCC 00201B2C D0 01 00 08 */ stfs f0, 8(r1) +/* 80204BD0 00201B30 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 80204BD4 00201B34 D0 61 00 18 */ stfs f3, 0x18(r1) +/* 80204BD8 00201B38 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 80204BDC 00201B3C 48 10 FC 75 */ bl AsNormalized__9CVector3fCFv +/* 80204BE0 00201B40 C3 E1 00 20 */ lfs f31, 0x20(r1) +/* 80204BE4 00201B44 C3 C1 00 24 */ lfs f30, 0x24(r1) +/* 80204BE8 00201B48 C3 A1 00 28 */ lfs f29, 0x28(r1) +lbl_80204BEC: +/* 80204BEC 00201B4C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80204BF0 00201B50 C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) +/* 80204BF4 00201B54 C0 02 B0 88 */ lfs f0, lbl_805ACDA8@sda21(r2) +/* 80204BF8 00201B58 38 81 00 68 */ addi r4, r1, 0x68 +/* 80204BFC 00201B5C C0 43 00 04 */ lfs f2, 4(r3) +/* 80204C00 00201B60 C0 23 00 08 */ lfs f1, 8(r3) +/* 80204C04 00201B64 D3 E1 00 68 */ stfs f31, 0x68(r1) +/* 80204C08 00201B68 D3 C1 00 6C */ stfs f30, 0x6c(r1) +/* 80204C0C 00201B6C D3 A1 00 70 */ stfs f29, 0x70(r1) +/* 80204C10 00201B70 D0 61 00 74 */ stfs f3, 0x74(r1) +/* 80204C14 00201B74 D0 41 00 78 */ stfs f2, 0x78(r1) +/* 80204C18 00201B78 D0 21 00 7C */ stfs f1, 0x7c(r1) +/* 80204C1C 00201B7C D0 01 00 80 */ stfs f0, 0x80(r1) +/* 80204C20 00201B80 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 80204C24 00201B84 38 63 00 04 */ addi r3, r3, 4 +/* 80204C28 00201B88 4B F2 CA F1 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +lbl_80204C2C: +/* 80204C2C 00201B8C E3 E1 01 48 */ psq_l f31, 328(r1), 0, qr0 +/* 80204C30 00201B90 CB E1 01 40 */ lfd f31, 0x140(r1) +/* 80204C34 00201B94 E3 C1 01 38 */ psq_l f30, 312(r1), 0, qr0 +/* 80204C38 00201B98 CB C1 01 30 */ lfd f30, 0x130(r1) +/* 80204C3C 00201B9C E3 A1 01 28 */ psq_l f29, 296(r1), 0, qr0 +/* 80204C40 00201BA0 CB A1 01 20 */ lfd f29, 0x120(r1) +/* 80204C44 00201BA4 E3 81 01 18 */ psq_l f28, 280(r1), 0, qr0 +/* 80204C48 00201BA8 CB 81 01 10 */ lfd f28, 0x110(r1) +/* 80204C4C 00201BAC 83 E1 01 0C */ lwz r31, 0x10c(r1) +/* 80204C50 00201BB0 80 01 01 54 */ lwz r0, 0x154(r1) +/* 80204C54 00201BB4 83 C1 01 08 */ lwz r30, 0x108(r1) +/* 80204C58 00201BB8 7C 08 03 A6 */ mtlr r0 +/* 80204C5C 00201BBC 38 21 01 50 */ addi r1, r1, 0x150 +/* 80204C60 00201BC0 4E 80 00 20 */ blr + +.global Patrol__22CThardusRockProjectileFR13CStateManager9EStateMsgf +Patrol__22CThardusRockProjectileFR13CStateManager9EStateMsgf: +/* 80204C64 00201BC4 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80204C68 00201BC8 7C 08 02 A6 */ mflr r0 +/* 80204C6C 00201BCC 2C 05 00 01 */ cmpwi r5, 1 +/* 80204C70 00201BD0 90 01 00 54 */ stw r0, 0x54(r1) +/* 80204C74 00201BD4 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 80204C78 00201BD8 7C 7F 1B 78 */ mr r31, r3 +/* 80204C7C 00201BDC 41 82 00 10 */ beq lbl_80204C8C +/* 80204C80 00201BE0 40 80 00 98 */ bge lbl_80204D18 +/* 80204C84 00201BE4 48 00 00 94 */ b lbl_80204D18 +/* 80204C88 00201BE8 48 00 00 90 */ b lbl_80204D18 +lbl_80204C8C: +/* 80204C8C 00201BEC 80 A4 08 4C */ lwz r5, 0x84c(r4) +/* 80204C90 00201BF0 38 61 00 08 */ addi r3, r1, 8 +/* 80204C94 00201BF4 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 80204C98 00201BF8 38 81 00 14 */ addi r4, r1, 0x14 +/* 80204C9C 00201BFC C0 25 00 50 */ lfs f1, 0x50(r5) +/* 80204CA0 00201C00 C0 65 00 60 */ lfs f3, 0x60(r5) +/* 80204CA4 00201C04 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 80204CA8 00201C08 EC 81 00 28 */ fsubs f4, f1, f0 +/* 80204CAC 00201C0C C0 25 00 40 */ lfs f1, 0x40(r5) +/* 80204CB0 00201C10 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 80204CB4 00201C14 EC 43 10 28 */ fsubs f2, f3, f2 +/* 80204CB8 00201C18 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80204CBC 00201C1C D0 81 00 18 */ stfs f4, 0x18(r1) +/* 80204CC0 00201C20 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 80204CC4 00201C24 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 80204CC8 00201C28 48 10 FB 89 */ bl AsNormalized__9CVector3fCFv +/* 80204CCC 00201C2C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80204CD0 00201C30 C4 C3 66 A0 */ lfsu f6, skZero3f@l(r3) +/* 80204CD4 00201C34 C0 61 00 08 */ lfs f3, 8(r1) +/* 80204CD8 00201C38 38 81 00 20 */ addi r4, r1, 0x20 +/* 80204CDC 00201C3C C0 41 00 0C */ lfs f2, 0xc(r1) +/* 80204CE0 00201C40 C0 A3 00 04 */ lfs f5, 4(r3) +/* 80204CE4 00201C44 C0 83 00 08 */ lfs f4, 8(r3) +/* 80204CE8 00201C48 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 80204CEC 00201C4C C0 02 B0 88 */ lfs f0, lbl_805ACDA8@sda21(r2) +/* 80204CF0 00201C50 D0 C1 00 20 */ stfs f6, 0x20(r1) +/* 80204CF4 00201C54 D0 A1 00 24 */ stfs f5, 0x24(r1) +/* 80204CF8 00201C58 D0 81 00 28 */ stfs f4, 0x28(r1) +/* 80204CFC 00201C5C D0 61 00 2C */ stfs f3, 0x2c(r1) +/* 80204D00 00201C60 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 80204D04 00201C64 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 80204D08 00201C68 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 80204D0C 00201C6C 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 80204D10 00201C70 38 63 00 04 */ addi r3, r3, 4 +/* 80204D14 00201C74 4B F2 CA 05 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +lbl_80204D18: +/* 80204D18 00201C78 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80204D1C 00201C7C 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 80204D20 00201C80 7C 08 03 A6 */ mtlr r0 +/* 80204D24 00201C84 38 21 00 50 */ addi r1, r1, 0x50 +/* 80204D28 00201C88 4E 80 00 20 */ blr + +.global GetUp__22CThardusRockProjectileFR13CStateManager9EStateMsgf +GetUp__22CThardusRockProjectileFR13CStateManager9EStateMsgf: +/* 80204D2C 00201C8C 94 21 FE 30 */ stwu r1, -0x1d0(r1) +/* 80204D30 00201C90 7C 08 02 A6 */ mflr r0 +/* 80204D34 00201C94 2C 05 00 01 */ cmpwi r5, 1 +/* 80204D38 00201C98 90 01 01 D4 */ stw r0, 0x1d4(r1) +/* 80204D3C 00201C9C 93 E1 01 CC */ stw r31, 0x1cc(r1) +/* 80204D40 00201CA0 7C 9F 23 78 */ mr r31, r4 +/* 80204D44 00201CA4 93 C1 01 C8 */ stw r30, 0x1c8(r1) +/* 80204D48 00201CA8 7C 7E 1B 78 */ mr r30, r3 +/* 80204D4C 00201CAC 93 A1 01 C4 */ stw r29, 0x1c4(r1) +/* 80204D50 00201CB0 41 82 00 24 */ beq lbl_80204D74 +/* 80204D54 00201CB4 40 80 03 30 */ bge lbl_80205084 +/* 80204D58 00201CB8 2C 05 00 00 */ cmpwi r5, 0 +/* 80204D5C 00201CBC 40 80 00 0C */ bge lbl_80204D68 +/* 80204D60 00201CC0 48 00 03 24 */ b lbl_80205084 +/* 80204D64 00201CC4 48 00 03 20 */ b lbl_80205084 +lbl_80204D68: +/* 80204D68 00201CC8 38 00 00 00 */ li r0, 0 +/* 80204D6C 00201CCC 90 1E 05 74 */ stw r0, 0x574(r30) +/* 80204D70 00201CD0 48 00 03 14 */ b lbl_80205084 +lbl_80204D74: +/* 80204D74 00201CD4 80 AD 93 70 */ lwz r5, lbl_805A7F30@sda21(r13) +/* 80204D78 00201CD8 38 60 00 00 */ li r3, 0 +/* 80204D7C 00201CDC 38 80 00 01 */ li r4, 1 +/* 80204D80 00201CE0 48 18 51 75 */ bl __shl2i +/* 80204D84 00201CE4 39 00 00 00 */ li r8, 0 +/* 80204D88 00201CE8 38 00 00 01 */ li r0, 1 +/* 80204D8C 00201CEC 90 81 00 74 */ stw r4, 0x74(r1) +/* 80204D90 00201CF0 3C 80 80 5A */ lis r4, lbl_805A6700@ha +/* 80204D94 00201CF4 38 C4 67 00 */ addi r6, r4, lbl_805A6700@l +/* 80204D98 00201CF8 C0 22 B0 9C */ lfs f1, lbl_805ACDBC@sda21(r2) +/* 80204D9C 00201CFC 90 61 00 70 */ stw r3, 0x70(r1) +/* 80204DA0 00201D00 7F E4 FB 78 */ mr r4, r31 +/* 80204DA4 00201D04 38 61 00 88 */ addi r3, r1, 0x88 +/* 80204DA8 00201D08 38 A1 00 54 */ addi r5, r1, 0x54 +/* 80204DAC 00201D0C 91 01 00 7C */ stw r8, 0x7c(r1) +/* 80204DB0 00201D10 38 E1 00 70 */ addi r7, r1, 0x70 +/* 80204DB4 00201D14 91 01 00 78 */ stw r8, 0x78(r1) +/* 80204DB8 00201D18 90 01 00 80 */ stw r0, 0x80(r1) +/* 80204DBC 00201D1C C0 7E 00 60 */ lfs f3, 0x60(r30) +/* 80204DC0 00201D20 C0 5E 00 50 */ lfs f2, 0x50(r30) +/* 80204DC4 00201D24 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 80204DC8 00201D28 D0 01 00 54 */ stfs f0, 0x54(r1) +/* 80204DCC 00201D2C D0 41 00 58 */ stfs f2, 0x58(r1) +/* 80204DD0 00201D30 D0 61 00 5C */ stfs f3, 0x5c(r1) +/* 80204DD4 00201D34 4B E4 81 C5 */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter +/* 80204DD8 00201D38 88 81 00 A8 */ lbz r4, 0xa8(r1) +/* 80204DDC 00201D3C C0 E1 00 88 */ lfs f7, 0x88(r1) +/* 80204DE0 00201D40 C0 C1 00 8C */ lfs f6, 0x8c(r1) +/* 80204DE4 00201D44 28 04 00 00 */ cmplwi r4, 0 +/* 80204DE8 00201D48 C0 A1 00 90 */ lfs f5, 0x90(r1) +/* 80204DEC 00201D4C C0 81 00 94 */ lfs f4, 0x94(r1) +/* 80204DF0 00201D50 C0 61 00 98 */ lfs f3, 0x98(r1) +/* 80204DF4 00201D54 C0 41 00 9C */ lfs f2, 0x9c(r1) +/* 80204DF8 00201D58 C0 21 00 A0 */ lfs f1, 0xa0(r1) +/* 80204DFC 00201D5C C0 01 00 A4 */ lfs f0, 0xa4(r1) +/* 80204E00 00201D60 80 01 00 B0 */ lwz r0, 0xb0(r1) +/* 80204E04 00201D64 80 61 00 B4 */ lwz r3, 0xb4(r1) +/* 80204E08 00201D68 D0 E1 00 B8 */ stfs f7, 0xb8(r1) +/* 80204E0C 00201D6C D0 C1 00 BC */ stfs f6, 0xbc(r1) +/* 80204E10 00201D70 D0 A1 00 C0 */ stfs f5, 0xc0(r1) +/* 80204E14 00201D74 D0 81 00 C4 */ stfs f4, 0xc4(r1) +/* 80204E18 00201D78 D0 61 00 C8 */ stfs f3, 0xc8(r1) +/* 80204E1C 00201D7C D0 41 00 CC */ stfs f2, 0xcc(r1) +/* 80204E20 00201D80 D0 21 00 D0 */ stfs f1, 0xd0(r1) +/* 80204E24 00201D84 D0 01 00 D4 */ stfs f0, 0xd4(r1) +/* 80204E28 00201D88 98 81 00 D8 */ stb r4, 0xd8(r1) +/* 80204E2C 00201D8C 90 61 00 E4 */ stw r3, 0xe4(r1) +/* 80204E30 00201D90 90 01 00 E0 */ stw r0, 0xe0(r1) +/* 80204E34 00201D94 40 82 00 BC */ bne lbl_80204EF0 +/* 80204E38 00201D98 80 9F 08 70 */ lwz r4, 0x870(r31) +/* 80204E3C 00201D9C 38 61 00 14 */ addi r3, r1, 0x14 +/* 80204E40 00201DA0 80 A4 00 7C */ lwz r5, 0x7c(r4) +/* 80204E44 00201DA4 A3 A5 00 08 */ lhz r29, 8(r5) +/* 80204E48 00201DA8 4B E0 6D 91 */ bl GetCurrentCameraId__14CCameraManagerCFv +/* 80204E4C 00201DAC A0 01 00 14 */ lhz r0, 0x14(r1) +/* 80204E50 00201DB0 7C 00 E8 40 */ cmplw r0, r29 +/* 80204E54 00201DB4 40 82 01 74 */ bne lbl_80204FC8 +/* 80204E58 00201DB8 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 80204E5C 00201DBC 38 61 00 E8 */ addi r3, r1, 0xe8 +/* 80204E60 00201DC0 C0 5E 00 50 */ lfs f2, 0x50(r30) +/* 80204E64 00201DC4 38 81 00 48 */ addi r4, r1, 0x48 +/* 80204E68 00201DC8 C0 1E 00 60 */ lfs f0, 0x60(r30) +/* 80204E6C 00201DCC D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 80204E70 00201DD0 C0 22 B0 AC */ lfs f1, lbl_805ACDCC@sda21(r2) +/* 80204E74 00201DD4 D0 41 00 40 */ stfs f2, 0x40(r1) +/* 80204E78 00201DD8 80 C1 00 3C */ lwz r6, 0x3c(r1) +/* 80204E7C 00201DDC D0 01 00 44 */ stfs f0, 0x44(r1) +/* 80204E80 00201DE0 80 A1 00 40 */ lwz r5, 0x40(r1) +/* 80204E84 00201DE4 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80204E88 00201DE8 90 C1 00 48 */ stw r6, 0x48(r1) +/* 80204E8C 00201DEC C0 42 B0 90 */ lfs f2, lbl_805ACDB0@sda21(r2) +/* 80204E90 00201DF0 90 A1 00 4C */ stw r5, 0x4c(r1) +/* 80204E94 00201DF4 C0 62 B0 B0 */ lfs f3, lbl_805ACDD0@sda21(r2) +/* 80204E98 00201DF8 90 01 00 50 */ stw r0, 0x50(r1) +/* 80204E9C 00201DFC 4B F5 86 29 */ bl BuildMissileShakeData__16CCameraShakeDataFfffRC9CVector3f +/* 80204EA0 00201E00 80 7F 08 70 */ lwz r3, 0x870(r31) +/* 80204EA4 00201E04 38 81 00 E8 */ addi r4, r1, 0xe8 +/* 80204EA8 00201E08 38 A0 00 01 */ li r5, 1 +/* 80204EAC 00201E0C 4B E0 5B 75 */ bl AddCameraShaker__14CCameraManagerFRC16CCameraShakeDatab +/* 80204EB0 00201E10 34 81 01 68 */ addic. r4, r1, 0x168 +/* 80204EB4 00201E14 41 82 00 10 */ beq lbl_80204EC4 +/* 80204EB8 00201E18 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 80204EBC 00201E1C 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 80204EC0 00201E20 90 04 00 00 */ stw r0, 0(r4) +lbl_80204EC4: +/* 80204EC4 00201E24 34 81 01 2C */ addic. r4, r1, 0x12c +/* 80204EC8 00201E28 41 82 00 10 */ beq lbl_80204ED8 +/* 80204ECC 00201E2C 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 80204ED0 00201E30 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 80204ED4 00201E34 90 04 00 00 */ stw r0, 0(r4) +lbl_80204ED8: +/* 80204ED8 00201E38 34 81 00 F0 */ addic. r4, r1, 0xf0 +/* 80204EDC 00201E3C 41 82 00 EC */ beq lbl_80204FC8 +/* 80204EE0 00201E40 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 80204EE4 00201E44 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 80204EE8 00201E48 90 04 00 00 */ stw r0, 0(r4) +/* 80204EEC 00201E4C 48 00 00 DC */ b lbl_80204FC8 +lbl_80204EF0: +/* 80204EF0 00201E50 A0 1E 05 D0 */ lhz r0, 0x5d0(r30) +/* 80204EF4 00201E54 7F E3 FB 78 */ mr r3, r31 +/* 80204EF8 00201E58 38 81 00 10 */ addi r4, r1, 0x10 +/* 80204EFC 00201E5C B0 01 00 10 */ sth r0, 0x10(r1) +/* 80204F00 00201E60 4B E4 76 75 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80204F04 00201E64 28 03 00 00 */ cmplwi r3, 0 +/* 80204F08 00201E68 41 82 00 C0 */ beq lbl_80204FC8 +/* 80204F0C 00201E6C 88 1E 05 DC */ lbz r0, 0x5dc(r30) +/* 80204F10 00201E70 28 00 00 00 */ cmplwi r0, 0 +/* 80204F14 00201E74 40 82 00 B4 */ bne lbl_80204FC8 +/* 80204F18 00201E78 38 00 00 01 */ li r0, 1 +/* 80204F1C 00201E7C C0 41 00 BC */ lfs f2, 0xbc(r1) +/* 80204F20 00201E80 98 1E 05 DC */ stb r0, 0x5dc(r30) +/* 80204F24 00201E84 7F C3 F3 78 */ mr r3, r30 +/* 80204F28 00201E88 C0 21 00 C0 */ lfs f1, 0xc0(r1) +/* 80204F2C 00201E8C 7F E4 FB 78 */ mr r4, r31 +/* 80204F30 00201E90 C0 01 00 C4 */ lfs f0, 0xc4(r1) +/* 80204F34 00201E94 38 C1 00 60 */ addi r6, r1, 0x60 +/* 80204F38 00201E98 D0 41 00 60 */ stfs f2, 0x60(r1) +/* 80204F3C 00201E9C 38 E1 00 30 */ addi r7, r1, 0x30 +/* 80204F40 00201EA0 39 00 00 00 */ li r8, 0 +/* 80204F44 00201EA4 D0 21 00 64 */ stfs f1, 0x64(r1) +/* 80204F48 00201EA8 D0 01 00 68 */ stfs f0, 0x68(r1) +/* 80204F4C 00201EAC 80 BE 00 64 */ lwz r5, 0x64(r30) +/* 80204F50 00201EB0 C0 05 00 00 */ lfs f0, 0(r5) +/* 80204F54 00201EB4 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 80204F58 00201EB8 C0 05 00 04 */ lfs f0, 4(r5) +/* 80204F5C 00201EBC D0 01 00 34 */ stfs f0, 0x34(r1) +/* 80204F60 00201EC0 C0 05 00 08 */ lfs f0, 8(r5) +/* 80204F64 00201EC4 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 80204F68 00201EC8 80 BE 05 CC */ lwz r5, 0x5cc(r30) +/* 80204F6C 00201ECC 4B FF E8 B9 */ bl sub_80203824 +/* 80204F70 00201ED0 81 5F 08 CC */ lwz r10, 0x8cc(r31) +/* 80204F74 00201ED4 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80204F78 00201ED8 C0 9E 00 60 */ lfs f4, 0x60(r30) +/* 80204F7C 00201EDC 39 03 66 A0 */ addi r8, r3, skZero3f@l +/* 80204F80 00201EE0 C0 7E 00 50 */ lfs f3, 0x50(r30) +/* 80204F84 00201EE4 38 00 00 00 */ li r0, 0 +/* 80204F88 00201EE8 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 80204F8C 00201EEC 7F C3 F3 78 */ mr r3, r30 +/* 80204F90 00201EF0 C0 22 B0 88 */ lfs f1, lbl_805ACDA8@sda21(r2) +/* 80204F94 00201EF4 39 21 00 24 */ addi r9, r1, 0x24 +/* 80204F98 00201EF8 D0 61 00 28 */ stfs f3, 0x28(r1) +/* 80204F9C 00201EFC 38 80 07 AE */ li r4, 0x7ae +/* 80204FA0 00201F00 C0 42 B0 94 */ lfs f2, lbl_805ACDB4@sda21(r2) +/* 80204FA4 00201F04 38 A0 00 00 */ li r5, 0 +/* 80204FA8 00201F08 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 80204FAC 00201F0C 38 C0 00 14 */ li r6, 0x14 +/* 80204FB0 00201F10 C0 62 B0 98 */ lfs f3, lbl_805ACDB8@sda21(r2) +/* 80204FB4 00201F14 38 E0 00 7F */ li r7, 0x7f +/* 80204FB8 00201F18 D0 81 00 2C */ stfs f4, 0x2c(r1) +/* 80204FBC 00201F1C 93 E1 00 08 */ stw r31, 8(r1) +/* 80204FC0 00201F20 90 01 00 0C */ stw r0, 0xc(r1) +/* 80204FC4 00201F24 4B E4 DF 6D */ bl ProcessSoundEvent__6CActorFififfUcUcRC9CVector3fRC9CVector3fiR13CStateManager +lbl_80204FC8: +/* 80204FC8 00201F28 80 1E 05 74 */ lwz r0, 0x574(r30) +/* 80204FCC 00201F2C 2C 00 00 01 */ cmpwi r0, 1 +/* 80204FD0 00201F30 41 82 00 B4 */ beq lbl_80205084 +/* 80204FD4 00201F34 40 80 00 10 */ bge lbl_80204FE4 +/* 80204FD8 00201F38 2C 00 00 00 */ cmpwi r0, 0 +/* 80204FDC 00201F3C 40 80 00 14 */ bge lbl_80204FF0 +/* 80204FE0 00201F40 48 00 00 A4 */ b lbl_80205084 +lbl_80204FE4: +/* 80204FE4 00201F44 2C 00 00 03 */ cmpwi r0, 3 +/* 80204FE8 00201F48 40 80 00 9C */ bge lbl_80205084 +/* 80204FEC 00201F4C 48 00 00 80 */ b lbl_8020506C +lbl_80204FF0: +/* 80204FF0 00201F50 80 9E 04 50 */ lwz r4, 0x450(r30) +/* 80204FF4 00201F54 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 80204FF8 00201F58 2C 00 00 01 */ cmpwi r0, 1 +/* 80204FFC 00201F5C 40 82 00 10 */ bne lbl_8020500C +/* 80205000 00201F60 38 00 00 02 */ li r0, 2 +/* 80205004 00201F64 90 1E 05 74 */ stw r0, 0x574(r30) +/* 80205008 00201F68 48 00 00 7C */ b lbl_80205084 +lbl_8020500C: +/* 8020500C 00201F6C 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80205010 00201F70 38 A0 00 00 */ li r5, 0 +/* 80205014 00201F74 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 80205018 00201F78 3C 60 80 3E */ lis r3, lbl_803DAA20@ha +/* 8020501C 00201F7C 90 01 00 18 */ stw r0, 0x18(r1) +/* 80205020 00201F80 38 03 AA 20 */ addi r0, r3, lbl_803DAA20@l +/* 80205024 00201F84 3B C4 00 04 */ addi r30, r4, 4 +/* 80205028 00201F88 38 80 00 00 */ li r4, 0 +/* 8020502C 00201F8C 90 A1 00 1C */ stw r5, 0x1c(r1) +/* 80205030 00201F90 7F C3 F3 78 */ mr r3, r30 +/* 80205034 00201F94 90 01 00 18 */ stw r0, 0x18(r1) +/* 80205038 00201F98 90 A1 00 20 */ stw r5, 0x20(r1) +/* 8020503C 00201F9C 4B F2 C3 FD */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80205040 00201FA0 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 80205044 00201FA4 3C 60 80 3E */ lis r3, lbl_803DAA20@ha +/* 80205048 00201FA8 38 83 AA 20 */ addi r4, r3, lbl_803DAA20@l +/* 8020504C 00201FAC 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80205050 00201FB0 90 1E 00 BC */ stw r0, 0xbc(r30) +/* 80205054 00201FB4 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 80205058 00201FB8 80 61 00 20 */ lwz r3, 0x20(r1) +/* 8020505C 00201FBC 90 81 00 18 */ stw r4, 0x18(r1) +/* 80205060 00201FC0 90 7E 00 C0 */ stw r3, 0xc0(r30) +/* 80205064 00201FC4 90 01 00 18 */ stw r0, 0x18(r1) +/* 80205068 00201FC8 48 00 00 1C */ b lbl_80205084 +lbl_8020506C: +/* 8020506C 00201FCC 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80205070 00201FD0 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 80205074 00201FD4 2C 00 00 01 */ cmpwi r0, 1 +/* 80205078 00201FD8 41 82 00 0C */ beq lbl_80205084 +/* 8020507C 00201FDC 38 00 00 03 */ li r0, 3 +/* 80205080 00201FE0 90 1E 05 74 */ stw r0, 0x574(r30) +lbl_80205084: +/* 80205084 00201FE4 80 01 01 D4 */ lwz r0, 0x1d4(r1) +/* 80205088 00201FE8 83 E1 01 CC */ lwz r31, 0x1cc(r1) +/* 8020508C 00201FEC 83 C1 01 C8 */ lwz r30, 0x1c8(r1) +/* 80205090 00201FF0 83 A1 01 C4 */ lwz r29, 0x1c4(r1) +/* 80205094 00201FF4 7C 08 03 A6 */ mtlr r0 +/* 80205098 00201FF8 38 21 01 D0 */ addi r1, r1, 0x1d0 +/* 8020509C 00201FFC 4E 80 00 20 */ blr + +.global Think__22CThardusRockProjectileFfR13CStateManager +Think__22CThardusRockProjectileFfR13CStateManager: +/* 802050A0 00202000 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 802050A4 00202004 7C 08 02 A6 */ mflr r0 +/* 802050A8 00202008 90 01 00 34 */ stw r0, 0x34(r1) +/* 802050AC 0020200C DB E1 00 20 */ stfd f31, 0x20(r1) +/* 802050B0 00202010 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 802050B4 00202014 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 802050B8 00202018 93 C1 00 18 */ stw r30, 0x18(r1) +/* 802050BC 0020201C 88 03 00 30 */ lbz r0, 0x30(r3) +/* 802050C0 00202020 FF E0 08 90 */ fmr f31, f1 +/* 802050C4 00202024 7C 7E 1B 78 */ mr r30, r3 +/* 802050C8 00202028 7C 9F 23 78 */ mr r31, r4 +/* 802050CC 0020202C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 802050D0 00202030 41 82 01 70 */ beq lbl_80205240 +/* 802050D4 00202034 A0 1E 05 D0 */ lhz r0, 0x5d0(r30) +/* 802050D8 00202038 7F E3 FB 78 */ mr r3, r31 +/* 802050DC 0020203C 38 81 00 08 */ addi r4, r1, 8 +/* 802050E0 00202040 B0 01 00 08 */ sth r0, 8(r1) +/* 802050E4 00202044 4B E4 74 91 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 802050E8 00202048 28 03 00 00 */ cmplwi r3, 0 +/* 802050EC 0020204C 41 82 00 A8 */ beq lbl_80205194 +/* 802050F0 00202050 7F E4 FB 78 */ mr r4, r31 +/* 802050F4 00202054 4B FD 64 C1 */ bl sub_801db5b4 +/* 802050F8 00202058 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 802050FC 0020205C 40 82 00 50 */ bne lbl_8020514C +/* 80205100 00202060 7F C3 F3 78 */ mr r3, r30 +/* 80205104 00202064 7F E5 FB 78 */ mr r5, r31 +/* 80205108 00202068 38 80 00 29 */ li r4, 0x29 +/* 8020510C 0020206C 4B E4 EE 75 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 80205110 00202070 7F C3 F3 78 */ mr r3, r30 +/* 80205114 00202074 7F E5 FB 78 */ mr r5, r31 +/* 80205118 00202078 38 80 00 28 */ li r4, 0x28 +/* 8020511C 0020207C 4B E4 EE 65 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 80205120 00202080 7F C3 F3 78 */ mr r3, r30 +/* 80205124 00202084 7F E4 FB 78 */ mr r4, r31 +/* 80205128 00202088 38 A0 00 01 */ li r5, 1 +/* 8020512C 0020208C 38 C0 00 29 */ li r6, 0x29 +/* 80205130 00202090 4B FF EC BD */ bl sub_80203dec +/* 80205134 00202094 7F C3 F3 78 */ mr r3, r30 +/* 80205138 00202098 7F E4 FB 78 */ mr r4, r31 +/* 8020513C 0020209C 38 A0 00 01 */ li r5, 1 +/* 80205140 002020A0 38 C0 00 28 */ li r6, 0x28 +/* 80205144 002020A4 4B FF EC A9 */ bl sub_80203dec +/* 80205148 002020A8 48 00 00 4C */ b lbl_80205194 +lbl_8020514C: +/* 8020514C 002020AC 7F C3 F3 78 */ mr r3, r30 +/* 80205150 002020B0 7F E5 FB 78 */ mr r5, r31 +/* 80205154 002020B4 38 80 00 29 */ li r4, 0x29 +/* 80205158 002020B8 4B E4 F1 F9 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 8020515C 002020BC 7F C3 F3 78 */ mr r3, r30 +/* 80205160 002020C0 7F E5 FB 78 */ mr r5, r31 +/* 80205164 002020C4 38 80 00 28 */ li r4, 0x28 +/* 80205168 002020C8 4B E4 F1 E9 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 8020516C 002020CC 7F C3 F3 78 */ mr r3, r30 +/* 80205170 002020D0 7F E4 FB 78 */ mr r4, r31 +/* 80205174 002020D4 38 A0 00 00 */ li r5, 0 +/* 80205178 002020D8 38 C0 00 29 */ li r6, 0x29 +/* 8020517C 002020DC 4B FF EC 71 */ bl sub_80203dec +/* 80205180 002020E0 7F C3 F3 78 */ mr r3, r30 +/* 80205184 002020E4 7F E4 FB 78 */ mr r4, r31 +/* 80205188 002020E8 38 A0 00 00 */ li r5, 0 +/* 8020518C 002020EC 38 C0 00 28 */ li r6, 0x28 +/* 80205190 002020F0 4B FF EC 5D */ bl sub_80203dec +lbl_80205194: +/* 80205194 002020F4 FC 20 F8 90 */ fmr f1, f31 +/* 80205198 002020F8 7F C3 F3 78 */ mr r3, r30 +/* 8020519C 002020FC 7F E4 FB 78 */ mr r4, r31 +/* 802051A0 00202100 4B E7 49 79 */ bl Think__10CPatternedFfR13CStateManager +/* 802051A4 00202104 88 1E 05 DE */ lbz r0, 0x5de(r30) +/* 802051A8 00202108 28 00 00 00 */ cmplwi r0, 0 +/* 802051AC 0020210C 41 82 00 0C */ beq lbl_802051B8 +/* 802051B0 00202110 C0 02 B0 B4 */ lfs f0, lbl_805ACDD4@sda21(r2) +/* 802051B4 00202114 48 00 00 08 */ b lbl_802051BC +lbl_802051B8: +/* 802051B8 00202118 C0 02 B0 B8 */ lfs f0, lbl_805ACDD8@sda21(r2) +lbl_802051BC: +/* 802051BC 0020211C D0 1E 03 B4 */ stfs f0, 0x3b4(r30) +/* 802051C0 00202120 38 60 00 02 */ li r3, 2 +/* 802051C4 00202124 FC 20 F8 90 */ fmr f1, f31 +/* 802051C8 00202128 7F E4 FB 78 */ mr r4, r31 +/* 802051CC 0020212C 88 1E 00 E6 */ lbz r0, 0xe6(r30) +/* 802051D0 00202130 50 60 1E F8 */ rlwimi r0, r3, 3, 0x1b, 0x1c +/* 802051D4 00202134 38 A0 00 00 */ li r5, 0 +/* 802051D8 00202138 98 1E 00 E6 */ stb r0, 0xe6(r30) +/* 802051DC 0020213C 80 7E 05 78 */ lwz r3, 0x578(r30) +/* 802051E0 00202140 4B FA 22 71 */ bl Update__22CCollisionActorManagerCFfR13CStateManagerQ222CCollisionActorManager14EUpdateOptions +/* 802051E4 00202144 7F C3 F3 78 */ mr r3, r30 +/* 802051E8 00202148 7F E4 FB 78 */ mr r4, r31 +/* 802051EC 0020214C 4B FF F0 55 */ bl UpdateDestroyableRockPositions__22CThardusRockProjectileFR13CStateManager +/* 802051F0 00202150 7F C3 F3 78 */ mr r3, r30 +/* 802051F4 00202154 7F E4 FB 78 */ mr r4, r31 +/* 802051F8 00202158 4B FF ED F5 */ bl UpdateDestroyableRockCollisionActors__22CThardusRockProjectileFR13CStateManager +/* 802051FC 0020215C 80 7E 05 A0 */ lwz r3, 0x5a0(r30) +/* 80205200 00202160 80 1E 05 90 */ lwz r0, 0x590(r30) +/* 80205204 00202164 7C 03 00 40 */ cmplw r3, r0 +/* 80205208 00202168 41 80 00 38 */ blt lbl_80205240 +/* 8020520C 0020216C C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 80205210 00202170 7F C3 F3 78 */ mr r3, r30 +/* 80205214 00202174 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 80205218 00202178 7F E4 FB 78 */ mr r4, r31 +/* 8020521C 0020217C C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 80205220 00202180 38 A1 00 0C */ addi r5, r1, 0xc +/* 80205224 00202184 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 80205228 00202188 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 8020522C 0020218C D0 41 00 14 */ stfs f2, 0x14(r1) +/* 80205230 00202190 4B FF E8 65 */ bl sub_80203a94 +/* 80205234 00202194 7F C3 F3 78 */ mr r3, r30 +/* 80205238 00202198 7F E4 FB 78 */ mr r4, r31 +/* 8020523C 0020219C 4B E7 37 C5 */ bl DeathDelete__10CPatternedFR13CStateManager +lbl_80205240: +/* 80205240 002021A0 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 80205244 002021A4 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80205248 002021A8 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 8020524C 002021AC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80205250 002021B0 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80205254 002021B4 7C 08 03 A6 */ mtlr r0 +/* 80205258 002021B8 38 21 00 30 */ addi r1, r1, 0x30 +/* 8020525C 002021BC 4E 80 00 20 */ blr + +.global AcceptScriptMsg__22CThardusRockProjectileF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__22CThardusRockProjectileF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 80205260 002021C0 94 21 FD 80 */ stwu r1, -0x280(r1) +/* 80205264 002021C4 7C 08 02 A6 */ mflr r0 +/* 80205268 002021C8 90 01 02 84 */ stw r0, 0x284(r1) +/* 8020526C 002021CC BE 21 02 44 */ stmw r17, 0x244(r1) +/* 80205270 002021D0 7C B2 2B 78 */ mr r18, r5 +/* 80205274 002021D4 7C 7F 1B 78 */ mr r31, r3 +/* 80205278 002021D8 7C 91 23 78 */ mr r17, r4 +/* 8020527C 002021DC 7C DE 33 78 */ mr r30, r6 +/* 80205280 002021E0 A0 05 00 00 */ lhz r0, 0(r5) +/* 80205284 002021E4 38 A1 00 6C */ addi r5, r1, 0x6c +/* 80205288 002021E8 B0 01 00 6C */ sth r0, 0x6c(r1) +/* 8020528C 002021EC 4B E7 78 ED */ bl AcceptScriptMsg__10CPatternedF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 80205290 002021F0 2C 11 00 1E */ cmpwi r17, 0x1e +/* 80205294 002021F4 41 82 06 3C */ beq lbl_802058D0 +/* 80205298 002021F8 40 80 00 1C */ bge lbl_802052B4 +/* 8020529C 002021FC 2C 11 00 04 */ cmpwi r17, 4 +/* 802052A0 00202200 41 82 08 5C */ beq lbl_80205AFC +/* 802052A4 00202204 40 80 08 68 */ bge lbl_80205B0C +/* 802052A8 00202208 2C 11 00 01 */ cmpwi r17, 1 +/* 802052AC 0020220C 41 82 08 3C */ beq lbl_80205AE8 +/* 802052B0 00202210 48 00 08 5C */ b lbl_80205B0C +lbl_802052B4: +/* 802052B4 00202214 2C 11 00 22 */ cmpwi r17, 0x22 +/* 802052B8 00202218 41 82 03 D4 */ beq lbl_8020568C +/* 802052BC 0020221C 40 80 00 10 */ bge lbl_802052CC +/* 802052C0 00202220 2C 11 00 21 */ cmpwi r17, 0x21 +/* 802052C4 00202224 40 80 00 14 */ bge lbl_802052D8 +/* 802052C8 00202228 48 00 08 44 */ b lbl_80205B0C +lbl_802052CC: +/* 802052CC 0020222C 2C 11 00 29 */ cmpwi r17, 0x29 +/* 802052D0 00202230 41 82 04 04 */ beq lbl_802056D4 +/* 802052D4 00202234 48 00 08 38 */ b lbl_80205B0C +lbl_802052D8: +/* 802052D8 00202238 7F E3 FB 78 */ mr r3, r31 +/* 802052DC 0020223C 7F C5 F3 78 */ mr r5, r30 +/* 802052E0 00202240 38 80 00 13 */ li r4, 0x13 +/* 802052E4 00202244 4B E4 EC 9D */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 802052E8 00202248 83 5F 05 80 */ lwz r26, 0x580(r31) +/* 802052EC 0020224C 38 7F 05 8C */ addi r3, r31, 0x58c +/* 802052F0 00202250 7F 44 D3 78 */ mr r4, r26 +/* 802052F4 00202254 4B E0 71 15 */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" +/* 802052F8 00202258 3C 60 80 3D */ lis r3, lbl_803D2590@ha +/* 802052FC 0020225C 3B 01 01 7C */ addi r24, r1, 0x17c +/* 80205300 00202260 3B 83 25 90 */ addi r28, r3, lbl_803D2590@l +/* 80205304 00202264 3B 20 00 00 */ li r25, 0 +/* 80205308 00202268 3B A0 00 00 */ li r29, 0 +/* 8020530C 0020226C 3B 62 B0 78 */ addi r27, r2, lbl_805ACD98@sda21 +/* 80205310 00202270 48 00 03 20 */ b lbl_80205630 +lbl_80205314: +/* 80205314 00202274 7F C4 F3 78 */ mr r4, r30 +/* 80205318 00202278 38 61 00 68 */ addi r3, r1, 0x68 +/* 8020531C 0020227C 4B E4 7D C1 */ bl AllocateUniqueId__13CStateManagerFv +/* 80205320 00202280 A0 01 00 68 */ lhz r0, 0x68(r1) +/* 80205324 00202284 38 9C 00 34 */ addi r4, r28, 0x34 +/* 80205328 00202288 3A C0 00 00 */ li r22, 0 +/* 8020532C 0020228C 3A A0 00 00 */ li r21, 0 +/* 80205330 00202290 B0 01 00 80 */ sth r0, 0x80(r1) +/* 80205334 00202294 3A 80 00 00 */ li r20, 0 +/* 80205338 00202298 3A 20 00 00 */ li r17, 0 +/* 8020533C 0020229C 38 60 03 48 */ li r3, 0x348 +/* 80205340 002022A0 38 A0 00 00 */ li r5, 0 +/* 80205344 002022A4 48 11 05 29 */ bl __nw__FUlPCcPCc +/* 80205348 002022A8 7C 77 1B 79 */ or. r23, r3, r3 +/* 8020534C 002022AC 41 82 01 E0 */ beq lbl_8020552C +/* 80205350 002022B0 81 3F 05 88 */ lwz r9, 0x588(r31) +/* 80205354 002022B4 38 00 00 0F */ li r0, 0xf +/* 80205358 002022B8 81 01 00 A8 */ lwz r8, 0xa8(r1) +/* 8020535C 002022BC 50 08 E0 06 */ rlwimi r8, r0, 0x1c, 0, 3 +/* 80205360 002022C0 38 60 00 00 */ li r3, 0 +/* 80205364 002022C4 C0 22 B0 88 */ lfs f1, lbl_805ACDA8@sda21(r2) +/* 80205368 002022C8 91 01 00 A8 */ stw r8, 0xa8(r1) +/* 8020536C 002022CC 50 68 D9 08 */ rlwimi r8, r3, 0x1b, 4, 4 +/* 80205370 002022D0 C0 02 B0 A0 */ lfs f0, lbl_805ACDC0@sda21(r2) +/* 80205374 002022D4 38 00 FF FF */ li r0, -1 +/* 80205378 002022D8 80 ED 93 68 */ lwz r7, lbl_805A7F28@sda21(r13) +/* 8020537C 002022DC FC 40 08 90 */ fmr f2, f1 +/* 80205380 002022E0 80 CD 93 6C */ lwz r6, lbl_805A7F2C@sda21(r13) +/* 80205384 002022E4 FC 60 08 90 */ fmr f3, f1 +/* 80205388 002022E8 80 AD 93 60 */ lwz r5, lbl_805A7F20@sda21(r13) +/* 8020538C 002022EC FC 80 08 90 */ fmr f4, f1 +/* 80205390 002022F0 80 8D 93 64 */ lwz r4, lbl_805A7F24@sda21(r13) +/* 80205394 002022F4 91 01 00 A8 */ stw r8, 0xa8(r1) +/* 80205398 002022F8 50 68 D1 4A */ rlwimi r8, r3, 0x1a, 5, 5 +/* 8020539C 002022FC 7E 69 EA 14 */ add r19, r9, r29 +/* 802053A0 00202300 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 802053A4 00202304 91 01 00 A8 */ stw r8, 0xa8(r1) +/* 802053A8 00202308 90 E1 00 D4 */ stw r7, 0xd4(r1) +/* 802053AC 0020230C 90 C1 00 D8 */ stw r6, 0xd8(r1) +/* 802053B0 00202310 90 A1 00 CC */ stw r5, 0xcc(r1) +/* 802053B4 00202314 90 81 00 D0 */ stw r4, 0xd0(r1) +/* 802053B8 00202318 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 802053BC 0020231C D0 01 01 1C */ stfs f0, 0x11c(r1) +/* 802053C0 00202320 D0 01 01 20 */ stfs f0, 0x120(r1) +/* 802053C4 00202324 D0 01 01 24 */ stfs f0, 0x124(r1) +/* 802053C8 00202328 48 15 E0 25 */ bl __ct__6CColorFffff +/* 802053CC 0020232C 38 80 FF FF */ li r4, -1 +/* 802053D0 00202330 C0 22 B0 A0 */ lfs f1, lbl_805ACDC0@sda21(r2) +/* 802053D4 00202334 90 81 00 08 */ stw r4, 8(r1) +/* 802053D8 00202338 7C 66 1B 78 */ mr r6, r3 +/* 802053DC 0020233C 38 00 00 00 */ li r0, 0 +/* 802053E0 00202340 FC 40 08 90 */ fmr f2, f1 +/* 802053E4 00202344 90 81 00 0C */ stw r4, 0xc(r1) +/* 802053E8 00202348 FC 60 08 90 */ fmr f3, f1 +/* 802053EC 0020234C 38 61 01 90 */ addi r3, r1, 0x190 +/* 802053F0 00202350 39 41 01 1C */ addi r10, r1, 0x11c +/* 802053F4 00202354 90 01 00 10 */ stw r0, 0x10(r1) +/* 802053F8 00202358 38 80 00 00 */ li r4, 0 +/* 802053FC 0020235C 38 A0 FF FF */ li r5, -1 +/* 80205400 00202360 90 01 00 14 */ stw r0, 0x14(r1) +/* 80205404 00202364 38 E0 00 01 */ li r7, 1 +/* 80205408 00202368 39 00 00 02 */ li r8, 2 +/* 8020540C 0020236C 39 20 00 00 */ li r9, 0 +/* 80205410 00202370 4B F0 12 E9 */ bl __ct__16CLightParametersFbfQ216CLightParameters19EShadowTessellationffRC6CColorbQ216CLightParameters21EWorldLightingOptionsQ216CLightParameters26ELightRecalculationOptionsRC9CVector3fii +/* 80205414 00202374 C0 22 B0 A0 */ lfs f1, lbl_805ACDC0@sda21(r2) +/* 80205418 00202378 38 00 00 00 */ li r0, 0 +/* 8020541C 0020237C 90 01 00 08 */ stw r0, 8(r1) +/* 80205420 00202380 38 61 01 D0 */ addi r3, r1, 0x1d0 +/* 80205424 00202384 FC 40 08 90 */ fmr f2, f1 +/* 80205428 00202388 C0 62 B0 88 */ lfs f3, lbl_805ACDA8@sda21(r2) +/* 8020542C 0020238C 90 01 00 0C */ stw r0, 0xc(r1) +/* 80205430 00202390 38 81 01 90 */ addi r4, r1, 0x190 +/* 80205434 00202394 38 A1 00 A4 */ addi r5, r1, 0xa4 +/* 80205438 00202398 38 C1 00 CC */ addi r6, r1, 0xcc +/* 8020543C 0020239C 38 E1 00 D4 */ addi r7, r1, 0xd4 +/* 80205440 002023A0 39 01 00 A8 */ addi r8, r1, 0xa8 +/* 80205444 002023A4 3A C0 00 01 */ li r22, 1 +/* 80205448 002023A8 39 20 00 01 */ li r9, 1 +/* 8020544C 002023AC 39 40 00 01 */ li r10, 1 +/* 80205450 002023B0 4B F0 14 79 */ bl sub_801068c8 +/* 80205454 002023B4 7F E3 FB 78 */ mr r3, r31 +/* 80205458 002023B8 7F C4 F3 78 */ mr r4, r30 +/* 8020545C 002023BC 81 9F 00 00 */ lwz r12, 0(r31) +/* 80205460 002023C0 3A A0 00 01 */ li r21, 1 +/* 80205464 002023C4 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80205468 002023C8 7D 89 03 A6 */ mtctr r12 +/* 8020546C 002023CC 4E 80 04 21 */ bctrl +/* 80205470 002023D0 80 DF 05 88 */ lwz r6, 0x588(r31) +/* 80205474 002023D4 3C 80 80 57 */ lis r4, lbl_8056D410@ha +/* 80205478 002023D8 80 0D A3 88 */ lwz r0, lbl_805A8F48@sda21(r13) +/* 8020547C 002023DC 38 A4 D4 10 */ addi r5, r4, lbl_8056D410@l +/* 80205480 002023E0 7C 72 1B 78 */ mr r18, r3 +/* 80205484 002023E4 7E 26 EA 14 */ add r17, r6, r29 +/* 80205488 002023E8 90 01 00 9C */ stw r0, 0x9c(r1) +/* 8020548C 002023EC 38 61 01 78 */ addi r3, r1, 0x178 +/* 80205490 002023F0 38 81 00 98 */ addi r4, r1, 0x98 +/* 80205494 002023F4 38 C1 00 9C */ addi r6, r1, 0x9c +/* 80205498 002023F8 80 1F 00 04 */ lwz r0, 4(r31) +/* 8020549C 002023FC 90 01 00 94 */ stw r0, 0x94(r1) +/* 802054A0 00202400 90 01 00 98 */ stw r0, 0x98(r1) +/* 802054A4 00202404 4B E4 BF E1 */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" +/* 802054A8 00202408 80 9B 00 00 */ lwz r4, 0(r27) +/* 802054AC 0020240C 38 61 01 0C */ addi r3, r1, 0x10c +/* 802054B0 00202410 38 C1 00 20 */ addi r6, r1, 0x20 +/* 802054B4 00202414 3A 80 00 01 */ li r20, 1 +/* 802054B8 00202418 38 A0 FF FF */ li r5, -1 +/* 802054BC 0020241C 48 13 8C D9 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator" +/* 802054C0 00202420 A0 01 00 80 */ lhz r0, 0x80(r1) +/* 802054C4 00202424 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 802054C8 00202428 39 03 66 70 */ addi r8, r3, skIdentity4f@l +/* 802054CC 0020242C 7E 29 8B 78 */ mr r9, r17 +/* 802054D0 00202430 3C A0 80 57 */ lis r5, lbl_8056D578@ha +/* 802054D4 00202434 B0 01 00 64 */ sth r0, 0x64(r1) +/* 802054D8 00202438 38 05 D5 78 */ addi r0, r5, lbl_8056D578@l +/* 802054DC 0020243C 38 9F 00 68 */ addi r4, r31, 0x68 +/* 802054E0 00202440 90 01 00 08 */ stw r0, 8(r1) +/* 802054E4 00202444 39 61 01 D0 */ addi r11, r1, 0x1d0 +/* 802054E8 00202448 38 00 00 01 */ li r0, 1 +/* 802054EC 0020244C C0 22 B0 A0 */ lfs f1, lbl_805ACDC0@sda21(r2) +/* 802054F0 00202450 90 81 00 0C */ stw r4, 0xc(r1) +/* 802054F4 00202454 7E E3 BB 78 */ mr r3, r23 +/* 802054F8 00202458 7E 4A 93 78 */ mr r10, r18 +/* 802054FC 0020245C 38 81 00 64 */ addi r4, r1, 0x64 +/* 80205500 00202460 80 BF 05 9C */ lwz r5, 0x59c(r31) +/* 80205504 00202464 38 C1 01 0C */ addi r6, r1, 0x10c +/* 80205508 00202468 38 E1 01 78 */ addi r7, r1, 0x178 +/* 8020550C 0020246C 3A 20 00 01 */ li r17, 1 +/* 80205510 00202470 90 A1 00 10 */ stw r5, 0x10(r1) +/* 80205514 00202474 38 A0 00 01 */ li r5, 1 +/* 80205518 00202478 91 61 00 14 */ stw r11, 0x14(r1) +/* 8020551C 0020247C 92 61 00 18 */ stw r19, 0x18(r1) +/* 80205520 00202480 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80205524 00202484 4B FD E1 85 */ bl "__ct__16CDestroyableRockF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDatafRC11CHealthInfoRC20CDamageVulnerabilityRC13CMaterialListUiRC16CActorParametersRC10CModelData" +/* 80205528 00202488 7C 77 1B 78 */ mr r23, r3 +lbl_8020552C: +/* 8020552C 0020248C 7E 20 07 75 */ extsb. r0, r17 +/* 80205530 00202490 7E F1 BB 78 */ mr r17, r23 +/* 80205534 00202494 41 82 00 0C */ beq lbl_80205540 +/* 80205538 00202498 38 61 01 0C */ addi r3, r1, 0x10c +/* 8020553C 0020249C 48 13 85 A5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80205540: +/* 80205540 002024A0 7E 80 07 75 */ extsb. r0, r20 +/* 80205544 002024A4 41 82 00 4C */ beq lbl_80205590 +/* 80205548 002024A8 28 18 00 00 */ cmplwi r24, 0 +/* 8020554C 002024AC 41 82 00 44 */ beq lbl_80205590 +/* 80205550 002024B0 80 01 01 80 */ lwz r0, 0x180(r1) +/* 80205554 002024B4 80 61 01 88 */ lwz r3, 0x188(r1) +/* 80205558 002024B8 1C 00 00 0C */ mulli r0, r0, 0xc +/* 8020555C 002024BC 90 61 00 88 */ stw r3, 0x88(r1) +/* 80205560 002024C0 7C 64 1B 78 */ mr r4, r3 +/* 80205564 002024C4 7C 03 02 14 */ add r0, r3, r0 +/* 80205568 002024C8 90 61 00 84 */ stw r3, 0x84(r1) +/* 8020556C 002024CC 90 01 00 90 */ stw r0, 0x90(r1) +/* 80205570 002024D0 90 01 00 8C */ stw r0, 0x8c(r1) +/* 80205574 002024D4 48 00 00 08 */ b lbl_8020557C +lbl_80205578: +/* 80205578 002024D8 38 84 00 0C */ addi r4, r4, 0xc +lbl_8020557C: +/* 8020557C 002024DC 7C 04 00 40 */ cmplw r4, r0 +/* 80205580 002024E0 40 82 FF F8 */ bne lbl_80205578 +/* 80205584 002024E4 28 03 00 00 */ cmplwi r3, 0 +/* 80205588 002024E8 41 82 00 08 */ beq lbl_80205590 +/* 8020558C 002024EC 48 11 03 A5 */ bl Free__7CMemoryFPCv +lbl_80205590: +/* 80205590 002024F0 7E A0 07 75 */ extsb. r0, r21 +/* 80205594 002024F4 41 82 00 10 */ beq lbl_802055A4 +/* 80205598 002024F8 38 61 01 D0 */ addi r3, r1, 0x1d0 +/* 8020559C 002024FC 38 80 FF FF */ li r4, -1 +/* 802055A0 00202500 4B F0 10 69 */ bl __dt__16CActorParametersFv +lbl_802055A4: +/* 802055A4 00202504 7E C0 07 75 */ extsb. r0, r22 +/* 802055A8 00202508 41 82 00 10 */ beq lbl_802055B8 +/* 802055AC 0020250C 38 61 01 90 */ addi r3, r1, 0x190 +/* 802055B0 00202510 38 80 FF FF */ li r4, -1 +/* 802055B4 00202514 4B F0 10 55 */ bl __dt__16CActorParametersFv +lbl_802055B8: +/* 802055B8 00202518 38 00 00 00 */ li r0, 0 +/* 802055BC 0020251C 7F C3 F3 78 */ mr r3, r30 +/* 802055C0 00202520 98 11 03 40 */ stb r0, 0x340(r17) +/* 802055C4 00202524 7E 24 8B 78 */ mr r4, r17 +/* 802055C8 00202528 C0 1F 05 0C */ lfs f0, 0x50c(r31) +/* 802055CC 0020252C D0 11 03 2C */ stfs f0, 0x32c(r17) +/* 802055D0 00202530 4B E4 77 25 */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +/* 802055D4 00202534 80 1F 05 90 */ lwz r0, 0x590(r31) +/* 802055D8 00202538 80 BF 05 94 */ lwz r5, 0x594(r31) +/* 802055DC 0020253C 7C 00 28 00 */ cmpw r0, r5 +/* 802055E0 00202540 41 80 00 1C */ blt lbl_802055FC +/* 802055E4 00202544 2C 05 00 00 */ cmpwi r5, 0 +/* 802055E8 00202548 38 7F 05 8C */ addi r3, r31, 0x58c +/* 802055EC 0020254C 38 80 00 04 */ li r4, 4 +/* 802055F0 00202550 41 82 00 08 */ beq lbl_802055F8 +/* 802055F4 00202554 54 A4 08 3C */ slwi r4, r5, 1 +lbl_802055F8: +/* 802055F8 00202558 4B E0 6E 11 */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" +lbl_802055FC: +/* 802055FC 0020255C 80 1F 05 90 */ lwz r0, 0x590(r31) +/* 80205600 00202560 80 7F 05 98 */ lwz r3, 0x598(r31) +/* 80205604 00202564 54 00 08 3C */ slwi r0, r0, 1 +/* 80205608 00202568 7C 63 02 15 */ add. r3, r3, r0 +/* 8020560C 0020256C 41 82 00 0C */ beq lbl_80205618 +/* 80205610 00202570 A0 01 00 80 */ lhz r0, 0x80(r1) +/* 80205614 00202574 B0 03 00 00 */ sth r0, 0(r3) +lbl_80205618: +/* 80205618 00202578 80 7F 05 90 */ lwz r3, 0x590(r31) +/* 8020561C 0020257C 3B 7B 00 08 */ addi r27, r27, 8 +/* 80205620 00202580 3B 39 00 01 */ addi r25, r25, 1 +/* 80205624 00202584 3B BD 00 4C */ addi r29, r29, 0x4c +/* 80205628 00202588 38 03 00 01 */ addi r0, r3, 1 +/* 8020562C 0020258C 90 1F 05 90 */ stw r0, 0x590(r31) +lbl_80205630: +/* 80205630 00202590 7C 19 D0 40 */ cmplw r25, r26 +/* 80205634 00202594 41 80 FC E0 */ blt lbl_80205314 +/* 80205638 00202598 7F E3 FB 78 */ mr r3, r31 +/* 8020563C 0020259C 7F C5 F3 78 */ mr r5, r30 +/* 80205640 002025A0 38 80 00 1B */ li r4, 0x1b +/* 80205644 002025A4 4B E4 ED 0D */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 80205648 002025A8 7F E3 FB 78 */ mr r3, r31 +/* 8020564C 002025AC 7F C4 F3 78 */ mr r4, r30 +/* 80205650 002025B0 4B FF EF A1 */ bl InitializeCollisionManager__22CThardusRockProjectileFR13CStateManager +/* 80205654 002025B4 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 80205658 002025B8 7F C4 F3 78 */ mr r4, r30 +/* 8020565C 002025BC 4B F3 56 95 */ bl Activate__15CBodyControllerFR13CStateManager +/* 80205660 002025C0 7F E3 FB 78 */ mr r3, r31 +/* 80205664 002025C4 38 80 00 00 */ li r4, 0 +/* 80205668 002025C8 81 9F 00 00 */ lwz r12, 0(r31) +/* 8020566C 002025CC 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80205670 002025D0 7D 89 03 A6 */ mtctr r12 +/* 80205674 002025D4 4E 80 04 21 */ bctrl +/* 80205678 002025D8 7F E3 FB 78 */ mr r3, r31 +/* 8020567C 002025DC 7F C4 F3 78 */ mr r4, r30 +/* 80205680 002025E0 38 A0 00 00 */ li r5, 0 +/* 80205684 002025E4 4B FF E8 91 */ bl SetChildrenActive__22CThardusRockProjectileFR13CStateManagerb +/* 80205688 002025E8 48 00 04 84 */ b lbl_80205B0C +lbl_8020568C: +/* 8020568C 002025EC 80 7F 05 78 */ lwz r3, 0x578(r31) +/* 80205690 002025F0 7F C4 F3 78 */ mr r4, r30 +/* 80205694 002025F4 4B FA 1D 31 */ bl Destroy__22CCollisionActorManagerCFR13CStateManager +/* 80205698 002025F8 82 5F 05 90 */ lwz r18, 0x590(r31) +/* 8020569C 002025FC 3A 60 00 00 */ li r19, 0 +/* 802056A0 00202600 3A 20 00 00 */ li r17, 0 +/* 802056A4 00202604 48 00 00 24 */ b lbl_802056C8 +lbl_802056A8: +/* 802056A8 00202608 80 BF 05 98 */ lwz r5, 0x598(r31) +/* 802056AC 0020260C 7F C3 F3 78 */ mr r3, r30 +/* 802056B0 00202610 38 81 00 60 */ addi r4, r1, 0x60 +/* 802056B4 00202614 7C 05 8A 2E */ lhzx r0, r5, r17 +/* 802056B8 00202618 B0 01 00 60 */ sth r0, 0x60(r1) +/* 802056BC 0020261C 4B E4 6B B1 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +/* 802056C0 00202620 3A 73 00 01 */ addi r19, r19, 1 +/* 802056C4 00202624 3A 31 00 02 */ addi r17, r17, 2 +lbl_802056C8: +/* 802056C8 00202628 7C 13 90 40 */ cmplw r19, r18 +/* 802056CC 0020262C 41 80 FF DC */ blt lbl_802056A8 +/* 802056D0 00202630 48 00 04 3C */ b lbl_80205B0C +lbl_802056D4: +/* 802056D4 00202634 A0 12 00 00 */ lhz r0, 0(r18) +/* 802056D8 00202638 7F C3 F3 78 */ mr r3, r30 +/* 802056DC 0020263C 38 81 00 5C */ addi r4, r1, 0x5c +/* 802056E0 00202640 B0 01 00 5C */ sth r0, 0x5c(r1) +/* 802056E4 00202644 4B E4 6E 91 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 802056E8 00202648 7C 64 1B 78 */ mr r4, r3 +/* 802056EC 0020264C 38 61 00 C4 */ addi r3, r1, 0xc4 +/* 802056F0 00202650 4B EA 9C 5D */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 802056F4 00202654 82 63 00 04 */ lwz r19, 4(r3) +/* 802056F8 00202658 28 13 00 00 */ cmplwi r19, 0 +/* 802056FC 0020265C 41 82 04 10 */ beq lbl_80205B0C +/* 80205700 00202660 80 7F 05 78 */ lwz r3, 0x578(r31) +/* 80205704 00202664 4B FA 1B 45 */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 80205708 00202668 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8020570C 0020266C 7C 71 1B 78 */ mr r17, r3 +/* 80205710 00202670 3A 80 00 00 */ li r20, 0 +/* 80205714 00202674 B0 01 00 7C */ sth r0, 0x7c(r1) +/* 80205718 00202678 48 00 00 38 */ b lbl_80205750 +lbl_8020571C: +/* 8020571C 0020267C 80 7F 05 78 */ lwz r3, 0x578(r31) +/* 80205720 00202680 7E 84 A3 78 */ mr r4, r20 +/* 80205724 00202684 4B FA 1B 15 */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 80205728 00202688 A0 92 00 00 */ lhz r4, 0(r18) +/* 8020572C 0020268C A0 03 00 3C */ lhz r0, 0x3c(r3) +/* 80205730 00202690 7C 04 00 40 */ cmplw r4, r0 +/* 80205734 00202694 40 82 00 18 */ bne lbl_8020574C +/* 80205738 00202698 80 7F 05 98 */ lwz r3, 0x598(r31) +/* 8020573C 0020269C 56 80 08 3C */ slwi r0, r20, 1 +/* 80205740 002026A0 7C 03 02 2E */ lhzx r0, r3, r0 +/* 80205744 002026A4 B0 01 00 7C */ sth r0, 0x7c(r1) +/* 80205748 002026A8 48 00 00 10 */ b lbl_80205758 +lbl_8020574C: +/* 8020574C 002026AC 3A 94 00 01 */ addi r20, r20, 1 +lbl_80205750: +/* 80205750 002026B0 7C 14 88 40 */ cmplw r20, r17 +/* 80205754 002026B4 41 80 FF C8 */ blt lbl_8020571C +lbl_80205758: +/* 80205758 002026B8 A0 01 00 7C */ lhz r0, 0x7c(r1) +/* 8020575C 002026BC 7F C3 F3 78 */ mr r3, r30 +/* 80205760 002026C0 38 81 00 58 */ addi r4, r1, 0x58 +/* 80205764 002026C4 B0 01 00 58 */ sth r0, 0x58(r1) +/* 80205768 002026C8 4B E4 6E 0D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8020576C 002026CC 28 03 00 00 */ cmplwi r3, 0 +/* 80205770 002026D0 41 82 03 9C */ beq lbl_80205B0C +/* 80205774 002026D4 C0 22 B0 A0 */ lfs f1, lbl_805ACDC0@sda21(r2) +/* 80205778 002026D8 38 81 01 00 */ addi r4, r1, 0x100 +/* 8020577C 002026DC D0 21 01 00 */ stfs f1, 0x100(r1) +/* 80205780 002026E0 D0 21 01 04 */ stfs f1, 0x104(r1) +/* 80205784 002026E4 D0 21 01 08 */ stfs f1, 0x108(r1) +/* 80205788 002026E8 81 83 00 00 */ lwz r12, 0(r3) +/* 8020578C 002026EC 81 8C 00 90 */ lwz r12, 0x90(r12) +/* 80205790 002026F0 7D 89 03 A6 */ mtctr r12 +/* 80205794 002026F4 4E 80 04 21 */ bctrl +/* 80205798 002026F8 7E 64 9B 78 */ mr r4, r19 +/* 8020579C 002026FC 38 61 00 54 */ addi r3, r1, 0x54 +/* 802057A0 00202700 4B FA 33 ED */ bl GetLastTouchedObject__15CCollisionActorCFv +/* 802057A4 00202704 A0 01 00 54 */ lhz r0, 0x54(r1) +/* 802057A8 00202708 7F C3 F3 78 */ mr r3, r30 +/* 802057AC 0020270C 38 81 00 50 */ addi r4, r1, 0x50 +/* 802057B0 00202710 B0 01 00 78 */ sth r0, 0x78(r1) +/* 802057B4 00202714 B0 01 00 50 */ sth r0, 0x50(r1) +/* 802057B8 00202718 4B E4 6D ED */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 802057BC 0020271C 7C 64 1B 78 */ mr r4, r3 +/* 802057C0 00202720 38 61 00 AC */ addi r3, r1, 0xac +/* 802057C4 00202724 4B EA 7F 49 */ bl "__ct__29TCastToPtr<15CGameProjectile>FP7CEntity" +/* 802057C8 00202728 82 23 00 04 */ lwz r17, 4(r3) +/* 802057CC 0020272C 28 11 00 00 */ cmplwi r17, 0 +/* 802057D0 00202730 41 82 03 3C */ beq lbl_80205B0C +/* 802057D4 00202734 A0 7F 05 D0 */ lhz r3, 0x5d0(r31) +/* 802057D8 00202738 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 802057DC 0020273C 7C 03 00 40 */ cmplw r3, r0 +/* 802057E0 00202740 41 82 03 2C */ beq lbl_80205B0C +/* 802057E4 00202744 A0 1F 05 D0 */ lhz r0, 0x5d0(r31) +/* 802057E8 00202748 7F C3 F3 78 */ mr r3, r30 +/* 802057EC 0020274C 38 81 00 4C */ addi r4, r1, 0x4c +/* 802057F0 00202750 B0 01 00 4C */ sth r0, 0x4c(r1) +/* 802057F4 00202754 4B E4 6D 81 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 802057F8 00202758 28 03 00 00 */ cmplwi r3, 0 +/* 802057FC 0020275C 41 82 03 10 */ beq lbl_80205B0C +/* 80205800 00202760 80 9E 08 B8 */ lwz r4, 0x8b8(r30) +/* 80205804 00202764 80 84 00 00 */ lwz r4, 0(r4) +/* 80205808 00202768 80 04 00 14 */ lwz r0, 0x14(r4) +/* 8020580C 0020276C 2C 00 00 03 */ cmpwi r0, 3 +/* 80205810 00202770 40 82 00 14 */ bne lbl_80205824 +/* 80205814 00202774 40 82 00 60 */ bne lbl_80205874 +/* 80205818 00202778 80 03 07 C4 */ lwz r0, 0x7c4(r3) +/* 8020581C 0020277C 2C 00 00 03 */ cmpwi r0, 3 +/* 80205820 00202780 41 82 00 54 */ beq lbl_80205874 +lbl_80205824: +/* 80205824 00202784 80 BF 00 64 */ lwz r5, 0x64(r31) +/* 80205828 00202788 7F E3 FB 78 */ mr r3, r31 +/* 8020582C 0020278C 7F C4 F3 78 */ mr r4, r30 +/* 80205830 00202790 38 C1 00 F4 */ addi r6, r1, 0xf4 +/* 80205834 00202794 C0 05 00 00 */ lfs f0, 0(r5) +/* 80205838 00202798 38 E1 00 E8 */ addi r7, r1, 0xe8 +/* 8020583C 0020279C 39 00 00 00 */ li r8, 0 +/* 80205840 002027A0 D0 01 00 E8 */ stfs f0, 0xe8(r1) +/* 80205844 002027A4 C0 05 00 04 */ lfs f0, 4(r5) +/* 80205848 002027A8 D0 01 00 EC */ stfs f0, 0xec(r1) +/* 8020584C 002027AC C0 05 00 08 */ lfs f0, 8(r5) +/* 80205850 002027B0 D0 01 00 F0 */ stfs f0, 0xf0(r1) +/* 80205854 002027B4 C0 51 00 60 */ lfs f2, 0x60(r17) +/* 80205858 002027B8 C0 31 00 50 */ lfs f1, 0x50(r17) +/* 8020585C 002027BC C0 11 00 40 */ lfs f0, 0x40(r17) +/* 80205860 002027C0 D0 01 00 F4 */ stfs f0, 0xf4(r1) +/* 80205864 002027C4 D0 21 00 F8 */ stfs f1, 0xf8(r1) +/* 80205868 002027C8 D0 41 00 FC */ stfs f2, 0xfc(r1) +/* 8020586C 002027CC 80 BF 05 C4 */ lwz r5, 0x5c4(r31) +/* 80205870 002027D0 4B FF DF B5 */ bl sub_80203824 +lbl_80205874: +/* 80205874 002027D4 81 5E 08 CC */ lwz r10, 0x8cc(r30) +/* 80205878 002027D8 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8020587C 002027DC C0 91 00 60 */ lfs f4, 0x60(r17) +/* 80205880 002027E0 39 03 66 A0 */ addi r8, r3, skZero3f@l +/* 80205884 002027E4 C0 71 00 50 */ lfs f3, 0x50(r17) +/* 80205888 002027E8 38 00 00 01 */ li r0, 1 +/* 8020588C 002027EC C0 11 00 40 */ lfs f0, 0x40(r17) +/* 80205890 002027F0 7F E3 FB 78 */ mr r3, r31 +/* 80205894 002027F4 C0 22 B0 88 */ lfs f1, lbl_805ACDA8@sda21(r2) +/* 80205898 002027F8 39 21 00 DC */ addi r9, r1, 0xdc +/* 8020589C 002027FC D0 61 00 E0 */ stfs f3, 0xe0(r1) +/* 802058A0 00202800 38 A0 00 00 */ li r5, 0 +/* 802058A4 00202804 C0 42 B0 94 */ lfs f2, lbl_805ACDB4@sda21(r2) +/* 802058A8 00202808 38 C0 00 14 */ li r6, 0x14 +/* 802058AC 0020280C D0 01 00 DC */ stfs f0, 0xdc(r1) +/* 802058B0 00202810 38 E0 00 7F */ li r7, 0x7f +/* 802058B4 00202814 C0 62 B0 98 */ lfs f3, lbl_805ACDB8@sda21(r2) +/* 802058B8 00202818 D0 81 00 E4 */ stfs f4, 0xe4(r1) +/* 802058BC 0020281C 93 C1 00 08 */ stw r30, 8(r1) +/* 802058C0 00202820 90 01 00 0C */ stw r0, 0xc(r1) +/* 802058C4 00202824 80 9F 05 D4 */ lwz r4, 0x5d4(r31) +/* 802058C8 00202828 4B E4 D6 69 */ bl ProcessSoundEvent__6CActorFififfUcUcRC9CVector3fRC9CVector3fiR13CStateManager +/* 802058CC 0020282C 48 00 02 40 */ b lbl_80205B0C +lbl_802058D0: +/* 802058D0 00202830 A0 12 00 00 */ lhz r0, 0(r18) +/* 802058D4 00202834 7F C3 F3 78 */ mr r3, r30 +/* 802058D8 00202838 38 81 00 48 */ addi r4, r1, 0x48 +/* 802058DC 0020283C B0 01 00 48 */ sth r0, 0x48(r1) +/* 802058E0 00202840 4B E4 6C 95 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 802058E4 00202844 7C 60 1B 78 */ mr r0, r3 +/* 802058E8 00202848 38 61 00 BC */ addi r3, r1, 0xbc +/* 802058EC 0020284C 7C 04 03 78 */ mr r4, r0 +/* 802058F0 00202850 4B EA 9A 5D */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 802058F4 00202854 82 23 00 04 */ lwz r17, 4(r3) +/* 802058F8 00202858 28 11 00 00 */ cmplwi r17, 0 +/* 802058FC 0020285C 41 82 02 10 */ beq lbl_80205B0C +/* 80205900 00202860 7E 24 8B 78 */ mr r4, r17 +/* 80205904 00202864 38 61 00 44 */ addi r3, r1, 0x44 +/* 80205908 00202868 4B FA 32 85 */ bl GetLastTouchedObject__15CCollisionActorCFv +/* 8020590C 0020286C A0 01 00 44 */ lhz r0, 0x44(r1) +/* 80205910 00202870 7F C3 F3 78 */ mr r3, r30 +/* 80205914 00202874 38 81 00 40 */ addi r4, r1, 0x40 +/* 80205918 00202878 B0 01 00 74 */ sth r0, 0x74(r1) +/* 8020591C 0020287C B0 01 00 40 */ sth r0, 0x40(r1) +/* 80205920 00202880 4B E4 6C 55 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80205924 00202884 7C 60 1B 78 */ mr r0, r3 +/* 80205928 00202888 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 8020592C 0020288C 7C 04 03 78 */ mr r4, r0 +/* 80205930 00202890 4B EA 6A 65 */ bl "__ct__20TCastToPtr<7CPlayer>FP7CEntity" +/* 80205934 00202894 82 63 00 04 */ lwz r19, 4(r3) +/* 80205938 00202898 28 13 00 00 */ cmplwi r19, 0 +/* 8020593C 0020289C 41 82 01 D0 */ beq lbl_80205B0C +/* 80205940 002028A0 C0 3F 04 20 */ lfs f1, 0x420(r31) +/* 80205944 002028A4 C0 02 B0 A0 */ lfs f0, lbl_805ACDC0@sda21(r2) +/* 80205948 002028A8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8020594C 002028AC 4C 40 13 82 */ cror 2, 0, 2 +/* 80205950 002028B0 40 82 00 CC */ bne lbl_80205A1C +/* 80205954 002028B4 7F E4 FB 78 */ mr r4, r31 +/* 80205958 002028B8 38 61 01 5C */ addi r3, r1, 0x15c +/* 8020595C 002028BC 81 9F 00 00 */ lwz r12, 0(r31) +/* 80205960 002028C0 81 8C 02 B0 */ lwz r12, 0x2b0(r12) +/* 80205964 002028C4 7D 89 03 A6 */ mtctr r12 +/* 80205968 002028C8 4E 80 04 21 */ bctrl +/* 8020596C 002028CC 80 AD 93 50 */ lwz r5, lbl_805A7F10@sda21(r13) +/* 80205970 002028D0 38 60 00 00 */ li r3, 0 +/* 80205974 002028D4 38 80 00 01 */ li r4, 1 +/* 80205978 002028D8 48 18 45 7D */ bl __shl2i +/* 8020597C 002028DC 38 A0 00 00 */ li r5, 0 +/* 80205980 002028E0 38 00 00 03 */ li r0, 3 +/* 80205984 002028E4 90 81 01 2C */ stw r4, 0x12c(r1) +/* 80205988 002028E8 7F E4 FB 78 */ mr r4, r31 +/* 8020598C 002028EC 90 61 01 28 */ stw r3, 0x128(r1) +/* 80205990 002028F0 38 61 01 40 */ addi r3, r1, 0x140 +/* 80205994 002028F4 90 A1 01 34 */ stw r5, 0x134(r1) +/* 80205998 002028F8 90 A1 01 30 */ stw r5, 0x130(r1) +/* 8020599C 002028FC 90 01 01 38 */ stw r0, 0x138(r1) +/* 802059A0 00202900 A0 1F 00 08 */ lhz r0, 8(r31) +/* 802059A4 00202904 B0 01 00 2C */ sth r0, 0x2c(r1) +/* 802059A8 00202908 A0 B3 00 08 */ lhz r5, 8(r19) +/* 802059AC 0020290C B0 01 00 28 */ sth r0, 0x28(r1) +/* 802059B0 00202910 B0 A1 00 34 */ sth r5, 0x34(r1) +/* 802059B4 00202914 A0 1F 00 08 */ lhz r0, 8(r31) +/* 802059B8 00202918 B0 A1 00 30 */ sth r5, 0x30(r1) +/* 802059BC 0020291C B0 01 00 3C */ sth r0, 0x3c(r1) +/* 802059C0 00202920 81 9F 00 00 */ lwz r12, 0(r31) +/* 802059C4 00202924 B0 01 00 38 */ sth r0, 0x38(r1) +/* 802059C8 00202928 81 8C 02 B0 */ lwz r12, 0x2b0(r12) +/* 802059CC 0020292C 7D 89 03 A6 */ mtctr r12 +/* 802059D0 00202930 4E 80 04 21 */ bctrl +/* 802059D4 00202934 3C 80 80 5A */ lis r4, skZero3f@ha +/* 802059D8 00202938 7F C3 F3 78 */ mr r3, r30 +/* 802059DC 0020293C 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 802059E0 00202940 38 A1 00 34 */ addi r5, r1, 0x34 +/* 802059E4 00202944 38 81 00 3C */ addi r4, r1, 0x3c +/* 802059E8 00202948 38 C1 00 2C */ addi r6, r1, 0x2c +/* 802059EC 0020294C 38 E1 01 40 */ addi r7, r1, 0x140 +/* 802059F0 00202950 39 01 01 28 */ addi r8, r1, 0x128 +/* 802059F4 00202954 4B E4 46 AD */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +/* 802059F8 00202958 C0 1F 04 24 */ lfs f0, 0x424(r31) +/* 802059FC 0020295C D0 1F 04 20 */ stfs f0, 0x420(r31) +/* 80205A00 00202960 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 80205A04 00202964 4B E1 02 F9 */ bl GetFrozenState__7CPlayerCFv +/* 80205A08 00202968 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80205A0C 0020296C 41 82 00 10 */ beq lbl_80205A1C +/* 80205A10 00202970 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 80205A14 00202974 7F C4 F3 78 */ mr r4, r30 +/* 80205A18 00202978 4B E1 00 15 */ bl UnFreeze__7CPlayerFR13CStateManager +lbl_80205A1C: +/* 80205A1C 0020297C 80 7F 05 78 */ lwz r3, 0x578(r31) +/* 80205A20 00202980 4B FA 18 29 */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 80205A24 00202984 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80205A28 00202988 7C 73 1B 78 */ mr r19, r3 +/* 80205A2C 0020298C 3A 80 00 00 */ li r20, 0 +/* 80205A30 00202990 B0 01 00 70 */ sth r0, 0x70(r1) +/* 80205A34 00202994 48 00 00 38 */ b lbl_80205A6C +lbl_80205A38: +/* 80205A38 00202998 80 7F 05 78 */ lwz r3, 0x578(r31) +/* 80205A3C 0020299C 7E 84 A3 78 */ mr r4, r20 +/* 80205A40 002029A0 4B FA 17 F9 */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 80205A44 002029A4 A0 63 00 3C */ lhz r3, 0x3c(r3) +/* 80205A48 002029A8 A0 12 00 00 */ lhz r0, 0(r18) +/* 80205A4C 002029AC 7C 03 00 40 */ cmplw r3, r0 +/* 80205A50 002029B0 40 82 00 18 */ bne lbl_80205A68 +/* 80205A54 002029B4 80 7F 05 98 */ lwz r3, 0x598(r31) +/* 80205A58 002029B8 56 80 08 3C */ slwi r0, r20, 1 +/* 80205A5C 002029BC 7C 03 02 2E */ lhzx r0, r3, r0 +/* 80205A60 002029C0 B0 01 00 70 */ sth r0, 0x70(r1) +/* 80205A64 002029C4 48 00 00 10 */ b lbl_80205A74 +lbl_80205A68: +/* 80205A68 002029C8 3A 94 00 01 */ addi r20, r20, 1 +lbl_80205A6C: +/* 80205A6C 002029CC 7C 14 98 40 */ cmplw r20, r19 +/* 80205A70 002029D0 41 80 FF C8 */ blt lbl_80205A38 +lbl_80205A74: +/* 80205A74 002029D4 A0 61 00 70 */ lhz r3, 0x70(r1) +/* 80205A78 002029D8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80205A7C 002029DC 7C 03 00 40 */ cmplw r3, r0 +/* 80205A80 002029E0 41 82 00 8C */ beq lbl_80205B0C +/* 80205A84 002029E4 A0 01 00 70 */ lhz r0, 0x70(r1) +/* 80205A88 002029E8 7F C3 F3 78 */ mr r3, r30 +/* 80205A8C 002029EC 38 81 00 24 */ addi r4, r1, 0x24 +/* 80205A90 002029F0 B0 01 00 24 */ sth r0, 0x24(r1) +/* 80205A94 002029F4 4B E4 6A E1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80205A98 002029F8 28 03 00 00 */ cmplwi r3, 0 +/* 80205A9C 002029FC 41 82 00 70 */ beq lbl_80205B0C +/* 80205AA0 00202A00 88 03 00 30 */ lbz r0, 0x30(r3) +/* 80205AA4 00202A04 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80205AA8 00202A08 41 82 00 64 */ beq lbl_80205B0C +/* 80205AAC 00202A0C 81 83 00 00 */ lwz r12, 0(r3) +/* 80205AB0 00202A10 38 80 00 00 */ li r4, 0 +/* 80205AB4 00202A14 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80205AB8 00202A18 7D 89 03 A6 */ mtctr r12 +/* 80205ABC 00202A1C 4E 80 04 21 */ bctrl +/* 80205AC0 00202A20 7E 23 8B 78 */ mr r3, r17 +/* 80205AC4 00202A24 38 80 00 00 */ li r4, 0 +/* 80205AC8 00202A28 81 91 00 00 */ lwz r12, 0(r17) +/* 80205ACC 00202A2C 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80205AD0 00202A30 7D 89 03 A6 */ mtctr r12 +/* 80205AD4 00202A34 4E 80 04 21 */ bctrl +/* 80205AD8 00202A38 80 7F 05 A0 */ lwz r3, 0x5a0(r31) +/* 80205ADC 00202A3C 38 03 00 01 */ addi r0, r3, 1 +/* 80205AE0 00202A40 90 1F 05 A0 */ stw r0, 0x5a0(r31) +/* 80205AE4 00202A44 48 00 00 28 */ b lbl_80205B0C +lbl_80205AE8: +/* 80205AE8 00202A48 7F E3 FB 78 */ mr r3, r31 +/* 80205AEC 00202A4C 7F C4 F3 78 */ mr r4, r30 +/* 80205AF0 00202A50 38 A0 00 01 */ li r5, 1 +/* 80205AF4 00202A54 4B FF E4 21 */ bl SetChildrenActive__22CThardusRockProjectileFR13CStateManagerb +/* 80205AF8 00202A58 48 00 00 14 */ b lbl_80205B0C +lbl_80205AFC: +/* 80205AFC 00202A5C 7F E3 FB 78 */ mr r3, r31 +/* 80205B00 00202A60 7F C4 F3 78 */ mr r4, r30 +/* 80205B04 00202A64 38 A0 00 00 */ li r5, 0 +/* 80205B08 00202A68 4B FF E4 0D */ bl SetChildrenActive__22CThardusRockProjectileFR13CStateManagerb +lbl_80205B0C: +/* 80205B0C 00202A6C BA 21 02 44 */ lmw r17, 0x244(r1) +/* 80205B10 00202A70 80 01 02 84 */ lwz r0, 0x284(r1) +/* 80205B14 00202A74 7C 08 03 A6 */ mtlr r0 +/* 80205B18 00202A78 38 21 02 80 */ addi r1, r1, 0x280 +/* 80205B1C 00202A7C 4E 80 00 20 */ blr + +.global Accept__22CThardusRockProjectileFR8IVisitor +Accept__22CThardusRockProjectileFR8IVisitor: +/* 80205B20 00202A80 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80205B24 00202A84 7C 08 02 A6 */ mflr r0 +/* 80205B28 00202A88 90 01 00 14 */ stw r0, 0x14(r1) +/* 80205B2C 00202A8C 7C 60 1B 78 */ mr r0, r3 +/* 80205B30 00202A90 7C 83 23 78 */ mr r3, r4 +/* 80205B34 00202A94 81 84 00 00 */ lwz r12, 0(r4) +/* 80205B38 00202A98 7C 04 03 78 */ mr r4, r0 +/* 80205B3C 00202A9C 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 80205B40 00202AA0 7D 89 03 A6 */ mtctr r12 +/* 80205B44 00202AA4 4E 80 04 21 */ bctrl +/* 80205B48 00202AA8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80205B4C 00202AAC 7C 08 03 A6 */ mtlr r0 +/* 80205B50 00202AB0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80205B54 00202AB4 4E 80 00 20 */ blr + +.global "__ct__22CThardusRockProjectileF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC16CActorParametersRC14CPatternedInfoRCQ24rstl47vector<10CModelData,Q24rstl17rmemory_allocator>Ui" +"__ct__22CThardusRockProjectileF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC16CActorParametersRC14CPatternedInfoRCQ24rstl47vector<10CModelData,Q24rstl17rmemory_allocator>Ui": +/* 80205B58 00202AB8 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 80205B5C 00202ABC 7C 08 02 A6 */ mflr r0 +/* 80205B60 00202AC0 90 01 00 74 */ stw r0, 0x74(r1) +/* 80205B64 00202AC4 DB E1 00 60 */ stfd f31, 0x60(r1) +/* 80205B68 00202AC8 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 80205B6C 00202ACC BF 61 00 4C */ stmw r27, 0x4c(r1) +/* 80205B70 00202AD0 A0 04 00 00 */ lhz r0, 0(r4) +/* 80205B74 00202AD4 7C DD 33 78 */ mr r29, r6 +/* 80205B78 00202AD8 7C EC 3B 78 */ mr r12, r7 +/* 80205B7C 00202ADC 7D 04 43 78 */ mr r4, r8 +/* 80205B80 00202AE0 B0 01 00 20 */ sth r0, 0x20(r1) +/* 80205B84 00202AE4 7C A6 2B 78 */ mr r6, r5 +/* 80205B88 00202AE8 39 60 00 01 */ li r11, 1 +/* 80205B8C 00202AEC 38 00 00 03 */ li r0, 3 +/* 80205B90 00202AF0 91 41 00 08 */ stw r10, 8(r1) +/* 80205B94 00202AF4 7C 8A 23 78 */ mr r10, r4 +/* 80205B98 00202AF8 FF E0 08 90 */ fmr f31, f1 +/* 80205B9C 00202AFC 83 81 00 78 */ lwz r28, 0x78(r1) +/* 80205BA0 00202B00 91 61 00 0C */ stw r11, 0xc(r1) +/* 80205BA4 00202B04 7C 7F 1B 78 */ mr r31, r3 +/* 80205BA8 00202B08 83 61 00 7C */ lwz r27, 0x7c(r1) +/* 80205BAC 00202B0C 7F A8 EB 78 */ mr r8, r29 +/* 80205BB0 00202B10 91 61 00 10 */ stw r11, 0x10(r1) +/* 80205BB4 00202B14 38 A1 00 20 */ addi r5, r1, 0x20 +/* 80205BB8 00202B18 38 80 00 25 */ li r4, 0x25 +/* 80205BBC 00202B1C 38 E0 00 00 */ li r7, 0 +/* 80205BC0 00202B20 90 01 00 14 */ stw r0, 0x14(r1) +/* 80205BC4 00202B24 91 21 00 18 */ stw r9, 0x18(r1) +/* 80205BC8 00202B28 7D 89 63 78 */ mr r9, r12 +/* 80205BCC 00202B2C 91 61 00 1C */ stw r11, 0x1c(r1) +/* 80205BD0 00202B30 4B E7 78 81 */ bl "__ct__10CPatternedFUi9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC16CActorParametersUi" +/* 80205BD4 00202B34 3C 60 80 3E */ lis r3, lbl_803E6BE0@ha +/* 80205BD8 00202B38 C0 02 B0 88 */ lfs f0, lbl_805ACDA8@sda21(r2) +/* 80205BDC 00202B3C 38 03 6B E0 */ addi r0, r3, lbl_803E6BE0@l +/* 80205BE0 00202B40 38 A0 00 00 */ li r5, 0 +/* 80205BE4 00202B44 90 1F 00 00 */ stw r0, 0(r31) +/* 80205BE8 00202B48 38 00 FF FF */ li r0, -1 +/* 80205BEC 00202B4C 7F 84 E3 78 */ mr r4, r28 +/* 80205BF0 00202B50 38 7F 05 7C */ addi r3, r31, 0x57c +/* 80205BF4 00202B54 D0 1F 05 68 */ stfs f0, 0x568(r31) +/* 80205BF8 00202B58 A0 CD A3 8C */ lhz r6, lbl_805A8F4C@sda21(r13) +/* 80205BFC 00202B5C B0 DF 05 70 */ sth r6, 0x570(r31) +/* 80205C00 00202B60 98 BF 05 72 */ stb r5, 0x572(r31) +/* 80205C04 00202B64 90 1F 05 74 */ stw r0, 0x574(r31) +/* 80205C08 00202B68 90 BF 05 78 */ stw r5, 0x578(r31) +/* 80205C0C 00202B6C 4B FD D2 01 */ bl sub_801e2e0c +/* 80205C10 00202B70 38 80 00 00 */ li r4, 0 +/* 80205C14 00202B74 38 00 00 01 */ li r0, 1 +/* 80205C18 00202B78 90 9F 05 90 */ stw r4, 0x590(r31) +/* 80205C1C 00202B7C 7F E3 FB 78 */ mr r3, r31 +/* 80205C20 00202B80 C0 22 B0 A0 */ lfs f1, lbl_805ACDC0@sda21(r2) +/* 80205C24 00202B84 90 9F 05 94 */ stw r4, 0x594(r31) +/* 80205C28 00202B88 C0 02 B0 88 */ lfs f0, lbl_805ACDA8@sda21(r2) +/* 80205C2C 00202B8C 90 9F 05 98 */ stw r4, 0x598(r31) +/* 80205C30 00202B90 93 7F 05 9C */ stw r27, 0x59c(r31) +/* 80205C34 00202B94 90 9F 05 A0 */ stw r4, 0x5a0(r31) +/* 80205C38 00202B98 98 1F 05 A4 */ stb r0, 0x5a4(r31) +/* 80205C3C 00202B9C D0 3F 05 A8 */ stfs f1, 0x5a8(r31) +/* 80205C40 00202BA0 D0 3F 05 AC */ stfs f1, 0x5ac(r31) +/* 80205C44 00202BA4 D0 3F 05 B0 */ stfs f1, 0x5b0(r31) +/* 80205C48 00202BA8 D0 1F 05 B4 */ stfs f0, 0x5b4(r31) +/* 80205C4C 00202BAC D0 3F 05 B8 */ stfs f1, 0x5b8(r31) +/* 80205C50 00202BB0 98 1F 05 BC */ stb r0, 0x5bc(r31) +/* 80205C54 00202BB4 D3 FF 05 C0 */ stfs f31, 0x5c0(r31) +/* 80205C58 00202BB8 90 9F 05 C4 */ stw r4, 0x5c4(r31) +/* 80205C5C 00202BBC 90 9F 05 C8 */ stw r4, 0x5c8(r31) +/* 80205C60 00202BC0 90 9F 05 CC */ stw r4, 0x5cc(r31) +/* 80205C64 00202BC4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80205C68 00202BC8 B0 1F 05 D0 */ sth r0, 0x5d0(r31) +/* 80205C6C 00202BCC 90 9F 05 D4 */ stw r4, 0x5d4(r31) +/* 80205C70 00202BD0 90 9F 05 D8 */ stw r4, 0x5d8(r31) +/* 80205C74 00202BD4 98 9F 05 DC */ stb r4, 0x5dc(r31) +/* 80205C78 00202BD8 98 9F 05 DD */ stb r4, 0x5dd(r31) +/* 80205C7C 00202BDC 4B E4 DC 41 */ bl GetMaterialFilter__6CActorCFv +/* 80205C80 00202BE0 80 AD 93 54 */ lwz r5, lbl_805A7F14@sda21(r13) +/* 80205C84 00202BE4 38 80 00 01 */ li r4, 1 +/* 80205C88 00202BE8 83 C3 00 08 */ lwz r30, 8(r3) +/* 80205C8C 00202BEC 83 A3 00 0C */ lwz r29, 0xc(r3) +/* 80205C90 00202BF0 38 60 00 00 */ li r3, 0 +/* 80205C94 00202BF4 48 18 42 61 */ bl __shl2i +/* 80205C98 00202BF8 80 AD 93 58 */ lwz r5, lbl_805A7F18@sda21(r13) +/* 80205C9C 00202BFC 7C 9B 23 78 */ mr r27, r4 +/* 80205CA0 00202C00 7C 7C 1B 78 */ mr r28, r3 +/* 80205CA4 00202C04 38 60 00 00 */ li r3, 0 +/* 80205CA8 00202C08 38 80 00 01 */ li r4, 1 +/* 80205CAC 00202C0C 48 18 42 49 */ bl __shl2i +/* 80205CB0 00202C10 80 AD 93 5C */ lwz r5, lbl_805A7F1C@sda21(r13) +/* 80205CB4 00202C14 7F 7B 23 78 */ or r27, r27, r4 +/* 80205CB8 00202C18 7F 9C 1B 78 */ or r28, r28, r3 +/* 80205CBC 00202C1C 38 60 00 00 */ li r3, 0 +/* 80205CC0 00202C20 38 80 00 01 */ li r4, 1 +/* 80205CC4 00202C24 48 18 42 31 */ bl __shl2i +/* 80205CC8 00202C28 7F 9C 1B 78 */ or r28, r28, r3 +/* 80205CCC 00202C2C 7F 7B 23 78 */ or r27, r27, r4 +/* 80205CD0 00202C30 7F E3 FB 78 */ mr r3, r31 +/* 80205CD4 00202C34 7F BD DB 78 */ or r29, r29, r27 +/* 80205CD8 00202C38 7F DE E3 78 */ or r30, r30, r28 +/* 80205CDC 00202C3C 4B E4 DB E1 */ bl GetMaterialFilter__6CActorCFv +/* 80205CE0 00202C40 80 A3 00 00 */ lwz r5, 0(r3) +/* 80205CE4 00202C44 38 00 00 03 */ li r0, 3 +/* 80205CE8 00202C48 80 C3 00 04 */ lwz r6, 4(r3) +/* 80205CEC 00202C4C 7F E3 FB 78 */ mr r3, r31 +/* 80205CF0 00202C50 38 81 00 28 */ addi r4, r1, 0x28 +/* 80205CF4 00202C54 90 C1 00 2C */ stw r6, 0x2c(r1) +/* 80205CF8 00202C58 90 A1 00 28 */ stw r5, 0x28(r1) +/* 80205CFC 00202C5C 93 A1 00 34 */ stw r29, 0x34(r1) +/* 80205D00 00202C60 93 C1 00 30 */ stw r30, 0x30(r1) +/* 80205D04 00202C64 90 01 00 38 */ stw r0, 0x38(r1) +/* 80205D08 00202C68 4B E4 DB 99 */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter +/* 80205D0C 00202C6C C0 02 B0 88 */ lfs f0, lbl_805ACDA8@sda21(r2) +/* 80205D10 00202C70 7F E3 FB 78 */ mr r3, r31 +/* 80205D14 00202C74 D0 1F 05 0C */ stfs f0, 0x50c(r31) +/* 80205D18 00202C78 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 80205D1C 00202C7C CB E1 00 60 */ lfd f31, 0x60(r1) +/* 80205D20 00202C80 BB 61 00 4C */ lmw r27, 0x4c(r1) +/* 80205D24 00202C84 80 01 00 74 */ lwz r0, 0x74(r1) +/* 80205D28 00202C88 7C 08 03 A6 */ mtlr r0 +/* 80205D2C 00202C8C 38 21 00 70 */ addi r1, r1, 0x70 +/* 80205D30 00202C90 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Enemies/CWallCrawlerSwarm.s b/asm/Kyoto_CWD/Enemies/CWallCrawlerSwarm.s new file mode 100644 index 00000000..a601c64d --- /dev/null +++ b/asm/Kyoto_CWD/Enemies/CWallCrawlerSwarm.s @@ -0,0 +1,8581 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global UpdateEffects__17CWallCrawlerSwarmFR13CStateManagerR9CAnimData +UpdateEffects__17CWallCrawlerSwarmFR13CStateManagerR9CAnimData: +/* 801E7558 001E44B8 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 801E755C 001E44BC 7C 08 02 A6 */ mflr r0 +/* 801E7560 001E44C0 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 801E7564 001E44C4 DB E1 00 A0 */ stfd f31, 0xa0(r1) +/* 801E7568 001E44C8 F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0 +/* 801E756C 001E44CC DB C1 00 90 */ stfd f30, 0x90(r1) +/* 801E7570 001E44D0 F3 C1 00 98 */ psq_st f30, 152(r1), 0, qr0 +/* 801E7574 001E44D4 DB A1 00 80 */ stfd f29, 0x80(r1) +/* 801E7578 001E44D8 F3 A1 00 88 */ psq_st f29, 136(r1), 0, qr0 +/* 801E757C 001E44DC BE E1 00 5C */ stmw r23, 0x5c(r1) +/* 801E7580 001E44E0 7C B9 2B 78 */ mr r25, r5 +/* 801E7584 001E44E4 3C A0 80 57 */ lis r5, lbl_8056C9EC@ha +/* 801E7588 001E44E8 83 79 02 18 */ lwz r27, 0x218(r25) +/* 801E758C 001E44EC 38 A5 C9 EC */ addi r5, r5, lbl_8056C9EC@l +/* 801E7590 001E44F0 90 C1 00 08 */ stw r6, 8(r1) +/* 801E7594 001E44F4 7C 77 1B 78 */ mr r23, r3 +/* 801E7598 001E44F8 2C 1B 00 00 */ cmpwi r27, 0 +/* 801E759C 001E44FC 7C 98 23 78 */ mr r24, r4 +/* 801E75A0 001E4500 3B 85 00 04 */ addi r28, r5, 4 +/* 801E75A4 001E4504 40 81 01 90 */ ble lbl_801E7734 +/* 801E75A8 001E4508 28 1C 00 00 */ cmplwi r28, 0 +/* 801E75AC 001E450C 41 82 01 88 */ beq lbl_801E7734 +/* 801E75B0 001E4510 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801E75B4 001E4514 3B 40 00 00 */ li r26, 0 +/* 801E75B8 001E4518 3B C3 66 A0 */ addi r30, r3, skZero3f@l +/* 801E75BC 001E451C 48 00 01 70 */ b lbl_801E772C +lbl_801E75C0: +/* 801E75C0 001E4520 A0 1C 00 18 */ lhz r0, 0x18(r28) +/* 801E75C4 001E4524 80 7C 00 30 */ lwz r3, 0x30(r28) +/* 801E75C8 001E4528 2C 00 00 08 */ cmpwi r0, 8 +/* 801E75CC 001E452C 40 82 01 58 */ bne lbl_801E7724 +/* 801E75D0 001E4530 2C 03 FF FF */ cmpwi r3, -1 +/* 801E75D4 001E4534 41 82 00 10 */ beq lbl_801E75E4 +/* 801E75D8 001E4538 80 19 02 04 */ lwz r0, 0x204(r25) +/* 801E75DC 001E453C 7C 03 00 00 */ cmpw r3, r0 +/* 801E75E0 001E4540 40 82 01 44 */ bne lbl_801E7724 +lbl_801E75E4: +/* 801E75E4 001E4544 83 FC 00 38 */ lwz r31, 0x38(r28) +/* 801E75E8 001E4548 83 B7 00 04 */ lwz r29, 4(r23) +/* 801E75EC 001E454C 57 E3 04 3E */ clrlwi r3, r31, 0x10 +/* 801E75F0 001E4550 48 10 13 C1 */ bl TranslateSFXID__11CSfxManagerFUs +/* 801E75F4 001E4554 57 E0 00 01 */ rlwinm. r0, r31, 0, 0, 0 +/* 801E75F8 001E4558 7C 7F 1B 78 */ mr r31, r3 +/* 801E75FC 001E455C 40 82 01 28 */ bne lbl_801E7724 +/* 801E7600 001E4560 80 D8 08 4C */ lwz r6, 0x84c(r24) +/* 801E7604 001E4564 7E E4 BB 78 */ mr r4, r23 +/* 801E7608 001E4568 38 61 00 10 */ addi r3, r1, 0x10 +/* 801E760C 001E456C 38 A1 00 1C */ addi r5, r1, 0x1c +/* 801E7610 001E4570 C0 46 00 60 */ lfs f2, 0x60(r6) +/* 801E7614 001E4574 C0 26 00 50 */ lfs f1, 0x50(r6) +/* 801E7618 001E4578 C0 06 00 40 */ lfs f0, 0x40(r6) +/* 801E761C 001E457C D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801E7620 001E4580 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 801E7624 001E4584 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 801E7628 001E4588 48 00 01 39 */ bl FindClosestCell__17CWallCrawlerSwarmCFRC9CVector3f +/* 801E762C 001E458C 88 0D A4 D8 */ lbz r0, lbl_805A9098@sda21(r13) +/* 801E7630 001E4590 C3 E1 00 10 */ lfs f31, 0x10(r1) +/* 801E7634 001E4594 7C 00 07 75 */ extsb. r0, r0 +/* 801E7638 001E4598 C3 C1 00 14 */ lfs f30, 0x14(r1) +/* 801E763C 001E459C C3 A1 00 18 */ lfs f29, 0x18(r1) +/* 801E7640 001E45A0 40 82 00 14 */ bne lbl_801E7654 +/* 801E7644 001E45A4 C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 801E7648 001E45A8 38 00 00 01 */ li r0, 1 +/* 801E764C 001E45AC 98 0D A4 D8 */ stb r0, lbl_805A9098@sda21(r13) +/* 801E7650 001E45B0 D0 0D A4 D4 */ stfs f0, lbl_805A9094@sda21(r13) +lbl_801E7654: +/* 801E7654 001E45B4 88 0D A4 E0 */ lbz r0, lbl_805A90A0@sda21(r13) +/* 801E7658 001E45B8 7C 00 07 75 */ extsb. r0, r0 +/* 801E765C 001E45BC 40 82 00 14 */ bne lbl_801E7670 +/* 801E7660 001E45C0 C0 1C 00 3C */ lfs f0, 0x3c(r28) +/* 801E7664 001E45C4 38 00 00 01 */ li r0, 1 +/* 801E7668 001E45C8 98 0D A4 E0 */ stb r0, lbl_805A90A0@sda21(r13) +/* 801E766C 001E45CC D0 0D A4 DC */ stfs f0, lbl_805A909C@sda21(r13) +lbl_801E7670: +/* 801E7670 001E45D0 38 81 00 08 */ addi r4, r1, 8 +/* 801E7674 001E45D4 38 6D 92 5C */ addi r3, r13, lbl_805A7E1C@sda21 +/* 801E7678 001E45D8 38 AD 92 60 */ addi r5, r13, lbl_805A7E20@sda21 +/* 801E767C 001E45DC 4B E7 29 E9 */ bl "Clamp__5CMathFRCiRCiRCi" +/* 801E7680 001E45E0 81 83 00 00 */ lwz r12, 0(r3) +/* 801E7684 001E45E4 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801E7688 001E45E8 C0 A2 AD A0 */ lfs f5, lbl_805ACAC0@sda21(r2) +/* 801E768C 001E45EC 39 40 00 00 */ li r10, 0 +/* 801E7690 001E45F0 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 801E7694 001E45F4 B1 41 00 4C */ sth r10, 0x4c(r1) +/* 801E7698 001E45F8 C0 8D A4 D4 */ lfs f4, lbl_805A9094@sda21(r13) +/* 801E769C 001E45FC 39 60 00 01 */ li r11, 1 +/* 801E76A0 001E4600 D0 A1 00 28 */ stfs f5, 0x28(r1) +/* 801E76A4 001E4604 39 20 00 14 */ li r9, 0x14 +/* 801E76A8 001E4608 C0 6D A4 DC */ lfs f3, lbl_805A909C@sda21(r13) +/* 801E76AC 001E460C 7F A8 EB 78 */ mr r8, r29 +/* 801E76B0 001E4610 D0 A1 00 2C */ stfs f5, 0x2c(r1) +/* 801E76B4 001E4614 38 61 00 0C */ addi r3, r1, 0xc +/* 801E76B8 001E4618 88 02 CC 41 */ lbz r0, lbl_805AE961@sda21(r2) +/* 801E76BC 001E461C 38 A0 00 01 */ li r5, 1 +/* 801E76C0 001E4620 D0 A1 00 30 */ stfs f5, 0x30(r1) +/* 801E76C4 001E4624 38 E0 00 00 */ li r7, 0 +/* 801E76C8 001E4628 C0 44 00 00 */ lfs f2, 0(r4) +/* 801E76CC 001E462C 38 81 00 28 */ addi r4, r1, 0x28 +/* 801E76D0 001E4630 D0 A1 00 34 */ stfs f5, 0x34(r1) +/* 801E76D4 001E4634 C0 3E 00 04 */ lfs f1, 4(r30) +/* 801E76D8 001E4638 D0 A1 00 38 */ stfs f5, 0x38(r1) +/* 801E76DC 001E463C C0 1E 00 08 */ lfs f0, 8(r30) +/* 801E76E0 001E4640 D0 A1 00 3C */ stfs f5, 0x3c(r1) +/* 801E76E4 001E4644 A8 C2 C5 FA */ lha r6, lbl_805AE31A@sda21(r2) +/* 801E76E8 001E4648 D0 81 00 40 */ stfs f4, 0x40(r1) +/* 801E76EC 001E464C D0 61 00 44 */ stfs f3, 0x44(r1) +/* 801E76F0 001E4650 91 61 00 48 */ stw r11, 0x48(r1) +/* 801E76F4 001E4654 99 81 00 4E */ stb r12, 0x4e(r1) +/* 801E76F8 001E4658 99 21 00 4F */ stb r9, 0x4f(r1) +/* 801E76FC 001E465C 99 41 00 50 */ stb r10, 0x50(r1) +/* 801E7700 001E4660 98 01 00 51 */ stb r0, 0x51(r1) +/* 801E7704 001E4664 D3 E1 00 28 */ stfs f31, 0x28(r1) +/* 801E7708 001E4668 D3 C1 00 2C */ stfs f30, 0x2c(r1) +/* 801E770C 001E466C D3 A1 00 30 */ stfs f29, 0x30(r1) +/* 801E7710 001E4670 D0 41 00 34 */ stfs f2, 0x34(r1) +/* 801E7714 001E4674 D0 21 00 38 */ stfs f1, 0x38(r1) +/* 801E7718 001E4678 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 801E771C 001E467C B3 E1 00 4C */ sth r31, 0x4c(r1) +/* 801E7720 001E4680 48 10 28 C1 */ bl AddEmitter__11CSfxManagerFRQ29CAudioSys18C3DEmitterParmDatabsbi +lbl_801E7724: +/* 801E7724 001E4684 3B 9C 00 44 */ addi r28, r28, 0x44 +/* 801E7728 001E4688 3B 5A 00 01 */ addi r26, r26, 1 +lbl_801E772C: +/* 801E772C 001E468C 7C 1A D8 00 */ cmpw r26, r27 +/* 801E7730 001E4690 41 80 FE 90 */ blt lbl_801E75C0 +lbl_801E7734: +/* 801E7734 001E4694 E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0 +/* 801E7738 001E4698 CB E1 00 A0 */ lfd f31, 0xa0(r1) +/* 801E773C 001E469C E3 C1 00 98 */ psq_l f30, 152(r1), 0, qr0 +/* 801E7740 001E46A0 CB C1 00 90 */ lfd f30, 0x90(r1) +/* 801E7744 001E46A4 E3 A1 00 88 */ psq_l f29, 136(r1), 0, qr0 +/* 801E7748 001E46A8 CB A1 00 80 */ lfd f29, 0x80(r1) +/* 801E774C 001E46AC BA E1 00 5C */ lmw r23, 0x5c(r1) +/* 801E7750 001E46B0 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 801E7754 001E46B4 7C 08 03 A6 */ mtlr r0 +/* 801E7758 001E46B8 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 801E775C 001E46BC 4E 80 00 20 */ blr + +.global FindClosestCell__17CWallCrawlerSwarmCFRC9CVector3f +FindClosestCell__17CWallCrawlerSwarmCFRC9CVector3f: +/* 801E7760 001E46C0 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 801E7764 001E46C4 7C 08 02 A6 */ mflr r0 +/* 801E7768 001E46C8 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 801E776C 001E46CC DB E1 00 D0 */ stfd f31, 0xd0(r1) +/* 801E7770 001E46D0 F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 +/* 801E7774 001E46D4 DB C1 00 C0 */ stfd f30, 0xc0(r1) +/* 801E7778 001E46D8 F3 C1 00 C8 */ psq_st f30, 200(r1), 0, qr0 +/* 801E777C 001E46DC DB A1 00 B0 */ stfd f29, 0xb0(r1) +/* 801E7780 001E46E0 F3 A1 00 B8 */ psq_st f29, 184(r1), 0, qr0 +/* 801E7784 001E46E4 DB 81 00 A0 */ stfd f28, 0xa0(r1) +/* 801E7788 001E46E8 F3 81 00 A8 */ psq_st f28, 168(r1), 0, qr0 +/* 801E778C 001E46EC DB 61 00 90 */ stfd f27, 0x90(r1) +/* 801E7790 001E46F0 F3 61 00 98 */ psq_st f27, 152(r1), 0, qr0 +/* 801E7794 001E46F4 BE C1 00 68 */ stmw r22, 0x68(r1) +/* 801E7798 001E46F8 3C C0 80 5A */ lis r6, skZero3f@ha +/* 801E779C 001E46FC 7C 97 23 78 */ mr r23, r4 +/* 801E77A0 001E4700 38 86 66 A0 */ addi r4, r6, skZero3f@l +/* 801E77A4 001E4704 C3 82 AD A4 */ lfs f28, lbl_805ACAC4@sda21(r2) +/* 801E77A8 001E4708 C3 E4 00 00 */ lfs f31, 0(r4) +/* 801E77AC 001E470C 7C 76 1B 78 */ mr r22, r3 +/* 801E77B0 001E4710 C3 C4 00 04 */ lfs f30, 4(r4) +/* 801E77B4 001E4714 7C B8 2B 78 */ mr r24, r5 +/* 801E77B8 001E4718 C3 A4 00 08 */ lfs f29, 8(r4) +/* 801E77BC 001E471C 3B 57 01 6C */ addi r26, r23, 0x16c +/* 801E77C0 001E4720 3B 80 00 00 */ li r28, 0 +lbl_801E77C4: +/* 801E77C4 001E4724 7F 9B E3 78 */ mr r27, r28 +/* 801E77C8 001E4728 3B A0 00 00 */ li r29, 0 +lbl_801E77CC: +/* 801E77CC 001E472C 7F 7E DB 78 */ mr r30, r27 +/* 801E77D0 001E4730 57 7F 10 3A */ slwi r31, r27, 2 +/* 801E77D4 001E4734 3B 20 00 00 */ li r25, 0 +lbl_801E77D8: +/* 801E77D8 001E4738 7C 1A F8 2E */ lwzx r0, r26, r31 +/* 801E77DC 001E473C 28 00 00 00 */ cmplwi r0, 0 +/* 801E77E0 001E4740 41 82 00 C4 */ beq lbl_801E78A4 +/* 801E77E4 001E4744 C0 22 AD A8 */ lfs f1, lbl_805ACAC8@sda21(r2) +/* 801E77E8 001E4748 7E E4 BB 78 */ mr r4, r23 +/* 801E77EC 001E474C 7F 85 E3 78 */ mr r5, r28 +/* 801E77F0 001E4750 7F A6 EB 78 */ mr r6, r29 +/* 801E77F4 001E4754 7F 27 CB 78 */ mr r7, r25 +/* 801E77F8 001E4758 38 61 00 2C */ addi r3, r1, 0x2c +/* 801E77FC 001E475C 48 00 27 C5 */ bl BoxForPosition__17CWallCrawlerSwarmCFiiif +/* 801E7800 001E4760 C0 A1 00 2C */ lfs f5, 0x2c(r1) +/* 801E7804 001E4764 38 61 00 14 */ addi r3, r1, 0x14 +/* 801E7808 001E4768 C0 81 00 30 */ lfs f4, 0x30(r1) +/* 801E780C 001E476C 38 81 00 44 */ addi r4, r1, 0x44 +/* 801E7810 001E4770 C0 61 00 34 */ lfs f3, 0x34(r1) +/* 801E7814 001E4774 C0 41 00 38 */ lfs f2, 0x38(r1) +/* 801E7818 001E4778 C0 21 00 3C */ lfs f1, 0x3c(r1) +/* 801E781C 001E477C C0 01 00 40 */ lfs f0, 0x40(r1) +/* 801E7820 001E4780 D0 A1 00 44 */ stfs f5, 0x44(r1) +/* 801E7824 001E4784 D0 81 00 48 */ stfs f4, 0x48(r1) +/* 801E7828 001E4788 D0 61 00 4C */ stfs f3, 0x4c(r1) +/* 801E782C 001E478C D0 41 00 50 */ stfs f2, 0x50(r1) +/* 801E7830 001E4790 D0 21 00 54 */ stfs f1, 0x54(r1) +/* 801E7834 001E4794 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 801E7838 001E4798 48 14 FD D5 */ bl GetCenterPoint__6CAABoxCFv +/* 801E783C 001E479C C0 41 00 18 */ lfs f2, 0x18(r1) +/* 801E7840 001E47A0 C0 18 00 04 */ lfs f0, 4(r24) +/* 801E7844 001E47A4 C0 21 00 14 */ lfs f1, 0x14(r1) +/* 801E7848 001E47A8 EC 82 00 28 */ fsubs f4, f2, f0 +/* 801E784C 001E47AC C0 18 00 00 */ lfs f0, 0(r24) +/* 801E7850 001E47B0 C0 61 00 1C */ lfs f3, 0x1c(r1) +/* 801E7854 001E47B4 EC 41 00 28 */ fsubs f2, f1, f0 +/* 801E7858 001E47B8 C0 38 00 08 */ lfs f1, 8(r24) +/* 801E785C 001E47BC EC 04 01 32 */ fmuls f0, f4, f4 +/* 801E7860 001E47C0 EC 63 08 28 */ fsubs f3, f3, f1 +/* 801E7864 001E47C4 D0 81 00 24 */ stfs f4, 0x24(r1) +/* 801E7868 001E47C8 EC 22 00 B2 */ fmuls f1, f2, f2 +/* 801E786C 001E47CC D0 41 00 20 */ stfs f2, 0x20(r1) +/* 801E7870 001E47D0 EC 43 00 F2 */ fmuls f2, f3, f3 +/* 801E7874 001E47D4 EC 01 00 2A */ fadds f0, f1, f0 +/* 801E7878 001E47D8 D0 61 00 28 */ stfs f3, 0x28(r1) +/* 801E787C 001E47DC EF 62 00 2A */ fadds f27, f2, f0 +/* 801E7880 001E47E0 FC 1B E0 40 */ fcmpo cr0, f27, f28 +/* 801E7884 001E47E4 40 80 00 20 */ bge lbl_801E78A4 +/* 801E7888 001E47E8 38 61 00 08 */ addi r3, r1, 8 +/* 801E788C 001E47EC 38 81 00 44 */ addi r4, r1, 0x44 +/* 801E7890 001E47F0 48 14 FD 7D */ bl GetCenterPoint__6CAABoxCFv +/* 801E7894 001E47F4 FF 80 D8 90 */ fmr f28, f27 +/* 801E7898 001E47F8 C3 E1 00 08 */ lfs f31, 8(r1) +/* 801E789C 001E47FC C3 C1 00 0C */ lfs f30, 0xc(r1) +/* 801E78A0 001E4800 C3 A1 00 10 */ lfs f29, 0x10(r1) +lbl_801E78A4: +/* 801E78A4 001E4804 3B 39 00 01 */ addi r25, r25, 1 +/* 801E78A8 001E4808 3B FF 00 64 */ addi r31, r31, 0x64 +/* 801E78AC 001E480C 2C 19 00 05 */ cmpwi r25, 5 +/* 801E78B0 001E4810 3B DE 00 19 */ addi r30, r30, 0x19 +/* 801E78B4 001E4814 41 80 FF 24 */ blt lbl_801E77D8 +/* 801E78B8 001E4818 3B BD 00 01 */ addi r29, r29, 1 +/* 801E78BC 001E481C 3B 7B 00 05 */ addi r27, r27, 5 +/* 801E78C0 001E4820 2C 1D 00 05 */ cmpwi r29, 5 +/* 801E78C4 001E4824 41 80 FF 08 */ blt lbl_801E77CC +/* 801E78C8 001E4828 3B 9C 00 01 */ addi r28, r28, 1 +/* 801E78CC 001E482C 2C 1C 00 05 */ cmpwi r28, 5 +/* 801E78D0 001E4830 41 80 FE F4 */ blt lbl_801E77C4 +/* 801E78D4 001E4834 D3 F6 00 00 */ stfs f31, 0(r22) +/* 801E78D8 001E4838 D3 D6 00 04 */ stfs f30, 4(r22) +/* 801E78DC 001E483C D3 B6 00 08 */ stfs f29, 8(r22) +/* 801E78E0 001E4840 E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 +/* 801E78E4 001E4844 CB E1 00 D0 */ lfd f31, 0xd0(r1) +/* 801E78E8 001E4848 E3 C1 00 C8 */ psq_l f30, 200(r1), 0, qr0 +/* 801E78EC 001E484C CB C1 00 C0 */ lfd f30, 0xc0(r1) +/* 801E78F0 001E4850 E3 A1 00 B8 */ psq_l f29, 184(r1), 0, qr0 +/* 801E78F4 001E4854 CB A1 00 B0 */ lfd f29, 0xb0(r1) +/* 801E78F8 001E4858 E3 81 00 A8 */ psq_l f28, 168(r1), 0, qr0 +/* 801E78FC 001E485C CB 81 00 A0 */ lfd f28, 0xa0(r1) +/* 801E7900 001E4860 E3 61 00 98 */ psq_l f27, 152(r1), 0, qr0 +/* 801E7904 001E4864 CB 61 00 90 */ lfd f27, 0x90(r1) +/* 801E7908 001E4868 BA C1 00 68 */ lmw r22, 0x68(r1) +/* 801E790C 001E486C 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 801E7910 001E4870 7C 08 03 A6 */ mtlr r0 +/* 801E7914 001E4874 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 801E7918 001E4878 4E 80 00 20 */ blr + +.global FreezeCollision__17CWallCrawlerSwarmFRC11CMarkerGridf +FreezeCollision__17CWallCrawlerSwarmFRC11CMarkerGridf: +/* 801E791C 001E487C 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 801E7920 001E4880 7C 08 02 A6 */ mflr r0 +/* 801E7924 001E4884 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 801E7928 001E4888 DB E1 00 90 */ stfd f31, 0x90(r1) +/* 801E792C 001E488C F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 +/* 801E7930 001E4890 DB C1 00 80 */ stfd f30, 0x80(r1) +/* 801E7934 001E4894 F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 +/* 801E7938 001E4898 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 801E793C 001E489C 93 C1 00 78 */ stw r30, 0x78(r1) +/* 801E7940 001E48A0 93 A1 00 74 */ stw r29, 0x74(r1) +/* 801E7944 001E48A4 7C 7D 1B 78 */ mr r29, r3 +/* 801E7948 001E48A8 C0 22 AD AC */ lfs f1, lbl_805ACACC@sda21(r2) +/* 801E794C 001E48AC C0 43 03 78 */ lfs f2, 0x378(r3) +/* 801E7950 001E48B0 7C 9E 23 78 */ mr r30, r4 +/* 801E7954 001E48B4 C0 02 AD B0 */ lfs f0, lbl_805ACAD0@sda21(r2) +/* 801E7958 001E48B8 EC 42 00 B2 */ fmuls f2, f2, f2 +/* 801E795C 001E48BC 83 E3 01 14 */ lwz r31, 0x114(r3) +/* 801E7960 001E48C0 EF E1 10 2A */ fadds f31, f1, f2 +/* 801E7964 001E48C4 EF C0 10 2A */ fadds f30, f0, f2 +/* 801E7968 001E48C8 48 00 00 C8 */ b lbl_801E7A30 +lbl_801E796C: +/* 801E796C 001E48CC 88 1F 00 80 */ lbz r0, 0x80(r31) +/* 801E7970 001E48D0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801E7974 001E48D4 41 82 00 B8 */ beq lbl_801E7A2C +/* 801E7978 001E48D8 C1 1F 00 2C */ lfs f8, 0x2c(r31) +/* 801E797C 001E48DC 38 61 00 38 */ addi r3, r1, 0x38 +/* 801E7980 001E48E0 C0 FF 00 1C */ lfs f7, 0x1c(r31) +/* 801E7984 001E48E4 38 81 00 2C */ addi r4, r1, 0x2c +/* 801E7988 001E48E8 C0 5F 00 0C */ lfs f2, 0xc(r31) +/* 801E798C 001E48EC EC A8 F0 2A */ fadds f5, f8, f30 +/* 801E7990 001E48F0 EC C7 F8 2A */ fadds f6, f7, f31 +/* 801E7994 001E48F4 D0 E1 00 0C */ stfs f7, 0xc(r1) +/* 801E7998 001E48F8 EC 22 F8 2A */ fadds f1, f2, f31 +/* 801E799C 001E48FC 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801E79A0 001E4900 EC 87 F8 28 */ fsubs f4, f7, f31 +/* 801E79A4 001E4904 EC 68 F0 28 */ fsubs f3, f8, f30 +/* 801E79A8 001E4908 EC 02 F8 28 */ fsubs f0, f2, f31 +/* 801E79AC 001E490C D0 41 00 08 */ stfs f2, 8(r1) +/* 801E79B0 001E4910 D1 01 00 10 */ stfs f8, 0x10(r1) +/* 801E79B4 001E4914 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 801E79B8 001E4918 D0 C1 00 18 */ stfs f6, 0x18(r1) +/* 801E79BC 001E491C D0 A1 00 1C */ stfs f5, 0x1c(r1) +/* 801E79C0 001E4920 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 801E79C4 001E4924 D0 E1 00 24 */ stfs f7, 0x24(r1) +/* 801E79C8 001E4928 D1 01 00 28 */ stfs f8, 0x28(r1) +/* 801E79CC 001E492C D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801E79D0 001E4930 D0 81 00 30 */ stfs f4, 0x30(r1) +/* 801E79D4 001E4934 D0 61 00 34 */ stfs f3, 0x34(r1) +/* 801E79D8 001E4938 48 15 0B 31 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801E79DC 001E493C C0 A1 00 38 */ lfs f5, 0x38(r1) +/* 801E79E0 001E4940 7F C3 F3 78 */ mr r3, r30 +/* 801E79E4 001E4944 C0 81 00 3C */ lfs f4, 0x3c(r1) +/* 801E79E8 001E4948 38 81 00 50 */ addi r4, r1, 0x50 +/* 801E79EC 001E494C C0 61 00 40 */ lfs f3, 0x40(r1) +/* 801E79F0 001E4950 38 A0 00 01 */ li r5, 1 +/* 801E79F4 001E4954 C0 41 00 44 */ lfs f2, 0x44(r1) +/* 801E79F8 001E4958 C0 21 00 48 */ lfs f1, 0x48(r1) +/* 801E79FC 001E495C C0 01 00 4C */ lfs f0, 0x4c(r1) +/* 801E7A00 001E4960 D0 A1 00 50 */ stfs f5, 0x50(r1) +/* 801E7A04 001E4964 D0 81 00 54 */ stfs f4, 0x54(r1) +/* 801E7A08 001E4968 D0 61 00 58 */ stfs f3, 0x58(r1) +/* 801E7A0C 001E496C D0 41 00 5C */ stfs f2, 0x5c(r1) +/* 801E7A10 001E4970 D0 21 00 60 */ stfs f1, 0x60(r1) +/* 801E7A14 001E4974 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 801E7A18 001E4978 4B FD 05 A9 */ bl AABoxTouchesData__11CMarkerGridCFRC6CAABoxUi +/* 801E7A1C 001E497C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E7A20 001E4980 41 82 00 0C */ beq lbl_801E7A2C +/* 801E7A24 001E4984 C0 02 AD B4 */ lfs f0, lbl_805ACAD4@sda21(r2) +/* 801E7A28 001E4988 D0 1F 00 48 */ stfs f0, 0x48(r31) +lbl_801E7A2C: +/* 801E7A2C 001E498C 3B FF 00 84 */ addi r31, r31, 0x84 +lbl_801E7A30: +/* 801E7A30 001E4990 80 1D 01 0C */ lwz r0, 0x10c(r29) +/* 801E7A34 001E4994 80 7D 01 14 */ lwz r3, 0x114(r29) +/* 801E7A38 001E4998 1C 00 00 84 */ mulli r0, r0, 0x84 +/* 801E7A3C 001E499C 7C 03 02 14 */ add r0, r3, r0 +/* 801E7A40 001E49A0 7C 1F 00 40 */ cmplw r31, r0 +/* 801E7A44 001E49A4 40 82 FF 28 */ bne lbl_801E796C +/* 801E7A48 001E49A8 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 +/* 801E7A4C 001E49AC CB E1 00 90 */ lfd f31, 0x90(r1) +/* 801E7A50 001E49B0 E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 +/* 801E7A54 001E49B4 CB C1 00 80 */ lfd f30, 0x80(r1) +/* 801E7A58 001E49B8 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 801E7A5C 001E49BC 83 C1 00 78 */ lwz r30, 0x78(r1) +/* 801E7A60 001E49C0 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 801E7A64 001E49C4 83 A1 00 74 */ lwz r29, 0x74(r1) +/* 801E7A68 001E49C8 7C 08 03 A6 */ mtlr r0 +/* 801E7A6C 001E49CC 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 801E7A70 001E49D0 4E 80 00 20 */ blr + +.global RenderParticles__17CWallCrawlerSwarmCFv +RenderParticles__17CWallCrawlerSwarmCFv: +/* 801E7A74 001E49D4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801E7A78 001E49D8 7C 08 02 A6 */ mflr r0 +/* 801E7A7C 001E49DC 90 01 00 24 */ stw r0, 0x24(r1) +/* 801E7A80 001E49E0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801E7A84 001E49E4 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801E7A88 001E49E8 3B C0 00 00 */ li r30, 0 +/* 801E7A8C 001E49EC 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801E7A90 001E49F0 7C 7D 1B 78 */ mr r29, r3 +/* 801E7A94 001E49F4 3B FD 05 28 */ addi r31, r29, 0x528 +/* 801E7A98 001E49F8 48 00 00 24 */ b lbl_801E7ABC +lbl_801E7A9C: +/* 801E7A9C 001E49FC 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801E7AA0 001E4A00 80 9F 00 04 */ lwz r4, 4(r31) +/* 801E7AA4 001E4A04 81 83 00 00 */ lwz r12, 0(r3) +/* 801E7AA8 001E4A08 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801E7AAC 001E4A0C 7D 89 03 A6 */ mtctr r12 +/* 801E7AB0 001E4A10 4E 80 04 21 */ bctrl +/* 801E7AB4 001E4A14 3B FF 00 08 */ addi r31, r31, 8 +/* 801E7AB8 001E4A18 3B DE 00 01 */ addi r30, r30, 1 +lbl_801E7ABC: +/* 801E7ABC 001E4A1C 80 1D 05 24 */ lwz r0, 0x524(r29) +/* 801E7AC0 001E4A20 7C 1E 00 00 */ cmpw r30, r0 +/* 801E7AC4 001E4A24 41 80 FF D8 */ blt lbl_801E7A9C +/* 801E7AC8 001E4A28 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801E7ACC 001E4A2C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801E7AD0 001E4A30 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801E7AD4 001E4A34 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801E7AD8 001E4A38 7C 08 03 A6 */ mtlr r0 +/* 801E7ADC 001E4A3C 38 21 00 20 */ addi r1, r1, 0x20 +/* 801E7AE0 001E4A40 4E 80 00 20 */ blr + +.global UpdateParticles__17CWallCrawlerSwarmFf +UpdateParticles__17CWallCrawlerSwarmFf: +/* 801E7AE4 001E4A44 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801E7AE8 001E4A48 7C 08 02 A6 */ mflr r0 +/* 801E7AEC 001E4A4C 90 01 00 24 */ stw r0, 0x24(r1) +/* 801E7AF0 001E4A50 DB E1 00 18 */ stfd f31, 0x18(r1) +/* 801E7AF4 001E4A54 FF E0 08 90 */ fmr f31, f1 +/* 801E7AF8 001E4A58 93 E1 00 14 */ stw r31, 0x14(r1) +/* 801E7AFC 001E4A5C 93 C1 00 10 */ stw r30, 0x10(r1) +/* 801E7B00 001E4A60 3B C0 00 00 */ li r30, 0 +/* 801E7B04 001E4A64 93 A1 00 0C */ stw r29, 0xc(r1) +/* 801E7B08 001E4A68 7C 7D 1B 78 */ mr r29, r3 +/* 801E7B0C 001E4A6C 3B FD 05 28 */ addi r31, r29, 0x528 +/* 801E7B10 001E4A70 48 00 00 24 */ b lbl_801E7B34 +lbl_801E7B14: +/* 801E7B14 001E4A74 80 7F 00 04 */ lwz r3, 4(r31) +/* 801E7B18 001E4A78 FC 20 F8 90 */ fmr f1, f31 +/* 801E7B1C 001E4A7C 81 83 00 00 */ lwz r12, 0(r3) +/* 801E7B20 001E4A80 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801E7B24 001E4A84 7D 89 03 A6 */ mtctr r12 +/* 801E7B28 001E4A88 4E 80 04 21 */ bctrl +/* 801E7B2C 001E4A8C 3B FF 00 08 */ addi r31, r31, 8 +/* 801E7B30 001E4A90 3B DE 00 01 */ addi r30, r30, 1 +lbl_801E7B34: +/* 801E7B34 001E4A94 80 1D 05 24 */ lwz r0, 0x524(r29) +/* 801E7B38 001E4A98 7C 1E 00 00 */ cmpw r30, r0 +/* 801E7B3C 001E4A9C 41 80 FF D8 */ blt lbl_801E7B14 +/* 801E7B40 001E4AA0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801E7B44 001E4AA4 CB E1 00 18 */ lfd f31, 0x18(r1) +/* 801E7B48 001E4AA8 83 E1 00 14 */ lwz r31, 0x14(r1) +/* 801E7B4C 001E4AAC 83 C1 00 10 */ lwz r30, 0x10(r1) +/* 801E7B50 001E4AB0 83 A1 00 0C */ lwz r29, 0xc(r1) +/* 801E7B54 001E4AB4 7C 08 03 A6 */ mtlr r0 +/* 801E7B58 001E4AB8 38 21 00 20 */ addi r1, r1, 0x20 +/* 801E7B5C 001E4ABC 4E 80 00 20 */ blr + +.global AddParticle__17CWallCrawlerSwarmFRC12CTransform4f +AddParticle__17CWallCrawlerSwarmFRC12CTransform4f: +/* 801E7B60 001E4AC0 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801E7B64 001E4AC4 7C 08 02 A6 */ mflr r0 +/* 801E7B68 001E4AC8 3C A0 80 3D */ lis r5, lbl_803D1F20@ha +/* 801E7B6C 001E4ACC 90 01 00 34 */ stw r0, 0x34(r1) +/* 801E7B70 001E4AD0 BF 61 00 1C */ stmw r27, 0x1c(r1) +/* 801E7B74 001E4AD4 7C 7B 1B 78 */ mr r27, r3 +/* 801E7B78 001E4AD8 3B C5 1F 20 */ addi r30, r5, lbl_803D1F20@l +/* 801E7B7C 001E4ADC 7C 9C 23 78 */ mr r28, r4 +/* 801E7B80 001E4AE0 3B FB 05 28 */ addi r31, r27, 0x528 +/* 801E7B84 001E4AE4 3B A0 00 00 */ li r29, 0 +/* 801E7B88 001E4AE8 48 00 00 7C */ b lbl_801E7C04 +lbl_801E7B8C: +/* 801E7B8C 001E4AEC 80 7F 00 04 */ lwz r3, 4(r31) +/* 801E7B90 001E4AF0 38 80 00 01 */ li r4, 1 +/* 801E7B94 001E4AF4 81 83 00 00 */ lwz r12, 0(r3) +/* 801E7B98 001E4AF8 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801E7B9C 001E4AFC 7D 89 03 A6 */ mtctr r12 +/* 801E7BA0 001E4B00 4E 80 04 21 */ bctrl +/* 801E7BA4 001E4B04 C0 5C 00 2C */ lfs f2, 0x2c(r28) +/* 801E7BA8 001E4B08 38 81 00 08 */ addi r4, r1, 8 +/* 801E7BAC 001E4B0C C0 3C 00 1C */ lfs f1, 0x1c(r28) +/* 801E7BB0 001E4B10 C0 1C 00 0C */ lfs f0, 0xc(r28) +/* 801E7BB4 001E4B14 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 801E7BB8 001E4B18 D0 01 00 08 */ stfs f0, 8(r1) +/* 801E7BBC 001E4B1C D0 41 00 10 */ stfs f2, 0x10(r1) +/* 801E7BC0 001E4B20 80 7F 00 04 */ lwz r3, 4(r31) +/* 801E7BC4 001E4B24 81 83 00 00 */ lwz r12, 0(r3) +/* 801E7BC8 001E4B28 81 8C 00 18 */ lwz r12, 0x18(r12) +/* 801E7BCC 001E4B2C 7D 89 03 A6 */ mtctr r12 +/* 801E7BD0 001E4B30 4E 80 04 21 */ bctrl +/* 801E7BD4 001E4B34 80 7F 00 04 */ lwz r3, 4(r31) +/* 801E7BD8 001E4B38 80 9E 00 00 */ lwz r4, 0(r30) +/* 801E7BDC 001E4B3C 48 13 4C E5 */ bl ForceParticleCreation__11CElementGenFi +/* 801E7BE0 001E4B40 80 7F 00 04 */ lwz r3, 4(r31) +/* 801E7BE4 001E4B44 38 80 00 00 */ li r4, 0 +/* 801E7BE8 001E4B48 81 83 00 00 */ lwz r12, 0(r3) +/* 801E7BEC 001E4B4C 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801E7BF0 001E4B50 7D 89 03 A6 */ mtctr r12 +/* 801E7BF4 001E4B54 4E 80 04 21 */ bctrl +/* 801E7BF8 001E4B58 3B FF 00 08 */ addi r31, r31, 8 +/* 801E7BFC 001E4B5C 3B DE 00 04 */ addi r30, r30, 4 +/* 801E7C00 001E4B60 3B BD 00 01 */ addi r29, r29, 1 +lbl_801E7C04: +/* 801E7C04 001E4B64 80 1B 05 24 */ lwz r0, 0x524(r27) +/* 801E7C08 001E4B68 7C 1D 00 00 */ cmpw r29, r0 +/* 801E7C0C 001E4B6C 41 80 FF 80 */ blt lbl_801E7B8C +/* 801E7C10 001E4B70 BB 61 00 1C */ lmw r27, 0x1c(r1) +/* 801E7C14 001E4B74 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801E7C18 001E4B78 7C 08 03 A6 */ mtlr r0 +/* 801E7C1C 001E4B7C 38 21 00 30 */ addi r1, r1, 0x30 +/* 801E7C20 001E4B80 4E 80 00 20 */ blr + +.global KillBoid__17CWallCrawlerSwarmFRQ217CWallCrawlerSwarm5CBoidR13CStateManagerff +KillBoid__17CWallCrawlerSwarmFRQ217CWallCrawlerSwarm5CBoidR13CStateManagerff: +/* 801E7C24 001E4B84 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801E7C28 001E4B88 7C 08 02 A6 */ mflr r0 +/* 801E7C2C 001E4B8C 90 01 00 54 */ stw r0, 0x54(r1) +/* 801E7C30 001E4B90 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 801E7C34 001E4B94 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 801E7C38 001E4B98 DB C1 00 30 */ stfd f30, 0x30(r1) +/* 801E7C3C 001E4B9C F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 +/* 801E7C40 001E4BA0 DB A1 00 20 */ stfd f29, 0x20(r1) +/* 801E7C44 001E4BA4 F3 A1 00 28 */ psq_st f29, 40(r1), 0, qr0 +/* 801E7C48 001E4BA8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801E7C4C 001E4BAC 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801E7C50 001E4BB0 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801E7C54 001E4BB4 7C 9E 23 78 */ mr r30, r4 +/* 801E7C58 001E4BB8 7C 7D 1B 78 */ mr r29, r3 +/* 801E7C5C 001E4BBC C0 64 00 2C */ lfs f3, 0x2c(r4) +/* 801E7C60 001E4BC0 FF A0 08 90 */ fmr f29, f1 +/* 801E7C64 001E4BC4 C0 24 00 1C */ lfs f1, 0x1c(r4) +/* 801E7C68 001E4BC8 FF C0 10 90 */ fmr f30, f2 +/* 801E7C6C 001E4BCC C0 04 00 0C */ lfs f0, 0xc(r4) +/* 801E7C70 001E4BD0 7C BF 2B 78 */ mr r31, r5 +/* 801E7C74 001E4BD4 D0 03 01 30 */ stfs f0, 0x130(r3) +/* 801E7C78 001E4BD8 D0 23 01 34 */ stfs f1, 0x134(r3) +/* 801E7C7C 001E4BDC D0 63 01 38 */ stfs f3, 0x138(r3) +/* 801E7C80 001E4BE0 4B FF FE E1 */ bl AddParticle__17CWallCrawlerSwarmFRC12CTransform4f +/* 801E7C84 001E4BE4 88 1E 00 80 */ lbz r0, 0x80(r30) +/* 801E7C88 001E4BE8 38 60 00 00 */ li r3, 0 +/* 801E7C8C 001E4BEC 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801E7C90 001E4BF0 98 1E 00 80 */ stb r0, 0x80(r30) +/* 801E7C94 001E4BF4 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 801E7C98 001E4BF8 48 12 A8 45 */ bl Float__9CRandom16Fv +/* 801E7C9C 001E4BFC FF E0 08 90 */ fmr f31, f1 +/* 801E7CA0 001E4C00 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 801E7CA4 001E4C04 48 12 A8 39 */ bl Float__9CRandom16Fv +/* 801E7CA8 001E4C08 FC 01 E8 40 */ fcmpo cr0, f1, f29 +/* 801E7CAC 001E4C0C 40 80 00 18 */ bge lbl_801E7CC4 +/* 801E7CB0 001E4C10 7F A3 EB 78 */ mr r3, r29 +/* 801E7CB4 001E4C14 7F E5 FB 78 */ mr r5, r31 +/* 801E7CB8 001E4C18 38 80 00 14 */ li r4, 0x14 +/* 801E7CBC 001E4C1C 38 C0 FF FF */ li r6, -1 +/* 801E7CC0 001E4C20 4B E6 94 01 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +lbl_801E7CC4: +/* 801E7CC4 001E4C24 FC 1F F0 40 */ fcmpo cr0, f31, f30 +/* 801E7CC8 001E4C28 40 80 00 18 */ bge lbl_801E7CE0 +/* 801E7CCC 001E4C2C 7F A3 EB 78 */ mr r3, r29 +/* 801E7CD0 001E4C30 7F E5 FB 78 */ mr r5, r31 +/* 801E7CD4 001E4C34 38 80 00 0E */ li r4, 0xe +/* 801E7CD8 001E4C38 38 C0 FF FF */ li r6, -1 +/* 801E7CDC 001E4C3C 4B E6 93 E5 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +lbl_801E7CE0: +/* 801E7CE0 001E4C40 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 801E7CE4 001E4C44 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 801E7CE8 001E4C48 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 +/* 801E7CEC 001E4C4C CB C1 00 30 */ lfd f30, 0x30(r1) +/* 801E7CF0 001E4C50 E3 A1 00 28 */ psq_l f29, 40(r1), 0, qr0 +/* 801E7CF4 001E4C54 CB A1 00 20 */ lfd f29, 0x20(r1) +/* 801E7CF8 001E4C58 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801E7CFC 001E4C5C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801E7D00 001E4C60 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801E7D04 001E4C64 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801E7D08 001E4C68 7C 08 03 A6 */ mtlr r0 +/* 801E7D0C 001E4C6C 38 21 00 50 */ addi r1, r1, 0x50 +/* 801E7D10 001E4C70 4E 80 00 20 */ blr + +.global sub_801e7d14 +sub_801e7d14: +/* 801E7D14 001E4C74 80 04 04 2C */ lwz r0, 0x42c(r4) +/* 801E7D18 001E4C78 2C 00 FF FF */ cmpwi r0, -1 +/* 801E7D1C 001E4C7C 40 82 00 20 */ bne lbl_801E7D3C +/* 801E7D20 001E4C80 C0 04 01 24 */ lfs f0, 0x124(r4) +/* 801E7D24 001E4C84 D0 03 00 00 */ stfs f0, 0(r3) +/* 801E7D28 001E4C88 C0 04 01 28 */ lfs f0, 0x128(r4) +/* 801E7D2C 001E4C8C D0 03 00 04 */ stfs f0, 4(r3) +/* 801E7D30 001E4C90 C0 04 01 2C */ lfs f0, 0x12c(r4) +/* 801E7D34 001E4C94 D0 03 00 08 */ stfs f0, 8(r3) +/* 801E7D38 001E4C98 4E 80 00 20 */ blr +lbl_801E7D3C: +/* 801E7D3C 001E4C9C 1C 00 00 84 */ mulli r0, r0, 0x84 +/* 801E7D40 001E4CA0 80 A4 01 14 */ lwz r5, 0x114(r4) +/* 801E7D44 001E4CA4 7C A5 02 14 */ add r5, r5, r0 +/* 801E7D48 001E4CA8 C0 45 00 2C */ lfs f2, 0x2c(r5) +/* 801E7D4C 001E4CAC C0 25 00 1C */ lfs f1, 0x1c(r5) +/* 801E7D50 001E4CB0 C0 05 00 0C */ lfs f0, 0xc(r5) +/* 801E7D54 001E4CB4 D0 04 01 24 */ stfs f0, 0x124(r4) +/* 801E7D58 001E4CB8 D0 24 01 28 */ stfs f1, 0x128(r4) +/* 801E7D5C 001E4CBC D0 44 01 2C */ stfs f2, 0x12c(r4) +/* 801E7D60 001E4CC0 C0 04 01 24 */ lfs f0, 0x124(r4) +/* 801E7D64 001E4CC4 D0 03 00 00 */ stfs f0, 0(r3) +/* 801E7D68 001E4CC8 C0 04 01 28 */ lfs f0, 0x128(r4) +/* 801E7D6C 001E4CCC D0 03 00 04 */ stfs f0, 4(r3) +/* 801E7D70 001E4CD0 C0 04 01 2C */ lfs f0, 0x12c(r4) +/* 801E7D74 001E4CD4 D0 03 00 08 */ stfs f0, 8(r3) +/* 801E7D78 001E4CD8 4E 80 00 20 */ blr + +.global sub_801e7d7c +sub_801e7d7c: +/* 801E7D7C 001E4CDC 80 04 04 2C */ lwz r0, 0x42c(r4) +/* 801E7D80 001E4CE0 2C 00 FF FF */ cmpwi r0, -1 +/* 801E7D84 001E4CE4 40 82 00 20 */ bne lbl_801E7DA4 +/* 801E7D88 001E4CE8 C0 04 01 24 */ lfs f0, 0x124(r4) +/* 801E7D8C 001E4CEC D0 03 00 00 */ stfs f0, 0(r3) +/* 801E7D90 001E4CF0 C0 04 01 28 */ lfs f0, 0x128(r4) +/* 801E7D94 001E4CF4 D0 03 00 04 */ stfs f0, 4(r3) +/* 801E7D98 001E4CF8 C0 04 01 2C */ lfs f0, 0x12c(r4) +/* 801E7D9C 001E4CFC D0 03 00 08 */ stfs f0, 8(r3) +/* 801E7DA0 001E4D00 4E 80 00 20 */ blr +lbl_801E7DA4: +/* 801E7DA4 001E4D04 1C A0 00 84 */ mulli r5, r0, 0x84 +/* 801E7DA8 001E4D08 80 04 01 14 */ lwz r0, 0x114(r4) +/* 801E7DAC 001E4D0C C0 44 01 24 */ lfs f2, 0x124(r4) +/* 801E7DB0 001E4D10 C0 C4 01 28 */ lfs f6, 0x128(r4) +/* 801E7DB4 001E4D14 38 A5 00 30 */ addi r5, r5, 0x30 +/* 801E7DB8 001E4D18 C0 84 01 2C */ lfs f4, 0x12c(r4) +/* 801E7DBC 001E4D1C 7C A0 2A 14 */ add r5, r0, r5 +/* 801E7DC0 001E4D20 C0 05 00 00 */ lfs f0, 0(r5) +/* 801E7DC4 001E4D24 C0 A5 00 04 */ lfs f5, 4(r5) +/* 801E7DC8 001E4D28 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801E7DCC 001E4D2C C0 65 00 08 */ lfs f3, 8(r5) +/* 801E7DD0 001E4D30 EC A1 01 72 */ fmuls f5, f1, f5 +/* 801E7DD4 001E4D34 EC 21 00 F2 */ fmuls f1, f1, f3 +/* 801E7DD8 001E4D38 EC 02 00 2A */ fadds f0, f2, f0 +/* 801E7DDC 001E4D3C EC 46 28 2A */ fadds f2, f6, f5 +/* 801E7DE0 001E4D40 EC 24 08 2A */ fadds f1, f4, f1 +/* 801E7DE4 001E4D44 D0 03 00 00 */ stfs f0, 0(r3) +/* 801E7DE8 001E4D48 D0 43 00 04 */ stfs f2, 4(r3) +/* 801E7DEC 001E4D4C D0 23 00 08 */ stfs f1, 8(r3) +/* 801E7DF0 001E4D50 4E 80 00 20 */ blr + +.global sub_801e7df4 +sub_801e7df4: +/* 801E7DF4 001E4D54 94 21 FE C0 */ stwu r1, -0x140(r1) +/* 801E7DF8 001E4D58 7C 08 02 A6 */ mflr r0 +/* 801E7DFC 001E4D5C 90 01 01 44 */ stw r0, 0x144(r1) +/* 801E7E00 001E4D60 DB E1 01 30 */ stfd f31, 0x130(r1) +/* 801E7E04 001E4D64 F3 E1 01 38 */ psq_st f31, 312(r1), 0, qr0 +/* 801E7E08 001E4D68 DB C1 01 20 */ stfd f30, 0x120(r1) +/* 801E7E0C 001E4D6C F3 C1 01 28 */ psq_st f30, 296(r1), 0, qr0 +/* 801E7E10 001E4D70 DB A1 01 10 */ stfd f29, 0x110(r1) +/* 801E7E14 001E4D74 F3 A1 01 18 */ psq_st f29, 280(r1), 0, qr0 +/* 801E7E18 001E4D78 DB 81 01 00 */ stfd f28, 0x100(r1) +/* 801E7E1C 001E4D7C F3 81 01 08 */ psq_st f28, 264(r1), 0, qr0 +/* 801E7E20 001E4D80 DB 61 00 F0 */ stfd f27, 0xf0(r1) +/* 801E7E24 001E4D84 F3 61 00 F8 */ psq_st f27, 248(r1), 0, qr0 +/* 801E7E28 001E4D88 93 E1 00 EC */ stw r31, 0xec(r1) +/* 801E7E2C 001E4D8C 93 C1 00 E8 */ stw r30, 0xe8(r1) +/* 801E7E30 001E4D90 93 A1 00 E4 */ stw r29, 0xe4(r1) +/* 801E7E34 001E4D94 93 81 00 E0 */ stw r28, 0xe0(r1) +/* 801E7E38 001E4D98 7C 9C 23 78 */ mr r28, r4 +/* 801E7E3C 001E4D9C 7C 7F 1B 78 */ mr r31, r3 +/* 801E7E40 001E4DA0 80 84 08 70 */ lwz r4, 0x870(r4) +/* 801E7E44 001E4DA4 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 801E7E48 001E4DA8 80 84 00 7C */ lwz r4, 0x7c(r4) +/* 801E7E4C 001E4DAC 38 84 00 34 */ addi r4, r4, 0x34 +/* 801E7E50 001E4DB0 48 12 AD 25 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801E7E54 001E4DB4 80 1F 04 2C */ lwz r0, 0x42c(r31) +/* 801E7E58 001E4DB8 C0 A1 00 D4 */ lfs f5, 0xd4(r1) +/* 801E7E5C 001E4DBC C0 81 00 B4 */ lfs f4, 0xb4(r1) +/* 801E7E60 001E4DC0 2C 00 FF FF */ cmpwi r0, -1 +/* 801E7E64 001E4DC4 C0 61 00 C4 */ lfs f3, 0xc4(r1) +/* 801E7E68 001E4DC8 D0 81 00 38 */ stfs f4, 0x38(r1) +/* 801E7E6C 001E4DCC C3 A1 00 CC */ lfs f29, 0xcc(r1) +/* 801E7E70 001E4DD0 D0 61 00 3C */ stfs f3, 0x3c(r1) +/* 801E7E74 001E4DD4 C3 C1 00 BC */ lfs f30, 0xbc(r1) +/* 801E7E78 001E4DD8 D0 A1 00 40 */ stfs f5, 0x40(r1) +/* 801E7E7C 001E4DDC C3 E1 00 AC */ lfs f31, 0xac(r1) +/* 801E7E80 001E4DE0 41 82 00 F8 */ beq lbl_801E7F78 +/* 801E7E84 001E4DE4 1C 00 00 84 */ mulli r0, r0, 0x84 +/* 801E7E88 001E4DE8 80 7F 01 14 */ lwz r3, 0x114(r31) +/* 801E7E8C 001E4DEC 7C 83 02 14 */ add r4, r3, r0 +/* 801E7E90 001E4DF0 88 04 00 80 */ lbz r0, 0x80(r4) +/* 801E7E94 001E4DF4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801E7E98 001E4DF8 41 82 00 D8 */ beq lbl_801E7F70 +/* 801E7E9C 001E4DFC C0 44 00 1C */ lfs f2, 0x1c(r4) +/* 801E7EA0 001E4E00 38 61 00 2C */ addi r3, r1, 0x2c +/* 801E7EA4 001E4E04 C0 24 00 2C */ lfs f1, 0x2c(r4) +/* 801E7EA8 001E4E08 C0 04 00 0C */ lfs f0, 0xc(r4) +/* 801E7EAC 001E4E0C EC 42 18 28 */ fsubs f2, f2, f3 +/* 801E7EB0 001E4E10 EC 21 28 28 */ fsubs f1, f1, f5 +/* 801E7EB4 001E4E14 EC 00 20 28 */ fsubs f0, f0, f4 +/* 801E7EB8 001E4E18 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 801E7EBC 001E4E1C D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801E7EC0 001E4E20 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 801E7EC4 001E4E24 48 12 C9 F5 */ bl Magnitude__9CVector3fCFv +/* 801E7EC8 001E4E28 FF 60 08 90 */ fmr f27, f1 +/* 801E7ECC 001E4E2C C0 82 AD B4 */ lfs f4, lbl_805ACAD4@sda21(r2) +/* 801E7ED0 001E4E30 C0 61 00 30 */ lfs f3, 0x30(r1) +/* 801E7ED4 001E4E34 C0 41 00 2C */ lfs f2, 0x2c(r1) +/* 801E7ED8 001E4E38 EC A4 D8 24 */ fdivs f5, f4, f27 +/* 801E7EDC 001E4E3C C0 21 00 34 */ lfs f1, 0x34(r1) +/* 801E7EE0 001E4E40 C0 02 AD B8 */ lfs f0, lbl_805ACAD8@sda21(r2) +/* 801E7EE4 001E4E44 EC 85 00 F2 */ fmuls f4, f5, f3 +/* 801E7EE8 001E4E48 EC 65 00 72 */ fmuls f3, f5, f1 +/* 801E7EEC 001E4E4C EC 45 00 B2 */ fmuls f2, f5, f2 +/* 801E7EF0 001E4E50 EC 3E 01 32 */ fmuls f1, f30, f4 +/* 801E7EF4 001E4E54 D0 81 00 24 */ stfs f4, 0x24(r1) +/* 801E7EF8 001E4E58 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 801E7EFC 001E4E5C EC 3F 08 BA */ fmadds f1, f31, f2, f1 +/* 801E7F00 001E4E60 D0 61 00 28 */ stfs f3, 0x28(r1) +/* 801E7F04 001E4E64 EC 3D 08 FA */ fmadds f1, f29, f3, f1 +/* 801E7F08 001E4E68 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801E7F0C 001E4E6C 40 81 00 64 */ ble lbl_801E7F70 +/* 801E7F10 001E4E70 80 AD 92 58 */ lwz r5, lbl_805A7E18@sda21(r13) +/* 801E7F14 001E4E74 38 60 00 00 */ li r3, 0 +/* 801E7F18 001E4E78 38 80 00 01 */ li r4, 1 +/* 801E7F1C 001E4E7C 48 1A 1F D9 */ bl __shl2i +/* 801E7F20 001E4E80 39 00 00 01 */ li r8, 1 +/* 801E7F24 001E4E84 38 00 00 00 */ li r0, 0 +/* 801E7F28 001E4E88 90 81 00 64 */ stw r4, 0x64(r1) +/* 801E7F2C 001E4E8C FC 20 D8 90 */ fmr f1, f27 +/* 801E7F30 001E4E90 7F 84 E3 78 */ mr r4, r28 +/* 801E7F34 001E4E94 38 A1 00 38 */ addi r5, r1, 0x38 +/* 801E7F38 001E4E98 90 61 00 60 */ stw r3, 0x60(r1) +/* 801E7F3C 001E4E9C 38 61 00 78 */ addi r3, r1, 0x78 +/* 801E7F40 001E4EA0 38 C1 00 20 */ addi r6, r1, 0x20 +/* 801E7F44 001E4EA4 91 01 00 58 */ stw r8, 0x58(r1) +/* 801E7F48 001E4EA8 38 E1 00 60 */ addi r7, r1, 0x60 +/* 801E7F4C 001E4EAC 90 01 00 6C */ stw r0, 0x6c(r1) +/* 801E7F50 001E4EB0 90 01 00 68 */ stw r0, 0x68(r1) +/* 801E7F54 001E4EB4 91 01 00 70 */ stw r8, 0x70(r1) +/* 801E7F58 001E4EB8 4B E6 50 41 */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter +/* 801E7F5C 001E4EBC 88 01 00 98 */ lbz r0, 0x98(r1) +/* 801E7F60 001E4EC0 28 00 00 00 */ cmplwi r0, 0 +/* 801E7F64 001E4EC4 40 82 00 0C */ bne lbl_801E7F70 +/* 801E7F68 001E4EC8 80 7F 04 2C */ lwz r3, 0x42c(r31) +/* 801E7F6C 001E4ECC 48 00 00 F0 */ b lbl_801E805C +lbl_801E7F70: +/* 801E7F70 001E4ED0 38 60 FF FF */ li r3, -1 +/* 801E7F74 001E4ED4 48 00 00 E8 */ b lbl_801E805C +lbl_801E7F78: +/* 801E7F78 001E4ED8 C3 82 AD B0 */ lfs f28, lbl_805ACAD0@sda21(r2) +/* 801E7F7C 001E4EDC 7F 84 E3 78 */ mr r4, r28 +/* 801E7F80 001E4EE0 80 7C 08 4C */ lwz r3, 0x84c(r28) +/* 801E7F84 001E4EE4 3B A0 00 00 */ li r29, 0 +/* 801E7F88 001E4EE8 3B 80 FF FF */ li r28, -1 +/* 801E7F8C 001E4EEC 4B F9 70 CD */ bl GetOrbitMaxTargetDistance__7CPlayerCFRC13CStateManager +/* 801E7F90 001E4EF0 EF 61 00 72 */ fmuls f27, f1, f1 +/* 801E7F94 001E4EF4 83 DF 01 14 */ lwz r30, 0x114(r31) +/* 801E7F98 001E4EF8 48 00 00 A8 */ b lbl_801E8040 +lbl_801E7F9C: +/* 801E7F9C 001E4EFC 88 1E 00 80 */ lbz r0, 0x80(r30) +/* 801E7FA0 001E4F00 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801E7FA4 001E4F04 41 82 00 94 */ beq lbl_801E8038 +/* 801E7FA8 001E4F08 C0 7E 00 1C */ lfs f3, 0x1c(r30) +/* 801E7FAC 001E4F0C C0 41 00 3C */ lfs f2, 0x3c(r1) +/* 801E7FB0 001E4F10 C0 3E 00 0C */ lfs f1, 0xc(r30) +/* 801E7FB4 001E4F14 C0 01 00 38 */ lfs f0, 0x38(r1) +/* 801E7FB8 001E4F18 EC 83 10 28 */ fsubs f4, f3, f2 +/* 801E7FBC 001E4F1C C0 7E 00 2C */ lfs f3, 0x2c(r30) +/* 801E7FC0 001E4F20 EC 41 00 28 */ fsubs f2, f1, f0 +/* 801E7FC4 001E4F24 C0 21 00 40 */ lfs f1, 0x40(r1) +/* 801E7FC8 001E4F28 EC 04 01 32 */ fmuls f0, f4, f4 +/* 801E7FCC 001E4F2C D0 81 00 18 */ stfs f4, 0x18(r1) +/* 801E7FD0 001E4F30 EC 63 08 28 */ fsubs f3, f3, f1 +/* 801E7FD4 001E4F34 EC 22 00 B2 */ fmuls f1, f2, f2 +/* 801E7FD8 001E4F38 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801E7FDC 001E4F3C EC 43 00 F2 */ fmuls f2, f3, f3 +/* 801E7FE0 001E4F40 EC 01 00 2A */ fadds f0, f1, f0 +/* 801E7FE4 001E4F44 D0 61 00 1C */ stfs f3, 0x1c(r1) +/* 801E7FE8 001E4F48 EC 02 00 2A */ fadds f0, f2, f0 +/* 801E7FEC 001E4F4C FC 00 D8 40 */ fcmpo cr0, f0, f27 +/* 801E7FF0 001E4F50 41 81 00 48 */ bgt lbl_801E8038 +/* 801E7FF4 001E4F54 38 61 00 14 */ addi r3, r1, 0x14 +/* 801E7FF8 001E4F58 48 12 C7 01 */ bl CanBeNormalized__9CVector3fCFv +/* 801E7FFC 001E4F5C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E8000 001E4F60 41 82 00 38 */ beq lbl_801E8038 +/* 801E8004 001E4F64 38 61 00 08 */ addi r3, r1, 8 +/* 801E8008 001E4F68 38 81 00 14 */ addi r4, r1, 0x14 +/* 801E800C 001E4F6C 48 12 C8 45 */ bl AsNormalized__9CVector3fCFv +/* 801E8010 001E4F70 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 801E8014 001E4F74 C0 21 00 08 */ lfs f1, 8(r1) +/* 801E8018 001E4F78 EC 1E 00 32 */ fmuls f0, f30, f0 +/* 801E801C 001E4F7C C0 41 00 10 */ lfs f2, 0x10(r1) +/* 801E8020 001E4F80 EC 1F 00 7A */ fmadds f0, f31, f1, f0 +/* 801E8024 001E4F84 EC 1D 00 BA */ fmadds f0, f29, f2, f0 +/* 801E8028 001E4F88 FC 00 E0 40 */ fcmpo cr0, f0, f28 +/* 801E802C 001E4F8C 40 81 00 0C */ ble lbl_801E8038 +/* 801E8030 001E4F90 7F BC EB 78 */ mr r28, r29 +/* 801E8034 001E4F94 FF 80 00 90 */ fmr f28, f0 +lbl_801E8038: +/* 801E8038 001E4F98 3B DE 00 84 */ addi r30, r30, 0x84 +/* 801E803C 001E4F9C 3B BD 00 01 */ addi r29, r29, 1 +lbl_801E8040: +/* 801E8040 001E4FA0 80 1F 01 0C */ lwz r0, 0x10c(r31) +/* 801E8044 001E4FA4 80 7F 01 14 */ lwz r3, 0x114(r31) +/* 801E8048 001E4FA8 1C 00 00 84 */ mulli r0, r0, 0x84 +/* 801E804C 001E4FAC 7C 03 02 14 */ add r0, r3, r0 +/* 801E8050 001E4FB0 7C 1E 00 40 */ cmplw r30, r0 +/* 801E8054 001E4FB4 40 82 FF 48 */ bne lbl_801E7F9C +/* 801E8058 001E4FB8 7F 83 E3 78 */ mr r3, r28 +lbl_801E805C: +/* 801E805C 001E4FBC E3 E1 01 38 */ psq_l f31, 312(r1), 0, qr0 +/* 801E8060 001E4FC0 CB E1 01 30 */ lfd f31, 0x130(r1) +/* 801E8064 001E4FC4 E3 C1 01 28 */ psq_l f30, 296(r1), 0, qr0 +/* 801E8068 001E4FC8 CB C1 01 20 */ lfd f30, 0x120(r1) +/* 801E806C 001E4FCC E3 A1 01 18 */ psq_l f29, 280(r1), 0, qr0 +/* 801E8070 001E4FD0 CB A1 01 10 */ lfd f29, 0x110(r1) +/* 801E8074 001E4FD4 E3 81 01 08 */ psq_l f28, 264(r1), 0, qr0 +/* 801E8078 001E4FD8 CB 81 01 00 */ lfd f28, 0x100(r1) +/* 801E807C 001E4FDC E3 61 00 F8 */ psq_l f27, 248(r1), 0, qr0 +/* 801E8080 001E4FE0 CB 61 00 F0 */ lfd f27, 0xf0(r1) +/* 801E8084 001E4FE4 83 E1 00 EC */ lwz r31, 0xec(r1) +/* 801E8088 001E4FE8 83 C1 00 E8 */ lwz r30, 0xe8(r1) +/* 801E808C 001E4FEC 83 A1 00 E4 */ lwz r29, 0xe4(r1) +/* 801E8090 001E4FF0 80 01 01 44 */ lwz r0, 0x144(r1) +/* 801E8094 001E4FF4 83 81 00 E0 */ lwz r28, 0xe0(r1) +/* 801E8098 001E4FF8 7C 08 03 A6 */ mtlr r0 +/* 801E809C 001E4FFC 38 21 01 40 */ addi r1, r1, 0x140 +/* 801E80A0 001E5000 4E 80 00 20 */ blr + +.global sub_801e80a4 +sub_801e80a4: +/* 801E80A4 001E5004 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801E80A8 001E5008 7C 08 02 A6 */ mflr r0 +/* 801E80AC 001E500C C0 22 AD A0 */ lfs f1, lbl_805ACAC0@sda21(r2) +/* 801E80B0 001E5010 90 01 00 54 */ stw r0, 0x54(r1) +/* 801E80B4 001E5014 C0 42 AD B4 */ lfs f2, lbl_805ACAD4@sda21(r2) +/* 801E80B8 001E5018 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801E80BC 001E501C 7C BF 2B 78 */ mr r31, r5 +/* 801E80C0 001E5020 93 C1 00 48 */ stw r30, 0x48(r1) +/* 801E80C4 001E5024 7C 9E 23 78 */ mr r30, r4 +/* 801E80C8 001E5028 93 A1 00 44 */ stw r29, 0x44(r1) +/* 801E80CC 001E502C 7C 7D 1B 78 */ mr r29, r3 +/* 801E80D0 001E5030 4B FF FB 55 */ bl KillBoid__17CWallCrawlerSwarmFRQ217CWallCrawlerSwarm5CBoidR13CStateManagerff +/* 801E80D4 001E5034 80 AD 92 54 */ lwz r5, lbl_805A7E14@sda21(r13) +/* 801E80D8 001E5038 38 60 00 00 */ li r3, 0 +/* 801E80DC 001E503C 38 80 00 01 */ li r4, 1 +/* 801E80E0 001E5040 48 1A 1E 15 */ bl __shl2i +/* 801E80E4 001E5044 39 20 00 00 */ li r9, 0 +/* 801E80E8 001E5048 38 00 00 01 */ li r0, 1 +/* 801E80EC 001E504C 90 81 00 24 */ stw r4, 0x24(r1) +/* 801E80F0 001E5050 7F A5 EB 78 */ mr r5, r29 +/* 801E80F4 001E5054 38 81 00 0C */ addi r4, r1, 0xc +/* 801E80F8 001E5058 38 C1 00 10 */ addi r6, r1, 0x10 +/* 801E80FC 001E505C 90 61 00 20 */ stw r3, 0x20(r1) +/* 801E8100 001E5060 7F E3 FB 78 */ mr r3, r31 +/* 801E8104 001E5064 38 FD 03 A0 */ addi r7, r29, 0x3a0 +/* 801E8108 001E5068 39 01 00 20 */ addi r8, r1, 0x20 +/* 801E810C 001E506C 91 21 00 2C */ stw r9, 0x2c(r1) +/* 801E8110 001E5070 91 21 00 28 */ stw r9, 0x28(r1) +/* 801E8114 001E5074 90 01 00 30 */ stw r0, 0x30(r1) +/* 801E8118 001E5078 C0 5E 00 2C */ lfs f2, 0x2c(r30) +/* 801E811C 001E507C C0 3E 00 1C */ lfs f1, 0x1c(r30) +/* 801E8120 001E5080 C0 1E 00 0C */ lfs f0, 0xc(r30) +/* 801E8124 001E5084 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801E8128 001E5088 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 801E812C 001E508C D0 41 00 18 */ stfs f2, 0x18(r1) +/* 801E8130 001E5090 A0 1D 00 08 */ lhz r0, 8(r29) +/* 801E8134 001E5094 B0 01 00 08 */ sth r0, 8(r1) +/* 801E8138 001E5098 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801E813C 001E509C 4B E6 0B 71 */ bl ApplyDamageToWorld__13CStateManagerF9TUniqueIdRC6CActorRC9CVector3fRC11CDamageInfoRC15CMaterialFilter +/* 801E8140 001E50A0 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801E8144 001E50A4 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801E8148 001E50A8 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 801E814C 001E50AC 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 801E8150 001E50B0 7C 08 03 A6 */ mtlr r0 +/* 801E8154 001E50B4 38 21 00 50 */ addi r1, r1, 0x50 +/* 801E8158 001E50B8 4E 80 00 20 */ blr + +.global sub_801e815c +sub_801e815c: +/* 801E815C 001E50BC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801E8160 001E50C0 ED 61 00 72 */ fmuls f11, f1, f1 +/* 801E8164 001E50C4 ED 43 10 28 */ fsubs f10, f3, f2 +/* 801E8168 001E50C8 80 C3 01 14 */ lwz r6, 0x114(r3) +/* 801E816C 001E50CC 48 00 00 A0 */ b lbl_801E820C +lbl_801E8170: +/* 801E8170 001E50D0 88 06 00 80 */ lbz r0, 0x80(r6) +/* 801E8174 001E50D4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801E8178 001E50D8 41 82 00 90 */ beq lbl_801E8208 +/* 801E817C 001E50DC C0 06 00 48 */ lfs f0, 0x48(r6) +/* 801E8180 001E50E0 C0 A2 AD A0 */ lfs f5, lbl_805ACAC0@sda21(r2) +/* 801E8184 001E50E4 FC 00 28 40 */ fcmpo cr0, f0, f5 +/* 801E8188 001E50E8 4C 40 13 82 */ cror 2, 0, 2 +/* 801E818C 001E50EC 40 82 00 7C */ bne lbl_801E8208 +/* 801E8190 001E50F0 C1 06 00 1C */ lfs f8, 0x1c(r6) +/* 801E8194 001E50F4 C0 66 00 0C */ lfs f3, 0xc(r6) +/* 801E8198 001E50F8 C0 24 00 04 */ lfs f1, 4(r4) +/* 801E819C 001E50FC C0 04 00 00 */ lfs f0, 0(r4) +/* 801E81A0 001E5100 EC E8 08 28 */ fsubs f7, f8, f1 +/* 801E81A4 001E5104 C1 26 00 2C */ lfs f9, 0x2c(r6) +/* 801E81A8 001E5108 EC 83 00 28 */ fsubs f4, f3, f0 +/* 801E81AC 001E510C C0 04 00 08 */ lfs f0, 8(r4) +/* 801E81B0 001E5110 D0 61 00 08 */ stfs f3, 8(r1) +/* 801E81B4 001E5114 EC C9 00 28 */ fsubs f6, f9, f0 +/* 801E81B8 001E5118 EC 24 01 32 */ fmuls f1, f4, f4 +/* 801E81BC 001E511C D1 01 00 0C */ stfs f8, 0xc(r1) +/* 801E81C0 001E5120 EC 07 01 F2 */ fmuls f0, f7, f7 +/* 801E81C4 001E5124 EC 66 01 B2 */ fmuls f3, f6, f6 +/* 801E81C8 001E5128 D1 21 00 10 */ stfs f9, 0x10(r1) +/* 801E81CC 001E512C EC 01 00 2A */ fadds f0, f1, f0 +/* 801E81D0 001E5130 D0 81 00 14 */ stfs f4, 0x14(r1) +/* 801E81D4 001E5134 D0 E1 00 18 */ stfs f7, 0x18(r1) +/* 801E81D8 001E5138 EC 03 00 2A */ fadds f0, f3, f0 +/* 801E81DC 001E513C D0 C1 00 1C */ stfs f6, 0x1c(r1) +/* 801E81E0 001E5140 FC 00 58 40 */ fcmpo cr0, f0, f11 +/* 801E81E4 001E5144 40 80 00 24 */ bge lbl_801E8208 +/* 801E81E8 001E5148 EC 00 58 24 */ fdivs f0, f0, f11 +/* 801E81EC 001E514C C0 26 00 4C */ lfs f1, 0x4c(r6) +/* 801E81F0 001E5150 EC 00 12 BA */ fmadds f0, f0, f10, f2 +/* 801E81F4 001E5154 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801E81F8 001E5158 41 81 00 0C */ bgt lbl_801E8204 +/* 801E81FC 001E515C FC 05 08 00 */ fcmpu cr0, f5, f1 +/* 801E8200 001E5160 40 82 00 08 */ bne lbl_801E8208 +lbl_801E8204: +/* 801E8204 001E5164 D0 06 00 4C */ stfs f0, 0x4c(r6) +lbl_801E8208: +/* 801E8208 001E5168 38 C6 00 84 */ addi r6, r6, 0x84 +lbl_801E820C: +/* 801E820C 001E516C 80 03 01 0C */ lwz r0, 0x10c(r3) +/* 801E8210 001E5170 80 A3 01 14 */ lwz r5, 0x114(r3) +/* 801E8214 001E5174 1C 00 00 84 */ mulli r0, r0, 0x84 +/* 801E8218 001E5178 7C 05 02 14 */ add r0, r5, r0 +/* 801E821C 001E517C 7C 06 00 40 */ cmplw r6, r0 +/* 801E8220 001E5180 40 82 FF 50 */ bne lbl_801E8170 +/* 801E8224 001E5184 38 21 00 20 */ addi r1, r1, 0x20 +/* 801E8228 001E5188 4E 80 00 20 */ blr + +.global Touch__17CWallCrawlerSwarmFR6CActorR13CStateManager +Touch__17CWallCrawlerSwarmFR6CActorR13CStateManager: +/* 801E822C 001E518C 94 21 FD A0 */ stwu r1, -0x260(r1) +/* 801E8230 001E5190 7C 08 02 A6 */ mflr r0 +/* 801E8234 001E5194 90 01 02 64 */ stw r0, 0x264(r1) +/* 801E8238 001E5198 DB E1 02 50 */ stfd f31, 0x250(r1) +/* 801E823C 001E519C F3 E1 02 58 */ psq_st f31, 600(r1), 0, qr0 +/* 801E8240 001E51A0 DB C1 02 40 */ stfd f30, 0x240(r1) +/* 801E8244 001E51A4 F3 C1 02 48 */ psq_st f30, 584(r1), 0, qr0 +/* 801E8248 001E51A8 BF 41 02 28 */ stmw r26, 0x228(r1) +/* 801E824C 001E51AC 7C 7C 1B 78 */ mr r28, r3 +/* 801E8250 001E51B0 7C 9E 23 78 */ mr r30, r4 +/* 801E8254 001E51B4 7C BD 2B 78 */ mr r29, r5 +/* 801E8258 001E51B8 4B E6 C1 B1 */ bl Touch__6CActorFR6CActorR13CStateManager +/* 801E825C 001E51BC 7F C4 F3 78 */ mr r4, r30 +/* 801E8260 001E51C0 38 61 00 48 */ addi r3, r1, 0x48 +/* 801E8264 001E51C4 4B EC 55 15 */ bl "__ct__29TCastToPtr<15CGameProjectile>FR7CEntity" +/* 801E8268 001E51C8 83 43 00 04 */ lwz r26, 4(r3) +/* 801E826C 001E51CC 28 1A 00 00 */ cmplwi r26, 0 +/* 801E8270 001E51D0 41 82 01 B0 */ beq lbl_801E8420 +/* 801E8274 001E51D4 3B 7A 01 2C */ addi r27, r26, 0x12c +/* 801E8278 001E51D8 38 7C 03 C4 */ addi r3, r28, 0x3c4 +/* 801E827C 001E51DC 7F 64 DB 78 */ mr r4, r27 +/* 801E8280 001E51E0 38 A0 00 00 */ li r5, 0 +/* 801E8284 001E51E4 4B F1 A4 85 */ bl WeaponHurts__20CDamageVulnerabilityCFRC11CWeaponMode +/* 801E8288 001E51E8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E828C 001E51EC 41 82 01 94 */ beq lbl_801E8420 +/* 801E8290 001E51F0 7F 44 D3 78 */ mr r4, r26 +/* 801E8294 001E51F4 38 61 01 70 */ addi r3, r1, 0x170 +/* 801E8298 001E51F8 81 9A 00 00 */ lwz r12, 0(r26) +/* 801E829C 001E51FC 81 8C 00 40 */ lwz r12, 0x40(r12) +/* 801E82A0 001E5200 7D 89 03 A6 */ mtctr r12 +/* 801E82A4 001E5204 4E 80 04 21 */ bctrl +/* 801E82A8 001E5208 88 01 01 88 */ lbz r0, 0x188(r1) +/* 801E82AC 001E520C 28 00 00 00 */ cmplwi r0, 0 +/* 801E82B0 001E5210 98 01 02 1C */ stb r0, 0x21c(r1) +/* 801E82B4 001E5214 41 82 00 3C */ beq lbl_801E82F0 +/* 801E82B8 001E5218 34 61 02 04 */ addic. r3, r1, 0x204 +/* 801E82BC 001E521C 41 82 00 34 */ beq lbl_801E82F0 +/* 801E82C0 001E5220 C0 01 01 70 */ lfs f0, 0x170(r1) +/* 801E82C4 001E5224 D0 03 00 00 */ stfs f0, 0(r3) +/* 801E82C8 001E5228 C0 01 01 74 */ lfs f0, 0x174(r1) +/* 801E82CC 001E522C D0 03 00 04 */ stfs f0, 4(r3) +/* 801E82D0 001E5230 C0 01 01 78 */ lfs f0, 0x178(r1) +/* 801E82D4 001E5234 D0 03 00 08 */ stfs f0, 8(r3) +/* 801E82D8 001E5238 C0 01 01 7C */ lfs f0, 0x17c(r1) +/* 801E82DC 001E523C D0 03 00 0C */ stfs f0, 0xc(r3) +/* 801E82E0 001E5240 C0 01 01 80 */ lfs f0, 0x180(r1) +/* 801E82E4 001E5244 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 801E82E8 001E5248 C0 01 01 84 */ lfs f0, 0x184(r1) +/* 801E82EC 001E524C D0 03 00 14 */ stfs f0, 0x14(r3) +lbl_801E82F0: +/* 801E82F0 001E5250 88 01 02 1C */ lbz r0, 0x21c(r1) +/* 801E82F4 001E5254 38 60 00 00 */ li r3, 0 +/* 801E82F8 001E5258 98 61 01 88 */ stb r3, 0x188(r1) +/* 801E82FC 001E525C 28 00 00 00 */ cmplwi r0, 0 +/* 801E8300 001E5260 41 82 01 18 */ beq lbl_801E8418 +/* 801E8304 001E5264 C0 21 02 04 */ lfs f1, 0x204(r1) +/* 801E8308 001E5268 C0 A1 02 08 */ lfs f5, 0x208(r1) +/* 801E830C 001E526C C0 81 02 0C */ lfs f4, 0x20c(r1) +/* 801E8310 001E5270 C0 61 02 10 */ lfs f3, 0x210(r1) +/* 801E8314 001E5274 C0 41 02 14 */ lfs f2, 0x214(r1) +/* 801E8318 001E5278 C0 01 02 18 */ lfs f0, 0x218(r1) +/* 801E831C 001E527C D0 21 01 EC */ stfs f1, 0x1ec(r1) +/* 801E8320 001E5280 C0 22 AD A8 */ lfs f1, lbl_805ACAC8@sda21(r2) +/* 801E8324 001E5284 D0 A1 01 F0 */ stfs f5, 0x1f0(r1) +/* 801E8328 001E5288 D0 81 01 F4 */ stfs f4, 0x1f4(r1) +/* 801E832C 001E528C D0 61 01 F8 */ stfs f3, 0x1f8(r1) +/* 801E8330 001E5290 D0 41 01 FC */ stfs f2, 0x1fc(r1) +/* 801E8334 001E5294 D0 01 02 00 */ stfs f0, 0x200(r1) +/* 801E8338 001E5298 C0 1C 03 78 */ lfs f0, 0x378(r28) +/* 801E833C 001E529C 83 5C 01 14 */ lwz r26, 0x114(r28) +/* 801E8340 001E52A0 EC 01 00 2A */ fadds f0, f1, f0 +/* 801E8344 001E52A4 EF C0 00 32 */ fmuls f30, f0, f0 +/* 801E8348 001E52A8 48 00 00 B8 */ b lbl_801E8400 +lbl_801E834C: +/* 801E834C 001E52AC 88 1A 00 80 */ lbz r0, 0x80(r26) +/* 801E8350 001E52B0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801E8354 001E52B4 41 82 00 A8 */ beq lbl_801E83FC +/* 801E8358 001E52B8 C0 DA 00 2C */ lfs f6, 0x2c(r26) +/* 801E835C 001E52BC 38 61 01 D4 */ addi r3, r1, 0x1d4 +/* 801E8360 001E52C0 C0 BA 00 1C */ lfs f5, 0x1c(r26) +/* 801E8364 001E52C4 38 81 00 C8 */ addi r4, r1, 0xc8 +/* 801E8368 001E52C8 C0 3A 00 0C */ lfs f1, 0xc(r26) +/* 801E836C 001E52CC EC 06 F0 2A */ fadds f0, f6, f30 +/* 801E8370 001E52D0 EC 65 F0 2A */ fadds f3, f5, f30 +/* 801E8374 001E52D4 38 A1 00 BC */ addi r5, r1, 0xbc +/* 801E8378 001E52D8 EC 81 F0 2A */ fadds f4, f1, f30 +/* 801E837C 001E52DC EC 41 F0 28 */ fsubs f2, f1, f30 +/* 801E8380 001E52E0 D0 01 00 C4 */ stfs f0, 0xc4(r1) +/* 801E8384 001E52E4 EC 25 F0 28 */ fsubs f1, f5, f30 +/* 801E8388 001E52E8 EC 06 F0 28 */ fsubs f0, f6, f30 +/* 801E838C 001E52EC D0 81 00 BC */ stfs f4, 0xbc(r1) +/* 801E8390 001E52F0 D0 61 00 C0 */ stfs f3, 0xc0(r1) +/* 801E8394 001E52F4 D0 41 00 C8 */ stfs f2, 0xc8(r1) +/* 801E8398 001E52F8 D0 21 00 CC */ stfs f1, 0xcc(r1) +/* 801E839C 001E52FC D0 01 00 D0 */ stfs f0, 0xd0(r1) +/* 801E83A0 001E5300 48 15 01 69 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801E83A4 001E5304 38 61 01 D4 */ addi r3, r1, 0x1d4 +/* 801E83A8 001E5308 38 81 01 EC */ addi r4, r1, 0x1ec +/* 801E83AC 001E530C 48 14 F7 D9 */ bl DoBoundsOverlap__6CAABoxCFRC6CAABox +/* 801E83B0 001E5310 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E83B4 001E5314 41 82 00 48 */ beq lbl_801E83FC +/* 801E83B8 001E5318 7F 63 DB 78 */ mr r3, r27 +/* 801E83BC 001E531C 38 9C 03 C4 */ addi r4, r28, 0x3c4 +/* 801E83C0 001E5320 4B ED B1 3D */ bl GetDamage__11CDamageInfoCFRC20CDamageVulnerability +/* 801E83C4 001E5324 C0 5A 00 78 */ lfs f2, 0x78(r26) +/* 801E83C8 001E5328 C0 02 AD A0 */ lfs f0, lbl_805ACAC0@sda21(r2) +/* 801E83CC 001E532C EC 22 08 28 */ fsubs f1, f2, f1 +/* 801E83D0 001E5330 D0 3A 00 78 */ stfs f1, 0x78(r26) +/* 801E83D4 001E5334 C0 3A 00 78 */ lfs f1, 0x78(r26) +/* 801E83D8 001E5338 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801E83DC 001E533C 4C 40 13 82 */ cror 2, 0, 2 +/* 801E83E0 001E5340 40 82 00 1C */ bne lbl_801E83FC +/* 801E83E4 001E5344 C0 22 AD B4 */ lfs f1, lbl_805ACAD4@sda21(r2) +/* 801E83E8 001E5348 7F 83 E3 78 */ mr r3, r28 +/* 801E83EC 001E534C C0 42 AD A8 */ lfs f2, lbl_805ACAC8@sda21(r2) +/* 801E83F0 001E5350 7F 44 D3 78 */ mr r4, r26 +/* 801E83F4 001E5354 7F A5 EB 78 */ mr r5, r29 +/* 801E83F8 001E5358 4B FF F8 2D */ bl KillBoid__17CWallCrawlerSwarmFRQ217CWallCrawlerSwarm5CBoidR13CStateManagerff +lbl_801E83FC: +/* 801E83FC 001E535C 3B 5A 00 84 */ addi r26, r26, 0x84 +lbl_801E8400: +/* 801E8400 001E5360 80 1C 01 0C */ lwz r0, 0x10c(r28) +/* 801E8404 001E5364 80 7C 01 14 */ lwz r3, 0x114(r28) +/* 801E8408 001E5368 1C 00 00 84 */ mulli r0, r0, 0x84 +/* 801E840C 001E536C 7C 03 02 14 */ add r0, r3, r0 +/* 801E8410 001E5370 7C 1A 00 40 */ cmplw r26, r0 +/* 801E8414 001E5374 40 82 FF 38 */ bne lbl_801E834C +lbl_801E8418: +/* 801E8418 001E5378 38 00 00 00 */ li r0, 0 +/* 801E841C 001E537C 98 01 02 1C */ stb r0, 0x21c(r1) +lbl_801E8420: +/* 801E8420 001E5380 7F C4 F3 78 */ mr r4, r30 +/* 801E8424 001E5384 38 61 00 40 */ addi r3, r1, 0x40 +/* 801E8428 001E5388 4B EC 3F D9 */ bl "__ct__20TCastToPtr<7CPlayer>FR7CEntity" +/* 801E842C 001E538C 83 E3 00 04 */ lwz r31, 4(r3) +/* 801E8430 001E5390 28 1F 00 00 */ cmplwi r31, 0 +/* 801E8434 001E5394 41 82 04 18 */ beq lbl_801E884C +/* 801E8438 001E5398 C3 FC 03 80 */ lfs f31, 0x380(r28) +/* 801E843C 001E539C C0 22 AD A0 */ lfs f1, lbl_805ACAC0@sda21(r2) +/* 801E8440 001E53A0 C8 02 AD C0 */ lfd f0, lbl_805ACAE0@sda21(r2) +/* 801E8444 001E53A4 EC 3F 08 28 */ fsubs f1, f31, f1 +/* 801E8448 001E53A8 FC 20 0A 10 */ fabs f1, f1 +/* 801E844C 001E53AC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801E8450 001E53B0 40 80 00 08 */ bge lbl_801E8458 +/* 801E8454 001E53B4 C3 FC 03 78 */ lfs f31, 0x378(r28) +lbl_801E8458: +/* 801E8458 001E53B8 7F E4 FB 78 */ mr r4, r31 +/* 801E845C 001E53BC 38 61 01 54 */ addi r3, r1, 0x154 +/* 801E8460 001E53C0 81 9F 00 00 */ lwz r12, 0(r31) +/* 801E8464 001E53C4 81 8C 00 40 */ lwz r12, 0x40(r12) +/* 801E8468 001E53C8 7D 89 03 A6 */ mtctr r12 +/* 801E846C 001E53CC 4E 80 04 21 */ bctrl +/* 801E8470 001E53D0 C0 A1 01 54 */ lfs f5, 0x154(r1) +/* 801E8474 001E53D4 38 00 00 00 */ li r0, 0 +/* 801E8478 001E53D8 C0 81 01 58 */ lfs f4, 0x158(r1) +/* 801E847C 001E53DC C0 61 01 5C */ lfs f3, 0x15c(r1) +/* 801E8480 001E53E0 C0 41 01 60 */ lfs f2, 0x160(r1) +/* 801E8484 001E53E4 C0 21 01 64 */ lfs f1, 0x164(r1) +/* 801E8488 001E53E8 C0 01 01 68 */ lfs f0, 0x168(r1) +/* 801E848C 001E53EC D0 A1 01 BC */ stfs f5, 0x1bc(r1) +/* 801E8490 001E53F0 D0 81 01 C0 */ stfs f4, 0x1c0(r1) +/* 801E8494 001E53F4 D0 61 01 C4 */ stfs f3, 0x1c4(r1) +/* 801E8498 001E53F8 D0 41 01 C8 */ stfs f2, 0x1c8(r1) +/* 801E849C 001E53FC D0 21 01 CC */ stfs f1, 0x1cc(r1) +/* 801E84A0 001E5400 D0 01 01 D0 */ stfs f0, 0x1d0(r1) +/* 801E84A4 001E5404 98 01 01 6C */ stb r0, 0x16c(r1) +/* 801E84A8 001E5408 C3 DC 03 7C */ lfs f30, 0x37c(r28) +/* 801E84AC 001E540C 83 DC 01 14 */ lwz r30, 0x114(r28) +/* 801E84B0 001E5410 48 00 03 84 */ b lbl_801E8834 +lbl_801E84B4: +/* 801E84B4 001E5414 88 7E 00 80 */ lbz r3, 0x80(r30) +/* 801E84B8 001E5418 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f +/* 801E84BC 001E541C 41 82 03 74 */ beq lbl_801E8830 +/* 801E84C0 001E5420 C0 3E 00 48 */ lfs f1, 0x48(r30) +/* 801E84C4 001E5424 C0 02 AD A0 */ lfs f0, lbl_805ACAC0@sda21(r2) +/* 801E84C8 001E5428 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801E84CC 001E542C 4C 40 13 82 */ cror 2, 0, 2 +/* 801E84D0 001E5430 40 82 03 60 */ bne lbl_801E8830 +/* 801E84D4 001E5434 80 1C 05 58 */ lwz r0, 0x558(r28) +/* 801E84D8 001E5438 2C 00 00 01 */ cmpwi r0, 1 +/* 801E84DC 001E543C 40 82 00 F4 */ bne lbl_801E85D0 +/* 801E84E0 001E5440 54 60 E7 FF */ rlwinm. r0, r3, 0x1c, 0x1f, 0x1f +/* 801E84E4 001E5444 41 82 00 EC */ beq lbl_801E85D0 +/* 801E84E8 001E5448 C1 1E 00 2C */ lfs f8, 0x2c(r30) +/* 801E84EC 001E544C 38 61 01 3C */ addi r3, r1, 0x13c +/* 801E84F0 001E5450 C0 FE 00 1C */ lfs f7, 0x1c(r30) +/* 801E84F4 001E5454 38 81 00 B0 */ addi r4, r1, 0xb0 +/* 801E84F8 001E5458 C0 5E 00 0C */ lfs f2, 0xc(r30) +/* 801E84FC 001E545C EC A8 F0 2A */ fadds f5, f8, f30 +/* 801E8500 001E5460 EC C7 F0 2A */ fadds f6, f7, f30 +/* 801E8504 001E5464 D0 E1 00 90 */ stfs f7, 0x90(r1) +/* 801E8508 001E5468 EC 22 F0 2A */ fadds f1, f2, f30 +/* 801E850C 001E546C 38 A1 00 98 */ addi r5, r1, 0x98 +/* 801E8510 001E5470 EC 87 F0 28 */ fsubs f4, f7, f30 +/* 801E8514 001E5474 EC 68 F0 28 */ fsubs f3, f8, f30 +/* 801E8518 001E5478 EC 02 F0 28 */ fsubs f0, f2, f30 +/* 801E851C 001E547C D0 41 00 8C */ stfs f2, 0x8c(r1) +/* 801E8520 001E5480 D1 01 00 94 */ stfs f8, 0x94(r1) +/* 801E8524 001E5484 D0 21 00 98 */ stfs f1, 0x98(r1) +/* 801E8528 001E5488 D0 C1 00 9C */ stfs f6, 0x9c(r1) +/* 801E852C 001E548C D0 A1 00 A0 */ stfs f5, 0xa0(r1) +/* 801E8530 001E5490 D0 41 00 A4 */ stfs f2, 0xa4(r1) +/* 801E8534 001E5494 D0 E1 00 A8 */ stfs f7, 0xa8(r1) +/* 801E8538 001E5498 D1 01 00 AC */ stfs f8, 0xac(r1) +/* 801E853C 001E549C D0 01 00 B0 */ stfs f0, 0xb0(r1) +/* 801E8540 001E54A0 D0 81 00 B4 */ stfs f4, 0xb4(r1) +/* 801E8544 001E54A4 D0 61 00 B8 */ stfs f3, 0xb8(r1) +/* 801E8548 001E54A8 48 14 FF C1 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801E854C 001E54AC C0 A1 01 3C */ lfs f5, 0x13c(r1) +/* 801E8550 001E54B0 38 61 01 BC */ addi r3, r1, 0x1bc +/* 801E8554 001E54B4 C0 81 01 40 */ lfs f4, 0x140(r1) +/* 801E8558 001E54B8 38 81 01 A4 */ addi r4, r1, 0x1a4 +/* 801E855C 001E54BC C0 61 01 44 */ lfs f3, 0x144(r1) +/* 801E8560 001E54C0 C0 41 01 48 */ lfs f2, 0x148(r1) +/* 801E8564 001E54C4 C0 21 01 4C */ lfs f1, 0x14c(r1) +/* 801E8568 001E54C8 C0 01 01 50 */ lfs f0, 0x150(r1) +/* 801E856C 001E54CC D0 A1 01 A4 */ stfs f5, 0x1a4(r1) +/* 801E8570 001E54D0 D0 81 01 A8 */ stfs f4, 0x1a8(r1) +/* 801E8574 001E54D4 D0 61 01 AC */ stfs f3, 0x1ac(r1) +/* 801E8578 001E54D8 D0 41 01 B0 */ stfs f2, 0x1b0(r1) +/* 801E857C 001E54DC D0 21 01 B4 */ stfs f1, 0x1b4(r1) +/* 801E8580 001E54E0 D0 01 01 B8 */ stfs f0, 0x1b8(r1) +/* 801E8584 001E54E4 48 14 F6 01 */ bl DoBoundsOverlap__6CAABoxCFRC6CAABox +/* 801E8588 001E54E8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E858C 001E54EC 41 82 00 44 */ beq lbl_801E85D0 +/* 801E8590 001E54F0 7F 83 E3 78 */ mr r3, r28 +/* 801E8594 001E54F4 7F C4 F3 78 */ mr r4, r30 +/* 801E8598 001E54F8 7F A5 EB 78 */ mr r5, r29 +/* 801E859C 001E54FC 4B FF FB 09 */ bl sub_801e80a4 +/* 801E85A0 001E5500 C0 22 AD B0 */ lfs f1, lbl_805ACAD0@sda21(r2) +/* 801E85A4 001E5504 7F 83 E3 78 */ mr r3, r28 +/* 801E85A8 001E5508 C0 BE 00 2C */ lfs f5, 0x2c(r30) +/* 801E85AC 001E550C 38 81 00 80 */ addi r4, r1, 0x80 +/* 801E85B0 001E5510 C0 9E 00 1C */ lfs f4, 0x1c(r30) +/* 801E85B4 001E5514 FC 40 08 90 */ fmr f2, f1 +/* 801E85B8 001E5518 C0 1E 00 0C */ lfs f0, 0xc(r30) +/* 801E85BC 001E551C C0 62 AD C8 */ lfs f3, lbl_805ACAE8@sda21(r2) +/* 801E85C0 001E5520 D0 01 00 80 */ stfs f0, 0x80(r1) +/* 801E85C4 001E5524 D0 81 00 84 */ stfs f4, 0x84(r1) +/* 801E85C8 001E5528 D0 A1 00 88 */ stfs f5, 0x88(r1) +/* 801E85CC 001E552C 4B FF FB 91 */ bl sub_801e815c +lbl_801E85D0: +/* 801E85D0 001E5530 C1 1E 00 2C */ lfs f8, 0x2c(r30) +/* 801E85D4 001E5534 38 61 01 24 */ addi r3, r1, 0x124 +/* 801E85D8 001E5538 C0 FE 00 1C */ lfs f7, 0x1c(r30) +/* 801E85DC 001E553C 38 81 00 74 */ addi r4, r1, 0x74 +/* 801E85E0 001E5540 C0 5E 00 0C */ lfs f2, 0xc(r30) +/* 801E85E4 001E5544 EC A8 F8 2A */ fadds f5, f8, f31 +/* 801E85E8 001E5548 EC C7 F8 2A */ fadds f6, f7, f31 +/* 801E85EC 001E554C D0 E1 00 54 */ stfs f7, 0x54(r1) +/* 801E85F0 001E5550 EC 22 F8 2A */ fadds f1, f2, f31 +/* 801E85F4 001E5554 38 A1 00 5C */ addi r5, r1, 0x5c +/* 801E85F8 001E5558 EC 87 F8 28 */ fsubs f4, f7, f31 +/* 801E85FC 001E555C EC 68 F8 28 */ fsubs f3, f8, f31 +/* 801E8600 001E5560 EC 02 F8 28 */ fsubs f0, f2, f31 +/* 801E8604 001E5564 D0 41 00 50 */ stfs f2, 0x50(r1) +/* 801E8608 001E5568 D1 01 00 58 */ stfs f8, 0x58(r1) +/* 801E860C 001E556C D0 21 00 5C */ stfs f1, 0x5c(r1) +/* 801E8610 001E5570 D0 C1 00 60 */ stfs f6, 0x60(r1) +/* 801E8614 001E5574 D0 A1 00 64 */ stfs f5, 0x64(r1) +/* 801E8618 001E5578 D0 41 00 68 */ stfs f2, 0x68(r1) +/* 801E861C 001E557C D0 E1 00 6C */ stfs f7, 0x6c(r1) +/* 801E8620 001E5580 D1 01 00 70 */ stfs f8, 0x70(r1) +/* 801E8624 001E5584 D0 01 00 74 */ stfs f0, 0x74(r1) +/* 801E8628 001E5588 D0 81 00 78 */ stfs f4, 0x78(r1) +/* 801E862C 001E558C D0 61 00 7C */ stfs f3, 0x7c(r1) +/* 801E8630 001E5590 48 14 FE D9 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801E8634 001E5594 C0 A1 01 24 */ lfs f5, 0x124(r1) +/* 801E8638 001E5598 38 61 01 BC */ addi r3, r1, 0x1bc +/* 801E863C 001E559C C0 81 01 28 */ lfs f4, 0x128(r1) +/* 801E8640 001E55A0 38 81 01 8C */ addi r4, r1, 0x18c +/* 801E8644 001E55A4 C0 61 01 2C */ lfs f3, 0x12c(r1) +/* 801E8648 001E55A8 C0 41 01 30 */ lfs f2, 0x130(r1) +/* 801E864C 001E55AC C0 21 01 34 */ lfs f1, 0x134(r1) +/* 801E8650 001E55B0 C0 01 01 38 */ lfs f0, 0x138(r1) +/* 801E8654 001E55B4 D0 A1 01 8C */ stfs f5, 0x18c(r1) +/* 801E8658 001E55B8 D0 81 01 90 */ stfs f4, 0x190(r1) +/* 801E865C 001E55BC D0 61 01 94 */ stfs f3, 0x194(r1) +/* 801E8660 001E55C0 D0 41 01 98 */ stfs f2, 0x198(r1) +/* 801E8664 001E55C4 D0 21 01 9C */ stfs f1, 0x19c(r1) +/* 801E8668 001E55C8 D0 01 01 A0 */ stfs f0, 0x1a0(r1) +/* 801E866C 001E55CC 48 14 F5 19 */ bl DoBoundsOverlap__6CAABoxCFRC6CAABox +/* 801E8670 001E55D0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E8674 001E55D4 41 82 01 BC */ beq lbl_801E8830 +/* 801E8678 001E55D8 88 1E 00 80 */ lbz r0, 0x80(r30) +/* 801E867C 001E55DC 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801E8680 001E55E0 41 82 00 FC */ beq lbl_801E877C +/* 801E8684 001E55E4 80 1C 05 58 */ lwz r0, 0x558(r28) +/* 801E8688 001E55E8 2C 00 00 00 */ cmpwi r0, 0 +/* 801E868C 001E55EC 40 82 00 F0 */ bne lbl_801E877C +/* 801E8690 001E55F0 80 AD 92 38 */ lwz r5, lbl_805A7DF8@sda21(r13) +/* 801E8694 001E55F4 38 60 00 00 */ li r3, 0 +/* 801E8698 001E55F8 38 80 00 01 */ li r4, 1 +/* 801E869C 001E55FC 48 1A 18 59 */ bl __shl2i +/* 801E86A0 001E5600 38 E0 00 00 */ li r7, 0 +/* 801E86A4 001E5604 89 81 00 3C */ lbz r12, 0x3c(r1) +/* 801E86A8 001E5608 50 EC 3E 30 */ rlwimi r12, r7, 7, 0x18, 0x18 +/* 801E86AC 001E560C C0 22 AD CC */ lfs f1, lbl_805ACAEC@sda21(r2) +/* 801E86B0 001E5610 C0 02 AD A0 */ lfs f0, lbl_805ACAC0@sda21(r2) +/* 801E86B4 001E5614 55 8A 06 3E */ clrlwi r10, r12, 0x18 +/* 801E86B8 001E5618 3B 60 00 09 */ li r27, 9 +/* 801E86BC 001E561C 88 01 01 20 */ lbz r0, 0x120(r1) +/* 801E86C0 001E5620 50 EA 36 72 */ rlwimi r10, r7, 6, 0x19, 0x19 +/* 801E86C4 001E5624 50 E0 3E 30 */ rlwimi r0, r7, 7, 0x18, 0x18 +/* 801E86C8 001E5628 55 4B 06 3E */ clrlwi r11, r10, 0x18 +/* 801E86CC 001E562C 3B 40 00 03 */ li r26, 3 +/* 801E86D0 001E5630 50 EB 2E B4 */ rlwimi r11, r7, 5, 0x1a, 0x1a +/* 801E86D4 001E5634 90 81 00 F4 */ stw r4, 0xf4(r1) +/* 801E86D8 001E5638 3C A0 80 5A */ lis r5, skZero3f@ha +/* 801E86DC 001E563C 38 81 00 34 */ addi r4, r1, 0x34 +/* 801E86E0 001E5640 90 61 00 F0 */ stw r3, 0xf0(r1) +/* 801E86E4 001E5644 39 25 66 A0 */ addi r9, r5, skZero3f@l +/* 801E86E8 001E5648 7F A3 EB 78 */ mr r3, r29 +/* 801E86EC 001E564C 38 A1 00 2C */ addi r5, r1, 0x2c +/* 801E86F0 001E5650 99 81 00 3C */ stb r12, 0x3c(r1) +/* 801E86F4 001E5654 38 C1 00 24 */ addi r6, r1, 0x24 +/* 801E86F8 001E5658 39 01 00 F0 */ addi r8, r1, 0xf0 +/* 801E86FC 001E565C 99 41 00 3C */ stb r10, 0x3c(r1) +/* 801E8700 001E5660 90 E1 00 FC */ stw r7, 0xfc(r1) +/* 801E8704 001E5664 90 E1 00 F8 */ stw r7, 0xf8(r1) +/* 801E8708 001E5668 38 E1 01 08 */ addi r7, r1, 0x108 +/* 801E870C 001E566C 93 41 01 00 */ stw r26, 0x100(r1) +/* 801E8710 001E5670 93 61 01 08 */ stw r27, 0x108(r1) +/* 801E8714 001E5674 99 61 01 0C */ stb r11, 0x10c(r1) +/* 801E8718 001E5678 D0 21 01 10 */ stfs f1, 0x110(r1) +/* 801E871C 001E567C D0 21 01 14 */ stfs f1, 0x114(r1) +/* 801E8720 001E5680 D0 01 01 18 */ stfs f0, 0x118(r1) +/* 801E8724 001E5684 D0 01 01 1C */ stfs f0, 0x11c(r1) +/* 801E8728 001E5688 98 01 01 20 */ stb r0, 0x120(r1) +/* 801E872C 001E568C A0 1C 00 08 */ lhz r0, 8(r28) +/* 801E8730 001E5690 93 61 00 38 */ stw r27, 0x38(r1) +/* 801E8734 001E5694 B0 01 00 24 */ sth r0, 0x24(r1) +/* 801E8738 001E5698 81 5D 08 4C */ lwz r10, 0x84c(r29) +/* 801E873C 001E569C B0 01 00 20 */ sth r0, 0x20(r1) +/* 801E8740 001E56A0 A1 4A 00 08 */ lhz r10, 8(r10) +/* 801E8744 001E56A4 99 61 00 3C */ stb r11, 0x3c(r1) +/* 801E8748 001E56A8 B1 41 00 2C */ sth r10, 0x2c(r1) +/* 801E874C 001E56AC A0 1C 00 08 */ lhz r0, 8(r28) +/* 801E8750 001E56B0 B1 41 00 28 */ sth r10, 0x28(r1) +/* 801E8754 001E56B4 B0 01 00 30 */ sth r0, 0x30(r1) +/* 801E8758 001E56B8 B0 01 00 34 */ sth r0, 0x34(r1) +/* 801E875C 001E56BC 4B E6 19 45 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +/* 801E8760 001E56C0 C0 22 AD A0 */ lfs f1, lbl_805ACAC0@sda21(r2) +/* 801E8764 001E56C4 7F 83 E3 78 */ mr r3, r28 +/* 801E8768 001E56C8 C0 42 AD B4 */ lfs f2, lbl_805ACAD4@sda21(r2) +/* 801E876C 001E56CC 7F C4 F3 78 */ mr r4, r30 +/* 801E8770 001E56D0 7F A5 EB 78 */ mr r5, r29 +/* 801E8774 001E56D4 4B FF F4 B1 */ bl KillBoid__17CWallCrawlerSwarmFRQ217CWallCrawlerSwarm5CBoidR13CStateManagerff +/* 801E8778 001E56D8 48 00 00 B8 */ b lbl_801E8830 +lbl_801E877C: +/* 801E877C 001E56DC 80 1C 05 58 */ lwz r0, 0x558(r28) +/* 801E8780 001E56E0 2C 00 00 01 */ cmpwi r0, 1 +/* 801E8784 001E56E4 40 82 00 18 */ bne lbl_801E879C +/* 801E8788 001E56E8 7F 83 E3 78 */ mr r3, r28 +/* 801E878C 001E56EC 7F C4 F3 78 */ mr r4, r30 +/* 801E8790 001E56F0 7F A5 EB 78 */ mr r5, r29 +/* 801E8794 001E56F4 4B FF F9 11 */ bl sub_801e80a4 +/* 801E8798 001E56F8 48 00 00 98 */ b lbl_801E8830 +lbl_801E879C: +/* 801E879C 001E56FC C0 3C 03 6C */ lfs f1, 0x36c(r28) +/* 801E87A0 001E5700 C0 02 AD A0 */ lfs f0, lbl_805ACAC0@sda21(r2) +/* 801E87A4 001E5704 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801E87A8 001E5708 4C 40 13 82 */ cror 2, 0, 2 +/* 801E87AC 001E570C 40 82 00 84 */ bne lbl_801E8830 +/* 801E87B0 001E5710 80 AD 92 38 */ lwz r5, lbl_805A7DF8@sda21(r13) +/* 801E87B4 001E5714 38 60 00 00 */ li r3, 0 +/* 801E87B8 001E5718 38 80 00 01 */ li r4, 1 +/* 801E87BC 001E571C 48 1A 17 39 */ bl __shl2i +/* 801E87C0 001E5720 39 40 00 00 */ li r10, 0 +/* 801E87C4 001E5724 38 00 00 03 */ li r0, 3 +/* 801E87C8 001E5728 90 81 00 DC */ stw r4, 0xdc(r1) +/* 801E87CC 001E572C 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801E87D0 001E5730 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 801E87D4 001E5734 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801E87D8 001E5738 90 61 00 D8 */ stw r3, 0xd8(r1) +/* 801E87DC 001E573C 38 81 00 1C */ addi r4, r1, 0x1c +/* 801E87E0 001E5740 7F A3 EB 78 */ mr r3, r29 +/* 801E87E4 001E5744 38 C1 00 0C */ addi r6, r1, 0xc +/* 801E87E8 001E5748 91 41 00 E4 */ stw r10, 0xe4(r1) +/* 801E87EC 001E574C 38 FC 03 84 */ addi r7, r28, 0x384 +/* 801E87F0 001E5750 39 01 00 D8 */ addi r8, r1, 0xd8 +/* 801E87F4 001E5754 91 41 00 E0 */ stw r10, 0xe0(r1) +/* 801E87F8 001E5758 90 01 00 E8 */ stw r0, 0xe8(r1) +/* 801E87FC 001E575C A0 1C 00 08 */ lhz r0, 8(r28) +/* 801E8800 001E5760 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801E8804 001E5764 A1 5F 00 08 */ lhz r10, 8(r31) +/* 801E8808 001E5768 B0 01 00 08 */ sth r0, 8(r1) +/* 801E880C 001E576C B1 41 00 14 */ sth r10, 0x14(r1) +/* 801E8810 001E5770 A0 1C 00 08 */ lhz r0, 8(r28) +/* 801E8814 001E5774 B1 41 00 10 */ sth r10, 0x10(r1) +/* 801E8818 001E5778 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801E881C 001E577C B0 01 00 1C */ sth r0, 0x1c(r1) +/* 801E8820 001E5780 4B E6 18 81 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +/* 801E8824 001E5784 C0 1C 03 70 */ lfs f0, 0x370(r28) +/* 801E8828 001E5788 D0 1C 03 6C */ stfs f0, 0x36c(r28) +/* 801E882C 001E578C 48 00 00 20 */ b lbl_801E884C +lbl_801E8830: +/* 801E8830 001E5790 3B DE 00 84 */ addi r30, r30, 0x84 +lbl_801E8834: +/* 801E8834 001E5794 80 1C 01 0C */ lwz r0, 0x10c(r28) +/* 801E8838 001E5798 80 7C 01 14 */ lwz r3, 0x114(r28) +/* 801E883C 001E579C 1C 00 00 84 */ mulli r0, r0, 0x84 +/* 801E8840 001E57A0 7C 03 02 14 */ add r0, r3, r0 +/* 801E8844 001E57A4 7C 1E 00 40 */ cmplw r30, r0 +/* 801E8848 001E57A8 40 82 FC 6C */ bne lbl_801E84B4 +lbl_801E884C: +/* 801E884C 001E57AC E3 E1 02 58 */ psq_l f31, 600(r1), 0, qr0 +/* 801E8850 001E57B0 CB E1 02 50 */ lfd f31, 0x250(r1) +/* 801E8854 001E57B4 E3 C1 02 48 */ psq_l f30, 584(r1), 0, qr0 +/* 801E8858 001E57B8 CB C1 02 40 */ lfd f30, 0x240(r1) +/* 801E885C 001E57BC BB 41 02 28 */ lmw r26, 0x228(r1) +/* 801E8860 001E57C0 80 01 02 64 */ lwz r0, 0x264(r1) +/* 801E8864 001E57C4 7C 08 03 A6 */ mtlr r0 +/* 801E8868 001E57C8 38 21 02 60 */ addi r1, r1, 0x260 +/* 801E886C 001E57CC 4E 80 00 20 */ blr + +.global ApplyRadiusDamage__17CWallCrawlerSwarmF9CVector3ffR13CStateManager +ApplyRadiusDamage__17CWallCrawlerSwarmF9CVector3ffR13CStateManager: +/* 801E8870 001E57D0 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801E8874 001E57D4 7C 08 02 A6 */ mflr r0 +/* 801E8878 001E57D8 90 01 00 44 */ stw r0, 0x44(r1) +/* 801E887C 001E57DC DB E1 00 30 */ stfd f31, 0x30(r1) +/* 801E8880 001E57E0 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 801E8884 001E57E4 BF 61 00 1C */ stmw r27, 0x1c(r1) +/* 801E8888 001E57E8 7C BD 2B 78 */ mr r29, r5 +/* 801E888C 001E57EC 7C 7B 1B 78 */ mr r27, r3 +/* 801E8890 001E57F0 C0 05 00 10 */ lfs f0, 0x10(r5) +/* 801E8894 001E57F4 7C 9C 23 78 */ mr r28, r4 +/* 801E8898 001E57F8 83 E3 01 14 */ lwz r31, 0x114(r3) +/* 801E889C 001E57FC 7C DE 33 78 */ mr r30, r6 +/* 801E88A0 001E5800 EF E0 00 32 */ fmuls f31, f0, f0 +/* 801E88A4 001E5804 48 00 00 A4 */ b lbl_801E8948 +lbl_801E88A8: +/* 801E88A8 001E5808 88 1F 00 80 */ lbz r0, 0x80(r31) +/* 801E88AC 001E580C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801E88B0 001E5810 41 82 00 94 */ beq lbl_801E8944 +/* 801E88B4 001E5814 C0 5F 00 1C */ lfs f2, 0x1c(r31) +/* 801E88B8 001E5818 C0 1C 00 04 */ lfs f0, 4(r28) +/* 801E88BC 001E581C C0 3F 00 0C */ lfs f1, 0xc(r31) +/* 801E88C0 001E5820 EC 82 00 28 */ fsubs f4, f2, f0 +/* 801E88C4 001E5824 C0 1C 00 00 */ lfs f0, 0(r28) +/* 801E88C8 001E5828 C0 7F 00 2C */ lfs f3, 0x2c(r31) +/* 801E88CC 001E582C EC 41 00 28 */ fsubs f2, f1, f0 +/* 801E88D0 001E5830 C0 3C 00 08 */ lfs f1, 8(r28) +/* 801E88D4 001E5834 EC 04 01 32 */ fmuls f0, f4, f4 +/* 801E88D8 001E5838 EC 63 08 28 */ fsubs f3, f3, f1 +/* 801E88DC 001E583C D0 81 00 0C */ stfs f4, 0xc(r1) +/* 801E88E0 001E5840 EC 22 00 B2 */ fmuls f1, f2, f2 +/* 801E88E4 001E5844 D0 41 00 08 */ stfs f2, 8(r1) +/* 801E88E8 001E5848 EC 43 00 F2 */ fmuls f2, f3, f3 +/* 801E88EC 001E584C EC 01 00 2A */ fadds f0, f1, f0 +/* 801E88F0 001E5850 D0 61 00 10 */ stfs f3, 0x10(r1) +/* 801E88F4 001E5854 EC 02 00 2A */ fadds f0, f2, f0 +/* 801E88F8 001E5858 FC 00 F8 40 */ fcmpo cr0, f0, f31 +/* 801E88FC 001E585C 40 80 00 48 */ bge lbl_801E8944 +/* 801E8900 001E5860 7F A3 EB 78 */ mr r3, r29 +/* 801E8904 001E5864 38 9B 03 C4 */ addi r4, r27, 0x3c4 +/* 801E8908 001E5868 4B ED AB 91 */ bl GetRadiusDamage__11CDamageInfoCFRC20CDamageVulnerability +/* 801E890C 001E586C C0 5F 00 78 */ lfs f2, 0x78(r31) +/* 801E8910 001E5870 C0 02 AD A0 */ lfs f0, lbl_805ACAC0@sda21(r2) +/* 801E8914 001E5874 EC 22 08 28 */ fsubs f1, f2, f1 +/* 801E8918 001E5878 D0 3F 00 78 */ stfs f1, 0x78(r31) +/* 801E891C 001E587C C0 3F 00 78 */ lfs f1, 0x78(r31) +/* 801E8920 001E5880 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801E8924 001E5884 4C 40 13 82 */ cror 2, 0, 2 +/* 801E8928 001E5888 40 82 00 1C */ bne lbl_801E8944 +/* 801E892C 001E588C C0 22 AD B4 */ lfs f1, lbl_805ACAD4@sda21(r2) +/* 801E8930 001E5890 7F 63 DB 78 */ mr r3, r27 +/* 801E8934 001E5894 C0 42 AD A8 */ lfs f2, lbl_805ACAC8@sda21(r2) +/* 801E8938 001E5898 7F E4 FB 78 */ mr r4, r31 +/* 801E893C 001E589C 7F C5 F3 78 */ mr r5, r30 +/* 801E8940 001E58A0 4B FF F2 E5 */ bl KillBoid__17CWallCrawlerSwarmFRQ217CWallCrawlerSwarm5CBoidR13CStateManagerff +lbl_801E8944: +/* 801E8944 001E58A4 3B FF 00 84 */ addi r31, r31, 0x84 +lbl_801E8948: +/* 801E8948 001E58A8 80 1B 01 0C */ lwz r0, 0x10c(r27) +/* 801E894C 001E58AC 80 7B 01 14 */ lwz r3, 0x114(r27) +/* 801E8950 001E58B0 1C 00 00 84 */ mulli r0, r0, 0x84 +/* 801E8954 001E58B4 7C 03 02 14 */ add r0, r3, r0 +/* 801E8958 001E58B8 7C 1F 00 40 */ cmplw r31, r0 +/* 801E895C 001E58BC 40 82 FF 4C */ bne lbl_801E88A8 +/* 801E8960 001E58C0 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 801E8964 001E58C4 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 801E8968 001E58C8 BB 61 00 1C */ lmw r27, 0x1c(r1) +/* 801E896C 001E58CC 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801E8970 001E58D0 7C 08 03 A6 */ mtlr r0 +/* 801E8974 001E58D4 38 21 00 40 */ addi r1, r1, 0x40 +/* 801E8978 001E58D8 4E 80 00 20 */ blr + +.global GetWaypointForState__17CWallCrawlerSwarmF18EScriptObjectStateR13CStateManager +GetWaypointForState__17CWallCrawlerSwarmF18EScriptObjectStateR13CStateManager: +/* 801E897C 001E58DC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801E8980 001E58E0 7C 08 02 A6 */ mflr r0 +/* 801E8984 001E58E4 90 01 00 24 */ stw r0, 0x24(r1) +/* 801E8988 001E58E8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801E898C 001E58EC 7C 7F 1B 78 */ mr r31, r3 +/* 801E8990 001E58F0 80 E4 00 2C */ lwz r7, 0x2c(r4) +/* 801E8994 001E58F4 48 00 00 3C */ b lbl_801E89D0 +lbl_801E8998: +/* 801E8998 001E58F8 80 07 00 00 */ lwz r0, 0(r7) +/* 801E899C 001E58FC 7C 05 00 00 */ cmpw r5, r0 +/* 801E89A0 001E5900 40 82 00 2C */ bne lbl_801E89CC +/* 801E89A4 001E5904 80 07 00 04 */ lwz r0, 4(r7) +/* 801E89A8 001E5908 2C 00 00 06 */ cmpwi r0, 6 +/* 801E89AC 001E590C 40 82 00 20 */ bne lbl_801E89CC +/* 801E89B0 001E5910 80 07 00 08 */ lwz r0, 8(r7) +/* 801E89B4 001E5914 7F E3 FB 78 */ mr r3, r31 +/* 801E89B8 001E5918 7C C4 33 78 */ mr r4, r6 +/* 801E89BC 001E591C 38 A1 00 08 */ addi r5, r1, 8 +/* 801E89C0 001E5920 90 01 00 08 */ stw r0, 8(r1) +/* 801E89C4 001E5924 4B E5 F5 59 */ bl GetIdForScript__13CStateManagerCF9TEditorId +/* 801E89C8 001E5928 48 00 00 28 */ b lbl_801E89F0 +lbl_801E89CC: +/* 801E89CC 001E592C 38 E7 00 0C */ addi r7, r7, 0xc +lbl_801E89D0: +/* 801E89D0 001E5930 80 04 00 24 */ lwz r0, 0x24(r4) +/* 801E89D4 001E5934 80 64 00 2C */ lwz r3, 0x2c(r4) +/* 801E89D8 001E5938 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801E89DC 001E593C 7C 03 02 14 */ add r0, r3, r0 +/* 801E89E0 001E5940 7C 07 00 40 */ cmplw r7, r0 +/* 801E89E4 001E5944 40 82 FF B4 */ bne lbl_801E8998 +/* 801E89E8 001E5948 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801E89EC 001E594C B0 1F 00 00 */ sth r0, 0(r31) +lbl_801E89F0: +/* 801E89F0 001E5950 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801E89F4 001E5954 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801E89F8 001E5958 7C 08 03 A6 */ mtlr r0 +/* 801E89FC 001E595C 38 21 00 20 */ addi r1, r1, 0x20 +/* 801E8A00 001E5960 4E 80 00 20 */ blr + +.global MoveToWayPoint__17CWallCrawlerSwarmFRQ217CWallCrawlerSwarm5CBoidR13CStateManagerR9CVector3f +MoveToWayPoint__17CWallCrawlerSwarmFRQ217CWallCrawlerSwarm5CBoidR13CStateManagerR9CVector3f: +/* 801E8A04 001E5964 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 801E8A08 001E5968 7C 08 02 A6 */ mflr r0 +/* 801E8A0C 001E596C 90 01 00 94 */ stw r0, 0x94(r1) +/* 801E8A10 001E5970 DB E1 00 80 */ stfd f31, 0x80(r1) +/* 801E8A14 001E5974 F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0 +/* 801E8A18 001E5978 BF 61 00 6C */ stmw r27, 0x6c(r1) +/* 801E8A1C 001E597C 7C 9C 23 78 */ mr r28, r4 +/* 801E8A20 001E5980 7C BD 2B 78 */ mr r29, r5 +/* 801E8A24 001E5984 A0 04 00 3C */ lhz r0, 0x3c(r4) +/* 801E8A28 001E5988 7C 7B 1B 78 */ mr r27, r3 +/* 801E8A2C 001E598C 7C DE 33 78 */ mr r30, r6 +/* 801E8A30 001E5990 7F A3 EB 78 */ mr r3, r29 +/* 801E8A34 001E5994 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801E8A38 001E5998 38 81 00 10 */ addi r4, r1, 0x10 +/* 801E8A3C 001E599C 4B E6 3B 39 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801E8A40 001E59A0 7C 64 1B 78 */ mr r4, r3 +/* 801E8A44 001E59A4 38 61 00 1C */ addi r3, r1, 0x1c +/* 801E8A48 001E59A8 4B EB DB 05 */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 801E8A4C 001E59AC 80 83 00 04 */ lwz r4, 4(r3) +/* 801E8A50 001E59B0 28 04 00 00 */ cmplwi r4, 0 +/* 801E8A54 001E59B4 7C 9F 23 78 */ mr r31, r4 +/* 801E8A58 001E59B8 41 82 01 68 */ beq lbl_801E8BC0 +/* 801E8A5C 001E59BC C0 E4 00 50 */ lfs f7, 0x50(r4) +/* 801E8A60 001E59C0 C0 1C 00 1C */ lfs f0, 0x1c(r28) +/* 801E8A64 001E59C4 C0 64 00 40 */ lfs f3, 0x40(r4) +/* 801E8A68 001E59C8 EC C7 00 28 */ fsubs f6, f7, f0 +/* 801E8A6C 001E59CC C0 1C 00 0C */ lfs f0, 0xc(r28) +/* 801E8A70 001E59D0 C1 04 00 60 */ lfs f8, 0x60(r4) +/* 801E8A74 001E59D4 EC 83 00 28 */ fsubs f4, f3, f0 +/* 801E8A78 001E59D8 C0 1C 00 2C */ lfs f0, 0x2c(r28) +/* 801E8A7C 001E59DC EC 26 01 B2 */ fmuls f1, f6, f6 +/* 801E8A80 001E59E0 EC A8 00 28 */ fsubs f5, f8, f0 +/* 801E8A84 001E59E4 C0 1B 01 64 */ lfs f0, 0x164(r27) +/* 801E8A88 001E59E8 EC 44 01 32 */ fmuls f2, f4, f4 +/* 801E8A8C 001E59EC EC 00 00 32 */ fmuls f0, f0, f0 +/* 801E8A90 001E59F0 D0 61 00 48 */ stfs f3, 0x48(r1) +/* 801E8A94 001E59F4 EC 65 01 72 */ fmuls f3, f5, f5 +/* 801E8A98 001E59F8 EC 22 08 2A */ fadds f1, f2, f1 +/* 801E8A9C 001E59FC D0 E1 00 4C */ stfs f7, 0x4c(r1) +/* 801E8AA0 001E5A00 D1 01 00 50 */ stfs f8, 0x50(r1) +/* 801E8AA4 001E5A04 EC 23 08 2A */ fadds f1, f3, f1 +/* 801E8AA8 001E5A08 D0 81 00 54 */ stfs f4, 0x54(r1) +/* 801E8AAC 001E5A0C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801E8AB0 001E5A10 D0 C1 00 58 */ stfs f6, 0x58(r1) +/* 801E8AB4 001E5A14 D0 A1 00 5C */ stfs f5, 0x5c(r1) +/* 801E8AB8 001E5A18 40 80 00 80 */ bge lbl_801E8B38 +/* 801E8ABC 001E5A1C 7F A5 EB 78 */ mr r5, r29 +/* 801E8AC0 001E5A20 38 61 00 0C */ addi r3, r1, 0xc +/* 801E8AC4 001E5A24 4B E8 E6 71 */ bl NextWaypoint__15CScriptWaypointCFR13CStateManager +/* 801E8AC8 001E5A28 A0 01 00 0C */ lhz r0, 0xc(r1) +/* 801E8ACC 001E5A2C B0 1C 00 3C */ sth r0, 0x3c(r28) +/* 801E8AD0 001E5A30 A0 7C 00 3C */ lhz r3, 0x3c(r28) +/* 801E8AD4 001E5A34 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801E8AD8 001E5A38 7C 03 00 40 */ cmplw r3, r0 +/* 801E8ADC 001E5A3C 40 82 00 38 */ bne lbl_801E8B14 +/* 801E8AE0 001E5A40 80 1B 05 58 */ lwz r0, 0x558(r27) +/* 801E8AE4 001E5A44 2C 00 00 01 */ cmpwi r0, 1 +/* 801E8AE8 001E5A48 40 82 00 18 */ bne lbl_801E8B00 +/* 801E8AEC 001E5A4C 7F 63 DB 78 */ mr r3, r27 +/* 801E8AF0 001E5A50 7F 84 E3 78 */ mr r4, r28 +/* 801E8AF4 001E5A54 7F A5 EB 78 */ mr r5, r29 +/* 801E8AF8 001E5A58 48 00 1D 45 */ bl sub_801ea83c +/* 801E8AFC 001E5A5C 48 00 00 3C */ b lbl_801E8B38 +lbl_801E8B00: +/* 801E8B00 001E5A60 88 1C 00 80 */ lbz r0, 0x80(r28) +/* 801E8B04 001E5A64 38 60 00 00 */ li r3, 0 +/* 801E8B08 001E5A68 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801E8B0C 001E5A6C 98 1C 00 80 */ stb r0, 0x80(r28) +/* 801E8B10 001E5A70 48 00 00 B0 */ b lbl_801E8BC0 +lbl_801E8B14: +/* 801E8B14 001E5A74 A0 1C 00 3C */ lhz r0, 0x3c(r28) +/* 801E8B18 001E5A78 7F A3 EB 78 */ mr r3, r29 +/* 801E8B1C 001E5A7C 38 81 00 08 */ addi r4, r1, 8 +/* 801E8B20 001E5A80 B0 01 00 08 */ sth r0, 8(r1) +/* 801E8B24 001E5A84 4B E6 3A 51 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801E8B28 001E5A88 7C 64 1B 78 */ mr r4, r3 +/* 801E8B2C 001E5A8C 38 61 00 14 */ addi r3, r1, 0x14 +/* 801E8B30 001E5A90 4B EB DA 1D */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 801E8B34 001E5A94 83 E3 00 04 */ lwz r31, 4(r3) +lbl_801E8B38: +/* 801E8B38 001E5A98 C0 BF 00 60 */ lfs f5, 0x60(r31) +/* 801E8B3C 001E5A9C 38 61 00 3C */ addi r3, r1, 0x3c +/* 801E8B40 001E5AA0 C0 1C 00 2C */ lfs f0, 0x2c(r28) +/* 801E8B44 001E5AA4 38 81 00 30 */ addi r4, r1, 0x30 +/* 801E8B48 001E5AA8 C0 9F 00 50 */ lfs f4, 0x50(r31) +/* 801E8B4C 001E5AAC C0 7C 00 1C */ lfs f3, 0x1c(r28) +/* 801E8B50 001E5AB0 EC 45 00 28 */ fsubs f2, f5, f0 +/* 801E8B54 001E5AB4 C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 801E8B58 001E5AB8 C0 1C 00 0C */ lfs f0, 0xc(r28) +/* 801E8B5C 001E5ABC EC 64 18 28 */ fsubs f3, f4, f3 +/* 801E8B60 001E5AC0 C3 FB 01 4C */ lfs f31, 0x14c(r27) +/* 801E8B64 001E5AC4 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801E8B68 001E5AC8 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 801E8B6C 001E5ACC D0 81 00 28 */ stfs f4, 0x28(r1) +/* 801E8B70 001E5AD0 D0 A1 00 2C */ stfs f5, 0x2c(r1) +/* 801E8B74 001E5AD4 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801E8B78 001E5AD8 D0 61 00 34 */ stfs f3, 0x34(r1) +/* 801E8B7C 001E5ADC D0 41 00 38 */ stfs f2, 0x38(r1) +/* 801E8B80 001E5AE0 48 12 BC D1 */ bl AsNormalized__9CVector3fCFv +/* 801E8B84 001E5AE4 C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 801E8B88 001E5AE8 C0 61 00 40 */ lfs f3, 0x40(r1) +/* 801E8B8C 001E5AEC EC 1F 00 32 */ fmuls f0, f31, f0 +/* 801E8B90 001E5AF0 C0 3E 00 00 */ lfs f1, 0(r30) +/* 801E8B94 001E5AF4 C0 41 00 44 */ lfs f2, 0x44(r1) +/* 801E8B98 001E5AF8 EC 7F 00 F2 */ fmuls f3, f31, f3 +/* 801E8B9C 001E5AFC EC 01 00 2A */ fadds f0, f1, f0 +/* 801E8BA0 001E5B00 EC 3F 00 B2 */ fmuls f1, f31, f2 +/* 801E8BA4 001E5B04 D0 1E 00 00 */ stfs f0, 0(r30) +/* 801E8BA8 001E5B08 C0 1E 00 04 */ lfs f0, 4(r30) +/* 801E8BAC 001E5B0C EC 00 18 2A */ fadds f0, f0, f3 +/* 801E8BB0 001E5B10 D0 1E 00 04 */ stfs f0, 4(r30) +/* 801E8BB4 001E5B14 C0 1E 00 08 */ lfs f0, 8(r30) +/* 801E8BB8 001E5B18 EC 00 08 2A */ fadds f0, f0, f1 +/* 801E8BBC 001E5B1C D0 1E 00 08 */ stfs f0, 8(r30) +lbl_801E8BC0: +/* 801E8BC0 001E5B20 E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0 +/* 801E8BC4 001E5B24 CB E1 00 80 */ lfd f31, 0x80(r1) +/* 801E8BC8 001E5B28 BB 61 00 6C */ lmw r27, 0x6c(r1) +/* 801E8BCC 001E5B2C 80 01 00 94 */ lwz r0, 0x94(r1) +/* 801E8BD0 001E5B30 7C 08 03 A6 */ mtlr r0 +/* 801E8BD4 001E5B34 38 21 00 90 */ addi r1, r1, 0x90 +/* 801E8BD8 001E5B38 4E 80 00 20 */ blr + +.global "ApplyAlignment__17CWallCrawlerSwarmFRQ217CWallCrawlerSwarm5CBoidRCQ24rstl48reserved_vectorR9CVector3f" +"ApplyAlignment__17CWallCrawlerSwarmFRQ217CWallCrawlerSwarm5CBoidRCQ24rstl48reserved_vectorR9CVector3f": +/* 801E8BDC 001E5B3C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801E8BE0 001E5B40 7C 08 02 A6 */ mflr r0 +/* 801E8BE4 001E5B44 90 01 00 34 */ stw r0, 0x34(r1) +/* 801E8BE8 001E5B48 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801E8BEC 001E5B4C 7C DF 33 78 */ mr r31, r6 +/* 801E8BF0 001E5B50 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801E8BF4 001E5B54 7C 7E 1B 78 */ mr r30, r3 +/* 801E8BF8 001E5B58 80 05 00 00 */ lwz r0, 0(r5) +/* 801E8BFC 001E5B5C 2C 00 00 00 */ cmpwi r0, 0 +/* 801E8C00 001E5B60 40 81 01 2C */ ble lbl_801E8D2C +/* 801E8C04 001E5B64 C0 02 AD A0 */ lfs f0, lbl_805ACAC0@sda21(r2) +/* 801E8C08 001E5B68 38 E5 00 04 */ addi r7, r5, 4 +/* 801E8C0C 001E5B6C D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801E8C10 001E5B70 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801E8C14 001E5B74 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801E8C18 001E5B78 48 00 00 3C */ b lbl_801E8C54 +lbl_801E8C1C: +/* 801E8C1C 001E5B7C 80 67 00 00 */ lwz r3, 0(r7) +/* 801E8C20 001E5B80 38 E7 00 04 */ addi r7, r7, 4 +/* 801E8C24 001E5B84 C0 41 00 14 */ lfs f2, 0x14(r1) +/* 801E8C28 001E5B88 C0 23 00 04 */ lfs f1, 4(r3) +/* 801E8C2C 001E5B8C C0 83 00 24 */ lfs f4, 0x24(r3) +/* 801E8C30 001E5B90 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 801E8C34 001E5B94 EC 42 08 2A */ fadds f2, f2, f1 +/* 801E8C38 001E5B98 C0 63 00 14 */ lfs f3, 0x14(r3) +/* 801E8C3C 001E5B9C C0 21 00 18 */ lfs f1, 0x18(r1) +/* 801E8C40 001E5BA0 EC 00 20 2A */ fadds f0, f0, f4 +/* 801E8C44 001E5BA4 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801E8C48 001E5BA8 EC 21 18 2A */ fadds f1, f1, f3 +/* 801E8C4C 001E5BAC D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801E8C50 001E5BB0 D0 21 00 18 */ stfs f1, 0x18(r1) +lbl_801E8C54: +/* 801E8C54 001E5BB4 80 C5 00 00 */ lwz r6, 0(r5) +/* 801E8C58 001E5BB8 54 C0 10 3A */ slwi r0, r6, 2 +/* 801E8C5C 001E5BBC 7C 65 02 14 */ add r3, r5, r0 +/* 801E8C60 001E5BC0 38 03 00 04 */ addi r0, r3, 4 +/* 801E8C64 001E5BC4 7C 07 00 40 */ cmplw r7, r0 +/* 801E8C68 001E5BC8 40 82 FF B4 */ bne lbl_801E8C1C +/* 801E8C6C 001E5BCC 6C C3 80 00 */ xoris r3, r6, 0x8000 +/* 801E8C70 001E5BD0 3C 00 43 30 */ lis r0, 0x4330 +/* 801E8C74 001E5BD4 90 61 00 24 */ stw r3, 0x24(r1) +/* 801E8C78 001E5BD8 38 61 00 08 */ addi r3, r1, 8 +/* 801E8C7C 001E5BDC C8 22 AD E0 */ lfd f1, lbl_805ACB00@sda21(r2) +/* 801E8C80 001E5BE0 90 01 00 20 */ stw r0, 0x20(r1) +/* 801E8C84 001E5BE4 C0 82 AD B4 */ lfs f4, lbl_805ACAD4@sda21(r2) +/* 801E8C88 001E5BE8 C8 01 00 20 */ lfd f0, 0x20(r1) +/* 801E8C8C 001E5BEC C0 41 00 18 */ lfs f2, 0x18(r1) +/* 801E8C90 001E5BF0 EC 60 08 28 */ fsubs f3, f0, f1 +/* 801E8C94 001E5BF4 C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 801E8C98 001E5BF8 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 801E8C9C 001E5BFC EC 64 18 24 */ fdivs f3, f4, f3 +/* 801E8CA0 001E5C00 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 801E8CA4 001E5C04 EC 23 00 72 */ fmuls f1, f3, f1 +/* 801E8CA8 001E5C08 EC 03 00 32 */ fmuls f0, f3, f0 +/* 801E8CAC 001E5C0C D0 41 00 18 */ stfs f2, 0x18(r1) +/* 801E8CB0 001E5C10 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801E8CB4 001E5C14 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 801E8CB8 001E5C18 C0 44 00 24 */ lfs f2, 0x24(r4) +/* 801E8CBC 001E5C1C C0 24 00 14 */ lfs f1, 0x14(r4) +/* 801E8CC0 001E5C20 C0 04 00 04 */ lfs f0, 4(r4) +/* 801E8CC4 001E5C24 38 81 00 14 */ addi r4, r1, 0x14 +/* 801E8CC8 001E5C28 D0 01 00 08 */ stfs f0, 8(r1) +/* 801E8CCC 001E5C2C D0 21 00 0C */ stfs f1, 0xc(r1) +/* 801E8CD0 001E5C30 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 801E8CD4 001E5C34 48 12 B9 5D */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f +/* 801E8CD8 001E5C38 C0 02 AD DC */ lfs f0, lbl_805ACAFC@sda21(r2) +/* 801E8CDC 001E5C3C C0 9E 01 44 */ lfs f4, 0x144(r30) +/* 801E8CE0 001E5C40 EC A1 00 24 */ fdivs f5, f1, f0 +/* 801E8CE4 001E5C44 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 801E8CE8 001E5C48 C0 61 00 18 */ lfs f3, 0x18(r1) +/* 801E8CEC 001E5C4C C0 41 00 1C */ lfs f2, 0x1c(r1) +/* 801E8CF0 001E5C50 C0 3F 00 00 */ lfs f1, 0(r31) +/* 801E8CF4 001E5C54 EC 04 00 32 */ fmuls f0, f4, f0 +/* 801E8CF8 001E5C58 EC 64 00 F2 */ fmuls f3, f4, f3 +/* 801E8CFC 001E5C5C EC 44 00 B2 */ fmuls f2, f4, f2 +/* 801E8D00 001E5C60 EC 05 00 32 */ fmuls f0, f5, f0 +/* 801E8D04 001E5C64 EC 65 00 F2 */ fmuls f3, f5, f3 +/* 801E8D08 001E5C68 EC 45 00 B2 */ fmuls f2, f5, f2 +/* 801E8D0C 001E5C6C EC 01 00 2A */ fadds f0, f1, f0 +/* 801E8D10 001E5C70 D0 1F 00 00 */ stfs f0, 0(r31) +/* 801E8D14 001E5C74 C0 1F 00 04 */ lfs f0, 4(r31) +/* 801E8D18 001E5C78 EC 00 18 2A */ fadds f0, f0, f3 +/* 801E8D1C 001E5C7C D0 1F 00 04 */ stfs f0, 4(r31) +/* 801E8D20 001E5C80 C0 1F 00 08 */ lfs f0, 8(r31) +/* 801E8D24 001E5C84 EC 00 10 2A */ fadds f0, f0, f2 +/* 801E8D28 001E5C88 D0 1F 00 08 */ stfs f0, 8(r31) +lbl_801E8D2C: +/* 801E8D2C 001E5C8C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801E8D30 001E5C90 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801E8D34 001E5C94 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801E8D38 001E5C98 7C 08 03 A6 */ mtlr r0 +/* 801E8D3C 001E5C9C 38 21 00 30 */ addi r1, r1, 0x30 +/* 801E8D40 001E5CA0 4E 80 00 20 */ blr + +.global ApplyAttraction__17CWallCrawlerSwarmFRQ217CWallCrawlerSwarm5CBoidRC9CVector3fffR9CVector3f +ApplyAttraction__17CWallCrawlerSwarmFRQ217CWallCrawlerSwarm5CBoidRC9CVector3fffR9CVector3f: +/* 801E8D44 001E5CA4 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801E8D48 001E5CA8 7C 08 02 A6 */ mflr r0 +/* 801E8D4C 001E5CAC 90 01 00 54 */ stw r0, 0x54(r1) +/* 801E8D50 001E5CB0 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 801E8D54 001E5CB4 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 801E8D58 001E5CB8 DB C1 00 30 */ stfd f30, 0x30(r1) +/* 801E8D5C 001E5CBC F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 +/* 801E8D60 001E5CC0 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801E8D64 001E5CC4 C0 85 00 04 */ lfs f4, 4(r5) +/* 801E8D68 001E5CC8 FF C0 08 90 */ fmr f30, f1 +/* 801E8D6C 001E5CCC C0 04 00 1C */ lfs f0, 0x1c(r4) +/* 801E8D70 001E5CD0 FF E0 10 90 */ fmr f31, f2 +/* 801E8D74 001E5CD4 C0 65 00 08 */ lfs f3, 8(r5) +/* 801E8D78 001E5CD8 7C DF 33 78 */ mr r31, r6 +/* 801E8D7C 001E5CDC C0 44 00 2C */ lfs f2, 0x2c(r4) +/* 801E8D80 001E5CE0 C0 25 00 00 */ lfs f1, 0(r5) +/* 801E8D84 001E5CE4 EC 84 00 28 */ fsubs f4, f4, f0 +/* 801E8D88 001E5CE8 C0 04 00 0C */ lfs f0, 0xc(r4) +/* 801E8D8C 001E5CEC EC 43 10 28 */ fsubs f2, f3, f2 +/* 801E8D90 001E5CF0 38 61 00 14 */ addi r3, r1, 0x14 +/* 801E8D94 001E5CF4 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801E8D98 001E5CF8 D0 81 00 18 */ stfs f4, 0x18(r1) +/* 801E8D9C 001E5CFC D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 801E8DA0 001E5D00 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801E8DA4 001E5D04 48 12 B9 55 */ bl CanBeNormalized__9CVector3fCFv +/* 801E8DA8 001E5D08 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E8DAC 001E5D0C 41 82 00 98 */ beq lbl_801E8E44 +/* 801E8DB0 001E5D10 C0 21 00 14 */ lfs f1, 0x14(r1) +/* 801E8DB4 001E5D14 EC 7E 07 B2 */ fmuls f3, f30, f30 +/* 801E8DB8 001E5D18 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 801E8DBC 001E5D1C EC 21 00 72 */ fmuls f1, f1, f1 +/* 801E8DC0 001E5D20 C0 41 00 1C */ lfs f2, 0x1c(r1) +/* 801E8DC4 001E5D24 EC 00 00 32 */ fmuls f0, f0, f0 +/* 801E8DC8 001E5D28 EC 42 00 B2 */ fmuls f2, f2, f2 +/* 801E8DCC 001E5D2C EC 01 00 2A */ fadds f0, f1, f0 +/* 801E8DD0 001E5D30 EC 02 00 2A */ fadds f0, f2, f0 +/* 801E8DD4 001E5D34 FC 00 18 40 */ fcmpo cr0, f0, f3 +/* 801E8DD8 001E5D38 40 81 00 0C */ ble lbl_801E8DE4 +/* 801E8DDC 001E5D3C C3 C2 AD A0 */ lfs f30, lbl_805ACAC0@sda21(r2) +/* 801E8DE0 001E5D40 48 00 00 10 */ b lbl_801E8DF0 +lbl_801E8DE4: +/* 801E8DE4 001E5D44 EC 00 18 24 */ fdivs f0, f0, f3 +/* 801E8DE8 001E5D48 C0 22 AD B4 */ lfs f1, lbl_805ACAD4@sda21(r2) +/* 801E8DEC 001E5D4C EF C1 00 28 */ fsubs f30, f1, f0 +lbl_801E8DF0: +/* 801E8DF0 001E5D50 38 61 00 08 */ addi r3, r1, 8 +/* 801E8DF4 001E5D54 38 81 00 14 */ addi r4, r1, 0x14 +/* 801E8DF8 001E5D58 48 12 BA 59 */ bl AsNormalized__9CVector3fCFv +/* 801E8DFC 001E5D5C C0 01 00 08 */ lfs f0, 8(r1) +/* 801E8E00 001E5D60 C0 21 00 0C */ lfs f1, 0xc(r1) +/* 801E8E04 001E5D64 EC 1E 00 32 */ fmuls f0, f30, f0 +/* 801E8E08 001E5D68 C0 41 00 10 */ lfs f2, 0x10(r1) +/* 801E8E0C 001E5D6C EC 7E 00 72 */ fmuls f3, f30, f1 +/* 801E8E10 001E5D70 C0 3F 00 00 */ lfs f1, 0(r31) +/* 801E8E14 001E5D74 EC 5E 00 B2 */ fmuls f2, f30, f2 +/* 801E8E18 001E5D78 EC 1F 00 32 */ fmuls f0, f31, f0 +/* 801E8E1C 001E5D7C EC 7F 00 F2 */ fmuls f3, f31, f3 +/* 801E8E20 001E5D80 EC 5F 00 B2 */ fmuls f2, f31, f2 +/* 801E8E24 001E5D84 EC 01 00 2A */ fadds f0, f1, f0 +/* 801E8E28 001E5D88 D0 1F 00 00 */ stfs f0, 0(r31) +/* 801E8E2C 001E5D8C C0 1F 00 04 */ lfs f0, 4(r31) +/* 801E8E30 001E5D90 EC 00 18 2A */ fadds f0, f0, f3 +/* 801E8E34 001E5D94 D0 1F 00 04 */ stfs f0, 4(r31) +/* 801E8E38 001E5D98 C0 1F 00 08 */ lfs f0, 8(r31) +/* 801E8E3C 001E5D9C EC 00 10 2A */ fadds f0, f0, f2 +/* 801E8E40 001E5DA0 D0 1F 00 08 */ stfs f0, 8(r31) +lbl_801E8E44: +/* 801E8E44 001E5DA4 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 801E8E48 001E5DA8 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 801E8E4C 001E5DAC E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 +/* 801E8E50 001E5DB0 CB C1 00 30 */ lfd f30, 0x30(r1) +/* 801E8E54 001E5DB4 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801E8E58 001E5DB8 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801E8E5C 001E5DBC 7C 08 03 A6 */ mtlr r0 +/* 801E8E60 001E5DC0 38 21 00 50 */ addi r1, r1, 0x50 +/* 801E8E64 001E5DC4 4E 80 00 20 */ blr + +.global ApplyCohesion__17CWallCrawlerSwarmFRQ217CWallCrawlerSwarm5CBoidRC9CVector3fffR9CVector3f +ApplyCohesion__17CWallCrawlerSwarmFRQ217CWallCrawlerSwarm5CBoidRC9CVector3fffR9CVector3f: +/* 801E8E68 001E5DC8 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801E8E6C 001E5DCC 7C 08 02 A6 */ mflr r0 +/* 801E8E70 001E5DD0 90 01 00 54 */ stw r0, 0x54(r1) +/* 801E8E74 001E5DD4 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 801E8E78 001E5DD8 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 801E8E7C 001E5DDC DB C1 00 30 */ stfd f30, 0x30(r1) +/* 801E8E80 001E5DE0 F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 +/* 801E8E84 001E5DE4 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801E8E88 001E5DE8 C0 85 00 04 */ lfs f4, 4(r5) +/* 801E8E8C 001E5DEC FF C0 08 90 */ fmr f30, f1 +/* 801E8E90 001E5DF0 C0 04 00 1C */ lfs f0, 0x1c(r4) +/* 801E8E94 001E5DF4 FF E0 10 90 */ fmr f31, f2 +/* 801E8E98 001E5DF8 C0 65 00 08 */ lfs f3, 8(r5) +/* 801E8E9C 001E5DFC 7C DF 33 78 */ mr r31, r6 +/* 801E8EA0 001E5E00 C0 44 00 2C */ lfs f2, 0x2c(r4) +/* 801E8EA4 001E5E04 C0 25 00 00 */ lfs f1, 0(r5) +/* 801E8EA8 001E5E08 EC 84 00 28 */ fsubs f4, f4, f0 +/* 801E8EAC 001E5E0C C0 04 00 0C */ lfs f0, 0xc(r4) +/* 801E8EB0 001E5E10 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801E8EB4 001E5E14 38 61 00 14 */ addi r3, r1, 0x14 +/* 801E8EB8 001E5E18 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801E8EBC 001E5E1C D0 81 00 18 */ stfs f4, 0x18(r1) +/* 801E8EC0 001E5E20 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 801E8EC4 001E5E24 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801E8EC8 001E5E28 48 12 B8 31 */ bl CanBeNormalized__9CVector3fCFv +/* 801E8ECC 001E5E2C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E8ED0 001E5E30 41 82 00 90 */ beq lbl_801E8F60 +/* 801E8ED4 001E5E34 C0 21 00 14 */ lfs f1, 0x14(r1) +/* 801E8ED8 001E5E38 EC 7E 07 B2 */ fmuls f3, f30, f30 +/* 801E8EDC 001E5E3C C0 01 00 18 */ lfs f0, 0x18(r1) +/* 801E8EE0 001E5E40 EC 21 00 72 */ fmuls f1, f1, f1 +/* 801E8EE4 001E5E44 C0 41 00 1C */ lfs f2, 0x1c(r1) +/* 801E8EE8 001E5E48 EC 00 00 32 */ fmuls f0, f0, f0 +/* 801E8EEC 001E5E4C EC 42 00 B2 */ fmuls f2, f2, f2 +/* 801E8EF0 001E5E50 EC 01 00 2A */ fadds f0, f1, f0 +/* 801E8EF4 001E5E54 EC 02 00 2A */ fadds f0, f2, f0 +/* 801E8EF8 001E5E58 FC 00 18 40 */ fcmpo cr0, f0, f3 +/* 801E8EFC 001E5E5C 40 81 00 0C */ ble lbl_801E8F08 +/* 801E8F00 001E5E60 C3 C2 AD B4 */ lfs f30, lbl_805ACAD4@sda21(r2) +/* 801E8F04 001E5E64 48 00 00 08 */ b lbl_801E8F0C +lbl_801E8F08: +/* 801E8F08 001E5E68 EF C0 18 24 */ fdivs f30, f0, f3 +lbl_801E8F0C: +/* 801E8F0C 001E5E6C 38 61 00 08 */ addi r3, r1, 8 +/* 801E8F10 001E5E70 38 81 00 14 */ addi r4, r1, 0x14 +/* 801E8F14 001E5E74 48 12 B9 3D */ bl AsNormalized__9CVector3fCFv +/* 801E8F18 001E5E78 C0 01 00 08 */ lfs f0, 8(r1) +/* 801E8F1C 001E5E7C C0 21 00 0C */ lfs f1, 0xc(r1) +/* 801E8F20 001E5E80 EC 1E 00 32 */ fmuls f0, f30, f0 +/* 801E8F24 001E5E84 C0 41 00 10 */ lfs f2, 0x10(r1) +/* 801E8F28 001E5E88 EC 7E 00 72 */ fmuls f3, f30, f1 +/* 801E8F2C 001E5E8C C0 3F 00 00 */ lfs f1, 0(r31) +/* 801E8F30 001E5E90 EC 5E 00 B2 */ fmuls f2, f30, f2 +/* 801E8F34 001E5E94 EC 1F 00 32 */ fmuls f0, f31, f0 +/* 801E8F38 001E5E98 EC 7F 00 F2 */ fmuls f3, f31, f3 +/* 801E8F3C 001E5E9C EC 5F 00 B2 */ fmuls f2, f31, f2 +/* 801E8F40 001E5EA0 EC 01 00 2A */ fadds f0, f1, f0 +/* 801E8F44 001E5EA4 D0 1F 00 00 */ stfs f0, 0(r31) +/* 801E8F48 001E5EA8 C0 1F 00 04 */ lfs f0, 4(r31) +/* 801E8F4C 001E5EAC EC 00 18 2A */ fadds f0, f0, f3 +/* 801E8F50 001E5EB0 D0 1F 00 04 */ stfs f0, 4(r31) +/* 801E8F54 001E5EB4 C0 1F 00 08 */ lfs f0, 8(r31) +/* 801E8F58 001E5EB8 EC 00 10 2A */ fadds f0, f0, f2 +/* 801E8F5C 001E5EBC D0 1F 00 08 */ stfs f0, 8(r31) +lbl_801E8F60: +/* 801E8F60 001E5EC0 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 801E8F64 001E5EC4 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 801E8F68 001E5EC8 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 +/* 801E8F6C 001E5ECC CB C1 00 30 */ lfd f30, 0x30(r1) +/* 801E8F70 001E5ED0 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801E8F74 001E5ED4 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801E8F78 001E5ED8 7C 08 03 A6 */ mtlr r0 +/* 801E8F7C 001E5EDC 38 21 00 50 */ addi r1, r1, 0x50 +/* 801E8F80 001E5EE0 4E 80 00 20 */ blr + +.global "ApplyCohesion__17CWallCrawlerSwarmFRQ217CWallCrawlerSwarm5CBoidRCQ24rstl48reserved_vectorR9CVector3f" +"ApplyCohesion__17CWallCrawlerSwarmFRQ217CWallCrawlerSwarm5CBoidRCQ24rstl48reserved_vectorR9CVector3f": +/* 801E8F84 001E5EE4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801E8F88 001E5EE8 7C 08 02 A6 */ mflr r0 +/* 801E8F8C 001E5EEC 90 01 00 24 */ stw r0, 0x24(r1) +/* 801E8F90 001E5EF0 80 05 00 00 */ lwz r0, 0(r5) +/* 801E8F94 001E5EF4 2C 00 00 00 */ cmpwi r0, 0 +/* 801E8F98 001E5EF8 40 81 00 C4 */ ble lbl_801E905C +/* 801E8F9C 001E5EFC C0 02 AD A0 */ lfs f0, lbl_805ACAC0@sda21(r2) +/* 801E8FA0 001E5F00 39 25 00 04 */ addi r9, r5, 4 +/* 801E8FA4 001E5F04 D0 01 00 08 */ stfs f0, 8(r1) +/* 801E8FA8 001E5F08 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801E8FAC 001E5F0C D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801E8FB0 001E5F10 48 00 00 3C */ b lbl_801E8FEC +lbl_801E8FB4: +/* 801E8FB4 001E5F14 80 E9 00 00 */ lwz r7, 0(r9) +/* 801E8FB8 001E5F18 39 29 00 04 */ addi r9, r9, 4 +/* 801E8FBC 001E5F1C C0 41 00 08 */ lfs f2, 8(r1) +/* 801E8FC0 001E5F20 C0 27 00 0C */ lfs f1, 0xc(r7) +/* 801E8FC4 001E5F24 C0 87 00 2C */ lfs f4, 0x2c(r7) +/* 801E8FC8 001E5F28 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 801E8FCC 001E5F2C EC 42 08 2A */ fadds f2, f2, f1 +/* 801E8FD0 001E5F30 C0 67 00 1C */ lfs f3, 0x1c(r7) +/* 801E8FD4 001E5F34 C0 21 00 0C */ lfs f1, 0xc(r1) +/* 801E8FD8 001E5F38 EC 00 20 2A */ fadds f0, f0, f4 +/* 801E8FDC 001E5F3C D0 41 00 08 */ stfs f2, 8(r1) +/* 801E8FE0 001E5F40 EC 21 18 2A */ fadds f1, f1, f3 +/* 801E8FE4 001E5F44 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801E8FE8 001E5F48 D0 21 00 0C */ stfs f1, 0xc(r1) +lbl_801E8FEC: +/* 801E8FEC 001E5F4C 81 05 00 00 */ lwz r8, 0(r5) +/* 801E8FF0 001E5F50 55 00 10 3A */ slwi r0, r8, 2 +/* 801E8FF4 001E5F54 7C E5 02 14 */ add r7, r5, r0 +/* 801E8FF8 001E5F58 38 07 00 04 */ addi r0, r7, 4 +/* 801E8FFC 001E5F5C 7C 09 00 40 */ cmplw r9, r0 +/* 801E9000 001E5F60 40 82 FF B4 */ bne lbl_801E8FB4 +/* 801E9004 001E5F64 6D 05 80 00 */ xoris r5, r8, 0x8000 +/* 801E9008 001E5F68 3C 00 43 30 */ lis r0, 0x4330 +/* 801E900C 001E5F6C 90 A1 00 1C */ stw r5, 0x1c(r1) +/* 801E9010 001E5F70 38 A1 00 08 */ addi r5, r1, 8 +/* 801E9014 001E5F74 C8 22 AD E0 */ lfd f1, lbl_805ACB00@sda21(r2) +/* 801E9018 001E5F78 90 01 00 18 */ stw r0, 0x18(r1) +/* 801E901C 001E5F7C C0 82 AD B4 */ lfs f4, lbl_805ACAD4@sda21(r2) +/* 801E9020 001E5F80 C8 01 00 18 */ lfd f0, 0x18(r1) +/* 801E9024 001E5F84 C0 41 00 0C */ lfs f2, 0xc(r1) +/* 801E9028 001E5F88 EC 60 08 28 */ fsubs f3, f0, f1 +/* 801E902C 001E5F8C C0 21 00 10 */ lfs f1, 0x10(r1) +/* 801E9030 001E5F90 C0 01 00 08 */ lfs f0, 8(r1) +/* 801E9034 001E5F94 EC 64 18 24 */ fdivs f3, f4, f3 +/* 801E9038 001E5F98 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 801E903C 001E5F9C EC 23 00 72 */ fmuls f1, f3, f1 +/* 801E9040 001E5FA0 EC 03 00 32 */ fmuls f0, f3, f0 +/* 801E9044 001E5FA4 D0 41 00 0C */ stfs f2, 0xc(r1) +/* 801E9048 001E5FA8 D0 01 00 08 */ stfs f0, 8(r1) +/* 801E904C 001E5FAC D0 21 00 10 */ stfs f1, 0x10(r1) +/* 801E9050 001E5FB0 C0 23 01 3C */ lfs f1, 0x13c(r3) +/* 801E9054 001E5FB4 C0 43 01 40 */ lfs f2, 0x140(r3) +/* 801E9058 001E5FB8 4B FF FE 11 */ bl ApplyCohesion__17CWallCrawlerSwarmFRQ217CWallCrawlerSwarm5CBoidRC9CVector3fffR9CVector3f +lbl_801E905C: +/* 801E905C 001E5FBC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801E9060 001E5FC0 7C 08 03 A6 */ mtlr r0 +/* 801E9064 001E5FC4 38 21 00 20 */ addi r1, r1, 0x20 +/* 801E9068 001E5FC8 4E 80 00 20 */ blr + +.global ApplySeparation__17CWallCrawlerSwarmFRQ217CWallCrawlerSwarm5CBoidRC9CVector3fffR9CVector3f +ApplySeparation__17CWallCrawlerSwarmFRQ217CWallCrawlerSwarm5CBoidRC9CVector3fffR9CVector3f: +/* 801E906C 001E5FCC 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801E9070 001E5FD0 7C 08 02 A6 */ mflr r0 +/* 801E9074 001E5FD4 90 01 00 54 */ stw r0, 0x54(r1) +/* 801E9078 001E5FD8 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 801E907C 001E5FDC F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 801E9080 001E5FE0 DB C1 00 30 */ stfd f30, 0x30(r1) +/* 801E9084 001E5FE4 F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 +/* 801E9088 001E5FE8 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801E908C 001E5FEC C0 84 00 1C */ lfs f4, 0x1c(r4) +/* 801E9090 001E5FF0 FF C0 08 90 */ fmr f30, f1 +/* 801E9094 001E5FF4 C0 05 00 04 */ lfs f0, 4(r5) +/* 801E9098 001E5FF8 FF E0 10 90 */ fmr f31, f2 +/* 801E909C 001E5FFC C0 64 00 2C */ lfs f3, 0x2c(r4) +/* 801E90A0 001E6000 7C DF 33 78 */ mr r31, r6 +/* 801E90A4 001E6004 C0 45 00 08 */ lfs f2, 8(r5) +/* 801E90A8 001E6008 C0 24 00 0C */ lfs f1, 0xc(r4) +/* 801E90AC 001E600C EC 84 00 28 */ fsubs f4, f4, f0 +/* 801E90B0 001E6010 C0 05 00 00 */ lfs f0, 0(r5) +/* 801E90B4 001E6014 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801E90B8 001E6018 38 61 00 14 */ addi r3, r1, 0x14 +/* 801E90BC 001E601C EC 01 00 28 */ fsubs f0, f1, f0 +/* 801E90C0 001E6020 D0 81 00 18 */ stfs f4, 0x18(r1) +/* 801E90C4 001E6024 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 801E90C8 001E6028 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801E90CC 001E602C 48 12 B6 2D */ bl CanBeNormalized__9CVector3fCFv +/* 801E90D0 001E6030 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E90D4 001E6034 41 82 00 90 */ beq lbl_801E9164 +/* 801E90D8 001E6038 C0 21 00 14 */ lfs f1, 0x14(r1) +/* 801E90DC 001E603C EC 7E 07 B2 */ fmuls f3, f30, f30 +/* 801E90E0 001E6040 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 801E90E4 001E6044 EC 21 00 72 */ fmuls f1, f1, f1 +/* 801E90E8 001E6048 C0 41 00 1C */ lfs f2, 0x1c(r1) +/* 801E90EC 001E604C EC 00 00 32 */ fmuls f0, f0, f0 +/* 801E90F0 001E6050 EC 42 00 B2 */ fmuls f2, f2, f2 +/* 801E90F4 001E6054 EC 01 00 2A */ fadds f0, f1, f0 +/* 801E90F8 001E6058 EC 02 00 2A */ fadds f0, f2, f0 +/* 801E90FC 001E605C FC 00 18 40 */ fcmpo cr0, f0, f3 +/* 801E9100 001E6060 40 80 00 64 */ bge lbl_801E9164 +/* 801E9104 001E6064 EC 00 18 24 */ fdivs f0, f0, f3 +/* 801E9108 001E6068 C0 22 AD B4 */ lfs f1, lbl_805ACAD4@sda21(r2) +/* 801E910C 001E606C 38 61 00 08 */ addi r3, r1, 8 +/* 801E9110 001E6070 38 81 00 14 */ addi r4, r1, 0x14 +/* 801E9114 001E6074 EF C1 00 28 */ fsubs f30, f1, f0 +/* 801E9118 001E6078 48 12 B7 39 */ bl AsNormalized__9CVector3fCFv +/* 801E911C 001E607C C0 01 00 08 */ lfs f0, 8(r1) +/* 801E9120 001E6080 C0 21 00 0C */ lfs f1, 0xc(r1) +/* 801E9124 001E6084 EC 1E 00 32 */ fmuls f0, f30, f0 +/* 801E9128 001E6088 C0 41 00 10 */ lfs f2, 0x10(r1) +/* 801E912C 001E608C EC 7E 00 72 */ fmuls f3, f30, f1 +/* 801E9130 001E6090 C0 3F 00 00 */ lfs f1, 0(r31) +/* 801E9134 001E6094 EC 5E 00 B2 */ fmuls f2, f30, f2 +/* 801E9138 001E6098 EC 1F 00 32 */ fmuls f0, f31, f0 +/* 801E913C 001E609C EC 7F 00 F2 */ fmuls f3, f31, f3 +/* 801E9140 001E60A0 EC 5F 00 B2 */ fmuls f2, f31, f2 +/* 801E9144 001E60A4 EC 01 00 2A */ fadds f0, f1, f0 +/* 801E9148 001E60A8 D0 1F 00 00 */ stfs f0, 0(r31) +/* 801E914C 001E60AC C0 1F 00 04 */ lfs f0, 4(r31) +/* 801E9150 001E60B0 EC 00 18 2A */ fadds f0, f0, f3 +/* 801E9154 001E60B4 D0 1F 00 04 */ stfs f0, 4(r31) +/* 801E9158 001E60B8 C0 1F 00 08 */ lfs f0, 8(r31) +/* 801E915C 001E60BC EC 00 10 2A */ fadds f0, f0, f2 +/* 801E9160 001E60C0 D0 1F 00 08 */ stfs f0, 8(r31) +lbl_801E9164: +/* 801E9164 001E60C4 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 801E9168 001E60C8 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 801E916C 001E60CC E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 +/* 801E9170 001E60D0 CB C1 00 30 */ lfd f30, 0x30(r1) +/* 801E9174 001E60D4 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801E9178 001E60D8 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801E917C 001E60DC 7C 08 03 A6 */ mtlr r0 +/* 801E9180 001E60E0 38 21 00 50 */ addi r1, r1, 0x50 +/* 801E9184 001E60E4 4E 80 00 20 */ blr + +.global "ApplySeparation__17CWallCrawlerSwarmFRQ217CWallCrawlerSwarm5CBoidRCQ24rstl48reserved_vectorR9CVector3f" +"ApplySeparation__17CWallCrawlerSwarmFRQ217CWallCrawlerSwarm5CBoidRCQ24rstl48reserved_vectorR9CVector3f": +/* 801E9188 001E60E8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801E918C 001E60EC 7C 08 02 A6 */ mflr r0 +/* 801E9190 001E60F0 90 01 00 24 */ stw r0, 0x24(r1) +/* 801E9194 001E60F4 80 05 00 00 */ lwz r0, 0(r5) +/* 801E9198 001E60F8 2C 00 00 00 */ cmpwi r0, 0 +/* 801E919C 001E60FC 40 81 00 A0 */ ble lbl_801E923C +/* 801E91A0 001E6100 C0 C2 AD A0 */ lfs f6, lbl_805ACAC0@sda21(r2) +/* 801E91A4 001E6104 39 05 00 04 */ addi r8, r5, 4 +/* 801E91A8 001E6108 C0 E2 AD A4 */ lfs f7, lbl_805ACAC4@sda21(r2) +/* 801E91AC 001E610C D0 C1 00 08 */ stfs f6, 8(r1) +/* 801E91B0 001E6110 D0 C1 00 0C */ stfs f6, 0xc(r1) +/* 801E91B4 001E6114 D0 C1 00 10 */ stfs f6, 0x10(r1) +/* 801E91B8 001E6118 48 00 00 5C */ b lbl_801E9214 +lbl_801E91BC: +/* 801E91BC 001E611C 80 E8 00 00 */ lwz r7, 0(r8) +/* 801E91C0 001E6120 C0 04 00 1C */ lfs f0, 0x1c(r4) +/* 801E91C4 001E6124 C0 67 00 1C */ lfs f3, 0x1c(r7) +/* 801E91C8 001E6128 C0 A4 00 0C */ lfs f5, 0xc(r4) +/* 801E91CC 001E612C EC 00 18 28 */ fsubs f0, f0, f3 +/* 801E91D0 001E6130 C0 87 00 0C */ lfs f4, 0xc(r7) +/* 801E91D4 001E6134 C0 44 00 2C */ lfs f2, 0x2c(r4) +/* 801E91D8 001E6138 C0 27 00 2C */ lfs f1, 0x2c(r7) +/* 801E91DC 001E613C EC A5 20 28 */ fsubs f5, f5, f4 +/* 801E91E0 001E6140 EC 00 00 32 */ fmuls f0, f0, f0 +/* 801E91E4 001E6144 EC 42 08 28 */ fsubs f2, f2, f1 +/* 801E91E8 001E6148 EC 05 01 7A */ fmadds f0, f5, f5, f0 +/* 801E91EC 001E614C EC 02 00 BA */ fmadds f0, f2, f2, f0 +/* 801E91F0 001E6150 FC 06 00 00 */ fcmpu cr0, f6, f0 +/* 801E91F4 001E6154 41 82 00 1C */ beq lbl_801E9210 +/* 801E91F8 001E6158 FC 00 38 40 */ fcmpo cr0, f0, f7 +/* 801E91FC 001E615C 40 80 00 14 */ bge lbl_801E9210 +/* 801E9200 001E6160 FC E0 00 90 */ fmr f7, f0 +/* 801E9204 001E6164 D0 81 00 08 */ stfs f4, 8(r1) +/* 801E9208 001E6168 D0 61 00 0C */ stfs f3, 0xc(r1) +/* 801E920C 001E616C D0 21 00 10 */ stfs f1, 0x10(r1) +lbl_801E9210: +/* 801E9210 001E6170 39 08 00 04 */ addi r8, r8, 4 +lbl_801E9214: +/* 801E9214 001E6174 80 05 00 00 */ lwz r0, 0(r5) +/* 801E9218 001E6178 54 00 10 3A */ slwi r0, r0, 2 +/* 801E921C 001E617C 7C E5 02 14 */ add r7, r5, r0 +/* 801E9220 001E6180 38 07 00 04 */ addi r0, r7, 4 +/* 801E9224 001E6184 7C 08 00 40 */ cmplw r8, r0 +/* 801E9228 001E6188 40 82 FF 94 */ bne lbl_801E91BC +/* 801E922C 001E618C C0 23 01 3C */ lfs f1, 0x13c(r3) +/* 801E9230 001E6190 38 A1 00 08 */ addi r5, r1, 8 +/* 801E9234 001E6194 C0 43 01 48 */ lfs f2, 0x148(r3) +/* 801E9238 001E6198 4B FF FE 35 */ bl ApplySeparation__17CWallCrawlerSwarmFRQ217CWallCrawlerSwarm5CBoidRC9CVector3fffR9CVector3f +lbl_801E923C: +/* 801E923C 001E619C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801E9240 001E61A0 7C 08 03 A6 */ mtlr r0 +/* 801E9244 001E61A4 38 21 00 20 */ addi r1, r1, 0x20 +/* 801E9248 001E61A8 4E 80 00 20 */ blr + +.global "BuildBoidNearList__17CWallCrawlerSwarmFRCQ217CWallCrawlerSwarm5CBoidfRQ24rstl48reserved_vector" +"BuildBoidNearList__17CWallCrawlerSwarmFRCQ217CWallCrawlerSwarm5CBoidfRQ24rstl48reserved_vector": +/* 801E924C 001E61AC 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801E9250 001E61B0 7C 08 02 A6 */ mflr r0 +/* 801E9254 001E61B4 90 01 00 54 */ stw r0, 0x54(r1) +/* 801E9258 001E61B8 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 801E925C 001E61BC F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 801E9260 001E61C0 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801E9264 001E61C4 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801E9268 001E61C8 7C 9E 23 78 */ mr r30, r4 +/* 801E926C 001E61CC FF E0 08 90 */ fmr f31, f1 +/* 801E9270 001E61D0 C0 44 00 2C */ lfs f2, 0x2c(r4) +/* 801E9274 001E61D4 7C BF 2B 78 */ mr r31, r5 +/* 801E9278 001E61D8 C0 24 00 1C */ lfs f1, 0x1c(r4) +/* 801E927C 001E61DC 38 81 00 20 */ addi r4, r1, 0x20 +/* 801E9280 001E61E0 C0 1E 00 0C */ lfs f0, 0xc(r30) +/* 801E9284 001E61E4 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 801E9288 001E61E8 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801E928C 001E61EC D0 41 00 28 */ stfs f2, 0x28(r1) +/* 801E9290 001E61F0 48 00 0E E9 */ bl GetListAt__17CWallCrawlerSwarmFRC9CVector3f +/* 801E9294 001E61F4 C1 1E 00 0C */ lfs f8, 0xc(r30) +/* 801E9298 001E61F8 C1 3E 00 1C */ lfs f9, 0x1c(r30) +/* 801E929C 001E61FC C1 5E 00 2C */ lfs f10, 0x2c(r30) +/* 801E92A0 001E6200 C0 02 AD A0 */ lfs f0, lbl_805ACAC0@sda21(r2) +/* 801E92A4 001E6204 48 00 00 80 */ b lbl_801E9324 +lbl_801E92A8: +/* 801E92A8 001E6208 C0 63 00 1C */ lfs f3, 0x1c(r3) +/* 801E92AC 001E620C C0 23 00 0C */ lfs f1, 0xc(r3) +/* 801E92B0 001E6210 EC C3 48 28 */ fsubs f6, f3, f9 +/* 801E92B4 001E6214 C0 E3 00 2C */ lfs f7, 0x2c(r3) +/* 801E92B8 001E6218 EC 81 40 28 */ fsubs f4, f1, f8 +/* 801E92BC 001E621C D0 21 00 08 */ stfs f1, 8(r1) +/* 801E92C0 001E6220 EC A7 50 28 */ fsubs f5, f7, f10 +/* 801E92C4 001E6224 EC 26 01 B2 */ fmuls f1, f6, f6 +/* 801E92C8 001E6228 EC 44 01 32 */ fmuls f2, f4, f4 +/* 801E92CC 001E622C D0 61 00 0C */ stfs f3, 0xc(r1) +/* 801E92D0 001E6230 EC 65 01 72 */ fmuls f3, f5, f5 +/* 801E92D4 001E6234 D0 E1 00 10 */ stfs f7, 0x10(r1) +/* 801E92D8 001E6238 EC 22 08 2A */ fadds f1, f2, f1 +/* 801E92DC 001E623C D0 81 00 14 */ stfs f4, 0x14(r1) +/* 801E92E0 001E6240 EC 23 08 2A */ fadds f1, f3, f1 +/* 801E92E4 001E6244 D0 C1 00 18 */ stfs f6, 0x18(r1) +/* 801E92E8 001E6248 D0 A1 00 1C */ stfs f5, 0x1c(r1) +/* 801E92EC 001E624C FC 00 08 00 */ fcmpu cr0, f0, f1 +/* 801E92F0 001E6250 41 82 00 30 */ beq lbl_801E9320 +/* 801E92F4 001E6254 FC 01 F8 40 */ fcmpo cr0, f1, f31 +/* 801E92F8 001E6258 40 80 00 28 */ bge lbl_801E9320 +/* 801E92FC 001E625C 80 1F 00 00 */ lwz r0, 0(r31) +/* 801E9300 001E6260 54 00 10 3A */ slwi r0, r0, 2 +/* 801E9304 001E6264 7C 9F 02 14 */ add r4, r31, r0 +/* 801E9308 001E6268 34 84 00 04 */ addic. r4, r4, 4 +/* 801E930C 001E626C 41 82 00 08 */ beq lbl_801E9314 +/* 801E9310 001E6270 90 64 00 00 */ stw r3, 0(r4) +lbl_801E9314: +/* 801E9314 001E6274 80 9F 00 00 */ lwz r4, 0(r31) +/* 801E9318 001E6278 38 04 00 01 */ addi r0, r4, 1 +/* 801E931C 001E627C 90 1F 00 00 */ stw r0, 0(r31) +lbl_801E9320: +/* 801E9320 001E6280 80 63 00 44 */ lwz r3, 0x44(r3) +lbl_801E9324: +/* 801E9324 001E6284 28 03 00 00 */ cmplwi r3, 0 +/* 801E9328 001E6288 41 82 00 10 */ beq lbl_801E9338 +/* 801E932C 001E628C 80 1F 00 00 */ lwz r0, 0(r31) +/* 801E9330 001E6290 2C 00 00 32 */ cmpwi r0, 0x32 +/* 801E9334 001E6294 41 80 FF 74 */ blt lbl_801E92A8 +lbl_801E9338: +/* 801E9338 001E6298 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 801E933C 001E629C 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801E9340 001E62A0 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 801E9344 001E62A4 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801E9348 001E62A8 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801E934C 001E62AC 7C 08 03 A6 */ mtlr r0 +/* 801E9350 001E62B0 38 21 00 50 */ addi r1, r1, 0x50 +/* 801E9354 001E62B4 4E 80 00 20 */ blr + +.global Render__17CWallCrawlerSwarmCFRC13CStateManager +Render__17CWallCrawlerSwarmCFRC13CStateManager: +/* 801E9358 001E62B8 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 801E935C 001E62BC 7C 08 02 A6 */ mflr r0 +/* 801E9360 001E62C0 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 801E9364 001E62C4 BE 41 00 B8 */ stmw r18, 0xb8(r1) +/* 801E9368 001E62C8 7C 7E 1B 78 */ mr r30, r3 +/* 801E936C 001E62CC 38 60 FF FF */ li r3, -1 +/* 801E9370 001E62D0 7C 9F 23 78 */ mr r31, r4 +/* 801E9374 001E62D4 88 1E 05 60 */ lbz r0, 0x560(r30) +/* 801E9378 001E62D8 90 61 00 24 */ stw r3, 0x24(r1) +/* 801E937C 001E62DC 54 18 CF FF */ rlwinm. r24, r0, 0x19, 0x1f, 0x1f +/* 801E9380 001E62E0 54 17 D7 FE */ rlwinm r23, r0, 0x1a, 0x1f, 0x1f +/* 801E9384 001E62E4 40 82 00 38 */ bne lbl_801E93BC +/* 801E9388 001E62E8 48 12 35 F5 */ bl DisableAllLights__9CGraphicsFv +/* 801E938C 001E62EC C0 22 AD B0 */ lfs f1, lbl_805ACAD0@sda21(r2) +/* 801E9390 001E62F0 38 61 00 18 */ addi r3, r1, 0x18 +/* 801E9394 001E62F4 C0 82 AD B4 */ lfs f4, lbl_805ACAD4@sda21(r2) +/* 801E9398 001E62F8 FC 40 08 90 */ fmr f2, f1 +/* 801E939C 001E62FC FC 60 08 90 */ fmr f3, f1 +/* 801E93A0 001E6300 48 17 A0 4D */ bl __ct__6CColorFffff +/* 801E93A4 001E6304 7C 64 1B 78 */ mr r4, r3 +/* 801E93A8 001E6308 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801E93AC 001E630C 81 83 00 00 */ lwz r12, 0(r3) +/* 801E93B0 001E6310 81 8C 00 BC */ lwz r12, 0xbc(r12) +/* 801E93B4 001E6314 7D 89 03 A6 */ mtctr r12 +/* 801E93B8 001E6318 4E 80 04 21 */ bctrl +lbl_801E93BC: +/* 801E93BC 001E631C C0 22 AD B4 */ lfs f1, lbl_805ACAD4@sda21(r2) +/* 801E93C0 001E6320 38 80 00 00 */ li r4, 0 +/* 801E93C4 001E6324 80 BF 0F 34 */ lwz r5, 0xf34(r31) +/* 801E93C8 001E6328 38 00 00 03 */ li r0, 3 +/* 801E93CC 001E632C FC 40 08 90 */ fmr f2, f1 +/* 801E93D0 001E6330 98 81 00 30 */ stb r4, 0x30(r1) +/* 801E93D4 001E6334 7C A5 00 34 */ cntlzw r5, r5 +/* 801E93D8 001E6338 FC 60 08 90 */ fmr f3, f1 +/* 801E93DC 001E633C FC 80 08 90 */ fmr f4, f1 +/* 801E93E0 001E6340 98 81 00 31 */ stb r4, 0x31(r1) +/* 801E93E4 001E6344 B0 01 00 32 */ sth r0, 0x32(r1) +/* 801E93E8 001E6348 38 61 00 34 */ addi r3, r1, 0x34 +/* 801E93EC 001E634C 54 B6 D9 7E */ srwi r22, r5, 5 +/* 801E93F0 001E6350 48 17 9F FD */ bl __ct__6CColorFffff +/* 801E93F4 001E6354 88 61 00 30 */ lbz r3, 0x30(r1) +/* 801E93F8 001E6358 7F E4 FB 78 */ mr r4, r31 +/* 801E93FC 001E635C 88 C1 00 31 */ lbz r6, 0x31(r1) +/* 801E9400 001E6360 A0 A1 00 32 */ lhz r5, 0x32(r1) +/* 801E9404 001E6364 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801E9408 001E6368 98 61 00 38 */ stb r3, 0x38(r1) +/* 801E940C 001E636C 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 801E9410 001E6370 98 C1 00 39 */ stb r6, 0x39(r1) +/* 801E9414 001E6374 B0 A1 00 3A */ sth r5, 0x3a(r1) +/* 801E9418 001E6378 90 01 00 3C */ stw r0, 0x3c(r1) +/* 801E941C 001E637C 80 63 00 00 */ lwz r3, 0(r3) +/* 801E9420 001E6380 4B EA 81 39 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager +/* 801E9424 001E6384 2C 03 00 01 */ cmpwi r3, 1 +/* 801E9428 001E6388 40 82 00 54 */ bne lbl_801E947C +/* 801E942C 001E638C C0 22 AD B4 */ lfs f1, lbl_805ACAD4@sda21(r2) +/* 801E9430 001E6390 38 A0 00 05 */ li r5, 5 +/* 801E9434 001E6394 38 80 00 00 */ li r4, 0 +/* 801E9438 001E6398 38 00 00 03 */ li r0, 3 +/* 801E943C 001E639C FC 40 08 90 */ fmr f2, f1 +/* 801E9440 001E63A0 98 A1 00 28 */ stb r5, 0x28(r1) +/* 801E9444 001E63A4 FC 60 08 90 */ fmr f3, f1 +/* 801E9448 001E63A8 C0 82 AD AC */ lfs f4, lbl_805ACACC@sda21(r2) +/* 801E944C 001E63AC 98 81 00 29 */ stb r4, 0x29(r1) +/* 801E9450 001E63B0 38 61 00 2C */ addi r3, r1, 0x2c +/* 801E9454 001E63B4 B0 01 00 2A */ sth r0, 0x2a(r1) +/* 801E9458 001E63B8 48 17 9F 95 */ bl __ct__6CColorFffff +/* 801E945C 001E63BC 88 A1 00 28 */ lbz r5, 0x28(r1) +/* 801E9460 001E63C0 88 81 00 29 */ lbz r4, 0x29(r1) +/* 801E9464 001E63C4 A0 61 00 2A */ lhz r3, 0x2a(r1) +/* 801E9468 001E63C8 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 801E946C 001E63CC 98 A1 00 38 */ stb r5, 0x38(r1) +/* 801E9470 001E63D0 98 81 00 39 */ stb r4, 0x39(r1) +/* 801E9474 001E63D4 B0 61 00 3A */ sth r3, 0x3a(r1) +/* 801E9478 001E63D8 90 01 00 3C */ stw r0, 0x3c(r1) +lbl_801E947C: +/* 801E947C 001E63DC 88 ED A8 16 */ lbz r7, lbl_805A93D6@sda21(r13) +/* 801E9480 001E63E0 39 20 00 02 */ li r9, 2 +/* 801E9484 001E63E4 28 07 00 00 */ cmplwi r7, 0 +/* 801E9488 001E63E8 41 82 00 08 */ beq lbl_801E9490 +/* 801E948C 001E63EC 39 20 00 01 */ li r9, 1 +lbl_801E9490: +/* 801E9490 001E63F0 28 07 00 00 */ cmplwi r7, 0 +/* 801E9494 001E63F4 39 00 00 00 */ li r8, 0 +/* 801E9498 001E63F8 41 82 00 08 */ beq lbl_801E94A0 +/* 801E949C 001E63FC 39 00 00 02 */ li r8, 2 +lbl_801E94A0: +/* 801E94A0 001E6400 28 07 00 00 */ cmplwi r7, 0 +/* 801E94A4 001E6404 38 60 00 00 */ li r3, 0 +/* 801E94A8 001E6408 38 00 00 00 */ li r0, 0 +/* 801E94AC 001E640C 41 82 00 18 */ beq lbl_801E94C4 +/* 801E94B0 001E6410 28 18 00 00 */ cmplwi r24, 0 +/* 801E94B4 001E6414 41 82 00 10 */ beq lbl_801E94C4 +/* 801E94B8 001E6418 28 17 00 00 */ cmplwi r23, 0 +/* 801E94BC 001E641C 40 82 00 08 */ bne lbl_801E94C4 +/* 801E94C0 001E6420 38 00 00 01 */ li r0, 1 +lbl_801E94C4: +/* 801E94C4 001E6424 54 04 06 3E */ clrlwi r4, r0, 0x18 +/* 801E94C8 001E6428 38 A0 00 00 */ li r5, 0 +/* 801E94CC 001E642C 7C 04 00 D0 */ neg r0, r4 +/* 801E94D0 001E6430 38 C0 00 00 */ li r6, 0 +/* 801E94D4 001E6434 7C 00 23 78 */ or r0, r0, r4 +/* 801E94D8 001E6438 54 04 0F FE */ srwi r4, r0, 0x1f +/* 801E94DC 001E643C 48 11 F7 F1 */ bl SetChanCtrl__3CGXFQ23CGX10EChannelIdUc11_GXColorSrc11_GXColorSrc10_GXLightID12_GXDiffuseFn9_GXAttnFn +/* 801E94E0 001E6440 3B 60 00 00 */ li r27, 0 +/* 801E94E4 001E6444 3B 3E 01 6C */ addi r25, r30, 0x16c +lbl_801E94E8: +/* 801E94E8 001E6448 7F 7A DB 78 */ mr r26, r27 +/* 801E94EC 001E644C 3B 80 00 00 */ li r28, 0 +lbl_801E94F0: +/* 801E94F0 001E6450 7F 5D D3 78 */ mr r29, r26 +/* 801E94F4 001E6454 57 52 10 3A */ slwi r18, r26, 2 +/* 801E94F8 001E6458 3A A0 00 00 */ li r21, 0 +lbl_801E94FC: +/* 801E94FC 001E645C 7E 99 90 2E */ lwzx r20, r25, r18 +/* 801E9500 001E6460 28 14 00 00 */ cmplwi r20, 0 +/* 801E9504 001E6464 41 82 01 1C */ beq lbl_801E9620 +/* 801E9508 001E6468 28 18 00 00 */ cmplwi r24, 0 +/* 801E950C 001E646C 41 82 01 0C */ beq lbl_801E9618 +/* 801E9510 001E6470 C0 22 AD A0 */ lfs f1, lbl_805ACAC0@sda21(r2) +/* 801E9514 001E6474 7F C4 F3 78 */ mr r4, r30 +/* 801E9518 001E6478 7F 65 DB 78 */ mr r5, r27 +/* 801E951C 001E647C 7F 86 E3 78 */ mr r6, r28 +/* 801E9520 001E6480 7E A7 AB 78 */ mr r7, r21 +/* 801E9524 001E6484 38 61 00 70 */ addi r3, r1, 0x70 +/* 801E9528 001E6488 48 00 0A 99 */ bl BoxForPosition__17CWallCrawlerSwarmCFiiif +/* 801E952C 001E648C C0 A1 00 70 */ lfs f5, 0x70(r1) +/* 801E9530 001E6490 28 17 00 00 */ cmplwi r23, 0 +/* 801E9534 001E6494 C0 81 00 74 */ lfs f4, 0x74(r1) +/* 801E9538 001E6498 C0 61 00 78 */ lfs f3, 0x78(r1) +/* 801E953C 001E649C C0 41 00 7C */ lfs f2, 0x7c(r1) +/* 801E9540 001E64A0 C0 21 00 80 */ lfs f1, 0x80(r1) +/* 801E9544 001E64A4 C0 01 00 84 */ lfs f0, 0x84(r1) +/* 801E9548 001E64A8 D0 A1 00 A0 */ stfs f5, 0xa0(r1) +/* 801E954C 001E64AC D0 81 00 A4 */ stfs f4, 0xa4(r1) +/* 801E9550 001E64B0 D0 61 00 A8 */ stfs f3, 0xa8(r1) +/* 801E9554 001E64B4 D0 41 00 AC */ stfs f2, 0xac(r1) +/* 801E9558 001E64B8 D0 21 00 B0 */ stfs f1, 0xb0(r1) +/* 801E955C 001E64BC D0 01 00 B4 */ stfs f0, 0xb4(r1) +/* 801E9560 001E64C0 41 82 00 74 */ beq lbl_801E95D4 +/* 801E9564 001E64C4 80 1E 01 00 */ lwz r0, 0x100(r30) +/* 801E9568 001E64C8 57 A3 07 BE */ clrlwi r3, r29, 0x1e +/* 801E956C 001E64CC 54 00 07 BE */ clrlwi r0, r0, 0x1e +/* 801E9570 001E64D0 7C 03 00 00 */ cmpw r3, r0 +/* 801E9574 001E64D4 40 82 00 A4 */ bne lbl_801E9618 +/* 801E9578 001E64D8 7F C4 F3 78 */ mr r4, r30 +/* 801E957C 001E64DC 7F E5 FB 78 */ mr r5, r31 +/* 801E9580 001E64E0 38 61 00 14 */ addi r3, r1, 0x14 +/* 801E9584 001E64E4 38 C1 00 A0 */ addi r6, r1, 0xa0 +/* 801E9588 001E64E8 48 00 05 D1 */ bl SoftwareLight__17CWallCrawlerSwarmCFRC13CStateManagerRC6CAABox +/* 801E958C 001E64EC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801E9590 001E64F0 7E 93 A3 78 */ mr r19, r20 +/* 801E9594 001E64F4 90 01 00 20 */ stw r0, 0x20(r1) +/* 801E9598 001E64F8 48 00 00 30 */ b lbl_801E95C8 +lbl_801E959C: +/* 801E959C 001E64FC 88 13 00 80 */ lbz r0, 0x80(r19) +/* 801E95A0 001E6500 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801E95A4 001E6504 41 82 00 20 */ beq lbl_801E95C4 +/* 801E95A8 001E6508 C0 22 AD AC */ lfs f1, lbl_805ACACC@sda21(r2) +/* 801E95AC 001E650C 38 61 00 10 */ addi r3, r1, 0x10 +/* 801E95B0 001E6510 38 93 00 40 */ addi r4, r19, 0x40 +/* 801E95B4 001E6514 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801E95B8 001E6518 48 17 9C F5 */ bl Lerp__6CColorFRC6CColorRC6CColorf +/* 801E95BC 001E651C 80 01 00 10 */ lwz r0, 0x10(r1) +/* 801E95C0 001E6520 90 13 00 40 */ stw r0, 0x40(r19) +lbl_801E95C4: +/* 801E95C4 001E6524 82 73 00 44 */ lwz r19, 0x44(r19) +lbl_801E95C8: +/* 801E95C8 001E6528 28 13 00 00 */ cmplwi r19, 0 +/* 801E95CC 001E652C 40 82 FF D0 */ bne lbl_801E959C +/* 801E95D0 001E6530 48 00 00 48 */ b lbl_801E9618 +lbl_801E95D4: +/* 801E95D4 001E6534 7F C3 F3 78 */ mr r3, r30 +/* 801E95D8 001E6538 7F E4 FB 78 */ mr r4, r31 +/* 801E95DC 001E653C 38 A1 00 A0 */ addi r5, r1, 0xa0 +/* 801E95E0 001E6540 48 00 07 E1 */ bl HardwareLight__17CWallCrawlerSwarmCFRC13CStateManagerRC6CAABox +/* 801E95E4 001E6544 48 00 00 34 */ b lbl_801E9618 +lbl_801E95E8: +/* 801E95E8 001E6548 88 74 00 80 */ lbz r3, 0x80(r20) +/* 801E95EC 001E654C 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f +/* 801E95F0 001E6550 41 82 00 24 */ beq lbl_801E9614 +/* 801E95F4 001E6554 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f +/* 801E95F8 001E6558 41 82 00 1C */ beq lbl_801E9614 +/* 801E95FC 001E655C 7F C3 F3 78 */ mr r3, r30 +/* 801E9600 001E6560 7E 84 A3 78 */ mr r4, r20 +/* 801E9604 001E6564 7E C6 B3 78 */ mr r6, r22 +/* 801E9608 001E6568 38 A1 00 24 */ addi r5, r1, 0x24 +/* 801E960C 001E656C 38 E1 00 38 */ addi r7, r1, 0x38 +/* 801E9610 001E6570 48 00 02 3D */ bl RenderBoid__17CWallCrawlerSwarmCFPQ217CWallCrawlerSwarm5CBoidPb +lbl_801E9614: +/* 801E9614 001E6574 82 94 00 44 */ lwz r20, 0x44(r20) +lbl_801E9618: +/* 801E9618 001E6578 28 14 00 00 */ cmplwi r20, 0 +/* 801E961C 001E657C 40 82 FF CC */ bne lbl_801E95E8 +lbl_801E9620: +/* 801E9620 001E6580 3A B5 00 01 */ addi r21, r21, 1 +/* 801E9624 001E6584 3A 52 00 64 */ addi r18, r18, 0x64 +/* 801E9628 001E6588 2C 15 00 05 */ cmpwi r21, 5 +/* 801E962C 001E658C 3B BD 00 19 */ addi r29, r29, 0x19 +/* 801E9630 001E6590 41 80 FE CC */ blt lbl_801E94FC +/* 801E9634 001E6594 3B 9C 00 01 */ addi r28, r28, 1 +/* 801E9638 001E6598 3B 5A 00 05 */ addi r26, r26, 5 +/* 801E963C 001E659C 2C 1C 00 05 */ cmpwi r28, 5 +/* 801E9640 001E65A0 41 80 FE B0 */ blt lbl_801E94F0 +/* 801E9644 001E65A4 3B 7B 00 01 */ addi r27, r27, 1 +/* 801E9648 001E65A8 2C 1B 00 05 */ cmpwi r27, 5 +/* 801E964C 001E65AC 41 80 FE 9C */ blt lbl_801E94E8 +/* 801E9650 001E65B0 82 5E 03 60 */ lwz r18, 0x360(r30) +/* 801E9654 001E65B4 3A 60 00 00 */ li r19, 0 +/* 801E9658 001E65B8 48 00 01 34 */ b lbl_801E978C +lbl_801E965C: +/* 801E965C 001E65BC 88 72 00 80 */ lbz r3, 0x80(r18) +/* 801E9660 001E65C0 3A 73 00 01 */ addi r19, r19, 1 +/* 801E9664 001E65C4 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f +/* 801E9668 001E65C8 41 82 01 20 */ beq lbl_801E9788 +/* 801E966C 001E65CC 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f +/* 801E9670 001E65D0 41 82 01 18 */ beq lbl_801E9788 +/* 801E9674 001E65D4 28 18 00 00 */ cmplwi r24, 0 +/* 801E9678 001E65D8 41 82 00 F8 */ beq lbl_801E9770 +/* 801E967C 001E65DC C0 D2 00 2C */ lfs f6, 0x2c(r18) +/* 801E9680 001E65E0 38 61 00 58 */ addi r3, r1, 0x58 +/* 801E9684 001E65E4 C0 FE 03 74 */ lfs f7, 0x374(r30) +/* 801E9688 001E65E8 38 81 00 4C */ addi r4, r1, 0x4c +/* 801E968C 001E65EC C0 B2 00 1C */ lfs f5, 0x1c(r18) +/* 801E9690 001E65F0 38 A1 00 40 */ addi r5, r1, 0x40 +/* 801E9694 001E65F4 C0 32 00 0C */ lfs f1, 0xc(r18) +/* 801E9698 001E65F8 EC 06 38 2A */ fadds f0, f6, f7 +/* 801E969C 001E65FC EC 65 38 2A */ fadds f3, f5, f7 +/* 801E96A0 001E6600 EC 81 38 2A */ fadds f4, f1, f7 +/* 801E96A4 001E6604 EC 41 38 28 */ fsubs f2, f1, f7 +/* 801E96A8 001E6608 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 801E96AC 001E660C EC 25 38 28 */ fsubs f1, f5, f7 +/* 801E96B0 001E6610 EC 06 38 28 */ fsubs f0, f6, f7 +/* 801E96B4 001E6614 D0 81 00 40 */ stfs f4, 0x40(r1) +/* 801E96B8 001E6618 D0 61 00 44 */ stfs f3, 0x44(r1) +/* 801E96BC 001E661C D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 801E96C0 001E6620 D0 21 00 50 */ stfs f1, 0x50(r1) +/* 801E96C4 001E6624 D0 01 00 54 */ stfs f0, 0x54(r1) +/* 801E96C8 001E6628 48 14 EE 41 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801E96CC 001E662C C0 A1 00 58 */ lfs f5, 0x58(r1) +/* 801E96D0 001E6630 28 17 00 00 */ cmplwi r23, 0 +/* 801E96D4 001E6634 C0 81 00 5C */ lfs f4, 0x5c(r1) +/* 801E96D8 001E6638 C0 61 00 60 */ lfs f3, 0x60(r1) +/* 801E96DC 001E663C C0 41 00 64 */ lfs f2, 0x64(r1) +/* 801E96E0 001E6640 C0 21 00 68 */ lfs f1, 0x68(r1) +/* 801E96E4 001E6644 C0 01 00 6C */ lfs f0, 0x6c(r1) +/* 801E96E8 001E6648 D0 A1 00 88 */ stfs f5, 0x88(r1) +/* 801E96EC 001E664C D0 81 00 8C */ stfs f4, 0x8c(r1) +/* 801E96F0 001E6650 D0 61 00 90 */ stfs f3, 0x90(r1) +/* 801E96F4 001E6654 D0 41 00 94 */ stfs f2, 0x94(r1) +/* 801E96F8 001E6658 D0 21 00 98 */ stfs f1, 0x98(r1) +/* 801E96FC 001E665C D0 01 00 9C */ stfs f0, 0x9c(r1) +/* 801E9700 001E6660 41 82 00 60 */ beq lbl_801E9760 +/* 801E9704 001E6664 80 1E 01 00 */ lwz r0, 0x100(r30) +/* 801E9708 001E6668 56 63 07 BE */ clrlwi r3, r19, 0x1e +/* 801E970C 001E666C 54 00 07 BE */ clrlwi r0, r0, 0x1e +/* 801E9710 001E6670 7C 03 00 00 */ cmpw r3, r0 +/* 801E9714 001E6674 40 82 00 5C */ bne lbl_801E9770 +/* 801E9718 001E6678 7F C4 F3 78 */ mr r4, r30 +/* 801E971C 001E667C 7F E5 FB 78 */ mr r5, r31 +/* 801E9720 001E6680 38 61 00 0C */ addi r3, r1, 0xc +/* 801E9724 001E6684 38 C1 00 88 */ addi r6, r1, 0x88 +/* 801E9728 001E6688 48 00 04 31 */ bl SoftwareLight__17CWallCrawlerSwarmCFRC13CStateManagerRC6CAABox +/* 801E972C 001E668C 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801E9730 001E6690 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801E9734 001E6694 88 12 00 80 */ lbz r0, 0x80(r18) +/* 801E9738 001E6698 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801E973C 001E669C 41 82 00 34 */ beq lbl_801E9770 +/* 801E9740 001E66A0 C0 22 AD AC */ lfs f1, lbl_805ACACC@sda21(r2) +/* 801E9744 001E66A4 38 61 00 08 */ addi r3, r1, 8 +/* 801E9748 001E66A8 38 92 00 40 */ addi r4, r18, 0x40 +/* 801E974C 001E66AC 38 A1 00 1C */ addi r5, r1, 0x1c +/* 801E9750 001E66B0 48 17 9B 5D */ bl Lerp__6CColorFRC6CColorRC6CColorf +/* 801E9754 001E66B4 80 01 00 08 */ lwz r0, 8(r1) +/* 801E9758 001E66B8 90 12 00 40 */ stw r0, 0x40(r18) +/* 801E975C 001E66BC 48 00 00 14 */ b lbl_801E9770 +lbl_801E9760: +/* 801E9760 001E66C0 7F C3 F3 78 */ mr r3, r30 +/* 801E9764 001E66C4 7F E4 FB 78 */ mr r4, r31 +/* 801E9768 001E66C8 38 A1 00 88 */ addi r5, r1, 0x88 +/* 801E976C 001E66CC 48 00 06 55 */ bl HardwareLight__17CWallCrawlerSwarmCFRC13CStateManagerRC6CAABox +lbl_801E9770: +/* 801E9770 001E66D0 7F C3 F3 78 */ mr r3, r30 +/* 801E9774 001E66D4 7E 44 93 78 */ mr r4, r18 +/* 801E9778 001E66D8 7E C6 B3 78 */ mr r6, r22 +/* 801E977C 001E66DC 38 A1 00 24 */ addi r5, r1, 0x24 +/* 801E9780 001E66E0 38 E1 00 38 */ addi r7, r1, 0x38 +/* 801E9784 001E66E4 48 00 00 C9 */ bl RenderBoid__17CWallCrawlerSwarmCFPQ217CWallCrawlerSwarm5CBoidPb +lbl_801E9788: +/* 801E9788 001E66E8 82 52 00 44 */ lwz r18, 0x44(r18) +lbl_801E978C: +/* 801E978C 001E66EC 28 12 00 00 */ cmplwi r18, 0 +/* 801E9790 001E66F0 40 82 FE CC */ bne lbl_801E965C +/* 801E9794 001E66F4 48 12 31 E9 */ bl DisableAllLights__9CGraphicsFv +/* 801E9798 001E66F8 7F C3 F3 78 */ mr r3, r30 +/* 801E979C 001E66FC 4B E6 B2 2D */ bl DrawTouchBounds__6CActorCFv +/* 801E97A0 001E6700 BA 41 00 B8 */ lmw r18, 0xb8(r1) +/* 801E97A4 001E6704 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 801E97A8 001E6708 7C 08 03 A6 */ mtlr r0 +/* 801E97AC 001E670C 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 801E97B0 001E6710 4E 80 00 20 */ blr + +.global AddToRenderer__17CWallCrawlerSwarmCFRC14CFrustumPlanesRC13CStateManager +AddToRenderer__17CWallCrawlerSwarmCFRC14CFrustumPlanesRC13CStateManager: +/* 801E97B4 001E6714 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801E97B8 001E6718 7C 08 02 A6 */ mflr r0 +/* 801E97BC 001E671C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801E97C0 001E6720 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801E97C4 001E6724 7C BF 2B 78 */ mr r31, r5 +/* 801E97C8 001E6728 93 C1 00 08 */ stw r30, 8(r1) +/* 801E97CC 001E672C 7C 7E 1B 78 */ mr r30, r3 +/* 801E97D0 001E6730 88 03 00 30 */ lbz r0, 0x30(r3) +/* 801E97D4 001E6734 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801E97D8 001E6738 41 82 00 5C */ beq lbl_801E9834 +/* 801E97DC 001E673C 4B FF E2 99 */ bl RenderParticles__17CWallCrawlerSwarmCFv +/* 801E97E0 001E6740 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 801E97E4 001E6744 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 801E97E8 001E6748 40 82 00 4C */ bne lbl_801E9834 +/* 801E97EC 001E674C 7F C3 F3 78 */ mr r3, r30 +/* 801E97F0 001E6750 7F E4 FB 78 */ mr r4, r31 +/* 801E97F4 001E6754 81 9E 00 00 */ lwz r12, 0(r30) +/* 801E97F8 001E6758 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801E97FC 001E675C 7D 89 03 A6 */ mtctr r12 +/* 801E9800 001E6760 4E 80 04 21 */ bctrl +/* 801E9804 001E6764 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801E9808 001E6768 41 82 00 20 */ beq lbl_801E9828 +/* 801E980C 001E676C 7F C3 F3 78 */ mr r3, r30 +/* 801E9810 001E6770 7F E4 FB 78 */ mr r4, r31 +/* 801E9814 001E6774 81 9E 00 00 */ lwz r12, 0(r30) +/* 801E9818 001E6778 81 8C 00 28 */ lwz r12, 0x28(r12) +/* 801E981C 001E677C 7D 89 03 A6 */ mtctr r12 +/* 801E9820 001E6780 4E 80 04 21 */ bctrl +/* 801E9824 001E6784 48 00 00 10 */ b lbl_801E9834 +lbl_801E9828: +/* 801E9828 001E6788 7F C3 F3 78 */ mr r3, r30 +/* 801E982C 001E678C 7F E4 FB 78 */ mr r4, r31 +/* 801E9830 001E6790 4B E6 B1 9D */ bl EnsureRendered__6CActorCFRC13CStateManager +lbl_801E9834: +/* 801E9834 001E6794 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801E9838 001E6798 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801E983C 001E679C 83 C1 00 08 */ lwz r30, 8(r1) +/* 801E9840 001E67A0 7C 08 03 A6 */ mtlr r0 +/* 801E9844 001E67A4 38 21 00 10 */ addi r1, r1, 0x10 +/* 801E9848 001E67A8 4E 80 00 20 */ blr + +.global RenderBoid__17CWallCrawlerSwarmCFPQ217CWallCrawlerSwarm5CBoidPb +RenderBoid__17CWallCrawlerSwarmCFPQ217CWallCrawlerSwarm5CBoidPb: +/* 801E984C 001E67AC 94 21 FE F0 */ stwu r1, -0x110(r1) +/* 801E9850 001E67B0 7C 08 02 A6 */ mflr r0 +/* 801E9854 001E67B4 90 01 01 14 */ stw r0, 0x114(r1) +/* 801E9858 001E67B8 DB E1 01 00 */ stfd f31, 0x100(r1) +/* 801E985C 001E67BC F3 E1 01 08 */ psq_st f31, 264(r1), 0, qr0 +/* 801E9860 001E67C0 BE C1 00 D8 */ stmw r22, 0xd8(r1) +/* 801E9864 001E67C4 7C 97 23 78 */ mr r23, r4 +/* 801E9868 001E67C8 88 84 00 80 */ lbz r4, 0x80(r4) +/* 801E986C 001E67CC 7C 76 1B 78 */ mr r22, r3 +/* 801E9870 001E67D0 80 77 00 7C */ lwz r3, 0x7c(r23) +/* 801E9874 001E67D4 54 80 DF FF */ rlwinm. r0, r4, 0x1b, 0x1f, 0x1f +/* 801E9878 001E67D8 83 85 00 00 */ lwz r28, 0(r5) +/* 801E987C 001E67DC 7C B8 2B 78 */ mr r24, r5 +/* 801E9880 001E67E0 7C D9 33 78 */ mr r25, r6 +/* 801E9884 001E67E4 7C FA 3B 78 */ mr r26, r7 +/* 801E9888 001E67E8 54 7D 97 BE */ rlwinm r29, r3, 0x12, 0x1e, 0x1f +/* 801E988C 001E67EC 41 82 00 0C */ beq lbl_801E9898 +/* 801E9890 001E67F0 3B A0 00 08 */ li r29, 8 +/* 801E9894 001E67F4 48 00 00 30 */ b lbl_801E98C4 +lbl_801E9898: +/* 801E9898 001E67F8 C0 37 00 48 */ lfs f1, 0x48(r23) +/* 801E989C 001E67FC C0 02 AD A0 */ lfs f0, lbl_805ACAC0@sda21(r2) +/* 801E98A0 001E6800 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801E98A4 001E6804 40 81 00 0C */ ble lbl_801E98B0 +/* 801E98A8 001E6808 3B A0 00 09 */ li r29, 9 +/* 801E98AC 001E680C 48 00 00 18 */ b lbl_801E98C4 +lbl_801E98B0: +/* 801E98B0 001E6810 54 80 E7 FF */ rlwinm. r0, r4, 0x1c, 0x1f, 0x1f +/* 801E98B4 001E6814 40 82 00 0C */ bne lbl_801E98C0 +/* 801E98B8 001E6818 54 80 EF FF */ rlwinm. r0, r4, 0x1d, 0x1f, 0x1f +/* 801E98BC 001E681C 41 82 00 08 */ beq lbl_801E98C4 +lbl_801E98C0: +/* 801E98C0 001E6820 3B BD 00 04 */ addi r29, r29, 4 +lbl_801E98C4: +/* 801E98C4 001E6824 57 BE 10 3A */ slwi r30, r29, 2 +/* 801E98C8 001E6828 80 96 04 DC */ lwz r4, 0x4dc(r22) +/* 801E98CC 001E682C 7C 76 F2 14 */ add r3, r22, r30 +/* 801E98D0 001E6830 80 63 04 B4 */ lwz r3, 0x4b4(r3) +/* 801E98D4 001E6834 80 63 00 00 */ lwz r3, 0(r3) +/* 801E98D8 001E6838 83 E3 00 10 */ lwz r31, 0x10(r3) +/* 801E98DC 001E683C 4B F2 B6 81 */ bl PickAnimatedModel__10CModelDataCFQ210CModelData11EWhichModel +/* 801E98E0 001E6840 38 00 00 01 */ li r0, 1 +/* 801E98E4 001E6844 7C 7B 1B 78 */ mr r27, r3 +/* 801E98E8 001E6848 7C 04 E8 30 */ slw r4, r0, r29 +/* 801E98EC 001E684C 7F 80 20 39 */ and. r0, r28, r4 +/* 801E98F0 001E6850 41 82 00 44 */ beq lbl_801E9934 +/* 801E98F4 001E6854 7F E3 FB 78 */ mr r3, r31 +/* 801E98F8 001E6858 7F 9C 20 78 */ andc r28, r28, r4 +/* 801E98FC 001E685C 4B E4 31 65 */ bl BuildPose__9CAnimDataFv +/* 801E9900 001E6860 57 A0 18 38 */ slwi r0, r29, 3 +/* 801E9904 001E6864 38 80 00 00 */ li r4, 0 +/* 801E9908 001E6868 7C 76 02 14 */ add r3, r22, r0 +/* 801E990C 001E686C 98 81 00 D0 */ stb r4, 0xd0(r1) +/* 801E9910 001E6870 80 E3 04 38 */ lwz r7, 0x438(r3) +/* 801E9914 001E6874 7F 63 DB 78 */ mr r3, r27 +/* 801E9918 001E6878 38 9F 02 24 */ addi r4, r31, 0x224 +/* 801E991C 001E687C 38 A1 00 88 */ addi r5, r1, 0x88 +/* 801E9920 001E6880 38 C0 00 00 */ li r6, 0 +/* 801E9924 001E6884 48 16 93 D5 */ bl "Calculate__13CSkinnedModelFRC17CPoseAsTransformsRCQ24rstl37optional_object<18CVertexMorphEffect>PCfPf" +/* 801E9928 001E6888 38 61 00 88 */ addi r3, r1, 0x88 +/* 801E992C 001E688C 38 80 FF FF */ li r4, -1 +/* 801E9930 001E6890 4B E8 E3 5D */ bl sub_80077c8c +lbl_801E9934: +/* 801E9934 001E6894 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801E9938 001E6898 38 97 00 40 */ addi r4, r23, 0x40 +/* 801E993C 001E689C 81 83 00 00 */ lwz r12, 0(r3) +/* 801E9940 001E68A0 81 8C 00 BC */ lwz r12, 0xbc(r12) +/* 801E9944 001E68A4 7D 89 03 A6 */ mtctr r12 +/* 801E9948 001E68A8 4E 80 04 21 */ bctrl +/* 801E994C 001E68AC 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801E9950 001E68B0 7E E4 BB 78 */ mr r4, r23 +/* 801E9954 001E68B4 81 83 00 00 */ lwz r12, 0(r3) +/* 801E9958 001E68B8 81 8C 00 30 */ lwz r12, 0x30(r12) +/* 801E995C 001E68BC 7D 89 03 A6 */ mtctr r12 +/* 801E9960 001E68C0 4E 80 04 21 */ bctrl +/* 801E9964 001E68C4 C3 F7 00 48 */ lfs f31, 0x48(r23) +/* 801E9968 001E68C8 57 A0 18 38 */ slwi r0, r29, 3 +/* 801E996C 001E68CC C0 02 AD A0 */ lfs f0, lbl_805ACAC0@sda21(r2) +/* 801E9970 001E68D0 7C 96 02 14 */ add r4, r22, r0 +/* 801E9974 001E68D4 7C 76 F2 14 */ add r3, r22, r30 +/* 801E9978 001E68D8 83 A4 04 38 */ lwz r29, 0x438(r4) +/* 801E997C 001E68DC FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 801E9980 001E68E0 83 C3 04 88 */ lwz r30, 0x488(r3) +/* 801E9984 001E68E4 40 81 00 FC */ ble lbl_801E9A80 +/* 801E9988 001E68E8 57 20 06 3F */ clrlwi. r0, r25, 0x18 +/* 801E998C 001E68EC 40 82 00 F4 */ bne lbl_801E9A80 +/* 801E9990 001E68F0 C0 22 AD B4 */ lfs f1, lbl_805ACAD4@sda21(r2) +/* 801E9994 001E68F4 38 80 00 00 */ li r4, 0 +/* 801E9998 001E68F8 38 00 00 03 */ li r0, 3 +/* 801E999C 001E68FC 98 81 00 34 */ stb r4, 0x34(r1) +/* 801E99A0 001E6900 FC 40 08 90 */ fmr f2, f1 +/* 801E99A4 001E6904 38 61 00 38 */ addi r3, r1, 0x38 +/* 801E99A8 001E6908 FC 60 08 90 */ fmr f3, f1 +/* 801E99AC 001E690C 98 81 00 35 */ stb r4, 0x35(r1) +/* 801E99B0 001E6910 FC 80 08 90 */ fmr f4, f1 +/* 801E99B4 001E6914 B0 01 00 36 */ sth r0, 0x36(r1) +/* 801E99B8 001E6918 48 17 9A 35 */ bl __ct__6CColorFffff +/* 801E99BC 001E691C 7F 63 DB 78 */ mr r3, r27 +/* 801E99C0 001E6920 7F A4 EB 78 */ mr r4, r29 +/* 801E99C4 001E6924 7F C5 F3 78 */ mr r5, r30 +/* 801E99C8 001E6928 38 C1 00 34 */ addi r6, r1, 0x34 +/* 801E99CC 001E692C 48 16 95 1D */ bl sub_80352ee8 +/* 801E99D0 001E6930 88 1F 00 F0 */ lbz r0, 0xf0(r31) +/* 801E99D4 001E6934 28 00 00 00 */ cmplwi r0, 0 +/* 801E99D8 001E6938 41 82 01 58 */ beq lbl_801E9B30 +/* 801E99DC 001E693C 48 16 05 D1 */ bl White__6CColorFv +/* 801E99E0 001E6940 7C 64 1B 78 */ mr r4, r3 +/* 801E99E4 001E6944 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801E99E8 001E6948 81 83 00 00 */ lwz r12, 0(r3) +/* 801E99EC 001E694C 81 8C 00 BC */ lwz r12, 0xbc(r12) +/* 801E99F0 001E6950 7D 89 03 A6 */ mtctr r12 +/* 801E99F4 001E6954 4E 80 04 21 */ bctrl +/* 801E99F8 001E6958 C0 22 AD B4 */ lfs f1, lbl_805ACAD4@sda21(r2) +/* 801E99FC 001E695C 38 00 00 00 */ li r0, 0 +/* 801E9A00 001E6960 82 DF 00 EC */ lwz r22, 0xec(r31) +/* 801E9A04 001E6964 38 61 00 10 */ addi r3, r1, 0x10 +/* 801E9A08 001E6968 EC 01 F8 28 */ fsubs f0, f1, f31 +/* 801E9A0C 001E696C FC 40 08 90 */ fmr f2, f1 +/* 801E9A10 001E6970 98 01 00 84 */ stb r0, 0x84(r1) +/* 801E9A14 001E6974 FC 60 08 90 */ fmr f3, f1 +/* 801E9A18 001E6978 FC 80 0F EE */ fsel f4, f0, f31, f1 +/* 801E9A1C 001E697C 48 17 99 D1 */ bl __ct__6CColorFffff +/* 801E9A20 001E6980 39 20 00 03 */ li r9, 3 +/* 801E9A24 001E6984 81 01 00 10 */ lwz r8, 0x10(r1) +/* 801E9A28 001E6988 55 20 00 3A */ rlwinm r0, r9, 0, 0, 0x1d +/* 801E9A2C 001E698C 39 60 00 05 */ li r11, 5 +/* 801E9A30 001E6990 39 40 00 00 */ li r10, 0 +/* 801E9A34 001E6994 99 61 00 24 */ stb r11, 0x24(r1) +/* 801E9A38 001E6998 60 00 00 03 */ ori r0, r0, 3 +/* 801E9A3C 001E699C 7F E3 FB 78 */ mr r3, r31 +/* 801E9A40 001E69A0 99 41 00 25 */ stb r10, 0x25(r1) +/* 801E9A44 001E69A4 7E C4 B3 78 */ mr r4, r22 +/* 801E9A48 001E69A8 38 A1 00 2C */ addi r5, r1, 0x2c +/* 801E9A4C 001E69AC 38 C1 00 3C */ addi r6, r1, 0x3c +/* 801E9A50 001E69B0 B1 21 00 26 */ sth r9, 0x26(r1) +/* 801E9A54 001E69B4 38 E0 00 00 */ li r7, 0 +/* 801E9A58 001E69B8 91 01 00 28 */ stw r8, 0x28(r1) +/* 801E9A5C 001E69BC 99 61 00 2C */ stb r11, 0x2c(r1) +/* 801E9A60 001E69C0 99 41 00 2D */ stb r10, 0x2d(r1) +/* 801E9A64 001E69C4 B0 01 00 2E */ sth r0, 0x2e(r1) +/* 801E9A68 001E69C8 91 01 00 30 */ stw r8, 0x30(r1) +/* 801E9A6C 001E69CC 4B E4 2E B1 */ bl "Render__9CAnimDataCFRC13CSkinnedModelRC11CModelFlagsRCQ24rstl37optional_object<18CVertexMorphEffect>PCf" +/* 801E9A70 001E69D0 38 61 00 3C */ addi r3, r1, 0x3c +/* 801E9A74 001E69D4 38 80 FF FF */ li r4, -1 +/* 801E9A78 001E69D8 4B E8 E2 15 */ bl sub_80077c8c +/* 801E9A7C 001E69DC 48 00 00 B4 */ b lbl_801E9B30 +lbl_801E9A80: +/* 801E9A80 001E69E0 57 20 06 3F */ clrlwi. r0, r25, 0x18 +/* 801E9A84 001E69E4 41 82 00 98 */ beq lbl_801E9B1C +/* 801E9A88 001E69E8 C0 22 AD B4 */ lfs f1, lbl_805ACAD4@sda21(r2) +/* 801E9A8C 001E69EC 38 80 00 00 */ li r4, 0 +/* 801E9A90 001E69F0 38 00 00 03 */ li r0, 3 +/* 801E9A94 001E69F4 98 81 00 14 */ stb r4, 0x14(r1) +/* 801E9A98 001E69F8 FC 40 08 90 */ fmr f2, f1 +/* 801E9A9C 001E69FC 38 61 00 18 */ addi r3, r1, 0x18 +/* 801E9AA0 001E6A00 FC 60 08 90 */ fmr f3, f1 +/* 801E9AA4 001E6A04 98 81 00 15 */ stb r4, 0x15(r1) +/* 801E9AA8 001E6A08 FC 80 08 90 */ fmr f4, f1 +/* 801E9AAC 001E6A0C B0 01 00 16 */ sth r0, 0x16(r1) +/* 801E9AB0 001E6A10 48 17 99 3D */ bl __ct__6CColorFffff +/* 801E9AB4 001E6A14 A0 01 00 16 */ lhz r0, 0x16(r1) +/* 801E9AB8 001E6A18 39 40 00 00 */ li r10, 0 +/* 801E9ABC 001E6A1C 88 61 00 14 */ lbz r3, 0x14(r1) +/* 801E9AC0 001E6A20 39 20 00 40 */ li r9, 0x40 +/* 801E9AC4 001E6A24 54 00 00 3A */ rlwinm r0, r0, 0, 0, 0x1d +/* 801E9AC8 001E6A28 88 A1 00 15 */ lbz r5, 0x15(r1) +/* 801E9ACC 001E6A2C 60 07 00 01 */ ori r7, r0, 1 +/* 801E9AD0 001E6A30 81 61 00 18 */ lwz r11, 0x18(r1) +/* 801E9AD4 001E6A34 38 00 FF FF */ li r0, -1 +/* 801E9AD8 001E6A38 98 61 00 1C */ stb r3, 0x1c(r1) +/* 801E9ADC 001E6A3C 7F 63 DB 78 */ mr r3, r27 +/* 801E9AE0 001E6A40 7F A4 EB 78 */ mr r4, r29 +/* 801E9AE4 001E6A44 98 A1 00 1D */ stb r5, 0x1d(r1) +/* 801E9AE8 001E6A48 7F C5 F3 78 */ mr r5, r30 +/* 801E9AEC 001E6A4C 38 C1 00 0C */ addi r6, r1, 0xc +/* 801E9AF0 001E6A50 39 01 00 1C */ addi r8, r1, 0x1c +/* 801E9AF4 001E6A54 B0 E1 00 1E */ sth r7, 0x1e(r1) +/* 801E9AF8 001E6A58 38 E1 00 08 */ addi r7, r1, 8 +/* 801E9AFC 001E6A5C 91 61 00 20 */ stw r11, 0x20(r1) +/* 801E9B00 001E6A60 99 41 00 08 */ stb r10, 8(r1) +/* 801E9B04 001E6A64 99 41 00 09 */ stb r10, 9(r1) +/* 801E9B08 001E6A68 99 41 00 0A */ stb r10, 0xa(r1) +/* 801E9B0C 001E6A6C 99 21 00 0B */ stb r9, 0xb(r1) +/* 801E9B10 001E6A70 90 01 00 0C */ stw r0, 0xc(r1) +/* 801E9B14 001E6A74 4B F2 C8 A1 */ bl RenderThermal__10CModelDataCFPCfPCfRC6CColorRC6CColorRC11CModelFlags +/* 801E9B18 001E6A78 48 00 00 18 */ b lbl_801E9B30 +lbl_801E9B1C: +/* 801E9B1C 001E6A7C 7F 63 DB 78 */ mr r3, r27 +/* 801E9B20 001E6A80 7F A4 EB 78 */ mr r4, r29 +/* 801E9B24 001E6A84 7F C5 F3 78 */ mr r5, r30 +/* 801E9B28 001E6A88 7F 46 D3 78 */ mr r6, r26 +/* 801E9B2C 001E6A8C 48 16 93 BD */ bl sub_80352ee8 +lbl_801E9B30: +/* 801E9B30 001E6A90 93 98 00 00 */ stw r28, 0(r24) +/* 801E9B34 001E6A94 E3 E1 01 08 */ psq_l f31, 264(r1), 0, qr0 +/* 801E9B38 001E6A98 CB E1 01 00 */ lfd f31, 0x100(r1) +/* 801E9B3C 001E6A9C BA C1 00 D8 */ lmw r22, 0xd8(r1) +/* 801E9B40 001E6AA0 80 01 01 14 */ lwz r0, 0x114(r1) +/* 801E9B44 001E6AA4 7C 08 03 A6 */ mtlr r0 +/* 801E9B48 001E6AA8 38 21 01 10 */ addi r1, r1, 0x110 +/* 801E9B4C 001E6AAC 4E 80 00 20 */ blr + +.global CanRenderUnsorted__17CWallCrawlerSwarmCFRC13CStateManager +CanRenderUnsorted__17CWallCrawlerSwarmCFRC13CStateManager: +/* 801E9B50 001E6AB0 38 60 00 01 */ li r3, 1 +/* 801E9B54 001E6AB4 4E 80 00 20 */ blr + +.global SoftwareLight__17CWallCrawlerSwarmCFRC13CStateManagerRC6CAABox +SoftwareLight__17CWallCrawlerSwarmCFRC13CStateManagerRC6CAABox: +/* 801E9B58 001E6AB8 94 21 FC 70 */ stwu r1, -0x390(r1) +/* 801E9B5C 001E6ABC 7C 08 02 A6 */ mflr r0 +/* 801E9B60 001E6AC0 90 01 03 94 */ stw r0, 0x394(r1) +/* 801E9B64 001E6AC4 DB E1 03 80 */ stfd f31, 0x380(r1) +/* 801E9B68 001E6AC8 F3 E1 03 88 */ psq_st f31, 904(r1), 0, qr0 +/* 801E9B6C 001E6ACC DB C1 03 70 */ stfd f30, 0x370(r1) +/* 801E9B70 001E6AD0 F3 C1 03 78 */ psq_st f30, 888(r1), 0, qr0 +/* 801E9B74 001E6AD4 DB A1 03 60 */ stfd f29, 0x360(r1) +/* 801E9B78 001E6AD8 F3 A1 03 68 */ psq_st f29, 872(r1), 0, qr0 +/* 801E9B7C 001E6ADC DB 81 03 50 */ stfd f28, 0x350(r1) +/* 801E9B80 001E6AE0 F3 81 03 58 */ psq_st f28, 856(r1), 0, qr0 +/* 801E9B84 001E6AE4 DB 61 03 40 */ stfd f27, 0x340(r1) +/* 801E9B88 001E6AE8 F3 61 03 48 */ psq_st f27, 840(r1), 0, qr0 +/* 801E9B8C 001E6AEC 93 E1 03 3C */ stw r31, 0x33c(r1) +/* 801E9B90 001E6AF0 93 C1 03 38 */ stw r30, 0x338(r1) +/* 801E9B94 001E6AF4 93 A1 03 34 */ stw r29, 0x334(r1) +/* 801E9B98 001E6AF8 93 81 03 30 */ stw r28, 0x330(r1) +/* 801E9B9C 001E6AFC 3C E0 80 5A */ lis r7, skZero3f@ha +/* 801E9BA0 001E6B00 7C 7F 1B 78 */ mr r31, r3 +/* 801E9BA4 001E6B04 38 67 66 A0 */ addi r3, r7, skZero3f@l +/* 801E9BA8 001E6B08 7C 9E 23 78 */ mr r30, r4 +/* 801E9BAC 001E6B0C 80 83 00 00 */ lwz r4, 0(r3) +/* 801E9BB0 001E6B10 7C BD 2B 78 */ mr r29, r5 +/* 801E9BB4 001E6B14 80 E3 00 04 */ lwz r7, 4(r3) +/* 801E9BB8 001E6B18 7C DC 33 78 */ mr r28, r6 +/* 801E9BBC 001E6B1C 80 03 00 08 */ lwz r0, 8(r3) +/* 801E9BC0 001E6B20 38 61 00 48 */ addi r3, r1, 0x48 +/* 801E9BC4 001E6B24 90 81 00 3C */ stw r4, 0x3c(r1) +/* 801E9BC8 001E6B28 38 A1 00 3C */ addi r5, r1, 0x3c +/* 801E9BCC 001E6B2C C0 22 94 04 */ lfs f1, lbl_805AB124@sda21(r2) +/* 801E9BD0 001E6B30 38 80 00 08 */ li r4, 8 +/* 801E9BD4 001E6B34 90 E1 00 40 */ stw r7, 0x40(r1) +/* 801E9BD8 001E6B38 38 C0 00 04 */ li r6, 4 +/* 801E9BDC 001E6B3C 38 E0 00 04 */ li r7, 4 +/* 801E9BE0 001E6B40 39 00 00 00 */ li r8, 0 +/* 801E9BE4 001E6B44 90 01 00 44 */ stw r0, 0x44(r1) +/* 801E9BE8 001E6B48 39 20 00 00 */ li r9, 0 +/* 801E9BEC 001E6B4C 39 40 00 00 */ li r10, 0 +/* 801E9BF0 001E6B50 4B F1 B5 DD */ bl __ct__12CActorLightsFUi9CVector3fiif +/* 801E9BF4 001E6B54 88 01 02 E0 */ lbz r0, 0x2e0(r1) +/* 801E9BF8 001E6B58 38 60 00 01 */ li r3, 1 +/* 801E9BFC 001E6B5C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801E9C00 001E6B60 80 FE 00 04 */ lwz r7, 4(r30) +/* 801E9C04 001E6B64 98 01 02 E0 */ stb r0, 0x2e0(r1) +/* 801E9C08 001E6B68 38 C0 00 00 */ li r6, 0 +/* 801E9C0C 001E6B6C 54 00 06 3E */ clrlwi r0, r0, 0x18 +/* 801E9C10 001E6B70 54 E3 18 38 */ slwi r3, r7, 3 +/* 801E9C14 001E6B74 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19 +/* 801E9C18 001E6B78 80 BD 08 50 */ lwz r5, 0x850(r29) +/* 801E9C1C 001E6B7C 54 04 06 3E */ clrlwi r4, r0, 0x18 +/* 801E9C20 001E6B80 98 01 02 E0 */ stb r0, 0x2e0(r1) +/* 801E9C24 001E6B84 50 C4 26 F6 */ rlwimi r4, r6, 4, 0x1b, 0x1b +/* 801E9C28 001E6B88 38 03 00 04 */ addi r0, r3, 4 +/* 801E9C2C 001E6B8C 98 81 02 E0 */ stb r4, 0x2e0(r1) +/* 801E9C30 001E6B90 7F A4 EB 78 */ mr r4, r29 +/* 801E9C34 001E6B94 7F 86 E3 78 */ mr r6, r28 +/* 801E9C38 001E6B98 38 61 00 48 */ addi r3, r1, 0x48 +/* 801E9C3C 001E6B9C 80 A5 00 20 */ lwz r5, 0x20(r5) +/* 801E9C40 001E6BA0 90 E1 00 18 */ stw r7, 0x18(r1) +/* 801E9C44 001E6BA4 7C A5 00 2E */ lwzx r5, r5, r0 +/* 801E9C48 001E6BA8 90 E1 00 1C */ stw r7, 0x1c(r1) +/* 801E9C4C 001E6BAC 4B F1 A1 75 */ bl BuildAreaLightList__12CActorLightsFRC13CStateManagerRC9CGameAreaRC6CAABox +/* 801E9C50 001E6BB0 7F A4 EB 78 */ mr r4, r29 +/* 801E9C54 001E6BB4 7F 85 E3 78 */ mr r5, r28 +/* 801E9C58 001E6BB8 38 61 00 48 */ addi r3, r1, 0x48 +/* 801E9C5C 001E6BBC 4B F1 9A B5 */ bl BuildDynamicLightList__12CActorLightsFRC13CStateManagerRC6CAABox +/* 801E9C60 001E6BC0 C0 21 02 D0 */ lfs f1, 0x2d0(r1) +/* 801E9C64 001E6BC4 38 61 00 14 */ addi r3, r1, 0x14 +/* 801E9C68 001E6BC8 C0 41 02 D4 */ lfs f2, 0x2d4(r1) +/* 801E9C6C 001E6BCC C0 61 02 D8 */ lfs f3, 0x2d8(r1) +/* 801E9C70 001E6BD0 C0 82 AD B4 */ lfs f4, lbl_805ACAD4@sda21(r2) +/* 801E9C74 001E6BD4 48 17 97 79 */ bl __ct__6CColorFffff +/* 801E9C78 001E6BD8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801E9C7C 001E6BDC 7F 84 E3 78 */ mr r4, r28 +/* 801E9C80 001E6BE0 38 61 00 30 */ addi r3, r1, 0x30 +/* 801E9C84 001E6BE4 90 01 00 20 */ stw r0, 0x20(r1) +/* 801E9C88 001E6BE8 48 14 D9 85 */ bl GetCenterPoint__6CAABoxCFv +/* 801E9C8C 001E6BEC C3 E1 00 30 */ lfs f31, 0x30(r1) +/* 801E9C90 001E6BF0 3B 80 00 00 */ li r28, 0 +/* 801E9C94 001E6BF4 C3 C1 00 34 */ lfs f30, 0x34(r1) +/* 801E9C98 001E6BF8 C3 A1 00 38 */ lfs f29, 0x38(r1) +/* 801E9C9C 001E6BFC C3 62 AD B4 */ lfs f27, lbl_805ACAD4@sda21(r2) +/* 801E9CA0 001E6C00 C3 82 AD E8 */ lfs f28, lbl_805ACB08@sda21(r2) +/* 801E9CA4 001E6C04 48 00 00 B0 */ b lbl_801E9D54 +lbl_801E9CA8: +/* 801E9CA8 001E6C08 7F 84 E3 78 */ mr r4, r28 +/* 801E9CAC 001E6C0C 38 61 00 48 */ addi r3, r1, 0x48 +/* 801E9CB0 001E6C10 4B F1 B3 B5 */ bl GetLight__12CActorLightsCFUi +/* 801E9CB4 001E6C14 7C 7E 1B 78 */ mr r30, r3 +/* 801E9CB8 001E6C18 38 61 00 24 */ addi r3, r1, 0x24 +/* 801E9CBC 001E6C1C C0 5E 00 04 */ lfs f2, 4(r30) +/* 801E9CC0 001E6C20 C0 3E 00 08 */ lfs f1, 8(r30) +/* 801E9CC4 001E6C24 C0 1E 00 00 */ lfs f0, 0(r30) +/* 801E9CC8 001E6C28 EC 42 F0 28 */ fsubs f2, f2, f30 +/* 801E9CCC 001E6C2C EC 21 E8 28 */ fsubs f1, f1, f29 +/* 801E9CD0 001E6C30 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 801E9CD4 001E6C34 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 801E9CD8 001E6C38 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801E9CDC 001E6C3C D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 801E9CE0 001E6C40 48 12 AB D9 */ bl Magnitude__9CVector3fCFv +/* 801E9CE4 001E6C44 C0 1E 00 2C */ lfs f0, 0x2c(r30) +/* 801E9CE8 001E6C48 C0 7E 00 28 */ lfs f3, 0x28(r30) +/* 801E9CEC 001E6C4C C0 5E 00 24 */ lfs f2, 0x24(r30) +/* 801E9CF0 001E6C50 EC 81 00 32 */ fmuls f4, f1, f0 +/* 801E9CF4 001E6C54 C0 0D 92 50 */ lfs f0, lbl_805A7E10@sda21(r13) +/* 801E9CF8 001E6C58 EC 41 10 FA */ fmadds f2, f1, f3, f2 +/* 801E9CFC 001E6C5C EC 21 11 3A */ fmadds f1, f1, f4, f2 +/* 801E9D00 001E6C60 EC 3B 08 24 */ fdivs f1, f27, f1 +/* 801E9D04 001E6C64 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801E9D08 001E6C68 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 801E9D0C 001E6C6C 40 80 00 0C */ bge lbl_801E9D18 +/* 801E9D10 001E6C70 3B A1 00 10 */ addi r29, r1, 0x10 +/* 801E9D14 001E6C74 48 00 00 08 */ b lbl_801E9D1C +lbl_801E9D18: +/* 801E9D18 001E6C78 3B AD 92 50 */ addi r29, r13, lbl_805A7E10@sda21 +lbl_801E9D1C: +/* 801E9D1C 001E6C7C 48 16 02 99 */ bl Black__6CColorFv +/* 801E9D20 001E6C80 C0 1D 00 00 */ lfs f0, 0(r29) +/* 801E9D24 001E6C84 7C 64 1B 78 */ mr r4, r3 +/* 801E9D28 001E6C88 38 61 00 08 */ addi r3, r1, 8 +/* 801E9D2C 001E6C8C 38 BE 00 18 */ addi r5, r30, 0x18 +/* 801E9D30 001E6C90 EC 3C 00 32 */ fmuls f1, f28, f0 +/* 801E9D34 001E6C94 48 17 95 79 */ bl Lerp__6CColorFRC6CColorRC6CColorf +/* 801E9D38 001E6C98 38 61 00 0C */ addi r3, r1, 0xc +/* 801E9D3C 001E6C9C 38 81 00 20 */ addi r4, r1, 0x20 +/* 801E9D40 001E6CA0 38 A1 00 08 */ addi r5, r1, 8 +/* 801E9D44 001E6CA4 48 17 93 6D */ bl Add__6CColorFRC6CColorRC6CColor +/* 801E9D48 001E6CA8 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801E9D4C 001E6CAC 3B 9C 00 01 */ addi r28, r28, 1 +/* 801E9D50 001E6CB0 90 01 00 20 */ stw r0, 0x20(r1) +lbl_801E9D54: +/* 801E9D54 001E6CB4 38 61 00 48 */ addi r3, r1, 0x48 +/* 801E9D58 001E6CB8 4B F1 B3 59 */ bl GetActiveLightCount__12CActorLightsCFv +/* 801E9D5C 001E6CBC 7C 1C 18 40 */ cmplw r28, r3 +/* 801E9D60 001E6CC0 41 80 FF 48 */ blt lbl_801E9CA8 +/* 801E9D64 001E6CC4 80 01 00 20 */ lwz r0, 0x20(r1) +/* 801E9D68 001E6CC8 38 61 00 48 */ addi r3, r1, 0x48 +/* 801E9D6C 001E6CCC 38 80 FF FF */ li r4, -1 +/* 801E9D70 001E6CD0 90 1F 00 00 */ stw r0, 0(r31) +/* 801E9D74 001E6CD4 4B F1 B3 61 */ bl __dt__12CActorLightsFv +/* 801E9D78 001E6CD8 E3 E1 03 88 */ psq_l f31, 904(r1), 0, qr0 +/* 801E9D7C 001E6CDC CB E1 03 80 */ lfd f31, 0x380(r1) +/* 801E9D80 001E6CE0 E3 C1 03 78 */ psq_l f30, 888(r1), 0, qr0 +/* 801E9D84 001E6CE4 CB C1 03 70 */ lfd f30, 0x370(r1) +/* 801E9D88 001E6CE8 E3 A1 03 68 */ psq_l f29, 872(r1), 0, qr0 +/* 801E9D8C 001E6CEC CB A1 03 60 */ lfd f29, 0x360(r1) +/* 801E9D90 001E6CF0 E3 81 03 58 */ psq_l f28, 856(r1), 0, qr0 +/* 801E9D94 001E6CF4 CB 81 03 50 */ lfd f28, 0x350(r1) +/* 801E9D98 001E6CF8 E3 61 03 48 */ psq_l f27, 840(r1), 0, qr0 +/* 801E9D9C 001E6CFC CB 61 03 40 */ lfd f27, 0x340(r1) +/* 801E9DA0 001E6D00 83 E1 03 3C */ lwz r31, 0x33c(r1) +/* 801E9DA4 001E6D04 83 C1 03 38 */ lwz r30, 0x338(r1) +/* 801E9DA8 001E6D08 83 A1 03 34 */ lwz r29, 0x334(r1) +/* 801E9DAC 001E6D0C 80 01 03 94 */ lwz r0, 0x394(r1) +/* 801E9DB0 001E6D10 83 81 03 30 */ lwz r28, 0x330(r1) +/* 801E9DB4 001E6D14 7C 08 03 A6 */ mtlr r0 +/* 801E9DB8 001E6D18 38 21 03 90 */ addi r1, r1, 0x390 +/* 801E9DBC 001E6D1C 4E 80 00 20 */ blr + +.global HardwareLight__17CWallCrawlerSwarmCFRC13CStateManagerRC6CAABox +HardwareLight__17CWallCrawlerSwarmCFRC13CStateManagerRC6CAABox: +/* 801E9DC0 001E6D20 94 21 FC F0 */ stwu r1, -0x310(r1) +/* 801E9DC4 001E6D24 7C 08 02 A6 */ mflr r0 +/* 801E9DC8 001E6D28 3C C0 80 5A */ lis r6, lbl_805A0004@ha +/* 801E9DCC 001E6D2C C0 22 94 04 */ lfs f1, lbl_805AB124@sda21(r2) +/* 801E9DD0 001E6D30 90 01 03 14 */ stw r0, 0x314(r1) +/* 801E9DD4 001E6D34 39 00 00 00 */ li r8, 0 +/* 801E9DD8 001E6D38 39 20 00 00 */ li r9, 0 +/* 801E9DDC 001E6D3C 39 40 00 00 */ li r10, 0 +/* 801E9DE0 001E6D40 93 E1 03 0C */ stw r31, 0x30c(r1) +/* 801E9DE4 001E6D44 7C BF 2B 78 */ mr r31, r5 +/* 801E9DE8 001E6D48 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801E9DEC 001E6D4C 93 C1 03 08 */ stw r30, 0x308(r1) +/* 801E9DF0 001E6D50 7C 9E 23 78 */ mr r30, r4 +/* 801E9DF4 001E6D54 93 A1 03 04 */ stw r29, 0x304(r1) +/* 801E9DF8 001E6D58 7C 7D 1B 78 */ mr r29, r3 +/* 801E9DFC 001E6D5C 38 61 00 1C */ addi r3, r1, 0x1c +/* 801E9E00 001E6D60 84 86 66 A0 */ lwzu r4, 0x66a0(r6) +/* 801E9E04 001E6D64 80 E6 00 04 */ lwz r7, lbl_805A0004@l(r6) +/* 801E9E08 001E6D68 80 06 00 08 */ lwz r0, 8(r6) +/* 801E9E0C 001E6D6C 38 C0 00 04 */ li r6, 4 +/* 801E9E10 001E6D70 90 81 00 10 */ stw r4, 0x10(r1) +/* 801E9E14 001E6D74 38 80 00 08 */ li r4, 8 +/* 801E9E18 001E6D78 90 E1 00 14 */ stw r7, 0x14(r1) +/* 801E9E1C 001E6D7C 38 E0 00 04 */ li r7, 4 +/* 801E9E20 001E6D80 90 01 00 18 */ stw r0, 0x18(r1) +/* 801E9E24 001E6D84 4B F1 B3 A9 */ bl __ct__12CActorLightsFUi9CVector3fiif +/* 801E9E28 001E6D88 88 01 02 B4 */ lbz r0, 0x2b4(r1) +/* 801E9E2C 001E6D8C 38 60 00 01 */ li r3, 1 +/* 801E9E30 001E6D90 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801E9E34 001E6D94 80 FD 00 04 */ lwz r7, 4(r29) +/* 801E9E38 001E6D98 98 01 02 B4 */ stb r0, 0x2b4(r1) +/* 801E9E3C 001E6D9C 38 C0 00 00 */ li r6, 0 +/* 801E9E40 001E6DA0 54 00 06 3E */ clrlwi r0, r0, 0x18 +/* 801E9E44 001E6DA4 54 E3 18 38 */ slwi r3, r7, 3 +/* 801E9E48 001E6DA8 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19 +/* 801E9E4C 001E6DAC 80 BE 08 50 */ lwz r5, 0x850(r30) +/* 801E9E50 001E6DB0 54 04 06 3E */ clrlwi r4, r0, 0x18 +/* 801E9E54 001E6DB4 98 01 02 B4 */ stb r0, 0x2b4(r1) +/* 801E9E58 001E6DB8 50 C4 26 F6 */ rlwimi r4, r6, 4, 0x1b, 0x1b +/* 801E9E5C 001E6DBC 38 03 00 04 */ addi r0, r3, 4 +/* 801E9E60 001E6DC0 98 81 02 B4 */ stb r4, 0x2b4(r1) +/* 801E9E64 001E6DC4 7F C4 F3 78 */ mr r4, r30 +/* 801E9E68 001E6DC8 7F E6 FB 78 */ mr r6, r31 +/* 801E9E6C 001E6DCC 38 61 00 1C */ addi r3, r1, 0x1c +/* 801E9E70 001E6DD0 80 A5 00 20 */ lwz r5, 0x20(r5) +/* 801E9E74 001E6DD4 90 E1 00 08 */ stw r7, 8(r1) +/* 801E9E78 001E6DD8 7C A5 00 2E */ lwzx r5, r5, r0 +/* 801E9E7C 001E6DDC 90 E1 00 0C */ stw r7, 0xc(r1) +/* 801E9E80 001E6DE0 4B F1 9F 41 */ bl BuildAreaLightList__12CActorLightsFRC13CStateManagerRC9CGameAreaRC6CAABox +/* 801E9E84 001E6DE4 7F C4 F3 78 */ mr r4, r30 +/* 801E9E88 001E6DE8 7F E5 FB 78 */ mr r5, r31 +/* 801E9E8C 001E6DEC 38 61 00 1C */ addi r3, r1, 0x1c +/* 801E9E90 001E6DF0 4B F1 98 81 */ bl BuildDynamicLightList__12CActorLightsFRC13CStateManagerRC6CAABox +/* 801E9E94 001E6DF4 38 61 00 1C */ addi r3, r1, 0x1c +/* 801E9E98 001E6DF8 4B F1 AE F1 */ bl ActivateLights__12CActorLightsCFv +/* 801E9E9C 001E6DFC 38 61 00 1C */ addi r3, r1, 0x1c +/* 801E9EA0 001E6E00 38 80 FF FF */ li r4, -1 +/* 801E9EA4 001E6E04 4B F1 B2 31 */ bl __dt__12CActorLightsFv +/* 801E9EA8 001E6E08 80 01 03 14 */ lwz r0, 0x314(r1) +/* 801E9EAC 001E6E0C 83 E1 03 0C */ lwz r31, 0x30c(r1) +/* 801E9EB0 001E6E10 83 C1 03 08 */ lwz r30, 0x308(r1) +/* 801E9EB4 001E6E14 83 A1 03 04 */ lwz r29, 0x304(r1) +/* 801E9EB8 001E6E18 7C 08 03 A6 */ mtlr r0 +/* 801E9EBC 001E6E1C 38 21 03 10 */ addi r1, r1, 0x310 +/* 801E9EC0 001E6E20 4E 80 00 20 */ blr + +.global PreRender__17CWallCrawlerSwarmFR13CStateManagerRC14CFrustumPlanes +PreRender__17CWallCrawlerSwarmFR13CStateManagerRC14CFrustumPlanes: +/* 801E9EC4 001E6E24 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801E9EC8 001E6E28 7C 08 02 A6 */ mflr r0 +/* 801E9ECC 001E6E2C 90 01 00 44 */ stw r0, 0x44(r1) +/* 801E9ED0 001E6E30 BF 61 00 2C */ stmw r27, 0x2c(r1) +/* 801E9ED4 001E6E34 7C 7F 1B 78 */ mr r31, r3 +/* 801E9ED8 001E6E38 7C BB 2B 78 */ mr r27, r5 +/* 801E9EDC 001E6E3C 3B A0 00 00 */ li r29, 0 +/* 801E9EE0 001E6E40 3B DF 04 B4 */ addi r30, r31, 0x4b4 +/* 801E9EE4 001E6E44 3B 80 00 00 */ li r28, 0 +lbl_801E9EE8: +/* 801E9EE8 001E6E48 80 7E 00 00 */ lwz r3, 0(r30) +/* 801E9EEC 001E6E4C 80 63 00 00 */ lwz r3, 0(r3) +/* 801E9EF0 001E6E50 80 63 00 10 */ lwz r3, 0x10(r3) +/* 801E9EF4 001E6E54 4B E4 2B 11 */ bl PreRender__9CAnimDataFv +/* 801E9EF8 001E6E58 3B 9C 00 01 */ addi r28, r28, 1 +/* 801E9EFC 001E6E5C 3B DE 00 04 */ addi r30, r30, 4 +/* 801E9F00 001E6E60 2C 1C 00 05 */ cmpwi r28, 5 +/* 801E9F04 001E6E64 41 80 FF E4 */ blt lbl_801E9EE8 +/* 801E9F08 001E6E68 83 DF 01 14 */ lwz r30, 0x114(r31) +/* 801E9F0C 001E6E6C 48 00 00 74 */ b lbl_801E9F80 +lbl_801E9F10: +/* 801E9F10 001E6E70 88 7E 00 80 */ lbz r3, 0x80(r30) +/* 801E9F14 001E6E74 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f +/* 801E9F18 001E6E78 41 82 00 58 */ beq lbl_801E9F70 +/* 801E9F1C 001E6E7C C0 22 AD EC */ lfs f1, lbl_805ACB0C@sda21(r2) +/* 801E9F20 001E6E80 7F 63 DB 78 */ mr r3, r27 +/* 801E9F24 001E6E84 C0 1F 03 74 */ lfs f0, 0x374(r31) +/* 801E9F28 001E6E88 38 81 00 14 */ addi r4, r1, 0x14 +/* 801E9F2C 001E6E8C C0 7E 00 2C */ lfs f3, 0x2c(r30) +/* 801E9F30 001E6E90 C0 5E 00 1C */ lfs f2, 0x1c(r30) +/* 801E9F34 001E6E94 EC 21 00 32 */ fmuls f1, f1, f0 +/* 801E9F38 001E6E98 C0 1E 00 0C */ lfs f0, 0xc(r30) +/* 801E9F3C 001E6E9C D0 41 00 0C */ stfs f2, 0xc(r1) +/* 801E9F40 001E6EA0 D0 01 00 08 */ stfs f0, 8(r1) +/* 801E9F44 001E6EA4 D0 61 00 10 */ stfs f3, 0x10(r1) +/* 801E9F48 001E6EA8 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801E9F4C 001E6EAC D0 41 00 18 */ stfs f2, 0x18(r1) +/* 801E9F50 001E6EB0 D0 61 00 1C */ stfs f3, 0x1c(r1) +/* 801E9F54 001E6EB4 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 801E9F58 001E6EB8 48 15 B0 D5 */ bl SphereInFrustumPlanes__14CFrustumPlanesCFRC7CSphere +/* 801E9F5C 001E6EBC 88 1E 00 80 */ lbz r0, 0x80(r30) +/* 801E9F60 001E6EC0 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801E9F64 001E6EC4 3B A0 00 01 */ li r29, 1 +/* 801E9F68 001E6EC8 98 1E 00 80 */ stb r0, 0x80(r30) +/* 801E9F6C 001E6ECC 48 00 00 10 */ b lbl_801E9F7C +lbl_801E9F70: +/* 801E9F70 001E6ED0 38 00 00 00 */ li r0, 0 +/* 801E9F74 001E6ED4 50 03 36 72 */ rlwimi r3, r0, 6, 0x19, 0x19 +/* 801E9F78 001E6ED8 98 7E 00 80 */ stb r3, 0x80(r30) +lbl_801E9F7C: +/* 801E9F7C 001E6EDC 3B DE 00 84 */ addi r30, r30, 0x84 +lbl_801E9F80: +/* 801E9F80 001E6EE0 80 1F 01 0C */ lwz r0, 0x10c(r31) +/* 801E9F84 001E6EE4 80 7F 01 14 */ lwz r3, 0x114(r31) +/* 801E9F88 001E6EE8 1C 00 00 84 */ mulli r0, r0, 0x84 +/* 801E9F8C 001E6EEC 7C 03 02 14 */ add r0, r3, r0 +/* 801E9F90 001E6EF0 7C 1E 00 40 */ cmplw r30, r0 +/* 801E9F94 001E6EF4 40 82 FF 7C */ bne lbl_801E9F10 +/* 801E9F98 001E6EF8 57 A3 06 3E */ clrlwi r3, r29, 0x18 +/* 801E9F9C 001E6EFC 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 801E9FA0 001E6F00 7C 63 00 34 */ cntlzw r3, r3 +/* 801E9FA4 001E6F04 50 60 E7 BC */ rlwimi r0, r3, 0x1c, 0x1e, 0x1e +/* 801E9FA8 001E6F08 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 801E9FAC 001E6F0C BB 61 00 2C */ lmw r27, 0x2c(r1) +/* 801E9FB0 001E6F10 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801E9FB4 001E6F14 7C 08 03 A6 */ mtlr r0 +/* 801E9FB8 001E6F18 38 21 00 40 */ addi r1, r1, 0x40 +/* 801E9FBC 001E6F1C 4E 80 00 20 */ blr + +.global BoxForPosition__17CWallCrawlerSwarmCFiiif +BoxForPosition__17CWallCrawlerSwarmCFiiif: +/* 801E9FC0 001E6F20 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 801E9FC4 001E6F24 7C 08 02 A6 */ mflr r0 +/* 801E9FC8 001E6F28 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 801E9FCC 001E6F2C DB E1 00 B0 */ stfd f31, 0xb0(r1) +/* 801E9FD0 001E6F30 F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0 +/* 801E9FD4 001E6F34 DB C1 00 A0 */ stfd f30, 0xa0(r1) +/* 801E9FD8 001E6F38 F3 C1 00 A8 */ psq_st f30, 168(r1), 0, qr0 +/* 801E9FDC 001E6F3C DB A1 00 90 */ stfd f29, 0x90(r1) +/* 801E9FE0 001E6F40 F3 A1 00 98 */ psq_st f29, 152(r1), 0, qr0 +/* 801E9FE4 001E6F44 93 E1 00 8C */ stw r31, 0x8c(r1) +/* 801E9FE8 001E6F48 93 C1 00 88 */ stw r30, 0x88(r1) +/* 801E9FEC 001E6F4C 93 A1 00 84 */ stw r29, 0x84(r1) +/* 801E9FF0 001E6F50 93 81 00 80 */ stw r28, 0x80(r1) +/* 801E9FF4 001E6F54 FF E0 08 90 */ fmr f31, f1 +/* 801E9FF8 001E6F58 7C 7C 1B 78 */ mr r28, r3 +/* 801E9FFC 001E6F5C 7C BD 2B 78 */ mr r29, r5 +/* 801EA000 001E6F60 7C DE 33 78 */ mr r30, r6 +/* 801EA004 001E6F64 7C FF 3B 78 */ mr r31, r7 +/* 801EA008 001E6F68 38 61 00 20 */ addi r3, r1, 0x20 +/* 801EA00C 001E6F6C 48 00 2E 91 */ bl GetBoundingBox__17CWallCrawlerSwarmCFv +/* 801EA010 001E6F70 C0 A1 00 20 */ lfs f5, 0x20(r1) +/* 801EA014 001E6F74 3D 20 43 30 */ lis r9, 0x4330 +/* 801EA018 001E6F78 C0 41 00 2C */ lfs f2, 0x2c(r1) +/* 801EA01C 001E6F7C 38 9D 00 01 */ addi r4, r29, 1 +/* 801EA020 001E6F80 C0 81 00 24 */ lfs f4, 0x24(r1) +/* 801EA024 001E6F84 38 7E 00 01 */ addi r3, r30, 1 +/* 801EA028 001E6F88 C0 21 00 30 */ lfs f1, 0x30(r1) +/* 801EA02C 001E6F8C ED 02 28 28 */ fsubs f8, f2, f5 +/* 801EA030 001E6F90 C0 61 00 28 */ lfs f3, 0x28(r1) +/* 801EA034 001E6F94 38 1F 00 01 */ addi r0, r31, 1 +/* 801EA038 001E6F98 C0 01 00 34 */ lfs f0, 0x34(r1) +/* 801EA03C 001E6F9C EC E1 20 28 */ fsubs f7, f1, f4 +/* 801EA040 001E6FA0 C1 22 AD D4 */ lfs f9, lbl_805ACAF4@sda21(r2) +/* 801EA044 001E6FA4 EC C0 18 28 */ fsubs f6, f0, f3 +/* 801EA048 001E6FA8 6C 84 80 00 */ xoris r4, r4, 0x8000 +/* 801EA04C 001E6FAC EF C8 48 24 */ fdivs f30, f8, f9 +/* 801EA050 001E6FB0 6C 65 80 00 */ xoris r5, r3, 0x8000 +/* 801EA054 001E6FB4 6C 08 80 00 */ xoris r8, r0, 0x8000 +/* 801EA058 001E6FB8 6F A7 80 00 */ xoris r7, r29, 0x8000 +/* 801EA05C 001E6FBC 6F C6 80 00 */ xoris r6, r30, 0x8000 +/* 801EA060 001E6FC0 6F E0 80 00 */ xoris r0, r31, 0x8000 +/* 801EA064 001E6FC4 EF A7 48 24 */ fdivs f29, f7, f9 +/* 801EA068 001E6FC8 90 81 00 54 */ stw r4, 0x54(r1) +/* 801EA06C 001E6FCC C9 A2 AD E0 */ lfd f13, lbl_805ACB00@sda21(r2) +/* 801EA070 001E6FD0 7F 83 E3 78 */ mr r3, r28 +/* 801EA074 001E6FD4 91 21 00 50 */ stw r9, 0x50(r1) +/* 801EA078 001E6FD8 38 81 00 14 */ addi r4, r1, 0x14 +/* 801EA07C 001E6FDC C9 01 00 50 */ lfd f8, 0x50(r1) +/* 801EA080 001E6FE0 EC C6 48 24 */ fdivs f6, f6, f9 +/* 801EA084 001E6FE4 90 A1 00 5C */ stw r5, 0x5c(r1) +/* 801EA088 001E6FE8 38 A1 00 08 */ addi r5, r1, 8 +/* 801EA08C 001E6FEC 91 21 00 58 */ stw r9, 0x58(r1) +/* 801EA090 001E6FF0 C8 E1 00 58 */ lfd f7, 0x58(r1) +/* 801EA094 001E6FF4 91 01 00 64 */ stw r8, 0x64(r1) +/* 801EA098 001E6FF8 91 21 00 60 */ stw r9, 0x60(r1) +/* 801EA09C 001E6FFC ED 08 68 28 */ fsubs f8, f8, f13 +/* 801EA0A0 001E7000 ED 27 68 28 */ fsubs f9, f7, f13 +/* 801EA0A4 001E7004 C8 E1 00 60 */ lfd f7, 0x60(r1) +/* 801EA0A8 001E7008 ED 68 2F BA */ fmadds f11, f8, f30, f5 +/* 801EA0AC 001E700C 90 E1 00 6C */ stw r7, 0x6c(r1) +/* 801EA0B0 001E7010 ED 07 68 28 */ fsubs f8, f7, f13 +/* 801EA0B4 001E7014 91 21 00 68 */ stw r9, 0x68(r1) +/* 801EA0B8 001E7018 ED 49 27 7A */ fmadds f10, f9, f29, f4 +/* 801EA0BC 001E701C ED 9F 58 2A */ fadds f12, f31, f11 +/* 801EA0C0 001E7020 C8 E1 00 68 */ lfd f7, 0x68(r1) +/* 801EA0C4 001E7024 ED 28 19 BA */ fmadds f9, f8, f6, f3 +/* 801EA0C8 001E7028 ED 7F 50 2A */ fadds f11, f31, f10 +/* 801EA0CC 001E702C 90 C1 00 74 */ stw r6, 0x74(r1) +/* 801EA0D0 001E7030 ED 07 68 28 */ fsubs f8, f7, f13 +/* 801EA0D4 001E7034 91 21 00 70 */ stw r9, 0x70(r1) +/* 801EA0D8 001E7038 ED 5F 48 2A */ fadds f10, f31, f9 +/* 801EA0DC 001E703C C8 E1 00 70 */ lfd f7, 0x70(r1) +/* 801EA0E0 001E7040 ED 28 2F BA */ fmadds f9, f8, f30, f5 +/* 801EA0E4 001E7044 90 01 00 7C */ stw r0, 0x7c(r1) +/* 801EA0E8 001E7048 ED 07 68 28 */ fsubs f8, f7, f13 +/* 801EA0EC 001E704C 91 21 00 78 */ stw r9, 0x78(r1) +/* 801EA0F0 001E7050 ED 29 F8 28 */ fsubs f9, f9, f31 +/* 801EA0F4 001E7054 C8 E1 00 78 */ lfd f7, 0x78(r1) +/* 801EA0F8 001E7058 ED 08 27 7A */ fmadds f8, f8, f29, f4 +/* 801EA0FC 001E705C D0 A1 00 38 */ stfs f5, 0x38(r1) +/* 801EA100 001E7060 EC A7 68 28 */ fsubs f5, f7, f13 +/* 801EA104 001E7064 EC E8 F8 28 */ fsubs f7, f8, f31 +/* 801EA108 001E7068 D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 801EA10C 001E706C EC 85 19 BA */ fmadds f4, f5, f6, f3 +/* 801EA110 001E7070 D0 61 00 40 */ stfs f3, 0x40(r1) +/* 801EA114 001E7074 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 801EA118 001E7078 EC 44 F8 28 */ fsubs f2, f4, f31 +/* 801EA11C 001E707C D0 21 00 48 */ stfs f1, 0x48(r1) +/* 801EA120 001E7080 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 801EA124 001E7084 D1 81 00 08 */ stfs f12, 8(r1) +/* 801EA128 001E7088 D1 61 00 0C */ stfs f11, 0xc(r1) +/* 801EA12C 001E708C D1 41 00 10 */ stfs f10, 0x10(r1) +/* 801EA130 001E7090 D1 21 00 14 */ stfs f9, 0x14(r1) +/* 801EA134 001E7094 D0 E1 00 18 */ stfs f7, 0x18(r1) +/* 801EA138 001E7098 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 801EA13C 001E709C 48 14 E3 CD */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801EA140 001E70A0 E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0 +/* 801EA144 001E70A4 CB E1 00 B0 */ lfd f31, 0xb0(r1) +/* 801EA148 001E70A8 E3 C1 00 A8 */ psq_l f30, 168(r1), 0, qr0 +/* 801EA14C 001E70AC CB C1 00 A0 */ lfd f30, 0xa0(r1) +/* 801EA150 001E70B0 E3 A1 00 98 */ psq_l f29, 152(r1), 0, qr0 +/* 801EA154 001E70B4 CB A1 00 90 */ lfd f29, 0x90(r1) +/* 801EA158 001E70B8 83 E1 00 8C */ lwz r31, 0x8c(r1) +/* 801EA15C 001E70BC 83 C1 00 88 */ lwz r30, 0x88(r1) +/* 801EA160 001E70C0 83 A1 00 84 */ lwz r29, 0x84(r1) +/* 801EA164 001E70C4 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 801EA168 001E70C8 83 81 00 80 */ lwz r28, 0x80(r1) +/* 801EA16C 001E70CC 7C 08 03 A6 */ mtlr r0 +/* 801EA170 001E70D0 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 801EA174 001E70D4 4E 80 00 20 */ blr + +.global GetListAt__17CWallCrawlerSwarmFRC9CVector3f +GetListAt__17CWallCrawlerSwarmFRC9CVector3f: +/* 801EA178 001E70D8 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801EA17C 001E70DC 7C 08 02 A6 */ mflr r0 +/* 801EA180 001E70E0 90 01 00 64 */ stw r0, 0x64(r1) +/* 801EA184 001E70E4 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 801EA188 001E70E8 7C 9F 23 78 */ mr r31, r4 +/* 801EA18C 001E70EC 93 C1 00 58 */ stw r30, 0x58(r1) +/* 801EA190 001E70F0 7C 7E 1B 78 */ mr r30, r3 +/* 801EA194 001E70F4 7F C4 F3 78 */ mr r4, r30 +/* 801EA198 001E70F8 38 61 00 08 */ addi r3, r1, 8 +/* 801EA19C 001E70FC 48 00 2D 01 */ bl GetBoundingBox__17CWallCrawlerSwarmCFv +/* 801EA1A0 001E7100 C1 61 00 0C */ lfs f11, 0xc(r1) +/* 801EA1A4 001E7104 C1 01 00 18 */ lfs f8, 0x18(r1) +/* 801EA1A8 001E7108 C1 41 00 10 */ lfs f10, 0x10(r1) +/* 801EA1AC 001E710C C0 E1 00 1C */ lfs f7, 0x1c(r1) +/* 801EA1B0 001E7110 EC 08 58 28 */ fsubs f0, f8, f11 +/* 801EA1B4 001E7114 C0 A2 AD D4 */ lfs f5, lbl_805ACAF4@sda21(r2) +/* 801EA1B8 001E7118 EC 47 50 28 */ fsubs f2, f7, f10 +/* 801EA1BC 001E711C C1 81 00 08 */ lfs f12, 8(r1) +/* 801EA1C0 001E7120 C1 21 00 14 */ lfs f9, 0x14(r1) +/* 801EA1C4 001E7124 EC 80 28 24 */ fdivs f4, f0, f5 +/* 801EA1C8 001E7128 C0 DF 00 04 */ lfs f6, 4(r31) +/* 801EA1CC 001E712C C0 7F 00 08 */ lfs f3, 8(r31) +/* 801EA1D0 001E7130 C0 3F 00 00 */ lfs f1, 0(r31) +/* 801EA1D4 001E7134 D1 81 00 20 */ stfs f12, 0x20(r1) +/* 801EA1D8 001E7138 D1 61 00 24 */ stfs f11, 0x24(r1) +/* 801EA1DC 001E713C EC 09 60 28 */ fsubs f0, f9, f12 +/* 801EA1E0 001E7140 D1 41 00 28 */ stfs f10, 0x28(r1) +/* 801EA1E4 001E7144 EC C6 58 28 */ fsubs f6, f6, f11 +/* 801EA1E8 001E7148 EC 42 28 24 */ fdivs f2, f2, f5 +/* 801EA1EC 001E714C D1 21 00 2C */ stfs f9, 0x2c(r1) +/* 801EA1F0 001E7150 D1 01 00 30 */ stfs f8, 0x30(r1) +/* 801EA1F4 001E7154 D0 E1 00 34 */ stfs f7, 0x34(r1) +/* 801EA1F8 001E7158 EC 63 50 28 */ fsubs f3, f3, f10 +/* 801EA1FC 001E715C EC 86 20 24 */ fdivs f4, f6, f4 +/* 801EA200 001E7160 EC 43 10 24 */ fdivs f2, f3, f2 +/* 801EA204 001E7164 FC 60 20 1E */ fctiwz f3, f4 +/* 801EA208 001E7168 FC 40 10 1E */ fctiwz f2, f2 +/* 801EA20C 001E716C EC 00 28 24 */ fdivs f0, f0, f5 +/* 801EA210 001E7170 D8 61 00 38 */ stfd f3, 0x38(r1) +/* 801EA214 001E7174 D8 41 00 40 */ stfd f2, 0x40(r1) +/* 801EA218 001E7178 80 01 00 3C */ lwz r0, 0x3c(r1) +/* 801EA21C 001E717C 80 81 00 44 */ lwz r4, 0x44(r1) +/* 801EA220 001E7180 1C 60 00 05 */ mulli r3, r0, 5 +/* 801EA224 001E7184 EC 21 60 28 */ fsubs f1, f1, f12 +/* 801EA228 001E7188 1C 04 00 19 */ mulli r0, r4, 0x19 +/* 801EA22C 001E718C EC 01 00 24 */ fdivs f0, f1, f0 +/* 801EA230 001E7190 7C 63 02 14 */ add r3, r3, r0 +/* 801EA234 001E7194 FC 00 00 1E */ fctiwz f0, f0 +/* 801EA238 001E7198 D8 01 00 48 */ stfd f0, 0x48(r1) +/* 801EA23C 001E719C 80 01 00 4C */ lwz r0, 0x4c(r1) +/* 801EA240 001E71A0 7C 60 1A 15 */ add. r3, r0, r3 +/* 801EA244 001E71A4 41 80 00 0C */ blt lbl_801EA250 +/* 801EA248 001E71A8 2C 03 00 7D */ cmpwi r3, 0x7d +/* 801EA24C 001E71AC 41 80 00 0C */ blt lbl_801EA258 +lbl_801EA250: +/* 801EA250 001E71B0 80 7E 03 60 */ lwz r3, 0x360(r30) +/* 801EA254 001E71B4 48 00 00 10 */ b lbl_801EA264 +lbl_801EA258: +/* 801EA258 001E71B8 54 60 10 3A */ slwi r0, r3, 2 +/* 801EA25C 001E71BC 7C 7E 02 14 */ add r3, r30, r0 +/* 801EA260 001E71C0 80 63 01 6C */ lwz r3, 0x16c(r3) +lbl_801EA264: +/* 801EA264 001E71C4 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801EA268 001E71C8 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 801EA26C 001E71CC 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 801EA270 001E71D0 7C 08 03 A6 */ mtlr r0 +/* 801EA274 001E71D4 38 21 00 60 */ addi r1, r1, 0x60 +/* 801EA278 001E71D8 4E 80 00 20 */ blr + +.global UpdatePartition__17CWallCrawlerSwarmFv +UpdatePartition__17CWallCrawlerSwarmFv: +/* 801EA27C 001E71DC 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 801EA280 001E71E0 7C 08 02 A6 */ mflr r0 +/* 801EA284 001E71E4 90 01 00 74 */ stw r0, 0x74(r1) +/* 801EA288 001E71E8 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 801EA28C 001E71EC 93 C1 00 68 */ stw r30, 0x68(r1) +/* 801EA290 001E71F0 7C 7E 1B 78 */ mr r30, r3 +/* 801EA294 001E71F4 38 60 00 00 */ li r3, 0 +/* 801EA298 001E71F8 80 BE 01 68 */ lwz r5, 0x168(r30) +/* 801EA29C 001E71FC 3B FE 01 6C */ addi r31, r30, 0x16c +/* 801EA2A0 001E7200 2C 05 00 00 */ cmpwi r5, 0 +/* 801EA2A4 001E7204 40 81 00 40 */ ble lbl_801EA2E4 +/* 801EA2A8 001E7208 2C 05 00 08 */ cmpwi r5, 8 +/* 801EA2AC 001E720C 38 85 FF F8 */ addi r4, r5, -8 +/* 801EA2B0 001E7210 40 81 00 20 */ ble lbl_801EA2D0 +/* 801EA2B4 001E7214 38 04 00 07 */ addi r0, r4, 7 +/* 801EA2B8 001E7218 54 00 E8 FE */ srwi r0, r0, 3 +/* 801EA2BC 001E721C 7C 09 03 A6 */ mtctr r0 +/* 801EA2C0 001E7220 2C 04 00 00 */ cmpwi r4, 0 +/* 801EA2C4 001E7224 40 81 00 0C */ ble lbl_801EA2D0 +lbl_801EA2C8: +/* 801EA2C8 001E7228 38 63 00 08 */ addi r3, r3, 8 +/* 801EA2CC 001E722C 42 00 FF FC */ bdnz lbl_801EA2C8 +lbl_801EA2D0: +/* 801EA2D0 001E7230 7C 03 28 50 */ subf r0, r3, r5 +/* 801EA2D4 001E7234 7C 09 03 A6 */ mtctr r0 +/* 801EA2D8 001E7238 7C 03 28 00 */ cmpw r3, r5 +/* 801EA2DC 001E723C 40 80 00 08 */ bge lbl_801EA2E4 +lbl_801EA2E0: +/* 801EA2E0 001E7240 42 00 00 00 */ bdnz lbl_801EA2E0 +lbl_801EA2E4: +/* 801EA2E4 001E7244 38 80 00 00 */ li r4, 0 +/* 801EA2E8 001E7248 38 00 00 19 */ li r0, 0x19 +/* 801EA2EC 001E724C 90 9E 01 68 */ stw r4, 0x168(r30) +/* 801EA2F0 001E7250 38 A0 00 00 */ li r5, 0 +/* 801EA2F4 001E7254 7C 09 03 A6 */ mtctr r0 +lbl_801EA2F8: +/* 801EA2F8 001E7258 80 1E 01 68 */ lwz r0, 0x168(r30) +/* 801EA2FC 001E725C 54 00 10 3A */ slwi r0, r0, 2 +/* 801EA300 001E7260 7C 7F 02 15 */ add. r3, r31, r0 +/* 801EA304 001E7264 41 82 00 08 */ beq lbl_801EA30C +/* 801EA308 001E7268 90 83 00 00 */ stw r4, 0(r3) +lbl_801EA30C: +/* 801EA30C 001E726C 80 7E 01 68 */ lwz r3, 0x168(r30) +/* 801EA310 001E7270 38 03 00 01 */ addi r0, r3, 1 +/* 801EA314 001E7274 90 1E 01 68 */ stw r0, 0x168(r30) +/* 801EA318 001E7278 80 1E 01 68 */ lwz r0, 0x168(r30) +/* 801EA31C 001E727C 54 00 10 3A */ slwi r0, r0, 2 +/* 801EA320 001E7280 7C 7F 02 15 */ add. r3, r31, r0 +/* 801EA324 001E7284 41 82 00 08 */ beq lbl_801EA32C +/* 801EA328 001E7288 90 83 00 00 */ stw r4, 0(r3) +lbl_801EA32C: +/* 801EA32C 001E728C 80 7E 01 68 */ lwz r3, 0x168(r30) +/* 801EA330 001E7290 38 03 00 01 */ addi r0, r3, 1 +/* 801EA334 001E7294 90 1E 01 68 */ stw r0, 0x168(r30) +/* 801EA338 001E7298 80 1E 01 68 */ lwz r0, 0x168(r30) +/* 801EA33C 001E729C 54 00 10 3A */ slwi r0, r0, 2 +/* 801EA340 001E72A0 7C 7F 02 15 */ add. r3, r31, r0 +/* 801EA344 001E72A4 41 82 00 08 */ beq lbl_801EA34C +/* 801EA348 001E72A8 90 83 00 00 */ stw r4, 0(r3) +lbl_801EA34C: +/* 801EA34C 001E72AC 80 7E 01 68 */ lwz r3, 0x168(r30) +/* 801EA350 001E72B0 38 03 00 01 */ addi r0, r3, 1 +/* 801EA354 001E72B4 90 1E 01 68 */ stw r0, 0x168(r30) +/* 801EA358 001E72B8 80 1E 01 68 */ lwz r0, 0x168(r30) +/* 801EA35C 001E72BC 54 00 10 3A */ slwi r0, r0, 2 +/* 801EA360 001E72C0 7C 7F 02 15 */ add. r3, r31, r0 +/* 801EA364 001E72C4 41 82 00 08 */ beq lbl_801EA36C +/* 801EA368 001E72C8 90 83 00 00 */ stw r4, 0(r3) +lbl_801EA36C: +/* 801EA36C 001E72CC 80 7E 01 68 */ lwz r3, 0x168(r30) +/* 801EA370 001E72D0 38 03 00 01 */ addi r0, r3, 1 +/* 801EA374 001E72D4 90 1E 01 68 */ stw r0, 0x168(r30) +/* 801EA378 001E72D8 80 1E 01 68 */ lwz r0, 0x168(r30) +/* 801EA37C 001E72DC 54 00 10 3A */ slwi r0, r0, 2 +/* 801EA380 001E72E0 7C 7F 02 15 */ add. r3, r31, r0 +/* 801EA384 001E72E4 41 82 00 08 */ beq lbl_801EA38C +/* 801EA388 001E72E8 90 83 00 00 */ stw r4, 0(r3) +lbl_801EA38C: +/* 801EA38C 001E72EC 80 7E 01 68 */ lwz r3, 0x168(r30) +/* 801EA390 001E72F0 38 A5 00 04 */ addi r5, r5, 4 +/* 801EA394 001E72F4 38 03 00 01 */ addi r0, r3, 1 +/* 801EA398 001E72F8 90 1E 01 68 */ stw r0, 0x168(r30) +/* 801EA39C 001E72FC 42 00 FF 5C */ bdnz lbl_801EA2F8 +/* 801EA3A0 001E7300 38 00 00 00 */ li r0, 0 +/* 801EA3A4 001E7304 7F C4 F3 78 */ mr r4, r30 +/* 801EA3A8 001E7308 90 1E 03 60 */ stw r0, 0x360(r30) +/* 801EA3AC 001E730C 38 61 00 14 */ addi r3, r1, 0x14 +/* 801EA3B0 001E7310 48 00 2A ED */ bl GetBoundingBox__17CWallCrawlerSwarmCFv +/* 801EA3B4 001E7314 C1 21 00 14 */ lfs f9, 0x14(r1) +/* 801EA3B8 001E7318 C0 C1 00 20 */ lfs f6, 0x20(r1) +/* 801EA3BC 001E731C C1 01 00 18 */ lfs f8, 0x18(r1) +/* 801EA3C0 001E7320 C0 A1 00 24 */ lfs f5, 0x24(r1) +/* 801EA3C4 001E7324 EC 66 48 28 */ fsubs f3, f6, f9 +/* 801EA3C8 001E7328 C0 E1 00 1C */ lfs f7, 0x1c(r1) +/* 801EA3CC 001E732C C0 81 00 28 */ lfs f4, 0x28(r1) +/* 801EA3D0 001E7330 EC 25 40 28 */ fsubs f1, f5, f8 +/* 801EA3D4 001E7334 C0 42 AD D4 */ lfs f2, lbl_805ACAF4@sda21(r2) +/* 801EA3D8 001E7338 EC 04 38 28 */ fsubs f0, f4, f7 +/* 801EA3DC 001E733C D1 21 00 2C */ stfs f9, 0x2c(r1) +/* 801EA3E0 001E7340 ED 23 10 24 */ fdivs f9, f3, f2 +/* 801EA3E4 001E7344 80 DE 01 14 */ lwz r6, 0x114(r30) +/* 801EA3E8 001E7348 D1 01 00 30 */ stfs f8, 0x30(r1) +/* 801EA3EC 001E734C D0 E1 00 34 */ stfs f7, 0x34(r1) +/* 801EA3F0 001E7350 D0 C1 00 38 */ stfs f6, 0x38(r1) +/* 801EA3F4 001E7354 D0 A1 00 3C */ stfs f5, 0x3c(r1) +/* 801EA3F8 001E7358 EC C1 10 24 */ fdivs f6, f1, f2 +/* 801EA3FC 001E735C D0 81 00 40 */ stfs f4, 0x40(r1) +/* 801EA400 001E7360 EC E0 10 24 */ fdivs f7, f0, f2 +/* 801EA404 001E7364 48 00 00 E0 */ b lbl_801EA4E4 +lbl_801EA408: +/* 801EA408 001E7368 88 06 00 80 */ lbz r0, 0x80(r6) +/* 801EA40C 001E736C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801EA410 001E7370 41 82 00 D0 */ beq lbl_801EA4E0 +/* 801EA414 001E7374 C0 A6 00 2C */ lfs f5, 0x2c(r6) +/* 801EA418 001E7378 C0 86 00 1C */ lfs f4, 0x1c(r6) +/* 801EA41C 001E737C C0 21 00 30 */ lfs f1, 0x30(r1) +/* 801EA420 001E7380 C0 01 00 34 */ lfs f0, 0x34(r1) +/* 801EA424 001E7384 EC 24 08 28 */ fsubs f1, f4, f1 +/* 801EA428 001E7388 C0 66 00 0C */ lfs f3, 0xc(r6) +/* 801EA42C 001E738C EC 05 00 28 */ fsubs f0, f5, f0 +/* 801EA430 001E7390 C0 41 00 2C */ lfs f2, 0x2c(r1) +/* 801EA434 001E7394 D0 61 00 08 */ stfs f3, 8(r1) +/* 801EA438 001E7398 EC 21 30 24 */ fdivs f1, f1, f6 +/* 801EA43C 001E739C D0 81 00 0C */ stfs f4, 0xc(r1) +/* 801EA440 001E73A0 D0 A1 00 10 */ stfs f5, 0x10(r1) +/* 801EA444 001E73A4 EC 00 38 24 */ fdivs f0, f0, f7 +/* 801EA448 001E73A8 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801EA44C 001E73AC FC 20 08 1E */ fctiwz f1, f1 +/* 801EA450 001E73B0 FC 00 00 1E */ fctiwz f0, f0 +/* 801EA454 001E73B4 EC 42 48 24 */ fdivs f2, f2, f9 +/* 801EA458 001E73B8 D8 21 00 50 */ stfd f1, 0x50(r1) +/* 801EA45C 001E73BC D8 01 00 58 */ stfd f0, 0x58(r1) +/* 801EA460 001E73C0 80 81 00 54 */ lwz r4, 0x54(r1) +/* 801EA464 001E73C4 80 A1 00 5C */ lwz r5, 0x5c(r1) +/* 801EA468 001E73C8 1C 64 00 05 */ mulli r3, r4, 5 +/* 801EA46C 001E73CC FC 00 10 1E */ fctiwz f0, f2 +/* 801EA470 001E73D0 1C 05 00 19 */ mulli r0, r5, 0x19 +/* 801EA474 001E73D4 D8 01 00 48 */ stfd f0, 0x48(r1) +/* 801EA478 001E73D8 7C 63 02 14 */ add r3, r3, r0 +/* 801EA47C 001E73DC 80 01 00 4C */ lwz r0, 0x4c(r1) +/* 801EA480 001E73E0 7C 60 1A 15 */ add. r3, r0, r3 +/* 801EA484 001E73E4 41 80 00 3C */ blt lbl_801EA4C0 +/* 801EA488 001E73E8 2C 03 00 7D */ cmpwi r3, 0x7d +/* 801EA48C 001E73EC 40 80 00 34 */ bge lbl_801EA4C0 +/* 801EA490 001E73F0 2C 00 00 00 */ cmpwi r0, 0 +/* 801EA494 001E73F4 41 80 00 2C */ blt lbl_801EA4C0 +/* 801EA498 001E73F8 2C 00 00 05 */ cmpwi r0, 5 +/* 801EA49C 001E73FC 40 80 00 24 */ bge lbl_801EA4C0 +/* 801EA4A0 001E7400 2C 04 00 00 */ cmpwi r4, 0 +/* 801EA4A4 001E7404 41 80 00 1C */ blt lbl_801EA4C0 +/* 801EA4A8 001E7408 2C 04 00 05 */ cmpwi r4, 5 +/* 801EA4AC 001E740C 40 80 00 14 */ bge lbl_801EA4C0 +/* 801EA4B0 001E7410 2C 05 00 00 */ cmpwi r5, 0 +/* 801EA4B4 001E7414 41 80 00 0C */ blt lbl_801EA4C0 +/* 801EA4B8 001E7418 2C 05 00 05 */ cmpwi r5, 5 +/* 801EA4BC 001E741C 41 80 00 14 */ blt lbl_801EA4D0 +lbl_801EA4C0: +/* 801EA4C0 001E7420 80 1E 03 60 */ lwz r0, 0x360(r30) +/* 801EA4C4 001E7424 90 06 00 44 */ stw r0, 0x44(r6) +/* 801EA4C8 001E7428 90 DE 03 60 */ stw r6, 0x360(r30) +/* 801EA4CC 001E742C 48 00 00 14 */ b lbl_801EA4E0 +lbl_801EA4D0: +/* 801EA4D0 001E7430 54 63 10 3A */ slwi r3, r3, 2 +/* 801EA4D4 001E7434 7C 1F 18 2E */ lwzx r0, r31, r3 +/* 801EA4D8 001E7438 90 06 00 44 */ stw r0, 0x44(r6) +/* 801EA4DC 001E743C 7C DF 19 2E */ stwx r6, r31, r3 +lbl_801EA4E0: +/* 801EA4E0 001E7440 38 C6 00 84 */ addi r6, r6, 0x84 +lbl_801EA4E4: +/* 801EA4E4 001E7444 80 1E 01 0C */ lwz r0, 0x10c(r30) +/* 801EA4E8 001E7448 80 7E 01 14 */ lwz r3, 0x114(r30) +/* 801EA4EC 001E744C 1C 00 00 84 */ mulli r0, r0, 0x84 +/* 801EA4F0 001E7450 7C 03 02 14 */ add r0, r3, r0 +/* 801EA4F4 001E7454 7C 06 00 40 */ cmplw r6, r0 +/* 801EA4F8 001E7458 40 82 FF 10 */ bne lbl_801EA408 +/* 801EA4FC 001E745C 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801EA500 001E7460 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 801EA504 001E7464 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 801EA508 001E7468 7C 08 03 A6 */ mtlr r0 +/* 801EA50C 001E746C 38 21 00 70 */ addi r1, r1, 0x70 +/* 801EA510 001E7470 4E 80 00 20 */ blr + +.global LaunchBoid__17CWallCrawlerSwarmFRQ217CWallCrawlerSwarm5CBoidRC9CVector3f +LaunchBoid__17CWallCrawlerSwarmFRQ217CWallCrawlerSwarm5CBoidRC9CVector3f: +/* 801EA514 001E7474 94 21 FE C0 */ stwu r1, -0x140(r1) +/* 801EA518 001E7478 7C 08 02 A6 */ mflr r0 +/* 801EA51C 001E747C 90 01 01 44 */ stw r0, 0x144(r1) +/* 801EA520 001E7480 DB E1 01 30 */ stfd f31, 0x130(r1) +/* 801EA524 001E7484 F3 E1 01 38 */ psq_st f31, 312(r1), 0, qr0 +/* 801EA528 001E7488 DB C1 01 20 */ stfd f30, 0x120(r1) +/* 801EA52C 001E748C F3 C1 01 28 */ psq_st f30, 296(r1), 0, qr0 +/* 801EA530 001E7490 DB A1 01 10 */ stfd f29, 0x110(r1) +/* 801EA534 001E7494 F3 A1 01 18 */ psq_st f29, 280(r1), 0, qr0 +/* 801EA538 001E7498 DB 81 01 00 */ stfd f28, 0x100(r1) +/* 801EA53C 001E749C F3 81 01 08 */ psq_st f28, 264(r1), 0, qr0 +/* 801EA540 001E74A0 DB 61 00 F0 */ stfd f27, 0xf0(r1) +/* 801EA544 001E74A4 F3 61 00 F8 */ psq_st f27, 248(r1), 0, qr0 +/* 801EA548 001E74A8 DB 41 00 E0 */ stfd f26, 0xe0(r1) +/* 801EA54C 001E74AC F3 41 00 E8 */ psq_st f26, 232(r1), 0, qr0 +/* 801EA550 001E74B0 DB 21 00 D0 */ stfd f25, 0xd0(r1) +/* 801EA554 001E74B4 F3 21 00 D8 */ psq_st f25, 216(r1), 0, qr0 +/* 801EA558 001E74B8 DB 01 00 C0 */ stfd f24, 0xc0(r1) +/* 801EA55C 001E74BC F3 01 00 C8 */ psq_st f24, 200(r1), 0, qr0 +/* 801EA560 001E74C0 93 E1 00 BC */ stw r31, 0xbc(r1) +/* 801EA564 001E74C4 93 C1 00 B8 */ stw r30, 0xb8(r1) +/* 801EA568 001E74C8 93 A1 00 B4 */ stw r29, 0xb4(r1) +/* 801EA56C 001E74CC 7C 9F 23 78 */ mr r31, r4 +/* 801EA570 001E74D0 88 0D A4 C8 */ lbz r0, lbl_805A9088@sda21(r13) +/* 801EA574 001E74D4 C0 44 00 2C */ lfs f2, 0x2c(r4) +/* 801EA578 001E74D8 7C 7E 1B 78 */ mr r30, r3 +/* 801EA57C 001E74DC C0 24 00 1C */ lfs f1, 0x1c(r4) +/* 801EA580 001E74E0 7C 00 07 75 */ extsb. r0, r0 +/* 801EA584 001E74E4 C0 04 00 0C */ lfs f0, 0xc(r4) +/* 801EA588 001E74E8 7C BD 2B 78 */ mr r29, r5 +/* 801EA58C 001E74EC D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 801EA590 001E74F0 D0 21 00 40 */ stfs f1, 0x40(r1) +/* 801EA594 001E74F4 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 801EA598 001E74F8 40 82 00 28 */ bne lbl_801EA5C0 +/* 801EA59C 001E74FC C0 22 AD C8 */ lfs f1, lbl_805ACAE8@sda21(r2) +/* 801EA5A0 001E7500 C0 02 96 A0 */ lfs f0, lbl_805AB3C0@sda21(r2) +/* 801EA5A4 001E7504 EC 21 00 24 */ fdivs f1, f1, f0 +/* 801EA5A8 001E7508 48 12 AF 59 */ bl SqrtF__5CMathFf +/* 801EA5AC 001E750C C0 02 AD EC */ lfs f0, lbl_805ACB0C@sda21(r2) +/* 801EA5B0 001E7510 38 00 00 01 */ li r0, 1 +/* 801EA5B4 001E7514 98 0D A4 C8 */ stb r0, lbl_805A9088@sda21(r13) +/* 801EA5B8 001E7518 EC 00 00 72 */ fmuls f0, f0, f1 +/* 801EA5BC 001E751C D0 0D A4 C4 */ stfs f0, lbl_805A9084@sda21(r13) +lbl_801EA5C0: +/* 801EA5C0 001E7520 88 0D A4 D0 */ lbz r0, lbl_805A9090@sda21(r13) +/* 801EA5C4 001E7524 7C 00 07 75 */ extsb. r0, r0 +/* 801EA5C8 001E7528 40 82 00 1C */ bne lbl_801EA5E4 +/* 801EA5CC 001E752C C0 22 AD F0 */ lfs f1, lbl_805ACB10@sda21(r2) +/* 801EA5D0 001E7530 38 00 00 01 */ li r0, 1 +/* 801EA5D4 001E7534 C0 0D A4 C4 */ lfs f0, lbl_805A9084@sda21(r13) +/* 801EA5D8 001E7538 98 0D A4 D0 */ stb r0, lbl_805A9090@sda21(r13) +/* 801EA5DC 001E753C EC 01 00 24 */ fdivs f0, f1, f0 +/* 801EA5E0 001E7540 D0 0D A4 CC */ stfs f0, lbl_805A908C@sda21(r13) +lbl_801EA5E4: +/* 801EA5E4 001E7544 C0 3D 00 04 */ lfs f1, 4(r29) +/* 801EA5E8 001E7548 38 61 00 30 */ addi r3, r1, 0x30 +/* 801EA5EC 001E754C C0 01 00 40 */ lfs f0, 0x40(r1) +/* 801EA5F0 001E7550 C0 62 96 A0 */ lfs f3, lbl_805AB3C0@sda21(r2) +/* 801EA5F4 001E7554 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801EA5F8 001E7558 C0 02 AD A0 */ lfs f0, lbl_805ACAC0@sda21(r2) +/* 801EA5FC 001E755C C0 5D 00 00 */ lfs f2, 0(r29) +/* 801EA600 001E7560 FF 40 18 50 */ fneg f26, f3 +/* 801EA604 001E7564 C0 21 00 3C */ lfs f1, 0x3c(r1) +/* 801EA608 001E7568 C0 7D 00 08 */ lfs f3, 8(r29) +/* 801EA60C 001E756C EC 22 08 28 */ fsubs f1, f2, f1 +/* 801EA610 001E7570 C0 41 00 44 */ lfs f2, 0x44(r1) +/* 801EA614 001E7574 D0 81 00 34 */ stfs f4, 0x34(r1) +/* 801EA618 001E7578 EF C3 10 28 */ fsubs f30, f3, f2 +/* 801EA61C 001E757C D0 21 00 30 */ stfs f1, 0x30(r1) +/* 801EA620 001E7580 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 801EA624 001E7584 48 12 A2 95 */ bl Magnitude__9CVector3fCFv +/* 801EA628 001E7588 FF E0 08 90 */ fmr f31, f1 +/* 801EA62C 001E758C 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 801EA630 001E7590 38 83 66 70 */ addi r4, r3, skIdentity4f@l +/* 801EA634 001E7594 7F E3 FB 78 */ mr r3, r31 +/* 801EA638 001E7598 48 12 85 71 */ bl SetRotation__12CTransform4fFRC12CTransform4f +/* 801EA63C 001E759C C0 02 AD DC */ lfs f0, lbl_805ACAFC@sda21(r2) +/* 801EA640 001E75A0 38 61 00 18 */ addi r3, r1, 0x18 +/* 801EA644 001E75A4 38 81 00 30 */ addi r4, r1, 0x30 +/* 801EA648 001E75A8 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801EA64C 001E75AC C0 5F 00 24 */ lfs f2, 0x24(r31) +/* 801EA650 001E75B0 C0 3F 00 14 */ lfs f1, 0x14(r31) +/* 801EA654 001E75B4 C0 1F 00 04 */ lfs f0, 4(r31) +/* 801EA658 001E75B8 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801EA65C 001E75BC D0 21 00 28 */ stfs f1, 0x28(r1) +/* 801EA660 001E75C0 D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 801EA664 001E75C4 48 12 A1 ED */ bl AsNormalized__9CVector3fCFv +/* 801EA668 001E75C8 38 61 00 48 */ addi r3, r1, 0x48 +/* 801EA66C 001E75CC 38 81 00 24 */ addi r4, r1, 0x24 +/* 801EA670 001E75D0 38 A1 00 18 */ addi r5, r1, 0x18 +/* 801EA674 001E75D4 38 C1 00 0C */ addi r6, r1, 0xc +/* 801EA678 001E75D8 48 00 47 35 */ bl LookAt__F9CVector3f9CVector3ff +/* 801EA67C 001E75DC 7F E5 FB 78 */ mr r5, r31 +/* 801EA680 001E75E0 38 61 00 78 */ addi r3, r1, 0x78 +/* 801EA684 001E75E4 38 81 00 48 */ addi r4, r1, 0x48 +/* 801EA688 001E75E8 48 12 88 A9 */ bl MultiplyIgnoreTranslation__12CTransform4fCFRC12CTransform4f +/* 801EA68C 001E75EC 7F E3 FB 78 */ mr r3, r31 +/* 801EA690 001E75F0 38 81 00 78 */ addi r4, r1, 0x78 +/* 801EA694 001E75F4 48 12 84 AD */ bl __as__12CTransform4fFRC12CTransform4f +/* 801EA698 001E75F8 C0 4D A4 CC */ lfs f2, lbl_805A908C@sda21(r13) +/* 801EA69C 001E75FC C0 1F 00 04 */ lfs f0, 4(r31) +/* 801EA6A0 001E7600 C0 3F 00 14 */ lfs f1, 0x14(r31) +/* 801EA6A4 001E7604 EF A2 00 32 */ fmuls f29, f2, f0 +/* 801EA6A8 001E7608 C0 02 AD B0 */ lfs f0, lbl_805ACAD0@sda21(r2) +/* 801EA6AC 001E760C C0 82 AD F4 */ lfs f4, lbl_805ACB14@sda21(r2) +/* 801EA6B0 001E7610 EF 82 00 72 */ fmuls f28, f2, f1 +/* 801EA6B4 001E7614 EF 60 00 B2 */ fmuls f27, f0, f2 +/* 801EA6B8 001E7618 FC 1F 20 40 */ fcmpo cr0, f31, f4 +/* 801EA6BC 001E761C 40 81 00 D4 */ ble lbl_801EA790 +/* 801EA6C0 001E7620 C0 02 AD B4 */ lfs f0, lbl_805ACAD4@sda21(r2) +/* 801EA6C4 001E7624 C0 21 00 34 */ lfs f1, 0x34(r1) +/* 801EA6C8 001E7628 EC A0 F8 24 */ fdivs f5, f0, f31 +/* 801EA6CC 001E762C C0 61 00 30 */ lfs f3, 0x30(r1) +/* 801EA6D0 001E7630 C0 01 00 38 */ lfs f0, 0x38(r1) +/* 801EA6D4 001E7634 EC 41 01 72 */ fmuls f2, f1, f5 +/* 801EA6D8 001E7638 EC 63 01 72 */ fmuls f3, f3, f5 +/* 801EA6DC 001E763C EC 20 01 72 */ fmuls f1, f0, f5 +/* 801EA6E0 001E7640 EC 02 07 32 */ fmuls f0, f2, f28 +/* 801EA6E4 001E7644 D0 41 00 34 */ stfs f2, 0x34(r1) +/* 801EA6E8 001E7648 D0 61 00 30 */ stfs f3, 0x30(r1) +/* 801EA6EC 001E764C EC 03 07 7A */ fmadds f0, f3, f29, f0 +/* 801EA6F0 001E7650 D0 21 00 38 */ stfs f1, 0x38(r1) +/* 801EA6F4 001E7654 EF 01 06 FA */ fmadds f24, f1, f27, f0 +/* 801EA6F8 001E7658 FC 18 20 40 */ fcmpo cr0, f24, f4 +/* 801EA6FC 001E765C 40 81 00 94 */ ble lbl_801EA790 +/* 801EA700 001E7660 C3 22 AD A0 */ lfs f25, lbl_805ACAC0@sda21(r2) +/* 801EA704 001E7664 FC 1E C8 40 */ fcmpo cr0, f30, f25 +/* 801EA708 001E7668 7C 00 00 26 */ mfcr r0 +/* 801EA70C 001E766C FC 20 D0 90 */ fmr f1, f26 +/* 801EA710 001E7670 FC 40 D8 90 */ fmr f2, f27 +/* 801EA714 001E7674 54 1D 0F FE */ srwi r29, r0, 0x1f +/* 801EA718 001E7678 FC 60 F0 50 */ fneg f3, f30 +/* 801EA71C 001E767C 38 61 00 14 */ addi r3, r1, 0x14 +/* 801EA720 001E7680 38 81 00 10 */ addi r4, r1, 0x10 +/* 801EA724 001E7684 4B F5 3C D1 */ bl SolveQuadratic__18CSteeringBehaviorsFfffRfRf +/* 801EA728 001E7688 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801EA72C 001E768C 41 82 00 18 */ beq lbl_801EA744 +/* 801EA730 001E7690 28 1D 00 00 */ cmplwi r29, 0 +/* 801EA734 001E7694 41 82 00 0C */ beq lbl_801EA740 +/* 801EA738 001E7698 C3 21 00 10 */ lfs f25, 0x10(r1) +/* 801EA73C 001E769C 48 00 00 08 */ b lbl_801EA744 +lbl_801EA740: +/* 801EA740 001E76A0 C3 21 00 14 */ lfs f25, 0x14(r1) +lbl_801EA744: +/* 801EA744 001E76A4 28 1D 00 00 */ cmplwi r29, 0 +/* 801EA748 001E76A8 40 82 00 0C */ bne lbl_801EA754 +/* 801EA74C 001E76AC EC 1F C0 24 */ fdivs f0, f31, f24 +/* 801EA750 001E76B0 EF 39 00 2A */ fadds f25, f25, f0 +lbl_801EA754: +/* 801EA754 001E76B4 C0 02 AD F8 */ lfs f0, lbl_805ACB18@sda21(r2) +/* 801EA758 001E76B8 FC 19 00 40 */ fcmpo cr0, f25, f0 +/* 801EA75C 001E76BC 40 80 00 34 */ bge lbl_801EA790 +/* 801EA760 001E76C0 EC BF C8 24 */ fdivs f5, f31, f25 +/* 801EA764 001E76C4 C0 41 00 30 */ lfs f2, 0x30(r1) +/* 801EA768 001E76C8 C0 01 00 34 */ lfs f0, 0x34(r1) +/* 801EA76C 001E76CC C0 22 AD B0 */ lfs f1, lbl_805ACAD0@sda21(r2) +/* 801EA770 001E76D0 C0 62 AD FC */ lfs f3, lbl_805ACB1C@sda21(r2) +/* 801EA774 001E76D4 EC 85 00 B2 */ fmuls f4, f5, f2 +/* 801EA778 001E76D8 EC 45 00 32 */ fmuls f2, f5, f0 +/* 801EA77C 001E76DC EC 1E C8 24 */ fdivs f0, f30, f25 +/* 801EA780 001E76E0 EC 21 06 B2 */ fmuls f1, f1, f26 +/* 801EA784 001E76E4 EF A3 01 32 */ fmuls f29, f3, f4 +/* 801EA788 001E76E8 EF 83 00 B2 */ fmuls f28, f3, f2 +/* 801EA78C 001E76EC EF 61 06 7C */ fnmsubs f27, f1, f25, f0 +lbl_801EA790: +/* 801EA790 001E76F0 D3 BF 00 30 */ stfs f29, 0x30(r31) +/* 801EA794 001E76F4 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801EA798 001E76F8 38 C3 66 A0 */ addi r6, r3, skZero3f@l +/* 801EA79C 001E76FC 38 80 00 01 */ li r4, 1 +/* 801EA7A0 001E7700 D3 9F 00 34 */ stfs f28, 0x34(r31) +/* 801EA7A4 001E7704 38 61 00 08 */ addi r3, r1, 8 +/* 801EA7A8 001E7708 A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) +/* 801EA7AC 001E770C 38 A1 00 3C */ addi r5, r1, 0x3c +/* 801EA7B0 001E7710 D3 7F 00 38 */ stfs f27, 0x38(r31) +/* 801EA7B4 001E7714 38 E0 00 01 */ li r7, 1 +/* 801EA7B8 001E7718 39 00 00 00 */ li r8, 0 +/* 801EA7BC 001E771C 88 1F 00 80 */ lbz r0, 0x80(r31) +/* 801EA7C0 001E7720 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 801EA7C4 001E7724 98 1F 00 80 */ stb r0, 0x80(r31) +/* 801EA7C8 001E7728 A0 1F 00 7E */ lhz r0, 0x7e(r31) +/* 801EA7CC 001E772C 50 80 34 B2 */ rlwimi r0, r4, 6, 0x12, 0x19 +/* 801EA7D0 001E7730 B0 1F 00 7E */ sth r0, 0x7e(r31) +/* 801EA7D4 001E7734 A0 9E 05 5C */ lhz r4, 0x55c(r30) +/* 801EA7D8 001E7738 81 5E 00 04 */ lwz r10, 4(r30) +/* 801EA7DC 001E773C 48 0F FA D5 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +/* 801EA7E0 001E7740 E3 E1 01 38 */ psq_l f31, 312(r1), 0, qr0 +/* 801EA7E4 001E7744 CB E1 01 30 */ lfd f31, 0x130(r1) +/* 801EA7E8 001E7748 E3 C1 01 28 */ psq_l f30, 296(r1), 0, qr0 +/* 801EA7EC 001E774C CB C1 01 20 */ lfd f30, 0x120(r1) +/* 801EA7F0 001E7750 E3 A1 01 18 */ psq_l f29, 280(r1), 0, qr0 +/* 801EA7F4 001E7754 CB A1 01 10 */ lfd f29, 0x110(r1) +/* 801EA7F8 001E7758 E3 81 01 08 */ psq_l f28, 264(r1), 0, qr0 +/* 801EA7FC 001E775C CB 81 01 00 */ lfd f28, 0x100(r1) +/* 801EA800 001E7760 E3 61 00 F8 */ psq_l f27, 248(r1), 0, qr0 +/* 801EA804 001E7764 CB 61 00 F0 */ lfd f27, 0xf0(r1) +/* 801EA808 001E7768 E3 41 00 E8 */ psq_l f26, 232(r1), 0, qr0 +/* 801EA80C 001E776C CB 41 00 E0 */ lfd f26, 0xe0(r1) +/* 801EA810 001E7770 E3 21 00 D8 */ psq_l f25, 216(r1), 0, qr0 +/* 801EA814 001E7774 CB 21 00 D0 */ lfd f25, 0xd0(r1) +/* 801EA818 001E7778 E3 01 00 C8 */ psq_l f24, 200(r1), 0, qr0 +/* 801EA81C 001E777C CB 01 00 C0 */ lfd f24, 0xc0(r1) +/* 801EA820 001E7780 83 E1 00 BC */ lwz r31, 0xbc(r1) +/* 801EA824 001E7784 83 C1 00 B8 */ lwz r30, 0xb8(r1) +/* 801EA828 001E7788 80 01 01 44 */ lwz r0, 0x144(r1) +/* 801EA82C 001E778C 83 A1 00 B4 */ lwz r29, 0xb4(r1) +/* 801EA830 001E7790 7C 08 03 A6 */ mtlr r0 +/* 801EA834 001E7794 38 21 01 40 */ addi r1, r1, 0x140 +/* 801EA838 001E7798 4E 80 00 20 */ blr + +.global sub_801ea83c +sub_801ea83c: +/* 801EA83C 001E779C 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 801EA840 001E77A0 7C 08 02 A6 */ mflr r0 +/* 801EA844 001E77A4 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 801EA848 001E77A8 DB E1 00 C0 */ stfd f31, 0xc0(r1) +/* 801EA84C 001E77AC F3 E1 00 C8 */ psq_st f31, 200(r1), 0, qr0 +/* 801EA850 001E77B0 DB C1 00 B0 */ stfd f30, 0xb0(r1) +/* 801EA854 001E77B4 F3 C1 00 B8 */ psq_st f30, 184(r1), 0, qr0 +/* 801EA858 001E77B8 93 E1 00 AC */ stw r31, 0xac(r1) +/* 801EA85C 001E77BC 93 C1 00 A8 */ stw r30, 0xa8(r1) +/* 801EA860 001E77C0 93 A1 00 A4 */ stw r29, 0xa4(r1) +/* 801EA864 001E77C4 7C 9E 23 78 */ mr r30, r4 +/* 801EA868 001E77C8 3C 80 80 5A */ lis r4, skIdentity4f@ha +/* 801EA86C 001E77CC C0 5E 00 24 */ lfs f2, 0x24(r30) +/* 801EA870 001E77D0 7C 7D 1B 78 */ mr r29, r3 +/* 801EA874 001E77D4 C0 3E 00 14 */ lfs f1, 0x14(r30) +/* 801EA878 001E77D8 38 84 66 70 */ addi r4, r4, skIdentity4f@l +/* 801EA87C 001E77DC C0 1E 00 04 */ lfs f0, 4(r30) +/* 801EA880 001E77E0 7C BF 2B 78 */ mr r31, r5 +/* 801EA884 001E77E4 7F C3 F3 78 */ mr r3, r30 +/* 801EA888 001E77E8 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 801EA88C 001E77EC D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 801EA890 001E77F0 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 801EA894 001E77F4 48 12 83 15 */ bl SetRotation__12CTransform4fFRC12CTransform4f +/* 801EA898 001E77F8 C0 02 AD DC */ lfs f0, lbl_805ACAFC@sda21(r2) +/* 801EA89C 001E77FC 38 61 00 34 */ addi r3, r1, 0x34 +/* 801EA8A0 001E7800 38 81 00 1C */ addi r4, r1, 0x1c +/* 801EA8A4 001E7804 38 A1 00 28 */ addi r5, r1, 0x28 +/* 801EA8A8 001E7808 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801EA8AC 001E780C 38 C1 00 0C */ addi r6, r1, 0xc +/* 801EA8B0 001E7810 C0 5E 00 24 */ lfs f2, 0x24(r30) +/* 801EA8B4 001E7814 C0 3E 00 14 */ lfs f1, 0x14(r30) +/* 801EA8B8 001E7818 C0 1E 00 04 */ lfs f0, 4(r30) +/* 801EA8BC 001E781C D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801EA8C0 001E7820 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 801EA8C4 001E7824 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 801EA8C8 001E7828 48 00 44 E5 */ bl LookAt__F9CVector3f9CVector3ff +/* 801EA8CC 001E782C 7F C5 F3 78 */ mr r5, r30 +/* 801EA8D0 001E7830 38 61 00 64 */ addi r3, r1, 0x64 +/* 801EA8D4 001E7834 38 81 00 34 */ addi r4, r1, 0x34 +/* 801EA8D8 001E7838 48 12 86 59 */ bl MultiplyIgnoreTranslation__12CTransform4fCFRC12CTransform4f +/* 801EA8DC 001E783C 7F C3 F3 78 */ mr r3, r30 +/* 801EA8E0 001E7840 38 81 00 64 */ addi r4, r1, 0x64 +/* 801EA8E4 001E7844 48 12 82 5D */ bl __as__12CTransform4fFRC12CTransform4f +/* 801EA8E8 001E7848 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801EA8EC 001E784C C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) +/* 801EA8F0 001E7850 D0 1E 00 30 */ stfs f0, 0x30(r30) +/* 801EA8F4 001E7854 C0 03 00 04 */ lfs f0, 4(r3) +/* 801EA8F8 001E7858 D0 1E 00 34 */ stfs f0, 0x34(r30) +/* 801EA8FC 001E785C C0 03 00 08 */ lfs f0, 8(r3) +/* 801EA900 001E7860 D0 1E 00 38 */ stfs f0, 0x38(r30) +/* 801EA904 001E7864 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 801EA908 001E7868 48 12 7B D5 */ bl Float__9CRandom16Fv +/* 801EA90C 001E786C C0 02 AE 00 */ lfs f0, lbl_805ACB20@sda21(r2) +/* 801EA910 001E7870 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 801EA914 001E7874 EF E0 00 72 */ fmuls f31, f0, f1 +/* 801EA918 001E7878 48 12 7B C5 */ bl Float__9CRandom16Fv +/* 801EA91C 001E787C C0 1D 01 58 */ lfs f0, 0x158(r29) +/* 801EA920 001E7880 EF C0 00 72 */ fmuls f30, f0, f1 +/* 801EA924 001E7884 FC 20 F8 90 */ fmr f1, f31 +/* 801EA928 001E7888 48 12 A4 1D */ bl FastCosR__5CMathFf +/* 801EA92C 001E788C EC 1E 00 72 */ fmuls f0, f30, f1 +/* 801EA930 001E7890 FC 20 F8 90 */ fmr f1, f31 +/* 801EA934 001E7894 D0 1E 00 30 */ stfs f0, 0x30(r30) +/* 801EA938 001E7898 48 12 A4 B9 */ bl FastSinR__5CMathFf +/* 801EA93C 001E789C EC 1E 00 72 */ fmuls f0, f30, f1 +/* 801EA940 001E78A0 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801EA944 001E78A4 38 C3 66 A0 */ addi r6, r3, skZero3f@l +/* 801EA948 001E78A8 38 E0 00 01 */ li r7, 1 +/* 801EA94C 001E78AC 38 80 00 05 */ li r4, 5 +/* 801EA950 001E78B0 A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) +/* 801EA954 001E78B4 D0 1E 00 34 */ stfs f0, 0x34(r30) +/* 801EA958 001E78B8 38 61 00 08 */ addi r3, r1, 8 +/* 801EA95C 001E78BC 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801EA960 001E78C0 39 00 00 00 */ li r8, 0 +/* 801EA964 001E78C4 88 1E 00 80 */ lbz r0, 0x80(r30) +/* 801EA968 001E78C8 50 E0 2E B4 */ rlwimi r0, r7, 5, 0x1a, 0x1a +/* 801EA96C 001E78CC 38 E0 00 01 */ li r7, 1 +/* 801EA970 001E78D0 98 1E 00 80 */ stb r0, 0x80(r30) +/* 801EA974 001E78D4 A0 1E 00 7E */ lhz r0, 0x7e(r30) +/* 801EA978 001E78D8 50 80 34 B2 */ rlwimi r0, r4, 6, 0x12, 0x19 +/* 801EA97C 001E78DC B0 1E 00 7E */ sth r0, 0x7e(r30) +/* 801EA980 001E78E0 81 5D 00 04 */ lwz r10, 4(r29) +/* 801EA984 001E78E4 C0 5E 00 2C */ lfs f2, 0x2c(r30) +/* 801EA988 001E78E8 C0 3E 00 1C */ lfs f1, 0x1c(r30) +/* 801EA98C 001E78EC C0 1E 00 0C */ lfs f0, 0xc(r30) +/* 801EA990 001E78F0 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801EA994 001E78F4 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 801EA998 001E78F8 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 801EA99C 001E78FC A0 9D 05 5C */ lhz r4, 0x55c(r29) +/* 801EA9A0 001E7900 48 0F F9 11 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +/* 801EA9A4 001E7904 E3 E1 00 C8 */ psq_l f31, 200(r1), 0, qr0 +/* 801EA9A8 001E7908 CB E1 00 C0 */ lfd f31, 0xc0(r1) +/* 801EA9AC 001E790C E3 C1 00 B8 */ psq_l f30, 184(r1), 0, qr0 +/* 801EA9B0 001E7910 CB C1 00 B0 */ lfd f30, 0xb0(r1) +/* 801EA9B4 001E7914 83 E1 00 AC */ lwz r31, 0xac(r1) +/* 801EA9B8 001E7918 83 C1 00 A8 */ lwz r30, 0xa8(r1) +/* 801EA9BC 001E791C 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 801EA9C0 001E7920 83 A1 00 A4 */ lwz r29, 0xa4(r1) +/* 801EA9C4 001E7924 7C 08 03 A6 */ mtlr r0 +/* 801EA9C8 001E7928 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 801EA9CC 001E792C 4E 80 00 20 */ blr + +.global Think__17CWallCrawlerSwarmFfR13CStateManager +Think__17CWallCrawlerSwarmFfR13CStateManager: +/* 801EA9D0 001E7930 94 21 C6 E0 */ stwu r1, -0x3920(r1) +/* 801EA9D4 001E7934 7C 08 02 A6 */ mflr r0 +/* 801EA9D8 001E7938 90 01 39 24 */ stw r0, 0x3924(r1) +/* 801EA9DC 001E793C 38 00 39 18 */ li r0, 0x3918 +/* 801EA9E0 001E7940 DB E1 39 10 */ stfd f31, 0x3910(r1) +/* 801EA9E4 001E7944 13 E1 00 0E */ psq_stx f31, r1, r0, 0, qr0 +/* 801EA9E8 001E7948 38 00 39 08 */ li r0, 0x3908 +/* 801EA9EC 001E794C DB C1 39 00 */ stfd f30, 0x3900(r1) +/* 801EA9F0 001E7950 13 C1 00 0E */ psq_stx f30, r1, r0, 0, qr0 +/* 801EA9F4 001E7954 38 00 38 F8 */ li r0, 0x38f8 +/* 801EA9F8 001E7958 DB A1 38 F0 */ stfd f29, 0x38f0(r1) +/* 801EA9FC 001E795C 13 A1 00 0E */ psq_stx f29, r1, r0, 0, qr0 +/* 801EAA00 001E7960 BE 61 38 BC */ stmw r19, 0x38bc(r1) +/* 801EAA04 001E7964 88 03 00 30 */ lbz r0, 0x30(r3) +/* 801EAA08 001E7968 FF E0 08 90 */ fmr f31, f1 +/* 801EAA0C 001E796C 7C 7E 1B 78 */ mr r30, r3 +/* 801EAA10 001E7970 7C 9F 23 78 */ mr r31, r4 +/* 801EAA14 001E7974 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801EAA18 001E7978 41 82 0E A4 */ beq lbl_801EB8BC +/* 801EAA1C 001E797C 88 1E 05 60 */ lbz r0, 0x560(r30) +/* 801EAA20 001E7980 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801EAA24 001E7984 41 82 00 28 */ beq lbl_801EAA4C +/* 801EAA28 001E7988 7F E3 FB 78 */ mr r3, r31 +/* 801EAA2C 001E798C 4B F2 A4 B1 */ bl GetRenderingModel__10CModelDataFRC13CStateManager +/* 801EAA30 001E7990 80 1E 04 DC */ lwz r0, 0x4dc(r30) +/* 801EAA34 001E7994 7C 65 1B 78 */ mr r5, r3 +/* 801EAA38 001E7998 7C 00 28 00 */ cmpw r0, r5 +/* 801EAA3C 001E799C 41 82 00 10 */ beq lbl_801EAA4C +/* 801EAA40 001E79A0 7F C3 F3 78 */ mr r3, r30 +/* 801EAA44 001E79A4 7F E4 FB 78 */ mr r4, r31 +/* 801EAA48 001E79A8 48 00 28 E1 */ bl AllocateSkinnedModels__17CWallCrawlerSwarmFR13CStateManagerQ210CModelData11EWhichModel +lbl_801EAA4C: +/* 801EAA4C 001E79AC 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 801EAA50 001E79B0 38 60 00 01 */ li r3, 1 +/* 801EAA54 001E79B4 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801EAA58 001E79B8 98 1E 00 E4 */ stb r0, 0xe4(r30) +/* 801EAA5C 001E79BC C0 1E 03 68 */ lfs f0, 0x368(r30) +/* 801EAA60 001E79C0 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 801EAA64 001E79C4 D0 1E 03 68 */ stfs f0, 0x368(r30) +/* 801EAA68 001E79C8 C0 1E 03 6C */ lfs f0, 0x36c(r30) +/* 801EAA6C 001E79CC EC 00 F8 28 */ fsubs f0, f0, f31 +/* 801EAA70 001E79D0 D0 1E 03 6C */ stfs f0, 0x36c(r30) +/* 801EAA74 001E79D4 80 7E 01 00 */ lwz r3, 0x100(r30) +/* 801EAA78 001E79D8 38 03 00 01 */ addi r0, r3, 1 +/* 801EAA7C 001E79DC 90 1E 01 00 */ stw r0, 0x100(r30) +/* 801EAA80 001E79E0 80 BE 00 04 */ lwz r5, 4(r30) +/* 801EAA84 001E79E4 80 9F 08 50 */ lwz r4, 0x850(r31) +/* 801EAA88 001E79E8 54 A3 18 38 */ slwi r3, r5, 3 +/* 801EAA8C 001E79EC 90 A1 00 20 */ stw r5, 0x20(r1) +/* 801EAA90 001E79F0 80 84 00 20 */ lwz r4, 0x20(r4) +/* 801EAA94 001E79F4 38 03 00 04 */ addi r0, r3, 4 +/* 801EAA98 001E79F8 90 A1 00 24 */ stw r5, 0x24(r1) +/* 801EAA9C 001E79FC 7C 64 00 2E */ lwzx r3, r4, r0 +/* 801EAAA0 001E7A00 88 03 00 F0 */ lbz r0, 0xf0(r3) +/* 801EAAA4 001E7A04 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801EAAA8 001E7A08 41 82 00 10 */ beq lbl_801EAAB8 +/* 801EAAAC 001E7A0C 80 63 01 2C */ lwz r3, 0x12c(r3) +/* 801EAAB0 001E7A10 80 03 10 DC */ lwz r0, 0x10dc(r3) +/* 801EAAB4 001E7A14 48 00 00 08 */ b lbl_801EAABC +lbl_801EAAB8: +/* 801EAAB8 001E7A18 38 00 00 00 */ li r0, 0 +lbl_801EAABC: +/* 801EAABC 001E7A1C 2C 00 00 01 */ cmpwi r0, 1 +/* 801EAAC0 001E7A20 41 82 00 40 */ beq lbl_801EAB00 +/* 801EAAC4 001E7A24 C0 3E 01 04 */ lfs f1, 0x104(r30) +/* 801EAAC8 001E7A28 C0 02 AD A0 */ lfs f0, lbl_805ACAC0@sda21(r2) +/* 801EAACC 001E7A2C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801EAAD0 001E7A30 40 81 00 0C */ ble lbl_801EAADC +/* 801EAAD4 001E7A34 EC 01 F8 28 */ fsubs f0, f1, f31 +/* 801EAAD8 001E7A38 D0 1E 01 04 */ stfs f0, 0x104(r30) +lbl_801EAADC: +/* 801EAADC 001E7A3C C0 3E 01 04 */ lfs f1, 0x104(r30) +/* 801EAAE0 001E7A40 C0 02 AD A0 */ lfs f0, lbl_805ACAC0@sda21(r2) +/* 801EAAE4 001E7A44 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801EAAE8 001E7A48 4C 40 13 82 */ cror 2, 0, 2 +/* 801EAAEC 001E7A4C 41 82 0D D0 */ beq lbl_801EB8BC +/* 801EAAF0 001E7A50 80 1E 01 00 */ lwz r0, 0x100(r30) +/* 801EAAF4 001E7A54 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e +/* 801EAAF8 001E7A58 41 82 00 10 */ beq lbl_801EAB08 +/* 801EAAFC 001E7A5C 48 00 0D C0 */ b lbl_801EB8BC +lbl_801EAB00: +/* 801EAB00 001E7A60 C0 02 AE 04 */ lfs f0, lbl_805ACB24@sda21(r2) +/* 801EAB04 001E7A64 D0 1E 01 04 */ stfs f0, 0x104(r30) +lbl_801EAB08: +/* 801EAB08 001E7A68 FC 20 F8 90 */ fmr f1, f31 +/* 801EAB0C 001E7A6C 7F C3 F3 78 */ mr r3, r30 +/* 801EAB10 001E7A70 4B FF CF D5 */ bl UpdateParticles__17CWallCrawlerSwarmFf +/* 801EAB14 001E7A74 7F C3 F3 78 */ mr r3, r30 +/* 801EAB18 001E7A78 7F E4 FB 78 */ mr r4, r31 +/* 801EAB1C 001E7A7C 4B FF D2 D9 */ bl sub_801e7df4 +/* 801EAB20 001E7A80 90 7E 04 2C */ stw r3, 0x42c(r30) +/* 801EAB24 001E7A84 80 7E 04 2C */ lwz r3, 0x42c(r30) +/* 801EAB28 001E7A88 88 1E 00 E7 */ lbz r0, 0xe7(r30) +/* 801EAB2C 001E7A8C 20 83 FF FF */ subfic r4, r3, -1 +/* 801EAB30 001E7A90 38 63 00 01 */ addi r3, r3, 1 +/* 801EAB34 001E7A94 7C 83 1B 78 */ or r3, r4, r3 +/* 801EAB38 001E7A98 50 60 0F FE */ rlwimi r0, r3, 1, 0x1f, 0x1f +/* 801EAB3C 001E7A9C 98 1E 00 E7 */ stb r0, 0xe7(r30) +/* 801EAB40 001E7AA0 80 1E 04 2C */ lwz r0, 0x42c(r30) +/* 801EAB44 001E7AA4 2C 00 FF FF */ cmpwi r0, -1 +/* 801EAB48 001E7AA8 40 82 00 1C */ bne lbl_801EAB64 +/* 801EAB4C 001E7AAC 7F C3 F3 78 */ mr r3, r30 +/* 801EAB50 001E7AB0 7F E6 FB 78 */ mr r6, r31 +/* 801EAB54 001E7AB4 38 80 00 28 */ li r4, 0x28 +/* 801EAB58 001E7AB8 38 A0 00 29 */ li r5, 0x29 +/* 801EAB5C 001E7ABC 4B E6 93 79 */ bl RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager +/* 801EAB60 001E7AC0 48 00 00 B4 */ b lbl_801EAC14 +lbl_801EAB64: +/* 801EAB64 001E7AC4 7F C3 F3 78 */ mr r3, r30 +/* 801EAB68 001E7AC8 7F E6 FB 78 */ mr r6, r31 +/* 801EAB6C 001E7ACC 38 80 00 28 */ li r4, 0x28 +/* 801EAB70 001E7AD0 38 A0 00 29 */ li r5, 0x29 +/* 801EAB74 001E7AD4 4B E6 97 41 */ bl AddMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager +/* 801EAB78 001E7AD8 48 00 00 9C */ b lbl_801EAC14 +lbl_801EAB7C: +/* 801EAB7C 001E7ADC 80 1E 01 0C */ lwz r0, 0x10c(r30) +/* 801EAB80 001E7AE0 38 C0 00 00 */ li r6, 0 +/* 801EAB84 001E7AE4 38 A0 00 00 */ li r5, 0 +/* 801EAB88 001E7AE8 38 80 00 00 */ li r4, 0 +/* 801EAB8C 001E7AEC 7C 09 03 A6 */ mtctr r0 +/* 801EAB90 001E7AF0 2C 00 00 00 */ cmpwi r0, 0 +/* 801EAB94 001E7AF4 40 81 00 5C */ ble lbl_801EABF0 +lbl_801EAB98: +/* 801EAB98 001E7AF8 80 7E 01 14 */ lwz r3, 0x114(r30) +/* 801EAB9C 001E7AFC 38 04 00 80 */ addi r0, r4, 0x80 +/* 801EABA0 001E7B00 7C 03 00 AE */ lbzx r0, r3, r0 +/* 801EABA4 001E7B04 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801EABA8 001E7B08 40 82 00 3C */ bne lbl_801EABE4 +/* 801EABAC 001E7B0C 7F C3 F3 78 */ mr r3, r30 +/* 801EABB0 001E7B10 7F E4 FB 78 */ mr r4, r31 +/* 801EABB4 001E7B14 48 00 24 11 */ bl CreateBoid__17CWallCrawlerSwarmFR13CStateManageri +/* 801EABB8 001E7B18 80 7E 05 50 */ lwz r3, 0x550(r30) +/* 801EABBC 001E7B1C 38 C0 00 01 */ li r6, 1 +/* 801EABC0 001E7B20 C0 22 AD B4 */ lfs f1, lbl_805ACAD4@sda21(r2) +/* 801EABC4 001E7B24 38 03 00 01 */ addi r0, r3, 1 +/* 801EABC8 001E7B28 90 1E 05 50 */ stw r0, 0x550(r30) +/* 801EABCC 001E7B2C C0 1E 03 64 */ lfs f0, 0x364(r30) +/* 801EABD0 001E7B30 C0 5E 03 68 */ lfs f2, 0x368(r30) +/* 801EABD4 001E7B34 EC 01 00 24 */ fdivs f0, f1, f0 +/* 801EABD8 001E7B38 EC 02 00 2A */ fadds f0, f2, f0 +/* 801EABDC 001E7B3C D0 1E 03 68 */ stfs f0, 0x368(r30) +/* 801EABE0 001E7B40 48 00 00 10 */ b lbl_801EABF0 +lbl_801EABE4: +/* 801EABE4 001E7B44 38 84 00 84 */ addi r4, r4, 0x84 +/* 801EABE8 001E7B48 38 A5 00 01 */ addi r5, r5, 1 +/* 801EABEC 001E7B4C 42 00 FF AC */ bdnz lbl_801EAB98 +lbl_801EABF0: +/* 801EABF0 001E7B50 54 C0 06 3F */ clrlwi. r0, r6, 0x18 +/* 801EABF4 001E7B54 40 82 00 24 */ bne lbl_801EAC18 +/* 801EABF8 001E7B58 C0 22 AD B4 */ lfs f1, lbl_805ACAD4@sda21(r2) +/* 801EABFC 001E7B5C C0 1E 03 64 */ lfs f0, 0x364(r30) +/* 801EAC00 001E7B60 C0 5E 03 68 */ lfs f2, 0x368(r30) +/* 801EAC04 001E7B64 EC 01 00 24 */ fdivs f0, f1, f0 +/* 801EAC08 001E7B68 EC 02 00 2A */ fadds f0, f2, f0 +/* 801EAC0C 001E7B6C D0 1E 03 68 */ stfs f0, 0x368(r30) +/* 801EAC10 001E7B70 48 00 00 30 */ b lbl_801EAC40 +lbl_801EAC14: +/* 801EAC14 001E7B74 C3 C2 AD A0 */ lfs f30, lbl_805ACAC0@sda21(r2) +lbl_801EAC18: +/* 801EAC18 001E7B78 80 7E 05 4C */ lwz r3, 0x54c(r30) +/* 801EAC1C 001E7B7C 2C 03 00 00 */ cmpwi r3, 0 +/* 801EAC20 001E7B80 41 82 00 10 */ beq lbl_801EAC30 +/* 801EAC24 001E7B84 80 1E 05 50 */ lwz r0, 0x550(r30) +/* 801EAC28 001E7B88 7C 00 18 00 */ cmpw r0, r3 +/* 801EAC2C 001E7B8C 40 80 00 14 */ bge lbl_801EAC40 +lbl_801EAC30: +/* 801EAC30 001E7B90 C0 1E 03 68 */ lfs f0, 0x368(r30) +/* 801EAC34 001E7B94 FC 00 F0 40 */ fcmpo cr0, f0, f30 +/* 801EAC38 001E7B98 4C 40 13 82 */ cror 2, 0, 2 +/* 801EAC3C 001E7B9C 41 82 FF 40 */ beq lbl_801EAB7C +lbl_801EAC40: +/* 801EAC40 001E7BA0 7F C3 F3 78 */ mr r3, r30 +/* 801EAC44 001E7BA4 4B FF F6 39 */ bl UpdatePartition__17CWallCrawlerSwarmFv +/* 801EAC48 001E7BA8 7F C4 F3 78 */ mr r4, r30 +/* 801EAC4C 001E7BAC 38 61 01 8C */ addi r3, r1, 0x18c +/* 801EAC50 001E7BB0 48 00 22 4D */ bl GetBoundingBox__17CWallCrawlerSwarmCFv +/* 801EAC54 001E7BB4 7F C4 F3 78 */ mr r4, r30 +/* 801EAC58 001E7BB8 38 61 01 74 */ addi r3, r1, 0x174 +/* 801EAC5C 001E7BBC 3A A0 00 00 */ li r21, 0 +/* 801EAC60 001E7BC0 48 00 22 3D */ bl GetBoundingBox__17CWallCrawlerSwarmCFv +/* 801EAC64 001E7BC4 80 61 01 74 */ lwz r3, 0x174(r1) +/* 801EAC68 001E7BC8 3A C1 1D 84 */ addi r22, r1, 0x1d84 +/* 801EAC6C 001E7BCC 80 01 01 78 */ lwz r0, 0x178(r1) +/* 801EAC70 001E7BD0 3A F6 00 04 */ addi r23, r22, 4 +/* 801EAC74 001E7BD4 3B 1E 01 6C */ addi r24, r30, 0x16c +/* 801EAC78 001E7BD8 3B 40 00 00 */ li r26, 0 +/* 801EAC7C 001E7BDC 90 7E 00 E8 */ stw r3, 0xe8(r30) +/* 801EAC80 001E7BE0 90 1E 00 EC */ stw r0, 0xec(r30) +/* 801EAC84 001E7BE4 80 01 01 7C */ lwz r0, 0x17c(r1) +/* 801EAC88 001E7BE8 90 1E 00 F0 */ stw r0, 0xf0(r30) +/* 801EAC8C 001E7BEC 80 61 01 80 */ lwz r3, 0x180(r1) +/* 801EAC90 001E7BF0 80 01 01 84 */ lwz r0, 0x184(r1) +/* 801EAC94 001E7BF4 90 7E 00 F4 */ stw r3, 0xf4(r30) +/* 801EAC98 001E7BF8 90 1E 00 F8 */ stw r0, 0xf8(r30) +/* 801EAC9C 001E7BFC 80 01 01 88 */ lwz r0, 0x188(r1) +/* 801EACA0 001E7C00 90 1E 00 FC */ stw r0, 0xfc(r30) +lbl_801EACA4: +/* 801EACA4 001E7C04 7F 59 D3 78 */ mr r25, r26 +/* 801EACA8 001E7C08 3B 60 00 00 */ li r27, 0 +lbl_801EACAC: +/* 801EACAC 001E7C0C 7F 3C CB 78 */ mr r28, r25 +/* 801EACB0 001E7C10 57 3D 10 3A */ slwi r29, r25, 2 +/* 801EACB4 001E7C14 3A 80 00 00 */ li r20, 0 +lbl_801EACB8: +/* 801EACB8 001E7C18 7E 78 E8 2E */ lwzx r19, r24, r29 +/* 801EACBC 001E7C1C 28 13 00 00 */ cmplwi r19, 0 +/* 801EACC0 001E7C20 41 82 01 E4 */ beq lbl_801EAEA4 +/* 801EACC4 001E7C24 C0 22 AD B0 */ lfs f1, lbl_805ACAD0@sda21(r2) +/* 801EACC8 001E7C28 7F C4 F3 78 */ mr r4, r30 +/* 801EACCC 001E7C2C C0 1E 03 74 */ lfs f0, 0x374(r30) +/* 801EACD0 001E7C30 7F 45 D3 78 */ mr r5, r26 +/* 801EACD4 001E7C34 7F 66 DB 78 */ mr r6, r27 +/* 801EACD8 001E7C38 7E 87 A3 78 */ mr r7, r20 +/* 801EACDC 001E7C3C EC 21 00 2A */ fadds f1, f1, f0 +/* 801EACE0 001E7C40 38 61 01 5C */ addi r3, r1, 0x15c +/* 801EACE4 001E7C44 4B FF F2 DD */ bl BoxForPosition__17CWallCrawlerSwarmCFiiif +/* 801EACE8 001E7C48 38 61 1D 6C */ addi r3, r1, 0x1d6c +/* 801EACEC 001E7C4C 38 81 01 5C */ addi r4, r1, 0x15c +/* 801EACF0 001E7C50 48 0B 8D A1 */ bl __ct__19CAreaCollisionCacheFRC6CAABox +/* 801EACF4 001E7C54 7F E3 FB 78 */ mr r3, r31 +/* 801EACF8 001E7C58 38 81 1D 6C */ addi r4, r1, 0x1d6c +/* 801EACFC 001E7C5C 4B F9 99 C9 */ bl BuildAreaCollisionCache__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCache +/* 801EAD00 001E7C60 48 00 01 04 */ b lbl_801EAE04 +lbl_801EAD04: +/* 801EAD04 001E7C64 88 13 00 80 */ lbz r0, 0x80(r19) +/* 801EAD08 001E7C68 3A B5 00 01 */ addi r21, r21, 1 +/* 801EAD0C 001E7C6C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801EAD10 001E7C70 41 82 00 9C */ beq lbl_801EADAC +/* 801EAD14 001E7C74 80 1E 05 58 */ lwz r0, 0x558(r30) +/* 801EAD18 001E7C78 2C 00 00 01 */ cmpwi r0, 1 +/* 801EAD1C 001E7C7C 40 82 00 6C */ bne lbl_801EAD88 +/* 801EAD20 001E7C80 C3 BE 03 7C */ lfs f29, 0x37c(r30) +/* 801EAD24 001E7C84 38 7E 00 E8 */ addi r3, r30, 0xe8 +/* 801EAD28 001E7C88 C0 53 00 1C */ lfs f2, 0x1c(r19) +/* 801EAD2C 001E7C8C 38 81 00 CC */ addi r4, r1, 0xcc +/* 801EAD30 001E7C90 C0 33 00 2C */ lfs f1, 0x2c(r19) +/* 801EAD34 001E7C94 C0 13 00 0C */ lfs f0, 0xc(r19) +/* 801EAD38 001E7C98 EC 42 E8 2A */ fadds f2, f2, f29 +/* 801EAD3C 001E7C9C EC 21 E8 2A */ fadds f1, f1, f29 +/* 801EAD40 001E7CA0 EC 00 E8 2A */ fadds f0, f0, f29 +/* 801EAD44 001E7CA4 D0 41 00 D0 */ stfs f2, 0xd0(r1) +/* 801EAD48 001E7CA8 D0 01 00 CC */ stfs f0, 0xcc(r1) +/* 801EAD4C 001E7CAC D0 21 00 D4 */ stfs f1, 0xd4(r1) +/* 801EAD50 001E7CB0 48 14 CD B9 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 801EAD54 001E7CB4 C0 53 00 1C */ lfs f2, 0x1c(r19) +/* 801EAD58 001E7CB8 38 7E 00 E8 */ addi r3, r30, 0xe8 +/* 801EAD5C 001E7CBC C0 33 00 2C */ lfs f1, 0x2c(r19) +/* 801EAD60 001E7CC0 38 81 00 C0 */ addi r4, r1, 0xc0 +/* 801EAD64 001E7CC4 C0 13 00 0C */ lfs f0, 0xc(r19) +/* 801EAD68 001E7CC8 EC 42 E8 28 */ fsubs f2, f2, f29 +/* 801EAD6C 001E7CCC EC 21 E8 28 */ fsubs f1, f1, f29 +/* 801EAD70 001E7CD0 EC 00 E8 28 */ fsubs f0, f0, f29 +/* 801EAD74 001E7CD4 D0 41 00 C4 */ stfs f2, 0xc4(r1) +/* 801EAD78 001E7CD8 D0 01 00 C0 */ stfs f0, 0xc0(r1) +/* 801EAD7C 001E7CDC D0 21 00 C8 */ stfs f1, 0xc8(r1) +/* 801EAD80 001E7CE0 48 14 CD 89 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 801EAD84 001E7CE4 48 00 00 28 */ b lbl_801EADAC +lbl_801EAD88: +/* 801EAD88 001E7CE8 C0 53 00 2C */ lfs f2, 0x2c(r19) +/* 801EAD8C 001E7CEC 38 7E 00 E8 */ addi r3, r30, 0xe8 +/* 801EAD90 001E7CF0 C0 33 00 1C */ lfs f1, 0x1c(r19) +/* 801EAD94 001E7CF4 38 81 00 B4 */ addi r4, r1, 0xb4 +/* 801EAD98 001E7CF8 C0 13 00 0C */ lfs f0, 0xc(r19) +/* 801EAD9C 001E7CFC D0 01 00 B4 */ stfs f0, 0xb4(r1) +/* 801EADA0 001E7D00 D0 21 00 B8 */ stfs f1, 0xb8(r1) +/* 801EADA4 001E7D04 D0 41 00 BC */ stfs f2, 0xbc(r1) +/* 801EADA8 001E7D08 48 14 CD 61 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +lbl_801EADAC: +/* 801EADAC 001E7D0C 80 7E 01 00 */ lwz r3, 0x100(r30) +/* 801EADB0 001E7D10 56 A0 07 FE */ clrlwi r0, r21, 0x1f +/* 801EADB4 001E7D14 54 63 07 FE */ clrlwi r3, r3, 0x1f +/* 801EADB8 001E7D18 7C 03 00 00 */ cmpw r3, r0 +/* 801EADBC 001E7D1C 40 82 00 20 */ bne lbl_801EADDC +/* 801EADC0 001E7D20 88 13 00 80 */ lbz r0, 0x80(r19) +/* 801EADC4 001E7D24 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801EADC8 001E7D28 41 82 00 14 */ beq lbl_801EADDC +/* 801EADCC 001E7D2C C0 33 00 48 */ lfs f1, 0x48(r19) +/* 801EADD0 001E7D30 C0 02 AD A8 */ lfs f0, lbl_805ACAC8@sda21(r2) +/* 801EADD4 001E7D34 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801EADD8 001E7D38 41 80 00 10 */ blt lbl_801EADE8 +lbl_801EADDC: +/* 801EADDC 001E7D3C 88 13 00 80 */ lbz r0, 0x80(r19) +/* 801EADE0 001E7D40 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801EADE4 001E7D44 41 82 00 1C */ beq lbl_801EAE00 +lbl_801EADE8: +/* 801EADE8 001E7D48 FC 20 F8 90 */ fmr f1, f31 +/* 801EADEC 001E7D4C 7F C3 F3 78 */ mr r3, r30 +/* 801EADF0 001E7D50 7F E5 FB 78 */ mr r5, r31 +/* 801EADF4 001E7D54 7E 66 9B 78 */ mr r6, r19 +/* 801EADF8 001E7D58 38 81 1D 6C */ addi r4, r1, 0x1d6c +/* 801EADFC 001E7D5C 48 00 0D 8D */ bl UpdateBoid__17CWallCrawlerSwarmFR19CAreaCollisionCacheR13CStateManagerfRQ217CWallCrawlerSwarm5CBoid +lbl_801EAE00: +/* 801EAE00 001E7D60 82 73 00 44 */ lwz r19, 0x44(r19) +lbl_801EAE04: +/* 801EAE04 001E7D64 28 13 00 00 */ cmplwi r19, 0 +/* 801EAE08 001E7D68 40 82 FE FC */ bne lbl_801EAD04 +/* 801EAE0C 001E7D6C 28 16 00 00 */ cmplwi r22, 0 +/* 801EAE10 001E7D70 41 82 00 94 */ beq lbl_801EAEA4 +/* 801EAE14 001E7D74 7E E6 BB 78 */ mr r6, r23 +/* 801EAE18 001E7D78 38 60 00 00 */ li r3, 0 +/* 801EAE1C 001E7D7C 48 00 00 74 */ b lbl_801EAE90 +lbl_801EAE20: +/* 801EAE20 001E7D80 28 06 00 00 */ cmplwi r6, 0 +/* 801EAE24 001E7D84 41 82 00 64 */ beq lbl_801EAE88 +/* 801EAE28 001E7D88 34 06 00 04 */ addic. r0, r6, 4 +/* 801EAE2C 001E7D8C 41 82 00 5C */ beq lbl_801EAE88 +/* 801EAE30 001E7D90 80 E6 00 04 */ lwz r7, 4(r6) +/* 801EAE34 001E7D94 38 80 00 00 */ li r4, 0 +/* 801EAE38 001E7D98 2C 07 00 00 */ cmpwi r7, 0 +/* 801EAE3C 001E7D9C 40 81 00 44 */ ble lbl_801EAE80 +/* 801EAE40 001E7DA0 2C 07 00 08 */ cmpwi r7, 8 +/* 801EAE44 001E7DA4 38 A7 FF F8 */ addi r5, r7, -8 +/* 801EAE48 001E7DA8 40 81 00 20 */ ble lbl_801EAE68 +/* 801EAE4C 001E7DAC 38 05 00 07 */ addi r0, r5, 7 +/* 801EAE50 001E7DB0 54 00 E8 FE */ srwi r0, r0, 3 +/* 801EAE54 001E7DB4 7C 09 03 A6 */ mtctr r0 +/* 801EAE58 001E7DB8 2C 05 00 00 */ cmpwi r5, 0 +/* 801EAE5C 001E7DBC 40 81 00 0C */ ble lbl_801EAE68 +lbl_801EAE60: +/* 801EAE60 001E7DC0 38 84 00 08 */ addi r4, r4, 8 +/* 801EAE64 001E7DC4 42 00 FF FC */ bdnz lbl_801EAE60 +lbl_801EAE68: +/* 801EAE68 001E7DC8 7C 04 38 50 */ subf r0, r4, r7 +/* 801EAE6C 001E7DCC 7C 09 03 A6 */ mtctr r0 +/* 801EAE70 001E7DD0 7C 04 38 00 */ cmpw r4, r7 +/* 801EAE74 001E7DD4 40 80 00 0C */ bge lbl_801EAE80 +lbl_801EAE78: +/* 801EAE78 001E7DD8 38 84 00 01 */ addi r4, r4, 1 +/* 801EAE7C 001E7DDC 42 00 FF FC */ bdnz lbl_801EAE78 +lbl_801EAE80: +/* 801EAE80 001E7DE0 38 00 00 00 */ li r0, 0 +/* 801EAE84 001E7DE4 90 06 00 04 */ stw r0, 4(r6) +lbl_801EAE88: +/* 801EAE88 001E7DE8 38 C6 09 0C */ addi r6, r6, 0x90c +/* 801EAE8C 001E7DEC 38 63 00 01 */ addi r3, r3, 1 +lbl_801EAE90: +/* 801EAE90 001E7DF0 80 16 00 00 */ lwz r0, 0(r22) +/* 801EAE94 001E7DF4 7C 03 00 00 */ cmpw r3, r0 +/* 801EAE98 001E7DF8 41 80 FF 88 */ blt lbl_801EAE20 +/* 801EAE9C 001E7DFC 38 00 00 00 */ li r0, 0 +/* 801EAEA0 001E7E00 90 16 00 00 */ stw r0, 0(r22) +lbl_801EAEA4: +/* 801EAEA4 001E7E04 3A 94 00 01 */ addi r20, r20, 1 +/* 801EAEA8 001E7E08 3B BD 00 64 */ addi r29, r29, 0x64 +/* 801EAEAC 001E7E0C 2C 14 00 05 */ cmpwi r20, 5 +/* 801EAEB0 001E7E10 3B 9C 00 19 */ addi r28, r28, 0x19 +/* 801EAEB4 001E7E14 41 80 FE 04 */ blt lbl_801EACB8 +/* 801EAEB8 001E7E18 3B 7B 00 01 */ addi r27, r27, 1 +/* 801EAEBC 001E7E1C 3B 39 00 05 */ addi r25, r25, 5 +/* 801EAEC0 001E7E20 2C 1B 00 05 */ cmpwi r27, 5 +/* 801EAEC4 001E7E24 41 80 FD E8 */ blt lbl_801EACAC +/* 801EAEC8 001E7E28 3B 5A 00 01 */ addi r26, r26, 1 +/* 801EAECC 001E7E2C 2C 1A 00 05 */ cmpwi r26, 5 +/* 801EAED0 001E7E30 41 80 FD D4 */ blt lbl_801EACA4 +/* 801EAED4 001E7E34 3A C1 02 40 */ addi r22, r1, 0x240 +/* 801EAED8 001E7E38 82 7E 03 60 */ lwz r19, 0x360(r30) +/* 801EAEDC 001E7E3C 3A F6 00 04 */ addi r23, r22, 4 +/* 801EAEE0 001E7E40 48 00 01 A0 */ b lbl_801EB080 +lbl_801EAEE4: +/* 801EAEE4 001E7E44 88 13 00 80 */ lbz r0, 0x80(r19) +/* 801EAEE8 001E7E48 3A B5 00 01 */ addi r21, r21, 1 +/* 801EAEEC 001E7E4C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801EAEF0 001E7E50 41 82 00 28 */ beq lbl_801EAF18 +/* 801EAEF4 001E7E54 C0 53 00 2C */ lfs f2, 0x2c(r19) +/* 801EAEF8 001E7E58 38 7E 00 E8 */ addi r3, r30, 0xe8 +/* 801EAEFC 001E7E5C C0 33 00 1C */ lfs f1, 0x1c(r19) +/* 801EAF00 001E7E60 38 81 00 A8 */ addi r4, r1, 0xa8 +/* 801EAF04 001E7E64 C0 13 00 0C */ lfs f0, 0xc(r19) +/* 801EAF08 001E7E68 D0 01 00 A8 */ stfs f0, 0xa8(r1) +/* 801EAF0C 001E7E6C D0 21 00 AC */ stfs f1, 0xac(r1) +/* 801EAF10 001E7E70 D0 41 00 B0 */ stfs f2, 0xb0(r1) +/* 801EAF14 001E7E74 48 14 CB F5 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +lbl_801EAF18: +/* 801EAF18 001E7E78 80 7E 01 00 */ lwz r3, 0x100(r30) +/* 801EAF1C 001E7E7C 56 A0 07 FE */ clrlwi r0, r21, 0x1f +/* 801EAF20 001E7E80 54 63 07 FE */ clrlwi r3, r3, 0x1f +/* 801EAF24 001E7E84 7C 03 00 00 */ cmpw r3, r0 +/* 801EAF28 001E7E88 40 82 00 20 */ bne lbl_801EAF48 +/* 801EAF2C 001E7E8C 88 13 00 80 */ lbz r0, 0x80(r19) +/* 801EAF30 001E7E90 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801EAF34 001E7E94 41 82 00 14 */ beq lbl_801EAF48 +/* 801EAF38 001E7E98 C0 33 00 48 */ lfs f1, 0x48(r19) +/* 801EAF3C 001E7E9C C0 02 AD A8 */ lfs f0, lbl_805ACAC8@sda21(r2) +/* 801EAF40 001E7EA0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801EAF44 001E7EA4 41 80 00 10 */ blt lbl_801EAF54 +lbl_801EAF48: +/* 801EAF48 001E7EA8 88 13 00 80 */ lbz r0, 0x80(r19) +/* 801EAF4C 001E7EAC 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801EAF50 001E7EB0 41 82 01 2C */ beq lbl_801EB07C +lbl_801EAF54: +/* 801EAF54 001E7EB4 C0 22 AD B0 */ lfs f1, lbl_805ACAD0@sda21(r2) +/* 801EAF58 001E7EB8 38 61 01 DC */ addi r3, r1, 0x1dc +/* 801EAF5C 001E7EBC C0 1E 03 74 */ lfs f0, 0x374(r30) +/* 801EAF60 001E7EC0 38 81 00 9C */ addi r4, r1, 0x9c +/* 801EAF64 001E7EC4 C0 82 AD D0 */ lfs f4, lbl_805ACAF0@sda21(r2) +/* 801EAF68 001E7EC8 38 A1 00 90 */ addi r5, r1, 0x90 +/* 801EAF6C 001E7ECC EC 21 00 2A */ fadds f1, f1, f0 +/* 801EAF70 001E7ED0 C0 73 00 1C */ lfs f3, 0x1c(r19) +/* 801EAF74 001E7ED4 C0 53 00 2C */ lfs f2, 0x2c(r19) +/* 801EAF78 001E7ED8 C0 13 00 0C */ lfs f0, 0xc(r19) +/* 801EAF7C 001E7EDC EC C4 08 2A */ fadds f6, f4, f1 +/* 801EAF80 001E7EE0 EC A3 30 2A */ fadds f5, f3, f6 +/* 801EAF84 001E7EE4 EC 82 30 2A */ fadds f4, f2, f6 +/* 801EAF88 001E7EE8 EC 20 30 2A */ fadds f1, f0, f6 +/* 801EAF8C 001E7EEC EC 63 30 28 */ fsubs f3, f3, f6 +/* 801EAF90 001E7EF0 D0 A1 00 94 */ stfs f5, 0x94(r1) +/* 801EAF94 001E7EF4 EC 42 30 28 */ fsubs f2, f2, f6 +/* 801EAF98 001E7EF8 EC 00 30 28 */ fsubs f0, f0, f6 +/* 801EAF9C 001E7EFC D0 21 00 90 */ stfs f1, 0x90(r1) +/* 801EAFA0 001E7F00 D0 81 00 98 */ stfs f4, 0x98(r1) +/* 801EAFA4 001E7F04 D0 01 00 9C */ stfs f0, 0x9c(r1) +/* 801EAFA8 001E7F08 D0 61 00 A0 */ stfs f3, 0xa0(r1) +/* 801EAFAC 001E7F0C D0 41 00 A4 */ stfs f2, 0xa4(r1) +/* 801EAFB0 001E7F10 48 14 D5 59 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801EAFB4 001E7F14 38 61 02 28 */ addi r3, r1, 0x228 +/* 801EAFB8 001E7F18 38 81 01 DC */ addi r4, r1, 0x1dc +/* 801EAFBC 001E7F1C 48 0B 8A D5 */ bl __ct__19CAreaCollisionCacheFRC6CAABox +/* 801EAFC0 001E7F20 7F E3 FB 78 */ mr r3, r31 +/* 801EAFC4 001E7F24 38 81 02 28 */ addi r4, r1, 0x228 +/* 801EAFC8 001E7F28 4B F9 96 FD */ bl BuildAreaCollisionCache__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCache +/* 801EAFCC 001E7F2C FC 20 F8 90 */ fmr f1, f31 +/* 801EAFD0 001E7F30 7F C3 F3 78 */ mr r3, r30 +/* 801EAFD4 001E7F34 7F E5 FB 78 */ mr r5, r31 +/* 801EAFD8 001E7F38 7E 66 9B 78 */ mr r6, r19 +/* 801EAFDC 001E7F3C 38 81 02 28 */ addi r4, r1, 0x228 +/* 801EAFE0 001E7F40 48 00 0B A9 */ bl UpdateBoid__17CWallCrawlerSwarmFR19CAreaCollisionCacheR13CStateManagerfRQ217CWallCrawlerSwarm5CBoid +/* 801EAFE4 001E7F44 28 16 00 00 */ cmplwi r22, 0 +/* 801EAFE8 001E7F48 41 82 00 94 */ beq lbl_801EB07C +/* 801EAFEC 001E7F4C 7E E6 BB 78 */ mr r6, r23 +/* 801EAFF0 001E7F50 38 60 00 00 */ li r3, 0 +/* 801EAFF4 001E7F54 48 00 00 74 */ b lbl_801EB068 +lbl_801EAFF8: +/* 801EAFF8 001E7F58 28 06 00 00 */ cmplwi r6, 0 +/* 801EAFFC 001E7F5C 41 82 00 64 */ beq lbl_801EB060 +/* 801EB000 001E7F60 34 06 00 04 */ addic. r0, r6, 4 +/* 801EB004 001E7F64 41 82 00 5C */ beq lbl_801EB060 +/* 801EB008 001E7F68 80 E6 00 04 */ lwz r7, 4(r6) +/* 801EB00C 001E7F6C 38 80 00 00 */ li r4, 0 +/* 801EB010 001E7F70 2C 07 00 00 */ cmpwi r7, 0 +/* 801EB014 001E7F74 40 81 00 44 */ ble lbl_801EB058 +/* 801EB018 001E7F78 2C 07 00 08 */ cmpwi r7, 8 +/* 801EB01C 001E7F7C 38 A7 FF F8 */ addi r5, r7, -8 +/* 801EB020 001E7F80 40 81 00 20 */ ble lbl_801EB040 +/* 801EB024 001E7F84 38 05 00 07 */ addi r0, r5, 7 +/* 801EB028 001E7F88 54 00 E8 FE */ srwi r0, r0, 3 +/* 801EB02C 001E7F8C 7C 09 03 A6 */ mtctr r0 +/* 801EB030 001E7F90 2C 05 00 00 */ cmpwi r5, 0 +/* 801EB034 001E7F94 40 81 00 0C */ ble lbl_801EB040 +lbl_801EB038: +/* 801EB038 001E7F98 38 84 00 08 */ addi r4, r4, 8 +/* 801EB03C 001E7F9C 42 00 FF FC */ bdnz lbl_801EB038 +lbl_801EB040: +/* 801EB040 001E7FA0 7C 04 38 50 */ subf r0, r4, r7 +/* 801EB044 001E7FA4 7C 09 03 A6 */ mtctr r0 +/* 801EB048 001E7FA8 7C 04 38 00 */ cmpw r4, r7 +/* 801EB04C 001E7FAC 40 80 00 0C */ bge lbl_801EB058 +lbl_801EB050: +/* 801EB050 001E7FB0 38 84 00 01 */ addi r4, r4, 1 +/* 801EB054 001E7FB4 42 00 FF FC */ bdnz lbl_801EB050 +lbl_801EB058: +/* 801EB058 001E7FB8 38 00 00 00 */ li r0, 0 +/* 801EB05C 001E7FBC 90 06 00 04 */ stw r0, 4(r6) +lbl_801EB060: +/* 801EB060 001E7FC0 38 C6 09 0C */ addi r6, r6, 0x90c +/* 801EB064 001E7FC4 38 63 00 01 */ addi r3, r3, 1 +lbl_801EB068: +/* 801EB068 001E7FC8 80 01 02 40 */ lwz r0, 0x240(r1) +/* 801EB06C 001E7FCC 7C 03 00 00 */ cmpw r3, r0 +/* 801EB070 001E7FD0 41 80 FF 88 */ blt lbl_801EAFF8 +/* 801EB074 001E7FD4 38 00 00 00 */ li r0, 0 +/* 801EB078 001E7FD8 90 01 02 40 */ stw r0, 0x240(r1) +lbl_801EB07C: +/* 801EB07C 001E7FDC 82 73 00 44 */ lwz r19, 0x44(r19) +lbl_801EB080: +/* 801EB080 001E7FE0 28 13 00 00 */ cmplwi r19, 0 +/* 801EB084 001E7FE4 40 82 FE 60 */ bne lbl_801EAEE4 +/* 801EB088 001E7FE8 3A DE 04 B4 */ addi r22, r30, 0x4b4 +/* 801EB08C 001E7FEC C0 3E 01 60 */ lfs f1, 0x160(r30) +/* 801EB090 001E7FF0 80 7E 04 D4 */ lwz r3, 0x4d4(r30) +/* 801EB094 001E7FF4 80 63 00 00 */ lwz r3, 0(r3) +/* 801EB098 001E7FF8 80 63 00 10 */ lwz r3, 0x10(r3) +/* 801EB09C 001E7FFC 4B E4 03 CD */ bl SetPlaybackRate__9CAnimDataFf +/* 801EB0A0 001E8000 80 1E 00 04 */ lwz r0, 4(r30) +/* 801EB0A4 001E8004 FC 20 F8 90 */ fmr f1, f31 +/* 801EB0A8 001E8008 7F E5 FB 78 */ mr r5, r31 +/* 801EB0AC 001E800C 38 61 01 40 */ addi r3, r1, 0x140 +/* 801EB0B0 001E8010 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801EB0B4 001E8014 38 C1 00 1C */ addi r6, r1, 0x1c +/* 801EB0B8 001E8018 38 E0 00 01 */ li r7, 1 +/* 801EB0BC 001E801C 80 96 00 20 */ lwz r4, 0x20(r22) +/* 801EB0C0 001E8020 90 01 00 18 */ stw r0, 0x18(r1) +/* 801EB0C4 001E8024 80 84 00 00 */ lwz r4, 0(r4) +/* 801EB0C8 001E8028 4B F2 AA 6D */ bl AdvanceAnimation__10CModelDataFfR13CStateManager7TAreaIdb +/* 801EB0CC 001E802C 3C C0 80 5A */ lis r6, skZero3f@ha +/* 801EB0D0 001E8030 C4 06 66 A0 */ lfsu f0, skZero3f@l(r6) +/* 801EB0D4 001E8034 3C 60 80 5A */ lis r3, lbl_805A6660@ha +/* 801EB0D8 001E8038 80 A2 D7 48 */ lwz r5, lbl_805AF468@sda21(r2) +/* 801EB0DC 001E803C 38 83 66 60 */ addi r4, r3, lbl_805A6660@l +/* 801EB0E0 001E8040 C0 26 00 04 */ lfs f1, 4(r6) +/* 801EB0E4 001E8044 C0 64 00 00 */ lfs f3, 0(r4) +/* 801EB0E8 001E8048 39 00 00 00 */ li r8, 0 +/* 801EB0EC 001E804C C0 46 00 08 */ lfs f2, 8(r6) +/* 801EB0F0 001E8050 38 60 00 00 */ li r3, 0 +/* 801EB0F4 001E8054 C0 84 00 04 */ lfs f4, 4(r4) +/* 801EB0F8 001E8058 39 20 00 00 */ li r9, 0 +/* 801EB0FC 001E805C C0 A4 00 08 */ lfs f5, 8(r4) +/* 801EB100 001E8060 C0 C4 00 0C */ lfs f6, 0xc(r4) +/* 801EB104 001E8064 80 82 D7 4C */ lwz r4, lbl_805AF46C@sda21(r2) +/* 801EB108 001E8068 D0 01 01 C0 */ stfs f0, 0x1c0(r1) +/* 801EB10C 001E806C D0 21 01 C4 */ stfs f1, 0x1c4(r1) +/* 801EB110 001E8070 D0 41 01 C8 */ stfs f2, 0x1c8(r1) +/* 801EB114 001E8074 D0 61 01 CC */ stfs f3, 0x1cc(r1) +/* 801EB118 001E8078 D0 81 01 D0 */ stfs f4, 0x1d0(r1) +/* 801EB11C 001E807C D0 A1 01 D4 */ stfs f5, 0x1d4(r1) +/* 801EB120 001E8080 D0 C1 01 D8 */ stfs f6, 0x1d8(r1) +/* 801EB124 001E8084 D0 01 01 A4 */ stfs f0, 0x1a4(r1) +/* 801EB128 001E8088 D0 21 01 A8 */ stfs f1, 0x1a8(r1) +/* 801EB12C 001E808C D0 41 01 AC */ stfs f2, 0x1ac(r1) +/* 801EB130 001E8090 D0 61 01 B0 */ stfs f3, 0x1b0(r1) +/* 801EB134 001E8094 D0 81 01 B4 */ stfs f4, 0x1b4(r1) +/* 801EB138 001E8098 D0 A1 01 B8 */ stfs f5, 0x1b8(r1) +/* 801EB13C 001E809C D0 C1 01 BC */ stfs f6, 0x1bc(r1) +/* 801EB140 001E80A0 80 1E 01 0C */ lwz r0, 0x10c(r30) +/* 801EB144 001E80A4 80 FE 01 14 */ lwz r7, 0x114(r30) +/* 801EB148 001E80A8 1C 00 00 84 */ mulli r0, r0, 0x84 +/* 801EB14C 001E80AC 90 A1 00 2C */ stw r5, 0x2c(r1) +/* 801EB150 001E80B0 90 81 00 28 */ stw r4, 0x28(r1) +/* 801EB154 001E80B4 7C C7 02 14 */ add r6, r7, r0 +/* 801EB158 001E80B8 48 00 00 5C */ b lbl_801EB1B4 +lbl_801EB15C: +/* 801EB15C 001E80BC 88 87 00 80 */ lbz r4, 0x80(r7) +/* 801EB160 001E80C0 54 80 CF FF */ rlwinm. r0, r4, 0x19, 0x1f, 0x1f +/* 801EB164 001E80C4 41 82 00 48 */ beq lbl_801EB1AC +/* 801EB168 001E80C8 54 80 DF FF */ rlwinm. r0, r4, 0x1b, 0x1f, 0x1f +/* 801EB16C 001E80CC 40 82 00 40 */ bne lbl_801EB1AC +/* 801EB170 001E80D0 54 80 E7 FF */ rlwinm. r0, r4, 0x1c, 0x1f, 0x1f +/* 801EB174 001E80D4 40 82 00 0C */ bne lbl_801EB180 +/* 801EB178 001E80D8 54 80 EF FF */ rlwinm. r0, r4, 0x1d, 0x1f, 0x1f +/* 801EB17C 001E80DC 41 82 00 1C */ beq lbl_801EB198 +lbl_801EB180: +/* 801EB180 001E80E0 55 20 07 BE */ clrlwi r0, r9, 0x1e +/* 801EB184 001E80E4 38 81 00 28 */ addi r4, r1, 0x28 +/* 801EB188 001E80E8 38 A0 00 01 */ li r5, 1 +/* 801EB18C 001E80EC 38 63 00 01 */ addi r3, r3, 1 +/* 801EB190 001E80F0 7C A4 01 AE */ stbx r5, r4, r0 +/* 801EB194 001E80F4 48 00 00 18 */ b lbl_801EB1AC +lbl_801EB198: +/* 801EB198 001E80F8 55 20 07 BE */ clrlwi r0, r9, 0x1e +/* 801EB19C 001E80FC 38 81 00 2C */ addi r4, r1, 0x2c +/* 801EB1A0 001E8100 38 A0 00 01 */ li r5, 1 +/* 801EB1A4 001E8104 39 08 00 01 */ addi r8, r8, 1 +/* 801EB1A8 001E8108 7C A4 01 AE */ stbx r5, r4, r0 +lbl_801EB1AC: +/* 801EB1AC 001E810C 38 E7 00 84 */ addi r7, r7, 0x84 +/* 801EB1B0 001E8110 39 29 00 01 */ addi r9, r9, 1 +lbl_801EB1B4: +/* 801EB1B4 001E8114 7C 07 30 40 */ cmplw r7, r6 +/* 801EB1B8 001E8118 40 82 FF A4 */ bne lbl_801EB15C +/* 801EB1BC 001E811C 1F 68 00 2C */ mulli r27, r8, 0x2c +/* 801EB1C0 001E8120 7E D8 B3 78 */ mr r24, r22 +/* 801EB1C4 001E8124 3B 21 00 2C */ addi r25, r1, 0x2c +/* 801EB1C8 001E8128 3B 41 00 28 */ addi r26, r1, 0x28 +/* 801EB1CC 001E812C 1F 83 00 2C */ mulli r28, r3, 0x2c +/* 801EB1D0 001E8130 3A 60 00 00 */ li r19, 0 +lbl_801EB1D4: +/* 801EB1D4 001E8134 80 78 00 00 */ lwz r3, 0(r24) +/* 801EB1D8 001E8138 C0 3E 01 60 */ lfs f1, 0x160(r30) +/* 801EB1DC 001E813C 80 63 00 00 */ lwz r3, 0(r3) +/* 801EB1E0 001E8140 80 63 00 10 */ lwz r3, 0x10(r3) +/* 801EB1E4 001E8144 4B E4 02 85 */ bl SetPlaybackRate__9CAnimDataFf +/* 801EB1E8 001E8148 80 1E 00 04 */ lwz r0, 4(r30) +/* 801EB1EC 001E814C FC 20 F8 90 */ fmr f1, f31 +/* 801EB1F0 001E8150 7F E5 FB 78 */ mr r5, r31 +/* 801EB1F4 001E8154 38 61 01 24 */ addi r3, r1, 0x124 +/* 801EB1F8 001E8158 90 01 00 14 */ stw r0, 0x14(r1) +/* 801EB1FC 001E815C 38 C1 00 14 */ addi r6, r1, 0x14 +/* 801EB200 001E8160 38 E0 00 01 */ li r7, 1 +/* 801EB204 001E8164 80 98 00 00 */ lwz r4, 0(r24) +/* 801EB208 001E8168 90 01 00 10 */ stw r0, 0x10(r1) +/* 801EB20C 001E816C 80 84 00 00 */ lwz r4, 0(r4) +/* 801EB210 001E8170 4B F2 A9 25 */ bl AdvanceAnimation__10CModelDataFfR13CStateManager7TAreaIdb +/* 801EB214 001E8174 81 01 01 24 */ lwz r8, 0x124(r1) +/* 801EB218 001E8178 38 13 00 04 */ addi r0, r19, 4 +/* 801EB21C 001E817C 80 E1 01 28 */ lwz r7, 0x128(r1) +/* 801EB220 001E8180 54 1D 10 3A */ slwi r29, r0, 2 +/* 801EB224 001E8184 80 C1 01 2C */ lwz r6, 0x12c(r1) +/* 801EB228 001E8188 80 A1 01 30 */ lwz r5, 0x130(r1) +/* 801EB22C 001E818C 80 81 01 34 */ lwz r4, 0x134(r1) +/* 801EB230 001E8190 80 61 01 38 */ lwz r3, 0x138(r1) +/* 801EB234 001E8194 80 01 01 3C */ lwz r0, 0x13c(r1) +/* 801EB238 001E8198 91 01 01 C0 */ stw r8, 0x1c0(r1) +/* 801EB23C 001E819C 90 E1 01 C4 */ stw r7, 0x1c4(r1) +/* 801EB240 001E81A0 90 C1 01 C8 */ stw r6, 0x1c8(r1) +/* 801EB244 001E81A4 90 A1 01 CC */ stw r5, 0x1cc(r1) +/* 801EB248 001E81A8 90 81 01 D0 */ stw r4, 0x1d0(r1) +/* 801EB24C 001E81AC 90 61 01 D4 */ stw r3, 0x1d4(r1) +/* 801EB250 001E81B0 90 01 01 D8 */ stw r0, 0x1d8(r1) +/* 801EB254 001E81B4 7C 76 E8 2E */ lwzx r3, r22, r29 +/* 801EB258 001E81B8 C0 3E 01 60 */ lfs f1, 0x160(r30) +/* 801EB25C 001E81BC 80 63 00 00 */ lwz r3, 0(r3) +/* 801EB260 001E81C0 80 63 00 10 */ lwz r3, 0x10(r3) +/* 801EB264 001E81C4 4B E4 02 05 */ bl SetPlaybackRate__9CAnimDataFf +/* 801EB268 001E81C8 80 1E 00 04 */ lwz r0, 4(r30) +/* 801EB26C 001E81CC FC 20 F8 90 */ fmr f1, f31 +/* 801EB270 001E81D0 7F E5 FB 78 */ mr r5, r31 +/* 801EB274 001E81D4 38 61 01 08 */ addi r3, r1, 0x108 +/* 801EB278 001E81D8 90 01 00 0C */ stw r0, 0xc(r1) +/* 801EB27C 001E81DC 38 C1 00 0C */ addi r6, r1, 0xc +/* 801EB280 001E81E0 38 E0 00 01 */ li r7, 1 +/* 801EB284 001E81E4 7C 96 E8 2E */ lwzx r4, r22, r29 +/* 801EB288 001E81E8 90 01 00 08 */ stw r0, 8(r1) +/* 801EB28C 001E81EC 80 84 00 00 */ lwz r4, 0(r4) +/* 801EB290 001E81F0 4B F2 A8 A5 */ bl AdvanceAnimation__10CModelDataFfR13CStateManager7TAreaIdb +/* 801EB294 001E81F4 81 01 01 08 */ lwz r8, 0x108(r1) +/* 801EB298 001E81F8 80 E1 01 0C */ lwz r7, 0x10c(r1) +/* 801EB29C 001E81FC 80 C1 01 10 */ lwz r6, 0x110(r1) +/* 801EB2A0 001E8200 80 A1 01 14 */ lwz r5, 0x114(r1) +/* 801EB2A4 001E8204 80 81 01 18 */ lwz r4, 0x118(r1) +/* 801EB2A8 001E8208 80 61 01 1C */ lwz r3, 0x11c(r1) +/* 801EB2AC 001E820C 80 01 01 20 */ lwz r0, 0x120(r1) +/* 801EB2B0 001E8210 91 01 01 A4 */ stw r8, 0x1a4(r1) +/* 801EB2B4 001E8214 90 E1 01 A8 */ stw r7, 0x1a8(r1) +/* 801EB2B8 001E8218 90 C1 01 AC */ stw r6, 0x1ac(r1) +/* 801EB2BC 001E821C 90 A1 01 B0 */ stw r5, 0x1b0(r1) +/* 801EB2C0 001E8220 90 81 01 B4 */ stw r4, 0x1b4(r1) +/* 801EB2C4 001E8224 90 61 01 B8 */ stw r3, 0x1b8(r1) +/* 801EB2C8 001E8228 90 01 01 BC */ stw r0, 0x1bc(r1) +/* 801EB2CC 001E822C 80 78 00 00 */ lwz r3, 0(r24) +/* 801EB2D0 001E8230 80 83 00 00 */ lwz r4, 0(r3) +/* 801EB2D4 001E8234 80 04 00 10 */ lwz r0, 0x10(r4) +/* 801EB2D8 001E8238 28 00 00 00 */ cmplwi r0, 0 +/* 801EB2DC 001E823C 41 82 00 2C */ beq lbl_801EB308 +/* 801EB2E0 001E8240 88 19 00 00 */ lbz r0, 0(r25) +/* 801EB2E4 001E8244 28 00 00 00 */ cmplwi r0, 0 +/* 801EB2E8 001E8248 41 82 00 20 */ beq lbl_801EB308 +/* 801EB2EC 001E824C 80 1E 05 48 */ lwz r0, 0x548(r30) +/* 801EB2F0 001E8250 7F C3 F3 78 */ mr r3, r30 +/* 801EB2F4 001E8254 80 A4 00 10 */ lwz r5, 0x10(r4) +/* 801EB2F8 001E8258 7F E4 FB 78 */ mr r4, r31 +/* 801EB2FC 001E825C 7C DB 03 D6 */ divw r6, r27, r0 +/* 801EB300 001E8260 38 C6 00 53 */ addi r6, r6, 0x53 +/* 801EB304 001E8264 4B FF C2 55 */ bl UpdateEffects__17CWallCrawlerSwarmFR13CStateManagerR9CAnimData +lbl_801EB308: +/* 801EB308 001E8268 7C 76 E8 2E */ lwzx r3, r22, r29 +/* 801EB30C 001E826C 80 63 00 00 */ lwz r3, 0(r3) +/* 801EB310 001E8270 80 A3 00 10 */ lwz r5, 0x10(r3) +/* 801EB314 001E8274 28 05 00 00 */ cmplwi r5, 0 +/* 801EB318 001E8278 41 82 00 28 */ beq lbl_801EB340 +/* 801EB31C 001E827C 88 1A 00 00 */ lbz r0, 0(r26) +/* 801EB320 001E8280 28 00 00 00 */ cmplwi r0, 0 +/* 801EB324 001E8284 41 82 00 1C */ beq lbl_801EB340 +/* 801EB328 001E8288 80 1E 05 48 */ lwz r0, 0x548(r30) +/* 801EB32C 001E828C 7F C3 F3 78 */ mr r3, r30 +/* 801EB330 001E8290 7F E4 FB 78 */ mr r4, r31 +/* 801EB334 001E8294 7C DC 03 D6 */ divw r6, r28, r0 +/* 801EB338 001E8298 38 C6 00 53 */ addi r6, r6, 0x53 +/* 801EB33C 001E829C 4B FF C2 1D */ bl UpdateEffects__17CWallCrawlerSwarmFR13CStateManagerR9CAnimData +lbl_801EB340: +/* 801EB340 001E82A0 1E F3 00 84 */ mulli r23, r19, 0x84 +/* 801EB344 001E82A4 7E 74 9B 78 */ mr r20, r19 +/* 801EB348 001E82A8 48 00 02 08 */ b lbl_801EB550 +lbl_801EB34C: +/* 801EB34C 001E82AC 80 1E 01 14 */ lwz r0, 0x114(r30) +/* 801EB350 001E82B0 7C 80 BA 14 */ add r4, r0, r23 +/* 801EB354 001E82B4 88 64 00 80 */ lbz r3, 0x80(r4) +/* 801EB358 001E82B8 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f +/* 801EB35C 001E82BC 41 82 01 EC */ beq lbl_801EB548 +/* 801EB360 001E82C0 54 60 DF FF */ rlwinm. r0, r3, 0x1b, 0x1f, 0x1f +/* 801EB364 001E82C4 41 82 00 44 */ beq lbl_801EB3A8 +/* 801EB368 001E82C8 C0 04 00 30 */ lfs f0, 0x30(r4) +/* 801EB36C 001E82CC C0 64 00 34 */ lfs f3, 0x34(r4) +/* 801EB370 001E82D0 EC 1F 00 32 */ fmuls f0, f31, f0 +/* 801EB374 001E82D4 C0 24 00 0C */ lfs f1, 0xc(r4) +/* 801EB378 001E82D8 C0 44 00 38 */ lfs f2, 0x38(r4) +/* 801EB37C 001E82DC EC 7F 00 F2 */ fmuls f3, f31, f3 +/* 801EB380 001E82E0 EC 01 00 2A */ fadds f0, f1, f0 +/* 801EB384 001E82E4 EC 3F 00 B2 */ fmuls f1, f31, f2 +/* 801EB388 001E82E8 D0 04 00 0C */ stfs f0, 0xc(r4) +/* 801EB38C 001E82EC C0 04 00 1C */ lfs f0, 0x1c(r4) +/* 801EB390 001E82F0 EC 00 18 2A */ fadds f0, f0, f3 +/* 801EB394 001E82F4 D0 04 00 1C */ stfs f0, 0x1c(r4) +/* 801EB398 001E82F8 C0 04 00 2C */ lfs f0, 0x2c(r4) +/* 801EB39C 001E82FC EC 00 08 2A */ fadds f0, f0, f1 +/* 801EB3A0 001E8300 D0 04 00 2C */ stfs f0, 0x2c(r4) +/* 801EB3A4 001E8304 48 00 01 A4 */ b lbl_801EB548 +lbl_801EB3A8: +/* 801EB3A8 001E8308 C0 24 00 48 */ lfs f1, 0x48(r4) +/* 801EB3AC 001E830C C0 02 AD A0 */ lfs f0, lbl_805ACAC0@sda21(r2) +/* 801EB3B0 001E8310 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801EB3B4 001E8314 40 81 00 50 */ ble lbl_801EB404 +/* 801EB3B8 001E8318 EC 01 F8 28 */ fsubs f0, f1, f31 +/* 801EB3BC 001E831C D0 04 00 48 */ stfs f0, 0x48(r4) +/* 801EB3C0 001E8320 80 1E 01 14 */ lwz r0, 0x114(r30) +/* 801EB3C4 001E8324 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 801EB3C8 001E8328 7E A0 BA 14 */ add r21, r0, r23 +/* 801EB3CC 001E832C 48 12 71 11 */ bl Float__9CRandom16Fv +/* 801EB3D0 001E8330 C0 42 AE 08 */ lfs f2, lbl_805ACB28@sda21(r2) +/* 801EB3D4 001E8334 C0 15 00 48 */ lfs f0, 0x48(r21) +/* 801EB3D8 001E8338 EC 22 00 72 */ fmuls f1, f2, f1 +/* 801EB3DC 001E833C FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801EB3E0 001E8340 40 80 01 68 */ bge lbl_801EB548 +/* 801EB3E4 001E8344 80 1E 01 14 */ lwz r0, 0x114(r30) +/* 801EB3E8 001E8348 7F C3 F3 78 */ mr r3, r30 +/* 801EB3EC 001E834C C0 22 AD B4 */ lfs f1, lbl_805ACAD4@sda21(r2) +/* 801EB3F0 001E8350 7F E5 FB 78 */ mr r5, r31 +/* 801EB3F4 001E8354 C0 42 AE 0C */ lfs f2, lbl_805ACB2C@sda21(r2) +/* 801EB3F8 001E8358 7C 80 BA 14 */ add r4, r0, r23 +/* 801EB3FC 001E835C 4B FF C8 29 */ bl KillBoid__17CWallCrawlerSwarmFRQ217CWallCrawlerSwarm5CBoidR13CStateManagerff +/* 801EB400 001E8360 48 00 01 48 */ b lbl_801EB548 +lbl_801EB404: +/* 801EB404 001E8364 54 60 E7 FF */ rlwinm. r0, r3, 0x1c, 0x1f, 0x1f +/* 801EB408 001E8368 40 82 00 0C */ bne lbl_801EB414 +/* 801EB40C 001E836C 54 60 EF FF */ rlwinm. r0, r3, 0x1d, 0x1f, 0x1f +/* 801EB410 001E8370 41 82 00 A0 */ beq lbl_801EB4B0 +lbl_801EB414: +/* 801EB414 001E8374 38 61 00 84 */ addi r3, r1, 0x84 +/* 801EB418 001E8378 38 A1 01 A4 */ addi r5, r1, 0x1a4 +/* 801EB41C 001E837C 48 12 76 65 */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 801EB420 001E8380 C0 02 AD B4 */ lfs f0, lbl_805ACAD4@sda21(r2) +/* 801EB424 001E8384 38 77 00 30 */ addi r3, r23, 0x30 +/* 801EB428 001E8388 80 1E 01 14 */ lwz r0, 0x114(r30) +/* 801EB42C 001E838C EC 80 F8 24 */ fdivs f4, f0, f31 +/* 801EB430 001E8390 C0 62 AD D0 */ lfs f3, lbl_805ACAF0@sda21(r2) +/* 801EB434 001E8394 C0 01 00 84 */ lfs f0, 0x84(r1) +/* 801EB438 001E8398 7C 60 1A 14 */ add r3, r0, r3 +/* 801EB43C 001E839C C0 41 00 88 */ lfs f2, 0x88(r1) +/* 801EB440 001E83A0 C0 21 00 8C */ lfs f1, 0x8c(r1) +/* 801EB444 001E83A4 EC 03 00 32 */ fmuls f0, f3, f0 +/* 801EB448 001E83A8 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 801EB44C 001E83AC EC 23 00 72 */ fmuls f1, f3, f1 +/* 801EB450 001E83B0 EC 04 00 32 */ fmuls f0, f4, f0 +/* 801EB454 001E83B4 EC 44 00 B2 */ fmuls f2, f4, f2 +/* 801EB458 001E83B8 EC 24 00 72 */ fmuls f1, f4, f1 +/* 801EB45C 001E83BC D0 03 00 00 */ stfs f0, 0(r3) +/* 801EB460 001E83C0 D0 43 00 04 */ stfs f2, 4(r3) +/* 801EB464 001E83C4 D0 23 00 08 */ stfs f1, 8(r3) +/* 801EB468 001E83C8 80 1E 01 14 */ lwz r0, 0x114(r30) +/* 801EB46C 001E83CC 7C 60 BA 14 */ add r3, r0, r23 +/* 801EB470 001E83D0 C0 03 00 30 */ lfs f0, 0x30(r3) +/* 801EB474 001E83D4 C0 23 00 0C */ lfs f1, 0xc(r3) +/* 801EB478 001E83D8 EC 1F 00 32 */ fmuls f0, f31, f0 +/* 801EB47C 001E83DC C0 63 00 34 */ lfs f3, 0x34(r3) +/* 801EB480 001E83E0 C0 43 00 38 */ lfs f2, 0x38(r3) +/* 801EB484 001E83E4 EC 7F 00 F2 */ fmuls f3, f31, f3 +/* 801EB488 001E83E8 EC 01 00 2A */ fadds f0, f1, f0 +/* 801EB48C 001E83EC EC 3F 00 B2 */ fmuls f1, f31, f2 +/* 801EB490 001E83F0 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 801EB494 001E83F4 C0 03 00 1C */ lfs f0, 0x1c(r3) +/* 801EB498 001E83F8 EC 00 18 2A */ fadds f0, f0, f3 +/* 801EB49C 001E83FC D0 03 00 1C */ stfs f0, 0x1c(r3) +/* 801EB4A0 001E8400 C0 03 00 2C */ lfs f0, 0x2c(r3) +/* 801EB4A4 001E8404 EC 00 08 2A */ fadds f0, f0, f1 +/* 801EB4A8 001E8408 D0 03 00 2C */ stfs f0, 0x2c(r3) +/* 801EB4AC 001E840C 48 00 00 9C */ b lbl_801EB548 +lbl_801EB4B0: +/* 801EB4B0 001E8410 38 61 00 78 */ addi r3, r1, 0x78 +/* 801EB4B4 001E8414 38 A1 01 C0 */ addi r5, r1, 0x1c0 +/* 801EB4B8 001E8418 48 12 75 C9 */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 801EB4BC 001E841C C0 02 AD B4 */ lfs f0, lbl_805ACAD4@sda21(r2) +/* 801EB4C0 001E8420 38 77 00 30 */ addi r3, r23, 0x30 +/* 801EB4C4 001E8424 80 1E 01 14 */ lwz r0, 0x114(r30) +/* 801EB4C8 001E8428 EC 80 F8 24 */ fdivs f4, f0, f31 +/* 801EB4CC 001E842C C0 62 AD D0 */ lfs f3, lbl_805ACAF0@sda21(r2) +/* 801EB4D0 001E8430 C0 01 00 78 */ lfs f0, 0x78(r1) +/* 801EB4D4 001E8434 7C 60 1A 14 */ add r3, r0, r3 +/* 801EB4D8 001E8438 C0 41 00 7C */ lfs f2, 0x7c(r1) +/* 801EB4DC 001E843C C0 21 00 80 */ lfs f1, 0x80(r1) +/* 801EB4E0 001E8440 EC 03 00 32 */ fmuls f0, f3, f0 +/* 801EB4E4 001E8444 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 801EB4E8 001E8448 EC 23 00 72 */ fmuls f1, f3, f1 +/* 801EB4EC 001E844C EC 04 00 32 */ fmuls f0, f4, f0 +/* 801EB4F0 001E8450 EC 44 00 B2 */ fmuls f2, f4, f2 +/* 801EB4F4 001E8454 EC 24 00 72 */ fmuls f1, f4, f1 +/* 801EB4F8 001E8458 D0 03 00 00 */ stfs f0, 0(r3) +/* 801EB4FC 001E845C D0 43 00 04 */ stfs f2, 4(r3) +/* 801EB500 001E8460 D0 23 00 08 */ stfs f1, 8(r3) +/* 801EB504 001E8464 80 1E 01 14 */ lwz r0, 0x114(r30) +/* 801EB508 001E8468 7C 60 BA 14 */ add r3, r0, r23 +/* 801EB50C 001E846C C0 03 00 30 */ lfs f0, 0x30(r3) +/* 801EB510 001E8470 C0 23 00 0C */ lfs f1, 0xc(r3) +/* 801EB514 001E8474 EC 1F 00 32 */ fmuls f0, f31, f0 +/* 801EB518 001E8478 C0 63 00 34 */ lfs f3, 0x34(r3) +/* 801EB51C 001E847C C0 43 00 38 */ lfs f2, 0x38(r3) +/* 801EB520 001E8480 EC 7F 00 F2 */ fmuls f3, f31, f3 +/* 801EB524 001E8484 EC 01 00 2A */ fadds f0, f1, f0 +/* 801EB528 001E8488 EC 3F 00 B2 */ fmuls f1, f31, f2 +/* 801EB52C 001E848C D0 03 00 0C */ stfs f0, 0xc(r3) +/* 801EB530 001E8490 C0 03 00 1C */ lfs f0, 0x1c(r3) +/* 801EB534 001E8494 EC 00 18 2A */ fadds f0, f0, f3 +/* 801EB538 001E8498 D0 03 00 1C */ stfs f0, 0x1c(r3) +/* 801EB53C 001E849C C0 03 00 2C */ lfs f0, 0x2c(r3) +/* 801EB540 001E84A0 EC 00 08 2A */ fadds f0, f0, f1 +/* 801EB544 001E84A4 D0 03 00 2C */ stfs f0, 0x2c(r3) +lbl_801EB548: +/* 801EB548 001E84A8 3A F7 02 10 */ addi r23, r23, 0x210 +/* 801EB54C 001E84AC 3A 94 00 04 */ addi r20, r20, 4 +lbl_801EB550: +/* 801EB550 001E84B0 80 1E 01 0C */ lwz r0, 0x10c(r30) +/* 801EB554 001E84B4 7C 14 00 00 */ cmpw r20, r0 +/* 801EB558 001E84B8 41 80 FD F4 */ blt lbl_801EB34C +/* 801EB55C 001E84BC 3A 73 00 01 */ addi r19, r19, 1 +/* 801EB560 001E84C0 3B 39 00 01 */ addi r25, r25, 1 +/* 801EB564 001E84C4 2C 13 00 04 */ cmpwi r19, 4 +/* 801EB568 001E84C8 3B 5A 00 01 */ addi r26, r26, 1 +/* 801EB56C 001E84CC 3B 18 00 04 */ addi r24, r24, 4 +/* 801EB570 001E84D0 41 80 FC 64 */ blt lbl_801EB1D4 +/* 801EB574 001E84D4 80 1E 05 58 */ lwz r0, 0x558(r30) +/* 801EB578 001E84D8 2C 00 00 02 */ cmpwi r0, 2 +/* 801EB57C 001E84DC 40 82 00 C4 */ bne lbl_801EB640 +/* 801EB580 001E84E0 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 801EB584 001E84E4 82 7E 01 14 */ lwz r19, 0x114(r30) +/* 801EB588 001E84E8 C3 C3 00 40 */ lfs f30, 0x40(r3) +/* 801EB58C 001E84EC C3 E3 00 50 */ lfs f31, 0x50(r3) +/* 801EB590 001E84F0 C3 A3 00 60 */ lfs f29, 0x60(r3) +/* 801EB594 001E84F4 48 00 00 94 */ b lbl_801EB628 +lbl_801EB598: +/* 801EB598 001E84F8 88 73 00 80 */ lbz r3, 0x80(r19) +/* 801EB59C 001E84FC 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f +/* 801EB5A0 001E8500 41 82 00 84 */ beq lbl_801EB624 +/* 801EB5A4 001E8504 C0 53 00 48 */ lfs f2, 0x48(r19) +/* 801EB5A8 001E8508 C0 22 AD A0 */ lfs f1, lbl_805ACAC0@sda21(r2) +/* 801EB5AC 001E850C C0 02 AD D8 */ lfs f0, lbl_805ACAF8@sda21(r2) +/* 801EB5B0 001E8510 EC 22 08 28 */ fsubs f1, f2, f1 +/* 801EB5B4 001E8514 FC 20 0A 10 */ fabs f1, f1 +/* 801EB5B8 001E8518 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801EB5BC 001E851C 40 80 00 68 */ bge lbl_801EB624 +/* 801EB5C0 001E8520 54 60 DF FF */ rlwinm. r0, r3, 0x1b, 0x1f, 0x1f +/* 801EB5C4 001E8524 40 82 00 60 */ bne lbl_801EB624 +/* 801EB5C8 001E8528 C0 53 00 1C */ lfs f2, 0x1c(r19) +/* 801EB5CC 001E852C 38 61 00 6C */ addi r3, r1, 0x6c +/* 801EB5D0 001E8530 C0 33 00 2C */ lfs f1, 0x2c(r19) +/* 801EB5D4 001E8534 C0 13 00 0C */ lfs f0, 0xc(r19) +/* 801EB5D8 001E8538 EC 5F 10 28 */ fsubs f2, f31, f2 +/* 801EB5DC 001E853C EC 3D 08 28 */ fsubs f1, f29, f1 +/* 801EB5E0 001E8540 EC 1E 00 28 */ fsubs f0, f30, f0 +/* 801EB5E4 001E8544 D0 41 00 70 */ stfs f2, 0x70(r1) +/* 801EB5E8 001E8548 D0 01 00 6C */ stfs f0, 0x6c(r1) +/* 801EB5EC 001E854C D0 21 00 74 */ stfs f1, 0x74(r1) +/* 801EB5F0 001E8550 48 12 92 C9 */ bl Magnitude__9CVector3fCFv +/* 801EB5F4 001E8554 C0 1E 01 54 */ lfs f0, 0x154(r30) +/* 801EB5F8 001E8558 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801EB5FC 001E855C 40 80 00 18 */ bge lbl_801EB614 +/* 801EB600 001E8560 88 13 00 80 */ lbz r0, 0x80(r19) +/* 801EB604 001E8564 38 60 00 01 */ li r3, 1 +/* 801EB608 001E8568 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801EB60C 001E856C 98 13 00 80 */ stb r0, 0x80(r19) +/* 801EB610 001E8570 48 00 00 14 */ b lbl_801EB624 +lbl_801EB614: +/* 801EB614 001E8574 88 13 00 80 */ lbz r0, 0x80(r19) +/* 801EB618 001E8578 38 60 00 00 */ li r3, 0 +/* 801EB61C 001E857C 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801EB620 001E8580 98 13 00 80 */ stb r0, 0x80(r19) +lbl_801EB624: +/* 801EB624 001E8584 3A 73 00 84 */ addi r19, r19, 0x84 +lbl_801EB628: +/* 801EB628 001E8588 80 1E 01 0C */ lwz r0, 0x10c(r30) +/* 801EB62C 001E858C 80 7E 01 14 */ lwz r3, 0x114(r30) +/* 801EB630 001E8590 1C 00 00 84 */ mulli r0, r0, 0x84 +/* 801EB634 001E8594 7C 03 02 14 */ add r0, r3, r0 +/* 801EB638 001E8598 7C 13 00 40 */ cmplw r19, r0 +/* 801EB63C 001E859C 40 82 FF 5C */ bne lbl_801EB598 +lbl_801EB640: +/* 801EB640 001E85A0 80 1E 05 58 */ lwz r0, 0x558(r30) +/* 801EB644 001E85A4 2C 00 00 00 */ cmpwi r0, 0 +/* 801EB648 001E85A8 40 82 02 74 */ bne lbl_801EB8BC +/* 801EB64C 001E85AC 80 1E 05 54 */ lwz r0, 0x554(r30) +/* 801EB650 001E85B0 2C 00 00 00 */ cmpwi r0, 0 +/* 801EB654 001E85B4 40 81 02 68 */ ble lbl_801EB8BC +/* 801EB658 001E85B8 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 801EB65C 001E85BC 88 0D A4 C0 */ lbz r0, lbl_805A9080@sda21(r13) +/* 801EB660 001E85C0 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801EB664 001E85C4 C0 62 AD A0 */ lfs f3, lbl_805ACAC0@sda21(r2) +/* 801EB668 001E85C8 7C 00 07 75 */ extsb. r0, r0 +/* 801EB66C 001E85CC C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801EB670 001E85D0 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 801EB674 001E85D4 EC 81 18 2A */ fadds f4, f1, f3 +/* 801EB678 001E85D8 C0 22 AD B4 */ lfs f1, lbl_805ACAD4@sda21(r2) +/* 801EB67C 001E85DC EC 00 18 2A */ fadds f0, f0, f3 +/* 801EB680 001E85E0 EC 22 08 2A */ fadds f1, f2, f1 +/* 801EB684 001E85E4 D0 81 00 E8 */ stfs f4, 0xe8(r1) +/* 801EB688 001E85E8 D0 01 00 E4 */ stfs f0, 0xe4(r1) +/* 801EB68C 001E85EC D0 21 00 EC */ stfs f1, 0xec(r1) +/* 801EB690 001E85F0 40 82 00 40 */ bne lbl_801EB6D0 +/* 801EB694 001E85F4 80 AD 92 4C */ lwz r5, lbl_805A7E0C@sda21(r13) +/* 801EB698 001E85F8 38 60 00 00 */ li r3, 0 +/* 801EB69C 001E85FC 38 80 00 01 */ li r4, 1 +/* 801EB6A0 001E8600 48 19 E8 55 */ bl __shl2i +/* 801EB6A4 001E8604 3C A0 80 47 */ lis r5, lbl_8046C938@ha +/* 801EB6A8 001E8608 38 C0 00 01 */ li r6, 1 +/* 801EB6AC 001E860C 38 A5 C9 38 */ addi r5, r5, lbl_8046C938@l +/* 801EB6B0 001E8610 38 00 00 00 */ li r0, 0 +/* 801EB6B4 001E8614 90 C1 01 00 */ stw r6, 0x100(r1) +/* 801EB6B8 001E8618 90 85 00 04 */ stw r4, 4(r5) +/* 801EB6BC 001E861C 90 65 00 00 */ stw r3, 0(r5) +/* 801EB6C0 001E8620 90 05 00 0C */ stw r0, 0xc(r5) +/* 801EB6C4 001E8624 90 05 00 08 */ stw r0, 8(r5) +/* 801EB6C8 001E8628 90 C5 00 10 */ stw r6, 0x10(r5) +/* 801EB6CC 001E862C 98 CD A4 C0 */ stb r6, lbl_805A9080@sda21(r13) +lbl_801EB6D0: +/* 801EB6D0 001E8630 80 1E 01 0C */ lwz r0, 0x10c(r30) +/* 801EB6D4 001E8634 3A 60 00 00 */ li r19, 0 +/* 801EB6D8 001E8638 82 DE 01 14 */ lwz r22, 0x114(r30) +/* 801EB6DC 001E863C 1C 00 00 84 */ mulli r0, r0, 0x84 +/* 801EB6E0 001E8640 7E C4 B3 78 */ mr r4, r22 +/* 801EB6E4 001E8644 7C B6 02 14 */ add r5, r22, r0 +/* 801EB6E8 001E8648 48 00 00 20 */ b lbl_801EB708 +lbl_801EB6EC: +/* 801EB6EC 001E864C 88 64 00 80 */ lbz r3, 0x80(r4) +/* 801EB6F0 001E8650 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f +/* 801EB6F4 001E8654 41 82 00 10 */ beq lbl_801EB704 +/* 801EB6F8 001E8658 54 60 DF FF */ rlwinm. r0, r3, 0x1b, 0x1f, 0x1f +/* 801EB6FC 001E865C 41 82 00 08 */ beq lbl_801EB704 +/* 801EB700 001E8660 3A 73 00 01 */ addi r19, r19, 1 +lbl_801EB704: +/* 801EB704 001E8664 38 84 00 84 */ addi r4, r4, 0x84 +lbl_801EB708: +/* 801EB708 001E8668 7C 04 28 40 */ cmplw r4, r5 +/* 801EB70C 001E866C 40 82 FF E0 */ bne lbl_801EB6EC +/* 801EB710 001E8670 80 1E 05 54 */ lwz r0, 0x554(r30) +/* 801EB714 001E8674 7C 13 00 00 */ cmpw r19, r0 +/* 801EB718 001E8678 40 80 01 A4 */ bge lbl_801EB8BC +/* 801EB71C 001E867C 48 00 01 7C */ b lbl_801EB898 +lbl_801EB720: +/* 801EB720 001E8680 88 76 00 80 */ lbz r3, 0x80(r22) +/* 801EB724 001E8684 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f +/* 801EB728 001E8688 41 82 01 6C */ beq lbl_801EB894 +/* 801EB72C 001E868C C0 56 00 48 */ lfs f2, 0x48(r22) +/* 801EB730 001E8690 C0 22 AD A0 */ lfs f1, lbl_805ACAC0@sda21(r2) +/* 801EB734 001E8694 C0 02 AD D8 */ lfs f0, lbl_805ACAF8@sda21(r2) +/* 801EB738 001E8698 EC 22 08 28 */ fsubs f1, f2, f1 +/* 801EB73C 001E869C FC 20 0A 10 */ fabs f1, f1 +/* 801EB740 001E86A0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801EB744 001E86A4 40 80 01 50 */ bge lbl_801EB894 +/* 801EB748 001E86A8 54 60 DF FF */ rlwinm. r0, r3, 0x1b, 0x1f, 0x1f +/* 801EB74C 001E86AC 40 82 01 48 */ bne lbl_801EB894 +/* 801EB750 001E86B0 C0 F6 00 1C */ lfs f7, 0x1c(r22) +/* 801EB754 001E86B4 C0 76 00 0C */ lfs f3, 0xc(r22) +/* 801EB758 001E86B8 C0 21 00 E8 */ lfs f1, 0xe8(r1) +/* 801EB75C 001E86BC C0 01 00 E4 */ lfs f0, 0xe4(r1) +/* 801EB760 001E86C0 EC C7 08 28 */ fsubs f6, f7, f1 +/* 801EB764 001E86C4 C1 16 00 2C */ lfs f8, 0x2c(r22) +/* 801EB768 001E86C8 EC 83 00 28 */ fsubs f4, f3, f0 +/* 801EB76C 001E86CC C0 21 00 EC */ lfs f1, 0xec(r1) +/* 801EB770 001E86D0 C0 02 AE 10 */ lfs f0, lbl_805ACB30@sda21(r2) +/* 801EB774 001E86D4 EC A8 08 28 */ fsubs f5, f8, f1 +/* 801EB778 001E86D8 EC 44 01 32 */ fmuls f2, f4, f4 +/* 801EB77C 001E86DC D0 61 00 54 */ stfs f3, 0x54(r1) +/* 801EB780 001E86E0 EC 26 01 B2 */ fmuls f1, f6, f6 +/* 801EB784 001E86E4 EC 65 01 72 */ fmuls f3, f5, f5 +/* 801EB788 001E86E8 D0 E1 00 58 */ stfs f7, 0x58(r1) +/* 801EB78C 001E86EC EC 22 08 2A */ fadds f1, f2, f1 +/* 801EB790 001E86F0 D1 01 00 5C */ stfs f8, 0x5c(r1) +/* 801EB794 001E86F4 D0 81 00 60 */ stfs f4, 0x60(r1) +/* 801EB798 001E86F8 EC 23 08 2A */ fadds f1, f3, f1 +/* 801EB79C 001E86FC D0 C1 00 64 */ stfs f6, 0x64(r1) +/* 801EB7A0 001E8700 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801EB7A4 001E8704 D0 A1 00 68 */ stfs f5, 0x68(r1) +/* 801EB7A8 001E8708 40 80 00 EC */ bge lbl_801EB894 +/* 801EB7AC 001E870C 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 801EB7B0 001E8710 48 12 6D 2D */ bl Float__9CRandom16Fv +/* 801EB7B4 001E8714 C0 02 AE 14 */ lfs f0, lbl_805ACB34@sda21(r2) +/* 801EB7B8 001E8718 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801EB7BC 001E871C 4C 40 13 82 */ cror 2, 0, 2 +/* 801EB7C0 001E8720 40 82 00 D4 */ bne lbl_801EB894 +/* 801EB7C4 001E8724 C0 B6 00 2C */ lfs f5, 0x2c(r22) +/* 801EB7C8 001E8728 38 61 00 48 */ addi r3, r1, 0x48 +/* 801EB7CC 001E872C C0 01 00 EC */ lfs f0, 0xec(r1) +/* 801EB7D0 001E8730 C0 96 00 1C */ lfs f4, 0x1c(r22) +/* 801EB7D4 001E8734 C0 56 00 0C */ lfs f2, 0xc(r22) +/* 801EB7D8 001E8738 EC 60 28 28 */ fsubs f3, f0, f5 +/* 801EB7DC 001E873C C0 21 00 E8 */ lfs f1, 0xe8(r1) +/* 801EB7E0 001E8740 C0 01 00 E4 */ lfs f0, 0xe4(r1) +/* 801EB7E4 001E8744 EC 21 20 28 */ fsubs f1, f1, f4 +/* 801EB7E8 001E8748 D0 41 00 D8 */ stfs f2, 0xd8(r1) +/* 801EB7EC 001E874C EC 00 10 28 */ fsubs f0, f0, f2 +/* 801EB7F0 001E8750 D0 81 00 DC */ stfs f4, 0xdc(r1) +/* 801EB7F4 001E8754 D0 A1 00 E0 */ stfs f5, 0xe0(r1) +/* 801EB7F8 001E8758 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 801EB7FC 001E875C D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 801EB800 001E8760 D0 61 00 50 */ stfs f3, 0x50(r1) +/* 801EB804 001E8764 48 12 90 B5 */ bl Magnitude__9CVector3fCFv +/* 801EB808 001E8768 C0 02 AD B4 */ lfs f0, lbl_805ACAD4@sda21(r2) +/* 801EB80C 001E876C 3C 60 80 47 */ lis r3, lbl_8046C938@ha +/* 801EB810 001E8770 38 E3 C9 38 */ addi r7, r3, lbl_8046C938@l +/* 801EB814 001E8774 C0 81 00 E8 */ lfs f4, 0xe8(r1) +/* 801EB818 001E8778 EC C0 08 24 */ fdivs f6, f0, f1 +/* 801EB81C 001E877C C0 41 00 DC */ lfs f2, 0xdc(r1) +/* 801EB820 001E8780 C0 61 00 EC */ lfs f3, 0xec(r1) +/* 801EB824 001E8784 7F E4 FB 78 */ mr r4, r31 +/* 801EB828 001E8788 C0 01 00 E0 */ lfs f0, 0xe0(r1) +/* 801EB82C 001E878C 38 61 01 F8 */ addi r3, r1, 0x1f8 +/* 801EB830 001E8790 EC 84 10 28 */ fsubs f4, f4, f2 +/* 801EB834 001E8794 C0 41 00 E4 */ lfs f2, 0xe4(r1) +/* 801EB838 001E8798 EC 63 00 28 */ fsubs f3, f3, f0 +/* 801EB83C 001E879C C0 01 00 D8 */ lfs f0, 0xd8(r1) +/* 801EB840 001E87A0 38 A1 00 D8 */ addi r5, r1, 0xd8 +/* 801EB844 001E87A4 38 C1 00 3C */ addi r6, r1, 0x3c +/* 801EB848 001E87A8 EC 42 00 28 */ fsubs f2, f2, f0 +/* 801EB84C 001E87AC D0 81 00 34 */ stfs f4, 0x34(r1) +/* 801EB850 001E87B0 EC A6 01 32 */ fmuls f5, f6, f4 +/* 801EB854 001E87B4 EC 86 00 F2 */ fmuls f4, f6, f3 +/* 801EB858 001E87B8 D0 61 00 38 */ stfs f3, 0x38(r1) +/* 801EB85C 001E87BC EC 06 00 B2 */ fmuls f0, f6, f2 +/* 801EB860 001E87C0 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 801EB864 001E87C4 D0 A1 00 40 */ stfs f5, 0x40(r1) +/* 801EB868 001E87C8 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 801EB86C 001E87CC D0 81 00 44 */ stfs f4, 0x44(r1) +/* 801EB870 001E87D0 4B E6 17 29 */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter +/* 801EB874 001E87D4 88 01 02 18 */ lbz r0, 0x218(r1) +/* 801EB878 001E87D8 28 00 00 00 */ cmplwi r0, 0 +/* 801EB87C 001E87DC 40 82 00 18 */ bne lbl_801EB894 +/* 801EB880 001E87E0 7F C3 F3 78 */ mr r3, r30 +/* 801EB884 001E87E4 7E C4 B3 78 */ mr r4, r22 +/* 801EB888 001E87E8 38 A1 00 E4 */ addi r5, r1, 0xe4 +/* 801EB88C 001E87EC 4B FF EC 89 */ bl LaunchBoid__17CWallCrawlerSwarmFRQ217CWallCrawlerSwarm5CBoidRC9CVector3f +/* 801EB890 001E87F0 3A 73 00 01 */ addi r19, r19, 1 +lbl_801EB894: +/* 801EB894 001E87F4 3A D6 00 84 */ addi r22, r22, 0x84 +lbl_801EB898: +/* 801EB898 001E87F8 80 1E 01 0C */ lwz r0, 0x10c(r30) +/* 801EB89C 001E87FC 80 7E 01 14 */ lwz r3, 0x114(r30) +/* 801EB8A0 001E8800 1C 00 00 84 */ mulli r0, r0, 0x84 +/* 801EB8A4 001E8804 7C 03 02 14 */ add r0, r3, r0 +/* 801EB8A8 001E8808 7C 16 00 40 */ cmplw r22, r0 +/* 801EB8AC 001E880C 41 82 00 10 */ beq lbl_801EB8BC +/* 801EB8B0 001E8810 80 1E 05 54 */ lwz r0, 0x554(r30) +/* 801EB8B4 001E8814 7C 13 00 00 */ cmpw r19, r0 +/* 801EB8B8 001E8818 41 80 FE 68 */ blt lbl_801EB720 +lbl_801EB8BC: +/* 801EB8BC 001E881C 38 00 39 18 */ li r0, 0x3918 +/* 801EB8C0 001E8820 13 E1 00 0C */ psq_lx f31, r1, r0, 0, qr0 +/* 801EB8C4 001E8824 CB E1 39 10 */ lfd f31, 0x3910(r1) +/* 801EB8C8 001E8828 38 00 39 08 */ li r0, 0x3908 +/* 801EB8CC 001E882C 13 C1 00 0C */ psq_lx f30, r1, r0, 0, qr0 +/* 801EB8D0 001E8830 CB C1 39 00 */ lfd f30, 0x3900(r1) +/* 801EB8D4 001E8834 38 00 38 F8 */ li r0, 0x38f8 +/* 801EB8D8 001E8838 13 A1 00 0C */ psq_lx f29, r1, r0, 0, qr0 +/* 801EB8DC 001E883C CB A1 38 F0 */ lfd f29, 0x38f0(r1) +/* 801EB8E0 001E8840 BA 61 38 BC */ lmw r19, 0x38bc(r1) +/* 801EB8E4 001E8844 80 01 39 24 */ lwz r0, 0x3924(r1) +/* 801EB8E8 001E8848 7C 08 03 A6 */ mtlr r0 +/* 801EB8EC 001E884C 38 21 39 20 */ addi r1, r1, 0x3920 +/* 801EB8F0 001E8850 4E 80 00 20 */ blr + +.global AddDoorRepulsors__17CWallCrawlerSwarmFR13CStateManager +AddDoorRepulsors__17CWallCrawlerSwarmFR13CStateManager: +/* 801EB8F4 001E8854 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 801EB8F8 001E8858 7C 08 02 A6 */ mflr r0 +/* 801EB8FC 001E885C 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 801EB900 001E8860 DB E1 00 B0 */ stfd f31, 0xb0(r1) +/* 801EB904 001E8864 F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0 +/* 801EB908 001E8868 DB C1 00 A0 */ stfd f30, 0xa0(r1) +/* 801EB90C 001E886C F3 C1 00 A8 */ psq_st f30, 168(r1), 0, qr0 +/* 801EB910 001E8870 DB A1 00 90 */ stfd f29, 0x90(r1) +/* 801EB914 001E8874 F3 A1 00 98 */ psq_st f29, 152(r1), 0, qr0 +/* 801EB918 001E8878 93 E1 00 8C */ stw r31, 0x8c(r1) +/* 801EB91C 001E887C 93 C1 00 88 */ stw r30, 0x88(r1) +/* 801EB920 001E8880 93 A1 00 84 */ stw r29, 0x84(r1) +/* 801EB924 001E8884 93 81 00 80 */ stw r28, 0x80(r1) +/* 801EB928 001E8888 83 E4 08 20 */ lwz r31, 0x820(r4) +/* 801EB92C 001E888C 7C 7D 1B 78 */ mr r29, r3 +/* 801EB930 001E8890 3B C0 00 00 */ li r30, 0 +/* 801EB934 001E8894 AB 9F 20 08 */ lha r28, 0x2008(r31) +/* 801EB938 001E8898 48 00 00 5C */ b lbl_801EB994 +lbl_801EB93C: +/* 801EB93C 001E889C 7F E3 FB 78 */ mr r3, r31 +/* 801EB940 001E88A0 7F 84 E3 78 */ mr r4, r28 +/* 801EB944 001E88A4 4B E2 43 D1 */ bl __vc__11CObjectListFi +/* 801EB948 001E88A8 7C 60 1B 78 */ mr r0, r3 +/* 801EB94C 001E88AC 38 61 00 10 */ addi r3, r1, 0x10 +/* 801EB950 001E88B0 7C 04 03 78 */ mr r4, r0 +/* 801EB954 001E88B4 4B EB E7 9D */ bl "__ct__25TCastToPtr<11CScriptDoor>FP7CEntity" +/* 801EB958 001E88B8 80 63 00 04 */ lwz r3, 4(r3) +/* 801EB95C 001E88BC 28 03 00 00 */ cmplwi r3, 0 +/* 801EB960 001E88C0 41 82 00 18 */ beq lbl_801EB978 +/* 801EB964 001E88C4 80 63 00 04 */ lwz r3, 4(r3) +/* 801EB968 001E88C8 80 1D 00 04 */ lwz r0, 4(r29) +/* 801EB96C 001E88CC 7C 03 00 00 */ cmpw r3, r0 +/* 801EB970 001E88D0 40 82 00 08 */ bne lbl_801EB978 +/* 801EB974 001E88D4 3B DE 00 01 */ addi r30, r30, 1 +lbl_801EB978: +/* 801EB978 001E88D8 2C 1C FF FF */ cmpwi r28, -1 +/* 801EB97C 001E88DC 41 82 00 14 */ beq lbl_801EB990 +/* 801EB980 001E88E0 57 83 18 38 */ slwi r3, r28, 3 +/* 801EB984 001E88E4 38 03 00 08 */ addi r0, r3, 8 +/* 801EB988 001E88E8 7F 9F 02 AE */ lhax r28, r31, r0 +/* 801EB98C 001E88EC 48 00 00 08 */ b lbl_801EB994 +lbl_801EB990: +/* 801EB990 001E88F0 3B 80 FF FF */ li r28, -1 +lbl_801EB994: +/* 801EB994 001E88F4 2C 1C FF FF */ cmpwi r28, -1 +/* 801EB998 001E88F8 40 82 FF A4 */ bne lbl_801EB93C +/* 801EB99C 001E88FC 7F C4 F3 78 */ mr r4, r30 +/* 801EB9A0 001E8900 38 7D 04 E0 */ addi r3, r29, 0x4e0 +/* 801EB9A4 001E8904 48 00 37 41 */ bl sub_801ef0e4 +/* 801EB9A8 001E8908 AB DF 20 08 */ lha r30, 0x2008(r31) +/* 801EB9AC 001E890C 48 00 01 9C */ b lbl_801EBB48 +lbl_801EB9B0: +/* 801EB9B0 001E8910 7F E3 FB 78 */ mr r3, r31 +/* 801EB9B4 001E8914 7F C4 F3 78 */ mr r4, r30 +/* 801EB9B8 001E8918 4B E2 43 5D */ bl __vc__11CObjectListFi +/* 801EB9BC 001E891C 7C 60 1B 78 */ mr r0, r3 +/* 801EB9C0 001E8920 38 61 00 08 */ addi r3, r1, 8 +/* 801EB9C4 001E8924 7C 04 03 78 */ mr r4, r0 +/* 801EB9C8 001E8928 4B EB E7 29 */ bl "__ct__25TCastToPtr<11CScriptDoor>FP7CEntity" +/* 801EB9CC 001E892C 80 83 00 04 */ lwz r4, 4(r3) +/* 801EB9D0 001E8930 28 04 00 00 */ cmplwi r4, 0 +/* 801EB9D4 001E8934 41 82 01 58 */ beq lbl_801EBB2C +/* 801EB9D8 001E8938 80 64 00 04 */ lwz r3, 4(r4) +/* 801EB9DC 001E893C 80 1D 00 04 */ lwz r0, 4(r29) +/* 801EB9E0 001E8940 7C 03 00 00 */ cmpw r3, r0 +/* 801EB9E4 001E8944 40 82 01 48 */ bne lbl_801EBB2C +/* 801EB9E8 001E8948 81 84 00 00 */ lwz r12, 0(r4) +/* 801EB9EC 001E894C 38 61 00 3C */ addi r3, r1, 0x3c +/* 801EB9F0 001E8950 81 8C 00 40 */ lwz r12, 0x40(r12) +/* 801EB9F4 001E8954 7D 89 03 A6 */ mtctr r12 +/* 801EB9F8 001E8958 4E 80 04 21 */ bctrl +/* 801EB9FC 001E895C 88 01 00 54 */ lbz r0, 0x54(r1) +/* 801EBA00 001E8960 28 00 00 00 */ cmplwi r0, 0 +/* 801EBA04 001E8964 98 01 00 70 */ stb r0, 0x70(r1) +/* 801EBA08 001E8968 41 82 00 3C */ beq lbl_801EBA44 +/* 801EBA0C 001E896C 34 61 00 58 */ addic. r3, r1, 0x58 +/* 801EBA10 001E8970 41 82 00 34 */ beq lbl_801EBA44 +/* 801EBA14 001E8974 C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 801EBA18 001E8978 D0 03 00 00 */ stfs f0, 0(r3) +/* 801EBA1C 001E897C C0 01 00 40 */ lfs f0, 0x40(r1) +/* 801EBA20 001E8980 D0 03 00 04 */ stfs f0, 4(r3) +/* 801EBA24 001E8984 C0 01 00 44 */ lfs f0, 0x44(r1) +/* 801EBA28 001E8988 D0 03 00 08 */ stfs f0, 8(r3) +/* 801EBA2C 001E898C C0 01 00 48 */ lfs f0, 0x48(r1) +/* 801EBA30 001E8990 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 801EBA34 001E8994 C0 01 00 4C */ lfs f0, 0x4c(r1) +/* 801EBA38 001E8998 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 801EBA3C 001E899C C0 01 00 50 */ lfs f0, 0x50(r1) +/* 801EBA40 001E89A0 D0 03 00 14 */ stfs f0, 0x14(r3) +lbl_801EBA44: +/* 801EBA44 001E89A4 88 01 00 70 */ lbz r0, 0x70(r1) +/* 801EBA48 001E89A8 38 60 00 00 */ li r3, 0 +/* 801EBA4C 001E89AC 98 61 00 54 */ stb r3, 0x54(r1) +/* 801EBA50 001E89B0 28 00 00 00 */ cmplwi r0, 0 +/* 801EBA54 001E89B4 41 82 00 D0 */ beq lbl_801EBB24 +/* 801EBA58 001E89B8 C0 21 00 5C */ lfs f1, 0x5c(r1) +/* 801EBA5C 001E89BC 38 61 00 30 */ addi r3, r1, 0x30 +/* 801EBA60 001E89C0 C0 01 00 68 */ lfs f0, 0x68(r1) +/* 801EBA64 001E89C4 C0 61 00 60 */ lfs f3, 0x60(r1) +/* 801EBA68 001E89C8 C0 41 00 6C */ lfs f2, 0x6c(r1) +/* 801EBA6C 001E89CC EC 81 00 28 */ fsubs f4, f1, f0 +/* 801EBA70 001E89D0 C0 21 00 58 */ lfs f1, 0x58(r1) +/* 801EBA74 001E89D4 C0 01 00 64 */ lfs f0, 0x64(r1) +/* 801EBA78 001E89D8 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801EBA7C 001E89DC D0 81 00 34 */ stfs f4, 0x34(r1) +/* 801EBA80 001E89E0 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801EBA84 001E89E4 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 801EBA88 001E89E8 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801EBA8C 001E89EC 48 12 8E 2D */ bl Magnitude__9CVector3fCFv +/* 801EBA90 001E89F0 FF E0 08 90 */ fmr f31, f1 +/* 801EBA94 001E89F4 38 61 00 18 */ addi r3, r1, 0x18 +/* 801EBA98 001E89F8 38 81 00 58 */ addi r4, r1, 0x58 +/* 801EBA9C 001E89FC 48 14 BB 71 */ bl GetCenterPoint__6CAABoxCFv +/* 801EBAA0 001E8A00 80 61 00 1C */ lwz r3, 0x1c(r1) +/* 801EBAA4 001E8A04 80 01 00 20 */ lwz r0, 0x20(r1) +/* 801EBAA8 001E8A08 C0 02 AE 18 */ lfs f0, lbl_805ACB38@sda21(r2) +/* 801EBAAC 001E8A0C 90 61 00 28 */ stw r3, 0x28(r1) +/* 801EBAB0 001E8A10 80 61 00 18 */ lwz r3, 0x18(r1) +/* 801EBAB4 001E8A14 EF A0 07 F2 */ fmuls f29, f0, f31 +/* 801EBAB8 001E8A18 90 01 00 2C */ stw r0, 0x2c(r1) +/* 801EBABC 001E8A1C 80 1D 04 E4 */ lwz r0, 0x4e4(r29) +/* 801EBAC0 001E8A20 80 BD 04 E8 */ lwz r5, 0x4e8(r29) +/* 801EBAC4 001E8A24 90 61 00 24 */ stw r3, 0x24(r1) +/* 801EBAC8 001E8A28 7C 00 28 00 */ cmpw r0, r5 +/* 801EBACC 001E8A2C C3 E1 00 28 */ lfs f31, 0x28(r1) +/* 801EBAD0 001E8A30 C3 C1 00 2C */ lfs f30, 0x2c(r1) +/* 801EBAD4 001E8A34 41 80 00 1C */ blt lbl_801EBAF0 +/* 801EBAD8 001E8A38 2C 05 00 00 */ cmpwi r5, 0 +/* 801EBADC 001E8A3C 38 7D 04 E0 */ addi r3, r29, 0x4e0 +/* 801EBAE0 001E8A40 38 80 00 04 */ li r4, 4 +/* 801EBAE4 001E8A44 41 82 00 08 */ beq lbl_801EBAEC +/* 801EBAE8 001E8A48 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801EBAEC: +/* 801EBAEC 001E8A4C 48 00 35 F9 */ bl sub_801ef0e4 +lbl_801EBAF0: +/* 801EBAF0 001E8A50 80 1D 04 E4 */ lwz r0, 0x4e4(r29) +/* 801EBAF4 001E8A54 80 7D 04 EC */ lwz r3, 0x4ec(r29) +/* 801EBAF8 001E8A58 54 00 20 36 */ slwi r0, r0, 4 +/* 801EBAFC 001E8A5C 7C 63 02 15 */ add. r3, r3, r0 +/* 801EBB00 001E8A60 41 82 00 18 */ beq lbl_801EBB18 +/* 801EBB04 001E8A64 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 801EBB08 001E8A68 D0 03 00 00 */ stfs f0, 0(r3) +/* 801EBB0C 001E8A6C D3 E3 00 04 */ stfs f31, 4(r3) +/* 801EBB10 001E8A70 D3 C3 00 08 */ stfs f30, 8(r3) +/* 801EBB14 001E8A74 D3 A3 00 0C */ stfs f29, 0xc(r3) +lbl_801EBB18: +/* 801EBB18 001E8A78 80 7D 04 E4 */ lwz r3, 0x4e4(r29) +/* 801EBB1C 001E8A7C 38 03 00 01 */ addi r0, r3, 1 +/* 801EBB20 001E8A80 90 1D 04 E4 */ stw r0, 0x4e4(r29) +lbl_801EBB24: +/* 801EBB24 001E8A84 38 00 00 00 */ li r0, 0 +/* 801EBB28 001E8A88 98 01 00 70 */ stb r0, 0x70(r1) +lbl_801EBB2C: +/* 801EBB2C 001E8A8C 2C 1E FF FF */ cmpwi r30, -1 +/* 801EBB30 001E8A90 41 82 00 14 */ beq lbl_801EBB44 +/* 801EBB34 001E8A94 57 C3 18 38 */ slwi r3, r30, 3 +/* 801EBB38 001E8A98 38 03 00 08 */ addi r0, r3, 8 +/* 801EBB3C 001E8A9C 7F DF 02 AE */ lhax r30, r31, r0 +/* 801EBB40 001E8AA0 48 00 00 08 */ b lbl_801EBB48 +lbl_801EBB44: +/* 801EBB44 001E8AA4 3B C0 FF FF */ li r30, -1 +lbl_801EBB48: +/* 801EBB48 001E8AA8 2C 1E FF FF */ cmpwi r30, -1 +/* 801EBB4C 001E8AAC 40 82 FE 64 */ bne lbl_801EB9B0 +/* 801EBB50 001E8AB0 E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0 +/* 801EBB54 001E8AB4 CB E1 00 B0 */ lfd f31, 0xb0(r1) +/* 801EBB58 001E8AB8 E3 C1 00 A8 */ psq_l f30, 168(r1), 0, qr0 +/* 801EBB5C 001E8ABC CB C1 00 A0 */ lfd f30, 0xa0(r1) +/* 801EBB60 001E8AC0 E3 A1 00 98 */ psq_l f29, 152(r1), 0, qr0 +/* 801EBB64 001E8AC4 CB A1 00 90 */ lfd f29, 0x90(r1) +/* 801EBB68 001E8AC8 83 E1 00 8C */ lwz r31, 0x8c(r1) +/* 801EBB6C 001E8ACC 83 C1 00 88 */ lwz r30, 0x88(r1) +/* 801EBB70 001E8AD0 83 A1 00 84 */ lwz r29, 0x84(r1) +/* 801EBB74 001E8AD4 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 801EBB78 001E8AD8 83 81 00 80 */ lwz r28, 0x80(r1) +/* 801EBB7C 001E8ADC 7C 08 03 A6 */ mtlr r0 +/* 801EBB80 001E8AE0 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 801EBB84 001E8AE4 4E 80 00 20 */ blr + +.global UpdateBoid__17CWallCrawlerSwarmFR19CAreaCollisionCacheR13CStateManagerfRQ217CWallCrawlerSwarm5CBoid +UpdateBoid__17CWallCrawlerSwarmFR19CAreaCollisionCacheR13CStateManagerfRQ217CWallCrawlerSwarm5CBoid: +/* 801EBB88 001E8AE8 94 21 FA E0 */ stwu r1, -0x520(r1) +/* 801EBB8C 001E8AEC 7C 08 02 A6 */ mflr r0 +/* 801EBB90 001E8AF0 90 01 05 24 */ stw r0, 0x524(r1) +/* 801EBB94 001E8AF4 DB E1 05 10 */ stfd f31, 0x510(r1) +/* 801EBB98 001E8AF8 F3 E1 05 18 */ psq_st f31, 1304(r1), 0, qr0 +/* 801EBB9C 001E8AFC DB C1 05 00 */ stfd f30, 0x500(r1) +/* 801EBBA0 001E8B00 F3 C1 05 08 */ psq_st f30, 1288(r1), 0, qr0 +/* 801EBBA4 001E8B04 DB A1 04 F0 */ stfd f29, 0x4f0(r1) +/* 801EBBA8 001E8B08 F3 A1 04 F8 */ psq_st f29, 1272(r1), 0, qr0 +/* 801EBBAC 001E8B0C DB 81 04 E0 */ stfd f28, 0x4e0(r1) +/* 801EBBB0 001E8B10 F3 81 04 E8 */ psq_st f28, 1256(r1), 0, qr0 +/* 801EBBB4 001E8B14 DB 61 04 D0 */ stfd f27, 0x4d0(r1) +/* 801EBBB8 001E8B18 F3 61 04 D8 */ psq_st f27, 1240(r1), 0, qr0 +/* 801EBBBC 001E8B1C DB 41 04 C0 */ stfd f26, 0x4c0(r1) +/* 801EBBC0 001E8B20 F3 41 04 C8 */ psq_st f26, 1224(r1), 0, qr0 +/* 801EBBC4 001E8B24 DB 21 04 B0 */ stfd f25, 0x4b0(r1) +/* 801EBBC8 001E8B28 F3 21 04 B8 */ psq_st f25, 1208(r1), 0, qr0 +/* 801EBBCC 001E8B2C DB 01 04 A0 */ stfd f24, 0x4a0(r1) +/* 801EBBD0 001E8B30 F3 01 04 A8 */ psq_st f24, 1192(r1), 0, qr0 +/* 801EBBD4 001E8B34 DA E1 04 90 */ stfd f23, 0x490(r1) +/* 801EBBD8 001E8B38 F2 E1 04 98 */ psq_st f23, 1176(r1), 0, qr0 +/* 801EBBDC 001E8B3C DA C1 04 80 */ stfd f22, 0x480(r1) +/* 801EBBE0 001E8B40 F2 C1 04 88 */ psq_st f22, 1160(r1), 0, qr0 +/* 801EBBE4 001E8B44 DA A1 04 70 */ stfd f21, 0x470(r1) +/* 801EBBE8 001E8B48 F2 A1 04 78 */ psq_st f21, 1144(r1), 0, qr0 +/* 801EBBEC 001E8B4C DA 81 04 60 */ stfd f20, 0x460(r1) +/* 801EBBF0 001E8B50 F2 81 04 68 */ psq_st f20, 1128(r1), 0, qr0 +/* 801EBBF4 001E8B54 DA 61 04 50 */ stfd f19, 0x450(r1) +/* 801EBBF8 001E8B58 F2 61 04 58 */ psq_st f19, 1112(r1), 0, qr0 +/* 801EBBFC 001E8B5C BF 41 04 38 */ stmw r26, 0x438(r1) +/* 801EBC00 001E8B60 7C DE 33 78 */ mr r30, r6 +/* 801EBC04 001E8B64 88 C6 00 80 */ lbz r6, 0x80(r6) +/* 801EBC08 001E8B68 FE 60 08 90 */ fmr f19, f1 +/* 801EBC0C 001E8B6C 7C 7B 1B 78 */ mr r27, r3 +/* 801EBC10 001E8B70 54 C0 E7 FF */ rlwinm. r0, r6, 0x1c, 0x1f, 0x1f +/* 801EBC14 001E8B74 7C 9C 23 78 */ mr r28, r4 +/* 801EBC18 001E8B78 7C BD 2B 78 */ mr r29, r5 +/* 801EBC1C 001E8B7C 41 82 00 48 */ beq lbl_801EBC64 +/* 801EBC20 001E8B80 80 1B 05 58 */ lwz r0, 0x558(r27) +/* 801EBC24 001E8B84 2C 00 00 01 */ cmpwi r0, 1 +/* 801EBC28 001E8B88 40 82 09 2C */ bne lbl_801EC554 +/* 801EBC2C 001E8B8C C0 5E 00 4C */ lfs f2, 0x4c(r30) +/* 801EBC30 001E8B90 C0 22 AD A0 */ lfs f1, lbl_805ACAC0@sda21(r2) +/* 801EBC34 001E8B94 FC 02 08 40 */ fcmpo cr0, f2, f1 +/* 801EBC38 001E8B98 40 81 09 1C */ ble lbl_801EC554 +/* 801EBC3C 001E8B9C C0 02 AD EC */ lfs f0, lbl_805ACB0C@sda21(r2) +/* 801EBC40 001E8BA0 EC 00 14 FC */ fnmsubs f0, f0, f19, f2 +/* 801EBC44 001E8BA4 D0 1E 00 4C */ stfs f0, 0x4c(r30) +/* 801EBC48 001E8BA8 C0 1E 00 4C */ lfs f0, 0x4c(r30) +/* 801EBC4C 001E8BAC FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801EBC50 001E8BB0 4C 40 13 82 */ cror 2, 0, 2 +/* 801EBC54 001E8BB4 40 82 09 00 */ bne lbl_801EC554 +/* 801EBC58 001E8BB8 7F C4 F3 78 */ mr r4, r30 +/* 801EBC5C 001E8BBC 4B FF C4 49 */ bl sub_801e80a4 +/* 801EBC60 001E8BC0 48 00 08 F4 */ b lbl_801EC554 +lbl_801EBC64: +/* 801EBC64 001E8BC4 54 C0 DF FF */ rlwinm. r0, r6, 0x1b, 0x1f, 0x1f +/* 801EBC68 001E8BC8 41 82 03 2C */ beq lbl_801EBF94 +/* 801EBC6C 001E8BCC C0 02 AD EC */ lfs f0, lbl_805ACB0C@sda21(r2) +/* 801EBC70 001E8BD0 38 7E 00 30 */ addi r3, r30, 0x30 +/* 801EBC74 001E8BD4 C2 DB 03 74 */ lfs f22, 0x374(r27) +/* 801EBC78 001E8BD8 EE A0 05 B2 */ fmuls f21, f0, f22 +/* 801EBC7C 001E8BDC 48 12 8C 3D */ bl Magnitude__9CVector3fCFv +/* 801EBC80 001E8BE0 C3 A2 AD B4 */ lfs f29, lbl_805ACAD4@sda21(r2) +/* 801EBC84 001E8BE4 EE 81 04 F2 */ fmuls f20, f1, f19 +/* 801EBC88 001E8BE8 C0 5E 00 30 */ lfs f2, 0x30(r30) +/* 801EBC8C 001E8BEC 3B A0 00 00 */ li r29, 0 +/* 801EBC90 001E8BF0 EC 7D 08 24 */ fdivs f3, f29, f1 +/* 801EBC94 001E8BF4 C0 3E 00 34 */ lfs f1, 0x34(r30) +/* 801EBC98 001E8BF8 C0 1E 00 38 */ lfs f0, 0x38(r30) +/* 801EBC9C 001E8BFC C3 9E 00 0C */ lfs f28, 0xc(r30) +/* 801EBCA0 001E8C00 C3 7E 00 1C */ lfs f27, 0x1c(r30) +/* 801EBCA4 001E8C04 C3 5E 00 2C */ lfs f26, 0x2c(r30) +/* 801EBCA8 001E8C08 FC 40 10 50 */ fneg f2, f2 +/* 801EBCAC 001E8C0C C3 C2 AD A0 */ lfs f30, lbl_805ACAC0@sda21(r2) +/* 801EBCB0 001E8C10 FC 20 08 50 */ fneg f1, f1 +/* 801EBCB4 001E8C14 C3 E2 AD D0 */ lfs f31, lbl_805ACAF0@sda21(r2) +/* 801EBCB8 001E8C18 FC 00 00 50 */ fneg f0, f0 +/* 801EBCBC 001E8C1C EC 43 00 B2 */ fmuls f2, f3, f2 +/* 801EBCC0 001E8C20 EC 23 00 72 */ fmuls f1, f3, f1 +/* 801EBCC4 001E8C24 EC 03 00 32 */ fmuls f0, f3, f0 +/* 801EBCC8 001E8C28 EF 36 00 B2 */ fmuls f25, f22, f2 +/* 801EBCCC 001E8C2C EF 16 00 72 */ fmuls f24, f22, f1 +/* 801EBCD0 001E8C30 EE F6 00 32 */ fmuls f23, f22, f0 +/* 801EBCD4 001E8C34 48 00 02 38 */ b lbl_801EBF0C +lbl_801EBCD8: +/* 801EBCD8 001E8C38 D3 C1 01 08 */ stfs f30, 0x108(r1) +/* 801EBCDC 001E8C3C 38 61 03 3C */ addi r3, r1, 0x33c +/* 801EBCE0 001E8C40 38 81 01 20 */ addi r4, r1, 0x120 +/* 801EBCE4 001E8C44 38 A1 01 14 */ addi r5, r1, 0x114 +/* 801EBCE8 001E8C48 D3 C1 01 0C */ stfs f30, 0x10c(r1) +/* 801EBCEC 001E8C4C 38 C1 01 08 */ addi r6, r1, 0x108 +/* 801EBCF0 001E8C50 38 E0 FF FF */ li r7, -1 +/* 801EBCF4 001E8C54 D3 A1 01 10 */ stfs f29, 0x110(r1) +/* 801EBCF8 001E8C58 D3 C1 01 14 */ stfs f30, 0x114(r1) +/* 801EBCFC 001E8C5C D3 A1 01 18 */ stfs f29, 0x118(r1) +/* 801EBD00 001E8C60 D3 C1 01 1C */ stfs f30, 0x11c(r1) +/* 801EBD04 001E8C64 D3 A1 01 20 */ stfs f29, 0x120(r1) +/* 801EBD08 001E8C68 D3 C1 01 24 */ stfs f30, 0x124(r1) +/* 801EBD0C 001E8C6C D3 C1 01 28 */ stfs f30, 0x128(r1) +/* 801EBD10 001E8C70 48 0B 6A 19 */ bl __ct__17CCollisionSurfaceFRC9CVector3fRC9CVector3fRC9CVector3fUi +/* 801EBD14 001E8C74 C0 7E 00 34 */ lfs f3, 0x34(r30) +/* 801EBD18 001E8C78 FC 20 A8 90 */ fmr f1, f21 +/* 801EBD1C 001E8C7C C0 5E 00 38 */ lfs f2, 0x38(r30) +/* 801EBD20 001E8C80 7F 63 DB 78 */ mr r3, r27 +/* 801EBD24 001E8C84 C0 1E 00 30 */ lfs f0, 0x30(r30) +/* 801EBD28 001E8C88 EC 73 00 F2 */ fmuls f3, f19, f3 +/* 801EBD2C 001E8C8C EC 53 00 B2 */ fmuls f2, f19, f2 +/* 801EBD30 001E8C90 EC 13 00 32 */ fmuls f0, f19, f0 +/* 801EBD34 001E8C94 7F 84 E3 78 */ mr r4, r28 +/* 801EBD38 001E8C98 EC 7F 00 F2 */ fmuls f3, f31, f3 +/* 801EBD3C 001E8C9C 38 A1 00 FC */ addi r5, r1, 0xfc +/* 801EBD40 001E8CA0 EC 5F 00 B2 */ fmuls f2, f31, f2 +/* 801EBD44 001E8CA4 EC 1F 00 32 */ fmuls f0, f31, f0 +/* 801EBD48 001E8CA8 EC 7B 18 2A */ fadds f3, f27, f3 +/* 801EBD4C 001E8CAC 38 C1 03 3C */ addi r6, r1, 0x33c +/* 801EBD50 001E8CB0 EC 5A 10 2A */ fadds f2, f26, f2 +/* 801EBD54 001E8CB4 EC 1C 00 2A */ fadds f0, f28, f0 +/* 801EBD58 001E8CB8 D0 61 01 8C */ stfs f3, 0x18c(r1) +/* 801EBD5C 001E8CBC D0 01 01 88 */ stfs f0, 0x188(r1) +/* 801EBD60 001E8CC0 80 E1 01 8C */ lwz r7, 0x18c(r1) +/* 801EBD64 001E8CC4 D0 41 01 90 */ stfs f2, 0x190(r1) +/* 801EBD68 001E8CC8 81 01 01 88 */ lwz r8, 0x188(r1) +/* 801EBD6C 001E8CCC 80 01 01 90 */ lwz r0, 0x190(r1) +/* 801EBD70 001E8CD0 91 01 00 FC */ stw r8, 0xfc(r1) +/* 801EBD74 001E8CD4 90 E1 01 00 */ stw r7, 0x100(r1) +/* 801EBD78 001E8CD8 90 01 01 04 */ stw r0, 0x104(r1) +/* 801EBD7C 001E8CDC 48 00 08 55 */ bl FindBestSurface__17CWallCrawlerSwarmFRC19CAreaCollisionCache9CVector3ffR17CCollisionSurface +/* 801EBD80 001E8CE0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801EBD84 001E8CE4 41 82 01 78 */ beq lbl_801EBEFC +/* 801EBD88 001E8CE8 A0 1E 00 7E */ lhz r0, 0x7e(r30) +/* 801EBD8C 001E8CEC 54 00 D6 3F */ rlwinm. r0, r0, 0x1a, 0x18, 0x1f +/* 801EBD90 001E8CF0 40 82 01 6C */ bne lbl_801EBEFC +/* 801EBD94 001E8CF4 80 1B 05 58 */ lwz r0, 0x558(r27) +/* 801EBD98 001E8CF8 2C 00 00 01 */ cmpwi r0, 1 +/* 801EBD9C 001E8CFC 41 82 00 60 */ beq lbl_801EBDFC +/* 801EBDA0 001E8D00 C0 02 AD DC */ lfs f0, lbl_805ACAFC@sda21(r2) +/* 801EBDA4 001E8D04 38 61 00 E4 */ addi r3, r1, 0xe4 +/* 801EBDA8 001E8D08 38 81 03 3C */ addi r4, r1, 0x33c +/* 801EBDAC 001E8D0C D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801EBDB0 001E8D10 C0 5E 00 28 */ lfs f2, 0x28(r30) +/* 801EBDB4 001E8D14 C0 3E 00 18 */ lfs f1, 0x18(r30) +/* 801EBDB8 001E8D18 C0 1E 00 08 */ lfs f0, 8(r30) +/* 801EBDBC 001E8D1C D0 01 00 F0 */ stfs f0, 0xf0(r1) +/* 801EBDC0 001E8D20 D0 21 00 F4 */ stfs f1, 0xf4(r1) +/* 801EBDC4 001E8D24 D0 41 00 F8 */ stfs f2, 0xf8(r1) +/* 801EBDC8 001E8D28 48 0B 68 DD */ bl GetNormal__17CCollisionSurfaceCFv +/* 801EBDCC 001E8D2C 38 61 02 B4 */ addi r3, r1, 0x2b4 +/* 801EBDD0 001E8D30 38 81 00 F0 */ addi r4, r1, 0xf0 +/* 801EBDD4 001E8D34 38 A1 00 E4 */ addi r5, r1, 0xe4 +/* 801EBDD8 001E8D38 38 C1 00 18 */ addi r6, r1, 0x18 +/* 801EBDDC 001E8D3C 48 00 2F D1 */ bl LookAt__F9CVector3f9CVector3ff +/* 801EBDE0 001E8D40 7F C5 F3 78 */ mr r5, r30 +/* 801EBDE4 001E8D44 38 61 02 E4 */ addi r3, r1, 0x2e4 +/* 801EBDE8 001E8D48 38 81 02 B4 */ addi r4, r1, 0x2b4 +/* 801EBDEC 001E8D4C 48 12 71 45 */ bl MultiplyIgnoreTranslation__12CTransform4fCFRC12CTransform4f +/* 801EBDF0 001E8D50 7F C3 F3 78 */ mr r3, r30 +/* 801EBDF4 001E8D54 38 81 02 E4 */ addi r4, r1, 0x2e4 +/* 801EBDF8 001E8D58 48 12 6D 49 */ bl __as__12CTransform4fFRC12CTransform4f +lbl_801EBDFC: +/* 801EBDFC 001E8D5C 38 61 00 D4 */ addi r3, r1, 0xd4 +/* 801EBE00 001E8D60 38 81 03 3C */ addi r4, r1, 0x33c +/* 801EBE04 001E8D64 48 0B 68 31 */ bl GetPlane__17CCollisionSurfaceCFv +/* 801EBE08 001E8D68 C0 C1 00 D8 */ lfs f6, 0xd8(r1) +/* 801EBE0C 001E8D6C 38 60 00 00 */ li r3, 0 +/* 801EBE10 001E8D70 C0 1E 00 1C */ lfs f0, 0x1c(r30) +/* 801EBE14 001E8D74 C0 E1 00 D4 */ lfs f7, 0xd4(r1) +/* 801EBE18 001E8D78 EC 06 00 32 */ fmuls f0, f6, f0 +/* 801EBE1C 001E8D7C C0 5E 00 0C */ lfs f2, 0xc(r30) +/* 801EBE20 001E8D80 C0 A1 00 DC */ lfs f5, 0xdc(r1) +/* 801EBE24 001E8D84 C0 81 00 E0 */ lfs f4, 0xe0(r1) +/* 801EBE28 001E8D88 EC 27 00 BA */ fmadds f1, f7, f2, f0 +/* 801EBE2C 001E8D8C C0 7E 00 2C */ lfs f3, 0x2c(r30) +/* 801EBE30 001E8D90 C0 02 AE 1C */ lfs f0, lbl_805ACB3C@sda21(r2) +/* 801EBE34 001E8D94 D0 E1 01 78 */ stfs f7, 0x178(r1) +/* 801EBE38 001E8D98 EC 25 08 FA */ fmadds f1, f5, f3, f1 +/* 801EBE3C 001E8D9C D0 C1 01 7C */ stfs f6, 0x17c(r1) +/* 801EBE40 001E8DA0 EC 21 20 28 */ fsubs f1, f1, f4 +/* 801EBE44 001E8DA4 D0 A1 01 80 */ stfs f5, 0x180(r1) +/* 801EBE48 001E8DA8 D0 81 01 84 */ stfs f4, 0x184(r1) +/* 801EBE4C 001E8DAC EC 21 B0 28 */ fsubs f1, f1, f22 +/* 801EBE50 001E8DB0 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801EBE54 001E8DB4 FC 00 00 50 */ fneg f0, f0 +/* 801EBE58 001E8DB8 EC 60 01 F2 */ fmuls f3, f0, f7 +/* 801EBE5C 001E8DBC EC 20 01 B2 */ fmuls f1, f0, f6 +/* 801EBE60 001E8DC0 EC 00 01 72 */ fmuls f0, f0, f5 +/* 801EBE64 001E8DC4 EC 42 18 2A */ fadds f2, f2, f3 +/* 801EBE68 001E8DC8 D0 5E 00 0C */ stfs f2, 0xc(r30) +/* 801EBE6C 001E8DCC C0 5E 00 1C */ lfs f2, 0x1c(r30) +/* 801EBE70 001E8DD0 EC 22 08 2A */ fadds f1, f2, f1 +/* 801EBE74 001E8DD4 D0 3E 00 1C */ stfs f1, 0x1c(r30) +/* 801EBE78 001E8DD8 C0 3E 00 2C */ lfs f1, 0x2c(r30) +/* 801EBE7C 001E8DDC EC 01 00 2A */ fadds f0, f1, f0 +/* 801EBE80 001E8DE0 D0 1E 00 2C */ stfs f0, 0x2c(r30) +/* 801EBE84 001E8DE4 98 7E 00 7C */ stb r3, 0x7c(r30) +/* 801EBE88 001E8DE8 88 1E 00 80 */ lbz r0, 0x80(r30) +/* 801EBE8C 001E8DEC 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 801EBE90 001E8DF0 98 1E 00 80 */ stb r0, 0x80(r30) +/* 801EBE94 001E8DF4 80 1B 05 58 */ lwz r0, 0x558(r27) +/* 801EBE98 001E8DF8 2C 00 00 01 */ cmpwi r0, 1 +/* 801EBE9C 001E8DFC 40 82 00 5C */ bne lbl_801EBEF8 +/* 801EBEA0 001E8E00 88 1E 00 80 */ lbz r0, 0x80(r30) +/* 801EBEA4 001E8E04 38 60 00 01 */ li r3, 1 +/* 801EBEA8 001E8E08 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801EBEAC 001E8E0C A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) +/* 801EBEB0 001E8E10 98 1E 00 80 */ stb r0, 0x80(r30) +/* 801EBEB4 001E8E14 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801EBEB8 001E8E18 38 C3 66 A0 */ addi r6, r3, skZero3f@l +/* 801EBEBC 001E8E1C 38 A1 00 C8 */ addi r5, r1, 0xc8 +/* 801EBEC0 001E8E20 C0 1B 01 5C */ lfs f0, 0x15c(r27) +/* 801EBEC4 001E8E24 38 61 00 14 */ addi r3, r1, 0x14 +/* 801EBEC8 001E8E28 38 E0 00 01 */ li r7, 1 +/* 801EBECC 001E8E2C 39 00 00 00 */ li r8, 0 +/* 801EBED0 001E8E30 D0 1E 00 4C */ stfs f0, 0x4c(r30) +/* 801EBED4 001E8E34 81 5B 00 04 */ lwz r10, 4(r27) +/* 801EBED8 001E8E38 C0 5E 00 2C */ lfs f2, 0x2c(r30) +/* 801EBEDC 001E8E3C C0 3E 00 1C */ lfs f1, 0x1c(r30) +/* 801EBEE0 001E8E40 C0 1E 00 0C */ lfs f0, 0xc(r30) +/* 801EBEE4 001E8E44 D0 01 00 C8 */ stfs f0, 0xc8(r1) +/* 801EBEE8 001E8E48 D0 21 00 CC */ stfs f1, 0xcc(r1) +/* 801EBEEC 001E8E4C D0 41 00 D0 */ stfs f2, 0xd0(r1) +/* 801EBEF0 001E8E50 A0 9B 05 5E */ lhz r4, 0x55e(r27) +/* 801EBEF4 001E8E54 48 0F E3 BD */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +lbl_801EBEF8: +/* 801EBEF8 001E8E58 3B A0 00 01 */ li r29, 1 +lbl_801EBEFC: +/* 801EBEFC 001E8E5C EE 94 B0 28 */ fsubs f20, f20, f22 +/* 801EBF00 001E8E60 EF 9C C8 2A */ fadds f28, f28, f25 +/* 801EBF04 001E8E64 EF 7B C0 2A */ fadds f27, f27, f24 +/* 801EBF08 001E8E68 EF 5A B8 2A */ fadds f26, f26, f23 +lbl_801EBF0C: +/* 801EBF0C 001E8E6C FC 14 F0 40 */ fcmpo cr0, f20, f30 +/* 801EBF10 001E8E70 4C 41 13 82 */ cror 2, 1, 2 +/* 801EBF14 001E8E74 40 82 00 0C */ bne lbl_801EBF20 +/* 801EBF18 001E8E78 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 801EBF1C 001E8E7C 41 82 FD BC */ beq lbl_801EBCD8 +lbl_801EBF20: +/* 801EBF20 001E8E80 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 801EBF24 001E8E84 40 82 06 30 */ bne lbl_801EC554 +/* 801EBF28 001E8E88 C0 22 96 A0 */ lfs f1, lbl_805AB3C0@sda21(r2) +/* 801EBF2C 001E8E8C 80 1B 05 58 */ lwz r0, 0x558(r27) +/* 801EBF30 001E8E90 FC 00 08 90 */ fmr f0, f1 +/* 801EBF34 001E8E94 2C 00 00 01 */ cmpwi r0, 1 +/* 801EBF38 001E8E98 40 82 00 0C */ bne lbl_801EBF44 +/* 801EBF3C 001E8E9C C0 02 AE 20 */ lfs f0, lbl_805ACB40@sda21(r2) +/* 801EBF40 001E8EA0 EC 00 00 72 */ fmuls f0, f0, f1 +lbl_801EBF44: +/* 801EBF44 001E8EA4 C0 42 AD A0 */ lfs f2, lbl_805ACAC0@sda21(r2) +/* 801EBF48 001E8EA8 FC 00 00 50 */ fneg f0, f0 +/* 801EBF4C 001E8EAC C0 3E 00 30 */ lfs f1, 0x30(r30) +/* 801EBF50 001E8EB0 EC 53 00 B2 */ fmuls f2, f19, f2 +/* 801EBF54 001E8EB4 EC 13 00 32 */ fmuls f0, f19, f0 +/* 801EBF58 001E8EB8 EC 21 10 2A */ fadds f1, f1, f2 +/* 801EBF5C 001E8EBC D0 3E 00 30 */ stfs f1, 0x30(r30) +/* 801EBF60 001E8EC0 C0 3E 00 34 */ lfs f1, 0x34(r30) +/* 801EBF64 001E8EC4 EC 21 10 2A */ fadds f1, f1, f2 +/* 801EBF68 001E8EC8 D0 3E 00 34 */ stfs f1, 0x34(r30) +/* 801EBF6C 001E8ECC C0 3E 00 38 */ lfs f1, 0x38(r30) +/* 801EBF70 001E8ED0 EC 01 00 2A */ fadds f0, f1, f0 +/* 801EBF74 001E8ED4 D0 1E 00 38 */ stfs f0, 0x38(r30) +/* 801EBF78 001E8ED8 A0 7E 00 7E */ lhz r3, 0x7e(r30) +/* 801EBF7C 001E8EDC 54 64 D6 3F */ rlwinm. r4, r3, 0x1a, 0x18, 0x1f +/* 801EBF80 001E8EE0 41 82 05 D4 */ beq lbl_801EC554 +/* 801EBF84 001E8EE4 38 04 FF FF */ addi r0, r4, -1 +/* 801EBF88 001E8EE8 50 03 34 B2 */ rlwimi r3, r0, 6, 0x12, 0x19 +/* 801EBF8C 001E8EEC B0 7E 00 7E */ sth r3, 0x7e(r30) +/* 801EBF90 001E8EF0 48 00 05 C4 */ b lbl_801EC554 +lbl_801EBF94: +/* 801EBF94 001E8EF4 88 1E 00 7C */ lbz r0, 0x7c(r30) +/* 801EBF98 001E8EF8 28 00 00 1E */ cmplwi r0, 0x1e +/* 801EBF9C 001E8EFC 41 80 00 14 */ blt lbl_801EBFB0 +/* 801EBFA0 001E8F00 38 00 00 00 */ li r0, 0 +/* 801EBFA4 001E8F04 50 06 3E 30 */ rlwimi r6, r0, 7, 0x18, 0x18 +/* 801EBFA8 001E8F08 98 DE 00 80 */ stb r6, 0x80(r30) +/* 801EBFAC 001E8F0C 48 00 05 A8 */ b lbl_801EC554 +lbl_801EBFB0: +/* 801EBFB0 001E8F10 C0 02 AD EC */ lfs f0, lbl_805ACB0C@sda21(r2) +/* 801EBFB4 001E8F14 38 61 03 14 */ addi r3, r1, 0x314 +/* 801EBFB8 001E8F18 C2 DB 03 74 */ lfs f22, 0x374(r27) +/* 801EBFBC 001E8F1C 38 81 00 BC */ addi r4, r1, 0xbc +/* 801EBFC0 001E8F20 C3 DE 00 2C */ lfs f30, 0x2c(r30) +/* 801EBFC4 001E8F24 38 A1 00 B0 */ addi r5, r1, 0xb0 +/* 801EBFC8 001E8F28 C3 BE 00 1C */ lfs f29, 0x1c(r30) +/* 801EBFCC 001E8F2C EE A0 05 B2 */ fmuls f21, f0, f22 +/* 801EBFD0 001E8F30 C2 9E 00 0C */ lfs f20, 0xc(r30) +/* 801EBFD4 001E8F34 38 C1 00 A4 */ addi r6, r1, 0xa4 +/* 801EBFD8 001E8F38 C0 22 AD A0 */ lfs f1, lbl_805ACAC0@sda21(r2) +/* 801EBFDC 001E8F3C 3B E0 00 00 */ li r31, 0 +/* 801EBFE0 001E8F40 C0 02 AD B4 */ lfs f0, lbl_805ACAD4@sda21(r2) +/* 801EBFE4 001E8F44 D0 21 00 A4 */ stfs f1, 0xa4(r1) +/* 801EBFE8 001E8F48 38 E0 FF FF */ li r7, -1 +/* 801EBFEC 001E8F4C D0 21 00 A8 */ stfs f1, 0xa8(r1) +/* 801EBFF0 001E8F50 D0 01 00 AC */ stfs f0, 0xac(r1) +/* 801EBFF4 001E8F54 D0 21 00 B0 */ stfs f1, 0xb0(r1) +/* 801EBFF8 001E8F58 D0 01 00 B4 */ stfs f0, 0xb4(r1) +/* 801EBFFC 001E8F5C D0 21 00 B8 */ stfs f1, 0xb8(r1) +/* 801EC000 001E8F60 D0 01 00 BC */ stfs f0, 0xbc(r1) +/* 801EC004 001E8F64 D0 21 00 C0 */ stfs f1, 0xc0(r1) +/* 801EC008 001E8F68 D0 21 00 C4 */ stfs f1, 0xc4(r1) +/* 801EC00C 001E8F6C 48 0B 67 1D */ bl __ct__17CCollisionSurfaceFRC9CVector3fRC9CVector3fRC9CVector3fUi +/* 801EC010 001E8F70 C0 7E 00 30 */ lfs f3, 0x30(r30) +/* 801EC014 001E8F74 FC 20 A8 90 */ fmr f1, f21 +/* 801EC018 001E8F78 C0 5E 00 34 */ lfs f2, 0x34(r30) +/* 801EC01C 001E8F7C 7F 63 DB 78 */ mr r3, r27 +/* 801EC020 001E8F80 C0 1E 00 38 */ lfs f0, 0x38(r30) +/* 801EC024 001E8F84 EC 73 00 F2 */ fmuls f3, f19, f3 +/* 801EC028 001E8F88 C0 82 AD D0 */ lfs f4, lbl_805ACAF0@sda21(r2) +/* 801EC02C 001E8F8C EC 53 00 B2 */ fmuls f2, f19, f2 +/* 801EC030 001E8F90 7F 84 E3 78 */ mr r4, r28 +/* 801EC034 001E8F94 EC 13 00 32 */ fmuls f0, f19, f0 +/* 801EC038 001E8F98 38 A1 00 98 */ addi r5, r1, 0x98 +/* 801EC03C 001E8F9C EC 64 00 F2 */ fmuls f3, f4, f3 +/* 801EC040 001E8FA0 38 C1 03 14 */ addi r6, r1, 0x314 +/* 801EC044 001E8FA4 EC 44 00 B2 */ fmuls f2, f4, f2 +/* 801EC048 001E8FA8 EC 04 00 32 */ fmuls f0, f4, f0 +/* 801EC04C 001E8FAC EC 74 18 2A */ fadds f3, f20, f3 +/* 801EC050 001E8FB0 EC 5D 10 2A */ fadds f2, f29, f2 +/* 801EC054 001E8FB4 EC 1E 00 2A */ fadds f0, f30, f0 +/* 801EC058 001E8FB8 D0 61 01 6C */ stfs f3, 0x16c(r1) +/* 801EC05C 001E8FBC D0 41 01 70 */ stfs f2, 0x170(r1) +/* 801EC060 001E8FC0 81 01 01 6C */ lwz r8, 0x16c(r1) +/* 801EC064 001E8FC4 D0 01 01 74 */ stfs f0, 0x174(r1) +/* 801EC068 001E8FC8 80 E1 01 70 */ lwz r7, 0x170(r1) +/* 801EC06C 001E8FCC 80 01 01 74 */ lwz r0, 0x174(r1) +/* 801EC070 001E8FD0 91 01 00 98 */ stw r8, 0x98(r1) +/* 801EC074 001E8FD4 90 E1 00 9C */ stw r7, 0x9c(r1) +/* 801EC078 001E8FD8 90 01 00 A0 */ stw r0, 0xa0(r1) +/* 801EC07C 001E8FDC 48 00 05 55 */ bl FindBestSurface__17CWallCrawlerSwarmFRC19CAreaCollisionCache9CVector3ffR17CCollisionSurface +/* 801EC080 001E8FE0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801EC084 001E8FE4 41 82 01 64 */ beq lbl_801EC1E8 +/* 801EC088 001E8FE8 80 A1 03 14 */ lwz r5, 0x314(r1) +/* 801EC08C 001E8FEC 38 61 00 80 */ addi r3, r1, 0x80 +/* 801EC090 001E8FF0 80 01 03 18 */ lwz r0, 0x318(r1) +/* 801EC094 001E8FF4 38 81 03 14 */ addi r4, r1, 0x314 +/* 801EC098 001E8FF8 C0 02 AE 28 */ lfs f0, lbl_805ACB48@sda21(r2) +/* 801EC09C 001E8FFC 90 BE 00 50 */ stw r5, 0x50(r30) +/* 801EC0A0 001E9000 EC 00 04 F2 */ fmuls f0, f0, f19 +/* 801EC0A4 001E9004 C0 22 AE 24 */ lfs f1, lbl_805ACB44@sda21(r2) +/* 801EC0A8 001E9008 90 1E 00 54 */ stw r0, 0x54(r30) +/* 801EC0AC 001E900C 80 01 03 1C */ lwz r0, 0x31c(r1) +/* 801EC0B0 001E9010 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801EC0B4 001E9014 90 1E 00 58 */ stw r0, 0x58(r30) +/* 801EC0B8 001E9018 80 A1 03 20 */ lwz r5, 0x320(r1) +/* 801EC0BC 001E901C 80 01 03 24 */ lwz r0, 0x324(r1) +/* 801EC0C0 001E9020 90 BE 00 5C */ stw r5, 0x5c(r30) +/* 801EC0C4 001E9024 90 1E 00 60 */ stw r0, 0x60(r30) +/* 801EC0C8 001E9028 80 01 03 28 */ lwz r0, 0x328(r1) +/* 801EC0CC 001E902C 90 1E 00 64 */ stw r0, 0x64(r30) +/* 801EC0D0 001E9030 80 A1 03 2C */ lwz r5, 0x32c(r1) +/* 801EC0D4 001E9034 80 01 03 30 */ lwz r0, 0x330(r1) +/* 801EC0D8 001E9038 90 BE 00 68 */ stw r5, 0x68(r30) +/* 801EC0DC 001E903C 90 1E 00 6C */ stw r0, 0x6c(r30) +/* 801EC0E0 001E9040 80 01 03 34 */ lwz r0, 0x334(r1) +/* 801EC0E4 001E9044 90 1E 00 70 */ stw r0, 0x70(r30) +/* 801EC0E8 001E9048 80 01 03 38 */ lwz r0, 0x338(r1) +/* 801EC0EC 001E904C 90 1E 00 74 */ stw r0, 0x74(r30) +/* 801EC0F0 001E9050 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801EC0F4 001E9054 C0 5E 00 28 */ lfs f2, 0x28(r30) +/* 801EC0F8 001E9058 C0 3E 00 18 */ lfs f1, 0x18(r30) +/* 801EC0FC 001E905C C0 1E 00 08 */ lfs f0, 8(r30) +/* 801EC100 001E9060 D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 801EC104 001E9064 D0 21 00 90 */ stfs f1, 0x90(r1) +/* 801EC108 001E9068 D0 41 00 94 */ stfs f2, 0x94(r1) +/* 801EC10C 001E906C 48 0B 65 99 */ bl GetNormal__17CCollisionSurfaceCFv +/* 801EC110 001E9070 38 61 02 54 */ addi r3, r1, 0x254 +/* 801EC114 001E9074 38 81 00 8C */ addi r4, r1, 0x8c +/* 801EC118 001E9078 38 A1 00 80 */ addi r5, r1, 0x80 +/* 801EC11C 001E907C 38 C1 00 10 */ addi r6, r1, 0x10 +/* 801EC120 001E9080 48 00 2C 8D */ bl LookAt__F9CVector3f9CVector3ff +/* 801EC124 001E9084 7F C5 F3 78 */ mr r5, r30 +/* 801EC128 001E9088 38 61 02 84 */ addi r3, r1, 0x284 +/* 801EC12C 001E908C 38 81 02 54 */ addi r4, r1, 0x254 +/* 801EC130 001E9090 48 12 6E 01 */ bl MultiplyIgnoreTranslation__12CTransform4fCFRC12CTransform4f +/* 801EC134 001E9094 7F C3 F3 78 */ mr r3, r30 +/* 801EC138 001E9098 38 81 02 84 */ addi r4, r1, 0x284 +/* 801EC13C 001E909C 48 12 6A 05 */ bl __as__12CTransform4fFRC12CTransform4f +/* 801EC140 001E90A0 38 61 00 70 */ addi r3, r1, 0x70 +/* 801EC144 001E90A4 38 81 03 14 */ addi r4, r1, 0x314 +/* 801EC148 001E90A8 48 0B 64 ED */ bl GetPlane__17CCollisionSurfaceCFv +/* 801EC14C 001E90AC C0 E1 00 74 */ lfs f7, 0x74(r1) +/* 801EC150 001E90B0 C0 1E 00 1C */ lfs f0, 0x1c(r30) +/* 801EC154 001E90B4 C1 01 00 70 */ lfs f8, 0x70(r1) +/* 801EC158 001E90B8 EC 07 00 32 */ fmuls f0, f7, f0 +/* 801EC15C 001E90BC C0 7E 00 0C */ lfs f3, 0xc(r30) +/* 801EC160 001E90C0 C0 C1 00 78 */ lfs f6, 0x78(r1) +/* 801EC164 001E90C4 C0 A1 00 7C */ lfs f5, 0x7c(r1) +/* 801EC168 001E90C8 EC 48 00 FA */ fmadds f2, f8, f3, f0 +/* 801EC16C 001E90CC C0 9E 00 2C */ lfs f4, 0x2c(r30) +/* 801EC170 001E90D0 C0 22 AD D0 */ lfs f1, lbl_805ACAF0@sda21(r2) +/* 801EC174 001E90D4 C0 1B 03 74 */ lfs f0, 0x374(r27) +/* 801EC178 001E90D8 EC 46 11 3A */ fmadds f2, f6, f4, f2 +/* 801EC17C 001E90DC D1 01 01 5C */ stfs f8, 0x15c(r1) +/* 801EC180 001E90E0 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801EC184 001E90E4 D0 E1 01 60 */ stfs f7, 0x160(r1) +/* 801EC188 001E90E8 EC 22 28 28 */ fsubs f1, f2, f5 +/* 801EC18C 001E90EC D0 C1 01 64 */ stfs f6, 0x164(r1) +/* 801EC190 001E90F0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801EC194 001E90F4 D0 A1 01 68 */ stfs f5, 0x168(r1) +/* 801EC198 001E90F8 4C 40 13 82 */ cror 2, 0, 2 +/* 801EC19C 001E90FC 40 82 00 4C */ bne lbl_801EC1E8 +/* 801EC1A0 001E9100 EC 21 B0 28 */ fsubs f1, f1, f22 +/* 801EC1A4 001E9104 C0 02 AE 1C */ lfs f0, lbl_805ACB3C@sda21(r2) +/* 801EC1A8 001E9108 38 00 00 00 */ li r0, 0 +/* 801EC1AC 001E910C 3B E0 00 01 */ li r31, 1 +/* 801EC1B0 001E9110 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801EC1B4 001E9114 FC 00 00 50 */ fneg f0, f0 +/* 801EC1B8 001E9118 EC 40 02 32 */ fmuls f2, f0, f8 +/* 801EC1BC 001E911C EC 20 01 F2 */ fmuls f1, f0, f7 +/* 801EC1C0 001E9120 EC 00 01 B2 */ fmuls f0, f0, f6 +/* 801EC1C4 001E9124 EC 43 10 2A */ fadds f2, f3, f2 +/* 801EC1C8 001E9128 D0 5E 00 0C */ stfs f2, 0xc(r30) +/* 801EC1CC 001E912C C0 5E 00 1C */ lfs f2, 0x1c(r30) +/* 801EC1D0 001E9130 EC 22 08 2A */ fadds f1, f2, f1 +/* 801EC1D4 001E9134 D0 3E 00 1C */ stfs f1, 0x1c(r30) +/* 801EC1D8 001E9138 C0 3E 00 2C */ lfs f1, 0x2c(r30) +/* 801EC1DC 001E913C EC 01 00 2A */ fadds f0, f1, f0 +/* 801EC1E0 001E9140 D0 1E 00 2C */ stfs f0, 0x2c(r30) +/* 801EC1E4 001E9144 98 1E 00 7C */ stb r0, 0x7c(r30) +lbl_801EC1E8: +/* 801EC1E8 001E9148 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 801EC1EC 001E914C 40 82 00 84 */ bne lbl_801EC270 +/* 801EC1F0 001E9150 38 7E 00 30 */ addi r3, r30, 0x30 +/* 801EC1F4 001E9154 48 12 86 C5 */ bl Magnitude__9CVector3fCFv +/* 801EC1F8 001E9158 EC 01 B0 24 */ fdivs f0, f1, f22 +/* 801EC1FC 001E915C 38 61 01 F4 */ addi r3, r1, 0x1f4 +/* 801EC200 001E9160 38 81 00 64 */ addi r4, r1, 0x64 +/* 801EC204 001E9164 38 A1 00 58 */ addi r5, r1, 0x58 +/* 801EC208 001E9168 38 C1 00 0C */ addi r6, r1, 0xc +/* 801EC20C 001E916C EC 00 04 F2 */ fmuls f0, f0, f19 +/* 801EC210 001E9170 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801EC214 001E9174 C0 5E 00 24 */ lfs f2, 0x24(r30) +/* 801EC218 001E9178 C0 3E 00 14 */ lfs f1, 0x14(r30) +/* 801EC21C 001E917C C0 1E 00 04 */ lfs f0, 4(r30) +/* 801EC220 001E9180 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 801EC224 001E9184 D0 21 00 5C */ stfs f1, 0x5c(r1) +/* 801EC228 001E9188 D0 41 00 60 */ stfs f2, 0x60(r1) +/* 801EC22C 001E918C C0 5E 00 28 */ lfs f2, 0x28(r30) +/* 801EC230 001E9190 C0 3E 00 18 */ lfs f1, 0x18(r30) +/* 801EC234 001E9194 C0 1E 00 08 */ lfs f0, 8(r30) +/* 801EC238 001E9198 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 801EC23C 001E919C D0 21 00 68 */ stfs f1, 0x68(r1) +/* 801EC240 001E91A0 D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 801EC244 001E91A4 48 00 2B 69 */ bl LookAt__F9CVector3f9CVector3ff +/* 801EC248 001E91A8 7F C5 F3 78 */ mr r5, r30 +/* 801EC24C 001E91AC 38 61 02 24 */ addi r3, r1, 0x224 +/* 801EC250 001E91B0 38 81 01 F4 */ addi r4, r1, 0x1f4 +/* 801EC254 001E91B4 48 12 6C DD */ bl MultiplyIgnoreTranslation__12CTransform4fCFRC12CTransform4f +/* 801EC258 001E91B8 7F C3 F3 78 */ mr r3, r30 +/* 801EC25C 001E91BC 38 81 02 24 */ addi r4, r1, 0x224 +/* 801EC260 001E91C0 48 12 68 E1 */ bl __as__12CTransform4fFRC12CTransform4f +/* 801EC264 001E91C4 88 7E 00 7C */ lbz r3, 0x7c(r30) +/* 801EC268 001E91C8 38 03 00 01 */ addi r0, r3, 1 +/* 801EC26C 001E91CC 98 1E 00 7C */ stb r0, 0x7c(r30) +lbl_801EC270: +/* 801EC270 001E91D0 38 00 00 00 */ li r0, 0 +/* 801EC274 001E91D4 7F 63 DB 78 */ mr r3, r27 +/* 801EC278 001E91D8 90 01 03 64 */ stw r0, 0x364(r1) +/* 801EC27C 001E91DC 7F C4 F3 78 */ mr r4, r30 +/* 801EC280 001E91E0 38 A1 03 64 */ addi r5, r1, 0x364 +/* 801EC284 001E91E4 C0 3B 01 3C */ lfs f1, 0x13c(r27) +/* 801EC288 001E91E8 4B FF CF C5 */ bl "BuildBoidNearList__17CWallCrawlerSwarmFRCQ217CWallCrawlerSwarm5CBoidfRQ24rstl48reserved_vector" +/* 801EC28C 001E91EC C0 62 AD AC */ lfs f3, lbl_805ACACC@sda21(r2) +/* 801EC290 001E91F0 3B 40 00 00 */ li r26, 0 +/* 801EC294 001E91F4 C0 5E 00 14 */ lfs f2, 0x14(r30) +/* 801EC298 001E91F8 3B 80 00 00 */ li r28, 0 +/* 801EC29C 001E91FC C0 3E 00 24 */ lfs f1, 0x24(r30) +/* 801EC2A0 001E9200 C0 1E 00 04 */ lfs f0, 4(r30) +/* 801EC2A4 001E9204 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 801EC2A8 001E9208 EC 23 00 72 */ fmuls f1, f3, f1 +/* 801EC2AC 001E920C C2 82 AE 30 */ lfs f20, lbl_805ACB50@sda21(r2) +/* 801EC2B0 001E9210 EC 03 00 32 */ fmuls f0, f3, f0 +/* 801EC2B4 001E9214 D0 41 01 54 */ stfs f2, 0x154(r1) +/* 801EC2B8 001E9218 D0 01 01 50 */ stfs f0, 0x150(r1) +/* 801EC2BC 001E921C D0 21 01 58 */ stfs f1, 0x158(r1) +lbl_801EC2C0: +/* 801EC2C0 001E9220 28 1A 00 07 */ cmplwi r26, 7 +/* 801EC2C4 001E9224 41 81 01 44 */ bgt lbl_801EC408 +/* 801EC2C8 001E9228 3C 60 80 3E */ lis r3, lbl_803E6374@ha +/* 801EC2CC 001E922C 38 63 63 74 */ addi r3, r3, lbl_803E6374@l +/* 801EC2D0 001E9230 7C 03 E0 2E */ lwzx r0, r3, r28 +/* 801EC2D4 001E9234 7C 09 03 A6 */ mtctr r0 +/* 801EC2D8 001E9238 4E 80 04 20 */ bctr +/* 801EC2DC 001E923C 83 FB 04 EC */ lwz r31, 0x4ec(r27) +/* 801EC2E0 001E9240 48 00 00 74 */ b lbl_801EC354 +lbl_801EC2E4: +/* 801EC2E4 001E9244 C0 5F 00 04 */ lfs f2, 4(r31) +/* 801EC2E8 001E9248 C0 1E 00 1C */ lfs f0, 0x1c(r30) +/* 801EC2EC 001E924C C0 3F 00 00 */ lfs f1, 0(r31) +/* 801EC2F0 001E9250 EC C2 00 28 */ fsubs f6, f2, f0 +/* 801EC2F4 001E9254 C0 1E 00 0C */ lfs f0, 0xc(r30) +/* 801EC2F8 001E9258 C0 7F 00 08 */ lfs f3, 8(r31) +/* 801EC2FC 001E925C EC 81 00 28 */ fsubs f4, f1, f0 +/* 801EC300 001E9260 C0 1E 00 2C */ lfs f0, 0x2c(r30) +/* 801EC304 001E9264 EC 46 01 B2 */ fmuls f2, f6, f6 +/* 801EC308 001E9268 EC A3 00 28 */ fsubs f5, f3, f0 +/* 801EC30C 001E926C C0 3F 00 0C */ lfs f1, 0xc(r31) +/* 801EC310 001E9270 EC 64 01 32 */ fmuls f3, f4, f4 +/* 801EC314 001E9274 EC 01 00 72 */ fmuls f0, f1, f1 +/* 801EC318 001E9278 D0 81 00 4C */ stfs f4, 0x4c(r1) +/* 801EC31C 001E927C EC 85 01 72 */ fmuls f4, f5, f5 +/* 801EC320 001E9280 EC 43 10 2A */ fadds f2, f3, f2 +/* 801EC324 001E9284 D0 C1 00 50 */ stfs f6, 0x50(r1) +/* 801EC328 001E9288 D0 A1 00 54 */ stfs f5, 0x54(r1) +/* 801EC32C 001E928C EC 44 10 2A */ fadds f2, f4, f2 +/* 801EC330 001E9290 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801EC334 001E9294 40 80 00 1C */ bge lbl_801EC350 +/* 801EC338 001E9298 C0 42 AE 2C */ lfs f2, lbl_805ACB4C@sda21(r2) +/* 801EC33C 001E929C 7F 63 DB 78 */ mr r3, r27 +/* 801EC340 001E92A0 7F C4 F3 78 */ mr r4, r30 +/* 801EC344 001E92A4 7F E5 FB 78 */ mr r5, r31 +/* 801EC348 001E92A8 38 C1 01 50 */ addi r6, r1, 0x150 +/* 801EC34C 001E92AC 4B FF CD 21 */ bl ApplySeparation__17CWallCrawlerSwarmFRQ217CWallCrawlerSwarm5CBoidRC9CVector3fffR9CVector3f +lbl_801EC350: +/* 801EC350 001E92B0 3B FF 00 10 */ addi r31, r31, 0x10 +lbl_801EC354: +/* 801EC354 001E92B4 80 1B 04 E4 */ lwz r0, 0x4e4(r27) +/* 801EC358 001E92B8 80 7B 04 EC */ lwz r3, 0x4ec(r27) +/* 801EC35C 001E92BC 54 00 20 36 */ slwi r0, r0, 4 +/* 801EC360 001E92C0 7C 03 02 14 */ add r0, r3, r0 +/* 801EC364 001E92C4 7C 1F 00 40 */ cmplw r31, r0 +/* 801EC368 001E92C8 40 82 FF 7C */ bne lbl_801EC2E4 +/* 801EC36C 001E92CC 48 00 00 9C */ b lbl_801EC408 +/* 801EC370 001E92D0 7F 63 DB 78 */ mr r3, r27 +/* 801EC374 001E92D4 7F C4 F3 78 */ mr r4, r30 +/* 801EC378 001E92D8 38 A1 03 64 */ addi r5, r1, 0x364 +/* 801EC37C 001E92DC 38 C1 01 50 */ addi r6, r1, 0x150 +/* 801EC380 001E92E0 4B FF CE 09 */ bl "ApplySeparation__17CWallCrawlerSwarmFRQ217CWallCrawlerSwarm5CBoidRCQ24rstl48reserved_vectorR9CVector3f" +/* 801EC384 001E92E4 48 00 00 84 */ b lbl_801EC408 +/* 801EC388 001E92E8 7F 63 DB 78 */ mr r3, r27 +/* 801EC38C 001E92EC 7F C4 F3 78 */ mr r4, r30 +/* 801EC390 001E92F0 7F A5 EB 78 */ mr r5, r29 +/* 801EC394 001E92F4 38 C1 01 50 */ addi r6, r1, 0x150 +/* 801EC398 001E92F8 4B FF C6 6D */ bl MoveToWayPoint__17CWallCrawlerSwarmFRQ217CWallCrawlerSwarm5CBoidR13CStateManagerR9CVector3f +/* 801EC39C 001E92FC 48 00 00 6C */ b lbl_801EC408 +/* 801EC3A0 001E9300 7F 63 DB 78 */ mr r3, r27 +/* 801EC3A4 001E9304 7F C4 F3 78 */ mr r4, r30 +/* 801EC3A8 001E9308 38 A1 03 64 */ addi r5, r1, 0x364 +/* 801EC3AC 001E930C 38 C1 01 50 */ addi r6, r1, 0x150 +/* 801EC3B0 001E9310 4B FF CB D5 */ bl "ApplyCohesion__17CWallCrawlerSwarmFRQ217CWallCrawlerSwarm5CBoidRCQ24rstl48reserved_vectorR9CVector3f" +/* 801EC3B4 001E9314 48 00 00 54 */ b lbl_801EC408 +/* 801EC3B8 001E9318 7F 63 DB 78 */ mr r3, r27 +/* 801EC3BC 001E931C 7F C4 F3 78 */ mr r4, r30 +/* 801EC3C0 001E9320 38 A1 03 64 */ addi r5, r1, 0x364 +/* 801EC3C4 001E9324 38 C1 01 50 */ addi r6, r1, 0x150 +/* 801EC3C8 001E9328 4B FF C8 15 */ bl "ApplyAlignment__17CWallCrawlerSwarmFRQ217CWallCrawlerSwarm5CBoidRCQ24rstl48reserved_vectorR9CVector3f" +/* 801EC3CC 001E932C 48 00 00 3C */ b lbl_801EC408 +/* 801EC3D0 001E9330 80 FD 08 4C */ lwz r7, 0x84c(r29) +/* 801EC3D4 001E9334 7F 63 DB 78 */ mr r3, r27 +/* 801EC3D8 001E9338 7F C4 F3 78 */ mr r4, r30 +/* 801EC3DC 001E933C 38 A1 00 40 */ addi r5, r1, 0x40 +/* 801EC3E0 001E9340 C0 47 00 60 */ lfs f2, 0x60(r7) +/* 801EC3E4 001E9344 38 C1 01 50 */ addi r6, r1, 0x150 +/* 801EC3E8 001E9348 C0 27 00 50 */ lfs f1, 0x50(r7) +/* 801EC3EC 001E934C C0 07 00 40 */ lfs f0, 0x40(r7) +/* 801EC3F0 001E9350 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 801EC3F4 001E9354 D0 21 00 44 */ stfs f1, 0x44(r1) +/* 801EC3F8 001E9358 D0 41 00 48 */ stfs f2, 0x48(r1) +/* 801EC3FC 001E935C C0 3B 01 54 */ lfs f1, 0x154(r27) +/* 801EC400 001E9360 C0 5B 01 50 */ lfs f2, 0x150(r27) +/* 801EC404 001E9364 4B FF C9 41 */ bl ApplyAttraction__17CWallCrawlerSwarmFRQ217CWallCrawlerSwarm5CBoidRC9CVector3fffR9CVector3f +lbl_801EC408: +/* 801EC408 001E9368 C0 21 01 50 */ lfs f1, 0x150(r1) +/* 801EC40C 001E936C C0 01 01 54 */ lfs f0, 0x154(r1) +/* 801EC410 001E9370 EC 21 00 72 */ fmuls f1, f1, f1 +/* 801EC414 001E9374 C0 41 01 58 */ lfs f2, 0x158(r1) +/* 801EC418 001E9378 EC 00 00 32 */ fmuls f0, f0, f0 +/* 801EC41C 001E937C EC 42 00 B2 */ fmuls f2, f2, f2 +/* 801EC420 001E9380 EC 01 00 2A */ fadds f0, f1, f0 +/* 801EC424 001E9384 EC 02 00 2A */ fadds f0, f2, f0 +/* 801EC428 001E9388 FC 00 A0 40 */ fcmpo cr0, f0, f20 +/* 801EC42C 001E938C 4C 41 13 82 */ cror 2, 1, 2 +/* 801EC430 001E9390 41 82 00 14 */ beq lbl_801EC444 +/* 801EC434 001E9394 3B 5A 00 01 */ addi r26, r26, 1 +/* 801EC438 001E9398 3B 9C 00 04 */ addi r28, r28, 4 +/* 801EC43C 001E939C 2C 1A 00 08 */ cmpwi r26, 8 +/* 801EC440 001E93A0 41 80 FE 80 */ blt lbl_801EC2C0 +lbl_801EC444: +/* 801EC444 001E93A4 C0 5E 00 28 */ lfs f2, 0x28(r30) +/* 801EC448 001E93A8 7F 64 DB 78 */ mr r4, r27 +/* 801EC44C 001E93AC C0 3E 00 18 */ lfs f1, 0x18(r30) +/* 801EC450 001E93B0 38 61 00 34 */ addi r3, r1, 0x34 +/* 801EC454 001E93B4 C0 1E 00 08 */ lfs f0, 8(r30) +/* 801EC458 001E93B8 38 A1 01 50 */ addi r5, r1, 0x150 +/* 801EC45C 001E93BC 38 C1 00 28 */ addi r6, r1, 0x28 +/* 801EC460 001E93C0 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 801EC464 001E93C4 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 801EC468 001E93C8 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 801EC46C 001E93CC 48 00 09 29 */ bl ProjectVectorToPlane__17CWallCrawlerSwarmFRC9CVector3fRC9CVector3f +/* 801EC470 001E93D0 C0 41 00 34 */ lfs f2, 0x34(r1) +/* 801EC474 001E93D4 38 61 00 1C */ addi r3, r1, 0x1c +/* 801EC478 001E93D8 C0 21 00 38 */ lfs f1, 0x38(r1) +/* 801EC47C 001E93DC 38 81 01 44 */ addi r4, r1, 0x144 +/* 801EC480 001E93E0 C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 801EC484 001E93E4 D0 41 01 44 */ stfs f2, 0x144(r1) +/* 801EC488 001E93E8 D0 21 01 48 */ stfs f1, 0x148(r1) +/* 801EC48C 001E93EC D0 01 01 4C */ stfs f0, 0x14c(r1) +/* 801EC490 001E93F0 C0 5E 00 24 */ lfs f2, 0x24(r30) +/* 801EC494 001E93F4 C0 3E 00 14 */ lfs f1, 0x14(r30) +/* 801EC498 001E93F8 C0 1E 00 04 */ lfs f0, 4(r30) +/* 801EC49C 001E93FC D0 01 01 38 */ stfs f0, 0x138(r1) +/* 801EC4A0 001E9400 D0 21 01 3C */ stfs f1, 0x13c(r1) +/* 801EC4A4 001E9404 D0 41 01 40 */ stfs f2, 0x140(r1) +/* 801EC4A8 001E9408 48 12 83 A9 */ bl AsNormalized__9CVector3fCFv +/* 801EC4AC 001E940C C0 02 AD DC */ lfs f0, lbl_805ACAFC@sda21(r2) +/* 801EC4B0 001E9410 38 61 01 94 */ addi r3, r1, 0x194 +/* 801EC4B4 001E9414 C0 61 00 1C */ lfs f3, 0x1c(r1) +/* 801EC4B8 001E9418 38 81 01 38 */ addi r4, r1, 0x138 +/* 801EC4BC 001E941C EC 00 04 F2 */ fmuls f0, f0, f19 +/* 801EC4C0 001E9420 C0 41 00 20 */ lfs f2, 0x20(r1) +/* 801EC4C4 001E9424 C0 21 00 24 */ lfs f1, 0x24(r1) +/* 801EC4C8 001E9428 38 A1 01 2C */ addi r5, r1, 0x12c +/* 801EC4CC 001E942C D0 61 01 2C */ stfs f3, 0x12c(r1) +/* 801EC4D0 001E9430 38 C1 00 08 */ addi r6, r1, 8 +/* 801EC4D4 001E9434 D0 41 01 30 */ stfs f2, 0x130(r1) +/* 801EC4D8 001E9438 D0 21 01 34 */ stfs f1, 0x134(r1) +/* 801EC4DC 001E943C D0 01 00 08 */ stfs f0, 8(r1) +/* 801EC4E0 001E9440 48 00 28 CD */ bl LookAt__F9CVector3f9CVector3ff +/* 801EC4E4 001E9444 7F C5 F3 78 */ mr r5, r30 +/* 801EC4E8 001E9448 38 61 01 C4 */ addi r3, r1, 0x1c4 +/* 801EC4EC 001E944C 38 81 01 94 */ addi r4, r1, 0x194 +/* 801EC4F0 001E9450 48 12 6A 41 */ bl MultiplyIgnoreTranslation__12CTransform4fCFRC12CTransform4f +/* 801EC4F4 001E9454 7F C3 F3 78 */ mr r3, r30 +/* 801EC4F8 001E9458 38 81 01 C4 */ addi r4, r1, 0x1c4 +/* 801EC4FC 001E945C 48 12 66 45 */ bl __as__12CTransform4fFRC12CTransform4f +/* 801EC500 001E9460 80 A1 03 64 */ lwz r5, 0x364(r1) +/* 801EC504 001E9464 38 60 00 00 */ li r3, 0 +/* 801EC508 001E9468 2C 05 00 00 */ cmpwi r5, 0 +/* 801EC50C 001E946C 40 81 00 40 */ ble lbl_801EC54C +/* 801EC510 001E9470 2C 05 00 08 */ cmpwi r5, 8 +/* 801EC514 001E9474 38 85 FF F8 */ addi r4, r5, -8 +/* 801EC518 001E9478 40 81 00 20 */ ble lbl_801EC538 +/* 801EC51C 001E947C 38 04 00 07 */ addi r0, r4, 7 +/* 801EC520 001E9480 54 00 E8 FE */ srwi r0, r0, 3 +/* 801EC524 001E9484 7C 09 03 A6 */ mtctr r0 +/* 801EC528 001E9488 2C 04 00 00 */ cmpwi r4, 0 +/* 801EC52C 001E948C 40 81 00 0C */ ble lbl_801EC538 +lbl_801EC530: +/* 801EC530 001E9490 38 63 00 08 */ addi r3, r3, 8 +/* 801EC534 001E9494 42 00 FF FC */ bdnz lbl_801EC530 +lbl_801EC538: +/* 801EC538 001E9498 7C 03 28 50 */ subf r0, r3, r5 +/* 801EC53C 001E949C 7C 09 03 A6 */ mtctr r0 +/* 801EC540 001E94A0 7C 03 28 00 */ cmpw r3, r5 +/* 801EC544 001E94A4 40 80 00 08 */ bge lbl_801EC54C +lbl_801EC548: +/* 801EC548 001E94A8 42 00 00 00 */ bdnz lbl_801EC548 +lbl_801EC54C: +/* 801EC54C 001E94AC 38 00 00 00 */ li r0, 0 +/* 801EC550 001E94B0 90 01 03 64 */ stw r0, 0x364(r1) +lbl_801EC554: +/* 801EC554 001E94B4 E3 E1 05 18 */ psq_l f31, 1304(r1), 0, qr0 +/* 801EC558 001E94B8 CB E1 05 10 */ lfd f31, 0x510(r1) +/* 801EC55C 001E94BC E3 C1 05 08 */ psq_l f30, 1288(r1), 0, qr0 +/* 801EC560 001E94C0 CB C1 05 00 */ lfd f30, 0x500(r1) +/* 801EC564 001E94C4 E3 A1 04 F8 */ psq_l f29, 1272(r1), 0, qr0 +/* 801EC568 001E94C8 CB A1 04 F0 */ lfd f29, 0x4f0(r1) +/* 801EC56C 001E94CC E3 81 04 E8 */ psq_l f28, 1256(r1), 0, qr0 +/* 801EC570 001E94D0 CB 81 04 E0 */ lfd f28, 0x4e0(r1) +/* 801EC574 001E94D4 E3 61 04 D8 */ psq_l f27, 1240(r1), 0, qr0 +/* 801EC578 001E94D8 CB 61 04 D0 */ lfd f27, 0x4d0(r1) +/* 801EC57C 001E94DC E3 41 04 C8 */ psq_l f26, 1224(r1), 0, qr0 +/* 801EC580 001E94E0 CB 41 04 C0 */ lfd f26, 0x4c0(r1) +/* 801EC584 001E94E4 E3 21 04 B8 */ psq_l f25, 1208(r1), 0, qr0 +/* 801EC588 001E94E8 CB 21 04 B0 */ lfd f25, 0x4b0(r1) +/* 801EC58C 001E94EC E3 01 04 A8 */ psq_l f24, 1192(r1), 0, qr0 +/* 801EC590 001E94F0 CB 01 04 A0 */ lfd f24, 0x4a0(r1) +/* 801EC594 001E94F4 E2 E1 04 98 */ psq_l f23, 1176(r1), 0, qr0 +/* 801EC598 001E94F8 CA E1 04 90 */ lfd f23, 0x490(r1) +/* 801EC59C 001E94FC E2 C1 04 88 */ psq_l f22, 1160(r1), 0, qr0 +/* 801EC5A0 001E9500 CA C1 04 80 */ lfd f22, 0x480(r1) +/* 801EC5A4 001E9504 E2 A1 04 78 */ psq_l f21, 1144(r1), 0, qr0 +/* 801EC5A8 001E9508 CA A1 04 70 */ lfd f21, 0x470(r1) +/* 801EC5AC 001E950C E2 81 04 68 */ psq_l f20, 1128(r1), 0, qr0 +/* 801EC5B0 001E9510 CA 81 04 60 */ lfd f20, 0x460(r1) +/* 801EC5B4 001E9514 E2 61 04 58 */ psq_l f19, 1112(r1), 0, qr0 +/* 801EC5B8 001E9518 CA 61 04 50 */ lfd f19, 0x450(r1) +/* 801EC5BC 001E951C BB 41 04 38 */ lmw r26, 0x438(r1) +/* 801EC5C0 001E9520 80 01 05 24 */ lwz r0, 0x524(r1) +/* 801EC5C4 001E9524 7C 08 03 A6 */ mtlr r0 +/* 801EC5C8 001E9528 38 21 05 20 */ addi r1, r1, 0x520 +/* 801EC5CC 001E952C 4E 80 00 20 */ blr + +.global FindBestSurface__17CWallCrawlerSwarmFRC19CAreaCollisionCache9CVector3ffR17CCollisionSurface +FindBestSurface__17CWallCrawlerSwarmFRC19CAreaCollisionCache9CVector3ffR17CCollisionSurface: +/* 801EC5D0 001E9530 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 801EC5D4 001E9534 7C 08 02 A6 */ mflr r0 +/* 801EC5D8 001E9538 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 801EC5DC 001E953C DB E1 00 C0 */ stfd f31, 0xc0(r1) +/* 801EC5E0 001E9540 F3 E1 00 C8 */ psq_st f31, 200(r1), 0, qr0 +/* 801EC5E4 001E9544 DB C1 00 B0 */ stfd f30, 0xb0(r1) +/* 801EC5E8 001E9548 F3 C1 00 B8 */ psq_st f30, 184(r1), 0, qr0 +/* 801EC5EC 001E954C BE 41 00 78 */ stmw r18, 0x78(r1) +/* 801EC5F0 001E9550 7C B4 2B 78 */ mr r20, r5 +/* 801EC5F4 001E9554 7C 93 23 78 */ mr r19, r4 +/* 801EC5F8 001E9558 C0 65 00 00 */ lfs f3, 0(r5) +/* 801EC5FC 001E955C EF E1 00 72 */ fmuls f31, f1, f1 +/* 801EC600 001E9560 C0 45 00 04 */ lfs f2, 4(r5) +/* 801EC604 001E9564 7C 72 1B 78 */ mr r18, r3 +/* 801EC608 001E9568 C0 05 00 08 */ lfs f0, 8(r5) +/* 801EC60C 001E956C 7C D5 33 78 */ mr r21, r6 +/* 801EC610 001E9570 D0 61 00 3C */ stfs f3, 0x3c(r1) +/* 801EC614 001E9574 3B B3 00 1C */ addi r29, r19, 0x1c +/* 801EC618 001E9578 3B 60 00 00 */ li r27, 0 +/* 801EC61C 001E957C D0 41 00 40 */ stfs f2, 0x40(r1) +/* 801EC620 001E9580 3B 40 00 00 */ li r26, 0 +/* 801EC624 001E9584 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 801EC628 001E9588 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 801EC62C 001E958C 48 00 01 A8 */ b lbl_801EC7D4 +lbl_801EC630: +/* 801EC630 001E9590 3B DD 00 08 */ addi r30, r29, 8 +/* 801EC634 001E9594 3B 20 00 00 */ li r25, 0 +/* 801EC638 001E9598 48 00 01 88 */ b lbl_801EC7C0 +lbl_801EC63C: +/* 801EC63C 001E959C 7F C4 F3 78 */ mr r4, r30 +/* 801EC640 001E95A0 38 61 00 3C */ addi r3, r1, 0x3c +/* 801EC644 001E95A4 48 0E 8B B9 */ bl Sphere_AABox_Bool__17CCollidableSphereFRC7CSphereRC6CAABox +/* 801EC648 001E95A8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801EC64C 001E95AC 41 82 01 6C */ beq lbl_801EC7B8 +/* 801EC650 001E95B0 7F C4 F3 78 */ mr r4, r30 +/* 801EC654 001E95B4 38 61 00 08 */ addi r3, r1, 8 +/* 801EC658 001E95B8 48 0B 66 E5 */ bl GetTriangleArray__Q212CAreaOctTree4NodeCFv +/* 801EC65C 001E95BC 83 81 00 08 */ lwz r28, 8(r1) +/* 801EC660 001E95C0 3A C1 00 4C */ addi r22, r1, 0x4c +/* 801EC664 001E95C4 83 FE 00 1C */ lwz r31, 0x1c(r30) +/* 801EC668 001E95C8 3A E0 00 00 */ li r23, 0 +/* 801EC66C 001E95CC A3 1C 00 18 */ lhz r24, 0x18(r28) +/* 801EC670 001E95D0 48 00 01 40 */ b lbl_801EC7B0 +lbl_801EC674: +/* 801EC674 001E95D4 A0 BC 00 1A */ lhz r5, 0x1a(r28) +/* 801EC678 001E95D8 7F E4 FB 78 */ mr r4, r31 +/* 801EC67C 001E95DC 38 61 00 4C */ addi r3, r1, 0x4c +/* 801EC680 001E95E0 48 0B 63 B5 */ bl GetMasterListTriangle__12CAreaOctTreeCFUs +/* 801EC684 001E95E4 7E C4 B3 78 */ mr r4, r22 +/* 801EC688 001E95E8 38 61 00 1C */ addi r3, r1, 0x1c +/* 801EC68C 001E95EC 48 0B 5F A9 */ bl GetPlane__17CCollisionSurfaceCFv +/* 801EC690 001E95F0 C0 81 00 20 */ lfs f4, 0x20(r1) +/* 801EC694 001E95F4 C0 14 00 04 */ lfs f0, 4(r20) +/* 801EC698 001E95F8 C0 A1 00 1C */ lfs f5, 0x1c(r1) +/* 801EC69C 001E95FC EC 04 00 32 */ fmuls f0, f4, f0 +/* 801EC6A0 001E9600 C0 34 00 00 */ lfs f1, 0(r20) +/* 801EC6A4 001E9604 C0 61 00 24 */ lfs f3, 0x24(r1) +/* 801EC6A8 001E9608 C0 41 00 28 */ lfs f2, 0x28(r1) +/* 801EC6AC 001E960C EC 05 00 7A */ fmadds f0, f5, f1, f0 +/* 801EC6B0 001E9610 C0 34 00 08 */ lfs f1, 8(r20) +/* 801EC6B4 001E9614 D0 A1 00 2C */ stfs f5, 0x2c(r1) +/* 801EC6B8 001E9618 EC 03 00 7A */ fmadds f0, f3, f1, f0 +/* 801EC6BC 001E961C D0 81 00 30 */ stfs f4, 0x30(r1) +/* 801EC6C0 001E9620 D0 61 00 34 */ stfs f3, 0x34(r1) +/* 801EC6C4 001E9624 EC 00 10 28 */ fsubs f0, f0, f2 +/* 801EC6C8 001E9628 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 801EC6CC 001E962C FC 00 02 10 */ fabs f0, f0 +/* 801EC6D0 001E9630 FF C0 00 18 */ frsp f30, f0 +/* 801EC6D4 001E9634 FC 1E F8 40 */ fcmpo cr0, f30, f31 +/* 801EC6D8 001E9638 40 80 00 D0 */ bge lbl_801EC7A8 +/* 801EC6DC 001E963C 7E 43 93 78 */ mr r3, r18 +/* 801EC6E0 001E9640 7E C4 B3 78 */ mr r4, r22 +/* 801EC6E4 001E9644 7E 85 A3 78 */ mr r5, r20 +/* 801EC6E8 001E9648 38 C1 00 2C */ addi r6, r1, 0x2c +/* 801EC6EC 001E964C 48 00 05 91 */ bl PointOnSurface__17CWallCrawlerSwarmFRC17CCollisionSurfaceRC9CVector3fRC6CPlane +/* 801EC6F0 001E9650 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801EC6F4 001E9654 41 82 00 B4 */ beq lbl_801EC7A8 +/* 801EC6F8 001E9658 C0 82 AD A0 */ lfs f4, lbl_805ACAC0@sda21(r2) +/* 801EC6FC 001E965C FC 04 F0 00 */ fcmpu cr0, f4, f30 +/* 801EC700 001E9660 40 82 00 08 */ bne lbl_801EC708 +/* 801EC704 001E9664 48 00 00 10 */ b lbl_801EC714 +lbl_801EC708: +/* 801EC708 001E9668 FC 00 F0 34 */ frsqrte f0, f30 +/* 801EC70C 001E966C FC 9E 00 32 */ fmul f4, f30, f0 +/* 801EC710 001E9670 FC 80 20 18 */ frsp f4, f4 +lbl_801EC714: +/* 801EC714 001E9674 C0 74 00 00 */ lfs f3, 0(r20) +/* 801EC718 001E9678 FC 00 20 18 */ frsp f0, f4 +/* 801EC71C 001E967C C0 54 00 04 */ lfs f2, 4(r20) +/* 801EC720 001E9680 FF E0 F0 90 */ fmr f31, f30 +/* 801EC724 001E9684 C0 34 00 08 */ lfs f1, 8(r20) +/* 801EC728 001E9688 3B 60 00 01 */ li r27, 1 +/* 801EC72C 001E968C D0 61 00 0C */ stfs f3, 0xc(r1) +/* 801EC730 001E9690 80 61 00 4C */ lwz r3, 0x4c(r1) +/* 801EC734 001E9694 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 801EC738 001E9698 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801EC73C 001E969C D0 21 00 14 */ stfs f1, 0x14(r1) +/* 801EC740 001E96A0 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 801EC744 001E96A4 80 81 00 14 */ lwz r4, 0x14(r1) +/* 801EC748 001E96A8 90 01 00 3C */ stw r0, 0x3c(r1) +/* 801EC74C 001E96AC 80 01 00 50 */ lwz r0, 0x50(r1) +/* 801EC750 001E96B0 90 A1 00 40 */ stw r5, 0x40(r1) +/* 801EC754 001E96B4 90 81 00 44 */ stw r4, 0x44(r1) +/* 801EC758 001E96B8 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 801EC75C 001E96BC 90 75 00 00 */ stw r3, 0(r21) +/* 801EC760 001E96C0 90 15 00 04 */ stw r0, 4(r21) +/* 801EC764 001E96C4 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801EC768 001E96C8 D0 81 00 18 */ stfs f4, 0x18(r1) +/* 801EC76C 001E96CC 90 15 00 08 */ stw r0, 8(r21) +/* 801EC770 001E96D0 80 61 00 58 */ lwz r3, 0x58(r1) +/* 801EC774 001E96D4 80 01 00 5C */ lwz r0, 0x5c(r1) +/* 801EC778 001E96D8 90 75 00 0C */ stw r3, 0xc(r21) +/* 801EC77C 001E96DC 90 15 00 10 */ stw r0, 0x10(r21) +/* 801EC780 001E96E0 80 01 00 60 */ lwz r0, 0x60(r1) +/* 801EC784 001E96E4 90 15 00 14 */ stw r0, 0x14(r21) +/* 801EC788 001E96E8 80 61 00 64 */ lwz r3, 0x64(r1) +/* 801EC78C 001E96EC 80 01 00 68 */ lwz r0, 0x68(r1) +/* 801EC790 001E96F0 90 75 00 18 */ stw r3, 0x18(r21) +/* 801EC794 001E96F4 90 15 00 1C */ stw r0, 0x1c(r21) +/* 801EC798 001E96F8 80 01 00 6C */ lwz r0, 0x6c(r1) +/* 801EC79C 001E96FC 90 15 00 20 */ stw r0, 0x20(r21) +/* 801EC7A0 001E9700 80 01 00 70 */ lwz r0, 0x70(r1) +/* 801EC7A4 001E9704 90 15 00 24 */ stw r0, 0x24(r21) +lbl_801EC7A8: +/* 801EC7A8 001E9708 3B 9C 00 02 */ addi r28, r28, 2 +/* 801EC7AC 001E970C 3A F7 00 01 */ addi r23, r23, 1 +lbl_801EC7B0: +/* 801EC7B0 001E9710 7C 17 C0 00 */ cmpw r23, r24 +/* 801EC7B4 001E9714 41 80 FE C0 */ blt lbl_801EC674 +lbl_801EC7B8: +/* 801EC7B8 001E9718 3B DE 00 24 */ addi r30, r30, 0x24 +/* 801EC7BC 001E971C 3B 39 00 01 */ addi r25, r25, 1 +lbl_801EC7C0: +/* 801EC7C0 001E9720 80 1D 00 04 */ lwz r0, 4(r29) +/* 801EC7C4 001E9724 7C 19 00 00 */ cmpw r25, r0 +/* 801EC7C8 001E9728 41 80 FE 74 */ blt lbl_801EC63C +/* 801EC7CC 001E972C 3B BD 09 0C */ addi r29, r29, 0x90c +/* 801EC7D0 001E9730 3B 5A 00 01 */ addi r26, r26, 1 +lbl_801EC7D4: +/* 801EC7D4 001E9734 80 13 00 18 */ lwz r0, 0x18(r19) +/* 801EC7D8 001E9738 7C 1A 00 00 */ cmpw r26, r0 +/* 801EC7DC 001E973C 41 80 FE 54 */ blt lbl_801EC630 +/* 801EC7E0 001E9740 7F 63 DB 78 */ mr r3, r27 +/* 801EC7E4 001E9744 E3 E1 00 C8 */ psq_l f31, 200(r1), 0, qr0 +/* 801EC7E8 001E9748 CB E1 00 C0 */ lfd f31, 0xc0(r1) +/* 801EC7EC 001E974C E3 C1 00 B8 */ psq_l f30, 184(r1), 0, qr0 +/* 801EC7F0 001E9750 CB C1 00 B0 */ lfd f30, 0xb0(r1) +/* 801EC7F4 001E9754 BA 41 00 78 */ lmw r18, 0x78(r1) +/* 801EC7F8 001E9758 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 801EC7FC 001E975C 7C 08 03 A6 */ mtlr r0 +/* 801EC800 001E9760 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 801EC804 001E9764 4E 80 00 20 */ blr + +.global FindBestCollisionInBox__17CWallCrawlerSwarmFR13CStateManagerRC9CVector3f +FindBestCollisionInBox__17CWallCrawlerSwarmFR13CStateManagerRC9CVector3f: +/* 801EC808 001E9768 94 21 E3 30 */ stwu r1, -0x1cd0(r1) +/* 801EC80C 001E976C 7C 08 02 A6 */ mflr r0 +/* 801EC810 001E9770 90 01 1C D4 */ stw r0, 0x1cd4(r1) +/* 801EC814 001E9774 38 00 1C C8 */ li r0, 0x1cc8 +/* 801EC818 001E9778 DB E1 1C C0 */ stfd f31, 0x1cc0(r1) +/* 801EC81C 001E977C 13 E1 00 0E */ psq_stx f31, r1, r0, 0, qr0 +/* 801EC820 001E9780 38 00 1C B8 */ li r0, 0x1cb8 +/* 801EC824 001E9784 DB C1 1C B0 */ stfd f30, 0x1cb0(r1) +/* 801EC828 001E9788 13 C1 00 0E */ psq_stx f30, r1, r0, 0, qr0 +/* 801EC82C 001E978C 38 00 1C A8 */ li r0, 0x1ca8 +/* 801EC830 001E9790 DB A1 1C A0 */ stfd f29, 0x1ca0(r1) +/* 801EC834 001E9794 13 A1 00 0E */ psq_stx f29, r1, r0, 0, qr0 +/* 801EC838 001E9798 38 00 1C 98 */ li r0, 0x1c98 +/* 801EC83C 001E979C DB 81 1C 90 */ stfd f28, 0x1c90(r1) +/* 801EC840 001E97A0 13 81 00 0E */ psq_stx f28, r1, r0, 0, qr0 +/* 801EC844 001E97A4 38 00 1C 88 */ li r0, 0x1c88 +/* 801EC848 001E97A8 DB 61 1C 80 */ stfd f27, 0x1c80(r1) +/* 801EC84C 001E97AC 13 61 00 0E */ psq_stx f27, r1, r0, 0, qr0 +/* 801EC850 001E97B0 38 00 1C 78 */ li r0, 0x1c78 +/* 801EC854 001E97B4 DB 41 1C 70 */ stfd f26, 0x1c70(r1) +/* 801EC858 001E97B8 13 41 00 0E */ psq_stx f26, r1, r0, 0, qr0 +/* 801EC85C 001E97BC 38 00 1C 68 */ li r0, 0x1c68 +/* 801EC860 001E97C0 DB 21 1C 60 */ stfd f25, 0x1c60(r1) +/* 801EC864 001E97C4 13 21 00 0E */ psq_stx f25, r1, r0, 0, qr0 +/* 801EC868 001E97C8 38 00 1C 58 */ li r0, 0x1c58 +/* 801EC86C 001E97CC DB 01 1C 50 */ stfd f24, 0x1c50(r1) +/* 801EC870 001E97D0 13 01 00 0E */ psq_stx f24, r1, r0, 0, qr0 +/* 801EC874 001E97D4 38 00 1C 48 */ li r0, 0x1c48 +/* 801EC878 001E97D8 DA E1 1C 40 */ stfd f23, 0x1c40(r1) +/* 801EC87C 001E97DC 12 E1 00 0E */ psq_stx f23, r1, r0, 0, qr0 +/* 801EC880 001E97E0 38 00 1C 38 */ li r0, 0x1c38 +/* 801EC884 001E97E4 DA C1 1C 30 */ stfd f22, 0x1c30(r1) +/* 801EC888 001E97E8 12 C1 00 0E */ psq_stx f22, r1, r0, 0, qr0 +/* 801EC88C 001E97EC BF 41 1C 18 */ stmw r26, 0x1c18(r1) +/* 801EC890 001E97F0 C0 22 AD A0 */ lfs f1, lbl_805ACAC0@sda21(r2) +/* 801EC894 001E97F4 7C 7A 1B 78 */ mr r26, r3 +/* 801EC898 001E97F8 C0 02 AD B4 */ lfs f0, lbl_805ACAD4@sda21(r2) +/* 801EC89C 001E97FC 7C 9B 23 78 */ mr r27, r4 +/* 801EC8A0 001E9800 D0 21 00 50 */ stfs f1, 0x50(r1) +/* 801EC8A4 001E9804 7C BC 2B 78 */ mr r28, r5 +/* 801EC8A8 001E9808 7C DD 33 78 */ mr r29, r6 +/* 801EC8AC 001E980C 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 801EC8B0 001E9810 D0 21 00 54 */ stfs f1, 0x54(r1) +/* 801EC8B4 001E9814 38 81 00 68 */ addi r4, r1, 0x68 +/* 801EC8B8 001E9818 38 A1 00 5C */ addi r5, r1, 0x5c +/* 801EC8BC 001E981C 38 C1 00 50 */ addi r6, r1, 0x50 +/* 801EC8C0 001E9820 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 801EC8C4 001E9824 38 E0 FF FF */ li r7, -1 +/* 801EC8C8 001E9828 D0 21 00 5C */ stfs f1, 0x5c(r1) +/* 801EC8CC 001E982C D0 01 00 60 */ stfs f0, 0x60(r1) +/* 801EC8D0 001E9830 D0 21 00 64 */ stfs f1, 0x64(r1) +/* 801EC8D4 001E9834 D0 01 00 68 */ stfs f0, 0x68(r1) +/* 801EC8D8 001E9838 D0 21 00 6C */ stfs f1, 0x6c(r1) +/* 801EC8DC 001E983C D0 21 00 70 */ stfs f1, 0x70(r1) +/* 801EC8E0 001E9840 48 0B 5E 49 */ bl __ct__17CCollisionSurfaceFRC9CVector3fRC9CVector3fRC9CVector3fUi +/* 801EC8E4 001E9844 7F 64 DB 78 */ mr r4, r27 +/* 801EC8E8 001E9848 38 61 00 74 */ addi r3, r1, 0x74 +/* 801EC8EC 001E984C 48 00 05 B1 */ bl GetBoundingBox__17CWallCrawlerSwarmCFv +/* 801EC8F0 001E9850 C0 61 00 80 */ lfs f3, 0x80(r1) +/* 801EC8F4 001E9854 3B E1 00 E4 */ addi r31, r1, 0xe4 +/* 801EC8F8 001E9858 C0 41 00 74 */ lfs f2, 0x74(r1) +/* 801EC8FC 001E985C 3B DF 00 04 */ addi r30, r31, 4 +/* 801EC900 001E9860 C0 21 00 84 */ lfs f1, 0x84(r1) +/* 801EC904 001E9864 C0 01 00 78 */ lfs f0, 0x78(r1) +/* 801EC908 001E9868 EC 63 10 28 */ fsubs f3, f3, f2 +/* 801EC90C 001E986C C0 82 AD B0 */ lfs f4, lbl_805ACAD0@sda21(r2) +/* 801EC910 001E9870 EC 41 00 28 */ fsubs f2, f1, f0 +/* 801EC914 001E9874 C3 22 AD A8 */ lfs f25, lbl_805ACAC8@sda21(r2) +/* 801EC918 001E9878 C0 21 00 88 */ lfs f1, 0x88(r1) +/* 801EC91C 001E987C EF E4 00 F2 */ fmuls f31, f4, f3 +/* 801EC920 001E9880 C0 01 00 7C */ lfs f0, 0x7c(r1) +/* 801EC924 001E9884 FE E0 C8 90 */ fmr f23, f25 +/* 801EC928 001E9888 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801EC92C 001E988C C2 C2 AD EC */ lfs f22, lbl_805ACB0C@sda21(r2) +/* 801EC930 001E9890 EF C4 00 B2 */ fmuls f30, f4, f2 +/* 801EC934 001E9894 C3 02 AD B4 */ lfs f24, lbl_805ACAD4@sda21(r2) +/* 801EC938 001E9898 EF A4 00 32 */ fmuls f29, f4, f0 +/* 801EC93C 001E989C 48 00 02 5C */ b lbl_801ECB98 +lbl_801EC940: +/* 801EC940 001E98A0 EF 99 07 F2 */ fmuls f28, f25, f31 +/* 801EC944 001E98A4 C0 1D 00 00 */ lfs f0, 0(r29) +/* 801EC948 001E98A8 EF 79 07 B2 */ fmuls f27, f25, f30 +/* 801EC94C 001E98AC C0 7D 00 04 */ lfs f3, 4(r29) +/* 801EC950 001E98B0 EF 59 07 72 */ fmuls f26, f25, f29 +/* 801EC954 001E98B4 C0 5D 00 08 */ lfs f2, 8(r29) +/* 801EC958 001E98B8 EC A3 D8 2A */ fadds f5, f3, f27 +/* 801EC95C 001E98BC D3 81 00 20 */ stfs f28, 0x20(r1) +/* 801EC960 001E98C0 EC 82 D0 2A */ fadds f4, f2, f26 +/* 801EC964 001E98C4 38 61 00 8C */ addi r3, r1, 0x8c +/* 801EC968 001E98C8 EC 20 E0 2A */ fadds f1, f0, f28 +/* 801EC96C 001E98CC D3 61 00 24 */ stfs f27, 0x24(r1) +/* 801EC970 001E98D0 EC 63 D8 28 */ fsubs f3, f3, f27 +/* 801EC974 001E98D4 D3 41 00 28 */ stfs f26, 0x28(r1) +/* 801EC978 001E98D8 EC 42 D0 28 */ fsubs f2, f2, f26 +/* 801EC97C 001E98DC 38 81 00 44 */ addi r4, r1, 0x44 +/* 801EC980 001E98E0 EC 00 E0 28 */ fsubs f0, f0, f28 +/* 801EC984 001E98E4 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 801EC988 001E98E8 D0 A1 00 30 */ stfs f5, 0x30(r1) +/* 801EC98C 001E98EC 38 A1 00 2C */ addi r5, r1, 0x2c +/* 801EC990 001E98F0 D0 81 00 34 */ stfs f4, 0x34(r1) +/* 801EC994 001E98F4 D3 81 00 38 */ stfs f28, 0x38(r1) +/* 801EC998 001E98F8 D3 61 00 3C */ stfs f27, 0x3c(r1) +/* 801EC99C 001E98FC D3 41 00 40 */ stfs f26, 0x40(r1) +/* 801EC9A0 001E9900 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 801EC9A4 001E9904 D0 61 00 48 */ stfs f3, 0x48(r1) +/* 801EC9A8 001E9908 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 801EC9AC 001E990C 48 14 BB 5D */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801EC9B0 001E9910 38 61 00 CC */ addi r3, r1, 0xcc +/* 801EC9B4 001E9914 38 81 00 8C */ addi r4, r1, 0x8c +/* 801EC9B8 001E9918 48 0B 70 D9 */ bl __ct__19CAreaCollisionCacheFRC6CAABox +/* 801EC9BC 001E991C 7F 83 E3 78 */ mr r3, r28 +/* 801EC9C0 001E9920 38 81 00 CC */ addi r4, r1, 0xcc +/* 801EC9C4 001E9924 4B F9 7D 01 */ bl BuildAreaCollisionCache__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCache +/* 801EC9C8 001E9928 80 BD 00 00 */ lwz r5, 0(r29) +/* 801EC9CC 001E992C 38 61 00 08 */ addi r3, r1, 8 +/* 801EC9D0 001E9930 80 9D 00 04 */ lwz r4, 4(r29) +/* 801EC9D4 001E9934 80 1D 00 08 */ lwz r0, 8(r29) +/* 801EC9D8 001E9938 D3 81 00 08 */ stfs f28, 8(r1) +/* 801EC9DC 001E993C D3 61 00 0C */ stfs f27, 0xc(r1) +/* 801EC9E0 001E9940 D3 41 00 10 */ stfs f26, 0x10(r1) +/* 801EC9E4 001E9944 90 A1 00 14 */ stw r5, 0x14(r1) +/* 801EC9E8 001E9948 90 81 00 18 */ stw r4, 0x18(r1) +/* 801EC9EC 001E994C 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801EC9F0 001E9950 48 12 7E C9 */ bl Magnitude__9CVector3fCFv +/* 801EC9F4 001E9954 EC 36 00 72 */ fmuls f1, f22, f1 +/* 801EC9F8 001E9958 7F 63 DB 78 */ mr r3, r27 +/* 801EC9FC 001E995C 38 81 00 CC */ addi r4, r1, 0xcc +/* 801ECA00 001E9960 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801ECA04 001E9964 38 C1 00 A4 */ addi r6, r1, 0xa4 +/* 801ECA08 001E9968 4B FF FB C9 */ bl FindBestSurface__17CWallCrawlerSwarmFRC19CAreaCollisionCache9CVector3ffR17CCollisionSurface +/* 801ECA0C 001E996C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801ECA10 001E9970 41 82 00 EC */ beq lbl_801ECAFC +/* 801ECA14 001E9974 C0 01 00 A4 */ lfs f0, 0xa4(r1) +/* 801ECA18 001E9978 28 1F 00 00 */ cmplwi r31, 0 +/* 801ECA1C 001E997C D0 1A 00 00 */ stfs f0, 0(r26) +/* 801ECA20 001E9980 C0 01 00 A8 */ lfs f0, 0xa8(r1) +/* 801ECA24 001E9984 D0 1A 00 04 */ stfs f0, 4(r26) +/* 801ECA28 001E9988 C0 01 00 AC */ lfs f0, 0xac(r1) +/* 801ECA2C 001E998C D0 1A 00 08 */ stfs f0, 8(r26) +/* 801ECA30 001E9990 C0 01 00 B0 */ lfs f0, 0xb0(r1) +/* 801ECA34 001E9994 D0 1A 00 0C */ stfs f0, 0xc(r26) +/* 801ECA38 001E9998 C0 01 00 B4 */ lfs f0, 0xb4(r1) +/* 801ECA3C 001E999C D0 1A 00 10 */ stfs f0, 0x10(r26) +/* 801ECA40 001E99A0 C0 01 00 B8 */ lfs f0, 0xb8(r1) +/* 801ECA44 001E99A4 D0 1A 00 14 */ stfs f0, 0x14(r26) +/* 801ECA48 001E99A8 C0 01 00 BC */ lfs f0, 0xbc(r1) +/* 801ECA4C 001E99AC D0 1A 00 18 */ stfs f0, 0x18(r26) +/* 801ECA50 001E99B0 C0 01 00 C0 */ lfs f0, 0xc0(r1) +/* 801ECA54 001E99B4 D0 1A 00 1C */ stfs f0, 0x1c(r26) +/* 801ECA58 001E99B8 C0 01 00 C4 */ lfs f0, 0xc4(r1) +/* 801ECA5C 001E99BC D0 1A 00 20 */ stfs f0, 0x20(r26) +/* 801ECA60 001E99C0 80 01 00 C8 */ lwz r0, 0xc8(r1) +/* 801ECA64 001E99C4 90 1A 00 24 */ stw r0, 0x24(r26) +/* 801ECA68 001E99C8 41 82 01 88 */ beq lbl_801ECBF0 +/* 801ECA6C 001E99CC 38 60 00 00 */ li r3, 0 +/* 801ECA70 001E99D0 48 00 00 74 */ b lbl_801ECAE4 +lbl_801ECA74: +/* 801ECA74 001E99D4 28 1E 00 00 */ cmplwi r30, 0 +/* 801ECA78 001E99D8 41 82 00 64 */ beq lbl_801ECADC +/* 801ECA7C 001E99DC 34 1E 00 04 */ addic. r0, r30, 4 +/* 801ECA80 001E99E0 41 82 00 5C */ beq lbl_801ECADC +/* 801ECA84 001E99E4 80 DE 00 04 */ lwz r6, 4(r30) +/* 801ECA88 001E99E8 38 80 00 00 */ li r4, 0 +/* 801ECA8C 001E99EC 2C 06 00 00 */ cmpwi r6, 0 +/* 801ECA90 001E99F0 40 81 00 44 */ ble lbl_801ECAD4 +/* 801ECA94 001E99F4 2C 06 00 08 */ cmpwi r6, 8 +/* 801ECA98 001E99F8 38 A6 FF F8 */ addi r5, r6, -8 +/* 801ECA9C 001E99FC 40 81 00 20 */ ble lbl_801ECABC +/* 801ECAA0 001E9A00 38 05 00 07 */ addi r0, r5, 7 +/* 801ECAA4 001E9A04 54 00 E8 FE */ srwi r0, r0, 3 +/* 801ECAA8 001E9A08 7C 09 03 A6 */ mtctr r0 +/* 801ECAAC 001E9A0C 2C 05 00 00 */ cmpwi r5, 0 +/* 801ECAB0 001E9A10 40 81 00 0C */ ble lbl_801ECABC +lbl_801ECAB4: +/* 801ECAB4 001E9A14 38 84 00 08 */ addi r4, r4, 8 +/* 801ECAB8 001E9A18 42 00 FF FC */ bdnz lbl_801ECAB4 +lbl_801ECABC: +/* 801ECABC 001E9A1C 7C 04 30 50 */ subf r0, r4, r6 +/* 801ECAC0 001E9A20 7C 09 03 A6 */ mtctr r0 +/* 801ECAC4 001E9A24 7C 04 30 00 */ cmpw r4, r6 +/* 801ECAC8 001E9A28 40 80 00 0C */ bge lbl_801ECAD4 +lbl_801ECACC: +/* 801ECACC 001E9A2C 38 84 00 01 */ addi r4, r4, 1 +/* 801ECAD0 001E9A30 42 00 FF FC */ bdnz lbl_801ECACC +lbl_801ECAD4: +/* 801ECAD4 001E9A34 38 00 00 00 */ li r0, 0 +/* 801ECAD8 001E9A38 90 1E 00 04 */ stw r0, 4(r30) +lbl_801ECADC: +/* 801ECADC 001E9A3C 3B DE 09 0C */ addi r30, r30, 0x90c +/* 801ECAE0 001E9A40 38 63 00 01 */ addi r3, r3, 1 +lbl_801ECAE4: +/* 801ECAE4 001E9A44 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 801ECAE8 001E9A48 7C 03 00 00 */ cmpw r3, r0 +/* 801ECAEC 001E9A4C 41 80 FF 88 */ blt lbl_801ECA74 +/* 801ECAF0 001E9A50 38 00 00 00 */ li r0, 0 +/* 801ECAF4 001E9A54 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 801ECAF8 001E9A58 48 00 00 F8 */ b lbl_801ECBF0 +lbl_801ECAFC: +/* 801ECAFC 001E9A5C 28 1F 00 00 */ cmplwi r31, 0 +/* 801ECB00 001E9A60 41 82 00 94 */ beq lbl_801ECB94 +/* 801ECB04 001E9A64 7F C6 F3 78 */ mr r6, r30 +/* 801ECB08 001E9A68 38 60 00 00 */ li r3, 0 +/* 801ECB0C 001E9A6C 48 00 00 74 */ b lbl_801ECB80 +lbl_801ECB10: +/* 801ECB10 001E9A70 28 06 00 00 */ cmplwi r6, 0 +/* 801ECB14 001E9A74 41 82 00 64 */ beq lbl_801ECB78 +/* 801ECB18 001E9A78 34 06 00 04 */ addic. r0, r6, 4 +/* 801ECB1C 001E9A7C 41 82 00 5C */ beq lbl_801ECB78 +/* 801ECB20 001E9A80 80 E6 00 04 */ lwz r7, 4(r6) +/* 801ECB24 001E9A84 38 80 00 00 */ li r4, 0 +/* 801ECB28 001E9A88 2C 07 00 00 */ cmpwi r7, 0 +/* 801ECB2C 001E9A8C 40 81 00 44 */ ble lbl_801ECB70 +/* 801ECB30 001E9A90 2C 07 00 08 */ cmpwi r7, 8 +/* 801ECB34 001E9A94 38 A7 FF F8 */ addi r5, r7, -8 +/* 801ECB38 001E9A98 40 81 00 20 */ ble lbl_801ECB58 +/* 801ECB3C 001E9A9C 38 05 00 07 */ addi r0, r5, 7 +/* 801ECB40 001E9AA0 54 00 E8 FE */ srwi r0, r0, 3 +/* 801ECB44 001E9AA4 7C 09 03 A6 */ mtctr r0 +/* 801ECB48 001E9AA8 2C 05 00 00 */ cmpwi r5, 0 +/* 801ECB4C 001E9AAC 40 81 00 0C */ ble lbl_801ECB58 +lbl_801ECB50: +/* 801ECB50 001E9AB0 38 84 00 08 */ addi r4, r4, 8 +/* 801ECB54 001E9AB4 42 00 FF FC */ bdnz lbl_801ECB50 +lbl_801ECB58: +/* 801ECB58 001E9AB8 7C 04 38 50 */ subf r0, r4, r7 +/* 801ECB5C 001E9ABC 7C 09 03 A6 */ mtctr r0 +/* 801ECB60 001E9AC0 7C 04 38 00 */ cmpw r4, r7 +/* 801ECB64 001E9AC4 40 80 00 0C */ bge lbl_801ECB70 +lbl_801ECB68: +/* 801ECB68 001E9AC8 38 84 00 01 */ addi r4, r4, 1 +/* 801ECB6C 001E9ACC 42 00 FF FC */ bdnz lbl_801ECB68 +lbl_801ECB70: +/* 801ECB70 001E9AD0 38 00 00 00 */ li r0, 0 +/* 801ECB74 001E9AD4 90 06 00 04 */ stw r0, 4(r6) +lbl_801ECB78: +/* 801ECB78 001E9AD8 38 C6 09 0C */ addi r6, r6, 0x90c +/* 801ECB7C 001E9ADC 38 63 00 01 */ addi r3, r3, 1 +lbl_801ECB80: +/* 801ECB80 001E9AE0 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 801ECB84 001E9AE4 7C 03 00 00 */ cmpw r3, r0 +/* 801ECB88 001E9AE8 41 80 FF 88 */ blt lbl_801ECB10 +/* 801ECB8C 001E9AEC 38 00 00 00 */ li r0, 0 +/* 801ECB90 001E9AF0 90 01 00 E4 */ stw r0, 0xe4(r1) +lbl_801ECB94: +/* 801ECB94 001E9AF4 EF 39 B8 2A */ fadds f25, f25, f23 +lbl_801ECB98: +/* 801ECB98 001E9AF8 FC 19 C0 40 */ fcmpo cr0, f25, f24 +/* 801ECB9C 001E9AFC 41 80 FD A4 */ blt lbl_801EC940 +/* 801ECBA0 001E9B00 C0 01 00 A4 */ lfs f0, 0xa4(r1) +/* 801ECBA4 001E9B04 D0 1A 00 00 */ stfs f0, 0(r26) +/* 801ECBA8 001E9B08 C0 01 00 A8 */ lfs f0, 0xa8(r1) +/* 801ECBAC 001E9B0C D0 1A 00 04 */ stfs f0, 4(r26) +/* 801ECBB0 001E9B10 C0 01 00 AC */ lfs f0, 0xac(r1) +/* 801ECBB4 001E9B14 D0 1A 00 08 */ stfs f0, 8(r26) +/* 801ECBB8 001E9B18 C0 01 00 B0 */ lfs f0, 0xb0(r1) +/* 801ECBBC 001E9B1C D0 1A 00 0C */ stfs f0, 0xc(r26) +/* 801ECBC0 001E9B20 C0 01 00 B4 */ lfs f0, 0xb4(r1) +/* 801ECBC4 001E9B24 D0 1A 00 10 */ stfs f0, 0x10(r26) +/* 801ECBC8 001E9B28 C0 01 00 B8 */ lfs f0, 0xb8(r1) +/* 801ECBCC 001E9B2C D0 1A 00 14 */ stfs f0, 0x14(r26) +/* 801ECBD0 001E9B30 C0 01 00 BC */ lfs f0, 0xbc(r1) +/* 801ECBD4 001E9B34 D0 1A 00 18 */ stfs f0, 0x18(r26) +/* 801ECBD8 001E9B38 C0 01 00 C0 */ lfs f0, 0xc0(r1) +/* 801ECBDC 001E9B3C D0 1A 00 1C */ stfs f0, 0x1c(r26) +/* 801ECBE0 001E9B40 C0 01 00 C4 */ lfs f0, 0xc4(r1) +/* 801ECBE4 001E9B44 D0 1A 00 20 */ stfs f0, 0x20(r26) +/* 801ECBE8 001E9B48 80 01 00 C8 */ lwz r0, 0xc8(r1) +/* 801ECBEC 001E9B4C 90 1A 00 24 */ stw r0, 0x24(r26) +lbl_801ECBF0: +/* 801ECBF0 001E9B50 38 00 1C C8 */ li r0, 0x1cc8 +/* 801ECBF4 001E9B54 13 E1 00 0C */ psq_lx f31, r1, r0, 0, qr0 +/* 801ECBF8 001E9B58 CB E1 1C C0 */ lfd f31, 0x1cc0(r1) +/* 801ECBFC 001E9B5C 38 00 1C B8 */ li r0, 0x1cb8 +/* 801ECC00 001E9B60 13 C1 00 0C */ psq_lx f30, r1, r0, 0, qr0 +/* 801ECC04 001E9B64 CB C1 1C B0 */ lfd f30, 0x1cb0(r1) +/* 801ECC08 001E9B68 38 00 1C A8 */ li r0, 0x1ca8 +/* 801ECC0C 001E9B6C 13 A1 00 0C */ psq_lx f29, r1, r0, 0, qr0 +/* 801ECC10 001E9B70 CB A1 1C A0 */ lfd f29, 0x1ca0(r1) +/* 801ECC14 001E9B74 38 00 1C 98 */ li r0, 0x1c98 +/* 801ECC18 001E9B78 13 81 00 0C */ psq_lx f28, r1, r0, 0, qr0 +/* 801ECC1C 001E9B7C CB 81 1C 90 */ lfd f28, 0x1c90(r1) +/* 801ECC20 001E9B80 38 00 1C 88 */ li r0, 0x1c88 +/* 801ECC24 001E9B84 13 61 00 0C */ psq_lx f27, r1, r0, 0, qr0 +/* 801ECC28 001E9B88 CB 61 1C 80 */ lfd f27, 0x1c80(r1) +/* 801ECC2C 001E9B8C 38 00 1C 78 */ li r0, 0x1c78 +/* 801ECC30 001E9B90 13 41 00 0C */ psq_lx f26, r1, r0, 0, qr0 +/* 801ECC34 001E9B94 CB 41 1C 70 */ lfd f26, 0x1c70(r1) +/* 801ECC38 001E9B98 38 00 1C 68 */ li r0, 0x1c68 +/* 801ECC3C 001E9B9C 13 21 00 0C */ psq_lx f25, r1, r0, 0, qr0 +/* 801ECC40 001E9BA0 CB 21 1C 60 */ lfd f25, 0x1c60(r1) +/* 801ECC44 001E9BA4 38 00 1C 58 */ li r0, 0x1c58 +/* 801ECC48 001E9BA8 13 01 00 0C */ psq_lx f24, r1, r0, 0, qr0 +/* 801ECC4C 001E9BAC CB 01 1C 50 */ lfd f24, 0x1c50(r1) +/* 801ECC50 001E9BB0 38 00 1C 48 */ li r0, 0x1c48 +/* 801ECC54 001E9BB4 12 E1 00 0C */ psq_lx f23, r1, r0, 0, qr0 +/* 801ECC58 001E9BB8 CA E1 1C 40 */ lfd f23, 0x1c40(r1) +/* 801ECC5C 001E9BBC 38 00 1C 38 */ li r0, 0x1c38 +/* 801ECC60 001E9BC0 12 C1 00 0C */ psq_lx f22, r1, r0, 0, qr0 +/* 801ECC64 001E9BC4 CA C1 1C 30 */ lfd f22, 0x1c30(r1) +/* 801ECC68 001E9BC8 BB 41 1C 18 */ lmw r26, 0x1c18(r1) +/* 801ECC6C 001E9BCC 80 01 1C D4 */ lwz r0, 0x1cd4(r1) +/* 801ECC70 001E9BD0 7C 08 03 A6 */ mtlr r0 +/* 801ECC74 001E9BD4 38 21 1C D0 */ addi r1, r1, 0x1cd0 +/* 801ECC78 001E9BD8 4E 80 00 20 */ blr + +.global PointOnSurface__17CWallCrawlerSwarmFRC17CCollisionSurfaceRC9CVector3fRC6CPlane +PointOnSurface__17CWallCrawlerSwarmFRC17CCollisionSurfaceRC9CVector3fRC6CPlane: +/* 801ECC7C 001E9BDC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801ECC80 001E9BE0 7C 08 02 A6 */ mflr r0 +/* 801ECC84 001E9BE4 90 01 00 34 */ stw r0, 0x34(r1) +/* 801ECC88 001E9BE8 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 801ECC8C 001E9BEC F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 801ECC90 001E9BF0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801ECC94 001E9BF4 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801ECC98 001E9BF8 7C 60 1B 78 */ mr r0, r3 +/* 801ECC9C 001E9BFC 7C 9E 23 78 */ mr r30, r4 +/* 801ECCA0 001E9C00 7C DF 33 78 */ mr r31, r6 +/* 801ECCA4 001E9C04 38 61 00 08 */ addi r3, r1, 8 +/* 801ECCA8 001E9C08 7C 04 03 78 */ mr r4, r0 +/* 801ECCAC 001E9C0C 7F C6 F3 78 */ mr r6, r30 +/* 801ECCB0 001E9C10 7F E7 FB 78 */ mr r7, r31 +/* 801ECCB4 001E9C14 48 00 01 2D */ bl ProjectPointToPlane__17CWallCrawlerSwarmFRC9CVector3fRC9CVector3fRC9CVector3f +/* 801ECCB8 001E9C18 38 00 00 03 */ li r0, 3 +/* 801ECCBC 001E9C1C 7F C4 F3 78 */ mr r4, r30 +/* 801ECCC0 001E9C20 C1 81 00 08 */ lfs f12, 8(r1) +/* 801ECCC4 001E9C24 38 A0 00 00 */ li r5, 0 +/* 801ECCC8 001E9C28 C1 A1 00 0C */ lfs f13, 0xc(r1) +/* 801ECCCC 001E9C2C C3 E1 00 10 */ lfs f31, 0x10(r1) +/* 801ECCD0 001E9C30 C0 02 AD A0 */ lfs f0, lbl_805ACAC0@sda21(r2) +/* 801ECCD4 001E9C34 7C 09 03 A6 */ mtctr r0 +lbl_801ECCD8: +/* 801ECCD8 001E9C38 38 65 00 02 */ addi r3, r5, 2 +/* 801ECCDC 001E9C3C 2C 03 00 02 */ cmpwi r3, 2 +/* 801ECCE0 001E9C40 38 03 FF FD */ addi r0, r3, -3 +/* 801ECCE4 001E9C44 40 82 00 08 */ bne lbl_801ECCEC +/* 801ECCE8 001E9C48 7C 60 1B 78 */ mr r0, r3 +lbl_801ECCEC: +/* 801ECCEC 001E9C4C 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801ECCF0 001E9C50 C0 64 00 00 */ lfs f3, 0(r4) +/* 801ECCF4 001E9C54 C0 A4 00 08 */ lfs f5, 8(r4) +/* 801ECCF8 001E9C58 C0 84 00 04 */ lfs f4, 4(r4) +/* 801ECCFC 001E9C5C ED 6C 18 28 */ fsubs f11, f12, f3 +/* 801ECD00 001E9C60 7C 7E 02 14 */ add r3, r30, r0 +/* 801ECD04 001E9C64 C0 23 00 08 */ lfs f1, 8(r3) +/* 801ECD08 001E9C68 ED 3F 28 28 */ fsubs f9, f31, f5 +/* 801ECD0C 001E9C6C C0 43 00 00 */ lfs f2, 0(r3) +/* 801ECD10 001E9C70 ED 4D 20 28 */ fsubs f10, f13, f4 +/* 801ECD14 001E9C74 EC E1 28 28 */ fsubs f7, f1, f5 +/* 801ECD18 001E9C78 C0 23 00 04 */ lfs f1, 4(r3) +/* 801ECD1C 001E9C7C EC C2 18 28 */ fsubs f6, f2, f3 +/* 801ECD20 001E9C80 ED 01 20 28 */ fsubs f8, f1, f4 +/* 801ECD24 001E9C84 C0 5F 00 04 */ lfs f2, 4(r31) +/* 801ECD28 001E9C88 EC 27 02 F2 */ fmuls f1, f7, f11 +/* 801ECD2C 001E9C8C EC A6 02 B2 */ fmuls f5, f6, f10 +/* 801ECD30 001E9C90 C0 9F 00 00 */ lfs f4, 0(r31) +/* 801ECD34 001E9C94 EC 68 02 72 */ fmuls f3, f8, f9 +/* 801ECD38 001E9C98 EC 29 09 B8 */ fmsubs f1, f9, f6, f1 +/* 801ECD3C 001E9C9C C0 DF 00 08 */ lfs f6, 8(r31) +/* 801ECD40 001E9CA0 EC AB 2A 38 */ fmsubs f5, f11, f8, f5 +/* 801ECD44 001E9CA4 EC 6A 19 F8 */ fmsubs f3, f10, f7, f3 +/* 801ECD48 001E9CA8 EC 22 00 72 */ fmuls f1, f2, f1 +/* 801ECD4C 001E9CAC EC 24 08 FA */ fmadds f1, f4, f3, f1 +/* 801ECD50 001E9CB0 EC 26 09 7A */ fmadds f1, f6, f5, f1 +/* 801ECD54 001E9CB4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801ECD58 001E9CB8 40 80 00 0C */ bge lbl_801ECD64 +/* 801ECD5C 001E9CBC 38 60 00 00 */ li r3, 0 +/* 801ECD60 001E9CC0 48 00 00 14 */ b lbl_801ECD74 +lbl_801ECD64: +/* 801ECD64 001E9CC4 38 84 00 0C */ addi r4, r4, 0xc +/* 801ECD68 001E9CC8 38 A5 00 01 */ addi r5, r5, 1 +/* 801ECD6C 001E9CCC 42 00 FF 6C */ bdnz lbl_801ECCD8 +/* 801ECD70 001E9CD0 38 60 00 01 */ li r3, 1 +lbl_801ECD74: +/* 801ECD74 001E9CD4 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 801ECD78 001E9CD8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801ECD7C 001E9CDC CB E1 00 20 */ lfd f31, 0x20(r1) +/* 801ECD80 001E9CE0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801ECD84 001E9CE4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801ECD88 001E9CE8 7C 08 03 A6 */ mtlr r0 +/* 801ECD8C 001E9CEC 38 21 00 30 */ addi r1, r1, 0x30 +/* 801ECD90 001E9CF0 4E 80 00 20 */ blr + +.global ProjectVectorToPlane__17CWallCrawlerSwarmFRC9CVector3fRC9CVector3f +ProjectVectorToPlane__17CWallCrawlerSwarmFRC9CVector3fRC9CVector3f: +/* 801ECD94 001E9CF4 C0 C5 00 04 */ lfs f6, 4(r5) +/* 801ECD98 001E9CF8 C0 66 00 04 */ lfs f3, 4(r6) +/* 801ECD9C 001E9CFC C0 A5 00 00 */ lfs f5, 0(r5) +/* 801ECDA0 001E9D00 EC 06 00 F2 */ fmuls f0, f6, f3 +/* 801ECDA4 001E9D04 C0 26 00 00 */ lfs f1, 0(r6) +/* 801ECDA8 001E9D08 C0 E5 00 08 */ lfs f7, 8(r5) +/* 801ECDAC 001E9D0C C0 86 00 08 */ lfs f4, 8(r6) +/* 801ECDB0 001E9D10 EC 05 00 7A */ fmadds f0, f5, f1, f0 +/* 801ECDB4 001E9D14 EC 07 01 3A */ fmadds f0, f7, f4, f0 +/* 801ECDB8 001E9D18 EC 40 00 72 */ fmuls f2, f0, f1 +/* 801ECDBC 001E9D1C EC 20 00 F2 */ fmuls f1, f0, f3 +/* 801ECDC0 001E9D20 EC 00 01 32 */ fmuls f0, f0, f4 +/* 801ECDC4 001E9D24 EC 45 10 28 */ fsubs f2, f5, f2 +/* 801ECDC8 001E9D28 EC 26 08 28 */ fsubs f1, f6, f1 +/* 801ECDCC 001E9D2C EC 07 00 28 */ fsubs f0, f7, f0 +/* 801ECDD0 001E9D30 D0 43 00 00 */ stfs f2, 0(r3) +/* 801ECDD4 001E9D34 D0 23 00 04 */ stfs f1, 4(r3) +/* 801ECDD8 001E9D38 D0 03 00 08 */ stfs f0, 8(r3) +/* 801ECDDC 001E9D3C 4E 80 00 20 */ blr + +.global ProjectPointToPlane__17CWallCrawlerSwarmFRC9CVector3fRC9CVector3fRC9CVector3f +ProjectPointToPlane__17CWallCrawlerSwarmFRC9CVector3fRC9CVector3fRC9CVector3f: +/* 801ECDE0 001E9D40 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801ECDE4 001E9D44 C1 05 00 04 */ lfs f8, 4(r5) +/* 801ECDE8 001E9D48 C0 06 00 04 */ lfs f0, 4(r6) +/* 801ECDEC 001E9D4C C0 E5 00 00 */ lfs f7, 0(r5) +/* 801ECDF0 001E9D50 EC 48 00 28 */ fsubs f2, f8, f0 +/* 801ECDF4 001E9D54 C0 06 00 00 */ lfs f0, 0(r6) +/* 801ECDF8 001E9D58 C0 A7 00 04 */ lfs f5, 4(r7) +/* 801ECDFC 001E9D5C EC 67 00 28 */ fsubs f3, f7, f0 +/* 801ECE00 001E9D60 C1 25 00 08 */ lfs f9, 8(r5) +/* 801ECE04 001E9D64 C0 26 00 08 */ lfs f1, 8(r6) +/* 801ECE08 001E9D68 EC 02 01 72 */ fmuls f0, f2, f5 +/* 801ECE0C 001E9D6C C0 87 00 00 */ lfs f4, 0(r7) +/* 801ECE10 001E9D70 EC 29 08 28 */ fsubs f1, f9, f1 +/* 801ECE14 001E9D74 C0 C7 00 08 */ lfs f6, 8(r7) +/* 801ECE18 001E9D78 EC 03 01 3A */ fmadds f0, f3, f4, f0 +/* 801ECE1C 001E9D7C D0 41 00 0C */ stfs f2, 0xc(r1) +/* 801ECE20 001E9D80 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 801ECE24 001E9D84 EC 01 01 BA */ fmadds f0, f1, f6, f0 +/* 801ECE28 001E9D88 D0 61 00 08 */ stfs f3, 8(r1) +/* 801ECE2C 001E9D8C EC 40 01 32 */ fmuls f2, f0, f4 +/* 801ECE30 001E9D90 EC 20 01 72 */ fmuls f1, f0, f5 +/* 801ECE34 001E9D94 EC 00 01 B2 */ fmuls f0, f0, f6 +/* 801ECE38 001E9D98 EC 47 10 28 */ fsubs f2, f7, f2 +/* 801ECE3C 001E9D9C EC 28 08 28 */ fsubs f1, f8, f1 +/* 801ECE40 001E9DA0 EC 09 00 28 */ fsubs f0, f9, f0 +/* 801ECE44 001E9DA4 D0 43 00 00 */ stfs f2, 0(r3) +/* 801ECE48 001E9DA8 D0 23 00 04 */ stfs f1, 4(r3) +/* 801ECE4C 001E9DAC D0 03 00 08 */ stfs f0, 8(r3) +/* 801ECE50 001E9DB0 38 21 00 20 */ addi r1, r1, 0x20 +/* 801ECE54 001E9DB4 4E 80 00 20 */ blr + +.global GetTouchBounds__17CWallCrawlerSwarmCFv +GetTouchBounds__17CWallCrawlerSwarmCFv: +/* 801ECE58 001E9DB8 38 00 00 01 */ li r0, 1 +/* 801ECE5C 001E9DBC 28 03 00 00 */ cmplwi r3, 0 +/* 801ECE60 001E9DC0 98 03 00 18 */ stb r0, 0x18(r3) +/* 801ECE64 001E9DC4 4D 82 00 20 */ beqlr +/* 801ECE68 001E9DC8 C0 04 00 E8 */ lfs f0, 0xe8(r4) +/* 801ECE6C 001E9DCC D0 03 00 00 */ stfs f0, 0(r3) +/* 801ECE70 001E9DD0 C0 04 00 EC */ lfs f0, 0xec(r4) +/* 801ECE74 001E9DD4 D0 03 00 04 */ stfs f0, 4(r3) +/* 801ECE78 001E9DD8 C0 04 00 F0 */ lfs f0, 0xf0(r4) +/* 801ECE7C 001E9DDC D0 03 00 08 */ stfs f0, 8(r3) +/* 801ECE80 001E9DE0 C0 04 00 F4 */ lfs f0, 0xf4(r4) +/* 801ECE84 001E9DE4 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 801ECE88 001E9DE8 C0 04 00 F8 */ lfs f0, 0xf8(r4) +/* 801ECE8C 001E9DEC D0 03 00 10 */ stfs f0, 0x10(r3) +/* 801ECE90 001E9DF0 C0 04 00 FC */ lfs f0, 0xfc(r4) +/* 801ECE94 001E9DF4 D0 03 00 14 */ stfs f0, 0x14(r3) +/* 801ECE98 001E9DF8 4E 80 00 20 */ blr + +.global GetBoundingBox__17CWallCrawlerSwarmCFv +GetBoundingBox__17CWallCrawlerSwarmCFv: +/* 801ECE9C 001E9DFC 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801ECEA0 001E9E00 7C 08 02 A6 */ mflr r0 +/* 801ECEA4 001E9E04 C0 42 AE 18 */ lfs f2, lbl_805ACB38@sda21(r2) +/* 801ECEA8 001E9E08 90 01 00 44 */ stw r0, 0x44(r1) +/* 801ECEAC 001E9E0C 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801ECEB0 001E9E10 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801ECEB4 001E9E14 7C 9F 23 78 */ mr r31, r4 +/* 801ECEB8 001E9E18 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801ECEBC 001E9E1C 7C 7E 1B 78 */ mr r30, r3 +/* 801ECEC0 001E9E20 38 61 00 20 */ addi r3, r1, 0x20 +/* 801ECEC4 001E9E24 C0 04 01 20 */ lfs f0, 0x120(r4) +/* 801ECEC8 001E9E28 38 81 00 08 */ addi r4, r1, 8 +/* 801ECECC 001E9E2C C0 3F 01 1C */ lfs f1, 0x11c(r31) +/* 801ECED0 001E9E30 EC A2 00 32 */ fmuls f5, f2, f0 +/* 801ECED4 001E9E34 C0 1F 01 18 */ lfs f0, 0x118(r31) +/* 801ECED8 001E9E38 EC 82 00 72 */ fmuls f4, f2, f1 +/* 801ECEDC 001E9E3C EC 62 00 32 */ fmuls f3, f2, f0 +/* 801ECEE0 001E9E40 FC 00 28 50 */ fneg f0, f5 +/* 801ECEE4 001E9E44 D0 A1 00 1C */ stfs f5, 0x1c(r1) +/* 801ECEE8 001E9E48 FC 20 20 50 */ fneg f1, f4 +/* 801ECEEC 001E9E4C FC 40 18 50 */ fneg f2, f3 +/* 801ECEF0 001E9E50 D0 61 00 14 */ stfs f3, 0x14(r1) +/* 801ECEF4 001E9E54 D0 81 00 18 */ stfs f4, 0x18(r1) +/* 801ECEF8 001E9E58 D0 41 00 08 */ stfs f2, 8(r1) +/* 801ECEFC 001E9E5C D0 21 00 0C */ stfs f1, 0xc(r1) +/* 801ECF00 001E9E60 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801ECF04 001E9E64 48 14 B6 05 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801ECF08 001E9E68 7F C3 F3 78 */ mr r3, r30 +/* 801ECF0C 001E9E6C 38 81 00 20 */ addi r4, r1, 0x20 +/* 801ECF10 001E9E70 38 BF 00 34 */ addi r5, r31, 0x34 +/* 801ECF14 001E9E74 48 14 A9 E9 */ bl GetTransformedAABox__6CAABoxCFRC12CTransform4f +/* 801ECF18 001E9E78 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801ECF1C 001E9E7C 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801ECF20 001E9E80 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801ECF24 001E9E84 7C 08 03 A6 */ mtlr r0 +/* 801ECF28 001E9E88 38 21 00 40 */ addi r1, r1, 0x40 +/* 801ECF2C 001E9E8C 4E 80 00 20 */ blr + +.global CalculateRenderBounds__17CWallCrawlerSwarmFv +CalculateRenderBounds__17CWallCrawlerSwarmFv: +/* 801ECF30 001E9E90 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801ECF34 001E9E94 7C 08 02 A6 */ mflr r0 +/* 801ECF38 001E9E98 90 01 00 44 */ stw r0, 0x44(r1) +/* 801ECF3C 001E9E9C 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801ECF40 001E9EA0 7C 7F 1B 78 */ mr r31, r3 +/* 801ECF44 001E9EA4 38 61 00 08 */ addi r3, r1, 8 +/* 801ECF48 001E9EA8 7F E4 FB 78 */ mr r4, r31 +/* 801ECF4C 001E9EAC 4B FF FF 51 */ bl GetBoundingBox__17CWallCrawlerSwarmCFv +/* 801ECF50 001E9EB0 C0 21 00 08 */ lfs f1, 8(r1) +/* 801ECF54 001E9EB4 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 801ECF58 001E9EB8 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 801ECF5C 001E9EBC C0 61 00 10 */ lfs f3, 0x10(r1) +/* 801ECF60 001E9EC0 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801ECF64 001E9EC4 C0 41 00 14 */ lfs f2, 0x14(r1) +/* 801ECF68 001E9EC8 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 801ECF6C 001E9ECC C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 801ECF70 001E9ED0 80 61 00 20 */ lwz r3, 0x20(r1) +/* 801ECF74 001E9ED4 D0 61 00 28 */ stfs f3, 0x28(r1) +/* 801ECF78 001E9ED8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801ECF7C 001E9EDC 90 7F 00 9C */ stw r3, 0x9c(r31) +/* 801ECF80 001E9EE0 80 61 00 28 */ lwz r3, 0x28(r1) +/* 801ECF84 001E9EE4 D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 801ECF88 001E9EE8 90 1F 00 A0 */ stw r0, 0xa0(r31) +/* 801ECF8C 001E9EEC 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 801ECF90 001E9EF0 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 801ECF94 001E9EF4 90 7F 00 A4 */ stw r3, 0xa4(r31) +/* 801ECF98 001E9EF8 80 61 00 30 */ lwz r3, 0x30(r1) +/* 801ECF9C 001E9EFC D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801ECFA0 001E9F00 90 1F 00 A8 */ stw r0, 0xa8(r31) +/* 801ECFA4 001E9F04 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801ECFA8 001E9F08 90 7F 00 AC */ stw r3, 0xac(r31) +/* 801ECFAC 001E9F0C 90 1F 00 B0 */ stw r0, 0xb0(r31) +/* 801ECFB0 001E9F10 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801ECFB4 001E9F14 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801ECFB8 001E9F18 7C 08 03 A6 */ mtlr r0 +/* 801ECFBC 001E9F1C 38 21 00 40 */ addi r1, r1, 0x40 +/* 801ECFC0 001E9F20 4E 80 00 20 */ blr + +.global CreateBoid__17CWallCrawlerSwarmFR13CStateManageri +CreateBoid__17CWallCrawlerSwarmFR13CStateManageri: +/* 801ECFC4 001E9F24 94 21 FE 00 */ stwu r1, -0x200(r1) +/* 801ECFC8 001E9F28 7C 08 02 A6 */ mflr r0 +/* 801ECFCC 001E9F2C 90 01 02 04 */ stw r0, 0x204(r1) +/* 801ECFD0 001E9F30 DB E1 01 F0 */ stfd f31, 0x1f0(r1) +/* 801ECFD4 001E9F34 F3 E1 01 F8 */ psq_st f31, 504(r1), 0, qr0 +/* 801ECFD8 001E9F38 DB C1 01 E0 */ stfd f30, 0x1e0(r1) +/* 801ECFDC 001E9F3C F3 C1 01 E8 */ psq_st f30, 488(r1), 0, qr0 +/* 801ECFE0 001E9F40 DB A1 01 D0 */ stfd f29, 0x1d0(r1) +/* 801ECFE4 001E9F44 F3 A1 01 D8 */ psq_st f29, 472(r1), 0, qr0 +/* 801ECFE8 001E9F48 DB 81 01 C0 */ stfd f28, 0x1c0(r1) +/* 801ECFEC 001E9F4C F3 81 01 C8 */ psq_st f28, 456(r1), 0, qr0 +/* 801ECFF0 001E9F50 93 E1 01 BC */ stw r31, 0x1bc(r1) +/* 801ECFF4 001E9F54 93 C1 01 B8 */ stw r30, 0x1b8(r1) +/* 801ECFF8 001E9F58 93 A1 01 B4 */ stw r29, 0x1b4(r1) +/* 801ECFFC 001E9F5C 7C 7E 1B 78 */ mr r30, r3 +/* 801ED000 001E9F60 7C 9F 23 78 */ mr r31, r4 +/* 801ED004 001E9F64 7C BD 2B 78 */ mr r29, r5 +/* 801ED008 001E9F68 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 801ED00C 001E9F6C 7F C4 F3 78 */ mr r4, r30 +/* 801ED010 001E9F70 4B FF FE 8D */ bl GetBoundingBox__17CWallCrawlerSwarmCFv +/* 801ED014 001E9F74 7F C4 F3 78 */ mr r4, r30 +/* 801ED018 001E9F78 7F E6 FB 78 */ mr r6, r31 +/* 801ED01C 001E9F7C 38 61 00 0C */ addi r3, r1, 0xc +/* 801ED020 001E9F80 38 A0 00 0D */ li r5, 0xd +/* 801ED024 001E9F84 4B FF B9 59 */ bl GetWaypointForState__17CWallCrawlerSwarmF18EScriptObjectStateR13CStateManager +/* 801ED028 001E9F88 A0 01 00 0C */ lhz r0, 0xc(r1) +/* 801ED02C 001E9F8C 7F E3 FB 78 */ mr r3, r31 +/* 801ED030 001E9F90 38 81 00 08 */ addi r4, r1, 8 +/* 801ED034 001E9F94 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801ED038 001E9F98 B0 01 00 08 */ sth r0, 8(r1) +/* 801ED03C 001E9F9C 4B E5 F5 69 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801ED040 001E9FA0 7C 64 1B 78 */ mr r4, r3 +/* 801ED044 001E9FA4 38 61 00 18 */ addi r3, r1, 0x18 +/* 801ED048 001E9FA8 4B EB 95 05 */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 801ED04C 001E9FAC 80 63 00 04 */ lwz r3, 4(r3) +/* 801ED050 001E9FB0 28 03 00 00 */ cmplwi r3, 0 +/* 801ED054 001E9FB4 41 82 02 98 */ beq lbl_801ED2EC +/* 801ED058 001E9FB8 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 801ED05C 001E9FBC 7F C4 F3 78 */ mr r4, r30 +/* 801ED060 001E9FC0 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801ED064 001E9FC4 7F E5 FB 78 */ mr r5, r31 +/* 801ED068 001E9FC8 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801ED06C 001E9FCC 38 61 01 58 */ addi r3, r1, 0x158 +/* 801ED070 001E9FD0 38 C1 00 A4 */ addi r6, r1, 0xa4 +/* 801ED074 001E9FD4 D0 01 00 A4 */ stfs f0, 0xa4(r1) +/* 801ED078 001E9FD8 D0 21 00 A8 */ stfs f1, 0xa8(r1) +/* 801ED07C 001E9FDC D0 41 00 AC */ stfs f2, 0xac(r1) +/* 801ED080 001E9FE0 4B FF F7 89 */ bl FindBestCollisionInBox__17CWallCrawlerSwarmFR13CStateManagerRC9CVector3f +/* 801ED084 001E9FE4 C1 01 01 58 */ lfs f8, 0x158(r1) +/* 801ED088 001E9FE8 38 61 00 80 */ addi r3, r1, 0x80 +/* 801ED08C 001E9FEC C0 E1 01 5C */ lfs f7, 0x15c(r1) +/* 801ED090 001E9FF0 38 81 01 80 */ addi r4, r1, 0x180 +/* 801ED094 001E9FF4 C0 C1 01 60 */ lfs f6, 0x160(r1) +/* 801ED098 001E9FF8 C0 A1 01 64 */ lfs f5, 0x164(r1) +/* 801ED09C 001E9FFC C0 81 01 68 */ lfs f4, 0x168(r1) +/* 801ED0A0 001EA000 C0 61 01 6C */ lfs f3, 0x16c(r1) +/* 801ED0A4 001EA004 C0 41 01 70 */ lfs f2, 0x170(r1) +/* 801ED0A8 001EA008 C0 21 01 74 */ lfs f1, 0x174(r1) +/* 801ED0AC 001EA00C C0 01 01 78 */ lfs f0, 0x178(r1) +/* 801ED0B0 001EA010 80 01 01 7C */ lwz r0, 0x17c(r1) +/* 801ED0B4 001EA014 D1 01 01 80 */ stfs f8, 0x180(r1) +/* 801ED0B8 001EA018 D0 E1 01 84 */ stfs f7, 0x184(r1) +/* 801ED0BC 001EA01C D0 C1 01 88 */ stfs f6, 0x188(r1) +/* 801ED0C0 001EA020 D0 A1 01 8C */ stfs f5, 0x18c(r1) +/* 801ED0C4 001EA024 D0 81 01 90 */ stfs f4, 0x190(r1) +/* 801ED0C8 001EA028 D0 61 01 94 */ stfs f3, 0x194(r1) +/* 801ED0CC 001EA02C D0 41 01 98 */ stfs f2, 0x198(r1) +/* 801ED0D0 001EA030 D0 21 01 9C */ stfs f1, 0x19c(r1) +/* 801ED0D4 001EA034 D0 01 01 A0 */ stfs f0, 0x1a0(r1) +/* 801ED0D8 001EA038 90 01 01 A4 */ stw r0, 0x1a4(r1) +/* 801ED0DC 001EA03C 48 0B 55 C9 */ bl GetNormal__17CCollisionSurfaceCFv +/* 801ED0E0 001EA040 7F C4 F3 78 */ mr r4, r30 +/* 801ED0E4 001EA044 38 61 00 8C */ addi r3, r1, 0x8c +/* 801ED0E8 001EA048 38 A1 00 A4 */ addi r5, r1, 0xa4 +/* 801ED0EC 001EA04C 38 C1 01 80 */ addi r6, r1, 0x180 +/* 801ED0F0 001EA050 38 E1 00 80 */ addi r7, r1, 0x80 +/* 801ED0F4 001EA054 4B FF FC ED */ bl ProjectPointToPlane__17CWallCrawlerSwarmFRC9CVector3fRC9CVector3fRC9CVector3f +/* 801ED0F8 001EA058 C3 C1 00 8C */ lfs f30, 0x8c(r1) +/* 801ED0FC 001EA05C 38 61 00 74 */ addi r3, r1, 0x74 +/* 801ED100 001EA060 C3 A1 00 90 */ lfs f29, 0x90(r1) +/* 801ED104 001EA064 38 81 01 80 */ addi r4, r1, 0x180 +/* 801ED108 001EA068 C3 81 00 94 */ lfs f28, 0x94(r1) +/* 801ED10C 001EA06C C3 FE 03 74 */ lfs f31, 0x374(r30) +/* 801ED110 001EA070 48 0B 55 95 */ bl GetNormal__17CCollisionSurfaceCFv +/* 801ED114 001EA074 C0 41 00 78 */ lfs f2, 0x78(r1) +/* 801ED118 001EA078 1F FD 00 84 */ mulli r31, r29, 0x84 +/* 801ED11C 001EA07C C0 21 00 7C */ lfs f1, 0x7c(r1) +/* 801ED120 001EA080 38 61 01 28 */ addi r3, r1, 0x128 +/* 801ED124 001EA084 C0 01 00 74 */ lfs f0, 0x74(r1) +/* 801ED128 001EA088 EC 5F 00 B2 */ fmuls f2, f31, f2 +/* 801ED12C 001EA08C EC 3F 00 72 */ fmuls f1, f31, f1 +/* 801ED130 001EA090 EC 1F 00 32 */ fmuls f0, f31, f0 +/* 801ED134 001EA094 38 81 00 98 */ addi r4, r1, 0x98 +/* 801ED138 001EA098 EC 5D 10 2A */ fadds f2, f29, f2 +/* 801ED13C 001EA09C EC 3C 08 2A */ fadds f1, f28, f1 +/* 801ED140 001EA0A0 EC 1E 00 2A */ fadds f0, f30, f0 +/* 801ED144 001EA0A4 D0 41 00 9C */ stfs f2, 0x9c(r1) +/* 801ED148 001EA0A8 D0 01 00 98 */ stfs f0, 0x98(r1) +/* 801ED14C 001EA0AC D0 21 00 A0 */ stfs f1, 0xa0(r1) +/* 801ED150 001EA0B0 80 1E 01 14 */ lwz r0, 0x114(r30) +/* 801ED154 001EA0B4 7F A0 FA 14 */ add r29, r0, r31 +/* 801ED158 001EA0B8 48 12 5F E9 */ bl Translate__12CTransform4fFRC9CVector3f +/* 801ED15C 001EA0BC 7F A3 EB 78 */ mr r3, r29 +/* 801ED160 001EA0C0 38 81 01 28 */ addi r4, r1, 0x128 +/* 801ED164 001EA0C4 48 12 59 DD */ bl __as__12CTransform4fFRC12CTransform4f +/* 801ED168 001EA0C8 38 61 00 5C */ addi r3, r1, 0x5c +/* 801ED16C 001EA0CC 38 81 01 80 */ addi r4, r1, 0x180 +/* 801ED170 001EA0D0 48 0B 55 35 */ bl GetNormal__17CCollisionSurfaceCFv +/* 801ED174 001EA0D4 C0 A2 AD A0 */ lfs f5, lbl_805ACAC0@sda21(r2) +/* 801ED178 001EA0D8 C0 01 00 60 */ lfs f0, 0x60(r1) +/* 801ED17C 001EA0DC C0 82 AD B4 */ lfs f4, lbl_805ACAD4@sda21(r2) +/* 801ED180 001EA0E0 EC 05 00 32 */ fmuls f0, f5, f0 +/* 801ED184 001EA0E4 C0 21 00 5C */ lfs f1, 0x5c(r1) +/* 801ED188 001EA0E8 C0 61 00 64 */ lfs f3, 0x64(r1) +/* 801ED18C 001EA0EC C0 42 AE 34 */ lfs f2, lbl_805ACB54@sda21(r2) +/* 801ED190 001EA0F0 EC 25 00 7A */ fmadds f1, f5, f1, f0 +/* 801ED194 001EA0F4 C0 02 AD D8 */ lfs f0, lbl_805ACAF8@sda21(r2) +/* 801ED198 001EA0F8 D0 A1 00 68 */ stfs f5, 0x68(r1) +/* 801ED19C 001EA0FC EC 24 08 FA */ fmadds f1, f4, f3, f1 +/* 801ED1A0 001EA100 D0 A1 00 6C */ stfs f5, 0x6c(r1) +/* 801ED1A4 001EA104 D0 81 00 70 */ stfs f4, 0x70(r1) +/* 801ED1A8 001EA108 EC 21 10 28 */ fsubs f1, f1, f2 +/* 801ED1AC 001EA10C FC 20 0A 10 */ fabs f1, f1 +/* 801ED1B0 001EA110 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801ED1B4 001EA114 40 80 00 5C */ bge lbl_801ED210 +/* 801ED1B8 001EA118 D0 A1 00 38 */ stfs f5, 0x38(r1) +/* 801ED1BC 001EA11C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801ED1C0 001EA120 38 E3 66 A0 */ addi r7, r3, skZero3f@l +/* 801ED1C4 001EA124 38 81 00 50 */ addi r4, r1, 0x50 +/* 801ED1C8 001EA128 D0 A1 00 3C */ stfs f5, 0x3c(r1) +/* 801ED1CC 001EA12C 38 61 00 F8 */ addi r3, r1, 0xf8 +/* 801ED1D0 001EA130 38 A1 00 44 */ addi r5, r1, 0x44 +/* 801ED1D4 001EA134 38 C1 00 38 */ addi r6, r1, 0x38 +/* 801ED1D8 001EA138 D0 41 00 40 */ stfs f2, 0x40(r1) +/* 801ED1DC 001EA13C D0 A1 00 44 */ stfs f5, 0x44(r1) +/* 801ED1E0 001EA140 D0 41 00 48 */ stfs f2, 0x48(r1) +/* 801ED1E4 001EA144 D0 A1 00 4C */ stfs f5, 0x4c(r1) +/* 801ED1E8 001EA148 D0 81 00 50 */ stfs f4, 0x50(r1) +/* 801ED1EC 001EA14C D0 A1 00 54 */ stfs f5, 0x54(r1) +/* 801ED1F0 001EA150 D0 A1 00 58 */ stfs f5, 0x58(r1) +/* 801ED1F4 001EA154 80 1E 01 14 */ lwz r0, 0x114(r30) +/* 801ED1F8 001EA158 7F A0 FA 14 */ add r29, r0, r31 +/* 801ED1FC 001EA15C 48 12 5C 61 */ bl __ct__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3fRC9CVector3f_0 +/* 801ED200 001EA160 7F A3 EB 78 */ mr r3, r29 +/* 801ED204 001EA164 38 81 00 F8 */ addi r4, r1, 0xf8 +/* 801ED208 001EA168 48 12 59 A1 */ bl SetRotation__12CTransform4fFRC12CTransform4f +/* 801ED20C 001EA16C 48 00 00 4C */ b lbl_801ED258 +lbl_801ED210: +/* 801ED210 001EA170 C0 02 AD DC */ lfs f0, lbl_805ACAFC@sda21(r2) +/* 801ED214 001EA174 38 61 00 20 */ addi r3, r1, 0x20 +/* 801ED218 001EA178 D0 A1 00 2C */ stfs f5, 0x2c(r1) +/* 801ED21C 001EA17C 38 81 01 80 */ addi r4, r1, 0x180 +/* 801ED220 001EA180 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801ED224 001EA184 D0 A1 00 30 */ stfs f5, 0x30(r1) +/* 801ED228 001EA188 D0 81 00 34 */ stfs f4, 0x34(r1) +/* 801ED22C 001EA18C 80 1E 01 14 */ lwz r0, 0x114(r30) +/* 801ED230 001EA190 7F A0 FA 14 */ add r29, r0, r31 +/* 801ED234 001EA194 48 0B 54 71 */ bl GetNormal__17CCollisionSurfaceCFv +/* 801ED238 001EA198 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 801ED23C 001EA19C 38 81 00 2C */ addi r4, r1, 0x2c +/* 801ED240 001EA1A0 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801ED244 001EA1A4 38 C1 00 14 */ addi r6, r1, 0x14 +/* 801ED248 001EA1A8 48 00 1B 65 */ bl LookAt__F9CVector3f9CVector3ff +/* 801ED24C 001EA1AC 7F A3 EB 78 */ mr r3, r29 +/* 801ED250 001EA1B0 38 81 00 C8 */ addi r4, r1, 0xc8 +/* 801ED254 001EA1B4 48 12 59 55 */ bl SetRotation__12CTransform4fFRC12CTransform4f +lbl_801ED258: +/* 801ED258 001EA1B8 80 9E 01 14 */ lwz r4, 0x114(r30) +/* 801ED25C 001EA1BC 39 3F 00 80 */ addi r9, r31, 0x80 +/* 801ED260 001EA1C0 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801ED264 001EA1C4 38 A0 00 01 */ li r5, 1 +/* 801ED268 001EA1C8 7C 04 48 AE */ lbzx r0, r4, r9 +/* 801ED26C 001EA1CC 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 801ED270 001EA1D0 38 E3 66 A0 */ addi r7, r3, skZero3f@l +/* 801ED274 001EA1D4 39 5F 00 30 */ addi r10, r31, 0x30 +/* 801ED278 001EA1D8 7C 04 49 AE */ stbx r0, r4, r9 +/* 801ED27C 001EA1DC 38 BF 00 3C */ addi r5, r31, 0x3c +/* 801ED280 001EA1E0 A1 01 00 10 */ lhz r8, 0x10(r1) +/* 801ED284 001EA1E4 38 9F 00 7C */ addi r4, r31, 0x7c +/* 801ED288 001EA1E8 80 1E 01 14 */ lwz r0, 0x114(r30) +/* 801ED28C 001EA1EC 38 C0 00 00 */ li r6, 0 +/* 801ED290 001EA1F0 C0 27 00 00 */ lfs f1, 0(r7) +/* 801ED294 001EA1F4 38 7F 00 48 */ addi r3, r31, 0x48 +/* 801ED298 001EA1F8 7D 40 52 14 */ add r10, r0, r10 +/* 801ED29C 001EA1FC C0 02 AD A0 */ lfs f0, lbl_805ACAC0@sda21(r2) +/* 801ED2A0 001EA200 D0 2A 00 00 */ stfs f1, 0(r10) +/* 801ED2A4 001EA204 38 1F 00 78 */ addi r0, r31, 0x78 +/* 801ED2A8 001EA208 C0 27 00 04 */ lfs f1, 4(r7) +/* 801ED2AC 001EA20C D0 2A 00 04 */ stfs f1, 4(r10) +/* 801ED2B0 001EA210 C0 27 00 08 */ lfs f1, 8(r7) +/* 801ED2B4 001EA214 D0 2A 00 08 */ stfs f1, 8(r10) +/* 801ED2B8 001EA218 80 FE 01 14 */ lwz r7, 0x114(r30) +/* 801ED2BC 001EA21C 7D 07 2B 2E */ sthx r8, r7, r5 +/* 801ED2C0 001EA220 80 BE 01 14 */ lwz r5, 0x114(r30) +/* 801ED2C4 001EA224 7C C5 21 AE */ stbx r6, r5, r4 +/* 801ED2C8 001EA228 80 9E 01 14 */ lwz r4, 0x114(r30) +/* 801ED2CC 001EA22C 7C 04 1D 2E */ stfsx f0, r4, r3 +/* 801ED2D0 001EA230 80 9E 01 14 */ lwz r4, 0x114(r30) +/* 801ED2D4 001EA234 7C 64 48 AE */ lbzx r3, r4, r9 +/* 801ED2D8 001EA238 50 C3 26 F6 */ rlwimi r3, r6, 4, 0x1b, 0x1b +/* 801ED2DC 001EA23C 7C 64 49 AE */ stbx r3, r4, r9 +/* 801ED2E0 001EA240 C0 1E 03 BC */ lfs f0, 0x3bc(r30) +/* 801ED2E4 001EA244 80 7E 01 14 */ lwz r3, 0x114(r30) +/* 801ED2E8 001EA248 7C 03 05 2E */ stfsx f0, r3, r0 +lbl_801ED2EC: +/* 801ED2EC 001EA24C E3 E1 01 F8 */ psq_l f31, 504(r1), 0, qr0 +/* 801ED2F0 001EA250 CB E1 01 F0 */ lfd f31, 0x1f0(r1) +/* 801ED2F4 001EA254 E3 C1 01 E8 */ psq_l f30, 488(r1), 0, qr0 +/* 801ED2F8 001EA258 CB C1 01 E0 */ lfd f30, 0x1e0(r1) +/* 801ED2FC 001EA25C E3 A1 01 D8 */ psq_l f29, 472(r1), 0, qr0 +/* 801ED300 001EA260 CB A1 01 D0 */ lfd f29, 0x1d0(r1) +/* 801ED304 001EA264 E3 81 01 C8 */ psq_l f28, 456(r1), 0, qr0 +/* 801ED308 001EA268 CB 81 01 C0 */ lfd f28, 0x1c0(r1) +/* 801ED30C 001EA26C 83 E1 01 BC */ lwz r31, 0x1bc(r1) +/* 801ED310 001EA270 83 C1 01 B8 */ lwz r30, 0x1b8(r1) +/* 801ED314 001EA274 80 01 02 04 */ lwz r0, 0x204(r1) +/* 801ED318 001EA278 83 A1 01 B4 */ lwz r29, 0x1b4(r1) +/* 801ED31C 001EA27C 7C 08 03 A6 */ mtlr r0 +/* 801ED320 001EA280 38 21 02 00 */ addi r1, r1, 0x200 +/* 801ED324 001EA284 4E 80 00 20 */ blr + +.global AllocateSkinnedModels__17CWallCrawlerSwarmFR13CStateManagerQ210CModelData11EWhichModel +AllocateSkinnedModels__17CWallCrawlerSwarmFR13CStateManagerQ210CModelData11EWhichModel: +/* 801ED328 001EA288 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 801ED32C 001EA28C 7C 08 02 A6 */ mflr r0 +/* 801ED330 001EA290 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 801ED334 001EA294 DB E1 00 A0 */ stfd f31, 0xa0(r1) +/* 801ED338 001EA298 F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0 +/* 801ED33C 001EA29C DB C1 00 90 */ stfd f30, 0x90(r1) +/* 801ED340 001EA2A0 F3 C1 00 98 */ psq_st f30, 152(r1), 0, qr0 +/* 801ED344 001EA2A4 BE A1 00 64 */ stmw r21, 0x64(r1) +/* 801ED348 001EA2A8 7C 78 1B 78 */ mr r24, r3 +/* 801ED34C 001EA2AC 7C 99 23 78 */ mr r25, r4 +/* 801ED350 001EA2B0 3B D8 04 34 */ addi r30, r24, 0x434 +/* 801ED354 001EA2B4 7C BA 2B 78 */ mr r26, r5 +/* 801ED358 001EA2B8 7F D7 F3 78 */ mr r23, r30 +/* 801ED35C 001EA2BC 3A C0 00 00 */ li r22, 0 +/* 801ED360 001EA2C0 48 00 00 28 */ b lbl_801ED388 +lbl_801ED364: +/* 801ED364 001EA2C4 28 17 00 00 */ cmplwi r23, 0 +/* 801ED368 001EA2C8 41 82 00 18 */ beq lbl_801ED380 +/* 801ED36C 001EA2CC 88 17 00 00 */ lbz r0, 0(r23) +/* 801ED370 001EA2D0 28 00 00 00 */ cmplwi r0, 0 +/* 801ED374 001EA2D4 41 82 00 0C */ beq lbl_801ED380 +/* 801ED378 001EA2D8 80 77 00 04 */ lwz r3, 4(r23) +/* 801ED37C 001EA2DC 48 12 85 B5 */ bl Free__7CMemoryFPCv +lbl_801ED380: +/* 801ED380 001EA2E0 3A F7 00 08 */ addi r23, r23, 8 +/* 801ED384 001EA2E4 3A D6 00 01 */ addi r22, r22, 1 +lbl_801ED388: +/* 801ED388 001EA2E8 80 18 04 30 */ lwz r0, 0x430(r24) +/* 801ED38C 001EA2EC 7C 16 00 00 */ cmpw r22, r0 +/* 801ED390 001EA2F0 41 80 FF D4 */ blt lbl_801ED364 +/* 801ED394 001EA2F4 38 60 00 00 */ li r3, 0 +/* 801ED398 001EA2F8 3B B8 04 88 */ addi r29, r24, 0x488 +/* 801ED39C 001EA2FC 90 78 04 30 */ stw r3, 0x430(r24) +/* 801ED3A0 001EA300 80 B8 04 84 */ lwz r5, 0x484(r24) +/* 801ED3A4 001EA304 2C 05 00 00 */ cmpwi r5, 0 +/* 801ED3A8 001EA308 40 81 00 40 */ ble lbl_801ED3E8 +/* 801ED3AC 001EA30C 2C 05 00 08 */ cmpwi r5, 8 +/* 801ED3B0 001EA310 38 85 FF F8 */ addi r4, r5, -8 +/* 801ED3B4 001EA314 40 81 00 20 */ ble lbl_801ED3D4 +/* 801ED3B8 001EA318 38 04 00 07 */ addi r0, r4, 7 +/* 801ED3BC 001EA31C 54 00 E8 FE */ srwi r0, r0, 3 +/* 801ED3C0 001EA320 7C 09 03 A6 */ mtctr r0 +/* 801ED3C4 001EA324 2C 04 00 00 */ cmpwi r4, 0 +/* 801ED3C8 001EA328 40 81 00 0C */ ble lbl_801ED3D4 +lbl_801ED3CC: +/* 801ED3CC 001EA32C 38 63 00 08 */ addi r3, r3, 8 +/* 801ED3D0 001EA330 42 00 FF FC */ bdnz lbl_801ED3CC +lbl_801ED3D4: +/* 801ED3D4 001EA334 7C 03 28 50 */ subf r0, r3, r5 +/* 801ED3D8 001EA338 7C 09 03 A6 */ mtctr r0 +/* 801ED3DC 001EA33C 7C 03 28 00 */ cmpw r3, r5 +/* 801ED3E0 001EA340 40 80 00 08 */ bge lbl_801ED3E8 +lbl_801ED3E4: +/* 801ED3E4 001EA344 42 00 00 00 */ bdnz lbl_801ED3E4 +lbl_801ED3E8: +/* 801ED3E8 001EA348 38 00 00 00 */ li r0, 0 +/* 801ED3EC 001EA34C 3B 98 04 B4 */ addi r28, r24, 0x4b4 +/* 801ED3F0 001EA350 3C 60 80 3D */ lis r3, lbl_803D1F30@ha +/* 801ED3F4 001EA354 90 18 04 84 */ stw r0, 0x484(r24) +/* 801ED3F8 001EA358 CB C2 AD E0 */ lfd f30, lbl_805ACB00@sda21(r2) +/* 801ED3FC 001EA35C 7F 9F E3 78 */ mr r31, r28 +/* 801ED400 001EA360 C3 E2 AE 38 */ lfs f31, lbl_805ACB58@sda21(r2) +/* 801ED404 001EA364 3A C3 1F 30 */ addi r22, r3, lbl_803D1F30@l +/* 801ED408 001EA368 3B 60 00 00 */ li r27, 0 +/* 801ED40C 001EA36C 3E E0 43 30 */ lis r23, 0x4330 +lbl_801ED410: +/* 801ED410 001EA370 80 7F 00 00 */ lwz r3, 0(r31) +/* 801ED414 001EA374 7F 44 D3 78 */ mr r4, r26 +/* 801ED418 001EA378 80 63 00 00 */ lwz r3, 0(r3) +/* 801ED41C 001EA37C 4B F2 7B 41 */ bl PickAnimatedModel__10CModelDataCFQ210CModelData11EWhichModel +/* 801ED420 001EA380 38 81 00 14 */ addi r4, r1, 0x14 +/* 801ED424 001EA384 48 16 52 45 */ bl sub_80352668 +/* 801ED428 001EA388 80 18 04 30 */ lwz r0, 0x430(r24) +/* 801ED42C 001EA38C 7C 83 00 D0 */ neg r4, r3 +/* 801ED430 001EA390 7C 84 1B 78 */ or r4, r4, r3 +/* 801ED434 001EA394 90 61 00 24 */ stw r3, 0x24(r1) +/* 801ED438 001EA398 54 00 18 38 */ slwi r0, r0, 3 +/* 801ED43C 001EA39C 54 84 0F FE */ srwi r4, r4, 0x1f +/* 801ED440 001EA3A0 7C BE 02 15 */ add. r5, r30, r0 +/* 801ED444 001EA3A4 98 81 00 20 */ stb r4, 0x20(r1) +/* 801ED448 001EA3A8 41 82 00 14 */ beq lbl_801ED45C +/* 801ED44C 001EA3AC 98 85 00 00 */ stb r4, 0(r5) +/* 801ED450 001EA3B0 38 00 00 00 */ li r0, 0 +/* 801ED454 001EA3B4 90 65 00 04 */ stw r3, 4(r5) +/* 801ED458 001EA3B8 98 01 00 20 */ stb r0, 0x20(r1) +lbl_801ED45C: +/* 801ED45C 001EA3BC 80 78 04 30 */ lwz r3, 0x430(r24) +/* 801ED460 001EA3C0 88 01 00 20 */ lbz r0, 0x20(r1) +/* 801ED464 001EA3C4 38 63 00 01 */ addi r3, r3, 1 +/* 801ED468 001EA3C8 28 00 00 00 */ cmplwi r0, 0 +/* 801ED46C 001EA3CC 90 78 04 30 */ stw r3, 0x430(r24) +/* 801ED470 001EA3D0 41 82 00 0C */ beq lbl_801ED47C +/* 801ED474 001EA3D4 80 61 00 24 */ lwz r3, 0x24(r1) +/* 801ED478 001EA3D8 48 12 84 B9 */ bl Free__7CMemoryFPCv +lbl_801ED47C: +/* 801ED47C 001EA3DC 80 18 04 84 */ lwz r0, 0x484(r24) +/* 801ED480 001EA3E0 54 00 10 3A */ slwi r0, r0, 2 +/* 801ED484 001EA3E4 7C 7D 02 15 */ add. r3, r29, r0 +/* 801ED488 001EA3E8 41 82 00 0C */ beq lbl_801ED494 +/* 801ED48C 001EA3EC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801ED490 001EA3F0 90 03 00 00 */ stw r0, 0(r3) +lbl_801ED494: +/* 801ED494 001EA3F4 80 78 04 84 */ lwz r3, 0x484(r24) +/* 801ED498 001EA3F8 38 80 00 01 */ li r4, 1 +/* 801ED49C 001EA3FC 38 03 00 01 */ addi r0, r3, 1 +/* 801ED4A0 001EA400 90 18 04 84 */ stw r0, 0x484(r24) +/* 801ED4A4 001EA404 80 7F 00 00 */ lwz r3, 0(r31) +/* 801ED4A8 001EA408 80 63 00 00 */ lwz r3, 0(r3) +/* 801ED4AC 001EA40C 4B F2 80 B5 */ bl EnableLooping__10CModelDataFb +/* 801ED4B0 001EA410 7E C4 B3 78 */ mr r4, r22 +/* 801ED4B4 001EA414 38 61 00 28 */ addi r3, r1, 0x28 +/* 801ED4B8 001EA418 4B E1 78 01 */ bl string_l__4rstlFPCc +/* 801ED4BC 001EA41C 80 18 00 04 */ lwz r0, 4(r24) +/* 801ED4C0 001EA420 38 81 00 28 */ addi r4, r1, 0x28 +/* 801ED4C4 001EA424 90 01 00 0C */ stw r0, 0xc(r1) +/* 801ED4C8 001EA428 80 7F 00 00 */ lwz r3, 0(r31) +/* 801ED4CC 001EA42C 90 01 00 08 */ stw r0, 8(r1) +/* 801ED4D0 001EA430 82 A3 00 00 */ lwz r21, 0(r3) +/* 801ED4D4 001EA434 80 75 00 10 */ lwz r3, 0x10(r21) +/* 801ED4D8 001EA438 4B E3 EF 95 */ bl "GetAnimTimeRemaining__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801ED4DC 001EA43C 6F 60 80 00 */ xoris r0, r27, 0x8000 +/* 801ED4E0 001EA440 92 E1 00 58 */ stw r23, 0x58(r1) +/* 801ED4E4 001EA444 7E A4 AB 78 */ mr r4, r21 +/* 801ED4E8 001EA448 7F 25 CB 78 */ mr r5, r25 +/* 801ED4EC 001EA44C 90 01 00 5C */ stw r0, 0x5c(r1) +/* 801ED4F0 001EA450 38 61 00 38 */ addi r3, r1, 0x38 +/* 801ED4F4 001EA454 38 C1 00 0C */ addi r6, r1, 0xc +/* 801ED4F8 001EA458 38 E0 00 01 */ li r7, 1 +/* 801ED4FC 001EA45C C8 01 00 58 */ lfd f0, 0x58(r1) +/* 801ED500 001EA460 EC 00 F0 28 */ fsubs f0, f0, f30 +/* 801ED504 001EA464 EC 00 07 F2 */ fmuls f0, f0, f31 +/* 801ED508 001EA468 EC 20 00 72 */ fmuls f1, f0, f1 +/* 801ED50C 001EA46C 4B F2 86 29 */ bl AdvanceAnimation__10CModelDataFfR13CStateManager7TAreaIdb +/* 801ED510 001EA470 38 61 00 28 */ addi r3, r1, 0x28 +/* 801ED514 001EA474 48 15 05 CD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801ED518 001EA478 3B 7B 00 01 */ addi r27, r27, 1 +/* 801ED51C 001EA47C 3B FF 00 04 */ addi r31, r31, 4 +/* 801ED520 001EA480 2C 1B 00 09 */ cmpwi r27, 9 +/* 801ED524 001EA484 41 80 FE EC */ blt lbl_801ED410 +/* 801ED528 001EA488 80 7C 00 24 */ lwz r3, 0x24(r28) +/* 801ED52C 001EA48C 7F 44 D3 78 */ mr r4, r26 +/* 801ED530 001EA490 80 63 00 00 */ lwz r3, 0(r3) +/* 801ED534 001EA494 4B F2 7A 29 */ bl PickAnimatedModel__10CModelDataCFQ210CModelData11EWhichModel +/* 801ED538 001EA498 38 81 00 10 */ addi r4, r1, 0x10 +/* 801ED53C 001EA49C 48 16 51 2D */ bl sub_80352668 +/* 801ED540 001EA4A0 80 18 04 30 */ lwz r0, 0x430(r24) +/* 801ED544 001EA4A4 7C 83 00 D0 */ neg r4, r3 +/* 801ED548 001EA4A8 7C 84 1B 78 */ or r4, r4, r3 +/* 801ED54C 001EA4AC 90 61 00 1C */ stw r3, 0x1c(r1) +/* 801ED550 001EA4B0 54 00 18 38 */ slwi r0, r0, 3 +/* 801ED554 001EA4B4 54 84 0F FE */ srwi r4, r4, 0x1f +/* 801ED558 001EA4B8 7C BE 02 15 */ add. r5, r30, r0 +/* 801ED55C 001EA4BC 98 81 00 18 */ stb r4, 0x18(r1) +/* 801ED560 001EA4C0 41 82 00 14 */ beq lbl_801ED574 +/* 801ED564 001EA4C4 98 85 00 00 */ stb r4, 0(r5) +/* 801ED568 001EA4C8 38 00 00 00 */ li r0, 0 +/* 801ED56C 001EA4CC 90 65 00 04 */ stw r3, 4(r5) +/* 801ED570 001EA4D0 98 01 00 18 */ stb r0, 0x18(r1) +lbl_801ED574: +/* 801ED574 001EA4D4 80 78 04 30 */ lwz r3, 0x430(r24) +/* 801ED578 001EA4D8 88 01 00 18 */ lbz r0, 0x18(r1) +/* 801ED57C 001EA4DC 38 63 00 01 */ addi r3, r3, 1 +/* 801ED580 001EA4E0 28 00 00 00 */ cmplwi r0, 0 +/* 801ED584 001EA4E4 90 78 04 30 */ stw r3, 0x430(r24) +/* 801ED588 001EA4E8 41 82 00 0C */ beq lbl_801ED594 +/* 801ED58C 001EA4EC 80 61 00 1C */ lwz r3, 0x1c(r1) +/* 801ED590 001EA4F0 48 12 83 A1 */ bl Free__7CMemoryFPCv +lbl_801ED594: +/* 801ED594 001EA4F4 80 18 04 84 */ lwz r0, 0x484(r24) +/* 801ED598 001EA4F8 54 00 10 3A */ slwi r0, r0, 2 +/* 801ED59C 001EA4FC 7C 7D 02 15 */ add. r3, r29, r0 +/* 801ED5A0 001EA500 41 82 00 0C */ beq lbl_801ED5AC +/* 801ED5A4 001EA504 80 01 00 10 */ lwz r0, 0x10(r1) +/* 801ED5A8 001EA508 90 03 00 00 */ stw r0, 0(r3) +lbl_801ED5AC: +/* 801ED5AC 001EA50C 80 78 04 84 */ lwz r3, 0x484(r24) +/* 801ED5B0 001EA510 38 03 00 01 */ addi r0, r3, 1 +/* 801ED5B4 001EA514 90 18 04 84 */ stw r0, 0x484(r24) +/* 801ED5B8 001EA518 93 58 04 DC */ stw r26, 0x4dc(r24) +/* 801ED5BC 001EA51C E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0 +/* 801ED5C0 001EA520 CB E1 00 A0 */ lfd f31, 0xa0(r1) +/* 801ED5C4 001EA524 E3 C1 00 98 */ psq_l f30, 152(r1), 0, qr0 +/* 801ED5C8 001EA528 CB C1 00 90 */ lfd f30, 0x90(r1) +/* 801ED5CC 001EA52C BA A1 00 64 */ lmw r21, 0x64(r1) +/* 801ED5D0 001EA530 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 801ED5D4 001EA534 7C 08 03 A6 */ mtlr r0 +/* 801ED5D8 001EA538 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 801ED5DC 001EA53C 4E 80 00 20 */ blr + +.global AcceptScriptMsg__17CWallCrawlerSwarmF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__17CWallCrawlerSwarmF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 801ED5E0 001EA540 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 801ED5E4 001EA544 7C 08 02 A6 */ mflr r0 +/* 801ED5E8 001EA548 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 801ED5EC 001EA54C 93 E1 00 9C */ stw r31, 0x9c(r1) +/* 801ED5F0 001EA550 93 C1 00 98 */ stw r30, 0x98(r1) +/* 801ED5F4 001EA554 7C 9E 23 78 */ mr r30, r4 +/* 801ED5F8 001EA558 93 A1 00 94 */ stw r29, 0x94(r1) +/* 801ED5FC 001EA55C 7C DD 33 78 */ mr r29, r6 +/* 801ED600 001EA560 93 81 00 90 */ stw r28, 0x90(r1) +/* 801ED604 001EA564 7C 7C 1B 78 */ mr r28, r3 +/* 801ED608 001EA568 A0 05 00 00 */ lhz r0, 0(r5) +/* 801ED60C 001EA56C 38 A1 00 08 */ addi r5, r1, 8 +/* 801ED610 001EA570 B0 01 00 08 */ sth r0, 8(r1) +/* 801ED614 001EA574 4B E6 60 01 */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 801ED618 001EA578 2C 1E 00 04 */ cmpwi r30, 4 +/* 801ED61C 001EA57C 41 82 00 90 */ beq lbl_801ED6AC +/* 801ED620 001EA580 40 80 00 10 */ bge lbl_801ED630 +/* 801ED624 001EA584 2C 1E 00 01 */ cmpwi r30, 1 +/* 801ED628 001EA588 41 82 00 84 */ beq lbl_801ED6AC +/* 801ED62C 001EA58C 48 00 00 80 */ b lbl_801ED6AC +lbl_801ED630: +/* 801ED630 001EA590 2C 1E 00 21 */ cmpwi r30, 0x21 +/* 801ED634 001EA594 41 82 00 08 */ beq lbl_801ED63C +/* 801ED638 001EA598 48 00 00 74 */ b lbl_801ED6AC +lbl_801ED63C: +/* 801ED63C 001EA59C 80 9C 05 48 */ lwz r4, 0x548(r28) +/* 801ED640 001EA5A0 38 7C 01 08 */ addi r3, r28, 0x108 +/* 801ED644 001EA5A4 48 00 19 59 */ bl sub_801eef9c +/* 801ED648 001EA5A8 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 801ED64C 001EA5AC 3B C0 00 00 */ li r30, 0 +/* 801ED650 001EA5B0 3B E3 66 70 */ addi r31, r3, skIdentity4f@l +/* 801ED654 001EA5B4 48 00 00 24 */ b lbl_801ED678 +lbl_801ED658: +/* 801ED658 001EA5B8 7F E4 FB 78 */ mr r4, r31 +/* 801ED65C 001EA5BC 7F C5 F3 78 */ mr r5, r30 +/* 801ED660 001EA5C0 38 61 00 0C */ addi r3, r1, 0xc +/* 801ED664 001EA5C4 48 00 16 31 */ bl __ct__Q217CWallCrawlerSwarm5CBoidFRC12CTransform4fUi +/* 801ED668 001EA5C8 7C 64 1B 78 */ mr r4, r3 +/* 801ED66C 001EA5CC 38 7C 01 08 */ addi r3, r28, 0x108 +/* 801ED670 001EA5D0 48 00 00 5D */ bl sub_801ed6cc +/* 801ED674 001EA5D4 3B DE 00 01 */ addi r30, r30, 1 +lbl_801ED678: +/* 801ED678 001EA5D8 80 1C 01 10 */ lwz r0, 0x110(r28) +/* 801ED67C 001EA5DC 7C 1E 00 00 */ cmpw r30, r0 +/* 801ED680 001EA5E0 41 80 FF D8 */ blt lbl_801ED658 +/* 801ED684 001EA5E4 7F 83 E3 78 */ mr r3, r28 +/* 801ED688 001EA5E8 7F A4 EB 78 */ mr r4, r29 +/* 801ED68C 001EA5EC 38 A0 00 00 */ li r5, 0 +/* 801ED690 001EA5F0 4B FF FC 99 */ bl AllocateSkinnedModels__17CWallCrawlerSwarmFR13CStateManagerQ210CModelData11EWhichModel +/* 801ED694 001EA5F4 7F 83 E3 78 */ mr r3, r28 +/* 801ED698 001EA5F8 7F A4 EB 78 */ mr r4, r29 +/* 801ED69C 001EA5FC 4B FF E2 59 */ bl AddDoorRepulsors__17CWallCrawlerSwarmFR13CStateManager +/* 801ED6A0 001EA600 7F 83 E3 78 */ mr r3, r28 +/* 801ED6A4 001EA604 38 80 00 00 */ li r4, 0 +/* 801ED6A8 001EA608 4B E6 56 C5 */ bl CreateShadow__6CActorFb +lbl_801ED6AC: +/* 801ED6AC 001EA60C 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 801ED6B0 001EA610 83 E1 00 9C */ lwz r31, 0x9c(r1) +/* 801ED6B4 001EA614 83 C1 00 98 */ lwz r30, 0x98(r1) +/* 801ED6B8 001EA618 83 A1 00 94 */ lwz r29, 0x94(r1) +/* 801ED6BC 001EA61C 83 81 00 90 */ lwz r28, 0x90(r1) +/* 801ED6C0 001EA620 7C 08 03 A6 */ mtlr r0 +/* 801ED6C4 001EA624 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 801ED6C8 001EA628 4E 80 00 20 */ blr + +.global sub_801ed6cc +sub_801ed6cc: +/* 801ED6CC 001EA62C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801ED6D0 001EA630 7C 08 02 A6 */ mflr r0 +/* 801ED6D4 001EA634 90 01 00 14 */ stw r0, 0x14(r1) +/* 801ED6D8 001EA638 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801ED6DC 001EA63C 7C 9F 23 78 */ mr r31, r4 +/* 801ED6E0 001EA640 93 C1 00 08 */ stw r30, 8(r1) +/* 801ED6E4 001EA644 7C 7E 1B 78 */ mr r30, r3 +/* 801ED6E8 001EA648 80 03 00 04 */ lwz r0, 4(r3) +/* 801ED6EC 001EA64C 80 A3 00 08 */ lwz r5, 8(r3) +/* 801ED6F0 001EA650 7C 00 28 00 */ cmpw r0, r5 +/* 801ED6F4 001EA654 41 80 00 18 */ blt lbl_801ED70C +/* 801ED6F8 001EA658 2C 05 00 00 */ cmpwi r5, 0 +/* 801ED6FC 001EA65C 38 80 00 04 */ li r4, 4 +/* 801ED700 001EA660 41 82 00 08 */ beq lbl_801ED708 +/* 801ED704 001EA664 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801ED708: +/* 801ED708 001EA668 48 00 18 95 */ bl sub_801eef9c +lbl_801ED70C: +/* 801ED70C 001EA66C 80 1E 00 04 */ lwz r0, 4(r30) +/* 801ED710 001EA670 7F E4 FB 78 */ mr r4, r31 +/* 801ED714 001EA674 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 801ED718 001EA678 1C 00 00 84 */ mulli r0, r0, 0x84 +/* 801ED71C 001EA67C 7C 63 02 14 */ add r3, r3, r0 +/* 801ED720 001EA680 48 00 00 29 */ bl sub_801ed748 +/* 801ED724 001EA684 80 7E 00 04 */ lwz r3, 4(r30) +/* 801ED728 001EA688 38 03 00 01 */ addi r0, r3, 1 +/* 801ED72C 001EA68C 90 1E 00 04 */ stw r0, 4(r30) +/* 801ED730 001EA690 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801ED734 001EA694 83 C1 00 08 */ lwz r30, 8(r1) +/* 801ED738 001EA698 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801ED73C 001EA69C 7C 08 03 A6 */ mtlr r0 +/* 801ED740 001EA6A0 38 21 00 10 */ addi r1, r1, 0x10 +/* 801ED744 001EA6A4 4E 80 00 20 */ blr + +.global sub_801ed748 +sub_801ed748: +/* 801ED748 001EA6A8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801ED74C 001EA6AC 7C 08 02 A6 */ mflr r0 +/* 801ED750 001EA6B0 28 03 00 00 */ cmplwi r3, 0 +/* 801ED754 001EA6B4 90 01 00 14 */ stw r0, 0x14(r1) +/* 801ED758 001EA6B8 41 82 00 08 */ beq lbl_801ED760 +/* 801ED75C 001EA6BC 48 00 00 15 */ bl sub_801ed770 +lbl_801ED760: +/* 801ED760 001EA6C0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801ED764 001EA6C4 7C 08 03 A6 */ mtlr r0 +/* 801ED768 001EA6C8 38 21 00 10 */ addi r1, r1, 0x10 +/* 801ED76C 001EA6CC 4E 80 00 20 */ blr + +.global sub_801ed770 +sub_801ed770: +/* 801ED770 001EA6D0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801ED774 001EA6D4 7C 08 02 A6 */ mflr r0 +/* 801ED778 001EA6D8 90 01 00 14 */ stw r0, 0x14(r1) +/* 801ED77C 001EA6DC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801ED780 001EA6E0 7C 9F 23 78 */ mr r31, r4 +/* 801ED784 001EA6E4 93 C1 00 08 */ stw r30, 8(r1) +/* 801ED788 001EA6E8 7C 7E 1B 78 */ mr r30, r3 +/* 801ED78C 001EA6EC 48 12 53 E9 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801ED790 001EA6F0 C0 1F 00 30 */ lfs f0, 0x30(r31) +/* 801ED794 001EA6F4 7F C3 F3 78 */ mr r3, r30 +/* 801ED798 001EA6F8 D0 1E 00 30 */ stfs f0, 0x30(r30) +/* 801ED79C 001EA6FC C0 1F 00 34 */ lfs f0, 0x34(r31) +/* 801ED7A0 001EA700 D0 1E 00 34 */ stfs f0, 0x34(r30) +/* 801ED7A4 001EA704 C0 1F 00 38 */ lfs f0, 0x38(r31) +/* 801ED7A8 001EA708 D0 1E 00 38 */ stfs f0, 0x38(r30) +/* 801ED7AC 001EA70C A0 1F 00 3C */ lhz r0, 0x3c(r31) +/* 801ED7B0 001EA710 B0 1E 00 3C */ sth r0, 0x3c(r30) +/* 801ED7B4 001EA714 80 1F 00 40 */ lwz r0, 0x40(r31) +/* 801ED7B8 001EA718 90 1E 00 40 */ stw r0, 0x40(r30) +/* 801ED7BC 001EA71C 80 1F 00 44 */ lwz r0, 0x44(r31) +/* 801ED7C0 001EA720 90 1E 00 44 */ stw r0, 0x44(r30) +/* 801ED7C4 001EA724 C0 1F 00 48 */ lfs f0, 0x48(r31) +/* 801ED7C8 001EA728 D0 1E 00 48 */ stfs f0, 0x48(r30) +/* 801ED7CC 001EA72C C0 1F 00 4C */ lfs f0, 0x4c(r31) +/* 801ED7D0 001EA730 D0 1E 00 4C */ stfs f0, 0x4c(r30) +/* 801ED7D4 001EA734 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 801ED7D8 001EA738 D0 1E 00 50 */ stfs f0, 0x50(r30) +/* 801ED7DC 001EA73C C0 1F 00 54 */ lfs f0, 0x54(r31) +/* 801ED7E0 001EA740 D0 1E 00 54 */ stfs f0, 0x54(r30) +/* 801ED7E4 001EA744 C0 1F 00 58 */ lfs f0, 0x58(r31) +/* 801ED7E8 001EA748 D0 1E 00 58 */ stfs f0, 0x58(r30) +/* 801ED7EC 001EA74C C0 1F 00 5C */ lfs f0, 0x5c(r31) +/* 801ED7F0 001EA750 D0 1E 00 5C */ stfs f0, 0x5c(r30) +/* 801ED7F4 001EA754 C0 1F 00 60 */ lfs f0, 0x60(r31) +/* 801ED7F8 001EA758 D0 1E 00 60 */ stfs f0, 0x60(r30) +/* 801ED7FC 001EA75C C0 1F 00 64 */ lfs f0, 0x64(r31) +/* 801ED800 001EA760 D0 1E 00 64 */ stfs f0, 0x64(r30) +/* 801ED804 001EA764 C0 1F 00 68 */ lfs f0, 0x68(r31) +/* 801ED808 001EA768 D0 1E 00 68 */ stfs f0, 0x68(r30) +/* 801ED80C 001EA76C C0 1F 00 6C */ lfs f0, 0x6c(r31) +/* 801ED810 001EA770 D0 1E 00 6C */ stfs f0, 0x6c(r30) +/* 801ED814 001EA774 C0 1F 00 70 */ lfs f0, 0x70(r31) +/* 801ED818 001EA778 D0 1E 00 70 */ stfs f0, 0x70(r30) +/* 801ED81C 001EA77C 80 1F 00 74 */ lwz r0, 0x74(r31) +/* 801ED820 001EA780 90 1E 00 74 */ stw r0, 0x74(r30) +/* 801ED824 001EA784 C0 1F 00 78 */ lfs f0, 0x78(r31) +/* 801ED828 001EA788 D0 1E 00 78 */ stfs f0, 0x78(r30) +/* 801ED82C 001EA78C 80 1F 00 7C */ lwz r0, 0x7c(r31) +/* 801ED830 001EA790 90 1E 00 7C */ stw r0, 0x7c(r30) +/* 801ED834 001EA794 88 1F 00 80 */ lbz r0, 0x80(r31) +/* 801ED838 001EA798 98 1E 00 80 */ stb r0, 0x80(r30) +/* 801ED83C 001EA79C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801ED840 001EA7A0 83 C1 00 08 */ lwz r30, 8(r1) +/* 801ED844 001EA7A4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801ED848 001EA7A8 7C 08 03 A6 */ mtlr r0 +/* 801ED84C 001EA7AC 38 21 00 10 */ addi r1, r1, 0x10 +/* 801ED850 001EA7B0 4E 80 00 20 */ blr + +.global Accept__17CWallCrawlerSwarmFR8IVisitor +Accept__17CWallCrawlerSwarmFR8IVisitor: +/* 801ED854 001EA7B4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801ED858 001EA7B8 7C 08 02 A6 */ mflr r0 +/* 801ED85C 001EA7BC 90 01 00 14 */ stw r0, 0x14(r1) +/* 801ED860 001EA7C0 7C 60 1B 78 */ mr r0, r3 +/* 801ED864 001EA7C4 7C 83 23 78 */ mr r3, r4 +/* 801ED868 001EA7C8 81 84 00 00 */ lwz r12, 0(r4) +/* 801ED86C 001EA7CC 7C 04 03 78 */ mr r4, r0 +/* 801ED870 001EA7D0 81 8C 00 E4 */ lwz r12, 0xe4(r12) +/* 801ED874 001EA7D4 7D 89 03 A6 */ mtctr r12 +/* 801ED878 001EA7D8 4E 80 04 21 */ bctrl +/* 801ED87C 001EA7DC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801ED880 001EA7E0 7C 08 03 A6 */ mtlr r0 +/* 801ED884 001EA7E4 38 21 00 10 */ addi r1, r1, 0x10 +/* 801ED888 001EA7E8 4E 80 00 20 */ blr + +.global __dt__17CWallCrawlerSwarmFv +__dt__17CWallCrawlerSwarmFv: +/* 801ED88C 001EA7EC 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801ED890 001EA7F0 7C 08 02 A6 */ mflr r0 +/* 801ED894 001EA7F4 90 01 00 44 */ stw r0, 0x44(r1) +/* 801ED898 001EA7F8 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801ED89C 001EA7FC 7C 9F 23 78 */ mr r31, r4 +/* 801ED8A0 001EA800 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801ED8A4 001EA804 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801ED8A8 001EA808 93 A1 00 34 */ stw r29, 0x34(r1) +/* 801ED8AC 001EA80C 93 81 00 30 */ stw r28, 0x30(r1) +/* 801ED8B0 001EA810 41 82 02 B0 */ beq lbl_801EDB60 +/* 801ED8B4 001EA814 3C 60 80 3E */ lis r3, lbl_803E6308@ha +/* 801ED8B8 001EA818 34 1E 05 24 */ addic. r0, r30, 0x524 +/* 801ED8BC 001EA81C 38 03 63 08 */ addi r0, r3, lbl_803E6308@l +/* 801ED8C0 001EA820 90 1E 00 00 */ stw r0, 0(r30) +/* 801ED8C4 001EA824 41 82 00 60 */ beq lbl_801ED924 +/* 801ED8C8 001EA828 3B 9E 05 28 */ addi r28, r30, 0x528 +/* 801ED8CC 001EA82C 3B A0 00 00 */ li r29, 0 +/* 801ED8D0 001EA830 48 00 00 40 */ b lbl_801ED910 +lbl_801ED8D4: +/* 801ED8D4 001EA834 28 1C 00 00 */ cmplwi r28, 0 +/* 801ED8D8 001EA838 41 82 00 30 */ beq lbl_801ED908 +/* 801ED8DC 001EA83C 88 1C 00 00 */ lbz r0, 0(r28) +/* 801ED8E0 001EA840 28 00 00 00 */ cmplwi r0, 0 +/* 801ED8E4 001EA844 41 82 00 24 */ beq lbl_801ED908 +/* 801ED8E8 001EA848 80 7C 00 04 */ lwz r3, 4(r28) +/* 801ED8EC 001EA84C 28 03 00 00 */ cmplwi r3, 0 +/* 801ED8F0 001EA850 41 82 00 18 */ beq lbl_801ED908 +/* 801ED8F4 001EA854 81 83 00 00 */ lwz r12, 0(r3) +/* 801ED8F8 001EA858 38 80 00 01 */ li r4, 1 +/* 801ED8FC 001EA85C 81 8C 00 08 */ lwz r12, 8(r12) +/* 801ED900 001EA860 7D 89 03 A6 */ mtctr r12 +/* 801ED904 001EA864 4E 80 04 21 */ bctrl +lbl_801ED908: +/* 801ED908 001EA868 3B 9C 00 08 */ addi r28, r28, 8 +/* 801ED90C 001EA86C 3B BD 00 01 */ addi r29, r29, 1 +lbl_801ED910: +/* 801ED910 001EA870 80 1E 05 24 */ lwz r0, 0x524(r30) +/* 801ED914 001EA874 7C 1D 00 00 */ cmpw r29, r0 +/* 801ED918 001EA878 41 80 FF BC */ blt lbl_801ED8D4 +/* 801ED91C 001EA87C 38 00 00 00 */ li r0, 0 +/* 801ED920 001EA880 90 1E 05 24 */ stw r0, 0x524(r30) +lbl_801ED924: +/* 801ED924 001EA884 34 1E 04 F0 */ addic. r0, r30, 0x4f0 +/* 801ED928 001EA888 41 82 00 44 */ beq lbl_801ED96C +/* 801ED92C 001EA88C 3B 9E 04 F4 */ addi r28, r30, 0x4f4 +/* 801ED930 001EA890 3B A0 00 00 */ li r29, 0 +/* 801ED934 001EA894 48 00 00 24 */ b lbl_801ED958 +lbl_801ED938: +/* 801ED938 001EA898 28 1C 00 00 */ cmplwi r28, 0 +/* 801ED93C 001EA89C 41 82 00 14 */ beq lbl_801ED950 +/* 801ED940 001EA8A0 41 82 00 10 */ beq lbl_801ED950 +/* 801ED944 001EA8A4 7F 83 E3 78 */ mr r3, r28 +/* 801ED948 001EA8A8 38 80 00 00 */ li r4, 0 +/* 801ED94C 001EA8AC 48 15 34 F5 */ bl __dt__6CTokenFv +lbl_801ED950: +/* 801ED950 001EA8B0 3B 9C 00 0C */ addi r28, r28, 0xc +/* 801ED954 001EA8B4 3B BD 00 01 */ addi r29, r29, 1 +lbl_801ED958: +/* 801ED958 001EA8B8 80 1E 04 F0 */ lwz r0, 0x4f0(r30) +/* 801ED95C 001EA8BC 7C 1D 00 00 */ cmpw r29, r0 +/* 801ED960 001EA8C0 41 80 FF D8 */ blt lbl_801ED938 +/* 801ED964 001EA8C4 38 00 00 00 */ li r0, 0 +/* 801ED968 001EA8C8 90 1E 04 F0 */ stw r0, 0x4f0(r30) +lbl_801ED96C: +/* 801ED96C 001EA8CC 34 1E 04 E0 */ addic. r0, r30, 0x4e0 +/* 801ED970 001EA8D0 41 82 00 44 */ beq lbl_801ED9B4 +/* 801ED974 001EA8D4 80 1E 04 E4 */ lwz r0, 0x4e4(r30) +/* 801ED978 001EA8D8 80 7E 04 EC */ lwz r3, 0x4ec(r30) +/* 801ED97C 001EA8DC 54 00 20 36 */ slwi r0, r0, 4 +/* 801ED980 001EA8E0 7C 03 02 14 */ add r0, r3, r0 +/* 801ED984 001EA8E4 90 61 00 1C */ stw r3, 0x1c(r1) +/* 801ED988 001EA8E8 7C 64 1B 78 */ mr r4, r3 +/* 801ED98C 001EA8EC 90 01 00 24 */ stw r0, 0x24(r1) +/* 801ED990 001EA8F0 90 01 00 20 */ stw r0, 0x20(r1) +/* 801ED994 001EA8F4 90 61 00 18 */ stw r3, 0x18(r1) +/* 801ED998 001EA8F8 48 00 00 08 */ b lbl_801ED9A0 +lbl_801ED99C: +/* 801ED99C 001EA8FC 38 84 00 10 */ addi r4, r4, 0x10 +lbl_801ED9A0: +/* 801ED9A0 001EA900 7C 04 00 40 */ cmplw r4, r0 +/* 801ED9A4 001EA904 40 82 FF F8 */ bne lbl_801ED99C +/* 801ED9A8 001EA908 28 03 00 00 */ cmplwi r3, 0 +/* 801ED9AC 001EA90C 41 82 00 08 */ beq lbl_801ED9B4 +/* 801ED9B0 001EA910 48 12 7F 81 */ bl Free__7CMemoryFPCv +lbl_801ED9B4: +/* 801ED9B4 001EA914 34 1E 04 B0 */ addic. r0, r30, 0x4b0 +/* 801ED9B8 001EA918 41 82 00 40 */ beq lbl_801ED9F8 +/* 801ED9BC 001EA91C 3B 9E 04 B4 */ addi r28, r30, 0x4b4 +/* 801ED9C0 001EA920 3B A0 00 00 */ li r29, 0 +/* 801ED9C4 001EA924 48 00 00 20 */ b lbl_801ED9E4 +lbl_801ED9C8: +/* 801ED9C8 001EA928 28 1C 00 00 */ cmplwi r28, 0 +/* 801ED9CC 001EA92C 41 82 00 10 */ beq lbl_801ED9DC +/* 801ED9D0 001EA930 41 82 00 0C */ beq lbl_801ED9DC +/* 801ED9D4 001EA934 7F 83 E3 78 */ mr r3, r28 +/* 801ED9D8 001EA938 4B FE 59 89 */ bl sub_801d3360 +lbl_801ED9DC: +/* 801ED9DC 001EA93C 3B 9C 00 04 */ addi r28, r28, 4 +/* 801ED9E0 001EA940 3B BD 00 01 */ addi r29, r29, 1 +lbl_801ED9E4: +/* 801ED9E4 001EA944 80 1E 04 B0 */ lwz r0, 0x4b0(r30) +/* 801ED9E8 001EA948 7C 1D 00 00 */ cmpw r29, r0 +/* 801ED9EC 001EA94C 41 80 FF DC */ blt lbl_801ED9C8 +/* 801ED9F0 001EA950 38 00 00 00 */ li r0, 0 +/* 801ED9F4 001EA954 90 1E 04 B0 */ stw r0, 0x4b0(r30) +lbl_801ED9F8: +/* 801ED9F8 001EA958 34 1E 04 84 */ addic. r0, r30, 0x484 +/* 801ED9FC 001EA95C 41 82 00 58 */ beq lbl_801EDA54 +/* 801EDA00 001EA960 80 BE 04 84 */ lwz r5, 0x484(r30) +/* 801EDA04 001EA964 38 60 00 00 */ li r3, 0 +/* 801EDA08 001EA968 2C 05 00 00 */ cmpwi r5, 0 +/* 801EDA0C 001EA96C 40 81 00 40 */ ble lbl_801EDA4C +/* 801EDA10 001EA970 2C 05 00 08 */ cmpwi r5, 8 +/* 801EDA14 001EA974 38 85 FF F8 */ addi r4, r5, -8 +/* 801EDA18 001EA978 40 81 00 20 */ ble lbl_801EDA38 +/* 801EDA1C 001EA97C 38 04 00 07 */ addi r0, r4, 7 +/* 801EDA20 001EA980 54 00 E8 FE */ srwi r0, r0, 3 +/* 801EDA24 001EA984 7C 09 03 A6 */ mtctr r0 +/* 801EDA28 001EA988 2C 04 00 00 */ cmpwi r4, 0 +/* 801EDA2C 001EA98C 40 81 00 0C */ ble lbl_801EDA38 +lbl_801EDA30: +/* 801EDA30 001EA990 38 63 00 08 */ addi r3, r3, 8 +/* 801EDA34 001EA994 42 00 FF FC */ bdnz lbl_801EDA30 +lbl_801EDA38: +/* 801EDA38 001EA998 7C 03 28 50 */ subf r0, r3, r5 +/* 801EDA3C 001EA99C 7C 09 03 A6 */ mtctr r0 +/* 801EDA40 001EA9A0 7C 03 28 00 */ cmpw r3, r5 +/* 801EDA44 001EA9A4 40 80 00 08 */ bge lbl_801EDA4C +lbl_801EDA48: +/* 801EDA48 001EA9A8 42 00 00 00 */ bdnz lbl_801EDA48 +lbl_801EDA4C: +/* 801EDA4C 001EA9AC 38 00 00 00 */ li r0, 0 +/* 801EDA50 001EA9B0 90 1E 04 84 */ stw r0, 0x484(r30) +lbl_801EDA54: +/* 801EDA54 001EA9B4 34 1E 04 30 */ addic. r0, r30, 0x430 +/* 801EDA58 001EA9B8 41 82 00 48 */ beq lbl_801EDAA0 +/* 801EDA5C 001EA9BC 3B 9E 04 34 */ addi r28, r30, 0x434 +/* 801EDA60 001EA9C0 3B A0 00 00 */ li r29, 0 +/* 801EDA64 001EA9C4 48 00 00 28 */ b lbl_801EDA8C +lbl_801EDA68: +/* 801EDA68 001EA9C8 28 1C 00 00 */ cmplwi r28, 0 +/* 801EDA6C 001EA9CC 41 82 00 18 */ beq lbl_801EDA84 +/* 801EDA70 001EA9D0 88 1C 00 00 */ lbz r0, 0(r28) +/* 801EDA74 001EA9D4 28 00 00 00 */ cmplwi r0, 0 +/* 801EDA78 001EA9D8 41 82 00 0C */ beq lbl_801EDA84 +/* 801EDA7C 001EA9DC 80 7C 00 04 */ lwz r3, 4(r28) +/* 801EDA80 001EA9E0 48 12 7E B1 */ bl Free__7CMemoryFPCv +lbl_801EDA84: +/* 801EDA84 001EA9E4 3B 9C 00 08 */ addi r28, r28, 8 +/* 801EDA88 001EA9E8 3B BD 00 01 */ addi r29, r29, 1 +lbl_801EDA8C: +/* 801EDA8C 001EA9EC 80 1E 04 30 */ lwz r0, 0x430(r30) +/* 801EDA90 001EA9F0 7C 1D 00 00 */ cmpw r29, r0 +/* 801EDA94 001EA9F4 41 80 FF D4 */ blt lbl_801EDA68 +/* 801EDA98 001EA9F8 38 00 00 00 */ li r0, 0 +/* 801EDA9C 001EA9FC 90 1E 04 30 */ stw r0, 0x430(r30) +lbl_801EDAA0: +/* 801EDAA0 001EAA00 34 1E 01 68 */ addic. r0, r30, 0x168 +/* 801EDAA4 001EAA04 41 82 00 58 */ beq lbl_801EDAFC +/* 801EDAA8 001EAA08 80 BE 01 68 */ lwz r5, 0x168(r30) +/* 801EDAAC 001EAA0C 38 60 00 00 */ li r3, 0 +/* 801EDAB0 001EAA10 2C 05 00 00 */ cmpwi r5, 0 +/* 801EDAB4 001EAA14 40 81 00 40 */ ble lbl_801EDAF4 +/* 801EDAB8 001EAA18 2C 05 00 08 */ cmpwi r5, 8 +/* 801EDABC 001EAA1C 38 85 FF F8 */ addi r4, r5, -8 +/* 801EDAC0 001EAA20 40 81 00 20 */ ble lbl_801EDAE0 +/* 801EDAC4 001EAA24 38 04 00 07 */ addi r0, r4, 7 +/* 801EDAC8 001EAA28 54 00 E8 FE */ srwi r0, r0, 3 +/* 801EDACC 001EAA2C 7C 09 03 A6 */ mtctr r0 +/* 801EDAD0 001EAA30 2C 04 00 00 */ cmpwi r4, 0 +/* 801EDAD4 001EAA34 40 81 00 0C */ ble lbl_801EDAE0 +lbl_801EDAD8: +/* 801EDAD8 001EAA38 38 63 00 08 */ addi r3, r3, 8 +/* 801EDADC 001EAA3C 42 00 FF FC */ bdnz lbl_801EDAD8 +lbl_801EDAE0: +/* 801EDAE0 001EAA40 7C 03 28 50 */ subf r0, r3, r5 +/* 801EDAE4 001EAA44 7C 09 03 A6 */ mtctr r0 +/* 801EDAE8 001EAA48 7C 03 28 00 */ cmpw r3, r5 +/* 801EDAEC 001EAA4C 40 80 00 08 */ bge lbl_801EDAF4 +lbl_801EDAF0: +/* 801EDAF0 001EAA50 42 00 00 00 */ bdnz lbl_801EDAF0 +lbl_801EDAF4: +/* 801EDAF4 001EAA54 38 00 00 00 */ li r0, 0 +/* 801EDAF8 001EAA58 90 1E 01 68 */ stw r0, 0x168(r30) +lbl_801EDAFC: +/* 801EDAFC 001EAA5C 34 1E 01 08 */ addic. r0, r30, 0x108 +/* 801EDB00 001EAA60 41 82 00 44 */ beq lbl_801EDB44 +/* 801EDB04 001EAA64 80 1E 01 0C */ lwz r0, 0x10c(r30) +/* 801EDB08 001EAA68 80 7E 01 14 */ lwz r3, 0x114(r30) +/* 801EDB0C 001EAA6C 1C 00 00 84 */ mulli r0, r0, 0x84 +/* 801EDB10 001EAA70 90 61 00 0C */ stw r3, 0xc(r1) +/* 801EDB14 001EAA74 7C 64 1B 78 */ mr r4, r3 +/* 801EDB18 001EAA78 7C 03 02 14 */ add r0, r3, r0 +/* 801EDB1C 001EAA7C 90 61 00 08 */ stw r3, 8(r1) +/* 801EDB20 001EAA80 90 01 00 14 */ stw r0, 0x14(r1) +/* 801EDB24 001EAA84 90 01 00 10 */ stw r0, 0x10(r1) +/* 801EDB28 001EAA88 48 00 00 08 */ b lbl_801EDB30 +lbl_801EDB2C: +/* 801EDB2C 001EAA8C 38 84 00 84 */ addi r4, r4, 0x84 +lbl_801EDB30: +/* 801EDB30 001EAA90 7C 04 00 40 */ cmplw r4, r0 +/* 801EDB34 001EAA94 40 82 FF F8 */ bne lbl_801EDB2C +/* 801EDB38 001EAA98 28 03 00 00 */ cmplwi r3, 0 +/* 801EDB3C 001EAA9C 41 82 00 08 */ beq lbl_801EDB44 +/* 801EDB40 001EAAA0 48 12 7D F1 */ bl Free__7CMemoryFPCv +lbl_801EDB44: +/* 801EDB44 001EAAA4 7F C3 F3 78 */ mr r3, r30 +/* 801EDB48 001EAAA8 38 80 00 00 */ li r4, 0 +/* 801EDB4C 001EAAAC 4B E6 7B A5 */ bl __dt__6CActorFv +/* 801EDB50 001EAAB0 7F E0 07 35 */ extsh. r0, r31 +/* 801EDB54 001EAAB4 40 81 00 0C */ ble lbl_801EDB60 +/* 801EDB58 001EAAB8 7F C3 F3 78 */ mr r3, r30 +/* 801EDB5C 001EAABC 48 12 7D D5 */ bl Free__7CMemoryFPCv +lbl_801EDB60: +/* 801EDB60 001EAAC0 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801EDB64 001EAAC4 7F C3 F3 78 */ mr r3, r30 +/* 801EDB68 001EAAC8 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801EDB6C 001EAACC 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801EDB70 001EAAD0 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 801EDB74 001EAAD4 83 81 00 30 */ lwz r28, 0x30(r1) +/* 801EDB78 001EAAD8 7C 08 03 A6 */ mtlr r0 +/* 801EDB7C 001EAADC 38 21 00 40 */ addi r1, r1, 0x40 +/* 801EDB80 001EAAE0 4E 80 00 20 */ blr + +.global "__ct__17CWallCrawlerSwarmF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3fRC12CTransform4fRC8CAnimResRC8CAnimResUiUiUiUiRC11CDamageInfoffffiiffffffffi16CActorParameters" +"__ct__17CWallCrawlerSwarmF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3fRC12CTransform4fRC8CAnimResRC8CAnimResUiUiUiUiRC11CDamageInfoffffiiffffffffi16CActorParameters": +/* 801EDB84 001EAAE4 94 21 FD 40 */ stwu r1, -0x2c0(r1) +/* 801EDB88 001EAAE8 7C 08 02 A6 */ mflr r0 +/* 801EDB8C 001EAAEC 90 01 02 C4 */ stw r0, 0x2c4(r1) +/* 801EDB90 001EAAF0 DB E1 02 B0 */ stfd f31, 0x2b0(r1) +/* 801EDB94 001EAAF4 F3 E1 02 B8 */ psq_st f31, 696(r1), 0, qr0 +/* 801EDB98 001EAAF8 DB C1 02 A0 */ stfd f30, 0x2a0(r1) +/* 801EDB9C 001EAAFC F3 C1 02 A8 */ psq_st f30, 680(r1), 0, qr0 +/* 801EDBA0 001EAB00 DB A1 02 90 */ stfd f29, 0x290(r1) +/* 801EDBA4 001EAB04 F3 A1 02 98 */ psq_st f29, 664(r1), 0, qr0 +/* 801EDBA8 001EAB08 DB 81 02 80 */ stfd f28, 0x280(r1) +/* 801EDBAC 001EAB0C F3 81 02 88 */ psq_st f28, 648(r1), 0, qr0 +/* 801EDBB0 001EAB10 DB 61 02 70 */ stfd f27, 0x270(r1) +/* 801EDBB4 001EAB14 F3 61 02 78 */ psq_st f27, 632(r1), 0, qr0 +/* 801EDBB8 001EAB18 DB 41 02 60 */ stfd f26, 0x260(r1) +/* 801EDBBC 001EAB1C F3 41 02 68 */ psq_st f26, 616(r1), 0, qr0 +/* 801EDBC0 001EAB20 DB 21 02 50 */ stfd f25, 0x250(r1) +/* 801EDBC4 001EAB24 F3 21 02 58 */ psq_st f25, 600(r1), 0, qr0 +/* 801EDBC8 001EAB28 DB 01 02 40 */ stfd f24, 0x240(r1) +/* 801EDBCC 001EAB2C F3 01 02 48 */ psq_st f24, 584(r1), 0, qr0 +/* 801EDBD0 001EAB30 DA E1 02 30 */ stfd f23, 0x230(r1) +/* 801EDBD4 001EAB34 F2 E1 02 38 */ psq_st f23, 568(r1), 0, qr0 +/* 801EDBD8 001EAB38 DA C1 02 20 */ stfd f22, 0x220(r1) +/* 801EDBDC 001EAB3C F2 C1 02 28 */ psq_st f22, 552(r1), 0, qr0 +/* 801EDBE0 001EAB40 DA A1 02 10 */ stfd f21, 0x210(r1) +/* 801EDBE4 001EAB44 F2 A1 02 18 */ psq_st f21, 536(r1), 0, qr0 +/* 801EDBE8 001EAB48 DA 81 02 00 */ stfd f20, 0x200(r1) +/* 801EDBEC 001EAB4C F2 81 02 08 */ psq_st f20, 520(r1), 0, qr0 +/* 801EDBF0 001EAB50 DA 61 01 F0 */ stfd f19, 0x1f0(r1) +/* 801EDBF4 001EAB54 F2 61 01 F8 */ psq_st f19, 504(r1), 0, qr0 +/* 801EDBF8 001EAB58 DA 41 01 E0 */ stfd f18, 0x1e0(r1) +/* 801EDBFC 001EAB5C F2 41 01 E8 */ psq_st f18, 488(r1), 0, qr0 +/* 801EDC00 001EAB60 DA 21 01 D0 */ stfd f17, 0x1d0(r1) +/* 801EDC04 001EAB64 F2 21 01 D8 */ psq_st f17, 472(r1), 0, qr0 +/* 801EDC08 001EAB68 DA 01 01 C0 */ stfd f16, 0x1c0(r1) +/* 801EDC0C 001EAB6C F2 01 01 C8 */ psq_st f16, 456(r1), 0, qr0 +/* 801EDC10 001EAB70 BD C1 01 78 */ stmw r14, 0x178(r1) +/* 801EDC14 001EAB74 FE 00 08 90 */ fmr f16, f1 +/* 801EDC18 001EAB78 7C 6F 1B 78 */ mr r15, r3 +/* 801EDC1C 001EAB7C FE 20 10 90 */ fmr f17, f2 +/* 801EDC20 001EAB80 82 41 02 C8 */ lwz r18, 0x2c8(r1) +/* 801EDC24 001EAB84 FE 40 18 90 */ fmr f18, f3 +/* 801EDC28 001EAB88 82 61 02 CC */ lwz r19, 0x2cc(r1) +/* 801EDC2C 001EAB8C FE 60 20 90 */ fmr f19, f4 +/* 801EDC30 001EAB90 82 81 02 D0 */ lwz r20, 0x2d0(r1) +/* 801EDC34 001EAB94 FE 80 28 90 */ fmr f20, f5 +/* 801EDC38 001EAB98 82 A1 02 D4 */ lwz r21, 0x2d4(r1) +/* 801EDC3C 001EAB9C FE A0 30 90 */ fmr f21, f6 +/* 801EDC40 001EABA0 82 C1 02 D8 */ lwz r22, 0x2d8(r1) +/* 801EDC44 001EABA4 FE C0 38 90 */ fmr f22, f7 +/* 801EDC48 001EABA8 82 E1 02 DC */ lwz r23, 0x2dc(r1) +/* 801EDC4C 001EABAC FE E0 40 90 */ fmr f23, f8 +/* 801EDC50 001EABB0 83 01 02 E0 */ lwz r24, 0x2e0(r1) +/* 801EDC54 001EABB4 83 21 02 E4 */ lwz r25, 0x2e4(r1) +/* 801EDC58 001EABB8 7C 90 23 78 */ mr r16, r4 +/* 801EDC5C 001EABBC 83 41 02 E8 */ lwz r26, 0x2e8(r1) +/* 801EDC60 001EABC0 7C AE 2B 78 */ mr r14, r5 +/* 801EDC64 001EABC4 90 C1 00 10 */ stw r6, 0x10(r1) +/* 801EDC68 001EABC8 7D 11 43 78 */ mr r17, r8 +/* 801EDC6C 001EABCC C3 01 02 F4 */ lfs f24, 0x2f4(r1) +/* 801EDC70 001EABD0 38 61 01 28 */ addi r3, r1, 0x128 +/* 801EDC74 001EABD4 90 E1 00 14 */ stw r7, 0x14(r1) +/* 801EDC78 001EABD8 C3 21 02 F8 */ lfs f25, 0x2f8(r1) +/* 801EDC7C 001EABDC 91 21 00 18 */ stw r9, 0x18(r1) +/* 801EDC80 001EABE0 C3 41 02 FC */ lfs f26, 0x2fc(r1) +/* 801EDC84 001EABE4 91 41 00 1C */ stw r10, 0x1c(r1) +/* 801EDC88 001EABE8 C3 61 03 00 */ lfs f27, 0x300(r1) +/* 801EDC8C 001EABEC C3 81 03 04 */ lfs f28, 0x304(r1) +/* 801EDC90 001EABF0 C3 A1 03 0C */ lfs f29, 0x30c(r1) +/* 801EDC94 001EABF4 C3 C1 03 10 */ lfs f30, 0x310(r1) +/* 801EDC98 001EABF8 C3 E1 03 14 */ lfs f31, 0x314(r1) +/* 801EDC9C 001EABFC 83 61 03 18 */ lwz r27, 0x318(r1) +/* 801EDCA0 001EAC00 83 81 03 1C */ lwz r28, 0x31c(r1) +/* 801EDCA4 001EAC04 83 A1 03 20 */ lwz r29, 0x320(r1) +/* 801EDCA8 001EAC08 83 C1 03 24 */ lwz r30, 0x324(r1) +/* 801EDCAC 001EAC0C 83 E1 03 28 */ lwz r31, 0x328(r1) +/* 801EDCB0 001EAC10 4B E4 CA F5 */ bl CModelDataNull__10CModelDataFv +/* 801EDCB4 001EAC14 A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 801EDCB8 001EAC18 38 00 00 00 */ li r0, 0 +/* 801EDCBC 001EAC1C 80 AD 92 3C */ lwz r5, lbl_805A7DFC@sda21(r13) +/* 801EDCC0 001EAC20 38 60 00 00 */ li r3, 0 +/* 801EDCC4 001EAC24 B0 81 00 20 */ sth r4, 0x20(r1) +/* 801EDCC8 001EAC28 38 80 00 01 */ li r4, 1 +/* 801EDCCC 001EAC2C 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 801EDCD0 001EAC30 90 01 00 A0 */ stw r0, 0xa0(r1) +/* 801EDCD4 001EAC34 48 19 C2 21 */ bl __shl2i +/* 801EDCD8 001EAC38 80 01 00 A0 */ lwz r0, 0xa0(r1) +/* 801EDCDC 001EAC3C 80 C1 00 A4 */ lwz r6, 0xa4(r1) +/* 801EDCE0 001EAC40 7C 00 1B 78 */ or r0, r0, r3 +/* 801EDCE4 001EAC44 80 AD 92 40 */ lwz r5, lbl_805A7E00@sda21(r13) +/* 801EDCE8 001EAC48 7C C4 23 78 */ or r4, r6, r4 +/* 801EDCEC 001EAC4C 90 01 00 A0 */ stw r0, 0xa0(r1) +/* 801EDCF0 001EAC50 38 60 00 00 */ li r3, 0 +/* 801EDCF4 001EAC54 90 81 00 A4 */ stw r4, 0xa4(r1) +/* 801EDCF8 001EAC58 38 80 00 01 */ li r4, 1 +/* 801EDCFC 001EAC5C 48 19 C1 F9 */ bl __shl2i +/* 801EDD00 001EAC60 80 01 00 A0 */ lwz r0, 0xa0(r1) +/* 801EDD04 001EAC64 80 C1 00 A4 */ lwz r6, 0xa4(r1) +/* 801EDD08 001EAC68 7C 00 1B 78 */ or r0, r0, r3 +/* 801EDD0C 001EAC6C 80 AD 92 44 */ lwz r5, lbl_805A7E04@sda21(r13) +/* 801EDD10 001EAC70 7C C4 23 78 */ or r4, r6, r4 +/* 801EDD14 001EAC74 90 01 00 A0 */ stw r0, 0xa0(r1) +/* 801EDD18 001EAC78 38 60 00 00 */ li r3, 0 +/* 801EDD1C 001EAC7C 90 81 00 A4 */ stw r4, 0xa4(r1) +/* 801EDD20 001EAC80 38 80 00 01 */ li r4, 1 +/* 801EDD24 001EAC84 48 19 C1 D1 */ bl __shl2i +/* 801EDD28 001EAC88 80 01 00 A0 */ lwz r0, 0xa0(r1) +/* 801EDD2C 001EAC8C 80 C1 00 A4 */ lwz r6, 0xa4(r1) +/* 801EDD30 001EAC90 7C 00 1B 78 */ or r0, r0, r3 +/* 801EDD34 001EAC94 80 AD 92 48 */ lwz r5, lbl_805A7E08@sda21(r13) +/* 801EDD38 001EAC98 7C C4 23 78 */ or r4, r6, r4 +/* 801EDD3C 001EAC9C 90 01 00 A0 */ stw r0, 0xa0(r1) +/* 801EDD40 001EACA0 38 60 00 00 */ li r3, 0 +/* 801EDD44 001EACA4 90 81 00 A4 */ stw r4, 0xa4(r1) +/* 801EDD48 001EACA8 38 80 00 01 */ li r4, 1 +/* 801EDD4C 001EACAC 48 19 C1 A9 */ bl __shl2i +/* 801EDD50 001EACB0 80 C1 00 A0 */ lwz r6, 0xa0(r1) +/* 801EDD54 001EACB4 38 01 00 20 */ addi r0, r1, 0x20 +/* 801EDD58 001EACB8 80 E1 00 A4 */ lwz r7, 0xa4(r1) +/* 801EDD5C 001EACBC 7D C5 73 78 */ mr r5, r14 +/* 801EDD60 001EACC0 7C C3 1B 78 */ or r3, r6, r3 +/* 801EDD64 001EACC4 A1 30 00 00 */ lhz r9, 0(r16) +/* 801EDD68 001EACC8 7C E4 23 78 */ or r4, r7, r4 +/* 801EDD6C 001EACCC 90 61 00 A0 */ stw r3, 0xa0(r1) +/* 801EDD70 001EACD0 80 C1 00 10 */ lwz r6, 0x10(r1) +/* 801EDD74 001EACD4 7D E3 7B 78 */ mr r3, r15 +/* 801EDD78 001EACD8 90 81 00 A4 */ stw r4, 0xa4(r1) +/* 801EDD7C 001EACDC 38 81 00 24 */ addi r4, r1, 0x24 +/* 801EDD80 001EACE0 80 E1 00 14 */ lwz r7, 0x14(r1) +/* 801EDD84 001EACE4 39 41 00 A0 */ addi r10, r1, 0xa0 +/* 801EDD88 001EACE8 B1 21 00 24 */ sth r9, 0x24(r1) +/* 801EDD8C 001EACEC 39 21 01 28 */ addi r9, r1, 0x128 +/* 801EDD90 001EACF0 81 01 00 18 */ lwz r8, 0x18(r1) +/* 801EDD94 001EACF4 93 E1 00 08 */ stw r31, 8(r1) +/* 801EDD98 001EACF8 90 01 00 0C */ stw r0, 0xc(r1) +/* 801EDD9C 001EACFC 4B E6 7A 85 */ bl "__ct__6CActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC16CActorParameters9TUniqueId" +/* 801EDDA0 001EAD00 38 61 01 28 */ addi r3, r1, 0x128 +/* 801EDDA4 001EAD04 38 80 FF FF */ li r4, -1 +/* 801EDDA8 001EAD08 4B F2 8C A5 */ bl __dt__10CModelDataFv +/* 801EDDAC 001EAD0C 3C 60 80 3E */ lis r3, lbl_803E6308@ha +/* 801EDDB0 001EAD10 C0 02 AD A0 */ lfs f0, lbl_805ACAC0@sda21(r2) +/* 801EDDB4 001EAD14 38 03 63 08 */ addi r0, r3, lbl_803E6308@l +/* 801EDDB8 001EAD18 38 6F 00 E8 */ addi r3, r15, 0xe8 +/* 801EDDBC 001EAD1C 90 0F 00 00 */ stw r0, 0(r15) +/* 801EDDC0 001EAD20 38 81 00 E4 */ addi r4, r1, 0xe4 +/* 801EDDC4 001EAD24 38 A1 00 D8 */ addi r5, r1, 0xd8 +/* 801EDDC8 001EAD28 D0 01 00 D8 */ stfs f0, 0xd8(r1) +/* 801EDDCC 001EAD2C D0 01 00 DC */ stfs f0, 0xdc(r1) +/* 801EDDD0 001EAD30 D0 01 00 E0 */ stfs f0, 0xe0(r1) +/* 801EDDD4 001EAD34 D0 01 00 E4 */ stfs f0, 0xe4(r1) +/* 801EDDD8 001EAD38 D0 01 00 E8 */ stfs f0, 0xe8(r1) +/* 801EDDDC 001EAD3C D0 01 00 EC */ stfs f0, 0xec(r1) +/* 801EDDE0 001EAD40 48 14 A7 29 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801EDDE4 001EAD44 C0 02 AD D4 */ lfs f0, lbl_805ACAF4@sda21(r2) +/* 801EDDE8 001EAD48 38 A0 00 00 */ li r5, 0 +/* 801EDDEC 001EAD4C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801EDDF0 001EAD50 C0 22 AD A0 */ lfs f1, lbl_805ACAC0@sda21(r2) +/* 801EDDF4 001EAD54 D0 0F 01 04 */ stfs f0, 0x104(r15) +/* 801EDDF8 001EAD58 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 801EDDFC 001EAD5C C0 02 AE 20 */ lfs f0, lbl_805ACB40@sda21(r2) +/* 801EDE00 001EAD60 38 60 00 7D */ li r3, 0x7d +/* 801EDE04 001EAD64 90 AF 01 0C */ stw r5, 0x10c(r15) +/* 801EDE08 001EAD68 38 00 00 19 */ li r0, 0x19 +/* 801EDE0C 001EAD6C 7C A6 2B 78 */ mr r6, r5 +/* 801EDE10 001EAD70 38 EF 01 6C */ addi r7, r15, 0x16c +/* 801EDE14 001EAD74 90 AF 01 10 */ stw r5, 0x110(r15) +/* 801EDE18 001EAD78 90 AF 01 14 */ stw r5, 0x114(r15) +/* 801EDE1C 001EAD7C C0 51 00 00 */ lfs f2, 0(r17) +/* 801EDE20 001EAD80 D0 4F 01 18 */ stfs f2, 0x118(r15) +/* 801EDE24 001EAD84 C0 51 00 04 */ lfs f2, 4(r17) +/* 801EDE28 001EAD88 D0 4F 01 1C */ stfs f2, 0x11c(r15) +/* 801EDE2C 001EAD8C C0 51 00 08 */ lfs f2, 8(r17) +/* 801EDE30 001EAD90 D0 4F 01 20 */ stfs f2, 0x120(r15) +/* 801EDE34 001EAD94 D0 2F 01 24 */ stfs f1, 0x124(r15) +/* 801EDE38 001EAD98 D0 2F 01 28 */ stfs f1, 0x128(r15) +/* 801EDE3C 001EAD9C D0 2F 01 2C */ stfs f1, 0x12c(r15) +/* 801EDE40 001EADA0 C0 24 00 00 */ lfs f1, 0(r4) +/* 801EDE44 001EADA4 D0 2F 01 30 */ stfs f1, 0x130(r15) +/* 801EDE48 001EADA8 C0 24 00 04 */ lfs f1, 4(r4) +/* 801EDE4C 001EADAC D0 2F 01 34 */ stfs f1, 0x134(r15) +/* 801EDE50 001EADB0 C0 24 00 08 */ lfs f1, 8(r4) +/* 801EDE54 001EADB4 D0 2F 01 38 */ stfs f1, 0x138(r15) +/* 801EDE58 001EADB8 D2 AF 01 3C */ stfs f21, 0x13c(r15) +/* 801EDE5C 001EADBC D2 CF 01 40 */ stfs f22, 0x140(r15) +/* 801EDE60 001EADC0 D2 EF 01 44 */ stfs f23, 0x144(r15) +/* 801EDE64 001EADC4 D3 0F 01 48 */ stfs f24, 0x148(r15) +/* 801EDE68 001EADC8 D3 2F 01 4C */ stfs f25, 0x14c(r15) +/* 801EDE6C 001EADCC D3 4F 01 50 */ stfs f26, 0x150(r15) +/* 801EDE70 001EADD0 D3 6F 01 54 */ stfs f27, 0x154(r15) +/* 801EDE74 001EADD4 D3 CF 01 58 */ stfs f30, 0x158(r15) +/* 801EDE78 001EADD8 D3 EF 01 5C */ stfs f31, 0x15c(r15) +/* 801EDE7C 001EADDC D2 8F 01 60 */ stfs f20, 0x160(r15) +/* 801EDE80 001EADE0 D0 0F 01 64 */ stfs f0, 0x164(r15) +/* 801EDE84 001EADE4 90 6F 01 68 */ stw r3, 0x168(r15) +/* 801EDE88 001EADE8 7C 09 03 A6 */ mtctr r0 +lbl_801EDE8C: +/* 801EDE8C 001EADEC 28 07 00 00 */ cmplwi r7, 0 +/* 801EDE90 001EADF0 41 82 00 08 */ beq lbl_801EDE98 +/* 801EDE94 001EADF4 90 A7 00 00 */ stw r5, 0(r7) +lbl_801EDE98: +/* 801EDE98 001EADF8 34 E7 00 04 */ addic. r7, r7, 4 +/* 801EDE9C 001EADFC 41 82 00 08 */ beq lbl_801EDEA4 +/* 801EDEA0 001EAE00 90 A7 00 00 */ stw r5, 0(r7) +lbl_801EDEA4: +/* 801EDEA4 001EAE04 34 E7 00 04 */ addic. r7, r7, 4 +/* 801EDEA8 001EAE08 41 82 00 08 */ beq lbl_801EDEB0 +/* 801EDEAC 001EAE0C 90 A7 00 00 */ stw r5, 0(r7) +lbl_801EDEB0: +/* 801EDEB0 001EAE10 34 E7 00 04 */ addic. r7, r7, 4 +/* 801EDEB4 001EAE14 41 82 00 08 */ beq lbl_801EDEBC +/* 801EDEB8 001EAE18 90 A7 00 00 */ stw r5, 0(r7) +lbl_801EDEBC: +/* 801EDEBC 001EAE1C 34 E7 00 04 */ addic. r7, r7, 4 +/* 801EDEC0 001EAE20 41 82 00 08 */ beq lbl_801EDEC8 +/* 801EDEC4 001EAE24 90 A7 00 00 */ stw r5, 0(r7) +lbl_801EDEC8: +/* 801EDEC8 001EAE28 38 C6 00 04 */ addi r6, r6, 4 +/* 801EDECC 001EAE2C 38 E7 00 04 */ addi r7, r7, 4 +/* 801EDED0 001EAE30 42 00 FF BC */ bdnz lbl_801EDE8C +/* 801EDED4 001EAE34 38 00 00 00 */ li r0, 0 +/* 801EDED8 001EAE38 C0 02 AD A0 */ lfs f0, lbl_805ACAC0@sda21(r2) +/* 801EDEDC 001EAE3C 90 0F 03 60 */ stw r0, 0x360(r15) +/* 801EDEE0 001EAE40 38 60 FF FF */ li r3, -1 +/* 801EDEE4 001EAE44 D3 8F 03 64 */ stfs f28, 0x364(r15) +/* 801EDEE8 001EAE48 D0 0F 03 68 */ stfs f0, 0x368(r15) +/* 801EDEEC 001EAE4C D0 0F 03 6C */ stfs f0, 0x36c(r15) +/* 801EDEF0 001EAE50 D2 0F 03 70 */ stfs f16, 0x370(r15) +/* 801EDEF4 001EAE54 D2 2F 03 74 */ stfs f17, 0x374(r15) +/* 801EDEF8 001EAE58 D2 4F 03 78 */ stfs f18, 0x378(r15) +/* 801EDEFC 001EAE5C D3 AF 03 7C */ stfs f29, 0x37c(r15) +/* 801EDF00 001EAE60 D2 6F 03 80 */ stfs f19, 0x380(r15) +/* 801EDF04 001EAE64 80 99 00 00 */ lwz r4, 0(r25) +/* 801EDF08 001EAE68 90 8F 03 84 */ stw r4, 0x384(r15) +/* 801EDF0C 001EAE6C 88 99 00 04 */ lbz r4, 4(r25) +/* 801EDF10 001EAE70 98 8F 03 88 */ stb r4, 0x388(r15) +/* 801EDF14 001EAE74 C0 19 00 08 */ lfs f0, 8(r25) +/* 801EDF18 001EAE78 D0 0F 03 8C */ stfs f0, 0x38c(r15) +/* 801EDF1C 001EAE7C C0 19 00 0C */ lfs f0, 0xc(r25) +/* 801EDF20 001EAE80 D0 0F 03 90 */ stfs f0, 0x390(r15) +/* 801EDF24 001EAE84 C0 19 00 10 */ lfs f0, 0x10(r25) +/* 801EDF28 001EAE88 D0 0F 03 94 */ stfs f0, 0x394(r15) +/* 801EDF2C 001EAE8C C0 19 00 14 */ lfs f0, 0x14(r25) +/* 801EDF30 001EAE90 D0 0F 03 98 */ stfs f0, 0x398(r15) +/* 801EDF34 001EAE94 88 99 00 18 */ lbz r4, 0x18(r25) +/* 801EDF38 001EAE98 98 8F 03 9C */ stb r4, 0x39c(r15) +/* 801EDF3C 001EAE9C 80 9A 00 00 */ lwz r4, 0(r26) +/* 801EDF40 001EAEA0 90 8F 03 A0 */ stw r4, 0x3a0(r15) +/* 801EDF44 001EAEA4 88 9A 00 04 */ lbz r4, 4(r26) +/* 801EDF48 001EAEA8 98 8F 03 A4 */ stb r4, 0x3a4(r15) +/* 801EDF4C 001EAEAC C0 1A 00 08 */ lfs f0, 8(r26) +/* 801EDF50 001EAEB0 D0 0F 03 A8 */ stfs f0, 0x3a8(r15) +/* 801EDF54 001EAEB4 C0 1A 00 0C */ lfs f0, 0xc(r26) +/* 801EDF58 001EAEB8 D0 0F 03 AC */ stfs f0, 0x3ac(r15) +/* 801EDF5C 001EAEBC C0 1A 00 10 */ lfs f0, 0x10(r26) +/* 801EDF60 001EAEC0 D0 0F 03 B0 */ stfs f0, 0x3b0(r15) +/* 801EDF64 001EAEC4 C0 1A 00 14 */ lfs f0, 0x14(r26) +/* 801EDF68 001EAEC8 D0 0F 03 B4 */ stfs f0, 0x3b4(r15) +/* 801EDF6C 001EAECC 88 9A 00 18 */ lbz r4, 0x18(r26) +/* 801EDF70 001EAED0 98 8F 03 B8 */ stb r4, 0x3b8(r15) +/* 801EDF74 001EAED4 C0 1B 00 00 */ lfs f0, 0(r27) +/* 801EDF78 001EAED8 D0 0F 03 BC */ stfs f0, 0x3bc(r15) +/* 801EDF7C 001EAEDC C0 1B 00 04 */ lfs f0, 4(r27) +/* 801EDF80 001EAEE0 D0 0F 03 C0 */ stfs f0, 0x3c0(r15) +/* 801EDF84 001EAEE4 80 BC 00 00 */ lwz r5, 0(r28) +/* 801EDF88 001EAEE8 80 9C 00 04 */ lwz r4, 4(r28) +/* 801EDF8C 001EAEEC 90 AF 03 C4 */ stw r5, 0x3c4(r15) +/* 801EDF90 001EAEF0 90 8F 03 C8 */ stw r4, 0x3c8(r15) +/* 801EDF94 001EAEF4 80 BC 00 08 */ lwz r5, 8(r28) +/* 801EDF98 001EAEF8 80 9C 00 0C */ lwz r4, 0xc(r28) +/* 801EDF9C 001EAEFC 90 AF 03 CC */ stw r5, 0x3cc(r15) +/* 801EDFA0 001EAF00 90 8F 03 D0 */ stw r4, 0x3d0(r15) +/* 801EDFA4 001EAF04 80 BC 00 10 */ lwz r5, 0x10(r28) +/* 801EDFA8 001EAF08 80 9C 00 14 */ lwz r4, 0x14(r28) +/* 801EDFAC 001EAF0C 90 AF 03 D4 */ stw r5, 0x3d4(r15) +/* 801EDFB0 001EAF10 90 8F 03 D8 */ stw r4, 0x3d8(r15) +/* 801EDFB4 001EAF14 80 BC 00 18 */ lwz r5, 0x18(r28) +/* 801EDFB8 001EAF18 80 9C 00 1C */ lwz r4, 0x1c(r28) +/* 801EDFBC 001EAF1C 90 AF 03 DC */ stw r5, 0x3dc(r15) +/* 801EDFC0 001EAF20 90 8F 03 E0 */ stw r4, 0x3e0(r15) +/* 801EDFC4 001EAF24 80 BC 00 20 */ lwz r5, 0x20(r28) +/* 801EDFC8 001EAF28 80 9C 00 24 */ lwz r4, 0x24(r28) +/* 801EDFCC 001EAF2C 90 AF 03 E4 */ stw r5, 0x3e4(r15) +/* 801EDFD0 001EAF30 90 8F 03 E8 */ stw r4, 0x3e8(r15) +/* 801EDFD4 001EAF34 80 BC 00 28 */ lwz r5, 0x28(r28) +/* 801EDFD8 001EAF38 80 9C 00 2C */ lwz r4, 0x2c(r28) +/* 801EDFDC 001EAF3C 90 AF 03 EC */ stw r5, 0x3ec(r15) +/* 801EDFE0 001EAF40 90 8F 03 F0 */ stw r4, 0x3f0(r15) +/* 801EDFE4 001EAF44 80 BC 00 30 */ lwz r5, 0x30(r28) +/* 801EDFE8 001EAF48 80 9C 00 34 */ lwz r4, 0x34(r28) +/* 801EDFEC 001EAF4C 90 AF 03 F4 */ stw r5, 0x3f4(r15) +/* 801EDFF0 001EAF50 90 8F 03 F8 */ stw r4, 0x3f8(r15) +/* 801EDFF4 001EAF54 80 9C 00 38 */ lwz r4, 0x38(r28) +/* 801EDFF8 001EAF58 90 8F 03 FC */ stw r4, 0x3fc(r15) +/* 801EDFFC 001EAF5C 80 BC 00 3C */ lwz r5, 0x3c(r28) +/* 801EE000 001EAF60 80 9C 00 40 */ lwz r4, 0x40(r28) +/* 801EE004 001EAF64 90 AF 04 00 */ stw r5, 0x400(r15) +/* 801EE008 001EAF68 90 8F 04 04 */ stw r4, 0x404(r15) +/* 801EE00C 001EAF6C 80 BC 00 44 */ lwz r5, 0x44(r28) +/* 801EE010 001EAF70 80 9C 00 48 */ lwz r4, 0x48(r28) +/* 801EE014 001EAF74 90 AF 04 08 */ stw r5, 0x408(r15) +/* 801EE018 001EAF78 90 8F 04 0C */ stw r4, 0x40c(r15) +/* 801EE01C 001EAF7C 80 BC 00 4C */ lwz r5, 0x4c(r28) +/* 801EE020 001EAF80 80 9C 00 50 */ lwz r4, 0x50(r28) +/* 801EE024 001EAF84 90 AF 04 10 */ stw r5, 0x410(r15) +/* 801EE028 001EAF88 90 8F 04 14 */ stw r4, 0x414(r15) +/* 801EE02C 001EAF8C 80 BC 00 54 */ lwz r5, 0x54(r28) +/* 801EE030 001EAF90 80 9C 00 58 */ lwz r4, 0x58(r28) +/* 801EE034 001EAF94 90 AF 04 18 */ stw r5, 0x418(r15) +/* 801EE038 001EAF98 90 8F 04 1C */ stw r4, 0x41c(r15) +/* 801EE03C 001EAF9C 80 9C 00 5C */ lwz r4, 0x5c(r28) +/* 801EE040 001EAFA0 90 8F 04 20 */ stw r4, 0x420(r15) +/* 801EE044 001EAFA4 80 9C 00 60 */ lwz r4, 0x60(r28) +/* 801EE048 001EAFA8 90 8F 04 24 */ stw r4, 0x424(r15) +/* 801EE04C 001EAFAC 80 9C 00 64 */ lwz r4, 0x64(r28) +/* 801EE050 001EAFB0 90 8F 04 28 */ stw r4, 0x428(r15) +/* 801EE054 001EAFB4 90 6F 04 2C */ stw r3, 0x42c(r15) +/* 801EE058 001EAFB8 90 0F 04 30 */ stw r0, 0x430(r15) +/* 801EE05C 001EAFBC 90 0F 04 84 */ stw r0, 0x484(r15) +/* 801EE060 001EAFC0 90 0F 04 B0 */ stw r0, 0x4b0(r15) +/* 801EE064 001EAFC4 2C 1D FF FF */ cmpwi r29, -1 +/* 801EE068 001EAFC8 80 61 02 EC */ lwz r3, 0x2ec(r1) +/* 801EE06C 001EAFCC 7F A4 EB 78 */ mr r4, r29 +/* 801EE070 001EAFD0 90 0F 04 DC */ stw r0, 0x4dc(r15) +/* 801EE074 001EAFD4 90 0F 04 E4 */ stw r0, 0x4e4(r15) +/* 801EE078 001EAFD8 90 0F 04 E8 */ stw r0, 0x4e8(r15) +/* 801EE07C 001EAFDC 90 0F 04 EC */ stw r0, 0x4ec(r15) +/* 801EE080 001EAFE0 90 0F 04 F0 */ stw r0, 0x4f0(r15) +/* 801EE084 001EAFE4 90 0F 05 24 */ stw r0, 0x524(r15) +/* 801EE088 001EAFE8 90 6F 05 48 */ stw r3, 0x548(r15) +/* 801EE08C 001EAFEC 80 61 02 F0 */ lwz r3, 0x2f0(r1) +/* 801EE090 001EAFF0 90 6F 05 4C */ stw r3, 0x54c(r15) +/* 801EE094 001EAFF4 90 0F 05 50 */ stw r0, 0x550(r15) +/* 801EE098 001EAFF8 80 01 03 08 */ lwz r0, 0x308(r1) +/* 801EE09C 001EAFFC 90 0F 05 54 */ stw r0, 0x554(r15) +/* 801EE0A0 001EB000 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 801EE0A4 001EB004 90 0F 05 58 */ stw r0, 0x558(r15) +/* 801EE0A8 001EB008 40 82 00 08 */ bne lbl_801EE0B0 +/* 801EE0AC 001EB00C A0 82 C5 FC */ lhz r4, lbl_805AE31C@sda21(r2) +lbl_801EE0B0: +/* 801EE0B0 001EB010 54 83 04 3E */ clrlwi r3, r4, 0x10 +/* 801EE0B4 001EB014 48 0F A8 FD */ bl TranslateSFXID__11CSfxManagerFUs +/* 801EE0B8 001EB018 2C 1E FF FF */ cmpwi r30, -1 +/* 801EE0BC 001EB01C B0 6F 05 5C */ sth r3, 0x55c(r15) +/* 801EE0C0 001EB020 7F C0 F3 78 */ mr r0, r30 +/* 801EE0C4 001EB024 40 82 00 08 */ bne lbl_801EE0CC +/* 801EE0C8 001EB028 A0 02 C5 FC */ lhz r0, lbl_805AE31C@sda21(r2) +lbl_801EE0CC: +/* 801EE0CC 001EB02C 54 03 04 3E */ clrlwi r3, r0, 0x10 +/* 801EE0D0 001EB030 48 0F A8 E1 */ bl TranslateSFXID__11CSfxManagerFUs +/* 801EE0D4 001EB034 B0 6F 05 5E */ sth r3, 0x55e(r15) +/* 801EE0D8 001EB038 3C 60 80 3D */ lis r3, lbl_803D1F30@ha +/* 801EE0DC 001EB03C 38 63 1F 30 */ addi r3, r3, lbl_803D1F30@l +/* 801EE0E0 001EB040 38 00 00 01 */ li r0, 1 +/* 801EE0E4 001EB044 88 8F 05 60 */ lbz r4, 0x560(r15) +/* 801EE0E8 001EB048 50 04 3E 30 */ rlwimi r4, r0, 7, 0x18, 0x18 +/* 801EE0EC 001EB04C 39 00 00 00 */ li r8, 0 +/* 801EE0F0 001EB050 38 B4 00 01 */ addi r5, r20, 1 +/* 801EE0F4 001EB054 98 8F 05 60 */ stb r4, 0x560(r15) +/* 801EE0F8 001EB058 20 94 FF FF */ subfic r4, r20, -1 +/* 801EE0FC 001EB05C 7C A4 23 78 */ or r4, r5, r4 +/* 801EE100 001EB060 38 B3 00 01 */ addi r5, r19, 1 +/* 801EE104 001EB064 88 EF 05 60 */ lbz r7, 0x560(r15) +/* 801EE108 001EB068 7C 86 FE 70 */ srawi r6, r4, 0x1f +/* 801EE10C 001EB06C 50 07 36 72 */ rlwimi r7, r0, 6, 0x19, 0x19 +/* 801EE110 001EB070 20 93 FF FF */ subfic r4, r19, -1 +/* 801EE114 001EB074 98 EF 05 60 */ stb r7, 0x560(r15) +/* 801EE118 001EB078 7C A4 23 78 */ or r4, r5, r4 +/* 801EE11C 001EB07C 7C 84 FE 70 */ srawi r4, r4, 0x1f +/* 801EE120 001EB080 7E 87 30 38 */ and r7, r20, r6 +/* 801EE124 001EB084 88 AF 05 60 */ lbz r5, 0x560(r15) +/* 801EE128 001EB088 51 05 2E B4 */ rlwimi r5, r8, 5, 0x1a, 0x1a +/* 801EE12C 001EB08C 7E 66 20 38 */ and r6, r19, r4 +/* 801EE130 001EB090 38 83 00 0B */ addi r4, r3, 0xb +/* 801EE134 001EB094 98 AF 05 60 */ stb r5, 0x560(r15) +/* 801EE138 001EB098 38 60 00 4C */ li r3, 0x4c +/* 801EE13C 001EB09C 38 A0 00 00 */ li r5, 0 +/* 801EE140 001EB0A0 81 32 00 04 */ lwz r9, 4(r18) +/* 801EE144 001EB0A4 81 12 00 00 */ lwz r8, 0(r18) +/* 801EE148 001EB0A8 91 01 01 0C */ stw r8, 0x10c(r1) +/* 801EE14C 001EB0AC 91 21 01 10 */ stw r9, 0x110(r1) +/* 801EE150 001EB0B0 C0 52 00 08 */ lfs f2, 8(r18) +/* 801EE154 001EB0B4 D0 41 01 14 */ stfs f2, 0x114(r1) +/* 801EE158 001EB0B8 C0 32 00 0C */ lfs f1, 0xc(r18) +/* 801EE15C 001EB0BC D0 21 01 18 */ stfs f1, 0x118(r1) +/* 801EE160 001EB0C0 C0 12 00 10 */ lfs f0, 0x10(r18) +/* 801EE164 001EB0C4 D0 01 01 1C */ stfs f0, 0x11c(r1) +/* 801EE168 001EB0C8 98 01 01 20 */ stb r0, 0x120(r1) +/* 801EE16C 001EB0CC 90 E1 01 24 */ stw r7, 0x124(r1) +/* 801EE170 001EB0D0 91 01 00 F0 */ stw r8, 0xf0(r1) +/* 801EE174 001EB0D4 91 21 00 F4 */ stw r9, 0xf4(r1) +/* 801EE178 001EB0D8 D0 41 00 F8 */ stfs f2, 0xf8(r1) +/* 801EE17C 001EB0DC D0 21 00 FC */ stfs f1, 0xfc(r1) +/* 801EE180 001EB0E0 D0 01 01 00 */ stfs f0, 0x100(r1) +/* 801EE184 001EB0E4 98 01 01 04 */ stb r0, 0x104(r1) +/* 801EE188 001EB0E8 90 C1 01 08 */ stw r6, 0x108(r1) +/* 801EE18C 001EB0EC 48 12 76 E1 */ bl __nw__FUlPCcPCc +/* 801EE190 001EB0F0 7C 6E 1B 79 */ or. r14, r3, r3 +/* 801EE194 001EB0F4 41 82 00 10 */ beq lbl_801EE1A4 +/* 801EE198 001EB0F8 7E 44 93 78 */ mr r4, r18 +/* 801EE19C 001EB0FC 4B F2 89 B9 */ bl __ct__10CModelDataFRC8CAnimRes +/* 801EE1A0 001EB100 7C 6E 1B 78 */ mr r14, r3 +lbl_801EE1A4: +/* 801EE1A4 001EB104 3C 80 80 3D */ lis r4, lbl_803D1F30@ha +/* 801EE1A8 001EB108 38 60 00 08 */ li r3, 8 +/* 801EE1AC 001EB10C 38 84 1F 30 */ addi r4, r4, lbl_803D1F30@l +/* 801EE1B0 001EB110 38 A0 00 00 */ li r5, 0 +/* 801EE1B4 001EB114 38 84 00 0B */ addi r4, r4, 0xb +/* 801EE1B8 001EB118 48 12 76 B5 */ bl __nw__FUlPCcPCc +/* 801EE1BC 001EB11C 28 03 00 00 */ cmplwi r3, 0 +/* 801EE1C0 001EB120 41 82 00 10 */ beq lbl_801EE1D0 +/* 801EE1C4 001EB124 91 C3 00 00 */ stw r14, 0(r3) +/* 801EE1C8 001EB128 38 00 00 01 */ li r0, 1 +/* 801EE1CC 001EB12C 90 03 00 04 */ stw r0, 4(r3) +lbl_801EE1D0: +/* 801EE1D0 001EB130 90 61 00 4C */ stw r3, 0x4c(r1) +/* 801EE1D4 001EB134 38 8F 04 B0 */ addi r4, r15, 0x4b0 +/* 801EE1D8 001EB138 80 0F 04 B0 */ lwz r0, 0x4b0(r15) +/* 801EE1DC 001EB13C 54 00 10 3A */ slwi r0, r0, 2 +/* 801EE1E0 001EB140 7C 84 02 14 */ add r4, r4, r0 +/* 801EE1E4 001EB144 34 84 00 04 */ addic. r4, r4, 4 +/* 801EE1E8 001EB148 41 82 00 18 */ beq lbl_801EE200 +/* 801EE1EC 001EB14C 90 64 00 00 */ stw r3, 0(r4) +/* 801EE1F0 001EB150 80 84 00 00 */ lwz r4, 0(r4) +/* 801EE1F4 001EB154 80 64 00 04 */ lwz r3, 4(r4) +/* 801EE1F8 001EB158 38 03 00 01 */ addi r0, r3, 1 +/* 801EE1FC 001EB15C 90 04 00 04 */ stw r0, 4(r4) +lbl_801EE200: +/* 801EE200 001EB160 80 8F 04 B0 */ lwz r4, 0x4b0(r15) +/* 801EE204 001EB164 38 61 00 4C */ addi r3, r1, 0x4c +/* 801EE208 001EB168 38 04 00 01 */ addi r0, r4, 1 +/* 801EE20C 001EB16C 90 0F 04 B0 */ stw r0, 0x4b0(r15) +/* 801EE210 001EB170 4B FE 51 51 */ bl sub_801d3360 +/* 801EE214 001EB174 3C 80 80 3D */ lis r4, lbl_803D1F30@ha +/* 801EE218 001EB178 38 60 00 4C */ li r3, 0x4c +/* 801EE21C 001EB17C 38 84 1F 30 */ addi r4, r4, lbl_803D1F30@l +/* 801EE220 001EB180 38 A0 00 00 */ li r5, 0 +/* 801EE224 001EB184 38 84 00 0B */ addi r4, r4, 0xb +/* 801EE228 001EB188 48 12 76 45 */ bl __nw__FUlPCcPCc +/* 801EE22C 001EB18C 7C 6E 1B 79 */ or. r14, r3, r3 +/* 801EE230 001EB190 41 82 00 10 */ beq lbl_801EE240 +/* 801EE234 001EB194 7E 44 93 78 */ mr r4, r18 +/* 801EE238 001EB198 4B F2 89 1D */ bl __ct__10CModelDataFRC8CAnimRes +/* 801EE23C 001EB19C 7C 6E 1B 78 */ mr r14, r3 +lbl_801EE240: +/* 801EE240 001EB1A0 3C 80 80 3D */ lis r4, lbl_803D1F30@ha +/* 801EE244 001EB1A4 38 60 00 08 */ li r3, 8 +/* 801EE248 001EB1A8 38 84 1F 30 */ addi r4, r4, lbl_803D1F30@l +/* 801EE24C 001EB1AC 38 A0 00 00 */ li r5, 0 +/* 801EE250 001EB1B0 38 84 00 0B */ addi r4, r4, 0xb +/* 801EE254 001EB1B4 48 12 76 19 */ bl __nw__FUlPCcPCc +/* 801EE258 001EB1B8 28 03 00 00 */ cmplwi r3, 0 +/* 801EE25C 001EB1BC 41 82 00 10 */ beq lbl_801EE26C +/* 801EE260 001EB1C0 91 C3 00 00 */ stw r14, 0(r3) +/* 801EE264 001EB1C4 38 00 00 01 */ li r0, 1 +/* 801EE268 001EB1C8 90 03 00 04 */ stw r0, 4(r3) +lbl_801EE26C: +/* 801EE26C 001EB1CC 90 61 00 48 */ stw r3, 0x48(r1) +/* 801EE270 001EB1D0 38 8F 04 B0 */ addi r4, r15, 0x4b0 +/* 801EE274 001EB1D4 80 0F 04 B0 */ lwz r0, 0x4b0(r15) +/* 801EE278 001EB1D8 54 00 10 3A */ slwi r0, r0, 2 +/* 801EE27C 001EB1DC 7C 84 02 14 */ add r4, r4, r0 +/* 801EE280 001EB1E0 34 84 00 04 */ addic. r4, r4, 4 +/* 801EE284 001EB1E4 41 82 00 18 */ beq lbl_801EE29C +/* 801EE288 001EB1E8 90 64 00 00 */ stw r3, 0(r4) +/* 801EE28C 001EB1EC 80 84 00 00 */ lwz r4, 0(r4) +/* 801EE290 001EB1F0 80 64 00 04 */ lwz r3, 4(r4) +/* 801EE294 001EB1F4 38 03 00 01 */ addi r0, r3, 1 +/* 801EE298 001EB1F8 90 04 00 04 */ stw r0, 4(r4) +lbl_801EE29C: +/* 801EE29C 001EB1FC 80 8F 04 B0 */ lwz r4, 0x4b0(r15) +/* 801EE2A0 001EB200 38 61 00 48 */ addi r3, r1, 0x48 +/* 801EE2A4 001EB204 38 04 00 01 */ addi r0, r4, 1 +/* 801EE2A8 001EB208 90 0F 04 B0 */ stw r0, 0x4b0(r15) +/* 801EE2AC 001EB20C 4B FE 50 B5 */ bl sub_801d3360 +/* 801EE2B0 001EB210 3C 80 80 3D */ lis r4, lbl_803D1F30@ha +/* 801EE2B4 001EB214 38 60 00 4C */ li r3, 0x4c +/* 801EE2B8 001EB218 38 84 1F 30 */ addi r4, r4, lbl_803D1F30@l +/* 801EE2BC 001EB21C 38 A0 00 00 */ li r5, 0 +/* 801EE2C0 001EB220 38 84 00 0B */ addi r4, r4, 0xb +/* 801EE2C4 001EB224 48 12 75 A9 */ bl __nw__FUlPCcPCc +/* 801EE2C8 001EB228 7C 6E 1B 79 */ or. r14, r3, r3 +/* 801EE2CC 001EB22C 41 82 00 10 */ beq lbl_801EE2DC +/* 801EE2D0 001EB230 7E 44 93 78 */ mr r4, r18 +/* 801EE2D4 001EB234 4B F2 88 81 */ bl __ct__10CModelDataFRC8CAnimRes +/* 801EE2D8 001EB238 7C 6E 1B 78 */ mr r14, r3 +lbl_801EE2DC: +/* 801EE2DC 001EB23C 3C 80 80 3D */ lis r4, lbl_803D1F30@ha +/* 801EE2E0 001EB240 38 60 00 08 */ li r3, 8 +/* 801EE2E4 001EB244 38 84 1F 30 */ addi r4, r4, lbl_803D1F30@l +/* 801EE2E8 001EB248 38 A0 00 00 */ li r5, 0 +/* 801EE2EC 001EB24C 38 84 00 0B */ addi r4, r4, 0xb +/* 801EE2F0 001EB250 48 12 75 7D */ bl __nw__FUlPCcPCc +/* 801EE2F4 001EB254 28 03 00 00 */ cmplwi r3, 0 +/* 801EE2F8 001EB258 41 82 00 10 */ beq lbl_801EE308 +/* 801EE2FC 001EB25C 91 C3 00 00 */ stw r14, 0(r3) +/* 801EE300 001EB260 38 00 00 01 */ li r0, 1 +/* 801EE304 001EB264 90 03 00 04 */ stw r0, 4(r3) +lbl_801EE308: +/* 801EE308 001EB268 90 61 00 44 */ stw r3, 0x44(r1) +/* 801EE30C 001EB26C 38 8F 04 B0 */ addi r4, r15, 0x4b0 +/* 801EE310 001EB270 80 0F 04 B0 */ lwz r0, 0x4b0(r15) +/* 801EE314 001EB274 54 00 10 3A */ slwi r0, r0, 2 +/* 801EE318 001EB278 7C 84 02 14 */ add r4, r4, r0 +/* 801EE31C 001EB27C 34 84 00 04 */ addic. r4, r4, 4 +/* 801EE320 001EB280 41 82 00 18 */ beq lbl_801EE338 +/* 801EE324 001EB284 90 64 00 00 */ stw r3, 0(r4) +/* 801EE328 001EB288 80 84 00 00 */ lwz r4, 0(r4) +/* 801EE32C 001EB28C 80 64 00 04 */ lwz r3, 4(r4) +/* 801EE330 001EB290 38 03 00 01 */ addi r0, r3, 1 +/* 801EE334 001EB294 90 04 00 04 */ stw r0, 4(r4) +lbl_801EE338: +/* 801EE338 001EB298 80 8F 04 B0 */ lwz r4, 0x4b0(r15) +/* 801EE33C 001EB29C 38 61 00 44 */ addi r3, r1, 0x44 +/* 801EE340 001EB2A0 38 04 00 01 */ addi r0, r4, 1 +/* 801EE344 001EB2A4 90 0F 04 B0 */ stw r0, 0x4b0(r15) +/* 801EE348 001EB2A8 4B FE 50 19 */ bl sub_801d3360 +/* 801EE34C 001EB2AC 3C 80 80 3D */ lis r4, lbl_803D1F30@ha +/* 801EE350 001EB2B0 38 60 00 4C */ li r3, 0x4c +/* 801EE354 001EB2B4 38 84 1F 30 */ addi r4, r4, lbl_803D1F30@l +/* 801EE358 001EB2B8 38 A0 00 00 */ li r5, 0 +/* 801EE35C 001EB2BC 38 84 00 0B */ addi r4, r4, 0xb +/* 801EE360 001EB2C0 48 12 75 0D */ bl __nw__FUlPCcPCc +/* 801EE364 001EB2C4 7C 6E 1B 79 */ or. r14, r3, r3 +/* 801EE368 001EB2C8 41 82 00 10 */ beq lbl_801EE378 +/* 801EE36C 001EB2CC 7E 44 93 78 */ mr r4, r18 +/* 801EE370 001EB2D0 4B F2 87 E5 */ bl __ct__10CModelDataFRC8CAnimRes +/* 801EE374 001EB2D4 7C 6E 1B 78 */ mr r14, r3 +lbl_801EE378: +/* 801EE378 001EB2D8 3C 80 80 3D */ lis r4, lbl_803D1F30@ha +/* 801EE37C 001EB2DC 38 60 00 08 */ li r3, 8 +/* 801EE380 001EB2E0 38 84 1F 30 */ addi r4, r4, lbl_803D1F30@l +/* 801EE384 001EB2E4 38 A0 00 00 */ li r5, 0 +/* 801EE388 001EB2E8 38 84 00 0B */ addi r4, r4, 0xb +/* 801EE38C 001EB2EC 48 12 74 E1 */ bl __nw__FUlPCcPCc +/* 801EE390 001EB2F0 28 03 00 00 */ cmplwi r3, 0 +/* 801EE394 001EB2F4 41 82 00 10 */ beq lbl_801EE3A4 +/* 801EE398 001EB2F8 91 C3 00 00 */ stw r14, 0(r3) +/* 801EE39C 001EB2FC 38 00 00 01 */ li r0, 1 +/* 801EE3A0 001EB300 90 03 00 04 */ stw r0, 4(r3) +lbl_801EE3A4: +/* 801EE3A4 001EB304 90 61 00 40 */ stw r3, 0x40(r1) +/* 801EE3A8 001EB308 38 8F 04 B0 */ addi r4, r15, 0x4b0 +/* 801EE3AC 001EB30C 80 0F 04 B0 */ lwz r0, 0x4b0(r15) +/* 801EE3B0 001EB310 54 00 10 3A */ slwi r0, r0, 2 +/* 801EE3B4 001EB314 7C 84 02 14 */ add r4, r4, r0 +/* 801EE3B8 001EB318 34 84 00 04 */ addic. r4, r4, 4 +/* 801EE3BC 001EB31C 41 82 00 18 */ beq lbl_801EE3D4 +/* 801EE3C0 001EB320 90 64 00 00 */ stw r3, 0(r4) +/* 801EE3C4 001EB324 80 84 00 00 */ lwz r4, 0(r4) +/* 801EE3C8 001EB328 80 64 00 04 */ lwz r3, 4(r4) +/* 801EE3CC 001EB32C 38 03 00 01 */ addi r0, r3, 1 +/* 801EE3D0 001EB330 90 04 00 04 */ stw r0, 4(r4) +lbl_801EE3D4: +/* 801EE3D4 001EB334 80 8F 04 B0 */ lwz r4, 0x4b0(r15) +/* 801EE3D8 001EB338 38 61 00 40 */ addi r3, r1, 0x40 +/* 801EE3DC 001EB33C 38 04 00 01 */ addi r0, r4, 1 +/* 801EE3E0 001EB340 90 0F 04 B0 */ stw r0, 0x4b0(r15) +/* 801EE3E4 001EB344 4B FE 4F 7D */ bl sub_801d3360 +/* 801EE3E8 001EB348 3C 80 80 3D */ lis r4, lbl_803D1F30@ha +/* 801EE3EC 001EB34C 38 60 00 4C */ li r3, 0x4c +/* 801EE3F0 001EB350 38 84 1F 30 */ addi r4, r4, lbl_803D1F30@l +/* 801EE3F4 001EB354 38 A0 00 00 */ li r5, 0 +/* 801EE3F8 001EB358 38 84 00 0B */ addi r4, r4, 0xb +/* 801EE3FC 001EB35C 48 12 74 71 */ bl __nw__FUlPCcPCc +/* 801EE400 001EB360 7C 6E 1B 79 */ or. r14, r3, r3 +/* 801EE404 001EB364 41 82 00 10 */ beq lbl_801EE414 +/* 801EE408 001EB368 38 81 01 0C */ addi r4, r1, 0x10c +/* 801EE40C 001EB36C 4B F2 87 49 */ bl __ct__10CModelDataFRC8CAnimRes +/* 801EE410 001EB370 7C 6E 1B 78 */ mr r14, r3 +lbl_801EE414: +/* 801EE414 001EB374 3C 80 80 3D */ lis r4, lbl_803D1F30@ha +/* 801EE418 001EB378 38 60 00 08 */ li r3, 8 +/* 801EE41C 001EB37C 38 84 1F 30 */ addi r4, r4, lbl_803D1F30@l +/* 801EE420 001EB380 38 A0 00 00 */ li r5, 0 +/* 801EE424 001EB384 38 84 00 0B */ addi r4, r4, 0xb +/* 801EE428 001EB388 48 12 74 45 */ bl __nw__FUlPCcPCc +/* 801EE42C 001EB38C 28 03 00 00 */ cmplwi r3, 0 +/* 801EE430 001EB390 41 82 00 10 */ beq lbl_801EE440 +/* 801EE434 001EB394 91 C3 00 00 */ stw r14, 0(r3) +/* 801EE438 001EB398 38 00 00 01 */ li r0, 1 +/* 801EE43C 001EB39C 90 03 00 04 */ stw r0, 4(r3) +lbl_801EE440: +/* 801EE440 001EB3A0 90 61 00 3C */ stw r3, 0x3c(r1) +/* 801EE444 001EB3A4 38 8F 04 B0 */ addi r4, r15, 0x4b0 +/* 801EE448 001EB3A8 80 0F 04 B0 */ lwz r0, 0x4b0(r15) +/* 801EE44C 001EB3AC 54 00 10 3A */ slwi r0, r0, 2 +/* 801EE450 001EB3B0 7C 84 02 14 */ add r4, r4, r0 +/* 801EE454 001EB3B4 34 84 00 04 */ addic. r4, r4, 4 +/* 801EE458 001EB3B8 41 82 00 18 */ beq lbl_801EE470 +/* 801EE45C 001EB3BC 90 64 00 00 */ stw r3, 0(r4) +/* 801EE460 001EB3C0 80 84 00 00 */ lwz r4, 0(r4) +/* 801EE464 001EB3C4 80 64 00 04 */ lwz r3, 4(r4) +/* 801EE468 001EB3C8 38 03 00 01 */ addi r0, r3, 1 +/* 801EE46C 001EB3CC 90 04 00 04 */ stw r0, 4(r4) +lbl_801EE470: +/* 801EE470 001EB3D0 80 8F 04 B0 */ lwz r4, 0x4b0(r15) +/* 801EE474 001EB3D4 38 61 00 3C */ addi r3, r1, 0x3c +/* 801EE478 001EB3D8 38 04 00 01 */ addi r0, r4, 1 +/* 801EE47C 001EB3DC 90 0F 04 B0 */ stw r0, 0x4b0(r15) +/* 801EE480 001EB3E0 4B FE 4E E1 */ bl sub_801d3360 +/* 801EE484 001EB3E4 3C 80 80 3D */ lis r4, lbl_803D1F30@ha +/* 801EE488 001EB3E8 38 60 00 4C */ li r3, 0x4c +/* 801EE48C 001EB3EC 38 84 1F 30 */ addi r4, r4, lbl_803D1F30@l +/* 801EE490 001EB3F0 38 A0 00 00 */ li r5, 0 +/* 801EE494 001EB3F4 38 84 00 0B */ addi r4, r4, 0xb +/* 801EE498 001EB3F8 48 12 73 D5 */ bl __nw__FUlPCcPCc +/* 801EE49C 001EB3FC 7C 6E 1B 79 */ or. r14, r3, r3 +/* 801EE4A0 001EB400 41 82 00 10 */ beq lbl_801EE4B0 +/* 801EE4A4 001EB404 38 81 01 0C */ addi r4, r1, 0x10c +/* 801EE4A8 001EB408 4B F2 86 AD */ bl __ct__10CModelDataFRC8CAnimRes +/* 801EE4AC 001EB40C 7C 6E 1B 78 */ mr r14, r3 +lbl_801EE4B0: +/* 801EE4B0 001EB410 3C 80 80 3D */ lis r4, lbl_803D1F30@ha +/* 801EE4B4 001EB414 38 60 00 08 */ li r3, 8 +/* 801EE4B8 001EB418 38 84 1F 30 */ addi r4, r4, lbl_803D1F30@l +/* 801EE4BC 001EB41C 38 A0 00 00 */ li r5, 0 +/* 801EE4C0 001EB420 38 84 00 0B */ addi r4, r4, 0xb +/* 801EE4C4 001EB424 48 12 73 A9 */ bl __nw__FUlPCcPCc +/* 801EE4C8 001EB428 28 03 00 00 */ cmplwi r3, 0 +/* 801EE4CC 001EB42C 41 82 00 10 */ beq lbl_801EE4DC +/* 801EE4D0 001EB430 91 C3 00 00 */ stw r14, 0(r3) +/* 801EE4D4 001EB434 38 00 00 01 */ li r0, 1 +/* 801EE4D8 001EB438 90 03 00 04 */ stw r0, 4(r3) +lbl_801EE4DC: +/* 801EE4DC 001EB43C 90 61 00 38 */ stw r3, 0x38(r1) +/* 801EE4E0 001EB440 38 8F 04 B0 */ addi r4, r15, 0x4b0 +/* 801EE4E4 001EB444 80 0F 04 B0 */ lwz r0, 0x4b0(r15) +/* 801EE4E8 001EB448 54 00 10 3A */ slwi r0, r0, 2 +/* 801EE4EC 001EB44C 7C 84 02 14 */ add r4, r4, r0 +/* 801EE4F0 001EB450 34 84 00 04 */ addic. r4, r4, 4 +/* 801EE4F4 001EB454 41 82 00 18 */ beq lbl_801EE50C +/* 801EE4F8 001EB458 90 64 00 00 */ stw r3, 0(r4) +/* 801EE4FC 001EB45C 80 84 00 00 */ lwz r4, 0(r4) +/* 801EE500 001EB460 80 64 00 04 */ lwz r3, 4(r4) +/* 801EE504 001EB464 38 03 00 01 */ addi r0, r3, 1 +/* 801EE508 001EB468 90 04 00 04 */ stw r0, 4(r4) +lbl_801EE50C: +/* 801EE50C 001EB46C 80 8F 04 B0 */ lwz r4, 0x4b0(r15) +/* 801EE510 001EB470 38 61 00 38 */ addi r3, r1, 0x38 +/* 801EE514 001EB474 38 04 00 01 */ addi r0, r4, 1 +/* 801EE518 001EB478 90 0F 04 B0 */ stw r0, 0x4b0(r15) +/* 801EE51C 001EB47C 4B FE 4E 45 */ bl sub_801d3360 +/* 801EE520 001EB480 3C 80 80 3D */ lis r4, lbl_803D1F30@ha +/* 801EE524 001EB484 38 60 00 4C */ li r3, 0x4c +/* 801EE528 001EB488 38 84 1F 30 */ addi r4, r4, lbl_803D1F30@l +/* 801EE52C 001EB48C 38 A0 00 00 */ li r5, 0 +/* 801EE530 001EB490 38 84 00 0B */ addi r4, r4, 0xb +/* 801EE534 001EB494 48 12 73 39 */ bl __nw__FUlPCcPCc +/* 801EE538 001EB498 7C 6E 1B 79 */ or. r14, r3, r3 +/* 801EE53C 001EB49C 41 82 00 10 */ beq lbl_801EE54C +/* 801EE540 001EB4A0 38 81 01 0C */ addi r4, r1, 0x10c +/* 801EE544 001EB4A4 4B F2 86 11 */ bl __ct__10CModelDataFRC8CAnimRes +/* 801EE548 001EB4A8 7C 6E 1B 78 */ mr r14, r3 +lbl_801EE54C: +/* 801EE54C 001EB4AC 3C 80 80 3D */ lis r4, lbl_803D1F30@ha +/* 801EE550 001EB4B0 38 60 00 08 */ li r3, 8 +/* 801EE554 001EB4B4 38 84 1F 30 */ addi r4, r4, lbl_803D1F30@l +/* 801EE558 001EB4B8 38 A0 00 00 */ li r5, 0 +/* 801EE55C 001EB4BC 38 84 00 0B */ addi r4, r4, 0xb +/* 801EE560 001EB4C0 48 12 73 0D */ bl __nw__FUlPCcPCc +/* 801EE564 001EB4C4 28 03 00 00 */ cmplwi r3, 0 +/* 801EE568 001EB4C8 41 82 00 10 */ beq lbl_801EE578 +/* 801EE56C 001EB4CC 91 C3 00 00 */ stw r14, 0(r3) +/* 801EE570 001EB4D0 38 00 00 01 */ li r0, 1 +/* 801EE574 001EB4D4 90 03 00 04 */ stw r0, 4(r3) +lbl_801EE578: +/* 801EE578 001EB4D8 90 61 00 34 */ stw r3, 0x34(r1) +/* 801EE57C 001EB4DC 38 8F 04 B0 */ addi r4, r15, 0x4b0 +/* 801EE580 001EB4E0 80 0F 04 B0 */ lwz r0, 0x4b0(r15) +/* 801EE584 001EB4E4 54 00 10 3A */ slwi r0, r0, 2 +/* 801EE588 001EB4E8 7C 84 02 14 */ add r4, r4, r0 +/* 801EE58C 001EB4EC 34 84 00 04 */ addic. r4, r4, 4 +/* 801EE590 001EB4F0 41 82 00 18 */ beq lbl_801EE5A8 +/* 801EE594 001EB4F4 90 64 00 00 */ stw r3, 0(r4) +/* 801EE598 001EB4F8 80 84 00 00 */ lwz r4, 0(r4) +/* 801EE59C 001EB4FC 80 64 00 04 */ lwz r3, 4(r4) +/* 801EE5A0 001EB500 38 03 00 01 */ addi r0, r3, 1 +/* 801EE5A4 001EB504 90 04 00 04 */ stw r0, 4(r4) +lbl_801EE5A8: +/* 801EE5A8 001EB508 80 8F 04 B0 */ lwz r4, 0x4b0(r15) +/* 801EE5AC 001EB50C 38 61 00 34 */ addi r3, r1, 0x34 +/* 801EE5B0 001EB510 38 04 00 01 */ addi r0, r4, 1 +/* 801EE5B4 001EB514 90 0F 04 B0 */ stw r0, 0x4b0(r15) +/* 801EE5B8 001EB518 4B FE 4D A9 */ bl sub_801d3360 +/* 801EE5BC 001EB51C 3C 80 80 3D */ lis r4, lbl_803D1F30@ha +/* 801EE5C0 001EB520 38 60 00 4C */ li r3, 0x4c +/* 801EE5C4 001EB524 38 84 1F 30 */ addi r4, r4, lbl_803D1F30@l +/* 801EE5C8 001EB528 38 A0 00 00 */ li r5, 0 +/* 801EE5CC 001EB52C 38 84 00 0B */ addi r4, r4, 0xb +/* 801EE5D0 001EB530 48 12 72 9D */ bl __nw__FUlPCcPCc +/* 801EE5D4 001EB534 7C 6E 1B 79 */ or. r14, r3, r3 +/* 801EE5D8 001EB538 41 82 00 10 */ beq lbl_801EE5E8 +/* 801EE5DC 001EB53C 38 81 01 0C */ addi r4, r1, 0x10c +/* 801EE5E0 001EB540 4B F2 85 75 */ bl __ct__10CModelDataFRC8CAnimRes +/* 801EE5E4 001EB544 7C 6E 1B 78 */ mr r14, r3 +lbl_801EE5E8: +/* 801EE5E8 001EB548 3C 80 80 3D */ lis r4, lbl_803D1F30@ha +/* 801EE5EC 001EB54C 38 60 00 08 */ li r3, 8 +/* 801EE5F0 001EB550 38 84 1F 30 */ addi r4, r4, lbl_803D1F30@l +/* 801EE5F4 001EB554 38 A0 00 00 */ li r5, 0 +/* 801EE5F8 001EB558 38 84 00 0B */ addi r4, r4, 0xb +/* 801EE5FC 001EB55C 48 12 72 71 */ bl __nw__FUlPCcPCc +/* 801EE600 001EB560 28 03 00 00 */ cmplwi r3, 0 +/* 801EE604 001EB564 41 82 00 10 */ beq lbl_801EE614 +/* 801EE608 001EB568 91 C3 00 00 */ stw r14, 0(r3) +/* 801EE60C 001EB56C 38 00 00 01 */ li r0, 1 +/* 801EE610 001EB570 90 03 00 04 */ stw r0, 4(r3) +lbl_801EE614: +/* 801EE614 001EB574 90 61 00 30 */ stw r3, 0x30(r1) +/* 801EE618 001EB578 38 8F 04 B0 */ addi r4, r15, 0x4b0 +/* 801EE61C 001EB57C 80 0F 04 B0 */ lwz r0, 0x4b0(r15) +/* 801EE620 001EB580 54 00 10 3A */ slwi r0, r0, 2 +/* 801EE624 001EB584 7C 84 02 14 */ add r4, r4, r0 +/* 801EE628 001EB588 34 84 00 04 */ addic. r4, r4, 4 +/* 801EE62C 001EB58C 41 82 00 18 */ beq lbl_801EE644 +/* 801EE630 001EB590 90 64 00 00 */ stw r3, 0(r4) +/* 801EE634 001EB594 80 84 00 00 */ lwz r4, 0(r4) +/* 801EE638 001EB598 80 64 00 04 */ lwz r3, 4(r4) +/* 801EE63C 001EB59C 38 03 00 01 */ addi r0, r3, 1 +/* 801EE640 001EB5A0 90 04 00 04 */ stw r0, 4(r4) +lbl_801EE644: +/* 801EE644 001EB5A4 80 8F 04 B0 */ lwz r4, 0x4b0(r15) +/* 801EE648 001EB5A8 38 61 00 30 */ addi r3, r1, 0x30 +/* 801EE64C 001EB5AC 38 04 00 01 */ addi r0, r4, 1 +/* 801EE650 001EB5B0 90 0F 04 B0 */ stw r0, 0x4b0(r15) +/* 801EE654 001EB5B4 4B FE 4D 0D */ bl sub_801d3360 +/* 801EE658 001EB5B8 3C 80 80 3D */ lis r4, lbl_803D1F30@ha +/* 801EE65C 001EB5BC 38 60 00 4C */ li r3, 0x4c +/* 801EE660 001EB5C0 38 84 1F 30 */ addi r4, r4, lbl_803D1F30@l +/* 801EE664 001EB5C4 38 A0 00 00 */ li r5, 0 +/* 801EE668 001EB5C8 38 84 00 0B */ addi r4, r4, 0xb +/* 801EE66C 001EB5CC 48 12 72 01 */ bl __nw__FUlPCcPCc +/* 801EE670 001EB5D0 7C 6E 1B 79 */ or. r14, r3, r3 +/* 801EE674 001EB5D4 41 82 00 10 */ beq lbl_801EE684 +/* 801EE678 001EB5D8 38 81 00 F0 */ addi r4, r1, 0xf0 +/* 801EE67C 001EB5DC 4B F2 84 D9 */ bl __ct__10CModelDataFRC8CAnimRes +/* 801EE680 001EB5E0 7C 6E 1B 78 */ mr r14, r3 +lbl_801EE684: +/* 801EE684 001EB5E4 3C 80 80 3D */ lis r4, lbl_803D1F30@ha +/* 801EE688 001EB5E8 38 60 00 08 */ li r3, 8 +/* 801EE68C 001EB5EC 38 84 1F 30 */ addi r4, r4, lbl_803D1F30@l +/* 801EE690 001EB5F0 38 A0 00 00 */ li r5, 0 +/* 801EE694 001EB5F4 38 84 00 0B */ addi r4, r4, 0xb +/* 801EE698 001EB5F8 48 12 71 D5 */ bl __nw__FUlPCcPCc +/* 801EE69C 001EB5FC 28 03 00 00 */ cmplwi r3, 0 +/* 801EE6A0 001EB600 41 82 00 10 */ beq lbl_801EE6B0 +/* 801EE6A4 001EB604 91 C3 00 00 */ stw r14, 0(r3) +/* 801EE6A8 001EB608 38 00 00 01 */ li r0, 1 +/* 801EE6AC 001EB60C 90 03 00 04 */ stw r0, 4(r3) +lbl_801EE6B0: +/* 801EE6B0 001EB610 90 61 00 2C */ stw r3, 0x2c(r1) +/* 801EE6B4 001EB614 38 8F 04 B0 */ addi r4, r15, 0x4b0 +/* 801EE6B8 001EB618 80 0F 04 B0 */ lwz r0, 0x4b0(r15) +/* 801EE6BC 001EB61C 54 00 10 3A */ slwi r0, r0, 2 +/* 801EE6C0 001EB620 7C 84 02 14 */ add r4, r4, r0 +/* 801EE6C4 001EB624 34 84 00 04 */ addic. r4, r4, 4 +/* 801EE6C8 001EB628 41 82 00 18 */ beq lbl_801EE6E0 +/* 801EE6CC 001EB62C 90 64 00 00 */ stw r3, 0(r4) +/* 801EE6D0 001EB630 80 84 00 00 */ lwz r4, 0(r4) +/* 801EE6D4 001EB634 80 64 00 04 */ lwz r3, 4(r4) +/* 801EE6D8 001EB638 38 03 00 01 */ addi r0, r3, 1 +/* 801EE6DC 001EB63C 90 04 00 04 */ stw r0, 4(r4) +lbl_801EE6E0: +/* 801EE6E0 001EB640 80 8F 04 B0 */ lwz r4, 0x4b0(r15) +/* 801EE6E4 001EB644 38 61 00 2C */ addi r3, r1, 0x2c +/* 801EE6E8 001EB648 38 04 00 01 */ addi r0, r4, 1 +/* 801EE6EC 001EB64C 90 0F 04 B0 */ stw r0, 0x4b0(r15) +/* 801EE6F0 001EB650 4B FE 4C 71 */ bl sub_801d3360 +/* 801EE6F4 001EB654 3C 80 80 3D */ lis r4, lbl_803D1F30@ha +/* 801EE6F8 001EB658 38 60 00 4C */ li r3, 0x4c +/* 801EE6FC 001EB65C 38 84 1F 30 */ addi r4, r4, lbl_803D1F30@l +/* 801EE700 001EB660 38 A0 00 00 */ li r5, 0 +/* 801EE704 001EB664 38 84 00 0B */ addi r4, r4, 0xb +/* 801EE708 001EB668 48 12 71 65 */ bl __nw__FUlPCcPCc +/* 801EE70C 001EB66C 7C 6E 1B 79 */ or. r14, r3, r3 +/* 801EE710 001EB670 41 82 00 10 */ beq lbl_801EE720 +/* 801EE714 001EB674 7E 44 93 78 */ mr r4, r18 +/* 801EE718 001EB678 4B F2 84 3D */ bl __ct__10CModelDataFRC8CAnimRes +/* 801EE71C 001EB67C 7C 6E 1B 78 */ mr r14, r3 +lbl_801EE720: +/* 801EE720 001EB680 3C 80 80 3D */ lis r4, lbl_803D1F30@ha +/* 801EE724 001EB684 38 60 00 08 */ li r3, 8 +/* 801EE728 001EB688 38 84 1F 30 */ addi r4, r4, lbl_803D1F30@l +/* 801EE72C 001EB68C 38 A0 00 00 */ li r5, 0 +/* 801EE730 001EB690 38 84 00 0B */ addi r4, r4, 0xb +/* 801EE734 001EB694 48 12 71 39 */ bl __nw__FUlPCcPCc +/* 801EE738 001EB698 28 03 00 00 */ cmplwi r3, 0 +/* 801EE73C 001EB69C 41 82 00 10 */ beq lbl_801EE74C +/* 801EE740 001EB6A0 91 C3 00 00 */ stw r14, 0(r3) +/* 801EE744 001EB6A4 38 00 00 01 */ li r0, 1 +/* 801EE748 001EB6A8 90 03 00 04 */ stw r0, 4(r3) +lbl_801EE74C: +/* 801EE74C 001EB6AC 90 61 00 28 */ stw r3, 0x28(r1) +/* 801EE750 001EB6B0 38 8F 04 B0 */ addi r4, r15, 0x4b0 +/* 801EE754 001EB6B4 80 0F 04 B0 */ lwz r0, 0x4b0(r15) +/* 801EE758 001EB6B8 54 00 10 3A */ slwi r0, r0, 2 +/* 801EE75C 001EB6BC 7C 84 02 14 */ add r4, r4, r0 +/* 801EE760 001EB6C0 34 84 00 04 */ addic. r4, r4, 4 +/* 801EE764 001EB6C4 41 82 00 18 */ beq lbl_801EE77C +/* 801EE768 001EB6C8 90 64 00 00 */ stw r3, 0(r4) +/* 801EE76C 001EB6CC 80 84 00 00 */ lwz r4, 0(r4) +/* 801EE770 001EB6D0 80 64 00 04 */ lwz r3, 4(r4) +/* 801EE774 001EB6D4 38 03 00 01 */ addi r0, r3, 1 +/* 801EE778 001EB6D8 90 04 00 04 */ stw r0, 4(r4) +lbl_801EE77C: +/* 801EE77C 001EB6DC 80 8F 04 B0 */ lwz r4, 0x4b0(r15) +/* 801EE780 001EB6E0 38 61 00 28 */ addi r3, r1, 0x28 +/* 801EE784 001EB6E4 38 04 00 01 */ addi r0, r4, 1 +/* 801EE788 001EB6E8 90 0F 04 B0 */ stw r0, 0x4b0(r15) +/* 801EE78C 001EB6EC 4B FE 4B D5 */ bl sub_801d3360 +/* 801EE790 001EB6F0 80 1F 00 44 */ lwz r0, 0x44(r31) +/* 801EE794 001EB6F4 28 00 00 00 */ cmplwi r0, 0 +/* 801EE798 001EB6F8 41 82 00 40 */ beq lbl_801EE7D8 +/* 801EE79C 001EB6FC 3A 00 00 00 */ li r16, 0 +/* 801EE7A0 001EB700 39 C0 00 00 */ li r14, 0 +lbl_801EE7A4: +/* 801EE7A4 001EB704 7C 6F 72 14 */ add r3, r15, r14 +/* 801EE7A8 001EB708 38 9F 00 44 */ addi r4, r31, 0x44 +/* 801EE7AC 001EB70C 80 63 04 B4 */ lwz r3, 0x4b4(r3) +/* 801EE7B0 001EB710 80 63 00 00 */ lwz r3, 0(r3) +/* 801EE7B4 001EB714 4B F2 68 3D */ bl "SetXRayModel__10CModelDataFRCQ24rstl11pair" +/* 801EE7B8 001EB718 3A 10 00 01 */ addi r16, r16, 1 +/* 801EE7BC 001EB71C 39 CE 00 04 */ addi r14, r14, 4 +/* 801EE7C0 001EB720 2C 10 00 09 */ cmpwi r16, 9 +/* 801EE7C4 001EB724 41 80 FF E0 */ blt lbl_801EE7A4 +/* 801EE7C8 001EB728 88 0F 05 60 */ lbz r0, 0x560(r15) +/* 801EE7CC 001EB72C 38 60 00 01 */ li r3, 1 +/* 801EE7D0 001EB730 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 801EE7D4 001EB734 98 0F 05 60 */ stb r0, 0x560(r15) +lbl_801EE7D8: +/* 801EE7D8 001EB738 80 1F 00 4C */ lwz r0, 0x4c(r31) +/* 801EE7DC 001EB73C 28 00 00 00 */ cmplwi r0, 0 +/* 801EE7E0 001EB740 41 82 00 40 */ beq lbl_801EE820 +/* 801EE7E4 001EB744 3A 00 00 00 */ li r16, 0 +/* 801EE7E8 001EB748 39 C0 00 00 */ li r14, 0 +lbl_801EE7EC: +/* 801EE7EC 001EB74C 7C 6F 72 14 */ add r3, r15, r14 +/* 801EE7F0 001EB750 38 9F 00 4C */ addi r4, r31, 0x4c +/* 801EE7F4 001EB754 80 63 04 B4 */ lwz r3, 0x4b4(r3) +/* 801EE7F8 001EB758 80 63 00 00 */ lwz r3, 0(r3) +/* 801EE7FC 001EB75C 4B F2 6A 59 */ bl "SetInfraModel__10CModelDataFRCQ24rstl11pair" +/* 801EE800 001EB760 3A 10 00 01 */ addi r16, r16, 1 +/* 801EE804 001EB764 39 CE 00 04 */ addi r14, r14, 4 +/* 801EE808 001EB768 2C 10 00 09 */ cmpwi r16, 9 +/* 801EE80C 001EB76C 41 80 FF E0 */ blt lbl_801EE7EC +/* 801EE810 001EB770 88 0F 05 60 */ lbz r0, 0x560(r15) +/* 801EE814 001EB774 38 60 00 01 */ li r3, 1 +/* 801EE818 001EB778 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 801EE81C 001EB77C 98 0F 05 60 */ stb r0, 0x560(r15) +lbl_801EE820: +/* 801EE820 001EB780 3C 15 00 01 */ addis r0, r21, 1 +/* 801EE824 001EB784 28 00 FF FF */ cmplwi r0, 0xffff +/* 801EE828 001EB788 41 82 00 A8 */ beq lbl_801EE8D0 +/* 801EE82C 001EB78C 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 801EE830 001EB790 92 A1 00 9C */ stw r21, 0x9c(r1) +/* 801EE834 001EB794 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 801EE838 001EB798 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801EE83C 001EB79C 90 01 00 98 */ stw r0, 0x98(r1) +/* 801EE840 001EB7A0 38 61 00 90 */ addi r3, r1, 0x90 +/* 801EE844 001EB7A4 38 A1 00 98 */ addi r5, r1, 0x98 +/* 801EE848 001EB7A8 81 84 00 00 */ lwz r12, 0(r4) +/* 801EE84C 001EB7AC 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801EE850 001EB7B0 7D 89 03 A6 */ mtctr r12 +/* 801EE854 001EB7B4 4E 80 04 21 */ bctrl +/* 801EE858 001EB7B8 39 C1 00 CC */ addi r14, r1, 0xcc +/* 801EE85C 001EB7BC 38 81 00 90 */ addi r4, r1, 0x90 +/* 801EE860 001EB7C0 7D C3 73 78 */ mr r3, r14 +/* 801EE864 001EB7C4 48 15 26 45 */ bl __ct__6CTokenFRC6CToken +/* 801EE868 001EB7C8 7D C3 73 78 */ mr r3, r14 +/* 801EE86C 001EB7CC 48 15 25 A1 */ bl GetObj__6CTokenFv +/* 801EE870 001EB7D0 80 03 00 04 */ lwz r0, 4(r3) +/* 801EE874 001EB7D4 38 6F 04 F0 */ addi r3, r15, 0x4f0 +/* 801EE878 001EB7D8 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 801EE87C 001EB7DC 80 0F 04 F0 */ lwz r0, 0x4f0(r15) +/* 801EE880 001EB7E0 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801EE884 001EB7E4 7D C3 02 14 */ add r14, r3, r0 +/* 801EE888 001EB7E8 35 CE 00 04 */ addic. r14, r14, 4 +/* 801EE88C 001EB7EC 41 82 00 20 */ beq lbl_801EE8AC +/* 801EE890 001EB7F0 7D C3 73 78 */ mr r3, r14 +/* 801EE894 001EB7F4 38 81 00 CC */ addi r4, r1, 0xcc +/* 801EE898 001EB7F8 48 15 26 11 */ bl __ct__6CTokenFRC6CToken +/* 801EE89C 001EB7FC 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 801EE8A0 001EB800 7D C3 73 78 */ mr r3, r14 +/* 801EE8A4 001EB804 90 0E 00 08 */ stw r0, 8(r14) +/* 801EE8A8 001EB808 48 15 24 DD */ bl Lock__6CTokenFv +lbl_801EE8AC: +/* 801EE8AC 001EB80C 80 AF 04 F0 */ lwz r5, 0x4f0(r15) +/* 801EE8B0 001EB810 38 61 00 CC */ addi r3, r1, 0xcc +/* 801EE8B4 001EB814 38 80 00 00 */ li r4, 0 +/* 801EE8B8 001EB818 38 05 00 01 */ addi r0, r5, 1 +/* 801EE8BC 001EB81C 90 0F 04 F0 */ stw r0, 0x4f0(r15) +/* 801EE8C0 001EB820 48 15 25 81 */ bl __dt__6CTokenFv +/* 801EE8C4 001EB824 38 61 00 90 */ addi r3, r1, 0x90 +/* 801EE8C8 001EB828 38 80 FF FF */ li r4, -1 +/* 801EE8CC 001EB82C 48 15 25 75 */ bl __dt__6CTokenFv +lbl_801EE8D0: +/* 801EE8D0 001EB830 3C 16 00 01 */ addis r0, r22, 1 +/* 801EE8D4 001EB834 28 00 FF FF */ cmplwi r0, 0xffff +/* 801EE8D8 001EB838 41 82 00 A8 */ beq lbl_801EE980 +/* 801EE8DC 001EB83C 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 801EE8E0 001EB840 92 C1 00 8C */ stw r22, 0x8c(r1) +/* 801EE8E4 001EB844 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 801EE8E8 001EB848 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801EE8EC 001EB84C 90 01 00 88 */ stw r0, 0x88(r1) +/* 801EE8F0 001EB850 38 61 00 80 */ addi r3, r1, 0x80 +/* 801EE8F4 001EB854 38 A1 00 88 */ addi r5, r1, 0x88 +/* 801EE8F8 001EB858 81 84 00 00 */ lwz r12, 0(r4) +/* 801EE8FC 001EB85C 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801EE900 001EB860 7D 89 03 A6 */ mtctr r12 +/* 801EE904 001EB864 4E 80 04 21 */ bctrl +/* 801EE908 001EB868 39 C1 00 C0 */ addi r14, r1, 0xc0 +/* 801EE90C 001EB86C 38 81 00 80 */ addi r4, r1, 0x80 +/* 801EE910 001EB870 7D C3 73 78 */ mr r3, r14 +/* 801EE914 001EB874 48 15 25 95 */ bl __ct__6CTokenFRC6CToken +/* 801EE918 001EB878 7D C3 73 78 */ mr r3, r14 +/* 801EE91C 001EB87C 48 15 24 F1 */ bl GetObj__6CTokenFv +/* 801EE920 001EB880 80 03 00 04 */ lwz r0, 4(r3) +/* 801EE924 001EB884 38 6F 04 F0 */ addi r3, r15, 0x4f0 +/* 801EE928 001EB888 90 01 00 C8 */ stw r0, 0xc8(r1) +/* 801EE92C 001EB88C 80 0F 04 F0 */ lwz r0, 0x4f0(r15) +/* 801EE930 001EB890 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801EE934 001EB894 7D C3 02 14 */ add r14, r3, r0 +/* 801EE938 001EB898 35 CE 00 04 */ addic. r14, r14, 4 +/* 801EE93C 001EB89C 41 82 00 20 */ beq lbl_801EE95C +/* 801EE940 001EB8A0 7D C3 73 78 */ mr r3, r14 +/* 801EE944 001EB8A4 38 81 00 C0 */ addi r4, r1, 0xc0 +/* 801EE948 001EB8A8 48 15 25 61 */ bl __ct__6CTokenFRC6CToken +/* 801EE94C 001EB8AC 80 01 00 C8 */ lwz r0, 0xc8(r1) +/* 801EE950 001EB8B0 7D C3 73 78 */ mr r3, r14 +/* 801EE954 001EB8B4 90 0E 00 08 */ stw r0, 8(r14) +/* 801EE958 001EB8B8 48 15 24 2D */ bl Lock__6CTokenFv +lbl_801EE95C: +/* 801EE95C 001EB8BC 80 AF 04 F0 */ lwz r5, 0x4f0(r15) +/* 801EE960 001EB8C0 38 61 00 C0 */ addi r3, r1, 0xc0 +/* 801EE964 001EB8C4 38 80 00 00 */ li r4, 0 +/* 801EE968 001EB8C8 38 05 00 01 */ addi r0, r5, 1 +/* 801EE96C 001EB8CC 90 0F 04 F0 */ stw r0, 0x4f0(r15) +/* 801EE970 001EB8D0 48 15 24 D1 */ bl __dt__6CTokenFv +/* 801EE974 001EB8D4 38 61 00 80 */ addi r3, r1, 0x80 +/* 801EE978 001EB8D8 38 80 FF FF */ li r4, -1 +/* 801EE97C 001EB8DC 48 15 24 C5 */ bl __dt__6CTokenFv +lbl_801EE980: +/* 801EE980 001EB8E0 3C 17 00 01 */ addis r0, r23, 1 +/* 801EE984 001EB8E4 28 00 FF FF */ cmplwi r0, 0xffff +/* 801EE988 001EB8E8 41 82 00 A8 */ beq lbl_801EEA30 +/* 801EE98C 001EB8EC 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 801EE990 001EB8F0 92 E1 00 7C */ stw r23, 0x7c(r1) +/* 801EE994 001EB8F4 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 801EE998 001EB8F8 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801EE99C 001EB8FC 90 01 00 78 */ stw r0, 0x78(r1) +/* 801EE9A0 001EB900 38 61 00 70 */ addi r3, r1, 0x70 +/* 801EE9A4 001EB904 38 A1 00 78 */ addi r5, r1, 0x78 +/* 801EE9A8 001EB908 81 84 00 00 */ lwz r12, 0(r4) +/* 801EE9AC 001EB90C 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801EE9B0 001EB910 7D 89 03 A6 */ mtctr r12 +/* 801EE9B4 001EB914 4E 80 04 21 */ bctrl +/* 801EE9B8 001EB918 39 C1 00 B4 */ addi r14, r1, 0xb4 +/* 801EE9BC 001EB91C 38 81 00 70 */ addi r4, r1, 0x70 +/* 801EE9C0 001EB920 7D C3 73 78 */ mr r3, r14 +/* 801EE9C4 001EB924 48 15 24 E5 */ bl __ct__6CTokenFRC6CToken +/* 801EE9C8 001EB928 7D C3 73 78 */ mr r3, r14 +/* 801EE9CC 001EB92C 48 15 24 41 */ bl GetObj__6CTokenFv +/* 801EE9D0 001EB930 80 03 00 04 */ lwz r0, 4(r3) +/* 801EE9D4 001EB934 38 6F 04 F0 */ addi r3, r15, 0x4f0 +/* 801EE9D8 001EB938 90 01 00 BC */ stw r0, 0xbc(r1) +/* 801EE9DC 001EB93C 80 0F 04 F0 */ lwz r0, 0x4f0(r15) +/* 801EE9E0 001EB940 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801EE9E4 001EB944 7D C3 02 14 */ add r14, r3, r0 +/* 801EE9E8 001EB948 35 CE 00 04 */ addic. r14, r14, 4 +/* 801EE9EC 001EB94C 41 82 00 20 */ beq lbl_801EEA0C +/* 801EE9F0 001EB950 7D C3 73 78 */ mr r3, r14 +/* 801EE9F4 001EB954 38 81 00 B4 */ addi r4, r1, 0xb4 +/* 801EE9F8 001EB958 48 15 24 B1 */ bl __ct__6CTokenFRC6CToken +/* 801EE9FC 001EB95C 80 01 00 BC */ lwz r0, 0xbc(r1) +/* 801EEA00 001EB960 7D C3 73 78 */ mr r3, r14 +/* 801EEA04 001EB964 90 0E 00 08 */ stw r0, 8(r14) +/* 801EEA08 001EB968 48 15 23 7D */ bl Lock__6CTokenFv +lbl_801EEA0C: +/* 801EEA0C 001EB96C 80 AF 04 F0 */ lwz r5, 0x4f0(r15) +/* 801EEA10 001EB970 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 801EEA14 001EB974 38 80 00 00 */ li r4, 0 +/* 801EEA18 001EB978 38 05 00 01 */ addi r0, r5, 1 +/* 801EEA1C 001EB97C 90 0F 04 F0 */ stw r0, 0x4f0(r15) +/* 801EEA20 001EB980 48 15 24 21 */ bl __dt__6CTokenFv +/* 801EEA24 001EB984 38 61 00 70 */ addi r3, r1, 0x70 +/* 801EEA28 001EB988 38 80 FF FF */ li r4, -1 +/* 801EEA2C 001EB98C 48 15 24 15 */ bl __dt__6CTokenFv +lbl_801EEA30: +/* 801EEA30 001EB990 3C 18 00 01 */ addis r0, r24, 1 +/* 801EEA34 001EB994 28 00 FF FF */ cmplwi r0, 0xffff +/* 801EEA38 001EB998 41 82 00 A8 */ beq lbl_801EEAE0 +/* 801EEA3C 001EB99C 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 801EEA40 001EB9A0 93 01 00 6C */ stw r24, 0x6c(r1) +/* 801EEA44 001EB9A4 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 801EEA48 001EB9A8 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801EEA4C 001EB9AC 90 01 00 68 */ stw r0, 0x68(r1) +/* 801EEA50 001EB9B0 38 61 00 60 */ addi r3, r1, 0x60 +/* 801EEA54 001EB9B4 38 A1 00 68 */ addi r5, r1, 0x68 +/* 801EEA58 001EB9B8 81 84 00 00 */ lwz r12, 0(r4) +/* 801EEA5C 001EB9BC 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801EEA60 001EB9C0 7D 89 03 A6 */ mtctr r12 +/* 801EEA64 001EB9C4 4E 80 04 21 */ bctrl +/* 801EEA68 001EB9C8 39 C1 00 A8 */ addi r14, r1, 0xa8 +/* 801EEA6C 001EB9CC 38 81 00 60 */ addi r4, r1, 0x60 +/* 801EEA70 001EB9D0 7D C3 73 78 */ mr r3, r14 +/* 801EEA74 001EB9D4 48 15 24 35 */ bl __ct__6CTokenFRC6CToken +/* 801EEA78 001EB9D8 7D C3 73 78 */ mr r3, r14 +/* 801EEA7C 001EB9DC 48 15 23 91 */ bl GetObj__6CTokenFv +/* 801EEA80 001EB9E0 80 03 00 04 */ lwz r0, 4(r3) +/* 801EEA84 001EB9E4 38 6F 04 F0 */ addi r3, r15, 0x4f0 +/* 801EEA88 001EB9E8 90 01 00 B0 */ stw r0, 0xb0(r1) +/* 801EEA8C 001EB9EC 80 0F 04 F0 */ lwz r0, 0x4f0(r15) +/* 801EEA90 001EB9F0 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801EEA94 001EB9F4 7D C3 02 14 */ add r14, r3, r0 +/* 801EEA98 001EB9F8 35 CE 00 04 */ addic. r14, r14, 4 +/* 801EEA9C 001EB9FC 41 82 00 20 */ beq lbl_801EEABC +/* 801EEAA0 001EBA00 7D C3 73 78 */ mr r3, r14 +/* 801EEAA4 001EBA04 38 81 00 A8 */ addi r4, r1, 0xa8 +/* 801EEAA8 001EBA08 48 15 24 01 */ bl __ct__6CTokenFRC6CToken +/* 801EEAAC 001EBA0C 80 01 00 B0 */ lwz r0, 0xb0(r1) +/* 801EEAB0 001EBA10 7D C3 73 78 */ mr r3, r14 +/* 801EEAB4 001EBA14 90 0E 00 08 */ stw r0, 8(r14) +/* 801EEAB8 001EBA18 48 15 22 CD */ bl Lock__6CTokenFv +lbl_801EEABC: +/* 801EEABC 001EBA1C 80 AF 04 F0 */ lwz r5, 0x4f0(r15) +/* 801EEAC0 001EBA20 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 801EEAC4 001EBA24 38 80 00 00 */ li r4, 0 +/* 801EEAC8 001EBA28 38 05 00 01 */ addi r0, r5, 1 +/* 801EEACC 001EBA2C 90 0F 04 F0 */ stw r0, 0x4f0(r15) +/* 801EEAD0 001EBA30 48 15 23 71 */ bl __dt__6CTokenFv +/* 801EEAD4 001EBA34 38 61 00 60 */ addi r3, r1, 0x60 +/* 801EEAD8 001EBA38 38 80 FF FF */ li r4, -1 +/* 801EEADC 001EBA3C 48 15 23 65 */ bl __dt__6CTokenFv +lbl_801EEAE0: +/* 801EEAE0 001EBA40 3A 00 00 00 */ li r16, 0 +/* 801EEAE4 001EBA44 3C 60 80 3D */ lis r3, lbl_803D1F30@ha +/* 801EEAE8 001EBA48 7E 11 83 78 */ mr r17, r16 +/* 801EEAEC 001EBA4C 3A 4F 05 24 */ addi r18, r15, 0x524 +/* 801EEAF0 001EBA50 39 C3 1F 30 */ addi r14, r3, lbl_803D1F30@l +/* 801EEAF4 001EBA54 3A 60 00 00 */ li r19, 0 +/* 801EEAF8 001EBA58 48 00 00 F8 */ b lbl_801EEBF0 +lbl_801EEAFC: +/* 801EEAFC 001EBA5C 38 8E 00 0B */ addi r4, r14, 0xb +/* 801EEB00 001EBA60 3A 80 00 00 */ li r20, 0 +/* 801EEB04 001EBA64 38 60 03 40 */ li r3, 0x340 +/* 801EEB08 001EBA68 38 A0 00 00 */ li r5, 0 +/* 801EEB0C 001EBA6C 48 12 6D 61 */ bl __nw__FUlPCcPCc +/* 801EEB10 001EBA70 7C 75 1B 79 */ or. r21, r3, r3 +/* 801EEB14 001EBA74 41 82 00 30 */ beq lbl_801EEB44 +/* 801EEB18 001EBA78 7C 8F 82 14 */ add r4, r15, r16 +/* 801EEB1C 001EBA7C 38 61 00 58 */ addi r3, r1, 0x58 +/* 801EEB20 001EBA80 38 84 04 F4 */ addi r4, r4, 0x4f4 +/* 801EEB24 001EBA84 48 15 23 85 */ bl __ct__6CTokenFRC6CToken +/* 801EEB28 001EBA88 7E A3 AB 78 */ mr r3, r21 +/* 801EEB2C 001EBA8C 38 81 00 58 */ addi r4, r1, 0x58 +/* 801EEB30 001EBA90 3A 80 00 01 */ li r20, 1 +/* 801EEB34 001EBA94 38 A0 00 00 */ li r5, 0 +/* 801EEB38 001EBA98 38 C0 00 01 */ li r6, 1 +/* 801EEB3C 001EBA9C 48 13 08 A5 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 801EEB40 001EBAA0 7C 75 1B 78 */ mr r21, r3 +lbl_801EEB44: +/* 801EEB44 001EBAA4 80 12 00 00 */ lwz r0, 0(r18) +/* 801EEB48 001EBAA8 7C 75 00 D0 */ neg r3, r21 +/* 801EEB4C 001EBAAC 7C 63 AB 78 */ or r3, r3, r21 +/* 801EEB50 001EBAB0 92 A1 00 54 */ stw r21, 0x54(r1) +/* 801EEB54 001EBAB4 54 00 18 38 */ slwi r0, r0, 3 +/* 801EEB58 001EBAB8 7C 92 02 14 */ add r4, r18, r0 +/* 801EEB5C 001EBABC 54 60 0F FE */ srwi r0, r3, 0x1f +/* 801EEB60 001EBAC0 34 84 00 04 */ addic. r4, r4, 4 +/* 801EEB64 001EBAC4 98 01 00 50 */ stb r0, 0x50(r1) +/* 801EEB68 001EBAC8 41 82 00 14 */ beq lbl_801EEB7C +/* 801EEB6C 001EBACC 98 04 00 00 */ stb r0, 0(r4) +/* 801EEB70 001EBAD0 38 00 00 00 */ li r0, 0 +/* 801EEB74 001EBAD4 92 A4 00 04 */ stw r21, 4(r4) +/* 801EEB78 001EBAD8 98 01 00 50 */ stb r0, 0x50(r1) +lbl_801EEB7C: +/* 801EEB7C 001EBADC 80 6F 05 24 */ lwz r3, 0x524(r15) +/* 801EEB80 001EBAE0 88 01 00 50 */ lbz r0, 0x50(r1) +/* 801EEB84 001EBAE4 38 63 00 01 */ addi r3, r3, 1 +/* 801EEB88 001EBAE8 28 00 00 00 */ cmplwi r0, 0 +/* 801EEB8C 001EBAEC 90 6F 05 24 */ stw r3, 0x524(r15) +/* 801EEB90 001EBAF0 41 82 00 24 */ beq lbl_801EEBB4 +/* 801EEB94 001EBAF4 80 61 00 54 */ lwz r3, 0x54(r1) +/* 801EEB98 001EBAF8 28 03 00 00 */ cmplwi r3, 0 +/* 801EEB9C 001EBAFC 41 82 00 18 */ beq lbl_801EEBB4 +/* 801EEBA0 001EBB00 81 83 00 00 */ lwz r12, 0(r3) +/* 801EEBA4 001EBB04 38 80 00 01 */ li r4, 1 +/* 801EEBA8 001EBB08 81 8C 00 08 */ lwz r12, 8(r12) +/* 801EEBAC 001EBB0C 7D 89 03 A6 */ mtctr r12 +/* 801EEBB0 001EBB10 4E 80 04 21 */ bctrl +lbl_801EEBB4: +/* 801EEBB4 001EBB14 7E 80 07 75 */ extsb. r0, r20 +/* 801EEBB8 001EBB18 41 82 00 10 */ beq lbl_801EEBC8 +/* 801EEBBC 001EBB1C 38 61 00 58 */ addi r3, r1, 0x58 +/* 801EEBC0 001EBB20 38 80 00 00 */ li r4, 0 +/* 801EEBC4 001EBB24 48 15 22 7D */ bl __dt__6CTokenFv +lbl_801EEBC8: +/* 801EEBC8 001EBB28 7C 6F 8A 14 */ add r3, r15, r17 +/* 801EEBCC 001EBB2C 38 80 00 00 */ li r4, 0 +/* 801EEBD0 001EBB30 80 63 05 2C */ lwz r3, 0x52c(r3) +/* 801EEBD4 001EBB34 81 83 00 00 */ lwz r12, 0(r3) +/* 801EEBD8 001EBB38 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801EEBDC 001EBB3C 7D 89 03 A6 */ mtctr r12 +/* 801EEBE0 001EBB40 4E 80 04 21 */ bctrl +/* 801EEBE4 001EBB44 3A 10 00 0C */ addi r16, r16, 0xc +/* 801EEBE8 001EBB48 3A 31 00 08 */ addi r17, r17, 8 +/* 801EEBEC 001EBB4C 3A 73 00 01 */ addi r19, r19, 1 +lbl_801EEBF0: +/* 801EEBF0 001EBB50 80 0F 04 F0 */ lwz r0, 0x4f0(r15) +/* 801EEBF4 001EBB54 7C 13 00 00 */ cmpw r19, r0 +/* 801EEBF8 001EBB58 41 80 FF 04 */ blt lbl_801EEAFC +/* 801EEBFC 001EBB5C 7D E3 7B 78 */ mr r3, r15 +/* 801EEC00 001EBB60 E3 E1 02 B8 */ psq_l f31, 696(r1), 0, qr0 +/* 801EEC04 001EBB64 CB E1 02 B0 */ lfd f31, 0x2b0(r1) +/* 801EEC08 001EBB68 E3 C1 02 A8 */ psq_l f30, 680(r1), 0, qr0 +/* 801EEC0C 001EBB6C CB C1 02 A0 */ lfd f30, 0x2a0(r1) +/* 801EEC10 001EBB70 E3 A1 02 98 */ psq_l f29, 664(r1), 0, qr0 +/* 801EEC14 001EBB74 CB A1 02 90 */ lfd f29, 0x290(r1) +/* 801EEC18 001EBB78 E3 81 02 88 */ psq_l f28, 648(r1), 0, qr0 +/* 801EEC1C 001EBB7C CB 81 02 80 */ lfd f28, 0x280(r1) +/* 801EEC20 001EBB80 E3 61 02 78 */ psq_l f27, 632(r1), 0, qr0 +/* 801EEC24 001EBB84 CB 61 02 70 */ lfd f27, 0x270(r1) +/* 801EEC28 001EBB88 E3 41 02 68 */ psq_l f26, 616(r1), 0, qr0 +/* 801EEC2C 001EBB8C CB 41 02 60 */ lfd f26, 0x260(r1) +/* 801EEC30 001EBB90 E3 21 02 58 */ psq_l f25, 600(r1), 0, qr0 +/* 801EEC34 001EBB94 CB 21 02 50 */ lfd f25, 0x250(r1) +/* 801EEC38 001EBB98 E3 01 02 48 */ psq_l f24, 584(r1), 0, qr0 +/* 801EEC3C 001EBB9C CB 01 02 40 */ lfd f24, 0x240(r1) +/* 801EEC40 001EBBA0 E2 E1 02 38 */ psq_l f23, 568(r1), 0, qr0 +/* 801EEC44 001EBBA4 CA E1 02 30 */ lfd f23, 0x230(r1) +/* 801EEC48 001EBBA8 E2 C1 02 28 */ psq_l f22, 552(r1), 0, qr0 +/* 801EEC4C 001EBBAC CA C1 02 20 */ lfd f22, 0x220(r1) +/* 801EEC50 001EBBB0 E2 A1 02 18 */ psq_l f21, 536(r1), 0, qr0 +/* 801EEC54 001EBBB4 CA A1 02 10 */ lfd f21, 0x210(r1) +/* 801EEC58 001EBBB8 E2 81 02 08 */ psq_l f20, 520(r1), 0, qr0 +/* 801EEC5C 001EBBBC CA 81 02 00 */ lfd f20, 0x200(r1) +/* 801EEC60 001EBBC0 E2 61 01 F8 */ psq_l f19, 504(r1), 0, qr0 +/* 801EEC64 001EBBC4 CA 61 01 F0 */ lfd f19, 0x1f0(r1) +/* 801EEC68 001EBBC8 E2 41 01 E8 */ psq_l f18, 488(r1), 0, qr0 +/* 801EEC6C 001EBBCC CA 41 01 E0 */ lfd f18, 0x1e0(r1) +/* 801EEC70 001EBBD0 E2 21 01 D8 */ psq_l f17, 472(r1), 0, qr0 +/* 801EEC74 001EBBD4 CA 21 01 D0 */ lfd f17, 0x1d0(r1) +/* 801EEC78 001EBBD8 E2 01 01 C8 */ psq_l f16, 456(r1), 0, qr0 +/* 801EEC7C 001EBBDC CA 01 01 C0 */ lfd f16, 0x1c0(r1) +/* 801EEC80 001EBBE0 B9 C1 01 78 */ lmw r14, 0x178(r1) +/* 801EEC84 001EBBE4 80 01 02 C4 */ lwz r0, 0x2c4(r1) +/* 801EEC88 001EBBE8 7C 08 03 A6 */ mtlr r0 +/* 801EEC8C 001EBBEC 38 21 02 C0 */ addi r1, r1, 0x2c0 +/* 801EEC90 001EBBF0 4E 80 00 20 */ blr + +.global __ct__Q217CWallCrawlerSwarm5CBoidFRC12CTransform4fUi +__ct__Q217CWallCrawlerSwarm5CBoidFRC12CTransform4fUi: +/* 801EEC94 001EBBF4 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801EEC98 001EBBF8 7C 08 02 A6 */ mflr r0 +/* 801EEC9C 001EBBFC 90 01 00 44 */ stw r0, 0x44(r1) +/* 801EECA0 001EBC00 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801EECA4 001EBC04 7C BF 2B 78 */ mr r31, r5 +/* 801EECA8 001EBC08 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801EECAC 001EBC0C 7C 7E 1B 78 */ mr r30, r3 +/* 801EECB0 001EBC10 48 12 3E C5 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801EECB4 001EBC14 C0 02 AD A0 */ lfs f0, lbl_805ACAC0@sda21(r2) +/* 801EECB8 001EBC18 38 7E 00 40 */ addi r3, r30, 0x40 +/* 801EECBC 001EBC1C C0 22 AD AC */ lfs f1, lbl_805ACACC@sda21(r2) +/* 801EECC0 001EBC20 D0 1E 00 30 */ stfs f0, 0x30(r30) +/* 801EECC4 001EBC24 FC 40 08 90 */ fmr f2, f1 +/* 801EECC8 001EBC28 C0 82 AD B4 */ lfs f4, lbl_805ACAD4@sda21(r2) +/* 801EECCC 001EBC2C D0 1E 00 34 */ stfs f0, 0x34(r30) +/* 801EECD0 001EBC30 FC 60 08 90 */ fmr f3, f1 +/* 801EECD4 001EBC34 D0 1E 00 38 */ stfs f0, 0x38(r30) +/* 801EECD8 001EBC38 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801EECDC 001EBC3C B0 1E 00 3C */ sth r0, 0x3c(r30) +/* 801EECE0 001EBC40 48 17 47 0D */ bl __ct__6CColorFffff +/* 801EECE4 001EBC44 38 00 00 00 */ li r0, 0 +/* 801EECE8 001EBC48 C0 22 AD A0 */ lfs f1, lbl_805ACAC0@sda21(r2) +/* 801EECEC 001EBC4C 90 1E 00 44 */ stw r0, 0x44(r30) +/* 801EECF0 001EBC50 38 7E 00 50 */ addi r3, r30, 0x50 +/* 801EECF4 001EBC54 C0 02 AD B4 */ lfs f0, lbl_805ACAD4@sda21(r2) +/* 801EECF8 001EBC58 38 81 00 20 */ addi r4, r1, 0x20 +/* 801EECFC 001EBC5C D0 3E 00 48 */ stfs f1, 0x48(r30) +/* 801EED00 001EBC60 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801EED04 001EBC64 38 C1 00 08 */ addi r6, r1, 8 +/* 801EED08 001EBC68 38 E0 FF FF */ li r7, -1 +/* 801EED0C 001EBC6C D0 3E 00 4C */ stfs f1, 0x4c(r30) +/* 801EED10 001EBC70 D0 21 00 08 */ stfs f1, 8(r1) +/* 801EED14 001EBC74 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 801EED18 001EBC78 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801EED1C 001EBC7C D0 21 00 14 */ stfs f1, 0x14(r1) +/* 801EED20 001EBC80 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801EED24 001EBC84 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 801EED28 001EBC88 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801EED2C 001EBC8C D0 21 00 24 */ stfs f1, 0x24(r1) +/* 801EED30 001EBC90 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 801EED34 001EBC94 48 0B 39 F5 */ bl __ct__17CCollisionSurfaceFRC9CVector3fRC9CVector3fRC9CVector3fUi +/* 801EED38 001EBC98 80 1E 00 7C */ lwz r0, 0x7c(r30) +/* 801EED3C 001EBC9C 38 80 00 00 */ li r4, 0 +/* 801EED40 001EBCA0 50 80 C0 0E */ rlwimi r0, r4, 0x18, 0, 7 +/* 801EED44 001EBCA4 7F C3 F3 78 */ mr r3, r30 +/* 801EED48 001EBCA8 90 1E 00 7C */ stw r0, 0x7c(r30) +/* 801EED4C 001EBCAC 80 1E 00 7C */ lwz r0, 0x7c(r30) +/* 801EED50 001EBCB0 53 E0 72 22 */ rlwimi r0, r31, 0xe, 8, 0x11 +/* 801EED54 001EBCB4 90 1E 00 7C */ stw r0, 0x7c(r30) +/* 801EED58 001EBCB8 88 1E 00 80 */ lbz r0, 0x80(r30) +/* 801EED5C 001EBCBC 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801EED60 001EBCC0 98 1E 00 80 */ stb r0, 0x80(r30) +/* 801EED64 001EBCC4 88 1E 00 80 */ lbz r0, 0x80(r30) +/* 801EED68 001EBCC8 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 801EED6C 001EBCCC 98 1E 00 80 */ stb r0, 0x80(r30) +/* 801EED70 001EBCD0 88 1E 00 80 */ lbz r0, 0x80(r30) +/* 801EED74 001EBCD4 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 801EED78 001EBCD8 98 1E 00 80 */ stb r0, 0x80(r30) +/* 801EED7C 001EBCDC 88 1E 00 80 */ lbz r0, 0x80(r30) +/* 801EED80 001EBCE0 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 801EED84 001EBCE4 98 1E 00 80 */ stb r0, 0x80(r30) +/* 801EED88 001EBCE8 88 1E 00 80 */ lbz r0, 0x80(r30) +/* 801EED8C 001EBCEC 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c +/* 801EED90 001EBCF0 98 1E 00 80 */ stb r0, 0x80(r30) +/* 801EED94 001EBCF4 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801EED98 001EBCF8 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801EED9C 001EBCFC 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801EEDA0 001EBD00 7C 08 03 A6 */ mtlr r0 +/* 801EEDA4 001EBD04 38 21 00 40 */ addi r1, r1, 0x40 +/* 801EEDA8 001EBD08 4E 80 00 20 */ blr + +.global LookAt__F9CVector3f9CVector3ff +LookAt__F9CVector3f9CVector3ff: +/* 801EEDAC 001EBD0C 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 801EEDB0 001EBD10 7C 08 02 A6 */ mflr r0 +/* 801EEDB4 001EBD14 90 01 00 74 */ stw r0, 0x74(r1) +/* 801EEDB8 001EBD18 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 801EEDBC 001EBD1C 7C DF 33 78 */ mr r31, r6 +/* 801EEDC0 001EBD20 93 C1 00 68 */ stw r30, 0x68(r1) +/* 801EEDC4 001EBD24 7C 7E 1B 78 */ mr r30, r3 +/* 801EEDC8 001EBD28 C0 64 00 04 */ lfs f3, 4(r4) +/* 801EEDCC 001EBD2C C0 05 00 04 */ lfs f0, 4(r5) +/* 801EEDD0 001EBD30 C0 84 00 00 */ lfs f4, 0(r4) +/* 801EEDD4 001EBD34 EC 03 00 32 */ fmuls f0, f3, f0 +/* 801EEDD8 001EBD38 C0 25 00 00 */ lfs f1, 0(r5) +/* 801EEDDC 001EBD3C C0 C4 00 08 */ lfs f6, 8(r4) +/* 801EEDE0 001EBD40 C0 A5 00 08 */ lfs f5, 8(r5) +/* 801EEDE4 001EBD44 EC 44 00 7A */ fmadds f2, f4, f1, f0 +/* 801EEDE8 001EBD48 C0 22 AD B4 */ lfs f1, lbl_805ACAD4@sda21(r2) +/* 801EEDEC 001EBD4C C0 02 AD D8 */ lfs f0, lbl_805ACAF8@sda21(r2) +/* 801EEDF0 001EBD50 EC 46 11 7A */ fmadds f2, f6, f5, f2 +/* 801EEDF4 001EBD54 EC 22 08 28 */ fsubs f1, f2, f1 +/* 801EEDF8 001EBD58 FC 20 0A 10 */ fabs f1, f1 +/* 801EEDFC 001EBD5C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801EEE00 001EBD60 40 80 00 14 */ bge lbl_801EEE14 +/* 801EEE04 001EBD64 3C 80 80 5A */ lis r4, skIdentity4f@ha +/* 801EEE08 001EBD68 38 84 66 70 */ addi r4, r4, skIdentity4f@l +/* 801EEE0C 001EBD6C 48 12 3D 69 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801EEE10 001EBD70 48 00 01 74 */ b lbl_801EEF84 +lbl_801EEE14: +/* 801EEE14 001EBD74 C0 02 AE 3C */ lfs f0, lbl_805ACB5C@sda21(r2) +/* 801EEE18 001EBD78 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801EEE1C 001EBD7C 40 81 00 1C */ ble lbl_801EEE38 +/* 801EEE20 001EBD80 38 61 00 58 */ addi r3, r1, 0x58 +/* 801EEE24 001EBD84 48 12 21 FD */ bl ClampedRotateTo__11CQuaternionFRC10UnitVectorRC10UnitVectorRC9CRelAngle +/* 801EEE28 001EBD88 7F C3 F3 78 */ mr r3, r30 +/* 801EEE2C 001EBD8C 38 81 00 58 */ addi r4, r1, 0x58 +/* 801EEE30 001EBD90 48 12 31 89 */ bl BuildTransform4f__11CQuaternionCFv +/* 801EEE34 001EBD94 48 00 01 50 */ b lbl_801EEF84 +lbl_801EEE38: +/* 801EEE38 001EBD98 3C 60 80 5A */ lis r3, lbl_805A6718@ha +/* 801EEE3C 001EBD9C C5 03 67 18 */ lfsu f8, lbl_805A6718@l(r3) +/* 801EEE40 001EBDA0 38 00 00 00 */ li r0, 0 +/* 801EEE44 001EBDA4 FC 04 40 00 */ fcmpu cr0, f4, f8 +/* 801EEE48 001EBDA8 40 82 00 20 */ bne lbl_801EEE68 +/* 801EEE4C 001EBDAC C0 03 00 04 */ lfs f0, 4(r3) +/* 801EEE50 001EBDB0 FC 03 00 00 */ fcmpu cr0, f3, f0 +/* 801EEE54 001EBDB4 40 82 00 14 */ bne lbl_801EEE68 +/* 801EEE58 001EBDB8 C0 03 00 08 */ lfs f0, 8(r3) +/* 801EEE5C 001EBDBC FC 06 00 00 */ fcmpu cr0, f6, f0 +/* 801EEE60 001EBDC0 40 82 00 08 */ bne lbl_801EEE68 +/* 801EEE64 001EBDC4 38 00 00 01 */ li r0, 1 +lbl_801EEE68: +/* 801EEE68 001EBDC8 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 801EEE6C 001EBDCC 40 82 00 B0 */ bne lbl_801EEF1C +/* 801EEE70 001EBDD0 C0 05 00 00 */ lfs f0, 0(r5) +/* 801EEE74 001EBDD4 3C 60 80 5A */ lis r3, lbl_805A6718@ha +/* 801EEE78 001EBDD8 38 63 67 18 */ addi r3, r3, lbl_805A6718@l +/* 801EEE7C 001EBDDC 38 00 00 00 */ li r0, 0 +/* 801EEE80 001EBDE0 FC 00 40 00 */ fcmpu cr0, f0, f8 +/* 801EEE84 001EBDE4 40 82 00 28 */ bne lbl_801EEEAC +/* 801EEE88 001EBDE8 C0 25 00 04 */ lfs f1, 4(r5) +/* 801EEE8C 001EBDEC C0 03 00 04 */ lfs f0, 4(r3) +/* 801EEE90 001EBDF0 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 801EEE94 001EBDF4 40 82 00 18 */ bne lbl_801EEEAC +/* 801EEE98 001EBDF8 C0 25 00 08 */ lfs f1, 8(r5) +/* 801EEE9C 001EBDFC C0 03 00 08 */ lfs f0, 8(r3) +/* 801EEEA0 001EBE00 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 801EEEA4 001EBE04 40 82 00 08 */ bne lbl_801EEEAC +/* 801EEEA8 001EBE08 38 00 00 01 */ li r0, 1 +lbl_801EEEAC: +/* 801EEEAC 001EBE0C 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 801EEEB0 001EBE10 40 82 00 6C */ bne lbl_801EEF1C +/* 801EEEB4 001EBE14 3C 60 80 5A */ lis r3, lbl_805A6718@ha +/* 801EEEB8 001EBE18 C0 64 00 04 */ lfs f3, 4(r4) +/* 801EEEBC 001EBE1C 38 63 67 18 */ addi r3, r3, lbl_805A6718@l +/* 801EEEC0 001EBE20 C0 A4 00 08 */ lfs f5, 8(r4) +/* 801EEEC4 001EBE24 C0 C3 00 04 */ lfs f6, 4(r3) +/* 801EEEC8 001EBE28 EC 08 00 F2 */ fmuls f0, f8, f3 +/* 801EEECC 001EBE2C C0 E3 00 08 */ lfs f7, 8(r3) +/* 801EEED0 001EBE30 38 61 00 3C */ addi r3, r1, 0x3c +/* 801EEED4 001EBE34 EC 46 01 72 */ fmuls f2, f6, f5 +/* 801EEED8 001EBE38 38 81 00 30 */ addi r4, r1, 0x30 +/* 801EEEDC 001EBE3C EC 27 01 32 */ fmuls f1, f7, f4 +/* 801EEEE0 001EBE40 EC 04 01 B8 */ fmsubs f0, f4, f6, f0 +/* 801EEEE4 001EBE44 EC 43 11 F8 */ fmsubs f2, f3, f7, f2 +/* 801EEEE8 001EBE48 EC 25 0A 38 */ fmsubs f1, f5, f8, f1 +/* 801EEEEC 001EBE4C D0 01 00 38 */ stfs f0, 0x38(r1) +/* 801EEEF0 001EBE50 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 801EEEF4 001EBE54 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 801EEEF8 001EBE58 48 12 4E D9 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 801EEEFC 001EBE5C 7C 64 1B 78 */ mr r4, r3 +/* 801EEF00 001EBE60 7F E5 FB 78 */ mr r5, r31 +/* 801EEF04 001EBE64 38 61 00 48 */ addi r3, r1, 0x48 +/* 801EEF08 001EBE68 48 12 23 ED */ bl AxisAngle__11CQuaternionFRC13CUnitVector3fRC9CRelAngle +/* 801EEF0C 001EBE6C 7F C3 F3 78 */ mr r3, r30 +/* 801EEF10 001EBE70 38 81 00 48 */ addi r4, r1, 0x48 +/* 801EEF14 001EBE74 48 12 30 A5 */ bl BuildTransform4f__11CQuaternionCFv +/* 801EEF18 001EBE78 48 00 00 6C */ b lbl_801EEF84 +lbl_801EEF1C: +/* 801EEF1C 001EBE7C 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 801EEF20 001EBE80 C0 64 00 04 */ lfs f3, 4(r4) +/* 801EEF24 001EBE84 38 A3 66 F4 */ addi r5, r3, lbl_805A66F4@l +/* 801EEF28 001EBE88 C0 A4 00 08 */ lfs f5, 8(r4) +/* 801EEF2C 001EBE8C C0 C5 00 04 */ lfs f6, 4(r5) +/* 801EEF30 001EBE90 38 61 00 14 */ addi r3, r1, 0x14 +/* 801EEF34 001EBE94 C0 E5 00 08 */ lfs f7, 8(r5) +/* 801EEF38 001EBE98 38 81 00 08 */ addi r4, r1, 8 +/* 801EEF3C 001EBE9C C1 05 00 00 */ lfs f8, 0(r5) +/* 801EEF40 001EBEA0 EC 46 01 72 */ fmuls f2, f6, f5 +/* 801EEF44 001EBEA4 EC 27 01 32 */ fmuls f1, f7, f4 +/* 801EEF48 001EBEA8 EC 08 00 F2 */ fmuls f0, f8, f3 +/* 801EEF4C 001EBEAC EC 43 11 F8 */ fmsubs f2, f3, f7, f2 +/* 801EEF50 001EBEB0 EC 25 0A 38 */ fmsubs f1, f5, f8, f1 +/* 801EEF54 001EBEB4 EC 04 01 B8 */ fmsubs f0, f4, f6, f0 +/* 801EEF58 001EBEB8 D0 41 00 08 */ stfs f2, 8(r1) +/* 801EEF5C 001EBEBC D0 21 00 0C */ stfs f1, 0xc(r1) +/* 801EEF60 001EBEC0 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801EEF64 001EBEC4 48 12 4E 6D */ bl __ct__11CUnitVectorFRC9CVector3f +/* 801EEF68 001EBEC8 7C 64 1B 78 */ mr r4, r3 +/* 801EEF6C 001EBECC 7F E5 FB 78 */ mr r5, r31 +/* 801EEF70 001EBED0 38 61 00 20 */ addi r3, r1, 0x20 +/* 801EEF74 001EBED4 48 12 23 81 */ bl AxisAngle__11CQuaternionFRC13CUnitVector3fRC9CRelAngle +/* 801EEF78 001EBED8 7F C3 F3 78 */ mr r3, r30 +/* 801EEF7C 001EBEDC 38 81 00 20 */ addi r4, r1, 0x20 +/* 801EEF80 001EBEE0 48 12 30 39 */ bl BuildTransform4f__11CQuaternionCFv +lbl_801EEF84: +/* 801EEF84 001EBEE4 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801EEF88 001EBEE8 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 801EEF8C 001EBEEC 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 801EEF90 001EBEF0 7C 08 03 A6 */ mtlr r0 +/* 801EEF94 001EBEF4 38 21 00 70 */ addi r1, r1, 0x70 +/* 801EEF98 001EBEF8 4E 80 00 20 */ blr + +.global sub_801eef9c +sub_801eef9c: +/* 801EEF9C 001EBEFC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801EEFA0 001EBF00 7C 08 02 A6 */ mflr r0 +/* 801EEFA4 001EBF04 90 01 00 34 */ stw r0, 0x34(r1) +/* 801EEFA8 001EBF08 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801EEFAC 001EBF0C 7C 9F 23 78 */ mr r31, r4 +/* 801EEFB0 001EBF10 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801EEFB4 001EBF14 7C 7E 1B 78 */ mr r30, r3 +/* 801EEFB8 001EBF18 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801EEFBC 001EBF1C 80 03 00 08 */ lwz r0, 8(r3) +/* 801EEFC0 001EBF20 7C 1F 00 00 */ cmpw r31, r0 +/* 801EEFC4 001EBF24 40 81 00 9C */ ble lbl_801EF060 +/* 801EEFC8 001EBF28 1C 7F 00 84 */ mulli r3, r31, 0x84 +/* 801EEFCC 001EBF2C 2C 03 00 00 */ cmpwi r3, 0 +/* 801EEFD0 001EBF30 40 82 00 0C */ bne lbl_801EEFDC +/* 801EEFD4 001EBF34 3B A0 00 00 */ li r29, 0 +/* 801EEFD8 001EBF38 48 00 00 1C */ b lbl_801EEFF4 +lbl_801EEFDC: +/* 801EEFDC 001EBF3C 3C 80 80 3D */ lis r4, lbl_803D1F30@ha +/* 801EEFE0 001EBF40 38 A0 00 00 */ li r5, 0 +/* 801EEFE4 001EBF44 38 84 1F 30 */ addi r4, r4, lbl_803D1F30@l +/* 801EEFE8 001EBF48 38 84 00 0B */ addi r4, r4, 0xb +/* 801EEFEC 001EBF4C 48 12 68 2D */ bl __nwa__FUlPCcPCc +/* 801EEFF0 001EBF50 7C 7D 1B 78 */ mr r29, r3 +lbl_801EEFF4: +/* 801EEFF4 001EBF54 80 1E 00 04 */ lwz r0, 4(r30) +/* 801EEFF8 001EBF58 7F A5 EB 78 */ mr r5, r29 +/* 801EEFFC 001EBF5C 80 DE 00 0C */ lwz r6, 0xc(r30) +/* 801EF000 001EBF60 38 61 00 14 */ addi r3, r1, 0x14 +/* 801EF004 001EBF64 1C 00 00 84 */ mulli r0, r0, 0x84 +/* 801EF008 001EBF68 38 81 00 0C */ addi r4, r1, 0xc +/* 801EF00C 001EBF6C 7C C6 02 14 */ add r6, r6, r0 +/* 801EF010 001EBF70 90 C1 00 0C */ stw r6, 0xc(r1) +/* 801EF014 001EBF74 80 1E 00 0C */ lwz r0, 0xc(r30) +/* 801EF018 001EBF78 90 C1 00 08 */ stw r6, 8(r1) +/* 801EF01C 001EBF7C 90 01 00 10 */ stw r0, 0x10(r1) +/* 801EF020 001EBF80 90 01 00 14 */ stw r0, 0x14(r1) +/* 801EF024 001EBF84 48 00 00 59 */ bl sub_801ef07c +/* 801EF028 001EBF88 80 1E 00 04 */ lwz r0, 4(r30) +/* 801EF02C 001EBF8C 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 801EF030 001EBF90 1C 00 00 84 */ mulli r0, r0, 0x84 +/* 801EF034 001EBF94 7C 64 1B 78 */ mr r4, r3 +/* 801EF038 001EBF98 7C 03 02 14 */ add r0, r3, r0 +/* 801EF03C 001EBF9C 48 00 00 08 */ b lbl_801EF044 +lbl_801EF040: +/* 801EF040 001EBFA0 38 84 00 84 */ addi r4, r4, 0x84 +lbl_801EF044: +/* 801EF044 001EBFA4 7C 04 00 40 */ cmplw r4, r0 +/* 801EF048 001EBFA8 40 82 FF F8 */ bne lbl_801EF040 +/* 801EF04C 001EBFAC 28 03 00 00 */ cmplwi r3, 0 +/* 801EF050 001EBFB0 41 82 00 08 */ beq lbl_801EF058 +/* 801EF054 001EBFB4 48 12 68 DD */ bl Free__7CMemoryFPCv +lbl_801EF058: +/* 801EF058 001EBFB8 93 BE 00 0C */ stw r29, 0xc(r30) +/* 801EF05C 001EBFBC 93 FE 00 08 */ stw r31, 8(r30) +lbl_801EF060: +/* 801EF060 001EBFC0 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801EF064 001EBFC4 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801EF068 001EBFC8 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801EF06C 001EBFCC 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801EF070 001EBFD0 7C 08 03 A6 */ mtlr r0 +/* 801EF074 001EBFD4 38 21 00 30 */ addi r1, r1, 0x30 +/* 801EF078 001EBFD8 4E 80 00 20 */ blr + +.global sub_801ef07c +sub_801ef07c: +/* 801EF07C 001EBFDC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801EF080 001EBFE0 7C 08 02 A6 */ mflr r0 +/* 801EF084 001EBFE4 90 01 00 24 */ stw r0, 0x24(r1) +/* 801EF088 001EBFE8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801EF08C 001EBFEC 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801EF090 001EBFF0 7C BE 2B 78 */ mr r30, r5 +/* 801EF094 001EBFF4 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801EF098 001EBFF8 7C 9D 23 78 */ mr r29, r4 +/* 801EF09C 001EBFFC 83 E3 00 00 */ lwz r31, 0(r3) +/* 801EF0A0 001EC000 48 00 00 18 */ b lbl_801EF0B8 +lbl_801EF0A4: +/* 801EF0A4 001EC004 7F C3 F3 78 */ mr r3, r30 +/* 801EF0A8 001EC008 7F E4 FB 78 */ mr r4, r31 +/* 801EF0AC 001EC00C 4B FF E6 9D */ bl sub_801ed748 +/* 801EF0B0 001EC010 3B DE 00 84 */ addi r30, r30, 0x84 +/* 801EF0B4 001EC014 3B FF 00 84 */ addi r31, r31, 0x84 +lbl_801EF0B8: +/* 801EF0B8 001EC018 80 1D 00 00 */ lwz r0, 0(r29) +/* 801EF0BC 001EC01C 7C 1F 00 40 */ cmplw r31, r0 +/* 801EF0C0 001EC020 40 82 FF E4 */ bne lbl_801EF0A4 +/* 801EF0C4 001EC024 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801EF0C8 001EC028 7F C3 F3 78 */ mr r3, r30 +/* 801EF0CC 001EC02C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801EF0D0 001EC030 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801EF0D4 001EC034 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801EF0D8 001EC038 7C 08 03 A6 */ mtlr r0 +/* 801EF0DC 001EC03C 38 21 00 20 */ addi r1, r1, 0x20 +/* 801EF0E0 001EC040 4E 80 00 20 */ blr + +.global sub_801ef0e4 +sub_801ef0e4: +/* 801EF0E4 001EC044 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801EF0E8 001EC048 7C 08 02 A6 */ mflr r0 +/* 801EF0EC 001EC04C 90 01 00 34 */ stw r0, 0x34(r1) +/* 801EF0F0 001EC050 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801EF0F4 001EC054 7C 9F 23 78 */ mr r31, r4 +/* 801EF0F8 001EC058 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801EF0FC 001EC05C 7C 7E 1B 78 */ mr r30, r3 +/* 801EF100 001EC060 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801EF104 001EC064 80 03 00 08 */ lwz r0, 8(r3) +/* 801EF108 001EC068 7C 1F 00 00 */ cmpw r31, r0 +/* 801EF10C 001EC06C 40 81 00 C4 */ ble lbl_801EF1D0 +/* 801EF110 001EC070 57 E3 20 37 */ rlwinm. r3, r31, 4, 0, 0x1b +/* 801EF114 001EC074 40 82 00 0C */ bne lbl_801EF120 +/* 801EF118 001EC078 3B A0 00 00 */ li r29, 0 +/* 801EF11C 001EC07C 48 00 00 1C */ b lbl_801EF138 +lbl_801EF120: +/* 801EF120 001EC080 3C 80 80 3D */ lis r4, lbl_803D1F30@ha +/* 801EF124 001EC084 38 A0 00 00 */ li r5, 0 +/* 801EF128 001EC088 38 84 1F 30 */ addi r4, r4, lbl_803D1F30@l +/* 801EF12C 001EC08C 38 84 00 0B */ addi r4, r4, 0xb +/* 801EF130 001EC090 48 12 66 E9 */ bl __nwa__FUlPCcPCc +/* 801EF134 001EC094 7C 7D 1B 78 */ mr r29, r3 +lbl_801EF138: +/* 801EF138 001EC098 80 1E 00 04 */ lwz r0, 4(r30) +/* 801EF13C 001EC09C 7F A3 EB 78 */ mr r3, r29 +/* 801EF140 001EC0A0 80 9E 00 0C */ lwz r4, 0xc(r30) +/* 801EF144 001EC0A4 54 00 20 36 */ slwi r0, r0, 4 +/* 801EF148 001EC0A8 7C 04 02 14 */ add r0, r4, r0 +/* 801EF14C 001EC0AC 90 81 00 10 */ stw r4, 0x10(r1) +/* 801EF150 001EC0B0 90 01 00 08 */ stw r0, 8(r1) +/* 801EF154 001EC0B4 90 01 00 0C */ stw r0, 0xc(r1) +/* 801EF158 001EC0B8 90 81 00 14 */ stw r4, 0x14(r1) +/* 801EF15C 001EC0BC 48 00 00 34 */ b lbl_801EF190 +lbl_801EF160: +/* 801EF160 001EC0C0 28 03 00 00 */ cmplwi r3, 0 +/* 801EF164 001EC0C4 41 82 00 24 */ beq lbl_801EF188 +/* 801EF168 001EC0C8 C0 04 00 00 */ lfs f0, 0(r4) +/* 801EF16C 001EC0CC D0 03 00 00 */ stfs f0, 0(r3) +/* 801EF170 001EC0D0 C0 04 00 04 */ lfs f0, 4(r4) +/* 801EF174 001EC0D4 D0 03 00 04 */ stfs f0, 4(r3) +/* 801EF178 001EC0D8 C0 04 00 08 */ lfs f0, 8(r4) +/* 801EF17C 001EC0DC D0 03 00 08 */ stfs f0, 8(r3) +/* 801EF180 001EC0E0 C0 04 00 0C */ lfs f0, 0xc(r4) +/* 801EF184 001EC0E4 D0 03 00 0C */ stfs f0, 0xc(r3) +lbl_801EF188: +/* 801EF188 001EC0E8 38 63 00 10 */ addi r3, r3, 0x10 +/* 801EF18C 001EC0EC 38 84 00 10 */ addi r4, r4, 0x10 +lbl_801EF190: +/* 801EF190 001EC0F0 7C 04 00 40 */ cmplw r4, r0 +/* 801EF194 001EC0F4 40 82 FF CC */ bne lbl_801EF160 +/* 801EF198 001EC0F8 80 1E 00 04 */ lwz r0, 4(r30) +/* 801EF19C 001EC0FC 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 801EF1A0 001EC100 54 00 20 36 */ slwi r0, r0, 4 +/* 801EF1A4 001EC104 7C 64 1B 78 */ mr r4, r3 +/* 801EF1A8 001EC108 7C 03 02 14 */ add r0, r3, r0 +/* 801EF1AC 001EC10C 48 00 00 08 */ b lbl_801EF1B4 +lbl_801EF1B0: +/* 801EF1B0 001EC110 38 84 00 10 */ addi r4, r4, 0x10 +lbl_801EF1B4: +/* 801EF1B4 001EC114 7C 04 00 40 */ cmplw r4, r0 +/* 801EF1B8 001EC118 40 82 FF F8 */ bne lbl_801EF1B0 +/* 801EF1BC 001EC11C 28 03 00 00 */ cmplwi r3, 0 +/* 801EF1C0 001EC120 41 82 00 08 */ beq lbl_801EF1C8 +/* 801EF1C4 001EC124 48 12 67 6D */ bl Free__7CMemoryFPCv +lbl_801EF1C8: +/* 801EF1C8 001EC128 93 BE 00 0C */ stw r29, 0xc(r30) +/* 801EF1CC 001EC12C 93 FE 00 08 */ stw r31, 8(r30) +lbl_801EF1D0: +/* 801EF1D0 001EC130 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801EF1D4 001EC134 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801EF1D8 001EC138 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801EF1DC 001EC13C 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801EF1E0 001EC140 7C 08 03 A6 */ mtlr r0 +/* 801EF1E4 001EC144 38 21 00 30 */ addi r1, r1, 0x30 +/* 801EF1E8 001EC148 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/GameObjectLists.s b/asm/Kyoto_CWD/GameObjectLists.s new file mode 100644 index 00000000..6086752e --- /dev/null +++ b/asm/Kyoto_CWD/GameObjectLists.s @@ -0,0 +1,322 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global IsQualified__14CGameLightListFRC7CEntity +IsQualified__14CGameLightListFRC7CEntity: +/* 801B847C 001B53DC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B8480 001B53E0 7C 08 02 A6 */ mflr r0 +/* 801B8484 001B53E4 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B8488 001B53E8 38 61 00 08 */ addi r3, r1, 8 +/* 801B848C 001B53EC 4B EF 56 65 */ bl "__ct__24TCastToPtr<10CGameLight>FR7CEntity" +/* 801B8490 001B53F0 80 63 00 04 */ lwz r3, 4(r3) +/* 801B8494 001B53F4 7C 03 00 D0 */ neg r0, r3 +/* 801B8498 001B53F8 7C 00 1B 78 */ or r0, r0, r3 +/* 801B849C 001B53FC 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801B84A0 001B5400 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B84A4 001B5404 7C 08 03 A6 */ mtlr r0 +/* 801B84A8 001B5408 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B84AC 001B540C 4E 80 00 20 */ blr + +.global __ct__14CGameLightListFv +__ct__14CGameLightListFv: +/* 801B84B0 001B5410 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B84B4 001B5414 7C 08 02 A6 */ mflr r0 +/* 801B84B8 001B5418 38 80 00 04 */ li r4, 4 +/* 801B84BC 001B541C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B84C0 001B5420 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801B84C4 001B5424 7C 7F 1B 78 */ mr r31, r3 +/* 801B84C8 001B5428 4B E5 7B 71 */ bl __ct__11CObjectListF15EGameObjectList +/* 801B84CC 001B542C 3C 80 80 3E */ lis r4, lbl_803E5258@ha +/* 801B84D0 001B5430 7F E3 FB 78 */ mr r3, r31 +/* 801B84D4 001B5434 38 04 52 58 */ addi r0, r4, lbl_803E5258@l +/* 801B84D8 001B5438 90 1F 00 00 */ stw r0, 0(r31) +/* 801B84DC 001B543C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801B84E0 001B5440 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B84E4 001B5444 7C 08 03 A6 */ mtlr r0 +/* 801B84E8 001B5448 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B84EC 001B544C 4E 80 00 20 */ blr + +.global IsQualified__20CPlatformAndDoorListFRC7CEntity +IsQualified__20CPlatformAndDoorListFRC7CEntity: +/* 801B84F0 001B5450 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B84F4 001B5454 7C 08 02 A6 */ mflr r0 +/* 801B84F8 001B5458 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B84FC 001B545C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801B8500 001B5460 3B E0 00 00 */ li r31, 0 +/* 801B8504 001B5464 93 C1 00 08 */ stw r30, 8(r1) +/* 801B8508 001B5468 7C 9E 23 78 */ mr r30, r4 +/* 801B850C 001B546C 7F C3 F3 78 */ mr r3, r30 +/* 801B8510 001B5470 48 00 00 75 */ bl IsPlatform__20CPlatformAndDoorListFPC7CEntity +/* 801B8514 001B5474 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B8518 001B5478 40 82 00 14 */ bne lbl_801B852C +/* 801B851C 001B547C 7F C3 F3 78 */ mr r3, r30 +/* 801B8520 001B5480 48 00 00 2D */ bl IsDoor__20CPlatformAndDoorListFPC7CEntity +/* 801B8524 001B5484 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B8528 001B5488 41 82 00 08 */ beq lbl_801B8530 +lbl_801B852C: +/* 801B852C 001B548C 3B E0 00 01 */ li r31, 1 +lbl_801B8530: +/* 801B8530 001B5490 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B8534 001B5494 7F E3 FB 78 */ mr r3, r31 +/* 801B8538 001B5498 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801B853C 001B549C 83 C1 00 08 */ lwz r30, 8(r1) +/* 801B8540 001B54A0 7C 08 03 A6 */ mtlr r0 +/* 801B8544 001B54A4 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B8548 001B54A8 4E 80 00 20 */ blr + +.global IsDoor__20CPlatformAndDoorListFPC7CEntity +IsDoor__20CPlatformAndDoorListFPC7CEntity: +/* 801B854C 001B54AC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B8550 001B54B0 7C 08 02 A6 */ mflr r0 +/* 801B8554 001B54B4 7C 64 1B 78 */ mr r4, r3 +/* 801B8558 001B54B8 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B855C 001B54BC 38 61 00 08 */ addi r3, r1, 8 +/* 801B8560 001B54C0 4B EF 1B 91 */ bl "__ct__25TCastToPtr<11CScriptDoor>FP7CEntity" +/* 801B8564 001B54C4 80 63 00 04 */ lwz r3, 4(r3) +/* 801B8568 001B54C8 7C 03 00 D0 */ neg r0, r3 +/* 801B856C 001B54CC 7C 00 1B 78 */ or r0, r0, r3 +/* 801B8570 001B54D0 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801B8574 001B54D4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B8578 001B54D8 7C 08 03 A6 */ mtlr r0 +/* 801B857C 001B54DC 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B8580 001B54E0 4E 80 00 20 */ blr + +.global IsPlatform__20CPlatformAndDoorListFPC7CEntity +IsPlatform__20CPlatformAndDoorListFPC7CEntity: +/* 801B8584 001B54E4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B8588 001B54E8 7C 08 02 A6 */ mflr r0 +/* 801B858C 001B54EC 7C 64 1B 78 */ mr r4, r3 +/* 801B8590 001B54F0 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B8594 001B54F4 38 61 00 08 */ addi r3, r1, 8 +/* 801B8598 001B54F8 4B EF 08 7D */ bl "__ct__29TCastToPtr<15CScriptPlatform>FP7CEntity" +/* 801B859C 001B54FC 80 63 00 04 */ lwz r3, 4(r3) +/* 801B85A0 001B5500 7C 03 00 D0 */ neg r0, r3 +/* 801B85A4 001B5504 7C 00 1B 78 */ or r0, r0, r3 +/* 801B85A8 001B5508 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801B85AC 001B550C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B85B0 001B5510 7C 08 03 A6 */ mtlr r0 +/* 801B85B4 001B5514 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B85B8 001B5518 4E 80 00 20 */ blr + +.global __ct__20CPlatformAndDoorListFv +__ct__20CPlatformAndDoorListFv: +/* 801B85BC 001B551C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B85C0 001B5520 7C 08 02 A6 */ mflr r0 +/* 801B85C4 001B5524 38 80 00 07 */ li r4, 7 +/* 801B85C8 001B5528 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B85CC 001B552C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801B85D0 001B5530 7C 7F 1B 78 */ mr r31, r3 +/* 801B85D4 001B5534 4B E5 7A 65 */ bl __ct__11CObjectListF15EGameObjectList +/* 801B85D8 001B5538 3C 80 80 3E */ lis r4, lbl_803E5264@ha +/* 801B85DC 001B553C 7F E3 FB 78 */ mr r3, r31 +/* 801B85E0 001B5540 38 04 52 64 */ addi r0, r4, lbl_803E5264@l +/* 801B85E4 001B5544 90 1F 00 00 */ stw r0, 0(r31) +/* 801B85E8 001B5548 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801B85EC 001B554C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B85F0 001B5550 7C 08 03 A6 */ mtlr r0 +/* 801B85F4 001B5554 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B85F8 001B5558 4E 80 00 20 */ blr + +.global IsQualified__15CAiWaypointListFRC7CEntity +IsQualified__15CAiWaypointListFRC7CEntity: +/* 801B85FC 001B555C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801B8600 001B5560 7C 08 02 A6 */ mflr r0 +/* 801B8604 001B5564 90 01 00 24 */ stw r0, 0x24(r1) +/* 801B8608 001B5568 38 61 00 10 */ addi r3, r1, 0x10 +/* 801B860C 001B556C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801B8610 001B5570 3B E0 00 00 */ li r31, 0 +/* 801B8614 001B5574 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801B8618 001B5578 7C 9E 23 78 */ mr r30, r4 +/* 801B861C 001B557C 4B EF 24 7D */ bl "__ct__31TCastToPtr<17CScriptCoverPoint>FR7CEntity" +/* 801B8620 001B5580 80 03 00 04 */ lwz r0, 4(r3) +/* 801B8624 001B5584 28 00 00 00 */ cmplwi r0, 0 +/* 801B8628 001B5588 41 82 00 0C */ beq lbl_801B8634 +/* 801B862C 001B558C 3B E0 00 01 */ li r31, 1 +/* 801B8630 001B5590 48 00 00 20 */ b lbl_801B8650 +lbl_801B8634: +/* 801B8634 001B5594 7F C4 F3 78 */ mr r4, r30 +/* 801B8638 001B5598 38 61 00 08 */ addi r3, r1, 8 +/* 801B863C 001B559C 4B EF 31 11 */ bl "__ct__32TCastToPtr<18CScriptAiJumpPoint>FR7CEntity" +/* 801B8640 001B55A0 80 03 00 04 */ lwz r0, 4(r3) +/* 801B8644 001B55A4 28 00 00 00 */ cmplwi r0, 0 +/* 801B8648 001B55A8 41 82 00 08 */ beq lbl_801B8650 +/* 801B864C 001B55AC 3B E0 00 01 */ li r31, 1 +lbl_801B8650: +/* 801B8650 001B55B0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801B8654 001B55B4 57 E3 06 3E */ clrlwi r3, r31, 0x18 +/* 801B8658 001B55B8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801B865C 001B55BC 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801B8660 001B55C0 7C 08 03 A6 */ mtlr r0 +/* 801B8664 001B55C4 38 21 00 20 */ addi r1, r1, 0x20 +/* 801B8668 001B55C8 4E 80 00 20 */ blr + +.global __ct__15CAiWaypointListFv +__ct__15CAiWaypointListFv: +/* 801B866C 001B55CC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B8670 001B55D0 7C 08 02 A6 */ mflr r0 +/* 801B8674 001B55D4 38 80 00 06 */ li r4, 6 +/* 801B8678 001B55D8 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B867C 001B55DC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801B8680 001B55E0 7C 7F 1B 78 */ mr r31, r3 +/* 801B8684 001B55E4 4B E5 79 B5 */ bl __ct__11CObjectListF15EGameObjectList +/* 801B8688 001B55E8 3C 80 80 3E */ lis r4, lbl_803E5270@ha +/* 801B868C 001B55EC 7F E3 FB 78 */ mr r3, r31 +/* 801B8690 001B55F0 38 04 52 70 */ addi r0, r4, lbl_803E5270@l +/* 801B8694 001B55F4 90 1F 00 00 */ stw r0, 0(r31) +/* 801B8698 001B55F8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801B869C 001B55FC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B86A0 001B5600 7C 08 03 A6 */ mtlr r0 +/* 801B86A4 001B5604 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B86A8 001B5608 4E 80 00 20 */ blr + +.global IsQualified__16CListeningAiListFRC7CEntity +IsQualified__16CListeningAiListFRC7CEntity: +/* 801B86AC 001B560C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801B86B0 001B5610 7C 08 02 A6 */ mflr r0 +/* 801B86B4 001B5614 90 01 00 24 */ stw r0, 0x24(r1) +/* 801B86B8 001B5618 38 61 00 08 */ addi r3, r1, 8 +/* 801B86BC 001B561C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801B86C0 001B5620 3B E0 00 00 */ li r31, 0 +/* 801B86C4 001B5624 4B EF 44 05 */ bl "__ct__16TCastToPtr<10CPatterned>FR7CEntity" +/* 801B86C8 001B5628 80 63 00 04 */ lwz r3, 4(r3) +/* 801B86CC 001B562C 28 03 00 00 */ cmplwi r3, 0 +/* 801B86D0 001B5630 41 82 00 20 */ beq lbl_801B86F0 +/* 801B86D4 001B5634 81 83 00 00 */ lwz r12, 0(r3) +/* 801B86D8 001B5638 81 8C 00 98 */ lwz r12, 0x98(r12) +/* 801B86DC 001B563C 7D 89 03 A6 */ mtctr r12 +/* 801B86E0 001B5640 4E 80 04 21 */ bctrl +/* 801B86E4 001B5644 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B86E8 001B5648 41 82 00 08 */ beq lbl_801B86F0 +/* 801B86EC 001B564C 3B E0 00 01 */ li r31, 1 +lbl_801B86F0: +/* 801B86F0 001B5650 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801B86F4 001B5654 57 E3 06 3E */ clrlwi r3, r31, 0x18 +/* 801B86F8 001B5658 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801B86FC 001B565C 7C 08 03 A6 */ mtlr r0 +/* 801B8700 001B5660 38 21 00 20 */ addi r1, r1, 0x20 +/* 801B8704 001B5664 4E 80 00 20 */ blr + +.global __ct__16CListeningAiListFv +__ct__16CListeningAiListFv: +/* 801B8708 001B5668 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B870C 001B566C 7C 08 02 A6 */ mflr r0 +/* 801B8710 001B5670 38 80 00 05 */ li r4, 5 +/* 801B8714 001B5674 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B8718 001B5678 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801B871C 001B567C 7C 7F 1B 78 */ mr r31, r3 +/* 801B8720 001B5680 4B E5 79 19 */ bl __ct__11CObjectListF15EGameObjectList +/* 801B8724 001B5684 3C 80 80 3E */ lis r4, lbl_803E527C@ha +/* 801B8728 001B5688 7F E3 FB 78 */ mr r3, r31 +/* 801B872C 001B568C 38 04 52 7C */ addi r0, r4, lbl_803E527C@l +/* 801B8730 001B5690 90 1F 00 00 */ stw r0, 0(r31) +/* 801B8734 001B5694 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801B8738 001B5698 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B873C 001B569C 7C 08 03 A6 */ mtlr r0 +/* 801B8740 001B56A0 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B8744 001B56A4 4E 80 00 20 */ blr + +.global IsQualified__15CGameCameraListFRC7CEntity +IsQualified__15CGameCameraListFRC7CEntity: +/* 801B8748 001B56A8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B874C 001B56AC 7C 08 02 A6 */ mflr r0 +/* 801B8750 001B56B0 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B8754 001B56B4 38 61 00 08 */ addi r3, r1, 8 +/* 801B8758 001B56B8 4B EF 56 FD */ bl "__ct__25TCastToPtr<11CGameCamera>FR7CEntity" +/* 801B875C 001B56BC 80 63 00 04 */ lwz r3, 4(r3) +/* 801B8760 001B56C0 7C 03 00 D0 */ neg r0, r3 +/* 801B8764 001B56C4 7C 00 1B 78 */ or r0, r0, r3 +/* 801B8768 001B56C8 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801B876C 001B56CC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B8770 001B56D0 7C 08 03 A6 */ mtlr r0 +/* 801B8774 001B56D4 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B8778 001B56D8 4E 80 00 20 */ blr + +.global __ct__15CGameCameraListFv +__ct__15CGameCameraListFv: +/* 801B877C 001B56DC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B8780 001B56E0 7C 08 02 A6 */ mflr r0 +/* 801B8784 001B56E4 38 80 00 03 */ li r4, 3 +/* 801B8788 001B56E8 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B878C 001B56EC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801B8790 001B56F0 7C 7F 1B 78 */ mr r31, r3 +/* 801B8794 001B56F4 4B E5 78 A5 */ bl __ct__11CObjectListF15EGameObjectList +/* 801B8798 001B56F8 3C 80 80 3E */ lis r4, lbl_803E5288@ha +/* 801B879C 001B56FC 7F E3 FB 78 */ mr r3, r31 +/* 801B87A0 001B5700 38 04 52 88 */ addi r0, r4, lbl_803E5288@l +/* 801B87A4 001B5704 90 1F 00 00 */ stw r0, 0(r31) +/* 801B87A8 001B5708 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801B87AC 001B570C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B87B0 001B5710 7C 08 03 A6 */ mtlr r0 +/* 801B87B4 001B5714 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B87B8 001B5718 4E 80 00 20 */ blr + +.global IsQualified__17CPhysicsActorListFRC7CEntity +IsQualified__17CPhysicsActorListFRC7CEntity: +/* 801B87BC 001B571C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B87C0 001B5720 7C 08 02 A6 */ mflr r0 +/* 801B87C4 001B5724 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B87C8 001B5728 38 61 00 08 */ addi r3, r1, 8 +/* 801B87CC 001B572C 4B EF 3F 85 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FR7CEntity" +/* 801B87D0 001B5730 80 63 00 04 */ lwz r3, 4(r3) +/* 801B87D4 001B5734 7C 03 00 D0 */ neg r0, r3 +/* 801B87D8 001B5738 7C 00 1B 78 */ or r0, r0, r3 +/* 801B87DC 001B573C 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801B87E0 001B5740 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B87E4 001B5744 7C 08 03 A6 */ mtlr r0 +/* 801B87E8 001B5748 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B87EC 001B574C 4E 80 00 20 */ blr + +.global __ct__17CPhysicsActorListFv +__ct__17CPhysicsActorListFv: +/* 801B87F0 001B5750 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B87F4 001B5754 7C 08 02 A6 */ mflr r0 +/* 801B87F8 001B5758 38 80 00 02 */ li r4, 2 +/* 801B87FC 001B575C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B8800 001B5760 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801B8804 001B5764 7C 7F 1B 78 */ mr r31, r3 +/* 801B8808 001B5768 4B E5 78 31 */ bl __ct__11CObjectListF15EGameObjectList +/* 801B880C 001B576C 3C 80 80 3E */ lis r4, lbl_803E5294@ha +/* 801B8810 001B5770 7F E3 FB 78 */ mr r3, r31 +/* 801B8814 001B5774 38 04 52 94 */ addi r0, r4, lbl_803E5294@l +/* 801B8818 001B5778 90 1F 00 00 */ stw r0, 0(r31) +/* 801B881C 001B577C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801B8820 001B5780 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B8824 001B5784 7C 08 03 A6 */ mtlr r0 +/* 801B8828 001B5788 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B882C 001B578C 4E 80 00 20 */ blr + +.global IsQualified__10CActorListFRC7CEntity +IsQualified__10CActorListFRC7CEntity: +/* 801B8830 001B5790 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B8834 001B5794 7C 08 02 A6 */ mflr r0 +/* 801B8838 001B5798 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B883C 001B579C 38 61 00 08 */ addi r3, r1, 8 +/* 801B8840 001B57A0 4B EF 74 BD */ bl "__ct__19TCastToPtr<6CActor>FR7CEntity" +/* 801B8844 001B57A4 80 63 00 04 */ lwz r3, 4(r3) +/* 801B8848 001B57A8 7C 03 00 D0 */ neg r0, r3 +/* 801B884C 001B57AC 7C 00 1B 78 */ or r0, r0, r3 +/* 801B8850 001B57B0 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801B8854 001B57B4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B8858 001B57B8 7C 08 03 A6 */ mtlr r0 +/* 801B885C 001B57BC 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B8860 001B57C0 4E 80 00 20 */ blr + +.global __ct__10CActorListFv +__ct__10CActorListFv: +/* 801B8864 001B57C4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B8868 001B57C8 7C 08 02 A6 */ mflr r0 +/* 801B886C 001B57CC 38 80 00 01 */ li r4, 1 +/* 801B8870 001B57D0 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B8874 001B57D4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801B8878 001B57D8 7C 7F 1B 78 */ mr r31, r3 +/* 801B887C 001B57DC 4B E5 77 BD */ bl __ct__11CObjectListF15EGameObjectList +/* 801B8880 001B57E0 3C 80 80 3E */ lis r4, lbl_803E52A0@ha +/* 801B8884 001B57E4 7F E3 FB 78 */ mr r3, r31 +/* 801B8888 001B57E8 38 04 52 A0 */ addi r0, r4, lbl_803E52A0@l +/* 801B888C 001B57EC 90 1F 00 00 */ stw r0, 0(r31) +/* 801B8890 001B57F0 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801B8894 001B57F4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B8898 001B57F8 7C 08 03 A6 */ mtlr r0 +/* 801B889C 001B57FC 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B88A0 001B5800 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CHUDMemoParms.s b/asm/Kyoto_CWD/HUD/CHUDMemoParms.s similarity index 100% rename from asm/Kyoto_CWD/CHUDMemoParms.s rename to asm/Kyoto_CWD/HUD/CHUDMemoParms.s diff --git a/asm/Kyoto_CWD/HUD/CHudBallInterface.s b/asm/Kyoto_CWD/HUD/CHudBallInterface.s new file mode 100644 index 00000000..2da6138b --- /dev/null +++ b/asm/Kyoto_CWD/HUD/CHudBallInterface.s @@ -0,0 +1,399 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global UpdatePowerBombReadoutColors__17CHudBallInterfaceFv +UpdatePowerBombReadoutColors__17CHudBallInterfaceFv: +/* 801CD490 001CA3F0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801CD494 001CA3F4 7C 08 02 A6 */ mflr r0 +/* 801CD498 001CA3F8 90 01 00 24 */ stw r0, 0x24(r1) +/* 801CD49C 001CA3FC 38 00 00 00 */ li r0, 0 +/* 801CD4A0 001CA400 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801CD4A4 001CA404 7C 7F 1B 78 */ mr r31, r3 +/* 801CD4A8 001CA408 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801CD4AC 001CA40C 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801CD4B0 001CA410 80 83 00 40 */ lwz r4, 0x40(r3) +/* 801CD4B4 001CA414 80 A3 00 44 */ lwz r5, 0x44(r3) +/* 801CD4B8 001CA418 7C 64 00 D0 */ neg r3, r4 +/* 801CD4BC 001CA41C 7C 63 20 78 */ andc r3, r3, r4 +/* 801CD4C0 001CA420 7C 85 00 D0 */ neg r4, r5 +/* 801CD4C4 001CA424 54 7D 0F FF */ rlwinm. r29, r3, 1, 0x1f, 0x1f +/* 801CD4C8 001CA428 90 01 00 08 */ stw r0, 8(r1) +/* 801CD4CC 001CA42C 7C 80 28 78 */ andc r0, r4, r5 +/* 801CD4D0 001CA430 54 1E 0F FE */ srwi r30, r0, 0x1f +/* 801CD4D4 001CA434 41 82 00 10 */ beq lbl_801CD4E4 +/* 801CD4D8 001CA438 80 6D A1 3C */ lwz r3, gpTweakGuiColors@sda21(r13) +/* 801CD4DC 001CA43C 38 83 01 3C */ addi r4, r3, 0x13c +/* 801CD4E0 001CA440 48 00 00 1C */ b lbl_801CD4FC +lbl_801CD4E4: +/* 801CD4E4 001CA444 28 1E 00 00 */ cmplwi r30, 0 +/* 801CD4E8 001CA448 41 82 00 10 */ beq lbl_801CD4F8 +/* 801CD4EC 001CA44C 80 6D A1 3C */ lwz r3, gpTweakGuiColors@sda21(r13) +/* 801CD4F0 001CA450 38 83 01 60 */ addi r4, r3, 0x160 +/* 801CD4F4 001CA454 48 00 00 08 */ b lbl_801CD4FC +lbl_801CD4F8: +/* 801CD4F8 001CA458 38 81 00 08 */ addi r4, r1, 8 +lbl_801CD4FC: +/* 801CD4FC 001CA45C 80 7F 00 10 */ lwz r3, 0x10(r31) +/* 801CD500 001CA460 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 801CD504 001CA464 48 0F C1 65 */ bl SetFontColor__15CGuiTextSupportFRC6CColor +/* 801CD508 001CA468 28 1D 00 00 */ cmplwi r29, 0 +/* 801CD50C 001CA46C 41 82 00 10 */ beq lbl_801CD51C +/* 801CD510 001CA470 80 6D A1 3C */ lwz r3, gpTweakGuiColors@sda21(r13) +/* 801CD514 001CA474 38 83 01 40 */ addi r4, r3, 0x140 +/* 801CD518 001CA478 48 00 00 1C */ b lbl_801CD534 +lbl_801CD51C: +/* 801CD51C 001CA47C 28 1E 00 00 */ cmplwi r30, 0 +/* 801CD520 001CA480 41 82 00 10 */ beq lbl_801CD530 +/* 801CD524 001CA484 80 6D A1 3C */ lwz r3, gpTweakGuiColors@sda21(r13) +/* 801CD528 001CA488 38 83 01 64 */ addi r4, r3, 0x164 +/* 801CD52C 001CA48C 48 00 00 08 */ b lbl_801CD534 +lbl_801CD530: +/* 801CD530 001CA490 38 81 00 08 */ addi r4, r1, 8 +lbl_801CD534: +/* 801CD534 001CA494 80 7F 00 10 */ lwz r3, 0x10(r31) +/* 801CD538 001CA498 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 801CD53C 001CA49C 48 0F C0 DD */ bl SetOutlineColor__15CGuiTextSupportFRC6CColor +/* 801CD540 001CA4A0 28 1D 00 00 */ cmplwi r29, 0 +/* 801CD544 001CA4A4 38 60 00 00 */ li r3, 0 +/* 801CD548 001CA4A8 41 82 00 14 */ beq lbl_801CD55C +/* 801CD54C 001CA4AC 88 1F 00 4C */ lbz r0, 0x4c(r31) +/* 801CD550 001CA4B0 28 00 00 00 */ cmplwi r0, 0 +/* 801CD554 001CA4B4 41 82 00 08 */ beq lbl_801CD55C +/* 801CD558 001CA4B8 38 60 00 01 */ li r3, 1 +lbl_801CD55C: +/* 801CD55C 001CA4BC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801CD560 001CA4C0 41 82 00 10 */ beq lbl_801CD570 +/* 801CD564 001CA4C4 80 6D A1 3C */ lwz r3, gpTweakGuiColors@sda21(r13) +/* 801CD568 001CA4C8 38 83 01 50 */ addi r4, r3, 0x150 +/* 801CD56C 001CA4CC 48 00 00 1C */ b lbl_801CD588 +lbl_801CD570: +/* 801CD570 001CA4D0 28 1E 00 00 */ cmplwi r30, 0 +/* 801CD574 001CA4D4 41 82 00 10 */ beq lbl_801CD584 +/* 801CD578 001CA4D8 80 6D A1 3C */ lwz r3, gpTweakGuiColors@sda21(r13) +/* 801CD57C 001CA4DC 38 83 01 68 */ addi r4, r3, 0x168 +/* 801CD580 001CA4E0 48 00 00 08 */ b lbl_801CD588 +lbl_801CD584: +/* 801CD584 001CA4E4 38 81 00 08 */ addi r4, r1, 8 +lbl_801CD588: +/* 801CD588 001CA4E8 80 7F 00 0C */ lwz r3, 0xc(r31) +/* 801CD58C 001CA4EC 48 0F D2 E1 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 801CD590 001CA4F0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801CD594 001CA4F4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801CD598 001CA4F8 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801CD59C 001CA4FC 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801CD5A0 001CA500 7C 08 03 A6 */ mtlr r0 +/* 801CD5A4 001CA504 38 21 00 20 */ addi r1, r1, 0x20 +/* 801CD5A8 001CA508 4E 80 00 20 */ blr + +.global SetBallModeFactor__17CHudBallInterfaceFf +SetBallModeFactor__17CHudBallInterfaceFf: +/* 801CD5AC 001CA50C 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801CD5B0 001CA510 7C 08 02 A6 */ mflr r0 +/* 801CD5B4 001CA514 C0 42 AB A4 */ lfs f2, lbl_805AC8C4@sda21(r2) +/* 801CD5B8 001CA518 90 01 00 54 */ stw r0, 0x54(r1) +/* 801CD5BC 001CA51C C0 82 AB A0 */ lfs f4, lbl_805AC8C0@sda21(r2) +/* 801CD5C0 001CA520 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801CD5C4 001CA524 7C 7F 1B 78 */ mr r31, r3 +/* 801CD5C8 001CA528 C0 62 AB A8 */ lfs f3, lbl_805AC8C8@sda21(r2) +/* 801CD5CC 001CA52C 38 61 00 14 */ addi r3, r1, 0x14 +/* 801CD5D0 001CA530 80 8D A1 38 */ lwz r4, gpTweakGui@sda21(r13) +/* 801CD5D4 001CA534 C0 BF 00 38 */ lfs f5, 0x38(r31) +/* 801CD5D8 001CA538 C0 04 02 54 */ lfs f0, 0x254(r4) +/* 801CD5DC 001CA53C 38 81 00 08 */ addi r4, r1, 8 +/* 801CD5E0 001CA540 EC 02 00 32 */ fmuls f0, f2, f0 +/* 801CD5E4 001CA544 C0 5F 00 3C */ lfs f2, 0x3c(r31) +/* 801CD5E8 001CA548 EC 84 00 32 */ fmuls f4, f4, f0 +/* 801CD5EC 001CA54C C0 1F 00 34 */ lfs f0, 0x34(r31) +/* 801CD5F0 001CA550 D0 01 00 08 */ stfs f0, 8(r1) +/* 801CD5F4 001CA554 EC 01 21 38 */ fmsubs f0, f1, f4, f4 +/* 801CD5F8 001CA558 D0 A1 00 0C */ stfs f5, 0xc(r1) +/* 801CD5FC 001CA55C EC 00 00 F2 */ fmuls f0, f0, f3 +/* 801CD600 001CA560 EC 00 10 2A */ fadds f0, f0, f2 +/* 801CD604 001CA564 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801CD608 001CA568 48 14 5B 39 */ bl Translate__12CTransform4fFRC9CVector3f +/* 801CD60C 001CA56C 83 FF 00 00 */ lwz r31, 0(r31) +/* 801CD610 001CA570 38 81 00 14 */ addi r4, r1, 0x14 +/* 801CD614 001CA574 38 7F 00 04 */ addi r3, r31, 4 +/* 801CD618 001CA578 48 14 55 29 */ bl __as__12CTransform4fFRC12CTransform4f +/* 801CD61C 001CA57C 7F E3 FB 78 */ mr r3, r31 +/* 801CD620 001CA580 48 0F 71 C9 */ bl RecalculateTransforms__10CGuiObjectFv +/* 801CD624 001CA584 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801CD628 001CA588 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801CD62C 001CA58C 7C 08 03 A6 */ mtlr r0 +/* 801CD630 001CA590 38 21 00 50 */ addi r1, r1, 0x50 +/* 801CD634 001CA594 4E 80 00 20 */ blr + +.global SetBombParams__17CHudBallInterfaceFiiibbb +SetBombParams__17CHudBallInterfaceFiiibbb: +/* 801CD638 001CA598 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801CD63C 001CA59C 7C 08 02 A6 */ mflr r0 +/* 801CD640 001CA5A0 90 01 00 44 */ stw r0, 0x44(r1) +/* 801CD644 001CA5A4 BF 21 00 24 */ stmw r25, 0x24(r1) +/* 801CD648 001CA5A8 7C 9C 23 78 */ mr r28, r4 +/* 801CD64C 001CA5AC 7C 7D 1B 78 */ mr r29, r3 +/* 801CD650 001CA5B0 7C BB 2B 78 */ mr r27, r5 +/* 801CD654 001CA5B4 7C DE 33 78 */ mr r30, r6 +/* 801CD658 001CA5B8 7C FF 3B 78 */ mr r31, r7 +/* 801CD65C 001CA5BC 7D 1A 43 78 */ mr r26, r8 +/* 801CD660 001CA5C0 7D 39 4B 78 */ mr r25, r9 +/* 801CD664 001CA5C4 80 03 00 40 */ lwz r0, 0x40(r3) +/* 801CD668 001CA5C8 7C 1C 00 00 */ cmpw r28, r0 +/* 801CD66C 001CA5CC 40 82 00 0C */ bne lbl_801CD678 +/* 801CD670 001CA5D0 57 20 06 3F */ clrlwi. r0, r25, 0x18 +/* 801CD674 001CA5D4 41 82 00 58 */ beq lbl_801CD6CC +lbl_801CD678: +/* 801CD678 001CA5D8 3C 60 80 3D */ lis r3, lbl_803D1B60@ha +/* 801CD67C 001CA5DC 7F 85 E3 78 */ mr r5, r28 +/* 801CD680 001CA5E0 38 83 1B 60 */ addi r4, r3, lbl_803D1B60@l +/* 801CD684 001CA5E4 38 61 00 0C */ addi r3, r1, 0xc +/* 801CD688 001CA5E8 4C C6 31 82 */ crclr 6 +/* 801CD68C 001CA5EC 48 1C 06 51 */ bl sprintf +/* 801CD690 001CA5F0 38 61 00 10 */ addi r3, r1, 0x10 +/* 801CD694 001CA5F4 38 81 00 0C */ addi r4, r1, 0xc +/* 801CD698 001CA5F8 38 C1 00 08 */ addi r6, r1, 8 +/* 801CD69C 001CA5FC 38 A0 FF FF */ li r5, -1 +/* 801CD6A0 001CA600 48 17 0A F5 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator" +/* 801CD6A4 001CA604 80 7D 00 10 */ lwz r3, 0x10(r29) +/* 801CD6A8 001CA608 38 81 00 10 */ addi r4, r1, 0x10 +/* 801CD6AC 001CA60C 38 A0 00 00 */ li r5, 0 +/* 801CD6B0 001CA610 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 801CD6B4 001CA614 48 0F C4 55 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801CD6B8 001CA618 38 61 00 10 */ addi r3, r1, 0x10 +/* 801CD6BC 001CA61C 48 17 04 25 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801CD6C0 001CA620 93 9D 00 40 */ stw r28, 0x40(r29) +/* 801CD6C4 001CA624 7F A3 EB 78 */ mr r3, r29 +/* 801CD6C8 001CA628 4B FF FD C9 */ bl UpdatePowerBombReadoutColors__17CHudBallInterfaceFv +lbl_801CD6CC: +/* 801CD6CC 001CA62C 80 1D 00 44 */ lwz r0, 0x44(r29) +/* 801CD6D0 001CA630 7C 1B 00 00 */ cmpw r27, r0 +/* 801CD6D4 001CA634 40 82 00 0C */ bne lbl_801CD6E0 +/* 801CD6D8 001CA638 57 20 06 3F */ clrlwi. r0, r25, 0x18 +/* 801CD6DC 001CA63C 41 82 00 10 */ beq lbl_801CD6EC +lbl_801CD6E0: +/* 801CD6E0 001CA640 93 7D 00 44 */ stw r27, 0x44(r29) +/* 801CD6E4 001CA644 7F A3 EB 78 */ mr r3, r29 +/* 801CD6E8 001CA648 4B FF FD A9 */ bl UpdatePowerBombReadoutColors__17CHudBallInterfaceFv +lbl_801CD6EC: +/* 801CD6EC 001CA64C 88 1D 00 4C */ lbz r0, 0x4c(r29) +/* 801CD6F0 001CA650 57 43 06 3E */ clrlwi r3, r26, 0x18 +/* 801CD6F4 001CA654 7C 03 00 40 */ cmplw r3, r0 +/* 801CD6F8 001CA658 41 82 00 10 */ beq lbl_801CD708 +/* 801CD6FC 001CA65C 9B 5D 00 4C */ stb r26, 0x4c(r29) +/* 801CD700 001CA660 7F A3 EB 78 */ mr r3, r29 +/* 801CD704 001CA664 4B FF FD 8D */ bl UpdatePowerBombReadoutColors__17CHudBallInterfaceFv +lbl_801CD708: +/* 801CD708 001CA668 3B 9D 00 18 */ addi r28, r29, 0x18 +/* 801CD70C 001CA66C 3B 7D 00 28 */ addi r27, r29, 0x28 +/* 801CD710 001CA670 3B 40 00 00 */ li r26, 0 +lbl_801CD714: +/* 801CD714 001CA674 7F C0 D2 78 */ xor r0, r30, r26 +/* 801CD718 001CA678 80 7C 00 00 */ lwz r3, 0(r28) +/* 801CD71C 001CA67C 7C 05 0E 70 */ srawi r5, r0, 1 +/* 801CD720 001CA680 38 80 00 00 */ li r4, 0 +/* 801CD724 001CA684 7C 00 F0 38 */ and r0, r0, r30 +/* 801CD728 001CA688 7C 00 28 50 */ subf r0, r0, r5 +/* 801CD72C 001CA68C 54 19 0F FF */ rlwinm. r25, r0, 1, 0x1f, 0x1f +/* 801CD730 001CA690 41 82 00 10 */ beq lbl_801CD740 +/* 801CD734 001CA694 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 801CD738 001CA698 41 82 00 08 */ beq lbl_801CD740 +/* 801CD73C 001CA69C 38 80 00 01 */ li r4, 1 +lbl_801CD740: +/* 801CD740 001CA6A0 38 A0 00 01 */ li r5, 1 +/* 801CD744 001CA6A4 48 0F CF A5 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 801CD748 001CA6A8 28 19 00 00 */ cmplwi r25, 0 +/* 801CD74C 001CA6AC 80 7B 00 00 */ lwz r3, 0(r27) +/* 801CD750 001CA6B0 38 80 00 00 */ li r4, 0 +/* 801CD754 001CA6B4 40 82 00 10 */ bne lbl_801CD764 +/* 801CD758 001CA6B8 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 801CD75C 001CA6BC 41 82 00 08 */ beq lbl_801CD764 +/* 801CD760 001CA6C0 38 80 00 01 */ li r4, 1 +lbl_801CD764: +/* 801CD764 001CA6C4 38 A0 00 01 */ li r5, 1 +/* 801CD768 001CA6C8 48 0F CF 81 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 801CD76C 001CA6CC 3B 5A 00 01 */ addi r26, r26, 1 +/* 801CD770 001CA6D0 3B 7B 00 04 */ addi r27, r27, 4 +/* 801CD774 001CA6D4 2C 1A 00 03 */ cmpwi r26, 3 +/* 801CD778 001CA6D8 3B 9C 00 04 */ addi r28, r28, 4 +/* 801CD77C 001CA6DC 41 80 FF 98 */ blt lbl_801CD714 +/* 801CD780 001CA6E0 93 DD 00 48 */ stw r30, 0x48(r29) +/* 801CD784 001CA6E4 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 801CD788 001CA6E8 38 80 00 00 */ li r4, 0 +/* 801CD78C 001CA6EC 80 7D 00 08 */ lwz r3, 8(r29) +/* 801CD790 001CA6F0 41 82 00 14 */ beq lbl_801CD7A4 +/* 801CD794 001CA6F4 80 1D 00 44 */ lwz r0, 0x44(r29) +/* 801CD798 001CA6F8 2C 00 00 00 */ cmpwi r0, 0 +/* 801CD79C 001CA6FC 40 81 00 08 */ ble lbl_801CD7A4 +/* 801CD7A0 001CA700 38 80 00 01 */ li r4, 1 +lbl_801CD7A4: +/* 801CD7A4 001CA704 38 A0 00 01 */ li r5, 1 +/* 801CD7A8 001CA708 48 0F CF 41 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 801CD7AC 001CA70C BB 21 00 24 */ lmw r25, 0x24(r1) +/* 801CD7B0 001CA710 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801CD7B4 001CA714 7C 08 03 A6 */ mtlr r0 +/* 801CD7B8 001CA718 38 21 00 40 */ addi r1, r1, 0x40 +/* 801CD7BC 001CA71C 4E 80 00 20 */ blr + +.global __ct__17CHudBallInterfaceFR9CGuiFrameiiibb +__ct__17CHudBallInterfaceFR9CGuiFrameiiibb: +/* 801CD7C0 001CA720 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 801CD7C4 001CA724 7C 08 02 A6 */ mflr r0 +/* 801CD7C8 001CA728 90 01 00 74 */ stw r0, 0x74(r1) +/* 801CD7CC 001CA72C 38 00 00 00 */ li r0, 0 +/* 801CD7D0 001CA730 BE 61 00 3C */ stmw r19, 0x3c(r1) +/* 801CD7D4 001CA734 7C 73 1B 78 */ mr r19, r3 +/* 801CD7D8 001CA738 7D 38 4B 78 */ mr r24, r9 +/* 801CD7DC 001CA73C 7C D5 33 78 */ mr r21, r6 +/* 801CD7E0 001CA740 7C F6 3B 78 */ mr r22, r7 +/* 801CD7E4 001CA744 7C 94 23 78 */ mr r20, r4 +/* 801CD7E8 001CA748 7D 17 43 78 */ mr r23, r8 +/* 801CD7EC 001CA74C 90 03 00 14 */ stw r0, 0x14(r3) +/* 801CD7F0 001CA750 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801CD7F4 001CA754 39 23 66 A0 */ addi r9, r3, skZero3f@l +/* 801CD7F8 001CA758 90 13 00 24 */ stw r0, 0x24(r19) +/* 801CD7FC 001CA75C 3C 60 80 3D */ lis r3, lbl_803D1AD8@ha +/* 801CD800 001CA760 3B C3 1A D8 */ addi r30, r3, lbl_803D1AD8@l +/* 801CD804 001CA764 C0 09 00 00 */ lfs f0, 0(r9) +/* 801CD808 001CA768 7E 83 A3 78 */ mr r3, r20 +/* 801CD80C 001CA76C 38 9E 00 00 */ addi r4, r30, 0 +/* 801CD810 001CA770 D0 13 00 34 */ stfs f0, 0x34(r19) +/* 801CD814 001CA774 C0 09 00 04 */ lfs f0, 4(r9) +/* 801CD818 001CA778 D0 13 00 38 */ stfs f0, 0x38(r19) +/* 801CD81C 001CA77C C0 09 00 08 */ lfs f0, 8(r9) +/* 801CD820 001CA780 D0 13 00 3C */ stfs f0, 0x3c(r19) +/* 801CD824 001CA784 90 B3 00 40 */ stw r5, 0x40(r19) +/* 801CD828 001CA788 92 B3 00 44 */ stw r21, 0x44(r19) +/* 801CD82C 001CA78C 92 D3 00 48 */ stw r22, 0x48(r19) +/* 801CD830 001CA790 9B 13 00 4C */ stb r24, 0x4c(r19) +/* 801CD834 001CA794 80 14 00 14 */ lwz r0, 0x14(r20) +/* 801CD838 001CA798 90 13 00 00 */ stw r0, 0(r19) +/* 801CD83C 001CA79C 48 0F 49 19 */ bl FindWidget__9CGuiFrameCFPCc +/* 801CD840 001CA7A0 90 73 00 04 */ stw r3, 4(r19) +/* 801CD844 001CA7A4 7E 83 A3 78 */ mr r3, r20 +/* 801CD848 001CA7A8 38 9E 00 18 */ addi r4, r30, 0x18 +/* 801CD84C 001CA7AC 48 0F 49 09 */ bl FindWidget__9CGuiFrameCFPCc +/* 801CD850 001CA7B0 90 73 00 10 */ stw r3, 0x10(r19) +/* 801CD854 001CA7B4 7E 83 A3 78 */ mr r3, r20 +/* 801CD858 001CA7B8 38 9E 00 4C */ addi r4, r30, 0x4c +/* 801CD85C 001CA7BC 48 0F 48 F9 */ bl FindWidget__9CGuiFrameCFPCc +/* 801CD860 001CA7C0 90 73 00 0C */ stw r3, 0xc(r19) +/* 801CD864 001CA7C4 7E 83 A3 78 */ mr r3, r20 +/* 801CD868 001CA7C8 38 9E 00 74 */ addi r4, r30, 0x74 +/* 801CD86C 001CA7CC 48 0F 48 E9 */ bl FindWidget__9CGuiFrameCFPCc +/* 801CD870 001CA7D0 3C 80 80 3D */ lis r4, lbl_803D1B60@ha +/* 801CD874 001CA7D4 90 73 00 08 */ stw r3, 8(r19) +/* 801CD878 001CA7D8 3B E4 1B 60 */ addi r31, r4, lbl_803D1B60@l +/* 801CD87C 001CA7DC 3B 73 00 14 */ addi r27, r19, 0x14 +/* 801CD880 001CA7E0 3B 53 00 24 */ addi r26, r19, 0x24 +/* 801CD884 001CA7E4 3B 20 00 00 */ li r25, 0 +lbl_801CD888: +/* 801CD888 001CA7E8 7F 25 CB 78 */ mr r5, r25 +/* 801CD88C 001CA7EC 38 7F 00 05 */ addi r3, r31, 5 +/* 801CD890 001CA7F0 38 9E 00 2C */ addi r4, r30, 0x2c +/* 801CD894 001CA7F4 4C C6 31 82 */ crclr 6 +/* 801CD898 001CA7F8 48 10 89 19 */ bl Stringize__7CBasicsFPCce +/* 801CD89C 001CA7FC 7C 64 1B 78 */ mr r4, r3 +/* 801CD8A0 001CA800 38 61 00 28 */ addi r3, r1, 0x28 +/* 801CD8A4 001CA804 38 C1 00 08 */ addi r6, r1, 8 +/* 801CD8A8 001CA808 38 A0 FF FF */ li r5, -1 +/* 801CD8AC 001CA80C 48 17 08 E9 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator" +/* 801CD8B0 001CA810 7E 83 A3 78 */ mr r3, r20 +/* 801CD8B4 001CA814 38 81 00 28 */ addi r4, r1, 0x28 +/* 801CD8B8 001CA818 48 0F 49 1D */ bl "FindWidget__9CGuiFrameCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801CD8BC 001CA81C 81 83 00 00 */ lwz r12, 0(r3) +/* 801CD8C0 001CA820 7C 7C 1B 78 */ mr r28, r3 +/* 801CD8C4 001CA824 38 80 00 01 */ li r4, 1 +/* 801CD8C8 001CA828 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 801CD8CC 001CA82C 7D 89 03 A6 */ mtctr r12 +/* 801CD8D0 001CA830 4E 80 04 21 */ bctrl +/* 801CD8D4 001CA834 81 9C 00 00 */ lwz r12, 0(r28) +/* 801CD8D8 001CA838 7C 7D 1B 78 */ mr r29, r3 +/* 801CD8DC 001CA83C 7F 83 E3 78 */ mr r3, r28 +/* 801CD8E0 001CA840 38 80 00 00 */ li r4, 0 +/* 801CD8E4 001CA844 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 801CD8E8 001CA848 7D 89 03 A6 */ mtctr r12 +/* 801CD8EC 001CA84C 4E 80 04 21 */ bctrl +/* 801CD8F0 001CA850 80 1B 00 00 */ lwz r0, 0(r27) +/* 801CD8F4 001CA854 7C 7C 1B 78 */ mr r28, r3 +/* 801CD8F8 001CA858 54 00 10 3A */ slwi r0, r0, 2 +/* 801CD8FC 001CA85C 7C 7B 02 14 */ add r3, r27, r0 +/* 801CD900 001CA860 34 63 00 04 */ addic. r3, r3, 4 +/* 801CD904 001CA864 41 82 00 08 */ beq lbl_801CD90C +/* 801CD908 001CA868 93 A3 00 00 */ stw r29, 0(r3) +lbl_801CD90C: +/* 801CD90C 001CA86C 80 73 00 14 */ lwz r3, 0x14(r19) +/* 801CD910 001CA870 38 03 00 01 */ addi r0, r3, 1 +/* 801CD914 001CA874 90 13 00 14 */ stw r0, 0x14(r19) +/* 801CD918 001CA878 80 1A 00 00 */ lwz r0, 0(r26) +/* 801CD91C 001CA87C 54 00 10 3A */ slwi r0, r0, 2 +/* 801CD920 001CA880 7C 7A 02 14 */ add r3, r26, r0 +/* 801CD924 001CA884 34 63 00 04 */ addic. r3, r3, 4 +/* 801CD928 001CA888 41 82 00 08 */ beq lbl_801CD930 +/* 801CD92C 001CA88C 93 83 00 00 */ stw r28, 0(r3) +lbl_801CD930: +/* 801CD930 001CA890 80 73 00 24 */ lwz r3, 0x24(r19) +/* 801CD934 001CA894 28 1D 00 00 */ cmplwi r29, 0 +/* 801CD938 001CA898 38 03 00 01 */ addi r0, r3, 1 +/* 801CD93C 001CA89C 90 13 00 24 */ stw r0, 0x24(r19) +/* 801CD940 001CA8A0 41 82 00 14 */ beq lbl_801CD954 +/* 801CD944 001CA8A4 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 801CD948 001CA8A8 7F A3 EB 78 */ mr r3, r29 +/* 801CD94C 001CA8AC 38 84 01 48 */ addi r4, r4, 0x148 +/* 801CD950 001CA8B0 48 0F CF 1D */ bl SetColor__10CGuiWidgetFRC6CColor +lbl_801CD954: +/* 801CD954 001CA8B4 28 1C 00 00 */ cmplwi r28, 0 +/* 801CD958 001CA8B8 41 82 00 14 */ beq lbl_801CD96C +/* 801CD95C 001CA8BC 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 801CD960 001CA8C0 7F 83 E3 78 */ mr r3, r28 +/* 801CD964 001CA8C4 38 84 01 4C */ addi r4, r4, 0x14c +/* 801CD968 001CA8C8 48 0F CF 05 */ bl SetColor__10CGuiWidgetFRC6CColor +lbl_801CD96C: +/* 801CD96C 001CA8CC 38 61 00 28 */ addi r3, r1, 0x28 +/* 801CD970 001CA8D0 48 17 01 71 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801CD974 001CA8D4 3B 39 00 01 */ addi r25, r25, 1 +/* 801CD978 001CA8D8 2C 19 00 03 */ cmpwi r25, 3 +/* 801CD97C 001CA8DC 41 80 FF 0C */ blt lbl_801CD888 +/* 801CD980 001CA8E0 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 801CD984 001CA8E4 80 73 00 08 */ lwz r3, 8(r19) +/* 801CD988 001CA8E8 38 84 01 5C */ addi r4, r4, 0x15c +/* 801CD98C 001CA8EC 48 0F CE E1 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 801CD990 001CA8F0 80 93 00 00 */ lwz r4, 0(r19) +/* 801CD994 001CA8F4 38 61 00 1C */ addi r3, r1, 0x1c +/* 801CD998 001CA8F8 48 0F 78 85 */ bl GetLocalPosition__10CGuiObjectCFv +/* 801CD99C 001CA8FC C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 801CD9A0 001CA900 38 61 00 0C */ addi r3, r1, 0xc +/* 801CD9A4 001CA904 38 9E 00 5C */ addi r4, r30, 0x5c +/* 801CD9A8 001CA908 D0 13 00 34 */ stfs f0, 0x34(r19) +/* 801CD9AC 001CA90C C0 01 00 20 */ lfs f0, 0x20(r1) +/* 801CD9B0 001CA910 D0 13 00 38 */ stfs f0, 0x38(r19) +/* 801CD9B4 001CA914 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 801CD9B8 001CA918 D0 13 00 3C */ stfs f0, 0x3c(r19) +/* 801CD9BC 001CA91C 4B E3 72 FD */ bl string_l__4rstlFPCc +/* 801CD9C0 001CA920 7E 83 A3 78 */ mr r3, r20 +/* 801CD9C4 001CA924 38 81 00 0C */ addi r4, r1, 0xc +/* 801CD9C8 001CA928 48 0F 48 0D */ bl "FindWidget__9CGuiFrameCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801CD9CC 001CA92C 7C 60 1B 78 */ mr r0, r3 +/* 801CD9D0 001CA930 38 61 00 0C */ addi r3, r1, 0xc +/* 801CD9D4 001CA934 7C 14 03 78 */ mr r20, r0 +/* 801CD9D8 001CA938 48 17 01 09 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801CD9DC 001CA93C 28 14 00 00 */ cmplwi r20, 0 +/* 801CD9E0 001CA940 41 82 00 14 */ beq lbl_801CD9F4 +/* 801CD9E4 001CA944 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 801CD9E8 001CA948 7E 83 A3 78 */ mr r3, r20 +/* 801CD9EC 001CA94C 38 84 01 58 */ addi r4, r4, 0x158 +/* 801CD9F0 001CA950 48 0F CE 7D */ bl SetColor__10CGuiWidgetFRC6CColor +lbl_801CD9F4: +/* 801CD9F4 001CA954 80 93 00 40 */ lwz r4, 0x40(r19) +/* 801CD9F8 001CA958 7E 63 9B 78 */ mr r3, r19 +/* 801CD9FC 001CA95C 7E A5 AB 78 */ mr r5, r21 +/* 801CDA00 001CA960 7E C6 B3 78 */ mr r6, r22 +/* 801CDA04 001CA964 7E E7 BB 78 */ mr r7, r23 +/* 801CDA08 001CA968 7F 08 C3 78 */ mr r8, r24 +/* 801CDA0C 001CA96C 39 20 00 01 */ li r9, 1 +/* 801CDA10 001CA970 4B FF FC 29 */ bl SetBombParams__17CHudBallInterfaceFiiibbb +/* 801CDA14 001CA974 7E 63 9B 78 */ mr r3, r19 +/* 801CDA18 001CA978 BA 61 00 3C */ lmw r19, 0x3c(r1) +/* 801CDA1C 001CA97C 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801CDA20 001CA980 7C 08 03 A6 */ mtlr r0 +/* 801CDA24 001CA984 38 21 00 70 */ addi r1, r1, 0x70 +/* 801CDA28 001CA988 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/HUD/CHudDecoInterface.s b/asm/Kyoto_CWD/HUD/CHudDecoInterface.s new file mode 100644 index 00000000..28caa43a --- /dev/null +++ b/asm/Kyoto_CWD/HUD/CHudDecoInterface.s @@ -0,0 +1,9170 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global Update__23CHudBossEnergyInterfaceFf +Update__23CHudBossEnergyInterfaceFf: +/* 8018F364 0018C2C4 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8018F368 0018C2C8 7C 08 02 A6 */ mflr r0 +/* 8018F36C 0018C2CC 90 01 00 44 */ stw r0, 0x44(r1) +/* 8018F370 0018C2D0 DB E1 00 30 */ stfd f31, 0x30(r1) +/* 8018F374 0018C2D4 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 8018F378 0018C2D8 DB C1 00 20 */ stfd f30, 0x20(r1) +/* 8018F37C 0018C2DC F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 +/* 8018F380 0018C2E0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8018F384 0018C2E4 88 03 00 10 */ lbz r0, 0x10(r3) +/* 8018F388 0018C2E8 7C 7F 1B 78 */ mr r31, r3 +/* 8018F38C 0018C2EC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8018F390 0018C2F0 41 82 00 34 */ beq lbl_8018F3C4 +/* 8018F394 0018C2F4 C0 5F 00 04 */ lfs f2, 4(r31) +/* 8018F398 0018C2F8 C0 0D 8F 08 */ lfs f0, lbl_805A7AC8@sda21(r13) +/* 8018F39C 0018C2FC EC 22 08 2A */ fadds f1, f2, f1 +/* 8018F3A0 0018C300 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8018F3A4 0018C304 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 8018F3A8 0018C308 40 80 00 0C */ bge lbl_8018F3B4 +/* 8018F3AC 0018C30C 38 61 00 14 */ addi r3, r1, 0x14 +/* 8018F3B0 0018C310 48 00 00 08 */ b lbl_8018F3B8 +lbl_8018F3B4: +/* 8018F3B4 0018C314 38 6D 8F 08 */ addi r3, r13, lbl_805A7AC8@sda21 +lbl_8018F3B8: +/* 8018F3B8 0018C318 C0 03 00 00 */ lfs f0, 0(r3) +/* 8018F3BC 0018C31C D0 1F 00 04 */ stfs f0, 4(r31) +/* 8018F3C0 0018C320 48 00 00 30 */ b lbl_8018F3F0 +lbl_8018F3C4: +/* 8018F3C4 0018C324 C0 5F 00 04 */ lfs f2, 4(r31) +/* 8018F3C8 0018C328 C0 0D 8F 0C */ lfs f0, lbl_805A7ACC@sda21(r13) +/* 8018F3CC 0018C32C EC 22 08 28 */ fsubs f1, f2, f1 +/* 8018F3D0 0018C330 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 8018F3D4 0018C334 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 8018F3D8 0018C338 40 80 00 0C */ bge lbl_8018F3E4 +/* 8018F3DC 0018C33C 38 61 00 10 */ addi r3, r1, 0x10 +/* 8018F3E0 0018C340 48 00 00 08 */ b lbl_8018F3E8 +lbl_8018F3E4: +/* 8018F3E4 0018C344 38 6D 8F 0C */ addi r3, r13, lbl_805A7ACC@sda21 +lbl_8018F3E8: +/* 8018F3E8 0018C348 C0 03 00 00 */ lfs f0, 0(r3) +/* 8018F3EC 0018C34C D0 1F 00 04 */ stfs f0, 4(r31) +lbl_8018F3F0: +/* 8018F3F0 0018C350 C0 3F 00 04 */ lfs f1, 4(r31) +/* 8018F3F4 0018C354 C0 02 A4 98 */ lfs f0, lbl_805AC1B8@sda21(r2) +/* 8018F3F8 0018C358 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8018F3FC 0018C35C 40 81 00 4C */ ble lbl_8018F448 +/* 8018F400 0018C360 C0 1F 00 00 */ lfs f0, 0(r31) +/* 8018F404 0018C364 EF E0 00 72 */ fmuls f31, f0, f1 +/* 8018F408 0018C368 48 1B AB A5 */ bl White__6CColorFv +/* 8018F40C 0018C36C C0 02 A4 9C */ lfs f0, lbl_805AC1BC@sda21(r2) +/* 8018F410 0018C370 EF C0 07 F2 */ fmuls f30, f0, f31 +/* 8018F414 0018C374 F3 C1 A0 08 */ psq_st f30, 8(r1), 1, qr2 +/* 8018F418 0018C378 38 81 00 0C */ addi r4, r1, 0xc +/* 8018F41C 0018C37C 80 63 00 00 */ lwz r3, 0(r3) +/* 8018F420 0018C380 88 01 00 08 */ lbz r0, 8(r1) +/* 8018F424 0018C384 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 8018F428 0018C388 90 01 00 0C */ stw r0, 0xc(r1) +/* 8018F42C 0018C38C 80 7F 00 14 */ lwz r3, 0x14(r31) +/* 8018F430 0018C390 48 13 B4 3D */ bl SetColor__10CGuiWidgetFRC6CColor +/* 8018F434 0018C394 80 7F 00 14 */ lwz r3, 0x14(r31) +/* 8018F438 0018C398 38 80 00 01 */ li r4, 1 +/* 8018F43C 0018C39C 38 A0 00 01 */ li r5, 1 +/* 8018F440 0018C3A0 48 13 B2 A9 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 8018F444 0018C3A4 48 00 00 14 */ b lbl_8018F458 +lbl_8018F448: +/* 8018F448 0018C3A8 80 7F 00 14 */ lwz r3, 0x14(r31) +/* 8018F44C 0018C3AC 38 80 00 00 */ li r4, 0 +/* 8018F450 0018C3B0 38 A0 00 01 */ li r5, 1 +/* 8018F454 0018C3B4 48 13 B2 95 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +lbl_8018F458: +/* 8018F458 0018C3B8 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 8018F45C 0018C3BC CB E1 00 30 */ lfd f31, 0x30(r1) +/* 8018F460 0018C3C0 E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 +/* 8018F464 0018C3C4 CB C1 00 20 */ lfd f30, 0x20(r1) +/* 8018F468 0018C3C8 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8018F46C 0018C3CC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8018F470 0018C3D0 7C 08 03 A6 */ mtlr r0 +/* 8018F474 0018C3D4 38 21 00 40 */ addi r1, r1, 0x40 +/* 8018F478 0018C3D8 4E 80 00 20 */ blr + +.global SetAlpha__23CHudBossEnergyInterfaceFf +SetAlpha__23CHudBossEnergyInterfaceFf: +/* 8018F47C 0018C3DC D0 23 00 00 */ stfs f1, 0(r3) +/* 8018F480 0018C3E0 4E 80 00 20 */ blr + +.global "SetBossParams__23CHudBossEnergyInterfaceFbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +"SetBossParams__23CHudBossEnergyInterfaceFbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>": +/* 8018F484 0018C3E4 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8018F488 0018C3E8 7C 08 02 A6 */ mflr r0 +/* 8018F48C 0018C3EC 90 01 00 34 */ stw r0, 0x34(r1) +/* 8018F490 0018C3F0 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 8018F494 0018C3F4 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 8018F498 0018C3F8 DB C1 00 10 */ stfd f30, 0x10(r1) +/* 8018F49C 0018C3FC F3 C1 00 18 */ psq_st f30, 24(r1), 0, qr0 +/* 8018F4A0 0018C400 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8018F4A4 0018C404 93 C1 00 08 */ stw r30, 8(r1) +/* 8018F4A8 0018C408 7C 7E 1B 78 */ mr r30, r3 +/* 8018F4AC 0018C40C 54 83 06 3F */ clrlwi. r3, r4, 0x18 +/* 8018F4B0 0018C410 88 1E 00 10 */ lbz r0, 0x10(r30) +/* 8018F4B4 0018C414 FF C0 08 90 */ fmr f30, f1 +/* 8018F4B8 0018C418 FF E0 10 90 */ fmr f31, f2 +/* 8018F4BC 0018C41C 7C BF 2B 78 */ mr r31, r5 +/* 8018F4C0 0018C420 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8018F4C4 0018C424 98 1E 00 10 */ stb r0, 0x10(r30) +/* 8018F4C8 0018C428 41 82 00 48 */ beq lbl_8018F510 +/* 8018F4CC 0018C42C C0 02 A4 A4 */ lfs f0, lbl_805AC1C4@sda21(r2) +/* 8018F4D0 0018C430 38 80 00 00 */ li r4, 0 +/* 8018F4D4 0018C434 C0 42 A4 A0 */ lfs f2, lbl_805AC1C0@sda21(r2) +/* 8018F4D8 0018C438 EC 00 07 F2 */ fmuls f0, f0, f31 +/* 8018F4DC 0018C43C 80 7E 00 18 */ lwz r3, 0x18(r30) +/* 8018F4E0 0018C440 EC 02 00 32 */ fmuls f0, f2, f0 +/* 8018F4E4 0018C444 D0 03 00 E4 */ stfs f0, 0xe4(r3) +/* 8018F4E8 0018C448 80 7E 00 18 */ lwz r3, 0x18(r30) +/* 8018F4EC 0018C44C 48 13 C3 DD */ bl SetCurrEnergy__16CAuiEnergyBarT01Ffb +/* 8018F4F0 0018C450 FC 20 F8 90 */ fmr f1, f31 +/* 8018F4F4 0018C454 80 7E 00 18 */ lwz r3, 0x18(r30) +/* 8018F4F8 0018C458 48 13 C4 71 */ bl SetMaxEnergy__16CAuiEnergyBarT01Ff +/* 8018F4FC 0018C45C 80 7E 00 1C */ lwz r3, 0x1c(r30) +/* 8018F500 0018C460 7F E4 FB 78 */ mr r4, r31 +/* 8018F504 0018C464 38 A0 00 00 */ li r5, 0 +/* 8018F508 0018C468 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 8018F50C 0018C46C 48 13 A3 79 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +lbl_8018F510: +/* 8018F510 0018C470 D3 DE 00 08 */ stfs f30, 8(r30) +/* 8018F514 0018C474 D3 FE 00 0C */ stfs f31, 0xc(r30) +/* 8018F518 0018C478 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 8018F51C 0018C47C CB E1 00 20 */ lfd f31, 0x20(r1) +/* 8018F520 0018C480 E3 C1 00 18 */ psq_l f30, 24(r1), 0, qr0 +/* 8018F524 0018C484 CB C1 00 10 */ lfd f30, 0x10(r1) +/* 8018F528 0018C488 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8018F52C 0018C48C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8018F530 0018C490 83 C1 00 08 */ lwz r30, 8(r1) +/* 8018F534 0018C494 7C 08 03 A6 */ mtlr r0 +/* 8018F538 0018C498 38 21 00 30 */ addi r1, r1, 0x30 +/* 8018F53C 0018C49C 4E 80 00 20 */ blr + +.global __ct__23CHudBossEnergyInterfaceFR9CGuiFrame +__ct__23CHudBossEnergyInterfaceFR9CGuiFrame: +/* 8018F540 0018C4A0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8018F544 0018C4A4 7C 08 02 A6 */ mflr r0 +/* 8018F548 0018C4A8 C0 02 A4 A8 */ lfs f0, lbl_805AC1C8@sda21(r2) +/* 8018F54C 0018C4AC 38 A0 00 00 */ li r5, 0 +/* 8018F550 0018C4B0 90 01 00 14 */ stw r0, 0x14(r1) +/* 8018F554 0018C4B4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8018F558 0018C4B8 7C 7F 1B 78 */ mr r31, r3 +/* 8018F55C 0018C4BC 3C 60 80 3D */ lis r3, lbl_803D09D4@ha +/* 8018F560 0018C4C0 93 C1 00 08 */ stw r30, 8(r1) +/* 8018F564 0018C4C4 7C 9E 23 78 */ mr r30, r4 +/* 8018F568 0018C4C8 38 83 09 D4 */ addi r4, r3, lbl_803D09D4@l +/* 8018F56C 0018C4CC D0 1F 00 00 */ stfs f0, 0(r31) +/* 8018F570 0018C4D0 7F C3 F3 78 */ mr r3, r30 +/* 8018F574 0018C4D4 C0 02 A4 98 */ lfs f0, lbl_805AC1B8@sda21(r2) +/* 8018F578 0018C4D8 D0 1F 00 04 */ stfs f0, 4(r31) +/* 8018F57C 0018C4DC D0 1F 00 08 */ stfs f0, 8(r31) +/* 8018F580 0018C4E0 D0 1F 00 0C */ stfs f0, 0xc(r31) +/* 8018F584 0018C4E4 88 1F 00 10 */ lbz r0, 0x10(r31) +/* 8018F588 0018C4E8 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 8018F58C 0018C4EC 98 1F 00 10 */ stb r0, 0x10(r31) +/* 8018F590 0018C4F0 48 13 2B C5 */ bl FindWidget__9CGuiFrameCFPCc +/* 8018F594 0018C4F4 3C 80 80 3D */ lis r4, lbl_803D09F0@ha +/* 8018F598 0018C4F8 90 7F 00 14 */ stw r3, 0x14(r31) +/* 8018F59C 0018C4FC 38 84 09 F0 */ addi r4, r4, lbl_803D09F0@l +/* 8018F5A0 0018C500 7F C3 F3 78 */ mr r3, r30 +/* 8018F5A4 0018C504 48 13 2B B1 */ bl FindWidget__9CGuiFrameCFPCc +/* 8018F5A8 0018C508 3C 80 80 3D */ lis r4, lbl_803D0A30@ha +/* 8018F5AC 0018C50C 90 7F 00 18 */ stw r3, 0x18(r31) +/* 8018F5B0 0018C510 38 84 0A 30 */ addi r4, r4, lbl_803D0A30@l +/* 8018F5B4 0018C514 7F C3 F3 78 */ mr r3, r30 +/* 8018F5B8 0018C518 48 13 2B 9D */ bl FindWidget__9CGuiFrameCFPCc +/* 8018F5BC 0018C51C 90 7F 00 1C */ stw r3, 0x1c(r31) +/* 8018F5C0 0018C520 3C 60 80 19 */ lis r3, BossEnergyCoordFunc__23CHudBossEnergyInterfaceFf@ha +/* 8018F5C4 0018C524 38 03 FF 70 */ addi r0, r3, BossEnergyCoordFunc__23CHudBossEnergyInterfaceFf@l +/* 8018F5C8 0018C528 C0 02 A4 AC */ lfs f0, lbl_805AC1CC@sda21(r2) +/* 8018F5CC 0018C52C 80 9F 00 18 */ lwz r4, 0x18(r31) +/* 8018F5D0 0018C530 7F E3 FB 78 */ mr r3, r31 +/* 8018F5D4 0018C534 90 04 00 D8 */ stw r0, 0xd8(r4) +/* 8018F5D8 0018C538 80 9F 00 18 */ lwz r4, 0x18(r31) +/* 8018F5DC 0018C53C D0 04 00 DC */ stfs f0, 0xdc(r4) +/* 8018F5E0 0018C540 80 AD A1 3C */ lwz r5, gpTweakGuiColors@sda21(r13) +/* 8018F5E4 0018C544 80 9F 00 18 */ lwz r4, 0x18(r31) +/* 8018F5E8 0018C548 80 05 01 C8 */ lwz r0, 0x1c8(r5) +/* 8018F5EC 0018C54C 90 04 00 D0 */ stw r0, 0xd0(r4) +/* 8018F5F0 0018C550 80 05 01 D0 */ lwz r0, 0x1d0(r5) +/* 8018F5F4 0018C554 80 9F 00 18 */ lwz r4, 0x18(r31) +/* 8018F5F8 0018C558 90 04 00 D4 */ stw r0, 0xd4(r4) +/* 8018F5FC 0018C55C 80 05 01 CC */ lwz r0, 0x1cc(r5) +/* 8018F600 0018C560 80 9F 00 18 */ lwz r4, 0x18(r31) +/* 8018F604 0018C564 90 04 00 CC */ stw r0, 0xcc(r4) +/* 8018F608 0018C568 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8018F60C 0018C56C 83 C1 00 08 */ lwz r30, 8(r1) +/* 8018F610 0018C570 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8018F614 0018C574 7C 08 03 A6 */ mtlr r0 +/* 8018F618 0018C578 38 21 00 10 */ addi r1, r1, 0x10 +/* 8018F61C 0018C57C 4E 80 00 20 */ blr + +.global Update__19CHudEnergyInterfaceFff +Update__19CHudEnergyInterfaceFff: +/* 8018F620 0018C580 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 8018F624 0018C584 7C 08 02 A6 */ mflr r0 +/* 8018F628 0018C588 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 8018F62C 0018C58C DB E1 00 A0 */ stfd f31, 0xa0(r1) +/* 8018F630 0018C590 F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0 +/* 8018F634 0018C594 DB C1 00 90 */ stfd f30, 0x90(r1) +/* 8018F638 0018C598 F3 C1 00 98 */ psq_st f30, 152(r1), 0, qr0 +/* 8018F63C 0018C59C DB A1 00 80 */ stfd f29, 0x80(r1) +/* 8018F640 0018C5A0 F3 A1 00 88 */ psq_st f29, 136(r1), 0, qr0 +/* 8018F644 0018C5A4 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 8018F648 0018C5A8 93 C1 00 78 */ stw r30, 0x78(r1) +/* 8018F64C 0018C5AC 93 A1 00 74 */ stw r29, 0x74(r1) +/* 8018F650 0018C5B0 7C 7F 1B 78 */ mr r31, r3 +/* 8018F654 0018C5B4 FF E0 10 90 */ fmr f31, f2 +/* 8018F658 0018C5B8 80 03 00 28 */ lwz r0, 0x28(r3) +/* 8018F65C 0018C5BC 28 00 00 00 */ cmplwi r0, 0 +/* 8018F660 0018C5C0 41 82 01 00 */ beq lbl_8018F760 +/* 8018F664 0018C5C4 88 1F 00 1C */ lbz r0, 0x1c(r31) +/* 8018F668 0018C5C8 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 8018F66C 0018C5CC 41 82 00 6C */ beq lbl_8018F6D8 +/* 8018F670 0018C5D0 C0 62 A4 B0 */ lfs f3, lbl_805AC1D0@sda21(r2) +/* 8018F674 0018C5D4 C0 5F 00 04 */ lfs f2, 4(r31) +/* 8018F678 0018C5D8 C0 0D 8F 00 */ lfs f0, lbl_805A7AC0@sda21(r13) +/* 8018F67C 0018C5DC EC 23 10 7A */ fmadds f1, f3, f1, f2 +/* 8018F680 0018C5E0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8018F684 0018C5E4 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 8018F688 0018C5E8 40 80 00 0C */ bge lbl_8018F694 +/* 8018F68C 0018C5EC 38 61 00 24 */ addi r3, r1, 0x24 +/* 8018F690 0018C5F0 48 00 00 08 */ b lbl_8018F698 +lbl_8018F694: +/* 8018F694 0018C5F4 38 6D 8F 00 */ addi r3, r13, lbl_805A7AC0@sda21 +lbl_8018F698: +/* 8018F698 0018C5F8 C0 03 00 00 */ lfs f0, 0(r3) +/* 8018F69C 0018C5FC D0 1F 00 04 */ stfs f0, 4(r31) +/* 8018F6A0 0018C600 C0 1F 00 04 */ lfs f0, 4(r31) +/* 8018F6A4 0018C604 EF C0 07 F2 */ fmuls f30, f0, f31 +/* 8018F6A8 0018C608 48 1B A9 05 */ bl White__6CColorFv +/* 8018F6AC 0018C60C C0 02 A4 9C */ lfs f0, lbl_805AC1BC@sda21(r2) +/* 8018F6B0 0018C610 EF A0 07 B2 */ fmuls f29, f0, f30 +/* 8018F6B4 0018C614 F3 A1 A0 09 */ psq_st f29, 9(r1), 1, qr2 +/* 8018F6B8 0018C618 38 81 00 20 */ addi r4, r1, 0x20 +/* 8018F6BC 0018C61C 80 63 00 00 */ lwz r3, 0(r3) +/* 8018F6C0 0018C620 88 01 00 09 */ lbz r0, 9(r1) +/* 8018F6C4 0018C624 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 8018F6C8 0018C628 90 01 00 20 */ stw r0, 0x20(r1) +/* 8018F6CC 0018C62C 80 7F 00 28 */ lwz r3, 0x28(r31) +/* 8018F6D0 0018C630 48 13 B1 9D */ bl SetColor__10CGuiWidgetFRC6CColor +/* 8018F6D4 0018C634 48 00 00 68 */ b lbl_8018F73C +lbl_8018F6D8: +/* 8018F6D8 0018C638 C0 62 A4 B0 */ lfs f3, lbl_805AC1D0@sda21(r2) +/* 8018F6DC 0018C63C C0 5F 00 04 */ lfs f2, 4(r31) +/* 8018F6E0 0018C640 C0 0D 8F 04 */ lfs f0, lbl_805A7AC4@sda21(r13) +/* 8018F6E4 0018C644 EC 23 10 7C */ fnmsubs f1, f3, f1, f2 +/* 8018F6E8 0018C648 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 8018F6EC 0018C64C D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 8018F6F0 0018C650 40 80 00 0C */ bge lbl_8018F6FC +/* 8018F6F4 0018C654 38 61 00 1C */ addi r3, r1, 0x1c +/* 8018F6F8 0018C658 48 00 00 08 */ b lbl_8018F700 +lbl_8018F6FC: +/* 8018F6FC 0018C65C 38 6D 8F 04 */ addi r3, r13, lbl_805A7AC4@sda21 +lbl_8018F700: +/* 8018F700 0018C660 C0 03 00 00 */ lfs f0, 0(r3) +/* 8018F704 0018C664 D0 1F 00 04 */ stfs f0, 4(r31) +/* 8018F708 0018C668 C0 1F 00 04 */ lfs f0, 4(r31) +/* 8018F70C 0018C66C EF C0 07 F2 */ fmuls f30, f0, f31 +/* 8018F710 0018C670 48 1B A8 9D */ bl White__6CColorFv +/* 8018F714 0018C674 C0 02 A4 9C */ lfs f0, lbl_805AC1BC@sda21(r2) +/* 8018F718 0018C678 EF A0 07 B2 */ fmuls f29, f0, f30 +/* 8018F71C 0018C67C F3 A1 A0 08 */ psq_st f29, 8(r1), 1, qr2 +/* 8018F720 0018C680 38 81 00 18 */ addi r4, r1, 0x18 +/* 8018F724 0018C684 80 63 00 00 */ lwz r3, 0(r3) +/* 8018F728 0018C688 88 01 00 08 */ lbz r0, 8(r1) +/* 8018F72C 0018C68C 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 8018F730 0018C690 90 01 00 18 */ stw r0, 0x18(r1) +/* 8018F734 0018C694 80 7F 00 28 */ lwz r3, 0x28(r31) +/* 8018F738 0018C698 48 13 B1 35 */ bl SetColor__10CGuiWidgetFRC6CColor +lbl_8018F73C: +/* 8018F73C 0018C69C 80 7F 00 28 */ lwz r3, 0x28(r31) +/* 8018F740 0018C6A0 88 03 00 AB */ lbz r0, 0xab(r3) +/* 8018F744 0018C6A4 28 00 00 00 */ cmplwi r0, 0 +/* 8018F748 0018C6A8 41 82 00 10 */ beq lbl_8018F758 +/* 8018F74C 0018C6AC 38 80 00 01 */ li r4, 1 +/* 8018F750 0018C6B0 48 13 AE DD */ bl SetIsVisible__10CGuiWidgetFb +/* 8018F754 0018C6B4 48 00 00 0C */ b lbl_8018F760 +lbl_8018F758: +/* 8018F758 0018C6B8 38 80 00 00 */ li r4, 0 +/* 8018F75C 0018C6BC 48 13 AE D1 */ bl SetIsVisible__10CGuiWidgetFb +lbl_8018F760: +/* 8018F760 0018C6C0 80 7F 00 2C */ lwz r3, 0x2c(r31) +/* 8018F764 0018C6C4 C0 1F 00 18 */ lfs f0, 0x18(r31) +/* 8018F768 0018C6C8 C3 A3 00 F8 */ lfs f29, 0xf8(r3) +/* 8018F76C 0018C6CC FC 1D 00 00 */ fcmpu cr0, f29, f0 +/* 8018F770 0018C6D0 40 82 00 10 */ bne lbl_8018F780 +/* 8018F774 0018C6D4 88 1F 00 1C */ lbz r0, 0x1c(r31) +/* 8018F778 0018C6D8 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 8018F77C 0018C6DC 41 82 00 80 */ beq lbl_8018F7FC +lbl_8018F780: +/* 8018F780 0018C6E0 88 1F 00 1C */ lbz r0, 0x1c(r31) +/* 8018F784 0018C6E4 38 60 00 00 */ li r3, 0 +/* 8018F788 0018C6E8 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 8018F78C 0018C6EC 98 1F 00 1C */ stb r0, 0x1c(r31) +/* 8018F790 0018C6F0 D3 BF 00 18 */ stfs f29, 0x18(r31) +/* 8018F794 0018C6F4 4B F0 20 91 */ bl GetEnergyTankCapacity__12CPlayerStateFv +/* 8018F798 0018C6F8 FC 40 08 90 */ fmr f2, f1 +/* 8018F79C 0018C6FC FC 20 E8 90 */ fmr f1, f29 +/* 8018F7A0 0018C700 48 20 55 0D */ bl fmod +/* 8018F7A4 0018C704 FC 00 08 18 */ frsp f0, f1 +/* 8018F7A8 0018C708 3C 60 80 3D */ lis r3, lbl_803D0A30@ha +/* 8018F7AC 0018C70C 38 83 0A 30 */ addi r4, r3, lbl_803D0A30@l +/* 8018F7B0 0018C710 38 61 00 4C */ addi r3, r1, 0x4c +/* 8018F7B4 0018C714 38 84 00 0E */ addi r4, r4, 0xe +/* 8018F7B8 0018C718 FC 00 00 1E */ fctiwz f0, f0 +/* 8018F7BC 0018C71C D8 01 00 60 */ stfd f0, 0x60(r1) +/* 8018F7C0 0018C720 80 A1 00 64 */ lwz r5, 0x64(r1) +/* 8018F7C4 0018C724 4C C6 31 82 */ crclr 6 +/* 8018F7C8 0018C728 48 1F E5 15 */ bl sprintf +/* 8018F7CC 0018C72C 38 61 00 50 */ addi r3, r1, 0x50 +/* 8018F7D0 0018C730 38 81 00 4C */ addi r4, r1, 0x4c +/* 8018F7D4 0018C734 38 C1 00 0C */ addi r6, r1, 0xc +/* 8018F7D8 0018C738 38 A0 FF FF */ li r5, -1 +/* 8018F7DC 0018C73C 48 1A E9 B9 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator" +/* 8018F7E0 0018C740 80 7F 00 20 */ lwz r3, 0x20(r31) +/* 8018F7E4 0018C744 38 81 00 50 */ addi r4, r1, 0x50 +/* 8018F7E8 0018C748 38 A0 00 00 */ li r5, 0 +/* 8018F7EC 0018C74C 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 8018F7F0 0018C750 48 13 A3 19 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8018F7F4 0018C754 38 61 00 50 */ addi r3, r1, 0x50 +/* 8018F7F8 0018C758 48 1A E2 E9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8018F7FC: +/* 8018F7FC 0018C75C 80 1F 00 00 */ lwz r0, 0(r31) +/* 8018F800 0018C760 38 61 00 48 */ addi r3, r1, 0x48 +/* 8018F804 0018C764 80 AD A1 3C */ lwz r5, gpTweakGuiColors@sda21(r13) +/* 8018F808 0018C768 1C 00 00 1C */ mulli r0, r0, 0x1c +/* 8018F80C 0018C76C 7C 85 02 14 */ add r4, r5, r0 +/* 8018F810 0018C770 80 04 01 CC */ lwz r0, 0x1cc(r4) +/* 8018F814 0018C774 90 01 00 48 */ stw r0, 0x48(r1) +/* 8018F818 0018C778 80 04 01 C8 */ lwz r0, 0x1c8(r4) +/* 8018F81C 0018C77C 90 01 00 44 */ stw r0, 0x44(r1) +/* 8018F820 0018C780 80 04 01 D0 */ lwz r0, 0x1d0(r4) +/* 8018F824 0018C784 90 01 00 40 */ stw r0, 0x40(r1) +/* 8018F828 0018C788 80 05 00 3C */ lwz r0, 0x3c(r5) +/* 8018F82C 0018C78C 90 01 00 3C */ stw r0, 0x3c(r1) +/* 8018F830 0018C790 80 05 00 34 */ lwz r0, 0x34(r5) +/* 8018F834 0018C794 90 01 00 38 */ stw r0, 0x38(r1) +/* 8018F838 0018C798 80 05 00 38 */ lwz r0, 0x38(r5) +/* 8018F83C 0018C79C 90 01 00 34 */ stw r0, 0x34(r1) +/* 8018F840 0018C7A0 88 1F 00 1C */ lbz r0, 0x1c(r31) +/* 8018F844 0018C7A4 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 8018F848 0018C7A8 41 82 00 08 */ beq lbl_8018F850 +/* 8018F84C 0018C7AC 38 61 00 3C */ addi r3, r1, 0x3c +lbl_8018F850: +/* 8018F850 0018C7B0 28 00 00 00 */ cmplwi r0, 0 +/* 8018F854 0018C7B4 83 C3 00 00 */ lwz r30, 0(r3) +/* 8018F858 0018C7B8 38 61 00 44 */ addi r3, r1, 0x44 +/* 8018F85C 0018C7BC 41 82 00 08 */ beq lbl_8018F864 +/* 8018F860 0018C7C0 38 61 00 38 */ addi r3, r1, 0x38 +lbl_8018F864: +/* 8018F864 0018C7C4 80 03 00 00 */ lwz r0, 0(r3) +/* 8018F868 0018C7C8 38 61 00 40 */ addi r3, r1, 0x40 +/* 8018F86C 0018C7CC 90 01 00 30 */ stw r0, 0x30(r1) +/* 8018F870 0018C7D0 88 1F 00 1C */ lbz r0, 0x1c(r31) +/* 8018F874 0018C7D4 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 8018F878 0018C7D8 41 82 00 08 */ beq lbl_8018F880 +/* 8018F87C 0018C7DC 38 61 00 34 */ addi r3, r1, 0x34 +lbl_8018F880: +/* 8018F880 0018C7E0 83 A3 00 00 */ lwz r29, 0(r3) +/* 8018F884 0018C7E4 38 61 00 14 */ addi r3, r1, 0x14 +/* 8018F888 0018C7E8 C0 3F 00 08 */ lfs f1, 8(r31) +/* 8018F88C 0018C7EC 38 81 00 30 */ addi r4, r1, 0x30 +/* 8018F890 0018C7F0 38 A5 00 E8 */ addi r5, r5, 0xe8 +/* 8018F894 0018C7F4 48 1D 3A 19 */ bl Lerp__6CColorFRC6CColorRC6CColorf +/* 8018F898 0018C7F8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8018F89C 0018C7FC 90 01 00 2C */ stw r0, 0x2c(r1) +/* 8018F8A0 0018C800 88 1F 00 1C */ lbz r0, 0x1c(r31) +/* 8018F8A4 0018C804 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 8018F8A8 0018C808 41 82 00 38 */ beq lbl_8018F8E0 +/* 8018F8AC 0018C80C C0 22 A4 A8 */ lfs f1, lbl_805AC1C8@sda21(r2) +/* 8018F8B0 0018C810 38 61 00 28 */ addi r3, r1, 0x28 +/* 8018F8B4 0018C814 C0 42 A4 B4 */ lfs f2, lbl_805AC1D4@sda21(r2) +/* 8018F8B8 0018C818 FC 80 08 90 */ fmr f4, f1 +/* 8018F8BC 0018C81C C0 62 A4 B8 */ lfs f3, lbl_805AC1D8@sda21(r2) +/* 8018F8C0 0018C820 48 1D 3B 2D */ bl __ct__6CColorFffff +/* 8018F8C4 0018C824 FC 20 F8 90 */ fmr f1, f31 +/* 8018F8C8 0018C828 38 61 00 10 */ addi r3, r1, 0x10 +/* 8018F8CC 0018C82C 38 81 00 2C */ addi r4, r1, 0x2c +/* 8018F8D0 0018C830 38 A1 00 28 */ addi r5, r1, 0x28 +/* 8018F8D4 0018C834 48 1D 39 D9 */ bl Lerp__6CColorFRC6CColorRC6CColorf +/* 8018F8D8 0018C838 80 01 00 10 */ lwz r0, 0x10(r1) +/* 8018F8DC 0018C83C 90 01 00 2C */ stw r0, 0x2c(r1) +lbl_8018F8E0: +/* 8018F8E0 0018C840 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 8018F8E4 0018C844 80 7F 00 2C */ lwz r3, 0x2c(r31) +/* 8018F8E8 0018C848 90 03 00 D0 */ stw r0, 0xd0(r3) +/* 8018F8EC 0018C84C 80 7F 00 2C */ lwz r3, 0x2c(r31) +/* 8018F8F0 0018C850 93 A3 00 D4 */ stw r29, 0xd4(r3) +/* 8018F8F4 0018C854 80 7F 00 2C */ lwz r3, 0x2c(r31) +/* 8018F8F8 0018C858 93 C3 00 CC */ stw r30, 0xcc(r3) +/* 8018F8FC 0018C85C E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0 +/* 8018F900 0018C860 CB E1 00 A0 */ lfd f31, 0xa0(r1) +/* 8018F904 0018C864 E3 C1 00 98 */ psq_l f30, 152(r1), 0, qr0 +/* 8018F908 0018C868 CB C1 00 90 */ lfd f30, 0x90(r1) +/* 8018F90C 0018C86C E3 A1 00 88 */ psq_l f29, 136(r1), 0, qr0 +/* 8018F910 0018C870 CB A1 00 80 */ lfd f29, 0x80(r1) +/* 8018F914 0018C874 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 8018F918 0018C878 83 C1 00 78 */ lwz r30, 0x78(r1) +/* 8018F91C 0018C87C 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 8018F920 0018C880 83 A1 00 74 */ lwz r29, 0x74(r1) +/* 8018F924 0018C884 7C 08 03 A6 */ mtlr r0 +/* 8018F928 0018C888 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 8018F92C 0018C88C 4E 80 00 20 */ blr + +.global SetEnergyLow__19CHudEnergyInterfaceFb +SetEnergyLow__19CHudEnergyInterfaceFb: +/* 8018F930 0018C890 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 8018F934 0018C894 7C 08 02 A6 */ mflr r0 +/* 8018F938 0018C898 90 01 00 54 */ stw r0, 0x54(r1) +/* 8018F93C 0018C89C 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 8018F940 0018C8A0 7C 9F 23 78 */ mr r31, r4 +/* 8018F944 0018C8A4 93 C1 00 48 */ stw r30, 0x48(r1) +/* 8018F948 0018C8A8 7C 7E 1B 78 */ mr r30, r3 +/* 8018F94C 0018C8AC 93 A1 00 44 */ stw r29, 0x44(r1) +/* 8018F950 0018C8B0 93 81 00 40 */ stw r28, 0x40(r1) +/* 8018F954 0018C8B4 88 03 00 1C */ lbz r0, 0x1c(r3) +/* 8018F958 0018C8B8 54 83 06 3E */ clrlwi r3, r4, 0x18 +/* 8018F95C 0018C8BC 54 00 E7 FE */ rlwinm r0, r0, 0x1c, 0x1f, 0x1f +/* 8018F960 0018C8C0 7C 03 00 40 */ cmplw r3, r0 +/* 8018F964 0018C8C4 41 82 00 D0 */ beq lbl_8018FA34 +/* 8018F968 0018C8C8 28 03 00 00 */ cmplwi r3, 0 +/* 8018F96C 0018C8CC 3B A0 00 00 */ li r29, 0 +/* 8018F970 0018C8D0 3B 80 00 00 */ li r28, 0 +/* 8018F974 0018C8D4 41 82 00 28 */ beq lbl_8018F99C +/* 8018F978 0018C8D8 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8018F97C 0018C8DC 38 80 00 09 */ li r4, 9 +/* 8018F980 0018C8E0 48 1C 6D 7D */ bl GetString__12CStringTableCFi +/* 8018F984 0018C8E4 7C 64 1B 78 */ mr r4, r3 +/* 8018F988 0018C8E8 38 61 00 1C */ addi r3, r1, 0x1c +/* 8018F98C 0018C8EC 4B E8 60 65 */ bl wstring_l__4rstlFPCw +/* 8018F990 0018C8F0 38 81 00 1C */ addi r4, r1, 0x1c +/* 8018F994 0018C8F4 3B A0 00 01 */ li r29, 1 +/* 8018F998 0018C8F8 48 00 00 18 */ b lbl_8018F9B0 +lbl_8018F99C: +/* 8018F99C 0018C8FC 38 61 00 0C */ addi r3, r1, 0xc +/* 8018F9A0 0018C900 38 8D 8F 10 */ addi r4, r13, lbl_805A7AD0@sda21 +/* 8018F9A4 0018C904 4B E8 60 4D */ bl wstring_l__4rstlFPCw +/* 8018F9A8 0018C908 3B 80 00 01 */ li r28, 1 +/* 8018F9AC 0018C90C 38 81 00 0C */ addi r4, r1, 0xc +lbl_8018F9B0: +/* 8018F9B0 0018C910 38 61 00 2C */ addi r3, r1, 0x2c +/* 8018F9B4 0018C914 48 1A DD D5 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8018F9B8 0018C918 7F 80 07 75 */ extsb. r0, r28 +/* 8018F9BC 0018C91C 41 82 00 0C */ beq lbl_8018F9C8 +/* 8018F9C0 0018C920 38 61 00 0C */ addi r3, r1, 0xc +/* 8018F9C4 0018C924 48 1A D7 71 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8018F9C8: +/* 8018F9C8 0018C928 7F A0 07 75 */ extsb. r0, r29 +/* 8018F9CC 0018C92C 41 82 00 0C */ beq lbl_8018F9D8 +/* 8018F9D0 0018C930 38 61 00 1C */ addi r3, r1, 0x1c +/* 8018F9D4 0018C934 48 1A D7 61 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8018F9D8: +/* 8018F9D8 0018C938 80 7E 00 28 */ lwz r3, 0x28(r30) +/* 8018F9DC 0018C93C 28 03 00 00 */ cmplwi r3, 0 +/* 8018F9E0 0018C940 41 82 00 14 */ beq lbl_8018F9F4 +/* 8018F9E4 0018C944 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 8018F9E8 0018C948 38 81 00 2C */ addi r4, r1, 0x2c +/* 8018F9EC 0018C94C 38 A0 00 00 */ li r5, 0 +/* 8018F9F0 0018C950 48 13 9E 95 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +lbl_8018F9F4: +/* 8018F9F4 0018C954 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 8018F9F8 0018C958 41 82 00 28 */ beq lbl_8018FA20 +/* 8018F9FC 0018C95C A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 8018FA00 0018C960 38 61 00 08 */ addi r3, r1, 8 +/* 8018FA04 0018C964 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8018FA08 0018C968 38 80 05 7D */ li r4, 0x57d +/* 8018FA0C 0018C96C 38 A0 00 7F */ li r5, 0x7f +/* 8018FA10 0018C970 38 C0 00 40 */ li r6, 0x40 +/* 8018FA14 0018C974 38 E0 00 00 */ li r7, 0 +/* 8018FA18 0018C978 39 20 00 00 */ li r9, 0 +/* 8018FA1C 0018C97C 48 15 A3 59 */ bl SfxStart__11CSfxManagerFUsssbsbi +lbl_8018FA20: +/* 8018FA20 0018C980 88 1E 00 1C */ lbz r0, 0x1c(r30) +/* 8018FA24 0018C984 53 E0 26 F6 */ rlwimi r0, r31, 4, 0x1b, 0x1b +/* 8018FA28 0018C988 38 61 00 2C */ addi r3, r1, 0x2c +/* 8018FA2C 0018C98C 98 1E 00 1C */ stb r0, 0x1c(r30) +/* 8018FA30 0018C990 48 1A D7 05 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8018FA34: +/* 8018FA34 0018C994 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8018FA38 0018C998 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 8018FA3C 0018C99C 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 8018FA40 0018C9A0 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 8018FA44 0018C9A4 83 81 00 40 */ lwz r28, 0x40(r1) +/* 8018FA48 0018C9A8 7C 08 03 A6 */ mtlr r0 +/* 8018FA4C 0018C9AC 38 21 00 50 */ addi r1, r1, 0x50 +/* 8018FA50 0018C9B0 4E 80 00 20 */ blr + +.global SetFlashMagnitude__19CHudEnergyInterfaceFf +SetFlashMagnitude__19CHudEnergyInterfaceFf: +/* 8018FA54 0018C9B4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8018FA58 0018C9B8 7C 08 02 A6 */ mflr r0 +/* 8018FA5C 0018C9BC 38 AD 8E FC */ addi r5, r13, lbl_805A7ABC@sda21 +/* 8018FA60 0018C9C0 90 01 00 24 */ stw r0, 0x24(r1) +/* 8018FA64 0018C9C4 38 81 00 08 */ addi r4, r1, 8 +/* 8018FA68 0018C9C8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8018FA6C 0018C9CC 7C 7F 1B 78 */ mr r31, r3 +/* 8018FA70 0018C9D0 38 6D 8E F8 */ addi r3, r13, lbl_805A7AB8@sda21 +/* 8018FA74 0018C9D4 D0 21 00 08 */ stfs f1, 8(r1) +/* 8018FA78 0018C9D8 4B E7 C8 3D */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8018FA7C 0018C9DC C0 03 00 00 */ lfs f0, 0(r3) +/* 8018FA80 0018C9E0 D0 1F 00 08 */ stfs f0, 8(r31) +/* 8018FA84 0018C9E4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8018FA88 0018C9E8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8018FA8C 0018C9EC 7C 08 03 A6 */ mtlr r0 +/* 8018FA90 0018C9F0 38 21 00 20 */ addi r1, r1, 0x20 +/* 8018FA94 0018C9F4 4E 80 00 20 */ blr + +.global SetNumFilledEnergyTanks__19CHudEnergyInterfaceFi +SetNumFilledEnergyTanks__19CHudEnergyInterfaceFi: +/* 8018FA98 0018C9F8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8018FA9C 0018C9FC 7C 08 02 A6 */ mflr r0 +/* 8018FAA0 0018CA00 90 01 00 14 */ stw r0, 0x14(r1) +/* 8018FAA4 0018CA04 90 83 00 14 */ stw r4, 0x14(r3) +/* 8018FAA8 0018CA08 80 63 00 24 */ lwz r3, 0x24(r3) +/* 8018FAAC 0018CA0C 48 13 14 9D */ bl SetRemainder__9CAuiMeteri +/* 8018FAB0 0018CA10 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8018FAB4 0018CA14 7C 08 03 A6 */ mtlr r0 +/* 8018FAB8 0018CA18 38 21 00 10 */ addi r1, r1, 0x10 +/* 8018FABC 0018CA1C 4E 80 00 20 */ blr + +.global SetNumTotalEnergyTanks__19CHudEnergyInterfaceFi +SetNumTotalEnergyTanks__19CHudEnergyInterfaceFi: +/* 8018FAC0 0018CA20 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8018FAC4 0018CA24 7C 08 02 A6 */ mflr r0 +/* 8018FAC8 0018CA28 90 01 00 14 */ stw r0, 0x14(r1) +/* 8018FACC 0018CA2C 90 83 00 10 */ stw r4, 0x10(r3) +/* 8018FAD0 0018CA30 80 63 00 24 */ lwz r3, 0x24(r3) +/* 8018FAD4 0018CA34 48 13 14 C1 */ bl SetCapacity__9CAuiMeterFi +/* 8018FAD8 0018CA38 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8018FADC 0018CA3C 7C 08 03 A6 */ mtlr r0 +/* 8018FAE0 0018CA40 38 21 00 10 */ addi r1, r1, 0x10 +/* 8018FAE4 0018CA44 4E 80 00 20 */ blr + +.global SetCurrEnergy__19CHudEnergyInterfaceFf +SetCurrEnergy__19CHudEnergyInterfaceFf: +/* 8018FAE8 0018CA48 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8018FAEC 0018CA4C 7C 08 02 A6 */ mflr r0 +/* 8018FAF0 0018CA50 C0 02 A4 98 */ lfs f0, lbl_805AC1B8@sda21(r2) +/* 8018FAF4 0018CA54 90 01 00 14 */ stw r0, 0x14(r1) +/* 8018FAF8 0018CA58 FC 00 08 00 */ fcmpu cr0, f0, f1 +/* 8018FAFC 0018CA5C D0 23 00 0C */ stfs f1, 0xc(r3) +/* 8018FB00 0018CA60 80 63 00 2C */ lwz r3, 0x2c(r3) +/* 8018FB04 0018CA64 40 82 00 0C */ bne lbl_8018FB10 +/* 8018FB08 0018CA68 38 80 00 02 */ li r4, 2 +/* 8018FB0C 0018CA6C 48 00 00 14 */ b lbl_8018FB20 +lbl_8018FB10: +/* 8018FB10 0018CA70 54 84 06 3E */ clrlwi r4, r4, 0x18 +/* 8018FB14 0018CA74 7C 04 00 D0 */ neg r0, r4 +/* 8018FB18 0018CA78 7C 00 23 78 */ or r0, r0, r4 +/* 8018FB1C 0018CA7C 54 04 0F FE */ srwi r4, r0, 0x1f +lbl_8018FB20: +/* 8018FB20 0018CA80 48 13 BD A9 */ bl SetCurrEnergy__16CAuiEnergyBarT01Ffb +/* 8018FB24 0018CA84 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8018FB28 0018CA88 7C 08 03 A6 */ mtlr r0 +/* 8018FB2C 0018CA8C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8018FB30 0018CA90 4E 80 00 20 */ blr + +.global __ct__19CHudEnergyInterfaceFR9CGuiFramefiibi +__ct__19CHudEnergyInterfaceFR9CGuiFramefiibi: +/* 8018FB34 0018CA94 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 8018FB38 0018CA98 7C 08 02 A6 */ mflr r0 +/* 8018FB3C 0018CA9C C0 02 A4 98 */ lfs f0, lbl_805AC1B8@sda21(r2) +/* 8018FB40 0018CAA0 90 01 00 94 */ stw r0, 0x94(r1) +/* 8018FB44 0018CAA4 BF 41 00 78 */ stmw r26, 0x78(r1) +/* 8018FB48 0018CAA8 7C 7E 1B 78 */ mr r30, r3 +/* 8018FB4C 0018CAAC 3C 60 80 3D */ lis r3, lbl_803D0948@ha +/* 8018FB50 0018CAB0 7C 9A 23 78 */ mr r26, r4 +/* 8018FB54 0018CAB4 3B E3 09 48 */ addi r31, r3, lbl_803D0948@l +/* 8018FB58 0018CAB8 38 61 00 58 */ addi r3, r1, 0x58 +/* 8018FB5C 0018CABC 38 9F 00 18 */ addi r4, r31, 0x18 +/* 8018FB60 0018CAC0 91 1E 00 00 */ stw r8, 0(r30) +/* 8018FB64 0018CAC4 39 00 00 01 */ li r8, 1 +/* 8018FB68 0018CAC8 D0 1E 00 04 */ stfs f0, 4(r30) +/* 8018FB6C 0018CACC D0 1E 00 08 */ stfs f0, 8(r30) +/* 8018FB70 0018CAD0 D0 3E 00 0C */ stfs f1, 0xc(r30) +/* 8018FB74 0018CAD4 90 BE 00 10 */ stw r5, 0x10(r30) +/* 8018FB78 0018CAD8 90 DE 00 14 */ stw r6, 0x14(r30) +/* 8018FB7C 0018CADC D0 1E 00 18 */ stfs f0, 0x18(r30) +/* 8018FB80 0018CAE0 88 1E 00 1C */ lbz r0, 0x1c(r30) +/* 8018FB84 0018CAE4 51 00 3E 30 */ rlwimi r0, r8, 7, 0x18, 0x18 +/* 8018FB88 0018CAE8 98 1E 00 1C */ stb r0, 0x1c(r30) +/* 8018FB8C 0018CAEC 88 1E 00 1C */ lbz r0, 0x1c(r30) +/* 8018FB90 0018CAF0 51 00 36 72 */ rlwimi r0, r8, 6, 0x19, 0x19 +/* 8018FB94 0018CAF4 98 1E 00 1C */ stb r0, 0x1c(r30) +/* 8018FB98 0018CAF8 88 1E 00 1C */ lbz r0, 0x1c(r30) +/* 8018FB9C 0018CAFC 51 00 2E B4 */ rlwimi r0, r8, 5, 0x1a, 0x1a +/* 8018FBA0 0018CB00 98 1E 00 1C */ stb r0, 0x1c(r30) +/* 8018FBA4 0018CB04 88 1E 00 1C */ lbz r0, 0x1c(r30) +/* 8018FBA8 0018CB08 50 E0 26 F6 */ rlwimi r0, r7, 4, 0x1b, 0x1b +/* 8018FBAC 0018CB0C 98 1E 00 1C */ stb r0, 0x1c(r30) +/* 8018FBB0 0018CB10 4B E7 51 09 */ bl string_l__4rstlFPCc +/* 8018FBB4 0018CB14 7F 43 D3 78 */ mr r3, r26 +/* 8018FBB8 0018CB18 38 81 00 58 */ addi r4, r1, 0x58 +/* 8018FBBC 0018CB1C 48 13 26 19 */ bl "FindWidget__9CGuiFrameCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8018FBC0 0018CB20 90 7E 00 20 */ stw r3, 0x20(r30) +/* 8018FBC4 0018CB24 38 61 00 58 */ addi r3, r1, 0x58 +/* 8018FBC8 0018CB28 48 1A DF 19 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8018FBCC 0018CB2C 38 61 00 48 */ addi r3, r1, 0x48 +/* 8018FBD0 0018CB30 38 9F 00 30 */ addi r4, r31, 0x30 +/* 8018FBD4 0018CB34 4B E7 50 E5 */ bl string_l__4rstlFPCc +/* 8018FBD8 0018CB38 7F 43 D3 78 */ mr r3, r26 +/* 8018FBDC 0018CB3C 38 81 00 48 */ addi r4, r1, 0x48 +/* 8018FBE0 0018CB40 48 13 25 F5 */ bl "FindWidget__9CGuiFrameCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8018FBE4 0018CB44 90 7E 00 24 */ stw r3, 0x24(r30) +/* 8018FBE8 0018CB48 38 61 00 48 */ addi r3, r1, 0x48 +/* 8018FBEC 0018CB4C 48 1A DE F5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8018FBF0 0018CB50 38 61 00 38 */ addi r3, r1, 0x38 +/* 8018FBF4 0018CB54 38 9F 00 44 */ addi r4, r31, 0x44 +/* 8018FBF8 0018CB58 4B E7 50 C1 */ bl string_l__4rstlFPCc +/* 8018FBFC 0018CB5C 7F 43 D3 78 */ mr r3, r26 +/* 8018FC00 0018CB60 38 81 00 38 */ addi r4, r1, 0x38 +/* 8018FC04 0018CB64 48 13 25 D1 */ bl "FindWidget__9CGuiFrameCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8018FC08 0018CB68 90 7E 00 28 */ stw r3, 0x28(r30) +/* 8018FC0C 0018CB6C 38 61 00 38 */ addi r3, r1, 0x38 +/* 8018FC10 0018CB70 48 1A DE D1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8018FC14 0018CB74 38 61 00 28 */ addi r3, r1, 0x28 +/* 8018FC18 0018CB78 38 9F 00 5C */ addi r4, r31, 0x5c +/* 8018FC1C 0018CB7C 4B E7 50 9D */ bl string_l__4rstlFPCc +/* 8018FC20 0018CB80 7F 43 D3 78 */ mr r3, r26 +/* 8018FC24 0018CB84 38 81 00 28 */ addi r4, r1, 0x28 +/* 8018FC28 0018CB88 48 13 25 AD */ bl "FindWidget__9CGuiFrameCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8018FC2C 0018CB8C 90 7E 00 2C */ stw r3, 0x2c(r30) +/* 8018FC30 0018CB90 38 61 00 28 */ addi r3, r1, 0x28 +/* 8018FC34 0018CB94 48 1A DE AD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8018FC38 0018CB98 80 FE 00 00 */ lwz r7, 0(r30) +/* 8018FC3C 0018CB9C 38 9F 00 C0 */ addi r4, r31, 0xc0 +/* 8018FC40 0018CBA0 80 CD A1 3C */ lwz r6, gpTweakGuiColors@sda21(r13) +/* 8018FC44 0018CBA4 38 BF 00 D4 */ addi r5, r31, 0xd4 +/* 8018FC48 0018CBA8 54 E0 10 3A */ slwi r0, r7, 2 +/* 8018FC4C 0018CBAC 80 7E 00 2C */ lwz r3, 0x2c(r30) +/* 8018FC50 0018CBB0 7C 04 00 2E */ lwzx r0, r4, r0 +/* 8018FC54 0018CBB4 1C 87 00 1C */ mulli r4, r7, 0x1c +/* 8018FC58 0018CBB8 90 03 00 D8 */ stw r0, 0xd8(r3) +/* 8018FC5C 0018CBBC 7F E6 22 14 */ add r31, r6, r4 +/* 8018FC60 0018CBC0 80 1E 00 00 */ lwz r0, 0(r30) +/* 8018FC64 0018CBC4 38 9F 01 DC */ addi r4, r31, 0x1dc +/* 8018FC68 0018CBC8 80 7E 00 2C */ lwz r3, 0x2c(r30) +/* 8018FC6C 0018CBCC 54 00 10 3A */ slwi r0, r0, 2 +/* 8018FC70 0018CBD0 7C 05 04 2E */ lfsx f0, r5, r0 +/* 8018FC74 0018CBD4 D0 03 00 DC */ stfs f0, 0xdc(r3) +/* 8018FC78 0018CBD8 80 7E 00 20 */ lwz r3, 0x20(r30) +/* 8018FC7C 0018CBDC 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 8018FC80 0018CBE0 48 13 99 E9 */ bl SetFontColor__15CGuiTextSupportFRC6CColor +/* 8018FC84 0018CBE4 80 7E 00 20 */ lwz r3, 0x20(r30) +/* 8018FC88 0018CBE8 38 9F 01 E0 */ addi r4, r31, 0x1e0 +/* 8018FC8C 0018CBEC 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 8018FC90 0018CBF0 48 13 99 89 */ bl SetOutlineColor__15CGuiTextSupportFRC6CColor +/* 8018FC94 0018CBF4 4B F0 1B 99 */ bl GetBaseHealthCapacity__12CPlayerStateFv +/* 8018FC98 0018CBF8 80 7E 00 2C */ lwz r3, 0x2c(r30) +/* 8018FC9C 0018CBFC 48 13 BC CD */ bl SetMaxEnergy__16CAuiEnergyBarT01Ff +/* 8018FCA0 0018CC00 80 1F 01 C8 */ lwz r0, 0x1c8(r31) +/* 8018FCA4 0018CC04 38 80 00 0E */ li r4, 0xe +/* 8018FCA8 0018CC08 80 7E 00 2C */ lwz r3, 0x2c(r30) +/* 8018FCAC 0018CC0C 90 03 00 D0 */ stw r0, 0xd0(r3) +/* 8018FCB0 0018CC10 80 1F 01 D0 */ lwz r0, 0x1d0(r31) +/* 8018FCB4 0018CC14 80 7E 00 2C */ lwz r3, 0x2c(r30) +/* 8018FCB8 0018CC18 90 03 00 D4 */ stw r0, 0xd4(r3) +/* 8018FCBC 0018CC1C 80 1F 01 CC */ lwz r0, 0x1cc(r31) +/* 8018FCC0 0018CC20 80 7E 00 2C */ lwz r3, 0x2c(r30) +/* 8018FCC4 0018CC24 90 03 00 CC */ stw r0, 0xcc(r3) +/* 8018FCC8 0018CC28 80 AD A1 38 */ lwz r5, gpTweakGui@sda21(r13) +/* 8018FCCC 0018CC2C 80 7E 00 2C */ lwz r3, 0x2c(r30) +/* 8018FCD0 0018CC30 C0 05 00 34 */ lfs f0, 0x34(r5) +/* 8018FCD4 0018CC34 D0 03 00 E4 */ stfs f0, 0xe4(r3) +/* 8018FCD8 0018CC38 80 AD A1 38 */ lwz r5, gpTweakGui@sda21(r13) +/* 8018FCDC 0018CC3C 80 7E 00 2C */ lwz r3, 0x2c(r30) +/* 8018FCE0 0018CC40 C0 05 00 38 */ lfs f0, 0x38(r5) +/* 8018FCE4 0018CC44 D0 03 00 E8 */ stfs f0, 0xe8(r3) +/* 8018FCE8 0018CC48 80 AD A1 38 */ lwz r5, gpTweakGui@sda21(r13) +/* 8018FCEC 0018CC4C 80 7E 00 2C */ lwz r3, 0x2c(r30) +/* 8018FCF0 0018CC50 C0 05 00 3C */ lfs f0, 0x3c(r5) +/* 8018FCF4 0018CC54 D0 03 00 EC */ stfs f0, 0xec(r3) +/* 8018FCF8 0018CC58 80 AD A1 38 */ lwz r5, gpTweakGui@sda21(r13) +/* 8018FCFC 0018CC5C 80 7E 00 2C */ lwz r3, 0x2c(r30) +/* 8018FD00 0018CC60 88 05 00 40 */ lbz r0, 0x40(r5) +/* 8018FD04 0018CC64 98 03 00 F0 */ stb r0, 0xf0(r3) +/* 8018FD08 0018CC68 80 7E 00 24 */ lwz r3, 0x24(r30) +/* 8018FD0C 0018CC6C 48 13 12 F9 */ bl SetMaxCapacity__9CAuiMeterFi +/* 8018FD10 0018CC70 80 7E 00 28 */ lwz r3, 0x28(r30) +/* 8018FD14 0018CC74 28 03 00 00 */ cmplwi r3, 0 +/* 8018FD18 0018CC78 41 82 00 B8 */ beq lbl_8018FDD0 +/* 8018FD1C 0018CC7C 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 8018FD20 0018CC80 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 8018FD24 0018CC84 38 84 00 5C */ addi r4, r4, 0x5c +/* 8018FD28 0018CC88 48 13 99 41 */ bl SetFontColor__15CGuiTextSupportFRC6CColor +/* 8018FD2C 0018CC8C 80 7E 00 28 */ lwz r3, 0x28(r30) +/* 8018FD30 0018CC90 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 8018FD34 0018CC94 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 8018FD38 0018CC98 38 84 00 B4 */ addi r4, r4, 0xb4 +/* 8018FD3C 0018CC9C 48 13 98 DD */ bl SetOutlineColor__15CGuiTextSupportFRC6CColor +/* 8018FD40 0018CCA0 88 1E 00 1C */ lbz r0, 0x1c(r30) +/* 8018FD44 0018CCA4 3B 40 00 00 */ li r26, 0 +/* 8018FD48 0018CCA8 3B 60 00 00 */ li r27, 0 +/* 8018FD4C 0018CCAC 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 8018FD50 0018CCB0 41 82 00 28 */ beq lbl_8018FD78 +/* 8018FD54 0018CCB4 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8018FD58 0018CCB8 38 80 00 09 */ li r4, 9 +/* 8018FD5C 0018CCBC 48 1C 69 A1 */ bl GetString__12CStringTableCFi +/* 8018FD60 0018CCC0 7C 64 1B 78 */ mr r4, r3 +/* 8018FD64 0018CCC4 38 61 00 18 */ addi r3, r1, 0x18 +/* 8018FD68 0018CCC8 4B E8 5C 89 */ bl wstring_l__4rstlFPCw +/* 8018FD6C 0018CCCC 38 81 00 18 */ addi r4, r1, 0x18 +/* 8018FD70 0018CCD0 3B 40 00 01 */ li r26, 1 +/* 8018FD74 0018CCD4 48 00 00 18 */ b lbl_8018FD8C +lbl_8018FD78: +/* 8018FD78 0018CCD8 38 61 00 08 */ addi r3, r1, 8 +/* 8018FD7C 0018CCDC 38 8D 8F 10 */ addi r4, r13, lbl_805A7AD0@sda21 +/* 8018FD80 0018CCE0 4B E8 5C 71 */ bl wstring_l__4rstlFPCw +/* 8018FD84 0018CCE4 3B 60 00 01 */ li r27, 1 +/* 8018FD88 0018CCE8 38 81 00 08 */ addi r4, r1, 8 +lbl_8018FD8C: +/* 8018FD8C 0018CCEC 38 61 00 68 */ addi r3, r1, 0x68 +/* 8018FD90 0018CCF0 48 1A D9 F9 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8018FD94 0018CCF4 7F 60 07 75 */ extsb. r0, r27 +/* 8018FD98 0018CCF8 41 82 00 0C */ beq lbl_8018FDA4 +/* 8018FD9C 0018CCFC 38 61 00 08 */ addi r3, r1, 8 +/* 8018FDA0 0018CD00 48 1A D3 95 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8018FDA4: +/* 8018FDA4 0018CD04 7F 40 07 75 */ extsb. r0, r26 +/* 8018FDA8 0018CD08 41 82 00 0C */ beq lbl_8018FDB4 +/* 8018FDAC 0018CD0C 38 61 00 18 */ addi r3, r1, 0x18 +/* 8018FDB0 0018CD10 48 1A D3 85 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8018FDB4: +/* 8018FDB4 0018CD14 80 7E 00 28 */ lwz r3, 0x28(r30) +/* 8018FDB8 0018CD18 38 81 00 68 */ addi r4, r1, 0x68 +/* 8018FDBC 0018CD1C 38 A0 00 00 */ li r5, 0 +/* 8018FDC0 0018CD20 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 8018FDC4 0018CD24 48 13 9A C1 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8018FDC8 0018CD28 38 61 00 68 */ addi r3, r1, 0x68 +/* 8018FDCC 0018CD2C 48 1A D3 69 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8018FDD0: +/* 8018FDD0 0018CD30 3B 9F 01 D4 */ addi r28, r31, 0x1d4 +/* 8018FDD4 0018CD34 3B 7F 01 D8 */ addi r27, r31, 0x1d8 +/* 8018FDD8 0018CD38 3B 40 00 00 */ li r26, 0 +lbl_8018FDDC: +/* 8018FDDC 0018CD3C 80 7E 00 24 */ lwz r3, 0x24(r30) +/* 8018FDE0 0018CD40 7F 44 D3 78 */ mr r4, r26 +/* 8018FDE4 0018CD44 81 83 00 00 */ lwz r12, 0(r3) +/* 8018FDE8 0018CD48 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 8018FDEC 0018CD4C 7D 89 03 A6 */ mtctr r12 +/* 8018FDF0 0018CD50 4E 80 04 21 */ bctrl +/* 8018FDF4 0018CD54 81 83 00 00 */ lwz r12, 0(r3) +/* 8018FDF8 0018CD58 7C 60 1B 78 */ mr r0, r3 +/* 8018FDFC 0018CD5C 38 80 00 00 */ li r4, 0 +/* 8018FE00 0018CD60 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 8018FE04 0018CD64 7C 1D 03 78 */ mr r29, r0 +/* 8018FE08 0018CD68 7D 89 03 A6 */ mtctr r12 +/* 8018FE0C 0018CD6C 4E 80 04 21 */ bctrl +/* 8018FE10 0018CD70 81 9D 00 00 */ lwz r12, 0(r29) +/* 8018FE14 0018CD74 7C 7F 1B 78 */ mr r31, r3 +/* 8018FE18 0018CD78 7F A3 EB 78 */ mr r3, r29 +/* 8018FE1C 0018CD7C 38 80 00 01 */ li r4, 1 +/* 8018FE20 0018CD80 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 8018FE24 0018CD84 7D 89 03 A6 */ mtctr r12 +/* 8018FE28 0018CD88 4E 80 04 21 */ bctrl +/* 8018FE2C 0018CD8C 28 1F 00 00 */ cmplwi r31, 0 +/* 8018FE30 0018CD90 7C 7D 1B 78 */ mr r29, r3 +/* 8018FE34 0018CD94 41 82 00 10 */ beq lbl_8018FE44 +/* 8018FE38 0018CD98 7F E3 FB 78 */ mr r3, r31 +/* 8018FE3C 0018CD9C 7F 84 E3 78 */ mr r4, r28 +/* 8018FE40 0018CDA0 48 13 AA 2D */ bl SetColor__10CGuiWidgetFRC6CColor +lbl_8018FE44: +/* 8018FE44 0018CDA4 28 1D 00 00 */ cmplwi r29, 0 +/* 8018FE48 0018CDA8 41 82 00 10 */ beq lbl_8018FE58 +/* 8018FE4C 0018CDAC 7F A3 EB 78 */ mr r3, r29 +/* 8018FE50 0018CDB0 7F 64 DB 78 */ mr r4, r27 +/* 8018FE54 0018CDB4 48 13 AA 19 */ bl SetColor__10CGuiWidgetFRC6CColor +lbl_8018FE58: +/* 8018FE58 0018CDB8 3B 5A 00 01 */ addi r26, r26, 1 +/* 8018FE5C 0018CDBC 2C 1A 00 0E */ cmpwi r26, 0xe +/* 8018FE60 0018CDC0 41 80 FF 7C */ blt lbl_8018FDDC +/* 8018FE64 0018CDC4 7F C3 F3 78 */ mr r3, r30 +/* 8018FE68 0018CDC8 BB 41 00 78 */ lmw r26, 0x78(r1) +/* 8018FE6C 0018CDCC 80 01 00 94 */ lwz r0, 0x94(r1) +/* 8018FE70 0018CDD0 7C 08 03 A6 */ mtlr r0 +/* 8018FE74 0018CDD4 38 21 00 90 */ addi r1, r1, 0x90 +/* 8018FE78 0018CDD8 4E 80 00 20 */ blr + +.global XRayEnergyCoordFunc__19CHudEnergyInterfaceFf +XRayEnergyCoordFunc__19CHudEnergyInterfaceFf: +/* 8018FE7C 0018CDDC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8018FE80 0018CDE0 7C 08 02 A6 */ mflr r0 +/* 8018FE84 0018CDE4 90 01 00 34 */ stw r0, 0x34(r1) +/* 8018FE88 0018CDE8 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 8018FE8C 0018CDEC F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 8018FE90 0018CDF0 DB C1 00 10 */ stfd f30, 0x10(r1) +/* 8018FE94 0018CDF4 F3 C1 00 18 */ psq_st f30, 24(r1), 0, qr0 +/* 8018FE98 0018CDF8 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8018FE9C 0018CDFC C0 42 A4 C0 */ lfs f2, lbl_805AC1E0@sda21(r2) +/* 8018FEA0 0018CE00 7C 7F 1B 78 */ mr r31, r3 +/* 8018FEA4 0018CE04 C0 02 A4 BC */ lfs f0, lbl_805AC1DC@sda21(r2) +/* 8018FEA8 0018CE08 EF C2 00 7C */ fnmsubs f30, f2, f1, f0 +/* 8018FEAC 0018CE0C FC 20 F0 90 */ fmr f1, f30 +/* 8018FEB0 0018CE10 48 18 4E 95 */ bl FastCosR__5CMathFf +/* 8018FEB4 0018CE14 FF E0 08 90 */ fmr f31, f1 +/* 8018FEB8 0018CE18 FC 20 F0 90 */ fmr f1, f30 +/* 8018FEBC 0018CE1C 48 18 4F 35 */ bl FastSinR__5CMathFf +/* 8018FEC0 0018CE20 C0 42 A4 C4 */ lfs f2, lbl_805AC1E4@sda21(r2) +/* 8018FEC4 0018CE24 C0 82 A4 98 */ lfs f4, lbl_805AC1B8@sda21(r2) +/* 8018FEC8 0018CE28 EC A2 07 F2 */ fmuls f5, f2, f31 +/* 8018FECC 0018CE2C C0 02 A4 C8 */ lfs f0, lbl_805AC1E8@sda21(r2) +/* 8018FED0 0018CE30 EC 62 00 72 */ fmuls f3, f2, f1 +/* 8018FED4 0018CE34 EC 40 07 F2 */ fmuls f2, f0, f31 +/* 8018FED8 0018CE38 D0 BF 00 00 */ stfs f5, 0(r31) +/* 8018FEDC 0018CE3C EC 00 00 72 */ fmuls f0, f0, f1 +/* 8018FEE0 0018CE40 D0 9F 00 04 */ stfs f4, 4(r31) +/* 8018FEE4 0018CE44 D0 7F 00 08 */ stfs f3, 8(r31) +/* 8018FEE8 0018CE48 D0 5F 00 0C */ stfs f2, 0xc(r31) +/* 8018FEEC 0018CE4C D0 9F 00 10 */ stfs f4, 0x10(r31) +/* 8018FEF0 0018CE50 D0 1F 00 14 */ stfs f0, 0x14(r31) +/* 8018FEF4 0018CE54 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 8018FEF8 0018CE58 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 8018FEFC 0018CE5C E3 C1 00 18 */ psq_l f30, 24(r1), 0, qr0 +/* 8018FF00 0018CE60 CB C1 00 10 */ lfd f30, 0x10(r1) +/* 8018FF04 0018CE64 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8018FF08 0018CE68 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8018FF0C 0018CE6C 7C 08 03 A6 */ mtlr r0 +/* 8018FF10 0018CE70 38 21 00 30 */ addi r1, r1, 0x30 +/* 8018FF14 0018CE74 4E 80 00 20 */ blr + +.global ThermalEnergyCoordFunc__19CHudEnergyInterfaceFf +ThermalEnergyCoordFunc__19CHudEnergyInterfaceFf: +/* 8018FF18 0018CE78 C0 02 A4 CC */ lfs f0, lbl_805AC1EC@sda21(r2) +/* 8018FF1C 0018CE7C C0 42 A4 98 */ lfs f2, lbl_805AC1B8@sda21(r2) +/* 8018FF20 0018CE80 EC 20 00 72 */ fmuls f1, f0, f1 +/* 8018FF24 0018CE84 C0 02 A4 D0 */ lfs f0, lbl_805AC1F0@sda21(r2) +/* 8018FF28 0018CE88 D0 23 00 00 */ stfs f1, 0(r3) +/* 8018FF2C 0018CE8C D0 43 00 04 */ stfs f2, 4(r3) +/* 8018FF30 0018CE90 D0 43 00 08 */ stfs f2, 8(r3) +/* 8018FF34 0018CE94 D0 23 00 0C */ stfs f1, 0xc(r3) +/* 8018FF38 0018CE98 D0 43 00 10 */ stfs f2, 0x10(r3) +/* 8018FF3C 0018CE9C D0 03 00 14 */ stfs f0, 0x14(r3) +/* 8018FF40 0018CEA0 4E 80 00 20 */ blr + +.global BallEnergyCoordFunc__19CHudEnergyInterfaceFf +BallEnergyCoordFunc__19CHudEnergyInterfaceFf: +/* 8018FF44 0018CEA4 C0 02 A4 D4 */ lfs f0, lbl_805AC1F4@sda21(r2) +/* 8018FF48 0018CEA8 C0 42 A4 98 */ lfs f2, lbl_805AC1B8@sda21(r2) +/* 8018FF4C 0018CEAC EC 20 00 72 */ fmuls f1, f0, f1 +/* 8018FF50 0018CEB0 C0 02 A4 D8 */ lfs f0, lbl_805AC1F8@sda21(r2) +/* 8018FF54 0018CEB4 D0 23 00 00 */ stfs f1, 0(r3) +/* 8018FF58 0018CEB8 D0 43 00 04 */ stfs f2, 4(r3) +/* 8018FF5C 0018CEBC D0 43 00 08 */ stfs f2, 8(r3) +/* 8018FF60 0018CEC0 D0 23 00 0C */ stfs f1, 0xc(r3) +/* 8018FF64 0018CEC4 D0 43 00 10 */ stfs f2, 0x10(r3) +/* 8018FF68 0018CEC8 D0 03 00 14 */ stfs f0, 0x14(r3) +/* 8018FF6C 0018CECC 4E 80 00 20 */ blr + +.global BossEnergyCoordFunc__23CHudBossEnergyInterfaceFf +BossEnergyCoordFunc__23CHudBossEnergyInterfaceFf: +/* 8018FF70 0018CED0 C0 62 A4 DC */ lfs f3, lbl_805AC1FC@sda21(r2) +/* 8018FF74 0018CED4 C0 02 A4 E0 */ lfs f0, lbl_805AC200@sda21(r2) +/* 8018FF78 0018CED8 C0 42 A4 98 */ lfs f2, lbl_805AC1B8@sda21(r2) +/* 8018FF7C 0018CEDC EC 23 00 78 */ fmsubs f1, f3, f1, f0 +/* 8018FF80 0018CEE0 C0 02 A4 B8 */ lfs f0, lbl_805AC1D8@sda21(r2) +/* 8018FF84 0018CEE4 D0 23 00 00 */ stfs f1, 0(r3) +/* 8018FF88 0018CEE8 D0 43 00 04 */ stfs f2, 4(r3) +/* 8018FF8C 0018CEEC D0 43 00 08 */ stfs f2, 8(r3) +/* 8018FF90 0018CEF0 D0 23 00 0C */ stfs f1, 0xc(r3) +/* 8018FF94 0018CEF4 D0 43 00 10 */ stfs f2, 0x10(r3) +/* 8018FF98 0018CEF8 D0 03 00 14 */ stfs f0, 0x14(r3) +/* 8018FF9C 0018CEFC 4E 80 00 20 */ blr + +.global CombatEnergyCoordFunc__19CHudEnergyInterfaceFf +CombatEnergyCoordFunc__19CHudEnergyInterfaceFf: +/* 8018FFA0 0018CF00 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8018FFA4 0018CF04 7C 08 02 A6 */ mflr r0 +/* 8018FFA8 0018CF08 90 01 00 34 */ stw r0, 0x34(r1) +/* 8018FFAC 0018CF0C DB E1 00 20 */ stfd f31, 0x20(r1) +/* 8018FFB0 0018CF10 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 8018FFB4 0018CF14 DB C1 00 10 */ stfd f30, 0x10(r1) +/* 8018FFB8 0018CF18 F3 C1 00 18 */ psq_st f30, 24(r1), 0, qr0 +/* 8018FFBC 0018CF1C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8018FFC0 0018CF20 C0 42 A4 E8 */ lfs f2, lbl_805AC208@sda21(r2) +/* 8018FFC4 0018CF24 7C 7F 1B 78 */ mr r31, r3 +/* 8018FFC8 0018CF28 C0 02 A4 E4 */ lfs f0, lbl_805AC204@sda21(r2) +/* 8018FFCC 0018CF2C EF E2 00 7A */ fmadds f31, f2, f1, f0 +/* 8018FFD0 0018CF30 FC 20 F8 90 */ fmr f1, f31 +/* 8018FFD4 0018CF34 48 18 4E 1D */ bl FastSinR__5CMathFf +/* 8018FFD8 0018CF38 C0 02 A4 EC */ lfs f0, lbl_805AC20C@sda21(r2) +/* 8018FFDC 0018CF3C EF C0 00 72 */ fmuls f30, f0, f1 +/* 8018FFE0 0018CF40 FC 20 F8 90 */ fmr f1, f31 +/* 8018FFE4 0018CF44 48 18 4D 61 */ bl FastCosR__5CMathFf +/* 8018FFE8 0018CF48 C0 42 A4 EC */ lfs f2, lbl_805AC20C@sda21(r2) +/* 8018FFEC 0018CF4C C0 02 A4 F0 */ lfs f0, lbl_805AC210@sda21(r2) +/* 8018FFF0 0018CF50 D3 DF 00 00 */ stfs f30, 0(r31) +/* 8018FFF4 0018CF54 EC 42 00 7A */ fmadds f2, f2, f1, f0 +/* 8018FFF8 0018CF58 C0 22 A4 B8 */ lfs f1, lbl_805AC1D8@sda21(r2) +/* 8018FFFC 0018CF5C C0 02 A4 98 */ lfs f0, lbl_805AC1B8@sda21(r2) +/* 80190000 0018CF60 D0 5F 00 04 */ stfs f2, 4(r31) +/* 80190004 0018CF64 D0 3F 00 08 */ stfs f1, 8(r31) +/* 80190008 0018CF68 D3 DF 00 0C */ stfs f30, 0xc(r31) +/* 8019000C 0018CF6C D0 5F 00 10 */ stfs f2, 0x10(r31) +/* 80190010 0018CF70 D0 1F 00 14 */ stfs f0, 0x14(r31) +/* 80190014 0018CF74 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 80190018 0018CF78 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 8019001C 0018CF7C E3 C1 00 18 */ psq_l f30, 24(r1), 0, qr0 +/* 80190020 0018CF80 CB C1 00 10 */ lfd f30, 0x10(r1) +/* 80190024 0018CF84 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80190028 0018CF88 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8019002C 0018CF8C 7C 08 03 A6 */ mtlr r0 +/* 80190030 0018CF90 38 21 00 30 */ addi r1, r1, 0x30 + +.global sub_80190034 +sub_80190034: +/* 80190034 0018CF94 4E 80 00 20 */ blr + +.global __dt__21CHudFreeLookInterfaceFv +__dt__21CHudFreeLookInterfaceFv: +/* 80190038 0018CF98 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8019003C 0018CF9C 7C 08 02 A6 */ mflr r0 +/* 80190040 0018CFA0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80190044 0018CFA4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80190048 0018CFA8 7C 7F 1B 79 */ or. r31, r3, r3 +/* 8019004C 0018CFAC 41 82 00 30 */ beq lbl_8019007C +/* 80190050 0018CFB0 3C 60 80 3E */ lis r3, lbl_803E4470@ha +/* 80190054 0018CFB4 38 03 44 70 */ addi r0, r3, lbl_803E4470@l +/* 80190058 0018CFB8 90 1F 00 00 */ stw r0, 0(r31) +/* 8019005C 0018CFBC 41 82 00 10 */ beq lbl_8019006C +/* 80190060 0018CFC0 3C 60 80 3E */ lis r3, lbl_803DA2E8@ha +/* 80190064 0018CFC4 38 03 A2 E8 */ addi r0, r3, lbl_803DA2E8@l +/* 80190068 0018CFC8 90 1F 00 00 */ stw r0, 0(r31) +lbl_8019006C: +/* 8019006C 0018CFCC 7C 80 07 35 */ extsh. r0, r4 +/* 80190070 0018CFD0 40 81 00 0C */ ble lbl_8019007C +/* 80190074 0018CFD4 7F E3 FB 78 */ mr r3, r31 +/* 80190078 0018CFD8 48 18 58 B9 */ bl Free__7CMemoryFPCv +lbl_8019007C: +/* 8019007C 0018CFDC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80190080 0018CFE0 7F E3 FB 78 */ mr r3, r31 +/* 80190084 0018CFE4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80190088 0018CFE8 7C 08 03 A6 */ mtlr r0 +/* 8019008C 0018CFEC 38 21 00 10 */ addi r1, r1, 0x10 +/* 80190090 0018CFF0 4E 80 00 20 */ blr + +.global Update__21CHudFreeLookInterfaceFf +Update__21CHudFreeLookInterfaceFf: +/* 80190094 0018CFF4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80190098 0018CFF8 88 03 00 70 */ lbz r0, 0x70(r3) +/* 8019009C 0018CFFC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801900A0 0018D000 41 82 00 40 */ beq lbl_801900E0 +/* 801900A4 0018D004 80 8D A1 38 */ lwz r4, gpTweakGui@sda21(r13) +/* 801900A8 0018D008 C0 63 00 68 */ lfs f3, 0x68(r3) +/* 801900AC 0018D00C C0 44 01 18 */ lfs f2, 0x118(r4) +/* 801900B0 0018D010 C0 0D 8F 20 */ lfs f0, lbl_805A7AE0@sda21(r13) +/* 801900B4 0018D014 EC 41 10 24 */ fdivs f2, f1, f2 +/* 801900B8 0018D018 EC 43 10 2A */ fadds f2, f3, f2 +/* 801900BC 0018D01C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801900C0 0018D020 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801900C4 0018D024 40 80 00 0C */ bge lbl_801900D0 +/* 801900C8 0018D028 38 81 00 14 */ addi r4, r1, 0x14 +/* 801900CC 0018D02C 48 00 00 08 */ b lbl_801900D4 +lbl_801900D0: +/* 801900D0 0018D030 38 8D 8F 20 */ addi r4, r13, lbl_805A7AE0@sda21 +lbl_801900D4: +/* 801900D4 0018D034 C0 04 00 00 */ lfs f0, 0(r4) +/* 801900D8 0018D038 D0 03 00 68 */ stfs f0, 0x68(r3) +/* 801900DC 0018D03C 48 00 00 3C */ b lbl_80190118 +lbl_801900E0: +/* 801900E0 0018D040 80 8D A1 38 */ lwz r4, gpTweakGui@sda21(r13) +/* 801900E4 0018D044 C0 63 00 68 */ lfs f3, 0x68(r3) +/* 801900E8 0018D048 C0 44 01 18 */ lfs f2, 0x118(r4) +/* 801900EC 0018D04C C0 0D 8F 24 */ lfs f0, lbl_805A7AE4@sda21(r13) +/* 801900F0 0018D050 EC 41 10 24 */ fdivs f2, f1, f2 +/* 801900F4 0018D054 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801900F8 0018D058 FC 00 10 40 */ fcmpo cr0, f0, f2 +/* 801900FC 0018D05C D0 41 00 10 */ stfs f2, 0x10(r1) +/* 80190100 0018D060 40 80 00 0C */ bge lbl_8019010C +/* 80190104 0018D064 38 81 00 10 */ addi r4, r1, 0x10 +/* 80190108 0018D068 48 00 00 08 */ b lbl_80190110 +lbl_8019010C: +/* 8019010C 0018D06C 38 8D 8F 24 */ addi r4, r13, lbl_805A7AE4@sda21 +lbl_80190110: +/* 80190110 0018D070 C0 04 00 00 */ lfs f0, 0(r4) +/* 80190114 0018D074 D0 03 00 68 */ stfs f0, 0x68(r3) +lbl_80190118: +/* 80190118 0018D078 88 03 00 70 */ lbz r0, 0x70(r3) +/* 8019011C 0018D07C 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 80190120 0018D080 41 82 00 44 */ beq lbl_80190164 +/* 80190124 0018D084 80 03 00 04 */ lwz r0, 4(r3) +/* 80190128 0018D088 2C 00 00 01 */ cmpwi r0, 1 +/* 8019012C 0018D08C 40 82 00 38 */ bne lbl_80190164 +/* 80190130 0018D090 C0 62 A4 F8 */ lfs f3, lbl_805AC218@sda21(r2) +/* 80190134 0018D094 C0 43 00 6C */ lfs f2, 0x6c(r3) +/* 80190138 0018D098 C0 0D 8F 28 */ lfs f0, lbl_805A7AE8@sda21(r13) +/* 8019013C 0018D09C EC 23 10 7A */ fmadds f1, f3, f1, f2 +/* 80190140 0018D0A0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80190144 0018D0A4 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 80190148 0018D0A8 40 80 00 0C */ bge lbl_80190154 +/* 8019014C 0018D0AC 38 81 00 0C */ addi r4, r1, 0xc +/* 80190150 0018D0B0 48 00 00 08 */ b lbl_80190158 +lbl_80190154: +/* 80190154 0018D0B4 38 8D 8F 28 */ addi r4, r13, lbl_805A7AE8@sda21 +lbl_80190158: +/* 80190158 0018D0B8 C0 04 00 00 */ lfs f0, 0(r4) +/* 8019015C 0018D0BC D0 03 00 6C */ stfs f0, 0x6c(r3) +/* 80190160 0018D0C0 48 00 00 34 */ b lbl_80190194 +lbl_80190164: +/* 80190164 0018D0C4 C0 62 A4 F8 */ lfs f3, lbl_805AC218@sda21(r2) +/* 80190168 0018D0C8 C0 43 00 6C */ lfs f2, 0x6c(r3) +/* 8019016C 0018D0CC C0 0D 8F 2C */ lfs f0, lbl_805A7AEC@sda21(r13) +/* 80190170 0018D0D0 EC 23 10 7C */ fnmsubs f1, f3, f1, f2 +/* 80190174 0018D0D4 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80190178 0018D0D8 D0 21 00 08 */ stfs f1, 8(r1) +/* 8019017C 0018D0DC 40 80 00 0C */ bge lbl_80190188 +/* 80190180 0018D0E0 38 81 00 08 */ addi r4, r1, 8 +/* 80190184 0018D0E4 48 00 00 08 */ b lbl_8019018C +lbl_80190188: +/* 80190188 0018D0E8 38 8D 8F 2C */ addi r4, r13, lbl_805A7AEC@sda21 +lbl_8019018C: +/* 8019018C 0018D0EC C0 04 00 00 */ lfs f0, 0(r4) +/* 80190190 0018D0F0 D0 03 00 6C */ stfs f0, 0x6c(r3) +lbl_80190194: +/* 80190194 0018D0F4 38 21 00 20 */ addi r1, r1, 0x20 + +.global sub_80190198 +sub_80190198: +/* 80190198 0018D0F8 4E 80 00 20 */ blr + +.global UpdateVisibility__21CHudFreeLookInterfaceFv +UpdateVisibility__21CHudFreeLookInterfaceFv: +/* 8019019C 0018D0FC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801901A0 0018D100 7C 08 02 A6 */ mflr r0 +/* 801901A4 0018D104 90 01 00 24 */ stw r0, 0x24(r1) +/* 801901A8 0018D108 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801901AC 0018D10C 3B E0 00 00 */ li r31, 0 +/* 801901B0 0018D110 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801901B4 0018D114 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801901B8 0018D118 7C 7D 1B 78 */ mr r29, r3 +/* 801901BC 0018D11C 88 63 00 70 */ lbz r3, 0x70(r3) +/* 801901C0 0018D120 54 60 EF FF */ rlwinm. r0, r3, 0x1d, 0x1f, 0x1f +/* 801901C4 0018D124 41 82 00 10 */ beq lbl_801901D4 +/* 801901C8 0018D128 54 60 E7 FF */ rlwinm. r0, r3, 0x1c, 0x1f, 0x1f +/* 801901CC 0018D12C 41 82 00 08 */ beq lbl_801901D4 +/* 801901D0 0018D130 3B E0 00 01 */ li r31, 1 +lbl_801901D4: +/* 801901D4 0018D134 57 FE 06 3E */ clrlwi r30, r31, 0x18 +/* 801901D8 0018D138 80 7D 00 74 */ lwz r3, 0x74(r29) +/* 801901DC 0018D13C 7F C4 F3 78 */ mr r4, r30 +/* 801901E0 0018D140 38 A0 00 01 */ li r5, 1 +/* 801901E4 0018D144 48 13 A5 05 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 801901E8 0018D148 80 7D 00 80 */ lwz r3, 0x80(r29) +/* 801901EC 0018D14C 7F C4 F3 78 */ mr r4, r30 +/* 801901F0 0018D150 38 A0 00 01 */ li r5, 1 +/* 801901F4 0018D154 48 13 A4 F5 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 801901F8 0018D158 7F C0 F3 79 */ or. r0, r30, r30 +/* 801901FC 0018D15C 41 82 00 1C */ beq lbl_80190218 +/* 80190200 0018D160 7F A3 EB 78 */ mr r3, r29 +/* 80190204 0018D164 C0 22 A4 FC */ lfs f1, lbl_805AC21C@sda21(r2) +/* 80190208 0018D168 81 9D 00 00 */ lwz r12, 0(r29) +/* 8019020C 0018D16C 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 80190210 0018D170 7D 89 03 A6 */ mtctr r12 +/* 80190214 0018D174 4E 80 04 21 */ bctrl +lbl_80190218: +/* 80190218 0018D178 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8019021C 0018D17C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80190220 0018D180 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80190224 0018D184 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80190228 0018D188 7C 08 03 A6 */ mtlr r0 +/* 8019022C 0018D18C 38 21 00 20 */ addi r1, r1, 0x20 +/* 80190230 0018D190 4E 80 00 20 */ blr + +.global SetIsVisibleGame__21CHudFreeLookInterfaceFb +SetIsVisibleGame__21CHudFreeLookInterfaceFb: +/* 80190234 0018D194 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80190238 0018D198 7C 08 02 A6 */ mflr r0 +/* 8019023C 0018D19C 90 01 00 14 */ stw r0, 0x14(r1) +/* 80190240 0018D1A0 88 03 00 70 */ lbz r0, 0x70(r3) +/* 80190244 0018D1A4 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c +/* 80190248 0018D1A8 98 03 00 70 */ stb r0, 0x70(r3) +/* 8019024C 0018D1AC 4B FF FF 51 */ bl UpdateVisibility__21CHudFreeLookInterfaceFv +/* 80190250 0018D1B0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80190254 0018D1B4 7C 08 03 A6 */ mtlr r0 +/* 80190258 0018D1B8 38 21 00 10 */ addi r1, r1, 0x10 +/* 8019025C 0018D1BC 4E 80 00 20 */ blr + +.global SetIsVisibleDebug__21CHudFreeLookInterfaceFb +SetIsVisibleDebug__21CHudFreeLookInterfaceFb: +/* 80190260 0018D1C0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80190264 0018D1C4 7C 08 02 A6 */ mflr r0 +/* 80190268 0018D1C8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8019026C 0018D1CC 88 03 00 70 */ lbz r0, 0x70(r3) +/* 80190270 0018D1D0 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 80190274 0018D1D4 98 03 00 70 */ stb r0, 0x70(r3) +/* 80190278 0018D1D8 4B FF FF 25 */ bl UpdateVisibility__21CHudFreeLookInterfaceFv +/* 8019027C 0018D1DC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80190280 0018D1E0 7C 08 03 A6 */ mtlr r0 +/* 80190284 0018D1E4 38 21 00 10 */ addi r1, r1, 0x10 +/* 80190288 0018D1E8 4E 80 00 20 */ blr + +.global SetFreeLookState__21CHudFreeLookInterfaceFbbbf +SetFreeLookState__21CHudFreeLookInterfaceFbbbf: +/* 8019028C 0018D1EC 94 21 FE E0 */ stwu r1, -0x120(r1) +/* 80190290 0018D1F0 7C 08 02 A6 */ mflr r0 +/* 80190294 0018D1F4 90 01 01 24 */ stw r0, 0x124(r1) +/* 80190298 0018D1F8 DB E1 01 10 */ stfd f31, 0x110(r1) +/* 8019029C 0018D1FC F3 E1 01 18 */ psq_st f31, 280(r1), 0, qr0 +/* 801902A0 0018D200 DB C1 01 00 */ stfd f30, 0x100(r1) +/* 801902A4 0018D204 F3 C1 01 08 */ psq_st f30, 264(r1), 0, qr0 +/* 801902A8 0018D208 DB A1 00 F0 */ stfd f29, 0xf0(r1) +/* 801902AC 0018D20C F3 A1 00 F8 */ psq_st f29, 248(r1), 0, qr0 +/* 801902B0 0018D210 DB 81 00 E0 */ stfd f28, 0xe0(r1) +/* 801902B4 0018D214 F3 81 00 E8 */ psq_st f28, 232(r1), 0, qr0 +/* 801902B8 0018D218 93 E1 00 DC */ stw r31, 0xdc(r1) +/* 801902BC 0018D21C 93 C1 00 D8 */ stw r30, 0xd8(r1) +/* 801902C0 0018D220 88 03 00 70 */ lbz r0, 0x70(r3) +/* 801902C4 0018D224 7C 7F 1B 78 */ mr r31, r3 +/* 801902C8 0018D228 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801902CC 0018D22C C0 02 A5 00 */ lfs f0, lbl_805AC220@sda21(r2) +/* 801902D0 0018D230 98 1F 00 70 */ stb r0, 0x70(r31) +/* 801902D4 0018D234 38 61 00 78 */ addi r3, r1, 0x78 +/* 801902D8 0018D238 EF 80 00 72 */ fmuls f28, f0, f1 +/* 801902DC 0018D23C C0 22 A4 FC */ lfs f1, lbl_805AC21C@sda21(r2) +/* 801902E0 0018D240 88 1F 00 70 */ lbz r0, 0x70(r31) +/* 801902E4 0018D244 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 801902E8 0018D248 FC 40 08 90 */ fmr f2, f1 +/* 801902EC 0018D24C 98 1F 00 70 */ stb r0, 0x70(r31) +/* 801902F0 0018D250 FC 60 E0 90 */ fmr f3, f28 +/* 801902F4 0018D254 88 1F 00 70 */ lbz r0, 0x70(r31) +/* 801902F8 0018D258 50 C0 2E B4 */ rlwimi r0, r6, 5, 0x1a, 0x1a +/* 801902FC 0018D25C 98 1F 00 70 */ stb r0, 0x70(r31) +/* 80190300 0018D260 48 18 2E 89 */ bl Translate__12CTransform4fFfff +/* 80190304 0018D264 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 80190308 0018D268 38 9F 00 08 */ addi r4, r31, 8 +/* 8019030C 0018D26C 38 A1 00 78 */ addi r5, r1, 0x78 +/* 80190310 0018D270 48 18 26 41 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80190314 0018D274 83 DF 00 7C */ lwz r30, 0x7c(r31) +/* 80190318 0018D278 38 81 00 A8 */ addi r4, r1, 0xa8 +/* 8019031C 0018D27C 38 7E 00 04 */ addi r3, r30, 4 +/* 80190320 0018D280 48 18 28 21 */ bl __as__12CTransform4fFRC12CTransform4f +/* 80190324 0018D284 7F C3 F3 78 */ mr r3, r30 +/* 80190328 0018D288 48 13 44 C1 */ bl RecalculateTransforms__10CGuiObjectFv +/* 8019032C 0018D28C C0 22 A4 FC */ lfs f1, lbl_805AC21C@sda21(r2) +/* 80190330 0018D290 FC 60 E0 90 */ fmr f3, f28 +/* 80190334 0018D294 38 61 00 18 */ addi r3, r1, 0x18 +/* 80190338 0018D298 FC 40 08 90 */ fmr f2, f1 +/* 8019033C 0018D29C 48 18 2E 4D */ bl Translate__12CTransform4fFfff +/* 80190340 0018D2A0 38 61 00 48 */ addi r3, r1, 0x48 +/* 80190344 0018D2A4 38 9F 00 38 */ addi r4, r31, 0x38 +/* 80190348 0018D2A8 38 A1 00 18 */ addi r5, r1, 0x18 +/* 8019034C 0018D2AC 48 18 26 05 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80190350 0018D2B0 83 DF 00 88 */ lwz r30, 0x88(r31) +/* 80190354 0018D2B4 38 81 00 48 */ addi r4, r1, 0x48 +/* 80190358 0018D2B8 38 7E 00 04 */ addi r3, r30, 4 +/* 8019035C 0018D2BC 48 18 27 E5 */ bl __as__12CTransform4fFRC12CTransform4f +/* 80190360 0018D2C0 7F C3 F3 78 */ mr r3, r30 +/* 80190364 0018D2C4 48 13 44 85 */ bl RecalculateTransforms__10CGuiObjectFv +/* 80190368 0018D2C8 C0 22 A5 04 */ lfs f1, lbl_805AC224@sda21(r2) +/* 8019036C 0018D2CC C0 1F 00 6C */ lfs f0, 0x6c(r31) +/* 80190370 0018D2D0 C0 5F 00 68 */ lfs f2, 0x68(r31) +/* 80190374 0018D2D4 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80190378 0018D2D8 EF 82 00 32 */ fmuls f28, f2, f0 +/* 8019037C 0018D2DC 48 1B 9C 31 */ bl White__6CColorFv +/* 80190380 0018D2E0 C0 02 A5 08 */ lfs f0, lbl_805AC228@sda21(r2) +/* 80190384 0018D2E4 EF A0 07 32 */ fmuls f29, f0, f28 +/* 80190388 0018D2E8 FF E0 E8 90 */ fmr f31, f29 +/* 8019038C 0018D2EC F3 E1 A0 0A */ psq_st f31, 10(r1), 1, qr2 +/* 80190390 0018D2F0 38 81 00 14 */ addi r4, r1, 0x14 +/* 80190394 0018D2F4 80 63 00 00 */ lwz r3, 0(r3) +/* 80190398 0018D2F8 88 01 00 0A */ lbz r0, 0xa(r1) +/* 8019039C 0018D2FC 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 801903A0 0018D300 90 01 00 14 */ stw r0, 0x14(r1) +/* 801903A4 0018D304 80 7F 00 74 */ lwz r3, 0x74(r31) +/* 801903A8 0018D308 48 13 A4 C5 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 801903AC 0018D30C 48 1B 9C 01 */ bl White__6CColorFv +/* 801903B0 0018D310 F3 A1 A0 09 */ psq_st f29, 9(r1), 1, qr2 +/* 801903B4 0018D314 38 81 00 10 */ addi r4, r1, 0x10 +/* 801903B8 0018D318 80 63 00 00 */ lwz r3, 0(r3) +/* 801903BC 0018D31C 88 01 00 09 */ lbz r0, 9(r1) +/* 801903C0 0018D320 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 801903C4 0018D324 90 01 00 10 */ stw r0, 0x10(r1) +/* 801903C8 0018D328 80 7F 00 80 */ lwz r3, 0x80(r31) +/* 801903CC 0018D32C 48 13 A4 A1 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 801903D0 0018D330 80 1F 00 8C */ lwz r0, 0x8c(r31) +/* 801903D4 0018D334 28 00 00 00 */ cmplwi r0, 0 +/* 801903D8 0018D338 41 82 00 3C */ beq lbl_80190414 +/* 801903DC 0018D33C 48 1B 9B D1 */ bl White__6CColorFv +/* 801903E0 0018D340 C0 22 A5 10 */ lfs f1, lbl_805AC230@sda21(r2) +/* 801903E4 0018D344 C0 02 A5 0C */ lfs f0, lbl_805AC22C@sda21(r2) +/* 801903E8 0018D348 C0 42 A5 08 */ lfs f2, lbl_805AC228@sda21(r2) +/* 801903EC 0018D34C EC 01 07 3A */ fmadds f0, f1, f28, f0 +/* 801903F0 0018D350 EF C2 00 32 */ fmuls f30, f2, f0 +/* 801903F4 0018D354 F3 C1 A0 08 */ psq_st f30, 8(r1), 1, qr2 +/* 801903F8 0018D358 38 81 00 0C */ addi r4, r1, 0xc +/* 801903FC 0018D35C 80 63 00 00 */ lwz r3, 0(r3) +/* 80190400 0018D360 88 01 00 08 */ lbz r0, 8(r1) +/* 80190404 0018D364 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 80190408 0018D368 90 01 00 0C */ stw r0, 0xc(r1) +/* 8019040C 0018D36C 80 7F 00 8C */ lwz r3, 0x8c(r31) +/* 80190410 0018D370 48 13 A4 5D */ bl SetColor__10CGuiWidgetFRC6CColor +lbl_80190414: +/* 80190414 0018D374 C0 02 A4 FC */ lfs f0, lbl_805AC21C@sda21(r2) +/* 80190418 0018D378 FC 00 E0 00 */ fcmpu cr0, f0, f28 +/* 8019041C 0018D37C 40 82 00 28 */ bne lbl_80190444 +/* 80190420 0018D380 80 7F 00 74 */ lwz r3, 0x74(r31) +/* 80190424 0018D384 38 80 00 00 */ li r4, 0 +/* 80190428 0018D388 38 A0 00 01 */ li r5, 1 +/* 8019042C 0018D38C 48 13 A2 BD */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80190430 0018D390 80 7F 00 80 */ lwz r3, 0x80(r31) +/* 80190434 0018D394 38 80 00 00 */ li r4, 0 +/* 80190438 0018D398 38 A0 00 01 */ li r5, 1 +/* 8019043C 0018D39C 48 13 A2 AD */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80190440 0018D3A0 48 00 00 24 */ b lbl_80190464 +lbl_80190444: +/* 80190444 0018D3A4 80 7F 00 74 */ lwz r3, 0x74(r31) +/* 80190448 0018D3A8 38 80 00 01 */ li r4, 1 +/* 8019044C 0018D3AC 38 A0 00 01 */ li r5, 1 +/* 80190450 0018D3B0 48 13 A2 99 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80190454 0018D3B4 80 7F 00 80 */ lwz r3, 0x80(r31) +/* 80190458 0018D3B8 38 80 00 01 */ li r4, 1 +/* 8019045C 0018D3BC 38 A0 00 01 */ li r5, 1 +/* 80190460 0018D3C0 48 13 A2 89 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +lbl_80190464: +/* 80190464 0018D3C4 E3 E1 01 18 */ psq_l f31, 280(r1), 0, qr0 +/* 80190468 0018D3C8 CB E1 01 10 */ lfd f31, 0x110(r1) +/* 8019046C 0018D3CC E3 C1 01 08 */ psq_l f30, 264(r1), 0, qr0 +/* 80190470 0018D3D0 CB C1 01 00 */ lfd f30, 0x100(r1) +/* 80190474 0018D3D4 E3 A1 00 F8 */ psq_l f29, 248(r1), 0, qr0 +/* 80190478 0018D3D8 CB A1 00 F0 */ lfd f29, 0xf0(r1) +/* 8019047C 0018D3DC E3 81 00 E8 */ psq_l f28, 232(r1), 0, qr0 +/* 80190480 0018D3E0 CB 81 00 E0 */ lfd f28, 0xe0(r1) +/* 80190484 0018D3E4 83 E1 00 DC */ lwz r31, 0xdc(r1) +/* 80190488 0018D3E8 80 01 01 24 */ lwz r0, 0x124(r1) +/* 8019048C 0018D3EC 83 C1 00 D8 */ lwz r30, 0xd8(r1) +/* 80190490 0018D3F0 7C 08 03 A6 */ mtlr r0 +/* 80190494 0018D3F4 38 21 01 20 */ addi r1, r1, 0x120 +/* 80190498 0018D3F8 4E 80 00 20 */ blr + +.global __ct__21CHudFreeLookInterfaceFR9CGuiFrame8EHudTypebbb +__ct__21CHudFreeLookInterfaceFR9CGuiFrame8EHudTypebbb: +/* 8019049C 0018D3FC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801904A0 0018D400 7C 08 02 A6 */ mflr r0 +/* 801904A4 0018D404 3D 20 80 3E */ lis r9, lbl_803DA2E8@ha +/* 801904A8 0018D408 90 01 00 34 */ stw r0, 0x34(r1) +/* 801904AC 0018D40C 38 09 A2 E8 */ addi r0, r9, lbl_803DA2E8@l +/* 801904B0 0018D410 3D 20 80 3D */ lis r9, lbl_803D0A48@ha +/* 801904B4 0018D414 BF 21 00 14 */ stmw r25, 0x14(r1) +/* 801904B8 0018D418 7C 7E 1B 78 */ mr r30, r3 +/* 801904BC 0018D41C 3C 60 80 3E */ lis r3, lbl_803E4470@ha +/* 801904C0 0018D420 7C B9 2B 78 */ mr r25, r5 +/* 801904C4 0018D424 7C 9F 23 78 */ mr r31, r4 +/* 801904C8 0018D428 7C DA 33 78 */ mr r26, r6 +/* 801904CC 0018D42C 7C FB 3B 78 */ mr r27, r7 +/* 801904D0 0018D430 7D 1C 43 78 */ mr r28, r8 +/* 801904D4 0018D434 3B A9 0A 48 */ addi r29, r9, lbl_803D0A48@l +/* 801904D8 0018D438 90 1E 00 00 */ stw r0, 0(r30) +/* 801904DC 0018D43C 38 03 44 70 */ addi r0, r3, lbl_803E4470@l +/* 801904E0 0018D440 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 801904E4 0018D444 90 1E 00 00 */ stw r0, 0(r30) +/* 801904E8 0018D448 38 03 66 70 */ addi r0, r3, skIdentity4f@l +/* 801904EC 0018D44C 7C 04 03 78 */ mr r4, r0 +/* 801904F0 0018D450 38 7E 00 08 */ addi r3, r30, 8 +/* 801904F4 0018D454 93 3E 00 04 */ stw r25, 4(r30) +/* 801904F8 0018D458 48 18 26 7D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801904FC 0018D45C 3C 80 80 5A */ lis r4, skIdentity4f@ha +/* 80190500 0018D460 38 7E 00 38 */ addi r3, r30, 0x38 +/* 80190504 0018D464 38 84 66 70 */ addi r4, r4, skIdentity4f@l +/* 80190508 0018D468 48 18 26 6D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8019050C 0018D46C C0 02 A4 FC */ lfs f0, lbl_805AC21C@sda21(r2) +/* 80190510 0018D470 57 80 06 3F */ clrlwi. r0, r28, 0x18 +/* 80190514 0018D474 38 00 00 00 */ li r0, 0 +/* 80190518 0018D478 D0 1E 00 68 */ stfs f0, 0x68(r30) +/* 8019051C 0018D47C 41 82 00 10 */ beq lbl_8019052C +/* 80190520 0018D480 2C 19 00 01 */ cmpwi r25, 1 +/* 80190524 0018D484 40 82 00 08 */ bne lbl_8019052C +/* 80190528 0018D488 38 00 00 01 */ li r0, 1 +lbl_8019052C: +/* 8019052C 0018D48C 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 80190530 0018D490 41 82 00 0C */ beq lbl_8019053C +/* 80190534 0018D494 C0 02 A4 FC */ lfs f0, lbl_805AC21C@sda21(r2) +/* 80190538 0018D498 48 00 00 08 */ b lbl_80190540 +lbl_8019053C: +/* 8019053C 0018D49C C0 02 A5 04 */ lfs f0, lbl_805AC224@sda21(r2) +lbl_80190540: +/* 80190540 0018D4A0 D0 1E 00 6C */ stfs f0, 0x6c(r30) +/* 80190544 0018D4A4 38 A0 00 01 */ li r5, 1 +/* 80190548 0018D4A8 7F E3 FB 78 */ mr r3, r31 +/* 8019054C 0018D4AC 38 9D 00 3C */ addi r4, r29, 0x3c +/* 80190550 0018D4B0 88 1E 00 70 */ lbz r0, 0x70(r30) +/* 80190554 0018D4B4 53 40 3E 30 */ rlwimi r0, r26, 7, 0x18, 0x18 +/* 80190558 0018D4B8 98 1E 00 70 */ stb r0, 0x70(r30) +/* 8019055C 0018D4BC 88 1E 00 70 */ lbz r0, 0x70(r30) +/* 80190560 0018D4C0 53 60 36 72 */ rlwimi r0, r27, 6, 0x19, 0x19 +/* 80190564 0018D4C4 98 1E 00 70 */ stb r0, 0x70(r30) +/* 80190568 0018D4C8 88 1E 00 70 */ lbz r0, 0x70(r30) +/* 8019056C 0018D4CC 53 80 2E B4 */ rlwimi r0, r28, 5, 0x1a, 0x1a +/* 80190570 0018D4D0 98 1E 00 70 */ stb r0, 0x70(r30) +/* 80190574 0018D4D4 88 1E 00 70 */ lbz r0, 0x70(r30) +/* 80190578 0018D4D8 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 8019057C 0018D4DC 98 1E 00 70 */ stb r0, 0x70(r30) +/* 80190580 0018D4E0 88 1E 00 70 */ lbz r0, 0x70(r30) +/* 80190584 0018D4E4 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 80190588 0018D4E8 98 1E 00 70 */ stb r0, 0x70(r30) +/* 8019058C 0018D4EC 48 13 1B C9 */ bl FindWidget__9CGuiFrameCFPCc +/* 80190590 0018D4F0 90 7E 00 74 */ stw r3, 0x74(r30) +/* 80190594 0018D4F4 7F E3 FB 78 */ mr r3, r31 +/* 80190598 0018D4F8 38 9D 00 54 */ addi r4, r29, 0x54 +/* 8019059C 0018D4FC 48 13 1B B9 */ bl FindWidget__9CGuiFrameCFPCc +/* 801905A0 0018D500 90 7E 00 78 */ stw r3, 0x78(r30) +/* 801905A4 0018D504 7F E3 FB 78 */ mr r3, r31 +/* 801905A8 0018D508 38 9D 00 14 */ addi r4, r29, 0x14 +/* 801905AC 0018D50C 48 13 1B A9 */ bl FindWidget__9CGuiFrameCFPCc +/* 801905B0 0018D510 90 7E 00 7C */ stw r3, 0x7c(r30) +/* 801905B4 0018D514 7F E3 FB 78 */ mr r3, r31 +/* 801905B8 0018D518 38 9D 00 CC */ addi r4, r29, 0xcc +/* 801905BC 0018D51C 48 13 1B 99 */ bl FindWidget__9CGuiFrameCFPCc +/* 801905C0 0018D520 90 7E 00 80 */ stw r3, 0x80(r30) +/* 801905C4 0018D524 7F E3 FB 78 */ mr r3, r31 +/* 801905C8 0018D528 38 9D 00 E8 */ addi r4, r29, 0xe8 +/* 801905CC 0018D52C 48 13 1B 89 */ bl FindWidget__9CGuiFrameCFPCc +/* 801905D0 0018D530 90 7E 00 84 */ stw r3, 0x84(r30) +/* 801905D4 0018D534 7F E3 FB 78 */ mr r3, r31 +/* 801905D8 0018D538 38 9D 00 28 */ addi r4, r29, 0x28 +/* 801905DC 0018D53C 48 13 1B 79 */ bl FindWidget__9CGuiFrameCFPCc +/* 801905E0 0018D540 3C 80 80 3D */ lis r4, lbl_803D0BB4@ha +/* 801905E4 0018D544 90 7E 00 88 */ stw r3, 0x88(r30) +/* 801905E8 0018D548 38 84 0B B4 */ addi r4, r4, lbl_803D0BB4@l +/* 801905EC 0018D54C 7F E3 FB 78 */ mr r3, r31 +/* 801905F0 0018D550 48 13 1B 65 */ bl FindWidget__9CGuiFrameCFPCc +/* 801905F4 0018D554 90 7E 00 8C */ stw r3, 0x8c(r30) +/* 801905F8 0018D558 38 7E 00 08 */ addi r3, r30, 8 +/* 801905FC 0018D55C 80 9E 00 7C */ lwz r4, 0x7c(r30) +/* 80190600 0018D560 38 84 00 74 */ addi r4, r4, 0x74 +/* 80190604 0018D564 48 18 25 3D */ bl __as__12CTransform4fFRC12CTransform4f +/* 80190608 0018D568 80 9E 00 88 */ lwz r4, 0x88(r30) +/* 8019060C 0018D56C 38 7E 00 38 */ addi r3, r30, 0x38 +/* 80190610 0018D570 38 84 00 74 */ addi r4, r4, 0x74 +/* 80190614 0018D574 48 18 25 2D */ bl __as__12CTransform4fFRC12CTransform4f +/* 80190618 0018D578 80 9E 00 78 */ lwz r4, 0x78(r30) +/* 8019061C 0018D57C 38 A0 00 01 */ li r5, 1 +/* 80190620 0018D580 7F C3 F3 78 */ mr r3, r30 +/* 80190624 0018D584 88 04 00 B7 */ lbz r0, 0xb7(r4) +/* 80190628 0018D588 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 8019062C 0018D58C 98 04 00 B7 */ stb r0, 0xb7(r4) +/* 80190630 0018D590 80 9E 00 84 */ lwz r4, 0x84(r30) +/* 80190634 0018D594 88 04 00 B7 */ lbz r0, 0xb7(r4) +/* 80190638 0018D598 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 8019063C 0018D59C 98 04 00 B7 */ stb r0, 0xb7(r4) +/* 80190640 0018D5A0 BB 21 00 14 */ lmw r25, 0x14(r1) +/* 80190644 0018D5A4 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80190648 0018D5A8 7C 08 03 A6 */ mtlr r0 +/* 8019064C 0018D5AC 38 21 00 30 */ addi r1, r1, 0x30 +/* 80190650 0018D5B0 4E 80 00 20 */ blr + +.global Update__25CHudFreeLookInterfaceXRayFf +Update__25CHudFreeLookInterfaceXRayFf: +/* 80190654 0018D5B4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80190658 0018D5B8 88 03 00 20 */ lbz r0, 0x20(r3) +/* 8019065C 0018D5BC 28 00 00 00 */ cmplwi r0, 0 +/* 80190660 0018D5C0 41 82 00 40 */ beq lbl_801906A0 +/* 80190664 0018D5C4 80 8D A1 38 */ lwz r4, gpTweakGui@sda21(r13) +/* 80190668 0018D5C8 C0 63 00 1C */ lfs f3, 0x1c(r3) +/* 8019066C 0018D5CC C0 44 01 18 */ lfs f2, 0x118(r4) +/* 80190670 0018D5D0 C0 0D 8F 18 */ lfs f0, lbl_805A7AD8@sda21(r13) +/* 80190674 0018D5D4 EC 21 10 24 */ fdivs f1, f1, f2 +/* 80190678 0018D5D8 EC 23 08 2A */ fadds f1, f3, f1 +/* 8019067C 0018D5DC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80190680 0018D5E0 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 80190684 0018D5E4 40 80 00 0C */ bge lbl_80190690 +/* 80190688 0018D5E8 38 81 00 0C */ addi r4, r1, 0xc +/* 8019068C 0018D5EC 48 00 00 08 */ b lbl_80190694 +lbl_80190690: +/* 80190690 0018D5F0 38 8D 8F 18 */ addi r4, r13, lbl_805A7AD8@sda21 +lbl_80190694: +/* 80190694 0018D5F4 C0 04 00 00 */ lfs f0, 0(r4) +/* 80190698 0018D5F8 D0 03 00 1C */ stfs f0, 0x1c(r3) +/* 8019069C 0018D5FC 48 00 00 3C */ b lbl_801906D8 +lbl_801906A0: +/* 801906A0 0018D600 80 8D A1 38 */ lwz r4, gpTweakGui@sda21(r13) +/* 801906A4 0018D604 C0 63 00 1C */ lfs f3, 0x1c(r3) +/* 801906A8 0018D608 C0 44 01 18 */ lfs f2, 0x118(r4) +/* 801906AC 0018D60C C0 0D 8F 1C */ lfs f0, lbl_805A7ADC@sda21(r13) +/* 801906B0 0018D610 EC 21 10 24 */ fdivs f1, f1, f2 +/* 801906B4 0018D614 EC 23 08 28 */ fsubs f1, f3, f1 +/* 801906B8 0018D618 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801906BC 0018D61C D0 21 00 08 */ stfs f1, 8(r1) +/* 801906C0 0018D620 40 80 00 0C */ bge lbl_801906CC +/* 801906C4 0018D624 38 81 00 08 */ addi r4, r1, 8 +/* 801906C8 0018D628 48 00 00 08 */ b lbl_801906D0 +lbl_801906CC: +/* 801906CC 0018D62C 38 8D 8F 1C */ addi r4, r13, lbl_805A7ADC@sda21 +lbl_801906D0: +/* 801906D0 0018D630 C0 04 00 00 */ lfs f0, 0(r4) +/* 801906D4 0018D634 D0 03 00 1C */ stfs f0, 0x1c(r3) +lbl_801906D8: +/* 801906D8 0018D638 38 21 00 10 */ addi r1, r1, 0x10 +/* 801906DC 0018D63C 4E 80 00 20 */ blr + +.global UpdateVisibility__25CHudFreeLookInterfaceXRayFv +UpdateVisibility__25CHudFreeLookInterfaceXRayFv: +/* 801906E0 0018D640 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801906E4 0018D644 7C 08 02 A6 */ mflr r0 +/* 801906E8 0018D648 90 01 00 24 */ stw r0, 0x24(r1) +/* 801906EC 0018D64C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801906F0 0018D650 3B E0 00 00 */ li r31, 0 +/* 801906F4 0018D654 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801906F8 0018D658 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801906FC 0018D65C 7C 7D 1B 78 */ mr r29, r3 +/* 80190700 0018D660 88 63 00 22 */ lbz r3, 0x22(r3) +/* 80190704 0018D664 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f +/* 80190708 0018D668 41 82 00 10 */ beq lbl_80190718 +/* 8019070C 0018D66C 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f +/* 80190710 0018D670 41 82 00 08 */ beq lbl_80190718 +/* 80190714 0018D674 3B E0 00 01 */ li r31, 1 +lbl_80190718: +/* 80190718 0018D678 57 FE 06 3E */ clrlwi r30, r31, 0x18 +/* 8019071C 0018D67C 80 7D 00 2C */ lwz r3, 0x2c(r29) +/* 80190720 0018D680 7F C4 F3 78 */ mr r4, r30 +/* 80190724 0018D684 38 A0 00 01 */ li r5, 1 +/* 80190728 0018D688 48 13 9F C1 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 8019072C 0018D68C 80 7D 00 30 */ lwz r3, 0x30(r29) +/* 80190730 0018D690 7F C4 F3 78 */ mr r4, r30 +/* 80190734 0018D694 38 A0 00 01 */ li r5, 1 +/* 80190738 0018D698 48 13 9F B1 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 8019073C 0018D69C 7F C0 F3 79 */ or. r0, r30, r30 +/* 80190740 0018D6A0 41 82 00 1C */ beq lbl_8019075C +/* 80190744 0018D6A4 7F A3 EB 78 */ mr r3, r29 +/* 80190748 0018D6A8 C0 22 A4 FC */ lfs f1, lbl_805AC21C@sda21(r2) +/* 8019074C 0018D6AC 81 9D 00 00 */ lwz r12, 0(r29) +/* 80190750 0018D6B0 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 80190754 0018D6B4 7D 89 03 A6 */ mtctr r12 +/* 80190758 0018D6B8 4E 80 04 21 */ bctrl +lbl_8019075C: +/* 8019075C 0018D6BC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80190760 0018D6C0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80190764 0018D6C4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80190768 0018D6C8 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8019076C 0018D6CC 7C 08 03 A6 */ mtlr r0 +/* 80190770 0018D6D0 38 21 00 20 */ addi r1, r1, 0x20 +/* 80190774 0018D6D4 4E 80 00 20 */ blr + +.global SetIsVisibleGame__25CHudFreeLookInterfaceXRayFb +SetIsVisibleGame__25CHudFreeLookInterfaceXRayFb: +/* 80190778 0018D6D8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8019077C 0018D6DC 7C 08 02 A6 */ mflr r0 +/* 80190780 0018D6E0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80190784 0018D6E4 88 03 00 22 */ lbz r0, 0x22(r3) +/* 80190788 0018D6E8 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 8019078C 0018D6EC 98 03 00 22 */ stb r0, 0x22(r3) +/* 80190790 0018D6F0 4B FF FF 51 */ bl UpdateVisibility__25CHudFreeLookInterfaceXRayFv +/* 80190794 0018D6F4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80190798 0018D6F8 7C 08 03 A6 */ mtlr r0 +/* 8019079C 0018D6FC 38 21 00 10 */ addi r1, r1, 0x10 +/* 801907A0 0018D700 4E 80 00 20 */ blr + +.global SetIsVisibleDebug__25CHudFreeLookInterfaceXRayFb +SetIsVisibleDebug__25CHudFreeLookInterfaceXRayFb: +/* 801907A4 0018D704 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801907A8 0018D708 7C 08 02 A6 */ mflr r0 +/* 801907AC 0018D70C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801907B0 0018D710 88 03 00 22 */ lbz r0, 0x22(r3) +/* 801907B4 0018D714 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801907B8 0018D718 98 03 00 22 */ stb r0, 0x22(r3) +/* 801907BC 0018D71C 4B FF FF 25 */ bl UpdateVisibility__25CHudFreeLookInterfaceXRayFv +/* 801907C0 0018D720 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801907C4 0018D724 7C 08 03 A6 */ mtlr r0 +/* 801907C8 0018D728 38 21 00 10 */ addi r1, r1, 0x10 +/* 801907CC 0018D72C 4E 80 00 20 */ blr + +.global SetFreeLookState__25CHudFreeLookInterfaceXRayFbbbf +SetFreeLookState__25CHudFreeLookInterfaceXRayFbbbf: +/* 801907D0 0018D730 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 801907D4 0018D734 7C 08 02 A6 */ mflr r0 +/* 801907D8 0018D738 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 801907DC 0018D73C DB E1 00 E0 */ stfd f31, 0xe0(r1) +/* 801907E0 0018D740 F3 E1 00 E8 */ psq_st f31, 232(r1), 0, qr0 +/* 801907E4 0018D744 DB C1 00 D0 */ stfd f30, 0xd0(r1) +/* 801907E8 0018D748 F3 C1 00 D8 */ psq_st f30, 216(r1), 0, qr0 +/* 801907EC 0018D74C 93 E1 00 CC */ stw r31, 0xcc(r1) +/* 801907F0 0018D750 93 C1 00 C8 */ stw r30, 0xc8(r1) +/* 801907F4 0018D754 98 83 00 20 */ stb r4, 0x20(r3) +/* 801907F8 0018D758 7C 7E 1B 78 */ mr r30, r3 +/* 801907FC 0018D75C FF C0 08 90 */ fmr f30, f1 +/* 80190800 0018D760 38 61 00 6C */ addi r3, r1, 0x6c +/* 80190804 0018D764 98 BE 00 21 */ stb r5, 0x21(r30) +/* 80190808 0018D768 38 81 00 14 */ addi r4, r1, 0x14 +/* 8019080C 0018D76C D3 C1 00 14 */ stfs f30, 0x14(r1) +/* 80190810 0018D770 48 17 FC 85 */ bl RotateY__9CMatrix3fFRC9CRelAngle +/* 80190814 0018D774 38 61 00 90 */ addi r3, r1, 0x90 +/* 80190818 0018D778 38 81 00 6C */ addi r4, r1, 0x6c +/* 8019081C 0018D77C 38 BE 00 04 */ addi r5, r30, 4 +/* 80190820 0018D780 48 18 2A 59 */ bl __ct__12CTransform4fFRC9CMatrix3fRC9CVector3f +/* 80190824 0018D784 83 FE 00 2C */ lwz r31, 0x2c(r30) +/* 80190828 0018D788 38 81 00 90 */ addi r4, r1, 0x90 +/* 8019082C 0018D78C 38 7F 00 04 */ addi r3, r31, 4 +/* 80190830 0018D790 48 18 23 11 */ bl __as__12CTransform4fFRC12CTransform4f +/* 80190834 0018D794 7F E3 FB 78 */ mr r3, r31 +/* 80190838 0018D798 48 13 3F B1 */ bl RecalculateTransforms__10CGuiObjectFv +/* 8019083C 0018D79C FC 00 F0 50 */ fneg f0, f30 +/* 80190840 0018D7A0 38 61 00 18 */ addi r3, r1, 0x18 +/* 80190844 0018D7A4 38 81 00 10 */ addi r4, r1, 0x10 +/* 80190848 0018D7A8 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 8019084C 0018D7AC 48 17 FC 49 */ bl RotateY__9CMatrix3fFRC9CRelAngle +/* 80190850 0018D7B0 38 61 00 3C */ addi r3, r1, 0x3c +/* 80190854 0018D7B4 38 81 00 18 */ addi r4, r1, 0x18 +/* 80190858 0018D7B8 38 BE 00 10 */ addi r5, r30, 0x10 +/* 8019085C 0018D7BC 48 18 2A 1D */ bl __ct__12CTransform4fFRC9CMatrix3fRC9CVector3f +/* 80190860 0018D7C0 83 FE 00 30 */ lwz r31, 0x30(r30) +/* 80190864 0018D7C4 38 81 00 3C */ addi r4, r1, 0x3c +/* 80190868 0018D7C8 38 7F 00 04 */ addi r3, r31, 4 +/* 8019086C 0018D7CC 48 18 22 D5 */ bl __as__12CTransform4fFRC12CTransform4f +/* 80190870 0018D7D0 7F E3 FB 78 */ mr r3, r31 +/* 80190874 0018D7D4 48 13 3F 75 */ bl RecalculateTransforms__10CGuiObjectFv +/* 80190878 0018D7D8 C3 DE 00 1C */ lfs f30, 0x1c(r30) +/* 8019087C 0018D7DC 48 1B 97 31 */ bl White__6CColorFv +/* 80190880 0018D7E0 C0 02 A5 08 */ lfs f0, lbl_805AC228@sda21(r2) +/* 80190884 0018D7E4 EF E0 07 B2 */ fmuls f31, f0, f30 +/* 80190888 0018D7E8 F3 E1 A0 08 */ psq_st f31, 8(r1), 1, qr2 +/* 8019088C 0018D7EC 38 81 00 0C */ addi r4, r1, 0xc +/* 80190890 0018D7F0 80 63 00 00 */ lwz r3, 0(r3) +/* 80190894 0018D7F4 88 01 00 08 */ lbz r0, 8(r1) +/* 80190898 0018D7F8 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 8019089C 0018D7FC 90 01 00 0C */ stw r0, 0xc(r1) +/* 801908A0 0018D800 80 7E 00 24 */ lwz r3, 0x24(r30) +/* 801908A4 0018D804 48 13 9F C9 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 801908A8 0018D808 C0 02 A4 FC */ lfs f0, lbl_805AC21C@sda21(r2) +/* 801908AC 0018D80C FC 00 F0 00 */ fcmpu cr0, f0, f30 +/* 801908B0 0018D810 40 82 00 18 */ bne lbl_801908C8 +/* 801908B4 0018D814 80 7E 00 24 */ lwz r3, 0x24(r30) +/* 801908B8 0018D818 38 80 00 00 */ li r4, 0 +/* 801908BC 0018D81C 38 A0 00 01 */ li r5, 1 +/* 801908C0 0018D820 48 13 9E 29 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 801908C4 0018D824 48 00 00 14 */ b lbl_801908D8 +lbl_801908C8: +/* 801908C8 0018D828 80 7E 00 24 */ lwz r3, 0x24(r30) +/* 801908CC 0018D82C 38 80 00 01 */ li r4, 1 +/* 801908D0 0018D830 38 A0 00 01 */ li r5, 1 +/* 801908D4 0018D834 48 13 9E 15 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +lbl_801908D8: +/* 801908D8 0018D838 E3 E1 00 E8 */ psq_l f31, 232(r1), 0, qr0 +/* 801908DC 0018D83C CB E1 00 E0 */ lfd f31, 0xe0(r1) +/* 801908E0 0018D840 E3 C1 00 D8 */ psq_l f30, 216(r1), 0, qr0 +/* 801908E4 0018D844 CB C1 00 D0 */ lfd f30, 0xd0(r1) +/* 801908E8 0018D848 83 E1 00 CC */ lwz r31, 0xcc(r1) +/* 801908EC 0018D84C 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 801908F0 0018D850 83 C1 00 C8 */ lwz r30, 0xc8(r1) +/* 801908F4 0018D854 7C 08 03 A6 */ mtlr r0 +/* 801908F8 0018D858 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 801908FC 0018D85C 4E 80 00 20 */ blr + +.global __ct__25CHudFreeLookInterfaceXRayFR9CGuiFramebbUi +__ct__25CHudFreeLookInterfaceXRayFR9CGuiFramebbUi: +/* 80190900 0018D860 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80190904 0018D864 7C 08 02 A6 */ mflr r0 +/* 80190908 0018D868 3D 00 80 3E */ lis r8, lbl_803DA2E8@ha +/* 8019090C 0018D86C 3C E0 80 3E */ lis r7, lbl_803E448C@ha +/* 80190910 0018D870 90 01 00 34 */ stw r0, 0x34(r1) +/* 80190914 0018D874 38 08 A2 E8 */ addi r0, r8, lbl_803DA2E8@l +/* 80190918 0018D878 3D 00 80 3D */ lis r8, lbl_803D0A48@ha +/* 8019091C 0018D87C C0 02 A4 FC */ lfs f0, lbl_805AC21C@sda21(r2) +/* 80190920 0018D880 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80190924 0018D884 3B E8 0A 48 */ addi r31, r8, lbl_803D0A48@l +/* 80190928 0018D888 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8019092C 0018D88C 7C 9E 23 78 */ mr r30, r4 +/* 80190930 0018D890 38 9F 00 00 */ addi r4, r31, 0 +/* 80190934 0018D894 93 A1 00 24 */ stw r29, 0x24(r1) +/* 80190938 0018D898 7C 7D 1B 78 */ mr r29, r3 +/* 8019093C 0018D89C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80190940 0018D8A0 90 1D 00 00 */ stw r0, 0(r29) +/* 80190944 0018D8A4 38 07 44 8C */ addi r0, r7, lbl_803E448C@l +/* 80190948 0018D8A8 39 03 66 A0 */ addi r8, r3, skZero3f@l +/* 8019094C 0018D8AC 38 E0 00 01 */ li r7, 1 +/* 80190950 0018D8B0 90 1D 00 00 */ stw r0, 0(r29) +/* 80190954 0018D8B4 7F C3 F3 78 */ mr r3, r30 +/* 80190958 0018D8B8 C0 28 00 00 */ lfs f1, 0(r8) +/* 8019095C 0018D8BC D0 3D 00 04 */ stfs f1, 4(r29) +/* 80190960 0018D8C0 C0 28 00 04 */ lfs f1, 4(r8) +/* 80190964 0018D8C4 D0 3D 00 08 */ stfs f1, 8(r29) +/* 80190968 0018D8C8 C0 28 00 08 */ lfs f1, 8(r8) +/* 8019096C 0018D8CC D0 3D 00 0C */ stfs f1, 0xc(r29) +/* 80190970 0018D8D0 C0 28 00 00 */ lfs f1, 0(r8) +/* 80190974 0018D8D4 D0 3D 00 10 */ stfs f1, 0x10(r29) +/* 80190978 0018D8D8 C0 28 00 04 */ lfs f1, 4(r8) +/* 8019097C 0018D8DC D0 3D 00 14 */ stfs f1, 0x14(r29) +/* 80190980 0018D8E0 C0 28 00 08 */ lfs f1, 8(r8) +/* 80190984 0018D8E4 D0 3D 00 18 */ stfs f1, 0x18(r29) +/* 80190988 0018D8E8 D0 1D 00 1C */ stfs f0, 0x1c(r29) +/* 8019098C 0018D8EC 98 BD 00 20 */ stb r5, 0x20(r29) +/* 80190990 0018D8F0 98 DD 00 21 */ stb r6, 0x21(r29) +/* 80190994 0018D8F4 88 1D 00 22 */ lbz r0, 0x22(r29) +/* 80190998 0018D8F8 50 E0 3E 30 */ rlwimi r0, r7, 7, 0x18, 0x18 +/* 8019099C 0018D8FC 98 1D 00 22 */ stb r0, 0x22(r29) +/* 801909A0 0018D900 88 1D 00 22 */ lbz r0, 0x22(r29) +/* 801909A4 0018D904 50 E0 36 72 */ rlwimi r0, r7, 6, 0x19, 0x19 +/* 801909A8 0018D908 98 1D 00 22 */ stb r0, 0x22(r29) +/* 801909AC 0018D90C 48 13 17 A9 */ bl FindWidget__9CGuiFrameCFPCc +/* 801909B0 0018D910 90 7D 00 24 */ stw r3, 0x24(r29) +/* 801909B4 0018D914 7F C3 F3 78 */ mr r3, r30 +/* 801909B8 0018D918 38 9F 00 14 */ addi r4, r31, 0x14 +/* 801909BC 0018D91C 48 13 17 99 */ bl FindWidget__9CGuiFrameCFPCc +/* 801909C0 0018D920 90 7D 00 2C */ stw r3, 0x2c(r29) +/* 801909C4 0018D924 7F C3 F3 78 */ mr r3, r30 +/* 801909C8 0018D928 38 9F 00 28 */ addi r4, r31, 0x28 +/* 801909CC 0018D92C 48 13 17 89 */ bl FindWidget__9CGuiFrameCFPCc +/* 801909D0 0018D930 3C 80 80 3D */ lis r4, lbl_803D0BB4@ha +/* 801909D4 0018D934 90 7D 00 30 */ stw r3, 0x30(r29) +/* 801909D8 0018D938 38 84 0B B4 */ addi r4, r4, lbl_803D0BB4@l +/* 801909DC 0018D93C 7F C3 F3 78 */ mr r3, r30 +/* 801909E0 0018D940 38 84 00 15 */ addi r4, r4, 0x15 +/* 801909E4 0018D944 48 13 17 71 */ bl FindWidget__9CGuiFrameCFPCc +/* 801909E8 0018D948 90 7D 00 28 */ stw r3, 0x28(r29) +/* 801909EC 0018D94C 38 61 00 14 */ addi r3, r1, 0x14 +/* 801909F0 0018D950 80 9D 00 2C */ lwz r4, 0x2c(r29) +/* 801909F4 0018D954 48 13 48 29 */ bl GetLocalPosition__10CGuiObjectCFv +/* 801909F8 0018D958 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 801909FC 0018D95C 38 61 00 08 */ addi r3, r1, 8 +/* 80190A00 0018D960 D0 1D 00 04 */ stfs f0, 4(r29) +/* 80190A04 0018D964 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 80190A08 0018D968 D0 1D 00 08 */ stfs f0, 8(r29) +/* 80190A0C 0018D96C C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 80190A10 0018D970 D0 1D 00 0C */ stfs f0, 0xc(r29) +/* 80190A14 0018D974 80 9D 00 30 */ lwz r4, 0x30(r29) +/* 80190A18 0018D978 48 13 48 05 */ bl GetLocalPosition__10CGuiObjectCFv +/* 80190A1C 0018D97C C0 01 00 08 */ lfs f0, 8(r1) +/* 80190A20 0018D980 38 A0 00 01 */ li r5, 1 +/* 80190A24 0018D984 7F A3 EB 78 */ mr r3, r29 +/* 80190A28 0018D988 D0 1D 00 10 */ stfs f0, 0x10(r29) +/* 80190A2C 0018D98C C0 01 00 0C */ lfs f0, 0xc(r1) +/* 80190A30 0018D990 D0 1D 00 14 */ stfs f0, 0x14(r29) +/* 80190A34 0018D994 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 80190A38 0018D998 D0 1D 00 18 */ stfs f0, 0x18(r29) +/* 80190A3C 0018D99C 80 9D 00 28 */ lwz r4, 0x28(r29) +/* 80190A40 0018D9A0 88 04 00 B7 */ lbz r0, 0xb7(r4) +/* 80190A44 0018D9A4 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 80190A48 0018D9A8 98 04 00 B7 */ stb r0, 0xb7(r4) +/* 80190A4C 0018D9AC 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80190A50 0018D9B0 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80190A54 0018D9B4 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 80190A58 0018D9B8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80190A5C 0018D9BC 7C 08 03 A6 */ mtlr r0 +/* 80190A60 0018D9C0 38 21 00 30 */ addi r1, r1, 0x30 +/* 80190A64 0018D9C4 4E 80 00 20 */ blr + +.global __dt__25CHudFreeLookInterfaceXRayFv +__dt__25CHudFreeLookInterfaceXRayFv: +/* 80190A68 0018D9C8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80190A6C 0018D9CC 7C 08 02 A6 */ mflr r0 +/* 80190A70 0018D9D0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80190A74 0018D9D4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80190A78 0018D9D8 7C 7F 1B 79 */ or. r31, r3, r3 +/* 80190A7C 0018D9DC 41 82 00 30 */ beq lbl_80190AAC +/* 80190A80 0018D9E0 3C 60 80 3E */ lis r3, lbl_803E448C@ha +/* 80190A84 0018D9E4 38 03 44 8C */ addi r0, r3, lbl_803E448C@l +/* 80190A88 0018D9E8 90 1F 00 00 */ stw r0, 0(r31) +/* 80190A8C 0018D9EC 41 82 00 10 */ beq lbl_80190A9C +/* 80190A90 0018D9F0 3C 60 80 3E */ lis r3, lbl_803DA2E8@ha +/* 80190A94 0018D9F4 38 03 A2 E8 */ addi r0, r3, lbl_803DA2E8@l +/* 80190A98 0018D9F8 90 1F 00 00 */ stw r0, 0(r31) +lbl_80190A9C: +/* 80190A9C 0018D9FC 7C 80 07 35 */ extsh. r0, r4 +/* 80190AA0 0018DA00 40 81 00 0C */ ble lbl_80190AAC +/* 80190AA4 0018DA04 7F E3 FB 78 */ mr r3, r31 +/* 80190AA8 0018DA08 48 18 4E 89 */ bl Free__7CMemoryFPCv +lbl_80190AAC: +/* 80190AAC 0018DA0C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80190AB0 0018DA10 7F E3 FB 78 */ mr r3, r31 +/* 80190AB4 0018DA14 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80190AB8 0018DA18 7C 08 03 A6 */ mtlr r0 +/* 80190ABC 0018DA1C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80190AC0 0018DA20 4E 80 00 20 */ blr + +.global Update__19CHudHelmetInterfaceFf +Update__19CHudHelmetInterfaceFf: +/* 80190AC4 0018DA24 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80190AC8 0018DA28 7C 08 02 A6 */ mflr r0 +/* 80190ACC 0018DA2C 90 01 00 54 */ stw r0, 0x54(r1) +/* 80190AD0 0018DA30 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 80190AD4 0018DA34 7C 7F 1B 78 */ mr r31, r3 +/* 80190AD8 0018DA38 88 63 00 3C */ lbz r3, 0x3c(r3) +/* 80190ADC 0018DA3C 54 60 EF FF */ rlwinm. r0, r3, 0x1d, 0x1f, 0x1f +/* 80190AE0 0018DA40 41 82 00 68 */ beq lbl_80190B48 +/* 80190AE4 0018DA44 38 00 00 00 */ li r0, 0 +/* 80190AE8 0018DA48 7F E4 FB 78 */ mr r4, r31 +/* 80190AEC 0018DA4C 50 03 1F 38 */ rlwimi r3, r0, 3, 0x1c, 0x1c +/* 80190AF0 0018DA50 38 A1 00 08 */ addi r5, r1, 8 +/* 80190AF4 0018DA54 98 7F 00 3C */ stb r3, 0x3c(r31) +/* 80190AF8 0018DA58 38 61 00 14 */ addi r3, r1, 0x14 +/* 80190AFC 0018DA5C C0 3F 00 28 */ lfs f1, 0x28(r31) +/* 80190B00 0018DA60 C0 1F 00 34 */ lfs f0, 0x34(r31) +/* 80190B04 0018DA64 C0 7F 00 2C */ lfs f3, 0x2c(r31) +/* 80190B08 0018DA68 EC 81 00 2A */ fadds f4, f1, f0 +/* 80190B0C 0018DA6C C0 5F 00 38 */ lfs f2, 0x38(r31) +/* 80190B10 0018DA70 C0 3F 00 24 */ lfs f1, 0x24(r31) +/* 80190B14 0018DA74 C0 1F 00 30 */ lfs f0, 0x30(r31) +/* 80190B18 0018DA78 EC 43 10 2A */ fadds f2, f3, f2 +/* 80190B1C 0018DA7C EC 01 00 2A */ fadds f0, f1, f0 +/* 80190B20 0018DA80 D0 81 00 0C */ stfs f4, 0xc(r1) +/* 80190B24 0018DA84 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 80190B28 0018DA88 D0 01 00 08 */ stfs f0, 8(r1) +/* 80190B2C 0018DA8C 48 18 27 4D */ bl __ct__12CTransform4fFRC9CMatrix3fRC9CVector3f +/* 80190B30 0018DA90 83 FF 00 44 */ lwz r31, 0x44(r31) +/* 80190B34 0018DA94 38 81 00 14 */ addi r4, r1, 0x14 +/* 80190B38 0018DA98 38 7F 00 74 */ addi r3, r31, 0x74 +/* 80190B3C 0018DA9C 48 18 20 05 */ bl __as__12CTransform4fFRC12CTransform4f +/* 80190B40 0018DAA0 7F E3 FB 78 */ mr r3, r31 +/* 80190B44 0018DAA4 48 13 9B 21 */ bl ReapplyXform__10CGuiWidgetFv +lbl_80190B48: +/* 80190B48 0018DAA8 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80190B4C 0018DAAC 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 80190B50 0018DAB0 7C 08 03 A6 */ mtlr r0 +/* 80190B54 0018DAB4 38 21 00 50 */ addi r1, r1, 0x50 +/* 80190B58 0018DAB8 4E 80 00 20 */ blr + +.global SetHudLagOffset__19CHudHelmetInterfaceFRC9CVector3f +SetHudLagOffset__19CHudHelmetInterfaceFRC9CVector3f: +/* 80190B5C 0018DABC C0 04 00 00 */ lfs f0, 0(r4) +/* 80190B60 0018DAC0 38 A0 00 01 */ li r5, 1 +/* 80190B64 0018DAC4 D0 03 00 30 */ stfs f0, 0x30(r3) +/* 80190B68 0018DAC8 C0 04 00 04 */ lfs f0, 4(r4) +/* 80190B6C 0018DACC D0 03 00 34 */ stfs f0, 0x34(r3) +/* 80190B70 0018DAD0 C0 04 00 08 */ lfs f0, 8(r4) +/* 80190B74 0018DAD4 D0 03 00 38 */ stfs f0, 0x38(r3) +/* 80190B78 0018DAD8 88 03 00 3C */ lbz r0, 0x3c(r3) +/* 80190B7C 0018DADC 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 80190B80 0018DAE0 98 03 00 3C */ stb r0, 0x3c(r3) +/* 80190B84 0018DAE4 4E 80 00 20 */ blr + +.global SetHudLagRotation__19CHudHelmetInterfaceFRC9CMatrix3f +SetHudLagRotation__19CHudHelmetInterfaceFRC9CMatrix3f: +/* 80190B88 0018DAE8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80190B8C 0018DAEC 7C 08 02 A6 */ mflr r0 +/* 80190B90 0018DAF0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80190B94 0018DAF4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80190B98 0018DAF8 7C 7F 1B 78 */ mr r31, r3 +/* 80190B9C 0018DAFC 48 17 F4 5D */ bl __as__9CMatrix3fFRC9CMatrix3f +/* 80190BA0 0018DB00 88 1F 00 3C */ lbz r0, 0x3c(r31) +/* 80190BA4 0018DB04 38 60 00 01 */ li r3, 1 +/* 80190BA8 0018DB08 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 80190BAC 0018DB0C 98 1F 00 3C */ stb r0, 0x3c(r31) +/* 80190BB0 0018DB10 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80190BB4 0018DB14 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80190BB8 0018DB18 7C 08 03 A6 */ mtlr r0 +/* 80190BBC 0018DB1C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80190BC0 0018DB20 4E 80 00 20 */ blr + +.global AddHelmetLightValue__19CHudHelmetInterfaceFf +AddHelmetLightValue__19CHudHelmetInterfaceFf: +/* 80190BC4 0018DB24 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80190BC8 0018DB28 7C 08 02 A6 */ mflr r0 +/* 80190BCC 0018DB2C FC 40 08 90 */ fmr f2, f1 +/* 80190BD0 0018DB30 90 01 00 24 */ stw r0, 0x24(r1) +/* 80190BD4 0018DB34 FC 60 08 90 */ fmr f3, f1 +/* 80190BD8 0018DB38 FC 80 08 90 */ fmr f4, f1 +/* 80190BDC 0018DB3C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80190BE0 0018DB40 7C 7F 1B 78 */ mr r31, r3 +/* 80190BE4 0018DB44 38 61 00 0C */ addi r3, r1, 0xc +/* 80190BE8 0018DB48 48 1D 28 05 */ bl __ct__6CColorFffff +/* 80190BEC 0018DB4C 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80190BF0 0018DB50 38 61 00 08 */ addi r3, r1, 8 +/* 80190BF4 0018DB54 38 A1 00 0C */ addi r5, r1, 0xc +/* 80190BF8 0018DB58 38 84 00 8C */ addi r4, r4, 0x8c +/* 80190BFC 0018DB5C 48 1D 24 B5 */ bl Add__6CColorFRC6CColorRC6CColor +/* 80190C00 0018DB60 80 7F 00 50 */ lwz r3, 0x50(r31) +/* 80190C04 0018DB64 38 81 00 08 */ addi r4, r1, 8 +/* 80190C08 0018DB68 48 13 9C 65 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80190C0C 0018DB6C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80190C10 0018DB70 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80190C14 0018DB74 7C 08 03 A6 */ mtlr r0 +/* 80190C18 0018DB78 38 21 00 20 */ addi r1, r1, 0x20 +/* 80190C1C 0018DB7C 4E 80 00 20 */ blr + +.global UpdateCameraDebugSettings__19CHudHelmetInterfaceFfff +UpdateCameraDebugSettings__19CHudHelmetInterfaceFfff: +/* 80190C20 0018DB80 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 80190C24 0018DB84 7C 08 02 A6 */ mflr r0 +/* 80190C28 0018DB88 C0 02 A5 18 */ lfs f0, lbl_805AC238@sda21(r2) +/* 80190C2C 0018DB8C 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 80190C30 0018DB90 93 E1 00 9C */ stw r31, 0x9c(r1) +/* 80190C34 0018DB94 7C 7F 1B 78 */ mr r31, r3 +/* 80190C38 0018DB98 81 43 00 40 */ lwz r10, 0x40(r3) +/* 80190C3C 0018DB9C 38 61 00 44 */ addi r3, r1, 0x44 +/* 80190C40 0018DBA0 80 8A 00 BC */ lwz r4, 0xbc(r10) +/* 80190C44 0018DBA4 81 2A 00 C0 */ lwz r9, 0xc0(r10) +/* 80190C48 0018DBA8 90 81 00 2C */ stw r4, 0x2c(r1) +/* 80190C4C 0018DBAC 81 0A 00 C4 */ lwz r8, 0xc4(r10) +/* 80190C50 0018DBB0 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 80190C54 0018DBB4 80 EA 00 C8 */ lwz r7, 0xc8(r10) +/* 80190C58 0018DBB8 80 CA 00 CC */ lwz r6, 0xcc(r10) +/* 80190C5C 0018DBBC 80 AA 00 D0 */ lwz r5, 0xd0(r10) +/* 80190C60 0018DBC0 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 80190C64 0018DBC4 90 81 00 14 */ stw r4, 0x14(r1) +/* 80190C68 0018DBC8 90 0A 00 BC */ stw r0, 0xbc(r10) +/* 80190C6C 0018DBCC 91 2A 00 C0 */ stw r9, 0xc0(r10) +/* 80190C70 0018DBD0 91 0A 00 C4 */ stw r8, 0xc4(r10) +/* 80190C74 0018DBD4 90 EA 00 C8 */ stw r7, 0xc8(r10) +/* 80190C78 0018DBD8 90 CA 00 CC */ stw r6, 0xcc(r10) +/* 80190C7C 0018DBDC 90 AA 00 D0 */ stw r5, 0xd0(r10) +/* 80190C80 0018DBE0 D0 01 00 08 */ stfs f0, 8(r1) +/* 80190C84 0018DBE4 D0 41 00 0C */ stfs f2, 0xc(r1) +/* 80190C88 0018DBE8 D0 61 00 10 */ stfs f3, 0x10(r1) +/* 80190C8C 0018DBEC 80 9F 00 40 */ lwz r4, 0x40(r31) +/* 80190C90 0018DBF0 91 21 00 18 */ stw r9, 0x18(r1) +/* 80190C94 0018DBF4 38 84 00 74 */ addi r4, r4, 0x74 +/* 80190C98 0018DBF8 91 01 00 1C */ stw r8, 0x1c(r1) +/* 80190C9C 0018DBFC 90 E1 00 20 */ stw r7, 0x20(r1) +/* 80190CA0 0018DC00 90 C1 00 24 */ stw r6, 0x24(r1) +/* 80190CA4 0018DC04 90 A1 00 28 */ stw r5, 0x28(r1) +/* 80190CA8 0018DC08 91 21 00 30 */ stw r9, 0x30(r1) +/* 80190CAC 0018DC0C 91 01 00 34 */ stw r8, 0x34(r1) +/* 80190CB0 0018DC10 90 E1 00 38 */ stw r7, 0x38(r1) +/* 80190CB4 0018DC14 90 C1 00 3C */ stw r6, 0x3c(r1) +/* 80190CB8 0018DC18 90 A1 00 40 */ stw r5, 0x40(r1) +/* 80190CBC 0018DC1C 48 18 24 39 */ bl BuildMatrix3f__12CTransform4fCFv +/* 80190CC0 0018DC20 38 61 00 68 */ addi r3, r1, 0x68 +/* 80190CC4 0018DC24 38 81 00 44 */ addi r4, r1, 0x44 +/* 80190CC8 0018DC28 38 A1 00 08 */ addi r5, r1, 8 +/* 80190CCC 0018DC2C 48 18 25 AD */ bl __ct__12CTransform4fFRC9CMatrix3fRC9CVector3f +/* 80190CD0 0018DC30 83 FF 00 40 */ lwz r31, 0x40(r31) +/* 80190CD4 0018DC34 38 81 00 68 */ addi r4, r1, 0x68 +/* 80190CD8 0018DC38 38 7F 00 74 */ addi r3, r31, 0x74 +/* 80190CDC 0018DC3C 48 18 1E 65 */ bl __as__12CTransform4fFRC12CTransform4f +/* 80190CE0 0018DC40 7F E3 FB 78 */ mr r3, r31 +/* 80190CE4 0018DC44 48 13 99 81 */ bl ReapplyXform__10CGuiWidgetFv +/* 80190CE8 0018DC48 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 80190CEC 0018DC4C 83 E1 00 9C */ lwz r31, 0x9c(r1) +/* 80190CF0 0018DC50 7C 08 03 A6 */ mtlr r0 +/* 80190CF4 0018DC54 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 80190CF8 0018DC58 4E 80 00 20 */ blr + +.global UpdateVisibility__19CHudHelmetInterfaceFv +UpdateVisibility__19CHudHelmetInterfaceFv: +/* 80190CFC 0018DC5C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80190D00 0018DC60 7C 08 02 A6 */ mflr r0 +/* 80190D04 0018DC64 38 80 00 00 */ li r4, 0 +/* 80190D08 0018DC68 90 01 00 14 */ stw r0, 0x14(r1) +/* 80190D0C 0018DC6C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80190D10 0018DC70 93 C1 00 08 */ stw r30, 8(r1) +/* 80190D14 0018DC74 7C 7E 1B 78 */ mr r30, r3 +/* 80190D18 0018DC78 88 63 00 3C */ lbz r3, 0x3c(r3) +/* 80190D1C 0018DC7C 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f +/* 80190D20 0018DC80 41 82 00 10 */ beq lbl_80190D30 +/* 80190D24 0018DC84 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f +/* 80190D28 0018DC88 41 82 00 08 */ beq lbl_80190D30 +/* 80190D2C 0018DC8C 38 80 00 01 */ li r4, 1 +lbl_80190D30: +/* 80190D30 0018DC90 88 7E 00 3C */ lbz r3, 0x3c(r30) +/* 80190D34 0018DC94 3B E0 00 00 */ li r31, 0 +/* 80190D38 0018DC98 54 60 DF FF */ rlwinm. r0, r3, 0x1b, 0x1f, 0x1f +/* 80190D3C 0018DC9C 41 82 00 10 */ beq lbl_80190D4C +/* 80190D40 0018DCA0 54 60 E7 FF */ rlwinm. r0, r3, 0x1c, 0x1f, 0x1f +/* 80190D44 0018DCA4 41 82 00 08 */ beq lbl_80190D4C +/* 80190D48 0018DCA8 3B E0 00 01 */ li r31, 1 +lbl_80190D4C: +/* 80190D4C 0018DCAC 80 7E 00 48 */ lwz r3, 0x48(r30) +/* 80190D50 0018DCB0 54 84 06 3E */ clrlwi r4, r4, 0x18 +/* 80190D54 0018DCB4 38 A0 00 01 */ li r5, 1 +/* 80190D58 0018DCB8 48 13 99 91 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80190D5C 0018DCBC 80 7E 00 4C */ lwz r3, 0x4c(r30) +/* 80190D60 0018DCC0 57 E4 06 3E */ clrlwi r4, r31, 0x18 +/* 80190D64 0018DCC4 38 A0 00 01 */ li r5, 1 +/* 80190D68 0018DCC8 48 13 99 81 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80190D6C 0018DCCC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80190D70 0018DCD0 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80190D74 0018DCD4 83 C1 00 08 */ lwz r30, 8(r1) +/* 80190D78 0018DCD8 7C 08 03 A6 */ mtlr r0 +/* 80190D7C 0018DCDC 38 21 00 10 */ addi r1, r1, 0x10 +/* 80190D80 0018DCE0 4E 80 00 20 */ blr + +.global UpdateHelmetAlpha__19CHudHelmetInterfaceFv +UpdateHelmetAlpha__19CHudHelmetInterfaceFv: +/* 80190D84 0018DCE4 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80190D88 0018DCE8 7C 08 02 A6 */ mflr r0 +/* 80190D8C 0018DCEC 90 01 00 44 */ stw r0, 0x44(r1) +/* 80190D90 0018DCF0 DB E1 00 30 */ stfd f31, 0x30(r1) +/* 80190D94 0018DCF4 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 80190D98 0018DCF8 DB C1 00 20 */ stfd f30, 0x20(r1) +/* 80190D9C 0018DCFC F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 +/* 80190DA0 0018DD00 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80190DA4 0018DD04 80 8D A0 80 */ lwz r4, gpGameState@sda21(r13) +/* 80190DA8 0018DD08 7C 7F 1B 78 */ mr r31, r3 +/* 80190DAC 0018DD0C 38 64 01 7C */ addi r3, r4, 0x17c +/* 80190DB0 0018DD10 48 07 DF 91 */ bl GetHelmetAlpha__12CGameOptionsCFv +/* 80190DB4 0018DD14 FF E0 08 90 */ fmr f31, f1 +/* 80190DB8 0018DD18 48 1B 91 F5 */ bl White__6CColorFv +/* 80190DBC 0018DD1C C0 02 A5 1C */ lfs f0, lbl_805AC23C@sda21(r2) +/* 80190DC0 0018DD20 EF C0 07 F2 */ fmuls f30, f0, f31 +/* 80190DC4 0018DD24 F3 C1 A0 08 */ psq_st f30, 8(r1), 1, qr2 +/* 80190DC8 0018DD28 38 81 00 0C */ addi r4, r1, 0xc +/* 80190DCC 0018DD2C 80 63 00 00 */ lwz r3, 0(r3) +/* 80190DD0 0018DD30 88 01 00 08 */ lbz r0, 8(r1) +/* 80190DD4 0018DD34 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 80190DD8 0018DD38 90 01 00 0C */ stw r0, 0xc(r1) +/* 80190DDC 0018DD3C 80 7F 00 44 */ lwz r3, 0x44(r31) +/* 80190DE0 0018DD40 48 13 9A 8D */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80190DE4 0018DD44 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 80190DE8 0018DD48 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 80190DEC 0018DD4C E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 +/* 80190DF0 0018DD50 CB C1 00 20 */ lfd f30, 0x20(r1) +/* 80190DF4 0018DD54 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80190DF8 0018DD58 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80190DFC 0018DD5C 7C 08 03 A6 */ mtlr r0 +/* 80190E00 0018DD60 38 21 00 40 */ addi r1, r1, 0x40 +/* 80190E04 0018DD64 4E 80 00 20 */ blr + +.global SetIsVisibleDebug__19CHudHelmetInterfaceFbb +SetIsVisibleDebug__19CHudHelmetInterfaceFbb: +/* 80190E08 0018DD68 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80190E0C 0018DD6C 7C 08 02 A6 */ mflr r0 +/* 80190E10 0018DD70 90 01 00 14 */ stw r0, 0x14(r1) +/* 80190E14 0018DD74 88 03 00 3C */ lbz r0, 0x3c(r3) +/* 80190E18 0018DD78 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 80190E1C 0018DD7C 98 03 00 3C */ stb r0, 0x3c(r3) +/* 80190E20 0018DD80 88 03 00 3C */ lbz r0, 0x3c(r3) +/* 80190E24 0018DD84 50 A0 2E B4 */ rlwimi r0, r5, 5, 0x1a, 0x1a +/* 80190E28 0018DD88 98 03 00 3C */ stb r0, 0x3c(r3) +/* 80190E2C 0018DD8C 4B FF FE D1 */ bl UpdateVisibility__19CHudHelmetInterfaceFv +/* 80190E30 0018DD90 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80190E34 0018DD94 7C 08 03 A6 */ mtlr r0 +/* 80190E38 0018DD98 38 21 00 10 */ addi r1, r1, 0x10 +/* 80190E3C 0018DD9C 4E 80 00 20 */ blr + +.global __ct__19CHudHelmetInterfaceFR9CGuiFrame +__ct__19CHudHelmetInterfaceFR9CGuiFrame: +/* 80190E40 0018DDA0 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80190E44 0018DDA4 7C 08 02 A6 */ mflr r0 +/* 80190E48 0018DDA8 3C A0 80 5A */ lis r5, lbl_805A65FC@ha +/* 80190E4C 0018DDAC 3C C0 80 3D */ lis r6, lbl_803D0BD8@ha +/* 80190E50 0018DDB0 90 01 00 64 */ stw r0, 0x64(r1) +/* 80190E54 0018DDB4 38 05 65 FC */ addi r0, r5, lbl_805A65FC@l +/* 80190E58 0018DDB8 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 80190E5C 0018DDBC 3B E6 0B D8 */ addi r31, r6, lbl_803D0BD8@l +/* 80190E60 0018DDC0 93 C1 00 58 */ stw r30, 0x58(r1) +/* 80190E64 0018DDC4 7C 9E 23 78 */ mr r30, r4 +/* 80190E68 0018DDC8 7C 04 03 78 */ mr r4, r0 +/* 80190E6C 0018DDCC 93 A1 00 54 */ stw r29, 0x54(r1) +/* 80190E70 0018DDD0 7C 7D 1B 78 */ mr r29, r3 +/* 80190E74 0018DDD4 48 17 F1 B1 */ bl __ct__9CMatrix3fFRC9CMatrix3f +/* 80190E78 0018DDD8 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80190E7C 0018DDDC 38 C0 00 01 */ li r6, 1 +/* 80190E80 0018DDE0 38 E3 66 A0 */ addi r7, r3, skZero3f@l +/* 80190E84 0018DDE4 38 A0 00 00 */ li r5, 0 +/* 80190E88 0018DDE8 C0 07 00 00 */ lfs f0, 0(r7) +/* 80190E8C 0018DDEC 38 61 00 38 */ addi r3, r1, 0x38 +/* 80190E90 0018DDF0 38 9F 00 00 */ addi r4, r31, 0 +/* 80190E94 0018DDF4 D0 1D 00 24 */ stfs f0, 0x24(r29) +/* 80190E98 0018DDF8 C0 07 00 04 */ lfs f0, 4(r7) +/* 80190E9C 0018DDFC D0 1D 00 28 */ stfs f0, 0x28(r29) +/* 80190EA0 0018DE00 C0 07 00 08 */ lfs f0, 8(r7) +/* 80190EA4 0018DE04 D0 1D 00 2C */ stfs f0, 0x2c(r29) +/* 80190EA8 0018DE08 C0 07 00 00 */ lfs f0, 0(r7) +/* 80190EAC 0018DE0C D0 1D 00 30 */ stfs f0, 0x30(r29) +/* 80190EB0 0018DE10 C0 07 00 04 */ lfs f0, 4(r7) +/* 80190EB4 0018DE14 D0 1D 00 34 */ stfs f0, 0x34(r29) +/* 80190EB8 0018DE18 C0 07 00 08 */ lfs f0, 8(r7) +/* 80190EBC 0018DE1C D0 1D 00 38 */ stfs f0, 0x38(r29) +/* 80190EC0 0018DE20 88 1D 00 3C */ lbz r0, 0x3c(r29) +/* 80190EC4 0018DE24 50 C0 3E 30 */ rlwimi r0, r6, 7, 0x18, 0x18 +/* 80190EC8 0018DE28 98 1D 00 3C */ stb r0, 0x3c(r29) +/* 80190ECC 0018DE2C 88 1D 00 3C */ lbz r0, 0x3c(r29) +/* 80190ED0 0018DE30 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19 +/* 80190ED4 0018DE34 98 1D 00 3C */ stb r0, 0x3c(r29) +/* 80190ED8 0018DE38 88 1D 00 3C */ lbz r0, 0x3c(r29) +/* 80190EDC 0018DE3C 50 C0 2E B4 */ rlwimi r0, r6, 5, 0x1a, 0x1a +/* 80190EE0 0018DE40 98 1D 00 3C */ stb r0, 0x3c(r29) +/* 80190EE4 0018DE44 88 1D 00 3C */ lbz r0, 0x3c(r29) +/* 80190EE8 0018DE48 50 C0 26 F6 */ rlwimi r0, r6, 4, 0x1b, 0x1b +/* 80190EEC 0018DE4C 98 1D 00 3C */ stb r0, 0x3c(r29) +/* 80190EF0 0018DE50 88 1D 00 3C */ lbz r0, 0x3c(r29) +/* 80190EF4 0018DE54 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 80190EF8 0018DE58 98 1D 00 3C */ stb r0, 0x3c(r29) +/* 80190EFC 0018DE5C 80 1E 00 14 */ lwz r0, 0x14(r30) +/* 80190F00 0018DE60 90 1D 00 40 */ stw r0, 0x40(r29) +/* 80190F04 0018DE64 4B E7 3D B5 */ bl string_l__4rstlFPCc +/* 80190F08 0018DE68 7F C3 F3 78 */ mr r3, r30 +/* 80190F0C 0018DE6C 38 81 00 38 */ addi r4, r1, 0x38 +/* 80190F10 0018DE70 48 13 12 C5 */ bl "FindWidget__9CGuiFrameCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80190F14 0018DE74 90 7D 00 44 */ stw r3, 0x44(r29) +/* 80190F18 0018DE78 38 61 00 38 */ addi r3, r1, 0x38 +/* 80190F1C 0018DE7C 48 1A CB C5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80190F20 0018DE80 38 61 00 28 */ addi r3, r1, 0x28 +/* 80190F24 0018DE84 38 9F 00 14 */ addi r4, r31, 0x14 +/* 80190F28 0018DE88 4B E7 3D 91 */ bl string_l__4rstlFPCc +/* 80190F2C 0018DE8C 7F C3 F3 78 */ mr r3, r30 +/* 80190F30 0018DE90 38 81 00 28 */ addi r4, r1, 0x28 +/* 80190F34 0018DE94 48 13 12 A1 */ bl "FindWidget__9CGuiFrameCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80190F38 0018DE98 90 7D 00 48 */ stw r3, 0x48(r29) +/* 80190F3C 0018DE9C 38 61 00 28 */ addi r3, r1, 0x28 +/* 80190F40 0018DEA0 48 1A CB A1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80190F44 0018DEA4 38 61 00 18 */ addi r3, r1, 0x18 +/* 80190F48 0018DEA8 38 9F 00 28 */ addi r4, r31, 0x28 +/* 80190F4C 0018DEAC 4B E7 3D 6D */ bl string_l__4rstlFPCc +/* 80190F50 0018DEB0 7F C3 F3 78 */ mr r3, r30 +/* 80190F54 0018DEB4 38 81 00 18 */ addi r4, r1, 0x18 +/* 80190F58 0018DEB8 48 13 12 7D */ bl "FindWidget__9CGuiFrameCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80190F5C 0018DEBC 90 7D 00 4C */ stw r3, 0x4c(r29) +/* 80190F60 0018DEC0 38 61 00 18 */ addi r3, r1, 0x18 +/* 80190F64 0018DEC4 48 1A CB 7D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80190F68 0018DEC8 38 61 00 08 */ addi r3, r1, 8 +/* 80190F6C 0018DECC 38 9F 00 38 */ addi r4, r31, 0x38 +/* 80190F70 0018DED0 4B E7 3D 49 */ bl string_l__4rstlFPCc +/* 80190F74 0018DED4 7F C3 F3 78 */ mr r3, r30 +/* 80190F78 0018DED8 38 81 00 08 */ addi r4, r1, 8 +/* 80190F7C 0018DEDC 48 13 12 59 */ bl "FindWidget__9CGuiFrameCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80190F80 0018DEE0 90 7D 00 50 */ stw r3, 0x50(r29) +/* 80190F84 0018DEE4 38 61 00 08 */ addi r3, r1, 8 +/* 80190F88 0018DEE8 48 1A CB 59 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80190F8C 0018DEEC 80 7D 00 44 */ lwz r3, 0x44(r29) +/* 80190F90 0018DEF0 C0 43 00 A0 */ lfs f2, 0xa0(r3) +/* 80190F94 0018DEF4 C0 23 00 90 */ lfs f1, 0x90(r3) +/* 80190F98 0018DEF8 C0 03 00 80 */ lfs f0, 0x80(r3) +/* 80190F9C 0018DEFC D0 1D 00 24 */ stfs f0, 0x24(r29) +/* 80190FA0 0018DF00 D0 3D 00 28 */ stfs f1, 0x28(r29) +/* 80190FA4 0018DF04 D0 5D 00 2C */ stfs f2, 0x2c(r29) +/* 80190FA8 0018DF08 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80190FAC 0018DF0C 80 7D 00 50 */ lwz r3, 0x50(r29) +/* 80190FB0 0018DF10 38 84 00 8C */ addi r4, r4, 0x8c +/* 80190FB4 0018DF14 48 13 98 B9 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80190FB8 0018DF18 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80190FBC 0018DF1C 7F A3 EB 78 */ mr r3, r29 +/* 80190FC0 0018DF20 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 80190FC4 0018DF24 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 80190FC8 0018DF28 83 A1 00 54 */ lwz r29, 0x54(r1) +/* 80190FCC 0018DF2C 7C 08 03 A6 */ mtlr r0 +/* 80190FD0 0018DF30 38 21 00 60 */ addi r1, r1, 0x60 +/* 80190FD4 0018DF34 4E 80 00 20 */ blr + +.global Update__20CHudMissileInterfaceFfRC13CStateManager +Update__20CHudMissileInterfaceFfRC13CStateManager: +/* 80190FD8 0018DF38 94 21 FE 60 */ stwu r1, -0x1a0(r1) +/* 80190FDC 0018DF3C 7C 08 02 A6 */ mflr r0 +/* 80190FE0 0018DF40 90 01 01 A4 */ stw r0, 0x1a4(r1) +/* 80190FE4 0018DF44 DB E1 01 90 */ stfd f31, 0x190(r1) +/* 80190FE8 0018DF48 F3 E1 01 98 */ psq_st f31, 408(r1), 0, qr0 +/* 80190FEC 0018DF4C DB C1 01 80 */ stfd f30, 0x180(r1) +/* 80190FF0 0018DF50 F3 C1 01 88 */ psq_st f30, 392(r1), 0, qr0 +/* 80190FF4 0018DF54 DB A1 01 70 */ stfd f29, 0x170(r1) +/* 80190FF8 0018DF58 F3 A1 01 78 */ psq_st f29, 376(r1), 0, qr0 +/* 80190FFC 0018DF5C DB 81 01 60 */ stfd f28, 0x160(r1) +/* 80191000 0018DF60 F3 81 01 68 */ psq_st f28, 360(r1), 0, qr0 +/* 80191004 0018DF64 BF 61 01 4C */ stmw r27, 0x14c(r1) +/* 80191008 0018DF68 7C 7F 1B 78 */ mr r31, r3 +/* 8019100C 0018DF6C 80 64 08 B8 */ lwz r3, 0x8b8(r4) +/* 80191010 0018DF70 80 1F 00 04 */ lwz r0, 4(r31) +/* 80191014 0018DF74 FF A0 08 90 */ fmr f29, f1 +/* 80191018 0018DF78 83 C3 00 00 */ lwz r30, 0(r3) +/* 8019101C 0018DF7C 2C 00 00 01 */ cmpwi r0, 1 +/* 80191020 0018DF80 40 80 00 14 */ bge lbl_80191034 +/* 80191024 0018DF84 80 7F 00 5C */ lwz r3, 0x5c(r31) +/* 80191028 0018DF88 38 80 00 00 */ li r4, 0 +/* 8019102C 0018DF8C 48 13 96 01 */ bl SetIsVisible__10CGuiWidgetFb +/* 80191030 0018DF90 48 00 00 10 */ b lbl_80191040 +lbl_80191034: +/* 80191034 0018DF94 80 7F 00 5C */ lwz r3, 0x5c(r31) +/* 80191038 0018DF98 38 80 00 01 */ li r4, 1 +/* 8019103C 0018DF9C 48 13 95 F1 */ bl SetIsVisible__10CGuiWidgetFb +lbl_80191040: +/* 80191040 0018DFA0 C0 5F 00 54 */ lfs f2, 0x54(r31) +/* 80191044 0018DFA4 C0 02 A5 20 */ lfs f0, lbl_805AC240@sda21(r2) +/* 80191048 0018DFA8 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8019104C 0018DFAC 40 80 00 30 */ bge lbl_8019107C +/* 80191050 0018DFB0 C0 22 A5 24 */ lfs f1, lbl_805AC244@sda21(r2) +/* 80191054 0018DFB4 C0 02 A5 28 */ lfs f0, lbl_805AC248@sda21(r2) +/* 80191058 0018DFB8 EC 21 17 7C */ fnmsubs f1, f1, f29, f2 +/* 8019105C 0018DFBC D0 3F 00 54 */ stfs f1, 0x54(r31) +/* 80191060 0018DFC0 C0 3F 00 54 */ lfs f1, 0x54(r31) +/* 80191064 0018DFC4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80191068 0018DFC8 4C 40 13 82 */ cror 2, 0, 2 +/* 8019106C 0018DFCC 40 82 00 3C */ bne lbl_801910A8 +/* 80191070 0018DFD0 C0 02 A5 2C */ lfs f0, lbl_805AC24C@sda21(r2) +/* 80191074 0018DFD4 D0 1F 00 54 */ stfs f0, 0x54(r31) +/* 80191078 0018DFD8 48 00 00 30 */ b lbl_801910A8 +lbl_8019107C: +/* 8019107C 0018DFDC 40 81 00 2C */ ble lbl_801910A8 +/* 80191080 0018DFE0 EC 22 E8 28 */ fsubs f1, f2, f29 +/* 80191084 0018DFE4 C0 0D 8F 38 */ lfs f0, lbl_805A7AF8@sda21(r13) +/* 80191088 0018DFE8 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 8019108C 0018DFEC D0 21 00 60 */ stfs f1, 0x60(r1) +/* 80191090 0018DFF0 40 80 00 0C */ bge lbl_8019109C +/* 80191094 0018DFF4 38 61 00 60 */ addi r3, r1, 0x60 +/* 80191098 0018DFF8 48 00 00 08 */ b lbl_801910A0 +lbl_8019109C: +/* 8019109C 0018DFFC 38 6D 8F 38 */ addi r3, r13, lbl_805A7AF8@sda21 +lbl_801910A0: +/* 801910A0 0018E000 C0 03 00 00 */ lfs f0, 0(r3) +/* 801910A4 0018E004 D0 1F 00 54 */ stfs f0, 0x54(r31) +lbl_801910A8: +/* 801910A8 0018E008 C0 1F 00 54 */ lfs f0, 0x54(r31) +/* 801910AC 0018E00C 80 AD A1 3C */ lwz r5, gpTweakGuiColors@sda21(r13) +/* 801910B0 0018E010 FC 00 02 10 */ fabs f0, f0 +/* 801910B4 0018E014 C0 22 A5 30 */ lfs f1, lbl_805AC250@sda21(r2) +/* 801910B8 0018E018 3B A5 00 94 */ addi r29, r5, 0x94 +/* 801910BC 0018E01C FC 00 00 18 */ frsp f0, f0 +/* 801910C0 0018E020 EF 81 00 32 */ fmuls f28, f1, f0 +/* 801910C4 0018E024 F3 81 A0 0B */ psq_st f28, 11(r1), 1, qr2 +/* 801910C8 0018E028 38 61 00 5C */ addi r3, r1, 0x5c +/* 801910CC 0018E02C 38 81 00 7C */ addi r4, r1, 0x7c +/* 801910D0 0018E030 38 A5 00 28 */ addi r5, r5, 0x28 +/* 801910D4 0018E034 88 01 00 0B */ lbz r0, 0xb(r1) +/* 801910D8 0018E038 98 01 00 7C */ stb r0, 0x7c(r1) +/* 801910DC 0018E03C 98 01 00 7D */ stb r0, 0x7d(r1) +/* 801910E0 0018E040 98 01 00 7E */ stb r0, 0x7e(r1) +/* 801910E4 0018E044 98 01 00 7F */ stb r0, 0x7f(r1) +/* 801910E8 0018E048 48 1D 20 91 */ bl Modulate__6CColorFRC6CColorRC6CColor +/* 801910EC 0018E04C 80 01 00 5C */ lwz r0, 0x5c(r1) +/* 801910F0 0018E050 C0 42 A5 20 */ lfs f2, lbl_805AC240@sda21(r2) +/* 801910F4 0018E054 90 01 00 78 */ stw r0, 0x78(r1) +/* 801910F8 0018E058 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 801910FC 0018E05C FC 01 10 40 */ fcmpo cr0, f1, f2 +/* 80191100 0018E060 40 81 00 48 */ ble lbl_80191148 +/* 80191104 0018E064 80 AD A1 3C */ lwz r5, gpTweakGuiColors@sda21(r13) +/* 80191108 0018E068 7F A4 EB 78 */ mr r4, r29 +/* 8019110C 0018E06C 38 61 00 58 */ addi r3, r1, 0x58 +/* 80191110 0018E070 38 A5 00 A0 */ addi r5, r5, 0xa0 +/* 80191114 0018E074 48 1D 21 99 */ bl Lerp__6CColorFRC6CColorRC6CColorf +/* 80191118 0018E078 80 01 00 58 */ lwz r0, 0x58(r1) +/* 8019111C 0018E07C 38 61 00 54 */ addi r3, r1, 0x54 +/* 80191120 0018E080 38 81 00 74 */ addi r4, r1, 0x74 +/* 80191124 0018E084 38 A1 00 78 */ addi r5, r1, 0x78 +/* 80191128 0018E088 90 01 00 74 */ stw r0, 0x74(r1) +/* 8019112C 0018E08C 48 1D 1F 85 */ bl Add__6CColorFRC6CColorRC6CColor +/* 80191130 0018E090 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80191134 0018E094 38 81 00 74 */ addi r4, r1, 0x74 +/* 80191138 0018E098 90 01 00 74 */ stw r0, 0x74(r1) +/* 8019113C 0018E09C 80 7F 00 74 */ lwz r3, 0x74(r31) +/* 80191140 0018E0A0 48 13 97 2D */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80191144 0018E0A4 48 00 01 40 */ b lbl_80191284 +lbl_80191148: +/* 80191148 0018E0A8 C0 1F 00 4C */ lfs f0, 0x4c(r31) +/* 8019114C 0018E0AC FC 00 10 40 */ fcmpo cr0, f0, f2 +/* 80191150 0018E0B0 40 81 00 D4 */ ble lbl_80191224 +/* 80191154 0018E0B4 4B F0 00 A9 */ bl GetMissileComboChargeFactor__12CPlayerStateFv +/* 80191158 0018E0B8 C0 5F 00 4C */ lfs f2, 0x4c(r31) +/* 8019115C 0018E0BC C0 0D 8F 3C */ lfs f0, lbl_805A7AFC@sda21(r13) +/* 80191160 0018E0C0 EC 22 08 24 */ fdivs f1, f2, f1 +/* 80191164 0018E0C4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80191168 0018E0C8 D0 21 00 50 */ stfs f1, 0x50(r1) +/* 8019116C 0018E0CC 40 80 00 0C */ bge lbl_80191178 +/* 80191170 0018E0D0 38 61 00 50 */ addi r3, r1, 0x50 +/* 80191174 0018E0D4 48 00 00 08 */ b lbl_8019117C +lbl_80191178: +/* 80191178 0018E0D8 38 6D 8F 3C */ addi r3, r13, lbl_805A7AFC@sda21 +lbl_8019117C: +/* 8019117C 0018E0DC C3 83 00 00 */ lfs f28, 0(r3) +/* 80191180 0018E0E0 7F C3 F3 78 */ mr r3, r30 +/* 80191184 0018E0E4 4B F0 00 99 */ bl GetMissileCostForAltAttack__12CPlayerStateCFv +/* 80191188 0018E0E8 80 1F 00 08 */ lwz r0, 8(r31) +/* 8019118C 0018E0EC 7C 00 18 00 */ cmpw r0, r3 +/* 80191190 0018E0F0 41 80 00 4C */ blt lbl_801911DC +/* 80191194 0018E0F4 80 AD A1 3C */ lwz r5, gpTweakGuiColors@sda21(r13) +/* 80191198 0018E0F8 FC 20 E0 90 */ fmr f1, f28 +/* 8019119C 0018E0FC 7F A4 EB 78 */ mr r4, r29 +/* 801911A0 0018E100 38 61 00 4C */ addi r3, r1, 0x4c +/* 801911A4 0018E104 38 A5 00 98 */ addi r5, r5, 0x98 +/* 801911A8 0018E108 48 1D 21 05 */ bl Lerp__6CColorFRC6CColorRC6CColorf +/* 801911AC 0018E10C 80 01 00 4C */ lwz r0, 0x4c(r1) +/* 801911B0 0018E110 38 61 00 48 */ addi r3, r1, 0x48 +/* 801911B4 0018E114 38 81 00 70 */ addi r4, r1, 0x70 +/* 801911B8 0018E118 38 A1 00 78 */ addi r5, r1, 0x78 +/* 801911BC 0018E11C 90 01 00 70 */ stw r0, 0x70(r1) +/* 801911C0 0018E120 48 1D 1E F1 */ bl Add__6CColorFRC6CColorRC6CColor +/* 801911C4 0018E124 80 01 00 48 */ lwz r0, 0x48(r1) +/* 801911C8 0018E128 38 81 00 70 */ addi r4, r1, 0x70 +/* 801911CC 0018E12C 90 01 00 70 */ stw r0, 0x70(r1) +/* 801911D0 0018E130 80 7F 00 74 */ lwz r3, 0x74(r31) +/* 801911D4 0018E134 48 13 96 99 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 801911D8 0018E138 48 00 00 AC */ b lbl_80191284 +lbl_801911DC: +/* 801911DC 0018E13C 80 AD A1 3C */ lwz r5, gpTweakGuiColors@sda21(r13) +/* 801911E0 0018E140 FC 20 E0 90 */ fmr f1, f28 +/* 801911E4 0018E144 7F A4 EB 78 */ mr r4, r29 +/* 801911E8 0018E148 38 61 00 44 */ addi r3, r1, 0x44 +/* 801911EC 0018E14C 38 A5 00 9C */ addi r5, r5, 0x9c +/* 801911F0 0018E150 48 1D 20 BD */ bl Lerp__6CColorFRC6CColorRC6CColorf +/* 801911F4 0018E154 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801911F8 0018E158 38 61 00 40 */ addi r3, r1, 0x40 +/* 801911FC 0018E15C 38 81 00 6C */ addi r4, r1, 0x6c +/* 80191200 0018E160 38 A1 00 78 */ addi r5, r1, 0x78 +/* 80191204 0018E164 90 01 00 6C */ stw r0, 0x6c(r1) +/* 80191208 0018E168 48 1D 1E A9 */ bl Add__6CColorFRC6CColorRC6CColor +/* 8019120C 0018E16C 80 01 00 40 */ lwz r0, 0x40(r1) +/* 80191210 0018E170 38 81 00 6C */ addi r4, r1, 0x6c +/* 80191214 0018E174 90 01 00 6C */ stw r0, 0x6c(r1) +/* 80191218 0018E178 80 7F 00 74 */ lwz r3, 0x74(r31) +/* 8019121C 0018E17C 48 13 96 51 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80191220 0018E180 48 00 00 64 */ b lbl_80191284 +lbl_80191224: +/* 80191224 0018E184 88 1F 00 58 */ lbz r0, 0x58(r31) +/* 80191228 0018E188 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8019122C 0018E18C 41 82 00 30 */ beq lbl_8019125C +/* 80191230 0018E190 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80191234 0018E194 38 61 00 3C */ addi r3, r1, 0x3c +/* 80191238 0018E198 38 A1 00 78 */ addi r5, r1, 0x78 +/* 8019123C 0018E19C 38 84 00 28 */ addi r4, r4, 0x28 +/* 80191240 0018E1A0 48 1D 1E 71 */ bl Add__6CColorFRC6CColorRC6CColor +/* 80191244 0018E1A4 80 01 00 3C */ lwz r0, 0x3c(r1) +/* 80191248 0018E1A8 38 81 00 68 */ addi r4, r1, 0x68 +/* 8019124C 0018E1AC 90 01 00 68 */ stw r0, 0x68(r1) +/* 80191250 0018E1B0 80 7F 00 74 */ lwz r3, 0x74(r31) +/* 80191254 0018E1B4 48 13 96 19 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80191258 0018E1B8 48 00 00 2C */ b lbl_80191284 +lbl_8019125C: +/* 8019125C 0018E1BC 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80191260 0018E1C0 38 61 00 38 */ addi r3, r1, 0x38 +/* 80191264 0018E1C4 38 A1 00 78 */ addi r5, r1, 0x78 +/* 80191268 0018E1C8 38 84 00 94 */ addi r4, r4, 0x94 +/* 8019126C 0018E1CC 48 1D 1E 45 */ bl Add__6CColorFRC6CColorRC6CColor +/* 80191270 0018E1D0 80 01 00 38 */ lwz r0, 0x38(r1) +/* 80191274 0018E1D4 38 81 00 64 */ addi r4, r1, 0x64 +/* 80191278 0018E1D8 90 01 00 64 */ stw r0, 0x64(r1) +/* 8019127C 0018E1DC 80 7F 00 74 */ lwz r3, 0x74(r31) +/* 80191280 0018E1E0 48 13 95 ED */ bl SetColor__10CGuiWidgetFRC6CColor +lbl_80191284: +/* 80191284 0018E1E4 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 80191288 0018E1E8 C0 0D 8F 40 */ lfs f0, lbl_805A7B00@sda21(r13) +/* 8019128C 0018E1EC EC 21 E8 28 */ fsubs f1, f1, f29 +/* 80191290 0018E1F0 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80191294 0018E1F4 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 80191298 0018E1F8 40 80 00 0C */ bge lbl_801912A4 +/* 8019129C 0018E1FC 38 61 00 34 */ addi r3, r1, 0x34 +/* 801912A0 0018E200 48 00 00 08 */ b lbl_801912A8 +lbl_801912A4: +/* 801912A4 0018E204 38 6D 8F 40 */ addi r3, r13, lbl_805A7B00@sda21 +lbl_801912A8: +/* 801912A8 0018E208 C0 03 00 00 */ lfs f0, 0(r3) +/* 801912AC 0018E20C 3C 00 43 30 */ lis r0, 0x4330 +/* 801912B0 0018E210 90 01 01 30 */ stw r0, 0x130(r1) +/* 801912B4 0018E214 C8 22 A5 48 */ lfd f1, lbl_805AC268@sda21(r2) +/* 801912B8 0018E218 D0 1F 00 50 */ stfs f0, 0x50(r31) +/* 801912BC 0018E21C 80 1F 00 04 */ lwz r0, 4(r31) +/* 801912C0 0018E220 80 7F 00 64 */ lwz r3, 0x64(r31) +/* 801912C4 0018E224 6C 00 80 00 */ xoris r0, r0, 0x8000 +/* 801912C8 0018E228 90 01 01 34 */ stw r0, 0x134(r1) +/* 801912CC 0018E22C C8 01 01 30 */ lfd f0, 0x130(r1) +/* 801912D0 0018E230 EC 20 08 28 */ fsubs f1, f0, f1 +/* 801912D4 0018E234 48 13 A6 95 */ bl SetMaxEnergy__16CAuiEnergyBarT01Ff +/* 801912D8 0018E238 80 7F 00 08 */ lwz r3, 8(r31) +/* 801912DC 0018E23C 3C 00 43 30 */ lis r0, 0x4330 +/* 801912E0 0018E240 90 01 01 38 */ stw r0, 0x138(r1) +/* 801912E4 0018E244 38 80 00 00 */ li r4, 0 +/* 801912E8 0018E248 6C 60 80 00 */ xoris r0, r3, 0x8000 +/* 801912EC 0018E24C C8 22 A5 48 */ lfd f1, lbl_805AC268@sda21(r2) +/* 801912F0 0018E250 90 01 01 3C */ stw r0, 0x13c(r1) +/* 801912F4 0018E254 80 7F 00 64 */ lwz r3, 0x64(r31) +/* 801912F8 0018E258 C8 01 01 38 */ lfd f0, 0x138(r1) +/* 801912FC 0018E25C EC 20 08 28 */ fsubs f1, f0, f1 +/* 80191300 0018E260 48 13 A5 C9 */ bl SetCurrEnergy__16CAuiEnergyBarT01Ffb +/* 80191304 0018E264 88 1F 00 58 */ lbz r0, 0x58(r31) +/* 80191308 0018E268 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 8019130C 0018E26C 41 82 00 9C */ beq lbl_801913A8 +/* 80191310 0018E270 80 9F 00 08 */ lwz r4, 8(r31) +/* 80191314 0018E274 3C E0 43 30 */ lis r7, 0x4330 +/* 80191318 0018E278 80 1F 00 04 */ lwz r0, 4(r31) +/* 8019131C 0018E27C 3C 60 80 3D */ lis r3, lbl_803D0D08@ha +/* 80191320 0018E280 6C 85 80 00 */ xoris r5, r4, 0x8000 +/* 80191324 0018E284 80 9F 00 00 */ lwz r4, 0(r31) +/* 80191328 0018E288 90 A1 01 3C */ stw r5, 0x13c(r1) +/* 8019132C 0018E28C 6C 00 80 00 */ xoris r0, r0, 0x8000 +/* 80191330 0018E290 C0 02 A5 20 */ lfs f0, lbl_805AC240@sda21(r2) +/* 80191334 0018E294 54 86 10 3A */ slwi r6, r4, 2 +/* 80191338 0018E298 90 E1 01 38 */ stw r7, 0x138(r1) +/* 8019133C 0018E29C 38 A3 0D 08 */ addi r5, r3, lbl_803D0D08@l +/* 80191340 0018E2A0 C8 82 A5 48 */ lfd f4, lbl_805AC268@sda21(r2) +/* 80191344 0018E2A4 38 61 00 CC */ addi r3, r1, 0xcc +/* 80191348 0018E2A8 C8 21 01 38 */ lfd f1, 0x138(r1) +/* 8019134C 0018E2AC 38 81 00 B0 */ addi r4, r1, 0xb0 +/* 80191350 0018E2B0 90 01 01 34 */ stw r0, 0x134(r1) +/* 80191354 0018E2B4 EC 61 20 28 */ fsubs f3, f1, f4 +/* 80191358 0018E2B8 7C 45 34 2E */ lfsx f2, r5, r6 +/* 8019135C 0018E2BC 90 E1 01 30 */ stw r7, 0x130(r1) +/* 80191360 0018E2C0 C8 21 01 30 */ lfd f1, 0x130(r1) +/* 80191364 0018E2C4 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 80191368 0018E2C8 D0 01 00 B0 */ stfs f0, 0xb0(r1) +/* 8019136C 0018E2CC EC 21 20 28 */ fsubs f1, f1, f4 +/* 80191370 0018E2D0 D0 01 00 B4 */ stfs f0, 0xb4(r1) +/* 80191374 0018E2D4 EC 02 08 24 */ fdivs f0, f2, f1 +/* 80191378 0018E2D8 D0 01 00 B8 */ stfs f0, 0xb8(r1) +/* 8019137C 0018E2DC 48 18 1D C5 */ bl Translate__12CTransform4fFRC9CVector3f +/* 80191380 0018E2E0 38 61 00 FC */ addi r3, r1, 0xfc +/* 80191384 0018E2E4 38 9F 00 10 */ addi r4, r31, 0x10 +/* 80191388 0018E2E8 38 A1 00 CC */ addi r5, r1, 0xcc +/* 8019138C 0018E2EC 48 18 15 C5 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80191390 0018E2F0 83 DF 00 74 */ lwz r30, 0x74(r31) +/* 80191394 0018E2F4 38 81 00 FC */ addi r4, r1, 0xfc +/* 80191398 0018E2F8 38 7E 00 04 */ addi r3, r30, 4 +/* 8019139C 0018E2FC 48 18 17 A5 */ bl __as__12CTransform4fFRC12CTransform4f +/* 801913A0 0018E300 7F C3 F3 78 */ mr r3, r30 +/* 801913A4 0018E304 48 13 34 45 */ bl RecalculateTransforms__10CGuiObjectFv +lbl_801913A8: +/* 801913A8 0018E308 88 1F 00 58 */ lbz r0, 0x58(r31) +/* 801913AC 0018E30C 83 CD A1 3C */ lwz r30, gpTweakGuiColors@sda21(r13) +/* 801913B0 0018E310 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 801913B4 0018E314 41 82 01 5C */ beq lbl_80191510 +/* 801913B8 0018E318 C0 3F 00 0C */ lfs f1, 0xc(r31) +/* 801913BC 0018E31C C0 02 A5 20 */ lfs f0, lbl_805AC240@sda21(r2) +/* 801913C0 0018E320 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801913C4 0018E324 40 81 00 98 */ ble lbl_8019145C +/* 801913C8 0018E328 EC 21 E8 28 */ fsubs f1, f1, f29 +/* 801913CC 0018E32C C0 0D 8F 44 */ lfs f0, lbl_805A7B04@sda21(r13) +/* 801913D0 0018E330 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801913D4 0018E334 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 801913D8 0018E338 40 80 00 0C */ bge lbl_801913E4 +/* 801913DC 0018E33C 38 61 00 30 */ addi r3, r1, 0x30 +/* 801913E0 0018E340 48 00 00 08 */ b lbl_801913E8 +lbl_801913E4: +/* 801913E4 0018E344 38 6D 8F 44 */ addi r3, r13, lbl_805A7B04@sda21 +lbl_801913E8: +/* 801913E8 0018E348 C0 03 00 00 */ lfs f0, 0(r3) +/* 801913EC 0018E34C 38 80 00 01 */ li r4, 1 +/* 801913F0 0018E350 D0 1F 00 0C */ stfs f0, 0xc(r31) +/* 801913F4 0018E354 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) +/* 801913F8 0018E358 C0 3F 00 0C */ lfs f1, 0xc(r31) +/* 801913FC 0018E35C C0 03 00 F4 */ lfs f0, 0xf4(r3) +/* 80191400 0018E360 80 7F 00 6C */ lwz r3, 0x6c(r31) +/* 80191404 0018E364 EF 81 00 24 */ fdivs f28, f1, f0 +/* 80191408 0018E368 48 13 92 25 */ bl SetIsVisible__10CGuiWidgetFb +/* 8019140C 0018E36C 88 7E 00 2B */ lbz r3, 0x2b(r30) +/* 80191410 0018E370 3C 00 43 30 */ lis r0, 0x4330 +/* 80191414 0018E374 90 01 01 38 */ stw r0, 0x138(r1) +/* 80191418 0018E378 C8 22 A5 50 */ lfd f1, lbl_805AC270@sda21(r2) +/* 8019141C 0018E37C 90 61 01 3C */ stw r3, 0x13c(r1) +/* 80191420 0018E380 C8 01 01 38 */ lfd f0, 0x138(r1) +/* 80191424 0018E384 EC 00 08 28 */ fsubs f0, f0, f1 +/* 80191428 0018E388 EF FC 00 32 */ fmuls f31, f28, f0 +/* 8019142C 0018E38C F3 E1 A0 0A */ psq_st f31, 10(r1), 1, qr2 +/* 80191430 0018E390 38 81 00 2C */ addi r4, r1, 0x2c +/* 80191434 0018E394 80 7E 00 28 */ lwz r3, 0x28(r30) +/* 80191438 0018E398 88 01 00 0A */ lbz r0, 0xa(r1) +/* 8019143C 0018E39C 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 80191440 0018E3A0 90 01 00 2C */ stw r0, 0x2c(r1) +/* 80191444 0018E3A4 80 7F 00 6C */ lwz r3, 0x6c(r31) +/* 80191448 0018E3A8 48 13 94 25 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 8019144C 0018E3AC 80 7F 00 70 */ lwz r3, 0x70(r31) +/* 80191450 0018E3B0 38 80 00 00 */ li r4, 0 +/* 80191454 0018E3B4 48 13 91 D9 */ bl SetIsVisible__10CGuiWidgetFb +/* 80191458 0018E3B8 48 00 00 B8 */ b lbl_80191510 +lbl_8019145C: +/* 8019145C 0018E3BC 40 80 00 9C */ bge lbl_801914F8 +/* 80191460 0018E3C0 EC 21 E8 2A */ fadds f1, f1, f29 +/* 80191464 0018E3C4 C0 0D 8F 48 */ lfs f0, lbl_805A7B08@sda21(r13) +/* 80191468 0018E3C8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8019146C 0018E3CC D0 21 00 28 */ stfs f1, 0x28(r1) +/* 80191470 0018E3D0 40 80 00 0C */ bge lbl_8019147C +/* 80191474 0018E3D4 38 61 00 28 */ addi r3, r1, 0x28 +/* 80191478 0018E3D8 48 00 00 08 */ b lbl_80191480 +lbl_8019147C: +/* 8019147C 0018E3DC 38 6D 8F 48 */ addi r3, r13, lbl_805A7B08@sda21 +lbl_80191480: +/* 80191480 0018E3E0 C0 03 00 00 */ lfs f0, 0(r3) +/* 80191484 0018E3E4 38 80 00 01 */ li r4, 1 +/* 80191488 0018E3E8 D0 1F 00 0C */ stfs f0, 0xc(r31) +/* 8019148C 0018E3EC C0 1F 00 0C */ lfs f0, 0xc(r31) +/* 80191490 0018E3F0 80 AD A1 38 */ lwz r5, gpTweakGui@sda21(r13) +/* 80191494 0018E3F4 FC 20 00 50 */ fneg f1, f0 +/* 80191498 0018E3F8 80 7F 00 70 */ lwz r3, 0x70(r31) +/* 8019149C 0018E3FC C0 05 00 F4 */ lfs f0, 0xf4(r5) +/* 801914A0 0018E400 EF 81 00 24 */ fdivs f28, f1, f0 +/* 801914A4 0018E404 48 13 91 89 */ bl SetIsVisible__10CGuiWidgetFb +/* 801914A8 0018E408 88 7E 00 2B */ lbz r3, 0x2b(r30) +/* 801914AC 0018E40C 3C 00 43 30 */ lis r0, 0x4330 +/* 801914B0 0018E410 90 01 01 38 */ stw r0, 0x138(r1) +/* 801914B4 0018E414 C8 22 A5 50 */ lfd f1, lbl_805AC270@sda21(r2) +/* 801914B8 0018E418 90 61 01 3C */ stw r3, 0x13c(r1) +/* 801914BC 0018E41C C8 01 01 38 */ lfd f0, 0x138(r1) +/* 801914C0 0018E420 EC 00 08 28 */ fsubs f0, f0, f1 +/* 801914C4 0018E424 EF FC 00 32 */ fmuls f31, f28, f0 +/* 801914C8 0018E428 F3 E1 A0 09 */ psq_st f31, 9(r1), 1, qr2 +/* 801914CC 0018E42C 38 81 00 24 */ addi r4, r1, 0x24 +/* 801914D0 0018E430 80 7E 00 28 */ lwz r3, 0x28(r30) +/* 801914D4 0018E434 88 01 00 09 */ lbz r0, 9(r1) +/* 801914D8 0018E438 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 801914DC 0018E43C 90 01 00 24 */ stw r0, 0x24(r1) +/* 801914E0 0018E440 80 7F 00 70 */ lwz r3, 0x70(r31) +/* 801914E4 0018E444 48 13 93 89 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 801914E8 0018E448 80 7F 00 6C */ lwz r3, 0x6c(r31) +/* 801914EC 0018E44C 38 80 00 00 */ li r4, 0 +/* 801914F0 0018E450 48 13 91 3D */ bl SetIsVisible__10CGuiWidgetFb +/* 801914F4 0018E454 48 00 00 1C */ b lbl_80191510 +lbl_801914F8: +/* 801914F8 0018E458 80 7F 00 6C */ lwz r3, 0x6c(r31) +/* 801914FC 0018E45C 38 80 00 00 */ li r4, 0 +/* 80191500 0018E460 48 13 91 2D */ bl SetIsVisible__10CGuiWidgetFb +/* 80191504 0018E464 80 7F 00 70 */ lwz r3, 0x70(r31) +/* 80191508 0018E468 38 80 00 00 */ li r4, 0 +/* 8019150C 0018E46C 48 13 91 21 */ bl SetIsVisible__10CGuiWidgetFb +lbl_80191510: +/* 80191510 0018E470 80 1F 00 68 */ lwz r0, 0x68(r31) +/* 80191514 0018E474 28 00 00 00 */ cmplwi r0, 0 +/* 80191518 0018E478 41 82 02 BC */ beq lbl_801917D4 +/* 8019151C 0018E47C 7F E3 FB 78 */ mr r3, r31 +/* 80191520 0018E480 48 00 08 21 */ bl GetMissileInventoryStatus__20CHudMissileInterfaceFv +/* 80191524 0018E484 80 1F 00 44 */ lwz r0, 0x44(r31) +/* 80191528 0018E488 7C 7E 1B 78 */ mr r30, r3 +/* 8019152C 0018E48C 7C 1E 00 00 */ cmpw r30, r0 +/* 80191530 0018E490 41 82 01 54 */ beq lbl_80191684 +/* 80191534 0018E494 2C 1E 00 01 */ cmpwi r30, 1 +/* 80191538 0018E498 3B A0 00 00 */ li r29, 0 +/* 8019153C 0018E49C 3B 80 00 00 */ li r28, 0 +/* 80191540 0018E4A0 3B 60 00 00 */ li r27, 0 +/* 80191544 0018E4A4 40 82 00 28 */ bne lbl_8019156C +/* 80191548 0018E4A8 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8019154C 0018E4AC 38 80 00 0C */ li r4, 0xc +/* 80191550 0018E4B0 48 1C 51 AD */ bl GetString__12CStringTableCFi +/* 80191554 0018E4B4 7C 64 1B 78 */ mr r4, r3 +/* 80191558 0018E4B8 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 8019155C 0018E4BC 4B E8 44 95 */ bl wstring_l__4rstlFPCw +/* 80191560 0018E4C0 38 81 00 A0 */ addi r4, r1, 0xa0 +/* 80191564 0018E4C4 3B A0 00 01 */ li r29, 1 +/* 80191568 0018E4C8 48 00 00 44 */ b lbl_801915AC +lbl_8019156C: +/* 8019156C 0018E4CC 2C 1E 00 02 */ cmpwi r30, 2 +/* 80191570 0018E4D0 40 82 00 28 */ bne lbl_80191598 +/* 80191574 0018E4D4 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 80191578 0018E4D8 38 80 00 0D */ li r4, 0xd +/* 8019157C 0018E4DC 48 1C 51 81 */ bl GetString__12CStringTableCFi +/* 80191580 0018E4E0 7C 64 1B 78 */ mr r4, r3 +/* 80191584 0018E4E4 38 61 00 90 */ addi r3, r1, 0x90 +/* 80191588 0018E4E8 4B E8 44 69 */ bl wstring_l__4rstlFPCw +/* 8019158C 0018E4EC 38 81 00 90 */ addi r4, r1, 0x90 +/* 80191590 0018E4F0 3B 80 00 01 */ li r28, 1 +/* 80191594 0018E4F4 48 00 00 18 */ b lbl_801915AC +lbl_80191598: +/* 80191598 0018E4F8 38 61 00 80 */ addi r3, r1, 0x80 +/* 8019159C 0018E4FC 38 8D 8F 5C */ addi r4, r13, lbl_805A7B1C@sda21 +/* 801915A0 0018E500 4B E8 44 51 */ bl wstring_l__4rstlFPCw +/* 801915A4 0018E504 3B 60 00 01 */ li r27, 1 +/* 801915A8 0018E508 38 81 00 80 */ addi r4, r1, 0x80 +lbl_801915AC: +/* 801915AC 0018E50C 38 61 00 BC */ addi r3, r1, 0xbc +/* 801915B0 0018E510 48 1A C1 D9 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801915B4 0018E514 7F 60 07 75 */ extsb. r0, r27 +/* 801915B8 0018E518 41 82 00 0C */ beq lbl_801915C4 +/* 801915BC 0018E51C 38 61 00 80 */ addi r3, r1, 0x80 +/* 801915C0 0018E520 48 1A BB 75 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801915C4: +/* 801915C4 0018E524 7F 80 07 75 */ extsb. r0, r28 +/* 801915C8 0018E528 41 82 00 0C */ beq lbl_801915D4 +/* 801915CC 0018E52C 38 61 00 90 */ addi r3, r1, 0x90 +/* 801915D0 0018E530 48 1A BB 65 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801915D4: +/* 801915D4 0018E534 7F A0 07 75 */ extsb. r0, r29 +/* 801915D8 0018E538 41 82 00 0C */ beq lbl_801915E4 +/* 801915DC 0018E53C 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 801915E0 0018E540 48 1A BB 55 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801915E4: +/* 801915E4 0018E544 80 7F 00 68 */ lwz r3, 0x68(r31) +/* 801915E8 0018E548 38 81 00 BC */ addi r4, r1, 0xbc +/* 801915EC 0018E54C 38 A0 00 00 */ li r5, 0 +/* 801915F0 0018E550 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 801915F4 0018E554 48 13 82 91 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801915F8 0018E558 80 1F 00 44 */ lwz r0, 0x44(r31) +/* 801915FC 0018E55C 2C 00 00 00 */ cmpwi r0, 0 +/* 80191600 0018E560 40 82 00 40 */ bne lbl_80191640 +/* 80191604 0018E564 2C 1E 00 01 */ cmpwi r30, 1 +/* 80191608 0018E568 40 82 00 38 */ bne lbl_80191640 +/* 8019160C 0018E56C A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80191610 0018E570 38 61 00 20 */ addi r3, r1, 0x20 +/* 80191614 0018E574 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80191618 0018E578 38 80 05 75 */ li r4, 0x575 +/* 8019161C 0018E57C 38 A0 00 7F */ li r5, 0x7f +/* 80191620 0018E580 38 C0 00 40 */ li r6, 0x40 +/* 80191624 0018E584 38 E0 00 00 */ li r7, 0 +/* 80191628 0018E588 39 20 00 00 */ li r9, 0 +/* 8019162C 0018E58C 48 15 87 49 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80191630 0018E590 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) +/* 80191634 0018E594 C0 03 01 A0 */ lfs f0, 0x1a0(r3) +/* 80191638 0018E598 D0 1F 00 48 */ stfs f0, 0x48(r31) +/* 8019163C 0018E59C 48 00 00 3C */ b lbl_80191678 +lbl_80191640: +/* 80191640 0018E5A0 2C 1E 00 02 */ cmpwi r30, 2 +/* 80191644 0018E5A4 40 82 00 34 */ bne lbl_80191678 +/* 80191648 0018E5A8 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 8019164C 0018E5AC 38 61 00 1C */ addi r3, r1, 0x1c +/* 80191650 0018E5B0 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80191654 0018E5B4 38 80 05 75 */ li r4, 0x575 +/* 80191658 0018E5B8 38 A0 00 7F */ li r5, 0x7f +/* 8019165C 0018E5BC 38 C0 00 40 */ li r6, 0x40 +/* 80191660 0018E5C0 38 E0 00 00 */ li r7, 0 +/* 80191664 0018E5C4 39 20 00 00 */ li r9, 0 +/* 80191668 0018E5C8 48 15 87 0D */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 8019166C 0018E5CC 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) +/* 80191670 0018E5D0 C0 03 01 A0 */ lfs f0, 0x1a0(r3) +/* 80191674 0018E5D4 D0 1F 00 48 */ stfs f0, 0x48(r31) +lbl_80191678: +/* 80191678 0018E5D8 93 DF 00 44 */ stw r30, 0x44(r31) +/* 8019167C 0018E5DC 38 61 00 BC */ addi r3, r1, 0xbc +/* 80191680 0018E5E0 48 1A BA B5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80191684: +/* 80191684 0018E5E4 C0 3F 00 48 */ lfs f1, 0x48(r31) +/* 80191688 0018E5E8 C0 0D 8F 4C */ lfs f0, lbl_805A7B0C@sda21(r13) +/* 8019168C 0018E5EC EC 21 E8 28 */ fsubs f1, f1, f29 +/* 80191690 0018E5F0 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80191694 0018E5F4 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 80191698 0018E5F8 40 80 00 0C */ bge lbl_801916A4 +/* 8019169C 0018E5FC 38 61 00 18 */ addi r3, r1, 0x18 +/* 801916A0 0018E600 48 00 00 08 */ b lbl_801916A8 +lbl_801916A4: +/* 801916A4 0018E604 38 6D 8F 4C */ addi r3, r13, lbl_805A7B0C@sda21 +lbl_801916A8: +/* 801916A8 0018E608 C0 03 00 00 */ lfs f0, 0(r3) +/* 801916AC 0018E60C D0 1F 00 48 */ stfs f0, 0x48(r31) +/* 801916B0 0018E610 C0 3F 00 48 */ lfs f1, 0x48(r31) +/* 801916B4 0018E614 C0 0D 8F 50 */ lfs f0, lbl_805A7B10@sda21(r13) +/* 801916B8 0018E618 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801916BC 0018E61C 40 80 00 0C */ bge lbl_801916C8 +/* 801916C0 0018E620 38 7F 00 48 */ addi r3, r31, 0x48 +/* 801916C4 0018E624 48 00 00 08 */ b lbl_801916CC +lbl_801916C8: +/* 801916C8 0018E628 38 6D 8F 50 */ addi r3, r13, lbl_805A7B10@sda21 +lbl_801916CC: +/* 801916CC 0018E62C 80 1F 00 44 */ lwz r0, 0x44(r31) +/* 801916D0 0018E630 C3 E3 00 00 */ lfs f31, 0(r3) +/* 801916D4 0018E634 2C 00 00 00 */ cmpwi r0, 0 +/* 801916D8 0018E638 41 82 00 38 */ beq lbl_80191710 +/* 801916DC 0018E63C C0 42 A5 34 */ lfs f2, lbl_805AC254@sda21(r2) +/* 801916E0 0018E640 C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 801916E4 0018E644 C0 0D 8F 54 */ lfs f0, lbl_805A7B14@sda21(r13) +/* 801916E8 0018E648 EC 22 0F 7A */ fmadds f1, f2, f29, f1 +/* 801916EC 0018E64C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801916F0 0018E650 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 801916F4 0018E654 40 80 00 0C */ bge lbl_80191700 +/* 801916F8 0018E658 38 61 00 14 */ addi r3, r1, 0x14 +/* 801916FC 0018E65C 48 00 00 08 */ b lbl_80191704 +lbl_80191700: +/* 80191700 0018E660 38 6D 8F 54 */ addi r3, r13, lbl_805A7B14@sda21 +lbl_80191704: +/* 80191704 0018E664 C0 03 00 00 */ lfs f0, 0(r3) +/* 80191708 0018E668 D0 1F 00 40 */ stfs f0, 0x40(r31) +/* 8019170C 0018E66C 48 00 00 34 */ b lbl_80191740 +lbl_80191710: +/* 80191710 0018E670 C0 42 A5 34 */ lfs f2, lbl_805AC254@sda21(r2) +/* 80191714 0018E674 C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 80191718 0018E678 C0 0D 8F 58 */ lfs f0, lbl_805A7B18@sda21(r13) +/* 8019171C 0018E67C EC 22 0F 7C */ fnmsubs f1, f2, f29, f1 +/* 80191720 0018E680 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80191724 0018E684 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 80191728 0018E688 40 80 00 0C */ bge lbl_80191734 +/* 8019172C 0018E68C 38 61 00 10 */ addi r3, r1, 0x10 +/* 80191730 0018E690 48 00 00 08 */ b lbl_80191738 +lbl_80191734: +/* 80191734 0018E694 38 6D 8F 58 */ addi r3, r13, lbl_805A7B18@sda21 +lbl_80191738: +/* 80191738 0018E698 C0 03 00 00 */ lfs f0, 0(r3) +/* 8019173C 0018E69C D0 1F 00 40 */ stfs f0, 0x40(r31) +lbl_80191740: +/* 80191740 0018E6A0 48 17 87 A1 */ bl GetSecondsMod900__9CGraphicsFv +/* 80191744 0018E6A4 C8 42 A5 38 */ lfd f2, lbl_805AC258@sda21(r2) +/* 80191748 0018E6A8 48 20 35 65 */ bl fmod +/* 8019174C 0018E6AC FC 00 08 18 */ frsp f0, f1 +/* 80191750 0018E6B0 C0 22 A5 40 */ lfs f1, lbl_805AC260@sda21(r2) +/* 80191754 0018E6B4 C0 5F 00 40 */ lfs f2, 0x40(r31) +/* 80191758 0018E6B8 FC 00 02 10 */ fabs f0, f0 +/* 8019175C 0018E6BC FC 60 00 18 */ frsp f3, f0 +/* 80191760 0018E6C0 FC 03 08 40 */ fcmpo cr0, f3, f1 +/* 80191764 0018E6C4 40 80 00 0C */ bge lbl_80191770 +/* 80191768 0018E6C8 EC 03 08 24 */ fdivs f0, f3, f1 +/* 8019176C 0018E6CC 48 00 00 10 */ b lbl_8019177C +lbl_80191770: +/* 80191770 0018E6D0 C0 02 A5 44 */ lfs f0, lbl_805AC264@sda21(r2) +/* 80191774 0018E6D4 EC 00 18 28 */ fsubs f0, f0, f3 +/* 80191778 0018E6D8 EC 00 08 24 */ fdivs f0, f0, f1 +lbl_8019177C: +/* 8019177C 0018E6DC EC 02 00 32 */ fmuls f0, f2, f0 +/* 80191780 0018E6E0 EF 9F 00 32 */ fmuls f28, f31, f0 +/* 80191784 0018E6E4 48 1B 88 29 */ bl White__6CColorFv +/* 80191788 0018E6E8 C0 02 A5 30 */ lfs f0, lbl_805AC250@sda21(r2) +/* 8019178C 0018E6EC EF C0 07 32 */ fmuls f30, f0, f28 +/* 80191790 0018E6F0 F3 C1 A0 08 */ psq_st f30, 8(r1), 1, qr2 +/* 80191794 0018E6F4 38 81 00 0C */ addi r4, r1, 0xc +/* 80191798 0018E6F8 80 63 00 00 */ lwz r3, 0(r3) +/* 8019179C 0018E6FC 88 01 00 08 */ lbz r0, 8(r1) +/* 801917A0 0018E700 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 801917A4 0018E704 90 01 00 0C */ stw r0, 0xc(r1) +/* 801917A8 0018E708 80 7F 00 68 */ lwz r3, 0x68(r31) +/* 801917AC 0018E70C 48 13 90 C1 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 801917B0 0018E710 80 7F 00 68 */ lwz r3, 0x68(r31) +/* 801917B4 0018E714 88 03 00 AB */ lbz r0, 0xab(r3) +/* 801917B8 0018E718 28 00 00 00 */ cmplwi r0, 0 +/* 801917BC 0018E71C 41 82 00 10 */ beq lbl_801917CC +/* 801917C0 0018E720 38 80 00 01 */ li r4, 1 +/* 801917C4 0018E724 48 13 8E 69 */ bl SetIsVisible__10CGuiWidgetFb +/* 801917C8 0018E728 48 00 00 0C */ b lbl_801917D4 +lbl_801917CC: +/* 801917CC 0018E72C 38 80 00 00 */ li r4, 0 +/* 801917D0 0018E730 48 13 8E 5D */ bl SetIsVisible__10CGuiWidgetFb +lbl_801917D4: +/* 801917D4 0018E734 E3 E1 01 98 */ psq_l f31, 408(r1), 0, qr0 +/* 801917D8 0018E738 CB E1 01 90 */ lfd f31, 0x190(r1) +/* 801917DC 0018E73C E3 C1 01 88 */ psq_l f30, 392(r1), 0, qr0 +/* 801917E0 0018E740 CB C1 01 80 */ lfd f30, 0x180(r1) +/* 801917E4 0018E744 E3 A1 01 78 */ psq_l f29, 376(r1), 0, qr0 +/* 801917E8 0018E748 CB A1 01 70 */ lfd f29, 0x170(r1) +/* 801917EC 0018E74C E3 81 01 68 */ psq_l f28, 360(r1), 0, qr0 +/* 801917F0 0018E750 CB 81 01 60 */ lfd f28, 0x160(r1) +/* 801917F4 0018E754 BB 61 01 4C */ lmw r27, 0x14c(r1) +/* 801917F8 0018E758 80 01 01 A4 */ lwz r0, 0x1a4(r1) +/* 801917FC 0018E75C 7C 08 03 A6 */ mtlr r0 +/* 80191800 0018E760 38 21 01 A0 */ addi r1, r1, 0x1a0 +/* 80191804 0018E764 4E 80 00 20 */ blr + +.global UpdateVisibility__20CHudMissileInterfaceFRC13CStateManager +UpdateVisibility__20CHudMissileInterfaceFRC13CStateManager: +/* 80191808 0018E768 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8019180C 0018E76C 7C 08 02 A6 */ mflr r0 +/* 80191810 0018E770 90 01 00 24 */ stw r0, 0x24(r1) +/* 80191814 0018E774 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80191818 0018E778 3B E0 00 00 */ li r31, 0 +/* 8019181C 0018E77C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80191820 0018E780 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80191824 0018E784 7C 9D 23 78 */ mr r29, r4 +/* 80191828 0018E788 93 81 00 10 */ stw r28, 0x10(r1) +/* 8019182C 0018E78C 7C 7C 1B 78 */ mr r28, r3 +/* 80191830 0018E790 88 63 00 58 */ lbz r3, 0x58(r3) +/* 80191834 0018E794 54 60 DF FF */ rlwinm. r0, r3, 0x1b, 0x1f, 0x1f +/* 80191838 0018E798 41 82 00 10 */ beq lbl_80191848 +/* 8019183C 0018E79C 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f +/* 80191840 0018E7A0 41 82 00 08 */ beq lbl_80191848 +/* 80191844 0018E7A4 3B E0 00 01 */ li r31, 1 +lbl_80191848: +/* 80191848 0018E7A8 57 FE 06 3E */ clrlwi r30, r31, 0x18 +/* 8019184C 0018E7AC 80 7C 00 5C */ lwz r3, 0x5c(r28) +/* 80191850 0018E7B0 7F C4 F3 78 */ mr r4, r30 +/* 80191854 0018E7B4 38 A0 00 01 */ li r5, 1 +/* 80191858 0018E7B8 48 13 8E 91 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 8019185C 0018E7BC 80 7C 00 64 */ lwz r3, 0x64(r28) +/* 80191860 0018E7C0 7F C4 F3 78 */ mr r4, r30 +/* 80191864 0018E7C4 38 A0 00 01 */ li r5, 1 +/* 80191868 0018E7C8 48 13 8E 81 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 8019186C 0018E7CC 7F C0 F3 79 */ or. r0, r30, r30 +/* 80191870 0018E7D0 41 82 00 14 */ beq lbl_80191884 +/* 80191874 0018E7D4 C0 22 A5 20 */ lfs f1, lbl_805AC240@sda21(r2) +/* 80191878 0018E7D8 7F 83 E3 78 */ mr r3, r28 +/* 8019187C 0018E7DC 7F A4 EB 78 */ mr r4, r29 +/* 80191880 0018E7E0 4B FF F7 59 */ bl Update__20CHudMissileInterfaceFfRC13CStateManager +lbl_80191884: +/* 80191884 0018E7E4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80191888 0018E7E8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8019188C 0018E7EC 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80191890 0018E7F0 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80191894 0018E7F4 83 81 00 10 */ lwz r28, 0x10(r1) +/* 80191898 0018E7F8 7C 08 03 A6 */ mtlr r0 +/* 8019189C 0018E7FC 38 21 00 20 */ addi r1, r1, 0x20 +/* 801918A0 0018E800 4E 80 00 20 */ blr + +.global SetIsVisibleGame__20CHudMissileInterfaceFbRC13CStateManager +SetIsVisibleGame__20CHudMissileInterfaceFbRC13CStateManager: +/* 801918A4 0018E804 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801918A8 0018E808 7C 08 02 A6 */ mflr r0 +/* 801918AC 0018E80C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801918B0 0018E810 88 03 00 58 */ lbz r0, 0x58(r3) +/* 801918B4 0018E814 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 801918B8 0018E818 7C A4 2B 78 */ mr r4, r5 +/* 801918BC 0018E81C 98 03 00 58 */ stb r0, 0x58(r3) +/* 801918C0 0018E820 4B FF FF 49 */ bl UpdateVisibility__20CHudMissileInterfaceFRC13CStateManager +/* 801918C4 0018E824 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801918C8 0018E828 7C 08 03 A6 */ mtlr r0 +/* 801918CC 0018E82C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801918D0 0018E830 4E 80 00 20 */ blr + +.global SetIsMissilesActive__20CHudMissileInterfaceFb +SetIsMissilesActive__20CHudMissileInterfaceFb: +/* 801918D4 0018E834 88 03 00 58 */ lbz r0, 0x58(r3) +/* 801918D8 0018E838 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801918DC 0018E83C 98 03 00 58 */ stb r0, 0x58(r3) +/* 801918E0 0018E840 4E 80 00 20 */ blr + +.global SetChargeBeamFactor__20CHudMissileInterfaceFf +SetChargeBeamFactor__20CHudMissileInterfaceFf: +/* 801918E4 0018E844 D0 23 00 4C */ stfs f1, 0x4c(r3) +/* 801918E8 0018E848 4E 80 00 20 */ blr + +.global SetNumMissiles__20CHudMissileInterfaceFiRC13CStateManager +SetNumMissiles__20CHudMissileInterfaceFiRC13CStateManager: +/* 801918EC 0018E84C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801918F0 0018E850 7C 08 02 A6 */ mflr r0 +/* 801918F4 0018E854 90 01 00 34 */ stw r0, 0x34(r1) +/* 801918F8 0018E858 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801918FC 0018E85C 7C BF 2B 78 */ mr r31, r5 +/* 80191900 0018E860 38 AD 8F 34 */ addi r5, r13, lbl_805A7AF4@sda21 +/* 80191904 0018E864 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80191908 0018E868 7C 7E 1B 78 */ mr r30, r3 +/* 8019190C 0018E86C 38 6D 8F 30 */ addi r3, r13, lbl_805A7AF0@sda21 +/* 80191910 0018E870 90 81 00 08 */ stw r4, 8(r1) +/* 80191914 0018E874 38 81 00 08 */ addi r4, r1, 8 +/* 80191918 0018E878 4B EC 87 4D */ bl "Clamp__5CMathFRCiRCiRCi" +/* 8019191C 0018E87C 3C 80 80 3D */ lis r4, lbl_803D0D30@ha +/* 80191920 0018E880 80 A3 00 00 */ lwz r5, 0(r3) +/* 80191924 0018E884 38 84 0D 30 */ addi r4, r4, lbl_803D0D30@l +/* 80191928 0018E888 38 61 00 10 */ addi r3, r1, 0x10 +/* 8019192C 0018E88C 4C C6 31 82 */ crclr 6 +/* 80191930 0018E890 48 1F C3 AD */ bl sprintf +/* 80191934 0018E894 38 61 00 14 */ addi r3, r1, 0x14 +/* 80191938 0018E898 38 81 00 10 */ addi r4, r1, 0x10 +/* 8019193C 0018E89C 38 C1 00 0C */ addi r6, r1, 0xc +/* 80191940 0018E8A0 38 A0 FF FF */ li r5, -1 +/* 80191944 0018E8A4 48 1A C8 51 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator" +/* 80191948 0018E8A8 80 7E 00 60 */ lwz r3, 0x60(r30) +/* 8019194C 0018E8AC 38 81 00 14 */ addi r4, r1, 0x14 +/* 80191950 0018E8B0 38 A0 00 00 */ li r5, 0 +/* 80191954 0018E8B4 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80191958 0018E8B8 48 13 81 B1 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8019195C 0018E8BC 38 61 00 14 */ addi r3, r1, 0x14 +/* 80191960 0018E8C0 48 1A C1 81 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80191964 0018E8C4 80 7E 00 08 */ lwz r3, 8(r30) +/* 80191968 0018E8C8 80 01 00 08 */ lwz r0, 8(r1) +/* 8019196C 0018E8CC 7C 03 00 00 */ cmpw r3, r0 +/* 80191970 0018E8D0 40 80 00 1C */ bge lbl_8019198C +/* 80191974 0018E8D4 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) +/* 80191978 0018E8D8 C0 02 A5 58 */ lfs f0, lbl_805AC278@sda21(r2) +/* 8019197C 0018E8DC C0 23 00 F4 */ lfs f1, 0xf4(r3) +/* 80191980 0018E8E0 D0 3E 00 0C */ stfs f1, 0xc(r30) +/* 80191984 0018E8E4 D0 1E 00 54 */ stfs f0, 0x54(r30) +/* 80191988 0018E8E8 48 00 00 1C */ b lbl_801919A4 +lbl_8019198C: +/* 8019198C 0018E8EC 40 81 00 18 */ ble lbl_801919A4 +/* 80191990 0018E8F0 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) +/* 80191994 0018E8F4 C0 22 A5 28 */ lfs f1, lbl_805AC248@sda21(r2) +/* 80191998 0018E8F8 C0 03 00 F4 */ lfs f0, 0xf4(r3) +/* 8019199C 0018E8FC EC 01 00 32 */ fmuls f0, f1, f0 +/* 801919A0 0018E900 D0 1E 00 0C */ stfs f0, 0xc(r30) +lbl_801919A4: +/* 801919A4 0018E904 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 801919A8 0018E908 80 63 00 00 */ lwz r3, 0(r3) +/* 801919AC 0018E90C 4B EF F8 71 */ bl GetMissileCostForAltAttack__12CPlayerStateCFv +/* 801919B0 0018E910 80 81 00 08 */ lwz r4, 8(r1) +/* 801919B4 0018E914 80 1E 00 08 */ lwz r0, 8(r30) +/* 801919B8 0018E918 7C 64 1A 14 */ add r3, r4, r3 +/* 801919BC 0018E91C 7C 03 00 00 */ cmpw r3, r0 +/* 801919C0 0018E920 41 81 00 0C */ bgt lbl_801919CC +/* 801919C4 0018E924 C0 02 A5 2C */ lfs f0, lbl_805AC24C@sda21(r2) +/* 801919C8 0018E928 D0 1E 00 50 */ stfs f0, 0x50(r30) +lbl_801919CC: +/* 801919CC 0018E92C 80 01 00 08 */ lwz r0, 8(r1) +/* 801919D0 0018E930 90 1E 00 08 */ stw r0, 8(r30) +/* 801919D4 0018E934 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801919D8 0018E938 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801919DC 0018E93C 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801919E0 0018E940 7C 08 03 A6 */ mtlr r0 +/* 801919E4 0018E944 38 21 00 30 */ addi r1, r1, 0x30 +/* 801919E8 0018E948 4E 80 00 20 */ blr + +.global SetMissileCapacity__20CHudMissileInterfaceFf +SetMissileCapacity__20CHudMissileInterfaceFf: +/* 801919EC 0018E94C 90 83 00 04 */ stw r4, 4(r3) +/* 801919F0 0018E950 4E 80 00 20 */ blr + +.global __ct__20CHudMissileInterfaceFR9CGuiFrameiifbUiRC13CStateManager +__ct__20CHudMissileInterfaceFR9CGuiFrameiifbUiRC13CStateManager: +/* 801919F4 0018E954 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 801919F8 0018E958 7C 08 02 A6 */ mflr r0 +/* 801919FC 0018E95C 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 80191A00 0018E960 DB E1 00 90 */ stfd f31, 0x90(r1) +/* 80191A04 0018E964 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 +/* 80191A08 0018E968 BF 41 00 78 */ stmw r26, 0x78(r1) +/* 80191A0C 0018E96C 7C 7C 1B 78 */ mr r28, r3 +/* 80191A10 0018E970 7D 1D 43 78 */ mr r29, r8 +/* 80191A14 0018E974 93 A3 00 00 */ stw r29, 0(r3) +/* 80191A18 0018E978 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 80191A1C 0018E97C 3D 00 80 3D */ lis r8, lbl_803D0C28@ha +/* 80191A20 0018E980 C0 02 A5 20 */ lfs f0, lbl_805AC240@sda21(r2) +/* 80191A24 0018E984 90 BC 00 04 */ stw r5, 4(r28) +/* 80191A28 0018E988 FF E0 08 90 */ fmr f31, f1 +/* 80191A2C 0018E98C 38 03 66 70 */ addi r0, r3, skIdentity4f@l +/* 80191A30 0018E990 7C 9A 23 78 */ mr r26, r4 +/* 80191A34 0018E994 90 DC 00 08 */ stw r6, 8(r28) +/* 80191A38 0018E998 7C FB 3B 78 */ mr r27, r7 +/* 80191A3C 0018E99C 7D 3E 4B 78 */ mr r30, r9 +/* 80191A40 0018E9A0 D0 1C 00 0C */ stfs f0, 0xc(r28) +/* 80191A44 0018E9A4 7C 04 03 78 */ mr r4, r0 +/* 80191A48 0018E9A8 3B E8 0C 28 */ addi r31, r8, lbl_803D0C28@l +/* 80191A4C 0018E9AC 38 7C 00 10 */ addi r3, r28, 0x10 +/* 80191A50 0018E9B0 48 18 11 25 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80191A54 0018E9B4 C0 02 A5 20 */ lfs f0, lbl_805AC240@sda21(r2) +/* 80191A58 0018E9B8 38 00 00 00 */ li r0, 0 +/* 80191A5C 0018E9BC 38 A0 00 01 */ li r5, 1 +/* 80191A60 0018E9C0 38 61 00 68 */ addi r3, r1, 0x68 +/* 80191A64 0018E9C4 D0 1C 00 40 */ stfs f0, 0x40(r28) +/* 80191A68 0018E9C8 38 9F 00 00 */ addi r4, r31, 0 +/* 80191A6C 0018E9CC 90 1C 00 44 */ stw r0, 0x44(r28) +/* 80191A70 0018E9D0 D0 1C 00 48 */ stfs f0, 0x48(r28) +/* 80191A74 0018E9D4 D3 FC 00 4C */ stfs f31, 0x4c(r28) +/* 80191A78 0018E9D8 D0 1C 00 50 */ stfs f0, 0x50(r28) +/* 80191A7C 0018E9DC D0 1C 00 54 */ stfs f0, 0x54(r28) +/* 80191A80 0018E9E0 88 1C 00 58 */ lbz r0, 0x58(r28) +/* 80191A84 0018E9E4 53 60 3E 30 */ rlwimi r0, r27, 7, 0x18, 0x18 +/* 80191A88 0018E9E8 98 1C 00 58 */ stb r0, 0x58(r28) +/* 80191A8C 0018E9EC 88 1C 00 58 */ lbz r0, 0x58(r28) +/* 80191A90 0018E9F0 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 80191A94 0018E9F4 98 1C 00 58 */ stb r0, 0x58(r28) +/* 80191A98 0018E9F8 88 1C 00 58 */ lbz r0, 0x58(r28) +/* 80191A9C 0018E9FC 50 A0 2E B4 */ rlwimi r0, r5, 5, 0x1a, 0x1a +/* 80191AA0 0018EA00 98 1C 00 58 */ stb r0, 0x58(r28) +/* 80191AA4 0018EA04 4B E7 32 15 */ bl string_l__4rstlFPCc +/* 80191AA8 0018EA08 7F 43 D3 78 */ mr r3, r26 +/* 80191AAC 0018EA0C 38 81 00 68 */ addi r4, r1, 0x68 +/* 80191AB0 0018EA10 48 13 07 25 */ bl "FindWidget__9CGuiFrameCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80191AB4 0018EA14 90 7C 00 5C */ stw r3, 0x5c(r28) +/* 80191AB8 0018EA18 38 61 00 68 */ addi r3, r1, 0x68 +/* 80191ABC 0018EA1C 48 1A C0 25 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80191AC0 0018EA20 38 61 00 58 */ addi r3, r1, 0x58 +/* 80191AC4 0018EA24 38 9F 00 18 */ addi r4, r31, 0x18 +/* 80191AC8 0018EA28 4B E7 31 F1 */ bl string_l__4rstlFPCc +/* 80191ACC 0018EA2C 7F 43 D3 78 */ mr r3, r26 +/* 80191AD0 0018EA30 38 81 00 58 */ addi r4, r1, 0x58 +/* 80191AD4 0018EA34 48 13 07 01 */ bl "FindWidget__9CGuiFrameCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80191AD8 0018EA38 90 7C 00 60 */ stw r3, 0x60(r28) +/* 80191ADC 0018EA3C 38 61 00 58 */ addi r3, r1, 0x58 +/* 80191AE0 0018EA40 48 1A C0 01 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80191AE4 0018EA44 38 61 00 48 */ addi r3, r1, 0x48 +/* 80191AE8 0018EA48 38 9F 00 30 */ addi r4, r31, 0x30 +/* 80191AEC 0018EA4C 4B E7 31 CD */ bl string_l__4rstlFPCc +/* 80191AF0 0018EA50 7F 43 D3 78 */ mr r3, r26 +/* 80191AF4 0018EA54 38 81 00 48 */ addi r4, r1, 0x48 +/* 80191AF8 0018EA58 48 13 06 DD */ bl "FindWidget__9CGuiFrameCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80191AFC 0018EA5C 90 7C 00 64 */ stw r3, 0x64(r28) +/* 80191B00 0018EA60 38 61 00 48 */ addi r3, r1, 0x48 +/* 80191B04 0018EA64 48 1A BF DD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80191B08 0018EA68 38 61 00 38 */ addi r3, r1, 0x38 +/* 80191B0C 0018EA6C 38 9F 00 48 */ addi r4, r31, 0x48 +/* 80191B10 0018EA70 4B E7 31 A9 */ bl string_l__4rstlFPCc +/* 80191B14 0018EA74 7F 43 D3 78 */ mr r3, r26 +/* 80191B18 0018EA78 38 81 00 38 */ addi r4, r1, 0x38 +/* 80191B1C 0018EA7C 48 13 06 B9 */ bl "FindWidget__9CGuiFrameCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80191B20 0018EA80 90 7C 00 68 */ stw r3, 0x68(r28) +/* 80191B24 0018EA84 38 61 00 38 */ addi r3, r1, 0x38 +/* 80191B28 0018EA88 48 1A BF B9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80191B2C 0018EA8C 38 61 00 28 */ addi r3, r1, 0x28 +/* 80191B30 0018EA90 38 9F 00 60 */ addi r4, r31, 0x60 +/* 80191B34 0018EA94 4B E7 31 85 */ bl string_l__4rstlFPCc +/* 80191B38 0018EA98 7F 43 D3 78 */ mr r3, r26 +/* 80191B3C 0018EA9C 38 81 00 28 */ addi r4, r1, 0x28 +/* 80191B40 0018EAA0 48 13 06 95 */ bl "FindWidget__9CGuiFrameCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80191B44 0018EAA4 90 7C 00 6C */ stw r3, 0x6c(r28) +/* 80191B48 0018EAA8 38 61 00 28 */ addi r3, r1, 0x28 +/* 80191B4C 0018EAAC 48 1A BF 95 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80191B50 0018EAB0 38 61 00 18 */ addi r3, r1, 0x18 +/* 80191B54 0018EAB4 38 9F 00 78 */ addi r4, r31, 0x78 +/* 80191B58 0018EAB8 4B E7 31 61 */ bl string_l__4rstlFPCc +/* 80191B5C 0018EABC 7F 43 D3 78 */ mr r3, r26 +/* 80191B60 0018EAC0 38 81 00 18 */ addi r4, r1, 0x18 +/* 80191B64 0018EAC4 48 13 06 71 */ bl "FindWidget__9CGuiFrameCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80191B68 0018EAC8 90 7C 00 70 */ stw r3, 0x70(r28) +/* 80191B6C 0018EACC 38 61 00 18 */ addi r3, r1, 0x18 +/* 80191B70 0018EAD0 48 1A BF 71 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80191B74 0018EAD4 38 61 00 08 */ addi r3, r1, 8 +/* 80191B78 0018EAD8 38 9F 00 90 */ addi r4, r31, 0x90 +/* 80191B7C 0018EADC 4B E7 31 3D */ bl string_l__4rstlFPCc +/* 80191B80 0018EAE0 7F 43 D3 78 */ mr r3, r26 +/* 80191B84 0018EAE4 38 81 00 08 */ addi r4, r1, 8 +/* 80191B88 0018EAE8 48 13 06 4D */ bl "FindWidget__9CGuiFrameCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80191B8C 0018EAEC 90 7C 00 74 */ stw r3, 0x74(r28) +/* 80191B90 0018EAF0 38 61 00 08 */ addi r3, r1, 8 +/* 80191B94 0018EAF4 48 1A BF 4D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80191B98 0018EAF8 80 1C 00 6C */ lwz r0, 0x6c(r28) +/* 80191B9C 0018EAFC 38 60 00 00 */ li r3, 0 +/* 80191BA0 0018EB00 28 00 00 00 */ cmplwi r0, 0 +/* 80191BA4 0018EB04 41 82 00 14 */ beq lbl_80191BB8 +/* 80191BA8 0018EB08 80 1C 00 70 */ lwz r0, 0x70(r28) +/* 80191BAC 0018EB0C 28 00 00 00 */ cmplwi r0, 0 +/* 80191BB0 0018EB10 41 82 00 08 */ beq lbl_80191BB8 +/* 80191BB4 0018EB14 38 60 00 01 */ li r3, 1 +lbl_80191BB8: +/* 80191BB8 0018EB18 88 9C 00 58 */ lbz r4, 0x58(r28) +/* 80191BBC 0018EB1C 50 64 26 F6 */ rlwimi r4, r3, 4, 0x1b, 0x1b +/* 80191BC0 0018EB20 20 7D 00 02 */ subfic r3, r29, 2 +/* 80191BC4 0018EB24 38 1D FF FE */ addi r0, r29, -2 +/* 80191BC8 0018EB28 98 9C 00 58 */ stb r4, 0x58(r28) +/* 80191BCC 0018EB2C 7C 60 03 78 */ or r0, r3, r0 +/* 80191BD0 0018EB30 54 04 0F FE */ srwi r4, r0, 0x1f +/* 80191BD4 0018EB34 38 7C 00 10 */ addi r3, r28, 0x10 +/* 80191BD8 0018EB38 88 1C 00 58 */ lbz r0, 0x58(r28) +/* 80191BDC 0018EB3C 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c +/* 80191BE0 0018EB40 98 1C 00 58 */ stb r0, 0x58(r28) +/* 80191BE4 0018EB44 80 9C 00 74 */ lwz r4, 0x74(r28) +/* 80191BE8 0018EB48 38 84 00 04 */ addi r4, r4, 4 +/* 80191BEC 0018EB4C 48 18 0F 55 */ bl __as__12CTransform4fFRC12CTransform4f +/* 80191BF0 0018EB50 80 7C 00 60 */ lwz r3, 0x60(r28) +/* 80191BF4 0018EB54 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80191BF8 0018EB58 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80191BFC 0018EB5C 38 84 01 A4 */ addi r4, r4, 0x1a4 +/* 80191C00 0018EB60 48 13 7A 69 */ bl SetFontColor__15CGuiTextSupportFRC6CColor +/* 80191C04 0018EB64 80 7C 00 60 */ lwz r3, 0x60(r28) +/* 80191C08 0018EB68 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80191C0C 0018EB6C 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80191C10 0018EB70 38 84 01 A8 */ addi r4, r4, 0x1a8 +/* 80191C14 0018EB74 48 13 7A 05 */ bl SetOutlineColor__15CGuiTextSupportFRC6CColor +/* 80191C18 0018EB78 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80191C1C 0018EB7C 80 7C 00 74 */ lwz r3, 0x74(r28) +/* 80191C20 0018EB80 38 84 00 94 */ addi r4, r4, 0x94 +/* 80191C24 0018EB84 48 13 8C 49 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80191C28 0018EB88 80 AD A1 3C */ lwz r5, gpTweakGuiColors@sda21(r13) +/* 80191C2C 0018EB8C 38 9F 00 F4 */ addi r4, r31, 0xf4 +/* 80191C30 0018EB90 80 7C 00 64 */ lwz r3, 0x64(r28) +/* 80191C34 0018EB94 2C 1D 00 00 */ cmpwi r29, 0 +/* 80191C38 0018EB98 80 05 00 7C */ lwz r0, 0x7c(r5) +/* 80191C3C 0018EB9C 90 03 00 CC */ stw r0, 0xcc(r3) +/* 80191C40 0018EBA0 80 AD A1 3C */ lwz r5, gpTweakGuiColors@sda21(r13) +/* 80191C44 0018EBA4 80 7C 00 64 */ lwz r3, 0x64(r28) +/* 80191C48 0018EBA8 80 05 00 74 */ lwz r0, 0x74(r5) +/* 80191C4C 0018EBAC 90 03 00 D0 */ stw r0, 0xd0(r3) +/* 80191C50 0018EBB0 80 AD A1 3C */ lwz r5, gpTweakGuiColors@sda21(r13) +/* 80191C54 0018EBB4 80 7C 00 64 */ lwz r3, 0x64(r28) +/* 80191C58 0018EBB8 80 05 00 78 */ lwz r0, 0x78(r5) +/* 80191C5C 0018EBBC 90 03 00 D4 */ stw r0, 0xd4(r3) +/* 80191C60 0018EBC0 80 1C 00 00 */ lwz r0, 0(r28) +/* 80191C64 0018EBC4 80 7C 00 64 */ lwz r3, 0x64(r28) +/* 80191C68 0018EBC8 54 00 10 3A */ slwi r0, r0, 2 +/* 80191C6C 0018EBCC 7C 04 00 2E */ lwzx r0, r4, r0 +/* 80191C70 0018EBD0 90 03 00 D8 */ stw r0, 0xd8(r3) +/* 80191C74 0018EBD4 80 7C 00 64 */ lwz r3, 0x64(r28) +/* 80191C78 0018EBD8 40 82 00 0C */ bne lbl_80191C84 +/* 80191C7C 0018EBDC C0 02 A5 2C */ lfs f0, lbl_805AC24C@sda21(r2) +/* 80191C80 0018EBE0 48 00 00 08 */ b lbl_80191C88 +lbl_80191C84: +/* 80191C84 0018EBE4 C0 02 A5 5C */ lfs f0, lbl_805AC27C@sda21(r2) +lbl_80191C88: +/* 80191C88 0018EBE8 D0 03 00 DC */ stfs f0, 0xdc(r3) +/* 80191C8C 0018EBEC C0 22 A5 60 */ lfs f1, lbl_805AC280@sda21(r2) +/* 80191C90 0018EBF0 80 7C 00 64 */ lwz r3, 0x64(r28) +/* 80191C94 0018EBF4 48 13 9C D5 */ bl SetMaxEnergy__16CAuiEnergyBarT01Ff +/* 80191C98 0018EBF8 80 8D A1 38 */ lwz r4, gpTweakGui@sda21(r13) +/* 80191C9C 0018EBFC 38 00 00 01 */ li r0, 1 +/* 80191CA0 0018EC00 80 7C 00 64 */ lwz r3, 0x64(r28) +/* 80191CA4 0018EC04 C0 04 00 34 */ lfs f0, 0x34(r4) +/* 80191CA8 0018EC08 D0 03 00 E4 */ stfs f0, 0xe4(r3) +/* 80191CAC 0018EC0C 80 8D A1 38 */ lwz r4, gpTweakGui@sda21(r13) +/* 80191CB0 0018EC10 80 7C 00 64 */ lwz r3, 0x64(r28) +/* 80191CB4 0018EC14 C0 04 00 38 */ lfs f0, 0x38(r4) +/* 80191CB8 0018EC18 D0 03 00 E8 */ stfs f0, 0xe8(r3) +/* 80191CBC 0018EC1C 80 8D A1 38 */ lwz r4, gpTweakGui@sda21(r13) +/* 80191CC0 0018EC20 80 7C 00 64 */ lwz r3, 0x64(r28) +/* 80191CC4 0018EC24 C0 04 00 3C */ lfs f0, 0x3c(r4) +/* 80191CC8 0018EC28 D0 03 00 EC */ stfs f0, 0xec(r3) +/* 80191CCC 0018EC2C 80 7C 00 64 */ lwz r3, 0x64(r28) +/* 80191CD0 0018EC30 98 03 00 F0 */ stb r0, 0xf0(r3) +/* 80191CD4 0018EC34 80 7C 00 68 */ lwz r3, 0x68(r28) +/* 80191CD8 0018EC38 28 03 00 00 */ cmplwi r3, 0 +/* 80191CDC 0018EC3C 41 82 00 28 */ beq lbl_80191D04 +/* 80191CE0 0018EC40 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80191CE4 0018EC44 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80191CE8 0018EC48 38 84 00 64 */ addi r4, r4, 0x64 +/* 80191CEC 0018EC4C 48 13 79 7D */ bl SetFontColor__15CGuiTextSupportFRC6CColor +/* 80191CF0 0018EC50 80 7C 00 68 */ lwz r3, 0x68(r28) +/* 80191CF4 0018EC54 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80191CF8 0018EC58 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80191CFC 0018EC5C 38 84 00 BC */ addi r4, r4, 0xbc +/* 80191D00 0018EC60 48 13 79 19 */ bl SetOutlineColor__15CGuiTextSupportFRC6CColor +lbl_80191D04: +/* 80191D04 0018EC64 80 9C 00 08 */ lwz r4, 8(r28) +/* 80191D08 0018EC68 7F 83 E3 78 */ mr r3, r28 +/* 80191D0C 0018EC6C 7F C5 F3 78 */ mr r5, r30 +/* 80191D10 0018EC70 4B FF FB DD */ bl SetNumMissiles__20CHudMissileInterfaceFiRC13CStateManager +/* 80191D14 0018EC74 7F 83 E3 78 */ mr r3, r28 +/* 80191D18 0018EC78 48 00 00 29 */ bl GetMissileInventoryStatus__20CHudMissileInterfaceFv +/* 80191D1C 0018EC7C 90 7C 00 44 */ stw r3, 0x44(r28) +/* 80191D20 0018EC80 7F 83 E3 78 */ mr r3, r28 +/* 80191D24 0018EC84 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 +/* 80191D28 0018EC88 CB E1 00 90 */ lfd f31, 0x90(r1) +/* 80191D2C 0018EC8C BB 41 00 78 */ lmw r26, 0x78(r1) +/* 80191D30 0018EC90 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 80191D34 0018EC94 7C 08 03 A6 */ mtlr r0 +/* 80191D38 0018EC98 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 80191D3C 0018EC9C 4E 80 00 20 */ blr + +.global GetMissileInventoryStatus__20CHudMissileInterfaceFv +GetMissileInventoryStatus__20CHudMissileInterfaceFv: +/* 80191D40 0018ECA0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80191D44 0018ECA4 7C 08 02 A6 */ mflr r0 +/* 80191D48 0018ECA8 C0 02 A5 20 */ lfs f0, lbl_805AC240@sda21(r2) +/* 80191D4C 0018ECAC 90 01 00 14 */ stw r0, 0x14(r1) +/* 80191D50 0018ECB0 80 63 00 64 */ lwz r3, 0x64(r3) +/* 80191D54 0018ECB4 C0 23 00 F4 */ lfs f1, 0xf4(r3) +/* 80191D58 0018ECB8 FC 00 08 00 */ fcmpu cr0, f0, f1 +/* 80191D5C 0018ECBC 40 82 00 0C */ bne lbl_80191D68 +/* 80191D60 0018ECC0 38 60 00 02 */ li r3, 2 +/* 80191D64 0018ECC4 48 00 00 24 */ b lbl_80191D88 +lbl_80191D68: +/* 80191D68 0018ECC8 48 13 94 75 */ bl GetActualFraction__16CAuiEnergyBarT01CFv +/* 80191D6C 0018ECCC 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) +/* 80191D70 0018ECD0 C0 03 01 14 */ lfs f0, 0x114(r3) +/* 80191D74 0018ECD4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80191D78 0018ECD8 40 80 00 0C */ bge lbl_80191D84 +/* 80191D7C 0018ECDC 38 60 00 01 */ li r3, 1 +/* 80191D80 0018ECE0 48 00 00 08 */ b lbl_80191D88 +lbl_80191D84: +/* 80191D84 0018ECE4 38 60 00 00 */ li r3, 0 +lbl_80191D88: +/* 80191D88 0018ECE8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80191D8C 0018ECEC 7C 08 03 A6 */ mtlr r0 +/* 80191D90 0018ECF0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80191D94 0018ECF4 4E 80 00 20 */ blr + +.global XRayMissileBarCoordFunc__20CHudMissileInterfaceFf +XRayMissileBarCoordFunc__20CHudMissileInterfaceFf: +/* 80191D98 0018ECF8 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80191D9C 0018ECFC 7C 08 02 A6 */ mflr r0 +/* 80191DA0 0018ED00 90 01 00 34 */ stw r0, 0x34(r1) +/* 80191DA4 0018ED04 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 80191DA8 0018ED08 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 80191DAC 0018ED0C DB C1 00 10 */ stfd f30, 0x10(r1) +/* 80191DB0 0018ED10 F3 C1 00 18 */ psq_st f30, 24(r1), 0, qr0 +/* 80191DB4 0018ED14 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80191DB8 0018ED18 C0 02 A5 44 */ lfs f0, lbl_805AC264@sda21(r2) +/* 80191DBC 0018ED1C 7C 7F 1B 78 */ mr r31, r3 +/* 80191DC0 0018ED20 C0 42 A5 64 */ lfs f2, lbl_805AC284@sda21(r2) +/* 80191DC4 0018ED24 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80191DC8 0018ED28 EF E2 00 32 */ fmuls f31, f2, f0 +/* 80191DCC 0018ED2C FC 20 F8 90 */ fmr f1, f31 +/* 80191DD0 0018ED30 48 18 2F 75 */ bl FastCosR__5CMathFf +/* 80191DD4 0018ED34 C0 02 A5 68 */ lfs f0, lbl_805AC288@sda21(r2) +/* 80191DD8 0018ED38 EF C0 00 72 */ fmuls f30, f0, f1 +/* 80191DDC 0018ED3C FC 20 F8 90 */ fmr f1, f31 +/* 80191DE0 0018ED40 48 18 30 11 */ bl FastSinR__5CMathFf +/* 80191DE4 0018ED44 C0 02 A5 6C */ lfs f0, lbl_805AC28C@sda21(r2) +/* 80191DE8 0018ED48 C0 62 A5 68 */ lfs f3, lbl_805AC288@sda21(r2) +/* 80191DEC 0018ED4C EC 5E 00 28 */ fsubs f2, f30, f0 +/* 80191DF0 0018ED50 C0 02 A5 20 */ lfs f0, lbl_805AC240@sda21(r2) +/* 80191DF4 0018ED54 EC 23 00 72 */ fmuls f1, f3, f1 +/* 80191DF8 0018ED58 D0 5F 00 00 */ stfs f2, 0(r31) +/* 80191DFC 0018ED5C D0 1F 00 04 */ stfs f0, 4(r31) +/* 80191E00 0018ED60 D0 3F 00 08 */ stfs f1, 8(r31) +/* 80191E04 0018ED64 D3 DF 00 0C */ stfs f30, 0xc(r31) +/* 80191E08 0018ED68 D0 1F 00 10 */ stfs f0, 0x10(r31) +/* 80191E0C 0018ED6C D0 3F 00 14 */ stfs f1, 0x14(r31) +/* 80191E10 0018ED70 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 80191E14 0018ED74 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 80191E18 0018ED78 E3 C1 00 18 */ psq_l f30, 24(r1), 0, qr0 +/* 80191E1C 0018ED7C CB C1 00 10 */ lfd f30, 0x10(r1) +/* 80191E20 0018ED80 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80191E24 0018ED84 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80191E28 0018ED88 7C 08 03 A6 */ mtlr r0 +/* 80191E2C 0018ED8C 38 21 00 30 */ addi r1, r1, 0x30 +/* 80191E30 0018ED90 4E 80 00 20 */ blr + +.global ThermalMissileBarCoordFunc__20CHudMissileInterfaceFf +ThermalMissileBarCoordFunc__20CHudMissileInterfaceFf: +/* 80191E34 0018ED94 3C 80 80 3D */ lis r4, lbl_803D0D08@ha +/* 80191E38 0018ED98 C0 02 A5 70 */ lfs f0, lbl_805AC290@sda21(r2) +/* 80191E3C 0018ED9C 38 84 0D 08 */ addi r4, r4, lbl_803D0D08@l +/* 80191E40 0018EDA0 C0 44 00 0C */ lfs f2, 0xc(r4) +/* 80191E44 0018EDA4 EC 60 00 B2 */ fmuls f3, f0, f2 +/* 80191E48 0018EDA8 EC 81 00 B2 */ fmuls f4, f1, f2 +/* 80191E4C 0018EDAC FC 04 18 40 */ fcmpo cr0, f4, f3 +/* 80191E50 0018EDB0 40 80 00 0C */ bge lbl_80191E5C +/* 80191E54 0018EDB4 EC 64 18 24 */ fdivs f3, f4, f3 +/* 80191E58 0018EDB8 48 00 00 28 */ b lbl_80191E80 +lbl_80191E5C: +/* 80191E5C 0018EDBC EC 02 18 28 */ fsubs f0, f2, f3 +/* 80191E60 0018EDC0 FC 04 00 40 */ fcmpo cr0, f4, f0 +/* 80191E64 0018EDC4 40 80 00 0C */ bge lbl_80191E70 +/* 80191E68 0018EDC8 C0 62 A5 2C */ lfs f3, lbl_805AC24C@sda21(r2) +/* 80191E6C 0018EDCC 48 00 00 14 */ b lbl_80191E80 +lbl_80191E70: +/* 80191E70 0018EDD0 EC 04 00 28 */ fsubs f0, f4, f0 +/* 80191E74 0018EDD4 C0 22 A5 2C */ lfs f1, lbl_805AC24C@sda21(r2) +/* 80191E78 0018EDD8 EC 00 18 24 */ fdivs f0, f0, f3 +/* 80191E7C 0018EDDC EC 61 00 28 */ fsubs f3, f1, f0 +lbl_80191E80: +/* 80191E80 0018EDE0 C0 42 A5 74 */ lfs f2, lbl_805AC294@sda21(r2) +/* 80191E84 0018EDE4 C0 02 A5 5C */ lfs f0, lbl_805AC27C@sda21(r2) +/* 80191E88 0018EDE8 C0 22 A5 20 */ lfs f1, lbl_805AC240@sda21(r2) +/* 80191E8C 0018EDEC EC 42 00 F8 */ fmsubs f2, f2, f3, f0 +/* 80191E90 0018EDF0 C0 02 A5 78 */ lfs f0, lbl_805AC298@sda21(r2) +/* 80191E94 0018EDF4 D0 43 00 00 */ stfs f2, 0(r3) +/* 80191E98 0018EDF8 D0 23 00 04 */ stfs f1, 4(r3) +/* 80191E9C 0018EDFC D0 83 00 08 */ stfs f4, 8(r3) +/* 80191EA0 0018EE00 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 80191EA4 0018EE04 D0 23 00 10 */ stfs f1, 0x10(r3) +/* 80191EA8 0018EE08 D0 83 00 14 */ stfs f4, 0x14(r3) +/* 80191EAC 0018EE0C 4E 80 00 20 */ blr + +.global CombatMissileBarCoordFunc__20CHudMissileInterfaceFf +CombatMissileBarCoordFunc__20CHudMissileInterfaceFf: +/* 80191EB0 0018EE10 3C 80 80 3D */ lis r4, lbl_803D0D08@ha +/* 80191EB4 0018EE14 C0 42 A5 20 */ lfs f2, lbl_805AC240@sda21(r2) +/* 80191EB8 0018EE18 C0 64 0D 08 */ lfs f3, lbl_803D0D08@l(r4) +/* 80191EBC 0018EE1C D0 43 00 00 */ stfs f2, 0(r3) +/* 80191EC0 0018EE20 EC 21 00 F2 */ fmuls f1, f1, f3 +/* 80191EC4 0018EE24 C0 02 A5 7C */ lfs f0, lbl_805AC29C@sda21(r2) +/* 80191EC8 0018EE28 D0 43 00 04 */ stfs f2, 4(r3) +/* 80191ECC 0018EE2C D0 23 00 08 */ stfs f1, 8(r3) +/* 80191ED0 0018EE30 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 80191ED4 0018EE34 D0 43 00 10 */ stfs f2, 0x10(r3) +/* 80191ED8 0018EE38 D0 23 00 14 */ stfs f1, 0x14(r3) +/* 80191EDC 0018EE3C 4E 80 00 20 */ blr + +.global DoDrawRadarPaint__18CHudRadarInterfaceCFf +DoDrawRadarPaint__18CHudRadarInterfaceCFf: +/* 80191EE0 0018EE40 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80191EE4 0018EE44 7C 08 02 A6 */ mflr r0 +/* 80191EE8 0018EE48 90 01 00 64 */ stw r0, 0x64(r1) +/* 80191EEC 0018EE4C DB E1 00 50 */ stfd f31, 0x50(r1) +/* 80191EF0 0018EE50 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 80191EF4 0018EE54 DB C1 00 40 */ stfd f30, 0x40(r1) +/* 80191EF8 0018EE58 F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0 +/* 80191EFC 0018EE5C C0 02 A5 80 */ lfs f0, lbl_805AC2A0@sda21(r2) +/* 80191F00 0018EE60 38 60 00 98 */ li r3, 0x98 +/* 80191F04 0018EE64 EF C0 00 72 */ fmuls f30, f0, f1 +/* 80191F08 0018EE68 48 17 97 61 */ bl StreamBegin__9CGraphicsF13ERglPrimitive +/* 80191F0C 0018EE6C C0 22 A5 84 */ lfs f1, lbl_805AC2A4@sda21(r2) +/* 80191F10 0018EE70 C0 42 A5 88 */ lfs f2, lbl_805AC2A8@sda21(r2) +/* 80191F14 0018EE74 48 17 95 51 */ bl StreamTexcoord__9CGraphicsFff +/* 80191F18 0018EE78 FF E0 F0 50 */ fneg f31, f30 +/* 80191F1C 0018EE7C C0 02 A5 84 */ lfs f0, lbl_805AC2A4@sda21(r2) +/* 80191F20 0018EE80 D3 C1 00 34 */ stfs f30, 0x34(r1) +/* 80191F24 0018EE84 38 61 00 2C */ addi r3, r1, 0x2c +/* 80191F28 0018EE88 D3 E1 00 2C */ stfs f31, 0x2c(r1) +/* 80191F2C 0018EE8C D0 01 00 30 */ stfs f0, 0x30(r1) +/* 80191F30 0018EE90 48 17 96 91 */ bl StreamVertex__9CGraphicsFRC9CVector3f +/* 80191F34 0018EE94 C0 22 A5 84 */ lfs f1, lbl_805AC2A4@sda21(r2) +/* 80191F38 0018EE98 FC 40 08 90 */ fmr f2, f1 +/* 80191F3C 0018EE9C 48 17 95 29 */ bl StreamTexcoord__9CGraphicsFff +/* 80191F40 0018EEA0 C0 02 A5 84 */ lfs f0, lbl_805AC2A4@sda21(r2) +/* 80191F44 0018EEA4 38 61 00 20 */ addi r3, r1, 0x20 +/* 80191F48 0018EEA8 D3 E1 00 20 */ stfs f31, 0x20(r1) +/* 80191F4C 0018EEAC D0 01 00 24 */ stfs f0, 0x24(r1) +/* 80191F50 0018EEB0 D3 E1 00 28 */ stfs f31, 0x28(r1) +/* 80191F54 0018EEB4 48 17 96 6D */ bl StreamVertex__9CGraphicsFRC9CVector3f +/* 80191F58 0018EEB8 C0 22 A5 88 */ lfs f1, lbl_805AC2A8@sda21(r2) +/* 80191F5C 0018EEBC FC 40 08 90 */ fmr f2, f1 +/* 80191F60 0018EEC0 48 17 95 05 */ bl StreamTexcoord__9CGraphicsFff +/* 80191F64 0018EEC4 C0 02 A5 84 */ lfs f0, lbl_805AC2A4@sda21(r2) +/* 80191F68 0018EEC8 38 61 00 14 */ addi r3, r1, 0x14 +/* 80191F6C 0018EECC D3 C1 00 14 */ stfs f30, 0x14(r1) +/* 80191F70 0018EED0 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 80191F74 0018EED4 D3 C1 00 1C */ stfs f30, 0x1c(r1) +/* 80191F78 0018EED8 48 17 96 49 */ bl StreamVertex__9CGraphicsFRC9CVector3f +/* 80191F7C 0018EEDC C0 22 A5 88 */ lfs f1, lbl_805AC2A8@sda21(r2) +/* 80191F80 0018EEE0 C0 42 A5 84 */ lfs f2, lbl_805AC2A4@sda21(r2) +/* 80191F84 0018EEE4 48 17 94 E1 */ bl StreamTexcoord__9CGraphicsFff +/* 80191F88 0018EEE8 C0 02 A5 84 */ lfs f0, lbl_805AC2A4@sda21(r2) +/* 80191F8C 0018EEEC 38 61 00 08 */ addi r3, r1, 8 +/* 80191F90 0018EEF0 D3 C1 00 08 */ stfs f30, 8(r1) +/* 80191F94 0018EEF4 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 80191F98 0018EEF8 D3 E1 00 10 */ stfs f31, 0x10(r1) +/* 80191F9C 0018EEFC 48 17 96 25 */ bl StreamVertex__9CGraphicsFRC9CVector3f +/* 80191FA0 0018EF00 48 17 94 71 */ bl StreamEnd__9CGraphicsFv +/* 80191FA4 0018EF04 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 +/* 80191FA8 0018EF08 CB E1 00 50 */ lfd f31, 0x50(r1) +/* 80191FAC 0018EF0C E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0 +/* 80191FB0 0018EF10 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80191FB4 0018EF14 CB C1 00 40 */ lfd f30, 0x40(r1) +/* 80191FB8 0018EF18 7C 08 03 A6 */ mtlr r0 +/* 80191FBC 0018EF1C 38 21 00 60 */ addi r1, r1, 0x60 +/* 80191FC0 0018EF20 4E 80 00 20 */ blr + +.global DrawRadarPaint__18CHudRadarInterfaceCFRC9CVector3fffRCQ218CHudRadarInterface20SRadarPaintDrawParms +DrawRadarPaint__18CHudRadarInterfaceCFRC9CVector3fffRCQ218CHudRadarInterface20SRadarPaintDrawParms: +/* 80191FC4 0018EF24 94 21 FE E0 */ stwu r1, -0x120(r1) +/* 80191FC8 0018EF28 7C 08 02 A6 */ mflr r0 +/* 80191FCC 0018EF2C 90 01 01 24 */ stw r0, 0x124(r1) +/* 80191FD0 0018EF30 DB E1 01 10 */ stfd f31, 0x110(r1) +/* 80191FD4 0018EF34 F3 E1 01 18 */ psq_st f31, 280(r1), 0, qr0 +/* 80191FD8 0018EF38 DB C1 01 00 */ stfd f30, 0x100(r1) +/* 80191FDC 0018EF3C F3 C1 01 08 */ psq_st f30, 264(r1), 0, qr0 +/* 80191FE0 0018EF40 DB A1 00 F0 */ stfd f29, 0xf0(r1) +/* 80191FE4 0018EF44 F3 A1 00 F8 */ psq_st f29, 248(r1), 0, qr0 +/* 80191FE8 0018EF48 DB 81 00 E0 */ stfd f28, 0xe0(r1) +/* 80191FEC 0018EF4C F3 81 00 E8 */ psq_st f28, 232(r1), 0, qr0 +/* 80191FF0 0018EF50 93 E1 00 DC */ stw r31, 0xdc(r1) +/* 80191FF4 0018EF54 93 C1 00 D8 */ stw r30, 0xd8(r1) +/* 80191FF8 0018EF58 93 A1 00 D4 */ stw r29, 0xd4(r1) +/* 80191FFC 0018EF5C FF A0 08 90 */ fmr f29, f1 +/* 80192000 0018EF60 7C BF 2B 78 */ mr r31, r5 +/* 80192004 0018EF64 FF C0 10 90 */ fmr f30, f2 +/* 80192008 0018EF68 C0 25 00 00 */ lfs f1, 0(r5) +/* 8019200C 0018EF6C 7C 7D 1B 78 */ mr r29, r3 +/* 80192010 0018EF70 C0 45 00 04 */ lfs f2, 4(r5) +/* 80192014 0018EF74 7C 9E 23 78 */ mr r30, r4 +/* 80192018 0018EF78 38 61 00 30 */ addi r3, r1, 0x30 +/* 8019201C 0018EF7C 48 18 21 E5 */ bl __ct__9CVector2fFff +/* 80192020 0018EF80 C0 7E 00 00 */ lfs f3, 0(r30) +/* 80192024 0018EF84 38 61 00 28 */ addi r3, r1, 0x28 +/* 80192028 0018EF88 C0 3F 00 00 */ lfs f1, 0(r31) +/* 8019202C 0018EF8C C0 5E 00 04 */ lfs f2, 4(r30) +/* 80192030 0018EF90 C0 1F 00 04 */ lfs f0, 4(r31) +/* 80192034 0018EF94 EC 23 08 28 */ fsubs f1, f3, f1 +/* 80192038 0018EF98 EC 42 00 28 */ fsubs f2, f2, f0 +/* 8019203C 0018EF9C 48 18 21 C5 */ bl __ct__9CVector2fFff +/* 80192040 0018EFA0 C0 3E 00 08 */ lfs f1, 8(r30) +/* 80192044 0018EFA4 38 61 00 28 */ addi r3, r1, 0x28 +/* 80192048 0018EFA8 C0 1F 00 08 */ lfs f0, 8(r31) +/* 8019204C 0018EFAC EC 01 00 28 */ fsubs f0, f1, f0 +/* 80192050 0018EFB0 FC 00 02 10 */ fabs f0, f0 +/* 80192054 0018EFB4 FF 80 00 18 */ frsp f28, f0 +/* 80192058 0018EFB8 48 18 20 9D */ bl Magnitude__9CVector2fCFv +/* 8019205C 0018EFBC C0 1F 00 78 */ lfs f0, 0x78(r31) +/* 80192060 0018EFC0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80192064 0018EFC4 4C 40 13 82 */ cror 2, 0, 2 +/* 80192068 0018EFC8 40 82 01 30 */ bne lbl_80192198 +/* 8019206C 0018EFCC C0 1F 00 7C */ lfs f0, 0x7c(r31) +/* 80192070 0018EFD0 FC 1C 00 40 */ fcmpo cr0, f28, f0 +/* 80192074 0018EFD4 4C 40 13 82 */ cror 2, 0, 2 +/* 80192078 0018EFD8 40 82 01 20 */ bne lbl_80192198 +/* 8019207C 0018EFDC C0 7F 00 80 */ lfs f3, 0x80(r31) +/* 80192080 0018EFE0 FC 1C 18 40 */ fcmpo cr0, f28, f3 +/* 80192084 0018EFE4 40 81 00 1C */ ble lbl_801920A0 +/* 80192088 0018EFE8 EC 3C 18 28 */ fsubs f1, f28, f3 +/* 8019208C 0018EFEC C0 42 A5 88 */ lfs f2, lbl_805AC2A8@sda21(r2) +/* 80192090 0018EFF0 EC 00 18 28 */ fsubs f0, f0, f3 +/* 80192094 0018EFF4 EC 01 00 24 */ fdivs f0, f1, f0 +/* 80192098 0018EFF8 EC 02 00 28 */ fsubs f0, f2, f0 +/* 8019209C 0018EFFC EF DE 00 32 */ fmuls f30, f30, f0 +lbl_801920A0: +/* 801920A0 0018F000 C0 3E 00 00 */ lfs f1, 0(r30) +/* 801920A4 0018F004 38 61 00 20 */ addi r3, r1, 0x20 +/* 801920A8 0018F008 C0 5E 00 04 */ lfs f2, 4(r30) +/* 801920AC 0018F00C 48 18 21 55 */ bl __ct__9CVector2fFff +/* 801920B0 0018F010 38 61 00 10 */ addi r3, r1, 0x10 +/* 801920B4 0018F014 38 81 00 20 */ addi r4, r1, 0x20 +/* 801920B8 0018F018 38 A1 00 30 */ addi r5, r1, 0x30 +/* 801920BC 0018F01C 48 18 1E 7D */ bl __mi__FRC9CVector2fRC9CVector2f +/* 801920C0 0018F020 38 61 00 18 */ addi r3, r1, 0x18 +/* 801920C4 0018F024 38 81 00 10 */ addi r4, r1, 0x10 +/* 801920C8 0018F028 38 BF 00 70 */ addi r5, r31, 0x70 +/* 801920CC 0018F02C 48 18 1E 09 */ bl __ml__FRC9CVector2fRCf +/* 801920D0 0018F030 C0 41 00 18 */ lfs f2, 0x18(r1) +/* 801920D4 0018F034 38 61 00 44 */ addi r3, r1, 0x44 +/* 801920D8 0018F038 C0 22 A5 84 */ lfs f1, lbl_805AC2A4@sda21(r2) +/* 801920DC 0018F03C 38 9F 00 0C */ addi r4, r31, 0xc +/* 801920E0 0018F040 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 801920E4 0018F044 38 A1 00 38 */ addi r5, r1, 0x38 +/* 801920E8 0018F048 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 801920EC 0018F04C D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 801920F0 0018F050 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 801920F4 0018F054 48 18 09 F5 */ bl __ml__12CTransform4fCFRC9CVector3f +/* 801920F8 0018F058 C0 41 00 44 */ lfs f2, 0x44(r1) +/* 801920FC 0018F05C 38 61 00 5C */ addi r3, r1, 0x5c +/* 80192100 0018F060 C0 21 00 48 */ lfs f1, 0x48(r1) +/* 80192104 0018F064 38 81 00 50 */ addi r4, r1, 0x50 +/* 80192108 0018F068 C0 01 00 4C */ lfs f0, 0x4c(r1) +/* 8019210C 0018F06C D0 41 00 50 */ stfs f2, 0x50(r1) +/* 80192110 0018F070 D0 21 00 54 */ stfs f1, 0x54(r1) +/* 80192114 0018F074 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 80192118 0018F078 48 18 10 29 */ bl Translate__12CTransform4fFRC9CVector3f +/* 8019211C 0018F07C 38 61 00 8C */ addi r3, r1, 0x8c +/* 80192120 0018F080 38 9F 00 3C */ addi r4, r31, 0x3c +/* 80192124 0018F084 38 A1 00 5C */ addi r5, r1, 0x5c +/* 80192128 0018F088 48 18 08 29 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 8019212C 0018F08C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 80192130 0018F090 38 81 00 8C */ addi r4, r1, 0x8c +/* 80192134 0018F094 81 83 00 00 */ lwz r12, 0(r3) +/* 80192138 0018F098 81 8C 00 30 */ lwz r12, 0x30(r12) +/* 8019213C 0018F09C 7D 89 03 A6 */ mtctr r12 +/* 80192140 0018F0A0 4E 80 04 21 */ bctrl +/* 80192144 0018F0A4 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80192148 0018F0A8 3C 00 43 30 */ lis r0, 0x4330 +/* 8019214C 0018F0AC C0 1F 00 74 */ lfs f0, 0x74(r31) +/* 80192150 0018F0B0 88 64 00 13 */ lbz r3, 0x13(r4) +/* 80192154 0018F0B4 90 01 00 C0 */ stw r0, 0xc0(r1) +/* 80192158 0018F0B8 EC 5E 00 32 */ fmuls f2, f30, f0 +/* 8019215C 0018F0BC C8 22 A5 90 */ lfd f1, lbl_805AC2B0@sda21(r2) +/* 80192160 0018F0C0 90 61 00 C4 */ stw r3, 0xc4(r1) +/* 80192164 0018F0C4 C8 01 00 C0 */ lfd f0, 0xc0(r1) +/* 80192168 0018F0C8 EC 00 08 28 */ fsubs f0, f0, f1 +/* 8019216C 0018F0CC EF E2 00 32 */ fmuls f31, f2, f0 +/* 80192170 0018F0D0 F3 E1 A0 08 */ psq_st f31, 8(r1), 1, qr2 +/* 80192174 0018F0D4 38 61 00 0C */ addi r3, r1, 0xc +/* 80192178 0018F0D8 80 84 00 10 */ lwz r4, 0x10(r4) +/* 8019217C 0018F0DC 88 01 00 08 */ lbz r0, 8(r1) +/* 80192180 0018F0E0 50 80 00 2E */ rlwimi r0, r4, 0, 0, 0x17 +/* 80192184 0018F0E4 90 01 00 0C */ stw r0, 0xc(r1) +/* 80192188 0018F0E8 48 17 93 C1 */ bl StreamColor__9CGraphicsFRC6CColor +/* 8019218C 0018F0EC FC 20 E8 90 */ fmr f1, f29 +/* 80192190 0018F0F0 7F A3 EB 78 */ mr r3, r29 +/* 80192194 0018F0F4 4B FF FD 4D */ bl DoDrawRadarPaint__18CHudRadarInterfaceCFf +lbl_80192198: +/* 80192198 0018F0F8 E3 E1 01 18 */ psq_l f31, 280(r1), 0, qr0 +/* 8019219C 0018F0FC CB E1 01 10 */ lfd f31, 0x110(r1) +/* 801921A0 0018F100 E3 C1 01 08 */ psq_l f30, 264(r1), 0, qr0 +/* 801921A4 0018F104 CB C1 01 00 */ lfd f30, 0x100(r1) +/* 801921A8 0018F108 E3 A1 00 F8 */ psq_l f29, 248(r1), 0, qr0 +/* 801921AC 0018F10C CB A1 00 F0 */ lfd f29, 0xf0(r1) +/* 801921B0 0018F110 E3 81 00 E8 */ psq_l f28, 232(r1), 0, qr0 +/* 801921B4 0018F114 CB 81 00 E0 */ lfd f28, 0xe0(r1) +/* 801921B8 0018F118 83 E1 00 DC */ lwz r31, 0xdc(r1) +/* 801921BC 0018F11C 83 C1 00 D8 */ lwz r30, 0xd8(r1) +/* 801921C0 0018F120 80 01 01 24 */ lwz r0, 0x124(r1) +/* 801921C4 0018F124 83 A1 00 D4 */ lwz r29, 0xd4(r1) +/* 801921C8 0018F128 7C 08 03 A6 */ mtlr r0 +/* 801921CC 0018F12C 38 21 01 20 */ addi r1, r1, 0x120 +/* 801921D0 0018F130 4E 80 00 20 */ blr + +.global Draw__18CHudRadarInterfaceCFRC13CStateManagerf +Draw__18CHudRadarInterfaceCFRC13CStateManagerf: +/* 801921D4 0018F134 94 21 F5 10 */ stwu r1, -0xaf0(r1) +/* 801921D8 0018F138 7C 08 02 A6 */ mflr r0 +/* 801921DC 0018F13C 90 01 0A F4 */ stw r0, 0xaf4(r1) +/* 801921E0 0018F140 DB E1 0A E0 */ stfd f31, 0xae0(r1) +/* 801921E4 0018F144 F3 E1 0A E8 */ psq_st f31, -1304(r1), 0, qr0 +/* 801921E8 0018F148 DB C1 0A D0 */ stfd f30, 0xad0(r1) +/* 801921EC 0018F14C F3 C1 0A D8 */ psq_st f30, -1320(r1), 0, qr0 +/* 801921F0 0018F150 DB A1 0A C0 */ stfd f29, 0xac0(r1) +/* 801921F4 0018F154 F3 A1 0A C8 */ psq_st f29, -1336(r1), 0, qr0 +/* 801921F8 0018F158 DB 81 0A B0 */ stfd f28, 0xab0(r1) +/* 801921FC 0018F15C F3 81 0A B8 */ psq_st f28, -1352(r1), 0, qr0 +/* 80192200 0018F160 DB 61 0A A0 */ stfd f27, 0xaa0(r1) +/* 80192204 0018F164 F3 61 0A A8 */ psq_st f27, -1368(r1), 0, qr0 +/* 80192208 0018F168 DB 41 0A 90 */ stfd f26, 0xa90(r1) +/* 8019220C 0018F16C F3 41 0A 98 */ psq_st f26, -1384(r1), 0, qr0 +/* 80192210 0018F170 DB 21 0A 80 */ stfd f25, 0xa80(r1) +/* 80192214 0018F174 F3 21 0A 88 */ psq_st f25, -1400(r1), 0, qr0 +/* 80192218 0018F178 DB 01 0A 70 */ stfd f24, 0xa70(r1) +/* 8019221C 0018F17C F3 01 0A 78 */ psq_st f24, -1416(r1), 0, qr0 +/* 80192220 0018F180 DA E1 0A 60 */ stfd f23, 0xa60(r1) +/* 80192224 0018F184 F2 E1 0A 68 */ psq_st f23, -1432(r1), 0, qr0 +/* 80192228 0018F188 DA C1 0A 50 */ stfd f22, 0xa50(r1) +/* 8019222C 0018F18C F2 C1 0A 58 */ psq_st f22, -1448(r1), 0, qr0 +/* 80192230 0018F190 DA A1 0A 40 */ stfd f21, 0xa40(r1) +/* 80192234 0018F194 F2 A1 0A 48 */ psq_st f21, -1464(r1), 0, qr0 +/* 80192238 0018F198 DA 81 0A 30 */ stfd f20, 0xa30(r1) +/* 8019223C 0018F19C F2 81 0A 38 */ psq_st f20, -1480(r1), 0, qr0 +/* 80192240 0018F1A0 BE E1 0A 0C */ stmw r23, 0xa0c(r1) +/* 80192244 0018F1A4 FE 80 08 90 */ fmr f20, f1 +/* 80192248 0018F1A8 80 AD A0 80 */ lwz r5, gpGameState@sda21(r13) +/* 8019224C 0018F1AC 7C 78 1B 78 */ mr r24, r3 +/* 80192250 0018F1B0 7C 99 23 78 */ mr r25, r4 +/* 80192254 0018F1B4 38 65 01 7C */ addi r3, r5, 0x17c +/* 80192258 0018F1B8 48 07 CB 1D */ bl GetHudAlpha__12CGameOptionsCFv +/* 8019225C 0018F1BC 80 AD A1 38 */ lwz r5, gpTweakGui@sda21(r13) +/* 80192260 0018F1C0 EF 14 00 72 */ fmuls f24, f20, f1 +/* 80192264 0018F1C4 80 05 00 F8 */ lwz r0, 0xf8(r5) +/* 80192268 0018F1C8 2C 00 00 00 */ cmpwi r0, 0 +/* 8019226C 0018F1CC 41 82 05 40 */ beq lbl_801927AC +/* 80192270 0018F1D0 88 18 00 3C */ lbz r0, 0x3c(r24) +/* 80192274 0018F1D4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80192278 0018F1D8 40 82 00 08 */ bne lbl_80192280 +/* 8019227C 0018F1DC 48 00 05 30 */ b lbl_801927AC +lbl_80192280: +/* 80192280 0018F1E0 83 D8 00 08 */ lwz r30, 8(r24) +/* 80192284 0018F1E4 28 1E 00 00 */ cmplwi r30, 0 +/* 80192288 0018F1E8 41 82 05 24 */ beq lbl_801927AC +/* 8019228C 0018F1EC 80 79 08 4C */ lwz r3, 0x84c(r25) +/* 80192290 0018F1F0 88 03 09 C6 */ lbz r0, 0x9c6(r3) +/* 80192294 0018F1F4 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 80192298 0018F1F8 41 82 00 0C */ beq lbl_801922A4 +/* 8019229C 0018F1FC C3 63 0A 20 */ lfs f27, 0xa20(r3) +/* 801922A0 0018F200 48 00 00 08 */ b lbl_801922A8 +lbl_801922A4: +/* 801922A4 0018F204 C3 65 00 10 */ lfs f27, 0x10(r5) +lbl_801922A8: +/* 801922A8 0018F208 88 03 09 C6 */ lbz r0, 0x9c6(r3) +/* 801922AC 0018F20C 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 801922B0 0018F210 41 82 00 0C */ beq lbl_801922BC +/* 801922B4 0018F214 C3 43 0A 24 */ lfs f26, 0xa24(r3) +/* 801922B8 0018F218 48 00 00 08 */ b lbl_801922C0 +lbl_801922BC: +/* 801922BC 0018F21C C3 45 00 24 */ lfs f26, 0x24(r5) +lbl_801922C0: +/* 801922C0 0018F220 28 00 00 00 */ cmplwi r0, 0 +/* 801922C4 0018F224 41 82 00 10 */ beq lbl_801922D4 +/* 801922C8 0018F228 C0 02 A5 98 */ lfs f0, lbl_805AC2B8@sda21(r2) +/* 801922CC 0018F22C EF 20 06 B2 */ fmuls f25, f0, f26 +/* 801922D0 0018F230 48 00 00 08 */ b lbl_801922D8 +lbl_801922D4: +/* 801922D4 0018F234 C3 25 00 28 */ lfs f25, 0x28(r5) +lbl_801922D8: +/* 801922D8 0018F238 C2 E5 00 E8 */ lfs f23, 0xe8(r5) +/* 801922DC 0018F23C 7F 24 CB 78 */ mr r4, r25 +/* 801922E0 0018F240 C2 A5 00 EC */ lfs f21, 0xec(r5) +/* 801922E4 0018F244 EE D7 D8 24 */ fdivs f22, f23, f27 +/* 801922E8 0018F248 C2 85 00 F0 */ lfs f20, 0xf0(r5) +/* 801922EC 0018F24C 80 79 08 70 */ lwz r3, 0x870(r25) +/* 801922F0 0018F250 4B E7 98 29 */ bl GetCurrentCamera__14CCameraManagerCFR13CStateManager +/* 801922F4 0018F254 7C 64 1B 78 */ mr r4, r3 +/* 801922F8 0018F258 38 61 00 5C */ addi r3, r1, 0x5c +/* 801922FC 0018F25C 38 84 00 34 */ addi r4, r4, 0x34 +/* 80192300 0018F260 48 17 FE 29 */ bl FromMatrix__11CQuaternionFRC12CTransform4f +/* 80192304 0018F264 38 61 00 6C */ addi r3, r1, 0x6c +/* 80192308 0018F268 38 81 00 5C */ addi r4, r1, 0x5c +/* 8019230C 0018F26C 4B E8 92 B9 */ bl FromQuaternion__12CEulerAnglesFRC11CQuaternion +/* 80192310 0018F270 C0 81 00 74 */ lfs f4, 0x74(r1) +/* 80192314 0018F274 3C 00 43 30 */ lis r0, 0x4330 +/* 80192318 0018F278 C0 02 A5 9C */ lfs f0, lbl_805AC2BC@sda21(r2) +/* 8019231C 0018F27C 90 01 09 F8 */ stw r0, 0x9f8(r1) +/* 80192320 0018F280 EC 44 00 32 */ fmuls f2, f4, f0 +/* 80192324 0018F284 C8 62 A5 A8 */ lfd f3, lbl_805AC2C8@sda21(r2) +/* 80192328 0018F288 C0 22 A5 A0 */ lfs f1, lbl_805AC2C0@sda21(r2) +/* 8019232C 0018F28C C0 02 A5 84 */ lfs f0, lbl_805AC2A4@sda21(r2) +/* 80192330 0018F290 FC 40 10 1E */ fctiwz f2, f2 +/* 80192334 0018F294 D8 41 09 F0 */ stfd f2, 0x9f0(r1) +/* 80192338 0018F298 80 01 09 F4 */ lwz r0, 0x9f4(r1) +/* 8019233C 0018F29C 6C 00 80 00 */ xoris r0, r0, 0x8000 +/* 80192340 0018F2A0 90 01 09 FC */ stw r0, 0x9fc(r1) +/* 80192344 0018F2A4 C8 41 09 F8 */ lfd f2, 0x9f8(r1) +/* 80192348 0018F2A8 EC 42 18 28 */ fsubs f2, f2, f3 +/* 8019234C 0018F2AC EC 42 20 7C */ fnmsubs f2, f2, f1, f4 +/* 80192350 0018F2B0 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80192354 0018F2B4 40 80 00 08 */ bge lbl_8019235C +/* 80192358 0018F2B8 EC 42 08 2A */ fadds f2, f2, f1 +lbl_8019235C: +/* 8019235C 0018F2BC C0 02 A5 84 */ lfs f0, lbl_805AC2A4@sda21(r2) +/* 80192360 0018F2C0 38 61 00 D0 */ addi r3, r1, 0xd0 +/* 80192364 0018F2C4 38 81 00 14 */ addi r4, r1, 0x14 +/* 80192368 0018F2C8 EC 02 00 28 */ fsubs f0, f2, f0 +/* 8019236C 0018F2CC D0 01 00 14 */ stfs f0, 0x14(r1) +/* 80192370 0018F2D0 48 18 15 39 */ bl RotateY__12CTransform4fFRC9CRelAngle +/* 80192374 0018F2D4 38 61 01 30 */ addi r3, r1, 0x130 +/* 80192378 0018F2D8 38 81 00 D0 */ addi r4, r1, 0xd0 +/* 8019237C 0018F2DC 48 18 07 F9 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80192380 0018F2E0 80 B9 08 4C */ lwz r5, 0x84c(r25) +/* 80192384 0018F2E4 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 80192388 0018F2E8 38 83 66 70 */ addi r4, r3, skIdentity4f@l +/* 8019238C 0018F2EC C3 85 00 60 */ lfs f28, 0x60(r5) +/* 80192390 0018F2F0 38 61 01 00 */ addi r3, r1, 0x100 +/* 80192394 0018F2F4 C3 A5 00 50 */ lfs f29, 0x50(r5) +/* 80192398 0018F2F8 C3 C5 00 40 */ lfs f30, 0x40(r5) +/* 8019239C 0018F2FC 48 18 07 D9 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801923A0 0018F300 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801923A4 0018F304 C0 62 A5 84 */ lfs f3, lbl_805AC2A4@sda21(r2) +/* 801923A8 0018F308 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 801923AC 0018F30C 80 78 00 44 */ lwz r3, 0x44(r24) +/* 801923B0 0018F310 C0 45 00 00 */ lfs f2, 0(r5) +/* 801923B4 0018F314 38 81 00 4C */ addi r4, r1, 0x4c +/* 801923B8 0018F318 C0 25 00 04 */ lfs f1, 4(r5) +/* 801923BC 0018F31C C0 05 00 08 */ lfs f0, 8(r5) +/* 801923C0 0018F320 D0 61 00 4C */ stfs f3, 0x4c(r1) +/* 801923C4 0018F324 D0 41 00 50 */ stfs f2, 0x50(r1) +/* 801923C8 0018F328 D0 21 00 54 */ stfs f1, 0x54(r1) +/* 801923CC 0018F32C D0 01 00 58 */ stfs f0, 0x58(r1) +/* 801923D0 0018F330 81 83 00 00 */ lwz r12, 0(r3) +/* 801923D4 0018F334 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801923D8 0018F338 7D 89 03 A6 */ mtctr r12 +/* 801923DC 0018F33C 4E 80 04 21 */ bctrl +/* 801923E0 0018F340 80 98 00 40 */ lwz r4, 0x40(r24) +/* 801923E4 0018F344 38 61 01 00 */ addi r3, r1, 0x100 +/* 801923E8 0018F348 38 84 00 34 */ addi r4, r4, 0x34 +/* 801923EC 0018F34C 48 18 07 55 */ bl __as__12CTransform4fFRC12CTransform4f +/* 801923F0 0018F350 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801923F4 0018F354 38 81 01 00 */ addi r4, r1, 0x100 +/* 801923F8 0018F358 81 83 00 00 */ lwz r12, 0(r3) +/* 801923FC 0018F35C 81 8C 00 30 */ lwz r12, 0x30(r12) +/* 80192400 0018F360 7D 89 03 A6 */ mtctr r12 +/* 80192404 0018F364 4E 80 04 21 */ bctrl +/* 80192408 0018F368 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 8019240C 0018F36C 81 83 00 00 */ lwz r12, 0(r3) +/* 80192410 0018F370 81 8C 00 64 */ lwz r12, 0x64(r12) +/* 80192414 0018F374 7D 89 03 A6 */ mtctr r12 +/* 80192418 0018F378 4E 80 04 21 */ bctrl +/* 8019241C 0018F37C 7F C3 F3 78 */ mr r3, r30 +/* 80192420 0018F380 38 80 00 00 */ li r4, 0 +/* 80192424 0018F384 38 A0 00 01 */ li r5, 1 +/* 80192428 0018F388 48 17 D3 15 */ bl Load__8CTextureCF11_GXTexMapIDQ28CTexture10EClampMode +/* 8019242C 0018F38C 3C 80 80 5A */ lis r4, lbl_805A5EBC@ha +/* 80192430 0018F390 38 60 00 00 */ li r3, 0 +/* 80192434 0018F394 38 84 5E BC */ addi r4, r4, lbl_805A5EBC@l +/* 80192438 0018F398 48 17 7E 81 */ bl SetTevOp__9CGraphicsF12ERglTevStageRCQ213CTevCombiners8CTevPass +/* 8019243C 0018F39C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 80192440 0018F3A0 38 80 00 00 */ li r4, 0 +/* 80192444 0018F3A4 38 A0 00 00 */ li r5, 0 +/* 80192448 0018F3A8 81 83 00 00 */ lwz r12, 0(r3) +/* 8019244C 0018F3AC 81 8C 00 60 */ lwz r12, 0x60(r12) +/* 80192450 0018F3B0 7D 89 03 A6 */ mtctr r12 +/* 80192454 0018F3B4 4E 80 04 21 */ bctrl +/* 80192458 0018F3B8 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 8019245C 0018F3BC 3C 00 43 30 */ lis r0, 0x4330 +/* 80192460 0018F3C0 90 01 0A 00 */ stw r0, 0xa00(r1) +/* 80192464 0018F3C4 88 04 00 0F */ lbz r0, 0xf(r4) +/* 80192468 0018F3C8 C8 22 A5 90 */ lfd f1, lbl_805AC2B0@sda21(r2) +/* 8019246C 0018F3CC 90 01 0A 04 */ stw r0, 0xa04(r1) +/* 80192470 0018F3D0 C8 01 0A 00 */ lfd f0, 0xa00(r1) +/* 80192474 0018F3D4 EC 00 08 28 */ fsubs f0, f0, f1 +/* 80192478 0018F3D8 EF F8 00 32 */ fmuls f31, f24, f0 +/* 8019247C 0018F3DC F3 E1 A0 08 */ psq_st f31, 8(r1), 1, qr2 +/* 80192480 0018F3E0 38 61 00 10 */ addi r3, r1, 0x10 +/* 80192484 0018F3E4 80 84 00 0C */ lwz r4, 0xc(r4) +/* 80192488 0018F3E8 88 01 00 08 */ lbz r0, 8(r1) +/* 8019248C 0018F3EC 50 80 00 2E */ rlwimi r0, r4, 0, 0, 0x17 +/* 80192490 0018F3F0 90 01 00 10 */ stw r0, 0x10(r1) +/* 80192494 0018F3F4 48 17 90 B5 */ bl StreamColor__9CGraphicsFRC6CColor +/* 80192498 0018F3F8 FC 20 A8 90 */ fmr f1, f21 +/* 8019249C 0018F3FC 7F 03 C3 78 */ mr r3, r24 +/* 801924A0 0018F400 4B FF FA 41 */ bl DoDrawRadarPaint__18CHudRadarInterfaceCFf +/* 801924A4 0018F404 80 AD 8F 68 */ lwz r5, lbl_805A7B28@sda21(r13) +/* 801924A8 0018F408 38 60 00 00 */ li r3, 0 +/* 801924AC 0018F40C 38 80 00 01 */ li r4, 1 +/* 801924B0 0018F410 48 1F 7A 45 */ bl __shl2i +/* 801924B4 0018F414 80 AD 8F 60 */ lwz r5, lbl_805A7B20@sda21(r13) +/* 801924B8 0018F418 7C 9A 23 78 */ mr r26, r4 +/* 801924BC 0018F41C 7C 77 1B 78 */ mr r23, r3 +/* 801924C0 0018F420 38 60 00 00 */ li r3, 0 +/* 801924C4 0018F424 38 80 00 01 */ li r4, 1 +/* 801924C8 0018F428 48 1F 7A 2D */ bl __shl2i +/* 801924CC 0018F42C 80 AD 8F 64 */ lwz r5, lbl_805A7B24@sda21(r13) +/* 801924D0 0018F430 7C 9C 23 78 */ mr r28, r4 +/* 801924D4 0018F434 7C 7B 1B 78 */ mr r27, r3 +/* 801924D8 0018F438 38 60 00 00 */ li r3, 0 +/* 801924DC 0018F43C 38 80 00 01 */ li r4, 1 +/* 801924E0 0018F440 48 1F 7A 15 */ bl __shl2i +/* 801924E4 0018F444 FC 20 D8 50 */ fneg f1, f27 +/* 801924E8 0018F448 7F 9C 23 78 */ or r28, r28, r4 +/* 801924EC 0018F44C FC 00 D0 50 */ fneg f0, f26 +/* 801924F0 0018F450 7F 7B 1B 78 */ or r27, r27, r3 +/* 801924F4 0018F454 3C 60 80 5A */ lis r3, lbl_805A6754@ha +/* 801924F8 0018F458 38 00 00 03 */ li r0, 3 +/* 801924FC 0018F45C 38 83 67 54 */ addi r4, r3, lbl_805A6754@l +/* 80192500 0018F460 EC 5E 08 2A */ fadds f2, f30, f1 +/* 80192504 0018F464 EC 3D 08 2A */ fadds f1, f29, f1 +/* 80192508 0018F468 C1 04 00 00 */ lfs f8, 0(r4) +/* 8019250C 0018F46C EC 1C 00 2A */ fadds f0, f28, f0 +/* 80192510 0018F470 C0 E4 00 04 */ lfs f7, 4(r4) +/* 80192514 0018F474 C0 C4 00 08 */ lfs f6, 8(r4) +/* 80192518 0018F478 C0 A4 00 0C */ lfs f5, 0xc(r4) +/* 8019251C 0018F47C C0 84 00 10 */ lfs f4, 0x10(r4) +/* 80192520 0018F480 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 80192524 0018F484 C0 64 00 14 */ lfs f3, 0x14(r4) +/* 80192528 0018F488 38 81 00 40 */ addi r4, r1, 0x40 +/* 8019252C 0018F48C 90 01 00 98 */ stw r0, 0x98(r1) +/* 80192530 0018F490 93 81 00 BC */ stw r28, 0xbc(r1) +/* 80192534 0018F494 93 61 00 B8 */ stw r27, 0xb8(r1) +/* 80192538 0018F498 93 41 00 C4 */ stw r26, 0xc4(r1) +/* 8019253C 0018F49C 92 E1 00 C0 */ stw r23, 0xc0(r1) +/* 80192540 0018F4A0 90 01 00 C8 */ stw r0, 0xc8(r1) +/* 80192544 0018F4A4 D1 01 00 A0 */ stfs f8, 0xa0(r1) +/* 80192548 0018F4A8 D0 E1 00 A4 */ stfs f7, 0xa4(r1) +/* 8019254C 0018F4AC D0 C1 00 A8 */ stfs f6, 0xa8(r1) +/* 80192550 0018F4B0 D0 A1 00 AC */ stfs f5, 0xac(r1) +/* 80192554 0018F4B4 D0 81 00 B0 */ stfs f4, 0xb0(r1) +/* 80192558 0018F4B8 D0 61 00 B4 */ stfs f3, 0xb4(r1) +/* 8019255C 0018F4BC D0 41 00 40 */ stfs f2, 0x40(r1) +/* 80192560 0018F4C0 D0 21 00 44 */ stfs f1, 0x44(r1) +/* 80192564 0018F4C4 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 80192568 0018F4C8 48 1A 55 A1 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 8019256C 0018F4CC EC 5E D8 2A */ fadds f2, f30, f27 +/* 80192570 0018F4D0 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 80192574 0018F4D4 EC 3D D8 2A */ fadds f1, f29, f27 +/* 80192578 0018F4D8 38 81 00 34 */ addi r4, r1, 0x34 +/* 8019257C 0018F4DC EC 1C D0 2A */ fadds f0, f28, f26 +/* 80192580 0018F4E0 D0 41 00 34 */ stfs f2, 0x34(r1) +/* 80192584 0018F4E4 D0 21 00 38 */ stfs f1, 0x38(r1) +/* 80192588 0018F4E8 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 8019258C 0018F4EC 48 1A 55 7D */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 80192590 0018F4F0 38 00 00 00 */ li r0, 0 +/* 80192594 0018F4F4 7F 23 CB 78 */ mr r3, r25 +/* 80192598 0018F4F8 90 01 01 E8 */ stw r0, 0x1e8(r1) +/* 8019259C 0018F4FC 38 81 01 E8 */ addi r4, r1, 0x1e8 +/* 801925A0 0018F500 38 A1 00 A0 */ addi r5, r1, 0xa0 +/* 801925A4 0018F504 38 C1 00 B8 */ addi r6, r1, 0xb8 +/* 801925A8 0018F508 38 E0 00 00 */ li r7, 0 +/* 801925AC 0018F50C 4B EB A1 75 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" +/* 801925B0 0018F510 D3 C1 01 60 */ stfs f30, 0x160(r1) +/* 801925B4 0018F514 38 61 01 6C */ addi r3, r1, 0x16c +/* 801925B8 0018F518 38 81 01 30 */ addi r4, r1, 0x130 +/* 801925BC 0018F51C D3 A1 01 64 */ stfs f29, 0x164(r1) +/* 801925C0 0018F520 D3 81 01 68 */ stfs f28, 0x168(r1) +/* 801925C4 0018F524 48 18 05 B1 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801925C8 0018F528 38 61 01 9C */ addi r3, r1, 0x19c +/* 801925CC 0018F52C 38 81 01 00 */ addi r4, r1, 0x100 +/* 801925D0 0018F530 48 18 05 A5 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801925D4 0018F534 3B C1 01 EC */ addi r30, r1, 0x1ec +/* 801925D8 0018F538 D2 E1 01 CC */ stfs f23, 0x1cc(r1) +/* 801925DC 0018F53C 7F DC F3 78 */ mr r28, r30 +/* 801925E0 0018F540 3B A0 00 00 */ li r29, 0 +/* 801925E4 0018F544 D2 C1 01 D0 */ stfs f22, 0x1d0(r1) +/* 801925E8 0018F548 D3 01 01 D4 */ stfs f24, 0x1d4(r1) +/* 801925EC 0018F54C D3 61 01 D8 */ stfs f27, 0x1d8(r1) +/* 801925F0 0018F550 D3 41 01 DC */ stfs f26, 0x1dc(r1) +/* 801925F4 0018F554 D3 21 01 E0 */ stfs f25, 0x1e0(r1) +/* 801925F8 0018F558 48 00 01 30 */ b lbl_80192728 +lbl_801925FC: +/* 801925FC 0018F55C A0 1C 00 00 */ lhz r0, 0(r28) +/* 80192600 0018F560 7F 23 CB 78 */ mr r3, r25 +/* 80192604 0018F564 38 81 00 0C */ addi r4, r1, 0xc +/* 80192608 0018F568 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8019260C 0018F56C 4B EB 9F 99 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80192610 0018F570 7C 64 1B 78 */ mr r4, r3 +/* 80192614 0018F574 38 61 00 20 */ addi r3, r1, 0x20 +/* 80192618 0018F578 4B F1 D6 79 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8019261C 0018F57C 82 E3 00 04 */ lwz r23, 4(r3) +/* 80192620 0018F580 28 17 00 00 */ cmplwi r23, 0 +/* 80192624 0018F584 41 82 01 00 */ beq lbl_80192724 +/* 80192628 0018F588 88 17 00 30 */ lbz r0, 0x30(r23) +/* 8019262C 0018F58C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80192630 0018F590 41 82 00 F4 */ beq lbl_80192724 +/* 80192634 0018F594 7E E4 BB 78 */ mr r4, r23 +/* 80192638 0018F598 38 61 00 18 */ addi r3, r1, 0x18 +/* 8019263C 0018F59C 4B F1 35 D5 */ bl "__ct__31TCastToPtr<17CWallCrawlerSwarm>FP7CEntity" +/* 80192640 0018F5A0 83 63 00 04 */ lwz r27, 4(r3) +/* 80192644 0018F5A4 28 1B 00 00 */ cmplwi r27, 0 +/* 80192648 0018F5A8 41 82 00 A0 */ beq lbl_801926E8 +/* 8019264C 0018F5AC C0 02 A5 A4 */ lfs f0, lbl_805AC2C4@sda21(r2) +/* 80192650 0018F5B0 3B 40 00 00 */ li r26, 0 +/* 80192654 0018F5B4 82 FB 01 0C */ lwz r23, 0x10c(r27) +/* 80192658 0018F5B8 3B E0 00 00 */ li r31, 0 +/* 8019265C 0018F5BC EE B4 00 32 */ fmuls f21, f20, f0 +/* 80192660 0018F5C0 48 00 00 7C */ b lbl_801926DC +lbl_80192664: +/* 80192664 0018F5C4 2C 1A FF FF */ cmpwi r26, -1 +/* 80192668 0018F5C8 38 80 00 00 */ li r4, 0 +/* 8019266C 0018F5CC 40 81 00 28 */ ble lbl_80192694 +/* 80192670 0018F5D0 80 1B 01 0C */ lwz r0, 0x10c(r27) +/* 80192674 0018F5D4 7C 1A 00 00 */ cmpw r26, r0 +/* 80192678 0018F5D8 40 80 00 1C */ bge lbl_80192694 +/* 8019267C 0018F5DC 80 7B 01 14 */ lwz r3, 0x114(r27) +/* 80192680 0018F5E0 38 1F 00 80 */ addi r0, r31, 0x80 +/* 80192684 0018F5E4 7C 03 00 AE */ lbzx r0, r3, r0 +/* 80192688 0018F5E8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8019268C 0018F5EC 41 82 00 08 */ beq lbl_80192694 +/* 80192690 0018F5F0 38 80 00 01 */ li r4, 1 +lbl_80192694: +/* 80192694 0018F5F4 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 80192698 0018F5F8 41 82 00 3C */ beq lbl_801926D4 +/* 8019269C 0018F5FC 80 1B 01 14 */ lwz r0, 0x114(r27) +/* 801926A0 0018F600 FC 20 A8 90 */ fmr f1, f21 +/* 801926A4 0018F604 C0 42 A5 A4 */ lfs f2, lbl_805AC2C4@sda21(r2) +/* 801926A8 0018F608 7F 03 C3 78 */ mr r3, r24 +/* 801926AC 0018F60C 7C C0 FA 14 */ add r6, r0, r31 +/* 801926B0 0018F610 38 81 00 78 */ addi r4, r1, 0x78 +/* 801926B4 0018F614 C0 86 00 2C */ lfs f4, 0x2c(r6) +/* 801926B8 0018F618 C0 66 00 1C */ lfs f3, 0x1c(r6) +/* 801926BC 0018F61C 38 A1 01 60 */ addi r5, r1, 0x160 +/* 801926C0 0018F620 C0 06 00 0C */ lfs f0, 0xc(r6) +/* 801926C4 0018F624 D0 01 00 78 */ stfs f0, 0x78(r1) +/* 801926C8 0018F628 D0 61 00 7C */ stfs f3, 0x7c(r1) +/* 801926CC 0018F62C D0 81 00 80 */ stfs f4, 0x80(r1) +/* 801926D0 0018F630 4B FF F8 F5 */ bl DrawRadarPaint__18CHudRadarInterfaceCFRC9CVector3fffRCQ218CHudRadarInterface20SRadarPaintDrawParms +lbl_801926D4: +/* 801926D4 0018F634 3B FF 00 84 */ addi r31, r31, 0x84 +/* 801926D8 0018F638 3B 5A 00 01 */ addi r26, r26, 1 +lbl_801926DC: +/* 801926DC 0018F63C 7C 1A B8 00 */ cmpw r26, r23 +/* 801926E0 0018F640 41 80 FF 84 */ blt lbl_80192664 +/* 801926E4 0018F644 48 00 00 34 */ b lbl_80192718 +lbl_801926E8: +/* 801926E8 0018F648 C0 97 00 60 */ lfs f4, 0x60(r23) +/* 801926EC 0018F64C FC 20 A0 90 */ fmr f1, f20 +/* 801926F0 0018F650 C0 77 00 50 */ lfs f3, 0x50(r23) +/* 801926F4 0018F654 7F 03 C3 78 */ mr r3, r24 +/* 801926F8 0018F658 C0 17 00 40 */ lfs f0, 0x40(r23) +/* 801926FC 0018F65C 38 81 00 28 */ addi r4, r1, 0x28 +/* 80192700 0018F660 C0 42 A5 88 */ lfs f2, lbl_805AC2A8@sda21(r2) +/* 80192704 0018F664 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 80192708 0018F668 38 A1 01 60 */ addi r5, r1, 0x160 +/* 8019270C 0018F66C D0 61 00 2C */ stfs f3, 0x2c(r1) +/* 80192710 0018F670 D0 81 00 30 */ stfs f4, 0x30(r1) +/* 80192714 0018F674 4B FF F8 B1 */ bl DrawRadarPaint__18CHudRadarInterfaceCFRC9CVector3fffRCQ218CHudRadarInterface20SRadarPaintDrawParms +lbl_80192718: +/* 80192718 0018F678 3B BD 00 01 */ addi r29, r29, 1 +/* 8019271C 0018F67C 2C 1D 00 80 */ cmpwi r29, 0x80 +/* 80192720 0018F680 40 80 00 1C */ bge lbl_8019273C +lbl_80192724: +/* 80192724 0018F684 3B 9C 00 02 */ addi r28, r28, 2 +lbl_80192728: +/* 80192728 0018F688 80 01 01 E8 */ lwz r0, 0x1e8(r1) +/* 8019272C 0018F68C 54 00 08 3C */ slwi r0, r0, 1 +/* 80192730 0018F690 7C 1E 02 14 */ add r0, r30, r0 +/* 80192734 0018F694 7C 1C 00 40 */ cmplw r28, r0 +/* 80192738 0018F698 40 82 FE C4 */ bne lbl_801925FC +lbl_8019273C: +/* 8019273C 0018F69C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 80192740 0018F6A0 38 80 00 01 */ li r4, 1 +/* 80192744 0018F6A4 38 A0 00 01 */ li r5, 1 +/* 80192748 0018F6A8 81 83 00 00 */ lwz r12, 0(r3) +/* 8019274C 0018F6AC 81 8C 00 60 */ lwz r12, 0x60(r12) +/* 80192750 0018F6B0 7D 89 03 A6 */ mtctr r12 +/* 80192754 0018F6B4 4E 80 04 21 */ bctrl +/* 80192758 0018F6B8 80 A1 01 E8 */ lwz r5, 0x1e8(r1) +/* 8019275C 0018F6BC 38 60 00 00 */ li r3, 0 +/* 80192760 0018F6C0 2C 05 00 00 */ cmpwi r5, 0 +/* 80192764 0018F6C4 40 81 00 40 */ ble lbl_801927A4 +/* 80192768 0018F6C8 2C 05 00 08 */ cmpwi r5, 8 +/* 8019276C 0018F6CC 38 85 FF F8 */ addi r4, r5, -8 +/* 80192770 0018F6D0 40 81 00 20 */ ble lbl_80192790 +/* 80192774 0018F6D4 38 04 00 07 */ addi r0, r4, 7 +/* 80192778 0018F6D8 54 00 E8 FE */ srwi r0, r0, 3 +/* 8019277C 0018F6DC 7C 09 03 A6 */ mtctr r0 +/* 80192780 0018F6E0 2C 04 00 00 */ cmpwi r4, 0 +/* 80192784 0018F6E4 40 81 00 0C */ ble lbl_80192790 +lbl_80192788: +/* 80192788 0018F6E8 38 63 00 08 */ addi r3, r3, 8 +/* 8019278C 0018F6EC 42 00 FF FC */ bdnz lbl_80192788 +lbl_80192790: +/* 80192790 0018F6F0 7C 03 28 50 */ subf r0, r3, r5 +/* 80192794 0018F6F4 7C 09 03 A6 */ mtctr r0 +/* 80192798 0018F6F8 7C 03 28 00 */ cmpw r3, r5 +/* 8019279C 0018F6FC 40 80 00 08 */ bge lbl_801927A4 +lbl_801927A0: +/* 801927A0 0018F700 42 00 00 00 */ bdnz lbl_801927A0 +lbl_801927A4: +/* 801927A4 0018F704 38 00 00 00 */ li r0, 0 +/* 801927A8 0018F708 90 01 01 E8 */ stw r0, 0x1e8(r1) +lbl_801927AC: +/* 801927AC 0018F70C E3 E1 0A E8 */ psq_l f31, -1304(r1), 0, qr0 +/* 801927B0 0018F710 CB E1 0A E0 */ lfd f31, 0xae0(r1) +/* 801927B4 0018F714 E3 C1 0A D8 */ psq_l f30, -1320(r1), 0, qr0 +/* 801927B8 0018F718 CB C1 0A D0 */ lfd f30, 0xad0(r1) +/* 801927BC 0018F71C E3 A1 0A C8 */ psq_l f29, -1336(r1), 0, qr0 +/* 801927C0 0018F720 CB A1 0A C0 */ lfd f29, 0xac0(r1) +/* 801927C4 0018F724 E3 81 0A B8 */ psq_l f28, -1352(r1), 0, qr0 +/* 801927C8 0018F728 CB 81 0A B0 */ lfd f28, 0xab0(r1) +/* 801927CC 0018F72C E3 61 0A A8 */ psq_l f27, -1368(r1), 0, qr0 +/* 801927D0 0018F730 CB 61 0A A0 */ lfd f27, 0xaa0(r1) +/* 801927D4 0018F734 E3 41 0A 98 */ psq_l f26, -1384(r1), 0, qr0 +/* 801927D8 0018F738 CB 41 0A 90 */ lfd f26, 0xa90(r1) +/* 801927DC 0018F73C E3 21 0A 88 */ psq_l f25, -1400(r1), 0, qr0 +/* 801927E0 0018F740 CB 21 0A 80 */ lfd f25, 0xa80(r1) +/* 801927E4 0018F744 E3 01 0A 78 */ psq_l f24, -1416(r1), 0, qr0 +/* 801927E8 0018F748 CB 01 0A 70 */ lfd f24, 0xa70(r1) +/* 801927EC 0018F74C E2 E1 0A 68 */ psq_l f23, -1432(r1), 0, qr0 +/* 801927F0 0018F750 CA E1 0A 60 */ lfd f23, 0xa60(r1) +/* 801927F4 0018F754 E2 C1 0A 58 */ psq_l f22, -1448(r1), 0, qr0 +/* 801927F8 0018F758 CA C1 0A 50 */ lfd f22, 0xa50(r1) +/* 801927FC 0018F75C E2 A1 0A 48 */ psq_l f21, -1464(r1), 0, qr0 +/* 80192800 0018F760 CA A1 0A 40 */ lfd f21, 0xa40(r1) +/* 80192804 0018F764 E2 81 0A 38 */ psq_l f20, -1480(r1), 0, qr0 +/* 80192808 0018F768 CA 81 0A 30 */ lfd f20, 0xa30(r1) +/* 8019280C 0018F76C BA E1 0A 0C */ lmw r23, 0xa0c(r1) +/* 80192810 0018F770 80 01 0A F4 */ lwz r0, 0xaf4(r1) +/* 80192814 0018F774 7C 08 03 A6 */ mtlr r0 +/* 80192818 0018F778 38 21 0A F0 */ addi r1, r1, 0xaf0 +/* 8019281C 0018F77C 4E 80 00 20 */ blr + +.global Update__18CHudRadarInterfaceFfRC13CStateManager +Update__18CHudRadarInterfaceFfRC13CStateManager: +/* 80192820 0018F780 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80192824 0018F784 7C 08 02 A6 */ mflr r0 +/* 80192828 0018F788 90 01 00 44 */ stw r0, 0x44(r1) +/* 8019282C 0018F78C DB E1 00 30 */ stfd f31, 0x30(r1) +/* 80192830 0018F790 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 80192834 0018F794 DB C1 00 20 */ stfd f30, 0x20(r1) +/* 80192838 0018F798 F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 +/* 8019283C 0018F79C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80192840 0018F7A0 80 84 08 B8 */ lwz r4, 0x8b8(r4) +/* 80192844 0018F7A4 7C 7F 1B 78 */ mr r31, r3 +/* 80192848 0018F7A8 80 64 00 00 */ lwz r3, 0(r4) +/* 8019284C 0018F7AC 80 03 00 14 */ lwz r0, 0x14(r3) +/* 80192850 0018F7B0 2C 00 00 00 */ cmpwi r0, 0 +/* 80192854 0018F7B4 40 82 00 10 */ bne lbl_80192864 +/* 80192858 0018F7B8 4B EF F0 0D */ bl GetVisorTransitionFactor__12CPlayerStateCFv +/* 8019285C 0018F7BC FF E0 08 90 */ fmr f31, f1 +/* 80192860 0018F7C0 48 00 00 08 */ b lbl_80192868 +lbl_80192864: +/* 80192864 0018F7C4 C3 E2 A5 84 */ lfs f31, lbl_805AC2A4@sda21(r2) +lbl_80192868: +/* 80192868 0018F7C8 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) +/* 8019286C 0018F7CC 38 63 01 7C */ addi r3, r3, 0x17c +/* 80192870 0018F7D0 48 07 C5 05 */ bl GetHudAlpha__12CGameOptionsCFv +/* 80192874 0018F7D4 80 6D A1 3C */ lwz r3, gpTweakGuiColors@sda21(r13) +/* 80192878 0018F7D8 3C 00 43 30 */ lis r0, 0x4330 +/* 8019287C 0018F7DC 90 01 00 10 */ stw r0, 0x10(r1) +/* 80192880 0018F7E0 EC 5F 00 72 */ fmuls f2, f31, f1 +/* 80192884 0018F7E4 88 03 00 0B */ lbz r0, 0xb(r3) +/* 80192888 0018F7E8 C8 22 A5 90 */ lfd f1, lbl_805AC2B0@sda21(r2) +/* 8019288C 0018F7EC 90 01 00 14 */ stw r0, 0x14(r1) +/* 80192890 0018F7F0 C8 01 00 10 */ lfd f0, 0x10(r1) +/* 80192894 0018F7F4 EC 00 08 28 */ fsubs f0, f0, f1 +/* 80192898 0018F7F8 EF C2 00 32 */ fmuls f30, f2, f0 +/* 8019289C 0018F7FC F3 C1 A0 08 */ psq_st f30, 8(r1), 1, qr2 +/* 801928A0 0018F800 38 81 00 0C */ addi r4, r1, 0xc +/* 801928A4 0018F804 80 63 00 08 */ lwz r3, 8(r3) +/* 801928A8 0018F808 88 01 00 08 */ lbz r0, 8(r1) +/* 801928AC 0018F80C 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 801928B0 0018F810 90 01 00 0C */ stw r0, 0xc(r1) +/* 801928B4 0018F814 80 7F 00 40 */ lwz r3, 0x40(r31) +/* 801928B8 0018F818 48 13 7F B5 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 801928BC 0018F81C 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) +/* 801928C0 0018F820 38 80 00 01 */ li r4, 1 +/* 801928C4 0018F824 80 63 00 F8 */ lwz r3, 0xf8(r3) +/* 801928C8 0018F828 38 63 FF FD */ addi r3, r3, -3 +/* 801928CC 0018F82C 20 03 00 01 */ subfic r0, r3, 1 +/* 801928D0 0018F830 7C 83 1B 38 */ orc r3, r4, r3 +/* 801928D4 0018F834 54 00 F8 7E */ srwi r0, r0, 1 +/* 801928D8 0018F838 7C 00 18 50 */ subf r0, r0, r3 +/* 801928DC 0018F83C 54 00 0F FF */ rlwinm. r0, r0, 1, 0x1f, 0x1f +/* 801928E0 0018F840 40 82 00 08 */ bne lbl_801928E8 +/* 801928E4 0018F844 38 80 00 00 */ li r4, 0 +lbl_801928E8: +/* 801928E8 0018F848 88 7F 00 3C */ lbz r3, 0x3c(r31) +/* 801928EC 0018F84C 54 80 06 3E */ clrlwi r0, r4, 0x18 +/* 801928F0 0018F850 54 64 D7 FE */ rlwinm r4, r3, 0x1a, 0x1f, 0x1f +/* 801928F4 0018F854 7C 04 00 40 */ cmplw r4, r0 +/* 801928F8 0018F858 41 82 00 38 */ beq lbl_80192930 +/* 801928FC 0018F85C 7C 80 00 34 */ cntlzw r0, r4 +/* 80192900 0018F860 38 80 00 00 */ li r4, 0 +/* 80192904 0018F864 50 03 0E 72 */ rlwimi r3, r0, 1, 0x19, 0x19 +/* 80192908 0018F868 98 7F 00 3C */ stb r3, 0x3c(r31) +/* 8019290C 0018F86C 88 BF 00 3C */ lbz r5, 0x3c(r31) +/* 80192910 0018F870 80 7F 00 40 */ lwz r3, 0x40(r31) +/* 80192914 0018F874 54 A0 D7 FF */ rlwinm. r0, r5, 0x1a, 0x1f, 0x1f +/* 80192918 0018F878 41 82 00 10 */ beq lbl_80192928 +/* 8019291C 0018F87C 54 A0 CF FF */ rlwinm. r0, r5, 0x19, 0x1f, 0x1f +/* 80192920 0018F880 41 82 00 08 */ beq lbl_80192928 +/* 80192924 0018F884 38 80 00 01 */ li r4, 1 +lbl_80192928: +/* 80192928 0018F888 38 A0 00 01 */ li r5, 1 +/* 8019292C 0018F88C 48 13 7D BD */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +lbl_80192930: +/* 80192930 0018F890 80 1F 00 08 */ lwz r0, 8(r31) +/* 80192934 0018F894 28 00 00 00 */ cmplwi r0, 0 +/* 80192938 0018F898 40 82 00 30 */ bne lbl_80192968 +/* 8019293C 0018F89C 88 1F 00 04 */ lbz r0, 4(r31) +/* 80192940 0018F8A0 28 00 00 00 */ cmplwi r0, 0 +/* 80192944 0018F8A4 41 82 00 24 */ beq lbl_80192968 +/* 80192948 0018F8A8 80 7F 00 00 */ lwz r3, 0(r31) +/* 8019294C 0018F8AC 80 03 00 10 */ lwz r0, 0x10(r3) +/* 80192950 0018F8B0 28 00 00 00 */ cmplwi r0, 0 +/* 80192954 0018F8B4 41 82 00 14 */ beq lbl_80192968 +/* 80192958 0018F8B8 7F E3 FB 78 */ mr r3, r31 +/* 8019295C 0018F8BC 48 1A E4 B1 */ bl GetObj__6CTokenFv +/* 80192960 0018F8C0 80 03 00 04 */ lwz r0, 4(r3) +/* 80192964 0018F8C4 90 1F 00 08 */ stw r0, 8(r31) +lbl_80192968: +/* 80192968 0018F8C8 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 8019296C 0018F8CC CB E1 00 30 */ lfd f31, 0x30(r1) +/* 80192970 0018F8D0 E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 +/* 80192974 0018F8D4 CB C1 00 20 */ lfd f30, 0x20(r1) +/* 80192978 0018F8D8 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8019297C 0018F8DC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80192980 0018F8E0 7C 08 03 A6 */ mtlr r0 +/* 80192984 0018F8E4 38 21 00 40 */ addi r1, r1, 0x40 +/* 80192988 0018F8E8 4E 80 00 20 */ blr + +.global SetIsVisibleGame__18CHudRadarInterfaceFb +SetIsVisibleGame__18CHudRadarInterfaceFb: +/* 8019298C 0018F8EC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80192990 0018F8F0 7C 08 02 A6 */ mflr r0 +/* 80192994 0018F8F4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80192998 0018F8F8 88 03 00 3C */ lbz r0, 0x3c(r3) +/* 8019299C 0018F8FC 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801929A0 0018F900 38 80 00 00 */ li r4, 0 +/* 801929A4 0018F904 98 03 00 3C */ stb r0, 0x3c(r3) +/* 801929A8 0018F908 88 A3 00 3C */ lbz r5, 0x3c(r3) +/* 801929AC 0018F90C 80 63 00 40 */ lwz r3, 0x40(r3) +/* 801929B0 0018F910 54 A0 D7 FF */ rlwinm. r0, r5, 0x1a, 0x1f, 0x1f +/* 801929B4 0018F914 41 82 00 10 */ beq lbl_801929C4 +/* 801929B8 0018F918 54 A0 CF FF */ rlwinm. r0, r5, 0x19, 0x1f, 0x1f +/* 801929BC 0018F91C 41 82 00 08 */ beq lbl_801929C4 +/* 801929C0 0018F920 38 80 00 01 */ li r4, 1 +lbl_801929C4: +/* 801929C4 0018F924 38 A0 00 01 */ li r5, 1 +/* 801929C8 0018F928 48 13 7D 21 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 801929CC 0018F92C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801929D0 0018F930 7C 08 03 A6 */ mtlr r0 +/* 801929D4 0018F934 38 21 00 10 */ addi r1, r1, 0x10 +/* 801929D8 0018F938 4E 80 00 20 */ blr + +.global __ct__18CHudRadarInterfaceFR9CGuiFrameRC13CStateManager +__ct__18CHudRadarInterfaceFR9CGuiFrameRC13CStateManager: +/* 801929DC 0018F93C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801929E0 0018F940 7C 08 02 A6 */ mflr r0 +/* 801929E4 0018F944 3C A0 80 3D */ lis r5, lbl_803D0D50@ha +/* 801929E8 0018F948 90 01 00 34 */ stw r0, 0x34(r1) +/* 801929EC 0018F94C 38 A5 0D 50 */ addi r5, r5, lbl_803D0D50@l +/* 801929F0 0018F950 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801929F4 0018F954 7C 9F 23 78 */ mr r31, r4 +/* 801929F8 0018F958 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801929FC 0018F95C 7C 7E 1B 78 */ mr r30, r3 +/* 80192A00 0018F960 38 61 00 08 */ addi r3, r1, 8 +/* 80192A04 0018F964 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80192A08 0018F968 81 84 00 00 */ lwz r12, 0(r4) +/* 80192A0C 0018F96C 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 80192A10 0018F970 7D 89 03 A6 */ mtctr r12 +/* 80192A14 0018F974 4E 80 04 21 */ bctrl +/* 80192A18 0018F978 7F C3 F3 78 */ mr r3, r30 +/* 80192A1C 0018F97C 38 81 00 08 */ addi r4, r1, 8 +/* 80192A20 0018F980 48 1A E4 89 */ bl __ct__6CTokenFRC6CToken +/* 80192A24 0018F984 38 00 00 00 */ li r0, 0 +/* 80192A28 0018F988 38 61 00 08 */ addi r3, r1, 8 +/* 80192A2C 0018F98C 90 1E 00 08 */ stw r0, 8(r30) +/* 80192A30 0018F990 38 80 FF FF */ li r4, -1 +/* 80192A34 0018F994 48 1A E4 0D */ bl __dt__6CTokenFv +/* 80192A38 0018F998 3C 80 80 5A */ lis r4, skIdentity4f@ha +/* 80192A3C 0018F99C 38 7E 00 0C */ addi r3, r30, 0xc +/* 80192A40 0018F9A0 38 84 66 70 */ addi r4, r4, skIdentity4f@l +/* 80192A44 0018F9A4 48 18 01 31 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80192A48 0018F9A8 88 1E 00 3C */ lbz r0, 0x3c(r30) +/* 80192A4C 0018F9AC 38 A0 00 01 */ li r5, 1 +/* 80192A50 0018F9B0 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 80192A54 0018F9B4 3C 60 80 3D */ lis r3, lbl_803D0D38@ha +/* 80192A58 0018F9B8 98 1E 00 3C */ stb r0, 0x3c(r30) +/* 80192A5C 0018F9BC 38 83 0D 38 */ addi r4, r3, lbl_803D0D38@l +/* 80192A60 0018F9C0 38 61 00 10 */ addi r3, r1, 0x10 +/* 80192A64 0018F9C4 88 1E 00 3C */ lbz r0, 0x3c(r30) +/* 80192A68 0018F9C8 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 80192A6C 0018F9CC 98 1E 00 3C */ stb r0, 0x3c(r30) +/* 80192A70 0018F9D0 4B E7 22 49 */ bl string_l__4rstlFPCc +/* 80192A74 0018F9D4 7F E3 FB 78 */ mr r3, r31 +/* 80192A78 0018F9D8 38 81 00 10 */ addi r4, r1, 0x10 +/* 80192A7C 0018F9DC 48 12 F7 59 */ bl "FindWidget__9CGuiFrameCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80192A80 0018F9E0 90 7E 00 40 */ stw r3, 0x40(r30) +/* 80192A84 0018F9E4 38 61 00 10 */ addi r3, r1, 0x10 +/* 80192A88 0018F9E8 48 1A B0 59 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80192A8C 0018F9EC 80 1F 00 14 */ lwz r0, 0x14(r31) +/* 80192A90 0018F9F0 38 7E 00 0C */ addi r3, r30, 0xc +/* 80192A94 0018F9F4 90 1E 00 44 */ stw r0, 0x44(r30) +/* 80192A98 0018F9F8 80 9E 00 40 */ lwz r4, 0x40(r30) +/* 80192A9C 0018F9FC 38 84 00 04 */ addi r4, r4, 4 +/* 80192AA0 0018FA00 48 18 00 A1 */ bl __as__12CTransform4fFRC12CTransform4f +/* 80192AA4 0018FA04 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80192AA8 0018FA08 80 7E 00 40 */ lwz r3, 0x40(r30) +/* 80192AAC 0018FA0C 38 84 00 08 */ addi r4, r4, 8 +/* 80192AB0 0018FA10 48 13 7D BD */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80192AB4 0018FA14 7F C3 F3 78 */ mr r3, r30 +/* 80192AB8 0018FA18 48 1A E2 CD */ bl Lock__6CTokenFv +/* 80192ABC 0018FA1C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80192AC0 0018FA20 7F C3 F3 78 */ mr r3, r30 +/* 80192AC4 0018FA24 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80192AC8 0018FA28 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80192ACC 0018FA2C 7C 08 03 A6 */ mtlr r0 +/* 80192AD0 0018FA30 38 21 00 30 */ addi r1, r1, 0x30 +/* 80192AD4 0018FA34 4E 80 00 20 */ blr + +.global __dt__19CHudThreatInterfaceFv +__dt__19CHudThreatInterfaceFv: +/* 80192AD8 0018FA38 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80192ADC 0018FA3C 7C 08 02 A6 */ mflr r0 +/* 80192AE0 0018FA40 90 01 00 14 */ stw r0, 0x14(r1) +/* 80192AE4 0018FA44 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80192AE8 0018FA48 7C 7F 1B 79 */ or. r31, r3, r3 +/* 80192AEC 0018FA4C 41 82 00 30 */ beq lbl_80192B1C +/* 80192AF0 0018FA50 3C 60 80 3E */ lis r3, lbl_803E44A8@ha +/* 80192AF4 0018FA54 38 03 44 A8 */ addi r0, r3, lbl_803E44A8@l +/* 80192AF8 0018FA58 90 1F 00 00 */ stw r0, 0(r31) +/* 80192AFC 0018FA5C 41 82 00 10 */ beq lbl_80192B0C +/* 80192B00 0018FA60 3C 60 80 3E */ lis r3, lbl_803DA304@ha +/* 80192B04 0018FA64 38 03 A3 04 */ addi r0, r3, lbl_803DA304@l +/* 80192B08 0018FA68 90 1F 00 00 */ stw r0, 0(r31) +lbl_80192B0C: +/* 80192B0C 0018FA6C 7C 80 07 35 */ extsh. r0, r4 +/* 80192B10 0018FA70 40 81 00 0C */ ble lbl_80192B1C +/* 80192B14 0018FA74 7F E3 FB 78 */ mr r3, r31 +/* 80192B18 0018FA78 48 18 2E 19 */ bl Free__7CMemoryFPCv +lbl_80192B1C: +/* 80192B1C 0018FA7C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80192B20 0018FA80 7F E3 FB 78 */ mr r3, r31 +/* 80192B24 0018FA84 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80192B28 0018FA88 7C 08 03 A6 */ mtlr r0 +/* 80192B2C 0018FA8C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80192B30 0018FA90 4E 80 00 20 */ blr + +.global Update__19CHudThreatInterfaceFf +Update__19CHudThreatInterfaceFf: +/* 80192B34 0018FA94 94 21 FE 60 */ stwu r1, -0x1a0(r1) +/* 80192B38 0018FA98 7C 08 02 A6 */ mflr r0 +/* 80192B3C 0018FA9C 90 01 01 A4 */ stw r0, 0x1a4(r1) +/* 80192B40 0018FAA0 DB E1 01 90 */ stfd f31, 0x190(r1) +/* 80192B44 0018FAA4 F3 E1 01 98 */ psq_st f31, 408(r1), 0, qr0 +/* 80192B48 0018FAA8 DB C1 01 80 */ stfd f30, 0x180(r1) +/* 80192B4C 0018FAAC F3 C1 01 88 */ psq_st f30, 392(r1), 0, qr0 +/* 80192B50 0018FAB0 DB A1 01 70 */ stfd f29, 0x170(r1) +/* 80192B54 0018FAB4 F3 A1 01 78 */ psq_st f29, 376(r1), 0, qr0 +/* 80192B58 0018FAB8 DB 81 01 60 */ stfd f28, 0x160(r1) +/* 80192B5C 0018FABC F3 81 01 68 */ psq_st f28, 360(r1), 0, qr0 +/* 80192B60 0018FAC0 DB 61 01 50 */ stfd f27, 0x150(r1) +/* 80192B64 0018FAC4 F3 61 01 58 */ psq_st f27, 344(r1), 0, qr0 +/* 80192B68 0018FAC8 DB 41 01 40 */ stfd f26, 0x140(r1) +/* 80192B6C 0018FACC F3 41 01 48 */ psq_st f26, 328(r1), 0, qr0 +/* 80192B70 0018FAD0 BF 61 01 2C */ stmw r27, 0x12c(r1) +/* 80192B74 0018FAD4 80 AD A1 3C */ lwz r5, gpTweakGuiColors@sda21(r13) +/* 80192B78 0018FAD8 7C 7F 1B 78 */ mr r31, r3 +/* 80192B7C 0018FADC FF 60 08 90 */ fmr f27, f1 +/* 80192B80 0018FAE0 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 80192B84 0018FAE4 38 61 00 48 */ addi r3, r1, 0x48 +/* 80192B88 0018FAE8 38 85 00 80 */ addi r4, r5, 0x80 +/* 80192B8C 0018FAEC 38 A5 01 7C */ addi r5, r5, 0x17c +/* 80192B90 0018FAF0 48 1D 07 1D */ bl Lerp__6CColorFRC6CColorRC6CColorf +/* 80192B94 0018FAF4 80 01 00 48 */ lwz r0, 0x48(r1) +/* 80192B98 0018FAF8 80 AD A1 38 */ lwz r5, gpTweakGui@sda21(r13) +/* 80192B9C 0018FAFC 90 01 00 4C */ stw r0, 0x4c(r1) +/* 80192BA0 0018FB00 80 9F 00 6C */ lwz r4, 0x6c(r31) +/* 80192BA4 0018FB04 80 7F 00 70 */ lwz r3, 0x70(r31) +/* 80192BA8 0018FB08 C3 A5 00 E4 */ lfs f29, 0xe4(r5) +/* 80192BAC 0018FB0C C0 04 00 F4 */ lfs f0, 0xf4(r4) +/* 80192BB0 0018FB10 28 03 00 00 */ cmplwi r3, 0 +/* 80192BB4 0018FB14 EF 9D 00 28 */ fsubs f28, f29, f0 +/* 80192BB8 0018FB18 41 82 00 88 */ beq lbl_80192C40 +/* 80192BBC 0018FB1C C0 1F 00 10 */ lfs f0, 0x10(r31) +/* 80192BC0 0018FB20 FC 00 E8 40 */ fcmpo cr0, f0, f29 +/* 80192BC4 0018FB24 40 80 00 74 */ bge lbl_80192C38 +/* 80192BC8 0018FB28 38 80 00 01 */ li r4, 1 +/* 80192BCC 0018FB2C 48 13 7A 61 */ bl SetIsVisible__10CGuiWidgetFb +/* 80192BD0 0018FB30 C0 2D 8F 70 */ lfs f1, lbl_805A7B30@sda21(r13) +/* 80192BD4 0018FB34 C0 1F 00 10 */ lfs f0, 0x10(r31) +/* 80192BD8 0018FB38 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80192BDC 0018FB3C 40 80 00 0C */ bge lbl_80192BE8 +/* 80192BE0 0018FB40 38 9F 00 10 */ addi r4, r31, 0x10 +/* 80192BE4 0018FB44 48 00 00 08 */ b lbl_80192BEC +lbl_80192BE8: +/* 80192BE8 0018FB48 38 8D 8F 70 */ addi r4, r13, lbl_805A7B30@sda21 +lbl_80192BEC: +/* 80192BEC 0018FB4C 3C 60 80 3D */ lis r3, lbl_803D0E2C@ha +/* 80192BF0 0018FB50 C0 24 00 00 */ lfs f1, 0(r4) +/* 80192BF4 0018FB54 38 83 0E 2C */ addi r4, r3, lbl_803D0E2C@l +/* 80192BF8 0018FB58 38 61 00 50 */ addi r3, r1, 0x50 +/* 80192BFC 0018FB5C 4C C6 32 42 */ crset 6 +/* 80192C00 0018FB60 48 1F B0 DD */ bl sprintf +/* 80192C04 0018FB64 38 61 00 94 */ addi r3, r1, 0x94 +/* 80192C08 0018FB68 38 81 00 50 */ addi r4, r1, 0x50 +/* 80192C0C 0018FB6C 38 C1 00 0C */ addi r6, r1, 0xc +/* 80192C10 0018FB70 38 A0 FF FF */ li r5, -1 +/* 80192C14 0018FB74 48 1A B5 81 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator" +/* 80192C18 0018FB78 80 7F 00 70 */ lwz r3, 0x70(r31) +/* 80192C1C 0018FB7C 38 81 00 94 */ addi r4, r1, 0x94 +/* 80192C20 0018FB80 38 A0 00 00 */ li r5, 0 +/* 80192C24 0018FB84 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80192C28 0018FB88 48 13 6E E1 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80192C2C 0018FB8C 38 61 00 94 */ addi r3, r1, 0x94 +/* 80192C30 0018FB90 48 1A AE B1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80192C34 0018FB94 48 00 00 0C */ b lbl_80192C40 +lbl_80192C38: +/* 80192C38 0018FB98 38 80 00 00 */ li r4, 0 +/* 80192C3C 0018FB9C 48 13 79 F1 */ bl SetIsVisible__10CGuiWidgetFb +lbl_80192C40: +/* 80192C40 0018FBA0 88 1F 00 54 */ lbz r0, 0x54(r31) +/* 80192C44 0018FBA4 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 80192C48 0018FBA8 41 82 01 5C */ beq lbl_80192DA4 +/* 80192C4C 0018FBAC C0 3F 00 14 */ lfs f1, 0x14(r31) +/* 80192C50 0018FBB0 C0 02 A5 B0 */ lfs f0, lbl_805AC2D0@sda21(r2) +/* 80192C54 0018FBB4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80192C58 0018FBB8 40 81 00 98 */ ble lbl_80192CF0 +/* 80192C5C 0018FBBC EC 21 D8 28 */ fsubs f1, f1, f27 +/* 80192C60 0018FBC0 C0 0D 8F 74 */ lfs f0, lbl_805A7B34@sda21(r13) +/* 80192C64 0018FBC4 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80192C68 0018FBC8 D0 21 00 44 */ stfs f1, 0x44(r1) +/* 80192C6C 0018FBCC 40 80 00 0C */ bge lbl_80192C78 +/* 80192C70 0018FBD0 38 61 00 44 */ addi r3, r1, 0x44 +/* 80192C74 0018FBD4 48 00 00 08 */ b lbl_80192C7C +lbl_80192C78: +/* 80192C78 0018FBD8 38 6D 8F 74 */ addi r3, r13, lbl_805A7B34@sda21 +lbl_80192C7C: +/* 80192C7C 0018FBDC C0 03 00 00 */ lfs f0, 0(r3) +/* 80192C80 0018FBE0 38 80 00 01 */ li r4, 1 +/* 80192C84 0018FBE4 D0 1F 00 14 */ stfs f0, 0x14(r31) +/* 80192C88 0018FBE8 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) +/* 80192C8C 0018FBEC C0 3F 00 14 */ lfs f1, 0x14(r31) +/* 80192C90 0018FBF0 C0 03 00 F4 */ lfs f0, 0xf4(r3) +/* 80192C94 0018FBF4 80 7F 00 60 */ lwz r3, 0x60(r31) +/* 80192C98 0018FBF8 EF 41 00 24 */ fdivs f26, f1, f0 +/* 80192C9C 0018FBFC 48 13 79 91 */ bl SetIsVisible__10CGuiWidgetFb +/* 80192CA0 0018FC00 88 61 00 4F */ lbz r3, 0x4f(r1) +/* 80192CA4 0018FC04 3C 00 43 30 */ lis r0, 0x4330 +/* 80192CA8 0018FC08 90 01 01 18 */ stw r0, 0x118(r1) +/* 80192CAC 0018FC0C C8 22 A5 D8 */ lfd f1, lbl_805AC2F8@sda21(r2) +/* 80192CB0 0018FC10 90 61 01 1C */ stw r3, 0x11c(r1) +/* 80192CB4 0018FC14 C8 01 01 18 */ lfd f0, 0x118(r1) +/* 80192CB8 0018FC18 EC 00 08 28 */ fsubs f0, f0, f1 +/* 80192CBC 0018FC1C EF FA 00 32 */ fmuls f31, f26, f0 +/* 80192CC0 0018FC20 F3 E1 A0 0B */ psq_st f31, 11(r1), 1, qr2 +/* 80192CC4 0018FC24 38 81 00 40 */ addi r4, r1, 0x40 +/* 80192CC8 0018FC28 80 61 00 4C */ lwz r3, 0x4c(r1) +/* 80192CCC 0018FC2C 88 01 00 0B */ lbz r0, 0xb(r1) +/* 80192CD0 0018FC30 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 80192CD4 0018FC34 90 01 00 40 */ stw r0, 0x40(r1) +/* 80192CD8 0018FC38 80 7F 00 60 */ lwz r3, 0x60(r31) +/* 80192CDC 0018FC3C 48 13 7B 91 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80192CE0 0018FC40 80 7F 00 64 */ lwz r3, 0x64(r31) +/* 80192CE4 0018FC44 38 80 00 00 */ li r4, 0 +/* 80192CE8 0018FC48 48 13 79 45 */ bl SetIsVisible__10CGuiWidgetFb +/* 80192CEC 0018FC4C 48 00 00 B8 */ b lbl_80192DA4 +lbl_80192CF0: +/* 80192CF0 0018FC50 40 80 00 9C */ bge lbl_80192D8C +/* 80192CF4 0018FC54 EC 21 D8 2A */ fadds f1, f1, f27 +/* 80192CF8 0018FC58 C0 0D 8F 78 */ lfs f0, lbl_805A7B38@sda21(r13) +/* 80192CFC 0018FC5C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80192D00 0018FC60 D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 80192D04 0018FC64 40 80 00 0C */ bge lbl_80192D10 +/* 80192D08 0018FC68 38 61 00 3C */ addi r3, r1, 0x3c +/* 80192D0C 0018FC6C 48 00 00 08 */ b lbl_80192D14 +lbl_80192D10: +/* 80192D10 0018FC70 38 6D 8F 78 */ addi r3, r13, lbl_805A7B38@sda21 +lbl_80192D14: +/* 80192D14 0018FC74 C0 03 00 00 */ lfs f0, 0(r3) +/* 80192D18 0018FC78 38 80 00 01 */ li r4, 1 +/* 80192D1C 0018FC7C D0 1F 00 14 */ stfs f0, 0x14(r31) +/* 80192D20 0018FC80 C0 1F 00 14 */ lfs f0, 0x14(r31) +/* 80192D24 0018FC84 80 AD A1 38 */ lwz r5, gpTweakGui@sda21(r13) +/* 80192D28 0018FC88 FC 20 00 50 */ fneg f1, f0 +/* 80192D2C 0018FC8C 80 7F 00 64 */ lwz r3, 0x64(r31) +/* 80192D30 0018FC90 C0 05 00 F4 */ lfs f0, 0xf4(r5) +/* 80192D34 0018FC94 EF 41 00 24 */ fdivs f26, f1, f0 +/* 80192D38 0018FC98 48 13 78 F5 */ bl SetIsVisible__10CGuiWidgetFb +/* 80192D3C 0018FC9C 88 61 00 4F */ lbz r3, 0x4f(r1) +/* 80192D40 0018FCA0 3C 00 43 30 */ lis r0, 0x4330 +/* 80192D44 0018FCA4 90 01 01 18 */ stw r0, 0x118(r1) +/* 80192D48 0018FCA8 C8 22 A5 D8 */ lfd f1, lbl_805AC2F8@sda21(r2) +/* 80192D4C 0018FCAC 90 61 01 1C */ stw r3, 0x11c(r1) +/* 80192D50 0018FCB0 C8 01 01 18 */ lfd f0, 0x118(r1) +/* 80192D54 0018FCB4 EC 00 08 28 */ fsubs f0, f0, f1 +/* 80192D58 0018FCB8 EF FA 00 32 */ fmuls f31, f26, f0 +/* 80192D5C 0018FCBC F3 E1 A0 0A */ psq_st f31, 10(r1), 1, qr2 +/* 80192D60 0018FCC0 38 81 00 38 */ addi r4, r1, 0x38 +/* 80192D64 0018FCC4 80 61 00 4C */ lwz r3, 0x4c(r1) +/* 80192D68 0018FCC8 88 01 00 0A */ lbz r0, 0xa(r1) +/* 80192D6C 0018FCCC 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 80192D70 0018FCD0 90 01 00 38 */ stw r0, 0x38(r1) +/* 80192D74 0018FCD4 80 7F 00 64 */ lwz r3, 0x64(r31) +/* 80192D78 0018FCD8 48 13 7A F5 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80192D7C 0018FCDC 80 7F 00 60 */ lwz r3, 0x60(r31) +/* 80192D80 0018FCE0 38 80 00 00 */ li r4, 0 +/* 80192D84 0018FCE4 48 13 78 A9 */ bl SetIsVisible__10CGuiWidgetFb +/* 80192D88 0018FCE8 48 00 00 1C */ b lbl_80192DA4 +lbl_80192D8C: +/* 80192D8C 0018FCEC 80 7F 00 60 */ lwz r3, 0x60(r31) +/* 80192D90 0018FCF0 38 80 00 00 */ li r4, 0 +/* 80192D94 0018FCF4 48 13 78 99 */ bl SetIsVisible__10CGuiWidgetFb +/* 80192D98 0018FCF8 80 7F 00 64 */ lwz r3, 0x64(r31) +/* 80192D9C 0018FCFC 38 80 00 00 */ li r4, 0 +/* 80192DA0 0018FD00 48 13 78 8D */ bl SetIsVisible__10CGuiWidgetFb +lbl_80192DA4: +/* 80192DA4 0018FD04 C0 1F 00 10 */ lfs f0, 0x10(r31) +/* 80192DA8 0018FD08 FC 00 E8 40 */ fcmpo cr0, f0, f29 +/* 80192DAC 0018FD0C 4C 40 13 82 */ cror 2, 0, 2 +/* 80192DB0 0018FD10 40 82 00 48 */ bne lbl_80192DF8 +/* 80192DB4 0018FD14 EC 20 E0 28 */ fsubs f1, f0, f28 +/* 80192DB8 0018FD18 C0 02 A5 B4 */ lfs f0, lbl_805AC2D4@sda21(r2) +/* 80192DBC 0018FD1C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80192DC0 0018FD20 40 80 00 14 */ bge lbl_80192DD4 +/* 80192DC4 0018FD24 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) +/* 80192DC8 0018FD28 C0 03 00 F4 */ lfs f0, 0xf4(r3) +/* 80192DCC 0018FD2C D0 1F 00 14 */ stfs f0, 0x14(r31) +/* 80192DD0 0018FD30 48 00 00 30 */ b lbl_80192E00 +lbl_80192DD4: +/* 80192DD4 0018FD34 C0 02 A5 B8 */ lfs f0, lbl_805AC2D8@sda21(r2) +/* 80192DD8 0018FD38 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80192DDC 0018FD3C 40 81 00 24 */ ble lbl_80192E00 +/* 80192DE0 0018FD40 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) +/* 80192DE4 0018FD44 C0 22 A5 BC */ lfs f1, lbl_805AC2DC@sda21(r2) +/* 80192DE8 0018FD48 C0 03 00 F4 */ lfs f0, 0xf4(r3) +/* 80192DEC 0018FD4C EC 01 00 32 */ fmuls f0, f1, f0 +/* 80192DF0 0018FD50 D0 1F 00 14 */ stfs f0, 0x14(r31) +/* 80192DF4 0018FD54 48 00 00 0C */ b lbl_80192E00 +lbl_80192DF8: +/* 80192DF8 0018FD58 C0 02 A5 B0 */ lfs f0, lbl_805AC2D0@sda21(r2) +/* 80192DFC 0018FD5C D0 1F 00 14 */ stfs f0, 0x14(r31) +lbl_80192E00: +/* 80192E00 0018FD60 C0 3F 00 10 */ lfs f1, 0x10(r31) +/* 80192E04 0018FD64 FC 01 E8 40 */ fcmpo cr0, f1, f29 +/* 80192E08 0018FD68 4C 40 13 82 */ cror 2, 0, 2 +/* 80192E0C 0018FD6C 40 82 00 28 */ bne lbl_80192E34 +/* 80192E10 0018FD70 80 7F 00 6C */ lwz r3, 0x6c(r31) +/* 80192E14 0018FD74 38 80 00 00 */ li r4, 0 +/* 80192E18 0018FD78 C0 03 00 E0 */ lfs f0, 0xe0(r3) +/* 80192E1C 0018FD7C EC 20 08 28 */ fsubs f1, f0, f1 +/* 80192E20 0018FD80 48 13 8A A9 */ bl SetCurrEnergy__16CAuiEnergyBarT01Ffb +/* 80192E24 0018FD84 80 7F 00 5C */ lwz r3, 0x5c(r31) +/* 80192E28 0018FD88 38 81 00 4C */ addi r4, r1, 0x4c +/* 80192E2C 0018FD8C 48 13 7A 41 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80192E30 0018FD90 48 00 00 24 */ b lbl_80192E54 +lbl_80192E34: +/* 80192E34 0018FD94 80 7F 00 6C */ lwz r3, 0x6c(r31) +/* 80192E38 0018FD98 38 80 00 00 */ li r4, 0 +/* 80192E3C 0018FD9C C0 22 A5 B0 */ lfs f1, lbl_805AC2D0@sda21(r2) +/* 80192E40 0018FDA0 48 13 8A 89 */ bl SetCurrEnergy__16CAuiEnergyBarT01Ffb +/* 80192E44 0018FDA4 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80192E48 0018FDA8 80 7F 00 5C */ lwz r3, 0x5c(r31) +/* 80192E4C 0018FDAC 38 84 00 90 */ addi r4, r4, 0x90 +/* 80192E50 0018FDB0 48 13 7A 1D */ bl SetColor__10CGuiWidgetFRC6CColor +lbl_80192E54: +/* 80192E54 0018FDB4 80 01 00 4C */ lwz r0, 0x4c(r1) +/* 80192E58 0018FDB8 80 7F 00 6C */ lwz r3, 0x6c(r31) +/* 80192E5C 0018FDBC 90 03 00 D0 */ stw r0, 0xd0(r3) +/* 80192E60 0018FDC0 88 1F 00 54 */ lbz r0, 0x54(r31) +/* 80192E64 0018FDC4 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 80192E68 0018FDC8 41 82 00 8C */ beq lbl_80192EF4 +/* 80192E6C 0018FDCC C0 3F 00 10 */ lfs f1, 0x10(r31) +/* 80192E70 0018FDD0 C0 0D 8F 7C */ lfs f0, lbl_805A7B3C@sda21(r13) +/* 80192E74 0018FDD4 EC 3D 08 28 */ fsubs f1, f29, f1 +/* 80192E78 0018FDD8 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80192E7C 0018FDDC D0 21 00 34 */ stfs f1, 0x34(r1) +/* 80192E80 0018FDE0 40 80 00 0C */ bge lbl_80192E8C +/* 80192E84 0018FDE4 38 81 00 34 */ addi r4, r1, 0x34 +/* 80192E88 0018FDE8 48 00 00 08 */ b lbl_80192E90 +lbl_80192E8C: +/* 80192E8C 0018FDEC 38 8D 8F 7C */ addi r4, r13, lbl_805A7B3C@sda21 +lbl_80192E90: +/* 80192E90 0018FDF0 80 1F 00 04 */ lwz r0, 4(r31) +/* 80192E94 0018FDF4 3C 60 80 3D */ lis r3, lbl_803D0E04@ha +/* 80192E98 0018FDF8 38 63 0E 04 */ addi r3, r3, lbl_803D0E04@l +/* 80192E9C 0018FDFC C0 24 00 00 */ lfs f1, 0(r4) +/* 80192EA0 0018FE00 54 00 10 3A */ slwi r0, r0, 2 +/* 80192EA4 0018FE04 C0 02 A5 B0 */ lfs f0, lbl_805AC2D0@sda21(r2) +/* 80192EA8 0018FE08 7C 43 04 2E */ lfsx f2, r3, r0 +/* 80192EAC 0018FE0C 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 80192EB0 0018FE10 D0 01 00 88 */ stfs f0, 0x88(r1) +/* 80192EB4 0018FE14 38 81 00 88 */ addi r4, r1, 0x88 +/* 80192EB8 0018FE18 EC 22 00 72 */ fmuls f1, f2, f1 +/* 80192EBC 0018FE1C D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 80192EC0 0018FE20 EC 01 E8 24 */ fdivs f0, f1, f29 +/* 80192EC4 0018FE24 D0 01 00 90 */ stfs f0, 0x90(r1) +/* 80192EC8 0018FE28 48 18 02 79 */ bl Translate__12CTransform4fFRC9CVector3f +/* 80192ECC 0018FE2C 38 61 00 E4 */ addi r3, r1, 0xe4 +/* 80192ED0 0018FE30 38 9F 00 18 */ addi r4, r31, 0x18 +/* 80192ED4 0018FE34 38 A1 00 B4 */ addi r5, r1, 0xb4 +/* 80192ED8 0018FE38 48 17 FA 79 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80192EDC 0018FE3C 83 DF 00 5C */ lwz r30, 0x5c(r31) +/* 80192EE0 0018FE40 38 81 00 E4 */ addi r4, r1, 0xe4 +/* 80192EE4 0018FE44 38 7E 00 04 */ addi r3, r30, 4 +/* 80192EE8 0018FE48 48 17 FC 59 */ bl __as__12CTransform4fFRC12CTransform4f +/* 80192EEC 0018FE4C 7F C3 F3 78 */ mr r3, r30 +/* 80192EF0 0018FE50 48 13 18 F9 */ bl RecalculateTransforms__10CGuiObjectFv +lbl_80192EF4: +/* 80192EF4 0018FE54 80 1F 00 68 */ lwz r0, 0x68(r31) +/* 80192EF8 0018FE58 28 00 00 00 */ cmplwi r0, 0 +/* 80192EFC 0018FE5C 41 82 01 B4 */ beq lbl_801930B0 +/* 80192F00 0018FE60 80 7F 00 6C */ lwz r3, 0x6c(r31) +/* 80192F04 0018FE64 48 13 82 D9 */ bl GetActualFraction__16CAuiEnergyBarT01CFv +/* 80192F08 0018FE68 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) +/* 80192F0C 0018FE6C C0 03 01 10 */ lfs f0, 0x110(r3) +/* 80192F10 0018FE70 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80192F14 0018FE74 40 81 00 14 */ ble lbl_80192F28 +/* 80192F18 0018FE78 80 7F 00 68 */ lwz r3, 0x68(r31) +/* 80192F1C 0018FE7C 38 80 00 01 */ li r4, 1 +/* 80192F20 0018FE80 48 13 77 0D */ bl SetIsVisible__10CGuiWidgetFb +/* 80192F24 0018FE84 48 00 00 10 */ b lbl_80192F34 +lbl_80192F28: +/* 80192F28 0018FE88 80 7F 00 68 */ lwz r3, 0x68(r31) +/* 80192F2C 0018FE8C 38 80 00 00 */ li r4, 0 +/* 80192F30 0018FE90 48 13 76 FD */ bl SetIsVisible__10CGuiWidgetFb +lbl_80192F34: +/* 80192F34 0018FE94 80 7F 00 6C */ lwz r3, 0x6c(r31) +/* 80192F38 0018FE98 C0 03 00 F4 */ lfs f0, 0xf4(r3) +/* 80192F3C 0018FE9C FC 1D 00 00 */ fcmpu cr0, f29, f0 +/* 80192F40 0018FEA0 40 82 00 0C */ bne lbl_80192F4C +/* 80192F44 0018FEA4 3B C0 00 02 */ li r30, 2 +/* 80192F48 0018FEA8 48 00 00 24 */ b lbl_80192F6C +lbl_80192F4C: +/* 80192F4C 0018FEAC 48 13 82 91 */ bl GetActualFraction__16CAuiEnergyBarT01CFv +/* 80192F50 0018FEB0 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) +/* 80192F54 0018FEB4 C0 03 01 10 */ lfs f0, 0x110(r3) +/* 80192F58 0018FEB8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80192F5C 0018FEBC 40 81 00 0C */ ble lbl_80192F68 +/* 80192F60 0018FEC0 3B C0 00 01 */ li r30, 1 +/* 80192F64 0018FEC4 48 00 00 08 */ b lbl_80192F6C +lbl_80192F68: +/* 80192F68 0018FEC8 3B C0 00 00 */ li r30, 0 +lbl_80192F6C: +/* 80192F6C 0018FECC 80 1F 00 4C */ lwz r0, 0x4c(r31) +/* 80192F70 0018FED0 7C 1E 00 00 */ cmpw r30, r0 +/* 80192F74 0018FED4 41 82 01 3C */ beq lbl_801930B0 +/* 80192F78 0018FED8 2C 1E 00 01 */ cmpwi r30, 1 +/* 80192F7C 0018FEDC 3B A0 00 00 */ li r29, 0 +/* 80192F80 0018FEE0 3B 80 00 00 */ li r28, 0 +/* 80192F84 0018FEE4 3B 60 00 00 */ li r27, 0 +/* 80192F88 0018FEE8 40 82 00 28 */ bne lbl_80192FB0 +/* 80192F8C 0018FEEC 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 80192F90 0018FEF0 38 80 00 0A */ li r4, 0xa +/* 80192F94 0018FEF4 48 1C 37 69 */ bl GetString__12CStringTableCFi +/* 80192F98 0018FEF8 7C 64 1B 78 */ mr r4, r3 +/* 80192F9C 0018FEFC 38 61 00 78 */ addi r3, r1, 0x78 +/* 80192FA0 0018FF00 4B E8 2A 51 */ bl wstring_l__4rstlFPCw +/* 80192FA4 0018FF04 38 81 00 78 */ addi r4, r1, 0x78 +/* 80192FA8 0018FF08 3B A0 00 01 */ li r29, 1 +/* 80192FAC 0018FF0C 48 00 00 44 */ b lbl_80192FF0 +lbl_80192FB0: +/* 80192FB0 0018FF10 2C 1E 00 02 */ cmpwi r30, 2 +/* 80192FB4 0018FF14 40 82 00 28 */ bne lbl_80192FDC +/* 80192FB8 0018FF18 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 80192FBC 0018FF1C 38 80 00 0B */ li r4, 0xb +/* 80192FC0 0018FF20 48 1C 37 3D */ bl GetString__12CStringTableCFi +/* 80192FC4 0018FF24 7C 64 1B 78 */ mr r4, r3 +/* 80192FC8 0018FF28 38 61 00 68 */ addi r3, r1, 0x68 +/* 80192FCC 0018FF2C 4B E8 2A 25 */ bl wstring_l__4rstlFPCw +/* 80192FD0 0018FF30 38 81 00 68 */ addi r4, r1, 0x68 +/* 80192FD4 0018FF34 3B 80 00 01 */ li r28, 1 +/* 80192FD8 0018FF38 48 00 00 18 */ b lbl_80192FF0 +lbl_80192FDC: +/* 80192FDC 0018FF3C 38 61 00 58 */ addi r3, r1, 0x58 +/* 80192FE0 0018FF40 38 8D 8F 90 */ addi r4, r13, lbl_805A7B50@sda21 +/* 80192FE4 0018FF44 4B E8 2A 0D */ bl wstring_l__4rstlFPCw +/* 80192FE8 0018FF48 3B 60 00 01 */ li r27, 1 +/* 80192FEC 0018FF4C 38 81 00 58 */ addi r4, r1, 0x58 +lbl_80192FF0: +/* 80192FF0 0018FF50 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 80192FF4 0018FF54 48 1A A7 95 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80192FF8 0018FF58 7F 60 07 75 */ extsb. r0, r27 +/* 80192FFC 0018FF5C 41 82 00 0C */ beq lbl_80193008 +/* 80193000 0018FF60 38 61 00 58 */ addi r3, r1, 0x58 +/* 80193004 0018FF64 48 1A A1 31 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80193008: +/* 80193008 0018FF68 7F 80 07 75 */ extsb. r0, r28 +/* 8019300C 0018FF6C 41 82 00 0C */ beq lbl_80193018 +/* 80193010 0018FF70 38 61 00 68 */ addi r3, r1, 0x68 +/* 80193014 0018FF74 48 1A A1 21 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80193018: +/* 80193018 0018FF78 7F A0 07 75 */ extsb. r0, r29 +/* 8019301C 0018FF7C 41 82 00 0C */ beq lbl_80193028 +/* 80193020 0018FF80 38 61 00 78 */ addi r3, r1, 0x78 +/* 80193024 0018FF84 48 1A A1 11 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80193028: +/* 80193028 0018FF88 80 7F 00 68 */ lwz r3, 0x68(r31) +/* 8019302C 0018FF8C 38 81 00 A4 */ addi r4, r1, 0xa4 +/* 80193030 0018FF90 38 A0 00 00 */ li r5, 0 +/* 80193034 0018FF94 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80193038 0018FF98 48 13 68 4D */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8019303C 0018FF9C 80 1F 00 4C */ lwz r0, 0x4c(r31) +/* 80193040 0018FFA0 2C 00 00 00 */ cmpwi r0, 0 +/* 80193044 0018FFA4 40 82 00 34 */ bne lbl_80193078 +/* 80193048 0018FFA8 2C 1E 00 01 */ cmpwi r30, 1 +/* 8019304C 0018FFAC 40 82 00 2C */ bne lbl_80193078 +/* 80193050 0018FFB0 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80193054 0018FFB4 38 61 00 30 */ addi r3, r1, 0x30 +/* 80193058 0018FFB8 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8019305C 0018FFBC 38 80 05 74 */ li r4, 0x574 +/* 80193060 0018FFC0 38 A0 00 7F */ li r5, 0x7f +/* 80193064 0018FFC4 38 C0 00 40 */ li r6, 0x40 +/* 80193068 0018FFC8 38 E0 00 00 */ li r7, 0 +/* 8019306C 0018FFCC 39 20 00 00 */ li r9, 0 +/* 80193070 0018FFD0 48 15 6D 05 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80193074 0018FFD4 48 00 00 30 */ b lbl_801930A4 +lbl_80193078: +/* 80193078 0018FFD8 2C 1E 00 02 */ cmpwi r30, 2 +/* 8019307C 0018FFDC 40 82 00 28 */ bne lbl_801930A4 +/* 80193080 0018FFE0 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80193084 0018FFE4 38 61 00 2C */ addi r3, r1, 0x2c +/* 80193088 0018FFE8 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8019308C 0018FFEC 38 80 05 77 */ li r4, 0x577 +/* 80193090 0018FFF0 38 A0 00 7F */ li r5, 0x7f +/* 80193094 0018FFF4 38 C0 00 40 */ li r6, 0x40 +/* 80193098 0018FFF8 38 E0 00 00 */ li r7, 0 +/* 8019309C 0018FFFC 39 20 00 00 */ li r9, 0 +/* 801930A0 00190000 48 15 6C D5 */ bl SfxStart__11CSfxManagerFUsssbsbi +lbl_801930A4: +/* 801930A4 00190004 93 DF 00 4C */ stw r30, 0x4c(r31) +/* 801930A8 00190008 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 801930AC 0019000C 48 1A A0 89 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801930B0: +/* 801930B0 00190010 C3 9F 00 08 */ lfs f28, 8(r31) +/* 801930B4 00190014 C8 42 A5 C0 */ lfd f2, lbl_805AC2E0@sda21(r2) +/* 801930B8 00190018 EC 3C D8 2A */ fadds f1, f28, f27 +/* 801930BC 0019001C 48 20 1B F1 */ bl fmod +/* 801930C0 00190020 FC 00 08 18 */ frsp f0, f1 +/* 801930C4 00190024 C0 22 A5 C8 */ lfs f1, lbl_805AC2E8@sda21(r2) +/* 801930C8 00190028 D0 1F 00 08 */ stfs f0, 8(r31) +/* 801930CC 0019002C C0 5F 00 08 */ lfs f2, 8(r31) +/* 801930D0 00190030 FC 02 08 40 */ fcmpo cr0, f2, f1 +/* 801930D4 00190034 40 80 00 0C */ bge lbl_801930E0 +/* 801930D8 00190038 EC 02 08 24 */ fdivs f0, f2, f1 +/* 801930DC 0019003C 48 00 00 10 */ b lbl_801930EC +lbl_801930E0: +/* 801930E0 00190040 C0 02 A5 CC */ lfs f0, lbl_805AC2EC@sda21(r2) +/* 801930E4 00190044 EC 00 10 28 */ fsubs f0, f0, f2 +/* 801930E8 00190048 EC 00 08 24 */ fdivs f0, f0, f1 +lbl_801930EC: +/* 801930EC 0019004C D0 1F 00 0C */ stfs f0, 0xc(r31) +/* 801930F0 00190050 80 1F 00 4C */ lwz r0, 0x4c(r31) +/* 801930F4 00190054 2C 00 00 02 */ cmpwi r0, 2 +/* 801930F8 00190058 40 82 00 34 */ bne lbl_8019312C +/* 801930FC 0019005C C0 1F 00 08 */ lfs f0, 8(r31) +/* 80193100 00190060 FC 00 E0 40 */ fcmpo cr0, f0, f28 +/* 80193104 00190064 40 80 00 28 */ bge lbl_8019312C +/* 80193108 00190068 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 8019310C 0019006C 38 61 00 28 */ addi r3, r1, 0x28 +/* 80193110 00190070 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80193114 00190074 38 80 05 77 */ li r4, 0x577 +/* 80193118 00190078 38 A0 00 7F */ li r5, 0x7f +/* 8019311C 0019007C 38 C0 00 40 */ li r6, 0x40 +/* 80193120 00190080 38 E0 00 00 */ li r7, 0 +/* 80193124 00190084 39 20 00 00 */ li r9, 0 +/* 80193128 00190088 48 15 6C 4D */ bl SfxStart__11CSfxManagerFUsssbsbi +lbl_8019312C: +/* 8019312C 0019008C 80 1F 00 68 */ lwz r0, 0x68(r31) +/* 80193130 00190090 28 00 00 00 */ cmplwi r0, 0 +/* 80193134 00190094 41 82 01 08 */ beq lbl_8019323C +/* 80193138 00190098 80 1F 00 4C */ lwz r0, 0x4c(r31) +/* 8019313C 0019009C 2C 00 00 00 */ cmpwi r0, 0 +/* 80193140 001900A0 41 82 00 70 */ beq lbl_801931B0 +/* 80193144 001900A4 C0 42 A5 D0 */ lfs f2, lbl_805AC2F0@sda21(r2) +/* 80193148 001900A8 C0 3F 00 48 */ lfs f1, 0x48(r31) +/* 8019314C 001900AC C0 0D 8F 80 */ lfs f0, lbl_805A7B40@sda21(r13) +/* 80193150 001900B0 EC 22 0E FA */ fmadds f1, f2, f27, f1 +/* 80193154 001900B4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80193158 001900B8 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 8019315C 001900BC 40 80 00 0C */ bge lbl_80193168 +/* 80193160 001900C0 38 61 00 24 */ addi r3, r1, 0x24 +/* 80193164 001900C4 48 00 00 08 */ b lbl_8019316C +lbl_80193168: +/* 80193168 001900C8 38 6D 8F 80 */ addi r3, r13, lbl_805A7B40@sda21 +lbl_8019316C: +/* 8019316C 001900CC C0 03 00 00 */ lfs f0, 0(r3) +/* 80193170 001900D0 D0 1F 00 48 */ stfs f0, 0x48(r31) +/* 80193174 001900D4 C0 3F 00 48 */ lfs f1, 0x48(r31) +/* 80193178 001900D8 C0 1F 00 0C */ lfs f0, 0xc(r31) +/* 8019317C 001900DC EF 81 00 32 */ fmuls f28, f1, f0 +/* 80193180 001900E0 48 1B 6E 2D */ bl White__6CColorFv +/* 80193184 001900E4 C0 02 A5 D4 */ lfs f0, lbl_805AC2F4@sda21(r2) +/* 80193188 001900E8 EF C0 07 32 */ fmuls f30, f0, f28 +/* 8019318C 001900EC F3 C1 A0 09 */ psq_st f30, 9(r1), 1, qr2 +/* 80193190 001900F0 38 81 00 20 */ addi r4, r1, 0x20 +/* 80193194 001900F4 80 63 00 00 */ lwz r3, 0(r3) +/* 80193198 001900F8 88 01 00 09 */ lbz r0, 9(r1) +/* 8019319C 001900FC 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 801931A0 00190100 90 01 00 20 */ stw r0, 0x20(r1) +/* 801931A4 00190104 80 7F 00 68 */ lwz r3, 0x68(r31) +/* 801931A8 00190108 48 13 76 C5 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 801931AC 0019010C 48 00 00 6C */ b lbl_80193218 +lbl_801931B0: +/* 801931B0 00190110 C0 42 A5 D0 */ lfs f2, lbl_805AC2F0@sda21(r2) +/* 801931B4 00190114 C0 3F 00 48 */ lfs f1, 0x48(r31) +/* 801931B8 00190118 C0 0D 8F 84 */ lfs f0, lbl_805A7B44@sda21(r13) +/* 801931BC 0019011C EC 22 0E FC */ fnmsubs f1, f2, f27, f1 +/* 801931C0 00190120 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801931C4 00190124 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 801931C8 00190128 40 80 00 0C */ bge lbl_801931D4 +/* 801931CC 0019012C 38 61 00 1C */ addi r3, r1, 0x1c +/* 801931D0 00190130 48 00 00 08 */ b lbl_801931D8 +lbl_801931D4: +/* 801931D4 00190134 38 6D 8F 84 */ addi r3, r13, lbl_805A7B44@sda21 +lbl_801931D8: +/* 801931D8 00190138 C0 03 00 00 */ lfs f0, 0(r3) +/* 801931DC 0019013C D0 1F 00 48 */ stfs f0, 0x48(r31) +/* 801931E0 00190140 C0 3F 00 48 */ lfs f1, 0x48(r31) +/* 801931E4 00190144 C0 1F 00 0C */ lfs f0, 0xc(r31) +/* 801931E8 00190148 EF 81 00 32 */ fmuls f28, f1, f0 +/* 801931EC 0019014C 48 1B 6D C1 */ bl White__6CColorFv +/* 801931F0 00190150 C0 02 A5 D4 */ lfs f0, lbl_805AC2F4@sda21(r2) +/* 801931F4 00190154 EF C0 07 32 */ fmuls f30, f0, f28 +/* 801931F8 00190158 F3 C1 A0 08 */ psq_st f30, 8(r1), 1, qr2 +/* 801931FC 0019015C 38 81 00 18 */ addi r4, r1, 0x18 +/* 80193200 00190160 80 63 00 00 */ lwz r3, 0(r3) +/* 80193204 00190164 88 01 00 08 */ lbz r0, 8(r1) +/* 80193208 00190168 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 8019320C 0019016C 90 01 00 18 */ stw r0, 0x18(r1) +/* 80193210 00190170 80 7F 00 68 */ lwz r3, 0x68(r31) +/* 80193214 00190174 48 13 76 59 */ bl SetColor__10CGuiWidgetFRC6CColor +lbl_80193218: +/* 80193218 00190178 80 7F 00 68 */ lwz r3, 0x68(r31) +/* 8019321C 0019017C 88 03 00 AB */ lbz r0, 0xab(r3) +/* 80193220 00190180 28 00 00 00 */ cmplwi r0, 0 +/* 80193224 00190184 41 82 00 10 */ beq lbl_80193234 +/* 80193228 00190188 38 80 00 01 */ li r4, 1 +/* 8019322C 0019018C 48 13 74 01 */ bl SetIsVisible__10CGuiWidgetFb +/* 80193230 00190190 48 00 00 0C */ b lbl_8019323C +lbl_80193234: +/* 80193234 00190194 38 80 00 00 */ li r4, 0 +/* 80193238 00190198 48 13 73 F5 */ bl SetIsVisible__10CGuiWidgetFb +lbl_8019323C: +/* 8019323C 0019019C 80 1F 00 4C */ lwz r0, 0x4c(r31) +/* 80193240 001901A0 2C 00 00 02 */ cmpwi r0, 2 +/* 80193244 001901A4 40 82 00 38 */ bne lbl_8019327C +/* 80193248 001901A8 C0 42 A5 D0 */ lfs f2, lbl_805AC2F0@sda21(r2) +/* 8019324C 001901AC C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 80193250 001901B0 C0 0D 8F 88 */ lfs f0, lbl_805A7B48@sda21(r13) +/* 80193254 001901B4 EC 22 0E FA */ fmadds f1, f2, f27, f1 +/* 80193258 001901B8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8019325C 001901BC D0 21 00 14 */ stfs f1, 0x14(r1) +/* 80193260 001901C0 40 80 00 0C */ bge lbl_8019326C +/* 80193264 001901C4 38 61 00 14 */ addi r3, r1, 0x14 +/* 80193268 001901C8 48 00 00 08 */ b lbl_80193270 +lbl_8019326C: +/* 8019326C 001901CC 38 6D 8F 88 */ addi r3, r13, lbl_805A7B48@sda21 +lbl_80193270: +/* 80193270 001901D0 C0 03 00 00 */ lfs f0, 0(r3) +/* 80193274 001901D4 D0 1F 00 50 */ stfs f0, 0x50(r31) +/* 80193278 001901D8 48 00 00 34 */ b lbl_801932AC +lbl_8019327C: +/* 8019327C 001901DC C0 42 A5 D0 */ lfs f2, lbl_805AC2F0@sda21(r2) +/* 80193280 001901E0 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 80193284 001901E4 C0 0D 8F 8C */ lfs f0, lbl_805A7B4C@sda21(r13) +/* 80193288 001901E8 EC 22 0E FC */ fnmsubs f1, f2, f27, f1 +/* 8019328C 001901EC FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80193290 001901F0 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 80193294 001901F4 40 80 00 0C */ bge lbl_801932A0 +/* 80193298 001901F8 38 61 00 10 */ addi r3, r1, 0x10 +/* 8019329C 001901FC 48 00 00 08 */ b lbl_801932A4 +lbl_801932A0: +/* 801932A0 00190200 38 6D 8F 8C */ addi r3, r13, lbl_805A7B4C@sda21 +lbl_801932A4: +/* 801932A4 00190204 C0 03 00 00 */ lfs f0, 0(r3) +/* 801932A8 00190208 D0 1F 00 50 */ stfs f0, 0x50(r31) +lbl_801932AC: +/* 801932AC 0019020C E3 E1 01 98 */ psq_l f31, 408(r1), 0, qr0 +/* 801932B0 00190210 CB E1 01 90 */ lfd f31, 0x190(r1) +/* 801932B4 00190214 E3 C1 01 88 */ psq_l f30, 392(r1), 0, qr0 +/* 801932B8 00190218 CB C1 01 80 */ lfd f30, 0x180(r1) +/* 801932BC 0019021C E3 A1 01 78 */ psq_l f29, 376(r1), 0, qr0 +/* 801932C0 00190220 CB A1 01 70 */ lfd f29, 0x170(r1) +/* 801932C4 00190224 E3 81 01 68 */ psq_l f28, 360(r1), 0, qr0 +/* 801932C8 00190228 CB 81 01 60 */ lfd f28, 0x160(r1) +/* 801932CC 0019022C E3 61 01 58 */ psq_l f27, 344(r1), 0, qr0 +/* 801932D0 00190230 CB 61 01 50 */ lfd f27, 0x150(r1) +/* 801932D4 00190234 E3 41 01 48 */ psq_l f26, 328(r1), 0, qr0 +/* 801932D8 00190238 CB 41 01 40 */ lfd f26, 0x140(r1) +/* 801932DC 0019023C BB 61 01 2C */ lmw r27, 0x12c(r1) +/* 801932E0 00190240 80 01 01 A4 */ lwz r0, 0x1a4(r1) +/* 801932E4 00190244 7C 08 03 A6 */ mtlr r0 +/* 801932E8 00190248 38 21 01 A0 */ addi r1, r1, 0x1a0 +/* 801932EC 0019024C 4E 80 00 20 */ blr + +.global UpdateVisibility__19CHudThreatInterfaceFv +UpdateVisibility__19CHudThreatInterfaceFv: +/* 801932F0 00190250 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801932F4 00190254 7C 08 02 A6 */ mflr r0 +/* 801932F8 00190258 90 01 00 14 */ stw r0, 0x14(r1) +/* 801932FC 0019025C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80193300 00190260 3B E0 00 00 */ li r31, 0 +/* 80193304 00190264 93 C1 00 08 */ stw r30, 8(r1) +/* 80193308 00190268 7C 7E 1B 78 */ mr r30, r3 +/* 8019330C 0019026C 88 63 00 54 */ lbz r3, 0x54(r3) +/* 80193310 00190270 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f +/* 80193314 00190274 41 82 00 10 */ beq lbl_80193324 +/* 80193318 00190278 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f +/* 8019331C 0019027C 41 82 00 08 */ beq lbl_80193324 +/* 80193320 00190280 3B E0 00 01 */ li r31, 1 +lbl_80193324: +/* 80193324 00190284 80 7E 00 58 */ lwz r3, 0x58(r30) +/* 80193328 00190288 57 E4 06 3E */ clrlwi r4, r31, 0x18 +/* 8019332C 0019028C 38 A0 00 01 */ li r5, 1 +/* 80193330 00190290 48 13 73 B9 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80193334 00190294 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 80193338 00190298 41 82 00 1C */ beq lbl_80193354 +/* 8019333C 0019029C 7F C3 F3 78 */ mr r3, r30 +/* 80193340 001902A0 C0 22 A5 B0 */ lfs f1, lbl_805AC2D0@sda21(r2) +/* 80193344 001902A4 81 9E 00 00 */ lwz r12, 0(r30) +/* 80193348 001902A8 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8019334C 001902AC 7D 89 03 A6 */ mtctr r12 +/* 80193350 001902B0 4E 80 04 21 */ bctrl +lbl_80193354: +/* 80193354 001902B4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80193358 001902B8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8019335C 001902BC 83 C1 00 08 */ lwz r30, 8(r1) +/* 80193360 001902C0 7C 08 03 A6 */ mtlr r0 +/* 80193364 001902C4 38 21 00 10 */ addi r1, r1, 0x10 +/* 80193368 001902C8 4E 80 00 20 */ blr + +.global SetIsVisibleGame__19CHudThreatInterfaceFb +SetIsVisibleGame__19CHudThreatInterfaceFb: +/* 8019336C 001902CC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80193370 001902D0 7C 08 02 A6 */ mflr r0 +/* 80193374 001902D4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80193378 001902D8 88 03 00 54 */ lbz r0, 0x54(r3) +/* 8019337C 001902DC 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 80193380 001902E0 98 03 00 54 */ stb r0, 0x54(r3) +/* 80193384 001902E4 4B FF FF 6D */ bl UpdateVisibility__19CHudThreatInterfaceFv +/* 80193388 001902E8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8019338C 001902EC 7C 08 03 A6 */ mtlr r0 +/* 80193390 001902F0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80193394 001902F4 4E 80 00 20 */ blr + +.global SetIsVisibleDebug__19CHudThreatInterfaceFb +SetIsVisibleDebug__19CHudThreatInterfaceFb: +/* 80193398 001902F8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8019339C 001902FC 7C 08 02 A6 */ mflr r0 +/* 801933A0 00190300 90 01 00 14 */ stw r0, 0x14(r1) +/* 801933A4 00190304 88 03 00 54 */ lbz r0, 0x54(r3) +/* 801933A8 00190308 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801933AC 0019030C 98 03 00 54 */ stb r0, 0x54(r3) +/* 801933B0 00190310 4B FF FF 41 */ bl UpdateVisibility__19CHudThreatInterfaceFv +/* 801933B4 00190314 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801933B8 00190318 7C 08 03 A6 */ mtlr r0 +/* 801933BC 0019031C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801933C0 00190320 4E 80 00 20 */ blr + +.global SetThreatDistance__19CHudThreatInterfaceFf +SetThreatDistance__19CHudThreatInterfaceFf: +/* 801933C4 00190324 D0 23 00 10 */ stfs f1, 0x10(r3) +/* 801933C8 00190328 4E 80 00 20 */ blr + +.global __ct__19CHudThreatInterfaceFR9CGuiFramef +__ct__19CHudThreatInterfaceFR9CGuiFramef: +/* 801933CC 0019032C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801933D0 00190330 7C 08 02 A6 */ mflr r0 +/* 801933D4 00190334 3C C0 80 3E */ lis r6, lbl_803DA304@ha +/* 801933D8 00190338 C0 02 A5 B0 */ lfs f0, lbl_805AC2D0@sda21(r2) +/* 801933DC 0019033C 90 01 00 34 */ stw r0, 0x34(r1) +/* 801933E0 00190340 38 06 A3 04 */ addi r0, r6, lbl_803DA304@l +/* 801933E4 00190344 3C C0 80 3D */ lis r6, lbl_803D0D60@ha +/* 801933E8 00190348 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801933EC 0019034C 3B E6 0D 60 */ addi r31, r6, lbl_803D0D60@l +/* 801933F0 00190350 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801933F4 00190354 7C BE 2B 78 */ mr r30, r5 +/* 801933F8 00190358 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801933FC 0019035C 7C 7D 1B 78 */ mr r29, r3 +/* 80193400 00190360 3C 60 80 3E */ lis r3, lbl_803E44A8@ha +/* 80193404 00190364 93 81 00 20 */ stw r28, 0x20(r1) +/* 80193408 00190368 7C 9C 23 78 */ mr r28, r4 +/* 8019340C 0019036C 90 1D 00 00 */ stw r0, 0(r29) +/* 80193410 00190370 38 03 44 A8 */ addi r0, r3, lbl_803E44A8@l +/* 80193414 00190374 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 80193418 00190378 90 1D 00 00 */ stw r0, 0(r29) +/* 8019341C 0019037C 38 03 66 70 */ addi r0, r3, skIdentity4f@l +/* 80193420 00190380 7C 04 03 78 */ mr r4, r0 +/* 80193424 00190384 38 7D 00 18 */ addi r3, r29, 0x18 +/* 80193428 00190388 93 DD 00 04 */ stw r30, 4(r29) +/* 8019342C 0019038C D0 1D 00 08 */ stfs f0, 8(r29) +/* 80193430 00190390 D0 1D 00 0C */ stfs f0, 0xc(r29) +/* 80193434 00190394 D0 3D 00 10 */ stfs f1, 0x10(r29) +/* 80193438 00190398 D0 1D 00 14 */ stfs f0, 0x14(r29) +/* 8019343C 0019039C 48 17 F7 39 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80193440 001903A0 C0 02 A5 B0 */ lfs f0, lbl_805AC2D0@sda21(r2) +/* 80193444 001903A4 38 00 00 00 */ li r0, 0 +/* 80193448 001903A8 38 A0 00 01 */ li r5, 1 +/* 8019344C 001903AC 7F 83 E3 78 */ mr r3, r28 +/* 80193450 001903B0 D0 1D 00 48 */ stfs f0, 0x48(r29) +/* 80193454 001903B4 38 9F 00 00 */ addi r4, r31, 0 +/* 80193458 001903B8 90 1D 00 4C */ stw r0, 0x4c(r29) +/* 8019345C 001903BC D0 1D 00 50 */ stfs f0, 0x50(r29) +/* 80193460 001903C0 88 1D 00 54 */ lbz r0, 0x54(r29) +/* 80193464 001903C4 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 80193468 001903C8 98 1D 00 54 */ stb r0, 0x54(r29) +/* 8019346C 001903CC 88 1D 00 54 */ lbz r0, 0x54(r29) +/* 80193470 001903D0 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 80193474 001903D4 98 1D 00 54 */ stb r0, 0x54(r29) +/* 80193478 001903D8 48 12 EC DD */ bl FindWidget__9CGuiFrameCFPCc +/* 8019347C 001903DC 90 7D 00 58 */ stw r3, 0x58(r29) +/* 80193480 001903E0 7F 83 E3 78 */ mr r3, r28 +/* 80193484 001903E4 38 9F 00 18 */ addi r4, r31, 0x18 +/* 80193488 001903E8 48 12 EC CD */ bl FindWidget__9CGuiFrameCFPCc +/* 8019348C 001903EC 90 7D 00 5C */ stw r3, 0x5c(r29) +/* 80193490 001903F0 7F 83 E3 78 */ mr r3, r28 +/* 80193494 001903F4 38 9F 00 30 */ addi r4, r31, 0x30 +/* 80193498 001903F8 48 12 EC BD */ bl FindWidget__9CGuiFrameCFPCc +/* 8019349C 001903FC 90 7D 00 60 */ stw r3, 0x60(r29) +/* 801934A0 00190400 7F 83 E3 78 */ mr r3, r28 +/* 801934A4 00190404 38 9F 00 44 */ addi r4, r31, 0x44 +/* 801934A8 00190408 48 12 EC AD */ bl FindWidget__9CGuiFrameCFPCc +/* 801934AC 0019040C 90 7D 00 64 */ stw r3, 0x64(r29) +/* 801934B0 00190410 7F 83 E3 78 */ mr r3, r28 +/* 801934B4 00190414 38 9F 00 5C */ addi r4, r31, 0x5c +/* 801934B8 00190418 48 12 EC 9D */ bl FindWidget__9CGuiFrameCFPCc +/* 801934BC 0019041C 90 7D 00 68 */ stw r3, 0x68(r29) +/* 801934C0 00190420 7F 83 E3 78 */ mr r3, r28 +/* 801934C4 00190424 38 9F 00 74 */ addi r4, r31, 0x74 +/* 801934C8 00190428 48 12 EC 8D */ bl FindWidget__9CGuiFrameCFPCc +/* 801934CC 0019042C 90 7D 00 6C */ stw r3, 0x6c(r29) +/* 801934D0 00190430 38 61 00 08 */ addi r3, r1, 8 +/* 801934D4 00190434 38 9F 00 8C */ addi r4, r31, 0x8c +/* 801934D8 00190438 4B E7 17 E1 */ bl string_l__4rstlFPCc +/* 801934DC 0019043C 7F 83 E3 78 */ mr r3, r28 +/* 801934E0 00190440 38 81 00 08 */ addi r4, r1, 8 +/* 801934E4 00190444 48 12 EC F1 */ bl "FindWidget__9CGuiFrameCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801934E8 00190448 90 7D 00 70 */ stw r3, 0x70(r29) +/* 801934EC 0019044C 38 61 00 08 */ addi r3, r1, 8 +/* 801934F0 00190450 48 1A A5 F1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801934F4 00190454 80 7D 00 70 */ lwz r3, 0x70(r29) +/* 801934F8 00190458 28 03 00 00 */ cmplwi r3, 0 +/* 801934FC 0019045C 41 82 00 28 */ beq lbl_80193524 +/* 80193500 00190460 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80193504 00190464 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80193508 00190468 38 84 01 9C */ addi r4, r4, 0x19c +/* 8019350C 0019046C 48 13 61 5D */ bl SetFontColor__15CGuiTextSupportFRC6CColor +/* 80193510 00190470 80 7D 00 70 */ lwz r3, 0x70(r29) +/* 80193514 00190474 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80193518 00190478 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 8019351C 0019047C 38 84 01 A0 */ addi r4, r4, 0x1a0 +/* 80193520 00190480 48 13 60 F9 */ bl SetOutlineColor__15CGuiTextSupportFRC6CColor +lbl_80193524: +/* 80193524 00190484 80 1D 00 60 */ lwz r0, 0x60(r29) +/* 80193528 00190488 38 60 00 00 */ li r3, 0 +/* 8019352C 0019048C 28 00 00 00 */ cmplwi r0, 0 +/* 80193530 00190490 41 82 00 14 */ beq lbl_80193544 +/* 80193534 00190494 80 1D 00 64 */ lwz r0, 0x64(r29) +/* 80193538 00190498 28 00 00 00 */ cmplwi r0, 0 +/* 8019353C 0019049C 41 82 00 08 */ beq lbl_80193544 +/* 80193540 001904A0 38 60 00 01 */ li r3, 1 +lbl_80193544: +/* 80193544 001904A4 88 9D 00 54 */ lbz r4, 0x54(r29) +/* 80193548 001904A8 50 64 2E B4 */ rlwimi r4, r3, 5, 0x1a, 0x1a +/* 8019354C 001904AC 20 7E 00 02 */ subfic r3, r30, 2 +/* 80193550 001904B0 38 1E FF FE */ addi r0, r30, -2 +/* 80193554 001904B4 98 9D 00 54 */ stb r4, 0x54(r29) +/* 80193558 001904B8 7C 60 03 78 */ or r0, r3, r0 +/* 8019355C 001904BC 54 03 0F FE */ srwi r3, r0, 0x1f +/* 80193560 001904C0 88 1D 00 54 */ lbz r0, 0x54(r29) +/* 80193564 001904C4 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 80193568 001904C8 98 1D 00 54 */ stb r0, 0x54(r29) +/* 8019356C 001904CC 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80193570 001904D0 80 7D 00 5C */ lwz r3, 0x5c(r29) +/* 80193574 001904D4 38 84 00 80 */ addi r4, r4, 0x80 +/* 80193578 001904D8 48 13 72 F5 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 8019357C 001904DC 80 9D 00 5C */ lwz r4, 0x5c(r29) +/* 80193580 001904E0 38 7D 00 18 */ addi r3, r29, 0x18 +/* 80193584 001904E4 38 84 00 04 */ addi r4, r4, 4 +/* 80193588 001904E8 48 17 F5 B9 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8019358C 001904EC 80 AD A1 3C */ lwz r5, gpTweakGuiColors@sda21(r13) +/* 80193590 001904F0 57 C0 10 3A */ slwi r0, r30, 2 +/* 80193594 001904F4 38 7F 00 B8 */ addi r3, r31, 0xb8 +/* 80193598 001904F8 80 9D 00 6C */ lwz r4, 0x6c(r29) +/* 8019359C 001904FC 80 A5 00 68 */ lwz r5, 0x68(r5) +/* 801935A0 00190500 2C 1E 00 00 */ cmpwi r30, 0 +/* 801935A4 00190504 7C 03 00 2E */ lwzx r0, r3, r0 +/* 801935A8 00190508 90 A4 00 D0 */ stw r5, 0xd0(r4) +/* 801935AC 0019050C 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 801935B0 00190510 80 7D 00 6C */ lwz r3, 0x6c(r29) +/* 801935B4 00190514 80 84 00 70 */ lwz r4, 0x70(r4) +/* 801935B8 00190518 90 83 00 CC */ stw r4, 0xcc(r3) +/* 801935BC 0019051C 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 801935C0 00190520 80 7D 00 6C */ lwz r3, 0x6c(r29) +/* 801935C4 00190524 80 84 00 6C */ lwz r4, 0x6c(r4) +/* 801935C8 00190528 90 83 00 D4 */ stw r4, 0xd4(r3) +/* 801935CC 0019052C 80 7D 00 6C */ lwz r3, 0x6c(r29) +/* 801935D0 00190530 90 03 00 D8 */ stw r0, 0xd8(r3) +/* 801935D4 00190534 80 7D 00 6C */ lwz r3, 0x6c(r29) +/* 801935D8 00190538 40 82 00 0C */ bne lbl_801935E4 +/* 801935DC 0019053C C0 02 A5 E0 */ lfs f0, lbl_805AC300@sda21(r2) +/* 801935E0 00190540 48 00 00 08 */ b lbl_801935E8 +lbl_801935E4: +/* 801935E4 00190544 C0 02 A5 E4 */ lfs f0, lbl_805AC304@sda21(r2) +lbl_801935E8: +/* 801935E8 00190548 D0 03 00 DC */ stfs f0, 0xdc(r3) +/* 801935EC 0019054C 80 8D A1 38 */ lwz r4, gpTweakGui@sda21(r13) +/* 801935F0 00190550 80 7D 00 6C */ lwz r3, 0x6c(r29) +/* 801935F4 00190554 C0 24 00 E4 */ lfs f1, 0xe4(r4) +/* 801935F8 00190558 48 13 83 71 */ bl SetMaxEnergy__16CAuiEnergyBarT01Ff +/* 801935FC 0019055C C0 22 A5 E8 */ lfs f1, lbl_805AC308@sda21(r2) +/* 80193600 00190560 38 00 00 00 */ li r0, 0 +/* 80193604 00190564 80 7D 00 6C */ lwz r3, 0x6c(r29) +/* 80193608 00190568 C0 02 A5 B0 */ lfs f0, lbl_805AC2D0@sda21(r2) +/* 8019360C 0019056C D0 23 00 E4 */ stfs f1, 0xe4(r3) +/* 80193610 00190570 80 7D 00 6C */ lwz r3, 0x6c(r29) +/* 80193614 00190574 D0 23 00 E8 */ stfs f1, 0xe8(r3) +/* 80193618 00190578 80 7D 00 6C */ lwz r3, 0x6c(r29) +/* 8019361C 0019057C D0 03 00 EC */ stfs f0, 0xec(r3) +/* 80193620 00190580 80 7D 00 6C */ lwz r3, 0x6c(r29) +/* 80193624 00190584 98 03 00 F0 */ stb r0, 0xf0(r3) +/* 80193628 00190588 80 7D 00 68 */ lwz r3, 0x68(r29) +/* 8019362C 0019058C 28 03 00 00 */ cmplwi r3, 0 +/* 80193630 00190590 41 82 00 28 */ beq lbl_80193658 +/* 80193634 00190594 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80193638 00190598 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 8019363C 0019059C 38 84 00 60 */ addi r4, r4, 0x60 +/* 80193640 001905A0 48 13 60 29 */ bl SetFontColor__15CGuiTextSupportFRC6CColor +/* 80193644 001905A4 80 7D 00 68 */ lwz r3, 0x68(r29) +/* 80193648 001905A8 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 8019364C 001905AC 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80193650 001905B0 38 84 00 B8 */ addi r4, r4, 0xb8 +/* 80193654 001905B4 48 13 5F C5 */ bl SetOutlineColor__15CGuiTextSupportFRC6CColor +lbl_80193658: +/* 80193658 001905B8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8019365C 001905BC 7F A3 EB 78 */ mr r3, r29 +/* 80193660 001905C0 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80193664 001905C4 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80193668 001905C8 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8019366C 001905CC 83 81 00 20 */ lwz r28, 0x20(r1) +/* 80193670 001905D0 7C 08 03 A6 */ mtlr r0 +/* 80193674 001905D4 38 21 00 30 */ addi r1, r1, 0x30 +/* 80193678 001905D8 4E 80 00 20 */ blr + +.global XRayThreatBarCoordFunc__19CHudThreatInterfaceFf +XRayThreatBarCoordFunc__19CHudThreatInterfaceFf: +/* 8019367C 001905DC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80193680 001905E0 7C 08 02 A6 */ mflr r0 +/* 80193684 001905E4 90 01 00 24 */ stw r0, 0x24(r1) +/* 80193688 001905E8 DB E1 00 10 */ stfd f31, 0x10(r1) +/* 8019368C 001905EC F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 +/* 80193690 001905F0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80193694 001905F4 C0 02 A5 CC */ lfs f0, lbl_805AC2EC@sda21(r2) +/* 80193698 001905F8 7C 7F 1B 78 */ mr r31, r3 +/* 8019369C 001905FC C0 42 A5 EC */ lfs f2, lbl_805AC30C@sda21(r2) +/* 801936A0 00190600 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801936A4 00190604 EF E2 00 32 */ fmuls f31, f2, f0 +/* 801936A8 00190608 FC 20 F8 90 */ fmr f1, f31 +/* 801936AC 0019060C 48 18 16 99 */ bl FastCosR__5CMathFf +/* 801936B0 00190610 C0 42 A5 F0 */ lfs f2, lbl_805AC310@sda21(r2) +/* 801936B4 00190614 C0 02 A5 BC */ lfs f0, lbl_805AC2DC@sda21(r2) +/* 801936B8 00190618 EC 42 00 72 */ fmuls f2, f2, f1 +/* 801936BC 0019061C FC 20 F8 90 */ fmr f1, f31 +/* 801936C0 00190620 EF E0 00 B2 */ fmuls f31, f0, f2 +/* 801936C4 00190624 48 18 17 2D */ bl FastSinR__5CMathFf +/* 801936C8 00190628 C0 02 A5 F4 */ lfs f0, lbl_805AC314@sda21(r2) +/* 801936CC 0019062C C0 62 A5 F0 */ lfs f3, lbl_805AC310@sda21(r2) +/* 801936D0 00190630 EC 40 F8 2A */ fadds f2, f0, f31 +/* 801936D4 00190634 C0 02 A5 B0 */ lfs f0, lbl_805AC2D0@sda21(r2) +/* 801936D8 00190638 EC 23 00 72 */ fmuls f1, f3, f1 +/* 801936DC 0019063C D0 5F 00 00 */ stfs f2, 0(r31) +/* 801936E0 00190640 D0 1F 00 04 */ stfs f0, 4(r31) +/* 801936E4 00190644 D0 3F 00 08 */ stfs f1, 8(r31) +/* 801936E8 00190648 D3 FF 00 0C */ stfs f31, 0xc(r31) +/* 801936EC 0019064C D0 1F 00 10 */ stfs f0, 0x10(r31) +/* 801936F0 00190650 D0 3F 00 14 */ stfs f1, 0x14(r31) +/* 801936F4 00190654 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 +/* 801936F8 00190658 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801936FC 0019065C CB E1 00 10 */ lfd f31, 0x10(r1) +/* 80193700 00190660 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80193704 00190664 7C 08 03 A6 */ mtlr r0 +/* 80193708 00190668 38 21 00 20 */ addi r1, r1, 0x20 +/* 8019370C 0019066C 4E 80 00 20 */ blr + +.global ThermalThreatBarCoordFunc__19CHudThreatInterfaceFf +ThermalThreatBarCoordFunc__19CHudThreatInterfaceFf: +/* 80193710 00190670 3C 80 80 3D */ lis r4, lbl_803D0E04@ha +/* 80193714 00190674 C0 02 A5 F8 */ lfs f0, lbl_805AC318@sda21(r2) +/* 80193718 00190678 38 84 0E 04 */ addi r4, r4, lbl_803D0E04@l +/* 8019371C 0019067C C0 44 00 0C */ lfs f2, 0xc(r4) +/* 80193720 00190680 EC 60 00 B2 */ fmuls f3, f0, f2 +/* 80193724 00190684 EC 81 00 B2 */ fmuls f4, f1, f2 +/* 80193728 00190688 FC 04 18 40 */ fcmpo cr0, f4, f3 +/* 8019372C 0019068C 40 80 00 0C */ bge lbl_80193738 +/* 80193730 00190690 EC 64 18 24 */ fdivs f3, f4, f3 +/* 80193734 00190694 48 00 00 28 */ b lbl_8019375C +lbl_80193738: +/* 80193738 00190698 EC 02 18 28 */ fsubs f0, f2, f3 +/* 8019373C 0019069C FC 04 00 40 */ fcmpo cr0, f4, f0 +/* 80193740 001906A0 40 80 00 0C */ bge lbl_8019374C +/* 80193744 001906A4 C0 62 A5 E0 */ lfs f3, lbl_805AC300@sda21(r2) +/* 80193748 001906A8 48 00 00 14 */ b lbl_8019375C +lbl_8019374C: +/* 8019374C 001906AC EC 04 00 28 */ fsubs f0, f4, f0 +/* 80193750 001906B0 C0 22 A5 E0 */ lfs f1, lbl_805AC300@sda21(r2) +/* 80193754 001906B4 EC 00 18 24 */ fdivs f0, f0, f3 +/* 80193758 001906B8 EC 61 00 28 */ fsubs f3, f1, f0 +lbl_8019375C: +/* 8019375C 001906BC C0 42 A5 E4 */ lfs f2, lbl_805AC304@sda21(r2) +/* 80193760 001906C0 C0 02 A5 CC */ lfs f0, lbl_805AC2EC@sda21(r2) +/* 80193764 001906C4 D0 43 00 00 */ stfs f2, 0(r3) +/* 80193768 001906C8 C0 22 A5 B0 */ lfs f1, lbl_805AC2D0@sda21(r2) +/* 8019376C 001906CC EC 00 10 FA */ fmadds f0, f0, f3, f2 +/* 80193770 001906D0 D0 23 00 04 */ stfs f1, 4(r3) +/* 80193774 001906D4 D0 83 00 08 */ stfs f4, 8(r3) +/* 80193778 001906D8 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 8019377C 001906DC D0 23 00 10 */ stfs f1, 0x10(r3) +/* 80193780 001906E0 D0 83 00 14 */ stfs f4, 0x14(r3) +/* 80193784 001906E4 4E 80 00 20 */ blr + +.global CombatThreatBarCoordFunc__19CHudThreatInterfaceFf +CombatThreatBarCoordFunc__19CHudThreatInterfaceFf: +/* 80193788 001906E8 3C 80 80 3D */ lis r4, lbl_803D0E04@ha +/* 8019378C 001906EC C0 42 A5 FC */ lfs f2, lbl_805AC31C@sda21(r2) +/* 80193790 001906F0 C0 64 0E 04 */ lfs f3, lbl_803D0E04@l(r4) +/* 80193794 001906F4 C0 02 A5 B0 */ lfs f0, lbl_805AC2D0@sda21(r2) +/* 80193798 001906F8 D0 43 00 00 */ stfs f2, 0(r3) +/* 8019379C 001906FC EC 21 00 F2 */ fmuls f1, f1, f3 +/* 801937A0 00190700 D0 03 00 04 */ stfs f0, 4(r3) +/* 801937A4 00190704 D0 23 00 08 */ stfs f1, 8(r3) +/* 801937A8 00190708 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 801937AC 0019070C D0 03 00 10 */ stfs f0, 0x10(r3) +/* 801937B0 00190710 D0 23 00 14 */ stfs f1, 0x14(r3) +/* 801937B4 00190714 4E 80 00 20 */ blr + +.global UpdateMenuWidgetTransform__17CHudVisorBeamMenuFiR10CGuiWidgetf +UpdateMenuWidgetTransform__17CHudVisorBeamMenuFiR10CGuiWidgetf: +/* 801937B8 00190718 94 21 FC E0 */ stwu r1, -0x320(r1) +/* 801937BC 0019071C 7C 08 02 A6 */ mflr r0 +/* 801937C0 00190720 90 01 03 24 */ stw r0, 0x324(r1) +/* 801937C4 00190724 DB E1 03 10 */ stfd f31, 0x310(r1) +/* 801937C8 00190728 F3 E1 03 18 */ psq_st f31, 792(r1), 0, qr0 +/* 801937CC 0019072C 93 E1 03 0C */ stw r31, 0x30c(r1) +/* 801937D0 00190730 93 C1 03 08 */ stw r30, 0x308(r1) +/* 801937D4 00190734 FC 00 0A 10 */ fabs f0, f1 +/* 801937D8 00190738 80 CD A1 38 */ lwz r6, gpTweakGui@sda21(r13) +/* 801937DC 0019073C 80 03 00 04 */ lwz r0, 4(r3) +/* 801937E0 00190740 7C BE 2B 78 */ mr r30, r5 +/* 801937E4 00190744 C0 22 A6 40 */ lfs f1, lbl_805AC360@sda21(r2) +/* 801937E8 00190748 FC 60 00 18 */ frsp f3, f0 +/* 801937EC 0019074C C0 86 00 CC */ lfs f4, 0xcc(r6) +/* 801937F0 00190750 2C 00 00 00 */ cmpwi r0, 0 +/* 801937F4 00190754 C0 06 00 C4 */ lfs f0, 0xc4(r6) +/* 801937F8 00190758 EC 21 18 28 */ fsubs f1, f1, f3 +/* 801937FC 0019075C C0 46 00 C8 */ lfs f2, 0xc8(r6) +/* 80193800 00190760 EF E3 01 32 */ fmuls f31, f3, f4 +/* 80193804 00190764 EC 01 00 32 */ fmuls f0, f1, f0 +/* 80193808 00190768 EC 23 00 BA */ fmadds f1, f3, f2, f0 +/* 8019380C 0019076C 40 82 00 24 */ bne lbl_80193830 +/* 80193810 00190770 2C 04 00 02 */ cmpwi r4, 2 +/* 80193814 00190774 40 82 00 0C */ bne lbl_80193820 +/* 80193818 00190778 38 80 00 03 */ li r4, 3 +/* 8019381C 0019077C 48 00 00 30 */ b lbl_8019384C +lbl_80193820: +/* 80193820 00190780 2C 04 00 03 */ cmpwi r4, 3 +/* 80193824 00190784 40 82 00 28 */ bne lbl_8019384C +/* 80193828 00190788 38 80 00 02 */ li r4, 2 +/* 8019382C 0019078C 48 00 00 20 */ b lbl_8019384C +lbl_80193830: +/* 80193830 00190790 2C 04 00 01 */ cmpwi r4, 1 +/* 80193834 00190794 40 82 00 0C */ bne lbl_80193840 +/* 80193838 00190798 38 80 00 02 */ li r4, 2 +/* 8019383C 0019079C 48 00 00 10 */ b lbl_8019384C +lbl_80193840: +/* 80193840 001907A0 2C 04 00 02 */ cmpwi r4, 2 +/* 80193844 001907A4 40 82 00 08 */ bne lbl_8019384C +/* 80193848 001907A8 38 80 00 01 */ li r4, 1 +lbl_8019384C: +/* 8019384C 001907AC 2C 04 00 02 */ cmpwi r4, 2 +/* 80193850 001907B0 41 82 00 CC */ beq lbl_8019391C +/* 80193854 001907B4 40 80 00 14 */ bge lbl_80193868 +/* 80193858 001907B8 2C 04 00 00 */ cmpwi r4, 0 +/* 8019385C 001907BC 41 82 00 18 */ beq lbl_80193874 +/* 80193860 001907C0 40 80 00 68 */ bge lbl_801938C8 +/* 80193864 001907C4 48 00 01 5C */ b lbl_801939C0 +lbl_80193868: +/* 80193868 001907C8 2C 04 00 04 */ cmpwi r4, 4 +/* 8019386C 001907CC 40 80 01 54 */ bge lbl_801939C0 +/* 80193870 001907D0 48 00 01 00 */ b lbl_80193970 +lbl_80193874: +/* 80193874 001907D4 80 83 00 18 */ lwz r4, 0x18(r3) +/* 80193878 001907D8 38 61 02 48 */ addi r3, r1, 0x248 +/* 8019387C 001907DC 3B E4 00 34 */ addi r31, r4, 0x34 +/* 80193880 001907E0 48 17 F9 C1 */ bl Scale__12CTransform4fFf +/* 80193884 001907E4 C0 22 A6 44 */ lfs f1, lbl_805AC364@sda21(r2) +/* 80193888 001907E8 FC 60 F8 90 */ fmr f3, f31 +/* 8019388C 001907EC 38 61 02 78 */ addi r3, r1, 0x278 +/* 80193890 001907F0 FC 40 08 90 */ fmr f2, f1 +/* 80193894 001907F4 48 17 F8 F5 */ bl Translate__12CTransform4fFfff +/* 80193898 001907F8 7F E4 FB 78 */ mr r4, r31 +/* 8019389C 001907FC 38 61 02 A8 */ addi r3, r1, 0x2a8 +/* 801938A0 00190800 38 A1 02 78 */ addi r5, r1, 0x278 +/* 801938A4 00190804 48 17 F0 AD */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 801938A8 00190808 38 61 02 D8 */ addi r3, r1, 0x2d8 +/* 801938AC 0019080C 38 81 02 A8 */ addi r4, r1, 0x2a8 +/* 801938B0 00190810 38 A1 02 48 */ addi r5, r1, 0x248 +/* 801938B4 00190814 48 17 F0 9D */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 801938B8 00190818 7F C3 F3 78 */ mr r3, r30 +/* 801938BC 0019081C 38 81 02 D8 */ addi r4, r1, 0x2d8 +/* 801938C0 00190820 48 13 0E 79 */ bl SetO2WTransform__10CGuiObjectFRC12CTransform4f +/* 801938C4 00190824 48 00 00 FC */ b lbl_801939C0 +lbl_801938C8: +/* 801938C8 00190828 80 83 00 18 */ lwz r4, 0x18(r3) +/* 801938CC 0019082C 38 61 01 88 */ addi r3, r1, 0x188 +/* 801938D0 00190830 3B E4 00 34 */ addi r31, r4, 0x34 +/* 801938D4 00190834 48 17 F9 6D */ bl Scale__12CTransform4fFf +/* 801938D8 00190838 C0 42 A6 44 */ lfs f2, lbl_805AC364@sda21(r2) +/* 801938DC 0019083C FC 20 F8 90 */ fmr f1, f31 +/* 801938E0 00190840 38 61 01 B8 */ addi r3, r1, 0x1b8 +/* 801938E4 00190844 FC 60 10 90 */ fmr f3, f2 +/* 801938E8 00190848 48 17 F8 A1 */ bl Translate__12CTransform4fFfff +/* 801938EC 0019084C 7F E4 FB 78 */ mr r4, r31 +/* 801938F0 00190850 38 61 01 E8 */ addi r3, r1, 0x1e8 +/* 801938F4 00190854 38 A1 01 B8 */ addi r5, r1, 0x1b8 +/* 801938F8 00190858 48 17 F0 59 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 801938FC 0019085C 38 61 02 18 */ addi r3, r1, 0x218 +/* 80193900 00190860 38 81 01 E8 */ addi r4, r1, 0x1e8 +/* 80193904 00190864 38 A1 01 88 */ addi r5, r1, 0x188 +/* 80193908 00190868 48 17 F0 49 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 8019390C 0019086C 7F C3 F3 78 */ mr r3, r30 +/* 80193910 00190870 38 81 02 18 */ addi r4, r1, 0x218 +/* 80193914 00190874 48 13 0E 25 */ bl SetO2WTransform__10CGuiObjectFRC12CTransform4f +/* 80193918 00190878 48 00 00 A8 */ b lbl_801939C0 +lbl_8019391C: +/* 8019391C 0019087C 80 83 00 18 */ lwz r4, 0x18(r3) +/* 80193920 00190880 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 80193924 00190884 3B E4 00 34 */ addi r31, r4, 0x34 +/* 80193928 00190888 48 17 F9 19 */ bl Scale__12CTransform4fFf +/* 8019392C 0019088C C0 22 A6 44 */ lfs f1, lbl_805AC364@sda21(r2) +/* 80193930 00190890 FC 60 F8 50 */ fneg f3, f31 +/* 80193934 00190894 38 61 00 F8 */ addi r3, r1, 0xf8 +/* 80193938 00190898 FC 40 08 90 */ fmr f2, f1 +/* 8019393C 0019089C 48 17 F8 4D */ bl Translate__12CTransform4fFfff +/* 80193940 001908A0 7F E4 FB 78 */ mr r4, r31 +/* 80193944 001908A4 38 61 01 28 */ addi r3, r1, 0x128 +/* 80193948 001908A8 38 A1 00 F8 */ addi r5, r1, 0xf8 +/* 8019394C 001908AC 48 17 F0 05 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80193950 001908B0 38 61 01 58 */ addi r3, r1, 0x158 +/* 80193954 001908B4 38 81 01 28 */ addi r4, r1, 0x128 +/* 80193958 001908B8 38 A1 00 C8 */ addi r5, r1, 0xc8 +/* 8019395C 001908BC 48 17 EF F5 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80193960 001908C0 7F C3 F3 78 */ mr r3, r30 +/* 80193964 001908C4 38 81 01 58 */ addi r4, r1, 0x158 +/* 80193968 001908C8 48 13 0D D1 */ bl SetO2WTransform__10CGuiObjectFRC12CTransform4f +/* 8019396C 001908CC 48 00 00 54 */ b lbl_801939C0 +lbl_80193970: +/* 80193970 001908D0 80 83 00 18 */ lwz r4, 0x18(r3) +/* 80193974 001908D4 38 61 00 08 */ addi r3, r1, 8 +/* 80193978 001908D8 3B E4 00 34 */ addi r31, r4, 0x34 +/* 8019397C 001908DC 48 17 F8 C5 */ bl Scale__12CTransform4fFf +/* 80193980 001908E0 C0 42 A6 44 */ lfs f2, lbl_805AC364@sda21(r2) +/* 80193984 001908E4 FC 20 F8 50 */ fneg f1, f31 +/* 80193988 001908E8 38 61 00 38 */ addi r3, r1, 0x38 +/* 8019398C 001908EC FC 60 10 90 */ fmr f3, f2 +/* 80193990 001908F0 48 17 F7 F9 */ bl Translate__12CTransform4fFfff +/* 80193994 001908F4 7F E4 FB 78 */ mr r4, r31 +/* 80193998 001908F8 38 61 00 68 */ addi r3, r1, 0x68 +/* 8019399C 001908FC 38 A1 00 38 */ addi r5, r1, 0x38 +/* 801939A0 00190900 48 17 EF B1 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 801939A4 00190904 38 61 00 98 */ addi r3, r1, 0x98 +/* 801939A8 00190908 38 81 00 68 */ addi r4, r1, 0x68 +/* 801939AC 0019090C 38 A1 00 08 */ addi r5, r1, 8 +/* 801939B0 00190910 48 17 EF A1 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 801939B4 00190914 7F C3 F3 78 */ mr r3, r30 +/* 801939B8 00190918 38 81 00 98 */ addi r4, r1, 0x98 +/* 801939BC 0019091C 48 13 0D 7D */ bl SetO2WTransform__10CGuiObjectFRC12CTransform4f +lbl_801939C0: +/* 801939C0 00190920 E3 E1 03 18 */ psq_l f31, 792(r1), 0, qr0 +/* 801939C4 00190924 80 01 03 24 */ lwz r0, 0x324(r1) +/* 801939C8 00190928 CB E1 03 10 */ lfd f31, 0x310(r1) +/* 801939CC 0019092C 83 E1 03 0C */ lwz r31, 0x30c(r1) +/* 801939D0 00190930 83 C1 03 08 */ lwz r30, 0x308(r1) +/* 801939D4 00190934 7C 08 03 A6 */ mtlr r0 +/* 801939D8 00190938 38 21 03 20 */ addi r1, r1, 0x320 +/* 801939DC 0019093C 4E 80 00 20 */ blr + +.global SetIsVisibleGame__17CHudVisorBeamMenuFb +SetIsVisibleGame__17CHudVisorBeamMenuFb: +/* 801939E0 00190940 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801939E4 00190944 7C 08 02 A6 */ mflr r0 +/* 801939E8 00190948 90 01 00 14 */ stw r0, 0x14(r1) +/* 801939EC 0019094C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801939F0 00190950 3B E0 00 00 */ li r31, 0 +/* 801939F4 00190954 93 C1 00 08 */ stw r30, 8(r1) +/* 801939F8 00190958 7C 7E 1B 78 */ mr r30, r3 +/* 801939FC 0019095C 88 03 00 14 */ lbz r0, 0x14(r3) +/* 80193A00 00190960 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 80193A04 00190964 98 1E 00 14 */ stb r0, 0x14(r30) +/* 80193A08 00190968 88 7E 00 14 */ lbz r3, 0x14(r30) +/* 80193A0C 0019096C 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f +/* 80193A10 00190970 41 82 00 10 */ beq lbl_80193A20 +/* 80193A14 00190974 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f +/* 80193A18 00190978 41 82 00 08 */ beq lbl_80193A20 +/* 80193A1C 0019097C 3B E0 00 01 */ li r31, 1 +lbl_80193A20: +/* 80193A20 00190980 80 7E 00 18 */ lwz r3, 0x18(r30) +/* 80193A24 00190984 57 E4 06 3E */ clrlwi r4, r31, 0x18 +/* 80193A28 00190988 38 A0 00 01 */ li r5, 1 +/* 80193A2C 0019098C 48 13 6C BD */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80193A30 00190990 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 80193A34 00190994 41 82 00 14 */ beq lbl_80193A48 +/* 80193A38 00190998 C0 22 A6 44 */ lfs f1, lbl_805AC364@sda21(r2) +/* 80193A3C 0019099C 7F C3 F3 78 */ mr r3, r30 +/* 80193A40 001909A0 38 80 00 01 */ li r4, 1 +/* 80193A44 001909A4 48 00 00 1D */ bl Update__17CHudVisorBeamMenuFfb +lbl_80193A48: +/* 80193A48 001909A8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80193A4C 001909AC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80193A50 001909B0 83 C1 00 08 */ lwz r30, 8(r1) +/* 80193A54 001909B4 7C 08 03 A6 */ mtlr r0 +/* 80193A58 001909B8 38 21 00 10 */ addi r1, r1, 0x10 +/* 80193A5C 001909BC 4E 80 00 20 */ blr + +.global Update__17CHudVisorBeamMenuFfb +Update__17CHudVisorBeamMenuFfb: +/* 80193A60 001909C0 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 80193A64 001909C4 7C 08 02 A6 */ mflr r0 +/* 80193A68 001909C8 90 01 01 04 */ stw r0, 0x104(r1) +/* 80193A6C 001909CC DB E1 00 F0 */ stfd f31, 0xf0(r1) +/* 80193A70 001909D0 F3 E1 00 F8 */ psq_st f31, 248(r1), 0, qr0 +/* 80193A74 001909D4 DB C1 00 E0 */ stfd f30, 0xe0(r1) +/* 80193A78 001909D8 F3 C1 00 E8 */ psq_st f30, 232(r1), 0, qr0 +/* 80193A7C 001909DC DB A1 00 D0 */ stfd f29, 0xd0(r1) +/* 80193A80 001909E0 F3 A1 00 D8 */ psq_st f29, 216(r1), 0, qr0 +/* 80193A84 001909E4 DB 81 00 C0 */ stfd f28, 0xc0(r1) +/* 80193A88 001909E8 F3 81 00 C8 */ psq_st f28, 200(r1), 0, qr0 +/* 80193A8C 001909EC BE C1 00 98 */ stmw r22, 0x98(r1) +/* 80193A90 001909F0 80 AD A0 80 */ lwz r5, gpGameState@sda21(r13) +/* 80193A94 001909F4 7C 7E 1B 78 */ mr r30, r3 +/* 80193A98 001909F8 88 63 00 80 */ lbz r3, 0x80(r3) +/* 80193A9C 001909FC FF C0 08 90 */ fmr f30, f1 +/* 80193AA0 00190A00 88 A5 01 E4 */ lbz r5, 0x1e4(r5) +/* 80193AA4 00190A04 7C 9F 23 78 */ mr r31, r4 +/* 80193AA8 00190A08 54 60 CF FE */ rlwinm r0, r3, 0x19, 0x1f, 0x1f +/* 80193AAC 00190A0C 54 A4 E7 FE */ rlwinm r4, r5, 0x1c, 0x1f, 0x1f +/* 80193AB0 00190A10 7C 04 00 40 */ cmplw r4, r0 +/* 80193AB4 00190A14 41 82 01 30 */ beq lbl_80193BE4 +/* 80193AB8 00190A18 50 83 3E 30 */ rlwimi r3, r4, 7, 0x18, 0x18 +/* 80193ABC 00190A1C 98 7E 00 80 */ stb r3, 0x80(r30) +/* 80193AC0 00190A20 88 1E 00 80 */ lbz r0, 0x80(r30) +/* 80193AC4 00190A24 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80193AC8 00190A28 41 82 00 10 */ beq lbl_80193AD8 +/* 80193ACC 00190A2C 80 1E 00 04 */ lwz r0, 4(r30) +/* 80193AD0 00190A30 20 00 00 01 */ subfic r0, r0, 1 +/* 80193AD4 00190A34 48 00 00 08 */ b lbl_80193ADC +lbl_80193AD8: +/* 80193AD8 00190A38 80 1E 00 04 */ lwz r0, 4(r30) +lbl_80193ADC: +/* 80193ADC 00190A3C 54 00 10 3A */ slwi r0, r0, 2 +/* 80193AE0 00190A40 38 82 A6 00 */ addi r4, r2, lbl_805AC320@sda21 +/* 80193AE4 00190A44 80 7E 00 00 */ lwz r3, 0(r30) +/* 80193AE8 00190A48 7C 84 00 2E */ lwzx r4, r4, r0 +/* 80193AEC 00190A4C 48 12 E6 69 */ bl FindWidget__9CGuiFrameCFPCc +/* 80193AF0 00190A50 90 7E 00 18 */ stw r3, 0x18(r30) +/* 80193AF4 00190A54 38 61 00 6C */ addi r3, r1, 0x6c +/* 80193AF8 00190A58 38 8D 8F A0 */ addi r4, r13, lbl_805A7B60@sda21 +/* 80193AFC 00190A5C 4B E8 1E F5 */ bl wstring_l__4rstlFPCw +/* 80193B00 00190A60 80 7E 00 20 */ lwz r3, 0x20(r30) +/* 80193B04 00190A64 38 81 00 6C */ addi r4, r1, 0x6c +/* 80193B08 00190A68 38 A0 00 00 */ li r5, 0 +/* 80193B0C 00190A6C 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80193B10 00190A70 48 13 5D 75 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80193B14 00190A74 38 61 00 6C */ addi r3, r1, 0x6c +/* 80193B18 00190A78 48 1A 96 1D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80193B1C 00190A7C 88 1E 00 80 */ lbz r0, 0x80(r30) +/* 80193B20 00190A80 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80193B24 00190A84 41 82 00 10 */ beq lbl_80193B34 +/* 80193B28 00190A88 80 1E 00 04 */ lwz r0, 4(r30) +/* 80193B2C 00190A8C 20 00 00 01 */ subfic r0, r0, 1 +/* 80193B30 00190A90 48 00 00 08 */ b lbl_80193B38 +lbl_80193B34: +/* 80193B34 00190A94 80 1E 00 04 */ lwz r0, 4(r30) +lbl_80193B38: +/* 80193B38 00190A98 54 00 10 3A */ slwi r0, r0, 2 +/* 80193B3C 00190A9C 38 82 A6 08 */ addi r4, r2, lbl_805AC328@sda21 +/* 80193B40 00190AA0 80 7E 00 00 */ lwz r3, 0(r30) +/* 80193B44 00190AA4 7C 84 00 2E */ lwzx r4, r4, r0 +/* 80193B48 00190AA8 48 12 E6 0D */ bl FindWidget__9CGuiFrameCFPCc +/* 80193B4C 00190AAC 90 7E 00 20 */ stw r3, 0x20(r30) +/* 80193B50 00190AB0 88 1E 00 80 */ lbz r0, 0x80(r30) +/* 80193B54 00190AB4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80193B58 00190AB8 41 82 00 10 */ beq lbl_80193B68 +/* 80193B5C 00190ABC 80 1E 00 04 */ lwz r0, 4(r30) +/* 80193B60 00190AC0 20 00 00 01 */ subfic r0, r0, 1 +/* 80193B64 00190AC4 48 00 00 08 */ b lbl_80193B6C +lbl_80193B68: +/* 80193B68 00190AC8 80 1E 00 04 */ lwz r0, 4(r30) +lbl_80193B6C: +/* 80193B6C 00190ACC 54 00 10 3A */ slwi r0, r0, 2 +/* 80193B70 00190AD0 38 82 A6 10 */ addi r4, r2, lbl_805AC330@sda21 +/* 80193B74 00190AD4 80 7E 00 00 */ lwz r3, 0(r30) +/* 80193B78 00190AD8 7C 84 00 2E */ lwzx r4, r4, r0 +/* 80193B7C 00190ADC 48 12 E5 D9 */ bl FindWidget__9CGuiFrameCFPCc +/* 80193B80 00190AE0 3A FE 00 2C */ addi r23, r30, 0x2c +/* 80193B84 00190AE4 90 7E 00 1C */ stw r3, 0x1c(r30) +/* 80193B88 00190AE8 7E F6 BB 78 */ mr r22, r23 +/* 80193B8C 00190AEC 3B 00 00 00 */ li r24, 0 +lbl_80193B90: +/* 80193B90 00190AF0 80 B6 00 04 */ lwz r5, 4(r22) +/* 80193B94 00190AF4 7F C3 F3 78 */ mr r3, r30 +/* 80193B98 00190AF8 C0 36 00 08 */ lfs f1, 8(r22) +/* 80193B9C 00190AFC 7F 04 C3 78 */ mr r4, r24 +/* 80193BA0 00190B00 4B FF FC 19 */ bl UpdateMenuWidgetTransform__17CHudVisorBeamMenuFiR10CGuiWidgetf +/* 80193BA4 00190B04 80 B6 00 00 */ lwz r5, 0(r22) +/* 80193BA8 00190B08 7F C3 F3 78 */ mr r3, r30 +/* 80193BAC 00190B0C C0 22 A6 40 */ lfs f1, lbl_805AC360@sda21(r2) +/* 80193BB0 00190B10 7F 04 C3 78 */ mr r4, r24 +/* 80193BB4 00190B14 4B FF FC 05 */ bl UpdateMenuWidgetTransform__17CHudVisorBeamMenuFiR10CGuiWidgetf +/* 80193BB8 00190B18 3B 18 00 01 */ addi r24, r24, 1 +/* 80193BBC 00190B1C 3A D6 00 10 */ addi r22, r22, 0x10 +/* 80193BC0 00190B20 2C 18 00 04 */ cmpwi r24, 4 +/* 80193BC4 00190B24 41 80 FF CC */ blt lbl_80193B90 +/* 80193BC8 00190B28 80 9E 00 08 */ lwz r4, 8(r30) +/* 80193BCC 00190B2C 7F C3 F3 78 */ mr r3, r30 +/* 80193BD0 00190B30 80 BE 00 24 */ lwz r5, 0x24(r30) +/* 80193BD4 00190B34 54 80 20 36 */ slwi r0, r4, 4 +/* 80193BD8 00190B38 7C D7 02 14 */ add r6, r23, r0 +/* 80193BDC 00190B3C C0 26 00 08 */ lfs f1, 8(r6) +/* 80193BE0 00190B40 4B FF FB D9 */ bl UpdateMenuWidgetTransform__17CHudVisorBeamMenuFiR10CGuiWidgetf +lbl_80193BE4: +/* 80193BE4 00190B44 80 6D A1 3C */ lwz r3, gpTweakGuiColors@sda21(r13) +/* 80193BE8 00190B48 38 00 00 00 */ li r0, 0 +/* 80193BEC 00190B4C 3B 7E 00 2C */ addi r27, r30, 0x2c +/* 80193BF0 00190B50 90 01 00 7C */ stw r0, 0x7c(r1) +/* 80193BF4 00190B54 C3 A2 A6 44 */ lfs f29, lbl_805AC364@sda21(r2) +/* 80193BF8 00190B58 7F 7D DB 78 */ mr r29, r27 +/* 80193BFC 00190B5C 3B 43 00 2C */ addi r26, r3, 0x2c +/* 80193C00 00190B60 3B 23 00 30 */ addi r25, r3, 0x30 +/* 80193C04 00190B64 3B 03 00 B0 */ addi r24, r3, 0xb0 +/* 80193C08 00190B68 3B 81 00 80 */ addi r28, r1, 0x80 +/* 80193C0C 00190B6C 3A E0 00 00 */ li r23, 0 +lbl_80193C10: +/* 80193C10 00190B70 C0 1D 00 0C */ lfs f0, 0xc(r29) +/* 80193C14 00190B74 FC 00 E8 40 */ fcmpo cr0, f0, f29 +/* 80193C18 00190B78 40 81 00 2C */ ble lbl_80193C44 +/* 80193C1C 00190B7C EC 20 F0 2A */ fadds f1, f0, f30 +/* 80193C20 00190B80 C0 0D 8F 98 */ lfs f0, lbl_805A7B58@sda21(r13) +/* 80193C24 00190B84 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80193C28 00190B88 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 80193C2C 00190B8C 40 80 00 0C */ bge lbl_80193C38 +/* 80193C30 00190B90 38 61 00 48 */ addi r3, r1, 0x48 +/* 80193C34 00190B94 48 00 00 08 */ b lbl_80193C3C +lbl_80193C38: +/* 80193C38 00190B98 38 6D 8F 98 */ addi r3, r13, lbl_805A7B58@sda21 +lbl_80193C3C: +/* 80193C3C 00190B9C C0 03 00 00 */ lfs f0, 0(r3) +/* 80193C40 00190BA0 D0 1D 00 0C */ stfs f0, 0xc(r29) +lbl_80193C44: +/* 80193C44 00190BA4 38 00 00 00 */ li r0, 0 +/* 80193C48 00190BA8 7F 44 D3 78 */ mr r4, r26 +/* 80193C4C 00190BAC 90 01 00 40 */ stw r0, 0x40(r1) +/* 80193C50 00190BB0 38 61 00 44 */ addi r3, r1, 0x44 +/* 80193C54 00190BB4 38 A1 00 40 */ addi r5, r1, 0x40 +/* 80193C58 00190BB8 C0 3D 00 0C */ lfs f1, 0xc(r29) +/* 80193C5C 00190BBC 48 1C F6 51 */ bl Lerp__6CColorFRC6CColorRC6CColorf +/* 80193C60 00190BC0 80 01 00 7C */ lwz r0, 0x7c(r1) +/* 80193C64 00190BC4 54 00 10 3A */ slwi r0, r0, 2 +/* 80193C68 00190BC8 7C 7C 02 15 */ add. r3, r28, r0 +/* 80193C6C 00190BCC 41 82 00 0C */ beq lbl_80193C78 +/* 80193C70 00190BD0 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80193C74 00190BD4 90 03 00 00 */ stw r0, 0(r3) +lbl_80193C78: +/* 80193C78 00190BD8 80 61 00 7C */ lwz r3, 0x7c(r1) +/* 80193C7C 00190BDC 3A F7 00 01 */ addi r23, r23, 1 +/* 80193C80 00190BE0 2C 17 00 04 */ cmpwi r23, 4 +/* 80193C84 00190BE4 3B BD 00 10 */ addi r29, r29, 0x10 +/* 80193C88 00190BE8 38 03 00 01 */ addi r0, r3, 1 +/* 80193C8C 00190BEC 90 01 00 7C */ stw r0, 0x7c(r1) +/* 80193C90 00190BF0 41 80 FF 80 */ blt lbl_80193C10 +/* 80193C94 00190BF4 80 1E 00 6C */ lwz r0, 0x6c(r30) +/* 80193C98 00190BF8 2C 00 00 02 */ cmpwi r0, 2 +/* 80193C9C 00190BFC 41 82 01 20 */ beq lbl_80193DBC +/* 80193CA0 00190C00 40 80 00 14 */ bge lbl_80193CB4 +/* 80193CA4 00190C04 2C 00 00 00 */ cmpwi r0, 0 +/* 80193CA8 00190C08 41 82 03 EC */ beq lbl_80194094 +/* 80193CAC 00190C0C 40 80 00 14 */ bge lbl_80193CC0 +/* 80193CB0 00190C10 48 00 03 E4 */ b lbl_80194094 +lbl_80193CB4: +/* 80193CB4 00190C14 2C 00 00 04 */ cmpwi r0, 4 +/* 80193CB8 00190C18 40 80 03 DC */ bge lbl_80194094 +/* 80193CBC 00190C1C 48 00 02 C4 */ b lbl_80193F80 +lbl_80193CC0: +/* 80193CC0 00190C20 80 19 00 00 */ lwz r0, 0(r25) +/* 80193CC4 00190C24 7F 7D DB 78 */ mr r29, r27 +/* 80193CC8 00190C28 C3 A2 A6 44 */ lfs f29, lbl_805AC364@sda21(r2) +/* 80193CCC 00190C2C 3A E0 00 00 */ li r23, 0 +/* 80193CD0 00190C30 90 01 00 68 */ stw r0, 0x68(r1) +lbl_80193CD4: +/* 80193CD4 00190C34 80 1E 00 08 */ lwz r0, 8(r30) +/* 80193CD8 00190C38 7C 17 00 00 */ cmpw r23, r0 +/* 80193CDC 00190C3C 40 82 00 0C */ bne lbl_80193CE8 +/* 80193CE0 00190C40 7F 44 D3 78 */ mr r4, r26 +/* 80193CE4 00190C44 48 00 00 08 */ b lbl_80193CEC +lbl_80193CE8: +/* 80193CE8 00190C48 38 81 00 68 */ addi r4, r1, 0x68 +lbl_80193CEC: +/* 80193CEC 00190C4C 7C 17 00 00 */ cmpw r23, r0 +/* 80193CF0 00190C50 40 82 00 0C */ bne lbl_80193CFC +/* 80193CF4 00190C54 7F 16 C3 78 */ mr r22, r24 +/* 80193CF8 00190C58 48 00 00 08 */ b lbl_80193D00 +lbl_80193CFC: +/* 80193CFC 00190C5C 7F 36 CB 78 */ mr r22, r25 +lbl_80193D00: +/* 80193D00 00190C60 C0 1D 00 0C */ lfs f0, 0xc(r29) +/* 80193D04 00190C64 FC 1D 00 00 */ fcmpu cr0, f29, f0 +/* 80193D08 00190C68 40 82 00 14 */ bne lbl_80193D1C +/* 80193D0C 00190C6C 38 00 00 00 */ li r0, 0 +/* 80193D10 00190C70 38 61 00 3C */ addi r3, r1, 0x3c +/* 80193D14 00190C74 90 01 00 3C */ stw r0, 0x3c(r1) +/* 80193D18 00190C78 48 00 00 14 */ b lbl_80193D2C +lbl_80193D1C: +/* 80193D1C 00190C7C 7F 85 E3 78 */ mr r5, r28 +/* 80193D20 00190C80 38 61 00 38 */ addi r3, r1, 0x38 +/* 80193D24 00190C84 48 1C F3 8D */ bl Add__6CColorFRC6CColorRC6CColor +/* 80193D28 00190C88 38 61 00 38 */ addi r3, r1, 0x38 +lbl_80193D2C: +/* 80193D2C 00190C8C 80 03 00 00 */ lwz r0, 0(r3) +/* 80193D30 00190C90 90 01 00 64 */ stw r0, 0x64(r1) +/* 80193D34 00190C94 C0 1D 00 0C */ lfs f0, 0xc(r29) +/* 80193D38 00190C98 FC 1D 00 00 */ fcmpu cr0, f29, f0 +/* 80193D3C 00190C9C 40 82 00 0C */ bne lbl_80193D48 +/* 80193D40 00190CA0 7F 03 C3 78 */ mr r3, r24 +/* 80193D44 00190CA4 48 00 00 18 */ b lbl_80193D5C +lbl_80193D48: +/* 80193D48 00190CA8 7E C4 B3 78 */ mr r4, r22 +/* 80193D4C 00190CAC 7F 85 E3 78 */ mr r5, r28 +/* 80193D50 00190CB0 38 61 00 34 */ addi r3, r1, 0x34 +/* 80193D54 00190CB4 48 1C F3 5D */ bl Add__6CColorFRC6CColorRC6CColor +/* 80193D58 00190CB8 38 61 00 34 */ addi r3, r1, 0x34 +lbl_80193D5C: +/* 80193D5C 00190CBC 80 03 00 00 */ lwz r0, 0(r3) +/* 80193D60 00190CC0 38 81 00 64 */ addi r4, r1, 0x64 +/* 80193D64 00190CC4 90 01 00 60 */ stw r0, 0x60(r1) +/* 80193D68 00190CC8 80 7D 00 04 */ lwz r3, 4(r29) +/* 80193D6C 00190CCC 48 13 6B 01 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80193D70 00190CD0 80 7D 00 00 */ lwz r3, 0(r29) +/* 80193D74 00190CD4 38 81 00 60 */ addi r4, r1, 0x60 +/* 80193D78 00190CD8 48 13 6A F5 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80193D7C 00190CDC 80 1E 00 08 */ lwz r0, 8(r30) +/* 80193D80 00190CE0 7C 17 00 00 */ cmpw r23, r0 +/* 80193D84 00190CE4 40 82 00 0C */ bne lbl_80193D90 +/* 80193D88 00190CE8 C0 02 A6 44 */ lfs f0, lbl_805AC364@sda21(r2) +/* 80193D8C 00190CEC 48 00 00 08 */ b lbl_80193D94 +lbl_80193D90: +/* 80193D90 00190CF0 C0 02 A6 40 */ lfs f0, lbl_805AC360@sda21(r2) +lbl_80193D94: +/* 80193D94 00190CF4 3A F7 00 01 */ addi r23, r23, 1 +/* 80193D98 00190CF8 D0 1D 00 08 */ stfs f0, 8(r29) +/* 80193D9C 00190CFC 2C 17 00 04 */ cmpwi r23, 4 +/* 80193DA0 00190D00 3B BD 00 10 */ addi r29, r29, 0x10 +/* 80193DA4 00190D04 3B 9C 00 04 */ addi r28, r28, 4 +/* 80193DA8 00190D08 41 80 FF 2C */ blt lbl_80193CD4 +/* 80193DAC 00190D0C 80 7E 00 24 */ lwz r3, 0x24(r30) +/* 80193DB0 00190D10 7F 44 D3 78 */ mr r4, r26 +/* 80193DB4 00190D14 48 13 6A B9 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80193DB8 00190D18 48 00 02 DC */ b lbl_80194094 +lbl_80193DBC: +/* 80193DBC 00190D1C 48 1B 61 F1 */ bl White__6CColorFv +/* 80193DC0 00190D20 C3 82 A6 44 */ lfs f28, lbl_805AC364@sda21(r2) +/* 80193DC4 00190D24 F3 81 A0 09 */ psq_st f28, 9(r1), 1, qr2 +/* 80193DC8 00190D28 38 81 00 30 */ addi r4, r1, 0x30 +/* 80193DCC 00190D2C 80 63 00 00 */ lwz r3, 0(r3) +/* 80193DD0 00190D30 88 01 00 09 */ lbz r0, 9(r1) +/* 80193DD4 00190D34 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 80193DD8 00190D38 90 01 00 30 */ stw r0, 0x30(r1) +/* 80193DDC 00190D3C 80 7E 00 1C */ lwz r3, 0x1c(r30) +/* 80193DE0 00190D40 48 13 6A 8D */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80193DE4 00190D44 C0 3E 00 10 */ lfs f1, 0x10(r30) +/* 80193DE8 00190D48 C8 42 A6 48 */ lfd f2, lbl_805AC368@sda21(r2) +/* 80193DEC 00190D4C 48 20 0E C1 */ bl fmod +/* 80193DF0 00190D50 FC 20 08 18 */ frsp f1, f1 +/* 80193DF4 00190D54 C0 02 A6 50 */ lfs f0, lbl_805AC370@sda21(r2) +/* 80193DF8 00190D58 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80193DFC 00190D5C 40 81 00 0C */ ble lbl_80193E08 +/* 80193E00 00190D60 7F 44 D3 78 */ mr r4, r26 +/* 80193E04 00190D64 48 00 00 08 */ b lbl_80193E0C +lbl_80193E08: +/* 80193E08 00190D68 7F 24 CB 78 */ mr r4, r25 +lbl_80193E0C: +/* 80193E0C 00190D6C 80 1E 00 0C */ lwz r0, 0xc(r30) +/* 80193E10 00190D70 38 61 00 2C */ addi r3, r1, 0x2c +/* 80193E14 00190D74 54 00 10 3A */ slwi r0, r0, 2 +/* 80193E18 00190D78 7C BC 02 14 */ add r5, r28, r0 +/* 80193E1C 00190D7C 48 1C F2 95 */ bl Add__6CColorFRC6CColorRC6CColor +/* 80193E20 00190D80 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 80193E24 00190D84 38 81 00 5C */ addi r4, r1, 0x5c +/* 80193E28 00190D88 90 01 00 5C */ stw r0, 0x5c(r1) +/* 80193E2C 00190D8C 80 1E 00 0C */ lwz r0, 0xc(r30) +/* 80193E30 00190D90 54 03 20 36 */ slwi r3, r0, 4 +/* 80193E34 00190D94 38 03 00 04 */ addi r0, r3, 4 +/* 80193E38 00190D98 7C 7B 00 2E */ lwzx r3, r27, r0 +/* 80193E3C 00190D9C 48 13 6A 31 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80193E40 00190DA0 80 1E 00 0C */ lwz r0, 0xc(r30) +/* 80193E44 00190DA4 38 81 00 5C */ addi r4, r1, 0x5c +/* 80193E48 00190DA8 54 00 20 36 */ slwi r0, r0, 4 +/* 80193E4C 00190DAC 7C 7B 00 2E */ lwzx r3, r27, r0 +/* 80193E50 00190DB0 48 13 6A 1D */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80193E54 00190DB4 C0 3E 00 10 */ lfs f1, 0x10(r30) +/* 80193E58 00190DB8 7F 24 CB 78 */ mr r4, r25 +/* 80193E5C 00190DBC 7F 45 D3 78 */ mr r5, r26 +/* 80193E60 00190DC0 38 61 00 28 */ addi r3, r1, 0x28 +/* 80193E64 00190DC4 48 1C F4 49 */ bl Lerp__6CColorFRC6CColorRC6CColorf +/* 80193E68 00190DC8 80 01 00 28 */ lwz r0, 0x28(r1) +/* 80193E6C 00190DCC 38 61 00 24 */ addi r3, r1, 0x24 +/* 80193E70 00190DD0 38 81 00 58 */ addi r4, r1, 0x58 +/* 80193E74 00190DD4 90 01 00 58 */ stw r0, 0x58(r1) +/* 80193E78 00190DD8 80 1E 00 08 */ lwz r0, 8(r30) +/* 80193E7C 00190DDC 54 00 10 3A */ slwi r0, r0, 2 +/* 80193E80 00190DE0 7C BC 02 14 */ add r5, r28, r0 +/* 80193E84 00190DE4 48 1C F2 2D */ bl Add__6CColorFRC6CColorRC6CColor +/* 80193E88 00190DE8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80193E8C 00190DEC 38 81 00 54 */ addi r4, r1, 0x54 +/* 80193E90 00190DF0 90 01 00 54 */ stw r0, 0x54(r1) +/* 80193E94 00190DF4 80 1E 00 08 */ lwz r0, 8(r30) +/* 80193E98 00190DF8 54 03 20 36 */ slwi r3, r0, 4 +/* 80193E9C 00190DFC 38 03 00 04 */ addi r0, r3, 4 +/* 80193EA0 00190E00 7C 7B 00 2E */ lwzx r3, r27, r0 +/* 80193EA4 00190E04 48 13 69 C9 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80193EA8 00190E08 80 1E 00 08 */ lwz r0, 8(r30) +/* 80193EAC 00190E0C 7F 04 C3 78 */ mr r4, r24 +/* 80193EB0 00190E10 54 00 20 36 */ slwi r0, r0, 4 +/* 80193EB4 00190E14 7C 7B 00 2E */ lwzx r3, r27, r0 +/* 80193EB8 00190E18 48 13 69 B5 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80193EBC 00190E1C 80 1E 00 08 */ lwz r0, 8(r30) +/* 80193EC0 00190E20 38 60 00 00 */ li r3, 0 +/* 80193EC4 00190E24 C0 22 A6 40 */ lfs f1, lbl_805AC360@sda21(r2) +/* 80193EC8 00190E28 7C 03 00 00 */ cmpw r3, r0 +/* 80193ECC 00190E2C 40 82 00 10 */ bne lbl_80193EDC +/* 80193ED0 00190E30 C0 1E 00 10 */ lfs f0, 0x10(r30) +/* 80193ED4 00190E34 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80193ED8 00190E38 48 00 00 08 */ b lbl_80193EE0 +lbl_80193EDC: +/* 80193EDC 00190E3C FC 00 08 90 */ fmr f0, f1 +lbl_80193EE0: +/* 80193EE0 00190E40 D0 1B 00 08 */ stfs f0, 8(r27) +/* 80193EE4 00190E44 38 60 00 01 */ li r3, 1 +/* 80193EE8 00190E48 80 1E 00 08 */ lwz r0, 8(r30) +/* 80193EEC 00190E4C 7C 03 00 00 */ cmpw r3, r0 +/* 80193EF0 00190E50 40 82 00 10 */ bne lbl_80193F00 +/* 80193EF4 00190E54 C0 1E 00 10 */ lfs f0, 0x10(r30) +/* 80193EF8 00190E58 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80193EFC 00190E5C 48 00 00 08 */ b lbl_80193F04 +lbl_80193F00: +/* 80193F00 00190E60 C0 02 A6 40 */ lfs f0, lbl_805AC360@sda21(r2) +lbl_80193F04: +/* 80193F04 00190E64 D0 1B 00 18 */ stfs f0, 0x18(r27) +/* 80193F08 00190E68 38 60 00 02 */ li r3, 2 +/* 80193F0C 00190E6C 80 1E 00 08 */ lwz r0, 8(r30) +/* 80193F10 00190E70 7C 03 00 00 */ cmpw r3, r0 +/* 80193F14 00190E74 40 82 00 10 */ bne lbl_80193F24 +/* 80193F18 00190E78 C0 1E 00 10 */ lfs f0, 0x10(r30) +/* 80193F1C 00190E7C EC 01 00 28 */ fsubs f0, f1, f0 +/* 80193F20 00190E80 48 00 00 08 */ b lbl_80193F28 +lbl_80193F24: +/* 80193F24 00190E84 C0 02 A6 40 */ lfs f0, lbl_805AC360@sda21(r2) +lbl_80193F28: +/* 80193F28 00190E88 D0 1B 00 28 */ stfs f0, 0x28(r27) +/* 80193F2C 00190E8C 38 60 00 03 */ li r3, 3 +/* 80193F30 00190E90 80 1E 00 08 */ lwz r0, 8(r30) +/* 80193F34 00190E94 7C 03 00 00 */ cmpw r3, r0 +/* 80193F38 00190E98 40 82 00 10 */ bne lbl_80193F48 +/* 80193F3C 00190E9C C0 1E 00 10 */ lfs f0, 0x10(r30) +/* 80193F40 00190EA0 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80193F44 00190EA4 48 00 00 08 */ b lbl_80193F4C +lbl_80193F48: +/* 80193F48 00190EA8 C0 02 A6 40 */ lfs f0, lbl_805AC360@sda21(r2) +lbl_80193F4C: +/* 80193F4C 00190EAC D0 1B 00 38 */ stfs f0, 0x38(r27) +/* 80193F50 00190EB0 7F 44 D3 78 */ mr r4, r26 +/* 80193F54 00190EB4 7F 25 CB 78 */ mr r5, r25 +/* 80193F58 00190EB8 38 61 00 20 */ addi r3, r1, 0x20 +/* 80193F5C 00190EBC 80 1E 00 08 */ lwz r0, 8(r30) +/* 80193F60 00190EC0 54 06 20 36 */ slwi r6, r0, 4 +/* 80193F64 00190EC4 38 06 00 08 */ addi r0, r6, 8 +/* 80193F68 00190EC8 7C 3B 04 2E */ lfsx f1, r27, r0 +/* 80193F6C 00190ECC 48 1C F3 41 */ bl Lerp__6CColorFRC6CColorRC6CColorf +/* 80193F70 00190ED0 80 7E 00 24 */ lwz r3, 0x24(r30) +/* 80193F74 00190ED4 38 81 00 20 */ addi r4, r1, 0x20 +/* 80193F78 00190ED8 48 13 68 F5 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80193F7C 00190EDC 48 00 01 18 */ b lbl_80194094 +lbl_80193F80: +/* 80193F80 00190EE0 C3 A2 A6 44 */ lfs f29, lbl_805AC364@sda21(r2) +/* 80193F84 00190EE4 7F 7D DB 78 */ mr r29, r27 +/* 80193F88 00190EE8 3A E0 00 00 */ li r23, 0 +lbl_80193F8C: +/* 80193F8C 00190EEC 80 1E 00 08 */ lwz r0, 8(r30) +/* 80193F90 00190EF0 7C 17 00 00 */ cmpw r23, r0 +/* 80193F94 00190EF4 40 82 00 0C */ bne lbl_80193FA0 +/* 80193F98 00190EF8 7F 44 D3 78 */ mr r4, r26 +/* 80193F9C 00190EFC 48 00 00 08 */ b lbl_80193FA4 +lbl_80193FA0: +/* 80193FA0 00190F00 7F 24 CB 78 */ mr r4, r25 +lbl_80193FA4: +/* 80193FA4 00190F04 C0 1D 00 0C */ lfs f0, 0xc(r29) +/* 80193FA8 00190F08 82 DD 00 04 */ lwz r22, 4(r29) +/* 80193FAC 00190F0C FC 1D 00 00 */ fcmpu cr0, f29, f0 +/* 80193FB0 00190F10 40 82 00 14 */ bne lbl_80193FC4 +/* 80193FB4 00190F14 38 00 00 00 */ li r0, 0 +/* 80193FB8 00190F18 38 61 00 1C */ addi r3, r1, 0x1c +/* 80193FBC 00190F1C 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80193FC0 00190F20 48 00 00 14 */ b lbl_80193FD4 +lbl_80193FC4: +/* 80193FC4 00190F24 7F 85 E3 78 */ mr r5, r28 +/* 80193FC8 00190F28 38 61 00 18 */ addi r3, r1, 0x18 +/* 80193FCC 00190F2C 48 1C F0 E5 */ bl Add__6CColorFRC6CColorRC6CColor +/* 80193FD0 00190F30 38 61 00 18 */ addi r3, r1, 0x18 +lbl_80193FD4: +/* 80193FD4 00190F34 80 03 00 00 */ lwz r0, 0(r3) +/* 80193FD8 00190F38 7E C3 B3 78 */ mr r3, r22 +/* 80193FDC 00190F3C 38 81 00 50 */ addi r4, r1, 0x50 +/* 80193FE0 00190F40 90 01 00 50 */ stw r0, 0x50(r1) +/* 80193FE4 00190F44 48 13 68 89 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80193FE8 00190F48 C0 1D 00 0C */ lfs f0, 0xc(r29) +/* 80193FEC 00190F4C 38 60 00 00 */ li r3, 0 +/* 80193FF0 00190F50 FC 1D 00 00 */ fcmpu cr0, f29, f0 +/* 80193FF4 00190F54 41 82 00 10 */ beq lbl_80194004 +/* 80193FF8 00190F58 80 1E 00 08 */ lwz r0, 8(r30) +/* 80193FFC 00190F5C 7C 17 00 00 */ cmpw r23, r0 +/* 80194000 00190F60 40 82 00 08 */ bne lbl_80194008 +lbl_80194004: +/* 80194004 00190F64 38 60 00 01 */ li r3, 1 +lbl_80194008: +/* 80194008 00190F68 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8019400C 00190F6C 41 82 00 0C */ beq lbl_80194018 +/* 80194010 00190F70 7F 03 C3 78 */ mr r3, r24 +/* 80194014 00190F74 48 00 00 08 */ b lbl_8019401C +lbl_80194018: +/* 80194018 00190F78 7F 23 CB 78 */ mr r3, r25 +lbl_8019401C: +/* 8019401C 00190F7C 80 03 00 00 */ lwz r0, 0(r3) +/* 80194020 00190F80 38 81 00 4C */ addi r4, r1, 0x4c +/* 80194024 00190F84 90 01 00 4C */ stw r0, 0x4c(r1) +/* 80194028 00190F88 80 7D 00 00 */ lwz r3, 0(r29) +/* 8019402C 00190F8C 48 13 68 41 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80194030 00190F90 80 1E 00 08 */ lwz r0, 8(r30) +/* 80194034 00190F94 7C 17 00 00 */ cmpw r23, r0 +/* 80194038 00190F98 40 82 00 14 */ bne lbl_8019404C +/* 8019403C 00190F9C C0 22 A6 40 */ lfs f1, lbl_805AC360@sda21(r2) +/* 80194040 00190FA0 C0 1E 00 10 */ lfs f0, 0x10(r30) +/* 80194044 00190FA4 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80194048 00190FA8 48 00 00 08 */ b lbl_80194050 +lbl_8019404C: +/* 8019404C 00190FAC C0 02 A6 40 */ lfs f0, lbl_805AC360@sda21(r2) +lbl_80194050: +/* 80194050 00190FB0 3A F7 00 01 */ addi r23, r23, 1 +/* 80194054 00190FB4 D0 1D 00 08 */ stfs f0, 8(r29) +/* 80194058 00190FB8 2C 17 00 04 */ cmpwi r23, 4 +/* 8019405C 00190FBC 3B BD 00 10 */ addi r29, r29, 0x10 +/* 80194060 00190FC0 3B 9C 00 04 */ addi r28, r28, 4 +/* 80194064 00190FC4 41 80 FF 28 */ blt lbl_80193F8C +/* 80194068 00190FC8 80 1E 00 08 */ lwz r0, 8(r30) +/* 8019406C 00190FCC 7F 44 D3 78 */ mr r4, r26 +/* 80194070 00190FD0 7F 25 CB 78 */ mr r5, r25 +/* 80194074 00190FD4 38 61 00 14 */ addi r3, r1, 0x14 +/* 80194078 00190FD8 54 06 20 36 */ slwi r6, r0, 4 +/* 8019407C 00190FDC 38 06 00 08 */ addi r0, r6, 8 +/* 80194080 00190FE0 7C 3B 04 2E */ lfsx f1, r27, r0 +/* 80194084 00190FE4 48 1C F2 29 */ bl Lerp__6CColorFRC6CColorRC6CColorf +/* 80194088 00190FE8 80 7E 00 24 */ lwz r3, 0x24(r30) +/* 8019408C 00190FEC 38 81 00 14 */ addi r4, r1, 0x14 +/* 80194090 00190FF0 48 13 67 DD */ bl SetColor__10CGuiWidgetFRC6CColor +lbl_80194094: +/* 80194094 00190FF4 C0 3E 00 78 */ lfs f1, 0x78(r30) +/* 80194098 00190FF8 C0 02 A6 44 */ lfs f0, lbl_805AC364@sda21(r2) +/* 8019409C 00190FFC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801940A0 00191000 40 81 00 64 */ ble lbl_80194104 +/* 801940A4 00191004 EC 21 F0 28 */ fsubs f1, f1, f30 +/* 801940A8 00191008 C0 0D 8F 9C */ lfs f0, lbl_805A7B5C@sda21(r13) +/* 801940AC 0019100C FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801940B0 00191010 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 801940B4 00191014 40 80 00 0C */ bge lbl_801940C0 +/* 801940B8 00191018 38 61 00 10 */ addi r3, r1, 0x10 +/* 801940BC 0019101C 48 00 00 08 */ b lbl_801940C4 +lbl_801940C0: +/* 801940C0 00191020 38 6D 8F 9C */ addi r3, r13, lbl_805A7B5C@sda21 +lbl_801940C4: +/* 801940C4 00191024 C0 03 00 00 */ lfs f0, 0(r3) +/* 801940C8 00191028 D0 1E 00 78 */ stfs f0, 0x78(r30) +/* 801940CC 0019102C C0 3E 00 78 */ lfs f1, 0x78(r30) +/* 801940D0 00191030 C0 1E 00 7C */ lfs f0, 0x7c(r30) +/* 801940D4 00191034 EF 81 00 24 */ fdivs f28, f1, f0 +/* 801940D8 00191038 48 1B 5E D5 */ bl White__6CColorFv +/* 801940DC 0019103C C0 02 A6 54 */ lfs f0, lbl_805AC374@sda21(r2) +/* 801940E0 00191040 EF E0 07 32 */ fmuls f31, f0, f28 +/* 801940E4 00191044 F3 E1 A0 08 */ psq_st f31, 8(r1), 1, qr2 +/* 801940E8 00191048 38 81 00 0C */ addi r4, r1, 0xc +/* 801940EC 0019104C 80 63 00 00 */ lwz r3, 0(r3) +/* 801940F0 00191050 88 01 00 08 */ lbz r0, 8(r1) +/* 801940F4 00191054 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 801940F8 00191058 90 01 00 0C */ stw r0, 0xc(r1) +/* 801940FC 0019105C 80 7E 00 1C */ lwz r3, 0x1c(r30) +/* 80194100 00191060 48 13 67 6D */ bl SetColor__10CGuiWidgetFRC6CColor +lbl_80194104: +/* 80194104 00191064 88 1E 00 14 */ lbz r0, 0x14(r30) +/* 80194108 00191068 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 8019410C 0019106C 40 82 00 0C */ bne lbl_80194118 +/* 80194110 00191070 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 80194114 00191074 41 82 00 5C */ beq lbl_80194170 +lbl_80194118: +/* 80194118 00191078 88 1E 00 14 */ lbz r0, 0x14(r30) +/* 8019411C 0019107C 38 60 00 00 */ li r3, 0 +/* 80194120 00191080 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 80194124 00191084 7F 76 DB 78 */ mr r22, r27 +/* 80194128 00191088 98 1E 00 14 */ stb r0, 0x14(r30) +/* 8019412C 0019108C 3A E0 00 00 */ li r23, 0 +lbl_80194130: +/* 80194130 00191090 80 B6 00 04 */ lwz r5, 4(r22) +/* 80194134 00191094 7F C3 F3 78 */ mr r3, r30 +/* 80194138 00191098 C0 36 00 08 */ lfs f1, 8(r22) +/* 8019413C 0019109C 7E E4 BB 78 */ mr r4, r23 +/* 80194140 001910A0 4B FF F6 79 */ bl UpdateMenuWidgetTransform__17CHudVisorBeamMenuFiR10CGuiWidgetf +/* 80194144 001910A4 3A F7 00 01 */ addi r23, r23, 1 +/* 80194148 001910A8 3A D6 00 10 */ addi r22, r22, 0x10 +/* 8019414C 001910AC 2C 17 00 04 */ cmpwi r23, 4 +/* 80194150 001910B0 41 80 FF E0 */ blt lbl_80194130 +/* 80194154 001910B4 80 9E 00 08 */ lwz r4, 8(r30) +/* 80194158 001910B8 7F C3 F3 78 */ mr r3, r30 +/* 8019415C 001910BC 80 BE 00 24 */ lwz r5, 0x24(r30) +/* 80194160 001910C0 54 80 20 36 */ slwi r0, r4, 4 +/* 80194164 001910C4 7C DB 02 14 */ add r6, r27, r0 +/* 80194168 001910C8 C0 26 00 08 */ lfs f1, 8(r6) +/* 8019416C 001910CC 4B FF F6 4D */ bl UpdateMenuWidgetTransform__17CHudVisorBeamMenuFiR10CGuiWidgetf +lbl_80194170: +/* 80194170 001910D0 88 7E 00 14 */ lbz r3, 0x14(r30) +/* 80194174 001910D4 38 80 00 00 */ li r4, 0 +/* 80194178 001910D8 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f +/* 8019417C 001910DC 41 82 00 10 */ beq lbl_8019418C +/* 80194180 001910E0 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f +/* 80194184 001910E4 41 82 00 08 */ beq lbl_8019418C +/* 80194188 001910E8 38 80 00 01 */ li r4, 1 +lbl_8019418C: +/* 8019418C 001910EC 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 80194190 001910F0 40 82 00 5C */ bne lbl_801941EC +/* 80194194 001910F4 80 A1 00 7C */ lwz r5, 0x7c(r1) +/* 80194198 001910F8 38 60 00 00 */ li r3, 0 +/* 8019419C 001910FC 2C 05 00 00 */ cmpwi r5, 0 +/* 801941A0 00191100 40 81 00 40 */ ble lbl_801941E0 +/* 801941A4 00191104 2C 05 00 08 */ cmpwi r5, 8 +/* 801941A8 00191108 38 85 FF F8 */ addi r4, r5, -8 +/* 801941AC 0019110C 40 81 00 20 */ ble lbl_801941CC +/* 801941B0 00191110 38 04 00 07 */ addi r0, r4, 7 +/* 801941B4 00191114 54 00 E8 FE */ srwi r0, r0, 3 +/* 801941B8 00191118 7C 09 03 A6 */ mtctr r0 +/* 801941BC 0019111C 2C 04 00 00 */ cmpwi r4, 0 +/* 801941C0 00191120 40 81 00 0C */ ble lbl_801941CC +lbl_801941C4: +/* 801941C4 00191124 38 63 00 08 */ addi r3, r3, 8 +/* 801941C8 00191128 42 00 FF FC */ bdnz lbl_801941C4 +lbl_801941CC: +/* 801941CC 0019112C 7C 03 28 50 */ subf r0, r3, r5 +/* 801941D0 00191130 7C 09 03 A6 */ mtctr r0 +/* 801941D4 00191134 7C 03 28 00 */ cmpw r3, r5 +/* 801941D8 00191138 40 80 00 08 */ bge lbl_801941E0 +lbl_801941DC: +/* 801941DC 0019113C 42 00 00 00 */ bdnz lbl_801941DC +lbl_801941E0: +/* 801941E0 00191140 38 00 00 00 */ li r0, 0 +/* 801941E4 00191144 90 01 00 7C */ stw r0, 0x7c(r1) +/* 801941E8 00191148 48 00 00 BC */ b lbl_801942A4 +lbl_801941EC: +/* 801941EC 0019114C 80 7E 00 1C */ lwz r3, 0x1c(r30) +/* 801941F0 00191150 88 03 00 AB */ lbz r0, 0xab(r3) +/* 801941F4 00191154 28 00 00 00 */ cmplwi r0, 0 +/* 801941F8 00191158 41 82 00 14 */ beq lbl_8019420C +/* 801941FC 0019115C 38 80 00 01 */ li r4, 1 +/* 80194200 00191160 38 A0 00 01 */ li r5, 1 +/* 80194204 00191164 48 13 64 E5 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80194208 00191168 48 00 00 10 */ b lbl_80194218 +lbl_8019420C: +/* 8019420C 0019116C 38 80 00 00 */ li r4, 0 +/* 80194210 00191170 38 A0 00 01 */ li r5, 1 +/* 80194214 00191174 48 13 64 D5 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +lbl_80194218: +/* 80194218 00191178 3A C0 00 00 */ li r22, 0 +lbl_8019421C: +/* 8019421C 0019117C 80 7B 00 04 */ lwz r3, 4(r27) +/* 80194220 00191180 88 03 00 AB */ lbz r0, 0xab(r3) +/* 80194224 00191184 28 00 00 00 */ cmplwi r0, 0 +/* 80194228 00191188 41 82 00 10 */ beq lbl_80194238 +/* 8019422C 0019118C 38 80 00 01 */ li r4, 1 +/* 80194230 00191190 48 13 63 FD */ bl SetIsVisible__10CGuiWidgetFb +/* 80194234 00191194 48 00 00 0C */ b lbl_80194240 +lbl_80194238: +/* 80194238 00191198 38 80 00 00 */ li r4, 0 +/* 8019423C 0019119C 48 13 63 F1 */ bl SetIsVisible__10CGuiWidgetFb +lbl_80194240: +/* 80194240 001911A0 3A D6 00 01 */ addi r22, r22, 1 +/* 80194244 001911A4 3B 7B 00 10 */ addi r27, r27, 0x10 +/* 80194248 001911A8 2C 16 00 04 */ cmpwi r22, 4 +/* 8019424C 001911AC 41 80 FF D0 */ blt lbl_8019421C +/* 80194250 001911B0 80 A1 00 7C */ lwz r5, 0x7c(r1) +/* 80194254 001911B4 38 60 00 00 */ li r3, 0 +/* 80194258 001911B8 2C 05 00 00 */ cmpwi r5, 0 +/* 8019425C 001911BC 40 81 00 40 */ ble lbl_8019429C +/* 80194260 001911C0 2C 05 00 08 */ cmpwi r5, 8 +/* 80194264 001911C4 38 85 FF F8 */ addi r4, r5, -8 +/* 80194268 001911C8 40 81 00 20 */ ble lbl_80194288 +/* 8019426C 001911CC 38 04 00 07 */ addi r0, r4, 7 +/* 80194270 001911D0 54 00 E8 FE */ srwi r0, r0, 3 +/* 80194274 001911D4 7C 09 03 A6 */ mtctr r0 +/* 80194278 001911D8 2C 04 00 00 */ cmpwi r4, 0 +/* 8019427C 001911DC 40 81 00 0C */ ble lbl_80194288 +lbl_80194280: +/* 80194280 001911E0 38 63 00 08 */ addi r3, r3, 8 +/* 80194284 001911E4 42 00 FF FC */ bdnz lbl_80194280 +lbl_80194288: +/* 80194288 001911E8 7C 03 28 50 */ subf r0, r3, r5 +/* 8019428C 001911EC 7C 09 03 A6 */ mtctr r0 +/* 80194290 001911F0 7C 03 28 00 */ cmpw r3, r5 +/* 80194294 001911F4 40 80 00 08 */ bge lbl_8019429C +lbl_80194298: +/* 80194298 001911F8 42 00 00 00 */ bdnz lbl_80194298 +lbl_8019429C: +/* 8019429C 001911FC 38 00 00 00 */ li r0, 0 +/* 801942A0 00191200 90 01 00 7C */ stw r0, 0x7c(r1) +lbl_801942A4: +/* 801942A4 00191204 E3 E1 00 F8 */ psq_l f31, 248(r1), 0, qr0 +/* 801942A8 00191208 CB E1 00 F0 */ lfd f31, 0xf0(r1) +/* 801942AC 0019120C E3 C1 00 E8 */ psq_l f30, 232(r1), 0, qr0 +/* 801942B0 00191210 CB C1 00 E0 */ lfd f30, 0xe0(r1) +/* 801942B4 00191214 E3 A1 00 D8 */ psq_l f29, 216(r1), 0, qr0 +/* 801942B8 00191218 CB A1 00 D0 */ lfd f29, 0xd0(r1) +/* 801942BC 0019121C E3 81 00 C8 */ psq_l f28, 200(r1), 0, qr0 +/* 801942C0 00191220 CB 81 00 C0 */ lfd f28, 0xc0(r1) +/* 801942C4 00191224 BA C1 00 98 */ lmw r22, 0x98(r1) +/* 801942C8 00191228 80 01 01 04 */ lwz r0, 0x104(r1) +/* 801942CC 0019122C 7C 08 03 A6 */ mtlr r0 +/* 801942D0 00191230 38 21 01 00 */ addi r1, r1, 0x100 +/* 801942D4 00191234 4E 80 00 20 */ blr + +.global UpdateHudAlpha__17CHudVisorBeamMenuFf +UpdateHudAlpha__17CHudVisorBeamMenuFf: +/* 801942D8 00191238 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801942DC 0019123C 7C 08 02 A6 */ mflr r0 +/* 801942E0 00191240 90 01 00 54 */ stw r0, 0x54(r1) +/* 801942E4 00191244 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 801942E8 00191248 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 801942EC 0019124C DB C1 00 30 */ stfd f30, 0x30(r1) +/* 801942F0 00191250 F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 +/* 801942F4 00191254 DB A1 00 20 */ stfd f29, 0x20(r1) +/* 801942F8 00191258 F3 A1 00 28 */ psq_st f29, 40(r1), 0, qr0 +/* 801942FC 0019125C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80194300 00191260 FF A0 08 90 */ fmr f29, f1 +/* 80194304 00191264 80 8D A0 80 */ lwz r4, gpGameState@sda21(r13) +/* 80194308 00191268 7C 7F 1B 78 */ mr r31, r3 +/* 8019430C 0019126C 38 64 01 7C */ addi r3, r4, 0x17c +/* 80194310 00191270 48 07 AA 65 */ bl GetHudAlpha__12CGameOptionsCFv +/* 80194314 00191274 FF E0 08 90 */ fmr f31, f1 +/* 80194318 00191278 48 1B 5C 95 */ bl White__6CColorFv +/* 8019431C 0019127C EC 1D 07 F2 */ fmuls f0, f29, f31 +/* 80194320 00191280 C0 22 A6 54 */ lfs f1, lbl_805AC374@sda21(r2) +/* 80194324 00191284 EF C1 00 32 */ fmuls f30, f1, f0 +/* 80194328 00191288 F3 C1 A0 08 */ psq_st f30, 8(r1), 1, qr2 +/* 8019432C 0019128C 38 81 00 0C */ addi r4, r1, 0xc +/* 80194330 00191290 80 63 00 00 */ lwz r3, 0(r3) +/* 80194334 00191294 88 01 00 08 */ lbz r0, 8(r1) +/* 80194338 00191298 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 8019433C 0019129C 90 01 00 0C */ stw r0, 0xc(r1) +/* 80194340 001912A0 80 7F 00 18 */ lwz r3, 0x18(r31) +/* 80194344 001912A4 48 13 65 29 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80194348 001912A8 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 8019434C 001912AC CB E1 00 40 */ lfd f31, 0x40(r1) +/* 80194350 001912B0 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 +/* 80194354 001912B4 CB C1 00 30 */ lfd f30, 0x30(r1) +/* 80194358 001912B8 E3 A1 00 28 */ psq_l f29, 40(r1), 0, qr0 +/* 8019435C 001912BC CB A1 00 20 */ lfd f29, 0x20(r1) +/* 80194360 001912C0 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80194364 001912C4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80194368 001912C8 7C 08 03 A6 */ mtlr r0 +/* 8019436C 001912CC 38 21 00 50 */ addi r1, r1, 0x50 +/* 80194370 001912D0 4E 80 00 20 */ blr + +.global "SetPlayerHas__17CHudVisorBeamMenuFRCQ24rstl20reserved_vector" +"SetPlayerHas__17CHudVisorBeamMenuFRCQ24rstl20reserved_vector": +/* 80194374 001912D4 C0 42 A6 44 */ lfs f2, lbl_805AC364@sda21(r2) +/* 80194378 001912D8 C0 23 00 38 */ lfs f1, 0x38(r3) +/* 8019437C 001912DC C0 02 A6 58 */ lfs f0, lbl_805AC378@sda21(r2) +/* 80194380 001912E0 FC 02 08 00 */ fcmpu cr0, f2, f1 +/* 80194384 001912E4 40 82 00 14 */ bne lbl_80194398 +/* 80194388 001912E8 88 04 00 04 */ lbz r0, 4(r4) +/* 8019438C 001912EC 28 00 00 00 */ cmplwi r0, 0 +/* 80194390 001912F0 41 82 00 08 */ beq lbl_80194398 +/* 80194394 001912F4 D0 03 00 38 */ stfs f0, 0x38(r3) +lbl_80194398: +/* 80194398 001912F8 C0 23 00 48 */ lfs f1, 0x48(r3) +/* 8019439C 001912FC FC 02 08 00 */ fcmpu cr0, f2, f1 +/* 801943A0 00191300 40 82 00 14 */ bne lbl_801943B4 +/* 801943A4 00191304 88 04 00 05 */ lbz r0, 5(r4) +/* 801943A8 00191308 28 00 00 00 */ cmplwi r0, 0 +/* 801943AC 0019130C 41 82 00 08 */ beq lbl_801943B4 +/* 801943B0 00191310 D0 03 00 48 */ stfs f0, 0x48(r3) +lbl_801943B4: +/* 801943B4 00191314 C0 23 00 58 */ lfs f1, 0x58(r3) +/* 801943B8 00191318 FC 02 08 00 */ fcmpu cr0, f2, f1 +/* 801943BC 0019131C 40 82 00 14 */ bne lbl_801943D0 +/* 801943C0 00191320 88 04 00 06 */ lbz r0, 6(r4) +/* 801943C4 00191324 28 00 00 00 */ cmplwi r0, 0 +/* 801943C8 00191328 41 82 00 08 */ beq lbl_801943D0 +/* 801943CC 0019132C D0 03 00 58 */ stfs f0, 0x58(r3) +lbl_801943D0: +/* 801943D0 00191330 C0 23 00 68 */ lfs f1, 0x68(r3) +/* 801943D4 00191334 FC 02 08 00 */ fcmpu cr0, f2, f1 +/* 801943D8 00191338 4C 82 00 20 */ bnelr +/* 801943DC 0019133C 88 04 00 07 */ lbz r0, 7(r4) +/* 801943E0 00191340 28 00 00 00 */ cmplwi r0, 0 +/* 801943E4 00191344 4D 82 00 20 */ beqlr +/* 801943E8 00191348 D0 03 00 68 */ stfs f0, 0x68(r3) +/* 801943EC 0019134C 4E 80 00 20 */ blr + +.global SetSelection__17CHudVisorBeamMenuFiif +SetSelection__17CHudVisorBeamMenuFiif: +/* 801943F0 00191350 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801943F4 00191354 7C 08 02 A6 */ mflr r0 +/* 801943F8 00191358 90 01 00 44 */ stw r0, 0x44(r1) +/* 801943FC 0019135C DB E1 00 30 */ stfd f31, 0x30(r1) +/* 80194400 00191360 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 80194404 00191364 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80194408 00191368 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8019440C 0019136C 93 A1 00 24 */ stw r29, 0x24(r1) +/* 80194410 00191370 7C 7D 1B 78 */ mr r29, r3 +/* 80194414 00191374 7C 9E 23 78 */ mr r30, r4 +/* 80194418 00191378 80 03 00 08 */ lwz r0, 8(r3) +/* 8019441C 0019137C FF E0 08 90 */ fmr f31, f1 +/* 80194420 00191380 7C BF 2B 78 */ mr r31, r5 +/* 80194424 00191384 7C 00 F0 00 */ cmpw r0, r30 +/* 80194428 00191388 40 82 00 1C */ bne lbl_80194444 +/* 8019442C 0019138C 80 1D 00 0C */ lwz r0, 0xc(r29) +/* 80194430 00191390 7C 00 F8 00 */ cmpw r0, r31 +/* 80194434 00191394 40 82 00 10 */ bne lbl_80194444 +/* 80194438 00191398 C0 1D 00 10 */ lfs f0, 0x10(r29) +/* 8019443C 0019139C FC 1F 00 00 */ fcmpu cr0, f31, f0 +/* 80194440 001913A0 41 82 01 0C */ beq lbl_8019454C +lbl_80194444: +/* 80194444 001913A4 7C 1F F0 00 */ cmpw r31, r30 +/* 80194448 001913A8 41 82 00 4C */ beq lbl_80194494 +/* 8019444C 001913AC 80 1D 00 6C */ lwz r0, 0x6c(r29) +/* 80194450 001913B0 2C 00 00 02 */ cmpwi r0, 2 +/* 80194454 001913B4 41 82 00 34 */ beq lbl_80194488 +/* 80194458 001913B8 80 1D 00 04 */ lwz r0, 4(r29) +/* 8019445C 001913BC 38 82 A6 3C */ addi r4, r2, lbl_805AC35C@sda21 +/* 80194460 001913C0 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80194464 001913C4 38 61 00 08 */ addi r3, r1, 8 +/* 80194468 001913C8 54 00 08 3C */ slwi r0, r0, 1 +/* 8019446C 001913CC 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80194470 001913D0 7C 84 02 2E */ lhzx r4, r4, r0 +/* 80194474 001913D4 38 A0 00 7F */ li r5, 0x7f +/* 80194478 001913D8 38 C0 00 40 */ li r6, 0x40 +/* 8019447C 001913DC 38 E0 00 00 */ li r7, 0 +/* 80194480 001913E0 39 20 00 00 */ li r9, 0 +/* 80194484 001913E4 48 15 58 F1 */ bl SfxStart__11CSfxManagerFUsssbsbi +lbl_80194488: +/* 80194488 001913E8 38 00 00 02 */ li r0, 2 +/* 8019448C 001913EC 90 1D 00 6C */ stw r0, 0x6c(r29) +/* 80194490 001913F0 48 00 00 A0 */ b lbl_80194530 +lbl_80194494: +/* 80194494 001913F4 C0 02 A6 40 */ lfs f0, lbl_805AC360@sda21(r2) +/* 80194498 001913F8 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 8019449C 001913FC 40 80 00 78 */ bge lbl_80194514 +/* 801944A0 00191400 38 00 00 03 */ li r0, 3 +/* 801944A4 00191404 3C 60 80 3D */ lis r3, lbl_803D0E38@ha +/* 801944A8 00191408 90 1D 00 6C */ stw r0, 0x6c(r29) +/* 801944AC 0019140C 38 83 0E 38 */ addi r4, r3, lbl_803D0E38@l +/* 801944B0 00191410 80 7D 00 04 */ lwz r3, 4(r29) +/* 801944B4 00191414 80 1D 00 08 */ lwz r0, 8(r29) +/* 801944B8 00191418 54 65 20 36 */ slwi r5, r3, 4 +/* 801944BC 0019141C 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 801944C0 00191420 7C 84 2A 14 */ add r4, r4, r5 +/* 801944C4 00191424 54 00 10 3A */ slwi r0, r0, 2 +/* 801944C8 00191428 7C 84 00 2E */ lwzx r4, r4, r0 +/* 801944CC 0019142C 48 1C 22 31 */ bl GetString__12CStringTableCFi +/* 801944D0 00191430 7C 64 1B 78 */ mr r4, r3 +/* 801944D4 00191434 38 61 00 0C */ addi r3, r1, 0xc +/* 801944D8 00191438 4B E8 15 19 */ bl wstring_l__4rstlFPCw +/* 801944DC 0019143C 80 7D 00 20 */ lwz r3, 0x20(r29) +/* 801944E0 00191440 38 81 00 0C */ addi r4, r1, 0xc +/* 801944E4 00191444 38 A0 00 00 */ li r5, 0 +/* 801944E8 00191448 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 801944EC 0019144C 48 13 53 99 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801944F0 00191450 38 61 00 0C */ addi r3, r1, 0xc +/* 801944F4 00191454 48 1A 8C 41 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801944F8 00191458 80 7D 00 20 */ lwz r3, 0x20(r29) +/* 801944FC 0019145C 38 80 00 01 */ li r4, 1 +/* 80194500 00191460 C0 22 A6 5C */ lfs f1, lbl_805AC37C@sda21(r2) +/* 80194504 00191464 C0 42 A6 60 */ lfs f2, lbl_805AC380@sda21(r2) +/* 80194508 00191468 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 8019450C 0019146C 48 13 3C 0D */ bl SetTypeWriteEffectOptions__15CGuiTextSupportFbff +/* 80194510 00191470 48 00 00 20 */ b lbl_80194530 +lbl_80194514: +/* 80194514 00191474 80 1D 00 6C */ lwz r0, 0x6c(r29) +/* 80194518 00191478 2C 00 00 01 */ cmpwi r0, 1 +/* 8019451C 0019147C 41 82 00 0C */ beq lbl_80194528 +/* 80194520 00191480 C0 1D 00 7C */ lfs f0, 0x7c(r29) +/* 80194524 00191484 D0 1D 00 78 */ stfs f0, 0x78(r29) +lbl_80194528: +/* 80194528 00191488 38 00 00 01 */ li r0, 1 +/* 8019452C 0019148C 90 1D 00 6C */ stw r0, 0x6c(r29) +lbl_80194530: +/* 80194530 00191490 88 1D 00 14 */ lbz r0, 0x14(r29) +/* 80194534 00191494 38 60 00 01 */ li r3, 1 +/* 80194538 00191498 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 8019453C 0019149C 98 1D 00 14 */ stb r0, 0x14(r29) +/* 80194540 001914A0 93 DD 00 08 */ stw r30, 8(r29) +/* 80194544 001914A4 93 FD 00 0C */ stw r31, 0xc(r29) +/* 80194548 001914A8 D3 FD 00 10 */ stfs f31, 0x10(r29) +lbl_8019454C: +/* 8019454C 001914AC E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 80194550 001914B0 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80194554 001914B4 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 80194558 001914B8 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8019455C 001914BC 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80194560 001914C0 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 80194564 001914C4 7C 08 03 A6 */ mtlr r0 +/* 80194568 001914C8 38 21 00 40 */ addi r1, r1, 0x40 +/* 8019456C 001914CC 4E 80 00 20 */ blr + +.global "__ct__17CHudVisorBeamMenuFR9CGuiFrameQ217CHudVisorBeamMenu14EVisorBeamMenuRCQ24rstl20reserved_vector" +"__ct__17CHudVisorBeamMenuFR9CGuiFrameQ217CHudVisorBeamMenu14EVisorBeamMenuRCQ24rstl20reserved_vector": +/* 80194570 001914D0 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80194574 001914D4 7C 08 02 A6 */ mflr r0 +/* 80194578 001914D8 90 01 00 64 */ stw r0, 0x64(r1) +/* 8019457C 001914DC DB E1 00 50 */ stfd f31, 0x50(r1) +/* 80194580 001914E0 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 80194584 001914E4 BE E1 00 2C */ stmw r23, 0x2c(r1) +/* 80194588 001914E8 7C 9D 23 78 */ mr r29, r4 +/* 8019458C 001914EC 7C 7C 1B 78 */ mr r28, r3 +/* 80194590 001914F0 93 A3 00 00 */ stw r29, 0(r3) +/* 80194594 001914F4 38 E0 00 00 */ li r7, 0 +/* 80194598 001914F8 C0 22 A6 40 */ lfs f1, lbl_805AC360@sda21(r2) +/* 8019459C 001914FC 38 80 00 01 */ li r4, 1 +/* 801945A0 00191500 90 A3 00 04 */ stw r5, 4(r3) +/* 801945A4 00191504 35 1C 00 2C */ addic. r8, r28, 0x2c +/* 801945A8 00191508 38 00 00 04 */ li r0, 4 +/* 801945AC 0019150C C0 02 A6 44 */ lfs f0, lbl_805AC364@sda21(r2) +/* 801945B0 00191510 90 E3 00 08 */ stw r7, 8(r3) +/* 801945B4 00191514 7C DE 33 78 */ mr r30, r6 +/* 801945B8 00191518 90 E3 00 0C */ stw r7, 0xc(r3) +/* 801945BC 0019151C D0 23 00 10 */ stfs f1, 0x10(r3) +/* 801945C0 00191520 88 63 00 14 */ lbz r3, 0x14(r3) +/* 801945C4 00191524 50 83 3E 30 */ rlwimi r3, r4, 7, 0x18, 0x18 +/* 801945C8 00191528 98 7C 00 14 */ stb r3, 0x14(r28) +/* 801945CC 0019152C 88 7C 00 14 */ lbz r3, 0x14(r28) +/* 801945D0 00191530 50 83 36 72 */ rlwimi r3, r4, 6, 0x19, 0x19 +/* 801945D4 00191534 98 7C 00 14 */ stb r3, 0x14(r28) +/* 801945D8 00191538 88 7C 00 14 */ lbz r3, 0x14(r28) +/* 801945DC 0019153C 50 83 2E B4 */ rlwimi r3, r4, 5, 0x1a, 0x1a +/* 801945E0 00191540 98 7C 00 14 */ stb r3, 0x14(r28) +/* 801945E4 00191544 90 1C 00 28 */ stw r0, 0x28(r28) +/* 801945E8 00191548 41 82 00 14 */ beq lbl_801945FC +/* 801945EC 0019154C 90 E8 00 00 */ stw r7, 0(r8) +/* 801945F0 00191550 90 E8 00 04 */ stw r7, 4(r8) +/* 801945F4 00191554 D0 08 00 08 */ stfs f0, 8(r8) +/* 801945F8 00191558 D0 08 00 0C */ stfs f0, 0xc(r8) +lbl_801945FC: +/* 801945FC 0019155C 35 08 00 10 */ addic. r8, r8, 0x10 +/* 80194600 00191560 41 82 00 14 */ beq lbl_80194614 +/* 80194604 00191564 90 E8 00 00 */ stw r7, 0(r8) +/* 80194608 00191568 90 E8 00 04 */ stw r7, 4(r8) +/* 8019460C 0019156C D0 08 00 08 */ stfs f0, 8(r8) +/* 80194610 00191570 D0 08 00 0C */ stfs f0, 0xc(r8) +lbl_80194614: +/* 80194614 00191574 35 08 00 10 */ addic. r8, r8, 0x10 +/* 80194618 00191578 41 82 00 14 */ beq lbl_8019462C +/* 8019461C 0019157C 90 E8 00 00 */ stw r7, 0(r8) +/* 80194620 00191580 90 E8 00 04 */ stw r7, 4(r8) +/* 80194624 00191584 D0 08 00 08 */ stfs f0, 8(r8) +/* 80194628 00191588 D0 08 00 0C */ stfs f0, 0xc(r8) +lbl_8019462C: +/* 8019462C 0019158C 35 08 00 10 */ addic. r8, r8, 0x10 +/* 80194630 00191590 41 82 00 14 */ beq lbl_80194644 +/* 80194634 00191594 90 E8 00 00 */ stw r7, 0(r8) +/* 80194638 00191598 90 E8 00 04 */ stw r7, 4(r8) +/* 8019463C 0019159C D0 08 00 08 */ stfs f0, 8(r8) +/* 80194640 001915A0 D0 08 00 0C */ stfs f0, 0xc(r8) +lbl_80194644: +/* 80194644 001915A4 38 00 00 01 */ li r0, 1 +/* 80194648 001915A8 C0 22 A6 58 */ lfs f1, lbl_805AC378@sda21(r2) +/* 8019464C 001915AC 90 1C 00 6C */ stw r0, 0x6c(r28) +/* 80194650 001915B0 C0 02 A6 44 */ lfs f0, lbl_805AC364@sda21(r2) +/* 80194654 001915B4 D0 3C 00 70 */ stfs f1, 0x70(r28) +/* 80194658 001915B8 D0 3C 00 74 */ stfs f1, 0x74(r28) +/* 8019465C 001915BC D0 1C 00 78 */ stfs f0, 0x78(r28) +/* 80194660 001915C0 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) +/* 80194664 001915C4 C0 03 00 C0 */ lfs f0, 0xc0(r3) +/* 80194668 001915C8 D0 1C 00 7C */ stfs f0, 0x7c(r28) +/* 8019466C 001915CC 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) +/* 80194670 001915D0 88 1C 00 80 */ lbz r0, 0x80(r28) +/* 80194674 001915D4 88 63 01 E4 */ lbz r3, 0x1e4(r3) +/* 80194678 001915D8 50 60 1E 30 */ rlwimi r0, r3, 3, 0x18, 0x18 +/* 8019467C 001915DC 98 1C 00 80 */ stb r0, 0x80(r28) +/* 80194680 001915E0 88 1C 00 80 */ lbz r0, 0x80(r28) +/* 80194684 001915E4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80194688 001915E8 41 82 00 10 */ beq lbl_80194698 +/* 8019468C 001915EC 80 1C 00 04 */ lwz r0, 4(r28) +/* 80194690 001915F0 20 00 00 01 */ subfic r0, r0, 1 +/* 80194694 001915F4 48 00 00 08 */ b lbl_8019469C +lbl_80194698: +/* 80194698 001915F8 80 1C 00 04 */ lwz r0, 4(r28) +lbl_8019469C: +/* 8019469C 001915FC 54 00 10 3A */ slwi r0, r0, 2 +/* 801946A0 00191600 38 62 A6 08 */ addi r3, r2, lbl_805AC328@sda21 +/* 801946A4 00191604 7C 83 00 2E */ lwzx r4, r3, r0 +/* 801946A8 00191608 7F A3 EB 78 */ mr r3, r29 +/* 801946AC 0019160C 48 12 DA A9 */ bl FindWidget__9CGuiFrameCFPCc +/* 801946B0 00191610 90 7C 00 20 */ stw r3, 0x20(r28) +/* 801946B4 00191614 88 1C 00 80 */ lbz r0, 0x80(r28) +/* 801946B8 00191618 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801946BC 0019161C 41 82 00 10 */ beq lbl_801946CC +/* 801946C0 00191620 80 1C 00 04 */ lwz r0, 4(r28) +/* 801946C4 00191624 20 00 00 01 */ subfic r0, r0, 1 +/* 801946C8 00191628 48 00 00 08 */ b lbl_801946D0 +lbl_801946CC: +/* 801946CC 0019162C 80 1C 00 04 */ lwz r0, 4(r28) +lbl_801946D0: +/* 801946D0 00191630 54 00 10 3A */ slwi r0, r0, 2 +/* 801946D4 00191634 38 62 A6 10 */ addi r3, r2, lbl_805AC330@sda21 +/* 801946D8 00191638 7C 83 00 2E */ lwzx r4, r3, r0 +/* 801946DC 0019163C 7F A3 EB 78 */ mr r3, r29 +/* 801946E0 00191640 48 12 DA 75 */ bl FindWidget__9CGuiFrameCFPCc +/* 801946E4 00191644 90 7C 00 1C */ stw r3, 0x1c(r28) +/* 801946E8 00191648 88 1C 00 80 */ lbz r0, 0x80(r28) +/* 801946EC 0019164C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801946F0 00191650 41 82 00 10 */ beq lbl_80194700 +/* 801946F4 00191654 80 1C 00 04 */ lwz r0, 4(r28) +/* 801946F8 00191658 20 00 00 01 */ subfic r0, r0, 1 +/* 801946FC 0019165C 48 00 00 08 */ b lbl_80194704 +lbl_80194700: +/* 80194700 00191660 80 1C 00 04 */ lwz r0, 4(r28) +lbl_80194704: +/* 80194704 00191664 54 00 10 3A */ slwi r0, r0, 2 +/* 80194708 00191668 38 62 A6 00 */ addi r3, r2, lbl_805AC320@sda21 +/* 8019470C 0019166C 7C 83 00 2E */ lwzx r4, r3, r0 +/* 80194710 00191670 7F A3 EB 78 */ mr r3, r29 +/* 80194714 00191674 48 12 DA 41 */ bl FindWidget__9CGuiFrameCFPCc +/* 80194718 00191678 90 7C 00 18 */ stw r3, 0x18(r28) +/* 8019471C 0019167C 3C 60 80 3D */ lis r3, lbl_803D0E58@ha +/* 80194720 00191680 38 63 0E 58 */ addi r3, r3, lbl_803D0E58@l +/* 80194724 00191684 80 1C 00 04 */ lwz r0, 4(r28) +/* 80194728 00191688 38 63 00 A7 */ addi r3, r3, 0xa7 +/* 8019472C 0019168C 2C 00 00 00 */ cmpwi r0, 0 +/* 80194730 00191690 40 82 00 0C */ bne lbl_8019473C +/* 80194734 00191694 80 82 A6 18 */ lwz r4, lbl_805AC338@sda21(r2) +/* 80194738 00191698 48 00 00 08 */ b lbl_80194740 +lbl_8019473C: +/* 8019473C 0019169C 80 82 A6 1C */ lwz r4, lbl_805AC33C@sda21(r2) +lbl_80194740: +/* 80194740 001916A0 80 A2 A6 28 */ lwz r5, lbl_805AC348@sda21(r2) +/* 80194744 001916A4 4C C6 31 82 */ crclr 6 +/* 80194748 001916A8 48 14 1A 69 */ bl Stringize__7CBasicsFPCce +/* 8019474C 001916AC 7C 60 1B 78 */ mr r0, r3 +/* 80194750 001916B0 7F A3 EB 78 */ mr r3, r29 +/* 80194754 001916B4 7C 04 03 78 */ mr r4, r0 +/* 80194758 001916B8 48 12 D9 FD */ bl FindWidget__9CGuiFrameCFPCc +/* 8019475C 001916BC 3C 80 80 3D */ lis r4, lbl_803D0E58@ha +/* 80194760 001916C0 90 7C 00 24 */ stw r3, 0x24(r28) +/* 80194764 001916C4 3B 44 0E 58 */ addi r26, r4, lbl_803D0E58@l +/* 80194768 001916C8 3B E0 00 00 */ li r31, 0 +/* 8019476C 001916CC 3A E0 00 00 */ li r23, 0 +lbl_80194770: +/* 80194770 001916D0 80 1C 00 04 */ lwz r0, 4(r28) +/* 80194774 001916D4 2C 00 00 00 */ cmpwi r0, 0 +/* 80194778 001916D8 40 82 00 0C */ bne lbl_80194784 +/* 8019477C 001916DC 83 22 A6 18 */ lwz r25, lbl_805AC338@sda21(r2) +/* 80194780 001916E0 48 00 00 08 */ b lbl_80194788 +lbl_80194784: +/* 80194784 001916E4 83 22 A6 1C */ lwz r25, lbl_805AC33C@sda21(r2) +lbl_80194788: +/* 80194788 001916E8 2C 00 00 00 */ cmpwi r0, 0 +/* 8019478C 001916EC 80 A2 A6 20 */ lwz r5, lbl_805AC340@sda21(r2) +/* 80194790 001916F0 7F 24 CB 78 */ mr r4, r25 +/* 80194794 001916F4 38 7A 00 AC */ addi r3, r26, 0xac +/* 80194798 001916F8 3B 62 A6 34 */ addi r27, r2, lbl_805AC354@sda21 +/* 8019479C 001916FC 40 82 00 08 */ bne lbl_801947A4 +/* 801947A0 00191700 3B 62 A6 2C */ addi r27, r2, lbl_805AC34C@sda21 +lbl_801947A4: +/* 801947A4 00191704 7C DB F8 AE */ lbzx r6, r27, r31 +/* 801947A8 00191708 7C C6 07 74 */ extsb r6, r6 +/* 801947AC 0019170C 4C C6 31 82 */ crclr 6 +/* 801947B0 00191710 48 14 1A 01 */ bl Stringize__7CBasicsFPCce +/* 801947B4 00191714 7C 60 1B 78 */ mr r0, r3 +/* 801947B8 00191718 7F A3 EB 78 */ mr r3, r29 +/* 801947BC 0019171C 7C 04 03 78 */ mr r4, r0 +/* 801947C0 00191720 7F 1C BA 14 */ add r24, r28, r23 +/* 801947C4 00191724 48 12 D9 91 */ bl FindWidget__9CGuiFrameCFPCc +/* 801947C8 00191728 90 78 00 2C */ stw r3, 0x2c(r24) +/* 801947CC 0019172C 7F 24 CB 78 */ mr r4, r25 +/* 801947D0 00191730 80 A2 A6 24 */ lwz r5, lbl_805AC344@sda21(r2) +/* 801947D4 00191734 38 7A 00 AC */ addi r3, r26, 0xac +/* 801947D8 00191738 7C DB F8 AE */ lbzx r6, r27, r31 +/* 801947DC 0019173C 7C C6 07 74 */ extsb r6, r6 +/* 801947E0 00191740 4C C6 31 82 */ crclr 6 +/* 801947E4 00191744 48 14 19 CD */ bl Stringize__7CBasicsFPCce +/* 801947E8 00191748 7C 60 1B 78 */ mr r0, r3 +/* 801947EC 0019174C 7F A3 EB 78 */ mr r3, r29 +/* 801947F0 00191750 7C 04 03 78 */ mr r4, r0 +/* 801947F4 00191754 48 12 D9 61 */ bl FindWidget__9CGuiFrameCFPCc +/* 801947F8 00191758 90 78 00 30 */ stw r3, 0x30(r24) +/* 801947FC 0019175C 7C 7E FA 14 */ add r3, r30, r31 +/* 80194800 00191760 88 03 00 04 */ lbz r0, 4(r3) +/* 80194804 00191764 28 00 00 00 */ cmplwi r0, 0 +/* 80194808 00191768 41 82 00 0C */ beq lbl_80194814 +/* 8019480C 0019176C C0 02 A6 40 */ lfs f0, lbl_805AC360@sda21(r2) +/* 80194810 00191770 48 00 00 08 */ b lbl_80194818 +lbl_80194814: +/* 80194814 00191774 C0 02 A6 44 */ lfs f0, lbl_805AC364@sda21(r2) +lbl_80194818: +/* 80194818 00191778 3B FF 00 01 */ addi r31, r31, 1 +/* 8019481C 0019177C 7C 7C BA 14 */ add r3, r28, r23 +/* 80194820 00191780 2C 1F 00 04 */ cmpwi r31, 4 +/* 80194824 00191784 D0 03 00 38 */ stfs f0, 0x38(r3) +/* 80194828 00191788 3A F7 00 10 */ addi r23, r23, 0x10 +/* 8019482C 0019178C 41 80 FF 44 */ blt lbl_80194770 +/* 80194830 00191790 80 1C 00 04 */ lwz r0, 4(r28) +/* 80194834 00191794 2C 00 00 00 */ cmpwi r0, 0 +/* 80194838 00191798 40 82 00 30 */ bne lbl_80194868 +/* 8019483C 0019179C 80 7C 00 20 */ lwz r3, 0x20(r28) +/* 80194840 001917A0 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80194844 001917A4 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80194848 001917A8 38 84 00 4C */ addi r4, r4, 0x4c +/* 8019484C 001917AC 48 13 4E 1D */ bl SetFontColor__15CGuiTextSupportFRC6CColor +/* 80194850 001917B0 80 7C 00 20 */ lwz r3, 0x20(r28) +/* 80194854 001917B4 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80194858 001917B8 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 8019485C 001917BC 38 84 00 50 */ addi r4, r4, 0x50 +/* 80194860 001917C0 48 13 4D B9 */ bl SetOutlineColor__15CGuiTextSupportFRC6CColor +/* 80194864 001917C4 48 00 00 2C */ b lbl_80194890 +lbl_80194868: +/* 80194868 001917C8 80 7C 00 20 */ lwz r3, 0x20(r28) +/* 8019486C 001917CC 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80194870 001917D0 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80194874 001917D4 38 84 00 54 */ addi r4, r4, 0x54 +/* 80194878 001917D8 48 13 4D F1 */ bl SetFontColor__15CGuiTextSupportFRC6CColor +/* 8019487C 001917DC 80 7C 00 20 */ lwz r3, 0x20(r28) +/* 80194880 001917E0 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80194884 001917E4 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80194888 001917E8 38 84 00 58 */ addi r4, r4, 0x58 +/* 8019488C 001917EC 48 13 4D 8D */ bl SetOutlineColor__15CGuiTextSupportFRC6CColor +lbl_80194890: +/* 80194890 001917F0 48 1B 57 1D */ bl White__6CColorFv +/* 80194894 001917F4 C3 E2 A6 44 */ lfs f31, lbl_805AC364@sda21(r2) +/* 80194898 001917F8 F3 E1 A0 08 */ psq_st f31, 8(r1), 1, qr2 +/* 8019489C 001917FC 38 81 00 0C */ addi r4, r1, 0xc +/* 801948A0 00191800 80 63 00 00 */ lwz r3, 0(r3) +/* 801948A4 00191804 88 01 00 08 */ lbz r0, 8(r1) +/* 801948A8 00191808 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 801948AC 0019180C 90 01 00 0C */ stw r0, 0xc(r1) +/* 801948B0 00191810 80 7C 00 1C */ lwz r3, 0x1c(r28) +/* 801948B4 00191814 48 13 5F B9 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 801948B8 00191818 80 BC 00 04 */ lwz r5, 4(r28) +/* 801948BC 0019181C 3C 60 80 3D */ lis r3, lbl_803D0E38@ha +/* 801948C0 00191820 80 1C 00 08 */ lwz r0, 8(r28) +/* 801948C4 00191824 38 83 0E 38 */ addi r4, r3, lbl_803D0E38@l +/* 801948C8 00191828 54 A5 20 36 */ slwi r5, r5, 4 +/* 801948CC 0019182C 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 801948D0 00191830 7C 84 2A 14 */ add r4, r4, r5 +/* 801948D4 00191834 54 00 10 3A */ slwi r0, r0, 2 +/* 801948D8 00191838 7C 84 00 2E */ lwzx r4, r4, r0 +/* 801948DC 0019183C 48 1C 1E 21 */ bl GetString__12CStringTableCFi +/* 801948E0 00191840 7C 64 1B 78 */ mr r4, r3 +/* 801948E4 00191844 38 61 00 10 */ addi r3, r1, 0x10 +/* 801948E8 00191848 4B E8 11 09 */ bl wstring_l__4rstlFPCw +/* 801948EC 0019184C 80 7C 00 20 */ lwz r3, 0x20(r28) +/* 801948F0 00191850 38 81 00 10 */ addi r4, r1, 0x10 +/* 801948F4 00191854 38 A0 00 00 */ li r5, 0 +/* 801948F8 00191858 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 801948FC 0019185C 48 13 4F 89 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80194900 00191860 38 61 00 10 */ addi r3, r1, 0x10 +/* 80194904 00191864 48 1A 88 31 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80194908 00191868 3B 00 00 00 */ li r24, 0 +/* 8019490C 0019186C 3A E0 00 00 */ li r23, 0 +lbl_80194910: +/* 80194910 00191870 7C 7C BA 14 */ add r3, r28, r23 +/* 80194914 00191874 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80194918 00191878 80 63 00 2C */ lwz r3, 0x2c(r3) +/* 8019491C 0019187C 38 84 00 B0 */ addi r4, r4, 0xb0 +/* 80194920 00191880 48 13 5F 4D */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80194924 00191884 7C 7C BA 14 */ add r3, r28, r23 +/* 80194928 00191888 C0 22 A6 40 */ lfs f1, lbl_805AC360@sda21(r2) +/* 8019492C 0019188C 80 A3 00 2C */ lwz r5, 0x2c(r3) +/* 80194930 00191890 7F 83 E3 78 */ mr r3, r28 +/* 80194934 00191894 7F 04 C3 78 */ mr r4, r24 +/* 80194938 00191898 4B FF EE 81 */ bl UpdateMenuWidgetTransform__17CHudVisorBeamMenuFiR10CGuiWidgetf +/* 8019493C 0019189C 3B 18 00 01 */ addi r24, r24, 1 +/* 80194940 001918A0 3A F7 00 10 */ addi r23, r23, 0x10 +/* 80194944 001918A4 2C 18 00 04 */ cmpwi r24, 4 +/* 80194948 001918A8 41 80 FF C8 */ blt lbl_80194910 +/* 8019494C 001918AC C0 22 A6 44 */ lfs f1, lbl_805AC364@sda21(r2) +/* 80194950 001918B0 7F 83 E3 78 */ mr r3, r28 +/* 80194954 001918B4 38 80 00 01 */ li r4, 1 +/* 80194958 001918B8 4B FF F1 09 */ bl Update__17CHudVisorBeamMenuFfb +/* 8019495C 001918BC 7F 83 E3 78 */ mr r3, r28 +/* 80194960 001918C0 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 +/* 80194964 001918C4 CB E1 00 50 */ lfd f31, 0x50(r1) +/* 80194968 001918C8 BA E1 00 2C */ lmw r23, 0x2c(r1) +/* 8019496C 001918CC 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80194970 001918D0 7C 08 03 A6 */ mtlr r0 +/* 80194974 001918D4 38 21 00 60 */ addi r1, r1, 0x60 +/* 80194978 001918D8 4E 80 00 20 */ blr + +.global __dt__24CHudDecoInterfaceThermalFv +__dt__24CHudDecoInterfaceThermalFv: +/* 8019497C 001918DC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80194980 001918E0 7C 08 02 A6 */ mflr r0 +/* 80194984 001918E4 90 01 00 24 */ stw r0, 0x24(r1) +/* 80194988 001918E8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8019498C 001918EC 7C 9F 23 78 */ mr r31, r4 +/* 80194990 001918F0 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80194994 001918F4 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80194998 001918F8 41 82 00 7C */ beq lbl_80194A14 +/* 8019499C 001918FC 3C 60 80 3E */ lis r3, lbl_803E44C8@ha +/* 801949A0 00191900 34 1E 00 84 */ addic. r0, r30, 0x84 +/* 801949A4 00191904 38 03 44 C8 */ addi r0, r3, lbl_803E44C8@l +/* 801949A8 00191908 90 1E 00 00 */ stw r0, 0(r30) +/* 801949AC 0019190C 41 82 00 44 */ beq lbl_801949F0 +/* 801949B0 00191910 80 1E 00 88 */ lwz r0, 0x88(r30) +/* 801949B4 00191914 80 7E 00 90 */ lwz r3, 0x90(r30) +/* 801949B8 00191918 1C 00 00 34 */ mulli r0, r0, 0x34 +/* 801949BC 0019191C 90 61 00 0C */ stw r3, 0xc(r1) +/* 801949C0 00191920 7C 64 1B 78 */ mr r4, r3 +/* 801949C4 00191924 7C 03 02 14 */ add r0, r3, r0 +/* 801949C8 00191928 90 61 00 08 */ stw r3, 8(r1) +/* 801949CC 0019192C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801949D0 00191930 90 01 00 10 */ stw r0, 0x10(r1) +/* 801949D4 00191934 48 00 00 08 */ b lbl_801949DC +lbl_801949D8: +/* 801949D8 00191938 38 84 00 34 */ addi r4, r4, 0x34 +lbl_801949DC: +/* 801949DC 0019193C 7C 04 00 40 */ cmplw r4, r0 +/* 801949E0 00191940 40 82 FF F8 */ bne lbl_801949D8 +/* 801949E4 00191944 28 03 00 00 */ cmplwi r3, 0 +/* 801949E8 00191948 41 82 00 08 */ beq lbl_801949F0 +/* 801949EC 0019194C 48 18 0F 45 */ bl Free__7CMemoryFPCv +lbl_801949F0: +/* 801949F0 00191950 28 1E 00 00 */ cmplwi r30, 0 +/* 801949F4 00191954 41 82 00 10 */ beq lbl_80194A04 +/* 801949F8 00191958 3C 60 80 3E */ lis r3, lbl_803DA2A4@ha +/* 801949FC 0019195C 38 03 A2 A4 */ addi r0, r3, lbl_803DA2A4@l +/* 80194A00 00191960 90 1E 00 00 */ stw r0, 0(r30) +lbl_80194A04: +/* 80194A04 00191964 7F E0 07 35 */ extsh. r0, r31 +/* 80194A08 00191968 40 81 00 0C */ ble lbl_80194A14 +/* 80194A0C 0019196C 7F C3 F3 78 */ mr r3, r30 +/* 80194A10 00191970 48 18 0F 21 */ bl Free__7CMemoryFPCv +lbl_80194A14: +/* 80194A14 00191974 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80194A18 00191978 7F C3 F3 78 */ mr r3, r30 +/* 80194A1C 0019197C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80194A20 00191980 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80194A24 00191984 7C 08 03 A6 */ mtlr r0 +/* 80194A28 00191988 38 21 00 20 */ addi r1, r1, 0x20 +/* 80194A2C 0019198C 4E 80 00 20 */ blr + +.global UpdateCameraDebugSettings__24CHudDecoInterfaceThermalFfff +UpdateCameraDebugSettings__24CHudDecoInterfaceThermalFfff: +/* 80194A30 00191990 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80194A34 00191994 C0 02 A6 6C */ lfs f0, lbl_805AC38C@sda21(r2) +/* 80194A38 00191998 81 43 00 74 */ lwz r10, 0x74(r3) +/* 80194A3C 0019199C 81 2A 00 BC */ lwz r9, 0xbc(r10) +/* 80194A40 001919A0 81 0A 00 C0 */ lwz r8, 0xc0(r10) +/* 80194A44 001919A4 91 21 00 20 */ stw r9, 0x20(r1) +/* 80194A48 001919A8 80 EA 00 C4 */ lwz r7, 0xc4(r10) +/* 80194A4C 001919AC D0 21 00 20 */ stfs f1, 0x20(r1) +/* 80194A50 001919B0 80 CA 00 C8 */ lwz r6, 0xc8(r10) +/* 80194A54 001919B4 80 AA 00 CC */ lwz r5, 0xcc(r10) +/* 80194A58 001919B8 80 8A 00 D0 */ lwz r4, 0xd0(r10) +/* 80194A5C 001919BC 80 01 00 20 */ lwz r0, 0x20(r1) +/* 80194A60 001919C0 91 21 00 08 */ stw r9, 8(r1) +/* 80194A64 001919C4 90 0A 00 BC */ stw r0, 0xbc(r10) +/* 80194A68 001919C8 91 0A 00 C0 */ stw r8, 0xc0(r10) +/* 80194A6C 001919CC 90 EA 00 C4 */ stw r7, 0xc4(r10) +/* 80194A70 001919D0 90 CA 00 C8 */ stw r6, 0xc8(r10) +/* 80194A74 001919D4 90 AA 00 CC */ stw r5, 0xcc(r10) +/* 80194A78 001919D8 90 8A 00 D0 */ stw r4, 0xd0(r10) +/* 80194A7C 001919DC D0 03 00 2C */ stfs f0, 0x2c(r3) +/* 80194A80 001919E0 D0 43 00 30 */ stfs f2, 0x30(r3) +/* 80194A84 001919E4 91 01 00 0C */ stw r8, 0xc(r1) +/* 80194A88 001919E8 90 E1 00 10 */ stw r7, 0x10(r1) +/* 80194A8C 001919EC 90 C1 00 14 */ stw r6, 0x14(r1) +/* 80194A90 001919F0 90 A1 00 18 */ stw r5, 0x18(r1) +/* 80194A94 001919F4 90 81 00 1C */ stw r4, 0x1c(r1) +/* 80194A98 001919F8 91 01 00 24 */ stw r8, 0x24(r1) +/* 80194A9C 001919FC 90 E1 00 28 */ stw r7, 0x28(r1) +/* 80194AA0 00191A00 90 C1 00 2C */ stw r6, 0x2c(r1) +/* 80194AA4 00191A04 90 A1 00 30 */ stw r5, 0x30(r1) +/* 80194AA8 00191A08 90 81 00 34 */ stw r4, 0x34(r1) +/* 80194AAC 00191A0C D0 63 00 34 */ stfs f3, 0x34(r3) +/* 80194AB0 00191A10 38 21 00 40 */ addi r1, r1, 0x40 +/* 80194AB4 00191A14 4E 80 00 20 */ blr + +.global Update__24CHudDecoInterfaceThermalFfRC13CStateManager +Update__24CHudDecoInterfaceThermalFfRC13CStateManager: +/* 80194AB8 00191A18 94 21 FE E0 */ stwu r1, -0x120(r1) +/* 80194ABC 00191A1C 7C 08 02 A6 */ mflr r0 +/* 80194AC0 00191A20 90 01 01 24 */ stw r0, 0x124(r1) +/* 80194AC4 00191A24 DB E1 01 10 */ stfd f31, 0x110(r1) +/* 80194AC8 00191A28 F3 E1 01 18 */ psq_st f31, 280(r1), 0, qr0 +/* 80194ACC 00191A2C DB C1 01 00 */ stfd f30, 0x100(r1) +/* 80194AD0 00191A30 F3 C1 01 08 */ psq_st f30, 264(r1), 0, qr0 +/* 80194AD4 00191A34 93 E1 00 FC */ stw r31, 0xfc(r1) +/* 80194AD8 00191A38 93 C1 00 F8 */ stw r30, 0xf8(r1) +/* 80194ADC 00191A3C 93 A1 00 F4 */ stw r29, 0xf4(r1) +/* 80194AE0 00191A40 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 80194AE4 00191A44 7C 7D 1B 78 */ mr r29, r3 +/* 80194AE8 00191A48 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80194AEC 00191A4C FF C0 08 90 */ fmr f30, f1 +/* 80194AF0 00191A50 A0 64 03 10 */ lhz r3, 0x310(r4) +/* 80194AF4 00191A54 C0 5D 00 68 */ lfs f2, 0x68(r29) +/* 80194AF8 00191A58 7C 03 00 40 */ cmplw r3, r0 +/* 80194AFC 00191A5C 41 82 00 34 */ beq lbl_80194B30 +/* 80194B00 00191A60 C0 22 A6 74 */ lfs f1, lbl_805AC394@sda21(r2) +/* 80194B04 00191A64 C0 0D 8F C8 */ lfs f0, lbl_805A7B88@sda21(r13) +/* 80194B08 00191A68 EC 21 17 BC */ fnmsubs f1, f1, f30, f2 +/* 80194B0C 00191A6C FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80194B10 00191A70 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 80194B14 00191A74 40 80 00 0C */ bge lbl_80194B20 +/* 80194B18 00191A78 38 61 00 14 */ addi r3, r1, 0x14 +/* 80194B1C 00191A7C 48 00 00 08 */ b lbl_80194B24 +lbl_80194B20: +/* 80194B20 00191A80 38 6D 8F C8 */ addi r3, r13, lbl_805A7B88@sda21 +lbl_80194B24: +/* 80194B24 00191A84 C0 03 00 00 */ lfs f0, 0(r3) +/* 80194B28 00191A88 D0 1D 00 68 */ stfs f0, 0x68(r29) +/* 80194B2C 00191A8C 48 00 00 30 */ b lbl_80194B5C +lbl_80194B30: +/* 80194B30 00191A90 C0 22 A6 74 */ lfs f1, lbl_805AC394@sda21(r2) +/* 80194B34 00191A94 C0 02 A6 70 */ lfs f0, lbl_805AC390@sda21(r2) +/* 80194B38 00191A98 EC 21 17 BA */ fmadds f1, f1, f30, f2 +/* 80194B3C 00191A9C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80194B40 00191AA0 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 80194B44 00191AA4 40 80 00 0C */ bge lbl_80194B50 +/* 80194B48 00191AA8 38 61 00 10 */ addi r3, r1, 0x10 +/* 80194B4C 00191AAC 48 00 00 08 */ b lbl_80194B54 +lbl_80194B50: +/* 80194B50 00191AB0 38 62 A6 70 */ addi r3, r2, lbl_805AC390@sda21 +lbl_80194B54: +/* 80194B54 00191AB4 C0 03 00 00 */ lfs f0, 0(r3) +/* 80194B58 00191AB8 D0 1D 00 68 */ stfs f0, 0x68(r29) +lbl_80194B5C: +/* 80194B5C 00191ABC C0 1D 00 68 */ lfs f0, 0x68(r29) +/* 80194B60 00191AC0 FC 02 00 00 */ fcmpu cr0, f2, f0 +/* 80194B64 00191AC4 41 82 00 5C */ beq lbl_80194BC0 +/* 80194B68 00191AC8 83 DD 00 90 */ lwz r30, 0x90(r29) +/* 80194B6C 00191ACC 48 00 00 3C */ b lbl_80194BA8 +lbl_80194B70: +/* 80194B70 00191AD0 C0 3D 00 68 */ lfs f1, 0x68(r29) +/* 80194B74 00191AD4 38 61 00 84 */ addi r3, r1, 0x84 +/* 80194B78 00191AD8 48 17 E6 C9 */ bl Scale__12CTransform4fFf +/* 80194B7C 00191ADC 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 80194B80 00191AE0 38 9E 00 04 */ addi r4, r30, 4 +/* 80194B84 00191AE4 38 A1 00 84 */ addi r5, r1, 0x84 +/* 80194B88 00191AE8 48 17 DD C9 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80194B8C 00191AEC 83 FE 00 00 */ lwz r31, 0(r30) +/* 80194B90 00191AF0 38 81 00 B4 */ addi r4, r1, 0xb4 +/* 80194B94 00191AF4 38 7F 00 04 */ addi r3, r31, 4 +/* 80194B98 00191AF8 48 17 DF A9 */ bl __as__12CTransform4fFRC12CTransform4f +/* 80194B9C 00191AFC 7F E3 FB 78 */ mr r3, r31 +/* 80194BA0 00191B00 48 12 FC 49 */ bl RecalculateTransforms__10CGuiObjectFv +/* 80194BA4 00191B04 3B DE 00 34 */ addi r30, r30, 0x34 +lbl_80194BA8: +/* 80194BA8 00191B08 80 1D 00 88 */ lwz r0, 0x88(r29) +/* 80194BAC 00191B0C 80 7D 00 90 */ lwz r3, 0x90(r29) +/* 80194BB0 00191B10 1C 00 00 34 */ mulli r0, r0, 0x34 +/* 80194BB4 00191B14 7C 03 02 14 */ add r0, r3, r0 +/* 80194BB8 00191B18 7C 1E 00 40 */ cmplw r30, r0 +/* 80194BBC 00191B1C 40 82 FF B4 */ bne lbl_80194B70 +lbl_80194BC0: +/* 80194BC0 00191B20 C0 3D 00 6C */ lfs f1, 0x6c(r29) +/* 80194BC4 00191B24 C0 02 A6 68 */ lfs f0, lbl_805AC388@sda21(r2) +/* 80194BC8 00191B28 EC 21 F0 2A */ fadds f1, f1, f30 +/* 80194BCC 00191B2C D0 3D 00 6C */ stfs f1, 0x6c(r29) +/* 80194BD0 00191B30 C0 3D 00 6C */ lfs f1, 0x6c(r29) +/* 80194BD4 00191B34 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80194BD8 00191B38 40 81 00 10 */ ble lbl_80194BE8 +/* 80194BDC 00191B3C C0 02 A6 78 */ lfs f0, lbl_805AC398@sda21(r2) +/* 80194BE0 00191B40 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80194BE4 00191B44 D0 1D 00 6C */ stfs f0, 0x6c(r29) +lbl_80194BE8: +/* 80194BE8 00191B48 C0 1D 00 6C */ lfs f0, 0x6c(r29) +/* 80194BEC 00191B4C FF C0 02 10 */ fabs f30, f0 +/* 80194BF0 00191B50 48 1B 53 BD */ bl White__6CColorFv +/* 80194BF4 00191B54 FC 00 F0 18 */ frsp f0, f30 +/* 80194BF8 00191B58 C0 22 A6 80 */ lfs f1, lbl_805AC3A0@sda21(r2) +/* 80194BFC 00191B5C C0 42 A6 7C */ lfs f2, lbl_805AC39C@sda21(r2) +/* 80194C00 00191B60 EC 01 08 3A */ fmadds f0, f1, f0, f1 +/* 80194C04 00191B64 EF E2 00 32 */ fmuls f31, f2, f0 +/* 80194C08 00191B68 F3 E1 A0 08 */ psq_st f31, 8(r1), 1, qr2 +/* 80194C0C 00191B6C 38 81 00 0C */ addi r4, r1, 0xc +/* 80194C10 00191B70 80 63 00 00 */ lwz r3, 0(r3) +/* 80194C14 00191B74 88 01 00 08 */ lbz r0, 8(r1) +/* 80194C18 00191B78 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 80194C1C 00191B7C 90 01 00 0C */ stw r0, 0xc(r1) +/* 80194C20 00191B80 80 7D 00 80 */ lwz r3, 0x80(r29) +/* 80194C24 00191B84 48 13 5C 49 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80194C28 00191B88 C0 3D 00 18 */ lfs f1, 0x18(r29) +/* 80194C2C 00191B8C 38 61 00 54 */ addi r3, r1, 0x54 +/* 80194C30 00191B90 C0 1D 00 24 */ lfs f0, 0x24(r29) +/* 80194C34 00191B94 38 9D 00 04 */ addi r4, r29, 4 +/* 80194C38 00191B98 C0 7D 00 1C */ lfs f3, 0x1c(r29) +/* 80194C3C 00191B9C 38 A1 00 18 */ addi r5, r1, 0x18 +/* 80194C40 00191BA0 C0 5D 00 28 */ lfs f2, 0x28(r29) +/* 80194C44 00191BA4 EC 81 00 2A */ fadds f4, f1, f0 +/* 80194C48 00191BA8 C0 3D 00 14 */ lfs f1, 0x14(r29) +/* 80194C4C 00191BAC 38 DD 00 2C */ addi r6, r29, 0x2c +/* 80194C50 00191BB0 C0 1D 00 20 */ lfs f0, 0x20(r29) +/* 80194C54 00191BB4 EC 43 10 2A */ fadds f2, f3, f2 +/* 80194C58 00191BB8 EC 01 00 2A */ fadds f0, f1, f0 +/* 80194C5C 00191BBC D0 81 00 1C */ stfs f4, 0x1c(r1) +/* 80194C60 00191BC0 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 80194C64 00191BC4 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 80194C68 00191BC8 4B ED 89 39 */ bl BuildFinalCameraTransform__9CSamusHudFRC11CQuaternionRC9CVector3fRC9CVector3f +/* 80194C6C 00191BCC 80 7D 00 74 */ lwz r3, 0x74(r29) +/* 80194C70 00191BD0 38 81 00 54 */ addi r4, r1, 0x54 +/* 80194C74 00191BD4 48 12 FA C5 */ bl SetO2WTransform__10CGuiObjectFRC12CTransform4f +/* 80194C78 00191BD8 38 61 00 24 */ addi r3, r1, 0x24 +/* 80194C7C 00191BDC 38 9D 00 38 */ addi r4, r29, 0x38 +/* 80194C80 00191BE0 38 BD 00 5C */ addi r5, r29, 0x5c +/* 80194C84 00191BE4 48 17 E5 F5 */ bl __ct__12CTransform4fFRC9CMatrix3fRC9CVector3f +/* 80194C88 00191BE8 83 FD 00 7C */ lwz r31, 0x7c(r29) +/* 80194C8C 00191BEC 38 81 00 24 */ addi r4, r1, 0x24 +/* 80194C90 00191BF0 38 7F 00 04 */ addi r3, r31, 4 +/* 80194C94 00191BF4 48 17 DE AD */ bl __as__12CTransform4fFRC12CTransform4f +/* 80194C98 00191BF8 7F E3 FB 78 */ mr r3, r31 +/* 80194C9C 00191BFC 48 12 FB 4D */ bl RecalculateTransforms__10CGuiObjectFv +/* 80194CA0 00191C00 E3 E1 01 18 */ psq_l f31, 280(r1), 0, qr0 +/* 80194CA4 00191C04 CB E1 01 10 */ lfd f31, 0x110(r1) +/* 80194CA8 00191C08 E3 C1 01 08 */ psq_l f30, 264(r1), 0, qr0 +/* 80194CAC 00191C0C CB C1 01 00 */ lfd f30, 0x100(r1) +/* 80194CB0 00191C10 83 E1 00 FC */ lwz r31, 0xfc(r1) +/* 80194CB4 00191C14 83 C1 00 F8 */ lwz r30, 0xf8(r1) +/* 80194CB8 00191C18 80 01 01 24 */ lwz r0, 0x124(r1) +/* 80194CBC 00191C1C 83 A1 00 F4 */ lwz r29, 0xf4(r1) +/* 80194CC0 00191C20 7C 08 03 A6 */ mtlr r0 +/* 80194CC4 00191C24 38 21 01 20 */ addi r1, r1, 0x120 +/* 80194CC8 00191C28 4E 80 00 20 */ blr + +.global SetDamageTransform__24CHudDecoInterfaceThermalFRC9CMatrix3fRC9CVector3f +SetDamageTransform__24CHudDecoInterfaceThermalFRC9CMatrix3fRC9CVector3f: +/* 80194CCC 00191C2C 4E 80 00 20 */ blr + +.global SetHudOffset__24CHudDecoInterfaceThermalFRC9CVector3f +SetHudOffset__24CHudDecoInterfaceThermalFRC9CVector3f: +/* 80194CD0 00191C30 C0 04 00 00 */ lfs f0, 0(r4) +/* 80194CD4 00191C34 D0 03 00 20 */ stfs f0, 0x20(r3) +/* 80194CD8 00191C38 C0 04 00 04 */ lfs f0, 4(r4) +/* 80194CDC 00191C3C D0 03 00 24 */ stfs f0, 0x24(r3) +/* 80194CE0 00191C40 C0 04 00 08 */ lfs f0, 8(r4) +/* 80194CE4 00191C44 D0 03 00 28 */ stfs f0, 0x28(r3) +/* 80194CE8 00191C48 4E 80 00 20 */ blr + +.global SetReticuleTransform__24CHudDecoInterfaceThermalFRC9CMatrix3f +SetReticuleTransform__24CHudDecoInterfaceThermalFRC9CMatrix3f: +/* 80194CEC 00191C4C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80194CF0 00191C50 7C 08 02 A6 */ mflr r0 +/* 80194CF4 00191C54 38 63 00 38 */ addi r3, r3, 0x38 +/* 80194CF8 00191C58 90 01 00 14 */ stw r0, 0x14(r1) +/* 80194CFC 00191C5C 48 17 B2 FD */ bl __as__9CMatrix3fFRC9CMatrix3f +/* 80194D00 00191C60 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80194D04 00191C64 7C 08 03 A6 */ mtlr r0 +/* 80194D08 00191C68 38 21 00 10 */ addi r1, r1, 0x10 +/* 80194D0C 00191C6C 4E 80 00 20 */ blr + +.global SetHudRotation__24CHudDecoInterfaceThermalFRC11CQuaternion +SetHudRotation__24CHudDecoInterfaceThermalFRC11CQuaternion: +/* 80194D10 00191C70 C0 04 00 00 */ lfs f0, 0(r4) +/* 80194D14 00191C74 D0 03 00 04 */ stfs f0, 4(r3) +/* 80194D18 00191C78 80 A4 00 04 */ lwz r5, 4(r4) +/* 80194D1C 00191C7C 80 04 00 08 */ lwz r0, 8(r4) +/* 80194D20 00191C80 90 A3 00 08 */ stw r5, 8(r3) +/* 80194D24 00191C84 90 03 00 0C */ stw r0, 0xc(r3) +/* 80194D28 00191C88 80 04 00 0C */ lwz r0, 0xc(r4) +/* 80194D2C 00191C8C 90 03 00 10 */ stw r0, 0x10(r3) +/* 80194D30 00191C90 4E 80 00 20 */ blr + +.global UpdateVisibility__24CHudDecoInterfaceThermalFv +UpdateVisibility__24CHudDecoInterfaceThermalFv: +/* 80194D34 00191C94 4E 80 00 20 */ blr + +.global UpdateHudAlpha__24CHudDecoInterfaceThermalFv +UpdateHudAlpha__24CHudDecoInterfaceThermalFv: +/* 80194D38 00191C98 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80194D3C 00191C9C 7C 08 02 A6 */ mflr r0 +/* 80194D40 00191CA0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80194D44 00191CA4 38 00 00 FF */ li r0, 0xff +/* 80194D48 00191CA8 38 81 00 08 */ addi r4, r1, 8 +/* 80194D4C 00191CAC 80 AD A0 80 */ lwz r5, gpGameState@sda21(r13) +/* 80194D50 00191CB0 80 A5 01 DC */ lwz r5, 0x1dc(r5) +/* 80194D54 00191CB4 98 01 00 08 */ stb r0, 8(r1) +/* 80194D58 00191CB8 98 01 00 09 */ stb r0, 9(r1) +/* 80194D5C 00191CBC 98 01 00 0A */ stb r0, 0xa(r1) +/* 80194D60 00191CC0 98 A1 00 0B */ stb r5, 0xb(r1) +/* 80194D64 00191CC4 80 63 00 78 */ lwz r3, 0x78(r3) +/* 80194D68 00191CC8 48 13 5B 05 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80194D6C 00191CCC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80194D70 00191CD0 7C 08 03 A6 */ mtlr r0 +/* 80194D74 00191CD4 38 21 00 10 */ addi r1, r1, 0x10 +/* 80194D78 00191CD8 4E 80 00 20 */ blr + +.global SetIsVisibleGame__24CHudDecoInterfaceThermalFb +SetIsVisibleGame__24CHudDecoInterfaceThermalFb: +/* 80194D7C 00191CDC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80194D80 00191CE0 7C 08 02 A6 */ mflr r0 +/* 80194D84 00191CE4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80194D88 00191CE8 88 03 00 70 */ lbz r0, 0x70(r3) +/* 80194D8C 00191CEC 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 80194D90 00191CF0 98 03 00 70 */ stb r0, 0x70(r3) +/* 80194D94 00191CF4 4B FF FF A1 */ bl UpdateVisibility__24CHudDecoInterfaceThermalFv +/* 80194D98 00191CF8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80194D9C 00191CFC 7C 08 03 A6 */ mtlr r0 +/* 80194DA0 00191D00 38 21 00 10 */ addi r1, r1, 0x10 +/* 80194DA4 00191D04 4E 80 00 20 */ blr + +.global SetIsVisibleDebug__24CHudDecoInterfaceThermalFb +SetIsVisibleDebug__24CHudDecoInterfaceThermalFb: +/* 80194DA8 00191D08 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80194DAC 00191D0C 7C 08 02 A6 */ mflr r0 +/* 80194DB0 00191D10 90 01 00 14 */ stw r0, 0x14(r1) +/* 80194DB4 00191D14 88 03 00 70 */ lbz r0, 0x70(r3) +/* 80194DB8 00191D18 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 80194DBC 00191D1C 98 03 00 70 */ stb r0, 0x70(r3) +/* 80194DC0 00191D20 4B FF FF 75 */ bl UpdateVisibility__24CHudDecoInterfaceThermalFv +/* 80194DC4 00191D24 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80194DC8 00191D28 7C 08 03 A6 */ mtlr r0 +/* 80194DCC 00191D2C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80194DD0 00191D30 4E 80 00 20 */ blr + +.global __ct__24CHudDecoInterfaceThermalFR9CGuiFrame +__ct__24CHudDecoInterfaceThermalFR9CGuiFrame: +/* 80194DD4 00191D34 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 80194DD8 00191D38 7C 08 02 A6 */ mflr r0 +/* 80194DDC 00191D3C 3C A0 80 3E */ lis r5, lbl_803DA2A4@ha +/* 80194DE0 00191D40 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 80194DE4 00191D44 38 05 A2 A4 */ addi r0, r5, lbl_803DA2A4@l +/* 80194DE8 00191D48 3C A0 80 5A */ lis r5, skZero3f@ha +/* 80194DEC 00191D4C BF 61 00 AC */ stmw r27, 0xac(r1) +/* 80194DF0 00191D50 7C 7D 1B 78 */ mr r29, r3 +/* 80194DF4 00191D54 3C 60 80 3E */ lis r3, lbl_803E44C8@ha +/* 80194DF8 00191D58 3B E5 66 A0 */ addi r31, r5, skZero3f@l +/* 80194DFC 00191D5C 7C 9E 23 78 */ mr r30, r4 +/* 80194E00 00191D60 90 1D 00 00 */ stw r0, 0(r29) +/* 80194E04 00191D64 38 03 44 C8 */ addi r0, r3, lbl_803E44C8@l +/* 80194E08 00191D68 3C 60 80 5A */ lis r3, lbl_805A6660@ha +/* 80194E0C 00191D6C 90 1D 00 00 */ stw r0, 0(r29) +/* 80194E10 00191D70 38 C3 66 60 */ addi r6, r3, lbl_805A6660@l +/* 80194E14 00191D74 3C 60 80 5A */ lis r3, lbl_805A65FC@ha +/* 80194E18 00191D78 C0 06 00 00 */ lfs f0, 0(r6) +/* 80194E1C 00191D7C 38 03 65 FC */ addi r0, r3, lbl_805A65FC@l +/* 80194E20 00191D80 38 7D 00 38 */ addi r3, r29, 0x38 +/* 80194E24 00191D84 D0 1D 00 04 */ stfs f0, 4(r29) +/* 80194E28 00191D88 7C 04 03 78 */ mr r4, r0 +/* 80194E2C 00191D8C C0 06 00 04 */ lfs f0, 4(r6) +/* 80194E30 00191D90 D0 1D 00 08 */ stfs f0, 8(r29) +/* 80194E34 00191D94 C0 06 00 08 */ lfs f0, 8(r6) +/* 80194E38 00191D98 D0 1D 00 0C */ stfs f0, 0xc(r29) +/* 80194E3C 00191D9C C0 06 00 0C */ lfs f0, 0xc(r6) +/* 80194E40 00191DA0 D0 1D 00 10 */ stfs f0, 0x10(r29) +/* 80194E44 00191DA4 C0 1F 00 00 */ lfs f0, 0(r31) +/* 80194E48 00191DA8 D0 1D 00 14 */ stfs f0, 0x14(r29) +/* 80194E4C 00191DAC C0 1F 00 04 */ lfs f0, 4(r31) +/* 80194E50 00191DB0 D0 1D 00 18 */ stfs f0, 0x18(r29) +/* 80194E54 00191DB4 C0 1F 00 08 */ lfs f0, 8(r31) +/* 80194E58 00191DB8 D0 1D 00 1C */ stfs f0, 0x1c(r29) +/* 80194E5C 00191DBC C0 1F 00 00 */ lfs f0, 0(r31) +/* 80194E60 00191DC0 D0 1D 00 20 */ stfs f0, 0x20(r29) +/* 80194E64 00191DC4 C0 1F 00 04 */ lfs f0, 4(r31) +/* 80194E68 00191DC8 D0 1D 00 24 */ stfs f0, 0x24(r29) +/* 80194E6C 00191DCC C0 1F 00 08 */ lfs f0, 8(r31) +/* 80194E70 00191DD0 D0 1D 00 28 */ stfs f0, 0x28(r29) +/* 80194E74 00191DD4 C0 1F 00 00 */ lfs f0, 0(r31) +/* 80194E78 00191DD8 D0 1D 00 2C */ stfs f0, 0x2c(r29) +/* 80194E7C 00191DDC C0 1F 00 04 */ lfs f0, 4(r31) +/* 80194E80 00191DE0 D0 1D 00 30 */ stfs f0, 0x30(r29) +/* 80194E84 00191DE4 C0 1F 00 08 */ lfs f0, 8(r31) +/* 80194E88 00191DE8 D0 1D 00 34 */ stfs f0, 0x34(r29) +/* 80194E8C 00191DEC 48 17 B1 99 */ bl __ct__9CMatrix3fFRC9CMatrix3f +/* 80194E90 00191DF0 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80194E94 00191DF4 C0 22 A6 84 */ lfs f1, lbl_805AC3A4@sda21(r2) +/* 80194E98 00191DF8 C0 43 66 A0 */ lfs f2, skZero3f@l(r3) +/* 80194E9C 00191DFC 38 A0 00 01 */ li r5, 1 +/* 80194EA0 00191E00 C0 02 A6 6C */ lfs f0, lbl_805AC38C@sda21(r2) +/* 80194EA4 00191E04 38 00 00 00 */ li r0, 0 +/* 80194EA8 00191E08 D0 5D 00 5C */ stfs f2, 0x5c(r29) +/* 80194EAC 00191E0C 38 61 00 08 */ addi r3, r1, 8 +/* 80194EB0 00191E10 C0 5F 00 04 */ lfs f2, 4(r31) +/* 80194EB4 00191E14 D0 5D 00 60 */ stfs f2, 0x60(r29) +/* 80194EB8 00191E18 C0 5F 00 08 */ lfs f2, 8(r31) +/* 80194EBC 00191E1C D0 5D 00 64 */ stfs f2, 0x64(r29) +/* 80194EC0 00191E20 D0 3D 00 68 */ stfs f1, 0x68(r29) +/* 80194EC4 00191E24 D0 1D 00 6C */ stfs f0, 0x6c(r29) +/* 80194EC8 00191E28 88 9D 00 70 */ lbz r4, 0x70(r29) +/* 80194ECC 00191E2C 50 A4 3E 30 */ rlwimi r4, r5, 7, 0x18, 0x18 +/* 80194ED0 00191E30 98 9D 00 70 */ stb r4, 0x70(r29) +/* 80194ED4 00191E34 88 9D 00 70 */ lbz r4, 0x70(r29) +/* 80194ED8 00191E38 50 A4 36 72 */ rlwimi r4, r5, 6, 0x19, 0x19 +/* 80194EDC 00191E3C 98 9D 00 70 */ stb r4, 0x70(r29) +/* 80194EE0 00191E40 90 1D 00 88 */ stw r0, 0x88(r29) +/* 80194EE4 00191E44 90 1D 00 8C */ stw r0, 0x8c(r29) +/* 80194EE8 00191E48 90 1D 00 90 */ stw r0, 0x90(r29) +/* 80194EEC 00191E4C 80 1E 00 14 */ lwz r0, 0x14(r30) +/* 80194EF0 00191E50 90 1D 00 74 */ stw r0, 0x74(r29) +/* 80194EF4 00191E54 80 9D 00 74 */ lwz r4, 0x74(r29) +/* 80194EF8 00191E58 48 13 03 25 */ bl GetLocalPosition__10CGuiObjectCFv +/* 80194EFC 00191E5C C0 01 00 08 */ lfs f0, 8(r1) +/* 80194F00 00191E60 3C 60 80 3D */ lis r3, lbl_803D0F38@ha +/* 80194F04 00191E64 38 83 0F 38 */ addi r4, r3, lbl_803D0F38@l +/* 80194F08 00191E68 D0 1D 00 2C */ stfs f0, 0x2c(r29) +/* 80194F0C 00191E6C 7F C3 F3 78 */ mr r3, r30 +/* 80194F10 00191E70 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 80194F14 00191E74 D0 1D 00 30 */ stfs f0, 0x30(r29) +/* 80194F18 00191E78 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 80194F1C 00191E7C D0 1D 00 34 */ stfs f0, 0x34(r29) +/* 80194F20 00191E80 48 12 D2 35 */ bl FindWidget__9CGuiFrameCFPCc +/* 80194F24 00191E84 3C 80 80 3D */ lis r4, lbl_803D10E4@ha +/* 80194F28 00191E88 90 7D 00 78 */ stw r3, 0x78(r29) +/* 80194F2C 00191E8C 38 84 10 E4 */ addi r4, r4, lbl_803D10E4@l +/* 80194F30 00191E90 7F C3 F3 78 */ mr r3, r30 +/* 80194F34 00191E94 7C 9C 23 78 */ mr r28, r4 +/* 80194F38 00191E98 48 12 D2 1D */ bl FindWidget__9CGuiFrameCFPCc +/* 80194F3C 00191E9C 3C 80 80 3D */ lis r4, lbl_803D10E4@ha +/* 80194F40 00191EA0 90 7D 00 7C */ stw r3, 0x7c(r29) +/* 80194F44 00191EA4 38 84 10 E4 */ addi r4, r4, lbl_803D10E4@l +/* 80194F48 00191EA8 7F C3 F3 78 */ mr r3, r30 +/* 80194F4C 00191EAC 38 84 00 13 */ addi r4, r4, 0x13 +/* 80194F50 00191EB0 48 12 D2 05 */ bl FindWidget__9CGuiFrameCFPCc +/* 80194F54 00191EB4 90 7D 00 80 */ stw r3, 0x80(r29) +/* 80194F58 00191EB8 3C 60 80 3D */ lis r3, lbl_803D10E4@ha +/* 80194F5C 00191EBC 38 83 10 E4 */ addi r4, r3, lbl_803D10E4@l +/* 80194F60 00191EC0 7F C3 F3 78 */ mr r3, r30 +/* 80194F64 00191EC4 80 BD 00 78 */ lwz r5, 0x78(r29) +/* 80194F68 00191EC8 3B E4 00 22 */ addi r31, r4, 0x22 +/* 80194F6C 00191ECC 3B 64 00 32 */ addi r27, r4, 0x32 +/* 80194F70 00191ED0 38 84 00 44 */ addi r4, r4, 0x44 +/* 80194F74 00191ED4 C0 45 00 A0 */ lfs f2, 0xa0(r5) +/* 80194F78 00191ED8 C0 25 00 90 */ lfs f1, 0x90(r5) +/* 80194F7C 00191EDC C0 05 00 80 */ lfs f0, 0x80(r5) +/* 80194F80 00191EE0 D0 1D 00 14 */ stfs f0, 0x14(r29) +/* 80194F84 00191EE4 D0 3D 00 18 */ stfs f1, 0x18(r29) +/* 80194F88 00191EE8 D0 5D 00 1C */ stfs f2, 0x1c(r29) +/* 80194F8C 00191EEC 80 BD 00 7C */ lwz r5, 0x7c(r29) +/* 80194F90 00191EF0 C0 45 00 A0 */ lfs f2, 0xa0(r5) +/* 80194F94 00191EF4 C0 25 00 90 */ lfs f1, 0x90(r5) +/* 80194F98 00191EF8 C0 05 00 80 */ lfs f0, 0x80(r5) +/* 80194F9C 00191EFC D0 1D 00 5C */ stfs f0, 0x5c(r29) +/* 80194FA0 00191F00 D0 3D 00 60 */ stfs f1, 0x60(r29) +/* 80194FA4 00191F04 D0 5D 00 64 */ stfs f2, 0x64(r29) +/* 80194FA8 00191F08 48 12 D1 AD */ bl FindWidget__9CGuiFrameCFPCc +/* 80194FAC 00191F0C 28 03 00 00 */ cmplwi r3, 0 +/* 80194FB0 00191F10 41 82 00 10 */ beq lbl_80194FC0 +/* 80194FB4 00191F14 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80194FB8 00191F18 38 84 01 AC */ addi r4, r4, 0x1ac +/* 80194FBC 00191F1C 48 13 58 B1 */ bl SetColor__10CGuiWidgetFRC6CColor +lbl_80194FC0: +/* 80194FC0 00191F20 3C 80 80 3D */ lis r4, lbl_803D10E4@ha +/* 80194FC4 00191F24 7F C3 F3 78 */ mr r3, r30 +/* 80194FC8 00191F28 38 84 10 E4 */ addi r4, r4, lbl_803D10E4@l +/* 80194FCC 00191F2C 38 84 00 54 */ addi r4, r4, 0x54 +/* 80194FD0 00191F30 48 12 D1 85 */ bl FindWidget__9CGuiFrameCFPCc +/* 80194FD4 00191F34 28 03 00 00 */ cmplwi r3, 0 +/* 80194FD8 00191F38 41 82 00 10 */ beq lbl_80194FE8 +/* 80194FDC 00191F3C 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80194FE0 00191F40 38 84 01 B0 */ addi r4, r4, 0x1b0 +/* 80194FE4 00191F44 48 13 58 89 */ bl SetColor__10CGuiWidgetFRC6CColor +lbl_80194FE8: +/* 80194FE8 00191F48 7F C3 F3 78 */ mr r3, r30 +/* 80194FEC 00191F4C 7F E4 FB 78 */ mr r4, r31 +/* 80194FF0 00191F50 48 12 D1 65 */ bl FindWidget__9CGuiFrameCFPCc +/* 80194FF4 00191F54 28 03 00 00 */ cmplwi r3, 0 +/* 80194FF8 00191F58 41 82 00 10 */ beq lbl_80195008 +/* 80194FFC 00191F5C 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80195000 00191F60 38 84 01 B8 */ addi r4, r4, 0x1b8 +/* 80195004 00191F64 48 13 58 69 */ bl SetColor__10CGuiWidgetFRC6CColor +lbl_80195008: +/* 80195008 00191F68 7F C3 F3 78 */ mr r3, r30 +/* 8019500C 00191F6C 7F 84 E3 78 */ mr r4, r28 +/* 80195010 00191F70 48 12 D1 45 */ bl FindWidget__9CGuiFrameCFPCc +/* 80195014 00191F74 28 03 00 00 */ cmplwi r3, 0 +/* 80195018 00191F78 41 82 00 10 */ beq lbl_80195028 +/* 8019501C 00191F7C 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80195020 00191F80 38 84 01 B0 */ addi r4, r4, 0x1b0 +/* 80195024 00191F84 48 13 58 49 */ bl SetColor__10CGuiWidgetFRC6CColor +lbl_80195028: +/* 80195028 00191F88 7F C3 F3 78 */ mr r3, r30 +/* 8019502C 00191F8C 7F 64 DB 78 */ mr r4, r27 +/* 80195030 00191F90 48 12 D1 25 */ bl FindWidget__9CGuiFrameCFPCc +/* 80195034 00191F94 28 03 00 00 */ cmplwi r3, 0 +/* 80195038 00191F98 41 82 00 10 */ beq lbl_80195048 +/* 8019503C 00191F9C 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80195040 00191FA0 38 84 01 B0 */ addi r4, r4, 0x1b0 +/* 80195044 00191FA4 48 13 58 29 */ bl SetColor__10CGuiWidgetFRC6CColor +lbl_80195048: +/* 80195048 00191FA8 3C 80 80 3D */ lis r4, lbl_803D10E4@ha +/* 8019504C 00191FAC 7F C3 F3 78 */ mr r3, r30 +/* 80195050 00191FB0 38 84 10 E4 */ addi r4, r4, lbl_803D10E4@l +/* 80195054 00191FB4 38 84 00 6A */ addi r4, r4, 0x6a +/* 80195058 00191FB8 48 12 D0 FD */ bl FindWidget__9CGuiFrameCFPCc +/* 8019505C 00191FBC 28 03 00 00 */ cmplwi r3, 0 +/* 80195060 00191FC0 41 82 00 10 */ beq lbl_80195070 +/* 80195064 00191FC4 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80195068 00191FC8 38 84 01 B0 */ addi r4, r4, 0x1b0 +/* 8019506C 00191FCC 48 13 58 01 */ bl SetColor__10CGuiWidgetFRC6CColor +lbl_80195070: +/* 80195070 00191FD0 3C 80 80 3D */ lis r4, lbl_803D10E4@ha +/* 80195074 00191FD4 7F C3 F3 78 */ mr r3, r30 +/* 80195078 00191FD8 38 84 10 E4 */ addi r4, r4, lbl_803D10E4@l +/* 8019507C 00191FDC 38 84 00 7B */ addi r4, r4, 0x7b +/* 80195080 00191FE0 48 12 D0 D5 */ bl FindWidget__9CGuiFrameCFPCc +/* 80195084 00191FE4 28 03 00 00 */ cmplwi r3, 0 +/* 80195088 00191FE8 41 82 00 10 */ beq lbl_80195098 +/* 8019508C 00191FEC 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80195090 00191FF0 38 84 01 B0 */ addi r4, r4, 0x1b0 +/* 80195094 00191FF4 48 13 57 D9 */ bl SetColor__10CGuiWidgetFRC6CColor +lbl_80195098: +/* 80195098 00191FF8 7F C3 F3 78 */ mr r3, r30 +/* 8019509C 00191FFC 7F E4 FB 78 */ mr r4, r31 +/* 801950A0 00192000 48 12 D0 B5 */ bl FindWidget__9CGuiFrameCFPCc +/* 801950A4 00192004 28 03 00 00 */ cmplwi r3, 0 +/* 801950A8 00192008 41 82 00 D0 */ beq lbl_80195178 +/* 801950AC 0019200C 48 12 FC 85 */ bl GetChildObject__10CGuiObjectFv +/* 801950B0 00192010 3B C1 00 78 */ addi r30, r1, 0x78 +/* 801950B4 00192014 7C 7B 1B 78 */ mr r27, r3 +/* 801950B8 00192018 48 00 00 B8 */ b lbl_80195170 +lbl_801950BC: +/* 801950BC 0019201C 80 9D 00 88 */ lwz r4, 0x88(r29) +/* 801950C0 00192020 38 7D 00 84 */ addi r3, r29, 0x84 +/* 801950C4 00192024 38 84 00 01 */ addi r4, r4, 1 +/* 801950C8 00192028 48 00 23 05 */ bl sub_801973cc +/* 801950CC 0019202C 7F 64 DB 78 */ mr r4, r27 +/* 801950D0 00192030 38 61 00 74 */ addi r3, r1, 0x74 +/* 801950D4 00192034 48 00 00 ED */ bl sub_801951c0 +/* 801950D8 00192038 80 1D 00 88 */ lwz r0, 0x88(r29) +/* 801950DC 0019203C 80 BD 00 8C */ lwz r5, 0x8c(r29) +/* 801950E0 00192040 7C 00 28 00 */ cmpw r0, r5 +/* 801950E4 00192044 41 80 00 1C */ blt lbl_80195100 +/* 801950E8 00192048 2C 05 00 00 */ cmpwi r5, 0 +/* 801950EC 0019204C 38 7D 00 84 */ addi r3, r29, 0x84 +/* 801950F0 00192050 38 80 00 04 */ li r4, 4 +/* 801950F4 00192054 41 82 00 08 */ beq lbl_801950FC +/* 801950F8 00192058 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801950FC: +/* 801950FC 0019205C 48 00 22 D1 */ bl sub_801973cc +lbl_80195100: +/* 80195100 00192060 80 1D 00 88 */ lwz r0, 0x88(r29) +/* 80195104 00192064 80 7D 00 90 */ lwz r3, 0x90(r29) +/* 80195108 00192068 1C 00 00 34 */ mulli r0, r0, 0x34 +/* 8019510C 0019206C 7C A3 02 15 */ add. r5, r3, r0 +/* 80195110 00192070 41 82 00 18 */ beq lbl_80195128 +/* 80195114 00192074 80 01 00 74 */ lwz r0, 0x74(r1) +/* 80195118 00192078 7F C4 F3 78 */ mr r4, r30 +/* 8019511C 0019207C 38 65 00 04 */ addi r3, r5, 4 +/* 80195120 00192080 90 05 00 00 */ stw r0, 0(r5) +/* 80195124 00192084 48 17 DA 51 */ bl __ct__12CTransform4fFRC12CTransform4f +lbl_80195128: +/* 80195128 00192088 80 9D 00 88 */ lwz r4, 0x88(r29) +/* 8019512C 0019208C 38 61 00 14 */ addi r3, r1, 0x14 +/* 80195130 00192090 38 04 00 01 */ addi r0, r4, 1 +/* 80195134 00192094 90 1D 00 88 */ stw r0, 0x88(r29) +/* 80195138 00192098 C0 3D 00 68 */ lfs f1, 0x68(r29) +/* 8019513C 0019209C 48 17 E1 05 */ bl Scale__12CTransform4fFf +/* 80195140 001920A0 38 61 00 44 */ addi r3, r1, 0x44 +/* 80195144 001920A4 38 9B 00 04 */ addi r4, r27, 4 +/* 80195148 001920A8 38 A1 00 14 */ addi r5, r1, 0x14 +/* 8019514C 001920AC 48 17 D8 05 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80195150 001920B0 38 7B 00 04 */ addi r3, r27, 4 +/* 80195154 001920B4 38 81 00 44 */ addi r4, r1, 0x44 +/* 80195158 001920B8 48 17 D9 E9 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8019515C 001920BC 7F 63 DB 78 */ mr r3, r27 +/* 80195160 001920C0 48 12 F6 89 */ bl RecalculateTransforms__10CGuiObjectFv +/* 80195164 001920C4 7F 63 DB 78 */ mr r3, r27 +/* 80195168 001920C8 48 12 FB B9 */ bl GetNextSibling__10CGuiObjectFv +/* 8019516C 001920CC 7C 7B 1B 78 */ mr r27, r3 +lbl_80195170: +/* 80195170 001920D0 28 1B 00 00 */ cmplwi r27, 0 +/* 80195174 001920D4 40 82 FF 48 */ bne lbl_801950BC +lbl_80195178: +/* 80195178 001920D8 80 9D 00 78 */ lwz r4, 0x78(r29) +/* 8019517C 001920DC 7F A3 EB 78 */ mr r3, r29 +/* 80195180 001920E0 C0 44 00 A0 */ lfs f2, 0xa0(r4) +/* 80195184 001920E4 C0 24 00 90 */ lfs f1, 0x90(r4) +/* 80195188 001920E8 C0 04 00 80 */ lfs f0, 0x80(r4) +/* 8019518C 001920EC D0 1D 00 14 */ stfs f0, 0x14(r29) +/* 80195190 001920F0 D0 3D 00 18 */ stfs f1, 0x18(r29) +/* 80195194 001920F4 D0 5D 00 1C */ stfs f2, 0x1c(r29) +/* 80195198 001920F8 81 9D 00 00 */ lwz r12, 0(r29) +/* 8019519C 001920FC 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 801951A0 00192100 7D 89 03 A6 */ mtctr r12 +/* 801951A4 00192104 4E 80 04 21 */ bctrl +/* 801951A8 00192108 7F A3 EB 78 */ mr r3, r29 +/* 801951AC 0019210C BB 61 00 AC */ lmw r27, 0xac(r1) +/* 801951B0 00192110 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 801951B4 00192114 7C 08 03 A6 */ mtlr r0 +/* 801951B8 00192118 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 801951BC 0019211C 4E 80 00 20 */ blr + +.global sub_801951c0 +sub_801951c0: +/* 801951C0 00192120 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801951C4 00192124 7C 08 02 A6 */ mflr r0 +/* 801951C8 00192128 90 01 00 14 */ stw r0, 0x14(r1) +/* 801951CC 0019212C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801951D0 00192130 7C 7F 1B 78 */ mr r31, r3 +/* 801951D4 00192134 90 83 00 00 */ stw r4, 0(r3) +/* 801951D8 00192138 38 7F 00 04 */ addi r3, r31, 4 +/* 801951DC 0019213C 38 84 00 04 */ addi r4, r4, 4 +/* 801951E0 00192140 48 17 D9 95 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801951E4 00192144 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801951E8 00192148 7F E3 FB 78 */ mr r3, r31 +/* 801951EC 0019214C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801951F0 00192150 7C 08 03 A6 */ mtlr r0 +/* 801951F4 00192154 38 21 00 10 */ addi r1, r1, 0x10 +/* 801951F8 00192158 4E 80 00 20 */ blr + +.global GetMessageTextAlpha__21CHudDecoInterfaceScanCFv +GetMessageTextAlpha__21CHudDecoInterfaceScanCFv: +/* 801951FC 0019215C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80195200 00192160 C0 23 02 38 */ lfs f1, 0x238(r3) +/* 80195204 00192164 C0 0D 8F C4 */ lfs f0, lbl_805A7B84@sda21(r13) +/* 80195208 00192168 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8019520C 0019216C 40 80 00 0C */ bge lbl_80195218 +/* 80195210 00192170 38 83 02 38 */ addi r4, r3, 0x238 +/* 80195214 00192174 48 00 00 08 */ b lbl_8019521C +lbl_80195218: +/* 80195218 00192178 38 8D 8F C4 */ addi r4, r13, lbl_805A7B84@sda21 +lbl_8019521C: +/* 8019521C 0019217C C0 04 00 00 */ lfs f0, 0(r4) +/* 80195220 00192180 C0 23 01 C0 */ lfs f1, 0x1c0(r3) +/* 80195224 00192184 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 80195228 00192188 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 8019522C 0019218C D0 21 00 08 */ stfs f1, 8(r1) +/* 80195230 00192190 40 80 00 0C */ bge lbl_8019523C +/* 80195234 00192194 38 61 00 08 */ addi r3, r1, 8 +/* 80195238 00192198 48 00 00 08 */ b lbl_80195240 +lbl_8019523C: +/* 8019523C 0019219C 38 61 00 0C */ addi r3, r1, 0xc +lbl_80195240: +/* 80195240 001921A0 C0 22 A6 68 */ lfs f1, lbl_805AC388@sda21(r2) +/* 80195244 001921A4 C0 03 00 00 */ lfs f0, 0(r3) +/* 80195248 001921A8 EC 21 00 28 */ fsubs f1, f1, f0 +/* 8019524C 001921AC 38 21 00 10 */ addi r1, r1, 0x10 +/* 80195250 001921B0 4E 80 00 20 */ blr + +.global GetCurrScanInfo__21CHudDecoInterfaceScanCFRC13CStateManager +GetCurrScanInfo__21CHudDecoInterfaceScanCFRC13CStateManager: +/* 80195254 001921B4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80195258 001921B8 7C 08 02 A6 */ mflr r0 +/* 8019525C 001921BC 90 01 00 24 */ stw r0, 0x24(r1) +/* 80195260 001921C0 80 03 01 D4 */ lwz r0, 0x1d4(r3) +/* 80195264 001921C4 2C 00 00 00 */ cmpwi r0, 0 +/* 80195268 001921C8 40 82 00 0C */ bne lbl_80195274 +/* 8019526C 001921CC 38 60 00 00 */ li r3, 0 +/* 80195270 001921D0 48 00 00 3C */ b lbl_801952AC +lbl_80195274: +/* 80195274 001921D4 A0 03 01 D2 */ lhz r0, 0x1d2(r3) +/* 80195278 001921D8 7C 83 23 78 */ mr r3, r4 +/* 8019527C 001921DC 38 81 00 08 */ addi r4, r1, 8 +/* 80195280 001921E0 B0 01 00 08 */ sth r0, 8(r1) +/* 80195284 001921E4 4B EB 73 21 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80195288 001921E8 7C 64 1B 78 */ mr r4, r3 +/* 8019528C 001921EC 38 61 00 0C */ addi r3, r1, 0xc +/* 80195290 001921F0 4B F1 AA 01 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 80195294 001921F4 80 63 00 04 */ lwz r3, 4(r3) +/* 80195298 001921F8 28 03 00 00 */ cmplwi r3, 0 +/* 8019529C 001921FC 41 82 00 0C */ beq lbl_801952A8 +/* 801952A0 00192200 4B EB E2 29 */ bl GetScannableObjectInfo__6CActorCFv +/* 801952A4 00192204 48 00 00 08 */ b lbl_801952AC +lbl_801952A8: +/* 801952A8 00192208 38 60 00 00 */ li r3, 0 +lbl_801952AC: +/* 801952AC 0019220C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801952B0 00192210 7C 08 03 A6 */ mtlr r0 +/* 801952B4 00192214 38 21 00 20 */ addi r1, r1, 0x20 +/* 801952B8 00192218 4E 80 00 20 */ blr + +.global UpdateScanDisplay__21CHudDecoInterfaceScanFRC13CStateManagerf +UpdateScanDisplay__21CHudDecoInterfaceScanFRC13CStateManagerf: +/* 801952BC 0019221C 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 801952C0 00192220 7C 08 02 A6 */ mflr r0 +/* 801952C4 00192224 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 801952C8 00192228 DB E1 00 D0 */ stfd f31, 0xd0(r1) +/* 801952CC 0019222C F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 +/* 801952D0 00192230 DB C1 00 C0 */ stfd f30, 0xc0(r1) +/* 801952D4 00192234 F3 C1 00 C8 */ psq_st f30, 200(r1), 0, qr0 +/* 801952D8 00192238 DB A1 00 B0 */ stfd f29, 0xb0(r1) +/* 801952DC 0019223C F3 A1 00 B8 */ psq_st f29, 184(r1), 0, qr0 +/* 801952E0 00192240 DB 81 00 A0 */ stfd f28, 0xa0(r1) +/* 801952E4 00192244 F3 81 00 A8 */ psq_st f28, 168(r1), 0, qr0 +/* 801952E8 00192248 93 E1 00 9C */ stw r31, 0x9c(r1) +/* 801952EC 0019224C 93 C1 00 98 */ stw r30, 0x98(r1) +/* 801952F0 00192250 93 A1 00 94 */ stw r29, 0x94(r1) +/* 801952F4 00192254 93 81 00 90 */ stw r28, 0x90(r1) +/* 801952F8 00192258 7C 9F 23 78 */ mr r31, r4 +/* 801952FC 0019225C 7C 7E 1B 78 */ mr r30, r3 +/* 80195300 00192260 80 64 08 4C */ lwz r3, 0x84c(r4) +/* 80195304 00192264 FF C0 08 90 */ fmr f30, f1 +/* 80195308 00192268 80 9E 01 D4 */ lwz r4, 0x1d4(r30) +/* 8019530C 0019226C 83 A3 03 A8 */ lwz r29, 0x3a8(r3) +/* 80195310 00192270 A0 03 03 10 */ lhz r0, 0x310(r3) +/* 80195314 00192274 7C 1D 20 00 */ cmpw r29, r4 +/* 80195318 00192278 A3 83 03 B4 */ lhz r28, 0x3b4(r3) +/* 8019531C 0019227C B0 01 00 24 */ sth r0, 0x24(r1) +/* 80195320 00192280 C3 A3 03 AC */ lfs f29, 0x3ac(r3) +/* 80195324 00192284 41 82 00 D8 */ beq lbl_801953FC +/* 80195328 00192288 88 03 09 C6 */ lbz r0, 0x9c6(r3) +/* 8019532C 0019228C 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 80195330 00192290 41 82 00 C8 */ beq lbl_801953F8 +/* 80195334 00192294 2C 1D 00 02 */ cmpwi r29, 2 +/* 80195338 00192298 40 82 00 64 */ bne lbl_8019539C +/* 8019533C 0019229C 2C 04 00 01 */ cmpwi r4, 1 +/* 80195340 001922A0 40 82 00 B8 */ bne lbl_801953F8 +/* 80195344 001922A4 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 80195348 001922A8 38 80 00 0F */ li r4, 0xf +/* 8019534C 001922AC 48 1C 13 B1 */ bl GetString__12CStringTableCFi +/* 80195350 001922B0 7C 64 1B 78 */ mr r4, r3 +/* 80195354 001922B4 38 61 00 74 */ addi r3, r1, 0x74 +/* 80195358 001922B8 4B E8 06 99 */ bl wstring_l__4rstlFPCw +/* 8019535C 001922BC 80 7E 02 54 */ lwz r3, 0x254(r30) +/* 80195360 001922C0 38 81 00 74 */ addi r4, r1, 0x74 +/* 80195364 001922C4 38 A0 00 00 */ li r5, 0 +/* 80195368 001922C8 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 8019536C 001922CC 48 13 45 19 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80195370 001922D0 38 61 00 74 */ addi r3, r1, 0x74 +/* 80195374 001922D4 48 1A 7D C1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80195378 001922D8 80 7E 02 54 */ lwz r3, 0x254(r30) +/* 8019537C 001922DC 38 80 00 00 */ li r4, 0 +/* 80195380 001922E0 C0 22 A6 6C */ lfs f1, lbl_805AC38C@sda21(r2) +/* 80195384 001922E4 C0 42 A6 88 */ lfs f2, lbl_805AC3A8@sda21(r2) +/* 80195388 001922E8 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 8019538C 001922EC 48 13 2D 8D */ bl SetTypeWriteEffectOptions__15CGuiTextSupportFbff +/* 80195390 001922F0 C0 02 A6 78 */ lfs f0, lbl_805AC398@sda21(r2) +/* 80195394 001922F4 D0 1E 02 38 */ stfs f0, 0x238(r30) +/* 80195398 001922F8 48 00 00 60 */ b lbl_801953F8 +lbl_8019539C: +/* 8019539C 001922FC 2C 1D 00 01 */ cmpwi r29, 1 +/* 801953A0 00192300 40 82 00 58 */ bne lbl_801953F8 +/* 801953A4 00192304 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 801953A8 00192308 38 80 00 0E */ li r4, 0xe +/* 801953AC 0019230C 48 1C 13 51 */ bl GetString__12CStringTableCFi +/* 801953B0 00192310 7C 64 1B 78 */ mr r4, r3 +/* 801953B4 00192314 38 61 00 64 */ addi r3, r1, 0x64 +/* 801953B8 00192318 4B E8 06 39 */ bl wstring_l__4rstlFPCw +/* 801953BC 0019231C 80 7E 02 54 */ lwz r3, 0x254(r30) +/* 801953C0 00192320 38 81 00 64 */ addi r4, r1, 0x64 +/* 801953C4 00192324 38 A0 00 00 */ li r5, 0 +/* 801953C8 00192328 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 801953CC 0019232C 48 13 44 B9 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801953D0 00192330 38 61 00 64 */ addi r3, r1, 0x64 +/* 801953D4 00192334 48 1A 7D 61 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801953D8 00192338 80 7E 02 54 */ lwz r3, 0x254(r30) +/* 801953DC 0019233C 38 80 00 00 */ li r4, 0 +/* 801953E0 00192340 C0 22 A6 6C */ lfs f1, lbl_805AC38C@sda21(r2) +/* 801953E4 00192344 C0 42 A6 88 */ lfs f2, lbl_805AC3A8@sda21(r2) +/* 801953E8 00192348 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 801953EC 0019234C 48 13 2D 2D */ bl SetTypeWriteEffectOptions__15CGuiTextSupportFbff +/* 801953F0 00192350 C0 02 A6 68 */ lfs f0, lbl_805AC388@sda21(r2) +/* 801953F4 00192354 D0 1E 02 38 */ stfs f0, 0x238(r30) +lbl_801953F8: +/* 801953F8 00192358 93 BE 01 D4 */ stw r29, 0x1d4(r30) +lbl_801953FC: +/* 801953FC 0019235C A0 1E 01 D2 */ lhz r0, 0x1d2(r30) +/* 80195400 00192360 7C 1C 00 40 */ cmplw r28, r0 +/* 80195404 00192364 41 82 00 08 */ beq lbl_8019540C +/* 80195408 00192368 B3 9E 01 D2 */ sth r28, 0x1d2(r30) +lbl_8019540C: +/* 8019540C 0019236C A0 61 00 24 */ lhz r3, 0x24(r1) +/* 80195410 00192370 A0 1E 01 D0 */ lhz r0, 0x1d0(r30) +/* 80195414 00192374 7C 03 00 40 */ cmplw r3, r0 +/* 80195418 00192378 41 82 00 AC */ beq lbl_801954C4 +/* 8019541C 0019237C B0 7E 01 D0 */ sth r3, 0x1d0(r30) +/* 80195420 00192380 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80195424 00192384 7C 03 00 40 */ cmplw r3, r0 +/* 80195428 00192388 41 82 00 9C */ beq lbl_801954C4 +/* 8019542C 0019238C B0 61 00 20 */ sth r3, 0x20(r1) +/* 80195430 00192390 7F E5 FB 78 */ mr r5, r31 +/* 80195434 00192394 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 80195438 00192398 38 81 00 20 */ addi r4, r1, 0x20 +/* 8019543C 0019239C 4B E7 CB 65 */ bl ObjectInScanningRange__7CPlayerF9TUniqueIdRC13CStateManager +/* 80195440 001923A0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80195444 001923A4 40 82 00 80 */ bne lbl_801954C4 +/* 80195448 001923A8 38 61 00 54 */ addi r3, r1, 0x54 +/* 8019544C 001923AC 38 8D 8F CC */ addi r4, r13, lbl_805A7B8C@sda21 +/* 80195450 001923B0 4B E8 05 A1 */ bl wstring_l__4rstlFPCw +/* 80195454 001923B4 80 7E 02 54 */ lwz r3, 0x254(r30) +/* 80195458 001923B8 38 81 00 54 */ addi r4, r1, 0x54 +/* 8019545C 001923BC 38 A0 00 00 */ li r5, 0 +/* 80195460 001923C0 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80195464 001923C4 48 13 44 21 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80195468 001923C8 38 61 00 54 */ addi r3, r1, 0x54 +/* 8019546C 001923CC 48 1A 7C C9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80195470 001923D0 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 80195474 001923D4 38 80 00 10 */ li r4, 0x10 +/* 80195478 001923D8 48 1C 12 85 */ bl GetString__12CStringTableCFi +/* 8019547C 001923DC 7C 64 1B 78 */ mr r4, r3 +/* 80195480 001923E0 38 61 00 44 */ addi r3, r1, 0x44 +/* 80195484 001923E4 4B E8 05 6D */ bl wstring_l__4rstlFPCw +/* 80195488 001923E8 80 7E 02 54 */ lwz r3, 0x254(r30) +/* 8019548C 001923EC 38 81 00 44 */ addi r4, r1, 0x44 +/* 80195490 001923F0 38 A0 00 00 */ li r5, 0 +/* 80195494 001923F4 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80195498 001923F8 48 13 43 ED */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8019549C 001923FC 38 61 00 44 */ addi r3, r1, 0x44 +/* 801954A0 00192400 48 1A 7C 95 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801954A4 00192404 80 7E 02 54 */ lwz r3, 0x254(r30) +/* 801954A8 00192408 38 80 00 01 */ li r4, 1 +/* 801954AC 0019240C C0 22 A6 6C */ lfs f1, lbl_805AC38C@sda21(r2) +/* 801954B0 00192410 C0 42 A6 88 */ lfs f2, lbl_805AC3A8@sda21(r2) +/* 801954B4 00192414 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 801954B8 00192418 48 13 2C 61 */ bl SetTypeWriteEffectOptions__15CGuiTextSupportFbff +/* 801954BC 0019241C C0 02 A6 68 */ lfs f0, lbl_805AC388@sda21(r2) +/* 801954C0 00192420 D0 1E 02 38 */ stfs f0, 0x238(r30) +lbl_801954C4: +/* 801954C4 00192424 7F C3 F3 78 */ mr r3, r30 +/* 801954C8 00192428 7F E4 FB 78 */ mr r4, r31 +/* 801954CC 0019242C 4B FF FD 89 */ bl GetCurrScanInfo__21CHudDecoInterfaceScanCFRC13CStateManager +/* 801954D0 00192430 A0 9E 01 D2 */ lhz r4, 0x1d2(r30) +/* 801954D4 00192434 7C 7C 1B 78 */ mr r28, r3 +/* 801954D8 00192438 A0 1E 00 28 */ lhz r0, 0x28(r30) +/* 801954DC 0019243C 7C 04 00 40 */ cmplw r4, r0 +/* 801954E0 00192440 40 82 00 0C */ bne lbl_801954EC +/* 801954E4 00192444 28 1C 00 00 */ cmplwi r28, 0 +/* 801954E8 00192448 40 82 00 58 */ bne lbl_80195540 +lbl_801954EC: +/* 801954EC 0019244C 38 7E 00 18 */ addi r3, r30, 0x18 +/* 801954F0 00192450 4B FD EB AD */ bl StopScan__12CScanDisplayFv +/* 801954F4 00192454 80 1E 00 24 */ lwz r0, 0x24(r30) +/* 801954F8 00192458 2C 00 00 00 */ cmpwi r0, 0 +/* 801954FC 0019245C 40 82 00 44 */ bne lbl_80195540 +/* 80195500 00192460 28 1C 00 00 */ cmplwi r28, 0 +/* 80195504 00192464 41 82 00 3C */ beq lbl_80195540 +/* 80195508 00192468 A0 1E 01 D2 */ lhz r0, 0x1d2(r30) +/* 8019550C 0019246C FC 20 E8 90 */ fmr f1, f29 +/* 80195510 00192470 7F 85 E3 78 */ mr r5, r28 +/* 80195514 00192474 38 7E 00 18 */ addi r3, r30, 0x18 +/* 80195518 00192478 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 8019551C 0019247C 38 81 00 1C */ addi r4, r1, 0x1c +/* 80195520 00192480 80 1E 02 74 */ lwz r0, 0x274(r30) +/* 80195524 00192484 90 01 00 08 */ stw r0, 8(r1) +/* 80195528 00192488 80 DE 02 64 */ lwz r6, 0x264(r30) +/* 8019552C 0019248C 80 FE 02 68 */ lwz r7, 0x268(r30) +/* 80195530 00192490 81 1E 02 60 */ lwz r8, 0x260(r30) +/* 80195534 00192494 81 3E 02 6C */ lwz r9, 0x26c(r30) +/* 80195538 00192498 81 5E 02 70 */ lwz r10, 0x270(r30) +/* 8019553C 0019249C 4B FD EB A5 */ bl StartScan__12CScanDisplayF9TUniqueIdRC20CScannableObjectInfoP12CGuiTextPaneP10CGuiWidgetf +lbl_80195540: +/* 80195540 001924A0 FC 20 F0 90 */ fmr f1, f30 +/* 80195544 001924A4 38 7E 00 18 */ addi r3, r30, 0x18 +/* 80195548 001924A8 FC 40 E8 90 */ fmr f2, f29 +/* 8019554C 001924AC 4B FD DC 09 */ bl Update__12CScanDisplayFff +/* 80195550 001924B0 A0 7E 01 D2 */ lhz r3, 0x1d2(r30) +/* 80195554 001924B4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80195558 001924B8 7C 03 00 40 */ cmplw r3, r0 +/* 8019555C 001924BC 41 82 00 68 */ beq lbl_801955C4 +/* 80195560 001924C0 7F C3 F3 78 */ mr r3, r30 +/* 80195564 001924C4 7F E4 FB 78 */ mr r4, r31 +/* 80195568 001924C8 4B FF FC ED */ bl GetCurrScanInfo__21CHudDecoInterfaceScanCFRC13CStateManager +/* 8019556C 001924CC 28 03 00 00 */ cmplwi r3, 0 +/* 80195570 001924D0 41 82 00 54 */ beq lbl_801955C4 +/* 80195574 001924D4 A0 1E 01 D2 */ lhz r0, 0x1d2(r30) +/* 80195578 001924D8 7F E3 FB 78 */ mr r3, r31 +/* 8019557C 001924DC 38 81 00 18 */ addi r4, r1, 0x18 +/* 80195580 001924E0 B0 01 00 18 */ sth r0, 0x18(r1) +/* 80195584 001924E4 4B EB 70 21 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80195588 001924E8 7C 64 1B 78 */ mr r4, r3 +/* 8019558C 001924EC 38 61 00 3C */ addi r3, r1, 0x3c +/* 80195590 001924F0 4B F1 A7 01 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 80195594 001924F4 80 63 00 04 */ lwz r3, 4(r3) +/* 80195598 001924F8 28 03 00 00 */ cmplwi r3, 0 +/* 8019559C 001924FC 41 82 00 28 */ beq lbl_801955C4 +/* 801955A0 00192500 4B EB DF 29 */ bl GetScannableObjectInfo__6CActorCFv +/* 801955A4 00192504 28 03 00 00 */ cmplwi r3, 0 +/* 801955A8 00192508 41 82 00 1C */ beq lbl_801955C4 +/* 801955AC 0019250C C0 3E 01 D8 */ lfs f1, 0x1d8(r30) +/* 801955B0 00192510 38 80 00 00 */ li r4, 0 +/* 801955B4 00192514 C0 03 00 08 */ lfs f0, 8(r3) +/* 801955B8 00192518 80 7E 02 5C */ lwz r3, 0x25c(r30) +/* 801955BC 0019251C EC 21 00 24 */ fdivs f1, f1, f0 +/* 801955C0 00192520 48 13 63 09 */ bl SetCurrEnergy__16CAuiEnergyBarT01Ffb +lbl_801955C4: +/* 801955C4 00192524 80 1E 01 D4 */ lwz r0, 0x1d4(r30) +/* 801955C8 00192528 2C 00 00 01 */ cmpwi r0, 1 +/* 801955CC 0019252C 41 82 00 60 */ beq lbl_8019562C +/* 801955D0 00192530 A0 7E 01 D0 */ lhz r3, 0x1d0(r30) +/* 801955D4 00192534 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801955D8 00192538 7C 03 00 40 */ cmplw r3, r0 +/* 801955DC 0019253C 41 82 00 24 */ beq lbl_80195600 +/* 801955E0 00192540 A0 1E 01 D0 */ lhz r0, 0x1d0(r30) +/* 801955E4 00192544 7F E5 FB 78 */ mr r5, r31 +/* 801955E8 00192548 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 801955EC 0019254C 38 81 00 14 */ addi r4, r1, 0x14 +/* 801955F0 00192550 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801955F4 00192554 4B E7 C9 AD */ bl ObjectInScanningRange__7CPlayerF9TUniqueIdRC13CStateManager +/* 801955F8 00192558 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801955FC 0019255C 41 82 00 30 */ beq lbl_8019562C +lbl_80195600: +/* 80195600 00192560 C0 3E 02 38 */ lfs f1, 0x238(r30) +/* 80195604 00192564 C0 0D 8F B0 */ lfs f0, lbl_805A7B70@sda21(r13) +/* 80195608 00192568 EC 21 F0 28 */ fsubs f1, f1, f30 +/* 8019560C 0019256C FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80195610 00192570 D0 21 00 38 */ stfs f1, 0x38(r1) +/* 80195614 00192574 40 80 00 0C */ bge lbl_80195620 +/* 80195618 00192578 38 61 00 38 */ addi r3, r1, 0x38 +/* 8019561C 0019257C 48 00 00 08 */ b lbl_80195624 +lbl_80195620: +/* 80195620 00192580 38 6D 8F B0 */ addi r3, r13, lbl_805A7B70@sda21 +lbl_80195624: +/* 80195624 00192584 C0 03 00 00 */ lfs f0, 0(r3) +/* 80195628 00192588 D0 1E 02 38 */ stfs f0, 0x238(r30) +lbl_8019562C: +/* 8019562C 0019258C C0 3E 02 38 */ lfs f1, 0x238(r30) +/* 80195630 00192590 C0 02 A6 6C */ lfs f0, lbl_805AC38C@sda21(r2) +/* 80195634 00192594 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80195638 00192598 40 81 00 5C */ ble lbl_80195694 +/* 8019563C 0019259C C0 0D 8F B4 */ lfs f0, lbl_805A7B74@sda21(r13) +/* 80195640 001925A0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80195644 001925A4 40 80 00 0C */ bge lbl_80195650 +/* 80195648 001925A8 38 7E 02 38 */ addi r3, r30, 0x238 +/* 8019564C 001925AC 48 00 00 08 */ b lbl_80195654 +lbl_80195650: +/* 80195650 001925B0 38 6D 8F B4 */ addi r3, r13, lbl_805A7B74@sda21 +lbl_80195654: +/* 80195654 001925B4 C3 A3 00 00 */ lfs f29, 0(r3) +/* 80195658 001925B8 48 1B 49 55 */ bl White__6CColorFv +/* 8019565C 001925BC C0 02 A6 7C */ lfs f0, lbl_805AC39C@sda21(r2) +/* 80195660 001925C0 EF 80 07 72 */ fmuls f28, f0, f29 +/* 80195664 001925C4 F3 81 A0 11 */ psq_st f28, 17(r1), 1, qr2 +/* 80195668 001925C8 38 81 00 34 */ addi r4, r1, 0x34 +/* 8019566C 001925CC 80 63 00 00 */ lwz r3, 0(r3) +/* 80195670 001925D0 88 01 00 11 */ lbz r0, 0x11(r1) +/* 80195674 001925D4 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 80195678 001925D8 90 01 00 34 */ stw r0, 0x34(r1) +/* 8019567C 001925DC 80 7E 02 54 */ lwz r3, 0x254(r30) +/* 80195680 001925E0 48 13 51 ED */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80195684 001925E4 80 7E 02 54 */ lwz r3, 0x254(r30) +/* 80195688 001925E8 38 80 00 01 */ li r4, 1 +/* 8019568C 001925EC 48 13 4F A1 */ bl SetIsVisible__10CGuiWidgetFb +/* 80195690 001925F0 48 00 00 10 */ b lbl_801956A0 +lbl_80195694: +/* 80195694 001925F4 80 7E 02 54 */ lwz r3, 0x254(r30) +/* 80195698 001925F8 38 80 00 00 */ li r4, 0 +/* 8019569C 001925FC 48 13 4F 91 */ bl SetIsVisible__10CGuiWidgetFb +lbl_801956A0: +/* 801956A0 00192600 7F C3 F3 78 */ mr r3, r30 +/* 801956A4 00192604 7F E4 FB 78 */ mr r4, r31 +/* 801956A8 00192608 4B FF FB AD */ bl GetCurrScanInfo__21CHudDecoInterfaceScanCFRC13CStateManager +/* 801956AC 0019260C 28 03 00 00 */ cmplwi r3, 0 +/* 801956B0 00192610 41 82 00 38 */ beq lbl_801956E8 +/* 801956B4 00192614 C0 42 A6 78 */ lfs f2, lbl_805AC398@sda21(r2) +/* 801956B8 00192618 C0 3E 02 3C */ lfs f1, 0x23c(r30) +/* 801956BC 0019261C C0 0D 8F B8 */ lfs f0, lbl_805A7B78@sda21(r13) +/* 801956C0 00192620 EC 22 0F BA */ fmadds f1, f2, f30, f1 +/* 801956C4 00192624 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801956C8 00192628 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 801956CC 0019262C 40 80 00 0C */ bge lbl_801956D8 +/* 801956D0 00192630 38 61 00 30 */ addi r3, r1, 0x30 +/* 801956D4 00192634 48 00 00 08 */ b lbl_801956DC +lbl_801956D8: +/* 801956D8 00192638 38 6D 8F B8 */ addi r3, r13, lbl_805A7B78@sda21 +lbl_801956DC: +/* 801956DC 0019263C C0 03 00 00 */ lfs f0, 0(r3) +/* 801956E0 00192640 D0 1E 02 3C */ stfs f0, 0x23c(r30) +/* 801956E4 00192644 48 00 00 34 */ b lbl_80195718 +lbl_801956E8: +/* 801956E8 00192648 C0 42 A6 78 */ lfs f2, lbl_805AC398@sda21(r2) +/* 801956EC 0019264C C0 3E 02 3C */ lfs f1, 0x23c(r30) +/* 801956F0 00192650 C0 0D 8F BC */ lfs f0, lbl_805A7B7C@sda21(r13) +/* 801956F4 00192654 EC 22 0F BC */ fnmsubs f1, f2, f30, f1 +/* 801956F8 00192658 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801956FC 0019265C D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 80195700 00192660 40 80 00 0C */ bge lbl_8019570C +/* 80195704 00192664 38 61 00 2C */ addi r3, r1, 0x2c +/* 80195708 00192668 48 00 00 08 */ b lbl_80195710 +lbl_8019570C: +/* 8019570C 0019266C 38 6D 8F BC */ addi r3, r13, lbl_805A7B7C@sda21 +lbl_80195710: +/* 80195710 00192670 C0 03 00 00 */ lfs f0, 0(r3) +/* 80195714 00192674 D0 1E 02 3C */ stfs f0, 0x23c(r30) +lbl_80195718: +/* 80195718 00192678 C0 3E 02 3C */ lfs f1, 0x23c(r30) +/* 8019571C 0019267C C0 02 A6 6C */ lfs f0, lbl_805AC38C@sda21(r2) +/* 80195720 00192680 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80195724 00192684 40 81 00 60 */ ble lbl_80195784 +/* 80195728 00192688 C0 0D 8F C0 */ lfs f0, lbl_805A7B80@sda21(r13) +/* 8019572C 0019268C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80195730 00192690 40 80 00 0C */ bge lbl_8019573C +/* 80195734 00192694 38 7E 02 3C */ addi r3, r30, 0x23c +/* 80195738 00192698 48 00 00 08 */ b lbl_80195740 +lbl_8019573C: +/* 8019573C 0019269C 38 6D 8F C0 */ addi r3, r13, lbl_805A7B80@sda21 +lbl_80195740: +/* 80195740 001926A0 C3 A3 00 00 */ lfs f29, 0(r3) +/* 80195744 001926A4 48 1B 48 69 */ bl White__6CColorFv +/* 80195748 001926A8 C0 02 A6 7C */ lfs f0, lbl_805AC39C@sda21(r2) +/* 8019574C 001926AC EF E0 07 72 */ fmuls f31, f0, f29 +/* 80195750 001926B0 F3 E1 A0 10 */ psq_st f31, 16(r1), 1, qr2 +/* 80195754 001926B4 38 81 00 28 */ addi r4, r1, 0x28 +/* 80195758 001926B8 80 63 00 00 */ lwz r3, 0(r3) +/* 8019575C 001926BC 88 01 00 10 */ lbz r0, 0x10(r1) +/* 80195760 001926C0 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 80195764 001926C4 90 01 00 28 */ stw r0, 0x28(r1) +/* 80195768 001926C8 80 7E 02 58 */ lwz r3, 0x258(r30) +/* 8019576C 001926CC 48 13 51 01 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80195770 001926D0 80 7E 02 58 */ lwz r3, 0x258(r30) +/* 80195774 001926D4 38 80 00 01 */ li r4, 1 +/* 80195778 001926D8 38 A0 00 01 */ li r5, 1 +/* 8019577C 001926DC 48 13 4F 6D */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80195780 001926E0 48 00 00 14 */ b lbl_80195794 +lbl_80195784: +/* 80195784 001926E4 80 7E 02 58 */ lwz r3, 0x258(r30) +/* 80195788 001926E8 38 80 00 00 */ li r4, 0 +/* 8019578C 001926EC 38 A0 00 01 */ li r5, 1 +/* 80195790 001926F0 48 13 4F 59 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +lbl_80195794: +/* 80195794 001926F4 E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 +/* 80195798 001926F8 CB E1 00 D0 */ lfd f31, 0xd0(r1) +/* 8019579C 001926FC E3 C1 00 C8 */ psq_l f30, 200(r1), 0, qr0 +/* 801957A0 00192700 CB C1 00 C0 */ lfd f30, 0xc0(r1) +/* 801957A4 00192704 E3 A1 00 B8 */ psq_l f29, 184(r1), 0, qr0 +/* 801957A8 00192708 CB A1 00 B0 */ lfd f29, 0xb0(r1) +/* 801957AC 0019270C E3 81 00 A8 */ psq_l f28, 168(r1), 0, qr0 +/* 801957B0 00192710 CB 81 00 A0 */ lfd f28, 0xa0(r1) +/* 801957B4 00192714 83 E1 00 9C */ lwz r31, 0x9c(r1) +/* 801957B8 00192718 83 C1 00 98 */ lwz r30, 0x98(r1) +/* 801957BC 0019271C 83 A1 00 94 */ lwz r29, 0x94(r1) +/* 801957C0 00192720 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 801957C4 00192724 83 81 00 90 */ lwz r28, 0x90(r1) +/* 801957C8 00192728 7C 08 03 A6 */ mtlr r0 +/* 801957CC 0019272C 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 801957D0 00192730 4E 80 00 20 */ blr + +.global UpdateCameraDebugSettings__21CHudDecoInterfaceScanFfff +UpdateCameraDebugSettings__21CHudDecoInterfaceScanFfff: +/* 801957D4 00192734 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801957D8 00192738 C0 02 A6 6C */ lfs f0, lbl_805AC38C@sda21(r2) +/* 801957DC 0019273C 81 43 02 44 */ lwz r10, 0x244(r3) +/* 801957E0 00192740 81 2A 00 BC */ lwz r9, 0xbc(r10) +/* 801957E4 00192744 81 0A 00 C0 */ lwz r8, 0xc0(r10) +/* 801957E8 00192748 91 21 00 20 */ stw r9, 0x20(r1) +/* 801957EC 0019274C 80 EA 00 C4 */ lwz r7, 0xc4(r10) +/* 801957F0 00192750 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 801957F4 00192754 80 CA 00 C8 */ lwz r6, 0xc8(r10) +/* 801957F8 00192758 80 AA 00 CC */ lwz r5, 0xcc(r10) +/* 801957FC 0019275C 80 8A 00 D0 */ lwz r4, 0xd0(r10) +/* 80195800 00192760 80 01 00 20 */ lwz r0, 0x20(r1) +/* 80195804 00192764 91 21 00 08 */ stw r9, 8(r1) +/* 80195808 00192768 90 0A 00 BC */ stw r0, 0xbc(r10) +/* 8019580C 0019276C 91 0A 00 C0 */ stw r8, 0xc0(r10) +/* 80195810 00192770 90 EA 00 C4 */ stw r7, 0xc4(r10) +/* 80195814 00192774 90 CA 00 C8 */ stw r6, 0xc8(r10) +/* 80195818 00192778 90 AA 00 CC */ stw r5, 0xcc(r10) +/* 8019581C 0019277C 90 8A 00 D0 */ stw r4, 0xd0(r10) +/* 80195820 00192780 D0 03 02 0C */ stfs f0, 0x20c(r3) +/* 80195824 00192784 D0 43 02 10 */ stfs f2, 0x210(r3) +/* 80195828 00192788 91 01 00 0C */ stw r8, 0xc(r1) +/* 8019582C 0019278C 90 E1 00 10 */ stw r7, 0x10(r1) +/* 80195830 00192790 90 C1 00 14 */ stw r6, 0x14(r1) +/* 80195834 00192794 90 A1 00 18 */ stw r5, 0x18(r1) +/* 80195838 00192798 90 81 00 1C */ stw r4, 0x1c(r1) +/* 8019583C 0019279C 91 01 00 24 */ stw r8, 0x24(r1) +/* 80195840 001927A0 90 E1 00 28 */ stw r7, 0x28(r1) +/* 80195844 001927A4 90 C1 00 2C */ stw r6, 0x2c(r1) +/* 80195848 001927A8 90 A1 00 30 */ stw r5, 0x30(r1) +/* 8019584C 001927AC 90 81 00 34 */ stw r4, 0x34(r1) +/* 80195850 001927B0 D0 63 02 14 */ stfs f3, 0x214(r3) +/* 80195854 001927B4 38 21 00 40 */ addi r1, r1, 0x40 +/* 80195858 001927B8 4E 80 00 20 */ blr + +.global ProcessInput__21CHudDecoInterfaceScanFRC11CFinalInput +ProcessInput__21CHudDecoInterfaceScanFRC11CFinalInput: +/* 8019585C 001927BC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80195860 001927C0 7C 08 02 A6 */ mflr r0 +/* 80195864 001927C4 38 63 00 18 */ addi r3, r3, 0x18 +/* 80195868 001927C8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8019586C 001927CC 4B FD D4 D9 */ bl ProcessInput__12CScanDisplayFRC11CFinalInput +/* 80195870 001927D0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80195874 001927D4 7C 08 03 A6 */ mtlr r0 +/* 80195878 001927D8 38 21 00 10 */ addi r1, r1, 0x10 +/* 8019587C 001927DC 4E 80 00 20 */ blr + +.global Draw__21CHudDecoInterfaceScanCFv +Draw__21CHudDecoInterfaceScanCFv: +/* 80195880 001927E0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80195884 001927E4 7C 08 02 A6 */ mflr r0 +/* 80195888 001927E8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8019588C 001927EC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80195890 001927F0 7C 7F 1B 78 */ mr r31, r3 +/* 80195894 001927F4 38 7F 00 18 */ addi r3, r31, 0x18 +/* 80195898 001927F8 4B FD D3 A9 */ bl Draw__12CScanDisplayCFv +/* 8019589C 001927FC 80 7F 00 10 */ lwz r3, 0x10(r31) +/* 801958A0 00192800 28 03 00 00 */ cmplwi r3, 0 +/* 801958A4 00192804 41 82 00 10 */ beq lbl_801958B4 +/* 801958A8 00192808 3C 80 80 5A */ lis r4, lbl_8059FD08@ha +/* 801958AC 0019280C 38 84 FD 08 */ addi r4, r4, lbl_8059FD08@l +/* 801958B0 00192810 48 12 CE 85 */ bl Draw__9CGuiFrameCFRC19CGuiWidgetDrawParms +lbl_801958B4: +/* 801958B4 00192814 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801958B8 00192818 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801958BC 0019281C 7C 08 03 A6 */ mtlr r0 +/* 801958C0 00192820 38 21 00 10 */ addi r1, r1, 0x10 +/* 801958C4 00192824 4E 80 00 20 */ blr + +.global Update__21CHudDecoInterfaceScanFfRC13CStateManager +Update__21CHudDecoInterfaceScanFfRC13CStateManager: +/* 801958C8 00192828 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 801958CC 0019282C 7C 08 02 A6 */ mflr r0 +/* 801958D0 00192830 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 801958D4 00192834 DB E1 00 90 */ stfd f31, 0x90(r1) +/* 801958D8 00192838 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 +/* 801958DC 0019283C 93 E1 00 8C */ stw r31, 0x8c(r1) +/* 801958E0 00192840 93 C1 00 88 */ stw r30, 0x88(r1) +/* 801958E4 00192844 7C 9F 23 78 */ mr r31, r4 +/* 801958E8 00192848 FF E0 08 90 */ fmr f31, f1 +/* 801958EC 0019284C 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 801958F0 00192850 7C 7E 1B 78 */ mr r30, r3 +/* 801958F4 00192854 80 04 03 A8 */ lwz r0, 0x3a8(r4) +/* 801958F8 00192858 2C 00 00 00 */ cmpwi r0, 0 +/* 801958FC 0019285C 41 82 00 0C */ beq lbl_80195908 +/* 80195900 00192860 C0 04 03 AC */ lfs f0, 0x3ac(r4) +/* 80195904 00192864 D0 1E 01 D8 */ stfs f0, 0x1d8(r30) +lbl_80195908: +/* 80195908 00192868 2C 00 00 01 */ cmpwi r0, 1 +/* 8019590C 0019286C 41 82 00 0C */ beq lbl_80195918 +/* 80195910 00192870 2C 00 00 02 */ cmpwi r0, 2 +/* 80195914 00192874 40 82 00 30 */ bne lbl_80195944 +lbl_80195918: +/* 80195918 00192878 C0 1E 02 30 */ lfs f0, 0x230(r30) +/* 8019591C 0019287C 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) +/* 80195920 00192880 EC 20 F8 2A */ fadds f1, f0, f31 +/* 80195924 00192884 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 80195928 00192888 C4 03 02 28 */ lfsu f0, 0x228(r3) +/* 8019592C 0019288C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80195930 00192890 40 80 00 08 */ bge lbl_80195938 +/* 80195934 00192894 38 61 00 0C */ addi r3, r1, 0xc +lbl_80195938: +/* 80195938 00192898 C0 03 00 00 */ lfs f0, 0(r3) +/* 8019593C 0019289C D0 1E 02 30 */ stfs f0, 0x230(r30) +/* 80195940 001928A0 48 00 00 30 */ b lbl_80195970 +lbl_80195944: +/* 80195944 001928A4 C0 3E 02 30 */ lfs f1, 0x230(r30) +/* 80195948 001928A8 C0 0D 8F AC */ lfs f0, lbl_805A7B6C@sda21(r13) +/* 8019594C 001928AC EC 21 F8 28 */ fsubs f1, f1, f31 +/* 80195950 001928B0 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80195954 001928B4 D0 21 00 08 */ stfs f1, 8(r1) +/* 80195958 001928B8 40 80 00 0C */ bge lbl_80195964 +/* 8019595C 001928BC 38 61 00 08 */ addi r3, r1, 8 +/* 80195960 001928C0 48 00 00 08 */ b lbl_80195968 +lbl_80195964: +/* 80195964 001928C4 38 6D 8F AC */ addi r3, r13, lbl_805A7B6C@sda21 +lbl_80195968: +/* 80195968 001928C8 C0 03 00 00 */ lfs f0, 0(r3) +/* 8019596C 001928CC D0 1E 02 30 */ stfs f0, 0x230(r30) +lbl_80195970: +/* 80195970 001928D0 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) +/* 80195974 001928D4 C0 1E 02 30 */ lfs f0, 0x230(r30) +/* 80195978 001928D8 C0 23 02 24 */ lfs f1, 0x224(r3) +/* 8019597C 001928DC C0 9E 02 34 */ lfs f4, 0x234(r30) +/* 80195980 001928E0 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80195984 001928E4 C0 43 02 20 */ lfs f2, 0x220(r3) +/* 80195988 001928E8 40 80 00 0C */ bge lbl_80195994 +/* 8019598C 001928EC C0 62 A6 6C */ lfs f3, lbl_805AC38C@sda21(r2) +/* 80195990 001928F0 48 00 00 0C */ b lbl_8019599C +lbl_80195994: +/* 80195994 001928F4 EC 00 08 28 */ fsubs f0, f0, f1 +/* 80195998 001928F8 EC 60 10 24 */ fdivs f3, f0, f2 +lbl_8019599C: +/* 8019599C 001928FC C0 22 A6 68 */ lfs f1, lbl_805AC388@sda21(r2) +/* 801959A0 00192900 C0 03 02 18 */ lfs f0, 0x218(r3) +/* 801959A4 00192904 EC 41 18 28 */ fsubs f2, f1, f3 +/* 801959A8 00192908 C0 23 02 70 */ lfs f1, 0x270(r3) +/* 801959AC 0019290C EC 03 00 32 */ fmuls f0, f3, f0 +/* 801959B0 00192910 EC 02 00 7A */ fmadds f0, f2, f1, f0 +/* 801959B4 00192914 D0 1E 02 34 */ stfs f0, 0x234(r30) +/* 801959B8 00192918 C0 3E 02 34 */ lfs f1, 0x234(r30) +/* 801959BC 0019291C FC 04 08 00 */ fcmpu cr0, f4, f1 +/* 801959C0 00192920 41 82 00 AC */ beq lbl_80195A6C +/* 801959C4 00192924 C0 02 A6 6C */ lfs f0, lbl_805AC38C@sda21(r2) +/* 801959C8 00192928 38 61 00 34 */ addi r3, r1, 0x34 +/* 801959CC 0019292C D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 801959D0 00192930 38 A1 00 4C */ addi r5, r1, 0x4c +/* 801959D4 00192934 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 801959D8 00192938 D0 01 00 54 */ stfs f0, 0x54(r1) +/* 801959DC 0019293C 80 9E 02 4C */ lwz r4, 0x24c(r30) +/* 801959E0 00192940 48 12 F7 15 */ bl RotateO2P__10CGuiObjectCFRC9CVector3f +/* 801959E4 00192944 C0 3E 02 1C */ lfs f1, 0x21c(r30) +/* 801959E8 00192948 38 81 00 40 */ addi r4, r1, 0x40 +/* 801959EC 0019294C C0 01 00 38 */ lfs f0, 0x38(r1) +/* 801959F0 00192950 C0 7E 02 20 */ lfs f3, 0x220(r30) +/* 801959F4 00192954 C0 41 00 3C */ lfs f2, 0x3c(r1) +/* 801959F8 00192958 EC 81 00 2A */ fadds f4, f1, f0 +/* 801959FC 0019295C C0 3E 02 18 */ lfs f1, 0x218(r30) +/* 80195A00 00192960 C0 01 00 34 */ lfs f0, 0x34(r1) +/* 80195A04 00192964 EC 43 10 2A */ fadds f2, f3, f2 +/* 80195A08 00192968 D0 81 00 44 */ stfs f4, 0x44(r1) +/* 80195A0C 0019296C EC 01 00 2A */ fadds f0, f1, f0 +/* 80195A10 00192970 D0 41 00 48 */ stfs f2, 0x48(r1) +/* 80195A14 00192974 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 80195A18 00192978 80 7E 02 4C */ lwz r3, 0x24c(r30) +/* 80195A1C 0019297C 48 12 F7 AD */ bl SetLocalPosition__10CGuiObjectFRC9CVector3f +/* 80195A20 00192980 80 9E 02 50 */ lwz r4, 0x250(r30) +/* 80195A24 00192984 38 61 00 1C */ addi r3, r1, 0x1c +/* 80195A28 00192988 38 A1 00 4C */ addi r5, r1, 0x4c +/* 80195A2C 0019298C 48 12 F6 C9 */ bl RotateO2P__10CGuiObjectCFRC9CVector3f +/* 80195A30 00192990 C0 3E 02 28 */ lfs f1, 0x228(r30) +/* 80195A34 00192994 38 81 00 28 */ addi r4, r1, 0x28 +/* 80195A38 00192998 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 80195A3C 0019299C C0 7E 02 2C */ lfs f3, 0x22c(r30) +/* 80195A40 001929A0 C0 41 00 24 */ lfs f2, 0x24(r1) +/* 80195A44 001929A4 EC 81 00 28 */ fsubs f4, f1, f0 +/* 80195A48 001929A8 C0 3E 02 24 */ lfs f1, 0x224(r30) +/* 80195A4C 001929AC C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 80195A50 001929B0 EC 43 10 28 */ fsubs f2, f3, f2 +/* 80195A54 001929B4 D0 81 00 2C */ stfs f4, 0x2c(r1) +/* 80195A58 001929B8 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80195A5C 001929BC D0 41 00 30 */ stfs f2, 0x30(r1) +/* 80195A60 001929C0 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 80195A64 001929C4 80 7E 02 50 */ lwz r3, 0x250(r30) +/* 80195A68 001929C8 48 12 F7 61 */ bl SetLocalPosition__10CGuiObjectFRC9CVector3f +lbl_80195A6C: +/* 80195A6C 001929CC C0 3E 01 F8 */ lfs f1, 0x1f8(r30) +/* 80195A70 001929D0 38 61 00 58 */ addi r3, r1, 0x58 +/* 80195A74 001929D4 C0 1E 02 04 */ lfs f0, 0x204(r30) +/* 80195A78 001929D8 38 9E 01 E4 */ addi r4, r30, 0x1e4 +/* 80195A7C 001929DC C0 7E 01 FC */ lfs f3, 0x1fc(r30) +/* 80195A80 001929E0 38 A1 00 10 */ addi r5, r1, 0x10 +/* 80195A84 001929E4 C0 5E 02 08 */ lfs f2, 0x208(r30) +/* 80195A88 001929E8 EC 81 00 2A */ fadds f4, f1, f0 +/* 80195A8C 001929EC C0 3E 01 F4 */ lfs f1, 0x1f4(r30) +/* 80195A90 001929F0 38 DE 02 0C */ addi r6, r30, 0x20c +/* 80195A94 001929F4 C0 1E 02 00 */ lfs f0, 0x200(r30) +/* 80195A98 001929F8 EC 43 10 2A */ fadds f2, f3, f2 +/* 80195A9C 001929FC EC 01 00 2A */ fadds f0, f1, f0 +/* 80195AA0 00192A00 D0 81 00 14 */ stfs f4, 0x14(r1) +/* 80195AA4 00192A04 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 80195AA8 00192A08 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 80195AAC 00192A0C 4B ED 7A F5 */ bl BuildFinalCameraTransform__9CSamusHudFRC11CQuaternionRC9CVector3fRC9CVector3f +/* 80195AB0 00192A10 80 7E 02 44 */ lwz r3, 0x244(r30) +/* 80195AB4 00192A14 38 81 00 58 */ addi r4, r1, 0x58 +/* 80195AB8 00192A18 48 12 EC 81 */ bl SetO2WTransform__10CGuiObjectFRC12CTransform4f +/* 80195ABC 00192A1C 80 1E 00 10 */ lwz r0, 0x10(r30) +/* 80195AC0 00192A20 28 00 00 00 */ cmplwi r0, 0 +/* 80195AC4 00192A24 40 82 00 78 */ bne lbl_80195B3C +/* 80195AC8 00192A28 80 1E 00 0C */ lwz r0, 0xc(r30) +/* 80195ACC 00192A2C 28 00 00 00 */ cmplwi r0, 0 +/* 80195AD0 00192A30 41 82 00 0C */ beq lbl_80195ADC +/* 80195AD4 00192A34 38 60 00 01 */ li r3, 1 +/* 80195AD8 00192A38 48 00 00 3C */ b lbl_80195B14 +lbl_80195ADC: +/* 80195ADC 00192A3C 88 1E 00 08 */ lbz r0, 8(r30) +/* 80195AE0 00192A40 28 00 00 00 */ cmplwi r0, 0 +/* 80195AE4 00192A44 41 82 00 2C */ beq lbl_80195B10 +/* 80195AE8 00192A48 80 7E 00 04 */ lwz r3, 4(r30) +/* 80195AEC 00192A4C 80 03 00 10 */ lwz r0, 0x10(r3) +/* 80195AF0 00192A50 28 00 00 00 */ cmplwi r0, 0 +/* 80195AF4 00192A54 41 82 00 1C */ beq lbl_80195B10 +/* 80195AF8 00192A58 38 7E 00 04 */ addi r3, r30, 4 +/* 80195AFC 00192A5C 48 1A B3 11 */ bl GetObj__6CTokenFv +/* 80195B00 00192A60 80 03 00 04 */ lwz r0, 4(r3) +/* 80195B04 00192A64 38 60 00 01 */ li r3, 1 +/* 80195B08 00192A68 90 1E 00 0C */ stw r0, 0xc(r30) +/* 80195B0C 00192A6C 48 00 00 08 */ b lbl_80195B14 +lbl_80195B10: +/* 80195B10 00192A70 38 60 00 00 */ li r3, 0 +lbl_80195B14: +/* 80195B14 00192A74 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80195B18 00192A78 41 82 00 40 */ beq lbl_80195B58 +/* 80195B1C 00192A7C 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 80195B20 00192A80 48 12 CA 31 */ bl GetIsFinishedLoading__9CGuiFrameCFv +/* 80195B24 00192A84 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80195B28 00192A88 41 82 00 30 */ beq lbl_80195B58 +/* 80195B2C 00192A8C 7F C3 F3 78 */ mr r3, r30 +/* 80195B30 00192A90 48 00 00 49 */ bl InitializeFlatFrame__21CHudDecoInterfaceScanFv +/* 80195B34 00192A94 48 00 00 08 */ b lbl_80195B3C +/* 80195B38 00192A98 48 00 00 20 */ b lbl_80195B58 +lbl_80195B3C: +/* 80195B3C 00192A9C FC 20 F8 90 */ fmr f1, f31 +/* 80195B40 00192AA0 80 7E 00 10 */ lwz r3, 0x10(r30) +/* 80195B44 00192AA4 48 12 CB C1 */ bl Update__9CGuiFrameFf +/* 80195B48 00192AA8 FC 20 F8 90 */ fmr f1, f31 +/* 80195B4C 00192AAC 7F C3 F3 78 */ mr r3, r30 +/* 80195B50 00192AB0 7F E4 FB 78 */ mr r4, r31 +/* 80195B54 00192AB4 4B FF F7 69 */ bl UpdateScanDisplay__21CHudDecoInterfaceScanFRC13CStateManagerf +lbl_80195B58: +/* 80195B58 00192AB8 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 +/* 80195B5C 00192ABC 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 80195B60 00192AC0 CB E1 00 90 */ lfd f31, 0x90(r1) +/* 80195B64 00192AC4 83 E1 00 8C */ lwz r31, 0x8c(r1) +/* 80195B68 00192AC8 83 C1 00 88 */ lwz r30, 0x88(r1) +/* 80195B6C 00192ACC 7C 08 03 A6 */ mtlr r0 +/* 80195B70 00192AD0 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 80195B74 00192AD4 4E 80 00 20 */ blr + +.global InitializeFlatFrame__21CHudDecoInterfaceScanFv +InitializeFlatFrame__21CHudDecoInterfaceScanFv: +/* 80195B78 00192AD8 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 80195B7C 00192ADC 7C 08 02 A6 */ mflr r0 +/* 80195B80 00192AE0 90 01 00 94 */ stw r0, 0x94(r1) +/* 80195B84 00192AE4 BF 61 00 7C */ stmw r27, 0x7c(r1) +/* 80195B88 00192AE8 7C 7E 1B 78 */ mr r30, r3 +/* 80195B8C 00192AEC 3C 60 80 3D */ lis r3, lbl_803D0F10@ha +/* 80195B90 00192AF0 3B E3 0F 10 */ addi r31, r3, lbl_803D0F10@l +/* 80195B94 00192AF4 38 9E 02 0C */ addi r4, r30, 0x20c +/* 80195B98 00192AF8 38 61 00 3C */ addi r3, r1, 0x3c +/* 80195B9C 00192AFC 80 1E 00 0C */ lwz r0, 0xc(r30) +/* 80195BA0 00192B00 90 1E 00 10 */ stw r0, 0x10(r30) +/* 80195BA4 00192B04 80 BE 02 44 */ lwz r5, 0x244(r30) +/* 80195BA8 00192B08 80 DE 00 10 */ lwz r6, 0x10(r30) +/* 80195BAC 00192B0C 80 05 00 BC */ lwz r0, 0xbc(r5) +/* 80195BB0 00192B10 83 66 00 14 */ lwz r27, 0x14(r6) +/* 80195BB4 00192B14 90 01 00 0C */ stw r0, 0xc(r1) +/* 80195BB8 00192B18 80 1B 00 BC */ lwz r0, 0xbc(r27) +/* 80195BBC 00192B1C C0 01 00 0C */ lfs f0, 0xc(r1) +/* 80195BC0 00192B20 90 01 00 24 */ stw r0, 0x24(r1) +/* 80195BC4 00192B24 83 9B 00 C0 */ lwz r28, 0xc0(r27) +/* 80195BC8 00192B28 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 80195BCC 00192B2C 83 BB 00 C4 */ lwz r29, 0xc4(r27) +/* 80195BD0 00192B30 81 9B 00 C8 */ lwz r12, 0xc8(r27) +/* 80195BD4 00192B34 81 7B 00 CC */ lwz r11, 0xcc(r27) +/* 80195BD8 00192B38 81 5B 00 D0 */ lwz r10, 0xd0(r27) +/* 80195BDC 00192B3C 81 25 00 C0 */ lwz r9, 0xc0(r5) +/* 80195BE0 00192B40 81 05 00 C4 */ lwz r8, 0xc4(r5) +/* 80195BE4 00192B44 80 E5 00 C8 */ lwz r7, 0xc8(r5) +/* 80195BE8 00192B48 80 C5 00 CC */ lwz r6, 0xcc(r5) +/* 80195BEC 00192B4C 80 A5 00 D0 */ lwz r5, 0xd0(r5) +/* 80195BF0 00192B50 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80195BF4 00192B54 93 81 00 28 */ stw r28, 0x28(r1) +/* 80195BF8 00192B58 90 1B 00 BC */ stw r0, 0xbc(r27) +/* 80195BFC 00192B5C 93 9B 00 C0 */ stw r28, 0xc0(r27) +/* 80195C00 00192B60 93 BB 00 C4 */ stw r29, 0xc4(r27) +/* 80195C04 00192B64 91 9B 00 C8 */ stw r12, 0xc8(r27) +/* 80195C08 00192B68 91 7B 00 CC */ stw r11, 0xcc(r27) +/* 80195C0C 00192B6C 93 A1 00 2C */ stw r29, 0x2c(r1) +/* 80195C10 00192B70 91 81 00 30 */ stw r12, 0x30(r1) +/* 80195C14 00192B74 91 61 00 34 */ stw r11, 0x34(r1) +/* 80195C18 00192B78 91 41 00 38 */ stw r10, 0x38(r1) +/* 80195C1C 00192B7C 91 21 00 10 */ stw r9, 0x10(r1) +/* 80195C20 00192B80 91 01 00 14 */ stw r8, 0x14(r1) +/* 80195C24 00192B84 90 E1 00 18 */ stw r7, 0x18(r1) +/* 80195C28 00192B88 90 C1 00 1C */ stw r6, 0x1c(r1) +/* 80195C2C 00192B8C 90 A1 00 20 */ stw r5, 0x20(r1) +/* 80195C30 00192B90 91 5B 00 D0 */ stw r10, 0xd0(r27) +/* 80195C34 00192B94 48 17 D5 0D */ bl Translate__12CTransform4fFRC9CVector3f +/* 80195C38 00192B98 7F 63 DB 78 */ mr r3, r27 +/* 80195C3C 00192B9C 38 81 00 3C */ addi r4, r1, 0x3c +/* 80195C40 00192BA0 48 12 EA F9 */ bl SetO2WTransform__10CGuiObjectFRC12CTransform4f +/* 80195C44 00192BA4 80 7E 00 10 */ lwz r3, 0x10(r30) +/* 80195C48 00192BA8 38 9F 01 50 */ addi r4, r31, 0x150 +/* 80195C4C 00192BAC 48 12 C5 09 */ bl FindWidget__9CGuiFrameCFPCc +/* 80195C50 00192BB0 90 7E 02 58 */ stw r3, 0x258(r30) +/* 80195C54 00192BB4 38 80 00 00 */ li r4, 0 +/* 80195C58 00192BB8 38 A0 00 01 */ li r5, 1 +/* 80195C5C 00192BBC 80 7E 02 58 */ lwz r3, 0x258(r30) +/* 80195C60 00192BC0 48 13 4A 89 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80195C64 00192BC4 80 7E 00 10 */ lwz r3, 0x10(r30) +/* 80195C68 00192BC8 38 9F 01 24 */ addi r4, r31, 0x124 +/* 80195C6C 00192BCC 48 12 C4 E9 */ bl FindWidget__9CGuiFrameCFPCc +/* 80195C70 00192BD0 90 7E 02 54 */ stw r3, 0x254(r30) +/* 80195C74 00192BD4 38 9F 01 38 */ addi r4, r31, 0x138 +/* 80195C78 00192BD8 80 7E 00 10 */ lwz r3, 0x10(r30) +/* 80195C7C 00192BDC 48 12 C4 D9 */ bl FindWidget__9CGuiFrameCFPCc +/* 80195C80 00192BE0 90 7E 02 5C */ stw r3, 0x25c(r30) +/* 80195C84 00192BE4 38 9F 01 80 */ addi r4, r31, 0x180 +/* 80195C88 00192BE8 80 7E 00 10 */ lwz r3, 0x10(r30) +/* 80195C8C 00192BEC 48 12 C4 C9 */ bl FindWidget__9CGuiFrameCFPCc +/* 80195C90 00192BF0 90 7E 02 64 */ stw r3, 0x264(r30) +/* 80195C94 00192BF4 38 9F 01 94 */ addi r4, r31, 0x194 +/* 80195C98 00192BF8 80 7E 00 10 */ lwz r3, 0x10(r30) +/* 80195C9C 00192BFC 48 12 C4 B9 */ bl FindWidget__9CGuiFrameCFPCc +/* 80195CA0 00192C00 90 7E 02 68 */ stw r3, 0x268(r30) +/* 80195CA4 00192C04 38 9F 01 68 */ addi r4, r31, 0x168 +/* 80195CA8 00192C08 80 7E 00 10 */ lwz r3, 0x10(r30) +/* 80195CAC 00192C0C 48 12 C4 A9 */ bl FindWidget__9CGuiFrameCFPCc +/* 80195CB0 00192C10 90 7E 02 60 */ stw r3, 0x260(r30) +/* 80195CB4 00192C14 38 9F 01 AC */ addi r4, r31, 0x1ac +/* 80195CB8 00192C18 80 7E 00 10 */ lwz r3, 0x10(r30) +/* 80195CBC 00192C1C 48 12 C4 99 */ bl FindWidget__9CGuiFrameCFPCc +/* 80195CC0 00192C20 90 7E 02 6C */ stw r3, 0x26c(r30) +/* 80195CC4 00192C24 38 9F 01 B8 */ addi r4, r31, 0x1b8 +/* 80195CC8 00192C28 80 7E 00 10 */ lwz r3, 0x10(r30) +/* 80195CCC 00192C2C 48 12 C4 89 */ bl FindWidget__9CGuiFrameCFPCc +/* 80195CD0 00192C30 90 7E 02 70 */ stw r3, 0x270(r30) +/* 80195CD4 00192C34 38 9F 01 C8 */ addi r4, r31, 0x1c8 +/* 80195CD8 00192C38 80 7E 00 10 */ lwz r3, 0x10(r30) +/* 80195CDC 00192C3C 48 12 C4 79 */ bl FindWidget__9CGuiFrameCFPCc +/* 80195CE0 00192C40 90 7E 02 74 */ stw r3, 0x274(r30) +/* 80195CE4 00192C44 38 80 00 00 */ li r4, 0 +/* 80195CE8 00192C48 38 A0 00 01 */ li r5, 1 +/* 80195CEC 00192C4C 80 7E 02 60 */ lwz r3, 0x260(r30) +/* 80195CF0 00192C50 48 13 49 F9 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80195CF4 00192C54 80 7E 02 54 */ lwz r3, 0x254(r30) +/* 80195CF8 00192C58 38 80 00 00 */ li r4, 0 +/* 80195CFC 00192C5C 48 13 49 31 */ bl SetIsVisible__10CGuiWidgetFb +/* 80195D00 00192C60 80 7E 02 54 */ lwz r3, 0x254(r30) +/* 80195D04 00192C64 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80195D08 00192C68 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80195D0C 00192C6C 38 84 00 14 */ addi r4, r4, 0x14 +/* 80195D10 00192C70 48 13 39 59 */ bl SetFontColor__15CGuiTextSupportFRC6CColor +/* 80195D14 00192C74 80 7E 02 54 */ lwz r3, 0x254(r30) +/* 80195D18 00192C78 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80195D1C 00192C7C 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80195D20 00192C80 38 84 00 18 */ addi r4, r4, 0x18 +/* 80195D24 00192C84 48 13 38 F5 */ bl SetOutlineColor__15CGuiTextSupportFRC6CColor +/* 80195D28 00192C88 3C 80 80 2D */ lis r4, DownloadBarCoordFunc__16CAuiEnergyBarT01Ff@ha +/* 80195D2C 00192C8C 80 7E 02 5C */ lwz r3, 0x25c(r30) +/* 80195D30 00192C90 38 04 B6 30 */ addi r0, r4, DownloadBarCoordFunc__16CAuiEnergyBarT01Ff@l +/* 80195D34 00192C94 C0 22 A6 68 */ lfs f1, lbl_805AC388@sda21(r2) +/* 80195D38 00192C98 90 03 00 D8 */ stw r0, 0xd8(r3) +/* 80195D3C 00192C9C 80 7E 02 5C */ lwz r3, 0x25c(r30) +/* 80195D40 00192CA0 D0 23 00 DC */ stfs f1, 0xdc(r3) +/* 80195D44 00192CA4 80 7E 02 5C */ lwz r3, 0x25c(r30) +/* 80195D48 00192CA8 48 13 5C 21 */ bl SetMaxEnergy__16CAuiEnergyBarT01Ff +/* 80195D4C 00192CAC 38 00 00 67 */ li r0, 0x67 +/* 80195D50 00192CB0 38 A0 00 AE */ li r5, 0xae +/* 80195D54 00192CB4 38 E0 00 E1 */ li r7, 0xe1 +/* 80195D58 00192CB8 38 C0 00 FF */ li r6, 0xff +/* 80195D5C 00192CBC 98 01 00 08 */ stb r0, 8(r1) +/* 80195D60 00192CC0 38 00 00 00 */ li r0, 0 +/* 80195D64 00192CC4 80 7E 02 5C */ lwz r3, 0x25c(r30) +/* 80195D68 00192CC8 38 80 00 00 */ li r4, 0 +/* 80195D6C 00192CCC 98 A1 00 09 */ stb r5, 9(r1) +/* 80195D70 00192CD0 38 A0 00 01 */ li r5, 1 +/* 80195D74 00192CD4 C0 22 A6 8C */ lfs f1, lbl_805AC3AC@sda21(r2) +/* 80195D78 00192CD8 98 E1 00 0A */ stb r7, 0xa(r1) +/* 80195D7C 00192CDC C0 02 A6 6C */ lfs f0, lbl_805AC38C@sda21(r2) +/* 80195D80 00192CE0 98 C1 00 0B */ stb r6, 0xb(r1) +/* 80195D84 00192CE4 80 C1 00 08 */ lwz r6, 8(r1) +/* 80195D88 00192CE8 90 C3 00 D0 */ stw r6, 0xd0(r3) +/* 80195D8C 00192CEC 80 7E 02 5C */ lwz r3, 0x25c(r30) +/* 80195D90 00192CF0 90 03 00 D4 */ stw r0, 0xd4(r3) +/* 80195D94 00192CF4 80 7E 02 5C */ lwz r3, 0x25c(r30) +/* 80195D98 00192CF8 90 03 00 CC */ stw r0, 0xcc(r3) +/* 80195D9C 00192CFC 80 7E 02 5C */ lwz r3, 0x25c(r30) +/* 80195DA0 00192D00 D0 23 00 E4 */ stfs f1, 0xe4(r3) +/* 80195DA4 00192D04 80 7E 02 5C */ lwz r3, 0x25c(r30) +/* 80195DA8 00192D08 D0 23 00 E8 */ stfs f1, 0xe8(r3) +/* 80195DAC 00192D0C 80 7E 02 5C */ lwz r3, 0x25c(r30) +/* 80195DB0 00192D10 D0 03 00 EC */ stfs f0, 0xec(r3) +/* 80195DB4 00192D14 80 7E 02 5C */ lwz r3, 0x25c(r30) +/* 80195DB8 00192D18 98 03 00 F0 */ stb r0, 0xf0(r3) +/* 80195DBC 00192D1C 80 7E 02 6C */ lwz r3, 0x26c(r30) +/* 80195DC0 00192D20 48 13 49 29 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80195DC4 00192D24 80 7E 02 70 */ lwz r3, 0x270(r30) +/* 80195DC8 00192D28 38 80 00 00 */ li r4, 0 +/* 80195DCC 00192D2C 38 A0 00 01 */ li r5, 1 +/* 80195DD0 00192D30 48 13 49 19 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80195DD4 00192D34 80 7E 02 74 */ lwz r3, 0x274(r30) +/* 80195DD8 00192D38 38 80 00 00 */ li r4, 0 +/* 80195DDC 00192D3C 38 A0 00 01 */ li r5, 1 +/* 80195DE0 00192D40 48 13 49 09 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80195DE4 00192D44 BB 61 00 7C */ lmw r27, 0x7c(r1) +/* 80195DE8 00192D48 80 01 00 94 */ lwz r0, 0x94(r1) +/* 80195DEC 00192D4C 7C 08 03 A6 */ mtlr r0 +/* 80195DF0 00192D50 38 21 00 90 */ addi r1, r1, 0x90 +/* 80195DF4 00192D54 4E 80 00 20 */ blr + +.global SetFrameColorValue__21CHudDecoInterfaceScanFf +SetFrameColorValue__21CHudDecoInterfaceScanFf: +/* 80195DF8 00192D58 4E 80 00 20 */ blr + +.global SetDamageTransform__21CHudDecoInterfaceScanFRC9CMatrix3fRC9CVector3f +SetDamageTransform__21CHudDecoInterfaceScanFRC9CMatrix3fRC9CVector3f: +/* 80195DFC 00192D5C 4E 80 00 20 */ blr + +.global SetHudOffset__21CHudDecoInterfaceScanFRC9CVector3f +SetHudOffset__21CHudDecoInterfaceScanFRC9CVector3f: +/* 80195E00 00192D60 C0 04 00 00 */ lfs f0, 0(r4) +/* 80195E04 00192D64 D0 03 02 00 */ stfs f0, 0x200(r3) +/* 80195E08 00192D68 C0 04 00 04 */ lfs f0, 4(r4) +/* 80195E0C 00192D6C D0 03 02 04 */ stfs f0, 0x204(r3) +/* 80195E10 00192D70 C0 04 00 08 */ lfs f0, 8(r4) +/* 80195E14 00192D74 D0 03 02 08 */ stfs f0, 0x208(r3) +/* 80195E18 00192D78 4E 80 00 20 */ blr + +.global SetReticuleTransform__21CHudDecoInterfaceScanFRC9CMatrix3f +SetReticuleTransform__21CHudDecoInterfaceScanFRC9CMatrix3f: +/* 80195E1C 00192D7C 4E 80 00 20 */ blr + +.global SetHudRotation__21CHudDecoInterfaceScanFRC11CQuaternion +SetHudRotation__21CHudDecoInterfaceScanFRC11CQuaternion: +/* 80195E20 00192D80 C0 04 00 00 */ lfs f0, 0(r4) +/* 80195E24 00192D84 D0 03 01 E4 */ stfs f0, 0x1e4(r3) +/* 80195E28 00192D88 80 A4 00 04 */ lwz r5, 4(r4) +/* 80195E2C 00192D8C 80 04 00 08 */ lwz r0, 8(r4) +/* 80195E30 00192D90 90 A3 01 E8 */ stw r5, 0x1e8(r3) +/* 80195E34 00192D94 90 03 01 EC */ stw r0, 0x1ec(r3) +/* 80195E38 00192D98 80 04 00 0C */ lwz r0, 0xc(r4) +/* 80195E3C 00192D9C 90 03 01 F0 */ stw r0, 0x1f0(r3) +/* 80195E40 00192DA0 4E 80 00 20 */ blr + +.global UpdateVisibility__21CHudDecoInterfaceScanFv +UpdateVisibility__21CHudDecoInterfaceScanFv: +/* 80195E44 00192DA4 4E 80 00 20 */ blr + +.global SetIsVisibleGame__21CHudDecoInterfaceScanFb +SetIsVisibleGame__21CHudDecoInterfaceScanFb: +/* 80195E48 00192DA8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80195E4C 00192DAC 7C 08 02 A6 */ mflr r0 +/* 80195E50 00192DB0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80195E54 00192DB4 88 03 02 40 */ lbz r0, 0x240(r3) +/* 80195E58 00192DB8 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 80195E5C 00192DBC 98 03 02 40 */ stb r0, 0x240(r3) +/* 80195E60 00192DC0 4B FF FF E5 */ bl UpdateVisibility__21CHudDecoInterfaceScanFv +/* 80195E64 00192DC4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80195E68 00192DC8 7C 08 03 A6 */ mtlr r0 +/* 80195E6C 00192DCC 38 21 00 10 */ addi r1, r1, 0x10 +/* 80195E70 00192DD0 4E 80 00 20 */ blr + +.global SetIsVisibleDebug__21CHudDecoInterfaceScanFb +SetIsVisibleDebug__21CHudDecoInterfaceScanFb: +/* 80195E74 00192DD4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80195E78 00192DD8 7C 08 02 A6 */ mflr r0 +/* 80195E7C 00192DDC 90 01 00 14 */ stw r0, 0x14(r1) +/* 80195E80 00192DE0 88 03 02 40 */ lbz r0, 0x240(r3) +/* 80195E84 00192DE4 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 80195E88 00192DE8 98 03 02 40 */ stb r0, 0x240(r3) +/* 80195E8C 00192DEC 4B FF FF B9 */ bl UpdateVisibility__21CHudDecoInterfaceScanFv +/* 80195E90 00192DF0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80195E94 00192DF4 7C 08 03 A6 */ mtlr r0 +/* 80195E98 00192DF8 38 21 00 10 */ addi r1, r1, 0x10 +/* 80195E9C 00192DFC 4E 80 00 20 */ blr + +.global UpdateHudAlpha__21CHudDecoInterfaceScanFv +UpdateHudAlpha__21CHudDecoInterfaceScanFv: +/* 80195EA0 00192E00 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80195EA4 00192E04 7C 08 02 A6 */ mflr r0 +/* 80195EA8 00192E08 90 01 00 44 */ stw r0, 0x44(r1) +/* 80195EAC 00192E0C DB E1 00 30 */ stfd f31, 0x30(r1) +/* 80195EB0 00192E10 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 80195EB4 00192E14 DB C1 00 20 */ stfd f30, 0x20(r1) +/* 80195EB8 00192E18 F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 +/* 80195EBC 00192E1C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80195EC0 00192E20 80 8D A0 80 */ lwz r4, gpGameState@sda21(r13) +/* 80195EC4 00192E24 7C 7F 1B 78 */ mr r31, r3 +/* 80195EC8 00192E28 38 64 01 7C */ addi r3, r4, 0x17c +/* 80195ECC 00192E2C 48 07 8E A9 */ bl GetHudAlpha__12CGameOptionsCFv +/* 80195ED0 00192E30 FF E0 08 90 */ fmr f31, f1 +/* 80195ED4 00192E34 48 1B 40 D9 */ bl White__6CColorFv +/* 80195ED8 00192E38 C0 02 A6 7C */ lfs f0, lbl_805AC39C@sda21(r2) +/* 80195EDC 00192E3C EF C0 07 F2 */ fmuls f30, f0, f31 +/* 80195EE0 00192E40 F3 C1 A0 08 */ psq_st f30, 8(r1), 1, qr2 +/* 80195EE4 00192E44 38 81 00 0C */ addi r4, r1, 0xc +/* 80195EE8 00192E48 80 63 00 00 */ lwz r3, 0(r3) +/* 80195EEC 00192E4C 88 01 00 08 */ lbz r0, 8(r1) +/* 80195EF0 00192E50 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 80195EF4 00192E54 90 01 00 0C */ stw r0, 0xc(r1) +/* 80195EF8 00192E58 80 7F 02 48 */ lwz r3, 0x248(r31) +/* 80195EFC 00192E5C 48 13 49 71 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80195F00 00192E60 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 80195F04 00192E64 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 80195F08 00192E68 E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 +/* 80195F0C 00192E6C CB C1 00 20 */ lfd f30, 0x20(r1) +/* 80195F10 00192E70 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80195F14 00192E74 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80195F18 00192E78 7C 08 03 A6 */ mtlr r0 +/* 80195F1C 00192E7C 38 21 00 40 */ addi r1, r1, 0x40 +/* 80195F20 00192E80 4E 80 00 20 */ blr + +.global __ct__21CHudDecoInterfaceScanFR9CGuiFrame +__ct__21CHudDecoInterfaceScanFR9CGuiFrame: +/* 80195F24 00192E84 94 21 FD 60 */ stwu r1, -0x2a0(r1) +/* 80195F28 00192E88 7C 08 02 A6 */ mflr r0 +/* 80195F2C 00192E8C 3C A0 80 3E */ lis r5, lbl_803DA2A4@ha +/* 80195F30 00192E90 3C C0 80 3D */ lis r6, lbl_803D0F10@ha +/* 80195F34 00192E94 90 01 02 A4 */ stw r0, 0x2a4(r1) +/* 80195F38 00192E98 38 05 A2 A4 */ addi r0, r5, lbl_803DA2A4@l +/* 80195F3C 00192E9C 93 E1 02 9C */ stw r31, 0x29c(r1) +/* 80195F40 00192EA0 3B E6 0F 10 */ addi r31, r6, lbl_803D0F10@l +/* 80195F44 00192EA4 93 C1 02 98 */ stw r30, 0x298(r1) +/* 80195F48 00192EA8 7C 9E 23 78 */ mr r30, r4 +/* 80195F4C 00192EAC 93 A1 02 94 */ stw r29, 0x294(r1) +/* 80195F50 00192EB0 7C 7D 1B 78 */ mr r29, r3 +/* 80195F54 00192EB4 3C 60 80 3E */ lis r3, lbl_803E450C@ha +/* 80195F58 00192EB8 93 81 02 90 */ stw r28, 0x290(r1) +/* 80195F5C 00192EBC 90 1D 00 00 */ stw r0, 0(r29) +/* 80195F60 00192EC0 38 03 45 0C */ addi r0, r3, lbl_803E450C@l +/* 80195F64 00192EC4 3C 60 80 3D */ lis r3, lbl_803D10E4@ha +/* 80195F68 00192EC8 90 1D 00 00 */ stw r0, 0(r29) +/* 80195F6C 00192ECC 38 A3 10 E4 */ addi r5, r3, lbl_803D10E4@l +/* 80195F70 00192ED0 38 61 00 18 */ addi r3, r1, 0x18 +/* 80195F74 00192ED4 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80195F78 00192ED8 38 A5 00 8D */ addi r5, r5, 0x8d +/* 80195F7C 00192EDC 81 84 00 00 */ lwz r12, 0(r4) +/* 80195F80 00192EE0 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 80195F84 00192EE4 7D 89 03 A6 */ mtctr r12 +/* 80195F88 00192EE8 4E 80 04 21 */ bctrl +/* 80195F8C 00192EEC 3B 9D 00 04 */ addi r28, r29, 4 +/* 80195F90 00192EF0 38 81 00 18 */ addi r4, r1, 0x18 +/* 80195F94 00192EF4 7F 83 E3 78 */ mr r3, r28 +/* 80195F98 00192EF8 48 1A AF 11 */ bl __ct__6CTokenFRC6CToken +/* 80195F9C 00192EFC 38 00 00 00 */ li r0, 0 +/* 80195FA0 00192F00 38 61 00 18 */ addi r3, r1, 0x18 +/* 80195FA4 00192F04 90 1C 00 08 */ stw r0, 8(r28) +/* 80195FA8 00192F08 38 80 FF FF */ li r4, -1 +/* 80195FAC 00192F0C 48 1A AE 95 */ bl __dt__6CTokenFv +/* 80195FB0 00192F10 38 00 00 00 */ li r0, 0 +/* 80195FB4 00192F14 7F C4 F3 78 */ mr r4, r30 +/* 80195FB8 00192F18 90 1D 00 10 */ stw r0, 0x10(r29) +/* 80195FBC 00192F1C 38 7D 00 18 */ addi r3, r29, 0x18 +/* 80195FC0 00192F20 93 DD 00 14 */ stw r30, 0x14(r29) +/* 80195FC4 00192F24 4B FD E5 81 */ bl __ct__12CScanDisplayFv +/* 80195FC8 00192F28 A0 AD A3 8C */ lhz r5, lbl_805A8F4C@sda21(r13) +/* 80195FCC 00192F2C 3C 80 80 5A */ lis r4, lbl_805A6660@ha +/* 80195FD0 00192F30 38 C4 66 60 */ addi r6, r4, lbl_805A6660@l +/* 80195FD4 00192F34 38 00 00 00 */ li r0, 0 +/* 80195FD8 00192F38 B0 BD 01 D0 */ sth r5, 0x1d0(r29) +/* 80195FDC 00192F3C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80195FE0 00192F40 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 80195FE4 00192F44 C0 22 A6 6C */ lfs f1, lbl_805AC38C@sda21(r2) +/* 80195FE8 00192F48 A0 ED A3 8C */ lhz r7, lbl_805A8F4C@sda21(r13) +/* 80195FEC 00192F4C 38 80 00 01 */ li r4, 1 +/* 80195FF0 00192F50 C0 02 A6 68 */ lfs f0, lbl_805AC388@sda21(r2) +/* 80195FF4 00192F54 7F 83 E3 78 */ mr r3, r28 +/* 80195FF8 00192F58 B0 FD 01 D2 */ sth r7, 0x1d2(r29) +/* 80195FFC 00192F5C 90 1D 01 D4 */ stw r0, 0x1d4(r29) +/* 80196000 00192F60 D0 3D 01 D8 */ stfs f1, 0x1d8(r29) +/* 80196004 00192F64 D0 3D 01 DC */ stfs f1, 0x1dc(r29) +/* 80196008 00192F68 D0 1D 01 E0 */ stfs f0, 0x1e0(r29) +/* 8019600C 00192F6C C0 06 00 00 */ lfs f0, 0(r6) +/* 80196010 00192F70 D0 1D 01 E4 */ stfs f0, 0x1e4(r29) +/* 80196014 00192F74 C0 06 00 04 */ lfs f0, 4(r6) +/* 80196018 00192F78 D0 1D 01 E8 */ stfs f0, 0x1e8(r29) +/* 8019601C 00192F7C C0 06 00 08 */ lfs f0, 8(r6) +/* 80196020 00192F80 D0 1D 01 EC */ stfs f0, 0x1ec(r29) +/* 80196024 00192F84 C0 06 00 0C */ lfs f0, 0xc(r6) +/* 80196028 00192F88 D0 1D 01 F0 */ stfs f0, 0x1f0(r29) +/* 8019602C 00192F8C C0 05 00 00 */ lfs f0, 0(r5) +/* 80196030 00192F90 D0 1D 01 F4 */ stfs f0, 0x1f4(r29) +/* 80196034 00192F94 C0 05 00 04 */ lfs f0, 4(r5) +/* 80196038 00192F98 D0 1D 01 F8 */ stfs f0, 0x1f8(r29) +/* 8019603C 00192F9C C0 05 00 08 */ lfs f0, 8(r5) +/* 80196040 00192FA0 D0 1D 01 FC */ stfs f0, 0x1fc(r29) +/* 80196044 00192FA4 C0 05 00 00 */ lfs f0, 0(r5) +/* 80196048 00192FA8 D0 1D 02 00 */ stfs f0, 0x200(r29) +/* 8019604C 00192FAC C0 05 00 04 */ lfs f0, 4(r5) +/* 80196050 00192FB0 D0 1D 02 04 */ stfs f0, 0x204(r29) +/* 80196054 00192FB4 C0 05 00 08 */ lfs f0, 8(r5) +/* 80196058 00192FB8 D0 1D 02 08 */ stfs f0, 0x208(r29) +/* 8019605C 00192FBC C0 05 00 00 */ lfs f0, 0(r5) +/* 80196060 00192FC0 D0 1D 02 0C */ stfs f0, 0x20c(r29) +/* 80196064 00192FC4 C0 05 00 04 */ lfs f0, 4(r5) +/* 80196068 00192FC8 D0 1D 02 10 */ stfs f0, 0x210(r29) +/* 8019606C 00192FCC C0 05 00 08 */ lfs f0, 8(r5) +/* 80196070 00192FD0 D0 1D 02 14 */ stfs f0, 0x214(r29) +/* 80196074 00192FD4 C0 05 00 00 */ lfs f0, 0(r5) +/* 80196078 00192FD8 D0 1D 02 18 */ stfs f0, 0x218(r29) +/* 8019607C 00192FDC C0 05 00 04 */ lfs f0, 4(r5) +/* 80196080 00192FE0 D0 1D 02 1C */ stfs f0, 0x21c(r29) +/* 80196084 00192FE4 C0 05 00 08 */ lfs f0, 8(r5) +/* 80196088 00192FE8 D0 1D 02 20 */ stfs f0, 0x220(r29) +/* 8019608C 00192FEC C0 05 00 00 */ lfs f0, 0(r5) +/* 80196090 00192FF0 D0 1D 02 24 */ stfs f0, 0x224(r29) +/* 80196094 00192FF4 C0 05 00 04 */ lfs f0, 4(r5) +/* 80196098 00192FF8 D0 1D 02 28 */ stfs f0, 0x228(r29) +/* 8019609C 00192FFC C0 05 00 08 */ lfs f0, 8(r5) +/* 801960A0 00193000 D0 1D 02 2C */ stfs f0, 0x22c(r29) +/* 801960A4 00193004 D0 3D 02 30 */ stfs f1, 0x230(r29) +/* 801960A8 00193008 80 AD A1 38 */ lwz r5, gpTweakGui@sda21(r13) +/* 801960AC 0019300C C0 05 02 70 */ lfs f0, 0x270(r5) +/* 801960B0 00193010 D0 1D 02 34 */ stfs f0, 0x234(r29) +/* 801960B4 00193014 D0 3D 02 38 */ stfs f1, 0x238(r29) +/* 801960B8 00193018 D0 3D 02 3C */ stfs f1, 0x23c(r29) +/* 801960BC 0019301C 88 1D 02 40 */ lbz r0, 0x240(r29) +/* 801960C0 00193020 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801960C4 00193024 98 1D 02 40 */ stb r0, 0x240(r29) +/* 801960C8 00193028 88 1D 02 40 */ lbz r0, 0x240(r29) +/* 801960CC 0019302C 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 801960D0 00193030 98 1D 02 40 */ stb r0, 0x240(r29) +/* 801960D4 00193034 48 1A AC B1 */ bl Lock__6CTokenFv +/* 801960D8 00193038 80 1E 00 14 */ lwz r0, 0x14(r30) +/* 801960DC 0019303C 38 61 00 50 */ addi r3, r1, 0x50 +/* 801960E0 00193040 90 1D 02 44 */ stw r0, 0x244(r29) +/* 801960E4 00193044 80 9D 02 44 */ lwz r4, 0x244(r29) +/* 801960E8 00193048 48 12 F1 35 */ bl GetLocalPosition__10CGuiObjectCFv +/* 801960EC 0019304C C0 01 00 50 */ lfs f0, 0x50(r1) +/* 801960F0 00193050 7F C3 F3 78 */ mr r3, r30 +/* 801960F4 00193054 38 9F 00 28 */ addi r4, r31, 0x28 +/* 801960F8 00193058 D0 1D 02 0C */ stfs f0, 0x20c(r29) +/* 801960FC 0019305C C0 01 00 54 */ lfs f0, 0x54(r1) +/* 80196100 00193060 D0 1D 02 10 */ stfs f0, 0x210(r29) +/* 80196104 00193064 C0 01 00 58 */ lfs f0, 0x58(r1) +/* 80196108 00193068 D0 1D 02 14 */ stfs f0, 0x214(r29) +/* 8019610C 0019306C 48 12 C0 49 */ bl FindWidget__9CGuiFrameCFPCc +/* 80196110 00193070 90 7D 02 48 */ stw r3, 0x248(r29) +/* 80196114 00193074 7F C3 F3 78 */ mr r3, r30 +/* 80196118 00193078 38 9F 00 64 */ addi r4, r31, 0x64 +/* 8019611C 0019307C 48 12 C0 39 */ bl FindWidget__9CGuiFrameCFPCc +/* 80196120 00193080 90 7D 02 4C */ stw r3, 0x24c(r29) +/* 80196124 00193084 7F C3 F3 78 */ mr r3, r30 +/* 80196128 00193088 38 9F 00 A8 */ addi r4, r31, 0xa8 +/* 8019612C 0019308C 48 12 C0 29 */ bl FindWidget__9CGuiFrameCFPCc +/* 80196130 00193090 90 7D 02 50 */ stw r3, 0x250(r29) +/* 80196134 00193094 3C 60 80 3D */ lis r3, lbl_803D10E4@ha +/* 80196138 00193098 38 83 10 E4 */ addi r4, r3, lbl_803D10E4@l +/* 8019613C 0019309C 7F C3 F3 78 */ mr r3, r30 +/* 80196140 001930A0 80 BD 02 48 */ lwz r5, 0x248(r29) +/* 80196144 001930A4 38 84 00 44 */ addi r4, r4, 0x44 +/* 80196148 001930A8 C0 45 00 A0 */ lfs f2, 0xa0(r5) +/* 8019614C 001930AC C0 25 00 90 */ lfs f1, 0x90(r5) +/* 80196150 001930B0 C0 05 00 80 */ lfs f0, 0x80(r5) +/* 80196154 001930B4 D0 1D 01 F4 */ stfs f0, 0x1f4(r29) +/* 80196158 001930B8 D0 3D 01 F8 */ stfs f1, 0x1f8(r29) +/* 8019615C 001930BC D0 5D 01 FC */ stfs f2, 0x1fc(r29) +/* 80196160 001930C0 48 12 BF F5 */ bl FindWidget__9CGuiFrameCFPCc +/* 80196164 001930C4 28 03 00 00 */ cmplwi r3, 0 +/* 80196168 001930C8 41 82 00 10 */ beq lbl_80196178 +/* 8019616C 001930CC 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80196170 001930D0 38 84 00 1C */ addi r4, r4, 0x1c +/* 80196174 001930D4 48 13 46 F9 */ bl SetColor__10CGuiWidgetFRC6CColor +lbl_80196178: +/* 80196178 001930D8 80 BD 02 4C */ lwz r5, 0x24c(r29) +/* 8019617C 001930DC 38 61 02 3C */ addi r3, r1, 0x23c +/* 80196180 001930E0 38 81 00 14 */ addi r4, r1, 0x14 +/* 80196184 001930E4 C0 45 00 30 */ lfs f2, 0x30(r5) +/* 80196188 001930E8 C0 25 00 20 */ lfs f1, 0x20(r5) +/* 8019618C 001930EC C0 05 00 10 */ lfs f0, 0x10(r5) +/* 80196190 001930F0 D0 1D 02 18 */ stfs f0, 0x218(r29) +/* 80196194 001930F4 D0 3D 02 1C */ stfs f1, 0x21c(r29) +/* 80196198 001930F8 D0 5D 02 20 */ stfs f2, 0x220(r29) +/* 8019619C 001930FC 80 AD A1 38 */ lwz r5, gpTweakGui@sda21(r13) +/* 801961A0 00193100 C0 05 02 10 */ lfs f0, 0x210(r5) +/* 801961A4 00193104 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801961A8 00193108 48 17 A2 61 */ bl RotateZ__9CMatrix3fFRC9CRelAngle +/* 801961AC 0019310C 38 61 02 60 */ addi r3, r1, 0x260 +/* 801961B0 00193110 38 81 02 3C */ addi r4, r1, 0x23c +/* 801961B4 00193114 38 BD 02 18 */ addi r5, r29, 0x218 +/* 801961B8 00193118 48 17 D0 C1 */ bl __ct__12CTransform4fFRC9CMatrix3fRC9CVector3f +/* 801961BC 0019311C 83 9D 02 4C */ lwz r28, 0x24c(r29) +/* 801961C0 00193120 38 81 02 60 */ addi r4, r1, 0x260 +/* 801961C4 00193124 38 7C 00 04 */ addi r3, r28, 4 +/* 801961C8 00193128 48 17 C9 79 */ bl __as__12CTransform4fFRC12CTransform4f +/* 801961CC 0019312C 7F 83 E3 78 */ mr r3, r28 +/* 801961D0 00193130 48 12 E6 19 */ bl RecalculateTransforms__10CGuiObjectFv +/* 801961D4 00193134 7F C3 F3 78 */ mr r3, r30 +/* 801961D8 00193138 38 9F 00 90 */ addi r4, r31, 0x90 +/* 801961DC 0019313C 48 12 BF 79 */ bl FindWidget__9CGuiFrameCFPCc +/* 801961E0 00193140 7C 7C 1B 79 */ or. r28, r3, r3 +/* 801961E4 00193144 41 82 00 60 */ beq lbl_80196244 +/* 801961E8 00193148 C0 7C 00 30 */ lfs f3, 0x30(r28) +/* 801961EC 0019314C 38 61 01 E8 */ addi r3, r1, 0x1e8 +/* 801961F0 00193150 C0 5C 00 20 */ lfs f2, 0x20(r28) +/* 801961F4 00193154 38 81 00 10 */ addi r4, r1, 0x10 +/* 801961F8 00193158 C0 1C 00 10 */ lfs f0, 0x10(r28) +/* 801961FC 0019315C 80 AD A1 38 */ lwz r5, gpTweakGui@sda21(r13) +/* 80196200 00193160 D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 80196204 00193164 C0 22 A6 90 */ lfs f1, lbl_805AC3B0@sda21(r2) +/* 80196208 00193168 D0 41 00 90 */ stfs f2, 0x90(r1) +/* 8019620C 0019316C D0 61 00 94 */ stfs f3, 0x94(r1) +/* 80196210 00193170 C0 05 02 10 */ lfs f0, 0x210(r5) +/* 80196214 00193174 EC 01 00 32 */ fmuls f0, f1, f0 +/* 80196218 00193178 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 8019621C 0019317C 48 17 A1 ED */ bl RotateZ__9CMatrix3fFRC9CRelAngle +/* 80196220 00193180 38 61 02 0C */ addi r3, r1, 0x20c +/* 80196224 00193184 38 81 01 E8 */ addi r4, r1, 0x1e8 +/* 80196228 00193188 38 A1 00 8C */ addi r5, r1, 0x8c +/* 8019622C 0019318C 48 17 D0 4D */ bl __ct__12CTransform4fFRC9CMatrix3fRC9CVector3f +/* 80196230 00193190 38 7C 00 04 */ addi r3, r28, 4 +/* 80196234 00193194 38 81 02 0C */ addi r4, r1, 0x20c +/* 80196238 00193198 48 17 C9 09 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8019623C 0019319C 7F 83 E3 78 */ mr r3, r28 +/* 80196240 001931A0 48 12 E5 A9 */ bl RecalculateTransforms__10CGuiObjectFv +lbl_80196244: +/* 80196244 001931A4 7F C3 F3 78 */ mr r3, r30 +/* 80196248 001931A8 38 9F 00 78 */ addi r4, r31, 0x78 +/* 8019624C 001931AC 48 12 BF 09 */ bl FindWidget__9CGuiFrameCFPCc +/* 80196250 001931B0 7C 7C 1B 79 */ or. r28, r3, r3 +/* 80196254 001931B4 41 82 00 74 */ beq lbl_801962C8 +/* 80196258 001931B8 C0 7C 00 30 */ lfs f3, 0x30(r28) +/* 8019625C 001931BC 38 61 01 B8 */ addi r3, r1, 0x1b8 +/* 80196260 001931C0 C0 5C 00 20 */ lfs f2, 0x20(r28) +/* 80196264 001931C4 38 81 01 94 */ addi r4, r1, 0x194 +/* 80196268 001931C8 C0 1C 00 10 */ lfs f0, 0x10(r28) +/* 8019626C 001931CC 38 A1 00 80 */ addi r5, r1, 0x80 +/* 80196270 001931D0 80 CD A1 38 */ lwz r6, gpTweakGui@sda21(r13) +/* 80196274 001931D4 D0 01 00 80 */ stfs f0, 0x80(r1) +/* 80196278 001931D8 C0 22 A6 6C */ lfs f1, lbl_805AC38C@sda21(r2) +/* 8019627C 001931DC D0 41 00 84 */ stfs f2, 0x84(r1) +/* 80196280 001931E0 C0 02 A6 68 */ lfs f0, lbl_805AC388@sda21(r2) +/* 80196284 001931E4 D0 61 00 88 */ stfs f3, 0x88(r1) +/* 80196288 001931E8 C0 46 02 14 */ lfs f2, 0x214(r6) +/* 8019628C 001931EC D0 41 01 94 */ stfs f2, 0x194(r1) +/* 80196290 001931F0 D0 21 01 98 */ stfs f1, 0x198(r1) +/* 80196294 001931F4 D0 21 01 9C */ stfs f1, 0x19c(r1) +/* 80196298 001931F8 D0 21 01 A0 */ stfs f1, 0x1a0(r1) +/* 8019629C 001931FC D0 01 01 A4 */ stfs f0, 0x1a4(r1) +/* 801962A0 00193200 D0 21 01 A8 */ stfs f1, 0x1a8(r1) +/* 801962A4 00193204 D0 21 01 AC */ stfs f1, 0x1ac(r1) +/* 801962A8 00193208 D0 21 01 B0 */ stfs f1, 0x1b0(r1) +/* 801962AC 0019320C D0 01 01 B4 */ stfs f0, 0x1b4(r1) +/* 801962B0 00193210 48 17 CF C9 */ bl __ct__12CTransform4fFRC9CMatrix3fRC9CVector3f +/* 801962B4 00193214 38 7C 00 04 */ addi r3, r28, 4 +/* 801962B8 00193218 38 81 01 B8 */ addi r4, r1, 0x1b8 +/* 801962BC 0019321C 48 17 C8 85 */ bl __as__12CTransform4fFRC12CTransform4f +/* 801962C0 00193220 7F 83 E3 78 */ mr r3, r28 +/* 801962C4 00193224 48 12 E5 25 */ bl RecalculateTransforms__10CGuiObjectFv +lbl_801962C8: +/* 801962C8 00193228 80 BD 02 50 */ lwz r5, 0x250(r29) +/* 801962CC 0019322C 38 61 01 40 */ addi r3, r1, 0x140 +/* 801962D0 00193230 C0 22 A6 90 */ lfs f1, lbl_805AC3B0@sda21(r2) +/* 801962D4 00193234 38 81 00 0C */ addi r4, r1, 0xc +/* 801962D8 00193238 C0 65 00 30 */ lfs f3, 0x30(r5) +/* 801962DC 0019323C C0 45 00 20 */ lfs f2, 0x20(r5) +/* 801962E0 00193240 C0 05 00 10 */ lfs f0, 0x10(r5) +/* 801962E4 00193244 D0 1D 02 24 */ stfs f0, 0x224(r29) +/* 801962E8 00193248 D0 5D 02 28 */ stfs f2, 0x228(r29) +/* 801962EC 0019324C D0 7D 02 2C */ stfs f3, 0x22c(r29) +/* 801962F0 00193250 80 AD A1 38 */ lwz r5, gpTweakGui@sda21(r13) +/* 801962F4 00193254 C0 05 02 10 */ lfs f0, 0x210(r5) +/* 801962F8 00193258 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801962FC 0019325C D0 01 00 0C */ stfs f0, 0xc(r1) +/* 80196300 00193260 48 17 A1 09 */ bl RotateZ__9CMatrix3fFRC9CRelAngle +/* 80196304 00193264 38 61 01 64 */ addi r3, r1, 0x164 +/* 80196308 00193268 38 81 01 40 */ addi r4, r1, 0x140 +/* 8019630C 0019326C 38 BD 02 24 */ addi r5, r29, 0x224 +/* 80196310 00193270 48 17 CF 69 */ bl __ct__12CTransform4fFRC9CMatrix3fRC9CVector3f +/* 80196314 00193274 83 9D 02 50 */ lwz r28, 0x250(r29) +/* 80196318 00193278 38 81 01 64 */ addi r4, r1, 0x164 +/* 8019631C 0019327C 38 7C 00 04 */ addi r3, r28, 4 +/* 80196320 00193280 48 17 C8 21 */ bl __as__12CTransform4fFRC12CTransform4f +/* 80196324 00193284 7F 83 E3 78 */ mr r3, r28 +/* 80196328 00193288 48 12 E4 C1 */ bl RecalculateTransforms__10CGuiObjectFv +/* 8019632C 0019328C 7F C3 F3 78 */ mr r3, r30 +/* 80196330 00193290 38 9F 00 D8 */ addi r4, r31, 0xd8 +/* 80196334 00193294 48 12 BE 21 */ bl FindWidget__9CGuiFrameCFPCc +/* 80196338 00193298 7C 7C 1B 79 */ or. r28, r3, r3 +/* 8019633C 0019329C 41 82 00 58 */ beq lbl_80196394 +/* 80196340 001932A0 C0 5C 00 30 */ lfs f2, 0x30(r28) +/* 80196344 001932A4 38 61 00 EC */ addi r3, r1, 0xec +/* 80196348 001932A8 C0 3C 00 20 */ lfs f1, 0x20(r28) +/* 8019634C 001932AC 38 81 00 08 */ addi r4, r1, 8 +/* 80196350 001932B0 C0 1C 00 10 */ lfs f0, 0x10(r28) +/* 80196354 001932B4 80 AD A1 38 */ lwz r5, gpTweakGui@sda21(r13) +/* 80196358 001932B8 D0 01 00 74 */ stfs f0, 0x74(r1) +/* 8019635C 001932BC D0 21 00 78 */ stfs f1, 0x78(r1) +/* 80196360 001932C0 D0 41 00 7C */ stfs f2, 0x7c(r1) +/* 80196364 001932C4 C0 05 02 10 */ lfs f0, 0x210(r5) +/* 80196368 001932C8 D0 01 00 08 */ stfs f0, 8(r1) +/* 8019636C 001932CC 48 17 A0 9D */ bl RotateZ__9CMatrix3fFRC9CRelAngle +/* 80196370 001932D0 38 61 01 10 */ addi r3, r1, 0x110 +/* 80196374 001932D4 38 81 00 EC */ addi r4, r1, 0xec +/* 80196378 001932D8 38 A1 00 74 */ addi r5, r1, 0x74 +/* 8019637C 001932DC 48 17 CE FD */ bl __ct__12CTransform4fFRC9CMatrix3fRC9CVector3f +/* 80196380 001932E0 38 7C 00 04 */ addi r3, r28, 4 +/* 80196384 001932E4 38 81 01 10 */ addi r4, r1, 0x110 +/* 80196388 001932E8 48 17 C7 B9 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8019638C 001932EC 7F 83 E3 78 */ mr r3, r28 +/* 80196390 001932F0 48 12 E4 59 */ bl RecalculateTransforms__10CGuiObjectFv +lbl_80196394: +/* 80196394 001932F4 7F C3 F3 78 */ mr r3, r30 +/* 80196398 001932F8 38 9F 00 C0 */ addi r4, r31, 0xc0 +/* 8019639C 001932FC 48 12 BD B9 */ bl FindWidget__9CGuiFrameCFPCc +/* 801963A0 00193300 7C 7C 1B 79 */ or. r28, r3, r3 +/* 801963A4 00193304 41 82 00 74 */ beq lbl_80196418 +/* 801963A8 00193308 C0 7C 00 30 */ lfs f3, 0x30(r28) +/* 801963AC 0019330C 38 61 00 BC */ addi r3, r1, 0xbc +/* 801963B0 00193310 C0 5C 00 20 */ lfs f2, 0x20(r28) +/* 801963B4 00193314 38 81 00 98 */ addi r4, r1, 0x98 +/* 801963B8 00193318 C0 1C 00 10 */ lfs f0, 0x10(r28) +/* 801963BC 0019331C 38 A1 00 68 */ addi r5, r1, 0x68 +/* 801963C0 00193320 80 CD A1 38 */ lwz r6, gpTweakGui@sda21(r13) +/* 801963C4 00193324 D0 01 00 68 */ stfs f0, 0x68(r1) +/* 801963C8 00193328 C0 22 A6 6C */ lfs f1, lbl_805AC38C@sda21(r2) +/* 801963CC 0019332C D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 801963D0 00193330 C0 02 A6 68 */ lfs f0, lbl_805AC388@sda21(r2) +/* 801963D4 00193334 D0 61 00 70 */ stfs f3, 0x70(r1) +/* 801963D8 00193338 C0 46 02 14 */ lfs f2, 0x214(r6) +/* 801963DC 0019333C D0 41 00 98 */ stfs f2, 0x98(r1) +/* 801963E0 00193340 D0 21 00 9C */ stfs f1, 0x9c(r1) +/* 801963E4 00193344 D0 21 00 A0 */ stfs f1, 0xa0(r1) +/* 801963E8 00193348 D0 21 00 A4 */ stfs f1, 0xa4(r1) +/* 801963EC 0019334C D0 01 00 A8 */ stfs f0, 0xa8(r1) +/* 801963F0 00193350 D0 21 00 AC */ stfs f1, 0xac(r1) +/* 801963F4 00193354 D0 21 00 B0 */ stfs f1, 0xb0(r1) +/* 801963F8 00193358 D0 21 00 B4 */ stfs f1, 0xb4(r1) +/* 801963FC 0019335C D0 01 00 B8 */ stfs f0, 0xb8(r1) +/* 80196400 00193360 48 17 CE 79 */ bl __ct__12CTransform4fFRC9CMatrix3fRC9CVector3f +/* 80196404 00193364 38 7C 00 04 */ addi r3, r28, 4 +/* 80196408 00193368 38 81 00 BC */ addi r4, r1, 0xbc +/* 8019640C 0019336C 48 17 C7 35 */ bl __as__12CTransform4fFRC12CTransform4f +/* 80196410 00193370 7F 83 E3 78 */ mr r3, r28 +/* 80196414 00193374 48 12 E3 D5 */ bl RecalculateTransforms__10CGuiObjectFv +lbl_80196418: +/* 80196418 00193378 C0 3D 02 34 */ lfs f1, 0x234(r29) +/* 8019641C 0019337C 38 61 00 38 */ addi r3, r1, 0x38 +/* 80196420 00193380 C0 02 A6 6C */ lfs f0, lbl_805AC38C@sda21(r2) +/* 80196424 00193384 38 A1 00 5C */ addi r5, r1, 0x5c +/* 80196428 00193388 D0 21 00 5C */ stfs f1, 0x5c(r1) +/* 8019642C 0019338C D0 01 00 60 */ stfs f0, 0x60(r1) +/* 80196430 00193390 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 80196434 00193394 80 9D 02 4C */ lwz r4, 0x24c(r29) +/* 80196438 00193398 48 12 EC BD */ bl RotateO2P__10CGuiObjectCFRC9CVector3f +/* 8019643C 0019339C C0 3D 02 18 */ lfs f1, 0x218(r29) +/* 80196440 001933A0 38 81 00 44 */ addi r4, r1, 0x44 +/* 80196444 001933A4 C0 01 00 38 */ lfs f0, 0x38(r1) +/* 80196448 001933A8 C0 7D 02 1C */ lfs f3, 0x21c(r29) +/* 8019644C 001933AC C0 41 00 3C */ lfs f2, 0x3c(r1) +/* 80196450 001933B0 EC 81 00 2A */ fadds f4, f1, f0 +/* 80196454 001933B4 C0 3D 02 20 */ lfs f1, 0x220(r29) +/* 80196458 001933B8 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 8019645C 001933BC EC 43 10 2A */ fadds f2, f3, f2 +/* 80196460 001933C0 D0 81 00 44 */ stfs f4, 0x44(r1) +/* 80196464 001933C4 EC 01 00 2A */ fadds f0, f1, f0 +/* 80196468 001933C8 D0 41 00 48 */ stfs f2, 0x48(r1) +/* 8019646C 001933CC D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 80196470 001933D0 80 7D 02 4C */ lwz r3, 0x24c(r29) +/* 80196474 001933D4 48 12 ED 55 */ bl SetLocalPosition__10CGuiObjectFRC9CVector3f +/* 80196478 001933D8 80 9D 02 50 */ lwz r4, 0x250(r29) +/* 8019647C 001933DC 38 61 00 20 */ addi r3, r1, 0x20 +/* 80196480 001933E0 38 A1 00 5C */ addi r5, r1, 0x5c +/* 80196484 001933E4 48 12 EC 71 */ bl RotateO2P__10CGuiObjectCFRC9CVector3f +/* 80196488 001933E8 C0 3D 02 24 */ lfs f1, 0x224(r29) +/* 8019648C 001933EC 38 81 00 2C */ addi r4, r1, 0x2c +/* 80196490 001933F0 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 80196494 001933F4 C0 7D 02 28 */ lfs f3, 0x228(r29) +/* 80196498 001933F8 C0 41 00 24 */ lfs f2, 0x24(r1) +/* 8019649C 001933FC EC 81 00 28 */ fsubs f4, f1, f0 +/* 801964A0 00193400 C0 3D 02 2C */ lfs f1, 0x22c(r29) +/* 801964A4 00193404 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 801964A8 00193408 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801964AC 0019340C D0 81 00 2C */ stfs f4, 0x2c(r1) +/* 801964B0 00193410 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801964B4 00193414 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 801964B8 00193418 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801964BC 0019341C 80 7D 02 50 */ lwz r3, 0x250(r29) +/* 801964C0 00193420 48 12 ED 09 */ bl SetLocalPosition__10CGuiObjectFRC9CVector3f +/* 801964C4 00193424 7F A3 EB 78 */ mr r3, r29 +/* 801964C8 00193428 81 9D 00 00 */ lwz r12, 0(r29) +/* 801964CC 0019342C 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 801964D0 00193430 7D 89 03 A6 */ mtctr r12 +/* 801964D4 00193434 4E 80 04 21 */ bctrl +/* 801964D8 00193438 80 01 02 A4 */ lwz r0, 0x2a4(r1) +/* 801964DC 0019343C 7F A3 EB 78 */ mr r3, r29 +/* 801964E0 00193440 83 E1 02 9C */ lwz r31, 0x29c(r1) +/* 801964E4 00193444 83 C1 02 98 */ lwz r30, 0x298(r1) +/* 801964E8 00193448 83 A1 02 94 */ lwz r29, 0x294(r1) +/* 801964EC 0019344C 83 81 02 90 */ lwz r28, 0x290(r1) +/* 801964F0 00193450 7C 08 03 A6 */ mtlr r0 +/* 801964F4 00193454 38 21 02 A0 */ addi r1, r1, 0x2a0 +/* 801964F8 00193458 4E 80 00 20 */ blr + +.global __dt__12CScanDisplayFv +__dt__12CScanDisplayFv: +/* 801964FC 0019345C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80196500 00193460 7C 08 02 A6 */ mflr r0 +/* 80196504 00193464 90 01 00 14 */ stw r0, 0x14(r1) +/* 80196508 00193468 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8019650C 0019346C 7C 9F 23 78 */ mr r31, r4 +/* 80196510 00193470 93 C1 00 08 */ stw r30, 8(r1) +/* 80196514 00193474 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80196518 00193478 41 82 01 98 */ beq lbl_801966B0 +/* 8019651C 0019347C 34 1E 01 94 */ addic. r0, r30, 0x194 +/* 80196520 00193480 41 82 00 30 */ beq lbl_80196550 +/* 80196524 00193484 88 1E 01 A0 */ lbz r0, 0x1a0(r30) +/* 80196528 00193488 28 00 00 00 */ cmplwi r0, 0 +/* 8019652C 0019348C 41 82 00 1C */ beq lbl_80196548 +/* 80196530 00193490 34 7E 01 94 */ addic. r3, r30, 0x194 +/* 80196534 00193494 41 82 00 14 */ beq lbl_80196548 +/* 80196538 00193498 28 03 00 00 */ cmplwi r3, 0 +/* 8019653C 0019349C 41 82 00 0C */ beq lbl_80196548 +/* 80196540 001934A0 38 80 00 00 */ li r4, 0 +/* 80196544 001934A4 48 1A A8 FD */ bl __dt__6CTokenFv +lbl_80196548: +/* 80196548 001934A8 38 00 00 00 */ li r0, 0 +/* 8019654C 001934AC 98 1E 01 A0 */ stb r0, 0x1a0(r30) +lbl_80196550: +/* 80196550 001934B0 34 1E 01 70 */ addic. r0, r30, 0x170 +/* 80196554 001934B4 41 82 00 58 */ beq lbl_801965AC +/* 80196558 001934B8 80 BE 01 70 */ lwz r5, 0x170(r30) +/* 8019655C 001934BC 38 60 00 00 */ li r3, 0 +/* 80196560 001934C0 2C 05 00 00 */ cmpwi r5, 0 +/* 80196564 001934C4 40 81 00 40 */ ble lbl_801965A4 +/* 80196568 001934C8 2C 05 00 08 */ cmpwi r5, 8 +/* 8019656C 001934CC 38 85 FF F8 */ addi r4, r5, -8 +/* 80196570 001934D0 40 81 00 20 */ ble lbl_80196590 +/* 80196574 001934D4 38 04 00 07 */ addi r0, r4, 7 +/* 80196578 001934D8 54 00 E8 FE */ srwi r0, r0, 3 +/* 8019657C 001934DC 7C 09 03 A6 */ mtctr r0 +/* 80196580 001934E0 2C 04 00 00 */ cmpwi r4, 0 +/* 80196584 001934E4 40 81 00 0C */ ble lbl_80196590 +lbl_80196588: +/* 80196588 001934E8 38 63 00 08 */ addi r3, r3, 8 +/* 8019658C 001934EC 42 00 FF FC */ bdnz lbl_80196588 +lbl_80196590: +/* 80196590 001934F0 7C 03 28 50 */ subf r0, r3, r5 +/* 80196594 001934F4 7C 09 03 A6 */ mtctr r0 +/* 80196598 001934F8 7C 03 28 00 */ cmpw r3, r5 +/* 8019659C 001934FC 40 80 00 08 */ bge lbl_801965A4 +lbl_801965A0: +/* 801965A0 00193500 42 00 00 00 */ bdnz lbl_801965A0 +lbl_801965A4: +/* 801965A4 00193504 38 00 00 00 */ li r0, 0 +/* 801965A8 00193508 90 1E 01 70 */ stw r0, 0x170(r30) +lbl_801965AC: +/* 801965AC 0019350C 34 1E 00 BC */ addic. r0, r30, 0xbc +/* 801965B0 00193510 41 82 00 58 */ beq lbl_80196608 +/* 801965B4 00193514 80 BE 00 BC */ lwz r5, 0xbc(r30) +/* 801965B8 00193518 38 60 00 00 */ li r3, 0 +/* 801965BC 0019351C 2C 05 00 00 */ cmpwi r5, 0 +/* 801965C0 00193520 40 81 00 40 */ ble lbl_80196600 +/* 801965C4 00193524 2C 05 00 08 */ cmpwi r5, 8 +/* 801965C8 00193528 38 85 FF F8 */ addi r4, r5, -8 +/* 801965CC 0019352C 40 81 00 20 */ ble lbl_801965EC +/* 801965D0 00193530 38 04 00 07 */ addi r0, r4, 7 +/* 801965D4 00193534 54 00 E8 FE */ srwi r0, r0, 3 +/* 801965D8 00193538 7C 09 03 A6 */ mtctr r0 +/* 801965DC 0019353C 2C 04 00 00 */ cmpwi r4, 0 +/* 801965E0 00193540 40 81 00 0C */ ble lbl_801965EC +lbl_801965E4: +/* 801965E4 00193544 38 63 00 08 */ addi r3, r3, 8 +/* 801965E8 00193548 42 00 FF FC */ bdnz lbl_801965E4 +lbl_801965EC: +/* 801965EC 0019354C 7C 03 28 50 */ subf r0, r3, r5 +/* 801965F0 00193550 7C 09 03 A6 */ mtctr r0 +/* 801965F4 00193554 7C 03 28 00 */ cmpw r3, r5 +/* 801965F8 00193558 40 80 00 08 */ bge lbl_80196600 +lbl_801965FC: +/* 801965FC 0019355C 42 00 00 00 */ bdnz lbl_801965FC +lbl_80196600: +/* 80196600 00193560 38 00 00 00 */ li r0, 0 +/* 80196604 00193564 90 1E 00 BC */ stw r0, 0xbc(r30) +lbl_80196608: +/* 80196608 00193568 34 1E 00 14 */ addic. r0, r30, 0x14 +/* 8019660C 0019356C 41 82 00 7C */ beq lbl_80196688 +/* 80196610 00193570 88 1E 00 9C */ lbz r0, 0x9c(r30) +/* 80196614 00193574 28 00 00 00 */ cmplwi r0, 0 +/* 80196618 00193578 41 82 00 68 */ beq lbl_80196680 +/* 8019661C 0019357C 34 9E 00 14 */ addic. r4, r30, 0x14 +/* 80196620 00193580 41 82 00 60 */ beq lbl_80196680 +/* 80196624 00193584 34 04 00 14 */ addic. r0, r4, 0x14 +/* 80196628 00193588 41 82 00 58 */ beq lbl_80196680 +/* 8019662C 0019358C 80 C4 00 14 */ lwz r6, 0x14(r4) +/* 80196630 00193590 38 60 00 00 */ li r3, 0 +/* 80196634 00193594 2C 06 00 00 */ cmpwi r6, 0 +/* 80196638 00193598 40 81 00 40 */ ble lbl_80196678 +/* 8019663C 0019359C 2C 06 00 08 */ cmpwi r6, 8 +/* 80196640 001935A0 38 A6 FF F8 */ addi r5, r6, -8 +/* 80196644 001935A4 40 81 00 20 */ ble lbl_80196664 +/* 80196648 001935A8 38 05 00 07 */ addi r0, r5, 7 +/* 8019664C 001935AC 54 00 E8 FE */ srwi r0, r0, 3 +/* 80196650 001935B0 7C 09 03 A6 */ mtctr r0 +/* 80196654 001935B4 2C 05 00 00 */ cmpwi r5, 0 +/* 80196658 001935B8 40 81 00 0C */ ble lbl_80196664 +lbl_8019665C: +/* 8019665C 001935BC 38 63 00 08 */ addi r3, r3, 8 +/* 80196660 001935C0 42 00 FF FC */ bdnz lbl_8019665C +lbl_80196664: +/* 80196664 001935C4 7C 03 30 50 */ subf r0, r3, r6 +/* 80196668 001935C8 7C 09 03 A6 */ mtctr r0 +/* 8019666C 001935CC 7C 03 30 00 */ cmpw r3, r6 +/* 80196670 001935D0 40 80 00 08 */ bge lbl_80196678 +lbl_80196674: +/* 80196674 001935D4 42 00 00 00 */ bdnz lbl_80196674 +lbl_80196678: +/* 80196678 001935D8 38 00 00 00 */ li r0, 0 +/* 8019667C 001935DC 90 04 00 14 */ stw r0, 0x14(r4) +lbl_80196680: +/* 80196680 001935E0 38 00 00 00 */ li r0, 0 +/* 80196684 001935E4 98 1E 00 9C */ stb r0, 0x9c(r30) +lbl_80196688: +/* 80196688 001935E8 28 1E 00 00 */ cmplwi r30, 0 +/* 8019668C 001935EC 41 82 00 14 */ beq lbl_801966A0 +/* 80196690 001935F0 41 82 00 10 */ beq lbl_801966A0 +/* 80196694 001935F4 7F C3 F3 78 */ mr r3, r30 +/* 80196698 001935F8 38 80 00 00 */ li r4, 0 +/* 8019669C 001935FC 48 1A A7 A5 */ bl __dt__6CTokenFv +lbl_801966A0: +/* 801966A0 00193600 7F E0 07 35 */ extsh. r0, r31 +/* 801966A4 00193604 40 81 00 0C */ ble lbl_801966B0 +/* 801966A8 00193608 7F C3 F3 78 */ mr r3, r30 +/* 801966AC 0019360C 48 17 F2 85 */ bl Free__7CMemoryFPCv +lbl_801966B0: +/* 801966B0 00193610 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801966B4 00193614 7F C3 F3 78 */ mr r3, r30 +/* 801966B8 00193618 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801966BC 0019361C 83 C1 00 08 */ lwz r30, 8(r1) +/* 801966C0 00193620 7C 08 03 A6 */ mtlr r0 +/* 801966C4 00193624 38 21 00 10 */ addi r1, r1, 0x10 +/* 801966C8 00193628 4E 80 00 20 */ blr + +.global UpdateCameraDebugSettings__21CHudDecoInterfaceXrayFfff +UpdateCameraDebugSettings__21CHudDecoInterfaceXrayFfff: +/* 801966CC 0019362C 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801966D0 00193630 C0 02 A6 6C */ lfs f0, lbl_805AC38C@sda21(r2) +/* 801966D4 00193634 81 43 00 A0 */ lwz r10, 0xa0(r3) +/* 801966D8 00193638 81 2A 00 BC */ lwz r9, 0xbc(r10) +/* 801966DC 0019363C 81 0A 00 C0 */ lwz r8, 0xc0(r10) +/* 801966E0 00193640 91 21 00 20 */ stw r9, 0x20(r1) +/* 801966E4 00193644 80 EA 00 C4 */ lwz r7, 0xc4(r10) +/* 801966E8 00193648 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 801966EC 0019364C 80 CA 00 C8 */ lwz r6, 0xc8(r10) +/* 801966F0 00193650 80 AA 00 CC */ lwz r5, 0xcc(r10) +/* 801966F4 00193654 80 8A 00 D0 */ lwz r4, 0xd0(r10) +/* 801966F8 00193658 80 01 00 20 */ lwz r0, 0x20(r1) +/* 801966FC 0019365C 91 21 00 08 */ stw r9, 8(r1) +/* 80196700 00193660 90 0A 00 BC */ stw r0, 0xbc(r10) +/* 80196704 00193664 91 0A 00 C0 */ stw r8, 0xc0(r10) +/* 80196708 00193668 90 EA 00 C4 */ stw r7, 0xc4(r10) +/* 8019670C 0019366C 90 CA 00 C8 */ stw r6, 0xc8(r10) +/* 80196710 00193670 90 AA 00 CC */ stw r5, 0xcc(r10) +/* 80196714 00193674 90 8A 00 D0 */ stw r4, 0xd0(r10) +/* 80196718 00193678 D0 03 00 30 */ stfs f0, 0x30(r3) +/* 8019671C 0019367C D0 43 00 34 */ stfs f2, 0x34(r3) +/* 80196720 00193680 91 01 00 0C */ stw r8, 0xc(r1) +/* 80196724 00193684 90 E1 00 10 */ stw r7, 0x10(r1) +/* 80196728 00193688 90 C1 00 14 */ stw r6, 0x14(r1) +/* 8019672C 0019368C 90 A1 00 18 */ stw r5, 0x18(r1) +/* 80196730 00193690 90 81 00 1C */ stw r4, 0x1c(r1) +/* 80196734 00193694 91 01 00 24 */ stw r8, 0x24(r1) +/* 80196738 00193698 90 E1 00 28 */ stw r7, 0x28(r1) +/* 8019673C 0019369C 90 C1 00 2C */ stw r6, 0x2c(r1) +/* 80196740 001936A0 90 A1 00 30 */ stw r5, 0x30(r1) +/* 80196744 001936A4 90 81 00 34 */ stw r4, 0x34(r1) +/* 80196748 001936A8 D0 63 00 38 */ stfs f3, 0x38(r3) +/* 8019674C 001936AC 38 21 00 40 */ addi r1, r1, 0x40 +/* 80196750 001936B0 4E 80 00 20 */ blr + +.global Update__21CHudDecoInterfaceXrayFfRC13CStateManager +Update__21CHudDecoInterfaceXrayFfRC13CStateManager: +/* 80196754 001936B4 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 80196758 001936B8 7C 08 02 A6 */ mflr r0 +/* 8019675C 001936BC 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 80196760 001936C0 93 E1 00 CC */ stw r31, 0xcc(r1) +/* 80196764 001936C4 7C 7F 1B 78 */ mr r31, r3 +/* 80196768 001936C8 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 8019676C 001936CC 80 04 03 04 */ lwz r0, 0x304(r4) +/* 80196770 001936D0 2C 00 00 01 */ cmpwi r0, 1 +/* 80196774 001936D4 40 82 00 38 */ bne lbl_801967AC +/* 80196778 001936D8 C0 62 A6 98 */ lfs f3, lbl_805AC3B8@sda21(r2) +/* 8019677C 001936DC C0 5F 00 04 */ lfs f2, 4(r31) +/* 80196780 001936E0 C0 02 A6 94 */ lfs f0, lbl_805AC3B4@sda21(r2) +/* 80196784 001936E4 EC 23 10 7C */ fnmsubs f1, f3, f1, f2 +/* 80196788 001936E8 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 8019678C 001936EC D0 21 00 0C */ stfs f1, 0xc(r1) +/* 80196790 001936F0 40 80 00 0C */ bge lbl_8019679C +/* 80196794 001936F4 38 61 00 0C */ addi r3, r1, 0xc +/* 80196798 001936F8 48 00 00 08 */ b lbl_801967A0 +lbl_8019679C: +/* 8019679C 001936FC 38 62 A6 94 */ addi r3, r2, lbl_805AC3B4@sda21 +lbl_801967A0: +/* 801967A0 00193700 C0 03 00 00 */ lfs f0, 0(r3) +/* 801967A4 00193704 D0 1F 00 04 */ stfs f0, 4(r31) +/* 801967A8 00193708 48 00 00 34 */ b lbl_801967DC +lbl_801967AC: +/* 801967AC 0019370C C0 62 A6 98 */ lfs f3, lbl_805AC3B8@sda21(r2) +/* 801967B0 00193710 C0 5F 00 04 */ lfs f2, 4(r31) +/* 801967B4 00193714 C0 0D 8F A8 */ lfs f0, lbl_805A7B68@sda21(r13) +/* 801967B8 00193718 EC 23 10 7A */ fmadds f1, f3, f1, f2 +/* 801967BC 0019371C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801967C0 00193720 D0 21 00 08 */ stfs f1, 8(r1) +/* 801967C4 00193724 40 80 00 0C */ bge lbl_801967D0 +/* 801967C8 00193728 38 61 00 08 */ addi r3, r1, 8 +/* 801967CC 0019372C 48 00 00 08 */ b lbl_801967D4 +lbl_801967D0: +/* 801967D0 00193730 38 6D 8F A8 */ addi r3, r13, lbl_805A7B68@sda21 +lbl_801967D4: +/* 801967D4 00193734 C0 03 00 00 */ lfs f0, 0(r3) +/* 801967D8 00193738 D0 1F 00 04 */ stfs f0, 4(r31) +lbl_801967DC: +/* 801967DC 0019373C C0 3F 00 1C */ lfs f1, 0x1c(r31) +/* 801967E0 00193740 38 61 00 94 */ addi r3, r1, 0x94 +/* 801967E4 00193744 C0 1F 00 28 */ lfs f0, 0x28(r31) +/* 801967E8 00193748 38 9F 00 08 */ addi r4, r31, 8 +/* 801967EC 0019374C C0 7F 00 20 */ lfs f3, 0x20(r31) +/* 801967F0 00193750 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801967F4 00193754 C0 5F 00 2C */ lfs f2, 0x2c(r31) +/* 801967F8 00193758 EC 81 00 2A */ fadds f4, f1, f0 +/* 801967FC 0019375C C0 3F 00 18 */ lfs f1, 0x18(r31) +/* 80196800 00193760 38 DF 00 30 */ addi r6, r31, 0x30 +/* 80196804 00193764 C0 1F 00 24 */ lfs f0, 0x24(r31) +/* 80196808 00193768 EC 43 10 2A */ fadds f2, f3, f2 +/* 8019680C 0019376C EC 01 00 2A */ fadds f0, f1, f0 +/* 80196810 00193770 D0 81 00 14 */ stfs f4, 0x14(r1) +/* 80196814 00193774 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 80196818 00193778 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 8019681C 0019377C 4B ED 6D 85 */ bl BuildFinalCameraTransform__9CSamusHudFRC11CQuaternionRC9CVector3fRC9CVector3f +/* 80196820 00193780 80 7F 00 A0 */ lwz r3, 0xa0(r31) +/* 80196824 00193784 38 81 00 94 */ addi r4, r1, 0x94 +/* 80196828 00193788 48 12 DF 11 */ bl SetO2WTransform__10CGuiObjectFRC12CTransform4f +/* 8019682C 0019378C C0 3F 00 04 */ lfs f1, 4(r31) +/* 80196830 00193790 38 61 00 40 */ addi r3, r1, 0x40 +/* 80196834 00193794 C0 02 A6 6C */ lfs f0, lbl_805AC38C@sda21(r2) +/* 80196838 00193798 38 81 00 1C */ addi r4, r1, 0x1c +/* 8019683C 0019379C D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 80196840 001937A0 38 BF 00 3C */ addi r5, r31, 0x3c +/* 80196844 001937A4 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 80196848 001937A8 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 8019684C 001937AC D0 01 00 28 */ stfs f0, 0x28(r1) +/* 80196850 001937B0 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 80196854 001937B4 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 80196858 001937B8 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 8019685C 001937BC D0 01 00 38 */ stfs f0, 0x38(r1) +/* 80196860 001937C0 D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 80196864 001937C4 48 17 98 CD */ bl __ml__9CMatrix3fCFRC9CMatrix3f +/* 80196868 001937C8 38 61 00 64 */ addi r3, r1, 0x64 +/* 8019686C 001937CC 38 81 00 40 */ addi r4, r1, 0x40 +/* 80196870 001937D0 38 BF 00 60 */ addi r5, r31, 0x60 +/* 80196874 001937D4 48 17 CA 05 */ bl __ct__12CTransform4fFRC9CMatrix3fRC9CVector3f +/* 80196878 001937D8 83 FF 00 A8 */ lwz r31, 0xa8(r31) +/* 8019687C 001937DC 38 81 00 64 */ addi r4, r1, 0x64 +/* 80196880 001937E0 38 7F 00 04 */ addi r3, r31, 4 +/* 80196884 001937E4 48 17 C2 BD */ bl __as__12CTransform4fFRC12CTransform4f +/* 80196888 001937E8 7F E3 FB 78 */ mr r3, r31 +/* 8019688C 001937EC 48 12 DF 5D */ bl RecalculateTransforms__10CGuiObjectFv +/* 80196890 001937F0 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 80196894 001937F4 83 E1 00 CC */ lwz r31, 0xcc(r1) +/* 80196898 001937F8 7C 08 03 A6 */ mtlr r0 +/* 8019689C 001937FC 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 801968A0 00193800 4E 80 00 20 */ blr + +.global SetFrameColorValue__21CHudDecoInterfaceXrayFf +SetFrameColorValue__21CHudDecoInterfaceXrayFf: +/* 801968A4 00193804 4E 80 00 20 */ blr + +.global SetDamageTransform__21CHudDecoInterfaceXrayFRC9CMatrix3fRC9CVector3f +SetDamageTransform__21CHudDecoInterfaceXrayFRC9CMatrix3fRC9CVector3f: +/* 801968A8 00193808 4E 80 00 20 */ blr + +.global SetHudOffset__21CHudDecoInterfaceXrayFRC9CVector3f +SetHudOffset__21CHudDecoInterfaceXrayFRC9CVector3f: +/* 801968AC 0019380C C0 04 00 00 */ lfs f0, 0(r4) +/* 801968B0 00193810 D0 03 00 24 */ stfs f0, 0x24(r3) +/* 801968B4 00193814 C0 04 00 04 */ lfs f0, 4(r4) +/* 801968B8 00193818 D0 03 00 28 */ stfs f0, 0x28(r3) +/* 801968BC 0019381C C0 04 00 08 */ lfs f0, 8(r4) +/* 801968C0 00193820 D0 03 00 2C */ stfs f0, 0x2c(r3) +/* 801968C4 00193824 4E 80 00 20 */ blr + +.global SetDecoRotation__21CHudDecoInterfaceXrayFf +SetDecoRotation__21CHudDecoInterfaceXrayFf: +/* 801968C8 00193828 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 801968CC 0019382C 7C 08 02 A6 */ mflr r0 +/* 801968D0 00193830 90 01 00 84 */ stw r0, 0x84(r1) +/* 801968D4 00193834 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 801968D8 00193838 7C 7F 1B 78 */ mr r31, r3 +/* 801968DC 0019383C 38 61 00 0C */ addi r3, r1, 0xc +/* 801968E0 00193840 D0 21 00 08 */ stfs f1, 8(r1) +/* 801968E4 00193844 80 9F 00 AC */ lwz r4, 0xac(r31) +/* 801968E8 00193848 48 12 E9 35 */ bl GetLocalPosition__10CGuiObjectCFv +/* 801968EC 0019384C 38 61 00 18 */ addi r3, r1, 0x18 +/* 801968F0 00193850 38 81 00 08 */ addi r4, r1, 8 +/* 801968F4 00193854 48 17 9B A1 */ bl RotateY__9CMatrix3fFRC9CRelAngle +/* 801968F8 00193858 38 61 00 3C */ addi r3, r1, 0x3c +/* 801968FC 0019385C 38 81 00 18 */ addi r4, r1, 0x18 +/* 80196900 00193860 38 A1 00 0C */ addi r5, r1, 0xc +/* 80196904 00193864 48 17 C9 75 */ bl __ct__12CTransform4fFRC9CMatrix3fRC9CVector3f +/* 80196908 00193868 83 FF 00 AC */ lwz r31, 0xac(r31) +/* 8019690C 0019386C 38 81 00 3C */ addi r4, r1, 0x3c +/* 80196910 00193870 38 7F 00 04 */ addi r3, r31, 4 +/* 80196914 00193874 48 17 C2 2D */ bl __as__12CTransform4fFRC12CTransform4f +/* 80196918 00193878 7F E3 FB 78 */ mr r3, r31 +/* 8019691C 0019387C 48 12 DE CD */ bl RecalculateTransforms__10CGuiObjectFv +/* 80196920 00193880 80 01 00 84 */ lwz r0, 0x84(r1) +/* 80196924 00193884 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 80196928 00193888 7C 08 03 A6 */ mtlr r0 +/* 8019692C 0019388C 38 21 00 80 */ addi r1, r1, 0x80 +/* 80196930 00193890 4E 80 00 20 */ blr + +.global SetReticuleTransform__21CHudDecoInterfaceXrayFRC9CMatrix3f +SetReticuleTransform__21CHudDecoInterfaceXrayFRC9CMatrix3f: +/* 80196934 00193894 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80196938 00193898 7C 08 02 A6 */ mflr r0 +/* 8019693C 0019389C 38 63 00 3C */ addi r3, r3, 0x3c +/* 80196940 001938A0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80196944 001938A4 48 17 96 B5 */ bl __as__9CMatrix3fFRC9CMatrix3f +/* 80196948 001938A8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8019694C 001938AC 7C 08 03 A6 */ mtlr r0 +/* 80196950 001938B0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80196954 001938B4 4E 80 00 20 */ blr + +.global SetHudRotation__21CHudDecoInterfaceXrayFRC11CQuaternion +SetHudRotation__21CHudDecoInterfaceXrayFRC11CQuaternion: +/* 80196958 001938B8 C0 04 00 00 */ lfs f0, 0(r4) +/* 8019695C 001938BC D0 03 00 08 */ stfs f0, 8(r3) +/* 80196960 001938C0 80 A4 00 04 */ lwz r5, 4(r4) +/* 80196964 001938C4 80 04 00 08 */ lwz r0, 8(r4) +/* 80196968 001938C8 90 A3 00 0C */ stw r5, 0xc(r3) +/* 8019696C 001938CC 90 03 00 10 */ stw r0, 0x10(r3) +/* 80196970 001938D0 80 04 00 0C */ lwz r0, 0xc(r4) +/* 80196974 001938D4 90 03 00 14 */ stw r0, 0x14(r3) +/* 80196978 001938D8 4E 80 00 20 */ blr + +.global UpdateVisibility__21CHudDecoInterfaceXrayFv +UpdateVisibility__21CHudDecoInterfaceXrayFv: +/* 8019697C 001938DC 4E 80 00 20 */ blr + +.global SetIsVisibleGame__21CHudDecoInterfaceXrayFb +SetIsVisibleGame__21CHudDecoInterfaceXrayFb: +/* 80196980 001938E0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80196984 001938E4 7C 08 02 A6 */ mflr r0 +/* 80196988 001938E8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8019698C 001938EC 88 03 00 9C */ lbz r0, 0x9c(r3) +/* 80196990 001938F0 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 80196994 001938F4 98 03 00 9C */ stb r0, 0x9c(r3) +/* 80196998 001938F8 4B FF FF E5 */ bl UpdateVisibility__21CHudDecoInterfaceXrayFv +/* 8019699C 001938FC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801969A0 00193900 7C 08 03 A6 */ mtlr r0 +/* 801969A4 00193904 38 21 00 10 */ addi r1, r1, 0x10 +/* 801969A8 00193908 4E 80 00 20 */ blr + +.global SetIsVisibleDebug__21CHudDecoInterfaceXrayFb +SetIsVisibleDebug__21CHudDecoInterfaceXrayFb: +/* 801969AC 0019390C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801969B0 00193910 7C 08 02 A6 */ mflr r0 +/* 801969B4 00193914 90 01 00 14 */ stw r0, 0x14(r1) +/* 801969B8 00193918 88 03 00 9C */ lbz r0, 0x9c(r3) +/* 801969BC 0019391C 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801969C0 00193920 98 03 00 9C */ stb r0, 0x9c(r3) +/* 801969C4 00193924 4B FF FF B9 */ bl UpdateVisibility__21CHudDecoInterfaceXrayFv +/* 801969C8 00193928 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801969CC 0019392C 7C 08 03 A6 */ mtlr r0 +/* 801969D0 00193930 38 21 00 10 */ addi r1, r1, 0x10 +/* 801969D4 00193934 4E 80 00 20 */ blr + +.global UpdateHudAlpha__21CHudDecoInterfaceXrayFv +UpdateHudAlpha__21CHudDecoInterfaceXrayFv: +/* 801969D8 00193938 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801969DC 0019393C 7C 08 02 A6 */ mflr r0 +/* 801969E0 00193940 90 01 00 14 */ stw r0, 0x14(r1) +/* 801969E4 00193944 38 00 00 FF */ li r0, 0xff +/* 801969E8 00193948 38 81 00 08 */ addi r4, r1, 8 +/* 801969EC 0019394C 80 AD A0 80 */ lwz r5, gpGameState@sda21(r13) +/* 801969F0 00193950 80 A5 01 DC */ lwz r5, 0x1dc(r5) +/* 801969F4 00193954 98 01 00 08 */ stb r0, 8(r1) +/* 801969F8 00193958 98 01 00 09 */ stb r0, 9(r1) +/* 801969FC 0019395C 98 01 00 0A */ stb r0, 0xa(r1) +/* 80196A00 00193960 98 A1 00 0B */ stb r5, 0xb(r1) +/* 80196A04 00193964 80 63 00 A4 */ lwz r3, 0xa4(r3) +/* 80196A08 00193968 48 13 3E 65 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80196A0C 0019396C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80196A10 00193970 7C 08 03 A6 */ mtlr r0 +/* 80196A14 00193974 38 21 00 10 */ addi r1, r1, 0x10 +/* 80196A18 00193978 4E 80 00 20 */ blr + +.global __ct__21CHudDecoInterfaceXRayFR9CGuiFrame +__ct__21CHudDecoInterfaceXRayFR9CGuiFrame: +/* 80196A1C 0019397C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80196A20 00193980 7C 08 02 A6 */ mflr r0 +/* 80196A24 00193984 3C A0 80 3E */ lis r5, lbl_803DA2A4@ha +/* 80196A28 00193988 C0 02 A6 68 */ lfs f0, lbl_805AC388@sda21(r2) +/* 80196A2C 0019398C 90 01 00 34 */ stw r0, 0x34(r1) +/* 80196A30 00193990 38 05 A2 A4 */ addi r0, r5, lbl_803DA2A4@l +/* 80196A34 00193994 3C C0 80 5A */ lis r6, lbl_805A6660@ha +/* 80196A38 00193998 3C A0 80 5A */ lis r5, skZero3f@ha +/* 80196A3C 0019399C 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80196A40 001939A0 7C 9F 23 78 */ mr r31, r4 +/* 80196A44 001939A4 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80196A48 001939A8 7C 7E 1B 78 */ mr r30, r3 +/* 80196A4C 001939AC 3C 60 80 3E */ lis r3, lbl_803E4550@ha +/* 80196A50 001939B0 93 A1 00 24 */ stw r29, 0x24(r1) +/* 80196A54 001939B4 3B A5 66 A0 */ addi r29, r5, skZero3f@l +/* 80196A58 001939B8 90 1E 00 00 */ stw r0, 0(r30) +/* 80196A5C 001939BC 38 03 45 50 */ addi r0, r3, lbl_803E4550@l +/* 80196A60 001939C0 3C 60 80 5A */ lis r3, lbl_805A65FC@ha +/* 80196A64 001939C4 90 1E 00 00 */ stw r0, 0(r30) +/* 80196A68 001939C8 38 03 65 FC */ addi r0, r3, lbl_805A65FC@l +/* 80196A6C 001939CC 7C 04 03 78 */ mr r4, r0 +/* 80196A70 001939D0 38 7E 00 3C */ addi r3, r30, 0x3c +/* 80196A74 001939D4 D0 1E 00 04 */ stfs f0, 4(r30) +/* 80196A78 001939D8 C4 06 66 60 */ lfsu f0, lbl_805A6660@l(r6) +/* 80196A7C 001939DC D0 1E 00 08 */ stfs f0, 8(r30) +/* 80196A80 001939E0 C0 06 00 04 */ lfs f0, 4(r6) +/* 80196A84 001939E4 D0 1E 00 0C */ stfs f0, 0xc(r30) +/* 80196A88 001939E8 C0 06 00 08 */ lfs f0, 8(r6) +/* 80196A8C 001939EC D0 1E 00 10 */ stfs f0, 0x10(r30) +/* 80196A90 001939F0 C0 06 00 0C */ lfs f0, 0xc(r6) +/* 80196A94 001939F4 D0 1E 00 14 */ stfs f0, 0x14(r30) +/* 80196A98 001939F8 C0 1D 00 00 */ lfs f0, 0(r29) +/* 80196A9C 001939FC D0 1E 00 18 */ stfs f0, 0x18(r30) +/* 80196AA0 00193A00 C0 1D 00 04 */ lfs f0, 4(r29) +/* 80196AA4 00193A04 D0 1E 00 1C */ stfs f0, 0x1c(r30) +/* 80196AA8 00193A08 C0 1D 00 08 */ lfs f0, 8(r29) +/* 80196AAC 00193A0C D0 1E 00 20 */ stfs f0, 0x20(r30) +/* 80196AB0 00193A10 C0 1D 00 00 */ lfs f0, 0(r29) +/* 80196AB4 00193A14 D0 1E 00 24 */ stfs f0, 0x24(r30) +/* 80196AB8 00193A18 C0 1D 00 04 */ lfs f0, 4(r29) +/* 80196ABC 00193A1C D0 1E 00 28 */ stfs f0, 0x28(r30) +/* 80196AC0 00193A20 C0 1D 00 08 */ lfs f0, 8(r29) +/* 80196AC4 00193A24 D0 1E 00 2C */ stfs f0, 0x2c(r30) +/* 80196AC8 00193A28 C0 1D 00 00 */ lfs f0, 0(r29) +/* 80196ACC 00193A2C D0 1E 00 30 */ stfs f0, 0x30(r30) +/* 80196AD0 00193A30 C0 1D 00 04 */ lfs f0, 4(r29) +/* 80196AD4 00193A34 D0 1E 00 34 */ stfs f0, 0x34(r30) +/* 80196AD8 00193A38 C0 1D 00 08 */ lfs f0, 8(r29) +/* 80196ADC 00193A3C D0 1E 00 38 */ stfs f0, 0x38(r30) +/* 80196AE0 00193A40 48 17 95 45 */ bl __ct__9CMatrix3fFRC9CMatrix3f +/* 80196AE4 00193A44 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80196AE8 00193A48 3C 80 80 5A */ lis r4, lbl_805A65FC@ha +/* 80196AEC 00193A4C 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 80196AF0 00193A50 C0 05 00 00 */ lfs f0, 0(r5) +/* 80196AF4 00193A54 38 7E 00 78 */ addi r3, r30, 0x78 +/* 80196AF8 00193A58 38 84 65 FC */ addi r4, r4, lbl_805A65FC@l +/* 80196AFC 00193A5C D0 1E 00 60 */ stfs f0, 0x60(r30) +/* 80196B00 00193A60 C0 1D 00 04 */ lfs f0, 4(r29) +/* 80196B04 00193A64 D0 1E 00 64 */ stfs f0, 0x64(r30) +/* 80196B08 00193A68 C0 1D 00 08 */ lfs f0, 8(r29) +/* 80196B0C 00193A6C D0 1E 00 68 */ stfs f0, 0x68(r30) +/* 80196B10 00193A70 C0 05 00 00 */ lfs f0, 0(r5) +/* 80196B14 00193A74 D0 1E 00 6C */ stfs f0, 0x6c(r30) +/* 80196B18 00193A78 C0 1D 00 04 */ lfs f0, 4(r29) +/* 80196B1C 00193A7C D0 1E 00 70 */ stfs f0, 0x70(r30) +/* 80196B20 00193A80 C0 1D 00 08 */ lfs f0, 8(r29) +/* 80196B24 00193A84 D0 1E 00 74 */ stfs f0, 0x74(r30) +/* 80196B28 00193A88 48 17 94 FD */ bl __ct__9CMatrix3fFRC9CMatrix3f +/* 80196B2C 00193A8C 88 1E 00 9C */ lbz r0, 0x9c(r30) +/* 80196B30 00193A90 38 80 00 01 */ li r4, 1 +/* 80196B34 00193A94 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 80196B38 00193A98 38 61 00 08 */ addi r3, r1, 8 +/* 80196B3C 00193A9C 98 1E 00 9C */ stb r0, 0x9c(r30) +/* 80196B40 00193AA0 88 1E 00 9C */ lbz r0, 0x9c(r30) +/* 80196B44 00193AA4 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 80196B48 00193AA8 98 1E 00 9C */ stb r0, 0x9c(r30) +/* 80196B4C 00193AAC 80 1F 00 14 */ lwz r0, 0x14(r31) +/* 80196B50 00193AB0 90 1E 00 A0 */ stw r0, 0xa0(r30) +/* 80196B54 00193AB4 80 9E 00 A0 */ lwz r4, 0xa0(r30) +/* 80196B58 00193AB8 48 12 E6 C5 */ bl GetLocalPosition__10CGuiObjectCFv +/* 80196B5C 00193ABC C0 01 00 08 */ lfs f0, 8(r1) +/* 80196B60 00193AC0 3C 60 80 3D */ lis r3, lbl_803D0F38@ha +/* 80196B64 00193AC4 38 83 0F 38 */ addi r4, r3, lbl_803D0F38@l +/* 80196B68 00193AC8 D0 1E 00 30 */ stfs f0, 0x30(r30) +/* 80196B6C 00193ACC 7F E3 FB 78 */ mr r3, r31 +/* 80196B70 00193AD0 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 80196B74 00193AD4 D0 1E 00 34 */ stfs f0, 0x34(r30) +/* 80196B78 00193AD8 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 80196B7C 00193ADC D0 1E 00 38 */ stfs f0, 0x38(r30) +/* 80196B80 00193AE0 48 12 B5 D5 */ bl FindWidget__9CGuiFrameCFPCc +/* 80196B84 00193AE4 3C 80 80 3D */ lis r4, lbl_803D0F60@ha +/* 80196B88 00193AE8 90 7E 00 A4 */ stw r3, 0xa4(r30) +/* 80196B8C 00193AEC 38 84 0F 60 */ addi r4, r4, lbl_803D0F60@l +/* 80196B90 00193AF0 7F E3 FB 78 */ mr r3, r31 +/* 80196B94 00193AF4 48 12 B5 C1 */ bl FindWidget__9CGuiFrameCFPCc +/* 80196B98 00193AF8 3C 80 80 3D */ lis r4, lbl_803D10E4@ha +/* 80196B9C 00193AFC 90 7E 00 A8 */ stw r3, 0xa8(r30) +/* 80196BA0 00193B00 38 84 10 E4 */ addi r4, r4, lbl_803D10E4@l +/* 80196BA4 00193B04 7F E3 FB 78 */ mr r3, r31 +/* 80196BA8 00193B08 38 84 00 9E */ addi r4, r4, 0x9e +/* 80196BAC 00193B0C 48 12 B5 A9 */ bl FindWidget__9CGuiFrameCFPCc +/* 80196BB0 00193B10 90 7E 00 AC */ stw r3, 0xac(r30) +/* 80196BB4 00193B14 3C 60 80 3D */ lis r3, lbl_803D10E4@ha +/* 80196BB8 00193B18 38 83 10 E4 */ addi r4, r3, lbl_803D10E4@l +/* 80196BBC 00193B1C 7F E3 FB 78 */ mr r3, r31 +/* 80196BC0 00193B20 80 BE 00 A4 */ lwz r5, 0xa4(r30) +/* 80196BC4 00193B24 38 84 00 B0 */ addi r4, r4, 0xb0 +/* 80196BC8 00193B28 C0 45 00 A0 */ lfs f2, 0xa0(r5) +/* 80196BCC 00193B2C C0 25 00 90 */ lfs f1, 0x90(r5) +/* 80196BD0 00193B30 C0 05 00 80 */ lfs f0, 0x80(r5) +/* 80196BD4 00193B34 D0 1E 00 18 */ stfs f0, 0x18(r30) +/* 80196BD8 00193B38 D0 3E 00 1C */ stfs f1, 0x1c(r30) +/* 80196BDC 00193B3C D0 5E 00 20 */ stfs f2, 0x20(r30) +/* 80196BE0 00193B40 80 BE 00 A8 */ lwz r5, 0xa8(r30) +/* 80196BE4 00193B44 C0 45 00 A0 */ lfs f2, 0xa0(r5) +/* 80196BE8 00193B48 C0 25 00 90 */ lfs f1, 0x90(r5) +/* 80196BEC 00193B4C C0 05 00 80 */ lfs f0, 0x80(r5) +/* 80196BF0 00193B50 D0 1E 00 60 */ stfs f0, 0x60(r30) +/* 80196BF4 00193B54 D0 3E 00 64 */ stfs f1, 0x64(r30) +/* 80196BF8 00193B58 D0 5E 00 68 */ stfs f2, 0x68(r30) +/* 80196BFC 00193B5C 48 12 B5 59 */ bl FindWidget__9CGuiFrameCFPCc +/* 80196C00 00193B60 28 03 00 00 */ cmplwi r3, 0 +/* 80196C04 00193B64 41 82 00 10 */ beq lbl_80196C14 +/* 80196C08 00193B68 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80196C0C 00193B6C 38 84 01 00 */ addi r4, r4, 0x100 +/* 80196C10 00193B70 48 13 3C 5D */ bl SetColor__10CGuiWidgetFRC6CColor +lbl_80196C14: +/* 80196C14 00193B74 3C 80 80 3D */ lis r4, lbl_803D10E4@ha +/* 80196C18 00193B78 7F E3 FB 78 */ mr r3, r31 +/* 80196C1C 00193B7C 38 84 10 E4 */ addi r4, r4, lbl_803D10E4@l +/* 80196C20 00193B80 38 84 00 C6 */ addi r4, r4, 0xc6 +/* 80196C24 00193B84 48 12 B5 31 */ bl FindWidget__9CGuiFrameCFPCc +/* 80196C28 00193B88 28 03 00 00 */ cmplwi r3, 0 +/* 80196C2C 00193B8C 41 82 00 14 */ beq lbl_80196C40 +/* 80196C30 00193B90 88 03 00 B7 */ lbz r0, 0xb7(r3) +/* 80196C34 00193B94 38 80 00 01 */ li r4, 1 +/* 80196C38 00193B98 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 80196C3C 00193B9C 98 03 00 B7 */ stb r0, 0xb7(r3) +lbl_80196C40: +/* 80196C40 00193BA0 3C 80 80 3D */ lis r4, lbl_803D10E4@ha +/* 80196C44 00193BA4 7F E3 FB 78 */ mr r3, r31 +/* 80196C48 00193BA8 38 84 10 E4 */ addi r4, r4, lbl_803D10E4@l +/* 80196C4C 00193BAC 38 84 00 D2 */ addi r4, r4, 0xd2 +/* 80196C50 00193BB0 48 12 B5 05 */ bl FindWidget__9CGuiFrameCFPCc +/* 80196C54 00193BB4 28 03 00 00 */ cmplwi r3, 0 +/* 80196C58 00193BB8 41 82 00 14 */ beq lbl_80196C6C +/* 80196C5C 00193BBC 88 03 00 B7 */ lbz r0, 0xb7(r3) +/* 80196C60 00193BC0 38 80 00 01 */ li r4, 1 +/* 80196C64 00193BC4 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 80196C68 00193BC8 98 03 00 B7 */ stb r0, 0xb7(r3) +lbl_80196C6C: +/* 80196C6C 00193BCC 3C 80 80 3D */ lis r4, lbl_803D10E4@ha +/* 80196C70 00193BD0 7F E3 FB 78 */ mr r3, r31 +/* 80196C74 00193BD4 38 84 10 E4 */ addi r4, r4, lbl_803D10E4@l +/* 80196C78 00193BD8 38 84 00 DF */ addi r4, r4, 0xdf +/* 80196C7C 00193BDC 48 12 B4 D9 */ bl FindWidget__9CGuiFrameCFPCc +/* 80196C80 00193BE0 28 03 00 00 */ cmplwi r3, 0 +/* 80196C84 00193BE4 41 82 00 14 */ beq lbl_80196C98 +/* 80196C88 00193BE8 88 03 00 B7 */ lbz r0, 0xb7(r3) +/* 80196C8C 00193BEC 38 80 00 01 */ li r4, 1 +/* 80196C90 00193BF0 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 80196C94 00193BF4 98 03 00 B7 */ stb r0, 0xb7(r3) +lbl_80196C98: +/* 80196C98 00193BF8 3C 80 80 3D */ lis r4, lbl_803D10E4@ha +/* 80196C9C 00193BFC 7F E3 FB 78 */ mr r3, r31 +/* 80196CA0 00193C00 38 84 10 E4 */ addi r4, r4, lbl_803D10E4@l +/* 80196CA4 00193C04 38 84 00 EC */ addi r4, r4, 0xec +/* 80196CA8 00193C08 48 12 B4 AD */ bl FindWidget__9CGuiFrameCFPCc +/* 80196CAC 00193C0C 28 03 00 00 */ cmplwi r3, 0 +/* 80196CB0 00193C10 41 82 00 14 */ beq lbl_80196CC4 +/* 80196CB4 00193C14 88 03 00 B7 */ lbz r0, 0xb7(r3) +/* 80196CB8 00193C18 38 80 00 01 */ li r4, 1 +/* 80196CBC 00193C1C 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 80196CC0 00193C20 98 03 00 B7 */ stb r0, 0xb7(r3) +lbl_80196CC4: +/* 80196CC4 00193C24 3C 80 80 3D */ lis r4, lbl_803D10E4@ha +/* 80196CC8 00193C28 7F E3 FB 78 */ mr r3, r31 +/* 80196CCC 00193C2C 38 84 10 E4 */ addi r4, r4, lbl_803D10E4@l +/* 80196CD0 00193C30 38 84 00 F9 */ addi r4, r4, 0xf9 +/* 80196CD4 00193C34 48 12 B4 81 */ bl FindWidget__9CGuiFrameCFPCc +/* 80196CD8 00193C38 28 03 00 00 */ cmplwi r3, 0 +/* 80196CDC 00193C3C 41 82 00 14 */ beq lbl_80196CF0 +/* 80196CE0 00193C40 88 03 00 B7 */ lbz r0, 0xb7(r3) +/* 80196CE4 00193C44 38 80 00 01 */ li r4, 1 +/* 80196CE8 00193C48 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 80196CEC 00193C4C 98 03 00 B7 */ stb r0, 0xb7(r3) +lbl_80196CF0: +/* 80196CF0 00193C50 3C 80 80 3D */ lis r4, lbl_803D10E4@ha +/* 80196CF4 00193C54 7F E3 FB 78 */ mr r3, r31 +/* 80196CF8 00193C58 38 84 10 E4 */ addi r4, r4, lbl_803D10E4@l +/* 80196CFC 00193C5C 38 84 01 0D */ addi r4, r4, 0x10d +/* 80196D00 00193C60 48 12 B4 55 */ bl FindWidget__9CGuiFrameCFPCc +/* 80196D04 00193C64 28 03 00 00 */ cmplwi r3, 0 +/* 80196D08 00193C68 41 82 00 14 */ beq lbl_80196D1C +/* 80196D0C 00193C6C 88 03 00 B7 */ lbz r0, 0xb7(r3) +/* 80196D10 00193C70 38 80 00 01 */ li r4, 1 +/* 80196D14 00193C74 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 80196D18 00193C78 98 03 00 B7 */ stb r0, 0xb7(r3) +lbl_80196D1C: +/* 80196D1C 00193C7C 7F C3 F3 78 */ mr r3, r30 +/* 80196D20 00193C80 81 9E 00 00 */ lwz r12, 0(r30) +/* 80196D24 00193C84 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 80196D28 00193C88 7D 89 03 A6 */ mtctr r12 +/* 80196D2C 00193C8C 4E 80 04 21 */ bctrl +/* 80196D30 00193C90 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80196D34 00193C94 7F C3 F3 78 */ mr r3, r30 +/* 80196D38 00193C98 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80196D3C 00193C9C 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80196D40 00193CA0 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 80196D44 00193CA4 7C 08 03 A6 */ mtlr r0 +/* 80196D48 00193CA8 38 21 00 30 */ addi r1, r1, 0x30 +/* 80196D4C 00193CAC 4E 80 00 20 */ blr + +.global UpdateCameraDebugSettings__23CHudDecoInterfaceCombatFfff +UpdateCameraDebugSettings__23CHudDecoInterfaceCombatFfff: +/* 80196D50 00193CB0 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80196D54 00193CB4 C0 02 A6 6C */ lfs f0, lbl_805AC38C@sda21(r2) +/* 80196D58 00193CB8 81 43 00 6C */ lwz r10, 0x6c(r3) +/* 80196D5C 00193CBC 81 2A 00 BC */ lwz r9, 0xbc(r10) +/* 80196D60 00193CC0 81 0A 00 C0 */ lwz r8, 0xc0(r10) +/* 80196D64 00193CC4 91 21 00 20 */ stw r9, 0x20(r1) +/* 80196D68 00193CC8 80 EA 00 C4 */ lwz r7, 0xc4(r10) +/* 80196D6C 00193CCC D0 21 00 20 */ stfs f1, 0x20(r1) +/* 80196D70 00193CD0 80 CA 00 C8 */ lwz r6, 0xc8(r10) +/* 80196D74 00193CD4 80 AA 00 CC */ lwz r5, 0xcc(r10) +/* 80196D78 00193CD8 80 8A 00 D0 */ lwz r4, 0xd0(r10) +/* 80196D7C 00193CDC 80 01 00 20 */ lwz r0, 0x20(r1) +/* 80196D80 00193CE0 91 21 00 08 */ stw r9, 8(r1) +/* 80196D84 00193CE4 90 0A 00 BC */ stw r0, 0xbc(r10) +/* 80196D88 00193CE8 91 0A 00 C0 */ stw r8, 0xc0(r10) +/* 80196D8C 00193CEC 90 EA 00 C4 */ stw r7, 0xc4(r10) +/* 80196D90 00193CF0 90 CA 00 C8 */ stw r6, 0xc8(r10) +/* 80196D94 00193CF4 90 AA 00 CC */ stw r5, 0xcc(r10) +/* 80196D98 00193CF8 90 8A 00 D0 */ stw r4, 0xd0(r10) +/* 80196D9C 00193CFC D0 03 00 2C */ stfs f0, 0x2c(r3) +/* 80196DA0 00193D00 D0 43 00 30 */ stfs f2, 0x30(r3) +/* 80196DA4 00193D04 91 01 00 0C */ stw r8, 0xc(r1) +/* 80196DA8 00193D08 90 E1 00 10 */ stw r7, 0x10(r1) +/* 80196DAC 00193D0C 90 C1 00 14 */ stw r6, 0x14(r1) +/* 80196DB0 00193D10 90 A1 00 18 */ stw r5, 0x18(r1) +/* 80196DB4 00193D14 90 81 00 1C */ stw r4, 0x1c(r1) +/* 80196DB8 00193D18 91 01 00 24 */ stw r8, 0x24(r1) +/* 80196DBC 00193D1C 90 E1 00 28 */ stw r7, 0x28(r1) +/* 80196DC0 00193D20 90 C1 00 2C */ stw r6, 0x2c(r1) +/* 80196DC4 00193D24 90 A1 00 30 */ stw r5, 0x30(r1) +/* 80196DC8 00193D28 90 81 00 34 */ stw r4, 0x34(r1) +/* 80196DCC 00193D2C D0 63 00 34 */ stfs f3, 0x34(r3) +/* 80196DD0 00193D30 38 21 00 40 */ addi r1, r1, 0x40 +/* 80196DD4 00193D34 4E 80 00 20 */ blr + +.global Update__23CHudDecoInterfaceCombatFfRC13CStateManager +Update__23CHudDecoInterfaceCombatFfRC13CStateManager: +/* 80196DD8 00193D38 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80196DDC 00193D3C 7C 08 02 A6 */ mflr r0 +/* 80196DE0 00193D40 90 01 00 54 */ stw r0, 0x54(r1) +/* 80196DE4 00193D44 38 A1 00 08 */ addi r5, r1, 8 +/* 80196DE8 00193D48 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 80196DEC 00193D4C 7C 7F 1B 78 */ mr r31, r3 +/* 80196DF0 00193D50 38 61 00 14 */ addi r3, r1, 0x14 +/* 80196DF4 00193D54 C0 3F 00 18 */ lfs f1, 0x18(r31) +/* 80196DF8 00193D58 38 9F 00 04 */ addi r4, r31, 4 +/* 80196DFC 00193D5C C0 1F 00 24 */ lfs f0, 0x24(r31) +/* 80196E00 00193D60 38 DF 00 2C */ addi r6, r31, 0x2c +/* 80196E04 00193D64 C0 7F 00 1C */ lfs f3, 0x1c(r31) +/* 80196E08 00193D68 EC 81 00 2A */ fadds f4, f1, f0 +/* 80196E0C 00193D6C C0 5F 00 28 */ lfs f2, 0x28(r31) +/* 80196E10 00193D70 C0 3F 00 14 */ lfs f1, 0x14(r31) +/* 80196E14 00193D74 C0 1F 00 20 */ lfs f0, 0x20(r31) +/* 80196E18 00193D78 EC 43 10 2A */ fadds f2, f3, f2 +/* 80196E1C 00193D7C EC 01 00 2A */ fadds f0, f1, f0 +/* 80196E20 00193D80 D0 81 00 0C */ stfs f4, 0xc(r1) +/* 80196E24 00193D84 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 80196E28 00193D88 D0 01 00 08 */ stfs f0, 8(r1) +/* 80196E2C 00193D8C 4B ED 67 75 */ bl BuildFinalCameraTransform__9CSamusHudFRC11CQuaternionRC9CVector3fRC9CVector3f +/* 80196E30 00193D90 80 7F 00 6C */ lwz r3, 0x6c(r31) +/* 80196E34 00193D94 38 81 00 14 */ addi r4, r1, 0x14 +/* 80196E38 00193D98 48 12 D9 01 */ bl SetO2WTransform__10CGuiObjectFRC12CTransform4f +/* 80196E3C 00193D9C 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80196E40 00193DA0 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 80196E44 00193DA4 7C 08 03 A6 */ mtlr r0 +/* 80196E48 00193DA8 38 21 00 50 */ addi r1, r1, 0x50 +/* 80196E4C 00193DAC 4E 80 00 20 */ blr + +.global SetFrameColorValue__23CHudDecoInterfaceCombatFf +SetFrameColorValue__23CHudDecoInterfaceCombatFf: +/* 80196E50 00193DB0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80196E54 00193DB4 7C 08 02 A6 */ mflr r0 +/* 80196E58 00193DB8 C0 02 A6 6C */ lfs f0, lbl_805AC38C@sda21(r2) +/* 80196E5C 00193DBC 90 01 00 24 */ stw r0, 0x24(r1) +/* 80196E60 00193DC0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80196E64 00193DC4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80196E68 00193DC8 7C 7F 1B 78 */ mr r31, r3 +/* 80196E6C 00193DCC 40 81 00 0C */ ble lbl_80196E78 +/* 80196E70 00193DD0 48 1B 31 3D */ bl White__6CColorFv +/* 80196E74 00193DD4 48 00 00 0C */ b lbl_80196E80 +lbl_80196E78: +/* 80196E78 00193DD8 80 6D A1 3C */ lwz r3, gpTweakGuiColors@sda21(r13) +/* 80196E7C 00193DDC 38 63 00 1C */ addi r3, r3, 0x1c +lbl_80196E80: +/* 80196E80 00193DE0 80 03 00 00 */ lwz r0, 0(r3) +/* 80196E84 00193DE4 38 81 00 08 */ addi r4, r1, 8 +/* 80196E88 00193DE8 90 01 00 08 */ stw r0, 8(r1) +/* 80196E8C 00193DEC 80 7F 00 7C */ lwz r3, 0x7c(r31) +/* 80196E90 00193DF0 48 13 39 DD */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80196E94 00193DF4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80196E98 00193DF8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80196E9C 00193DFC 7C 08 03 A6 */ mtlr r0 +/* 80196EA0 00193E00 38 21 00 20 */ addi r1, r1, 0x20 +/* 80196EA4 00193E04 4E 80 00 20 */ blr + +.global SetDamageTransform__23CHudDecoInterfaceCombatFRC9CMatrix3fRC9CVector3f +SetDamageTransform__23CHudDecoInterfaceCombatFRC9CMatrix3fRC9CVector3f: +/* 80196EA8 00193E08 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 80196EAC 00193E0C 7C 08 02 A6 */ mflr r0 +/* 80196EB0 00193E10 90 01 00 74 */ stw r0, 0x74(r1) +/* 80196EB4 00193E14 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 80196EB8 00193E18 7C 7F 1B 78 */ mr r31, r3 +/* 80196EBC 00193E1C C0 23 00 3C */ lfs f1, 0x3c(r3) +/* 80196EC0 00193E20 38 61 00 14 */ addi r3, r1, 0x14 +/* 80196EC4 00193E24 C0 05 00 04 */ lfs f0, 4(r5) +/* 80196EC8 00193E28 C0 7F 00 40 */ lfs f3, 0x40(r31) +/* 80196ECC 00193E2C EC 81 00 2A */ fadds f4, f1, f0 +/* 80196ED0 00193E30 C0 45 00 08 */ lfs f2, 8(r5) +/* 80196ED4 00193E34 C0 3F 00 38 */ lfs f1, 0x38(r31) +/* 80196ED8 00193E38 C0 05 00 00 */ lfs f0, 0(r5) +/* 80196EDC 00193E3C EC 43 10 2A */ fadds f2, f3, f2 +/* 80196EE0 00193E40 D0 81 00 0C */ stfs f4, 0xc(r1) +/* 80196EE4 00193E44 EC 01 00 2A */ fadds f0, f1, f0 +/* 80196EE8 00193E48 38 BF 00 44 */ addi r5, r31, 0x44 +/* 80196EEC 00193E4C D0 41 00 10 */ stfs f2, 0x10(r1) +/* 80196EF0 00193E50 D0 01 00 08 */ stfs f0, 8(r1) +/* 80196EF4 00193E54 48 17 92 3D */ bl __ml__9CMatrix3fCFRC9CMatrix3f +/* 80196EF8 00193E58 38 61 00 38 */ addi r3, r1, 0x38 +/* 80196EFC 00193E5C 38 81 00 14 */ addi r4, r1, 0x14 +/* 80196F00 00193E60 38 A1 00 08 */ addi r5, r1, 8 +/* 80196F04 00193E64 48 17 C3 75 */ bl __ct__12CTransform4fFRC9CMatrix3fRC9CVector3f +/* 80196F08 00193E68 83 FF 00 7C */ lwz r31, 0x7c(r31) +/* 80196F0C 00193E6C 38 81 00 38 */ addi r4, r1, 0x38 +/* 80196F10 00193E70 38 7F 00 04 */ addi r3, r31, 4 +/* 80196F14 00193E74 48 17 BC 2D */ bl __as__12CTransform4fFRC12CTransform4f +/* 80196F18 00193E78 7F E3 FB 78 */ mr r3, r31 +/* 80196F1C 00193E7C 48 12 D8 CD */ bl RecalculateTransforms__10CGuiObjectFv +/* 80196F20 00193E80 80 01 00 74 */ lwz r0, 0x74(r1) +/* 80196F24 00193E84 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 80196F28 00193E88 7C 08 03 A6 */ mtlr r0 +/* 80196F2C 00193E8C 38 21 00 70 */ addi r1, r1, 0x70 +/* 80196F30 00193E90 4E 80 00 20 */ blr + +.global SetHudOffset__23CHudDecoInterfaceCombatFRC9CVector3f +SetHudOffset__23CHudDecoInterfaceCombatFRC9CVector3f: +/* 80196F34 00193E94 C0 04 00 00 */ lfs f0, 0(r4) +/* 80196F38 00193E98 D0 03 00 20 */ stfs f0, 0x20(r3) +/* 80196F3C 00193E9C C0 04 00 04 */ lfs f0, 4(r4) +/* 80196F40 00193EA0 D0 03 00 24 */ stfs f0, 0x24(r3) +/* 80196F44 00193EA4 C0 04 00 08 */ lfs f0, 8(r4) +/* 80196F48 00193EA8 D0 03 00 28 */ stfs f0, 0x28(r3) +/* 80196F4C 00193EAC 4E 80 00 20 */ blr + +.global SetHudRotation__23CHudDecoInterfaceCombatFRC11CQuaternion +SetHudRotation__23CHudDecoInterfaceCombatFRC11CQuaternion: +/* 80196F50 00193EB0 C0 04 00 00 */ lfs f0, 0(r4) +/* 80196F54 00193EB4 D0 03 00 04 */ stfs f0, 4(r3) +/* 80196F58 00193EB8 80 A4 00 04 */ lwz r5, 4(r4) +/* 80196F5C 00193EBC 80 04 00 08 */ lwz r0, 8(r4) +/* 80196F60 00193EC0 90 A3 00 08 */ stw r5, 8(r3) +/* 80196F64 00193EC4 90 03 00 0C */ stw r0, 0xc(r3) +/* 80196F68 00193EC8 80 04 00 0C */ lwz r0, 0xc(r4) +/* 80196F6C 00193ECC 90 03 00 10 */ stw r0, 0x10(r3) +/* 80196F70 00193ED0 4E 80 00 20 */ blr + +.global UpdateVisibility__23CHudDecoInterfaceCombatFv +UpdateVisibility__23CHudDecoInterfaceCombatFv: +/* 80196F74 00193ED4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80196F78 00193ED8 7C 08 02 A6 */ mflr r0 +/* 80196F7C 00193EDC 38 A0 00 00 */ li r5, 0 +/* 80196F80 00193EE0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80196F84 00193EE4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80196F88 00193EE8 93 C1 00 08 */ stw r30, 8(r1) +/* 80196F8C 00193EEC 7C 7E 1B 78 */ mr r30, r3 +/* 80196F90 00193EF0 88 83 00 68 */ lbz r4, 0x68(r3) +/* 80196F94 00193EF4 80 63 00 74 */ lwz r3, 0x74(r3) +/* 80196F98 00193EF8 54 80 CF FF */ rlwinm. r0, r4, 0x19, 0x1f, 0x1f +/* 80196F9C 00193EFC 41 82 00 10 */ beq lbl_80196FAC +/* 80196FA0 00193F00 54 80 D7 FF */ rlwinm. r0, r4, 0x1a, 0x1f, 0x1f +/* 80196FA4 00193F04 41 82 00 08 */ beq lbl_80196FAC +/* 80196FA8 00193F08 38 A0 00 01 */ li r5, 1 +lbl_80196FAC: +/* 80196FAC 00193F0C 54 BF 06 3E */ clrlwi r31, r5, 0x18 +/* 80196FB0 00193F10 38 A0 00 01 */ li r5, 1 +/* 80196FB4 00193F14 7F E4 FB 78 */ mr r4, r31 +/* 80196FB8 00193F18 48 13 37 31 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80196FBC 00193F1C 80 7E 00 78 */ lwz r3, 0x78(r30) +/* 80196FC0 00193F20 7F E4 FB 78 */ mr r4, r31 +/* 80196FC4 00193F24 38 A0 00 01 */ li r5, 1 +/* 80196FC8 00193F28 48 13 37 21 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80196FCC 00193F2C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80196FD0 00193F30 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80196FD4 00193F34 83 C1 00 08 */ lwz r30, 8(r1) +/* 80196FD8 00193F38 7C 08 03 A6 */ mtlr r0 +/* 80196FDC 00193F3C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80196FE0 00193F40 4E 80 00 20 */ blr + +.global UpdateHudAlpha__23CHudDecoInterfaceCombatFv +UpdateHudAlpha__23CHudDecoInterfaceCombatFv: +/* 80196FE4 00193F44 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80196FE8 00193F48 7C 08 02 A6 */ mflr r0 +/* 80196FEC 00193F4C 90 01 00 14 */ stw r0, 0x14(r1) +/* 80196FF0 00193F50 38 00 00 FF */ li r0, 0xff +/* 80196FF4 00193F54 38 81 00 08 */ addi r4, r1, 8 +/* 80196FF8 00193F58 80 AD A0 80 */ lwz r5, gpGameState@sda21(r13) +/* 80196FFC 00193F5C 80 A5 01 DC */ lwz r5, 0x1dc(r5) +/* 80197000 00193F60 98 01 00 08 */ stb r0, 8(r1) +/* 80197004 00193F64 98 01 00 09 */ stb r0, 9(r1) +/* 80197008 00193F68 98 01 00 0A */ stb r0, 0xa(r1) +/* 8019700C 00193F6C 98 A1 00 0B */ stb r5, 0xb(r1) +/* 80197010 00193F70 80 63 00 70 */ lwz r3, 0x70(r3) +/* 80197014 00193F74 48 13 38 59 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80197018 00193F78 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8019701C 00193F7C 7C 08 03 A6 */ mtlr r0 +/* 80197020 00193F80 38 21 00 10 */ addi r1, r1, 0x10 +/* 80197024 00193F84 4E 80 00 20 */ blr + +.global SetIsVisibleGame__23CHudDecoInterfaceCombatFb +SetIsVisibleGame__23CHudDecoInterfaceCombatFb: +/* 80197028 00193F88 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8019702C 00193F8C 7C 08 02 A6 */ mflr r0 +/* 80197030 00193F90 90 01 00 14 */ stw r0, 0x14(r1) +/* 80197034 00193F94 88 03 00 68 */ lbz r0, 0x68(r3) +/* 80197038 00193F98 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 8019703C 00193F9C 98 03 00 68 */ stb r0, 0x68(r3) +/* 80197040 00193FA0 4B FF FF 35 */ bl UpdateVisibility__23CHudDecoInterfaceCombatFv +/* 80197044 00193FA4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80197048 00193FA8 7C 08 03 A6 */ mtlr r0 +/* 8019704C 00193FAC 38 21 00 10 */ addi r1, r1, 0x10 +/* 80197050 00193FB0 4E 80 00 20 */ blr + +.global SetIsVisibleDebug__23CHudDecoInterfaceCombatFb +SetIsVisibleDebug__23CHudDecoInterfaceCombatFb: +/* 80197054 00193FB4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80197058 00193FB8 7C 08 02 A6 */ mflr r0 +/* 8019705C 00193FBC 90 01 00 14 */ stw r0, 0x14(r1) +/* 80197060 00193FC0 88 03 00 68 */ lbz r0, 0x68(r3) +/* 80197064 00193FC4 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 80197068 00193FC8 98 03 00 68 */ stb r0, 0x68(r3) +/* 8019706C 00193FCC 4B FF FF 09 */ bl UpdateVisibility__23CHudDecoInterfaceCombatFv +/* 80197070 00193FD0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80197074 00193FD4 7C 08 03 A6 */ mtlr r0 +/* 80197078 00193FD8 38 21 00 10 */ addi r1, r1, 0x10 +/* 8019707C 00193FDC 4E 80 00 20 */ blr + +.global __ct__23CHudDecoInterfaceCombatFR9CGuiFrame +__ct__23CHudDecoInterfaceCombatFR9CGuiFrame: +/* 80197080 00193FE0 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80197084 00193FE4 7C 08 02 A6 */ mflr r0 +/* 80197088 00193FE8 3C A0 80 3E */ lis r5, lbl_803DA2A4@ha +/* 8019708C 00193FEC 3C E0 80 3D */ lis r7, lbl_803D0F10@ha +/* 80197090 00193FF0 90 01 00 54 */ stw r0, 0x54(r1) +/* 80197094 00193FF4 38 05 A2 A4 */ addi r0, r5, lbl_803DA2A4@l +/* 80197098 00193FF8 3C A0 80 5A */ lis r5, skZero3f@ha +/* 8019709C 00193FFC 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801970A0 00194000 7C 7F 1B 78 */ mr r31, r3 +/* 801970A4 00194004 3C 60 80 3E */ lis r3, lbl_803E4594@ha +/* 801970A8 00194008 93 C1 00 48 */ stw r30, 0x48(r1) +/* 801970AC 0019400C 3B C7 0F 10 */ addi r30, r7, lbl_803D0F10@l +/* 801970B0 00194010 93 A1 00 44 */ stw r29, 0x44(r1) +/* 801970B4 00194014 7C 9D 23 78 */ mr r29, r4 +/* 801970B8 00194018 90 1F 00 00 */ stw r0, 0(r31) +/* 801970BC 0019401C 38 03 45 94 */ addi r0, r3, lbl_803E4594@l +/* 801970C0 00194020 3C 60 80 5A */ lis r3, lbl_805A6660@ha +/* 801970C4 00194024 90 1F 00 00 */ stw r0, 0(r31) +/* 801970C8 00194028 38 C3 66 60 */ addi r6, r3, lbl_805A6660@l +/* 801970CC 0019402C 3C 60 80 5A */ lis r3, lbl_805A65FC@ha +/* 801970D0 00194030 C0 06 00 00 */ lfs f0, 0(r6) +/* 801970D4 00194034 38 03 65 FC */ addi r0, r3, lbl_805A65FC@l +/* 801970D8 00194038 7C 04 03 78 */ mr r4, r0 +/* 801970DC 0019403C 38 7F 00 44 */ addi r3, r31, 0x44 +/* 801970E0 00194040 D0 1F 00 04 */ stfs f0, 4(r31) +/* 801970E4 00194044 C0 06 00 04 */ lfs f0, 4(r6) +/* 801970E8 00194048 D0 1F 00 08 */ stfs f0, 8(r31) +/* 801970EC 0019404C C0 06 00 08 */ lfs f0, 8(r6) +/* 801970F0 00194050 D0 1F 00 0C */ stfs f0, 0xc(r31) +/* 801970F4 00194054 C0 06 00 0C */ lfs f0, 0xc(r6) +/* 801970F8 00194058 D0 1F 00 10 */ stfs f0, 0x10(r31) +/* 801970FC 0019405C C4 05 66 A0 */ lfsu f0, skZero3f@l(r5) +/* 80197100 00194060 D0 1F 00 14 */ stfs f0, 0x14(r31) +/* 80197104 00194064 C0 05 00 04 */ lfs f0, 4(r5) +/* 80197108 00194068 D0 1F 00 18 */ stfs f0, 0x18(r31) +/* 8019710C 0019406C C0 05 00 08 */ lfs f0, 8(r5) +/* 80197110 00194070 D0 1F 00 1C */ stfs f0, 0x1c(r31) +/* 80197114 00194074 C0 05 00 00 */ lfs f0, 0(r5) +/* 80197118 00194078 D0 1F 00 20 */ stfs f0, 0x20(r31) +/* 8019711C 0019407C C0 05 00 04 */ lfs f0, 4(r5) +/* 80197120 00194080 D0 1F 00 24 */ stfs f0, 0x24(r31) +/* 80197124 00194084 C0 05 00 08 */ lfs f0, 8(r5) +/* 80197128 00194088 D0 1F 00 28 */ stfs f0, 0x28(r31) +/* 8019712C 0019408C C0 05 00 00 */ lfs f0, 0(r5) +/* 80197130 00194090 D0 1F 00 2C */ stfs f0, 0x2c(r31) +/* 80197134 00194094 C0 05 00 04 */ lfs f0, 4(r5) +/* 80197138 00194098 D0 1F 00 30 */ stfs f0, 0x30(r31) +/* 8019713C 0019409C C0 05 00 08 */ lfs f0, 8(r5) +/* 80197140 001940A0 D0 1F 00 34 */ stfs f0, 0x34(r31) +/* 80197144 001940A4 C0 05 00 00 */ lfs f0, 0(r5) +/* 80197148 001940A8 D0 1F 00 38 */ stfs f0, 0x38(r31) +/* 8019714C 001940AC C0 05 00 04 */ lfs f0, 4(r5) +/* 80197150 001940B0 D0 1F 00 3C */ stfs f0, 0x3c(r31) +/* 80197154 001940B4 C0 05 00 08 */ lfs f0, 8(r5) +/* 80197158 001940B8 D0 1F 00 40 */ stfs f0, 0x40(r31) +/* 8019715C 001940BC 48 17 8E C9 */ bl __ct__9CMatrix3fFRC9CMatrix3f +/* 80197160 001940C0 88 1F 00 68 */ lbz r0, 0x68(r31) +/* 80197164 001940C4 38 80 00 01 */ li r4, 1 +/* 80197168 001940C8 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 8019716C 001940CC 38 61 00 08 */ addi r3, r1, 8 +/* 80197170 001940D0 98 1F 00 68 */ stb r0, 0x68(r31) +/* 80197174 001940D4 88 1F 00 68 */ lbz r0, 0x68(r31) +/* 80197178 001940D8 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 8019717C 001940DC 98 1F 00 68 */ stb r0, 0x68(r31) +/* 80197180 001940E0 80 1D 00 14 */ lwz r0, 0x14(r29) +/* 80197184 001940E4 90 1F 00 6C */ stw r0, 0x6c(r31) +/* 80197188 001940E8 80 9F 00 6C */ lwz r4, 0x6c(r31) +/* 8019718C 001940EC 48 12 E0 91 */ bl GetLocalPosition__10CGuiObjectCFv +/* 80197190 001940F0 C0 01 00 08 */ lfs f0, 8(r1) +/* 80197194 001940F4 7F A3 EB 78 */ mr r3, r29 +/* 80197198 001940F8 38 9E 00 28 */ addi r4, r30, 0x28 +/* 8019719C 001940FC D0 1F 00 2C */ stfs f0, 0x2c(r31) +/* 801971A0 00194100 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 801971A4 00194104 D0 1F 00 30 */ stfs f0, 0x30(r31) +/* 801971A8 00194108 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 801971AC 0019410C D0 1F 00 34 */ stfs f0, 0x34(r31) +/* 801971B0 00194110 48 12 AF A5 */ bl FindWidget__9CGuiFrameCFPCc +/* 801971B4 00194114 90 7F 00 70 */ stw r3, 0x70(r31) +/* 801971B8 00194118 7F A3 EB 78 */ mr r3, r29 +/* 801971BC 0019411C 38 9E 00 00 */ addi r4, r30, 0 +/* 801971C0 00194120 48 12 AF 95 */ bl FindWidget__9CGuiFrameCFPCc +/* 801971C4 00194124 90 7F 00 74 */ stw r3, 0x74(r31) +/* 801971C8 00194128 7F A3 EB 78 */ mr r3, r29 +/* 801971CC 0019412C 38 9E 00 10 */ addi r4, r30, 0x10 +/* 801971D0 00194130 48 12 AF 85 */ bl FindWidget__9CGuiFrameCFPCc +/* 801971D4 00194134 90 7F 00 78 */ stw r3, 0x78(r31) +/* 801971D8 00194138 7F A3 EB 78 */ mr r3, r29 +/* 801971DC 0019413C 38 9E 00 3C */ addi r4, r30, 0x3c +/* 801971E0 00194140 48 12 AF 75 */ bl FindWidget__9CGuiFrameCFPCc +/* 801971E4 00194144 90 7F 00 7C */ stw r3, 0x7c(r31) +/* 801971E8 00194148 80 7F 00 70 */ lwz r3, 0x70(r31) +/* 801971EC 0019414C C0 43 00 A0 */ lfs f2, 0xa0(r3) +/* 801971F0 00194150 C0 23 00 90 */ lfs f1, 0x90(r3) +/* 801971F4 00194154 C0 03 00 80 */ lfs f0, 0x80(r3) +/* 801971F8 00194158 D0 1F 00 14 */ stfs f0, 0x14(r31) +/* 801971FC 0019415C D0 3F 00 18 */ stfs f1, 0x18(r31) +/* 80197200 00194160 D0 5F 00 1C */ stfs f2, 0x1c(r31) +/* 80197204 00194164 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 80197208 00194168 80 7F 00 78 */ lwz r3, 0x78(r31) +/* 8019720C 0019416C 38 84 00 88 */ addi r4, r4, 0x88 +/* 80197210 00194170 48 13 36 5D */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80197214 00194174 80 9F 00 7C */ lwz r4, 0x7c(r31) +/* 80197218 00194178 38 61 00 14 */ addi r3, r1, 0x14 +/* 8019721C 0019417C C0 44 00 30 */ lfs f2, 0x30(r4) +/* 80197220 00194180 C0 24 00 20 */ lfs f1, 0x20(r4) +/* 80197224 00194184 C0 04 00 10 */ lfs f0, 0x10(r4) +/* 80197228 00194188 D0 1F 00 38 */ stfs f0, 0x38(r31) +/* 8019722C 0019418C D0 3F 00 3C */ stfs f1, 0x3c(r31) +/* 80197230 00194190 D0 5F 00 40 */ stfs f2, 0x40(r31) +/* 80197234 00194194 80 9F 00 7C */ lwz r4, 0x7c(r31) +/* 80197238 00194198 38 84 00 04 */ addi r4, r4, 4 +/* 8019723C 0019419C 48 17 BE B9 */ bl BuildMatrix3f__12CTransform4fCFv +/* 80197240 001941A0 38 7F 00 44 */ addi r3, r31, 0x44 +/* 80197244 001941A4 38 81 00 14 */ addi r4, r1, 0x14 +/* 80197248 001941A8 48 17 8D B1 */ bl __as__9CMatrix3fFRC9CMatrix3f +/* 8019724C 001941AC 7F E3 FB 78 */ mr r3, r31 +/* 80197250 001941B0 81 9F 00 00 */ lwz r12, 0(r31) +/* 80197254 001941B4 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 80197258 001941B8 7D 89 03 A6 */ mtctr r12 +/* 8019725C 001941BC 4E 80 04 21 */ bctrl +/* 80197260 001941C0 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80197264 001941C4 7F E3 FB 78 */ mr r3, r31 +/* 80197268 001941C8 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 8019726C 001941CC 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 80197270 001941D0 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 80197274 001941D4 7C 08 03 A6 */ mtlr r0 +/* 80197278 001941D8 38 21 00 50 */ addi r1, r1, 0x50 +/* 8019727C 001941DC 4E 80 00 20 */ blr + +.global __dt__21CHudDecoInterfaceScanFv +__dt__21CHudDecoInterfaceScanFv: +/* 80197280 001941E0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80197284 001941E4 7C 08 02 A6 */ mflr r0 +/* 80197288 001941E8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8019728C 001941EC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80197290 001941F0 7C 9F 23 78 */ mr r31, r4 +/* 80197294 001941F4 93 C1 00 08 */ stw r30, 8(r1) +/* 80197298 001941F8 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8019729C 001941FC 41 82 00 5C */ beq lbl_801972F8 +/* 801972A0 00194200 3C 80 80 3E */ lis r4, lbl_803E450C@ha +/* 801972A4 00194204 38 7E 00 18 */ addi r3, r30, 0x18 +/* 801972A8 00194208 38 04 45 0C */ addi r0, r4, lbl_803E450C@l +/* 801972AC 0019420C 38 80 FF FF */ li r4, -1 +/* 801972B0 00194210 90 1E 00 00 */ stw r0, 0(r30) +/* 801972B4 00194214 4B FF F2 49 */ bl __dt__12CScanDisplayFv +/* 801972B8 00194218 34 1E 00 04 */ addic. r0, r30, 4 +/* 801972BC 0019421C 41 82 00 18 */ beq lbl_801972D4 +/* 801972C0 00194220 34 1E 00 04 */ addic. r0, r30, 4 +/* 801972C4 00194224 41 82 00 10 */ beq lbl_801972D4 +/* 801972C8 00194228 38 7E 00 04 */ addi r3, r30, 4 +/* 801972CC 0019422C 38 80 00 00 */ li r4, 0 +/* 801972D0 00194230 48 1A 9B 71 */ bl __dt__6CTokenFv +lbl_801972D4: +/* 801972D4 00194234 28 1E 00 00 */ cmplwi r30, 0 +/* 801972D8 00194238 41 82 00 10 */ beq lbl_801972E8 +/* 801972DC 0019423C 3C 60 80 3E */ lis r3, lbl_803DA2A4@ha +/* 801972E0 00194240 38 03 A2 A4 */ addi r0, r3, lbl_803DA2A4@l +/* 801972E4 00194244 90 1E 00 00 */ stw r0, 0(r30) +lbl_801972E8: +/* 801972E8 00194248 7F E0 07 35 */ extsh. r0, r31 +/* 801972EC 0019424C 40 81 00 0C */ ble lbl_801972F8 +/* 801972F0 00194250 7F C3 F3 78 */ mr r3, r30 +/* 801972F4 00194254 48 17 E6 3D */ bl Free__7CMemoryFPCv +lbl_801972F8: +/* 801972F8 00194258 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801972FC 0019425C 7F C3 F3 78 */ mr r3, r30 +/* 80197300 00194260 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80197304 00194264 83 C1 00 08 */ lwz r30, 8(r1) +/* 80197308 00194268 7C 08 03 A6 */ mtlr r0 +/* 8019730C 0019426C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80197310 00194270 4E 80 00 20 */ blr + +.global __dt__21CHudDecoInterfaceXrayFv +__dt__21CHudDecoInterfaceXrayFv: +/* 80197314 00194274 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80197318 00194278 7C 08 02 A6 */ mflr r0 +/* 8019731C 0019427C 90 01 00 14 */ stw r0, 0x14(r1) +/* 80197320 00194280 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80197324 00194284 7C 7F 1B 79 */ or. r31, r3, r3 +/* 80197328 00194288 41 82 00 30 */ beq lbl_80197358 +/* 8019732C 0019428C 3C 60 80 3E */ lis r3, lbl_803E4550@ha +/* 80197330 00194290 38 03 45 50 */ addi r0, r3, lbl_803E4550@l +/* 80197334 00194294 90 1F 00 00 */ stw r0, 0(r31) +/* 80197338 00194298 41 82 00 10 */ beq lbl_80197348 +/* 8019733C 0019429C 3C 60 80 3E */ lis r3, lbl_803DA2A4@ha +/* 80197340 001942A0 38 03 A2 A4 */ addi r0, r3, lbl_803DA2A4@l +/* 80197344 001942A4 90 1F 00 00 */ stw r0, 0(r31) +lbl_80197348: +/* 80197348 001942A8 7C 80 07 35 */ extsh. r0, r4 +/* 8019734C 001942AC 40 81 00 0C */ ble lbl_80197358 +/* 80197350 001942B0 7F E3 FB 78 */ mr r3, r31 +/* 80197354 001942B4 48 17 E5 DD */ bl Free__7CMemoryFPCv +lbl_80197358: +/* 80197358 001942B8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8019735C 001942BC 7F E3 FB 78 */ mr r3, r31 +/* 80197360 001942C0 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80197364 001942C4 7C 08 03 A6 */ mtlr r0 +/* 80197368 001942C8 38 21 00 10 */ addi r1, r1, 0x10 +/* 8019736C 001942CC 4E 80 00 20 */ blr + +.global __dt__23CHudDecoInterfaceCombatFv +__dt__23CHudDecoInterfaceCombatFv: +/* 80197370 001942D0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80197374 001942D4 7C 08 02 A6 */ mflr r0 +/* 80197378 001942D8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8019737C 001942DC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80197380 001942E0 7C 7F 1B 79 */ or. r31, r3, r3 +/* 80197384 001942E4 41 82 00 30 */ beq lbl_801973B4 +/* 80197388 001942E8 3C 60 80 3E */ lis r3, lbl_803E4594@ha +/* 8019738C 001942EC 38 03 45 94 */ addi r0, r3, lbl_803E4594@l +/* 80197390 001942F0 90 1F 00 00 */ stw r0, 0(r31) +/* 80197394 001942F4 41 82 00 10 */ beq lbl_801973A4 +/* 80197398 001942F8 3C 60 80 3E */ lis r3, lbl_803DA2A4@ha +/* 8019739C 001942FC 38 03 A2 A4 */ addi r0, r3, lbl_803DA2A4@l +/* 801973A0 00194300 90 1F 00 00 */ stw r0, 0(r31) +lbl_801973A4: +/* 801973A4 00194304 7C 80 07 35 */ extsh. r0, r4 +/* 801973A8 00194308 40 81 00 0C */ ble lbl_801973B4 +/* 801973AC 0019430C 7F E3 FB 78 */ mr r3, r31 +/* 801973B0 00194310 48 17 E5 81 */ bl Free__7CMemoryFPCv +lbl_801973B4: +/* 801973B4 00194314 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801973B8 00194318 7F E3 FB 78 */ mr r3, r31 +/* 801973BC 0019431C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801973C0 00194320 7C 08 03 A6 */ mtlr r0 +/* 801973C4 00194324 38 21 00 10 */ addi r1, r1, 0x10 +/* 801973C8 00194328 4E 80 00 20 */ blr + +.global sub_801973cc +sub_801973cc: +/* 801973CC 0019432C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801973D0 00194330 7C 08 02 A6 */ mflr r0 +/* 801973D4 00194334 90 01 00 34 */ stw r0, 0x34(r1) +/* 801973D8 00194338 BF 41 00 18 */ stmw r26, 0x18(r1) +/* 801973DC 0019433C 7C 9F 23 78 */ mr r31, r4 +/* 801973E0 00194340 7C 7E 1B 78 */ mr r30, r3 +/* 801973E4 00194344 80 03 00 08 */ lwz r0, 8(r3) +/* 801973E8 00194348 7C 1F 00 00 */ cmpw r31, r0 +/* 801973EC 0019434C 40 81 00 BC */ ble lbl_801974A8 +/* 801973F0 00194350 1C 7F 00 34 */ mulli r3, r31, 0x34 +/* 801973F4 00194354 2C 03 00 00 */ cmpwi r3, 0 +/* 801973F8 00194358 40 82 00 0C */ bne lbl_80197404 +/* 801973FC 0019435C 3B 80 00 00 */ li r28, 0 +/* 80197400 00194360 48 00 00 1C */ b lbl_8019741C +lbl_80197404: +/* 80197404 00194364 3C 80 80 3D */ lis r4, lbl_803D10E4@ha +/* 80197408 00194368 38 A0 00 00 */ li r5, 0 +/* 8019740C 0019436C 38 84 10 E4 */ addi r4, r4, lbl_803D10E4@l +/* 80197410 00194370 38 84 01 20 */ addi r4, r4, 0x120 +/* 80197414 00194374 48 17 E4 05 */ bl __nwa__FUlPCcPCc +/* 80197418 00194378 7C 7C 1B 78 */ mr r28, r3 +lbl_8019741C: +/* 8019741C 0019437C 80 1E 00 04 */ lwz r0, 4(r30) +/* 80197420 00194380 7F 9B E3 78 */ mr r27, r28 +/* 80197424 00194384 83 5E 00 0C */ lwz r26, 0xc(r30) +/* 80197428 00194388 1C 00 00 34 */ mulli r0, r0, 0x34 +/* 8019742C 0019438C 93 41 00 10 */ stw r26, 0x10(r1) +/* 80197430 00194390 7F BA 02 14 */ add r29, r26, r0 +/* 80197434 00194394 93 41 00 14 */ stw r26, 0x14(r1) +/* 80197438 00194398 93 A1 00 08 */ stw r29, 8(r1) +/* 8019743C 0019439C 93 A1 00 0C */ stw r29, 0xc(r1) +/* 80197440 001943A0 48 00 00 28 */ b lbl_80197468 +lbl_80197444: +/* 80197444 001943A4 28 1B 00 00 */ cmplwi r27, 0 +/* 80197448 001943A8 41 82 00 18 */ beq lbl_80197460 +/* 8019744C 001943AC 80 1A 00 00 */ lwz r0, 0(r26) +/* 80197450 001943B0 38 7B 00 04 */ addi r3, r27, 4 +/* 80197454 001943B4 38 9A 00 04 */ addi r4, r26, 4 +/* 80197458 001943B8 90 1B 00 00 */ stw r0, 0(r27) +/* 8019745C 001943BC 48 17 B7 19 */ bl __ct__12CTransform4fFRC12CTransform4f +lbl_80197460: +/* 80197460 001943C0 3B 7B 00 34 */ addi r27, r27, 0x34 +/* 80197464 001943C4 3B 5A 00 34 */ addi r26, r26, 0x34 +lbl_80197468: +/* 80197468 001943C8 7C 1A E8 40 */ cmplw r26, r29 +/* 8019746C 001943CC 40 82 FF D8 */ bne lbl_80197444 +/* 80197470 001943D0 80 1E 00 04 */ lwz r0, 4(r30) +/* 80197474 001943D4 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 80197478 001943D8 1C 00 00 34 */ mulli r0, r0, 0x34 +/* 8019747C 001943DC 7C 64 1B 78 */ mr r4, r3 +/* 80197480 001943E0 7C 03 02 14 */ add r0, r3, r0 +/* 80197484 001943E4 48 00 00 08 */ b lbl_8019748C +lbl_80197488: +/* 80197488 001943E8 38 84 00 34 */ addi r4, r4, 0x34 +lbl_8019748C: +/* 8019748C 001943EC 7C 04 00 40 */ cmplw r4, r0 +/* 80197490 001943F0 40 82 FF F8 */ bne lbl_80197488 +/* 80197494 001943F4 28 03 00 00 */ cmplwi r3, 0 +/* 80197498 001943F8 41 82 00 08 */ beq lbl_801974A0 +/* 8019749C 001943FC 48 17 E4 95 */ bl Free__7CMemoryFPCv +lbl_801974A0: +/* 801974A0 00194400 93 9E 00 0C */ stw r28, 0xc(r30) +/* 801974A4 00194404 93 FE 00 08 */ stw r31, 8(r30) +lbl_801974A8: +/* 801974A8 00194408 BB 41 00 18 */ lmw r26, 0x18(r1) +/* 801974AC 0019440C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801974B0 00194410 7C 08 03 A6 */ mtlr r0 +/* 801974B4 00194414 38 21 00 30 */ addi r1, r1, 0x30 +/* 801974B8 00194418 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CSamusHud.s b/asm/Kyoto_CWD/HUD/CSamusHud.s similarity index 100% rename from asm/Kyoto_CWD/CSamusHud.s rename to asm/Kyoto_CWD/HUD/CSamusHud.s diff --git a/asm/Kyoto_CWD/PathFinding/CPathFindArea.s b/asm/Kyoto_CWD/PathFinding/CPathFindArea.s new file mode 100644 index 00000000..54fa9284 --- /dev/null +++ b/asm/Kyoto_CWD/PathFinding/CPathFindArea.s @@ -0,0 +1,2281 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global "FPathFindAreaFactory__FRC10SObjectTagRCQ24rstl12auto_ptriRC15CVParamTransfer" +"FPathFindAreaFactory__FRC10SObjectTagRCQ24rstl12auto_ptriRC15CVParamTransfer": +/* 801CA16C 001C70CC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801CA170 001C70D0 7C 08 02 A6 */ mflr r0 +/* 801CA174 001C70D4 3C 80 80 3D */ lis r4, lbl_803D1AA0@ha +/* 801CA178 001C70D8 90 01 00 24 */ stw r0, 0x24(r1) +/* 801CA17C 001C70DC 38 84 1A A0 */ addi r4, r4, lbl_803D1AA0@l +/* 801CA180 001C70E0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801CA184 001C70E4 7C DF 33 78 */ mr r31, r6 +/* 801CA188 001C70E8 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801CA18C 001C70EC 7C BE 2B 78 */ mr r30, r5 +/* 801CA190 001C70F0 38 A0 00 00 */ li r5, 0 +/* 801CA194 001C70F4 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801CA198 001C70F8 7C 7D 1B 78 */ mr r29, r3 +/* 801CA19C 001C70FC 38 60 01 B8 */ li r3, 0x1b8 +/* 801CA1A0 001C7100 48 14 B6 CD */ bl __nw__FUlPCcPCc +/* 801CA1A4 001C7104 7C 64 1B 79 */ or. r4, r3, r3 +/* 801CA1A8 001C7108 41 82 00 14 */ beq lbl_801CA1BC +/* 801CA1AC 001C710C 7F C4 F3 78 */ mr r4, r30 +/* 801CA1B0 001C7110 7F E5 FB 78 */ mr r5, r31 +/* 801CA1B4 001C7114 48 00 0A 09 */ bl "__ct__7CPFAreaFRCQ24rstl12auto_ptri" +/* 801CA1B8 001C7118 7C 64 1B 78 */ mr r4, r3 +lbl_801CA1BC: +/* 801CA1BC 001C711C 7F A3 EB 78 */ mr r3, r29 +/* 801CA1C0 001C7120 48 00 00 21 */ bl "GetIObjObjectFor__16TToken<7CPFArea>FRCQ24rstl18auto_ptr<7CPFArea>" +/* 801CA1C4 001C7124 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801CA1C8 001C7128 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801CA1CC 001C712C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801CA1D0 001C7130 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801CA1D4 001C7134 7C 08 03 A6 */ mtlr r0 +/* 801CA1D8 001C7138 38 21 00 20 */ addi r1, r1, 0x20 +/* 801CA1DC 001C713C 4E 80 00 20 */ blr + +.global "GetIObjObjectFor__16TToken<7CPFArea>FRCQ24rstl18auto_ptr<7CPFArea>" +"GetIObjObjectFor__16TToken<7CPFArea>FRCQ24rstl18auto_ptr<7CPFArea>": +/* 801CA1E0 001C7140 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801CA1E4 001C7144 7C 08 02 A6 */ mflr r0 +/* 801CA1E8 001C7148 90 01 00 24 */ stw r0, 0x24(r1) +/* 801CA1EC 001C714C 7C 04 00 D0 */ neg r0, r4 +/* 801CA1F0 001C7150 7C 00 23 78 */ or r0, r0, r4 +/* 801CA1F4 001C7154 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801CA1F8 001C7158 54 00 0F FE */ srwi r0, r0, 0x1f +/* 801CA1FC 001C715C 7C 7F 1B 78 */ mr r31, r3 +/* 801CA200 001C7160 38 61 00 08 */ addi r3, r1, 8 +/* 801CA204 001C7164 90 81 00 14 */ stw r4, 0x14(r1) +/* 801CA208 001C7168 38 81 00 10 */ addi r4, r1, 0x10 +/* 801CA20C 001C716C 98 01 00 10 */ stb r0, 0x10(r1) +/* 801CA210 001C7170 48 00 01 F1 */ bl "GetNewDerivedObject__34TObjOwnerDerivedFromIObj<7CPFArea>FRCQ24rstl18auto_ptr<7CPFArea>" +/* 801CA214 001C7174 80 61 00 0C */ lwz r3, 0xc(r1) +/* 801CA218 001C7178 38 00 00 00 */ li r0, 0 +/* 801CA21C 001C717C 98 01 00 08 */ stb r0, 8(r1) +/* 801CA220 001C7180 7C 03 00 D0 */ neg r0, r3 +/* 801CA224 001C7184 7C 00 1B 78 */ or r0, r0, r3 +/* 801CA228 001C7188 54 00 0F FE */ srwi r0, r0, 0x1f +/* 801CA22C 001C718C 98 1F 00 00 */ stb r0, 0(r31) +/* 801CA230 001C7190 90 7F 00 04 */ stw r3, 4(r31) +/* 801CA234 001C7194 88 01 00 08 */ lbz r0, 8(r1) +/* 801CA238 001C7198 28 00 00 00 */ cmplwi r0, 0 +/* 801CA23C 001C719C 41 82 00 24 */ beq lbl_801CA260 +/* 801CA240 001C71A0 80 61 00 0C */ lwz r3, 0xc(r1) +/* 801CA244 001C71A4 28 03 00 00 */ cmplwi r3, 0 +/* 801CA248 001C71A8 41 82 00 18 */ beq lbl_801CA260 +/* 801CA24C 001C71AC 81 83 00 00 */ lwz r12, 0(r3) +/* 801CA250 001C71B0 38 80 00 01 */ li r4, 1 +/* 801CA254 001C71B4 81 8C 00 08 */ lwz r12, 8(r12) +/* 801CA258 001C71B8 7D 89 03 A6 */ mtctr r12 +/* 801CA25C 001C71BC 4E 80 04 21 */ bctrl +lbl_801CA260: +/* 801CA260 001C71C0 38 61 00 10 */ addi r3, r1, 0x10 +/* 801CA264 001C71C4 38 80 FF FF */ li r4, -1 +/* 801CA268 001C71C8 48 00 02 61 */ bl "__dt__34TObjOwnerDerivedFromIObj<7CPFArea>Fv" +/* 801CA26C 001C71CC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801CA270 001C71D0 7F E3 FB 78 */ mr r3, r31 +/* 801CA274 001C71D4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801CA278 001C71D8 7C 08 03 A6 */ mtlr r0 +/* 801CA27C 001C71DC 38 21 00 20 */ addi r1, r1, 0x20 +/* 801CA280 001C71E0 4E 80 00 20 */ blr + +.global sub_801ca284 +sub_801ca284: +/* 801CA284 001C71E4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801CA288 001C71E8 7C 08 02 A6 */ mflr r0 +/* 801CA28C 001C71EC 90 01 00 14 */ stw r0, 0x14(r1) +/* 801CA290 001C71F0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801CA294 001C71F4 7C 9F 23 78 */ mr r31, r4 +/* 801CA298 001C71F8 93 C1 00 08 */ stw r30, 8(r1) +/* 801CA29C 001C71FC 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801CA2A0 001C7200 41 82 00 58 */ beq lbl_801CA2F8 +/* 801CA2A4 001C7204 3C 60 80 3E */ lis r3, lbl_803E5718@ha +/* 801CA2A8 001C7208 38 03 57 18 */ addi r0, r3, lbl_803E5718@l +/* 801CA2AC 001C720C 90 1E 00 00 */ stw r0, 0(r30) +/* 801CA2B0 001C7210 80 7E 00 04 */ lwz r3, 4(r30) +/* 801CA2B4 001C7214 28 03 00 00 */ cmplwi r3, 0 +/* 801CA2B8 001C7218 41 82 00 0C */ beq lbl_801CA2C4 +/* 801CA2BC 001C721C 38 80 00 01 */ li r4, 1 +/* 801CA2C0 001C7220 48 00 00 55 */ bl __dt__7CPFAreaFv +lbl_801CA2C4: +/* 801CA2C4 001C7224 28 1E 00 00 */ cmplwi r30, 0 +/* 801CA2C8 001C7228 41 82 00 20 */ beq lbl_801CA2E8 +/* 801CA2CC 001C722C 3C 60 80 3E */ lis r3, lbl_803D8D78@ha +/* 801CA2D0 001C7230 38 03 8D 78 */ addi r0, r3, lbl_803D8D78@l +/* 801CA2D4 001C7234 90 1E 00 00 */ stw r0, 0(r30) +/* 801CA2D8 001C7238 41 82 00 10 */ beq lbl_801CA2E8 +/* 801CA2DC 001C723C 3C 60 80 3E */ lis r3, lbl_803D8D6C@ha +/* 801CA2E0 001C7240 38 03 8D 6C */ addi r0, r3, lbl_803D8D6C@l +/* 801CA2E4 001C7244 90 1E 00 00 */ stw r0, 0(r30) +lbl_801CA2E8: +/* 801CA2E8 001C7248 7F E0 07 35 */ extsh. r0, r31 +/* 801CA2EC 001C724C 40 81 00 0C */ ble lbl_801CA2F8 +/* 801CA2F0 001C7250 7F C3 F3 78 */ mr r3, r30 +/* 801CA2F4 001C7254 48 14 B6 3D */ bl Free__7CMemoryFPCv +lbl_801CA2F8: +/* 801CA2F8 001C7258 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801CA2FC 001C725C 7F C3 F3 78 */ mr r3, r30 +/* 801CA300 001C7260 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801CA304 001C7264 83 C1 00 08 */ lwz r30, 8(r1) +/* 801CA308 001C7268 7C 08 03 A6 */ mtlr r0 +/* 801CA30C 001C726C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801CA310 001C7270 4E 80 00 20 */ blr + +.global __dt__7CPFAreaFv +__dt__7CPFAreaFv: +/* 801CA314 001C7274 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801CA318 001C7278 7C 08 02 A6 */ mflr r0 +/* 801CA31C 001C727C 90 01 00 34 */ stw r0, 0x34(r1) +/* 801CA320 001C7280 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801CA324 001C7284 7C 9F 23 78 */ mr r31, r4 +/* 801CA328 001C7288 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801CA32C 001C728C 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801CA330 001C7290 41 82 00 B4 */ beq lbl_801CA3E4 +/* 801CA334 001C7294 34 1E 01 78 */ addic. r0, r30, 0x178 +/* 801CA338 001C7298 41 82 00 44 */ beq lbl_801CA37C +/* 801CA33C 001C729C 80 1E 01 7C */ lwz r0, 0x17c(r30) +/* 801CA340 001C72A0 80 7E 01 84 */ lwz r3, 0x184(r30) +/* 801CA344 001C72A4 1C 00 00 30 */ mulli r0, r0, 0x30 +/* 801CA348 001C72A8 90 61 00 1C */ stw r3, 0x1c(r1) +/* 801CA34C 001C72AC 7C 64 1B 78 */ mr r4, r3 +/* 801CA350 001C72B0 7C 03 02 14 */ add r0, r3, r0 +/* 801CA354 001C72B4 90 61 00 18 */ stw r3, 0x18(r1) +/* 801CA358 001C72B8 90 01 00 24 */ stw r0, 0x24(r1) +/* 801CA35C 001C72BC 90 01 00 20 */ stw r0, 0x20(r1) +/* 801CA360 001C72C0 48 00 00 08 */ b lbl_801CA368 +lbl_801CA364: +/* 801CA364 001C72C4 38 84 00 30 */ addi r4, r4, 0x30 +lbl_801CA368: +/* 801CA368 001C72C8 7C 04 00 40 */ cmplw r4, r0 +/* 801CA36C 001C72CC 40 82 FF F8 */ bne lbl_801CA364 +/* 801CA370 001C72D0 28 03 00 00 */ cmplwi r3, 0 +/* 801CA374 001C72D4 41 82 00 08 */ beq lbl_801CA37C +/* 801CA378 001C72D8 48 14 B5 B9 */ bl Free__7CMemoryFPCv +lbl_801CA37C: +/* 801CA37C 001C72DC 34 1E 01 3C */ addic. r0, r30, 0x13c +/* 801CA380 001C72E0 41 82 00 0C */ beq lbl_801CA38C +/* 801CA384 001C72E4 80 7E 01 3C */ lwz r3, 0x13c(r30) +/* 801CA388 001C72E8 48 14 B5 A9 */ bl Free__7CMemoryFPCv +lbl_801CA38C: +/* 801CA38C 001C72EC 34 1E 00 10 */ addic. r0, r30, 0x10 +/* 801CA390 001C72F0 41 82 00 44 */ beq lbl_801CA3D4 +/* 801CA394 001C72F4 80 1E 00 14 */ lwz r0, 0x14(r30) +/* 801CA398 001C72F8 80 7E 00 1C */ lwz r3, 0x1c(r30) +/* 801CA39C 001C72FC 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801CA3A0 001C7300 90 61 00 0C */ stw r3, 0xc(r1) +/* 801CA3A4 001C7304 7C 64 1B 78 */ mr r4, r3 +/* 801CA3A8 001C7308 7C 03 02 14 */ add r0, r3, r0 +/* 801CA3AC 001C730C 90 61 00 08 */ stw r3, 8(r1) +/* 801CA3B0 001C7310 90 01 00 14 */ stw r0, 0x14(r1) +/* 801CA3B4 001C7314 90 01 00 10 */ stw r0, 0x10(r1) +/* 801CA3B8 001C7318 48 00 00 08 */ b lbl_801CA3C0 +lbl_801CA3BC: +/* 801CA3BC 001C731C 38 84 00 0C */ addi r4, r4, 0xc +lbl_801CA3C0: +/* 801CA3C0 001C7320 7C 04 00 40 */ cmplw r4, r0 +/* 801CA3C4 001C7324 40 82 FF F8 */ bne lbl_801CA3BC +/* 801CA3C8 001C7328 28 03 00 00 */ cmplwi r3, 0 +/* 801CA3CC 001C732C 41 82 00 08 */ beq lbl_801CA3D4 +/* 801CA3D0 001C7330 48 14 B5 61 */ bl Free__7CMemoryFPCv +lbl_801CA3D4: +/* 801CA3D4 001C7334 7F E0 07 35 */ extsh. r0, r31 +/* 801CA3D8 001C7338 40 81 00 0C */ ble lbl_801CA3E4 +/* 801CA3DC 001C733C 7F C3 F3 78 */ mr r3, r30 +/* 801CA3E0 001C7340 48 14 B5 51 */ bl Free__7CMemoryFPCv +lbl_801CA3E4: +/* 801CA3E4 001C7344 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801CA3E8 001C7348 7F C3 F3 78 */ mr r3, r30 +/* 801CA3EC 001C734C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801CA3F0 001C7350 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801CA3F4 001C7354 7C 08 03 A6 */ mtlr r0 +/* 801CA3F8 001C7358 38 21 00 30 */ addi r1, r1, 0x30 +/* 801CA3FC 001C735C 4E 80 00 20 */ blr + +.global "GetNewDerivedObject__34TObjOwnerDerivedFromIObj<7CPFArea>FRCQ24rstl18auto_ptr<7CPFArea>" +"GetNewDerivedObject__34TObjOwnerDerivedFromIObj<7CPFArea>FRCQ24rstl18auto_ptr<7CPFArea>": +/* 801CA400 001C7360 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801CA404 001C7364 7C 08 02 A6 */ mflr r0 +/* 801CA408 001C7368 90 01 00 14 */ stw r0, 0x14(r1) +/* 801CA40C 001C736C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801CA410 001C7370 7C 7F 1B 78 */ mr r31, r3 +/* 801CA414 001C7374 48 00 00 19 */ bl "__ct__34TObjOwnerDerivedFromIObj<7CPFArea>FRCQ24rstl18auto_ptr<7CPFArea>" +/* 801CA418 001C7378 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801CA41C 001C737C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801CA420 001C7380 7C 08 03 A6 */ mtlr r0 +/* 801CA424 001C7384 38 21 00 10 */ addi r1, r1, 0x10 +/* 801CA428 001C7388 4E 80 00 20 */ blr + +.global "__ct__34TObjOwnerDerivedFromIObj<7CPFArea>FRCQ24rstl18auto_ptr<7CPFArea>" +"__ct__34TObjOwnerDerivedFromIObj<7CPFArea>FRCQ24rstl18auto_ptr<7CPFArea>": +/* 801CA42C 001C738C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801CA430 001C7390 7C 08 02 A6 */ mflr r0 +/* 801CA434 001C7394 3C A0 80 3D */ lis r5, lbl_803D1AA0@ha +/* 801CA438 001C7398 90 01 00 14 */ stw r0, 0x14(r1) +/* 801CA43C 001C739C 38 05 1A A0 */ addi r0, r5, lbl_803D1AA0@l +/* 801CA440 001C73A0 38 A0 00 00 */ li r5, 0 +/* 801CA444 001C73A4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801CA448 001C73A8 7C 9F 23 78 */ mr r31, r4 +/* 801CA44C 001C73AC 7C 04 03 78 */ mr r4, r0 +/* 801CA450 001C73B0 93 C1 00 08 */ stw r30, 8(r1) +/* 801CA454 001C73B4 7C 7E 1B 78 */ mr r30, r3 +/* 801CA458 001C73B8 38 60 00 08 */ li r3, 8 +/* 801CA45C 001C73BC 48 14 B4 11 */ bl __nw__FUlPCcPCc +/* 801CA460 001C73C0 28 03 00 00 */ cmplwi r3, 0 +/* 801CA464 001C73C4 41 82 00 38 */ beq lbl_801CA49C +/* 801CA468 001C73C8 3C 80 80 3E */ lis r4, lbl_803D8D6C@ha +/* 801CA46C 001C73CC 3C A0 80 3E */ lis r5, lbl_803D8D78@ha +/* 801CA470 001C73D0 38 04 8D 6C */ addi r0, r4, lbl_803D8D6C@l +/* 801CA474 001C73D4 3C 80 80 3E */ lis r4, lbl_803E5718@ha +/* 801CA478 001C73D8 90 03 00 00 */ stw r0, 0(r3) +/* 801CA47C 001C73DC 38 C5 8D 78 */ addi r6, r5, lbl_803D8D78@l +/* 801CA480 001C73E0 38 A0 00 00 */ li r5, 0 +/* 801CA484 001C73E4 38 04 57 18 */ addi r0, r4, lbl_803E5718@l +/* 801CA488 001C73E8 90 C3 00 00 */ stw r6, 0(r3) +/* 801CA48C 001C73EC 98 BF 00 00 */ stb r5, 0(r31) +/* 801CA490 001C73F0 80 9F 00 04 */ lwz r4, 4(r31) +/* 801CA494 001C73F4 90 83 00 04 */ stw r4, 4(r3) +/* 801CA498 001C73F8 90 03 00 00 */ stw r0, 0(r3) +lbl_801CA49C: +/* 801CA49C 001C73FC 7C 03 00 D0 */ neg r0, r3 +/* 801CA4A0 001C7400 7C 00 1B 78 */ or r0, r0, r3 +/* 801CA4A4 001C7404 54 00 0F FE */ srwi r0, r0, 0x1f +/* 801CA4A8 001C7408 98 1E 00 00 */ stb r0, 0(r30) +/* 801CA4AC 001C740C 90 7E 00 04 */ stw r3, 4(r30) +/* 801CA4B0 001C7410 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801CA4B4 001C7414 83 C1 00 08 */ lwz r30, 8(r1) +/* 801CA4B8 001C7418 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801CA4BC 001C741C 7C 08 03 A6 */ mtlr r0 +/* 801CA4C0 001C7420 38 21 00 10 */ addi r1, r1, 0x10 +/* 801CA4C4 001C7424 4E 80 00 20 */ blr + +.global "__dt__34TObjOwnerDerivedFromIObj<7CPFArea>Fv" +"__dt__34TObjOwnerDerivedFromIObj<7CPFArea>Fv": +/* 801CA4C8 001C7428 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801CA4CC 001C742C 7C 08 02 A6 */ mflr r0 +/* 801CA4D0 001C7430 90 01 00 14 */ stw r0, 0x14(r1) +/* 801CA4D4 001C7434 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801CA4D8 001C7438 7C 9F 23 78 */ mr r31, r4 +/* 801CA4DC 001C743C 93 C1 00 08 */ stw r30, 8(r1) +/* 801CA4E0 001C7440 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801CA4E4 001C7444 41 82 00 2C */ beq lbl_801CA510 +/* 801CA4E8 001C7448 88 1E 00 00 */ lbz r0, 0(r30) +/* 801CA4EC 001C744C 28 00 00 00 */ cmplwi r0, 0 +/* 801CA4F0 001C7450 41 82 00 10 */ beq lbl_801CA500 +/* 801CA4F4 001C7454 80 7E 00 04 */ lwz r3, 4(r30) +/* 801CA4F8 001C7458 38 80 00 01 */ li r4, 1 +/* 801CA4FC 001C745C 4B FF FE 19 */ bl __dt__7CPFAreaFv +lbl_801CA500: +/* 801CA500 001C7460 7F E0 07 35 */ extsh. r0, r31 +/* 801CA504 001C7464 40 81 00 0C */ ble lbl_801CA510 +/* 801CA508 001C7468 7F C3 F3 78 */ mr r3, r30 +/* 801CA50C 001C746C 48 14 B4 25 */ bl Free__7CMemoryFPCv +lbl_801CA510: +/* 801CA510 001C7470 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801CA514 001C7474 7F C3 F3 78 */ mr r3, r30 +/* 801CA518 001C7478 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801CA51C 001C747C 83 C1 00 08 */ lwz r30, 8(r1) +/* 801CA520 001C7480 7C 08 03 A6 */ mtlr r0 +/* 801CA524 001C7484 38 21 00 10 */ addi r1, r1, 0x10 +/* 801CA528 001C7488 4E 80 00 20 */ blr + +.global PathExists__7CPFAreaCFPC9CPFRegionPC9CPFRegionUi +PathExists__7CPFAreaCFPC9CPFRegionPC9CPFRegionUi: +/* 801CA52C 001C748C 7C 04 28 40 */ cmplw r4, r5 +/* 801CA530 001C7490 41 82 00 0C */ beq lbl_801CA53C +/* 801CA534 001C7494 54 C0 07 7B */ rlwinm. r0, r6, 0, 0x1d, 0x1d +/* 801CA538 001C7498 41 82 00 0C */ beq lbl_801CA544 +lbl_801CA53C: +/* 801CA53C 001C749C 38 60 00 01 */ li r3, 1 +/* 801CA540 001C74A0 4E 80 00 20 */ blr +lbl_801CA544: +/* 801CA544 001C74A4 80 04 00 24 */ lwz r0, 0x24(r4) +/* 801CA548 001C74A8 80 85 00 24 */ lwz r4, 0x24(r5) +/* 801CA54C 001C74AC 80 E3 01 50 */ lwz r7, 0x150(r3) +/* 801CA550 001C74B0 7C 09 03 78 */ mr r9, r0 +/* 801CA554 001C74B4 7C 00 20 00 */ cmpw r0, r4 +/* 801CA558 001C74B8 7C 8A 23 78 */ mr r10, r4 +/* 801CA55C 001C74BC 40 81 00 0C */ ble lbl_801CA568 +/* 801CA560 001C74C0 7C 89 23 78 */ mr r9, r4 +/* 801CA564 001C74C4 7C 0A 03 78 */ mr r10, r0 +lbl_801CA568: +/* 801CA568 001C74C8 7D 09 38 50 */ subf r8, r9, r7 +/* 801CA56C 001C74CC 38 87 FF FF */ addi r4, r7, -1 +/* 801CA570 001C74D0 38 A8 FF FF */ addi r5, r8, -1 +/* 801CA574 001C74D4 54 C0 07 BD */ rlwinm. r0, r6, 0, 0x1e, 0x1e +/* 801CA578 001C74D8 7C A5 41 D6 */ mullw r5, r5, r8 +/* 801CA57C 001C74DC 38 C9 00 01 */ addi r6, r9, 1 +/* 801CA580 001C74E0 54 A0 0F FE */ srwi r0, r5, 0x1f +/* 801CA584 001C74E4 7C A0 2A 14 */ add r5, r0, r5 +/* 801CA588 001C74E8 7C 87 21 D6 */ mullw r4, r7, r4 +/* 801CA58C 001C74EC 7C A5 0E 70 */ srawi r5, r5, 1 +/* 801CA590 001C74F0 54 80 0F FE */ srwi r0, r4, 0x1f +/* 801CA594 001C74F4 7C 00 22 14 */ add r0, r0, r4 +/* 801CA598 001C74F8 7C 00 0E 70 */ srawi r0, r0, 1 +/* 801CA59C 001C74FC 7C 05 00 50 */ subf r0, r5, r0 +/* 801CA5A0 001C7500 7C 0A 02 14 */ add r0, r10, r0 +/* 801CA5A4 001C7504 7C 06 00 50 */ subf r0, r6, r0 +/* 801CA5A8 001C7508 41 82 00 20 */ beq lbl_801CA5C8 +/* 801CA5AC 001C750C 80 83 01 74 */ lwz r4, 0x174(r3) +/* 801CA5B0 001C7510 54 03 E8 FA */ rlwinm r3, r0, 0x1d, 3, 0x1d +/* 801CA5B4 001C7514 54 00 06 FE */ clrlwi r0, r0, 0x1b +/* 801CA5B8 001C7518 7C 64 18 2E */ lwzx r3, r4, r3 +/* 801CA5BC 001C751C 7C 60 04 30 */ srw r0, r3, r0 +/* 801CA5C0 001C7520 54 03 07 FE */ clrlwi r3, r0, 0x1f +/* 801CA5C4 001C7524 4E 80 00 20 */ blr +lbl_801CA5C8: +/* 801CA5C8 001C7528 80 83 01 6C */ lwz r4, 0x16c(r3) +/* 801CA5CC 001C752C 54 03 E8 FA */ rlwinm r3, r0, 0x1d, 3, 0x1d +/* 801CA5D0 001C7530 54 00 06 FE */ clrlwi r0, r0, 0x1b +/* 801CA5D4 001C7534 7C 64 18 2E */ lwzx r3, r4, r3 +/* 801CA5D8 001C7538 7C 60 04 30 */ srw r0, r3, r0 +/* 801CA5DC 001C753C 54 03 07 FE */ clrlwi r3, r0, 0x1f +/* 801CA5E0 001C7540 4E 80 00 20 */ blr + +.global "FindClosestReachablePoint__7CPFAreaFRQ24rstl30reserved_vectorRC9CVector3fUi" +"FindClosestReachablePoint__7CPFAreaFRQ24rstl30reserved_vectorRC9CVector3fUi": +/* 801CA5E4 001C7544 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801CA5E8 001C7548 3D 20 80 5A */ lis r9, skZero3f@ha +/* 801CA5EC 001C754C C1 62 AB 50 */ lfs f11, lbl_805AC870@sda21(r2) +/* 801CA5F0 001C7550 54 E0 07 7A */ rlwinm r0, r7, 0, 0x1d, 0x1d +/* 801CA5F4 001C7554 BF 21 00 24 */ stmw r25, 0x24(r1) +/* 801CA5F8 001C7558 54 EC 07 BC */ rlwinm r12, r7, 0, 0x1e, 0x1e +/* 801CA5FC 001C755C 3B E0 00 00 */ li r31, 0 +/* 801CA600 001C7560 39 60 00 00 */ li r11, 0 +/* 801CA604 001C7564 C5 09 66 A0 */ lfsu f8, skZero3f@l(r9) +/* 801CA608 001C7568 C1 29 00 04 */ lfs f9, 4(r9) +/* 801CA60C 001C756C C1 49 00 08 */ lfs f10, 8(r9) +/* 801CA610 001C7570 48 00 01 68 */ b lbl_801CA778 +lbl_801CA614: +/* 801CA614 001C7574 81 24 01 54 */ lwz r9, 0x154(r4) +/* 801CA618 001C7578 7D 29 5A 14 */ add r9, r9, r11 +/* 801CA61C 001C757C 83 29 00 10 */ lwz r25, 0x10(r9) +/* 801CA620 001C7580 57 2A 06 3E */ clrlwi r10, r25, 0x18 +/* 801CA624 001C7584 7C EA 50 39 */ and. r10, r7, r10 +/* 801CA628 001C7588 41 82 01 48 */ beq lbl_801CA770 +/* 801CA62C 001C758C 57 2A 86 3E */ rlwinm r10, r25, 0x10, 0x18, 0x1f +/* 801CA630 001C7590 7D 0A 50 39 */ and. r10, r8, r10 +/* 801CA634 001C7594 41 82 01 3C */ beq lbl_801CA770 +/* 801CA638 001C7598 83 25 00 00 */ lwz r25, 0(r5) +/* 801CA63C 001C759C 39 45 00 04 */ addi r10, r5, 4 +/* 801CA640 001C75A0 7F 29 03 A6 */ mtctr r25 +/* 801CA644 001C75A4 2C 19 00 00 */ cmpwi r25, 0 +/* 801CA648 001C75A8 40 81 01 28 */ ble lbl_801CA770 +lbl_801CA64C: +/* 801CA64C 001C75AC 83 2A 00 00 */ lwz r25, 0(r10) +/* 801CA650 001C75B0 7C 19 48 40 */ cmplw r25, r9 +/* 801CA654 001C75B4 41 82 00 0C */ beq lbl_801CA660 +/* 801CA658 001C75B8 28 00 00 00 */ cmplwi r0, 0 +/* 801CA65C 001C75BC 41 82 00 0C */ beq lbl_801CA668 +lbl_801CA660: +/* 801CA660 001C75C0 3B 60 00 01 */ li r27, 1 +/* 801CA664 001C75C4 48 00 00 9C */ b lbl_801CA700 +lbl_801CA668: +/* 801CA668 001C75C8 83 99 00 24 */ lwz r28, 0x24(r25) +/* 801CA66C 001C75CC 83 29 00 24 */ lwz r25, 0x24(r9) +/* 801CA670 001C75D0 83 44 01 50 */ lwz r26, 0x150(r4) +/* 801CA674 001C75D4 7F 9B E3 78 */ mr r27, r28 +/* 801CA678 001C75D8 7C 1C C8 00 */ cmpw r28, r25 +/* 801CA67C 001C75DC 40 81 00 0C */ ble lbl_801CA688 +/* 801CA680 001C75E0 7F 3B CB 78 */ mr r27, r25 +/* 801CA684 001C75E4 7F 99 E3 78 */ mr r25, r28 +lbl_801CA688: +/* 801CA688 001C75E8 7F DB D0 50 */ subf r30, r27, r26 +/* 801CA68C 001C75EC 3B 9A FF FF */ addi r28, r26, -1 +/* 801CA690 001C75F0 3B BE FF FF */ addi r29, r30, -1 +/* 801CA694 001C75F4 28 0C 00 00 */ cmplwi r12, 0 +/* 801CA698 001C75F8 7F DD F1 D6 */ mullw r30, r29, r30 +/* 801CA69C 001C75FC 3B 7B 00 01 */ addi r27, r27, 1 +/* 801CA6A0 001C7600 7F BA E1 D6 */ mullw r29, r26, r28 +/* 801CA6A4 001C7604 57 DC 0F FE */ srwi r28, r30, 0x1f +/* 801CA6A8 001C7608 7F DC F2 14 */ add r30, r28, r30 +/* 801CA6AC 001C760C 57 BC 0F FE */ srwi r28, r29, 0x1f +/* 801CA6B0 001C7610 7F DE 0E 70 */ srawi r30, r30, 1 +/* 801CA6B4 001C7614 7F 9C EA 14 */ add r28, r28, r29 +/* 801CA6B8 001C7618 7F 9C 0E 70 */ srawi r28, r28, 1 +/* 801CA6BC 001C761C 7F 9E E0 50 */ subf r28, r30, r28 +/* 801CA6C0 001C7620 7F 99 E2 14 */ add r28, r25, r28 +/* 801CA6C4 001C7624 7F 7B E0 50 */ subf r27, r27, r28 +/* 801CA6C8 001C7628 41 82 00 20 */ beq lbl_801CA6E8 +/* 801CA6CC 001C762C 83 C4 01 74 */ lwz r30, 0x174(r4) +/* 801CA6D0 001C7630 57 7D E8 FA */ rlwinm r29, r27, 0x1d, 3, 0x1d +/* 801CA6D4 001C7634 57 7C 06 FE */ clrlwi r28, r27, 0x1b +/* 801CA6D8 001C7638 7F BE E8 2E */ lwzx r29, r30, r29 +/* 801CA6DC 001C763C 7F BC E4 30 */ srw r28, r29, r28 +/* 801CA6E0 001C7640 57 9B 07 FE */ clrlwi r27, r28, 0x1f +/* 801CA6E4 001C7644 48 00 00 1C */ b lbl_801CA700 +lbl_801CA6E8: +/* 801CA6E8 001C7648 83 84 01 6C */ lwz r28, 0x16c(r4) +/* 801CA6EC 001C764C 57 7D E8 FA */ rlwinm r29, r27, 0x1d, 3, 0x1d +/* 801CA6F0 001C7650 57 7E 06 FE */ clrlwi r30, r27, 0x1b +/* 801CA6F4 001C7654 7F BC E8 2E */ lwzx r29, r28, r29 +/* 801CA6F8 001C7658 7F BE F4 30 */ srw r30, r29, r30 +/* 801CA6FC 001C765C 57 DB 07 FE */ clrlwi r27, r30, 0x1f +lbl_801CA700: +/* 801CA700 001C7660 57 7E 06 3F */ clrlwi. r30, r27, 0x18 +/* 801CA704 001C7664 41 82 00 64 */ beq lbl_801CA768 +/* 801CA708 001C7668 C0 A9 00 2C */ lfs f5, 0x2c(r9) +/* 801CA70C 001C766C C0 06 00 04 */ lfs f0, 4(r6) +/* 801CA710 001C7670 C0 69 00 28 */ lfs f3, 0x28(r9) +/* 801CA714 001C7674 EC E5 00 28 */ fsubs f7, f5, f0 +/* 801CA718 001C7678 C0 06 00 00 */ lfs f0, 0(r6) +/* 801CA71C 001C767C C0 89 00 30 */ lfs f4, 0x30(r9) +/* 801CA720 001C7680 EC 43 00 28 */ fsubs f2, f3, f0 +/* 801CA724 001C7684 C0 26 00 08 */ lfs f1, 8(r6) +/* 801CA728 001C7688 EC 07 01 F2 */ fmuls f0, f7, f7 +/* 801CA72C 001C768C EC C4 08 28 */ fsubs f6, f4, f1 +/* 801CA730 001C7690 D0 E1 00 0C */ stfs f7, 0xc(r1) +/* 801CA734 001C7694 EC 22 00 B2 */ fmuls f1, f2, f2 +/* 801CA738 001C7698 D0 41 00 08 */ stfs f2, 8(r1) +/* 801CA73C 001C769C EC 46 01 B2 */ fmuls f2, f6, f6 +/* 801CA740 001C76A0 EC 01 00 2A */ fadds f0, f1, f0 +/* 801CA744 001C76A4 D0 C1 00 10 */ stfs f6, 0x10(r1) +/* 801CA748 001C76A8 EC 02 00 2A */ fadds f0, f2, f0 +/* 801CA74C 001C76AC FC 00 58 40 */ fcmpo cr0, f0, f11 +/* 801CA750 001C76B0 40 80 00 18 */ bge lbl_801CA768 +/* 801CA754 001C76B4 FD 60 00 90 */ fmr f11, f0 +/* 801CA758 001C76B8 FD 00 18 90 */ fmr f8, f3 +/* 801CA75C 001C76BC FD 20 28 90 */ fmr f9, f5 +/* 801CA760 001C76C0 FD 40 20 90 */ fmr f10, f4 +/* 801CA764 001C76C4 48 00 00 0C */ b lbl_801CA770 +lbl_801CA768: +/* 801CA768 001C76C8 39 4A 00 04 */ addi r10, r10, 4 +/* 801CA76C 001C76CC 42 00 FE E0 */ bdnz lbl_801CA64C +lbl_801CA770: +/* 801CA770 001C76D0 39 6B 00 50 */ addi r11, r11, 0x50 +/* 801CA774 001C76D4 3B FF 00 01 */ addi r31, r31, 1 +lbl_801CA778: +/* 801CA778 001C76D8 81 24 01 50 */ lwz r9, 0x150(r4) +/* 801CA77C 001C76DC 7C 1F 48 00 */ cmpw r31, r9 +/* 801CA780 001C76E0 41 80 FE 94 */ blt lbl_801CA614 +/* 801CA784 001C76E4 D1 03 00 00 */ stfs f8, 0(r3) +/* 801CA788 001C76E8 D1 23 00 04 */ stfs f9, 4(r3) +/* 801CA78C 001C76EC D1 43 00 08 */ stfs f10, 8(r3) +/* 801CA790 001C76F0 BB 21 00 24 */ lmw r25, 0x24(r1) +/* 801CA794 001C76F4 38 21 00 40 */ addi r1, r1, 0x40 +/* 801CA798 001C76F8 4E 80 00 20 */ blr + +.global FindClosestRegion__7CPFAreaFRC9CVector3fUif +FindClosestRegion__7CPFAreaFRC9CVector3fUif: +/* 801CA79C 001C76FC 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 801CA7A0 001C7700 7C 08 02 A6 */ mflr r0 +/* 801CA7A4 001C7704 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 801CA7A8 001C7708 DB E1 00 D0 */ stfd f31, 0xd0(r1) +/* 801CA7AC 001C770C F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 +/* 801CA7B0 001C7710 BE 41 00 98 */ stmw r18, 0x98(r1) +/* 801CA7B4 001C7714 38 00 00 00 */ li r0, 0 +/* 801CA7B8 001C7718 FF E0 08 90 */ fmr f31, f1 +/* 801CA7BC 001C771C 90 01 00 08 */ stw r0, 8(r1) +/* 801CA7C0 001C7720 7C 73 1B 78 */ mr r19, r3 +/* 801CA7C4 001C7724 7C 94 23 78 */ mr r20, r4 +/* 801CA7C8 001C7728 7C B5 2B 78 */ mr r21, r5 +/* 801CA7CC 001C772C 7C D6 33 78 */ mr r22, r6 +/* 801CA7D0 001C7730 3B 80 00 00 */ li r28, 0 +/* 801CA7D4 001C7734 48 1B AB ED */ bl OSGetTick +/* 801CA7D8 001C7738 80 73 01 58 */ lwz r3, 0x158(r19) +/* 801CA7DC 001C773C FC 20 F8 90 */ fmr f1, f31 +/* 801CA7E0 001C7740 80 D3 01 5C */ lwz r6, 0x15c(r19) +/* 801CA7E4 001C7744 7E 85 A3 78 */ mr r5, r20 +/* 801CA7E8 001C7748 38 03 FF FF */ addi r0, r3, -1 +/* 801CA7EC 001C774C 38 81 00 08 */ addi r4, r1, 8 +/* 801CA7F0 001C7750 1C 00 00 50 */ mulli r0, r0, 0x50 +/* 801CA7F4 001C7754 3B 20 00 00 */ li r25, 0 +/* 801CA7F8 001C7758 7C 66 02 14 */ add r3, r6, r0 +/* 801CA7FC 001C775C 48 00 09 E9 */ bl "GetRegionListList__13CPFAreaOctreeFRQ24rstl54reserved_vector,32>RC9CVector3ff" +/* 801CA800 001C7760 48 1B AB C1 */ bl OSGetTick +/* 801CA804 001C7764 3B C1 00 0C */ addi r30, r1, 0xc +/* 801CA808 001C7768 56 BD 07 BC */ rlwinm r29, r21, 0, 0x1e, 0x1e +/* 801CA80C 001C776C 3B 60 00 00 */ li r27, 0 +/* 801CA810 001C7770 48 00 01 A4 */ b lbl_801CA9B4 +lbl_801CA814: +/* 801CA814 001C7774 83 1E 00 00 */ lwz r24, 0(r30) +/* 801CA818 001C7778 3B 40 00 00 */ li r26, 0 +/* 801CA81C 001C777C 3B E0 00 00 */ li r31, 0 +/* 801CA820 001C7780 48 00 01 80 */ b lbl_801CA9A0 +lbl_801CA824: +/* 801CA824 001C7784 80 78 00 04 */ lwz r3, 4(r24) +/* 801CA828 001C7788 80 93 00 34 */ lwz r4, 0x34(r19) +/* 801CA82C 001C778C 7E E3 F8 2E */ lwzx r23, r3, r31 +/* 801CA830 001C7790 80 77 00 4C */ lwz r3, 0x4c(r23) +/* 801CA834 001C7794 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801CA838 001C7798 7C 04 00 00 */ cmpw r4, r0 +/* 801CA83C 001C779C 41 82 01 5C */ beq lbl_801CA998 +/* 801CA840 001C77A0 80 77 00 10 */ lwz r3, 0x10(r23) +/* 801CA844 001C77A4 54 60 06 3E */ clrlwi r0, r3, 0x18 +/* 801CA848 001C77A8 7E A0 00 39 */ and. r0, r21, r0 +/* 801CA84C 001C77AC 41 82 01 40 */ beq lbl_801CA98C +/* 801CA850 001C77B0 54 60 86 3E */ rlwinm r0, r3, 0x10, 0x18, 0x1f +/* 801CA854 001C77B4 7E C0 00 39 */ and. r0, r22, r0 +/* 801CA858 001C77B8 41 82 01 34 */ beq lbl_801CA98C +/* 801CA85C 001C77BC C0 17 00 34 */ lfs f0, 0x34(r23) +/* 801CA860 001C77C0 38 00 00 00 */ li r0, 0 +/* 801CA864 001C77C4 C0 34 00 00 */ lfs f1, 0(r20) +/* 801CA868 001C77C8 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 801CA86C 001C77CC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801CA870 001C77D0 4C 41 13 82 */ cror 2, 1, 2 +/* 801CA874 001C77D4 40 82 00 74 */ bne lbl_801CA8E8 +/* 801CA878 001C77D8 C0 17 00 40 */ lfs f0, 0x40(r23) +/* 801CA87C 001C77DC EC 1F 00 2A */ fadds f0, f31, f0 +/* 801CA880 001C77E0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801CA884 001C77E4 4C 40 13 82 */ cror 2, 0, 2 +/* 801CA888 001C77E8 40 82 00 60 */ bne lbl_801CA8E8 +/* 801CA88C 001C77EC C0 17 00 38 */ lfs f0, 0x38(r23) +/* 801CA890 001C77F0 C0 34 00 04 */ lfs f1, 4(r20) +/* 801CA894 001C77F4 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 801CA898 001C77F8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801CA89C 001C77FC 4C 41 13 82 */ cror 2, 1, 2 +/* 801CA8A0 001C7800 40 82 00 48 */ bne lbl_801CA8E8 +/* 801CA8A4 001C7804 C0 17 00 44 */ lfs f0, 0x44(r23) +/* 801CA8A8 001C7808 EC 1F 00 2A */ fadds f0, f31, f0 +/* 801CA8AC 001C780C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801CA8B0 001C7810 4C 40 13 82 */ cror 2, 0, 2 +/* 801CA8B4 001C7814 40 82 00 34 */ bne lbl_801CA8E8 +/* 801CA8B8 001C7818 C0 17 00 3C */ lfs f0, 0x3c(r23) +/* 801CA8BC 001C781C C0 34 00 08 */ lfs f1, 8(r20) +/* 801CA8C0 001C7820 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 801CA8C4 001C7824 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801CA8C8 001C7828 4C 41 13 82 */ cror 2, 1, 2 +/* 801CA8CC 001C782C 40 82 00 1C */ bne lbl_801CA8E8 +/* 801CA8D0 001C7830 C0 17 00 48 */ lfs f0, 0x48(r23) +/* 801CA8D4 001C7834 EC 1F 00 2A */ fadds f0, f31, f0 +/* 801CA8D8 001C7838 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801CA8DC 001C783C 4C 40 13 82 */ cror 2, 0, 2 +/* 801CA8E0 001C7840 40 82 00 08 */ bne lbl_801CA8E8 +/* 801CA8E4 001C7844 38 00 00 01 */ li r0, 1 +lbl_801CA8E8: +/* 801CA8E8 001C7848 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 801CA8EC 001C784C 41 82 00 A0 */ beq lbl_801CA98C +/* 801CA8F0 001C7850 48 1B AA D1 */ bl OSGetTick +/* 801CA8F4 001C7854 28 1D 00 00 */ cmplwi r29, 0 +/* 801CA8F8 001C7858 7C 72 1B 78 */ mr r18, r3 +/* 801CA8FC 001C785C 40 82 00 1C */ bne lbl_801CA918 +/* 801CA900 001C7860 7E E3 BB 78 */ mr r3, r23 +/* 801CA904 001C7864 7E 84 A3 78 */ mr r4, r20 +/* 801CA908 001C7868 4B FF F5 55 */ bl PointHeight__9CPFRegionCFRC9CVector3f +/* 801CA90C 001C786C C0 02 AB 54 */ lfs f0, lbl_805AC874@sda21(r2) +/* 801CA910 001C7870 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801CA914 001C7874 40 80 00 78 */ bge lbl_801CA98C +lbl_801CA918: +/* 801CA918 001C7878 EC 3F 07 F2 */ fmuls f1, f31, f31 +/* 801CA91C 001C787C 7E E3 BB 78 */ mr r3, r23 +/* 801CA920 001C7880 7E 85 A3 78 */ mr r5, r20 +/* 801CA924 001C7884 7E A6 AB 78 */ mr r6, r21 +/* 801CA928 001C7888 38 93 00 10 */ addi r4, r19, 0x10 +/* 801CA92C 001C788C 4B FF EC 81 */ bl "FindBestPoint__9CPFRegionFRQ24rstl45vector<9CVector3f,Q24rstl17rmemory_allocator>RC9CVector3fUif" +/* 801CA930 001C7890 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801CA934 001C7894 41 82 00 4C */ beq lbl_801CA980 +/* 801CA938 001C7898 80 77 00 4C */ lwz r3, 0x4c(r23) +/* 801CA93C 001C789C C0 02 AB 58 */ lfs f0, lbl_805AC878@sda21(r2) +/* 801CA940 001C78A0 C0 23 00 00 */ lfs f1, 0(r3) +/* 801CA944 001C78A4 FC 00 08 00 */ fcmpu cr0, f0, f1 +/* 801CA948 001C78A8 40 82 00 08 */ bne lbl_801CA950 +/* 801CA94C 001C78AC 48 00 00 10 */ b lbl_801CA95C +lbl_801CA950: +/* 801CA950 001C78B0 FC 00 08 34 */ frsqrte f0, f1 +/* 801CA954 001C78B4 FC 01 00 32 */ fmul f0, f1, f0 +/* 801CA958 001C78B8 FC 00 00 18 */ frsp f0, f0 +lbl_801CA95C: +/* 801CA95C 001C78BC 80 77 00 4C */ lwz r3, 0x4c(r23) +/* 801CA960 001C78C0 FF E0 00 90 */ fmr f31, f0 +/* 801CA964 001C78C4 7E FC BB 78 */ mr r28, r23 +/* 801CA968 001C78C8 C0 03 00 04 */ lfs f0, 4(r3) +/* 801CA96C 001C78CC D0 13 00 04 */ stfs f0, 4(r19) +/* 801CA970 001C78D0 C0 03 00 08 */ lfs f0, 8(r3) +/* 801CA974 001C78D4 D0 13 00 08 */ stfs f0, 8(r19) +/* 801CA978 001C78D8 C0 03 00 0C */ lfs f0, 0xc(r3) +/* 801CA97C 001C78DC D0 13 00 0C */ stfs f0, 0xc(r19) +lbl_801CA980: +/* 801CA980 001C78E0 48 1B AA 41 */ bl OSGetTick +/* 801CA984 001C78E4 7C 12 18 50 */ subf r0, r18, r3 +/* 801CA988 001C78E8 7F 39 02 14 */ add r25, r25, r0 +lbl_801CA98C: +/* 801CA98C 001C78EC 80 13 00 34 */ lwz r0, 0x34(r19) +/* 801CA990 001C78F0 80 77 00 4C */ lwz r3, 0x4c(r23) +/* 801CA994 001C78F4 90 03 00 10 */ stw r0, 0x10(r3) +lbl_801CA998: +/* 801CA998 001C78F8 3B FF 00 04 */ addi r31, r31, 4 +/* 801CA99C 001C78FC 3B 5A 00 01 */ addi r26, r26, 1 +lbl_801CA9A0: +/* 801CA9A0 001C7900 80 18 00 00 */ lwz r0, 0(r24) +/* 801CA9A4 001C7904 7C 1A 00 00 */ cmpw r26, r0 +/* 801CA9A8 001C7908 41 80 FE 7C */ blt lbl_801CA824 +/* 801CA9AC 001C790C 3B DE 00 04 */ addi r30, r30, 4 +/* 801CA9B0 001C7910 3B 7B 00 01 */ addi r27, r27, 1 +lbl_801CA9B4: +/* 801CA9B4 001C7914 80 01 00 08 */ lwz r0, 8(r1) +/* 801CA9B8 001C7918 7C 1B 00 00 */ cmpw r27, r0 +/* 801CA9BC 001C791C 41 80 FE 58 */ blt lbl_801CA814 +/* 801CA9C0 001C7920 48 1B AA 01 */ bl OSGetTick +/* 801CA9C4 001C7924 80 73 00 34 */ lwz r3, 0x34(r19) +/* 801CA9C8 001C7928 38 80 00 00 */ li r4, 0 +/* 801CA9CC 001C792C 38 03 00 01 */ addi r0, r3, 1 +/* 801CA9D0 001C7930 90 13 00 34 */ stw r0, 0x34(r19) +/* 801CA9D4 001C7934 80 A1 00 08 */ lwz r5, 8(r1) +/* 801CA9D8 001C7938 2C 05 00 00 */ cmpwi r5, 0 +/* 801CA9DC 001C793C 40 81 00 40 */ ble lbl_801CAA1C +/* 801CA9E0 001C7940 2C 05 00 08 */ cmpwi r5, 8 +/* 801CA9E4 001C7944 38 65 FF F8 */ addi r3, r5, -8 +/* 801CA9E8 001C7948 40 81 00 20 */ ble lbl_801CAA08 +/* 801CA9EC 001C794C 38 03 00 07 */ addi r0, r3, 7 +/* 801CA9F0 001C7950 54 00 E8 FE */ srwi r0, r0, 3 +/* 801CA9F4 001C7954 7C 09 03 A6 */ mtctr r0 +/* 801CA9F8 001C7958 2C 03 00 00 */ cmpwi r3, 0 +/* 801CA9FC 001C795C 40 81 00 0C */ ble lbl_801CAA08 +lbl_801CAA00: +/* 801CAA00 001C7960 38 84 00 08 */ addi r4, r4, 8 +/* 801CAA04 001C7964 42 00 FF FC */ bdnz lbl_801CAA00 +lbl_801CAA08: +/* 801CAA08 001C7968 7C 04 28 50 */ subf r0, r4, r5 +/* 801CAA0C 001C796C 7C 09 03 A6 */ mtctr r0 +/* 801CAA10 001C7970 7C 04 28 00 */ cmpw r4, r5 +/* 801CAA14 001C7974 40 80 00 08 */ bge lbl_801CAA1C +lbl_801CAA18: +/* 801CAA18 001C7978 42 00 00 00 */ bdnz lbl_801CAA18 +lbl_801CAA1C: +/* 801CAA1C 001C797C 38 00 00 00 */ li r0, 0 +/* 801CAA20 001C7980 7F 83 E3 78 */ mr r3, r28 +/* 801CAA24 001C7984 90 01 00 08 */ stw r0, 8(r1) +/* 801CAA28 001C7988 E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 +/* 801CAA2C 001C798C CB E1 00 D0 */ lfd f31, 0xd0(r1) +/* 801CAA30 001C7990 BA 41 00 98 */ lmw r18, 0x98(r1) +/* 801CAA34 001C7994 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 801CAA38 001C7998 7C 08 03 A6 */ mtlr r0 +/* 801CAA3C 001C799C 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 801CAA40 001C79A0 4E 80 00 20 */ blr + +.global "FindRegions__7CPFAreaFRQ24rstl30reserved_vectorRC9CVector3fUiUi" +"FindRegions__7CPFAreaFRQ24rstl30reserved_vectorRC9CVector3fUiUi": +/* 801CAA44 001C79A4 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801CAA48 001C79A8 7C 08 02 A6 */ mflr r0 +/* 801CAA4C 001C79AC 90 01 00 34 */ stw r0, 0x34(r1) +/* 801CAA50 001C79B0 BE C1 00 08 */ stmw r22, 8(r1) +/* 801CAA54 001C79B4 7C B7 2B 78 */ mr r23, r5 +/* 801CAA58 001C79B8 7C 96 23 78 */ mr r22, r4 +/* 801CAA5C 001C79BC 7C D8 33 78 */ mr r24, r6 +/* 801CAA60 001C79C0 7C F9 3B 78 */ mr r25, r7 +/* 801CAA64 001C79C4 7E E4 BB 78 */ mr r4, r23 +/* 801CAA68 001C79C8 48 00 00 D9 */ bl GetOctreeRegionList__7CPFAreaFRC9CVector3f +/* 801CAA6C 001C79CC 7C 7F 1B 78 */ mr r31, r3 +/* 801CAA70 001C79D0 57 1D 07 BC */ rlwinm r29, r24, 0, 0x1e, 0x1e +/* 801CAA74 001C79D4 57 1C 07 7A */ rlwinm r28, r24, 0, 0x1d, 0x1d +/* 801CAA78 001C79D8 3B 60 00 00 */ li r27, 0 +/* 801CAA7C 001C79DC 3B C0 00 00 */ li r30, 0 +/* 801CAA80 001C79E0 48 00 00 9C */ b lbl_801CAB1C +lbl_801CAA84: +/* 801CAA84 001C79E4 80 7F 00 04 */ lwz r3, 4(r31) +/* 801CAA88 001C79E8 7F 43 F0 2E */ lwzx r26, r3, r30 +/* 801CAA8C 001C79EC 80 7A 00 10 */ lwz r3, 0x10(r26) +/* 801CAA90 001C79F0 54 60 06 3E */ clrlwi r0, r3, 0x18 +/* 801CAA94 001C79F4 7F 00 00 39 */ and. r0, r24, r0 +/* 801CAA98 001C79F8 41 82 00 7C */ beq lbl_801CAB14 +/* 801CAA9C 001C79FC 54 60 86 3E */ rlwinm r0, r3, 0x10, 0x18, 0x1f +/* 801CAAA0 001C7A00 7F 20 00 39 */ and. r0, r25, r0 +/* 801CAAA4 001C7A04 41 82 00 70 */ beq lbl_801CAB14 +/* 801CAAA8 001C7A08 7F 43 D3 78 */ mr r3, r26 +/* 801CAAAC 001C7A0C 7E E4 BB 78 */ mr r4, r23 +/* 801CAAB0 001C7A10 4B FF F3 F1 */ bl IsPointInside__9CPFRegionCFRC9CVector3f +/* 801CAAB4 001C7A14 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801CAAB8 001C7A18 41 82 00 5C */ beq lbl_801CAB14 +/* 801CAABC 001C7A1C 28 1D 00 00 */ cmplwi r29, 0 +/* 801CAAC0 001C7A20 40 82 00 24 */ bne lbl_801CAAE4 +/* 801CAAC4 001C7A24 28 1C 00 00 */ cmplwi r28, 0 +/* 801CAAC8 001C7A28 40 82 00 1C */ bne lbl_801CAAE4 +/* 801CAACC 001C7A2C 7F 43 D3 78 */ mr r3, r26 +/* 801CAAD0 001C7A30 7E E4 BB 78 */ mr r4, r23 +/* 801CAAD4 001C7A34 4B FF F3 89 */ bl PointHeight__9CPFRegionCFRC9CVector3f +/* 801CAAD8 001C7A38 C0 02 AB 54 */ lfs f0, lbl_805AC874@sda21(r2) +/* 801CAADC 001C7A3C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801CAAE0 001C7A40 40 80 00 34 */ bge lbl_801CAB14 +lbl_801CAAE4: +/* 801CAAE4 001C7A44 80 16 00 00 */ lwz r0, 0(r22) +/* 801CAAE8 001C7A48 54 00 10 3A */ slwi r0, r0, 2 +/* 801CAAEC 001C7A4C 7C 76 02 14 */ add r3, r22, r0 +/* 801CAAF0 001C7A50 34 63 00 04 */ addic. r3, r3, 4 +/* 801CAAF4 001C7A54 41 82 00 08 */ beq lbl_801CAAFC +/* 801CAAF8 001C7A58 93 43 00 00 */ stw r26, 0(r3) +lbl_801CAAFC: +/* 801CAAFC 001C7A5C 80 76 00 00 */ lwz r3, 0(r22) +/* 801CAB00 001C7A60 38 03 00 01 */ addi r0, r3, 1 +/* 801CAB04 001C7A64 90 16 00 00 */ stw r0, 0(r22) +/* 801CAB08 001C7A68 80 16 00 00 */ lwz r0, 0(r22) +/* 801CAB0C 001C7A6C 2C 00 00 04 */ cmpwi r0, 4 +/* 801CAB10 001C7A70 41 82 00 18 */ beq lbl_801CAB28 +lbl_801CAB14: +/* 801CAB14 001C7A74 3B DE 00 04 */ addi r30, r30, 4 +/* 801CAB18 001C7A78 3B 7B 00 01 */ addi r27, r27, 1 +lbl_801CAB1C: +/* 801CAB1C 001C7A7C 80 1F 00 00 */ lwz r0, 0(r31) +/* 801CAB20 001C7A80 7C 1B 00 00 */ cmpw r27, r0 +/* 801CAB24 001C7A84 41 80 FF 60 */ blt lbl_801CAA84 +lbl_801CAB28: +/* 801CAB28 001C7A88 80 76 00 00 */ lwz r3, 0(r22) +/* 801CAB2C 001C7A8C BA C1 00 08 */ lmw r22, 8(r1) +/* 801CAB30 001C7A90 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801CAB34 001C7A94 7C 08 03 A6 */ mtlr r0 +/* 801CAB38 001C7A98 38 21 00 30 */ addi r1, r1, 0x30 +/* 801CAB3C 001C7A9C 4E 80 00 20 */ blr + +.global GetOctreeRegionList__7CPFAreaFRC9CVector3f +GetOctreeRegionList__7CPFAreaFRC9CVector3f: +/* 801CAB40 001C7AA0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801CAB44 001C7AA4 7C 08 02 A6 */ mflr r0 +/* 801CAB48 001C7AA8 90 01 00 14 */ stw r0, 0x14(r1) +/* 801CAB4C 001C7AAC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801CAB50 001C7AB0 7C 9F 23 78 */ mr r31, r4 +/* 801CAB54 001C7AB4 93 C1 00 08 */ stw r30, 8(r1) +/* 801CAB58 001C7AB8 7C 7E 1B 78 */ mr r30, r3 +/* 801CAB5C 001C7ABC 88 03 00 30 */ lbz r0, 0x30(r3) +/* 801CAB60 001C7AC0 28 00 00 00 */ cmplwi r0, 0 +/* 801CAB64 001C7AC4 41 82 00 24 */ beq lbl_801CAB88 +/* 801CAB68 001C7AC8 C0 22 AB 5C */ lfs f1, lbl_805AC87C@sda21(r2) +/* 801CAB6C 001C7ACC 7F E3 FB 78 */ mr r3, r31 +/* 801CAB70 001C7AD0 38 9E 00 24 */ addi r4, r30, 0x24 +/* 801CAB74 001C7AD4 48 14 53 F1 */ bl close_enough__FRC9CVector3fRC9CVector3ff +/* 801CAB78 001C7AD8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801CAB7C 001C7ADC 41 82 00 0C */ beq lbl_801CAB88 +/* 801CAB80 001C7AE0 80 7E 00 20 */ lwz r3, 0x20(r30) +/* 801CAB84 001C7AE4 48 00 00 20 */ b lbl_801CABA4 +lbl_801CAB88: +/* 801CAB88 001C7AE8 80 7E 01 58 */ lwz r3, 0x158(r30) +/* 801CAB8C 001C7AEC 7F E4 FB 78 */ mr r4, r31 +/* 801CAB90 001C7AF0 80 BE 01 5C */ lwz r5, 0x15c(r30) +/* 801CAB94 001C7AF4 38 03 FF FF */ addi r0, r3, -1 +/* 801CAB98 001C7AF8 1C 00 00 50 */ mulli r0, r0, 0x50 +/* 801CAB9C 001C7AFC 7C 65 02 14 */ add r3, r5, r0 +/* 801CABA0 001C7B00 48 00 0A C1 */ bl GetRegionList__13CPFAreaOctreeFRC9CVector3f +lbl_801CABA4: +/* 801CABA4 001C7B04 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801CABA8 001C7B08 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801CABAC 001C7B0C 83 C1 00 08 */ lwz r30, 8(r1) +/* 801CABB0 001C7B10 7C 08 03 A6 */ mtlr r0 +/* 801CABB4 001C7B14 38 21 00 10 */ addi r1, r1, 0x10 +/* 801CABB8 001C7B18 4E 80 00 20 */ blr + +.global "__ct__7CPFAreaFRCQ24rstl12auto_ptri" +"__ct__7CPFAreaFRCQ24rstl12auto_ptri": +/* 801CABBC 001C7B1C 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 801CABC0 001C7B20 7C 08 02 A6 */ mflr r0 +/* 801CABC4 001C7B24 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 801CABC8 001C7B28 DB E1 00 D0 */ stfd f31, 0xd0(r1) +/* 801CABCC 001C7B2C F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 +/* 801CABD0 001C7B30 DB C1 00 C0 */ stfd f30, 0xc0(r1) +/* 801CABD4 001C7B34 F3 C1 00 C8 */ psq_st f30, 200(r1), 0, qr0 +/* 801CABD8 001C7B38 DB A1 00 B0 */ stfd f29, 0xb0(r1) +/* 801CABDC 001C7B3C F3 A1 00 B8 */ psq_st f29, 184(r1), 0, qr0 +/* 801CABE0 001C7B40 DB 81 00 A0 */ stfd f28, 0xa0(r1) +/* 801CABE4 001C7B44 F3 81 00 A8 */ psq_st f28, 168(r1), 0, qr0 +/* 801CABE8 001C7B48 DB 61 00 90 */ stfd f27, 0x90(r1) +/* 801CABEC 001C7B4C F3 61 00 98 */ psq_st f27, 152(r1), 0, qr0 +/* 801CABF0 001C7B50 DB 41 00 80 */ stfd f26, 0x80(r1) +/* 801CABF4 001C7B54 F3 41 00 88 */ psq_st f26, 136(r1), 0, qr0 +/* 801CABF8 001C7B58 DB 21 00 70 */ stfd f25, 0x70(r1) +/* 801CABFC 001C7B5C F3 21 00 78 */ psq_st f25, 120(r1), 0, qr0 +/* 801CAC00 001C7B60 BF 01 00 50 */ stmw r24, 0x50(r1) +/* 801CAC04 001C7B64 C0 02 AB 50 */ lfs f0, lbl_805AC870@sda21(r2) +/* 801CAC08 001C7B68 7C 7F 1B 78 */ mr r31, r3 +/* 801CAC0C 001C7B6C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801CAC10 001C7B70 38 00 00 00 */ li r0, 0 +/* 801CAC14 001C7B74 D0 1F 00 00 */ stfs f0, 0(r31) +/* 801CAC18 001C7B78 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 801CAC1C 001C7B7C 7C 98 23 78 */ mr r24, r4 +/* 801CAC20 001C7B80 38 7F 00 78 */ addi r3, r31, 0x78 +/* 801CAC24 001C7B84 C0 05 00 00 */ lfs f0, 0(r5) +/* 801CAC28 001C7B88 D0 1F 00 04 */ stfs f0, 4(r31) +/* 801CAC2C 001C7B8C C0 05 00 04 */ lfs f0, 4(r5) +/* 801CAC30 001C7B90 D0 1F 00 08 */ stfs f0, 8(r31) +/* 801CAC34 001C7B94 C0 05 00 08 */ lfs f0, 8(r5) +/* 801CAC38 001C7B98 D0 1F 00 0C */ stfs f0, 0xc(r31) +/* 801CAC3C 001C7B9C 90 1F 00 14 */ stw r0, 0x14(r31) +/* 801CAC40 001C7BA0 90 1F 00 18 */ stw r0, 0x18(r31) +/* 801CAC44 001C7BA4 90 1F 00 1C */ stw r0, 0x1c(r31) +/* 801CAC48 001C7BA8 90 1F 00 20 */ stw r0, 0x20(r31) +/* 801CAC4C 001C7BAC C0 05 00 00 */ lfs f0, 0(r5) +/* 801CAC50 001C7BB0 D0 1F 00 24 */ stfs f0, 0x24(r31) +/* 801CAC54 001C7BB4 C0 05 00 04 */ lfs f0, 4(r5) +/* 801CAC58 001C7BB8 D0 1F 00 28 */ stfs f0, 0x28(r31) +/* 801CAC5C 001C7BBC C0 05 00 08 */ lfs f0, 8(r5) +/* 801CAC60 001C7BC0 D0 1F 00 2C */ stfs f0, 0x2c(r31) +/* 801CAC64 001C7BC4 98 1F 00 30 */ stb r0, 0x30(r31) +/* 801CAC68 001C7BC8 90 1F 00 34 */ stw r0, 0x34(r31) +/* 801CAC6C 001C7BCC 90 1F 00 38 */ stw r0, 0x38(r31) +/* 801CAC70 001C7BD0 90 1F 00 3C */ stw r0, 0x3c(r31) +/* 801CAC74 001C7BD4 90 1F 00 40 */ stw r0, 0x40(r31) +/* 801CAC78 001C7BD8 90 1F 00 44 */ stw r0, 0x44(r31) +/* 801CAC7C 001C7BDC 90 1F 00 48 */ stw r0, 0x48(r31) +/* 801CAC80 001C7BE0 90 1F 00 4C */ stw r0, 0x4c(r31) +/* 801CAC84 001C7BE4 90 1F 00 50 */ stw r0, 0x50(r31) +/* 801CAC88 001C7BE8 90 1F 00 54 */ stw r0, 0x54(r31) +/* 801CAC8C 001C7BEC 90 1F 00 58 */ stw r0, 0x58(r31) +/* 801CAC90 001C7BF0 90 1F 00 5C */ stw r0, 0x5c(r31) +/* 801CAC94 001C7BF4 90 1F 00 60 */ stw r0, 0x60(r31) +/* 801CAC98 001C7BF8 90 1F 00 64 */ stw r0, 0x64(r31) +/* 801CAC9C 001C7BFC 90 1F 00 68 */ stw r0, 0x68(r31) +/* 801CACA0 001C7C00 90 1F 00 6C */ stw r0, 0x6c(r31) +/* 801CACA4 001C7C04 90 1F 00 70 */ stw r0, 0x70(r31) +/* 801CACA8 001C7C08 90 1F 00 74 */ stw r0, 0x74(r31) +/* 801CACAC 001C7C0C 4B FF E1 1D */ bl __ct__11CPFOpenListFv +/* 801CACB0 001C7C10 38 A0 00 00 */ li r5, 0 +/* 801CACB4 001C7C14 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 801CACB8 001C7C18 98 B8 00 00 */ stb r5, 0(r24) +/* 801CACBC 001C7C1C 38 83 66 70 */ addi r4, r3, skIdentity4f@l +/* 801CACC0 001C7C20 38 7F 01 88 */ addi r3, r31, 0x188 +/* 801CACC4 001C7C24 80 18 00 04 */ lwz r0, 4(r24) +/* 801CACC8 001C7C28 90 1F 01 3C */ stw r0, 0x13c(r31) +/* 801CACCC 001C7C2C 90 BF 01 40 */ stw r5, 0x140(r31) +/* 801CACD0 001C7C30 90 BF 01 44 */ stw r5, 0x144(r31) +/* 801CACD4 001C7C34 90 BF 01 48 */ stw r5, 0x148(r31) +/* 801CACD8 001C7C38 90 BF 01 4C */ stw r5, 0x14c(r31) +/* 801CACDC 001C7C3C 90 BF 01 50 */ stw r5, 0x150(r31) +/* 801CACE0 001C7C40 90 BF 01 54 */ stw r5, 0x154(r31) +/* 801CACE4 001C7C44 90 BF 01 58 */ stw r5, 0x158(r31) +/* 801CACE8 001C7C48 90 BF 01 5C */ stw r5, 0x15c(r31) +/* 801CACEC 001C7C4C 90 BF 01 60 */ stw r5, 0x160(r31) +/* 801CACF0 001C7C50 90 BF 01 64 */ stw r5, 0x164(r31) +/* 801CACF4 001C7C54 90 BF 01 68 */ stw r5, 0x168(r31) +/* 801CACF8 001C7C58 90 BF 01 6C */ stw r5, 0x16c(r31) +/* 801CACFC 001C7C5C 90 BF 01 70 */ stw r5, 0x170(r31) +/* 801CAD00 001C7C60 90 BF 01 74 */ stw r5, 0x174(r31) +/* 801CAD04 001C7C64 90 BF 01 7C */ stw r5, 0x17c(r31) +/* 801CAD08 001C7C68 90 BF 01 80 */ stw r5, 0x180(r31) +/* 801CAD0C 001C7C6C 90 BF 01 84 */ stw r5, 0x184(r31) +/* 801CAD10 001C7C70 48 14 7E 65 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801CAD14 001C7C74 80 9F 01 3C */ lwz r4, 0x13c(r31) +/* 801CAD18 001C7C78 38 7F 01 78 */ addi r3, r31, 0x178 +/* 801CAD1C 001C7C7C 80 04 00 04 */ lwz r0, 4(r4) +/* 801CAD20 001C7C80 3B C4 00 08 */ addi r30, r4, 8 +/* 801CAD24 001C7C84 90 1F 01 40 */ stw r0, 0x140(r31) +/* 801CAD28 001C7C88 1C 00 00 18 */ mulli r0, r0, 0x18 +/* 801CAD2C 001C7C8C 93 DF 01 44 */ stw r30, 0x144(r31) +/* 801CAD30 001C7C90 7F DE 02 14 */ add r30, r30, r0 +/* 801CAD34 001C7C94 80 1E 00 00 */ lwz r0, 0(r30) +/* 801CAD38 001C7C98 3B DE 00 04 */ addi r30, r30, 4 +/* 801CAD3C 001C7C9C 7F C4 F3 78 */ mr r4, r30 +/* 801CAD40 001C7CA0 90 1F 01 48 */ stw r0, 0x148(r31) +/* 801CAD44 001C7CA4 54 00 20 36 */ slwi r0, r0, 4 +/* 801CAD48 001C7CA8 7F DE 02 14 */ add r30, r30, r0 +/* 801CAD4C 001C7CAC 90 9F 01 4C */ stw r4, 0x14c(r31) +/* 801CAD50 001C7CB0 83 BE 00 00 */ lwz r29, 0(r30) +/* 801CAD54 001C7CB4 3B DE 00 04 */ addi r30, r30, 4 +/* 801CAD58 001C7CB8 93 BF 01 50 */ stw r29, 0x150(r31) +/* 801CAD5C 001C7CBC 1C 1D 00 50 */ mulli r0, r29, 0x50 +/* 801CAD60 001C7CC0 7F A4 EB 78 */ mr r4, r29 +/* 801CAD64 001C7CC4 93 DF 01 54 */ stw r30, 0x154(r31) +/* 801CAD68 001C7CC8 7F DE 02 14 */ add r30, r30, r0 +/* 801CAD6C 001C7CCC 48 00 0B BD */ bl "reserve__Q24rstl50vector<13CPFRegionData,Q24rstl17rmemory_allocator>Fi" +/* 801CAD70 001C7CD0 38 61 00 1C */ addi r3, r1, 0x1c +/* 801CAD74 001C7CD4 4B FF F3 A5 */ bl __ct__13CPFRegionDataFv +/* 801CAD78 001C7CD8 80 1F 01 7C */ lwz r0, 0x17c(r31) +/* 801CAD7C 001C7CDC C3 E1 00 1C */ lfs f31, 0x1c(r1) +/* 801CAD80 001C7CE0 7C 00 E8 00 */ cmpw r0, r29 +/* 801CAD84 001C7CE4 C3 C1 00 20 */ lfs f30, 0x20(r1) +/* 801CAD88 001C7CE8 C3 A1 00 24 */ lfs f29, 0x24(r1) +/* 801CAD8C 001C7CEC C3 81 00 28 */ lfs f28, 0x28(r1) +/* 801CAD90 001C7CF0 83 81 00 2C */ lwz r28, 0x2c(r1) +/* 801CAD94 001C7CF4 C3 61 00 30 */ lfs f27, 0x30(r1) +/* 801CAD98 001C7CF8 C3 41 00 34 */ lfs f26, 0x34(r1) +/* 801CAD9C 001C7CFC C3 21 00 38 */ lfs f25, 0x38(r1) +/* 801CADA0 001C7D00 83 61 00 3C */ lwz r27, 0x3c(r1) +/* 801CADA4 001C7D04 83 41 00 40 */ lwz r26, 0x40(r1) +/* 801CADA8 001C7D08 83 21 00 44 */ lwz r25, 0x44(r1) +/* 801CADAC 001C7D0C 83 01 00 48 */ lwz r24, 0x48(r1) +/* 801CADB0 001C7D10 41 82 00 B0 */ beq lbl_801CAE60 +/* 801CADB4 001C7D14 7C 1D 00 00 */ cmpw r29, r0 +/* 801CADB8 001C7D18 40 81 00 70 */ ble lbl_801CAE28 +/* 801CADBC 001C7D1C 7F A4 EB 78 */ mr r4, r29 +/* 801CADC0 001C7D20 38 7F 01 78 */ addi r3, r31, 0x178 +/* 801CADC4 001C7D24 48 00 0B 65 */ bl "reserve__Q24rstl50vector<13CPFRegionData,Q24rstl17rmemory_allocator>Fi" +/* 801CADC8 001C7D28 80 9F 01 7C */ lwz r4, 0x17c(r31) +/* 801CADCC 001C7D2C 80 7F 01 84 */ lwz r3, 0x184(r31) +/* 801CADD0 001C7D30 1C 04 00 30 */ mulli r0, r4, 0x30 +/* 801CADD4 001C7D34 7C 84 E8 51 */ subf. r4, r4, r29 +/* 801CADD8 001C7D38 7C 63 02 14 */ add r3, r3, r0 +/* 801CADDC 001C7D3C 7C 89 03 A6 */ mtctr r4 +/* 801CADE0 001C7D40 40 81 00 7C */ ble lbl_801CAE5C +lbl_801CADE4: +/* 801CADE4 001C7D44 28 03 00 00 */ cmplwi r3, 0 +/* 801CADE8 001C7D48 41 82 00 34 */ beq lbl_801CAE1C +/* 801CADEC 001C7D4C D3 E3 00 00 */ stfs f31, 0(r3) +/* 801CADF0 001C7D50 D3 C3 00 04 */ stfs f30, 4(r3) +/* 801CADF4 001C7D54 D3 A3 00 08 */ stfs f29, 8(r3) +/* 801CADF8 001C7D58 D3 83 00 0C */ stfs f28, 0xc(r3) +/* 801CADFC 001C7D5C 93 83 00 10 */ stw r28, 0x10(r3) +/* 801CAE00 001C7D60 D3 63 00 14 */ stfs f27, 0x14(r3) +/* 801CAE04 001C7D64 D3 43 00 18 */ stfs f26, 0x18(r3) +/* 801CAE08 001C7D68 D3 23 00 1C */ stfs f25, 0x1c(r3) +/* 801CAE0C 001C7D6C 93 63 00 20 */ stw r27, 0x20(r3) +/* 801CAE10 001C7D70 93 43 00 24 */ stw r26, 0x24(r3) +/* 801CAE14 001C7D74 93 23 00 28 */ stw r25, 0x28(r3) +/* 801CAE18 001C7D78 93 03 00 2C */ stw r24, 0x2c(r3) +lbl_801CAE1C: +/* 801CAE1C 001C7D7C 38 63 00 30 */ addi r3, r3, 0x30 +/* 801CAE20 001C7D80 42 00 FF C4 */ bdnz lbl_801CADE4 +/* 801CAE24 001C7D84 48 00 00 38 */ b lbl_801CAE5C +lbl_801CAE28: +/* 801CAE28 001C7D88 1C 00 00 30 */ mulli r0, r0, 0x30 +/* 801CAE2C 001C7D8C 80 9F 01 84 */ lwz r4, 0x184(r31) +/* 801CAE30 001C7D90 7C 64 02 14 */ add r3, r4, r0 +/* 801CAE34 001C7D94 1C 1D 00 30 */ mulli r0, r29, 0x30 +/* 801CAE38 001C7D98 90 61 00 14 */ stw r3, 0x14(r1) +/* 801CAE3C 001C7D9C 90 61 00 10 */ stw r3, 0x10(r1) +/* 801CAE40 001C7DA0 7C 84 02 14 */ add r4, r4, r0 +/* 801CAE44 001C7DA4 90 81 00 0C */ stw r4, 0xc(r1) +/* 801CAE48 001C7DA8 90 81 00 08 */ stw r4, 8(r1) +/* 801CAE4C 001C7DAC 48 00 00 08 */ b lbl_801CAE54 +lbl_801CAE50: +/* 801CAE50 001C7DB0 38 84 00 30 */ addi r4, r4, 0x30 +lbl_801CAE54: +/* 801CAE54 001C7DB4 7C 04 18 40 */ cmplw r4, r3 +/* 801CAE58 001C7DB8 40 82 FF F8 */ bne lbl_801CAE50 +lbl_801CAE5C: +/* 801CAE5C 001C7DBC 93 BF 01 7C */ stw r29, 0x17c(r31) +lbl_801CAE60: +/* 801CAE60 001C7DC0 3B 00 00 00 */ li r24, 0 +/* 801CAE64 001C7DC4 3B 20 00 00 */ li r25, 0 +/* 801CAE68 001C7DC8 93 01 00 18 */ stw r24, 0x18(r1) +/* 801CAE6C 001C7DCC 48 00 00 20 */ b lbl_801CAE8C +lbl_801CAE70: +/* 801CAE70 001C7DD0 80 1F 01 54 */ lwz r0, 0x154(r31) +/* 801CAE74 001C7DD4 7F E4 FB 78 */ mr r4, r31 +/* 801CAE78 001C7DD8 38 A1 00 18 */ addi r5, r1, 0x18 +/* 801CAE7C 001C7DDC 7C 60 C2 14 */ add r3, r0, r24 +/* 801CAE80 001C7DE0 4B FF F2 1D */ bl Fixup__9CPFRegionFR7CPFAreaRi +/* 801CAE84 001C7DE4 3B 18 00 50 */ addi r24, r24, 0x50 +/* 801CAE88 001C7DE8 3B 39 00 01 */ addi r25, r25, 1 +lbl_801CAE8C: +/* 801CAE8C 001C7DEC 7C 19 E8 00 */ cmpw r25, r29 +/* 801CAE90 001C7DF0 41 80 FF E0 */ blt lbl_801CAE70 +/* 801CAE94 001C7DF4 80 01 00 18 */ lwz r0, 0x18(r1) +/* 801CAE98 001C7DF8 38 80 00 04 */ li r4, 4 +/* 801CAE9C 001C7DFC 2C 00 00 04 */ cmpwi r0, 4 +/* 801CAEA0 001C7E00 40 81 00 08 */ ble lbl_801CAEA8 +/* 801CAEA4 001C7E04 7C 04 03 78 */ mr r4, r0 +lbl_801CAEA8: +/* 801CAEA8 001C7E08 90 81 00 18 */ stw r4, 0x18(r1) +/* 801CAEAC 001C7E0C 38 7F 00 10 */ addi r3, r31, 0x10 +/* 801CAEB0 001C7E10 4B E9 2E 49 */ bl "reserve__Q24rstl45vector<9CVector3f,Q24rstl17rmemory_allocator>Fi" +/* 801CAEB4 001C7E14 38 1D FF FF */ addi r0, r29, -1 +/* 801CAEB8 001C7E18 39 00 00 00 */ li r8, 0 +/* 801CAEBC 001C7E1C 7C 7D 01 D6 */ mullw r3, r29, r0 +/* 801CAEC0 001C7E20 54 60 0F FE */ srwi r0, r3, 0x1f +/* 801CAEC4 001C7E24 7C 00 1A 14 */ add r0, r0, r3 +/* 801CAEC8 001C7E28 7C 03 0E 70 */ srawi r3, r0, 1 +/* 801CAECC 001C7E2C 38 03 00 1F */ addi r0, r3, 0x1f +/* 801CAED0 001C7E30 7C 00 2E 70 */ srawi r0, r0, 5 +/* 801CAED4 001C7E34 7C A0 01 94 */ addze r5, r0 +/* 801CAED8 001C7E38 7C 7D E9 D6 */ mullw r3, r29, r29 +/* 801CAEDC 001C7E3C 90 BF 01 68 */ stw r5, 0x168(r31) +/* 801CAEE0 001C7E40 54 A4 10 3A */ slwi r4, r5, 2 +/* 801CAEE4 001C7E44 93 DF 01 6C */ stw r30, 0x16c(r31) +/* 801CAEE8 001C7E48 7F DE 22 14 */ add r30, r30, r4 +/* 801CAEEC 001C7E4C 90 BF 01 70 */ stw r5, 0x170(r31) +/* 801CAEF0 001C7E50 38 03 00 1F */ addi r0, r3, 0x1f +/* 801CAEF4 001C7E54 7F C3 F3 78 */ mr r3, r30 +/* 801CAEF8 001C7E58 7C 00 2E 70 */ srawi r0, r0, 5 +/* 801CAEFC 001C7E5C 7F DE 22 14 */ add r30, r30, r4 +/* 801CAF00 001C7E60 7C 00 01 94 */ addze r0, r0 +/* 801CAF04 001C7E64 90 7F 01 74 */ stw r3, 0x174(r31) +/* 801CAF08 001C7E68 7C 05 00 50 */ subf r0, r5, r0 +/* 801CAF0C 001C7E6C 54 00 18 38 */ slwi r0, r0, 3 +/* 801CAF10 001C7E70 7F DE 02 14 */ add r30, r30, r0 +/* 801CAF14 001C7E74 80 7E 00 00 */ lwz r3, 0(r30) +/* 801CAF18 001C7E78 3B DE 00 04 */ addi r30, r30, 4 +/* 801CAF1C 001C7E7C 90 7F 01 60 */ stw r3, 0x160(r31) +/* 801CAF20 001C7E80 2C 03 00 00 */ cmpwi r3, 0 +/* 801CAF24 001C7E84 54 60 10 3A */ slwi r0, r3, 2 +/* 801CAF28 001C7E88 93 DF 01 64 */ stw r30, 0x164(r31) +/* 801CAF2C 001C7E8C 7F DE 02 14 */ add r30, r30, r0 +/* 801CAF30 001C7E90 40 81 01 44 */ ble lbl_801CB074 +/* 801CAF34 001C7E94 2C 03 00 08 */ cmpwi r3, 8 +/* 801CAF38 001C7E98 38 A3 FF F8 */ addi r5, r3, -8 +/* 801CAF3C 001C7E9C 40 81 01 04 */ ble lbl_801CB040 +/* 801CAF40 001C7EA0 38 05 00 07 */ addi r0, r5, 7 +/* 801CAF44 001C7EA4 7D 04 43 78 */ mr r4, r8 +/* 801CAF48 001C7EA8 54 00 E8 FE */ srwi r0, r0, 3 +/* 801CAF4C 001C7EAC 7C 09 03 A6 */ mtctr r0 +/* 801CAF50 001C7EB0 2C 05 00 00 */ cmpwi r5, 0 +/* 801CAF54 001C7EB4 40 81 00 EC */ ble lbl_801CB040 +lbl_801CAF58: +/* 801CAF58 001C7EB8 81 7F 01 64 */ lwz r11, 0x164(r31) +/* 801CAF5C 001C7EBC 39 84 00 04 */ addi r12, r4, 4 +/* 801CAF60 001C7EC0 81 5F 01 54 */ lwz r10, 0x154(r31) +/* 801CAF64 001C7EC4 3B 04 00 08 */ addi r24, r4, 8 +/* 801CAF68 001C7EC8 7C CB 20 2E */ lwzx r6, r11, r4 +/* 801CAF6C 001C7ECC 3B 24 00 0C */ addi r25, r4, 0xc +/* 801CAF70 001C7ED0 38 04 00 10 */ addi r0, r4, 0x10 +/* 801CAF74 001C7ED4 38 A4 00 14 */ addi r5, r4, 0x14 +/* 801CAF78 001C7ED8 1D 26 00 50 */ mulli r9, r6, 0x50 +/* 801CAF7C 001C7EDC 38 C4 00 18 */ addi r6, r4, 0x18 +/* 801CAF80 001C7EE0 38 E4 00 1C */ addi r7, r4, 0x1c +/* 801CAF84 001C7EE4 39 08 00 08 */ addi r8, r8, 8 +/* 801CAF88 001C7EE8 7D 2A 4A 14 */ add r9, r10, r9 +/* 801CAF8C 001C7EEC 7D 2B 21 2E */ stwx r9, r11, r4 +/* 801CAF90 001C7EF0 38 84 00 20 */ addi r4, r4, 0x20 +/* 801CAF94 001C7EF4 81 7F 01 64 */ lwz r11, 0x164(r31) +/* 801CAF98 001C7EF8 81 5F 01 54 */ lwz r10, 0x154(r31) +/* 801CAF9C 001C7EFC 7D 2B 60 2E */ lwzx r9, r11, r12 +/* 801CAFA0 001C7F00 1D 29 00 50 */ mulli r9, r9, 0x50 +/* 801CAFA4 001C7F04 7D 2A 4A 14 */ add r9, r10, r9 +/* 801CAFA8 001C7F08 7D 2B 61 2E */ stwx r9, r11, r12 +/* 801CAFAC 001C7F0C 81 7F 01 64 */ lwz r11, 0x164(r31) +/* 801CAFB0 001C7F10 81 5F 01 54 */ lwz r10, 0x154(r31) +/* 801CAFB4 001C7F14 7D 2B C0 2E */ lwzx r9, r11, r24 +/* 801CAFB8 001C7F18 1D 29 00 50 */ mulli r9, r9, 0x50 +/* 801CAFBC 001C7F1C 7D 2A 4A 14 */ add r9, r10, r9 +/* 801CAFC0 001C7F20 7D 2B C1 2E */ stwx r9, r11, r24 +/* 801CAFC4 001C7F24 81 7F 01 64 */ lwz r11, 0x164(r31) +/* 801CAFC8 001C7F28 81 5F 01 54 */ lwz r10, 0x154(r31) +/* 801CAFCC 001C7F2C 7D 2B C8 2E */ lwzx r9, r11, r25 +/* 801CAFD0 001C7F30 1D 29 00 50 */ mulli r9, r9, 0x50 +/* 801CAFD4 001C7F34 7D 2A 4A 14 */ add r9, r10, r9 +/* 801CAFD8 001C7F38 7D 2B C9 2E */ stwx r9, r11, r25 +/* 801CAFDC 001C7F3C 81 7F 01 64 */ lwz r11, 0x164(r31) +/* 801CAFE0 001C7F40 81 5F 01 54 */ lwz r10, 0x154(r31) +/* 801CAFE4 001C7F44 7D 2B 00 2E */ lwzx r9, r11, r0 +/* 801CAFE8 001C7F48 1D 29 00 50 */ mulli r9, r9, 0x50 +/* 801CAFEC 001C7F4C 7D 2A 4A 14 */ add r9, r10, r9 +/* 801CAFF0 001C7F50 7D 2B 01 2E */ stwx r9, r11, r0 +/* 801CAFF4 001C7F54 81 5F 01 64 */ lwz r10, 0x164(r31) +/* 801CAFF8 001C7F58 81 3F 01 54 */ lwz r9, 0x154(r31) +/* 801CAFFC 001C7F5C 7C 0A 28 2E */ lwzx r0, r10, r5 +/* 801CB000 001C7F60 1C 00 00 50 */ mulli r0, r0, 0x50 +/* 801CB004 001C7F64 7C 09 02 14 */ add r0, r9, r0 +/* 801CB008 001C7F68 7C 0A 29 2E */ stwx r0, r10, r5 +/* 801CB00C 001C7F6C 81 3F 01 64 */ lwz r9, 0x164(r31) +/* 801CB010 001C7F70 80 BF 01 54 */ lwz r5, 0x154(r31) +/* 801CB014 001C7F74 7C 09 30 2E */ lwzx r0, r9, r6 +/* 801CB018 001C7F78 1C 00 00 50 */ mulli r0, r0, 0x50 +/* 801CB01C 001C7F7C 7C 05 02 14 */ add r0, r5, r0 +/* 801CB020 001C7F80 7C 09 31 2E */ stwx r0, r9, r6 +/* 801CB024 001C7F84 80 DF 01 64 */ lwz r6, 0x164(r31) +/* 801CB028 001C7F88 80 BF 01 54 */ lwz r5, 0x154(r31) +/* 801CB02C 001C7F8C 7C 06 38 2E */ lwzx r0, r6, r7 +/* 801CB030 001C7F90 1C 00 00 50 */ mulli r0, r0, 0x50 +/* 801CB034 001C7F94 7C 05 02 14 */ add r0, r5, r0 +/* 801CB038 001C7F98 7C 06 39 2E */ stwx r0, r6, r7 +/* 801CB03C 001C7F9C 42 00 FF 1C */ bdnz lbl_801CAF58 +lbl_801CB040: +/* 801CB040 001C7FA0 7C 08 18 50 */ subf r0, r8, r3 +/* 801CB044 001C7FA4 55 05 10 3A */ slwi r5, r8, 2 +/* 801CB048 001C7FA8 7C 09 03 A6 */ mtctr r0 +/* 801CB04C 001C7FAC 7C 08 18 00 */ cmpw r8, r3 +/* 801CB050 001C7FB0 40 80 00 24 */ bge lbl_801CB074 +lbl_801CB054: +/* 801CB054 001C7FB4 80 9F 01 64 */ lwz r4, 0x164(r31) +/* 801CB058 001C7FB8 80 7F 01 54 */ lwz r3, 0x154(r31) +/* 801CB05C 001C7FBC 7C 04 28 2E */ lwzx r0, r4, r5 +/* 801CB060 001C7FC0 1C 00 00 50 */ mulli r0, r0, 0x50 +/* 801CB064 001C7FC4 7C 03 02 14 */ add r0, r3, r0 +/* 801CB068 001C7FC8 7C 04 29 2E */ stwx r0, r4, r5 +/* 801CB06C 001C7FCC 38 A5 00 04 */ addi r5, r5, 4 +/* 801CB070 001C7FD0 42 00 FF E4 */ bdnz lbl_801CB054 +lbl_801CB074: +/* 801CB074 001C7FD4 80 9E 00 00 */ lwz r4, 0(r30) +/* 801CB078 001C7FD8 39 00 00 00 */ li r8, 0 +/* 801CB07C 001C7FDC 38 1E 00 04 */ addi r0, r30, 4 +/* 801CB080 001C7FE0 90 9F 01 58 */ stw r4, 0x158(r31) +/* 801CB084 001C7FE4 7D 07 43 78 */ mr r7, r8 +/* 801CB088 001C7FE8 90 1F 01 5C */ stw r0, 0x15c(r31) +/* 801CB08C 001C7FEC 48 00 01 00 */ b lbl_801CB18C +lbl_801CB090: +/* 801CB090 001C7FF0 80 1F 01 5C */ lwz r0, 0x15c(r31) +/* 801CB094 001C7FF4 7C C0 3A 14 */ add r6, r0, r7 +/* 801CB098 001C7FF8 80 66 00 00 */ lwz r3, 0(r6) +/* 801CB09C 001C7FFC 7C 03 00 D0 */ neg r0, r3 +/* 801CB0A0 001C8000 7C 00 1B 78 */ or r0, r0, r3 +/* 801CB0A4 001C8004 54 00 0F FE */ srwi r0, r0, 0x1f +/* 801CB0A8 001C8008 98 06 00 00 */ stb r0, 0(r6) +/* 801CB0AC 001C800C 88 06 00 00 */ lbz r0, 0(r6) +/* 801CB0B0 001C8010 28 00 00 00 */ cmplwi r0, 0 +/* 801CB0B4 001C8014 41 82 00 28 */ beq lbl_801CB0DC +/* 801CB0B8 001C8018 80 06 00 48 */ lwz r0, 0x48(r6) +/* 801CB0BC 001C801C 2C 00 00 00 */ cmpwi r0, 0 +/* 801CB0C0 001C8020 41 82 00 C4 */ beq lbl_801CB184 +/* 801CB0C4 001C8024 80 06 00 4C */ lwz r0, 0x4c(r6) +/* 801CB0C8 001C8028 80 7F 01 64 */ lwz r3, 0x164(r31) +/* 801CB0CC 001C802C 54 00 10 3A */ slwi r0, r0, 2 +/* 801CB0D0 001C8030 7C 03 02 14 */ add r0, r3, r0 +/* 801CB0D4 001C8034 90 06 00 4C */ stw r0, 0x4c(r6) +/* 801CB0D8 001C8038 48 00 00 AC */ b lbl_801CB184 +lbl_801CB0DC: +/* 801CB0DC 001C803C 38 00 00 02 */ li r0, 2 +/* 801CB0E0 001C8040 38 A0 00 00 */ li r5, 0 +/* 801CB0E4 001C8044 7C 09 03 A6 */ mtctr r0 +lbl_801CB0E8: +/* 801CB0E8 001C8048 80 06 00 28 */ lwz r0, 0x28(r6) +/* 801CB0EC 001C804C 2C 00 00 00 */ cmpwi r0, 0 +/* 801CB0F0 001C8050 41 80 00 14 */ blt lbl_801CB104 +/* 801CB0F4 001C8054 1C 00 00 50 */ mulli r0, r0, 0x50 +/* 801CB0F8 001C8058 80 7F 01 5C */ lwz r3, 0x15c(r31) +/* 801CB0FC 001C805C 7C 03 02 14 */ add r0, r3, r0 +/* 801CB100 001C8060 48 00 00 08 */ b lbl_801CB108 +lbl_801CB104: +/* 801CB104 001C8064 38 00 00 00 */ li r0, 0 +lbl_801CB108: +/* 801CB108 001C8068 90 06 00 28 */ stw r0, 0x28(r6) +/* 801CB10C 001C806C 80 06 00 2C */ lwz r0, 0x2c(r6) +/* 801CB110 001C8070 2C 00 00 00 */ cmpwi r0, 0 +/* 801CB114 001C8074 41 80 00 14 */ blt lbl_801CB128 +/* 801CB118 001C8078 1C 00 00 50 */ mulli r0, r0, 0x50 +/* 801CB11C 001C807C 80 7F 01 5C */ lwz r3, 0x15c(r31) +/* 801CB120 001C8080 7C 03 02 14 */ add r0, r3, r0 +/* 801CB124 001C8084 48 00 00 08 */ b lbl_801CB12C +lbl_801CB128: +/* 801CB128 001C8088 38 00 00 00 */ li r0, 0 +lbl_801CB12C: +/* 801CB12C 001C808C 90 06 00 2C */ stw r0, 0x2c(r6) +/* 801CB130 001C8090 80 06 00 30 */ lwz r0, 0x30(r6) +/* 801CB134 001C8094 2C 00 00 00 */ cmpwi r0, 0 +/* 801CB138 001C8098 41 80 00 14 */ blt lbl_801CB14C +/* 801CB13C 001C809C 1C 00 00 50 */ mulli r0, r0, 0x50 +/* 801CB140 001C80A0 80 7F 01 5C */ lwz r3, 0x15c(r31) +/* 801CB144 001C80A4 7C 03 02 14 */ add r0, r3, r0 +/* 801CB148 001C80A8 48 00 00 08 */ b lbl_801CB150 +lbl_801CB14C: +/* 801CB14C 001C80AC 38 00 00 00 */ li r0, 0 +lbl_801CB150: +/* 801CB150 001C80B0 90 06 00 30 */ stw r0, 0x30(r6) +/* 801CB154 001C80B4 80 06 00 34 */ lwz r0, 0x34(r6) +/* 801CB158 001C80B8 2C 00 00 00 */ cmpwi r0, 0 +/* 801CB15C 001C80BC 41 80 00 14 */ blt lbl_801CB170 +/* 801CB160 001C80C0 1C 00 00 50 */ mulli r0, r0, 0x50 +/* 801CB164 001C80C4 80 7F 01 5C */ lwz r3, 0x15c(r31) +/* 801CB168 001C80C8 7C 03 02 14 */ add r0, r3, r0 +/* 801CB16C 001C80CC 48 00 00 08 */ b lbl_801CB174 +lbl_801CB170: +/* 801CB170 001C80D0 38 00 00 00 */ li r0, 0 +lbl_801CB174: +/* 801CB174 001C80D4 90 06 00 34 */ stw r0, 0x34(r6) +/* 801CB178 001C80D8 38 C6 00 10 */ addi r6, r6, 0x10 +/* 801CB17C 001C80DC 38 A5 00 03 */ addi r5, r5, 3 +/* 801CB180 001C80E0 42 00 FF 68 */ bdnz lbl_801CB0E8 +lbl_801CB184: +/* 801CB184 001C80E4 38 E7 00 50 */ addi r7, r7, 0x50 +/* 801CB188 001C80E8 39 08 00 01 */ addi r8, r8, 1 +lbl_801CB18C: +/* 801CB18C 001C80EC 7C 08 20 00 */ cmpw r8, r4 +/* 801CB190 001C80F0 41 80 FF 00 */ blt lbl_801CB090 +/* 801CB194 001C80F4 7F E3 FB 78 */ mr r3, r31 +/* 801CB198 001C80F8 E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 +/* 801CB19C 001C80FC CB E1 00 D0 */ lfd f31, 0xd0(r1) +/* 801CB1A0 001C8100 E3 C1 00 C8 */ psq_l f30, 200(r1), 0, qr0 +/* 801CB1A4 001C8104 CB C1 00 C0 */ lfd f30, 0xc0(r1) +/* 801CB1A8 001C8108 E3 A1 00 B8 */ psq_l f29, 184(r1), 0, qr0 +/* 801CB1AC 001C810C CB A1 00 B0 */ lfd f29, 0xb0(r1) +/* 801CB1B0 001C8110 E3 81 00 A8 */ psq_l f28, 168(r1), 0, qr0 +/* 801CB1B4 001C8114 CB 81 00 A0 */ lfd f28, 0xa0(r1) +/* 801CB1B8 001C8118 E3 61 00 98 */ psq_l f27, 152(r1), 0, qr0 +/* 801CB1BC 001C811C CB 61 00 90 */ lfd f27, 0x90(r1) +/* 801CB1C0 001C8120 E3 41 00 88 */ psq_l f26, 136(r1), 0, qr0 +/* 801CB1C4 001C8124 CB 41 00 80 */ lfd f26, 0x80(r1) +/* 801CB1C8 001C8128 E3 21 00 78 */ psq_l f25, 120(r1), 0, qr0 +/* 801CB1CC 001C812C CB 21 00 70 */ lfd f25, 0x70(r1) +/* 801CB1D0 001C8130 BB 01 00 50 */ lmw r24, 0x50(r1) +/* 801CB1D4 001C8134 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 801CB1D8 001C8138 7C 08 03 A6 */ mtlr r0 +/* 801CB1DC 001C813C 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 801CB1E0 001C8140 4E 80 00 20 */ blr + +.global "GetRegionListList__13CPFAreaOctreeFRQ24rstl54reserved_vector,32>RC9CVector3ff" +"GetRegionListList__13CPFAreaOctreeFRQ24rstl54reserved_vector,32>RC9CVector3ff": +/* 801CB1E4 001C8144 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801CB1E8 001C8148 7C 08 02 A6 */ mflr r0 +/* 801CB1EC 001C814C 90 01 00 64 */ stw r0, 0x64(r1) +/* 801CB1F0 001C8150 DB E1 00 50 */ stfd f31, 0x50(r1) +/* 801CB1F4 001C8154 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 801CB1F8 001C8158 DB C1 00 40 */ stfd f30, 0x40(r1) +/* 801CB1FC 001C815C F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0 +/* 801CB200 001C8160 BE E1 00 1C */ stmw r23, 0x1c(r1) +/* 801CB204 001C8164 7C 9B 23 78 */ mr r27, r4 +/* 801CB208 001C8168 80 84 00 00 */ lwz r4, 0(r4) +/* 801CB20C 001C816C FF E0 08 90 */ fmr f31, f1 +/* 801CB210 001C8170 7C BC 2B 78 */ mr r28, r5 +/* 801CB214 001C8174 2C 04 00 20 */ cmpwi r4, 0x20 +/* 801CB218 001C8178 40 80 03 18 */ bge lbl_801CB530 +/* 801CB21C 001C817C 88 03 00 00 */ lbz r0, 0(r3) +/* 801CB220 001C8180 28 00 00 00 */ cmplwi r0, 0 +/* 801CB224 001C8184 41 82 00 2C */ beq lbl_801CB250 +/* 801CB228 001C8188 54 80 10 3A */ slwi r0, r4, 2 +/* 801CB22C 001C818C 38 63 00 48 */ addi r3, r3, 0x48 +/* 801CB230 001C8190 7C 9B 02 14 */ add r4, r27, r0 +/* 801CB234 001C8194 34 84 00 04 */ addic. r4, r4, 4 +/* 801CB238 001C8198 41 82 00 08 */ beq lbl_801CB240 +/* 801CB23C 001C819C 90 64 00 00 */ stw r3, 0(r4) +lbl_801CB240: +/* 801CB240 001C81A0 80 7B 00 00 */ lwz r3, 0(r27) +/* 801CB244 001C81A4 38 03 00 01 */ addi r0, r3, 1 +/* 801CB248 001C81A8 90 1B 00 00 */ stw r0, 0(r27) +/* 801CB24C 001C81AC 48 00 02 E4 */ b lbl_801CB530 +lbl_801CB250: +/* 801CB250 001C81B0 3B A0 00 00 */ li r29, 0 +/* 801CB254 001C81B4 7C 7F 1B 78 */ mr r31, r3 +lbl_801CB258: +/* 801CB258 001C81B8 83 DF 00 28 */ lwz r30, 0x28(r31) +/* 801CB25C 001C81BC 38 00 00 00 */ li r0, 0 +/* 801CB260 001C81C0 C0 3C 00 00 */ lfs f1, 0(r28) +/* 801CB264 001C81C4 C0 1E 00 04 */ lfs f0, 4(r30) +/* 801CB268 001C81C8 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 801CB26C 001C81CC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801CB270 001C81D0 4C 41 13 82 */ cror 2, 1, 2 +/* 801CB274 001C81D4 40 82 00 74 */ bne lbl_801CB2E8 +/* 801CB278 001C81D8 C0 1E 00 10 */ lfs f0, 0x10(r30) +/* 801CB27C 001C81DC EC 1F 00 2A */ fadds f0, f31, f0 +/* 801CB280 001C81E0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801CB284 001C81E4 4C 40 13 82 */ cror 2, 0, 2 +/* 801CB288 001C81E8 40 82 00 60 */ bne lbl_801CB2E8 +/* 801CB28C 001C81EC C0 1E 00 08 */ lfs f0, 8(r30) +/* 801CB290 001C81F0 C0 3C 00 04 */ lfs f1, 4(r28) +/* 801CB294 001C81F4 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 801CB298 001C81F8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801CB29C 001C81FC 4C 41 13 82 */ cror 2, 1, 2 +/* 801CB2A0 001C8200 40 82 00 48 */ bne lbl_801CB2E8 +/* 801CB2A4 001C8204 C0 1E 00 14 */ lfs f0, 0x14(r30) +/* 801CB2A8 001C8208 EC 1F 00 2A */ fadds f0, f31, f0 +/* 801CB2AC 001C820C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801CB2B0 001C8210 4C 40 13 82 */ cror 2, 0, 2 +/* 801CB2B4 001C8214 40 82 00 34 */ bne lbl_801CB2E8 +/* 801CB2B8 001C8218 C0 1E 00 0C */ lfs f0, 0xc(r30) +/* 801CB2BC 001C821C C0 3C 00 08 */ lfs f1, 8(r28) +/* 801CB2C0 001C8220 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 801CB2C4 001C8224 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801CB2C8 001C8228 4C 41 13 82 */ cror 2, 1, 2 +/* 801CB2CC 001C822C 40 82 00 1C */ bne lbl_801CB2E8 +/* 801CB2D0 001C8230 C0 1E 00 18 */ lfs f0, 0x18(r30) +/* 801CB2D4 001C8234 EC 1F 00 2A */ fadds f0, f31, f0 +/* 801CB2D8 001C8238 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801CB2DC 001C823C 4C 40 13 82 */ cror 2, 0, 2 +/* 801CB2E0 001C8240 40 82 00 08 */ bne lbl_801CB2E8 +/* 801CB2E4 001C8244 38 00 00 01 */ li r0, 1 +lbl_801CB2E8: +/* 801CB2E8 001C8248 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 801CB2EC 001C824C 41 82 02 34 */ beq lbl_801CB520 +/* 801CB2F0 001C8250 80 1B 00 00 */ lwz r0, 0(r27) +/* 801CB2F4 001C8254 2C 00 00 20 */ cmpwi r0, 0x20 +/* 801CB2F8 001C8258 40 80 02 28 */ bge lbl_801CB520 +/* 801CB2FC 001C825C 88 1E 00 00 */ lbz r0, 0(r30) +/* 801CB300 001C8260 28 00 00 00 */ cmplwi r0, 0 +/* 801CB304 001C8264 41 82 00 38 */ beq lbl_801CB33C +/* 801CB308 001C8268 38 1E 00 48 */ addi r0, r30, 0x48 +/* 801CB30C 001C826C 7F 63 DB 78 */ mr r3, r27 +/* 801CB310 001C8270 90 01 00 0C */ stw r0, 0xc(r1) +/* 801CB314 001C8274 48 00 03 45 */ bl "data__Q24rstl54reserved_vector,32>Fv" +/* 801CB318 001C8278 80 1B 00 00 */ lwz r0, 0(r27) +/* 801CB31C 001C827C 38 81 00 0C */ addi r4, r1, 0xc +/* 801CB320 001C8280 54 00 10 3A */ slwi r0, r0, 2 +/* 801CB324 001C8284 7C 63 02 14 */ add r3, r3, r0 +/* 801CB328 001C8288 48 00 03 1D */ bl sub_801cb644 +/* 801CB32C 001C828C 80 7B 00 00 */ lwz r3, 0(r27) +/* 801CB330 001C8290 38 03 00 01 */ addi r0, r3, 1 +/* 801CB334 001C8294 90 1B 00 00 */ stw r0, 0(r27) +/* 801CB338 001C8298 48 00 01 E8 */ b lbl_801CB520 +lbl_801CB33C: +/* 801CB33C 001C829C 3B 20 00 00 */ li r25, 0 +lbl_801CB340: +/* 801CB340 001C82A0 83 1E 00 28 */ lwz r24, 0x28(r30) +/* 801CB344 001C82A4 3B 40 00 00 */ li r26, 0 +/* 801CB348 001C82A8 38 78 00 04 */ addi r3, r24, 4 +/* 801CB34C 001C82AC 48 00 02 F1 */ bl nullsub_44 +/* 801CB350 001C82B0 38 80 00 00 */ li r4, 0 +/* 801CB354 001C82B4 48 00 02 ED */ bl nullsub_45 +/* 801CB358 001C82B8 C0 03 00 00 */ lfs f0, 0(r3) +/* 801CB35C 001C82BC 7F 83 E3 78 */ mr r3, r28 +/* 801CB360 001C82C0 38 80 00 00 */ li r4, 0 +/* 801CB364 001C82C4 EF C0 F8 28 */ fsubs f30, f0, f31 +/* 801CB368 001C82C8 48 00 02 D9 */ bl nullsub_45 +/* 801CB36C 001C82CC C0 03 00 00 */ lfs f0, 0(r3) +/* 801CB370 001C82D0 FC 00 F0 40 */ fcmpo cr0, f0, f30 +/* 801CB374 001C82D4 4C 41 13 82 */ cror 2, 1, 2 +/* 801CB378 001C82D8 40 82 01 0C */ bne lbl_801CB484 +/* 801CB37C 001C82DC 38 78 00 04 */ addi r3, r24, 4 +/* 801CB380 001C82E0 48 00 02 B5 */ bl sub_801cb634 +/* 801CB384 001C82E4 38 80 00 00 */ li r4, 0 +/* 801CB388 001C82E8 48 00 02 B9 */ bl nullsub_45 +/* 801CB38C 001C82EC C0 03 00 00 */ lfs f0, 0(r3) +/* 801CB390 001C82F0 7F 83 E3 78 */ mr r3, r28 +/* 801CB394 001C82F4 38 80 00 00 */ li r4, 0 +/* 801CB398 001C82F8 EF DF 00 2A */ fadds f30, f31, f0 +/* 801CB39C 001C82FC 48 00 02 A5 */ bl nullsub_45 +/* 801CB3A0 001C8300 C0 03 00 00 */ lfs f0, 0(r3) +/* 801CB3A4 001C8304 FC 00 F0 40 */ fcmpo cr0, f0, f30 +/* 801CB3A8 001C8308 4C 40 13 82 */ cror 2, 0, 2 +/* 801CB3AC 001C830C 40 82 00 D8 */ bne lbl_801CB484 +/* 801CB3B0 001C8310 38 78 00 04 */ addi r3, r24, 4 +/* 801CB3B4 001C8314 48 00 02 89 */ bl nullsub_44 +/* 801CB3B8 001C8318 38 80 00 01 */ li r4, 1 +/* 801CB3BC 001C831C 48 00 02 71 */ bl sub_801cb62c +/* 801CB3C0 001C8320 C0 03 00 00 */ lfs f0, 0(r3) +/* 801CB3C4 001C8324 7F 83 E3 78 */ mr r3, r28 +/* 801CB3C8 001C8328 38 80 00 01 */ li r4, 1 +/* 801CB3CC 001C832C EF C0 F8 28 */ fsubs f30, f0, f31 +/* 801CB3D0 001C8330 48 00 02 5D */ bl sub_801cb62c +/* 801CB3D4 001C8334 C0 03 00 00 */ lfs f0, 0(r3) +/* 801CB3D8 001C8338 FC 00 F0 40 */ fcmpo cr0, f0, f30 +/* 801CB3DC 001C833C 4C 41 13 82 */ cror 2, 1, 2 +/* 801CB3E0 001C8340 40 82 00 A4 */ bne lbl_801CB484 +/* 801CB3E4 001C8344 38 78 00 04 */ addi r3, r24, 4 +/* 801CB3E8 001C8348 48 00 02 4D */ bl sub_801cb634 +/* 801CB3EC 001C834C 38 80 00 01 */ li r4, 1 +/* 801CB3F0 001C8350 48 00 02 3D */ bl sub_801cb62c +/* 801CB3F4 001C8354 C0 03 00 00 */ lfs f0, 0(r3) +/* 801CB3F8 001C8358 7F 83 E3 78 */ mr r3, r28 +/* 801CB3FC 001C835C 38 80 00 01 */ li r4, 1 +/* 801CB400 001C8360 EF DF 00 2A */ fadds f30, f31, f0 +/* 801CB404 001C8364 48 00 02 29 */ bl sub_801cb62c +/* 801CB408 001C8368 C0 03 00 00 */ lfs f0, 0(r3) +/* 801CB40C 001C836C FC 00 F0 40 */ fcmpo cr0, f0, f30 +/* 801CB410 001C8370 4C 40 13 82 */ cror 2, 0, 2 +/* 801CB414 001C8374 40 82 00 70 */ bne lbl_801CB484 +/* 801CB418 001C8378 38 78 00 04 */ addi r3, r24, 4 +/* 801CB41C 001C837C 48 00 02 21 */ bl nullsub_44 +/* 801CB420 001C8380 38 80 00 02 */ li r4, 2 +/* 801CB424 001C8384 48 00 02 01 */ bl sub_801cb624 +/* 801CB428 001C8388 C0 03 00 00 */ lfs f0, 0(r3) +/* 801CB42C 001C838C 7F 83 E3 78 */ mr r3, r28 +/* 801CB430 001C8390 38 80 00 02 */ li r4, 2 +/* 801CB434 001C8394 EF C0 F8 28 */ fsubs f30, f0, f31 +/* 801CB438 001C8398 48 00 01 ED */ bl sub_801cb624 +/* 801CB43C 001C839C C0 03 00 00 */ lfs f0, 0(r3) +/* 801CB440 001C83A0 FC 00 F0 40 */ fcmpo cr0, f0, f30 +/* 801CB444 001C83A4 4C 41 13 82 */ cror 2, 1, 2 +/* 801CB448 001C83A8 40 82 00 3C */ bne lbl_801CB484 +/* 801CB44C 001C83AC 38 78 00 04 */ addi r3, r24, 4 +/* 801CB450 001C83B0 48 00 01 E5 */ bl sub_801cb634 +/* 801CB454 001C83B4 38 80 00 02 */ li r4, 2 +/* 801CB458 001C83B8 48 00 01 CD */ bl sub_801cb624 +/* 801CB45C 001C83BC C0 03 00 00 */ lfs f0, 0(r3) +/* 801CB460 001C83C0 7F 83 E3 78 */ mr r3, r28 +/* 801CB464 001C83C4 38 80 00 02 */ li r4, 2 +/* 801CB468 001C83C8 EF DF 00 2A */ fadds f30, f31, f0 +/* 801CB46C 001C83CC 48 00 01 B9 */ bl sub_801cb624 +/* 801CB470 001C83D0 C0 03 00 00 */ lfs f0, 0(r3) +/* 801CB474 001C83D4 FC 00 F0 40 */ fcmpo cr0, f0, f30 +/* 801CB478 001C83D8 4C 40 13 82 */ cror 2, 0, 2 +/* 801CB47C 001C83DC 40 82 00 08 */ bne lbl_801CB484 +/* 801CB480 001C83E0 3B 40 00 01 */ li r26, 1 +lbl_801CB484: +/* 801CB484 001C83E4 57 40 06 3F */ clrlwi. r0, r26, 0x18 +/* 801CB488 001C83E8 41 82 00 88 */ beq lbl_801CB510 +/* 801CB48C 001C83EC 82 FE 00 28 */ lwz r23, 0x28(r30) +/* 801CB490 001C83F0 7F 63 DB 78 */ mr r3, r27 +/* 801CB494 001C83F4 48 00 01 81 */ bl "capacity__Q24rstl54reserved_vector,32>CFv" +/* 801CB498 001C83F8 7C 7A 1B 78 */ mr r26, r3 +/* 801CB49C 001C83FC 7F 63 DB 78 */ mr r3, r27 +/* 801CB4A0 001C8400 48 00 01 7D */ bl "size__Q24rstl54reserved_vector,32>CFv" +/* 801CB4A4 001C8404 7C 03 D0 00 */ cmpw r3, r26 +/* 801CB4A8 001C8408 40 80 00 68 */ bge lbl_801CB510 +/* 801CB4AC 001C840C 88 17 00 00 */ lbz r0, 0(r23) +/* 801CB4B0 001C8410 28 00 00 00 */ cmplwi r0, 0 +/* 801CB4B4 001C8414 41 82 00 1C */ beq lbl_801CB4D0 +/* 801CB4B8 001C8418 38 17 00 48 */ addi r0, r23, 0x48 +/* 801CB4BC 001C841C 7F 63 DB 78 */ mr r3, r27 +/* 801CB4C0 001C8420 90 01 00 08 */ stw r0, 8(r1) +/* 801CB4C4 001C8424 38 81 00 08 */ addi r4, r1, 8 +/* 801CB4C8 001C8428 48 00 01 21 */ bl "push_back__Q24rstl54reserved_vector,32>FRCP31prereserved_vector" +/* 801CB4CC 001C842C 48 00 00 44 */ b lbl_801CB510 +lbl_801CB4D0: +/* 801CB4D0 001C8430 3B 00 00 00 */ li r24, 0 +lbl_801CB4D4: +/* 801CB4D4 001C8434 FC 20 F8 90 */ fmr f1, f31 +/* 801CB4D8 001C8438 80 77 00 28 */ lwz r3, 0x28(r23) +/* 801CB4DC 001C843C 7F 84 E3 78 */ mr r4, r28 +/* 801CB4E0 001C8440 48 00 00 75 */ bl IsPointInsidePaddedAABox__13CPFAreaOctreeCFRC9CVector3ff +/* 801CB4E4 001C8444 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801CB4E8 001C8448 41 82 00 18 */ beq lbl_801CB500 +/* 801CB4EC 001C844C FC 20 F8 90 */ fmr f1, f31 +/* 801CB4F0 001C8450 80 77 00 28 */ lwz r3, 0x28(r23) +/* 801CB4F4 001C8454 7F 64 DB 78 */ mr r4, r27 +/* 801CB4F8 001C8458 7F 85 E3 78 */ mr r5, r28 +/* 801CB4FC 001C845C 4B FF FC E9 */ bl "GetRegionListList__13CPFAreaOctreeFRQ24rstl54reserved_vector,32>RC9CVector3ff" +lbl_801CB500: +/* 801CB500 001C8460 3B 18 00 01 */ addi r24, r24, 1 +/* 801CB504 001C8464 3A F7 00 04 */ addi r23, r23, 4 +/* 801CB508 001C8468 2C 18 00 08 */ cmpwi r24, 8 +/* 801CB50C 001C846C 41 80 FF C8 */ blt lbl_801CB4D4 +lbl_801CB510: +/* 801CB510 001C8470 3B 39 00 01 */ addi r25, r25, 1 +/* 801CB514 001C8474 3B DE 00 04 */ addi r30, r30, 4 +/* 801CB518 001C8478 2C 19 00 08 */ cmpwi r25, 8 +/* 801CB51C 001C847C 41 80 FE 24 */ blt lbl_801CB340 +lbl_801CB520: +/* 801CB520 001C8480 3B BD 00 01 */ addi r29, r29, 1 +/* 801CB524 001C8484 3B FF 00 04 */ addi r31, r31, 4 +/* 801CB528 001C8488 2C 1D 00 08 */ cmpwi r29, 8 +/* 801CB52C 001C848C 41 80 FD 2C */ blt lbl_801CB258 +lbl_801CB530: +/* 801CB530 001C8490 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 +/* 801CB534 001C8494 CB E1 00 50 */ lfd f31, 0x50(r1) +/* 801CB538 001C8498 E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0 +/* 801CB53C 001C849C CB C1 00 40 */ lfd f30, 0x40(r1) +/* 801CB540 001C84A0 BA E1 00 1C */ lmw r23, 0x1c(r1) +/* 801CB544 001C84A4 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801CB548 001C84A8 7C 08 03 A6 */ mtlr r0 +/* 801CB54C 001C84AC 38 21 00 60 */ addi r1, r1, 0x60 +/* 801CB550 001C84B0 4E 80 00 20 */ blr + +.global IsPointInsidePaddedAABox__13CPFAreaOctreeCFRC9CVector3ff +IsPointInsidePaddedAABox__13CPFAreaOctreeCFRC9CVector3ff: +/* 801CB554 001C84B4 C0 03 00 04 */ lfs f0, 4(r3) +/* 801CB558 001C84B8 38 00 00 00 */ li r0, 0 +/* 801CB55C 001C84BC C0 44 00 00 */ lfs f2, 0(r4) +/* 801CB560 001C84C0 EC 00 08 28 */ fsubs f0, f0, f1 +/* 801CB564 001C84C4 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801CB568 001C84C8 4C 41 13 82 */ cror 2, 1, 2 +/* 801CB56C 001C84CC 40 82 00 74 */ bne lbl_801CB5E0 +/* 801CB570 001C84D0 C0 03 00 10 */ lfs f0, 0x10(r3) +/* 801CB574 001C84D4 EC 01 00 2A */ fadds f0, f1, f0 +/* 801CB578 001C84D8 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801CB57C 001C84DC 4C 40 13 82 */ cror 2, 0, 2 +/* 801CB580 001C84E0 40 82 00 60 */ bne lbl_801CB5E0 +/* 801CB584 001C84E4 C0 03 00 08 */ lfs f0, 8(r3) +/* 801CB588 001C84E8 C0 44 00 04 */ lfs f2, 4(r4) +/* 801CB58C 001C84EC EC 00 08 28 */ fsubs f0, f0, f1 +/* 801CB590 001C84F0 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801CB594 001C84F4 4C 41 13 82 */ cror 2, 1, 2 +/* 801CB598 001C84F8 40 82 00 48 */ bne lbl_801CB5E0 +/* 801CB59C 001C84FC C0 03 00 14 */ lfs f0, 0x14(r3) +/* 801CB5A0 001C8500 EC 01 00 2A */ fadds f0, f1, f0 +/* 801CB5A4 001C8504 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801CB5A8 001C8508 4C 40 13 82 */ cror 2, 0, 2 +/* 801CB5AC 001C850C 40 82 00 34 */ bne lbl_801CB5E0 +/* 801CB5B0 001C8510 C0 03 00 0C */ lfs f0, 0xc(r3) +/* 801CB5B4 001C8514 C0 44 00 08 */ lfs f2, 8(r4) +/* 801CB5B8 001C8518 EC 00 08 28 */ fsubs f0, f0, f1 +/* 801CB5BC 001C851C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801CB5C0 001C8520 4C 41 13 82 */ cror 2, 1, 2 +/* 801CB5C4 001C8524 40 82 00 1C */ bne lbl_801CB5E0 +/* 801CB5C8 001C8528 C0 03 00 18 */ lfs f0, 0x18(r3) +/* 801CB5CC 001C852C EC 01 00 2A */ fadds f0, f1, f0 +/* 801CB5D0 001C8530 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801CB5D4 001C8534 4C 40 13 82 */ cror 2, 0, 2 +/* 801CB5D8 001C8538 40 82 00 08 */ bne lbl_801CB5E0 +/* 801CB5DC 001C853C 38 00 00 01 */ li r0, 1 +lbl_801CB5E0: +/* 801CB5E0 001C8540 7C 03 03 78 */ mr r3, r0 +/* 801CB5E4 001C8544 4E 80 00 20 */ blr + +.global "push_back__Q24rstl54reserved_vector,32>FRCP31prereserved_vector" +"push_back__Q24rstl54reserved_vector,32>FRCP31prereserved_vector": +/* 801CB5E8 001C8548 80 03 00 00 */ lwz r0, 0(r3) +/* 801CB5EC 001C854C 54 00 10 3A */ slwi r0, r0, 2 +/* 801CB5F0 001C8550 7C A3 02 14 */ add r5, r3, r0 +/* 801CB5F4 001C8554 34 A5 00 04 */ addic. r5, r5, 4 +/* 801CB5F8 001C8558 41 82 00 0C */ beq lbl_801CB604 +/* 801CB5FC 001C855C 80 04 00 00 */ lwz r0, 0(r4) +/* 801CB600 001C8560 90 05 00 00 */ stw r0, 0(r5) +lbl_801CB604: +/* 801CB604 001C8564 80 83 00 00 */ lwz r4, 0(r3) +/* 801CB608 001C8568 38 04 00 01 */ addi r0, r4, 1 +/* 801CB60C 001C856C 90 03 00 00 */ stw r0, 0(r3) +/* 801CB610 001C8570 4E 80 00 20 */ blr + +.global "capacity__Q24rstl54reserved_vector,32>CFv" +"capacity__Q24rstl54reserved_vector,32>CFv": +/* 801CB614 001C8574 38 60 00 20 */ li r3, 0x20 +/* 801CB618 001C8578 4E 80 00 20 */ blr + +.global "size__Q24rstl54reserved_vector,32>CFv" +"size__Q24rstl54reserved_vector,32>CFv": +/* 801CB61C 001C857C 80 63 00 00 */ lwz r3, 0(r3) +/* 801CB620 001C8580 4E 80 00 20 */ blr + +.global sub_801cb624 +sub_801cb624: +/* 801CB624 001C8584 38 63 00 08 */ addi r3, r3, 8 +/* 801CB628 001C8588 4E 80 00 20 */ blr + +.global sub_801cb62c +sub_801cb62c: +/* 801CB62C 001C858C 38 63 00 04 */ addi r3, r3, 4 +/* 801CB630 001C8590 4E 80 00 20 */ blr + +.global sub_801cb634 +sub_801cb634: +/* 801CB634 001C8594 38 63 00 0C */ addi r3, r3, 0xc +/* 801CB638 001C8598 4E 80 00 20 */ blr + +.global nullsub_44 +nullsub_44: +/* 801CB63C 001C859C 4E 80 00 20 */ blr + +.global nullsub_45 +nullsub_45: +/* 801CB640 001C85A0 4E 80 00 20 */ blr + +.global sub_801cb644 +sub_801cb644: +/* 801CB644 001C85A4 28 03 00 00 */ cmplwi r3, 0 +/* 801CB648 001C85A8 4D 82 00 20 */ beqlr +/* 801CB64C 001C85AC 80 04 00 00 */ lwz r0, 0(r4) +/* 801CB650 001C85B0 90 03 00 00 */ stw r0, 0(r3) +/* 801CB654 001C85B4 4E 80 00 20 */ blr + +.global "data__Q24rstl54reserved_vector,32>Fv" +"data__Q24rstl54reserved_vector,32>Fv": +/* 801CB658 001C85B8 38 63 00 04 */ addi r3, r3, 4 +/* 801CB65C 001C85BC 4E 80 00 20 */ blr + +.global GetRegionList__13CPFAreaOctreeFRC9CVector3f +GetRegionList__13CPFAreaOctreeFRC9CVector3f: +/* 801CB660 001C85C0 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801CB664 001C85C4 7C 08 02 A6 */ mflr r0 +/* 801CB668 001C85C8 90 01 00 34 */ stw r0, 0x34(r1) +/* 801CB66C 001C85CC DB E1 00 20 */ stfd f31, 0x20(r1) +/* 801CB670 001C85D0 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 801CB674 001C85D4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801CB678 001C85D8 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801CB67C 001C85DC 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801CB680 001C85E0 88 03 00 00 */ lbz r0, 0(r3) +/* 801CB684 001C85E4 7C 9F 23 78 */ mr r31, r4 +/* 801CB688 001C85E8 28 00 00 00 */ cmplwi r0, 0 +/* 801CB68C 001C85EC 41 82 00 0C */ beq lbl_801CB698 +/* 801CB690 001C85F0 38 63 00 48 */ addi r3, r3, 0x48 +/* 801CB694 001C85F4 48 00 02 28 */ b lbl_801CB8BC +lbl_801CB698: +/* 801CB698 001C85F8 C0 3F 00 00 */ lfs f1, 0(r31) +/* 801CB69C 001C85FC 38 00 00 00 */ li r0, 0 +/* 801CB6A0 001C8600 C0 03 00 1C */ lfs f0, 0x1c(r3) +/* 801CB6A4 001C8604 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801CB6A8 001C8608 40 81 00 08 */ ble lbl_801CB6B0 +/* 801CB6AC 001C860C 38 00 00 01 */ li r0, 1 +lbl_801CB6B0: +/* 801CB6B0 001C8610 C0 5F 00 04 */ lfs f2, 4(r31) +/* 801CB6B4 001C8614 C0 03 00 20 */ lfs f0, 0x20(r3) +/* 801CB6B8 001C8618 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801CB6BC 001C861C 40 81 00 08 */ ble lbl_801CB6C4 +/* 801CB6C0 001C8620 60 00 00 02 */ ori r0, r0, 2 +lbl_801CB6C4: +/* 801CB6C4 001C8624 C0 7F 00 08 */ lfs f3, 8(r31) +/* 801CB6C8 001C8628 C0 03 00 24 */ lfs f0, 0x24(r3) +/* 801CB6CC 001C862C FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 801CB6D0 001C8630 40 81 00 08 */ ble lbl_801CB6D8 +/* 801CB6D4 001C8634 60 00 00 04 */ ori r0, r0, 4 +lbl_801CB6D8: +/* 801CB6D8 001C8638 54 00 10 3A */ slwi r0, r0, 2 +/* 801CB6DC 001C863C 7C 63 02 14 */ add r3, r3, r0 +/* 801CB6E0 001C8640 80 63 00 28 */ lwz r3, 0x28(r3) +/* 801CB6E4 001C8644 88 03 00 00 */ lbz r0, 0(r3) +/* 801CB6E8 001C8648 28 00 00 00 */ cmplwi r0, 0 +/* 801CB6EC 001C864C 41 82 00 0C */ beq lbl_801CB6F8 +/* 801CB6F0 001C8650 38 63 00 48 */ addi r3, r3, 0x48 +/* 801CB6F4 001C8654 48 00 01 C8 */ b lbl_801CB8BC +lbl_801CB6F8: +/* 801CB6F8 001C8658 C0 03 00 1C */ lfs f0, 0x1c(r3) +/* 801CB6FC 001C865C 38 00 00 00 */ li r0, 0 +/* 801CB700 001C8660 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801CB704 001C8664 40 81 00 08 */ ble lbl_801CB70C +/* 801CB708 001C8668 38 00 00 01 */ li r0, 1 +lbl_801CB70C: +/* 801CB70C 001C866C C0 03 00 20 */ lfs f0, 0x20(r3) +/* 801CB710 001C8670 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801CB714 001C8674 40 81 00 08 */ ble lbl_801CB71C +/* 801CB718 001C8678 60 00 00 02 */ ori r0, r0, 2 +lbl_801CB71C: +/* 801CB71C 001C867C C0 03 00 24 */ lfs f0, 0x24(r3) +/* 801CB720 001C8680 FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 801CB724 001C8684 40 81 00 08 */ ble lbl_801CB72C +/* 801CB728 001C8688 60 00 00 04 */ ori r0, r0, 4 +lbl_801CB72C: +/* 801CB72C 001C868C 54 00 10 3A */ slwi r0, r0, 2 +/* 801CB730 001C8690 7C 63 02 14 */ add r3, r3, r0 +/* 801CB734 001C8694 80 63 00 28 */ lwz r3, 0x28(r3) +/* 801CB738 001C8698 88 03 00 00 */ lbz r0, 0(r3) +/* 801CB73C 001C869C 28 00 00 00 */ cmplwi r0, 0 +/* 801CB740 001C86A0 41 82 00 0C */ beq lbl_801CB74C +/* 801CB744 001C86A4 38 63 00 48 */ addi r3, r3, 0x48 +/* 801CB748 001C86A8 48 00 01 74 */ b lbl_801CB8BC +lbl_801CB74C: +/* 801CB74C 001C86AC C0 03 00 1C */ lfs f0, 0x1c(r3) +/* 801CB750 001C86B0 38 00 00 00 */ li r0, 0 +/* 801CB754 001C86B4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801CB758 001C86B8 40 81 00 08 */ ble lbl_801CB760 +/* 801CB75C 001C86BC 38 00 00 01 */ li r0, 1 +lbl_801CB760: +/* 801CB760 001C86C0 C0 03 00 20 */ lfs f0, 0x20(r3) +/* 801CB764 001C86C4 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801CB768 001C86C8 40 81 00 08 */ ble lbl_801CB770 +/* 801CB76C 001C86CC 60 00 00 02 */ ori r0, r0, 2 +lbl_801CB770: +/* 801CB770 001C86D0 C0 03 00 24 */ lfs f0, 0x24(r3) +/* 801CB774 001C86D4 FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 801CB778 001C86D8 40 81 00 08 */ ble lbl_801CB780 +/* 801CB77C 001C86DC 60 00 00 04 */ ori r0, r0, 4 +lbl_801CB780: +/* 801CB780 001C86E0 54 00 10 3A */ slwi r0, r0, 2 +/* 801CB784 001C86E4 7C 63 02 14 */ add r3, r3, r0 +/* 801CB788 001C86E8 80 63 00 28 */ lwz r3, 0x28(r3) +/* 801CB78C 001C86EC 88 03 00 00 */ lbz r0, 0(r3) +/* 801CB790 001C86F0 28 00 00 00 */ cmplwi r0, 0 +/* 801CB794 001C86F4 41 82 00 0C */ beq lbl_801CB7A0 +/* 801CB798 001C86F8 38 63 00 48 */ addi r3, r3, 0x48 +/* 801CB79C 001C86FC 48 00 01 20 */ b lbl_801CB8BC +lbl_801CB7A0: +/* 801CB7A0 001C8700 C0 03 00 1C */ lfs f0, 0x1c(r3) +/* 801CB7A4 001C8704 38 00 00 00 */ li r0, 0 +/* 801CB7A8 001C8708 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801CB7AC 001C870C 40 81 00 08 */ ble lbl_801CB7B4 +/* 801CB7B0 001C8710 38 00 00 01 */ li r0, 1 +lbl_801CB7B4: +/* 801CB7B4 001C8714 C0 03 00 20 */ lfs f0, 0x20(r3) +/* 801CB7B8 001C8718 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801CB7BC 001C871C 40 81 00 08 */ ble lbl_801CB7C4 +/* 801CB7C0 001C8720 60 00 00 02 */ ori r0, r0, 2 +lbl_801CB7C4: +/* 801CB7C4 001C8724 C0 03 00 24 */ lfs f0, 0x24(r3) +/* 801CB7C8 001C8728 FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 801CB7CC 001C872C 40 81 00 08 */ ble lbl_801CB7D4 +/* 801CB7D0 001C8730 60 00 00 04 */ ori r0, r0, 4 +lbl_801CB7D4: +/* 801CB7D4 001C8734 54 00 10 3A */ slwi r0, r0, 2 +/* 801CB7D8 001C8738 7C 63 02 14 */ add r3, r3, r0 +/* 801CB7DC 001C873C 83 C3 00 28 */ lwz r30, 0x28(r3) +/* 801CB7E0 001C8740 88 1E 00 00 */ lbz r0, 0(r30) +/* 801CB7E4 001C8744 28 00 00 00 */ cmplwi r0, 0 +/* 801CB7E8 001C8748 41 82 00 0C */ beq lbl_801CB7F4 +/* 801CB7EC 001C874C 38 7E 00 48 */ addi r3, r30, 0x48 +/* 801CB7F0 001C8750 48 00 00 CC */ b lbl_801CB8BC +lbl_801CB7F4: +/* 801CB7F4 001C8754 38 7E 00 1C */ addi r3, r30, 0x1c +/* 801CB7F8 001C8758 3B A0 00 00 */ li r29, 0 +/* 801CB7FC 001C875C 38 80 00 00 */ li r4, 0 +/* 801CB800 001C8760 4B FF FE 41 */ bl nullsub_45 +/* 801CB804 001C8764 C3 E3 00 00 */ lfs f31, 0(r3) +/* 801CB808 001C8768 7F E3 FB 78 */ mr r3, r31 +/* 801CB80C 001C876C 38 80 00 00 */ li r4, 0 +/* 801CB810 001C8770 4B FF FE 31 */ bl nullsub_45 +/* 801CB814 001C8774 C0 03 00 00 */ lfs f0, 0(r3) +/* 801CB818 001C8778 FC 00 F8 40 */ fcmpo cr0, f0, f31 +/* 801CB81C 001C877C 40 81 00 08 */ ble lbl_801CB824 +/* 801CB820 001C8780 3B A0 00 01 */ li r29, 1 +lbl_801CB824: +/* 801CB824 001C8784 38 7E 00 1C */ addi r3, r30, 0x1c +/* 801CB828 001C8788 38 80 00 01 */ li r4, 1 +/* 801CB82C 001C878C 4B FF FE 01 */ bl sub_801cb62c +/* 801CB830 001C8790 C3 E3 00 00 */ lfs f31, 0(r3) +/* 801CB834 001C8794 7F E3 FB 78 */ mr r3, r31 +/* 801CB838 001C8798 38 80 00 01 */ li r4, 1 +/* 801CB83C 001C879C 4B FF FD F1 */ bl sub_801cb62c +/* 801CB840 001C87A0 C0 03 00 00 */ lfs f0, 0(r3) +/* 801CB844 001C87A4 FC 00 F8 40 */ fcmpo cr0, f0, f31 +/* 801CB848 001C87A8 40 81 00 08 */ ble lbl_801CB850 +/* 801CB84C 001C87AC 63 BD 00 02 */ ori r29, r29, 2 +lbl_801CB850: +/* 801CB850 001C87B0 38 7E 00 1C */ addi r3, r30, 0x1c +/* 801CB854 001C87B4 38 80 00 02 */ li r4, 2 +/* 801CB858 001C87B8 4B FF FD CD */ bl sub_801cb624 +/* 801CB85C 001C87BC C3 E3 00 00 */ lfs f31, 0(r3) +/* 801CB860 001C87C0 7F E3 FB 78 */ mr r3, r31 +/* 801CB864 001C87C4 38 80 00 02 */ li r4, 2 +/* 801CB868 001C87C8 4B FF FD BD */ bl sub_801cb624 +/* 801CB86C 001C87CC C0 03 00 00 */ lfs f0, 0(r3) +/* 801CB870 001C87D0 FC 00 F8 40 */ fcmpo cr0, f0, f31 +/* 801CB874 001C87D4 40 81 00 08 */ ble lbl_801CB87C +/* 801CB878 001C87D8 63 BD 00 04 */ ori r29, r29, 4 +lbl_801CB87C: +/* 801CB87C 001C87DC 57 A0 10 3A */ slwi r0, r29, 2 +/* 801CB880 001C87E0 7C 7E 02 14 */ add r3, r30, r0 +/* 801CB884 001C87E4 83 A3 00 28 */ lwz r29, 0x28(r3) +/* 801CB888 001C87E8 88 1D 00 00 */ lbz r0, 0(r29) +/* 801CB88C 001C87EC 28 00 00 00 */ cmplwi r0, 0 +/* 801CB890 001C87F0 41 82 00 0C */ beq lbl_801CB89C +/* 801CB894 001C87F4 38 7D 00 48 */ addi r3, r29, 0x48 +/* 801CB898 001C87F8 48 00 00 24 */ b lbl_801CB8BC +lbl_801CB89C: +/* 801CB89C 001C87FC 7F A3 EB 78 */ mr r3, r29 +/* 801CB8A0 001C8800 7F E4 FB 78 */ mr r4, r31 +/* 801CB8A4 001C8804 48 00 00 3D */ bl GetChildIndex__13CPFAreaOctreeCFRC9CVector3f +/* 801CB8A8 001C8808 54 60 10 3A */ slwi r0, r3, 2 +/* 801CB8AC 001C880C 7F E4 FB 78 */ mr r4, r31 +/* 801CB8B0 001C8810 7C 7D 02 14 */ add r3, r29, r0 +/* 801CB8B4 001C8814 80 63 00 28 */ lwz r3, 0x28(r3) +/* 801CB8B8 001C8818 4B FF FD A9 */ bl GetRegionList__13CPFAreaOctreeFRC9CVector3f +lbl_801CB8BC: +/* 801CB8BC 001C881C E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 801CB8C0 001C8820 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801CB8C4 001C8824 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 801CB8C8 001C8828 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801CB8CC 001C882C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801CB8D0 001C8830 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801CB8D4 001C8834 7C 08 03 A6 */ mtlr r0 +/* 801CB8D8 001C8838 38 21 00 30 */ addi r1, r1, 0x30 +/* 801CB8DC 001C883C 4E 80 00 20 */ blr + +.global GetChildIndex__13CPFAreaOctreeCFRC9CVector3f +GetChildIndex__13CPFAreaOctreeCFRC9CVector3f: +/* 801CB8E0 001C8840 C0 24 00 00 */ lfs f1, 0(r4) +/* 801CB8E4 001C8844 38 00 00 00 */ li r0, 0 +/* 801CB8E8 001C8848 C0 03 00 1C */ lfs f0, 0x1c(r3) +/* 801CB8EC 001C884C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801CB8F0 001C8850 40 81 00 08 */ ble lbl_801CB8F8 +/* 801CB8F4 001C8854 38 00 00 01 */ li r0, 1 +lbl_801CB8F8: +/* 801CB8F8 001C8858 C0 24 00 04 */ lfs f1, 4(r4) +/* 801CB8FC 001C885C C0 03 00 20 */ lfs f0, 0x20(r3) +/* 801CB900 001C8860 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801CB904 001C8864 40 81 00 08 */ ble lbl_801CB90C +/* 801CB908 001C8868 60 00 00 02 */ ori r0, r0, 2 +lbl_801CB90C: +/* 801CB90C 001C886C C0 24 00 08 */ lfs f1, 8(r4) +/* 801CB910 001C8870 C0 03 00 24 */ lfs f0, 0x24(r3) +/* 801CB914 001C8874 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801CB918 001C8878 40 81 00 08 */ ble lbl_801CB920 +/* 801CB91C 001C887C 60 00 00 04 */ ori r0, r0, 4 +lbl_801CB920: +/* 801CB920 001C8880 7C 03 03 78 */ mr r3, r0 +/* 801CB924 001C8884 4E 80 00 20 */ blr + +.global "reserve__Q24rstl50vector<13CPFRegionData,Q24rstl17rmemory_allocator>Fi" +"reserve__Q24rstl50vector<13CPFRegionData,Q24rstl17rmemory_allocator>Fi": +/* 801CB928 001C8888 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801CB92C 001C888C 7C 08 02 A6 */ mflr r0 +/* 801CB930 001C8890 90 01 00 34 */ stw r0, 0x34(r1) +/* 801CB934 001C8894 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801CB938 001C8898 7C 9F 23 78 */ mr r31, r4 +/* 801CB93C 001C889C 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801CB940 001C88A0 7C 7E 1B 78 */ mr r30, r3 +/* 801CB944 001C88A4 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801CB948 001C88A8 80 03 00 08 */ lwz r0, 8(r3) +/* 801CB94C 001C88AC 7C 1F 00 00 */ cmpw r31, r0 +/* 801CB950 001C88B0 40 81 01 04 */ ble lbl_801CBA54 +/* 801CB954 001C88B4 1C 7F 00 30 */ mulli r3, r31, 0x30 +/* 801CB958 001C88B8 2C 03 00 00 */ cmpwi r3, 0 +/* 801CB95C 001C88BC 40 82 00 0C */ bne lbl_801CB968 +/* 801CB960 001C88C0 3B A0 00 00 */ li r29, 0 +/* 801CB964 001C88C4 48 00 00 18 */ b lbl_801CB97C +lbl_801CB968: +/* 801CB968 001C88C8 3C 80 80 3D */ lis r4, lbl_803D1AA0@ha +/* 801CB96C 001C88CC 38 A0 00 00 */ li r5, 0 +/* 801CB970 001C88D0 38 84 1A A0 */ addi r4, r4, lbl_803D1AA0@l +/* 801CB974 001C88D4 48 14 9E A5 */ bl __nwa__FUlPCcPCc +/* 801CB978 001C88D8 7C 7D 1B 78 */ mr r29, r3 +lbl_801CB97C: +/* 801CB97C 001C88DC 80 1E 00 04 */ lwz r0, 4(r30) +/* 801CB980 001C88E0 7F A4 EB 78 */ mr r4, r29 +/* 801CB984 001C88E4 80 BE 00 0C */ lwz r5, 0xc(r30) +/* 801CB988 001C88E8 1C 00 00 30 */ mulli r0, r0, 0x30 +/* 801CB98C 001C88EC 90 A1 00 10 */ stw r5, 0x10(r1) +/* 801CB990 001C88F0 7C 65 02 14 */ add r3, r5, r0 +/* 801CB994 001C88F4 90 A1 00 14 */ stw r5, 0x14(r1) +/* 801CB998 001C88F8 90 61 00 08 */ stw r3, 8(r1) +/* 801CB99C 001C88FC 90 61 00 0C */ stw r3, 0xc(r1) +/* 801CB9A0 001C8900 48 00 00 74 */ b lbl_801CBA14 +lbl_801CB9A4: +/* 801CB9A4 001C8904 28 04 00 00 */ cmplwi r4, 0 +/* 801CB9A8 001C8908 41 82 00 64 */ beq lbl_801CBA0C +/* 801CB9AC 001C890C C0 05 00 00 */ lfs f0, 0(r5) +/* 801CB9B0 001C8910 D0 04 00 00 */ stfs f0, 0(r4) +/* 801CB9B4 001C8914 C0 05 00 04 */ lfs f0, 4(r5) +/* 801CB9B8 001C8918 D0 04 00 04 */ stfs f0, 4(r4) +/* 801CB9BC 001C891C C0 05 00 08 */ lfs f0, 8(r5) +/* 801CB9C0 001C8920 D0 04 00 08 */ stfs f0, 8(r4) +/* 801CB9C4 001C8924 C0 05 00 0C */ lfs f0, 0xc(r5) +/* 801CB9C8 001C8928 D0 04 00 0C */ stfs f0, 0xc(r4) +/* 801CB9CC 001C892C 80 05 00 10 */ lwz r0, 0x10(r5) +/* 801CB9D0 001C8930 90 04 00 10 */ stw r0, 0x10(r4) +/* 801CB9D4 001C8934 C0 05 00 14 */ lfs f0, 0x14(r5) +/* 801CB9D8 001C8938 D0 04 00 14 */ stfs f0, 0x14(r4) +/* 801CB9DC 001C893C C0 05 00 18 */ lfs f0, 0x18(r5) +/* 801CB9E0 001C8940 D0 04 00 18 */ stfs f0, 0x18(r4) +/* 801CB9E4 001C8944 C0 05 00 1C */ lfs f0, 0x1c(r5) +/* 801CB9E8 001C8948 D0 04 00 1C */ stfs f0, 0x1c(r4) +/* 801CB9EC 001C894C 80 05 00 20 */ lwz r0, 0x20(r5) +/* 801CB9F0 001C8950 90 04 00 20 */ stw r0, 0x20(r4) +/* 801CB9F4 001C8954 80 05 00 24 */ lwz r0, 0x24(r5) +/* 801CB9F8 001C8958 90 04 00 24 */ stw r0, 0x24(r4) +/* 801CB9FC 001C895C 80 05 00 28 */ lwz r0, 0x28(r5) +/* 801CBA00 001C8960 90 04 00 28 */ stw r0, 0x28(r4) +/* 801CBA04 001C8964 80 05 00 2C */ lwz r0, 0x2c(r5) +/* 801CBA08 001C8968 90 04 00 2C */ stw r0, 0x2c(r4) +lbl_801CBA0C: +/* 801CBA0C 001C896C 38 84 00 30 */ addi r4, r4, 0x30 +/* 801CBA10 001C8970 38 A5 00 30 */ addi r5, r5, 0x30 +lbl_801CBA14: +/* 801CBA14 001C8974 7C 05 18 40 */ cmplw r5, r3 +/* 801CBA18 001C8978 40 82 FF 8C */ bne lbl_801CB9A4 +/* 801CBA1C 001C897C 80 1E 00 04 */ lwz r0, 4(r30) +/* 801CBA20 001C8980 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 801CBA24 001C8984 1C 00 00 30 */ mulli r0, r0, 0x30 +/* 801CBA28 001C8988 7C 64 1B 78 */ mr r4, r3 +/* 801CBA2C 001C898C 7C 03 02 14 */ add r0, r3, r0 +/* 801CBA30 001C8990 48 00 00 08 */ b lbl_801CBA38 +lbl_801CBA34: +/* 801CBA34 001C8994 38 84 00 30 */ addi r4, r4, 0x30 +lbl_801CBA38: +/* 801CBA38 001C8998 7C 04 00 40 */ cmplw r4, r0 +/* 801CBA3C 001C899C 40 82 FF F8 */ bne lbl_801CBA34 +/* 801CBA40 001C89A0 28 03 00 00 */ cmplwi r3, 0 +/* 801CBA44 001C89A4 41 82 00 08 */ beq lbl_801CBA4C +/* 801CBA48 001C89A8 48 14 9E E9 */ bl Free__7CMemoryFPCv +lbl_801CBA4C: +/* 801CBA4C 001C89AC 93 BE 00 0C */ stw r29, 0xc(r30) +/* 801CBA50 001C89B0 93 FE 00 08 */ stw r31, 8(r30) +lbl_801CBA54: +/* 801CBA54 001C89B4 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801CBA58 001C89B8 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801CBA5C 001C89BC 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801CBA60 001C89C0 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801CBA64 001C89C4 7C 08 03 A6 */ mtlr r0 +/* 801CBA68 001C89C8 38 21 00 30 */ addi r1, r1, 0x30 +/* 801CBA6C 001C89CC 4E 80 00 20 */ blr + +.global RemainingPathDistance__15CPathFindSearchCFR9CVector3f +RemainingPathDistance__15CPathFindSearchCFR9CVector3f: +/* 801CBA70 001C89D0 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801CBA74 001C89D4 7C 08 02 A6 */ mflr r0 +/* 801CBA78 001C89D8 90 01 00 44 */ stw r0, 0x44(r1) +/* 801CBA7C 001C89DC DB E1 00 30 */ stfd f31, 0x30(r1) +/* 801CBA80 001C89E0 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 801CBA84 001C89E4 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801CBA88 001C89E8 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801CBA8C 001C89EC 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801CBA90 001C89F0 93 81 00 20 */ stw r28, 0x20(r1) +/* 801CBA94 001C89F4 7C 7C 1B 78 */ mr r28, r3 +/* 801CBA98 001C89F8 C3 E2 AB 60 */ lfs f31, lbl_805AC880@sda21(r2) +/* 801CBA9C 001C89FC 83 E3 00 04 */ lwz r31, 4(r3) +/* 801CBAA0 001C8A00 80 63 00 C8 */ lwz r3, 0xc8(r3) +/* 801CBAA4 001C8A04 38 1F FF FF */ addi r0, r31, -1 +/* 801CBAA8 001C8A08 7C 03 00 00 */ cmpw r3, r0 +/* 801CBAAC 001C8A0C 40 80 00 C0 */ bge lbl_801CBB6C +/* 801CBAB0 001C8A10 38 03 00 01 */ addi r0, r3, 1 +/* 801CBAB4 001C8A14 3B BC 00 08 */ addi r29, r28, 8 +/* 801CBAB8 001C8A18 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801CBABC 001C8A1C C0 84 00 04 */ lfs f4, 4(r4) +/* 801CBAC0 001C8A20 C0 44 00 08 */ lfs f2, 8(r4) +/* 801CBAC4 001C8A24 38 61 00 14 */ addi r3, r1, 0x14 +/* 801CBAC8 001C8A28 C0 04 00 00 */ lfs f0, 0(r4) +/* 801CBACC 001C8A2C 7C 9D 02 14 */ add r4, r29, r0 +/* 801CBAD0 001C8A30 C0 A4 00 04 */ lfs f5, 4(r4) +/* 801CBAD4 001C8A34 C0 64 00 08 */ lfs f3, 8(r4) +/* 801CBAD8 001C8A38 C0 24 00 00 */ lfs f1, 0(r4) +/* 801CBADC 001C8A3C EC 85 20 28 */ fsubs f4, f5, f4 +/* 801CBAE0 001C8A40 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801CBAE4 001C8A44 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801CBAE8 001C8A48 D0 81 00 18 */ stfs f4, 0x18(r1) +/* 801CBAEC 001C8A4C D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801CBAF0 001C8A50 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 801CBAF4 001C8A54 48 14 8D C5 */ bl Magnitude__9CVector3fCFv +/* 801CBAF8 001C8A58 80 7C 00 C8 */ lwz r3, 0xc8(r28) +/* 801CBAFC 001C8A5C EF FF 08 2A */ fadds f31, f31, f1 +/* 801CBB00 001C8A60 3B FF FF FF */ addi r31, r31, -1 +/* 801CBB04 001C8A64 3B 83 00 01 */ addi r28, r3, 1 +/* 801CBB08 001C8A68 1C 1C 00 0C */ mulli r0, r28, 0xc +/* 801CBB0C 001C8A6C 7F DD 02 14 */ add r30, r29, r0 +/* 801CBB10 001C8A70 48 00 00 54 */ b lbl_801CBB64 +lbl_801CBB14: +/* 801CBB14 001C8A74 38 1C 00 01 */ addi r0, r28, 1 +/* 801CBB18 001C8A78 C0 9E 00 04 */ lfs f4, 4(r30) +/* 801CBB1C 001C8A7C 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801CBB20 001C8A80 C0 5E 00 08 */ lfs f2, 8(r30) +/* 801CBB24 001C8A84 C0 1E 00 00 */ lfs f0, 0(r30) +/* 801CBB28 001C8A88 38 61 00 08 */ addi r3, r1, 8 +/* 801CBB2C 001C8A8C 7C 9D 02 14 */ add r4, r29, r0 +/* 801CBB30 001C8A90 C0 A4 00 04 */ lfs f5, 4(r4) +/* 801CBB34 001C8A94 C0 64 00 08 */ lfs f3, 8(r4) +/* 801CBB38 001C8A98 C0 24 00 00 */ lfs f1, 0(r4) +/* 801CBB3C 001C8A9C EC 85 20 28 */ fsubs f4, f5, f4 +/* 801CBB40 001C8AA0 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801CBB44 001C8AA4 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801CBB48 001C8AA8 D0 81 00 0C */ stfs f4, 0xc(r1) +/* 801CBB4C 001C8AAC D0 01 00 08 */ stfs f0, 8(r1) +/* 801CBB50 001C8AB0 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 801CBB54 001C8AB4 48 14 8D 65 */ bl Magnitude__9CVector3fCFv +/* 801CBB58 001C8AB8 EF FF 08 2A */ fadds f31, f31, f1 +/* 801CBB5C 001C8ABC 3B DE 00 0C */ addi r30, r30, 0xc +/* 801CBB60 001C8AC0 3B 9C 00 01 */ addi r28, r28, 1 +lbl_801CBB64: +/* 801CBB64 001C8AC4 7C 1C F8 00 */ cmpw r28, r31 +/* 801CBB68 001C8AC8 41 80 FF AC */ blt lbl_801CBB14 +lbl_801CBB6C: +/* 801CBB6C 001C8ACC FC 20 F8 90 */ fmr f1, f31 +/* 801CBB70 001C8AD0 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 801CBB74 001C8AD4 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801CBB78 001C8AD8 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 801CBB7C 001C8ADC 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801CBB80 001C8AE0 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801CBB84 001C8AE4 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801CBB88 001C8AE8 83 81 00 20 */ lwz r28, 0x20(r1) +/* 801CBB8C 001C8AEC 7C 08 03 A6 */ mtlr r0 +/* 801CBB90 001C8AF0 38 21 00 40 */ addi r1, r1, 0x40 +/* 801CBB94 001C8AF4 4E 80 00 20 */ blr + +.global GetSplinePointWithLookahead__15CPathFindSearchCFR9CVector3fRC9CVector3ff +GetSplinePointWithLookahead__15CPathFindSearchCFR9CVector3fRC9CVector3ff: +/* 801CBB98 001C8AF8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801CBB9C 001C8AFC 7C 08 02 A6 */ mflr r0 +/* 801CBBA0 001C8B00 90 01 00 14 */ stw r0, 0x14(r1) +/* 801CBBA4 001C8B04 80 C3 00 C8 */ lwz r6, 0xc8(r3) +/* 801CBBA8 001C8B08 48 00 00 15 */ bl GetSplinePointWithLookahead__15CPathFindSearchCFR9CVector3fRC9CVector3fif +/* 801CBBAC 001C8B0C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801CBBB0 001C8B10 7C 08 03 A6 */ mtlr r0 +/* 801CBBB4 001C8B14 38 21 00 10 */ addi r1, r1, 0x10 +/* 801CBBB8 001C8B18 4E 80 00 20 */ blr + +.global GetSplinePointWithLookahead__15CPathFindSearchCFR9CVector3fRC9CVector3fif +GetSplinePointWithLookahead__15CPathFindSearchCFR9CVector3fRC9CVector3fif: +/* 801CBBBC 001C8B1C 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801CBBC0 001C8B20 7C 08 02 A6 */ mflr r0 +/* 801CBBC4 001C8B24 90 01 00 64 */ stw r0, 0x64(r1) +/* 801CBBC8 001C8B28 DB E1 00 50 */ stfd f31, 0x50(r1) +/* 801CBBCC 001C8B2C F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 801CBBD0 001C8B30 BF 21 00 34 */ stmw r25, 0x34(r1) +/* 801CBBD4 001C8B34 7C 79 1B 78 */ mr r25, r3 +/* 801CBBD8 001C8B38 FF E0 08 90 */ fmr f31, f1 +/* 801CBBDC 001C8B3C 83 E3 00 04 */ lwz r31, 4(r3) +/* 801CBBE0 001C8B40 7C 9A 23 78 */ mr r26, r4 +/* 801CBBE4 001C8B44 7C BB 2B 78 */ mr r27, r5 +/* 801CBBE8 001C8B48 7C DC 33 78 */ mr r28, r6 +/* 801CBBEC 001C8B4C 2C 1F 00 01 */ cmpwi r31, 1 +/* 801CBBF0 001C8B50 40 81 01 A0 */ ble lbl_801CBD90 +/* 801CBBF4 001C8B54 38 1F FF FF */ addi r0, r31, -1 +/* 801CBBF8 001C8B58 7C 1C 00 00 */ cmpw r28, r0 +/* 801CBBFC 001C8B5C 40 80 01 94 */ bge lbl_801CBD90 +/* 801CBC00 001C8B60 38 1C 00 01 */ addi r0, r28, 1 +/* 801CBC04 001C8B64 38 B9 00 08 */ addi r5, r25, 8 +/* 801CBC08 001C8B68 1C 9C 00 0C */ mulli r4, r28, 0xc +/* 801CBC0C 001C8B6C 38 61 00 20 */ addi r3, r1, 0x20 +/* 801CBC10 001C8B70 7F C5 22 14 */ add r30, r5, r4 +/* 801CBC14 001C8B74 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801CBC18 001C8B78 C0 9E 00 04 */ lfs f4, 4(r30) +/* 801CBC1C 001C8B7C C0 5E 00 08 */ lfs f2, 8(r30) +/* 801CBC20 001C8B80 C0 1E 00 00 */ lfs f0, 0(r30) +/* 801CBC24 001C8B84 7F A5 02 14 */ add r29, r5, r0 +/* 801CBC28 001C8B88 C0 BD 00 04 */ lfs f5, 4(r29) +/* 801CBC2C 001C8B8C C0 7D 00 08 */ lfs f3, 8(r29) +/* 801CBC30 001C8B90 C0 3D 00 00 */ lfs f1, 0(r29) +/* 801CBC34 001C8B94 EC 85 20 28 */ fsubs f4, f5, f4 +/* 801CBC38 001C8B98 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801CBC3C 001C8B9C EC 01 00 28 */ fsubs f0, f1, f0 +/* 801CBC40 001C8BA0 D0 81 00 24 */ stfs f4, 0x24(r1) +/* 801CBC44 001C8BA4 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801CBC48 001C8BA8 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 801CBC4C 001C8BAC 48 14 8B 41 */ bl IsMagnitudeSafe__9CVector3fCFv +/* 801CBC50 001C8BB0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801CBC54 001C8BB4 41 82 01 24 */ beq lbl_801CBD78 +/* 801CBC58 001C8BB8 38 61 00 20 */ addi r3, r1, 0x20 +/* 801CBC5C 001C8BBC 48 14 8C 5D */ bl Magnitude__9CVector3fCFv +/* 801CBC60 001C8BC0 C0 02 AB 64 */ lfs f0, lbl_805AC884@sda21(r2) +/* 801CBC64 001C8BC4 C0 41 00 24 */ lfs f2, 0x24(r1) +/* 801CBC68 001C8BC8 ED 20 08 24 */ fdivs f9, f0, f1 +/* 801CBC6C 001C8BCC C0 C1 00 20 */ lfs f6, 0x20(r1) +/* 801CBC70 001C8BD0 C0 81 00 28 */ lfs f4, 0x28(r1) +/* 801CBC74 001C8BD4 C1 7B 00 04 */ lfs f11, 4(r27) +/* 801CBC78 001C8BD8 C0 1E 00 04 */ lfs f0, 4(r30) +/* 801CBC7C 001C8BDC C1 5B 00 00 */ lfs f10, 0(r27) +/* 801CBC80 001C8BE0 EC A2 02 72 */ fmuls f5, f2, f9 +/* 801CBC84 001C8BE4 C0 7E 00 00 */ lfs f3, 0(r30) +/* 801CBC88 001C8BE8 EC EB 00 28 */ fsubs f7, f11, f0 +/* 801CBC8C 001C8BEC C1 9B 00 08 */ lfs f12, 8(r27) +/* 801CBC90 001C8BF0 EC C6 02 72 */ fmuls f6, f6, f9 +/* 801CBC94 001C8BF4 C0 5E 00 08 */ lfs f2, 8(r30) +/* 801CBC98 001C8BF8 ED 0A 18 28 */ fsubs f8, f10, f3 +/* 801CBC9C 001C8BFC D0 A1 00 24 */ stfs f5, 0x24(r1) +/* 801CBCA0 001C8C00 EC 07 01 72 */ fmuls f0, f7, f5 +/* 801CBCA4 001C8C04 EC 64 02 72 */ fmuls f3, f4, f9 +/* 801CBCA8 001C8C08 D0 C1 00 20 */ stfs f6, 0x20(r1) +/* 801CBCAC 001C8C0C EC 4C 10 28 */ fsubs f2, f12, f2 +/* 801CBCB0 001C8C10 EC 08 01 BA */ fmadds f0, f8, f6, f0 +/* 801CBCB4 001C8C14 D1 01 00 08 */ stfs f8, 8(r1) +/* 801CBCB8 001C8C18 D0 61 00 28 */ stfs f3, 0x28(r1) +/* 801CBCBC 001C8C1C EC 82 00 FA */ fmadds f4, f2, f3, f0 +/* 801CBCC0 001C8C20 D0 E1 00 0C */ stfs f7, 0xc(r1) +/* 801CBCC4 001C8C24 EC 04 F8 2A */ fadds f0, f4, f31 +/* 801CBCC8 001C8C28 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 801CBCCC 001C8C2C FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801CBCD0 001C8C30 4C 40 13 82 */ cror 2, 0, 2 +/* 801CBCD4 001C8C34 40 82 00 40 */ bne lbl_801CBD14 +/* 801CBCD8 001C8C38 EC 5F 01 B2 */ fmuls f2, f31, f6 +/* 801CBCDC 001C8C3C 7F 23 CB 78 */ mr r3, r25 +/* 801CBCE0 001C8C40 EC 3F 01 72 */ fmuls f1, f31, f5 +/* 801CBCE4 001C8C44 7F 44 D3 78 */ mr r4, r26 +/* 801CBCE8 001C8C48 EC 1F 00 F2 */ fmuls f0, f31, f3 +/* 801CBCEC 001C8C4C 7F 86 E3 78 */ mr r6, r28 +/* 801CBCF0 001C8C50 EC 4A 10 2A */ fadds f2, f10, f2 +/* 801CBCF4 001C8C54 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801CBCF8 001C8C58 EC 2B 08 2A */ fadds f1, f11, f1 +/* 801CBCFC 001C8C5C EC 0C 00 2A */ fadds f0, f12, f0 +/* 801CBD00 001C8C60 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801CBD04 001C8C64 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801CBD08 001C8C68 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801CBD0C 001C8C6C 48 00 00 C5 */ bl GetSplinePoint__15CPathFindSearchCFR9CVector3fRC9CVector3fi +/* 801CBD10 001C8C70 48 00 00 80 */ b lbl_801CBD90 +lbl_801CBD14: +/* 801CBD14 001C8C74 EC 01 20 28 */ fsubs f0, f1, f4 +/* 801CBD18 001C8C78 38 1F FF FE */ addi r0, r31, -2 +/* 801CBD1C 001C8C7C 7C 1C 00 00 */ cmpw r28, r0 +/* 801CBD20 001C8C80 EF FF 00 28 */ fsubs f31, f31, f0 +/* 801CBD24 001C8C84 40 80 00 20 */ bge lbl_801CBD44 +/* 801CBD28 001C8C88 FC 20 F8 90 */ fmr f1, f31 +/* 801CBD2C 001C8C8C 7F 23 CB 78 */ mr r3, r25 +/* 801CBD30 001C8C90 7F 44 D3 78 */ mr r4, r26 +/* 801CBD34 001C8C94 7F A5 EB 78 */ mr r5, r29 +/* 801CBD38 001C8C98 38 DC 00 01 */ addi r6, r28, 1 +/* 801CBD3C 001C8C9C 4B FF FE 81 */ bl GetSplinePointWithLookahead__15CPathFindSearchCFR9CVector3fRC9CVector3fif +/* 801CBD40 001C8CA0 48 00 00 50 */ b lbl_801CBD90 +lbl_801CBD44: +/* 801CBD44 001C8CA4 EC 1F 01 B2 */ fmuls f0, f31, f6 +/* 801CBD48 001C8CA8 C0 3D 00 00 */ lfs f1, 0(r29) +/* 801CBD4C 001C8CAC EC 9F 01 72 */ fmuls f4, f31, f5 +/* 801CBD50 001C8CB0 C0 BD 00 04 */ lfs f5, 4(r29) +/* 801CBD54 001C8CB4 EC 5F 00 F2 */ fmuls f2, f31, f3 +/* 801CBD58 001C8CB8 C0 7D 00 08 */ lfs f3, 8(r29) +/* 801CBD5C 001C8CBC EC 01 00 2A */ fadds f0, f1, f0 +/* 801CBD60 001C8CC0 EC 85 20 2A */ fadds f4, f5, f4 +/* 801CBD64 001C8CC4 EC 23 10 2A */ fadds f1, f3, f2 +/* 801CBD68 001C8CC8 D0 1A 00 00 */ stfs f0, 0(r26) +/* 801CBD6C 001C8CCC D0 9A 00 04 */ stfs f4, 4(r26) +/* 801CBD70 001C8CD0 D0 3A 00 08 */ stfs f1, 8(r26) +/* 801CBD74 001C8CD4 48 00 00 1C */ b lbl_801CBD90 +lbl_801CBD78: +/* 801CBD78 001C8CD8 C0 1D 00 00 */ lfs f0, 0(r29) +/* 801CBD7C 001C8CDC D0 1A 00 00 */ stfs f0, 0(r26) +/* 801CBD80 001C8CE0 C0 1D 00 04 */ lfs f0, 4(r29) +/* 801CBD84 001C8CE4 D0 1A 00 04 */ stfs f0, 4(r26) +/* 801CBD88 001C8CE8 C0 1D 00 08 */ lfs f0, 8(r29) +/* 801CBD8C 001C8CEC D0 1A 00 08 */ stfs f0, 8(r26) +lbl_801CBD90: +/* 801CBD90 001C8CF0 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 +/* 801CBD94 001C8CF4 CB E1 00 50 */ lfd f31, 0x50(r1) +/* 801CBD98 001C8CF8 BB 21 00 34 */ lmw r25, 0x34(r1) +/* 801CBD9C 001C8CFC 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801CBDA0 001C8D00 7C 08 03 A6 */ mtlr r0 +/* 801CBDA4 001C8D04 38 21 00 60 */ addi r1, r1, 0x60 +/* 801CBDA8 001C8D08 4E 80 00 20 */ blr + +.global GetSplinePoint__15CPathFindSearchCFR9CVector3fRC9CVector3f +GetSplinePoint__15CPathFindSearchCFR9CVector3fRC9CVector3f: +/* 801CBDAC 001C8D0C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801CBDB0 001C8D10 7C 08 02 A6 */ mflr r0 +/* 801CBDB4 001C8D14 90 01 00 14 */ stw r0, 0x14(r1) +/* 801CBDB8 001C8D18 80 C3 00 C8 */ lwz r6, 0xc8(r3) +/* 801CBDBC 001C8D1C 48 00 00 15 */ bl GetSplinePoint__15CPathFindSearchCFR9CVector3fRC9CVector3fi +/* 801CBDC0 001C8D20 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801CBDC4 001C8D24 7C 08 03 A6 */ mtlr r0 +/* 801CBDC8 001C8D28 38 21 00 10 */ addi r1, r1, 0x10 +/* 801CBDCC 001C8D2C 4E 80 00 20 */ blr + +.global GetSplinePoint__15CPathFindSearchCFR9CVector3fRC9CVector3fi +GetSplinePoint__15CPathFindSearchCFR9CVector3fRC9CVector3fi: +/* 801CBDD0 001C8D30 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 801CBDD4 001C8D34 7C 08 02 A6 */ mflr r0 +/* 801CBDD8 001C8D38 90 01 00 94 */ stw r0, 0x94(r1) +/* 801CBDDC 001C8D3C 93 E1 00 8C */ stw r31, 0x8c(r1) +/* 801CBDE0 001C8D40 93 C1 00 88 */ stw r30, 0x88(r1) +/* 801CBDE4 001C8D44 7C BE 2B 78 */ mr r30, r5 +/* 801CBDE8 001C8D48 93 A1 00 84 */ stw r29, 0x84(r1) +/* 801CBDEC 001C8D4C 7C 9D 23 78 */ mr r29, r4 +/* 801CBDF0 001C8D50 93 81 00 80 */ stw r28, 0x80(r1) +/* 801CBDF4 001C8D54 80 E3 00 04 */ lwz r7, 4(r3) +/* 801CBDF8 001C8D58 2C 07 00 01 */ cmpwi r7, 1 +/* 801CBDFC 001C8D5C 40 81 02 28 */ ble lbl_801CC024 +/* 801CBE00 001C8D60 38 07 FF FF */ addi r0, r7, -1 +/* 801CBE04 001C8D64 7C 06 00 00 */ cmpw r6, r0 +/* 801CBE08 001C8D68 40 80 02 1C */ bge lbl_801CC024 +/* 801CBE0C 001C8D6C 2C 06 00 00 */ cmpwi r6, 0 +/* 801CBE10 001C8D70 40 82 00 58 */ bne lbl_801CBE68 +/* 801CBE14 001C8D74 C0 62 AB 68 */ lfs f3, lbl_805AC888@sda21(r2) +/* 801CBE18 001C8D78 39 01 00 38 */ addi r8, r1, 0x38 +/* 801CBE1C 001C8D7C C0 43 00 0C */ lfs f2, 0xc(r3) +/* 801CBE20 001C8D80 C0 23 00 10 */ lfs f1, 0x10(r3) +/* 801CBE24 001C8D84 C0 03 00 08 */ lfs f0, 8(r3) +/* 801CBE28 001C8D88 EC A3 00 B2 */ fmuls f5, f3, f2 +/* 801CBE2C 001C8D8C EC 83 00 72 */ fmuls f4, f3, f1 +/* 801CBE30 001C8D90 C0 43 00 18 */ lfs f2, 0x18(r3) +/* 801CBE34 001C8D94 EC 63 00 32 */ fmuls f3, f3, f0 +/* 801CBE38 001C8D98 C0 23 00 1C */ lfs f1, 0x1c(r3) +/* 801CBE3C 001C8D9C C0 03 00 14 */ lfs f0, 0x14(r3) +/* 801CBE40 001C8DA0 EC 45 10 28 */ fsubs f2, f5, f2 +/* 801CBE44 001C8DA4 EC 24 08 28 */ fsubs f1, f4, f1 +/* 801CBE48 001C8DA8 D0 61 00 44 */ stfs f3, 0x44(r1) +/* 801CBE4C 001C8DAC EC 03 00 28 */ fsubs f0, f3, f0 +/* 801CBE50 001C8DB0 D0 A1 00 48 */ stfs f5, 0x48(r1) +/* 801CBE54 001C8DB4 D0 81 00 4C */ stfs f4, 0x4c(r1) +/* 801CBE58 001C8DB8 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 801CBE5C 001C8DBC D0 41 00 3C */ stfs f2, 0x3c(r1) +/* 801CBE60 001C8DC0 D0 21 00 40 */ stfs f1, 0x40(r1) +/* 801CBE64 001C8DC4 48 00 00 14 */ b lbl_801CBE78 +lbl_801CBE68: +/* 801CBE68 001C8DC8 38 06 FF FF */ addi r0, r6, -1 +/* 801CBE6C 001C8DCC 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801CBE70 001C8DD0 7D 03 02 14 */ add r8, r3, r0 +/* 801CBE74 001C8DD4 39 08 00 08 */ addi r8, r8, 8 +lbl_801CBE78: +/* 801CBE78 001C8DD8 C0 08 00 00 */ lfs f0, 0(r8) +/* 801CBE7C 001C8DDC 38 06 00 02 */ addi r0, r6, 2 +/* 801CBE80 001C8DE0 38 86 00 01 */ addi r4, r6, 1 +/* 801CBE84 001C8DE4 39 23 00 08 */ addi r9, r3, 8 +/* 801CBE88 001C8DE8 D0 01 00 68 */ stfs f0, 0x68(r1) +/* 801CBE8C 001C8DEC 1C A6 00 0C */ mulli r5, r6, 0xc +/* 801CBE90 001C8DF0 7C 00 38 00 */ cmpw r0, r7 +/* 801CBE94 001C8DF4 C0 08 00 04 */ lfs f0, 4(r8) +/* 801CBE98 001C8DF8 1C 64 00 0C */ mulli r3, r4, 0xc +/* 801CBE9C 001C8DFC D0 01 00 6C */ stfs f0, 0x6c(r1) +/* 801CBEA0 001C8E00 7F E9 2A 14 */ add r31, r9, r5 +/* 801CBEA4 001C8E04 C0 08 00 08 */ lfs f0, 8(r8) +/* 801CBEA8 001C8E08 7F 89 1A 14 */ add r28, r9, r3 +/* 801CBEAC 001C8E0C D0 01 00 70 */ stfs f0, 0x70(r1) +/* 801CBEB0 001C8E10 41 80 00 70 */ blt lbl_801CBF20 +/* 801CBEB4 001C8E14 38 07 FF FF */ addi r0, r7, -1 +/* 801CBEB8 001C8E18 38 67 FF FE */ addi r3, r7, -2 +/* 801CBEBC 001C8E1C 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801CBEC0 001C8E20 C0 62 AB 68 */ lfs f3, lbl_805AC888@sda21(r2) +/* 801CBEC4 001C8E24 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801CBEC8 001C8E28 7C 89 02 14 */ add r4, r9, r0 +/* 801CBECC 001C8E2C 1C 03 00 0C */ mulli r0, r3, 0xc +/* 801CBED0 001C8E30 C0 44 00 04 */ lfs f2, 4(r4) +/* 801CBED4 001C8E34 C0 24 00 08 */ lfs f1, 8(r4) +/* 801CBED8 001C8E38 C0 04 00 00 */ lfs f0, 0(r4) +/* 801CBEDC 001C8E3C EC A3 00 B2 */ fmuls f5, f3, f2 +/* 801CBEE0 001C8E40 7C 69 02 14 */ add r3, r9, r0 +/* 801CBEE4 001C8E44 EC 83 00 72 */ fmuls f4, f3, f1 +/* 801CBEE8 001C8E48 C0 43 00 04 */ lfs f2, 4(r3) +/* 801CBEEC 001C8E4C EC 63 00 32 */ fmuls f3, f3, f0 +/* 801CBEF0 001C8E50 C0 23 00 08 */ lfs f1, 8(r3) +/* 801CBEF4 001C8E54 C0 03 00 00 */ lfs f0, 0(r3) +/* 801CBEF8 001C8E58 EC 45 10 28 */ fsubs f2, f5, f2 +/* 801CBEFC 001C8E5C EC 24 08 28 */ fsubs f1, f4, f1 +/* 801CBF00 001C8E60 D0 61 00 2C */ stfs f3, 0x2c(r1) +/* 801CBF04 001C8E64 EC 03 00 28 */ fsubs f0, f3, f0 +/* 801CBF08 001C8E68 D0 A1 00 30 */ stfs f5, 0x30(r1) +/* 801CBF0C 001C8E6C D0 81 00 34 */ stfs f4, 0x34(r1) +/* 801CBF10 001C8E70 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801CBF14 001C8E74 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 801CBF18 001C8E78 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 801CBF1C 001C8E7C 48 00 00 0C */ b lbl_801CBF28 +lbl_801CBF20: +/* 801CBF20 001C8E80 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801CBF24 001C8E84 7C A9 02 14 */ add r5, r9, r0 +lbl_801CBF28: +/* 801CBF28 001C8E88 C0 05 00 00 */ lfs f0, 0(r5) +/* 801CBF2C 001C8E8C 38 61 00 50 */ addi r3, r1, 0x50 +/* 801CBF30 001C8E90 C0 3C 00 04 */ lfs f1, 4(r28) +/* 801CBF34 001C8E94 D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 801CBF38 001C8E98 C0 1F 00 04 */ lfs f0, 4(r31) +/* 801CBF3C 001C8E9C C0 65 00 04 */ lfs f3, 4(r5) +/* 801CBF40 001C8EA0 C0 5C 00 08 */ lfs f2, 8(r28) +/* 801CBF44 001C8EA4 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801CBF48 001C8EA8 C0 1F 00 08 */ lfs f0, 8(r31) +/* 801CBF4C 001C8EAC D0 61 00 60 */ stfs f3, 0x60(r1) +/* 801CBF50 001C8EB0 C0 3C 00 00 */ lfs f1, 0(r28) +/* 801CBF54 001C8EB4 EC 62 00 28 */ fsubs f3, f2, f0 +/* 801CBF58 001C8EB8 C0 45 00 08 */ lfs f2, 8(r5) +/* 801CBF5C 001C8EBC C0 1F 00 00 */ lfs f0, 0(r31) +/* 801CBF60 001C8EC0 D0 41 00 64 */ stfs f2, 0x64(r1) +/* 801CBF64 001C8EC4 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801CBF68 001C8EC8 D0 81 00 54 */ stfs f4, 0x54(r1) +/* 801CBF6C 001C8ECC D0 01 00 50 */ stfs f0, 0x50(r1) +/* 801CBF70 001C8ED0 D0 61 00 58 */ stfs f3, 0x58(r1) +/* 801CBF74 001C8ED4 48 14 88 19 */ bl IsMagnitudeSafe__9CVector3fCFv +/* 801CBF78 001C8ED8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801CBF7C 001C8EDC 41 82 00 90 */ beq lbl_801CC00C +/* 801CBF80 001C8EE0 C0 3E 00 04 */ lfs f1, 4(r30) +/* 801CBF84 001C8EE4 7F E5 FB 78 */ mr r5, r31 +/* 801CBF88 001C8EE8 C0 1F 00 04 */ lfs f0, 4(r31) +/* 801CBF8C 001C8EEC 7F 86 E3 78 */ mr r6, r28 +/* 801CBF90 001C8EF0 C0 61 00 54 */ lfs f3, 0x54(r1) +/* 801CBF94 001C8EF4 38 61 00 08 */ addi r3, r1, 8 +/* 801CBF98 001C8EF8 EC A1 00 28 */ fsubs f5, f1, f0 +/* 801CBF9C 001C8EFC C0 5E 00 00 */ lfs f2, 0(r30) +/* 801CBFA0 001C8F00 C0 3F 00 00 */ lfs f1, 0(r31) +/* 801CBFA4 001C8F04 EC 03 00 F2 */ fmuls f0, f3, f3 +/* 801CBFA8 001C8F08 C0 C1 00 50 */ lfs f6, 0x50(r1) +/* 801CBFAC 001C8F0C 38 81 00 68 */ addi r4, r1, 0x68 +/* 801CBFB0 001C8F10 EC 42 08 28 */ fsubs f2, f2, f1 +/* 801CBFB4 001C8F14 C0 9E 00 08 */ lfs f4, 8(r30) +/* 801CBFB8 001C8F18 EC 25 00 F2 */ fmuls f1, f5, f3 +/* 801CBFBC 001C8F1C C0 7F 00 08 */ lfs f3, 8(r31) +/* 801CBFC0 001C8F20 EC 06 01 BA */ fmadds f0, f6, f6, f0 +/* 801CBFC4 001C8F24 C0 E1 00 58 */ lfs f7, 0x58(r1) +/* 801CBFC8 001C8F28 EC 64 18 28 */ fsubs f3, f4, f3 +/* 801CBFCC 001C8F2C D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801CBFD0 001C8F30 EC 22 09 BA */ fmadds f1, f2, f6, f1 +/* 801CBFD4 001C8F34 38 E1 00 5C */ addi r7, r1, 0x5c +/* 801CBFD8 001C8F38 EC 07 01 FA */ fmadds f0, f7, f7, f0 +/* 801CBFDC 001C8F3C D0 A1 00 18 */ stfs f5, 0x18(r1) +/* 801CBFE0 001C8F40 EC 23 09 FA */ fmadds f1, f3, f7, f1 +/* 801CBFE4 001C8F44 D0 61 00 1C */ stfs f3, 0x1c(r1) +/* 801CBFE8 001C8F48 EC 21 00 24 */ fdivs f1, f1, f0 +/* 801CBFEC 001C8F4C 48 14 90 D9 */ bl GetCatmullRomSplinePoint__5CMathFRC9CVector3fRC9CVector3fRC9CVector3fRC9CVector3ff +/* 801CBFF0 001C8F50 C0 01 00 08 */ lfs f0, 8(r1) +/* 801CBFF4 001C8F54 D0 1D 00 00 */ stfs f0, 0(r29) +/* 801CBFF8 001C8F58 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 801CBFFC 001C8F5C D0 1D 00 04 */ stfs f0, 4(r29) +/* 801CC000 001C8F60 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 801CC004 001C8F64 D0 1D 00 08 */ stfs f0, 8(r29) +/* 801CC008 001C8F68 48 00 00 1C */ b lbl_801CC024 +lbl_801CC00C: +/* 801CC00C 001C8F6C C0 1F 00 00 */ lfs f0, 0(r31) +/* 801CC010 001C8F70 D0 1D 00 00 */ stfs f0, 0(r29) +/* 801CC014 001C8F74 C0 1F 00 04 */ lfs f0, 4(r31) +/* 801CC018 001C8F78 D0 1D 00 04 */ stfs f0, 4(r29) +/* 801CC01C 001C8F7C C0 1F 00 08 */ lfs f0, 8(r31) +/* 801CC020 001C8F80 D0 1D 00 08 */ stfs f0, 8(r29) +lbl_801CC024: +/* 801CC024 001C8F84 80 01 00 94 */ lwz r0, 0x94(r1) +/* 801CC028 001C8F88 83 E1 00 8C */ lwz r31, 0x8c(r1) +/* 801CC02C 001C8F8C 83 C1 00 88 */ lwz r30, 0x88(r1) +/* 801CC030 001C8F90 83 A1 00 84 */ lwz r29, 0x84(r1) +/* 801CC034 001C8F94 83 81 00 80 */ lwz r28, 0x80(r1) +/* 801CC038 001C8F98 7C 08 03 A6 */ mtlr r0 +/* 801CC03C 001C8F9C 38 21 00 90 */ addi r1, r1, 0x90 +/* 801CC040 001C8FA0 4E 80 00 20 */ blr + +.global SegmentOver__15CPathFindSearchCFRC9CVector3f +SegmentOver__15CPathFindSearchCFRC9CVector3f: +/* 801CC044 001C8FA4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801CC048 001C8FA8 38 00 00 01 */ li r0, 1 +/* 801CC04C 001C8FAC 80 A3 00 04 */ lwz r5, 4(r3) +/* 801CC050 001C8FB0 2C 05 00 01 */ cmpwi r5, 1 +/* 801CC054 001C8FB4 40 81 00 CC */ ble lbl_801CC120 +/* 801CC058 001C8FB8 80 C3 00 C8 */ lwz r6, 0xc8(r3) +/* 801CC05C 001C8FBC 38 A5 FF FF */ addi r5, r5, -1 +/* 801CC060 001C8FC0 7C 06 28 00 */ cmpw r6, r5 +/* 801CC064 001C8FC4 40 80 00 BC */ bge lbl_801CC120 +/* 801CC068 001C8FC8 38 06 00 02 */ addi r0, r6, 2 +/* 801CC06C 001C8FCC 90 A1 00 08 */ stw r5, 8(r1) +/* 801CC070 001C8FD0 7C 05 00 00 */ cmpw r5, r0 +/* 801CC074 001C8FD4 38 A1 00 0C */ addi r5, r1, 0xc +/* 801CC078 001C8FD8 90 01 00 0C */ stw r0, 0xc(r1) +/* 801CC07C 001C8FDC 40 80 00 08 */ bge lbl_801CC084 +/* 801CC080 001C8FE0 38 A1 00 08 */ addi r5, r1, 8 +lbl_801CC084: +/* 801CC084 001C8FE4 80 E3 00 C8 */ lwz r7, 0xc8(r3) +/* 801CC088 001C8FE8 38 C3 00 08 */ addi r6, r3, 8 +/* 801CC08C 001C8FEC 80 65 00 00 */ lwz r3, 0(r5) +/* 801CC090 001C8FF0 38 07 00 01 */ addi r0, r7, 1 +/* 801CC094 001C8FF4 C0 A4 00 04 */ lfs f5, 4(r4) +/* 801CC098 001C8FF8 1C A7 00 0C */ mulli r5, r7, 0xc +/* 801CC09C 001C8FFC C0 44 00 00 */ lfs f2, 0(r4) +/* 801CC0A0 001C9000 C0 84 00 08 */ lfs f4, 8(r4) +/* 801CC0A4 001C9004 C0 02 AB 60 */ lfs f0, lbl_805AC880@sda21(r2) +/* 801CC0A8 001C9008 7C 86 2A 14 */ add r4, r6, r5 +/* 801CC0AC 001C900C 1C 63 00 0C */ mulli r3, r3, 0xc +/* 801CC0B0 001C9010 C0 24 00 04 */ lfs f1, 4(r4) +/* 801CC0B4 001C9014 C1 04 00 00 */ lfs f8, 0(r4) +/* 801CC0B8 001C9018 C0 C4 00 08 */ lfs f6, 8(r4) +/* 801CC0BC 001C901C 7C 66 1A 14 */ add r3, r6, r3 +/* 801CC0C0 001C9020 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801CC0C4 001C9024 C0 63 00 04 */ lfs f3, 4(r3) +/* 801CC0C8 001C9028 C1 23 00 00 */ lfs f9, 0(r3) +/* 801CC0CC 001C902C C0 E3 00 08 */ lfs f7, 8(r3) +/* 801CC0D0 001C9030 ED 43 08 28 */ fsubs f10, f3, f1 +/* 801CC0D4 001C9034 7C 66 02 14 */ add r3, r6, r0 +/* 801CC0D8 001C9038 C0 63 00 04 */ lfs f3, 4(r3) +/* 801CC0DC 001C903C ED 09 40 28 */ fsubs f8, f9, f8 +/* 801CC0E0 001C9040 C0 23 00 00 */ lfs f1, 0(r3) +/* 801CC0E4 001C9044 EC C7 30 28 */ fsubs f6, f7, f6 +/* 801CC0E8 001C9048 EC A5 18 28 */ fsubs f5, f5, f3 +/* 801CC0EC 001C904C C0 63 00 08 */ lfs f3, 8(r3) +/* 801CC0F0 001C9050 EC 42 08 28 */ fsubs f2, f2, f1 +/* 801CC0F4 001C9054 EC 64 18 28 */ fsubs f3, f4, f3 +/* 801CC0F8 001C9058 EC 25 02 B2 */ fmuls f1, f5, f10 +/* 801CC0FC 001C905C D0 A1 00 14 */ stfs f5, 0x14(r1) +/* 801CC100 001C9060 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 801CC104 001C9064 EC 22 0A 3A */ fmadds f1, f2, f8, f1 +/* 801CC108 001C9068 D0 61 00 18 */ stfs f3, 0x18(r1) +/* 801CC10C 001C906C EC 23 09 BA */ fmadds f1, f3, f6, f1 +/* 801CC110 001C9070 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801CC114 001C9074 4C 41 13 82 */ cror 2, 1, 2 +/* 801CC118 001C9078 7C 00 00 26 */ mfcr r0 +/* 801CC11C 001C907C 54 00 1F FE */ rlwinm r0, r0, 3, 0x1f, 0x1f +lbl_801CC120: +/* 801CC120 001C9080 54 03 06 3E */ clrlwi r3, r0, 0x18 +/* 801CC124 001C9084 38 21 00 20 */ addi r1, r1, 0x20 +/* 801CC128 001C9088 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/PathFinding/CPathFindRegion.s b/asm/Kyoto_CWD/PathFinding/CPathFindRegion.s new file mode 100644 index 00000000..d65e406b --- /dev/null +++ b/asm/Kyoto_CWD/PathFinding/CPathFindRegion.s @@ -0,0 +1,1298 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global FitThroughLink3d__9CPFRegionCFRC9CVector3fRC7CPFLinkfRC9CVector3fff +FitThroughLink3d__9CPFRegionCFRC9CVector3fRC7CPFLinkfRC9CVector3fff: +/* 801C8EA8 001C5E08 94 21 FE D0 */ stwu r1, -0x130(r1) +/* 801C8EAC 001C5E0C 7C 08 02 A6 */ mflr r0 +/* 801C8EB0 001C5E10 90 01 01 34 */ stw r0, 0x134(r1) +/* 801C8EB4 001C5E14 DB E1 01 20 */ stfd f31, 0x120(r1) +/* 801C8EB8 001C5E18 F3 E1 01 28 */ psq_st f31, 296(r1), 0, qr0 +/* 801C8EBC 001C5E1C DB C1 01 10 */ stfd f30, 0x110(r1) +/* 801C8EC0 001C5E20 F3 C1 01 18 */ psq_st f30, 280(r1), 0, qr0 +/* 801C8EC4 001C5E24 DB A1 01 00 */ stfd f29, 0x100(r1) +/* 801C8EC8 001C5E28 F3 A1 01 08 */ psq_st f29, 264(r1), 0, qr0 +/* 801C8ECC 001C5E2C DB 81 00 F0 */ stfd f28, 0xf0(r1) +/* 801C8ED0 001C5E30 F3 81 00 F8 */ psq_st f28, 248(r1), 0, qr0 +/* 801C8ED4 001C5E34 DB 61 00 E0 */ stfd f27, 0xe0(r1) +/* 801C8ED8 001C5E38 F3 61 00 E8 */ psq_st f27, 232(r1), 0, qr0 +/* 801C8EDC 001C5E3C DB 41 00 D0 */ stfd f26, 0xd0(r1) +/* 801C8EE0 001C5E40 F3 41 00 D8 */ psq_st f26, 216(r1), 0, qr0 +/* 801C8EE4 001C5E44 DB 21 00 C0 */ stfd f25, 0xc0(r1) +/* 801C8EE8 001C5E48 F3 21 00 C8 */ psq_st f25, 200(r1), 0, qr0 +/* 801C8EEC 001C5E4C DB 01 00 B0 */ stfd f24, 0xb0(r1) +/* 801C8EF0 001C5E50 F3 01 00 B8 */ psq_st f24, 184(r1), 0, qr0 +/* 801C8EF4 001C5E54 DA E1 00 A0 */ stfd f23, 0xa0(r1) +/* 801C8EF8 001C5E58 F2 E1 00 A8 */ psq_st f23, 168(r1), 0, qr0 +/* 801C8EFC 001C5E5C DA C1 00 90 */ stfd f22, 0x90(r1) +/* 801C8F00 001C5E60 F2 C1 00 98 */ psq_st f22, 152(r1), 0, qr0 +/* 801C8F04 001C5E64 BF 61 00 7C */ stmw r27, 0x7c(r1) +/* 801C8F08 001C5E68 7C DD 33 78 */ mr r29, r6 +/* 801C8F0C 001C5E6C 7C BC 2B 78 */ mr r28, r5 +/* 801C8F10 001C5E70 81 06 00 00 */ lwz r8, 0(r6) +/* 801C8F14 001C5E74 7C FE 3B 78 */ mr r30, r7 +/* 801C8F18 001C5E78 80 A4 00 00 */ lwz r5, 0(r4) +/* 801C8F1C 001C5E7C FC C0 10 18 */ frsp f6, f2 +/* 801C8F20 001C5E80 38 C8 00 01 */ addi r6, r8, 1 +/* 801C8F24 001C5E84 80 E4 00 04 */ lwz r7, 4(r4) +/* 801C8F28 001C5E88 7C 06 2B D6 */ divw r0, r6, r5 +/* 801C8F2C 001C5E8C C1 5C 00 04 */ lfs f10, 4(r28) +/* 801C8F30 001C5E90 C1 1E 00 04 */ lfs f8, 4(r30) +/* 801C8F34 001C5E94 C1 7C 00 00 */ lfs f11, 0(r28) +/* 801C8F38 001C5E98 FF C0 08 90 */ fmr f30, f1 +/* 801C8F3C 001C5E9C C0 FE 00 00 */ lfs f7, 0(r30) +/* 801C8F40 001C5EA0 1C 88 00 18 */ mulli r4, r8, 0x18 +/* 801C8F44 001C5EA4 C1 BC 00 08 */ lfs f13, 8(r28) +/* 801C8F48 001C5EA8 C1 3E 00 08 */ lfs f9, 8(r30) +/* 801C8F4C 001C5EAC FF E0 18 90 */ fmr f31, f3 +/* 801C8F50 001C5EB0 C0 82 AB 40 */ lfs f4, lbl_805AC860@sda21(r2) +/* 801C8F54 001C5EB4 7C 7B 1B 78 */ mr r27, r3 +/* 801C8F58 001C5EB8 7F E7 22 14 */ add r31, r7, r4 +/* 801C8F5C 001C5EBC C0 1D 00 08 */ lfs f0, 8(r29) +/* 801C8F60 001C5EC0 C0 7F 00 04 */ lfs f3, 4(r31) +/* 801C8F64 001C5EC4 7C 00 29 D6 */ mullw r0, r0, r5 +/* 801C8F68 001C5EC8 C0 3F 00 00 */ lfs f1, 0(r31) +/* 801C8F6C 001C5ECC EC A4 00 32 */ fmuls f5, f4, f0 +/* 801C8F70 001C5ED0 C0 9F 00 08 */ lfs f4, 8(r31) +/* 801C8F74 001C5ED4 EF 6A 18 28 */ fsubs f27, f10, f3 +/* 801C8F78 001C5ED8 EC 03 40 28 */ fsubs f0, f3, f8 +/* 801C8F7C 001C5EDC C1 5F 00 10 */ lfs f10, 0x10(r31) +/* 801C8F80 001C5EE0 ED 8B 08 28 */ fsubs f12, f11, f1 +/* 801C8F84 001C5EE4 ED 01 38 28 */ fsubs f8, f1, f7 +/* 801C8F88 001C5EE8 7C 00 30 50 */ subf r0, r0, r6 +/* 801C8F8C 001C5EEC 1C 00 00 18 */ mulli r0, r0, 0x18 +/* 801C8F90 001C5EF0 EF AD 20 28 */ fsubs f29, f13, f4 +/* 801C8F94 001C5EF4 EE C4 48 28 */ fsubs f22, f4, f9 +/* 801C8F98 001C5EF8 ED 3B 02 B2 */ fmuls f9, f27, f10 +/* 801C8F9C 001C5EFC 7C 67 02 14 */ add r3, r7, r0 +/* 801C8FA0 001C5F00 C1 7F 00 0C */ lfs f11, 0xc(r31) +/* 801C8FA4 001C5F04 EC E0 02 B2 */ fmuls f7, f0, f10 +/* 801C8FA8 001C5F08 C3 43 00 00 */ lfs f26, 0(r3) +/* 801C8FAC 001C5F0C C2 E3 00 04 */ lfs f23, 4(r3) +/* 801C8FB0 001C5F10 C1 A3 00 08 */ lfs f13, 8(r3) +/* 801C8FB4 001C5F14 ED 2C 4A FA */ fmadds f9, f12, f11, f9 +/* 801C8FB8 001C5F18 C1 5F 00 14 */ lfs f10, 0x14(r31) +/* 801C8FBC 001C5F1C EC E8 3A FA */ fmadds f7, f8, f11, f7 +/* 801C8FC0 001C5F20 D0 41 00 08 */ stfs f2, 8(r1) +/* 801C8FC4 001C5F24 EF 3D 4A BA */ fmadds f25, f29, f10, f9 +/* 801C8FC8 001C5F28 FC 06 28 40 */ fcmpo cr0, f6, f5 +/* 801C8FCC 001C5F2C D1 81 00 64 */ stfs f12, 0x64(r1) +/* 801C8FD0 001C5F30 EF 16 3A BA */ fmadds f24, f22, f10, f7 +/* 801C8FD4 001C5F34 EF 5A 08 28 */ fsubs f26, f26, f1 +/* 801C8FD8 001C5F38 D3 61 00 68 */ stfs f27, 0x68(r1) +/* 801C8FDC 001C5F3C EF 77 18 28 */ fsubs f27, f23, f3 +/* 801C8FE0 001C5F40 EF 8D 20 28 */ fsubs f28, f13, f4 +/* 801C8FE4 001C5F44 D3 A1 00 6C */ stfs f29, 0x6c(r1) +/* 801C8FE8 001C5F48 EE F9 C0 2A */ fadds f23, f25, f24 +/* 801C8FEC 001C5F4C D1 01 00 58 */ stfs f8, 0x58(r1) +/* 801C8FF0 001C5F50 D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 801C8FF4 001C5F54 D2 C1 00 60 */ stfs f22, 0x60(r1) +/* 801C8FF8 001C5F58 40 80 01 14 */ bge lbl_801C910C +/* 801C8FFC 001C5F5C FC 20 D0 90 */ fmr f1, f26 +/* 801C9000 001C5F60 38 61 00 30 */ addi r3, r1, 0x30 +/* 801C9004 001C5F64 FC 40 D8 90 */ fmr f2, f27 +/* 801C9008 001C5F68 48 14 B1 F9 */ bl __ct__9CVector2fFff +/* 801C900C 001C5F6C C0 21 00 30 */ lfs f1, 0x30(r1) +/* 801C9010 001C5F70 38 61 00 38 */ addi r3, r1, 0x38 +/* 801C9014 001C5F74 C0 01 00 34 */ lfs f0, 0x34(r1) +/* 801C9018 001C5F78 D0 21 00 38 */ stfs f1, 0x38(r1) +/* 801C901C 001C5F7C C0 3D 00 0C */ lfs f1, 0xc(r29) +/* 801C9020 001C5F80 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 801C9024 001C5F84 48 14 B1 29 */ bl __amu__9CVector2fFf +/* 801C9028 001C5F88 C0 5C 00 04 */ lfs f2, 4(r28) +/* 801C902C 001C5F8C 38 61 00 28 */ addi r3, r1, 0x28 +/* 801C9030 001C5F90 C0 1F 00 04 */ lfs f0, 4(r31) +/* 801C9034 001C5F94 C0 3C 00 00 */ lfs f1, 0(r28) +/* 801C9038 001C5F98 EC 42 00 28 */ fsubs f2, f2, f0 +/* 801C903C 001C5F9C C0 1F 00 00 */ lfs f0, 0(r31) +/* 801C9040 001C5FA0 C0 7C 00 08 */ lfs f3, 8(r28) +/* 801C9044 001C5FA4 EC 21 00 28 */ fsubs f1, f1, f0 +/* 801C9048 001C5FA8 C0 1F 00 08 */ lfs f0, 8(r31) +/* 801C904C 001C5FAC D0 41 00 50 */ stfs f2, 0x50(r1) +/* 801C9050 001C5FB0 EC 03 00 28 */ fsubs f0, f3, f0 +/* 801C9054 001C5FB4 D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 801C9058 001C5FB8 D0 01 00 54 */ stfs f0, 0x54(r1) +/* 801C905C 001C5FBC 48 14 B1 A5 */ bl __ct__9CVector2fFff +/* 801C9060 001C5FC0 38 61 00 38 */ addi r3, r1, 0x38 +/* 801C9064 001C5FC4 38 81 00 28 */ addi r4, r1, 0x28 +/* 801C9068 001C5FC8 48 14 AF 41 */ bl Dot__9CVector2fFRC9CVector2fRC9CVector2f +/* 801C906C 001C5FCC C0 5E 00 04 */ lfs f2, 4(r30) +/* 801C9070 001C5FD0 FF A0 08 90 */ fmr f29, f1 +/* 801C9074 001C5FD4 C0 1F 00 04 */ lfs f0, 4(r31) +/* 801C9078 001C5FD8 38 61 00 20 */ addi r3, r1, 0x20 +/* 801C907C 001C5FDC C0 3E 00 00 */ lfs f1, 0(r30) +/* 801C9080 001C5FE0 EC 42 00 28 */ fsubs f2, f2, f0 +/* 801C9084 001C5FE4 C0 1F 00 00 */ lfs f0, 0(r31) +/* 801C9088 001C5FE8 C0 7E 00 08 */ lfs f3, 8(r30) +/* 801C908C 001C5FEC EC 21 00 28 */ fsubs f1, f1, f0 +/* 801C9090 001C5FF0 C0 1F 00 08 */ lfs f0, 8(r31) +/* 801C9094 001C5FF4 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 801C9098 001C5FF8 EC 03 00 28 */ fsubs f0, f3, f0 +/* 801C909C 001C5FFC D0 21 00 40 */ stfs f1, 0x40(r1) +/* 801C90A0 001C6000 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 801C90A4 001C6004 48 14 B1 5D */ bl __ct__9CVector2fFff +/* 801C90A8 001C6008 38 61 00 38 */ addi r3, r1, 0x38 +/* 801C90AC 001C600C 38 81 00 20 */ addi r4, r1, 0x20 +/* 801C90B0 001C6010 48 14 AE F9 */ bl Dot__9CVector2fFRC9CVector2fRC9CVector2f +/* 801C90B4 001C6014 C0 02 AB 44 */ lfs f0, lbl_805AC864@sda21(r2) +/* 801C90B8 001C6018 FC 17 00 40 */ fcmpo cr0, f23, f0 +/* 801C90BC 001C601C 40 81 00 50 */ ble lbl_801C910C +/* 801C90C0 001C6020 C0 02 AB 48 */ lfs f0, lbl_805AC868@sda21(r2) +/* 801C90C4 001C6024 EC 59 00 72 */ fmuls f2, f25, f1 +/* 801C90C8 001C6028 C0 3D 00 08 */ lfs f1, 8(r29) +/* 801C90CC 001C602C 38 61 00 08 */ addi r3, r1, 8 +/* 801C90D0 001C6030 EC 60 B8 24 */ fdivs f3, f0, f23 +/* 801C90D4 001C6034 C0 01 00 08 */ lfs f0, 8(r1) +/* 801C90D8 001C6038 38 81 00 1C */ addi r4, r1, 0x1c +/* 801C90DC 001C603C 38 A1 00 18 */ addi r5, r1, 0x18 +/* 801C90E0 001C6040 EC 58 17 7A */ fmadds f2, f24, f29, f2 +/* 801C90E4 001C6044 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801C90E8 001C6048 EC 23 00 B2 */ fmuls f1, f3, f2 +/* 801C90EC 001C604C D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801C90F0 001C6050 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 801C90F4 001C6054 4B E4 31 C1 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 801C90F8 001C6058 C0 23 00 00 */ lfs f1, 0(r3) +/* 801C90FC 001C605C C0 1D 00 0C */ lfs f0, 0xc(r29) +/* 801C9100 001C6060 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 801C9104 001C6064 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801C9108 001C6068 D0 01 00 1C */ stfs f0, 0x1c(r1) +lbl_801C910C: +/* 801C910C 001C606C C0 C2 AB 40 */ lfs f6, lbl_805AC860@sda21(r2) +/* 801C9110 001C6070 C0 FF 00 00 */ lfs f7, 0(r31) +/* 801C9114 001C6074 EC A6 06 B2 */ fmuls f5, f6, f26 +/* 801C9118 001C6078 C0 9F 00 04 */ lfs f4, 4(r31) +/* 801C911C 001C607C EC 66 06 F2 */ fmuls f3, f6, f27 +/* 801C9120 001C6080 C0 5F 00 08 */ lfs f2, 8(r31) +/* 801C9124 001C6084 EC 26 07 32 */ fmuls f1, f6, f28 +/* 801C9128 001C6088 EC 06 07 B2 */ fmuls f0, f6, f30 +/* 801C912C 001C608C EF 67 28 2A */ fadds f27, f7, f5 +/* 801C9130 001C6090 EF 44 18 2A */ fadds f26, f4, f3 +/* 801C9134 001C6094 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 801C9138 001C6098 EC A2 08 2A */ fadds f5, f2, f1 +/* 801C913C 001C609C 40 80 00 68 */ bge lbl_801C91A4 +/* 801C9140 001C60A0 C0 7C 00 08 */ lfs f3, 8(r28) +/* 801C9144 001C60A4 EC 9F 28 2A */ fadds f4, f31, f5 +/* 801C9148 001C60A8 C0 5E 00 08 */ lfs f2, 8(r30) +/* 801C914C 001C60AC C0 02 AB 44 */ lfs f0, lbl_805AC864@sda21(r2) +/* 801C9150 001C60B0 EC 23 10 2A */ fadds f1, f3, f2 +/* 801C9154 001C60B4 D0 81 00 14 */ stfs f4, 0x14(r1) +/* 801C9158 001C60B8 FC 17 00 40 */ fcmpo cr0, f23, f0 +/* 801C915C 001C60BC EC 06 00 72 */ fmuls f0, f6, f1 +/* 801C9160 001C60C0 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801C9164 001C60C4 40 81 00 1C */ ble lbl_801C9180 +/* 801C9168 001C60C8 C0 22 AB 48 */ lfs f1, lbl_805AC868@sda21(r2) +/* 801C916C 001C60CC EC 19 00 B2 */ fmuls f0, f25, f2 +/* 801C9170 001C60D0 EC 21 B8 24 */ fdivs f1, f1, f23 +/* 801C9174 001C60D4 EC 18 00 FA */ fmadds f0, f24, f3, f0 +/* 801C9178 001C60D8 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801C917C 001C60DC D0 01 00 10 */ stfs f0, 0x10(r1) +lbl_801C9180: +/* 801C9180 001C60E0 EC 1E 28 2A */ fadds f0, f30, f5 +/* 801C9184 001C60E4 38 61 00 14 */ addi r3, r1, 0x14 +/* 801C9188 001C60E8 38 81 00 10 */ addi r4, r1, 0x10 +/* 801C918C 001C60EC 38 A1 00 0C */ addi r5, r1, 0xc +/* 801C9190 001C60F0 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 801C9194 001C60F4 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801C9198 001C60F8 4B E4 31 1D */ bl "Clamp__5CMathFRCfRCfRCf" +/* 801C919C 001C60FC C0 03 00 00 */ lfs f0, 0(r3) +/* 801C91A0 001C6100 48 00 00 14 */ b lbl_801C91B4 +lbl_801C91A4: +/* 801C91A4 001C6104 C0 3C 00 08 */ lfs f1, 8(r28) +/* 801C91A8 001C6108 C0 1E 00 08 */ lfs f0, 8(r30) +/* 801C91AC 001C610C EC 01 00 2A */ fadds f0, f1, f0 +/* 801C91B0 001C6110 EC 06 00 32 */ fmuls f0, f6, f0 +lbl_801C91B4: +/* 801C91B4 001C6114 D3 7B 00 00 */ stfs f27, 0(r27) +/* 801C91B8 001C6118 D3 5B 00 04 */ stfs f26, 4(r27) +/* 801C91BC 001C611C D0 1B 00 08 */ stfs f0, 8(r27) +/* 801C91C0 001C6120 E3 E1 01 28 */ psq_l f31, 296(r1), 0, qr0 +/* 801C91C4 001C6124 CB E1 01 20 */ lfd f31, 0x120(r1) +/* 801C91C8 001C6128 E3 C1 01 18 */ psq_l f30, 280(r1), 0, qr0 +/* 801C91CC 001C612C CB C1 01 10 */ lfd f30, 0x110(r1) +/* 801C91D0 001C6130 E3 A1 01 08 */ psq_l f29, 264(r1), 0, qr0 +/* 801C91D4 001C6134 CB A1 01 00 */ lfd f29, 0x100(r1) +/* 801C91D8 001C6138 E3 81 00 F8 */ psq_l f28, 248(r1), 0, qr0 +/* 801C91DC 001C613C CB 81 00 F0 */ lfd f28, 0xf0(r1) +/* 801C91E0 001C6140 E3 61 00 E8 */ psq_l f27, 232(r1), 0, qr0 +/* 801C91E4 001C6144 CB 61 00 E0 */ lfd f27, 0xe0(r1) +/* 801C91E8 001C6148 E3 41 00 D8 */ psq_l f26, 216(r1), 0, qr0 +/* 801C91EC 001C614C CB 41 00 D0 */ lfd f26, 0xd0(r1) +/* 801C91F0 001C6150 E3 21 00 C8 */ psq_l f25, 200(r1), 0, qr0 +/* 801C91F4 001C6154 CB 21 00 C0 */ lfd f25, 0xc0(r1) +/* 801C91F8 001C6158 E3 01 00 B8 */ psq_l f24, 184(r1), 0, qr0 +/* 801C91FC 001C615C CB 01 00 B0 */ lfd f24, 0xb0(r1) +/* 801C9200 001C6160 E2 E1 00 A8 */ psq_l f23, 168(r1), 0, qr0 +/* 801C9204 001C6164 CA E1 00 A0 */ lfd f23, 0xa0(r1) +/* 801C9208 001C6168 E2 C1 00 98 */ psq_l f22, 152(r1), 0, qr0 +/* 801C920C 001C616C CA C1 00 90 */ lfd f22, 0x90(r1) +/* 801C9210 001C6170 BB 61 00 7C */ lmw r27, 0x7c(r1) +/* 801C9214 001C6174 80 01 01 34 */ lwz r0, 0x134(r1) +/* 801C9218 001C6178 7C 08 03 A6 */ mtlr r0 +/* 801C921C 001C617C 38 21 01 30 */ addi r1, r1, 0x130 +/* 801C9220 001C6180 4E 80 00 20 */ blr + +.global FitThroughLink2d__9CPFRegionCFRC9CVector3fRC7CPFLinkRC9CVector3ff +FitThroughLink2d__9CPFRegionCFRC9CVector3fRC7CPFLinkRC9CVector3ff: +/* 801C9224 001C6184 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 801C9228 001C6188 7C 08 02 A6 */ mflr r0 +/* 801C922C 001C618C 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 801C9230 001C6190 DB E1 00 A0 */ stfd f31, 0xa0(r1) +/* 801C9234 001C6194 F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0 +/* 801C9238 001C6198 DB C1 00 90 */ stfd f30, 0x90(r1) +/* 801C923C 001C619C F3 C1 00 98 */ psq_st f30, 152(r1), 0, qr0 +/* 801C9240 001C61A0 DB A1 00 80 */ stfd f29, 0x80(r1) +/* 801C9244 001C61A4 F3 A1 00 88 */ psq_st f29, 136(r1), 0, qr0 +/* 801C9248 001C61A8 DB 81 00 70 */ stfd f28, 0x70(r1) +/* 801C924C 001C61AC F3 81 00 78 */ psq_st f28, 120(r1), 0, qr0 +/* 801C9250 001C61B0 DB 61 00 60 */ stfd f27, 0x60(r1) +/* 801C9254 001C61B4 F3 61 00 68 */ psq_st f27, 104(r1), 0, qr0 +/* 801C9258 001C61B8 DB 41 00 50 */ stfd f26, 0x50(r1) +/* 801C925C 001C61BC F3 41 00 58 */ psq_st f26, 88(r1), 0, qr0 +/* 801C9260 001C61C0 BF 61 00 3C */ stmw r27, 0x3c(r1) +/* 801C9264 001C61C4 7C DD 33 78 */ mr r29, r6 +/* 801C9268 001C61C8 80 C4 00 00 */ lwz r6, 0(r4) +/* 801C926C 001C61CC 81 1D 00 00 */ lwz r8, 0(r29) +/* 801C9270 001C61D0 FC 40 08 18 */ frsp f2, f1 +/* 801C9274 001C61D4 80 84 00 04 */ lwz r4, 4(r4) +/* 801C9278 001C61D8 7C 7B 1B 78 */ mr r27, r3 +/* 801C927C 001C61DC 38 68 00 01 */ addi r3, r8, 1 +/* 801C9280 001C61E0 C0 62 AB 40 */ lfs f3, lbl_805AC860@sda21(r2) +/* 801C9284 001C61E4 7C 03 33 D6 */ divw r0, r3, r6 +/* 801C9288 001C61E8 C0 1D 00 08 */ lfs f0, 8(r29) +/* 801C928C 001C61EC 7C BC 2B 78 */ mr r28, r5 +/* 801C9290 001C61F0 D0 21 00 08 */ stfs f1, 8(r1) +/* 801C9294 001C61F4 7C FE 3B 78 */ mr r30, r7 +/* 801C9298 001C61F8 EC 03 00 32 */ fmuls f0, f3, f0 +/* 801C929C 001C61FC 7C 00 31 D6 */ mullw r0, r0, r6 +/* 801C92A0 001C6200 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801C92A4 001C6204 7C 00 18 50 */ subf r0, r0, r3 +/* 801C92A8 001C6208 1C 68 00 18 */ mulli r3, r8, 0x18 +/* 801C92AC 001C620C 7F E4 1A 14 */ add r31, r4, r3 +/* 801C92B0 001C6210 1C 00 00 18 */ mulli r0, r0, 0x18 +/* 801C92B4 001C6214 C0 BF 00 00 */ lfs f5, 0(r31) +/* 801C92B8 001C6218 C0 5F 00 04 */ lfs f2, 4(r31) +/* 801C92BC 001C621C C0 1F 00 08 */ lfs f0, 8(r31) +/* 801C92C0 001C6220 7C 64 02 14 */ add r3, r4, r0 +/* 801C92C4 001C6224 C0 C3 00 00 */ lfs f6, 0(r3) +/* 801C92C8 001C6228 C0 83 00 04 */ lfs f4, 4(r3) +/* 801C92CC 001C622C C0 23 00 08 */ lfs f1, 8(r3) +/* 801C92D0 001C6230 EF 86 28 28 */ fsubs f28, f6, f5 +/* 801C92D4 001C6234 EF A4 10 28 */ fsubs f29, f4, f2 +/* 801C92D8 001C6238 EF C1 00 28 */ fsubs f30, f1, f0 +/* 801C92DC 001C623C D0 61 00 10 */ stfs f3, 0x10(r1) +/* 801C92E0 001C6240 40 80 01 34 */ bge lbl_801C9414 +/* 801C92E4 001C6244 FC 20 E0 90 */ fmr f1, f28 +/* 801C92E8 001C6248 38 61 00 24 */ addi r3, r1, 0x24 +/* 801C92EC 001C624C FC 40 E8 90 */ fmr f2, f29 +/* 801C92F0 001C6250 48 14 AF 11 */ bl __ct__9CVector2fFff +/* 801C92F4 001C6254 C0 21 00 24 */ lfs f1, 0x24(r1) +/* 801C92F8 001C6258 38 61 00 2C */ addi r3, r1, 0x2c +/* 801C92FC 001C625C C0 01 00 28 */ lfs f0, 0x28(r1) +/* 801C9300 001C6260 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 801C9304 001C6264 C0 3D 00 0C */ lfs f1, 0xc(r29) +/* 801C9308 001C6268 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801C930C 001C626C 48 14 AE 41 */ bl __amu__9CVector2fFf +/* 801C9310 001C6270 C0 3C 00 04 */ lfs f1, 4(r28) +/* 801C9314 001C6274 38 61 00 1C */ addi r3, r1, 0x1c +/* 801C9318 001C6278 C0 1F 00 04 */ lfs f0, 4(r31) +/* 801C931C 001C627C C0 7C 00 00 */ lfs f3, 0(r28) +/* 801C9320 001C6280 EC 41 00 28 */ fsubs f2, f1, f0 +/* 801C9324 001C6284 C0 3F 00 00 */ lfs f1, 0(r31) +/* 801C9328 001C6288 C0 1F 00 10 */ lfs f0, 0x10(r31) +/* 801C932C 001C628C EC 23 08 28 */ fsubs f1, f3, f1 +/* 801C9330 001C6290 C0 BC 00 08 */ lfs f5, 8(r28) +/* 801C9334 001C6294 C0 9F 00 08 */ lfs f4, 8(r31) +/* 801C9338 001C6298 EC 02 00 32 */ fmuls f0, f2, f0 +/* 801C933C 001C629C C0 7F 00 0C */ lfs f3, 0xc(r31) +/* 801C9340 001C62A0 EC A5 20 28 */ fsubs f5, f5, f4 +/* 801C9344 001C62A4 C0 9F 00 14 */ lfs f4, 0x14(r31) +/* 801C9348 001C62A8 EC 01 00 FA */ fmadds f0, f1, f3, f0 +/* 801C934C 001C62AC EF 65 01 3A */ fmadds f27, f5, f4, f0 +/* 801C9350 001C62B0 48 14 AE B1 */ bl __ct__9CVector2fFff +/* 801C9354 001C62B4 38 61 00 2C */ addi r3, r1, 0x2c +/* 801C9358 001C62B8 38 81 00 1C */ addi r4, r1, 0x1c +/* 801C935C 001C62BC 48 14 AC 4D */ bl Dot__9CVector2fFRC9CVector2fRC9CVector2f +/* 801C9360 001C62C0 C0 5E 00 04 */ lfs f2, 4(r30) +/* 801C9364 001C62C4 FF E0 08 90 */ fmr f31, f1 +/* 801C9368 001C62C8 C0 1F 00 04 */ lfs f0, 4(r31) +/* 801C936C 001C62CC 38 61 00 14 */ addi r3, r1, 0x14 +/* 801C9370 001C62D0 C0 7E 00 00 */ lfs f3, 0(r30) +/* 801C9374 001C62D4 EC 42 00 28 */ fsubs f2, f2, f0 +/* 801C9378 001C62D8 C0 3F 00 00 */ lfs f1, 0(r31) +/* 801C937C 001C62DC C0 1F 00 10 */ lfs f0, 0x10(r31) +/* 801C9380 001C62E0 EC 23 08 28 */ fsubs f1, f3, f1 +/* 801C9384 001C62E4 C0 BE 00 08 */ lfs f5, 8(r30) +/* 801C9388 001C62E8 C0 9F 00 08 */ lfs f4, 8(r31) +/* 801C938C 001C62EC EC 02 00 32 */ fmuls f0, f2, f0 +/* 801C9390 001C62F0 C0 7F 00 0C */ lfs f3, 0xc(r31) +/* 801C9394 001C62F4 EC A5 20 28 */ fsubs f5, f5, f4 +/* 801C9398 001C62F8 C0 9F 00 14 */ lfs f4, 0x14(r31) +/* 801C939C 001C62FC EC 01 00 FA */ fmadds f0, f1, f3, f0 +/* 801C93A0 001C6300 EC 05 01 3A */ fmadds f0, f5, f4, f0 +/* 801C93A4 001C6304 FF 40 00 50 */ fneg f26, f0 +/* 801C93A8 001C6308 48 14 AE 59 */ bl __ct__9CVector2fFff +/* 801C93AC 001C630C 38 61 00 2C */ addi r3, r1, 0x2c +/* 801C93B0 001C6310 38 81 00 14 */ addi r4, r1, 0x14 +/* 801C93B4 001C6314 48 14 AB F5 */ bl Dot__9CVector2fFRC9CVector2fRC9CVector2f +/* 801C93B8 001C6318 EC 7B D0 2A */ fadds f3, f27, f26 +/* 801C93BC 001C631C C0 02 AB 44 */ lfs f0, lbl_805AC864@sda21(r2) +/* 801C93C0 001C6320 FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 801C93C4 001C6324 40 81 00 50 */ ble lbl_801C9414 +/* 801C93C8 001C6328 C0 02 AB 48 */ lfs f0, lbl_805AC868@sda21(r2) +/* 801C93CC 001C632C EC 5B 00 72 */ fmuls f2, f27, f1 +/* 801C93D0 001C6330 C0 3D 00 08 */ lfs f1, 8(r29) +/* 801C93D4 001C6334 38 61 00 08 */ addi r3, r1, 8 +/* 801C93D8 001C6338 EC 60 18 24 */ fdivs f3, f0, f3 +/* 801C93DC 001C633C C0 01 00 08 */ lfs f0, 8(r1) +/* 801C93E0 001C6340 38 81 00 10 */ addi r4, r1, 0x10 +/* 801C93E4 001C6344 38 A1 00 0C */ addi r5, r1, 0xc +/* 801C93E8 001C6348 EC 5A 17 FA */ fmadds f2, f26, f31, f2 +/* 801C93EC 001C634C EC 01 00 28 */ fsubs f0, f1, f0 +/* 801C93F0 001C6350 EC 23 00 B2 */ fmuls f1, f3, f2 +/* 801C93F4 001C6354 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801C93F8 001C6358 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 801C93FC 001C635C 4B E4 2E B9 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 801C9400 001C6360 C0 23 00 00 */ lfs f1, 0(r3) +/* 801C9404 001C6364 C0 1D 00 0C */ lfs f0, 0xc(r29) +/* 801C9408 001C6368 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 801C940C 001C636C EC 01 00 32 */ fmuls f0, f1, f0 +/* 801C9410 001C6370 D0 01 00 10 */ stfs f0, 0x10(r1) +lbl_801C9414: +/* 801C9414 001C6374 C0 41 00 10 */ lfs f2, 0x10(r1) +/* 801C9418 001C6378 C0 3F 00 00 */ lfs f1, 0(r31) +/* 801C941C 001C637C EC 02 07 32 */ fmuls f0, f2, f28 +/* 801C9420 001C6380 C0 BF 00 04 */ lfs f5, 4(r31) +/* 801C9424 001C6384 EC 82 07 72 */ fmuls f4, f2, f29 +/* 801C9428 001C6388 C0 7F 00 08 */ lfs f3, 8(r31) +/* 801C942C 001C638C EC 42 07 B2 */ fmuls f2, f2, f30 +/* 801C9430 001C6390 EC 01 00 2A */ fadds f0, f1, f0 +/* 801C9434 001C6394 EC 85 20 2A */ fadds f4, f5, f4 +/* 801C9438 001C6398 EC 23 10 2A */ fadds f1, f3, f2 +/* 801C943C 001C639C D0 1B 00 00 */ stfs f0, 0(r27) +/* 801C9440 001C63A0 D0 9B 00 04 */ stfs f4, 4(r27) +/* 801C9444 001C63A4 D0 3B 00 08 */ stfs f1, 8(r27) +/* 801C9448 001C63A8 E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0 +/* 801C944C 001C63AC CB E1 00 A0 */ lfd f31, 0xa0(r1) +/* 801C9450 001C63B0 E3 C1 00 98 */ psq_l f30, 152(r1), 0, qr0 +/* 801C9454 001C63B4 CB C1 00 90 */ lfd f30, 0x90(r1) +/* 801C9458 001C63B8 E3 A1 00 88 */ psq_l f29, 136(r1), 0, qr0 +/* 801C945C 001C63BC CB A1 00 80 */ lfd f29, 0x80(r1) +/* 801C9460 001C63C0 E3 81 00 78 */ psq_l f28, 120(r1), 0, qr0 +/* 801C9464 001C63C4 CB 81 00 70 */ lfd f28, 0x70(r1) +/* 801C9468 001C63C8 E3 61 00 68 */ psq_l f27, 104(r1), 0, qr0 +/* 801C946C 001C63CC CB 61 00 60 */ lfd f27, 0x60(r1) +/* 801C9470 001C63D0 E3 41 00 58 */ psq_l f26, 88(r1), 0, qr0 +/* 801C9474 001C63D4 CB 41 00 50 */ lfd f26, 0x50(r1) +/* 801C9478 001C63D8 BB 61 00 3C */ lmw r27, 0x3c(r1) +/* 801C947C 001C63DC 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 801C9480 001C63E0 7C 08 03 A6 */ mtlr r0 +/* 801C9484 001C63E4 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 801C9488 001C63E8 4E 80 00 20 */ blr + +.global GetLinkMidPoint__9CPFRegionCFRC7CPFLink +GetLinkMidPoint__9CPFRegionCFRC7CPFLink: +/* 801C948C 001C63EC 80 E5 00 00 */ lwz r7, 0(r5) +/* 801C9490 001C63F0 80 A4 00 00 */ lwz r5, 0(r4) +/* 801C9494 001C63F4 38 C7 00 01 */ addi r6, r7, 1 +/* 801C9498 001C63F8 81 04 00 04 */ lwz r8, 4(r4) +/* 801C949C 001C63FC 7C 06 2B D6 */ divw r0, r6, r5 +/* 801C94A0 001C6400 C0 A2 AB 40 */ lfs f5, lbl_805AC860@sda21(r2) +/* 801C94A4 001C6404 7C 00 29 D6 */ mullw r0, r0, r5 +/* 801C94A8 001C6408 7C 00 30 50 */ subf r0, r0, r6 +/* 801C94AC 001C640C 1C 87 00 18 */ mulli r4, r7, 0x18 +/* 801C94B0 001C6410 7C 88 22 14 */ add r4, r8, r4 +/* 801C94B4 001C6414 1C 00 00 18 */ mulli r0, r0, 0x18 +/* 801C94B8 001C6418 C0 24 00 00 */ lfs f1, 0(r4) +/* 801C94BC 001C641C C0 84 00 04 */ lfs f4, 4(r4) +/* 801C94C0 001C6420 C0 44 00 08 */ lfs f2, 8(r4) +/* 801C94C4 001C6424 7C 88 02 14 */ add r4, r8, r0 +/* 801C94C8 001C6428 C0 04 00 00 */ lfs f0, 0(r4) +/* 801C94CC 001C642C C0 64 00 04 */ lfs f3, 4(r4) +/* 801C94D0 001C6430 EC 01 00 2A */ fadds f0, f1, f0 +/* 801C94D4 001C6434 C0 24 00 08 */ lfs f1, 8(r4) +/* 801C94D8 001C6438 EC 64 18 2A */ fadds f3, f4, f3 +/* 801C94DC 001C643C EC 22 08 2A */ fadds f1, f2, f1 +/* 801C94E0 001C6440 EC 05 00 32 */ fmuls f0, f5, f0 +/* 801C94E4 001C6444 EC 45 00 F2 */ fmuls f2, f5, f3 +/* 801C94E8 001C6448 EC 25 00 72 */ fmuls f1, f5, f1 +/* 801C94EC 001C644C D0 03 00 00 */ stfs f0, 0(r3) +/* 801C94F0 001C6450 D0 43 00 04 */ stfs f2, 4(r3) +/* 801C94F4 001C6454 D0 23 00 08 */ stfs f1, 8(r3) +/* 801C94F8 001C6458 4E 80 00 20 */ blr + +.global DropToGround__9CPFRegionCFR9CVector3f +DropToGround__9CPFRegionCFR9CVector3f: +/* 801C94FC 001C645C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801C9500 001C6460 80 A3 00 04 */ lwz r5, 4(r3) +/* 801C9504 001C6464 C0 24 00 04 */ lfs f1, 4(r4) +/* 801C9508 001C6468 C0 05 00 04 */ lfs f0, 4(r5) +/* 801C950C 001C646C C0 44 00 00 */ lfs f2, 0(r4) +/* 801C9510 001C6470 EC A1 00 28 */ fsubs f5, f1, f0 +/* 801C9514 001C6474 C0 25 00 00 */ lfs f1, 0(r5) +/* 801C9518 001C6478 C0 03 00 1C */ lfs f0, 0x1c(r3) +/* 801C951C 001C647C EC 62 08 28 */ fsubs f3, f2, f1 +/* 801C9520 001C6480 C0 84 00 08 */ lfs f4, 8(r4) +/* 801C9524 001C6484 EC 05 00 32 */ fmuls f0, f5, f0 +/* 801C9528 001C6488 C0 45 00 08 */ lfs f2, 8(r5) +/* 801C952C 001C648C C0 23 00 18 */ lfs f1, 0x18(r3) +/* 801C9530 001C6490 EC 84 10 28 */ fsubs f4, f4, f2 +/* 801C9534 001C6494 C0 43 00 20 */ lfs f2, 0x20(r3) +/* 801C9538 001C6498 EC 03 00 7A */ fmadds f0, f3, f1, f0 +/* 801C953C 001C649C C0 24 00 08 */ lfs f1, 8(r4) +/* 801C9540 001C64A0 D0 61 00 08 */ stfs f3, 8(r1) +/* 801C9544 001C64A4 EC 04 00 BA */ fmadds f0, f4, f2, f0 +/* 801C9548 001C64A8 D0 A1 00 0C */ stfs f5, 0xc(r1) +/* 801C954C 001C64AC D0 81 00 10 */ stfs f4, 0x10(r1) +/* 801C9550 001C64B0 EC 00 10 24 */ fdivs f0, f0, f2 +/* 801C9554 001C64B4 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801C9558 001C64B8 D0 04 00 08 */ stfs f0, 8(r4) +/* 801C955C 001C64BC 38 21 00 20 */ addi r1, r1, 0x20 +/* 801C9560 001C64C0 4E 80 00 20 */ blr + +.global SetLinkTo__9CPFRegionFi +SetLinkTo__9CPFRegionFi: +/* 801C9564 001C64C4 80 03 00 08 */ lwz r0, 8(r3) +/* 801C9568 001C64C8 38 E0 00 00 */ li r7, 0 +/* 801C956C 001C64CC 38 C0 00 00 */ li r6, 0 +/* 801C9570 001C64D0 7C 09 03 A6 */ mtctr r0 +/* 801C9574 001C64D4 2C 00 00 00 */ cmpwi r0, 0 +/* 801C9578 001C64D8 4C 81 00 20 */ blelr +lbl_801C957C: +/* 801C957C 001C64DC 80 A3 00 0C */ lwz r5, 0xc(r3) +/* 801C9580 001C64E0 38 06 00 04 */ addi r0, r6, 4 +/* 801C9584 001C64E4 7C 05 00 2E */ lwzx r0, r5, r0 +/* 801C9588 001C64E8 7C 04 00 00 */ cmpw r4, r0 +/* 801C958C 001C64EC 40 82 00 10 */ bne lbl_801C959C +/* 801C9590 001C64F0 80 63 00 4C */ lwz r3, 0x4c(r3) +/* 801C9594 001C64F4 90 E3 00 2C */ stw r7, 0x2c(r3) +/* 801C9598 001C64F8 4E 80 00 20 */ blr +lbl_801C959C: +/* 801C959C 001C64FC 38 C6 00 10 */ addi r6, r6, 0x10 +/* 801C95A0 001C6500 38 E7 00 01 */ addi r7, r7, 1 +/* 801C95A4 001C6504 42 00 FF D8 */ bdnz lbl_801C957C + +.global sub_801c95a8 +sub_801c95a8: +/* 801C95A8 001C6508 4E 80 00 20 */ blr + +.global "FindBestPoint__9CPFRegionFRQ24rstl45vector<9CVector3f,Q24rstl17rmemory_allocator>RC9CVector3fUif" +"FindBestPoint__9CPFRegionFRQ24rstl45vector<9CVector3f,Q24rstl17rmemory_allocator>RC9CVector3fUif": +/* 801C95AC 001C650C 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 801C95B0 001C6510 7C 08 02 A6 */ mflr r0 +/* 801C95B4 001C6514 90 01 00 74 */ stw r0, 0x74(r1) +/* 801C95B8 001C6518 BE E1 00 4C */ stmw r23, 0x4c(r1) +/* 801C95BC 001C651C 7C 7C 1B 78 */ mr r28, r3 +/* 801C95C0 001C6520 54 D8 07 BD */ rlwinm. r24, r6, 0, 0x1e, 0x1e +/* 801C95C4 001C6524 7C 9D 23 78 */ mr r29, r4 +/* 801C95C8 001C6528 7C BE 2B 78 */ mr r30, r5 +/* 801C95CC 001C652C 3B E0 00 00 */ li r31, 0 +/* 801C95D0 001C6530 80 63 00 4C */ lwz r3, 0x4c(r3) +/* 801C95D4 001C6534 D0 23 00 00 */ stfs f1, 0(r3) +/* 801C95D8 001C6538 40 82 02 64 */ bne lbl_801C983C +/* 801C95DC 001C653C 3A E0 00 00 */ li r23, 0 +/* 801C95E0 001C6540 3B 20 00 00 */ li r25, 0 +/* 801C95E4 001C6544 48 00 02 4C */ b lbl_801C9830 +lbl_801C95E8: +/* 801C95E8 001C6548 38 97 00 01 */ addi r4, r23, 1 +/* 801C95EC 001C654C 80 FD 00 0C */ lwz r7, 0xc(r29) +/* 801C95F0 001C6550 7C 64 2B D6 */ divw r3, r4, r5 +/* 801C95F4 001C6554 80 1D 00 04 */ lwz r0, 4(r29) +/* 801C95F8 001C6558 80 DC 00 04 */ lwz r6, 4(r28) +/* 801C95FC 001C655C 90 E1 00 2C */ stw r7, 0x2c(r1) +/* 801C9600 001C6560 7F 66 CA 14 */ add r27, r6, r25 +/* 801C9604 001C6564 90 E1 00 28 */ stw r7, 0x28(r1) +/* 801C9608 001C6568 7C 63 29 D6 */ mullw r3, r3, r5 +/* 801C960C 001C656C 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C9610 001C6570 7C 63 20 50 */ subf r3, r3, r4 +/* 801C9614 001C6574 7C 07 02 14 */ add r0, r7, r0 +/* 801C9618 001C6578 1C 63 00 18 */ mulli r3, r3, 0x18 +/* 801C961C 001C657C 90 01 00 34 */ stw r0, 0x34(r1) +/* 801C9620 001C6580 90 01 00 30 */ stw r0, 0x30(r1) +/* 801C9624 001C6584 7F 46 1A 14 */ add r26, r6, r3 +/* 801C9628 001C6588 48 00 00 08 */ b lbl_801C9630 +lbl_801C962C: +/* 801C962C 001C658C 38 E7 00 0C */ addi r7, r7, 0xc +lbl_801C9630: +/* 801C9630 001C6590 7C 07 00 40 */ cmplw r7, r0 +/* 801C9634 001C6594 40 82 FF F8 */ bne lbl_801C962C +/* 801C9638 001C6598 38 00 00 00 */ li r0, 0 +/* 801C963C 001C659C 90 1D 00 04 */ stw r0, 4(r29) +/* 801C9640 001C65A0 80 1D 00 04 */ lwz r0, 4(r29) +/* 801C9644 001C65A4 80 BD 00 08 */ lwz r5, 8(r29) +/* 801C9648 001C65A8 7C 00 28 00 */ cmpw r0, r5 +/* 801C964C 001C65AC 41 80 00 1C */ blt lbl_801C9668 +/* 801C9650 001C65B0 2C 05 00 00 */ cmpwi r5, 0 +/* 801C9654 001C65B4 7F A3 EB 78 */ mr r3, r29 +/* 801C9658 001C65B8 38 80 00 04 */ li r4, 4 +/* 801C965C 001C65BC 41 82 00 08 */ beq lbl_801C9664 +/* 801C9660 001C65C0 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801C9664: +/* 801C9664 001C65C4 4B E9 46 95 */ bl "reserve__Q24rstl45vector<9CVector3f,Q24rstl17rmemory_allocator>Fi" +lbl_801C9668: +/* 801C9668 001C65C8 80 1D 00 04 */ lwz r0, 4(r29) +/* 801C966C 001C65CC 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 801C9670 001C65D0 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C9674 001C65D4 7C 63 02 15 */ add. r3, r3, r0 +/* 801C9678 001C65D8 41 82 00 1C */ beq lbl_801C9694 +/* 801C967C 001C65DC C0 1B 00 00 */ lfs f0, 0(r27) +/* 801C9680 001C65E0 D0 03 00 00 */ stfs f0, 0(r3) +/* 801C9684 001C65E4 C0 1B 00 04 */ lfs f0, 4(r27) +/* 801C9688 001C65E8 D0 03 00 04 */ stfs f0, 4(r3) +/* 801C968C 001C65EC C0 1B 00 08 */ lfs f0, 8(r27) +/* 801C9690 001C65F0 D0 03 00 08 */ stfs f0, 8(r3) +lbl_801C9694: +/* 801C9694 001C65F4 80 7D 00 04 */ lwz r3, 4(r29) +/* 801C9698 001C65F8 38 03 00 01 */ addi r0, r3, 1 +/* 801C969C 001C65FC 90 1D 00 04 */ stw r0, 4(r29) +/* 801C96A0 001C6600 80 1D 00 04 */ lwz r0, 4(r29) +/* 801C96A4 001C6604 80 BD 00 08 */ lwz r5, 8(r29) +/* 801C96A8 001C6608 7C 00 28 00 */ cmpw r0, r5 +/* 801C96AC 001C660C 41 80 00 1C */ blt lbl_801C96C8 +/* 801C96B0 001C6610 2C 05 00 00 */ cmpwi r5, 0 +/* 801C96B4 001C6614 7F A3 EB 78 */ mr r3, r29 +/* 801C96B8 001C6618 38 80 00 04 */ li r4, 4 +/* 801C96BC 001C661C 41 82 00 08 */ beq lbl_801C96C4 +/* 801C96C0 001C6620 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801C96C4: +/* 801C96C4 001C6624 4B E9 46 35 */ bl "reserve__Q24rstl45vector<9CVector3f,Q24rstl17rmemory_allocator>Fi" +lbl_801C96C8: +/* 801C96C8 001C6628 80 1D 00 04 */ lwz r0, 4(r29) +/* 801C96CC 001C662C 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 801C96D0 001C6630 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C96D4 001C6634 7C 63 02 15 */ add. r3, r3, r0 +/* 801C96D8 001C6638 41 82 00 1C */ beq lbl_801C96F4 +/* 801C96DC 001C663C C0 1B 00 00 */ lfs f0, 0(r27) +/* 801C96E0 001C6640 D0 03 00 00 */ stfs f0, 0(r3) +/* 801C96E4 001C6644 C0 1B 00 04 */ lfs f0, 4(r27) +/* 801C96E8 001C6648 D0 03 00 04 */ stfs f0, 4(r3) +/* 801C96EC 001C664C C0 1B 00 08 */ lfs f0, 8(r27) +/* 801C96F0 001C6650 D0 03 00 08 */ stfs f0, 8(r3) +lbl_801C96F4: +/* 801C96F4 001C6654 80 7D 00 04 */ lwz r3, 4(r29) +/* 801C96F8 001C6658 38 03 00 01 */ addi r0, r3, 1 +/* 801C96FC 001C665C 90 1D 00 04 */ stw r0, 4(r29) +/* 801C9700 001C6660 80 7D 00 04 */ lwz r3, 4(r29) +/* 801C9704 001C6664 80 9D 00 0C */ lwz r4, 0xc(r29) +/* 801C9708 001C6668 38 03 FF FF */ addi r0, r3, -1 +/* 801C970C 001C666C C0 1C 00 14 */ lfs f0, 0x14(r28) +/* 801C9710 001C6670 1C 60 00 0C */ mulli r3, r0, 0xc +/* 801C9714 001C6674 38 03 00 08 */ addi r0, r3, 8 +/* 801C9718 001C6678 7C 24 04 2E */ lfsx f1, r4, r0 +/* 801C971C 001C667C EC 01 00 2A */ fadds f0, f1, f0 +/* 801C9720 001C6680 7C 04 05 2E */ stfsx f0, r4, r0 +/* 801C9724 001C6684 80 1D 00 04 */ lwz r0, 4(r29) +/* 801C9728 001C6688 80 BD 00 08 */ lwz r5, 8(r29) +/* 801C972C 001C668C 7C 00 28 00 */ cmpw r0, r5 +/* 801C9730 001C6690 41 80 00 1C */ blt lbl_801C974C +/* 801C9734 001C6694 2C 05 00 00 */ cmpwi r5, 0 +/* 801C9738 001C6698 7F A3 EB 78 */ mr r3, r29 +/* 801C973C 001C669C 38 80 00 04 */ li r4, 4 +/* 801C9740 001C66A0 41 82 00 08 */ beq lbl_801C9748 +/* 801C9744 001C66A4 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801C9748: +/* 801C9748 001C66A8 4B E9 45 B1 */ bl "reserve__Q24rstl45vector<9CVector3f,Q24rstl17rmemory_allocator>Fi" +lbl_801C974C: +/* 801C974C 001C66AC 80 1D 00 04 */ lwz r0, 4(r29) +/* 801C9750 001C66B0 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 801C9754 001C66B4 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C9758 001C66B8 7C 63 02 15 */ add. r3, r3, r0 +/* 801C975C 001C66BC 41 82 00 1C */ beq lbl_801C9778 +/* 801C9760 001C66C0 C0 1A 00 00 */ lfs f0, 0(r26) +/* 801C9764 001C66C4 D0 03 00 00 */ stfs f0, 0(r3) +/* 801C9768 001C66C8 C0 1A 00 04 */ lfs f0, 4(r26) +/* 801C976C 001C66CC D0 03 00 04 */ stfs f0, 4(r3) +/* 801C9770 001C66D0 C0 1A 00 08 */ lfs f0, 8(r26) +/* 801C9774 001C66D4 D0 03 00 08 */ stfs f0, 8(r3) +lbl_801C9778: +/* 801C9778 001C66D8 80 7D 00 04 */ lwz r3, 4(r29) +/* 801C977C 001C66DC 38 03 00 01 */ addi r0, r3, 1 +/* 801C9780 001C66E0 90 1D 00 04 */ stw r0, 4(r29) +/* 801C9784 001C66E4 80 7D 00 04 */ lwz r3, 4(r29) +/* 801C9788 001C66E8 80 9D 00 0C */ lwz r4, 0xc(r29) +/* 801C978C 001C66EC 38 03 FF FF */ addi r0, r3, -1 +/* 801C9790 001C66F0 C0 1C 00 14 */ lfs f0, 0x14(r28) +/* 801C9794 001C66F4 1C 60 00 0C */ mulli r3, r0, 0xc +/* 801C9798 001C66F8 38 03 00 08 */ addi r0, r3, 8 +/* 801C979C 001C66FC 7C 24 04 2E */ lfsx f1, r4, r0 +/* 801C97A0 001C6700 EC 01 00 2A */ fadds f0, f1, f0 +/* 801C97A4 001C6704 7C 04 05 2E */ stfsx f0, r4, r0 +/* 801C97A8 001C6708 80 1D 00 04 */ lwz r0, 4(r29) +/* 801C97AC 001C670C 80 BD 00 08 */ lwz r5, 8(r29) +/* 801C97B0 001C6710 7C 00 28 00 */ cmpw r0, r5 +/* 801C97B4 001C6714 41 80 00 1C */ blt lbl_801C97D0 +/* 801C97B8 001C6718 2C 05 00 00 */ cmpwi r5, 0 +/* 801C97BC 001C671C 7F A3 EB 78 */ mr r3, r29 +/* 801C97C0 001C6720 38 80 00 04 */ li r4, 4 +/* 801C97C4 001C6724 41 82 00 08 */ beq lbl_801C97CC +/* 801C97C8 001C6728 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801C97CC: +/* 801C97CC 001C672C 4B E9 45 2D */ bl "reserve__Q24rstl45vector<9CVector3f,Q24rstl17rmemory_allocator>Fi" +lbl_801C97D0: +/* 801C97D0 001C6730 80 1D 00 04 */ lwz r0, 4(r29) +/* 801C97D4 001C6734 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 801C97D8 001C6738 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C97DC 001C673C 7C 63 02 15 */ add. r3, r3, r0 +/* 801C97E0 001C6740 41 82 00 1C */ beq lbl_801C97FC +/* 801C97E4 001C6744 C0 1A 00 00 */ lfs f0, 0(r26) +/* 801C97E8 001C6748 D0 03 00 00 */ stfs f0, 0(r3) +/* 801C97EC 001C674C C0 1A 00 04 */ lfs f0, 4(r26) +/* 801C97F0 001C6750 D0 03 00 04 */ stfs f0, 4(r3) +/* 801C97F4 001C6754 C0 1A 00 08 */ lfs f0, 8(r26) +/* 801C97F8 001C6758 D0 03 00 08 */ stfs f0, 8(r3) +lbl_801C97FC: +/* 801C97FC 001C675C 80 BD 00 04 */ lwz r5, 4(r29) +/* 801C9800 001C6760 7F 83 E3 78 */ mr r3, r28 +/* 801C9804 001C6764 7F A4 EB 78 */ mr r4, r29 +/* 801C9808 001C6768 7F C6 F3 78 */ mr r6, r30 +/* 801C980C 001C676C 38 05 00 01 */ addi r0, r5, 1 +/* 801C9810 001C6770 38 BB 00 0C */ addi r5, r27, 0xc +/* 801C9814 001C6774 90 1D 00 04 */ stw r0, 4(r29) +/* 801C9818 001C6778 38 E0 00 01 */ li r7, 1 +/* 801C981C 001C677C 48 00 02 45 */ bl "FindClosestPointOnPolygon__9CPFRegionFRCQ24rstl45vector<9CVector3f,Q24rstl17rmemory_allocator>RC9CVector3fRC9CVector3fb" +/* 801C9820 001C6780 7F E0 1B 78 */ or r0, r31, r3 +/* 801C9824 001C6784 3A F7 00 01 */ addi r23, r23, 1 +/* 801C9828 001C6788 54 1F 06 3E */ clrlwi r31, r0, 0x18 +/* 801C982C 001C678C 3B 39 00 18 */ addi r25, r25, 0x18 +lbl_801C9830: +/* 801C9830 001C6790 80 BC 00 00 */ lwz r5, 0(r28) +/* 801C9834 001C6794 7C 17 28 00 */ cmpw r23, r5 +/* 801C9838 001C6798 41 80 FD B0 */ blt lbl_801C95E8 +lbl_801C983C: +/* 801C983C 001C679C 80 1D 00 04 */ lwz r0, 4(r29) +/* 801C9840 001C67A0 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 801C9844 001C67A4 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C9848 001C67A8 90 61 00 1C */ stw r3, 0x1c(r1) +/* 801C984C 001C67AC 7C 03 02 14 */ add r0, r3, r0 +/* 801C9850 001C67B0 90 61 00 18 */ stw r3, 0x18(r1) +/* 801C9854 001C67B4 90 01 00 24 */ stw r0, 0x24(r1) +/* 801C9858 001C67B8 90 01 00 20 */ stw r0, 0x20(r1) +/* 801C985C 001C67BC 48 00 00 08 */ b lbl_801C9864 +lbl_801C9860: +/* 801C9860 001C67C0 38 63 00 0C */ addi r3, r3, 0xc +lbl_801C9864: +/* 801C9864 001C67C4 7C 03 00 40 */ cmplw r3, r0 +/* 801C9868 001C67C8 40 82 FF F8 */ bne lbl_801C9860 +/* 801C986C 001C67CC 3B 40 00 00 */ li r26, 0 +/* 801C9870 001C67D0 93 5D 00 04 */ stw r26, 4(r29) +/* 801C9874 001C67D4 7F 59 D3 78 */ mr r25, r26 +/* 801C9878 001C67D8 48 00 00 74 */ b lbl_801C98EC +lbl_801C987C: +/* 801C987C 001C67DC 80 1D 00 04 */ lwz r0, 4(r29) +/* 801C9880 001C67E0 80 BD 00 08 */ lwz r5, 8(r29) +/* 801C9884 001C67E4 80 7C 00 04 */ lwz r3, 4(r28) +/* 801C9888 001C67E8 7C 00 28 00 */ cmpw r0, r5 +/* 801C988C 001C67EC 7E E3 CA 14 */ add r23, r3, r25 +/* 801C9890 001C67F0 41 80 00 1C */ blt lbl_801C98AC +/* 801C9894 001C67F4 2C 05 00 00 */ cmpwi r5, 0 +/* 801C9898 001C67F8 7F A3 EB 78 */ mr r3, r29 +/* 801C989C 001C67FC 38 80 00 04 */ li r4, 4 +/* 801C98A0 001C6800 41 82 00 08 */ beq lbl_801C98A8 +/* 801C98A4 001C6804 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801C98A8: +/* 801C98A8 001C6808 4B E9 44 51 */ bl "reserve__Q24rstl45vector<9CVector3f,Q24rstl17rmemory_allocator>Fi" +lbl_801C98AC: +/* 801C98AC 001C680C 80 1D 00 04 */ lwz r0, 4(r29) +/* 801C98B0 001C6810 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 801C98B4 001C6814 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C98B8 001C6818 7C 63 02 15 */ add. r3, r3, r0 +/* 801C98BC 001C681C 41 82 00 1C */ beq lbl_801C98D8 +/* 801C98C0 001C6820 C0 17 00 00 */ lfs f0, 0(r23) +/* 801C98C4 001C6824 D0 03 00 00 */ stfs f0, 0(r3) +/* 801C98C8 001C6828 C0 17 00 04 */ lfs f0, 4(r23) +/* 801C98CC 001C682C D0 03 00 04 */ stfs f0, 4(r3) +/* 801C98D0 001C6830 C0 17 00 08 */ lfs f0, 8(r23) +/* 801C98D4 001C6834 D0 03 00 08 */ stfs f0, 8(r3) +lbl_801C98D8: +/* 801C98D8 001C6838 80 7D 00 04 */ lwz r3, 4(r29) +/* 801C98DC 001C683C 3B 39 00 18 */ addi r25, r25, 0x18 +/* 801C98E0 001C6840 3B 5A 00 01 */ addi r26, r26, 1 +/* 801C98E4 001C6844 38 03 00 01 */ addi r0, r3, 1 +/* 801C98E8 001C6848 90 1D 00 04 */ stw r0, 4(r29) +lbl_801C98EC: +/* 801C98EC 001C684C 80 1C 00 00 */ lwz r0, 0(r28) +/* 801C98F0 001C6850 7C 1A 00 00 */ cmpw r26, r0 +/* 801C98F4 001C6854 41 80 FF 88 */ blt lbl_801C987C +/* 801C98F8 001C6858 7F 83 E3 78 */ mr r3, r28 +/* 801C98FC 001C685C 7F A4 EB 78 */ mr r4, r29 +/* 801C9900 001C6860 7F C6 F3 78 */ mr r6, r30 +/* 801C9904 001C6864 38 BC 00 18 */ addi r5, r28, 0x18 +/* 801C9908 001C6868 38 E0 00 00 */ li r7, 0 +/* 801C990C 001C686C 48 00 01 55 */ bl "FindClosestPointOnPolygon__9CPFRegionFRCQ24rstl45vector<9CVector3f,Q24rstl17rmemory_allocator>RC9CVector3fRC9CVector3fb" +/* 801C9910 001C6870 28 18 00 00 */ cmplwi r24, 0 +/* 801C9914 001C6874 7F E0 1B 78 */ or r0, r31, r3 +/* 801C9918 001C6878 54 18 06 3E */ clrlwi r24, r0, 0x18 +/* 801C991C 001C687C 40 82 01 2C */ bne lbl_801C9A48 +/* 801C9920 001C6880 80 1D 00 04 */ lwz r0, 4(r29) +/* 801C9924 001C6884 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 801C9928 001C6888 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C992C 001C688C 90 61 00 0C */ stw r3, 0xc(r1) +/* 801C9930 001C6890 7C 03 02 14 */ add r0, r3, r0 +/* 801C9934 001C6894 90 61 00 08 */ stw r3, 8(r1) +/* 801C9938 001C6898 90 01 00 14 */ stw r0, 0x14(r1) +/* 801C993C 001C689C 90 01 00 10 */ stw r0, 0x10(r1) +/* 801C9940 001C68A0 48 00 00 08 */ b lbl_801C9948 +lbl_801C9944: +/* 801C9944 001C68A4 38 63 00 0C */ addi r3, r3, 0xc +lbl_801C9948: +/* 801C9948 001C68A8 7C 03 00 40 */ cmplw r3, r0 +/* 801C994C 001C68AC 40 82 FF F8 */ bne lbl_801C9944 +/* 801C9950 001C68B0 38 00 00 00 */ li r0, 0 +/* 801C9954 001C68B4 90 1D 00 04 */ stw r0, 4(r29) +/* 801C9958 001C68B8 80 7C 00 00 */ lwz r3, 0(r28) +/* 801C995C 001C68BC 3B 43 FF FF */ addi r26, r3, -1 +/* 801C9960 001C68C0 1F 3A 00 18 */ mulli r25, r26, 0x18 +/* 801C9964 001C68C4 48 00 00 98 */ b lbl_801C99FC +lbl_801C9968: +/* 801C9968 001C68C8 80 1D 00 04 */ lwz r0, 4(r29) +/* 801C996C 001C68CC 80 BD 00 08 */ lwz r5, 8(r29) +/* 801C9970 001C68D0 80 7C 00 04 */ lwz r3, 4(r28) +/* 801C9974 001C68D4 7C 00 28 00 */ cmpw r0, r5 +/* 801C9978 001C68D8 7E E3 CA 14 */ add r23, r3, r25 +/* 801C997C 001C68DC 41 80 00 1C */ blt lbl_801C9998 +/* 801C9980 001C68E0 2C 05 00 00 */ cmpwi r5, 0 +/* 801C9984 001C68E4 7F A3 EB 78 */ mr r3, r29 +/* 801C9988 001C68E8 38 80 00 04 */ li r4, 4 +/* 801C998C 001C68EC 41 82 00 08 */ beq lbl_801C9994 +/* 801C9990 001C68F0 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801C9994: +/* 801C9994 001C68F4 4B E9 43 65 */ bl "reserve__Q24rstl45vector<9CVector3f,Q24rstl17rmemory_allocator>Fi" +lbl_801C9998: +/* 801C9998 001C68F8 80 1D 00 04 */ lwz r0, 4(r29) +/* 801C999C 001C68FC 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 801C99A0 001C6900 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C99A4 001C6904 7C 63 02 15 */ add. r3, r3, r0 +/* 801C99A8 001C6908 41 82 00 1C */ beq lbl_801C99C4 +/* 801C99AC 001C690C C0 17 00 00 */ lfs f0, 0(r23) +/* 801C99B0 001C6910 D0 03 00 00 */ stfs f0, 0(r3) +/* 801C99B4 001C6914 C0 17 00 04 */ lfs f0, 4(r23) +/* 801C99B8 001C6918 D0 03 00 04 */ stfs f0, 4(r3) +/* 801C99BC 001C691C C0 17 00 08 */ lfs f0, 8(r23) +/* 801C99C0 001C6920 D0 03 00 08 */ stfs f0, 8(r3) +lbl_801C99C4: +/* 801C99C4 001C6924 80 7D 00 04 */ lwz r3, 4(r29) +/* 801C99C8 001C6928 3B 39 FF E8 */ addi r25, r25, -24 +/* 801C99CC 001C692C 3B 5A FF FF */ addi r26, r26, -1 +/* 801C99D0 001C6930 38 03 00 01 */ addi r0, r3, 1 +/* 801C99D4 001C6934 90 1D 00 04 */ stw r0, 4(r29) +/* 801C99D8 001C6938 80 7D 00 04 */ lwz r3, 4(r29) +/* 801C99DC 001C693C 80 9D 00 0C */ lwz r4, 0xc(r29) +/* 801C99E0 001C6940 38 03 FF FF */ addi r0, r3, -1 +/* 801C99E4 001C6944 C0 1C 00 14 */ lfs f0, 0x14(r28) +/* 801C99E8 001C6948 1C 60 00 0C */ mulli r3, r0, 0xc +/* 801C99EC 001C694C 38 03 00 08 */ addi r0, r3, 8 +/* 801C99F0 001C6950 7C 24 04 2E */ lfsx f1, r4, r0 +/* 801C99F4 001C6954 EC 01 00 2A */ fadds f0, f1, f0 +/* 801C99F8 001C6958 7C 04 05 2E */ stfsx f0, r4, r0 +lbl_801C99FC: +/* 801C99FC 001C695C 2C 1A 00 00 */ cmpwi r26, 0 +/* 801C9A00 001C6960 40 80 FF 68 */ bge lbl_801C9968 +/* 801C9A04 001C6964 C0 5C 00 20 */ lfs f2, 0x20(r28) +/* 801C9A08 001C6968 7F 83 E3 78 */ mr r3, r28 +/* 801C9A0C 001C696C C0 3C 00 1C */ lfs f1, 0x1c(r28) +/* 801C9A10 001C6970 7F A4 EB 78 */ mr r4, r29 +/* 801C9A14 001C6974 C0 1C 00 18 */ lfs f0, 0x18(r28) +/* 801C9A18 001C6978 FC 40 10 50 */ fneg f2, f2 +/* 801C9A1C 001C697C FC 20 08 50 */ fneg f1, f1 +/* 801C9A20 001C6980 7F C6 F3 78 */ mr r6, r30 +/* 801C9A24 001C6984 FC 00 00 50 */ fneg f0, f0 +/* 801C9A28 001C6988 38 A1 00 38 */ addi r5, r1, 0x38 +/* 801C9A2C 001C698C D0 41 00 40 */ stfs f2, 0x40(r1) +/* 801C9A30 001C6990 38 E0 00 00 */ li r7, 0 +/* 801C9A34 001C6994 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 801C9A38 001C6998 D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 801C9A3C 001C699C 48 00 00 25 */ bl "FindClosestPointOnPolygon__9CPFRegionFRCQ24rstl45vector<9CVector3f,Q24rstl17rmemory_allocator>RC9CVector3fRC9CVector3fb" +/* 801C9A40 001C69A0 7F 00 1B 78 */ or r0, r24, r3 +/* 801C9A44 001C69A4 54 18 06 3E */ clrlwi r24, r0, 0x18 +lbl_801C9A48: +/* 801C9A48 001C69A8 7F 03 C3 78 */ mr r3, r24 +/* 801C9A4C 001C69AC BA E1 00 4C */ lmw r23, 0x4c(r1) +/* 801C9A50 001C69B0 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801C9A54 001C69B4 7C 08 03 A6 */ mtlr r0 +/* 801C9A58 001C69B8 38 21 00 70 */ addi r1, r1, 0x70 +/* 801C9A5C 001C69BC 4E 80 00 20 */ blr + +.global "FindClosestPointOnPolygon__9CPFRegionFRCQ24rstl45vector<9CVector3f,Q24rstl17rmemory_allocator>RC9CVector3fRC9CVector3fb" +"FindClosestPointOnPolygon__9CPFRegionFRCQ24rstl45vector<9CVector3f,Q24rstl17rmemory_allocator>RC9CVector3fRC9CVector3fb": +/* 801C9A60 001C69C0 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 801C9A64 001C69C4 7C 08 02 A6 */ mflr r0 +/* 801C9A68 001C69C8 90 01 00 74 */ stw r0, 0x74(r1) +/* 801C9A6C 001C69CC DB E1 00 60 */ stfd f31, 0x60(r1) +/* 801C9A70 001C69D0 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 801C9A74 001C69D4 DB C1 00 50 */ stfd f30, 0x50(r1) +/* 801C9A78 001C69D8 F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 +/* 801C9A7C 001C69DC DB A1 00 40 */ stfd f29, 0x40(r1) +/* 801C9A80 001C69E0 F3 A1 00 48 */ psq_st f29, 72(r1), 0, qr0 +/* 801C9A84 001C69E4 BF 21 00 24 */ stmw r25, 0x24(r1) +/* 801C9A88 001C69E8 7C 9A 23 78 */ mr r26, r4 +/* 801C9A8C 001C69EC 7C 79 1B 78 */ mr r25, r3 +/* 801C9A90 001C69F0 83 E4 00 04 */ lwz r31, 4(r4) +/* 801C9A94 001C69F4 7C DB 33 78 */ mr r27, r6 +/* 801C9A98 001C69F8 7C FC 3B 78 */ mr r28, r7 +/* 801C9A9C 001C69FC C0 02 AB 4C */ lfs f0, lbl_805AC86C@sda21(r2) +/* 801C9AA0 001C6A00 3B C0 00 00 */ li r30, 0 +/* 801C9AA4 001C6A04 39 00 00 00 */ li r8, 0 +/* 801C9AA8 001C6A08 38 80 00 00 */ li r4, 0 +/* 801C9AAC 001C6A0C 7F E9 03 A6 */ mtctr r31 +/* 801C9AB0 001C6A10 2C 1F 00 00 */ cmpwi r31, 0 +/* 801C9AB4 001C6A14 40 81 00 A4 */ ble lbl_801C9B58 +lbl_801C9AB8: +/* 801C9AB8 001C6A18 38 68 00 01 */ addi r3, r8, 1 +/* 801C9ABC 001C6A1C 80 FA 00 0C */ lwz r7, 0xc(r26) +/* 801C9AC0 001C6A20 7C 03 FB D6 */ divw r0, r3, r31 +/* 801C9AC4 001C6A24 C1 85 00 08 */ lfs f12, 8(r5) +/* 801C9AC8 001C6A28 7C C7 22 14 */ add r6, r7, r4 +/* 801C9ACC 001C6A2C C1 45 00 00 */ lfs f10, 0(r5) +/* 801C9AD0 001C6A30 C1 06 00 00 */ lfs f8, 0(r6) +/* 801C9AD4 001C6A34 C0 3B 00 00 */ lfs f1, 0(r27) +/* 801C9AD8 001C6A38 7C 00 F9 D6 */ mullw r0, r0, r31 +/* 801C9ADC 001C6A3C C0 A6 00 08 */ lfs f5, 8(r6) +/* 801C9AE0 001C6A40 C0 7B 00 08 */ lfs f3, 8(r27) +/* 801C9AE4 001C6A44 EC 81 40 28 */ fsubs f4, f1, f8 +/* 801C9AE8 001C6A48 C0 E6 00 04 */ lfs f7, 4(r6) +/* 801C9AEC 001C6A4C C0 3B 00 04 */ lfs f1, 4(r27) +/* 801C9AF0 001C6A50 7C 00 18 50 */ subf r0, r0, r3 +/* 801C9AF4 001C6A54 C1 65 00 04 */ lfs f11, 4(r5) +/* 801C9AF8 001C6A58 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C9AFC 001C6A5C EC 41 38 28 */ fsubs f2, f1, f7 +/* 801C9B00 001C6A60 EC C3 28 28 */ fsubs f6, f3, f5 +/* 801C9B04 001C6A64 7C 67 02 14 */ add r3, r7, r0 +/* 801C9B08 001C6A68 C0 63 00 00 */ lfs f3, 0(r3) +/* 801C9B0C 001C6A6C C0 23 00 08 */ lfs f1, 8(r3) +/* 801C9B10 001C6A70 ED 23 40 28 */ fsubs f9, f3, f8 +/* 801C9B14 001C6A74 C0 63 00 04 */ lfs f3, 4(r3) +/* 801C9B18 001C6A78 ED 01 28 28 */ fsubs f8, f1, f5 +/* 801C9B1C 001C6A7C EC E3 38 28 */ fsubs f7, f3, f7 +/* 801C9B20 001C6A80 EC 2C 02 72 */ fmuls f1, f12, f9 +/* 801C9B24 001C6A84 EC 6B 02 32 */ fmuls f3, f11, f8 +/* 801C9B28 001C6A88 EC AA 01 F2 */ fmuls f5, f10, f7 +/* 801C9B2C 001C6A8C EC 28 0A B8 */ fmsubs f1, f8, f10, f1 +/* 801C9B30 001C6A90 EC 67 1B 38 */ fmsubs f3, f7, f12, f3 +/* 801C9B34 001C6A94 EC A9 2A F8 */ fmsubs f5, f9, f11, f5 +/* 801C9B38 001C6A98 EC 22 00 72 */ fmuls f1, f2, f1 +/* 801C9B3C 001C6A9C EC 24 08 FA */ fmadds f1, f4, f3, f1 +/* 801C9B40 001C6AA0 EC 26 09 7A */ fmadds f1, f6, f5, f1 +/* 801C9B44 001C6AA4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C9B48 001C6AA8 41 80 00 10 */ blt lbl_801C9B58 +/* 801C9B4C 001C6AAC 38 84 00 0C */ addi r4, r4, 0xc +/* 801C9B50 001C6AB0 39 08 00 01 */ addi r8, r8, 1 +/* 801C9B54 001C6AB4 42 00 FF 64 */ bdnz lbl_801C9AB8 +lbl_801C9B58: +/* 801C9B58 001C6AB8 7C 08 F8 00 */ cmpw r8, r31 +/* 801C9B5C 001C6ABC 40 82 00 A4 */ bne lbl_801C9C00 +/* 801C9B60 001C6AC0 80 7A 00 0C */ lwz r3, 0xc(r26) +/* 801C9B64 001C6AC4 80 99 00 4C */ lwz r4, 0x4c(r25) +/* 801C9B68 001C6AC8 C0 23 00 04 */ lfs f1, 4(r3) +/* 801C9B6C 001C6ACC C0 1B 00 04 */ lfs f0, 4(r27) +/* 801C9B70 001C6AD0 C0 63 00 00 */ lfs f3, 0(r3) +/* 801C9B74 001C6AD4 C0 5B 00 00 */ lfs f2, 0(r27) +/* 801C9B78 001C6AD8 EC 21 00 28 */ fsubs f1, f1, f0 +/* 801C9B7C 001C6ADC C0 05 00 04 */ lfs f0, 4(r5) +/* 801C9B80 001C6AE0 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801C9B84 001C6AE4 C0 83 00 08 */ lfs f4, 8(r3) +/* 801C9B88 001C6AE8 C0 7B 00 08 */ lfs f3, 8(r27) +/* 801C9B8C 001C6AEC EC 01 00 32 */ fmuls f0, f1, f0 +/* 801C9B90 001C6AF0 C0 25 00 00 */ lfs f1, 0(r5) +/* 801C9B94 001C6AF4 EC 64 18 28 */ fsubs f3, f4, f3 +/* 801C9B98 001C6AF8 EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 801C9B9C 001C6AFC C0 45 00 08 */ lfs f2, 8(r5) +/* 801C9BA0 001C6B00 C0 04 00 00 */ lfs f0, 0(r4) +/* 801C9BA4 001C6B04 EC A3 08 BA */ fmadds f5, f3, f2, f1 +/* 801C9BA8 001C6B08 EC 25 01 72 */ fmuls f1, f5, f5 +/* 801C9BAC 001C6B0C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C9BB0 001C6B10 40 80 02 7C */ bge lbl_801C9E2C +/* 801C9BB4 001C6B14 D0 24 00 00 */ stfs f1, 0(r4) +/* 801C9BB8 001C6B18 3B C0 00 01 */ li r30, 1 +/* 801C9BBC 001C6B1C C0 05 00 00 */ lfs f0, 0(r5) +/* 801C9BC0 001C6B20 C0 65 00 04 */ lfs f3, 4(r5) +/* 801C9BC4 001C6B24 EC 05 00 32 */ fmuls f0, f5, f0 +/* 801C9BC8 001C6B28 C0 3B 00 00 */ lfs f1, 0(r27) +/* 801C9BCC 001C6B2C C0 45 00 08 */ lfs f2, 8(r5) +/* 801C9BD0 001C6B30 EC 65 00 F2 */ fmuls f3, f5, f3 +/* 801C9BD4 001C6B34 C0 9B 00 04 */ lfs f4, 4(r27) +/* 801C9BD8 001C6B38 EC 01 00 2A */ fadds f0, f1, f0 +/* 801C9BDC 001C6B3C EC 25 00 B2 */ fmuls f1, f5, f2 +/* 801C9BE0 001C6B40 C0 5B 00 08 */ lfs f2, 8(r27) +/* 801C9BE4 001C6B44 80 79 00 4C */ lwz r3, 0x4c(r25) +/* 801C9BE8 001C6B48 EC 64 18 2A */ fadds f3, f4, f3 +/* 801C9BEC 001C6B4C D0 03 00 04 */ stfs f0, 4(r3) +/* 801C9BF0 001C6B50 EC 02 08 2A */ fadds f0, f2, f1 +/* 801C9BF4 001C6B54 D0 63 00 08 */ stfs f3, 8(r3) +/* 801C9BF8 001C6B58 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 801C9BFC 001C6B5C 48 00 02 30 */ b lbl_801C9E2C +lbl_801C9C00: +/* 801C9C00 001C6B60 39 00 00 00 */ li r8, 0 +/* 801C9C04 001C6B64 C0 22 AB 4C */ lfs f1, lbl_805AC86C@sda21(r2) +/* 801C9C08 001C6B68 7D 06 43 78 */ mr r6, r8 +/* 801C9C0C 001C6B6C 3B A0 00 00 */ li r29, 0 +/* 801C9C10 001C6B70 7F E9 03 A6 */ mtctr r31 +/* 801C9C14 001C6B74 2C 1F 00 00 */ cmpwi r31, 0 +/* 801C9C18 001C6B78 40 81 01 78 */ ble lbl_801C9D90 +lbl_801C9C1C: +/* 801C9C1C 001C6B7C 38 68 00 01 */ addi r3, r8, 1 +/* 801C9C20 001C6B80 80 FA 00 0C */ lwz r7, 0xc(r26) +/* 801C9C24 001C6B84 7C 03 FB D6 */ divw r0, r3, r31 +/* 801C9C28 001C6B88 C3 C5 00 08 */ lfs f30, 8(r5) +/* 801C9C2C 001C6B8C 7C 87 32 14 */ add r4, r7, r6 +/* 801C9C30 001C6B90 C1 1B 00 04 */ lfs f8, 4(r27) +/* 801C9C34 001C6B94 C0 04 00 00 */ lfs f0, 0(r4) +/* 801C9C38 001C6B98 C0 44 00 08 */ lfs f2, 8(r4) +/* 801C9C3C 001C6B9C 7C 00 F9 D6 */ mullw r0, r0, r31 +/* 801C9C40 001C6BA0 C0 64 00 04 */ lfs f3, 4(r4) +/* 801C9C44 001C6BA4 C1 A5 00 00 */ lfs f13, 0(r5) +/* 801C9C48 001C6BA8 C3 A5 00 04 */ lfs f29, 4(r5) +/* 801C9C4C 001C6BAC C1 5B 00 00 */ lfs f10, 0(r27) +/* 801C9C50 001C6BB0 C0 DB 00 08 */ lfs f6, 8(r27) +/* 801C9C54 001C6BB4 7C 00 18 50 */ subf r0, r0, r3 +/* 801C9C58 001C6BB8 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C9C5C 001C6BBC 7C 67 02 14 */ add r3, r7, r0 +/* 801C9C60 001C6BC0 C1 23 00 00 */ lfs f9, 0(r3) +/* 801C9C64 001C6BC4 C0 A3 00 08 */ lfs f5, 8(r3) +/* 801C9C68 001C6BC8 EC 89 00 28 */ fsubs f4, f9, f0 +/* 801C9C6C 001C6BCC C0 E3 00 04 */ lfs f7, 4(r3) +/* 801C9C70 001C6BD0 ED 65 10 28 */ fsubs f11, f5, f2 +/* 801C9C74 001C6BD4 ED 87 18 28 */ fsubs f12, f7, f3 +/* 801C9C78 001C6BD8 EC 1E 01 32 */ fmuls f0, f30, f4 +/* 801C9C7C 001C6BDC D0 81 00 08 */ stfs f4, 8(r1) +/* 801C9C80 001C6BE0 EC 5D 02 F2 */ fmuls f2, f29, f11 +/* 801C9C84 001C6BE4 EC E8 38 28 */ fsubs f7, f8, f7 +/* 801C9C88 001C6BE8 D1 81 00 0C */ stfs f12, 0xc(r1) +/* 801C9C8C 001C6BEC EC 0B 03 78 */ fmsubs f0, f11, f13, f0 +/* 801C9C90 001C6BF0 EC 6D 03 32 */ fmuls f3, f13, f12 +/* 801C9C94 001C6BF4 D1 61 00 10 */ stfs f11, 0x10(r1) +/* 801C9C98 001C6BF8 ED 0A 48 28 */ fsubs f8, f10, f9 +/* 801C9C9C 001C6BFC EC 4C 17 B8 */ fmsubs f2, f12, f30, f2 +/* 801C9CA0 001C6C00 EC 07 00 32 */ fmuls f0, f7, f0 +/* 801C9CA4 001C6C04 EC A6 28 28 */ fsubs f5, f6, f5 +/* 801C9CA8 001C6C08 EC 64 1F 78 */ fmsubs f3, f4, f29, f3 +/* 801C9CAC 001C6C0C EC 08 00 BA */ fmadds f0, f8, f2, f0 +/* 801C9CB0 001C6C10 EC 05 00 FA */ fmadds f0, f5, f3, f0 +/* 801C9CB4 001C6C14 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801C9CB8 001C6C18 40 80 00 CC */ bge lbl_801C9D84 +/* 801C9CBC 001C6C1C EC 07 03 32 */ fmuls f0, f7, f12 +/* 801C9CC0 001C6C20 EC 08 01 3A */ fmadds f0, f8, f4, f0 +/* 801C9CC4 001C6C24 EC 05 02 FA */ fmadds f0, f5, f11, f0 +/* 801C9CC8 001C6C28 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801C9CCC 001C6C2C 4C 40 13 82 */ cror 2, 0, 2 +/* 801C9CD0 001C6C30 40 82 00 B4 */ bne lbl_801C9D84 +/* 801C9CD4 001C6C34 EF C7 60 2A */ fadds f30, f7, f12 +/* 801C9CD8 001C6C38 EF E8 20 2A */ fadds f31, f8, f4 +/* 801C9CDC 001C6C3C EF A5 58 2A */ fadds f29, f5, f11 +/* 801C9CE0 001C6C40 EC 1E 03 32 */ fmuls f0, f30, f12 +/* 801C9CE4 001C6C44 EC 1F 01 3A */ fmadds f0, f31, f4, f0 +/* 801C9CE8 001C6C48 EC 1D 02 FA */ fmadds f0, f29, f11, f0 +/* 801C9CEC 001C6C4C FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801C9CF0 001C6C50 4C 41 13 82 */ cror 2, 1, 2 +/* 801C9CF4 001C6C54 40 82 00 90 */ bne lbl_801C9D84 +/* 801C9CF8 001C6C58 38 61 00 08 */ addi r3, r1, 8 +/* 801C9CFC 001C6C5C 3B A0 00 01 */ li r29, 1 +/* 801C9D00 001C6C60 48 14 AB F9 */ bl Normalize__9CVector3fFv +/* 801C9D04 001C6C64 C0 41 00 0C */ lfs f2, 0xc(r1) +/* 801C9D08 001C6C68 80 79 00 4C */ lwz r3, 0x4c(r25) +/* 801C9D0C 001C6C6C EC 3E 00 B2 */ fmuls f1, f30, f2 +/* 801C9D10 001C6C70 C0 61 00 08 */ lfs f3, 8(r1) +/* 801C9D14 001C6C74 C0 81 00 10 */ lfs f4, 0x10(r1) +/* 801C9D18 001C6C78 C0 03 00 00 */ lfs f0, 0(r3) +/* 801C9D1C 001C6C7C EC 3F 08 FA */ fmadds f1, f31, f3, f1 +/* 801C9D20 001C6C80 EC 3D 09 3A */ fmadds f1, f29, f4, f1 +/* 801C9D24 001C6C84 EC 41 00 B2 */ fmuls f2, f1, f2 +/* 801C9D28 001C6C88 EC 61 00 F2 */ fmuls f3, f1, f3 +/* 801C9D2C 001C6C8C EC 21 01 32 */ fmuls f1, f1, f4 +/* 801C9D30 001C6C90 EF DE 10 28 */ fsubs f30, f30, f2 +/* 801C9D34 001C6C94 EF FF 18 28 */ fsubs f31, f31, f3 +/* 801C9D38 001C6C98 EF BD 08 28 */ fsubs f29, f29, f1 +/* 801C9D3C 001C6C9C EC 3E 07 B2 */ fmuls f1, f30, f30 +/* 801C9D40 001C6CA0 EC 3F 0F FA */ fmadds f1, f31, f31, f1 +/* 801C9D44 001C6CA4 EC 3D 0F 7A */ fmadds f1, f29, f29, f1 +/* 801C9D48 001C6CA8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C9D4C 001C6CAC 40 80 00 44 */ bge lbl_801C9D90 +/* 801C9D50 001C6CB0 D0 23 00 00 */ stfs f1, 0(r3) +/* 801C9D54 001C6CB4 3B C0 00 01 */ li r30, 1 +/* 801C9D58 001C6CB8 C0 1B 00 00 */ lfs f0, 0(r27) +/* 801C9D5C 001C6CBC C0 5B 00 04 */ lfs f2, 4(r27) +/* 801C9D60 001C6CC0 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 801C9D64 001C6CC4 C0 3B 00 08 */ lfs f1, 8(r27) +/* 801C9D68 001C6CC8 80 79 00 4C */ lwz r3, 0x4c(r25) +/* 801C9D6C 001C6CCC EC 42 F0 28 */ fsubs f2, f2, f30 +/* 801C9D70 001C6CD0 EC 21 E8 28 */ fsubs f1, f1, f29 +/* 801C9D74 001C6CD4 D0 03 00 04 */ stfs f0, 4(r3) +/* 801C9D78 001C6CD8 D0 43 00 08 */ stfs f2, 8(r3) +/* 801C9D7C 001C6CDC D0 23 00 0C */ stfs f1, 0xc(r3) +/* 801C9D80 001C6CE0 48 00 00 10 */ b lbl_801C9D90 +lbl_801C9D84: +/* 801C9D84 001C6CE4 38 C6 00 0C */ addi r6, r6, 0xc +/* 801C9D88 001C6CE8 39 08 00 01 */ addi r8, r8, 1 +/* 801C9D8C 001C6CEC 42 00 FE 90 */ bdnz lbl_801C9C1C +lbl_801C9D90: +/* 801C9D90 001C6CF0 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 801C9D94 001C6CF4 40 82 00 98 */ bne lbl_801C9E2C +/* 801C9D98 001C6CF8 57 80 06 3F */ clrlwi. r0, r28, 0x18 +/* 801C9D9C 001C6CFC 40 82 00 90 */ bne lbl_801C9E2C +/* 801C9DA0 001C6D00 38 A0 00 00 */ li r5, 0 +/* 801C9DA4 001C6D04 7F E9 03 A6 */ mtctr r31 +/* 801C9DA8 001C6D08 2C 1F 00 00 */ cmpwi r31, 0 +/* 801C9DAC 001C6D0C 40 81 00 80 */ ble lbl_801C9E2C +lbl_801C9DB0: +/* 801C9DB0 001C6D10 80 1A 00 0C */ lwz r0, 0xc(r26) +/* 801C9DB4 001C6D14 80 99 00 4C */ lwz r4, 0x4c(r25) +/* 801C9DB8 001C6D18 7C 60 2A 14 */ add r3, r0, r5 +/* 801C9DBC 001C6D1C C0 3B 00 04 */ lfs f1, 4(r27) +/* 801C9DC0 001C6D20 C0 03 00 04 */ lfs f0, 4(r3) +/* 801C9DC4 001C6D24 C0 7B 00 00 */ lfs f3, 0(r27) +/* 801C9DC8 001C6D28 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801C9DCC 001C6D2C C0 23 00 00 */ lfs f1, 0(r3) +/* 801C9DD0 001C6D30 C0 5B 00 08 */ lfs f2, 8(r27) +/* 801C9DD4 001C6D34 C0 03 00 08 */ lfs f0, 8(r3) +/* 801C9DD8 001C6D38 EC 63 08 28 */ fsubs f3, f3, f1 +/* 801C9DDC 001C6D3C EC 24 01 32 */ fmuls f1, f4, f4 +/* 801C9DE0 001C6D40 EC 42 00 28 */ fsubs f2, f2, f0 +/* 801C9DE4 001C6D44 C0 04 00 00 */ lfs f0, 0(r4) +/* 801C9DE8 001C6D48 EC 23 08 FA */ fmadds f1, f3, f3, f1 +/* 801C9DEC 001C6D4C EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 801C9DF0 001C6D50 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C9DF4 001C6D54 40 80 00 30 */ bge lbl_801C9E24 +/* 801C9DF8 001C6D58 D0 24 00 00 */ stfs f1, 0(r4) +/* 801C9DFC 001C6D5C 3B C0 00 01 */ li r30, 1 +/* 801C9E00 001C6D60 80 1A 00 0C */ lwz r0, 0xc(r26) +/* 801C9E04 001C6D64 80 99 00 4C */ lwz r4, 0x4c(r25) +/* 801C9E08 001C6D68 7C 60 2A 14 */ add r3, r0, r5 +/* 801C9E0C 001C6D6C C0 03 00 00 */ lfs f0, 0(r3) +/* 801C9E10 001C6D70 D0 04 00 04 */ stfs f0, 4(r4) +/* 801C9E14 001C6D74 C0 03 00 04 */ lfs f0, 4(r3) +/* 801C9E18 001C6D78 D0 04 00 08 */ stfs f0, 8(r4) +/* 801C9E1C 001C6D7C C0 03 00 08 */ lfs f0, 8(r3) +/* 801C9E20 001C6D80 D0 04 00 0C */ stfs f0, 0xc(r4) +lbl_801C9E24: +/* 801C9E24 001C6D84 38 A5 00 0C */ addi r5, r5, 0xc +/* 801C9E28 001C6D88 42 00 FF 88 */ bdnz lbl_801C9DB0 +lbl_801C9E2C: +/* 801C9E2C 001C6D8C 7F C3 F3 78 */ mr r3, r30 +/* 801C9E30 001C6D90 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 801C9E34 001C6D94 CB E1 00 60 */ lfd f31, 0x60(r1) +/* 801C9E38 001C6D98 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 +/* 801C9E3C 001C6D9C CB C1 00 50 */ lfd f30, 0x50(r1) +/* 801C9E40 001C6DA0 E3 A1 00 48 */ psq_l f29, 72(r1), 0, qr0 +/* 801C9E44 001C6DA4 CB A1 00 40 */ lfd f29, 0x40(r1) +/* 801C9E48 001C6DA8 BB 21 00 24 */ lmw r25, 0x24(r1) +/* 801C9E4C 001C6DAC 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801C9E50 001C6DB0 7C 08 03 A6 */ mtlr r0 +/* 801C9E54 001C6DB4 38 21 00 70 */ addi r1, r1, 0x70 +/* 801C9E58 001C6DB8 4E 80 00 20 */ blr + +.global PointHeight__9CPFRegionCFRC9CVector3f +PointHeight__9CPFRegionCFRC9CVector3f: +/* 801C9E5C 001C6DBC 80 A3 00 04 */ lwz r5, 4(r3) +/* 801C9E60 001C6DC0 C0 24 00 04 */ lfs f1, 4(r4) +/* 801C9E64 001C6DC4 C0 05 00 04 */ lfs f0, 4(r5) +/* 801C9E68 001C6DC8 C0 64 00 00 */ lfs f3, 0(r4) +/* 801C9E6C 001C6DCC EC 21 00 28 */ fsubs f1, f1, f0 +/* 801C9E70 001C6DD0 C0 45 00 00 */ lfs f2, 0(r5) +/* 801C9E74 001C6DD4 C0 03 00 1C */ lfs f0, 0x1c(r3) +/* 801C9E78 001C6DD8 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801C9E7C 001C6DDC C0 84 00 08 */ lfs f4, 8(r4) +/* 801C9E80 001C6DE0 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801C9E84 001C6DE4 C0 65 00 08 */ lfs f3, 8(r5) +/* 801C9E88 001C6DE8 C0 23 00 18 */ lfs f1, 0x18(r3) +/* 801C9E8C 001C6DEC EC 84 18 28 */ fsubs f4, f4, f3 +/* 801C9E90 001C6DF0 C0 63 00 20 */ lfs f3, 0x20(r3) +/* 801C9E94 001C6DF4 EC 02 00 7A */ fmadds f0, f2, f1, f0 +/* 801C9E98 001C6DF8 EC 24 00 FA */ fmadds f1, f4, f3, f0 +/* 801C9E9C 001C6DFC 4E 80 00 20 */ blr + +.global IsPointInside__9CPFRegionCFRC9CVector3f +IsPointInside__9CPFRegionCFRC9CVector3f: +/* 801C9EA0 001C6E00 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801C9EA4 001C6E04 7C 08 02 A6 */ mflr r0 +/* 801C9EA8 001C6E08 90 01 00 24 */ stw r0, 0x24(r1) +/* 801C9EAC 001C6E0C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801C9EB0 001C6E10 3B E0 00 00 */ li r31, 0 +/* 801C9EB4 001C6E14 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801C9EB8 001C6E18 7C 9E 23 78 */ mr r30, r4 +/* 801C9EBC 001C6E1C 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801C9EC0 001C6E20 7C 7D 1B 78 */ mr r29, r3 +/* 801C9EC4 001C6E24 38 7D 00 34 */ addi r3, r29, 0x34 +/* 801C9EC8 001C6E28 48 16 D6 6D */ bl PointInside__6CAABoxCFRC9CVector3f +/* 801C9ECC 001C6E2C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C9ED0 001C6E30 41 82 01 1C */ beq lbl_801C9FEC +/* 801C9ED4 001C6E34 80 BD 00 00 */ lwz r5, 0(r29) +/* 801C9ED8 001C6E38 38 C0 00 00 */ li r6, 0 +/* 801C9EDC 001C6E3C C0 02 AB 4C */ lfs f0, lbl_805AC86C@sda21(r2) +/* 801C9EE0 001C6E40 38 80 00 00 */ li r4, 0 +/* 801C9EE4 001C6E44 7C A9 03 A6 */ mtctr r5 +/* 801C9EE8 001C6E48 2C 05 00 00 */ cmpwi r5, 0 +/* 801C9EEC 001C6E4C 40 81 00 5C */ ble lbl_801C9F48 +lbl_801C9EF0: +/* 801C9EF0 001C6E50 80 1D 00 04 */ lwz r0, 4(r29) +/* 801C9EF4 001C6E54 C0 5E 00 04 */ lfs f2, 4(r30) +/* 801C9EF8 001C6E58 7C 60 22 14 */ add r3, r0, r4 +/* 801C9EFC 001C6E5C C0 9E 00 00 */ lfs f4, 0(r30) +/* 801C9F00 001C6E60 C0 23 00 04 */ lfs f1, 4(r3) +/* 801C9F04 001C6E64 C0 63 00 00 */ lfs f3, 0(r3) +/* 801C9F08 001C6E68 EC 42 08 28 */ fsubs f2, f2, f1 +/* 801C9F0C 001C6E6C C0 23 00 10 */ lfs f1, 0x10(r3) +/* 801C9F10 001C6E70 EC 64 18 28 */ fsubs f3, f4, f3 +/* 801C9F14 001C6E74 C0 BE 00 08 */ lfs f5, 8(r30) +/* 801C9F18 001C6E78 C0 83 00 08 */ lfs f4, 8(r3) +/* 801C9F1C 001C6E7C EC 22 00 72 */ fmuls f1, f2, f1 +/* 801C9F20 001C6E80 C0 43 00 0C */ lfs f2, 0xc(r3) +/* 801C9F24 001C6E84 EC A5 20 28 */ fsubs f5, f5, f4 +/* 801C9F28 001C6E88 C0 83 00 14 */ lfs f4, 0x14(r3) +/* 801C9F2C 001C6E8C EC 23 08 BA */ fmadds f1, f3, f2, f1 +/* 801C9F30 001C6E90 EC 25 09 3A */ fmadds f1, f5, f4, f1 +/* 801C9F34 001C6E94 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C9F38 001C6E98 41 80 00 10 */ blt lbl_801C9F48 +/* 801C9F3C 001C6E9C 38 84 00 18 */ addi r4, r4, 0x18 +/* 801C9F40 001C6EA0 38 C6 00 01 */ addi r6, r6, 1 +/* 801C9F44 001C6EA4 42 00 FF AC */ bdnz lbl_801C9EF0 +lbl_801C9F48: +/* 801C9F48 001C6EA8 7C 06 28 00 */ cmpw r6, r5 +/* 801C9F4C 001C6EAC 40 82 00 A0 */ bne lbl_801C9FEC +/* 801C9F50 001C6EB0 80 7D 00 04 */ lwz r3, 4(r29) +/* 801C9F54 001C6EB4 C0 3E 00 04 */ lfs f1, 4(r30) +/* 801C9F58 001C6EB8 C0 03 00 04 */ lfs f0, 4(r3) +/* 801C9F5C 001C6EBC C0 5E 00 00 */ lfs f2, 0(r30) +/* 801C9F60 001C6EC0 ED 01 00 28 */ fsubs f8, f1, f0 +/* 801C9F64 001C6EC4 C0 03 00 00 */ lfs f0, 0(r3) +/* 801C9F68 001C6EC8 C0 9D 00 1C */ lfs f4, 0x1c(r29) +/* 801C9F6C 001C6ECC ED 22 00 28 */ fsubs f9, f2, f0 +/* 801C9F70 001C6ED0 C0 5E 00 08 */ lfs f2, 8(r30) +/* 801C9F74 001C6ED4 EC 08 01 32 */ fmuls f0, f8, f4 +/* 801C9F78 001C6ED8 C0 23 00 08 */ lfs f1, 8(r3) +/* 801C9F7C 001C6EDC C0 BD 00 18 */ lfs f5, 0x18(r29) +/* 801C9F80 001C6EE0 EC E2 08 28 */ fsubs f7, f2, f1 +/* 801C9F84 001C6EE4 C0 DD 00 20 */ lfs f6, 0x20(r29) +/* 801C9F88 001C6EE8 EC 09 01 7A */ fmadds f0, f9, f5, f0 +/* 801C9F8C 001C6EEC C0 62 AB 4C */ lfs f3, lbl_805AC86C@sda21(r2) +/* 801C9F90 001C6EF0 EC 07 01 BA */ fmadds f0, f7, f6, f0 +/* 801C9F94 001C6EF4 FC 00 18 40 */ fcmpo cr0, f0, f3 +/* 801C9F98 001C6EF8 4C 41 13 82 */ cror 2, 1, 2 +/* 801C9F9C 001C6EFC 40 82 00 50 */ bne lbl_801C9FEC +/* 801C9FA0 001C6F00 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 801C9FA4 001C6F04 C1 5D 00 14 */ lfs f10, 0x14(r29) +/* 801C9FA8 001C6F08 38 63 66 F4 */ addi r3, r3, lbl_805A66F4@l +/* 801C9FAC 001C6F0C C0 03 00 04 */ lfs f0, 4(r3) +/* 801C9FB0 001C6F10 C0 43 00 00 */ lfs f2, 0(r3) +/* 801C9FB4 001C6F14 EC 2A 00 32 */ fmuls f1, f10, f0 +/* 801C9FB8 001C6F18 C0 03 00 08 */ lfs f0, 8(r3) +/* 801C9FBC 001C6F1C EC 4A 00 B2 */ fmuls f2, f10, f2 +/* 801C9FC0 001C6F20 EC 0A 00 32 */ fmuls f0, f10, f0 +/* 801C9FC4 001C6F24 ED 08 08 28 */ fsubs f8, f8, f1 +/* 801C9FC8 001C6F28 EC 29 10 28 */ fsubs f1, f9, f2 +/* 801C9FCC 001C6F2C EC 47 00 28 */ fsubs f2, f7, f0 +/* 801C9FD0 001C6F30 EC 08 01 32 */ fmuls f0, f8, f4 +/* 801C9FD4 001C6F34 EC 01 01 7A */ fmadds f0, f1, f5, f0 +/* 801C9FD8 001C6F38 EC 02 01 BA */ fmadds f0, f2, f6, f0 +/* 801C9FDC 001C6F3C FC 00 18 40 */ fcmpo cr0, f0, f3 +/* 801C9FE0 001C6F40 4C 40 13 82 */ cror 2, 0, 2 +/* 801C9FE4 001C6F44 40 82 00 08 */ bne lbl_801C9FEC +/* 801C9FE8 001C6F48 3B E0 00 01 */ li r31, 1 +lbl_801C9FEC: +/* 801C9FEC 001C6F4C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801C9FF0 001C6F50 7F E3 FB 78 */ mr r3, r31 +/* 801C9FF4 001C6F54 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801C9FF8 001C6F58 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801C9FFC 001C6F5C 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801CA000 001C6F60 7C 08 03 A6 */ mtlr r0 +/* 801CA004 001C6F64 38 21 00 20 */ addi r1, r1, 0x20 +/* 801CA008 001C6F68 4E 80 00 20 */ blr + +.global __ct__9CPFRegionFv +__ct__9CPFRegionFv: +/* 801CA00C 001C6F6C 38 00 00 00 */ li r0, 0 +/* 801CA010 001C6F70 C0 02 AB 4C */ lfs f0, lbl_805AC86C@sda21(r2) +/* 801CA014 001C6F74 90 03 00 00 */ stw r0, 0(r3) +/* 801CA018 001C6F78 3C A0 80 5A */ lis r5, skZero3f@ha +/* 801CA01C 001C6F7C 3C 80 80 5A */ lis r4, lbl_805A6754@ha +/* 801CA020 001C6F80 90 03 00 04 */ stw r0, 4(r3) +/* 801CA024 001C6F84 90 03 00 08 */ stw r0, 8(r3) +/* 801CA028 001C6F88 90 03 00 0C */ stw r0, 0xc(r3) +/* 801CA02C 001C6F8C 90 03 00 10 */ stw r0, 0x10(r3) +/* 801CA030 001C6F90 D0 03 00 14 */ stfs f0, 0x14(r3) +/* 801CA034 001C6F94 C4 05 66 A0 */ lfsu f0, skZero3f@l(r5) +/* 801CA038 001C6F98 D0 03 00 18 */ stfs f0, 0x18(r3) +/* 801CA03C 001C6F9C C0 05 00 04 */ lfs f0, 4(r5) +/* 801CA040 001C6FA0 D0 03 00 1C */ stfs f0, 0x1c(r3) +/* 801CA044 001C6FA4 C0 05 00 08 */ lfs f0, 8(r5) +/* 801CA048 001C6FA8 D0 03 00 20 */ stfs f0, 0x20(r3) +/* 801CA04C 001C6FAC 90 03 00 24 */ stw r0, 0x24(r3) +/* 801CA050 001C6FB0 C0 05 00 00 */ lfs f0, 0(r5) +/* 801CA054 001C6FB4 D0 03 00 28 */ stfs f0, 0x28(r3) +/* 801CA058 001C6FB8 C0 05 00 04 */ lfs f0, 4(r5) +/* 801CA05C 001C6FBC D0 03 00 2C */ stfs f0, 0x2c(r3) +/* 801CA060 001C6FC0 C0 05 00 08 */ lfs f0, 8(r5) +/* 801CA064 001C6FC4 D0 03 00 30 */ stfs f0, 0x30(r3) +/* 801CA068 001C6FC8 C4 04 67 54 */ lfsu f0, lbl_805A6754@l(r4) +/* 801CA06C 001C6FCC D0 03 00 34 */ stfs f0, 0x34(r3) +/* 801CA070 001C6FD0 C0 04 00 04 */ lfs f0, 4(r4) +/* 801CA074 001C6FD4 D0 03 00 38 */ stfs f0, 0x38(r3) +/* 801CA078 001C6FD8 C0 04 00 08 */ lfs f0, 8(r4) +/* 801CA07C 001C6FDC D0 03 00 3C */ stfs f0, 0x3c(r3) +/* 801CA080 001C6FE0 C0 04 00 0C */ lfs f0, 0xc(r4) +/* 801CA084 001C6FE4 D0 03 00 40 */ stfs f0, 0x40(r3) +/* 801CA088 001C6FE8 C0 04 00 10 */ lfs f0, 0x10(r4) +/* 801CA08C 001C6FEC D0 03 00 44 */ stfs f0, 0x44(r3) +/* 801CA090 001C6FF0 C0 04 00 14 */ lfs f0, 0x14(r4) +/* 801CA094 001C6FF4 D0 03 00 48 */ stfs f0, 0x48(r3) +/* 801CA098 001C6FF8 4E 80 00 20 */ blr + +.global Fixup__9CPFRegionFR7CPFAreaRi +Fixup__9CPFRegionFR7CPFAreaRi: +/* 801CA09C 001C6FFC 80 03 00 00 */ lwz r0, 0(r3) +/* 801CA0A0 001C7000 2C 00 00 00 */ cmpwi r0, 0 +/* 801CA0A4 001C7004 41 82 00 18 */ beq lbl_801CA0BC +/* 801CA0A8 001C7008 80 03 00 04 */ lwz r0, 4(r3) +/* 801CA0AC 001C700C 80 C4 01 44 */ lwz r6, 0x144(r4) +/* 801CA0B0 001C7010 1C 00 00 18 */ mulli r0, r0, 0x18 +/* 801CA0B4 001C7014 7C 06 02 14 */ add r0, r6, r0 +/* 801CA0B8 001C7018 48 00 00 08 */ b lbl_801CA0C0 +lbl_801CA0BC: +/* 801CA0BC 001C701C 38 00 00 00 */ li r0, 0 +lbl_801CA0C0: +/* 801CA0C0 001C7020 90 03 00 04 */ stw r0, 4(r3) +/* 801CA0C4 001C7024 80 03 00 08 */ lwz r0, 8(r3) +/* 801CA0C8 001C7028 2C 00 00 00 */ cmpwi r0, 0 +/* 801CA0CC 001C702C 41 82 00 18 */ beq lbl_801CA0E4 +/* 801CA0D0 001C7030 80 03 00 0C */ lwz r0, 0xc(r3) +/* 801CA0D4 001C7034 80 C4 01 4C */ lwz r6, 0x14c(r4) +/* 801CA0D8 001C7038 54 00 20 36 */ slwi r0, r0, 4 +/* 801CA0DC 001C703C 7C 06 02 14 */ add r0, r6, r0 +/* 801CA0E0 001C7040 48 00 00 08 */ b lbl_801CA0E8 +lbl_801CA0E4: +/* 801CA0E4 001C7044 38 00 00 00 */ li r0, 0 +lbl_801CA0E8: +/* 801CA0E8 001C7048 90 03 00 0C */ stw r0, 0xc(r3) +/* 801CA0EC 001C704C 80 03 00 24 */ lwz r0, 0x24(r3) +/* 801CA0F0 001C7050 80 84 01 84 */ lwz r4, 0x184(r4) +/* 801CA0F4 001C7054 1C 00 00 30 */ mulli r0, r0, 0x30 +/* 801CA0F8 001C7058 7C 04 02 14 */ add r0, r4, r0 +/* 801CA0FC 001C705C 90 03 00 4C */ stw r0, 0x4c(r3) +/* 801CA100 001C7060 80 63 00 00 */ lwz r3, 0(r3) +/* 801CA104 001C7064 80 05 00 00 */ lwz r0, 0(r5) +/* 801CA108 001C7068 7C 03 00 00 */ cmpw r3, r0 +/* 801CA10C 001C706C 4C 81 00 20 */ blelr +/* 801CA110 001C7070 90 65 00 00 */ stw r3, 0(r5) +/* 801CA114 001C7074 4E 80 00 20 */ blr + +.global __ct__13CPFRegionDataFv +__ct__13CPFRegionDataFv: +/* 801CA118 001C7078 C0 22 AB 4C */ lfs f1, lbl_805AC86C@sda21(r2) +/* 801CA11C 001C707C 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801CA120 001C7080 38 A4 66 A0 */ addi r5, r4, skZero3f@l +/* 801CA124 001C7084 38 80 FF FF */ li r4, -1 +/* 801CA128 001C7088 D0 23 00 00 */ stfs f1, 0(r3) +/* 801CA12C 001C708C 38 00 00 00 */ li r0, 0 +/* 801CA130 001C7090 C0 05 00 00 */ lfs f0, 0(r5) +/* 801CA134 001C7094 D0 03 00 04 */ stfs f0, 4(r3) +/* 801CA138 001C7098 C0 05 00 04 */ lfs f0, 4(r5) +/* 801CA13C 001C709C D0 03 00 08 */ stfs f0, 8(r3) +/* 801CA140 001C70A0 C0 05 00 08 */ lfs f0, 8(r5) +/* 801CA144 001C70A4 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 801CA148 001C70A8 90 83 00 10 */ stw r4, 0x10(r3) +/* 801CA14C 001C70AC D0 23 00 14 */ stfs f1, 0x14(r3) +/* 801CA150 001C70B0 D0 23 00 18 */ stfs f1, 0x18(r3) +/* 801CA154 001C70B4 D0 23 00 1C */ stfs f1, 0x1c(r3) +/* 801CA158 001C70B8 90 03 00 20 */ stw r0, 0x20(r3) +/* 801CA15C 001C70BC 90 03 00 24 */ stw r0, 0x24(r3) +/* 801CA160 001C70C0 90 03 00 28 */ stw r0, 0x28(r3) +/* 801CA164 001C70C4 90 03 00 2C */ stw r0, 0x2c(r3) +/* 801CA168 001C70C8 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/PathFinding/CPathFindSearch.s b/asm/Kyoto_CWD/PathFinding/CPathFindSearch.s new file mode 100644 index 00000000..c85a9c16 --- /dev/null +++ b/asm/Kyoto_CWD/PathFinding/CPathFindSearch.s @@ -0,0 +1,2562 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global OnPath__15CPathFindSearchCFRC9CVector3f +OnPath__15CPathFindSearchCFRC9CVector3f: +/* 801C6B34 001C3A94 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801C6B38 001C3A98 7C 08 02 A6 */ mflr r0 +/* 801C6B3C 001C3A9C 90 01 00 54 */ stw r0, 0x54(r1) +/* 801C6B40 001C3AA0 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801C6B44 001C3AA4 7C 7F 1B 78 */ mr r31, r3 +/* 801C6B48 001C3AA8 80 63 00 00 */ lwz r3, 0(r3) +/* 801C6B4C 001C3AAC 28 03 00 00 */ cmplwi r3, 0 +/* 801C6B50 001C3AB0 40 82 00 0C */ bne lbl_801C6B5C +/* 801C6B54 001C3AB4 38 60 00 01 */ li r3, 1 +/* 801C6B58 001C3AB8 48 00 01 5C */ b lbl_801C6CB4 +lbl_801C6B5C: +/* 801C6B5C 001C3ABC 38 C3 01 88 */ addi r6, r3, 0x188 +/* 801C6B60 001C3AC0 C0 24 00 08 */ lfs f1, 8(r4) +/* 801C6B64 001C3AC4 C0 03 01 B4 */ lfs f0, 0x1b4(r3) +/* 801C6B68 001C3AC8 38 61 00 14 */ addi r3, r1, 0x14 +/* 801C6B6C 001C3ACC C0 64 00 04 */ lfs f3, 4(r4) +/* 801C6B70 001C3AD0 38 A1 00 08 */ addi r5, r1, 8 +/* 801C6B74 001C3AD4 C0 46 00 1C */ lfs f2, 0x1c(r6) +/* 801C6B78 001C3AD8 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801C6B7C 001C3ADC C0 24 00 00 */ lfs f1, 0(r4) +/* 801C6B80 001C3AE0 7C C4 33 78 */ mr r4, r6 +/* 801C6B84 001C3AE4 C0 06 00 0C */ lfs f0, 0xc(r6) +/* 801C6B88 001C3AE8 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801C6B8C 001C3AEC EC 01 00 28 */ fsubs f0, f1, f0 +/* 801C6B90 001C3AF0 D0 81 00 10 */ stfs f4, 0x10(r1) +/* 801C6B94 001C3AF4 D0 41 00 0C */ stfs f2, 0xc(r1) +/* 801C6B98 001C3AF8 D0 01 00 08 */ stfs f0, 8(r1) +/* 801C6B9C 001C3AFC 48 14 BE 89 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 801C6BA0 001C3B00 80 7F 00 DC */ lwz r3, 0xdc(r31) +/* 801C6BA4 001C3B04 C0 41 00 14 */ lfs f2, 0x14(r1) +/* 801C6BA8 001C3B08 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 801C6BAC 001C3B0C 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e +/* 801C6BB0 001C3B10 C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 801C6BB4 001C3B14 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 801C6BB8 001C3B18 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801C6BBC 001C3B1C D0 21 00 28 */ stfs f1, 0x28(r1) +/* 801C6BC0 001C3B20 40 82 00 18 */ bne lbl_801C6BD8 +/* 801C6BC4 001C3B24 54 60 07 7B */ rlwinm. r0, r3, 0, 0x1d, 0x1d +/* 801C6BC8 001C3B28 40 82 00 10 */ bne lbl_801C6BD8 +/* 801C6BCC 001C3B2C C0 02 AB 28 */ lfs f0, lbl_805AC848@sda21(r2) +/* 801C6BD0 001C3B30 EC 01 00 2A */ fadds f0, f1, f0 +/* 801C6BD4 001C3B34 D0 01 00 28 */ stfs f0, 0x28(r1) +lbl_801C6BD8: +/* 801C6BD8 001C3B38 38 00 00 00 */ li r0, 0 +/* 801C6BDC 001C3B3C 80 7F 00 00 */ lwz r3, 0(r31) +/* 801C6BE0 001C3B40 90 01 00 2C */ stw r0, 0x2c(r1) +/* 801C6BE4 001C3B44 38 81 00 2C */ addi r4, r1, 0x2c +/* 801C6BE8 001C3B48 80 DF 00 DC */ lwz r6, 0xdc(r31) +/* 801C6BEC 001C3B4C 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801C6BF0 001C3B50 80 FF 00 E0 */ lwz r7, 0xe0(r31) +/* 801C6BF4 001C3B54 48 00 3E 51 */ bl "FindRegions__7CPFAreaFRQ24rstl30reserved_vectorRC9CVector3fUiUi" +/* 801C6BF8 001C3B58 2C 03 00 00 */ cmpwi r3, 0 +/* 801C6BFC 001C3B5C 40 82 00 60 */ bne lbl_801C6C5C +/* 801C6C00 001C3B60 80 A1 00 2C */ lwz r5, 0x2c(r1) +/* 801C6C04 001C3B64 38 60 00 00 */ li r3, 0 +/* 801C6C08 001C3B68 2C 05 00 00 */ cmpwi r5, 0 +/* 801C6C0C 001C3B6C 40 81 00 40 */ ble lbl_801C6C4C +/* 801C6C10 001C3B70 2C 05 00 08 */ cmpwi r5, 8 +/* 801C6C14 001C3B74 38 85 FF F8 */ addi r4, r5, -8 +/* 801C6C18 001C3B78 40 81 00 20 */ ble lbl_801C6C38 +/* 801C6C1C 001C3B7C 38 04 00 07 */ addi r0, r4, 7 +/* 801C6C20 001C3B80 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C6C24 001C3B84 7C 09 03 A6 */ mtctr r0 +/* 801C6C28 001C3B88 2C 04 00 00 */ cmpwi r4, 0 +/* 801C6C2C 001C3B8C 40 81 00 0C */ ble lbl_801C6C38 +lbl_801C6C30: +/* 801C6C30 001C3B90 38 63 00 08 */ addi r3, r3, 8 +/* 801C6C34 001C3B94 42 00 FF FC */ bdnz lbl_801C6C30 +lbl_801C6C38: +/* 801C6C38 001C3B98 7C 03 28 50 */ subf r0, r3, r5 +/* 801C6C3C 001C3B9C 7C 09 03 A6 */ mtctr r0 +/* 801C6C40 001C3BA0 7C 03 28 00 */ cmpw r3, r5 +/* 801C6C44 001C3BA4 40 80 00 08 */ bge lbl_801C6C4C +lbl_801C6C48: +/* 801C6C48 001C3BA8 42 00 00 00 */ bdnz lbl_801C6C48 +lbl_801C6C4C: +/* 801C6C4C 001C3BAC 38 00 00 00 */ li r0, 0 +/* 801C6C50 001C3BB0 38 60 00 02 */ li r3, 2 +/* 801C6C54 001C3BB4 90 01 00 2C */ stw r0, 0x2c(r1) +/* 801C6C58 001C3BB8 48 00 00 5C */ b lbl_801C6CB4 +lbl_801C6C5C: +/* 801C6C5C 001C3BBC 80 A1 00 2C */ lwz r5, 0x2c(r1) +/* 801C6C60 001C3BC0 38 60 00 00 */ li r3, 0 +/* 801C6C64 001C3BC4 2C 05 00 00 */ cmpwi r5, 0 +/* 801C6C68 001C3BC8 40 81 00 40 */ ble lbl_801C6CA8 +/* 801C6C6C 001C3BCC 2C 05 00 08 */ cmpwi r5, 8 +/* 801C6C70 001C3BD0 38 85 FF F8 */ addi r4, r5, -8 +/* 801C6C74 001C3BD4 40 81 00 20 */ ble lbl_801C6C94 +/* 801C6C78 001C3BD8 38 04 00 07 */ addi r0, r4, 7 +/* 801C6C7C 001C3BDC 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C6C80 001C3BE0 7C 09 03 A6 */ mtctr r0 +/* 801C6C84 001C3BE4 2C 04 00 00 */ cmpwi r4, 0 +/* 801C6C88 001C3BE8 40 81 00 0C */ ble lbl_801C6C94 +lbl_801C6C8C: +/* 801C6C8C 001C3BEC 38 63 00 08 */ addi r3, r3, 8 +/* 801C6C90 001C3BF0 42 00 FF FC */ bdnz lbl_801C6C8C +lbl_801C6C94: +/* 801C6C94 001C3BF4 7C 03 28 50 */ subf r0, r3, r5 +/* 801C6C98 001C3BF8 7C 09 03 A6 */ mtctr r0 +/* 801C6C9C 001C3BFC 7C 03 28 00 */ cmpw r3, r5 +/* 801C6CA0 001C3C00 40 80 00 08 */ bge lbl_801C6CA8 +lbl_801C6CA4: +/* 801C6CA4 001C3C04 42 00 00 00 */ bdnz lbl_801C6CA4 +lbl_801C6CA8: +/* 801C6CA8 001C3C08 38 00 00 00 */ li r0, 0 +/* 801C6CAC 001C3C0C 38 60 00 00 */ li r3, 0 +/* 801C6CB0 001C3C10 90 01 00 2C */ stw r0, 0x2c(r1) +lbl_801C6CB4: +/* 801C6CB4 001C3C14 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801C6CB8 001C3C18 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801C6CBC 001C3C1C 7C 08 03 A6 */ mtlr r0 +/* 801C6CC0 001C3C20 38 21 00 50 */ addi r1, r1, 0x50 +/* 801C6CC4 001C3C24 4E 80 00 20 */ blr + +.global PathExists__15CPathFindSearchCFRC9CVector3fRC9CVector3f +PathExists__15CPathFindSearchCFRC9CVector3fRC9CVector3f: +/* 801C6CC8 001C3C28 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 801C6CCC 001C3C2C 7C 08 02 A6 */ mflr r0 +/* 801C6CD0 001C3C30 90 01 00 94 */ stw r0, 0x94(r1) +/* 801C6CD4 001C3C34 BF 41 00 78 */ stmw r26, 0x78(r1) +/* 801C6CD8 001C3C38 7C 7F 1B 78 */ mr r31, r3 +/* 801C6CDC 001C3C3C 7C BA 2B 78 */ mr r26, r5 +/* 801C6CE0 001C3C40 80 63 00 00 */ lwz r3, 0(r3) +/* 801C6CE4 001C3C44 28 03 00 00 */ cmplwi r3, 0 +/* 801C6CE8 001C3C48 40 82 00 0C */ bne lbl_801C6CF4 +/* 801C6CEC 001C3C4C 38 60 00 01 */ li r3, 1 +/* 801C6CF0 001C3C50 48 00 03 F8 */ b lbl_801C70E8 +lbl_801C6CF4: +/* 801C6CF4 001C3C54 38 C3 01 88 */ addi r6, r3, 0x188 +/* 801C6CF8 001C3C58 C0 24 00 08 */ lfs f1, 8(r4) +/* 801C6CFC 001C3C5C C0 03 01 B4 */ lfs f0, 0x1b4(r3) +/* 801C6D00 001C3C60 38 61 00 2C */ addi r3, r1, 0x2c +/* 801C6D04 001C3C64 C0 64 00 04 */ lfs f3, 4(r4) +/* 801C6D08 001C3C68 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801C6D0C 001C3C6C C0 46 00 1C */ lfs f2, 0x1c(r6) +/* 801C6D10 001C3C70 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801C6D14 001C3C74 C0 24 00 00 */ lfs f1, 0(r4) +/* 801C6D18 001C3C78 7C C4 33 78 */ mr r4, r6 +/* 801C6D1C 001C3C7C C0 06 00 0C */ lfs f0, 0xc(r6) +/* 801C6D20 001C3C80 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801C6D24 001C3C84 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801C6D28 001C3C88 D0 81 00 1C */ stfs f4, 0x1c(r1) +/* 801C6D2C 001C3C8C D0 41 00 18 */ stfs f2, 0x18(r1) +/* 801C6D30 001C3C90 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801C6D34 001C3C94 48 14 BC F1 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 801C6D38 001C3C98 C0 41 00 2C */ lfs f2, 0x2c(r1) +/* 801C6D3C 001C3C9C 38 61 00 20 */ addi r3, r1, 0x20 +/* 801C6D40 001C3CA0 C0 21 00 30 */ lfs f1, 0x30(r1) +/* 801C6D44 001C3CA4 38 A1 00 08 */ addi r5, r1, 8 +/* 801C6D48 001C3CA8 C0 01 00 34 */ lfs f0, 0x34(r1) +/* 801C6D4C 001C3CAC 80 9F 00 00 */ lwz r4, 0(r31) +/* 801C6D50 001C3CB0 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 801C6D54 001C3CB4 38 84 01 88 */ addi r4, r4, 0x188 +/* 801C6D58 001C3CB8 C0 BA 00 08 */ lfs f5, 8(r26) +/* 801C6D5C 001C3CBC D0 41 00 44 */ stfs f2, 0x44(r1) +/* 801C6D60 001C3CC0 C0 7A 00 04 */ lfs f3, 4(r26) +/* 801C6D64 001C3CC4 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 801C6D68 001C3CC8 C0 3A 00 00 */ lfs f1, 0(r26) +/* 801C6D6C 001C3CCC C0 84 00 2C */ lfs f4, 0x2c(r4) +/* 801C6D70 001C3CD0 C0 44 00 1C */ lfs f2, 0x1c(r4) +/* 801C6D74 001C3CD4 C0 04 00 0C */ lfs f0, 0xc(r4) +/* 801C6D78 001C3CD8 EC 85 20 28 */ fsubs f4, f5, f4 +/* 801C6D7C 001C3CDC EC 43 10 28 */ fsubs f2, f3, f2 +/* 801C6D80 001C3CE0 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801C6D84 001C3CE4 D0 81 00 10 */ stfs f4, 0x10(r1) +/* 801C6D88 001C3CE8 D0 01 00 08 */ stfs f0, 8(r1) +/* 801C6D8C 001C3CEC D0 41 00 0C */ stfs f2, 0xc(r1) +/* 801C6D90 001C3CF0 48 14 BC 95 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 801C6D94 001C3CF4 80 7F 00 DC */ lwz r3, 0xdc(r31) +/* 801C6D98 001C3CF8 C0 41 00 20 */ lfs f2, 0x20(r1) +/* 801C6D9C 001C3CFC C0 21 00 24 */ lfs f1, 0x24(r1) +/* 801C6DA0 001C3D00 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e +/* 801C6DA4 001C3D04 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 801C6DA8 001C3D08 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 801C6DAC 001C3D0C D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 801C6DB0 001C3D10 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 801C6DB4 001C3D14 40 82 00 24 */ bne lbl_801C6DD8 +/* 801C6DB8 001C3D18 54 60 07 7B */ rlwinm. r0, r3, 0, 0x1d, 0x1d +/* 801C6DBC 001C3D1C 40 82 00 1C */ bne lbl_801C6DD8 +/* 801C6DC0 001C3D20 C0 22 AB 28 */ lfs f1, lbl_805AC848@sda21(r2) +/* 801C6DC4 001C3D24 C0 41 00 4C */ lfs f2, 0x4c(r1) +/* 801C6DC8 001C3D28 EC 00 08 2A */ fadds f0, f0, f1 +/* 801C6DCC 001C3D2C EC 22 08 2A */ fadds f1, f2, f1 +/* 801C6DD0 001C3D30 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 801C6DD4 001C3D34 D0 21 00 4C */ stfs f1, 0x4c(r1) +lbl_801C6DD8: +/* 801C6DD8 001C3D38 38 00 00 00 */ li r0, 0 +/* 801C6DDC 001C3D3C 80 7F 00 00 */ lwz r3, 0(r31) +/* 801C6DE0 001C3D40 90 01 00 64 */ stw r0, 0x64(r1) +/* 801C6DE4 001C3D44 38 81 00 64 */ addi r4, r1, 0x64 +/* 801C6DE8 001C3D48 80 DF 00 DC */ lwz r6, 0xdc(r31) +/* 801C6DEC 001C3D4C 38 A1 00 44 */ addi r5, r1, 0x44 +/* 801C6DF0 001C3D50 80 FF 00 E0 */ lwz r7, 0xe0(r31) +/* 801C6DF4 001C3D54 48 00 3C 51 */ bl "FindRegions__7CPFAreaFRQ24rstl30reserved_vectorRC9CVector3fUiUi" +/* 801C6DF8 001C3D58 2C 03 00 00 */ cmpwi r3, 0 +/* 801C6DFC 001C3D5C 40 82 00 60 */ bne lbl_801C6E5C +/* 801C6E00 001C3D60 80 A1 00 64 */ lwz r5, 0x64(r1) +/* 801C6E04 001C3D64 38 60 00 00 */ li r3, 0 +/* 801C6E08 001C3D68 2C 05 00 00 */ cmpwi r5, 0 +/* 801C6E0C 001C3D6C 40 81 00 40 */ ble lbl_801C6E4C +/* 801C6E10 001C3D70 2C 05 00 08 */ cmpwi r5, 8 +/* 801C6E14 001C3D74 38 85 FF F8 */ addi r4, r5, -8 +/* 801C6E18 001C3D78 40 81 00 20 */ ble lbl_801C6E38 +/* 801C6E1C 001C3D7C 38 04 00 07 */ addi r0, r4, 7 +/* 801C6E20 001C3D80 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C6E24 001C3D84 7C 09 03 A6 */ mtctr r0 +/* 801C6E28 001C3D88 2C 04 00 00 */ cmpwi r4, 0 +/* 801C6E2C 001C3D8C 40 81 00 0C */ ble lbl_801C6E38 +lbl_801C6E30: +/* 801C6E30 001C3D90 38 63 00 08 */ addi r3, r3, 8 +/* 801C6E34 001C3D94 42 00 FF FC */ bdnz lbl_801C6E30 +lbl_801C6E38: +/* 801C6E38 001C3D98 7C 03 28 50 */ subf r0, r3, r5 +/* 801C6E3C 001C3D9C 7C 09 03 A6 */ mtctr r0 +/* 801C6E40 001C3DA0 7C 03 28 00 */ cmpw r3, r5 +/* 801C6E44 001C3DA4 40 80 00 08 */ bge lbl_801C6E4C +lbl_801C6E48: +/* 801C6E48 001C3DA8 42 00 00 00 */ bdnz lbl_801C6E48 +lbl_801C6E4C: +/* 801C6E4C 001C3DAC 38 00 00 00 */ li r0, 0 +/* 801C6E50 001C3DB0 38 60 00 02 */ li r3, 2 +/* 801C6E54 001C3DB4 90 01 00 64 */ stw r0, 0x64(r1) +/* 801C6E58 001C3DB8 48 00 02 90 */ b lbl_801C70E8 +lbl_801C6E5C: +/* 801C6E5C 001C3DBC 38 00 00 00 */ li r0, 0 +/* 801C6E60 001C3DC0 80 7F 00 00 */ lwz r3, 0(r31) +/* 801C6E64 001C3DC4 90 01 00 50 */ stw r0, 0x50(r1) +/* 801C6E68 001C3DC8 38 81 00 50 */ addi r4, r1, 0x50 +/* 801C6E6C 001C3DCC 80 DF 00 DC */ lwz r6, 0xdc(r31) +/* 801C6E70 001C3DD0 38 A1 00 38 */ addi r5, r1, 0x38 +/* 801C6E74 001C3DD4 80 FF 00 E0 */ lwz r7, 0xe0(r31) +/* 801C6E78 001C3DD8 48 00 3B CD */ bl "FindRegions__7CPFAreaFRQ24rstl30reserved_vectorRC9CVector3fUiUi" +/* 801C6E7C 001C3DDC 2C 03 00 00 */ cmpwi r3, 0 +/* 801C6E80 001C3DE0 40 82 00 B0 */ bne lbl_801C6F30 +/* 801C6E84 001C3DE4 80 A1 00 50 */ lwz r5, 0x50(r1) +/* 801C6E88 001C3DE8 38 60 00 00 */ li r3, 0 +/* 801C6E8C 001C3DEC 2C 05 00 00 */ cmpwi r5, 0 +/* 801C6E90 001C3DF0 40 81 00 40 */ ble lbl_801C6ED0 +/* 801C6E94 001C3DF4 2C 05 00 08 */ cmpwi r5, 8 +/* 801C6E98 001C3DF8 38 85 FF F8 */ addi r4, r5, -8 +/* 801C6E9C 001C3DFC 40 81 00 20 */ ble lbl_801C6EBC +/* 801C6EA0 001C3E00 38 04 00 07 */ addi r0, r4, 7 +/* 801C6EA4 001C3E04 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C6EA8 001C3E08 7C 09 03 A6 */ mtctr r0 +/* 801C6EAC 001C3E0C 2C 04 00 00 */ cmpwi r4, 0 +/* 801C6EB0 001C3E10 40 81 00 0C */ ble lbl_801C6EBC +lbl_801C6EB4: +/* 801C6EB4 001C3E14 38 63 00 08 */ addi r3, r3, 8 +/* 801C6EB8 001C3E18 42 00 FF FC */ bdnz lbl_801C6EB4 +lbl_801C6EBC: +/* 801C6EBC 001C3E1C 7C 03 28 50 */ subf r0, r3, r5 +/* 801C6EC0 001C3E20 7C 09 03 A6 */ mtctr r0 +/* 801C6EC4 001C3E24 7C 03 28 00 */ cmpw r3, r5 +/* 801C6EC8 001C3E28 40 80 00 08 */ bge lbl_801C6ED0 +lbl_801C6ECC: +/* 801C6ECC 001C3E2C 42 00 00 00 */ bdnz lbl_801C6ECC +lbl_801C6ED0: +/* 801C6ED0 001C3E30 80 A1 00 64 */ lwz r5, 0x64(r1) +/* 801C6ED4 001C3E34 38 60 00 00 */ li r3, 0 +/* 801C6ED8 001C3E38 90 61 00 50 */ stw r3, 0x50(r1) +/* 801C6EDC 001C3E3C 2C 05 00 00 */ cmpwi r5, 0 +/* 801C6EE0 001C3E40 40 81 00 40 */ ble lbl_801C6F20 +/* 801C6EE4 001C3E44 2C 05 00 08 */ cmpwi r5, 8 +/* 801C6EE8 001C3E48 38 85 FF F8 */ addi r4, r5, -8 +/* 801C6EEC 001C3E4C 40 81 00 20 */ ble lbl_801C6F0C +/* 801C6EF0 001C3E50 38 04 00 07 */ addi r0, r4, 7 +/* 801C6EF4 001C3E54 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C6EF8 001C3E58 7C 09 03 A6 */ mtctr r0 +/* 801C6EFC 001C3E5C 2C 04 00 00 */ cmpwi r4, 0 +/* 801C6F00 001C3E60 40 81 00 0C */ ble lbl_801C6F0C +lbl_801C6F04: +/* 801C6F04 001C3E64 38 63 00 08 */ addi r3, r3, 8 +/* 801C6F08 001C3E68 42 00 FF FC */ bdnz lbl_801C6F04 +lbl_801C6F0C: +/* 801C6F0C 001C3E6C 7C 03 28 50 */ subf r0, r3, r5 +/* 801C6F10 001C3E70 7C 09 03 A6 */ mtctr r0 +/* 801C6F14 001C3E74 7C 03 28 00 */ cmpw r3, r5 +/* 801C6F18 001C3E78 40 80 00 08 */ bge lbl_801C6F20 +lbl_801C6F1C: +/* 801C6F1C 001C3E7C 42 00 00 00 */ bdnz lbl_801C6F1C +lbl_801C6F20: +/* 801C6F20 001C3E80 38 00 00 00 */ li r0, 0 +/* 801C6F24 001C3E84 38 60 00 03 */ li r3, 3 +/* 801C6F28 001C3E88 90 01 00 64 */ stw r0, 0x64(r1) +/* 801C6F2C 001C3E8C 48 00 01 BC */ b lbl_801C70E8 +lbl_801C6F30: +/* 801C6F30 001C3E90 3B A1 00 68 */ addi r29, r1, 0x68 +/* 801C6F34 001C3E94 3B 81 00 54 */ addi r28, r1, 0x54 +/* 801C6F38 001C3E98 3B 60 00 00 */ li r27, 0 +/* 801C6F3C 001C3E9C 48 00 00 FC */ b lbl_801C7038 +lbl_801C6F40: +/* 801C6F40 001C3EA0 7F 9E E3 78 */ mr r30, r28 +/* 801C6F44 001C3EA4 3B 40 00 00 */ li r26, 0 +/* 801C6F48 001C3EA8 48 00 00 DC */ b lbl_801C7024 +lbl_801C6F4C: +/* 801C6F4C 001C3EAC 80 9D 00 00 */ lwz r4, 0(r29) +/* 801C6F50 001C3EB0 80 BE 00 00 */ lwz r5, 0(r30) +/* 801C6F54 001C3EB4 7C 04 28 40 */ cmplw r4, r5 +/* 801C6F58 001C3EB8 41 82 00 18 */ beq lbl_801C6F70 +/* 801C6F5C 001C3EBC 80 7F 00 00 */ lwz r3, 0(r31) +/* 801C6F60 001C3EC0 80 DF 00 DC */ lwz r6, 0xdc(r31) +/* 801C6F64 001C3EC4 48 00 35 C9 */ bl PathExists__7CPFAreaCFPC9CPFRegionPC9CPFRegionUi +/* 801C6F68 001C3EC8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C6F6C 001C3ECC 41 82 00 B0 */ beq lbl_801C701C +lbl_801C6F70: +/* 801C6F70 001C3ED0 80 A1 00 50 */ lwz r5, 0x50(r1) +/* 801C6F74 001C3ED4 38 60 00 00 */ li r3, 0 +/* 801C6F78 001C3ED8 2C 05 00 00 */ cmpwi r5, 0 +/* 801C6F7C 001C3EDC 40 81 00 40 */ ble lbl_801C6FBC +/* 801C6F80 001C3EE0 2C 05 00 08 */ cmpwi r5, 8 +/* 801C6F84 001C3EE4 38 85 FF F8 */ addi r4, r5, -8 +/* 801C6F88 001C3EE8 40 81 00 20 */ ble lbl_801C6FA8 +/* 801C6F8C 001C3EEC 38 04 00 07 */ addi r0, r4, 7 +/* 801C6F90 001C3EF0 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C6F94 001C3EF4 7C 09 03 A6 */ mtctr r0 +/* 801C6F98 001C3EF8 2C 04 00 00 */ cmpwi r4, 0 +/* 801C6F9C 001C3EFC 40 81 00 0C */ ble lbl_801C6FA8 +lbl_801C6FA0: +/* 801C6FA0 001C3F00 38 63 00 08 */ addi r3, r3, 8 +/* 801C6FA4 001C3F04 42 00 FF FC */ bdnz lbl_801C6FA0 +lbl_801C6FA8: +/* 801C6FA8 001C3F08 7C 03 28 50 */ subf r0, r3, r5 +/* 801C6FAC 001C3F0C 7C 09 03 A6 */ mtctr r0 +/* 801C6FB0 001C3F10 7C 03 28 00 */ cmpw r3, r5 +/* 801C6FB4 001C3F14 40 80 00 08 */ bge lbl_801C6FBC +lbl_801C6FB8: +/* 801C6FB8 001C3F18 42 00 00 00 */ bdnz lbl_801C6FB8 +lbl_801C6FBC: +/* 801C6FBC 001C3F1C 80 A1 00 64 */ lwz r5, 0x64(r1) +/* 801C6FC0 001C3F20 38 60 00 00 */ li r3, 0 +/* 801C6FC4 001C3F24 90 61 00 50 */ stw r3, 0x50(r1) +/* 801C6FC8 001C3F28 2C 05 00 00 */ cmpwi r5, 0 +/* 801C6FCC 001C3F2C 40 81 00 40 */ ble lbl_801C700C +/* 801C6FD0 001C3F30 2C 05 00 08 */ cmpwi r5, 8 +/* 801C6FD4 001C3F34 38 85 FF F8 */ addi r4, r5, -8 +/* 801C6FD8 001C3F38 40 81 00 20 */ ble lbl_801C6FF8 +/* 801C6FDC 001C3F3C 38 04 00 07 */ addi r0, r4, 7 +/* 801C6FE0 001C3F40 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C6FE4 001C3F44 7C 09 03 A6 */ mtctr r0 +/* 801C6FE8 001C3F48 2C 04 00 00 */ cmpwi r4, 0 +/* 801C6FEC 001C3F4C 40 81 00 0C */ ble lbl_801C6FF8 +lbl_801C6FF0: +/* 801C6FF0 001C3F50 38 63 00 08 */ addi r3, r3, 8 +/* 801C6FF4 001C3F54 42 00 FF FC */ bdnz lbl_801C6FF0 +lbl_801C6FF8: +/* 801C6FF8 001C3F58 7C 03 28 50 */ subf r0, r3, r5 +/* 801C6FFC 001C3F5C 7C 09 03 A6 */ mtctr r0 +/* 801C7000 001C3F60 7C 03 28 00 */ cmpw r3, r5 +/* 801C7004 001C3F64 40 80 00 08 */ bge lbl_801C700C +lbl_801C7008: +/* 801C7008 001C3F68 42 00 00 00 */ bdnz lbl_801C7008 +lbl_801C700C: +/* 801C700C 001C3F6C 38 00 00 00 */ li r0, 0 +/* 801C7010 001C3F70 38 60 00 00 */ li r3, 0 +/* 801C7014 001C3F74 90 01 00 64 */ stw r0, 0x64(r1) +/* 801C7018 001C3F78 48 00 00 D0 */ b lbl_801C70E8 +lbl_801C701C: +/* 801C701C 001C3F7C 3B DE 00 04 */ addi r30, r30, 4 +/* 801C7020 001C3F80 3B 5A 00 01 */ addi r26, r26, 1 +lbl_801C7024: +/* 801C7024 001C3F84 80 01 00 50 */ lwz r0, 0x50(r1) +/* 801C7028 001C3F88 7C 1A 00 00 */ cmpw r26, r0 +/* 801C702C 001C3F8C 41 80 FF 20 */ blt lbl_801C6F4C +/* 801C7030 001C3F90 3B BD 00 04 */ addi r29, r29, 4 +/* 801C7034 001C3F94 3B 7B 00 01 */ addi r27, r27, 1 +lbl_801C7038: +/* 801C7038 001C3F98 80 C1 00 64 */ lwz r6, 0x64(r1) +/* 801C703C 001C3F9C 7C 1B 30 00 */ cmpw r27, r6 +/* 801C7040 001C3FA0 41 80 FF 00 */ blt lbl_801C6F40 +/* 801C7044 001C3FA4 80 A1 00 50 */ lwz r5, 0x50(r1) +/* 801C7048 001C3FA8 38 60 00 00 */ li r3, 0 +/* 801C704C 001C3FAC 2C 05 00 00 */ cmpwi r5, 0 +/* 801C7050 001C3FB0 40 81 00 40 */ ble lbl_801C7090 +/* 801C7054 001C3FB4 2C 05 00 08 */ cmpwi r5, 8 +/* 801C7058 001C3FB8 38 85 FF F8 */ addi r4, r5, -8 +/* 801C705C 001C3FBC 40 81 00 20 */ ble lbl_801C707C +/* 801C7060 001C3FC0 38 04 00 07 */ addi r0, r4, 7 +/* 801C7064 001C3FC4 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C7068 001C3FC8 7C 09 03 A6 */ mtctr r0 +/* 801C706C 001C3FCC 2C 04 00 00 */ cmpwi r4, 0 +/* 801C7070 001C3FD0 40 81 00 0C */ ble lbl_801C707C +lbl_801C7074: +/* 801C7074 001C3FD4 38 63 00 08 */ addi r3, r3, 8 +/* 801C7078 001C3FD8 42 00 FF FC */ bdnz lbl_801C7074 +lbl_801C707C: +/* 801C707C 001C3FDC 7C 03 28 50 */ subf r0, r3, r5 +/* 801C7080 001C3FE0 7C 09 03 A6 */ mtctr r0 +/* 801C7084 001C3FE4 7C 03 28 00 */ cmpw r3, r5 +/* 801C7088 001C3FE8 40 80 00 08 */ bge lbl_801C7090 +lbl_801C708C: +/* 801C708C 001C3FEC 42 00 00 00 */ bdnz lbl_801C708C +lbl_801C7090: +/* 801C7090 001C3FF0 38 60 00 00 */ li r3, 0 +/* 801C7094 001C3FF4 2C 06 00 00 */ cmpwi r6, 0 +/* 801C7098 001C3FF8 90 61 00 50 */ stw r3, 0x50(r1) +/* 801C709C 001C3FFC 40 81 00 40 */ ble lbl_801C70DC +/* 801C70A0 001C4000 2C 06 00 08 */ cmpwi r6, 8 +/* 801C70A4 001C4004 38 86 FF F8 */ addi r4, r6, -8 +/* 801C70A8 001C4008 40 81 00 20 */ ble lbl_801C70C8 +/* 801C70AC 001C400C 38 04 00 07 */ addi r0, r4, 7 +/* 801C70B0 001C4010 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C70B4 001C4014 7C 09 03 A6 */ mtctr r0 +/* 801C70B8 001C4018 2C 04 00 00 */ cmpwi r4, 0 +/* 801C70BC 001C401C 40 81 00 0C */ ble lbl_801C70C8 +lbl_801C70C0: +/* 801C70C0 001C4020 38 63 00 08 */ addi r3, r3, 8 +/* 801C70C4 001C4024 42 00 FF FC */ bdnz lbl_801C70C0 +lbl_801C70C8: +/* 801C70C8 001C4028 7C 03 30 50 */ subf r0, r3, r6 +/* 801C70CC 001C402C 7C 09 03 A6 */ mtctr r0 +/* 801C70D0 001C4030 7C 03 30 00 */ cmpw r3, r6 +/* 801C70D4 001C4034 40 80 00 08 */ bge lbl_801C70DC +lbl_801C70D8: +/* 801C70D8 001C4038 42 00 00 00 */ bdnz lbl_801C70D8 +lbl_801C70DC: +/* 801C70DC 001C403C 38 00 00 00 */ li r0, 0 +/* 801C70E0 001C4040 38 60 00 04 */ li r3, 4 +/* 801C70E4 001C4044 90 01 00 64 */ stw r0, 0x64(r1) +lbl_801C70E8: +/* 801C70E8 001C4048 BB 41 00 78 */ lmw r26, 0x78(r1) +/* 801C70EC 001C404C 80 01 00 94 */ lwz r0, 0x94(r1) +/* 801C70F0 001C4050 7C 08 03 A6 */ mtlr r0 +/* 801C70F4 001C4054 38 21 00 90 */ addi r1, r1, 0x90 +/* 801C70F8 001C4058 4E 80 00 20 */ blr + +.global FindClosestReachablePoint__15CPathFindSearchCFRC9CVector3fR9CVector3f +FindClosestReachablePoint__15CPathFindSearchCFRC9CVector3fR9CVector3f: +/* 801C70FC 001C405C 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 801C7100 001C4060 7C 08 02 A6 */ mflr r0 +/* 801C7104 001C4064 90 01 00 94 */ stw r0, 0x94(r1) +/* 801C7108 001C4068 93 E1 00 8C */ stw r31, 0x8c(r1) +/* 801C710C 001C406C 7C BF 2B 78 */ mr r31, r5 +/* 801C7110 001C4070 93 C1 00 88 */ stw r30, 0x88(r1) +/* 801C7114 001C4074 7C 7E 1B 78 */ mr r30, r3 +/* 801C7118 001C4078 80 63 00 00 */ lwz r3, 0(r3) +/* 801C711C 001C407C 28 03 00 00 */ cmplwi r3, 0 +/* 801C7120 001C4080 40 82 00 0C */ bne lbl_801C712C +/* 801C7124 001C4084 38 60 00 01 */ li r3, 1 +/* 801C7128 001C4088 48 00 02 74 */ b lbl_801C739C +lbl_801C712C: +/* 801C712C 001C408C 38 C3 01 88 */ addi r6, r3, 0x188 +/* 801C7130 001C4090 C0 24 00 08 */ lfs f1, 8(r4) +/* 801C7134 001C4094 C0 03 01 B4 */ lfs f0, 0x1b4(r3) +/* 801C7138 001C4098 38 61 00 44 */ addi r3, r1, 0x44 +/* 801C713C 001C409C C0 64 00 04 */ lfs f3, 4(r4) +/* 801C7140 001C40A0 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801C7144 001C40A4 C0 46 00 1C */ lfs f2, 0x1c(r6) +/* 801C7148 001C40A8 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801C714C 001C40AC C0 24 00 00 */ lfs f1, 0(r4) +/* 801C7150 001C40B0 7C C4 33 78 */ mr r4, r6 +/* 801C7154 001C40B4 C0 06 00 0C */ lfs f0, 0xc(r6) +/* 801C7158 001C40B8 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801C715C 001C40BC EC 01 00 28 */ fsubs f0, f1, f0 +/* 801C7160 001C40C0 D0 81 00 1C */ stfs f4, 0x1c(r1) +/* 801C7164 001C40C4 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 801C7168 001C40C8 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801C716C 001C40CC 48 14 B8 B9 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 801C7170 001C40D0 C0 41 00 44 */ lfs f2, 0x44(r1) +/* 801C7174 001C40D4 38 61 00 38 */ addi r3, r1, 0x38 +/* 801C7178 001C40D8 C0 21 00 48 */ lfs f1, 0x48(r1) +/* 801C717C 001C40DC 38 A1 00 08 */ addi r5, r1, 8 +/* 801C7180 001C40E0 C0 01 00 4C */ lfs f0, 0x4c(r1) +/* 801C7184 001C40E4 80 9E 00 00 */ lwz r4, 0(r30) +/* 801C7188 001C40E8 D0 41 00 68 */ stfs f2, 0x68(r1) +/* 801C718C 001C40EC 38 84 01 88 */ addi r4, r4, 0x188 +/* 801C7190 001C40F0 D0 21 00 6C */ stfs f1, 0x6c(r1) +/* 801C7194 001C40F4 D0 01 00 70 */ stfs f0, 0x70(r1) +/* 801C7198 001C40F8 C0 3F 00 08 */ lfs f1, 8(r31) +/* 801C719C 001C40FC C0 04 00 2C */ lfs f0, 0x2c(r4) +/* 801C71A0 001C4100 C0 7F 00 04 */ lfs f3, 4(r31) +/* 801C71A4 001C4104 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801C71A8 001C4108 C0 44 00 1C */ lfs f2, 0x1c(r4) +/* 801C71AC 001C410C C0 3F 00 00 */ lfs f1, 0(r31) +/* 801C71B0 001C4110 C0 04 00 0C */ lfs f0, 0xc(r4) +/* 801C71B4 001C4114 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801C71B8 001C4118 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801C71BC 001C411C D0 81 00 10 */ stfs f4, 0x10(r1) +/* 801C71C0 001C4120 D0 41 00 0C */ stfs f2, 0xc(r1) +/* 801C71C4 001C4124 D0 01 00 08 */ stfs f0, 8(r1) +/* 801C71C8 001C4128 48 14 B8 5D */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 801C71CC 001C412C 80 7E 00 DC */ lwz r3, 0xdc(r30) +/* 801C71D0 001C4130 C0 41 00 38 */ lfs f2, 0x38(r1) +/* 801C71D4 001C4134 C0 21 00 3C */ lfs f1, 0x3c(r1) +/* 801C71D8 001C4138 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e +/* 801C71DC 001C413C C0 01 00 40 */ lfs f0, 0x40(r1) +/* 801C71E0 001C4140 D0 41 00 5C */ stfs f2, 0x5c(r1) +/* 801C71E4 001C4144 D0 21 00 60 */ stfs f1, 0x60(r1) +/* 801C71E8 001C4148 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 801C71EC 001C414C 40 82 00 24 */ bne lbl_801C7210 +/* 801C71F0 001C4150 54 60 07 7B */ rlwinm. r0, r3, 0, 0x1d, 0x1d +/* 801C71F4 001C4154 40 82 00 1C */ bne lbl_801C7210 +/* 801C71F8 001C4158 C0 22 AB 28 */ lfs f1, lbl_805AC848@sda21(r2) +/* 801C71FC 001C415C C0 41 00 70 */ lfs f2, 0x70(r1) +/* 801C7200 001C4160 EC 00 08 2A */ fadds f0, f0, f1 +/* 801C7204 001C4164 EC 22 08 2A */ fadds f1, f2, f1 +/* 801C7208 001C4168 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 801C720C 001C416C D0 21 00 70 */ stfs f1, 0x70(r1) +lbl_801C7210: +/* 801C7210 001C4170 38 00 00 00 */ li r0, 0 +/* 801C7214 001C4174 80 7E 00 00 */ lwz r3, 0(r30) +/* 801C7218 001C4178 90 01 00 74 */ stw r0, 0x74(r1) +/* 801C721C 001C417C 38 81 00 74 */ addi r4, r1, 0x74 +/* 801C7220 001C4180 80 DE 00 DC */ lwz r6, 0xdc(r30) +/* 801C7224 001C4184 38 A1 00 68 */ addi r5, r1, 0x68 +/* 801C7228 001C4188 80 FE 00 E0 */ lwz r7, 0xe0(r30) +/* 801C722C 001C418C 48 00 38 19 */ bl "FindRegions__7CPFAreaFRQ24rstl30reserved_vectorRC9CVector3fUiUi" +/* 801C7230 001C4190 2C 03 00 00 */ cmpwi r3, 0 +/* 801C7234 001C4194 40 82 00 A4 */ bne lbl_801C72D8 +/* 801C7238 001C4198 80 7E 00 00 */ lwz r3, 0(r30) +/* 801C723C 001C419C 38 81 00 68 */ addi r4, r1, 0x68 +/* 801C7240 001C41A0 80 BE 00 DC */ lwz r5, 0xdc(r30) +/* 801C7244 001C41A4 80 DE 00 E0 */ lwz r6, 0xe0(r30) +/* 801C7248 001C41A8 C0 3E 00 D8 */ lfs f1, 0xd8(r30) +/* 801C724C 001C41AC 48 00 35 51 */ bl FindClosestRegion__7CPFAreaFRC9CVector3fUif +/* 801C7250 001C41B0 28 03 00 00 */ cmplwi r3, 0 +/* 801C7254 001C41B4 40 82 00 60 */ bne lbl_801C72B4 +/* 801C7258 001C41B8 80 A1 00 74 */ lwz r5, 0x74(r1) +/* 801C725C 001C41BC 38 60 00 00 */ li r3, 0 +/* 801C7260 001C41C0 2C 05 00 00 */ cmpwi r5, 0 +/* 801C7264 001C41C4 40 81 00 40 */ ble lbl_801C72A4 +/* 801C7268 001C41C8 2C 05 00 08 */ cmpwi r5, 8 +/* 801C726C 001C41CC 38 85 FF F8 */ addi r4, r5, -8 +/* 801C7270 001C41D0 40 81 00 20 */ ble lbl_801C7290 +/* 801C7274 001C41D4 38 04 00 07 */ addi r0, r4, 7 +/* 801C7278 001C41D8 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C727C 001C41DC 7C 09 03 A6 */ mtctr r0 +/* 801C7280 001C41E0 2C 04 00 00 */ cmpwi r4, 0 +/* 801C7284 001C41E4 40 81 00 0C */ ble lbl_801C7290 +lbl_801C7288: +/* 801C7288 001C41E8 38 63 00 08 */ addi r3, r3, 8 +/* 801C728C 001C41EC 42 00 FF FC */ bdnz lbl_801C7288 +lbl_801C7290: +/* 801C7290 001C41F0 7C 03 28 50 */ subf r0, r3, r5 +/* 801C7294 001C41F4 7C 09 03 A6 */ mtctr r0 +/* 801C7298 001C41F8 7C 03 28 00 */ cmpw r3, r5 +/* 801C729C 001C41FC 40 80 00 08 */ bge lbl_801C72A4 +lbl_801C72A0: +/* 801C72A0 001C4200 42 00 00 00 */ bdnz lbl_801C72A0 +lbl_801C72A4: +/* 801C72A4 001C4204 38 00 00 00 */ li r0, 0 +/* 801C72A8 001C4208 38 60 00 02 */ li r3, 2 +/* 801C72AC 001C420C 90 01 00 74 */ stw r0, 0x74(r1) +/* 801C72B0 001C4210 48 00 00 EC */ b lbl_801C739C +lbl_801C72B4: +/* 801C72B4 001C4214 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801C72B8 001C4218 38 81 00 78 */ addi r4, r1, 0x78 +/* 801C72BC 001C421C 54 00 10 3A */ slwi r0, r0, 2 +/* 801C72C0 001C4220 7C 84 02 15 */ add. r4, r4, r0 +/* 801C72C4 001C4224 41 82 00 08 */ beq lbl_801C72CC +/* 801C72C8 001C4228 90 64 00 00 */ stw r3, 0(r4) +lbl_801C72CC: +/* 801C72CC 001C422C 80 61 00 74 */ lwz r3, 0x74(r1) +/* 801C72D0 001C4230 38 03 00 01 */ addi r0, r3, 1 +/* 801C72D4 001C4234 90 01 00 74 */ stw r0, 0x74(r1) +lbl_801C72D8: +/* 801C72D8 001C4238 80 9E 00 00 */ lwz r4, 0(r30) +/* 801C72DC 001C423C 38 61 00 2C */ addi r3, r1, 0x2c +/* 801C72E0 001C4240 80 FE 00 DC */ lwz r7, 0xdc(r30) +/* 801C72E4 001C4244 38 A1 00 74 */ addi r5, r1, 0x74 +/* 801C72E8 001C4248 81 1E 00 E0 */ lwz r8, 0xe0(r30) +/* 801C72EC 001C424C 38 C1 00 5C */ addi r6, r1, 0x5c +/* 801C72F0 001C4250 48 00 32 F5 */ bl "FindClosestReachablePoint__7CPFAreaFRQ24rstl30reserved_vectorRC9CVector3fUi" +/* 801C72F4 001C4254 C0 21 00 34 */ lfs f1, 0x34(r1) +/* 801C72F8 001C4258 38 61 00 20 */ addi r3, r1, 0x20 +/* 801C72FC 001C425C C0 02 AB 28 */ lfs f0, lbl_805AC848@sda21(r2) +/* 801C7300 001C4260 38 A1 00 50 */ addi r5, r1, 0x50 +/* 801C7304 001C4264 C0 61 00 2C */ lfs f3, 0x2c(r1) +/* 801C7308 001C4268 C0 41 00 30 */ lfs f2, 0x30(r1) +/* 801C730C 001C426C EC 01 00 2A */ fadds f0, f1, f0 +/* 801C7310 001C4270 D0 21 00 58 */ stfs f1, 0x58(r1) +/* 801C7314 001C4274 80 9E 00 00 */ lwz r4, 0(r30) +/* 801C7318 001C4278 D0 61 00 50 */ stfs f3, 0x50(r1) +/* 801C731C 001C427C 38 84 01 88 */ addi r4, r4, 0x188 +/* 801C7320 001C4280 D0 41 00 54 */ stfs f2, 0x54(r1) +/* 801C7324 001C4284 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 801C7328 001C4288 48 14 B7 C1 */ bl __ml__12CTransform4fCFRC9CVector3f +/* 801C732C 001C428C C0 01 00 20 */ lfs f0, 0x20(r1) +/* 801C7330 001C4290 38 60 00 00 */ li r3, 0 +/* 801C7334 001C4294 D0 1F 00 00 */ stfs f0, 0(r31) +/* 801C7338 001C4298 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 801C733C 001C429C D0 1F 00 04 */ stfs f0, 4(r31) +/* 801C7340 001C42A0 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 801C7344 001C42A4 D0 1F 00 08 */ stfs f0, 8(r31) +/* 801C7348 001C42A8 80 A1 00 74 */ lwz r5, 0x74(r1) +/* 801C734C 001C42AC 2C 05 00 00 */ cmpwi r5, 0 +/* 801C7350 001C42B0 40 81 00 40 */ ble lbl_801C7390 +/* 801C7354 001C42B4 2C 05 00 08 */ cmpwi r5, 8 +/* 801C7358 001C42B8 38 85 FF F8 */ addi r4, r5, -8 +/* 801C735C 001C42BC 40 81 00 20 */ ble lbl_801C737C +/* 801C7360 001C42C0 38 04 00 07 */ addi r0, r4, 7 +/* 801C7364 001C42C4 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C7368 001C42C8 7C 09 03 A6 */ mtctr r0 +/* 801C736C 001C42CC 2C 04 00 00 */ cmpwi r4, 0 +/* 801C7370 001C42D0 40 81 00 0C */ ble lbl_801C737C +lbl_801C7374: +/* 801C7374 001C42D4 38 63 00 08 */ addi r3, r3, 8 +/* 801C7378 001C42D8 42 00 FF FC */ bdnz lbl_801C7374 +lbl_801C737C: +/* 801C737C 001C42DC 7C 03 28 50 */ subf r0, r3, r5 +/* 801C7380 001C42E0 7C 09 03 A6 */ mtctr r0 +/* 801C7384 001C42E4 7C 03 28 00 */ cmpw r3, r5 +/* 801C7388 001C42E8 40 80 00 08 */ bge lbl_801C7390 +lbl_801C738C: +/* 801C738C 001C42EC 42 00 00 00 */ bdnz lbl_801C738C +lbl_801C7390: +/* 801C7390 001C42F0 38 00 00 00 */ li r0, 0 +/* 801C7394 001C42F4 38 60 00 00 */ li r3, 0 +/* 801C7398 001C42F8 90 01 00 74 */ stw r0, 0x74(r1) +lbl_801C739C: +/* 801C739C 001C42FC 80 01 00 94 */ lwz r0, 0x94(r1) +/* 801C73A0 001C4300 83 E1 00 8C */ lwz r31, 0x8c(r1) +/* 801C73A4 001C4304 83 C1 00 88 */ lwz r30, 0x88(r1) +/* 801C73A8 001C4308 7C 08 03 A6 */ mtlr r0 +/* 801C73AC 001C430C 38 21 00 90 */ addi r1, r1, 0x90 +/* 801C73B0 001C4310 4E 80 00 20 */ blr + +.global "Search__15CPathFindSearchFRQ24rstl30reserved_vectorRC9CVector3fRQ24rstl30reserved_vectorRC9CVector3f" +"Search__15CPathFindSearchFRQ24rstl30reserved_vectorRC9CVector3fRQ24rstl30reserved_vectorRC9CVector3f": +/* 801C73B4 001C4314 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 801C73B8 001C4318 7C 08 02 A6 */ mflr r0 +/* 801C73BC 001C431C 39 00 00 00 */ li r8, 0 +/* 801C73C0 001C4320 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 801C73C4 001C4324 BE E1 00 9C */ stmw r23, 0x9c(r1) +/* 801C73C8 001C4328 7C DD 33 78 */ mr r29, r6 +/* 801C73CC 001C432C 7C 7B 1B 78 */ mr r27, r3 +/* 801C73D0 001C4330 7C 9C 23 78 */ mr r28, r4 +/* 801C73D4 001C4334 3B 1D 00 04 */ addi r24, r29, 4 +/* 801C73D8 001C4338 7C B7 2B 78 */ mr r23, r5 +/* 801C73DC 001C433C 91 01 00 60 */ stw r8, 0x60(r1) +/* 801C73E0 001C4340 7C FE 3B 78 */ mr r30, r7 +/* 801C73E4 001C4344 7F 05 C3 78 */ mr r5, r24 +/* 801C73E8 001C4348 3B E1 00 64 */ addi r31, r1, 0x64 +/* 801C73EC 001C434C 38 C0 00 00 */ li r6, 0 +/* 801C73F0 001C4350 80 63 00 00 */ lwz r3, 0(r3) +/* 801C73F4 001C4354 91 03 00 38 */ stw r8, 0x38(r3) +/* 801C73F8 001C4358 3B 23 00 78 */ addi r25, r3, 0x78 +/* 801C73FC 001C435C 3B 43 00 38 */ addi r26, r3, 0x38 +/* 801C7400 001C4360 91 03 00 3C */ stw r8, 0x3c(r3) +/* 801C7404 001C4364 38 19 00 40 */ addi r0, r25, 0x40 +/* 801C7408 001C4368 91 03 00 40 */ stw r8, 0x40(r3) +/* 801C740C 001C436C 91 03 00 44 */ stw r8, 0x44(r3) +/* 801C7410 001C4370 91 03 00 48 */ stw r8, 0x48(r3) +/* 801C7414 001C4374 91 03 00 4C */ stw r8, 0x4c(r3) +/* 801C7418 001C4378 91 03 00 50 */ stw r8, 0x50(r3) +/* 801C741C 001C437C 91 03 00 54 */ stw r8, 0x54(r3) +/* 801C7420 001C4380 91 03 00 58 */ stw r8, 0x58(r3) +/* 801C7424 001C4384 91 03 00 5C */ stw r8, 0x5c(r3) +/* 801C7428 001C4388 91 03 00 60 */ stw r8, 0x60(r3) +/* 801C742C 001C438C 91 03 00 64 */ stw r8, 0x64(r3) +/* 801C7430 001C4390 91 03 00 68 */ stw r8, 0x68(r3) +/* 801C7434 001C4394 91 03 00 6C */ stw r8, 0x6c(r3) +/* 801C7438 001C4398 91 03 00 70 */ stw r8, 0x70(r3) +/* 801C743C 001C439C 91 03 00 74 */ stw r8, 0x74(r3) +/* 801C7440 001C43A0 80 63 01 04 */ lwz r3, 0x104(r3) +/* 801C7444 001C43A4 90 03 00 28 */ stw r0, 0x28(r3) +/* 801C7448 001C43A8 80 79 00 8C */ lwz r3, 0x8c(r25) +/* 801C744C 001C43AC 90 03 00 24 */ stw r0, 0x24(r3) +/* 801C7450 001C43B0 91 19 00 00 */ stw r8, 0(r25) +/* 801C7454 001C43B4 91 19 00 04 */ stw r8, 4(r25) +/* 801C7458 001C43B8 91 19 00 08 */ stw r8, 8(r25) +/* 801C745C 001C43BC 91 19 00 0C */ stw r8, 0xc(r25) +/* 801C7460 001C43C0 91 19 00 10 */ stw r8, 0x10(r25) +/* 801C7464 001C43C4 91 19 00 14 */ stw r8, 0x14(r25) +/* 801C7468 001C43C8 91 19 00 18 */ stw r8, 0x18(r25) +/* 801C746C 001C43CC 91 19 00 1C */ stw r8, 0x1c(r25) +/* 801C7470 001C43D0 91 19 00 20 */ stw r8, 0x20(r25) +/* 801C7474 001C43D4 91 19 00 24 */ stw r8, 0x24(r25) +/* 801C7478 001C43D8 91 19 00 28 */ stw r8, 0x28(r25) +/* 801C747C 001C43DC 91 19 00 2C */ stw r8, 0x2c(r25) +/* 801C7480 001C43E0 91 19 00 30 */ stw r8, 0x30(r25) +/* 801C7484 001C43E4 91 19 00 34 */ stw r8, 0x34(r25) +/* 801C7488 001C43E8 91 19 00 38 */ stw r8, 0x38(r25) +/* 801C748C 001C43EC 91 19 00 3C */ stw r8, 0x3c(r25) +/* 801C7490 001C43F0 48 00 00 60 */ b lbl_801C74F0 +lbl_801C7494: +/* 801C7494 001C43F4 80 01 00 60 */ lwz r0, 0x60(r1) +/* 801C7498 001C43F8 80 65 00 00 */ lwz r3, 0(r5) +/* 801C749C 001C43FC 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C74A0 001C4400 7C 9F 02 15 */ add. r4, r31, r0 +/* 801C74A4 001C4404 41 82 00 1C */ beq lbl_801C74C0 +/* 801C74A8 001C4408 C0 03 00 28 */ lfs f0, 0x28(r3) +/* 801C74AC 001C440C C0 23 00 2C */ lfs f1, 0x2c(r3) +/* 801C74B0 001C4410 D0 04 00 00 */ stfs f0, 0(r4) +/* 801C74B4 001C4414 C0 03 00 30 */ lfs f0, 0x30(r3) +/* 801C74B8 001C4418 D0 24 00 04 */ stfs f1, 4(r4) +/* 801C74BC 001C441C D0 04 00 08 */ stfs f0, 8(r4) +lbl_801C74C0: +/* 801C74C0 001C4420 80 85 00 00 */ lwz r4, 0(r5) +/* 801C74C4 001C4424 38 A5 00 04 */ addi r5, r5, 4 +/* 801C74C8 001C4428 C0 1E 00 00 */ lfs f0, 0(r30) +/* 801C74CC 001C442C 38 C6 00 01 */ addi r6, r6, 1 +/* 801C74D0 001C4430 80 61 00 60 */ lwz r3, 0x60(r1) +/* 801C74D4 001C4434 D0 04 00 28 */ stfs f0, 0x28(r4) +/* 801C74D8 001C4438 38 03 00 01 */ addi r0, r3, 1 +/* 801C74DC 001C443C C0 1E 00 04 */ lfs f0, 4(r30) +/* 801C74E0 001C4440 90 01 00 60 */ stw r0, 0x60(r1) +/* 801C74E4 001C4444 D0 04 00 2C */ stfs f0, 0x2c(r4) +/* 801C74E8 001C4448 C0 1E 00 08 */ lfs f0, 8(r30) +/* 801C74EC 001C444C D0 04 00 30 */ stfs f0, 0x30(r4) +lbl_801C74F0: +/* 801C74F0 001C4450 80 1D 00 00 */ lwz r0, 0(r29) +/* 801C74F4 001C4454 7C 06 00 00 */ cmpw r6, r0 +/* 801C74F8 001C4458 41 80 FF 9C */ blt lbl_801C7494 +/* 801C74FC 001C445C C0 3E 00 04 */ lfs f1, 4(r30) +/* 801C7500 001C4460 38 00 00 00 */ li r0, 0 +/* 801C7504 001C4464 C0 17 00 04 */ lfs f0, 4(r23) +/* 801C7508 001C4468 38 61 00 20 */ addi r3, r1, 0x20 +/* 801C750C 001C446C C0 7E 00 08 */ lfs f3, 8(r30) +/* 801C7510 001C4470 C0 57 00 08 */ lfs f2, 8(r23) +/* 801C7514 001C4474 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801C7518 001C4478 C0 3E 00 00 */ lfs f1, 0(r30) +/* 801C751C 001C447C C0 17 00 00 */ lfs f0, 0(r23) +/* 801C7520 001C4480 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801C7524 001C4484 90 01 00 2C */ stw r0, 0x2c(r1) +/* 801C7528 001C4488 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801C752C 001C448C D0 81 00 24 */ stfs f4, 0x24(r1) +/* 801C7530 001C4490 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801C7534 001C4494 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 801C7538 001C4498 48 14 D3 81 */ bl Magnitude__9CVector3fCFv +/* 801C753C 001C449C 38 FC 00 04 */ addi r7, r28, 4 +/* 801C7540 001C44A0 C0 62 AB 2C */ lfs f3, lbl_805AC84C@sda21(r2) +/* 801C7544 001C44A4 7C E3 3B 78 */ mr r3, r7 +/* 801C7548 001C44A8 38 C1 00 30 */ addi r6, r1, 0x30 +/* 801C754C 001C44AC 39 59 00 40 */ addi r10, r25, 0x40 +/* 801C7550 001C44B0 38 80 00 00 */ li r4, 0 +/* 801C7554 001C44B4 48 00 01 08 */ b lbl_801C765C +lbl_801C7558: +/* 801C7558 001C44B8 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 801C755C 001C44BC 80 A3 00 00 */ lwz r5, 0(r3) +/* 801C7560 001C44C0 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C7564 001C44C4 7D 06 02 15 */ add. r8, r6, r0 +/* 801C7568 001C44C8 41 82 00 1C */ beq lbl_801C7584 +/* 801C756C 001C44CC C0 05 00 28 */ lfs f0, 0x28(r5) +/* 801C7570 001C44D0 C0 45 00 2C */ lfs f2, 0x2c(r5) +/* 801C7574 001C44D4 D0 08 00 00 */ stfs f0, 0(r8) +/* 801C7578 001C44D8 C0 05 00 30 */ lfs f0, 0x30(r5) +/* 801C757C 001C44DC D0 48 00 04 */ stfs f2, 4(r8) +/* 801C7580 001C44E0 D0 08 00 08 */ stfs f0, 8(r8) +lbl_801C7584: +/* 801C7584 001C44E4 C0 17 00 00 */ lfs f0, 0(r23) +/* 801C7588 001C44E8 38 00 00 00 */ li r0, 0 +/* 801C758C 001C44EC 81 21 00 2C */ lwz r9, 0x2c(r1) +/* 801C7590 001C44F0 39 00 00 01 */ li r8, 1 +/* 801C7594 001C44F4 D0 05 00 28 */ stfs f0, 0x28(r5) +/* 801C7598 001C44F8 39 29 00 01 */ addi r9, r9, 1 +/* 801C759C 001C44FC C0 17 00 04 */ lfs f0, 4(r23) +/* 801C75A0 001C4500 91 21 00 2C */ stw r9, 0x2c(r1) +/* 801C75A4 001C4504 D0 05 00 2C */ stfs f0, 0x2c(r5) +/* 801C75A8 001C4508 C0 17 00 08 */ lfs f0, 8(r23) +/* 801C75AC 001C450C D0 05 00 30 */ stfs f0, 0x30(r5) +/* 801C75B0 001C4510 81 25 00 4C */ lwz r9, 0x4c(r5) +/* 801C75B4 001C4514 90 09 00 20 */ stw r0, 0x20(r9) +/* 801C75B8 001C4518 D0 69 00 18 */ stfs f3, 0x18(r9) +/* 801C75BC 001C451C D0 29 00 1C */ stfs f1, 0x1c(r9) +/* 801C75C0 001C4520 C0 49 00 18 */ lfs f2, 0x18(r9) +/* 801C75C4 001C4524 C0 09 00 1C */ lfs f0, 0x1c(r9) +/* 801C75C8 001C4528 EC 02 00 2A */ fadds f0, f2, f0 +/* 801C75CC 001C452C D0 09 00 14 */ stfs f0, 0x14(r9) +/* 801C75D0 001C4530 80 05 00 24 */ lwz r0, 0x24(r5) +/* 801C75D4 001C4534 7C 09 2E 70 */ srawi r9, r0, 5 +/* 801C75D8 001C4538 54 00 06 FE */ clrlwi r0, r0, 0x1b +/* 801C75DC 001C453C 7D 29 01 94 */ addze r9, r9 +/* 801C75E0 001C4540 55 29 10 3A */ slwi r9, r9, 2 +/* 801C75E4 001C4544 7D 00 00 30 */ slw r0, r8, r0 +/* 801C75E8 001C4548 7D 19 48 2E */ lwzx r8, r25, r9 +/* 801C75EC 001C454C 7D 00 03 78 */ or r0, r8, r0 +/* 801C75F0 001C4550 7C 19 49 2E */ stwx r0, r25, r9 +/* 801C75F4 001C4554 81 19 00 8C */ lwz r8, 0x8c(r25) +/* 801C75F8 001C4558 81 68 00 28 */ lwz r11, 0x28(r8) +/* 801C75FC 001C455C 48 00 00 08 */ b lbl_801C7604 +lbl_801C7600: +/* 801C7600 001C4560 81 69 00 28 */ lwz r11, 0x28(r9) +lbl_801C7604: +/* 801C7604 001C4564 7C 0B 50 40 */ cmplw r11, r10 +/* 801C7608 001C4568 41 82 00 1C */ beq lbl_801C7624 +/* 801C760C 001C456C 81 2B 00 4C */ lwz r9, 0x4c(r11) +/* 801C7610 001C4570 81 05 00 4C */ lwz r8, 0x4c(r5) +/* 801C7614 001C4574 C0 09 00 14 */ lfs f0, 0x14(r9) +/* 801C7618 001C4578 C0 48 00 14 */ lfs f2, 0x14(r8) +/* 801C761C 001C457C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801C7620 001C4580 41 81 FF E0 */ bgt lbl_801C7600 +lbl_801C7624: +/* 801C7624 001C4584 81 0B 00 4C */ lwz r8, 0x4c(r11) +/* 801C7628 001C4588 38 63 00 04 */ addi r3, r3, 4 +/* 801C762C 001C458C 38 84 00 01 */ addi r4, r4, 1 +/* 801C7630 001C4590 81 08 00 24 */ lwz r8, 0x24(r8) +/* 801C7634 001C4594 81 08 00 4C */ lwz r8, 0x4c(r8) +/* 801C7638 001C4598 90 A8 00 28 */ stw r5, 0x28(r8) +/* 801C763C 001C459C 81 2B 00 4C */ lwz r9, 0x4c(r11) +/* 801C7640 001C45A0 81 05 00 4C */ lwz r8, 0x4c(r5) +/* 801C7644 001C45A4 80 09 00 24 */ lwz r0, 0x24(r9) +/* 801C7648 001C45A8 90 08 00 24 */ stw r0, 0x24(r8) +/* 801C764C 001C45AC 81 0B 00 4C */ lwz r8, 0x4c(r11) +/* 801C7650 001C45B0 90 A8 00 24 */ stw r5, 0x24(r8) +/* 801C7654 001C45B4 80 A5 00 4C */ lwz r5, 0x4c(r5) +/* 801C7658 001C45B8 91 65 00 28 */ stw r11, 0x28(r5) +lbl_801C765C: +/* 801C765C 001C45BC 80 1C 00 00 */ lwz r0, 0(r28) +/* 801C7660 001C45C0 7C 04 00 00 */ cmpw r4, r0 +/* 801C7664 001C45C4 41 80 FE F4 */ blt lbl_801C7558 +/* 801C7668 001C45C8 38 19 00 40 */ addi r0, r25, 0x40 +/* 801C766C 001C45CC 48 00 03 30 */ b lbl_801C799C +lbl_801C7670: +/* 801C7670 001C45D0 80 7D 00 00 */ lwz r3, 0(r29) +/* 801C7674 001C45D4 7F 05 C3 78 */ mr r5, r24 +/* 801C7678 001C45D8 7C 69 03 A6 */ mtctr r3 +/* 801C767C 001C45DC 2C 03 00 00 */ cmpwi r3, 0 +/* 801C7680 001C45E0 40 81 00 18 */ ble lbl_801C7698 +lbl_801C7684: +/* 801C7684 001C45E4 80 65 00 00 */ lwz r3, 0(r5) +/* 801C7688 001C45E8 7C 04 18 40 */ cmplw r4, r3 +/* 801C768C 001C45EC 41 82 03 98 */ beq lbl_801C7A24 +/* 801C7690 001C45F0 38 A5 00 04 */ addi r5, r5, 4 +/* 801C7694 001C45F4 42 00 FF F0 */ bdnz lbl_801C7684 +lbl_801C7698: +/* 801C7698 001C45F8 80 64 00 24 */ lwz r3, 0x24(r4) +/* 801C769C 001C45FC 39 00 00 00 */ li r8, 0 +/* 801C76A0 001C4600 38 A0 00 01 */ li r5, 1 +/* 801C76A4 001C4604 7C 64 2E 70 */ srawi r4, r3, 5 +/* 801C76A8 001C4608 54 63 06 FE */ clrlwi r3, r3, 0x1b +/* 801C76AC 001C460C 7D 44 01 94 */ addze r10, r4 +/* 801C76B0 001C4610 7D 04 43 78 */ mr r4, r8 +/* 801C76B4 001C4614 55 4A 10 3A */ slwi r10, r10, 2 +/* 801C76B8 001C4618 7C A3 18 30 */ slw r3, r5, r3 +/* 801C76BC 001C461C 7C BA 50 2E */ lwzx r5, r26, r10 +/* 801C76C0 001C4620 7C A3 1B 78 */ or r3, r5, r3 +/* 801C76C4 001C4624 7C 7A 51 2E */ stwx r3, r26, r10 +/* 801C76C8 001C4628 48 00 02 C8 */ b lbl_801C7990 +lbl_801C76CC: +/* 801C76CC 001C462C 80 A9 00 0C */ lwz r5, 0xc(r9) +/* 801C76D0 001C4630 38 64 00 04 */ addi r3, r4, 4 +/* 801C76D4 001C4634 81 7B 00 00 */ lwz r11, 0(r27) +/* 801C76D8 001C4638 7C A5 18 2E */ lwzx r5, r5, r3 +/* 801C76DC 001C463C 80 69 00 4C */ lwz r3, 0x4c(r9) +/* 801C76E0 001C4640 1D 45 00 50 */ mulli r10, r5, 0x50 +/* 801C76E4 001C4644 81 6B 01 54 */ lwz r11, 0x154(r11) +/* 801C76E8 001C4648 80 A3 00 20 */ lwz r5, 0x20(r3) +/* 801C76EC 001C464C 7C 6B 52 14 */ add r3, r11, r10 +/* 801C76F0 001C4650 7C 03 28 40 */ cmplw r3, r5 +/* 801C76F4 001C4654 41 82 02 94 */ beq lbl_801C7988 +/* 801C76F8 001C4658 81 63 00 10 */ lwz r11, 0x10(r3) +/* 801C76FC 001C465C 81 5B 00 DC */ lwz r10, 0xdc(r27) +/* 801C7700 001C4660 55 65 06 3E */ clrlwi r5, r11, 0x18 +/* 801C7704 001C4664 7D 45 28 39 */ and. r5, r10, r5 +/* 801C7708 001C4668 41 82 02 80 */ beq lbl_801C7988 +/* 801C770C 001C466C 81 5B 00 E0 */ lwz r10, 0xe0(r27) +/* 801C7710 001C4670 55 65 86 3E */ rlwinm r5, r11, 0x10, 0x18, 0x1f +/* 801C7714 001C4674 7D 45 28 39 */ and. r5, r10, r5 +/* 801C7718 001C4678 41 82 02 70 */ beq lbl_801C7988 +/* 801C771C 001C467C C0 43 00 2C */ lfs f2, 0x2c(r3) +/* 801C7720 001C4680 C0 09 00 2C */ lfs f0, 0x2c(r9) +/* 801C7724 001C4684 C0 23 00 28 */ lfs f1, 0x28(r3) +/* 801C7728 001C4688 EC 82 00 28 */ fsubs f4, f2, f0 +/* 801C772C 001C468C C0 09 00 28 */ lfs f0, 0x28(r9) +/* 801C7730 001C4690 C0 63 00 30 */ lfs f3, 0x30(r3) +/* 801C7734 001C4694 EC 41 00 28 */ fsubs f2, f1, f0 +/* 801C7738 001C4698 C0 29 00 30 */ lfs f1, 0x30(r9) +/* 801C773C 001C469C EC 04 01 32 */ fmuls f0, f4, f4 +/* 801C7740 001C46A0 EC 63 08 28 */ fsubs f3, f3, f1 +/* 801C7744 001C46A4 C0 A2 AB 2C */ lfs f5, lbl_805AC84C@sda21(r2) +/* 801C7748 001C46A8 EC 22 00 B2 */ fmuls f1, f2, f2 +/* 801C774C 001C46AC D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801C7750 001C46B0 EC 43 00 F2 */ fmuls f2, f3, f3 +/* 801C7754 001C46B4 EC 01 00 2A */ fadds f0, f1, f0 +/* 801C7758 001C46B8 D0 81 00 18 */ stfs f4, 0x18(r1) +/* 801C775C 001C46BC D0 61 00 1C */ stfs f3, 0x1c(r1) +/* 801C7760 001C46C0 EC 22 00 2A */ fadds f1, f2, f0 +/* 801C7764 001C46C4 FC 05 08 00 */ fcmpu cr0, f5, f1 +/* 801C7768 001C46C8 40 82 00 08 */ bne lbl_801C7770 +/* 801C776C 001C46CC 48 00 00 10 */ b lbl_801C777C +lbl_801C7770: +/* 801C7770 001C46D0 FC 00 08 34 */ frsqrte f0, f1 +/* 801C7774 001C46D4 FC A1 00 32 */ fmul f5, f1, f0 +/* 801C7778 001C46D8 FC A0 28 18 */ frsp f5, f5 +lbl_801C777C: +/* 801C777C 001C46DC 80 A3 00 24 */ lwz r5, 0x24(r3) +/* 801C7780 001C46E0 39 80 00 01 */ li r12, 1 +/* 801C7784 001C46E4 82 E9 00 4C */ lwz r23, 0x4c(r9) +/* 801C7788 001C46E8 7C AA 2E 70 */ srawi r10, r5, 5 +/* 801C778C 001C46EC 54 AB 06 FE */ clrlwi r11, r5, 0x1b +/* 801C7790 001C46F0 7D 4A 01 94 */ addze r10, r10 +/* 801C7794 001C46F4 C0 17 00 18 */ lfs f0, 0x18(r23) +/* 801C7798 001C46F8 55 4A 10 3A */ slwi r10, r10, 2 +/* 801C779C 001C46FC 7D 8B 58 30 */ slw r11, r12, r11 +/* 801C77A0 001C4700 7D 5A 50 2E */ lwzx r10, r26, r10 +/* 801C77A4 001C4704 EC C0 28 2A */ fadds f6, f0, f5 +/* 801C77A8 001C4708 7D 6A 50 39 */ and. r10, r11, r10 +/* 801C77AC 001C470C 40 82 00 1C */ bne lbl_801C77C8 +/* 801C77B0 001C4710 7C AA 2E 70 */ srawi r10, r5, 5 +/* 801C77B4 001C4714 7D 4A 01 94 */ addze r10, r10 +/* 801C77B8 001C4718 55 4A 10 3A */ slwi r10, r10, 2 +/* 801C77BC 001C471C 7D 59 50 2E */ lwzx r10, r25, r10 +/* 801C77C0 001C4720 7D 6A 50 39 */ and. r10, r11, r10 +/* 801C77C4 001C4724 41 82 00 18 */ beq lbl_801C77DC +lbl_801C77C8: +/* 801C77C8 001C4728 81 43 00 4C */ lwz r10, 0x4c(r3) +/* 801C77CC 001C472C C0 0A 00 18 */ lfs f0, 0x18(r10) +/* 801C77D0 001C4730 FC 00 30 40 */ fcmpo cr0, f0, f6 +/* 801C77D4 001C4734 4C 40 13 82 */ cror 2, 0, 2 +/* 801C77D8 001C4738 41 82 01 B0 */ beq lbl_801C7988 +lbl_801C77DC: +/* 801C77DC 001C473C 7C AA 2E 70 */ srawi r10, r5, 5 +/* 801C77E0 001C4740 54 AB 06 FE */ clrlwi r11, r5, 0x1b +/* 801C77E4 001C4744 7C AA 01 94 */ addze r5, r10 +/* 801C77E8 001C4748 54 A5 10 3A */ slwi r5, r5, 2 +/* 801C77EC 001C474C 39 40 00 01 */ li r10, 1 +/* 801C77F0 001C4750 7D 99 28 2E */ lwzx r12, r25, r5 +/* 801C77F4 001C4754 7D 57 58 30 */ slw r23, r10, r11 +/* 801C77F8 001C4758 7E EB 60 38 */ and r11, r23, r12 +/* 801C77FC 001C475C 7D 4B 00 D0 */ neg r10, r11 +/* 801C7800 001C4760 7D 4A 5B 78 */ or r10, r10, r11 +/* 801C7804 001C4764 55 4A 0F FF */ rlwinm. r10, r10, 1, 0x1f, 0x1f +/* 801C7808 001C4768 41 82 00 68 */ beq lbl_801C7870 +/* 801C780C 001C476C 7D 8B B8 78 */ andc r11, r12, r23 +/* 801C7810 001C4770 39 40 00 00 */ li r10, 0 +/* 801C7814 001C4774 7D 79 29 2E */ stwx r11, r25, r5 +/* 801C7818 001C4778 81 63 00 4C */ lwz r11, 0x4c(r3) +/* 801C781C 001C477C 80 AB 00 28 */ lwz r5, 0x28(r11) +/* 801C7820 001C4780 81 6B 00 24 */ lwz r11, 0x24(r11) +/* 801C7824 001C4784 80 A5 00 4C */ lwz r5, 0x4c(r5) +/* 801C7828 001C4788 91 65 00 24 */ stw r11, 0x24(r5) +/* 801C782C 001C478C 81 63 00 4C */ lwz r11, 0x4c(r3) +/* 801C7830 001C4790 80 AB 00 24 */ lwz r5, 0x24(r11) +/* 801C7834 001C4794 81 6B 00 28 */ lwz r11, 0x28(r11) +/* 801C7838 001C4798 80 A5 00 4C */ lwz r5, 0x4c(r5) +/* 801C783C 001C479C 91 65 00 28 */ stw r11, 0x28(r5) +/* 801C7840 001C47A0 80 A3 00 4C */ lwz r5, 0x4c(r3) +/* 801C7844 001C47A4 91 45 00 28 */ stw r10, 0x28(r5) +/* 801C7848 001C47A8 80 A3 00 4C */ lwz r5, 0x4c(r3) +/* 801C784C 001C47AC 91 45 00 24 */ stw r10, 0x24(r5) +/* 801C7850 001C47B0 80 A3 00 4C */ lwz r5, 0x4c(r3) +/* 801C7854 001C47B4 91 25 00 20 */ stw r9, 0x20(r5) +/* 801C7858 001C47B8 D0 C5 00 18 */ stfs f6, 0x18(r5) +/* 801C785C 001C47BC C0 25 00 18 */ lfs f1, 0x18(r5) +/* 801C7860 001C47C0 C0 05 00 1C */ lfs f0, 0x1c(r5) +/* 801C7864 001C47C4 EC 01 00 2A */ fadds f0, f1, f0 +/* 801C7868 001C47C8 D0 05 00 14 */ stfs f0, 0x14(r5) +/* 801C786C 001C47CC 48 00 00 90 */ b lbl_801C78FC +lbl_801C7870: +/* 801C7870 001C47D0 7D 7A 28 2E */ lwzx r11, r26, r5 +/* 801C7874 001C47D4 C0 A2 AB 2C */ lfs f5, lbl_805AC84C@sda21(r2) +/* 801C7878 001C47D8 7D 6A B8 78 */ andc r10, r11, r23 +/* 801C787C 001C47DC 7D 5A 29 2E */ stwx r10, r26, r5 +/* 801C7880 001C47E0 C0 5E 00 04 */ lfs f2, 4(r30) +/* 801C7884 001C47E4 C0 03 00 2C */ lfs f0, 0x2c(r3) +/* 801C7888 001C47E8 C0 3E 00 00 */ lfs f1, 0(r30) +/* 801C788C 001C47EC EC 82 00 28 */ fsubs f4, f2, f0 +/* 801C7890 001C47F0 C0 03 00 28 */ lfs f0, 0x28(r3) +/* 801C7894 001C47F4 C0 7E 00 08 */ lfs f3, 8(r30) +/* 801C7898 001C47F8 EC 41 00 28 */ fsubs f2, f1, f0 +/* 801C789C 001C47FC C0 23 00 30 */ lfs f1, 0x30(r3) +/* 801C78A0 001C4800 EC 04 01 32 */ fmuls f0, f4, f4 +/* 801C78A4 001C4804 EC 63 08 28 */ fsubs f3, f3, f1 +/* 801C78A8 001C4808 D0 81 00 0C */ stfs f4, 0xc(r1) +/* 801C78AC 001C480C EC 22 00 B2 */ fmuls f1, f2, f2 +/* 801C78B0 001C4810 D0 41 00 08 */ stfs f2, 8(r1) +/* 801C78B4 001C4814 EC 43 00 F2 */ fmuls f2, f3, f3 +/* 801C78B8 001C4818 EC 01 00 2A */ fadds f0, f1, f0 +/* 801C78BC 001C481C D0 61 00 10 */ stfs f3, 0x10(r1) +/* 801C78C0 001C4820 EC 22 00 2A */ fadds f1, f2, f0 +/* 801C78C4 001C4824 FC 05 08 00 */ fcmpu cr0, f5, f1 +/* 801C78C8 001C4828 40 82 00 08 */ bne lbl_801C78D0 +/* 801C78CC 001C482C 48 00 00 10 */ b lbl_801C78DC +lbl_801C78D0: +/* 801C78D0 001C4830 FC 00 08 34 */ frsqrte f0, f1 +/* 801C78D4 001C4834 FC A1 00 32 */ fmul f5, f1, f0 +/* 801C78D8 001C4838 FC A0 28 18 */ frsp f5, f5 +lbl_801C78DC: +/* 801C78DC 001C483C 80 A3 00 4C */ lwz r5, 0x4c(r3) +/* 801C78E0 001C4840 91 25 00 20 */ stw r9, 0x20(r5) +/* 801C78E4 001C4844 D0 C5 00 18 */ stfs f6, 0x18(r5) +/* 801C78E8 001C4848 D0 A5 00 1C */ stfs f5, 0x1c(r5) +/* 801C78EC 001C484C C0 25 00 18 */ lfs f1, 0x18(r5) +/* 801C78F0 001C4850 C0 05 00 1C */ lfs f0, 0x1c(r5) +/* 801C78F4 001C4854 EC 01 00 2A */ fadds f0, f1, f0 +/* 801C78F8 001C4858 D0 05 00 14 */ stfs f0, 0x14(r5) +lbl_801C78FC: +/* 801C78FC 001C485C 80 A3 00 24 */ lwz r5, 0x24(r3) +/* 801C7900 001C4860 39 60 00 01 */ li r11, 1 +/* 801C7904 001C4864 39 59 00 40 */ addi r10, r25, 0x40 +/* 801C7908 001C4868 7C AC 2E 70 */ srawi r12, r5, 5 +/* 801C790C 001C486C 54 A5 06 FE */ clrlwi r5, r5, 0x1b +/* 801C7910 001C4870 7D 8C 01 94 */ addze r12, r12 +/* 801C7914 001C4874 55 8C 10 3A */ slwi r12, r12, 2 +/* 801C7918 001C4878 7D 65 28 30 */ slw r5, r11, r5 +/* 801C791C 001C487C 7D 79 60 2E */ lwzx r11, r25, r12 +/* 801C7920 001C4880 7D 65 2B 78 */ or r5, r11, r5 +/* 801C7924 001C4884 7C B9 61 2E */ stwx r5, r25, r12 +/* 801C7928 001C4888 80 B9 00 8C */ lwz r5, 0x8c(r25) +/* 801C792C 001C488C 81 65 00 28 */ lwz r11, 0x28(r5) +/* 801C7930 001C4890 48 00 00 08 */ b lbl_801C7938 +lbl_801C7934: +/* 801C7934 001C4894 81 6C 00 28 */ lwz r11, 0x28(r12) +lbl_801C7938: +/* 801C7938 001C4898 7C 0B 50 40 */ cmplw r11, r10 +/* 801C793C 001C489C 41 82 00 1C */ beq lbl_801C7958 +/* 801C7940 001C48A0 81 8B 00 4C */ lwz r12, 0x4c(r11) +/* 801C7944 001C48A4 80 A3 00 4C */ lwz r5, 0x4c(r3) +/* 801C7948 001C48A8 C0 0C 00 14 */ lfs f0, 0x14(r12) +/* 801C794C 001C48AC C0 25 00 14 */ lfs f1, 0x14(r5) +/* 801C7950 001C48B0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C7954 001C48B4 41 81 FF E0 */ bgt lbl_801C7934 +lbl_801C7958: +/* 801C7958 001C48B8 80 AB 00 4C */ lwz r5, 0x4c(r11) +/* 801C795C 001C48BC 80 A5 00 24 */ lwz r5, 0x24(r5) +/* 801C7960 001C48C0 80 A5 00 4C */ lwz r5, 0x4c(r5) +/* 801C7964 001C48C4 90 65 00 28 */ stw r3, 0x28(r5) +/* 801C7968 001C48C8 81 4B 00 4C */ lwz r10, 0x4c(r11) +/* 801C796C 001C48CC 80 A3 00 4C */ lwz r5, 0x4c(r3) +/* 801C7970 001C48D0 81 4A 00 24 */ lwz r10, 0x24(r10) +/* 801C7974 001C48D4 91 45 00 24 */ stw r10, 0x24(r5) +/* 801C7978 001C48D8 80 AB 00 4C */ lwz r5, 0x4c(r11) +/* 801C797C 001C48DC 90 65 00 24 */ stw r3, 0x24(r5) +/* 801C7980 001C48E0 80 63 00 4C */ lwz r3, 0x4c(r3) +/* 801C7984 001C48E4 91 63 00 28 */ stw r11, 0x28(r3) +lbl_801C7988: +/* 801C7988 001C48E8 38 84 00 10 */ addi r4, r4, 0x10 +/* 801C798C 001C48EC 39 08 00 01 */ addi r8, r8, 1 +lbl_801C7990: +/* 801C7990 001C48F0 80 69 00 08 */ lwz r3, 8(r9) +/* 801C7994 001C48F4 7C 08 18 00 */ cmpw r8, r3 +/* 801C7998 001C48F8 41 80 FD 34 */ blt lbl_801C76CC +lbl_801C799C: +/* 801C799C 001C48FC 80 79 00 8C */ lwz r3, 0x8c(r25) +/* 801C79A0 001C4900 38 80 00 00 */ li r4, 0 +/* 801C79A4 001C4904 80 63 00 28 */ lwz r3, 0x28(r3) +/* 801C79A8 001C4908 7C 03 00 40 */ cmplw r3, r0 +/* 801C79AC 001C490C 41 82 00 6C */ beq lbl_801C7A18 +/* 801C79B0 001C4910 80 A3 00 24 */ lwz r5, 0x24(r3) +/* 801C79B4 001C4914 39 20 00 01 */ li r9, 1 +/* 801C79B8 001C4918 39 00 00 00 */ li r8, 0 +/* 801C79BC 001C491C 7C 64 1B 78 */ mr r4, r3 +/* 801C79C0 001C4920 7C AA 2E 70 */ srawi r10, r5, 5 +/* 801C79C4 001C4924 54 A5 06 FE */ clrlwi r5, r5, 0x1b +/* 801C79C8 001C4928 7D 4A 01 94 */ addze r10, r10 +/* 801C79CC 001C492C 55 4A 10 3A */ slwi r10, r10, 2 +/* 801C79D0 001C4930 7D 25 28 30 */ slw r5, r9, r5 +/* 801C79D4 001C4934 7D 39 50 2E */ lwzx r9, r25, r10 +/* 801C79D8 001C4938 7D 25 28 78 */ andc r5, r9, r5 +/* 801C79DC 001C493C 7C B9 51 2E */ stwx r5, r25, r10 +/* 801C79E0 001C4940 81 23 00 4C */ lwz r9, 0x4c(r3) +/* 801C79E4 001C4944 80 A9 00 28 */ lwz r5, 0x28(r9) +/* 801C79E8 001C4948 81 29 00 24 */ lwz r9, 0x24(r9) +/* 801C79EC 001C494C 80 A5 00 4C */ lwz r5, 0x4c(r5) +/* 801C79F0 001C4950 91 25 00 24 */ stw r9, 0x24(r5) +/* 801C79F4 001C4954 81 23 00 4C */ lwz r9, 0x4c(r3) +/* 801C79F8 001C4958 80 A9 00 24 */ lwz r5, 0x24(r9) +/* 801C79FC 001C495C 81 29 00 28 */ lwz r9, 0x28(r9) +/* 801C7A00 001C4960 80 A5 00 4C */ lwz r5, 0x4c(r5) +/* 801C7A04 001C4964 91 25 00 28 */ stw r9, 0x28(r5) +/* 801C7A08 001C4968 80 A3 00 4C */ lwz r5, 0x4c(r3) +/* 801C7A0C 001C496C 91 05 00 28 */ stw r8, 0x28(r5) +/* 801C7A10 001C4970 80 63 00 4C */ lwz r3, 0x4c(r3) +/* 801C7A14 001C4974 91 03 00 24 */ stw r8, 0x24(r3) +lbl_801C7A18: +/* 801C7A18 001C4978 28 04 00 00 */ cmplwi r4, 0 +/* 801C7A1C 001C497C 7C 89 23 78 */ mr r9, r4 +/* 801C7A20 001C4980 40 82 FC 50 */ bne lbl_801C7670 +lbl_801C7A24: +/* 801C7A24 001C4984 38 A0 00 00 */ li r5, 0 +/* 801C7A28 001C4988 48 00 00 2C */ b lbl_801C7A54 +lbl_801C7A2C: +/* 801C7A2C 001C498C 80 67 00 00 */ lwz r3, 0(r7) +/* 801C7A30 001C4990 38 E7 00 04 */ addi r7, r7, 4 +/* 801C7A34 001C4994 C0 06 00 00 */ lfs f0, 0(r6) +/* 801C7A38 001C4998 38 A5 00 01 */ addi r5, r5, 1 +/* 801C7A3C 001C499C C0 26 00 04 */ lfs f1, 4(r6) +/* 801C7A40 001C49A0 D0 03 00 28 */ stfs f0, 0x28(r3) +/* 801C7A44 001C49A4 C0 06 00 08 */ lfs f0, 8(r6) +/* 801C7A48 001C49A8 38 C6 00 0C */ addi r6, r6, 0xc +/* 801C7A4C 001C49AC D0 23 00 2C */ stfs f1, 0x2c(r3) +/* 801C7A50 001C49B0 D0 03 00 30 */ stfs f0, 0x30(r3) +lbl_801C7A54: +/* 801C7A54 001C49B4 80 1C 00 00 */ lwz r0, 0(r28) +/* 801C7A58 001C49B8 7C 05 00 00 */ cmpw r5, r0 +/* 801C7A5C 001C49BC 41 80 FF D0 */ blt lbl_801C7A2C +/* 801C7A60 001C49C0 38 A0 00 00 */ li r5, 0 +/* 801C7A64 001C49C4 48 00 00 2C */ b lbl_801C7A90 +lbl_801C7A68: +/* 801C7A68 001C49C8 80 78 00 00 */ lwz r3, 0(r24) +/* 801C7A6C 001C49CC 3B 18 00 04 */ addi r24, r24, 4 +/* 801C7A70 001C49D0 C0 1F 00 00 */ lfs f0, 0(r31) +/* 801C7A74 001C49D4 38 A5 00 01 */ addi r5, r5, 1 +/* 801C7A78 001C49D8 C0 3F 00 04 */ lfs f1, 4(r31) +/* 801C7A7C 001C49DC D0 03 00 28 */ stfs f0, 0x28(r3) +/* 801C7A80 001C49E0 C0 1F 00 08 */ lfs f0, 8(r31) +/* 801C7A84 001C49E4 3B FF 00 0C */ addi r31, r31, 0xc +/* 801C7A88 001C49E8 D0 23 00 2C */ stfs f1, 0x2c(r3) +/* 801C7A8C 001C49EC D0 03 00 30 */ stfs f0, 0x30(r3) +lbl_801C7A90: +/* 801C7A90 001C49F0 80 DD 00 00 */ lwz r6, 0(r29) +/* 801C7A94 001C49F4 7C 05 30 00 */ cmpw r5, r6 +/* 801C7A98 001C49F8 41 80 FF D0 */ blt lbl_801C7A68 +/* 801C7A9C 001C49FC 28 04 00 00 */ cmplwi r4, 0 +/* 801C7AA0 001C4A00 41 82 01 08 */ beq lbl_801C7BA8 +/* 801C7AA4 001C4A04 2C 06 00 00 */ cmpwi r6, 0 +/* 801C7AA8 001C4A08 38 60 00 00 */ li r3, 0 +/* 801C7AAC 001C4A0C 40 81 00 40 */ ble lbl_801C7AEC +/* 801C7AB0 001C4A10 2C 06 00 08 */ cmpwi r6, 8 +/* 801C7AB4 001C4A14 38 A6 FF F8 */ addi r5, r6, -8 +/* 801C7AB8 001C4A18 40 81 00 20 */ ble lbl_801C7AD8 +/* 801C7ABC 001C4A1C 38 05 00 07 */ addi r0, r5, 7 +/* 801C7AC0 001C4A20 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C7AC4 001C4A24 7C 09 03 A6 */ mtctr r0 +/* 801C7AC8 001C4A28 2C 05 00 00 */ cmpwi r5, 0 +/* 801C7ACC 001C4A2C 40 81 00 0C */ ble lbl_801C7AD8 +lbl_801C7AD0: +/* 801C7AD0 001C4A30 38 63 00 08 */ addi r3, r3, 8 +/* 801C7AD4 001C4A34 42 00 FF FC */ bdnz lbl_801C7AD0 +lbl_801C7AD8: +/* 801C7AD8 001C4A38 7C 03 30 50 */ subf r0, r3, r6 +/* 801C7ADC 001C4A3C 7C 09 03 A6 */ mtctr r0 +/* 801C7AE0 001C4A40 7C 03 30 00 */ cmpw r3, r6 +/* 801C7AE4 001C4A44 40 80 00 08 */ bge lbl_801C7AEC +lbl_801C7AE8: +/* 801C7AE8 001C4A48 42 00 00 00 */ bdnz lbl_801C7AE8 +lbl_801C7AEC: +/* 801C7AEC 001C4A4C 38 00 00 00 */ li r0, 0 +/* 801C7AF0 001C4A50 90 1D 00 00 */ stw r0, 0(r29) +/* 801C7AF4 001C4A54 80 1D 00 00 */ lwz r0, 0(r29) +/* 801C7AF8 001C4A58 54 00 10 3A */ slwi r0, r0, 2 +/* 801C7AFC 001C4A5C 7C 7D 02 14 */ add r3, r29, r0 +/* 801C7B00 001C4A60 34 63 00 04 */ addic. r3, r3, 4 +/* 801C7B04 001C4A64 41 82 00 08 */ beq lbl_801C7B0C +/* 801C7B08 001C4A68 90 83 00 00 */ stw r4, 0(r3) +lbl_801C7B0C: +/* 801C7B0C 001C4A6C 80 7D 00 00 */ lwz r3, 0(r29) +/* 801C7B10 001C4A70 38 03 00 01 */ addi r0, r3, 1 +/* 801C7B14 001C4A74 90 1D 00 00 */ stw r0, 0(r29) +/* 801C7B18 001C4A78 48 00 00 08 */ b lbl_801C7B20 +lbl_801C7B1C: +/* 801C7B1C 001C4A7C 81 23 00 20 */ lwz r9, 0x20(r3) +lbl_801C7B20: +/* 801C7B20 001C4A80 80 69 00 4C */ lwz r3, 0x4c(r9) +/* 801C7B24 001C4A84 80 03 00 20 */ lwz r0, 0x20(r3) +/* 801C7B28 001C4A88 28 00 00 00 */ cmplwi r0, 0 +/* 801C7B2C 001C4A8C 40 82 FF F0 */ bne lbl_801C7B1C +/* 801C7B30 001C4A90 80 BC 00 00 */ lwz r5, 0(r28) +/* 801C7B34 001C4A94 38 60 00 00 */ li r3, 0 +/* 801C7B38 001C4A98 2C 05 00 00 */ cmpwi r5, 0 +/* 801C7B3C 001C4A9C 40 81 00 40 */ ble lbl_801C7B7C +/* 801C7B40 001C4AA0 2C 05 00 08 */ cmpwi r5, 8 +/* 801C7B44 001C4AA4 38 85 FF F8 */ addi r4, r5, -8 +/* 801C7B48 001C4AA8 40 81 00 20 */ ble lbl_801C7B68 +/* 801C7B4C 001C4AAC 38 04 00 07 */ addi r0, r4, 7 +/* 801C7B50 001C4AB0 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C7B54 001C4AB4 7C 09 03 A6 */ mtctr r0 +/* 801C7B58 001C4AB8 2C 04 00 00 */ cmpwi r4, 0 +/* 801C7B5C 001C4ABC 40 81 00 0C */ ble lbl_801C7B68 +lbl_801C7B60: +/* 801C7B60 001C4AC0 38 63 00 08 */ addi r3, r3, 8 +/* 801C7B64 001C4AC4 42 00 FF FC */ bdnz lbl_801C7B60 +lbl_801C7B68: +/* 801C7B68 001C4AC8 7C 03 28 50 */ subf r0, r3, r5 +/* 801C7B6C 001C4ACC 7C 09 03 A6 */ mtctr r0 +/* 801C7B70 001C4AD0 7C 03 28 00 */ cmpw r3, r5 +/* 801C7B74 001C4AD4 40 80 00 08 */ bge lbl_801C7B7C +lbl_801C7B78: +/* 801C7B78 001C4AD8 42 00 00 00 */ bdnz lbl_801C7B78 +lbl_801C7B7C: +/* 801C7B7C 001C4ADC 38 00 00 00 */ li r0, 0 +/* 801C7B80 001C4AE0 90 1C 00 00 */ stw r0, 0(r28) +/* 801C7B84 001C4AE4 80 1C 00 00 */ lwz r0, 0(r28) +/* 801C7B88 001C4AE8 54 00 10 3A */ slwi r0, r0, 2 +/* 801C7B8C 001C4AEC 7C 7C 02 14 */ add r3, r28, r0 +/* 801C7B90 001C4AF0 34 63 00 04 */ addic. r3, r3, 4 +/* 801C7B94 001C4AF4 41 82 00 08 */ beq lbl_801C7B9C +/* 801C7B98 001C4AF8 91 23 00 00 */ stw r9, 0(r3) +lbl_801C7B9C: +/* 801C7B9C 001C4AFC 80 7C 00 00 */ lwz r3, 0(r28) +/* 801C7BA0 001C4B00 38 03 00 01 */ addi r0, r3, 1 +/* 801C7BA4 001C4B04 90 1C 00 00 */ stw r0, 0(r28) +lbl_801C7BA8: +/* 801C7BA8 001C4B08 80 C1 00 2C */ lwz r6, 0x2c(r1) +/* 801C7BAC 001C4B0C 7C 09 00 D0 */ neg r0, r9 +/* 801C7BB0 001C4B10 7C 00 4B 78 */ or r0, r0, r9 +/* 801C7BB4 001C4B14 38 80 00 00 */ li r4, 0 +/* 801C7BB8 001C4B18 2C 06 00 00 */ cmpwi r6, 0 +/* 801C7BBC 001C4B1C 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801C7BC0 001C4B20 40 81 00 40 */ ble lbl_801C7C00 +/* 801C7BC4 001C4B24 2C 06 00 08 */ cmpwi r6, 8 +/* 801C7BC8 001C4B28 38 A6 FF F8 */ addi r5, r6, -8 +/* 801C7BCC 001C4B2C 40 81 00 20 */ ble lbl_801C7BEC +/* 801C7BD0 001C4B30 38 05 00 07 */ addi r0, r5, 7 +/* 801C7BD4 001C4B34 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C7BD8 001C4B38 7C 09 03 A6 */ mtctr r0 +/* 801C7BDC 001C4B3C 2C 05 00 00 */ cmpwi r5, 0 +/* 801C7BE0 001C4B40 40 81 00 0C */ ble lbl_801C7BEC +lbl_801C7BE4: +/* 801C7BE4 001C4B44 38 84 00 08 */ addi r4, r4, 8 +/* 801C7BE8 001C4B48 42 00 FF FC */ bdnz lbl_801C7BE4 +lbl_801C7BEC: +/* 801C7BEC 001C4B4C 7C 04 30 50 */ subf r0, r4, r6 +/* 801C7BF0 001C4B50 7C 09 03 A6 */ mtctr r0 +/* 801C7BF4 001C4B54 7C 04 30 00 */ cmpw r4, r6 +/* 801C7BF8 001C4B58 40 80 00 08 */ bge lbl_801C7C00 +lbl_801C7BFC: +/* 801C7BFC 001C4B5C 42 00 00 00 */ bdnz lbl_801C7BFC +lbl_801C7C00: +/* 801C7C00 001C4B60 80 C1 00 60 */ lwz r6, 0x60(r1) +/* 801C7C04 001C4B64 38 80 00 00 */ li r4, 0 +/* 801C7C08 001C4B68 90 81 00 2C */ stw r4, 0x2c(r1) +/* 801C7C0C 001C4B6C 2C 06 00 00 */ cmpwi r6, 0 +/* 801C7C10 001C4B70 40 81 00 40 */ ble lbl_801C7C50 +/* 801C7C14 001C4B74 2C 06 00 08 */ cmpwi r6, 8 +/* 801C7C18 001C4B78 38 A6 FF F8 */ addi r5, r6, -8 +/* 801C7C1C 001C4B7C 40 81 00 20 */ ble lbl_801C7C3C +/* 801C7C20 001C4B80 38 05 00 07 */ addi r0, r5, 7 +/* 801C7C24 001C4B84 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C7C28 001C4B88 7C 09 03 A6 */ mtctr r0 +/* 801C7C2C 001C4B8C 2C 05 00 00 */ cmpwi r5, 0 +/* 801C7C30 001C4B90 40 81 00 0C */ ble lbl_801C7C3C +lbl_801C7C34: +/* 801C7C34 001C4B94 38 84 00 08 */ addi r4, r4, 8 +/* 801C7C38 001C4B98 42 00 FF FC */ bdnz lbl_801C7C34 +lbl_801C7C3C: +/* 801C7C3C 001C4B9C 7C 04 30 50 */ subf r0, r4, r6 +/* 801C7C40 001C4BA0 7C 09 03 A6 */ mtctr r0 +/* 801C7C44 001C4BA4 7C 04 30 00 */ cmpw r4, r6 +/* 801C7C48 001C4BA8 40 80 00 08 */ bge lbl_801C7C50 +lbl_801C7C4C: +/* 801C7C4C 001C4BAC 42 00 00 00 */ bdnz lbl_801C7C4C +lbl_801C7C50: +/* 801C7C50 001C4BB0 BA E1 00 9C */ lmw r23, 0x9c(r1) +/* 801C7C54 001C4BB4 38 00 00 00 */ li r0, 0 +/* 801C7C58 001C4BB8 90 01 00 60 */ stw r0, 0x60(r1) +/* 801C7C5C 001C4BBC 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 801C7C60 001C4BC0 7C 08 03 A6 */ mtlr r0 +/* 801C7C64 001C4BC4 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 801C7C68 001C4BC8 4E 80 00 20 */ blr + +.global Search__15CPathFindSearchFRC9CVector3fRC9CVector3f +Search__15CPathFindSearchFRC9CVector3fRC9CVector3f: +/* 801C7C6C 001C4BCC 94 21 FD A0 */ stwu r1, -0x260(r1) +/* 801C7C70 001C4BD0 7C 08 02 A6 */ mflr r0 +/* 801C7C74 001C4BD4 90 01 02 64 */ stw r0, 0x264(r1) +/* 801C7C78 001C4BD8 DB E1 02 50 */ stfd f31, 0x250(r1) +/* 801C7C7C 001C4BDC F3 E1 02 58 */ psq_st f31, 600(r1), 0, qr0 +/* 801C7C80 001C4BE0 DB C1 02 40 */ stfd f30, 0x240(r1) +/* 801C7C84 001C4BE4 F3 C1 02 48 */ psq_st f30, 584(r1), 0, qr0 +/* 801C7C88 001C4BE8 DB A1 02 30 */ stfd f29, 0x230(r1) +/* 801C7C8C 001C4BEC F3 A1 02 38 */ psq_st f29, 568(r1), 0, qr0 +/* 801C7C90 001C4BF0 DB 81 02 20 */ stfd f28, 0x220(r1) +/* 801C7C94 001C4BF4 F3 81 02 28 */ psq_st f28, 552(r1), 0, qr0 +/* 801C7C98 001C4BF8 BE 41 01 E8 */ stmw r18, 0x1e8(r1) +/* 801C7C9C 001C4BFC 7C 79 1B 78 */ mr r25, r3 +/* 801C7CA0 001C4C00 7C 93 23 78 */ mr r19, r4 +/* 801C7CA4 001C4C04 80 C3 00 04 */ lwz r6, 4(r3) +/* 801C7CA8 001C4C08 7C BA 2B 78 */ mr r26, r5 +/* 801C7CAC 001C4C0C 3B F9 00 08 */ addi r31, r25, 8 +/* 801C7CB0 001C4C10 3B C0 00 00 */ li r30, 0 +/* 801C7CB4 001C4C14 2C 06 00 00 */ cmpwi r6, 0 +/* 801C7CB8 001C4C18 3B A0 00 00 */ li r29, 0 +/* 801C7CBC 001C4C1C 38 60 00 00 */ li r3, 0 +/* 801C7CC0 001C4C20 40 81 00 40 */ ble lbl_801C7D00 +/* 801C7CC4 001C4C24 2C 06 00 08 */ cmpwi r6, 8 +/* 801C7CC8 001C4C28 38 86 FF F8 */ addi r4, r6, -8 +/* 801C7CCC 001C4C2C 40 81 00 20 */ ble lbl_801C7CEC +/* 801C7CD0 001C4C30 38 04 00 07 */ addi r0, r4, 7 +/* 801C7CD4 001C4C34 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C7CD8 001C4C38 7C 09 03 A6 */ mtctr r0 +/* 801C7CDC 001C4C3C 2C 04 00 00 */ cmpwi r4, 0 +/* 801C7CE0 001C4C40 40 81 00 0C */ ble lbl_801C7CEC +lbl_801C7CE4: +/* 801C7CE4 001C4C44 38 63 00 08 */ addi r3, r3, 8 +/* 801C7CE8 001C4C48 42 00 FF FC */ bdnz lbl_801C7CE4 +lbl_801C7CEC: +/* 801C7CEC 001C4C4C 7C 03 30 50 */ subf r0, r3, r6 +/* 801C7CF0 001C4C50 7C 09 03 A6 */ mtctr r0 +/* 801C7CF4 001C4C54 7C 03 30 00 */ cmpw r3, r6 +/* 801C7CF8 001C4C58 40 80 00 08 */ bge lbl_801C7D00 +lbl_801C7CFC: +/* 801C7CFC 001C4C5C 42 00 00 00 */ bdnz lbl_801C7CFC +lbl_801C7D00: +/* 801C7D00 001C4C60 38 00 00 00 */ li r0, 0 +/* 801C7D04 001C4C64 90 19 00 04 */ stw r0, 4(r25) +/* 801C7D08 001C4C68 90 19 00 C8 */ stw r0, 0xc8(r25) +/* 801C7D0C 001C4C6C 80 79 00 00 */ lwz r3, 0(r25) +/* 801C7D10 001C4C70 28 03 00 00 */ cmplwi r3, 0 +/* 801C7D14 001C4C74 40 82 00 14 */ bne lbl_801C7D28 +/* 801C7D18 001C4C78 38 00 00 01 */ li r0, 1 +/* 801C7D1C 001C4C7C 90 19 00 CC */ stw r0, 0xcc(r25) +/* 801C7D20 001C4C80 80 79 00 CC */ lwz r3, 0xcc(r25) +/* 801C7D24 001C4C84 48 00 10 3C */ b lbl_801C8D60 +lbl_801C7D28: +/* 801C7D28 001C4C88 80 03 01 50 */ lwz r0, 0x150(r3) +/* 801C7D2C 001C4C8C 2C 00 02 00 */ cmpwi r0, 0x200 +/* 801C7D30 001C4C90 40 81 00 14 */ ble lbl_801C7D44 +/* 801C7D34 001C4C94 38 00 00 01 */ li r0, 1 +/* 801C7D38 001C4C98 90 19 00 CC */ stw r0, 0xcc(r25) +/* 801C7D3C 001C4C9C 80 79 00 CC */ lwz r3, 0xcc(r25) +/* 801C7D40 001C4CA0 48 00 10 20 */ b lbl_801C8D60 +lbl_801C7D44: +/* 801C7D44 001C4CA4 C0 22 AB 30 */ lfs f1, lbl_805AC850@sda21(r2) +/* 801C7D48 001C4CA8 7E 63 9B 78 */ mr r3, r19 +/* 801C7D4C 001C4CAC 7F 44 D3 78 */ mr r4, r26 +/* 801C7D50 001C4CB0 48 14 82 15 */ bl close_enough__FRC9CVector3fRC9CVector3ff +/* 801C7D54 001C4CB4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C7D58 001C4CB8 41 82 00 48 */ beq lbl_801C7DA0 +/* 801C7D5C 001C4CBC 80 19 00 04 */ lwz r0, 4(r25) +/* 801C7D60 001C4CC0 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C7D64 001C4CC4 7C 7F 02 15 */ add. r3, r31, r0 +/* 801C7D68 001C4CC8 41 82 00 1C */ beq lbl_801C7D84 +/* 801C7D6C 001C4CCC C0 13 00 00 */ lfs f0, 0(r19) +/* 801C7D70 001C4CD0 D0 03 00 00 */ stfs f0, 0(r3) +/* 801C7D74 001C4CD4 C0 13 00 04 */ lfs f0, 4(r19) +/* 801C7D78 001C4CD8 D0 03 00 04 */ stfs f0, 4(r3) +/* 801C7D7C 001C4CDC C0 13 00 08 */ lfs f0, 8(r19) +/* 801C7D80 001C4CE0 D0 03 00 08 */ stfs f0, 8(r3) +lbl_801C7D84: +/* 801C7D84 001C4CE4 80 79 00 04 */ lwz r3, 4(r25) +/* 801C7D88 001C4CE8 38 00 00 00 */ li r0, 0 +/* 801C7D8C 001C4CEC 38 63 00 01 */ addi r3, r3, 1 +/* 801C7D90 001C4CF0 90 79 00 04 */ stw r3, 4(r25) +/* 801C7D94 001C4CF4 90 19 00 CC */ stw r0, 0xcc(r25) +/* 801C7D98 001C4CF8 80 79 00 CC */ lwz r3, 0xcc(r25) +/* 801C7D9C 001C4CFC 48 00 0F C4 */ b lbl_801C8D60 +lbl_801C7DA0: +/* 801C7DA0 001C4D00 80 99 00 00 */ lwz r4, 0(r25) +/* 801C7DA4 001C4D04 38 61 00 98 */ addi r3, r1, 0x98 +/* 801C7DA8 001C4D08 C0 93 00 08 */ lfs f4, 8(r19) +/* 801C7DAC 001C4D0C 38 A1 00 2C */ addi r5, r1, 0x2c +/* 801C7DB0 001C4D10 38 84 01 88 */ addi r4, r4, 0x188 +/* 801C7DB4 001C4D14 C0 73 00 04 */ lfs f3, 4(r19) +/* 801C7DB8 001C4D18 C0 04 00 2C */ lfs f0, 0x2c(r4) +/* 801C7DBC 001C4D1C C0 44 00 1C */ lfs f2, 0x1c(r4) +/* 801C7DC0 001C4D20 EC 84 00 28 */ fsubs f4, f4, f0 +/* 801C7DC4 001C4D24 C0 04 00 0C */ lfs f0, 0xc(r4) +/* 801C7DC8 001C4D28 C0 33 00 00 */ lfs f1, 0(r19) +/* 801C7DCC 001C4D2C EC 43 10 28 */ fsubs f2, f3, f2 +/* 801C7DD0 001C4D30 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801C7DD4 001C4D34 D0 81 00 34 */ stfs f4, 0x34(r1) +/* 801C7DD8 001C4D38 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 801C7DDC 001C4D3C D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801C7DE0 001C4D40 48 14 AC 45 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 801C7DE4 001C4D44 C0 41 00 98 */ lfs f2, 0x98(r1) +/* 801C7DE8 001C4D48 38 61 00 8C */ addi r3, r1, 0x8c +/* 801C7DEC 001C4D4C C0 21 00 9C */ lfs f1, 0x9c(r1) +/* 801C7DF0 001C4D50 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801C7DF4 001C4D54 C0 01 00 A0 */ lfs f0, 0xa0(r1) +/* 801C7DF8 001C4D58 D0 21 00 C0 */ stfs f1, 0xc0(r1) +/* 801C7DFC 001C4D5C C0 BA 00 08 */ lfs f5, 8(r26) +/* 801C7E00 001C4D60 D0 41 00 BC */ stfs f2, 0xbc(r1) +/* 801C7E04 001C4D64 C0 7A 00 04 */ lfs f3, 4(r26) +/* 801C7E08 001C4D68 D0 01 00 C4 */ stfs f0, 0xc4(r1) +/* 801C7E0C 001C4D6C C0 3A 00 00 */ lfs f1, 0(r26) +/* 801C7E10 001C4D70 80 99 00 00 */ lwz r4, 0(r25) +/* 801C7E14 001C4D74 38 84 01 88 */ addi r4, r4, 0x188 +/* 801C7E18 001C4D78 C0 84 00 2C */ lfs f4, 0x2c(r4) +/* 801C7E1C 001C4D7C C0 44 00 1C */ lfs f2, 0x1c(r4) +/* 801C7E20 001C4D80 C0 04 00 0C */ lfs f0, 0xc(r4) +/* 801C7E24 001C4D84 EC 85 20 28 */ fsubs f4, f5, f4 +/* 801C7E28 001C4D88 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801C7E2C 001C4D8C EC 01 00 28 */ fsubs f0, f1, f0 +/* 801C7E30 001C4D90 D0 81 00 28 */ stfs f4, 0x28(r1) +/* 801C7E34 001C4D94 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801C7E38 001C4D98 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 801C7E3C 001C4D9C 48 14 AB E9 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 801C7E40 001C4DA0 C0 41 00 8C */ lfs f2, 0x8c(r1) +/* 801C7E44 001C4DA4 C0 21 00 90 */ lfs f1, 0x90(r1) +/* 801C7E48 001C4DA8 C0 01 00 94 */ lfs f0, 0x94(r1) +/* 801C7E4C 001C4DAC D0 41 00 B0 */ stfs f2, 0xb0(r1) +/* 801C7E50 001C4DB0 D0 21 00 B4 */ stfs f1, 0xb4(r1) +/* 801C7E54 001C4DB4 D0 01 00 B8 */ stfs f0, 0xb8(r1) +/* 801C7E58 001C4DB8 80 79 00 DC */ lwz r3, 0xdc(r25) +/* 801C7E5C 001C4DBC 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e +/* 801C7E60 001C4DC0 40 82 00 24 */ bne lbl_801C7E84 +/* 801C7E64 001C4DC4 54 60 07 7B */ rlwinm. r0, r3, 0, 0x1d, 0x1d +/* 801C7E68 001C4DC8 40 82 00 1C */ bne lbl_801C7E84 +/* 801C7E6C 001C4DCC C0 22 AB 28 */ lfs f1, lbl_805AC848@sda21(r2) +/* 801C7E70 001C4DD0 C0 41 00 C4 */ lfs f2, 0xc4(r1) +/* 801C7E74 001C4DD4 EC 00 08 2A */ fadds f0, f0, f1 +/* 801C7E78 001C4DD8 EC 22 08 2A */ fadds f1, f2, f1 +/* 801C7E7C 001C4DDC D0 01 00 B8 */ stfs f0, 0xb8(r1) +/* 801C7E80 001C4DE0 D0 21 00 C4 */ stfs f1, 0xc4(r1) +lbl_801C7E84: +/* 801C7E84 001C4DE4 38 00 00 00 */ li r0, 0 +/* 801C7E88 001C4DE8 38 81 01 04 */ addi r4, r1, 0x104 +/* 801C7E8C 001C4DEC 90 01 01 18 */ stw r0, 0x118(r1) +/* 801C7E90 001C4DF0 38 A1 00 BC */ addi r5, r1, 0xbc +/* 801C7E94 001C4DF4 90 01 01 04 */ stw r0, 0x104(r1) +/* 801C7E98 001C4DF8 80 79 00 00 */ lwz r3, 0(r25) +/* 801C7E9C 001C4DFC 80 D9 00 DC */ lwz r6, 0xdc(r25) +/* 801C7EA0 001C4E00 80 F9 00 E0 */ lwz r7, 0xe0(r25) +/* 801C7EA4 001C4E04 48 00 2B A1 */ bl "FindRegions__7CPFAreaFRQ24rstl30reserved_vectorRC9CVector3fUiUi" +/* 801C7EA8 001C4E08 2C 03 00 00 */ cmpwi r3, 0 +/* 801C7EAC 001C4E0C 40 82 01 68 */ bne lbl_801C8014 +/* 801C7EB0 001C4E10 80 79 00 00 */ lwz r3, 0(r25) +/* 801C7EB4 001C4E14 38 81 00 BC */ addi r4, r1, 0xbc +/* 801C7EB8 001C4E18 80 B9 00 DC */ lwz r5, 0xdc(r25) +/* 801C7EBC 001C4E1C 80 D9 00 E0 */ lwz r6, 0xe0(r25) +/* 801C7EC0 001C4E20 C0 39 00 D8 */ lfs f1, 0xd8(r25) +/* 801C7EC4 001C4E24 48 00 28 D9 */ bl FindClosestRegion__7CPFAreaFRC9CVector3fUif +/* 801C7EC8 001C4E28 28 03 00 00 */ cmplwi r3, 0 +/* 801C7ECC 001C4E2C 40 82 00 B8 */ bne lbl_801C7F84 +/* 801C7ED0 001C4E30 38 00 00 02 */ li r0, 2 +/* 801C7ED4 001C4E34 38 80 00 00 */ li r4, 0 +/* 801C7ED8 001C4E38 90 19 00 CC */ stw r0, 0xcc(r25) +/* 801C7EDC 001C4E3C 80 C1 01 04 */ lwz r6, 0x104(r1) +/* 801C7EE0 001C4E40 80 79 00 CC */ lwz r3, 0xcc(r25) +/* 801C7EE4 001C4E44 2C 06 00 00 */ cmpwi r6, 0 +/* 801C7EE8 001C4E48 40 81 00 40 */ ble lbl_801C7F28 +/* 801C7EEC 001C4E4C 2C 06 00 08 */ cmpwi r6, 8 +/* 801C7EF0 001C4E50 38 A6 FF F8 */ addi r5, r6, -8 +/* 801C7EF4 001C4E54 40 81 00 20 */ ble lbl_801C7F14 +/* 801C7EF8 001C4E58 38 05 00 07 */ addi r0, r5, 7 +/* 801C7EFC 001C4E5C 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C7F00 001C4E60 7C 09 03 A6 */ mtctr r0 +/* 801C7F04 001C4E64 2C 05 00 00 */ cmpwi r5, 0 +/* 801C7F08 001C4E68 40 81 00 0C */ ble lbl_801C7F14 +lbl_801C7F0C: +/* 801C7F0C 001C4E6C 38 84 00 08 */ addi r4, r4, 8 +/* 801C7F10 001C4E70 42 00 FF FC */ bdnz lbl_801C7F0C +lbl_801C7F14: +/* 801C7F14 001C4E74 7C 04 30 50 */ subf r0, r4, r6 +/* 801C7F18 001C4E78 7C 09 03 A6 */ mtctr r0 +/* 801C7F1C 001C4E7C 7C 04 30 00 */ cmpw r4, r6 +/* 801C7F20 001C4E80 40 80 00 08 */ bge lbl_801C7F28 +lbl_801C7F24: +/* 801C7F24 001C4E84 42 00 00 00 */ bdnz lbl_801C7F24 +lbl_801C7F28: +/* 801C7F28 001C4E88 80 C1 01 18 */ lwz r6, 0x118(r1) +/* 801C7F2C 001C4E8C 38 80 00 00 */ li r4, 0 +/* 801C7F30 001C4E90 90 81 01 04 */ stw r4, 0x104(r1) +/* 801C7F34 001C4E94 2C 06 00 00 */ cmpwi r6, 0 +/* 801C7F38 001C4E98 40 81 00 40 */ ble lbl_801C7F78 +/* 801C7F3C 001C4E9C 2C 06 00 08 */ cmpwi r6, 8 +/* 801C7F40 001C4EA0 38 A6 FF F8 */ addi r5, r6, -8 +/* 801C7F44 001C4EA4 40 81 00 20 */ ble lbl_801C7F64 +/* 801C7F48 001C4EA8 38 05 00 07 */ addi r0, r5, 7 +/* 801C7F4C 001C4EAC 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C7F50 001C4EB0 7C 09 03 A6 */ mtctr r0 +/* 801C7F54 001C4EB4 2C 05 00 00 */ cmpwi r5, 0 +/* 801C7F58 001C4EB8 40 81 00 0C */ ble lbl_801C7F64 +lbl_801C7F5C: +/* 801C7F5C 001C4EBC 38 84 00 08 */ addi r4, r4, 8 +/* 801C7F60 001C4EC0 42 00 FF FC */ bdnz lbl_801C7F5C +lbl_801C7F64: +/* 801C7F64 001C4EC4 7C 04 30 50 */ subf r0, r4, r6 +/* 801C7F68 001C4EC8 7C 09 03 A6 */ mtctr r0 +/* 801C7F6C 001C4ECC 7C 04 30 00 */ cmpw r4, r6 +/* 801C7F70 001C4ED0 40 80 00 08 */ bge lbl_801C7F78 +lbl_801C7F74: +/* 801C7F74 001C4ED4 42 00 00 00 */ bdnz lbl_801C7F74 +lbl_801C7F78: +/* 801C7F78 001C4ED8 38 00 00 00 */ li r0, 0 +/* 801C7F7C 001C4EDC 90 01 01 18 */ stw r0, 0x118(r1) +/* 801C7F80 001C4EE0 48 00 0D E0 */ b lbl_801C8D60 +lbl_801C7F84: +/* 801C7F84 001C4EE4 80 99 00 DC */ lwz r4, 0xdc(r25) +/* 801C7F88 001C4EE8 54 80 07 BD */ rlwinm. r0, r4, 0, 0x1e, 0x1e +/* 801C7F8C 001C4EEC 40 82 00 0C */ bne lbl_801C7F98 +/* 801C7F90 001C4EF0 54 80 07 7B */ rlwinm. r0, r4, 0, 0x1d, 0x1d +/* 801C7F94 001C4EF4 41 82 00 40 */ beq lbl_801C7FD4 +lbl_801C7F98: +/* 801C7F98 001C4EF8 80 01 01 18 */ lwz r0, 0x118(r1) +/* 801C7F9C 001C4EFC 38 81 01 1C */ addi r4, r1, 0x11c +/* 801C7FA0 001C4F00 3B C0 00 01 */ li r30, 1 +/* 801C7FA4 001C4F04 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C7FA8 001C4F08 7C 84 02 15 */ add. r4, r4, r0 +/* 801C7FAC 001C4F0C 41 82 00 1C */ beq lbl_801C7FC8 +/* 801C7FB0 001C4F10 C0 01 00 BC */ lfs f0, 0xbc(r1) +/* 801C7FB4 001C4F14 C0 21 00 C0 */ lfs f1, 0xc0(r1) +/* 801C7FB8 001C4F18 D0 04 00 00 */ stfs f0, 0(r4) +/* 801C7FBC 001C4F1C C0 01 00 C4 */ lfs f0, 0xc4(r1) +/* 801C7FC0 001C4F20 D0 24 00 04 */ stfs f1, 4(r4) +/* 801C7FC4 001C4F24 D0 04 00 08 */ stfs f0, 8(r4) +lbl_801C7FC8: +/* 801C7FC8 001C4F28 80 81 01 18 */ lwz r4, 0x118(r1) +/* 801C7FCC 001C4F2C 38 04 00 01 */ addi r0, r4, 1 +/* 801C7FD0 001C4F30 90 01 01 18 */ stw r0, 0x118(r1) +lbl_801C7FD4: +/* 801C7FD4 001C4F34 80 01 01 04 */ lwz r0, 0x104(r1) +/* 801C7FD8 001C4F38 38 81 01 08 */ addi r4, r1, 0x108 +/* 801C7FDC 001C4F3C 54 00 10 3A */ slwi r0, r0, 2 +/* 801C7FE0 001C4F40 7C 84 02 15 */ add. r4, r4, r0 +/* 801C7FE4 001C4F44 41 82 00 08 */ beq lbl_801C7FEC +/* 801C7FE8 001C4F48 90 64 00 00 */ stw r3, 0(r4) +lbl_801C7FEC: +/* 801C7FEC 001C4F4C 80 61 01 04 */ lwz r3, 0x104(r1) +/* 801C7FF0 001C4F50 38 03 00 01 */ addi r0, r3, 1 +/* 801C7FF4 001C4F54 90 01 01 04 */ stw r0, 0x104(r1) +/* 801C7FF8 001C4F58 80 79 00 00 */ lwz r3, 0(r25) +/* 801C7FFC 001C4F5C C0 23 00 08 */ lfs f1, 8(r3) +/* 801C8000 001C4F60 C0 43 00 0C */ lfs f2, 0xc(r3) +/* 801C8004 001C4F64 C0 03 00 04 */ lfs f0, 4(r3) +/* 801C8008 001C4F68 D0 01 00 BC */ stfs f0, 0xbc(r1) +/* 801C800C 001C4F6C D0 21 00 C0 */ stfs f1, 0xc0(r1) +/* 801C8010 001C4F70 D0 41 00 C4 */ stfs f2, 0xc4(r1) +lbl_801C8014: +/* 801C8014 001C4F74 C0 41 00 B0 */ lfs f2, 0xb0(r1) +/* 801C8018 001C4F78 38 00 00 00 */ li r0, 0 +/* 801C801C 001C4F7C C0 21 00 B4 */ lfs f1, 0xb4(r1) +/* 801C8020 001C4F80 38 81 00 F0 */ addi r4, r1, 0xf0 +/* 801C8024 001C4F84 C0 01 00 B8 */ lfs f0, 0xb8(r1) +/* 801C8028 001C4F88 38 A1 00 B0 */ addi r5, r1, 0xb0 +/* 801C802C 001C4F8C D0 41 00 A4 */ stfs f2, 0xa4(r1) +/* 801C8030 001C4F90 D0 21 00 A8 */ stfs f1, 0xa8(r1) +/* 801C8034 001C4F94 D0 01 00 AC */ stfs f0, 0xac(r1) +/* 801C8038 001C4F98 90 01 00 F0 */ stw r0, 0xf0(r1) +/* 801C803C 001C4F9C 80 79 00 00 */ lwz r3, 0(r25) +/* 801C8040 001C4FA0 80 D9 00 DC */ lwz r6, 0xdc(r25) +/* 801C8044 001C4FA4 80 F9 00 E0 */ lwz r7, 0xe0(r25) +/* 801C8048 001C4FA8 48 00 29 FD */ bl "FindRegions__7CPFAreaFRQ24rstl30reserved_vectorRC9CVector3fUiUi" +/* 801C804C 001C4FAC 2C 03 00 00 */ cmpwi r3, 0 +/* 801C8050 001C4FB0 40 82 01 80 */ bne lbl_801C81D0 +/* 801C8054 001C4FB4 80 79 00 00 */ lwz r3, 0(r25) +/* 801C8058 001C4FB8 38 81 00 B0 */ addi r4, r1, 0xb0 +/* 801C805C 001C4FBC 80 B9 00 DC */ lwz r5, 0xdc(r25) +/* 801C8060 001C4FC0 80 D9 00 E0 */ lwz r6, 0xe0(r25) +/* 801C8064 001C4FC4 C0 39 00 D8 */ lfs f1, 0xd8(r25) +/* 801C8068 001C4FC8 48 00 27 35 */ bl FindClosestRegion__7CPFAreaFRC9CVector3fUif +/* 801C806C 001C4FCC 28 03 00 00 */ cmplwi r3, 0 +/* 801C8070 001C4FD0 40 82 01 08 */ bne lbl_801C8178 +/* 801C8074 001C4FD4 38 00 00 03 */ li r0, 3 +/* 801C8078 001C4FD8 38 80 00 00 */ li r4, 0 +/* 801C807C 001C4FDC 90 19 00 CC */ stw r0, 0xcc(r25) +/* 801C8080 001C4FE0 80 C1 00 F0 */ lwz r6, 0xf0(r1) +/* 801C8084 001C4FE4 80 79 00 CC */ lwz r3, 0xcc(r25) +/* 801C8088 001C4FE8 2C 06 00 00 */ cmpwi r6, 0 +/* 801C808C 001C4FEC 40 81 00 40 */ ble lbl_801C80CC +/* 801C8090 001C4FF0 2C 06 00 08 */ cmpwi r6, 8 +/* 801C8094 001C4FF4 38 A6 FF F8 */ addi r5, r6, -8 +/* 801C8098 001C4FF8 40 81 00 20 */ ble lbl_801C80B8 +/* 801C809C 001C4FFC 38 05 00 07 */ addi r0, r5, 7 +/* 801C80A0 001C5000 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C80A4 001C5004 7C 09 03 A6 */ mtctr r0 +/* 801C80A8 001C5008 2C 05 00 00 */ cmpwi r5, 0 +/* 801C80AC 001C500C 40 81 00 0C */ ble lbl_801C80B8 +lbl_801C80B0: +/* 801C80B0 001C5010 38 84 00 08 */ addi r4, r4, 8 +/* 801C80B4 001C5014 42 00 FF FC */ bdnz lbl_801C80B0 +lbl_801C80B8: +/* 801C80B8 001C5018 7C 04 30 50 */ subf r0, r4, r6 +/* 801C80BC 001C501C 7C 09 03 A6 */ mtctr r0 +/* 801C80C0 001C5020 7C 04 30 00 */ cmpw r4, r6 +/* 801C80C4 001C5024 40 80 00 08 */ bge lbl_801C80CC +lbl_801C80C8: +/* 801C80C8 001C5028 42 00 00 00 */ bdnz lbl_801C80C8 +lbl_801C80CC: +/* 801C80CC 001C502C 80 C1 01 04 */ lwz r6, 0x104(r1) +/* 801C80D0 001C5030 38 80 00 00 */ li r4, 0 +/* 801C80D4 001C5034 90 81 00 F0 */ stw r4, 0xf0(r1) +/* 801C80D8 001C5038 2C 06 00 00 */ cmpwi r6, 0 +/* 801C80DC 001C503C 40 81 00 40 */ ble lbl_801C811C +/* 801C80E0 001C5040 2C 06 00 08 */ cmpwi r6, 8 +/* 801C80E4 001C5044 38 A6 FF F8 */ addi r5, r6, -8 +/* 801C80E8 001C5048 40 81 00 20 */ ble lbl_801C8108 +/* 801C80EC 001C504C 38 05 00 07 */ addi r0, r5, 7 +/* 801C80F0 001C5050 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C80F4 001C5054 7C 09 03 A6 */ mtctr r0 +/* 801C80F8 001C5058 2C 05 00 00 */ cmpwi r5, 0 +/* 801C80FC 001C505C 40 81 00 0C */ ble lbl_801C8108 +lbl_801C8100: +/* 801C8100 001C5060 38 84 00 08 */ addi r4, r4, 8 +/* 801C8104 001C5064 42 00 FF FC */ bdnz lbl_801C8100 +lbl_801C8108: +/* 801C8108 001C5068 7C 04 30 50 */ subf r0, r4, r6 +/* 801C810C 001C506C 7C 09 03 A6 */ mtctr r0 +/* 801C8110 001C5070 7C 04 30 00 */ cmpw r4, r6 +/* 801C8114 001C5074 40 80 00 08 */ bge lbl_801C811C +lbl_801C8118: +/* 801C8118 001C5078 42 00 00 00 */ bdnz lbl_801C8118 +lbl_801C811C: +/* 801C811C 001C507C 80 C1 01 18 */ lwz r6, 0x118(r1) +/* 801C8120 001C5080 38 80 00 00 */ li r4, 0 +/* 801C8124 001C5084 90 81 01 04 */ stw r4, 0x104(r1) +/* 801C8128 001C5088 2C 06 00 00 */ cmpwi r6, 0 +/* 801C812C 001C508C 40 81 00 40 */ ble lbl_801C816C +/* 801C8130 001C5090 2C 06 00 08 */ cmpwi r6, 8 +/* 801C8134 001C5094 38 A6 FF F8 */ addi r5, r6, -8 +/* 801C8138 001C5098 40 81 00 20 */ ble lbl_801C8158 +/* 801C813C 001C509C 38 05 00 07 */ addi r0, r5, 7 +/* 801C8140 001C50A0 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C8144 001C50A4 7C 09 03 A6 */ mtctr r0 +/* 801C8148 001C50A8 2C 05 00 00 */ cmpwi r5, 0 +/* 801C814C 001C50AC 40 81 00 0C */ ble lbl_801C8158 +lbl_801C8150: +/* 801C8150 001C50B0 38 84 00 08 */ addi r4, r4, 8 +/* 801C8154 001C50B4 42 00 FF FC */ bdnz lbl_801C8150 +lbl_801C8158: +/* 801C8158 001C50B8 7C 04 30 50 */ subf r0, r4, r6 +/* 801C815C 001C50BC 7C 09 03 A6 */ mtctr r0 +/* 801C8160 001C50C0 7C 04 30 00 */ cmpw r4, r6 +/* 801C8164 001C50C4 40 80 00 08 */ bge lbl_801C816C +lbl_801C8168: +/* 801C8168 001C50C8 42 00 00 00 */ bdnz lbl_801C8168 +lbl_801C816C: +/* 801C816C 001C50CC 38 00 00 00 */ li r0, 0 +/* 801C8170 001C50D0 90 01 01 18 */ stw r0, 0x118(r1) +/* 801C8174 001C50D4 48 00 0B EC */ b lbl_801C8D60 +lbl_801C8178: +/* 801C8178 001C50D8 80 99 00 DC */ lwz r4, 0xdc(r25) +/* 801C817C 001C50DC 54 80 07 BD */ rlwinm. r0, r4, 0, 0x1e, 0x1e +/* 801C8180 001C50E0 40 82 00 0C */ bne lbl_801C818C +/* 801C8184 001C50E4 54 80 07 7B */ rlwinm. r0, r4, 0, 0x1d, 0x1d +/* 801C8188 001C50E8 41 82 00 08 */ beq lbl_801C8190 +lbl_801C818C: +/* 801C818C 001C50EC 3B A0 00 01 */ li r29, 1 +lbl_801C8190: +/* 801C8190 001C50F0 80 01 00 F0 */ lwz r0, 0xf0(r1) +/* 801C8194 001C50F4 38 81 00 F4 */ addi r4, r1, 0xf4 +/* 801C8198 001C50F8 54 00 10 3A */ slwi r0, r0, 2 +/* 801C819C 001C50FC 7C 84 02 15 */ add. r4, r4, r0 +/* 801C81A0 001C5100 41 82 00 08 */ beq lbl_801C81A8 +/* 801C81A4 001C5104 90 64 00 00 */ stw r3, 0(r4) +lbl_801C81A8: +/* 801C81A8 001C5108 80 61 00 F0 */ lwz r3, 0xf0(r1) +/* 801C81AC 001C510C 38 03 00 01 */ addi r0, r3, 1 +/* 801C81B0 001C5110 90 01 00 F0 */ stw r0, 0xf0(r1) +/* 801C81B4 001C5114 80 79 00 00 */ lwz r3, 0(r25) +/* 801C81B8 001C5118 C0 23 00 08 */ lfs f1, 8(r3) +/* 801C81BC 001C511C C0 43 00 0C */ lfs f2, 0xc(r3) +/* 801C81C0 001C5120 C0 03 00 04 */ lfs f0, 4(r3) +/* 801C81C4 001C5124 D0 01 00 B0 */ stfs f0, 0xb0(r1) +/* 801C81C8 001C5128 D0 21 00 B4 */ stfs f1, 0xb4(r1) +/* 801C81CC 001C512C D0 41 00 B8 */ stfs f2, 0xb8(r1) +lbl_801C81D0: +/* 801C81D0 001C5130 38 00 00 00 */ li r0, 0 +/* 801C81D4 001C5134 3A E1 00 F4 */ addi r23, r1, 0xf4 +/* 801C81D8 001C5138 90 01 00 DC */ stw r0, 0xdc(r1) +/* 801C81DC 001C513C 3B 61 01 08 */ addi r27, r1, 0x108 +/* 801C81E0 001C5140 3A C1 00 E0 */ addi r22, r1, 0xe0 +/* 801C81E4 001C5144 3B 81 00 CC */ addi r28, r1, 0xcc +/* 801C81E8 001C5148 90 01 00 C8 */ stw r0, 0xc8(r1) +/* 801C81EC 001C514C 3A 60 00 01 */ li r19, 1 +/* 801C81F0 001C5150 3A 80 00 00 */ li r20, 0 +/* 801C81F4 001C5154 48 00 03 E0 */ b lbl_801C85D4 +lbl_801C81F8: +/* 801C81F8 001C5158 7E F8 BB 78 */ mr r24, r23 +/* 801C81FC 001C515C 3A A0 00 00 */ li r21, 0 +/* 801C8200 001C5160 48 00 03 C0 */ b lbl_801C85C0 +lbl_801C8204: +/* 801C8204 001C5164 80 9B 00 00 */ lwz r4, 0(r27) +/* 801C8208 001C5168 80 B8 00 00 */ lwz r5, 0(r24) +/* 801C820C 001C516C 7C 04 28 40 */ cmplw r4, r5 +/* 801C8210 001C5170 40 82 02 E0 */ bne lbl_801C84F0 +/* 801C8214 001C5174 80 79 00 DC */ lwz r3, 0xdc(r25) +/* 801C8218 001C5178 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e +/* 801C821C 001C517C 40 82 00 28 */ bne lbl_801C8244 +/* 801C8220 001C5180 54 60 07 7B */ rlwinm. r0, r3, 0, 0x1d, 0x1d +/* 801C8224 001C5184 40 82 00 20 */ bne lbl_801C8244 +/* 801C8228 001C5188 56 B2 10 3A */ slwi r18, r21, 2 +/* 801C822C 001C518C 38 81 00 BC */ addi r4, r1, 0xbc +/* 801C8230 001C5190 7C 77 90 2E */ lwzx r3, r23, r18 +/* 801C8234 001C5194 48 00 12 C9 */ bl DropToGround__9CPFRegionCFR9CVector3f +/* 801C8238 001C5198 7C 77 90 2E */ lwzx r3, r23, r18 +/* 801C823C 001C519C 38 81 00 B0 */ addi r4, r1, 0xb0 +/* 801C8240 001C51A0 48 00 12 BD */ bl DropToGround__9CPFRegionCFR9CVector3f +lbl_801C8244: +/* 801C8244 001C51A4 80 99 00 00 */ lwz r4, 0(r25) +/* 801C8248 001C51A8 38 61 00 80 */ addi r3, r1, 0x80 +/* 801C824C 001C51AC 38 A1 00 BC */ addi r5, r1, 0xbc +/* 801C8250 001C51B0 3A 44 01 88 */ addi r18, r4, 0x188 +/* 801C8254 001C51B4 7E 44 93 78 */ mr r4, r18 +/* 801C8258 001C51B8 48 14 A8 91 */ bl __ml__12CTransform4fCFRC9CVector3f +/* 801C825C 001C51BC 80 19 00 04 */ lwz r0, 4(r25) +/* 801C8260 001C51C0 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C8264 001C51C4 7C 7F 02 15 */ add. r3, r31, r0 +/* 801C8268 001C51C8 41 82 00 1C */ beq lbl_801C8284 +/* 801C826C 001C51CC C0 01 00 80 */ lfs f0, 0x80(r1) +/* 801C8270 001C51D0 D0 03 00 00 */ stfs f0, 0(r3) +/* 801C8274 001C51D4 C0 01 00 84 */ lfs f0, 0x84(r1) +/* 801C8278 001C51D8 D0 03 00 04 */ stfs f0, 4(r3) +/* 801C827C 001C51DC C0 01 00 88 */ lfs f0, 0x88(r1) +/* 801C8280 001C51E0 D0 03 00 08 */ stfs f0, 8(r3) +lbl_801C8284: +/* 801C8284 001C51E4 80 B9 00 04 */ lwz r5, 4(r25) +/* 801C8288 001C51E8 38 61 00 BC */ addi r3, r1, 0xbc +/* 801C828C 001C51EC C0 22 AB 30 */ lfs f1, lbl_805AC850@sda21(r2) +/* 801C8290 001C51F0 38 81 00 B0 */ addi r4, r1, 0xb0 +/* 801C8294 001C51F4 38 05 00 01 */ addi r0, r5, 1 +/* 801C8298 001C51F8 90 19 00 04 */ stw r0, 4(r25) +/* 801C829C 001C51FC 48 14 7C C9 */ bl close_enough__FRC9CVector3fRC9CVector3ff +/* 801C82A0 001C5200 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C82A4 001C5204 40 82 00 48 */ bne lbl_801C82EC +/* 801C82A8 001C5208 7E 44 93 78 */ mr r4, r18 +/* 801C82AC 001C520C 38 61 00 74 */ addi r3, r1, 0x74 +/* 801C82B0 001C5210 38 A1 00 B0 */ addi r5, r1, 0xb0 +/* 801C82B4 001C5214 48 14 A8 35 */ bl __ml__12CTransform4fCFRC9CVector3f +/* 801C82B8 001C5218 80 19 00 04 */ lwz r0, 4(r25) +/* 801C82BC 001C521C 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C82C0 001C5220 7C 7F 02 15 */ add. r3, r31, r0 +/* 801C82C4 001C5224 41 82 00 1C */ beq lbl_801C82E0 +/* 801C82C8 001C5228 C0 01 00 74 */ lfs f0, 0x74(r1) +/* 801C82CC 001C522C D0 03 00 00 */ stfs f0, 0(r3) +/* 801C82D0 001C5230 C0 01 00 78 */ lfs f0, 0x78(r1) +/* 801C82D4 001C5234 D0 03 00 04 */ stfs f0, 4(r3) +/* 801C82D8 001C5238 C0 01 00 7C */ lfs f0, 0x7c(r1) +/* 801C82DC 001C523C D0 03 00 08 */ stfs f0, 8(r3) +lbl_801C82E0: +/* 801C82E0 001C5240 80 79 00 04 */ lwz r3, 4(r25) +/* 801C82E4 001C5244 38 03 00 01 */ addi r0, r3, 1 +/* 801C82E8 001C5248 90 19 00 04 */ stw r0, 4(r25) +lbl_801C82EC: +/* 801C82EC 001C524C 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 801C82F0 001C5250 41 82 00 60 */ beq lbl_801C8350 +/* 801C82F4 001C5254 C0 22 AB 30 */ lfs f1, lbl_805AC850@sda21(r2) +/* 801C82F8 001C5258 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 801C82FC 001C525C 38 81 00 A4 */ addi r4, r1, 0xa4 +/* 801C8300 001C5260 48 14 7C 65 */ bl close_enough__FRC9CVector3fRC9CVector3ff +/* 801C8304 001C5264 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C8308 001C5268 40 82 00 48 */ bne lbl_801C8350 +/* 801C830C 001C526C 7E 44 93 78 */ mr r4, r18 +/* 801C8310 001C5270 38 61 00 68 */ addi r3, r1, 0x68 +/* 801C8314 001C5274 38 A1 00 A4 */ addi r5, r1, 0xa4 +/* 801C8318 001C5278 48 14 A7 D1 */ bl __ml__12CTransform4fCFRC9CVector3f +/* 801C831C 001C527C 80 19 00 04 */ lwz r0, 4(r25) +/* 801C8320 001C5280 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C8324 001C5284 7C 7F 02 15 */ add. r3, r31, r0 +/* 801C8328 001C5288 41 82 00 1C */ beq lbl_801C8344 +/* 801C832C 001C528C C0 01 00 68 */ lfs f0, 0x68(r1) +/* 801C8330 001C5290 D0 03 00 00 */ stfs f0, 0(r3) +/* 801C8334 001C5294 C0 01 00 6C */ lfs f0, 0x6c(r1) +/* 801C8338 001C5298 D0 03 00 04 */ stfs f0, 4(r3) +/* 801C833C 001C529C C0 01 00 70 */ lfs f0, 0x70(r1) +/* 801C8340 001C52A0 D0 03 00 08 */ stfs f0, 8(r3) +lbl_801C8344: +/* 801C8344 001C52A4 80 79 00 04 */ lwz r3, 4(r25) +/* 801C8348 001C52A8 38 03 00 01 */ addi r0, r3, 1 +/* 801C834C 001C52AC 90 19 00 04 */ stw r0, 4(r25) +lbl_801C8350: +/* 801C8350 001C52B0 38 80 00 00 */ li r4, 0 +/* 801C8354 001C52B4 90 99 00 CC */ stw r4, 0xcc(r25) +/* 801C8358 001C52B8 80 C1 00 C8 */ lwz r6, 0xc8(r1) +/* 801C835C 001C52BC 80 79 00 CC */ lwz r3, 0xcc(r25) +/* 801C8360 001C52C0 2C 06 00 00 */ cmpwi r6, 0 +/* 801C8364 001C52C4 40 81 00 40 */ ble lbl_801C83A4 +/* 801C8368 001C52C8 2C 06 00 08 */ cmpwi r6, 8 +/* 801C836C 001C52CC 38 A6 FF F8 */ addi r5, r6, -8 +/* 801C8370 001C52D0 40 81 00 20 */ ble lbl_801C8390 +/* 801C8374 001C52D4 38 05 00 07 */ addi r0, r5, 7 +/* 801C8378 001C52D8 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C837C 001C52DC 7C 09 03 A6 */ mtctr r0 +/* 801C8380 001C52E0 2C 05 00 00 */ cmpwi r5, 0 +/* 801C8384 001C52E4 40 81 00 0C */ ble lbl_801C8390 +lbl_801C8388: +/* 801C8388 001C52E8 38 84 00 08 */ addi r4, r4, 8 +/* 801C838C 001C52EC 42 00 FF FC */ bdnz lbl_801C8388 +lbl_801C8390: +/* 801C8390 001C52F0 7C 04 30 50 */ subf r0, r4, r6 +/* 801C8394 001C52F4 7C 09 03 A6 */ mtctr r0 +/* 801C8398 001C52F8 7C 04 30 00 */ cmpw r4, r6 +/* 801C839C 001C52FC 40 80 00 08 */ bge lbl_801C83A4 +lbl_801C83A0: +/* 801C83A0 001C5300 42 00 00 00 */ bdnz lbl_801C83A0 +lbl_801C83A4: +/* 801C83A4 001C5304 80 C1 00 DC */ lwz r6, 0xdc(r1) +/* 801C83A8 001C5308 38 80 00 00 */ li r4, 0 +/* 801C83AC 001C530C 90 81 00 C8 */ stw r4, 0xc8(r1) +/* 801C83B0 001C5310 2C 06 00 00 */ cmpwi r6, 0 +/* 801C83B4 001C5314 40 81 00 40 */ ble lbl_801C83F4 +/* 801C83B8 001C5318 2C 06 00 08 */ cmpwi r6, 8 +/* 801C83BC 001C531C 38 A6 FF F8 */ addi r5, r6, -8 +/* 801C83C0 001C5320 40 81 00 20 */ ble lbl_801C83E0 +/* 801C83C4 001C5324 38 05 00 07 */ addi r0, r5, 7 +/* 801C83C8 001C5328 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C83CC 001C532C 7C 09 03 A6 */ mtctr r0 +/* 801C83D0 001C5330 2C 05 00 00 */ cmpwi r5, 0 +/* 801C83D4 001C5334 40 81 00 0C */ ble lbl_801C83E0 +lbl_801C83D8: +/* 801C83D8 001C5338 38 84 00 08 */ addi r4, r4, 8 +/* 801C83DC 001C533C 42 00 FF FC */ bdnz lbl_801C83D8 +lbl_801C83E0: +/* 801C83E0 001C5340 7C 04 30 50 */ subf r0, r4, r6 +/* 801C83E4 001C5344 7C 09 03 A6 */ mtctr r0 +/* 801C83E8 001C5348 7C 04 30 00 */ cmpw r4, r6 +/* 801C83EC 001C534C 40 80 00 08 */ bge lbl_801C83F4 +lbl_801C83F0: +/* 801C83F0 001C5350 42 00 00 00 */ bdnz lbl_801C83F0 +lbl_801C83F4: +/* 801C83F4 001C5354 80 C1 00 F0 */ lwz r6, 0xf0(r1) +/* 801C83F8 001C5358 38 80 00 00 */ li r4, 0 +/* 801C83FC 001C535C 90 81 00 DC */ stw r4, 0xdc(r1) +/* 801C8400 001C5360 2C 06 00 00 */ cmpwi r6, 0 +/* 801C8404 001C5364 40 81 00 40 */ ble lbl_801C8444 +/* 801C8408 001C5368 2C 06 00 08 */ cmpwi r6, 8 +/* 801C840C 001C536C 38 A6 FF F8 */ addi r5, r6, -8 +/* 801C8410 001C5370 40 81 00 20 */ ble lbl_801C8430 +/* 801C8414 001C5374 38 05 00 07 */ addi r0, r5, 7 +/* 801C8418 001C5378 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C841C 001C537C 7C 09 03 A6 */ mtctr r0 +/* 801C8420 001C5380 2C 05 00 00 */ cmpwi r5, 0 +/* 801C8424 001C5384 40 81 00 0C */ ble lbl_801C8430 +lbl_801C8428: +/* 801C8428 001C5388 38 84 00 08 */ addi r4, r4, 8 +/* 801C842C 001C538C 42 00 FF FC */ bdnz lbl_801C8428 +lbl_801C8430: +/* 801C8430 001C5390 7C 04 30 50 */ subf r0, r4, r6 +/* 801C8434 001C5394 7C 09 03 A6 */ mtctr r0 +/* 801C8438 001C5398 7C 04 30 00 */ cmpw r4, r6 +/* 801C843C 001C539C 40 80 00 08 */ bge lbl_801C8444 +lbl_801C8440: +/* 801C8440 001C53A0 42 00 00 00 */ bdnz lbl_801C8440 +lbl_801C8444: +/* 801C8444 001C53A4 80 C1 01 04 */ lwz r6, 0x104(r1) +/* 801C8448 001C53A8 38 80 00 00 */ li r4, 0 +/* 801C844C 001C53AC 90 81 00 F0 */ stw r4, 0xf0(r1) +/* 801C8450 001C53B0 2C 06 00 00 */ cmpwi r6, 0 +/* 801C8454 001C53B4 40 81 00 40 */ ble lbl_801C8494 +/* 801C8458 001C53B8 2C 06 00 08 */ cmpwi r6, 8 +/* 801C845C 001C53BC 38 A6 FF F8 */ addi r5, r6, -8 +/* 801C8460 001C53C0 40 81 00 20 */ ble lbl_801C8480 +/* 801C8464 001C53C4 38 05 00 07 */ addi r0, r5, 7 +/* 801C8468 001C53C8 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C846C 001C53CC 7C 09 03 A6 */ mtctr r0 +/* 801C8470 001C53D0 2C 05 00 00 */ cmpwi r5, 0 +/* 801C8474 001C53D4 40 81 00 0C */ ble lbl_801C8480 +lbl_801C8478: +/* 801C8478 001C53D8 38 84 00 08 */ addi r4, r4, 8 +/* 801C847C 001C53DC 42 00 FF FC */ bdnz lbl_801C8478 +lbl_801C8480: +/* 801C8480 001C53E0 7C 04 30 50 */ subf r0, r4, r6 +/* 801C8484 001C53E4 7C 09 03 A6 */ mtctr r0 +/* 801C8488 001C53E8 7C 04 30 00 */ cmpw r4, r6 +/* 801C848C 001C53EC 40 80 00 08 */ bge lbl_801C8494 +lbl_801C8490: +/* 801C8490 001C53F0 42 00 00 00 */ bdnz lbl_801C8490 +lbl_801C8494: +/* 801C8494 001C53F4 80 C1 01 18 */ lwz r6, 0x118(r1) +/* 801C8498 001C53F8 38 80 00 00 */ li r4, 0 +/* 801C849C 001C53FC 90 81 01 04 */ stw r4, 0x104(r1) +/* 801C84A0 001C5400 2C 06 00 00 */ cmpwi r6, 0 +/* 801C84A4 001C5404 40 81 00 40 */ ble lbl_801C84E4 +/* 801C84A8 001C5408 2C 06 00 08 */ cmpwi r6, 8 +/* 801C84AC 001C540C 38 A6 FF F8 */ addi r5, r6, -8 +/* 801C84B0 001C5410 40 81 00 20 */ ble lbl_801C84D0 +/* 801C84B4 001C5414 38 05 00 07 */ addi r0, r5, 7 +/* 801C84B8 001C5418 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C84BC 001C541C 7C 09 03 A6 */ mtctr r0 +/* 801C84C0 001C5420 2C 05 00 00 */ cmpwi r5, 0 +/* 801C84C4 001C5424 40 81 00 0C */ ble lbl_801C84D0 +lbl_801C84C8: +/* 801C84C8 001C5428 38 84 00 08 */ addi r4, r4, 8 +/* 801C84CC 001C542C 42 00 FF FC */ bdnz lbl_801C84C8 +lbl_801C84D0: +/* 801C84D0 001C5430 7C 04 30 50 */ subf r0, r4, r6 +/* 801C84D4 001C5434 7C 09 03 A6 */ mtctr r0 +/* 801C84D8 001C5438 7C 04 30 00 */ cmpw r4, r6 +/* 801C84DC 001C543C 40 80 00 08 */ bge lbl_801C84E4 +lbl_801C84E0: +/* 801C84E0 001C5440 42 00 00 00 */ bdnz lbl_801C84E0 +lbl_801C84E4: +/* 801C84E4 001C5444 38 00 00 00 */ li r0, 0 +/* 801C84E8 001C5448 90 01 01 18 */ stw r0, 0x118(r1) +/* 801C84EC 001C544C 48 00 08 74 */ b lbl_801C8D60 +lbl_801C84F0: +/* 801C84F0 001C5450 80 79 00 00 */ lwz r3, 0(r25) +/* 801C84F4 001C5454 80 D9 00 DC */ lwz r6, 0xdc(r25) +/* 801C84F8 001C5458 48 00 20 35 */ bl PathExists__7CPFAreaCFPC9CPFRegionPC9CPFRegionUi +/* 801C84FC 001C545C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C8500 001C5460 41 82 00 B8 */ beq lbl_801C85B8 +/* 801C8504 001C5464 80 A1 00 DC */ lwz r5, 0xdc(r1) +/* 801C8508 001C5468 54 A0 10 3A */ slwi r0, r5, 2 +/* 801C850C 001C546C 7C A6 2B 78 */ mr r6, r5 +/* 801C8510 001C5470 7C 96 02 14 */ add r4, r22, r0 +/* 801C8514 001C5474 48 00 00 14 */ b lbl_801C8528 +lbl_801C8518: +/* 801C8518 001C5478 80 64 00 00 */ lwz r3, 0(r4) +/* 801C851C 001C547C 80 1B 00 00 */ lwz r0, 0(r27) +/* 801C8520 001C5480 7C 03 00 40 */ cmplw r3, r0 +/* 801C8524 001C5484 41 82 00 10 */ beq lbl_801C8534 +lbl_801C8528: +/* 801C8528 001C5488 34 C6 FF FF */ addic. r6, r6, -1 +/* 801C852C 001C548C 38 84 FF FC */ addi r4, r4, -4 +/* 801C8530 001C5490 40 80 FF E8 */ bge lbl_801C8518 +lbl_801C8534: +/* 801C8534 001C5494 2C 06 00 00 */ cmpwi r6, 0 +/* 801C8538 001C5498 40 80 00 24 */ bge lbl_801C855C +/* 801C853C 001C549C 54 A0 10 3A */ slwi r0, r5, 2 +/* 801C8540 001C54A0 7C 76 02 15 */ add. r3, r22, r0 +/* 801C8544 001C54A4 41 82 00 0C */ beq lbl_801C8550 +/* 801C8548 001C54A8 80 1B 00 00 */ lwz r0, 0(r27) +/* 801C854C 001C54AC 90 03 00 00 */ stw r0, 0(r3) +lbl_801C8550: +/* 801C8550 001C54B0 80 61 00 DC */ lwz r3, 0xdc(r1) +/* 801C8554 001C54B4 38 03 00 01 */ addi r0, r3, 1 +/* 801C8558 001C54B8 90 01 00 DC */ stw r0, 0xdc(r1) +lbl_801C855C: +/* 801C855C 001C54BC 80 A1 00 C8 */ lwz r5, 0xc8(r1) +/* 801C8560 001C54C0 54 A0 10 3A */ slwi r0, r5, 2 +/* 801C8564 001C54C4 7C A6 2B 78 */ mr r6, r5 +/* 801C8568 001C54C8 7C 9C 02 14 */ add r4, r28, r0 +/* 801C856C 001C54CC 48 00 00 14 */ b lbl_801C8580 +lbl_801C8570: +/* 801C8570 001C54D0 80 64 00 00 */ lwz r3, 0(r4) +/* 801C8574 001C54D4 80 18 00 00 */ lwz r0, 0(r24) +/* 801C8578 001C54D8 7C 03 00 40 */ cmplw r3, r0 +/* 801C857C 001C54DC 41 82 00 10 */ beq lbl_801C858C +lbl_801C8580: +/* 801C8580 001C54E0 34 C6 FF FF */ addic. r6, r6, -1 +/* 801C8584 001C54E4 38 84 FF FC */ addi r4, r4, -4 +/* 801C8588 001C54E8 40 80 FF E8 */ bge lbl_801C8570 +lbl_801C858C: +/* 801C858C 001C54EC 2C 06 00 00 */ cmpwi r6, 0 +/* 801C8590 001C54F0 40 80 00 24 */ bge lbl_801C85B4 +/* 801C8594 001C54F4 54 A0 10 3A */ slwi r0, r5, 2 +/* 801C8598 001C54F8 7C 7C 02 15 */ add. r3, r28, r0 +/* 801C859C 001C54FC 41 82 00 0C */ beq lbl_801C85A8 +/* 801C85A0 001C5500 80 18 00 00 */ lwz r0, 0(r24) +/* 801C85A4 001C5504 90 03 00 00 */ stw r0, 0(r3) +lbl_801C85A8: +/* 801C85A8 001C5508 80 61 00 C8 */ lwz r3, 0xc8(r1) +/* 801C85AC 001C550C 38 03 00 01 */ addi r0, r3, 1 +/* 801C85B0 001C5510 90 01 00 C8 */ stw r0, 0xc8(r1) +lbl_801C85B4: +/* 801C85B4 001C5514 3A 60 00 00 */ li r19, 0 +lbl_801C85B8: +/* 801C85B8 001C5518 3B 18 00 04 */ addi r24, r24, 4 +/* 801C85BC 001C551C 3A B5 00 01 */ addi r21, r21, 1 +lbl_801C85C0: +/* 801C85C0 001C5520 80 01 00 F0 */ lwz r0, 0xf0(r1) +/* 801C85C4 001C5524 7C 15 00 00 */ cmpw r21, r0 +/* 801C85C8 001C5528 41 80 FC 3C */ blt lbl_801C8204 +/* 801C85CC 001C552C 3B 7B 00 04 */ addi r27, r27, 4 +/* 801C85D0 001C5530 3A 94 00 01 */ addi r20, r20, 1 +lbl_801C85D4: +/* 801C85D4 001C5534 80 01 01 04 */ lwz r0, 0x104(r1) +/* 801C85D8 001C5538 7C 14 00 00 */ cmpw r20, r0 +/* 801C85DC 001C553C 41 80 FC 1C */ blt lbl_801C81F8 +/* 801C85E0 001C5540 56 60 06 3F */ clrlwi. r0, r19, 0x18 +/* 801C85E4 001C5544 40 82 00 24 */ bne lbl_801C8608 +/* 801C85E8 001C5548 7F 23 CB 78 */ mr r3, r25 +/* 801C85EC 001C554C 38 81 00 DC */ addi r4, r1, 0xdc +/* 801C85F0 001C5550 38 A1 00 BC */ addi r5, r1, 0xbc +/* 801C85F4 001C5554 38 C1 00 C8 */ addi r6, r1, 0xc8 +/* 801C85F8 001C5558 38 E1 00 B0 */ addi r7, r1, 0xb0 +/* 801C85FC 001C555C 4B FF ED B9 */ bl "Search__15CPathFindSearchFRQ24rstl30reserved_vectorRC9CVector3fRQ24rstl30reserved_vectorRC9CVector3f" +/* 801C8600 001C5560 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C8604 001C5564 40 82 01 A8 */ bne lbl_801C87AC +lbl_801C8608: +/* 801C8608 001C5568 38 00 00 04 */ li r0, 4 +/* 801C860C 001C556C 38 80 00 00 */ li r4, 0 +/* 801C8610 001C5570 90 19 00 CC */ stw r0, 0xcc(r25) +/* 801C8614 001C5574 80 C1 00 C8 */ lwz r6, 0xc8(r1) +/* 801C8618 001C5578 80 79 00 CC */ lwz r3, 0xcc(r25) +/* 801C861C 001C557C 2C 06 00 00 */ cmpwi r6, 0 +/* 801C8620 001C5580 40 81 00 40 */ ble lbl_801C8660 +/* 801C8624 001C5584 2C 06 00 08 */ cmpwi r6, 8 +/* 801C8628 001C5588 38 A6 FF F8 */ addi r5, r6, -8 +/* 801C862C 001C558C 40 81 00 20 */ ble lbl_801C864C +/* 801C8630 001C5590 38 05 00 07 */ addi r0, r5, 7 +/* 801C8634 001C5594 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C8638 001C5598 7C 09 03 A6 */ mtctr r0 +/* 801C863C 001C559C 2C 05 00 00 */ cmpwi r5, 0 +/* 801C8640 001C55A0 40 81 00 0C */ ble lbl_801C864C +lbl_801C8644: +/* 801C8644 001C55A4 38 84 00 08 */ addi r4, r4, 8 +/* 801C8648 001C55A8 42 00 FF FC */ bdnz lbl_801C8644 +lbl_801C864C: +/* 801C864C 001C55AC 7C 04 30 50 */ subf r0, r4, r6 +/* 801C8650 001C55B0 7C 09 03 A6 */ mtctr r0 +/* 801C8654 001C55B4 7C 04 30 00 */ cmpw r4, r6 +/* 801C8658 001C55B8 40 80 00 08 */ bge lbl_801C8660 +lbl_801C865C: +/* 801C865C 001C55BC 42 00 00 00 */ bdnz lbl_801C865C +lbl_801C8660: +/* 801C8660 001C55C0 80 C1 00 DC */ lwz r6, 0xdc(r1) +/* 801C8664 001C55C4 38 80 00 00 */ li r4, 0 +/* 801C8668 001C55C8 90 81 00 C8 */ stw r4, 0xc8(r1) +/* 801C866C 001C55CC 2C 06 00 00 */ cmpwi r6, 0 +/* 801C8670 001C55D0 40 81 00 40 */ ble lbl_801C86B0 +/* 801C8674 001C55D4 2C 06 00 08 */ cmpwi r6, 8 +/* 801C8678 001C55D8 38 A6 FF F8 */ addi r5, r6, -8 +/* 801C867C 001C55DC 40 81 00 20 */ ble lbl_801C869C +/* 801C8680 001C55E0 38 05 00 07 */ addi r0, r5, 7 +/* 801C8684 001C55E4 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C8688 001C55E8 7C 09 03 A6 */ mtctr r0 +/* 801C868C 001C55EC 2C 05 00 00 */ cmpwi r5, 0 +/* 801C8690 001C55F0 40 81 00 0C */ ble lbl_801C869C +lbl_801C8694: +/* 801C8694 001C55F4 38 84 00 08 */ addi r4, r4, 8 +/* 801C8698 001C55F8 42 00 FF FC */ bdnz lbl_801C8694 +lbl_801C869C: +/* 801C869C 001C55FC 7C 04 30 50 */ subf r0, r4, r6 +/* 801C86A0 001C5600 7C 09 03 A6 */ mtctr r0 +/* 801C86A4 001C5604 7C 04 30 00 */ cmpw r4, r6 +/* 801C86A8 001C5608 40 80 00 08 */ bge lbl_801C86B0 +lbl_801C86AC: +/* 801C86AC 001C560C 42 00 00 00 */ bdnz lbl_801C86AC +lbl_801C86B0: +/* 801C86B0 001C5610 80 C1 00 F0 */ lwz r6, 0xf0(r1) +/* 801C86B4 001C5614 38 80 00 00 */ li r4, 0 +/* 801C86B8 001C5618 90 81 00 DC */ stw r4, 0xdc(r1) +/* 801C86BC 001C561C 2C 06 00 00 */ cmpwi r6, 0 +/* 801C86C0 001C5620 40 81 00 40 */ ble lbl_801C8700 +/* 801C86C4 001C5624 2C 06 00 08 */ cmpwi r6, 8 +/* 801C86C8 001C5628 38 A6 FF F8 */ addi r5, r6, -8 +/* 801C86CC 001C562C 40 81 00 20 */ ble lbl_801C86EC +/* 801C86D0 001C5630 38 05 00 07 */ addi r0, r5, 7 +/* 801C86D4 001C5634 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C86D8 001C5638 7C 09 03 A6 */ mtctr r0 +/* 801C86DC 001C563C 2C 05 00 00 */ cmpwi r5, 0 +/* 801C86E0 001C5640 40 81 00 0C */ ble lbl_801C86EC +lbl_801C86E4: +/* 801C86E4 001C5644 38 84 00 08 */ addi r4, r4, 8 +/* 801C86E8 001C5648 42 00 FF FC */ bdnz lbl_801C86E4 +lbl_801C86EC: +/* 801C86EC 001C564C 7C 04 30 50 */ subf r0, r4, r6 +/* 801C86F0 001C5650 7C 09 03 A6 */ mtctr r0 +/* 801C86F4 001C5654 7C 04 30 00 */ cmpw r4, r6 +/* 801C86F8 001C5658 40 80 00 08 */ bge lbl_801C8700 +lbl_801C86FC: +/* 801C86FC 001C565C 42 00 00 00 */ bdnz lbl_801C86FC +lbl_801C8700: +/* 801C8700 001C5660 80 C1 01 04 */ lwz r6, 0x104(r1) +/* 801C8704 001C5664 38 80 00 00 */ li r4, 0 +/* 801C8708 001C5668 90 81 00 F0 */ stw r4, 0xf0(r1) +/* 801C870C 001C566C 2C 06 00 00 */ cmpwi r6, 0 +/* 801C8710 001C5670 40 81 00 40 */ ble lbl_801C8750 +/* 801C8714 001C5674 2C 06 00 08 */ cmpwi r6, 8 +/* 801C8718 001C5678 38 A6 FF F8 */ addi r5, r6, -8 +/* 801C871C 001C567C 40 81 00 20 */ ble lbl_801C873C +/* 801C8720 001C5680 38 05 00 07 */ addi r0, r5, 7 +/* 801C8724 001C5684 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C8728 001C5688 7C 09 03 A6 */ mtctr r0 +/* 801C872C 001C568C 2C 05 00 00 */ cmpwi r5, 0 +/* 801C8730 001C5690 40 81 00 0C */ ble lbl_801C873C +lbl_801C8734: +/* 801C8734 001C5694 38 84 00 08 */ addi r4, r4, 8 +/* 801C8738 001C5698 42 00 FF FC */ bdnz lbl_801C8734 +lbl_801C873C: +/* 801C873C 001C569C 7C 04 30 50 */ subf r0, r4, r6 +/* 801C8740 001C56A0 7C 09 03 A6 */ mtctr r0 +/* 801C8744 001C56A4 7C 04 30 00 */ cmpw r4, r6 +/* 801C8748 001C56A8 40 80 00 08 */ bge lbl_801C8750 +lbl_801C874C: +/* 801C874C 001C56AC 42 00 00 00 */ bdnz lbl_801C874C +lbl_801C8750: +/* 801C8750 001C56B0 80 C1 01 18 */ lwz r6, 0x118(r1) +/* 801C8754 001C56B4 38 80 00 00 */ li r4, 0 +/* 801C8758 001C56B8 90 81 01 04 */ stw r4, 0x104(r1) +/* 801C875C 001C56BC 2C 06 00 00 */ cmpwi r6, 0 +/* 801C8760 001C56C0 40 81 00 40 */ ble lbl_801C87A0 +/* 801C8764 001C56C4 2C 06 00 08 */ cmpwi r6, 8 +/* 801C8768 001C56C8 38 A6 FF F8 */ addi r5, r6, -8 +/* 801C876C 001C56CC 40 81 00 20 */ ble lbl_801C878C +/* 801C8770 001C56D0 38 05 00 07 */ addi r0, r5, 7 +/* 801C8774 001C56D4 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C8778 001C56D8 7C 09 03 A6 */ mtctr r0 +/* 801C877C 001C56DC 2C 05 00 00 */ cmpwi r5, 0 +/* 801C8780 001C56E0 40 81 00 0C */ ble lbl_801C878C +lbl_801C8784: +/* 801C8784 001C56E4 38 84 00 08 */ addi r4, r4, 8 +/* 801C8788 001C56E8 42 00 FF FC */ bdnz lbl_801C8784 +lbl_801C878C: +/* 801C878C 001C56EC 7C 04 30 50 */ subf r0, r4, r6 +/* 801C8790 001C56F0 7C 09 03 A6 */ mtctr r0 +/* 801C8794 001C56F4 7C 04 30 00 */ cmpw r4, r6 +/* 801C8798 001C56F8 40 80 00 08 */ bge lbl_801C87A0 +lbl_801C879C: +/* 801C879C 001C56FC 42 00 00 00 */ bdnz lbl_801C879C +lbl_801C87A0: +/* 801C87A0 001C5700 38 00 00 00 */ li r0, 0 +/* 801C87A4 001C5704 90 01 01 18 */ stw r0, 0x118(r1) +/* 801C87A8 001C5708 48 00 05 B8 */ b lbl_801C8D60 +lbl_801C87AC: +/* 801C87AC 001C570C 82 61 00 CC */ lwz r19, 0xcc(r1) +/* 801C87B0 001C5710 3A 80 00 00 */ li r20, 0 +/* 801C87B4 001C5714 83 81 00 E0 */ lwz r28, 0xe0(r1) +/* 801C87B8 001C5718 7E 64 9B 78 */ mr r4, r19 +lbl_801C87BC: +/* 801C87BC 001C571C 80 64 00 4C */ lwz r3, 0x4c(r4) +/* 801C87C0 001C5720 80 84 00 24 */ lwz r4, 0x24(r4) +/* 801C87C4 001C5724 82 43 00 20 */ lwz r18, 0x20(r3) +/* 801C87C8 001C5728 7E 43 93 78 */ mr r3, r18 +/* 801C87CC 001C572C 48 00 0D 99 */ bl SetLinkTo__9CPFRegionFi +/* 801C87D0 001C5730 7C 12 E0 40 */ cmplw r18, r28 +/* 801C87D4 001C5734 7E 44 93 78 */ mr r4, r18 +/* 801C87D8 001C5738 3A 94 00 01 */ addi r20, r20, 1 +/* 801C87DC 001C573C 40 82 FF E0 */ bne lbl_801C87BC +/* 801C87E0 001C5740 57 C3 06 3E */ clrlwi r3, r30, 0x18 +/* 801C87E4 001C5744 3B 74 FF FF */ addi r27, r20, -1 +/* 801C87E8 001C5748 7C 03 00 D0 */ neg r0, r3 +/* 801C87EC 001C574C 3A E0 00 01 */ li r23, 1 +/* 801C87F0 001C5750 7C 00 1B 78 */ or r0, r0, r3 +/* 801C87F4 001C5754 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801C87F8 001C5758 3B C3 00 01 */ addi r30, r3, 1 +/* 801C87FC 001C575C 7F 7E DA 14 */ add r27, r30, r27 +/* 801C8800 001C5760 2C 1B 00 10 */ cmpwi r27, 0x10 +/* 801C8804 001C5764 41 80 00 08 */ blt lbl_801C880C +/* 801C8808 001C5768 3B 60 00 0F */ li r27, 0xf +lbl_801C880C: +/* 801C880C 001C576C 57 A3 06 3E */ clrlwi r3, r29, 0x18 +/* 801C8810 001C5770 7C 03 00 D0 */ neg r0, r3 +/* 801C8814 001C5774 7C 00 1B 78 */ or r0, r0, r3 +/* 801C8818 001C5778 54 00 0F FE */ srwi r0, r0, 0x1f +/* 801C881C 001C577C 7C 7B 02 14 */ add r3, r27, r0 +/* 801C8820 001C5780 38 03 00 01 */ addi r0, r3, 1 +/* 801C8824 001C5784 2C 00 00 10 */ cmpwi r0, 0x10 +/* 801C8828 001C5788 41 80 00 08 */ blt lbl_801C8830 +/* 801C882C 001C578C 3A E0 00 00 */ li r23, 0 +lbl_801C8830: +/* 801C8830 001C5790 80 79 00 DC */ lwz r3, 0xdc(r25) +/* 801C8834 001C5794 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e +/* 801C8838 001C5798 40 82 00 24 */ bne lbl_801C885C +/* 801C883C 001C579C 54 60 07 7B */ rlwinm. r0, r3, 0, 0x1d, 0x1d +/* 801C8840 001C57A0 40 82 00 1C */ bne lbl_801C885C +/* 801C8844 001C57A4 7F 83 E3 78 */ mr r3, r28 +/* 801C8848 001C57A8 38 81 00 BC */ addi r4, r1, 0xbc +/* 801C884C 001C57AC 48 00 0C B1 */ bl DropToGround__9CPFRegionCFR9CVector3f +/* 801C8850 001C57B0 7E 63 9B 78 */ mr r3, r19 +/* 801C8854 001C57B4 38 81 00 B0 */ addi r4, r1, 0xb0 +/* 801C8858 001C57B8 48 00 0C A5 */ bl DropToGround__9CPFRegionCFR9CVector3f +lbl_801C885C: +/* 801C885C 001C57BC 80 01 01 18 */ lwz r0, 0x118(r1) +/* 801C8860 001C57C0 3A C1 01 1C */ addi r22, r1, 0x11c +/* 801C8864 001C57C4 C0 22 AB 34 */ lfs f1, lbl_805AC854@sda21(r2) +/* 801C8868 001C57C8 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C886C 001C57CC C0 19 00 D0 */ lfs f0, 0xd0(r25) +/* 801C8870 001C57D0 EF E1 00 32 */ fmuls f31, f1, f0 +/* 801C8874 001C57D4 7C 76 02 15 */ add. r3, r22, r0 +/* 801C8878 001C57D8 41 82 00 1C */ beq lbl_801C8894 +/* 801C887C 001C57DC C0 01 00 BC */ lfs f0, 0xbc(r1) +/* 801C8880 001C57E0 C0 21 00 C0 */ lfs f1, 0xc0(r1) +/* 801C8884 001C57E4 D0 03 00 00 */ stfs f0, 0(r3) +/* 801C8888 001C57E8 C0 01 00 C4 */ lfs f0, 0xc4(r1) +/* 801C888C 001C57EC D0 23 00 04 */ stfs f1, 4(r3) +/* 801C8890 001C57F0 D0 03 00 08 */ stfs f0, 8(r3) +lbl_801C8894: +/* 801C8894 001C57F4 80 61 01 18 */ lwz r3, 0x118(r1) +/* 801C8898 001C57F8 7F 94 E3 78 */ mr r20, r28 +/* 801C889C 001C57FC 7F D5 F3 78 */ mr r21, r30 +/* 801C88A0 001C5800 38 03 00 01 */ addi r0, r3, 1 +/* 801C88A4 001C5804 90 01 01 18 */ stw r0, 0x118(r1) +/* 801C88A8 001C5808 48 00 00 D0 */ b lbl_801C8978 +lbl_801C88AC: +/* 801C88AC 001C580C 80 D4 00 4C */ lwz r6, 0x4c(r20) +/* 801C88B0 001C5810 7E 84 A3 78 */ mr r4, r20 +/* 801C88B4 001C5814 80 B9 00 00 */ lwz r5, 0(r25) +/* 801C88B8 001C5818 38 61 00 5C */ addi r3, r1, 0x5c +/* 801C88BC 001C581C 80 06 00 2C */ lwz r0, 0x2c(r6) +/* 801C88C0 001C5820 80 F4 00 0C */ lwz r7, 0xc(r20) +/* 801C88C4 001C5824 54 00 20 36 */ slwi r0, r0, 4 +/* 801C88C8 001C5828 80 C5 01 54 */ lwz r6, 0x154(r5) +/* 801C88CC 001C582C 7C A7 02 14 */ add r5, r7, r0 +/* 801C88D0 001C5830 80 05 00 04 */ lwz r0, 4(r5) +/* 801C88D4 001C5834 1C 00 00 50 */ mulli r0, r0, 0x50 +/* 801C88D8 001C5838 7F 06 02 14 */ add r24, r6, r0 +/* 801C88DC 001C583C 48 00 0B B1 */ bl GetLinkMidPoint__9CPFRegionCFRC7CPFLink +/* 801C88E0 001C5840 80 79 00 DC */ lwz r3, 0xdc(r25) +/* 801C88E4 001C5844 C3 C1 00 5C */ lfs f30, 0x5c(r1) +/* 801C88E8 001C5848 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e +/* 801C88EC 001C584C C3 A1 00 60 */ lfs f29, 0x60(r1) +/* 801C88F0 001C5850 C3 81 00 64 */ lfs f28, 0x64(r1) +/* 801C88F4 001C5854 40 82 00 0C */ bne lbl_801C8900 +/* 801C88F8 001C5858 54 60 07 7B */ rlwinm. r0, r3, 0, 0x1d, 0x1d +/* 801C88FC 001C585C 41 82 00 4C */ beq lbl_801C8948 +lbl_801C8900: +/* 801C8900 001C5860 C0 18 00 14 */ lfs f0, 0x14(r24) +/* 801C8904 001C5864 38 61 00 14 */ addi r3, r1, 0x14 +/* 801C8908 001C5868 38 81 00 10 */ addi r4, r1, 0x10 +/* 801C890C 001C586C D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801C8910 001C5870 C0 14 00 14 */ lfs f0, 0x14(r20) +/* 801C8914 001C5874 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801C8918 001C5878 4B EB 54 C9 */ bl "Min__5CMathFRCfRCf" +/* 801C891C 001C587C C0 03 00 00 */ lfs f0, 0(r3) +/* 801C8920 001C5880 EC 3F E0 2A */ fadds f1, f31, f28 +/* 801C8924 001C5884 38 61 00 1C */ addi r3, r1, 0x1c +/* 801C8928 001C5888 38 9A 00 08 */ addi r4, r26, 8 +/* 801C892C 001C588C EC 00 E0 2A */ fadds f0, f0, f28 +/* 801C8930 001C5890 38 A1 00 18 */ addi r5, r1, 0x18 +/* 801C8934 001C5894 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 801C8938 001C5898 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 801C893C 001C589C D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801C8940 001C58A0 4B E4 39 75 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 801C8944 001C58A4 C3 83 00 00 */ lfs f28, 0(r3) +lbl_801C8948: +/* 801C8948 001C58A8 80 01 01 18 */ lwz r0, 0x118(r1) +/* 801C894C 001C58AC 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C8950 001C58B0 7C 76 02 15 */ add. r3, r22, r0 +/* 801C8954 001C58B4 41 82 00 10 */ beq lbl_801C8964 +/* 801C8958 001C58B8 D3 C3 00 00 */ stfs f30, 0(r3) +/* 801C895C 001C58BC D3 A3 00 04 */ stfs f29, 4(r3) +/* 801C8960 001C58C0 D3 83 00 08 */ stfs f28, 8(r3) +lbl_801C8964: +/* 801C8964 001C58C4 80 61 01 18 */ lwz r3, 0x118(r1) +/* 801C8968 001C58C8 7F 14 C3 78 */ mr r20, r24 +/* 801C896C 001C58CC 3A B5 00 01 */ addi r21, r21, 1 +/* 801C8970 001C58D0 38 03 00 01 */ addi r0, r3, 1 +/* 801C8974 001C58D4 90 01 01 18 */ stw r0, 0x118(r1) +lbl_801C8978: +/* 801C8978 001C58D8 7C 15 D8 00 */ cmpw r21, r27 +/* 801C897C 001C58DC 40 81 FF 30 */ ble lbl_801C88AC +/* 801C8980 001C58E0 56 E0 06 3F */ clrlwi. r0, r23, 0x18 +/* 801C8984 001C58E4 41 82 00 70 */ beq lbl_801C89F4 +/* 801C8988 001C58E8 80 01 01 18 */ lwz r0, 0x118(r1) +/* 801C898C 001C58EC 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C8990 001C58F0 7C 76 02 15 */ add. r3, r22, r0 +/* 801C8994 001C58F4 41 82 00 1C */ beq lbl_801C89B0 +/* 801C8998 001C58F8 C0 01 00 B0 */ lfs f0, 0xb0(r1) +/* 801C899C 001C58FC C0 21 00 B4 */ lfs f1, 0xb4(r1) +/* 801C89A0 001C5900 D0 03 00 00 */ stfs f0, 0(r3) +/* 801C89A4 001C5904 C0 01 00 B8 */ lfs f0, 0xb8(r1) +/* 801C89A8 001C5908 D0 23 00 04 */ stfs f1, 4(r3) +/* 801C89AC 001C590C D0 03 00 08 */ stfs f0, 8(r3) +lbl_801C89B0: +/* 801C89B0 001C5910 80 61 01 18 */ lwz r3, 0x118(r1) +/* 801C89B4 001C5914 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 801C89B8 001C5918 38 03 00 01 */ addi r0, r3, 1 +/* 801C89BC 001C591C 90 01 01 18 */ stw r0, 0x118(r1) +/* 801C89C0 001C5920 41 82 00 34 */ beq lbl_801C89F4 +/* 801C89C4 001C5924 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C89C8 001C5928 7C 76 02 15 */ add. r3, r22, r0 +/* 801C89CC 001C592C 41 82 00 1C */ beq lbl_801C89E8 +/* 801C89D0 001C5930 C0 01 00 A4 */ lfs f0, 0xa4(r1) +/* 801C89D4 001C5934 C0 21 00 A8 */ lfs f1, 0xa8(r1) +/* 801C89D8 001C5938 D0 03 00 00 */ stfs f0, 0(r3) +/* 801C89DC 001C593C C0 01 00 AC */ lfs f0, 0xac(r1) +/* 801C89E0 001C5940 D0 23 00 04 */ stfs f1, 4(r3) +/* 801C89E4 001C5944 D0 03 00 08 */ stfs f0, 8(r3) +lbl_801C89E8: +/* 801C89E8 001C5948 80 61 01 18 */ lwz r3, 0x118(r1) +/* 801C89EC 001C594C 38 03 00 01 */ addi r0, r3, 1 +/* 801C89F0 001C5950 90 01 01 18 */ stw r0, 0x118(r1) +lbl_801C89F4: +/* 801C89F4 001C5954 1F 5E 00 0C */ mulli r26, r30, 0xc +/* 801C89F8 001C5958 56 F2 06 3E */ clrlwi r18, r23, 0x18 +/* 801C89FC 001C595C 3A 60 00 00 */ li r19, 0 +lbl_801C8A00: +/* 801C8A00 001C5960 7F 94 E3 78 */ mr r20, r28 +/* 801C8A04 001C5964 7F D5 F3 78 */ mr r21, r30 +/* 801C8A08 001C5968 7E F6 D2 14 */ add r23, r22, r26 +/* 801C8A0C 001C596C 48 00 00 FC */ b lbl_801C8B08 +lbl_801C8A10: +/* 801C8A10 001C5970 80 74 00 4C */ lwz r3, 0x4c(r20) +/* 801C8A14 001C5974 80 D9 00 DC */ lwz r6, 0xdc(r25) +/* 801C8A18 001C5978 80 63 00 2C */ lwz r3, 0x2c(r3) +/* 801C8A1C 001C597C 80 B4 00 0C */ lwz r5, 0xc(r20) +/* 801C8A20 001C5980 54 C0 07 BD */ rlwinm. r0, r6, 0, 0x1e, 0x1e +/* 801C8A24 001C5984 54 64 20 36 */ slwi r4, r3, 4 +/* 801C8A28 001C5988 80 79 00 00 */ lwz r3, 0(r25) +/* 801C8A2C 001C598C 7F 05 22 14 */ add r24, r5, r4 +/* 801C8A30 001C5990 80 18 00 04 */ lwz r0, 4(r24) +/* 801C8A34 001C5994 80 63 01 54 */ lwz r3, 0x154(r3) +/* 801C8A38 001C5998 1C 00 00 50 */ mulli r0, r0, 0x50 +/* 801C8A3C 001C599C 7F A3 02 14 */ add r29, r3, r0 +/* 801C8A40 001C59A0 40 82 00 0C */ bne lbl_801C8A4C +/* 801C8A44 001C59A4 54 C0 07 7B */ rlwinm. r0, r6, 0, 0x1d, 0x1d +/* 801C8A48 001C59A8 41 82 00 70 */ beq lbl_801C8AB8 +lbl_801C8A4C: +/* 801C8A4C 001C59AC C0 1D 00 14 */ lfs f0, 0x14(r29) +/* 801C8A50 001C59B0 38 61 00 0C */ addi r3, r1, 0xc +/* 801C8A54 001C59B4 38 81 00 08 */ addi r4, r1, 8 +/* 801C8A58 001C59B8 D0 01 00 08 */ stfs f0, 8(r1) +/* 801C8A5C 001C59BC C0 14 00 14 */ lfs f0, 0x14(r20) +/* 801C8A60 001C59C0 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801C8A64 001C59C4 4B EB 53 7D */ bl "Min__5CMathFRCfRCf" +/* 801C8A68 001C59C8 C0 23 00 00 */ lfs f1, 0(r3) +/* 801C8A6C 001C59CC 38 75 FF FF */ addi r3, r21, -1 +/* 801C8A70 001C59D0 1C A3 00 0C */ mulli r5, r3, 0xc +/* 801C8A74 001C59D4 38 15 00 01 */ addi r0, r21, 1 +/* 801C8A78 001C59D8 FC 60 F8 90 */ fmr f3, f31 +/* 801C8A7C 001C59DC C0 59 00 D4 */ lfs f2, 0xd4(r25) +/* 801C8A80 001C59E0 7E 84 A3 78 */ mr r4, r20 +/* 801C8A84 001C59E4 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C8A88 001C59E8 7F 06 C3 78 */ mr r6, r24 +/* 801C8A8C 001C59EC 38 61 00 50 */ addi r3, r1, 0x50 +/* 801C8A90 001C59F0 7C B6 2A 14 */ add r5, r22, r5 +/* 801C8A94 001C59F4 7C F6 02 14 */ add r7, r22, r0 +/* 801C8A98 001C59F8 48 00 04 11 */ bl FitThroughLink3d__9CPFRegionCFRC9CVector3fRC7CPFLinkfRC9CVector3fff +/* 801C8A9C 001C59FC C0 01 00 50 */ lfs f0, 0x50(r1) +/* 801C8AA0 001C5A00 C0 21 00 54 */ lfs f1, 0x54(r1) +/* 801C8AA4 001C5A04 D0 17 00 00 */ stfs f0, 0(r23) +/* 801C8AA8 001C5A08 C0 01 00 58 */ lfs f0, 0x58(r1) +/* 801C8AAC 001C5A0C D0 37 00 04 */ stfs f1, 4(r23) +/* 801C8AB0 001C5A10 D0 17 00 08 */ stfs f0, 8(r23) +/* 801C8AB4 001C5A14 48 00 00 48 */ b lbl_801C8AFC +lbl_801C8AB8: +/* 801C8AB8 001C5A18 38 75 FF FF */ addi r3, r21, -1 +/* 801C8ABC 001C5A1C 38 15 00 01 */ addi r0, r21, 1 +/* 801C8AC0 001C5A20 1C A3 00 0C */ mulli r5, r3, 0xc +/* 801C8AC4 001C5A24 C0 39 00 D4 */ lfs f1, 0xd4(r25) +/* 801C8AC8 001C5A28 7E 84 A3 78 */ mr r4, r20 +/* 801C8ACC 001C5A2C 7F 06 C3 78 */ mr r6, r24 +/* 801C8AD0 001C5A30 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C8AD4 001C5A34 38 61 00 44 */ addi r3, r1, 0x44 +/* 801C8AD8 001C5A38 7C B6 2A 14 */ add r5, r22, r5 +/* 801C8ADC 001C5A3C 7C F6 02 14 */ add r7, r22, r0 +/* 801C8AE0 001C5A40 48 00 07 45 */ bl FitThroughLink2d__9CPFRegionCFRC9CVector3fRC7CPFLinkRC9CVector3ff +/* 801C8AE4 001C5A44 C0 01 00 44 */ lfs f0, 0x44(r1) +/* 801C8AE8 001C5A48 C0 21 00 48 */ lfs f1, 0x48(r1) +/* 801C8AEC 001C5A4C D0 17 00 00 */ stfs f0, 0(r23) +/* 801C8AF0 001C5A50 C0 01 00 4C */ lfs f0, 0x4c(r1) +/* 801C8AF4 001C5A54 D0 37 00 04 */ stfs f1, 4(r23) +/* 801C8AF8 001C5A58 D0 17 00 08 */ stfs f0, 8(r23) +lbl_801C8AFC: +/* 801C8AFC 001C5A5C 7F B4 EB 78 */ mr r20, r29 +/* 801C8B00 001C5A60 3A F7 00 0C */ addi r23, r23, 0xc +/* 801C8B04 001C5A64 3A B5 00 01 */ addi r21, r21, 1 +lbl_801C8B08: +/* 801C8B08 001C5A68 28 12 00 00 */ cmplwi r18, 0 +/* 801C8B0C 001C5A6C 38 1B FF FF */ addi r0, r27, -1 +/* 801C8B10 001C5A70 41 82 00 08 */ beq lbl_801C8B18 +/* 801C8B14 001C5A74 7F 60 DB 78 */ mr r0, r27 +lbl_801C8B18: +/* 801C8B18 001C5A78 7C 15 00 00 */ cmpw r21, r0 +/* 801C8B1C 001C5A7C 40 81 FE F4 */ ble lbl_801C8A10 +/* 801C8B20 001C5A80 3A 73 00 01 */ addi r19, r19, 1 +/* 801C8B24 001C5A84 2C 13 00 02 */ cmpwi r19, 2 +/* 801C8B28 001C5A88 41 80 FE D8 */ blt lbl_801C8A00 +/* 801C8B2C 001C5A8C 80 79 00 00 */ lwz r3, 0(r25) +/* 801C8B30 001C5A90 7E D3 B3 78 */ mr r19, r22 +/* 801C8B34 001C5A94 3A 80 00 00 */ li r20, 0 +/* 801C8B38 001C5A98 3A 43 01 88 */ addi r18, r3, 0x188 +/* 801C8B3C 001C5A9C 48 00 00 7C */ b lbl_801C8BB8 +lbl_801C8B40: +/* 801C8B40 001C5AA0 38 03 FF FF */ addi r0, r3, -1 +/* 801C8B44 001C5AA4 7C 14 00 00 */ cmpw r20, r0 +/* 801C8B48 001C5AA8 41 82 00 24 */ beq lbl_801C8B6C +/* 801C8B4C 001C5AAC 38 14 00 01 */ addi r0, r20, 1 +/* 801C8B50 001C5AB0 C0 22 AB 30 */ lfs f1, lbl_805AC850@sda21(r2) +/* 801C8B54 001C5AB4 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C8B58 001C5AB8 7E 63 9B 78 */ mr r3, r19 +/* 801C8B5C 001C5ABC 7C 96 02 14 */ add r4, r22, r0 +/* 801C8B60 001C5AC0 48 14 74 05 */ bl close_enough__FRC9CVector3fRC9CVector3ff +/* 801C8B64 001C5AC4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801C8B68 001C5AC8 40 82 00 48 */ bne lbl_801C8BB0 +lbl_801C8B6C: +/* 801C8B6C 001C5ACC 7E 44 93 78 */ mr r4, r18 +/* 801C8B70 001C5AD0 7E 65 9B 78 */ mr r5, r19 +/* 801C8B74 001C5AD4 38 61 00 38 */ addi r3, r1, 0x38 +/* 801C8B78 001C5AD8 48 14 9F 71 */ bl __ml__12CTransform4fCFRC9CVector3f +/* 801C8B7C 001C5ADC 80 19 00 04 */ lwz r0, 4(r25) +/* 801C8B80 001C5AE0 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C8B84 001C5AE4 7C 7F 02 15 */ add. r3, r31, r0 +/* 801C8B88 001C5AE8 41 82 00 1C */ beq lbl_801C8BA4 +/* 801C8B8C 001C5AEC C0 01 00 38 */ lfs f0, 0x38(r1) +/* 801C8B90 001C5AF0 D0 03 00 00 */ stfs f0, 0(r3) +/* 801C8B94 001C5AF4 C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 801C8B98 001C5AF8 D0 03 00 04 */ stfs f0, 4(r3) +/* 801C8B9C 001C5AFC C0 01 00 40 */ lfs f0, 0x40(r1) +/* 801C8BA0 001C5B00 D0 03 00 08 */ stfs f0, 8(r3) +lbl_801C8BA4: +/* 801C8BA4 001C5B04 80 79 00 04 */ lwz r3, 4(r25) +/* 801C8BA8 001C5B08 38 03 00 01 */ addi r0, r3, 1 +/* 801C8BAC 001C5B0C 90 19 00 04 */ stw r0, 4(r25) +lbl_801C8BB0: +/* 801C8BB0 001C5B10 3A 73 00 0C */ addi r19, r19, 0xc +/* 801C8BB4 001C5B14 3A 94 00 01 */ addi r20, r20, 1 +lbl_801C8BB8: +/* 801C8BB8 001C5B18 80 61 01 18 */ lwz r3, 0x118(r1) +/* 801C8BBC 001C5B1C 7C 14 18 00 */ cmpw r20, r3 +/* 801C8BC0 001C5B20 41 80 FF 80 */ blt lbl_801C8B40 +/* 801C8BC4 001C5B24 38 80 00 00 */ li r4, 0 +/* 801C8BC8 001C5B28 90 99 00 CC */ stw r4, 0xcc(r25) +/* 801C8BCC 001C5B2C 80 C1 00 C8 */ lwz r6, 0xc8(r1) +/* 801C8BD0 001C5B30 80 79 00 CC */ lwz r3, 0xcc(r25) +/* 801C8BD4 001C5B34 2C 06 00 00 */ cmpwi r6, 0 +/* 801C8BD8 001C5B38 40 81 00 40 */ ble lbl_801C8C18 +/* 801C8BDC 001C5B3C 2C 06 00 08 */ cmpwi r6, 8 +/* 801C8BE0 001C5B40 38 A6 FF F8 */ addi r5, r6, -8 +/* 801C8BE4 001C5B44 40 81 00 20 */ ble lbl_801C8C04 +/* 801C8BE8 001C5B48 38 05 00 07 */ addi r0, r5, 7 +/* 801C8BEC 001C5B4C 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C8BF0 001C5B50 7C 09 03 A6 */ mtctr r0 +/* 801C8BF4 001C5B54 2C 05 00 00 */ cmpwi r5, 0 +/* 801C8BF8 001C5B58 40 81 00 0C */ ble lbl_801C8C04 +lbl_801C8BFC: +/* 801C8BFC 001C5B5C 38 84 00 08 */ addi r4, r4, 8 +/* 801C8C00 001C5B60 42 00 FF FC */ bdnz lbl_801C8BFC +lbl_801C8C04: +/* 801C8C04 001C5B64 7C 04 30 50 */ subf r0, r4, r6 +/* 801C8C08 001C5B68 7C 09 03 A6 */ mtctr r0 +/* 801C8C0C 001C5B6C 7C 04 30 00 */ cmpw r4, r6 +/* 801C8C10 001C5B70 40 80 00 08 */ bge lbl_801C8C18 +lbl_801C8C14: +/* 801C8C14 001C5B74 42 00 00 00 */ bdnz lbl_801C8C14 +lbl_801C8C18: +/* 801C8C18 001C5B78 80 C1 00 DC */ lwz r6, 0xdc(r1) +/* 801C8C1C 001C5B7C 38 80 00 00 */ li r4, 0 +/* 801C8C20 001C5B80 90 81 00 C8 */ stw r4, 0xc8(r1) +/* 801C8C24 001C5B84 2C 06 00 00 */ cmpwi r6, 0 +/* 801C8C28 001C5B88 40 81 00 40 */ ble lbl_801C8C68 +/* 801C8C2C 001C5B8C 2C 06 00 08 */ cmpwi r6, 8 +/* 801C8C30 001C5B90 38 A6 FF F8 */ addi r5, r6, -8 +/* 801C8C34 001C5B94 40 81 00 20 */ ble lbl_801C8C54 +/* 801C8C38 001C5B98 38 05 00 07 */ addi r0, r5, 7 +/* 801C8C3C 001C5B9C 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C8C40 001C5BA0 7C 09 03 A6 */ mtctr r0 +/* 801C8C44 001C5BA4 2C 05 00 00 */ cmpwi r5, 0 +/* 801C8C48 001C5BA8 40 81 00 0C */ ble lbl_801C8C54 +lbl_801C8C4C: +/* 801C8C4C 001C5BAC 38 84 00 08 */ addi r4, r4, 8 +/* 801C8C50 001C5BB0 42 00 FF FC */ bdnz lbl_801C8C4C +lbl_801C8C54: +/* 801C8C54 001C5BB4 7C 04 30 50 */ subf r0, r4, r6 +/* 801C8C58 001C5BB8 7C 09 03 A6 */ mtctr r0 +/* 801C8C5C 001C5BBC 7C 04 30 00 */ cmpw r4, r6 +/* 801C8C60 001C5BC0 40 80 00 08 */ bge lbl_801C8C68 +lbl_801C8C64: +/* 801C8C64 001C5BC4 42 00 00 00 */ bdnz lbl_801C8C64 +lbl_801C8C68: +/* 801C8C68 001C5BC8 80 C1 00 F0 */ lwz r6, 0xf0(r1) +/* 801C8C6C 001C5BCC 38 80 00 00 */ li r4, 0 +/* 801C8C70 001C5BD0 90 81 00 DC */ stw r4, 0xdc(r1) +/* 801C8C74 001C5BD4 2C 06 00 00 */ cmpwi r6, 0 +/* 801C8C78 001C5BD8 40 81 00 40 */ ble lbl_801C8CB8 +/* 801C8C7C 001C5BDC 2C 06 00 08 */ cmpwi r6, 8 +/* 801C8C80 001C5BE0 38 A6 FF F8 */ addi r5, r6, -8 +/* 801C8C84 001C5BE4 40 81 00 20 */ ble lbl_801C8CA4 +/* 801C8C88 001C5BE8 38 05 00 07 */ addi r0, r5, 7 +/* 801C8C8C 001C5BEC 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C8C90 001C5BF0 7C 09 03 A6 */ mtctr r0 +/* 801C8C94 001C5BF4 2C 05 00 00 */ cmpwi r5, 0 +/* 801C8C98 001C5BF8 40 81 00 0C */ ble lbl_801C8CA4 +lbl_801C8C9C: +/* 801C8C9C 001C5BFC 38 84 00 08 */ addi r4, r4, 8 +/* 801C8CA0 001C5C00 42 00 FF FC */ bdnz lbl_801C8C9C +lbl_801C8CA4: +/* 801C8CA4 001C5C04 7C 04 30 50 */ subf r0, r4, r6 +/* 801C8CA8 001C5C08 7C 09 03 A6 */ mtctr r0 +/* 801C8CAC 001C5C0C 7C 04 30 00 */ cmpw r4, r6 +/* 801C8CB0 001C5C10 40 80 00 08 */ bge lbl_801C8CB8 +lbl_801C8CB4: +/* 801C8CB4 001C5C14 42 00 00 00 */ bdnz lbl_801C8CB4 +lbl_801C8CB8: +/* 801C8CB8 001C5C18 80 C1 01 04 */ lwz r6, 0x104(r1) +/* 801C8CBC 001C5C1C 38 80 00 00 */ li r4, 0 +/* 801C8CC0 001C5C20 90 81 00 F0 */ stw r4, 0xf0(r1) +/* 801C8CC4 001C5C24 2C 06 00 00 */ cmpwi r6, 0 +/* 801C8CC8 001C5C28 40 81 00 40 */ ble lbl_801C8D08 +/* 801C8CCC 001C5C2C 2C 06 00 08 */ cmpwi r6, 8 +/* 801C8CD0 001C5C30 38 A6 FF F8 */ addi r5, r6, -8 +/* 801C8CD4 001C5C34 40 81 00 20 */ ble lbl_801C8CF4 +/* 801C8CD8 001C5C38 38 05 00 07 */ addi r0, r5, 7 +/* 801C8CDC 001C5C3C 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C8CE0 001C5C40 7C 09 03 A6 */ mtctr r0 +/* 801C8CE4 001C5C44 2C 05 00 00 */ cmpwi r5, 0 +/* 801C8CE8 001C5C48 40 81 00 0C */ ble lbl_801C8CF4 +lbl_801C8CEC: +/* 801C8CEC 001C5C4C 38 84 00 08 */ addi r4, r4, 8 +/* 801C8CF0 001C5C50 42 00 FF FC */ bdnz lbl_801C8CEC +lbl_801C8CF4: +/* 801C8CF4 001C5C54 7C 04 30 50 */ subf r0, r4, r6 +/* 801C8CF8 001C5C58 7C 09 03 A6 */ mtctr r0 +/* 801C8CFC 001C5C5C 7C 04 30 00 */ cmpw r4, r6 +/* 801C8D00 001C5C60 40 80 00 08 */ bge lbl_801C8D08 +lbl_801C8D04: +/* 801C8D04 001C5C64 42 00 00 00 */ bdnz lbl_801C8D04 +lbl_801C8D08: +/* 801C8D08 001C5C68 80 C1 01 18 */ lwz r6, 0x118(r1) +/* 801C8D0C 001C5C6C 38 80 00 00 */ li r4, 0 +/* 801C8D10 001C5C70 90 81 01 04 */ stw r4, 0x104(r1) +/* 801C8D14 001C5C74 2C 06 00 00 */ cmpwi r6, 0 +/* 801C8D18 001C5C78 40 81 00 40 */ ble lbl_801C8D58 +/* 801C8D1C 001C5C7C 2C 06 00 08 */ cmpwi r6, 8 +/* 801C8D20 001C5C80 38 A6 FF F8 */ addi r5, r6, -8 +/* 801C8D24 001C5C84 40 81 00 20 */ ble lbl_801C8D44 +/* 801C8D28 001C5C88 38 05 00 07 */ addi r0, r5, 7 +/* 801C8D2C 001C5C8C 54 00 E8 FE */ srwi r0, r0, 3 +/* 801C8D30 001C5C90 7C 09 03 A6 */ mtctr r0 +/* 801C8D34 001C5C94 2C 05 00 00 */ cmpwi r5, 0 +/* 801C8D38 001C5C98 40 81 00 0C */ ble lbl_801C8D44 +lbl_801C8D3C: +/* 801C8D3C 001C5C9C 38 84 00 08 */ addi r4, r4, 8 +/* 801C8D40 001C5CA0 42 00 FF FC */ bdnz lbl_801C8D3C +lbl_801C8D44: +/* 801C8D44 001C5CA4 7C 04 30 50 */ subf r0, r4, r6 +/* 801C8D48 001C5CA8 7C 09 03 A6 */ mtctr r0 +/* 801C8D4C 001C5CAC 7C 04 30 00 */ cmpw r4, r6 +/* 801C8D50 001C5CB0 40 80 00 08 */ bge lbl_801C8D58 +lbl_801C8D54: +/* 801C8D54 001C5CB4 42 00 00 00 */ bdnz lbl_801C8D54 +lbl_801C8D58: +/* 801C8D58 001C5CB8 38 00 00 00 */ li r0, 0 +/* 801C8D5C 001C5CBC 90 01 01 18 */ stw r0, 0x118(r1) +lbl_801C8D60: +/* 801C8D60 001C5CC0 E3 E1 02 58 */ psq_l f31, 600(r1), 0, qr0 +/* 801C8D64 001C5CC4 CB E1 02 50 */ lfd f31, 0x250(r1) +/* 801C8D68 001C5CC8 E3 C1 02 48 */ psq_l f30, 584(r1), 0, qr0 +/* 801C8D6C 001C5CCC CB C1 02 40 */ lfd f30, 0x240(r1) +/* 801C8D70 001C5CD0 E3 A1 02 38 */ psq_l f29, 568(r1), 0, qr0 +/* 801C8D74 001C5CD4 CB A1 02 30 */ lfd f29, 0x230(r1) +/* 801C8D78 001C5CD8 E3 81 02 28 */ psq_l f28, 552(r1), 0, qr0 +/* 801C8D7C 001C5CDC CB 81 02 20 */ lfd f28, 0x220(r1) +/* 801C8D80 001C5CE0 BA 41 01 E8 */ lmw r18, 0x1e8(r1) +/* 801C8D84 001C5CE4 80 01 02 64 */ lwz r0, 0x264(r1) +/* 801C8D88 001C5CE8 7C 08 03 A6 */ mtlr r0 +/* 801C8D8C 001C5CEC 38 21 02 60 */ addi r1, r1, 0x260 +/* 801C8D90 001C5CF0 4E 80 00 20 */ blr + +.global __ct__15CPathFindSearchFP7CPFAreaUiff +__ct__15CPathFindSearchFP7CPFAreaUiff: +/* 801C8D94 001C5CF4 90 83 00 00 */ stw r4, 0(r3) +/* 801C8D98 001C5CF8 38 80 00 00 */ li r4, 0 +/* 801C8D9C 001C5CFC 38 00 00 01 */ li r0, 1 +/* 801C8DA0 001C5D00 C0 02 AB 38 */ lfs f0, lbl_805AC858@sda21(r2) +/* 801C8DA4 001C5D04 90 83 00 04 */ stw r4, 4(r3) +/* 801C8DA8 001C5D08 7C 00 30 30 */ slw r0, r0, r6 +/* 801C8DAC 001C5D0C 90 83 00 C8 */ stw r4, 0xc8(r3) +/* 801C8DB0 001C5D10 D0 43 00 D0 */ stfs f2, 0xd0(r3) +/* 801C8DB4 001C5D14 D0 23 00 D4 */ stfs f1, 0xd4(r3) +/* 801C8DB8 001C5D18 D0 03 00 D8 */ stfs f0, 0xd8(r3) +/* 801C8DBC 001C5D1C 90 A3 00 DC */ stw r5, 0xdc(r3) +/* 801C8DC0 001C5D20 90 03 00 E0 */ stw r0, 0xe0(r3) +/* 801C8DC4 001C5D24 4E 80 00 20 */ blr + +.global __ct__11CPFOpenListFv +__ct__11CPFOpenListFv: +/* 801C8DC8 001C5D28 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801C8DCC 001C5D2C 7C 08 02 A6 */ mflr r0 +/* 801C8DD0 001C5D30 90 01 00 14 */ stw r0, 0x14(r1) +/* 801C8DD4 001C5D34 38 00 00 00 */ li r0, 0 +/* 801C8DD8 001C5D38 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801C8DDC 001C5D3C 7C 7F 1B 78 */ mr r31, r3 +/* 801C8DE0 001C5D40 90 03 00 00 */ stw r0, 0(r3) +/* 801C8DE4 001C5D44 38 7F 00 40 */ addi r3, r31, 0x40 +/* 801C8DE8 001C5D48 90 1F 00 04 */ stw r0, 4(r31) +/* 801C8DEC 001C5D4C 90 1F 00 08 */ stw r0, 8(r31) +/* 801C8DF0 001C5D50 90 1F 00 0C */ stw r0, 0xc(r31) +/* 801C8DF4 001C5D54 90 1F 00 10 */ stw r0, 0x10(r31) +/* 801C8DF8 001C5D58 90 1F 00 14 */ stw r0, 0x14(r31) +/* 801C8DFC 001C5D5C 90 1F 00 18 */ stw r0, 0x18(r31) +/* 801C8E00 001C5D60 90 1F 00 1C */ stw r0, 0x1c(r31) +/* 801C8E04 001C5D64 90 1F 00 20 */ stw r0, 0x20(r31) +/* 801C8E08 001C5D68 90 1F 00 24 */ stw r0, 0x24(r31) +/* 801C8E0C 001C5D6C 90 1F 00 28 */ stw r0, 0x28(r31) +/* 801C8E10 001C5D70 90 1F 00 2C */ stw r0, 0x2c(r31) +/* 801C8E14 001C5D74 90 1F 00 30 */ stw r0, 0x30(r31) +/* 801C8E18 001C5D78 90 1F 00 34 */ stw r0, 0x34(r31) +/* 801C8E1C 001C5D7C 90 1F 00 38 */ stw r0, 0x38(r31) +/* 801C8E20 001C5D80 90 1F 00 3C */ stw r0, 0x3c(r31) +/* 801C8E24 001C5D84 48 00 11 E9 */ bl __ct__9CPFRegionFv +/* 801C8E28 001C5D88 38 7F 00 90 */ addi r3, r31, 0x90 +/* 801C8E2C 001C5D8C 48 00 12 ED */ bl __ct__13CPFRegionDataFv +/* 801C8E30 001C5D90 38 7F 00 90 */ addi r3, r31, 0x90 +/* 801C8E34 001C5D94 38 1F 00 40 */ addi r0, r31, 0x40 +/* 801C8E38 001C5D98 90 7F 00 8C */ stw r3, 0x8c(r31) +/* 801C8E3C 001C5D9C 38 A0 00 00 */ li r5, 0 +/* 801C8E40 001C5DA0 7F E3 FB 78 */ mr r3, r31 +/* 801C8E44 001C5DA4 80 9F 00 8C */ lwz r4, 0x8c(r31) +/* 801C8E48 001C5DA8 90 04 00 28 */ stw r0, 0x28(r4) +/* 801C8E4C 001C5DAC 80 9F 00 8C */ lwz r4, 0x8c(r31) +/* 801C8E50 001C5DB0 90 04 00 24 */ stw r0, 0x24(r4) +/* 801C8E54 001C5DB4 90 BF 00 00 */ stw r5, 0(r31) +/* 801C8E58 001C5DB8 90 BF 00 04 */ stw r5, 4(r31) +/* 801C8E5C 001C5DBC 90 BF 00 08 */ stw r5, 8(r31) +/* 801C8E60 001C5DC0 90 BF 00 0C */ stw r5, 0xc(r31) +/* 801C8E64 001C5DC4 90 BF 00 10 */ stw r5, 0x10(r31) +/* 801C8E68 001C5DC8 90 BF 00 14 */ stw r5, 0x14(r31) +/* 801C8E6C 001C5DCC 90 BF 00 18 */ stw r5, 0x18(r31) +/* 801C8E70 001C5DD0 90 BF 00 1C */ stw r5, 0x1c(r31) +/* 801C8E74 001C5DD4 90 BF 00 20 */ stw r5, 0x20(r31) +/* 801C8E78 001C5DD8 90 BF 00 24 */ stw r5, 0x24(r31) +/* 801C8E7C 001C5DDC 90 BF 00 28 */ stw r5, 0x28(r31) +/* 801C8E80 001C5DE0 90 BF 00 2C */ stw r5, 0x2c(r31) +/* 801C8E84 001C5DE4 90 BF 00 30 */ stw r5, 0x30(r31) +/* 801C8E88 001C5DE8 90 BF 00 34 */ stw r5, 0x34(r31) +/* 801C8E8C 001C5DEC 90 BF 00 38 */ stw r5, 0x38(r31) +/* 801C8E90 001C5DF0 90 BF 00 3C */ stw r5, 0x3c(r31) +/* 801C8E94 001C5DF4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801C8E98 001C5DF8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801C8E9C 001C5DFC 7C 08 03 A6 */ mtlr r0 +/* 801C8EA0 001C5E00 38 21 00 10 */ addi r1, r1, 0x10 +/* 801C8EA4 001C5E04 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Player/CGameOptions.s b/asm/Kyoto_CWD/Player/CGameOptions.s new file mode 100644 index 00000000..cd505c78 --- /dev/null +++ b/asm/Kyoto_CWD/Player/CGameOptions.s @@ -0,0 +1,1353 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global SetControls__12CGameOptionsFi +SetControls__12CGameOptionsFi: +/* 8020E998 0020B8F8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8020E99C 0020B8FC 7C 08 02 A6 */ mflr r0 +/* 8020E9A0 0020B900 2C 04 00 01 */ cmpwi r4, 1 +/* 8020E9A4 0020B904 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020E9A8 0020B908 41 82 00 20 */ beq lbl_8020E9C8 +/* 8020E9AC 0020B90C 40 80 00 24 */ bge lbl_8020E9D0 +/* 8020E9B0 0020B910 2C 04 00 00 */ cmpwi r4, 0 +/* 8020E9B4 0020B914 40 80 00 08 */ bge lbl_8020E9BC +/* 8020E9B8 0020B918 48 00 00 18 */ b lbl_8020E9D0 +lbl_8020E9BC: +/* 8020E9BC 0020B91C 80 0D A1 2C */ lwz r0, gpTweakPlayerControl1@sda21(r13) +/* 8020E9C0 0020B920 90 0D A1 28 */ stw r0, gpTweakPlayerControlCurrent@sda21(r13) +/* 8020E9C4 0020B924 48 00 00 0C */ b lbl_8020E9D0 +lbl_8020E9C8: +/* 8020E9C8 0020B928 80 0D A1 30 */ lwz r0, gpTweakPlayerControl2@sda21(r13) +/* 8020E9CC 0020B92C 90 0D A1 28 */ stw r0, gpTweakPlayerControlCurrent@sda21(r13) +lbl_8020E9D0: +/* 8020E9D0 0020B930 48 00 00 15 */ bl ResetControllerAssets__12CGameOptionsFv +/* 8020E9D4 0020B934 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8020E9D8 0020B938 7C 08 03 A6 */ mtlr r0 +/* 8020E9DC 0020B93C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8020E9E0 0020B940 4E 80 00 20 */ blr + +.global ResetControllerAssets__12CGameOptionsFv +ResetControllerAssets__12CGameOptionsFv: +/* 8020E9E4 0020B944 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 8020E9E8 0020B948 7C 08 02 A6 */ mflr r0 +/* 8020E9EC 0020B94C 2C 04 00 01 */ cmpwi r4, 1 +/* 8020E9F0 0020B950 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 8020E9F4 0020B954 BE 81 00 A0 */ stmw r20, 0xa0(r1) +/* 8020E9F8 0020B958 7C 7D 1B 78 */ mr r29, r3 +/* 8020E9FC 0020B95C 41 82 00 74 */ beq lbl_8020EA70 +/* 8020EA00 0020B960 40 80 02 A0 */ bge lbl_8020ECA0 +/* 8020EA04 0020B964 2C 04 00 00 */ cmpwi r4, 0 +/* 8020EA08 0020B968 40 80 00 08 */ bge lbl_8020EA10 +/* 8020EA0C 0020B96C 48 00 02 94 */ b lbl_8020ECA0 +lbl_8020EA10: +/* 8020EA10 0020B970 38 00 00 00 */ li r0, 0 +/* 8020EA14 0020B974 38 7D 00 6C */ addi r3, r29, 0x6c +/* 8020EA18 0020B978 90 01 00 38 */ stw r0, 0x38(r1) +/* 8020EA1C 0020B97C 38 81 00 34 */ addi r4, r1, 0x34 +/* 8020EA20 0020B980 90 01 00 3C */ stw r0, 0x3c(r1) +/* 8020EA24 0020B984 90 01 00 40 */ stw r0, 0x40(r1) +/* 8020EA28 0020B988 4B DF 4E A9 */ bl sub_800038d0 +/* 8020EA2C 0020B98C 80 01 00 38 */ lwz r0, 0x38(r1) +/* 8020EA30 0020B990 80 61 00 40 */ lwz r3, 0x40(r1) +/* 8020EA34 0020B994 54 00 18 38 */ slwi r0, r0, 3 +/* 8020EA38 0020B998 7C 03 02 14 */ add r0, r3, r0 +/* 8020EA3C 0020B99C 90 61 00 28 */ stw r3, 0x28(r1) +/* 8020EA40 0020B9A0 7C 64 1B 78 */ mr r4, r3 +/* 8020EA44 0020B9A4 90 01 00 30 */ stw r0, 0x30(r1) +/* 8020EA48 0020B9A8 90 01 00 2C */ stw r0, 0x2c(r1) +/* 8020EA4C 0020B9AC 90 61 00 24 */ stw r3, 0x24(r1) +/* 8020EA50 0020B9B0 48 00 00 08 */ b lbl_8020EA58 +lbl_8020EA54: +/* 8020EA54 0020B9B4 38 84 00 08 */ addi r4, r4, 8 +lbl_8020EA58: +/* 8020EA58 0020B9B8 7C 04 00 40 */ cmplw r4, r0 +/* 8020EA5C 0020B9BC 40 82 FF F8 */ bne lbl_8020EA54 +/* 8020EA60 0020B9C0 28 03 00 00 */ cmplwi r3, 0 +/* 8020EA64 0020B9C4 41 82 02 3C */ beq lbl_8020ECA0 +/* 8020EA68 0020B9C8 48 10 6E C9 */ bl Free__7CMemoryFPCv +/* 8020EA6C 0020B9CC 48 00 02 34 */ b lbl_8020ECA0 +lbl_8020EA70: +/* 8020EA70 0020B9D0 80 1D 00 70 */ lwz r0, 0x70(r29) +/* 8020EA74 0020B9D4 2C 00 00 00 */ cmpwi r0, 0 +/* 8020EA78 0020B9D8 40 82 02 28 */ bne lbl_8020ECA0 +/* 8020EA7C 0020B9DC 82 8D 94 5C */ lwz r20, lbl_805A801C@sda21(r13) +/* 8020EA80 0020B9E0 38 7D 00 6C */ addi r3, r29, 0x6c +/* 8020EA84 0020B9E4 82 AD 94 60 */ lwz r21, lbl_805A8020@sda21(r13) +/* 8020EA88 0020B9E8 38 80 00 0F */ li r4, 0xf +/* 8020EA8C 0020B9EC 82 CD 94 64 */ lwz r22, lbl_805A8024@sda21(r13) +/* 8020EA90 0020B9F0 82 ED 94 68 */ lwz r23, lbl_805A8028@sda21(r13) +/* 8020EA94 0020B9F4 83 0D 94 6C */ lwz r24, lbl_805A802C@sda21(r13) +/* 8020EA98 0020B9F8 83 2D 94 70 */ lwz r25, lbl_805A8030@sda21(r13) +/* 8020EA9C 0020B9FC 83 4D 94 74 */ lwz r26, lbl_805A8034@sda21(r13) +/* 8020EAA0 0020BA00 83 6D 94 78 */ lwz r27, lbl_805A8038@sda21(r13) +/* 8020EAA4 0020BA04 83 8D 94 7C */ lwz r28, lbl_805A803C@sda21(r13) +/* 8020EAA8 0020BA08 83 ED 94 80 */ lwz r31, lbl_805A8040@sda21(r13) +/* 8020EAAC 0020BA0C 83 CD 94 84 */ lwz r30, lbl_805A8044@sda21(r13) +/* 8020EAB0 0020BA10 81 8D 94 88 */ lwz r12, lbl_805A8048@sda21(r13) +/* 8020EAB4 0020BA14 81 6D 94 8C */ lwz r11, lbl_805A804C@sda21(r13) +/* 8020EAB8 0020BA18 81 4D 94 90 */ lwz r10, lbl_805A8050@sda21(r13) +/* 8020EABC 0020BA1C 81 2D 94 94 */ lwz r9, lbl_805A8054@sda21(r13) +/* 8020EAC0 0020BA20 81 0D 94 98 */ lwz r8, lbl_805A8058@sda21(r13) +/* 8020EAC4 0020BA24 80 ED 94 9C */ lwz r7, lbl_805A805C@sda21(r13) +/* 8020EAC8 0020BA28 80 CD 94 A0 */ lwz r6, lbl_805A8060@sda21(r13) +/* 8020EACC 0020BA2C 80 AD 94 A4 */ lwz r5, lbl_805A8064@sda21(r13) +/* 8020EAD0 0020BA30 80 0D 94 A8 */ lwz r0, lbl_805A8068@sda21(r13) +/* 8020EAD4 0020BA34 92 81 00 6C */ stw r20, 0x6c(r1) +/* 8020EAD8 0020BA38 92 A1 00 70 */ stw r21, 0x70(r1) +/* 8020EADC 0020BA3C 92 C1 00 74 */ stw r22, 0x74(r1) +/* 8020EAE0 0020BA40 92 E1 00 78 */ stw r23, 0x78(r1) +/* 8020EAE4 0020BA44 93 01 00 7C */ stw r24, 0x7c(r1) +/* 8020EAE8 0020BA48 93 21 00 80 */ stw r25, 0x80(r1) +/* 8020EAEC 0020BA4C 93 41 00 84 */ stw r26, 0x84(r1) +/* 8020EAF0 0020BA50 93 61 00 88 */ stw r27, 0x88(r1) +/* 8020EAF4 0020BA54 93 81 00 8C */ stw r28, 0x8c(r1) +/* 8020EAF8 0020BA58 93 E1 00 90 */ stw r31, 0x90(r1) +/* 8020EAFC 0020BA5C 93 C1 00 44 */ stw r30, 0x44(r1) +/* 8020EB00 0020BA60 91 81 00 48 */ stw r12, 0x48(r1) +/* 8020EB04 0020BA64 91 61 00 4C */ stw r11, 0x4c(r1) +/* 8020EB08 0020BA68 91 41 00 50 */ stw r10, 0x50(r1) +/* 8020EB0C 0020BA6C 91 21 00 54 */ stw r9, 0x54(r1) +/* 8020EB10 0020BA70 91 01 00 58 */ stw r8, 0x58(r1) +/* 8020EB14 0020BA74 90 E1 00 5C */ stw r7, 0x5c(r1) +/* 8020EB18 0020BA78 90 C1 00 60 */ stw r6, 0x60(r1) +/* 8020EB1C 0020BA7C 90 A1 00 64 */ stw r5, 0x64(r1) +/* 8020EB20 0020BA80 90 01 00 68 */ stw r0, 0x68(r1) +/* 8020EB24 0020BA84 4B DF 9F 29 */ bl "reserve__Q24rstl47vector<10SScanState,Q24rstl17rmemory_allocator>Fi" +/* 8020EB28 0020BA88 3B C0 00 00 */ li r30, 0 +/* 8020EB2C 0020BA8C 3B E1 00 6C */ addi r31, r1, 0x6c +lbl_8020EB30: +/* 8020EB30 0020BA90 80 1D 00 70 */ lwz r0, 0x70(r29) +/* 8020EB34 0020BA94 80 BD 00 74 */ lwz r5, 0x74(r29) +/* 8020EB38 0020BA98 82 9F 00 00 */ lwz r20, 0(r31) +/* 8020EB3C 0020BA9C 7C 00 28 00 */ cmpw r0, r5 +/* 8020EB40 0020BAA0 82 BF 00 04 */ lwz r21, 4(r31) +/* 8020EB44 0020BAA4 41 80 00 1C */ blt lbl_8020EB60 +/* 8020EB48 0020BAA8 2C 05 00 00 */ cmpwi r5, 0 +/* 8020EB4C 0020BAAC 38 7D 00 6C */ addi r3, r29, 0x6c +/* 8020EB50 0020BAB0 38 80 00 04 */ li r4, 4 +/* 8020EB54 0020BAB4 41 82 00 08 */ beq lbl_8020EB5C +/* 8020EB58 0020BAB8 54 A4 08 3C */ slwi r4, r5, 1 +lbl_8020EB5C: +/* 8020EB5C 0020BABC 4B DF 9E F1 */ bl "reserve__Q24rstl47vector<10SScanState,Q24rstl17rmemory_allocator>Fi" +lbl_8020EB60: +/* 8020EB60 0020BAC0 80 1D 00 70 */ lwz r0, 0x70(r29) +/* 8020EB64 0020BAC4 80 7D 00 78 */ lwz r3, 0x78(r29) +/* 8020EB68 0020BAC8 54 00 18 38 */ slwi r0, r0, 3 +/* 8020EB6C 0020BACC 7C 63 02 15 */ add. r3, r3, r0 +/* 8020EB70 0020BAD0 41 82 00 0C */ beq lbl_8020EB7C +/* 8020EB74 0020BAD4 92 83 00 00 */ stw r20, 0(r3) +/* 8020EB78 0020BAD8 92 A3 00 04 */ stw r21, 4(r3) +lbl_8020EB7C: +/* 8020EB7C 0020BADC 80 7D 00 70 */ lwz r3, 0x70(r29) +/* 8020EB80 0020BAE0 82 9F 00 04 */ lwz r20, 4(r31) +/* 8020EB84 0020BAE4 38 03 00 01 */ addi r0, r3, 1 +/* 8020EB88 0020BAE8 82 BF 00 00 */ lwz r21, 0(r31) +/* 8020EB8C 0020BAEC 90 1D 00 70 */ stw r0, 0x70(r29) +/* 8020EB90 0020BAF0 80 1D 00 70 */ lwz r0, 0x70(r29) +/* 8020EB94 0020BAF4 80 BD 00 74 */ lwz r5, 0x74(r29) +/* 8020EB98 0020BAF8 7C 00 28 00 */ cmpw r0, r5 +/* 8020EB9C 0020BAFC 41 80 00 1C */ blt lbl_8020EBB8 +/* 8020EBA0 0020BB00 2C 05 00 00 */ cmpwi r5, 0 +/* 8020EBA4 0020BB04 38 7D 00 6C */ addi r3, r29, 0x6c +/* 8020EBA8 0020BB08 38 80 00 04 */ li r4, 4 +/* 8020EBAC 0020BB0C 41 82 00 08 */ beq lbl_8020EBB4 +/* 8020EBB0 0020BB10 54 A4 08 3C */ slwi r4, r5, 1 +lbl_8020EBB4: +/* 8020EBB4 0020BB14 4B DF 9E 99 */ bl "reserve__Q24rstl47vector<10SScanState,Q24rstl17rmemory_allocator>Fi" +lbl_8020EBB8: +/* 8020EBB8 0020BB18 80 1D 00 70 */ lwz r0, 0x70(r29) +/* 8020EBBC 0020BB1C 80 7D 00 78 */ lwz r3, 0x78(r29) +/* 8020EBC0 0020BB20 54 00 18 38 */ slwi r0, r0, 3 +/* 8020EBC4 0020BB24 7C 63 02 15 */ add. r3, r3, r0 +/* 8020EBC8 0020BB28 41 82 00 0C */ beq lbl_8020EBD4 +/* 8020EBCC 0020BB2C 92 83 00 00 */ stw r20, 0(r3) +/* 8020EBD0 0020BB30 92 A3 00 04 */ stw r21, 4(r3) +lbl_8020EBD4: +/* 8020EBD4 0020BB34 80 7D 00 70 */ lwz r3, 0x70(r29) +/* 8020EBD8 0020BB38 3B DE 00 01 */ addi r30, r30, 1 +/* 8020EBDC 0020BB3C 2C 1E 00 05 */ cmpwi r30, 5 +/* 8020EBE0 0020BB40 3B FF 00 08 */ addi r31, r31, 8 +/* 8020EBE4 0020BB44 38 03 00 01 */ addi r0, r3, 1 +/* 8020EBE8 0020BB48 90 1D 00 70 */ stw r0, 0x70(r29) +/* 8020EBEC 0020BB4C 41 80 FF 44 */ blt lbl_8020EB30 +/* 8020EBF0 0020BB50 3A E0 00 00 */ li r23, 0 +/* 8020EBF4 0020BB54 3A C1 00 44 */ addi r22, r1, 0x44 +lbl_8020EBF8: +/* 8020EBF8 0020BB58 80 1D 00 70 */ lwz r0, 0x70(r29) +/* 8020EBFC 0020BB5C 80 BD 00 74 */ lwz r5, 0x74(r29) +/* 8020EC00 0020BB60 82 96 00 00 */ lwz r20, 0(r22) +/* 8020EC04 0020BB64 7C 00 28 00 */ cmpw r0, r5 +/* 8020EC08 0020BB68 82 B6 00 04 */ lwz r21, 4(r22) +/* 8020EC0C 0020BB6C 41 80 00 1C */ blt lbl_8020EC28 +/* 8020EC10 0020BB70 2C 05 00 00 */ cmpwi r5, 0 +/* 8020EC14 0020BB74 38 7D 00 6C */ addi r3, r29, 0x6c +/* 8020EC18 0020BB78 38 80 00 04 */ li r4, 4 +/* 8020EC1C 0020BB7C 41 82 00 08 */ beq lbl_8020EC24 +/* 8020EC20 0020BB80 54 A4 08 3C */ slwi r4, r5, 1 +lbl_8020EC24: +/* 8020EC24 0020BB84 4B DF 9E 29 */ bl "reserve__Q24rstl47vector<10SScanState,Q24rstl17rmemory_allocator>Fi" +lbl_8020EC28: +/* 8020EC28 0020BB88 80 1D 00 70 */ lwz r0, 0x70(r29) +/* 8020EC2C 0020BB8C 80 7D 00 78 */ lwz r3, 0x78(r29) +/* 8020EC30 0020BB90 54 00 18 38 */ slwi r0, r0, 3 +/* 8020EC34 0020BB94 7C 63 02 15 */ add. r3, r3, r0 +/* 8020EC38 0020BB98 41 82 00 0C */ beq lbl_8020EC44 +/* 8020EC3C 0020BB9C 92 83 00 00 */ stw r20, 0(r3) +/* 8020EC40 0020BBA0 92 A3 00 04 */ stw r21, 4(r3) +lbl_8020EC44: +/* 8020EC44 0020BBA4 80 7D 00 70 */ lwz r3, 0x70(r29) +/* 8020EC48 0020BBA8 3A F7 00 01 */ addi r23, r23, 1 +/* 8020EC4C 0020BBAC 2C 17 00 05 */ cmpwi r23, 5 +/* 8020EC50 0020BBB0 3A D6 00 08 */ addi r22, r22, 8 +/* 8020EC54 0020BBB4 38 03 00 01 */ addi r0, r3, 1 +/* 8020EC58 0020BBB8 90 1D 00 70 */ stw r0, 0x70(r29) +/* 8020EC5C 0020BBBC 41 80 FF 9C */ blt lbl_8020EBF8 +/* 8020EC60 0020BBC0 88 E1 00 10 */ lbz r7, 0x10(r1) +/* 8020EC64 0020BBC4 38 61 00 14 */ addi r3, r1, 0x14 +/* 8020EC68 0020BBC8 38 81 00 1C */ addi r4, r1, 0x1c +/* 8020EC6C 0020BBCC 38 A1 00 08 */ addi r5, r1, 8 +/* 8020EC70 0020BBD0 98 E1 00 08 */ stb r7, 8(r1) +/* 8020EC74 0020BBD4 80 1D 00 70 */ lwz r0, 0x70(r29) +/* 8020EC78 0020BBD8 80 DD 00 78 */ lwz r6, 0x78(r29) +/* 8020EC7C 0020BBDC 54 00 18 38 */ slwi r0, r0, 3 +/* 8020EC80 0020BBE0 98 E1 00 0C */ stb r7, 0xc(r1) +/* 8020EC84 0020BBE4 7C C6 02 14 */ add r6, r6, r0 +/* 8020EC88 0020BBE8 90 C1 00 1C */ stw r6, 0x1c(r1) +/* 8020EC8C 0020BBEC 80 1D 00 78 */ lwz r0, 0x78(r29) +/* 8020EC90 0020BBF0 90 C1 00 20 */ stw r6, 0x20(r1) +/* 8020EC94 0020BBF4 90 01 00 18 */ stw r0, 0x18(r1) +/* 8020EC98 0020BBF8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020EC9C 0020BBFC 48 00 0D 05 */ bl sub_8020f9a0 +lbl_8020ECA0: +/* 8020ECA0 0020BC00 BA 81 00 A0 */ lmw r20, 0xa0(r1) +/* 8020ECA4 0020BC04 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 8020ECA8 0020BC08 7C 08 03 A6 */ mtlr r0 +/* 8020ECAC 0020BC0C 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 8020ECB0 0020BC10 4E 80 00 20 */ blr + +.global ToggleControls__12CGameOptionsFb +ToggleControls__12CGameOptionsFb: +/* 8020ECB4 0020BC14 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8020ECB8 0020BC18 7C 08 02 A6 */ mflr r0 +/* 8020ECBC 0020BC1C 54 84 06 3F */ clrlwi. r4, r4, 0x18 +/* 8020ECC0 0020BC20 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020ECC4 0020BC24 88 03 00 68 */ lbz r0, 0x68(r3) +/* 8020ECC8 0020BC28 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 8020ECCC 0020BC2C 98 03 00 68 */ stb r0, 0x68(r3) +/* 8020ECD0 0020BC30 41 82 00 10 */ beq lbl_8020ECE0 +/* 8020ECD4 0020BC34 38 80 00 01 */ li r4, 1 +/* 8020ECD8 0020BC38 4B FF FC C1 */ bl SetControls__12CGameOptionsFi +/* 8020ECDC 0020BC3C 48 00 00 0C */ b lbl_8020ECE8 +lbl_8020ECE0: +/* 8020ECE0 0020BC40 38 80 00 00 */ li r4, 0 +/* 8020ECE4 0020BC44 4B FF FC B5 */ bl SetControls__12CGameOptionsFi +lbl_8020ECE8: +/* 8020ECE8 0020BC48 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8020ECEC 0020BC4C 7C 08 03 A6 */ mtlr r0 +/* 8020ECF0 0020BC50 38 21 00 10 */ addi r1, r1, 0x10 +/* 8020ECF4 0020BC54 4E 80 00 20 */ blr + +.global SetIsRumbleEnabled__12CGameOptionsFb +SetIsRumbleEnabled__12CGameOptionsFb: +/* 8020ECF8 0020BC58 88 03 00 68 */ lbz r0, 0x68(r3) +/* 8020ECFC 0020BC5C 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 8020ED00 0020BC60 98 03 00 68 */ stb r0, 0x68(r3) +/* 8020ED04 0020BC64 4E 80 00 20 */ blr + +.global SetInvertYAxis__12CGameOptionsFb +SetInvertYAxis__12CGameOptionsFb: +/* 8020ED08 0020BC68 88 03 00 68 */ lbz r0, 0x68(r3) +/* 8020ED0C 0020BC6C 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 8020ED10 0020BC70 98 03 00 68 */ stb r0, 0x68(r3) +/* 8020ED14 0020BC74 4E 80 00 20 */ blr + +.global SetIsHintSystemEnabled__12CGameOptionsFb +SetIsHintSystemEnabled__12CGameOptionsFb: +/* 8020ED18 0020BC78 88 03 00 68 */ lbz r0, 0x68(r3) +/* 8020ED1C 0020BC7C 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c +/* 8020ED20 0020BC80 98 03 00 68 */ stb r0, 0x68(r3) +/* 8020ED24 0020BC84 4E 80 00 20 */ blr + +.global SetHUDLag__12CGameOptionsFb +SetHUDLag__12CGameOptionsFb: +/* 8020ED28 0020BC88 88 03 00 68 */ lbz r0, 0x68(r3) +/* 8020ED2C 0020BC8C 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 8020ED30 0020BC90 98 03 00 68 */ stb r0, 0x68(r3) +/* 8020ED34 0020BC94 4E 80 00 20 */ blr + +.global SetHelmetAlpha__12CGameOptionsFi +SetHelmetAlpha__12CGameOptionsFi: +/* 8020ED38 0020BC98 90 83 00 64 */ stw r4, 0x64(r3) +/* 8020ED3C 0020BC9C 4E 80 00 20 */ blr + +.global GetHelmetAlpha__12CGameOptionsCFv +GetHelmetAlpha__12CGameOptionsCFv: +/* 8020ED40 0020BCA0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8020ED44 0020BCA4 3C 00 43 30 */ lis r0, 0x4330 +/* 8020ED48 0020BCA8 C8 22 B2 30 */ lfd f1, lbl_805ACF50@sda21(r2) +/* 8020ED4C 0020BCAC 80 63 00 64 */ lwz r3, 0x64(r3) +/* 8020ED50 0020BCB0 90 01 00 08 */ stw r0, 8(r1) +/* 8020ED54 0020BCB4 6C 60 80 00 */ xoris r0, r3, 0x8000 +/* 8020ED58 0020BCB8 C0 42 B2 28 */ lfs f2, lbl_805ACF48@sda21(r2) +/* 8020ED5C 0020BCBC 90 01 00 0C */ stw r0, 0xc(r1) +/* 8020ED60 0020BCC0 C8 01 00 08 */ lfd f0, 8(r1) +/* 8020ED64 0020BCC4 EC 00 08 28 */ fsubs f0, f0, f1 +/* 8020ED68 0020BCC8 EC 22 00 32 */ fmuls f1, f2, f0 +/* 8020ED6C 0020BCCC 38 21 00 10 */ addi r1, r1, 0x10 +/* 8020ED70 0020BCD0 4E 80 00 20 */ blr + +.global GetHudAlpha__12CGameOptionsCFv +GetHudAlpha__12CGameOptionsCFv: +/* 8020ED74 0020BCD4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8020ED78 0020BCD8 3C 00 43 30 */ lis r0, 0x4330 +/* 8020ED7C 0020BCDC C8 22 B2 30 */ lfd f1, lbl_805ACF50@sda21(r2) +/* 8020ED80 0020BCE0 80 63 00 60 */ lwz r3, 0x60(r3) +/* 8020ED84 0020BCE4 90 01 00 08 */ stw r0, 8(r1) +/* 8020ED88 0020BCE8 6C 60 80 00 */ xoris r0, r3, 0x8000 +/* 8020ED8C 0020BCEC C0 42 B2 28 */ lfs f2, lbl_805ACF48@sda21(r2) +/* 8020ED90 0020BCF0 90 01 00 0C */ stw r0, 0xc(r1) +/* 8020ED94 0020BCF4 C8 01 00 08 */ lfd f0, 8(r1) +/* 8020ED98 0020BCF8 EC 00 08 28 */ fsubs f0, f0, f1 +/* 8020ED9C 0020BCFC EC 22 00 32 */ fmuls f1, f2, f0 +/* 8020EDA0 0020BD00 38 21 00 10 */ addi r1, r1, 0x10 +/* 8020EDA4 0020BD04 4E 80 00 20 */ blr + +.global SetSurroundMode__12CGameOptionsFQ29CAudioSys14ESurroundModesi +SetSurroundMode__12CGameOptionsFQ29CAudioSys14ESurroundModesi: +/* 8020EDA8 0020BD08 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8020EDAC 0020BD0C 7C 08 02 A6 */ mflr r0 +/* 8020EDB0 0020BD10 90 01 00 24 */ stw r0, 0x24(r1) +/* 8020EDB4 0020BD14 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8020EDB8 0020BD18 7C BF 2B 78 */ mr r31, r5 +/* 8020EDBC 0020BD1C 38 AD 94 58 */ addi r5, r13, lbl_805A8018@sda21 +/* 8020EDC0 0020BD20 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8020EDC4 0020BD24 7C 7E 1B 78 */ mr r30, r3 +/* 8020EDC8 0020BD28 38 6D 94 54 */ addi r3, r13, lbl_805A8014@sda21 +/* 8020EDCC 0020BD2C 90 81 00 08 */ stw r4, 8(r1) +/* 8020EDD0 0020BD30 38 81 00 08 */ addi r4, r1, 8 +/* 8020EDD4 0020BD34 4B E4 B2 91 */ bl "Clamp__5CMathFRCiRCiRCi" +/* 8020EDD8 0020BD38 80 63 00 00 */ lwz r3, 0(r3) +/* 8020EDDC 0020BD3C 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 8020EDE0 0020BD40 90 7E 00 44 */ stw r3, 0x44(r30) +/* 8020EDE4 0020BD44 41 82 00 0C */ beq lbl_8020EDF0 +/* 8020EDE8 0020BD48 80 7E 00 44 */ lwz r3, 0x44(r30) +/* 8020EDEC 0020BD4C 48 13 BA 31 */ bl SetSurroundMode__9CAudioSysFQ29CAudioSys14ESurroundModes +lbl_8020EDF0: +/* 8020EDF0 0020BD50 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8020EDF4 0020BD54 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8020EDF8 0020BD58 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8020EDFC 0020BD5C 7C 08 03 A6 */ mtlr r0 +/* 8020EE00 0020BD60 38 21 00 20 */ addi r1, r1, 0x20 +/* 8020EE04 0020BD64 4E 80 00 20 */ blr + +.global SetMusicVolume__12CGameOptionsFib +SetMusicVolume__12CGameOptionsFib: +/* 8020EE08 0020BD68 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8020EE0C 0020BD6C 7C 08 02 A6 */ mflr r0 +/* 8020EE10 0020BD70 90 01 00 24 */ stw r0, 0x24(r1) +/* 8020EE14 0020BD74 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8020EE18 0020BD78 7C BF 2B 78 */ mr r31, r5 +/* 8020EE1C 0020BD7C 38 AD 94 50 */ addi r5, r13, lbl_805A8010@sda21 +/* 8020EE20 0020BD80 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8020EE24 0020BD84 7C 7E 1B 78 */ mr r30, r3 +/* 8020EE28 0020BD88 38 6D 94 4C */ addi r3, r13, lbl_805A800C@sda21 +/* 8020EE2C 0020BD8C 90 81 00 08 */ stw r4, 8(r1) +/* 8020EE30 0020BD90 38 81 00 08 */ addi r4, r1, 8 +/* 8020EE34 0020BD94 4B E4 B2 31 */ bl "Clamp__5CMathFRCiRCiRCi" +/* 8020EE38 0020BD98 80 63 00 00 */ lwz r3, 0(r3) +/* 8020EE3C 0020BD9C 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 8020EE40 0020BDA0 90 7E 00 5C */ stw r3, 0x5c(r30) +/* 8020EE44 0020BDA4 41 82 00 0C */ beq lbl_8020EE50 +/* 8020EE48 0020BDA8 80 7E 00 5C */ lwz r3, 0x5c(r30) +/* 8020EE4C 0020BDAC 48 15 6B E9 */ bl SetMusicVolume__19CStreamAudioManagerFi +lbl_8020EE50: +/* 8020EE50 0020BDB0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8020EE54 0020BDB4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8020EE58 0020BDB8 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8020EE5C 0020BDBC 7C 08 03 A6 */ mtlr r0 +/* 8020EE60 0020BDC0 38 21 00 20 */ addi r1, r1, 0x20 +/* 8020EE64 0020BDC4 4E 80 00 20 */ blr + +.global SetSfxVolume__12CGameOptionsFib +SetSfxVolume__12CGameOptionsFib: +/* 8020EE68 0020BDC8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8020EE6C 0020BDCC 7C 08 02 A6 */ mflr r0 +/* 8020EE70 0020BDD0 90 01 00 24 */ stw r0, 0x24(r1) +/* 8020EE74 0020BDD4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8020EE78 0020BDD8 7C BF 2B 78 */ mr r31, r5 +/* 8020EE7C 0020BDDC 38 AD 94 48 */ addi r5, r13, lbl_805A8008@sda21 +/* 8020EE80 0020BDE0 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8020EE84 0020BDE4 7C 7E 1B 78 */ mr r30, r3 +/* 8020EE88 0020BDE8 38 6D 94 44 */ addi r3, r13, lbl_805A8004@sda21 +/* 8020EE8C 0020BDEC 90 81 00 08 */ stw r4, 8(r1) +/* 8020EE90 0020BDF0 38 81 00 08 */ addi r4, r1, 8 +/* 8020EE94 0020BDF4 4B E4 B1 D1 */ bl "Clamp__5CMathFRCiRCiRCi" +/* 8020EE98 0020BDF8 80 63 00 00 */ lwz r3, 0(r3) +/* 8020EE9C 0020BDFC 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 8020EEA0 0020BE00 90 7E 00 58 */ stw r3, 0x58(r30) +/* 8020EEA4 0020BE04 41 82 00 30 */ beq lbl_8020EED4 +/* 8020EEA8 0020BE08 80 1E 00 58 */ lwz r0, 0x58(r30) +/* 8020EEAC 0020BE0C 38 80 00 01 */ li r4, 1 +/* 8020EEB0 0020BE10 38 A0 00 01 */ li r5, 1 +/* 8020EEB4 0020BE14 38 C0 00 01 */ li r6, 1 +/* 8020EEB8 0020BE18 54 03 06 3E */ clrlwi r3, r0, 0x18 +/* 8020EEBC 0020BE1C 48 13 D6 31 */ bl SysSetSfxVolume__9CAudioSysFUcUsUcUc +/* 8020EEC0 0020BE20 80 7E 00 58 */ lwz r3, 0x58(r30) +/* 8020EEC4 0020BE24 48 15 6B 59 */ bl SetSfxVolume__21CStreamedAudioManagerFUc +/* 8020EEC8 0020BE28 80 1E 00 58 */ lwz r0, 0x58(r30) +/* 8020EECC 0020BE2C 54 03 06 3E */ clrlwi r3, r0, 0x18 +/* 8020EED0 0020BE30 48 14 C7 0D */ bl SetSfxVolume__12CMoviePlayerFUc +lbl_8020EED4: +/* 8020EED4 0020BE34 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8020EED8 0020BE38 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8020EEDC 0020BE3C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8020EEE0 0020BE40 7C 08 03 A6 */ mtlr r0 +/* 8020EEE4 0020BE44 38 21 00 20 */ addi r1, r1, 0x20 +/* 8020EEE8 0020BE48 4E 80 00 20 */ blr + +.global SetScreenStretch__12CGameOptionsFib +SetScreenStretch__12CGameOptionsFib: +/* 8020EEEC 0020BE4C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8020EEF0 0020BE50 7C 08 02 A6 */ mflr r0 +/* 8020EEF4 0020BE54 90 01 00 24 */ stw r0, 0x24(r1) +/* 8020EEF8 0020BE58 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8020EEFC 0020BE5C 7C BF 2B 78 */ mr r31, r5 +/* 8020EF00 0020BE60 38 AD 94 40 */ addi r5, r13, lbl_805A8000@sda21 +/* 8020EF04 0020BE64 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8020EF08 0020BE68 7C 7E 1B 78 */ mr r30, r3 +/* 8020EF0C 0020BE6C 38 6D 94 3C */ addi r3, r13, lbl_805A7FFC@sda21 +/* 8020EF10 0020BE70 90 81 00 08 */ stw r4, 8(r1) +/* 8020EF14 0020BE74 38 81 00 08 */ addi r4, r1, 8 +/* 8020EF18 0020BE78 4B E4 B1 4D */ bl "Clamp__5CMathFRCiRCiRCi" +/* 8020EF1C 0020BE7C 80 63 00 00 */ lwz r3, 0(r3) +/* 8020EF20 0020BE80 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 8020EF24 0020BE84 90 7E 00 54 */ stw r3, 0x54(r30) +/* 8020EF28 0020BE88 41 82 00 24 */ beq lbl_8020EF4C +/* 8020EF2C 0020BE8C 38 61 00 14 */ addi r3, r1, 0x14 +/* 8020EF30 0020BE90 38 81 00 10 */ addi r4, r1, 0x10 +/* 8020EF34 0020BE94 38 A1 00 0C */ addi r5, r1, 0xc +/* 8020EF38 0020BE98 48 0F A6 2D */ bl sub_80309564 +/* 8020EF3C 0020BE9C 80 7E 00 54 */ lwz r3, 0x54(r30) +/* 8020EF40 0020BEA0 80 81 00 10 */ lwz r4, 0x10(r1) +/* 8020EF44 0020BEA4 80 A1 00 0C */ lwz r5, 0xc(r1) +/* 8020EF48 0020BEA8 48 0F A5 69 */ bl sub_803094b0 +lbl_8020EF4C: +/* 8020EF4C 0020BEAC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8020EF50 0020BEB0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8020EF54 0020BEB4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8020EF58 0020BEB8 7C 08 03 A6 */ mtlr r0 +/* 8020EF5C 0020BEBC 38 21 00 20 */ addi r1, r1, 0x20 +/* 8020EF60 0020BEC0 4E 80 00 20 */ blr + +.global SetScreenPositionY__12CGameOptionsFib +SetScreenPositionY__12CGameOptionsFib: +/* 8020EF64 0020BEC4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8020EF68 0020BEC8 7C 08 02 A6 */ mflr r0 +/* 8020EF6C 0020BECC 90 01 00 24 */ stw r0, 0x24(r1) +/* 8020EF70 0020BED0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8020EF74 0020BED4 7C BF 2B 78 */ mr r31, r5 +/* 8020EF78 0020BED8 38 AD 94 38 */ addi r5, r13, lbl_805A7FF8@sda21 +/* 8020EF7C 0020BEDC 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8020EF80 0020BEE0 7C 7E 1B 78 */ mr r30, r3 +/* 8020EF84 0020BEE4 38 6D 94 34 */ addi r3, r13, lbl_805A7FF4@sda21 +/* 8020EF88 0020BEE8 90 81 00 08 */ stw r4, 8(r1) +/* 8020EF8C 0020BEEC 38 81 00 08 */ addi r4, r1, 8 +/* 8020EF90 0020BEF0 4B E4 B0 D5 */ bl "Clamp__5CMathFRCiRCiRCi" +/* 8020EF94 0020BEF4 80 63 00 00 */ lwz r3, 0(r3) +/* 8020EF98 0020BEF8 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 8020EF9C 0020BEFC 90 7E 00 50 */ stw r3, 0x50(r30) +/* 8020EFA0 0020BF00 41 82 00 24 */ beq lbl_8020EFC4 +/* 8020EFA4 0020BF04 38 61 00 14 */ addi r3, r1, 0x14 +/* 8020EFA8 0020BF08 38 81 00 10 */ addi r4, r1, 0x10 +/* 8020EFAC 0020BF0C 38 A1 00 0C */ addi r5, r1, 0xc +/* 8020EFB0 0020BF10 48 0F A5 B5 */ bl sub_80309564 +/* 8020EFB4 0020BF14 80 61 00 14 */ lwz r3, 0x14(r1) +/* 8020EFB8 0020BF18 80 81 00 10 */ lwz r4, 0x10(r1) +/* 8020EFBC 0020BF1C 80 BE 00 50 */ lwz r5, 0x50(r30) +/* 8020EFC0 0020BF20 48 0F A4 F1 */ bl sub_803094b0 +lbl_8020EFC4: +/* 8020EFC4 0020BF24 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8020EFC8 0020BF28 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8020EFCC 0020BF2C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8020EFD0 0020BF30 7C 08 03 A6 */ mtlr r0 +/* 8020EFD4 0020BF34 38 21 00 20 */ addi r1, r1, 0x20 +/* 8020EFD8 0020BF38 4E 80 00 20 */ blr + +.global SetScreenPositionX__12CGameOptionsFib +SetScreenPositionX__12CGameOptionsFib: +/* 8020EFDC 0020BF3C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8020EFE0 0020BF40 7C 08 02 A6 */ mflr r0 +/* 8020EFE4 0020BF44 90 01 00 24 */ stw r0, 0x24(r1) +/* 8020EFE8 0020BF48 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8020EFEC 0020BF4C 7C BF 2B 78 */ mr r31, r5 +/* 8020EFF0 0020BF50 38 AD 94 30 */ addi r5, r13, lbl_805A7FF0@sda21 +/* 8020EFF4 0020BF54 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8020EFF8 0020BF58 7C 7E 1B 78 */ mr r30, r3 +/* 8020EFFC 0020BF5C 38 6D 94 2C */ addi r3, r13, lbl_805A7FEC@sda21 +/* 8020F000 0020BF60 90 81 00 08 */ stw r4, 8(r1) +/* 8020F004 0020BF64 38 81 00 08 */ addi r4, r1, 8 +/* 8020F008 0020BF68 4B E4 B0 5D */ bl "Clamp__5CMathFRCiRCiRCi" +/* 8020F00C 0020BF6C 80 63 00 00 */ lwz r3, 0(r3) +/* 8020F010 0020BF70 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 8020F014 0020BF74 90 7E 00 4C */ stw r3, 0x4c(r30) +/* 8020F018 0020BF78 41 82 00 24 */ beq lbl_8020F03C +/* 8020F01C 0020BF7C 38 61 00 14 */ addi r3, r1, 0x14 +/* 8020F020 0020BF80 38 81 00 10 */ addi r4, r1, 0x10 +/* 8020F024 0020BF84 38 A1 00 0C */ addi r5, r1, 0xc +/* 8020F028 0020BF88 48 0F A5 3D */ bl sub_80309564 +/* 8020F02C 0020BF8C 80 61 00 14 */ lwz r3, 0x14(r1) +/* 8020F030 0020BF90 80 9E 00 4C */ lwz r4, 0x4c(r30) +/* 8020F034 0020BF94 80 A1 00 0C */ lwz r5, 0xc(r1) +/* 8020F038 0020BF98 48 0F A4 79 */ bl sub_803094b0 +lbl_8020F03C: +/* 8020F03C 0020BF9C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8020F040 0020BFA0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8020F044 0020BFA4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8020F048 0020BFA8 7C 08 03 A6 */ mtlr r0 +/* 8020F04C 0020BFAC 38 21 00 20 */ addi r1, r1, 0x20 +/* 8020F050 0020BFB0 4E 80 00 20 */ blr + +.global TuneScreenBrightness__12CGameOptionsFv +TuneScreenBrightness__12CGameOptionsFv: +/* 8020F054 0020BFB4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8020F058 0020BFB8 3C 00 43 30 */ lis r0, 0x4330 +/* 8020F05C 0020BFBC C8 62 B2 30 */ lfd f3, lbl_805ACF50@sda21(r2) +/* 8020F060 0020BFC0 80 63 00 48 */ lwz r3, 0x48(r3) +/* 8020F064 0020BFC4 90 01 00 08 */ stw r0, 8(r1) +/* 8020F068 0020BFC8 38 03 FF FC */ addi r0, r3, -4 +/* 8020F06C 0020BFCC C0 22 B2 40 */ lfs f1, lbl_805ACF60@sda21(r2) +/* 8020F070 0020BFD0 6C 00 80 00 */ xoris r0, r0, 0x8000 +/* 8020F074 0020BFD4 C0 82 B2 3C */ lfs f4, lbl_805ACF5C@sda21(r2) +/* 8020F078 0020BFD8 90 01 00 0C */ stw r0, 0xc(r1) +/* 8020F07C 0020BFDC C0 02 B2 38 */ lfs f0, lbl_805ACF58@sda21(r2) +/* 8020F080 0020BFE0 C8 41 00 08 */ lfd f2, 8(r1) +/* 8020F084 0020BFE4 EC 42 18 28 */ fsubs f2, f2, f3 +/* 8020F088 0020BFE8 EC 22 00 72 */ fmuls f1, f2, f1 +/* 8020F08C 0020BFEC EC 24 00 7A */ fmadds f1, f4, f1, f0 +/* 8020F090 0020BFF0 38 21 00 10 */ addi r1, r1, 0x10 +/* 8020F094 0020BFF4 4E 80 00 20 */ blr + +.global SetScreenBrightness__12CGameOptionsFib +SetScreenBrightness__12CGameOptionsFib: +/* 8020F098 0020BFF8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8020F09C 0020BFFC 7C 08 02 A6 */ mflr r0 +/* 8020F0A0 0020C000 90 01 00 24 */ stw r0, 0x24(r1) +/* 8020F0A4 0020C004 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8020F0A8 0020C008 7C BF 2B 78 */ mr r31, r5 +/* 8020F0AC 0020C00C 38 AD 94 28 */ addi r5, r13, lbl_805A7FE8@sda21 +/* 8020F0B0 0020C010 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8020F0B4 0020C014 7C 7E 1B 78 */ mr r30, r3 +/* 8020F0B8 0020C018 38 6D 94 24 */ addi r3, r13, lbl_805A7FE4@sda21 +/* 8020F0BC 0020C01C 90 81 00 08 */ stw r4, 8(r1) +/* 8020F0C0 0020C020 38 81 00 08 */ addi r4, r1, 8 +/* 8020F0C4 0020C024 4B E4 AF A1 */ bl "Clamp__5CMathFRCiRCiRCi" +/* 8020F0C8 0020C028 80 63 00 00 */ lwz r3, 0(r3) +/* 8020F0CC 0020C02C 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 8020F0D0 0020C030 90 7E 00 48 */ stw r3, 0x48(r30) +/* 8020F0D4 0020C034 41 82 00 10 */ beq lbl_8020F0E4 +/* 8020F0D8 0020C038 7F C3 F3 78 */ mr r3, r30 +/* 8020F0DC 0020C03C 4B FF FF 79 */ bl TuneScreenBrightness__12CGameOptionsFv +/* 8020F0E0 0020C040 D0 2D 9C 84 */ stfs f1, lbl_805A8844@sda21(r13) +lbl_8020F0E4: +/* 8020F0E4 0020C044 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8020F0E8 0020C048 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8020F0EC 0020C04C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8020F0F0 0020C050 7C 08 03 A6 */ mtlr r0 +/* 8020F0F4 0020C054 38 21 00 20 */ addi r1, r1, 0x20 +/* 8020F0F8 0020C058 4E 80 00 20 */ blr + +.global EnsureOptions__12CGameOptionsFv +EnsureOptions__12CGameOptionsFv: +/* 8020F0FC 0020C05C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8020F100 0020C060 7C 08 02 A6 */ mflr r0 +/* 8020F104 0020C064 38 A0 00 01 */ li r5, 1 +/* 8020F108 0020C068 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020F10C 0020C06C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8020F110 0020C070 7C 7F 1B 78 */ mr r31, r3 +/* 8020F114 0020C074 80 83 00 48 */ lwz r4, 0x48(r3) +/* 8020F118 0020C078 4B FF FF 81 */ bl SetScreenBrightness__12CGameOptionsFib +/* 8020F11C 0020C07C 80 9F 00 4C */ lwz r4, 0x4c(r31) +/* 8020F120 0020C080 7F E3 FB 78 */ mr r3, r31 +/* 8020F124 0020C084 38 A0 00 01 */ li r5, 1 +/* 8020F128 0020C088 4B FF FE B5 */ bl SetScreenPositionX__12CGameOptionsFib +/* 8020F12C 0020C08C 80 9F 00 50 */ lwz r4, 0x50(r31) +/* 8020F130 0020C090 7F E3 FB 78 */ mr r3, r31 +/* 8020F134 0020C094 38 A0 00 01 */ li r5, 1 +/* 8020F138 0020C098 4B FF FE 2D */ bl SetScreenPositionY__12CGameOptionsFib +/* 8020F13C 0020C09C 80 9F 00 54 */ lwz r4, 0x54(r31) +/* 8020F140 0020C0A0 7F E3 FB 78 */ mr r3, r31 +/* 8020F144 0020C0A4 38 A0 00 01 */ li r5, 1 +/* 8020F148 0020C0A8 4B FF FD A5 */ bl SetScreenStretch__12CGameOptionsFib +/* 8020F14C 0020C0AC 80 9F 00 58 */ lwz r4, 0x58(r31) +/* 8020F150 0020C0B0 7F E3 FB 78 */ mr r3, r31 +/* 8020F154 0020C0B4 38 A0 00 01 */ li r5, 1 +/* 8020F158 0020C0B8 4B FF FD 11 */ bl SetSfxVolume__12CGameOptionsFib +/* 8020F15C 0020C0BC 80 9F 00 5C */ lwz r4, 0x5c(r31) +/* 8020F160 0020C0C0 7F E3 FB 78 */ mr r3, r31 +/* 8020F164 0020C0C4 38 A0 00 01 */ li r5, 1 +/* 8020F168 0020C0C8 4B FF FC A1 */ bl SetMusicVolume__12CGameOptionsFib +/* 8020F16C 0020C0CC 80 9F 00 44 */ lwz r4, 0x44(r31) +/* 8020F170 0020C0D0 7F E3 FB 78 */ mr r3, r31 +/* 8020F174 0020C0D4 38 A0 00 01 */ li r5, 1 +/* 8020F178 0020C0D8 4B FF FC 31 */ bl SetSurroundMode__12CGameOptionsFQ29CAudioSys14ESurroundModesi +/* 8020F17C 0020C0DC 80 9F 00 64 */ lwz r4, 0x64(r31) +/* 8020F180 0020C0E0 7F E3 FB 78 */ mr r3, r31 +/* 8020F184 0020C0E4 4B FF FB B5 */ bl SetHelmetAlpha__12CGameOptionsFi +/* 8020F188 0020C0E8 88 1F 00 68 */ lbz r0, 0x68(r31) +/* 8020F18C 0020C0EC 7F E3 FB 78 */ mr r3, r31 +/* 8020F190 0020C0F0 54 04 CF FE */ rlwinm r4, r0, 0x19, 0x1f, 0x1f +/* 8020F194 0020C0F4 4B FF FB 95 */ bl SetHUDLag__12CGameOptionsFb +/* 8020F198 0020C0F8 88 1F 00 68 */ lbz r0, 0x68(r31) +/* 8020F19C 0020C0FC 7F E3 FB 78 */ mr r3, r31 +/* 8020F1A0 0020C100 54 04 D7 FE */ rlwinm r4, r0, 0x1a, 0x1f, 0x1f +/* 8020F1A4 0020C104 4B FF FB 65 */ bl SetInvertYAxis__12CGameOptionsFb +/* 8020F1A8 0020C108 88 1F 00 68 */ lbz r0, 0x68(r31) +/* 8020F1AC 0020C10C 7F E3 FB 78 */ mr r3, r31 +/* 8020F1B0 0020C110 54 04 DF FE */ rlwinm r4, r0, 0x1b, 0x1f, 0x1f +/* 8020F1B4 0020C114 4B FF FB 45 */ bl SetIsRumbleEnabled__12CGameOptionsFb +/* 8020F1B8 0020C118 88 1F 00 68 */ lbz r0, 0x68(r31) +/* 8020F1BC 0020C11C 7F E3 FB 78 */ mr r3, r31 +/* 8020F1C0 0020C120 54 04 EF FE */ rlwinm r4, r0, 0x1d, 0x1f, 0x1f +/* 8020F1C4 0020C124 4B FF FB 55 */ bl SetIsHintSystemEnabled__12CGameOptionsFb +/* 8020F1C8 0020C128 88 1F 00 68 */ lbz r0, 0x68(r31) +/* 8020F1CC 0020C12C 7F E3 FB 78 */ mr r3, r31 +/* 8020F1D0 0020C130 54 04 E7 FE */ rlwinm r4, r0, 0x1c, 0x1f, 0x1f +/* 8020F1D4 0020C134 4B FF FA E1 */ bl ToggleControls__12CGameOptionsFb +/* 8020F1D8 0020C138 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8020F1DC 0020C13C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8020F1E0 0020C140 7C 08 03 A6 */ mtlr r0 +/* 8020F1E4 0020C144 38 21 00 10 */ addi r1, r1, 0x10 +/* 8020F1E8 0020C148 4E 80 00 20 */ blr + +.global ResetToDefaults__12CGameOptionsFv +ResetToDefaults__12CGameOptionsFv: +/* 8020F1EC 0020C14C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8020F1F0 0020C150 7C 08 02 A6 */ mflr r0 +/* 8020F1F4 0020C154 38 C0 00 00 */ li r6, 0 +/* 8020F1F8 0020C158 38 A0 00 7F */ li r5, 0x7f +/* 8020F1FC 0020C15C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020F200 0020C160 38 00 00 04 */ li r0, 4 +/* 8020F204 0020C164 38 80 00 01 */ li r4, 1 +/* 8020F208 0020C168 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8020F20C 0020C16C 7C 7F 1B 78 */ mr r31, r3 +/* 8020F210 0020C170 90 03 00 48 */ stw r0, 0x48(r3) +/* 8020F214 0020C174 38 00 00 FF */ li r0, 0xff +/* 8020F218 0020C178 90 C3 00 4C */ stw r6, 0x4c(r3) +/* 8020F21C 0020C17C 90 C3 00 50 */ stw r6, 0x50(r3) +/* 8020F220 0020C180 90 C3 00 54 */ stw r6, 0x54(r3) +/* 8020F224 0020C184 90 A3 00 58 */ stw r5, 0x58(r3) +/* 8020F228 0020C188 90 A3 00 5C */ stw r5, 0x5c(r3) +/* 8020F22C 0020C18C 90 83 00 44 */ stw r4, 0x44(r3) +/* 8020F230 0020C190 90 03 00 60 */ stw r0, 0x60(r3) +/* 8020F234 0020C194 90 03 00 64 */ stw r0, 0x64(r3) +/* 8020F238 0020C198 88 03 00 68 */ lbz r0, 0x68(r3) +/* 8020F23C 0020C19C 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 8020F240 0020C1A0 98 03 00 68 */ stb r0, 0x68(r3) +/* 8020F244 0020C1A4 88 03 00 68 */ lbz r0, 0x68(r3) +/* 8020F248 0020C1A8 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19 +/* 8020F24C 0020C1AC 98 03 00 68 */ stb r0, 0x68(r3) +/* 8020F250 0020C1B0 88 03 00 68 */ lbz r0, 0x68(r3) +/* 8020F254 0020C1B4 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 8020F258 0020C1B8 98 03 00 68 */ stb r0, 0x68(r3) +/* 8020F25C 0020C1BC 88 03 00 68 */ lbz r0, 0x68(r3) +/* 8020F260 0020C1C0 50 C0 26 F6 */ rlwimi r0, r6, 4, 0x1b, 0x1b +/* 8020F264 0020C1C4 98 03 00 68 */ stb r0, 0x68(r3) +/* 8020F268 0020C1C8 88 03 00 68 */ lbz r0, 0x68(r3) +/* 8020F26C 0020C1CC 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c +/* 8020F270 0020C1D0 98 03 00 68 */ stb r0, 0x68(r3) +/* 8020F274 0020C1D4 48 00 06 B5 */ bl InitSoundMode__12CGameOptionsFi +/* 8020F278 0020C1D8 7F E3 FB 78 */ mr r3, r31 +/* 8020F27C 0020C1DC 4B FF FE 81 */ bl EnsureOptions__12CGameOptionsFv +/* 8020F280 0020C1E0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8020F284 0020C1E4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8020F288 0020C1E8 7C 08 03 A6 */ mtlr r0 +/* 8020F28C 0020C1EC 38 21 00 10 */ addi r1, r1, 0x10 +/* 8020F290 0020C1F0 4E 80 00 20 */ blr + +.global PutTo__12CGameOptionsFR16CMemoryStreamOut +PutTo__12CGameOptionsFR16CMemoryStreamOut: +/* 8020F294 0020C1F4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8020F298 0020C1F8 7C 08 02 A6 */ mflr r0 +/* 8020F29C 0020C1FC 90 01 00 24 */ stw r0, 0x24(r1) +/* 8020F2A0 0020C200 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8020F2A4 0020C204 7C 9F 23 78 */ mr r31, r4 +/* 8020F2A8 0020C208 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8020F2AC 0020C20C 7C 7E 1B 78 */ mr r30, r3 +/* 8020F2B0 0020C210 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8020F2B4 0020C214 3B A0 00 00 */ li r29, 0 +/* 8020F2B8 0020C218 48 00 00 1C */ b lbl_8020F2D4 +lbl_8020F2BC: +/* 8020F2BC 0020C21C 7C 9E EA 14 */ add r4, r30, r29 +/* 8020F2C0 0020C220 7F E3 FB 78 */ mr r3, r31 +/* 8020F2C4 0020C224 88 84 00 04 */ lbz r4, 4(r4) +/* 8020F2C8 0020C228 38 A0 00 08 */ li r5, 8 +/* 8020F2CC 0020C22C 48 13 00 F1 */ bl WriteBits__13COutputStreamFii +/* 8020F2D0 0020C230 3B BD 00 01 */ addi r29, r29, 1 +lbl_8020F2D4: +/* 8020F2D4 0020C234 80 1E 00 00 */ lwz r0, 0(r30) +/* 8020F2D8 0020C238 7C 1D 00 00 */ cmpw r29, r0 +/* 8020F2DC 0020C23C 41 80 FF E0 */ blt lbl_8020F2BC +/* 8020F2E0 0020C240 83 BE 00 44 */ lwz r29, 0x44(r30) +/* 8020F2E4 0020C244 38 60 00 02 */ li r3, 2 +/* 8020F2E8 0020C248 48 00 06 99 */ bl CalculateBits__Fi +/* 8020F2EC 0020C24C 7C 65 1B 78 */ mr r5, r3 +/* 8020F2F0 0020C250 7F E3 FB 78 */ mr r3, r31 +/* 8020F2F4 0020C254 7F A4 EB 78 */ mr r4, r29 +/* 8020F2F8 0020C258 48 13 00 C5 */ bl WriteBits__13COutputStreamFii +/* 8020F2FC 0020C25C 83 BE 00 48 */ lwz r29, 0x48(r30) +/* 8020F300 0020C260 38 60 00 08 */ li r3, 8 +/* 8020F304 0020C264 48 00 06 7D */ bl CalculateBits__Fi +/* 8020F308 0020C268 7C 65 1B 78 */ mr r5, r3 +/* 8020F30C 0020C26C 7F E3 FB 78 */ mr r3, r31 +/* 8020F310 0020C270 7F A4 EB 78 */ mr r4, r29 +/* 8020F314 0020C274 48 13 00 A9 */ bl WriteBits__13COutputStreamFii +/* 8020F318 0020C278 80 9E 00 4C */ lwz r4, 0x4c(r30) +/* 8020F31C 0020C27C 38 60 00 3C */ li r3, 0x3c +/* 8020F320 0020C280 3B A4 00 1E */ addi r29, r4, 0x1e +/* 8020F324 0020C284 48 00 06 5D */ bl CalculateBits__Fi +/* 8020F328 0020C288 7C 65 1B 78 */ mr r5, r3 +/* 8020F32C 0020C28C 7F E3 FB 78 */ mr r3, r31 +/* 8020F330 0020C290 7F A4 EB 78 */ mr r4, r29 +/* 8020F334 0020C294 48 13 00 89 */ bl WriteBits__13COutputStreamFii +/* 8020F338 0020C298 80 9E 00 50 */ lwz r4, 0x50(r30) +/* 8020F33C 0020C29C 38 60 00 3C */ li r3, 0x3c +/* 8020F340 0020C2A0 3B A4 00 1E */ addi r29, r4, 0x1e +/* 8020F344 0020C2A4 48 00 06 3D */ bl CalculateBits__Fi +/* 8020F348 0020C2A8 7C 65 1B 78 */ mr r5, r3 +/* 8020F34C 0020C2AC 7F E3 FB 78 */ mr r3, r31 +/* 8020F350 0020C2B0 7F A4 EB 78 */ mr r4, r29 +/* 8020F354 0020C2B4 48 13 00 69 */ bl WriteBits__13COutputStreamFii +/* 8020F358 0020C2B8 80 9E 00 54 */ lwz r4, 0x54(r30) +/* 8020F35C 0020C2BC 38 60 00 14 */ li r3, 0x14 +/* 8020F360 0020C2C0 3B A4 00 0A */ addi r29, r4, 0xa +/* 8020F364 0020C2C4 48 00 06 1D */ bl CalculateBits__Fi +/* 8020F368 0020C2C8 7C 65 1B 78 */ mr r5, r3 +/* 8020F36C 0020C2CC 7F E3 FB 78 */ mr r3, r31 +/* 8020F370 0020C2D0 7F A4 EB 78 */ mr r4, r29 +/* 8020F374 0020C2D4 48 13 00 49 */ bl WriteBits__13COutputStreamFii +/* 8020F378 0020C2D8 83 BE 00 58 */ lwz r29, 0x58(r30) +/* 8020F37C 0020C2DC 38 60 00 7F */ li r3, 0x7f +/* 8020F380 0020C2E0 48 00 06 01 */ bl CalculateBits__Fi +/* 8020F384 0020C2E4 7C 65 1B 78 */ mr r5, r3 +/* 8020F388 0020C2E8 7F E3 FB 78 */ mr r3, r31 +/* 8020F38C 0020C2EC 7F A4 EB 78 */ mr r4, r29 +/* 8020F390 0020C2F0 48 13 00 2D */ bl WriteBits__13COutputStreamFii +/* 8020F394 0020C2F4 83 BE 00 5C */ lwz r29, 0x5c(r30) +/* 8020F398 0020C2F8 38 60 00 7F */ li r3, 0x7f +/* 8020F39C 0020C2FC 48 00 05 E5 */ bl CalculateBits__Fi +/* 8020F3A0 0020C300 7C 65 1B 78 */ mr r5, r3 +/* 8020F3A4 0020C304 7F E3 FB 78 */ mr r3, r31 +/* 8020F3A8 0020C308 7F A4 EB 78 */ mr r4, r29 +/* 8020F3AC 0020C30C 48 13 00 11 */ bl WriteBits__13COutputStreamFii +/* 8020F3B0 0020C310 83 BE 00 60 */ lwz r29, 0x60(r30) +/* 8020F3B4 0020C314 38 60 00 FF */ li r3, 0xff +/* 8020F3B8 0020C318 48 00 05 C9 */ bl CalculateBits__Fi +/* 8020F3BC 0020C31C 7C 65 1B 78 */ mr r5, r3 +/* 8020F3C0 0020C320 7F E3 FB 78 */ mr r3, r31 +/* 8020F3C4 0020C324 7F A4 EB 78 */ mr r4, r29 +/* 8020F3C8 0020C328 48 12 FF F5 */ bl WriteBits__13COutputStreamFii +/* 8020F3CC 0020C32C 83 BE 00 64 */ lwz r29, 0x64(r30) +/* 8020F3D0 0020C330 38 60 00 FF */ li r3, 0xff +/* 8020F3D4 0020C334 48 00 05 AD */ bl CalculateBits__Fi +/* 8020F3D8 0020C338 7C 65 1B 78 */ mr r5, r3 +/* 8020F3DC 0020C33C 7F E3 FB 78 */ mr r3, r31 +/* 8020F3E0 0020C340 7F A4 EB 78 */ mr r4, r29 +/* 8020F3E4 0020C344 48 12 FF D9 */ bl WriteBits__13COutputStreamFii +/* 8020F3E8 0020C348 88 1E 00 68 */ lbz r0, 0x68(r30) +/* 8020F3EC 0020C34C 7F E3 FB 78 */ mr r3, r31 +/* 8020F3F0 0020C350 38 A0 00 01 */ li r5, 1 +/* 8020F3F4 0020C354 54 04 CF FE */ rlwinm r4, r0, 0x19, 0x1f, 0x1f +/* 8020F3F8 0020C358 7C 04 00 D0 */ neg r0, r4 +/* 8020F3FC 0020C35C 7C 00 23 78 */ or r0, r0, r4 +/* 8020F400 0020C360 54 04 0F FE */ srwi r4, r0, 0x1f +/* 8020F404 0020C364 48 12 FF B9 */ bl WriteBits__13COutputStreamFii +/* 8020F408 0020C368 88 1E 00 68 */ lbz r0, 0x68(r30) +/* 8020F40C 0020C36C 7F E3 FB 78 */ mr r3, r31 +/* 8020F410 0020C370 38 A0 00 01 */ li r5, 1 +/* 8020F414 0020C374 54 04 EF FE */ rlwinm r4, r0, 0x1d, 0x1f, 0x1f +/* 8020F418 0020C378 7C 04 00 D0 */ neg r0, r4 +/* 8020F41C 0020C37C 7C 00 23 78 */ or r0, r0, r4 +/* 8020F420 0020C380 54 04 0F FE */ srwi r4, r0, 0x1f +/* 8020F424 0020C384 48 12 FF 99 */ bl WriteBits__13COutputStreamFii +/* 8020F428 0020C388 88 1E 00 68 */ lbz r0, 0x68(r30) +/* 8020F42C 0020C38C 7F E3 FB 78 */ mr r3, r31 +/* 8020F430 0020C390 38 A0 00 01 */ li r5, 1 +/* 8020F434 0020C394 54 04 D7 FE */ rlwinm r4, r0, 0x1a, 0x1f, 0x1f +/* 8020F438 0020C398 7C 04 00 D0 */ neg r0, r4 +/* 8020F43C 0020C39C 7C 00 23 78 */ or r0, r0, r4 +/* 8020F440 0020C3A0 54 04 0F FE */ srwi r4, r0, 0x1f +/* 8020F444 0020C3A4 48 12 FF 79 */ bl WriteBits__13COutputStreamFii +/* 8020F448 0020C3A8 88 1E 00 68 */ lbz r0, 0x68(r30) +/* 8020F44C 0020C3AC 7F E3 FB 78 */ mr r3, r31 +/* 8020F450 0020C3B0 38 A0 00 01 */ li r5, 1 +/* 8020F454 0020C3B4 54 04 DF FE */ rlwinm r4, r0, 0x1b, 0x1f, 0x1f +/* 8020F458 0020C3B8 7C 04 00 D0 */ neg r0, r4 +/* 8020F45C 0020C3BC 7C 00 23 78 */ or r0, r0, r4 +/* 8020F460 0020C3C0 54 04 0F FE */ srwi r4, r0, 0x1f +/* 8020F464 0020C3C4 48 12 FF 59 */ bl WriteBits__13COutputStreamFii +/* 8020F468 0020C3C8 88 1E 00 68 */ lbz r0, 0x68(r30) +/* 8020F46C 0020C3CC 7F E3 FB 78 */ mr r3, r31 +/* 8020F470 0020C3D0 38 A0 00 01 */ li r5, 1 +/* 8020F474 0020C3D4 54 04 E7 FE */ rlwinm r4, r0, 0x1c, 0x1f, 0x1f +/* 8020F478 0020C3D8 7C 04 00 D0 */ neg r0, r4 +/* 8020F47C 0020C3DC 7C 00 23 78 */ or r0, r0, r4 +/* 8020F480 0020C3E0 54 04 0F FE */ srwi r4, r0, 0x1f +/* 8020F484 0020C3E4 48 12 FF 39 */ bl WriteBits__13COutputStreamFii +/* 8020F488 0020C3E8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8020F48C 0020C3EC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8020F490 0020C3F0 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8020F494 0020C3F4 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8020F498 0020C3F8 7C 08 03 A6 */ mtlr r0 +/* 8020F49C 0020C3FC 38 21 00 20 */ addi r1, r1, 0x20 +/* 8020F4A0 0020C400 4E 80 00 20 */ blr + +.global __ct__12CGameOptionsFR12CInputStream +__ct__12CGameOptionsFR12CInputStream: +/* 8020F4A4 0020C404 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8020F4A8 0020C408 7C 08 02 A6 */ mflr r0 +/* 8020F4AC 0020C40C 90 01 00 24 */ stw r0, 0x24(r1) +/* 8020F4B0 0020C410 38 00 00 08 */ li r0, 8 +/* 8020F4B4 0020C414 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8020F4B8 0020C418 7C 9F 23 78 */ mr r31, r4 +/* 8020F4BC 0020C41C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8020F4C0 0020C420 7C 7E 1B 78 */ mr r30, r3 +/* 8020F4C4 0020C424 38 60 00 40 */ li r3, 0x40 +/* 8020F4C8 0020C428 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8020F4CC 0020C42C 38 9E 00 04 */ addi r4, r30, 4 +/* 8020F4D0 0020C430 90 7E 00 00 */ stw r3, 0(r30) +/* 8020F4D4 0020C434 38 60 00 00 */ li r3, 0 +/* 8020F4D8 0020C438 7C 09 03 A6 */ mtctr r0 +lbl_8020F4DC: +/* 8020F4DC 0020C43C 28 04 00 00 */ cmplwi r4, 0 +/* 8020F4E0 0020C440 41 82 00 0C */ beq lbl_8020F4EC +/* 8020F4E4 0020C444 88 0D 94 21 */ lbz r0, lbl_805A7FE1@sda21(r13) +/* 8020F4E8 0020C448 98 04 00 00 */ stb r0, 0(r4) +lbl_8020F4EC: +/* 8020F4EC 0020C44C 34 84 00 01 */ addic. r4, r4, 1 +/* 8020F4F0 0020C450 41 82 00 0C */ beq lbl_8020F4FC +/* 8020F4F4 0020C454 88 0D 94 21 */ lbz r0, lbl_805A7FE1@sda21(r13) +/* 8020F4F8 0020C458 98 04 00 00 */ stb r0, 0(r4) +lbl_8020F4FC: +/* 8020F4FC 0020C45C 34 84 00 01 */ addic. r4, r4, 1 +/* 8020F500 0020C460 41 82 00 0C */ beq lbl_8020F50C +/* 8020F504 0020C464 88 0D 94 21 */ lbz r0, lbl_805A7FE1@sda21(r13) +/* 8020F508 0020C468 98 04 00 00 */ stb r0, 0(r4) +lbl_8020F50C: +/* 8020F50C 0020C46C 34 84 00 01 */ addic. r4, r4, 1 +/* 8020F510 0020C470 41 82 00 0C */ beq lbl_8020F51C +/* 8020F514 0020C474 88 0D 94 21 */ lbz r0, lbl_805A7FE1@sda21(r13) +/* 8020F518 0020C478 98 04 00 00 */ stb r0, 0(r4) +lbl_8020F51C: +/* 8020F51C 0020C47C 34 84 00 01 */ addic. r4, r4, 1 +/* 8020F520 0020C480 41 82 00 0C */ beq lbl_8020F52C +/* 8020F524 0020C484 88 0D 94 21 */ lbz r0, lbl_805A7FE1@sda21(r13) +/* 8020F528 0020C488 98 04 00 00 */ stb r0, 0(r4) +lbl_8020F52C: +/* 8020F52C 0020C48C 34 84 00 01 */ addic. r4, r4, 1 +/* 8020F530 0020C490 41 82 00 0C */ beq lbl_8020F53C +/* 8020F534 0020C494 88 0D 94 21 */ lbz r0, lbl_805A7FE1@sda21(r13) +/* 8020F538 0020C498 98 04 00 00 */ stb r0, 0(r4) +lbl_8020F53C: +/* 8020F53C 0020C49C 34 84 00 01 */ addic. r4, r4, 1 +/* 8020F540 0020C4A0 41 82 00 0C */ beq lbl_8020F54C +/* 8020F544 0020C4A4 88 0D 94 21 */ lbz r0, lbl_805A7FE1@sda21(r13) +/* 8020F548 0020C4A8 98 04 00 00 */ stb r0, 0(r4) +lbl_8020F54C: +/* 8020F54C 0020C4AC 34 84 00 01 */ addic. r4, r4, 1 +/* 8020F550 0020C4B0 41 82 00 0C */ beq lbl_8020F55C +/* 8020F554 0020C4B4 88 0D 94 21 */ lbz r0, lbl_805A7FE1@sda21(r13) +/* 8020F558 0020C4B8 98 04 00 00 */ stb r0, 0(r4) +lbl_8020F55C: +/* 8020F55C 0020C4BC 38 63 00 07 */ addi r3, r3, 7 +/* 8020F560 0020C4C0 38 84 00 01 */ addi r4, r4, 1 +/* 8020F564 0020C4C4 42 00 FF 78 */ bdnz lbl_8020F4DC +/* 8020F568 0020C4C8 38 C0 00 01 */ li r6, 1 +/* 8020F56C 0020C4CC 38 A0 00 04 */ li r5, 4 +/* 8020F570 0020C4D0 90 DE 00 44 */ stw r6, 0x44(r30) +/* 8020F574 0020C4D4 38 80 00 00 */ li r4, 0 +/* 8020F578 0020C4D8 38 60 00 7F */ li r3, 0x7f +/* 8020F57C 0020C4DC 38 00 00 FF */ li r0, 0xff +/* 8020F580 0020C4E0 90 BE 00 48 */ stw r5, 0x48(r30) +/* 8020F584 0020C4E4 3B A0 00 00 */ li r29, 0 +/* 8020F588 0020C4E8 90 9E 00 4C */ stw r4, 0x4c(r30) +/* 8020F58C 0020C4EC 90 9E 00 50 */ stw r4, 0x50(r30) +/* 8020F590 0020C4F0 90 9E 00 54 */ stw r4, 0x54(r30) +/* 8020F594 0020C4F4 90 7E 00 58 */ stw r3, 0x58(r30) +/* 8020F598 0020C4F8 90 7E 00 5C */ stw r3, 0x5c(r30) +/* 8020F59C 0020C4FC 90 1E 00 60 */ stw r0, 0x60(r30) +/* 8020F5A0 0020C500 90 1E 00 64 */ stw r0, 0x64(r30) +/* 8020F5A4 0020C504 88 1E 00 68 */ lbz r0, 0x68(r30) +/* 8020F5A8 0020C508 50 C0 3E 30 */ rlwimi r0, r6, 7, 0x18, 0x18 +/* 8020F5AC 0020C50C 98 1E 00 68 */ stb r0, 0x68(r30) +/* 8020F5B0 0020C510 88 1E 00 68 */ lbz r0, 0x68(r30) +/* 8020F5B4 0020C514 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 8020F5B8 0020C518 98 1E 00 68 */ stb r0, 0x68(r30) +/* 8020F5BC 0020C51C 88 1E 00 68 */ lbz r0, 0x68(r30) +/* 8020F5C0 0020C520 50 C0 2E B4 */ rlwimi r0, r6, 5, 0x1a, 0x1a +/* 8020F5C4 0020C524 98 1E 00 68 */ stb r0, 0x68(r30) +/* 8020F5C8 0020C528 88 1E 00 68 */ lbz r0, 0x68(r30) +/* 8020F5CC 0020C52C 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 8020F5D0 0020C530 98 1E 00 68 */ stb r0, 0x68(r30) +/* 8020F5D4 0020C534 88 1E 00 68 */ lbz r0, 0x68(r30) +/* 8020F5D8 0020C538 50 C0 1F 38 */ rlwimi r0, r6, 3, 0x1c, 0x1c +/* 8020F5DC 0020C53C 98 1E 00 68 */ stb r0, 0x68(r30) +/* 8020F5E0 0020C540 90 9E 00 70 */ stw r4, 0x70(r30) +/* 8020F5E4 0020C544 90 9E 00 74 */ stw r4, 0x74(r30) +/* 8020F5E8 0020C548 90 9E 00 78 */ stw r4, 0x78(r30) +/* 8020F5EC 0020C54C 48 00 00 1C */ b lbl_8020F608 +lbl_8020F5F0: +/* 8020F5F0 0020C550 7F E3 FB 78 */ mr r3, r31 +/* 8020F5F4 0020C554 38 80 00 08 */ li r4, 8 +/* 8020F5F8 0020C558 48 12 F7 41 */ bl ReadBits__12CInputStreamFi +/* 8020F5FC 0020C55C 7C 9E EA 14 */ add r4, r30, r29 +/* 8020F600 0020C560 3B BD 00 01 */ addi r29, r29, 1 +/* 8020F604 0020C564 98 64 00 04 */ stb r3, 4(r4) +lbl_8020F608: +/* 8020F608 0020C568 80 1E 00 00 */ lwz r0, 0(r30) +/* 8020F60C 0020C56C 7C 1D 00 00 */ cmpw r29, r0 +/* 8020F610 0020C570 41 80 FF E0 */ blt lbl_8020F5F0 +/* 8020F614 0020C574 38 60 00 02 */ li r3, 2 +/* 8020F618 0020C578 48 00 03 69 */ bl CalculateBits__Fi +/* 8020F61C 0020C57C 7C 64 1B 78 */ mr r4, r3 +/* 8020F620 0020C580 7F E3 FB 78 */ mr r3, r31 +/* 8020F624 0020C584 48 12 F7 15 */ bl ReadBits__12CInputStreamFi +/* 8020F628 0020C588 90 7E 00 44 */ stw r3, 0x44(r30) +/* 8020F62C 0020C58C 38 60 00 08 */ li r3, 8 +/* 8020F630 0020C590 48 00 03 51 */ bl CalculateBits__Fi +/* 8020F634 0020C594 7C 64 1B 78 */ mr r4, r3 +/* 8020F638 0020C598 7F E3 FB 78 */ mr r3, r31 +/* 8020F63C 0020C59C 48 12 F6 FD */ bl ReadBits__12CInputStreamFi +/* 8020F640 0020C5A0 90 7E 00 48 */ stw r3, 0x48(r30) +/* 8020F644 0020C5A4 38 60 00 3C */ li r3, 0x3c +/* 8020F648 0020C5A8 48 00 03 39 */ bl CalculateBits__Fi +/* 8020F64C 0020C5AC 7C 64 1B 78 */ mr r4, r3 +/* 8020F650 0020C5B0 7F E3 FB 78 */ mr r3, r31 +/* 8020F654 0020C5B4 48 12 F6 E5 */ bl ReadBits__12CInputStreamFi +/* 8020F658 0020C5B8 38 03 FF E2 */ addi r0, r3, -30 +/* 8020F65C 0020C5BC 38 60 00 3C */ li r3, 0x3c +/* 8020F660 0020C5C0 90 1E 00 4C */ stw r0, 0x4c(r30) +/* 8020F664 0020C5C4 48 00 03 1D */ bl CalculateBits__Fi +/* 8020F668 0020C5C8 7C 64 1B 78 */ mr r4, r3 +/* 8020F66C 0020C5CC 7F E3 FB 78 */ mr r3, r31 +/* 8020F670 0020C5D0 48 12 F6 C9 */ bl ReadBits__12CInputStreamFi +/* 8020F674 0020C5D4 38 03 FF E2 */ addi r0, r3, -30 +/* 8020F678 0020C5D8 38 60 00 14 */ li r3, 0x14 +/* 8020F67C 0020C5DC 90 1E 00 50 */ stw r0, 0x50(r30) +/* 8020F680 0020C5E0 48 00 03 01 */ bl CalculateBits__Fi +/* 8020F684 0020C5E4 7C 64 1B 78 */ mr r4, r3 +/* 8020F688 0020C5E8 7F E3 FB 78 */ mr r3, r31 +/* 8020F68C 0020C5EC 48 12 F6 AD */ bl ReadBits__12CInputStreamFi +/* 8020F690 0020C5F0 38 03 FF F6 */ addi r0, r3, -10 +/* 8020F694 0020C5F4 38 60 00 7F */ li r3, 0x7f +/* 8020F698 0020C5F8 90 1E 00 54 */ stw r0, 0x54(r30) +/* 8020F69C 0020C5FC 48 00 02 E5 */ bl CalculateBits__Fi +/* 8020F6A0 0020C600 7C 64 1B 78 */ mr r4, r3 +/* 8020F6A4 0020C604 7F E3 FB 78 */ mr r3, r31 +/* 8020F6A8 0020C608 48 12 F6 91 */ bl ReadBits__12CInputStreamFi +/* 8020F6AC 0020C60C 90 7E 00 58 */ stw r3, 0x58(r30) +/* 8020F6B0 0020C610 38 60 00 7F */ li r3, 0x7f +/* 8020F6B4 0020C614 48 00 02 CD */ bl CalculateBits__Fi +/* 8020F6B8 0020C618 7C 64 1B 78 */ mr r4, r3 +/* 8020F6BC 0020C61C 7F E3 FB 78 */ mr r3, r31 +/* 8020F6C0 0020C620 48 12 F6 79 */ bl ReadBits__12CInputStreamFi +/* 8020F6C4 0020C624 90 7E 00 5C */ stw r3, 0x5c(r30) +/* 8020F6C8 0020C628 38 60 00 FF */ li r3, 0xff +/* 8020F6CC 0020C62C 48 00 02 B5 */ bl CalculateBits__Fi +/* 8020F6D0 0020C630 7C 64 1B 78 */ mr r4, r3 +/* 8020F6D4 0020C634 7F E3 FB 78 */ mr r3, r31 +/* 8020F6D8 0020C638 48 12 F6 61 */ bl ReadBits__12CInputStreamFi +/* 8020F6DC 0020C63C 90 7E 00 60 */ stw r3, 0x60(r30) +/* 8020F6E0 0020C640 38 60 00 FF */ li r3, 0xff +/* 8020F6E4 0020C644 48 00 02 9D */ bl CalculateBits__Fi +/* 8020F6E8 0020C648 7C 64 1B 78 */ mr r4, r3 +/* 8020F6EC 0020C64C 7F E3 FB 78 */ mr r3, r31 +/* 8020F6F0 0020C650 48 12 F6 49 */ bl ReadBits__12CInputStreamFi +/* 8020F6F4 0020C654 90 7E 00 64 */ stw r3, 0x64(r30) +/* 8020F6F8 0020C658 7F E3 FB 78 */ mr r3, r31 +/* 8020F6FC 0020C65C 38 80 00 01 */ li r4, 1 +/* 8020F700 0020C660 48 12 F6 39 */ bl ReadBits__12CInputStreamFi +/* 8020F704 0020C664 7C 83 00 D0 */ neg r4, r3 +/* 8020F708 0020C668 88 1E 00 68 */ lbz r0, 0x68(r30) +/* 8020F70C 0020C66C 7C 84 1B 78 */ or r4, r4, r3 +/* 8020F710 0020C670 7F E3 FB 78 */ mr r3, r31 +/* 8020F714 0020C674 54 85 0F FE */ srwi r5, r4, 0x1f +/* 8020F718 0020C678 38 80 00 01 */ li r4, 1 +/* 8020F71C 0020C67C 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 8020F720 0020C680 98 1E 00 68 */ stb r0, 0x68(r30) +/* 8020F724 0020C684 48 12 F6 15 */ bl ReadBits__12CInputStreamFi +/* 8020F728 0020C688 7C 83 00 D0 */ neg r4, r3 +/* 8020F72C 0020C68C 88 1E 00 68 */ lbz r0, 0x68(r30) +/* 8020F730 0020C690 7C 84 1B 78 */ or r4, r4, r3 +/* 8020F734 0020C694 7F E3 FB 78 */ mr r3, r31 +/* 8020F738 0020C698 54 85 0F FE */ srwi r5, r4, 0x1f +/* 8020F73C 0020C69C 38 80 00 01 */ li r4, 1 +/* 8020F740 0020C6A0 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 8020F744 0020C6A4 98 1E 00 68 */ stb r0, 0x68(r30) +/* 8020F748 0020C6A8 48 12 F5 F1 */ bl ReadBits__12CInputStreamFi +/* 8020F74C 0020C6AC 7C 83 00 D0 */ neg r4, r3 +/* 8020F750 0020C6B0 88 1E 00 68 */ lbz r0, 0x68(r30) +/* 8020F754 0020C6B4 7C 84 1B 78 */ or r4, r4, r3 +/* 8020F758 0020C6B8 7F E3 FB 78 */ mr r3, r31 +/* 8020F75C 0020C6BC 54 85 0F FE */ srwi r5, r4, 0x1f +/* 8020F760 0020C6C0 38 80 00 01 */ li r4, 1 +/* 8020F764 0020C6C4 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 8020F768 0020C6C8 98 1E 00 68 */ stb r0, 0x68(r30) +/* 8020F76C 0020C6CC 48 12 F5 CD */ bl ReadBits__12CInputStreamFi +/* 8020F770 0020C6D0 7C 83 00 D0 */ neg r4, r3 +/* 8020F774 0020C6D4 88 1E 00 68 */ lbz r0, 0x68(r30) +/* 8020F778 0020C6D8 7C 84 1B 78 */ or r4, r4, r3 +/* 8020F77C 0020C6DC 7F E3 FB 78 */ mr r3, r31 +/* 8020F780 0020C6E0 54 85 0F FE */ srwi r5, r4, 0x1f +/* 8020F784 0020C6E4 38 80 00 01 */ li r4, 1 +/* 8020F788 0020C6E8 50 A0 2E B4 */ rlwimi r0, r5, 5, 0x1a, 0x1a +/* 8020F78C 0020C6EC 98 1E 00 68 */ stb r0, 0x68(r30) +/* 8020F790 0020C6F0 48 12 F5 A9 */ bl ReadBits__12CInputStreamFi +/* 8020F794 0020C6F4 7C 83 00 D0 */ neg r4, r3 +/* 8020F798 0020C6F8 88 1E 00 68 */ lbz r0, 0x68(r30) +/* 8020F79C 0020C6FC 7C 84 1B 78 */ or r4, r4, r3 +/* 8020F7A0 0020C700 7F C3 F3 78 */ mr r3, r30 +/* 8020F7A4 0020C704 50 80 2E F6 */ rlwimi r0, r4, 5, 0x1b, 0x1b +/* 8020F7A8 0020C708 98 1E 00 68 */ stb r0, 0x68(r30) +/* 8020F7AC 0020C70C 48 00 01 7D */ bl InitSoundMode__12CGameOptionsFi +/* 8020F7B0 0020C710 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8020F7B4 0020C714 7F C3 F3 78 */ mr r3, r30 +/* 8020F7B8 0020C718 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8020F7BC 0020C71C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8020F7C0 0020C720 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8020F7C4 0020C724 7C 08 03 A6 */ mtlr r0 +/* 8020F7C8 0020C728 38 21 00 20 */ addi r1, r1, 0x20 +/* 8020F7CC 0020C72C 4E 80 00 20 */ blr + +.global __ct__12CGameOptionsFv +__ct__12CGameOptionsFv: +/* 8020F7D0 0020C730 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8020F7D4 0020C734 7C 08 02 A6 */ mflr r0 +/* 8020F7D8 0020C738 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020F7DC 0020C73C 38 00 00 08 */ li r0, 8 +/* 8020F7E0 0020C740 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8020F7E4 0020C744 7C 7F 1B 78 */ mr r31, r3 +/* 8020F7E8 0020C748 38 60 00 40 */ li r3, 0x40 +/* 8020F7EC 0020C74C 90 7F 00 00 */ stw r3, 0(r31) +/* 8020F7F0 0020C750 38 9F 00 04 */ addi r4, r31, 4 +/* 8020F7F4 0020C754 38 60 00 00 */ li r3, 0 +/* 8020F7F8 0020C758 7C 09 03 A6 */ mtctr r0 +lbl_8020F7FC: +/* 8020F7FC 0020C75C 28 04 00 00 */ cmplwi r4, 0 +/* 8020F800 0020C760 41 82 00 0C */ beq lbl_8020F80C +/* 8020F804 0020C764 88 0D 94 20 */ lbz r0, lbl_805A7FE0@sda21(r13) +/* 8020F808 0020C768 98 04 00 00 */ stb r0, 0(r4) +lbl_8020F80C: +/* 8020F80C 0020C76C 34 84 00 01 */ addic. r4, r4, 1 +/* 8020F810 0020C770 41 82 00 0C */ beq lbl_8020F81C +/* 8020F814 0020C774 88 0D 94 20 */ lbz r0, lbl_805A7FE0@sda21(r13) +/* 8020F818 0020C778 98 04 00 00 */ stb r0, 0(r4) +lbl_8020F81C: +/* 8020F81C 0020C77C 34 84 00 01 */ addic. r4, r4, 1 +/* 8020F820 0020C780 41 82 00 0C */ beq lbl_8020F82C +/* 8020F824 0020C784 88 0D 94 20 */ lbz r0, lbl_805A7FE0@sda21(r13) +/* 8020F828 0020C788 98 04 00 00 */ stb r0, 0(r4) +lbl_8020F82C: +/* 8020F82C 0020C78C 34 84 00 01 */ addic. r4, r4, 1 +/* 8020F830 0020C790 41 82 00 0C */ beq lbl_8020F83C +/* 8020F834 0020C794 88 0D 94 20 */ lbz r0, lbl_805A7FE0@sda21(r13) +/* 8020F838 0020C798 98 04 00 00 */ stb r0, 0(r4) +lbl_8020F83C: +/* 8020F83C 0020C79C 34 84 00 01 */ addic. r4, r4, 1 +/* 8020F840 0020C7A0 41 82 00 0C */ beq lbl_8020F84C +/* 8020F844 0020C7A4 88 0D 94 20 */ lbz r0, lbl_805A7FE0@sda21(r13) +/* 8020F848 0020C7A8 98 04 00 00 */ stb r0, 0(r4) +lbl_8020F84C: +/* 8020F84C 0020C7AC 34 84 00 01 */ addic. r4, r4, 1 +/* 8020F850 0020C7B0 41 82 00 0C */ beq lbl_8020F85C +/* 8020F854 0020C7B4 88 0D 94 20 */ lbz r0, lbl_805A7FE0@sda21(r13) +/* 8020F858 0020C7B8 98 04 00 00 */ stb r0, 0(r4) +lbl_8020F85C: +/* 8020F85C 0020C7BC 34 84 00 01 */ addic. r4, r4, 1 +/* 8020F860 0020C7C0 41 82 00 0C */ beq lbl_8020F86C +/* 8020F864 0020C7C4 88 0D 94 20 */ lbz r0, lbl_805A7FE0@sda21(r13) +/* 8020F868 0020C7C8 98 04 00 00 */ stb r0, 0(r4) +lbl_8020F86C: +/* 8020F86C 0020C7CC 34 84 00 01 */ addic. r4, r4, 1 +/* 8020F870 0020C7D0 41 82 00 0C */ beq lbl_8020F87C +/* 8020F874 0020C7D4 88 0D 94 20 */ lbz r0, lbl_805A7FE0@sda21(r13) +/* 8020F878 0020C7D8 98 04 00 00 */ stb r0, 0(r4) +lbl_8020F87C: +/* 8020F87C 0020C7DC 38 63 00 07 */ addi r3, r3, 7 +/* 8020F880 0020C7E0 38 84 00 01 */ addi r4, r4, 1 +/* 8020F884 0020C7E4 42 00 FF 78 */ bdnz lbl_8020F7FC +/* 8020F888 0020C7E8 38 C0 00 01 */ li r6, 1 +/* 8020F88C 0020C7EC 38 60 00 04 */ li r3, 4 +/* 8020F890 0020C7F0 90 DF 00 44 */ stw r6, 0x44(r31) +/* 8020F894 0020C7F4 38 A0 00 00 */ li r5, 0 +/* 8020F898 0020C7F8 38 80 00 7F */ li r4, 0x7f +/* 8020F89C 0020C7FC 38 00 00 FF */ li r0, 0xff +/* 8020F8A0 0020C800 90 7F 00 48 */ stw r3, 0x48(r31) +/* 8020F8A4 0020C804 7F E3 FB 78 */ mr r3, r31 +/* 8020F8A8 0020C808 90 BF 00 4C */ stw r5, 0x4c(r31) +/* 8020F8AC 0020C80C 90 BF 00 50 */ stw r5, 0x50(r31) +/* 8020F8B0 0020C810 90 BF 00 54 */ stw r5, 0x54(r31) +/* 8020F8B4 0020C814 90 9F 00 58 */ stw r4, 0x58(r31) +/* 8020F8B8 0020C818 90 9F 00 5C */ stw r4, 0x5c(r31) +/* 8020F8BC 0020C81C 90 1F 00 60 */ stw r0, 0x60(r31) +/* 8020F8C0 0020C820 90 1F 00 64 */ stw r0, 0x64(r31) +/* 8020F8C4 0020C824 88 1F 00 68 */ lbz r0, 0x68(r31) +/* 8020F8C8 0020C828 50 C0 3E 30 */ rlwimi r0, r6, 7, 0x18, 0x18 +/* 8020F8CC 0020C82C 98 1F 00 68 */ stb r0, 0x68(r31) +/* 8020F8D0 0020C830 88 1F 00 68 */ lbz r0, 0x68(r31) +/* 8020F8D4 0020C834 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 8020F8D8 0020C838 98 1F 00 68 */ stb r0, 0x68(r31) +/* 8020F8DC 0020C83C 88 1F 00 68 */ lbz r0, 0x68(r31) +/* 8020F8E0 0020C840 50 C0 2E B4 */ rlwimi r0, r6, 5, 0x1a, 0x1a +/* 8020F8E4 0020C844 98 1F 00 68 */ stb r0, 0x68(r31) +/* 8020F8E8 0020C848 88 1F 00 68 */ lbz r0, 0x68(r31) +/* 8020F8EC 0020C84C 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 8020F8F0 0020C850 98 1F 00 68 */ stb r0, 0x68(r31) +/* 8020F8F4 0020C854 88 1F 00 68 */ lbz r0, 0x68(r31) +/* 8020F8F8 0020C858 50 C0 1F 38 */ rlwimi r0, r6, 3, 0x1c, 0x1c +/* 8020F8FC 0020C85C 98 1F 00 68 */ stb r0, 0x68(r31) +/* 8020F900 0020C860 90 BF 00 70 */ stw r5, 0x70(r31) +/* 8020F904 0020C864 90 BF 00 74 */ stw r5, 0x74(r31) +/* 8020F908 0020C868 90 BF 00 78 */ stw r5, 0x78(r31) +/* 8020F90C 0020C86C 48 00 00 1D */ bl InitSoundMode__12CGameOptionsFi +/* 8020F910 0020C870 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8020F914 0020C874 7F E3 FB 78 */ mr r3, r31 +/* 8020F918 0020C878 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8020F91C 0020C87C 7C 08 03 A6 */ mtlr r0 +/* 8020F920 0020C880 38 21 00 10 */ addi r1, r1, 0x10 +/* 8020F924 0020C884 4E 80 00 20 */ blr + +.global InitSoundMode__12CGameOptionsFi +InitSoundMode__12CGameOptionsFi: +/* 8020F928 0020C888 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8020F92C 0020C88C 7C 08 02 A6 */ mflr r0 +/* 8020F930 0020C890 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020F934 0020C894 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8020F938 0020C898 7C 7F 1B 78 */ mr r31, r3 +/* 8020F93C 0020C89C 48 17 46 D5 */ bl OSGetSoundMode +/* 8020F940 0020C8A0 28 03 00 00 */ cmplwi r3, 0 +/* 8020F944 0020C8A4 40 82 00 10 */ bne lbl_8020F954 +/* 8020F948 0020C8A8 38 00 00 00 */ li r0, 0 +/* 8020F94C 0020C8AC 90 1F 00 44 */ stw r0, 0x44(r31) +/* 8020F950 0020C8B0 48 00 00 1C */ b lbl_8020F96C +lbl_8020F954: +/* 8020F954 0020C8B4 80 7F 00 44 */ lwz r3, 0x44(r31) +/* 8020F958 0020C8B8 38 00 00 01 */ li r0, 1 +/* 8020F95C 0020C8BC 2C 03 00 00 */ cmpwi r3, 0 +/* 8020F960 0020C8C0 41 82 00 08 */ beq lbl_8020F968 +/* 8020F964 0020C8C4 7C 60 1B 78 */ mr r0, r3 +lbl_8020F968: +/* 8020F968 0020C8C8 90 1F 00 44 */ stw r0, 0x44(r31) +lbl_8020F96C: +/* 8020F96C 0020C8CC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8020F970 0020C8D0 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8020F974 0020C8D4 7C 08 03 A6 */ mtlr r0 +/* 8020F978 0020C8D8 38 21 00 10 */ addi r1, r1, 0x10 +/* 8020F97C 0020C8DC 4E 80 00 20 */ blr + +.global CalculateBits__Fi +CalculateBits__Fi: +/* 8020F980 0020C8E0 38 80 00 00 */ li r4, 0 +/* 8020F984 0020C8E4 48 00 00 0C */ b lbl_8020F990 +lbl_8020F988: +/* 8020F988 0020C8E8 54 63 F8 7E */ srwi r3, r3, 1 +/* 8020F98C 0020C8EC 38 84 00 01 */ addi r4, r4, 1 +lbl_8020F990: +/* 8020F990 0020C8F0 28 03 00 00 */ cmplwi r3, 0 +/* 8020F994 0020C8F4 40 82 FF F4 */ bne lbl_8020F988 +/* 8020F998 0020C8F8 7C 83 23 78 */ mr r3, r4 +/* 8020F99C 0020C8FC 4E 80 00 20 */ blr + + +.global sub_8020f9a0 +sub_8020f9a0: +/* 8020F9A0 0020C900 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 8020F9A4 0020C904 7C 08 02 A6 */ mflr r0 +/* 8020F9A8 0020C908 90 01 00 54 */ stw r0, 0x54(r1) +/* 8020F9AC 0020C90C 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 8020F9B0 0020C910 7C BF 2B 78 */ mr r31, r5 +/* 8020F9B4 0020C914 93 C1 00 48 */ stw r30, 0x48(r1) +/* 8020F9B8 0020C918 7C 9E 23 78 */ mr r30, r4 +/* 8020F9BC 0020C91C 93 A1 00 44 */ stw r29, 0x44(r1) +/* 8020F9C0 0020C920 7C 7D 1B 78 */ mr r29, r3 +/* 8020F9C4 0020C924 93 81 00 40 */ stw r28, 0x40(r1) +/* 8020F9C8 0020C928 80 63 00 00 */ lwz r3, 0(r3) +/* 8020F9CC 0020C92C 80 A4 00 00 */ lwz r5, 0(r4) +/* 8020F9D0 0020C930 7C 03 28 50 */ subf r0, r3, r5 +/* 8020F9D4 0020C934 7C 00 1E 70 */ srawi r0, r0, 3 +/* 8020F9D8 0020C938 7C 80 01 94 */ addze r4, r0 +/* 8020F9DC 0020C93C 2C 04 00 01 */ cmpwi r4, 1 +/* 8020F9E0 0020C940 40 81 01 64 */ ble lbl_8020FB44 +/* 8020F9E4 0020C944 2C 04 00 14 */ cmpwi r4, 0x14 +/* 8020F9E8 0020C948 41 81 00 30 */ bgt lbl_8020FA18 +/* 8020F9EC 0020C94C 88 FF 00 00 */ lbz r7, 0(r31) +/* 8020F9F0 0020C950 38 61 00 34 */ addi r3, r1, 0x34 +/* 8020F9F4 0020C954 80 DE 00 00 */ lwz r6, 0(r30) +/* 8020F9F8 0020C958 38 81 00 30 */ addi r4, r1, 0x30 +/* 8020F9FC 0020C95C 80 1D 00 00 */ lwz r0, 0(r29) +/* 8020FA00 0020C960 38 A1 00 14 */ addi r5, r1, 0x14 +/* 8020FA04 0020C964 98 E1 00 14 */ stb r7, 0x14(r1) +/* 8020FA08 0020C968 90 C1 00 30 */ stw r6, 0x30(r1) +/* 8020FA0C 0020C96C 90 01 00 34 */ stw r0, 0x34(r1) +/* 8020FA10 0020C970 48 00 01 CD */ bl sub_8020fbdc +/* 8020FA14 0020C974 48 00 01 30 */ b lbl_8020FB44 +lbl_8020FA18: +/* 8020FA18 0020C978 54 80 0F FE */ srwi r0, r4, 0x1f +/* 8020FA1C 0020C97C 38 A5 FF F8 */ addi r5, r5, -8 +/* 8020FA20 0020C980 7C 80 22 14 */ add r4, r0, r4 +/* 8020FA24 0020C984 88 1F 00 00 */ lbz r0, 0(r31) +/* 8020FA28 0020C988 7C 84 0E 70 */ srawi r4, r4, 1 +/* 8020FA2C 0020C98C 90 A1 00 3C */ stw r5, 0x3c(r1) +/* 8020FA30 0020C990 54 84 18 38 */ slwi r4, r4, 3 +/* 8020FA34 0020C994 38 C1 00 10 */ addi r6, r1, 0x10 +/* 8020FA38 0020C998 7F 83 22 14 */ add r28, r3, r4 +/* 8020FA3C 0020C99C 98 01 00 10 */ stb r0, 0x10(r1) +/* 8020FA40 0020C9A0 7F 84 E3 78 */ mr r4, r28 +/* 8020FA44 0020C9A4 48 00 01 21 */ bl sub_8020fb64 +/* 8020FA48 0020C9A8 80 9D 00 00 */ lwz r4, 0(r29) +/* 8020FA4C 0020C9AC 80 61 00 3C */ lwz r3, 0x3c(r1) +/* 8020FA50 0020C9B0 38 84 00 08 */ addi r4, r4, 8 +/* 8020FA54 0020C9B4 80 FC 00 00 */ lwz r7, 0(r28) +/* 8020FA58 0020C9B8 38 03 FF F8 */ addi r0, r3, -8 +/* 8020FA5C 0020C9BC 90 81 00 38 */ stw r4, 0x38(r1) +/* 8020FA60 0020C9C0 90 01 00 3C */ stw r0, 0x3c(r1) +/* 8020FA64 0020C9C4 48 00 00 10 */ b lbl_8020FA74 +lbl_8020FA68: +/* 8020FA68 0020C9C8 80 61 00 38 */ lwz r3, 0x38(r1) +/* 8020FA6C 0020C9CC 38 03 00 08 */ addi r0, r3, 8 +/* 8020FA70 0020C9D0 90 01 00 38 */ stw r0, 0x38(r1) +lbl_8020FA74: +/* 8020FA74 0020C9D4 80 61 00 38 */ lwz r3, 0x38(r1) +/* 8020FA78 0020C9D8 80 03 00 00 */ lwz r0, 0(r3) +/* 8020FA7C 0020C9DC 7C 00 38 40 */ cmplw r0, r7 +/* 8020FA80 0020C9E0 41 80 FF E8 */ blt lbl_8020FA68 +/* 8020FA84 0020C9E4 48 00 00 10 */ b lbl_8020FA94 +lbl_8020FA88: +/* 8020FA88 0020C9E8 80 61 00 3C */ lwz r3, 0x3c(r1) +/* 8020FA8C 0020C9EC 38 03 FF F8 */ addi r0, r3, -8 +/* 8020FA90 0020C9F0 90 01 00 3C */ stw r0, 0x3c(r1) +lbl_8020FA94: +/* 8020FA94 0020C9F4 80 61 00 3C */ lwz r3, 0x3c(r1) +/* 8020FA98 0020C9F8 80 03 00 00 */ lwz r0, 0(r3) +/* 8020FA9C 0020C9FC 7C 07 00 40 */ cmplw r7, r0 +/* 8020FAA0 0020CA00 41 80 FF E8 */ blt lbl_8020FA88 +/* 8020FAA4 0020CA04 80 01 00 38 */ lwz r0, 0x38(r1) +/* 8020FAA8 0020CA08 7C 00 18 40 */ cmplw r0, r3 +/* 8020FAAC 0020CA0C 40 80 00 48 */ bge lbl_8020FAF4 +/* 8020FAB0 0020CA10 80 A1 00 38 */ lwz r5, 0x38(r1) +/* 8020FAB4 0020CA14 80 C1 00 3C */ lwz r6, 0x3c(r1) +/* 8020FAB8 0020CA18 81 05 00 00 */ lwz r8, 0(r5) +/* 8020FABC 0020CA1C 38 65 00 08 */ addi r3, r5, 8 +/* 8020FAC0 0020CA20 81 25 00 04 */ lwz r9, 4(r5) +/* 8020FAC4 0020CA24 38 06 FF F8 */ addi r0, r6, -8 +/* 8020FAC8 0020CA28 80 86 00 00 */ lwz r4, 0(r6) +/* 8020FACC 0020CA2C 90 C1 00 28 */ stw r6, 0x28(r1) +/* 8020FAD0 0020CA30 90 85 00 00 */ stw r4, 0(r5) +/* 8020FAD4 0020CA34 80 86 00 04 */ lwz r4, 4(r6) +/* 8020FAD8 0020CA38 90 A1 00 2C */ stw r5, 0x2c(r1) +/* 8020FADC 0020CA3C 90 85 00 04 */ stw r4, 4(r5) +/* 8020FAE0 0020CA40 91 06 00 00 */ stw r8, 0(r6) +/* 8020FAE4 0020CA44 91 26 00 04 */ stw r9, 4(r6) +/* 8020FAE8 0020CA48 90 61 00 38 */ stw r3, 0x38(r1) +/* 8020FAEC 0020CA4C 90 01 00 3C */ stw r0, 0x3c(r1) +/* 8020FAF0 0020CA50 4B FF FF 84 */ b lbl_8020FA74 +lbl_8020FAF4: +/* 8020FAF4 0020CA54 88 FF 00 00 */ lbz r7, 0(r31) +/* 8020FAF8 0020CA58 38 61 00 24 */ addi r3, r1, 0x24 +/* 8020FAFC 0020CA5C 80 C1 00 38 */ lwz r6, 0x38(r1) +/* 8020FB00 0020CA60 38 81 00 20 */ addi r4, r1, 0x20 +/* 8020FB04 0020CA64 80 1D 00 00 */ lwz r0, 0(r29) +/* 8020FB08 0020CA68 38 A1 00 0C */ addi r5, r1, 0xc +/* 8020FB0C 0020CA6C 98 E1 00 0C */ stb r7, 0xc(r1) +/* 8020FB10 0020CA70 90 C1 00 20 */ stw r6, 0x20(r1) +/* 8020FB14 0020CA74 90 01 00 24 */ stw r0, 0x24(r1) +/* 8020FB18 0020CA78 4B FF FE 89 */ bl sub_8020f9a0 +/* 8020FB1C 0020CA7C 88 FF 00 00 */ lbz r7, 0(r31) +/* 8020FB20 0020CA80 38 61 00 1C */ addi r3, r1, 0x1c +/* 8020FB24 0020CA84 80 DE 00 00 */ lwz r6, 0(r30) +/* 8020FB28 0020CA88 38 81 00 18 */ addi r4, r1, 0x18 +/* 8020FB2C 0020CA8C 80 01 00 38 */ lwz r0, 0x38(r1) +/* 8020FB30 0020CA90 38 A1 00 08 */ addi r5, r1, 8 +/* 8020FB34 0020CA94 98 E1 00 08 */ stb r7, 8(r1) +/* 8020FB38 0020CA98 90 C1 00 18 */ stw r6, 0x18(r1) +/* 8020FB3C 0020CA9C 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8020FB40 0020CAA0 4B FF FE 61 */ bl sub_8020f9a0 +lbl_8020FB44: +/* 8020FB44 0020CAA4 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8020FB48 0020CAA8 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 8020FB4C 0020CAAC 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 8020FB50 0020CAB0 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 8020FB54 0020CAB4 83 81 00 40 */ lwz r28, 0x40(r1) +/* 8020FB58 0020CAB8 7C 08 03 A6 */ mtlr r0 +/* 8020FB5C 0020CABC 38 21 00 50 */ addi r1, r1, 0x50 +/* 8020FB60 0020CAC0 4E 80 00 20 */ blr + +.global sub_8020fb64 +sub_8020fb64: +/* 8020FB64 0020CAC4 80 04 00 00 */ lwz r0, 0(r4) +/* 8020FB68 0020CAC8 80 E3 00 00 */ lwz r7, 0(r3) +/* 8020FB6C 0020CACC 7C 00 38 40 */ cmplw r0, r7 +/* 8020FB70 0020CAD0 40 80 00 1C */ bge lbl_8020FB8C +/* 8020FB74 0020CAD4 80 C3 00 04 */ lwz r6, 4(r3) +/* 8020FB78 0020CAD8 90 03 00 00 */ stw r0, 0(r3) +/* 8020FB7C 0020CADC 80 04 00 04 */ lwz r0, 4(r4) +/* 8020FB80 0020CAE0 90 03 00 04 */ stw r0, 4(r3) +/* 8020FB84 0020CAE4 90 E4 00 00 */ stw r7, 0(r4) +/* 8020FB88 0020CAE8 90 C4 00 04 */ stw r6, 4(r4) +lbl_8020FB8C: +/* 8020FB8C 0020CAEC 80 E5 00 00 */ lwz r7, 0(r5) +/* 8020FB90 0020CAF0 80 04 00 00 */ lwz r0, 0(r4) +/* 8020FB94 0020CAF4 7C 07 00 40 */ cmplw r7, r0 +/* 8020FB98 0020CAF8 4C 80 00 20 */ bgelr +/* 8020FB9C 0020CAFC 80 C5 00 04 */ lwz r6, 4(r5) +/* 8020FBA0 0020CB00 90 05 00 00 */ stw r0, 0(r5) +/* 8020FBA4 0020CB04 80 04 00 04 */ lwz r0, 4(r4) +/* 8020FBA8 0020CB08 90 05 00 04 */ stw r0, 4(r5) +/* 8020FBAC 0020CB0C 80 03 00 00 */ lwz r0, 0(r3) +/* 8020FBB0 0020CB10 7C 07 00 40 */ cmplw r7, r0 +/* 8020FBB4 0020CB14 40 80 00 1C */ bge lbl_8020FBD0 +/* 8020FBB8 0020CB18 90 04 00 00 */ stw r0, 0(r4) +/* 8020FBBC 0020CB1C 80 03 00 04 */ lwz r0, 4(r3) +/* 8020FBC0 0020CB20 90 04 00 04 */ stw r0, 4(r4) +/* 8020FBC4 0020CB24 90 E3 00 00 */ stw r7, 0(r3) +/* 8020FBC8 0020CB28 90 C3 00 04 */ stw r6, 4(r3) +/* 8020FBCC 0020CB2C 4E 80 00 20 */ blr +lbl_8020FBD0: +/* 8020FBD0 0020CB30 90 E4 00 00 */ stw r7, 0(r4) +/* 8020FBD4 0020CB34 90 C4 00 04 */ stw r6, 4(r4) +/* 8020FBD8 0020CB38 4E 80 00 20 */ blr + +.global sub_8020fbdc +sub_8020fbdc: +/* 8020FBDC 0020CB3C 80 A3 00 00 */ lwz r5, 0(r3) +/* 8020FBE0 0020CB40 38 A5 00 08 */ addi r5, r5, 8 +/* 8020FBE4 0020CB44 48 00 00 54 */ b lbl_8020FC38 +lbl_8020FBE8: +/* 8020FBE8 0020CB48 80 C5 00 00 */ lwz r6, 0(r5) +/* 8020FBEC 0020CB4C 7C A9 2B 78 */ mr r9, r5 +/* 8020FBF0 0020CB50 80 E5 00 04 */ lwz r7, 4(r5) +/* 8020FBF4 0020CB54 39 05 FF F8 */ addi r8, r5, -8 +/* 8020FBF8 0020CB58 48 00 00 1C */ b lbl_8020FC14 +lbl_8020FBFC: +/* 8020FBFC 0020CB5C 80 08 00 00 */ lwz r0, 0(r8) +/* 8020FC00 0020CB60 90 09 00 00 */ stw r0, 0(r9) +/* 8020FC04 0020CB64 80 08 00 04 */ lwz r0, 4(r8) +/* 8020FC08 0020CB68 39 08 FF F8 */ addi r8, r8, -8 +/* 8020FC0C 0020CB6C 90 09 00 04 */ stw r0, 4(r9) +/* 8020FC10 0020CB70 39 29 FF F8 */ addi r9, r9, -8 +lbl_8020FC14: +/* 8020FC14 0020CB74 80 03 00 00 */ lwz r0, 0(r3) +/* 8020FC18 0020CB78 7C 00 48 40 */ cmplw r0, r9 +/* 8020FC1C 0020CB7C 40 80 00 10 */ bge lbl_8020FC2C +/* 8020FC20 0020CB80 80 08 00 00 */ lwz r0, 0(r8) +/* 8020FC24 0020CB84 7C 06 00 40 */ cmplw r6, r0 +/* 8020FC28 0020CB88 41 80 FF D4 */ blt lbl_8020FBFC +lbl_8020FC2C: +/* 8020FC2C 0020CB8C 90 C9 00 00 */ stw r6, 0(r9) +/* 8020FC30 0020CB90 38 A5 00 08 */ addi r5, r5, 8 +/* 8020FC34 0020CB94 90 E9 00 04 */ stw r7, 4(r9) +lbl_8020FC38: +/* 8020FC38 0020CB98 80 04 00 00 */ lwz r0, 0(r4) +/* 8020FC3C 0020CB9C 7C 05 00 40 */ cmplw r5, r0 +/* 8020FC40 0020CBA0 41 80 FF A8 */ blt lbl_8020FBE8 +/* 8020FC44 0020CBA4 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Player/CGameState.s b/asm/Kyoto_CWD/Player/CGameState.s new file mode 100644 index 00000000..72a4be7a --- /dev/null +++ b/asm/Kyoto_CWD/Player/CGameState.s @@ -0,0 +1,3263 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global SetDeferPowerupInit__10CGameStateFb +SetDeferPowerupInit__10CGameStateFb: +/* 801D389C 001D07FC 88 03 02 28 */ lbz r0, 0x228(r3) +/* 801D38A0 001D0800 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 801D38A4 001D0804 98 03 02 28 */ stb r0, 0x228(r3) +/* 801D38A8 001D0808 4E 80 00 20 */ blr + +.global GetHardModeWeaponMultiplier__10CGameStateCFv +GetHardModeWeaponMultiplier__10CGameStateCFv: +/* 801D38AC 001D080C 80 6D A1 20 */ lwz r3, gpTweakGame@sda21(r13) +/* 801D38B0 001D0810 C0 23 00 64 */ lfs f1, 0x64(r3) +/* 801D38B4 001D0814 4E 80 00 20 */ blr + +.global GetHardModeDamageMultiplier__10CGameStateCFv +GetHardModeDamageMultiplier__10CGameStateCFv: +/* 801D38B8 001D0818 80 6D A1 20 */ lwz r3, gpTweakGame@sda21(r13) +/* 801D38BC 001D081C C0 23 00 60 */ lfs f1, 0x60(r3) +/* 801D38C0 001D0820 4E 80 00 20 */ blr + +.global SetHardMode__10CGameStateFb +SetHardMode__10CGameStateFb: +/* 801D38C4 001D0824 88 03 02 28 */ lbz r0, 0x228(r3) +/* 801D38C8 001D0828 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801D38CC 001D082C 98 03 02 28 */ stb r0, 0x228(r3) +/* 801D38D0 001D0830 4E 80 00 20 */ blr + +.global SetTotalPlayTime__10CGameStateFd +SetTotalPlayTime__10CGameStateFd: +/* 801D38D4 001D0834 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801D38D8 001D0838 7C 08 02 A6 */ mflr r0 +/* 801D38DC 001D083C 38 A2 AC 20 */ addi r5, r2, lbl_805AC940@sda21 +/* 801D38E0 001D0840 90 01 00 24 */ stw r0, 0x24(r1) +/* 801D38E4 001D0844 38 81 00 08 */ addi r4, r1, 8 +/* 801D38E8 001D0848 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801D38EC 001D084C 7C 7F 1B 78 */ mr r31, r3 +/* 801D38F0 001D0850 38 6D 91 B0 */ addi r3, r13, lbl_805A7D70@sda21 +/* 801D38F4 001D0854 D8 21 00 08 */ stfd f1, 8(r1) +/* 801D38F8 001D0858 48 00 27 D9 */ bl "Clamp__5CMathFRCdRCdRCd" +/* 801D38FC 001D085C C8 03 00 00 */ lfd f0, 0(r3) +/* 801D3900 001D0860 D8 1F 00 A0 */ stfd f0, 0xa0(r31) +/* 801D3904 001D0864 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801D3908 001D0868 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801D390C 001D086C 7C 08 03 A6 */ mtlr r0 +/* 801D3910 001D0870 38 21 00 20 */ addi r1, r1, 0x20 +/* 801D3914 001D0874 4E 80 00 20 */ blr + +.global WorldTransitionManager__10CGameStateFv +WorldTransitionManager__10CGameStateFv: +/* 801D3918 001D0878 38 63 00 9C */ addi r3, r3, 0x9c +/* 801D391C 001D087C 4E 80 00 20 */ blr + +.global GetPlayerState__10CGameStateCFv +GetPlayerState__10CGameStateCFv: +/* 801D3920 001D0880 80 04 00 98 */ lwz r0, 0x98(r4) +/* 801D3924 001D0884 90 03 00 00 */ stw r0, 0(r3) +/* 801D3928 001D0888 80 83 00 00 */ lwz r4, 0(r3) +/* 801D392C 001D088C 80 64 00 04 */ lwz r3, 4(r4) +/* 801D3930 001D0890 38 03 00 01 */ addi r0, r3, 1 +/* 801D3934 001D0894 90 04 00 04 */ stw r0, 4(r4) +/* 801D3938 001D0898 4E 80 00 20 */ blr + +.global PlayerState__10CGameStateFv +PlayerState__10CGameStateFv: +/* 801D393C 001D089C 38 63 00 98 */ addi r3, r3, 0x98 +/* 801D3940 001D08A0 4E 80 00 20 */ blr + +.global SetCurrentWorldId__10CGameStateFUi +SetCurrentWorldId__10CGameStateFUi: +/* 801D3944 001D08A4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D3948 001D08A8 7C 08 02 A6 */ mflr r0 +/* 801D394C 001D08AC 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D3950 001D08B0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801D3954 001D08B4 7C 9F 23 78 */ mr r31, r4 +/* 801D3958 001D08B8 93 C1 00 08 */ stw r30, 8(r1) +/* 801D395C 001D08BC 7C 7E 1B 78 */ mr r30, r3 +/* 801D3960 001D08C0 48 00 00 79 */ bl StateForWorld__10CGameStateFUi +/* 801D3964 001D08C4 93 FE 00 84 */ stw r31, 0x84(r30) +/* 801D3968 001D08C8 7F E3 FB 78 */ mr r3, r31 +/* 801D396C 001D08CC 4B E3 0F 11 */ bl EnsureWorldPakReady__5CMainFUi +/* 801D3970 001D08D0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D3974 001D08D4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801D3978 001D08D8 83 C1 00 08 */ lwz r30, 8(r1) +/* 801D397C 001D08DC 7C 08 03 A6 */ mtlr r0 +/* 801D3980 001D08E0 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D3984 001D08E4 4E 80 00 20 */ blr + +.global GetCurrentWorldState__10CGameStateCFv +GetCurrentWorldState__10CGameStateCFv: +/* 801D3988 001D08E8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D398C 001D08EC 7C 08 02 A6 */ mflr r0 +/* 801D3990 001D08F0 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D3994 001D08F4 80 83 00 84 */ lwz r4, 0x84(r3) +/* 801D3998 001D08F8 48 00 00 41 */ bl StateForWorld__10CGameStateFUi +/* 801D399C 001D08FC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D39A0 001D0900 7C 08 03 A6 */ mtlr r0 +/* 801D39A4 001D0904 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D39A8 001D0908 4E 80 00 20 */ blr + +.global CurrentWorldState__10CGameStateFv +CurrentWorldState__10CGameStateFv: +/* 801D39AC 001D090C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D39B0 001D0910 7C 08 02 A6 */ mflr r0 +/* 801D39B4 001D0914 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D39B8 001D0918 80 83 00 84 */ lwz r4, 0x84(r3) +/* 801D39BC 001D091C 48 00 00 1D */ bl StateForWorld__10CGameStateFUi +/* 801D39C0 001D0920 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D39C4 001D0924 7C 08 03 A6 */ mtlr r0 +/* 801D39C8 001D0928 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D39CC 001D092C 4E 80 00 20 */ blr + +.global CurrentWorldAssetId__10CGameStateCFv +CurrentWorldAssetId__10CGameStateCFv: +/* 801D39D0 001D0930 80 63 00 84 */ lwz r3, 0x84(r3) +/* 801D39D4 001D0934 4E 80 00 20 */ blr + +.global StateForWorld__10CGameStateFUi +StateForWorld__10CGameStateFUi: +/* 801D39D8 001D0938 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801D39DC 001D093C 7C 08 02 A6 */ mflr r0 +/* 801D39E0 001D0940 90 01 00 34 */ stw r0, 0x34(r1) +/* 801D39E4 001D0944 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801D39E8 001D0948 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801D39EC 001D094C 7C 9E 23 78 */ mr r30, r4 +/* 801D39F0 001D0950 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801D39F4 001D0954 7C 7D 1B 78 */ mr r29, r3 +/* 801D39F8 001D0958 83 E3 00 94 */ lwz r31, 0x94(r3) +/* 801D39FC 001D095C 48 00 00 18 */ b lbl_801D3A14 +lbl_801D3A00: +/* 801D3A00 001D0960 7F E3 FB 78 */ mr r3, r31 +/* 801D3A04 001D0964 48 00 13 8D */ bl GetWorldAssetId__11CWorldStateCFv +/* 801D3A08 001D0968 7C 1E 18 40 */ cmplw r30, r3 +/* 801D3A0C 001D096C 41 82 00 20 */ beq lbl_801D3A2C +/* 801D3A10 001D0970 3B FF 00 18 */ addi r31, r31, 0x18 +lbl_801D3A14: +/* 801D3A14 001D0974 80 1D 00 8C */ lwz r0, 0x8c(r29) +/* 801D3A18 001D0978 80 7D 00 94 */ lwz r3, 0x94(r29) +/* 801D3A1C 001D097C 1C 00 00 18 */ mulli r0, r0, 0x18 +/* 801D3A20 001D0980 7C 03 02 14 */ add r0, r3, r0 +/* 801D3A24 001D0984 7C 1F 00 40 */ cmplw r31, r0 +/* 801D3A28 001D0988 40 82 FF D8 */ bne lbl_801D3A00 +lbl_801D3A2C: +/* 801D3A2C 001D098C 80 9D 00 8C */ lwz r4, 0x8c(r29) +/* 801D3A30 001D0990 80 7D 00 94 */ lwz r3, 0x94(r29) +/* 801D3A34 001D0994 1C 04 00 18 */ mulli r0, r4, 0x18 +/* 801D3A38 001D0998 7C 03 02 14 */ add r0, r3, r0 +/* 801D3A3C 001D099C 7C 1F 00 40 */ cmplw r31, r0 +/* 801D3A40 001D09A0 41 82 00 0C */ beq lbl_801D3A4C +/* 801D3A44 001D09A4 7F E3 FB 78 */ mr r3, r31 +/* 801D3A48 001D09A8 48 00 00 78 */ b lbl_801D3AC0 +lbl_801D3A4C: +/* 801D3A4C 001D09AC 38 7D 00 88 */ addi r3, r29, 0x88 +/* 801D3A50 001D09B0 38 84 00 01 */ addi r4, r4, 1 +/* 801D3A54 001D09B4 48 00 28 95 */ bl "reserve__Q24rstl48vector<11CWorldState,Q24rstl17rmemory_allocator>Fi" +/* 801D3A58 001D09B8 7F C4 F3 78 */ mr r4, r30 +/* 801D3A5C 001D09BC 38 61 00 08 */ addi r3, r1, 8 +/* 801D3A60 001D09C0 48 00 16 11 */ bl __ct__11CWorldStateFUi +/* 801D3A64 001D09C4 38 7D 00 88 */ addi r3, r29, 0x88 +/* 801D3A68 001D09C8 38 81 00 08 */ addi r4, r1, 8 +/* 801D3A6C 001D09CC 48 00 00 71 */ bl __ct__11CWorldStateFRC11CWorldState +/* 801D3A70 001D09D0 34 61 00 1C */ addic. r3, r1, 0x1c +/* 801D3A74 001D09D4 41 82 00 10 */ beq lbl_801D3A84 +/* 801D3A78 001D09D8 28 03 00 00 */ cmplwi r3, 0 +/* 801D3A7C 001D09DC 41 82 00 08 */ beq lbl_801D3A84 +/* 801D3A80 001D09E0 4B E3 53 4D */ bl sub_80008dcc +lbl_801D3A84: +/* 801D3A84 001D09E4 34 61 00 14 */ addic. r3, r1, 0x14 +/* 801D3A88 001D09E8 41 82 00 10 */ beq lbl_801D3A98 +/* 801D3A8C 001D09EC 28 03 00 00 */ cmplwi r3, 0 +/* 801D3A90 001D09F0 41 82 00 08 */ beq lbl_801D3A98 +/* 801D3A94 001D09F4 4B E3 51 A9 */ bl sub_80008c3c +lbl_801D3A98: +/* 801D3A98 001D09F8 34 61 00 10 */ addic. r3, r1, 0x10 +/* 801D3A9C 001D09FC 41 82 00 10 */ beq lbl_801D3AAC +/* 801D3AA0 001D0A00 28 03 00 00 */ cmplwi r3, 0 +/* 801D3AA4 001D0A04 41 82 00 08 */ beq lbl_801D3AAC +/* 801D3AA8 001D0A08 4B E3 4B 99 */ bl __dt__11CWorldStateFv +lbl_801D3AAC: +/* 801D3AAC 001D0A0C 80 7D 00 8C */ lwz r3, 0x8c(r29) +/* 801D3AB0 001D0A10 80 9D 00 94 */ lwz r4, 0x94(r29) +/* 801D3AB4 001D0A14 38 03 FF FF */ addi r0, r3, -1 +/* 801D3AB8 001D0A18 1C 00 00 18 */ mulli r0, r0, 0x18 +/* 801D3ABC 001D0A1C 7C 64 02 14 */ add r3, r4, r0 +lbl_801D3AC0: +/* 801D3AC0 001D0A20 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801D3AC4 001D0A24 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801D3AC8 001D0A28 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801D3ACC 001D0A2C 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801D3AD0 001D0A30 7C 08 03 A6 */ mtlr r0 +/* 801D3AD4 001D0A34 38 21 00 30 */ addi r1, r1, 0x30 +/* 801D3AD8 001D0A38 4E 80 00 20 */ blr + +.global __ct__11CWorldStateFRC11CWorldState +__ct__11CWorldStateFRC11CWorldState: +/* 801D3ADC 001D0A3C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D3AE0 001D0A40 7C 08 02 A6 */ mflr r0 +/* 801D3AE4 001D0A44 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D3AE8 001D0A48 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801D3AEC 001D0A4C 7C 9F 23 78 */ mr r31, r4 +/* 801D3AF0 001D0A50 93 C1 00 08 */ stw r30, 8(r1) +/* 801D3AF4 001D0A54 7C 7E 1B 78 */ mr r30, r3 +/* 801D3AF8 001D0A58 80 03 00 04 */ lwz r0, 4(r3) +/* 801D3AFC 001D0A5C 80 A3 00 08 */ lwz r5, 8(r3) +/* 801D3B00 001D0A60 7C 00 28 00 */ cmpw r0, r5 +/* 801D3B04 001D0A64 41 80 00 18 */ blt lbl_801D3B1C +/* 801D3B08 001D0A68 2C 05 00 00 */ cmpwi r5, 0 +/* 801D3B0C 001D0A6C 38 80 00 04 */ li r4, 4 +/* 801D3B10 001D0A70 41 82 00 08 */ beq lbl_801D3B18 +/* 801D3B14 001D0A74 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801D3B18: +/* 801D3B18 001D0A78 48 00 27 D1 */ bl "reserve__Q24rstl48vector<11CWorldState,Q24rstl17rmemory_allocator>Fi" +lbl_801D3B1C: +/* 801D3B1C 001D0A7C 80 1E 00 04 */ lwz r0, 4(r30) +/* 801D3B20 001D0A80 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 801D3B24 001D0A84 1C 00 00 18 */ mulli r0, r0, 0x18 +/* 801D3B28 001D0A88 7C A3 02 15 */ add. r5, r3, r0 +/* 801D3B2C 001D0A8C 41 82 00 64 */ beq lbl_801D3B90 +/* 801D3B30 001D0A90 80 1F 00 00 */ lwz r0, 0(r31) +/* 801D3B34 001D0A94 90 05 00 00 */ stw r0, 0(r5) +/* 801D3B38 001D0A98 80 1F 00 04 */ lwz r0, 4(r31) +/* 801D3B3C 001D0A9C 90 05 00 04 */ stw r0, 4(r5) +/* 801D3B40 001D0AA0 80 1F 00 08 */ lwz r0, 8(r31) +/* 801D3B44 001D0AA4 90 05 00 08 */ stw r0, 8(r5) +/* 801D3B48 001D0AA8 80 85 00 08 */ lwz r4, 8(r5) +/* 801D3B4C 001D0AAC 80 64 00 04 */ lwz r3, 4(r4) +/* 801D3B50 001D0AB0 38 03 00 01 */ addi r0, r3, 1 +/* 801D3B54 001D0AB4 90 04 00 04 */ stw r0, 4(r4) +/* 801D3B58 001D0AB8 80 1F 00 0C */ lwz r0, 0xc(r31) +/* 801D3B5C 001D0ABC 90 05 00 0C */ stw r0, 0xc(r5) +/* 801D3B60 001D0AC0 80 85 00 0C */ lwz r4, 0xc(r5) +/* 801D3B64 001D0AC4 80 64 00 04 */ lwz r3, 4(r4) +/* 801D3B68 001D0AC8 38 03 00 01 */ addi r0, r3, 1 +/* 801D3B6C 001D0ACC 90 04 00 04 */ stw r0, 4(r4) +/* 801D3B70 001D0AD0 80 1F 00 10 */ lwz r0, 0x10(r31) +/* 801D3B74 001D0AD4 90 05 00 10 */ stw r0, 0x10(r5) +/* 801D3B78 001D0AD8 80 1F 00 14 */ lwz r0, 0x14(r31) +/* 801D3B7C 001D0ADC 90 05 00 14 */ stw r0, 0x14(r5) +/* 801D3B80 001D0AE0 80 85 00 14 */ lwz r4, 0x14(r5) +/* 801D3B84 001D0AE4 80 64 00 04 */ lwz r3, 4(r4) +/* 801D3B88 001D0AE8 38 03 00 01 */ addi r0, r3, 1 +/* 801D3B8C 001D0AEC 90 04 00 04 */ stw r0, 4(r4) +lbl_801D3B90: +/* 801D3B90 001D0AF0 80 7E 00 04 */ lwz r3, 4(r30) +/* 801D3B94 001D0AF4 38 03 00 01 */ addi r0, r3, 1 +/* 801D3B98 001D0AF8 90 1E 00 04 */ stw r0, 4(r30) +/* 801D3B9C 001D0AFC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801D3BA0 001D0B00 83 C1 00 08 */ lwz r30, 8(r1) +/* 801D3BA4 001D0B04 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D3BA8 001D0B08 7C 08 03 A6 */ mtlr r0 +/* 801D3BAC 001D0B0C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D3BB0 001D0B10 4E 80 00 20 */ blr + +.global WriteBackupBuf__10CGameStateFv +WriteBackupBuf__10CGameStateFv: +/* 801D3BB4 001D0B14 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 801D3BB8 001D0B18 7C 08 02 A6 */ mflr r0 +/* 801D3BBC 001D0B1C 38 80 03 AC */ li r4, 0x3ac +/* 801D3BC0 001D0B20 38 AD 91 AE */ addi r5, r13, lbl_805A7D6E@sda21 +/* 801D3BC4 001D0B24 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 801D3BC8 001D0B28 93 E1 00 9C */ stw r31, 0x9c(r1) +/* 801D3BCC 001D0B2C 7C 7F 1B 78 */ mr r31, r3 +/* 801D3BD0 001D0B30 38 7F 02 18 */ addi r3, r31, 0x218 +/* 801D3BD4 001D0B34 48 00 00 49 */ bl "resize__Q24rstl37vectorFiRCUc" +/* 801D3BD8 001D0B38 80 9F 02 24 */ lwz r4, 0x224(r31) +/* 801D3BDC 001D0B3C 38 61 00 08 */ addi r3, r1, 8 +/* 801D3BE0 001D0B40 38 A0 03 AC */ li r5, 0x3ac +/* 801D3BE4 001D0B44 38 C0 00 01 */ li r6, 1 +/* 801D3BE8 001D0B48 38 E0 10 00 */ li r7, 0x1000 +/* 801D3BEC 001D0B4C 48 16 B7 51 */ bl __ct__16CMemoryStreamOutFPvUlQ216CMemoryStreamOut10EOwnerShipi +/* 801D3BF0 001D0B50 7F E3 FB 78 */ mr r3, r31 +/* 801D3BF4 001D0B54 38 81 00 08 */ addi r4, r1, 8 +/* 801D3BF8 001D0B58 48 00 04 91 */ bl PutTo__10CGameStateFR16CMemoryStreamOut +/* 801D3BFC 001D0B5C 38 61 00 08 */ addi r3, r1, 8 +/* 801D3C00 001D0B60 38 80 FF FF */ li r4, -1 +/* 801D3C04 001D0B64 48 16 B6 BD */ bl __dt__16CMemoryStreamOutFv +/* 801D3C08 001D0B68 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 801D3C0C 001D0B6C 83 E1 00 9C */ lwz r31, 0x9c(r1) +/* 801D3C10 001D0B70 7C 08 03 A6 */ mtlr r0 +/* 801D3C14 001D0B74 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 801D3C18 001D0B78 4E 80 00 20 */ blr + +.global "resize__Q24rstl37vectorFiRCUc" +"resize__Q24rstl37vectorFiRCUc": +/* 801D3C1C 001D0B7C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801D3C20 001D0B80 7C 08 02 A6 */ mflr r0 +/* 801D3C24 001D0B84 90 01 00 34 */ stw r0, 0x34(r1) +/* 801D3C28 001D0B88 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801D3C2C 001D0B8C 7C BF 2B 78 */ mr r31, r5 +/* 801D3C30 001D0B90 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801D3C34 001D0B94 7C 9E 23 78 */ mr r30, r4 +/* 801D3C38 001D0B98 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801D3C3C 001D0B9C 7C 7D 1B 78 */ mr r29, r3 +/* 801D3C40 001D0BA0 93 81 00 20 */ stw r28, 0x20(r1) +/* 801D3C44 001D0BA4 80 83 00 0C */ lwz r4, 0xc(r3) +/* 801D3C48 001D0BA8 80 03 00 04 */ lwz r0, 4(r3) +/* 801D3C4C 001D0BAC 90 81 00 0C */ stw r4, 0xc(r1) +/* 801D3C50 001D0BB0 7C 64 02 14 */ add r3, r4, r0 +/* 801D3C54 001D0BB4 7C 04 18 50 */ subf r0, r4, r3 +/* 801D3C58 001D0BB8 90 61 00 14 */ stw r3, 0x14(r1) +/* 801D3C5C 001D0BBC 90 61 00 10 */ stw r3, 0x10(r1) +/* 801D3C60 001D0BC0 90 81 00 08 */ stw r4, 8(r1) +/* 801D3C64 001D0BC4 7C 09 03 A6 */ mtctr r0 +/* 801D3C68 001D0BC8 7C 04 18 40 */ cmplw r4, r3 +/* 801D3C6C 001D0BCC 41 82 00 08 */ beq lbl_801D3C74 +lbl_801D3C70: +/* 801D3C70 001D0BD0 42 00 00 00 */ bdnz lbl_801D3C70 +lbl_801D3C74: +/* 801D3C74 001D0BD4 38 00 00 00 */ li r0, 0 +/* 801D3C78 001D0BD8 7F A3 EB 78 */ mr r3, r29 +/* 801D3C7C 001D0BDC 90 1D 00 04 */ stw r0, 4(r29) +/* 801D3C80 001D0BE0 7F C4 F3 78 */ mr r4, r30 +/* 801D3C84 001D0BE4 48 00 25 79 */ bl "reserve__Q24rstl37vectorFi" +/* 801D3C88 001D0BE8 3B 80 00 00 */ li r28, 0 +/* 801D3C8C 001D0BEC 48 00 00 54 */ b lbl_801D3CE0 +lbl_801D3C90: +/* 801D3C90 001D0BF0 80 1D 00 04 */ lwz r0, 4(r29) +/* 801D3C94 001D0BF4 80 BD 00 08 */ lwz r5, 8(r29) +/* 801D3C98 001D0BF8 7C 00 28 00 */ cmpw r0, r5 +/* 801D3C9C 001D0BFC 41 80 00 1C */ blt lbl_801D3CB8 +/* 801D3CA0 001D0C00 2C 05 00 00 */ cmpwi r5, 0 +/* 801D3CA4 001D0C04 7F A3 EB 78 */ mr r3, r29 +/* 801D3CA8 001D0C08 38 80 00 04 */ li r4, 4 +/* 801D3CAC 001D0C0C 41 82 00 08 */ beq lbl_801D3CB4 +/* 801D3CB0 001D0C10 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801D3CB4: +/* 801D3CB4 001D0C14 48 00 25 49 */ bl "reserve__Q24rstl37vectorFi" +lbl_801D3CB8: +/* 801D3CB8 001D0C18 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 801D3CBC 001D0C1C 80 1D 00 04 */ lwz r0, 4(r29) +/* 801D3CC0 001D0C20 7C 63 02 15 */ add. r3, r3, r0 +/* 801D3CC4 001D0C24 41 82 00 0C */ beq lbl_801D3CD0 +/* 801D3CC8 001D0C28 88 1F 00 00 */ lbz r0, 0(r31) +/* 801D3CCC 001D0C2C 98 03 00 00 */ stb r0, 0(r3) +lbl_801D3CD0: +/* 801D3CD0 001D0C30 80 7D 00 04 */ lwz r3, 4(r29) +/* 801D3CD4 001D0C34 3B 9C 00 01 */ addi r28, r28, 1 +/* 801D3CD8 001D0C38 38 03 00 01 */ addi r0, r3, 1 +/* 801D3CDC 001D0C3C 90 1D 00 04 */ stw r0, 4(r29) +lbl_801D3CE0: +/* 801D3CE0 001D0C40 7C 1C F0 00 */ cmpw r28, r30 +/* 801D3CE4 001D0C44 41 80 FF AC */ blt lbl_801D3C90 +/* 801D3CE8 001D0C48 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801D3CEC 001D0C4C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801D3CF0 001D0C50 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801D3CF4 001D0C54 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801D3CF8 001D0C58 83 81 00 20 */ lwz r28, 0x20(r1) +/* 801D3CFC 001D0C5C 7C 08 03 A6 */ mtlr r0 +/* 801D3D00 001D0C60 38 21 00 30 */ addi r1, r1, 0x30 +/* 801D3D04 001D0C64 4E 80 00 20 */ blr + +.global ExportPersistentOptions__10CGameStateFRC14CSystemOptions +ExportPersistentOptions__10CGameStateFRC14CSystemOptions: +/* 801D3D08 001D0C68 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D3D0C 001D0C6C 7C 08 02 A6 */ mflr r0 +/* 801D3D10 001D0C70 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D3D14 001D0C74 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801D3D18 001D0C78 7C 9F 23 78 */ mr r31, r4 +/* 801D3D1C 001D0C7C 93 C1 00 08 */ stw r30, 8(r1) +/* 801D3D20 001D0C80 7C 7E 1B 78 */ mr r30, r3 +/* 801D3D24 001D0C84 88 03 01 78 */ lbz r0, 0x178(r3) +/* 801D3D28 001D0C88 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801D3D2C 001D0C8C 41 82 00 10 */ beq lbl_801D3D3C +/* 801D3D30 001D0C90 7F E3 FB 78 */ mr r3, r31 +/* 801D3D34 001D0C94 38 80 00 01 */ li r4, 1 +/* 801D3D38 001D0C98 48 00 14 D9 */ bl sub_801d5210 +lbl_801D3D3C: +/* 801D3D3C 001D0C9C 88 1E 01 78 */ lbz r0, 0x178(r30) +/* 801D3D40 001D0CA0 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 801D3D44 001D0CA4 41 82 00 10 */ beq lbl_801D3D54 +/* 801D3D48 001D0CA8 7F E3 FB 78 */ mr r3, r31 +/* 801D3D4C 001D0CAC 38 80 00 01 */ li r4, 1 +/* 801D3D50 001D0CB0 48 00 14 81 */ bl sub_801d51d0 +lbl_801D3D54: +/* 801D3D54 001D0CB4 38 DE 00 A8 */ addi r6, r30, 0xa8 +/* 801D3D58 001D0CB8 7C 1F 30 40 */ cmplw r31, r6 +/* 801D3D5C 001D0CBC 41 82 00 A0 */ beq lbl_801D3DFC +/* 801D3D60 001D0CC0 80 BF 00 00 */ lwz r5, 0(r31) +/* 801D3D64 001D0CC4 38 60 00 00 */ li r3, 0 +/* 801D3D68 001D0CC8 2C 05 00 00 */ cmpwi r5, 0 +/* 801D3D6C 001D0CCC 40 81 00 40 */ ble lbl_801D3DAC +/* 801D3D70 001D0CD0 2C 05 00 08 */ cmpwi r5, 8 +/* 801D3D74 001D0CD4 38 85 FF F8 */ addi r4, r5, -8 +/* 801D3D78 001D0CD8 40 81 00 20 */ ble lbl_801D3D98 +/* 801D3D7C 001D0CDC 38 04 00 07 */ addi r0, r4, 7 +/* 801D3D80 001D0CE0 54 00 E8 FE */ srwi r0, r0, 3 +/* 801D3D84 001D0CE4 7C 09 03 A6 */ mtctr r0 +/* 801D3D88 001D0CE8 2C 04 00 00 */ cmpwi r4, 0 +/* 801D3D8C 001D0CEC 40 81 00 0C */ ble lbl_801D3D98 +lbl_801D3D90: +/* 801D3D90 001D0CF0 38 63 00 08 */ addi r3, r3, 8 +/* 801D3D94 001D0CF4 42 00 FF FC */ bdnz lbl_801D3D90 +lbl_801D3D98: +/* 801D3D98 001D0CF8 7C 03 28 50 */ subf r0, r3, r5 +/* 801D3D9C 001D0CFC 7C 09 03 A6 */ mtctr r0 +/* 801D3DA0 001D0D00 7C 03 28 00 */ cmpw r3, r5 +/* 801D3DA4 001D0D04 40 80 00 08 */ bge lbl_801D3DAC +lbl_801D3DA8: +/* 801D3DA8 001D0D08 42 00 00 00 */ bdnz lbl_801D3DA8 +lbl_801D3DAC: +/* 801D3DAC 001D0D0C 38 00 00 00 */ li r0, 0 +/* 801D3DB0 001D0D10 38 66 00 04 */ addi r3, r6, 4 +/* 801D3DB4 001D0D14 90 1F 00 00 */ stw r0, 0(r31) +/* 801D3DB8 001D0D18 38 9F 00 04 */ addi r4, r31, 4 +/* 801D3DBC 001D0D1C 80 06 00 00 */ lwz r0, 0(r6) +/* 801D3DC0 001D0D20 7C A6 02 14 */ add r5, r6, r0 +/* 801D3DC4 001D0D24 38 A5 00 04 */ addi r5, r5, 4 +/* 801D3DC8 001D0D28 7C 03 28 50 */ subf r0, r3, r5 +/* 801D3DCC 001D0D2C 7C 09 03 A6 */ mtctr r0 +/* 801D3DD0 001D0D30 7C 03 28 40 */ cmplw r3, r5 +/* 801D3DD4 001D0D34 41 82 00 20 */ beq lbl_801D3DF4 +lbl_801D3DD8: +/* 801D3DD8 001D0D38 28 04 00 00 */ cmplwi r4, 0 +/* 801D3DDC 001D0D3C 41 82 00 0C */ beq lbl_801D3DE8 +/* 801D3DE0 001D0D40 88 03 00 00 */ lbz r0, 0(r3) +/* 801D3DE4 001D0D44 98 04 00 00 */ stb r0, 0(r4) +lbl_801D3DE8: +/* 801D3DE8 001D0D48 38 84 00 01 */ addi r4, r4, 1 +/* 801D3DEC 001D0D4C 38 63 00 01 */ addi r3, r3, 1 +/* 801D3DF0 001D0D50 42 00 FF E8 */ bdnz lbl_801D3DD8 +lbl_801D3DF4: +/* 801D3DF4 001D0D54 80 06 00 00 */ lwz r0, 0(r6) +/* 801D3DF8 001D0D58 90 1F 00 00 */ stw r0, 0(r31) +lbl_801D3DFC: +/* 801D3DFC 001D0D5C 88 1E 01 78 */ lbz r0, 0x178(r30) +/* 801D3E00 001D0D60 7F E3 FB 78 */ mr r3, r31 +/* 801D3E04 001D0D64 54 04 EF FE */ rlwinm r4, r0, 0x1d, 0x1f, 0x1f +/* 801D3E08 001D0D68 48 00 13 B9 */ bl SetHasFusion__14CSystemOptionsFb +/* 801D3E0C 001D0D6C 38 DE 00 A8 */ addi r6, r30, 0xa8 +/* 801D3E10 001D0D70 7C 1F 30 40 */ cmplw r31, r6 +/* 801D3E14 001D0D74 41 82 00 A0 */ beq lbl_801D3EB4 +/* 801D3E18 001D0D78 80 BF 00 00 */ lwz r5, 0(r31) +/* 801D3E1C 001D0D7C 38 60 00 00 */ li r3, 0 +/* 801D3E20 001D0D80 2C 05 00 00 */ cmpwi r5, 0 +/* 801D3E24 001D0D84 40 81 00 40 */ ble lbl_801D3E64 +/* 801D3E28 001D0D88 2C 05 00 08 */ cmpwi r5, 8 +/* 801D3E2C 001D0D8C 38 85 FF F8 */ addi r4, r5, -8 +/* 801D3E30 001D0D90 40 81 00 20 */ ble lbl_801D3E50 +/* 801D3E34 001D0D94 38 04 00 07 */ addi r0, r4, 7 +/* 801D3E38 001D0D98 54 00 E8 FE */ srwi r0, r0, 3 +/* 801D3E3C 001D0D9C 7C 09 03 A6 */ mtctr r0 +/* 801D3E40 001D0DA0 2C 04 00 00 */ cmpwi r4, 0 +/* 801D3E44 001D0DA4 40 81 00 0C */ ble lbl_801D3E50 +lbl_801D3E48: +/* 801D3E48 001D0DA8 38 63 00 08 */ addi r3, r3, 8 +/* 801D3E4C 001D0DAC 42 00 FF FC */ bdnz lbl_801D3E48 +lbl_801D3E50: +/* 801D3E50 001D0DB0 7C 03 28 50 */ subf r0, r3, r5 +/* 801D3E54 001D0DB4 7C 09 03 A6 */ mtctr r0 +/* 801D3E58 001D0DB8 7C 03 28 00 */ cmpw r3, r5 +/* 801D3E5C 001D0DBC 40 80 00 08 */ bge lbl_801D3E64 +lbl_801D3E60: +/* 801D3E60 001D0DC0 42 00 00 00 */ bdnz lbl_801D3E60 +lbl_801D3E64: +/* 801D3E64 001D0DC4 38 00 00 00 */ li r0, 0 +/* 801D3E68 001D0DC8 38 66 00 04 */ addi r3, r6, 4 +/* 801D3E6C 001D0DCC 90 1F 00 00 */ stw r0, 0(r31) +/* 801D3E70 001D0DD0 38 9F 00 04 */ addi r4, r31, 4 +/* 801D3E74 001D0DD4 80 06 00 00 */ lwz r0, 0(r6) +/* 801D3E78 001D0DD8 7C A6 02 14 */ add r5, r6, r0 +/* 801D3E7C 001D0DDC 38 A5 00 04 */ addi r5, r5, 4 +/* 801D3E80 001D0DE0 7C 03 28 50 */ subf r0, r3, r5 +/* 801D3E84 001D0DE4 7C 09 03 A6 */ mtctr r0 +/* 801D3E88 001D0DE8 7C 03 28 40 */ cmplw r3, r5 +/* 801D3E8C 001D0DEC 41 82 00 20 */ beq lbl_801D3EAC +lbl_801D3E90: +/* 801D3E90 001D0DF0 28 04 00 00 */ cmplwi r4, 0 +/* 801D3E94 001D0DF4 41 82 00 0C */ beq lbl_801D3EA0 +/* 801D3E98 001D0DF8 88 03 00 00 */ lbz r0, 0(r3) +/* 801D3E9C 001D0DFC 98 04 00 00 */ stb r0, 0(r4) +lbl_801D3EA0: +/* 801D3EA0 001D0E00 38 84 00 01 */ addi r4, r4, 1 +/* 801D3EA4 001D0E04 38 63 00 01 */ addi r3, r3, 1 +/* 801D3EA8 001D0E08 42 00 FF E8 */ bdnz lbl_801D3E90 +lbl_801D3EAC: +/* 801D3EAC 001D0E0C 80 06 00 00 */ lwz r0, 0(r6) +/* 801D3EB0 001D0E10 90 1F 00 00 */ stw r0, 0(r31) +lbl_801D3EB4: +/* 801D3EB4 001D0E14 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D3EB8 001D0E18 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801D3EBC 001D0E1C 83 C1 00 08 */ lwz r30, 8(r1) +/* 801D3EC0 001D0E20 7C 08 03 A6 */ mtlr r0 +/* 801D3EC4 001D0E24 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D3EC8 001D0E28 4E 80 00 20 */ blr + +.global ImportPersistentOptions__10CGameStateFRC14CSystemOptions +ImportPersistentOptions__10CGameStateFRC14CSystemOptions: +/* 801D3ECC 001D0E2C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D3ED0 001D0E30 7C 08 02 A6 */ mflr r0 +/* 801D3ED4 001D0E34 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D3ED8 001D0E38 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801D3EDC 001D0E3C 7C 9F 23 78 */ mr r31, r4 +/* 801D3EE0 001D0E40 93 C1 00 08 */ stw r30, 8(r1) +/* 801D3EE4 001D0E44 7C 7E 1B 78 */ mr r30, r3 +/* 801D3EE8 001D0E48 88 04 00 D0 */ lbz r0, 0xd0(r4) +/* 801D3EEC 001D0E4C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801D3EF0 001D0E50 41 82 00 10 */ beq lbl_801D3F00 +/* 801D3EF4 001D0E54 38 7E 00 A8 */ addi r3, r30, 0xa8 +/* 801D3EF8 001D0E58 38 80 00 01 */ li r4, 1 +/* 801D3EFC 001D0E5C 48 00 13 15 */ bl sub_801d5210 +lbl_801D3F00: +/* 801D3F00 001D0E60 88 1F 00 D0 */ lbz r0, 0xd0(r31) +/* 801D3F04 001D0E64 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 801D3F08 001D0E68 41 82 00 10 */ beq lbl_801D3F18 +/* 801D3F0C 001D0E6C 38 7E 00 A8 */ addi r3, r30, 0xa8 +/* 801D3F10 001D0E70 38 80 00 01 */ li r4, 1 +/* 801D3F14 001D0E74 48 00 12 BD */ bl sub_801d51d0 +lbl_801D3F18: +/* 801D3F18 001D0E78 38 DE 00 A8 */ addi r6, r30, 0xa8 +/* 801D3F1C 001D0E7C 7C 06 F8 40 */ cmplw r6, r31 +/* 801D3F20 001D0E80 41 82 00 A0 */ beq lbl_801D3FC0 +/* 801D3F24 001D0E84 80 A6 00 00 */ lwz r5, 0(r6) +/* 801D3F28 001D0E88 38 60 00 00 */ li r3, 0 +/* 801D3F2C 001D0E8C 2C 05 00 00 */ cmpwi r5, 0 +/* 801D3F30 001D0E90 40 81 00 40 */ ble lbl_801D3F70 +/* 801D3F34 001D0E94 2C 05 00 08 */ cmpwi r5, 8 +/* 801D3F38 001D0E98 38 85 FF F8 */ addi r4, r5, -8 +/* 801D3F3C 001D0E9C 40 81 00 20 */ ble lbl_801D3F5C +/* 801D3F40 001D0EA0 38 04 00 07 */ addi r0, r4, 7 +/* 801D3F44 001D0EA4 54 00 E8 FE */ srwi r0, r0, 3 +/* 801D3F48 001D0EA8 7C 09 03 A6 */ mtctr r0 +/* 801D3F4C 001D0EAC 2C 04 00 00 */ cmpwi r4, 0 +/* 801D3F50 001D0EB0 40 81 00 0C */ ble lbl_801D3F5C +lbl_801D3F54: +/* 801D3F54 001D0EB4 38 63 00 08 */ addi r3, r3, 8 +/* 801D3F58 001D0EB8 42 00 FF FC */ bdnz lbl_801D3F54 +lbl_801D3F5C: +/* 801D3F5C 001D0EBC 7C 03 28 50 */ subf r0, r3, r5 +/* 801D3F60 001D0EC0 7C 09 03 A6 */ mtctr r0 +/* 801D3F64 001D0EC4 7C 03 28 00 */ cmpw r3, r5 +/* 801D3F68 001D0EC8 40 80 00 08 */ bge lbl_801D3F70 +lbl_801D3F6C: +/* 801D3F6C 001D0ECC 42 00 00 00 */ bdnz lbl_801D3F6C +lbl_801D3F70: +/* 801D3F70 001D0ED0 38 00 00 00 */ li r0, 0 +/* 801D3F74 001D0ED4 38 7F 00 04 */ addi r3, r31, 4 +/* 801D3F78 001D0ED8 90 06 00 00 */ stw r0, 0(r6) +/* 801D3F7C 001D0EDC 38 86 00 04 */ addi r4, r6, 4 +/* 801D3F80 001D0EE0 80 1F 00 00 */ lwz r0, 0(r31) +/* 801D3F84 001D0EE4 7C BF 02 14 */ add r5, r31, r0 +/* 801D3F88 001D0EE8 38 A5 00 04 */ addi r5, r5, 4 +/* 801D3F8C 001D0EEC 7C 03 28 50 */ subf r0, r3, r5 +/* 801D3F90 001D0EF0 7C 09 03 A6 */ mtctr r0 +/* 801D3F94 001D0EF4 7C 03 28 40 */ cmplw r3, r5 +/* 801D3F98 001D0EF8 41 82 00 20 */ beq lbl_801D3FB8 +lbl_801D3F9C: +/* 801D3F9C 001D0EFC 28 04 00 00 */ cmplwi r4, 0 +/* 801D3FA0 001D0F00 41 82 00 0C */ beq lbl_801D3FAC +/* 801D3FA4 001D0F04 88 03 00 00 */ lbz r0, 0(r3) +/* 801D3FA8 001D0F08 98 04 00 00 */ stb r0, 0(r4) +lbl_801D3FAC: +/* 801D3FAC 001D0F0C 38 84 00 01 */ addi r4, r4, 1 +/* 801D3FB0 001D0F10 38 63 00 01 */ addi r3, r3, 1 +/* 801D3FB4 001D0F14 42 00 FF E8 */ bdnz lbl_801D3F9C +lbl_801D3FB8: +/* 801D3FB8 001D0F18 80 1F 00 00 */ lwz r0, 0(r31) +/* 801D3FBC 001D0F1C 90 06 00 00 */ stw r0, 0(r6) +lbl_801D3FC0: +/* 801D3FC0 001D0F20 7F E3 FB 78 */ mr r3, r31 +/* 801D3FC4 001D0F24 48 00 12 45 */ bl GetLogScanCount__14CSystemOptionsFv +/* 801D3FC8 001D0F28 7C 64 1B 78 */ mr r4, r3 +/* 801D3FCC 001D0F2C 38 7E 00 A8 */ addi r3, r30, 0xa8 +/* 801D3FD0 001D0F30 48 00 12 31 */ bl SetLogScanCount__14CSystemOptionsFi +/* 801D3FD4 001D0F34 88 1F 00 D0 */ lbz r0, 0xd0(r31) +/* 801D3FD8 001D0F38 38 7E 00 A8 */ addi r3, r30, 0xa8 +/* 801D3FDC 001D0F3C 54 04 F7 FE */ rlwinm r4, r0, 0x1e, 0x1f, 0x1f +/* 801D3FE0 001D0F40 48 00 11 D1 */ bl SetAllItemsCollected__14CSystemOptionsFb +/* 801D3FE4 001D0F44 88 1F 00 D0 */ lbz r0, 0xd0(r31) +/* 801D3FE8 001D0F48 38 7E 00 A8 */ addi r3, r30, 0xa8 +/* 801D3FEC 001D0F4C 54 04 D7 FE */ rlwinm r4, r0, 0x1a, 0x1f, 0x1f +/* 801D3FF0 001D0F50 48 00 12 01 */ bl SetHasHardMode__14CSystemOptionsFb +/* 801D3FF4 001D0F54 88 1F 00 D0 */ lbz r0, 0xd0(r31) +/* 801D3FF8 001D0F58 38 7E 00 A8 */ addi r3, r30, 0xa8 +/* 801D3FFC 001D0F5C 54 04 DF FE */ rlwinm r4, r0, 0x1b, 0x1f, 0x1f +/* 801D4000 001D0F60 48 00 11 E1 */ bl SetHardModeBeat__14CSystemOptionsFb +/* 801D4004 001D0F64 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D4008 001D0F68 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801D400C 001D0F6C 83 C1 00 08 */ lwz r30, 8(r1) +/* 801D4010 001D0F70 7C 08 03 A6 */ mtlr r0 +/* 801D4014 001D0F74 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D4018 001D0F78 4E 80 00 20 */ blr + +.global sub_801d401c +sub_801d401c: +/* 801D401C 001D0F7C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D4020 001D0F80 7C 08 02 A6 */ mflr r0 +/* 801D4024 001D0F84 38 63 00 A8 */ addi r3, r3, 0xa8 +/* 801D4028 001D0F88 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D402C 001D0F8C 48 00 15 65 */ bl PutTo__14CSystemOptionsFR13COutputStream +/* 801D4030 001D0F90 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D4034 001D0F94 7C 08 03 A6 */ mtlr r0 +/* 801D4038 001D0F98 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D403C 001D0F9C 4E 80 00 20 */ blr + +.global ReadSystemOptions__10CGameStateFR12CInputStream +ReadSystemOptions__10CGameStateFR12CInputStream: +/* 801D4040 001D0FA0 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 801D4044 001D0FA4 7C 08 02 A6 */ mflr r0 +/* 801D4048 001D0FA8 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 801D404C 001D0FAC 93 E1 00 EC */ stw r31, 0xec(r1) +/* 801D4050 001D0FB0 7C 7F 1B 78 */ mr r31, r3 +/* 801D4054 001D0FB4 38 61 00 08 */ addi r3, r1, 8 +/* 801D4058 001D0FB8 48 00 19 11 */ bl __ct__14CSystemOptionsFRC12CInputStream +/* 801D405C 001D0FBC 38 7F 00 A8 */ addi r3, r31, 0xa8 +/* 801D4060 001D0FC0 38 81 00 08 */ addi r4, r1, 8 +/* 801D4064 001D0FC4 4B E2 F9 69 */ bl __as__14CSystemOptionsFRC14CSystemOptions +/* 801D4068 001D0FC8 38 61 00 08 */ addi r3, r1, 8 +/* 801D406C 001D0FCC 38 80 FF FF */ li r4, -1 +/* 801D4070 001D0FD0 4B E3 01 69 */ bl __dt__14CSystemOptionsFv +/* 801D4074 001D0FD4 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 801D4078 001D0FD8 83 E1 00 EC */ lwz r31, 0xec(r1) +/* 801D407C 001D0FDC 7C 08 03 A6 */ mtlr r0 +/* 801D4080 001D0FE0 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 801D4084 001D0FE4 4E 80 00 20 */ blr + +.global PutTo__10CGameStateFR16CMemoryStreamOut +PutTo__10CGameStateFR16CMemoryStreamOut: +/* 801D4088 001D0FE8 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801D408C 001D0FEC 7C 08 02 A6 */ mflr r0 +/* 801D4090 001D0FF0 90 01 00 54 */ stw r0, 0x54(r1) +/* 801D4094 001D0FF4 BF 01 00 30 */ stmw r24, 0x30(r1) +/* 801D4098 001D0FF8 7C 7E 1B 78 */ mr r30, r3 +/* 801D409C 001D0FFC 7C 9F 23 78 */ mr r31, r4 +/* 801D40A0 001D1000 3B 40 00 00 */ li r26, 0 +/* 801D40A4 001D1004 48 00 00 1C */ b lbl_801D40C0 +lbl_801D40A8: +/* 801D40A8 001D1008 7C 9E D2 14 */ add r4, r30, r26 +/* 801D40AC 001D100C 7F E3 FB 78 */ mr r3, r31 +/* 801D40B0 001D1010 88 84 00 04 */ lbz r4, 4(r4) +/* 801D40B4 001D1014 38 A0 00 08 */ li r5, 8 +/* 801D40B8 001D1018 48 16 B3 05 */ bl WriteBits__13COutputStreamFii +/* 801D40BC 001D101C 3B 5A 00 01 */ addi r26, r26, 1 +lbl_801D40C0: +/* 801D40C0 001D1020 80 1E 00 00 */ lwz r0, 0(r30) +/* 801D40C4 001D1024 7C 1A 00 00 */ cmpw r26, r0 +/* 801D40C8 001D1028 41 80 FF E0 */ blt lbl_801D40A8 +/* 801D40CC 001D102C 48 1B 12 DD */ bl OSGetTime +/* 801D40D0 001D1030 3C C0 80 00 */ lis r6, 0x800000F8@ha +/* 801D40D4 001D1034 38 A0 00 00 */ li r5, 0 +/* 801D40D8 001D1038 80 06 00 F8 */ lwz r0, 0x800000F8@l(r6) +/* 801D40DC 001D103C 54 06 F0 BE */ srwi r6, r0, 2 +/* 801D40E0 001D1040 48 1B 5A ED */ bl __div2i +/* 801D40E4 001D1044 7F E3 FB 78 */ mr r3, r31 +/* 801D40E8 001D1048 38 A0 00 20 */ li r5, 0x20 +/* 801D40EC 001D104C 48 16 B2 D1 */ bl WriteBits__13COutputStreamFii +/* 801D40F0 001D1050 88 1E 02 28 */ lbz r0, 0x228(r30) +/* 801D40F4 001D1054 7F E3 FB 78 */ mr r3, r31 +/* 801D40F8 001D1058 38 A0 00 01 */ li r5, 1 +/* 801D40FC 001D105C 54 04 CF FE */ rlwinm r4, r0, 0x19, 0x1f, 0x1f +/* 801D4100 001D1060 7C 04 00 D0 */ neg r0, r4 +/* 801D4104 001D1064 7C 00 23 78 */ or r0, r0, r4 +/* 801D4108 001D1068 54 04 0F FE */ srwi r4, r0, 0x1f +/* 801D410C 001D106C 48 16 B2 B1 */ bl WriteBits__13COutputStreamFii +/* 801D4110 001D1070 88 1E 02 28 */ lbz r0, 0x228(r30) +/* 801D4114 001D1074 7F E3 FB 78 */ mr r3, r31 +/* 801D4118 001D1078 38 A0 00 01 */ li r5, 1 +/* 801D411C 001D107C 54 04 D7 FE */ rlwinm r4, r0, 0x1a, 0x1f, 0x1f +/* 801D4120 001D1080 7C 04 00 D0 */ neg r0, r4 +/* 801D4124 001D1084 7C 00 23 78 */ or r0, r0, r4 +/* 801D4128 001D1088 54 04 0F FE */ srwi r4, r0, 0x1f +/* 801D412C 001D108C 48 16 B2 91 */ bl WriteBits__13COutputStreamFii +/* 801D4130 001D1090 80 9E 00 84 */ lwz r4, 0x84(r30) +/* 801D4134 001D1094 7F E3 FB 78 */ mr r3, r31 +/* 801D4138 001D1098 38 A0 00 20 */ li r5, 0x20 +/* 801D413C 001D109C 48 16 B2 81 */ bl WriteBits__13COutputStreamFii +/* 801D4140 001D10A0 80 9E 00 A0 */ lwz r4, 0xa0(r30) +/* 801D4144 001D10A4 7F E3 FB 78 */ mr r3, r31 +/* 801D4148 001D10A8 83 7E 00 A4 */ lwz r27, 0xa4(r30) +/* 801D414C 001D10AC 38 A0 00 20 */ li r5, 0x20 +/* 801D4150 001D10B0 48 16 B2 6D */ bl WriteBits__13COutputStreamFii +/* 801D4154 001D10B4 38 00 FF FF */ li r0, -1 +/* 801D4158 001D10B8 7F E3 FB 78 */ mr r3, r31 +/* 801D415C 001D10BC 38 A0 00 20 */ li r5, 0x20 +/* 801D4160 001D10C0 7F 64 00 38 */ and r4, r27, r0 +/* 801D4164 001D10C4 48 16 B2 59 */ bl WriteBits__13COutputStreamFii +/* 801D4168 001D10C8 80 7E 00 98 */ lwz r3, 0x98(r30) +/* 801D416C 001D10CC 7F E4 FB 78 */ mr r4, r31 +/* 801D4170 001D10D0 80 63 00 00 */ lwz r3, 0(r3) +/* 801D4174 001D10D4 4B EB DD 49 */ bl PutTo__12CPlayerStateFR13COutPutStream +/* 801D4178 001D10D8 7F E4 FB 78 */ mr r4, r31 +/* 801D417C 001D10DC 38 7E 01 7C */ addi r3, r30, 0x17c +/* 801D4180 001D10E0 48 03 B1 15 */ bl PutTo__12CGameOptionsFR16CMemoryStreamOut +/* 801D4184 001D10E4 7F E4 FB 78 */ mr r4, r31 +/* 801D4188 001D10E8 38 7E 01 F8 */ addi r3, r30, 0x1f8 +/* 801D418C 001D10EC 48 09 3A 6D */ bl PutTo__16CGameHintManagerFR16CMemoryStreamOut +/* 801D4190 001D10F0 83 8D A0 84 */ lwz r28, gpMemoryCard@sda21(r13) +/* 801D4194 001D10F4 3C 60 53 41 */ lis r3, 0x53415657@ha +/* 801D4198 001D10F8 3B A3 56 57 */ addi r29, r3, 0x53415657@l +/* 801D419C 001D10FC 3B 01 00 18 */ addi r24, r1, 0x18 +/* 801D41A0 001D1100 83 5C 00 18 */ lwz r26, 0x18(r28) +/* 801D41A4 001D1104 48 00 00 84 */ b lbl_801D4228 +lbl_801D41A8: +/* 801D41A8 001D1108 83 3A 00 00 */ lwz r25, 0(r26) +/* 801D41AC 001D110C 38 61 00 08 */ addi r3, r1, 8 +/* 801D41B0 001D1110 80 1A 00 08 */ lwz r0, 8(r26) +/* 801D41B4 001D1114 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801D41B8 001D1118 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801D41BC 001D111C 93 A1 00 10 */ stw r29, 0x10(r1) +/* 801D41C0 001D1120 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D41C4 001D1124 81 84 00 00 */ lwz r12, 0(r4) +/* 801D41C8 001D1128 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801D41CC 001D112C 7D 89 03 A6 */ mtctr r12 +/* 801D41D0 001D1130 4E 80 04 21 */ bctrl +/* 801D41D4 001D1134 7F 03 C3 78 */ mr r3, r24 +/* 801D41D8 001D1138 38 81 00 08 */ addi r4, r1, 8 +/* 801D41DC 001D113C 48 16 CC CD */ bl __ct__6CTokenFRC6CToken +/* 801D41E0 001D1140 7F 03 C3 78 */ mr r3, r24 +/* 801D41E4 001D1144 48 16 CC 29 */ bl GetObj__6CTokenFv +/* 801D41E8 001D1148 80 03 00 04 */ lwz r0, 4(r3) +/* 801D41EC 001D114C 38 61 00 08 */ addi r3, r1, 8 +/* 801D41F0 001D1150 38 80 FF FF */ li r4, -1 +/* 801D41F4 001D1154 90 01 00 20 */ stw r0, 0x20(r1) +/* 801D41F8 001D1158 48 16 CC 49 */ bl __dt__6CTokenFv +/* 801D41FC 001D115C 83 61 00 20 */ lwz r27, 0x20(r1) +/* 801D4200 001D1160 7F C3 F3 78 */ mr r3, r30 +/* 801D4204 001D1164 7F 24 CB 78 */ mr r4, r25 +/* 801D4208 001D1168 4B FF F7 D1 */ bl StateForWorld__10CGameStateFUi +/* 801D420C 001D116C 7F E4 FB 78 */ mr r4, r31 +/* 801D4210 001D1170 7F 65 DB 78 */ mr r5, r27 +/* 801D4214 001D1174 48 00 0B 85 */ bl PutTo__11CWorldStateFR16CMemoryStreamOut +/* 801D4218 001D1178 38 61 00 18 */ addi r3, r1, 0x18 +/* 801D421C 001D117C 38 80 00 00 */ li r4, 0 +/* 801D4220 001D1180 48 16 CC 21 */ bl __dt__6CTokenFv +/* 801D4224 001D1184 3B 5A 00 4C */ addi r26, r26, 0x4c +lbl_801D4228: +/* 801D4228 001D1188 80 1C 00 10 */ lwz r0, 0x10(r28) +/* 801D422C 001D118C 80 7C 00 18 */ lwz r3, 0x18(r28) +/* 801D4230 001D1190 1C 00 00 4C */ mulli r0, r0, 0x4c +/* 801D4234 001D1194 7C 03 02 14 */ add r0, r3, r0 +/* 801D4238 001D1198 7C 1A 00 40 */ cmplw r26, r0 +/* 801D423C 001D119C 40 82 FF 6C */ bne lbl_801D41A8 +/* 801D4240 001D11A0 BB 01 00 30 */ lmw r24, 0x30(r1) +/* 801D4244 001D11A4 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801D4248 001D11A8 7C 08 03 A6 */ mtlr r0 +/* 801D424C 001D11AC 38 21 00 50 */ addi r1, r1, 0x50 +/* 801D4250 001D11B0 4E 80 00 20 */ blr + +.global LoadGameFileState__10CGameStateFPCv +LoadGameFileState__10CGameStateFPCv: +/* 801D4254 001D11B4 94 21 FD E0 */ stwu r1, -0x220(r1) +/* 801D4258 001D11B8 7C 08 02 A6 */ mflr r0 +/* 801D425C 001D11BC 38 A0 10 00 */ li r5, 0x1000 +/* 801D4260 001D11C0 90 01 02 24 */ stw r0, 0x224(r1) +/* 801D4264 001D11C4 93 E1 02 1C */ stw r31, 0x21c(r1) +/* 801D4268 001D11C8 7C 7F 1B 78 */ mr r31, r3 +/* 801D426C 001D11CC 38 61 00 10 */ addi r3, r1, 0x10 +/* 801D4270 001D11D0 93 C1 02 18 */ stw r30, 0x218(r1) +/* 801D4274 001D11D4 93 A1 02 14 */ stw r29, 0x214(r1) +/* 801D4278 001D11D8 48 16 AF 55 */ bl __ct__15CMemoryInStreamFPCvUl +/* 801D427C 001D11DC 3B A0 00 00 */ li r29, 0 +lbl_801D4280: +/* 801D4280 001D11E0 38 61 00 10 */ addi r3, r1, 0x10 +/* 801D4284 001D11E4 38 80 00 08 */ li r4, 8 +/* 801D4288 001D11E8 48 16 AA B1 */ bl ReadBits__12CInputStreamFi +/* 801D428C 001D11EC 3B BD 00 01 */ addi r29, r29, 1 +/* 801D4290 001D11F0 2C 1D 00 80 */ cmpwi r29, 0x80 +/* 801D4294 001D11F4 41 80 FF EC */ blt lbl_801D4280 +/* 801D4298 001D11F8 38 61 00 10 */ addi r3, r1, 0x10 +/* 801D429C 001D11FC 38 80 00 20 */ li r4, 0x20 +/* 801D42A0 001D1200 48 16 AA 99 */ bl ReadBits__12CInputStreamFi +/* 801D42A4 001D1204 7C 7D 1B 78 */ mr r29, r3 +/* 801D42A8 001D1208 38 61 00 10 */ addi r3, r1, 0x10 +/* 801D42AC 001D120C 38 80 00 01 */ li r4, 1 +/* 801D42B0 001D1210 48 16 AA 89 */ bl ReadBits__12CInputStreamFi +/* 801D42B4 001D1214 7C 03 00 D0 */ neg r0, r3 +/* 801D42B8 001D1218 38 80 00 01 */ li r4, 1 +/* 801D42BC 001D121C 7C 00 1B 78 */ or r0, r0, r3 +/* 801D42C0 001D1220 38 61 00 10 */ addi r3, r1, 0x10 +/* 801D42C4 001D1224 54 00 0F FE */ srwi r0, r0, 0x1f +/* 801D42C8 001D1228 98 01 00 58 */ stb r0, 0x58(r1) +/* 801D42CC 001D122C 48 16 AA 6D */ bl ReadBits__12CInputStreamFi +/* 801D42D0 001D1230 38 61 00 10 */ addi r3, r1, 0x10 +/* 801D42D4 001D1234 38 80 00 20 */ li r4, 0x20 +/* 801D42D8 001D1238 48 16 AA 61 */ bl ReadBits__12CInputStreamFi +/* 801D42DC 001D123C 90 61 00 40 */ stw r3, 0x40(r1) +/* 801D42E0 001D1240 38 61 00 10 */ addi r3, r1, 0x10 +/* 801D42E4 001D1244 38 80 00 20 */ li r4, 0x20 +/* 801D42E8 001D1248 48 16 AA 51 */ bl ReadBits__12CInputStreamFi +/* 801D42EC 001D124C 7C 7E 1B 78 */ mr r30, r3 +/* 801D42F0 001D1250 38 61 00 10 */ addi r3, r1, 0x10 +/* 801D42F4 001D1254 38 80 00 20 */ li r4, 0x20 +/* 801D42F8 001D1258 48 16 AA 41 */ bl ReadBits__12CInputStreamFi +/* 801D42FC 001D125C 38 00 00 00 */ li r0, 0 +/* 801D4300 001D1260 93 C1 00 0C */ stw r30, 0xc(r1) +/* 801D4304 001D1264 38 81 00 10 */ addi r4, r1, 0x10 +/* 801D4308 001D1268 90 01 00 08 */ stw r0, 8(r1) +/* 801D430C 001D126C 90 01 00 0C */ stw r0, 0xc(r1) +/* 801D4310 001D1270 93 C1 00 08 */ stw r30, 8(r1) +/* 801D4314 001D1274 90 61 00 0C */ stw r3, 0xc(r1) +/* 801D4318 001D1278 38 61 00 60 */ addi r3, r1, 0x60 +/* 801D431C 001D127C 93 C1 00 08 */ stw r30, 8(r1) +/* 801D4320 001D1280 C8 01 00 08 */ lfd f0, 8(r1) +/* 801D4324 001D1284 D8 01 00 38 */ stfd f0, 0x38(r1) +/* 801D4328 001D1288 4B EB DD 01 */ bl __ct__12CPlayerStateFR12CInputStream +/* 801D432C 001D128C C0 01 00 6C */ lfs f0, 0x6c(r1) +/* 801D4330 001D1290 38 61 00 60 */ addi r3, r1, 0x60 +/* 801D4334 001D1294 38 80 00 18 */ li r4, 0x18 +/* 801D4338 001D1298 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 801D433C 001D129C 4B EB D7 B9 */ bl GetItemCapacity__12CPlayerStateCFQ212CPlayerState9EItemType +/* 801D4340 001D12A0 80 81 00 40 */ lwz r4, 0x40(r1) +/* 801D4344 001D12A4 90 61 00 48 */ stw r3, 0x48(r1) +/* 801D4348 001D12A8 3C 04 EA 72 */ addis r0, r4, 0xea72 +/* 801D434C 001D12AC 28 00 FE 17 */ cmplwi r0, 0xfe17 +/* 801D4350 001D12B0 93 A1 00 4C */ stw r29, 0x4c(r1) +/* 801D4354 001D12B4 40 82 00 0C */ bne lbl_801D4360 +/* 801D4358 001D12B8 38 00 00 00 */ li r0, 0 +/* 801D435C 001D12BC 48 00 00 20 */ b lbl_801D437C +lbl_801D4360: +/* 801D4360 001D12C0 38 61 00 60 */ addi r3, r1, 0x60 +/* 801D4364 001D12C4 4B EB D1 49 */ bl GetTotalPickupCount__12CPlayerStateFv +/* 801D4368 001D12C8 7C 7E 1B 78 */ mr r30, r3 +/* 801D436C 001D12CC 38 61 00 60 */ addi r3, r1, 0x60 +/* 801D4370 001D12D0 4B EB CE C5 */ bl CalculateItemCollectionRate__12CPlayerStateFv +/* 801D4374 001D12D4 1C 03 00 64 */ mulli r0, r3, 0x64 +/* 801D4378 001D12D8 7C 00 F3 D6 */ divw r0, r0, r30 +lbl_801D437C: +/* 801D437C 001D12DC 80 A1 01 E4 */ lwz r5, 0x1e4(r1) +/* 801D4380 001D12E0 90 01 00 50 */ stw r0, 0x50(r1) +/* 801D4384 001D12E4 2C 05 00 00 */ cmpwi r5, 0 +/* 801D4388 001D12E8 40 82 00 0C */ bne lbl_801D4394 +/* 801D438C 001D12EC C0 22 AC 28 */ lfs f1, lbl_805AC948@sda21(r2) +/* 801D4390 001D12F0 48 00 00 44 */ b lbl_801D43D4 +lbl_801D4394: +/* 801D4394 001D12F4 80 81 01 E0 */ lwz r4, 0x1e0(r1) +/* 801D4398 001D12F8 3C 60 43 30 */ lis r3, 0x4330 +/* 801D439C 001D12FC 6C A0 80 00 */ xoris r0, r5, 0x8000 +/* 801D43A0 001D1300 90 61 01 F8 */ stw r3, 0x1f8(r1) +/* 801D43A4 001D1304 6C 84 80 00 */ xoris r4, r4, 0x8000 +/* 801D43A8 001D1308 C8 42 AC 30 */ lfd f2, lbl_805AC950@sda21(r2) +/* 801D43AC 001D130C 90 81 01 FC */ stw r4, 0x1fc(r1) +/* 801D43B0 001D1310 C0 62 AC 2C */ lfs f3, lbl_805AC94C@sda21(r2) +/* 801D43B4 001D1314 C8 01 01 F8 */ lfd f0, 0x1f8(r1) +/* 801D43B8 001D1318 90 01 02 04 */ stw r0, 0x204(r1) +/* 801D43BC 001D131C EC 20 10 28 */ fsubs f1, f0, f2 +/* 801D43C0 001D1320 90 61 02 00 */ stw r3, 0x200(r1) +/* 801D43C4 001D1324 C8 01 02 00 */ lfd f0, 0x200(r1) +/* 801D43C8 001D1328 EC 00 10 28 */ fsubs f0, f0, f2 +/* 801D43CC 001D132C EC 01 00 24 */ fdivs f0, f1, f0 +/* 801D43D0 001D1330 EC 23 00 32 */ fmuls f1, f3, f0 +lbl_801D43D4: +/* 801D43D4 001D1334 C8 01 00 38 */ lfd f0, 0x38(r1) +/* 801D43D8 001D1338 38 61 00 60 */ addi r3, r1, 0x60 +/* 801D43DC 001D133C D0 21 00 54 */ stfs f1, 0x54(r1) +/* 801D43E0 001D1340 38 80 FF FF */ li r4, -1 +/* 801D43E4 001D1344 C8 21 00 40 */ lfd f1, 0x40(r1) +/* 801D43E8 001D1348 D8 1F 00 00 */ stfd f0, 0(r31) +/* 801D43EC 001D134C C8 01 00 48 */ lfd f0, 0x48(r1) +/* 801D43F0 001D1350 D8 3F 00 08 */ stfd f1, 8(r31) +/* 801D43F4 001D1354 C8 21 00 50 */ lfd f1, 0x50(r1) +/* 801D43F8 001D1358 D8 1F 00 10 */ stfd f0, 0x10(r31) +/* 801D43FC 001D135C C8 01 00 58 */ lfd f0, 0x58(r1) +/* 801D4400 001D1360 D8 3F 00 18 */ stfd f1, 0x18(r31) +/* 801D4404 001D1364 D8 1F 00 20 */ stfd f0, 0x20(r31) +/* 801D4408 001D1368 4B E3 4B 61 */ bl __dt__12CPlayerStateFv +/* 801D440C 001D136C 3C 80 80 3F */ lis r4, __vt__15CMemoryInStream@ha +/* 801D4410 001D1370 38 61 00 10 */ addi r3, r1, 0x10 +/* 801D4414 001D1374 38 04 E3 98 */ addi r0, r4, __vt__15CMemoryInStream@l +/* 801D4418 001D1378 38 80 00 00 */ li r4, 0 +/* 801D441C 001D137C 90 01 00 10 */ stw r0, 0x10(r1) +/* 801D4420 001D1380 48 16 AC 8D */ bl __dt__12CInputStreamFv +/* 801D4424 001D1384 80 01 02 24 */ lwz r0, 0x224(r1) +/* 801D4428 001D1388 83 E1 02 1C */ lwz r31, 0x21c(r1) +/* 801D442C 001D138C 83 C1 02 18 */ lwz r30, 0x218(r1) +/* 801D4430 001D1390 83 A1 02 14 */ lwz r29, 0x214(r1) +/* 801D4434 001D1394 7C 08 03 A6 */ mtlr r0 +/* 801D4438 001D1398 38 21 02 20 */ addi r1, r1, 0x220 +/* 801D443C 001D139C 4E 80 00 20 */ blr + +.global InitializeMemoryWorlds__10CGameStateFv +InitializeMemoryWorlds__10CGameStateFv: +/* 801D4440 001D13A0 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801D4444 001D13A4 7C 08 02 A6 */ mflr r0 +/* 801D4448 001D13A8 90 01 00 34 */ stw r0, 0x34(r1) +/* 801D444C 001D13AC 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801D4450 001D13B0 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801D4454 001D13B4 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801D4458 001D13B8 7C 7D 1B 78 */ mr r29, r3 +/* 801D445C 001D13BC 83 ED A0 84 */ lwz r31, gpMemoryCard@sda21(r13) +/* 801D4460 001D13C0 83 DF 00 18 */ lwz r30, 0x18(r31) +/* 801D4464 001D13C4 48 00 00 80 */ b lbl_801D44E4 +lbl_801D4468: +/* 801D4468 001D13C8 80 9E 00 00 */ lwz r4, 0(r30) +/* 801D446C 001D13CC 7F A3 EB 78 */ mr r3, r29 +/* 801D4470 001D13D0 4B FF F5 69 */ bl StateForWorld__10CGameStateFUi +/* 801D4474 001D13D4 48 00 08 C1 */ bl GetLayerState__11CWorldStateFv +/* 801D4478 001D13D8 81 03 00 00 */ lwz r8, 0(r3) +/* 801D447C 001D13DC 38 ED A9 28 */ addi r7, r13, lbl_805A94E8@sda21 +/* 801D4480 001D13E0 38 9E 00 20 */ addi r4, r30, 0x20 +/* 801D4484 001D13E4 38 A1 00 0C */ addi r5, r1, 0xc +/* 801D4488 001D13E8 91 01 00 10 */ stw r8, 0x10(r1) +/* 801D448C 001D13EC 38 C1 00 08 */ addi r6, r1, 8 +/* 801D4490 001D13F0 80 68 00 04 */ lwz r3, 4(r8) +/* 801D4494 001D13F4 38 03 00 01 */ addi r0, r3, 1 +/* 801D4498 001D13F8 90 08 00 04 */ stw r0, 4(r8) +/* 801D449C 001D13FC 90 E1 00 0C */ stw r7, 0xc(r1) +/* 801D44A0 001D1400 80 67 00 04 */ lwz r3, 4(r7) +/* 801D44A4 001D1404 38 03 00 01 */ addi r0, r3, 1 +/* 801D44A8 001D1408 90 07 00 04 */ stw r0, 4(r7) +/* 801D44AC 001D140C 90 E1 00 08 */ stw r7, 8(r1) +/* 801D44B0 001D1410 80 67 00 04 */ lwz r3, 4(r7) +/* 801D44B4 001D1414 38 03 00 01 */ addi r0, r3, 1 +/* 801D44B8 001D1418 90 07 00 04 */ stw r0, 4(r7) +/* 801D44BC 001D141C 80 61 00 10 */ lwz r3, 0x10(r1) +/* 801D44C0 001D1420 80 63 00 00 */ lwz r3, 0(r3) +/* 801D44C4 001D1424 48 05 FB 05 */ bl "InitializeWorldLayers__16CWorldLayerStateFQ24rstl6vector" +/* 801D44C8 001D1428 38 61 00 08 */ addi r3, r1, 8 +/* 801D44CC 001D142C 4B E8 59 99 */ bl sub_80059e64 +/* 801D44D0 001D1430 38 61 00 0C */ addi r3, r1, 0xc +/* 801D44D4 001D1434 4B E8 58 C5 */ bl sub_80059d98 +/* 801D44D8 001D1438 38 61 00 10 */ addi r3, r1, 0x10 +/* 801D44DC 001D143C 4B E3 48 F1 */ bl sub_80008dcc +/* 801D44E0 001D1440 3B DE 00 4C */ addi r30, r30, 0x4c +lbl_801D44E4: +/* 801D44E4 001D1444 80 1F 00 10 */ lwz r0, 0x10(r31) +/* 801D44E8 001D1448 80 7F 00 18 */ lwz r3, 0x18(r31) +/* 801D44EC 001D144C 1C 00 00 4C */ mulli r0, r0, 0x4c +/* 801D44F0 001D1450 7C 03 02 14 */ add r0, r3, r0 +/* 801D44F4 001D1454 7C 1E 00 40 */ cmplw r30, r0 +/* 801D44F8 001D1458 40 82 FF 70 */ bne lbl_801D4468 +/* 801D44FC 001D145C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801D4500 001D1460 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801D4504 001D1464 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801D4508 001D1468 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801D450C 001D146C 7C 08 03 A6 */ mtlr r0 +/* 801D4510 001D1470 38 21 00 30 */ addi r1, r1, 0x30 +/* 801D4514 001D1474 4E 80 00 20 */ blr + +.global InitializeMemoryStates__10CGameStateFv +InitializeMemoryStates__10CGameStateFv: +/* 801D4518 001D1478 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D451C 001D147C 7C 08 02 A6 */ mflr r0 +/* 801D4520 001D1480 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D4524 001D1484 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801D4528 001D1488 7C 7F 1B 78 */ mr r31, r3 +/* 801D452C 001D148C 80 63 00 98 */ lwz r3, 0x98(r3) +/* 801D4530 001D1490 80 63 00 00 */ lwz r3, 0(r3) +/* 801D4534 001D1494 4B EB D2 09 */ bl InitializeScanTimes__12CPlayerStateFv +/* 801D4538 001D1498 38 7F 01 F8 */ addi r3, r31, 0x1f8 +/* 801D453C 001D149C 48 09 35 69 */ bl InitializeMemoryState__12CHintOptionsFv +/* 801D4540 001D14A0 7F E3 FB 78 */ mr r3, r31 +/* 801D4544 001D14A4 4B FF FE FD */ bl InitializeMemoryWorlds__10CGameStateFv +/* 801D4548 001D14A8 7F E3 FB 78 */ mr r3, r31 +/* 801D454C 001D14AC 4B FF F6 69 */ bl WriteBackupBuf__10CGameStateFv +/* 801D4550 001D14B0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D4554 001D14B4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801D4558 001D14B8 7C 08 03 A6 */ mtlr r0 +/* 801D455C 001D14BC 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D4560 001D14C0 4E 80 00 20 */ blr + +.global __ct__10CGameStateFR12CInputStreami +__ct__10CGameStateFR12CInputStreami: +/* 801D4564 001D14C4 94 21 FE F0 */ stwu r1, -0x110(r1) +/* 801D4568 001D14C8 7C 08 02 A6 */ mflr r0 +/* 801D456C 001D14CC 90 01 01 14 */ stw r0, 0x114(r1) +/* 801D4570 001D14D0 38 00 00 10 */ li r0, 0x10 +/* 801D4574 001D14D4 BE C1 00 E8 */ stmw r22, 0xe8(r1) +/* 801D4578 001D14D8 7C 7D 1B 78 */ mr r29, r3 +/* 801D457C 001D14DC 38 60 00 80 */ li r3, 0x80 +/* 801D4580 001D14E0 7C 9E 23 78 */ mr r30, r4 +/* 801D4584 001D14E4 7C BF 2B 78 */ mr r31, r5 +/* 801D4588 001D14E8 38 9D 00 04 */ addi r4, r29, 4 +/* 801D458C 001D14EC 90 7D 00 00 */ stw r3, 0(r29) +/* 801D4590 001D14F0 38 60 00 00 */ li r3, 0 +/* 801D4594 001D14F4 7C 09 03 A6 */ mtctr r0 +lbl_801D4598: +/* 801D4598 001D14F8 28 04 00 00 */ cmplwi r4, 0 +/* 801D459C 001D14FC 41 82 00 0C */ beq lbl_801D45A8 +/* 801D45A0 001D1500 88 0D 91 AD */ lbz r0, lbl_805A7D6D@sda21(r13) +/* 801D45A4 001D1504 98 04 00 00 */ stb r0, 0(r4) +lbl_801D45A8: +/* 801D45A8 001D1508 34 84 00 01 */ addic. r4, r4, 1 +/* 801D45AC 001D150C 41 82 00 0C */ beq lbl_801D45B8 +/* 801D45B0 001D1510 88 0D 91 AD */ lbz r0, lbl_805A7D6D@sda21(r13) +/* 801D45B4 001D1514 98 04 00 00 */ stb r0, 0(r4) +lbl_801D45B8: +/* 801D45B8 001D1518 34 84 00 01 */ addic. r4, r4, 1 +/* 801D45BC 001D151C 41 82 00 0C */ beq lbl_801D45C8 +/* 801D45C0 001D1520 88 0D 91 AD */ lbz r0, lbl_805A7D6D@sda21(r13) +/* 801D45C4 001D1524 98 04 00 00 */ stb r0, 0(r4) +lbl_801D45C8: +/* 801D45C8 001D1528 34 84 00 01 */ addic. r4, r4, 1 +/* 801D45CC 001D152C 41 82 00 0C */ beq lbl_801D45D8 +/* 801D45D0 001D1530 88 0D 91 AD */ lbz r0, lbl_805A7D6D@sda21(r13) +/* 801D45D4 001D1534 98 04 00 00 */ stb r0, 0(r4) +lbl_801D45D8: +/* 801D45D8 001D1538 34 84 00 01 */ addic. r4, r4, 1 +/* 801D45DC 001D153C 41 82 00 0C */ beq lbl_801D45E8 +/* 801D45E0 001D1540 88 0D 91 AD */ lbz r0, lbl_805A7D6D@sda21(r13) +/* 801D45E4 001D1544 98 04 00 00 */ stb r0, 0(r4) +lbl_801D45E8: +/* 801D45E8 001D1548 34 84 00 01 */ addic. r4, r4, 1 +/* 801D45EC 001D154C 41 82 00 0C */ beq lbl_801D45F8 +/* 801D45F0 001D1550 88 0D 91 AD */ lbz r0, lbl_805A7D6D@sda21(r13) +/* 801D45F4 001D1554 98 04 00 00 */ stb r0, 0(r4) +lbl_801D45F8: +/* 801D45F8 001D1558 34 84 00 01 */ addic. r4, r4, 1 +/* 801D45FC 001D155C 41 82 00 0C */ beq lbl_801D4608 +/* 801D4600 001D1560 88 0D 91 AD */ lbz r0, lbl_805A7D6D@sda21(r13) +/* 801D4604 001D1564 98 04 00 00 */ stb r0, 0(r4) +lbl_801D4608: +/* 801D4608 001D1568 34 84 00 01 */ addic. r4, r4, 1 +/* 801D460C 001D156C 41 82 00 0C */ beq lbl_801D4618 +/* 801D4610 001D1570 88 0D 91 AD */ lbz r0, lbl_805A7D6D@sda21(r13) +/* 801D4614 001D1574 98 04 00 00 */ stb r0, 0(r4) +lbl_801D4618: +/* 801D4618 001D1578 38 63 00 07 */ addi r3, r3, 7 +/* 801D461C 001D157C 38 84 00 01 */ addi r4, r4, 1 +/* 801D4620 001D1580 42 00 FF 78 */ bdnz lbl_801D4598 +/* 801D4624 001D1584 38 00 FF FF */ li r0, -1 +/* 801D4628 001D1588 3C 60 80 3D */ lis r3, lbl_803D1B88@ha +/* 801D462C 001D158C 90 1D 00 84 */ stw r0, 0x84(r29) +/* 801D4630 001D1590 38 00 00 00 */ li r0, 0 +/* 801D4634 001D1594 38 83 1B 88 */ addi r4, r3, lbl_803D1B88@l +/* 801D4638 001D1598 38 60 00 08 */ li r3, 8 +/* 801D463C 001D159C 90 1D 00 8C */ stw r0, 0x8c(r29) +/* 801D4640 001D15A0 38 A0 00 00 */ li r5, 0 +/* 801D4644 001D15A4 90 1D 00 90 */ stw r0, 0x90(r29) +/* 801D4648 001D15A8 90 1D 00 94 */ stw r0, 0x94(r29) +/* 801D464C 001D15AC 48 14 12 21 */ bl __nw__FUlPCcPCc +/* 801D4650 001D15B0 28 03 00 00 */ cmplwi r3, 0 +/* 801D4654 001D15B4 41 82 00 14 */ beq lbl_801D4668 +/* 801D4658 001D15B8 38 80 00 00 */ li r4, 0 +/* 801D465C 001D15BC 38 00 00 01 */ li r0, 1 +/* 801D4660 001D15C0 90 83 00 00 */ stw r4, 0(r3) +/* 801D4664 001D15C4 90 03 00 04 */ stw r0, 4(r3) +lbl_801D4668: +/* 801D4668 001D15C8 3C 80 80 3D */ lis r4, lbl_803D1B88@ha +/* 801D466C 001D15CC 90 7D 00 98 */ stw r3, 0x98(r29) +/* 801D4670 001D15D0 38 84 1B 88 */ addi r4, r4, lbl_803D1B88@l +/* 801D4674 001D15D4 38 60 00 48 */ li r3, 0x48 +/* 801D4678 001D15D8 38 A0 00 00 */ li r5, 0 +/* 801D467C 001D15DC 48 14 11 F1 */ bl __nw__FUlPCcPCc +/* 801D4680 001D15E0 7C 7C 1B 79 */ or. r28, r3, r3 +/* 801D4684 001D15E4 41 82 00 0C */ beq lbl_801D4690 +/* 801D4688 001D15E8 48 03 70 D1 */ bl __ct__18CWorldTransManagerFv +/* 801D468C 001D15EC 7C 7C 1B 78 */ mr r28, r3 +lbl_801D4690: +/* 801D4690 001D15F0 3C 80 80 3D */ lis r4, lbl_803D1B88@ha +/* 801D4694 001D15F4 38 60 00 08 */ li r3, 8 +/* 801D4698 001D15F8 38 84 1B 88 */ addi r4, r4, lbl_803D1B88@l +/* 801D469C 001D15FC 38 A0 00 00 */ li r5, 0 +/* 801D46A0 001D1600 48 14 11 CD */ bl __nw__FUlPCcPCc +/* 801D46A4 001D1604 28 03 00 00 */ cmplwi r3, 0 +/* 801D46A8 001D1608 41 82 00 10 */ beq lbl_801D46B8 +/* 801D46AC 001D160C 93 83 00 00 */ stw r28, 0(r3) +/* 801D46B0 001D1610 38 00 00 01 */ li r0, 1 +/* 801D46B4 001D1614 90 03 00 04 */ stw r0, 4(r3) +lbl_801D46B8: +/* 801D46B8 001D1618 90 7D 00 9C */ stw r3, 0x9c(r29) +/* 801D46BC 001D161C 38 7D 00 A8 */ addi r3, r29, 0xa8 +/* 801D46C0 001D1620 C8 02 AC 38 */ lfd f0, lbl_805AC958@sda21(r2) +/* 801D46C4 001D1624 D8 1D 00 A0 */ stfd f0, 0xa0(r29) +/* 801D46C8 001D1628 48 00 18 41 */ bl __ct__14CSystemOptionsFv +/* 801D46CC 001D162C 38 7D 01 7C */ addi r3, r29, 0x17c +/* 801D46D0 001D1630 48 03 B1 01 */ bl __ct__12CGameOptionsFv +/* 801D46D4 001D1634 38 7D 01 F8 */ addi r3, r29, 0x1f8 +/* 801D46D8 001D1638 48 09 37 59 */ bl __ct__12CHintOptionsFv +/* 801D46DC 001D163C 93 FD 02 0C */ stw r31, 0x20c(r29) +/* 801D46E0 001D1640 38 60 00 00 */ li r3, 0 +/* 801D46E4 001D1644 3B 00 00 00 */ li r24, 0 +/* 801D46E8 001D1648 90 7D 02 14 */ stw r3, 0x214(r29) +/* 801D46EC 001D164C 90 7D 02 10 */ stw r3, 0x210(r29) +/* 801D46F0 001D1650 90 7D 02 1C */ stw r3, 0x21c(r29) +/* 801D46F4 001D1654 90 7D 02 20 */ stw r3, 0x220(r29) +/* 801D46F8 001D1658 90 7D 02 24 */ stw r3, 0x224(r29) +/* 801D46FC 001D165C 88 1D 02 28 */ lbz r0, 0x228(r29) +/* 801D4700 001D1660 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801D4704 001D1664 98 1D 02 28 */ stb r0, 0x228(r29) +/* 801D4708 001D1668 88 1D 02 28 */ lbz r0, 0x228(r29) +/* 801D470C 001D166C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801D4710 001D1670 98 1D 02 28 */ stb r0, 0x228(r29) +/* 801D4714 001D1674 48 00 00 1C */ b lbl_801D4730 +lbl_801D4718: +/* 801D4718 001D1678 7F C3 F3 78 */ mr r3, r30 +/* 801D471C 001D167C 38 80 00 08 */ li r4, 8 +/* 801D4720 001D1680 48 16 A6 19 */ bl ReadBits__12CInputStreamFi +/* 801D4724 001D1684 7C 9D C2 14 */ add r4, r29, r24 +/* 801D4728 001D1688 3B 18 00 01 */ addi r24, r24, 1 +/* 801D472C 001D168C 98 64 00 04 */ stb r3, 4(r4) +lbl_801D4730: +/* 801D4730 001D1690 80 1D 00 00 */ lwz r0, 0(r29) +/* 801D4734 001D1694 7C 18 00 00 */ cmpw r24, r0 +/* 801D4738 001D1698 41 80 FF E0 */ blt lbl_801D4718 +/* 801D473C 001D169C 7F C3 F3 78 */ mr r3, r30 +/* 801D4740 001D16A0 38 80 00 20 */ li r4, 0x20 +/* 801D4744 001D16A4 48 16 A5 F5 */ bl ReadBits__12CInputStreamFi +/* 801D4748 001D16A8 7F C3 F3 78 */ mr r3, r30 +/* 801D474C 001D16AC 38 80 00 01 */ li r4, 1 +/* 801D4750 001D16B0 48 16 A5 E9 */ bl ReadBits__12CInputStreamFi +/* 801D4754 001D16B4 7C 83 00 D0 */ neg r4, r3 +/* 801D4758 001D16B8 88 1D 02 28 */ lbz r0, 0x228(r29) +/* 801D475C 001D16BC 7C 84 1B 78 */ or r4, r4, r3 +/* 801D4760 001D16C0 7F C3 F3 78 */ mr r3, r30 +/* 801D4764 001D16C4 54 85 0F FE */ srwi r5, r4, 0x1f +/* 801D4768 001D16C8 38 80 00 01 */ li r4, 1 +/* 801D476C 001D16CC 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 801D4770 001D16D0 98 1D 02 28 */ stb r0, 0x228(r29) +/* 801D4774 001D16D4 48 16 A5 C5 */ bl ReadBits__12CInputStreamFi +/* 801D4778 001D16D8 7C 83 00 D0 */ neg r4, r3 +/* 801D477C 001D16DC 88 1D 02 28 */ lbz r0, 0x228(r29) +/* 801D4780 001D16E0 7C 84 1B 78 */ or r4, r4, r3 +/* 801D4784 001D16E4 7F C3 F3 78 */ mr r3, r30 +/* 801D4788 001D16E8 54 85 0F FE */ srwi r5, r4, 0x1f +/* 801D478C 001D16EC 38 80 00 20 */ li r4, 0x20 +/* 801D4790 001D16F0 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 801D4794 001D16F4 98 1D 02 28 */ stb r0, 0x228(r29) +/* 801D4798 001D16F8 48 16 A5 A1 */ bl ReadBits__12CInputStreamFi +/* 801D479C 001D16FC 90 7D 00 84 */ stw r3, 0x84(r29) +/* 801D47A0 001D1700 80 7D 00 84 */ lwz r3, 0x84(r29) +/* 801D47A4 001D1704 4B E3 00 D9 */ bl EnsureWorldPakReady__5CMainFUi +/* 801D47A8 001D1708 7F C3 F3 78 */ mr r3, r30 +/* 801D47AC 001D170C 38 80 00 20 */ li r4, 0x20 +/* 801D47B0 001D1710 48 16 A5 89 */ bl ReadBits__12CInputStreamFi +/* 801D47B4 001D1714 7C 7C 1B 78 */ mr r28, r3 +/* 801D47B8 001D1718 7F C3 F3 78 */ mr r3, r30 +/* 801D47BC 001D171C 38 80 00 20 */ li r4, 0x20 +/* 801D47C0 001D1720 48 16 A5 79 */ bl ReadBits__12CInputStreamFi +/* 801D47C4 001D1724 38 00 00 00 */ li r0, 0 +/* 801D47C8 001D1728 93 81 00 2C */ stw r28, 0x2c(r1) +/* 801D47CC 001D172C 3C 80 80 3D */ lis r4, lbl_803D1B88@ha +/* 801D47D0 001D1730 38 A0 00 00 */ li r5, 0 +/* 801D47D4 001D1734 90 01 00 28 */ stw r0, 0x28(r1) +/* 801D47D8 001D1738 38 84 1B 88 */ addi r4, r4, lbl_803D1B88@l +/* 801D47DC 001D173C 90 01 00 2C */ stw r0, 0x2c(r1) +/* 801D47E0 001D1740 93 81 00 28 */ stw r28, 0x28(r1) +/* 801D47E4 001D1744 90 61 00 2C */ stw r3, 0x2c(r1) +/* 801D47E8 001D1748 38 60 01 98 */ li r3, 0x198 +/* 801D47EC 001D174C 93 81 00 28 */ stw r28, 0x28(r1) +/* 801D47F0 001D1750 C8 01 00 28 */ lfd f0, 0x28(r1) +/* 801D47F4 001D1754 D8 1D 00 A0 */ stfd f0, 0xa0(r29) +/* 801D47F8 001D1758 48 14 10 75 */ bl __nw__FUlPCcPCc +/* 801D47FC 001D175C 7C 7C 1B 79 */ or. r28, r3, r3 +/* 801D4800 001D1760 41 82 00 10 */ beq lbl_801D4810 +/* 801D4804 001D1764 7F C4 F3 78 */ mr r4, r30 +/* 801D4808 001D1768 4B EB D8 21 */ bl __ct__12CPlayerStateFR12CInputStream +/* 801D480C 001D176C 7C 7C 1B 78 */ mr r28, r3 +lbl_801D4810: +/* 801D4810 001D1770 38 7D 00 98 */ addi r3, r29, 0x98 +/* 801D4814 001D1774 4B E3 46 F9 */ bl sub_80008f0c +/* 801D4818 001D1778 3C 80 80 3D */ lis r4, lbl_803D1B88@ha +/* 801D481C 001D177C 38 60 00 08 */ li r3, 8 +/* 801D4820 001D1780 38 84 1B 88 */ addi r4, r4, lbl_803D1B88@l +/* 801D4824 001D1784 38 A0 00 00 */ li r5, 0 +/* 801D4828 001D1788 48 14 10 45 */ bl __nw__FUlPCcPCc +/* 801D482C 001D178C 28 03 00 00 */ cmplwi r3, 0 +/* 801D4830 001D1790 41 82 00 10 */ beq lbl_801D4840 +/* 801D4834 001D1794 93 83 00 00 */ stw r28, 0(r3) +/* 801D4838 001D1798 38 00 00 01 */ li r0, 1 +/* 801D483C 001D179C 90 03 00 04 */ stw r0, 4(r3) +lbl_801D4840: +/* 801D4840 001D17A0 90 7D 00 98 */ stw r3, 0x98(r29) +/* 801D4844 001D17A4 7F C4 F3 78 */ mr r4, r30 +/* 801D4848 001D17A8 38 61 00 68 */ addi r3, r1, 0x68 +/* 801D484C 001D17AC 48 03 AC 59 */ bl __ct__12CGameOptionsFR12CInputStream +/* 801D4850 001D17B0 38 7D 01 7C */ addi r3, r29, 0x17c +/* 801D4854 001D17B4 38 81 00 68 */ addi r4, r1, 0x68 +/* 801D4858 001D17B8 4B E2 EF 49 */ bl __as__12CGameOptionsFRC12CGameOptions +/* 801D485C 001D17BC 38 61 00 68 */ addi r3, r1, 0x68 +/* 801D4860 001D17C0 38 80 FF FF */ li r4, -1 +/* 801D4864 001D17C4 4B E2 F7 21 */ bl __dt__12CGameOptionsFv +/* 801D4868 001D17C8 7F C4 F3 78 */ mr r4, r30 +/* 801D486C 001D17CC 38 61 00 54 */ addi r3, r1, 0x54 +/* 801D4870 001D17D0 48 09 34 51 */ bl __ct__12CHintOptionsFR12CInputStream +/* 801D4874 001D17D4 38 7D 01 F8 */ addi r3, r29, 0x1f8 +/* 801D4878 001D17D8 38 81 00 54 */ addi r4, r1, 0x54 +/* 801D487C 001D17DC 48 00 01 75 */ bl __ct__12CHintOptionsFR12CHintOptions +/* 801D4880 001D17E0 80 01 00 58 */ lwz r0, 0x58(r1) +/* 801D4884 001D17E4 80 61 00 60 */ lwz r3, 0x60(r1) +/* 801D4888 001D17E8 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801D488C 001D17EC 90 61 00 0C */ stw r3, 0xc(r1) +/* 801D4890 001D17F0 7C 64 1B 78 */ mr r4, r3 +/* 801D4894 001D17F4 7C 03 02 14 */ add r0, r3, r0 +/* 801D4898 001D17F8 90 61 00 08 */ stw r3, 8(r1) +/* 801D489C 001D17FC 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D48A0 001D1800 90 01 00 10 */ stw r0, 0x10(r1) +/* 801D48A4 001D1804 48 00 00 08 */ b lbl_801D48AC +lbl_801D48A8: +/* 801D48A8 001D1808 38 84 00 0C */ addi r4, r4, 0xc +lbl_801D48AC: +/* 801D48AC 001D180C 7C 04 00 40 */ cmplw r4, r0 +/* 801D48B0 001D1810 40 82 FF F8 */ bne lbl_801D48A8 +/* 801D48B4 001D1814 28 03 00 00 */ cmplwi r3, 0 +/* 801D48B8 001D1818 41 82 00 08 */ beq lbl_801D48C0 +/* 801D48BC 001D181C 48 14 10 75 */ bl Free__7CMemoryFPCv +lbl_801D48C0: +/* 801D48C0 001D1820 83 8D A0 84 */ lwz r28, gpMemoryCard@sda21(r13) +/* 801D48C4 001D1824 38 7D 00 88 */ addi r3, r29, 0x88 +/* 801D48C8 001D1828 80 9C 00 10 */ lwz r4, 0x10(r28) +/* 801D48CC 001D182C 48 00 1A 1D */ bl "reserve__Q24rstl48vector<11CWorldState,Q24rstl17rmemory_allocator>Fi" +/* 801D48D0 001D1830 3C 60 53 41 */ lis r3, 0x53415657@ha +/* 801D48D4 001D1834 83 7C 00 18 */ lwz r27, 0x18(r28) +/* 801D48D8 001D1838 3B 41 00 50 */ addi r26, r1, 0x50 +/* 801D48DC 001D183C 3B 21 00 48 */ addi r25, r1, 0x48 +/* 801D48E0 001D1840 3B 01 00 44 */ addi r24, r1, 0x44 +/* 801D48E4 001D1844 3B E3 56 57 */ addi r31, r3, 0x53415657@l +/* 801D48E8 001D1848 3A C1 00 30 */ addi r22, r1, 0x30 +/* 801D48EC 001D184C 48 00 00 C4 */ b lbl_801D49B0 +lbl_801D48F0: +/* 801D48F0 001D1850 82 FB 00 00 */ lwz r23, 0(r27) +/* 801D48F4 001D1854 38 61 00 18 */ addi r3, r1, 0x18 +/* 801D48F8 001D1858 80 1B 00 08 */ lwz r0, 8(r27) +/* 801D48FC 001D185C 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801D4900 001D1860 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801D4904 001D1864 93 E1 00 20 */ stw r31, 0x20(r1) +/* 801D4908 001D1868 90 01 00 24 */ stw r0, 0x24(r1) +/* 801D490C 001D186C 81 84 00 00 */ lwz r12, 0(r4) +/* 801D4910 001D1870 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801D4914 001D1874 7D 89 03 A6 */ mtctr r12 +/* 801D4918 001D1878 4E 80 04 21 */ bctrl +/* 801D491C 001D187C 7E C3 B3 78 */ mr r3, r22 +/* 801D4920 001D1880 38 81 00 18 */ addi r4, r1, 0x18 +/* 801D4924 001D1884 48 16 C5 85 */ bl __ct__6CTokenFRC6CToken +/* 801D4928 001D1888 7E C3 B3 78 */ mr r3, r22 +/* 801D492C 001D188C 48 16 C4 E1 */ bl GetObj__6CTokenFv +/* 801D4930 001D1890 80 03 00 04 */ lwz r0, 4(r3) +/* 801D4934 001D1894 38 61 00 18 */ addi r3, r1, 0x18 +/* 801D4938 001D1898 38 80 FF FF */ li r4, -1 +/* 801D493C 001D189C 90 01 00 38 */ stw r0, 0x38(r1) +/* 801D4940 001D18A0 48 16 C5 01 */ bl __dt__6CTokenFv +/* 801D4944 001D18A4 80 C1 00 38 */ lwz r6, 0x38(r1) +/* 801D4948 001D18A8 7F C4 F3 78 */ mr r4, r30 +/* 801D494C 001D18AC 7E E5 BB 78 */ mr r5, r23 +/* 801D4950 001D18B0 38 61 00 3C */ addi r3, r1, 0x3c +/* 801D4954 001D18B4 48 00 04 E5 */ bl __ct__11CWorldStateFR12CInputStreamPCvR10CSaveWorld +/* 801D4958 001D18B8 38 7D 00 88 */ addi r3, r29, 0x88 +/* 801D495C 001D18BC 38 81 00 3C */ addi r4, r1, 0x3c +/* 801D4960 001D18C0 4B FF F1 7D */ bl __ct__11CWorldStateFRC11CWorldState +/* 801D4964 001D18C4 28 1A 00 00 */ cmplwi r26, 0 +/* 801D4968 001D18C8 41 82 00 10 */ beq lbl_801D4978 +/* 801D496C 001D18CC 41 82 00 0C */ beq lbl_801D4978 +/* 801D4970 001D18D0 7F 43 D3 78 */ mr r3, r26 +/* 801D4974 001D18D4 4B E3 44 59 */ bl sub_80008dcc +lbl_801D4978: +/* 801D4978 001D18D8 28 19 00 00 */ cmplwi r25, 0 +/* 801D497C 001D18DC 41 82 00 10 */ beq lbl_801D498C +/* 801D4980 001D18E0 41 82 00 0C */ beq lbl_801D498C +/* 801D4984 001D18E4 7F 23 CB 78 */ mr r3, r25 +/* 801D4988 001D18E8 4B E3 42 B5 */ bl sub_80008c3c +lbl_801D498C: +/* 801D498C 001D18EC 28 18 00 00 */ cmplwi r24, 0 +/* 801D4990 001D18F0 41 82 00 10 */ beq lbl_801D49A0 +/* 801D4994 001D18F4 41 82 00 0C */ beq lbl_801D49A0 +/* 801D4998 001D18F8 7F 03 C3 78 */ mr r3, r24 +/* 801D499C 001D18FC 4B E3 3C A5 */ bl __dt__11CWorldStateFv +lbl_801D49A0: +/* 801D49A0 001D1900 38 61 00 30 */ addi r3, r1, 0x30 +/* 801D49A4 001D1904 38 80 00 00 */ li r4, 0 +/* 801D49A8 001D1908 48 16 C4 99 */ bl __dt__6CTokenFv +/* 801D49AC 001D190C 3B 7B 00 4C */ addi r27, r27, 0x4c +lbl_801D49B0: +/* 801D49B0 001D1910 80 1C 00 10 */ lwz r0, 0x10(r28) +/* 801D49B4 001D1914 80 7C 00 18 */ lwz r3, 0x18(r28) +/* 801D49B8 001D1918 1C 00 00 4C */ mulli r0, r0, 0x4c +/* 801D49BC 001D191C 7C 03 02 14 */ add r0, r3, r0 +/* 801D49C0 001D1920 7C 1B 00 40 */ cmplw r27, r0 +/* 801D49C4 001D1924 40 82 FF 2C */ bne lbl_801D48F0 +/* 801D49C8 001D1928 7F A3 EB 78 */ mr r3, r29 +/* 801D49CC 001D192C 4B FF FA 75 */ bl InitializeMemoryWorlds__10CGameStateFv +/* 801D49D0 001D1930 7F A3 EB 78 */ mr r3, r29 +/* 801D49D4 001D1934 4B FF F1 E1 */ bl WriteBackupBuf__10CGameStateFv +/* 801D49D8 001D1938 7F A3 EB 78 */ mr r3, r29 +/* 801D49DC 001D193C BA C1 00 E8 */ lmw r22, 0xe8(r1) +/* 801D49E0 001D1940 80 01 01 14 */ lwz r0, 0x114(r1) +/* 801D49E4 001D1944 7C 08 03 A6 */ mtlr r0 +/* 801D49E8 001D1948 38 21 01 10 */ addi r1, r1, 0x110 +/* 801D49EC 001D194C 4E 80 00 20 */ blr + +.global __ct__12CHintOptionsFR12CHintOptions +__ct__12CHintOptionsFR12CHintOptions: +/* 801D49F0 001D1950 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D49F4 001D1954 7C 08 02 A6 */ mflr r0 +/* 801D49F8 001D1958 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D49FC 001D195C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801D4A00 001D1960 7C 9F 23 78 */ mr r31, r4 +/* 801D4A04 001D1964 93 C1 00 08 */ stw r30, 8(r1) +/* 801D4A08 001D1968 7C 7E 1B 78 */ mr r30, r3 +/* 801D4A0C 001D196C 48 00 00 29 */ bl sub_801d4a34 +/* 801D4A10 001D1970 80 1F 00 10 */ lwz r0, 0x10(r31) +/* 801D4A14 001D1974 7F C3 F3 78 */ mr r3, r30 +/* 801D4A18 001D1978 90 1E 00 10 */ stw r0, 0x10(r30) +/* 801D4A1C 001D197C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801D4A20 001D1980 83 C1 00 08 */ lwz r30, 8(r1) +/* 801D4A24 001D1984 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D4A28 001D1988 7C 08 03 A6 */ mtlr r0 +/* 801D4A2C 001D198C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D4A30 001D1990 4E 80 00 20 */ blr + +.global sub_801d4a34 +sub_801d4a34: +/* 801D4A34 001D1994 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801D4A38 001D1998 7C 08 02 A6 */ mflr r0 +/* 801D4A3C 001D199C 90 01 00 24 */ stw r0, 0x24(r1) +/* 801D4A40 001D19A0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801D4A44 001D19A4 7C 7F 1B 78 */ mr r31, r3 +/* 801D4A48 001D19A8 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801D4A4C 001D19AC 7C 9E 23 78 */ mr r30, r4 +/* 801D4A50 001D19B0 7C 1F F0 40 */ cmplw r31, r30 +/* 801D4A54 001D19B4 40 82 00 08 */ bne lbl_801D4A5C +/* 801D4A58 001D19B8 48 00 00 C8 */ b lbl_801D4B20 +lbl_801D4A5C: +/* 801D4A5C 001D19BC 80 1F 00 04 */ lwz r0, 4(r31) +/* 801D4A60 001D19C0 80 7F 00 0C */ lwz r3, 0xc(r31) +/* 801D4A64 001D19C4 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801D4A68 001D19C8 90 61 00 0C */ stw r3, 0xc(r1) +/* 801D4A6C 001D19CC 7C 03 02 14 */ add r0, r3, r0 +/* 801D4A70 001D19D0 90 61 00 08 */ stw r3, 8(r1) +/* 801D4A74 001D19D4 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D4A78 001D19D8 90 01 00 10 */ stw r0, 0x10(r1) +/* 801D4A7C 001D19DC 48 00 00 08 */ b lbl_801D4A84 +lbl_801D4A80: +/* 801D4A80 001D19E0 38 63 00 0C */ addi r3, r3, 0xc +lbl_801D4A84: +/* 801D4A84 001D19E4 7C 03 00 40 */ cmplw r3, r0 +/* 801D4A88 001D19E8 40 82 FF F8 */ bne lbl_801D4A80 +/* 801D4A8C 001D19EC 38 00 00 00 */ li r0, 0 +/* 801D4A90 001D19F0 90 1F 00 04 */ stw r0, 4(r31) +/* 801D4A94 001D19F4 80 9E 00 04 */ lwz r4, 4(r30) +/* 801D4A98 001D19F8 2C 04 00 00 */ cmpwi r4, 0 +/* 801D4A9C 001D19FC 40 82 00 28 */ bne lbl_801D4AC4 +/* 801D4AA0 001D1A00 80 7F 00 0C */ lwz r3, 0xc(r31) +/* 801D4AA4 001D1A04 28 03 00 00 */ cmplwi r3, 0 +/* 801D4AA8 001D1A08 41 82 00 08 */ beq lbl_801D4AB0 +/* 801D4AAC 001D1A0C 48 14 0E 85 */ bl Free__7CMemoryFPCv +lbl_801D4AB0: +/* 801D4AB0 001D1A10 38 00 00 00 */ li r0, 0 +/* 801D4AB4 001D1A14 90 1F 00 04 */ stw r0, 4(r31) +/* 801D4AB8 001D1A18 90 1F 00 08 */ stw r0, 8(r31) +/* 801D4ABC 001D1A1C 90 1F 00 0C */ stw r0, 0xc(r31) +/* 801D4AC0 001D1A20 48 00 00 5C */ b lbl_801D4B1C +lbl_801D4AC4: +/* 801D4AC4 001D1A24 7F E3 FB 78 */ mr r3, r31 +/* 801D4AC8 001D1A28 48 00 16 35 */ bl sub_801d60fc +/* 801D4ACC 001D1A2C 80 1E 00 04 */ lwz r0, 4(r30) +/* 801D4AD0 001D1A30 80 BE 00 0C */ lwz r5, 0xc(r30) +/* 801D4AD4 001D1A34 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801D4AD8 001D1A38 80 7F 00 0C */ lwz r3, 0xc(r31) +/* 801D4ADC 001D1A3C 7C 85 02 14 */ add r4, r5, r0 +/* 801D4AE0 001D1A40 48 00 00 2C */ b lbl_801D4B0C +lbl_801D4AE4: +/* 801D4AE4 001D1A44 28 03 00 00 */ cmplwi r3, 0 +/* 801D4AE8 001D1A48 41 82 00 1C */ beq lbl_801D4B04 +/* 801D4AEC 001D1A4C 80 05 00 00 */ lwz r0, 0(r5) +/* 801D4AF0 001D1A50 90 03 00 00 */ stw r0, 0(r3) +/* 801D4AF4 001D1A54 C0 05 00 04 */ lfs f0, 4(r5) +/* 801D4AF8 001D1A58 D0 03 00 04 */ stfs f0, 4(r3) +/* 801D4AFC 001D1A5C 88 05 00 08 */ lbz r0, 8(r5) +/* 801D4B00 001D1A60 98 03 00 08 */ stb r0, 8(r3) +lbl_801D4B04: +/* 801D4B04 001D1A64 38 63 00 0C */ addi r3, r3, 0xc +/* 801D4B08 001D1A68 38 A5 00 0C */ addi r5, r5, 0xc +lbl_801D4B0C: +/* 801D4B0C 001D1A6C 7C 05 20 40 */ cmplw r5, r4 +/* 801D4B10 001D1A70 40 82 FF D4 */ bne lbl_801D4AE4 +/* 801D4B14 001D1A74 80 1E 00 04 */ lwz r0, 4(r30) +/* 801D4B18 001D1A78 90 1F 00 04 */ stw r0, 4(r31) +lbl_801D4B1C: +/* 801D4B1C 001D1A7C 7F E3 FB 78 */ mr r3, r31 +lbl_801D4B20: +/* 801D4B20 001D1A80 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801D4B24 001D1A84 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801D4B28 001D1A88 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801D4B2C 001D1A8C 7C 08 03 A6 */ mtlr r0 +/* 801D4B30 001D1A90 38 21 00 20 */ addi r1, r1, 0x20 +/* 801D4B34 001D1A94 4E 80 00 20 */ blr + +.global __ct__10CGameStateFv +__ct__10CGameStateFv: +/* 801D4B38 001D1A98 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D4B3C 001D1A9C 7C 08 02 A6 */ mflr r0 +/* 801D4B40 001D1AA0 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D4B44 001D1AA4 38 00 00 10 */ li r0, 0x10 +/* 801D4B48 001D1AA8 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801D4B4C 001D1AAC 7C 7F 1B 78 */ mr r31, r3 +/* 801D4B50 001D1AB0 38 60 00 80 */ li r3, 0x80 +/* 801D4B54 001D1AB4 93 C1 00 08 */ stw r30, 8(r1) +/* 801D4B58 001D1AB8 38 9F 00 04 */ addi r4, r31, 4 +/* 801D4B5C 001D1ABC 90 7F 00 00 */ stw r3, 0(r31) +/* 801D4B60 001D1AC0 38 60 00 00 */ li r3, 0 +/* 801D4B64 001D1AC4 7C 09 03 A6 */ mtctr r0 +lbl_801D4B68: +/* 801D4B68 001D1AC8 28 04 00 00 */ cmplwi r4, 0 +/* 801D4B6C 001D1ACC 41 82 00 0C */ beq lbl_801D4B78 +/* 801D4B70 001D1AD0 88 0D 91 AC */ lbz r0, lbl_805A7D6C@sda21(r13) +/* 801D4B74 001D1AD4 98 04 00 00 */ stb r0, 0(r4) +lbl_801D4B78: +/* 801D4B78 001D1AD8 34 84 00 01 */ addic. r4, r4, 1 +/* 801D4B7C 001D1ADC 41 82 00 0C */ beq lbl_801D4B88 +/* 801D4B80 001D1AE0 88 0D 91 AC */ lbz r0, lbl_805A7D6C@sda21(r13) +/* 801D4B84 001D1AE4 98 04 00 00 */ stb r0, 0(r4) +lbl_801D4B88: +/* 801D4B88 001D1AE8 34 84 00 01 */ addic. r4, r4, 1 +/* 801D4B8C 001D1AEC 41 82 00 0C */ beq lbl_801D4B98 +/* 801D4B90 001D1AF0 88 0D 91 AC */ lbz r0, lbl_805A7D6C@sda21(r13) +/* 801D4B94 001D1AF4 98 04 00 00 */ stb r0, 0(r4) +lbl_801D4B98: +/* 801D4B98 001D1AF8 34 84 00 01 */ addic. r4, r4, 1 +/* 801D4B9C 001D1AFC 41 82 00 0C */ beq lbl_801D4BA8 +/* 801D4BA0 001D1B00 88 0D 91 AC */ lbz r0, lbl_805A7D6C@sda21(r13) +/* 801D4BA4 001D1B04 98 04 00 00 */ stb r0, 0(r4) +lbl_801D4BA8: +/* 801D4BA8 001D1B08 34 84 00 01 */ addic. r4, r4, 1 +/* 801D4BAC 001D1B0C 41 82 00 0C */ beq lbl_801D4BB8 +/* 801D4BB0 001D1B10 88 0D 91 AC */ lbz r0, lbl_805A7D6C@sda21(r13) +/* 801D4BB4 001D1B14 98 04 00 00 */ stb r0, 0(r4) +lbl_801D4BB8: +/* 801D4BB8 001D1B18 34 84 00 01 */ addic. r4, r4, 1 +/* 801D4BBC 001D1B1C 41 82 00 0C */ beq lbl_801D4BC8 +/* 801D4BC0 001D1B20 88 0D 91 AC */ lbz r0, lbl_805A7D6C@sda21(r13) +/* 801D4BC4 001D1B24 98 04 00 00 */ stb r0, 0(r4) +lbl_801D4BC8: +/* 801D4BC8 001D1B28 34 84 00 01 */ addic. r4, r4, 1 +/* 801D4BCC 001D1B2C 41 82 00 0C */ beq lbl_801D4BD8 +/* 801D4BD0 001D1B30 88 0D 91 AC */ lbz r0, lbl_805A7D6C@sda21(r13) +/* 801D4BD4 001D1B34 98 04 00 00 */ stb r0, 0(r4) +lbl_801D4BD8: +/* 801D4BD8 001D1B38 34 84 00 01 */ addic. r4, r4, 1 +/* 801D4BDC 001D1B3C 41 82 00 0C */ beq lbl_801D4BE8 +/* 801D4BE0 001D1B40 88 0D 91 AC */ lbz r0, lbl_805A7D6C@sda21(r13) +/* 801D4BE4 001D1B44 98 04 00 00 */ stb r0, 0(r4) +lbl_801D4BE8: +/* 801D4BE8 001D1B48 38 63 00 07 */ addi r3, r3, 7 +/* 801D4BEC 001D1B4C 38 84 00 01 */ addi r4, r4, 1 +/* 801D4BF0 001D1B50 42 00 FF 78 */ bdnz lbl_801D4B68 +/* 801D4BF4 001D1B54 38 00 FF FF */ li r0, -1 +/* 801D4BF8 001D1B58 3C 60 80 3D */ lis r3, lbl_803D1B88@ha +/* 801D4BFC 001D1B5C 90 1F 00 84 */ stw r0, 0x84(r31) +/* 801D4C00 001D1B60 38 00 00 00 */ li r0, 0 +/* 801D4C04 001D1B64 38 83 1B 88 */ addi r4, r3, lbl_803D1B88@l +/* 801D4C08 001D1B68 38 60 01 98 */ li r3, 0x198 +/* 801D4C0C 001D1B6C 90 1F 00 8C */ stw r0, 0x8c(r31) +/* 801D4C10 001D1B70 38 A0 00 00 */ li r5, 0 +/* 801D4C14 001D1B74 90 1F 00 90 */ stw r0, 0x90(r31) +/* 801D4C18 001D1B78 90 1F 00 94 */ stw r0, 0x94(r31) +/* 801D4C1C 001D1B7C 48 14 0C 51 */ bl __nw__FUlPCcPCc +/* 801D4C20 001D1B80 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801D4C24 001D1B84 41 82 00 0C */ beq lbl_801D4C30 +/* 801D4C28 001D1B88 4B EB D6 A1 */ bl __ct__12CPlayerStateFv +/* 801D4C2C 001D1B8C 7C 7E 1B 78 */ mr r30, r3 +lbl_801D4C30: +/* 801D4C30 001D1B90 3C 80 80 3D */ lis r4, lbl_803D1B88@ha +/* 801D4C34 001D1B94 38 60 00 08 */ li r3, 8 +/* 801D4C38 001D1B98 38 84 1B 88 */ addi r4, r4, lbl_803D1B88@l +/* 801D4C3C 001D1B9C 38 A0 00 00 */ li r5, 0 +/* 801D4C40 001D1BA0 48 14 0C 2D */ bl __nw__FUlPCcPCc +/* 801D4C44 001D1BA4 28 03 00 00 */ cmplwi r3, 0 +/* 801D4C48 001D1BA8 41 82 00 10 */ beq lbl_801D4C58 +/* 801D4C4C 001D1BAC 93 C3 00 00 */ stw r30, 0(r3) +/* 801D4C50 001D1BB0 38 00 00 01 */ li r0, 1 +/* 801D4C54 001D1BB4 90 03 00 04 */ stw r0, 4(r3) +lbl_801D4C58: +/* 801D4C58 001D1BB8 3C 80 80 3D */ lis r4, lbl_803D1B88@ha +/* 801D4C5C 001D1BBC 90 7F 00 98 */ stw r3, 0x98(r31) +/* 801D4C60 001D1BC0 38 84 1B 88 */ addi r4, r4, lbl_803D1B88@l +/* 801D4C64 001D1BC4 38 60 00 48 */ li r3, 0x48 +/* 801D4C68 001D1BC8 38 A0 00 00 */ li r5, 0 +/* 801D4C6C 001D1BCC 48 14 0C 01 */ bl __nw__FUlPCcPCc +/* 801D4C70 001D1BD0 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801D4C74 001D1BD4 41 82 00 0C */ beq lbl_801D4C80 +/* 801D4C78 001D1BD8 48 03 6A E1 */ bl __ct__18CWorldTransManagerFv +/* 801D4C7C 001D1BDC 7C 7E 1B 78 */ mr r30, r3 +lbl_801D4C80: +/* 801D4C80 001D1BE0 3C 80 80 3D */ lis r4, lbl_803D1B88@ha +/* 801D4C84 001D1BE4 38 60 00 08 */ li r3, 8 +/* 801D4C88 001D1BE8 38 84 1B 88 */ addi r4, r4, lbl_803D1B88@l +/* 801D4C8C 001D1BEC 38 A0 00 00 */ li r5, 0 +/* 801D4C90 001D1BF0 48 14 0B DD */ bl __nw__FUlPCcPCc +/* 801D4C94 001D1BF4 28 03 00 00 */ cmplwi r3, 0 +/* 801D4C98 001D1BF8 41 82 00 10 */ beq lbl_801D4CA8 +/* 801D4C9C 001D1BFC 93 C3 00 00 */ stw r30, 0(r3) +/* 801D4CA0 001D1C00 38 00 00 01 */ li r0, 1 +/* 801D4CA4 001D1C04 90 03 00 04 */ stw r0, 4(r3) +lbl_801D4CA8: +/* 801D4CA8 001D1C08 90 7F 00 9C */ stw r3, 0x9c(r31) +/* 801D4CAC 001D1C0C 38 7F 00 A8 */ addi r3, r31, 0xa8 +/* 801D4CB0 001D1C10 C8 02 AC 38 */ lfd f0, lbl_805AC958@sda21(r2) +/* 801D4CB4 001D1C14 D8 1F 00 A0 */ stfd f0, 0xa0(r31) +/* 801D4CB8 001D1C18 48 00 12 51 */ bl __ct__14CSystemOptionsFv +/* 801D4CBC 001D1C1C 38 7F 01 7C */ addi r3, r31, 0x17c +/* 801D4CC0 001D1C20 48 03 AB 11 */ bl __ct__12CGameOptionsFv +/* 801D4CC4 001D1C24 38 7F 01 F8 */ addi r3, r31, 0x1f8 +/* 801D4CC8 001D1C28 48 09 31 69 */ bl __ct__12CHintOptionsFv +/* 801D4CCC 001D1C2C 38 80 00 00 */ li r4, 0 +/* 801D4CD0 001D1C30 38 60 00 01 */ li r3, 1 +/* 801D4CD4 001D1C34 90 9F 02 0C */ stw r4, 0x20c(r31) +/* 801D4CD8 001D1C38 90 9F 02 14 */ stw r4, 0x214(r31) +/* 801D4CDC 001D1C3C 90 9F 02 10 */ stw r4, 0x210(r31) +/* 801D4CE0 001D1C40 90 9F 02 1C */ stw r4, 0x21c(r31) +/* 801D4CE4 001D1C44 90 9F 02 20 */ stw r4, 0x220(r31) +/* 801D4CE8 001D1C48 90 9F 02 24 */ stw r4, 0x224(r31) +/* 801D4CEC 001D1C4C 88 1F 02 28 */ lbz r0, 0x228(r31) +/* 801D4CF0 001D1C50 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801D4CF4 001D1C54 98 1F 02 28 */ stb r0, 0x228(r31) +/* 801D4CF8 001D1C58 88 1F 02 28 */ lbz r0, 0x228(r31) +/* 801D4CFC 001D1C5C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801D4D00 001D1C60 98 1F 02 28 */ stb r0, 0x228(r31) +/* 801D4D04 001D1C64 80 0D A0 84 */ lwz r0, gpMemoryCard@sda21(r13) +/* 801D4D08 001D1C68 28 00 00 00 */ cmplwi r0, 0 +/* 801D4D0C 001D1C6C 41 82 00 0C */ beq lbl_801D4D18 +/* 801D4D10 001D1C70 7F E3 FB 78 */ mr r3, r31 +/* 801D4D14 001D1C74 4B FF F8 05 */ bl InitializeMemoryStates__10CGameStateFv +lbl_801D4D18: +/* 801D4D18 001D1C78 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D4D1C 001D1C7C 7F E3 FB 78 */ mr r3, r31 +/* 801D4D20 001D1C80 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801D4D24 001D1C84 83 C1 00 08 */ lwz r30, 8(r1) +/* 801D4D28 001D1C88 7C 08 03 A6 */ mtlr r0 +/* 801D4D2C 001D1C8C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D4D30 001D1C90 4E 80 00 20 */ blr + +.global GetLayerState__11CWorldStateFv +GetLayerState__11CWorldStateFv: +/* 801D4D34 001D1C94 38 63 00 14 */ addi r3, r3, 0x14 +/* 801D4D38 001D1C98 4E 80 00 20 */ blr + +.global SetDesiredAreaAssetId__11CWorldStateFUi +SetDesiredAreaAssetId__11CWorldStateFUi: +/* 801D4D3C 001D1C9C 90 83 00 10 */ stw r4, 0x10(r3) +/* 801D4D40 001D1CA0 4E 80 00 20 */ blr + +.global GetDesiredAreaAssetId__11CWorldStateCFv +GetDesiredAreaAssetId__11CWorldStateCFv: +/* 801D4D44 001D1CA4 80 63 00 10 */ lwz r3, 0x10(r3) +/* 801D4D48 001D1CA8 4E 80 00 20 */ blr + +.global SetAreaId__11CWorldStateF7TAreaId +SetAreaId__11CWorldStateF7TAreaId: +/* 801D4D4C 001D1CAC 80 04 00 00 */ lwz r0, 0(r4) +/* 801D4D50 001D1CB0 90 03 00 04 */ stw r0, 4(r3) +/* 801D4D54 001D1CB4 4E 80 00 20 */ blr + +.global GetCurrentArea__11CWorldStateCFv +GetCurrentArea__11CWorldStateCFv: +/* 801D4D58 001D1CB8 80 04 00 04 */ lwz r0, 4(r4) +/* 801D4D5C 001D1CBC 90 03 00 00 */ stw r0, 0(r3) +/* 801D4D60 001D1CC0 4E 80 00 20 */ blr + +.global GetMapWorldInfo__11CWorldStateCFv +GetMapWorldInfo__11CWorldStateCFv: +/* 801D4D64 001D1CC4 80 04 00 0C */ lwz r0, 0xc(r4) +/* 801D4D68 001D1CC8 90 03 00 00 */ stw r0, 0(r3) +/* 801D4D6C 001D1CCC 80 83 00 00 */ lwz r4, 0(r3) +/* 801D4D70 001D1CD0 80 64 00 04 */ lwz r3, 4(r4) +/* 801D4D74 001D1CD4 38 03 00 01 */ addi r0, r3, 1 +/* 801D4D78 001D1CD8 90 04 00 04 */ stw r0, 4(r4) +/* 801D4D7C 001D1CDC 4E 80 00 20 */ blr + +.global MapWorldInfo__11CWorldStateFv +MapWorldInfo__11CWorldStateFv: +/* 801D4D80 001D1CE0 38 63 00 0C */ addi r3, r3, 0xc +/* 801D4D84 001D1CE4 4E 80 00 20 */ blr + +.global Mailbox__11CWorldStateFv +Mailbox__11CWorldStateFv: +/* 801D4D88 001D1CE8 38 63 00 08 */ addi r3, r3, 8 +/* 801D4D8C 001D1CEC 4E 80 00 20 */ blr + +.global GetWorldAssetId__11CWorldStateCFv +GetWorldAssetId__11CWorldStateCFv: +/* 801D4D90 001D1CF0 80 63 00 00 */ lwz r3, 0(r3) +/* 801D4D94 001D1CF4 4E 80 00 20 */ blr + +.global PutTo__11CWorldStateFR16CMemoryStreamOut +PutTo__11CWorldStateFR16CMemoryStreamOut: +/* 801D4D98 001D1CF8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801D4D9C 001D1CFC 7C 08 02 A6 */ mflr r0 +/* 801D4DA0 001D1D00 90 01 00 24 */ stw r0, 0x24(r1) +/* 801D4DA4 001D1D04 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801D4DA8 001D1D08 7C BF 2B 78 */ mr r31, r5 +/* 801D4DAC 001D1D0C 38 A0 00 20 */ li r5, 0x20 +/* 801D4DB0 001D1D10 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801D4DB4 001D1D14 7C 9E 23 78 */ mr r30, r4 +/* 801D4DB8 001D1D18 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801D4DBC 001D1D1C 7C 7D 1B 78 */ mr r29, r3 +/* 801D4DC0 001D1D20 80 83 00 04 */ lwz r4, 4(r3) +/* 801D4DC4 001D1D24 7F C3 F3 78 */ mr r3, r30 +/* 801D4DC8 001D1D28 48 16 A5 F5 */ bl WriteBits__13COutputStreamFii +/* 801D4DCC 001D1D2C 80 9D 00 10 */ lwz r4, 0x10(r29) +/* 801D4DD0 001D1D30 7F C3 F3 78 */ mr r3, r30 +/* 801D4DD4 001D1D34 38 A0 00 20 */ li r5, 0x20 +/* 801D4DD8 001D1D38 48 16 A5 E5 */ bl WriteBits__13COutputStreamFii +/* 801D4DDC 001D1D3C 80 7D 00 08 */ lwz r3, 8(r29) +/* 801D4DE0 001D1D40 7F C4 F3 78 */ mr r4, r30 +/* 801D4DE4 001D1D44 7F E5 FB 78 */ mr r5, r31 +/* 801D4DE8 001D1D48 80 63 00 00 */ lwz r3, 0(r3) +/* 801D4DEC 001D1D4C 4B F0 CE D1 */ bl PutTo__14CScriptMailboxCFR13COutputStream +/* 801D4DF0 001D1D50 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 801D4DF4 001D1D54 7F C4 F3 78 */ mr r4, r30 +/* 801D4DF8 001D1D58 80 DD 00 00 */ lwz r6, 0(r29) +/* 801D4DFC 001D1D5C 7F E5 FB 78 */ mr r5, r31 +/* 801D4E00 001D1D60 80 63 00 00 */ lwz r3, 0(r3) +/* 801D4E04 001D1D64 4B F9 3D 99 */ bl PutTo__13CMapWorldInfoCFR13COutputStreamRC10CSaveWorldi +/* 801D4E08 001D1D68 80 7D 00 14 */ lwz r3, 0x14(r29) +/* 801D4E0C 001D1D6C 7F C4 F3 78 */ mr r4, r30 +/* 801D4E10 001D1D70 7F E5 FB 78 */ mr r5, r31 +/* 801D4E14 001D1D74 80 63 00 00 */ lwz r3, 0(r3) +/* 801D4E18 001D1D78 48 05 F5 19 */ bl PutTo__16CWorldLayerStateFR16CMemoryStreamOut +/* 801D4E1C 001D1D7C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801D4E20 001D1D80 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801D4E24 001D1D84 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801D4E28 001D1D88 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801D4E2C 001D1D8C 7C 08 03 A6 */ mtlr r0 +/* 801D4E30 001D1D90 38 21 00 20 */ addi r1, r1, 0x20 +/* 801D4E34 001D1D94 4E 80 00 20 */ blr + +.global __ct__11CWorldStateFR12CInputStreamPCvR10CSaveWorld +__ct__11CWorldStateFR12CInputStreamPCvR10CSaveWorld: +/* 801D4E38 001D1D98 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801D4E3C 001D1D9C 7C 08 02 A6 */ mflr r0 +/* 801D4E40 001D1DA0 90 01 00 24 */ stw r0, 0x24(r1) +/* 801D4E44 001D1DA4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801D4E48 001D1DA8 7C DF 33 78 */ mr r31, r6 +/* 801D4E4C 001D1DAC 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801D4E50 001D1DB0 7C 9E 23 78 */ mr r30, r4 +/* 801D4E54 001D1DB4 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801D4E58 001D1DB8 7C 7D 1B 78 */ mr r29, r3 +/* 801D4E5C 001D1DBC 3C 60 80 3D */ lis r3, lbl_803D1B88@ha +/* 801D4E60 001D1DC0 93 81 00 10 */ stw r28, 0x10(r1) +/* 801D4E64 001D1DC4 38 03 1B 88 */ addi r0, r3, lbl_803D1B88@l +/* 801D4E68 001D1DC8 7C 04 03 78 */ mr r4, r0 +/* 801D4E6C 001D1DCC 38 60 00 08 */ li r3, 8 +/* 801D4E70 001D1DD0 90 BD 00 00 */ stw r5, 0(r29) +/* 801D4E74 001D1DD4 38 A0 FF FF */ li r5, -1 +/* 801D4E78 001D1DD8 90 BD 00 04 */ stw r5, 4(r29) +/* 801D4E7C 001D1DDC 38 A0 00 00 */ li r5, 0 +/* 801D4E80 001D1DE0 48 14 09 ED */ bl __nw__FUlPCcPCc +/* 801D4E84 001D1DE4 28 03 00 00 */ cmplwi r3, 0 +/* 801D4E88 001D1DE8 41 82 00 14 */ beq lbl_801D4E9C +/* 801D4E8C 001D1DEC 38 80 00 00 */ li r4, 0 +/* 801D4E90 001D1DF0 38 00 00 01 */ li r0, 1 +/* 801D4E94 001D1DF4 90 83 00 00 */ stw r4, 0(r3) +/* 801D4E98 001D1DF8 90 03 00 04 */ stw r0, 4(r3) +lbl_801D4E9C: +/* 801D4E9C 001D1DFC 3C 80 80 3D */ lis r4, lbl_803D1B88@ha +/* 801D4EA0 001D1E00 90 7D 00 08 */ stw r3, 8(r29) +/* 801D4EA4 001D1E04 38 84 1B 88 */ addi r4, r4, lbl_803D1B88@l +/* 801D4EA8 001D1E08 38 60 00 08 */ li r3, 8 +/* 801D4EAC 001D1E0C 38 A0 00 00 */ li r5, 0 +/* 801D4EB0 001D1E10 48 14 09 BD */ bl __nw__FUlPCcPCc +/* 801D4EB4 001D1E14 28 03 00 00 */ cmplwi r3, 0 +/* 801D4EB8 001D1E18 41 82 00 14 */ beq lbl_801D4ECC +/* 801D4EBC 001D1E1C 38 80 00 00 */ li r4, 0 +/* 801D4EC0 001D1E20 38 00 00 01 */ li r0, 1 +/* 801D4EC4 001D1E24 90 83 00 00 */ stw r4, 0(r3) +/* 801D4EC8 001D1E28 90 03 00 04 */ stw r0, 4(r3) +lbl_801D4ECC: +/* 801D4ECC 001D1E2C 90 7D 00 0C */ stw r3, 0xc(r29) +/* 801D4ED0 001D1E30 38 00 FF FF */ li r0, -1 +/* 801D4ED4 001D1E34 3C 80 80 3D */ lis r4, lbl_803D1B88@ha +/* 801D4ED8 001D1E38 38 60 00 08 */ li r3, 8 +/* 801D4EDC 001D1E3C 90 1D 00 10 */ stw r0, 0x10(r29) +/* 801D4EE0 001D1E40 38 84 1B 88 */ addi r4, r4, lbl_803D1B88@l +/* 801D4EE4 001D1E44 38 A0 00 00 */ li r5, 0 +/* 801D4EE8 001D1E48 48 14 09 85 */ bl __nw__FUlPCcPCc +/* 801D4EEC 001D1E4C 28 03 00 00 */ cmplwi r3, 0 +/* 801D4EF0 001D1E50 41 82 00 14 */ beq lbl_801D4F04 +/* 801D4EF4 001D1E54 38 80 00 00 */ li r4, 0 +/* 801D4EF8 001D1E58 38 00 00 01 */ li r0, 1 +/* 801D4EFC 001D1E5C 90 83 00 00 */ stw r4, 0(r3) +/* 801D4F00 001D1E60 90 03 00 04 */ stw r0, 4(r3) +lbl_801D4F04: +/* 801D4F04 001D1E64 90 7D 00 14 */ stw r3, 0x14(r29) +/* 801D4F08 001D1E68 7F C3 F3 78 */ mr r3, r30 +/* 801D4F0C 001D1E6C 38 80 00 20 */ li r4, 0x20 +/* 801D4F10 001D1E70 48 16 9E 29 */ bl ReadBits__12CInputStreamFi +/* 801D4F14 001D1E74 90 7D 00 04 */ stw r3, 4(r29) +/* 801D4F18 001D1E78 7F C3 F3 78 */ mr r3, r30 +/* 801D4F1C 001D1E7C 38 80 00 20 */ li r4, 0x20 +/* 801D4F20 001D1E80 48 16 9E 19 */ bl ReadBits__12CInputStreamFi +/* 801D4F24 001D1E84 3C 80 80 3D */ lis r4, lbl_803D1B88@ha +/* 801D4F28 001D1E88 90 7D 00 10 */ stw r3, 0x10(r29) +/* 801D4F2C 001D1E8C 38 84 1B 88 */ addi r4, r4, lbl_803D1B88@l +/* 801D4F30 001D1E90 38 60 08 04 */ li r3, 0x804 +/* 801D4F34 001D1E94 38 A0 00 00 */ li r5, 0 +/* 801D4F38 001D1E98 48 14 09 35 */ bl __nw__FUlPCcPCc +/* 801D4F3C 001D1E9C 7C 7C 1B 79 */ or. r28, r3, r3 +/* 801D4F40 001D1EA0 41 82 00 14 */ beq lbl_801D4F54 +/* 801D4F44 001D1EA4 7F C4 F3 78 */ mr r4, r30 +/* 801D4F48 001D1EA8 7F E5 FB 78 */ mr r5, r31 +/* 801D4F4C 001D1EAC 4B F0 CF 6D */ bl __ct__14CScriptMailboxFR12CInputStreamRC10CSaveWorld +/* 801D4F50 001D1EB0 7C 7C 1B 78 */ mr r28, r3 +lbl_801D4F54: +/* 801D4F54 001D1EB4 38 7D 00 08 */ addi r3, r29, 8 +/* 801D4F58 001D1EB8 4B E3 36 E9 */ bl __dt__11CWorldStateFv +/* 801D4F5C 001D1EBC 3C 80 80 3D */ lis r4, lbl_803D1B88@ha +/* 801D4F60 001D1EC0 38 60 00 08 */ li r3, 8 +/* 801D4F64 001D1EC4 38 84 1B 88 */ addi r4, r4, lbl_803D1B88@l +/* 801D4F68 001D1EC8 38 A0 00 00 */ li r5, 0 +/* 801D4F6C 001D1ECC 48 14 09 01 */ bl __nw__FUlPCcPCc +/* 801D4F70 001D1ED0 28 03 00 00 */ cmplwi r3, 0 +/* 801D4F74 001D1ED4 41 82 00 10 */ beq lbl_801D4F84 +/* 801D4F78 001D1ED8 93 83 00 00 */ stw r28, 0(r3) +/* 801D4F7C 001D1EDC 38 00 00 01 */ li r0, 1 +/* 801D4F80 001D1EE0 90 03 00 04 */ stw r0, 4(r3) +lbl_801D4F84: +/* 801D4F84 001D1EE4 3C 80 80 3D */ lis r4, lbl_803D1B88@ha +/* 801D4F88 001D1EE8 90 7D 00 08 */ stw r3, 8(r29) +/* 801D4F8C 001D1EEC 38 84 1B 88 */ addi r4, r4, lbl_803D1B88@l +/* 801D4F90 001D1EF0 38 60 00 3C */ li r3, 0x3c +/* 801D4F94 001D1EF4 38 A0 00 00 */ li r5, 0 +/* 801D4F98 001D1EF8 48 14 08 D5 */ bl __nw__FUlPCcPCc +/* 801D4F9C 001D1EFC 7C 7C 1B 79 */ or. r28, r3, r3 +/* 801D4FA0 001D1F00 41 82 00 18 */ beq lbl_801D4FB8 +/* 801D4FA4 001D1F04 80 DD 00 00 */ lwz r6, 0(r29) +/* 801D4FA8 001D1F08 7F C4 F3 78 */ mr r4, r30 +/* 801D4FAC 001D1F0C 7F E5 FB 78 */ mr r5, r31 +/* 801D4FB0 001D1F10 4B F9 3F 95 */ bl __ct__13CMapWorldInfoFR16CBitStreamReaderRC10CSaveWorldUi +/* 801D4FB4 001D1F14 7C 7C 1B 78 */ mr r28, r3 +lbl_801D4FB8: +/* 801D4FB8 001D1F18 38 7D 00 0C */ addi r3, r29, 0xc +/* 801D4FBC 001D1F1C 4B E3 3C 81 */ bl sub_80008c3c +/* 801D4FC0 001D1F20 3C 80 80 3D */ lis r4, lbl_803D1B88@ha +/* 801D4FC4 001D1F24 38 60 00 08 */ li r3, 8 +/* 801D4FC8 001D1F28 38 84 1B 88 */ addi r4, r4, lbl_803D1B88@l +/* 801D4FCC 001D1F2C 38 A0 00 00 */ li r5, 0 +/* 801D4FD0 001D1F30 48 14 08 9D */ bl __nw__FUlPCcPCc +/* 801D4FD4 001D1F34 28 03 00 00 */ cmplwi r3, 0 +/* 801D4FD8 001D1F38 41 82 00 10 */ beq lbl_801D4FE8 +/* 801D4FDC 001D1F3C 93 83 00 00 */ stw r28, 0(r3) +/* 801D4FE0 001D1F40 38 00 00 01 */ li r0, 1 +/* 801D4FE4 001D1F44 90 03 00 04 */ stw r0, 4(r3) +lbl_801D4FE8: +/* 801D4FE8 001D1F48 3C 80 80 3D */ lis r4, lbl_803D1B88@ha +/* 801D4FEC 001D1F4C 90 7D 00 0C */ stw r3, 0xc(r29) +/* 801D4FF0 001D1F50 38 84 1B 88 */ addi r4, r4, lbl_803D1B88@l +/* 801D4FF4 001D1F54 38 60 00 24 */ li r3, 0x24 +/* 801D4FF8 001D1F58 38 A0 00 00 */ li r5, 0 +/* 801D4FFC 001D1F5C 48 14 08 71 */ bl __nw__FUlPCcPCc +/* 801D5000 001D1F60 7C 7C 1B 79 */ or. r28, r3, r3 +/* 801D5004 001D1F64 41 82 00 14 */ beq lbl_801D5018 +/* 801D5008 001D1F68 7F C4 F3 78 */ mr r4, r30 +/* 801D500C 001D1F6C 7F E5 FB 78 */ mr r5, r31 +/* 801D5010 001D1F70 48 05 F4 11 */ bl __ct__16CWorldLayerStateFR16CBitStreamReaderRC10CSaveWorld +/* 801D5014 001D1F74 7C 7C 1B 78 */ mr r28, r3 +lbl_801D5018: +/* 801D5018 001D1F78 38 7D 00 14 */ addi r3, r29, 0x14 +/* 801D501C 001D1F7C 4B E3 3D B1 */ bl sub_80008dcc +/* 801D5020 001D1F80 3C 80 80 3D */ lis r4, lbl_803D1B88@ha +/* 801D5024 001D1F84 38 60 00 08 */ li r3, 8 +/* 801D5028 001D1F88 38 84 1B 88 */ addi r4, r4, lbl_803D1B88@l +/* 801D502C 001D1F8C 38 A0 00 00 */ li r5, 0 +/* 801D5030 001D1F90 48 14 08 3D */ bl __nw__FUlPCcPCc +/* 801D5034 001D1F94 28 03 00 00 */ cmplwi r3, 0 +/* 801D5038 001D1F98 41 82 00 10 */ beq lbl_801D5048 +/* 801D503C 001D1F9C 93 83 00 00 */ stw r28, 0(r3) +/* 801D5040 001D1FA0 38 00 00 01 */ li r0, 1 +/* 801D5044 001D1FA4 90 03 00 04 */ stw r0, 4(r3) +lbl_801D5048: +/* 801D5048 001D1FA8 90 7D 00 14 */ stw r3, 0x14(r29) +/* 801D504C 001D1FAC 7F A3 EB 78 */ mr r3, r29 +/* 801D5050 001D1FB0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801D5054 001D1FB4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801D5058 001D1FB8 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801D505C 001D1FBC 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801D5060 001D1FC0 83 81 00 10 */ lwz r28, 0x10(r1) +/* 801D5064 001D1FC4 7C 08 03 A6 */ mtlr r0 +/* 801D5068 001D1FC8 38 21 00 20 */ addi r1, r1, 0x20 +/* 801D506C 001D1FCC 4E 80 00 20 */ blr + +.global __ct__11CWorldStateFUi +__ct__11CWorldStateFUi: +/* 801D5070 001D1FD0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D5074 001D1FD4 7C 08 02 A6 */ mflr r0 +/* 801D5078 001D1FD8 38 A0 00 00 */ li r5, 0 +/* 801D507C 001D1FDC 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D5080 001D1FE0 38 00 00 00 */ li r0, 0 +/* 801D5084 001D1FE4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801D5088 001D1FE8 7C 7F 1B 78 */ mr r31, r3 +/* 801D508C 001D1FEC 3C 60 80 3D */ lis r3, lbl_803D1B88@ha +/* 801D5090 001D1FF0 93 C1 00 08 */ stw r30, 8(r1) +/* 801D5094 001D1FF4 90 9F 00 00 */ stw r4, 0(r31) +/* 801D5098 001D1FF8 38 83 1B 88 */ addi r4, r3, lbl_803D1B88@l +/* 801D509C 001D1FFC 38 60 08 04 */ li r3, 0x804 +/* 801D50A0 001D2000 90 1F 00 04 */ stw r0, 4(r31) +/* 801D50A4 001D2004 48 14 07 C9 */ bl __nw__FUlPCcPCc +/* 801D50A8 001D2008 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801D50AC 001D200C 41 82 00 0C */ beq lbl_801D50B8 +/* 801D50B0 001D2010 4B F0 CF 7D */ bl __ct__14CScriptMailboxFv +/* 801D50B4 001D2014 7C 7E 1B 78 */ mr r30, r3 +lbl_801D50B8: +/* 801D50B8 001D2018 3C 80 80 3D */ lis r4, lbl_803D1B88@ha +/* 801D50BC 001D201C 38 60 00 08 */ li r3, 8 +/* 801D50C0 001D2020 38 84 1B 88 */ addi r4, r4, lbl_803D1B88@l +/* 801D50C4 001D2024 38 A0 00 00 */ li r5, 0 +/* 801D50C8 001D2028 48 14 07 A5 */ bl __nw__FUlPCcPCc +/* 801D50CC 001D202C 28 03 00 00 */ cmplwi r3, 0 +/* 801D50D0 001D2030 41 82 00 10 */ beq lbl_801D50E0 +/* 801D50D4 001D2034 93 C3 00 00 */ stw r30, 0(r3) +/* 801D50D8 001D2038 38 00 00 01 */ li r0, 1 +/* 801D50DC 001D203C 90 03 00 04 */ stw r0, 4(r3) +lbl_801D50E0: +/* 801D50E0 001D2040 3C 80 80 3D */ lis r4, lbl_803D1B88@ha +/* 801D50E4 001D2044 90 7F 00 08 */ stw r3, 8(r31) +/* 801D50E8 001D2048 38 84 1B 88 */ addi r4, r4, lbl_803D1B88@l +/* 801D50EC 001D204C 38 60 00 3C */ li r3, 0x3c +/* 801D50F0 001D2050 38 A0 00 00 */ li r5, 0 +/* 801D50F4 001D2054 48 14 07 79 */ bl __nw__FUlPCcPCc +/* 801D50F8 001D2058 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801D50FC 001D205C 41 82 00 0C */ beq lbl_801D5108 +/* 801D5100 001D2060 4B F9 42 85 */ bl __ct__13CMapWorldInfoFv +/* 801D5104 001D2064 7C 7E 1B 78 */ mr r30, r3 +lbl_801D5108: +/* 801D5108 001D2068 3C 80 80 3D */ lis r4, lbl_803D1B88@ha +/* 801D510C 001D206C 38 60 00 08 */ li r3, 8 +/* 801D5110 001D2070 38 84 1B 88 */ addi r4, r4, lbl_803D1B88@l +/* 801D5114 001D2074 38 A0 00 00 */ li r5, 0 +/* 801D5118 001D2078 48 14 07 55 */ bl __nw__FUlPCcPCc +/* 801D511C 001D207C 28 03 00 00 */ cmplwi r3, 0 +/* 801D5120 001D2080 41 82 00 10 */ beq lbl_801D5130 +/* 801D5124 001D2084 93 C3 00 00 */ stw r30, 0(r3) +/* 801D5128 001D2088 38 00 00 01 */ li r0, 1 +/* 801D512C 001D208C 90 03 00 04 */ stw r0, 4(r3) +lbl_801D5130: +/* 801D5130 001D2090 90 7F 00 0C */ stw r3, 0xc(r31) +/* 801D5134 001D2094 38 00 FF FF */ li r0, -1 +/* 801D5138 001D2098 3C 80 80 3D */ lis r4, lbl_803D1B88@ha +/* 801D513C 001D209C 38 60 00 24 */ li r3, 0x24 +/* 801D5140 001D20A0 90 1F 00 10 */ stw r0, 0x10(r31) +/* 801D5144 001D20A4 38 84 1B 88 */ addi r4, r4, lbl_803D1B88@l +/* 801D5148 001D20A8 38 A0 00 00 */ li r5, 0 +/* 801D514C 001D20AC 48 14 07 21 */ bl __nw__FUlPCcPCc +/* 801D5150 001D20B0 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801D5154 001D20B4 41 82 00 0C */ beq lbl_801D5160 +/* 801D5158 001D20B8 48 05 F4 7D */ bl __ct__13CGLXMemoryInfoFi +/* 801D515C 001D20BC 7C 7E 1B 78 */ mr r30, r3 +lbl_801D5160: +/* 801D5160 001D20C0 3C 80 80 3D */ lis r4, lbl_803D1B88@ha +/* 801D5164 001D20C4 38 60 00 08 */ li r3, 8 +/* 801D5168 001D20C8 38 84 1B 88 */ addi r4, r4, lbl_803D1B88@l +/* 801D516C 001D20CC 38 A0 00 00 */ li r5, 0 +/* 801D5170 001D20D0 48 14 06 FD */ bl __nw__FUlPCcPCc +/* 801D5174 001D20D4 28 03 00 00 */ cmplwi r3, 0 +/* 801D5178 001D20D8 41 82 00 10 */ beq lbl_801D5188 +/* 801D517C 001D20DC 93 C3 00 00 */ stw r30, 0(r3) +/* 801D5180 001D20E0 38 00 00 01 */ li r0, 1 +/* 801D5184 001D20E4 90 03 00 04 */ stw r0, 4(r3) +lbl_801D5188: +/* 801D5188 001D20E8 90 7F 00 14 */ stw r3, 0x14(r31) +/* 801D518C 001D20EC 7F E3 FB 78 */ mr r3, r31 +/* 801D5190 001D20F0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D5194 001D20F4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801D5198 001D20F8 83 C1 00 08 */ lwz r30, 8(r1) +/* 801D519C 001D20FC 7C 08 03 A6 */ mtlr r0 +/* 801D51A0 001D2100 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D51A4 001D2104 4E 80 00 20 */ blr + +.global SetAutoMapperKeyState__14CSystemOptionsFi +SetAutoMapperKeyState__14CSystemOptionsFi: +/* 801D51A8 001D2108 90 83 00 BC */ stw r4, 0xbc(r3) +/* 801D51AC 001D210C 4E 80 00 20 */ blr + +.global SetAllItemsCollected__14CSystemOptionsFb +SetAllItemsCollected__14CSystemOptionsFb: +/* 801D51B0 001D2110 88 03 00 D0 */ lbz r0, 0xd0(r3) +/* 801D51B4 001D2114 50 80 17 7A */ rlwimi r0, r4, 2, 0x1d, 0x1d +/* 801D51B8 001D2118 98 03 00 D0 */ stb r0, 0xd0(r3) +/* 801D51BC 001D211C 4E 80 00 20 */ blr + +.global SetHasFusion__14CSystemOptionsFb +SetHasFusion__14CSystemOptionsFb: +/* 801D51C0 001D2120 88 03 00 D0 */ lbz r0, 0xd0(r3) +/* 801D51C4 001D2124 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c +/* 801D51C8 001D2128 98 03 00 D0 */ stb r0, 0xd0(r3) +/* 801D51CC 001D212C 4E 80 00 20 */ blr + +.global sub_801d51d0 +sub_801d51d0: +/* 801D51D0 001D2130 88 03 00 D0 */ lbz r0, 0xd0(r3) +/* 801D51D4 001D2134 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 801D51D8 001D2138 98 03 00 D0 */ stb r0, 0xd0(r3) +/* 801D51DC 001D213C 4E 80 00 20 */ blr + +.global SetHardModeBeat__14CSystemOptionsFb +SetHardModeBeat__14CSystemOptionsFb: +/* 801D51E0 001D2140 88 03 00 D0 */ lbz r0, 0xd0(r3) +/* 801D51E4 001D2144 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 801D51E8 001D2148 98 03 00 D0 */ stb r0, 0xd0(r3) +/* 801D51EC 001D214C 4E 80 00 20 */ blr + +.global SetHasHardMode__14CSystemOptionsFb +SetHasHardMode__14CSystemOptionsFb: +/* 801D51F0 001D2150 88 03 00 D0 */ lbz r0, 0xd0(r3) +/* 801D51F4 001D2154 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 801D51F8 001D2158 98 03 00 D0 */ stb r0, 0xd0(r3) +/* 801D51FC 001D215C 4E 80 00 20 */ blr + +.global SetLogScanCount__14CSystemOptionsFi +SetLogScanCount__14CSystemOptionsFi: +/* 801D5200 001D2160 90 83 00 CC */ stw r4, 0xcc(r3) +/* 801D5204 001D2164 4E 80 00 20 */ blr + +.global GetLogScanCount__14CSystemOptionsFv +GetLogScanCount__14CSystemOptionsFv: +/* 801D5208 001D2168 80 63 00 CC */ lwz r3, 0xcc(r3) +/* 801D520C 001D216C 4E 80 00 20 */ blr + +.global sub_801d5210 +sub_801d5210: +/* 801D5210 001D2170 88 03 00 D0 */ lbz r0, 0xd0(r3) +/* 801D5214 001D2174 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801D5218 001D2178 98 03 00 D0 */ stb r0, 0xd0(r3) +/* 801D521C 001D217C 4E 80 00 20 */ blr + +.global sub_801d5220 +sub_801d5220: +/* 801D5220 001D2180 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D5224 001D2184 80 A3 00 C8 */ lwz r5, 0xc8(r3) +/* 801D5228 001D2188 38 81 00 08 */ addi r4, r1, 8 +/* 801D522C 001D218C 80 0D 91 A8 */ lwz r0, lbl_805A7D68@sda21(r13) +/* 801D5230 001D2190 38 A5 00 01 */ addi r5, r5, 1 +/* 801D5234 001D2194 7C 00 28 00 */ cmpw r0, r5 +/* 801D5238 001D2198 90 A1 00 08 */ stw r5, 8(r1) +/* 801D523C 001D219C 40 80 00 08 */ bge lbl_801D5244 +/* 801D5240 001D21A0 38 8D 91 A8 */ addi r4, r13, lbl_805A7D68@sda21 +lbl_801D5244: +/* 801D5244 001D21A4 80 04 00 00 */ lwz r0, 0(r4) +/* 801D5248 001D21A8 90 03 00 C8 */ stw r0, 0xc8(r3) +/* 801D524C 001D21AC 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D5250 001D21B0 4E 80 00 20 */ blr + +.global sub_801d5254 +sub_801d5254: +/* 801D5254 001D21B4 80 03 00 C8 */ lwz r0, 0xc8(r3) +/* 801D5258 001D21B8 38 60 00 01 */ li r3, 1 +/* 801D525C 001D21BC 7C 60 02 78 */ xor r0, r3, r0 +/* 801D5260 001D21C0 7C 00 00 34 */ cntlzw r0, r0 +/* 801D5264 001D21C4 7C 60 00 30 */ slw r0, r3, r0 +/* 801D5268 001D21C8 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801D526C 001D21CC 4E 80 00 20 */ blr + +.global IncrementFrozenBallCount__14CSystemOptionsFv +IncrementFrozenBallCount__14CSystemOptionsFv: +/* 801D5270 001D21D0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D5274 001D21D4 80 A3 00 C4 */ lwz r5, 0xc4(r3) +/* 801D5278 001D21D8 38 81 00 08 */ addi r4, r1, 8 +/* 801D527C 001D21DC 80 0D 91 A4 */ lwz r0, lbl_805A7D64@sda21(r13) +/* 801D5280 001D21E0 38 A5 00 01 */ addi r5, r5, 1 +/* 801D5284 001D21E4 7C 00 28 00 */ cmpw r0, r5 +/* 801D5288 001D21E8 90 A1 00 08 */ stw r5, 8(r1) +/* 801D528C 001D21EC 40 80 00 08 */ bge lbl_801D5294 +/* 801D5290 001D21F0 38 8D 91 A4 */ addi r4, r13, lbl_805A7D64@sda21 +lbl_801D5294: +/* 801D5294 001D21F4 80 04 00 00 */ lwz r0, 0(r4) +/* 801D5298 001D21F8 90 03 00 C4 */ stw r0, 0xc4(r3) +/* 801D529C 001D21FC 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D52A0 001D2200 4E 80 00 20 */ blr + +.global GetShowFrozenBallMessage__14CSystemOptionsCFv +GetShowFrozenBallMessage__14CSystemOptionsCFv: +/* 801D52A4 001D2204 80 03 00 C4 */ lwz r0, 0xc4(r3) +/* 801D52A8 001D2208 38 60 00 03 */ li r3, 3 +/* 801D52AC 001D220C 7C 60 02 78 */ xor r0, r3, r0 +/* 801D52B0 001D2210 7C 00 00 34 */ cntlzw r0, r0 +/* 801D52B4 001D2214 7C 60 00 30 */ slw r0, r3, r0 +/* 801D52B8 001D2218 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801D52BC 001D221C 4E 80 00 20 */ blr + +.global IncrementFrozenFpsCount__14CSystemOptionsFv +IncrementFrozenFpsCount__14CSystemOptionsFv: +/* 801D52C0 001D2220 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D52C4 001D2224 80 A3 00 C0 */ lwz r5, 0xc0(r3) +/* 801D52C8 001D2228 38 81 00 08 */ addi r4, r1, 8 +/* 801D52CC 001D222C 80 0D 91 A0 */ lwz r0, lbl_805A7D60@sda21(r13) +/* 801D52D0 001D2230 38 A5 00 01 */ addi r5, r5, 1 +/* 801D52D4 001D2234 7C 00 28 00 */ cmpw r0, r5 +/* 801D52D8 001D2238 90 A1 00 08 */ stw r5, 8(r1) +/* 801D52DC 001D223C 40 80 00 08 */ bge lbl_801D52E4 +/* 801D52E0 001D2240 38 8D 91 A0 */ addi r4, r13, lbl_805A7D60@sda21 +lbl_801D52E4: +/* 801D52E4 001D2244 80 04 00 00 */ lwz r0, 0(r4) +/* 801D52E8 001D2248 90 03 00 C0 */ stw r0, 0xc0(r3) +/* 801D52EC 001D224C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D52F0 001D2250 4E 80 00 20 */ blr + +.global GetShowFrozenFpsMessage__14CSystemOptionsCFv +GetShowFrozenFpsMessage__14CSystemOptionsCFv: +/* 801D52F4 001D2254 80 03 00 C0 */ lwz r0, 0xc0(r3) +/* 801D52F8 001D2258 38 60 00 03 */ li r3, 3 +/* 801D52FC 001D225C 7C 60 02 78 */ xor r0, r3, r0 +/* 801D5300 001D2260 7C 00 00 34 */ cntlzw r0, r0 +/* 801D5304 001D2264 7C 60 00 30 */ slw r0, r3, r0 +/* 801D5308 001D2268 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801D530C 001D226C 4E 80 00 20 */ blr + +.global SetCinematicState__14CSystemOptionsFUi9TEditorIdb +SetCinematicState__14CSystemOptionsFUi9TEditorIdb: +/* 801D5310 001D2270 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801D5314 001D2274 7C 08 02 A6 */ mflr r0 +/* 801D5318 001D2278 90 01 00 24 */ stw r0, 0x24(r1) +/* 801D531C 001D227C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801D5320 001D2280 7C 9F 23 78 */ mr r31, r4 +/* 801D5324 001D2284 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801D5328 001D2288 7C 7E 1B 78 */ mr r30, r3 +/* 801D532C 001D228C 80 63 00 B8 */ lwz r3, 0xb8(r3) +/* 801D5330 001D2290 81 1E 00 B0 */ lwz r8, 0xb0(r30) +/* 801D5334 001D2294 90 61 00 10 */ stw r3, 0x10(r1) +/* 801D5338 001D2298 55 00 18 38 */ slwi r0, r8, 3 +/* 801D533C 001D229C 7C E3 02 14 */ add r7, r3, r0 +/* 801D5340 001D22A0 48 00 00 70 */ b lbl_801D53B0 +lbl_801D5344: +/* 801D5344 001D22A4 80 C1 00 10 */ lwz r6, 0x10(r1) +/* 801D5348 001D22A8 38 80 00 00 */ li r4, 0 +/* 801D534C 001D22AC 80 1F 00 00 */ lwz r0, 0(r31) +/* 801D5350 001D22B0 80 66 00 00 */ lwz r3, 0(r6) +/* 801D5354 001D22B4 7C 03 00 40 */ cmplw r3, r0 +/* 801D5358 001D22B8 40 82 00 20 */ bne lbl_801D5378 +/* 801D535C 001D22BC 80 66 00 04 */ lwz r3, 4(r6) +/* 801D5360 001D22C0 80 1F 00 04 */ lwz r0, 4(r31) +/* 801D5364 001D22C4 54 63 01 BE */ clrlwi r3, r3, 6 +/* 801D5368 001D22C8 54 00 01 BE */ clrlwi r0, r0, 6 +/* 801D536C 001D22CC 7C 03 00 40 */ cmplw r3, r0 +/* 801D5370 001D22D0 40 82 00 08 */ bne lbl_801D5378 +/* 801D5374 001D22D4 38 80 00 01 */ li r4, 1 +lbl_801D5378: +/* 801D5378 001D22D8 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 801D537C 001D22DC 41 82 00 28 */ beq lbl_801D53A4 +/* 801D5380 001D22E0 54 A0 06 3F */ clrlwi. r0, r5, 0x18 +/* 801D5384 001D22E4 40 82 00 A4 */ bne lbl_801D5428 +/* 801D5388 001D22E8 80 01 00 10 */ lwz r0, 0x10(r1) +/* 801D538C 001D22EC 38 61 00 0C */ addi r3, r1, 0xc +/* 801D5390 001D22F0 38 9E 00 AC */ addi r4, r30, 0xac +/* 801D5394 001D22F4 38 A1 00 08 */ addi r5, r1, 8 +/* 801D5398 001D22F8 90 01 00 08 */ stw r0, 8(r1) +/* 801D539C 001D22FC 48 00 00 A5 */ bl sub_801d5440 +/* 801D53A0 001D2300 48 00 00 88 */ b lbl_801D5428 +lbl_801D53A4: +/* 801D53A4 001D2304 80 61 00 10 */ lwz r3, 0x10(r1) +/* 801D53A8 001D2308 38 03 00 08 */ addi r0, r3, 8 +/* 801D53AC 001D230C 90 01 00 10 */ stw r0, 0x10(r1) +lbl_801D53B0: +/* 801D53B0 001D2310 80 01 00 10 */ lwz r0, 0x10(r1) +/* 801D53B4 001D2314 7C 00 38 40 */ cmplw r0, r7 +/* 801D53B8 001D2318 40 82 FF 8C */ bne lbl_801D5344 +/* 801D53BC 001D231C 54 A0 06 3F */ clrlwi. r0, r5, 0x18 +/* 801D53C0 001D2320 41 82 00 68 */ beq lbl_801D5428 +/* 801D53C4 001D2324 38 7E 00 AC */ addi r3, r30, 0xac +/* 801D53C8 001D2328 38 88 00 01 */ addi r4, r8, 1 +/* 801D53CC 001D232C 4B E3 37 79 */ bl sub_80008b44 +/* 801D53D0 001D2330 80 1E 00 B0 */ lwz r0, 0xb0(r30) +/* 801D53D4 001D2334 80 BE 00 B4 */ lwz r5, 0xb4(r30) +/* 801D53D8 001D2338 7C 00 28 00 */ cmpw r0, r5 +/* 801D53DC 001D233C 41 80 00 1C */ blt lbl_801D53F8 +/* 801D53E0 001D2340 2C 05 00 00 */ cmpwi r5, 0 +/* 801D53E4 001D2344 38 7E 00 AC */ addi r3, r30, 0xac +/* 801D53E8 001D2348 38 80 00 04 */ li r4, 4 +/* 801D53EC 001D234C 41 82 00 08 */ beq lbl_801D53F4 +/* 801D53F0 001D2350 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801D53F4: +/* 801D53F4 001D2354 4B E3 37 51 */ bl sub_80008b44 +lbl_801D53F8: +/* 801D53F8 001D2358 80 1E 00 B0 */ lwz r0, 0xb0(r30) +/* 801D53FC 001D235C 80 7E 00 B8 */ lwz r3, 0xb8(r30) +/* 801D5400 001D2360 54 00 18 38 */ slwi r0, r0, 3 +/* 801D5404 001D2364 7C 63 02 15 */ add. r3, r3, r0 +/* 801D5408 001D2368 41 82 00 14 */ beq lbl_801D541C +/* 801D540C 001D236C 80 1F 00 00 */ lwz r0, 0(r31) +/* 801D5410 001D2370 90 03 00 00 */ stw r0, 0(r3) +/* 801D5414 001D2374 80 1F 00 04 */ lwz r0, 4(r31) +/* 801D5418 001D2378 90 03 00 04 */ stw r0, 4(r3) +lbl_801D541C: +/* 801D541C 001D237C 80 7E 00 B0 */ lwz r3, 0xb0(r30) +/* 801D5420 001D2380 38 03 00 01 */ addi r0, r3, 1 +/* 801D5424 001D2384 90 1E 00 B0 */ stw r0, 0xb0(r30) +lbl_801D5428: +/* 801D5428 001D2388 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801D542C 001D238C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801D5430 001D2390 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801D5434 001D2394 7C 08 03 A6 */ mtlr r0 +/* 801D5438 001D2398 38 21 00 20 */ addi r1, r1, 0x20 +/* 801D543C 001D239C 4E 80 00 20 */ blr + +.global sub_801d5440 +sub_801d5440: +/* 801D5440 001D23A0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801D5444 001D23A4 7C 08 02 A6 */ mflr r0 +/* 801D5448 001D23A8 90 01 00 24 */ stw r0, 0x24(r1) +/* 801D544C 001D23AC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801D5450 001D23B0 7C 7F 1B 78 */ mr r31, r3 +/* 801D5454 001D23B4 80 C5 00 00 */ lwz r6, 0(r5) +/* 801D5458 001D23B8 80 05 00 00 */ lwz r0, 0(r5) +/* 801D545C 001D23BC 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801D5460 001D23C0 38 E6 00 08 */ addi r7, r6, 8 +/* 801D5464 001D23C4 38 C1 00 0C */ addi r6, r1, 0xc +/* 801D5468 001D23C8 90 E1 00 08 */ stw r7, 8(r1) +/* 801D546C 001D23CC 90 E1 00 0C */ stw r7, 0xc(r1) +/* 801D5470 001D23D0 90 01 00 10 */ stw r0, 0x10(r1) +/* 801D5474 001D23D4 48 00 00 19 */ bl sub_801d548c +/* 801D5478 001D23D8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801D547C 001D23DC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801D5480 001D23E0 7C 08 03 A6 */ mtlr r0 +/* 801D5484 001D23E4 38 21 00 20 */ addi r1, r1, 0x20 +/* 801D5488 001D23E8 4E 80 00 20 */ blr + +.global sub_801d548c +sub_801d548c: +/* 801D548C 001D23EC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D5490 001D23F0 80 E5 00 00 */ lwz r7, 0(r5) +/* 801D5494 001D23F4 80 06 00 00 */ lwz r0, 0(r6) +/* 801D5498 001D23F8 90 E1 00 0C */ stw r7, 0xc(r1) +/* 801D549C 001D23FC 90 01 00 08 */ stw r0, 8(r1) +/* 801D54A0 001D2400 48 00 00 08 */ b lbl_801D54A8 +lbl_801D54A4: +/* 801D54A4 001D2404 38 E7 00 08 */ addi r7, r7, 8 +lbl_801D54A8: +/* 801D54A8 001D2408 7C 07 00 40 */ cmplw r7, r0 +/* 801D54AC 001D240C 40 82 FF F8 */ bne lbl_801D54A4 +/* 801D54B0 001D2410 81 04 00 0C */ lwz r8, 0xc(r4) +/* 801D54B4 001D2414 80 05 00 00 */ lwz r0, 0(r5) +/* 801D54B8 001D2418 80 E6 00 00 */ lwz r7, 0(r6) +/* 801D54BC 001D241C 7C 08 00 50 */ subf r0, r8, r0 +/* 801D54C0 001D2420 7C 00 1E 70 */ srawi r0, r0, 3 +/* 801D54C4 001D2424 7C C0 01 94 */ addze r6, r0 +/* 801D54C8 001D2428 54 C0 18 38 */ slwi r0, r6, 3 +/* 801D54CC 001D242C 7C C9 33 78 */ mr r9, r6 +/* 801D54D0 001D2430 7D 08 02 14 */ add r8, r8, r0 +/* 801D54D4 001D2434 48 00 00 28 */ b lbl_801D54FC +lbl_801D54D8: +/* 801D54D8 001D2438 28 08 00 00 */ cmplwi r8, 0 +/* 801D54DC 001D243C 41 82 00 14 */ beq lbl_801D54F0 +/* 801D54E0 001D2440 80 07 00 00 */ lwz r0, 0(r7) +/* 801D54E4 001D2444 90 08 00 00 */ stw r0, 0(r8) +/* 801D54E8 001D2448 80 07 00 04 */ lwz r0, 4(r7) +/* 801D54EC 001D244C 90 08 00 04 */ stw r0, 4(r8) +lbl_801D54F0: +/* 801D54F0 001D2450 39 08 00 08 */ addi r8, r8, 8 +/* 801D54F4 001D2454 39 29 00 01 */ addi r9, r9, 1 +/* 801D54F8 001D2458 38 E7 00 08 */ addi r7, r7, 8 +lbl_801D54FC: +/* 801D54FC 001D245C 80 04 00 04 */ lwz r0, 4(r4) +/* 801D5500 001D2460 80 C4 00 0C */ lwz r6, 0xc(r4) +/* 801D5504 001D2464 54 00 18 38 */ slwi r0, r0, 3 +/* 801D5508 001D2468 7C 06 02 14 */ add r0, r6, r0 +/* 801D550C 001D246C 7C 07 00 40 */ cmplw r7, r0 +/* 801D5510 001D2470 40 82 FF C8 */ bne lbl_801D54D8 +/* 801D5514 001D2474 91 24 00 04 */ stw r9, 4(r4) +/* 801D5518 001D2478 80 05 00 00 */ lwz r0, 0(r5) +/* 801D551C 001D247C 90 03 00 00 */ stw r0, 0(r3) +/* 801D5520 001D2480 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D5524 001D2484 4E 80 00 20 */ blr + +.global "GetCinematicState__14CSystemOptionsFRCQ24rstl19pair" +"GetCinematicState__14CSystemOptionsFRCQ24rstl19pair": +/* 801D5528 001D2488 80 03 00 B0 */ lwz r0, 0xb0(r3) +/* 801D552C 001D248C 80 E3 00 B8 */ lwz r7, 0xb8(r3) +/* 801D5530 001D2490 54 00 18 38 */ slwi r0, r0, 3 +/* 801D5534 001D2494 7C C7 02 14 */ add r6, r7, r0 +/* 801D5538 001D2498 48 00 00 48 */ b lbl_801D5580 +lbl_801D553C: +/* 801D553C 001D249C 80 67 00 00 */ lwz r3, 0(r7) +/* 801D5540 001D24A0 38 A0 00 00 */ li r5, 0 +/* 801D5544 001D24A4 80 04 00 00 */ lwz r0, 0(r4) +/* 801D5548 001D24A8 7C 03 00 40 */ cmplw r3, r0 +/* 801D554C 001D24AC 40 82 00 20 */ bne lbl_801D556C +/* 801D5550 001D24B0 80 67 00 04 */ lwz r3, 4(r7) +/* 801D5554 001D24B4 80 04 00 04 */ lwz r0, 4(r4) +/* 801D5558 001D24B8 54 63 01 BE */ clrlwi r3, r3, 6 +/* 801D555C 001D24BC 54 00 01 BE */ clrlwi r0, r0, 6 +/* 801D5560 001D24C0 7C 03 00 40 */ cmplw r3, r0 +/* 801D5564 001D24C4 40 82 00 08 */ bne lbl_801D556C +/* 801D5568 001D24C8 38 A0 00 01 */ li r5, 1 +lbl_801D556C: +/* 801D556C 001D24CC 54 A0 06 3F */ clrlwi. r0, r5, 0x18 +/* 801D5570 001D24D0 41 82 00 0C */ beq lbl_801D557C +/* 801D5574 001D24D4 38 60 00 01 */ li r3, 1 +/* 801D5578 001D24D8 4E 80 00 20 */ blr +lbl_801D557C: +/* 801D557C 001D24DC 38 E7 00 08 */ addi r7, r7, 8 +lbl_801D5580: +/* 801D5580 001D24E0 7C 07 30 40 */ cmplw r7, r6 +/* 801D5584 001D24E4 40 82 FF B8 */ bne lbl_801D553C +/* 801D5588 001D24E8 38 60 00 00 */ li r3, 0 +/* 801D558C 001D24EC 4E 80 00 20 */ blr + +.global PutTo__14CSystemOptionsFR13COutputStream +PutTo__14CSystemOptionsFR13COutputStream: +/* 801D5590 001D24F0 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 801D5594 001D24F4 7C 08 02 A6 */ mflr r0 +/* 801D5598 001D24F8 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 801D559C 001D24FC BE 81 00 70 */ stmw r20, 0x70(r1) +/* 801D55A0 001D2500 7C 76 1B 78 */ mr r22, r3 +/* 801D55A4 001D2504 7C 97 23 78 */ mr r23, r4 +/* 801D55A8 001D2508 3A 80 00 00 */ li r20, 0 +lbl_801D55AC: +/* 801D55AC 001D250C 7C 96 A2 14 */ add r4, r22, r20 +/* 801D55B0 001D2510 7E E3 BB 78 */ mr r3, r23 +/* 801D55B4 001D2514 88 84 00 04 */ lbz r4, 4(r4) +/* 801D55B8 001D2518 38 A0 00 08 */ li r5, 8 +/* 801D55BC 001D251C 48 16 9E 01 */ bl WriteBits__13COutputStreamFii +/* 801D55C0 001D2520 3A 94 00 01 */ addi r20, r20, 1 +/* 801D55C4 001D2524 2C 14 00 62 */ cmpwi r20, 0x62 +/* 801D55C8 001D2528 41 80 FF E4 */ blt lbl_801D55AC +/* 801D55CC 001D252C 3A A0 00 00 */ li r21, 0 +/* 801D55D0 001D2530 3A 96 00 6C */ addi r20, r22, 0x6c +lbl_801D55D4: +/* 801D55D4 001D2534 88 94 00 00 */ lbz r4, 0(r20) +/* 801D55D8 001D2538 7E E3 BB 78 */ mr r3, r23 +/* 801D55DC 001D253C 38 A0 00 08 */ li r5, 8 +/* 801D55E0 001D2540 48 16 9D DD */ bl WriteBits__13COutputStreamFii +/* 801D55E4 001D2544 3A B5 00 01 */ addi r21, r21, 1 +/* 801D55E8 001D2548 3A 94 00 01 */ addi r20, r20, 1 +/* 801D55EC 001D254C 2C 15 00 40 */ cmpwi r21, 0x40 +/* 801D55F0 001D2550 41 80 FF E4 */ blt lbl_801D55D4 +/* 801D55F4 001D2554 38 60 00 03 */ li r3, 3 +/* 801D55F8 001D2558 48 00 0A B9 */ bl sub_801d60b0 +/* 801D55FC 001D255C 80 96 00 C0 */ lwz r4, 0xc0(r22) +/* 801D5600 001D2560 7C 65 1B 78 */ mr r5, r3 +/* 801D5604 001D2564 7E E3 BB 78 */ mr r3, r23 +/* 801D5608 001D2568 48 16 9D B5 */ bl WriteBits__13COutputStreamFii +/* 801D560C 001D256C 38 60 00 03 */ li r3, 3 +/* 801D5610 001D2570 48 00 0A A1 */ bl sub_801d60b0 +/* 801D5614 001D2574 80 96 00 C4 */ lwz r4, 0xc4(r22) +/* 801D5618 001D2578 7C 65 1B 78 */ mr r5, r3 +/* 801D561C 001D257C 7E E3 BB 78 */ mr r3, r23 +/* 801D5620 001D2580 48 16 9D 9D */ bl WriteBits__13COutputStreamFii +/* 801D5624 001D2584 38 60 00 01 */ li r3, 1 +/* 801D5628 001D2588 48 00 0A 89 */ bl sub_801d60b0 +/* 801D562C 001D258C 80 96 00 C8 */ lwz r4, 0xc8(r22) +/* 801D5630 001D2590 7C 65 1B 78 */ mr r5, r3 +/* 801D5634 001D2594 7E E3 BB 78 */ mr r3, r23 +/* 801D5638 001D2598 48 16 9D 85 */ bl WriteBits__13COutputStreamFii +/* 801D563C 001D259C 38 60 00 64 */ li r3, 0x64 +/* 801D5640 001D25A0 48 00 0A 71 */ bl sub_801d60b0 +/* 801D5644 001D25A4 80 96 00 CC */ lwz r4, 0xcc(r22) +/* 801D5648 001D25A8 7C 65 1B 78 */ mr r5, r3 +/* 801D564C 001D25AC 7E E3 BB 78 */ mr r3, r23 +/* 801D5650 001D25B0 48 16 9D 6D */ bl WriteBits__13COutputStreamFii +/* 801D5654 001D25B4 88 16 00 D0 */ lbz r0, 0xd0(r22) +/* 801D5658 001D25B8 7E E3 BB 78 */ mr r3, r23 +/* 801D565C 001D25BC 38 A0 00 01 */ li r5, 1 +/* 801D5660 001D25C0 54 04 CF FE */ rlwinm r4, r0, 0x19, 0x1f, 0x1f +/* 801D5664 001D25C4 7C 04 00 D0 */ neg r0, r4 +/* 801D5668 001D25C8 7C 00 23 78 */ or r0, r0, r4 +/* 801D566C 001D25CC 54 04 0F FE */ srwi r4, r0, 0x1f +/* 801D5670 001D25D0 48 16 9D 4D */ bl WriteBits__13COutputStreamFii +/* 801D5674 001D25D4 88 16 00 D0 */ lbz r0, 0xd0(r22) +/* 801D5678 001D25D8 7E E3 BB 78 */ mr r3, r23 +/* 801D567C 001D25DC 38 A0 00 01 */ li r5, 1 +/* 801D5680 001D25E0 54 04 D7 FE */ rlwinm r4, r0, 0x1a, 0x1f, 0x1f +/* 801D5684 001D25E4 7C 04 00 D0 */ neg r0, r4 +/* 801D5688 001D25E8 7C 00 23 78 */ or r0, r0, r4 +/* 801D568C 001D25EC 54 04 0F FE */ srwi r4, r0, 0x1f +/* 801D5690 001D25F0 48 16 9D 2D */ bl WriteBits__13COutputStreamFii +/* 801D5694 001D25F4 88 16 00 D0 */ lbz r0, 0xd0(r22) +/* 801D5698 001D25F8 7E E3 BB 78 */ mr r3, r23 +/* 801D569C 001D25FC 38 A0 00 01 */ li r5, 1 +/* 801D56A0 001D2600 54 04 DF FE */ rlwinm r4, r0, 0x1b, 0x1f, 0x1f +/* 801D56A4 001D2604 7C 04 00 D0 */ neg r0, r4 +/* 801D56A8 001D2608 7C 00 23 78 */ or r0, r0, r4 +/* 801D56AC 001D260C 54 04 0F FE */ srwi r4, r0, 0x1f +/* 801D56B0 001D2610 48 16 9D 0D */ bl WriteBits__13COutputStreamFii +/* 801D56B4 001D2614 88 16 00 D0 */ lbz r0, 0xd0(r22) +/* 801D56B8 001D2618 7E E3 BB 78 */ mr r3, r23 +/* 801D56BC 001D261C 38 A0 00 01 */ li r5, 1 +/* 801D56C0 001D2620 54 04 E7 FE */ rlwinm r4, r0, 0x1c, 0x1f, 0x1f +/* 801D56C4 001D2624 7C 04 00 D0 */ neg r0, r4 +/* 801D56C8 001D2628 7C 00 23 78 */ or r0, r0, r4 +/* 801D56CC 001D262C 54 04 0F FE */ srwi r4, r0, 0x1f +/* 801D56D0 001D2630 48 16 9C ED */ bl WriteBits__13COutputStreamFii +/* 801D56D4 001D2634 88 16 00 D0 */ lbz r0, 0xd0(r22) +/* 801D56D8 001D2638 7E E3 BB 78 */ mr r3, r23 +/* 801D56DC 001D263C 38 A0 00 01 */ li r5, 1 +/* 801D56E0 001D2640 54 04 F7 FE */ rlwinm r4, r0, 0x1e, 0x1f, 0x1f +/* 801D56E4 001D2644 7C 04 00 D0 */ neg r0, r4 +/* 801D56E8 001D2648 7C 00 23 78 */ or r0, r0, r4 +/* 801D56EC 001D264C 54 04 0F FE */ srwi r4, r0, 0x1f +/* 801D56F0 001D2650 48 16 9C CD */ bl WriteBits__13COutputStreamFii +/* 801D56F4 001D2654 80 96 00 BC */ lwz r4, 0xbc(r22) +/* 801D56F8 001D2658 7E E3 BB 78 */ mr r3, r23 +/* 801D56FC 001D265C 38 A0 00 02 */ li r5, 2 +/* 801D5700 001D2660 48 16 9C BD */ bl WriteBits__13COutputStreamFii +/* 801D5704 001D2664 83 CD A0 84 */ lwz r30, gpMemoryCard@sda21(r13) +/* 801D5708 001D2668 3C 60 53 41 */ lis r3, 0x53415657@ha +/* 801D570C 001D266C 3A 83 56 57 */ addi r20, r3, 0x53415657@l +/* 801D5710 001D2670 3B 01 00 64 */ addi r24, r1, 0x64 +/* 801D5714 001D2674 82 BE 00 18 */ lwz r21, 0x18(r30) +/* 801D5718 001D2678 3B 40 00 00 */ li r26, 0 +/* 801D571C 001D267C 48 00 00 70 */ b lbl_801D578C +lbl_801D5720: +/* 801D5720 001D2680 80 15 00 08 */ lwz r0, 8(r21) +/* 801D5724 001D2684 38 61 00 38 */ addi r3, r1, 0x38 +/* 801D5728 001D2688 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801D572C 001D268C 38 A1 00 40 */ addi r5, r1, 0x40 +/* 801D5730 001D2690 92 81 00 40 */ stw r20, 0x40(r1) +/* 801D5734 001D2694 90 01 00 44 */ stw r0, 0x44(r1) +/* 801D5738 001D2698 81 84 00 00 */ lwz r12, 0(r4) +/* 801D573C 001D269C 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801D5740 001D26A0 7D 89 03 A6 */ mtctr r12 +/* 801D5744 001D26A4 4E 80 04 21 */ bctrl +/* 801D5748 001D26A8 7F 03 C3 78 */ mr r3, r24 +/* 801D574C 001D26AC 38 81 00 38 */ addi r4, r1, 0x38 +/* 801D5750 001D26B0 48 16 B7 59 */ bl __ct__6CTokenFRC6CToken +/* 801D5754 001D26B4 7F 03 C3 78 */ mr r3, r24 +/* 801D5758 001D26B8 48 16 B6 B5 */ bl GetObj__6CTokenFv +/* 801D575C 001D26BC 80 03 00 04 */ lwz r0, 4(r3) +/* 801D5760 001D26C0 38 61 00 38 */ addi r3, r1, 0x38 +/* 801D5764 001D26C4 38 80 FF FF */ li r4, -1 +/* 801D5768 001D26C8 90 01 00 6C */ stw r0, 0x6c(r1) +/* 801D576C 001D26CC 48 16 B6 D5 */ bl __dt__6CTokenFv +/* 801D5770 001D26D0 80 A1 00 6C */ lwz r5, 0x6c(r1) +/* 801D5774 001D26D4 38 61 00 64 */ addi r3, r1, 0x64 +/* 801D5778 001D26D8 38 80 00 00 */ li r4, 0 +/* 801D577C 001D26DC 80 05 00 08 */ lwz r0, 8(r5) +/* 801D5780 001D26E0 7F 5A 02 14 */ add r26, r26, r0 +/* 801D5784 001D26E4 48 16 B6 BD */ bl __dt__6CTokenFv +/* 801D5788 001D26E8 3A B5 00 4C */ addi r21, r21, 0x4c +lbl_801D578C: +/* 801D578C 001D26EC 80 1E 00 10 */ lwz r0, 0x10(r30) +/* 801D5790 001D26F0 80 7E 00 18 */ lwz r3, 0x18(r30) +/* 801D5794 001D26F4 1C 00 00 4C */ mulli r0, r0, 0x4c +/* 801D5798 001D26F8 7C 03 02 14 */ add r0, r3, r0 +/* 801D579C 001D26FC 7C 15 00 40 */ cmplw r21, r0 +/* 801D57A0 001D2700 40 82 FF 80 */ bne lbl_801D5720 +/* 801D57A4 001D2704 38 00 00 00 */ li r0, 0 +/* 801D57A8 001D2708 7F 44 D3 78 */ mr r4, r26 +/* 801D57AC 001D270C 90 01 00 58 */ stw r0, 0x58(r1) +/* 801D57B0 001D2710 38 61 00 54 */ addi r3, r1, 0x54 +/* 801D57B4 001D2714 90 01 00 5C */ stw r0, 0x5c(r1) +/* 801D57B8 001D2718 90 01 00 60 */ stw r0, 0x60(r1) +/* 801D57BC 001D271C 4B EC C8 AD */ bl sub_800a2068 +/* 801D57C0 001D2720 3C 60 53 41 */ lis r3, 0x53415657@ha +/* 801D57C4 001D2724 83 9E 00 18 */ lwz r28, 0x18(r30) +/* 801D57C8 001D2728 3B E3 56 57 */ addi r31, r3, 0x53415657@l +/* 801D57CC 001D272C 3A A1 00 48 */ addi r21, r1, 0x48 +/* 801D57D0 001D2730 48 00 00 FC */ b lbl_801D58CC +lbl_801D57D4: +/* 801D57D4 001D2734 83 3C 00 00 */ lwz r25, 0(r28) +/* 801D57D8 001D2738 38 61 00 28 */ addi r3, r1, 0x28 +/* 801D57DC 001D273C 80 1C 00 08 */ lwz r0, 8(r28) +/* 801D57E0 001D2740 38 A1 00 30 */ addi r5, r1, 0x30 +/* 801D57E4 001D2744 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801D57E8 001D2748 93 E1 00 30 */ stw r31, 0x30(r1) +/* 801D57EC 001D274C 90 01 00 34 */ stw r0, 0x34(r1) +/* 801D57F0 001D2750 81 84 00 00 */ lwz r12, 0(r4) +/* 801D57F4 001D2754 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801D57F8 001D2758 7D 89 03 A6 */ mtctr r12 +/* 801D57FC 001D275C 4E 80 04 21 */ bctrl +/* 801D5800 001D2760 7E A3 AB 78 */ mr r3, r21 +/* 801D5804 001D2764 38 81 00 28 */ addi r4, r1, 0x28 +/* 801D5808 001D2768 48 16 B6 A1 */ bl __ct__6CTokenFRC6CToken +/* 801D580C 001D276C 7E A3 AB 78 */ mr r3, r21 +/* 801D5810 001D2770 48 16 B5 FD */ bl GetObj__6CTokenFv +/* 801D5814 001D2774 80 03 00 04 */ lwz r0, 4(r3) +/* 801D5818 001D2778 38 61 00 28 */ addi r3, r1, 0x28 +/* 801D581C 001D277C 38 80 FF FF */ li r4, -1 +/* 801D5820 001D2780 90 01 00 50 */ stw r0, 0x50(r1) +/* 801D5824 001D2784 48 16 B6 1D */ bl __dt__6CTokenFv +/* 801D5828 001D2788 93 21 00 18 */ stw r25, 0x18(r1) +/* 801D582C 001D278C 3B 00 00 00 */ li r24, 0 +/* 801D5830 001D2790 83 A1 00 50 */ lwz r29, 0x50(r1) +/* 801D5834 001D2794 3B 60 00 00 */ li r27, 0 +/* 801D5838 001D2798 48 00 00 78 */ b lbl_801D58B0 +lbl_801D583C: +/* 801D583C 001D279C 80 BD 00 10 */ lwz r5, 0x10(r29) +/* 801D5840 001D27A0 7E C3 B3 78 */ mr r3, r22 +/* 801D5844 001D27A4 38 81 00 20 */ addi r4, r1, 0x20 +/* 801D5848 001D27A8 7C 05 D8 2E */ lwzx r0, r5, r27 +/* 801D584C 001D27AC 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801D5850 001D27B0 93 21 00 20 */ stw r25, 0x20(r1) +/* 801D5854 001D27B4 90 01 00 24 */ stw r0, 0x24(r1) +/* 801D5858 001D27B8 4B FF FC D1 */ bl "GetCinematicState__14CSystemOptionsFRCQ24rstl19pair" +/* 801D585C 001D27BC 80 01 00 58 */ lwz r0, 0x58(r1) +/* 801D5860 001D27C0 7C 74 1B 78 */ mr r20, r3 +/* 801D5864 001D27C4 80 A1 00 5C */ lwz r5, 0x5c(r1) +/* 801D5868 001D27C8 7C 00 28 00 */ cmpw r0, r5 +/* 801D586C 001D27CC 41 80 00 1C */ blt lbl_801D5888 +/* 801D5870 001D27D0 2C 05 00 00 */ cmpwi r5, 0 +/* 801D5874 001D27D4 38 61 00 54 */ addi r3, r1, 0x54 +/* 801D5878 001D27D8 38 80 00 04 */ li r4, 4 +/* 801D587C 001D27DC 41 82 00 08 */ beq lbl_801D5884 +/* 801D5880 001D27E0 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801D5884: +/* 801D5884 001D27E4 4B EC C7 E5 */ bl sub_800a2068 +lbl_801D5888: +/* 801D5888 001D27E8 80 61 00 60 */ lwz r3, 0x60(r1) +/* 801D588C 001D27EC 80 01 00 58 */ lwz r0, 0x58(r1) +/* 801D5890 001D27F0 7C 63 02 15 */ add. r3, r3, r0 +/* 801D5894 001D27F4 41 82 00 08 */ beq lbl_801D589C +/* 801D5898 001D27F8 9A 83 00 00 */ stb r20, 0(r3) +lbl_801D589C: +/* 801D589C 001D27FC 80 61 00 58 */ lwz r3, 0x58(r1) +/* 801D58A0 001D2800 3B 7B 00 04 */ addi r27, r27, 4 +/* 801D58A4 001D2804 3B 18 00 01 */ addi r24, r24, 1 +/* 801D58A8 001D2808 38 03 00 01 */ addi r0, r3, 1 +/* 801D58AC 001D280C 90 01 00 58 */ stw r0, 0x58(r1) +lbl_801D58B0: +/* 801D58B0 001D2810 80 1D 00 08 */ lwz r0, 8(r29) +/* 801D58B4 001D2814 7C 18 00 00 */ cmpw r24, r0 +/* 801D58B8 001D2818 41 80 FF 84 */ blt lbl_801D583C +/* 801D58BC 001D281C 38 61 00 48 */ addi r3, r1, 0x48 +/* 801D58C0 001D2820 38 80 00 00 */ li r4, 0 +/* 801D58C4 001D2824 48 16 B5 7D */ bl __dt__6CTokenFv +/* 801D58C8 001D2828 3B 9C 00 4C */ addi r28, r28, 0x4c +lbl_801D58CC: +/* 801D58CC 001D282C 80 1E 00 10 */ lwz r0, 0x10(r30) +/* 801D58D0 001D2830 80 7E 00 18 */ lwz r3, 0x18(r30) +/* 801D58D4 001D2834 1C 00 00 4C */ mulli r0, r0, 0x4c +/* 801D58D8 001D2838 7C 03 02 14 */ add r0, r3, r0 +/* 801D58DC 001D283C 7C 1C 00 40 */ cmplw r28, r0 +/* 801D58E0 001D2840 40 82 FE F4 */ bne lbl_801D57D4 +/* 801D58E4 001D2844 3A 80 00 00 */ li r20, 0 +/* 801D58E8 001D2848 48 00 00 28 */ b lbl_801D5910 +lbl_801D58EC: +/* 801D58EC 001D284C 80 81 00 60 */ lwz r4, 0x60(r1) +/* 801D58F0 001D2850 7E E3 BB 78 */ mr r3, r23 +/* 801D58F4 001D2854 38 A0 00 01 */ li r5, 1 +/* 801D58F8 001D2858 7C 84 A0 AE */ lbzx r4, r4, r20 +/* 801D58FC 001D285C 7C 04 00 D0 */ neg r0, r4 +/* 801D5900 001D2860 7C 00 23 78 */ or r0, r0, r4 +/* 801D5904 001D2864 54 04 0F FE */ srwi r4, r0, 0x1f +/* 801D5908 001D2868 48 16 9A B5 */ bl WriteBits__13COutputStreamFii +/* 801D590C 001D286C 3A 94 00 01 */ addi r20, r20, 1 +lbl_801D5910: +/* 801D5910 001D2870 7C 14 D0 00 */ cmpw r20, r26 +/* 801D5914 001D2874 41 80 FF D8 */ blt lbl_801D58EC +/* 801D5918 001D2878 80 61 00 60 */ lwz r3, 0x60(r1) +/* 801D591C 001D287C 80 01 00 58 */ lwz r0, 0x58(r1) +/* 801D5920 001D2880 90 61 00 0C */ stw r3, 0xc(r1) +/* 801D5924 001D2884 7C 83 02 14 */ add r4, r3, r0 +/* 801D5928 001D2888 7C 03 20 50 */ subf r0, r3, r4 +/* 801D592C 001D288C 90 81 00 14 */ stw r4, 0x14(r1) +/* 801D5930 001D2890 90 81 00 10 */ stw r4, 0x10(r1) +/* 801D5934 001D2894 90 61 00 08 */ stw r3, 8(r1) +/* 801D5938 001D2898 7C 09 03 A6 */ mtctr r0 +/* 801D593C 001D289C 7C 03 20 40 */ cmplw r3, r4 +/* 801D5940 001D28A0 41 82 00 08 */ beq lbl_801D5948 +lbl_801D5944: +/* 801D5944 001D28A4 42 00 00 00 */ bdnz lbl_801D5944 +lbl_801D5948: +/* 801D5948 001D28A8 28 03 00 00 */ cmplwi r3, 0 +/* 801D594C 001D28AC 41 82 00 08 */ beq lbl_801D5954 +/* 801D5950 001D28B0 48 13 FF E1 */ bl Free__7CMemoryFPCv +lbl_801D5954: +/* 801D5954 001D28B4 BA 81 00 70 */ lmw r20, 0x70(r1) +/* 801D5958 001D28B8 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 801D595C 001D28BC 7C 08 03 A6 */ mtlr r0 +/* 801D5960 001D28C0 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 801D5964 001D28C4 4E 80 00 20 */ blr + +.global __ct__14CSystemOptionsFRC12CInputStream +__ct__14CSystemOptionsFRC12CInputStream: +/* 801D5968 001D28C8 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 801D596C 001D28CC 7C 08 02 A6 */ mflr r0 +/* 801D5970 001D28D0 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 801D5974 001D28D4 38 00 00 0E */ li r0, 0xe +/* 801D5978 001D28D8 BE C1 00 78 */ stmw r22, 0x78(r1) +/* 801D597C 001D28DC 7C 7C 1B 78 */ mr r28, r3 +/* 801D5980 001D28E0 38 60 00 62 */ li r3, 0x62 +/* 801D5984 001D28E4 7C 9D 23 78 */ mr r29, r4 +/* 801D5988 001D28E8 38 9C 00 04 */ addi r4, r28, 4 +/* 801D598C 001D28EC 90 7C 00 00 */ stw r3, 0(r28) +/* 801D5990 001D28F0 38 60 00 00 */ li r3, 0 +/* 801D5994 001D28F4 7C 09 03 A6 */ mtctr r0 +lbl_801D5998: +/* 801D5998 001D28F8 28 04 00 00 */ cmplwi r4, 0 +/* 801D599C 001D28FC 41 82 00 0C */ beq lbl_801D59A8 +/* 801D59A0 001D2900 88 0D 91 9A */ lbz r0, lbl_805A7D5A@sda21(r13) +/* 801D59A4 001D2904 98 04 00 00 */ stb r0, 0(r4) +lbl_801D59A8: +/* 801D59A8 001D2908 34 84 00 01 */ addic. r4, r4, 1 +/* 801D59AC 001D290C 41 82 00 0C */ beq lbl_801D59B8 +/* 801D59B0 001D2910 88 0D 91 9A */ lbz r0, lbl_805A7D5A@sda21(r13) +/* 801D59B4 001D2914 98 04 00 00 */ stb r0, 0(r4) +lbl_801D59B8: +/* 801D59B8 001D2918 34 84 00 01 */ addic. r4, r4, 1 +/* 801D59BC 001D291C 41 82 00 0C */ beq lbl_801D59C8 +/* 801D59C0 001D2920 88 0D 91 9A */ lbz r0, lbl_805A7D5A@sda21(r13) +/* 801D59C4 001D2924 98 04 00 00 */ stb r0, 0(r4) +lbl_801D59C8: +/* 801D59C8 001D2928 34 84 00 01 */ addic. r4, r4, 1 +/* 801D59CC 001D292C 41 82 00 0C */ beq lbl_801D59D8 +/* 801D59D0 001D2930 88 0D 91 9A */ lbz r0, lbl_805A7D5A@sda21(r13) +/* 801D59D4 001D2934 98 04 00 00 */ stb r0, 0(r4) +lbl_801D59D8: +/* 801D59D8 001D2938 34 84 00 01 */ addic. r4, r4, 1 +/* 801D59DC 001D293C 41 82 00 0C */ beq lbl_801D59E8 +/* 801D59E0 001D2940 88 0D 91 9A */ lbz r0, lbl_805A7D5A@sda21(r13) +/* 801D59E4 001D2944 98 04 00 00 */ stb r0, 0(r4) +lbl_801D59E8: +/* 801D59E8 001D2948 34 84 00 01 */ addic. r4, r4, 1 +/* 801D59EC 001D294C 41 82 00 0C */ beq lbl_801D59F8 +/* 801D59F0 001D2950 88 0D 91 9A */ lbz r0, lbl_805A7D5A@sda21(r13) +/* 801D59F4 001D2954 98 04 00 00 */ stb r0, 0(r4) +lbl_801D59F8: +/* 801D59F8 001D2958 34 84 00 01 */ addic. r4, r4, 1 +/* 801D59FC 001D295C 41 82 00 0C */ beq lbl_801D5A08 +/* 801D5A00 001D2960 88 0D 91 9A */ lbz r0, lbl_805A7D5A@sda21(r13) +/* 801D5A04 001D2964 98 04 00 00 */ stb r0, 0(r4) +lbl_801D5A08: +/* 801D5A08 001D2968 38 63 00 06 */ addi r3, r3, 6 +/* 801D5A0C 001D296C 38 84 00 01 */ addi r4, r4, 1 +/* 801D5A10 001D2970 42 00 FF 88 */ bdnz lbl_801D5998 +/* 801D5A14 001D2974 38 60 00 40 */ li r3, 0x40 +/* 801D5A18 001D2978 38 00 00 08 */ li r0, 8 +/* 801D5A1C 001D297C 90 7C 00 68 */ stw r3, 0x68(r28) +/* 801D5A20 001D2980 38 9C 00 6C */ addi r4, r28, 0x6c +/* 801D5A24 001D2984 38 60 00 00 */ li r3, 0 +/* 801D5A28 001D2988 7C 09 03 A6 */ mtctr r0 +lbl_801D5A2C: +/* 801D5A2C 001D298C 28 04 00 00 */ cmplwi r4, 0 +/* 801D5A30 001D2990 41 82 00 0C */ beq lbl_801D5A3C +/* 801D5A34 001D2994 88 0D 91 9B */ lbz r0, lbl_805A7D5B@sda21(r13) +/* 801D5A38 001D2998 98 04 00 00 */ stb r0, 0(r4) +lbl_801D5A3C: +/* 801D5A3C 001D299C 34 84 00 01 */ addic. r4, r4, 1 +/* 801D5A40 001D29A0 41 82 00 0C */ beq lbl_801D5A4C +/* 801D5A44 001D29A4 88 0D 91 9B */ lbz r0, lbl_805A7D5B@sda21(r13) +/* 801D5A48 001D29A8 98 04 00 00 */ stb r0, 0(r4) +lbl_801D5A4C: +/* 801D5A4C 001D29AC 34 84 00 01 */ addic. r4, r4, 1 +/* 801D5A50 001D29B0 41 82 00 0C */ beq lbl_801D5A5C +/* 801D5A54 001D29B4 88 0D 91 9B */ lbz r0, lbl_805A7D5B@sda21(r13) +/* 801D5A58 001D29B8 98 04 00 00 */ stb r0, 0(r4) +lbl_801D5A5C: +/* 801D5A5C 001D29BC 34 84 00 01 */ addic. r4, r4, 1 +/* 801D5A60 001D29C0 41 82 00 0C */ beq lbl_801D5A6C +/* 801D5A64 001D29C4 88 0D 91 9B */ lbz r0, lbl_805A7D5B@sda21(r13) +/* 801D5A68 001D29C8 98 04 00 00 */ stb r0, 0(r4) +lbl_801D5A6C: +/* 801D5A6C 001D29CC 34 84 00 01 */ addic. r4, r4, 1 +/* 801D5A70 001D29D0 41 82 00 0C */ beq lbl_801D5A7C +/* 801D5A74 001D29D4 88 0D 91 9B */ lbz r0, lbl_805A7D5B@sda21(r13) +/* 801D5A78 001D29D8 98 04 00 00 */ stb r0, 0(r4) +lbl_801D5A7C: +/* 801D5A7C 001D29DC 34 84 00 01 */ addic. r4, r4, 1 +/* 801D5A80 001D29E0 41 82 00 0C */ beq lbl_801D5A8C +/* 801D5A84 001D29E4 88 0D 91 9B */ lbz r0, lbl_805A7D5B@sda21(r13) +/* 801D5A88 001D29E8 98 04 00 00 */ stb r0, 0(r4) +lbl_801D5A8C: +/* 801D5A8C 001D29EC 34 84 00 01 */ addic. r4, r4, 1 +/* 801D5A90 001D29F0 41 82 00 0C */ beq lbl_801D5A9C +/* 801D5A94 001D29F4 88 0D 91 9B */ lbz r0, lbl_805A7D5B@sda21(r13) +/* 801D5A98 001D29F8 98 04 00 00 */ stb r0, 0(r4) +lbl_801D5A9C: +/* 801D5A9C 001D29FC 34 84 00 01 */ addic. r4, r4, 1 +/* 801D5AA0 001D2A00 41 82 00 0C */ beq lbl_801D5AAC +/* 801D5AA4 001D2A04 88 0D 91 9B */ lbz r0, lbl_805A7D5B@sda21(r13) +/* 801D5AA8 001D2A08 98 04 00 00 */ stb r0, 0(r4) +lbl_801D5AAC: +/* 801D5AAC 001D2A0C 38 63 00 07 */ addi r3, r3, 7 +/* 801D5AB0 001D2A10 38 84 00 01 */ addi r4, r4, 1 +/* 801D5AB4 001D2A14 42 00 FF 78 */ bdnz lbl_801D5A2C +/* 801D5AB8 001D2A18 38 60 00 00 */ li r3, 0 +/* 801D5ABC 001D2A1C 3B 00 00 00 */ li r24, 0 +/* 801D5AC0 001D2A20 90 7C 00 B0 */ stw r3, 0xb0(r28) +/* 801D5AC4 001D2A24 90 7C 00 B4 */ stw r3, 0xb4(r28) +/* 801D5AC8 001D2A28 90 7C 00 B8 */ stw r3, 0xb8(r28) +/* 801D5ACC 001D2A2C 90 7C 00 BC */ stw r3, 0xbc(r28) +/* 801D5AD0 001D2A30 90 7C 00 C0 */ stw r3, 0xc0(r28) +/* 801D5AD4 001D2A34 90 7C 00 C4 */ stw r3, 0xc4(r28) +/* 801D5AD8 001D2A38 90 7C 00 C8 */ stw r3, 0xc8(r28) +/* 801D5ADC 001D2A3C 90 7C 00 CC */ stw r3, 0xcc(r28) +/* 801D5AE0 001D2A40 88 1C 00 D0 */ lbz r0, 0xd0(r28) +/* 801D5AE4 001D2A44 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801D5AE8 001D2A48 98 1C 00 D0 */ stb r0, 0xd0(r28) +/* 801D5AEC 001D2A4C 88 1C 00 D0 */ lbz r0, 0xd0(r28) +/* 801D5AF0 001D2A50 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801D5AF4 001D2A54 98 1C 00 D0 */ stb r0, 0xd0(r28) +/* 801D5AF8 001D2A58 88 1C 00 D0 */ lbz r0, 0xd0(r28) +/* 801D5AFC 001D2A5C 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 801D5B00 001D2A60 98 1C 00 D0 */ stb r0, 0xd0(r28) +/* 801D5B04 001D2A64 88 1C 00 D0 */ lbz r0, 0xd0(r28) +/* 801D5B08 001D2A68 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801D5B0C 001D2A6C 98 1C 00 D0 */ stb r0, 0xd0(r28) +/* 801D5B10 001D2A70 88 1C 00 D0 */ lbz r0, 0xd0(r28) +/* 801D5B14 001D2A74 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801D5B18 001D2A78 98 1C 00 D0 */ stb r0, 0xd0(r28) +/* 801D5B1C 001D2A7C 88 1C 00 D0 */ lbz r0, 0xd0(r28) +/* 801D5B20 001D2A80 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801D5B24 001D2A84 98 1C 00 D0 */ stb r0, 0xd0(r28) +lbl_801D5B28: +/* 801D5B28 001D2A88 7F A3 EB 78 */ mr r3, r29 +/* 801D5B2C 001D2A8C 7F 7C C2 14 */ add r27, r28, r24 +/* 801D5B30 001D2A90 38 80 00 08 */ li r4, 8 +/* 801D5B34 001D2A94 48 16 92 05 */ bl ReadBits__12CInputStreamFi +/* 801D5B38 001D2A98 3B 18 00 01 */ addi r24, r24, 1 +/* 801D5B3C 001D2A9C 98 7B 00 04 */ stb r3, 4(r27) +/* 801D5B40 001D2AA0 2C 18 00 62 */ cmpwi r24, 0x62 +/* 801D5B44 001D2AA4 41 80 FF E4 */ blt lbl_801D5B28 +/* 801D5B48 001D2AA8 3B 00 00 00 */ li r24, 0 +lbl_801D5B4C: +/* 801D5B4C 001D2AAC 7F A3 EB 78 */ mr r3, r29 +/* 801D5B50 001D2AB0 7F 7C C2 14 */ add r27, r28, r24 +/* 801D5B54 001D2AB4 38 80 00 08 */ li r4, 8 +/* 801D5B58 001D2AB8 48 16 91 E1 */ bl ReadBits__12CInputStreamFi +/* 801D5B5C 001D2ABC 3B 18 00 01 */ addi r24, r24, 1 +/* 801D5B60 001D2AC0 98 7B 00 6C */ stb r3, 0x6c(r27) +/* 801D5B64 001D2AC4 2C 18 00 40 */ cmpwi r24, 0x40 +/* 801D5B68 001D2AC8 41 80 FF E4 */ blt lbl_801D5B4C +/* 801D5B6C 001D2ACC 38 60 00 03 */ li r3, 3 +/* 801D5B70 001D2AD0 48 00 05 41 */ bl sub_801d60b0 +/* 801D5B74 001D2AD4 7C 64 1B 78 */ mr r4, r3 +/* 801D5B78 001D2AD8 7F A3 EB 78 */ mr r3, r29 +/* 801D5B7C 001D2ADC 48 16 91 BD */ bl ReadBits__12CInputStreamFi +/* 801D5B80 001D2AE0 90 7C 00 C0 */ stw r3, 0xc0(r28) +/* 801D5B84 001D2AE4 38 60 00 03 */ li r3, 3 +/* 801D5B88 001D2AE8 48 00 05 29 */ bl sub_801d60b0 +/* 801D5B8C 001D2AEC 7C 64 1B 78 */ mr r4, r3 +/* 801D5B90 001D2AF0 7F A3 EB 78 */ mr r3, r29 +/* 801D5B94 001D2AF4 48 16 91 A5 */ bl ReadBits__12CInputStreamFi +/* 801D5B98 001D2AF8 90 7C 00 C4 */ stw r3, 0xc4(r28) +/* 801D5B9C 001D2AFC 38 60 00 01 */ li r3, 1 +/* 801D5BA0 001D2B00 48 00 05 11 */ bl sub_801d60b0 +/* 801D5BA4 001D2B04 7C 64 1B 78 */ mr r4, r3 +/* 801D5BA8 001D2B08 7F A3 EB 78 */ mr r3, r29 +/* 801D5BAC 001D2B0C 48 16 91 8D */ bl ReadBits__12CInputStreamFi +/* 801D5BB0 001D2B10 90 7C 00 C8 */ stw r3, 0xc8(r28) +/* 801D5BB4 001D2B14 38 60 00 64 */ li r3, 0x64 +/* 801D5BB8 001D2B18 48 00 04 F9 */ bl sub_801d60b0 +/* 801D5BBC 001D2B1C 7C 64 1B 78 */ mr r4, r3 +/* 801D5BC0 001D2B20 7F A3 EB 78 */ mr r3, r29 +/* 801D5BC4 001D2B24 48 16 91 75 */ bl ReadBits__12CInputStreamFi +/* 801D5BC8 001D2B28 90 7C 00 CC */ stw r3, 0xcc(r28) +/* 801D5BCC 001D2B2C 7F A3 EB 78 */ mr r3, r29 +/* 801D5BD0 001D2B30 38 80 00 01 */ li r4, 1 +/* 801D5BD4 001D2B34 48 16 91 65 */ bl ReadBits__12CInputStreamFi +/* 801D5BD8 001D2B38 7C 83 00 D0 */ neg r4, r3 +/* 801D5BDC 001D2B3C 88 1C 00 D0 */ lbz r0, 0xd0(r28) +/* 801D5BE0 001D2B40 7C 84 1B 78 */ or r4, r4, r3 +/* 801D5BE4 001D2B44 7F A3 EB 78 */ mr r3, r29 +/* 801D5BE8 001D2B48 54 85 0F FE */ srwi r5, r4, 0x1f +/* 801D5BEC 001D2B4C 38 80 00 01 */ li r4, 1 +/* 801D5BF0 001D2B50 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 801D5BF4 001D2B54 98 1C 00 D0 */ stb r0, 0xd0(r28) +/* 801D5BF8 001D2B58 48 16 91 41 */ bl ReadBits__12CInputStreamFi +/* 801D5BFC 001D2B5C 7C 83 00 D0 */ neg r4, r3 +/* 801D5C00 001D2B60 88 1C 00 D0 */ lbz r0, 0xd0(r28) +/* 801D5C04 001D2B64 7C 84 1B 78 */ or r4, r4, r3 +/* 801D5C08 001D2B68 7F A3 EB 78 */ mr r3, r29 +/* 801D5C0C 001D2B6C 54 85 0F FE */ srwi r5, r4, 0x1f +/* 801D5C10 001D2B70 38 80 00 01 */ li r4, 1 +/* 801D5C14 001D2B74 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 801D5C18 001D2B78 98 1C 00 D0 */ stb r0, 0xd0(r28) +/* 801D5C1C 001D2B7C 48 16 91 1D */ bl ReadBits__12CInputStreamFi +/* 801D5C20 001D2B80 7C 83 00 D0 */ neg r4, r3 +/* 801D5C24 001D2B84 88 1C 00 D0 */ lbz r0, 0xd0(r28) +/* 801D5C28 001D2B88 7C 84 1B 78 */ or r4, r4, r3 +/* 801D5C2C 001D2B8C 7F A3 EB 78 */ mr r3, r29 +/* 801D5C30 001D2B90 54 85 0F FE */ srwi r5, r4, 0x1f +/* 801D5C34 001D2B94 38 80 00 01 */ li r4, 1 +/* 801D5C38 001D2B98 50 A0 2E B4 */ rlwimi r0, r5, 5, 0x1a, 0x1a +/* 801D5C3C 001D2B9C 98 1C 00 D0 */ stb r0, 0xd0(r28) +/* 801D5C40 001D2BA0 48 16 90 F9 */ bl ReadBits__12CInputStreamFi +/* 801D5C44 001D2BA4 7C 83 00 D0 */ neg r4, r3 +/* 801D5C48 001D2BA8 88 1C 00 D0 */ lbz r0, 0xd0(r28) +/* 801D5C4C 001D2BAC 7C 84 1B 78 */ or r4, r4, r3 +/* 801D5C50 001D2BB0 7F A3 EB 78 */ mr r3, r29 +/* 801D5C54 001D2BB4 54 85 0F FE */ srwi r5, r4, 0x1f +/* 801D5C58 001D2BB8 38 80 00 01 */ li r4, 1 +/* 801D5C5C 001D2BBC 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 801D5C60 001D2BC0 98 1C 00 D0 */ stb r0, 0xd0(r28) +/* 801D5C64 001D2BC4 48 16 90 D5 */ bl ReadBits__12CInputStreamFi +/* 801D5C68 001D2BC8 7C 83 00 D0 */ neg r4, r3 +/* 801D5C6C 001D2BCC 88 1C 00 D0 */ lbz r0, 0xd0(r28) +/* 801D5C70 001D2BD0 7C 84 1B 78 */ or r4, r4, r3 +/* 801D5C74 001D2BD4 7F A3 EB 78 */ mr r3, r29 +/* 801D5C78 001D2BD8 54 85 0F FE */ srwi r5, r4, 0x1f +/* 801D5C7C 001D2BDC 38 80 00 02 */ li r4, 2 +/* 801D5C80 001D2BE0 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d +/* 801D5C84 001D2BE4 98 1C 00 D0 */ stb r0, 0xd0(r28) +/* 801D5C88 001D2BE8 48 16 90 B1 */ bl ReadBits__12CInputStreamFi +/* 801D5C8C 001D2BEC 90 7C 00 BC */ stw r3, 0xbc(r28) +/* 801D5C90 001D2BF0 3C 60 53 41 */ lis r3, 0x53415657@ha +/* 801D5C94 001D2BF4 3B 63 56 57 */ addi r27, r3, 0x53415657@l +/* 801D5C98 001D2BF8 3A C1 00 64 */ addi r22, r1, 0x64 +/* 801D5C9C 001D2BFC 83 ED A0 84 */ lwz r31, gpMemoryCard@sda21(r13) +/* 801D5CA0 001D2C00 3B C0 00 00 */ li r30, 0 +/* 801D5CA4 001D2C04 83 5F 00 18 */ lwz r26, 0x18(r31) +/* 801D5CA8 001D2C08 48 00 00 70 */ b lbl_801D5D18 +lbl_801D5CAC: +/* 801D5CAC 001D2C0C 80 1A 00 08 */ lwz r0, 8(r26) +/* 801D5CB0 001D2C10 38 61 00 38 */ addi r3, r1, 0x38 +/* 801D5CB4 001D2C14 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801D5CB8 001D2C18 38 A1 00 40 */ addi r5, r1, 0x40 +/* 801D5CBC 001D2C1C 93 61 00 40 */ stw r27, 0x40(r1) +/* 801D5CC0 001D2C20 90 01 00 44 */ stw r0, 0x44(r1) +/* 801D5CC4 001D2C24 81 84 00 00 */ lwz r12, 0(r4) +/* 801D5CC8 001D2C28 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801D5CCC 001D2C2C 7D 89 03 A6 */ mtctr r12 +/* 801D5CD0 001D2C30 4E 80 04 21 */ bctrl +/* 801D5CD4 001D2C34 7E C3 B3 78 */ mr r3, r22 +/* 801D5CD8 001D2C38 38 81 00 38 */ addi r4, r1, 0x38 +/* 801D5CDC 001D2C3C 48 16 B1 CD */ bl __ct__6CTokenFRC6CToken +/* 801D5CE0 001D2C40 7E C3 B3 78 */ mr r3, r22 +/* 801D5CE4 001D2C44 48 16 B1 29 */ bl GetObj__6CTokenFv +/* 801D5CE8 001D2C48 80 03 00 04 */ lwz r0, 4(r3) +/* 801D5CEC 001D2C4C 38 61 00 38 */ addi r3, r1, 0x38 +/* 801D5CF0 001D2C50 38 80 FF FF */ li r4, -1 +/* 801D5CF4 001D2C54 90 01 00 6C */ stw r0, 0x6c(r1) +/* 801D5CF8 001D2C58 48 16 B1 49 */ bl __dt__6CTokenFv +/* 801D5CFC 001D2C5C 80 A1 00 6C */ lwz r5, 0x6c(r1) +/* 801D5D00 001D2C60 38 61 00 64 */ addi r3, r1, 0x64 +/* 801D5D04 001D2C64 38 80 00 00 */ li r4, 0 +/* 801D5D08 001D2C68 80 05 00 08 */ lwz r0, 8(r5) +/* 801D5D0C 001D2C6C 7F DE 02 14 */ add r30, r30, r0 +/* 801D5D10 001D2C70 48 16 B1 31 */ bl __dt__6CTokenFv +/* 801D5D14 001D2C74 3B 5A 00 4C */ addi r26, r26, 0x4c +lbl_801D5D18: +/* 801D5D18 001D2C78 80 1F 00 10 */ lwz r0, 0x10(r31) +/* 801D5D1C 001D2C7C 80 7F 00 18 */ lwz r3, 0x18(r31) +/* 801D5D20 001D2C80 1C 00 00 4C */ mulli r0, r0, 0x4c +/* 801D5D24 001D2C84 7C 03 02 14 */ add r0, r3, r0 +/* 801D5D28 001D2C88 7C 1A 00 40 */ cmplw r26, r0 +/* 801D5D2C 001D2C8C 40 82 FF 80 */ bne lbl_801D5CAC +/* 801D5D30 001D2C90 2C 1E 00 00 */ cmpwi r30, 0 +/* 801D5D34 001D2C94 93 C1 00 58 */ stw r30, 0x58(r1) +/* 801D5D38 001D2C98 93 C1 00 5C */ stw r30, 0x5c(r1) +/* 801D5D3C 001D2C9C 40 82 00 10 */ bne lbl_801D5D4C +/* 801D5D40 001D2CA0 38 00 00 00 */ li r0, 0 +/* 801D5D44 001D2CA4 90 01 00 60 */ stw r0, 0x60(r1) +/* 801D5D48 001D2CA8 48 00 00 1C */ b lbl_801D5D64 +lbl_801D5D4C: +/* 801D5D4C 001D2CAC 3C 80 80 3D */ lis r4, lbl_803D1B88@ha +/* 801D5D50 001D2CB0 7F C3 F3 78 */ mr r3, r30 +/* 801D5D54 001D2CB4 38 84 1B 88 */ addi r4, r4, lbl_803D1B88@l +/* 801D5D58 001D2CB8 38 A0 00 00 */ li r5, 0 +/* 801D5D5C 001D2CBC 48 13 FA BD */ bl __nwa__FUlPCcPCc +/* 801D5D60 001D2CC0 90 61 00 60 */ stw r3, 0x60(r1) +lbl_801D5D64: +/* 801D5D64 001D2CC4 80 61 00 60 */ lwz r3, 0x60(r1) +/* 801D5D68 001D2CC8 7F C9 03 A6 */ mtctr r30 +/* 801D5D6C 001D2CCC 2C 1E 00 00 */ cmpwi r30, 0 +/* 801D5D70 001D2CD0 40 81 00 1C */ ble lbl_801D5D8C +lbl_801D5D74: +/* 801D5D74 001D2CD4 28 03 00 00 */ cmplwi r3, 0 +/* 801D5D78 001D2CD8 41 82 00 0C */ beq lbl_801D5D84 +/* 801D5D7C 001D2CDC 88 0D 91 9C */ lbz r0, lbl_805A7D5C@sda21(r13) +/* 801D5D80 001D2CE0 98 03 00 00 */ stb r0, 0(r3) +lbl_801D5D84: +/* 801D5D84 001D2CE4 38 63 00 01 */ addi r3, r3, 1 +/* 801D5D88 001D2CE8 42 00 FF EC */ bdnz lbl_801D5D74 +lbl_801D5D8C: +/* 801D5D8C 001D2CEC 83 61 00 60 */ lwz r27, 0x60(r1) +/* 801D5D90 001D2CF0 3B 00 00 00 */ li r24, 0 +/* 801D5D94 001D2CF4 48 00 00 28 */ b lbl_801D5DBC +lbl_801D5D98: +/* 801D5D98 001D2CF8 7F A3 EB 78 */ mr r3, r29 +/* 801D5D9C 001D2CFC 38 80 00 01 */ li r4, 1 +/* 801D5DA0 001D2D00 48 16 8F 99 */ bl ReadBits__12CInputStreamFi +/* 801D5DA4 001D2D04 7C 03 00 D0 */ neg r0, r3 +/* 801D5DA8 001D2D08 3B 18 00 01 */ addi r24, r24, 1 +/* 801D5DAC 001D2D0C 7C 00 1B 78 */ or r0, r0, r3 +/* 801D5DB0 001D2D10 54 00 0F FE */ srwi r0, r0, 0x1f +/* 801D5DB4 001D2D14 98 1B 00 00 */ stb r0, 0(r27) +/* 801D5DB8 001D2D18 3B 7B 00 01 */ addi r27, r27, 1 +lbl_801D5DBC: +/* 801D5DBC 001D2D1C 7C 18 F0 00 */ cmpw r24, r30 +/* 801D5DC0 001D2D20 41 80 FF D8 */ blt lbl_801D5D98 +/* 801D5DC4 001D2D24 3C 60 53 41 */ lis r3, 0x53415657@ha +/* 801D5DC8 001D2D28 83 C1 00 60 */ lwz r30, 0x60(r1) +/* 801D5DCC 001D2D2C 83 3F 00 18 */ lwz r25, 0x18(r31) +/* 801D5DD0 001D2D30 3B 63 56 57 */ addi r27, r3, 0x53415657@l +/* 801D5DD4 001D2D34 3B A1 00 48 */ addi r29, r1, 0x48 +/* 801D5DD8 001D2D38 48 00 00 C4 */ b lbl_801D5E9C +lbl_801D5DDC: +/* 801D5DDC 001D2D3C 82 F9 00 00 */ lwz r23, 0(r25) +/* 801D5DE0 001D2D40 38 61 00 28 */ addi r3, r1, 0x28 +/* 801D5DE4 001D2D44 80 19 00 08 */ lwz r0, 8(r25) +/* 801D5DE8 001D2D48 38 A1 00 30 */ addi r5, r1, 0x30 +/* 801D5DEC 001D2D4C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801D5DF0 001D2D50 93 61 00 30 */ stw r27, 0x30(r1) +/* 801D5DF4 001D2D54 90 01 00 34 */ stw r0, 0x34(r1) +/* 801D5DF8 001D2D58 81 84 00 00 */ lwz r12, 0(r4) +/* 801D5DFC 001D2D5C 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801D5E00 001D2D60 7D 89 03 A6 */ mtctr r12 +/* 801D5E04 001D2D64 4E 80 04 21 */ bctrl +/* 801D5E08 001D2D68 7F A3 EB 78 */ mr r3, r29 +/* 801D5E0C 001D2D6C 38 81 00 28 */ addi r4, r1, 0x28 +/* 801D5E10 001D2D70 48 16 B0 99 */ bl __ct__6CTokenFRC6CToken +/* 801D5E14 001D2D74 7F A3 EB 78 */ mr r3, r29 +/* 801D5E18 001D2D78 48 16 AF F5 */ bl GetObj__6CTokenFv +/* 801D5E1C 001D2D7C 80 03 00 04 */ lwz r0, 4(r3) +/* 801D5E20 001D2D80 38 61 00 28 */ addi r3, r1, 0x28 +/* 801D5E24 001D2D84 38 80 FF FF */ li r4, -1 +/* 801D5E28 001D2D88 90 01 00 50 */ stw r0, 0x50(r1) +/* 801D5E2C 001D2D8C 48 16 B0 15 */ bl __dt__6CTokenFv +/* 801D5E30 001D2D90 83 41 00 50 */ lwz r26, 0x50(r1) +/* 801D5E34 001D2D94 3A C0 00 00 */ li r22, 0 +/* 801D5E38 001D2D98 3B 00 00 00 */ li r24, 0 +/* 801D5E3C 001D2D9C 48 00 00 44 */ b lbl_801D5E80 +lbl_801D5E40: +/* 801D5E40 001D2DA0 88 1E 00 00 */ lbz r0, 0(r30) +/* 801D5E44 001D2DA4 28 00 00 00 */ cmplwi r0, 0 +/* 801D5E48 001D2DA8 41 82 00 2C */ beq lbl_801D5E74 +/* 801D5E4C 001D2DAC 80 BA 00 10 */ lwz r5, 0x10(r26) +/* 801D5E50 001D2DB0 7F 83 E3 78 */ mr r3, r28 +/* 801D5E54 001D2DB4 92 E1 00 18 */ stw r23, 0x18(r1) +/* 801D5E58 001D2DB8 38 81 00 20 */ addi r4, r1, 0x20 +/* 801D5E5C 001D2DBC 7C 05 C0 2E */ lwzx r0, r5, r24 +/* 801D5E60 001D2DC0 38 A0 00 01 */ li r5, 1 +/* 801D5E64 001D2DC4 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801D5E68 001D2DC8 92 E1 00 20 */ stw r23, 0x20(r1) +/* 801D5E6C 001D2DCC 90 01 00 24 */ stw r0, 0x24(r1) +/* 801D5E70 001D2DD0 4B FF F4 A1 */ bl SetCinematicState__14CSystemOptionsFUi9TEditorIdb +lbl_801D5E74: +/* 801D5E74 001D2DD4 3B DE 00 01 */ addi r30, r30, 1 +/* 801D5E78 001D2DD8 3B 18 00 04 */ addi r24, r24, 4 +/* 801D5E7C 001D2DDC 3A D6 00 01 */ addi r22, r22, 1 +lbl_801D5E80: +/* 801D5E80 001D2DE0 80 1A 00 08 */ lwz r0, 8(r26) +/* 801D5E84 001D2DE4 7C 16 00 00 */ cmpw r22, r0 +/* 801D5E88 001D2DE8 41 80 FF B8 */ blt lbl_801D5E40 +/* 801D5E8C 001D2DEC 38 61 00 48 */ addi r3, r1, 0x48 +/* 801D5E90 001D2DF0 38 80 00 00 */ li r4, 0 +/* 801D5E94 001D2DF4 48 16 AF AD */ bl __dt__6CTokenFv +/* 801D5E98 001D2DF8 3B 39 00 4C */ addi r25, r25, 0x4c +lbl_801D5E9C: +/* 801D5E9C 001D2DFC 80 1F 00 10 */ lwz r0, 0x10(r31) +/* 801D5EA0 001D2E00 80 7F 00 18 */ lwz r3, 0x18(r31) +/* 801D5EA4 001D2E04 1C 00 00 4C */ mulli r0, r0, 0x4c +/* 801D5EA8 001D2E08 7C 03 02 14 */ add r0, r3, r0 +/* 801D5EAC 001D2E0C 7C 19 00 40 */ cmplw r25, r0 +/* 801D5EB0 001D2E10 40 82 FF 2C */ bne lbl_801D5DDC +/* 801D5EB4 001D2E14 80 61 00 60 */ lwz r3, 0x60(r1) +/* 801D5EB8 001D2E18 80 01 00 58 */ lwz r0, 0x58(r1) +/* 801D5EBC 001D2E1C 90 61 00 0C */ stw r3, 0xc(r1) +/* 801D5EC0 001D2E20 7C 83 02 14 */ add r4, r3, r0 +/* 801D5EC4 001D2E24 7C 03 20 50 */ subf r0, r3, r4 +/* 801D5EC8 001D2E28 90 81 00 14 */ stw r4, 0x14(r1) +/* 801D5ECC 001D2E2C 90 81 00 10 */ stw r4, 0x10(r1) +/* 801D5ED0 001D2E30 90 61 00 08 */ stw r3, 8(r1) +/* 801D5ED4 001D2E34 7C 09 03 A6 */ mtctr r0 +/* 801D5ED8 001D2E38 7C 03 20 40 */ cmplw r3, r4 +/* 801D5EDC 001D2E3C 41 82 00 08 */ beq lbl_801D5EE4 +lbl_801D5EE0: +/* 801D5EE0 001D2E40 42 00 00 00 */ bdnz lbl_801D5EE0 +lbl_801D5EE4: +/* 801D5EE4 001D2E44 28 03 00 00 */ cmplwi r3, 0 +/* 801D5EE8 001D2E48 41 82 00 08 */ beq lbl_801D5EF0 +/* 801D5EEC 001D2E4C 48 13 FA 45 */ bl Free__7CMemoryFPCv +lbl_801D5EF0: +/* 801D5EF0 001D2E50 7F 83 E3 78 */ mr r3, r28 +/* 801D5EF4 001D2E54 BA C1 00 78 */ lmw r22, 0x78(r1) +/* 801D5EF8 001D2E58 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 801D5EFC 001D2E5C 7C 08 03 A6 */ mtlr r0 +/* 801D5F00 001D2E60 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 801D5F04 001D2E64 4E 80 00 20 */ blr + +.global __ct__14CSystemOptionsFv +__ct__14CSystemOptionsFv: +/* 801D5F08 001D2E68 38 80 00 62 */ li r4, 0x62 +/* 801D5F0C 001D2E6C 38 00 00 0E */ li r0, 0xe +/* 801D5F10 001D2E70 90 83 00 00 */ stw r4, 0(r3) +/* 801D5F14 001D2E74 38 A3 00 04 */ addi r5, r3, 4 +/* 801D5F18 001D2E78 38 80 00 00 */ li r4, 0 +/* 801D5F1C 001D2E7C 7C 09 03 A6 */ mtctr r0 +lbl_801D5F20: +/* 801D5F20 001D2E80 28 05 00 00 */ cmplwi r5, 0 +/* 801D5F24 001D2E84 41 82 00 0C */ beq lbl_801D5F30 +/* 801D5F28 001D2E88 88 0D 91 98 */ lbz r0, lbl_805A7D58@sda21(r13) +/* 801D5F2C 001D2E8C 98 05 00 00 */ stb r0, 0(r5) +lbl_801D5F30: +/* 801D5F30 001D2E90 34 A5 00 01 */ addic. r5, r5, 1 +/* 801D5F34 001D2E94 41 82 00 0C */ beq lbl_801D5F40 +/* 801D5F38 001D2E98 88 0D 91 98 */ lbz r0, lbl_805A7D58@sda21(r13) +/* 801D5F3C 001D2E9C 98 05 00 00 */ stb r0, 0(r5) +lbl_801D5F40: +/* 801D5F40 001D2EA0 34 A5 00 01 */ addic. r5, r5, 1 +/* 801D5F44 001D2EA4 41 82 00 0C */ beq lbl_801D5F50 +/* 801D5F48 001D2EA8 88 0D 91 98 */ lbz r0, lbl_805A7D58@sda21(r13) +/* 801D5F4C 001D2EAC 98 05 00 00 */ stb r0, 0(r5) +lbl_801D5F50: +/* 801D5F50 001D2EB0 34 A5 00 01 */ addic. r5, r5, 1 +/* 801D5F54 001D2EB4 41 82 00 0C */ beq lbl_801D5F60 +/* 801D5F58 001D2EB8 88 0D 91 98 */ lbz r0, lbl_805A7D58@sda21(r13) +/* 801D5F5C 001D2EBC 98 05 00 00 */ stb r0, 0(r5) +lbl_801D5F60: +/* 801D5F60 001D2EC0 34 A5 00 01 */ addic. r5, r5, 1 +/* 801D5F64 001D2EC4 41 82 00 0C */ beq lbl_801D5F70 +/* 801D5F68 001D2EC8 88 0D 91 98 */ lbz r0, lbl_805A7D58@sda21(r13) +/* 801D5F6C 001D2ECC 98 05 00 00 */ stb r0, 0(r5) +lbl_801D5F70: +/* 801D5F70 001D2ED0 34 A5 00 01 */ addic. r5, r5, 1 +/* 801D5F74 001D2ED4 41 82 00 0C */ beq lbl_801D5F80 +/* 801D5F78 001D2ED8 88 0D 91 98 */ lbz r0, lbl_805A7D58@sda21(r13) +/* 801D5F7C 001D2EDC 98 05 00 00 */ stb r0, 0(r5) +lbl_801D5F80: +/* 801D5F80 001D2EE0 34 A5 00 01 */ addic. r5, r5, 1 +/* 801D5F84 001D2EE4 41 82 00 0C */ beq lbl_801D5F90 +/* 801D5F88 001D2EE8 88 0D 91 98 */ lbz r0, lbl_805A7D58@sda21(r13) +/* 801D5F8C 001D2EEC 98 05 00 00 */ stb r0, 0(r5) +lbl_801D5F90: +/* 801D5F90 001D2EF0 38 84 00 06 */ addi r4, r4, 6 +/* 801D5F94 001D2EF4 38 A5 00 01 */ addi r5, r5, 1 +/* 801D5F98 001D2EF8 42 00 FF 88 */ bdnz lbl_801D5F20 +/* 801D5F9C 001D2EFC 38 80 00 40 */ li r4, 0x40 +/* 801D5FA0 001D2F00 38 00 00 08 */ li r0, 8 +/* 801D5FA4 001D2F04 90 83 00 68 */ stw r4, 0x68(r3) +/* 801D5FA8 001D2F08 38 A3 00 6C */ addi r5, r3, 0x6c +/* 801D5FAC 001D2F0C 38 80 00 00 */ li r4, 0 +/* 801D5FB0 001D2F10 7C 09 03 A6 */ mtctr r0 +lbl_801D5FB4: +/* 801D5FB4 001D2F14 28 05 00 00 */ cmplwi r5, 0 +/* 801D5FB8 001D2F18 41 82 00 0C */ beq lbl_801D5FC4 +/* 801D5FBC 001D2F1C 88 0D 91 99 */ lbz r0, lbl_805A7D59@sda21(r13) +/* 801D5FC0 001D2F20 98 05 00 00 */ stb r0, 0(r5) +lbl_801D5FC4: +/* 801D5FC4 001D2F24 34 A5 00 01 */ addic. r5, r5, 1 +/* 801D5FC8 001D2F28 41 82 00 0C */ beq lbl_801D5FD4 +/* 801D5FCC 001D2F2C 88 0D 91 99 */ lbz r0, lbl_805A7D59@sda21(r13) +/* 801D5FD0 001D2F30 98 05 00 00 */ stb r0, 0(r5) +lbl_801D5FD4: +/* 801D5FD4 001D2F34 34 A5 00 01 */ addic. r5, r5, 1 +/* 801D5FD8 001D2F38 41 82 00 0C */ beq lbl_801D5FE4 +/* 801D5FDC 001D2F3C 88 0D 91 99 */ lbz r0, lbl_805A7D59@sda21(r13) +/* 801D5FE0 001D2F40 98 05 00 00 */ stb r0, 0(r5) +lbl_801D5FE4: +/* 801D5FE4 001D2F44 34 A5 00 01 */ addic. r5, r5, 1 +/* 801D5FE8 001D2F48 41 82 00 0C */ beq lbl_801D5FF4 +/* 801D5FEC 001D2F4C 88 0D 91 99 */ lbz r0, lbl_805A7D59@sda21(r13) +/* 801D5FF0 001D2F50 98 05 00 00 */ stb r0, 0(r5) +lbl_801D5FF4: +/* 801D5FF4 001D2F54 34 A5 00 01 */ addic. r5, r5, 1 +/* 801D5FF8 001D2F58 41 82 00 0C */ beq lbl_801D6004 +/* 801D5FFC 001D2F5C 88 0D 91 99 */ lbz r0, lbl_805A7D59@sda21(r13) +/* 801D6000 001D2F60 98 05 00 00 */ stb r0, 0(r5) +lbl_801D6004: +/* 801D6004 001D2F64 34 A5 00 01 */ addic. r5, r5, 1 +/* 801D6008 001D2F68 41 82 00 0C */ beq lbl_801D6014 +/* 801D600C 001D2F6C 88 0D 91 99 */ lbz r0, lbl_805A7D59@sda21(r13) +/* 801D6010 001D2F70 98 05 00 00 */ stb r0, 0(r5) +lbl_801D6014: +/* 801D6014 001D2F74 34 A5 00 01 */ addic. r5, r5, 1 +/* 801D6018 001D2F78 41 82 00 0C */ beq lbl_801D6024 +/* 801D601C 001D2F7C 88 0D 91 99 */ lbz r0, lbl_805A7D59@sda21(r13) +/* 801D6020 001D2F80 98 05 00 00 */ stb r0, 0(r5) +lbl_801D6024: +/* 801D6024 001D2F84 34 A5 00 01 */ addic. r5, r5, 1 +/* 801D6028 001D2F88 41 82 00 0C */ beq lbl_801D6034 +/* 801D602C 001D2F8C 88 0D 91 99 */ lbz r0, lbl_805A7D59@sda21(r13) +/* 801D6030 001D2F90 98 05 00 00 */ stb r0, 0(r5) +lbl_801D6034: +/* 801D6034 001D2F94 38 84 00 07 */ addi r4, r4, 7 +/* 801D6038 001D2F98 38 A5 00 01 */ addi r5, r5, 1 +/* 801D603C 001D2F9C 42 00 FF 78 */ bdnz lbl_801D5FB4 +/* 801D6040 001D2FA0 38 80 00 00 */ li r4, 0 +/* 801D6044 001D2FA4 90 83 00 B0 */ stw r4, 0xb0(r3) +/* 801D6048 001D2FA8 90 83 00 B4 */ stw r4, 0xb4(r3) +/* 801D604C 001D2FAC 90 83 00 B8 */ stw r4, 0xb8(r3) +/* 801D6050 001D2FB0 90 83 00 BC */ stw r4, 0xbc(r3) +/* 801D6054 001D2FB4 90 83 00 C0 */ stw r4, 0xc0(r3) +/* 801D6058 001D2FB8 90 83 00 C4 */ stw r4, 0xc4(r3) +/* 801D605C 001D2FBC 90 83 00 C8 */ stw r4, 0xc8(r3) +/* 801D6060 001D2FC0 90 83 00 CC */ stw r4, 0xcc(r3) +/* 801D6064 001D2FC4 88 03 00 D0 */ lbz r0, 0xd0(r3) +/* 801D6068 001D2FC8 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801D606C 001D2FCC 98 03 00 D0 */ stb r0, 0xd0(r3) +/* 801D6070 001D2FD0 88 03 00 D0 */ lbz r0, 0xd0(r3) +/* 801D6074 001D2FD4 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 801D6078 001D2FD8 98 03 00 D0 */ stb r0, 0xd0(r3) +/* 801D607C 001D2FDC 88 03 00 D0 */ lbz r0, 0xd0(r3) +/* 801D6080 001D2FE0 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 801D6084 001D2FE4 98 03 00 D0 */ stb r0, 0xd0(r3) +/* 801D6088 001D2FE8 88 03 00 D0 */ lbz r0, 0xd0(r3) +/* 801D608C 001D2FEC 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 801D6090 001D2FF0 98 03 00 D0 */ stb r0, 0xd0(r3) +/* 801D6094 001D2FF4 88 03 00 D0 */ lbz r0, 0xd0(r3) +/* 801D6098 001D2FF8 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c +/* 801D609C 001D2FFC 98 03 00 D0 */ stb r0, 0xd0(r3) +/* 801D60A0 001D3000 88 03 00 D0 */ lbz r0, 0xd0(r3) +/* 801D60A4 001D3004 50 80 17 7A */ rlwimi r0, r4, 2, 0x1d, 0x1d +/* 801D60A8 001D3008 98 03 00 D0 */ stb r0, 0xd0(r3) +/* 801D60AC 001D300C 4E 80 00 20 */ blr + +.global sub_801d60b0 +sub_801d60b0: +/* 801D60B0 001D3010 38 80 00 00 */ li r4, 0 +/* 801D60B4 001D3014 48 00 00 0C */ b lbl_801D60C0 +lbl_801D60B8: +/* 801D60B8 001D3018 54 63 F8 7E */ srwi r3, r3, 1 +/* 801D60BC 001D301C 38 84 00 01 */ addi r4, r4, 1 +lbl_801D60C0: +/* 801D60C0 001D3020 28 03 00 00 */ cmplwi r3, 0 +/* 801D60C4 001D3024 40 82 FF F4 */ bne lbl_801D60B8 +/* 801D60C8 001D3028 7C 83 23 78 */ mr r3, r4 +/* 801D60CC 001D302C 4E 80 00 20 */ blr + + +.global "Clamp__5CMathFRCdRCdRCd" +"Clamp__5CMathFRCdRCdRCd": +/* 801D60D0 001D3030 C8 03 00 00 */ lfd f0, 0(r3) +/* 801D60D4 001D3034 C8 24 00 00 */ lfd f1, 0(r4) +/* 801D60D8 001D3038 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801D60DC 001D303C 4D 81 00 20 */ bgtlr +/* 801D60E0 001D3040 C8 05 00 00 */ lfd f0, 0(r5) +/* 801D60E4 001D3044 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801D60E8 001D3048 40 80 00 0C */ bge lbl_801D60F4 +/* 801D60EC 001D304C 7C A3 2B 78 */ mr r3, r5 +/* 801D60F0 001D3050 4E 80 00 20 */ blr +lbl_801D60F4: +/* 801D60F4 001D3054 7C 83 23 78 */ mr r3, r4 +/* 801D60F8 001D3058 4E 80 00 20 */ blr + +.global sub_801d60fc +sub_801d60fc: +/* 801D60FC 001D305C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801D6100 001D3060 7C 08 02 A6 */ mflr r0 +/* 801D6104 001D3064 90 01 00 34 */ stw r0, 0x34(r1) +/* 801D6108 001D3068 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801D610C 001D306C 7C 9F 23 78 */ mr r31, r4 +/* 801D6110 001D3070 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801D6114 001D3074 7C 7E 1B 78 */ mr r30, r3 +/* 801D6118 001D3078 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801D611C 001D307C 80 03 00 08 */ lwz r0, 8(r3) +/* 801D6120 001D3080 7C 1F 00 00 */ cmpw r31, r0 +/* 801D6124 001D3084 40 81 00 BC */ ble lbl_801D61E0 +/* 801D6128 001D3088 1C 7F 00 0C */ mulli r3, r31, 0xc +/* 801D612C 001D308C 2C 03 00 00 */ cmpwi r3, 0 +/* 801D6130 001D3090 40 82 00 0C */ bne lbl_801D613C +/* 801D6134 001D3094 3B A0 00 00 */ li r29, 0 +/* 801D6138 001D3098 48 00 00 18 */ b lbl_801D6150 +lbl_801D613C: +/* 801D613C 001D309C 3C 80 80 3D */ lis r4, lbl_803D1B88@ha +/* 801D6140 001D30A0 38 A0 00 00 */ li r5, 0 +/* 801D6144 001D30A4 38 84 1B 88 */ addi r4, r4, lbl_803D1B88@l +/* 801D6148 001D30A8 48 13 F6 D1 */ bl __nwa__FUlPCcPCc +/* 801D614C 001D30AC 7C 7D 1B 78 */ mr r29, r3 +lbl_801D6150: +/* 801D6150 001D30B0 80 1E 00 04 */ lwz r0, 4(r30) +/* 801D6154 001D30B4 7F A4 EB 78 */ mr r4, r29 +/* 801D6158 001D30B8 80 BE 00 0C */ lwz r5, 0xc(r30) +/* 801D615C 001D30BC 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801D6160 001D30C0 90 A1 00 10 */ stw r5, 0x10(r1) +/* 801D6164 001D30C4 7C 65 02 14 */ add r3, r5, r0 +/* 801D6168 001D30C8 90 A1 00 14 */ stw r5, 0x14(r1) +/* 801D616C 001D30CC 90 61 00 08 */ stw r3, 8(r1) +/* 801D6170 001D30D0 90 61 00 0C */ stw r3, 0xc(r1) +/* 801D6174 001D30D4 48 00 00 2C */ b lbl_801D61A0 +lbl_801D6178: +/* 801D6178 001D30D8 28 04 00 00 */ cmplwi r4, 0 +/* 801D617C 001D30DC 41 82 00 1C */ beq lbl_801D6198 +/* 801D6180 001D30E0 80 05 00 00 */ lwz r0, 0(r5) +/* 801D6184 001D30E4 90 04 00 00 */ stw r0, 0(r4) +/* 801D6188 001D30E8 C0 05 00 04 */ lfs f0, 4(r5) +/* 801D618C 001D30EC D0 04 00 04 */ stfs f0, 4(r4) +/* 801D6190 001D30F0 88 05 00 08 */ lbz r0, 8(r5) +/* 801D6194 001D30F4 98 04 00 08 */ stb r0, 8(r4) +lbl_801D6198: +/* 801D6198 001D30F8 38 84 00 0C */ addi r4, r4, 0xc +/* 801D619C 001D30FC 38 A5 00 0C */ addi r5, r5, 0xc +lbl_801D61A0: +/* 801D61A0 001D3100 7C 05 18 40 */ cmplw r5, r3 +/* 801D61A4 001D3104 40 82 FF D4 */ bne lbl_801D6178 +/* 801D61A8 001D3108 80 1E 00 04 */ lwz r0, 4(r30) +/* 801D61AC 001D310C 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 801D61B0 001D3110 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801D61B4 001D3114 7C 64 1B 78 */ mr r4, r3 +/* 801D61B8 001D3118 7C 03 02 14 */ add r0, r3, r0 +/* 801D61BC 001D311C 48 00 00 08 */ b lbl_801D61C4 +lbl_801D61C0: +/* 801D61C0 001D3120 38 84 00 0C */ addi r4, r4, 0xc +lbl_801D61C4: +/* 801D61C4 001D3124 7C 04 00 40 */ cmplw r4, r0 +/* 801D61C8 001D3128 40 82 FF F8 */ bne lbl_801D61C0 +/* 801D61CC 001D312C 28 03 00 00 */ cmplwi r3, 0 +/* 801D61D0 001D3130 41 82 00 08 */ beq lbl_801D61D8 +/* 801D61D4 001D3134 48 13 F7 5D */ bl Free__7CMemoryFPCv +lbl_801D61D8: +/* 801D61D8 001D3138 93 BE 00 0C */ stw r29, 0xc(r30) +/* 801D61DC 001D313C 93 FE 00 08 */ stw r31, 8(r30) +lbl_801D61E0: +/* 801D61E0 001D3140 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801D61E4 001D3144 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801D61E8 001D3148 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801D61EC 001D314C 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801D61F0 001D3150 7C 08 03 A6 */ mtlr r0 +/* 801D61F4 001D3154 38 21 00 30 */ addi r1, r1, 0x30 +/* 801D61F8 001D3158 4E 80 00 20 */ blr + +.global "reserve__Q24rstl37vectorFi" +"reserve__Q24rstl37vectorFi": +/* 801D61FC 001D315C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801D6200 001D3160 7C 08 02 A6 */ mflr r0 +/* 801D6204 001D3164 90 01 00 34 */ stw r0, 0x34(r1) +/* 801D6208 001D3168 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801D620C 001D316C 7C 9F 23 78 */ mr r31, r4 +/* 801D6210 001D3170 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801D6214 001D3174 7C 7E 1B 78 */ mr r30, r3 +/* 801D6218 001D3178 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801D621C 001D317C 80 03 00 08 */ lwz r0, 8(r3) +/* 801D6220 001D3180 7C 1F 00 00 */ cmpw r31, r0 +/* 801D6224 001D3184 40 81 00 A8 */ ble lbl_801D62CC +/* 801D6228 001D3188 7F E3 FB 79 */ or. r3, r31, r31 +/* 801D622C 001D318C 40 82 00 0C */ bne lbl_801D6238 +/* 801D6230 001D3190 3B A0 00 00 */ li r29, 0 +/* 801D6234 001D3194 48 00 00 18 */ b lbl_801D624C +lbl_801D6238: +/* 801D6238 001D3198 3C 80 80 3D */ lis r4, lbl_803D1B88@ha +/* 801D623C 001D319C 38 A0 00 00 */ li r5, 0 +/* 801D6240 001D31A0 38 84 1B 88 */ addi r4, r4, lbl_803D1B88@l +/* 801D6244 001D31A4 48 13 F5 D5 */ bl __nwa__FUlPCcPCc +/* 801D6248 001D31A8 7C 7D 1B 78 */ mr r29, r3 +lbl_801D624C: +/* 801D624C 001D31AC 80 BE 00 0C */ lwz r5, 0xc(r30) +/* 801D6250 001D31B0 7F A4 EB 78 */ mr r4, r29 +/* 801D6254 001D31B4 80 1E 00 04 */ lwz r0, 4(r30) +/* 801D6258 001D31B8 90 A1 00 10 */ stw r5, 0x10(r1) +/* 801D625C 001D31BC 7C 65 02 14 */ add r3, r5, r0 +/* 801D6260 001D31C0 7C 05 18 50 */ subf r0, r5, r3 +/* 801D6264 001D31C4 90 61 00 08 */ stw r3, 8(r1) +/* 801D6268 001D31C8 90 61 00 0C */ stw r3, 0xc(r1) +/* 801D626C 001D31CC 90 A1 00 14 */ stw r5, 0x14(r1) +/* 801D6270 001D31D0 7C 09 03 A6 */ mtctr r0 +/* 801D6274 001D31D4 7C 05 18 40 */ cmplw r5, r3 +/* 801D6278 001D31D8 41 82 00 20 */ beq lbl_801D6298 +lbl_801D627C: +/* 801D627C 001D31DC 28 04 00 00 */ cmplwi r4, 0 +/* 801D6280 001D31E0 41 82 00 0C */ beq lbl_801D628C +/* 801D6284 001D31E4 88 05 00 00 */ lbz r0, 0(r5) +/* 801D6288 001D31E8 98 04 00 00 */ stb r0, 0(r4) +lbl_801D628C: +/* 801D628C 001D31EC 38 84 00 01 */ addi r4, r4, 1 +/* 801D6290 001D31F0 38 A5 00 01 */ addi r5, r5, 1 +/* 801D6294 001D31F4 42 00 FF E8 */ bdnz lbl_801D627C +lbl_801D6298: +/* 801D6298 001D31F8 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 801D629C 001D31FC 80 1E 00 04 */ lwz r0, 4(r30) +/* 801D62A0 001D3200 7C 83 02 14 */ add r4, r3, r0 +/* 801D62A4 001D3204 7C 03 20 50 */ subf r0, r3, r4 +/* 801D62A8 001D3208 7C 09 03 A6 */ mtctr r0 +/* 801D62AC 001D320C 7C 03 20 40 */ cmplw r3, r4 +/* 801D62B0 001D3210 41 82 00 08 */ beq lbl_801D62B8 +lbl_801D62B4: +/* 801D62B4 001D3214 42 00 00 00 */ bdnz lbl_801D62B4 +lbl_801D62B8: +/* 801D62B8 001D3218 28 03 00 00 */ cmplwi r3, 0 +/* 801D62BC 001D321C 41 82 00 08 */ beq lbl_801D62C4 +/* 801D62C0 001D3220 48 13 F6 71 */ bl Free__7CMemoryFPCv +lbl_801D62C4: +/* 801D62C4 001D3224 93 BE 00 0C */ stw r29, 0xc(r30) +/* 801D62C8 001D3228 93 FE 00 08 */ stw r31, 8(r30) +lbl_801D62CC: +/* 801D62CC 001D322C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801D62D0 001D3230 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801D62D4 001D3234 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801D62D8 001D3238 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801D62DC 001D323C 7C 08 03 A6 */ mtlr r0 +/* 801D62E0 001D3240 38 21 00 30 */ addi r1, r1, 0x30 +/* 801D62E4 001D3244 4E 80 00 20 */ blr + +.global "reserve__Q24rstl48vector<11CWorldState,Q24rstl17rmemory_allocator>Fi" +"reserve__Q24rstl48vector<11CWorldState,Q24rstl17rmemory_allocator>Fi": +/* 801D62E8 001D3248 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801D62EC 001D324C 7C 08 02 A6 */ mflr r0 +/* 801D62F0 001D3250 90 01 00 34 */ stw r0, 0x34(r1) +/* 801D62F4 001D3254 BF 61 00 1C */ stmw r27, 0x1c(r1) +/* 801D62F8 001D3258 7C 9E 23 78 */ mr r30, r4 +/* 801D62FC 001D325C 7C 7D 1B 78 */ mr r29, r3 +/* 801D6300 001D3260 80 03 00 08 */ lwz r0, 8(r3) +/* 801D6304 001D3264 7C 1E 00 00 */ cmpw r30, r0 +/* 801D6308 001D3268 40 81 00 E8 */ ble lbl_801D63F0 +/* 801D630C 001D326C 1C 7E 00 18 */ mulli r3, r30, 0x18 +/* 801D6310 001D3270 2C 03 00 00 */ cmpwi r3, 0 +/* 801D6314 001D3274 40 82 00 0C */ bne lbl_801D6320 +/* 801D6318 001D3278 3B E0 00 00 */ li r31, 0 +/* 801D631C 001D327C 48 00 00 18 */ b lbl_801D6334 +lbl_801D6320: +/* 801D6320 001D3280 3C 80 80 3D */ lis r4, lbl_803D1B88@ha +/* 801D6324 001D3284 38 A0 00 00 */ li r5, 0 +/* 801D6328 001D3288 38 84 1B 88 */ addi r4, r4, lbl_803D1B88@l +/* 801D632C 001D328C 48 13 F4 ED */ bl __nwa__FUlPCcPCc +/* 801D6330 001D3290 7C 7F 1B 78 */ mr r31, r3 +lbl_801D6334: +/* 801D6334 001D3294 80 1D 00 04 */ lwz r0, 4(r29) +/* 801D6338 001D3298 7F E5 FB 78 */ mr r5, r31 +/* 801D633C 001D329C 80 DD 00 0C */ lwz r6, 0xc(r29) +/* 801D6340 001D32A0 38 61 00 14 */ addi r3, r1, 0x14 +/* 801D6344 001D32A4 1C 00 00 18 */ mulli r0, r0, 0x18 +/* 801D6348 001D32A8 38 81 00 0C */ addi r4, r1, 0xc +/* 801D634C 001D32AC 7C C6 02 14 */ add r6, r6, r0 +/* 801D6350 001D32B0 90 C1 00 0C */ stw r6, 0xc(r1) +/* 801D6354 001D32B4 80 1D 00 0C */ lwz r0, 0xc(r29) +/* 801D6358 001D32B8 90 C1 00 08 */ stw r6, 8(r1) +/* 801D635C 001D32BC 90 01 00 10 */ stw r0, 0x10(r1) +/* 801D6360 001D32C0 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D6364 001D32C4 48 00 00 A1 */ bl sub_801d6404 +/* 801D6368 001D32C8 80 1D 00 04 */ lwz r0, 4(r29) +/* 801D636C 001D32CC 83 7D 00 0C */ lwz r27, 0xc(r29) +/* 801D6370 001D32D0 1C 00 00 18 */ mulli r0, r0, 0x18 +/* 801D6374 001D32D4 7F 9B 02 14 */ add r28, r27, r0 +/* 801D6378 001D32D8 48 00 00 58 */ b lbl_801D63D0 +lbl_801D637C: +/* 801D637C 001D32DC 28 1B 00 00 */ cmplwi r27, 0 +/* 801D6380 001D32E0 41 82 00 4C */ beq lbl_801D63CC +/* 801D6384 001D32E4 34 1B 00 14 */ addic. r0, r27, 0x14 +/* 801D6388 001D32E8 41 82 00 14 */ beq lbl_801D639C +/* 801D638C 001D32EC 34 1B 00 14 */ addic. r0, r27, 0x14 +/* 801D6390 001D32F0 41 82 00 0C */ beq lbl_801D639C +/* 801D6394 001D32F4 38 7B 00 14 */ addi r3, r27, 0x14 +/* 801D6398 001D32F8 4B E3 2A 35 */ bl sub_80008dcc +lbl_801D639C: +/* 801D639C 001D32FC 34 1B 00 0C */ addic. r0, r27, 0xc +/* 801D63A0 001D3300 41 82 00 14 */ beq lbl_801D63B4 +/* 801D63A4 001D3304 34 1B 00 0C */ addic. r0, r27, 0xc +/* 801D63A8 001D3308 41 82 00 0C */ beq lbl_801D63B4 +/* 801D63AC 001D330C 38 7B 00 0C */ addi r3, r27, 0xc +/* 801D63B0 001D3310 4B E3 28 8D */ bl sub_80008c3c +lbl_801D63B4: +/* 801D63B4 001D3314 34 1B 00 08 */ addic. r0, r27, 8 +/* 801D63B8 001D3318 41 82 00 14 */ beq lbl_801D63CC +/* 801D63BC 001D331C 34 1B 00 08 */ addic. r0, r27, 8 +/* 801D63C0 001D3320 41 82 00 0C */ beq lbl_801D63CC +/* 801D63C4 001D3324 38 7B 00 08 */ addi r3, r27, 8 +/* 801D63C8 001D3328 4B E3 22 79 */ bl __dt__11CWorldStateFv +lbl_801D63CC: +/* 801D63CC 001D332C 3B 7B 00 18 */ addi r27, r27, 0x18 +lbl_801D63D0: +/* 801D63D0 001D3330 7C 1B E0 40 */ cmplw r27, r28 +/* 801D63D4 001D3334 40 82 FF A8 */ bne lbl_801D637C +/* 801D63D8 001D3338 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 801D63DC 001D333C 28 03 00 00 */ cmplwi r3, 0 +/* 801D63E0 001D3340 41 82 00 08 */ beq lbl_801D63E8 +/* 801D63E4 001D3344 48 13 F5 4D */ bl Free__7CMemoryFPCv +lbl_801D63E8: +/* 801D63E8 001D3348 93 FD 00 0C */ stw r31, 0xc(r29) +/* 801D63EC 001D334C 93 DD 00 08 */ stw r30, 8(r29) +lbl_801D63F0: +/* 801D63F0 001D3350 BB 61 00 1C */ lmw r27, 0x1c(r1) +/* 801D63F4 001D3354 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801D63F8 001D3358 7C 08 03 A6 */ mtlr r0 +/* 801D63FC 001D335C 38 21 00 30 */ addi r1, r1, 0x30 +/* 801D6400 001D3360 4E 80 00 20 */ blr + +.global sub_801d6404 +sub_801d6404: +/* 801D6404 001D3364 80 E3 00 00 */ lwz r7, 0(r3) +/* 801D6408 001D3368 48 00 00 74 */ b lbl_801D647C +lbl_801D640C: +/* 801D640C 001D336C 28 05 00 00 */ cmplwi r5, 0 +/* 801D6410 001D3370 41 82 00 64 */ beq lbl_801D6474 +/* 801D6414 001D3374 80 07 00 00 */ lwz r0, 0(r7) +/* 801D6418 001D3378 90 05 00 00 */ stw r0, 0(r5) +/* 801D641C 001D337C 80 07 00 04 */ lwz r0, 4(r7) +/* 801D6420 001D3380 90 05 00 04 */ stw r0, 4(r5) +/* 801D6424 001D3384 80 07 00 08 */ lwz r0, 8(r7) +/* 801D6428 001D3388 90 05 00 08 */ stw r0, 8(r5) +/* 801D642C 001D338C 80 C5 00 08 */ lwz r6, 8(r5) +/* 801D6430 001D3390 80 66 00 04 */ lwz r3, 4(r6) +/* 801D6434 001D3394 38 03 00 01 */ addi r0, r3, 1 +/* 801D6438 001D3398 90 06 00 04 */ stw r0, 4(r6) +/* 801D643C 001D339C 80 07 00 0C */ lwz r0, 0xc(r7) +/* 801D6440 001D33A0 90 05 00 0C */ stw r0, 0xc(r5) +/* 801D6444 001D33A4 80 C5 00 0C */ lwz r6, 0xc(r5) +/* 801D6448 001D33A8 80 66 00 04 */ lwz r3, 4(r6) +/* 801D644C 001D33AC 38 03 00 01 */ addi r0, r3, 1 +/* 801D6450 001D33B0 90 06 00 04 */ stw r0, 4(r6) +/* 801D6454 001D33B4 80 07 00 10 */ lwz r0, 0x10(r7) +/* 801D6458 001D33B8 90 05 00 10 */ stw r0, 0x10(r5) +/* 801D645C 001D33BC 80 07 00 14 */ lwz r0, 0x14(r7) +/* 801D6460 001D33C0 90 05 00 14 */ stw r0, 0x14(r5) +/* 801D6464 001D33C4 80 C5 00 14 */ lwz r6, 0x14(r5) +/* 801D6468 001D33C8 80 66 00 04 */ lwz r3, 4(r6) +/* 801D646C 001D33CC 38 03 00 01 */ addi r0, r3, 1 +/* 801D6470 001D33D0 90 06 00 04 */ stw r0, 4(r6) +lbl_801D6474: +/* 801D6474 001D33D4 38 A5 00 18 */ addi r5, r5, 0x18 +/* 801D6478 001D33D8 38 E7 00 18 */ addi r7, r7, 0x18 +lbl_801D647C: +/* 801D647C 001D33DC 80 04 00 00 */ lwz r0, 0(r4) +/* 801D6480 001D33E0 7C 07 00 40 */ cmplw r7, r0 +/* 801D6484 001D33E4 40 82 FF 88 */ bne lbl_801D640C +/* 801D6488 001D33E8 7C A3 2B 78 */ mr r3, r5 +/* 801D648C 001D33EC 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Player/CPlayerEnergyDrain.s b/asm/Kyoto_CWD/Player/CPlayerEnergyDrain.s new file mode 100644 index 00000000..2be018d1 --- /dev/null +++ b/asm/Kyoto_CWD/Player/CPlayerEnergyDrain.s @@ -0,0 +1,717 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global ProcessEnergyDrain__18CPlayerEnergyDrainFRC13CStateManagerf +ProcessEnergyDrain__18CPlayerEnergyDrainFRC13CStateManagerf: +/* 801B45CC 001B152C 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801B45D0 001B1530 7C 08 02 A6 */ mflr r0 +/* 801B45D4 001B1534 90 01 00 44 */ stw r0, 0x44(r1) +/* 801B45D8 001B1538 DB E1 00 30 */ stfd f31, 0x30(r1) +/* 801B45DC 001B153C F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 801B45E0 001B1540 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801B45E4 001B1544 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801B45E8 001B1548 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801B45EC 001B154C 7C 7D 1B 78 */ mr r29, r3 +/* 801B45F0 001B1550 FF E0 08 90 */ fmr f31, f1 +/* 801B45F4 001B1554 83 E3 00 0C */ lwz r31, 0xc(r3) +/* 801B45F8 001B1558 7C 9E 23 78 */ mr r30, r4 +/* 801B45FC 001B155C 48 00 00 40 */ b lbl_801B463C +lbl_801B4600: +/* 801B4600 001B1560 A0 1F 00 00 */ lhz r0, 0(r31) +/* 801B4604 001B1564 7F C3 F3 78 */ mr r3, r30 +/* 801B4608 001B1568 38 81 00 14 */ addi r4, r1, 0x14 +/* 801B460C 001B156C B0 01 00 10 */ sth r0, 0x10(r1) +/* 801B4610 001B1570 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801B4614 001B1574 4B E9 7F 91 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801B4618 001B1578 28 03 00 00 */ cmplwi r3, 0 +/* 801B461C 001B157C 40 82 00 1C */ bne lbl_801B4638 +/* 801B4620 001B1580 A0 1F 00 00 */ lhz r0, 0(r31) +/* 801B4624 001B1584 7F A3 EB 78 */ mr r3, r29 +/* 801B4628 001B1588 38 81 00 0C */ addi r4, r1, 0xc +/* 801B462C 001B158C B0 01 00 08 */ sth r0, 8(r1) +/* 801B4630 001B1590 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801B4634 001B1594 48 00 00 91 */ bl RemoveEnergyDrainSource__18CPlayerEnergyDrainF9TUniqueId +lbl_801B4638: +/* 801B4638 001B1598 3B FF 00 08 */ addi r31, r31, 8 +lbl_801B463C: +/* 801B463C 001B159C 80 9D 00 04 */ lwz r4, 4(r29) +/* 801B4640 001B15A0 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 801B4644 001B15A4 54 80 18 38 */ slwi r0, r4, 3 +/* 801B4648 001B15A8 7C 03 02 14 */ add r0, r3, r0 +/* 801B464C 001B15AC 7C 1F 00 40 */ cmplw r31, r0 +/* 801B4650 001B15B0 40 82 FF B0 */ bne lbl_801B4600 +/* 801B4654 001B15B4 2C 04 00 00 */ cmpwi r4, 0 +/* 801B4658 001B15B8 40 81 00 10 */ ble lbl_801B4668 +/* 801B465C 001B15BC C0 1D 00 10 */ lfs f0, 0x10(r29) +/* 801B4660 001B15C0 EC 00 F8 2A */ fadds f0, f0, f31 +/* 801B4664 001B15C4 48 00 00 08 */ b lbl_801B466C +lbl_801B4668: +/* 801B4668 001B15C8 C0 02 A9 40 */ lfs f0, lbl_805AC660@sda21(r2) +lbl_801B466C: +/* 801B466C 001B15CC D0 1D 00 10 */ stfs f0, 0x10(r29) +/* 801B4670 001B15D0 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 801B4674 001B15D4 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801B4678 001B15D8 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 801B467C 001B15DC 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801B4680 001B15E0 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801B4684 001B15E4 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801B4688 001B15E8 7C 08 03 A6 */ mtlr r0 +/* 801B468C 001B15EC 38 21 00 40 */ addi r1, r1, 0x40 +/* 801B4690 001B15F0 4E 80 00 20 */ blr + +.global GetEnergyDrainIntensity__18CPlayerEnergyDrainCFv +GetEnergyDrainIntensity__18CPlayerEnergyDrainCFv: +/* 801B4694 001B15F4 80 03 00 04 */ lwz r0, 4(r3) +/* 801B4698 001B15F8 80 63 00 0C */ lwz r3, 0xc(r3) +/* 801B469C 001B15FC 54 00 18 38 */ slwi r0, r0, 3 +/* 801B46A0 001B1600 C0 22 A9 40 */ lfs f1, lbl_805AC660@sda21(r2) +/* 801B46A4 001B1604 7C 03 02 14 */ add r0, r3, r0 +/* 801B46A8 001B1608 48 00 00 10 */ b lbl_801B46B8 +lbl_801B46AC: +/* 801B46AC 001B160C C0 03 00 04 */ lfs f0, 4(r3) +/* 801B46B0 001B1610 38 63 00 08 */ addi r3, r3, 8 +/* 801B46B4 001B1614 EC 21 00 2A */ fadds f1, f1, f0 +lbl_801B46B8: +/* 801B46B8 001B1618 7C 03 00 40 */ cmplw r3, r0 +/* 801B46BC 001B161C 40 82 FF F0 */ bne lbl_801B46AC +/* 801B46C0 001B1620 4E 80 00 20 */ blr + +.global RemoveEnergyDrainSource__18CPlayerEnergyDrainF9TUniqueId +RemoveEnergyDrainSource__18CPlayerEnergyDrainF9TUniqueId: +/* 801B46C4 001B1624 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801B46C8 001B1628 7C 08 02 A6 */ mflr r0 +/* 801B46CC 001B162C C0 02 A9 40 */ lfs f0, lbl_805AC660@sda21(r2) +/* 801B46D0 001B1630 90 01 00 54 */ stw r0, 0x54(r1) +/* 801B46D4 001B1634 38 A1 00 18 */ addi r5, r1, 0x18 +/* 801B46D8 001B1638 38 C1 00 34 */ addi r6, r1, 0x34 +/* 801B46DC 001B163C 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801B46E0 001B1640 7C 7F 1B 78 */ mr r31, r3 +/* 801B46E4 001B1644 38 61 00 10 */ addi r3, r1, 0x10 +/* 801B46E8 001B1648 A1 04 00 00 */ lhz r8, 0(r4) +/* 801B46EC 001B164C 38 81 00 14 */ addi r4, r1, 0x14 +/* 801B46F0 001B1650 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 801B46F4 001B1654 B1 01 00 34 */ sth r8, 0x34(r1) +/* 801B46F8 001B1658 80 1F 00 04 */ lwz r0, 4(r31) +/* 801B46FC 001B165C 80 FF 00 0C */ lwz r7, 0xc(r31) +/* 801B4700 001B1660 54 00 18 38 */ slwi r0, r0, 3 +/* 801B4704 001B1664 B1 01 00 08 */ sth r8, 8(r1) +/* 801B4708 001B1668 7C E7 02 14 */ add r7, r7, r0 +/* 801B470C 001B166C 90 E1 00 28 */ stw r7, 0x28(r1) +/* 801B4710 001B1670 80 1F 00 0C */ lwz r0, 0xc(r31) +/* 801B4714 001B1674 90 E1 00 24 */ stw r7, 0x24(r1) +/* 801B4718 001B1678 90 01 00 2C */ stw r0, 0x2c(r1) +/* 801B471C 001B167C 90 E1 00 18 */ stw r7, 0x18(r1) +/* 801B4720 001B1680 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B4724 001B1684 48 00 05 E9 */ bl "lower_bound,Q24rstl17rmemory_allocator>,18CEnergyDrainSource>__4rstlFQ24rstl130pointer_iterator<18CEnergyDrainSource,Q24rstl55vector<18CEnergyDrainSource,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Q24rstl130pointer_iterator<18CEnergyDrainSource,Q24rstl55vector<18CEnergyDrainSource,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>RC18CEnergyDrainSource" +/* 801B4728 001B1688 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 801B472C 001B168C 38 80 00 00 */ li r4, 0 +/* 801B4730 001B1690 80 01 00 28 */ lwz r0, 0x28(r1) +/* 801B4734 001B1694 90 A1 00 0C */ stw r5, 0xc(r1) +/* 801B4738 001B1698 7C 05 00 40 */ cmplw r5, r0 +/* 801B473C 001B169C 41 82 00 18 */ beq lbl_801B4754 +/* 801B4740 001B16A0 A0 61 00 34 */ lhz r3, 0x34(r1) +/* 801B4744 001B16A4 A0 05 00 00 */ lhz r0, 0(r5) +/* 801B4748 001B16A8 7C 03 00 40 */ cmplw r3, r0 +/* 801B474C 001B16AC 41 80 00 08 */ blt lbl_801B4754 +/* 801B4750 001B16B0 38 80 00 01 */ li r4, 1 +lbl_801B4754: +/* 801B4754 001B16B4 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 801B4758 001B16B8 38 81 00 28 */ addi r4, r1, 0x28 +/* 801B475C 001B16BC 41 82 00 08 */ beq lbl_801B4764 +/* 801B4760 001B16C0 38 81 00 0C */ addi r4, r1, 0xc +lbl_801B4764: +/* 801B4764 001B16C4 80 1F 00 04 */ lwz r0, 4(r31) +/* 801B4768 001B16C8 80 7F 00 0C */ lwz r3, 0xc(r31) +/* 801B476C 001B16CC 54 00 18 38 */ slwi r0, r0, 3 +/* 801B4770 001B16D0 80 84 00 00 */ lwz r4, 0(r4) +/* 801B4774 001B16D4 7C 03 02 14 */ add r0, r3, r0 +/* 801B4778 001B16D8 7C 04 00 40 */ cmplw r4, r0 +/* 801B477C 001B16DC 90 81 00 30 */ stw r4, 0x30(r1) +/* 801B4780 001B16E0 41 82 00 18 */ beq lbl_801B4798 +/* 801B4784 001B16E4 90 81 00 1C */ stw r4, 0x1c(r1) +/* 801B4788 001B16E8 7F E4 FB 78 */ mr r4, r31 +/* 801B478C 001B16EC 38 61 00 20 */ addi r3, r1, 0x20 +/* 801B4790 001B16F0 38 A1 00 1C */ addi r5, r1, 0x1c +/* 801B4794 001B16F4 48 00 00 19 */ bl sub_801b47ac +lbl_801B4798: +/* 801B4798 001B16F8 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801B479C 001B16FC 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801B47A0 001B1700 7C 08 03 A6 */ mtlr r0 +/* 801B47A4 001B1704 38 21 00 50 */ addi r1, r1, 0x50 +/* 801B47A8 001B1708 4E 80 00 20 */ blr + +.global sub_801b47ac +sub_801b47ac: +/* 801B47AC 001B170C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801B47B0 001B1710 7C 08 02 A6 */ mflr r0 +/* 801B47B4 001B1714 90 01 00 24 */ stw r0, 0x24(r1) +/* 801B47B8 001B1718 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801B47BC 001B171C 7C 7F 1B 78 */ mr r31, r3 +/* 801B47C0 001B1720 80 C5 00 00 */ lwz r6, 0(r5) +/* 801B47C4 001B1724 80 05 00 00 */ lwz r0, 0(r5) +/* 801B47C8 001B1728 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801B47CC 001B172C 38 E6 00 08 */ addi r7, r6, 8 +/* 801B47D0 001B1730 38 C1 00 0C */ addi r6, r1, 0xc +/* 801B47D4 001B1734 90 E1 00 08 */ stw r7, 8(r1) +/* 801B47D8 001B1738 90 E1 00 0C */ stw r7, 0xc(r1) +/* 801B47DC 001B173C 90 01 00 10 */ stw r0, 0x10(r1) +/* 801B47E0 001B1740 48 00 00 19 */ bl sub_801b47f8 +/* 801B47E4 001B1744 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801B47E8 001B1748 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801B47EC 001B174C 7C 08 03 A6 */ mtlr r0 +/* 801B47F0 001B1750 38 21 00 20 */ addi r1, r1, 0x20 +/* 801B47F4 001B1754 4E 80 00 20 */ blr + +.global sub_801b47f8 +sub_801b47f8: +/* 801B47F8 001B1758 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B47FC 001B175C 80 E5 00 00 */ lwz r7, 0(r5) +/* 801B4800 001B1760 80 06 00 00 */ lwz r0, 0(r6) +/* 801B4804 001B1764 90 E1 00 0C */ stw r7, 0xc(r1) +/* 801B4808 001B1768 90 01 00 08 */ stw r0, 8(r1) +/* 801B480C 001B176C 48 00 00 08 */ b lbl_801B4814 +lbl_801B4810: +/* 801B4810 001B1770 38 E7 00 08 */ addi r7, r7, 8 +lbl_801B4814: +/* 801B4814 001B1774 7C 07 00 40 */ cmplw r7, r0 +/* 801B4818 001B1778 40 82 FF F8 */ bne lbl_801B4810 +/* 801B481C 001B177C 81 04 00 0C */ lwz r8, 0xc(r4) +/* 801B4820 001B1780 80 05 00 00 */ lwz r0, 0(r5) +/* 801B4824 001B1784 80 E6 00 00 */ lwz r7, 0(r6) +/* 801B4828 001B1788 7C 08 00 50 */ subf r0, r8, r0 +/* 801B482C 001B178C 7C 00 1E 70 */ srawi r0, r0, 3 +/* 801B4830 001B1790 7C C0 01 94 */ addze r6, r0 +/* 801B4834 001B1794 54 C0 18 38 */ slwi r0, r6, 3 +/* 801B4838 001B1798 7C C9 33 78 */ mr r9, r6 +/* 801B483C 001B179C 7D 08 02 14 */ add r8, r8, r0 +/* 801B4840 001B17A0 48 00 00 28 */ b lbl_801B4868 +lbl_801B4844: +/* 801B4844 001B17A4 28 08 00 00 */ cmplwi r8, 0 +/* 801B4848 001B17A8 41 82 00 14 */ beq lbl_801B485C +/* 801B484C 001B17AC A0 07 00 00 */ lhz r0, 0(r7) +/* 801B4850 001B17B0 B0 08 00 00 */ sth r0, 0(r8) +/* 801B4854 001B17B4 C0 07 00 04 */ lfs f0, 4(r7) +/* 801B4858 001B17B8 D0 08 00 04 */ stfs f0, 4(r8) +lbl_801B485C: +/* 801B485C 001B17BC 39 08 00 08 */ addi r8, r8, 8 +/* 801B4860 001B17C0 39 29 00 01 */ addi r9, r9, 1 +/* 801B4864 001B17C4 38 E7 00 08 */ addi r7, r7, 8 +lbl_801B4868: +/* 801B4868 001B17C8 80 04 00 04 */ lwz r0, 4(r4) +/* 801B486C 001B17CC 80 C4 00 0C */ lwz r6, 0xc(r4) +/* 801B4870 001B17D0 54 00 18 38 */ slwi r0, r0, 3 +/* 801B4874 001B17D4 7C 06 02 14 */ add r0, r6, r0 +/* 801B4878 001B17D8 7C 07 00 40 */ cmplw r7, r0 +/* 801B487C 001B17DC 40 82 FF C8 */ bne lbl_801B4844 +/* 801B4880 001B17E0 91 24 00 04 */ stw r9, 4(r4) +/* 801B4884 001B17E4 80 05 00 00 */ lwz r0, 0(r5) +/* 801B4888 001B17E8 90 03 00 00 */ stw r0, 0(r3) +/* 801B488C 001B17EC 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B4890 001B17F0 4E 80 00 20 */ blr + +.global sub_801b4894 +sub_801b4894: +/* 801B4894 001B17F4 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801B4898 001B17F8 7C 08 02 A6 */ mflr r0 +/* 801B489C 001B17FC 90 01 00 64 */ stw r0, 0x64(r1) +/* 801B48A0 001B1800 38 A1 00 18 */ addi r5, r1, 0x18 +/* 801B48A4 001B1804 38 C1 00 48 */ addi r6, r1, 0x48 +/* 801B48A8 001B1808 DB E1 00 58 */ stfd f31, 0x58(r1) +/* 801B48AC 001B180C FF E0 08 90 */ fmr f31, f1 +/* 801B48B0 001B1810 93 E1 00 54 */ stw r31, 0x54(r1) +/* 801B48B4 001B1814 7C 7F 1B 78 */ mr r31, r3 +/* 801B48B8 001B1818 38 61 00 10 */ addi r3, r1, 0x10 +/* 801B48BC 001B181C A1 04 00 00 */ lhz r8, 0(r4) +/* 801B48C0 001B1820 38 81 00 14 */ addi r4, r1, 0x14 +/* 801B48C4 001B1824 D3 E1 00 4C */ stfs f31, 0x4c(r1) +/* 801B48C8 001B1828 B1 01 00 48 */ sth r8, 0x48(r1) +/* 801B48CC 001B182C 80 1F 00 04 */ lwz r0, 4(r31) +/* 801B48D0 001B1830 80 FF 00 0C */ lwz r7, 0xc(r31) +/* 801B48D4 001B1834 54 00 18 38 */ slwi r0, r0, 3 +/* 801B48D8 001B1838 B1 01 00 08 */ sth r8, 8(r1) +/* 801B48DC 001B183C 7C E7 02 14 */ add r7, r7, r0 +/* 801B48E0 001B1840 90 E1 00 3C */ stw r7, 0x3c(r1) +/* 801B48E4 001B1844 80 1F 00 0C */ lwz r0, 0xc(r31) +/* 801B48E8 001B1848 90 E1 00 38 */ stw r7, 0x38(r1) +/* 801B48EC 001B184C 90 01 00 40 */ stw r0, 0x40(r1) +/* 801B48F0 001B1850 90 E1 00 18 */ stw r7, 0x18(r1) +/* 801B48F4 001B1854 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B48F8 001B1858 48 00 04 15 */ bl "lower_bound,Q24rstl17rmemory_allocator>,18CEnergyDrainSource>__4rstlFQ24rstl130pointer_iterator<18CEnergyDrainSource,Q24rstl55vector<18CEnergyDrainSource,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Q24rstl130pointer_iterator<18CEnergyDrainSource,Q24rstl55vector<18CEnergyDrainSource,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>RC18CEnergyDrainSource" +/* 801B48FC 001B185C 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 801B4900 001B1860 38 80 00 00 */ li r4, 0 +/* 801B4904 001B1864 80 01 00 3C */ lwz r0, 0x3c(r1) +/* 801B4908 001B1868 90 A1 00 0C */ stw r5, 0xc(r1) +/* 801B490C 001B186C 7C 05 00 40 */ cmplw r5, r0 +/* 801B4910 001B1870 41 82 00 18 */ beq lbl_801B4928 +/* 801B4914 001B1874 A0 61 00 48 */ lhz r3, 0x48(r1) +/* 801B4918 001B1878 A0 05 00 00 */ lhz r0, 0(r5) +/* 801B491C 001B187C 7C 03 00 40 */ cmplw r3, r0 +/* 801B4920 001B1880 41 80 00 08 */ blt lbl_801B4928 +/* 801B4924 001B1884 38 80 00 01 */ li r4, 1 +lbl_801B4928: +/* 801B4928 001B1888 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 801B492C 001B188C 38 81 00 3C */ addi r4, r1, 0x3c +/* 801B4930 001B1890 41 82 00 08 */ beq lbl_801B4938 +/* 801B4934 001B1894 38 81 00 0C */ addi r4, r1, 0xc +lbl_801B4938: +/* 801B4938 001B1898 80 BF 00 04 */ lwz r5, 4(r31) +/* 801B493C 001B189C 80 7F 00 0C */ lwz r3, 0xc(r31) +/* 801B4940 001B18A0 54 A0 18 38 */ slwi r0, r5, 3 +/* 801B4944 001B18A4 80 84 00 00 */ lwz r4, 0(r4) +/* 801B4948 001B18A8 7C E3 02 14 */ add r7, r3, r0 +/* 801B494C 001B18AC 7C 04 38 40 */ cmplw r4, r7 +/* 801B4950 001B18B0 41 82 00 10 */ beq lbl_801B4960 +/* 801B4954 001B18B4 D3 E4 00 04 */ stfs f31, 4(r4) +/* 801B4958 001B18B8 38 60 00 01 */ li r3, 1 +/* 801B495C 001B18BC 48 00 00 64 */ b lbl_801B49C0 +lbl_801B4960: +/* 801B4960 001B18C0 80 1F 00 08 */ lwz r0, 8(r31) +/* 801B4964 001B18C4 7C 05 00 00 */ cmpw r5, r0 +/* 801B4968 001B18C8 40 80 00 54 */ bge lbl_801B49BC +/* 801B496C 001B18CC 90 E1 00 28 */ stw r7, 0x28(r1) +/* 801B4970 001B18D0 38 61 00 34 */ addi r3, r1, 0x34 +/* 801B4974 001B18D4 38 81 00 30 */ addi r4, r1, 0x30 +/* 801B4978 001B18D8 38 A1 00 28 */ addi r5, r1, 0x28 +/* 801B497C 001B18DC 80 1F 00 0C */ lwz r0, 0xc(r31) +/* 801B4980 001B18E0 38 C1 00 48 */ addi r6, r1, 0x48 +/* 801B4984 001B18E4 90 E1 00 24 */ stw r7, 0x24(r1) +/* 801B4988 001B18E8 90 01 00 2C */ stw r0, 0x2c(r1) +/* 801B498C 001B18EC 90 01 00 30 */ stw r0, 0x30(r1) +/* 801B4990 001B18F0 48 00 03 7D */ bl "lower_bound,Q24rstl17rmemory_allocator>,18CEnergyDrainSource>__4rstlFQ24rstl130pointer_iterator<18CEnergyDrainSource,Q24rstl55vector<18CEnergyDrainSource,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Q24rstl130pointer_iterator<18CEnergyDrainSource,Q24rstl55vector<18CEnergyDrainSource,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>RC18CEnergyDrainSource" +/* 801B4994 001B18F4 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801B4998 001B18F8 7F E4 FB 78 */ mr r4, r31 +/* 801B499C 001B18FC 38 61 00 20 */ addi r3, r1, 0x20 +/* 801B49A0 001B1900 38 A1 00 1C */ addi r5, r1, 0x1c +/* 801B49A4 001B1904 90 01 00 44 */ stw r0, 0x44(r1) +/* 801B49A8 001B1908 38 C1 00 48 */ addi r6, r1, 0x48 +/* 801B49AC 001B190C 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801B49B0 001B1910 48 00 00 29 */ bl sub_801b49d8 +/* 801B49B4 001B1914 38 60 00 01 */ li r3, 1 +/* 801B49B8 001B1918 48 00 00 08 */ b lbl_801B49C0 +lbl_801B49BC: +/* 801B49BC 001B191C 38 60 00 00 */ li r3, 0 +lbl_801B49C0: +/* 801B49C0 001B1920 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801B49C4 001B1924 CB E1 00 58 */ lfd f31, 0x58(r1) +/* 801B49C8 001B1928 83 E1 00 54 */ lwz r31, 0x54(r1) +/* 801B49CC 001B192C 7C 08 03 A6 */ mtlr r0 +/* 801B49D0 001B1930 38 21 00 60 */ addi r1, r1, 0x60 +/* 801B49D4 001B1934 4E 80 00 20 */ blr + +.global sub_801b49d8 +sub_801b49d8: +/* 801B49D8 001B1938 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801B49DC 001B193C 7C 08 02 A6 */ mflr r0 +/* 801B49E0 001B1940 90 01 00 34 */ stw r0, 0x34(r1) +/* 801B49E4 001B1944 38 00 00 00 */ li r0, 0 +/* 801B49E8 001B1948 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801B49EC 001B194C 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801B49F0 001B1950 7C 9E 23 78 */ mr r30, r4 +/* 801B49F4 001B1954 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801B49F8 001B1958 7C 7D 1B 78 */ mr r29, r3 +/* 801B49FC 001B195C 7F C3 F3 78 */ mr r3, r30 +/* 801B4A00 001B1960 80 84 00 0C */ lwz r4, 0xc(r4) +/* 801B4A04 001B1964 80 E5 00 00 */ lwz r7, 0(r5) +/* 801B4A08 001B1968 38 A0 00 01 */ li r5, 1 +/* 801B4A0C 001B196C 90 C1 00 14 */ stw r6, 0x14(r1) +/* 801B4A10 001B1970 7C 84 38 50 */ subf r4, r4, r7 +/* 801B4A14 001B1974 90 C1 00 0C */ stw r6, 0xc(r1) +/* 801B4A18 001B1978 7C 84 1E 70 */ srawi r4, r4, 3 +/* 801B4A1C 001B197C 7F E4 01 94 */ addze r31, r4 +/* 801B4A20 001B1980 38 C1 00 0C */ addi r6, r1, 0xc +/* 801B4A24 001B1984 90 01 00 18 */ stw r0, 0x18(r1) +/* 801B4A28 001B1988 38 81 00 08 */ addi r4, r1, 8 +/* 801B4A2C 001B198C 90 01 00 10 */ stw r0, 0x10(r1) +/* 801B4A30 001B1990 90 E1 00 08 */ stw r7, 8(r1) +/* 801B4A34 001B1994 48 00 00 31 */ bl sub_801b4a64 +/* 801B4A38 001B1998 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 801B4A3C 001B199C 57 E0 18 38 */ slwi r0, r31, 3 +/* 801B4A40 001B19A0 7C 63 02 14 */ add r3, r3, r0 +/* 801B4A44 001B19A4 90 7D 00 00 */ stw r3, 0(r29) +/* 801B4A48 001B19A8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801B4A4C 001B19AC 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801B4A50 001B19B0 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801B4A54 001B19B4 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801B4A58 001B19B8 7C 08 03 A6 */ mtlr r0 +/* 801B4A5C 001B19BC 38 21 00 30 */ addi r1, r1, 0x30 +/* 801B4A60 001B19C0 4E 80 00 20 */ blr + +.global sub_801b4a64 +sub_801b4a64: +/* 801B4A64 001B19C4 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801B4A68 001B19C8 7C 08 02 A6 */ mflr r0 +/* 801B4A6C 001B19CC 90 01 00 34 */ stw r0, 0x34(r1) +/* 801B4A70 001B19D0 BF 21 00 14 */ stmw r25, 0x14(r1) +/* 801B4A74 001B19D4 7C 7A 1B 78 */ mr r26, r3 +/* 801B4A78 001B19D8 7C 99 23 78 */ mr r25, r4 +/* 801B4A7C 001B19DC 7C BB 2B 78 */ mr r27, r5 +/* 801B4A80 001B19E0 80 63 00 04 */ lwz r3, 4(r3) +/* 801B4A84 001B19E4 80 9A 00 08 */ lwz r4, 8(r26) +/* 801B4A88 001B19E8 7C A3 DA 14 */ add r5, r3, r27 +/* 801B4A8C 001B19EC 80 FA 00 0C */ lwz r7, 0xc(r26) +/* 801B4A90 001B19F0 7C 05 20 00 */ cmpw r5, r4 +/* 801B4A94 001B19F4 83 C6 00 00 */ lwz r30, 0(r6) +/* 801B4A98 001B19F8 7C FD 3B 78 */ mr r29, r7 +/* 801B4A9C 001B19FC 41 81 00 B0 */ bgt lbl_801B4B4C +/* 801B4AA0 001B1A00 80 19 00 00 */ lwz r0, 0(r25) +/* 801B4AA4 001B1A04 57 64 18 38 */ slwi r4, r27, 3 +/* 801B4AA8 001B1A08 7C 07 00 50 */ subf r0, r7, r0 +/* 801B4AAC 001B1A0C 7C 00 1E 70 */ srawi r0, r0, 3 +/* 801B4AB0 001B1A10 7C A0 01 94 */ addze r5, r0 +/* 801B4AB4 001B1A14 7C 65 18 50 */ subf r3, r5, r3 +/* 801B4AB8 001B1A18 35 03 FF FF */ addic. r8, r3, -1 +/* 801B4ABC 001B1A1C 54 A0 18 38 */ slwi r0, r5, 3 +/* 801B4AC0 001B1A20 7C C7 02 14 */ add r6, r7, r0 +/* 801B4AC4 001B1A24 55 03 18 38 */ slwi r3, r8, 3 +/* 801B4AC8 001B1A28 38 08 00 01 */ addi r0, r8, 1 +/* 801B4ACC 001B1A2C 7C 84 1A 14 */ add r4, r4, r3 +/* 801B4AD0 001B1A30 7C 86 22 14 */ add r4, r6, r4 +/* 801B4AD4 001B1A34 7C 09 03 A6 */ mtctr r0 +/* 801B4AD8 001B1A38 41 80 00 38 */ blt lbl_801B4B10 +lbl_801B4ADC: +/* 801B4ADC 001B1A3C 7C 05 42 14 */ add r0, r5, r8 +/* 801B4AE0 001B1A40 28 04 00 00 */ cmplwi r4, 0 +/* 801B4AE4 001B1A44 80 7A 00 0C */ lwz r3, 0xc(r26) +/* 801B4AE8 001B1A48 54 00 18 38 */ slwi r0, r0, 3 +/* 801B4AEC 001B1A4C 7C 63 02 14 */ add r3, r3, r0 +/* 801B4AF0 001B1A50 41 82 00 14 */ beq lbl_801B4B04 +/* 801B4AF4 001B1A54 A0 03 00 00 */ lhz r0, 0(r3) +/* 801B4AF8 001B1A58 B0 04 00 00 */ sth r0, 0(r4) +/* 801B4AFC 001B1A5C C0 03 00 04 */ lfs f0, 4(r3) +/* 801B4B00 001B1A60 D0 04 00 04 */ stfs f0, 4(r4) +lbl_801B4B04: +/* 801B4B04 001B1A64 38 84 FF F8 */ addi r4, r4, -8 +/* 801B4B08 001B1A68 39 08 FF FF */ addi r8, r8, -1 +/* 801B4B0C 001B1A6C 42 00 FF D0 */ bdnz lbl_801B4ADC +lbl_801B4B10: +/* 801B4B10 001B1A70 7F 69 03 A6 */ mtctr r27 +/* 801B4B14 001B1A74 2C 1B 00 00 */ cmpwi r27, 0 +/* 801B4B18 001B1A78 40 81 00 24 */ ble lbl_801B4B3C +lbl_801B4B1C: +/* 801B4B1C 001B1A7C 28 06 00 00 */ cmplwi r6, 0 +/* 801B4B20 001B1A80 41 82 00 14 */ beq lbl_801B4B34 +/* 801B4B24 001B1A84 A0 1E 00 00 */ lhz r0, 0(r30) +/* 801B4B28 001B1A88 B0 06 00 00 */ sth r0, 0(r6) +/* 801B4B2C 001B1A8C C0 1E 00 04 */ lfs f0, 4(r30) +/* 801B4B30 001B1A90 D0 06 00 04 */ stfs f0, 4(r6) +lbl_801B4B34: +/* 801B4B34 001B1A94 38 C6 00 08 */ addi r6, r6, 8 +/* 801B4B38 001B1A98 42 00 FF E4 */ bdnz lbl_801B4B1C +lbl_801B4B3C: +/* 801B4B3C 001B1A9C 80 1A 00 04 */ lwz r0, 4(r26) +/* 801B4B40 001B1AA0 7C 00 DA 14 */ add r0, r0, r27 +/* 801B4B44 001B1AA4 90 1A 00 04 */ stw r0, 4(r26) +/* 801B4B48 001B1AA8 48 00 01 68 */ b lbl_801B4CB0 +lbl_801B4B4C: +/* 801B4B4C 001B1AAC 2C 04 00 00 */ cmpwi r4, 0 +/* 801B4B50 001B1AB0 38 00 00 04 */ li r0, 4 +/* 801B4B54 001B1AB4 41 82 00 08 */ beq lbl_801B4B5C +/* 801B4B58 001B1AB8 54 80 08 3C */ slwi r0, r4, 1 +lbl_801B4B5C: +/* 801B4B5C 001B1ABC 7C 1C 03 78 */ mr r28, r0 +/* 801B4B60 001B1AC0 48 00 00 08 */ b lbl_801B4B68 +lbl_801B4B64: +/* 801B4B64 001B1AC4 57 9C 08 3C */ slwi r28, r28, 1 +lbl_801B4B68: +/* 801B4B68 001B1AC8 7C 1C 28 00 */ cmpw r28, r5 +/* 801B4B6C 001B1ACC 41 80 FF F8 */ blt lbl_801B4B64 +/* 801B4B70 001B1AD0 57 83 18 39 */ rlwinm. r3, r28, 3, 0, 0x1c +/* 801B4B74 001B1AD4 40 82 00 0C */ bne lbl_801B4B80 +/* 801B4B78 001B1AD8 3B E0 00 00 */ li r31, 0 +/* 801B4B7C 001B1ADC 48 00 00 18 */ b lbl_801B4B94 +lbl_801B4B80: +/* 801B4B80 001B1AE0 3C 80 80 3D */ lis r4, lbl_803D1630@ha +/* 801B4B84 001B1AE4 38 A0 00 00 */ li r5, 0 +/* 801B4B88 001B1AE8 38 84 16 30 */ addi r4, r4, lbl_803D1630@l +/* 801B4B8C 001B1AEC 48 16 0C 8D */ bl __nwa__FUlPCcPCc +/* 801B4B90 001B1AF0 7C 7F 1B 78 */ mr r31, r3 +lbl_801B4B94: +/* 801B4B94 001B1AF4 80 7A 00 0C */ lwz r3, 0xc(r26) +/* 801B4B98 001B1AF8 7F E6 FB 78 */ mr r6, r31 +/* 801B4B9C 001B1AFC 80 19 00 00 */ lwz r0, 0(r25) +/* 801B4BA0 001B1B00 38 E0 00 00 */ li r7, 0 +/* 801B4BA4 001B1B04 38 A0 00 00 */ li r5, 0 +/* 801B4BA8 001B1B08 7C 03 00 50 */ subf r0, r3, r0 +/* 801B4BAC 001B1B0C 7C 00 1E 70 */ srawi r0, r0, 3 +/* 801B4BB0 001B1B10 7C 80 01 95 */ addze. r4, r0 +/* 801B4BB4 001B1B14 7C 89 03 A6 */ mtctr r4 +/* 801B4BB8 001B1B18 40 81 00 34 */ ble lbl_801B4BEC +lbl_801B4BBC: +/* 801B4BBC 001B1B1C 80 1A 00 0C */ lwz r0, 0xc(r26) +/* 801B4BC0 001B1B20 28 06 00 00 */ cmplwi r6, 0 +/* 801B4BC4 001B1B24 7C 60 2A 14 */ add r3, r0, r5 +/* 801B4BC8 001B1B28 41 82 00 14 */ beq lbl_801B4BDC +/* 801B4BCC 001B1B2C A0 03 00 00 */ lhz r0, 0(r3) +/* 801B4BD0 001B1B30 B0 06 00 00 */ sth r0, 0(r6) +/* 801B4BD4 001B1B34 C0 03 00 04 */ lfs f0, 4(r3) +/* 801B4BD8 001B1B38 D0 06 00 04 */ stfs f0, 4(r6) +lbl_801B4BDC: +/* 801B4BDC 001B1B3C 38 C6 00 08 */ addi r6, r6, 8 +/* 801B4BE0 001B1B40 38 E7 00 01 */ addi r7, r7, 1 +/* 801B4BE4 001B1B44 38 A5 00 08 */ addi r5, r5, 8 +/* 801B4BE8 001B1B48 42 00 FF D4 */ bdnz lbl_801B4BBC +lbl_801B4BEC: +/* 801B4BEC 001B1B4C 54 E0 18 38 */ slwi r0, r7, 3 +/* 801B4BF0 001B1B50 7C 7F 02 14 */ add r3, r31, r0 +/* 801B4BF4 001B1B54 7F 69 03 A6 */ mtctr r27 +/* 801B4BF8 001B1B58 2C 1B 00 00 */ cmpwi r27, 0 +/* 801B4BFC 001B1B5C 40 81 00 28 */ ble lbl_801B4C24 +lbl_801B4C00: +/* 801B4C00 001B1B60 28 03 00 00 */ cmplwi r3, 0 +/* 801B4C04 001B1B64 41 82 00 14 */ beq lbl_801B4C18 +/* 801B4C08 001B1B68 A0 1E 00 00 */ lhz r0, 0(r30) +/* 801B4C0C 001B1B6C B0 03 00 00 */ sth r0, 0(r3) +/* 801B4C10 001B1B70 C0 1E 00 04 */ lfs f0, 4(r30) +/* 801B4C14 001B1B74 D0 03 00 04 */ stfs f0, 4(r3) +lbl_801B4C18: +/* 801B4C18 001B1B78 38 63 00 08 */ addi r3, r3, 8 +/* 801B4C1C 001B1B7C 38 E7 00 01 */ addi r7, r7, 1 +/* 801B4C20 001B1B80 42 00 FF E0 */ bdnz lbl_801B4C00 +lbl_801B4C24: +/* 801B4C24 001B1B84 54 E0 18 38 */ slwi r0, r7, 3 +/* 801B4C28 001B1B88 7C 86 23 78 */ mr r6, r4 +/* 801B4C2C 001B1B8C 54 84 18 38 */ slwi r4, r4, 3 +/* 801B4C30 001B1B90 7C BF 02 14 */ add r5, r31, r0 +/* 801B4C34 001B1B94 48 00 00 30 */ b lbl_801B4C64 +lbl_801B4C38: +/* 801B4C38 001B1B98 80 1A 00 0C */ lwz r0, 0xc(r26) +/* 801B4C3C 001B1B9C 28 05 00 00 */ cmplwi r5, 0 +/* 801B4C40 001B1BA0 7C 60 22 14 */ add r3, r0, r4 +/* 801B4C44 001B1BA4 41 82 00 14 */ beq lbl_801B4C58 +/* 801B4C48 001B1BA8 A0 03 00 00 */ lhz r0, 0(r3) +/* 801B4C4C 001B1BAC B0 05 00 00 */ sth r0, 0(r5) +/* 801B4C50 001B1BB0 C0 03 00 04 */ lfs f0, 4(r3) +/* 801B4C54 001B1BB4 D0 05 00 04 */ stfs f0, 4(r5) +lbl_801B4C58: +/* 801B4C58 001B1BB8 38 A5 00 08 */ addi r5, r5, 8 +/* 801B4C5C 001B1BBC 38 84 00 08 */ addi r4, r4, 8 +/* 801B4C60 001B1BC0 38 C6 00 01 */ addi r6, r6, 1 +lbl_801B4C64: +/* 801B4C64 001B1BC4 80 1A 00 04 */ lwz r0, 4(r26) +/* 801B4C68 001B1BC8 7C 06 00 00 */ cmpw r6, r0 +/* 801B4C6C 001B1BCC 41 80 FF CC */ blt lbl_801B4C38 +/* 801B4C70 001B1BD0 54 00 18 38 */ slwi r0, r0, 3 +/* 801B4C74 001B1BD4 7F A3 EB 78 */ mr r3, r29 +/* 801B4C78 001B1BD8 7C 1D 02 14 */ add r0, r29, r0 +/* 801B4C7C 001B1BDC 48 00 00 08 */ b lbl_801B4C84 +lbl_801B4C80: +/* 801B4C80 001B1BE0 38 63 00 08 */ addi r3, r3, 8 +lbl_801B4C84: +/* 801B4C84 001B1BE4 7C 03 00 40 */ cmplw r3, r0 +/* 801B4C88 001B1BE8 40 82 FF F8 */ bne lbl_801B4C80 +/* 801B4C8C 001B1BEC 80 7A 00 0C */ lwz r3, 0xc(r26) +/* 801B4C90 001B1BF0 28 03 00 00 */ cmplwi r3, 0 +/* 801B4C94 001B1BF4 41 82 00 08 */ beq lbl_801B4C9C +/* 801B4C98 001B1BF8 48 16 0C 99 */ bl Free__7CMemoryFPCv +lbl_801B4C9C: +/* 801B4C9C 001B1BFC 93 FA 00 0C */ stw r31, 0xc(r26) +/* 801B4CA0 001B1C00 93 9A 00 08 */ stw r28, 8(r26) +/* 801B4CA4 001B1C04 80 1A 00 04 */ lwz r0, 4(r26) +/* 801B4CA8 001B1C08 7C 00 DA 14 */ add r0, r0, r27 +/* 801B4CAC 001B1C0C 90 1A 00 04 */ stw r0, 4(r26) +lbl_801B4CB0: +/* 801B4CB0 001B1C10 BB 21 00 14 */ lmw r25, 0x14(r1) +/* 801B4CB4 001B1C14 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801B4CB8 001B1C18 7C 08 03 A6 */ mtlr r0 +/* 801B4CBC 001B1C1C 38 21 00 30 */ addi r1, r1, 0x30 +/* 801B4CC0 001B1C20 4E 80 00 20 */ blr + +.global __ct__18CPlayerEnergyDrainFUi +__ct__18CPlayerEnergyDrainFUi: +/* 801B4CC4 001B1C24 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B4CC8 001B1C28 7C 08 02 A6 */ mflr r0 +/* 801B4CCC 001B1C2C C0 02 A9 40 */ lfs f0, lbl_805AC660@sda21(r2) +/* 801B4CD0 001B1C30 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B4CD4 001B1C34 38 00 00 00 */ li r0, 0 +/* 801B4CD8 001B1C38 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801B4CDC 001B1C3C 7C 7F 1B 78 */ mr r31, r3 +/* 801B4CE0 001B1C40 90 03 00 04 */ stw r0, 4(r3) +/* 801B4CE4 001B1C44 90 03 00 08 */ stw r0, 8(r3) +/* 801B4CE8 001B1C48 90 03 00 0C */ stw r0, 0xc(r3) +/* 801B4CEC 001B1C4C D0 03 00 10 */ stfs f0, 0x10(r3) +/* 801B4CF0 001B1C50 48 00 00 DD */ bl "reserve__Q24rstl55vector<18CEnergyDrainSource,Q24rstl17rmemory_allocator>Fi" +/* 801B4CF4 001B1C54 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B4CF8 001B1C58 7F E3 FB 78 */ mr r3, r31 +/* 801B4CFC 001B1C5C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801B4D00 001B1C60 7C 08 03 A6 */ mtlr r0 +/* 801B4D04 001B1C64 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B4D08 001B1C68 4E 80 00 20 */ blr + +.global "lower_bound,Q24rstl17rmemory_allocator>,18CEnergyDrainSource>__4rstlFQ24rstl130pointer_iterator<18CEnergyDrainSource,Q24rstl55vector<18CEnergyDrainSource,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Q24rstl130pointer_iterator<18CEnergyDrainSource,Q24rstl55vector<18CEnergyDrainSource,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>RC18CEnergyDrainSource" +"lower_bound,Q24rstl17rmemory_allocator>,18CEnergyDrainSource>__4rstlFQ24rstl130pointer_iterator<18CEnergyDrainSource,Q24rstl55vector<18CEnergyDrainSource,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Q24rstl130pointer_iterator<18CEnergyDrainSource,Q24rstl55vector<18CEnergyDrainSource,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>RC18CEnergyDrainSource": +/* 801B4D0C 001B1C6C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801B4D10 001B1C70 7C 08 02 A6 */ mflr r0 +/* 801B4D14 001B1C74 90 01 00 34 */ stw r0, 0x34(r1) +/* 801B4D18 001B1C78 BF 61 00 1C */ stmw r27, 0x1c(r1) +/* 801B4D1C 001B1C7C 7C 9F 23 78 */ mr r31, r4 +/* 801B4D20 001B1C80 7C 7E 1B 78 */ mr r30, r3 +/* 801B4D24 001B1C84 7C DB 33 78 */ mr r27, r6 +/* 801B4D28 001B1C88 38 61 00 0C */ addi r3, r1, 0xc +/* 801B4D2C 001B1C8C 80 85 00 00 */ lwz r4, 0(r5) +/* 801B4D30 001B1C90 80 1F 00 00 */ lwz r0, 0(r31) +/* 801B4D34 001B1C94 90 81 00 08 */ stw r4, 8(r1) +/* 801B4D38 001B1C98 38 81 00 08 */ addi r4, r1, 8 +/* 801B4D3C 001B1C9C 90 01 00 0C */ stw r0, 0xc(r1) +/* 801B4D40 001B1CA0 48 00 01 C1 */ bl "distance,Q24rstl17rmemory_allocator>>__4rstlFQ24rstl130pointer_iterator<18CEnergyDrainSource,Q24rstl55vector<18CEnergyDrainSource,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Q24rstl130pointer_iterator<18CEnergyDrainSource,Q24rstl55vector<18CEnergyDrainSource,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>" +/* 801B4D44 001B1CA4 80 1F 00 00 */ lwz r0, 0(r31) +/* 801B4D48 001B1CA8 7C 7D 1B 78 */ mr r29, r3 +/* 801B4D4C 001B1CAC 90 01 00 10 */ stw r0, 0x10(r1) +/* 801B4D50 001B1CB0 48 00 00 58 */ b lbl_801B4DA8 +lbl_801B4D54: +/* 801B4D54 001B1CB4 57 A3 0F FE */ srwi r3, r29, 0x1f +/* 801B4D58 001B1CB8 80 1F 00 00 */ lwz r0, 0(r31) +/* 801B4D5C 001B1CBC 7C 83 EA 14 */ add r4, r3, r29 +/* 801B4D60 001B1CC0 38 61 00 10 */ addi r3, r1, 0x10 +/* 801B4D64 001B1CC4 7C 9C 0E 70 */ srawi r28, r4, 1 +/* 801B4D68 001B1CC8 90 01 00 10 */ stw r0, 0x10(r1) +/* 801B4D6C 001B1CCC 7F 84 E3 78 */ mr r4, r28 +/* 801B4D70 001B1CD0 48 00 01 51 */ bl "advance,Q24rstl17rmemory_allocator>,i>__4rstlFRQ24rstl130pointer_iterator<18CEnergyDrainSource,Q24rstl55vector<18CEnergyDrainSource,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>i" +/* 801B4D74 001B1CD4 80 81 00 10 */ lwz r4, 0x10(r1) +/* 801B4D78 001B1CD8 A0 1B 00 00 */ lhz r0, 0(r27) +/* 801B4D7C 001B1CDC A0 64 00 00 */ lhz r3, 0(r4) +/* 801B4D80 001B1CE0 7C 03 00 40 */ cmplw r3, r0 +/* 801B4D84 001B1CE4 40 80 00 20 */ bge lbl_801B4DA4 +/* 801B4D88 001B1CE8 90 9F 00 00 */ stw r4, 0(r31) +/* 801B4D8C 001B1CEC 7C 7C E8 50 */ subf r3, r28, r29 +/* 801B4D90 001B1CF0 3B A3 FF FF */ addi r29, r3, -1 +/* 801B4D94 001B1CF4 80 7F 00 00 */ lwz r3, 0(r31) +/* 801B4D98 001B1CF8 38 03 00 08 */ addi r0, r3, 8 +/* 801B4D9C 001B1CFC 90 1F 00 00 */ stw r0, 0(r31) +/* 801B4DA0 001B1D00 48 00 00 08 */ b lbl_801B4DA8 +lbl_801B4DA4: +/* 801B4DA4 001B1D04 7F 9D E3 78 */ mr r29, r28 +lbl_801B4DA8: +/* 801B4DA8 001B1D08 2C 1D 00 00 */ cmpwi r29, 0 +/* 801B4DAC 001B1D0C 41 81 FF A8 */ bgt lbl_801B4D54 +/* 801B4DB0 001B1D10 80 1F 00 00 */ lwz r0, 0(r31) +/* 801B4DB4 001B1D14 90 1E 00 00 */ stw r0, 0(r30) +/* 801B4DB8 001B1D18 BB 61 00 1C */ lmw r27, 0x1c(r1) +/* 801B4DBC 001B1D1C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801B4DC0 001B1D20 7C 08 03 A6 */ mtlr r0 +/* 801B4DC4 001B1D24 38 21 00 30 */ addi r1, r1, 0x30 +/* 801B4DC8 001B1D28 4E 80 00 20 */ blr + +.global "reserve__Q24rstl55vector<18CEnergyDrainSource,Q24rstl17rmemory_allocator>Fi" +"reserve__Q24rstl55vector<18CEnergyDrainSource,Q24rstl17rmemory_allocator>Fi": +/* 801B4DCC 001B1D2C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801B4DD0 001B1D30 7C 08 02 A6 */ mflr r0 +/* 801B4DD4 001B1D34 90 01 00 34 */ stw r0, 0x34(r1) +/* 801B4DD8 001B1D38 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801B4DDC 001B1D3C 7C 9F 23 78 */ mr r31, r4 +/* 801B4DE0 001B1D40 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801B4DE4 001B1D44 7C 7E 1B 78 */ mr r30, r3 +/* 801B4DE8 001B1D48 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801B4DEC 001B1D4C 80 03 00 08 */ lwz r0, 8(r3) +/* 801B4DF0 001B1D50 7C 1F 00 00 */ cmpw r31, r0 +/* 801B4DF4 001B1D54 40 81 00 B0 */ ble lbl_801B4EA4 +/* 801B4DF8 001B1D58 57 E3 18 39 */ rlwinm. r3, r31, 3, 0, 0x1c +/* 801B4DFC 001B1D5C 40 82 00 0C */ bne lbl_801B4E08 +/* 801B4E00 001B1D60 3B A0 00 00 */ li r29, 0 +/* 801B4E04 001B1D64 48 00 00 18 */ b lbl_801B4E1C +lbl_801B4E08: +/* 801B4E08 001B1D68 3C 80 80 3D */ lis r4, lbl_803D1630@ha +/* 801B4E0C 001B1D6C 38 A0 00 00 */ li r5, 0 +/* 801B4E10 001B1D70 38 84 16 30 */ addi r4, r4, lbl_803D1630@l +/* 801B4E14 001B1D74 48 16 0A 05 */ bl __nwa__FUlPCcPCc +/* 801B4E18 001B1D78 7C 7D 1B 78 */ mr r29, r3 +lbl_801B4E1C: +/* 801B4E1C 001B1D7C 80 1E 00 04 */ lwz r0, 4(r30) +/* 801B4E20 001B1D80 7F A4 EB 78 */ mr r4, r29 +/* 801B4E24 001B1D84 80 BE 00 0C */ lwz r5, 0xc(r30) +/* 801B4E28 001B1D88 54 00 18 38 */ slwi r0, r0, 3 +/* 801B4E2C 001B1D8C 7C 65 02 14 */ add r3, r5, r0 +/* 801B4E30 001B1D90 90 A1 00 10 */ stw r5, 0x10(r1) +/* 801B4E34 001B1D94 90 61 00 08 */ stw r3, 8(r1) +/* 801B4E38 001B1D98 90 61 00 0C */ stw r3, 0xc(r1) +/* 801B4E3C 001B1D9C 90 A1 00 14 */ stw r5, 0x14(r1) +/* 801B4E40 001B1DA0 48 00 00 24 */ b lbl_801B4E64 +lbl_801B4E44: +/* 801B4E44 001B1DA4 28 04 00 00 */ cmplwi r4, 0 +/* 801B4E48 001B1DA8 41 82 00 14 */ beq lbl_801B4E5C +/* 801B4E4C 001B1DAC A0 05 00 00 */ lhz r0, 0(r5) +/* 801B4E50 001B1DB0 B0 04 00 00 */ sth r0, 0(r4) +/* 801B4E54 001B1DB4 C0 05 00 04 */ lfs f0, 4(r5) +/* 801B4E58 001B1DB8 D0 04 00 04 */ stfs f0, 4(r4) +lbl_801B4E5C: +/* 801B4E5C 001B1DBC 38 84 00 08 */ addi r4, r4, 8 +/* 801B4E60 001B1DC0 38 A5 00 08 */ addi r5, r5, 8 +lbl_801B4E64: +/* 801B4E64 001B1DC4 7C 05 18 40 */ cmplw r5, r3 +/* 801B4E68 001B1DC8 40 82 FF DC */ bne lbl_801B4E44 +/* 801B4E6C 001B1DCC 80 1E 00 04 */ lwz r0, 4(r30) +/* 801B4E70 001B1DD0 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 801B4E74 001B1DD4 54 00 18 38 */ slwi r0, r0, 3 +/* 801B4E78 001B1DD8 7C 64 1B 78 */ mr r4, r3 +/* 801B4E7C 001B1DDC 7C 03 02 14 */ add r0, r3, r0 +/* 801B4E80 001B1DE0 48 00 00 08 */ b lbl_801B4E88 +lbl_801B4E84: +/* 801B4E84 001B1DE4 38 84 00 08 */ addi r4, r4, 8 +lbl_801B4E88: +/* 801B4E88 001B1DE8 7C 04 00 40 */ cmplw r4, r0 +/* 801B4E8C 001B1DEC 40 82 FF F8 */ bne lbl_801B4E84 +/* 801B4E90 001B1DF0 28 03 00 00 */ cmplwi r3, 0 +/* 801B4E94 001B1DF4 41 82 00 08 */ beq lbl_801B4E9C +/* 801B4E98 001B1DF8 48 16 0A 99 */ bl Free__7CMemoryFPCv +lbl_801B4E9C: +/* 801B4E9C 001B1DFC 93 BE 00 0C */ stw r29, 0xc(r30) +/* 801B4EA0 001B1E00 93 FE 00 08 */ stw r31, 8(r30) +lbl_801B4EA4: +/* 801B4EA4 001B1E04 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801B4EA8 001B1E08 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801B4EAC 001B1E0C 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801B4EB0 001B1E10 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801B4EB4 001B1E14 7C 08 03 A6 */ mtlr r0 +/* 801B4EB8 001B1E18 38 21 00 30 */ addi r1, r1, 0x30 +/* 801B4EBC 001B1E1C 4E 80 00 20 */ blr + +.global "advance,Q24rstl17rmemory_allocator>,i>__4rstlFRQ24rstl130pointer_iterator<18CEnergyDrainSource,Q24rstl55vector<18CEnergyDrainSource,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>i" +"advance,Q24rstl17rmemory_allocator>,i>__4rstlFRQ24rstl130pointer_iterator<18CEnergyDrainSource,Q24rstl55vector<18CEnergyDrainSource,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>i": +/* 801B4EC0 001B1E20 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B4EC4 001B1E24 7C 08 02 A6 */ mflr r0 +/* 801B4EC8 001B1E28 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B4ECC 001B1E2C 38 A1 00 0C */ addi r5, r1, 0xc +/* 801B4ED0 001B1E30 88 01 00 08 */ lbz r0, 8(r1) +/* 801B4ED4 001B1E34 98 01 00 0C */ stb r0, 0xc(r1) +/* 801B4ED8 001B1E38 48 00 00 15 */ bl "__advance,Q24rstl17rmemory_allocator>,i>__4rstlFRQ24rstl130pointer_iterator<18CEnergyDrainSource,Q24rstl55vector<18CEnergyDrainSource,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>iQ24rstl26random_access_iterator_tag" +/* 801B4EDC 001B1E3C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B4EE0 001B1E40 7C 08 03 A6 */ mtlr r0 +/* 801B4EE4 001B1E44 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B4EE8 001B1E48 4E 80 00 20 */ blr + +.global "__advance,Q24rstl17rmemory_allocator>,i>__4rstlFRQ24rstl130pointer_iterator<18CEnergyDrainSource,Q24rstl55vector<18CEnergyDrainSource,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>iQ24rstl26random_access_iterator_tag" +"__advance,Q24rstl17rmemory_allocator>,i>__4rstlFRQ24rstl130pointer_iterator<18CEnergyDrainSource,Q24rstl55vector<18CEnergyDrainSource,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>iQ24rstl26random_access_iterator_tag": +/* 801B4EEC 001B1E4C 80 A3 00 00 */ lwz r5, 0(r3) +/* 801B4EF0 001B1E50 54 80 18 38 */ slwi r0, r4, 3 +/* 801B4EF4 001B1E54 7C 05 02 14 */ add r0, r5, r0 +/* 801B4EF8 001B1E58 90 03 00 00 */ stw r0, 0(r3) +/* 801B4EFC 001B1E5C 4E 80 00 20 */ blr + +.global "distance,Q24rstl17rmemory_allocator>>__4rstlFQ24rstl130pointer_iterator<18CEnergyDrainSource,Q24rstl55vector<18CEnergyDrainSource,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Q24rstl130pointer_iterator<18CEnergyDrainSource,Q24rstl55vector<18CEnergyDrainSource,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>" +"distance,Q24rstl17rmemory_allocator>>__4rstlFQ24rstl130pointer_iterator<18CEnergyDrainSource,Q24rstl55vector<18CEnergyDrainSource,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Q24rstl130pointer_iterator<18CEnergyDrainSource,Q24rstl55vector<18CEnergyDrainSource,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>": +/* 801B4F00 001B1E60 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801B4F04 001B1E64 7C 08 02 A6 */ mflr r0 +/* 801B4F08 001B1E68 90 01 00 24 */ stw r0, 0x24(r1) +/* 801B4F0C 001B1E6C 38 A1 00 0C */ addi r5, r1, 0xc +/* 801B4F10 001B1E70 88 E1 00 08 */ lbz r7, 8(r1) +/* 801B4F14 001B1E74 80 C4 00 00 */ lwz r6, 0(r4) +/* 801B4F18 001B1E78 38 81 00 10 */ addi r4, r1, 0x10 +/* 801B4F1C 001B1E7C 80 03 00 00 */ lwz r0, 0(r3) +/* 801B4F20 001B1E80 38 61 00 14 */ addi r3, r1, 0x14 +/* 801B4F24 001B1E84 90 C1 00 10 */ stw r6, 0x10(r1) +/* 801B4F28 001B1E88 98 E1 00 0C */ stb r7, 0xc(r1) +/* 801B4F2C 001B1E8C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B4F30 001B1E90 48 00 00 15 */ bl "__distance,Q24rstl17rmemory_allocator>>__4rstlFQ24rstl130pointer_iterator<18CEnergyDrainSource,Q24rstl55vector<18CEnergyDrainSource,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Q24rstl130pointer_iterator<18CEnergyDrainSource,Q24rstl55vector<18CEnergyDrainSource,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Q24rstl26random_access_iterator_tag" +/* 801B4F34 001B1E94 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801B4F38 001B1E98 7C 08 03 A6 */ mtlr r0 +/* 801B4F3C 001B1E9C 38 21 00 20 */ addi r1, r1, 0x20 +/* 801B4F40 001B1EA0 4E 80 00 20 */ blr + +.global "__distance,Q24rstl17rmemory_allocator>>__4rstlFQ24rstl130pointer_iterator<18CEnergyDrainSource,Q24rstl55vector<18CEnergyDrainSource,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Q24rstl130pointer_iterator<18CEnergyDrainSource,Q24rstl55vector<18CEnergyDrainSource,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Q24rstl26random_access_iterator_tag" +"__distance,Q24rstl17rmemory_allocator>>__4rstlFQ24rstl130pointer_iterator<18CEnergyDrainSource,Q24rstl55vector<18CEnergyDrainSource,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Q24rstl130pointer_iterator<18CEnergyDrainSource,Q24rstl55vector<18CEnergyDrainSource,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Q24rstl26random_access_iterator_tag": +/* 801B4F44 001B1EA4 80 63 00 00 */ lwz r3, 0(r3) +/* 801B4F48 001B1EA8 80 04 00 00 */ lwz r0, 0(r4) +/* 801B4F4C 001B1EAC 7C 03 00 50 */ subf r0, r3, r0 +/* 801B4F50 001B1EB0 7C 00 1E 70 */ srawi r0, r0, 3 +/* 801B4F54 001B1EB4 7C 60 01 94 */ addze r3, r0 +/* 801B4F58 001B1EB8 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Player/CSaveWorld.s b/asm/Kyoto_CWD/Player/CSaveWorld.s new file mode 100644 index 00000000..857fe344 --- /dev/null +++ b/asm/Kyoto_CWD/Player/CSaveWorld.s @@ -0,0 +1,2774 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global sub_80248ddc +sub_80248ddc: +/* 80248DDC 00245D3C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80248DE0 00245D40 7C 08 02 A6 */ mflr r0 +/* 80248DE4 00245D44 90 01 00 34 */ stw r0, 0x34(r1) +/* 80248DE8 00245D48 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80248DEC 00245D4C 7C 7F 1B 78 */ mr r31, r3 +/* 80248DF0 00245D50 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80248DF4 00245D54 80 04 00 10 */ lwz r0, 0x10(r4) +/* 80248DF8 00245D58 83 C4 00 18 */ lwz r30, 0x18(r4) +/* 80248DFC 00245D5C 1C 00 00 4C */ mulli r0, r0, 0x4c +/* 80248E00 00245D60 7C 9E 02 14 */ add r4, r30, r0 +/* 80248E04 00245D64 48 00 00 94 */ b lbl_80248E98 +lbl_80248E08: +/* 80248E08 00245D68 80 1E 00 14 */ lwz r0, 0x14(r30) +/* 80248E0C 00245D6C 80 7E 00 1C */ lwz r3, 0x1c(r30) +/* 80248E10 00245D70 54 00 10 3A */ slwi r0, r0, 2 +/* 80248E14 00245D74 7C C3 02 14 */ add r6, r3, r0 +/* 80248E18 00245D78 90 61 00 1C */ stw r3, 0x1c(r1) +/* 80248E1C 00245D7C 90 C1 00 14 */ stw r6, 0x14(r1) +/* 80248E20 00245D80 90 C1 00 18 */ stw r6, 0x18(r1) +/* 80248E24 00245D84 90 61 00 20 */ stw r3, 0x20(r1) +/* 80248E28 00245D88 48 00 00 10 */ b lbl_80248E38 +lbl_80248E2C: +/* 80248E2C 00245D8C 80 61 00 20 */ lwz r3, 0x20(r1) +/* 80248E30 00245D90 38 03 00 04 */ addi r0, r3, 4 +/* 80248E34 00245D94 90 01 00 20 */ stw r0, 0x20(r1) +lbl_80248E38: +/* 80248E38 00245D98 80 01 00 20 */ lwz r0, 0x20(r1) +/* 80248E3C 00245D9C 7C 00 30 40 */ cmplw r0, r6 +/* 80248E40 00245DA0 41 82 00 14 */ beq lbl_80248E54 +/* 80248E44 00245DA4 80 61 00 20 */ lwz r3, 0x20(r1) +/* 80248E48 00245DA8 80 03 00 00 */ lwz r0, 0(r3) +/* 80248E4C 00245DAC 7C 05 00 40 */ cmplw r5, r0 +/* 80248E50 00245DB0 40 82 FF DC */ bne lbl_80248E2C +lbl_80248E54: +/* 80248E54 00245DB4 80 01 00 20 */ lwz r0, 0x20(r1) +/* 80248E58 00245DB8 80 61 00 20 */ lwz r3, 0x20(r1) +/* 80248E5C 00245DBC 7C 00 30 40 */ cmplw r0, r6 +/* 80248E60 00245DC0 90 61 00 24 */ stw r3, 0x24(r1) +/* 80248E64 00245DC4 41 82 00 30 */ beq lbl_80248E94 +/* 80248E68 00245DC8 90 61 00 08 */ stw r3, 8(r1) +/* 80248E6C 00245DCC 38 61 00 10 */ addi r3, r1, 0x10 +/* 80248E70 00245DD0 38 81 00 08 */ addi r4, r1, 8 +/* 80248E74 00245DD4 80 1E 00 1C */ lwz r0, 0x1c(r30) +/* 80248E78 00245DD8 90 01 00 0C */ stw r0, 0xc(r1) +/* 80248E7C 00245DDC 90 01 00 10 */ stw r0, 0x10(r1) +/* 80248E80 00245DE0 48 00 1F 2D */ bl sub_8024adac +/* 80248E84 00245DE4 80 1E 00 00 */ lwz r0, 0(r30) +/* 80248E88 00245DE8 90 1F 00 00 */ stw r0, 0(r31) +/* 80248E8C 00245DEC 90 7F 00 04 */ stw r3, 4(r31) +/* 80248E90 00245DF0 48 00 00 20 */ b lbl_80248EB0 +lbl_80248E94: +/* 80248E94 00245DF4 3B DE 00 4C */ addi r30, r30, 0x4c +lbl_80248E98: +/* 80248E98 00245DF8 7C 1E 20 40 */ cmplw r30, r4 +/* 80248E9C 00245DFC 40 82 FF 6C */ bne lbl_80248E08 +/* 80248EA0 00245E00 80 02 B8 88 */ lwz r0, lbl_805AD5A8@sda21(r2) +/* 80248EA4 00245E04 90 1F 00 00 */ stw r0, 0(r31) +/* 80248EA8 00245E08 80 0D 97 04 */ lwz r0, lbl_805A82C4@sda21(r13) +/* 80248EAC 00245E0C 90 1F 00 04 */ stw r0, 4(r31) +lbl_80248EB0: +/* 80248EB0 00245E10 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80248EB4 00245E14 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80248EB8 00245E18 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80248EBC 00245E1C 7C 08 03 A6 */ mtlr r0 +/* 80248EC0 00245E20 38 21 00 30 */ addi r1, r1, 0x30 +/* 80248EC4 00245E24 4E 80 00 20 */ blr + +.global GetFrontEndName__16CSaveWorldMemoryCFv +GetFrontEndName__16CSaveWorldMemoryCFv: +/* 80248EC8 00245E28 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80248ECC 00245E2C 7C 08 02 A6 */ mflr r0 +/* 80248ED0 00245E30 90 01 00 14 */ stw r0, 0x14(r1) +/* 80248ED4 00245E34 88 03 00 38 */ lbz r0, 0x38(r3) +/* 80248ED8 00245E38 28 00 00 00 */ cmplwi r0, 0 +/* 80248EDC 00245E3C 41 82 00 1C */ beq lbl_80248EF8 +/* 80248EE0 00245E40 80 63 00 34 */ lwz r3, 0x34(r3) +/* 80248EE4 00245E44 28 03 00 00 */ cmplwi r3, 0 +/* 80248EE8 00245E48 41 82 00 10 */ beq lbl_80248EF8 +/* 80248EEC 00245E4C 38 80 00 00 */ li r4, 0 +/* 80248EF0 00245E50 48 10 D8 0D */ bl GetString__12CStringTableCFi +/* 80248EF4 00245E54 48 00 00 08 */ b lbl_80248EFC +lbl_80248EF8: +/* 80248EF8 00245E58 38 60 00 00 */ li r3, 0 +lbl_80248EFC: +/* 80248EFC 00245E5C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80248F00 00245E60 7C 08 03 A6 */ mtlr r0 +/* 80248F04 00245E64 38 21 00 10 */ addi r1, r1, 0x10 +/* 80248F08 00245E68 4E 80 00 20 */ blr + +.global GetSaveWorldMemory__14CMemoryCardSysCFi +GetSaveWorldMemory__14CMemoryCardSysCFi: +/* 80248F0C 00245E6C 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80248F10 00245E70 7C 08 02 A6 */ mflr r0 +/* 80248F14 00245E74 90 01 00 44 */ stw r0, 0x44(r1) +/* 80248F18 00245E78 38 A1 00 24 */ addi r5, r1, 0x24 +/* 80248F1C 00245E7C 89 21 00 14 */ lbz r9, 0x14(r1) +/* 80248F20 00245E80 38 C1 00 08 */ addi r6, r1, 8 +/* 80248F24 00245E84 80 03 00 10 */ lwz r0, 0x10(r3) +/* 80248F28 00245E88 38 E1 00 0C */ addi r7, r1, 0xc +/* 80248F2C 00245E8C 81 03 00 18 */ lwz r8, 0x18(r3) +/* 80248F30 00245E90 38 61 00 1C */ addi r3, r1, 0x1c +/* 80248F34 00245E94 1C 00 00 4C */ mulli r0, r0, 0x4c +/* 80248F38 00245E98 90 81 00 08 */ stw r4, 8(r1) +/* 80248F3C 00245E9C 38 81 00 20 */ addi r4, r1, 0x20 +/* 80248F40 00245EA0 99 21 00 10 */ stb r9, 0x10(r1) +/* 80248F44 00245EA4 7C 08 02 14 */ add r0, r8, r0 +/* 80248F48 00245EA8 90 01 00 30 */ stw r0, 0x30(r1) +/* 80248F4C 00245EAC 90 01 00 2C */ stw r0, 0x2c(r1) +/* 80248F50 00245EB0 91 01 00 28 */ stw r8, 0x28(r1) +/* 80248F54 00245EB4 99 21 00 0C */ stb r9, 0xc(r1) +/* 80248F58 00245EB8 90 01 00 24 */ stw r0, 0x24(r1) +/* 80248F5C 00245EBC 91 01 00 20 */ stw r8, 0x20(r1) +/* 80248F60 00245EC0 48 00 1F 69 */ bl sub_8024aec8 +/* 80248F64 00245EC4 80 A1 00 1C */ lwz r5, 0x1c(r1) +/* 80248F68 00245EC8 38 80 00 00 */ li r4, 0 +/* 80248F6C 00245ECC 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 80248F70 00245ED0 90 A1 00 18 */ stw r5, 0x18(r1) +/* 80248F74 00245ED4 7C 05 00 40 */ cmplw r5, r0 +/* 80248F78 00245ED8 41 82 00 18 */ beq lbl_80248F90 +/* 80248F7C 00245EDC 80 61 00 08 */ lwz r3, 8(r1) +/* 80248F80 00245EE0 80 05 00 00 */ lwz r0, 0(r5) +/* 80248F84 00245EE4 7C 03 00 40 */ cmplw r3, r0 +/* 80248F88 00245EE8 41 80 00 08 */ blt lbl_80248F90 +/* 80248F8C 00245EEC 38 80 00 01 */ li r4, 1 +lbl_80248F90: +/* 80248F90 00245EF0 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 80248F94 00245EF4 38 61 00 2C */ addi r3, r1, 0x2c +/* 80248F98 00245EF8 41 82 00 08 */ beq lbl_80248FA0 +/* 80248F9C 00245EFC 38 61 00 18 */ addi r3, r1, 0x18 +lbl_80248FA0: +/* 80248FA0 00245F00 80 63 00 00 */ lwz r3, 0(r3) +/* 80248FA4 00245F04 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80248FA8 00245F08 38 63 00 04 */ addi r3, r3, 4 +/* 80248FAC 00245F0C 7C 08 03 A6 */ mtlr r0 +/* 80248FB0 00245F10 38 21 00 40 */ addi r1, r1, 0x40 +/* 80248FB4 00245F14 4E 80 00 20 */ blr + +.global HasSaveWorldMemory__15CMemoryCardSysFi +HasSaveWorldMemory__15CMemoryCardSysFi: +/* 80248FB8 00245F18 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80248FBC 00245F1C 7C 08 02 A6 */ mflr r0 +/* 80248FC0 00245F20 90 01 00 44 */ stw r0, 0x44(r1) +/* 80248FC4 00245F24 38 A1 00 24 */ addi r5, r1, 0x24 +/* 80248FC8 00245F28 89 21 00 14 */ lbz r9, 0x14(r1) +/* 80248FCC 00245F2C 38 C1 00 08 */ addi r6, r1, 8 +/* 80248FD0 00245F30 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80248FD4 00245F34 7C 7F 1B 78 */ mr r31, r3 +/* 80248FD8 00245F38 38 E1 00 0C */ addi r7, r1, 0xc +/* 80248FDC 00245F3C 80 03 00 10 */ lwz r0, 0x10(r3) +/* 80248FE0 00245F40 38 61 00 1C */ addi r3, r1, 0x1c +/* 80248FE4 00245F44 81 1F 00 18 */ lwz r8, 0x18(r31) +/* 80248FE8 00245F48 1C 00 00 4C */ mulli r0, r0, 0x4c +/* 80248FEC 00245F4C 90 81 00 08 */ stw r4, 8(r1) +/* 80248FF0 00245F50 38 81 00 20 */ addi r4, r1, 0x20 +/* 80248FF4 00245F54 99 21 00 10 */ stb r9, 0x10(r1) +/* 80248FF8 00245F58 7C 08 02 14 */ add r0, r8, r0 +/* 80248FFC 00245F5C 90 01 00 30 */ stw r0, 0x30(r1) +/* 80249000 00245F60 90 01 00 2C */ stw r0, 0x2c(r1) +/* 80249004 00245F64 91 01 00 28 */ stw r8, 0x28(r1) +/* 80249008 00245F68 99 21 00 0C */ stb r9, 0xc(r1) +/* 8024900C 00245F6C 90 01 00 24 */ stw r0, 0x24(r1) +/* 80249010 00245F70 91 01 00 20 */ stw r8, 0x20(r1) +/* 80249014 00245F74 48 00 1E B5 */ bl sub_8024aec8 +/* 80249018 00245F78 80 A1 00 1C */ lwz r5, 0x1c(r1) +/* 8024901C 00245F7C 38 80 00 00 */ li r4, 0 +/* 80249020 00245F80 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 80249024 00245F84 90 A1 00 18 */ stw r5, 0x18(r1) +/* 80249028 00245F88 7C 05 00 40 */ cmplw r5, r0 +/* 8024902C 00245F8C 41 82 00 18 */ beq lbl_80249044 +/* 80249030 00245F90 80 61 00 08 */ lwz r3, 8(r1) +/* 80249034 00245F94 80 05 00 00 */ lwz r0, 0(r5) +/* 80249038 00245F98 7C 03 00 40 */ cmplw r3, r0 +/* 8024903C 00245F9C 41 80 00 08 */ blt lbl_80249044 +/* 80249040 00245FA0 38 80 00 01 */ li r4, 1 +lbl_80249044: +/* 80249044 00245FA4 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 80249048 00245FA8 38 81 00 2C */ addi r4, r1, 0x2c +/* 8024904C 00245FAC 41 82 00 08 */ beq lbl_80249054 +/* 80249050 00245FB0 38 81 00 18 */ addi r4, r1, 0x18 +lbl_80249054: +/* 80249054 00245FB4 80 1F 00 10 */ lwz r0, 0x10(r31) +/* 80249058 00245FB8 80 7F 00 18 */ lwz r3, 0x18(r31) +/* 8024905C 00245FBC 1C 00 00 4C */ mulli r0, r0, 0x4c +/* 80249060 00245FC0 80 84 00 00 */ lwz r4, 0(r4) +/* 80249064 00245FC4 7C 03 02 14 */ add r0, r3, r0 +/* 80249068 00245FC8 7C 64 00 50 */ subf r3, r4, r0 +/* 8024906C 00245FCC 7C 00 20 50 */ subf r0, r0, r4 +/* 80249070 00245FD0 7C 60 03 78 */ or r0, r3, r0 +/* 80249074 00245FD4 54 03 0F FE */ srwi r3, r0, 0x1f +/* 80249078 00245FD8 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8024907C 00245FDC 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80249080 00245FE0 7C 08 03 A6 */ mtlr r0 +/* 80249084 00245FE4 38 21 00 40 */ addi r1, r1, 0x40 +/* 80249088 00245FE8 4E 80 00 20 */ blr + +.global InitializePump__14CMemoryCardSysFv +InitializePump__14CMemoryCardSysFv: +/* 8024908C 00245FEC 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 80249090 00245FF0 7C 08 02 A6 */ mflr r0 +/* 80249094 00245FF4 90 01 00 84 */ stw r0, 0x84(r1) +/* 80249098 00245FF8 BF 01 00 60 */ stmw r24, 0x60(r1) +/* 8024909C 00245FFC 7C 78 1B 78 */ mr r24, r3 +/* 802490A0 00246000 83 43 00 1C */ lwz r26, 0x1c(r3) +/* 802490A4 00246004 28 1A 00 00 */ cmplwi r26, 0 +/* 802490A8 00246008 40 82 00 E4 */ bne lbl_8024918C +/* 802490AC 0024600C 83 58 00 18 */ lwz r26, 0x18(r24) +/* 802490B0 00246010 48 00 00 74 */ b lbl_80249124 +lbl_802490B4: +/* 802490B4 00246014 88 1A 00 3C */ lbz r0, 0x3c(r26) +/* 802490B8 00246018 28 00 00 00 */ cmplwi r0, 0 +/* 802490BC 0024601C 41 82 00 64 */ beq lbl_80249120 +/* 802490C0 00246020 3B 3A 00 30 */ addi r25, r26, 0x30 +/* 802490C4 00246024 80 1A 00 38 */ lwz r0, 0x38(r26) +/* 802490C8 00246028 28 00 00 00 */ cmplwi r0, 0 +/* 802490CC 0024602C 41 82 00 0C */ beq lbl_802490D8 +/* 802490D0 00246030 38 60 00 01 */ li r3, 1 +/* 802490D4 00246034 48 00 00 3C */ b lbl_80249110 +lbl_802490D8: +/* 802490D8 00246038 88 19 00 04 */ lbz r0, 4(r25) +/* 802490DC 0024603C 28 00 00 00 */ cmplwi r0, 0 +/* 802490E0 00246040 41 82 00 2C */ beq lbl_8024910C +/* 802490E4 00246044 80 79 00 00 */ lwz r3, 0(r25) +/* 802490E8 00246048 80 03 00 10 */ lwz r0, 0x10(r3) +/* 802490EC 0024604C 28 00 00 00 */ cmplwi r0, 0 +/* 802490F0 00246050 41 82 00 1C */ beq lbl_8024910C +/* 802490F4 00246054 7F 23 CB 78 */ mr r3, r25 +/* 802490F8 00246058 48 0F 7D 15 */ bl GetObj__6CTokenFv +/* 802490FC 0024605C 80 03 00 04 */ lwz r0, 4(r3) +/* 80249100 00246060 38 60 00 01 */ li r3, 1 +/* 80249104 00246064 90 19 00 08 */ stw r0, 8(r25) +/* 80249108 00246068 48 00 00 08 */ b lbl_80249110 +lbl_8024910C: +/* 8024910C 0024606C 38 60 00 00 */ li r3, 0 +lbl_80249110: +/* 80249110 00246070 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80249114 00246074 40 82 00 0C */ bne lbl_80249120 +/* 80249118 00246078 38 60 00 00 */ li r3, 0 +/* 8024911C 0024607C 48 00 04 34 */ b lbl_80249550 +lbl_80249120: +/* 80249120 00246080 3B 5A 00 4C */ addi r26, r26, 0x4c +lbl_80249124: +/* 80249124 00246084 80 18 00 10 */ lwz r0, 0x10(r24) +/* 80249128 00246088 80 78 00 18 */ lwz r3, 0x18(r24) +/* 8024912C 0024608C 1C 00 00 4C */ mulli r0, r0, 0x4c +/* 80249130 00246090 7C 03 02 14 */ add r0, r3, r0 +/* 80249134 00246094 7C 1A 00 40 */ cmplw r26, r0 +/* 80249138 00246098 40 82 FF 7C */ bne lbl_802490B4 +/* 8024913C 0024609C 80 18 00 08 */ lwz r0, 8(r24) +/* 80249140 002460A0 28 00 00 00 */ cmplwi r0, 0 +/* 80249144 002460A4 41 82 00 0C */ beq lbl_80249150 +/* 80249148 002460A8 38 60 00 01 */ li r3, 1 +/* 8024914C 002460AC 48 00 04 04 */ b lbl_80249550 +lbl_80249150: +/* 80249150 002460B0 88 18 00 04 */ lbz r0, 4(r24) +/* 80249154 002460B4 28 00 00 00 */ cmplwi r0, 0 +/* 80249158 002460B8 41 82 00 2C */ beq lbl_80249184 +/* 8024915C 002460BC 80 78 00 00 */ lwz r3, 0(r24) +/* 80249160 002460C0 80 03 00 10 */ lwz r0, 0x10(r3) +/* 80249164 002460C4 28 00 00 00 */ cmplwi r0, 0 +/* 80249168 002460C8 41 82 00 1C */ beq lbl_80249184 +/* 8024916C 002460CC 7F 03 C3 78 */ mr r3, r24 +/* 80249170 002460D0 48 0F 7C 9D */ bl GetObj__6CTokenFv +/* 80249174 002460D4 80 03 00 04 */ lwz r0, 4(r3) +/* 80249178 002460D8 38 60 00 01 */ li r3, 1 +/* 8024917C 002460DC 90 18 00 08 */ stw r0, 8(r24) +/* 80249180 002460E0 48 00 03 D0 */ b lbl_80249550 +lbl_80249184: +/* 80249184 002460E4 38 60 00 00 */ li r3, 0 +/* 80249188 002460E8 48 00 03 C8 */ b lbl_80249550 +lbl_8024918C: +/* 8024918C 002460EC 83 BA 00 0C */ lwz r29, 0xc(r26) +/* 80249190 002460F0 3B 78 00 34 */ addi r27, r24, 0x34 +/* 80249194 002460F4 3B 20 00 01 */ li r25, 1 +/* 80249198 002460F8 48 00 03 48 */ b lbl_802494E0 +lbl_8024919C: +/* 8024919C 002460FC 7F A3 EB 78 */ mr r3, r29 +/* 802491A0 00246100 48 00 06 5D */ bl InitializePump__20CMemorySomethingElseFv +/* 802491A4 00246104 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 802491A8 00246108 41 82 03 30 */ beq lbl_802494D8 +/* 802491AC 0024610C 80 1D 00 38 */ lwz r0, 0x38(r29) +/* 802491B0 00246110 28 00 00 00 */ cmplwi r0, 0 +/* 802491B4 00246114 41 82 03 28 */ beq lbl_802494DC +/* 802491B8 00246118 80 9D 00 00 */ lwz r4, 0(r29) +/* 802491BC 0024611C 7F 03 C3 78 */ mr r3, r24 +/* 802491C0 00246120 4B FF FD 4D */ bl GetSaveWorldMemory__14CMemoryCardSysCFi +/* 802491C4 00246124 7C 7F 1B 78 */ mr r31, r3 +/* 802491C8 00246128 80 63 00 04 */ lwz r3, 4(r3) +/* 802491CC 0024612C 3C 03 00 01 */ addis r0, r3, 1 +/* 802491D0 00246130 28 00 FF FF */ cmplwi r0, 0xffff +/* 802491D4 00246134 40 82 00 0C */ bne lbl_802491E0 +/* 802491D8 00246138 80 1D 00 08 */ lwz r0, 8(r29) +/* 802491DC 0024613C 90 1F 00 04 */ stw r0, 4(r31) +lbl_802491E0: +/* 802491E0 00246140 80 7F 00 00 */ lwz r3, 0(r31) +/* 802491E4 00246144 3C 03 00 01 */ addis r0, r3, 1 +/* 802491E8 00246148 28 00 FF FF */ cmplwi r0, 0xffff +/* 802491EC 0024614C 40 82 00 0C */ bne lbl_802491F8 +/* 802491F0 00246150 80 1D 00 04 */ lwz r0, 4(r29) +/* 802491F4 00246154 90 1F 00 00 */ stw r0, 0(r31) +lbl_802491F8: +/* 802491F8 00246158 38 7F 00 0C */ addi r3, r31, 0xc +/* 802491FC 0024615C 38 9D 00 0C */ addi r4, r29, 0xc +/* 80249200 00246160 4B E1 A4 FD */ bl "clear__Q24rstl37vectorFv" +/* 80249204 00246164 38 7F 00 1C */ addi r3, r31, 0x1c +/* 80249208 00246168 38 9D 00 1C */ addi r4, r29, 0x1c +/* 8024920C 0024616C 4B FE AF 61 */ bl sub_8023416c +/* 80249210 00246170 80 9D 00 38 */ lwz r4, 0x38(r29) +/* 80249214 00246174 38 78 00 20 */ addi r3, r24, 0x20 +/* 80249218 00246178 83 C4 00 08 */ lwz r30, 8(r4) +/* 8024921C 0024617C 80 1E 00 00 */ lwz r0, 0(r30) +/* 80249220 00246180 90 1F 00 08 */ stw r0, 8(r31) +/* 80249224 00246184 80 98 00 24 */ lwz r4, 0x24(r24) +/* 80249228 00246188 80 1E 00 48 */ lwz r0, 0x48(r30) +/* 8024922C 0024618C 7C 84 02 14 */ add r4, r4, r0 +/* 80249230 00246190 4B DB F8 1D */ bl "reserve__Q24rstl47vector<10SScanState,Q24rstl17rmemory_allocator>Fi" +/* 80249234 00246194 83 9E 00 50 */ lwz r28, 0x50(r30) +/* 80249238 00246198 48 00 00 F0 */ b lbl_80249328 +lbl_8024923C: +/* 8024923C 0024619C 80 F8 00 24 */ lwz r7, 0x24(r24) +/* 80249240 002461A0 80 78 00 2C */ lwz r3, 0x2c(r24) +/* 80249244 002461A4 54 E0 18 38 */ slwi r0, r7, 3 +/* 80249248 002461A8 7C C3 02 14 */ add r6, r3, r0 +/* 8024924C 002461AC 90 61 00 30 */ stw r3, 0x30(r1) +/* 80249250 002461B0 90 C1 00 24 */ stw r6, 0x24(r1) +/* 80249254 002461B4 90 61 00 34 */ stw r3, 0x34(r1) +/* 80249258 002461B8 90 C1 00 28 */ stw r6, 0x28(r1) +/* 8024925C 002461BC 90 C1 00 2C */ stw r6, 0x2c(r1) +/* 80249260 002461C0 48 00 00 10 */ b lbl_80249270 +lbl_80249264: +/* 80249264 002461C4 80 61 00 34 */ lwz r3, 0x34(r1) +/* 80249268 002461C8 38 03 00 08 */ addi r0, r3, 8 +/* 8024926C 002461CC 90 01 00 34 */ stw r0, 0x34(r1) +lbl_80249270: +/* 80249270 002461D0 80 A1 00 34 */ lwz r5, 0x34(r1) +/* 80249274 002461D4 7C 05 30 40 */ cmplw r5, r6 +/* 80249278 002461D8 41 82 00 34 */ beq lbl_802492AC +/* 8024927C 002461DC 80 65 00 00 */ lwz r3, 0(r5) +/* 80249280 002461E0 38 80 00 00 */ li r4, 0 +/* 80249284 002461E4 80 1C 00 00 */ lwz r0, 0(r28) +/* 80249288 002461E8 7C 03 00 40 */ cmplw r3, r0 +/* 8024928C 002461EC 40 82 00 18 */ bne lbl_802492A4 +/* 80249290 002461F0 80 65 00 04 */ lwz r3, 4(r5) +/* 80249294 002461F4 80 1C 00 04 */ lwz r0, 4(r28) +/* 80249298 002461F8 7C 03 00 40 */ cmplw r3, r0 +/* 8024929C 002461FC 40 82 00 08 */ bne lbl_802492A4 +/* 802492A0 00246200 38 80 00 01 */ li r4, 1 +lbl_802492A4: +/* 802492A4 00246204 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 802492A8 00246208 41 82 FF BC */ beq lbl_80249264 +lbl_802492AC: +/* 802492AC 0024620C 80 61 00 34 */ lwz r3, 0x34(r1) +/* 802492B0 00246210 80 01 00 24 */ lwz r0, 0x24(r1) +/* 802492B4 00246214 7C 03 00 40 */ cmplw r3, r0 +/* 802492B8 00246218 40 82 00 6C */ bne lbl_80249324 +/* 802492BC 0024621C 80 18 00 28 */ lwz r0, 0x28(r24) +/* 802492C0 00246220 7C 07 00 00 */ cmpw r7, r0 +/* 802492C4 00246224 41 80 00 1C */ blt lbl_802492E0 +/* 802492C8 00246228 2C 00 00 00 */ cmpwi r0, 0 +/* 802492CC 0024622C 38 78 00 20 */ addi r3, r24, 0x20 +/* 802492D0 00246230 38 80 00 04 */ li r4, 4 +/* 802492D4 00246234 41 82 00 08 */ beq lbl_802492DC +/* 802492D8 00246238 54 04 08 3C */ slwi r4, r0, 1 +lbl_802492DC: +/* 802492DC 0024623C 4B DB F7 71 */ bl "reserve__Q24rstl47vector<10SScanState,Q24rstl17rmemory_allocator>Fi" +lbl_802492E0: +/* 802492E0 00246240 80 18 00 24 */ lwz r0, 0x24(r24) +/* 802492E4 00246244 80 78 00 2C */ lwz r3, 0x2c(r24) +/* 802492E8 00246248 54 00 18 38 */ slwi r0, r0, 3 +/* 802492EC 0024624C 7C 63 02 15 */ add. r3, r3, r0 +/* 802492F0 00246250 41 82 00 14 */ beq lbl_80249304 +/* 802492F4 00246254 80 1C 00 00 */ lwz r0, 0(r28) +/* 802492F8 00246258 90 03 00 00 */ stw r0, 0(r3) +/* 802492FC 0024625C 80 1C 00 04 */ lwz r0, 4(r28) +/* 80249300 00246260 90 03 00 04 */ stw r0, 4(r3) +lbl_80249304: +/* 80249304 00246264 80 78 00 24 */ lwz r3, 0x24(r24) +/* 80249308 00246268 38 03 00 01 */ addi r0, r3, 1 +/* 8024930C 0024626C 90 18 00 24 */ stw r0, 0x24(r24) +/* 80249310 00246270 80 1C 00 04 */ lwz r0, 4(r28) +/* 80249314 00246274 54 04 10 3A */ slwi r4, r0, 2 +/* 80249318 00246278 7C 7B 20 2E */ lwzx r3, r27, r4 +/* 8024931C 0024627C 38 03 00 01 */ addi r0, r3, 1 +/* 80249320 00246280 7C 1B 21 2E */ stwx r0, r27, r4 +lbl_80249324: +/* 80249324 00246284 3B 9C 00 08 */ addi r28, r28, 8 +lbl_80249328: +/* 80249328 00246288 80 1E 00 48 */ lwz r0, 0x48(r30) +/* 8024932C 0024628C 80 7E 00 50 */ lwz r3, 0x50(r30) +/* 80249330 00246290 54 00 18 38 */ slwi r0, r0, 3 +/* 80249334 00246294 7C 03 02 14 */ add r0, r3, r0 +/* 80249338 00246298 7C 1C 00 40 */ cmplw r28, r0 +/* 8024933C 0024629C 40 82 FF 00 */ bne lbl_8024923C +/* 80249340 002462A0 88 1F 00 44 */ lbz r0, 0x44(r31) +/* 80249344 002462A4 80 9D 00 38 */ lwz r4, 0x38(r29) +/* 80249348 002462A8 28 00 00 00 */ cmplwi r0, 0 +/* 8024934C 002462AC 40 82 00 1C */ bne lbl_80249368 +/* 80249350 002462B0 34 7F 00 3C */ addic. r3, r31, 0x3c +/* 80249354 002462B4 41 82 00 08 */ beq lbl_8024935C +/* 80249358 002462B8 48 0F 7B 51 */ bl __ct__6CTokenFRC6CToken +lbl_8024935C: +/* 8024935C 002462BC 38 00 00 01 */ li r0, 1 +/* 80249360 002462C0 98 1F 00 44 */ stb r0, 0x44(r31) +/* 80249364 002462C4 48 00 00 0C */ b lbl_80249370 +lbl_80249368: +/* 80249368 002462C8 38 7F 00 3C */ addi r3, r31, 0x3c +/* 8024936C 002462CC 48 0F 79 59 */ bl __as__6CTokenFRC6CToken +lbl_80249370: +/* 80249370 002462D0 38 61 00 40 */ addi r3, r1, 0x40 +/* 80249374 002462D4 38 1D 00 34 */ addi r0, r29, 0x34 +/* 80249378 002462D8 38 80 00 00 */ li r4, 0 +/* 8024937C 002462DC 7C 03 00 40 */ cmplw r3, r0 +/* 80249380 002462E0 98 81 00 40 */ stb r4, 0x40(r1) +/* 80249384 002462E4 90 81 00 44 */ stw r4, 0x44(r1) +/* 80249388 002462E8 41 82 00 4C */ beq lbl_802493D4 +/* 8024938C 002462EC 88 1D 00 34 */ lbz r0, 0x34(r29) +/* 80249390 002462F0 28 00 00 00 */ cmplwi r0, 0 +/* 80249394 002462F4 41 82 00 28 */ beq lbl_802493BC +/* 80249398 002462F8 83 9D 00 38 */ lwz r28, 0x38(r29) +/* 8024939C 002462FC 28 1C 00 00 */ cmplwi r28, 0 +/* 802493A0 00246300 41 82 00 1C */ beq lbl_802493BC +/* 802493A4 00246304 41 82 00 10 */ beq lbl_802493B4 +/* 802493A8 00246308 7F 83 E3 78 */ mr r3, r28 +/* 802493AC 0024630C 38 80 00 00 */ li r4, 0 +/* 802493B0 00246310 48 0F 7A 91 */ bl __dt__6CTokenFv +lbl_802493B4: +/* 802493B4 00246314 7F 83 E3 78 */ mr r3, r28 +/* 802493B8 00246318 48 0C C5 79 */ bl Free__7CMemoryFPCv +lbl_802493BC: +/* 802493BC 0024631C 88 61 00 40 */ lbz r3, 0x40(r1) +/* 802493C0 00246320 38 00 00 00 */ li r0, 0 +/* 802493C4 00246324 98 7D 00 34 */ stb r3, 0x34(r29) +/* 802493C8 00246328 80 61 00 44 */ lwz r3, 0x44(r1) +/* 802493CC 0024632C 90 7D 00 38 */ stw r3, 0x38(r29) +/* 802493D0 00246330 98 01 00 40 */ stb r0, 0x40(r1) +lbl_802493D4: +/* 802493D4 00246334 88 01 00 40 */ lbz r0, 0x40(r1) +/* 802493D8 00246338 28 00 00 00 */ cmplwi r0, 0 +/* 802493DC 0024633C 41 82 00 28 */ beq lbl_80249404 +/* 802493E0 00246340 83 81 00 44 */ lwz r28, 0x44(r1) +/* 802493E4 00246344 28 1C 00 00 */ cmplwi r28, 0 +/* 802493E8 00246348 41 82 00 1C */ beq lbl_80249404 +/* 802493EC 0024634C 41 82 00 10 */ beq lbl_802493FC +/* 802493F0 00246350 7F 83 E3 78 */ mr r3, r28 +/* 802493F4 00246354 38 80 00 00 */ li r4, 0 +/* 802493F8 00246358 48 0F 7A 49 */ bl __dt__6CTokenFv +lbl_802493FC: +/* 802493FC 0024635C 7F 83 E3 78 */ mr r3, r28 +/* 80249400 00246360 48 0C C5 31 */ bl Free__7CMemoryFPCv +lbl_80249404: +/* 80249404 00246364 80 BF 00 00 */ lwz r5, 0(r31) +/* 80249408 00246368 3C 60 53 54 */ lis r3, 0x53545247@ha +/* 8024940C 0024636C 38 03 52 47 */ addi r0, r3, 0x53545247@l +/* 80249410 00246370 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) +/* 80249414 00246374 90 01 00 48 */ stw r0, 0x48(r1) +/* 80249418 00246378 38 81 00 48 */ addi r4, r1, 0x48 +/* 8024941C 0024637C 90 A1 00 4C */ stw r5, 0x4c(r1) +/* 80249420 00246380 81 83 00 00 */ lwz r12, 0(r3) +/* 80249424 00246384 81 8C 00 18 */ lwz r12, 0x18(r12) +/* 80249428 00246388 7D 89 03 A6 */ mtctr r12 +/* 8024942C 0024638C 4E 80 04 21 */ bctrl +/* 80249430 00246390 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80249434 00246394 41 82 00 A8 */ beq lbl_802494DC +/* 80249438 00246398 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8024943C 0024639C 38 61 00 38 */ addi r3, r1, 0x38 +/* 80249440 002463A0 38 A1 00 48 */ addi r5, r1, 0x48 +/* 80249444 002463A4 81 84 00 00 */ lwz r12, 0(r4) +/* 80249448 002463A8 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8024944C 002463AC 7D 89 03 A6 */ mtctr r12 +/* 80249450 002463B0 4E 80 04 21 */ bctrl +/* 80249454 002463B4 38 61 00 50 */ addi r3, r1, 0x50 +/* 80249458 002463B8 38 81 00 38 */ addi r4, r1, 0x38 +/* 8024945C 002463BC 48 0F 7A 4D */ bl __ct__6CTokenFRC6CToken +/* 80249460 002463C0 38 00 00 00 */ li r0, 0 +/* 80249464 002463C4 90 01 00 58 */ stw r0, 0x58(r1) +/* 80249468 002463C8 88 1F 00 38 */ lbz r0, 0x38(r31) +/* 8024946C 002463CC 28 00 00 00 */ cmplwi r0, 0 +/* 80249470 002463D0 40 82 00 2C */ bne lbl_8024949C +/* 80249474 002463D4 37 9F 00 2C */ addic. r28, r31, 0x2c +/* 80249478 002463D8 41 82 00 18 */ beq lbl_80249490 +/* 8024947C 002463DC 7F 83 E3 78 */ mr r3, r28 +/* 80249480 002463E0 38 81 00 50 */ addi r4, r1, 0x50 +/* 80249484 002463E4 48 0F 7A 25 */ bl __ct__6CTokenFRC6CToken +/* 80249488 002463E8 80 01 00 58 */ lwz r0, 0x58(r1) +/* 8024948C 002463EC 90 1C 00 08 */ stw r0, 8(r28) +lbl_80249490: +/* 80249490 002463F0 38 00 00 01 */ li r0, 1 +/* 80249494 002463F4 98 1F 00 38 */ stb r0, 0x38(r31) +/* 80249498 002463F8 48 00 00 1C */ b lbl_802494B4 +lbl_8024949C: +/* 8024949C 002463FC 3B 9F 00 2C */ addi r28, r31, 0x2c +/* 802494A0 00246400 38 81 00 50 */ addi r4, r1, 0x50 +/* 802494A4 00246404 7F 83 E3 78 */ mr r3, r28 +/* 802494A8 00246408 48 0F 78 1D */ bl __as__6CTokenFRC6CToken +/* 802494AC 0024640C 80 01 00 58 */ lwz r0, 0x58(r1) +/* 802494B0 00246410 90 1C 00 08 */ stw r0, 8(r28) +lbl_802494B4: +/* 802494B4 00246414 38 61 00 50 */ addi r3, r1, 0x50 +/* 802494B8 00246418 38 80 00 00 */ li r4, 0 +/* 802494BC 0024641C 48 0F 79 85 */ bl __dt__6CTokenFv +/* 802494C0 00246420 38 61 00 38 */ addi r3, r1, 0x38 +/* 802494C4 00246424 38 80 FF FF */ li r4, -1 +/* 802494C8 00246428 48 0F 79 79 */ bl __dt__6CTokenFv +/* 802494CC 0024642C 38 7F 00 2C */ addi r3, r31, 0x2c +/* 802494D0 00246430 48 0F 78 B5 */ bl Lock__6CTokenFv +/* 802494D4 00246434 48 00 00 08 */ b lbl_802494DC +lbl_802494D8: +/* 802494D8 00246438 3B 20 00 00 */ li r25, 0 +lbl_802494DC: +/* 802494DC 0024643C 3B BD 00 3C */ addi r29, r29, 0x3c +lbl_802494E0: +/* 802494E0 00246440 80 1A 00 04 */ lwz r0, 4(r26) +/* 802494E4 00246444 80 7A 00 0C */ lwz r3, 0xc(r26) +/* 802494E8 00246448 1C 00 00 3C */ mulli r0, r0, 0x3c +/* 802494EC 0024644C 7C 03 02 14 */ add r0, r3, r0 +/* 802494F0 00246450 7C 1D 00 40 */ cmplw r29, r0 +/* 802494F4 00246454 40 82 FC A8 */ bne lbl_8024919C +/* 802494F8 00246458 57 20 06 3F */ clrlwi. r0, r25, 0x18 +/* 802494FC 0024645C 41 82 00 50 */ beq lbl_8024954C +/* 80249500 00246460 38 78 00 1C */ addi r3, r24, 0x1c +/* 80249504 00246464 38 80 00 00 */ li r4, 0 +/* 80249508 00246468 48 00 00 5D */ bl sub_80249564 +/* 8024950C 0024646C 88 E1 00 10 */ lbz r7, 0x10(r1) +/* 80249510 00246470 38 61 00 14 */ addi r3, r1, 0x14 +/* 80249514 00246474 38 81 00 1C */ addi r4, r1, 0x1c +/* 80249518 00246478 38 A1 00 08 */ addi r5, r1, 8 +/* 8024951C 0024647C 98 E1 00 08 */ stb r7, 8(r1) +/* 80249520 00246480 80 18 00 24 */ lwz r0, 0x24(r24) +/* 80249524 00246484 80 D8 00 2C */ lwz r6, 0x2c(r24) +/* 80249528 00246488 54 00 18 38 */ slwi r0, r0, 3 +/* 8024952C 0024648C 98 E1 00 0C */ stb r7, 0xc(r1) +/* 80249530 00246490 7C C6 02 14 */ add r6, r6, r0 +/* 80249534 00246494 90 C1 00 1C */ stw r6, 0x1c(r1) +/* 80249538 00246498 80 18 00 2C */ lwz r0, 0x2c(r24) +/* 8024953C 0024649C 90 C1 00 20 */ stw r6, 0x20(r1) +/* 80249540 002464A0 90 01 00 18 */ stw r0, 0x18(r1) +/* 80249544 002464A4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80249548 002464A8 4B FC 64 59 */ bl sub_8020f9a0 +lbl_8024954C: +/* 8024954C 002464AC 38 60 00 00 */ li r3, 0 +lbl_80249550: +/* 80249550 002464B0 BB 01 00 60 */ lmw r24, 0x60(r1) +/* 80249554 002464B4 80 01 00 84 */ lwz r0, 0x84(r1) +/* 80249558 002464B8 7C 08 03 A6 */ mtlr r0 +/* 8024955C 002464BC 38 21 00 80 */ addi r1, r1, 0x80 +/* 80249560 002464C0 4E 80 00 20 */ blr + +.global sub_80249564 +sub_80249564: +/* 80249564 002464C4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80249568 002464C8 7C 08 02 A6 */ mflr r0 +/* 8024956C 002464CC 90 01 00 14 */ stw r0, 0x14(r1) +/* 80249570 002464D0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80249574 002464D4 7C 9F 23 78 */ mr r31, r4 +/* 80249578 002464D8 38 80 00 01 */ li r4, 1 +/* 8024957C 002464DC 93 C1 00 08 */ stw r30, 8(r1) +/* 80249580 002464E0 7C 7E 1B 78 */ mr r30, r3 +/* 80249584 002464E4 80 63 00 00 */ lwz r3, 0(r3) +/* 80249588 002464E8 48 00 00 25 */ bl sub_802495ac +/* 8024958C 002464EC 93 FE 00 00 */ stw r31, 0(r30) +/* 80249590 002464F0 7F C3 F3 78 */ mr r3, r30 +/* 80249594 002464F4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80249598 002464F8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024959C 002464FC 83 C1 00 08 */ lwz r30, 8(r1) +/* 802495A0 00246500 7C 08 03 A6 */ mtlr r0 +/* 802495A4 00246504 38 21 00 10 */ addi r1, r1, 0x10 +/* 802495A8 00246508 4E 80 00 20 */ blr + +.global sub_802495ac +sub_802495ac: +/* 802495AC 0024650C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 802495B0 00246510 7C 08 02 A6 */ mflr r0 +/* 802495B4 00246514 90 01 00 24 */ stw r0, 0x24(r1) +/* 802495B8 00246518 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 802495BC 0024651C 7C 9F 23 78 */ mr r31, r4 +/* 802495C0 00246520 93 C1 00 18 */ stw r30, 0x18(r1) +/* 802495C4 00246524 7C 7E 1B 79 */ or. r30, r3, r3 +/* 802495C8 00246528 41 82 00 54 */ beq lbl_8024961C +/* 802495CC 0024652C 80 1E 00 04 */ lwz r0, 4(r30) +/* 802495D0 00246530 38 61 00 14 */ addi r3, r1, 0x14 +/* 802495D4 00246534 80 BE 00 0C */ lwz r5, 0xc(r30) +/* 802495D8 00246538 38 81 00 0C */ addi r4, r1, 0xc +/* 802495DC 0024653C 1C 00 00 3C */ mulli r0, r0, 0x3c +/* 802495E0 00246540 7C A5 02 14 */ add r5, r5, r0 +/* 802495E4 00246544 90 A1 00 0C */ stw r5, 0xc(r1) +/* 802495E8 00246548 80 1E 00 0C */ lwz r0, 0xc(r30) +/* 802495EC 0024654C 90 A1 00 08 */ stw r5, 8(r1) +/* 802495F0 00246550 90 01 00 10 */ stw r0, 0x10(r1) +/* 802495F4 00246554 90 01 00 14 */ stw r0, 0x14(r1) +/* 802495F8 00246558 48 00 00 41 */ bl sub_80249638 +/* 802495FC 0024655C 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 80249600 00246560 28 03 00 00 */ cmplwi r3, 0 +/* 80249604 00246564 41 82 00 08 */ beq lbl_8024960C +/* 80249608 00246568 48 0C C3 29 */ bl Free__7CMemoryFPCv +lbl_8024960C: +/* 8024960C 0024656C 7F E0 07 35 */ extsh. r0, r31 +/* 80249610 00246570 40 81 00 0C */ ble lbl_8024961C +/* 80249614 00246574 7F C3 F3 78 */ mr r3, r30 +/* 80249618 00246578 48 0C C3 19 */ bl Free__7CMemoryFPCv +lbl_8024961C: +/* 8024961C 0024657C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80249620 00246580 7F C3 F3 78 */ mr r3, r30 +/* 80249624 00246584 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80249628 00246588 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8024962C 0024658C 7C 08 03 A6 */ mtlr r0 +/* 80249630 00246590 38 21 00 20 */ addi r1, r1, 0x20 +/* 80249634 00246594 4E 80 00 20 */ blr + +.global sub_80249638 +sub_80249638: +/* 80249638 00246598 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024963C 0024659C 7C 08 02 A6 */ mflr r0 +/* 80249640 002465A0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80249644 002465A4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80249648 002465A8 93 C1 00 08 */ stw r30, 8(r1) +/* 8024964C 002465AC 7C 9E 23 78 */ mr r30, r4 +/* 80249650 002465B0 83 E3 00 00 */ lwz r31, 0(r3) +/* 80249654 002465B4 48 00 00 10 */ b lbl_80249664 +lbl_80249658: +/* 80249658 002465B8 7F E3 FB 78 */ mr r3, r31 +/* 8024965C 002465BC 48 00 00 2D */ bl sub_80249688 +/* 80249660 002465C0 3B FF 00 3C */ addi r31, r31, 0x3c +lbl_80249664: +/* 80249664 002465C4 80 1E 00 00 */ lwz r0, 0(r30) +/* 80249668 002465C8 7C 1F 00 40 */ cmplw r31, r0 +/* 8024966C 002465CC 40 82 FF EC */ bne lbl_80249658 +/* 80249670 002465D0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80249674 002465D4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80249678 002465D8 83 C1 00 08 */ lwz r30, 8(r1) +/* 8024967C 002465DC 7C 08 03 A6 */ mtlr r0 +/* 80249680 002465E0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80249684 002465E4 4E 80 00 20 */ blr + +.global sub_80249688 +sub_80249688: +/* 80249688 002465E8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024968C 002465EC 7C 08 02 A6 */ mflr r0 +/* 80249690 002465F0 38 80 FF FF */ li r4, -1 +/* 80249694 002465F4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80249698 002465F8 48 00 00 15 */ bl sub_802496ac +/* 8024969C 002465FC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 802496A0 00246600 7C 08 03 A6 */ mtlr r0 +/* 802496A4 00246604 38 21 00 10 */ addi r1, r1, 0x10 +/* 802496A8 00246608 4E 80 00 20 */ blr + +.global sub_802496ac +sub_802496ac: +/* 802496AC 0024660C 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 802496B0 00246610 7C 08 02 A6 */ mflr r0 +/* 802496B4 00246614 90 01 00 44 */ stw r0, 0x44(r1) +/* 802496B8 00246618 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 802496BC 0024661C 7C 9F 23 78 */ mr r31, r4 +/* 802496C0 00246620 93 C1 00 38 */ stw r30, 0x38(r1) +/* 802496C4 00246624 7C 7E 1B 79 */ or. r30, r3, r3 +/* 802496C8 00246628 93 A1 00 34 */ stw r29, 0x34(r1) +/* 802496CC 0024662C 41 82 01 10 */ beq lbl_802497DC +/* 802496D0 00246630 34 1E 00 34 */ addic. r0, r30, 0x34 +/* 802496D4 00246634 41 82 00 34 */ beq lbl_80249708 +/* 802496D8 00246638 88 1E 00 34 */ lbz r0, 0x34(r30) +/* 802496DC 0024663C 28 00 00 00 */ cmplwi r0, 0 +/* 802496E0 00246640 41 82 00 28 */ beq lbl_80249708 +/* 802496E4 00246644 83 BE 00 38 */ lwz r29, 0x38(r30) +/* 802496E8 00246648 28 1D 00 00 */ cmplwi r29, 0 +/* 802496EC 0024664C 41 82 00 1C */ beq lbl_80249708 +/* 802496F0 00246650 41 82 00 10 */ beq lbl_80249700 +/* 802496F4 00246654 7F A3 EB 78 */ mr r3, r29 +/* 802496F8 00246658 38 80 00 00 */ li r4, 0 +/* 802496FC 0024665C 48 0F 77 45 */ bl __dt__6CTokenFv +lbl_80249700: +/* 80249700 00246660 7F A3 EB 78 */ mr r3, r29 +/* 80249704 00246664 48 0C C2 2D */ bl Free__7CMemoryFPCv +lbl_80249708: +/* 80249708 00246668 34 1E 00 2C */ addic. r0, r30, 0x2c +/* 8024970C 0024666C 41 82 00 30 */ beq lbl_8024973C +/* 80249710 00246670 88 1E 00 2C */ lbz r0, 0x2c(r30) +/* 80249714 00246674 28 00 00 00 */ cmplwi r0, 0 +/* 80249718 00246678 41 82 00 24 */ beq lbl_8024973C +/* 8024971C 0024667C 80 7E 00 30 */ lwz r3, 0x30(r30) +/* 80249720 00246680 28 03 00 00 */ cmplwi r3, 0 +/* 80249724 00246684 41 82 00 18 */ beq lbl_8024973C +/* 80249728 00246688 81 83 00 00 */ lwz r12, 0(r3) +/* 8024972C 0024668C 38 80 00 01 */ li r4, 1 +/* 80249730 00246690 81 8C 00 08 */ lwz r12, 8(r12) +/* 80249734 00246694 7D 89 03 A6 */ mtctr r12 +/* 80249738 00246698 4E 80 04 21 */ bctrl +lbl_8024973C: +/* 8024973C 0024669C 34 1E 00 1C */ addic. r0, r30, 0x1c +/* 80249740 002466A0 41 82 00 44 */ beq lbl_80249784 +/* 80249744 002466A4 80 1E 00 20 */ lwz r0, 0x20(r30) +/* 80249748 002466A8 80 7E 00 28 */ lwz r3, 0x28(r30) +/* 8024974C 002466AC 54 00 20 36 */ slwi r0, r0, 4 +/* 80249750 002466B0 7C 03 02 14 */ add r0, r3, r0 +/* 80249754 002466B4 90 61 00 1C */ stw r3, 0x1c(r1) +/* 80249758 002466B8 7C 64 1B 78 */ mr r4, r3 +/* 8024975C 002466BC 90 01 00 24 */ stw r0, 0x24(r1) +/* 80249760 002466C0 90 01 00 20 */ stw r0, 0x20(r1) +/* 80249764 002466C4 90 61 00 18 */ stw r3, 0x18(r1) +/* 80249768 002466C8 48 00 00 08 */ b lbl_80249770 +lbl_8024976C: +/* 8024976C 002466CC 38 84 00 10 */ addi r4, r4, 0x10 +lbl_80249770: +/* 80249770 002466D0 7C 04 00 40 */ cmplw r4, r0 +/* 80249774 002466D4 40 82 FF F8 */ bne lbl_8024976C +/* 80249778 002466D8 28 03 00 00 */ cmplwi r3, 0 +/* 8024977C 002466DC 41 82 00 08 */ beq lbl_80249784 +/* 80249780 002466E0 48 0C C1 B1 */ bl Free__7CMemoryFPCv +lbl_80249784: +/* 80249784 002466E4 34 1E 00 0C */ addic. r0, r30, 0xc +/* 80249788 002466E8 41 82 00 44 */ beq lbl_802497CC +/* 8024978C 002466EC 80 1E 00 10 */ lwz r0, 0x10(r30) +/* 80249790 002466F0 80 7E 00 18 */ lwz r3, 0x18(r30) +/* 80249794 002466F4 54 00 10 3A */ slwi r0, r0, 2 +/* 80249798 002466F8 7C 03 02 14 */ add r0, r3, r0 +/* 8024979C 002466FC 90 61 00 0C */ stw r3, 0xc(r1) +/* 802497A0 00246700 7C 64 1B 78 */ mr r4, r3 +/* 802497A4 00246704 90 01 00 14 */ stw r0, 0x14(r1) +/* 802497A8 00246708 90 01 00 10 */ stw r0, 0x10(r1) +/* 802497AC 0024670C 90 61 00 08 */ stw r3, 8(r1) +/* 802497B0 00246710 48 00 00 08 */ b lbl_802497B8 +lbl_802497B4: +/* 802497B4 00246714 38 84 00 04 */ addi r4, r4, 4 +lbl_802497B8: +/* 802497B8 00246718 7C 04 00 40 */ cmplw r4, r0 +/* 802497BC 0024671C 40 82 FF F8 */ bne lbl_802497B4 +/* 802497C0 00246720 28 03 00 00 */ cmplwi r3, 0 +/* 802497C4 00246724 41 82 00 08 */ beq lbl_802497CC +/* 802497C8 00246728 48 0C C1 69 */ bl Free__7CMemoryFPCv +lbl_802497CC: +/* 802497CC 0024672C 7F E0 07 35 */ extsh. r0, r31 +/* 802497D0 00246730 40 81 00 0C */ ble lbl_802497DC +/* 802497D4 00246734 7F C3 F3 78 */ mr r3, r30 +/* 802497D8 00246738 48 0C C1 59 */ bl Free__7CMemoryFPCv +lbl_802497DC: +/* 802497DC 0024673C 80 01 00 44 */ lwz r0, 0x44(r1) +/* 802497E0 00246740 7F C3 F3 78 */ mr r3, r30 +/* 802497E4 00246744 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 802497E8 00246748 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 802497EC 0024674C 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 802497F0 00246750 7C 08 03 A6 */ mtlr r0 +/* 802497F4 00246754 38 21 00 40 */ addi r1, r1, 0x40 +/* 802497F8 00246758 4E 80 00 20 */ blr + +.global InitializePump__20CMemorySomethingElseFv +InitializePump__20CMemorySomethingElseFv: +/* 802497FC 0024675C 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80249800 00246760 7C 08 02 A6 */ mflr r0 +/* 80249804 00246764 90 01 00 54 */ stw r0, 0x54(r1) +/* 80249808 00246768 BF 61 00 3C */ stmw r27, 0x3c(r1) +/* 8024980C 0024676C 7C 7F 1B 78 */ mr r31, r3 +/* 80249810 00246770 80 63 00 30 */ lwz r3, 0x30(r3) +/* 80249814 00246774 28 03 00 00 */ cmplwi r3, 0 +/* 80249818 00246778 41 82 03 08 */ beq lbl_80249B20 +/* 8024981C 0024677C 81 83 00 00 */ lwz r12, 0(r3) +/* 80249820 00246780 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80249824 00246784 7D 89 03 A6 */ mtctr r12 +/* 80249828 00246788 4E 80 04 21 */ bctrl +/* 8024982C 0024678C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80249830 00246790 41 82 03 60 */ beq lbl_80249B90 +/* 80249834 00246794 83 BF 00 30 */ lwz r29, 0x30(r31) +/* 80249838 00246798 81 9D 00 00 */ lwz r12, 0(r29) +/* 8024983C 0024679C 7F A3 EB 78 */ mr r3, r29 +/* 80249840 002467A0 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 80249844 002467A4 7D 89 03 A6 */ mtctr r12 +/* 80249848 002467A8 4E 80 04 21 */ bctrl +/* 8024984C 002467AC 90 7F 00 04 */ stw r3, 4(r31) +/* 80249850 002467B0 7F A3 EB 78 */ mr r3, r29 +/* 80249854 002467B4 81 9D 00 00 */ lwz r12, 0(r29) +/* 80249858 002467B8 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 8024985C 002467BC 7D 89 03 A6 */ mtctr r12 +/* 80249860 002467C0 4E 80 04 21 */ bctrl +/* 80249864 002467C4 90 7F 00 08 */ stw r3, 8(r31) +/* 80249868 002467C8 7F A3 EB 78 */ mr r3, r29 +/* 8024986C 002467CC 81 9D 00 00 */ lwz r12, 0(r29) +/* 80249870 002467D0 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80249874 002467D4 7D 89 03 A6 */ mtctr r12 +/* 80249878 002467D8 4E 80 04 21 */ bctrl +/* 8024987C 002467DC 7C 60 1B 78 */ mr r0, r3 +/* 80249880 002467E0 38 7F 00 0C */ addi r3, r31, 0xc +/* 80249884 002467E4 7C 1C 03 78 */ mr r28, r0 +/* 80249888 002467E8 7F 84 E3 78 */ mr r4, r28 +/* 8024988C 002467EC 4B E1 A2 99 */ bl "reserve__Q24rstl37vectorFi" +/* 80249890 002467F0 3B 60 00 00 */ li r27, 0 +/* 80249894 002467F4 48 00 00 88 */ b lbl_8024991C +lbl_80249898: +/* 80249898 002467F8 93 61 00 0C */ stw r27, 0xc(r1) +/* 8024989C 002467FC 7F A3 EB 78 */ mr r3, r29 +/* 802498A0 00246800 38 81 00 0C */ addi r4, r1, 0xc +/* 802498A4 00246804 81 9D 00 00 */ lwz r12, 0(r29) +/* 802498A8 00246808 93 61 00 08 */ stw r27, 8(r1) +/* 802498AC 0024680C 81 8C 00 20 */ lwz r12, 0x20(r12) +/* 802498B0 00246810 7D 89 03 A6 */ mtctr r12 +/* 802498B4 00246814 4E 80 04 21 */ bctrl +/* 802498B8 00246818 81 83 00 00 */ lwz r12, 0(r3) +/* 802498BC 0024681C 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 802498C0 00246820 7D 89 03 A6 */ mtctr r12 +/* 802498C4 00246824 4E 80 04 21 */ bctrl +/* 802498C8 00246828 80 1F 00 10 */ lwz r0, 0x10(r31) +/* 802498CC 0024682C 7C 7E 1B 78 */ mr r30, r3 +/* 802498D0 00246830 80 BF 00 14 */ lwz r5, 0x14(r31) +/* 802498D4 00246834 7C 00 28 00 */ cmpw r0, r5 +/* 802498D8 00246838 41 80 00 1C */ blt lbl_802498F4 +/* 802498DC 0024683C 2C 05 00 00 */ cmpwi r5, 0 +/* 802498E0 00246840 38 7F 00 0C */ addi r3, r31, 0xc +/* 802498E4 00246844 38 80 00 04 */ li r4, 4 +/* 802498E8 00246848 41 82 00 08 */ beq lbl_802498F0 +/* 802498EC 0024684C 54 A4 08 3C */ slwi r4, r5, 1 +lbl_802498F0: +/* 802498F0 00246850 4B E1 A2 35 */ bl "reserve__Q24rstl37vectorFi" +lbl_802498F4: +/* 802498F4 00246854 80 1F 00 10 */ lwz r0, 0x10(r31) +/* 802498F8 00246858 80 7F 00 18 */ lwz r3, 0x18(r31) +/* 802498FC 0024685C 54 00 10 3A */ slwi r0, r0, 2 +/* 80249900 00246860 7C 63 02 15 */ add. r3, r3, r0 +/* 80249904 00246864 41 82 00 08 */ beq lbl_8024990C +/* 80249908 00246868 93 C3 00 00 */ stw r30, 0(r3) +lbl_8024990C: +/* 8024990C 0024686C 80 7F 00 10 */ lwz r3, 0x10(r31) +/* 80249910 00246870 3B 7B 00 01 */ addi r27, r27, 1 +/* 80249914 00246874 38 03 00 01 */ addi r0, r3, 1 +/* 80249918 00246878 90 1F 00 10 */ stw r0, 0x10(r31) +lbl_8024991C: +/* 8024991C 0024687C 7C 1B E0 00 */ cmpw r27, r28 +/* 80249920 00246880 41 80 FF 78 */ blt lbl_80249898 +/* 80249924 00246884 7F A3 EB 78 */ mr r3, r29 +/* 80249928 00246888 81 9D 00 00 */ lwz r12, 0(r29) +/* 8024992C 0024688C 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80249930 00246890 7D 89 03 A6 */ mtctr r12 +/* 80249934 00246894 4E 80 04 21 */ bctrl +/* 80249938 00246898 7C 64 1B 78 */ mr r4, r3 +/* 8024993C 0024689C 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) +/* 80249940 002468A0 4B F8 A0 99 */ bl StateForWorld__10CGameStateFUi +/* 80249944 002468A4 4B F8 B3 F1 */ bl GetLayerState__11CWorldStateFv +/* 80249948 002468A8 80 63 00 00 */ lwz r3, 0(r3) +/* 8024994C 002468AC 80 63 00 00 */ lwz r3, 0(r3) +/* 80249950 002468B0 4B FE A6 61 */ bl nullsub_5 +/* 80249954 002468B4 7C 64 1B 78 */ mr r4, r3 +/* 80249958 002468B8 38 7F 00 1C */ addi r3, r31, 0x1c +/* 8024995C 002468BC 4B FE A8 11 */ bl sub_8023416c +/* 80249960 002468C0 80 7F 00 08 */ lwz r3, 8(r31) +/* 80249964 002468C4 3C 03 00 01 */ addis r0, r3, 1 +/* 80249968 002468C8 28 00 FF FF */ cmplwi r0, 0xffff +/* 8024996C 002468CC 41 82 01 24 */ beq lbl_80249A90 +/* 80249970 002468D0 3C 60 80 3D */ lis r3, lbl_803D4780@ha +/* 80249974 002468D4 3B C0 00 00 */ li r30, 0 +/* 80249978 002468D8 38 83 47 80 */ addi r4, r3, lbl_803D4780@l +/* 8024997C 002468DC 38 A0 00 00 */ li r5, 0 +/* 80249980 002468E0 38 60 00 0C */ li r3, 0xc +/* 80249984 002468E4 48 0C BE E9 */ bl __nw__FUlPCcPCc +/* 80249988 002468E8 7C 7D 1B 79 */ or. r29, r3, r3 +/* 8024998C 002468EC 41 82 00 4C */ beq lbl_802499D8 +/* 80249990 002468F0 80 DF 00 08 */ lwz r6, 8(r31) +/* 80249994 002468F4 3C 60 53 41 */ lis r3, 0x53415657@ha +/* 80249998 002468F8 38 03 56 57 */ addi r0, r3, 0x53415657@l +/* 8024999C 002468FC 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 802499A0 00246900 90 01 00 28 */ stw r0, 0x28(r1) +/* 802499A4 00246904 38 61 00 20 */ addi r3, r1, 0x20 +/* 802499A8 00246908 38 A1 00 28 */ addi r5, r1, 0x28 +/* 802499AC 0024690C 90 C1 00 2C */ stw r6, 0x2c(r1) +/* 802499B0 00246910 81 84 00 00 */ lwz r12, 0(r4) +/* 802499B4 00246914 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 802499B8 00246918 7D 89 03 A6 */ mtctr r12 +/* 802499BC 0024691C 4E 80 04 21 */ bctrl +/* 802499C0 00246920 7F A3 EB 78 */ mr r3, r29 +/* 802499C4 00246924 38 81 00 20 */ addi r4, r1, 0x20 +/* 802499C8 00246928 3B C0 00 01 */ li r30, 1 +/* 802499CC 0024692C 48 0F 74 DD */ bl __ct__6CTokenFRC6CToken +/* 802499D0 00246930 38 00 00 00 */ li r0, 0 +/* 802499D4 00246934 90 1D 00 08 */ stw r0, 8(r29) +lbl_802499D8: +/* 802499D8 00246938 7C 1D 00 D0 */ neg r0, r29 +/* 802499DC 0024693C 38 61 00 18 */ addi r3, r1, 0x18 +/* 802499E0 00246940 7C 04 EB 78 */ or r4, r0, r29 +/* 802499E4 00246944 38 1F 00 34 */ addi r0, r31, 0x34 +/* 802499E8 00246948 54 84 0F FE */ srwi r4, r4, 0x1f +/* 802499EC 0024694C 93 A1 00 1C */ stw r29, 0x1c(r1) +/* 802499F0 00246950 7C 03 00 40 */ cmplw r3, r0 +/* 802499F4 00246954 98 81 00 18 */ stb r4, 0x18(r1) +/* 802499F8 00246958 41 82 00 4C */ beq lbl_80249A44 +/* 802499FC 0024695C 88 1F 00 34 */ lbz r0, 0x34(r31) +/* 80249A00 00246960 28 00 00 00 */ cmplwi r0, 0 +/* 80249A04 00246964 41 82 00 28 */ beq lbl_80249A2C +/* 80249A08 00246968 83 BF 00 38 */ lwz r29, 0x38(r31) +/* 80249A0C 0024696C 28 1D 00 00 */ cmplwi r29, 0 +/* 80249A10 00246970 41 82 00 1C */ beq lbl_80249A2C +/* 80249A14 00246974 41 82 00 10 */ beq lbl_80249A24 +/* 80249A18 00246978 7F A3 EB 78 */ mr r3, r29 +/* 80249A1C 0024697C 38 80 00 00 */ li r4, 0 +/* 80249A20 00246980 48 0F 74 21 */ bl __dt__6CTokenFv +lbl_80249A24: +/* 80249A24 00246984 7F A3 EB 78 */ mr r3, r29 +/* 80249A28 00246988 48 0C BF 09 */ bl Free__7CMemoryFPCv +lbl_80249A2C: +/* 80249A2C 0024698C 88 61 00 18 */ lbz r3, 0x18(r1) +/* 80249A30 00246990 38 00 00 00 */ li r0, 0 +/* 80249A34 00246994 98 7F 00 34 */ stb r3, 0x34(r31) +/* 80249A38 00246998 80 61 00 1C */ lwz r3, 0x1c(r1) +/* 80249A3C 0024699C 90 7F 00 38 */ stw r3, 0x38(r31) +/* 80249A40 002469A0 98 01 00 18 */ stb r0, 0x18(r1) +lbl_80249A44: +/* 80249A44 002469A4 88 01 00 18 */ lbz r0, 0x18(r1) +/* 80249A48 002469A8 28 00 00 00 */ cmplwi r0, 0 +/* 80249A4C 002469AC 41 82 00 28 */ beq lbl_80249A74 +/* 80249A50 002469B0 83 A1 00 1C */ lwz r29, 0x1c(r1) +/* 80249A54 002469B4 28 1D 00 00 */ cmplwi r29, 0 +/* 80249A58 002469B8 41 82 00 1C */ beq lbl_80249A74 +/* 80249A5C 002469BC 41 82 00 10 */ beq lbl_80249A6C +/* 80249A60 002469C0 7F A3 EB 78 */ mr r3, r29 +/* 80249A64 002469C4 38 80 00 00 */ li r4, 0 +/* 80249A68 002469C8 48 0F 73 D9 */ bl __dt__6CTokenFv +lbl_80249A6C: +/* 80249A6C 002469CC 7F A3 EB 78 */ mr r3, r29 +/* 80249A70 002469D0 48 0C BE C1 */ bl Free__7CMemoryFPCv +lbl_80249A74: +/* 80249A74 002469D4 7F C0 07 75 */ extsb. r0, r30 +/* 80249A78 002469D8 41 82 00 10 */ beq lbl_80249A88 +/* 80249A7C 002469DC 38 61 00 20 */ addi r3, r1, 0x20 +/* 80249A80 002469E0 38 80 FF FF */ li r4, -1 +/* 80249A84 002469E4 48 0F 73 BD */ bl __dt__6CTokenFv +lbl_80249A88: +/* 80249A88 002469E8 80 7F 00 38 */ lwz r3, 0x38(r31) +/* 80249A8C 002469EC 48 0F 72 F9 */ bl Lock__6CTokenFv +lbl_80249A90: +/* 80249A90 002469F0 38 61 00 10 */ addi r3, r1, 0x10 +/* 80249A94 002469F4 38 1F 00 2C */ addi r0, r31, 0x2c +/* 80249A98 002469F8 38 80 00 00 */ li r4, 0 +/* 80249A9C 002469FC 7C 03 00 40 */ cmplw r3, r0 +/* 80249AA0 00246A00 98 81 00 10 */ stb r4, 0x10(r1) +/* 80249AA4 00246A04 90 81 00 14 */ stw r4, 0x14(r1) +/* 80249AA8 00246A08 41 82 00 48 */ beq lbl_80249AF0 +/* 80249AAC 00246A0C 88 1F 00 2C */ lbz r0, 0x2c(r31) +/* 80249AB0 00246A10 28 00 00 00 */ cmplwi r0, 0 +/* 80249AB4 00246A14 41 82 00 24 */ beq lbl_80249AD8 +/* 80249AB8 00246A18 80 7F 00 30 */ lwz r3, 0x30(r31) +/* 80249ABC 00246A1C 28 03 00 00 */ cmplwi r3, 0 +/* 80249AC0 00246A20 41 82 00 18 */ beq lbl_80249AD8 +/* 80249AC4 00246A24 81 83 00 00 */ lwz r12, 0(r3) +/* 80249AC8 00246A28 38 80 00 01 */ li r4, 1 +/* 80249ACC 00246A2C 81 8C 00 08 */ lwz r12, 8(r12) +/* 80249AD0 00246A30 7D 89 03 A6 */ mtctr r12 +/* 80249AD4 00246A34 4E 80 04 21 */ bctrl +lbl_80249AD8: +/* 80249AD8 00246A38 88 61 00 10 */ lbz r3, 0x10(r1) +/* 80249ADC 00246A3C 38 00 00 00 */ li r0, 0 +/* 80249AE0 00246A40 98 7F 00 2C */ stb r3, 0x2c(r31) +/* 80249AE4 00246A44 80 61 00 14 */ lwz r3, 0x14(r1) +/* 80249AE8 00246A48 90 7F 00 30 */ stw r3, 0x30(r31) +/* 80249AEC 00246A4C 98 01 00 10 */ stb r0, 0x10(r1) +lbl_80249AF0: +/* 80249AF0 00246A50 88 01 00 10 */ lbz r0, 0x10(r1) +/* 80249AF4 00246A54 28 00 00 00 */ cmplwi r0, 0 +/* 80249AF8 00246A58 41 82 00 98 */ beq lbl_80249B90 +/* 80249AFC 00246A5C 80 61 00 14 */ lwz r3, 0x14(r1) +/* 80249B00 00246A60 28 03 00 00 */ cmplwi r3, 0 +/* 80249B04 00246A64 41 82 00 8C */ beq lbl_80249B90 +/* 80249B08 00246A68 81 83 00 00 */ lwz r12, 0(r3) +/* 80249B0C 00246A6C 38 80 00 01 */ li r4, 1 +/* 80249B10 00246A70 81 8C 00 08 */ lwz r12, 8(r12) +/* 80249B14 00246A74 7D 89 03 A6 */ mtctr r12 +/* 80249B18 00246A78 4E 80 04 21 */ bctrl +/* 80249B1C 00246A7C 48 00 00 74 */ b lbl_80249B90 +lbl_80249B20: +/* 80249B20 00246A80 83 BF 00 38 */ lwz r29, 0x38(r31) +/* 80249B24 00246A84 28 1D 00 00 */ cmplwi r29, 0 +/* 80249B28 00246A88 41 82 00 60 */ beq lbl_80249B88 +/* 80249B2C 00246A8C 80 1D 00 08 */ lwz r0, 8(r29) +/* 80249B30 00246A90 28 00 00 00 */ cmplwi r0, 0 +/* 80249B34 00246A94 41 82 00 0C */ beq lbl_80249B40 +/* 80249B38 00246A98 38 60 00 01 */ li r3, 1 +/* 80249B3C 00246A9C 48 00 00 3C */ b lbl_80249B78 +lbl_80249B40: +/* 80249B40 00246AA0 88 1D 00 04 */ lbz r0, 4(r29) +/* 80249B44 00246AA4 28 00 00 00 */ cmplwi r0, 0 +/* 80249B48 00246AA8 41 82 00 2C */ beq lbl_80249B74 +/* 80249B4C 00246AAC 80 7D 00 00 */ lwz r3, 0(r29) +/* 80249B50 00246AB0 80 03 00 10 */ lwz r0, 0x10(r3) +/* 80249B54 00246AB4 28 00 00 00 */ cmplwi r0, 0 +/* 80249B58 00246AB8 41 82 00 1C */ beq lbl_80249B74 +/* 80249B5C 00246ABC 7F A3 EB 78 */ mr r3, r29 +/* 80249B60 00246AC0 48 0F 72 AD */ bl GetObj__6CTokenFv +/* 80249B64 00246AC4 80 03 00 04 */ lwz r0, 4(r3) +/* 80249B68 00246AC8 38 60 00 01 */ li r3, 1 +/* 80249B6C 00246ACC 90 1D 00 08 */ stw r0, 8(r29) +/* 80249B70 00246AD0 48 00 00 08 */ b lbl_80249B78 +lbl_80249B74: +/* 80249B74 00246AD4 38 60 00 00 */ li r3, 0 +lbl_80249B78: +/* 80249B78 00246AD8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80249B7C 00246ADC 41 82 00 14 */ beq lbl_80249B90 +/* 80249B80 00246AE0 38 60 00 01 */ li r3, 1 +/* 80249B84 00246AE4 48 00 00 10 */ b lbl_80249B94 +lbl_80249B88: +/* 80249B88 00246AE8 38 60 00 01 */ li r3, 1 +/* 80249B8C 00246AEC 48 00 00 08 */ b lbl_80249B94 +lbl_80249B90: +/* 80249B90 00246AF0 38 60 00 00 */ li r3, 0 +lbl_80249B94: +/* 80249B94 00246AF4 BB 61 00 3C */ lmw r27, 0x3c(r1) +/* 80249B98 00246AF8 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80249B9C 00246AFC 7C 08 03 A6 */ mtlr r0 +/* 80249BA0 00246B00 38 21 00 50 */ addi r1, r1, 0x50 +/* 80249BA4 00246B04 4E 80 00 20 */ blr + +.global __ct__20CMemorySomethingElseFUiUi +__ct__20CMemorySomethingElseFUiUi: +/* 80249BA8 00246B08 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80249BAC 00246B0C 7C 08 02 A6 */ mflr r0 +/* 80249BB0 00246B10 90 01 00 44 */ stw r0, 0x44(r1) +/* 80249BB4 00246B14 BF 61 00 2C */ stmw r27, 0x2c(r1) +/* 80249BB8 00246B18 7C 7D 1B 78 */ mr r29, r3 +/* 80249BBC 00246B1C 38 60 00 00 */ li r3, 0 +/* 80249BC0 00246B20 7C BF 2B 78 */ mr r31, r5 +/* 80249BC4 00246B24 3C 1F 00 01 */ addis r0, r31, 1 +/* 80249BC8 00246B28 7C 9E 23 78 */ mr r30, r4 +/* 80249BCC 00246B2C 28 00 FF FF */ cmplwi r0, 0xffff +/* 80249BD0 00246B30 90 7D 00 10 */ stw r3, 0x10(r29) +/* 80249BD4 00246B34 90 7D 00 14 */ stw r3, 0x14(r29) +/* 80249BD8 00246B38 90 7D 00 18 */ stw r3, 0x18(r29) +/* 80249BDC 00246B3C 90 7D 00 20 */ stw r3, 0x20(r29) +/* 80249BE0 00246B40 90 7D 00 24 */ stw r3, 0x24(r29) +/* 80249BE4 00246B44 90 7D 00 28 */ stw r3, 0x28(r29) +/* 80249BE8 00246B48 98 7D 00 2C */ stb r3, 0x2c(r29) +/* 80249BEC 00246B4C 90 7D 00 30 */ stw r3, 0x30(r29) +/* 80249BF0 00246B50 98 7D 00 34 */ stb r3, 0x34(r29) +/* 80249BF4 00246B54 90 7D 00 38 */ stw r3, 0x38(r29) +/* 80249BF8 00246B58 40 82 00 C8 */ bne lbl_80249CC0 +/* 80249BFC 00246B5C 3C 80 80 3D */ lis r4, lbl_803D4780@ha +/* 80249C00 00246B60 38 60 00 40 */ li r3, 0x40 +/* 80249C04 00246B64 38 84 47 80 */ addi r4, r4, lbl_803D4780@l +/* 80249C08 00246B68 38 A0 00 00 */ li r5, 0 +/* 80249C0C 00246B6C 48 0C BC 61 */ bl __nw__FUlPCcPCc +/* 80249C10 00246B70 7C 64 1B 79 */ or. r4, r3, r3 +/* 80249C14 00246B74 41 82 00 14 */ beq lbl_80249C28 +/* 80249C18 00246B78 7F C4 F3 78 */ mr r4, r30 +/* 80249C1C 00246B7C 38 A0 00 00 */ li r5, 0 +/* 80249C20 00246B80 4B E0 D8 5D */ bl __ct__11CDummyWorldFUi +/* 80249C24 00246B84 7C 64 1B 78 */ mr r4, r3 +lbl_80249C28: +/* 80249C28 00246B88 7C 64 00 D0 */ neg r3, r4 +/* 80249C2C 00246B8C 38 01 00 20 */ addi r0, r1, 0x20 +/* 80249C30 00246B90 7C 63 23 78 */ or r3, r3, r4 +/* 80249C34 00246B94 38 BD 00 2C */ addi r5, r29, 0x2c +/* 80249C38 00246B98 54 63 0F FE */ srwi r3, r3, 0x1f +/* 80249C3C 00246B9C 90 81 00 24 */ stw r4, 0x24(r1) +/* 80249C40 00246BA0 7C 00 28 40 */ cmplw r0, r5 +/* 80249C44 00246BA4 98 61 00 20 */ stb r3, 0x20(r1) +/* 80249C48 00246BA8 41 82 00 48 */ beq lbl_80249C90 +/* 80249C4C 00246BAC 88 05 00 00 */ lbz r0, 0(r5) +/* 80249C50 00246BB0 28 00 00 00 */ cmplwi r0, 0 +/* 80249C54 00246BB4 41 82 00 24 */ beq lbl_80249C78 +/* 80249C58 00246BB8 80 7D 00 30 */ lwz r3, 0x30(r29) +/* 80249C5C 00246BBC 28 03 00 00 */ cmplwi r3, 0 +/* 80249C60 00246BC0 41 82 00 18 */ beq lbl_80249C78 +/* 80249C64 00246BC4 81 83 00 00 */ lwz r12, 0(r3) +/* 80249C68 00246BC8 38 80 00 01 */ li r4, 1 +/* 80249C6C 00246BCC 81 8C 00 08 */ lwz r12, 8(r12) +/* 80249C70 00246BD0 7D 89 03 A6 */ mtctr r12 +/* 80249C74 00246BD4 4E 80 04 21 */ bctrl +lbl_80249C78: +/* 80249C78 00246BD8 88 61 00 20 */ lbz r3, 0x20(r1) +/* 80249C7C 00246BDC 38 00 00 00 */ li r0, 0 +/* 80249C80 00246BE0 98 7D 00 2C */ stb r3, 0x2c(r29) +/* 80249C84 00246BE4 80 61 00 24 */ lwz r3, 0x24(r1) +/* 80249C88 00246BE8 90 7D 00 30 */ stw r3, 0x30(r29) +/* 80249C8C 00246BEC 98 01 00 20 */ stb r0, 0x20(r1) +lbl_80249C90: +/* 80249C90 00246BF0 88 01 00 20 */ lbz r0, 0x20(r1) +/* 80249C94 00246BF4 28 00 00 00 */ cmplwi r0, 0 +/* 80249C98 00246BF8 41 82 01 44 */ beq lbl_80249DDC +/* 80249C9C 00246BFC 80 61 00 24 */ lwz r3, 0x24(r1) +/* 80249CA0 00246C00 28 03 00 00 */ cmplwi r3, 0 +/* 80249CA4 00246C04 41 82 01 38 */ beq lbl_80249DDC +/* 80249CA8 00246C08 81 83 00 00 */ lwz r12, 0(r3) +/* 80249CAC 00246C0C 38 80 00 01 */ li r4, 1 +/* 80249CB0 00246C10 81 8C 00 08 */ lwz r12, 8(r12) +/* 80249CB4 00246C14 7D 89 03 A6 */ mtctr r12 +/* 80249CB8 00246C18 4E 80 04 21 */ bctrl +/* 80249CBC 00246C1C 48 00 01 20 */ b lbl_80249DDC +lbl_80249CC0: +/* 80249CC0 00246C20 3C 60 80 3D */ lis r3, lbl_803D4780@ha +/* 80249CC4 00246C24 3B 80 00 00 */ li r28, 0 +/* 80249CC8 00246C28 38 83 47 80 */ addi r4, r3, lbl_803D4780@l +/* 80249CCC 00246C2C 38 A0 00 00 */ li r5, 0 +/* 80249CD0 00246C30 38 60 00 0C */ li r3, 0xc +/* 80249CD4 00246C34 48 0C BB 99 */ bl __nw__FUlPCcPCc +/* 80249CD8 00246C38 7C 7B 1B 79 */ or. r27, r3, r3 +/* 80249CDC 00246C3C 41 82 00 48 */ beq lbl_80249D24 +/* 80249CE0 00246C40 3C 60 53 41 */ lis r3, 0x53415657@ha +/* 80249CE4 00246C44 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80249CE8 00246C48 38 03 56 57 */ addi r0, r3, 0x53415657@l +/* 80249CEC 00246C4C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80249CF0 00246C50 90 01 00 18 */ stw r0, 0x18(r1) +/* 80249CF4 00246C54 38 61 00 10 */ addi r3, r1, 0x10 +/* 80249CF8 00246C58 38 A1 00 18 */ addi r5, r1, 0x18 +/* 80249CFC 00246C5C 81 84 00 00 */ lwz r12, 0(r4) +/* 80249D00 00246C60 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80249D04 00246C64 7D 89 03 A6 */ mtctr r12 +/* 80249D08 00246C68 4E 80 04 21 */ bctrl +/* 80249D0C 00246C6C 7F 63 DB 78 */ mr r3, r27 +/* 80249D10 00246C70 38 81 00 10 */ addi r4, r1, 0x10 +/* 80249D14 00246C74 3B 80 00 01 */ li r28, 1 +/* 80249D18 00246C78 48 0F 71 91 */ bl __ct__6CTokenFRC6CToken +/* 80249D1C 00246C7C 38 00 00 00 */ li r0, 0 +/* 80249D20 00246C80 90 1B 00 08 */ stw r0, 8(r27) +lbl_80249D24: +/* 80249D24 00246C84 7C 7B 00 D0 */ neg r3, r27 +/* 80249D28 00246C88 38 01 00 08 */ addi r0, r1, 8 +/* 80249D2C 00246C8C 7C 63 DB 78 */ or r3, r3, r27 +/* 80249D30 00246C90 38 9D 00 34 */ addi r4, r29, 0x34 +/* 80249D34 00246C94 54 63 0F FE */ srwi r3, r3, 0x1f +/* 80249D38 00246C98 93 61 00 0C */ stw r27, 0xc(r1) +/* 80249D3C 00246C9C 7C 00 20 40 */ cmplw r0, r4 +/* 80249D40 00246CA0 98 61 00 08 */ stb r3, 8(r1) +/* 80249D44 00246CA4 41 82 00 4C */ beq lbl_80249D90 +/* 80249D48 00246CA8 88 04 00 00 */ lbz r0, 0(r4) +/* 80249D4C 00246CAC 28 00 00 00 */ cmplwi r0, 0 +/* 80249D50 00246CB0 41 82 00 28 */ beq lbl_80249D78 +/* 80249D54 00246CB4 83 7D 00 38 */ lwz r27, 0x38(r29) +/* 80249D58 00246CB8 28 1B 00 00 */ cmplwi r27, 0 +/* 80249D5C 00246CBC 41 82 00 1C */ beq lbl_80249D78 +/* 80249D60 00246CC0 41 82 00 10 */ beq lbl_80249D70 +/* 80249D64 00246CC4 7F 63 DB 78 */ mr r3, r27 +/* 80249D68 00246CC8 38 80 00 00 */ li r4, 0 +/* 80249D6C 00246CCC 48 0F 70 D5 */ bl __dt__6CTokenFv +lbl_80249D70: +/* 80249D70 00246CD0 7F 63 DB 78 */ mr r3, r27 +/* 80249D74 00246CD4 48 0C BB BD */ bl Free__7CMemoryFPCv +lbl_80249D78: +/* 80249D78 00246CD8 88 61 00 08 */ lbz r3, 8(r1) +/* 80249D7C 00246CDC 38 00 00 00 */ li r0, 0 +/* 80249D80 00246CE0 98 7D 00 34 */ stb r3, 0x34(r29) +/* 80249D84 00246CE4 80 61 00 0C */ lwz r3, 0xc(r1) +/* 80249D88 00246CE8 90 7D 00 38 */ stw r3, 0x38(r29) +/* 80249D8C 00246CEC 98 01 00 08 */ stb r0, 8(r1) +lbl_80249D90: +/* 80249D90 00246CF0 88 01 00 08 */ lbz r0, 8(r1) +/* 80249D94 00246CF4 28 00 00 00 */ cmplwi r0, 0 +/* 80249D98 00246CF8 41 82 00 28 */ beq lbl_80249DC0 +/* 80249D9C 00246CFC 83 61 00 0C */ lwz r27, 0xc(r1) +/* 80249DA0 00246D00 28 1B 00 00 */ cmplwi r27, 0 +/* 80249DA4 00246D04 41 82 00 1C */ beq lbl_80249DC0 +/* 80249DA8 00246D08 41 82 00 10 */ beq lbl_80249DB8 +/* 80249DAC 00246D0C 7F 63 DB 78 */ mr r3, r27 +/* 80249DB0 00246D10 38 80 00 00 */ li r4, 0 +/* 80249DB4 00246D14 48 0F 70 8D */ bl __dt__6CTokenFv +lbl_80249DB8: +/* 80249DB8 00246D18 7F 63 DB 78 */ mr r3, r27 +/* 80249DBC 00246D1C 48 0C BB 75 */ bl Free__7CMemoryFPCv +lbl_80249DC0: +/* 80249DC0 00246D20 7F 80 07 75 */ extsb. r0, r28 +/* 80249DC4 00246D24 41 82 00 10 */ beq lbl_80249DD4 +/* 80249DC8 00246D28 38 61 00 10 */ addi r3, r1, 0x10 +/* 80249DCC 00246D2C 38 80 FF FF */ li r4, -1 +/* 80249DD0 00246D30 48 0F 70 71 */ bl __dt__6CTokenFv +lbl_80249DD4: +/* 80249DD4 00246D34 80 7D 00 38 */ lwz r3, 0x38(r29) +/* 80249DD8 00246D38 48 0F 6F AD */ bl Lock__6CTokenFv +lbl_80249DDC: +/* 80249DDC 00246D3C 93 DD 00 00 */ stw r30, 0(r29) +/* 80249DE0 00246D40 38 00 FF FF */ li r0, -1 +/* 80249DE4 00246D44 7F A3 EB 78 */ mr r3, r29 +/* 80249DE8 00246D48 90 1D 00 04 */ stw r0, 4(r29) +/* 80249DEC 00246D4C 93 FD 00 08 */ stw r31, 8(r29) +/* 80249DF0 00246D50 BB 61 00 2C */ lmw r27, 0x2c(r1) +/* 80249DF4 00246D54 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80249DF8 00246D58 7C 08 03 A6 */ mtlr r0 +/* 80249DFC 00246D5C 38 21 00 40 */ addi r1, r1, 0x40 +/* 80249E00 00246D60 4E 80 00 20 */ blr + +.global __dt__14CMemoryCardSysFv +__dt__14CMemoryCardSysFv: +/* 80249E04 00246D64 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80249E08 00246D68 7C 08 02 A6 */ mflr r0 +/* 80249E0C 00246D6C 90 01 00 24 */ stw r0, 0x24(r1) +/* 80249E10 00246D70 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80249E14 00246D74 7C 9F 23 78 */ mr r31, r4 +/* 80249E18 00246D78 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80249E1C 00246D7C 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80249E20 00246D80 41 82 00 E8 */ beq lbl_80249F08 +/* 80249E24 00246D84 34 1E 00 30 */ addic. r0, r30, 0x30 +/* 80249E28 00246D88 41 82 00 58 */ beq lbl_80249E80 +/* 80249E2C 00246D8C 80 BE 00 30 */ lwz r5, 0x30(r30) +/* 80249E30 00246D90 38 60 00 00 */ li r3, 0 +/* 80249E34 00246D94 2C 05 00 00 */ cmpwi r5, 0 +/* 80249E38 00246D98 40 81 00 40 */ ble lbl_80249E78 +/* 80249E3C 00246D9C 2C 05 00 08 */ cmpwi r5, 8 +/* 80249E40 00246DA0 38 85 FF F8 */ addi r4, r5, -8 +/* 80249E44 00246DA4 40 81 00 20 */ ble lbl_80249E64 +/* 80249E48 00246DA8 38 04 00 07 */ addi r0, r4, 7 +/* 80249E4C 00246DAC 54 00 E8 FE */ srwi r0, r0, 3 +/* 80249E50 00246DB0 7C 09 03 A6 */ mtctr r0 +/* 80249E54 00246DB4 2C 04 00 00 */ cmpwi r4, 0 +/* 80249E58 00246DB8 40 81 00 0C */ ble lbl_80249E64 +lbl_80249E5C: +/* 80249E5C 00246DBC 38 63 00 08 */ addi r3, r3, 8 +/* 80249E60 00246DC0 42 00 FF FC */ bdnz lbl_80249E5C +lbl_80249E64: +/* 80249E64 00246DC4 7C 03 28 50 */ subf r0, r3, r5 +/* 80249E68 00246DC8 7C 09 03 A6 */ mtctr r0 +/* 80249E6C 00246DCC 7C 03 28 00 */ cmpw r3, r5 +/* 80249E70 00246DD0 40 80 00 08 */ bge lbl_80249E78 +lbl_80249E74: +/* 80249E74 00246DD4 42 00 00 00 */ bdnz lbl_80249E74 +lbl_80249E78: +/* 80249E78 00246DD8 38 00 00 00 */ li r0, 0 +/* 80249E7C 00246DDC 90 1E 00 30 */ stw r0, 0x30(r30) +lbl_80249E80: +/* 80249E80 00246DE0 34 1E 00 20 */ addic. r0, r30, 0x20 +/* 80249E84 00246DE4 41 82 00 44 */ beq lbl_80249EC8 +/* 80249E88 00246DE8 80 1E 00 24 */ lwz r0, 0x24(r30) +/* 80249E8C 00246DEC 80 7E 00 2C */ lwz r3, 0x2c(r30) +/* 80249E90 00246DF0 54 00 18 38 */ slwi r0, r0, 3 +/* 80249E94 00246DF4 7C 03 02 14 */ add r0, r3, r0 +/* 80249E98 00246DF8 90 61 00 0C */ stw r3, 0xc(r1) +/* 80249E9C 00246DFC 7C 64 1B 78 */ mr r4, r3 +/* 80249EA0 00246E00 90 01 00 14 */ stw r0, 0x14(r1) +/* 80249EA4 00246E04 90 01 00 10 */ stw r0, 0x10(r1) +/* 80249EA8 00246E08 90 61 00 08 */ stw r3, 8(r1) +/* 80249EAC 00246E0C 48 00 00 08 */ b lbl_80249EB4 +lbl_80249EB0: +/* 80249EB0 00246E10 38 84 00 08 */ addi r4, r4, 8 +lbl_80249EB4: +/* 80249EB4 00246E14 7C 04 00 40 */ cmplw r4, r0 +/* 80249EB8 00246E18 40 82 FF F8 */ bne lbl_80249EB0 +/* 80249EBC 00246E1C 28 03 00 00 */ cmplwi r3, 0 +/* 80249EC0 00246E20 41 82 00 08 */ beq lbl_80249EC8 +/* 80249EC4 00246E24 48 0C BA 6D */ bl Free__7CMemoryFPCv +lbl_80249EC8: +/* 80249EC8 00246E28 38 7E 00 1C */ addi r3, r30, 0x1c +/* 80249ECC 00246E2C 38 80 FF FF */ li r4, -1 +/* 80249ED0 00246E30 48 00 02 E5 */ bl sub_8024a1b4 +/* 80249ED4 00246E34 38 7E 00 0C */ addi r3, r30, 0xc +/* 80249ED8 00246E38 38 80 FF FF */ li r4, -1 +/* 80249EDC 00246E3C 48 00 00 49 */ bl sub_80249f24 +/* 80249EE0 00246E40 28 1E 00 00 */ cmplwi r30, 0 +/* 80249EE4 00246E44 41 82 00 14 */ beq lbl_80249EF8 +/* 80249EE8 00246E48 41 82 00 10 */ beq lbl_80249EF8 +/* 80249EEC 00246E4C 7F C3 F3 78 */ mr r3, r30 +/* 80249EF0 00246E50 38 80 00 00 */ li r4, 0 +/* 80249EF4 00246E54 48 0F 6F 4D */ bl __dt__6CTokenFv +lbl_80249EF8: +/* 80249EF8 00246E58 7F E0 07 35 */ extsh. r0, r31 +/* 80249EFC 00246E5C 40 81 00 0C */ ble lbl_80249F08 +/* 80249F00 00246E60 7F C3 F3 78 */ mr r3, r30 +/* 80249F04 00246E64 48 0C BA 2D */ bl Free__7CMemoryFPCv +lbl_80249F08: +/* 80249F08 00246E68 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80249F0C 00246E6C 7F C3 F3 78 */ mr r3, r30 +/* 80249F10 00246E70 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80249F14 00246E74 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80249F18 00246E78 7C 08 03 A6 */ mtlr r0 +/* 80249F1C 00246E7C 38 21 00 20 */ addi r1, r1, 0x20 +/* 80249F20 00246E80 4E 80 00 20 */ blr + +.global sub_80249f24 +sub_80249f24: +/* 80249F24 00246E84 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80249F28 00246E88 7C 08 02 A6 */ mflr r0 +/* 80249F2C 00246E8C 90 01 00 24 */ stw r0, 0x24(r1) +/* 80249F30 00246E90 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80249F34 00246E94 7C 9F 23 78 */ mr r31, r4 +/* 80249F38 00246E98 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80249F3C 00246E9C 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80249F40 00246EA0 41 82 00 54 */ beq lbl_80249F94 +/* 80249F44 00246EA4 80 1E 00 04 */ lwz r0, 4(r30) +/* 80249F48 00246EA8 38 61 00 14 */ addi r3, r1, 0x14 +/* 80249F4C 00246EAC 80 BE 00 0C */ lwz r5, 0xc(r30) +/* 80249F50 00246EB0 38 81 00 0C */ addi r4, r1, 0xc +/* 80249F54 00246EB4 1C 00 00 4C */ mulli r0, r0, 0x4c +/* 80249F58 00246EB8 7C A5 02 14 */ add r5, r5, r0 +/* 80249F5C 00246EBC 90 A1 00 0C */ stw r5, 0xc(r1) +/* 80249F60 00246EC0 80 1E 00 0C */ lwz r0, 0xc(r30) +/* 80249F64 00246EC4 90 A1 00 08 */ stw r5, 8(r1) +/* 80249F68 00246EC8 90 01 00 10 */ stw r0, 0x10(r1) +/* 80249F6C 00246ECC 90 01 00 14 */ stw r0, 0x14(r1) +/* 80249F70 00246ED0 48 00 00 41 */ bl sub_80249fb0 +/* 80249F74 00246ED4 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 80249F78 00246ED8 28 03 00 00 */ cmplwi r3, 0 +/* 80249F7C 00246EDC 41 82 00 08 */ beq lbl_80249F84 +/* 80249F80 00246EE0 48 0C B9 B1 */ bl Free__7CMemoryFPCv +lbl_80249F84: +/* 80249F84 00246EE4 7F E0 07 35 */ extsh. r0, r31 +/* 80249F88 00246EE8 40 81 00 0C */ ble lbl_80249F94 +/* 80249F8C 00246EEC 7F C3 F3 78 */ mr r3, r30 +/* 80249F90 00246EF0 48 0C B9 A1 */ bl Free__7CMemoryFPCv +lbl_80249F94: +/* 80249F94 00246EF4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80249F98 00246EF8 7F C3 F3 78 */ mr r3, r30 +/* 80249F9C 00246EFC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80249FA0 00246F00 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80249FA4 00246F04 7C 08 03 A6 */ mtlr r0 +/* 80249FA8 00246F08 38 21 00 20 */ addi r1, r1, 0x20 +/* 80249FAC 00246F0C 4E 80 00 20 */ blr + +.global sub_80249fb0 +sub_80249fb0: +/* 80249FB0 00246F10 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80249FB4 00246F14 7C 08 02 A6 */ mflr r0 +/* 80249FB8 00246F18 90 01 00 14 */ stw r0, 0x14(r1) +/* 80249FBC 00246F1C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80249FC0 00246F20 93 C1 00 08 */ stw r30, 8(r1) +/* 80249FC4 00246F24 7C 9E 23 78 */ mr r30, r4 +/* 80249FC8 00246F28 83 E3 00 00 */ lwz r31, 0(r3) +/* 80249FCC 00246F2C 48 00 00 10 */ b lbl_80249FDC +lbl_80249FD0: +/* 80249FD0 00246F30 7F E3 FB 78 */ mr r3, r31 +/* 80249FD4 00246F34 48 00 00 2D */ bl sub_8024a000 +/* 80249FD8 00246F38 3B FF 00 4C */ addi r31, r31, 0x4c +lbl_80249FDC: +/* 80249FDC 00246F3C 80 1E 00 00 */ lwz r0, 0(r30) +/* 80249FE0 00246F40 7C 1F 00 40 */ cmplw r31, r0 +/* 80249FE4 00246F44 40 82 FF EC */ bne lbl_80249FD0 +/* 80249FE8 00246F48 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80249FEC 00246F4C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80249FF0 00246F50 83 C1 00 08 */ lwz r30, 8(r1) +/* 80249FF4 00246F54 7C 08 03 A6 */ mtlr r0 +/* 80249FF8 00246F58 38 21 00 10 */ addi r1, r1, 0x10 +/* 80249FFC 00246F5C 4E 80 00 20 */ blr + +.global sub_8024a000 +sub_8024a000: +/* 8024A000 00246F60 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024A004 00246F64 7C 08 02 A6 */ mflr r0 +/* 8024A008 00246F68 38 80 FF FF */ li r4, -1 +/* 8024A00C 00246F6C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024A010 00246F70 48 00 00 15 */ bl sub_8024a024 +/* 8024A014 00246F74 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024A018 00246F78 7C 08 03 A6 */ mtlr r0 +/* 8024A01C 00246F7C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024A020 00246F80 4E 80 00 20 */ blr + +.global sub_8024a024 +sub_8024a024: +/* 8024A024 00246F84 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024A028 00246F88 7C 08 02 A6 */ mflr r0 +/* 8024A02C 00246F8C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024A030 00246F90 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024A034 00246F94 7C 9F 23 78 */ mr r31, r4 +/* 8024A038 00246F98 93 C1 00 08 */ stw r30, 8(r1) +/* 8024A03C 00246F9C 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8024A040 00246FA0 41 82 00 20 */ beq lbl_8024A060 +/* 8024A044 00246FA4 38 7E 00 04 */ addi r3, r30, 4 +/* 8024A048 00246FA8 38 80 FF FF */ li r4, -1 +/* 8024A04C 00246FAC 48 00 00 31 */ bl sub_8024a07c +/* 8024A050 00246FB0 7F E0 07 35 */ extsh. r0, r31 +/* 8024A054 00246FB4 40 81 00 0C */ ble lbl_8024A060 +/* 8024A058 00246FB8 7F C3 F3 78 */ mr r3, r30 +/* 8024A05C 00246FBC 48 0C B8 D5 */ bl Free__7CMemoryFPCv +lbl_8024A060: +/* 8024A060 00246FC0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024A064 00246FC4 7F C3 F3 78 */ mr r3, r30 +/* 8024A068 00246FC8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024A06C 00246FCC 83 C1 00 08 */ lwz r30, 8(r1) +/* 8024A070 00246FD0 7C 08 03 A6 */ mtlr r0 +/* 8024A074 00246FD4 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024A078 00246FD8 4E 80 00 20 */ blr + +.global sub_8024a07c +sub_8024a07c: +/* 8024A07C 00246FDC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8024A080 00246FE0 7C 08 02 A6 */ mflr r0 +/* 8024A084 00246FE4 90 01 00 34 */ stw r0, 0x34(r1) +/* 8024A088 00246FE8 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8024A08C 00246FEC 7C 9F 23 78 */ mr r31, r4 +/* 8024A090 00246FF0 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8024A094 00246FF4 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8024A098 00246FF8 41 82 01 00 */ beq lbl_8024A198 +/* 8024A09C 00246FFC 34 1E 00 3C */ addic. r0, r30, 0x3c +/* 8024A0A0 00247000 41 82 00 24 */ beq lbl_8024A0C4 +/* 8024A0A4 00247004 88 1E 00 44 */ lbz r0, 0x44(r30) +/* 8024A0A8 00247008 28 00 00 00 */ cmplwi r0, 0 +/* 8024A0AC 0024700C 41 82 00 10 */ beq lbl_8024A0BC +/* 8024A0B0 00247010 38 7E 00 3C */ addi r3, r30, 0x3c +/* 8024A0B4 00247014 38 80 FF FF */ li r4, -1 +/* 8024A0B8 00247018 48 0F 6D 89 */ bl __dt__6CTokenFv +lbl_8024A0BC: +/* 8024A0BC 0024701C 38 00 00 00 */ li r0, 0 +/* 8024A0C0 00247020 98 1E 00 44 */ stb r0, 0x44(r30) +lbl_8024A0C4: +/* 8024A0C4 00247024 34 1E 00 2C */ addic. r0, r30, 0x2c +/* 8024A0C8 00247028 41 82 00 30 */ beq lbl_8024A0F8 +/* 8024A0CC 0024702C 88 1E 00 38 */ lbz r0, 0x38(r30) +/* 8024A0D0 00247030 28 00 00 00 */ cmplwi r0, 0 +/* 8024A0D4 00247034 41 82 00 1C */ beq lbl_8024A0F0 +/* 8024A0D8 00247038 34 7E 00 2C */ addic. r3, r30, 0x2c +/* 8024A0DC 0024703C 41 82 00 14 */ beq lbl_8024A0F0 +/* 8024A0E0 00247040 28 03 00 00 */ cmplwi r3, 0 +/* 8024A0E4 00247044 41 82 00 0C */ beq lbl_8024A0F0 +/* 8024A0E8 00247048 38 80 00 00 */ li r4, 0 +/* 8024A0EC 0024704C 48 0F 6D 55 */ bl __dt__6CTokenFv +lbl_8024A0F0: +/* 8024A0F0 00247050 38 00 00 00 */ li r0, 0 +/* 8024A0F4 00247054 98 1E 00 38 */ stb r0, 0x38(r30) +lbl_8024A0F8: +/* 8024A0F8 00247058 34 1E 00 1C */ addic. r0, r30, 0x1c +/* 8024A0FC 0024705C 41 82 00 44 */ beq lbl_8024A140 +/* 8024A100 00247060 80 1E 00 20 */ lwz r0, 0x20(r30) +/* 8024A104 00247064 80 7E 00 28 */ lwz r3, 0x28(r30) +/* 8024A108 00247068 54 00 20 36 */ slwi r0, r0, 4 +/* 8024A10C 0024706C 7C 03 02 14 */ add r0, r3, r0 +/* 8024A110 00247070 90 61 00 1C */ stw r3, 0x1c(r1) +/* 8024A114 00247074 7C 64 1B 78 */ mr r4, r3 +/* 8024A118 00247078 90 01 00 24 */ stw r0, 0x24(r1) +/* 8024A11C 0024707C 90 01 00 20 */ stw r0, 0x20(r1) +/* 8024A120 00247080 90 61 00 18 */ stw r3, 0x18(r1) +/* 8024A124 00247084 48 00 00 08 */ b lbl_8024A12C +lbl_8024A128: +/* 8024A128 00247088 38 84 00 10 */ addi r4, r4, 0x10 +lbl_8024A12C: +/* 8024A12C 0024708C 7C 04 00 40 */ cmplw r4, r0 +/* 8024A130 00247090 40 82 FF F8 */ bne lbl_8024A128 +/* 8024A134 00247094 28 03 00 00 */ cmplwi r3, 0 +/* 8024A138 00247098 41 82 00 08 */ beq lbl_8024A140 +/* 8024A13C 0024709C 48 0C B7 F5 */ bl Free__7CMemoryFPCv +lbl_8024A140: +/* 8024A140 002470A0 34 1E 00 0C */ addic. r0, r30, 0xc +/* 8024A144 002470A4 41 82 00 44 */ beq lbl_8024A188 +/* 8024A148 002470A8 80 1E 00 10 */ lwz r0, 0x10(r30) +/* 8024A14C 002470AC 80 7E 00 18 */ lwz r3, 0x18(r30) +/* 8024A150 002470B0 54 00 10 3A */ slwi r0, r0, 2 +/* 8024A154 002470B4 7C 03 02 14 */ add r0, r3, r0 +/* 8024A158 002470B8 90 61 00 0C */ stw r3, 0xc(r1) +/* 8024A15C 002470BC 7C 64 1B 78 */ mr r4, r3 +/* 8024A160 002470C0 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024A164 002470C4 90 01 00 10 */ stw r0, 0x10(r1) +/* 8024A168 002470C8 90 61 00 08 */ stw r3, 8(r1) +/* 8024A16C 002470CC 48 00 00 08 */ b lbl_8024A174 +lbl_8024A170: +/* 8024A170 002470D0 38 84 00 04 */ addi r4, r4, 4 +lbl_8024A174: +/* 8024A174 002470D4 7C 04 00 40 */ cmplw r4, r0 +/* 8024A178 002470D8 40 82 FF F8 */ bne lbl_8024A170 +/* 8024A17C 002470DC 28 03 00 00 */ cmplwi r3, 0 +/* 8024A180 002470E0 41 82 00 08 */ beq lbl_8024A188 +/* 8024A184 002470E4 48 0C B7 AD */ bl Free__7CMemoryFPCv +lbl_8024A188: +/* 8024A188 002470E8 7F E0 07 35 */ extsh. r0, r31 +/* 8024A18C 002470EC 40 81 00 0C */ ble lbl_8024A198 +/* 8024A190 002470F0 7F C3 F3 78 */ mr r3, r30 +/* 8024A194 002470F4 48 0C B7 9D */ bl Free__7CMemoryFPCv +lbl_8024A198: +/* 8024A198 002470F8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8024A19C 002470FC 7F C3 F3 78 */ mr r3, r30 +/* 8024A1A0 00247100 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8024A1A4 00247104 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8024A1A8 00247108 7C 08 03 A6 */ mtlr r0 +/* 8024A1AC 0024710C 38 21 00 30 */ addi r1, r1, 0x30 +/* 8024A1B0 00247110 4E 80 00 20 */ blr + +.global sub_8024a1b4 +sub_8024a1b4: +/* 8024A1B4 00247114 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024A1B8 00247118 7C 08 02 A6 */ mflr r0 +/* 8024A1BC 0024711C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024A1C0 00247120 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024A1C4 00247124 7C 9F 23 78 */ mr r31, r4 +/* 8024A1C8 00247128 93 C1 00 08 */ stw r30, 8(r1) +/* 8024A1CC 0024712C 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8024A1D0 00247130 41 82 00 20 */ beq lbl_8024A1F0 +/* 8024A1D4 00247134 80 7E 00 00 */ lwz r3, 0(r30) +/* 8024A1D8 00247138 38 80 00 01 */ li r4, 1 +/* 8024A1DC 0024713C 4B FF F3 D1 */ bl sub_802495ac +/* 8024A1E0 00247140 7F E0 07 35 */ extsh. r0, r31 +/* 8024A1E4 00247144 40 81 00 0C */ ble lbl_8024A1F0 +/* 8024A1E8 00247148 7F C3 F3 78 */ mr r3, r30 +/* 8024A1EC 0024714C 48 0C B7 45 */ bl Free__7CMemoryFPCv +lbl_8024A1F0: +/* 8024A1F0 00247150 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024A1F4 00247154 7F C3 F3 78 */ mr r3, r30 +/* 8024A1F8 00247158 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024A1FC 0024715C 83 C1 00 08 */ lwz r30, 8(r1) +/* 8024A200 00247160 7C 08 03 A6 */ mtlr r0 +/* 8024A204 00247164 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024A208 00247168 4E 80 00 20 */ blr + +.global __ct__14CMemoryCardSysFv +__ct__14CMemoryCardSysFv: +/* 8024A20C 0024716C 94 21 FE B0 */ stwu r1, -0x150(r1) +/* 8024A210 00247170 7C 08 02 A6 */ mflr r0 +/* 8024A214 00247174 3C A0 80 3D */ lis r5, lbl_803D4780@ha +/* 8024A218 00247178 90 01 01 54 */ stw r0, 0x154(r1) +/* 8024A21C 0024717C 38 A5 47 80 */ addi r5, r5, lbl_803D4780@l +/* 8024A220 00247180 38 A5 00 07 */ addi r5, r5, 7 +/* 8024A224 00247184 BF 41 01 38 */ stmw r26, 0x138(r1) +/* 8024A228 00247188 7C 7D 1B 78 */ mr r29, r3 +/* 8024A22C 0024718C 38 61 00 38 */ addi r3, r1, 0x38 +/* 8024A230 00247190 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8024A234 00247194 81 84 00 00 */ lwz r12, 0(r4) +/* 8024A238 00247198 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 8024A23C 0024719C 7D 89 03 A6 */ mtctr r12 +/* 8024A240 002471A0 4E 80 04 21 */ bctrl +/* 8024A244 002471A4 7F A3 EB 78 */ mr r3, r29 +/* 8024A248 002471A8 38 81 00 38 */ addi r4, r1, 0x38 +/* 8024A24C 002471AC 48 0F 6C 5D */ bl __ct__6CTokenFRC6CToken +/* 8024A250 002471B0 38 00 00 00 */ li r0, 0 +/* 8024A254 002471B4 38 61 00 38 */ addi r3, r1, 0x38 +/* 8024A258 002471B8 90 1D 00 08 */ stw r0, 8(r29) +/* 8024A25C 002471BC 38 80 FF FF */ li r4, -1 +/* 8024A260 002471C0 48 0F 6B E1 */ bl __dt__6CTokenFv +/* 8024A264 002471C4 38 60 00 00 */ li r3, 0 +/* 8024A268 002471C8 34 9D 00 34 */ addic. r4, r29, 0x34 +/* 8024A26C 002471CC 90 7D 00 10 */ stw r3, 0x10(r29) +/* 8024A270 002471D0 38 00 00 06 */ li r0, 6 +/* 8024A274 002471D4 90 7D 00 14 */ stw r3, 0x14(r29) +/* 8024A278 002471D8 90 7D 00 18 */ stw r3, 0x18(r29) +/* 8024A27C 002471DC 90 7D 00 1C */ stw r3, 0x1c(r29) +/* 8024A280 002471E0 90 7D 00 24 */ stw r3, 0x24(r29) +/* 8024A284 002471E4 90 7D 00 28 */ stw r3, 0x28(r29) +/* 8024A288 002471E8 90 7D 00 2C */ stw r3, 0x2c(r29) +/* 8024A28C 002471EC 90 1D 00 30 */ stw r0, 0x30(r29) +/* 8024A290 002471F0 41 82 00 0C */ beq lbl_8024A29C +/* 8024A294 002471F4 80 0D 97 00 */ lwz r0, lbl_805A82C0@sda21(r13) +/* 8024A298 002471F8 90 04 00 00 */ stw r0, 0(r4) +lbl_8024A29C: +/* 8024A29C 002471FC 34 84 00 04 */ addic. r4, r4, 4 +/* 8024A2A0 00247200 41 82 00 0C */ beq lbl_8024A2AC +/* 8024A2A4 00247204 80 0D 97 00 */ lwz r0, lbl_805A82C0@sda21(r13) +/* 8024A2A8 00247208 90 04 00 00 */ stw r0, 0(r4) +lbl_8024A2AC: +/* 8024A2AC 0024720C 34 84 00 04 */ addic. r4, r4, 4 +/* 8024A2B0 00247210 41 82 00 0C */ beq lbl_8024A2BC +/* 8024A2B4 00247214 80 0D 97 00 */ lwz r0, lbl_805A82C0@sda21(r13) +/* 8024A2B8 00247218 90 04 00 00 */ stw r0, 0(r4) +lbl_8024A2BC: +/* 8024A2BC 0024721C 34 84 00 04 */ addic. r4, r4, 4 +/* 8024A2C0 00247220 41 82 00 0C */ beq lbl_8024A2CC +/* 8024A2C4 00247224 80 0D 97 00 */ lwz r0, lbl_805A82C0@sda21(r13) +/* 8024A2C8 00247228 90 04 00 00 */ stw r0, 0(r4) +lbl_8024A2CC: +/* 8024A2CC 0024722C 34 84 00 04 */ addic. r4, r4, 4 +/* 8024A2D0 00247230 41 82 00 0C */ beq lbl_8024A2DC +/* 8024A2D4 00247234 80 0D 97 00 */ lwz r0, lbl_805A82C0@sda21(r13) +/* 8024A2D8 00247238 90 04 00 00 */ stw r0, 0(r4) +lbl_8024A2DC: +/* 8024A2DC 0024723C 34 84 00 04 */ addic. r4, r4, 4 +/* 8024A2E0 00247240 41 82 00 0C */ beq lbl_8024A2EC +/* 8024A2E4 00247244 80 0D 97 00 */ lwz r0, lbl_805A82C0@sda21(r13) +/* 8024A2E8 00247248 90 04 00 00 */ stw r0, 0(r4) +lbl_8024A2EC: +/* 8024A2EC 0024724C 7F A3 EB 78 */ mr r3, r29 +/* 8024A2F0 00247250 48 0F 6A 95 */ bl Lock__6CTokenFv +/* 8024A2F4 00247254 3C 80 80 3D */ lis r4, lbl_803D4780@ha +/* 8024A2F8 00247258 38 60 00 10 */ li r3, 0x10 +/* 8024A2FC 0024725C 38 84 47 80 */ addi r4, r4, lbl_803D4780@l +/* 8024A300 00247260 38 A0 00 00 */ li r5, 0 +/* 8024A304 00247264 48 0C B5 69 */ bl __nw__FUlPCcPCc +/* 8024A308 00247268 28 03 00 00 */ cmplwi r3, 0 +/* 8024A30C 0024726C 41 82 00 14 */ beq lbl_8024A320 +/* 8024A310 00247270 38 00 00 00 */ li r0, 0 +/* 8024A314 00247274 90 03 00 04 */ stw r0, 4(r3) +/* 8024A318 00247278 90 03 00 08 */ stw r0, 8(r3) +/* 8024A31C 0024727C 90 03 00 0C */ stw r0, 0xc(r3) +lbl_8024A320: +/* 8024A320 00247280 7C 64 1B 78 */ mr r4, r3 +/* 8024A324 00247284 38 7D 00 1C */ addi r3, r29, 0x1c +/* 8024A328 00247288 4B FF F2 3D */ bl sub_80249564 +/* 8024A32C 0024728C 83 FD 00 1C */ lwz r31, 0x1c(r29) +/* 8024A330 00247290 38 7D 00 0C */ addi r3, r29, 0xc +/* 8024A334 00247294 38 80 00 10 */ li r4, 0x10 +/* 8024A338 00247298 48 00 0C 51 */ bl sub_8024af88 +/* 8024A33C 0024729C 7F E3 FB 78 */ mr r3, r31 +/* 8024A340 002472A0 38 80 00 10 */ li r4, 0x10 +/* 8024A344 002472A4 48 00 0D 7D */ bl sub_8024b0c0 +/* 8024A348 002472A8 80 8D A0 60 */ lwz r4, gpResourceFactory@sda21(r13) +/* 8024A34C 002472AC 38 61 00 40 */ addi r3, r1, 0x40 +/* 8024A350 002472B0 4B FD 29 1D */ bl sub_8021cc6c +/* 8024A354 002472B4 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8024A358 002472B8 80 61 00 48 */ lwz r3, 0x48(r1) +/* 8024A35C 002472BC 2C 00 00 00 */ cmpwi r0, 0 +/* 8024A360 002472C0 90 01 00 54 */ stw r0, 0x54(r1) +/* 8024A364 002472C4 90 61 00 58 */ stw r3, 0x58(r1) +/* 8024A368 002472C8 40 82 00 18 */ bne lbl_8024A380 +/* 8024A36C 002472CC 2C 03 00 00 */ cmpwi r3, 0 +/* 8024A370 002472D0 40 82 00 10 */ bne lbl_8024A380 +/* 8024A374 002472D4 38 00 00 00 */ li r0, 0 +/* 8024A378 002472D8 90 01 00 5C */ stw r0, 0x5c(r1) +/* 8024A37C 002472DC 48 00 00 80 */ b lbl_8024A3FC +lbl_8024A380: +/* 8024A380 002472E0 80 01 00 58 */ lwz r0, 0x58(r1) +/* 8024A384 002472E4 1C 60 00 18 */ mulli r3, r0, 0x18 +/* 8024A388 002472E8 2C 03 00 00 */ cmpwi r3, 0 +/* 8024A38C 002472EC 40 82 00 10 */ bne lbl_8024A39C +/* 8024A390 002472F0 38 00 00 00 */ li r0, 0 +/* 8024A394 002472F4 90 01 00 5C */ stw r0, 0x5c(r1) +/* 8024A398 002472F8 48 00 00 18 */ b lbl_8024A3B0 +lbl_8024A39C: +/* 8024A39C 002472FC 3C 80 80 3D */ lis r4, lbl_803D4780@ha +/* 8024A3A0 00247300 38 A0 00 00 */ li r5, 0 +/* 8024A3A4 00247304 38 84 47 80 */ addi r4, r4, lbl_803D4780@l +/* 8024A3A8 00247308 48 0C B4 71 */ bl __nwa__FUlPCcPCc +/* 8024A3AC 0024730C 90 61 00 5C */ stw r3, 0x5c(r1) +lbl_8024A3B0: +/* 8024A3B0 00247310 83 41 00 54 */ lwz r26, 0x54(r1) +/* 8024A3B4 00247314 3B C0 00 00 */ li r30, 0 +/* 8024A3B8 00247318 83 61 00 4C */ lwz r27, 0x4c(r1) +/* 8024A3BC 0024731C 83 81 00 5C */ lwz r28, 0x5c(r1) +/* 8024A3C0 00247320 48 00 00 34 */ b lbl_8024A3F4 +lbl_8024A3C4: +/* 8024A3C4 00247324 28 1C 00 00 */ cmplwi r28, 0 +/* 8024A3C8 00247328 41 82 00 20 */ beq lbl_8024A3E8 +/* 8024A3CC 0024732C 7F 83 E3 78 */ mr r3, r28 +/* 8024A3D0 00247330 7F 64 DB 78 */ mr r4, r27 +/* 8024A3D4 00247334 48 0F 3D 8D */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8024A3D8 00247338 80 1B 00 10 */ lwz r0, 0x10(r27) +/* 8024A3DC 0024733C 90 1C 00 10 */ stw r0, 0x10(r28) +/* 8024A3E0 00247340 80 1B 00 14 */ lwz r0, 0x14(r27) +/* 8024A3E4 00247344 90 1C 00 14 */ stw r0, 0x14(r28) +lbl_8024A3E8: +/* 8024A3E8 00247348 3B 9C 00 18 */ addi r28, r28, 0x18 +/* 8024A3EC 0024734C 3B DE 00 01 */ addi r30, r30, 1 +/* 8024A3F0 00247350 3B 7B 00 18 */ addi r27, r27, 0x18 +lbl_8024A3F4: +/* 8024A3F4 00247354 7C 1E D0 00 */ cmpw r30, r26 +/* 8024A3F8 00247358 41 80 FF CC */ blt lbl_8024A3C4 +lbl_8024A3FC: +/* 8024A3FC 0024735C 38 61 00 40 */ addi r3, r1, 0x40 +/* 8024A400 00247360 38 80 FF FF */ li r4, -1 +/* 8024A404 00247364 4B DB A5 E9 */ bl sub_800049ec +/* 8024A408 00247368 83 C1 00 5C */ lwz r30, 0x5c(r1) +/* 8024A40C 0024736C 48 00 01 40 */ b lbl_8024A54C +lbl_8024A410: +/* 8024A410 00247370 80 9E 00 14 */ lwz r4, 0x14(r30) +/* 8024A414 00247374 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) +/* 8024A418 00247378 90 81 00 34 */ stw r4, 0x34(r1) +/* 8024A41C 0024737C 38 63 00 04 */ addi r3, r3, 4 +/* 8024A420 00247380 48 0F 18 AD */ bl GetResourceTypeById__10CResLoaderCFUi +/* 8024A424 00247384 3C 03 B2 B4 */ addis r0, r3, 0xb2b4 +/* 8024A428 00247388 28 00 56 4C */ cmplwi r0, 0x564c +/* 8024A42C 0024738C 40 82 01 1C */ bne lbl_8024A548 +/* 8024A430 00247390 89 21 00 08 */ lbz r9, 8(r1) +/* 8024A434 00247394 38 61 00 2C */ addi r3, r1, 0x2c +/* 8024A438 00247398 38 81 00 28 */ addi r4, r1, 0x28 +/* 8024A43C 0024739C 38 A1 00 20 */ addi r5, r1, 0x20 +/* 8024A440 002473A0 99 21 00 10 */ stb r9, 0x10(r1) +/* 8024A444 002473A4 38 C1 00 34 */ addi r6, r1, 0x34 +/* 8024A448 002473A8 38 E1 00 10 */ addi r7, r1, 0x10 +/* 8024A44C 002473AC 80 1D 00 10 */ lwz r0, 0x10(r29) +/* 8024A450 002473B0 81 1D 00 18 */ lwz r8, 0x18(r29) +/* 8024A454 002473B4 1C 00 00 4C */ mulli r0, r0, 0x4c +/* 8024A458 002473B8 99 21 00 0C */ stb r9, 0xc(r1) +/* 8024A45C 002473BC 7D 08 02 14 */ add r8, r8, r0 +/* 8024A460 002473C0 91 01 00 20 */ stw r8, 0x20(r1) +/* 8024A464 002473C4 80 1D 00 18 */ lwz r0, 0x18(r29) +/* 8024A468 002473C8 91 01 00 1C */ stw r8, 0x1c(r1) +/* 8024A46C 002473CC 90 01 00 24 */ stw r0, 0x24(r1) +/* 8024A470 002473D0 90 01 00 28 */ stw r0, 0x28(r1) +/* 8024A474 002473D4 48 00 09 95 */ bl sub_8024ae08 +/* 8024A478 002473D8 80 1D 00 10 */ lwz r0, 0x10(r29) +/* 8024A47C 002473DC 80 81 00 2C */ lwz r4, 0x2c(r1) +/* 8024A480 002473E0 1C 00 00 4C */ mulli r0, r0, 0x4c +/* 8024A484 002473E4 80 7D 00 18 */ lwz r3, 0x18(r29) +/* 8024A488 002473E8 90 81 00 30 */ stw r4, 0x30(r1) +/* 8024A48C 002473EC 7C 03 02 14 */ add r0, r3, r0 +/* 8024A490 002473F0 7C 04 00 40 */ cmplw r4, r0 +/* 8024A494 002473F4 41 82 00 14 */ beq lbl_8024A4A8 +/* 8024A498 002473F8 80 61 00 34 */ lwz r3, 0x34(r1) +/* 8024A49C 002473FC 80 04 00 00 */ lwz r0, 0(r4) +/* 8024A4A0 00247400 7C 03 00 40 */ cmplw r3, r0 +/* 8024A4A4 00247404 41 82 00 A4 */ beq lbl_8024A548 +lbl_8024A4A8: +/* 8024A4A8 00247408 38 00 00 00 */ li r0, 0 +/* 8024A4AC 0024740C 38 C0 FF FF */ li r6, -1 +/* 8024A4B0 00247410 90 C1 00 E8 */ stw r6, 0xe8(r1) +/* 8024A4B4 00247414 38 61 00 9C */ addi r3, r1, 0x9c +/* 8024A4B8 00247418 38 81 00 34 */ addi r4, r1, 0x34 +/* 8024A4BC 0024741C 38 A1 00 E8 */ addi r5, r1, 0xe8 +/* 8024A4C0 00247420 90 C1 00 EC */ stw r6, 0xec(r1) +/* 8024A4C4 00247424 90 01 00 F0 */ stw r0, 0xf0(r1) +/* 8024A4C8 00247428 90 01 00 F8 */ stw r0, 0xf8(r1) +/* 8024A4CC 0024742C 90 01 00 FC */ stw r0, 0xfc(r1) +/* 8024A4D0 00247430 90 01 01 00 */ stw r0, 0x100(r1) +/* 8024A4D4 00247434 90 01 01 08 */ stw r0, 0x108(r1) +/* 8024A4D8 00247438 90 01 01 0C */ stw r0, 0x10c(r1) +/* 8024A4DC 0024743C 90 01 01 10 */ stw r0, 0x110(r1) +/* 8024A4E0 00247440 98 01 01 20 */ stb r0, 0x120(r1) +/* 8024A4E4 00247444 98 01 01 2C */ stb r0, 0x12c(r1) +/* 8024A4E8 00247448 48 00 08 85 */ bl sub_8024ad6c +/* 8024A4EC 0024744C 80 01 00 30 */ lwz r0, 0x30(r1) +/* 8024A4F0 00247450 38 61 00 18 */ addi r3, r1, 0x18 +/* 8024A4F4 00247454 38 9D 00 0C */ addi r4, r29, 0xc +/* 8024A4F8 00247458 38 A1 00 14 */ addi r5, r1, 0x14 +/* 8024A4FC 0024745C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024A500 00247460 38 C1 00 9C */ addi r6, r1, 0x9c +/* 8024A504 00247464 48 00 02 DD */ bl sub_8024a7e0 +/* 8024A508 00247468 38 61 00 9C */ addi r3, r1, 0x9c +/* 8024A50C 0024746C 38 80 FF FF */ li r4, -1 +/* 8024A510 00247470 4B FF FB 15 */ bl sub_8024a024 +/* 8024A514 00247474 38 61 00 E8 */ addi r3, r1, 0xe8 +/* 8024A518 00247478 38 80 FF FF */ li r4, -1 +/* 8024A51C 0024747C 4B FF FB 61 */ bl sub_8024a07c +/* 8024A520 00247480 80 81 00 34 */ lwz r4, 0x34(r1) +/* 8024A524 00247484 38 61 00 60 */ addi r3, r1, 0x60 +/* 8024A528 00247488 38 A0 FF FF */ li r5, -1 +/* 8024A52C 0024748C 4B FF F6 7D */ bl __ct__20CMemorySomethingElseFUiUi +/* 8024A530 00247490 7F E3 FB 78 */ mr r3, r31 +/* 8024A534 00247494 38 81 00 60 */ addi r4, r1, 0x60 +/* 8024A538 00247498 48 00 00 51 */ bl sub_8024a588 +/* 8024A53C 0024749C 38 61 00 60 */ addi r3, r1, 0x60 +/* 8024A540 002474A0 38 80 FF FF */ li r4, -1 +/* 8024A544 002474A4 4B FF F1 69 */ bl sub_802496ac +lbl_8024A548: +/* 8024A548 002474A8 3B DE 00 18 */ addi r30, r30, 0x18 +lbl_8024A54C: +/* 8024A54C 002474AC 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8024A550 002474B0 80 61 00 5C */ lwz r3, 0x5c(r1) +/* 8024A554 002474B4 1C 00 00 18 */ mulli r0, r0, 0x18 +/* 8024A558 002474B8 7C 03 02 14 */ add r0, r3, r0 +/* 8024A55C 002474BC 7C 1E 00 40 */ cmplw r30, r0 +/* 8024A560 002474C0 40 82 FE B0 */ bne lbl_8024A410 +/* 8024A564 002474C4 38 61 00 50 */ addi r3, r1, 0x50 +/* 8024A568 002474C8 38 80 FF FF */ li r4, -1 +/* 8024A56C 002474CC 4B DB A4 81 */ bl sub_800049ec +/* 8024A570 002474D0 7F A3 EB 78 */ mr r3, r29 +/* 8024A574 002474D4 BB 41 01 38 */ lmw r26, 0x138(r1) +/* 8024A578 002474D8 80 01 01 54 */ lwz r0, 0x154(r1) +/* 8024A57C 002474DC 7C 08 03 A6 */ mtlr r0 +/* 8024A580 002474E0 38 21 01 50 */ addi r1, r1, 0x150 +/* 8024A584 002474E4 4E 80 00 20 */ blr + +.global sub_8024a588 +sub_8024a588: +/* 8024A588 002474E8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024A58C 002474EC 7C 08 02 A6 */ mflr r0 +/* 8024A590 002474F0 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024A594 002474F4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024A598 002474F8 7C 9F 23 78 */ mr r31, r4 +/* 8024A59C 002474FC 93 C1 00 08 */ stw r30, 8(r1) +/* 8024A5A0 00247500 7C 7E 1B 78 */ mr r30, r3 +/* 8024A5A4 00247504 80 03 00 04 */ lwz r0, 4(r3) +/* 8024A5A8 00247508 80 A3 00 08 */ lwz r5, 8(r3) +/* 8024A5AC 0024750C 7C 00 28 00 */ cmpw r0, r5 +/* 8024A5B0 00247510 41 80 00 18 */ blt lbl_8024A5C8 +/* 8024A5B4 00247514 2C 05 00 00 */ cmpwi r5, 0 +/* 8024A5B8 00247518 38 80 00 04 */ li r4, 4 +/* 8024A5BC 0024751C 41 82 00 08 */ beq lbl_8024A5C4 +/* 8024A5C0 00247520 54 A4 08 3C */ slwi r4, r5, 1 +lbl_8024A5C4: +/* 8024A5C4 00247524 48 00 0A FD */ bl sub_8024b0c0 +lbl_8024A5C8: +/* 8024A5C8 00247528 80 1E 00 04 */ lwz r0, 4(r30) +/* 8024A5CC 0024752C 7F E4 FB 78 */ mr r4, r31 +/* 8024A5D0 00247530 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 8024A5D4 00247534 1C 00 00 3C */ mulli r0, r0, 0x3c +/* 8024A5D8 00247538 7C 63 02 14 */ add r3, r3, r0 +/* 8024A5DC 0024753C 48 00 00 29 */ bl sub_8024a604 +/* 8024A5E0 00247540 80 7E 00 04 */ lwz r3, 4(r30) +/* 8024A5E4 00247544 38 03 00 01 */ addi r0, r3, 1 +/* 8024A5E8 00247548 90 1E 00 04 */ stw r0, 4(r30) +/* 8024A5EC 0024754C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024A5F0 00247550 83 C1 00 08 */ lwz r30, 8(r1) +/* 8024A5F4 00247554 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024A5F8 00247558 7C 08 03 A6 */ mtlr r0 +/* 8024A5FC 0024755C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024A600 00247560 4E 80 00 20 */ blr + +.global sub_8024a604 +sub_8024a604: +/* 8024A604 00247564 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024A608 00247568 7C 08 02 A6 */ mflr r0 +/* 8024A60C 0024756C 28 03 00 00 */ cmplwi r3, 0 +/* 8024A610 00247570 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024A614 00247574 41 82 00 08 */ beq lbl_8024A61C +/* 8024A618 00247578 48 00 00 15 */ bl sub_8024a62c +lbl_8024A61C: +/* 8024A61C 0024757C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024A620 00247580 7C 08 03 A6 */ mtlr r0 +/* 8024A624 00247584 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024A628 00247588 4E 80 00 20 */ blr + +.global sub_8024a62c +sub_8024a62c: +/* 8024A62C 0024758C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024A630 00247590 7C 08 02 A6 */ mflr r0 +/* 8024A634 00247594 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024A638 00247598 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024A63C 0024759C 7C 9F 23 78 */ mr r31, r4 +/* 8024A640 002475A0 93 C1 00 08 */ stw r30, 8(r1) +/* 8024A644 002475A4 7C 7E 1B 78 */ mr r30, r3 +/* 8024A648 002475A8 80 04 00 00 */ lwz r0, 0(r4) +/* 8024A64C 002475AC 90 03 00 00 */ stw r0, 0(r3) +/* 8024A650 002475B0 80 04 00 04 */ lwz r0, 4(r4) +/* 8024A654 002475B4 90 03 00 04 */ stw r0, 4(r3) +/* 8024A658 002475B8 80 04 00 08 */ lwz r0, 8(r4) +/* 8024A65C 002475BC 90 03 00 08 */ stw r0, 8(r3) +/* 8024A660 002475C0 80 04 00 10 */ lwz r0, 0x10(r4) +/* 8024A664 002475C4 90 03 00 10 */ stw r0, 0x10(r3) +/* 8024A668 002475C8 80 04 00 14 */ lwz r0, 0x14(r4) +/* 8024A66C 002475CC 90 03 00 14 */ stw r0, 0x14(r3) +/* 8024A670 002475D0 80 04 00 10 */ lwz r0, 0x10(r4) +/* 8024A674 002475D4 2C 00 00 00 */ cmpwi r0, 0 +/* 8024A678 002475D8 40 82 00 1C */ bne lbl_8024A694 +/* 8024A67C 002475DC 80 1F 00 14 */ lwz r0, 0x14(r31) +/* 8024A680 002475E0 2C 00 00 00 */ cmpwi r0, 0 +/* 8024A684 002475E4 40 82 00 10 */ bne lbl_8024A694 +/* 8024A688 002475E8 38 00 00 00 */ li r0, 0 +/* 8024A68C 002475EC 90 1E 00 18 */ stw r0, 0x18(r30) +/* 8024A690 002475F0 48 00 00 64 */ b lbl_8024A6F4 +lbl_8024A694: +/* 8024A694 002475F4 80 1E 00 14 */ lwz r0, 0x14(r30) +/* 8024A698 002475F8 54 03 10 3B */ rlwinm. r3, r0, 2, 0, 0x1d +/* 8024A69C 002475FC 40 82 00 10 */ bne lbl_8024A6AC +/* 8024A6A0 00247600 38 00 00 00 */ li r0, 0 +/* 8024A6A4 00247604 90 1E 00 18 */ stw r0, 0x18(r30) +/* 8024A6A8 00247608 48 00 00 18 */ b lbl_8024A6C0 +lbl_8024A6AC: +/* 8024A6AC 0024760C 3C 80 80 3D */ lis r4, lbl_803D4780@ha +/* 8024A6B0 00247610 38 A0 00 00 */ li r5, 0 +/* 8024A6B4 00247614 38 84 47 80 */ addi r4, r4, lbl_803D4780@l +/* 8024A6B8 00247618 48 0C B1 61 */ bl __nwa__FUlPCcPCc +/* 8024A6BC 0024761C 90 7E 00 18 */ stw r3, 0x18(r30) +lbl_8024A6C0: +/* 8024A6C0 00247620 80 1E 00 10 */ lwz r0, 0x10(r30) +/* 8024A6C4 00247624 80 9F 00 18 */ lwz r4, 0x18(r31) +/* 8024A6C8 00247628 80 7E 00 18 */ lwz r3, 0x18(r30) +/* 8024A6CC 0024762C 7C 09 03 A6 */ mtctr r0 +/* 8024A6D0 00247630 2C 00 00 00 */ cmpwi r0, 0 +/* 8024A6D4 00247634 40 81 00 20 */ ble lbl_8024A6F4 +lbl_8024A6D8: +/* 8024A6D8 00247638 28 03 00 00 */ cmplwi r3, 0 +/* 8024A6DC 0024763C 41 82 00 0C */ beq lbl_8024A6E8 +/* 8024A6E0 00247640 80 04 00 00 */ lwz r0, 0(r4) +/* 8024A6E4 00247644 90 03 00 00 */ stw r0, 0(r3) +lbl_8024A6E8: +/* 8024A6E8 00247648 38 63 00 04 */ addi r3, r3, 4 +/* 8024A6EC 0024764C 38 84 00 04 */ addi r4, r4, 4 +/* 8024A6F0 00247650 42 00 FF E8 */ bdnz lbl_8024A6D8 +lbl_8024A6F4: +/* 8024A6F4 00247654 80 1F 00 20 */ lwz r0, 0x20(r31) +/* 8024A6F8 00247658 90 1E 00 20 */ stw r0, 0x20(r30) +/* 8024A6FC 0024765C 80 1F 00 24 */ lwz r0, 0x24(r31) +/* 8024A700 00247660 90 1E 00 24 */ stw r0, 0x24(r30) +/* 8024A704 00247664 80 1F 00 20 */ lwz r0, 0x20(r31) +/* 8024A708 00247668 2C 00 00 00 */ cmpwi r0, 0 +/* 8024A70C 0024766C 40 82 00 1C */ bne lbl_8024A728 +/* 8024A710 00247670 80 1F 00 24 */ lwz r0, 0x24(r31) +/* 8024A714 00247674 2C 00 00 00 */ cmpwi r0, 0 +/* 8024A718 00247678 40 82 00 10 */ bne lbl_8024A728 +/* 8024A71C 0024767C 38 00 00 00 */ li r0, 0 +/* 8024A720 00247680 90 1E 00 28 */ stw r0, 0x28(r30) +/* 8024A724 00247684 48 00 00 74 */ b lbl_8024A798 +lbl_8024A728: +/* 8024A728 00247688 80 1E 00 24 */ lwz r0, 0x24(r30) +/* 8024A72C 0024768C 54 03 20 37 */ rlwinm. r3, r0, 4, 0, 0x1b +/* 8024A730 00247690 40 82 00 10 */ bne lbl_8024A740 +/* 8024A734 00247694 38 00 00 00 */ li r0, 0 +/* 8024A738 00247698 90 1E 00 28 */ stw r0, 0x28(r30) +/* 8024A73C 0024769C 48 00 00 18 */ b lbl_8024A754 +lbl_8024A740: +/* 8024A740 002476A0 3C 80 80 3D */ lis r4, lbl_803D4780@ha +/* 8024A744 002476A4 38 A0 00 00 */ li r5, 0 +/* 8024A748 002476A8 38 84 47 80 */ addi r4, r4, lbl_803D4780@l +/* 8024A74C 002476AC 48 0C B0 CD */ bl __nwa__FUlPCcPCc +/* 8024A750 002476B0 90 7E 00 28 */ stw r3, 0x28(r30) +lbl_8024A754: +/* 8024A754 002476B4 80 1E 00 20 */ lwz r0, 0x20(r30) +/* 8024A758 002476B8 80 BF 00 28 */ lwz r5, 0x28(r31) +/* 8024A75C 002476BC 80 9E 00 28 */ lwz r4, 0x28(r30) +/* 8024A760 002476C0 7C 09 03 A6 */ mtctr r0 +/* 8024A764 002476C4 2C 00 00 00 */ cmpwi r0, 0 +/* 8024A768 002476C8 40 81 00 30 */ ble lbl_8024A798 +lbl_8024A76C: +/* 8024A76C 002476CC 28 04 00 00 */ cmplwi r4, 0 +/* 8024A770 002476D0 41 82 00 1C */ beq lbl_8024A78C +/* 8024A774 002476D4 80 05 00 00 */ lwz r0, 0(r5) +/* 8024A778 002476D8 90 04 00 00 */ stw r0, 0(r4) +/* 8024A77C 002476DC 80 05 00 08 */ lwz r0, 8(r5) +/* 8024A780 002476E0 80 65 00 0C */ lwz r3, 0xc(r5) +/* 8024A784 002476E4 90 64 00 0C */ stw r3, 0xc(r4) +/* 8024A788 002476E8 90 04 00 08 */ stw r0, 8(r4) +lbl_8024A78C: +/* 8024A78C 002476EC 38 84 00 10 */ addi r4, r4, 0x10 +/* 8024A790 002476F0 38 A5 00 10 */ addi r5, r5, 0x10 +/* 8024A794 002476F4 42 00 FF D8 */ bdnz lbl_8024A76C +lbl_8024A798: +/* 8024A798 002476F8 88 1F 00 2C */ lbz r0, 0x2c(r31) +/* 8024A79C 002476FC 38 80 00 00 */ li r4, 0 +/* 8024A7A0 00247700 7F C3 F3 78 */ mr r3, r30 +/* 8024A7A4 00247704 98 1E 00 2C */ stb r0, 0x2c(r30) +/* 8024A7A8 00247708 80 1F 00 30 */ lwz r0, 0x30(r31) +/* 8024A7AC 0024770C 90 1E 00 30 */ stw r0, 0x30(r30) +/* 8024A7B0 00247710 98 9F 00 2C */ stb r4, 0x2c(r31) +/* 8024A7B4 00247714 88 1F 00 34 */ lbz r0, 0x34(r31) +/* 8024A7B8 00247718 98 1E 00 34 */ stb r0, 0x34(r30) +/* 8024A7BC 0024771C 80 1F 00 38 */ lwz r0, 0x38(r31) +/* 8024A7C0 00247720 90 1E 00 38 */ stw r0, 0x38(r30) +/* 8024A7C4 00247724 98 9F 00 34 */ stb r4, 0x34(r31) +/* 8024A7C8 00247728 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024A7CC 0024772C 83 C1 00 08 */ lwz r30, 8(r1) +/* 8024A7D0 00247730 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024A7D4 00247734 7C 08 03 A6 */ mtlr r0 +/* 8024A7D8 00247738 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024A7DC 0024773C 4E 80 00 20 */ blr + +.global sub_8024a7e0 +sub_8024a7e0: +/* 8024A7E0 00247740 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8024A7E4 00247744 7C 08 02 A6 */ mflr r0 +/* 8024A7E8 00247748 90 01 00 34 */ stw r0, 0x34(r1) +/* 8024A7EC 0024774C 38 00 00 00 */ li r0, 0 +/* 8024A7F0 00247750 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8024A7F4 00247754 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8024A7F8 00247758 7C 9E 23 78 */ mr r30, r4 +/* 8024A7FC 0024775C 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8024A800 00247760 7C 7D 1B 78 */ mr r29, r3 +/* 8024A804 00247764 7F C3 F3 78 */ mr r3, r30 +/* 8024A808 00247768 81 05 00 00 */ lwz r8, 0(r5) +/* 8024A80C 0024776C 80 A4 00 0C */ lwz r5, 0xc(r4) +/* 8024A810 00247770 3C 80 6B CA */ lis r4, 0x6BCA1AF3@ha +/* 8024A814 00247774 38 84 1A F3 */ addi r4, r4, 0x6BCA1AF3@l +/* 8024A818 00247778 90 C1 00 14 */ stw r6, 0x14(r1) +/* 8024A81C 0024777C 7C A5 40 50 */ subf r5, r5, r8 +/* 8024A820 00247780 7C E4 28 96 */ mulhw r7, r4, r5 +/* 8024A824 00247784 90 C1 00 0C */ stw r6, 0xc(r1) +/* 8024A828 00247788 38 81 00 08 */ addi r4, r1, 8 +/* 8024A82C 0024778C 90 01 00 18 */ stw r0, 0x18(r1) +/* 8024A830 00247790 38 C1 00 0C */ addi r6, r1, 0xc +/* 8024A834 00247794 38 A0 00 01 */ li r5, 1 +/* 8024A838 00247798 7C E7 2E 70 */ srawi r7, r7, 5 +/* 8024A83C 0024779C 90 01 00 10 */ stw r0, 0x10(r1) +/* 8024A840 002477A0 54 E0 0F FE */ srwi r0, r7, 0x1f +/* 8024A844 002477A4 91 01 00 08 */ stw r8, 8(r1) +/* 8024A848 002477A8 7F E7 02 14 */ add r31, r7, r0 +/* 8024A84C 002477AC 48 00 00 31 */ bl sub_8024a87c +/* 8024A850 002477B0 1C 1F 00 4C */ mulli r0, r31, 0x4c +/* 8024A854 002477B4 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 8024A858 002477B8 7C 63 02 14 */ add r3, r3, r0 +/* 8024A85C 002477BC 90 7D 00 00 */ stw r3, 0(r29) +/* 8024A860 002477C0 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8024A864 002477C4 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8024A868 002477C8 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8024A86C 002477CC 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8024A870 002477D0 7C 08 03 A6 */ mtlr r0 +/* 8024A874 002477D4 38 21 00 30 */ addi r1, r1, 0x30 +/* 8024A878 002477D8 4E 80 00 20 */ blr + +.global sub_8024a87c +sub_8024a87c: +/* 8024A87C 002477DC 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8024A880 002477E0 7C 08 02 A6 */ mflr r0 +/* 8024A884 002477E4 90 01 00 44 */ stw r0, 0x44(r1) +/* 8024A888 002477E8 BE A1 00 14 */ stmw r21, 0x14(r1) +/* 8024A88C 002477EC 7C BA 2B 78 */ mr r26, r5 +/* 8024A890 002477F0 7C 79 1B 78 */ mr r25, r3 +/* 8024A894 002477F4 7C 95 23 78 */ mr r21, r4 +/* 8024A898 002477F8 80 A3 00 04 */ lwz r5, 4(r3) +/* 8024A89C 002477FC 80 63 00 08 */ lwz r3, 8(r3) +/* 8024A8A0 00247800 7C E5 D2 14 */ add r7, r5, r26 +/* 8024A8A4 00247804 80 99 00 0C */ lwz r4, 0xc(r25) +/* 8024A8A8 00247808 7C 07 18 00 */ cmpw r7, r3 +/* 8024A8AC 0024780C 83 C6 00 00 */ lwz r30, 0(r6) +/* 8024A8B0 00247810 7C 9D 23 78 */ mr r29, r4 +/* 8024A8B4 00247814 41 81 00 B4 */ bgt lbl_8024A968 +/* 8024A8B8 00247818 80 15 00 00 */ lwz r0, 0(r21) +/* 8024A8BC 0024781C 3C 60 6B CA */ lis r3, 0x6BCA1AF3@ha +/* 8024A8C0 00247820 38 63 1A F3 */ addi r3, r3, 0x6BCA1AF3@l +/* 8024A8C4 00247824 7C 04 00 50 */ subf r0, r4, r0 +/* 8024A8C8 00247828 7C 03 00 96 */ mulhw r0, r3, r0 +/* 8024A8CC 0024782C 7C 00 2E 70 */ srawi r0, r0, 5 +/* 8024A8D0 00247830 54 03 0F FE */ srwi r3, r0, 0x1f +/* 8024A8D4 00247834 7F 60 1A 14 */ add r27, r0, r3 +/* 8024A8D8 00247838 7C 7B 28 50 */ subf r3, r27, r5 +/* 8024A8DC 0024783C 3A E3 FF FF */ addi r23, r3, -1 +/* 8024A8E0 00247840 1C 7B 00 4C */ mulli r3, r27, 0x4c +/* 8024A8E4 00247844 1C 1A 00 4C */ mulli r0, r26, 0x4c +/* 8024A8E8 00247848 7E C4 1A 14 */ add r22, r4, r3 +/* 8024A8EC 0024784C 1C 77 00 4C */ mulli r3, r23, 0x4c +/* 8024A8F0 00247850 7F 00 1A 14 */ add r24, r0, r3 +/* 8024A8F4 00247854 7F 16 C2 14 */ add r24, r22, r24 +/* 8024A8F8 00247858 7F 96 1A 14 */ add r28, r22, r3 +/* 8024A8FC 0024785C 48 00 00 30 */ b lbl_8024A92C +lbl_8024A900: +/* 8024A900 00247860 7C 1B BA 14 */ add r0, r27, r23 +/* 8024A904 00247864 80 99 00 0C */ lwz r4, 0xc(r25) +/* 8024A908 00247868 1C 00 00 4C */ mulli r0, r0, 0x4c +/* 8024A90C 0024786C 7F 03 C3 78 */ mr r3, r24 +/* 8024A910 00247870 7C 84 02 14 */ add r4, r4, r0 +/* 8024A914 00247874 48 00 02 01 */ bl sub_8024ab14 +/* 8024A918 00247878 7F 83 E3 78 */ mr r3, r28 +/* 8024A91C 0024787C 4B FF F6 E5 */ bl sub_8024a000 +/* 8024A920 00247880 3B 18 FF B4 */ addi r24, r24, -76 +/* 8024A924 00247884 3B 9C FF B4 */ addi r28, r28, -76 +/* 8024A928 00247888 3A F7 FF FF */ addi r23, r23, -1 +lbl_8024A92C: +/* 8024A92C 0024788C 2C 17 00 00 */ cmpwi r23, 0 +/* 8024A930 00247890 40 80 FF D0 */ bge lbl_8024A900 +/* 8024A934 00247894 3A E0 00 00 */ li r23, 0 +/* 8024A938 00247898 48 00 00 18 */ b lbl_8024A950 +lbl_8024A93C: +/* 8024A93C 0024789C 7E C3 B3 78 */ mr r3, r22 +/* 8024A940 002478A0 7F C4 F3 78 */ mr r4, r30 +/* 8024A944 002478A4 48 00 01 D1 */ bl sub_8024ab14 +/* 8024A948 002478A8 3A D6 00 4C */ addi r22, r22, 0x4c +/* 8024A94C 002478AC 3A F7 00 01 */ addi r23, r23, 1 +lbl_8024A950: +/* 8024A950 002478B0 7C 17 D0 00 */ cmpw r23, r26 +/* 8024A954 002478B4 41 80 FF E8 */ blt lbl_8024A93C +/* 8024A958 002478B8 80 19 00 04 */ lwz r0, 4(r25) +/* 8024A95C 002478BC 7C 00 D2 14 */ add r0, r0, r26 +/* 8024A960 002478C0 90 19 00 04 */ stw r0, 4(r25) +/* 8024A964 002478C4 48 00 01 50 */ b lbl_8024AAB4 +lbl_8024A968: +/* 8024A968 002478C8 2C 03 00 00 */ cmpwi r3, 0 +/* 8024A96C 002478CC 38 00 00 04 */ li r0, 4 +/* 8024A970 002478D0 41 82 00 08 */ beq lbl_8024A978 +/* 8024A974 002478D4 54 60 08 3C */ slwi r0, r3, 1 +lbl_8024A978: +/* 8024A978 002478D8 7C 1C 03 78 */ mr r28, r0 +/* 8024A97C 002478DC 48 00 00 08 */ b lbl_8024A984 +lbl_8024A980: +/* 8024A980 002478E0 57 9C 08 3C */ slwi r28, r28, 1 +lbl_8024A984: +/* 8024A984 002478E4 7C 1C 38 00 */ cmpw r28, r7 +/* 8024A988 002478E8 41 80 FF F8 */ blt lbl_8024A980 +/* 8024A98C 002478EC 1C 7C 00 4C */ mulli r3, r28, 0x4c +/* 8024A990 002478F0 2C 03 00 00 */ cmpwi r3, 0 +/* 8024A994 002478F4 40 82 00 0C */ bne lbl_8024A9A0 +/* 8024A998 002478F8 3B E0 00 00 */ li r31, 0 +/* 8024A99C 002478FC 48 00 00 18 */ b lbl_8024A9B4 +lbl_8024A9A0: +/* 8024A9A0 00247900 3C 80 80 3D */ lis r4, lbl_803D4780@ha +/* 8024A9A4 00247904 38 A0 00 00 */ li r5, 0 +/* 8024A9A8 00247908 38 84 47 80 */ addi r4, r4, lbl_803D4780@l +/* 8024A9AC 0024790C 48 0C AE 6D */ bl __nwa__FUlPCcPCc +/* 8024A9B0 00247910 7C 7F 1B 78 */ mr r31, r3 +lbl_8024A9B4: +/* 8024A9B4 00247914 80 99 00 0C */ lwz r4, 0xc(r25) +/* 8024A9B8 00247918 3C 60 6B CA */ lis r3, 0x6BCA1AF3@ha +/* 8024A9BC 0024791C 80 15 00 00 */ lwz r0, 0(r21) +/* 8024A9C0 00247920 38 63 1A F3 */ addi r3, r3, 0x6BCA1AF3@l +/* 8024A9C4 00247924 7F F6 FB 78 */ mr r22, r31 +/* 8024A9C8 00247928 3B 60 00 00 */ li r27, 0 +/* 8024A9CC 0024792C 7C 04 00 50 */ subf r0, r4, r0 +/* 8024A9D0 00247930 3A A0 00 00 */ li r21, 0 +/* 8024A9D4 00247934 7C 03 00 96 */ mulhw r0, r3, r0 +/* 8024A9D8 00247938 3A E0 00 00 */ li r23, 0 +/* 8024A9DC 0024793C 7C 00 2E 70 */ srawi r0, r0, 5 +/* 8024A9E0 00247940 54 03 0F FE */ srwi r3, r0, 0x1f +/* 8024A9E4 00247944 7F 00 1A 14 */ add r24, r0, r3 +/* 8024A9E8 00247948 48 00 00 24 */ b lbl_8024AA0C +lbl_8024A9EC: +/* 8024A9EC 0024794C 80 19 00 0C */ lwz r0, 0xc(r25) +/* 8024A9F0 00247950 7E C3 B3 78 */ mr r3, r22 +/* 8024A9F4 00247954 7C 80 BA 14 */ add r4, r0, r23 +/* 8024A9F8 00247958 48 00 01 1D */ bl sub_8024ab14 +/* 8024A9FC 0024795C 3A D6 00 4C */ addi r22, r22, 0x4c +/* 8024AA00 00247960 3B 7B 00 01 */ addi r27, r27, 1 +/* 8024AA04 00247964 3A F7 00 4C */ addi r23, r23, 0x4c +/* 8024AA08 00247968 3A B5 00 01 */ addi r21, r21, 1 +lbl_8024AA0C: +/* 8024AA0C 0024796C 7C 15 C0 00 */ cmpw r21, r24 +/* 8024AA10 00247970 41 80 FF DC */ blt lbl_8024A9EC +/* 8024AA14 00247974 1C 1B 00 4C */ mulli r0, r27, 0x4c +/* 8024AA18 00247978 3A A0 00 00 */ li r21, 0 +/* 8024AA1C 0024797C 7E DF 02 14 */ add r22, r31, r0 +/* 8024AA20 00247980 48 00 00 1C */ b lbl_8024AA3C +lbl_8024AA24: +/* 8024AA24 00247984 7E C3 B3 78 */ mr r3, r22 +/* 8024AA28 00247988 7F C4 F3 78 */ mr r4, r30 +/* 8024AA2C 0024798C 48 00 00 E9 */ bl sub_8024ab14 +/* 8024AA30 00247990 3A D6 00 4C */ addi r22, r22, 0x4c +/* 8024AA34 00247994 3B 7B 00 01 */ addi r27, r27, 1 +/* 8024AA38 00247998 3A B5 00 01 */ addi r21, r21, 1 +lbl_8024AA3C: +/* 8024AA3C 0024799C 7C 15 D0 00 */ cmpw r21, r26 +/* 8024AA40 002479A0 41 80 FF E4 */ blt lbl_8024AA24 +/* 8024AA44 002479A4 1C 1B 00 4C */ mulli r0, r27, 0x4c +/* 8024AA48 002479A8 7F 15 C3 78 */ mr r21, r24 +/* 8024AA4C 002479AC 1E D8 00 4C */ mulli r22, r24, 0x4c +/* 8024AA50 002479B0 7E FF 02 14 */ add r23, r31, r0 +/* 8024AA54 002479B4 48 00 00 20 */ b lbl_8024AA74 +lbl_8024AA58: +/* 8024AA58 002479B8 80 19 00 0C */ lwz r0, 0xc(r25) +/* 8024AA5C 002479BC 7E E3 BB 78 */ mr r3, r23 +/* 8024AA60 002479C0 7C 80 B2 14 */ add r4, r0, r22 +/* 8024AA64 002479C4 48 00 00 B1 */ bl sub_8024ab14 +/* 8024AA68 002479C8 3A F7 00 4C */ addi r23, r23, 0x4c +/* 8024AA6C 002479CC 3A D6 00 4C */ addi r22, r22, 0x4c +/* 8024AA70 002479D0 3A B5 00 01 */ addi r21, r21, 1 +lbl_8024AA74: +/* 8024AA74 002479D4 80 19 00 04 */ lwz r0, 4(r25) +/* 8024AA78 002479D8 7C 15 00 00 */ cmpw r21, r0 +/* 8024AA7C 002479DC 41 80 FF DC */ blt lbl_8024AA58 +/* 8024AA80 002479E0 1C 00 00 4C */ mulli r0, r0, 0x4c +/* 8024AA84 002479E4 7F A3 EB 78 */ mr r3, r29 +/* 8024AA88 002479E8 7C 9D 02 14 */ add r4, r29, r0 +/* 8024AA8C 002479EC 48 00 00 3D */ bl sub_8024aac8 +/* 8024AA90 002479F0 80 79 00 0C */ lwz r3, 0xc(r25) +/* 8024AA94 002479F4 28 03 00 00 */ cmplwi r3, 0 +/* 8024AA98 002479F8 41 82 00 08 */ beq lbl_8024AAA0 +/* 8024AA9C 002479FC 48 0C AE 95 */ bl Free__7CMemoryFPCv +lbl_8024AAA0: +/* 8024AAA0 00247A00 93 F9 00 0C */ stw r31, 0xc(r25) +/* 8024AAA4 00247A04 93 99 00 08 */ stw r28, 8(r25) +/* 8024AAA8 00247A08 80 19 00 04 */ lwz r0, 4(r25) +/* 8024AAAC 00247A0C 7C 00 D2 14 */ add r0, r0, r26 +/* 8024AAB0 00247A10 90 19 00 04 */ stw r0, 4(r25) +lbl_8024AAB4: +/* 8024AAB4 00247A14 BA A1 00 14 */ lmw r21, 0x14(r1) +/* 8024AAB8 00247A18 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8024AABC 00247A1C 7C 08 03 A6 */ mtlr r0 +/* 8024AAC0 00247A20 38 21 00 40 */ addi r1, r1, 0x40 +/* 8024AAC4 00247A24 4E 80 00 20 */ blr + +.global sub_8024aac8 +sub_8024aac8: +/* 8024AAC8 00247A28 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024AACC 00247A2C 7C 08 02 A6 */ mflr r0 +/* 8024AAD0 00247A30 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024AAD4 00247A34 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024AAD8 00247A38 7C 7F 1B 78 */ mr r31, r3 +/* 8024AADC 00247A3C 93 C1 00 08 */ stw r30, 8(r1) +/* 8024AAE0 00247A40 7C 9E 23 78 */ mr r30, r4 +/* 8024AAE4 00247A44 48 00 00 10 */ b lbl_8024AAF4 +lbl_8024AAE8: +/* 8024AAE8 00247A48 7F E3 FB 78 */ mr r3, r31 +/* 8024AAEC 00247A4C 4B FF F5 15 */ bl sub_8024a000 +/* 8024AAF0 00247A50 3B FF 00 4C */ addi r31, r31, 0x4c +lbl_8024AAF4: +/* 8024AAF4 00247A54 7C 1F F0 40 */ cmplw r31, r30 +/* 8024AAF8 00247A58 40 82 FF F0 */ bne lbl_8024AAE8 +/* 8024AAFC 00247A5C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024AB00 00247A60 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024AB04 00247A64 83 C1 00 08 */ lwz r30, 8(r1) +/* 8024AB08 00247A68 7C 08 03 A6 */ mtlr r0 +/* 8024AB0C 00247A6C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024AB10 00247A70 4E 80 00 20 */ blr + +.global sub_8024ab14 +sub_8024ab14: +/* 8024AB14 00247A74 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024AB18 00247A78 7C 08 02 A6 */ mflr r0 +/* 8024AB1C 00247A7C 28 03 00 00 */ cmplwi r3, 0 +/* 8024AB20 00247A80 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024AB24 00247A84 41 82 00 08 */ beq lbl_8024AB2C +/* 8024AB28 00247A88 48 00 00 15 */ bl sub_8024ab3c +lbl_8024AB2C: +/* 8024AB2C 00247A8C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024AB30 00247A90 7C 08 03 A6 */ mtlr r0 +/* 8024AB34 00247A94 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024AB38 00247A98 4E 80 00 20 */ blr + +.global sub_8024ab3c +sub_8024ab3c: +/* 8024AB3C 00247A9C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024AB40 00247AA0 7C 08 02 A6 */ mflr r0 +/* 8024AB44 00247AA4 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024AB48 00247AA8 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024AB4C 00247AAC 7C 7F 1B 78 */ mr r31, r3 +/* 8024AB50 00247AB0 38 7F 00 04 */ addi r3, r31, 4 +/* 8024AB54 00247AB4 80 04 00 00 */ lwz r0, 0(r4) +/* 8024AB58 00247AB8 38 84 00 04 */ addi r4, r4, 4 +/* 8024AB5C 00247ABC 90 1F 00 00 */ stw r0, 0(r31) +/* 8024AB60 00247AC0 48 00 00 1D */ bl __ct__16CSaveWorldMemoryFRC16CSaveWorldMemory +/* 8024AB64 00247AC4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024AB68 00247AC8 7F E3 FB 78 */ mr r3, r31 +/* 8024AB6C 00247ACC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024AB70 00247AD0 7C 08 03 A6 */ mtlr r0 +/* 8024AB74 00247AD4 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024AB78 00247AD8 4E 80 00 20 */ blr + +.global __ct__16CSaveWorldMemoryFRC16CSaveWorldMemory +__ct__16CSaveWorldMemoryFRC16CSaveWorldMemory: +/* 8024AB7C 00247ADC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8024AB80 00247AE0 7C 08 02 A6 */ mflr r0 +/* 8024AB84 00247AE4 90 01 00 24 */ stw r0, 0x24(r1) +/* 8024AB88 00247AE8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8024AB8C 00247AEC 7C 9F 23 78 */ mr r31, r4 +/* 8024AB90 00247AF0 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8024AB94 00247AF4 7C 7E 1B 78 */ mr r30, r3 +/* 8024AB98 00247AF8 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8024AB9C 00247AFC 93 81 00 10 */ stw r28, 0x10(r1) +/* 8024ABA0 00247B00 80 04 00 00 */ lwz r0, 0(r4) +/* 8024ABA4 00247B04 90 03 00 00 */ stw r0, 0(r3) +/* 8024ABA8 00247B08 80 04 00 04 */ lwz r0, 4(r4) +/* 8024ABAC 00247B0C 90 03 00 04 */ stw r0, 4(r3) +/* 8024ABB0 00247B10 80 04 00 08 */ lwz r0, 8(r4) +/* 8024ABB4 00247B14 90 03 00 08 */ stw r0, 8(r3) +/* 8024ABB8 00247B18 80 04 00 10 */ lwz r0, 0x10(r4) +/* 8024ABBC 00247B1C 90 03 00 10 */ stw r0, 0x10(r3) +/* 8024ABC0 00247B20 80 04 00 14 */ lwz r0, 0x14(r4) +/* 8024ABC4 00247B24 90 03 00 14 */ stw r0, 0x14(r3) +/* 8024ABC8 00247B28 80 04 00 10 */ lwz r0, 0x10(r4) +/* 8024ABCC 00247B2C 2C 00 00 00 */ cmpwi r0, 0 +/* 8024ABD0 00247B30 40 82 00 1C */ bne lbl_8024ABEC +/* 8024ABD4 00247B34 80 1F 00 14 */ lwz r0, 0x14(r31) +/* 8024ABD8 00247B38 2C 00 00 00 */ cmpwi r0, 0 +/* 8024ABDC 00247B3C 40 82 00 10 */ bne lbl_8024ABEC +/* 8024ABE0 00247B40 38 00 00 00 */ li r0, 0 +/* 8024ABE4 00247B44 90 1E 00 18 */ stw r0, 0x18(r30) +/* 8024ABE8 00247B48 48 00 00 64 */ b lbl_8024AC4C +lbl_8024ABEC: +/* 8024ABEC 00247B4C 80 1E 00 14 */ lwz r0, 0x14(r30) +/* 8024ABF0 00247B50 54 03 10 3B */ rlwinm. r3, r0, 2, 0, 0x1d +/* 8024ABF4 00247B54 40 82 00 10 */ bne lbl_8024AC04 +/* 8024ABF8 00247B58 38 00 00 00 */ li r0, 0 +/* 8024ABFC 00247B5C 90 1E 00 18 */ stw r0, 0x18(r30) +/* 8024AC00 00247B60 48 00 00 18 */ b lbl_8024AC18 +lbl_8024AC04: +/* 8024AC04 00247B64 3C 80 80 3D */ lis r4, lbl_803D4780@ha +/* 8024AC08 00247B68 38 A0 00 00 */ li r5, 0 +/* 8024AC0C 00247B6C 38 84 47 80 */ addi r4, r4, lbl_803D4780@l +/* 8024AC10 00247B70 48 0C AC 09 */ bl __nwa__FUlPCcPCc +/* 8024AC14 00247B74 90 7E 00 18 */ stw r3, 0x18(r30) +lbl_8024AC18: +/* 8024AC18 00247B78 80 1E 00 10 */ lwz r0, 0x10(r30) +/* 8024AC1C 00247B7C 80 9F 00 18 */ lwz r4, 0x18(r31) +/* 8024AC20 00247B80 80 7E 00 18 */ lwz r3, 0x18(r30) +/* 8024AC24 00247B84 7C 09 03 A6 */ mtctr r0 +/* 8024AC28 00247B88 2C 00 00 00 */ cmpwi r0, 0 +/* 8024AC2C 00247B8C 40 81 00 20 */ ble lbl_8024AC4C +lbl_8024AC30: +/* 8024AC30 00247B90 28 03 00 00 */ cmplwi r3, 0 +/* 8024AC34 00247B94 41 82 00 0C */ beq lbl_8024AC40 +/* 8024AC38 00247B98 80 04 00 00 */ lwz r0, 0(r4) +/* 8024AC3C 00247B9C 90 03 00 00 */ stw r0, 0(r3) +lbl_8024AC40: +/* 8024AC40 00247BA0 38 63 00 04 */ addi r3, r3, 4 +/* 8024AC44 00247BA4 38 84 00 04 */ addi r4, r4, 4 +/* 8024AC48 00247BA8 42 00 FF E8 */ bdnz lbl_8024AC30 +lbl_8024AC4C: +/* 8024AC4C 00247BAC 80 1F 00 20 */ lwz r0, 0x20(r31) +/* 8024AC50 00247BB0 90 1E 00 20 */ stw r0, 0x20(r30) +/* 8024AC54 00247BB4 80 1F 00 24 */ lwz r0, 0x24(r31) +/* 8024AC58 00247BB8 90 1E 00 24 */ stw r0, 0x24(r30) +/* 8024AC5C 00247BBC 80 1F 00 20 */ lwz r0, 0x20(r31) +/* 8024AC60 00247BC0 2C 00 00 00 */ cmpwi r0, 0 +/* 8024AC64 00247BC4 40 82 00 1C */ bne lbl_8024AC80 +/* 8024AC68 00247BC8 80 1F 00 24 */ lwz r0, 0x24(r31) +/* 8024AC6C 00247BCC 2C 00 00 00 */ cmpwi r0, 0 +/* 8024AC70 00247BD0 40 82 00 10 */ bne lbl_8024AC80 +/* 8024AC74 00247BD4 38 00 00 00 */ li r0, 0 +/* 8024AC78 00247BD8 90 1E 00 28 */ stw r0, 0x28(r30) +/* 8024AC7C 00247BDC 48 00 00 74 */ b lbl_8024ACF0 +lbl_8024AC80: +/* 8024AC80 00247BE0 80 1E 00 24 */ lwz r0, 0x24(r30) +/* 8024AC84 00247BE4 54 03 20 37 */ rlwinm. r3, r0, 4, 0, 0x1b +/* 8024AC88 00247BE8 40 82 00 10 */ bne lbl_8024AC98 +/* 8024AC8C 00247BEC 38 00 00 00 */ li r0, 0 +/* 8024AC90 00247BF0 90 1E 00 28 */ stw r0, 0x28(r30) +/* 8024AC94 00247BF4 48 00 00 18 */ b lbl_8024ACAC +lbl_8024AC98: +/* 8024AC98 00247BF8 3C 80 80 3D */ lis r4, lbl_803D4780@ha +/* 8024AC9C 00247BFC 38 A0 00 00 */ li r5, 0 +/* 8024ACA0 00247C00 38 84 47 80 */ addi r4, r4, lbl_803D4780@l +/* 8024ACA4 00247C04 48 0C AB 75 */ bl __nwa__FUlPCcPCc +/* 8024ACA8 00247C08 90 7E 00 28 */ stw r3, 0x28(r30) +lbl_8024ACAC: +/* 8024ACAC 00247C0C 80 1E 00 20 */ lwz r0, 0x20(r30) +/* 8024ACB0 00247C10 80 BF 00 28 */ lwz r5, 0x28(r31) +/* 8024ACB4 00247C14 80 9E 00 28 */ lwz r4, 0x28(r30) +/* 8024ACB8 00247C18 7C 09 03 A6 */ mtctr r0 +/* 8024ACBC 00247C1C 2C 00 00 00 */ cmpwi r0, 0 +/* 8024ACC0 00247C20 40 81 00 30 */ ble lbl_8024ACF0 +lbl_8024ACC4: +/* 8024ACC4 00247C24 28 04 00 00 */ cmplwi r4, 0 +/* 8024ACC8 00247C28 41 82 00 1C */ beq lbl_8024ACE4 +/* 8024ACCC 00247C2C 80 05 00 00 */ lwz r0, 0(r5) +/* 8024ACD0 00247C30 90 04 00 00 */ stw r0, 0(r4) +/* 8024ACD4 00247C34 80 05 00 08 */ lwz r0, 8(r5) +/* 8024ACD8 00247C38 80 65 00 0C */ lwz r3, 0xc(r5) +/* 8024ACDC 00247C3C 90 64 00 0C */ stw r3, 0xc(r4) +/* 8024ACE0 00247C40 90 04 00 08 */ stw r0, 8(r4) +lbl_8024ACE4: +/* 8024ACE4 00247C44 38 84 00 10 */ addi r4, r4, 0x10 +/* 8024ACE8 00247C48 38 A5 00 10 */ addi r5, r5, 0x10 +/* 8024ACEC 00247C4C 42 00 FF D8 */ bdnz lbl_8024ACC4 +lbl_8024ACF0: +/* 8024ACF0 00247C50 88 1F 00 38 */ lbz r0, 0x38(r31) +/* 8024ACF4 00247C54 98 1E 00 38 */ stb r0, 0x38(r30) +/* 8024ACF8 00247C58 88 1F 00 38 */ lbz r0, 0x38(r31) +/* 8024ACFC 00247C5C 28 00 00 00 */ cmplwi r0, 0 +/* 8024AD00 00247C60 41 82 00 24 */ beq lbl_8024AD24 +/* 8024AD04 00247C64 37 BE 00 2C */ addic. r29, r30, 0x2c +/* 8024AD08 00247C68 3B 9F 00 2C */ addi r28, r31, 0x2c +/* 8024AD0C 00247C6C 41 82 00 18 */ beq lbl_8024AD24 +/* 8024AD10 00247C70 7F A3 EB 78 */ mr r3, r29 +/* 8024AD14 00247C74 7F 84 E3 78 */ mr r4, r28 +/* 8024AD18 00247C78 48 0F 61 91 */ bl __ct__6CTokenFRC6CToken +/* 8024AD1C 00247C7C 80 1C 00 08 */ lwz r0, 8(r28) +/* 8024AD20 00247C80 90 1D 00 08 */ stw r0, 8(r29) +lbl_8024AD24: +/* 8024AD24 00247C84 88 1F 00 44 */ lbz r0, 0x44(r31) +/* 8024AD28 00247C88 98 1E 00 44 */ stb r0, 0x44(r30) +/* 8024AD2C 00247C8C 88 1F 00 44 */ lbz r0, 0x44(r31) +/* 8024AD30 00247C90 28 00 00 00 */ cmplwi r0, 0 +/* 8024AD34 00247C94 41 82 00 14 */ beq lbl_8024AD48 +/* 8024AD38 00247C98 34 7E 00 3C */ addic. r3, r30, 0x3c +/* 8024AD3C 00247C9C 38 9F 00 3C */ addi r4, r31, 0x3c +/* 8024AD40 00247CA0 41 82 00 08 */ beq lbl_8024AD48 +/* 8024AD44 00247CA4 48 0F 61 65 */ bl __ct__6CTokenFRC6CToken +lbl_8024AD48: +/* 8024AD48 00247CA8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8024AD4C 00247CAC 7F C3 F3 78 */ mr r3, r30 +/* 8024AD50 00247CB0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8024AD54 00247CB4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8024AD58 00247CB8 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8024AD5C 00247CBC 83 81 00 10 */ lwz r28, 0x10(r1) +/* 8024AD60 00247CC0 7C 08 03 A6 */ mtlr r0 +/* 8024AD64 00247CC4 38 21 00 20 */ addi r1, r1, 0x20 +/* 8024AD68 00247CC8 4E 80 00 20 */ blr + +.global sub_8024ad6c +sub_8024ad6c: +/* 8024AD6C 00247CCC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024AD70 00247CD0 7C 08 02 A6 */ mflr r0 +/* 8024AD74 00247CD4 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024AD78 00247CD8 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024AD7C 00247CDC 7C 7F 1B 78 */ mr r31, r3 +/* 8024AD80 00247CE0 80 04 00 00 */ lwz r0, 0(r4) +/* 8024AD84 00247CE4 7C A4 2B 78 */ mr r4, r5 +/* 8024AD88 00247CE8 90 03 00 00 */ stw r0, 0(r3) +/* 8024AD8C 00247CEC 38 7F 00 04 */ addi r3, r31, 4 +/* 8024AD90 00247CF0 4B FF FD ED */ bl __ct__16CSaveWorldMemoryFRC16CSaveWorldMemory +/* 8024AD94 00247CF4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024AD98 00247CF8 7F E3 FB 78 */ mr r3, r31 +/* 8024AD9C 00247CFC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024ADA0 00247D00 7C 08 03 A6 */ mtlr r0 +/* 8024ADA4 00247D04 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024ADA8 00247D08 4E 80 00 20 */ blr + +.global sub_8024adac +sub_8024adac: +/* 8024ADAC 00247D0C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8024ADB0 00247D10 7C 08 02 A6 */ mflr r0 +/* 8024ADB4 00247D14 90 01 00 24 */ stw r0, 0x24(r1) +/* 8024ADB8 00247D18 38 A1 00 0C */ addi r5, r1, 0xc +/* 8024ADBC 00247D1C 88 E1 00 08 */ lbz r7, 8(r1) +/* 8024ADC0 00247D20 80 C4 00 00 */ lwz r6, 0(r4) +/* 8024ADC4 00247D24 38 81 00 10 */ addi r4, r1, 0x10 +/* 8024ADC8 00247D28 80 03 00 00 */ lwz r0, 0(r3) +/* 8024ADCC 00247D2C 38 61 00 14 */ addi r3, r1, 0x14 +/* 8024ADD0 00247D30 90 C1 00 10 */ stw r6, 0x10(r1) +/* 8024ADD4 00247D34 98 E1 00 0C */ stb r7, 0xc(r1) +/* 8024ADD8 00247D38 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024ADDC 00247D3C 48 00 00 15 */ bl sub_8024adf0 +/* 8024ADE0 00247D40 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8024ADE4 00247D44 7C 08 03 A6 */ mtlr r0 +/* 8024ADE8 00247D48 38 21 00 20 */ addi r1, r1, 0x20 +/* 8024ADEC 00247D4C 4E 80 00 20 */ blr + +.global sub_8024adf0 +sub_8024adf0: +/* 8024ADF0 00247D50 80 63 00 00 */ lwz r3, 0(r3) +/* 8024ADF4 00247D54 80 04 00 00 */ lwz r0, 0(r4) +/* 8024ADF8 00247D58 7C 03 00 50 */ subf r0, r3, r0 +/* 8024ADFC 00247D5C 7C 00 16 70 */ srawi r0, r0, 2 +/* 8024AE00 00247D60 7C 60 01 94 */ addze r3, r0 +/* 8024AE04 00247D64 4E 80 00 20 */ blr + +.global sub_8024ae08 +sub_8024ae08: +/* 8024AE08 00247D68 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8024AE0C 00247D6C 7C 08 02 A6 */ mflr r0 +/* 8024AE10 00247D70 90 01 00 34 */ stw r0, 0x34(r1) +/* 8024AE14 00247D74 BF 61 00 1C */ stmw r27, 0x1c(r1) +/* 8024AE18 00247D78 7C 9F 23 78 */ mr r31, r4 +/* 8024AE1C 00247D7C 7C 7E 1B 78 */ mr r30, r3 +/* 8024AE20 00247D80 7C DB 33 78 */ mr r27, r6 +/* 8024AE24 00247D84 38 61 00 0C */ addi r3, r1, 0xc +/* 8024AE28 00247D88 80 85 00 00 */ lwz r4, 0(r5) +/* 8024AE2C 00247D8C 80 1F 00 00 */ lwz r0, 0(r31) +/* 8024AE30 00247D90 90 81 00 08 */ stw r4, 8(r1) +/* 8024AE34 00247D94 38 81 00 08 */ addi r4, r1, 8 +/* 8024AE38 00247D98 90 01 00 0C */ stw r0, 0xc(r1) +/* 8024AE3C 00247D9C 48 00 04 89 */ bl sub_8024b2c4 +/* 8024AE40 00247DA0 80 1F 00 00 */ lwz r0, 0(r31) +/* 8024AE44 00247DA4 7C 7D 1B 78 */ mr r29, r3 +/* 8024AE48 00247DA8 90 01 00 10 */ stw r0, 0x10(r1) +/* 8024AE4C 00247DAC 48 00 00 58 */ b lbl_8024AEA4 +lbl_8024AE50: +/* 8024AE50 00247DB0 57 A3 0F FE */ srwi r3, r29, 0x1f +/* 8024AE54 00247DB4 80 1F 00 00 */ lwz r0, 0(r31) +/* 8024AE58 00247DB8 7C 83 EA 14 */ add r4, r3, r29 +/* 8024AE5C 00247DBC 38 61 00 10 */ addi r3, r1, 0x10 +/* 8024AE60 00247DC0 7C 9C 0E 70 */ srawi r28, r4, 1 +/* 8024AE64 00247DC4 90 01 00 10 */ stw r0, 0x10(r1) +/* 8024AE68 00247DC8 7F 84 E3 78 */ mr r4, r28 +/* 8024AE6C 00247DCC 48 00 03 D9 */ bl sub_8024b244 +/* 8024AE70 00247DD0 80 81 00 10 */ lwz r4, 0x10(r1) +/* 8024AE74 00247DD4 80 1B 00 00 */ lwz r0, 0(r27) +/* 8024AE78 00247DD8 80 64 00 00 */ lwz r3, 0(r4) +/* 8024AE7C 00247DDC 7C 03 00 40 */ cmplw r3, r0 +/* 8024AE80 00247DE0 40 80 00 20 */ bge lbl_8024AEA0 +/* 8024AE84 00247DE4 90 9F 00 00 */ stw r4, 0(r31) +/* 8024AE88 00247DE8 7C 7C E8 50 */ subf r3, r28, r29 +/* 8024AE8C 00247DEC 3B A3 FF FF */ addi r29, r3, -1 +/* 8024AE90 00247DF0 80 7F 00 00 */ lwz r3, 0(r31) +/* 8024AE94 00247DF4 38 03 00 4C */ addi r0, r3, 0x4c +/* 8024AE98 00247DF8 90 1F 00 00 */ stw r0, 0(r31) +/* 8024AE9C 00247DFC 48 00 00 08 */ b lbl_8024AEA4 +lbl_8024AEA0: +/* 8024AEA0 00247E00 7F 9D E3 78 */ mr r29, r28 +lbl_8024AEA4: +/* 8024AEA4 00247E04 2C 1D 00 00 */ cmpwi r29, 0 +/* 8024AEA8 00247E08 41 81 FF A8 */ bgt lbl_8024AE50 +/* 8024AEAC 00247E0C 80 1F 00 00 */ lwz r0, 0(r31) +/* 8024AEB0 00247E10 90 1E 00 00 */ stw r0, 0(r30) +/* 8024AEB4 00247E14 BB 61 00 1C */ lmw r27, 0x1c(r1) +/* 8024AEB8 00247E18 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8024AEBC 00247E1C 7C 08 03 A6 */ mtlr r0 +/* 8024AEC0 00247E20 38 21 00 30 */ addi r1, r1, 0x30 +/* 8024AEC4 00247E24 4E 80 00 20 */ blr + +.global sub_8024aec8 +sub_8024aec8: +/* 8024AEC8 00247E28 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8024AECC 00247E2C 7C 08 02 A6 */ mflr r0 +/* 8024AED0 00247E30 90 01 00 34 */ stw r0, 0x34(r1) +/* 8024AED4 00247E34 BF 61 00 1C */ stmw r27, 0x1c(r1) +/* 8024AED8 00247E38 7C 9F 23 78 */ mr r31, r4 +/* 8024AEDC 00247E3C 7C 7E 1B 78 */ mr r30, r3 +/* 8024AEE0 00247E40 7C DB 33 78 */ mr r27, r6 +/* 8024AEE4 00247E44 38 61 00 0C */ addi r3, r1, 0xc +/* 8024AEE8 00247E48 80 85 00 00 */ lwz r4, 0(r5) +/* 8024AEEC 00247E4C 80 1F 00 00 */ lwz r0, 0(r31) +/* 8024AEF0 00247E50 90 81 00 08 */ stw r4, 8(r1) +/* 8024AEF4 00247E54 38 81 00 08 */ addi r4, r1, 8 +/* 8024AEF8 00247E58 90 01 00 0C */ stw r0, 0xc(r1) +/* 8024AEFC 00247E5C 48 00 04 0D */ bl sub_8024b308 +/* 8024AF00 00247E60 80 1F 00 00 */ lwz r0, 0(r31) +/* 8024AF04 00247E64 7C 7D 1B 78 */ mr r29, r3 +/* 8024AF08 00247E68 90 01 00 10 */ stw r0, 0x10(r1) +/* 8024AF0C 00247E6C 48 00 00 58 */ b lbl_8024AF64 +lbl_8024AF10: +/* 8024AF10 00247E70 57 A3 0F FE */ srwi r3, r29, 0x1f +/* 8024AF14 00247E74 80 1F 00 00 */ lwz r0, 0(r31) +/* 8024AF18 00247E78 7C 83 EA 14 */ add r4, r3, r29 +/* 8024AF1C 00247E7C 38 61 00 10 */ addi r3, r1, 0x10 +/* 8024AF20 00247E80 7C 9C 0E 70 */ srawi r28, r4, 1 +/* 8024AF24 00247E84 90 01 00 10 */ stw r0, 0x10(r1) +/* 8024AF28 00247E88 7F 84 E3 78 */ mr r4, r28 +/* 8024AF2C 00247E8C 48 00 03 45 */ bl sub_8024b270 +/* 8024AF30 00247E90 80 81 00 10 */ lwz r4, 0x10(r1) +/* 8024AF34 00247E94 80 1B 00 00 */ lwz r0, 0(r27) +/* 8024AF38 00247E98 80 64 00 00 */ lwz r3, 0(r4) +/* 8024AF3C 00247E9C 7C 03 00 40 */ cmplw r3, r0 +/* 8024AF40 00247EA0 40 80 00 20 */ bge lbl_8024AF60 +/* 8024AF44 00247EA4 90 9F 00 00 */ stw r4, 0(r31) +/* 8024AF48 00247EA8 7C 7C E8 50 */ subf r3, r28, r29 +/* 8024AF4C 00247EAC 3B A3 FF FF */ addi r29, r3, -1 +/* 8024AF50 00247EB0 80 7F 00 00 */ lwz r3, 0(r31) +/* 8024AF54 00247EB4 38 03 00 4C */ addi r0, r3, 0x4c +/* 8024AF58 00247EB8 90 1F 00 00 */ stw r0, 0(r31) +/* 8024AF5C 00247EBC 48 00 00 08 */ b lbl_8024AF64 +lbl_8024AF60: +/* 8024AF60 00247EC0 7F 9D E3 78 */ mr r29, r28 +lbl_8024AF64: +/* 8024AF64 00247EC4 2C 1D 00 00 */ cmpwi r29, 0 +/* 8024AF68 00247EC8 41 81 FF A8 */ bgt lbl_8024AF10 +/* 8024AF6C 00247ECC 80 1F 00 00 */ lwz r0, 0(r31) +/* 8024AF70 00247ED0 90 1E 00 00 */ stw r0, 0(r30) +/* 8024AF74 00247ED4 BB 61 00 1C */ lmw r27, 0x1c(r1) +/* 8024AF78 00247ED8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8024AF7C 00247EDC 7C 08 03 A6 */ mtlr r0 +/* 8024AF80 00247EE0 38 21 00 30 */ addi r1, r1, 0x30 +/* 8024AF84 00247EE4 4E 80 00 20 */ blr + +.global sub_8024af88 +sub_8024af88: +/* 8024AF88 00247EE8 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8024AF8C 00247EEC 7C 08 02 A6 */ mflr r0 +/* 8024AF90 00247EF0 90 01 00 34 */ stw r0, 0x34(r1) +/* 8024AF94 00247EF4 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8024AF98 00247EF8 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8024AF9C 00247EFC 7C 9E 23 78 */ mr r30, r4 +/* 8024AFA0 00247F00 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8024AFA4 00247F04 7C 7D 1B 78 */ mr r29, r3 +/* 8024AFA8 00247F08 80 03 00 08 */ lwz r0, 8(r3) +/* 8024AFAC 00247F0C 7C 1E 00 00 */ cmpw r30, r0 +/* 8024AFB0 00247F10 40 81 00 8C */ ble lbl_8024B03C +/* 8024AFB4 00247F14 1C 7E 00 4C */ mulli r3, r30, 0x4c +/* 8024AFB8 00247F18 2C 03 00 00 */ cmpwi r3, 0 +/* 8024AFBC 00247F1C 40 82 00 0C */ bne lbl_8024AFC8 +/* 8024AFC0 00247F20 3B E0 00 00 */ li r31, 0 +/* 8024AFC4 00247F24 48 00 00 18 */ b lbl_8024AFDC +lbl_8024AFC8: +/* 8024AFC8 00247F28 3C 80 80 3D */ lis r4, lbl_803D4780@ha +/* 8024AFCC 00247F2C 38 A0 00 00 */ li r5, 0 +/* 8024AFD0 00247F30 38 84 47 80 */ addi r4, r4, lbl_803D4780@l +/* 8024AFD4 00247F34 48 0C A8 45 */ bl __nwa__FUlPCcPCc +/* 8024AFD8 00247F38 7C 7F 1B 78 */ mr r31, r3 +lbl_8024AFDC: +/* 8024AFDC 00247F3C 80 1D 00 04 */ lwz r0, 4(r29) +/* 8024AFE0 00247F40 7F E5 FB 78 */ mr r5, r31 +/* 8024AFE4 00247F44 80 DD 00 0C */ lwz r6, 0xc(r29) +/* 8024AFE8 00247F48 38 61 00 14 */ addi r3, r1, 0x14 +/* 8024AFEC 00247F4C 1C 00 00 4C */ mulli r0, r0, 0x4c +/* 8024AFF0 00247F50 38 81 00 0C */ addi r4, r1, 0xc +/* 8024AFF4 00247F54 7C C6 02 14 */ add r6, r6, r0 +/* 8024AFF8 00247F58 90 C1 00 0C */ stw r6, 0xc(r1) +/* 8024AFFC 00247F5C 80 1D 00 0C */ lwz r0, 0xc(r29) +/* 8024B000 00247F60 90 C1 00 08 */ stw r6, 8(r1) +/* 8024B004 00247F64 90 01 00 10 */ stw r0, 0x10(r1) +/* 8024B008 00247F68 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024B00C 00247F6C 48 00 00 4D */ bl sub_8024b058 +/* 8024B010 00247F70 80 1D 00 04 */ lwz r0, 4(r29) +/* 8024B014 00247F74 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 8024B018 00247F78 1C 00 00 4C */ mulli r0, r0, 0x4c +/* 8024B01C 00247F7C 7C 83 02 14 */ add r4, r3, r0 +/* 8024B020 00247F80 4B FF FA A9 */ bl sub_8024aac8 +/* 8024B024 00247F84 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 8024B028 00247F88 28 03 00 00 */ cmplwi r3, 0 +/* 8024B02C 00247F8C 41 82 00 08 */ beq lbl_8024B034 +/* 8024B030 00247F90 48 0C A9 01 */ bl Free__7CMemoryFPCv +lbl_8024B034: +/* 8024B034 00247F94 93 FD 00 0C */ stw r31, 0xc(r29) +/* 8024B038 00247F98 93 DD 00 08 */ stw r30, 8(r29) +lbl_8024B03C: +/* 8024B03C 00247F9C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8024B040 00247FA0 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8024B044 00247FA4 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8024B048 00247FA8 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8024B04C 00247FAC 7C 08 03 A6 */ mtlr r0 +/* 8024B050 00247FB0 38 21 00 30 */ addi r1, r1, 0x30 +/* 8024B054 00247FB4 4E 80 00 20 */ blr + +.global sub_8024b058 +sub_8024b058: +/* 8024B058 00247FB8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8024B05C 00247FBC 7C 08 02 A6 */ mflr r0 +/* 8024B060 00247FC0 90 01 00 24 */ stw r0, 0x24(r1) +/* 8024B064 00247FC4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8024B068 00247FC8 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8024B06C 00247FCC 7C BE 2B 78 */ mr r30, r5 +/* 8024B070 00247FD0 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8024B074 00247FD4 7C 9D 23 78 */ mr r29, r4 +/* 8024B078 00247FD8 83 E3 00 00 */ lwz r31, 0(r3) +/* 8024B07C 00247FDC 48 00 00 18 */ b lbl_8024B094 +lbl_8024B080: +/* 8024B080 00247FE0 7F C3 F3 78 */ mr r3, r30 +/* 8024B084 00247FE4 7F E4 FB 78 */ mr r4, r31 +/* 8024B088 00247FE8 4B FF FA 8D */ bl sub_8024ab14 +/* 8024B08C 00247FEC 3B DE 00 4C */ addi r30, r30, 0x4c +/* 8024B090 00247FF0 3B FF 00 4C */ addi r31, r31, 0x4c +lbl_8024B094: +/* 8024B094 00247FF4 80 1D 00 00 */ lwz r0, 0(r29) +/* 8024B098 00247FF8 7C 1F 00 40 */ cmplw r31, r0 +/* 8024B09C 00247FFC 40 82 FF E4 */ bne lbl_8024B080 +/* 8024B0A0 00248000 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8024B0A4 00248004 7F C3 F3 78 */ mr r3, r30 +/* 8024B0A8 00248008 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8024B0AC 0024800C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8024B0B0 00248010 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8024B0B4 00248014 7C 08 03 A6 */ mtlr r0 +/* 8024B0B8 00248018 38 21 00 20 */ addi r1, r1, 0x20 +/* 8024B0BC 0024801C 4E 80 00 20 */ blr + +.global sub_8024b0c0 +sub_8024b0c0: +/* 8024B0C0 00248020 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8024B0C4 00248024 7C 08 02 A6 */ mflr r0 +/* 8024B0C8 00248028 90 01 00 34 */ stw r0, 0x34(r1) +/* 8024B0CC 0024802C 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8024B0D0 00248030 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8024B0D4 00248034 7C 9E 23 78 */ mr r30, r4 +/* 8024B0D8 00248038 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8024B0DC 0024803C 7C 7D 1B 78 */ mr r29, r3 +/* 8024B0E0 00248040 80 03 00 08 */ lwz r0, 8(r3) +/* 8024B0E4 00248044 7C 1E 00 00 */ cmpw r30, r0 +/* 8024B0E8 00248048 40 81 00 8C */ ble lbl_8024B174 +/* 8024B0EC 0024804C 1C 7E 00 3C */ mulli r3, r30, 0x3c +/* 8024B0F0 00248050 2C 03 00 00 */ cmpwi r3, 0 +/* 8024B0F4 00248054 40 82 00 0C */ bne lbl_8024B100 +/* 8024B0F8 00248058 3B E0 00 00 */ li r31, 0 +/* 8024B0FC 0024805C 48 00 00 18 */ b lbl_8024B114 +lbl_8024B100: +/* 8024B100 00248060 3C 80 80 3D */ lis r4, lbl_803D4780@ha +/* 8024B104 00248064 38 A0 00 00 */ li r5, 0 +/* 8024B108 00248068 38 84 47 80 */ addi r4, r4, lbl_803D4780@l +/* 8024B10C 0024806C 48 0C A7 0D */ bl __nwa__FUlPCcPCc +/* 8024B110 00248070 7C 7F 1B 78 */ mr r31, r3 +lbl_8024B114: +/* 8024B114 00248074 80 1D 00 04 */ lwz r0, 4(r29) +/* 8024B118 00248078 7F E5 FB 78 */ mr r5, r31 +/* 8024B11C 0024807C 80 DD 00 0C */ lwz r6, 0xc(r29) +/* 8024B120 00248080 38 61 00 14 */ addi r3, r1, 0x14 +/* 8024B124 00248084 1C 00 00 3C */ mulli r0, r0, 0x3c +/* 8024B128 00248088 38 81 00 0C */ addi r4, r1, 0xc +/* 8024B12C 0024808C 7C C6 02 14 */ add r6, r6, r0 +/* 8024B130 00248090 90 C1 00 0C */ stw r6, 0xc(r1) +/* 8024B134 00248094 80 1D 00 0C */ lwz r0, 0xc(r29) +/* 8024B138 00248098 90 C1 00 08 */ stw r6, 8(r1) +/* 8024B13C 0024809C 90 01 00 10 */ stw r0, 0x10(r1) +/* 8024B140 002480A0 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024B144 002480A4 48 00 00 99 */ bl sub_8024b1dc +/* 8024B148 002480A8 80 1D 00 04 */ lwz r0, 4(r29) +/* 8024B14C 002480AC 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 8024B150 002480B0 1C 00 00 3C */ mulli r0, r0, 0x3c +/* 8024B154 002480B4 7C 83 02 14 */ add r4, r3, r0 +/* 8024B158 002480B8 48 00 00 39 */ bl sub_8024b190 +/* 8024B15C 002480BC 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 8024B160 002480C0 28 03 00 00 */ cmplwi r3, 0 +/* 8024B164 002480C4 41 82 00 08 */ beq lbl_8024B16C +/* 8024B168 002480C8 48 0C A7 C9 */ bl Free__7CMemoryFPCv +lbl_8024B16C: +/* 8024B16C 002480CC 93 FD 00 0C */ stw r31, 0xc(r29) +/* 8024B170 002480D0 93 DD 00 08 */ stw r30, 8(r29) +lbl_8024B174: +/* 8024B174 002480D4 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8024B178 002480D8 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8024B17C 002480DC 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8024B180 002480E0 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8024B184 002480E4 7C 08 03 A6 */ mtlr r0 +/* 8024B188 002480E8 38 21 00 30 */ addi r1, r1, 0x30 +/* 8024B18C 002480EC 4E 80 00 20 */ blr + +.global sub_8024b190 +sub_8024b190: +/* 8024B190 002480F0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024B194 002480F4 7C 08 02 A6 */ mflr r0 +/* 8024B198 002480F8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024B19C 002480FC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024B1A0 00248100 7C 7F 1B 78 */ mr r31, r3 +/* 8024B1A4 00248104 93 C1 00 08 */ stw r30, 8(r1) +/* 8024B1A8 00248108 7C 9E 23 78 */ mr r30, r4 +/* 8024B1AC 0024810C 48 00 00 10 */ b lbl_8024B1BC +lbl_8024B1B0: +/* 8024B1B0 00248110 7F E3 FB 78 */ mr r3, r31 +/* 8024B1B4 00248114 4B FF E4 D5 */ bl sub_80249688 +/* 8024B1B8 00248118 3B FF 00 3C */ addi r31, r31, 0x3c +lbl_8024B1BC: +/* 8024B1BC 0024811C 7C 1F F0 40 */ cmplw r31, r30 +/* 8024B1C0 00248120 40 82 FF F0 */ bne lbl_8024B1B0 +/* 8024B1C4 00248124 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024B1C8 00248128 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024B1CC 0024812C 83 C1 00 08 */ lwz r30, 8(r1) +/* 8024B1D0 00248130 7C 08 03 A6 */ mtlr r0 +/* 8024B1D4 00248134 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024B1D8 00248138 4E 80 00 20 */ blr + +.global sub_8024b1dc +sub_8024b1dc: +/* 8024B1DC 0024813C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8024B1E0 00248140 7C 08 02 A6 */ mflr r0 +/* 8024B1E4 00248144 90 01 00 24 */ stw r0, 0x24(r1) +/* 8024B1E8 00248148 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8024B1EC 0024814C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8024B1F0 00248150 7C BE 2B 78 */ mr r30, r5 +/* 8024B1F4 00248154 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8024B1F8 00248158 7C 9D 23 78 */ mr r29, r4 +/* 8024B1FC 0024815C 83 E3 00 00 */ lwz r31, 0(r3) +/* 8024B200 00248160 48 00 00 18 */ b lbl_8024B218 +lbl_8024B204: +/* 8024B204 00248164 7F C3 F3 78 */ mr r3, r30 +/* 8024B208 00248168 7F E4 FB 78 */ mr r4, r31 +/* 8024B20C 0024816C 4B FF F3 F9 */ bl sub_8024a604 +/* 8024B210 00248170 3B DE 00 3C */ addi r30, r30, 0x3c +/* 8024B214 00248174 3B FF 00 3C */ addi r31, r31, 0x3c +lbl_8024B218: +/* 8024B218 00248178 80 1D 00 00 */ lwz r0, 0(r29) +/* 8024B21C 0024817C 7C 1F 00 40 */ cmplw r31, r0 +/* 8024B220 00248180 40 82 FF E4 */ bne lbl_8024B204 +/* 8024B224 00248184 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8024B228 00248188 7F C3 F3 78 */ mr r3, r30 +/* 8024B22C 0024818C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8024B230 00248190 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8024B234 00248194 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8024B238 00248198 7C 08 03 A6 */ mtlr r0 +/* 8024B23C 0024819C 38 21 00 20 */ addi r1, r1, 0x20 +/* 8024B240 002481A0 4E 80 00 20 */ blr + +.global sub_8024b244 +sub_8024b244: +/* 8024B244 002481A4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024B248 002481A8 7C 08 02 A6 */ mflr r0 +/* 8024B24C 002481AC 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024B250 002481B0 38 A1 00 0C */ addi r5, r1, 0xc +/* 8024B254 002481B4 88 01 00 08 */ lbz r0, 8(r1) +/* 8024B258 002481B8 98 01 00 0C */ stb r0, 0xc(r1) +/* 8024B25C 002481BC 48 00 00 55 */ bl sub_8024b2b0 +/* 8024B260 002481C0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024B264 002481C4 7C 08 03 A6 */ mtlr r0 +/* 8024B268 002481C8 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024B26C 002481CC 4E 80 00 20 */ blr + +.global sub_8024b270 +sub_8024b270: +/* 8024B270 002481D0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024B274 002481D4 7C 08 02 A6 */ mflr r0 +/* 8024B278 002481D8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024B27C 002481DC 38 A1 00 0C */ addi r5, r1, 0xc +/* 8024B280 002481E0 88 01 00 08 */ lbz r0, 8(r1) +/* 8024B284 002481E4 98 01 00 0C */ stb r0, 0xc(r1) +/* 8024B288 002481E8 48 00 00 15 */ bl sub_8024b29c +/* 8024B28C 002481EC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024B290 002481F0 7C 08 03 A6 */ mtlr r0 +/* 8024B294 002481F4 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024B298 002481F8 4E 80 00 20 */ blr + +.global sub_8024b29c +sub_8024b29c: +/* 8024B29C 002481FC 1C 04 00 4C */ mulli r0, r4, 0x4c +/* 8024B2A0 00248200 80 83 00 00 */ lwz r4, 0(r3) +/* 8024B2A4 00248204 7C 04 02 14 */ add r0, r4, r0 +/* 8024B2A8 00248208 90 03 00 00 */ stw r0, 0(r3) +/* 8024B2AC 0024820C 4E 80 00 20 */ blr + +.global sub_8024b2b0 +sub_8024b2b0: +/* 8024B2B0 00248210 1C 04 00 4C */ mulli r0, r4, 0x4c +/* 8024B2B4 00248214 80 83 00 00 */ lwz r4, 0(r3) +/* 8024B2B8 00248218 7C 04 02 14 */ add r0, r4, r0 +/* 8024B2BC 0024821C 90 03 00 00 */ stw r0, 0(r3) +/* 8024B2C0 00248220 4E 80 00 20 */ blr + +.global sub_8024b2c4 +sub_8024b2c4: +/* 8024B2C4 00248224 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8024B2C8 00248228 7C 08 02 A6 */ mflr r0 +/* 8024B2CC 0024822C 90 01 00 24 */ stw r0, 0x24(r1) +/* 8024B2D0 00248230 38 A1 00 0C */ addi r5, r1, 0xc +/* 8024B2D4 00248234 88 E1 00 08 */ lbz r7, 8(r1) +/* 8024B2D8 00248238 80 C4 00 00 */ lwz r6, 0(r4) +/* 8024B2DC 0024823C 38 81 00 10 */ addi r4, r1, 0x10 +/* 8024B2E0 00248240 80 03 00 00 */ lwz r0, 0(r3) +/* 8024B2E4 00248244 38 61 00 14 */ addi r3, r1, 0x14 +/* 8024B2E8 00248248 90 C1 00 10 */ stw r6, 0x10(r1) +/* 8024B2EC 0024824C 98 E1 00 0C */ stb r7, 0xc(r1) +/* 8024B2F0 00248250 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024B2F4 00248254 48 00 00 59 */ bl sub_8024b34c +/* 8024B2F8 00248258 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8024B2FC 0024825C 7C 08 03 A6 */ mtlr r0 +/* 8024B300 00248260 38 21 00 20 */ addi r1, r1, 0x20 +/* 8024B304 00248264 4E 80 00 20 */ blr + +.global sub_8024b308 +sub_8024b308: +/* 8024B308 00248268 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8024B30C 0024826C 7C 08 02 A6 */ mflr r0 +/* 8024B310 00248270 90 01 00 24 */ stw r0, 0x24(r1) +/* 8024B314 00248274 38 A1 00 0C */ addi r5, r1, 0xc +/* 8024B318 00248278 88 E1 00 08 */ lbz r7, 8(r1) +/* 8024B31C 0024827C 80 C4 00 00 */ lwz r6, 0(r4) +/* 8024B320 00248280 38 81 00 10 */ addi r4, r1, 0x10 +/* 8024B324 00248284 80 03 00 00 */ lwz r0, 0(r3) +/* 8024B328 00248288 38 61 00 14 */ addi r3, r1, 0x14 +/* 8024B32C 0024828C 90 C1 00 10 */ stw r6, 0x10(r1) +/* 8024B330 00248290 98 E1 00 0C */ stb r7, 0xc(r1) +/* 8024B334 00248294 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024B338 00248298 48 00 00 3D */ bl sub_8024b374 +/* 8024B33C 0024829C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8024B340 002482A0 7C 08 03 A6 */ mtlr r0 +/* 8024B344 002482A4 38 21 00 20 */ addi r1, r1, 0x20 +/* 8024B348 002482A8 4E 80 00 20 */ blr + +.global sub_8024b34c +sub_8024b34c: +/* 8024B34C 002482AC 80 A3 00 00 */ lwz r5, 0(r3) +/* 8024B350 002482B0 3C 60 6B CA */ lis r3, 0x6BCA1AF3@ha +/* 8024B354 002482B4 80 04 00 00 */ lwz r0, 0(r4) +/* 8024B358 002482B8 38 63 1A F3 */ addi r3, r3, 0x6BCA1AF3@l +/* 8024B35C 002482BC 7C 05 00 50 */ subf r0, r5, r0 +/* 8024B360 002482C0 7C 03 00 96 */ mulhw r0, r3, r0 +/* 8024B364 002482C4 7C 00 2E 70 */ srawi r0, r0, 5 +/* 8024B368 002482C8 54 03 0F FE */ srwi r3, r0, 0x1f +/* 8024B36C 002482CC 7C 60 1A 14 */ add r3, r0, r3 +/* 8024B370 002482D0 4E 80 00 20 */ blr + +.global sub_8024b374 +sub_8024b374: +/* 8024B374 002482D4 80 A3 00 00 */ lwz r5, 0(r3) +/* 8024B378 002482D8 3C 60 6B CA */ lis r3, 0x6BCA1AF3@ha +/* 8024B37C 002482DC 80 04 00 00 */ lwz r0, 0(r4) +/* 8024B380 002482E0 38 63 1A F3 */ addi r3, r3, 0x6BCA1AF3@l +/* 8024B384 002482E4 7C 05 00 50 */ subf r0, r5, r0 +/* 8024B388 002482E8 7C 03 00 96 */ mulhw r0, r3, r0 +/* 8024B38C 002482EC 7C 00 2E 70 */ srawi r0, r0, 5 +/* 8024B390 002482F0 54 03 0F FE */ srwi r3, r0, 0x1f +/* 8024B394 002482F4 7C 60 1A 14 */ add r3, r0, r3 +/* 8024B398 002482F8 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Player/CStaticInterference.s b/asm/Kyoto_CWD/Player/CStaticInterference.s new file mode 100644 index 00000000..61002bab --- /dev/null +++ b/asm/Kyoto_CWD/Player/CStaticInterference.s @@ -0,0 +1,449 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global Update__19CStaticInterferenceFR13CStateManagerf +Update__19CStaticInterferenceFR13CStateManagerf: +/* 801C07A8 001BD708 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801C07AC 001BD70C 7C 08 02 A6 */ mflr r0 +/* 801C07B0 001BD710 90 01 00 64 */ stw r0, 0x64(r1) +/* 801C07B4 001BD714 DB E1 00 50 */ stfd f31, 0x50(r1) +/* 801C07B8 001BD718 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 801C07BC 001BD71C DB C1 00 40 */ stfd f30, 0x40(r1) +/* 801C07C0 001BD720 F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0 +/* 801C07C4 001BD724 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801C07C8 001BD728 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801C07CC 001BD72C 7C 7F 1B 78 */ mr r31, r3 +/* 801C07D0 001BD730 38 00 00 00 */ li r0, 0 +/* 801C07D4 001BD734 83 C3 00 0C */ lwz r30, 0xc(r3) +/* 801C07D8 001BD738 FF C0 08 90 */ fmr f30, f1 +/* 801C07DC 001BD73C 38 61 00 20 */ addi r3, r1, 0x20 +/* 801C07E0 001BD740 90 01 00 24 */ stw r0, 0x24(r1) +/* 801C07E4 001BD744 90 01 00 28 */ stw r0, 0x28(r1) +/* 801C07E8 001BD748 90 01 00 2C */ stw r0, 0x2c(r1) +/* 801C07EC 001BD74C 80 9F 00 04 */ lwz r4, 4(r31) +/* 801C07F0 001BD750 48 00 04 9D */ bl sub_801c0c8c +/* 801C07F4 001BD754 C3 E2 AA 78 */ lfs f31, lbl_805AC798@sda21(r2) +/* 801C07F8 001BD758 48 00 00 80 */ b lbl_801C0878 +lbl_801C07FC: +/* 801C07FC 001BD75C C0 1E 00 08 */ lfs f0, 8(r30) +/* 801C0800 001BD760 FC 00 F8 40 */ fcmpo cr0, f0, f31 +/* 801C0804 001BD764 40 80 00 68 */ bge lbl_801C086C +/* 801C0808 001BD768 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801C080C 001BD76C 80 A1 00 28 */ lwz r5, 0x28(r1) +/* 801C0810 001BD770 7C 00 28 00 */ cmpw r0, r5 +/* 801C0814 001BD774 41 80 00 1C */ blt lbl_801C0830 +/* 801C0818 001BD778 2C 05 00 00 */ cmpwi r5, 0 +/* 801C081C 001BD77C 38 61 00 20 */ addi r3, r1, 0x20 +/* 801C0820 001BD780 38 80 00 04 */ li r4, 4 +/* 801C0824 001BD784 41 82 00 08 */ beq lbl_801C082C +/* 801C0828 001BD788 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801C082C: +/* 801C082C 001BD78C 48 00 04 61 */ bl sub_801c0c8c +lbl_801C0830: +/* 801C0830 001BD790 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801C0834 001BD794 80 61 00 2C */ lwz r3, 0x2c(r1) +/* 801C0838 001BD798 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C083C 001BD79C 7C 63 02 15 */ add. r3, r3, r0 +/* 801C0840 001BD7A0 41 82 00 1C */ beq lbl_801C085C +/* 801C0844 001BD7A4 A0 1E 00 00 */ lhz r0, 0(r30) +/* 801C0848 001BD7A8 B0 03 00 00 */ sth r0, 0(r3) +/* 801C084C 001BD7AC C0 1E 00 04 */ lfs f0, 4(r30) +/* 801C0850 001BD7B0 D0 03 00 04 */ stfs f0, 4(r3) +/* 801C0854 001BD7B4 C0 1E 00 08 */ lfs f0, 8(r30) +/* 801C0858 001BD7B8 D0 03 00 08 */ stfs f0, 8(r3) +lbl_801C085C: +/* 801C085C 001BD7BC 80 61 00 24 */ lwz r3, 0x24(r1) +/* 801C0860 001BD7C0 38 03 00 01 */ addi r0, r3, 1 +/* 801C0864 001BD7C4 90 01 00 24 */ stw r0, 0x24(r1) +/* 801C0868 001BD7C8 48 00 00 0C */ b lbl_801C0874 +lbl_801C086C: +/* 801C086C 001BD7CC EC 00 F0 28 */ fsubs f0, f0, f30 +/* 801C0870 001BD7D0 D0 1E 00 08 */ stfs f0, 8(r30) +lbl_801C0874: +/* 801C0874 001BD7D4 3B DE 00 0C */ addi r30, r30, 0xc +lbl_801C0878: +/* 801C0878 001BD7D8 80 1F 00 04 */ lwz r0, 4(r31) +/* 801C087C 001BD7DC 80 7F 00 0C */ lwz r3, 0xc(r31) +/* 801C0880 001BD7E0 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C0884 001BD7E4 7C 03 02 14 */ add r0, r3, r0 +/* 801C0888 001BD7E8 7C 1E 00 40 */ cmplw r30, r0 +/* 801C088C 001BD7EC 40 82 FF 70 */ bne lbl_801C07FC +/* 801C0890 001BD7F0 83 C1 00 2C */ lwz r30, 0x2c(r1) +/* 801C0894 001BD7F4 48 00 00 20 */ b lbl_801C08B4 +lbl_801C0898: +/* 801C0898 001BD7F8 A0 1E 00 00 */ lhz r0, 0(r30) +/* 801C089C 001BD7FC 7F E3 FB 78 */ mr r3, r31 +/* 801C08A0 001BD800 38 81 00 0C */ addi r4, r1, 0xc +/* 801C08A4 001BD804 B0 01 00 08 */ sth r0, 8(r1) +/* 801C08A8 001BD808 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801C08AC 001BD80C 48 00 01 09 */ bl sub_801c09b4 +/* 801C08B0 001BD810 3B DE 00 0C */ addi r30, r30, 0xc +lbl_801C08B4: +/* 801C08B4 001BD814 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801C08B8 001BD818 80 61 00 2C */ lwz r3, 0x2c(r1) +/* 801C08BC 001BD81C 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C08C0 001BD820 7C 03 02 14 */ add r0, r3, r0 +/* 801C08C4 001BD824 7C 1E 00 40 */ cmplw r30, r0 +/* 801C08C8 001BD828 40 82 FF D0 */ bne lbl_801C0898 +/* 801C08CC 001BD82C 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801C08D0 001BD830 7C 64 1B 78 */ mr r4, r3 +/* 801C08D4 001BD834 90 01 00 18 */ stw r0, 0x18(r1) +/* 801C08D8 001BD838 90 61 00 14 */ stw r3, 0x14(r1) +/* 801C08DC 001BD83C 90 61 00 10 */ stw r3, 0x10(r1) +/* 801C08E0 001BD840 48 00 00 08 */ b lbl_801C08E8 +lbl_801C08E4: +/* 801C08E4 001BD844 38 84 00 0C */ addi r4, r4, 0xc +lbl_801C08E8: +/* 801C08E8 001BD848 7C 04 00 40 */ cmplw r4, r0 +/* 801C08EC 001BD84C 40 82 FF F8 */ bne lbl_801C08E4 +/* 801C08F0 001BD850 28 03 00 00 */ cmplwi r3, 0 +/* 801C08F4 001BD854 41 82 00 08 */ beq lbl_801C08FC +/* 801C08F8 001BD858 48 15 50 39 */ bl Free__7CMemoryFPCv +lbl_801C08FC: +/* 801C08FC 001BD85C E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 +/* 801C0900 001BD860 CB E1 00 50 */ lfd f31, 0x50(r1) +/* 801C0904 001BD864 E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0 +/* 801C0908 001BD868 CB C1 00 40 */ lfd f30, 0x40(r1) +/* 801C090C 001BD86C 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801C0910 001BD870 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801C0914 001BD874 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801C0918 001BD878 7C 08 03 A6 */ mtlr r0 +/* 801C091C 001BD87C 38 21 00 60 */ addi r1, r1, 0x60 +/* 801C0920 001BD880 4E 80 00 20 */ blr + +.global GetTotalInterference__19CStaticInterferenceCFv +GetTotalInterference__19CStaticInterferenceCFv: +/* 801C0924 001BD884 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801C0928 001BD888 C0 22 AA 78 */ lfs f1, lbl_805AC798@sda21(r2) +/* 801C092C 001BD88C 80 03 00 04 */ lwz r0, 4(r3) +/* 801C0930 001BD890 80 A3 00 0C */ lwz r5, 0xc(r3) +/* 801C0934 001BD894 FC 40 08 90 */ fmr f2, f1 +/* 801C0938 001BD898 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C093C 001BD89C A0 6D A3 8C */ lhz r3, lbl_805A8F4C@sda21(r13) +/* 801C0940 001BD8A0 7C 85 02 14 */ add r4, r5, r0 +/* 801C0944 001BD8A4 48 00 00 2C */ b lbl_801C0970 +lbl_801C0948: +/* 801C0948 001BD8A8 A0 05 00 00 */ lhz r0, 0(r5) +/* 801C094C 001BD8AC C0 05 00 04 */ lfs f0, 4(r5) +/* 801C0950 001BD8B0 7C 00 18 40 */ cmplw r0, r3 +/* 801C0954 001BD8B4 40 82 00 08 */ bne lbl_801C095C +/* 801C0958 001BD8B8 EC 42 00 2A */ fadds f2, f2, f0 +lbl_801C095C: +/* 801C095C 001BD8BC A0 05 00 00 */ lhz r0, 0(r5) +/* 801C0960 001BD8C0 7C 00 18 40 */ cmplw r0, r3 +/* 801C0964 001BD8C4 41 82 00 08 */ beq lbl_801C096C +/* 801C0968 001BD8C8 EC 21 00 2A */ fadds f1, f1, f0 +lbl_801C096C: +/* 801C096C 001BD8CC 38 A5 00 0C */ addi r5, r5, 0xc +lbl_801C0970: +/* 801C0970 001BD8D0 7C 05 20 40 */ cmplw r5, r4 +/* 801C0974 001BD8D4 40 82 FF D4 */ bne lbl_801C0948 +/* 801C0978 001BD8D8 C0 02 AA 7C */ lfs f0, lbl_805AC79C@sda21(r2) +/* 801C097C 001BD8DC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801C0980 001BD8E0 40 81 00 08 */ ble lbl_801C0988 +/* 801C0984 001BD8E4 FC 20 00 90 */ fmr f1, f0 +lbl_801C0988: +/* 801C0988 001BD8E8 EC 21 10 2A */ fadds f1, f1, f2 +/* 801C098C 001BD8EC C0 0D 91 20 */ lfs f0, lbl_805A7CE0@sda21(r13) +/* 801C0990 001BD8F0 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801C0994 001BD8F4 D0 21 00 08 */ stfs f1, 8(r1) +/* 801C0998 001BD8F8 40 80 00 0C */ bge lbl_801C09A4 +/* 801C099C 001BD8FC 38 6D 91 20 */ addi r3, r13, lbl_805A7CE0@sda21 +/* 801C09A0 001BD900 48 00 00 08 */ b lbl_801C09A8 +lbl_801C09A4: +/* 801C09A4 001BD904 38 61 00 08 */ addi r3, r1, 8 +lbl_801C09A8: +/* 801C09A8 001BD908 C0 23 00 00 */ lfs f1, 0(r3) +/* 801C09AC 001BD90C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801C09B0 001BD910 4E 80 00 20 */ blr + +.global sub_801c09b4 +sub_801c09b4: +/* 801C09B4 001BD914 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801C09B8 001BD918 7C 08 02 A6 */ mflr r0 +/* 801C09BC 001BD91C 90 01 00 24 */ stw r0, 0x24(r1) +/* 801C09C0 001BD920 80 03 00 04 */ lwz r0, 4(r3) +/* 801C09C4 001BD924 80 A3 00 0C */ lwz r5, 0xc(r3) +/* 801C09C8 001BD928 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C09CC 001BD92C 90 A1 00 10 */ stw r5, 0x10(r1) +/* 801C09D0 001BD930 7C C5 02 14 */ add r6, r5, r0 +/* 801C09D4 001BD934 48 00 00 24 */ b lbl_801C09F8 +lbl_801C09D8: +/* 801C09D8 001BD938 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 801C09DC 001BD93C A0 04 00 00 */ lhz r0, 0(r4) +/* 801C09E0 001BD940 A0 A5 00 00 */ lhz r5, 0(r5) +/* 801C09E4 001BD944 7C 05 00 40 */ cmplw r5, r0 +/* 801C09E8 001BD948 41 82 00 1C */ beq lbl_801C0A04 +/* 801C09EC 001BD94C 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 801C09F0 001BD950 38 05 00 0C */ addi r0, r5, 0xc +/* 801C09F4 001BD954 90 01 00 10 */ stw r0, 0x10(r1) +lbl_801C09F8: +/* 801C09F8 001BD958 80 01 00 10 */ lwz r0, 0x10(r1) +/* 801C09FC 001BD95C 7C 00 30 40 */ cmplw r0, r6 +/* 801C0A00 001BD960 40 82 FF D8 */ bne lbl_801C09D8 +lbl_801C0A04: +/* 801C0A04 001BD964 80 01 00 10 */ lwz r0, 0x10(r1) +/* 801C0A08 001BD968 7C 00 30 40 */ cmplw r0, r6 +/* 801C0A0C 001BD96C 41 82 00 1C */ beq lbl_801C0A28 +/* 801C0A10 001BD970 80 01 00 10 */ lwz r0, 0x10(r1) +/* 801C0A14 001BD974 7C 64 1B 78 */ mr r4, r3 +/* 801C0A18 001BD978 38 61 00 0C */ addi r3, r1, 0xc +/* 801C0A1C 001BD97C 38 A1 00 08 */ addi r5, r1, 8 +/* 801C0A20 001BD980 90 01 00 08 */ stw r0, 8(r1) +/* 801C0A24 001BD984 48 00 00 15 */ bl sub_801c0a38 +lbl_801C0A28: +/* 801C0A28 001BD988 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801C0A2C 001BD98C 7C 08 03 A6 */ mtlr r0 +/* 801C0A30 001BD990 38 21 00 20 */ addi r1, r1, 0x20 +/* 801C0A34 001BD994 4E 80 00 20 */ blr + +.global sub_801c0a38 +sub_801c0a38: +/* 801C0A38 001BD998 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801C0A3C 001BD99C 7C 08 02 A6 */ mflr r0 +/* 801C0A40 001BD9A0 90 01 00 24 */ stw r0, 0x24(r1) +/* 801C0A44 001BD9A4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801C0A48 001BD9A8 7C 7F 1B 78 */ mr r31, r3 +/* 801C0A4C 001BD9AC 80 C5 00 00 */ lwz r6, 0(r5) +/* 801C0A50 001BD9B0 80 05 00 00 */ lwz r0, 0(r5) +/* 801C0A54 001BD9B4 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801C0A58 001BD9B8 38 E6 00 0C */ addi r7, r6, 0xc +/* 801C0A5C 001BD9BC 38 C1 00 0C */ addi r6, r1, 0xc +/* 801C0A60 001BD9C0 90 E1 00 08 */ stw r7, 8(r1) +/* 801C0A64 001BD9C4 90 E1 00 0C */ stw r7, 0xc(r1) +/* 801C0A68 001BD9C8 90 01 00 10 */ stw r0, 0x10(r1) +/* 801C0A6C 001BD9CC 48 00 00 19 */ bl sub_801c0a84 +/* 801C0A70 001BD9D0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801C0A74 001BD9D4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801C0A78 001BD9D8 7C 08 03 A6 */ mtlr r0 +/* 801C0A7C 001BD9DC 38 21 00 20 */ addi r1, r1, 0x20 +/* 801C0A80 001BD9E0 4E 80 00 20 */ blr + +.global sub_801c0a84 +sub_801c0a84: +/* 801C0A84 001BD9E4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801C0A88 001BD9E8 80 E5 00 00 */ lwz r7, 0(r5) +/* 801C0A8C 001BD9EC 80 06 00 00 */ lwz r0, 0(r6) +/* 801C0A90 001BD9F0 90 E1 00 0C */ stw r7, 0xc(r1) +/* 801C0A94 001BD9F4 90 01 00 08 */ stw r0, 8(r1) +/* 801C0A98 001BD9F8 48 00 00 08 */ b lbl_801C0AA0 +lbl_801C0A9C: +/* 801C0A9C 001BD9FC 38 E7 00 0C */ addi r7, r7, 0xc +lbl_801C0AA0: +/* 801C0AA0 001BDA00 7C 07 00 40 */ cmplw r7, r0 +/* 801C0AA4 001BDA04 40 82 FF F8 */ bne lbl_801C0A9C +/* 801C0AA8 001BDA08 81 24 00 0C */ lwz r9, 0xc(r4) +/* 801C0AAC 001BDA0C 3C E0 2A AB */ lis r7, 0x2AAAAAAB@ha +/* 801C0AB0 001BDA10 80 05 00 00 */ lwz r0, 0(r5) +/* 801C0AB4 001BDA14 38 E7 AA AB */ addi r7, r7, 0x2AAAAAAB@l +/* 801C0AB8 001BDA18 81 06 00 00 */ lwz r8, 0(r6) +/* 801C0ABC 001BDA1C 7C 09 00 50 */ subf r0, r9, r0 +/* 801C0AC0 001BDA20 7C 07 00 96 */ mulhw r0, r7, r0 +/* 801C0AC4 001BDA24 7C 00 0E 70 */ srawi r0, r0, 1 +/* 801C0AC8 001BDA28 54 06 0F FE */ srwi r6, r0, 0x1f +/* 801C0ACC 001BDA2C 7C C0 32 14 */ add r6, r0, r6 +/* 801C0AD0 001BDA30 1C 06 00 0C */ mulli r0, r6, 0xc +/* 801C0AD4 001BDA34 7C CA 33 78 */ mr r10, r6 +/* 801C0AD8 001BDA38 7C E9 02 14 */ add r7, r9, r0 +/* 801C0ADC 001BDA3C 48 00 00 30 */ b lbl_801C0B0C +lbl_801C0AE0: +/* 801C0AE0 001BDA40 28 07 00 00 */ cmplwi r7, 0 +/* 801C0AE4 001BDA44 41 82 00 1C */ beq lbl_801C0B00 +/* 801C0AE8 001BDA48 A0 08 00 00 */ lhz r0, 0(r8) +/* 801C0AEC 001BDA4C B0 07 00 00 */ sth r0, 0(r7) +/* 801C0AF0 001BDA50 C0 08 00 04 */ lfs f0, 4(r8) +/* 801C0AF4 001BDA54 D0 07 00 04 */ stfs f0, 4(r7) +/* 801C0AF8 001BDA58 C0 08 00 08 */ lfs f0, 8(r8) +/* 801C0AFC 001BDA5C D0 07 00 08 */ stfs f0, 8(r7) +lbl_801C0B00: +/* 801C0B00 001BDA60 38 E7 00 0C */ addi r7, r7, 0xc +/* 801C0B04 001BDA64 39 4A 00 01 */ addi r10, r10, 1 +/* 801C0B08 001BDA68 39 08 00 0C */ addi r8, r8, 0xc +lbl_801C0B0C: +/* 801C0B0C 001BDA6C 80 04 00 04 */ lwz r0, 4(r4) +/* 801C0B10 001BDA70 80 C4 00 0C */ lwz r6, 0xc(r4) +/* 801C0B14 001BDA74 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C0B18 001BDA78 7C 06 02 14 */ add r0, r6, r0 +/* 801C0B1C 001BDA7C 7C 08 00 40 */ cmplw r8, r0 +/* 801C0B20 001BDA80 40 82 FF C0 */ bne lbl_801C0AE0 +/* 801C0B24 001BDA84 91 44 00 04 */ stw r10, 4(r4) +/* 801C0B28 001BDA88 80 05 00 00 */ lwz r0, 0(r5) +/* 801C0B2C 001BDA8C 90 03 00 00 */ stw r0, 0(r3) +/* 801C0B30 001BDA90 38 21 00 10 */ addi r1, r1, 0x10 +/* 801C0B34 001BDA94 4E 80 00 20 */ blr + +.global AddSource__19CStaticInterferenceF9TUniqueId +AddSource__19CStaticInterferenceF9TUniqueId: +/* 801C0B38 001BDA98 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801C0B3C 001BDA9C 7C 08 02 A6 */ mflr r0 +/* 801C0B40 001BDAA0 90 01 00 44 */ stw r0, 0x44(r1) +/* 801C0B44 001BDAA4 DB E1 00 30 */ stfd f31, 0x30(r1) +/* 801C0B48 001BDAA8 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 801C0B4C 001BDAAC DB C1 00 20 */ stfd f30, 0x20(r1) +/* 801C0B50 001BDAB0 F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 +/* 801C0B54 001BDAB4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801C0B58 001BDAB8 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801C0B5C 001BDABC FF C0 10 90 */ fmr f30, f2 +/* 801C0B60 001BDAC0 7C 7F 1B 78 */ mr r31, r3 +/* 801C0B64 001BDAC4 D0 21 00 08 */ stfs f1, 8(r1) +/* 801C0B68 001BDAC8 7C 9E 23 78 */ mr r30, r4 +/* 801C0B6C 001BDACC 38 81 00 08 */ addi r4, r1, 8 +/* 801C0B70 001BDAD0 38 6D 91 18 */ addi r3, r13, lbl_805A7CD8@sda21 +/* 801C0B74 001BDAD4 38 AD 91 1C */ addi r5, r13, lbl_805A7CDC@sda21 +/* 801C0B78 001BDAD8 4B E4 B7 3D */ bl "Clamp__5CMathFRCfRCfRCf" +/* 801C0B7C 001BDADC 80 DF 00 04 */ lwz r6, 4(r31) +/* 801C0B80 001BDAE0 80 9F 00 0C */ lwz r4, 0xc(r31) +/* 801C0B84 001BDAE4 1C 06 00 0C */ mulli r0, r6, 0xc +/* 801C0B88 001BDAE8 C3 E3 00 00 */ lfs f31, 0(r3) +/* 801C0B8C 001BDAEC 7C A4 02 14 */ add r5, r4, r0 +/* 801C0B90 001BDAF0 48 00 00 18 */ b lbl_801C0BA8 +lbl_801C0B94: +/* 801C0B94 001BDAF4 A0 64 00 00 */ lhz r3, 0(r4) +/* 801C0B98 001BDAF8 A0 1E 00 00 */ lhz r0, 0(r30) +/* 801C0B9C 001BDAFC 7C 03 00 40 */ cmplw r3, r0 +/* 801C0BA0 001BDB00 41 82 00 10 */ beq lbl_801C0BB0 +/* 801C0BA4 001BDB04 38 84 00 0C */ addi r4, r4, 0xc +lbl_801C0BA8: +/* 801C0BA8 001BDB08 7C 04 28 40 */ cmplw r4, r5 +/* 801C0BAC 001BDB0C 40 82 FF E8 */ bne lbl_801C0B94 +lbl_801C0BB0: +/* 801C0BB0 001BDB10 7C 04 28 40 */ cmplw r4, r5 +/* 801C0BB4 001BDB14 41 82 00 10 */ beq lbl_801C0BC4 +/* 801C0BB8 001BDB18 D3 E4 00 04 */ stfs f31, 4(r4) +/* 801C0BBC 001BDB1C D3 C4 00 08 */ stfs f30, 8(r4) +/* 801C0BC0 001BDB20 48 00 00 64 */ b lbl_801C0C24 +lbl_801C0BC4: +/* 801C0BC4 001BDB24 80 BF 00 08 */ lwz r5, 8(r31) +/* 801C0BC8 001BDB28 7C 06 28 00 */ cmpw r6, r5 +/* 801C0BCC 001BDB2C 40 80 00 58 */ bge lbl_801C0C24 +/* 801C0BD0 001BDB30 A0 1E 00 00 */ lhz r0, 0(r30) +/* 801C0BD4 001BDB34 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801C0BD8 001BDB38 41 80 00 1C */ blt lbl_801C0BF4 +/* 801C0BDC 001BDB3C 2C 05 00 00 */ cmpwi r5, 0 +/* 801C0BE0 001BDB40 7F E3 FB 78 */ mr r3, r31 +/* 801C0BE4 001BDB44 38 80 00 04 */ li r4, 4 +/* 801C0BE8 001BDB48 41 82 00 08 */ beq lbl_801C0BF0 +/* 801C0BEC 001BDB4C 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801C0BF0: +/* 801C0BF0 001BDB50 48 00 00 9D */ bl sub_801c0c8c +lbl_801C0BF4: +/* 801C0BF4 001BDB54 80 1F 00 04 */ lwz r0, 4(r31) +/* 801C0BF8 001BDB58 80 7F 00 0C */ lwz r3, 0xc(r31) +/* 801C0BFC 001BDB5C 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C0C00 001BDB60 7C 63 02 15 */ add. r3, r3, r0 +/* 801C0C04 001BDB64 41 82 00 14 */ beq lbl_801C0C18 +/* 801C0C08 001BDB68 A0 01 00 0C */ lhz r0, 0xc(r1) +/* 801C0C0C 001BDB6C B0 03 00 00 */ sth r0, 0(r3) +/* 801C0C10 001BDB70 D3 E3 00 04 */ stfs f31, 4(r3) +/* 801C0C14 001BDB74 D3 C3 00 08 */ stfs f30, 8(r3) +lbl_801C0C18: +/* 801C0C18 001BDB78 80 7F 00 04 */ lwz r3, 4(r31) +/* 801C0C1C 001BDB7C 38 03 00 01 */ addi r0, r3, 1 +/* 801C0C20 001BDB80 90 1F 00 04 */ stw r0, 4(r31) +lbl_801C0C24: +/* 801C0C24 001BDB84 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 801C0C28 001BDB88 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 801C0C2C 001BDB8C E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 +/* 801C0C30 001BDB90 CB C1 00 20 */ lfd f30, 0x20(r1) +/* 801C0C34 001BDB94 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801C0C38 001BDB98 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801C0C3C 001BDB9C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801C0C40 001BDBA0 7C 08 03 A6 */ mtlr r0 +/* 801C0C44 001BDBA4 38 21 00 40 */ addi r1, r1, 0x40 +/* 801C0C48 001BDBA8 4E 80 00 20 */ blr + +.global __ct__19CStaticInterferenceFi +__ct__19CStaticInterferenceFi: +/* 801C0C4C 001BDBAC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801C0C50 001BDBB0 7C 08 02 A6 */ mflr r0 +/* 801C0C54 001BDBB4 90 01 00 14 */ stw r0, 0x14(r1) +/* 801C0C58 001BDBB8 38 00 00 00 */ li r0, 0 +/* 801C0C5C 001BDBBC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801C0C60 001BDBC0 7C 7F 1B 78 */ mr r31, r3 +/* 801C0C64 001BDBC4 90 03 00 04 */ stw r0, 4(r3) +/* 801C0C68 001BDBC8 90 03 00 08 */ stw r0, 8(r3) +/* 801C0C6C 001BDBCC 90 03 00 0C */ stw r0, 0xc(r3) +/* 801C0C70 001BDBD0 48 00 00 1D */ bl sub_801c0c8c +/* 801C0C74 001BDBD4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801C0C78 001BDBD8 7F E3 FB 78 */ mr r3, r31 +/* 801C0C7C 001BDBDC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801C0C80 001BDBE0 7C 08 03 A6 */ mtlr r0 +/* 801C0C84 001BDBE4 38 21 00 10 */ addi r1, r1, 0x10 +/* 801C0C88 001BDBE8 4E 80 00 20 */ blr + +.global sub_801c0c8c +sub_801c0c8c: +/* 801C0C8C 001BDBEC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801C0C90 001BDBF0 7C 08 02 A6 */ mflr r0 +/* 801C0C94 001BDBF4 90 01 00 34 */ stw r0, 0x34(r1) +/* 801C0C98 001BDBF8 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801C0C9C 001BDBFC 7C 9F 23 78 */ mr r31, r4 +/* 801C0CA0 001BDC00 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801C0CA4 001BDC04 7C 7E 1B 78 */ mr r30, r3 +/* 801C0CA8 001BDC08 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801C0CAC 001BDC0C 80 03 00 08 */ lwz r0, 8(r3) +/* 801C0CB0 001BDC10 7C 1F 00 00 */ cmpw r31, r0 +/* 801C0CB4 001BDC14 40 81 00 BC */ ble lbl_801C0D70 +/* 801C0CB8 001BDC18 1C 7F 00 0C */ mulli r3, r31, 0xc +/* 801C0CBC 001BDC1C 2C 03 00 00 */ cmpwi r3, 0 +/* 801C0CC0 001BDC20 40 82 00 0C */ bne lbl_801C0CCC +/* 801C0CC4 001BDC24 3B A0 00 00 */ li r29, 0 +/* 801C0CC8 001BDC28 48 00 00 18 */ b lbl_801C0CE0 +lbl_801C0CCC: +/* 801C0CCC 001BDC2C 3C 80 80 3D */ lis r4, lbl_803D1A78@ha +/* 801C0CD0 001BDC30 38 A0 00 00 */ li r5, 0 +/* 801C0CD4 001BDC34 38 84 1A 78 */ addi r4, r4, lbl_803D1A78@l +/* 801C0CD8 001BDC38 48 15 4B 41 */ bl __nwa__FUlPCcPCc +/* 801C0CDC 001BDC3C 7C 7D 1B 78 */ mr r29, r3 +lbl_801C0CE0: +/* 801C0CE0 001BDC40 80 1E 00 04 */ lwz r0, 4(r30) +/* 801C0CE4 001BDC44 7F A4 EB 78 */ mr r4, r29 +/* 801C0CE8 001BDC48 80 BE 00 0C */ lwz r5, 0xc(r30) +/* 801C0CEC 001BDC4C 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C0CF0 001BDC50 90 A1 00 10 */ stw r5, 0x10(r1) +/* 801C0CF4 001BDC54 7C 65 02 14 */ add r3, r5, r0 +/* 801C0CF8 001BDC58 90 A1 00 14 */ stw r5, 0x14(r1) +/* 801C0CFC 001BDC5C 90 61 00 08 */ stw r3, 8(r1) +/* 801C0D00 001BDC60 90 61 00 0C */ stw r3, 0xc(r1) +/* 801C0D04 001BDC64 48 00 00 2C */ b lbl_801C0D30 +lbl_801C0D08: +/* 801C0D08 001BDC68 28 04 00 00 */ cmplwi r4, 0 +/* 801C0D0C 001BDC6C 41 82 00 1C */ beq lbl_801C0D28 +/* 801C0D10 001BDC70 A0 05 00 00 */ lhz r0, 0(r5) +/* 801C0D14 001BDC74 B0 04 00 00 */ sth r0, 0(r4) +/* 801C0D18 001BDC78 C0 05 00 04 */ lfs f0, 4(r5) +/* 801C0D1C 001BDC7C D0 04 00 04 */ stfs f0, 4(r4) +/* 801C0D20 001BDC80 C0 05 00 08 */ lfs f0, 8(r5) +/* 801C0D24 001BDC84 D0 04 00 08 */ stfs f0, 8(r4) +lbl_801C0D28: +/* 801C0D28 001BDC88 38 84 00 0C */ addi r4, r4, 0xc +/* 801C0D2C 001BDC8C 38 A5 00 0C */ addi r5, r5, 0xc +lbl_801C0D30: +/* 801C0D30 001BDC90 7C 05 18 40 */ cmplw r5, r3 +/* 801C0D34 001BDC94 40 82 FF D4 */ bne lbl_801C0D08 +/* 801C0D38 001BDC98 80 1E 00 04 */ lwz r0, 4(r30) +/* 801C0D3C 001BDC9C 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 801C0D40 001BDCA0 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801C0D44 001BDCA4 7C 64 1B 78 */ mr r4, r3 +/* 801C0D48 001BDCA8 7C 03 02 14 */ add r0, r3, r0 +/* 801C0D4C 001BDCAC 48 00 00 08 */ b lbl_801C0D54 +lbl_801C0D50: +/* 801C0D50 001BDCB0 38 84 00 0C */ addi r4, r4, 0xc +lbl_801C0D54: +/* 801C0D54 001BDCB4 7C 04 00 40 */ cmplw r4, r0 +/* 801C0D58 001BDCB8 40 82 FF F8 */ bne lbl_801C0D50 +/* 801C0D5C 001BDCBC 28 03 00 00 */ cmplwi r3, 0 +/* 801C0D60 001BDCC0 41 82 00 08 */ beq lbl_801C0D68 +/* 801C0D64 001BDCC4 48 15 4B CD */ bl Free__7CMemoryFPCv +lbl_801C0D68: +/* 801C0D68 001BDCC8 93 BE 00 0C */ stw r29, 0xc(r30) +/* 801C0D6C 001BDCCC 93 FE 00 08 */ stw r31, 8(r30) +lbl_801C0D70: +/* 801C0D70 001BDCD0 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801C0D74 001BDCD4 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801C0D78 001BDCD8 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801C0D7C 001BDCDC 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801C0D80 001BDCE0 7C 08 03 A6 */ mtlr r0 +/* 801C0D84 001BDCE4 38 21 00 30 */ addi r1, r1, 0x30 +/* 801C0D88 001BDCE8 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Player/CWorldLayerState.s b/asm/Kyoto_CWD/Player/CWorldLayerState.s new file mode 100644 index 00000000..93eff523 --- /dev/null +++ b/asm/Kyoto_CWD/Player/CWorldLayerState.s @@ -0,0 +1,503 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global nullsub_5 +nullsub_5: +/* 80233FB0 00230F10 4E 80 00 20 */ blr + +.global GetAreaLayerCount__16CWorldLayerStateFi +GetAreaLayerCount__16CWorldLayerStateFi: +/* 80233FB4 00230F14 80 04 00 00 */ lwz r0, 0(r4) +/* 80233FB8 00230F18 80 63 00 0C */ lwz r3, 0xc(r3) +/* 80233FBC 00230F1C 54 00 20 36 */ slwi r0, r0, 4 +/* 80233FC0 00230F20 7C 63 00 2E */ lwzx r3, r3, r0 +/* 80233FC4 00230F24 4E 80 00 20 */ blr + +.global "InitializeWorldLayers__16CWorldLayerStateFQ24rstl6vector" +"InitializeWorldLayers__16CWorldLayerStateFQ24rstl6vector": +/* 80233FC8 00230F28 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 80233FCC 00230F2C 7C 08 02 A6 */ mflr r0 +/* 80233FD0 00230F30 90 01 00 74 */ stw r0, 0x74(r1) +/* 80233FD4 00230F34 BF 41 00 58 */ stmw r26, 0x58(r1) +/* 80233FD8 00230F38 7C 7A 1B 78 */ mr r26, r3 +/* 80233FDC 00230F3C 80 03 00 04 */ lwz r0, 4(r3) +/* 80233FE0 00230F40 2C 00 00 00 */ cmpwi r0, 0 +/* 80233FE4 00230F44 40 82 01 34 */ bne lbl_80234118 +/* 80233FE8 00230F48 48 00 01 85 */ bl sub_8023416c +/* 80233FEC 00230F4C 80 1A 00 10 */ lwz r0, 0x10(r26) +/* 80233FF0 00230F50 2C 00 00 00 */ cmpwi r0, 0 +/* 80233FF4 00230F54 41 82 01 24 */ beq lbl_80234118 +/* 80233FF8 00230F58 83 DA 00 04 */ lwz r30, 4(r26) +/* 80233FFC 00230F5C 3B A0 00 00 */ li r29, 0 +/* 80234000 00230F60 3B 80 00 00 */ li r28, 0 +/* 80234004 00230F64 48 00 00 AC */ b lbl_802340B0 +lbl_80234008: +/* 80234008 00230F68 93 81 00 30 */ stw r28, 0x30(r1) +/* 8023400C 00230F6C 7F 43 D3 78 */ mr r3, r26 +/* 80234010 00230F70 38 81 00 34 */ addi r4, r1, 0x34 +/* 80234014 00230F74 93 81 00 34 */ stw r28, 0x34(r1) +/* 80234018 00230F78 4B FF FF 9D */ bl GetAreaLayerCount__16CWorldLayerStateFi +/* 8023401C 00230F7C 93 81 00 28 */ stw r28, 0x28(r1) +/* 80234020 00230F80 7C 7F 1B 78 */ mr r31, r3 +/* 80234024 00230F84 3B 60 00 01 */ li r27, 1 +/* 80234028 00230F88 48 00 00 7C */ b lbl_802340A4 +lbl_8023402C: +/* 8023402C 00230F8C 7F A3 2E 70 */ srawi r3, r29, 5 +/* 80234030 00230F90 57 A0 D8 08 */ slwi r0, r29, 0x1b +/* 80234034 00230F94 57 A4 0F FE */ srwi r4, r29, 0x1f +/* 80234038 00230F98 81 1A 00 20 */ lwz r8, 0x20(r26) +/* 8023403C 00230F9C 7C 63 01 94 */ addze r3, r3 +/* 80234040 00230FA0 38 A0 00 01 */ li r5, 1 +/* 80234044 00230FA4 54 66 10 3A */ slwi r6, r3, 2 +/* 80234048 00230FA8 93 61 00 20 */ stw r27, 0x20(r1) +/* 8023404C 00230FAC 7D 08 32 14 */ add r8, r8, r6 +/* 80234050 00230FB0 7C 64 00 50 */ subf r3, r4, r0 +/* 80234054 00230FB4 80 08 00 00 */ lwz r0, 0(r8) +/* 80234058 00230FB8 54 63 28 3E */ rotlwi r3, r3, 5 +/* 8023405C 00230FBC 7C 63 22 14 */ add r3, r3, r4 +/* 80234060 00230FC0 91 01 00 1C */ stw r8, 0x1c(r1) +/* 80234064 00230FC4 7C A7 18 30 */ slw r7, r5, r3 +/* 80234068 00230FC8 38 81 00 2C */ addi r4, r1, 0x2c +/* 8023406C 00230FCC 7C E5 00 38 */ and r5, r7, r0 +/* 80234070 00230FD0 91 01 00 18 */ stw r8, 0x18(r1) +/* 80234074 00230FD4 7C 05 00 D0 */ neg r0, r5 +/* 80234078 00230FD8 7F 43 D3 78 */ mr r3, r26 +/* 8023407C 00230FDC 7C 00 2B 78 */ or r0, r0, r5 +/* 80234080 00230FE0 91 01 00 38 */ stw r8, 0x38(r1) +/* 80234084 00230FE4 54 06 0F FE */ srwi r6, r0, 0x1f +/* 80234088 00230FE8 38 A1 00 24 */ addi r5, r1, 0x24 +/* 8023408C 00230FEC 90 E1 00 3C */ stw r7, 0x3c(r1) +/* 80234090 00230FF0 3B BD 00 01 */ addi r29, r29, 1 +/* 80234094 00230FF4 93 61 00 24 */ stw r27, 0x24(r1) +/* 80234098 00230FF8 93 81 00 2C */ stw r28, 0x2c(r1) +/* 8023409C 00230FFC 48 00 02 25 */ bl SetLayerActive__16CWorldLayerStateFiib +/* 802340A0 00231000 3B 7B 00 01 */ addi r27, r27, 1 +lbl_802340A4: +/* 802340A4 00231004 7C 1B F8 00 */ cmpw r27, r31 +/* 802340A8 00231008 41 80 FF 84 */ blt lbl_8023402C +/* 802340AC 0023100C 3B 9C 00 01 */ addi r28, r28, 1 +lbl_802340B0: +/* 802340B0 00231010 7C 1C F0 00 */ cmpw r28, r30 +/* 802340B4 00231014 41 80 FF 54 */ blt lbl_80234008 +/* 802340B8 00231018 38 00 00 00 */ li r0, 0 +/* 802340BC 0023101C 38 7A 00 10 */ addi r3, r26, 0x10 +/* 802340C0 00231020 90 01 00 40 */ stw r0, 0x40(r1) +/* 802340C4 00231024 38 81 00 40 */ addi r4, r1, 0x40 +/* 802340C8 00231028 90 01 00 48 */ stw r0, 0x48(r1) +/* 802340CC 0023102C 90 01 00 4C */ stw r0, 0x4c(r1) +/* 802340D0 00231030 90 01 00 50 */ stw r0, 0x50(r1) +/* 802340D4 00231034 48 00 00 59 */ bl sub_8023412c +/* 802340D8 00231038 80 01 00 48 */ lwz r0, 0x48(r1) +/* 802340DC 0023103C 80 61 00 50 */ lwz r3, 0x50(r1) +/* 802340E0 00231040 54 00 10 3A */ slwi r0, r0, 2 +/* 802340E4 00231044 7C 03 02 14 */ add r0, r3, r0 +/* 802340E8 00231048 90 61 00 0C */ stw r3, 0xc(r1) +/* 802340EC 0023104C 7C 64 1B 78 */ mr r4, r3 +/* 802340F0 00231050 90 01 00 14 */ stw r0, 0x14(r1) +/* 802340F4 00231054 90 01 00 10 */ stw r0, 0x10(r1) +/* 802340F8 00231058 90 61 00 08 */ stw r3, 8(r1) +/* 802340FC 0023105C 48 00 00 08 */ b lbl_80234104 +lbl_80234100: +/* 80234100 00231060 38 84 00 04 */ addi r4, r4, 4 +lbl_80234104: +/* 80234104 00231064 7C 04 00 40 */ cmplw r4, r0 +/* 80234108 00231068 40 82 FF F8 */ bne lbl_80234100 +/* 8023410C 0023106C 28 03 00 00 */ cmplwi r3, 0 +/* 80234110 00231070 41 82 00 08 */ beq lbl_80234118 +/* 80234114 00231074 48 0E 18 1D */ bl Free__7CMemoryFPCv +lbl_80234118: +/* 80234118 00231078 BB 41 00 58 */ lmw r26, 0x58(r1) +/* 8023411C 0023107C 80 01 00 74 */ lwz r0, 0x74(r1) +/* 80234120 00231080 7C 08 03 A6 */ mtlr r0 +/* 80234124 00231084 38 21 00 70 */ addi r1, r1, 0x70 +/* 80234128 00231088 4E 80 00 20 */ blr + +.global sub_8023412c +sub_8023412c: +/* 8023412C 0023108C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80234130 00231090 7C 08 02 A6 */ mflr r0 +/* 80234134 00231094 90 01 00 14 */ stw r0, 0x14(r1) +/* 80234138 00231098 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8023413C 0023109C 7C 7F 1B 78 */ mr r31, r3 +/* 80234140 002310A0 38 7F 00 04 */ addi r3, r31, 4 +/* 80234144 002310A4 80 04 00 00 */ lwz r0, 0(r4) +/* 80234148 002310A8 38 84 00 04 */ addi r4, r4, 4 +/* 8023414C 002310AC 90 1F 00 00 */ stw r0, 0(r31) +/* 80234150 002310B0 4B E2 F5 AD */ bl "clear__Q24rstl37vectorFv" +/* 80234154 002310B4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80234158 002310B8 7F E3 FB 78 */ mr r3, r31 +/* 8023415C 002310BC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80234160 002310C0 7C 08 03 A6 */ mtlr r0 +/* 80234164 002310C4 38 21 00 10 */ addi r1, r1, 0x10 +/* 80234168 002310C8 4E 80 00 20 */ blr + +.global sub_8023416c +sub_8023416c: +/* 8023416C 002310CC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80234170 002310D0 7C 08 02 A6 */ mflr r0 +/* 80234174 002310D4 90 01 00 24 */ stw r0, 0x24(r1) +/* 80234178 002310D8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8023417C 002310DC 7C 9F 23 78 */ mr r31, r4 +/* 80234180 002310E0 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80234184 002310E4 7C 7E 1B 78 */ mr r30, r3 +/* 80234188 002310E8 7C 1E F8 40 */ cmplw r30, r31 +/* 8023418C 002310EC 40 82 00 08 */ bne lbl_80234194 +/* 80234190 002310F0 48 00 00 C8 */ b lbl_80234258 +lbl_80234194: +/* 80234194 002310F4 80 1E 00 04 */ lwz r0, 4(r30) +/* 80234198 002310F8 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 8023419C 002310FC 54 00 20 36 */ slwi r0, r0, 4 +/* 802341A0 00231100 7C 03 02 14 */ add r0, r3, r0 +/* 802341A4 00231104 90 61 00 0C */ stw r3, 0xc(r1) +/* 802341A8 00231108 90 01 00 14 */ stw r0, 0x14(r1) +/* 802341AC 0023110C 90 01 00 10 */ stw r0, 0x10(r1) +/* 802341B0 00231110 90 61 00 08 */ stw r3, 8(r1) +/* 802341B4 00231114 48 00 00 08 */ b lbl_802341BC +lbl_802341B8: +/* 802341B8 00231118 38 63 00 10 */ addi r3, r3, 0x10 +lbl_802341BC: +/* 802341BC 0023111C 7C 03 00 40 */ cmplw r3, r0 +/* 802341C0 00231120 40 82 FF F8 */ bne lbl_802341B8 +/* 802341C4 00231124 38 00 00 00 */ li r0, 0 +/* 802341C8 00231128 90 1E 00 04 */ stw r0, 4(r30) +/* 802341CC 0023112C 80 9F 00 04 */ lwz r4, 4(r31) +/* 802341D0 00231130 2C 04 00 00 */ cmpwi r4, 0 +/* 802341D4 00231134 40 82 00 28 */ bne lbl_802341FC +/* 802341D8 00231138 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 802341DC 0023113C 28 03 00 00 */ cmplwi r3, 0 +/* 802341E0 00231140 41 82 00 08 */ beq lbl_802341E8 +/* 802341E4 00231144 48 0E 17 4D */ bl Free__7CMemoryFPCv +lbl_802341E8: +/* 802341E8 00231148 38 00 00 00 */ li r0, 0 +/* 802341EC 0023114C 90 1E 00 04 */ stw r0, 4(r30) +/* 802341F0 00231150 90 1E 00 08 */ stw r0, 8(r30) +/* 802341F4 00231154 90 1E 00 0C */ stw r0, 0xc(r30) +/* 802341F8 00231158 48 00 00 5C */ b lbl_80234254 +lbl_802341FC: +/* 802341FC 0023115C 7F C3 F3 78 */ mr r3, r30 +/* 80234200 00231160 4B E2 58 B5 */ bl sub_80059ab4 +/* 80234204 00231164 80 1F 00 04 */ lwz r0, 4(r31) +/* 80234208 00231168 80 DF 00 0C */ lwz r6, 0xc(r31) +/* 8023420C 0023116C 54 00 20 36 */ slwi r0, r0, 4 +/* 80234210 00231170 80 9E 00 0C */ lwz r4, 0xc(r30) +/* 80234214 00231174 7C A6 02 14 */ add r5, r6, r0 +/* 80234218 00231178 48 00 00 2C */ b lbl_80234244 +lbl_8023421C: +/* 8023421C 0023117C 28 04 00 00 */ cmplwi r4, 0 +/* 80234220 00231180 41 82 00 1C */ beq lbl_8023423C +/* 80234224 00231184 80 06 00 00 */ lwz r0, 0(r6) +/* 80234228 00231188 90 04 00 00 */ stw r0, 0(r4) +/* 8023422C 0023118C 80 06 00 08 */ lwz r0, 8(r6) +/* 80234230 00231190 80 66 00 0C */ lwz r3, 0xc(r6) +/* 80234234 00231194 90 64 00 0C */ stw r3, 0xc(r4) +/* 80234238 00231198 90 04 00 08 */ stw r0, 8(r4) +lbl_8023423C: +/* 8023423C 0023119C 38 84 00 10 */ addi r4, r4, 0x10 +/* 80234240 002311A0 38 C6 00 10 */ addi r6, r6, 0x10 +lbl_80234244: +/* 80234244 002311A4 7C 06 28 40 */ cmplw r6, r5 +/* 80234248 002311A8 40 82 FF D4 */ bne lbl_8023421C +/* 8023424C 002311AC 80 1F 00 04 */ lwz r0, 4(r31) +/* 80234250 002311B0 90 1E 00 04 */ stw r0, 4(r30) +lbl_80234254: +/* 80234254 002311B4 7F C3 F3 78 */ mr r3, r30 +lbl_80234258: +/* 80234258 002311B8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8023425C 002311BC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80234260 002311C0 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80234264 002311C4 7C 08 03 A6 */ mtlr r0 +/* 80234268 002311C8 38 21 00 20 */ addi r1, r1, 0x20 +/* 8023426C 002311CC 4E 80 00 20 */ blr + +.global IsLayerActive__16CWorldLayerStateFii +IsLayerActive__16CWorldLayerStateFii: +/* 80234270 002311D0 80 E4 00 00 */ lwz r7, 0(r4) +/* 80234274 002311D4 38 C0 00 01 */ li r6, 1 +/* 80234278 002311D8 80 05 00 00 */ lwz r0, 0(r5) +/* 8023427C 002311DC 38 80 00 00 */ li r4, 0 +/* 80234280 002311E0 54 E5 20 36 */ slwi r5, r7, 4 +/* 80234284 002311E4 80 E3 00 0C */ lwz r7, 0xc(r3) +/* 80234288 002311E8 38 65 00 08 */ addi r3, r5, 8 +/* 8023428C 002311EC 7C C5 00 30 */ slw r5, r6, r0 +/* 80234290 002311F0 7C C7 1A 14 */ add r6, r7, r3 +/* 80234294 002311F4 80 66 00 00 */ lwz r3, 0(r6) +/* 80234298 002311F8 7C A0 FE 70 */ srawi r0, r5, 0x1f +/* 8023429C 002311FC 80 C6 00 04 */ lwz r6, 4(r6) +/* 802342A0 00231200 7C 63 00 38 */ and r3, r3, r0 +/* 802342A4 00231204 7C C0 28 38 */ and r0, r6, r5 +/* 802342A8 00231208 7C 00 22 78 */ xor r0, r0, r4 +/* 802342AC 0023120C 7C 63 22 78 */ xor r3, r3, r4 +/* 802342B0 00231210 7C 03 1B 78 */ or r3, r0, r3 +/* 802342B4 00231214 30 03 FF FF */ addic r0, r3, -1 +/* 802342B8 00231218 7C 60 19 10 */ subfe r3, r0, r3 +/* 802342BC 0023121C 4E 80 00 20 */ blr + +.global SetLayerActive__16CWorldLayerStateFiib +SetLayerActive__16CWorldLayerStateFiib: +/* 802342C0 00231220 54 C0 06 3F */ clrlwi. r0, r6, 0x18 +/* 802342C4 00231224 80 84 00 00 */ lwz r4, 0(r4) +/* 802342C8 00231228 80 63 00 0C */ lwz r3, 0xc(r3) +/* 802342CC 0023122C 54 80 20 36 */ slwi r0, r4, 4 +/* 802342D0 00231230 80 85 00 00 */ lwz r4, 0(r5) +/* 802342D4 00231234 7C C3 02 14 */ add r6, r3, r0 +/* 802342D8 00231238 41 82 00 2C */ beq lbl_80234304 +/* 802342DC 0023123C 38 00 00 01 */ li r0, 1 +/* 802342E0 00231240 80 A6 00 0C */ lwz r5, 0xc(r6) +/* 802342E4 00231244 7C 03 20 30 */ slw r3, r0, r4 +/* 802342E8 00231248 80 86 00 08 */ lwz r4, 8(r6) +/* 802342EC 0023124C 7C A0 1B 78 */ or r0, r5, r3 +/* 802342F0 00231250 7C 63 FE 70 */ srawi r3, r3, 0x1f +/* 802342F4 00231254 90 06 00 0C */ stw r0, 0xc(r6) +/* 802342F8 00231258 7C 80 1B 78 */ or r0, r4, r3 +/* 802342FC 0023125C 90 06 00 08 */ stw r0, 8(r6) +/* 80234300 00231260 4E 80 00 20 */ blr +lbl_80234304: +/* 80234304 00231264 38 00 00 01 */ li r0, 1 +/* 80234308 00231268 80 A6 00 0C */ lwz r5, 0xc(r6) +/* 8023430C 0023126C 7C 00 20 30 */ slw r0, r0, r4 +/* 80234310 00231270 80 86 00 08 */ lwz r4, 8(r6) +/* 80234314 00231274 7C 03 00 F8 */ nor r3, r0, r0 +/* 80234318 00231278 7C A0 18 38 */ and r0, r5, r3 +/* 8023431C 0023127C 7C 63 FE 70 */ srawi r3, r3, 0x1f +/* 80234320 00231280 90 06 00 0C */ stw r0, 0xc(r6) +/* 80234324 00231284 7C 80 18 38 */ and r0, r4, r3 +/* 80234328 00231288 90 06 00 08 */ stw r0, 8(r6) +/* 8023432C 0023128C 4E 80 00 20 */ blr + +.global PutTo__16CWorldLayerStateFR16CMemoryStreamOut +PutTo__16CWorldLayerStateFR16CMemoryStreamOut: +/* 80234330 00231290 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80234334 00231294 7C 08 02 A6 */ mflr r0 +/* 80234338 00231298 90 01 00 44 */ stw r0, 0x44(r1) +/* 8023433C 0023129C BF 41 00 28 */ stmw r26, 0x28(r1) +/* 80234340 002312A0 7C 7A 1B 78 */ mr r26, r3 +/* 80234344 002312A4 7C 9B 23 78 */ mr r27, r4 +/* 80234348 002312A8 3B E0 00 00 */ li r31, 0 +/* 8023434C 002312AC 3B A0 00 00 */ li r29, 0 +/* 80234350 002312B0 83 C3 00 04 */ lwz r30, 4(r3) +/* 80234354 002312B4 48 00 00 24 */ b lbl_80234378 +lbl_80234358: +/* 80234358 002312B8 93 A1 00 20 */ stw r29, 0x20(r1) +/* 8023435C 002312BC 7F 43 D3 78 */ mr r3, r26 +/* 80234360 002312C0 38 81 00 24 */ addi r4, r1, 0x24 +/* 80234364 002312C4 93 A1 00 24 */ stw r29, 0x24(r1) +/* 80234368 002312C8 4B FF FC 4D */ bl GetAreaLayerCount__16CWorldLayerStateFi +/* 8023436C 002312CC 7F E3 FA 14 */ add r31, r3, r31 +/* 80234370 002312D0 3B BD 00 01 */ addi r29, r29, 1 +/* 80234374 002312D4 3B FF FF FF */ addi r31, r31, -1 +lbl_80234378: +/* 80234378 002312D8 7C 1D F0 00 */ cmpw r29, r30 +/* 8023437C 002312DC 41 80 FF DC */ blt lbl_80234358 +/* 80234380 002312E0 7F 63 DB 78 */ mr r3, r27 +/* 80234384 002312E4 7F E4 FB 78 */ mr r4, r31 +/* 80234388 002312E8 38 A0 00 0A */ li r5, 0xa +/* 8023438C 002312EC 48 10 B0 31 */ bl WriteBits__13COutputStreamFii +/* 80234390 002312F0 3B A0 00 00 */ li r29, 0 +/* 80234394 002312F4 48 00 00 70 */ b lbl_80234404 +lbl_80234398: +/* 80234398 002312F8 93 A1 00 18 */ stw r29, 0x18(r1) +/* 8023439C 002312FC 7F 43 D3 78 */ mr r3, r26 +/* 802343A0 00231300 38 81 00 1C */ addi r4, r1, 0x1c +/* 802343A4 00231304 93 A1 00 1C */ stw r29, 0x1c(r1) +/* 802343A8 00231308 4B FF FC 0D */ bl GetAreaLayerCount__16CWorldLayerStateFi +/* 802343AC 0023130C 93 A1 00 10 */ stw r29, 0x10(r1) +/* 802343B0 00231310 7C 7F 1B 78 */ mr r31, r3 +/* 802343B4 00231314 3B 80 00 01 */ li r28, 1 +/* 802343B8 00231318 48 00 00 40 */ b lbl_802343F8 +lbl_802343BC: +/* 802343BC 0023131C 93 81 00 08 */ stw r28, 8(r1) +/* 802343C0 00231320 7F 43 D3 78 */ mr r3, r26 +/* 802343C4 00231324 38 81 00 14 */ addi r4, r1, 0x14 +/* 802343C8 00231328 38 A1 00 0C */ addi r5, r1, 0xc +/* 802343CC 0023132C 93 81 00 0C */ stw r28, 0xc(r1) +/* 802343D0 00231330 93 A1 00 14 */ stw r29, 0x14(r1) +/* 802343D4 00231334 4B FF FE 9D */ bl IsLayerActive__16CWorldLayerStateFii +/* 802343D8 00231338 54 64 06 3E */ clrlwi r4, r3, 0x18 +/* 802343DC 0023133C 7F 63 DB 78 */ mr r3, r27 +/* 802343E0 00231340 7C 04 00 D0 */ neg r0, r4 +/* 802343E4 00231344 38 A0 00 01 */ li r5, 1 +/* 802343E8 00231348 7C 00 23 78 */ or r0, r0, r4 +/* 802343EC 0023134C 54 04 0F FE */ srwi r4, r0, 0x1f +/* 802343F0 00231350 48 10 AF CD */ bl WriteBits__13COutputStreamFii +/* 802343F4 00231354 3B 9C 00 01 */ addi r28, r28, 1 +lbl_802343F8: +/* 802343F8 00231358 7C 1C F8 00 */ cmpw r28, r31 +/* 802343FC 0023135C 41 80 FF C0 */ blt lbl_802343BC +/* 80234400 00231360 3B BD 00 01 */ addi r29, r29, 1 +lbl_80234404: +/* 80234404 00231364 7C 1D F0 00 */ cmpw r29, r30 +/* 80234408 00231368 41 80 FF 90 */ blt lbl_80234398 +/* 8023440C 0023136C BB 41 00 28 */ lmw r26, 0x28(r1) +/* 80234410 00231370 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80234414 00231374 7C 08 03 A6 */ mtlr r0 +/* 80234418 00231378 38 21 00 40 */ addi r1, r1, 0x40 +/* 8023441C 0023137C 4E 80 00 20 */ blr + +.global __ct__16CWorldLayerStateFR16CBitStreamReaderRC10CSaveWorld +__ct__16CWorldLayerStateFR16CBitStreamReaderRC10CSaveWorld: +/* 80234420 00231380 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80234424 00231384 7C 08 02 A6 */ mflr r0 +/* 80234428 00231388 90 01 00 24 */ stw r0, 0x24(r1) +/* 8023442C 0023138C 38 00 00 00 */ li r0, 0 +/* 80234430 00231390 BF 61 00 0C */ stmw r27, 0xc(r1) +/* 80234434 00231394 7C 9D 23 78 */ mr r29, r4 +/* 80234438 00231398 7C 7C 1B 78 */ mr r28, r3 +/* 8023443C 0023139C 38 80 00 0A */ li r4, 0xa +/* 80234440 002313A0 90 03 00 04 */ stw r0, 4(r3) +/* 80234444 002313A4 7F A3 EB 78 */ mr r3, r29 +/* 80234448 002313A8 90 1C 00 08 */ stw r0, 8(r28) +/* 8023444C 002313AC 90 1C 00 0C */ stw r0, 0xc(r28) +/* 80234450 002313B0 90 1C 00 10 */ stw r0, 0x10(r28) +/* 80234454 002313B4 90 1C 00 18 */ stw r0, 0x18(r28) +/* 80234458 002313B8 90 1C 00 1C */ stw r0, 0x1c(r28) +/* 8023445C 002313BC 90 1C 00 20 */ stw r0, 0x20(r28) +/* 80234460 002313C0 48 10 A8 D9 */ bl ReadBits__12CInputStreamFi +/* 80234464 002313C4 7C 7F 1B 78 */ mr r31, r3 +/* 80234468 002313C8 38 7C 00 14 */ addi r3, r28, 0x14 +/* 8023446C 002313CC 57 E4 D8 08 */ slwi r4, r31, 0x1b +/* 80234470 002313D0 57 E5 0F FE */ srwi r5, r31, 0x1f +/* 80234474 002313D4 7F E0 2E 70 */ srawi r0, r31, 5 +/* 80234478 002313D8 7C 85 20 50 */ subf r4, r5, r4 +/* 8023447C 002313DC 54 84 28 3E */ rotlwi r4, r4, 5 +/* 80234480 002313E0 7C 00 01 94 */ addze r0, r0 +/* 80234484 002313E4 7C A4 2A 14 */ add r5, r4, r5 +/* 80234488 002313E8 7C 85 00 D0 */ neg r4, r5 +/* 8023448C 002313EC 7C 84 2B 78 */ or r4, r4, r5 +/* 80234490 002313F0 54 84 0F FE */ srwi r4, r4, 0x1f +/* 80234494 002313F4 7C 80 22 14 */ add r4, r0, r4 +/* 80234498 002313F8 4B E2 F6 8D */ bl "reserve__Q24rstl37vectorFi" +/* 8023449C 002313FC 3B C0 00 00 */ li r30, 0 +/* 802344A0 00231400 48 00 01 14 */ b lbl_802345B4 +lbl_802344A4: +/* 802344A4 00231404 7F A3 EB 78 */ mr r3, r29 +/* 802344A8 00231408 38 80 00 01 */ li r4, 1 +/* 802344AC 0023140C 48 10 A8 8D */ bl ReadBits__12CInputStreamFi +/* 802344B0 00231410 80 9C 00 10 */ lwz r4, 0x10(r28) +/* 802344B4 00231414 7C 03 00 D0 */ neg r0, r3 +/* 802344B8 00231418 7C 05 1B 78 */ or r5, r0, r3 +/* 802344BC 0023141C 54 80 D8 08 */ slwi r0, r4, 0x1b +/* 802344C0 00231420 54 83 0F FE */ srwi r3, r4, 0x1f +/* 802344C4 00231424 7C 03 00 50 */ subf r0, r3, r0 +/* 802344C8 00231428 54 BB 0F FE */ srwi r27, r5, 0x1f +/* 802344CC 0023142C 54 00 28 3E */ rotlwi r0, r0, 5 +/* 802344D0 00231430 7C 00 1A 15 */ add. r0, r0, r3 +/* 802344D4 00231434 40 82 00 54 */ bne lbl_80234528 +/* 802344D8 00231438 80 1C 00 18 */ lwz r0, 0x18(r28) +/* 802344DC 0023143C 80 BC 00 1C */ lwz r5, 0x1c(r28) +/* 802344E0 00231440 7C 00 28 00 */ cmpw r0, r5 +/* 802344E4 00231444 41 80 00 1C */ blt lbl_80234500 +/* 802344E8 00231448 2C 05 00 00 */ cmpwi r5, 0 +/* 802344EC 0023144C 38 7C 00 14 */ addi r3, r28, 0x14 +/* 802344F0 00231450 38 80 00 04 */ li r4, 4 +/* 802344F4 00231454 41 82 00 08 */ beq lbl_802344FC +/* 802344F8 00231458 54 A4 08 3C */ slwi r4, r5, 1 +lbl_802344FC: +/* 802344FC 0023145C 4B E2 F6 29 */ bl "reserve__Q24rstl37vectorFi" +lbl_80234500: +/* 80234500 00231460 80 1C 00 18 */ lwz r0, 0x18(r28) +/* 80234504 00231464 80 7C 00 20 */ lwz r3, 0x20(r28) +/* 80234508 00231468 54 00 10 3A */ slwi r0, r0, 2 +/* 8023450C 0023146C 7C 63 02 15 */ add. r3, r3, r0 +/* 80234510 00231470 41 82 00 0C */ beq lbl_8023451C +/* 80234514 00231474 80 0D 96 40 */ lwz r0, lbl_805A8200@sda21(r13) +/* 80234518 00231478 90 03 00 00 */ stw r0, 0(r3) +lbl_8023451C: +/* 8023451C 0023147C 80 7C 00 18 */ lwz r3, 0x18(r28) +/* 80234520 00231480 38 03 00 01 */ addi r0, r3, 1 +/* 80234524 00231484 90 1C 00 18 */ stw r0, 0x18(r28) +lbl_80234528: +/* 80234528 00231488 80 7C 00 10 */ lwz r3, 0x10(r28) +/* 8023452C 0023148C 28 1B 00 00 */ cmplwi r27, 0 +/* 80234530 00231490 38 03 00 01 */ addi r0, r3, 1 +/* 80234534 00231494 90 1C 00 10 */ stw r0, 0x10(r28) +/* 80234538 00231498 41 82 00 40 */ beq lbl_80234578 +/* 8023453C 0023149C 7C 64 2E 70 */ srawi r4, r3, 5 +/* 80234540 002314A0 54 60 D8 08 */ slwi r0, r3, 0x1b +/* 80234544 002314A4 54 63 0F FE */ srwi r3, r3, 0x1f +/* 80234548 002314A8 80 FC 00 20 */ lwz r7, 0x20(r28) +/* 8023454C 002314AC 7C A4 01 94 */ addze r5, r4 +/* 80234550 002314B0 38 80 00 01 */ li r4, 1 +/* 80234554 002314B4 7C 03 00 50 */ subf r0, r3, r0 +/* 80234558 002314B8 54 A6 10 3A */ slwi r6, r5, 2 +/* 8023455C 002314BC 54 00 28 3E */ rotlwi r0, r0, 5 +/* 80234560 002314C0 7C A7 30 2E */ lwzx r5, r7, r6 +/* 80234564 002314C4 7C 00 1A 14 */ add r0, r0, r3 +/* 80234568 002314C8 7C 80 00 30 */ slw r0, r4, r0 +/* 8023456C 002314CC 7C A0 03 78 */ or r0, r5, r0 +/* 80234570 002314D0 7C 07 31 2E */ stwx r0, r7, r6 +/* 80234574 002314D4 48 00 00 3C */ b lbl_802345B0 +lbl_80234578: +/* 80234578 002314D8 7C 64 2E 70 */ srawi r4, r3, 5 +/* 8023457C 002314DC 54 60 D8 08 */ slwi r0, r3, 0x1b +/* 80234580 002314E0 54 63 0F FE */ srwi r3, r3, 0x1f +/* 80234584 002314E4 80 FC 00 20 */ lwz r7, 0x20(r28) +/* 80234588 002314E8 7C A4 01 94 */ addze r5, r4 +/* 8023458C 002314EC 38 80 00 01 */ li r4, 1 +/* 80234590 002314F0 7C 03 00 50 */ subf r0, r3, r0 +/* 80234594 002314F4 54 A6 10 3A */ slwi r6, r5, 2 +/* 80234598 002314F8 54 00 28 3E */ rotlwi r0, r0, 5 +/* 8023459C 002314FC 7C A7 30 2E */ lwzx r5, r7, r6 +/* 802345A0 00231500 7C 00 1A 14 */ add r0, r0, r3 +/* 802345A4 00231504 7C 80 00 30 */ slw r0, r4, r0 +/* 802345A8 00231508 7C A0 00 78 */ andc r0, r5, r0 +/* 802345AC 0023150C 7C 07 31 2E */ stwx r0, r7, r6 +lbl_802345B0: +/* 802345B0 00231510 3B DE 00 01 */ addi r30, r30, 1 +lbl_802345B4: +/* 802345B4 00231514 7C 1E F8 40 */ cmplw r30, r31 +/* 802345B8 00231518 41 80 FE EC */ blt lbl_802344A4 +/* 802345BC 0023151C 7F 83 E3 78 */ mr r3, r28 +/* 802345C0 00231520 BB 61 00 0C */ lmw r27, 0xc(r1) +/* 802345C4 00231524 80 01 00 24 */ lwz r0, 0x24(r1) +/* 802345C8 00231528 7C 08 03 A6 */ mtlr r0 +/* 802345CC 0023152C 38 21 00 20 */ addi r1, r1, 0x20 +/* 802345D0 00231530 4E 80 00 20 */ blr + +.global __ct__13CGLXMemoryInfoFi +__ct__13CGLXMemoryInfoFi: +/* 802345D4 00231534 38 00 00 00 */ li r0, 0 +/* 802345D8 00231538 90 03 00 04 */ stw r0, 4(r3) +/* 802345DC 0023153C 90 03 00 08 */ stw r0, 8(r3) +/* 802345E0 00231540 90 03 00 0C */ stw r0, 0xc(r3) +/* 802345E4 00231544 90 03 00 10 */ stw r0, 0x10(r3) +/* 802345E8 00231548 90 03 00 18 */ stw r0, 0x18(r3) +/* 802345EC 0023154C 90 03 00 1C */ stw r0, 0x1c(r3) +/* 802345F0 00231550 90 03 00 20 */ stw r0, 0x20(r3) +/* 802345F4 00231554 4E 80 00 20 */ blr + +.global __sinit_CScriptLayerManager_cpp +__sinit_CScriptLayerManager_cpp: +/* 802345F8 00231558 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 802345FC 0023155C 7C 08 02 A6 */ mflr r0 +/* 80234600 00231560 3C 80 80 3D */ lis r4, lbl_803D42E0@ha +/* 80234604 00231564 3C 60 80 47 */ lis r3, lbl_8046D34C@ha +/* 80234608 00231568 90 01 00 14 */ stw r0, 0x14(r1) +/* 8023460C 0023156C 38 84 42 E0 */ addi r4, r4, lbl_803D42E0@l +/* 80234610 00231570 38 C4 00 07 */ addi r6, r4, 7 +/* 80234614 00231574 38 00 00 00 */ li r0, 0 +/* 80234618 00231578 94 C3 D3 4C */ stwu r6, lbl_8046D34C@l(r3) +/* 8023461C 0023157C 90 03 00 04 */ stw r0, 4(r3) +/* 80234620 00231580 48 00 00 08 */ b lbl_80234628 +lbl_80234624: +/* 80234624 00231584 38 C6 00 01 */ addi r6, r6, 1 +lbl_80234628: +/* 80234628 00231588 88 06 00 00 */ lbz r0, 0(r6) +/* 8023462C 0023158C 7C 00 07 75 */ extsb. r0, r0 +/* 80234630 00231590 40 82 FF F4 */ bne lbl_80234624 +/* 80234634 00231594 3C 80 80 3D */ lis r4, lbl_803D42E0@ha +/* 80234638 00231598 3C 60 80 47 */ lis r3, lbl_8046D34C@ha +/* 8023463C 0023159C 38 A4 42 E0 */ addi r5, r4, lbl_803D42E0@l +/* 80234640 002315A0 38 05 00 07 */ addi r0, r5, 7 +/* 80234644 002315A4 3C 80 80 00 */ lis r4, sub_80004a9c@ha +/* 80234648 002315A8 38 63 D3 4C */ addi r3, r3, lbl_8046D34C@l +/* 8023464C 002315AC 3C A0 80 47 */ lis r5, lbl_8046D340@ha +/* 80234650 002315B0 7C 00 30 50 */ subf r0, r0, r6 +/* 80234654 002315B4 38 84 4A 9C */ addi r4, r4, sub_80004a9c@l +/* 80234658 002315B8 90 03 00 08 */ stw r0, 8(r3) +/* 8023465C 002315BC 38 A5 D3 40 */ addi r5, r5, lbl_8046D340@l +/* 80234660 002315C0 48 15 50 2D */ bl __register_global_object +/* 80234664 002315C4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80234668 002315C8 7C 08 03 A6 */ mtlr r0 +/* 8023466C 002315CC 38 21 00 10 */ addi r1, r1, 0x10 +/* 80234670 002315D0 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/RumbleFxTable.s b/asm/Kyoto_CWD/RumbleFxTable.s new file mode 100644 index 00000000..1dd28917 --- /dev/null +++ b/asm/Kyoto_CWD/RumbleFxTable.s @@ -0,0 +1,637 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __sinit_RumbleFxTable_cpp +__sinit_RumbleFxTable_cpp: +/* 802269BC 0022391C 94 21 FD 50 */ stwu r1, -0x2b0(r1) +/* 802269C0 00223920 7C 08 02 A6 */ mflr r0 +/* 802269C4 00223924 C0 22 B4 C0 */ lfs f1, lbl_805AD1E0@sda21(r2) +/* 802269C8 00223928 38 80 00 00 */ li r4, 0 +/* 802269CC 0022392C 90 01 02 B4 */ stw r0, 0x2b4(r1) +/* 802269D0 00223930 38 61 02 8C */ addi r3, r1, 0x28c +/* 802269D4 00223934 C0 42 B4 C4 */ lfs f2, lbl_805AD1E4@sda21(r2) +/* 802269D8 00223938 38 A0 00 00 */ li r5, 0 +/* 802269DC 0022393C C0 62 B4 C8 */ lfs f3, lbl_805AD1E8@sda21(r2) +/* 802269E0 00223940 C0 82 B4 CC */ lfs f4, lbl_805AD1EC@sda21(r2) +/* 802269E4 00223944 C0 A2 B4 D0 */ lfs f5, lbl_805AD1F0@sda21(r2) +/* 802269E8 00223948 C0 C2 B4 D4 */ lfs f6, lbl_805AD1F4@sda21(r2) +/* 802269EC 0022394C 48 14 31 ED */ bl __ct__9SAdsrDataFffffffbb +/* 802269F0 00223950 3C 60 80 57 */ lis r3, lbl_80572140@ha +/* 802269F4 00223954 C0 21 02 8C */ lfs f1, 0x28c(r1) +/* 802269F8 00223958 38 C3 21 40 */ addi r6, r3, lbl_80572140@l +/* 802269FC 0022395C C0 41 02 90 */ lfs f2, 0x290(r1) +/* 80226A00 00223960 C0 61 02 94 */ lfs f3, 0x294(r1) +/* 80226A04 00223964 38 61 02 70 */ addi r3, r1, 0x270 +/* 80226A08 00223968 C0 81 02 98 */ lfs f4, 0x298(r1) +/* 80226A0C 0022396C 38 80 00 00 */ li r4, 0 +/* 80226A10 00223970 C0 A1 02 9C */ lfs f5, 0x29c(r1) +/* 80226A14 00223974 38 A0 00 00 */ li r5, 0 +/* 80226A18 00223978 C0 01 02 A0 */ lfs f0, 0x2a0(r1) +/* 80226A1C 0022397C 88 01 02 A4 */ lbz r0, 0x2a4(r1) +/* 80226A20 00223980 D0 26 00 00 */ stfs f1, 0(r6) +/* 80226A24 00223984 C0 22 B4 D8 */ lfs f1, lbl_805AD1F8@sda21(r2) +/* 80226A28 00223988 D0 46 00 04 */ stfs f2, 4(r6) +/* 80226A2C 0022398C C0 42 B4 C4 */ lfs f2, lbl_805AD1E4@sda21(r2) +/* 80226A30 00223990 D0 66 00 08 */ stfs f3, 8(r6) +/* 80226A34 00223994 C0 62 B4 DC */ lfs f3, lbl_805AD1FC@sda21(r2) +/* 80226A38 00223998 D0 86 00 0C */ stfs f4, 0xc(r6) +/* 80226A3C 0022399C C0 82 B4 E0 */ lfs f4, lbl_805AD200@sda21(r2) +/* 80226A40 002239A0 D0 A6 00 10 */ stfs f5, 0x10(r6) +/* 80226A44 002239A4 C0 A2 B4 E4 */ lfs f5, lbl_805AD204@sda21(r2) +/* 80226A48 002239A8 D0 06 00 14 */ stfs f0, 0x14(r6) +/* 80226A4C 002239AC C0 C2 B4 E8 */ lfs f6, lbl_805AD208@sda21(r2) +/* 80226A50 002239B0 98 06 00 18 */ stb r0, 0x18(r6) +/* 80226A54 002239B4 48 14 31 85 */ bl __ct__9SAdsrDataFffffffbb +/* 80226A58 002239B8 C0 42 B4 C4 */ lfs f2, lbl_805AD1E4@sda21(r2) +/* 80226A5C 002239BC 3C 60 80 57 */ lis r3, lbl_80572140@ha +/* 80226A60 002239C0 C0 82 B4 EC */ lfs f4, lbl_805AD20C@sda21(r2) +/* 80226A64 002239C4 38 C3 21 40 */ addi r6, r3, lbl_80572140@l +/* 80226A68 002239C8 C0 21 02 70 */ lfs f1, 0x270(r1) +/* 80226A6C 002239CC FC C0 10 90 */ fmr f6, f2 +/* 80226A70 002239D0 C0 61 02 74 */ lfs f3, 0x274(r1) +/* 80226A74 002239D4 FC A0 20 90 */ fmr f5, f4 +/* 80226A78 002239D8 C1 21 02 78 */ lfs f9, 0x278(r1) +/* 80226A7C 002239DC 38 61 02 54 */ addi r3, r1, 0x254 +/* 80226A80 002239E0 C1 01 02 7C */ lfs f8, 0x27c(r1) +/* 80226A84 002239E4 C0 E1 02 80 */ lfs f7, 0x280(r1) +/* 80226A88 002239E8 38 80 00 00 */ li r4, 0 +/* 80226A8C 002239EC C0 01 02 84 */ lfs f0, 0x284(r1) +/* 80226A90 002239F0 38 A0 00 00 */ li r5, 0 +/* 80226A94 002239F4 88 01 02 88 */ lbz r0, 0x288(r1) +/* 80226A98 002239F8 D0 26 00 1C */ stfs f1, 0x1c(r6) +/* 80226A9C 002239FC C0 22 B4 E4 */ lfs f1, lbl_805AD204@sda21(r2) +/* 80226AA0 00223A00 D0 66 00 20 */ stfs f3, 0x20(r6) +/* 80226AA4 00223A04 C0 62 B4 D0 */ lfs f3, lbl_805AD1F0@sda21(r2) +/* 80226AA8 00223A08 D1 26 00 24 */ stfs f9, 0x24(r6) +/* 80226AAC 00223A0C D1 06 00 28 */ stfs f8, 0x28(r6) +/* 80226AB0 00223A10 D0 E6 00 2C */ stfs f7, 0x2c(r6) +/* 80226AB4 00223A14 D0 06 00 30 */ stfs f0, 0x30(r6) +/* 80226AB8 00223A18 98 06 00 34 */ stb r0, 0x34(r6) +/* 80226ABC 00223A1C 48 14 31 1D */ bl __ct__9SAdsrDataFffffffbb +/* 80226AC0 00223A20 3C 60 80 57 */ lis r3, lbl_80572140@ha +/* 80226AC4 00223A24 C0 21 02 54 */ lfs f1, 0x254(r1) +/* 80226AC8 00223A28 38 C3 21 40 */ addi r6, r3, lbl_80572140@l +/* 80226ACC 00223A2C C0 41 02 58 */ lfs f2, 0x258(r1) +/* 80226AD0 00223A30 C0 61 02 5C */ lfs f3, 0x25c(r1) +/* 80226AD4 00223A34 38 61 02 38 */ addi r3, r1, 0x238 +/* 80226AD8 00223A38 C0 81 02 60 */ lfs f4, 0x260(r1) +/* 80226ADC 00223A3C 38 80 00 00 */ li r4, 0 +/* 80226AE0 00223A40 C0 A1 02 64 */ lfs f5, 0x264(r1) +/* 80226AE4 00223A44 38 A0 00 00 */ li r5, 0 +/* 80226AE8 00223A48 C0 01 02 68 */ lfs f0, 0x268(r1) +/* 80226AEC 00223A4C 88 01 02 6C */ lbz r0, 0x26c(r1) +/* 80226AF0 00223A50 D0 26 00 38 */ stfs f1, 0x38(r6) +/* 80226AF4 00223A54 C0 22 B4 F0 */ lfs f1, lbl_805AD210@sda21(r2) +/* 80226AF8 00223A58 D0 46 00 3C */ stfs f2, 0x3c(r6) +/* 80226AFC 00223A5C C0 42 B4 C4 */ lfs f2, lbl_805AD1E4@sda21(r2) +/* 80226B00 00223A60 D0 66 00 40 */ stfs f3, 0x40(r6) +/* 80226B04 00223A64 C0 62 B4 D0 */ lfs f3, lbl_805AD1F0@sda21(r2) +/* 80226B08 00223A68 D0 86 00 44 */ stfs f4, 0x44(r6) +/* 80226B0C 00223A6C C0 82 B4 EC */ lfs f4, lbl_805AD20C@sda21(r2) +/* 80226B10 00223A70 D0 A6 00 48 */ stfs f5, 0x48(r6) +/* 80226B14 00223A74 C0 A2 B4 F4 */ lfs f5, lbl_805AD214@sda21(r2) +/* 80226B18 00223A78 D0 06 00 4C */ stfs f0, 0x4c(r6) +/* 80226B1C 00223A7C C0 C2 B4 F8 */ lfs f6, lbl_805AD218@sda21(r2) +/* 80226B20 00223A80 98 06 00 50 */ stb r0, 0x50(r6) +/* 80226B24 00223A84 48 14 30 B5 */ bl __ct__9SAdsrDataFffffffbb +/* 80226B28 00223A88 3C 60 80 57 */ lis r3, lbl_80572140@ha +/* 80226B2C 00223A8C C0 21 02 38 */ lfs f1, 0x238(r1) +/* 80226B30 00223A90 38 C3 21 40 */ addi r6, r3, lbl_80572140@l +/* 80226B34 00223A94 C0 41 02 3C */ lfs f2, 0x23c(r1) +/* 80226B38 00223A98 C0 61 02 40 */ lfs f3, 0x240(r1) +/* 80226B3C 00223A9C 38 61 02 1C */ addi r3, r1, 0x21c +/* 80226B40 00223AA0 C0 81 02 44 */ lfs f4, 0x244(r1) +/* 80226B44 00223AA4 38 80 00 00 */ li r4, 0 +/* 80226B48 00223AA8 C0 A1 02 48 */ lfs f5, 0x248(r1) +/* 80226B4C 00223AAC 38 A0 00 00 */ li r5, 0 +/* 80226B50 00223AB0 C0 01 02 4C */ lfs f0, 0x24c(r1) +/* 80226B54 00223AB4 88 01 02 50 */ lbz r0, 0x250(r1) +/* 80226B58 00223AB8 D0 26 00 54 */ stfs f1, 0x54(r6) +/* 80226B5C 00223ABC C0 22 B4 FC */ lfs f1, lbl_805AD21C@sda21(r2) +/* 80226B60 00223AC0 D0 46 00 58 */ stfs f2, 0x58(r6) +/* 80226B64 00223AC4 C0 42 B4 C4 */ lfs f2, lbl_805AD1E4@sda21(r2) +/* 80226B68 00223AC8 D0 66 00 5C */ stfs f3, 0x5c(r6) +/* 80226B6C 00223ACC C0 62 B4 D0 */ lfs f3, lbl_805AD1F0@sda21(r2) +/* 80226B70 00223AD0 D0 86 00 60 */ stfs f4, 0x60(r6) +/* 80226B74 00223AD4 C0 82 B5 00 */ lfs f4, lbl_805AD220@sda21(r2) +/* 80226B78 00223AD8 D0 A6 00 64 */ stfs f5, 0x64(r6) +/* 80226B7C 00223ADC C0 A2 B5 04 */ lfs f5, lbl_805AD224@sda21(r2) +/* 80226B80 00223AE0 D0 06 00 68 */ stfs f0, 0x68(r6) +/* 80226B84 00223AE4 C0 C2 B5 08 */ lfs f6, lbl_805AD228@sda21(r2) +/* 80226B88 00223AE8 98 06 00 6C */ stb r0, 0x6c(r6) +/* 80226B8C 00223AEC 48 14 30 4D */ bl __ct__9SAdsrDataFffffffbb +/* 80226B90 00223AF0 3C 60 80 57 */ lis r3, lbl_80572140@ha +/* 80226B94 00223AF4 C0 21 02 1C */ lfs f1, 0x21c(r1) +/* 80226B98 00223AF8 38 C3 21 40 */ addi r6, r3, lbl_80572140@l +/* 80226B9C 00223AFC C0 41 02 20 */ lfs f2, 0x220(r1) +/* 80226BA0 00223B00 C0 61 02 24 */ lfs f3, 0x224(r1) +/* 80226BA4 00223B04 38 61 02 00 */ addi r3, r1, 0x200 +/* 80226BA8 00223B08 C0 81 02 28 */ lfs f4, 0x228(r1) +/* 80226BAC 00223B0C 38 80 00 00 */ li r4, 0 +/* 80226BB0 00223B10 C0 A1 02 2C */ lfs f5, 0x22c(r1) +/* 80226BB4 00223B14 38 A0 00 00 */ li r5, 0 +/* 80226BB8 00223B18 C0 01 02 30 */ lfs f0, 0x230(r1) +/* 80226BBC 00223B1C 88 01 02 34 */ lbz r0, 0x234(r1) +/* 80226BC0 00223B20 D0 26 00 70 */ stfs f1, 0x70(r6) +/* 80226BC4 00223B24 C0 22 B5 0C */ lfs f1, lbl_805AD22C@sda21(r2) +/* 80226BC8 00223B28 D0 46 00 74 */ stfs f2, 0x74(r6) +/* 80226BCC 00223B2C C0 42 B4 C4 */ lfs f2, lbl_805AD1E4@sda21(r2) +/* 80226BD0 00223B30 D0 66 00 78 */ stfs f3, 0x78(r6) +/* 80226BD4 00223B34 C0 62 B4 F8 */ lfs f3, lbl_805AD218@sda21(r2) +/* 80226BD8 00223B38 D0 86 00 7C */ stfs f4, 0x7c(r6) +/* 80226BDC 00223B3C C0 82 B4 D0 */ lfs f4, lbl_805AD1F0@sda21(r2) +/* 80226BE0 00223B40 D0 A6 00 80 */ stfs f5, 0x80(r6) +/* 80226BE4 00223B44 C0 A2 B5 10 */ lfs f5, lbl_805AD230@sda21(r2) +/* 80226BE8 00223B48 D0 06 00 84 */ stfs f0, 0x84(r6) +/* 80226BEC 00223B4C C0 C2 B5 14 */ lfs f6, lbl_805AD234@sda21(r2) +/* 80226BF0 00223B50 98 06 00 88 */ stb r0, 0x88(r6) +/* 80226BF4 00223B54 48 14 2F E5 */ bl __ct__9SAdsrDataFffffffbb +/* 80226BF8 00223B58 3C 60 80 57 */ lis r3, lbl_80572140@ha +/* 80226BFC 00223B5C C0 21 02 00 */ lfs f1, 0x200(r1) +/* 80226C00 00223B60 38 C3 21 40 */ addi r6, r3, lbl_80572140@l +/* 80226C04 00223B64 C0 41 02 04 */ lfs f2, 0x204(r1) +/* 80226C08 00223B68 C0 61 02 08 */ lfs f3, 0x208(r1) +/* 80226C0C 00223B6C 38 61 01 E4 */ addi r3, r1, 0x1e4 +/* 80226C10 00223B70 C0 81 02 0C */ lfs f4, 0x20c(r1) +/* 80226C14 00223B74 38 80 00 00 */ li r4, 0 +/* 80226C18 00223B78 C0 A1 02 10 */ lfs f5, 0x210(r1) +/* 80226C1C 00223B7C 38 A0 00 00 */ li r5, 0 +/* 80226C20 00223B80 C0 01 02 14 */ lfs f0, 0x214(r1) +/* 80226C24 00223B84 88 01 02 18 */ lbz r0, 0x218(r1) +/* 80226C28 00223B88 D0 26 00 8C */ stfs f1, 0x8c(r6) +/* 80226C2C 00223B8C C0 22 B5 0C */ lfs f1, lbl_805AD22C@sda21(r2) +/* 80226C30 00223B90 D0 46 00 90 */ stfs f2, 0x90(r6) +/* 80226C34 00223B94 C0 42 B4 C4 */ lfs f2, lbl_805AD1E4@sda21(r2) +/* 80226C38 00223B98 D0 66 00 94 */ stfs f3, 0x94(r6) +/* 80226C3C 00223B9C C0 62 B5 18 */ lfs f3, lbl_805AD238@sda21(r2) +/* 80226C40 00223BA0 D0 86 00 98 */ stfs f4, 0x98(r6) +/* 80226C44 00223BA4 C0 82 B4 C8 */ lfs f4, lbl_805AD1E8@sda21(r2) +/* 80226C48 00223BA8 D0 A6 00 9C */ stfs f5, 0x9c(r6) +/* 80226C4C 00223BAC C0 A2 B4 F8 */ lfs f5, lbl_805AD218@sda21(r2) +/* 80226C50 00223BB0 D0 06 00 A0 */ stfs f0, 0xa0(r6) +/* 80226C54 00223BB4 C0 C2 B5 1C */ lfs f6, lbl_805AD23C@sda21(r2) +/* 80226C58 00223BB8 98 06 00 A4 */ stb r0, 0xa4(r6) +/* 80226C5C 00223BBC 48 14 2F 7D */ bl __ct__9SAdsrDataFffffffbb +/* 80226C60 00223BC0 3C 60 80 57 */ lis r3, lbl_80572140@ha +/* 80226C64 00223BC4 C0 21 01 E4 */ lfs f1, 0x1e4(r1) +/* 80226C68 00223BC8 38 C3 21 40 */ addi r6, r3, lbl_80572140@l +/* 80226C6C 00223BCC C0 41 01 E8 */ lfs f2, 0x1e8(r1) +/* 80226C70 00223BD0 C0 61 01 EC */ lfs f3, 0x1ec(r1) +/* 80226C74 00223BD4 38 61 01 C8 */ addi r3, r1, 0x1c8 +/* 80226C78 00223BD8 C0 81 01 F0 */ lfs f4, 0x1f0(r1) +/* 80226C7C 00223BDC 38 80 00 00 */ li r4, 0 +/* 80226C80 00223BE0 C0 A1 01 F4 */ lfs f5, 0x1f4(r1) +/* 80226C84 00223BE4 38 A0 00 00 */ li r5, 0 +/* 80226C88 00223BE8 C0 01 01 F8 */ lfs f0, 0x1f8(r1) +/* 80226C8C 00223BEC 88 01 01 FC */ lbz r0, 0x1fc(r1) +/* 80226C90 00223BF0 D0 26 00 A8 */ stfs f1, 0xa8(r6) +/* 80226C94 00223BF4 C0 22 B5 20 */ lfs f1, lbl_805AD240@sda21(r2) +/* 80226C98 00223BF8 D0 46 00 AC */ stfs f2, 0xac(r6) +/* 80226C9C 00223BFC C0 42 B4 C4 */ lfs f2, lbl_805AD1E4@sda21(r2) +/* 80226CA0 00223C00 D0 66 00 B0 */ stfs f3, 0xb0(r6) +/* 80226CA4 00223C04 C0 62 B5 24 */ lfs f3, lbl_805AD244@sda21(r2) +/* 80226CA8 00223C08 D0 86 00 B4 */ stfs f4, 0xb4(r6) +/* 80226CAC 00223C0C C0 82 B4 E0 */ lfs f4, lbl_805AD200@sda21(r2) +/* 80226CB0 00223C10 D0 A6 00 B8 */ stfs f5, 0xb8(r6) +/* 80226CB4 00223C14 C0 A2 B5 28 */ lfs f5, lbl_805AD248@sda21(r2) +/* 80226CB8 00223C18 D0 06 00 BC */ stfs f0, 0xbc(r6) +/* 80226CBC 00223C1C C0 C2 B5 2C */ lfs f6, lbl_805AD24C@sda21(r2) +/* 80226CC0 00223C20 98 06 00 C0 */ stb r0, 0xc0(r6) +/* 80226CC4 00223C24 48 14 2F 15 */ bl __ct__9SAdsrDataFffffffbb +/* 80226CC8 00223C28 C0 42 B4 C4 */ lfs f2, lbl_805AD1E4@sda21(r2) +/* 80226CCC 00223C2C 3C 60 80 57 */ lis r3, lbl_80572140@ha +/* 80226CD0 00223C30 C0 21 01 C8 */ lfs f1, 0x1c8(r1) +/* 80226CD4 00223C34 38 C3 21 40 */ addi r6, r3, lbl_80572140@l +/* 80226CD8 00223C38 C0 61 01 CC */ lfs f3, 0x1cc(r1) +/* 80226CDC 00223C3C FC C0 10 90 */ fmr f6, f2 +/* 80226CE0 00223C40 C0 81 01 D0 */ lfs f4, 0x1d0(r1) +/* 80226CE4 00223C44 38 61 01 AC */ addi r3, r1, 0x1ac +/* 80226CE8 00223C48 C0 A1 01 D4 */ lfs f5, 0x1d4(r1) +/* 80226CEC 00223C4C 38 80 00 00 */ li r4, 0 +/* 80226CF0 00223C50 C0 E1 01 D8 */ lfs f7, 0x1d8(r1) +/* 80226CF4 00223C54 C0 01 01 DC */ lfs f0, 0x1dc(r1) +/* 80226CF8 00223C58 38 A0 00 00 */ li r5, 0 +/* 80226CFC 00223C5C 88 01 01 E0 */ lbz r0, 0x1e0(r1) +/* 80226D00 00223C60 D0 26 00 C4 */ stfs f1, 0xc4(r6) +/* 80226D04 00223C64 C0 22 B4 C0 */ lfs f1, lbl_805AD1E0@sda21(r2) +/* 80226D08 00223C68 D0 66 00 C8 */ stfs f3, 0xc8(r6) +/* 80226D0C 00223C6C C0 62 B5 24 */ lfs f3, lbl_805AD244@sda21(r2) +/* 80226D10 00223C70 D0 86 00 CC */ stfs f4, 0xcc(r6) +/* 80226D14 00223C74 C0 82 B4 E0 */ lfs f4, lbl_805AD200@sda21(r2) +/* 80226D18 00223C78 D0 A6 00 D0 */ stfs f5, 0xd0(r6) +/* 80226D1C 00223C7C C0 A2 B4 F8 */ lfs f5, lbl_805AD218@sda21(r2) +/* 80226D20 00223C80 D0 E6 00 D4 */ stfs f7, 0xd4(r6) +/* 80226D24 00223C84 D0 06 00 D8 */ stfs f0, 0xd8(r6) +/* 80226D28 00223C88 98 06 00 DC */ stb r0, 0xdc(r6) +/* 80226D2C 00223C8C 48 14 2E AD */ bl __ct__9SAdsrDataFffffffbb +/* 80226D30 00223C90 C0 62 B5 34 */ lfs f3, lbl_805AD254@sda21(r2) +/* 80226D34 00223C94 3C 60 80 57 */ lis r3, lbl_80572140@ha +/* 80226D38 00223C98 C0 21 01 AC */ lfs f1, 0x1ac(r1) +/* 80226D3C 00223C9C 38 C3 21 40 */ addi r6, r3, lbl_80572140@l +/* 80226D40 00223CA0 C0 41 01 B0 */ lfs f2, 0x1b0(r1) +/* 80226D44 00223CA4 FC 80 18 90 */ fmr f4, f3 +/* 80226D48 00223CA8 C0 A1 01 B4 */ lfs f5, 0x1b4(r1) +/* 80226D4C 00223CAC 38 61 01 90 */ addi r3, r1, 0x190 +/* 80226D50 00223CB0 C0 C1 01 B8 */ lfs f6, 0x1b8(r1) +/* 80226D54 00223CB4 38 80 00 00 */ li r4, 0 +/* 80226D58 00223CB8 C0 E1 01 BC */ lfs f7, 0x1bc(r1) +/* 80226D5C 00223CBC C0 01 01 C0 */ lfs f0, 0x1c0(r1) +/* 80226D60 00223CC0 38 A0 00 00 */ li r5, 0 +/* 80226D64 00223CC4 88 01 01 C4 */ lbz r0, 0x1c4(r1) +/* 80226D68 00223CC8 D0 26 00 E0 */ stfs f1, 0xe0(r6) +/* 80226D6C 00223CCC C0 22 B5 30 */ lfs f1, lbl_805AD250@sda21(r2) +/* 80226D70 00223CD0 D0 46 00 E4 */ stfs f2, 0xe4(r6) +/* 80226D74 00223CD4 C0 42 B4 C4 */ lfs f2, lbl_805AD1E4@sda21(r2) +/* 80226D78 00223CD8 D0 A6 00 E8 */ stfs f5, 0xe8(r6) +/* 80226D7C 00223CDC C0 A2 B5 38 */ lfs f5, lbl_805AD258@sda21(r2) +/* 80226D80 00223CE0 D0 C6 00 EC */ stfs f6, 0xec(r6) +/* 80226D84 00223CE4 C0 C2 B4 D0 */ lfs f6, lbl_805AD1F0@sda21(r2) +/* 80226D88 00223CE8 D0 E6 00 F0 */ stfs f7, 0xf0(r6) +/* 80226D8C 00223CEC D0 06 00 F4 */ stfs f0, 0xf4(r6) +/* 80226D90 00223CF0 98 06 00 F8 */ stb r0, 0xf8(r6) +/* 80226D94 00223CF4 48 14 2E 45 */ bl __ct__9SAdsrDataFffffffbb +/* 80226D98 00223CF8 C0 A2 B5 44 */ lfs f5, lbl_805AD264@sda21(r2) +/* 80226D9C 00223CFC 3C 60 80 57 */ lis r3, lbl_80572140@ha +/* 80226DA0 00223D00 C0 21 01 90 */ lfs f1, 0x190(r1) +/* 80226DA4 00223D04 38 C3 21 40 */ addi r6, r3, lbl_80572140@l +/* 80226DA8 00223D08 C0 41 01 94 */ lfs f2, 0x194(r1) +/* 80226DAC 00223D0C FC C0 28 90 */ fmr f6, f5 +/* 80226DB0 00223D10 C0 61 01 98 */ lfs f3, 0x198(r1) +/* 80226DB4 00223D14 38 61 01 74 */ addi r3, r1, 0x174 +/* 80226DB8 00223D18 C0 81 01 9C */ lfs f4, 0x19c(r1) +/* 80226DBC 00223D1C 38 80 00 00 */ li r4, 0 +/* 80226DC0 00223D20 C0 E1 01 A0 */ lfs f7, 0x1a0(r1) +/* 80226DC4 00223D24 C0 01 01 A4 */ lfs f0, 0x1a4(r1) +/* 80226DC8 00223D28 38 A0 00 00 */ li r5, 0 +/* 80226DCC 00223D2C 88 01 01 A8 */ lbz r0, 0x1a8(r1) +/* 80226DD0 00223D30 D0 26 00 FC */ stfs f1, 0xfc(r6) +/* 80226DD4 00223D34 C0 22 B5 3C */ lfs f1, lbl_805AD25C@sda21(r2) +/* 80226DD8 00223D38 D0 46 01 00 */ stfs f2, 0x100(r6) +/* 80226DDC 00223D3C C0 42 B4 C4 */ lfs f2, lbl_805AD1E4@sda21(r2) +/* 80226DE0 00223D40 D0 66 01 04 */ stfs f3, 0x104(r6) +/* 80226DE4 00223D44 C0 62 B5 34 */ lfs f3, lbl_805AD254@sda21(r2) +/* 80226DE8 00223D48 D0 86 01 08 */ stfs f4, 0x108(r6) +/* 80226DEC 00223D4C C0 82 B5 40 */ lfs f4, lbl_805AD260@sda21(r2) +/* 80226DF0 00223D50 D0 E6 01 0C */ stfs f7, 0x10c(r6) +/* 80226DF4 00223D54 D0 06 01 10 */ stfs f0, 0x110(r6) +/* 80226DF8 00223D58 98 06 01 14 */ stb r0, 0x114(r6) +/* 80226DFC 00223D5C 48 14 2D DD */ bl __ct__9SAdsrDataFffffffbb +/* 80226E00 00223D60 C0 42 B4 C4 */ lfs f2, lbl_805AD1E4@sda21(r2) +/* 80226E04 00223D64 3C 60 80 57 */ lis r3, lbl_80572140@ha +/* 80226E08 00223D68 C0 21 01 74 */ lfs f1, 0x174(r1) +/* 80226E0C 00223D6C 38 C3 21 40 */ addi r6, r3, lbl_80572140@l +/* 80226E10 00223D70 C0 61 01 78 */ lfs f3, 0x178(r1) +/* 80226E14 00223D74 FC A0 10 90 */ fmr f5, f2 +/* 80226E18 00223D78 C0 81 01 7C */ lfs f4, 0x17c(r1) +/* 80226E1C 00223D7C FC C0 10 90 */ fmr f6, f2 +/* 80226E20 00223D80 C1 01 01 80 */ lfs f8, 0x180(r1) +/* 80226E24 00223D84 38 61 01 58 */ addi r3, r1, 0x158 +/* 80226E28 00223D88 C0 E1 01 84 */ lfs f7, 0x184(r1) +/* 80226E2C 00223D8C C0 01 01 88 */ lfs f0, 0x188(r1) +/* 80226E30 00223D90 38 80 00 00 */ li r4, 0 +/* 80226E34 00223D94 88 01 01 8C */ lbz r0, 0x18c(r1) +/* 80226E38 00223D98 38 A0 00 00 */ li r5, 0 +/* 80226E3C 00223D9C D0 26 01 18 */ stfs f1, 0x118(r6) +/* 80226E40 00223DA0 C0 22 B5 48 */ lfs f1, lbl_805AD268@sda21(r2) +/* 80226E44 00223DA4 D0 66 01 1C */ stfs f3, 0x11c(r6) +/* 80226E48 00223DA8 C0 62 B5 34 */ lfs f3, lbl_805AD254@sda21(r2) +/* 80226E4C 00223DAC D0 86 01 20 */ stfs f4, 0x120(r6) +/* 80226E50 00223DB0 C0 82 B5 4C */ lfs f4, lbl_805AD26C@sda21(r2) +/* 80226E54 00223DB4 D1 06 01 24 */ stfs f8, 0x124(r6) +/* 80226E58 00223DB8 D0 E6 01 28 */ stfs f7, 0x128(r6) +/* 80226E5C 00223DBC D0 06 01 2C */ stfs f0, 0x12c(r6) +/* 80226E60 00223DC0 98 06 01 30 */ stb r0, 0x130(r6) +/* 80226E64 00223DC4 48 14 2D 75 */ bl __ct__9SAdsrDataFffffffbb +/* 80226E68 00223DC8 C0 42 B4 C4 */ lfs f2, lbl_805AD1E4@sda21(r2) +/* 80226E6C 00223DCC 3C 60 80 57 */ lis r3, lbl_80572140@ha +/* 80226E70 00223DD0 C0 21 01 58 */ lfs f1, 0x158(r1) +/* 80226E74 00223DD4 38 C3 21 40 */ addi r6, r3, lbl_80572140@l +/* 80226E78 00223DD8 C0 81 01 5C */ lfs f4, 0x15c(r1) +/* 80226E7C 00223DDC FC 60 10 90 */ fmr f3, f2 +/* 80226E80 00223DE0 C0 C1 01 60 */ lfs f6, 0x160(r1) +/* 80226E84 00223DE4 FC A0 10 90 */ fmr f5, f2 +/* 80226E88 00223DE8 C1 01 01 64 */ lfs f8, 0x164(r1) +/* 80226E8C 00223DEC 38 61 01 3C */ addi r3, r1, 0x13c +/* 80226E90 00223DF0 C0 E1 01 68 */ lfs f7, 0x168(r1) +/* 80226E94 00223DF4 C0 01 01 6C */ lfs f0, 0x16c(r1) +/* 80226E98 00223DF8 38 80 00 00 */ li r4, 0 +/* 80226E9C 00223DFC 88 01 01 70 */ lbz r0, 0x170(r1) +/* 80226EA0 00223E00 38 A0 00 00 */ li r5, 0 +/* 80226EA4 00223E04 D0 26 01 34 */ stfs f1, 0x134(r6) +/* 80226EA8 00223E08 C0 22 B5 50 */ lfs f1, lbl_805AD270@sda21(r2) +/* 80226EAC 00223E0C D0 86 01 38 */ stfs f4, 0x138(r6) +/* 80226EB0 00223E10 C0 82 B5 54 */ lfs f4, lbl_805AD274@sda21(r2) +/* 80226EB4 00223E14 D0 C6 01 3C */ stfs f6, 0x13c(r6) +/* 80226EB8 00223E18 C0 C2 B5 58 */ lfs f6, lbl_805AD278@sda21(r2) +/* 80226EBC 00223E1C D1 06 01 40 */ stfs f8, 0x140(r6) +/* 80226EC0 00223E20 D0 E6 01 44 */ stfs f7, 0x144(r6) +/* 80226EC4 00223E24 D0 06 01 48 */ stfs f0, 0x148(r6) +/* 80226EC8 00223E28 98 06 01 4C */ stb r0, 0x14c(r6) +/* 80226ECC 00223E2C 48 14 2D 0D */ bl __ct__9SAdsrDataFffffffbb +/* 80226ED0 00223E30 3C 60 80 57 */ lis r3, lbl_80572140@ha +/* 80226ED4 00223E34 C0 21 01 3C */ lfs f1, 0x13c(r1) +/* 80226ED8 00223E38 38 C3 21 40 */ addi r6, r3, lbl_80572140@l +/* 80226EDC 00223E3C C0 41 01 40 */ lfs f2, 0x140(r1) +/* 80226EE0 00223E40 C0 61 01 44 */ lfs f3, 0x144(r1) +/* 80226EE4 00223E44 38 61 01 20 */ addi r3, r1, 0x120 +/* 80226EE8 00223E48 C0 81 01 48 */ lfs f4, 0x148(r1) +/* 80226EEC 00223E4C 38 80 00 00 */ li r4, 0 +/* 80226EF0 00223E50 C0 A1 01 4C */ lfs f5, 0x14c(r1) +/* 80226EF4 00223E54 38 A0 00 00 */ li r5, 0 +/* 80226EF8 00223E58 C0 01 01 50 */ lfs f0, 0x150(r1) +/* 80226EFC 00223E5C 88 01 01 54 */ lbz r0, 0x154(r1) +/* 80226F00 00223E60 D0 26 01 50 */ stfs f1, 0x150(r6) +/* 80226F04 00223E64 C0 22 B5 48 */ lfs f1, lbl_805AD268@sda21(r2) +/* 80226F08 00223E68 D0 46 01 54 */ stfs f2, 0x154(r6) +/* 80226F0C 00223E6C C0 42 B4 C4 */ lfs f2, lbl_805AD1E4@sda21(r2) +/* 80226F10 00223E70 D0 66 01 58 */ stfs f3, 0x158(r6) +/* 80226F14 00223E74 C0 62 B5 34 */ lfs f3, lbl_805AD254@sda21(r2) +/* 80226F18 00223E78 D0 86 01 5C */ stfs f4, 0x15c(r6) +/* 80226F1C 00223E7C C0 82 B4 CC */ lfs f4, lbl_805AD1EC@sda21(r2) +/* 80226F20 00223E80 D0 A6 01 60 */ stfs f5, 0x160(r6) +/* 80226F24 00223E84 C0 A2 B5 5C */ lfs f5, lbl_805AD27C@sda21(r2) +/* 80226F28 00223E88 D0 06 01 64 */ stfs f0, 0x164(r6) +/* 80226F2C 00223E8C C0 C2 B4 D4 */ lfs f6, lbl_805AD1F4@sda21(r2) +/* 80226F30 00223E90 98 06 01 68 */ stb r0, 0x168(r6) +/* 80226F34 00223E94 48 14 2C A5 */ bl __ct__9SAdsrDataFffffffbb +/* 80226F38 00223E98 3C 60 80 57 */ lis r3, lbl_80572140@ha +/* 80226F3C 00223E9C C0 21 01 20 */ lfs f1, 0x120(r1) +/* 80226F40 00223EA0 38 C3 21 40 */ addi r6, r3, lbl_80572140@l +/* 80226F44 00223EA4 C0 41 01 24 */ lfs f2, 0x124(r1) +/* 80226F48 00223EA8 C0 61 01 28 */ lfs f3, 0x128(r1) +/* 80226F4C 00223EAC 38 61 01 04 */ addi r3, r1, 0x104 +/* 80226F50 00223EB0 C0 81 01 2C */ lfs f4, 0x12c(r1) +/* 80226F54 00223EB4 38 80 00 00 */ li r4, 0 +/* 80226F58 00223EB8 C0 A1 01 30 */ lfs f5, 0x130(r1) +/* 80226F5C 00223EBC 38 A0 00 00 */ li r5, 0 +/* 80226F60 00223EC0 C0 01 01 34 */ lfs f0, 0x134(r1) +/* 80226F64 00223EC4 88 01 01 38 */ lbz r0, 0x138(r1) +/* 80226F68 00223EC8 D0 26 01 6C */ stfs f1, 0x16c(r6) +/* 80226F6C 00223ECC C0 22 B5 60 */ lfs f1, lbl_805AD280@sda21(r2) +/* 80226F70 00223ED0 D0 46 01 70 */ stfs f2, 0x170(r6) +/* 80226F74 00223ED4 C0 42 B4 C4 */ lfs f2, lbl_805AD1E4@sda21(r2) +/* 80226F78 00223ED8 D0 66 01 74 */ stfs f3, 0x174(r6) +/* 80226F7C 00223EDC C0 62 B4 D0 */ lfs f3, lbl_805AD1F0@sda21(r2) +/* 80226F80 00223EE0 D0 86 01 78 */ stfs f4, 0x178(r6) +/* 80226F84 00223EE4 C0 82 B4 CC */ lfs f4, lbl_805AD1EC@sda21(r2) +/* 80226F88 00223EE8 D0 A6 01 7C */ stfs f5, 0x17c(r6) +/* 80226F8C 00223EEC C0 A2 B5 64 */ lfs f5, lbl_805AD284@sda21(r2) +/* 80226F90 00223EF0 D0 06 01 80 */ stfs f0, 0x180(r6) +/* 80226F94 00223EF4 C0 C2 B5 10 */ lfs f6, lbl_805AD230@sda21(r2) +/* 80226F98 00223EF8 98 06 01 84 */ stb r0, 0x184(r6) +/* 80226F9C 00223EFC 48 14 2C 3D */ bl __ct__9SAdsrDataFffffffbb +/* 80226FA0 00223F00 3C 60 80 57 */ lis r3, lbl_80572140@ha +/* 80226FA4 00223F04 C0 21 01 04 */ lfs f1, 0x104(r1) +/* 80226FA8 00223F08 38 C3 21 40 */ addi r6, r3, lbl_80572140@l +/* 80226FAC 00223F0C C0 41 01 08 */ lfs f2, 0x108(r1) +/* 80226FB0 00223F10 C0 61 01 0C */ lfs f3, 0x10c(r1) +/* 80226FB4 00223F14 38 61 00 E8 */ addi r3, r1, 0xe8 +/* 80226FB8 00223F18 C0 81 01 10 */ lfs f4, 0x110(r1) +/* 80226FBC 00223F1C 38 80 00 00 */ li r4, 0 +/* 80226FC0 00223F20 C0 A1 01 14 */ lfs f5, 0x114(r1) +/* 80226FC4 00223F24 38 A0 00 00 */ li r5, 0 +/* 80226FC8 00223F28 C0 01 01 18 */ lfs f0, 0x118(r1) +/* 80226FCC 00223F2C 88 01 01 1C */ lbz r0, 0x11c(r1) +/* 80226FD0 00223F30 D0 26 01 88 */ stfs f1, 0x188(r6) +/* 80226FD4 00223F34 C0 22 B5 48 */ lfs f1, lbl_805AD268@sda21(r2) +/* 80226FD8 00223F38 D0 46 01 8C */ stfs f2, 0x18c(r6) +/* 80226FDC 00223F3C C0 42 B4 C4 */ lfs f2, lbl_805AD1E4@sda21(r2) +/* 80226FE0 00223F40 D0 66 01 90 */ stfs f3, 0x190(r6) +/* 80226FE4 00223F44 C0 62 B4 D0 */ lfs f3, lbl_805AD1F0@sda21(r2) +/* 80226FE8 00223F48 D0 86 01 94 */ stfs f4, 0x194(r6) +/* 80226FEC 00223F4C C0 82 B4 EC */ lfs f4, lbl_805AD20C@sda21(r2) +/* 80226FF0 00223F50 D0 A6 01 98 */ stfs f5, 0x198(r6) +/* 80226FF4 00223F54 C0 A2 B5 68 */ lfs f5, lbl_805AD288@sda21(r2) +/* 80226FF8 00223F58 D0 06 01 9C */ stfs f0, 0x19c(r6) +/* 80226FFC 00223F5C C0 C2 B4 C8 */ lfs f6, lbl_805AD1E8@sda21(r2) +/* 80227000 00223F60 98 06 01 A0 */ stb r0, 0x1a0(r6) +/* 80227004 00223F64 48 14 2B D5 */ bl __ct__9SAdsrDataFffffffbb +/* 80227008 00223F68 C0 42 B4 C4 */ lfs f2, lbl_805AD1E4@sda21(r2) +/* 8022700C 00223F6C 3C 60 80 57 */ lis r3, lbl_80572140@ha +/* 80227010 00223F70 C0 21 00 E8 */ lfs f1, 0xe8(r1) +/* 80227014 00223F74 38 C3 21 40 */ addi r6, r3, lbl_80572140@l +/* 80227018 00223F78 C0 61 00 EC */ lfs f3, 0xec(r1) +/* 8022701C 00223F7C FC C0 10 90 */ fmr f6, f2 +/* 80227020 00223F80 C0 81 00 F0 */ lfs f4, 0xf0(r1) +/* 80227024 00223F84 38 61 00 CC */ addi r3, r1, 0xcc +/* 80227028 00223F88 C0 A1 00 F4 */ lfs f5, 0xf4(r1) +/* 8022702C 00223F8C 38 80 00 00 */ li r4, 0 +/* 80227030 00223F90 C0 E1 00 F8 */ lfs f7, 0xf8(r1) +/* 80227034 00223F94 C0 01 00 FC */ lfs f0, 0xfc(r1) +/* 80227038 00223F98 38 A0 00 00 */ li r5, 0 +/* 8022703C 00223F9C 88 01 01 00 */ lbz r0, 0x100(r1) +/* 80227040 00223FA0 D0 26 01 A4 */ stfs f1, 0x1a4(r6) +/* 80227044 00223FA4 C0 22 B4 C0 */ lfs f1, lbl_805AD1E0@sda21(r2) +/* 80227048 00223FA8 D0 66 01 A8 */ stfs f3, 0x1a8(r6) +/* 8022704C 00223FAC C0 62 B5 24 */ lfs f3, lbl_805AD244@sda21(r2) +/* 80227050 00223FB0 D0 86 01 AC */ stfs f4, 0x1ac(r6) +/* 80227054 00223FB4 C0 82 B4 E0 */ lfs f4, lbl_805AD200@sda21(r2) +/* 80227058 00223FB8 D0 A6 01 B0 */ stfs f5, 0x1b0(r6) +/* 8022705C 00223FBC C0 A2 B4 F8 */ lfs f5, lbl_805AD218@sda21(r2) +/* 80227060 00223FC0 D0 E6 01 B4 */ stfs f7, 0x1b4(r6) +/* 80227064 00223FC4 D0 06 01 B8 */ stfs f0, 0x1b8(r6) +/* 80227068 00223FC8 98 06 01 BC */ stb r0, 0x1bc(r6) +/* 8022706C 00223FCC 48 14 2B 6D */ bl __ct__9SAdsrDataFffffffbb +/* 80227070 00223FD0 C0 42 B4 C4 */ lfs f2, lbl_805AD1E4@sda21(r2) +/* 80227074 00223FD4 3C 60 80 57 */ lis r3, lbl_80572140@ha +/* 80227078 00223FD8 C0 21 00 CC */ lfs f1, 0xcc(r1) +/* 8022707C 00223FDC 38 C3 21 40 */ addi r6, r3, lbl_80572140@l +/* 80227080 00223FE0 C0 61 00 D0 */ lfs f3, 0xd0(r1) +/* 80227084 00223FE4 FC A0 10 90 */ fmr f5, f2 +/* 80227088 00223FE8 C0 81 00 D4 */ lfs f4, 0xd4(r1) +/* 8022708C 00223FEC 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 80227090 00223FF0 C0 C1 00 D8 */ lfs f6, 0xd8(r1) +/* 80227094 00223FF4 38 80 00 00 */ li r4, 0 +/* 80227098 00223FF8 C0 E1 00 DC */ lfs f7, 0xdc(r1) +/* 8022709C 00223FFC C0 01 00 E0 */ lfs f0, 0xe0(r1) +/* 802270A0 00224000 38 A0 00 00 */ li r5, 0 +/* 802270A4 00224004 88 01 00 E4 */ lbz r0, 0xe4(r1) +/* 802270A8 00224008 D0 26 01 C0 */ stfs f1, 0x1c0(r6) +/* 802270AC 0022400C C0 22 B5 6C */ lfs f1, lbl_805AD28C@sda21(r2) +/* 802270B0 00224010 D0 66 01 C4 */ stfs f3, 0x1c4(r6) +/* 802270B4 00224014 C0 62 B4 D0 */ lfs f3, lbl_805AD1F0@sda21(r2) +/* 802270B8 00224018 D0 86 01 C8 */ stfs f4, 0x1c8(r6) +/* 802270BC 0022401C C0 82 B5 54 */ lfs f4, lbl_805AD274@sda21(r2) +/* 802270C0 00224020 D0 C6 01 CC */ stfs f6, 0x1cc(r6) +/* 802270C4 00224024 C0 C2 B5 58 */ lfs f6, lbl_805AD278@sda21(r2) +/* 802270C8 00224028 D0 E6 01 D0 */ stfs f7, 0x1d0(r6) +/* 802270CC 0022402C D0 06 01 D4 */ stfs f0, 0x1d4(r6) +/* 802270D0 00224030 98 06 01 D8 */ stb r0, 0x1d8(r6) +/* 802270D4 00224034 48 14 2B 05 */ bl __ct__9SAdsrDataFffffffbb +/* 802270D8 00224038 C0 62 B5 34 */ lfs f3, lbl_805AD254@sda21(r2) +/* 802270DC 0022403C 3C 60 80 57 */ lis r3, lbl_80572140@ha +/* 802270E0 00224040 C0 21 00 B0 */ lfs f1, 0xb0(r1) +/* 802270E4 00224044 38 C3 21 40 */ addi r6, r3, lbl_80572140@l +/* 802270E8 00224048 C0 41 00 B4 */ lfs f2, 0xb4(r1) +/* 802270EC 0022404C FC 80 18 90 */ fmr f4, f3 +/* 802270F0 00224050 C0 A1 00 B8 */ lfs f5, 0xb8(r1) +/* 802270F4 00224054 38 61 00 94 */ addi r3, r1, 0x94 +/* 802270F8 00224058 C0 C1 00 BC */ lfs f6, 0xbc(r1) +/* 802270FC 0022405C 38 80 00 00 */ li r4, 0 +/* 80227100 00224060 C0 E1 00 C0 */ lfs f7, 0xc0(r1) +/* 80227104 00224064 C0 01 00 C4 */ lfs f0, 0xc4(r1) +/* 80227108 00224068 38 A0 00 00 */ li r5, 0 +/* 8022710C 0022406C 88 01 00 C8 */ lbz r0, 0xc8(r1) +/* 80227110 00224070 D0 26 01 DC */ stfs f1, 0x1dc(r6) +/* 80227114 00224074 C0 22 B5 30 */ lfs f1, lbl_805AD250@sda21(r2) +/* 80227118 00224078 D0 46 01 E0 */ stfs f2, 0x1e0(r6) +/* 8022711C 0022407C C0 42 B4 C4 */ lfs f2, lbl_805AD1E4@sda21(r2) +/* 80227120 00224080 D0 A6 01 E4 */ stfs f5, 0x1e4(r6) +/* 80227124 00224084 C0 A2 B5 38 */ lfs f5, lbl_805AD258@sda21(r2) +/* 80227128 00224088 D0 C6 01 E8 */ stfs f6, 0x1e8(r6) +/* 8022712C 0022408C C0 C2 B4 D0 */ lfs f6, lbl_805AD1F0@sda21(r2) +/* 80227130 00224090 D0 E6 01 EC */ stfs f7, 0x1ec(r6) +/* 80227134 00224094 D0 06 01 F0 */ stfs f0, 0x1f0(r6) +/* 80227138 00224098 98 06 01 F4 */ stb r0, 0x1f4(r6) +/* 8022713C 0022409C 48 14 2A 9D */ bl __ct__9SAdsrDataFffffffbb +/* 80227140 002240A0 C0 42 B4 C4 */ lfs f2, lbl_805AD1E4@sda21(r2) +/* 80227144 002240A4 3C 60 80 57 */ lis r3, lbl_80572140@ha +/* 80227148 002240A8 C0 21 00 94 */ lfs f1, 0x94(r1) +/* 8022714C 002240AC 38 C3 21 40 */ addi r6, r3, lbl_80572140@l +/* 80227150 002240B0 C0 81 00 98 */ lfs f4, 0x98(r1) +/* 80227154 002240B4 FC 60 10 90 */ fmr f3, f2 +/* 80227158 002240B8 C0 A1 00 9C */ lfs f5, 0x9c(r1) +/* 8022715C 002240BC 38 61 00 78 */ addi r3, r1, 0x78 +/* 80227160 002240C0 C0 C1 00 A0 */ lfs f6, 0xa0(r1) +/* 80227164 002240C4 38 80 00 01 */ li r4, 1 +/* 80227168 002240C8 C0 E1 00 A4 */ lfs f7, 0xa4(r1) +/* 8022716C 002240CC C0 01 00 A8 */ lfs f0, 0xa8(r1) +/* 80227170 002240D0 38 A0 00 00 */ li r5, 0 +/* 80227174 002240D4 88 01 00 AC */ lbz r0, 0xac(r1) +/* 80227178 002240D8 D0 26 01 F8 */ stfs f1, 0x1f8(r6) +/* 8022717C 002240DC C0 22 B5 70 */ lfs f1, lbl_805AD290@sda21(r2) +/* 80227180 002240E0 D0 86 01 FC */ stfs f4, 0x1fc(r6) +/* 80227184 002240E4 C0 82 B4 CC */ lfs f4, lbl_805AD1EC@sda21(r2) +/* 80227188 002240E8 D0 A6 02 00 */ stfs f5, 0x200(r6) +/* 8022718C 002240EC C0 A2 B5 74 */ lfs f5, lbl_805AD294@sda21(r2) +/* 80227190 002240F0 D0 C6 02 04 */ stfs f6, 0x204(r6) +/* 80227194 002240F4 C0 C2 B4 D4 */ lfs f6, lbl_805AD1F4@sda21(r2) +/* 80227198 002240F8 D0 E6 02 08 */ stfs f7, 0x208(r6) +/* 8022719C 002240FC D0 06 02 0C */ stfs f0, 0x20c(r6) +/* 802271A0 00224100 98 06 02 10 */ stb r0, 0x210(r6) +/* 802271A4 00224104 48 14 2A 35 */ bl __ct__9SAdsrDataFffffffbb +/* 802271A8 00224108 C0 42 B4 C4 */ lfs f2, lbl_805AD1E4@sda21(r2) +/* 802271AC 0022410C 3C 60 80 57 */ lis r3, lbl_80572140@ha +/* 802271B0 00224110 C0 21 00 78 */ lfs f1, 0x78(r1) +/* 802271B4 00224114 38 C3 21 40 */ addi r6, r3, lbl_80572140@l +/* 802271B8 00224118 C0 61 00 7C */ lfs f3, 0x7c(r1) +/* 802271BC 0022411C FC A0 10 90 */ fmr f5, f2 +/* 802271C0 00224120 C0 81 00 80 */ lfs f4, 0x80(r1) +/* 802271C4 00224124 FC C0 10 90 */ fmr f6, f2 +/* 802271C8 00224128 C1 01 00 84 */ lfs f8, 0x84(r1) +/* 802271CC 0022412C 38 61 00 5C */ addi r3, r1, 0x5c +/* 802271D0 00224130 C0 E1 00 88 */ lfs f7, 0x88(r1) +/* 802271D4 00224134 C0 01 00 8C */ lfs f0, 0x8c(r1) +/* 802271D8 00224138 38 80 00 00 */ li r4, 0 +/* 802271DC 0022413C 88 01 00 90 */ lbz r0, 0x90(r1) +/* 802271E0 00224140 38 A0 00 00 */ li r5, 0 +/* 802271E4 00224144 D0 26 02 14 */ stfs f1, 0x214(r6) +/* 802271E8 00224148 C0 22 B5 0C */ lfs f1, lbl_805AD22C@sda21(r2) +/* 802271EC 0022414C D0 66 02 18 */ stfs f3, 0x218(r6) +/* 802271F0 00224150 C0 62 B5 34 */ lfs f3, lbl_805AD254@sda21(r2) +/* 802271F4 00224154 D0 86 02 1C */ stfs f4, 0x21c(r6) +/* 802271F8 00224158 C0 82 B5 78 */ lfs f4, lbl_805AD298@sda21(r2) +/* 802271FC 0022415C D1 06 02 20 */ stfs f8, 0x220(r6) +/* 80227200 00224160 D0 E6 02 24 */ stfs f7, 0x224(r6) +/* 80227204 00224164 D0 06 02 28 */ stfs f0, 0x228(r6) +/* 80227208 00224168 98 06 02 2C */ stb r0, 0x22c(r6) +/* 8022720C 0022416C 48 14 29 CD */ bl __ct__9SAdsrDataFffffffbb +/* 80227210 00224170 C0 42 B4 C4 */ lfs f2, lbl_805AD1E4@sda21(r2) +/* 80227214 00224174 3C 60 80 57 */ lis r3, lbl_80572140@ha +/* 80227218 00224178 C0 21 00 5C */ lfs f1, 0x5c(r1) +/* 8022721C 0022417C 38 C3 21 40 */ addi r6, r3, lbl_80572140@l +/* 80227220 00224180 C0 61 00 60 */ lfs f3, 0x60(r1) +/* 80227224 00224184 FC A0 10 90 */ fmr f5, f2 +/* 80227228 00224188 C0 81 00 64 */ lfs f4, 0x64(r1) +/* 8022722C 0022418C 38 61 00 40 */ addi r3, r1, 0x40 +/* 80227230 00224190 C0 C1 00 68 */ lfs f6, 0x68(r1) +/* 80227234 00224194 38 80 00 00 */ li r4, 0 +/* 80227238 00224198 C0 E1 00 6C */ lfs f7, 0x6c(r1) +/* 8022723C 0022419C C0 01 00 70 */ lfs f0, 0x70(r1) +/* 80227240 002241A0 38 A0 00 00 */ li r5, 0 +/* 80227244 002241A4 88 01 00 74 */ lbz r0, 0x74(r1) +/* 80227248 002241A8 D0 26 02 30 */ stfs f1, 0x230(r6) +/* 8022724C 002241AC C0 22 B5 7C */ lfs f1, lbl_805AD29C@sda21(r2) +/* 80227250 002241B0 D0 66 02 34 */ stfs f3, 0x234(r6) +/* 80227254 002241B4 C0 62 B5 80 */ lfs f3, lbl_805AD2A0@sda21(r2) +/* 80227258 002241B8 D0 86 02 38 */ stfs f4, 0x238(r6) +/* 8022725C 002241BC C0 82 B5 84 */ lfs f4, lbl_805AD2A4@sda21(r2) +/* 80227260 002241C0 D0 C6 02 3C */ stfs f6, 0x23c(r6) +/* 80227264 002241C4 C0 C2 B5 88 */ lfs f6, lbl_805AD2A8@sda21(r2) +/* 80227268 002241C8 D0 E6 02 40 */ stfs f7, 0x240(r6) +/* 8022726C 002241CC D0 06 02 44 */ stfs f0, 0x244(r6) +/* 80227270 002241D0 98 06 02 48 */ stb r0, 0x248(r6) +/* 80227274 002241D4 48 14 29 65 */ bl __ct__9SAdsrDataFffffffbb +/* 80227278 002241D8 C0 42 B4 C4 */ lfs f2, lbl_805AD1E4@sda21(r2) +/* 8022727C 002241DC 3C 60 80 57 */ lis r3, lbl_80572140@ha +/* 80227280 002241E0 C0 21 00 40 */ lfs f1, 0x40(r1) +/* 80227284 002241E4 38 C3 21 40 */ addi r6, r3, lbl_80572140@l +/* 80227288 002241E8 C0 81 00 44 */ lfs f4, 0x44(r1) +/* 8022728C 002241EC FC 60 10 90 */ fmr f3, f2 +/* 80227290 002241F0 C1 21 00 48 */ lfs f9, 0x48(r1) +/* 80227294 002241F4 FC A0 10 90 */ fmr f5, f2 +/* 80227298 002241F8 C1 01 00 4C */ lfs f8, 0x4c(r1) +/* 8022729C 002241FC FC C0 10 90 */ fmr f6, f2 +/* 802272A0 00224200 C0 E1 00 50 */ lfs f7, 0x50(r1) +/* 802272A4 00224204 C0 01 00 54 */ lfs f0, 0x54(r1) +/* 802272A8 00224208 38 61 00 24 */ addi r3, r1, 0x24 +/* 802272AC 0022420C 88 01 00 58 */ lbz r0, 0x58(r1) +/* 802272B0 00224210 38 80 00 00 */ li r4, 0 +/* 802272B4 00224214 D0 26 02 4C */ stfs f1, 0x24c(r6) +/* 802272B8 00224218 38 A0 00 00 */ li r5, 0 +/* 802272BC 0022421C C0 22 B5 8C */ lfs f1, lbl_805AD2AC@sda21(r2) +/* 802272C0 00224220 D0 86 02 50 */ stfs f4, 0x250(r6) +/* 802272C4 00224224 C0 82 B5 90 */ lfs f4, lbl_805AD2B0@sda21(r2) +/* 802272C8 00224228 D1 26 02 54 */ stfs f9, 0x254(r6) +/* 802272CC 0022422C D1 06 02 58 */ stfs f8, 0x258(r6) +/* 802272D0 00224230 D0 E6 02 5C */ stfs f7, 0x25c(r6) +/* 802272D4 00224234 D0 06 02 60 */ stfs f0, 0x260(r6) +/* 802272D8 00224238 98 06 02 64 */ stb r0, 0x264(r6) +/* 802272DC 0022423C 48 14 28 FD */ bl __ct__9SAdsrDataFffffffbb +/* 802272E0 00224240 C0 62 B4 D4 */ lfs f3, lbl_805AD1F4@sda21(r2) +/* 802272E4 00224244 3C 60 80 57 */ lis r3, lbl_80572140@ha +/* 802272E8 00224248 C0 21 00 24 */ lfs f1, 0x24(r1) +/* 802272EC 0022424C 38 C3 21 40 */ addi r6, r3, lbl_80572140@l +/* 802272F0 00224250 C0 41 00 28 */ lfs f2, 0x28(r1) +/* 802272F4 00224254 FC C0 18 90 */ fmr f6, f3 +/* 802272F8 00224258 C0 81 00 2C */ lfs f4, 0x2c(r1) +/* 802272FC 0022425C 38 61 00 08 */ addi r3, r1, 8 +/* 80227300 00224260 C0 A1 00 30 */ lfs f5, 0x30(r1) +/* 80227304 00224264 38 80 00 00 */ li r4, 0 +/* 80227308 00224268 C0 E1 00 34 */ lfs f7, 0x34(r1) +/* 8022730C 0022426C C0 01 00 38 */ lfs f0, 0x38(r1) +/* 80227310 00224270 38 A0 00 00 */ li r5, 0 +/* 80227314 00224274 88 01 00 3C */ lbz r0, 0x3c(r1) +/* 80227318 00224278 D0 26 02 68 */ stfs f1, 0x268(r6) +/* 8022731C 0022427C C0 22 B5 94 */ lfs f1, lbl_805AD2B4@sda21(r2) +/* 80227320 00224280 D0 46 02 6C */ stfs f2, 0x26c(r6) +/* 80227324 00224284 C0 42 B4 C4 */ lfs f2, lbl_805AD1E4@sda21(r2) +/* 80227328 00224288 D0 86 02 70 */ stfs f4, 0x270(r6) +/* 8022732C 0022428C C0 82 B5 98 */ lfs f4, lbl_805AD2B8@sda21(r2) +/* 80227330 00224290 D0 A6 02 74 */ stfs f5, 0x274(r6) +/* 80227334 00224294 C0 A2 B5 64 */ lfs f5, lbl_805AD284@sda21(r2) +/* 80227338 00224298 D0 E6 02 78 */ stfs f7, 0x278(r6) +/* 8022733C 0022429C D0 06 02 7C */ stfs f0, 0x27c(r6) +/* 80227340 002242A0 98 06 02 80 */ stb r0, 0x280(r6) +/* 80227344 002242A4 48 14 28 95 */ bl __ct__9SAdsrDataFffffffbb +/* 80227348 002242A8 3C 60 80 57 */ lis r3, lbl_80572140@ha +/* 8022734C 002242AC C0 A1 00 08 */ lfs f5, 8(r1) +/* 80227350 002242B0 38 63 21 40 */ addi r3, r3, lbl_80572140@l +/* 80227354 002242B4 C0 81 00 0C */ lfs f4, 0xc(r1) +/* 80227358 002242B8 C0 61 00 10 */ lfs f3, 0x10(r1) +/* 8022735C 002242BC C0 41 00 14 */ lfs f2, 0x14(r1) +/* 80227360 002242C0 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 80227364 002242C4 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 80227368 002242C8 88 01 00 20 */ lbz r0, 0x20(r1) +/* 8022736C 002242CC D0 A3 02 84 */ stfs f5, 0x284(r3) +/* 80227370 002242D0 D0 83 02 88 */ stfs f4, 0x288(r3) +/* 80227374 002242D4 D0 63 02 8C */ stfs f3, 0x28c(r3) +/* 80227378 002242D8 D0 43 02 90 */ stfs f2, 0x290(r3) +/* 8022737C 002242DC D0 23 02 94 */ stfs f1, 0x294(r3) +/* 80227380 002242E0 D0 03 02 98 */ stfs f0, 0x298(r3) +/* 80227384 002242E4 98 03 02 9C */ stb r0, 0x29c(r3) +/* 80227388 002242E8 80 01 02 B4 */ lwz r0, 0x2b4(r1) +/* 8022738C 002242EC 7C 08 03 A6 */ mtlr r0 +/* 80227390 002242F0 38 21 02 B0 */ addi r1, r1, 0x2b0 +/* 80227394 002242F4 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/ScriptObjects/CFishCloud.s b/asm/Kyoto_CWD/ScriptObjects/CFishCloud.s new file mode 100644 index 00000000..ecace323 --- /dev/null +++ b/asm/Kyoto_CWD/ScriptObjects/CFishCloud.s @@ -0,0 +1,6077 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__10CFishCloudFv +__dt__10CFishCloudFv: +/* 801CE1B4 001CB114 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801CE1B8 001CB118 7C 08 02 A6 */ mflr r0 +/* 801CE1BC 001CB11C 90 01 00 54 */ stw r0, 0x54(r1) +/* 801CE1C0 001CB120 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801CE1C4 001CB124 7C 9F 23 78 */ mr r31, r4 +/* 801CE1C8 001CB128 93 C1 00 48 */ stw r30, 0x48(r1) +/* 801CE1CC 001CB12C 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801CE1D0 001CB130 93 A1 00 44 */ stw r29, 0x44(r1) +/* 801CE1D4 001CB134 93 81 00 40 */ stw r28, 0x40(r1) +/* 801CE1D8 001CB138 41 82 02 F8 */ beq lbl_801CE4D0 +/* 801CE1DC 001CB13C 3C 60 80 3E */ lis r3, lbl_803E5758@ha +/* 801CE1E0 001CB140 34 1E 02 1C */ addic. r0, r30, 0x21c +/* 801CE1E4 001CB144 38 03 57 58 */ addi r0, r3, lbl_803E5758@l +/* 801CE1E8 001CB148 90 1E 00 00 */ stw r0, 0(r30) +/* 801CE1EC 001CB14C 41 82 00 58 */ beq lbl_801CE244 +/* 801CE1F0 001CB150 80 BE 02 1C */ lwz r5, 0x21c(r30) +/* 801CE1F4 001CB154 38 60 00 00 */ li r3, 0 +/* 801CE1F8 001CB158 2C 05 00 00 */ cmpwi r5, 0 +/* 801CE1FC 001CB15C 40 81 00 40 */ ble lbl_801CE23C +/* 801CE200 001CB160 2C 05 00 08 */ cmpwi r5, 8 +/* 801CE204 001CB164 38 85 FF F8 */ addi r4, r5, -8 +/* 801CE208 001CB168 40 81 00 20 */ ble lbl_801CE228 +/* 801CE20C 001CB16C 38 04 00 07 */ addi r0, r4, 7 +/* 801CE210 001CB170 54 00 E8 FE */ srwi r0, r0, 3 +/* 801CE214 001CB174 7C 09 03 A6 */ mtctr r0 +/* 801CE218 001CB178 2C 04 00 00 */ cmpwi r4, 0 +/* 801CE21C 001CB17C 40 81 00 0C */ ble lbl_801CE228 +lbl_801CE220: +/* 801CE220 001CB180 38 63 00 08 */ addi r3, r3, 8 +/* 801CE224 001CB184 42 00 FF FC */ bdnz lbl_801CE220 +lbl_801CE228: +/* 801CE228 001CB188 7C 03 28 50 */ subf r0, r3, r5 +/* 801CE22C 001CB18C 7C 09 03 A6 */ mtctr r0 +/* 801CE230 001CB190 7C 03 28 00 */ cmpw r3, r5 +/* 801CE234 001CB194 40 80 00 08 */ bge lbl_801CE23C +lbl_801CE238: +/* 801CE238 001CB198 42 00 00 00 */ bdnz lbl_801CE238 +lbl_801CE23C: +/* 801CE23C 001CB19C 38 00 00 00 */ li r0, 0 +/* 801CE240 001CB1A0 90 1E 02 1C */ stw r0, 0x21c(r30) +lbl_801CE244: +/* 801CE244 001CB1A4 34 1E 01 F8 */ addic. r0, r30, 0x1f8 +/* 801CE248 001CB1A8 41 82 00 60 */ beq lbl_801CE2A8 +/* 801CE24C 001CB1AC 3B 9E 01 FC */ addi r28, r30, 0x1fc +/* 801CE250 001CB1B0 3B A0 00 00 */ li r29, 0 +/* 801CE254 001CB1B4 48 00 00 40 */ b lbl_801CE294 +lbl_801CE258: +/* 801CE258 001CB1B8 28 1C 00 00 */ cmplwi r28, 0 +/* 801CE25C 001CB1BC 41 82 00 30 */ beq lbl_801CE28C +/* 801CE260 001CB1C0 88 1C 00 00 */ lbz r0, 0(r28) +/* 801CE264 001CB1C4 28 00 00 00 */ cmplwi r0, 0 +/* 801CE268 001CB1C8 41 82 00 24 */ beq lbl_801CE28C +/* 801CE26C 001CB1CC 80 7C 00 04 */ lwz r3, 4(r28) +/* 801CE270 001CB1D0 28 03 00 00 */ cmplwi r3, 0 +/* 801CE274 001CB1D4 41 82 00 18 */ beq lbl_801CE28C +/* 801CE278 001CB1D8 81 83 00 00 */ lwz r12, 0(r3) +/* 801CE27C 001CB1DC 38 80 00 01 */ li r4, 1 +/* 801CE280 001CB1E0 81 8C 00 08 */ lwz r12, 8(r12) +/* 801CE284 001CB1E4 7D 89 03 A6 */ mtctr r12 +/* 801CE288 001CB1E8 4E 80 04 21 */ bctrl +lbl_801CE28C: +/* 801CE28C 001CB1EC 3B 9C 00 08 */ addi r28, r28, 8 +/* 801CE290 001CB1F0 3B BD 00 01 */ addi r29, r29, 1 +lbl_801CE294: +/* 801CE294 001CB1F4 80 1E 01 F8 */ lwz r0, 0x1f8(r30) +/* 801CE298 001CB1F8 7C 1D 00 00 */ cmpw r29, r0 +/* 801CE29C 001CB1FC 41 80 FF BC */ blt lbl_801CE258 +/* 801CE2A0 001CB200 38 00 00 00 */ li r0, 0 +/* 801CE2A4 001CB204 90 1E 01 F8 */ stw r0, 0x1f8(r30) +lbl_801CE2A8: +/* 801CE2A8 001CB208 34 1E 01 C4 */ addic. r0, r30, 0x1c4 +/* 801CE2AC 001CB20C 41 82 00 44 */ beq lbl_801CE2F0 +/* 801CE2B0 001CB210 3B 9E 01 C8 */ addi r28, r30, 0x1c8 +/* 801CE2B4 001CB214 3B A0 00 00 */ li r29, 0 +/* 801CE2B8 001CB218 48 00 00 24 */ b lbl_801CE2DC +lbl_801CE2BC: +/* 801CE2BC 001CB21C 28 1C 00 00 */ cmplwi r28, 0 +/* 801CE2C0 001CB220 41 82 00 14 */ beq lbl_801CE2D4 +/* 801CE2C4 001CB224 41 82 00 10 */ beq lbl_801CE2D4 +/* 801CE2C8 001CB228 7F 83 E3 78 */ mr r3, r28 +/* 801CE2CC 001CB22C 38 80 00 00 */ li r4, 0 +/* 801CE2D0 001CB230 48 17 2B 71 */ bl __dt__6CTokenFv +lbl_801CE2D4: +/* 801CE2D4 001CB234 3B 9C 00 0C */ addi r28, r28, 0xc +/* 801CE2D8 001CB238 3B BD 00 01 */ addi r29, r29, 1 +lbl_801CE2DC: +/* 801CE2DC 001CB23C 80 1E 01 C4 */ lwz r0, 0x1c4(r30) +/* 801CE2E0 001CB240 7C 1D 00 00 */ cmpw r29, r0 +/* 801CE2E4 001CB244 41 80 FF D8 */ blt lbl_801CE2BC +/* 801CE2E8 001CB248 38 00 00 00 */ li r0, 0 +/* 801CE2EC 001CB24C 90 1E 01 C4 */ stw r0, 0x1c4(r30) +lbl_801CE2F0: +/* 801CE2F0 001CB250 34 1E 01 B0 */ addic. r0, r30, 0x1b0 +/* 801CE2F4 001CB254 41 82 00 40 */ beq lbl_801CE334 +/* 801CE2F8 001CB258 3B 9E 01 B4 */ addi r28, r30, 0x1b4 +/* 801CE2FC 001CB25C 3B A0 00 00 */ li r29, 0 +/* 801CE300 001CB260 48 00 00 20 */ b lbl_801CE320 +lbl_801CE304: +/* 801CE304 001CB264 28 1C 00 00 */ cmplwi r28, 0 +/* 801CE308 001CB268 41 82 00 10 */ beq lbl_801CE318 +/* 801CE30C 001CB26C 41 82 00 0C */ beq lbl_801CE318 +/* 801CE310 001CB270 7F 83 E3 78 */ mr r3, r28 +/* 801CE314 001CB274 48 00 50 4D */ bl sub_801d3360 +lbl_801CE318: +/* 801CE318 001CB278 3B 9C 00 04 */ addi r28, r28, 4 +/* 801CE31C 001CB27C 3B BD 00 01 */ addi r29, r29, 1 +lbl_801CE320: +/* 801CE320 001CB280 80 1E 01 B0 */ lwz r0, 0x1b0(r30) +/* 801CE324 001CB284 7C 1D 00 00 */ cmpw r29, r0 +/* 801CE328 001CB288 41 80 FF DC */ blt lbl_801CE304 +/* 801CE32C 001CB28C 38 00 00 00 */ li r0, 0 +/* 801CE330 001CB290 90 1E 01 B0 */ stw r0, 0x1b0(r30) +lbl_801CE334: +/* 801CE334 001CB294 34 1E 01 9C */ addic. r0, r30, 0x19c +/* 801CE338 001CB298 41 82 00 58 */ beq lbl_801CE390 +/* 801CE33C 001CB29C 80 BE 01 9C */ lwz r5, 0x19c(r30) +/* 801CE340 001CB2A0 38 60 00 00 */ li r3, 0 +/* 801CE344 001CB2A4 2C 05 00 00 */ cmpwi r5, 0 +/* 801CE348 001CB2A8 40 81 00 40 */ ble lbl_801CE388 +/* 801CE34C 001CB2AC 2C 05 00 08 */ cmpwi r5, 8 +/* 801CE350 001CB2B0 38 85 FF F8 */ addi r4, r5, -8 +/* 801CE354 001CB2B4 40 81 00 20 */ ble lbl_801CE374 +/* 801CE358 001CB2B8 38 04 00 07 */ addi r0, r4, 7 +/* 801CE35C 001CB2BC 54 00 E8 FE */ srwi r0, r0, 3 +/* 801CE360 001CB2C0 7C 09 03 A6 */ mtctr r0 +/* 801CE364 001CB2C4 2C 04 00 00 */ cmpwi r4, 0 +/* 801CE368 001CB2C8 40 81 00 0C */ ble lbl_801CE374 +lbl_801CE36C: +/* 801CE36C 001CB2CC 38 63 00 08 */ addi r3, r3, 8 +/* 801CE370 001CB2D0 42 00 FF FC */ bdnz lbl_801CE36C +lbl_801CE374: +/* 801CE374 001CB2D4 7C 03 28 50 */ subf r0, r3, r5 +/* 801CE378 001CB2D8 7C 09 03 A6 */ mtctr r0 +/* 801CE37C 001CB2DC 7C 03 28 00 */ cmpw r3, r5 +/* 801CE380 001CB2E0 40 80 00 08 */ bge lbl_801CE388 +lbl_801CE384: +/* 801CE384 001CB2E4 42 00 00 00 */ bdnz lbl_801CE384 +lbl_801CE388: +/* 801CE388 001CB2E8 38 00 00 00 */ li r0, 0 +/* 801CE38C 001CB2EC 90 1E 01 9C */ stw r0, 0x19c(r30) +lbl_801CE390: +/* 801CE390 001CB2F0 34 1E 01 78 */ addic. r0, r30, 0x178 +/* 801CE394 001CB2F4 41 82 00 48 */ beq lbl_801CE3DC +/* 801CE398 001CB2F8 3B 9E 01 7C */ addi r28, r30, 0x17c +/* 801CE39C 001CB2FC 3B A0 00 00 */ li r29, 0 +/* 801CE3A0 001CB300 48 00 00 28 */ b lbl_801CE3C8 +lbl_801CE3A4: +/* 801CE3A4 001CB304 28 1C 00 00 */ cmplwi r28, 0 +/* 801CE3A8 001CB308 41 82 00 18 */ beq lbl_801CE3C0 +/* 801CE3AC 001CB30C 88 1C 00 00 */ lbz r0, 0(r28) +/* 801CE3B0 001CB310 28 00 00 00 */ cmplwi r0, 0 +/* 801CE3B4 001CB314 41 82 00 0C */ beq lbl_801CE3C0 +/* 801CE3B8 001CB318 80 7C 00 04 */ lwz r3, 4(r28) +/* 801CE3BC 001CB31C 48 14 75 75 */ bl Free__7CMemoryFPCv +lbl_801CE3C0: +/* 801CE3C0 001CB320 3B 9C 00 08 */ addi r28, r28, 8 +/* 801CE3C4 001CB324 3B BD 00 01 */ addi r29, r29, 1 +lbl_801CE3C8: +/* 801CE3C8 001CB328 80 1E 01 78 */ lwz r0, 0x178(r30) +/* 801CE3CC 001CB32C 7C 1D 00 00 */ cmpw r29, r0 +/* 801CE3D0 001CB330 41 80 FF D4 */ blt lbl_801CE3A4 +/* 801CE3D4 001CB334 38 00 00 00 */ li r0, 0 +/* 801CE3D8 001CB338 90 1E 01 78 */ stw r0, 0x178(r30) +lbl_801CE3DC: +/* 801CE3DC 001CB33C 34 1E 01 08 */ addic. r0, r30, 0x108 +/* 801CE3E0 001CB340 41 82 00 44 */ beq lbl_801CE424 +/* 801CE3E4 001CB344 80 1E 01 0C */ lwz r0, 0x10c(r30) +/* 801CE3E8 001CB348 80 7E 01 14 */ lwz r3, 0x114(r30) +/* 801CE3EC 001CB34C 54 00 20 36 */ slwi r0, r0, 4 +/* 801CE3F0 001CB350 7C 03 02 14 */ add r0, r3, r0 +/* 801CE3F4 001CB354 90 61 00 2C */ stw r3, 0x2c(r1) +/* 801CE3F8 001CB358 7C 64 1B 78 */ mr r4, r3 +/* 801CE3FC 001CB35C 90 01 00 34 */ stw r0, 0x34(r1) +/* 801CE400 001CB360 90 01 00 30 */ stw r0, 0x30(r1) +/* 801CE404 001CB364 90 61 00 28 */ stw r3, 0x28(r1) +/* 801CE408 001CB368 48 00 00 08 */ b lbl_801CE410 +lbl_801CE40C: +/* 801CE40C 001CB36C 38 84 00 10 */ addi r4, r4, 0x10 +lbl_801CE410: +/* 801CE410 001CB370 7C 04 00 40 */ cmplw r4, r0 +/* 801CE414 001CB374 40 82 FF F8 */ bne lbl_801CE40C +/* 801CE418 001CB378 28 03 00 00 */ cmplwi r3, 0 +/* 801CE41C 001CB37C 41 82 00 08 */ beq lbl_801CE424 +/* 801CE420 001CB380 48 14 75 11 */ bl Free__7CMemoryFPCv +lbl_801CE424: +/* 801CE424 001CB384 34 1E 00 F8 */ addic. r0, r30, 0xf8 +/* 801CE428 001CB388 41 82 00 44 */ beq lbl_801CE46C +/* 801CE42C 001CB38C 80 1E 00 FC */ lwz r0, 0xfc(r30) +/* 801CE430 001CB390 80 7E 01 04 */ lwz r3, 0x104(r30) +/* 801CE434 001CB394 54 00 10 3A */ slwi r0, r0, 2 +/* 801CE438 001CB398 7C 03 02 14 */ add r0, r3, r0 +/* 801CE43C 001CB39C 90 61 00 1C */ stw r3, 0x1c(r1) +/* 801CE440 001CB3A0 7C 64 1B 78 */ mr r4, r3 +/* 801CE444 001CB3A4 90 01 00 24 */ stw r0, 0x24(r1) +/* 801CE448 001CB3A8 90 01 00 20 */ stw r0, 0x20(r1) +/* 801CE44C 001CB3AC 90 61 00 18 */ stw r3, 0x18(r1) +/* 801CE450 001CB3B0 48 00 00 08 */ b lbl_801CE458 +lbl_801CE454: +/* 801CE454 001CB3B4 38 84 00 04 */ addi r4, r4, 4 +lbl_801CE458: +/* 801CE458 001CB3B8 7C 04 00 40 */ cmplw r4, r0 +/* 801CE45C 001CB3BC 40 82 FF F8 */ bne lbl_801CE454 +/* 801CE460 001CB3C0 28 03 00 00 */ cmplwi r3, 0 +/* 801CE464 001CB3C4 41 82 00 08 */ beq lbl_801CE46C +/* 801CE468 001CB3C8 48 14 74 C9 */ bl Free__7CMemoryFPCv +lbl_801CE46C: +/* 801CE46C 001CB3CC 34 1E 00 E8 */ addic. r0, r30, 0xe8 +/* 801CE470 001CB3D0 41 82 00 44 */ beq lbl_801CE4B4 +/* 801CE474 001CB3D4 80 1E 00 EC */ lwz r0, 0xec(r30) +/* 801CE478 001CB3D8 80 7E 00 F4 */ lwz r3, 0xf4(r30) +/* 801CE47C 001CB3DC 1C 00 00 24 */ mulli r0, r0, 0x24 +/* 801CE480 001CB3E0 90 61 00 0C */ stw r3, 0xc(r1) +/* 801CE484 001CB3E4 7C 64 1B 78 */ mr r4, r3 +/* 801CE488 001CB3E8 7C 03 02 14 */ add r0, r3, r0 +/* 801CE48C 001CB3EC 90 61 00 08 */ stw r3, 8(r1) +/* 801CE490 001CB3F0 90 01 00 14 */ stw r0, 0x14(r1) +/* 801CE494 001CB3F4 90 01 00 10 */ stw r0, 0x10(r1) +/* 801CE498 001CB3F8 48 00 00 08 */ b lbl_801CE4A0 +lbl_801CE49C: +/* 801CE49C 001CB3FC 38 84 00 24 */ addi r4, r4, 0x24 +lbl_801CE4A0: +/* 801CE4A0 001CB400 7C 04 00 40 */ cmplw r4, r0 +/* 801CE4A4 001CB404 40 82 FF F8 */ bne lbl_801CE49C +/* 801CE4A8 001CB408 28 03 00 00 */ cmplwi r3, 0 +/* 801CE4AC 001CB40C 41 82 00 08 */ beq lbl_801CE4B4 +/* 801CE4B0 001CB410 48 14 74 81 */ bl Free__7CMemoryFPCv +lbl_801CE4B4: +/* 801CE4B4 001CB414 7F C3 F3 78 */ mr r3, r30 +/* 801CE4B8 001CB418 38 80 00 00 */ li r4, 0 +/* 801CE4BC 001CB41C 4B E8 72 35 */ bl __dt__6CActorFv +/* 801CE4C0 001CB420 7F E0 07 35 */ extsh. r0, r31 +/* 801CE4C4 001CB424 40 81 00 0C */ ble lbl_801CE4D0 +/* 801CE4C8 001CB428 7F C3 F3 78 */ mr r3, r30 +/* 801CE4CC 001CB42C 48 14 74 65 */ bl Free__7CMemoryFPCv +lbl_801CE4D0: +/* 801CE4D0 001CB430 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801CE4D4 001CB434 7F C3 F3 78 */ mr r3, r30 +/* 801CE4D8 001CB438 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801CE4DC 001CB43C 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 801CE4E0 001CB440 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 801CE4E4 001CB444 83 81 00 40 */ lwz r28, 0x40(r1) +/* 801CE4E8 001CB448 7C 08 03 A6 */ mtlr r0 +/* 801CE4EC 001CB44C 38 21 00 50 */ addi r1, r1, 0x50 +/* 801CE4F0 001CB450 4E 80 00 20 */ blr + +.global sub_801ce4f4 +sub_801ce4f4: +/* 801CE4F4 001CB454 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801CE4F8 001CB458 7C 08 02 A6 */ mflr r0 +/* 801CE4FC 001CB45C 90 01 00 24 */ stw r0, 0x24(r1) +/* 801CE500 001CB460 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801CE504 001CB464 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801CE508 001CB468 3B C0 00 00 */ li r30, 0 +/* 801CE50C 001CB46C 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801CE510 001CB470 7C 7D 1B 78 */ mr r29, r3 +/* 801CE514 001CB474 3B FD 01 FC */ addi r31, r29, 0x1fc +/* 801CE518 001CB478 48 00 00 24 */ b lbl_801CE53C +lbl_801CE51C: +/* 801CE51C 001CB47C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801CE520 001CB480 80 9F 00 04 */ lwz r4, 4(r31) +/* 801CE524 001CB484 81 83 00 00 */ lwz r12, 0(r3) +/* 801CE528 001CB488 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801CE52C 001CB48C 7D 89 03 A6 */ mtctr r12 +/* 801CE530 001CB490 4E 80 04 21 */ bctrl +/* 801CE534 001CB494 3B FF 00 08 */ addi r31, r31, 8 +/* 801CE538 001CB498 3B DE 00 01 */ addi r30, r30, 1 +lbl_801CE53C: +/* 801CE53C 001CB49C 80 1D 01 F8 */ lwz r0, 0x1f8(r29) +/* 801CE540 001CB4A0 7C 1E 00 00 */ cmpw r30, r0 +/* 801CE544 001CB4A4 41 80 FF D8 */ blt lbl_801CE51C +/* 801CE548 001CB4A8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801CE54C 001CB4AC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801CE550 001CB4B0 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801CE554 001CB4B4 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801CE558 001CB4B8 7C 08 03 A6 */ mtlr r0 +/* 801CE55C 001CB4BC 38 21 00 20 */ addi r1, r1, 0x20 +/* 801CE560 001CB4C0 4E 80 00 20 */ blr + +.global sub_801ce564 +sub_801ce564: +/* 801CE564 001CB4C4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801CE568 001CB4C8 7C 08 02 A6 */ mflr r0 +/* 801CE56C 001CB4CC 90 01 00 24 */ stw r0, 0x24(r1) +/* 801CE570 001CB4D0 DB E1 00 18 */ stfd f31, 0x18(r1) +/* 801CE574 001CB4D4 FF E0 08 90 */ fmr f31, f1 +/* 801CE578 001CB4D8 93 E1 00 14 */ stw r31, 0x14(r1) +/* 801CE57C 001CB4DC 93 C1 00 10 */ stw r30, 0x10(r1) +/* 801CE580 001CB4E0 3B C0 00 00 */ li r30, 0 +/* 801CE584 001CB4E4 93 A1 00 0C */ stw r29, 0xc(r1) +/* 801CE588 001CB4E8 7C 7D 1B 78 */ mr r29, r3 +/* 801CE58C 001CB4EC 3B FD 01 FC */ addi r31, r29, 0x1fc +/* 801CE590 001CB4F0 48 00 00 24 */ b lbl_801CE5B4 +lbl_801CE594: +/* 801CE594 001CB4F4 80 7F 00 04 */ lwz r3, 4(r31) +/* 801CE598 001CB4F8 FC 20 F8 90 */ fmr f1, f31 +/* 801CE59C 001CB4FC 81 83 00 00 */ lwz r12, 0(r3) +/* 801CE5A0 001CB500 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801CE5A4 001CB504 7D 89 03 A6 */ mtctr r12 +/* 801CE5A8 001CB508 4E 80 04 21 */ bctrl +/* 801CE5AC 001CB50C 3B FF 00 08 */ addi r31, r31, 8 +/* 801CE5B0 001CB510 3B DE 00 01 */ addi r30, r30, 1 +lbl_801CE5B4: +/* 801CE5B4 001CB514 80 1D 01 F8 */ lwz r0, 0x1f8(r29) +/* 801CE5B8 001CB518 7C 1E 00 00 */ cmpw r30, r0 +/* 801CE5BC 001CB51C 41 80 FF D8 */ blt lbl_801CE594 +/* 801CE5C0 001CB520 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801CE5C4 001CB524 CB E1 00 18 */ lfd f31, 0x18(r1) +/* 801CE5C8 001CB528 83 E1 00 14 */ lwz r31, 0x14(r1) +/* 801CE5CC 001CB52C 83 C1 00 10 */ lwz r30, 0x10(r1) +/* 801CE5D0 001CB530 83 A1 00 0C */ lwz r29, 0xc(r1) +/* 801CE5D4 001CB534 7C 08 03 A6 */ mtlr r0 +/* 801CE5D8 001CB538 38 21 00 20 */ addi r1, r1, 0x20 +/* 801CE5DC 001CB53C 4E 80 00 20 */ blr + +.global sub_801ce5e0 +sub_801ce5e0: +/* 801CE5E0 001CB540 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801CE5E4 001CB544 7C 08 02 A6 */ mflr r0 +/* 801CE5E8 001CB548 90 01 00 24 */ stw r0, 0x24(r1) +/* 801CE5EC 001CB54C BF 61 00 0C */ stmw r27, 0xc(r1) +/* 801CE5F0 001CB550 7C 7B 1B 78 */ mr r27, r3 +/* 801CE5F4 001CB554 7C 9C 23 78 */ mr r28, r4 +/* 801CE5F8 001CB558 3B A0 00 00 */ li r29, 0 +/* 801CE5FC 001CB55C 3B FB 01 FC */ addi r31, r27, 0x1fc +/* 801CE600 001CB560 3B DB 02 20 */ addi r30, r27, 0x220 +/* 801CE604 001CB564 48 00 00 64 */ b lbl_801CE668 +lbl_801CE608: +/* 801CE608 001CB568 80 7F 00 04 */ lwz r3, 4(r31) +/* 801CE60C 001CB56C 38 80 00 01 */ li r4, 1 +/* 801CE610 001CB570 81 83 00 00 */ lwz r12, 0(r3) +/* 801CE614 001CB574 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801CE618 001CB578 7D 89 03 A6 */ mtctr r12 +/* 801CE61C 001CB57C 4E 80 04 21 */ bctrl +/* 801CE620 001CB580 80 7F 00 04 */ lwz r3, 4(r31) +/* 801CE624 001CB584 7F 84 E3 78 */ mr r4, r28 +/* 801CE628 001CB588 81 83 00 00 */ lwz r12, 0(r3) +/* 801CE62C 001CB58C 81 8C 00 18 */ lwz r12, 0x18(r12) +/* 801CE630 001CB590 7D 89 03 A6 */ mtctr r12 +/* 801CE634 001CB594 4E 80 04 21 */ bctrl +/* 801CE638 001CB598 80 7F 00 04 */ lwz r3, 4(r31) +/* 801CE63C 001CB59C 80 9E 00 00 */ lwz r4, 0(r30) +/* 801CE640 001CB5A0 48 14 E2 81 */ bl ForceParticleCreation__11CElementGenFi +/* 801CE644 001CB5A4 80 7F 00 04 */ lwz r3, 4(r31) +/* 801CE648 001CB5A8 38 80 00 00 */ li r4, 0 +/* 801CE64C 001CB5AC 81 83 00 00 */ lwz r12, 0(r3) +/* 801CE650 001CB5B0 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801CE654 001CB5B4 7D 89 03 A6 */ mtctr r12 +/* 801CE658 001CB5B8 4E 80 04 21 */ bctrl +/* 801CE65C 001CB5BC 3B FF 00 08 */ addi r31, r31, 8 +/* 801CE660 001CB5C0 3B DE 00 04 */ addi r30, r30, 4 +/* 801CE664 001CB5C4 3B BD 00 01 */ addi r29, r29, 1 +lbl_801CE668: +/* 801CE668 001CB5C8 80 1B 01 F8 */ lwz r0, 0x1f8(r27) +/* 801CE66C 001CB5CC 7C 1D 00 00 */ cmpw r29, r0 +/* 801CE670 001CB5D0 41 80 FF 98 */ blt lbl_801CE608 +/* 801CE674 001CB5D4 BB 61 00 0C */ lmw r27, 0xc(r1) +/* 801CE678 001CB5D8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801CE67C 001CB5DC 7C 08 03 A6 */ mtlr r0 +/* 801CE680 001CB5E0 38 21 00 20 */ addi r1, r1, 0x20 +/* 801CE684 001CB5E4 4E 80 00 20 */ blr + +.global ApplyContainment__10CFishCloudFRQ210CFishCloud5CBoidRC6CAABox +ApplyContainment__10CFishCloudFRQ210CFishCloud5CBoidRC6CAABox: +/* 801CE688 001CB5E8 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801CE68C 001CB5EC 7C 08 02 A6 */ mflr r0 +/* 801CE690 001CB5F0 90 01 00 54 */ stw r0, 0x54(r1) +/* 801CE694 001CB5F4 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 801CE698 001CB5F8 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 801CE69C 001CB5FC 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801CE6A0 001CB600 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801CE6A4 001CB604 93 A1 00 34 */ stw r29, 0x34(r1) +/* 801CE6A8 001CB608 7C 7D 1B 78 */ mr r29, r3 +/* 801CE6AC 001CB60C 7C 9E 23 78 */ mr r30, r4 +/* 801CE6B0 001CB610 C3 E3 01 74 */ lfs f31, 0x174(r3) +/* 801CE6B4 001CB614 7C BF 2B 78 */ mr r31, r5 +/* 801CE6B8 001CB618 38 7E 00 0C */ addi r3, r30, 0xc +/* 801CE6BC 001CB61C 48 14 60 3D */ bl CanBeNormalized__9CVector3fCFv +/* 801CE6C0 001CB620 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801CE6C4 001CB624 41 82 00 98 */ beq lbl_801CE75C +/* 801CE6C8 001CB628 38 61 00 14 */ addi r3, r1, 0x14 +/* 801CE6CC 001CB62C 38 9E 00 0C */ addi r4, r30, 0xc +/* 801CE6D0 001CB630 48 14 61 81 */ bl AsNormalized__9CVector3fCFv +/* 801CE6D4 001CB634 C0 7D 01 30 */ lfs f3, 0x130(r29) +/* 801CE6D8 001CB638 7F A3 EB 78 */ mr r3, r29 +/* 801CE6DC 001CB63C C0 41 00 18 */ lfs f2, 0x18(r1) +/* 801CE6E0 001CB640 7F E4 FB 78 */ mr r4, r31 +/* 801CE6E4 001CB644 C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 801CE6E8 001CB648 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801CE6EC 001CB64C C0 01 00 14 */ lfs f0, 0x14(r1) +/* 801CE6F0 001CB650 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 801CE6F4 001CB654 EC 23 00 72 */ fmuls f1, f3, f1 +/* 801CE6F8 001CB658 C0 BE 00 04 */ lfs f5, 4(r30) +/* 801CE6FC 001CB65C EC 03 00 32 */ fmuls f0, f3, f0 +/* 801CE700 001CB660 C0 7E 00 08 */ lfs f3, 8(r30) +/* 801CE704 001CB664 EC 9F 00 B2 */ fmuls f4, f31, f2 +/* 801CE708 001CB668 EC 5F 00 72 */ fmuls f2, f31, f1 +/* 801CE70C 001CB66C EC 1F 00 32 */ fmuls f0, f31, f0 +/* 801CE710 001CB670 C0 3E 00 00 */ lfs f1, 0(r30) +/* 801CE714 001CB674 EC 85 20 2A */ fadds f4, f5, f4 +/* 801CE718 001CB678 EC 43 10 2A */ fadds f2, f3, f2 +/* 801CE71C 001CB67C EC 01 00 2A */ fadds f0, f1, f0 +/* 801CE720 001CB680 D0 81 00 24 */ stfs f4, 0x24(r1) +/* 801CE724 001CB684 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801CE728 001CB688 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 801CE72C 001CB68C 48 00 35 95 */ bl PointInBox__10CFishCloudCFRC6CAABoxRC9CVector3f +/* 801CE730 001CB690 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801CE734 001CB694 40 82 00 28 */ bne lbl_801CE75C +/* 801CE738 001CB698 7F E4 FB 78 */ mr r4, r31 +/* 801CE73C 001CB69C 38 61 00 08 */ addi r3, r1, 8 +/* 801CE740 001CB6A0 48 16 8E CD */ bl GetCenterPoint__6CAABoxCFv +/* 801CE744 001CB6A4 C0 22 AB B0 */ lfs f1, lbl_805AC8D0@sda21(r2) +/* 801CE748 001CB6A8 7F A3 EB 78 */ mr r3, r29 +/* 801CE74C 001CB6AC C0 5D 01 58 */ lfs f2, 0x158(r29) +/* 801CE750 001CB6B0 7F C4 F3 78 */ mr r4, r30 +/* 801CE754 001CB6B4 38 A1 00 08 */ addi r5, r1, 8 +/* 801CE758 001CB6B8 48 00 00 49 */ bl ApplyAttraction__10CFishCloudFRQ210CFishCloud5CBoidRC9CVector3fff +lbl_801CE75C: +/* 801CE75C 001CB6BC E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 801CE760 001CB6C0 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801CE764 001CB6C4 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 801CE768 001CB6C8 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801CE76C 001CB6CC 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801CE770 001CB6D0 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 801CE774 001CB6D4 7C 08 03 A6 */ mtlr r0 +/* 801CE778 001CB6D8 38 21 00 50 */ addi r1, r1, 0x50 +/* 801CE77C 001CB6DC 4E 80 00 20 */ blr + +.global ApplyRepulsion__10CFishCloudFRQ210CFishCloud5CBoidRC9CVector3fff +ApplyRepulsion__10CFishCloudFRQ210CFishCloud5CBoidRC9CVector3fff: +/* 801CE780 001CB6E0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801CE784 001CB6E4 7C 08 02 A6 */ mflr r0 +/* 801CE788 001CB6E8 90 01 00 14 */ stw r0, 0x14(r1) +/* 801CE78C 001CB6EC 48 00 01 31 */ bl ApplySeparation__10CFishCloudFRQ210CFishCloud5CBoidRC9CVector3fff +/* 801CE790 001CB6F0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801CE794 001CB6F4 7C 08 03 A6 */ mtlr r0 +/* 801CE798 001CB6F8 38 21 00 10 */ addi r1, r1, 0x10 +/* 801CE79C 001CB6FC 4E 80 00 20 */ blr + +.global ApplyAttraction__10CFishCloudFRQ210CFishCloud5CBoidRC9CVector3fff +ApplyAttraction__10CFishCloudFRQ210CFishCloud5CBoidRC9CVector3fff: +/* 801CE7A0 001CB700 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801CE7A4 001CB704 7C 08 02 A6 */ mflr r0 +/* 801CE7A8 001CB708 90 01 00 54 */ stw r0, 0x54(r1) +/* 801CE7AC 001CB70C DB E1 00 40 */ stfd f31, 0x40(r1) +/* 801CE7B0 001CB710 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 801CE7B4 001CB714 DB C1 00 30 */ stfd f30, 0x30(r1) +/* 801CE7B8 001CB718 F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 +/* 801CE7BC 001CB71C 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801CE7C0 001CB720 7C 9F 23 78 */ mr r31, r4 +/* 801CE7C4 001CB724 C0 85 00 04 */ lfs f4, 4(r5) +/* 801CE7C8 001CB728 C0 04 00 04 */ lfs f0, 4(r4) +/* 801CE7CC 001CB72C FF C0 08 90 */ fmr f30, f1 +/* 801CE7D0 001CB730 C0 65 00 08 */ lfs f3, 8(r5) +/* 801CE7D4 001CB734 FF E0 10 90 */ fmr f31, f2 +/* 801CE7D8 001CB738 C0 44 00 08 */ lfs f2, 8(r4) +/* 801CE7DC 001CB73C EC 84 00 28 */ fsubs f4, f4, f0 +/* 801CE7E0 001CB740 C0 04 00 00 */ lfs f0, 0(r4) +/* 801CE7E4 001CB744 C0 25 00 00 */ lfs f1, 0(r5) +/* 801CE7E8 001CB748 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801CE7EC 001CB74C D0 81 00 18 */ stfs f4, 0x18(r1) +/* 801CE7F0 001CB750 38 61 00 14 */ addi r3, r1, 0x14 +/* 801CE7F4 001CB754 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801CE7F8 001CB758 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 801CE7FC 001CB75C D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801CE800 001CB760 48 14 5E F9 */ bl CanBeNormalized__9CVector3fCFv +/* 801CE804 001CB764 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801CE808 001CB768 41 82 00 90 */ beq lbl_801CE898 +/* 801CE80C 001CB76C C0 21 00 14 */ lfs f1, 0x14(r1) +/* 801CE810 001CB770 EC 7E 07 B2 */ fmuls f3, f30, f30 +/* 801CE814 001CB774 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 801CE818 001CB778 EC 21 00 72 */ fmuls f1, f1, f1 +/* 801CE81C 001CB77C C0 41 00 1C */ lfs f2, 0x1c(r1) +/* 801CE820 001CB780 EC 00 00 32 */ fmuls f0, f0, f0 +/* 801CE824 001CB784 EC 42 00 B2 */ fmuls f2, f2, f2 +/* 801CE828 001CB788 EC 01 00 2A */ fadds f0, f1, f0 +/* 801CE82C 001CB78C EC 02 00 2A */ fadds f0, f2, f0 +/* 801CE830 001CB790 FC 00 18 40 */ fcmpo cr0, f0, f3 +/* 801CE834 001CB794 40 80 00 64 */ bge lbl_801CE898 +/* 801CE838 001CB798 EC 00 18 24 */ fdivs f0, f0, f3 +/* 801CE83C 001CB79C C0 22 AB B4 */ lfs f1, lbl_805AC8D4@sda21(r2) +/* 801CE840 001CB7A0 38 61 00 08 */ addi r3, r1, 8 +/* 801CE844 001CB7A4 38 81 00 14 */ addi r4, r1, 0x14 +/* 801CE848 001CB7A8 EF C1 00 28 */ fsubs f30, f1, f0 +/* 801CE84C 001CB7AC 48 14 60 05 */ bl AsNormalized__9CVector3fCFv +/* 801CE850 001CB7B0 C0 01 00 08 */ lfs f0, 8(r1) +/* 801CE854 001CB7B4 C0 21 00 0C */ lfs f1, 0xc(r1) +/* 801CE858 001CB7B8 EC 1E 00 32 */ fmuls f0, f30, f0 +/* 801CE85C 001CB7BC C0 41 00 10 */ lfs f2, 0x10(r1) +/* 801CE860 001CB7C0 EC 7E 00 72 */ fmuls f3, f30, f1 +/* 801CE864 001CB7C4 C0 3F 00 0C */ lfs f1, 0xc(r31) +/* 801CE868 001CB7C8 EC 5E 00 B2 */ fmuls f2, f30, f2 +/* 801CE86C 001CB7CC EC 1F 00 32 */ fmuls f0, f31, f0 +/* 801CE870 001CB7D0 EC 7F 00 F2 */ fmuls f3, f31, f3 +/* 801CE874 001CB7D4 EC 5F 00 B2 */ fmuls f2, f31, f2 +/* 801CE878 001CB7D8 EC 01 00 2A */ fadds f0, f1, f0 +/* 801CE87C 001CB7DC D0 1F 00 0C */ stfs f0, 0xc(r31) +/* 801CE880 001CB7E0 C0 1F 00 10 */ lfs f0, 0x10(r31) +/* 801CE884 001CB7E4 EC 00 18 2A */ fadds f0, f0, f3 +/* 801CE888 001CB7E8 D0 1F 00 10 */ stfs f0, 0x10(r31) +/* 801CE88C 001CB7EC C0 1F 00 14 */ lfs f0, 0x14(r31) +/* 801CE890 001CB7F0 EC 00 10 2A */ fadds f0, f0, f2 +/* 801CE894 001CB7F4 D0 1F 00 14 */ stfs f0, 0x14(r31) +lbl_801CE898: +/* 801CE898 001CB7F8 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 801CE89C 001CB7FC CB E1 00 40 */ lfd f31, 0x40(r1) +/* 801CE8A0 001CB800 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 +/* 801CE8A4 001CB804 CB C1 00 30 */ lfd f30, 0x30(r1) +/* 801CE8A8 001CB808 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801CE8AC 001CB80C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801CE8B0 001CB810 7C 08 03 A6 */ mtlr r0 +/* 801CE8B4 001CB814 38 21 00 50 */ addi r1, r1, 0x50 +/* 801CE8B8 001CB818 4E 80 00 20 */ blr + +.global ApplySeparation__10CFishCloudFRQ210CFishCloud5CBoidRC9CVector3fff +ApplySeparation__10CFishCloudFRQ210CFishCloud5CBoidRC9CVector3fff: +/* 801CE8BC 001CB81C 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801CE8C0 001CB820 7C 08 02 A6 */ mflr r0 +/* 801CE8C4 001CB824 90 01 00 54 */ stw r0, 0x54(r1) +/* 801CE8C8 001CB828 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 801CE8CC 001CB82C F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 801CE8D0 001CB830 DB C1 00 30 */ stfd f30, 0x30(r1) +/* 801CE8D4 001CB834 F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 +/* 801CE8D8 001CB838 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801CE8DC 001CB83C 7C 9F 23 78 */ mr r31, r4 +/* 801CE8E0 001CB840 C0 05 00 04 */ lfs f0, 4(r5) +/* 801CE8E4 001CB844 C0 84 00 04 */ lfs f4, 4(r4) +/* 801CE8E8 001CB848 FF C0 08 90 */ fmr f30, f1 +/* 801CE8EC 001CB84C C0 64 00 08 */ lfs f3, 8(r4) +/* 801CE8F0 001CB850 FF E0 10 90 */ fmr f31, f2 +/* 801CE8F4 001CB854 C0 45 00 08 */ lfs f2, 8(r5) +/* 801CE8F8 001CB858 EC 84 00 28 */ fsubs f4, f4, f0 +/* 801CE8FC 001CB85C C0 24 00 00 */ lfs f1, 0(r4) +/* 801CE900 001CB860 C0 05 00 00 */ lfs f0, 0(r5) +/* 801CE904 001CB864 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801CE908 001CB868 D0 81 00 18 */ stfs f4, 0x18(r1) +/* 801CE90C 001CB86C 38 61 00 14 */ addi r3, r1, 0x14 +/* 801CE910 001CB870 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801CE914 001CB874 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 801CE918 001CB878 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801CE91C 001CB87C 48 14 5D DD */ bl CanBeNormalized__9CVector3fCFv +/* 801CE920 001CB880 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801CE924 001CB884 41 82 00 90 */ beq lbl_801CE9B4 +/* 801CE928 001CB888 C0 21 00 14 */ lfs f1, 0x14(r1) +/* 801CE92C 001CB88C EC 7E 07 B2 */ fmuls f3, f30, f30 +/* 801CE930 001CB890 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 801CE934 001CB894 EC 21 00 72 */ fmuls f1, f1, f1 +/* 801CE938 001CB898 C0 41 00 1C */ lfs f2, 0x1c(r1) +/* 801CE93C 001CB89C EC 00 00 32 */ fmuls f0, f0, f0 +/* 801CE940 001CB8A0 EC 42 00 B2 */ fmuls f2, f2, f2 +/* 801CE944 001CB8A4 EC 01 00 2A */ fadds f0, f1, f0 +/* 801CE948 001CB8A8 EC 02 00 2A */ fadds f0, f2, f0 +/* 801CE94C 001CB8AC FC 00 18 40 */ fcmpo cr0, f0, f3 +/* 801CE950 001CB8B0 40 80 00 64 */ bge lbl_801CE9B4 +/* 801CE954 001CB8B4 EC 00 18 24 */ fdivs f0, f0, f3 +/* 801CE958 001CB8B8 C0 22 AB B4 */ lfs f1, lbl_805AC8D4@sda21(r2) +/* 801CE95C 001CB8BC 38 61 00 08 */ addi r3, r1, 8 +/* 801CE960 001CB8C0 38 81 00 14 */ addi r4, r1, 0x14 +/* 801CE964 001CB8C4 EF C1 00 28 */ fsubs f30, f1, f0 +/* 801CE968 001CB8C8 48 14 5E E9 */ bl AsNormalized__9CVector3fCFv +/* 801CE96C 001CB8CC C0 01 00 08 */ lfs f0, 8(r1) +/* 801CE970 001CB8D0 C0 21 00 0C */ lfs f1, 0xc(r1) +/* 801CE974 001CB8D4 EC 1E 00 32 */ fmuls f0, f30, f0 +/* 801CE978 001CB8D8 C0 41 00 10 */ lfs f2, 0x10(r1) +/* 801CE97C 001CB8DC EC 7E 00 72 */ fmuls f3, f30, f1 +/* 801CE980 001CB8E0 C0 3F 00 0C */ lfs f1, 0xc(r31) +/* 801CE984 001CB8E4 EC 5E 00 B2 */ fmuls f2, f30, f2 +/* 801CE988 001CB8E8 EC 1F 00 32 */ fmuls f0, f31, f0 +/* 801CE98C 001CB8EC EC 7F 00 F2 */ fmuls f3, f31, f3 +/* 801CE990 001CB8F0 EC 5F 00 B2 */ fmuls f2, f31, f2 +/* 801CE994 001CB8F4 EC 01 00 2A */ fadds f0, f1, f0 +/* 801CE998 001CB8F8 D0 1F 00 0C */ stfs f0, 0xc(r31) +/* 801CE99C 001CB8FC C0 1F 00 10 */ lfs f0, 0x10(r31) +/* 801CE9A0 001CB900 EC 00 18 2A */ fadds f0, f0, f3 +/* 801CE9A4 001CB904 D0 1F 00 10 */ stfs f0, 0x10(r31) +/* 801CE9A8 001CB908 C0 1F 00 14 */ lfs f0, 0x14(r31) +/* 801CE9AC 001CB90C EC 00 10 2A */ fadds f0, f0, f2 +/* 801CE9B0 001CB910 D0 1F 00 14 */ stfs f0, 0x14(r31) +lbl_801CE9B4: +/* 801CE9B4 001CB914 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 801CE9B8 001CB918 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 801CE9BC 001CB91C E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 +/* 801CE9C0 001CB920 CB C1 00 30 */ lfd f30, 0x30(r1) +/* 801CE9C4 001CB924 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801CE9C8 001CB928 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801CE9CC 001CB92C 7C 08 03 A6 */ mtlr r0 +/* 801CE9D0 001CB930 38 21 00 50 */ addi r1, r1, 0x50 +/* 801CE9D4 001CB934 4E 80 00 20 */ blr + +.global "ApplySeparation__10CFishCloudFRQ210CFishCloud5CBoidRCQ24rstl41reserved_vector" +"ApplySeparation__10CFishCloudFRQ210CFishCloud5CBoidRCQ24rstl41reserved_vector": +/* 801CE9D8 001CB938 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801CE9DC 001CB93C 7C 08 02 A6 */ mflr r0 +/* 801CE9E0 001CB940 90 01 00 24 */ stw r0, 0x24(r1) +/* 801CE9E4 001CB944 80 05 00 00 */ lwz r0, 0(r5) +/* 801CE9E8 001CB948 2C 00 00 00 */ cmpwi r0, 0 +/* 801CE9EC 001CB94C 40 81 00 98 */ ble lbl_801CEA84 +/* 801CE9F0 001CB950 C0 02 AB B8 */ lfs f0, lbl_805AC8D8@sda21(r2) +/* 801CE9F4 001CB954 38 E5 00 04 */ addi r7, r5, 4 +/* 801CE9F8 001CB958 C0 C2 AB BC */ lfs f6, lbl_805AC8DC@sda21(r2) +/* 801CE9FC 001CB95C D0 01 00 08 */ stfs f0, 8(r1) +/* 801CEA00 001CB960 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801CEA04 001CB964 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801CEA08 001CB968 48 00 00 54 */ b lbl_801CEA5C +lbl_801CEA0C: +/* 801CEA0C 001CB96C 80 C7 00 00 */ lwz r6, 0(r7) +/* 801CEA10 001CB970 C0 04 00 04 */ lfs f0, 4(r4) +/* 801CEA14 001CB974 C0 66 00 04 */ lfs f3, 4(r6) +/* 801CEA18 001CB978 C0 A4 00 00 */ lfs f5, 0(r4) +/* 801CEA1C 001CB97C EC 00 18 28 */ fsubs f0, f0, f3 +/* 801CEA20 001CB980 C0 86 00 00 */ lfs f4, 0(r6) +/* 801CEA24 001CB984 C0 44 00 08 */ lfs f2, 8(r4) +/* 801CEA28 001CB988 C0 26 00 08 */ lfs f1, 8(r6) +/* 801CEA2C 001CB98C EC A5 20 28 */ fsubs f5, f5, f4 +/* 801CEA30 001CB990 EC 00 00 32 */ fmuls f0, f0, f0 +/* 801CEA34 001CB994 EC 42 08 28 */ fsubs f2, f2, f1 +/* 801CEA38 001CB998 EC 05 01 7A */ fmadds f0, f5, f5, f0 +/* 801CEA3C 001CB99C EC 02 00 BA */ fmadds f0, f2, f2, f0 +/* 801CEA40 001CB9A0 FC 00 30 40 */ fcmpo cr0, f0, f6 +/* 801CEA44 001CB9A4 40 80 00 14 */ bge lbl_801CEA58 +/* 801CEA48 001CB9A8 FC C0 00 90 */ fmr f6, f0 +/* 801CEA4C 001CB9AC D0 81 00 08 */ stfs f4, 8(r1) +/* 801CEA50 001CB9B0 D0 61 00 0C */ stfs f3, 0xc(r1) +/* 801CEA54 001CB9B4 D0 21 00 10 */ stfs f1, 0x10(r1) +lbl_801CEA58: +/* 801CEA58 001CB9B8 38 E7 00 04 */ addi r7, r7, 4 +lbl_801CEA5C: +/* 801CEA5C 001CB9BC 80 05 00 00 */ lwz r0, 0(r5) +/* 801CEA60 001CB9C0 54 00 10 3A */ slwi r0, r0, 2 +/* 801CEA64 001CB9C4 7C C5 02 14 */ add r6, r5, r0 +/* 801CEA68 001CB9C8 38 06 00 04 */ addi r0, r6, 4 +/* 801CEA6C 001CB9CC 7C 07 00 40 */ cmplw r7, r0 +/* 801CEA70 001CB9D0 40 82 FF 9C */ bne lbl_801CEA0C +/* 801CEA74 001CB9D4 C0 23 01 38 */ lfs f1, 0x138(r3) +/* 801CEA78 001CB9D8 38 A1 00 08 */ addi r5, r1, 8 +/* 801CEA7C 001CB9DC C0 43 01 44 */ lfs f2, 0x144(r3) +/* 801CEA80 001CB9E0 4B FF FE 3D */ bl ApplySeparation__10CFishCloudFRQ210CFishCloud5CBoidRC9CVector3fff +lbl_801CEA84: +/* 801CEA84 001CB9E4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801CEA88 001CB9E8 7C 08 03 A6 */ mtlr r0 +/* 801CEA8C 001CB9EC 38 21 00 20 */ addi r1, r1, 0x20 +/* 801CEA90 001CB9F0 4E 80 00 20 */ blr + +.global ApplyCohesion__10CFishCloudFRQ210CFishCloud5CBoidRC9CVector3fff +ApplyCohesion__10CFishCloudFRQ210CFishCloud5CBoidRC9CVector3fff: +/* 801CEA94 001CB9F4 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801CEA98 001CB9F8 7C 08 02 A6 */ mflr r0 +/* 801CEA9C 001CB9FC 90 01 00 54 */ stw r0, 0x54(r1) +/* 801CEAA0 001CBA00 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 801CEAA4 001CBA04 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 801CEAA8 001CBA08 DB C1 00 30 */ stfd f30, 0x30(r1) +/* 801CEAAC 001CBA0C F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 +/* 801CEAB0 001CBA10 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801CEAB4 001CBA14 7C 9F 23 78 */ mr r31, r4 +/* 801CEAB8 001CBA18 C0 85 00 04 */ lfs f4, 4(r5) +/* 801CEABC 001CBA1C C0 04 00 04 */ lfs f0, 4(r4) +/* 801CEAC0 001CBA20 FF C0 08 90 */ fmr f30, f1 +/* 801CEAC4 001CBA24 C0 65 00 08 */ lfs f3, 8(r5) +/* 801CEAC8 001CBA28 FF E0 10 90 */ fmr f31, f2 +/* 801CEACC 001CBA2C C0 44 00 08 */ lfs f2, 8(r4) +/* 801CEAD0 001CBA30 EC 84 00 28 */ fsubs f4, f4, f0 +/* 801CEAD4 001CBA34 C0 04 00 00 */ lfs f0, 0(r4) +/* 801CEAD8 001CBA38 C0 25 00 00 */ lfs f1, 0(r5) +/* 801CEADC 001CBA3C EC 43 10 28 */ fsubs f2, f3, f2 +/* 801CEAE0 001CBA40 D0 81 00 18 */ stfs f4, 0x18(r1) +/* 801CEAE4 001CBA44 38 61 00 14 */ addi r3, r1, 0x14 +/* 801CEAE8 001CBA48 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801CEAEC 001CBA4C D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 801CEAF0 001CBA50 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801CEAF4 001CBA54 48 14 5C 05 */ bl CanBeNormalized__9CVector3fCFv +/* 801CEAF8 001CBA58 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801CEAFC 001CBA5C 41 82 00 8C */ beq lbl_801CEB88 +/* 801CEB00 001CBA60 C0 21 00 14 */ lfs f1, 0x14(r1) +/* 801CEB04 001CBA64 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 801CEB08 001CBA68 EC 21 00 72 */ fmuls f1, f1, f1 +/* 801CEB0C 001CBA6C C0 41 00 1C */ lfs f2, 0x1c(r1) +/* 801CEB10 001CBA70 EC 00 00 32 */ fmuls f0, f0, f0 +/* 801CEB14 001CBA74 EC 42 00 B2 */ fmuls f2, f2, f2 +/* 801CEB18 001CBA78 EC 01 00 2A */ fadds f0, f1, f0 +/* 801CEB1C 001CBA7C EC 02 00 2A */ fadds f0, f2, f0 +/* 801CEB20 001CBA80 FC 00 F0 40 */ fcmpo cr0, f0, f30 +/* 801CEB24 001CBA84 40 81 00 0C */ ble lbl_801CEB30 +/* 801CEB28 001CBA88 C3 C2 AB B4 */ lfs f30, lbl_805AC8D4@sda21(r2) +/* 801CEB2C 001CBA8C 48 00 00 08 */ b lbl_801CEB34 +lbl_801CEB30: +/* 801CEB30 001CBA90 EF C0 F0 24 */ fdivs f30, f0, f30 +lbl_801CEB34: +/* 801CEB34 001CBA94 38 61 00 08 */ addi r3, r1, 8 +/* 801CEB38 001CBA98 38 81 00 14 */ addi r4, r1, 0x14 +/* 801CEB3C 001CBA9C 48 14 5D 15 */ bl AsNormalized__9CVector3fCFv +/* 801CEB40 001CBAA0 C0 01 00 08 */ lfs f0, 8(r1) +/* 801CEB44 001CBAA4 C0 21 00 0C */ lfs f1, 0xc(r1) +/* 801CEB48 001CBAA8 EC 1E 00 32 */ fmuls f0, f30, f0 +/* 801CEB4C 001CBAAC C0 41 00 10 */ lfs f2, 0x10(r1) +/* 801CEB50 001CBAB0 EC 7E 00 72 */ fmuls f3, f30, f1 +/* 801CEB54 001CBAB4 C0 3F 00 0C */ lfs f1, 0xc(r31) +/* 801CEB58 001CBAB8 EC 5E 00 B2 */ fmuls f2, f30, f2 +/* 801CEB5C 001CBABC EC 1F 00 32 */ fmuls f0, f31, f0 +/* 801CEB60 001CBAC0 EC 7F 00 F2 */ fmuls f3, f31, f3 +/* 801CEB64 001CBAC4 EC 5F 00 B2 */ fmuls f2, f31, f2 +/* 801CEB68 001CBAC8 EC 01 00 2A */ fadds f0, f1, f0 +/* 801CEB6C 001CBACC D0 1F 00 0C */ stfs f0, 0xc(r31) +/* 801CEB70 001CBAD0 C0 1F 00 10 */ lfs f0, 0x10(r31) +/* 801CEB74 001CBAD4 EC 00 18 2A */ fadds f0, f0, f3 +/* 801CEB78 001CBAD8 D0 1F 00 10 */ stfs f0, 0x10(r31) +/* 801CEB7C 001CBADC C0 1F 00 14 */ lfs f0, 0x14(r31) +/* 801CEB80 001CBAE0 EC 00 10 2A */ fadds f0, f0, f2 +/* 801CEB84 001CBAE4 D0 1F 00 14 */ stfs f0, 0x14(r31) +lbl_801CEB88: +/* 801CEB88 001CBAE8 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 801CEB8C 001CBAEC CB E1 00 40 */ lfd f31, 0x40(r1) +/* 801CEB90 001CBAF0 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 +/* 801CEB94 001CBAF4 CB C1 00 30 */ lfd f30, 0x30(r1) +/* 801CEB98 001CBAF8 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801CEB9C 001CBAFC 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801CEBA0 001CBB00 7C 08 03 A6 */ mtlr r0 +/* 801CEBA4 001CBB04 38 21 00 50 */ addi r1, r1, 0x50 +/* 801CEBA8 001CBB08 4E 80 00 20 */ blr + +.global "ApplyCohesion__10CFishCloudFRQ210CFishCloud5CBoidRCQ24rstl41reserved_vector" +"ApplyCohesion__10CFishCloudFRQ210CFishCloud5CBoidRCQ24rstl41reserved_vector": +/* 801CEBAC 001CBB0C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801CEBB0 001CBB10 7C 08 02 A6 */ mflr r0 +/* 801CEBB4 001CBB14 90 01 00 24 */ stw r0, 0x24(r1) +/* 801CEBB8 001CBB18 80 05 00 00 */ lwz r0, 0(r5) +/* 801CEBBC 001CBB1C 2C 00 00 00 */ cmpwi r0, 0 +/* 801CEBC0 001CBB20 40 81 00 C4 */ ble lbl_801CEC84 +/* 801CEBC4 001CBB24 C0 02 AB B8 */ lfs f0, lbl_805AC8D8@sda21(r2) +/* 801CEBC8 001CBB28 39 05 00 04 */ addi r8, r5, 4 +/* 801CEBCC 001CBB2C D0 01 00 08 */ stfs f0, 8(r1) +/* 801CEBD0 001CBB30 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801CEBD4 001CBB34 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801CEBD8 001CBB38 48 00 00 3C */ b lbl_801CEC14 +lbl_801CEBDC: +/* 801CEBDC 001CBB3C 80 C8 00 00 */ lwz r6, 0(r8) +/* 801CEBE0 001CBB40 39 08 00 04 */ addi r8, r8, 4 +/* 801CEBE4 001CBB44 C0 21 00 08 */ lfs f1, 8(r1) +/* 801CEBE8 001CBB48 C0 06 00 00 */ lfs f0, 0(r6) +/* 801CEBEC 001CBB4C C0 41 00 0C */ lfs f2, 0xc(r1) +/* 801CEBF0 001CBB50 EC 01 00 2A */ fadds f0, f1, f0 +/* 801CEBF4 001CBB54 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 801CEBF8 001CBB58 D0 01 00 08 */ stfs f0, 8(r1) +/* 801CEBFC 001CBB5C C0 06 00 04 */ lfs f0, 4(r6) +/* 801CEC00 001CBB60 EC 02 00 2A */ fadds f0, f2, f0 +/* 801CEC04 001CBB64 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801CEC08 001CBB68 C0 06 00 08 */ lfs f0, 8(r6) +/* 801CEC0C 001CBB6C EC 01 00 2A */ fadds f0, f1, f0 +/* 801CEC10 001CBB70 D0 01 00 10 */ stfs f0, 0x10(r1) +lbl_801CEC14: +/* 801CEC14 001CBB74 80 E5 00 00 */ lwz r7, 0(r5) +/* 801CEC18 001CBB78 54 E0 10 3A */ slwi r0, r7, 2 +/* 801CEC1C 001CBB7C 7C C5 02 14 */ add r6, r5, r0 +/* 801CEC20 001CBB80 38 06 00 04 */ addi r0, r6, 4 +/* 801CEC24 001CBB84 7C 08 00 40 */ cmplw r8, r0 +/* 801CEC28 001CBB88 40 82 FF B4 */ bne lbl_801CEBDC +/* 801CEC2C 001CBB8C 6C E5 80 00 */ xoris r5, r7, 0x8000 +/* 801CEC30 001CBB90 3C 00 43 30 */ lis r0, 0x4330 +/* 801CEC34 001CBB94 90 A1 00 1C */ stw r5, 0x1c(r1) +/* 801CEC38 001CBB98 38 A1 00 08 */ addi r5, r1, 8 +/* 801CEC3C 001CBB9C C8 22 AB C0 */ lfd f1, lbl_805AC8E0@sda21(r2) +/* 801CEC40 001CBBA0 90 01 00 18 */ stw r0, 0x18(r1) +/* 801CEC44 001CBBA4 C0 82 AB B4 */ lfs f4, lbl_805AC8D4@sda21(r2) +/* 801CEC48 001CBBA8 C8 01 00 18 */ lfd f0, 0x18(r1) +/* 801CEC4C 001CBBAC C0 41 00 0C */ lfs f2, 0xc(r1) +/* 801CEC50 001CBBB0 EC 60 08 28 */ fsubs f3, f0, f1 +/* 801CEC54 001CBBB4 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 801CEC58 001CBBB8 C0 01 00 08 */ lfs f0, 8(r1) +/* 801CEC5C 001CBBBC EC 64 18 24 */ fdivs f3, f4, f3 +/* 801CEC60 001CBBC0 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 801CEC64 001CBBC4 EC 23 00 72 */ fmuls f1, f3, f1 +/* 801CEC68 001CBBC8 EC 03 00 32 */ fmuls f0, f3, f0 +/* 801CEC6C 001CBBCC D0 41 00 0C */ stfs f2, 0xc(r1) +/* 801CEC70 001CBBD0 D0 01 00 08 */ stfs f0, 8(r1) +/* 801CEC74 001CBBD4 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 801CEC78 001CBBD8 C0 23 01 38 */ lfs f1, 0x138(r3) +/* 801CEC7C 001CBBDC C0 43 01 3C */ lfs f2, 0x13c(r3) +/* 801CEC80 001CBBE0 4B FF FE 15 */ bl ApplyCohesion__10CFishCloudFRQ210CFishCloud5CBoidRC9CVector3fff +lbl_801CEC84: +/* 801CEC84 001CBBE4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801CEC88 001CBBE8 7C 08 03 A6 */ mtlr r0 +/* 801CEC8C 001CBBEC 38 21 00 20 */ addi r1, r1, 0x20 +/* 801CEC90 001CBBF0 4E 80 00 20 */ blr + +.global sub_801cec94 +sub_801cec94: +/* 801CEC94 001CBBF4 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801CEC98 001CBBF8 7C 08 02 A6 */ mflr r0 +/* 801CEC9C 001CBBFC 90 01 00 64 */ stw r0, 0x64(r1) +/* 801CECA0 001CBC00 DB E1 00 50 */ stfd f31, 0x50(r1) +/* 801CECA4 001CBC04 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 801CECA8 001CBC08 DB C1 00 40 */ stfd f30, 0x40(r1) +/* 801CECAC 001CBC0C F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0 +/* 801CECB0 001CBC10 DB A1 00 30 */ stfd f29, 0x30(r1) +/* 801CECB4 001CBC14 F3 A1 00 38 */ psq_st f29, 56(r1), 0, qr0 +/* 801CECB8 001CBC18 DB 81 00 20 */ stfd f28, 0x20(r1) +/* 801CECBC 001CBC1C F3 81 00 28 */ psq_st f28, 40(r1), 0, qr0 +/* 801CECC0 001CBC20 DB 61 00 10 */ stfd f27, 0x10(r1) +/* 801CECC4 001CBC24 F3 61 00 18 */ psq_st f27, 24(r1), 0, qr0 +/* 801CECC8 001CBC28 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801CECCC 001CBC2C 93 C1 00 08 */ stw r30, 8(r1) +/* 801CECD0 001CBC30 7C BF 2B 78 */ mr r31, r5 +/* 801CECD4 001CBC34 7C 7E 1B 78 */ mr r30, r3 +/* 801CECD8 001CBC38 C3 A5 00 0C */ lfs f29, 0xc(r5) +/* 801CECDC 001CBC3C C3 85 00 10 */ lfs f28, 0x10(r5) +/* 801CECE0 001CBC40 80 64 09 00 */ lwz r3, 0x900(r4) +/* 801CECE4 001CBC44 48 14 37 F9 */ bl Float__9CRandom16Fv +/* 801CECE8 001CBC48 C0 02 AB CC */ lfs f0, lbl_805AC8EC@sda21(r2) +/* 801CECEC 001CBC4C C0 42 AB C8 */ lfs f2, lbl_805AC8E8@sda21(r2) +/* 801CECF0 001CBC50 EC 21 00 28 */ fsubs f1, f1, f0 +/* 801CECF4 001CBC54 C0 1E 01 54 */ lfs f0, 0x154(r30) +/* 801CECF8 001CBC58 EC 22 00 72 */ fmuls f1, f2, f1 +/* 801CECFC 001CBC5C EF 60 00 72 */ fmuls f27, f0, f1 +/* 801CED00 001CBC60 FC 20 D8 90 */ fmr f1, f27 +/* 801CED04 001CBC64 48 14 60 41 */ bl FastCosR__5CMathFf +/* 801CED08 001CBC68 EF FC 00 72 */ fmuls f31, f28, f1 +/* 801CED0C 001CBC6C FC 20 D8 90 */ fmr f1, f27 +/* 801CED10 001CBC70 48 14 60 E1 */ bl FastSinR__5CMathFf +/* 801CED14 001CBC74 EF DD F8 7A */ fmadds f30, f29, f1, f31 +/* 801CED18 001CBC78 FC 20 D8 90 */ fmr f1, f27 +/* 801CED1C 001CBC7C 48 14 60 D5 */ bl FastSinR__5CMathFf +/* 801CED20 001CBC80 EF FC 00 72 */ fmuls f31, f28, f1 +/* 801CED24 001CBC84 FC 20 D8 90 */ fmr f1, f27 +/* 801CED28 001CBC88 48 14 60 1D */ bl FastCosR__5CMathFf +/* 801CED2C 001CBC8C EC 5D F8 78 */ fmsubs f2, f29, f1, f31 +/* 801CED30 001CBC90 C0 9E 01 50 */ lfs f4, 0x150(r30) +/* 801CED34 001CBC94 C0 02 AB B8 */ lfs f0, lbl_805AC8D8@sda21(r2) +/* 801CED38 001CBC98 C0 7F 00 0C */ lfs f3, 0xc(r31) +/* 801CED3C 001CBC9C EC 24 07 B2 */ fmuls f1, f4, f30 +/* 801CED40 001CBCA0 EC 44 00 B2 */ fmuls f2, f4, f2 +/* 801CED44 001CBCA4 EC 04 00 32 */ fmuls f0, f4, f0 +/* 801CED48 001CBCA8 EC 43 10 2A */ fadds f2, f3, f2 +/* 801CED4C 001CBCAC D0 5F 00 0C */ stfs f2, 0xc(r31) +/* 801CED50 001CBCB0 C0 5F 00 10 */ lfs f2, 0x10(r31) +/* 801CED54 001CBCB4 EC 22 08 2A */ fadds f1, f2, f1 +/* 801CED58 001CBCB8 D0 3F 00 10 */ stfs f1, 0x10(r31) +/* 801CED5C 001CBCBC C0 3F 00 14 */ lfs f1, 0x14(r31) +/* 801CED60 001CBCC0 EC 01 00 2A */ fadds f0, f1, f0 +/* 801CED64 001CBCC4 D0 1F 00 14 */ stfs f0, 0x14(r31) +/* 801CED68 001CBCC8 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 +/* 801CED6C 001CBCCC CB E1 00 50 */ lfd f31, 0x50(r1) +/* 801CED70 001CBCD0 E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0 +/* 801CED74 001CBCD4 CB C1 00 40 */ lfd f30, 0x40(r1) +/* 801CED78 001CBCD8 E3 A1 00 38 */ psq_l f29, 56(r1), 0, qr0 +/* 801CED7C 001CBCDC CB A1 00 30 */ lfd f29, 0x30(r1) +/* 801CED80 001CBCE0 E3 81 00 28 */ psq_l f28, 40(r1), 0, qr0 +/* 801CED84 001CBCE4 CB 81 00 20 */ lfd f28, 0x20(r1) +/* 801CED88 001CBCE8 E3 61 00 18 */ psq_l f27, 24(r1), 0, qr0 +/* 801CED8C 001CBCEC CB 61 00 10 */ lfd f27, 0x10(r1) +/* 801CED90 001CBCF0 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801CED94 001CBCF4 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801CED98 001CBCF8 83 C1 00 08 */ lwz r30, 8(r1) +/* 801CED9C 001CBCFC 7C 08 03 A6 */ mtlr r0 +/* 801CEDA0 001CBD00 38 21 00 60 */ addi r1, r1, 0x60 +/* 801CEDA4 001CBD04 4E 80 00 20 */ blr + +.global "ApplyAlignment__10CFishCloudFRQ210CFishCloud5CBoidRCQ24rstl41reserved_vector" +"ApplyAlignment__10CFishCloudFRQ210CFishCloud5CBoidRCQ24rstl41reserved_vector": +/* 801CEDA8 001CBD08 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801CEDAC 001CBD0C 7C 08 02 A6 */ mflr r0 +/* 801CEDB0 001CBD10 90 01 00 34 */ stw r0, 0x34(r1) +/* 801CEDB4 001CBD14 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801CEDB8 001CBD18 7C 9F 23 78 */ mr r31, r4 +/* 801CEDBC 001CBD1C 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801CEDC0 001CBD20 7C 7E 1B 78 */ mr r30, r3 +/* 801CEDC4 001CBD24 80 05 00 00 */ lwz r0, 0(r5) +/* 801CEDC8 001CBD28 2C 00 00 00 */ cmpwi r0, 0 +/* 801CEDCC 001CBD2C 40 81 01 2C */ ble lbl_801CEEF8 +/* 801CEDD0 001CBD30 C0 02 AB B8 */ lfs f0, lbl_805AC8D8@sda21(r2) +/* 801CEDD4 001CBD34 38 C5 00 04 */ addi r6, r5, 4 +/* 801CEDD8 001CBD38 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801CEDDC 001CBD3C D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801CEDE0 001CBD40 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801CEDE4 001CBD44 48 00 00 3C */ b lbl_801CEE20 +lbl_801CEDE8: +/* 801CEDE8 001CBD48 80 66 00 00 */ lwz r3, 0(r6) +/* 801CEDEC 001CBD4C 38 C6 00 04 */ addi r6, r6, 4 +/* 801CEDF0 001CBD50 C0 21 00 14 */ lfs f1, 0x14(r1) +/* 801CEDF4 001CBD54 C0 03 00 0C */ lfs f0, 0xc(r3) +/* 801CEDF8 001CBD58 C0 41 00 18 */ lfs f2, 0x18(r1) +/* 801CEDFC 001CBD5C EC 01 00 2A */ fadds f0, f1, f0 +/* 801CEE00 001CBD60 C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 801CEE04 001CBD64 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801CEE08 001CBD68 C0 03 00 10 */ lfs f0, 0x10(r3) +/* 801CEE0C 001CBD6C EC 02 00 2A */ fadds f0, f2, f0 +/* 801CEE10 001CBD70 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801CEE14 001CBD74 C0 03 00 14 */ lfs f0, 0x14(r3) +/* 801CEE18 001CBD78 EC 01 00 2A */ fadds f0, f1, f0 +/* 801CEE1C 001CBD7C D0 01 00 1C */ stfs f0, 0x1c(r1) +lbl_801CEE20: +/* 801CEE20 001CBD80 80 85 00 00 */ lwz r4, 0(r5) +/* 801CEE24 001CBD84 54 80 10 3A */ slwi r0, r4, 2 +/* 801CEE28 001CBD88 7C 65 02 14 */ add r3, r5, r0 +/* 801CEE2C 001CBD8C 38 03 00 04 */ addi r0, r3, 4 +/* 801CEE30 001CBD90 7C 06 00 40 */ cmplw r6, r0 +/* 801CEE34 001CBD94 40 82 FF B4 */ bne lbl_801CEDE8 +/* 801CEE38 001CBD98 6C 83 80 00 */ xoris r3, r4, 0x8000 +/* 801CEE3C 001CBD9C 3C 00 43 30 */ lis r0, 0x4330 +/* 801CEE40 001CBDA0 90 61 00 24 */ stw r3, 0x24(r1) +/* 801CEE44 001CBDA4 38 61 00 08 */ addi r3, r1, 8 +/* 801CEE48 001CBDA8 C8 22 AB C0 */ lfd f1, lbl_805AC8E0@sda21(r2) +/* 801CEE4C 001CBDAC 38 81 00 14 */ addi r4, r1, 0x14 +/* 801CEE50 001CBDB0 90 01 00 20 */ stw r0, 0x20(r1) +/* 801CEE54 001CBDB4 C0 82 AB B4 */ lfs f4, lbl_805AC8D4@sda21(r2) +/* 801CEE58 001CBDB8 C8 01 00 20 */ lfd f0, 0x20(r1) +/* 801CEE5C 001CBDBC C0 41 00 18 */ lfs f2, 0x18(r1) +/* 801CEE60 001CBDC0 EC 60 08 28 */ fsubs f3, f0, f1 +/* 801CEE64 001CBDC4 C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 801CEE68 001CBDC8 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 801CEE6C 001CBDCC EC 64 18 24 */ fdivs f3, f4, f3 +/* 801CEE70 001CBDD0 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 801CEE74 001CBDD4 EC 23 00 72 */ fmuls f1, f3, f1 +/* 801CEE78 001CBDD8 EC 03 00 32 */ fmuls f0, f3, f0 +/* 801CEE7C 001CBDDC D0 41 00 18 */ stfs f2, 0x18(r1) +/* 801CEE80 001CBDE0 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801CEE84 001CBDE4 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 801CEE88 001CBDE8 C0 1F 00 0C */ lfs f0, 0xc(r31) +/* 801CEE8C 001CBDEC D0 01 00 08 */ stfs f0, 8(r1) +/* 801CEE90 001CBDF0 C0 1F 00 10 */ lfs f0, 0x10(r31) +/* 801CEE94 001CBDF4 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801CEE98 001CBDF8 C0 1F 00 14 */ lfs f0, 0x14(r31) +/* 801CEE9C 001CBDFC D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801CEEA0 001CBE00 48 14 57 91 */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f +/* 801CEEA4 001CBE04 C0 02 AB C8 */ lfs f0, lbl_805AC8E8@sda21(r2) +/* 801CEEA8 001CBE08 C0 9E 01 40 */ lfs f4, 0x140(r30) +/* 801CEEAC 001CBE0C EC A1 00 24 */ fdivs f5, f1, f0 +/* 801CEEB0 001CBE10 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 801CEEB4 001CBE14 C0 61 00 18 */ lfs f3, 0x18(r1) +/* 801CEEB8 001CBE18 C0 41 00 1C */ lfs f2, 0x1c(r1) +/* 801CEEBC 001CBE1C C0 3F 00 0C */ lfs f1, 0xc(r31) +/* 801CEEC0 001CBE20 EC 04 00 32 */ fmuls f0, f4, f0 +/* 801CEEC4 001CBE24 EC 64 00 F2 */ fmuls f3, f4, f3 +/* 801CEEC8 001CBE28 EC 44 00 B2 */ fmuls f2, f4, f2 +/* 801CEECC 001CBE2C EC 05 00 32 */ fmuls f0, f5, f0 +/* 801CEED0 001CBE30 EC 65 00 F2 */ fmuls f3, f5, f3 +/* 801CEED4 001CBE34 EC 45 00 B2 */ fmuls f2, f5, f2 +/* 801CEED8 001CBE38 EC 01 00 2A */ fadds f0, f1, f0 +/* 801CEEDC 001CBE3C D0 1F 00 0C */ stfs f0, 0xc(r31) +/* 801CEEE0 001CBE40 C0 1F 00 10 */ lfs f0, 0x10(r31) +/* 801CEEE4 001CBE44 EC 00 18 2A */ fadds f0, f0, f3 +/* 801CEEE8 001CBE48 D0 1F 00 10 */ stfs f0, 0x10(r31) +/* 801CEEEC 001CBE4C C0 1F 00 14 */ lfs f0, 0x14(r31) +/* 801CEEF0 001CBE50 EC 00 10 2A */ fadds f0, f0, f2 +/* 801CEEF4 001CBE54 D0 1F 00 14 */ stfs f0, 0x14(r31) +lbl_801CEEF8: +/* 801CEEF8 001CBE58 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801CEEFC 001CBE5C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801CEF00 001CBE60 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801CEF04 001CBE64 7C 08 03 A6 */ mtlr r0 +/* 801CEF08 001CBE68 38 21 00 30 */ addi r1, r1, 0x30 +/* 801CEF0C 001CBE6C 4E 80 00 20 */ blr + +.global sub_801cef10 +sub_801cef10: +/* 801CEF10 001CBE70 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 801CEF14 001CBE74 7C 08 02 A6 */ mflr r0 +/* 801CEF18 001CBE78 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 801CEF1C 001CBE7C DB E1 00 90 */ stfd f31, 0x90(r1) +/* 801CEF20 001CBE80 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 +/* 801CEF24 001CBE84 DB C1 00 80 */ stfd f30, 0x80(r1) +/* 801CEF28 001CBE88 F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 +/* 801CEF2C 001CBE8C DB A1 00 70 */ stfd f29, 0x70(r1) +/* 801CEF30 001CBE90 F3 A1 00 78 */ psq_st f29, 120(r1), 0, qr0 +/* 801CEF34 001CBE94 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 801CEF38 001CBE98 93 C1 00 68 */ stw r30, 0x68(r1) +/* 801CEF3C 001CBE9C 7C 9E 23 78 */ mr r30, r4 +/* 801CEF40 001CBEA0 C0 05 00 08 */ lfs f0, 8(r5) +/* 801CEF44 001CBEA4 C0 64 00 08 */ lfs f3, 8(r4) +/* 801CEF48 001CBEA8 FF A0 08 90 */ fmr f29, f1 +/* 801CEF4C 001CBEAC C0 84 00 04 */ lfs f4, 4(r4) +/* 801CEF50 001CBEB0 FF C0 10 90 */ fmr f30, f2 +/* 801CEF54 001CBEB4 C0 45 00 04 */ lfs f2, 4(r5) +/* 801CEF58 001CBEB8 EC 63 00 28 */ fsubs f3, f3, f0 +/* 801CEF5C 001CBEBC C0 24 00 00 */ lfs f1, 0(r4) +/* 801CEF60 001CBEC0 C0 05 00 00 */ lfs f0, 0(r5) +/* 801CEF64 001CBEC4 EC 44 10 28 */ fsubs f2, f4, f2 +/* 801CEF68 001CBEC8 D0 61 00 58 */ stfs f3, 0x58(r1) +/* 801CEF6C 001CBECC 7C DF 33 78 */ mr r31, r6 +/* 801CEF70 001CBED0 EC 21 00 28 */ fsubs f1, f1, f0 +/* 801CEF74 001CBED4 C0 02 AB B8 */ lfs f0, lbl_805AC8D8@sda21(r2) +/* 801CEF78 001CBED8 D0 41 00 54 */ stfs f2, 0x54(r1) +/* 801CEF7C 001CBEDC 38 61 00 50 */ addi r3, r1, 0x50 +/* 801CEF80 001CBEE0 D0 21 00 50 */ stfs f1, 0x50(r1) +/* 801CEF84 001CBEE4 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 801CEF88 001CBEE8 48 14 59 31 */ bl Magnitude__9CVector3fCFv +/* 801CEF8C 001CBEEC 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 801CEF90 001CBEF0 FF E0 08 90 */ fmr f31, f1 +/* 801CEF94 001CBEF4 41 82 00 5C */ beq lbl_801CEFF0 +/* 801CEF98 001CBEF8 38 61 00 2C */ addi r3, r1, 0x2c +/* 801CEF9C 001CBEFC 38 81 00 50 */ addi r4, r1, 0x50 +/* 801CEFA0 001CBF00 48 14 58 B1 */ bl AsNormalized__9CVector3fCFv +/* 801CEFA4 001CBF04 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 801CEFA8 001CBF08 C0 61 00 30 */ lfs f3, 0x30(r1) +/* 801CEFAC 001CBF0C 38 63 66 F4 */ addi r3, r3, lbl_805A66F4@l +/* 801CEFB0 001CBF10 C0 81 00 34 */ lfs f4, 0x34(r1) +/* 801CEFB4 001CBF14 C0 A3 00 04 */ lfs f5, 4(r3) +/* 801CEFB8 001CBF18 38 81 00 20 */ addi r4, r1, 0x20 +/* 801CEFBC 001CBF1C C0 E3 00 00 */ lfs f7, 0(r3) +/* 801CEFC0 001CBF20 C0 C3 00 08 */ lfs f6, 8(r3) +/* 801CEFC4 001CBF24 EC 45 01 32 */ fmuls f2, f5, f4 +/* 801CEFC8 001CBF28 C1 01 00 2C */ lfs f8, 0x2c(r1) +/* 801CEFCC 001CBF2C EC 07 00 F2 */ fmuls f0, f7, f3 +/* 801CEFD0 001CBF30 EC 26 02 32 */ fmuls f1, f6, f8 +/* 801CEFD4 001CBF34 EC 43 11 B8 */ fmsubs f2, f3, f6, f2 +/* 801CEFD8 001CBF38 EC 08 01 78 */ fmsubs f0, f8, f5, f0 +/* 801CEFDC 001CBF3C EC 24 09 F8 */ fmsubs f1, f4, f7, f1 +/* 801CEFE0 001CBF40 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 801CEFE4 001CBF44 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 801CEFE8 001CBF48 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 801CEFEC 001CBF4C 48 00 00 6C */ b lbl_801CF058 +lbl_801CEFF0: +/* 801CEFF0 001CBF50 C0 02 AB B4 */ lfs f0, lbl_805AC8D4@sda21(r2) +/* 801CEFF4 001CBF54 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 801CEFF8 001CBF58 38 63 66 F4 */ addi r3, r3, lbl_805A66F4@l +/* 801CEFFC 001CBF5C C0 41 00 54 */ lfs f2, 0x54(r1) +/* 801CF000 001CBF60 EC 60 F8 24 */ fdivs f3, f0, f31 +/* 801CF004 001CBF64 C0 21 00 58 */ lfs f1, 0x58(r1) +/* 801CF008 001CBF68 C0 01 00 50 */ lfs f0, 0x50(r1) +/* 801CF00C 001CBF6C 38 81 00 08 */ addi r4, r1, 8 +/* 801CF010 001CBF70 C0 C3 00 04 */ lfs f6, 4(r3) +/* 801CF014 001CBF74 C0 E3 00 08 */ lfs f7, 8(r3) +/* 801CF018 001CBF78 EC A3 00 B2 */ fmuls f5, f3, f2 +/* 801CF01C 001CBF7C C1 03 00 00 */ lfs f8, 0(r3) +/* 801CF020 001CBF80 EC 83 00 72 */ fmuls f4, f3, f1 +/* 801CF024 001CBF84 EC 63 00 32 */ fmuls f3, f3, f0 +/* 801CF028 001CBF88 EC 45 01 F2 */ fmuls f2, f5, f7 +/* 801CF02C 001CBF8C D0 A1 00 18 */ stfs f5, 0x18(r1) +/* 801CF030 001CBF90 EC 24 02 32 */ fmuls f1, f4, f8 +/* 801CF034 001CBF94 EC 03 01 B2 */ fmuls f0, f3, f6 +/* 801CF038 001CBF98 D0 61 00 14 */ stfs f3, 0x14(r1) +/* 801CF03C 001CBF9C EC 46 11 38 */ fmsubs f2, f6, f4, f2 +/* 801CF040 001CBFA0 EC 27 08 F8 */ fmsubs f1, f7, f3, f1 +/* 801CF044 001CBFA4 D0 81 00 1C */ stfs f4, 0x1c(r1) +/* 801CF048 001CBFA8 EC 08 01 78 */ fmsubs f0, f8, f5, f0 +/* 801CF04C 001CBFAC D0 41 00 08 */ stfs f2, 8(r1) +/* 801CF050 001CBFB0 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 801CF054 001CBFB4 D0 01 00 10 */ stfs f0, 0x10(r1) +lbl_801CF058: +/* 801CF058 001CBFB8 C0 04 00 00 */ lfs f0, 0(r4) +/* 801CF05C 001CBFBC FC 1F F0 40 */ fcmpo cr0, f31, f30 +/* 801CF060 001CBFC0 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 801CF064 001CBFC4 C0 04 00 04 */ lfs f0, 4(r4) +/* 801CF068 001CBFC8 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 801CF06C 001CBFCC C0 04 00 08 */ lfs f0, 8(r4) +/* 801CF070 001CBFD0 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 801CF074 001CBFD4 C0 1E 00 0C */ lfs f0, 0xc(r30) +/* 801CF078 001CBFD8 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 801CF07C 001CBFDC C0 1E 00 10 */ lfs f0, 0x10(r30) +/* 801CF080 001CBFE0 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 801CF084 001CBFE4 C0 1E 00 14 */ lfs f0, 0x14(r30) +/* 801CF088 001CBFE8 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 801CF08C 001CBFEC 40 81 00 0C */ ble lbl_801CF098 +/* 801CF090 001CBFF0 C3 C2 AB B8 */ lfs f30, lbl_805AC8D8@sda21(r2) +/* 801CF094 001CBFF4 48 00 00 10 */ b lbl_801CF0A4 +lbl_801CF098: +/* 801CF098 001CBFF8 EC 1F F0 24 */ fdivs f0, f31, f30 +/* 801CF09C 001CBFFC C0 22 AB B4 */ lfs f1, lbl_805AC8D4@sda21(r2) +/* 801CF0A0 001CC000 EF C1 00 28 */ fsubs f30, f1, f0 +lbl_801CF0A4: +/* 801CF0A4 001CC004 38 61 00 38 */ addi r3, r1, 0x38 +/* 801CF0A8 001CC008 38 81 00 44 */ addi r4, r1, 0x44 +/* 801CF0AC 001CC00C 48 14 55 85 */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f +/* 801CF0B0 001CC010 C0 42 AB C8 */ lfs f2, lbl_805AC8E8@sda21(r2) +/* 801CF0B4 001CC014 C0 01 00 44 */ lfs f0, 0x44(r1) +/* 801CF0B8 001CC018 EC 81 10 24 */ fdivs f4, f1, f2 +/* 801CF0BC 001CC01C C0 61 00 48 */ lfs f3, 0x48(r1) +/* 801CF0C0 001CC020 C0 41 00 4C */ lfs f2, 0x4c(r1) +/* 801CF0C4 001CC024 C0 3E 00 0C */ lfs f1, 0xc(r30) +/* 801CF0C8 001CC028 EC 84 07 B2 */ fmuls f4, f4, f30 +/* 801CF0CC 001CC02C EC 1D 00 32 */ fmuls f0, f29, f0 +/* 801CF0D0 001CC030 EC 7D 00 F2 */ fmuls f3, f29, f3 +/* 801CF0D4 001CC034 EC 5D 00 B2 */ fmuls f2, f29, f2 +/* 801CF0D8 001CC038 EC 04 00 32 */ fmuls f0, f4, f0 +/* 801CF0DC 001CC03C EC 64 00 F2 */ fmuls f3, f4, f3 +/* 801CF0E0 001CC040 EC 44 00 B2 */ fmuls f2, f4, f2 +/* 801CF0E4 001CC044 EC 01 00 2A */ fadds f0, f1, f0 +/* 801CF0E8 001CC048 D0 1E 00 0C */ stfs f0, 0xc(r30) +/* 801CF0EC 001CC04C C0 1E 00 10 */ lfs f0, 0x10(r30) +/* 801CF0F0 001CC050 EC 00 18 2A */ fadds f0, f0, f3 +/* 801CF0F4 001CC054 D0 1E 00 10 */ stfs f0, 0x10(r30) +/* 801CF0F8 001CC058 C0 1E 00 14 */ lfs f0, 0x14(r30) +/* 801CF0FC 001CC05C EC 00 10 2A */ fadds f0, f0, f2 +/* 801CF100 001CC060 D0 1E 00 14 */ stfs f0, 0x14(r30) +/* 801CF104 001CC064 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 +/* 801CF108 001CC068 CB E1 00 90 */ lfd f31, 0x90(r1) +/* 801CF10C 001CC06C E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 +/* 801CF110 001CC070 CB C1 00 80 */ lfd f30, 0x80(r1) +/* 801CF114 001CC074 E3 A1 00 78 */ psq_l f29, 120(r1), 0, qr0 +/* 801CF118 001CC078 CB A1 00 70 */ lfd f29, 0x70(r1) +/* 801CF11C 001CC07C 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 801CF120 001CC080 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 801CF124 001CC084 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 801CF128 001CC088 7C 08 03 A6 */ mtlr r0 +/* 801CF12C 001CC08C 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 801CF130 001CC090 4E 80 00 20 */ blr + +.global "BuildBoidNearList__10CFishCloudFRC9CVector3ffRQ24rstl41reserved_vector" +"BuildBoidNearList__10CFishCloudFRC9CVector3ffRQ24rstl41reserved_vector": +/* 801CF134 001CC094 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801CF138 001CC098 7C 08 02 A6 */ mflr r0 +/* 801CF13C 001CC09C 90 01 00 34 */ stw r0, 0x34(r1) +/* 801CF140 001CC0A0 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 801CF144 001CC0A4 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 801CF148 001CC0A8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801CF14C 001CC0AC 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801CF150 001CC0B0 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801CF154 001CC0B4 EF E1 00 72 */ fmuls f31, f1, f1 +/* 801CF158 001CC0B8 7C 9D 23 78 */ mr r29, r4 +/* 801CF15C 001CC0BC 7C BE 2B 78 */ mr r30, r5 +/* 801CF160 001CC0C0 3B E0 00 19 */ li r31, 0x19 +/* 801CF164 001CC0C4 48 00 03 E9 */ bl GetListAt__10CFishCloudFRC9CVector3f +/* 801CF168 001CC0C8 48 00 00 80 */ b lbl_801CF1E8 +lbl_801CF16C: +/* 801CF16C 001CC0CC 88 03 00 20 */ lbz r0, 0x20(r3) +/* 801CF170 001CC0D0 28 00 00 00 */ cmplwi r0, 0 +/* 801CF174 001CC0D4 41 82 00 70 */ beq lbl_801CF1E4 +/* 801CF178 001CC0D8 C0 23 00 04 */ lfs f1, 4(r3) +/* 801CF17C 001CC0DC C0 1D 00 04 */ lfs f0, 4(r29) +/* 801CF180 001CC0E0 C0 63 00 00 */ lfs f3, 0(r3) +/* 801CF184 001CC0E4 EC 21 00 28 */ fsubs f1, f1, f0 +/* 801CF188 001CC0E8 C0 1D 00 00 */ lfs f0, 0(r29) +/* 801CF18C 001CC0EC C0 43 00 08 */ lfs f2, 8(r3) +/* 801CF190 001CC0F0 EC 63 00 28 */ fsubs f3, f3, f0 +/* 801CF194 001CC0F4 C0 1D 00 08 */ lfs f0, 8(r29) +/* 801CF198 001CC0F8 EC 21 00 72 */ fmuls f1, f1, f1 +/* 801CF19C 001CC0FC EC 42 00 28 */ fsubs f2, f2, f0 +/* 801CF1A0 001CC100 C0 02 AB B8 */ lfs f0, lbl_805AC8D8@sda21(r2) +/* 801CF1A4 001CC104 EC 23 08 FA */ fmadds f1, f3, f3, f1 +/* 801CF1A8 001CC108 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 801CF1AC 001CC10C FC 00 08 00 */ fcmpu cr0, f0, f1 +/* 801CF1B0 001CC110 41 82 00 34 */ beq lbl_801CF1E4 +/* 801CF1B4 001CC114 FC 01 F8 40 */ fcmpo cr0, f1, f31 +/* 801CF1B8 001CC118 40 80 00 2C */ bge lbl_801CF1E4 +/* 801CF1BC 001CC11C 80 1E 00 00 */ lwz r0, 0(r30) +/* 801CF1C0 001CC120 54 00 10 3A */ slwi r0, r0, 2 +/* 801CF1C4 001CC124 7C 9E 02 14 */ add r4, r30, r0 +/* 801CF1C8 001CC128 34 84 00 04 */ addic. r4, r4, 4 +/* 801CF1CC 001CC12C 41 82 00 08 */ beq lbl_801CF1D4 +/* 801CF1D0 001CC130 90 64 00 00 */ stw r3, 0(r4) +lbl_801CF1D4: +/* 801CF1D4 001CC134 80 9E 00 00 */ lwz r4, 0(r30) +/* 801CF1D8 001CC138 3B FF FF FF */ addi r31, r31, -1 +/* 801CF1DC 001CC13C 38 04 00 01 */ addi r0, r4, 1 +/* 801CF1E0 001CC140 90 1E 00 00 */ stw r0, 0(r30) +lbl_801CF1E4: +/* 801CF1E4 001CC144 80 63 00 1C */ lwz r3, 0x1c(r3) +lbl_801CF1E8: +/* 801CF1E8 001CC148 28 03 00 00 */ cmplwi r3, 0 +/* 801CF1EC 001CC14C 41 82 00 0C */ beq lbl_801CF1F8 +/* 801CF1F0 001CC150 2C 1F 00 00 */ cmpwi r31, 0 +/* 801CF1F4 001CC154 40 82 FF 78 */ bne lbl_801CF16C +lbl_801CF1F8: +/* 801CF1F8 001CC158 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 801CF1FC 001CC15C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801CF200 001CC160 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 801CF204 001CC164 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801CF208 001CC168 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801CF20C 001CC16C 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801CF210 001CC170 7C 08 03 A6 */ mtlr r0 +/* 801CF214 001CC174 38 21 00 30 */ addi r1, r1, 0x30 +/* 801CF218 001CC178 4E 80 00 20 */ blr + +.global sub_801cf21c +sub_801cf21c: +/* 801CF21C 001CC17C 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 801CF220 001CC180 7C 08 02 A6 */ mflr r0 +/* 801CF224 001CC184 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 801CF228 001CC188 DB E1 00 D0 */ stfd f31, 0xd0(r1) +/* 801CF22C 001CC18C F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 +/* 801CF230 001CC190 DB C1 00 C0 */ stfd f30, 0xc0(r1) +/* 801CF234 001CC194 F3 C1 00 C8 */ psq_st f30, 200(r1), 0, qr0 +/* 801CF238 001CC198 DB A1 00 B0 */ stfd f29, 0xb0(r1) +/* 801CF23C 001CC19C F3 A1 00 B8 */ psq_st f29, 184(r1), 0, qr0 +/* 801CF240 001CC1A0 DB 81 00 A0 */ stfd f28, 0xa0(r1) +/* 801CF244 001CC1A4 F3 81 00 A8 */ psq_st f28, 168(r1), 0, qr0 +/* 801CF248 001CC1A8 DB 61 00 90 */ stfd f27, 0x90(r1) +/* 801CF24C 001CC1AC F3 61 00 98 */ psq_st f27, 152(r1), 0, qr0 +/* 801CF250 001CC1B0 DB 41 00 80 */ stfd f26, 0x80(r1) +/* 801CF254 001CC1B4 F3 41 00 88 */ psq_st f26, 136(r1), 0, qr0 +/* 801CF258 001CC1B8 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 801CF25C 001CC1BC 93 C1 00 78 */ stw r30, 0x78(r1) +/* 801CF260 001CC1C0 93 A1 00 74 */ stw r29, 0x74(r1) +/* 801CF264 001CC1C4 FF 40 08 90 */ fmr f26, f1 +/* 801CF268 001CC1C8 7C 7D 1B 78 */ mr r29, r3 +/* 801CF26C 001CC1CC 7C 9E 23 78 */ mr r30, r4 +/* 801CF270 001CC1D0 7C BF 2B 78 */ mr r31, r5 +/* 801CF274 001CC1D4 7F A4 EB 78 */ mr r4, r29 +/* 801CF278 001CC1D8 38 61 00 20 */ addi r3, r1, 0x20 +/* 801CF27C 001CC1DC EF FA 06 B2 */ fmuls f31, f26, f26 +/* 801CF280 001CC1E0 48 00 2B 61 */ bl GetBoundingBox__10CFishCloudCFv +/* 801CF284 001CC1E4 C0 FD 02 38 */ lfs f7, 0x238(r29) +/* 801CF288 001CC1E8 C0 C1 00 20 */ lfs f6, 0x20(r1) +/* 801CF28C 001CC1EC D0 E1 00 18 */ stfs f7, 0x18(r1) +/* 801CF290 001CC1F0 C0 A1 00 24 */ lfs f5, 0x24(r1) +/* 801CF294 001CC1F4 C0 1D 02 44 */ lfs f0, 0x244(r29) +/* 801CF298 001CC1F8 C0 81 00 28 */ lfs f4, 0x28(r1) +/* 801CF29C 001CC1FC EC 1A 00 32 */ fmuls f0, f26, f0 +/* 801CF2A0 001CC200 C0 61 00 2C */ lfs f3, 0x2c(r1) +/* 801CF2A4 001CC204 C0 41 00 30 */ lfs f2, 0x30(r1) +/* 801CF2A8 001CC208 C0 21 00 34 */ lfs f1, 0x34(r1) +/* 801CF2AC 001CC20C FC 00 38 40 */ fcmpo cr0, f0, f7 +/* 801CF2B0 001CC210 D0 C1 00 38 */ stfs f6, 0x38(r1) +/* 801CF2B4 001CC214 D0 A1 00 3C */ stfs f5, 0x3c(r1) +/* 801CF2B8 001CC218 D0 81 00 40 */ stfs f4, 0x40(r1) +/* 801CF2BC 001CC21C D0 61 00 44 */ stfs f3, 0x44(r1) +/* 801CF2C0 001CC220 D0 41 00 48 */ stfs f2, 0x48(r1) +/* 801CF2C4 001CC224 D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 801CF2C8 001CC228 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801CF2CC 001CC22C 40 80 00 0C */ bge lbl_801CF2D8 +/* 801CF2D0 001CC230 38 61 00 18 */ addi r3, r1, 0x18 +/* 801CF2D4 001CC234 48 00 00 08 */ b lbl_801CF2DC +lbl_801CF2D8: +/* 801CF2D8 001CC238 38 61 00 1C */ addi r3, r1, 0x1c +lbl_801CF2DC: +/* 801CF2DC 001CC23C C0 A3 00 00 */ lfs f5, 0(r3) +/* 801CF2E0 001CC240 C0 3D 02 3C */ lfs f1, 0x23c(r29) +/* 801CF2E4 001CC244 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 801CF2E8 001CC248 C0 1D 02 48 */ lfs f0, 0x248(r29) +/* 801CF2EC 001CC24C EC 1A 00 32 */ fmuls f0, f26, f0 +/* 801CF2F0 001CC250 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801CF2F4 001CC254 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801CF2F8 001CC258 40 80 00 0C */ bge lbl_801CF304 +/* 801CF2FC 001CC25C 38 61 00 10 */ addi r3, r1, 0x10 +/* 801CF300 001CC260 48 00 00 08 */ b lbl_801CF308 +lbl_801CF304: +/* 801CF304 001CC264 38 61 00 14 */ addi r3, r1, 0x14 +lbl_801CF308: +/* 801CF308 001CC268 C0 C3 00 00 */ lfs f6, 0(r3) +/* 801CF30C 001CC26C C0 3D 02 40 */ lfs f1, 0x240(r29) +/* 801CF310 001CC270 D0 21 00 08 */ stfs f1, 8(r1) +/* 801CF314 001CC274 C0 1D 02 4C */ lfs f0, 0x24c(r29) +/* 801CF318 001CC278 EC 1A 00 32 */ fmuls f0, f26, f0 +/* 801CF31C 001CC27C FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801CF320 001CC280 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801CF324 001CC284 40 80 00 0C */ bge lbl_801CF330 +/* 801CF328 001CC288 38 61 00 08 */ addi r3, r1, 8 +/* 801CF32C 001CC28C 48 00 00 08 */ b lbl_801CF334 +lbl_801CF330: +/* 801CF330 001CC290 38 61 00 0C */ addi r3, r1, 0xc +lbl_801CF334: +/* 801CF334 001CC294 C0 02 AB D0 */ lfs f0, lbl_805AC8F0@sda21(r2) +/* 801CF338 001CC298 38 A0 00 19 */ li r5, 0x19 +/* 801CF33C 001CC29C C0 E3 00 00 */ lfs f7, 0(r3) +/* 801CF340 001CC2A0 ED 00 28 28 */ fsubs f8, f0, f5 +/* 801CF344 001CC2A4 C0 21 00 38 */ lfs f1, 0x38(r1) +/* 801CF348 001CC2A8 EC 40 30 28 */ fsubs f2, f0, f6 +/* 801CF34C 001CC2AC EC 60 38 28 */ fsubs f3, f0, f7 +/* 801CF350 001CC2B0 48 00 01 A8 */ b lbl_801CF4F8 +lbl_801CF354: +/* 801CF354 001CC2B4 C0 1E 00 00 */ lfs f0, 0(r30) +/* 801CF358 001CC2B8 ED 28 00 2A */ fadds f9, f8, f0 +/* 801CF35C 001CC2BC FC 09 08 40 */ fcmpo cr0, f9, f1 +/* 801CF360 001CC2C0 41 80 01 90 */ blt lbl_801CF4F0 +/* 801CF364 001CC2C4 C0 01 00 44 */ lfs f0, 0x44(r1) +/* 801CF368 001CC2C8 FC 09 00 40 */ fcmpo cr0, f9, f0 +/* 801CF36C 001CC2CC 4C 41 13 82 */ cror 2, 1, 2 +/* 801CF370 001CC2D0 41 82 01 90 */ beq lbl_801CF500 +/* 801CF374 001CC2D4 FD 40 10 90 */ fmr f10, f2 +/* 801CF378 001CC2D8 C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 801CF37C 001CC2DC 48 00 01 6C */ b lbl_801CF4E8 +lbl_801CF380: +/* 801CF380 001CC2E0 C0 9E 00 04 */ lfs f4, 4(r30) +/* 801CF384 001CC2E4 ED 6A 20 2A */ fadds f11, f10, f4 +/* 801CF388 001CC2E8 FC 0B 00 40 */ fcmpo cr0, f11, f0 +/* 801CF38C 001CC2EC 41 80 01 54 */ blt lbl_801CF4E0 +/* 801CF390 001CC2F0 C0 81 00 48 */ lfs f4, 0x48(r1) +/* 801CF394 001CC2F4 FC 0B 20 40 */ fcmpo cr0, f11, f4 +/* 801CF398 001CC2F8 4C 41 13 82 */ cror 2, 1, 2 +/* 801CF39C 001CC2FC 41 82 01 54 */ beq lbl_801CF4F0 +/* 801CF3A0 001CC300 FD 80 18 90 */ fmr f12, f3 +/* 801CF3A4 001CC304 C0 81 00 40 */ lfs f4, 0x40(r1) +/* 801CF3A8 001CC308 48 00 01 30 */ b lbl_801CF4D8 +lbl_801CF3AC: +/* 801CF3AC 001CC30C C1 BE 00 08 */ lfs f13, 8(r30) +/* 801CF3B0 001CC310 EF 4C 68 2A */ fadds f26, f12, f13 +/* 801CF3B4 001CC314 FC 1A 20 40 */ fcmpo cr0, f26, f4 +/* 801CF3B8 001CC318 41 80 01 18 */ blt lbl_801CF4D0 +/* 801CF3BC 001CC31C C1 A1 00 4C */ lfs f13, 0x4c(r1) +/* 801CF3C0 001CC320 FC 1A 68 40 */ fcmpo cr0, f26, f13 +/* 801CF3C4 001CC324 4C 41 13 82 */ cror 2, 1, 2 +/* 801CF3C8 001CC328 41 82 01 18 */ beq lbl_801CF4E0 +/* 801CF3CC 001CC32C C3 C1 00 3C */ lfs f30, 0x3c(r1) +/* 801CF3D0 001CC330 ED BA 20 28 */ fsubs f13, f26, f4 +/* 801CF3D4 001CC334 C3 BD 02 4C */ lfs f29, 0x24c(r29) +/* 801CF3D8 001CC338 EF CB F0 28 */ fsubs f30, f11, f30 +/* 801CF3DC 001CC33C C3 9D 02 48 */ lfs f28, 0x248(r29) +/* 801CF3E0 001CC340 C3 61 00 38 */ lfs f27, 0x38(r1) +/* 801CF3E4 001CC344 ED BD 03 72 */ fmuls f13, f29, f13 +/* 801CF3E8 001CC348 C3 5D 02 44 */ lfs f26, 0x244(r29) +/* 801CF3EC 001CC34C EF BC 07 B2 */ fmuls f29, f28, f30 +/* 801CF3F0 001CC350 EF 89 D8 28 */ fsubs f28, f9, f27 +/* 801CF3F4 001CC354 FD A0 68 1E */ fctiwz f13, f13 +/* 801CF3F8 001CC358 FF A0 E8 1E */ fctiwz f29, f29 +/* 801CF3FC 001CC35C EF 9A 07 32 */ fmuls f28, f26, f28 +/* 801CF400 001CC360 D9 A1 00 60 */ stfd f13, 0x60(r1) +/* 801CF404 001CC364 DB A1 00 58 */ stfd f29, 0x58(r1) +/* 801CF408 001CC368 FD A0 E0 1E */ fctiwz f13, f28 +/* 801CF40C 001CC36C 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801CF410 001CC370 80 61 00 5C */ lwz r3, 0x5c(r1) +/* 801CF414 001CC374 D9 A1 00 50 */ stfd f13, 0x50(r1) +/* 801CF418 001CC378 1C 00 00 31 */ mulli r0, r0, 0x31 +/* 801CF41C 001CC37C 80 81 00 54 */ lwz r4, 0x54(r1) +/* 801CF420 001CC380 1C 63 00 07 */ mulli r3, r3, 7 +/* 801CF424 001CC384 7C 03 02 14 */ add r0, r3, r0 +/* 801CF428 001CC388 7C 04 02 15 */ add. r0, r4, r0 +/* 801CF42C 001CC38C 41 80 00 A4 */ blt lbl_801CF4D0 +/* 801CF430 001CC390 2C 00 01 57 */ cmpwi r0, 0x157 +/* 801CF434 001CC394 40 80 00 AC */ bge lbl_801CF4E0 +/* 801CF438 001CC398 80 7D 01 04 */ lwz r3, 0x104(r29) +/* 801CF43C 001CC39C 54 00 10 3A */ slwi r0, r0, 2 +/* 801CF440 001CC3A0 7C 83 00 2E */ lwzx r4, r3, r0 +/* 801CF444 001CC3A4 48 00 00 84 */ b lbl_801CF4C8 +lbl_801CF448: +/* 801CF448 001CC3A8 88 04 00 20 */ lbz r0, 0x20(r4) +/* 801CF44C 001CC3AC 28 00 00 00 */ cmplwi r0, 0 +/* 801CF450 001CC3B0 41 82 00 74 */ beq lbl_801CF4C4 +/* 801CF454 001CC3B4 C3 A4 00 04 */ lfs f29, 4(r4) +/* 801CF458 001CC3B8 C1 BE 00 04 */ lfs f13, 4(r30) +/* 801CF45C 001CC3BC C3 C4 00 00 */ lfs f30, 0(r4) +/* 801CF460 001CC3C0 EF 5D 68 28 */ fsubs f26, f29, f13 +/* 801CF464 001CC3C4 C1 BE 00 00 */ lfs f13, 0(r30) +/* 801CF468 001CC3C8 C3 A4 00 08 */ lfs f29, 8(r4) +/* 801CF46C 001CC3CC EF 7E 68 28 */ fsubs f27, f30, f13 +/* 801CF470 001CC3D0 C1 BE 00 08 */ lfs f13, 8(r30) +/* 801CF474 001CC3D4 EF DA 06 B2 */ fmuls f30, f26, f26 +/* 801CF478 001CC3D8 EF 5D 68 28 */ fsubs f26, f29, f13 +/* 801CF47C 001CC3DC C1 A2 AB B8 */ lfs f13, lbl_805AC8D8@sda21(r2) +/* 801CF480 001CC3E0 EF DB F6 FA */ fmadds f30, f27, f27, f30 +/* 801CF484 001CC3E4 EF 5A F6 BA */ fmadds f26, f26, f26, f30 +/* 801CF488 001CC3E8 FC 0D D0 00 */ fcmpu cr0, f13, f26 +/* 801CF48C 001CC3EC 41 82 00 38 */ beq lbl_801CF4C4 +/* 801CF490 001CC3F0 FC 1A F8 40 */ fcmpo cr0, f26, f31 +/* 801CF494 001CC3F4 40 80 00 30 */ bge lbl_801CF4C4 +/* 801CF498 001CC3F8 80 1F 00 00 */ lwz r0, 0(r31) +/* 801CF49C 001CC3FC 54 00 10 3A */ slwi r0, r0, 2 +/* 801CF4A0 001CC400 7C 7F 02 14 */ add r3, r31, r0 +/* 801CF4A4 001CC404 34 63 00 04 */ addic. r3, r3, 4 +/* 801CF4A8 001CC408 41 82 00 08 */ beq lbl_801CF4B0 +/* 801CF4AC 001CC40C 90 83 00 00 */ stw r4, 0(r3) +lbl_801CF4B0: +/* 801CF4B0 001CC410 80 7F 00 00 */ lwz r3, 0(r31) +/* 801CF4B4 001CC414 34 A5 FF FF */ addic. r5, r5, -1 +/* 801CF4B8 001CC418 38 03 00 01 */ addi r0, r3, 1 +/* 801CF4BC 001CC41C 90 1F 00 00 */ stw r0, 0(r31) +/* 801CF4C0 001CC420 41 82 00 40 */ beq lbl_801CF500 +lbl_801CF4C4: +/* 801CF4C4 001CC424 80 84 00 1C */ lwz r4, 0x1c(r4) +lbl_801CF4C8: +/* 801CF4C8 001CC428 28 04 00 00 */ cmplwi r4, 0 +/* 801CF4CC 001CC42C 40 82 FF 7C */ bne lbl_801CF448 +lbl_801CF4D0: +/* 801CF4D0 001CC430 C1 BD 02 40 */ lfs f13, 0x240(r29) +/* 801CF4D4 001CC434 ED 8C 68 2A */ fadds f12, f12, f13 +lbl_801CF4D8: +/* 801CF4D8 001CC438 FC 0C 38 40 */ fcmpo cr0, f12, f7 +/* 801CF4DC 001CC43C 41 80 FE D0 */ blt lbl_801CF3AC +lbl_801CF4E0: +/* 801CF4E0 001CC440 C0 9D 02 3C */ lfs f4, 0x23c(r29) +/* 801CF4E4 001CC444 ED 4A 20 2A */ fadds f10, f10, f4 +lbl_801CF4E8: +/* 801CF4E8 001CC448 FC 0A 30 40 */ fcmpo cr0, f10, f6 +/* 801CF4EC 001CC44C 41 80 FE 94 */ blt lbl_801CF380 +lbl_801CF4F0: +/* 801CF4F0 001CC450 C0 1D 02 38 */ lfs f0, 0x238(r29) +/* 801CF4F4 001CC454 ED 08 00 2A */ fadds f8, f8, f0 +lbl_801CF4F8: +/* 801CF4F8 001CC458 FC 08 28 40 */ fcmpo cr0, f8, f5 +/* 801CF4FC 001CC45C 41 80 FE 58 */ blt lbl_801CF354 +lbl_801CF500: +/* 801CF500 001CC460 E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 +/* 801CF504 001CC464 CB E1 00 D0 */ lfd f31, 0xd0(r1) +/* 801CF508 001CC468 E3 C1 00 C8 */ psq_l f30, 200(r1), 0, qr0 +/* 801CF50C 001CC46C CB C1 00 C0 */ lfd f30, 0xc0(r1) +/* 801CF510 001CC470 E3 A1 00 B8 */ psq_l f29, 184(r1), 0, qr0 +/* 801CF514 001CC474 CB A1 00 B0 */ lfd f29, 0xb0(r1) +/* 801CF518 001CC478 E3 81 00 A8 */ psq_l f28, 168(r1), 0, qr0 +/* 801CF51C 001CC47C CB 81 00 A0 */ lfd f28, 0xa0(r1) +/* 801CF520 001CC480 E3 61 00 98 */ psq_l f27, 152(r1), 0, qr0 +/* 801CF524 001CC484 CB 61 00 90 */ lfd f27, 0x90(r1) +/* 801CF528 001CC488 E3 41 00 88 */ psq_l f26, 136(r1), 0, qr0 +/* 801CF52C 001CC48C CB 41 00 80 */ lfd f26, 0x80(r1) +/* 801CF530 001CC490 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 801CF534 001CC494 83 C1 00 78 */ lwz r30, 0x78(r1) +/* 801CF538 001CC498 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 801CF53C 001CC49C 83 A1 00 74 */ lwz r29, 0x74(r1) +/* 801CF540 001CC4A0 7C 08 03 A6 */ mtlr r0 +/* 801CF544 001CC4A4 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 801CF548 001CC4A8 4E 80 00 20 */ blr + +.global GetListAt__10CFishCloudFRC9CVector3f +GetListAt__10CFishCloudFRC9CVector3f: +/* 801CF54C 001CC4AC 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801CF550 001CC4B0 7C 08 02 A6 */ mflr r0 +/* 801CF554 001CC4B4 90 01 00 64 */ stw r0, 0x64(r1) +/* 801CF558 001CC4B8 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 801CF55C 001CC4BC 7C 9F 23 78 */ mr r31, r4 +/* 801CF560 001CC4C0 93 C1 00 58 */ stw r30, 0x58(r1) +/* 801CF564 001CC4C4 7C 7E 1B 78 */ mr r30, r3 +/* 801CF568 001CC4C8 7F C4 F3 78 */ mr r4, r30 +/* 801CF56C 001CC4CC 38 61 00 08 */ addi r3, r1, 8 +/* 801CF570 001CC4D0 48 00 28 71 */ bl GetBoundingBox__10CFishCloudCFv +/* 801CF574 001CC4D4 C0 E1 00 0C */ lfs f7, 0xc(r1) +/* 801CF578 001CC4D8 C0 C1 00 10 */ lfs f6, 0x10(r1) +/* 801CF57C 001CC4DC C0 3F 00 04 */ lfs f1, 4(r31) +/* 801CF580 001CC4E0 C0 1F 00 08 */ lfs f0, 8(r31) +/* 801CF584 001CC4E4 C1 01 00 08 */ lfs f8, 8(r1) +/* 801CF588 001CC4E8 EC 41 38 28 */ fsubs f2, f1, f7 +/* 801CF58C 001CC4EC C0 7E 02 48 */ lfs f3, 0x248(r30) +/* 801CF590 001CC4F0 EC 00 30 28 */ fsubs f0, f0, f6 +/* 801CF594 001CC4F4 C0 3E 02 4C */ lfs f1, 0x24c(r30) +/* 801CF598 001CC4F8 C0 9F 00 00 */ lfs f4, 0(r31) +/* 801CF59C 001CC4FC EC 43 00 B2 */ fmuls f2, f3, f2 +/* 801CF5A0 001CC500 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801CF5A4 001CC504 C0 BE 02 44 */ lfs f5, 0x244(r30) +/* 801CF5A8 001CC508 EC 64 40 28 */ fsubs f3, f4, f8 +/* 801CF5AC 001CC50C C0 81 00 14 */ lfs f4, 0x14(r1) +/* 801CF5B0 001CC510 FC 20 10 1E */ fctiwz f1, f2 +/* 801CF5B4 001CC514 FC 00 00 1E */ fctiwz f0, f0 +/* 801CF5B8 001CC518 EC 45 00 F2 */ fmuls f2, f5, f3 +/* 801CF5BC 001CC51C C0 61 00 18 */ lfs f3, 0x18(r1) +/* 801CF5C0 001CC520 D8 21 00 40 */ stfd f1, 0x40(r1) +/* 801CF5C4 001CC524 C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 801CF5C8 001CC528 D8 01 00 48 */ stfd f0, 0x48(r1) +/* 801CF5CC 001CC52C FC 00 10 1E */ fctiwz f0, f2 +/* 801CF5D0 001CC530 80 61 00 44 */ lwz r3, 0x44(r1) +/* 801CF5D4 001CC534 80 01 00 4C */ lwz r0, 0x4c(r1) +/* 801CF5D8 001CC538 D8 01 00 38 */ stfd f0, 0x38(r1) +/* 801CF5DC 001CC53C 1C 63 00 07 */ mulli r3, r3, 7 +/* 801CF5E0 001CC540 80 81 00 3C */ lwz r4, 0x3c(r1) +/* 801CF5E4 001CC544 1C 00 00 31 */ mulli r0, r0, 0x31 +/* 801CF5E8 001CC548 D1 01 00 20 */ stfs f8, 0x20(r1) +/* 801CF5EC 001CC54C D0 E1 00 24 */ stfs f7, 0x24(r1) +/* 801CF5F0 001CC550 7C 03 02 14 */ add r0, r3, r0 +/* 801CF5F4 001CC554 7C 04 02 15 */ add. r0, r4, r0 +/* 801CF5F8 001CC558 D0 C1 00 28 */ stfs f6, 0x28(r1) +/* 801CF5FC 001CC55C D0 81 00 2C */ stfs f4, 0x2c(r1) +/* 801CF600 001CC560 D0 61 00 30 */ stfs f3, 0x30(r1) +/* 801CF604 001CC564 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 801CF608 001CC568 41 80 00 0C */ blt lbl_801CF614 +/* 801CF60C 001CC56C 2C 00 01 57 */ cmpwi r0, 0x157 +/* 801CF610 001CC570 41 80 00 0C */ blt lbl_801CF61C +lbl_801CF614: +/* 801CF614 001CC574 38 60 00 00 */ li r3, 0 +/* 801CF618 001CC578 48 00 00 10 */ b lbl_801CF628 +lbl_801CF61C: +/* 801CF61C 001CC57C 80 7E 01 04 */ lwz r3, 0x104(r30) +/* 801CF620 001CC580 54 00 10 3A */ slwi r0, r0, 2 +/* 801CF624 001CC584 7C 63 00 2E */ lwzx r3, r3, r0 +lbl_801CF628: +/* 801CF628 001CC588 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801CF62C 001CC58C 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 801CF630 001CC590 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 801CF634 001CC594 7C 08 03 A6 */ mtlr r0 +/* 801CF638 001CC598 38 21 00 60 */ addi r1, r1, 0x60 +/* 801CF63C 001CC59C 4E 80 00 20 */ blr + +.global UpdatePartitionList__10CFishCloudFv +UpdatePartitionList__10CFishCloudFv: +/* 801CF640 001CC5A0 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 801CF644 001CC5A4 7C 08 02 A6 */ mflr r0 +/* 801CF648 001CC5A8 90 01 00 74 */ stw r0, 0x74(r1) +/* 801CF64C 001CC5AC 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 801CF650 001CC5B0 7C 7F 1B 78 */ mr r31, r3 +/* 801CF654 001CC5B4 93 C1 00 68 */ stw r30, 0x68(r1) +/* 801CF658 001CC5B8 93 A1 00 64 */ stw r29, 0x64(r1) +/* 801CF65C 001CC5BC 80 03 00 FC */ lwz r0, 0xfc(r3) +/* 801CF660 001CC5C0 80 63 01 04 */ lwz r3, 0x104(r3) +/* 801CF664 001CC5C4 54 00 10 3A */ slwi r0, r0, 2 +/* 801CF668 001CC5C8 7C 03 02 14 */ add r0, r3, r0 +/* 801CF66C 001CC5CC 90 61 00 0C */ stw r3, 0xc(r1) +/* 801CF670 001CC5D0 90 01 00 14 */ stw r0, 0x14(r1) +/* 801CF674 001CC5D4 90 01 00 10 */ stw r0, 0x10(r1) +/* 801CF678 001CC5D8 90 61 00 08 */ stw r3, 8(r1) +/* 801CF67C 001CC5DC 48 00 00 08 */ b lbl_801CF684 +lbl_801CF680: +/* 801CF680 001CC5E0 38 63 00 04 */ addi r3, r3, 4 +lbl_801CF684: +/* 801CF684 001CC5E4 7C 03 00 40 */ cmplw r3, r0 +/* 801CF688 001CC5E8 40 82 FF F8 */ bne lbl_801CF680 +/* 801CF68C 001CC5EC 3B C0 00 00 */ li r30, 0 +/* 801CF690 001CC5F0 3B A0 00 00 */ li r29, 0 +/* 801CF694 001CC5F4 93 DF 00 FC */ stw r30, 0xfc(r31) +/* 801CF698 001CC5F8 48 00 00 50 */ b lbl_801CF6E8 +lbl_801CF69C: +/* 801CF69C 001CC5FC 80 1F 00 FC */ lwz r0, 0xfc(r31) +/* 801CF6A0 001CC600 7C 00 28 00 */ cmpw r0, r5 +/* 801CF6A4 001CC604 41 80 00 1C */ blt lbl_801CF6C0 +/* 801CF6A8 001CC608 2C 05 00 00 */ cmpwi r5, 0 +/* 801CF6AC 001CC60C 38 7F 00 F8 */ addi r3, r31, 0xf8 +/* 801CF6B0 001CC610 38 80 00 04 */ li r4, 4 +/* 801CF6B4 001CC614 41 82 00 08 */ beq lbl_801CF6BC +/* 801CF6B8 001CC618 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801CF6BC: +/* 801CF6BC 001CC61C 48 00 3E D1 */ bl "reserve__Q24rstl56vectorFi" +lbl_801CF6C0: +/* 801CF6C0 001CC620 80 1F 00 FC */ lwz r0, 0xfc(r31) +/* 801CF6C4 001CC624 80 7F 01 04 */ lwz r3, 0x104(r31) +/* 801CF6C8 001CC628 54 00 10 3A */ slwi r0, r0, 2 +/* 801CF6CC 001CC62C 7C 63 02 15 */ add. r3, r3, r0 +/* 801CF6D0 001CC630 41 82 00 08 */ beq lbl_801CF6D8 +/* 801CF6D4 001CC634 93 C3 00 00 */ stw r30, 0(r3) +lbl_801CF6D8: +/* 801CF6D8 001CC638 80 7F 00 FC */ lwz r3, 0xfc(r31) +/* 801CF6DC 001CC63C 3B BD 00 01 */ addi r29, r29, 1 +/* 801CF6E0 001CC640 38 03 00 01 */ addi r0, r3, 1 +/* 801CF6E4 001CC644 90 1F 00 FC */ stw r0, 0xfc(r31) +lbl_801CF6E8: +/* 801CF6E8 001CC648 80 BF 01 00 */ lwz r5, 0x100(r31) +/* 801CF6EC 001CC64C 7C 1D 28 00 */ cmpw r29, r5 +/* 801CF6F0 001CC650 41 80 FF AC */ blt lbl_801CF69C +/* 801CF6F4 001CC654 7F E4 FB 78 */ mr r4, r31 +/* 801CF6F8 001CC658 38 61 00 18 */ addi r3, r1, 0x18 +/* 801CF6FC 001CC65C 48 00 26 E5 */ bl GetBoundingBox__10CFishCloudCFv +/* 801CF700 001CC660 C1 01 00 18 */ lfs f8, 0x18(r1) +/* 801CF704 001CC664 C0 E1 00 1C */ lfs f7, 0x1c(r1) +/* 801CF708 001CC668 C0 A1 00 20 */ lfs f5, 0x20(r1) +/* 801CF70C 001CC66C FC C0 40 18 */ frsp f6, f8 +/* 801CF710 001CC670 C0 61 00 24 */ lfs f3, 0x24(r1) +/* 801CF714 001CC674 FC 80 38 18 */ frsp f4, f7 +/* 801CF718 001CC678 C0 41 00 28 */ lfs f2, 0x28(r1) +/* 801CF71C 001CC67C FC 20 28 18 */ frsp f1, f5 +/* 801CF720 001CC680 C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 801CF724 001CC684 D1 01 00 30 */ stfs f8, 0x30(r1) +/* 801CF728 001CC688 80 BF 00 F4 */ lwz r5, 0xf4(r31) +/* 801CF72C 001CC68C D0 E1 00 34 */ stfs f7, 0x34(r1) +/* 801CF730 001CC690 D0 A1 00 38 */ stfs f5, 0x38(r1) +/* 801CF734 001CC694 D0 61 00 3C */ stfs f3, 0x3c(r1) +/* 801CF738 001CC698 D0 41 00 40 */ stfs f2, 0x40(r1) +/* 801CF73C 001CC69C D0 01 00 44 */ stfs f0, 0x44(r1) +/* 801CF740 001CC6A0 48 00 00 90 */ b lbl_801CF7D0 +lbl_801CF744: +/* 801CF744 001CC6A4 C0 45 00 04 */ lfs f2, 4(r5) +/* 801CF748 001CC6A8 C0 05 00 08 */ lfs f0, 8(r5) +/* 801CF74C 001CC6AC EC 62 20 28 */ fsubs f3, f2, f4 +/* 801CF750 001CC6B0 C0 BF 02 48 */ lfs f5, 0x248(r31) +/* 801CF754 001CC6B4 EC 00 08 28 */ fsubs f0, f0, f1 +/* 801CF758 001CC6B8 C0 5F 02 4C */ lfs f2, 0x24c(r31) +/* 801CF75C 001CC6BC C0 E5 00 00 */ lfs f7, 0(r5) +/* 801CF760 001CC6C0 EC 65 00 F2 */ fmuls f3, f5, f3 +/* 801CF764 001CC6C4 EC 02 00 32 */ fmuls f0, f2, f0 +/* 801CF768 001CC6C8 C1 1F 02 44 */ lfs f8, 0x244(r31) +/* 801CF76C 001CC6CC EC A7 30 28 */ fsubs f5, f7, f6 +/* 801CF770 001CC6D0 FC 40 18 1E */ fctiwz f2, f3 +/* 801CF774 001CC6D4 FC 00 00 1E */ fctiwz f0, f0 +/* 801CF778 001CC6D8 EC 68 01 72 */ fmuls f3, f8, f5 +/* 801CF77C 001CC6DC D8 41 00 50 */ stfd f2, 0x50(r1) +/* 801CF780 001CC6E0 D8 01 00 58 */ stfd f0, 0x58(r1) +/* 801CF784 001CC6E4 FC 00 18 1E */ fctiwz f0, f3 +/* 801CF788 001CC6E8 80 61 00 54 */ lwz r3, 0x54(r1) +/* 801CF78C 001CC6EC 80 01 00 5C */ lwz r0, 0x5c(r1) +/* 801CF790 001CC6F0 D8 01 00 48 */ stfd f0, 0x48(r1) +/* 801CF794 001CC6F4 1C 63 00 07 */ mulli r3, r3, 7 +/* 801CF798 001CC6F8 80 81 00 4C */ lwz r4, 0x4c(r1) +/* 801CF79C 001CC6FC 1C 00 00 31 */ mulli r0, r0, 0x31 +/* 801CF7A0 001CC700 7C 03 02 14 */ add r0, r3, r0 +/* 801CF7A4 001CC704 7C 04 02 15 */ add. r0, r4, r0 +/* 801CF7A8 001CC708 41 80 00 24 */ blt lbl_801CF7CC +/* 801CF7AC 001CC70C 2C 00 01 57 */ cmpwi r0, 0x157 +/* 801CF7B0 001CC710 40 80 00 1C */ bge lbl_801CF7CC +/* 801CF7B4 001CC714 80 7F 01 04 */ lwz r3, 0x104(r31) +/* 801CF7B8 001CC718 54 04 10 3A */ slwi r4, r0, 2 +/* 801CF7BC 001CC71C 7C 03 20 2E */ lwzx r0, r3, r4 +/* 801CF7C0 001CC720 90 05 00 1C */ stw r0, 0x1c(r5) +/* 801CF7C4 001CC724 80 7F 01 04 */ lwz r3, 0x104(r31) +/* 801CF7C8 001CC728 7C A3 21 2E */ stwx r5, r3, r4 +lbl_801CF7CC: +/* 801CF7CC 001CC72C 38 A5 00 24 */ addi r5, r5, 0x24 +lbl_801CF7D0: +/* 801CF7D0 001CC730 80 1F 00 EC */ lwz r0, 0xec(r31) +/* 801CF7D4 001CC734 80 7F 00 F4 */ lwz r3, 0xf4(r31) +/* 801CF7D8 001CC738 1C 00 00 24 */ mulli r0, r0, 0x24 +/* 801CF7DC 001CC73C 7C 03 02 14 */ add r0, r3, r0 +/* 801CF7E0 001CC740 7C 05 00 40 */ cmplw r5, r0 +/* 801CF7E4 001CC744 40 82 FF 60 */ bne lbl_801CF744 +/* 801CF7E8 001CC748 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801CF7EC 001CC74C 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 801CF7F0 001CC750 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 801CF7F4 001CC754 83 A1 00 64 */ lwz r29, 0x64(r1) +/* 801CF7F8 001CC758 7C 08 03 A6 */ mtlr r0 +/* 801CF7FC 001CC75C 38 21 00 70 */ addi r1, r1, 0x70 +/* 801CF800 001CC760 4E 80 00 20 */ blr + +.global CreatePartitionList__10CFishCloudFv +CreatePartitionList__10CFishCloudFv: +/* 801CF804 001CC764 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801CF808 001CC768 7C 08 02 A6 */ mflr r0 +/* 801CF80C 001CC76C 90 01 00 34 */ stw r0, 0x34(r1) +/* 801CF810 001CC770 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801CF814 001CC774 7C 7F 1B 78 */ mr r31, r3 +/* 801CF818 001CC778 38 61 00 08 */ addi r3, r1, 8 +/* 801CF81C 001CC77C 7F E4 FB 78 */ mr r4, r31 +/* 801CF820 001CC780 48 00 25 C1 */ bl GetBoundingBox__10CFishCloudCFv +/* 801CF824 001CC784 38 7F 00 F8 */ addi r3, r31, 0xf8 +/* 801CF828 001CC788 38 80 01 57 */ li r4, 0x157 +/* 801CF82C 001CC78C 48 00 3D 61 */ bl "reserve__Q24rstl56vectorFi" +/* 801CF830 001CC790 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801CF834 001CC794 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801CF838 001CC798 7C 08 03 A6 */ mtlr r0 +/* 801CF83C 001CC79C 38 21 00 30 */ addi r1, r1, 0x30 +/* 801CF840 001CC7A0 4E 80 00 20 */ blr + +.global Touch__10CFishCloudFR6CActorR13CStateManager +Touch__10CFishCloudFR6CActorR13CStateManager: +/* 801CF844 001CC7A4 94 21 FE D0 */ stwu r1, -0x130(r1) +/* 801CF848 001CC7A8 7C 08 02 A6 */ mflr r0 +/* 801CF84C 001CC7AC 90 01 01 34 */ stw r0, 0x134(r1) +/* 801CF850 001CC7B0 DB E1 01 20 */ stfd f31, 0x120(r1) +/* 801CF854 001CC7B4 F3 E1 01 28 */ psq_st f31, 296(r1), 0, qr0 +/* 801CF858 001CC7B8 DB C1 01 10 */ stfd f30, 0x110(r1) +/* 801CF85C 001CC7BC F3 C1 01 18 */ psq_st f30, 280(r1), 0, qr0 +/* 801CF860 001CC7C0 DB A1 01 00 */ stfd f29, 0x100(r1) +/* 801CF864 001CC7C4 F3 A1 01 08 */ psq_st f29, 264(r1), 0, qr0 +/* 801CF868 001CC7C8 DB 81 00 F0 */ stfd f28, 0xf0(r1) +/* 801CF86C 001CC7CC F3 81 00 F8 */ psq_st f28, 248(r1), 0, qr0 +/* 801CF870 001CC7D0 DB 61 00 E0 */ stfd f27, 0xe0(r1) +/* 801CF874 001CC7D4 F3 61 00 E8 */ psq_st f27, 232(r1), 0, qr0 +/* 801CF878 001CC7D8 DB 41 00 D0 */ stfd f26, 0xd0(r1) +/* 801CF87C 001CC7DC F3 41 00 D8 */ psq_st f26, 216(r1), 0, qr0 +/* 801CF880 001CC7E0 BF 41 00 B8 */ stmw r26, 0xb8(r1) +/* 801CF884 001CC7E4 7C 7C 1B 78 */ mr r28, r3 +/* 801CF888 001CC7E8 7C 9D 23 78 */ mr r29, r4 +/* 801CF88C 001CC7EC 7C BE 2B 78 */ mr r30, r5 +/* 801CF890 001CC7F0 4B E8 4B 79 */ bl Touch__6CActorFR6CActorR13CStateManager +/* 801CF894 001CC7F4 7F A4 EB 78 */ mr r4, r29 +/* 801CF898 001CC7F8 38 61 00 10 */ addi r3, r1, 0x10 +/* 801CF89C 001CC7FC 4B ED 60 69 */ bl "__ct__20TCastToPtr<7CWeapon>FR7CEntity" +/* 801CF8A0 001CC800 83 E3 00 04 */ lwz r31, 4(r3) +/* 801CF8A4 001CC804 28 1F 00 00 */ cmplwi r31, 0 +/* 801CF8A8 001CC808 41 82 01 F8 */ beq lbl_801CFAA0 +/* 801CF8AC 001CC80C 88 7C 02 50 */ lbz r3, 0x250(r28) +/* 801CF8B0 001CC810 54 60 DF FF */ rlwinm. r0, r3, 0x1b, 0x1f, 0x1f +/* 801CF8B4 001CC814 40 82 00 84 */ bne lbl_801CF938 +/* 801CF8B8 001CC818 54 60 F7 FF */ rlwinm. r0, r3, 0x1e, 0x1f, 0x1f +/* 801CF8BC 001CC81C 41 82 00 7C */ beq lbl_801CF938 +/* 801CF8C0 001CC820 83 7C 00 F4 */ lwz r27, 0xf4(r28) +/* 801CF8C4 001CC824 3B 40 00 00 */ li r26, 0 +/* 801CF8C8 001CC828 48 00 00 58 */ b lbl_801CF920 +lbl_801CF8CC: +/* 801CF8CC 001CC82C 80 1C 01 18 */ lwz r0, 0x118(r28) +/* 801CF8D0 001CC830 57 43 07 BE */ clrlwi r3, r26, 0x1e +/* 801CF8D4 001CC834 54 00 07 BE */ clrlwi r0, r0, 0x1e +/* 801CF8D8 001CC838 7C 03 00 00 */ cmpw r3, r0 +/* 801CF8DC 001CC83C 40 82 00 3C */ bne lbl_801CF918 +/* 801CF8E0 001CC840 C0 7F 00 60 */ lfs f3, 0x60(r31) +/* 801CF8E4 001CC844 7F 83 E3 78 */ mr r3, r28 +/* 801CF8E8 001CC848 C0 5F 00 50 */ lfs f2, 0x50(r31) +/* 801CF8EC 001CC84C 7F 64 DB 78 */ mr r4, r27 +/* 801CF8F0 001CC850 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801CF8F4 001CC854 38 A1 00 30 */ addi r5, r1, 0x30 +/* 801CF8F8 001CC858 C0 22 AB D4 */ lfs f1, lbl_805AC8F4@sda21(r2) +/* 801CF8FC 001CC85C D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801CF900 001CC860 D0 41 00 34 */ stfs f2, 0x34(r1) +/* 801CF904 001CC864 D0 61 00 38 */ stfs f3, 0x38(r1) +/* 801CF908 001CC868 C0 5C 01 48 */ lfs f2, 0x148(r28) +/* 801CF90C 001CC86C C0 1C 01 68 */ lfs f0, 0x168(r28) +/* 801CF910 001CC870 EC 42 00 28 */ fsubs f2, f2, f0 +/* 801CF914 001CC874 4B FF EE 6D */ bl ApplyRepulsion__10CFishCloudFRQ210CFishCloud5CBoidRC9CVector3fff +lbl_801CF918: +/* 801CF918 001CC878 3B 7B 00 24 */ addi r27, r27, 0x24 +/* 801CF91C 001CC87C 3B 5A 00 01 */ addi r26, r26, 1 +lbl_801CF920: +/* 801CF920 001CC880 80 1C 00 EC */ lwz r0, 0xec(r28) +/* 801CF924 001CC884 80 7C 00 F4 */ lwz r3, 0xf4(r28) +/* 801CF928 001CC888 1C 00 00 24 */ mulli r0, r0, 0x24 +/* 801CF92C 001CC88C 7C 03 02 14 */ add r0, r3, r0 +/* 801CF930 001CC890 7C 1B 00 40 */ cmplw r27, r0 +/* 801CF934 001CC894 40 82 FF 98 */ bne lbl_801CF8CC +lbl_801CF938: +/* 801CF938 001CC898 88 1C 02 50 */ lbz r0, 0x250(r28) +/* 801CF93C 001CC89C 38 60 00 01 */ li r3, 1 +/* 801CF940 001CC8A0 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 801CF944 001CC8A4 98 1C 02 50 */ stb r0, 0x250(r28) +/* 801CF948 001CC8A8 88 1C 02 50 */ lbz r0, 0x250(r28) +/* 801CF94C 001CC8AC 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 801CF950 001CC8B0 41 82 01 50 */ beq lbl_801CFAA0 +/* 801CF954 001CC8B4 7F E4 FB 78 */ mr r4, r31 +/* 801CF958 001CC8B8 38 61 00 48 */ addi r3, r1, 0x48 +/* 801CF95C 001CC8BC 81 9F 00 00 */ lwz r12, 0(r31) +/* 801CF960 001CC8C0 81 8C 00 40 */ lwz r12, 0x40(r12) +/* 801CF964 001CC8C4 7D 89 03 A6 */ mtctr r12 +/* 801CF968 001CC8C8 4E 80 04 21 */ bctrl +/* 801CF96C 001CC8CC 88 01 00 60 */ lbz r0, 0x60(r1) +/* 801CF970 001CC8D0 28 00 00 00 */ cmplwi r0, 0 +/* 801CF974 001CC8D4 98 01 00 AC */ stb r0, 0xac(r1) +/* 801CF978 001CC8D8 41 82 00 3C */ beq lbl_801CF9B4 +/* 801CF97C 001CC8DC 34 61 00 94 */ addic. r3, r1, 0x94 +/* 801CF980 001CC8E0 41 82 00 34 */ beq lbl_801CF9B4 +/* 801CF984 001CC8E4 C0 01 00 48 */ lfs f0, 0x48(r1) +/* 801CF988 001CC8E8 D0 03 00 00 */ stfs f0, 0(r3) +/* 801CF98C 001CC8EC C0 01 00 4C */ lfs f0, 0x4c(r1) +/* 801CF990 001CC8F0 D0 03 00 04 */ stfs f0, 4(r3) +/* 801CF994 001CC8F4 C0 01 00 50 */ lfs f0, 0x50(r1) +/* 801CF998 001CC8F8 D0 03 00 08 */ stfs f0, 8(r3) +/* 801CF99C 001CC8FC C0 01 00 54 */ lfs f0, 0x54(r1) +/* 801CF9A0 001CC900 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 801CF9A4 001CC904 C0 01 00 58 */ lfs f0, 0x58(r1) +/* 801CF9A8 001CC908 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 801CF9AC 001CC90C C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 801CF9B0 001CC910 D0 03 00 14 */ stfs f0, 0x14(r3) +lbl_801CF9B4: +/* 801CF9B4 001CC914 88 01 00 AC */ lbz r0, 0xac(r1) +/* 801CF9B8 001CC918 38 60 00 00 */ li r3, 0 +/* 801CF9BC 001CC91C 98 61 00 60 */ stb r3, 0x60(r1) +/* 801CF9C0 001CC920 28 00 00 00 */ cmplwi r0, 0 +/* 801CF9C4 001CC924 41 82 00 D4 */ beq lbl_801CFA98 +/* 801CF9C8 001CC928 C0 A1 00 94 */ lfs f5, 0x94(r1) +/* 801CF9CC 001CC92C C0 81 00 98 */ lfs f4, 0x98(r1) +/* 801CF9D0 001CC930 C0 61 00 9C */ lfs f3, 0x9c(r1) +/* 801CF9D4 001CC934 C0 41 00 A0 */ lfs f2, 0xa0(r1) +/* 801CF9D8 001CC938 C0 21 00 A4 */ lfs f1, 0xa4(r1) +/* 801CF9DC 001CC93C C0 01 00 A8 */ lfs f0, 0xa8(r1) +/* 801CF9E0 001CC940 D0 A1 00 7C */ stfs f5, 0x7c(r1) +/* 801CF9E4 001CC944 D0 81 00 80 */ stfs f4, 0x80(r1) +/* 801CF9E8 001CC948 D0 61 00 84 */ stfs f3, 0x84(r1) +/* 801CF9EC 001CC94C D0 41 00 88 */ stfs f2, 0x88(r1) +/* 801CF9F0 001CC950 D0 21 00 8C */ stfs f1, 0x8c(r1) +/* 801CF9F4 001CC954 D0 01 00 90 */ stfs f0, 0x90(r1) +/* 801CF9F8 001CC958 C3 5C 01 70 */ lfs f26, 0x170(r28) +/* 801CF9FC 001CC95C 83 7C 00 F4 */ lwz r27, 0xf4(r28) +/* 801CFA00 001CC960 48 00 00 80 */ b lbl_801CFA80 +lbl_801CFA04: +/* 801CFA04 001CC964 88 1B 00 20 */ lbz r0, 0x20(r27) +/* 801CFA08 001CC968 28 00 00 00 */ cmplwi r0, 0 +/* 801CFA0C 001CC96C 41 82 00 70 */ beq lbl_801CFA7C +/* 801CFA10 001CC970 C0 7B 00 04 */ lfs f3, 4(r27) +/* 801CFA14 001CC974 38 61 00 64 */ addi r3, r1, 0x64 +/* 801CFA18 001CC978 C0 5B 00 08 */ lfs f2, 8(r27) +/* 801CFA1C 001CC97C 38 81 00 24 */ addi r4, r1, 0x24 +/* 801CFA20 001CC980 C0 1B 00 00 */ lfs f0, 0(r27) +/* 801CFA24 001CC984 EC A3 D0 2A */ fadds f5, f3, f26 +/* 801CFA28 001CC988 EC 82 D0 2A */ fadds f4, f2, f26 +/* 801CFA2C 001CC98C 38 A1 00 18 */ addi r5, r1, 0x18 +/* 801CFA30 001CC990 EC 20 D0 2A */ fadds f1, f0, f26 +/* 801CFA34 001CC994 EC 63 D0 28 */ fsubs f3, f3, f26 +/* 801CFA38 001CC998 D0 A1 00 1C */ stfs f5, 0x1c(r1) +/* 801CFA3C 001CC99C EC 42 D0 28 */ fsubs f2, f2, f26 +/* 801CFA40 001CC9A0 EC 00 D0 28 */ fsubs f0, f0, f26 +/* 801CFA44 001CC9A4 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801CFA48 001CC9A8 D0 81 00 20 */ stfs f4, 0x20(r1) +/* 801CFA4C 001CC9AC D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801CFA50 001CC9B0 D0 61 00 28 */ stfs f3, 0x28(r1) +/* 801CFA54 001CC9B4 D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 801CFA58 001CC9B8 48 16 8A B1 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801CFA5C 001CC9BC 38 61 00 7C */ addi r3, r1, 0x7c +/* 801CFA60 001CC9C0 38 81 00 64 */ addi r4, r1, 0x64 +/* 801CFA64 001CC9C4 48 16 81 21 */ bl DoBoundsOverlap__6CAABoxCFRC6CAABox +/* 801CFA68 001CC9C8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801CFA6C 001CC9CC 41 82 00 10 */ beq lbl_801CFA7C +/* 801CFA70 001CC9D0 7F 83 E3 78 */ mr r3, r28 +/* 801CFA74 001CC9D4 7F 64 DB 78 */ mr r4, r27 +/* 801CFA78 001CC9D8 48 00 01 5D */ bl sub_801cfbd4 +lbl_801CFA7C: +/* 801CFA7C 001CC9DC 3B 7B 00 24 */ addi r27, r27, 0x24 +lbl_801CFA80: +/* 801CFA80 001CC9E0 80 1C 00 EC */ lwz r0, 0xec(r28) +/* 801CFA84 001CC9E4 80 7C 00 F4 */ lwz r3, 0xf4(r28) +/* 801CFA88 001CC9E8 1C 00 00 24 */ mulli r0, r0, 0x24 +/* 801CFA8C 001CC9EC 7C 03 02 14 */ add r0, r3, r0 +/* 801CFA90 001CC9F0 7C 1B 00 40 */ cmplw r27, r0 +/* 801CFA94 001CC9F4 40 82 FF 70 */ bne lbl_801CFA04 +lbl_801CFA98: +/* 801CFA98 001CC9F8 38 00 00 00 */ li r0, 0 +/* 801CFA9C 001CC9FC 98 01 00 AC */ stb r0, 0xac(r1) +lbl_801CFAA0: +/* 801CFAA0 001CCA00 88 1C 02 50 */ lbz r0, 0x250(r28) +/* 801CFAA4 001CCA04 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 801CFAA8 001CCA08 41 82 00 E8 */ beq lbl_801CFB90 +/* 801CFAAC 001CCA0C 7F A4 EB 78 */ mr r4, r29 +/* 801CFAB0 001CCA10 38 61 00 08 */ addi r3, r1, 8 +/* 801CFAB4 001CCA14 4B ED C9 4D */ bl "__ct__20TCastToPtr<7CPlayer>FR7CEntity" +/* 801CFAB8 001CCA18 80 63 00 04 */ lwz r3, 4(r3) +/* 801CFABC 001CCA1C 28 03 00 00 */ cmplwi r3, 0 +/* 801CFAC0 001CCA20 41 82 00 C0 */ beq lbl_801CFB80 +/* 801CFAC4 001CCA24 83 BE 09 00 */ lwz r29, 0x900(r30) +/* 801CFAC8 001CCA28 C3 83 00 40 */ lfs f28, 0x40(r3) +/* 801CFACC 001CCA2C C3 63 00 50 */ lfs f27, 0x50(r3) +/* 801CFAD0 001CCA30 C3 43 00 60 */ lfs f26, 0x60(r3) +/* 801CFAD4 001CCA34 83 7C 00 F4 */ lwz r27, 0xf4(r28) +/* 801CFAD8 001CCA38 C3 A2 AB B8 */ lfs f29, lbl_805AC8D8@sda21(r2) +/* 801CFADC 001CCA3C C3 C2 AB E0 */ lfs f30, lbl_805AC900@sda21(r2) +/* 801CFAE0 001CCA40 C3 E2 AB E4 */ lfs f31, lbl_805AC904@sda21(r2) +/* 801CFAE4 001CCA44 48 00 00 84 */ b lbl_801CFB68 +lbl_801CFAE8: +/* 801CFAE8 001CCA48 D3 81 00 3C */ stfs f28, 0x3c(r1) +/* 801CFAEC 001CCA4C D3 61 00 40 */ stfs f27, 0x40(r1) +/* 801CFAF0 001CCA50 D3 41 00 44 */ stfs f26, 0x44(r1) +/* 801CFAF4 001CCA54 C0 5B 00 08 */ lfs f2, 8(r27) +/* 801CFAF8 001CCA58 EC 22 D0 28 */ fsubs f1, f2, f26 +/* 801CFAFC 001CCA5C FC 01 E8 40 */ fcmpo cr0, f1, f29 +/* 801CFB00 001CCA60 40 81 00 14 */ ble lbl_801CFB14 +/* 801CFB04 001CCA64 C8 02 AB D8 */ lfd f0, lbl_805AC8F8@sda21(r2) +/* 801CFB08 001CCA68 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801CFB0C 001CCA6C 40 80 00 08 */ bge lbl_801CFB14 +/* 801CFB10 001CCA70 D0 41 00 44 */ stfs f2, 0x44(r1) +lbl_801CFB14: +/* 801CFB14 001CCA74 7F A3 EB 78 */ mr r3, r29 +/* 801CFB18 001CCA78 48 14 29 C5 */ bl Float__9CRandom16Fv +/* 801CFB1C 001CCA7C EC 3E F8 78 */ fmsubs f1, f30, f1, f31 +/* 801CFB20 001CCA80 C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 801CFB24 001CCA84 7F A3 EB 78 */ mr r3, r29 +/* 801CFB28 001CCA88 EC 00 08 2A */ fadds f0, f0, f1 +/* 801CFB2C 001CCA8C D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 801CFB30 001CCA90 48 14 29 AD */ bl Float__9CRandom16Fv +/* 801CFB34 001CCA94 EC 5E F8 78 */ fmsubs f2, f30, f1, f31 +/* 801CFB38 001CCA98 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 801CFB3C 001CCA9C C0 22 AB D4 */ lfs f1, lbl_805AC8F4@sda21(r2) +/* 801CFB40 001CCAA0 7F 83 E3 78 */ mr r3, r28 +/* 801CFB44 001CCAA4 7F 64 DB 78 */ mr r4, r27 +/* 801CFB48 001CCAA8 38 A1 00 3C */ addi r5, r1, 0x3c +/* 801CFB4C 001CCAAC EC 00 10 2A */ fadds f0, f0, f2 +/* 801CFB50 001CCAB0 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 801CFB54 001CCAB4 C0 5C 01 4C */ lfs f2, 0x14c(r28) +/* 801CFB58 001CCAB8 C0 1C 01 64 */ lfs f0, 0x164(r28) +/* 801CFB5C 001CCABC EC 42 00 28 */ fsubs f2, f2, f0 +/* 801CFB60 001CCAC0 4B FF EC 21 */ bl ApplyRepulsion__10CFishCloudFRQ210CFishCloud5CBoidRC9CVector3fff +/* 801CFB64 001CCAC4 3B 7B 00 24 */ addi r27, r27, 0x24 +lbl_801CFB68: +/* 801CFB68 001CCAC8 80 1C 00 EC */ lwz r0, 0xec(r28) +/* 801CFB6C 001CCACC 80 7C 00 F4 */ lwz r3, 0xf4(r28) +/* 801CFB70 001CCAD0 1C 00 00 24 */ mulli r0, r0, 0x24 +/* 801CFB74 001CCAD4 7C 03 02 14 */ add r0, r3, r0 +/* 801CFB78 001CCAD8 7C 1B 00 40 */ cmplw r27, r0 +/* 801CFB7C 001CCADC 40 82 FF 6C */ bne lbl_801CFAE8 +lbl_801CFB80: +/* 801CFB80 001CCAE0 88 1C 02 50 */ lbz r0, 0x250(r28) +/* 801CFB84 001CCAE4 38 60 00 01 */ li r3, 1 +/* 801CFB88 001CCAE8 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 801CFB8C 001CCAEC 98 1C 02 50 */ stb r0, 0x250(r28) +lbl_801CFB90: +/* 801CFB90 001CCAF0 E3 E1 01 28 */ psq_l f31, 296(r1), 0, qr0 +/* 801CFB94 001CCAF4 CB E1 01 20 */ lfd f31, 0x120(r1) +/* 801CFB98 001CCAF8 E3 C1 01 18 */ psq_l f30, 280(r1), 0, qr0 +/* 801CFB9C 001CCAFC CB C1 01 10 */ lfd f30, 0x110(r1) +/* 801CFBA0 001CCB00 E3 A1 01 08 */ psq_l f29, 264(r1), 0, qr0 +/* 801CFBA4 001CCB04 CB A1 01 00 */ lfd f29, 0x100(r1) +/* 801CFBA8 001CCB08 E3 81 00 F8 */ psq_l f28, 248(r1), 0, qr0 +/* 801CFBAC 001CCB0C CB 81 00 F0 */ lfd f28, 0xf0(r1) +/* 801CFBB0 001CCB10 E3 61 00 E8 */ psq_l f27, 232(r1), 0, qr0 +/* 801CFBB4 001CCB14 CB 61 00 E0 */ lfd f27, 0xe0(r1) +/* 801CFBB8 001CCB18 E3 41 00 D8 */ psq_l f26, 216(r1), 0, qr0 +/* 801CFBBC 001CCB1C CB 41 00 D0 */ lfd f26, 0xd0(r1) +/* 801CFBC0 001CCB20 BB 41 00 B8 */ lmw r26, 0xb8(r1) +/* 801CFBC4 001CCB24 80 01 01 34 */ lwz r0, 0x134(r1) +/* 801CFBC8 001CCB28 7C 08 03 A6 */ mtlr r0 +/* 801CFBCC 001CCB2C 38 21 01 30 */ addi r1, r1, 0x130 +/* 801CFBD0 001CCB30 4E 80 00 20 */ blr + +.global sub_801cfbd4 +sub_801cfbd4: +/* 801CFBD4 001CCB34 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801CFBD8 001CCB38 7C 08 02 A6 */ mflr r0 +/* 801CFBDC 001CCB3C 90 01 00 44 */ stw r0, 0x44(r1) +/* 801CFBE0 001CCB40 38 00 00 00 */ li r0, 0 +/* 801CFBE4 001CCB44 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801CFBE8 001CCB48 7C 9F 23 78 */ mr r31, r4 +/* 801CFBEC 001CCB4C 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801CFBF0 001CCB50 7C 7E 1B 78 */ mr r30, r3 +/* 801CFBF4 001CCB54 98 04 00 20 */ stb r0, 0x20(r4) +/* 801CFBF8 001CCB58 4B FF E9 E9 */ bl sub_801ce5e0 +/* 801CFBFC 001CCB5C 81 1E 00 04 */ lwz r8, 4(r30) +/* 801CFC00 001CCB60 39 60 00 00 */ li r11, 0 +/* 801CFC04 001CCB64 C0 A2 AB B8 */ lfs f5, lbl_805AC8D8@sda21(r2) +/* 801CFC08 001CCB68 39 80 00 01 */ li r12, 1 +/* 801CFC0C 001CCB6C C0 82 AB E8 */ lfs f4, lbl_805AC908@sda21(r2) +/* 801CFC10 001CCB70 39 40 00 7F */ li r10, 0x7f +/* 801CFC14 001CCB74 C0 62 AB E4 */ lfs f3, lbl_805AC904@sda21(r2) +/* 801CFC18 001CCB78 39 20 00 14 */ li r9, 0x14 +/* 801CFC1C 001CCB7C 88 02 CC 41 */ lbz r0, lbl_805AE961@sda21(r2) +/* 801CFC20 001CCB80 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 801CFC24 001CCB84 D0 A1 00 0C */ stfs f5, 0xc(r1) +/* 801CFC28 001CCB88 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 801CFC2C 001CCB8C C0 46 00 00 */ lfs f2, 0(r6) +/* 801CFC30 001CCB90 38 61 00 08 */ addi r3, r1, 8 +/* 801CFC34 001CCB94 D0 A1 00 10 */ stfs f5, 0x10(r1) +/* 801CFC38 001CCB98 38 81 00 0C */ addi r4, r1, 0xc +/* 801CFC3C 001CCB9C C0 26 00 04 */ lfs f1, 4(r6) +/* 801CFC40 001CCBA0 38 A0 00 01 */ li r5, 1 +/* 801CFC44 001CCBA4 D0 A1 00 14 */ stfs f5, 0x14(r1) +/* 801CFC48 001CCBA8 38 E0 00 00 */ li r7, 0 +/* 801CFC4C 001CCBAC C0 06 00 08 */ lfs f0, 8(r6) +/* 801CFC50 001CCBB0 D0 A1 00 18 */ stfs f5, 0x18(r1) +/* 801CFC54 001CCBB4 A8 C2 C5 FA */ lha r6, lbl_805AE31A@sda21(r2) +/* 801CFC58 001CCBB8 D0 A1 00 1C */ stfs f5, 0x1c(r1) +/* 801CFC5C 001CCBBC D0 A1 00 20 */ stfs f5, 0x20(r1) +/* 801CFC60 001CCBC0 D0 81 00 24 */ stfs f4, 0x24(r1) +/* 801CFC64 001CCBC4 D0 61 00 28 */ stfs f3, 0x28(r1) +/* 801CFC68 001CCBC8 91 81 00 2C */ stw r12, 0x2c(r1) +/* 801CFC6C 001CCBCC B1 61 00 30 */ sth r11, 0x30(r1) +/* 801CFC70 001CCBD0 99 41 00 32 */ stb r10, 0x32(r1) +/* 801CFC74 001CCBD4 99 21 00 33 */ stb r9, 0x33(r1) +/* 801CFC78 001CCBD8 99 61 00 34 */ stb r11, 0x34(r1) +/* 801CFC7C 001CCBDC 98 01 00 35 */ stb r0, 0x35(r1) +/* 801CFC80 001CCBE0 C0 7F 00 00 */ lfs f3, 0(r31) +/* 801CFC84 001CCBE4 D0 61 00 0C */ stfs f3, 0xc(r1) +/* 801CFC88 001CCBE8 C0 7F 00 04 */ lfs f3, 4(r31) +/* 801CFC8C 001CCBEC D0 61 00 10 */ stfs f3, 0x10(r1) +/* 801CFC90 001CCBF0 C0 7F 00 08 */ lfs f3, 8(r31) +/* 801CFC94 001CCBF4 D0 61 00 14 */ stfs f3, 0x14(r1) +/* 801CFC98 001CCBF8 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 801CFC9C 001CCBFC D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 801CFCA0 001CCC00 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801CFCA4 001CCC04 A0 1E 02 34 */ lhz r0, 0x234(r30) +/* 801CFCA8 001CCC08 B0 01 00 30 */ sth r0, 0x30(r1) +/* 801CFCAC 001CCC0C 48 11 A3 35 */ bl AddEmitter__11CSfxManagerFRQ29CAudioSys18C3DEmitterParmDatabsbi +/* 801CFCB0 001CCC10 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801CFCB4 001CCC14 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801CFCB8 001CCC18 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801CFCBC 001CCC1C 7C 08 03 A6 */ mtlr r0 +/* 801CFCC0 001CCC20 38 21 00 40 */ addi r1, r1, 0x40 +/* 801CFCC4 001CCC24 4E 80 00 20 */ blr + +.global Render__10CFishCloudCFRC13CStateManager +Render__10CFishCloudCFRC13CStateManager: +/* 801CFCC8 001CCC28 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 801CFCCC 001CCC2C 7C 08 02 A6 */ mflr r0 +/* 801CFCD0 001CCC30 90 01 00 74 */ stw r0, 0x74(r1) +/* 801CFCD4 001CCC34 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 801CFCD8 001CCC38 93 C1 00 68 */ stw r30, 0x68(r1) +/* 801CFCDC 001CCC3C 7C 9E 23 78 */ mr r30, r4 +/* 801CFCE0 001CCC40 93 A1 00 64 */ stw r29, 0x64(r1) +/* 801CFCE4 001CCC44 7C 7D 1B 78 */ mr r29, r3 +/* 801CFCE8 001CCC48 93 81 00 60 */ stw r28, 0x60(r1) +/* 801CFCEC 001CCC4C 88 03 00 30 */ lbz r0, 0x30(r3) +/* 801CFCF0 001CCC50 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801CFCF4 001CCC54 41 82 02 3C */ beq lbl_801CFF30 +/* 801CFCF8 001CCC58 C0 22 AB B4 */ lfs f1, lbl_805AC8D4@sda21(r2) +/* 801CFCFC 001CCC5C 38 80 00 00 */ li r4, 0 +/* 801CFD00 001CCC60 80 BE 0F 34 */ lwz r5, 0xf34(r30) +/* 801CFD04 001CCC64 38 00 00 03 */ li r0, 3 +/* 801CFD08 001CCC68 FC 40 08 90 */ fmr f2, f1 +/* 801CFD0C 001CCC6C 98 81 00 10 */ stb r4, 0x10(r1) +/* 801CFD10 001CCC70 7C A5 00 34 */ cntlzw r5, r5 +/* 801CFD14 001CCC74 FC 60 08 90 */ fmr f3, f1 +/* 801CFD18 001CCC78 FC 80 08 90 */ fmr f4, f1 +/* 801CFD1C 001CCC7C 98 81 00 11 */ stb r4, 0x11(r1) +/* 801CFD20 001CCC80 B0 01 00 12 */ sth r0, 0x12(r1) +/* 801CFD24 001CCC84 38 61 00 14 */ addi r3, r1, 0x14 +/* 801CFD28 001CCC88 54 BF D9 7E */ srwi r31, r5, 5 +/* 801CFD2C 001CCC8C 48 19 36 C1 */ bl __ct__6CColorFffff +/* 801CFD30 001CCC90 88 61 00 10 */ lbz r3, 0x10(r1) +/* 801CFD34 001CCC94 7F C4 F3 78 */ mr r4, r30 +/* 801CFD38 001CCC98 88 C1 00 11 */ lbz r6, 0x11(r1) +/* 801CFD3C 001CCC9C A0 A1 00 12 */ lhz r5, 0x12(r1) +/* 801CFD40 001CCCA0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801CFD44 001CCCA4 98 61 00 18 */ stb r3, 0x18(r1) +/* 801CFD48 001CCCA8 80 7E 08 B8 */ lwz r3, 0x8b8(r30) +/* 801CFD4C 001CCCAC 98 C1 00 19 */ stb r6, 0x19(r1) +/* 801CFD50 001CCCB0 B0 A1 00 1A */ sth r5, 0x1a(r1) +/* 801CFD54 001CCCB4 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801CFD58 001CCCB8 80 63 00 00 */ lwz r3, 0(r3) +/* 801CFD5C 001CCCBC 4B EC 17 FD */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager +/* 801CFD60 001CCCC0 2C 03 00 01 */ cmpwi r3, 1 +/* 801CFD64 001CCCC4 40 82 00 38 */ bne lbl_801CFD9C +/* 801CFD68 001CCCC8 80 1D 01 6C */ lwz r0, 0x16c(r29) +/* 801CFD6C 001CCCCC 38 A0 00 05 */ li r5, 5 +/* 801CFD70 001CCCD0 38 80 00 00 */ li r4, 0 +/* 801CFD74 001CCCD4 38 60 00 03 */ li r3, 3 +/* 801CFD78 001CCCD8 90 01 00 0C */ stw r0, 0xc(r1) +/* 801CFD7C 001CCCDC 38 00 00 4C */ li r0, 0x4c +/* 801CFD80 001CCCE0 98 01 00 0F */ stb r0, 0xf(r1) +/* 801CFD84 001CCCE4 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801CFD88 001CCCE8 98 A1 00 18 */ stb r5, 0x18(r1) +/* 801CFD8C 001CCCEC 98 81 00 19 */ stb r4, 0x19(r1) +/* 801CFD90 001CCCF0 B0 61 00 1A */ sth r3, 0x1a(r1) +/* 801CFD94 001CCCF4 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801CFD98 001CCCF8 48 00 00 24 */ b lbl_801CFDBC +lbl_801CFD9C: +/* 801CFD9C 001CCCFC 80 BD 01 6C */ lwz r5, 0x16c(r29) +/* 801CFDA0 001CCD00 38 80 00 01 */ li r4, 1 +/* 801CFDA4 001CCD04 38 60 00 00 */ li r3, 0 +/* 801CFDA8 001CCD08 38 00 00 03 */ li r0, 3 +/* 801CFDAC 001CCD0C 98 81 00 18 */ stb r4, 0x18(r1) +/* 801CFDB0 001CCD10 98 61 00 19 */ stb r3, 0x19(r1) +/* 801CFDB4 001CCD14 B0 01 00 1A */ sth r0, 0x1a(r1) +/* 801CFDB8 001CCD18 90 A1 00 1C */ stw r5, 0x1c(r1) +lbl_801CFDBC: +/* 801CFDBC 001CCD1C 7F A3 EB 78 */ mr r3, r29 +/* 801CFDC0 001CCD20 4B FF E7 35 */ bl sub_801ce4f4 +/* 801CFDC4 001CCD24 88 1D 02 50 */ lbz r0, 0x250(r29) +/* 801CFDC8 001CCD28 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 801CFDCC 001CCD2C 41 82 00 84 */ beq lbl_801CFE50 +/* 801CFDD0 001CCD30 48 17 A1 DD */ bl White__6CColorFv +/* 801CFDD4 001CCD34 7C 64 1B 78 */ mr r4, r3 +/* 801CFDD8 001CCD38 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801CFDDC 001CCD3C 81 83 00 00 */ lwz r12, 0(r3) +/* 801CFDE0 001CCD40 81 8C 00 BC */ lwz r12, 0xbc(r12) +/* 801CFDE4 001CCD44 7D 89 03 A6 */ mtctr r12 +/* 801CFDE8 001CCD48 4E 80 04 21 */ bctrl +/* 801CFDEC 001CCD4C 48 13 CB 91 */ bl DisableAllLights__9CGraphicsFv +/* 801CFDF0 001CCD50 38 00 FF FF */ li r0, -1 +/* 801CFDF4 001CCD54 83 DD 00 F4 */ lwz r30, 0xf4(r29) +/* 801CFDF8 001CCD58 90 01 00 08 */ stw r0, 8(r1) +/* 801CFDFC 001CCD5C 3B 80 00 00 */ li r28, 0 +/* 801CFE00 001CCD60 48 00 00 34 */ b lbl_801CFE34 +lbl_801CFE04: +/* 801CFE04 001CCD64 88 1E 00 20 */ lbz r0, 0x20(r30) +/* 801CFE08 001CCD68 28 00 00 00 */ cmplwi r0, 0 +/* 801CFE0C 001CCD6C 41 82 00 20 */ beq lbl_801CFE2C +/* 801CFE10 001CCD70 7F A3 EB 78 */ mr r3, r29 +/* 801CFE14 001CCD74 7F 84 E3 78 */ mr r4, r28 +/* 801CFE18 001CCD78 7F C5 F3 78 */ mr r5, r30 +/* 801CFE1C 001CCD7C 7F E7 FB 78 */ mr r7, r31 +/* 801CFE20 001CCD80 38 C1 00 08 */ addi r6, r1, 8 +/* 801CFE24 001CCD84 39 01 00 18 */ addi r8, r1, 0x18 +/* 801CFE28 001CCD88 48 00 01 29 */ bl sub_801cff50 +lbl_801CFE2C: +/* 801CFE2C 001CCD8C 3B DE 00 24 */ addi r30, r30, 0x24 +/* 801CFE30 001CCD90 3B 9C 00 01 */ addi r28, r28, 1 +lbl_801CFE34: +/* 801CFE34 001CCD94 80 1D 00 EC */ lwz r0, 0xec(r29) +/* 801CFE38 001CCD98 80 7D 00 F4 */ lwz r3, 0xf4(r29) +/* 801CFE3C 001CCD9C 1C 00 00 24 */ mulli r0, r0, 0x24 +/* 801CFE40 001CCDA0 7C 03 02 14 */ add r0, r3, r0 +/* 801CFE44 001CCDA4 7C 1E 00 40 */ cmplw r30, r0 +/* 801CFE48 001CCDA8 40 82 FF BC */ bne lbl_801CFE04 +/* 801CFE4C 001CCDAC 48 00 00 E4 */ b lbl_801CFF30 +lbl_801CFE50: +/* 801CFE50 001CCDB0 83 FD 00 64 */ lwz r31, 0x64(r29) +/* 801CFE54 001CCDB4 48 17 A1 59 */ bl White__6CColorFv +/* 801CFE58 001CCDB8 7C 64 1B 78 */ mr r4, r3 +/* 801CFE5C 001CCDBC 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801CFE60 001CCDC0 81 83 00 00 */ lwz r12, 0(r3) +/* 801CFE64 001CCDC4 81 8C 00 BC */ lwz r12, 0xbc(r12) +/* 801CFE68 001CCDC8 7D 89 03 A6 */ mtctr r12 +/* 801CFE6C 001CCDCC 4E 80 04 21 */ bctrl +/* 801CFE70 001CCDD0 48 13 CB 0D */ bl DisableAllLights__9CGraphicsFv +/* 801CFE74 001CCDD4 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801CFE78 001CCDD8 3C 80 80 5A */ lis r4, skIdentity4f@ha +/* 801CFE7C 001CCDDC 38 84 66 70 */ addi r4, r4, skIdentity4f@l +/* 801CFE80 001CCDE0 81 83 00 00 */ lwz r12, 0(r3) +/* 801CFE84 001CCDE4 81 8C 00 30 */ lwz r12, 0x30(r12) +/* 801CFE88 001CCDE8 7D 89 03 A6 */ mtctr r12 +/* 801CFE8C 001CCDEC 4E 80 04 21 */ bctrl +/* 801CFE90 001CCDF0 83 9D 00 F4 */ lwz r28, 0xf4(r29) +/* 801CFE94 001CCDF4 48 00 00 84 */ b lbl_801CFF18 +lbl_801CFE98: +/* 801CFE98 001CCDF8 88 1C 00 20 */ lbz r0, 0x20(r28) +/* 801CFE9C 001CCDFC 28 00 00 00 */ cmplwi r0, 0 +/* 801CFEA0 001CCE00 41 82 00 74 */ beq lbl_801CFF14 +/* 801CFEA4 001CCE04 C0 1C 00 18 */ lfs f0, 0x18(r28) +/* 801CFEA8 001CCE08 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 801CFEAC 001CCE0C 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 801CFEB0 001CCE10 7F 84 E3 78 */ mr r4, r28 +/* 801CFEB4 001CCE14 D0 1F 00 00 */ stfs f0, 0(r31) +/* 801CFEB8 001CCE18 38 61 00 2C */ addi r3, r1, 0x2c +/* 801CFEBC 001CCE1C 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801CFEC0 001CCE20 D0 1F 00 04 */ stfs f0, 4(r31) +/* 801CFEC4 001CCE24 D0 1F 00 08 */ stfs f0, 8(r31) +/* 801CFEC8 001CCE28 C0 3C 00 04 */ lfs f1, 4(r28) +/* 801CFECC 001CCE2C C0 1C 00 10 */ lfs f0, 0x10(r28) +/* 801CFED0 001CCE30 C0 7C 00 08 */ lfs f3, 8(r28) +/* 801CFED4 001CCE34 EC 81 00 2A */ fadds f4, f1, f0 +/* 801CFED8 001CCE38 C0 5C 00 14 */ lfs f2, 0x14(r28) +/* 801CFEDC 001CCE3C C0 3C 00 00 */ lfs f1, 0(r28) +/* 801CFEE0 001CCE40 C0 1C 00 0C */ lfs f0, 0xc(r28) +/* 801CFEE4 001CCE44 EC 43 10 2A */ fadds f2, f3, f2 +/* 801CFEE8 001CCE48 EC 01 00 2A */ fadds f0, f1, f0 +/* 801CFEEC 001CCE4C D0 81 00 24 */ stfs f4, 0x24(r1) +/* 801CFEF0 001CCE50 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 801CFEF4 001CCE54 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801CFEF8 001CCE58 48 14 3C 19 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 801CFEFC 001CCE5C 7F E3 FB 78 */ mr r3, r31 +/* 801CFF00 001CCE60 7F C4 F3 78 */ mr r4, r30 +/* 801CFF04 001CCE64 38 A1 00 2C */ addi r5, r1, 0x2c +/* 801CFF08 001CCE68 38 E1 00 18 */ addi r7, r1, 0x18 +/* 801CFF0C 001CCE6C 38 C0 00 00 */ li r6, 0 +/* 801CFF10 001CCE70 4B F4 4E AD */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags +lbl_801CFF14: +/* 801CFF14 001CCE74 3B 9C 00 24 */ addi r28, r28, 0x24 +lbl_801CFF18: +/* 801CFF18 001CCE78 80 1D 00 EC */ lwz r0, 0xec(r29) +/* 801CFF1C 001CCE7C 80 7D 00 F4 */ lwz r3, 0xf4(r29) +/* 801CFF20 001CCE80 1C 00 00 24 */ mulli r0, r0, 0x24 +/* 801CFF24 001CCE84 7C 03 02 14 */ add r0, r3, r0 +/* 801CFF28 001CCE88 7C 1C 00 40 */ cmplw r28, r0 +/* 801CFF2C 001CCE8C 40 82 FF 6C */ bne lbl_801CFE98 +lbl_801CFF30: +/* 801CFF30 001CCE90 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801CFF34 001CCE94 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 801CFF38 001CCE98 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 801CFF3C 001CCE9C 83 A1 00 64 */ lwz r29, 0x64(r1) +/* 801CFF40 001CCEA0 83 81 00 60 */ lwz r28, 0x60(r1) +/* 801CFF44 001CCEA4 7C 08 03 A6 */ mtlr r0 +/* 801CFF48 001CCEA8 38 21 00 70 */ addi r1, r1, 0x70 +/* 801CFF4C 001CCEAC 4E 80 00 20 */ blr + +.global sub_801cff50 +sub_801cff50: +/* 801CFF50 001CCEB0 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 801CFF54 001CCEB4 7C 08 02 A6 */ mflr r0 +/* 801CFF58 001CCEB8 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 801CFF5C 001CCEBC BE C1 00 A8 */ stmw r22, 0xa8(r1) +/* 801CFF60 001CCEC0 7C 77 1B 78 */ mr r23, r3 +/* 801CFF64 001CCEC4 54 9F 17 3A */ rlwinm r31, r4, 2, 0x1c, 0x1d +/* 801CFF68 001CCEC8 54 9E 07 BE */ clrlwi r30, r4, 0x1e +/* 801CFF6C 001CCECC 7C 77 FA 14 */ add r3, r23, r31 +/* 801CFF70 001CCED0 7C D9 33 78 */ mr r25, r6 +/* 801CFF74 001CCED4 7C B8 2B 78 */ mr r24, r5 +/* 801CFF78 001CCED8 7C FA 3B 78 */ mr r26, r7 +/* 801CFF7C 001CCEDC 7D 1B 43 78 */ mr r27, r8 +/* 801CFF80 001CCEE0 38 80 00 00 */ li r4, 0 +/* 801CFF84 001CCEE4 80 63 01 B4 */ lwz r3, 0x1b4(r3) +/* 801CFF88 001CCEE8 83 A6 00 00 */ lwz r29, 0(r6) +/* 801CFF8C 001CCEEC 80 63 00 00 */ lwz r3, 0(r3) +/* 801CFF90 001CCEF0 82 C3 00 10 */ lwz r22, 0x10(r3) +/* 801CFF94 001CCEF4 4B F4 4F C9 */ bl PickAnimatedModel__10CModelDataCFQ210CModelData11EWhichModel +/* 801CFF98 001CCEF8 38 00 00 01 */ li r0, 1 +/* 801CFF9C 001CCEFC 7C 7C 1B 78 */ mr r28, r3 +/* 801CFFA0 001CCF00 7C 04 F0 30 */ slw r4, r0, r30 +/* 801CFFA4 001CCF04 7F A0 20 39 */ and. r0, r29, r4 +/* 801CFFA8 001CCF08 41 82 00 44 */ beq lbl_801CFFEC +/* 801CFFAC 001CCF0C 7E C3 B3 78 */ mr r3, r22 +/* 801CFFB0 001CCF10 7F BD 20 78 */ andc r29, r29, r4 +/* 801CFFB4 001CCF14 4B E5 CA AD */ bl BuildPose__9CAnimDataFv +/* 801CFFB8 001CCF18 57 C0 18 38 */ slwi r0, r30, 3 +/* 801CFFBC 001CCF1C 38 80 00 00 */ li r4, 0 +/* 801CFFC0 001CCF20 7C 77 02 14 */ add r3, r23, r0 +/* 801CFFC4 001CCF24 98 81 00 A4 */ stb r4, 0xa4(r1) +/* 801CFFC8 001CCF28 80 E3 01 80 */ lwz r7, 0x180(r3) +/* 801CFFCC 001CCF2C 7F 83 E3 78 */ mr r3, r28 +/* 801CFFD0 001CCF30 38 96 02 24 */ addi r4, r22, 0x224 +/* 801CFFD4 001CCF34 38 A1 00 5C */ addi r5, r1, 0x5c +/* 801CFFD8 001CCF38 38 C0 00 00 */ li r6, 0 +/* 801CFFDC 001CCF3C 48 18 2D 1D */ bl "Calculate__13CSkinnedModelFRC17CPoseAsTransformsRCQ24rstl37optional_object<18CVertexMorphEffect>PCfPf" +/* 801CFFE0 001CCF40 38 61 00 5C */ addi r3, r1, 0x5c +/* 801CFFE4 001CCF44 38 80 FF FF */ li r4, -1 +/* 801CFFE8 001CCF48 4B EA 7C A5 */ bl sub_80077c8c +lbl_801CFFEC: +/* 801CFFEC 001CCF4C C0 38 00 04 */ lfs f1, 4(r24) +/* 801CFFF0 001CCF50 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 801CFFF4 001CCF54 C0 18 00 10 */ lfs f0, 0x10(r24) +/* 801CFFF8 001CCF58 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 801CFFFC 001CCF5C C0 78 00 08 */ lfs f3, 8(r24) +/* 801D0000 001CCF60 7F 04 C3 78 */ mr r4, r24 +/* 801D0004 001CCF64 EC 81 00 2A */ fadds f4, f1, f0 +/* 801D0008 001CCF68 C0 58 00 14 */ lfs f2, 0x14(r24) +/* 801D000C 001CCF6C C0 38 00 00 */ lfs f1, 0(r24) +/* 801D0010 001CCF70 38 61 00 2C */ addi r3, r1, 0x2c +/* 801D0014 001CCF74 C0 18 00 0C */ lfs f0, 0xc(r24) +/* 801D0018 001CCF78 EC 43 10 2A */ fadds f2, f3, f2 +/* 801D001C 001CCF7C EC 01 00 2A */ fadds f0, f1, f0 +/* 801D0020 001CCF80 D0 81 00 24 */ stfs f4, 0x24(r1) +/* 801D0024 001CCF84 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801D0028 001CCF88 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 801D002C 001CCF8C D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801D0030 001CCF90 48 14 3A E1 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 801D0034 001CCF94 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801D0038 001CCF98 38 81 00 2C */ addi r4, r1, 0x2c +/* 801D003C 001CCF9C 81 83 00 00 */ lwz r12, 0(r3) +/* 801D0040 001CCFA0 81 8C 00 30 */ lwz r12, 0x30(r12) +/* 801D0044 001CCFA4 7D 89 03 A6 */ mtctr r12 +/* 801D0048 001CCFA8 4E 80 04 21 */ bctrl +/* 801D004C 001CCFAC 57 C3 18 38 */ slwi r3, r30, 3 +/* 801D0050 001CCFB0 57 40 06 3F */ clrlwi. r0, r26, 0x18 +/* 801D0054 001CCFB4 7C 97 1A 14 */ add r4, r23, r3 +/* 801D0058 001CCFB8 7C 77 FA 14 */ add r3, r23, r31 +/* 801D005C 001CCFBC 83 C4 01 80 */ lwz r30, 0x180(r4) +/* 801D0060 001CCFC0 83 E3 01 A0 */ lwz r31, 0x1a0(r3) +/* 801D0064 001CCFC4 41 82 00 98 */ beq lbl_801D00FC +/* 801D0068 001CCFC8 C0 22 AB B4 */ lfs f1, lbl_805AC8D4@sda21(r2) +/* 801D006C 001CCFCC 38 80 00 00 */ li r4, 0 +/* 801D0070 001CCFD0 38 00 00 03 */ li r0, 3 +/* 801D0074 001CCFD4 98 81 00 10 */ stb r4, 0x10(r1) +/* 801D0078 001CCFD8 FC 40 08 90 */ fmr f2, f1 +/* 801D007C 001CCFDC 38 61 00 14 */ addi r3, r1, 0x14 +/* 801D0080 001CCFE0 FC 60 08 90 */ fmr f3, f1 +/* 801D0084 001CCFE4 98 81 00 11 */ stb r4, 0x11(r1) +/* 801D0088 001CCFE8 FC 80 08 90 */ fmr f4, f1 +/* 801D008C 001CCFEC B0 01 00 12 */ sth r0, 0x12(r1) +/* 801D0090 001CCFF0 48 19 33 5D */ bl __ct__6CColorFffff +/* 801D0094 001CCFF4 A0 01 00 12 */ lhz r0, 0x12(r1) +/* 801D0098 001CCFF8 39 40 00 00 */ li r10, 0 +/* 801D009C 001CCFFC 88 61 00 10 */ lbz r3, 0x10(r1) +/* 801D00A0 001CD000 39 20 00 40 */ li r9, 0x40 +/* 801D00A4 001CD004 54 00 00 3A */ rlwinm r0, r0, 0, 0, 0x1d +/* 801D00A8 001CD008 88 A1 00 11 */ lbz r5, 0x11(r1) +/* 801D00AC 001CD00C 60 07 00 01 */ ori r7, r0, 1 +/* 801D00B0 001CD010 81 61 00 14 */ lwz r11, 0x14(r1) +/* 801D00B4 001CD014 38 00 FF FF */ li r0, -1 +/* 801D00B8 001CD018 98 61 00 18 */ stb r3, 0x18(r1) +/* 801D00BC 001CD01C 7F 83 E3 78 */ mr r3, r28 +/* 801D00C0 001CD020 7F C4 F3 78 */ mr r4, r30 +/* 801D00C4 001CD024 98 A1 00 19 */ stb r5, 0x19(r1) +/* 801D00C8 001CD028 7F E5 FB 78 */ mr r5, r31 +/* 801D00CC 001CD02C 38 C1 00 0C */ addi r6, r1, 0xc +/* 801D00D0 001CD030 39 01 00 18 */ addi r8, r1, 0x18 +/* 801D00D4 001CD034 B0 E1 00 1A */ sth r7, 0x1a(r1) +/* 801D00D8 001CD038 38 E1 00 08 */ addi r7, r1, 8 +/* 801D00DC 001CD03C 91 61 00 1C */ stw r11, 0x1c(r1) +/* 801D00E0 001CD040 99 41 00 08 */ stb r10, 8(r1) +/* 801D00E4 001CD044 99 41 00 09 */ stb r10, 9(r1) +/* 801D00E8 001CD048 99 41 00 0A */ stb r10, 0xa(r1) +/* 801D00EC 001CD04C 99 21 00 0B */ stb r9, 0xb(r1) +/* 801D00F0 001CD050 90 01 00 0C */ stw r0, 0xc(r1) +/* 801D00F4 001CD054 4B F4 62 C1 */ bl RenderThermal__10CModelDataCFPCfPCfRC6CColorRC6CColorRC11CModelFlags +/* 801D00F8 001CD058 48 00 00 18 */ b lbl_801D0110 +lbl_801D00FC: +/* 801D00FC 001CD05C 7F 83 E3 78 */ mr r3, r28 +/* 801D0100 001CD060 7F C4 F3 78 */ mr r4, r30 +/* 801D0104 001CD064 7F E5 FB 78 */ mr r5, r31 +/* 801D0108 001CD068 7F 66 DB 78 */ mr r6, r27 +/* 801D010C 001CD06C 48 18 2D DD */ bl sub_80352ee8 +lbl_801D0110: +/* 801D0110 001CD070 93 B9 00 00 */ stw r29, 0(r25) +/* 801D0114 001CD074 BA C1 00 A8 */ lmw r22, 0xa8(r1) +/* 801D0118 001CD078 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 801D011C 001CD07C 7C 08 03 A6 */ mtlr r0 +/* 801D0120 001CD080 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 801D0124 001CD084 4E 80 00 20 */ blr + +.global PreRender__10CFishCloudFR13CStateManagerRC14CFrustumPlanes +PreRender__10CFishCloudFR13CStateManagerRC14CFrustumPlanes: +/* 801D0128 001CD088 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801D012C 001CD08C 7C 08 02 A6 */ mflr r0 +/* 801D0130 001CD090 90 01 00 24 */ stw r0, 0x24(r1) +/* 801D0134 001CD094 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801D0138 001CD098 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801D013C 001CD09C 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801D0140 001CD0A0 7C 7D 1B 78 */ mr r29, r3 +/* 801D0144 001CD0A4 4B E8 4B 9D */ bl PreRender__6CActorFR13CStateManagerRC14CFrustumPlanes +/* 801D0148 001CD0A8 88 1D 02 50 */ lbz r0, 0x250(r29) +/* 801D014C 001CD0AC 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 801D0150 001CD0B0 41 82 00 2C */ beq lbl_801D017C +/* 801D0154 001CD0B4 3B C0 00 00 */ li r30, 0 +/* 801D0158 001CD0B8 3B FD 01 B4 */ addi r31, r29, 0x1b4 +lbl_801D015C: +/* 801D015C 001CD0BC 80 7F 00 00 */ lwz r3, 0(r31) +/* 801D0160 001CD0C0 80 63 00 00 */ lwz r3, 0(r3) +/* 801D0164 001CD0C4 80 63 00 10 */ lwz r3, 0x10(r3) +/* 801D0168 001CD0C8 4B E5 C8 9D */ bl PreRender__9CAnimDataFv +/* 801D016C 001CD0CC 3B DE 00 01 */ addi r30, r30, 1 +/* 801D0170 001CD0D0 3B FF 00 04 */ addi r31, r31, 4 +/* 801D0174 001CD0D4 2C 1E 00 04 */ cmpwi r30, 4 +/* 801D0178 001CD0D8 41 80 FF E4 */ blt lbl_801D015C +lbl_801D017C: +/* 801D017C 001CD0DC 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 801D0180 001CD0E0 38 60 00 00 */ li r3, 0 +/* 801D0184 001CD0E4 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 801D0188 001CD0E8 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 801D018C 001CD0EC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801D0190 001CD0F0 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801D0194 001CD0F4 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801D0198 001CD0F8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801D019C 001CD0FC 7C 08 03 A6 */ mtlr r0 +/* 801D01A0 001CD100 38 21 00 20 */ addi r1, r1, 0x20 + +.global sub_801d01a4 +sub_801d01a4: +/* 801D01A4 001CD104 4E 80 00 20 */ blr + +.global Think__10CFishCloudFfR13CStateManager +Think__10CFishCloudFfR13CStateManager: +/* 801D01A8 001CD108 94 21 FE B0 */ stwu r1, -0x150(r1) +/* 801D01AC 001CD10C 7C 08 02 A6 */ mflr r0 +/* 801D01B0 001CD110 90 01 01 54 */ stw r0, 0x154(r1) +/* 801D01B4 001CD114 DB E1 01 40 */ stfd f31, 0x140(r1) +/* 801D01B8 001CD118 F3 E1 01 48 */ psq_st f31, 328(r1), 0, qr0 +/* 801D01BC 001CD11C DB C1 01 30 */ stfd f30, 0x130(r1) +/* 801D01C0 001CD120 F3 C1 01 38 */ psq_st f30, 312(r1), 0, qr0 +/* 801D01C4 001CD124 BF 41 01 18 */ stmw r26, 0x118(r1) +/* 801D01C8 001CD128 88 03 00 30 */ lbz r0, 0x30(r3) +/* 801D01CC 001CD12C FF E0 08 90 */ fmr f31, f1 +/* 801D01D0 001CD130 7C 7B 1B 78 */ mr r27, r3 +/* 801D01D4 001CD134 7C 9C 23 78 */ mr r28, r4 +/* 801D01D8 001CD138 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801D01DC 001CD13C 41 82 07 2C */ beq lbl_801D0908 +/* 801D01E0 001CD140 80 BB 00 04 */ lwz r5, 4(r27) +/* 801D01E4 001CD144 80 9C 08 50 */ lwz r4, 0x850(r28) +/* 801D01E8 001CD148 54 A3 18 38 */ slwi r3, r5, 3 +/* 801D01EC 001CD14C 90 A1 00 2C */ stw r5, 0x2c(r1) +/* 801D01F0 001CD150 80 84 00 20 */ lwz r4, 0x20(r4) +/* 801D01F4 001CD154 38 03 00 04 */ addi r0, r3, 4 +/* 801D01F8 001CD158 90 A1 00 30 */ stw r5, 0x30(r1) +/* 801D01FC 001CD15C 7C 64 00 2E */ lwzx r3, r4, r0 +/* 801D0200 001CD160 88 03 00 F0 */ lbz r0, 0xf0(r3) +/* 801D0204 001CD164 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801D0208 001CD168 41 82 00 10 */ beq lbl_801D0218 +/* 801D020C 001CD16C 80 63 01 2C */ lwz r3, 0x12c(r3) +/* 801D0210 001CD170 80 03 10 DC */ lwz r0, 0x10dc(r3) +/* 801D0214 001CD174 48 00 00 08 */ b lbl_801D021C +lbl_801D0218: +/* 801D0218 001CD178 38 00 00 00 */ li r0, 0 +lbl_801D021C: +/* 801D021C 001CD17C 2C 00 00 01 */ cmpwi r0, 1 +/* 801D0220 001CD180 40 82 06 E8 */ bne lbl_801D0908 +/* 801D0224 001CD184 C0 1B 01 60 */ lfs f0, 0x160(r27) +/* 801D0228 001CD188 C0 62 AB E4 */ lfs f3, lbl_805AC904@sda21(r2) +/* 801D022C 001CD18C EC 40 07 F2 */ fmuls f2, f0, f31 +/* 801D0230 001CD190 C0 3B 01 68 */ lfs f1, 0x168(r27) +/* 801D0234 001CD194 C0 0D 91 90 */ lfs f0, lbl_805A7D50@sda21(r13) +/* 801D0238 001CD198 EC 23 08 BC */ fnmsubs f1, f3, f2, f1 +/* 801D023C 001CD19C FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801D0240 001CD1A0 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 801D0244 001CD1A4 40 80 00 0C */ bge lbl_801D0250 +/* 801D0248 001CD1A8 38 61 00 28 */ addi r3, r1, 0x28 +/* 801D024C 001CD1AC 48 00 00 08 */ b lbl_801D0254 +lbl_801D0250: +/* 801D0250 001CD1B0 38 6D 91 90 */ addi r3, r13, lbl_805A7D50@sda21 +lbl_801D0254: +/* 801D0254 001CD1B4 C0 03 00 00 */ lfs f0, 0(r3) +/* 801D0258 001CD1B8 D0 1B 01 68 */ stfs f0, 0x168(r27) +/* 801D025C 001CD1BC 88 1B 02 50 */ lbz r0, 0x250(r27) +/* 801D0260 001CD1C0 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801D0264 001CD1C4 41 82 00 34 */ beq lbl_801D0298 +/* 801D0268 001CD1C8 C0 3B 01 60 */ lfs f1, 0x160(r27) +/* 801D026C 001CD1CC C0 1B 01 68 */ lfs f0, 0x168(r27) +/* 801D0270 001CD1D0 EC 21 07 FA */ fmadds f1, f1, f31, f0 +/* 801D0274 001CD1D4 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 801D0278 001CD1D8 C0 1B 01 48 */ lfs f0, 0x148(r27) +/* 801D027C 001CD1DC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801D0280 001CD1E0 40 80 00 0C */ bge lbl_801D028C +/* 801D0284 001CD1E4 38 61 00 24 */ addi r3, r1, 0x24 +/* 801D0288 001CD1E8 48 00 00 08 */ b lbl_801D0290 +lbl_801D028C: +/* 801D028C 001CD1EC 38 7B 01 48 */ addi r3, r27, 0x148 +lbl_801D0290: +/* 801D0290 001CD1F0 C0 03 00 00 */ lfs f0, 0(r3) +/* 801D0294 001CD1F4 D0 1B 01 68 */ stfs f0, 0x168(r27) +lbl_801D0298: +/* 801D0298 001CD1F8 C0 1B 01 5C */ lfs f0, 0x15c(r27) +/* 801D029C 001CD1FC C0 62 AB E4 */ lfs f3, lbl_805AC904@sda21(r2) +/* 801D02A0 001CD200 EC 40 07 F2 */ fmuls f2, f0, f31 +/* 801D02A4 001CD204 C0 3B 01 64 */ lfs f1, 0x164(r27) +/* 801D02A8 001CD208 C0 0D 91 94 */ lfs f0, lbl_805A7D54@sda21(r13) +/* 801D02AC 001CD20C EC 23 08 BC */ fnmsubs f1, f3, f2, f1 +/* 801D02B0 001CD210 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801D02B4 001CD214 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 801D02B8 001CD218 40 80 00 0C */ bge lbl_801D02C4 +/* 801D02BC 001CD21C 38 61 00 20 */ addi r3, r1, 0x20 +/* 801D02C0 001CD220 48 00 00 08 */ b lbl_801D02C8 +lbl_801D02C4: +/* 801D02C4 001CD224 38 6D 91 94 */ addi r3, r13, lbl_805A7D54@sda21 +lbl_801D02C8: +/* 801D02C8 001CD228 C0 03 00 00 */ lfs f0, 0(r3) +/* 801D02CC 001CD22C D0 1B 01 64 */ stfs f0, 0x164(r27) +/* 801D02D0 001CD230 88 1B 02 50 */ lbz r0, 0x250(r27) +/* 801D02D4 001CD234 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 801D02D8 001CD238 41 82 00 34 */ beq lbl_801D030C +/* 801D02DC 001CD23C C0 3B 01 5C */ lfs f1, 0x15c(r27) +/* 801D02E0 001CD240 C0 1B 01 64 */ lfs f0, 0x164(r27) +/* 801D02E4 001CD244 EC 21 07 FA */ fmadds f1, f1, f31, f0 +/* 801D02E8 001CD248 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 801D02EC 001CD24C C0 1B 01 4C */ lfs f0, 0x14c(r27) +/* 801D02F0 001CD250 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801D02F4 001CD254 40 80 00 0C */ bge lbl_801D0300 +/* 801D02F8 001CD258 38 61 00 1C */ addi r3, r1, 0x1c +/* 801D02FC 001CD25C 48 00 00 08 */ b lbl_801D0304 +lbl_801D0300: +/* 801D0300 001CD260 38 7B 01 4C */ addi r3, r27, 0x14c +lbl_801D0304: +/* 801D0304 001CD264 C0 03 00 00 */ lfs f0, 0(r3) +/* 801D0308 001CD268 D0 1B 01 64 */ stfs f0, 0x164(r27) +lbl_801D030C: +/* 801D030C 001CD26C 88 1B 02 50 */ lbz r0, 0x250(r27) +/* 801D0310 001CD270 38 80 00 00 */ li r4, 0 +/* 801D0314 001CD274 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 801D0318 001CD278 FC 20 F8 90 */ fmr f1, f31 +/* 801D031C 001CD27C 98 1B 02 50 */ stb r0, 0x250(r27) +/* 801D0320 001CD280 7F 63 DB 78 */ mr r3, r27 +/* 801D0324 001CD284 88 1B 02 50 */ lbz r0, 0x250(r27) +/* 801D0328 001CD288 50 80 0F BC */ rlwimi r0, r4, 1, 0x1e, 0x1e +/* 801D032C 001CD28C 98 1B 02 50 */ stb r0, 0x250(r27) +/* 801D0330 001CD290 80 9B 01 18 */ lwz r4, 0x118(r27) +/* 801D0334 001CD294 38 04 00 01 */ addi r0, r4, 1 +/* 801D0338 001CD298 90 1B 01 18 */ stw r0, 0x118(r27) +/* 801D033C 001CD29C 4B FF E2 29 */ bl sub_801ce564 +/* 801D0340 001CD2A0 38 00 00 00 */ li r0, 0 +/* 801D0344 001CD2A4 7F 63 DB 78 */ mr r3, r27 +/* 801D0348 001CD2A8 90 01 00 AC */ stw r0, 0xac(r1) +/* 801D034C 001CD2AC 4B FF F2 F5 */ bl UpdatePartitionList__10CFishCloudFv +/* 801D0350 001CD2B0 83 FC 09 00 */ lwz r31, 0x900(r28) +/* 801D0354 001CD2B4 7F 64 DB 78 */ mr r4, r27 +/* 801D0358 001CD2B8 38 61 00 7C */ addi r3, r1, 0x7c +/* 801D035C 001CD2BC 48 00 1A 85 */ bl GetBoundingBox__10CFishCloudCFv +/* 801D0360 001CD2C0 C0 A1 00 7C */ lfs f5, 0x7c(r1) +/* 801D0364 001CD2C4 3B A0 00 00 */ li r29, 0 +/* 801D0368 001CD2C8 C0 81 00 80 */ lfs f4, 0x80(r1) +/* 801D036C 001CD2CC C0 61 00 84 */ lfs f3, 0x84(r1) +/* 801D0370 001CD2D0 C0 41 00 88 */ lfs f2, 0x88(r1) +/* 801D0374 001CD2D4 C0 21 00 8C */ lfs f1, 0x8c(r1) +/* 801D0378 001CD2D8 C0 01 00 90 */ lfs f0, 0x90(r1) +/* 801D037C 001CD2DC D0 A1 00 94 */ stfs f5, 0x94(r1) +/* 801D0380 001CD2E0 D0 81 00 98 */ stfs f4, 0x98(r1) +/* 801D0384 001CD2E4 D0 61 00 9C */ stfs f3, 0x9c(r1) +/* 801D0388 001CD2E8 D0 41 00 A0 */ stfs f2, 0xa0(r1) +/* 801D038C 001CD2EC D0 21 00 A4 */ stfs f1, 0xa4(r1) +/* 801D0390 001CD2F0 D0 01 00 A8 */ stfs f0, 0xa8(r1) +/* 801D0394 001CD2F4 83 DB 00 F4 */ lwz r30, 0xf4(r27) +/* 801D0398 001CD2F8 48 00 03 2C */ b lbl_801D06C4 +lbl_801D039C: +/* 801D039C 001CD2FC 88 1E 00 20 */ lbz r0, 0x20(r30) +/* 801D03A0 001CD300 28 00 00 00 */ cmplwi r0, 0 +/* 801D03A4 001CD304 41 82 03 18 */ beq lbl_801D06BC +/* 801D03A8 001CD308 80 9B 01 1C */ lwz r4, 0x11c(r27) +/* 801D03AC 001CD30C 80 1B 01 18 */ lwz r0, 0x118(r27) +/* 801D03B0 001CD310 7F A3 20 38 */ and r3, r29, r4 +/* 801D03B4 001CD314 7C 00 20 38 */ and r0, r0, r4 +/* 801D03B8 001CD318 7C 03 00 00 */ cmpw r3, r0 +/* 801D03BC 001CD31C 40 82 03 00 */ bne lbl_801D06BC +/* 801D03C0 001CD320 80 A1 00 AC */ lwz r5, 0xac(r1) +/* 801D03C4 001CD324 38 60 00 00 */ li r3, 0 +/* 801D03C8 001CD328 2C 05 00 00 */ cmpwi r5, 0 +/* 801D03CC 001CD32C 40 81 00 44 */ ble lbl_801D0410 +/* 801D03D0 001CD330 2C 05 00 08 */ cmpwi r5, 8 +/* 801D03D4 001CD334 38 85 FF F8 */ addi r4, r5, -8 +/* 801D03D8 001CD338 40 81 00 20 */ ble lbl_801D03F8 +/* 801D03DC 001CD33C 38 04 00 07 */ addi r0, r4, 7 +/* 801D03E0 001CD340 54 00 E8 FE */ srwi r0, r0, 3 +/* 801D03E4 001CD344 7C 09 03 A6 */ mtctr r0 +/* 801D03E8 001CD348 2C 04 00 00 */ cmpwi r4, 0 +/* 801D03EC 001CD34C 40 81 00 0C */ ble lbl_801D03F8 +lbl_801D03F0: +/* 801D03F0 001CD350 38 63 00 08 */ addi r3, r3, 8 +/* 801D03F4 001CD354 42 00 FF FC */ bdnz lbl_801D03F0 +lbl_801D03F8: +/* 801D03F8 001CD358 7C 03 28 50 */ subf r0, r3, r5 +/* 801D03FC 001CD35C 7C 09 03 A6 */ mtctr r0 +/* 801D0400 001CD360 7C 03 28 00 */ cmpw r3, r5 +/* 801D0404 001CD364 40 80 00 0C */ bge lbl_801D0410 +lbl_801D0408: +/* 801D0408 001CD368 38 63 00 01 */ addi r3, r3, 1 +/* 801D040C 001CD36C 42 00 FF FC */ bdnz lbl_801D0408 +lbl_801D0410: +/* 801D0410 001CD370 38 00 00 00 */ li r0, 0 +/* 801D0414 001CD374 90 01 00 AC */ stw r0, 0xac(r1) +/* 801D0418 001CD378 88 1B 02 50 */ lbz r0, 0x250(r27) +/* 801D041C 001CD37C 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 801D0420 001CD380 41 82 00 1C */ beq lbl_801D043C +/* 801D0424 001CD384 C0 3B 01 38 */ lfs f1, 0x138(r27) +/* 801D0428 001CD388 7F 63 DB 78 */ mr r3, r27 +/* 801D042C 001CD38C 7F C4 F3 78 */ mr r4, r30 +/* 801D0430 001CD390 38 A1 00 AC */ addi r5, r1, 0xac +/* 801D0434 001CD394 4B FF ED 01 */ bl "BuildBoidNearList__10CFishCloudFRC9CVector3ffRQ24rstl41reserved_vector" +/* 801D0438 001CD398 48 00 00 18 */ b lbl_801D0450 +lbl_801D043C: +/* 801D043C 001CD39C C0 3B 01 38 */ lfs f1, 0x138(r27) +/* 801D0440 001CD3A0 7F 63 DB 78 */ mr r3, r27 +/* 801D0444 001CD3A4 7F C4 F3 78 */ mr r4, r30 +/* 801D0448 001CD3A8 38 A1 00 AC */ addi r5, r1, 0xac +/* 801D044C 001CD3AC 4B FF ED D1 */ bl sub_801cf21c +lbl_801D0450: +/* 801D0450 001CD3B0 3B 40 00 00 */ li r26, 0 +/* 801D0454 001CD3B4 C3 C2 AB EC */ lfs f30, lbl_805AC90C@sda21(r2) +lbl_801D0458: +/* 801D0458 001CD3B8 2C 1A 00 03 */ cmpwi r26, 3 +/* 801D045C 001CD3BC 41 82 00 6C */ beq lbl_801D04C8 +/* 801D0460 001CD3C0 40 80 00 14 */ bge lbl_801D0474 +/* 801D0464 001CD3C4 2C 1A 00 01 */ cmpwi r26, 1 +/* 801D0468 001CD3C8 41 82 00 18 */ beq lbl_801D0480 +/* 801D046C 001CD3CC 40 80 00 28 */ bge lbl_801D0494 +/* 801D0470 001CD3D0 48 00 00 9C */ b lbl_801D050C +lbl_801D0474: +/* 801D0474 001CD3D4 2C 1A 00 05 */ cmpwi r26, 5 +/* 801D0478 001CD3D8 40 80 00 94 */ bge lbl_801D050C +/* 801D047C 001CD3DC 48 00 00 80 */ b lbl_801D04FC +lbl_801D0480: +/* 801D0480 001CD3E0 7F 63 DB 78 */ mr r3, r27 +/* 801D0484 001CD3E4 7F C4 F3 78 */ mr r4, r30 +/* 801D0488 001CD3E8 38 A1 00 AC */ addi r5, r1, 0xac +/* 801D048C 001CD3EC 4B FF E5 4D */ bl "ApplySeparation__10CFishCloudFRQ210CFishCloud5CBoidRCQ24rstl41reserved_vector" +/* 801D0490 001CD3F0 48 00 00 7C */ b lbl_801D050C +lbl_801D0494: +/* 801D0494 001CD3F4 88 1B 02 50 */ lbz r0, 0x250(r27) +/* 801D0498 001CD3F8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801D049C 001CD3FC 41 82 00 18 */ beq lbl_801D04B4 +/* 801D04A0 001CD400 7F E3 FB 78 */ mr r3, r31 +/* 801D04A4 001CD404 48 14 20 39 */ bl Float__9CRandom16Fv +/* 801D04A8 001CD408 C0 1B 01 2C */ lfs f0, 0x12c(r27) +/* 801D04AC 001CD40C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801D04B0 001CD410 40 81 00 5C */ ble lbl_801D050C +lbl_801D04B4: +/* 801D04B4 001CD414 7F 63 DB 78 */ mr r3, r27 +/* 801D04B8 001CD418 7F C4 F3 78 */ mr r4, r30 +/* 801D04BC 001CD41C 38 A1 00 AC */ addi r5, r1, 0xac +/* 801D04C0 001CD420 4B FF E6 ED */ bl "ApplyCohesion__10CFishCloudFRQ210CFishCloud5CBoidRCQ24rstl41reserved_vector" +/* 801D04C4 001CD424 48 00 00 48 */ b lbl_801D050C +lbl_801D04C8: +/* 801D04C8 001CD428 88 1B 02 50 */ lbz r0, 0x250(r27) +/* 801D04CC 001CD42C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801D04D0 001CD430 41 82 00 18 */ beq lbl_801D04E8 +/* 801D04D4 001CD434 7F E3 FB 78 */ mr r3, r31 +/* 801D04D8 001CD438 48 14 20 05 */ bl Float__9CRandom16Fv +/* 801D04DC 001CD43C C0 1B 01 2C */ lfs f0, 0x12c(r27) +/* 801D04E0 001CD440 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801D04E4 001CD444 40 81 00 28 */ ble lbl_801D050C +lbl_801D04E8: +/* 801D04E8 001CD448 7F 63 DB 78 */ mr r3, r27 +/* 801D04EC 001CD44C 7F C4 F3 78 */ mr r4, r30 +/* 801D04F0 001CD450 38 A1 00 AC */ addi r5, r1, 0xac +/* 801D04F4 001CD454 4B FF E8 B5 */ bl "ApplyAlignment__10CFishCloudFRQ210CFishCloud5CBoidRCQ24rstl41reserved_vector" +/* 801D04F8 001CD458 48 00 00 14 */ b lbl_801D050C +lbl_801D04FC: +/* 801D04FC 001CD45C 7F 63 DB 78 */ mr r3, r27 +/* 801D0500 001CD460 7F 84 E3 78 */ mr r4, r28 +/* 801D0504 001CD464 7F C5 F3 78 */ mr r5, r30 +/* 801D0508 001CD468 4B FF E7 8D */ bl sub_801cec94 +lbl_801D050C: +/* 801D050C 001CD46C C0 3E 00 0C */ lfs f1, 0xc(r30) +/* 801D0510 001CD470 C0 1E 00 10 */ lfs f0, 0x10(r30) +/* 801D0514 001CD474 EC 21 00 72 */ fmuls f1, f1, f1 +/* 801D0518 001CD478 C0 5E 00 14 */ lfs f2, 0x14(r30) +/* 801D051C 001CD47C EC 00 00 32 */ fmuls f0, f0, f0 +/* 801D0520 001CD480 EC 42 00 B2 */ fmuls f2, f2, f2 +/* 801D0524 001CD484 EC 01 00 2A */ fadds f0, f1, f0 +/* 801D0528 001CD488 EC 02 00 2A */ fadds f0, f2, f0 +/* 801D052C 001CD48C FC 00 F0 40 */ fcmpo cr0, f0, f30 +/* 801D0530 001CD490 41 81 00 10 */ bgt lbl_801D0540 +/* 801D0534 001CD494 3B 5A 00 01 */ addi r26, r26, 1 +/* 801D0538 001CD498 2C 1A 00 05 */ cmpwi r26, 5 +/* 801D053C 001CD49C 40 82 FF 1C */ bne lbl_801D0458 +lbl_801D0540: +/* 801D0540 001CD4A0 88 1B 02 50 */ lbz r0, 0x250(r27) +/* 801D0544 001CD4A4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801D0548 001CD4A8 40 82 01 74 */ bne lbl_801D06BC +/* 801D054C 001CD4AC C0 3E 00 0C */ lfs f1, 0xc(r30) +/* 801D0550 001CD4B0 C0 1E 00 10 */ lfs f0, 0x10(r30) +/* 801D0554 001CD4B4 EC 41 00 72 */ fmuls f2, f1, f1 +/* 801D0558 001CD4B8 C0 7E 00 14 */ lfs f3, 0x14(r30) +/* 801D055C 001CD4BC EC 20 00 32 */ fmuls f1, f0, f0 +/* 801D0560 001CD4C0 C0 02 AB EC */ lfs f0, lbl_805AC90C@sda21(r2) +/* 801D0564 001CD4C4 EC 63 00 F2 */ fmuls f3, f3, f3 +/* 801D0568 001CD4C8 EC 22 08 2A */ fadds f1, f2, f1 +/* 801D056C 001CD4CC EC 23 08 2A */ fadds f1, f3, f1 +/* 801D0570 001CD4D0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801D0574 001CD4D4 40 80 01 48 */ bge lbl_801D06BC +/* 801D0578 001CD4D8 83 5B 01 14 */ lwz r26, 0x114(r27) +/* 801D057C 001CD4DC 48 00 01 28 */ b lbl_801D06A4 +lbl_801D0580: +/* 801D0580 001CD4E0 A0 1A 00 00 */ lhz r0, 0(r26) +/* 801D0584 001CD4E4 7F 83 E3 78 */ mr r3, r28 +/* 801D0588 001CD4E8 38 81 00 10 */ addi r4, r1, 0x10 +/* 801D058C 001CD4EC B0 01 00 10 */ sth r0, 0x10(r1) +/* 801D0590 001CD4F0 4B E7 BF E5 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801D0594 001CD4F4 7C 64 1B 78 */ mr r4, r3 +/* 801D0598 001CD4F8 38 61 00 34 */ addi r3, r1, 0x34 +/* 801D059C 001CD4FC 4B ED F6 F5 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 801D05A0 001CD500 80 A3 00 04 */ lwz r5, 4(r3) +/* 801D05A4 001CD504 28 05 00 00 */ cmplwi r5, 0 +/* 801D05A8 001CD508 41 82 00 BC */ beq lbl_801D0664 +/* 801D05AC 001CD50C 88 1A 00 0D */ lbz r0, 0xd(r26) +/* 801D05B0 001CD510 28 00 00 00 */ cmplwi r0, 0 +/* 801D05B4 001CD514 41 82 00 3C */ beq lbl_801D05F0 +/* 801D05B8 001CD518 88 DA 00 0C */ lbz r6, 0xc(r26) +/* 801D05BC 001CD51C 7F 63 DB 78 */ mr r3, r27 +/* 801D05C0 001CD520 C0 5A 00 04 */ lfs f2, 4(r26) +/* 801D05C4 001CD524 7F C4 F3 78 */ mr r4, r30 +/* 801D05C8 001CD528 C0 65 00 60 */ lfs f3, 0x60(r5) +/* 801D05CC 001CD52C C0 25 00 50 */ lfs f1, 0x50(r5) +/* 801D05D0 001CD530 C0 05 00 40 */ lfs f0, 0x40(r5) +/* 801D05D4 001CD534 38 A1 00 54 */ addi r5, r1, 0x54 +/* 801D05D8 001CD538 D0 01 00 54 */ stfs f0, 0x54(r1) +/* 801D05DC 001CD53C D0 21 00 58 */ stfs f1, 0x58(r1) +/* 801D05E0 001CD540 D0 61 00 5C */ stfs f3, 0x5c(r1) +/* 801D05E4 001CD544 C0 3A 00 08 */ lfs f1, 8(r26) +/* 801D05E8 001CD548 4B FF E9 29 */ bl sub_801cef10 +/* 801D05EC 001CD54C 48 00 00 B4 */ b lbl_801D06A0 +lbl_801D05F0: +/* 801D05F0 001CD550 88 1A 00 0C */ lbz r0, 0xc(r26) +/* 801D05F4 001CD554 28 00 00 00 */ cmplwi r0, 0 +/* 801D05F8 001CD558 41 82 00 38 */ beq lbl_801D0630 +/* 801D05FC 001CD55C C0 5A 00 08 */ lfs f2, 8(r26) +/* 801D0600 001CD560 7F 63 DB 78 */ mr r3, r27 +/* 801D0604 001CD564 C0 3A 00 04 */ lfs f1, 4(r26) +/* 801D0608 001CD568 7F C4 F3 78 */ mr r4, r30 +/* 801D060C 001CD56C C0 85 00 60 */ lfs f4, 0x60(r5) +/* 801D0610 001CD570 C0 65 00 50 */ lfs f3, 0x50(r5) +/* 801D0614 001CD574 C0 05 00 40 */ lfs f0, 0x40(r5) +/* 801D0618 001CD578 38 A1 00 48 */ addi r5, r1, 0x48 +/* 801D061C 001CD57C D0 01 00 48 */ stfs f0, 0x48(r1) +/* 801D0620 001CD580 D0 61 00 4C */ stfs f3, 0x4c(r1) +/* 801D0624 001CD584 D0 81 00 50 */ stfs f4, 0x50(r1) +/* 801D0628 001CD588 4B FF E1 59 */ bl ApplyRepulsion__10CFishCloudFRQ210CFishCloud5CBoidRC9CVector3fff +/* 801D062C 001CD58C 48 00 00 74 */ b lbl_801D06A0 +lbl_801D0630: +/* 801D0630 001CD590 C0 5A 00 08 */ lfs f2, 8(r26) +/* 801D0634 001CD594 7F 63 DB 78 */ mr r3, r27 +/* 801D0638 001CD598 C0 3A 00 04 */ lfs f1, 4(r26) +/* 801D063C 001CD59C 7F C4 F3 78 */ mr r4, r30 +/* 801D0640 001CD5A0 C0 85 00 60 */ lfs f4, 0x60(r5) +/* 801D0644 001CD5A4 C0 65 00 50 */ lfs f3, 0x50(r5) +/* 801D0648 001CD5A8 C0 05 00 40 */ lfs f0, 0x40(r5) +/* 801D064C 001CD5AC 38 A1 00 3C */ addi r5, r1, 0x3c +/* 801D0650 001CD5B0 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 801D0654 001CD5B4 D0 61 00 40 */ stfs f3, 0x40(r1) +/* 801D0658 001CD5B8 D0 81 00 44 */ stfs f4, 0x44(r1) +/* 801D065C 001CD5BC 4B FF E1 45 */ bl ApplyAttraction__10CFishCloudFRQ210CFishCloud5CBoidRC9CVector3fff +/* 801D0660 001CD5C0 48 00 00 40 */ b lbl_801D06A0 +lbl_801D0664: +/* 801D0664 001CD5C4 88 1A 00 0C */ lbz r0, 0xc(r26) +/* 801D0668 001CD5C8 28 00 00 00 */ cmplwi r0, 0 +/* 801D066C 001CD5CC 41 82 00 1C */ beq lbl_801D0688 +/* 801D0670 001CD5D0 A0 1A 00 00 */ lhz r0, 0(r26) +/* 801D0674 001CD5D4 7F 63 DB 78 */ mr r3, r27 +/* 801D0678 001CD5D8 38 81 00 0C */ addi r4, r1, 0xc +/* 801D067C 001CD5DC B0 01 00 0C */ sth r0, 0xc(r1) +/* 801D0680 001CD5E0 48 00 03 1D */ bl sub_801d099c +/* 801D0684 001CD5E4 48 00 00 38 */ b lbl_801D06BC +lbl_801D0688: +/* 801D0688 001CD5E8 A0 1A 00 00 */ lhz r0, 0(r26) +/* 801D068C 001CD5EC 7F 63 DB 78 */ mr r3, r27 +/* 801D0690 001CD5F0 38 81 00 08 */ addi r4, r1, 8 +/* 801D0694 001CD5F4 B0 01 00 08 */ sth r0, 8(r1) +/* 801D0698 001CD5F8 48 00 04 F9 */ bl sub_801d0b90 +/* 801D069C 001CD5FC 48 00 00 20 */ b lbl_801D06BC +lbl_801D06A0: +/* 801D06A0 001CD600 3B 5A 00 10 */ addi r26, r26, 0x10 +lbl_801D06A4: +/* 801D06A4 001CD604 80 1B 01 0C */ lwz r0, 0x10c(r27) +/* 801D06A8 001CD608 80 7B 01 14 */ lwz r3, 0x114(r27) +/* 801D06AC 001CD60C 54 00 20 36 */ slwi r0, r0, 4 +/* 801D06B0 001CD610 7C 03 02 14 */ add r0, r3, r0 +/* 801D06B4 001CD614 7C 1A 00 40 */ cmplw r26, r0 +/* 801D06B8 001CD618 40 82 FE C8 */ bne lbl_801D0580 +lbl_801D06BC: +/* 801D06BC 001CD61C 3B DE 00 24 */ addi r30, r30, 0x24 +/* 801D06C0 001CD620 3B BD 00 01 */ addi r29, r29, 1 +lbl_801D06C4: +/* 801D06C4 001CD624 80 1B 00 EC */ lwz r0, 0xec(r27) +/* 801D06C8 001CD628 83 5B 00 F4 */ lwz r26, 0xf4(r27) +/* 801D06CC 001CD62C 1C 00 00 24 */ mulli r0, r0, 0x24 +/* 801D06D0 001CD630 7C 1A 02 14 */ add r0, r26, r0 +/* 801D06D4 001CD634 7C 1E 00 40 */ cmplw r30, r0 +/* 801D06D8 001CD638 40 82 FC C4 */ bne lbl_801D039C +/* 801D06DC 001CD63C 48 00 00 84 */ b lbl_801D0760 +lbl_801D06E0: +/* 801D06E0 001CD640 88 1A 00 20 */ lbz r0, 0x20(r26) +/* 801D06E4 001CD644 28 00 00 00 */ cmplwi r0, 0 +/* 801D06E8 001CD648 41 82 00 74 */ beq lbl_801D075C +/* 801D06EC 001CD64C 7F 63 DB 78 */ mr r3, r27 +/* 801D06F0 001CD650 7F 44 D3 78 */ mr r4, r26 +/* 801D06F4 001CD654 38 A1 00 94 */ addi r5, r1, 0x94 +/* 801D06F8 001CD658 4B FF DF 91 */ bl ApplyContainment__10CFishCloudFRQ210CFishCloud5CBoidRC6CAABox +/* 801D06FC 001CD65C 3B BA 00 0C */ addi r29, r26, 0xc +/* 801D0700 001CD660 7F A3 EB 78 */ mr r3, r29 +/* 801D0704 001CD664 48 14 41 B5 */ bl Magnitude__9CVector3fCFv +/* 801D0708 001CD668 C0 42 AB B8 */ lfs f2, lbl_805AC8D8@sda21(r2) +/* 801D070C 001CD66C C0 02 AB F0 */ lfs f0, lbl_805AC910@sda21(r2) +/* 801D0710 001CD670 EC 41 10 28 */ fsubs f2, f1, f2 +/* 801D0714 001CD674 FC 40 12 10 */ fabs f2, f2 +/* 801D0718 001CD678 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801D071C 001CD67C 41 80 00 30 */ blt lbl_801D074C +/* 801D0720 001CD680 C0 42 AB B4 */ lfs f2, lbl_805AC8D4@sda21(r2) +/* 801D0724 001CD684 C0 1D 00 00 */ lfs f0, 0(r29) +/* 801D0728 001CD688 EC 22 08 24 */ fdivs f1, f2, f1 +/* 801D072C 001CD68C EC 00 00 72 */ fmuls f0, f0, f1 +/* 801D0730 001CD690 D0 1D 00 00 */ stfs f0, 0(r29) +/* 801D0734 001CD694 C0 1D 00 04 */ lfs f0, 4(r29) +/* 801D0738 001CD698 EC 00 00 72 */ fmuls f0, f0, f1 +/* 801D073C 001CD69C D0 1D 00 04 */ stfs f0, 4(r29) +/* 801D0740 001CD6A0 C0 1D 00 08 */ lfs f0, 8(r29) +/* 801D0744 001CD6A4 EC 00 00 72 */ fmuls f0, f0, f1 +/* 801D0748 001CD6A8 D0 1D 00 08 */ stfs f0, 8(r29) +lbl_801D074C: +/* 801D074C 001CD6AC C0 22 AB F4 */ lfs f1, lbl_805AC914@sda21(r2) +/* 801D0750 001CD6B0 C0 1D 00 08 */ lfs f0, 8(r29) +/* 801D0754 001CD6B4 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801D0758 001CD6B8 D0 1D 00 08 */ stfs f0, 8(r29) +lbl_801D075C: +/* 801D075C 001CD6BC 3B 5A 00 24 */ addi r26, r26, 0x24 +lbl_801D0760: +/* 801D0760 001CD6C0 80 1B 00 EC */ lwz r0, 0xec(r27) +/* 801D0764 001CD6C4 80 7B 00 F4 */ lwz r3, 0xf4(r27) +/* 801D0768 001CD6C8 1C 00 00 24 */ mulli r0, r0, 0x24 +/* 801D076C 001CD6CC 7C 03 02 14 */ add r0, r3, r0 +/* 801D0770 001CD6D0 7C 1A 00 40 */ cmplw r26, r0 +/* 801D0774 001CD6D4 40 82 FF 6C */ bne lbl_801D06E0 +/* 801D0778 001CD6D8 C0 3B 01 2C */ lfs f1, 0x12c(r27) +/* 801D077C 001CD6DC C0 02 AB B8 */ lfs f0, lbl_805AC8D8@sda21(r2) +/* 801D0780 001CD6E0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801D0784 001CD6E4 40 81 00 10 */ ble lbl_801D0794 +/* 801D0788 001CD6E8 EC 01 F8 28 */ fsubs f0, f1, f31 +/* 801D078C 001CD6EC D0 1B 01 2C */ stfs f0, 0x12c(r27) +/* 801D0790 001CD6F0 48 00 00 18 */ b lbl_801D07A8 +lbl_801D0794: +/* 801D0794 001CD6F4 D0 1B 01 2C */ stfs f0, 0x12c(r27) +/* 801D0798 001CD6F8 38 60 00 00 */ li r3, 0 +/* 801D079C 001CD6FC 88 1B 02 50 */ lbz r0, 0x250(r27) +/* 801D07A0 001CD700 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801D07A4 001CD704 98 1B 02 50 */ stb r0, 0x250(r27) +lbl_801D07A8: +/* 801D07A8 001CD708 83 5B 00 F4 */ lwz r26, 0xf4(r27) +/* 801D07AC 001CD70C 48 00 00 8C */ b lbl_801D0838 +lbl_801D07B0: +/* 801D07B0 001CD710 88 1A 00 20 */ lbz r0, 0x20(r26) +/* 801D07B4 001CD714 28 00 00 00 */ cmplwi r0, 0 +/* 801D07B8 001CD718 41 82 00 7C */ beq lbl_801D0834 +/* 801D07BC 001CD71C C0 1A 00 0C */ lfs f0, 0xc(r26) +/* 801D07C0 001CD720 7F 63 DB 78 */ mr r3, r27 +/* 801D07C4 001CD724 C0 3A 00 10 */ lfs f1, 0x10(r26) +/* 801D07C8 001CD728 7F 45 D3 78 */ mr r5, r26 +/* 801D07CC 001CD72C EC 1F 00 32 */ fmuls f0, f31, f0 +/* 801D07D0 001CD730 C0 9B 01 30 */ lfs f4, 0x130(r27) +/* 801D07D4 001CD734 EC 7F 00 72 */ fmuls f3, f31, f1 +/* 801D07D8 001CD738 C0 5A 00 14 */ lfs f2, 0x14(r26) +/* 801D07DC 001CD73C C0 3A 00 00 */ lfs f1, 0(r26) +/* 801D07E0 001CD740 38 81 00 94 */ addi r4, r1, 0x94 +/* 801D07E4 001CD744 EC 04 00 32 */ fmuls f0, f4, f0 +/* 801D07E8 001CD748 EC 5F 00 B2 */ fmuls f2, f31, f2 +/* 801D07EC 001CD74C EC 64 00 F2 */ fmuls f3, f4, f3 +/* 801D07F0 001CD750 EC 01 00 2A */ fadds f0, f1, f0 +/* 801D07F4 001CD754 EC 24 00 B2 */ fmuls f1, f4, f2 +/* 801D07F8 001CD758 D0 1A 00 00 */ stfs f0, 0(r26) +/* 801D07FC 001CD75C C0 1A 00 04 */ lfs f0, 4(r26) +/* 801D0800 001CD760 EC 00 18 2A */ fadds f0, f0, f3 +/* 801D0804 001CD764 D0 1A 00 04 */ stfs f0, 4(r26) +/* 801D0808 001CD768 C0 1A 00 08 */ lfs f0, 8(r26) +/* 801D080C 001CD76C EC 00 08 2A */ fadds f0, f0, f1 +/* 801D0810 001CD770 D0 1A 00 08 */ stfs f0, 8(r26) +/* 801D0814 001CD774 48 00 14 AD */ bl PointInBox__10CFishCloudCFRC6CAABoxRC9CVector3f +/* 801D0818 001CD778 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801D081C 001CD77C 40 82 00 18 */ bne lbl_801D0834 +/* 801D0820 001CD780 7F 63 DB 78 */ mr r3, r27 +/* 801D0824 001CD784 7F 84 E3 78 */ mr r4, r28 +/* 801D0828 001CD788 7F 45 D3 78 */ mr r5, r26 +/* 801D082C 001CD78C 38 C1 00 94 */ addi r6, r1, 0x94 +/* 801D0830 001CD790 48 00 0D 91 */ bl PlaceBoid__10CFishCloudFR13CStateManagerRQ210CFishCloud5CBoidRC6CAABox +lbl_801D0834: +/* 801D0834 001CD794 3B 5A 00 24 */ addi r26, r26, 0x24 +lbl_801D0838: +/* 801D0838 001CD798 80 1B 00 EC */ lwz r0, 0xec(r27) +/* 801D083C 001CD79C 80 7B 00 F4 */ lwz r3, 0xf4(r27) +/* 801D0840 001CD7A0 1C 00 00 24 */ mulli r0, r0, 0x24 +/* 801D0844 001CD7A4 7C 03 02 14 */ add r0, r3, r0 +/* 801D0848 001CD7A8 7C 1A 00 40 */ cmplw r26, r0 +/* 801D084C 001CD7AC 40 82 FF 64 */ bne lbl_801D07B0 +/* 801D0850 001CD7B0 88 1B 02 50 */ lbz r0, 0x250(r27) +/* 801D0854 001CD7B4 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 801D0858 001CD7B8 41 82 00 5C */ beq lbl_801D08B4 +/* 801D085C 001CD7BC 3B A0 00 00 */ li r29, 0 +/* 801D0860 001CD7C0 3B 5B 01 B4 */ addi r26, r27, 0x1b4 +lbl_801D0864: +/* 801D0864 001CD7C4 80 7A 00 00 */ lwz r3, 0(r26) +/* 801D0868 001CD7C8 C0 22 AB B4 */ lfs f1, lbl_805AC8D4@sda21(r2) +/* 801D086C 001CD7CC 80 63 00 00 */ lwz r3, 0(r3) +/* 801D0870 001CD7D0 80 63 00 10 */ lwz r3, 0x10(r3) +/* 801D0874 001CD7D4 4B E5 AB F5 */ bl SetPlaybackRate__9CAnimDataFf +/* 801D0878 001CD7D8 80 1B 00 04 */ lwz r0, 4(r27) +/* 801D087C 001CD7DC FC 20 F8 90 */ fmr f1, f31 +/* 801D0880 001CD7E0 7F 85 E3 78 */ mr r5, r28 +/* 801D0884 001CD7E4 38 61 00 60 */ addi r3, r1, 0x60 +/* 801D0888 001CD7E8 90 01 00 18 */ stw r0, 0x18(r1) +/* 801D088C 001CD7EC 38 C1 00 18 */ addi r6, r1, 0x18 +/* 801D0890 001CD7F0 38 E0 00 01 */ li r7, 1 +/* 801D0894 001CD7F4 80 9A 00 00 */ lwz r4, 0(r26) +/* 801D0898 001CD7F8 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D089C 001CD7FC 80 84 00 00 */ lwz r4, 0(r4) +/* 801D08A0 001CD800 4B F4 52 95 */ bl AdvanceAnimation__10CModelDataFfR13CStateManager7TAreaIdb +/* 801D08A4 001CD804 3B BD 00 01 */ addi r29, r29, 1 +/* 801D08A8 001CD808 3B 5A 00 04 */ addi r26, r26, 4 +/* 801D08AC 001CD80C 2C 1D 00 04 */ cmpwi r29, 4 +/* 801D08B0 001CD810 41 80 FF B4 */ blt lbl_801D0864 +lbl_801D08B4: +/* 801D08B4 001CD814 80 A1 00 AC */ lwz r5, 0xac(r1) +/* 801D08B8 001CD818 38 60 00 00 */ li r3, 0 +/* 801D08BC 001CD81C 2C 05 00 00 */ cmpwi r5, 0 +/* 801D08C0 001CD820 40 81 00 40 */ ble lbl_801D0900 +/* 801D08C4 001CD824 2C 05 00 08 */ cmpwi r5, 8 +/* 801D08C8 001CD828 38 85 FF F8 */ addi r4, r5, -8 +/* 801D08CC 001CD82C 40 81 00 20 */ ble lbl_801D08EC +/* 801D08D0 001CD830 38 04 00 07 */ addi r0, r4, 7 +/* 801D08D4 001CD834 54 00 E8 FE */ srwi r0, r0, 3 +/* 801D08D8 001CD838 7C 09 03 A6 */ mtctr r0 +/* 801D08DC 001CD83C 2C 04 00 00 */ cmpwi r4, 0 +/* 801D08E0 001CD840 40 81 00 0C */ ble lbl_801D08EC +lbl_801D08E4: +/* 801D08E4 001CD844 38 63 00 08 */ addi r3, r3, 8 +/* 801D08E8 001CD848 42 00 FF FC */ bdnz lbl_801D08E4 +lbl_801D08EC: +/* 801D08EC 001CD84C 7C 03 28 50 */ subf r0, r3, r5 +/* 801D08F0 001CD850 7C 09 03 A6 */ mtctr r0 +/* 801D08F4 001CD854 7C 03 28 00 */ cmpw r3, r5 +/* 801D08F8 001CD858 40 80 00 08 */ bge lbl_801D0900 +lbl_801D08FC: +/* 801D08FC 001CD85C 42 00 00 00 */ bdnz lbl_801D08FC +lbl_801D0900: +/* 801D0900 001CD860 38 00 00 00 */ li r0, 0 +/* 801D0904 001CD864 90 01 00 AC */ stw r0, 0xac(r1) +lbl_801D0908: +/* 801D0908 001CD868 E3 E1 01 48 */ psq_l f31, 328(r1), 0, qr0 +/* 801D090C 001CD86C CB E1 01 40 */ lfd f31, 0x140(r1) +/* 801D0910 001CD870 E3 C1 01 38 */ psq_l f30, 312(r1), 0, qr0 +/* 801D0914 001CD874 CB C1 01 30 */ lfd f30, 0x130(r1) +/* 801D0918 001CD878 BB 41 01 18 */ lmw r26, 0x118(r1) +/* 801D091C 001CD87C 80 01 01 54 */ lwz r0, 0x154(r1) +/* 801D0920 001CD880 7C 08 03 A6 */ mtlr r0 +/* 801D0924 001CD884 38 21 01 50 */ addi r1, r1, 0x150 +/* 801D0928 001CD888 4E 80 00 20 */ blr + +.global GetTouchBounds__10CFishCloudCFv +GetTouchBounds__10CFishCloudCFv: +/* 801D092C 001CD88C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801D0930 001CD890 7C 08 02 A6 */ mflr r0 +/* 801D0934 001CD894 90 01 00 34 */ stw r0, 0x34(r1) +/* 801D0938 001CD898 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801D093C 001CD89C 7C 7F 1B 78 */ mr r31, r3 +/* 801D0940 001CD8A0 38 61 00 08 */ addi r3, r1, 8 +/* 801D0944 001CD8A4 48 00 14 9D */ bl GetBoundingBox__10CFishCloudCFv +/* 801D0948 001CD8A8 38 00 00 01 */ li r0, 1 +/* 801D094C 001CD8AC 28 1F 00 00 */ cmplwi r31, 0 +/* 801D0950 001CD8B0 98 1F 00 18 */ stb r0, 0x18(r31) +/* 801D0954 001CD8B4 41 82 00 34 */ beq lbl_801D0988 +/* 801D0958 001CD8B8 C0 01 00 08 */ lfs f0, 8(r1) +/* 801D095C 001CD8BC D0 1F 00 00 */ stfs f0, 0(r31) +/* 801D0960 001CD8C0 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 801D0964 001CD8C4 D0 1F 00 04 */ stfs f0, 4(r31) +/* 801D0968 001CD8C8 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 801D096C 001CD8CC D0 1F 00 08 */ stfs f0, 8(r31) +/* 801D0970 001CD8D0 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 801D0974 001CD8D4 D0 1F 00 0C */ stfs f0, 0xc(r31) +/* 801D0978 001CD8D8 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 801D097C 001CD8DC D0 1F 00 10 */ stfs f0, 0x10(r31) +/* 801D0980 001CD8E0 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 801D0984 001CD8E4 D0 1F 00 14 */ stfs f0, 0x14(r31) +lbl_801D0988: +/* 801D0988 001CD8E8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801D098C 001CD8EC 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801D0990 001CD8F0 7C 08 03 A6 */ mtlr r0 +/* 801D0994 001CD8F4 38 21 00 30 */ addi r1, r1, 0x30 +/* 801D0998 001CD8F8 4E 80 00 20 */ blr + +.global sub_801d099c +sub_801d099c: +/* 801D099C 001CD8FC 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801D09A0 001CD900 7C 08 02 A6 */ mflr r0 +/* 801D09A4 001CD904 C0 22 AB B8 */ lfs f1, lbl_805AC8D8@sda21(r2) +/* 801D09A8 001CD908 38 A0 00 01 */ li r5, 1 +/* 801D09AC 001CD90C 90 01 00 54 */ stw r0, 0x54(r1) +/* 801D09B0 001CD910 38 C0 00 00 */ li r6, 0 +/* 801D09B4 001CD914 FC 40 08 90 */ fmr f2, f1 +/* 801D09B8 001CD918 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801D09BC 001CD91C 93 C1 00 48 */ stw r30, 0x48(r1) +/* 801D09C0 001CD920 7C 7E 1B 78 */ mr r30, r3 +/* 801D09C4 001CD924 38 61 00 30 */ addi r3, r1, 0x30 +/* 801D09C8 001CD928 48 00 24 F5 */ bl __ct__Q210CFishCloud15CModifierSourceFRC9TUniqueIdbff +/* 801D09CC 001CD92C 80 1E 01 0C */ lwz r0, 0x10c(r30) +/* 801D09D0 001CD930 38 61 00 0C */ addi r3, r1, 0xc +/* 801D09D4 001CD934 80 DE 01 14 */ lwz r6, 0x114(r30) +/* 801D09D8 001CD938 38 81 00 10 */ addi r4, r1, 0x10 +/* 801D09DC 001CD93C 54 00 20 36 */ slwi r0, r0, 4 +/* 801D09E0 001CD940 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801D09E4 001CD944 7C E6 02 14 */ add r7, r6, r0 +/* 801D09E8 001CD948 38 C1 00 30 */ addi r6, r1, 0x30 +/* 801D09EC 001CD94C 90 E1 00 24 */ stw r7, 0x24(r1) +/* 801D09F0 001CD950 80 1E 01 14 */ lwz r0, 0x114(r30) +/* 801D09F4 001CD954 90 E1 00 20 */ stw r7, 0x20(r1) +/* 801D09F8 001CD958 90 01 00 28 */ stw r0, 0x28(r1) +/* 801D09FC 001CD95C 90 E1 00 14 */ stw r7, 0x14(r1) +/* 801D0A00 001CD960 90 01 00 10 */ stw r0, 0x10(r1) +/* 801D0A04 001CD964 48 00 29 B9 */ bl "lower_bound,Q24rstl17rmemory_allocator>,Q210CFishCloud15CModifierSource>__4rstlFQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl152pointer_iterator,Q24rstl17rmemory_allocator>,Q210CFishCloud15CModifierSource>__4rstlFQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl152pointer_iterator,Q24rstl17rmemory_allocator>,Q210CFishCloud15CModifierSource>__4rstlFQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl152pointer_iterator,Q24rstl17rmemory_allocator>,Q210CFishCloud15CModifierSource>__4rstlFQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl152pointer_iterator,Q24rstl17rmemory_allocator>,Q210CFishCloud15CModifierSource>__4rstlFQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl152pointer_iterator,Q24rstl17rmemory_allocator>,Q210CFishCloud15CModifierSource>__4rstlFQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl152pointer_iteratorFi" +/* 801D1374 001CE2D4 7F C4 F3 78 */ mr r4, r30 +/* 801D1378 001CE2D8 38 61 00 30 */ addi r3, r1, 0x30 +/* 801D137C 001CE2DC 48 00 09 FD */ bl GetUntransformedBoundingBox__10CFishCloudCFv +/* 801D1380 001CE2E0 C0 01 00 30 */ lfs f0, 0x30(r1) +/* 801D1384 001CE2E4 3B 80 00 00 */ li r28, 0 +/* 801D1388 001CE2E8 C0 E1 00 34 */ lfs f7, 0x34(r1) +/* 801D138C 001CE2EC C0 C1 00 38 */ lfs f6, 0x38(r1) +/* 801D1390 001CE2F0 FE A0 00 18 */ frsp f21, f0 +/* 801D1394 001CE2F4 C0 A1 00 3C */ lfs f5, 0x3c(r1) +/* 801D1398 001CE2F8 FF C0 38 18 */ frsp f30, f7 +/* 801D139C 001CE2FC C0 81 00 40 */ lfs f4, 0x40(r1) +/* 801D13A0 001CE300 FF 80 30 18 */ frsp f28, f6 +/* 801D13A4 001CE304 C0 61 00 44 */ lfs f3, 0x44(r1) +/* 801D13A8 001CE308 FC 20 20 18 */ frsp f1, f4 +/* 801D13AC 001CE30C D0 01 00 48 */ stfs f0, 0x48(r1) +/* 801D13B0 001CE310 FC 40 18 18 */ frsp f2, f3 +/* 801D13B4 001CE314 83 BF 09 00 */ lwz r29, 0x900(r31) +/* 801D13B8 001CE318 FC 00 28 18 */ frsp f0, f5 +/* 801D13BC 001CE31C D0 E1 00 4C */ stfs f7, 0x4c(r1) +/* 801D13C0 001CE320 EF A2 E0 28 */ fsubs f29, f2, f28 +/* 801D13C4 001CE324 D0 C1 00 50 */ stfs f6, 0x50(r1) +/* 801D13C8 001CE328 EF E1 F0 28 */ fsubs f31, f1, f30 +/* 801D13CC 001CE32C C2 C2 AB CC */ lfs f22, lbl_805AC8EC@sda21(r2) +/* 801D13D0 001CE330 EF 60 A8 28 */ fsubs f27, f0, f21 +/* 801D13D4 001CE334 D0 A1 00 54 */ stfs f5, 0x54(r1) +/* 801D13D8 001CE338 D0 81 00 58 */ stfs f4, 0x58(r1) +/* 801D13DC 001CE33C C2 E2 AB B8 */ lfs f23, lbl_805AC8D8@sda21(r2) +/* 801D13E0 001CE340 D0 61 00 5C */ stfs f3, 0x5c(r1) +/* 801D13E4 001CE344 C3 02 AB E0 */ lfs f24, lbl_805AC900@sda21(r2) +/* 801D13E8 001CE348 C3 22 AB F8 */ lfs f25, lbl_805AC918@sda21(r2) +/* 801D13EC 001CE34C 48 00 01 24 */ b lbl_801D1510 +lbl_801D13F0: +/* 801D13F0 001CE350 7F A3 EB 78 */ mr r3, r29 +/* 801D13F4 001CE354 48 14 10 E9 */ bl Float__9CRandom16Fv +/* 801D13F8 001CE358 EE 81 E7 7A */ fmadds f20, f1, f29, f28 +/* 801D13FC 001CE35C 7F A3 EB 78 */ mr r3, r29 +/* 801D1400 001CE360 48 14 10 DD */ bl Float__9CRandom16Fv +/* 801D1404 001CE364 EF 41 F7 FA */ fmadds f26, f1, f31, f30 +/* 801D1408 001CE368 7F A3 EB 78 */ mr r3, r29 +/* 801D140C 001CE36C 48 14 10 D1 */ bl Float__9CRandom16Fv +/* 801D1410 001CE370 EC 01 AE FA */ fmadds f0, f1, f27, f21 +/* 801D1414 001CE374 D3 41 00 28 */ stfs f26, 0x28(r1) +/* 801D1418 001CE378 7F A3 EB 78 */ mr r3, r29 +/* 801D141C 001CE37C D2 81 00 2C */ stfs f20, 0x2c(r1) +/* 801D1420 001CE380 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801D1424 001CE384 48 14 10 B9 */ bl Float__9CRandom16Fv +/* 801D1428 001CE388 EE 81 B0 28 */ fsubs f20, f1, f22 +/* 801D142C 001CE38C 7F A3 EB 78 */ mr r3, r29 +/* 801D1430 001CE390 48 14 10 AD */ bl Float__9CRandom16Fv +/* 801D1434 001CE394 EC 01 B0 28 */ fsubs f0, f1, f22 +/* 801D1438 001CE398 D2 81 00 10 */ stfs f20, 0x10(r1) +/* 801D143C 001CE39C 7F A3 EB 78 */ mr r3, r29 +/* 801D1440 001CE3A0 D2 E1 00 14 */ stfs f23, 0x14(r1) +/* 801D1444 001CE3A4 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801D1448 001CE3A8 48 14 10 95 */ bl Float__9CRandom16Fv +/* 801D144C 001CE3AC C0 42 AB FC */ lfs f2, lbl_805AC91C@sda21(r2) +/* 801D1450 001CE3B0 48 14 3E DD */ bl PowF__5CMathFff +/* 801D1454 001CE3B4 EF 58 C8 7A */ fmadds f26, f24, f1, f25 +/* 801D1458 001CE3B8 38 61 00 18 */ addi r3, r1, 0x18 +/* 801D145C 001CE3BC 38 9E 00 34 */ addi r4, r30, 0x34 +/* 801D1460 001CE3C0 38 A1 00 24 */ addi r5, r1, 0x24 +/* 801D1464 001CE3C4 48 14 16 85 */ bl __ml__12CTransform4fCFRC9CVector3f +/* 801D1468 001CE3C8 FC 20 D0 90 */ fmr f1, f26 +/* 801D146C 001CE3CC 38 61 00 60 */ addi r3, r1, 0x60 +/* 801D1470 001CE3D0 38 81 00 18 */ addi r4, r1, 0x18 +/* 801D1474 001CE3D4 38 A1 00 0C */ addi r5, r1, 0xc +/* 801D1478 001CE3D8 48 00 19 CD */ bl __ct__Q210CFishCloud5CBoidFRC9CVector3fRC9CVector3ff +/* 801D147C 001CE3DC 80 1E 00 EC */ lwz r0, 0xec(r30) +/* 801D1480 001CE3E0 80 BE 00 F0 */ lwz r5, 0xf0(r30) +/* 801D1484 001CE3E4 7C 00 28 00 */ cmpw r0, r5 +/* 801D1488 001CE3E8 41 80 00 1C */ blt lbl_801D14A4 +/* 801D148C 001CE3EC 2C 05 00 00 */ cmpwi r5, 0 +/* 801D1490 001CE3F0 38 7E 00 E8 */ addi r3, r30, 0xe8 +/* 801D1494 001CE3F4 38 80 00 04 */ li r4, 4 +/* 801D1498 001CE3F8 41 82 00 08 */ beq lbl_801D14A0 +/* 801D149C 001CE3FC 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801D14A0: +/* 801D14A0 001CE400 48 00 21 D9 */ bl "reserve__Q24rstl55vectorFi" +lbl_801D14A4: +/* 801D14A4 001CE404 80 1E 00 EC */ lwz r0, 0xec(r30) +/* 801D14A8 001CE408 80 7E 00 F4 */ lwz r3, 0xf4(r30) +/* 801D14AC 001CE40C 1C 00 00 24 */ mulli r0, r0, 0x24 +/* 801D14B0 001CE410 7C 63 02 15 */ add. r3, r3, r0 +/* 801D14B4 001CE414 41 82 00 4C */ beq lbl_801D1500 +/* 801D14B8 001CE418 C0 01 00 60 */ lfs f0, 0x60(r1) +/* 801D14BC 001CE41C D0 03 00 00 */ stfs f0, 0(r3) +/* 801D14C0 001CE420 C0 01 00 64 */ lfs f0, 0x64(r1) +/* 801D14C4 001CE424 D0 03 00 04 */ stfs f0, 4(r3) +/* 801D14C8 001CE428 C0 01 00 68 */ lfs f0, 0x68(r1) +/* 801D14CC 001CE42C D0 03 00 08 */ stfs f0, 8(r3) +/* 801D14D0 001CE430 C0 01 00 6C */ lfs f0, 0x6c(r1) +/* 801D14D4 001CE434 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 801D14D8 001CE438 C0 01 00 70 */ lfs f0, 0x70(r1) +/* 801D14DC 001CE43C D0 03 00 10 */ stfs f0, 0x10(r3) +/* 801D14E0 001CE440 C0 01 00 74 */ lfs f0, 0x74(r1) +/* 801D14E4 001CE444 D0 03 00 14 */ stfs f0, 0x14(r3) +/* 801D14E8 001CE448 C0 01 00 78 */ lfs f0, 0x78(r1) +/* 801D14EC 001CE44C D0 03 00 18 */ stfs f0, 0x18(r3) +/* 801D14F0 001CE450 80 01 00 7C */ lwz r0, 0x7c(r1) +/* 801D14F4 001CE454 90 03 00 1C */ stw r0, 0x1c(r3) +/* 801D14F8 001CE458 88 01 00 80 */ lbz r0, 0x80(r1) +/* 801D14FC 001CE45C 98 03 00 20 */ stb r0, 0x20(r3) +lbl_801D1500: +/* 801D1500 001CE460 80 7E 00 EC */ lwz r3, 0xec(r30) +/* 801D1504 001CE464 3B 9C 00 01 */ addi r28, r28, 1 +/* 801D1508 001CE468 38 03 00 01 */ addi r0, r3, 1 +/* 801D150C 001CE46C 90 1E 00 EC */ stw r0, 0xec(r30) +lbl_801D1510: +/* 801D1510 001CE470 80 1E 00 F0 */ lwz r0, 0xf0(r30) +/* 801D1514 001CE474 7C 1C 00 00 */ cmpw r28, r0 +/* 801D1518 001CE478 41 80 FE D8 */ blt lbl_801D13F0 +/* 801D151C 001CE47C 7F C3 F3 78 */ mr r3, r30 +/* 801D1520 001CE480 4B FF E2 E5 */ bl CreatePartitionList__10CFishCloudFv +/* 801D1524 001CE484 88 1E 02 50 */ lbz r0, 0x250(r30) +/* 801D1528 001CE488 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 801D152C 001CE48C 41 82 00 14 */ beq lbl_801D1540 +/* 801D1530 001CE490 7F C3 F3 78 */ mr r3, r30 +/* 801D1534 001CE494 7F E4 FB 78 */ mr r4, r31 +/* 801D1538 001CE498 38 A0 00 00 */ li r5, 0 +/* 801D153C 001CE49C 48 00 09 ED */ bl sub_801d1f28 +lbl_801D1540: +/* 801D1540 001CE4A0 E3 E1 01 58 */ psq_l f31, 344(r1), 0, qr0 +/* 801D1544 001CE4A4 CB E1 01 50 */ lfd f31, 0x150(r1) +/* 801D1548 001CE4A8 E3 C1 01 48 */ psq_l f30, 328(r1), 0, qr0 +/* 801D154C 001CE4AC CB C1 01 40 */ lfd f30, 0x140(r1) +/* 801D1550 001CE4B0 E3 A1 01 38 */ psq_l f29, 312(r1), 0, qr0 +/* 801D1554 001CE4B4 CB A1 01 30 */ lfd f29, 0x130(r1) +/* 801D1558 001CE4B8 E3 81 01 28 */ psq_l f28, 296(r1), 0, qr0 +/* 801D155C 001CE4BC CB 81 01 20 */ lfd f28, 0x120(r1) +/* 801D1560 001CE4C0 E3 61 01 18 */ psq_l f27, 280(r1), 0, qr0 +/* 801D1564 001CE4C4 CB 61 01 10 */ lfd f27, 0x110(r1) +/* 801D1568 001CE4C8 E3 41 01 08 */ psq_l f26, 264(r1), 0, qr0 +/* 801D156C 001CE4CC CB 41 01 00 */ lfd f26, 0x100(r1) +/* 801D1570 001CE4D0 E3 21 00 F8 */ psq_l f25, 248(r1), 0, qr0 +/* 801D1574 001CE4D4 CB 21 00 F0 */ lfd f25, 0xf0(r1) +/* 801D1578 001CE4D8 E3 01 00 E8 */ psq_l f24, 232(r1), 0, qr0 +/* 801D157C 001CE4DC CB 01 00 E0 */ lfd f24, 0xe0(r1) +/* 801D1580 001CE4E0 E2 E1 00 D8 */ psq_l f23, 216(r1), 0, qr0 +/* 801D1584 001CE4E4 CA E1 00 D0 */ lfd f23, 0xd0(r1) +/* 801D1588 001CE4E8 E2 C1 00 C8 */ psq_l f22, 200(r1), 0, qr0 +/* 801D158C 001CE4EC CA C1 00 C0 */ lfd f22, 0xc0(r1) +/* 801D1590 001CE4F0 E2 A1 00 B8 */ psq_l f21, 184(r1), 0, qr0 +/* 801D1594 001CE4F4 CA A1 00 B0 */ lfd f21, 0xb0(r1) +/* 801D1598 001CE4F8 E2 81 00 A8 */ psq_l f20, 168(r1), 0, qr0 +/* 801D159C 001CE4FC CA 81 00 A0 */ lfd f20, 0xa0(r1) +/* 801D15A0 001CE500 83 E1 00 9C */ lwz r31, 0x9c(r1) +/* 801D15A4 001CE504 83 C1 00 98 */ lwz r30, 0x98(r1) +/* 801D15A8 001CE508 83 A1 00 94 */ lwz r29, 0x94(r1) +/* 801D15AC 001CE50C 80 01 01 64 */ lwz r0, 0x164(r1) +/* 801D15B0 001CE510 83 81 00 90 */ lwz r28, 0x90(r1) +/* 801D15B4 001CE514 7C 08 03 A6 */ mtlr r0 +/* 801D15B8 001CE518 38 21 01 60 */ addi r1, r1, 0x160 +/* 801D15BC 001CE51C 4E 80 00 20 */ blr + +.global PlaceBoid__10CFishCloudFR13CStateManagerRQ210CFishCloud5CBoidRC6CAABox +PlaceBoid__10CFishCloudFR13CStateManagerRQ210CFishCloud5CBoidRC6CAABox: +/* 801D15C0 001CE520 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 801D15C4 001CE524 7C 08 02 A6 */ mflr r0 +/* 801D15C8 001CE528 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 801D15CC 001CE52C DB E1 00 A0 */ stfd f31, 0xa0(r1) +/* 801D15D0 001CE530 F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0 +/* 801D15D4 001CE534 DB C1 00 90 */ stfd f30, 0x90(r1) +/* 801D15D8 001CE538 F3 C1 00 98 */ psq_st f30, 152(r1), 0, qr0 +/* 801D15DC 001CE53C DB A1 00 80 */ stfd f29, 0x80(r1) +/* 801D15E0 001CE540 F3 A1 00 88 */ psq_st f29, 136(r1), 0, qr0 +/* 801D15E4 001CE544 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 801D15E8 001CE548 93 C1 00 78 */ stw r30, 0x78(r1) +/* 801D15EC 001CE54C 93 A1 00 74 */ stw r29, 0x74(r1) +/* 801D15F0 001CE550 93 81 00 70 */ stw r28, 0x70(r1) +/* 801D15F4 001CE554 7C 7C 1B 78 */ mr r28, r3 +/* 801D15F8 001CE558 83 E4 09 00 */ lwz r31, 0x900(r4) +/* 801D15FC 001CE55C 7C BD 2B 78 */ mr r29, r5 +/* 801D1600 001CE560 7C DE 33 78 */ mr r30, r6 +/* 801D1604 001CE564 7F 84 E3 78 */ mr r4, r28 +/* 801D1608 001CE568 38 61 00 14 */ addi r3, r1, 0x14 +/* 801D160C 001CE56C 7F C5 F3 78 */ mr r5, r30 +/* 801D1610 001CE570 7F A6 EB 78 */ mr r6, r29 +/* 801D1614 001CE574 48 00 02 41 */ bl FindClosestPlane__10CFishCloudCFRC6CAABoxRC9CVector3f +/* 801D1618 001CE578 C0 E1 00 18 */ lfs f7, 0x18(r1) +/* 801D161C 001CE57C 7F E3 FB 78 */ mr r3, r31 +/* 801D1620 001CE580 C0 1D 00 04 */ lfs f0, 4(r29) +/* 801D1624 001CE584 C1 01 00 14 */ lfs f8, 0x14(r1) +/* 801D1628 001CE588 EC 07 00 32 */ fmuls f0, f7, f0 +/* 801D162C 001CE58C C0 3D 00 00 */ lfs f1, 0(r29) +/* 801D1630 001CE590 C0 62 AC 00 */ lfs f3, lbl_805AC920@sda21(r2) +/* 801D1634 001CE594 C0 C1 00 1C */ lfs f6, 0x1c(r1) +/* 801D1638 001CE598 EC 08 00 7A */ fmadds f0, f8, f1, f0 +/* 801D163C 001CE59C C0 3D 00 08 */ lfs f1, 8(r29) +/* 801D1640 001CE5A0 C0 A1 00 20 */ lfs f5, 0x20(r1) +/* 801D1644 001CE5A4 EC 43 02 32 */ fmuls f2, f3, f8 +/* 801D1648 001CE5A8 C0 9D 00 00 */ lfs f4, 0(r29) +/* 801D164C 001CE5AC ED 43 01 F2 */ fmuls f10, f3, f7 +/* 801D1650 001CE5B0 EC 06 00 7A */ fmadds f0, f6, f1, f0 +/* 801D1654 001CE5B4 D1 01 00 30 */ stfs f8, 0x30(r1) +/* 801D1658 001CE5B8 ED 23 01 B2 */ fmuls f9, f3, f6 +/* 801D165C 001CE5BC D0 E1 00 34 */ stfs f7, 0x34(r1) +/* 801D1660 001CE5C0 EC 00 28 28 */ fsubs f0, f0, f5 +/* 801D1664 001CE5C4 D0 C1 00 38 */ stfs f6, 0x38(r1) +/* 801D1668 001CE5C8 EC 60 02 32 */ fmuls f3, f0, f8 +/* 801D166C 001CE5CC D0 A1 00 3C */ stfs f5, 0x3c(r1) +/* 801D1670 001CE5D0 EC 20 01 F2 */ fmuls f1, f0, f7 +/* 801D1674 001CE5D4 EC 00 01 B2 */ fmuls f0, f0, f6 +/* 801D1678 001CE5D8 EC 43 10 2A */ fadds f2, f3, f2 +/* 801D167C 001CE5DC EC 21 50 2A */ fadds f1, f1, f10 +/* 801D1680 001CE5E0 EC 00 48 2A */ fadds f0, f0, f9 +/* 801D1684 001CE5E4 EC 44 10 28 */ fsubs f2, f4, f2 +/* 801D1688 001CE5E8 D0 5D 00 00 */ stfs f2, 0(r29) +/* 801D168C 001CE5EC C0 5D 00 04 */ lfs f2, 4(r29) +/* 801D1690 001CE5F0 EC 22 08 28 */ fsubs f1, f2, f1 +/* 801D1694 001CE5F4 D0 3D 00 04 */ stfs f1, 4(r29) +/* 801D1698 001CE5F8 C0 3D 00 08 */ lfs f1, 8(r29) +/* 801D169C 001CE5FC EC 01 00 28 */ fsubs f0, f1, f0 +/* 801D16A0 001CE600 D0 1D 00 08 */ stfs f0, 8(r29) +/* 801D16A4 001CE604 48 14 0E 39 */ bl Float__9CRandom16Fv +/* 801D16A8 001CE608 C0 02 AB CC */ lfs f0, lbl_805AC8EC@sda21(r2) +/* 801D16AC 001CE60C 7F E3 FB 78 */ mr r3, r31 +/* 801D16B0 001CE610 EF C1 00 28 */ fsubs f30, f1, f0 +/* 801D16B4 001CE614 48 14 0E 29 */ bl Float__9CRandom16Fv +/* 801D16B8 001CE618 C0 42 AB CC */ lfs f2, lbl_805AC8EC@sda21(r2) +/* 801D16BC 001CE61C C0 02 AB B8 */ lfs f0, lbl_805AC8D8@sda21(r2) +/* 801D16C0 001CE620 EC 21 10 28 */ fsubs f1, f1, f2 +/* 801D16C4 001CE624 D0 3D 00 0C */ stfs f1, 0xc(r29) +/* 801D16C8 001CE628 D3 DD 00 10 */ stfs f30, 0x10(r29) +/* 801D16CC 001CE62C D0 1D 00 14 */ stfs f0, 0x14(r29) +/* 801D16D0 001CE630 88 1C 02 50 */ lbz r0, 0x250(r28) +/* 801D16D4 001CE634 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801D16D8 001CE638 40 82 00 78 */ bne lbl_801D1750 +/* 801D16DC 001CE63C 7F C3 F3 78 */ mr r3, r30 +/* 801D16E0 001CE640 7F A4 EB 78 */ mr r4, r29 +/* 801D16E4 001CE644 48 16 5E 51 */ bl PointInside__6CAABoxCFRC9CVector3f +/* 801D16E8 001CE648 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801D16EC 001CE64C 40 82 01 30 */ bne lbl_801D181C +/* 801D16F0 001CE650 C3 BE 00 00 */ lfs f29, 0(r30) +/* 801D16F4 001CE654 7F E3 FB 78 */ mr r3, r31 +/* 801D16F8 001CE658 C3 DE 00 04 */ lfs f30, 4(r30) +/* 801D16FC 001CE65C C3 FE 00 08 */ lfs f31, 8(r30) +/* 801D1700 001CE660 48 14 0D DD */ bl Float__9CRandom16Fv +/* 801D1704 001CE664 C0 1E 00 14 */ lfs f0, 0x14(r30) +/* 801D1708 001CE668 7F E3 FB 78 */ mr r3, r31 +/* 801D170C 001CE66C EC 00 F8 28 */ fsubs f0, f0, f31 +/* 801D1710 001CE670 EF E1 F8 3A */ fmadds f31, f1, f0, f31 +/* 801D1714 001CE674 48 14 0D C9 */ bl Float__9CRandom16Fv +/* 801D1718 001CE678 C0 5E 00 10 */ lfs f2, 0x10(r30) +/* 801D171C 001CE67C 7F E3 FB 78 */ mr r3, r31 +/* 801D1720 001CE680 C0 1E 00 04 */ lfs f0, 4(r30) +/* 801D1724 001CE684 EC 02 00 28 */ fsubs f0, f2, f0 +/* 801D1728 001CE688 EF C1 F0 3A */ fmadds f30, f1, f0, f30 +/* 801D172C 001CE68C 48 14 0D B1 */ bl Float__9CRandom16Fv +/* 801D1730 001CE690 C0 5E 00 0C */ lfs f2, 0xc(r30) +/* 801D1734 001CE694 C0 1E 00 00 */ lfs f0, 0(r30) +/* 801D1738 001CE698 EC 02 00 28 */ fsubs f0, f2, f0 +/* 801D173C 001CE69C EC 01 E8 3A */ fmadds f0, f1, f0, f29 +/* 801D1740 001CE6A0 D0 1D 00 00 */ stfs f0, 0(r29) +/* 801D1744 001CE6A4 D3 DD 00 04 */ stfs f30, 4(r29) +/* 801D1748 001CE6A8 D3 FD 00 08 */ stfs f31, 8(r29) +/* 801D174C 001CE6AC 48 00 00 D0 */ b lbl_801D181C +lbl_801D1750: +/* 801D1750 001CE6B0 7F 83 E3 78 */ mr r3, r28 +/* 801D1754 001CE6B4 7F C4 F3 78 */ mr r4, r30 +/* 801D1758 001CE6B8 7F A5 EB 78 */ mr r5, r29 +/* 801D175C 001CE6BC 48 00 05 65 */ bl PointInBox__10CFishCloudCFRC6CAABoxRC9CVector3f +/* 801D1760 001CE6C0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801D1764 001CE6C4 40 82 00 B8 */ bne lbl_801D181C +/* 801D1768 001CE6C8 7F 84 E3 78 */ mr r4, r28 +/* 801D176C 001CE6CC 38 61 00 40 */ addi r3, r1, 0x40 +/* 801D1770 001CE6D0 48 00 06 09 */ bl GetUntransformedBoundingBox__10CFishCloudCFv +/* 801D1774 001CE6D4 C0 61 00 40 */ lfs f3, 0x40(r1) +/* 801D1778 001CE6D8 7F E3 FB 78 */ mr r3, r31 +/* 801D177C 001CE6DC C3 C1 00 44 */ lfs f30, 0x44(r1) +/* 801D1780 001CE6E0 C3 E1 00 48 */ lfs f31, 0x48(r1) +/* 801D1784 001CE6E4 C0 41 00 4C */ lfs f2, 0x4c(r1) +/* 801D1788 001CE6E8 C0 21 00 50 */ lfs f1, 0x50(r1) +/* 801D178C 001CE6EC C0 01 00 54 */ lfs f0, 0x54(r1) +/* 801D1790 001CE6F0 D0 61 00 58 */ stfs f3, 0x58(r1) +/* 801D1794 001CE6F4 D3 C1 00 5C */ stfs f30, 0x5c(r1) +/* 801D1798 001CE6F8 D3 E1 00 60 */ stfs f31, 0x60(r1) +/* 801D179C 001CE6FC D0 41 00 64 */ stfs f2, 0x64(r1) +/* 801D17A0 001CE700 D0 21 00 68 */ stfs f1, 0x68(r1) +/* 801D17A4 001CE704 D0 01 00 6C */ stfs f0, 0x6c(r1) +/* 801D17A8 001CE708 48 14 0D 35 */ bl Float__9CRandom16Fv +/* 801D17AC 001CE70C C0 01 00 6C */ lfs f0, 0x6c(r1) +/* 801D17B0 001CE710 7F E3 FB 78 */ mr r3, r31 +/* 801D17B4 001CE714 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 801D17B8 001CE718 EF E1 F8 3A */ fmadds f31, f1, f0, f31 +/* 801D17BC 001CE71C 48 14 0D 21 */ bl Float__9CRandom16Fv +/* 801D17C0 001CE720 C0 01 00 68 */ lfs f0, 0x68(r1) +/* 801D17C4 001CE724 7F E3 FB 78 */ mr r3, r31 +/* 801D17C8 001CE728 C0 41 00 64 */ lfs f2, 0x64(r1) +/* 801D17CC 001CE72C EC 60 F0 28 */ fsubs f3, f0, f30 +/* 801D17D0 001CE730 C0 01 00 58 */ lfs f0, 0x58(r1) +/* 801D17D4 001CE734 EF A2 00 28 */ fsubs f29, f2, f0 +/* 801D17D8 001CE738 EF C1 F0 FA */ fmadds f30, f1, f3, f30 +/* 801D17DC 001CE73C 48 14 0D 01 */ bl Float__9CRandom16Fv +/* 801D17E0 001CE740 C0 01 00 58 */ lfs f0, 0x58(r1) +/* 801D17E4 001CE744 38 61 00 08 */ addi r3, r1, 8 +/* 801D17E8 001CE748 D3 C1 00 28 */ stfs f30, 0x28(r1) +/* 801D17EC 001CE74C 38 9C 00 34 */ addi r4, r28, 0x34 +/* 801D17F0 001CE750 EC 01 07 7A */ fmadds f0, f1, f29, f0 +/* 801D17F4 001CE754 38 A1 00 24 */ addi r5, r1, 0x24 +/* 801D17F8 001CE758 D3 E1 00 2C */ stfs f31, 0x2c(r1) +/* 801D17FC 001CE75C D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801D1800 001CE760 48 14 12 E9 */ bl __ml__12CTransform4fCFRC9CVector3f +/* 801D1804 001CE764 C0 01 00 08 */ lfs f0, 8(r1) +/* 801D1808 001CE768 D0 1D 00 00 */ stfs f0, 0(r29) +/* 801D180C 001CE76C C0 01 00 0C */ lfs f0, 0xc(r1) +/* 801D1810 001CE770 D0 1D 00 04 */ stfs f0, 4(r29) +/* 801D1814 001CE774 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 801D1818 001CE778 D0 1D 00 08 */ stfs f0, 8(r29) +lbl_801D181C: +/* 801D181C 001CE77C E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0 +/* 801D1820 001CE780 CB E1 00 A0 */ lfd f31, 0xa0(r1) +/* 801D1824 001CE784 E3 C1 00 98 */ psq_l f30, 152(r1), 0, qr0 +/* 801D1828 001CE788 CB C1 00 90 */ lfd f30, 0x90(r1) +/* 801D182C 001CE78C E3 A1 00 88 */ psq_l f29, 136(r1), 0, qr0 +/* 801D1830 001CE790 CB A1 00 80 */ lfd f29, 0x80(r1) +/* 801D1834 001CE794 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 801D1838 001CE798 83 C1 00 78 */ lwz r30, 0x78(r1) +/* 801D183C 001CE79C 83 A1 00 74 */ lwz r29, 0x74(r1) +/* 801D1840 001CE7A0 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 801D1844 001CE7A4 83 81 00 70 */ lwz r28, 0x70(r1) +/* 801D1848 001CE7A8 7C 08 03 A6 */ mtlr r0 +/* 801D184C 001CE7AC 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 801D1850 001CE7B0 4E 80 00 20 */ blr + +.global FindClosestPlane__10CFishCloudCFRC6CAABoxRC9CVector3f +FindClosestPlane__10CFishCloudCFRC6CAABoxRC9CVector3f: +/* 801D1854 001CE7B4 94 21 FD 50 */ stwu r1, -0x2b0(r1) +/* 801D1858 001CE7B8 7C 08 02 A6 */ mflr r0 +/* 801D185C 001CE7BC 90 01 02 B4 */ stw r0, 0x2b4(r1) +/* 801D1860 001CE7C0 DB E1 02 A0 */ stfd f31, 0x2a0(r1) +/* 801D1864 001CE7C4 F3 E1 02 A8 */ psq_st f31, 680(r1), 0, qr0 +/* 801D1868 001CE7C8 DB C1 02 90 */ stfd f30, 0x290(r1) +/* 801D186C 001CE7CC F3 C1 02 98 */ psq_st f30, 664(r1), 0, qr0 +/* 801D1870 001CE7D0 DB A1 02 80 */ stfd f29, 0x280(r1) +/* 801D1874 001CE7D4 F3 A1 02 88 */ psq_st f29, 648(r1), 0, qr0 +/* 801D1878 001CE7D8 DB 81 02 70 */ stfd f28, 0x270(r1) +/* 801D187C 001CE7DC F3 81 02 78 */ psq_st f28, 632(r1), 0, qr0 +/* 801D1880 001CE7E0 DB 61 02 60 */ stfd f27, 0x260(r1) +/* 801D1884 001CE7E4 F3 61 02 68 */ psq_st f27, 616(r1), 0, qr0 +/* 801D1888 001CE7E8 BF 01 02 40 */ stmw r24, 0x240(r1) +/* 801D188C 001CE7EC 88 04 02 50 */ lbz r0, 0x250(r4) +/* 801D1890 001CE7F0 7C 9A 23 78 */ mr r26, r4 +/* 801D1894 001CE7F4 7C 7F 1B 78 */ mr r31, r3 +/* 801D1898 001CE7F8 7C B8 2B 78 */ mr r24, r5 +/* 801D189C 001CE7FC 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801D18A0 001CE800 7C D9 33 78 */ mr r25, r6 +/* 801D18A4 001CE804 40 82 01 98 */ bne lbl_801D1A3C +/* 801D18A8 001CE808 C3 A2 AB BC */ lfs f29, lbl_805AC8DC@sda21(r2) +/* 801D18AC 001CE80C 3B C1 02 10 */ addi r30, r1, 0x210 +/* 801D18B0 001CE810 C3 62 AB B8 */ lfs f27, lbl_805AC8D8@sda21(r2) +/* 801D18B4 001CE814 3B A1 02 1C */ addi r29, r1, 0x21c +/* 801D18B8 001CE818 3B 81 02 28 */ addi r28, r1, 0x228 +/* 801D18BC 001CE81C 3B 60 00 00 */ li r27, 0 +/* 801D18C0 001CE820 3B 40 00 00 */ li r26, 0 +lbl_801D18C4: +/* 801D18C4 001CE824 7F 04 C3 78 */ mr r4, r24 +/* 801D18C8 001CE828 7F 45 D3 78 */ mr r5, r26 +/* 801D18CC 001CE82C 38 61 01 30 */ addi r3, r1, 0x130 +/* 801D18D0 001CE830 38 C0 00 00 */ li r6, 0 +/* 801D18D4 001CE834 48 16 63 21 */ bl GetTri__6CAABoxCFQ26CAABox10EBoxFaceIdi +/* 801D18D8 001CE838 C1 81 01 30 */ lfs f12, 0x130(r1) +/* 801D18DC 001CE83C 7F C4 F3 78 */ mr r4, r30 +/* 801D18E0 001CE840 C1 61 01 34 */ lfs f11, 0x134(r1) +/* 801D18E4 001CE844 7F 85 E3 78 */ mr r5, r28 +/* 801D18E8 001CE848 C1 41 01 38 */ lfs f10, 0x138(r1) +/* 801D18EC 001CE84C 7F A6 EB 78 */ mr r6, r29 +/* 801D18F0 001CE850 C1 21 01 3C */ lfs f9, 0x13c(r1) +/* 801D18F4 001CE854 38 61 00 54 */ addi r3, r1, 0x54 +/* 801D18F8 001CE858 C1 01 01 40 */ lfs f8, 0x140(r1) +/* 801D18FC 001CE85C C0 E1 01 44 */ lfs f7, 0x144(r1) +/* 801D1900 001CE860 C0 C1 01 48 */ lfs f6, 0x148(r1) +/* 801D1904 001CE864 C0 A1 01 4C */ lfs f5, 0x14c(r1) +/* 801D1908 001CE868 C0 81 01 50 */ lfs f4, 0x150(r1) +/* 801D190C 001CE86C C0 61 01 54 */ lfs f3, 0x154(r1) +/* 801D1910 001CE870 C0 41 01 58 */ lfs f2, 0x158(r1) +/* 801D1914 001CE874 C0 21 01 5C */ lfs f1, 0x15c(r1) +/* 801D1918 001CE878 C0 01 01 60 */ lfs f0, 0x160(r1) +/* 801D191C 001CE87C D1 81 02 00 */ stfs f12, 0x200(r1) +/* 801D1920 001CE880 D1 61 02 04 */ stfs f11, 0x204(r1) +/* 801D1924 001CE884 D1 41 02 08 */ stfs f10, 0x208(r1) +/* 801D1928 001CE888 D1 21 02 0C */ stfs f9, 0x20c(r1) +/* 801D192C 001CE88C D1 01 02 10 */ stfs f8, 0x210(r1) +/* 801D1930 001CE890 D0 E1 02 14 */ stfs f7, 0x214(r1) +/* 801D1934 001CE894 D0 C1 02 18 */ stfs f6, 0x218(r1) +/* 801D1938 001CE898 D0 A1 02 1C */ stfs f5, 0x21c(r1) +/* 801D193C 001CE89C D0 81 02 20 */ stfs f4, 0x220(r1) +/* 801D1940 001CE8A0 D0 61 02 24 */ stfs f3, 0x224(r1) +/* 801D1944 001CE8A4 D0 41 02 28 */ stfs f2, 0x228(r1) +/* 801D1948 001CE8A8 D0 21 02 2C */ stfs f1, 0x22c(r1) +/* 801D194C 001CE8AC D0 01 02 30 */ stfs f0, 0x230(r1) +/* 801D1950 001CE8B0 48 16 57 59 */ bl __ct__6CPlaneFRC9CVector3fRC9CVector3fRC9CVector3f +/* 801D1954 001CE8B4 C0 21 00 58 */ lfs f1, 0x58(r1) +/* 801D1958 001CE8B8 C0 19 00 04 */ lfs f0, 4(r25) +/* 801D195C 001CE8BC C0 41 00 54 */ lfs f2, 0x54(r1) +/* 801D1960 001CE8C0 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801D1964 001CE8C4 C0 39 00 00 */ lfs f1, 0(r25) +/* 801D1968 001CE8C8 C0 81 00 5C */ lfs f4, 0x5c(r1) +/* 801D196C 001CE8CC C0 79 00 08 */ lfs f3, 8(r25) +/* 801D1970 001CE8D0 EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 801D1974 001CE8D4 C0 01 00 60 */ lfs f0, 0x60(r1) +/* 801D1978 001CE8D8 EC 24 08 FA */ fmadds f1, f4, f3, f1 +/* 801D197C 001CE8DC EC 01 00 28 */ fsubs f0, f1, f0 +/* 801D1980 001CE8E0 FC 00 D8 40 */ fcmpo cr0, f0, f27 +/* 801D1984 001CE8E4 4C 41 13 82 */ cror 2, 1, 2 +/* 801D1988 001CE8E8 40 82 00 14 */ bne lbl_801D199C +/* 801D198C 001CE8EC FC 00 E8 40 */ fcmpo cr0, f0, f29 +/* 801D1990 001CE8F0 40 80 00 0C */ bge lbl_801D199C +/* 801D1994 001CE8F4 7F 5B D3 78 */ mr r27, r26 +/* 801D1998 001CE8F8 FF A0 00 90 */ fmr f29, f0 +lbl_801D199C: +/* 801D199C 001CE8FC 3B 5A 00 01 */ addi r26, r26, 1 +/* 801D19A0 001CE900 2C 1A 00 06 */ cmpwi r26, 6 +/* 801D19A4 001CE904 41 80 FF 20 */ blt lbl_801D18C4 +/* 801D19A8 001CE908 7F 04 C3 78 */ mr r4, r24 +/* 801D19AC 001CE90C 7F 65 DB 78 */ mr r5, r27 +/* 801D19B0 001CE910 38 61 00 FC */ addi r3, r1, 0xfc +/* 801D19B4 001CE914 38 C0 00 00 */ li r6, 0 +/* 801D19B8 001CE918 48 16 62 3D */ bl GetTri__6CAABoxCFQ26CAABox10EBoxFaceIdi +/* 801D19BC 001CE91C C1 81 00 FC */ lfs f12, 0xfc(r1) +/* 801D19C0 001CE920 38 81 01 DC */ addi r4, r1, 0x1dc +/* 801D19C4 001CE924 C1 61 01 00 */ lfs f11, 0x100(r1) +/* 801D19C8 001CE928 38 C1 01 E8 */ addi r6, r1, 0x1e8 +/* 801D19CC 001CE92C C1 41 01 04 */ lfs f10, 0x104(r1) +/* 801D19D0 001CE930 38 A1 01 F4 */ addi r5, r1, 0x1f4 +/* 801D19D4 001CE934 C1 21 01 08 */ lfs f9, 0x108(r1) +/* 801D19D8 001CE938 7F E3 FB 78 */ mr r3, r31 +/* 801D19DC 001CE93C C1 01 01 0C */ lfs f8, 0x10c(r1) +/* 801D19E0 001CE940 C0 E1 01 10 */ lfs f7, 0x110(r1) +/* 801D19E4 001CE944 C0 C1 01 14 */ lfs f6, 0x114(r1) +/* 801D19E8 001CE948 C0 A1 01 18 */ lfs f5, 0x118(r1) +/* 801D19EC 001CE94C C0 81 01 1C */ lfs f4, 0x11c(r1) +/* 801D19F0 001CE950 C0 61 01 20 */ lfs f3, 0x120(r1) +/* 801D19F4 001CE954 C0 41 01 24 */ lfs f2, 0x124(r1) +/* 801D19F8 001CE958 C0 21 01 28 */ lfs f1, 0x128(r1) +/* 801D19FC 001CE95C C0 01 01 2C */ lfs f0, 0x12c(r1) +/* 801D1A00 001CE960 D1 81 01 CC */ stfs f12, 0x1cc(r1) +/* 801D1A04 001CE964 D1 61 01 D0 */ stfs f11, 0x1d0(r1) +/* 801D1A08 001CE968 D1 41 01 D4 */ stfs f10, 0x1d4(r1) +/* 801D1A0C 001CE96C D1 21 01 D8 */ stfs f9, 0x1d8(r1) +/* 801D1A10 001CE970 D1 01 01 DC */ stfs f8, 0x1dc(r1) +/* 801D1A14 001CE974 D0 E1 01 E0 */ stfs f7, 0x1e0(r1) +/* 801D1A18 001CE978 D0 C1 01 E4 */ stfs f6, 0x1e4(r1) +/* 801D1A1C 001CE97C D0 A1 01 E8 */ stfs f5, 0x1e8(r1) +/* 801D1A20 001CE980 D0 81 01 EC */ stfs f4, 0x1ec(r1) +/* 801D1A24 001CE984 D0 61 01 F0 */ stfs f3, 0x1f0(r1) +/* 801D1A28 001CE988 D0 41 01 F4 */ stfs f2, 0x1f4(r1) +/* 801D1A2C 001CE98C D0 21 01 F8 */ stfs f1, 0x1f8(r1) +/* 801D1A30 001CE990 D0 01 01 FC */ stfs f0, 0x1fc(r1) +/* 801D1A34 001CE994 48 16 56 75 */ bl __ct__6CPlaneFRC9CVector3fRC9CVector3fRC9CVector3f +/* 801D1A38 001CE998 48 00 02 4C */ b lbl_801D1C84 +lbl_801D1A3C: +/* 801D1A3C 001CE99C C0 39 00 04 */ lfs f1, 4(r25) +/* 801D1A40 001CE9A0 3B DA 00 34 */ addi r30, r26, 0x34 +/* 801D1A44 001CE9A4 C0 1A 00 50 */ lfs f0, 0x50(r26) +/* 801D1A48 001CE9A8 7F C4 F3 78 */ mr r4, r30 +/* 801D1A4C 001CE9AC C0 79 00 08 */ lfs f3, 8(r25) +/* 801D1A50 001CE9B0 38 61 00 38 */ addi r3, r1, 0x38 +/* 801D1A54 001CE9B4 C0 5A 00 60 */ lfs f2, 0x60(r26) +/* 801D1A58 001CE9B8 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801D1A5C 001CE9BC C0 39 00 00 */ lfs f1, 0(r25) +/* 801D1A60 001CE9C0 38 A1 00 2C */ addi r5, r1, 0x2c +/* 801D1A64 001CE9C4 C0 1A 00 40 */ lfs f0, 0x40(r26) +/* 801D1A68 001CE9C8 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801D1A6C 001CE9CC D0 81 00 30 */ stfs f4, 0x30(r1) +/* 801D1A70 001CE9D0 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801D1A74 001CE9D4 D0 41 00 34 */ stfs f2, 0x34(r1) +/* 801D1A78 001CE9D8 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801D1A7C 001CE9DC 48 14 0F A9 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 801D1A80 001CE9E0 C3 E1 00 38 */ lfs f31, 0x38(r1) +/* 801D1A84 001CE9E4 7F 44 D3 78 */ mr r4, r26 +/* 801D1A88 001CE9E8 C3 C1 00 3C */ lfs f30, 0x3c(r1) +/* 801D1A8C 001CE9EC 38 61 00 64 */ addi r3, r1, 0x64 +/* 801D1A90 001CE9F0 C3 A1 00 40 */ lfs f29, 0x40(r1) +/* 801D1A94 001CE9F4 48 00 02 E5 */ bl GetUntransformedBoundingBox__10CFishCloudCFv +/* 801D1A98 001CE9F8 C0 A1 00 64 */ lfs f5, 0x64(r1) +/* 801D1A9C 001CE9FC 3B 81 01 A8 */ addi r28, r1, 0x1a8 +/* 801D1AA0 001CEA00 C0 81 00 68 */ lfs f4, 0x68(r1) +/* 801D1AA4 001CEA04 3B A1 01 B4 */ addi r29, r1, 0x1b4 +/* 801D1AA8 001CEA08 C0 61 00 6C */ lfs f3, 0x6c(r1) +/* 801D1AAC 001CEA0C 3B 61 01 C0 */ addi r27, r1, 0x1c0 +/* 801D1AB0 001CEA10 C0 41 00 70 */ lfs f2, 0x70(r1) +/* 801D1AB4 001CEA14 3B 40 00 00 */ li r26, 0 +/* 801D1AB8 001CEA18 C0 21 00 74 */ lfs f1, 0x74(r1) +/* 801D1ABC 001CEA1C 3B 20 00 00 */ li r25, 0 +/* 801D1AC0 001CEA20 C0 01 00 78 */ lfs f0, 0x78(r1) +/* 801D1AC4 001CEA24 D0 A1 00 7C */ stfs f5, 0x7c(r1) +/* 801D1AC8 001CEA28 C3 82 AB BC */ lfs f28, lbl_805AC8DC@sda21(r2) +/* 801D1ACC 001CEA2C D0 81 00 80 */ stfs f4, 0x80(r1) +/* 801D1AD0 001CEA30 C3 62 AB B8 */ lfs f27, lbl_805AC8D8@sda21(r2) +/* 801D1AD4 001CEA34 D0 61 00 84 */ stfs f3, 0x84(r1) +/* 801D1AD8 001CEA38 D0 41 00 88 */ stfs f2, 0x88(r1) +/* 801D1ADC 001CEA3C D0 21 00 8C */ stfs f1, 0x8c(r1) +/* 801D1AE0 001CEA40 D0 01 00 90 */ stfs f0, 0x90(r1) +lbl_801D1AE4: +/* 801D1AE4 001CEA44 7F 25 CB 78 */ mr r5, r25 +/* 801D1AE8 001CEA48 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 801D1AEC 001CEA4C 38 81 00 7C */ addi r4, r1, 0x7c +/* 801D1AF0 001CEA50 38 C0 00 00 */ li r6, 0 +/* 801D1AF4 001CEA54 48 16 61 01 */ bl GetTri__6CAABoxCFQ26CAABox10EBoxFaceIdi +/* 801D1AF8 001CEA58 C1 81 00 C8 */ lfs f12, 0xc8(r1) +/* 801D1AFC 001CEA5C 7F 84 E3 78 */ mr r4, r28 +/* 801D1B00 001CEA60 C1 61 00 CC */ lfs f11, 0xcc(r1) +/* 801D1B04 001CEA64 7F 65 DB 78 */ mr r5, r27 +/* 801D1B08 001CEA68 C1 41 00 D0 */ lfs f10, 0xd0(r1) +/* 801D1B0C 001CEA6C 7F A6 EB 78 */ mr r6, r29 +/* 801D1B10 001CEA70 C1 21 00 D4 */ lfs f9, 0xd4(r1) +/* 801D1B14 001CEA74 38 61 00 44 */ addi r3, r1, 0x44 +/* 801D1B18 001CEA78 C1 01 00 D8 */ lfs f8, 0xd8(r1) +/* 801D1B1C 001CEA7C C0 E1 00 DC */ lfs f7, 0xdc(r1) +/* 801D1B20 001CEA80 C0 C1 00 E0 */ lfs f6, 0xe0(r1) +/* 801D1B24 001CEA84 C0 A1 00 E4 */ lfs f5, 0xe4(r1) +/* 801D1B28 001CEA88 C0 81 00 E8 */ lfs f4, 0xe8(r1) +/* 801D1B2C 001CEA8C C0 61 00 EC */ lfs f3, 0xec(r1) +/* 801D1B30 001CEA90 C0 41 00 F0 */ lfs f2, 0xf0(r1) +/* 801D1B34 001CEA94 C0 21 00 F4 */ lfs f1, 0xf4(r1) +/* 801D1B38 001CEA98 C0 01 00 F8 */ lfs f0, 0xf8(r1) +/* 801D1B3C 001CEA9C D1 81 01 98 */ stfs f12, 0x198(r1) +/* 801D1B40 001CEAA0 D1 61 01 9C */ stfs f11, 0x19c(r1) +/* 801D1B44 001CEAA4 D1 41 01 A0 */ stfs f10, 0x1a0(r1) +/* 801D1B48 001CEAA8 D1 21 01 A4 */ stfs f9, 0x1a4(r1) +/* 801D1B4C 001CEAAC D1 01 01 A8 */ stfs f8, 0x1a8(r1) +/* 801D1B50 001CEAB0 D0 E1 01 AC */ stfs f7, 0x1ac(r1) +/* 801D1B54 001CEAB4 D0 C1 01 B0 */ stfs f6, 0x1b0(r1) +/* 801D1B58 001CEAB8 D0 A1 01 B4 */ stfs f5, 0x1b4(r1) +/* 801D1B5C 001CEABC D0 81 01 B8 */ stfs f4, 0x1b8(r1) +/* 801D1B60 001CEAC0 D0 61 01 BC */ stfs f3, 0x1bc(r1) +/* 801D1B64 001CEAC4 D0 41 01 C0 */ stfs f2, 0x1c0(r1) +/* 801D1B68 001CEAC8 D0 21 01 C4 */ stfs f1, 0x1c4(r1) +/* 801D1B6C 001CEACC D0 01 01 C8 */ stfs f0, 0x1c8(r1) +/* 801D1B70 001CEAD0 48 16 55 39 */ bl __ct__6CPlaneFRC9CVector3fRC9CVector3fRC9CVector3f +/* 801D1B74 001CEAD4 C0 01 00 48 */ lfs f0, 0x48(r1) +/* 801D1B78 001CEAD8 C0 41 00 44 */ lfs f2, 0x44(r1) +/* 801D1B7C 001CEADC EC 20 07 B2 */ fmuls f1, f0, f30 +/* 801D1B80 001CEAE0 C0 61 00 4C */ lfs f3, 0x4c(r1) +/* 801D1B84 001CEAE4 C0 01 00 50 */ lfs f0, 0x50(r1) +/* 801D1B88 001CEAE8 EC 22 0F FA */ fmadds f1, f2, f31, f1 +/* 801D1B8C 001CEAEC EC 23 0F 7A */ fmadds f1, f3, f29, f1 +/* 801D1B90 001CEAF0 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801D1B94 001CEAF4 FC 00 D8 40 */ fcmpo cr0, f0, f27 +/* 801D1B98 001CEAF8 4C 41 13 82 */ cror 2, 1, 2 +/* 801D1B9C 001CEAFC 40 82 00 14 */ bne lbl_801D1BB0 +/* 801D1BA0 001CEB00 FC 00 E0 40 */ fcmpo cr0, f0, f28 +/* 801D1BA4 001CEB04 40 80 00 0C */ bge lbl_801D1BB0 +/* 801D1BA8 001CEB08 7F 3A CB 78 */ mr r26, r25 +/* 801D1BAC 001CEB0C FF 80 00 90 */ fmr f28, f0 +lbl_801D1BB0: +/* 801D1BB0 001CEB10 3B 39 00 01 */ addi r25, r25, 1 +/* 801D1BB4 001CEB14 2C 19 00 06 */ cmpwi r25, 6 +/* 801D1BB8 001CEB18 41 80 FF 2C */ blt lbl_801D1AE4 +/* 801D1BBC 001CEB1C 7F 45 D3 78 */ mr r5, r26 +/* 801D1BC0 001CEB20 38 61 00 94 */ addi r3, r1, 0x94 +/* 801D1BC4 001CEB24 38 81 00 7C */ addi r4, r1, 0x7c +/* 801D1BC8 001CEB28 38 C0 00 00 */ li r6, 0 +/* 801D1BCC 001CEB2C 48 16 60 29 */ bl GetTri__6CAABoxCFQ26CAABox10EBoxFaceIdi +/* 801D1BD0 001CEB30 C1 81 00 94 */ lfs f12, 0x94(r1) +/* 801D1BD4 001CEB34 38 A1 01 80 */ addi r5, r1, 0x180 +/* 801D1BD8 001CEB38 C1 61 00 98 */ lfs f11, 0x98(r1) +/* 801D1BDC 001CEB3C 7F C4 F3 78 */ mr r4, r30 +/* 801D1BE0 001CEB40 C1 41 00 9C */ lfs f10, 0x9c(r1) +/* 801D1BE4 001CEB44 3B 81 01 74 */ addi r28, r1, 0x174 +/* 801D1BE8 001CEB48 C1 21 00 A0 */ lfs f9, 0xa0(r1) +/* 801D1BEC 001CEB4C 3B 61 01 8C */ addi r27, r1, 0x18c +/* 801D1BF0 001CEB50 C1 01 00 A4 */ lfs f8, 0xa4(r1) +/* 801D1BF4 001CEB54 38 61 00 08 */ addi r3, r1, 8 +/* 801D1BF8 001CEB58 C0 E1 00 A8 */ lfs f7, 0xa8(r1) +/* 801D1BFC 001CEB5C C0 C1 00 AC */ lfs f6, 0xac(r1) +/* 801D1C00 001CEB60 C0 A1 00 B0 */ lfs f5, 0xb0(r1) +/* 801D1C04 001CEB64 C0 81 00 B4 */ lfs f4, 0xb4(r1) +/* 801D1C08 001CEB68 C0 61 00 B8 */ lfs f3, 0xb8(r1) +/* 801D1C0C 001CEB6C C0 41 00 BC */ lfs f2, 0xbc(r1) +/* 801D1C10 001CEB70 C0 21 00 C0 */ lfs f1, 0xc0(r1) +/* 801D1C14 001CEB74 C0 01 00 C4 */ lfs f0, 0xc4(r1) +/* 801D1C18 001CEB78 D1 81 01 64 */ stfs f12, 0x164(r1) +/* 801D1C1C 001CEB7C D1 61 01 68 */ stfs f11, 0x168(r1) +/* 801D1C20 001CEB80 D1 41 01 6C */ stfs f10, 0x16c(r1) +/* 801D1C24 001CEB84 D1 21 01 70 */ stfs f9, 0x170(r1) +/* 801D1C28 001CEB88 D1 01 01 74 */ stfs f8, 0x174(r1) +/* 801D1C2C 001CEB8C D0 E1 01 78 */ stfs f7, 0x178(r1) +/* 801D1C30 001CEB90 D0 C1 01 7C */ stfs f6, 0x17c(r1) +/* 801D1C34 001CEB94 D0 A1 01 80 */ stfs f5, 0x180(r1) +/* 801D1C38 001CEB98 D0 81 01 84 */ stfs f4, 0x184(r1) +/* 801D1C3C 001CEB9C D0 61 01 88 */ stfs f3, 0x188(r1) +/* 801D1C40 001CEBA0 D0 41 01 8C */ stfs f2, 0x18c(r1) +/* 801D1C44 001CEBA4 D0 21 01 90 */ stfs f1, 0x190(r1) +/* 801D1C48 001CEBA8 D0 01 01 94 */ stfs f0, 0x194(r1) +/* 801D1C4C 001CEBAC 48 14 0E 9D */ bl __ml__12CTransform4fCFRC9CVector3f +/* 801D1C50 001CEBB0 7F C4 F3 78 */ mr r4, r30 +/* 801D1C54 001CEBB4 7F 65 DB 78 */ mr r5, r27 +/* 801D1C58 001CEBB8 38 61 00 14 */ addi r3, r1, 0x14 +/* 801D1C5C 001CEBBC 48 14 0E 8D */ bl __ml__12CTransform4fCFRC9CVector3f +/* 801D1C60 001CEBC0 7F C4 F3 78 */ mr r4, r30 +/* 801D1C64 001CEBC4 7F 85 E3 78 */ mr r5, r28 +/* 801D1C68 001CEBC8 38 61 00 20 */ addi r3, r1, 0x20 +/* 801D1C6C 001CEBCC 48 14 0E 7D */ bl __ml__12CTransform4fCFRC9CVector3f +/* 801D1C70 001CEBD0 7F E3 FB 78 */ mr r3, r31 +/* 801D1C74 001CEBD4 38 81 00 20 */ addi r4, r1, 0x20 +/* 801D1C78 001CEBD8 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801D1C7C 001CEBDC 38 C1 00 08 */ addi r6, r1, 8 +/* 801D1C80 001CEBE0 48 16 54 29 */ bl __ct__6CPlaneFRC9CVector3fRC9CVector3fRC9CVector3f +lbl_801D1C84: +/* 801D1C84 001CEBE4 E3 E1 02 A8 */ psq_l f31, 680(r1), 0, qr0 +/* 801D1C88 001CEBE8 CB E1 02 A0 */ lfd f31, 0x2a0(r1) +/* 801D1C8C 001CEBEC E3 C1 02 98 */ psq_l f30, 664(r1), 0, qr0 +/* 801D1C90 001CEBF0 CB C1 02 90 */ lfd f30, 0x290(r1) +/* 801D1C94 001CEBF4 E3 A1 02 88 */ psq_l f29, 648(r1), 0, qr0 +/* 801D1C98 001CEBF8 CB A1 02 80 */ lfd f29, 0x280(r1) +/* 801D1C9C 001CEBFC E3 81 02 78 */ psq_l f28, 632(r1), 0, qr0 +/* 801D1CA0 001CEC00 CB 81 02 70 */ lfd f28, 0x270(r1) +/* 801D1CA4 001CEC04 E3 61 02 68 */ psq_l f27, 616(r1), 0, qr0 +/* 801D1CA8 001CEC08 CB 61 02 60 */ lfd f27, 0x260(r1) +/* 801D1CAC 001CEC0C BB 01 02 40 */ lmw r24, 0x240(r1) +/* 801D1CB0 001CEC10 80 01 02 B4 */ lwz r0, 0x2b4(r1) +/* 801D1CB4 001CEC14 7C 08 03 A6 */ mtlr r0 +/* 801D1CB8 001CEC18 38 21 02 B0 */ addi r1, r1, 0x2b0 +/* 801D1CBC 001CEC1C 4E 80 00 20 */ blr + +.global PointInBox__10CFishCloudCFRC6CAABoxRC9CVector3f +PointInBox__10CFishCloudCFRC6CAABoxRC9CVector3f: +/* 801D1CC0 001CEC20 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801D1CC4 001CEC24 7C 08 02 A6 */ mflr r0 +/* 801D1CC8 001CEC28 7C A6 2B 78 */ mr r6, r5 +/* 801D1CCC 001CEC2C 90 01 00 54 */ stw r0, 0x54(r1) +/* 801D1CD0 001CEC30 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801D1CD4 001CEC34 7C 7F 1B 78 */ mr r31, r3 +/* 801D1CD8 001CEC38 88 03 02 50 */ lbz r0, 0x250(r3) +/* 801D1CDC 001CEC3C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801D1CE0 001CEC40 40 82 00 14 */ bne lbl_801D1CF4 +/* 801D1CE4 001CEC44 7C 83 23 78 */ mr r3, r4 +/* 801D1CE8 001CEC48 7C C4 33 78 */ mr r4, r6 +/* 801D1CEC 001CEC4C 48 16 58 49 */ bl PointInside__6CAABoxCFRC9CVector3f +/* 801D1CF0 001CEC50 48 00 00 74 */ b lbl_801D1D64 +lbl_801D1CF4: +/* 801D1CF4 001CEC54 C0 26 00 04 */ lfs f1, 4(r6) +/* 801D1CF8 001CEC58 38 61 00 14 */ addi r3, r1, 0x14 +/* 801D1CFC 001CEC5C C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 801D1D00 001CEC60 38 9F 00 34 */ addi r4, r31, 0x34 +/* 801D1D04 001CEC64 C0 66 00 08 */ lfs f3, 8(r6) +/* 801D1D08 001CEC68 38 A1 00 08 */ addi r5, r1, 8 +/* 801D1D0C 001CEC6C C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 801D1D10 001CEC70 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801D1D14 001CEC74 C0 26 00 00 */ lfs f1, 0(r6) +/* 801D1D18 001CEC78 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801D1D1C 001CEC7C EC 43 10 28 */ fsubs f2, f3, f2 +/* 801D1D20 001CEC80 D0 81 00 0C */ stfs f4, 0xc(r1) +/* 801D1D24 001CEC84 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801D1D28 001CEC88 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 801D1D2C 001CEC8C D0 01 00 08 */ stfs f0, 8(r1) +/* 801D1D30 001CEC90 48 14 0C F5 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 801D1D34 001CEC94 C0 41 00 14 */ lfs f2, 0x14(r1) +/* 801D1D38 001CEC98 7F E4 FB 78 */ mr r4, r31 +/* 801D1D3C 001CEC9C C0 21 00 18 */ lfs f1, 0x18(r1) +/* 801D1D40 001CECA0 38 61 00 2C */ addi r3, r1, 0x2c +/* 801D1D44 001CECA4 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 801D1D48 001CECA8 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 801D1D4C 001CECAC D0 21 00 24 */ stfs f1, 0x24(r1) +/* 801D1D50 001CECB0 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 801D1D54 001CECB4 48 00 00 25 */ bl GetUntransformedBoundingBox__10CFishCloudCFv +/* 801D1D58 001CECB8 38 61 00 2C */ addi r3, r1, 0x2c +/* 801D1D5C 001CECBC 38 81 00 20 */ addi r4, r1, 0x20 +/* 801D1D60 001CECC0 48 16 57 D5 */ bl PointInside__6CAABoxCFRC9CVector3f +lbl_801D1D64: +/* 801D1D64 001CECC4 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801D1D68 001CECC8 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801D1D6C 001CECCC 7C 08 03 A6 */ mtlr r0 +/* 801D1D70 001CECD0 38 21 00 50 */ addi r1, r1, 0x50 +/* 801D1D74 001CECD4 4E 80 00 20 */ blr + +.global GetUntransformedBoundingBox__10CFishCloudCFv +GetUntransformedBoundingBox__10CFishCloudCFv: +/* 801D1D78 001CECD8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801D1D7C 001CECDC 7C 08 02 A6 */ mflr r0 +/* 801D1D80 001CECE0 C0 62 AC 04 */ lfs f3, lbl_805AC924@sda21(r2) +/* 801D1D84 001CECE4 90 01 00 24 */ stw r0, 0x24(r1) +/* 801D1D88 001CECE8 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801D1D8C 001CECEC C0 44 01 28 */ lfs f2, 0x128(r4) +/* 801D1D90 001CECF0 C0 24 01 24 */ lfs f1, 0x124(r4) +/* 801D1D94 001CECF4 C0 04 01 20 */ lfs f0, 0x120(r4) +/* 801D1D98 001CECF8 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 801D1D9C 001CECFC EC 83 00 72 */ fmuls f4, f3, f1 +/* 801D1DA0 001CED00 38 81 00 08 */ addi r4, r1, 8 +/* 801D1DA4 001CED04 EC 63 00 32 */ fmuls f3, f3, f0 +/* 801D1DA8 001CED08 FC 00 10 50 */ fneg f0, f2 +/* 801D1DAC 001CED0C D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 801D1DB0 001CED10 FC 20 20 50 */ fneg f1, f4 +/* 801D1DB4 001CED14 FC 40 18 50 */ fneg f2, f3 +/* 801D1DB8 001CED18 D0 61 00 14 */ stfs f3, 0x14(r1) +/* 801D1DBC 001CED1C D0 81 00 18 */ stfs f4, 0x18(r1) +/* 801D1DC0 001CED20 D0 41 00 08 */ stfs f2, 8(r1) +/* 801D1DC4 001CED24 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 801D1DC8 001CED28 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801D1DCC 001CED2C 48 16 67 3D */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801D1DD0 001CED30 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801D1DD4 001CED34 7C 08 03 A6 */ mtlr r0 +/* 801D1DD8 001CED38 38 21 00 20 */ addi r1, r1, 0x20 +/* 801D1DDC 001CED3C 4E 80 00 20 */ blr + +.global GetBoundingBox__10CFishCloudCFv +GetBoundingBox__10CFishCloudCFv: +/* 801D1DE0 001CED40 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801D1DE4 001CED44 7C 08 02 A6 */ mflr r0 +/* 801D1DE8 001CED48 90 01 00 44 */ stw r0, 0x44(r1) +/* 801D1DEC 001CED4C 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801D1DF0 001CED50 7C 9F 23 78 */ mr r31, r4 +/* 801D1DF4 001CED54 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801D1DF8 001CED58 7C 7E 1B 78 */ mr r30, r3 +/* 801D1DFC 001CED5C 38 61 00 08 */ addi r3, r1, 8 +/* 801D1E00 001CED60 4B FF FF 79 */ bl GetUntransformedBoundingBox__10CFishCloudCFv +/* 801D1E04 001CED64 C0 A1 00 08 */ lfs f5, 8(r1) +/* 801D1E08 001CED68 7F C3 F3 78 */ mr r3, r30 +/* 801D1E0C 001CED6C C0 81 00 0C */ lfs f4, 0xc(r1) +/* 801D1E10 001CED70 38 81 00 20 */ addi r4, r1, 0x20 +/* 801D1E14 001CED74 C0 61 00 10 */ lfs f3, 0x10(r1) +/* 801D1E18 001CED78 38 BF 00 34 */ addi r5, r31, 0x34 +/* 801D1E1C 001CED7C C0 41 00 14 */ lfs f2, 0x14(r1) +/* 801D1E20 001CED80 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 801D1E24 001CED84 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 801D1E28 001CED88 D0 A1 00 20 */ stfs f5, 0x20(r1) +/* 801D1E2C 001CED8C D0 81 00 24 */ stfs f4, 0x24(r1) +/* 801D1E30 001CED90 D0 61 00 28 */ stfs f3, 0x28(r1) +/* 801D1E34 001CED94 D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 801D1E38 001CED98 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 801D1E3C 001CED9C D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801D1E40 001CEDA0 48 16 5A BD */ bl GetTransformedAABox__6CAABoxCFRC12CTransform4f +/* 801D1E44 001CEDA4 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801D1E48 001CEDA8 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801D1E4C 001CEDAC 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801D1E50 001CEDB0 7C 08 03 A6 */ mtlr r0 +/* 801D1E54 001CEDB4 38 21 00 40 */ addi r1, r1, 0x40 +/* 801D1E58 001CEDB8 4E 80 00 20 */ blr + +.global CalculateRenderBounds__10CFishCloudFv +CalculateRenderBounds__10CFishCloudFv: +/* 801D1E5C 001CEDBC 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801D1E60 001CEDC0 7C 08 02 A6 */ mflr r0 +/* 801D1E64 001CEDC4 90 01 00 44 */ stw r0, 0x44(r1) +/* 801D1E68 001CEDC8 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801D1E6C 001CEDCC 7C 7F 1B 78 */ mr r31, r3 +/* 801D1E70 001CEDD0 38 61 00 08 */ addi r3, r1, 8 +/* 801D1E74 001CEDD4 7F E4 FB 78 */ mr r4, r31 +/* 801D1E78 001CEDD8 4B FF FF 69 */ bl GetBoundingBox__10CFishCloudCFv +/* 801D1E7C 001CEDDC C0 21 00 08 */ lfs f1, 8(r1) +/* 801D1E80 001CEDE0 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 801D1E84 001CEDE4 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 801D1E88 001CEDE8 C0 61 00 10 */ lfs f3, 0x10(r1) +/* 801D1E8C 001CEDEC D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801D1E90 001CEDF0 C0 41 00 14 */ lfs f2, 0x14(r1) +/* 801D1E94 001CEDF4 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 801D1E98 001CEDF8 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 801D1E9C 001CEDFC 80 61 00 20 */ lwz r3, 0x20(r1) +/* 801D1EA0 001CEE00 D0 61 00 28 */ stfs f3, 0x28(r1) +/* 801D1EA4 001CEE04 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801D1EA8 001CEE08 90 7F 00 9C */ stw r3, 0x9c(r31) +/* 801D1EAC 001CEE0C 80 61 00 28 */ lwz r3, 0x28(r1) +/* 801D1EB0 001CEE10 D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 801D1EB4 001CEE14 90 1F 00 A0 */ stw r0, 0xa0(r31) +/* 801D1EB8 001CEE18 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 801D1EBC 001CEE1C D0 21 00 30 */ stfs f1, 0x30(r1) +/* 801D1EC0 001CEE20 90 7F 00 A4 */ stw r3, 0xa4(r31) +/* 801D1EC4 001CEE24 80 61 00 30 */ lwz r3, 0x30(r1) +/* 801D1EC8 001CEE28 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801D1ECC 001CEE2C 90 1F 00 A8 */ stw r0, 0xa8(r31) +/* 801D1ED0 001CEE30 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801D1ED4 001CEE34 90 7F 00 AC */ stw r3, 0xac(r31) +/* 801D1ED8 001CEE38 90 1F 00 B0 */ stw r0, 0xb0(r31) +/* 801D1EDC 001CEE3C 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801D1EE0 001CEE40 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801D1EE4 001CEE44 7C 08 03 A6 */ mtlr r0 +/* 801D1EE8 001CEE48 38 21 00 40 */ addi r1, r1, 0x40 +/* 801D1EEC 001CEE4C 4E 80 00 20 */ blr + +.global Accept__10CFishCloudFR8IVisitor +Accept__10CFishCloudFR8IVisitor: +/* 801D1EF0 001CEE50 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D1EF4 001CEE54 7C 08 02 A6 */ mflr r0 +/* 801D1EF8 001CEE58 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D1EFC 001CEE5C 7C 60 1B 78 */ mr r0, r3 +/* 801D1F00 001CEE60 7C 83 23 78 */ mr r3, r4 +/* 801D1F04 001CEE64 81 84 00 00 */ lwz r12, 0(r4) +/* 801D1F08 001CEE68 7C 04 03 78 */ mr r4, r0 +/* 801D1F0C 001CEE6C 81 8C 00 30 */ lwz r12, 0x30(r12) +/* 801D1F10 001CEE70 7D 89 03 A6 */ mtctr r12 +/* 801D1F14 001CEE74 4E 80 04 21 */ bctrl +/* 801D1F18 001CEE78 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D1F1C 001CEE7C 7C 08 03 A6 */ mtlr r0 +/* 801D1F20 001CEE80 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D1F24 001CEE84 4E 80 00 20 */ blr + +.global sub_801d1f28 +sub_801d1f28: +/* 801D1F28 001CEE88 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 801D1F2C 001CEE8C 7C 08 02 A6 */ mflr r0 +/* 801D1F30 001CEE90 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 801D1F34 001CEE94 DB E1 00 90 */ stfd f31, 0x90(r1) +/* 801D1F38 001CEE98 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 +/* 801D1F3C 001CEE9C DB C1 00 80 */ stfd f30, 0x80(r1) +/* 801D1F40 001CEEA0 F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 +/* 801D1F44 001CEEA4 BE C1 00 58 */ stmw r22, 0x58(r1) +/* 801D1F48 001CEEA8 7C 79 1B 78 */ mr r25, r3 +/* 801D1F4C 001CEEAC 7C 9A 23 78 */ mr r26, r4 +/* 801D1F50 001CEEB0 3B D9 01 7C */ addi r30, r25, 0x17c +/* 801D1F54 001CEEB4 7C BB 2B 78 */ mr r27, r5 +/* 801D1F58 001CEEB8 7F D8 F3 78 */ mr r24, r30 +/* 801D1F5C 001CEEBC 3A E0 00 00 */ li r23, 0 +/* 801D1F60 001CEEC0 48 00 00 28 */ b lbl_801D1F88 +lbl_801D1F64: +/* 801D1F64 001CEEC4 28 18 00 00 */ cmplwi r24, 0 +/* 801D1F68 001CEEC8 41 82 00 18 */ beq lbl_801D1F80 +/* 801D1F6C 001CEECC 88 18 00 00 */ lbz r0, 0(r24) +/* 801D1F70 001CEED0 28 00 00 00 */ cmplwi r0, 0 +/* 801D1F74 001CEED4 41 82 00 0C */ beq lbl_801D1F80 +/* 801D1F78 001CEED8 80 78 00 04 */ lwz r3, 4(r24) +/* 801D1F7C 001CEEDC 48 14 39 B5 */ bl Free__7CMemoryFPCv +lbl_801D1F80: +/* 801D1F80 001CEEE0 3B 18 00 08 */ addi r24, r24, 8 +/* 801D1F84 001CEEE4 3A F7 00 01 */ addi r23, r23, 1 +lbl_801D1F88: +/* 801D1F88 001CEEE8 80 19 01 78 */ lwz r0, 0x178(r25) +/* 801D1F8C 001CEEEC 7C 17 00 00 */ cmpw r23, r0 +/* 801D1F90 001CEEF0 41 80 FF D4 */ blt lbl_801D1F64 +/* 801D1F94 001CEEF4 38 60 00 00 */ li r3, 0 +/* 801D1F98 001CEEF8 3B B9 01 A0 */ addi r29, r25, 0x1a0 +/* 801D1F9C 001CEEFC 90 79 01 78 */ stw r3, 0x178(r25) +/* 801D1FA0 001CEF00 80 B9 01 9C */ lwz r5, 0x19c(r25) +/* 801D1FA4 001CEF04 2C 05 00 00 */ cmpwi r5, 0 +/* 801D1FA8 001CEF08 40 81 00 40 */ ble lbl_801D1FE8 +/* 801D1FAC 001CEF0C 2C 05 00 08 */ cmpwi r5, 8 +/* 801D1FB0 001CEF10 38 85 FF F8 */ addi r4, r5, -8 +/* 801D1FB4 001CEF14 40 81 00 20 */ ble lbl_801D1FD4 +/* 801D1FB8 001CEF18 38 04 00 07 */ addi r0, r4, 7 +/* 801D1FBC 001CEF1C 54 00 E8 FE */ srwi r0, r0, 3 +/* 801D1FC0 001CEF20 7C 09 03 A6 */ mtctr r0 +/* 801D1FC4 001CEF24 2C 04 00 00 */ cmpwi r4, 0 +/* 801D1FC8 001CEF28 40 81 00 0C */ ble lbl_801D1FD4 +lbl_801D1FCC: +/* 801D1FCC 001CEF2C 38 63 00 08 */ addi r3, r3, 8 +/* 801D1FD0 001CEF30 42 00 FF FC */ bdnz lbl_801D1FCC +lbl_801D1FD4: +/* 801D1FD4 001CEF34 7C 03 28 50 */ subf r0, r3, r5 +/* 801D1FD8 001CEF38 7C 09 03 A6 */ mtctr r0 +/* 801D1FDC 001CEF3C 7C 03 28 00 */ cmpw r3, r5 +/* 801D1FE0 001CEF40 40 80 00 08 */ bge lbl_801D1FE8 +lbl_801D1FE4: +/* 801D1FE4 001CEF44 42 00 00 00 */ bdnz lbl_801D1FE4 +lbl_801D1FE8: +/* 801D1FE8 001CEF48 38 00 00 00 */ li r0, 0 +/* 801D1FEC 001CEF4C 3C 60 80 3D */ lis r3, lbl_803D1B70@ha +/* 801D1FF0 001CEF50 90 19 01 9C */ stw r0, 0x19c(r25) +/* 801D1FF4 001CEF54 3B F9 01 B4 */ addi r31, r25, 0x1b4 +/* 801D1FF8 001CEF58 CB C2 AB C0 */ lfd f30, lbl_805AC8E0@sda21(r2) +/* 801D1FFC 001CEF5C 3A E3 1B 70 */ addi r23, r3, lbl_803D1B70@l +/* 801D2000 001CEF60 C3 E2 AC 08 */ lfs f31, lbl_805AC928@sda21(r2) +/* 801D2004 001CEF64 3B 80 00 00 */ li r28, 0 +/* 801D2008 001CEF68 3F 00 43 30 */ lis r24, 0x4330 +lbl_801D200C: +/* 801D200C 001CEF6C 80 7F 00 00 */ lwz r3, 0(r31) +/* 801D2010 001CEF70 7F 64 DB 78 */ mr r4, r27 +/* 801D2014 001CEF74 80 63 00 00 */ lwz r3, 0(r3) +/* 801D2018 001CEF78 4B F4 2F 45 */ bl PickAnimatedModel__10CModelDataCFQ210CModelData11EWhichModel +/* 801D201C 001CEF7C 38 81 00 10 */ addi r4, r1, 0x10 +/* 801D2020 001CEF80 48 18 06 49 */ bl sub_80352668 +/* 801D2024 001CEF84 80 19 01 78 */ lwz r0, 0x178(r25) +/* 801D2028 001CEF88 7C 83 00 D0 */ neg r4, r3 +/* 801D202C 001CEF8C 7C 84 1B 78 */ or r4, r4, r3 +/* 801D2030 001CEF90 90 61 00 18 */ stw r3, 0x18(r1) +/* 801D2034 001CEF94 54 00 18 38 */ slwi r0, r0, 3 +/* 801D2038 001CEF98 54 84 0F FE */ srwi r4, r4, 0x1f +/* 801D203C 001CEF9C 7C BE 02 15 */ add. r5, r30, r0 +/* 801D2040 001CEFA0 98 81 00 14 */ stb r4, 0x14(r1) +/* 801D2044 001CEFA4 41 82 00 14 */ beq lbl_801D2058 +/* 801D2048 001CEFA8 98 85 00 00 */ stb r4, 0(r5) +/* 801D204C 001CEFAC 38 00 00 00 */ li r0, 0 +/* 801D2050 001CEFB0 90 65 00 04 */ stw r3, 4(r5) +/* 801D2054 001CEFB4 98 01 00 14 */ stb r0, 0x14(r1) +lbl_801D2058: +/* 801D2058 001CEFB8 80 79 01 78 */ lwz r3, 0x178(r25) +/* 801D205C 001CEFBC 88 01 00 14 */ lbz r0, 0x14(r1) +/* 801D2060 001CEFC0 38 63 00 01 */ addi r3, r3, 1 +/* 801D2064 001CEFC4 28 00 00 00 */ cmplwi r0, 0 +/* 801D2068 001CEFC8 90 79 01 78 */ stw r3, 0x178(r25) +/* 801D206C 001CEFCC 41 82 00 0C */ beq lbl_801D2078 +/* 801D2070 001CEFD0 80 61 00 18 */ lwz r3, 0x18(r1) +/* 801D2074 001CEFD4 48 14 38 BD */ bl Free__7CMemoryFPCv +lbl_801D2078: +/* 801D2078 001CEFD8 80 19 01 9C */ lwz r0, 0x19c(r25) +/* 801D207C 001CEFDC 54 00 10 3A */ slwi r0, r0, 2 +/* 801D2080 001CEFE0 7C 7D 02 15 */ add. r3, r29, r0 +/* 801D2084 001CEFE4 41 82 00 0C */ beq lbl_801D2090 +/* 801D2088 001CEFE8 80 01 00 10 */ lwz r0, 0x10(r1) +/* 801D208C 001CEFEC 90 03 00 00 */ stw r0, 0(r3) +lbl_801D2090: +/* 801D2090 001CEFF0 80 79 01 9C */ lwz r3, 0x19c(r25) +/* 801D2094 001CEFF4 38 80 00 01 */ li r4, 1 +/* 801D2098 001CEFF8 38 03 00 01 */ addi r0, r3, 1 +/* 801D209C 001CEFFC 90 19 01 9C */ stw r0, 0x19c(r25) +/* 801D20A0 001CF000 80 7F 00 00 */ lwz r3, 0(r31) +/* 801D20A4 001CF004 80 63 00 00 */ lwz r3, 0(r3) +/* 801D20A8 001CF008 4B F4 34 B9 */ bl EnableLooping__10CModelDataFb +/* 801D20AC 001CF00C 38 61 00 1C */ addi r3, r1, 0x1c +/* 801D20B0 001CF010 38 97 00 07 */ addi r4, r23, 7 +/* 801D20B4 001CF014 4B E3 2C 05 */ bl string_l__4rstlFPCc +/* 801D20B8 001CF018 80 19 00 04 */ lwz r0, 4(r25) +/* 801D20BC 001CF01C 38 81 00 1C */ addi r4, r1, 0x1c +/* 801D20C0 001CF020 90 01 00 0C */ stw r0, 0xc(r1) +/* 801D20C4 001CF024 80 7F 00 00 */ lwz r3, 0(r31) +/* 801D20C8 001CF028 90 01 00 08 */ stw r0, 8(r1) +/* 801D20CC 001CF02C 82 C3 00 00 */ lwz r22, 0(r3) +/* 801D20D0 001CF030 80 76 00 10 */ lwz r3, 0x10(r22) +/* 801D20D4 001CF034 4B E5 A3 99 */ bl "GetAnimTimeRemaining__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801D20D8 001CF038 6F 80 80 00 */ xoris r0, r28, 0x8000 +/* 801D20DC 001CF03C 93 01 00 48 */ stw r24, 0x48(r1) +/* 801D20E0 001CF040 7E C4 B3 78 */ mr r4, r22 +/* 801D20E4 001CF044 7F 45 D3 78 */ mr r5, r26 +/* 801D20E8 001CF048 90 01 00 4C */ stw r0, 0x4c(r1) +/* 801D20EC 001CF04C 38 61 00 2C */ addi r3, r1, 0x2c +/* 801D20F0 001CF050 38 C1 00 0C */ addi r6, r1, 0xc +/* 801D20F4 001CF054 38 E0 00 01 */ li r7, 1 +/* 801D20F8 001CF058 C8 01 00 48 */ lfd f0, 0x48(r1) +/* 801D20FC 001CF05C EC 00 F0 28 */ fsubs f0, f0, f30 +/* 801D2100 001CF060 EC 00 07 F2 */ fmuls f0, f0, f31 +/* 801D2104 001CF064 EC 20 00 72 */ fmuls f1, f0, f1 +/* 801D2108 001CF068 4B F4 3A 2D */ bl AdvanceAnimation__10CModelDataFfR13CStateManager7TAreaIdb +/* 801D210C 001CF06C 38 61 00 1C */ addi r3, r1, 0x1c +/* 801D2110 001CF070 48 16 B9 D1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801D2114 001CF074 3B 9C 00 01 */ addi r28, r28, 1 +/* 801D2118 001CF078 3B FF 00 04 */ addi r31, r31, 4 +/* 801D211C 001CF07C 2C 1C 00 04 */ cmpwi r28, 4 +/* 801D2120 001CF080 41 80 FE EC */ blt lbl_801D200C +/* 801D2124 001CF084 93 79 02 30 */ stw r27, 0x230(r25) +/* 801D2128 001CF088 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 +/* 801D212C 001CF08C CB E1 00 90 */ lfd f31, 0x90(r1) +/* 801D2130 001CF090 E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 +/* 801D2134 001CF094 CB C1 00 80 */ lfd f30, 0x80(r1) +/* 801D2138 001CF098 BA C1 00 58 */ lmw r22, 0x58(r1) +/* 801D213C 001CF09C 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 801D2140 001CF0A0 7C 08 03 A6 */ mtlr r0 +/* 801D2144 001CF0A4 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 801D2148 001CF0A8 4E 80 00 20 */ blr + +.global "__ct__10CFishCloudF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3fRC12CTransform4fRC10CModelDatafffff" +"__ct__10CFishCloudF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3fRC12CTransform4fRC10CModelDatafffff": +/* 801D214C 001CF0AC 94 21 FD 10 */ stwu r1, -0x2f0(r1) +/* 801D2150 001CF0B0 7C 08 02 A6 */ mflr r0 +/* 801D2154 001CF0B4 90 01 02 F4 */ stw r0, 0x2f4(r1) +/* 801D2158 001CF0B8 DB E1 02 E0 */ stfd f31, 0x2e0(r1) +/* 801D215C 001CF0BC F3 E1 02 E8 */ psq_st f31, 744(r1), 0, qr0 +/* 801D2160 001CF0C0 DB C1 02 D0 */ stfd f30, 0x2d0(r1) +/* 801D2164 001CF0C4 F3 C1 02 D8 */ psq_st f30, 728(r1), 0, qr0 +/* 801D2168 001CF0C8 DB A1 02 C0 */ stfd f29, 0x2c0(r1) +/* 801D216C 001CF0CC F3 A1 02 C8 */ psq_st f29, 712(r1), 0, qr0 +/* 801D2170 001CF0D0 DB 81 02 B0 */ stfd f28, 0x2b0(r1) +/* 801D2174 001CF0D4 F3 81 02 B8 */ psq_st f28, 696(r1), 0, qr0 +/* 801D2178 001CF0D8 DB 61 02 A0 */ stfd f27, 0x2a0(r1) +/* 801D217C 001CF0DC F3 61 02 A8 */ psq_st f27, 680(r1), 0, qr0 +/* 801D2180 001CF0E0 DB 41 02 90 */ stfd f26, 0x290(r1) +/* 801D2184 001CF0E4 F3 41 02 98 */ psq_st f26, 664(r1), 0, qr0 +/* 801D2188 001CF0E8 DB 21 02 80 */ stfd f25, 0x280(r1) +/* 801D218C 001CF0EC F3 21 02 88 */ psq_st f25, 648(r1), 0, qr0 +/* 801D2190 001CF0F0 DB 01 02 70 */ stfd f24, 0x270(r1) +/* 801D2194 001CF0F4 F3 01 02 78 */ psq_st f24, 632(r1), 0, qr0 +/* 801D2198 001CF0F8 DA E1 02 60 */ stfd f23, 0x260(r1) +/* 801D219C 001CF0FC F2 E1 02 68 */ psq_st f23, 616(r1), 0, qr0 +/* 801D21A0 001CF100 DA C1 02 50 */ stfd f22, 0x250(r1) +/* 801D21A4 001CF104 F2 C1 02 58 */ psq_st f22, 600(r1), 0, qr0 +/* 801D21A8 001CF108 DA A1 02 40 */ stfd f21, 0x240(r1) +/* 801D21AC 001CF10C F2 A1 02 48 */ psq_st f21, 584(r1), 0, qr0 +/* 801D21B0 001CF110 DA 81 02 30 */ stfd f20, 0x230(r1) +/* 801D21B4 001CF114 F2 81 02 38 */ psq_st f20, 568(r1), 0, qr0 +/* 801D21B8 001CF118 DA 61 02 20 */ stfd f19, 0x220(r1) +/* 801D21BC 001CF11C F2 61 02 28 */ psq_st f19, 552(r1), 0, qr0 +/* 801D21C0 001CF120 DA 41 02 10 */ stfd f18, 0x210(r1) +/* 801D21C4 001CF124 F2 41 02 18 */ psq_st f18, 536(r1), 0, qr0 +/* 801D21C8 001CF128 BD C1 01 C8 */ stmw r14, 0x1c8(r1) +/* 801D21CC 001CF12C FE 40 08 90 */ fmr f18, f1 +/* 801D21D0 001CF130 7C 6F 1B 78 */ mr r15, r3 +/* 801D21D4 001CF134 FE 60 10 90 */ fmr f19, f2 +/* 801D21D8 001CF138 82 E1 02 F8 */ lwz r23, 0x2f8(r1) +/* 801D21DC 001CF13C FE 80 18 90 */ fmr f20, f3 +/* 801D21E0 001CF140 83 01 02 FC */ lwz r24, 0x2fc(r1) +/* 801D21E4 001CF144 FE A0 20 90 */ fmr f21, f4 +/* 801D21E8 001CF148 C3 41 03 00 */ lfs f26, 0x300(r1) +/* 801D21EC 001CF14C FE C0 28 90 */ fmr f22, f5 +/* 801D21F0 001CF150 C3 61 03 04 */ lfs f27, 0x304(r1) +/* 801D21F4 001CF154 FE E0 30 90 */ fmr f23, f6 +/* 801D21F8 001CF158 C3 81 03 08 */ lfs f28, 0x308(r1) +/* 801D21FC 001CF15C FF 00 38 90 */ fmr f24, f7 +/* 801D2200 001CF160 C3 A1 03 0C */ lfs f29, 0x30c(r1) +/* 801D2204 001CF164 FF 20 40 90 */ fmr f25, f8 +/* 801D2208 001CF168 C3 C1 03 10 */ lfs f30, 0x310(r1) +/* 801D220C 001CF16C 83 21 03 14 */ lwz r25, 0x314(r1) +/* 801D2210 001CF170 7C 90 23 78 */ mr r16, r4 +/* 801D2214 001CF174 83 41 03 18 */ lwz r26, 0x318(r1) +/* 801D2218 001CF178 7C B1 2B 78 */ mr r17, r5 +/* 801D221C 001CF17C C3 E1 03 20 */ lfs f31, 0x320(r1) +/* 801D2220 001CF180 7C D2 33 78 */ mr r18, r6 +/* 801D2224 001CF184 83 61 03 24 */ lwz r27, 0x324(r1) +/* 801D2228 001CF188 7C F3 3B 78 */ mr r19, r7 +/* 801D222C 001CF18C 83 81 03 2C */ lwz r28, 0x32c(r1) +/* 801D2230 001CF190 7D 14 43 78 */ mr r20, r8 +/* 801D2234 001CF194 83 A1 03 34 */ lwz r29, 0x334(r1) +/* 801D2238 001CF198 7D 35 4B 78 */ mr r21, r9 +/* 801D223C 001CF19C 83 C1 03 3C */ lwz r30, 0x33c(r1) +/* 801D2240 001CF1A0 7D 56 53 78 */ mr r22, r10 +/* 801D2244 001CF1A4 83 E1 03 44 */ lwz r31, 0x344(r1) +/* 801D2248 001CF1A8 38 61 01 54 */ addi r3, r1, 0x154 +/* 801D224C 001CF1AC 89 C1 03 4F */ lbz r14, 0x34f(r1) +/* 801D2250 001CF1B0 4B E4 8B E9 */ bl None__16CActorParametersFv +/* 801D2254 001CF1B4 7D C5 73 78 */ mr r5, r14 +/* 801D2258 001CF1B8 38 61 00 EC */ addi r3, r1, 0xec +/* 801D225C 001CF1BC 38 81 01 54 */ addi r4, r1, 0x154 +/* 801D2260 001CF1C0 4B F3 45 AD */ bl sub_8010680c +/* 801D2264 001CF1C4 A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 801D2268 001CF1C8 38 00 00 00 */ li r0, 0 +/* 801D226C 001CF1CC 80 AD 91 8C */ lwz r5, lbl_805A7D4C@sda21(r13) +/* 801D2270 001CF1D0 38 60 00 00 */ li r3, 0 +/* 801D2274 001CF1D4 B0 81 00 10 */ sth r4, 0x10(r1) +/* 801D2278 001CF1D8 38 80 00 01 */ li r4, 1 +/* 801D227C 001CF1DC 90 01 00 7C */ stw r0, 0x7c(r1) +/* 801D2280 001CF1E0 90 01 00 78 */ stw r0, 0x78(r1) +/* 801D2284 001CF1E4 48 1B 7C 71 */ bl __shl2i +/* 801D2288 001CF1E8 80 A1 00 78 */ lwz r5, 0x78(r1) +/* 801D228C 001CF1EC 39 61 00 EC */ addi r11, r1, 0xec +/* 801D2290 001CF1F0 80 C1 00 7C */ lwz r6, 0x7c(r1) +/* 801D2294 001CF1F4 38 01 00 10 */ addi r0, r1, 0x10 +/* 801D2298 001CF1F8 7C A3 1B 78 */ or r3, r5, r3 +/* 801D229C 001CF1FC A1 30 00 00 */ lhz r9, 0(r16) +/* 801D22A0 001CF200 7C C4 23 78 */ or r4, r6, r4 +/* 801D22A4 001CF204 90 61 00 78 */ stw r3, 0x78(r1) +/* 801D22A8 001CF208 7D E3 7B 78 */ mr r3, r15 +/* 801D22AC 001CF20C 7E 25 8B 78 */ mr r5, r17 +/* 801D22B0 001CF210 90 81 00 7C */ stw r4, 0x7c(r1) +/* 801D22B4 001CF214 7E 46 93 78 */ mr r6, r18 +/* 801D22B8 001CF218 7E 67 9B 78 */ mr r7, r19 +/* 801D22BC 001CF21C 7E A8 AB 78 */ mr r8, r21 +/* 801D22C0 001CF220 B1 21 00 14 */ sth r9, 0x14(r1) +/* 801D22C4 001CF224 7E C9 B3 78 */ mr r9, r22 +/* 801D22C8 001CF228 38 81 00 14 */ addi r4, r1, 0x14 +/* 801D22CC 001CF22C 39 41 00 78 */ addi r10, r1, 0x78 +/* 801D22D0 001CF230 91 61 00 08 */ stw r11, 8(r1) +/* 801D22D4 001CF234 90 01 00 0C */ stw r0, 0xc(r1) +/* 801D22D8 001CF238 4B E8 35 49 */ bl "__ct__6CActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC16CActorParameters9TUniqueId" +/* 801D22DC 001CF23C 38 61 00 EC */ addi r3, r1, 0xec +/* 801D22E0 001CF240 38 80 FF FF */ li r4, -1 +/* 801D22E4 001CF244 4B F3 43 25 */ bl __dt__16CActorParametersFv +/* 801D22E8 001CF248 38 61 01 54 */ addi r3, r1, 0x154 +/* 801D22EC 001CF24C 38 80 FF FF */ li r4, -1 +/* 801D22F0 001CF250 4B F3 43 19 */ bl __dt__16CActorParametersFv +/* 801D22F4 001CF254 3C 60 80 3E */ lis r3, lbl_803E5758@ha +/* 801D22F8 001CF258 38 00 00 01 */ li r0, 1 +/* 801D22FC 001CF25C 38 63 57 58 */ addi r3, r3, lbl_803E5758@l +/* 801D2300 001CF260 38 80 00 00 */ li r4, 0 +/* 801D2304 001CF264 90 6F 00 00 */ stw r3, 0(r15) +/* 801D2308 001CF268 7C 03 C8 30 */ slw r3, r0, r25 +/* 801D230C 001CF26C 38 63 FF FF */ addi r3, r3, -1 +/* 801D2310 001CF270 C0 02 AB B8 */ lfs f0, lbl_805AC8D8@sda21(r2) +/* 801D2314 001CF274 90 8F 00 EC */ stw r4, 0xec(r15) +/* 801D2318 001CF278 2C 1F FF FF */ cmpwi r31, -1 +/* 801D231C 001CF27C 7F E0 FB 78 */ mr r0, r31 +/* 801D2320 001CF280 90 8F 00 F0 */ stw r4, 0xf0(r15) +/* 801D2324 001CF284 90 8F 00 F4 */ stw r4, 0xf4(r15) +/* 801D2328 001CF288 90 8F 00 FC */ stw r4, 0xfc(r15) +/* 801D232C 001CF28C 90 8F 01 00 */ stw r4, 0x100(r15) +/* 801D2330 001CF290 90 8F 01 04 */ stw r4, 0x104(r15) +/* 801D2334 001CF294 90 8F 01 0C */ stw r4, 0x10c(r15) +/* 801D2338 001CF298 90 8F 01 10 */ stw r4, 0x110(r15) +/* 801D233C 001CF29C 90 8F 01 14 */ stw r4, 0x114(r15) +/* 801D2340 001CF2A0 90 6F 01 1C */ stw r3, 0x11c(r15) +/* 801D2344 001CF2A4 C0 34 00 00 */ lfs f1, 0(r20) +/* 801D2348 001CF2A8 D0 2F 01 20 */ stfs f1, 0x120(r15) +/* 801D234C 001CF2AC C0 34 00 04 */ lfs f1, 4(r20) +/* 801D2350 001CF2B0 D0 2F 01 24 */ stfs f1, 0x124(r15) +/* 801D2354 001CF2B4 C0 34 00 08 */ lfs f1, 8(r20) +/* 801D2358 001CF2B8 D0 2F 01 28 */ stfs f1, 0x128(r15) +/* 801D235C 001CF2BC D0 0F 01 2C */ stfs f0, 0x12c(r15) +/* 801D2360 001CF2C0 D2 4F 01 30 */ stfs f18, 0x130(r15) +/* 801D2364 001CF2C4 93 0F 01 34 */ stw r24, 0x134(r15) +/* 801D2368 001CF2C8 D2 6F 01 38 */ stfs f19, 0x138(r15) +/* 801D236C 001CF2CC D2 8F 01 3C */ stfs f20, 0x13c(r15) +/* 801D2370 001CF2D0 D2 AF 01 40 */ stfs f21, 0x140(r15) +/* 801D2374 001CF2D4 D2 CF 01 44 */ stfs f22, 0x144(r15) +/* 801D2378 001CF2D8 D2 EF 01 48 */ stfs f23, 0x148(r15) +/* 801D237C 001CF2DC D3 0F 01 4C */ stfs f24, 0x14c(r15) +/* 801D2380 001CF2E0 D3 4F 01 50 */ stfs f26, 0x150(r15) +/* 801D2384 001CF2E4 D3 6F 01 54 */ stfs f27, 0x154(r15) +/* 801D2388 001CF2E8 D3 2F 01 58 */ stfs f25, 0x158(r15) +/* 801D238C 001CF2EC D3 AF 01 5C */ stfs f29, 0x15c(r15) +/* 801D2390 001CF2F0 D3 8F 01 60 */ stfs f28, 0x160(r15) +/* 801D2394 001CF2F4 D3 AF 01 64 */ stfs f29, 0x164(r15) +/* 801D2398 001CF2F8 D3 8F 01 68 */ stfs f28, 0x168(r15) +/* 801D239C 001CF2FC 80 7A 00 00 */ lwz r3, 0(r26) +/* 801D23A0 001CF300 90 6F 01 6C */ stw r3, 0x16c(r15) +/* 801D23A4 001CF304 D3 EF 01 70 */ stfs f31, 0x170(r15) +/* 801D23A8 001CF308 D3 CF 01 74 */ stfs f30, 0x174(r15) +/* 801D23AC 001CF30C 90 8F 01 78 */ stw r4, 0x178(r15) +/* 801D23B0 001CF310 90 8F 01 9C */ stw r4, 0x19c(r15) +/* 801D23B4 001CF314 90 8F 01 B0 */ stw r4, 0x1b0(r15) +/* 801D23B8 001CF318 90 8F 01 C4 */ stw r4, 0x1c4(r15) +/* 801D23BC 001CF31C 90 8F 01 F8 */ stw r4, 0x1f8(r15) +/* 801D23C0 001CF320 90 8F 02 1C */ stw r4, 0x21c(r15) +/* 801D23C4 001CF324 40 82 00 08 */ bne lbl_801D23CC +/* 801D23C8 001CF328 A0 02 C5 FC */ lhz r0, lbl_805AE31C@sda21(r2) +lbl_801D23CC: +/* 801D23CC 001CF32C 54 03 04 3E */ clrlwi r3, r0, 0x10 +/* 801D23D0 001CF330 48 11 65 E1 */ bl TranslateSFXID__11CSfxManagerFUs +/* 801D23D4 001CF334 B0 6F 02 34 */ sth r3, 0x234(r15) +/* 801D23D8 001CF338 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801D23DC 001CF33C 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 801D23E0 001CF340 38 C0 00 00 */ li r6, 0 +/* 801D23E4 001CF344 C0 05 00 00 */ lfs f0, 0(r5) +/* 801D23E8 001CF348 38 6F 01 08 */ addi r3, r15, 0x108 +/* 801D23EC 001CF34C 38 80 00 0A */ li r4, 0xa +/* 801D23F0 001CF350 D0 0F 02 38 */ stfs f0, 0x238(r15) +/* 801D23F4 001CF354 C0 05 00 04 */ lfs f0, 4(r5) +/* 801D23F8 001CF358 D0 0F 02 3C */ stfs f0, 0x23c(r15) +/* 801D23FC 001CF35C C0 05 00 08 */ lfs f0, 8(r5) +/* 801D2400 001CF360 D0 0F 02 40 */ stfs f0, 0x240(r15) +/* 801D2404 001CF364 C0 05 00 00 */ lfs f0, 0(r5) +/* 801D2408 001CF368 D0 0F 02 44 */ stfs f0, 0x244(r15) +/* 801D240C 001CF36C C0 05 00 04 */ lfs f0, 4(r5) +/* 801D2410 001CF370 D0 0F 02 48 */ stfs f0, 0x248(r15) +/* 801D2414 001CF374 C0 05 00 08 */ lfs f0, 8(r5) +/* 801D2418 001CF378 D0 0F 02 4C */ stfs f0, 0x24c(r15) +/* 801D241C 001CF37C 88 0F 02 50 */ lbz r0, 0x250(r15) +/* 801D2420 001CF380 50 C0 3E 30 */ rlwimi r0, r6, 7, 0x18, 0x18 +/* 801D2424 001CF384 98 0F 02 50 */ stb r0, 0x250(r15) +/* 801D2428 001CF388 88 0F 02 50 */ lbz r0, 0x250(r15) +/* 801D242C 001CF38C 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19 +/* 801D2430 001CF390 98 0F 02 50 */ stb r0, 0x250(r15) +/* 801D2434 001CF394 88 0F 02 50 */ lbz r0, 0x250(r15) +/* 801D2438 001CF398 50 C0 2E B4 */ rlwimi r0, r6, 5, 0x1a, 0x1a +/* 801D243C 001CF39C 98 0F 02 50 */ stb r0, 0x250(r15) +/* 801D2440 001CF3A0 88 0F 02 50 */ lbz r0, 0x250(r15) +/* 801D2444 001CF3A4 50 C0 26 F6 */ rlwimi r0, r6, 4, 0x1b, 0x1b +/* 801D2448 001CF3A8 98 0F 02 50 */ stb r0, 0x250(r15) +/* 801D244C 001CF3AC 88 01 03 1F */ lbz r0, 0x31f(r1) +/* 801D2450 001CF3B0 88 AF 02 50 */ lbz r5, 0x250(r15) +/* 801D2454 001CF3B4 50 05 1F 38 */ rlwimi r5, r0, 3, 0x1c, 0x1c +/* 801D2458 001CF3B8 88 01 03 4B */ lbz r0, 0x34b(r1) +/* 801D245C 001CF3BC 98 AF 02 50 */ stb r5, 0x250(r15) +/* 801D2460 001CF3C0 88 AF 02 50 */ lbz r5, 0x250(r15) +/* 801D2464 001CF3C4 50 05 17 7A */ rlwimi r5, r0, 2, 0x1d, 0x1d +/* 801D2468 001CF3C8 98 AF 02 50 */ stb r5, 0x250(r15) +/* 801D246C 001CF3CC 88 0F 02 50 */ lbz r0, 0x250(r15) +/* 801D2470 001CF3D0 50 C0 0F BC */ rlwimi r0, r6, 1, 0x1e, 0x1e +/* 801D2474 001CF3D4 98 0F 02 50 */ stb r0, 0x250(r15) +/* 801D2478 001CF3D8 88 0F 02 50 */ lbz r0, 0x250(r15) +/* 801D247C 001CF3DC 50 C0 07 FE */ rlwimi r0, r6, 0, 0x1f, 0x1f +/* 801D2480 001CF3E0 98 0F 02 50 */ stb r0, 0x250(r15) +/* 801D2484 001CF3E4 48 00 0F FD */ bl "reserve__Q24rstl66vectorFi" +/* 801D2488 001CF3E8 C0 4F 00 34 */ lfs f2, 0x34(r15) +/* 801D248C 001CF3EC 38 60 00 00 */ li r3, 0 +/* 801D2490 001CF3F0 C0 02 AB B4 */ lfs f0, lbl_805AC8D4@sda21(r2) +/* 801D2494 001CF3F4 7C 64 1B 78 */ mr r4, r3 +/* 801D2498 001CF3F8 C0 AF 00 58 */ lfs f5, 0x58(r15) +/* 801D249C 001CF3FC 7C 65 1B 78 */ mr r5, r3 +/* 801D24A0 001CF400 EC 02 00 28 */ fsubs f0, f2, f0 +/* 801D24A4 001CF404 C0 8F 00 48 */ lfs f4, 0x48(r15) +/* 801D24A8 001CF408 C0 6F 00 38 */ lfs f3, 0x38(r15) +/* 801D24AC 001CF40C 7C 66 1B 78 */ mr r6, r3 +/* 801D24B0 001CF410 C0 EF 00 5C */ lfs f7, 0x5c(r15) +/* 801D24B4 001CF414 7C 67 1B 78 */ mr r7, r3 +/* 801D24B8 001CF418 C0 CF 00 4C */ lfs f6, 0x4c(r15) +/* 801D24BC 001CF41C FD 40 02 10 */ fabs f10, f0 +/* 801D24C0 001CF420 C8 22 AC 10 */ lfd f1, lbl_805AC930@sda21(r2) +/* 801D24C4 001CF424 7C 68 1B 78 */ mr r8, r3 +/* 801D24C8 001CF428 C0 0F 00 3C */ lfs f0, 0x3c(r15) +/* 801D24CC 001CF42C 7C 69 1B 78 */ mr r9, r3 +/* 801D24D0 001CF430 C1 2F 00 54 */ lfs f9, 0x54(r15) +/* 801D24D4 001CF434 C1 0F 00 44 */ lfs f8, 0x44(r15) +/* 801D24D8 001CF438 FC 0A 08 40 */ fcmpo cr0, f10, f1 +/* 801D24DC 001CF43C D0 61 00 C8 */ stfs f3, 0xc8(r1) +/* 801D24E0 001CF440 7C 60 1B 78 */ mr r0, r3 +/* 801D24E4 001CF444 D0 81 00 CC */ stfs f4, 0xcc(r1) +/* 801D24E8 001CF448 D0 A1 00 D0 */ stfs f5, 0xd0(r1) +/* 801D24EC 001CF44C D0 01 00 BC */ stfs f0, 0xbc(r1) +/* 801D24F0 001CF450 D0 C1 00 C0 */ stfs f6, 0xc0(r1) +/* 801D24F4 001CF454 D0 E1 00 C4 */ stfs f7, 0xc4(r1) +/* 801D24F8 001CF458 D0 41 00 B0 */ stfs f2, 0xb0(r1) +/* 801D24FC 001CF45C D1 01 00 B4 */ stfs f8, 0xb4(r1) +/* 801D2500 001CF460 D1 21 00 B8 */ stfs f9, 0xb8(r1) +/* 801D2504 001CF464 40 80 00 1C */ bge lbl_801D2520 +/* 801D2508 001CF468 C0 02 AB B8 */ lfs f0, lbl_805AC8D8@sda21(r2) +/* 801D250C 001CF46C EC 02 00 28 */ fsubs f0, f2, f0 +/* 801D2510 001CF470 FC 00 02 10 */ fabs f0, f0 +/* 801D2514 001CF474 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801D2518 001CF478 40 80 00 08 */ bge lbl_801D2520 +/* 801D251C 001CF47C 38 00 00 01 */ li r0, 1 +lbl_801D2520: +/* 801D2520 001CF480 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 801D2524 001CF484 41 82 00 24 */ beq lbl_801D2548 +/* 801D2528 001CF488 C0 41 00 B0 */ lfs f2, 0xb0(r1) +/* 801D252C 001CF48C C0 22 AB B8 */ lfs f1, lbl_805AC8D8@sda21(r2) +/* 801D2530 001CF490 C8 02 AC 10 */ lfd f0, lbl_805AC930@sda21(r2) +/* 801D2534 001CF494 EC 22 08 28 */ fsubs f1, f2, f1 +/* 801D2538 001CF498 FC 20 0A 10 */ fabs f1, f1 +/* 801D253C 001CF49C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801D2540 001CF4A0 40 80 00 08 */ bge lbl_801D2548 +/* 801D2544 001CF4A4 39 20 00 01 */ li r9, 1 +lbl_801D2548: +/* 801D2548 001CF4A8 55 20 06 3F */ clrlwi. r0, r9, 0x18 +/* 801D254C 001CF4AC 41 82 00 24 */ beq lbl_801D2570 +/* 801D2550 001CF4B0 C0 41 00 C8 */ lfs f2, 0xc8(r1) +/* 801D2554 001CF4B4 C0 22 AB B8 */ lfs f1, lbl_805AC8D8@sda21(r2) +/* 801D2558 001CF4B8 C8 02 AC 10 */ lfd f0, lbl_805AC930@sda21(r2) +/* 801D255C 001CF4BC EC 22 08 28 */ fsubs f1, f2, f1 +/* 801D2560 001CF4C0 FC 20 0A 10 */ fabs f1, f1 +/* 801D2564 001CF4C4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801D2568 001CF4C8 40 80 00 08 */ bge lbl_801D2570 +/* 801D256C 001CF4CC 39 00 00 01 */ li r8, 1 +lbl_801D2570: +/* 801D2570 001CF4D0 55 00 06 3F */ clrlwi. r0, r8, 0x18 +/* 801D2574 001CF4D4 41 82 00 24 */ beq lbl_801D2598 +/* 801D2578 001CF4D8 C0 41 00 C8 */ lfs f2, 0xc8(r1) +/* 801D257C 001CF4DC C0 22 AB B4 */ lfs f1, lbl_805AC8D4@sda21(r2) +/* 801D2580 001CF4E0 C8 02 AC 10 */ lfd f0, lbl_805AC930@sda21(r2) +/* 801D2584 001CF4E4 EC 22 08 28 */ fsubs f1, f2, f1 +/* 801D2588 001CF4E8 FC 20 0A 10 */ fabs f1, f1 +/* 801D258C 001CF4EC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801D2590 001CF4F0 40 80 00 08 */ bge lbl_801D2598 +/* 801D2594 001CF4F4 38 E0 00 01 */ li r7, 1 +lbl_801D2598: +/* 801D2598 001CF4F8 54 E0 06 3F */ clrlwi. r0, r7, 0x18 +/* 801D259C 001CF4FC 41 82 00 24 */ beq lbl_801D25C0 +/* 801D25A0 001CF500 C0 41 00 C8 */ lfs f2, 0xc8(r1) +/* 801D25A4 001CF504 C0 22 AB B8 */ lfs f1, lbl_805AC8D8@sda21(r2) +/* 801D25A8 001CF508 C8 02 AC 10 */ lfd f0, lbl_805AC930@sda21(r2) +/* 801D25AC 001CF50C EC 22 08 28 */ fsubs f1, f2, f1 +/* 801D25B0 001CF510 FC 20 0A 10 */ fabs f1, f1 +/* 801D25B4 001CF514 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801D25B8 001CF518 40 80 00 08 */ bge lbl_801D25C0 +/* 801D25BC 001CF51C 38 C0 00 01 */ li r6, 1 +lbl_801D25C0: +/* 801D25C0 001CF520 54 C0 06 3F */ clrlwi. r0, r6, 0x18 +/* 801D25C4 001CF524 41 82 00 24 */ beq lbl_801D25E8 +/* 801D25C8 001CF528 C0 41 00 BC */ lfs f2, 0xbc(r1) +/* 801D25CC 001CF52C C0 22 AB B8 */ lfs f1, lbl_805AC8D8@sda21(r2) +/* 801D25D0 001CF530 C8 02 AC 10 */ lfd f0, lbl_805AC930@sda21(r2) +/* 801D25D4 001CF534 EC 22 08 28 */ fsubs f1, f2, f1 +/* 801D25D8 001CF538 FC 20 0A 10 */ fabs f1, f1 +/* 801D25DC 001CF53C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801D25E0 001CF540 40 80 00 08 */ bge lbl_801D25E8 +/* 801D25E4 001CF544 38 A0 00 01 */ li r5, 1 +lbl_801D25E8: +/* 801D25E8 001CF548 54 A0 06 3F */ clrlwi. r0, r5, 0x18 +/* 801D25EC 001CF54C 41 82 00 24 */ beq lbl_801D2610 +/* 801D25F0 001CF550 C0 41 00 BC */ lfs f2, 0xbc(r1) +/* 801D25F4 001CF554 C0 22 AB B8 */ lfs f1, lbl_805AC8D8@sda21(r2) +/* 801D25F8 001CF558 C8 02 AC 10 */ lfd f0, lbl_805AC930@sda21(r2) +/* 801D25FC 001CF55C EC 22 08 28 */ fsubs f1, f2, f1 +/* 801D2600 001CF560 FC 20 0A 10 */ fabs f1, f1 +/* 801D2604 001CF564 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801D2608 001CF568 40 80 00 08 */ bge lbl_801D2610 +/* 801D260C 001CF56C 38 80 00 01 */ li r4, 1 +lbl_801D2610: +/* 801D2610 001CF570 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 801D2614 001CF574 41 82 00 24 */ beq lbl_801D2638 +/* 801D2618 001CF578 C0 41 00 BC */ lfs f2, 0xbc(r1) +/* 801D261C 001CF57C C0 22 AB B4 */ lfs f1, lbl_805AC8D4@sda21(r2) +/* 801D2620 001CF580 C8 02 AC 10 */ lfd f0, lbl_805AC930@sda21(r2) +/* 801D2624 001CF584 EC 22 08 28 */ fsubs f1, f2, f1 +/* 801D2628 001CF588 FC 20 0A 10 */ fabs f1, f1 +/* 801D262C 001CF58C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801D2630 001CF590 40 80 00 08 */ bge lbl_801D2638 +/* 801D2634 001CF594 38 60 00 01 */ li r3, 1 +lbl_801D2638: +/* 801D2638 001CF598 54 63 06 3E */ clrlwi r3, r3, 0x18 +/* 801D263C 001CF59C 88 0F 02 50 */ lbz r0, 0x250(r15) +/* 801D2640 001CF5A0 7C 63 00 34 */ cntlzw r3, r3 +/* 801D2644 001CF5A4 50 60 0E 72 */ rlwimi r0, r3, 1, 0x19, 0x19 +/* 801D2648 001CF5A8 98 0F 02 50 */ stb r0, 0x250(r15) +/* 801D264C 001CF5AC 80 77 00 00 */ lwz r3, 0(r23) +/* 801D2650 001CF5B0 3C 03 00 01 */ addis r0, r3, 1 +/* 801D2654 001CF5B4 28 00 FF FF */ cmplwi r0, 0xffff +/* 801D2658 001CF5B8 41 82 02 64 */ beq lbl_801D28BC +/* 801D265C 001CF5BC 3C 80 80 3D */ lis r4, lbl_803D1B70@ha +/* 801D2660 001CF5C0 38 60 00 4C */ li r3, 0x4c +/* 801D2664 001CF5C4 38 84 1B 70 */ addi r4, r4, lbl_803D1B70@l +/* 801D2668 001CF5C8 38 A0 00 00 */ li r5, 0 +/* 801D266C 001CF5CC 48 14 32 01 */ bl __nw__FUlPCcPCc +/* 801D2670 001CF5D0 7C 6E 1B 79 */ or. r14, r3, r3 +/* 801D2674 001CF5D4 41 82 00 10 */ beq lbl_801D2684 +/* 801D2678 001CF5D8 7E E4 BB 78 */ mr r4, r23 +/* 801D267C 001CF5DC 4B F4 44 D9 */ bl __ct__10CModelDataFRC8CAnimRes +/* 801D2680 001CF5E0 7C 6E 1B 78 */ mr r14, r3 +lbl_801D2684: +/* 801D2684 001CF5E4 3C 80 80 3D */ lis r4, lbl_803D1B70@ha +/* 801D2688 001CF5E8 38 60 00 08 */ li r3, 8 +/* 801D268C 001CF5EC 38 84 1B 70 */ addi r4, r4, lbl_803D1B70@l +/* 801D2690 001CF5F0 38 A0 00 00 */ li r5, 0 +/* 801D2694 001CF5F4 48 14 31 D9 */ bl __nw__FUlPCcPCc +/* 801D2698 001CF5F8 28 03 00 00 */ cmplwi r3, 0 +/* 801D269C 001CF5FC 41 82 00 10 */ beq lbl_801D26AC +/* 801D26A0 001CF600 91 C3 00 00 */ stw r14, 0(r3) +/* 801D26A4 001CF604 38 00 00 01 */ li r0, 1 +/* 801D26A8 001CF608 90 03 00 04 */ stw r0, 4(r3) +lbl_801D26AC: +/* 801D26AC 001CF60C 90 61 00 24 */ stw r3, 0x24(r1) +/* 801D26B0 001CF610 38 8F 01 B0 */ addi r4, r15, 0x1b0 +/* 801D26B4 001CF614 80 0F 01 B0 */ lwz r0, 0x1b0(r15) +/* 801D26B8 001CF618 54 00 10 3A */ slwi r0, r0, 2 +/* 801D26BC 001CF61C 7C 84 02 14 */ add r4, r4, r0 +/* 801D26C0 001CF620 34 84 00 04 */ addic. r4, r4, 4 +/* 801D26C4 001CF624 41 82 00 18 */ beq lbl_801D26DC +/* 801D26C8 001CF628 90 64 00 00 */ stw r3, 0(r4) +/* 801D26CC 001CF62C 80 84 00 00 */ lwz r4, 0(r4) +/* 801D26D0 001CF630 80 64 00 04 */ lwz r3, 4(r4) +/* 801D26D4 001CF634 38 03 00 01 */ addi r0, r3, 1 +/* 801D26D8 001CF638 90 04 00 04 */ stw r0, 4(r4) +lbl_801D26DC: +/* 801D26DC 001CF63C 80 8F 01 B0 */ lwz r4, 0x1b0(r15) +/* 801D26E0 001CF640 38 61 00 24 */ addi r3, r1, 0x24 +/* 801D26E4 001CF644 38 04 00 01 */ addi r0, r4, 1 +/* 801D26E8 001CF648 90 0F 01 B0 */ stw r0, 0x1b0(r15) +/* 801D26EC 001CF64C 48 00 0C 75 */ bl sub_801d3360 +/* 801D26F0 001CF650 3C 80 80 3D */ lis r4, lbl_803D1B70@ha +/* 801D26F4 001CF654 38 60 00 4C */ li r3, 0x4c +/* 801D26F8 001CF658 38 84 1B 70 */ addi r4, r4, lbl_803D1B70@l +/* 801D26FC 001CF65C 38 A0 00 00 */ li r5, 0 +/* 801D2700 001CF660 48 14 31 6D */ bl __nw__FUlPCcPCc +/* 801D2704 001CF664 7C 6E 1B 79 */ or. r14, r3, r3 +/* 801D2708 001CF668 41 82 00 10 */ beq lbl_801D2718 +/* 801D270C 001CF66C 7E E4 BB 78 */ mr r4, r23 +/* 801D2710 001CF670 4B F4 44 45 */ bl __ct__10CModelDataFRC8CAnimRes +/* 801D2714 001CF674 7C 6E 1B 78 */ mr r14, r3 +lbl_801D2718: +/* 801D2718 001CF678 3C 80 80 3D */ lis r4, lbl_803D1B70@ha +/* 801D271C 001CF67C 38 60 00 08 */ li r3, 8 +/* 801D2720 001CF680 38 84 1B 70 */ addi r4, r4, lbl_803D1B70@l +/* 801D2724 001CF684 38 A0 00 00 */ li r5, 0 +/* 801D2728 001CF688 48 14 31 45 */ bl __nw__FUlPCcPCc +/* 801D272C 001CF68C 28 03 00 00 */ cmplwi r3, 0 +/* 801D2730 001CF690 41 82 00 10 */ beq lbl_801D2740 +/* 801D2734 001CF694 91 C3 00 00 */ stw r14, 0(r3) +/* 801D2738 001CF698 38 00 00 01 */ li r0, 1 +/* 801D273C 001CF69C 90 03 00 04 */ stw r0, 4(r3) +lbl_801D2740: +/* 801D2740 001CF6A0 90 61 00 20 */ stw r3, 0x20(r1) +/* 801D2744 001CF6A4 38 8F 01 B0 */ addi r4, r15, 0x1b0 +/* 801D2748 001CF6A8 80 0F 01 B0 */ lwz r0, 0x1b0(r15) +/* 801D274C 001CF6AC 54 00 10 3A */ slwi r0, r0, 2 +/* 801D2750 001CF6B0 7C 84 02 14 */ add r4, r4, r0 +/* 801D2754 001CF6B4 34 84 00 04 */ addic. r4, r4, 4 +/* 801D2758 001CF6B8 41 82 00 18 */ beq lbl_801D2770 +/* 801D275C 001CF6BC 90 64 00 00 */ stw r3, 0(r4) +/* 801D2760 001CF6C0 80 84 00 00 */ lwz r4, 0(r4) +/* 801D2764 001CF6C4 80 64 00 04 */ lwz r3, 4(r4) +/* 801D2768 001CF6C8 38 03 00 01 */ addi r0, r3, 1 +/* 801D276C 001CF6CC 90 04 00 04 */ stw r0, 4(r4) +lbl_801D2770: +/* 801D2770 001CF6D0 80 8F 01 B0 */ lwz r4, 0x1b0(r15) +/* 801D2774 001CF6D4 38 61 00 20 */ addi r3, r1, 0x20 +/* 801D2778 001CF6D8 38 04 00 01 */ addi r0, r4, 1 +/* 801D277C 001CF6DC 90 0F 01 B0 */ stw r0, 0x1b0(r15) +/* 801D2780 001CF6E0 48 00 0B E1 */ bl sub_801d3360 +/* 801D2784 001CF6E4 3C 80 80 3D */ lis r4, lbl_803D1B70@ha +/* 801D2788 001CF6E8 38 60 00 4C */ li r3, 0x4c +/* 801D278C 001CF6EC 38 84 1B 70 */ addi r4, r4, lbl_803D1B70@l +/* 801D2790 001CF6F0 38 A0 00 00 */ li r5, 0 +/* 801D2794 001CF6F4 48 14 30 D9 */ bl __nw__FUlPCcPCc +/* 801D2798 001CF6F8 7C 6E 1B 79 */ or. r14, r3, r3 +/* 801D279C 001CF6FC 41 82 00 10 */ beq lbl_801D27AC +/* 801D27A0 001CF700 7E E4 BB 78 */ mr r4, r23 +/* 801D27A4 001CF704 4B F4 43 B1 */ bl __ct__10CModelDataFRC8CAnimRes +/* 801D27A8 001CF708 7C 6E 1B 78 */ mr r14, r3 +lbl_801D27AC: +/* 801D27AC 001CF70C 3C 80 80 3D */ lis r4, lbl_803D1B70@ha +/* 801D27B0 001CF710 38 60 00 08 */ li r3, 8 +/* 801D27B4 001CF714 38 84 1B 70 */ addi r4, r4, lbl_803D1B70@l +/* 801D27B8 001CF718 38 A0 00 00 */ li r5, 0 +/* 801D27BC 001CF71C 48 14 30 B1 */ bl __nw__FUlPCcPCc +/* 801D27C0 001CF720 28 03 00 00 */ cmplwi r3, 0 +/* 801D27C4 001CF724 41 82 00 10 */ beq lbl_801D27D4 +/* 801D27C8 001CF728 91 C3 00 00 */ stw r14, 0(r3) +/* 801D27CC 001CF72C 38 00 00 01 */ li r0, 1 +/* 801D27D0 001CF730 90 03 00 04 */ stw r0, 4(r3) +lbl_801D27D4: +/* 801D27D4 001CF734 90 61 00 1C */ stw r3, 0x1c(r1) +/* 801D27D8 001CF738 38 8F 01 B0 */ addi r4, r15, 0x1b0 +/* 801D27DC 001CF73C 80 0F 01 B0 */ lwz r0, 0x1b0(r15) +/* 801D27E0 001CF740 54 00 10 3A */ slwi r0, r0, 2 +/* 801D27E4 001CF744 7C 84 02 14 */ add r4, r4, r0 +/* 801D27E8 001CF748 34 84 00 04 */ addic. r4, r4, 4 +/* 801D27EC 001CF74C 41 82 00 18 */ beq lbl_801D2804 +/* 801D27F0 001CF750 90 64 00 00 */ stw r3, 0(r4) +/* 801D27F4 001CF754 80 84 00 00 */ lwz r4, 0(r4) +/* 801D27F8 001CF758 80 64 00 04 */ lwz r3, 4(r4) +/* 801D27FC 001CF75C 38 03 00 01 */ addi r0, r3, 1 +/* 801D2800 001CF760 90 04 00 04 */ stw r0, 4(r4) +lbl_801D2804: +/* 801D2804 001CF764 80 8F 01 B0 */ lwz r4, 0x1b0(r15) +/* 801D2808 001CF768 38 61 00 1C */ addi r3, r1, 0x1c +/* 801D280C 001CF76C 38 04 00 01 */ addi r0, r4, 1 +/* 801D2810 001CF770 90 0F 01 B0 */ stw r0, 0x1b0(r15) +/* 801D2814 001CF774 48 00 0B 4D */ bl sub_801d3360 +/* 801D2818 001CF778 3C 80 80 3D */ lis r4, lbl_803D1B70@ha +/* 801D281C 001CF77C 38 60 00 4C */ li r3, 0x4c +/* 801D2820 001CF780 38 84 1B 70 */ addi r4, r4, lbl_803D1B70@l +/* 801D2824 001CF784 38 A0 00 00 */ li r5, 0 +/* 801D2828 001CF788 48 14 30 45 */ bl __nw__FUlPCcPCc +/* 801D282C 001CF78C 7C 6E 1B 79 */ or. r14, r3, r3 +/* 801D2830 001CF790 41 82 00 10 */ beq lbl_801D2840 +/* 801D2834 001CF794 7E E4 BB 78 */ mr r4, r23 +/* 801D2838 001CF798 4B F4 43 1D */ bl __ct__10CModelDataFRC8CAnimRes +/* 801D283C 001CF79C 7C 6E 1B 78 */ mr r14, r3 +lbl_801D2840: +/* 801D2840 001CF7A0 3C 80 80 3D */ lis r4, lbl_803D1B70@ha +/* 801D2844 001CF7A4 38 60 00 08 */ li r3, 8 +/* 801D2848 001CF7A8 38 84 1B 70 */ addi r4, r4, lbl_803D1B70@l +/* 801D284C 001CF7AC 38 A0 00 00 */ li r5, 0 +/* 801D2850 001CF7B0 48 14 30 1D */ bl __nw__FUlPCcPCc +/* 801D2854 001CF7B4 28 03 00 00 */ cmplwi r3, 0 +/* 801D2858 001CF7B8 41 82 00 10 */ beq lbl_801D2868 +/* 801D285C 001CF7BC 91 C3 00 00 */ stw r14, 0(r3) +/* 801D2860 001CF7C0 38 00 00 01 */ li r0, 1 +/* 801D2864 001CF7C4 90 03 00 04 */ stw r0, 4(r3) +lbl_801D2868: +/* 801D2868 001CF7C8 90 61 00 18 */ stw r3, 0x18(r1) +/* 801D286C 001CF7CC 38 8F 01 B0 */ addi r4, r15, 0x1b0 +/* 801D2870 001CF7D0 80 0F 01 B0 */ lwz r0, 0x1b0(r15) +/* 801D2874 001CF7D4 54 00 10 3A */ slwi r0, r0, 2 +/* 801D2878 001CF7D8 7C 84 02 14 */ add r4, r4, r0 +/* 801D287C 001CF7DC 34 84 00 04 */ addic. r4, r4, 4 +/* 801D2880 001CF7E0 41 82 00 18 */ beq lbl_801D2898 +/* 801D2884 001CF7E4 90 64 00 00 */ stw r3, 0(r4) +/* 801D2888 001CF7E8 80 84 00 00 */ lwz r4, 0(r4) +/* 801D288C 001CF7EC 80 64 00 04 */ lwz r3, 4(r4) +/* 801D2890 001CF7F0 38 03 00 01 */ addi r0, r3, 1 +/* 801D2894 001CF7F4 90 04 00 04 */ stw r0, 4(r4) +lbl_801D2898: +/* 801D2898 001CF7F8 80 8F 01 B0 */ lwz r4, 0x1b0(r15) +/* 801D289C 001CF7FC 38 61 00 18 */ addi r3, r1, 0x18 +/* 801D28A0 001CF800 38 04 00 01 */ addi r0, r4, 1 +/* 801D28A4 001CF804 90 0F 01 B0 */ stw r0, 0x1b0(r15) +/* 801D28A8 001CF808 48 00 0A B9 */ bl sub_801d3360 +/* 801D28AC 001CF80C 88 0F 02 50 */ lbz r0, 0x250(r15) +/* 801D28B0 001CF810 38 60 00 01 */ li r3, 1 +/* 801D28B4 001CF814 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801D28B8 001CF818 98 0F 02 50 */ stb r0, 0x250(r15) +lbl_801D28BC: +/* 801D28BC 001CF81C 3C 1B 00 01 */ addis r0, r27, 1 +/* 801D28C0 001CF820 28 00 FF FF */ cmplwi r0, 0xffff +/* 801D28C4 001CF824 41 82 00 A8 */ beq lbl_801D296C +/* 801D28C8 001CF828 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 801D28CC 001CF82C 93 61 00 74 */ stw r27, 0x74(r1) +/* 801D28D0 001CF830 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 801D28D4 001CF834 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801D28D8 001CF838 90 01 00 70 */ stw r0, 0x70(r1) +/* 801D28DC 001CF83C 38 61 00 68 */ addi r3, r1, 0x68 +/* 801D28E0 001CF840 38 A1 00 70 */ addi r5, r1, 0x70 +/* 801D28E4 001CF844 81 84 00 00 */ lwz r12, 0(r4) +/* 801D28E8 001CF848 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801D28EC 001CF84C 7D 89 03 A6 */ mtctr r12 +/* 801D28F0 001CF850 4E 80 04 21 */ bctrl +/* 801D28F4 001CF854 39 C1 00 A4 */ addi r14, r1, 0xa4 +/* 801D28F8 001CF858 38 81 00 68 */ addi r4, r1, 0x68 +/* 801D28FC 001CF85C 7D C3 73 78 */ mr r3, r14 +/* 801D2900 001CF860 48 16 E5 A9 */ bl __ct__6CTokenFRC6CToken +/* 801D2904 001CF864 7D C3 73 78 */ mr r3, r14 +/* 801D2908 001CF868 48 16 E5 05 */ bl GetObj__6CTokenFv +/* 801D290C 001CF86C 80 03 00 04 */ lwz r0, 4(r3) +/* 801D2910 001CF870 38 6F 01 C4 */ addi r3, r15, 0x1c4 +/* 801D2914 001CF874 90 01 00 AC */ stw r0, 0xac(r1) +/* 801D2918 001CF878 80 0F 01 C4 */ lwz r0, 0x1c4(r15) +/* 801D291C 001CF87C 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801D2920 001CF880 7D C3 02 14 */ add r14, r3, r0 +/* 801D2924 001CF884 35 CE 00 04 */ addic. r14, r14, 4 +/* 801D2928 001CF888 41 82 00 20 */ beq lbl_801D2948 +/* 801D292C 001CF88C 7D C3 73 78 */ mr r3, r14 +/* 801D2930 001CF890 38 81 00 A4 */ addi r4, r1, 0xa4 +/* 801D2934 001CF894 48 16 E5 75 */ bl __ct__6CTokenFRC6CToken +/* 801D2938 001CF898 80 01 00 AC */ lwz r0, 0xac(r1) +/* 801D293C 001CF89C 7D C3 73 78 */ mr r3, r14 +/* 801D2940 001CF8A0 90 0E 00 08 */ stw r0, 8(r14) +/* 801D2944 001CF8A4 48 16 E4 41 */ bl Lock__6CTokenFv +lbl_801D2948: +/* 801D2948 001CF8A8 80 AF 01 C4 */ lwz r5, 0x1c4(r15) +/* 801D294C 001CF8AC 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 801D2950 001CF8B0 38 80 00 00 */ li r4, 0 +/* 801D2954 001CF8B4 38 05 00 01 */ addi r0, r5, 1 +/* 801D2958 001CF8B8 90 0F 01 C4 */ stw r0, 0x1c4(r15) +/* 801D295C 001CF8BC 48 16 E4 E5 */ bl __dt__6CTokenFv +/* 801D2960 001CF8C0 38 61 00 68 */ addi r3, r1, 0x68 +/* 801D2964 001CF8C4 38 80 FF FF */ li r4, -1 +/* 801D2968 001CF8C8 48 16 E4 D9 */ bl __dt__6CTokenFv +lbl_801D296C: +/* 801D296C 001CF8CC 3C 1C 00 01 */ addis r0, r28, 1 +/* 801D2970 001CF8D0 28 00 FF FF */ cmplwi r0, 0xffff +/* 801D2974 001CF8D4 41 82 00 A8 */ beq lbl_801D2A1C +/* 801D2978 001CF8D8 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 801D297C 001CF8DC 93 81 00 64 */ stw r28, 0x64(r1) +/* 801D2980 001CF8E0 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 801D2984 001CF8E4 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801D2988 001CF8E8 90 01 00 60 */ stw r0, 0x60(r1) +/* 801D298C 001CF8EC 38 61 00 58 */ addi r3, r1, 0x58 +/* 801D2990 001CF8F0 38 A1 00 60 */ addi r5, r1, 0x60 +/* 801D2994 001CF8F4 81 84 00 00 */ lwz r12, 0(r4) +/* 801D2998 001CF8F8 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801D299C 001CF8FC 7D 89 03 A6 */ mtctr r12 +/* 801D29A0 001CF900 4E 80 04 21 */ bctrl +/* 801D29A4 001CF904 39 C1 00 98 */ addi r14, r1, 0x98 +/* 801D29A8 001CF908 38 81 00 58 */ addi r4, r1, 0x58 +/* 801D29AC 001CF90C 7D C3 73 78 */ mr r3, r14 +/* 801D29B0 001CF910 48 16 E4 F9 */ bl __ct__6CTokenFRC6CToken +/* 801D29B4 001CF914 7D C3 73 78 */ mr r3, r14 +/* 801D29B8 001CF918 48 16 E4 55 */ bl GetObj__6CTokenFv +/* 801D29BC 001CF91C 80 03 00 04 */ lwz r0, 4(r3) +/* 801D29C0 001CF920 38 6F 01 C4 */ addi r3, r15, 0x1c4 +/* 801D29C4 001CF924 90 01 00 A0 */ stw r0, 0xa0(r1) +/* 801D29C8 001CF928 80 0F 01 C4 */ lwz r0, 0x1c4(r15) +/* 801D29CC 001CF92C 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801D29D0 001CF930 7D C3 02 14 */ add r14, r3, r0 +/* 801D29D4 001CF934 35 CE 00 04 */ addic. r14, r14, 4 +/* 801D29D8 001CF938 41 82 00 20 */ beq lbl_801D29F8 +/* 801D29DC 001CF93C 7D C3 73 78 */ mr r3, r14 +/* 801D29E0 001CF940 38 81 00 98 */ addi r4, r1, 0x98 +/* 801D29E4 001CF944 48 16 E4 C5 */ bl __ct__6CTokenFRC6CToken +/* 801D29E8 001CF948 80 01 00 A0 */ lwz r0, 0xa0(r1) +/* 801D29EC 001CF94C 7D C3 73 78 */ mr r3, r14 +/* 801D29F0 001CF950 90 0E 00 08 */ stw r0, 8(r14) +/* 801D29F4 001CF954 48 16 E3 91 */ bl Lock__6CTokenFv +lbl_801D29F8: +/* 801D29F8 001CF958 80 AF 01 C4 */ lwz r5, 0x1c4(r15) +/* 801D29FC 001CF95C 38 61 00 98 */ addi r3, r1, 0x98 +/* 801D2A00 001CF960 38 80 00 00 */ li r4, 0 +/* 801D2A04 001CF964 38 05 00 01 */ addi r0, r5, 1 +/* 801D2A08 001CF968 90 0F 01 C4 */ stw r0, 0x1c4(r15) +/* 801D2A0C 001CF96C 48 16 E4 35 */ bl __dt__6CTokenFv +/* 801D2A10 001CF970 38 61 00 58 */ addi r3, r1, 0x58 +/* 801D2A14 001CF974 38 80 FF FF */ li r4, -1 +/* 801D2A18 001CF978 48 16 E4 29 */ bl __dt__6CTokenFv +lbl_801D2A1C: +/* 801D2A1C 001CF97C 3C 1D 00 01 */ addis r0, r29, 1 +/* 801D2A20 001CF980 28 00 FF FF */ cmplwi r0, 0xffff +/* 801D2A24 001CF984 41 82 00 A8 */ beq lbl_801D2ACC +/* 801D2A28 001CF988 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 801D2A2C 001CF98C 93 A1 00 54 */ stw r29, 0x54(r1) +/* 801D2A30 001CF990 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 801D2A34 001CF994 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801D2A38 001CF998 90 01 00 50 */ stw r0, 0x50(r1) +/* 801D2A3C 001CF99C 38 61 00 48 */ addi r3, r1, 0x48 +/* 801D2A40 001CF9A0 38 A1 00 50 */ addi r5, r1, 0x50 +/* 801D2A44 001CF9A4 81 84 00 00 */ lwz r12, 0(r4) +/* 801D2A48 001CF9A8 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801D2A4C 001CF9AC 7D 89 03 A6 */ mtctr r12 +/* 801D2A50 001CF9B0 4E 80 04 21 */ bctrl +/* 801D2A54 001CF9B4 39 C1 00 8C */ addi r14, r1, 0x8c +/* 801D2A58 001CF9B8 38 81 00 48 */ addi r4, r1, 0x48 +/* 801D2A5C 001CF9BC 7D C3 73 78 */ mr r3, r14 +/* 801D2A60 001CF9C0 48 16 E4 49 */ bl __ct__6CTokenFRC6CToken +/* 801D2A64 001CF9C4 7D C3 73 78 */ mr r3, r14 +/* 801D2A68 001CF9C8 48 16 E3 A5 */ bl GetObj__6CTokenFv +/* 801D2A6C 001CF9CC 80 03 00 04 */ lwz r0, 4(r3) +/* 801D2A70 001CF9D0 38 6F 01 C4 */ addi r3, r15, 0x1c4 +/* 801D2A74 001CF9D4 90 01 00 94 */ stw r0, 0x94(r1) +/* 801D2A78 001CF9D8 80 0F 01 C4 */ lwz r0, 0x1c4(r15) +/* 801D2A7C 001CF9DC 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801D2A80 001CF9E0 7D C3 02 14 */ add r14, r3, r0 +/* 801D2A84 001CF9E4 35 CE 00 04 */ addic. r14, r14, 4 +/* 801D2A88 001CF9E8 41 82 00 20 */ beq lbl_801D2AA8 +/* 801D2A8C 001CF9EC 7D C3 73 78 */ mr r3, r14 +/* 801D2A90 001CF9F0 38 81 00 8C */ addi r4, r1, 0x8c +/* 801D2A94 001CF9F4 48 16 E4 15 */ bl __ct__6CTokenFRC6CToken +/* 801D2A98 001CF9F8 80 01 00 94 */ lwz r0, 0x94(r1) +/* 801D2A9C 001CF9FC 7D C3 73 78 */ mr r3, r14 +/* 801D2AA0 001CFA00 90 0E 00 08 */ stw r0, 8(r14) +/* 801D2AA4 001CFA04 48 16 E2 E1 */ bl Lock__6CTokenFv +lbl_801D2AA8: +/* 801D2AA8 001CFA08 80 AF 01 C4 */ lwz r5, 0x1c4(r15) +/* 801D2AAC 001CFA0C 38 61 00 8C */ addi r3, r1, 0x8c +/* 801D2AB0 001CFA10 38 80 00 00 */ li r4, 0 +/* 801D2AB4 001CFA14 38 05 00 01 */ addi r0, r5, 1 +/* 801D2AB8 001CFA18 90 0F 01 C4 */ stw r0, 0x1c4(r15) +/* 801D2ABC 001CFA1C 48 16 E3 85 */ bl __dt__6CTokenFv +/* 801D2AC0 001CFA20 38 61 00 48 */ addi r3, r1, 0x48 +/* 801D2AC4 001CFA24 38 80 FF FF */ li r4, -1 +/* 801D2AC8 001CFA28 48 16 E3 79 */ bl __dt__6CTokenFv +lbl_801D2ACC: +/* 801D2ACC 001CFA2C 3C 1E 00 01 */ addis r0, r30, 1 +/* 801D2AD0 001CFA30 28 00 FF FF */ cmplwi r0, 0xffff +/* 801D2AD4 001CFA34 41 82 00 A8 */ beq lbl_801D2B7C +/* 801D2AD8 001CFA38 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 801D2ADC 001CFA3C 93 C1 00 44 */ stw r30, 0x44(r1) +/* 801D2AE0 001CFA40 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 801D2AE4 001CFA44 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801D2AE8 001CFA48 90 01 00 40 */ stw r0, 0x40(r1) +/* 801D2AEC 001CFA4C 38 61 00 38 */ addi r3, r1, 0x38 +/* 801D2AF0 001CFA50 38 A1 00 40 */ addi r5, r1, 0x40 +/* 801D2AF4 001CFA54 81 84 00 00 */ lwz r12, 0(r4) +/* 801D2AF8 001CFA58 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801D2AFC 001CFA5C 7D 89 03 A6 */ mtctr r12 +/* 801D2B00 001CFA60 4E 80 04 21 */ bctrl +/* 801D2B04 001CFA64 39 C1 00 80 */ addi r14, r1, 0x80 +/* 801D2B08 001CFA68 38 81 00 38 */ addi r4, r1, 0x38 +/* 801D2B0C 001CFA6C 7D C3 73 78 */ mr r3, r14 +/* 801D2B10 001CFA70 48 16 E3 99 */ bl __ct__6CTokenFRC6CToken +/* 801D2B14 001CFA74 7D C3 73 78 */ mr r3, r14 +/* 801D2B18 001CFA78 48 16 E2 F5 */ bl GetObj__6CTokenFv +/* 801D2B1C 001CFA7C 80 03 00 04 */ lwz r0, 4(r3) +/* 801D2B20 001CFA80 38 6F 01 C4 */ addi r3, r15, 0x1c4 +/* 801D2B24 001CFA84 90 01 00 88 */ stw r0, 0x88(r1) +/* 801D2B28 001CFA88 80 0F 01 C4 */ lwz r0, 0x1c4(r15) +/* 801D2B2C 001CFA8C 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801D2B30 001CFA90 7D C3 02 14 */ add r14, r3, r0 +/* 801D2B34 001CFA94 35 CE 00 04 */ addic. r14, r14, 4 +/* 801D2B38 001CFA98 41 82 00 20 */ beq lbl_801D2B58 +/* 801D2B3C 001CFA9C 7D C3 73 78 */ mr r3, r14 +/* 801D2B40 001CFAA0 38 81 00 80 */ addi r4, r1, 0x80 +/* 801D2B44 001CFAA4 48 16 E3 65 */ bl __ct__6CTokenFRC6CToken +/* 801D2B48 001CFAA8 80 01 00 88 */ lwz r0, 0x88(r1) +/* 801D2B4C 001CFAAC 7D C3 73 78 */ mr r3, r14 +/* 801D2B50 001CFAB0 90 0E 00 08 */ stw r0, 8(r14) +/* 801D2B54 001CFAB4 48 16 E2 31 */ bl Lock__6CTokenFv +lbl_801D2B58: +/* 801D2B58 001CFAB8 80 AF 01 C4 */ lwz r5, 0x1c4(r15) +/* 801D2B5C 001CFABC 38 61 00 80 */ addi r3, r1, 0x80 +/* 801D2B60 001CFAC0 38 80 00 00 */ li r4, 0 +/* 801D2B64 001CFAC4 38 05 00 01 */ addi r0, r5, 1 +/* 801D2B68 001CFAC8 90 0F 01 C4 */ stw r0, 0x1c4(r15) +/* 801D2B6C 001CFACC 48 16 E2 D5 */ bl __dt__6CTokenFv +/* 801D2B70 001CFAD0 38 61 00 38 */ addi r3, r1, 0x38 +/* 801D2B74 001CFAD4 38 80 FF FF */ li r4, -1 +/* 801D2B78 001CFAD8 48 16 E2 C9 */ bl __dt__6CTokenFv +lbl_801D2B7C: +/* 801D2B7C 001CFADC 3A 00 00 00 */ li r16, 0 +/* 801D2B80 001CFAE0 3C 60 80 3D */ lis r3, lbl_803D1B70@ha +/* 801D2B84 001CFAE4 7E 11 83 78 */ mr r17, r16 +/* 801D2B88 001CFAE8 3A 4F 01 F8 */ addi r18, r15, 0x1f8 +/* 801D2B8C 001CFAEC 39 C3 1B 70 */ addi r14, r3, lbl_803D1B70@l +/* 801D2B90 001CFAF0 3A 60 00 00 */ li r19, 0 +/* 801D2B94 001CFAF4 48 00 00 F8 */ b lbl_801D2C8C +lbl_801D2B98: +/* 801D2B98 001CFAF8 7D C4 73 78 */ mr r4, r14 +/* 801D2B9C 001CFAFC 3A 80 00 00 */ li r20, 0 +/* 801D2BA0 001CFB00 38 60 03 40 */ li r3, 0x340 +/* 801D2BA4 001CFB04 38 A0 00 00 */ li r5, 0 +/* 801D2BA8 001CFB08 48 14 2C C5 */ bl __nw__FUlPCcPCc +/* 801D2BAC 001CFB0C 7C 75 1B 79 */ or. r21, r3, r3 +/* 801D2BB0 001CFB10 41 82 00 30 */ beq lbl_801D2BE0 +/* 801D2BB4 001CFB14 7C 8F 82 14 */ add r4, r15, r16 +/* 801D2BB8 001CFB18 38 61 00 30 */ addi r3, r1, 0x30 +/* 801D2BBC 001CFB1C 38 84 01 C8 */ addi r4, r4, 0x1c8 +/* 801D2BC0 001CFB20 48 16 E2 E9 */ bl __ct__6CTokenFRC6CToken +/* 801D2BC4 001CFB24 7E A3 AB 78 */ mr r3, r21 +/* 801D2BC8 001CFB28 38 81 00 30 */ addi r4, r1, 0x30 +/* 801D2BCC 001CFB2C 3A 80 00 01 */ li r20, 1 +/* 801D2BD0 001CFB30 38 A0 00 00 */ li r5, 0 +/* 801D2BD4 001CFB34 38 C0 00 01 */ li r6, 1 +/* 801D2BD8 001CFB38 48 14 C8 09 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 801D2BDC 001CFB3C 7C 75 1B 78 */ mr r21, r3 +lbl_801D2BE0: +/* 801D2BE0 001CFB40 80 12 00 00 */ lwz r0, 0(r18) +/* 801D2BE4 001CFB44 7C 75 00 D0 */ neg r3, r21 +/* 801D2BE8 001CFB48 7C 63 AB 78 */ or r3, r3, r21 +/* 801D2BEC 001CFB4C 92 A1 00 2C */ stw r21, 0x2c(r1) +/* 801D2BF0 001CFB50 54 00 18 38 */ slwi r0, r0, 3 +/* 801D2BF4 001CFB54 7C 92 02 14 */ add r4, r18, r0 +/* 801D2BF8 001CFB58 54 60 0F FE */ srwi r0, r3, 0x1f +/* 801D2BFC 001CFB5C 34 84 00 04 */ addic. r4, r4, 4 +/* 801D2C00 001CFB60 98 01 00 28 */ stb r0, 0x28(r1) +/* 801D2C04 001CFB64 41 82 00 14 */ beq lbl_801D2C18 +/* 801D2C08 001CFB68 98 04 00 00 */ stb r0, 0(r4) +/* 801D2C0C 001CFB6C 38 00 00 00 */ li r0, 0 +/* 801D2C10 001CFB70 92 A4 00 04 */ stw r21, 4(r4) +/* 801D2C14 001CFB74 98 01 00 28 */ stb r0, 0x28(r1) +lbl_801D2C18: +/* 801D2C18 001CFB78 80 6F 01 F8 */ lwz r3, 0x1f8(r15) +/* 801D2C1C 001CFB7C 88 01 00 28 */ lbz r0, 0x28(r1) +/* 801D2C20 001CFB80 38 63 00 01 */ addi r3, r3, 1 +/* 801D2C24 001CFB84 28 00 00 00 */ cmplwi r0, 0 +/* 801D2C28 001CFB88 90 6F 01 F8 */ stw r3, 0x1f8(r15) +/* 801D2C2C 001CFB8C 41 82 00 24 */ beq lbl_801D2C50 +/* 801D2C30 001CFB90 80 61 00 2C */ lwz r3, 0x2c(r1) +/* 801D2C34 001CFB94 28 03 00 00 */ cmplwi r3, 0 +/* 801D2C38 001CFB98 41 82 00 18 */ beq lbl_801D2C50 +/* 801D2C3C 001CFB9C 81 83 00 00 */ lwz r12, 0(r3) +/* 801D2C40 001CFBA0 38 80 00 01 */ li r4, 1 +/* 801D2C44 001CFBA4 81 8C 00 08 */ lwz r12, 8(r12) +/* 801D2C48 001CFBA8 7D 89 03 A6 */ mtctr r12 +/* 801D2C4C 001CFBAC 4E 80 04 21 */ bctrl +lbl_801D2C50: +/* 801D2C50 001CFBB0 7E 80 07 75 */ extsb. r0, r20 +/* 801D2C54 001CFBB4 41 82 00 10 */ beq lbl_801D2C64 +/* 801D2C58 001CFBB8 38 61 00 30 */ addi r3, r1, 0x30 +/* 801D2C5C 001CFBBC 38 80 00 00 */ li r4, 0 +/* 801D2C60 001CFBC0 48 16 E1 E1 */ bl __dt__6CTokenFv +lbl_801D2C64: +/* 801D2C64 001CFBC4 7C 6F 8A 14 */ add r3, r15, r17 +/* 801D2C68 001CFBC8 38 80 00 00 */ li r4, 0 +/* 801D2C6C 001CFBCC 80 63 02 00 */ lwz r3, 0x200(r3) +/* 801D2C70 001CFBD0 81 83 00 00 */ lwz r12, 0(r3) +/* 801D2C74 001CFBD4 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801D2C78 001CFBD8 7D 89 03 A6 */ mtctr r12 +/* 801D2C7C 001CFBDC 4E 80 04 21 */ bctrl +/* 801D2C80 001CFBE0 3A 10 00 0C */ addi r16, r16, 0xc +/* 801D2C84 001CFBE4 3A 31 00 08 */ addi r17, r17, 8 +/* 801D2C88 001CFBE8 3A 73 00 01 */ addi r19, r19, 1 +lbl_801D2C8C: +/* 801D2C8C 001CFBEC 80 0F 01 C4 */ lwz r0, 0x1c4(r15) +/* 801D2C90 001CFBF0 7C 13 00 00 */ cmpw r19, r0 +/* 801D2C94 001CFBF4 41 80 FF 04 */ blt lbl_801D2B98 +/* 801D2C98 001CFBF8 38 6F 02 1C */ addi r3, r15, 0x21c +/* 801D2C9C 001CFBFC 80 0F 02 1C */ lwz r0, 0x21c(r15) +/* 801D2CA0 001CFC00 54 00 10 3A */ slwi r0, r0, 2 +/* 801D2CA4 001CFC04 7C 63 02 14 */ add r3, r3, r0 +/* 801D2CA8 001CFC08 34 63 00 04 */ addic. r3, r3, 4 +/* 801D2CAC 001CFC0C 41 82 00 0C */ beq lbl_801D2CB8 +/* 801D2CB0 001CFC10 80 01 03 28 */ lwz r0, 0x328(r1) +/* 801D2CB4 001CFC14 90 03 00 00 */ stw r0, 0(r3) +lbl_801D2CB8: +/* 801D2CB8 001CFC18 80 6F 02 1C */ lwz r3, 0x21c(r15) +/* 801D2CBC 001CFC1C 38 8F 02 1C */ addi r4, r15, 0x21c +/* 801D2CC0 001CFC20 38 03 00 01 */ addi r0, r3, 1 +/* 801D2CC4 001CFC24 90 0F 02 1C */ stw r0, 0x21c(r15) +/* 801D2CC8 001CFC28 80 0F 02 1C */ lwz r0, 0x21c(r15) +/* 801D2CCC 001CFC2C 54 00 10 3A */ slwi r0, r0, 2 +/* 801D2CD0 001CFC30 7C 64 02 14 */ add r3, r4, r0 +/* 801D2CD4 001CFC34 34 63 00 04 */ addic. r3, r3, 4 +/* 801D2CD8 001CFC38 41 82 00 0C */ beq lbl_801D2CE4 +/* 801D2CDC 001CFC3C 80 01 03 30 */ lwz r0, 0x330(r1) +/* 801D2CE0 001CFC40 90 03 00 00 */ stw r0, 0(r3) +lbl_801D2CE4: +/* 801D2CE4 001CFC44 80 6F 02 1C */ lwz r3, 0x21c(r15) +/* 801D2CE8 001CFC48 38 8F 02 1C */ addi r4, r15, 0x21c +/* 801D2CEC 001CFC4C 38 03 00 01 */ addi r0, r3, 1 +/* 801D2CF0 001CFC50 90 0F 02 1C */ stw r0, 0x21c(r15) +/* 801D2CF4 001CFC54 80 0F 02 1C */ lwz r0, 0x21c(r15) +/* 801D2CF8 001CFC58 54 00 10 3A */ slwi r0, r0, 2 +/* 801D2CFC 001CFC5C 7C 64 02 14 */ add r3, r4, r0 +/* 801D2D00 001CFC60 34 63 00 04 */ addic. r3, r3, 4 +/* 801D2D04 001CFC64 41 82 00 0C */ beq lbl_801D2D10 +/* 801D2D08 001CFC68 80 01 03 38 */ lwz r0, 0x338(r1) +/* 801D2D0C 001CFC6C 90 03 00 00 */ stw r0, 0(r3) +lbl_801D2D10: +/* 801D2D10 001CFC70 80 6F 02 1C */ lwz r3, 0x21c(r15) +/* 801D2D14 001CFC74 38 8F 02 1C */ addi r4, r15, 0x21c +/* 801D2D18 001CFC78 38 03 00 01 */ addi r0, r3, 1 +/* 801D2D1C 001CFC7C 90 0F 02 1C */ stw r0, 0x21c(r15) +/* 801D2D20 001CFC80 80 0F 02 1C */ lwz r0, 0x21c(r15) +/* 801D2D24 001CFC84 54 00 10 3A */ slwi r0, r0, 2 +/* 801D2D28 001CFC88 7C 64 02 14 */ add r3, r4, r0 +/* 801D2D2C 001CFC8C 34 63 00 04 */ addic. r3, r3, 4 +/* 801D2D30 001CFC90 41 82 00 0C */ beq lbl_801D2D3C +/* 801D2D34 001CFC94 80 01 03 40 */ lwz r0, 0x340(r1) +/* 801D2D38 001CFC98 90 03 00 00 */ stw r0, 0(r3) +lbl_801D2D3C: +/* 801D2D3C 001CFC9C 80 AF 02 1C */ lwz r5, 0x21c(r15) +/* 801D2D40 001CFCA0 7D E4 7B 78 */ mr r4, r15 +/* 801D2D44 001CFCA4 38 61 00 D4 */ addi r3, r1, 0xd4 +/* 801D2D48 001CFCA8 38 05 00 01 */ addi r0, r5, 1 +/* 801D2D4C 001CFCAC 90 0F 02 1C */ stw r0, 0x21c(r15) +/* 801D2D50 001CFCB0 4B FF F0 91 */ bl GetBoundingBox__10CFishCloudCFv +/* 801D2D54 001CFCB4 C0 21 00 E0 */ lfs f1, 0xe0(r1) +/* 801D2D58 001CFCB8 7D E3 7B 78 */ mr r3, r15 +/* 801D2D5C 001CFCBC C0 01 00 D4 */ lfs f0, 0xd4(r1) +/* 801D2D60 001CFCC0 C0 61 00 E4 */ lfs f3, 0xe4(r1) +/* 801D2D64 001CFCC4 C0 41 00 D8 */ lfs f2, 0xd8(r1) +/* 801D2D68 001CFCC8 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801D2D6C 001CFCCC C0 A2 AC 18 */ lfs f5, lbl_805AC938@sda21(r2) +/* 801D2D70 001CFCD0 EC 83 10 28 */ fsubs f4, f3, f2 +/* 801D2D74 001CFCD4 C0 41 00 E8 */ lfs f2, 0xe8(r1) +/* 801D2D78 001CFCD8 C0 21 00 DC */ lfs f1, 0xdc(r1) +/* 801D2D7C 001CFCDC EC 05 00 32 */ fmuls f0, f5, f0 +/* 801D2D80 001CFCE0 C0 62 AB B4 */ lfs f3, lbl_805AC8D4@sda21(r2) +/* 801D2D84 001CFCE4 EC 22 08 28 */ fsubs f1, f2, f1 +/* 801D2D88 001CFCE8 EC 45 01 32 */ fmuls f2, f5, f4 +/* 801D2D8C 001CFCEC D0 0F 02 38 */ stfs f0, 0x238(r15) +/* 801D2D90 001CFCF0 EC 05 00 72 */ fmuls f0, f5, f1 +/* 801D2D94 001CFCF4 D0 4F 02 3C */ stfs f2, 0x23c(r15) +/* 801D2D98 001CFCF8 D0 0F 02 40 */ stfs f0, 0x240(r15) +/* 801D2D9C 001CFCFC C0 0F 02 38 */ lfs f0, 0x238(r15) +/* 801D2DA0 001CFD00 C0 2F 02 3C */ lfs f1, 0x23c(r15) +/* 801D2DA4 001CFD04 C0 4F 02 40 */ lfs f2, 0x240(r15) +/* 801D2DA8 001CFD08 EC 03 00 24 */ fdivs f0, f3, f0 +/* 801D2DAC 001CFD0C EC 23 08 24 */ fdivs f1, f3, f1 +/* 801D2DB0 001CFD10 D0 0F 02 44 */ stfs f0, 0x244(r15) +/* 801D2DB4 001CFD14 EC 03 10 24 */ fdivs f0, f3, f2 +/* 801D2DB8 001CFD18 D0 2F 02 48 */ stfs f1, 0x248(r15) +/* 801D2DBC 001CFD1C D0 0F 02 4C */ stfs f0, 0x24c(r15) +/* 801D2DC0 001CFD20 E3 E1 02 E8 */ psq_l f31, 744(r1), 0, qr0 +/* 801D2DC4 001CFD24 CB E1 02 E0 */ lfd f31, 0x2e0(r1) +/* 801D2DC8 001CFD28 E3 C1 02 D8 */ psq_l f30, 728(r1), 0, qr0 +/* 801D2DCC 001CFD2C CB C1 02 D0 */ lfd f30, 0x2d0(r1) +/* 801D2DD0 001CFD30 E3 A1 02 C8 */ psq_l f29, 712(r1), 0, qr0 +/* 801D2DD4 001CFD34 CB A1 02 C0 */ lfd f29, 0x2c0(r1) +/* 801D2DD8 001CFD38 E3 81 02 B8 */ psq_l f28, 696(r1), 0, qr0 +/* 801D2DDC 001CFD3C CB 81 02 B0 */ lfd f28, 0x2b0(r1) +/* 801D2DE0 001CFD40 E3 61 02 A8 */ psq_l f27, 680(r1), 0, qr0 +/* 801D2DE4 001CFD44 CB 61 02 A0 */ lfd f27, 0x2a0(r1) +/* 801D2DE8 001CFD48 E3 41 02 98 */ psq_l f26, 664(r1), 0, qr0 +/* 801D2DEC 001CFD4C CB 41 02 90 */ lfd f26, 0x290(r1) +/* 801D2DF0 001CFD50 E3 21 02 88 */ psq_l f25, 648(r1), 0, qr0 +/* 801D2DF4 001CFD54 CB 21 02 80 */ lfd f25, 0x280(r1) +/* 801D2DF8 001CFD58 E3 01 02 78 */ psq_l f24, 632(r1), 0, qr0 +/* 801D2DFC 001CFD5C CB 01 02 70 */ lfd f24, 0x270(r1) +/* 801D2E00 001CFD60 E2 E1 02 68 */ psq_l f23, 616(r1), 0, qr0 +/* 801D2E04 001CFD64 CA E1 02 60 */ lfd f23, 0x260(r1) +/* 801D2E08 001CFD68 E2 C1 02 58 */ psq_l f22, 600(r1), 0, qr0 +/* 801D2E0C 001CFD6C CA C1 02 50 */ lfd f22, 0x250(r1) +/* 801D2E10 001CFD70 E2 A1 02 48 */ psq_l f21, 584(r1), 0, qr0 +/* 801D2E14 001CFD74 CA A1 02 40 */ lfd f21, 0x240(r1) +/* 801D2E18 001CFD78 E2 81 02 38 */ psq_l f20, 568(r1), 0, qr0 +/* 801D2E1C 001CFD7C CA 81 02 30 */ lfd f20, 0x230(r1) +/* 801D2E20 001CFD80 E2 61 02 28 */ psq_l f19, 552(r1), 0, qr0 +/* 801D2E24 001CFD84 CA 61 02 20 */ lfd f19, 0x220(r1) +/* 801D2E28 001CFD88 E2 41 02 18 */ psq_l f18, 536(r1), 0, qr0 +/* 801D2E2C 001CFD8C CA 41 02 10 */ lfd f18, 0x210(r1) +/* 801D2E30 001CFD90 B9 C1 01 C8 */ lmw r14, 0x1c8(r1) +/* 801D2E34 001CFD94 80 01 02 F4 */ lwz r0, 0x2f4(r1) +/* 801D2E38 001CFD98 7C 08 03 A6 */ mtlr r0 +/* 801D2E3C 001CFD9C 38 21 02 F0 */ addi r1, r1, 0x2f0 +/* 801D2E40 001CFDA0 4E 80 00 20 */ blr + +.global __ct__Q210CFishCloud5CBoidFRC9CVector3fRC9CVector3ff +__ct__Q210CFishCloud5CBoidFRC9CVector3fRC9CVector3ff: +/* 801D2E44 001CFDA4 C0 04 00 00 */ lfs f0, 0(r4) +/* 801D2E48 001CFDA8 38 C0 00 00 */ li r6, 0 +/* 801D2E4C 001CFDAC 38 00 00 01 */ li r0, 1 +/* 801D2E50 001CFDB0 D0 03 00 00 */ stfs f0, 0(r3) +/* 801D2E54 001CFDB4 C0 04 00 04 */ lfs f0, 4(r4) +/* 801D2E58 001CFDB8 D0 03 00 04 */ stfs f0, 4(r3) +/* 801D2E5C 001CFDBC C0 04 00 08 */ lfs f0, 8(r4) +/* 801D2E60 001CFDC0 D0 03 00 08 */ stfs f0, 8(r3) +/* 801D2E64 001CFDC4 C0 05 00 00 */ lfs f0, 0(r5) +/* 801D2E68 001CFDC8 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 801D2E6C 001CFDCC C0 05 00 04 */ lfs f0, 4(r5) +/* 801D2E70 001CFDD0 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 801D2E74 001CFDD4 C0 05 00 08 */ lfs f0, 8(r5) +/* 801D2E78 001CFDD8 D0 03 00 14 */ stfs f0, 0x14(r3) +/* 801D2E7C 001CFDDC D0 23 00 18 */ stfs f1, 0x18(r3) +/* 801D2E80 001CFDE0 90 C3 00 1C */ stw r6, 0x1c(r3) +/* 801D2E84 001CFDE4 98 03 00 20 */ stb r0, 0x20(r3) +/* 801D2E88 001CFDE8 4E 80 00 20 */ blr + +.global __lt__Q210CFishCloud15CModifierSourceCFRCQ210CFishCloud15CModifierSource +__lt__Q210CFishCloud15CModifierSourceCFRCQ210CFishCloud15CModifierSource: +/* 801D2E8C 001CFDEC A0 A3 00 00 */ lhz r5, 0(r3) +/* 801D2E90 001CFDF0 A0 04 00 00 */ lhz r0, 0(r4) +/* 801D2E94 001CFDF4 7C 05 00 40 */ cmplw r5, r0 +/* 801D2E98 001CFDF8 40 82 00 18 */ bne lbl_801D2EB0 +/* 801D2E9C 001CFDFC 88 63 00 0C */ lbz r3, 0xc(r3) +/* 801D2EA0 001CFE00 88 04 00 0C */ lbz r0, 0xc(r4) +/* 801D2EA4 001CFE04 7C 00 18 50 */ subf r0, r0, r3 +/* 801D2EA8 001CFE08 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801D2EAC 001CFE0C 4E 80 00 20 */ blr +lbl_801D2EB0: +/* 801D2EB0 001CFE10 7C 00 28 50 */ subf r0, r0, r5 +/* 801D2EB4 001CFE14 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801D2EB8 001CFE18 4E 80 00 20 */ blr + +.global __ct__Q210CFishCloud15CModifierSourceFRC9TUniqueIdbff +__ct__Q210CFishCloud15CModifierSourceFRC9TUniqueIdbff: +/* 801D2EBC 001CFE1C A0 04 00 00 */ lhz r0, 0(r4) +/* 801D2EC0 001CFE20 B0 03 00 00 */ sth r0, 0(r3) +/* 801D2EC4 001CFE24 D0 23 00 04 */ stfs f1, 4(r3) +/* 801D2EC8 001CFE28 D0 43 00 08 */ stfs f2, 8(r3) +/* 801D2ECC 001CFE2C 98 A3 00 0C */ stb r5, 0xc(r3) +/* 801D2ED0 001CFE30 98 C3 00 0D */ stb r6, 0xd(r3) +/* 801D2ED4 001CFE34 4E 80 00 20 */ blr + +.global RemoveSelf__18CFishCloudModifierFR13CStateManager +RemoveSelf__18CFishCloudModifierFR13CStateManager: +/* 801D2ED8 001CFE38 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801D2EDC 001CFE3C 7C 08 02 A6 */ mflr r0 +/* 801D2EE0 001CFE40 90 01 00 44 */ stw r0, 0x44(r1) +/* 801D2EE4 001CFE44 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801D2EE8 001CFE48 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801D2EEC 001CFE4C 7C 9E 23 78 */ mr r30, r4 +/* 801D2EF0 001CFE50 93 A1 00 34 */ stw r29, 0x34(r1) +/* 801D2EF4 001CFE54 7C 7D 1B 78 */ mr r29, r3 +/* 801D2EF8 001CFE58 83 E3 00 2C */ lwz r31, 0x2c(r3) +/* 801D2EFC 001CFE5C 48 00 00 AC */ b lbl_801D2FA8 +lbl_801D2F00: +/* 801D2F00 001CFE60 80 1F 00 00 */ lwz r0, 0(r31) +/* 801D2F04 001CFE64 2C 00 00 19 */ cmpwi r0, 0x19 +/* 801D2F08 001CFE68 40 82 00 9C */ bne lbl_801D2FA4 +/* 801D2F0C 001CFE6C 80 1F 00 04 */ lwz r0, 4(r31) +/* 801D2F10 001CFE70 2C 00 00 06 */ cmpwi r0, 6 +/* 801D2F14 001CFE74 40 82 00 90 */ bne lbl_801D2FA4 +/* 801D2F18 001CFE78 80 1F 00 08 */ lwz r0, 8(r31) +/* 801D2F1C 001CFE7C 7F C4 F3 78 */ mr r4, r30 +/* 801D2F20 001CFE80 38 61 00 1C */ addi r3, r1, 0x1c +/* 801D2F24 001CFE84 38 A1 00 24 */ addi r5, r1, 0x24 +/* 801D2F28 001CFE88 90 01 00 24 */ stw r0, 0x24(r1) +/* 801D2F2C 001CFE8C 4B E7 4F F1 */ bl GetIdForScript__13CStateManagerCF9TEditorId +/* 801D2F30 001CFE90 A0 61 00 1C */ lhz r3, 0x1c(r1) +/* 801D2F34 001CFE94 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801D2F38 001CFE98 B0 61 00 20 */ sth r3, 0x20(r1) +/* 801D2F3C 001CFE9C 7C 03 00 40 */ cmplw r3, r0 +/* 801D2F40 001CFEA0 41 82 00 64 */ beq lbl_801D2FA4 +/* 801D2F44 001CFEA4 B0 61 00 18 */ sth r3, 0x18(r1) +/* 801D2F48 001CFEA8 7F C3 F3 78 */ mr r3, r30 +/* 801D2F4C 001CFEAC 38 81 00 18 */ addi r4, r1, 0x18 +/* 801D2F50 001CFEB0 4B E7 96 25 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801D2F54 001CFEB4 7C 64 1B 78 */ mr r4, r3 +/* 801D2F58 001CFEB8 38 61 00 28 */ addi r3, r1, 0x28 +/* 801D2F5C 001CFEBC 4B ED B2 05 */ bl "__ct__24TCastToPtr<10CFishCloud>FP7CEntity" +/* 801D2F60 001CFEC0 80 63 00 04 */ lwz r3, 4(r3) +/* 801D2F64 001CFEC4 28 03 00 00 */ cmplwi r3, 0 +/* 801D2F68 001CFEC8 41 82 00 3C */ beq lbl_801D2FA4 +/* 801D2F6C 001CFECC 88 1D 00 F0 */ lbz r0, 0xf0(r29) +/* 801D2F70 001CFED0 28 00 00 00 */ cmplwi r0, 0 +/* 801D2F74 001CFED4 41 82 00 1C */ beq lbl_801D2F90 +/* 801D2F78 001CFED8 A0 1D 00 08 */ lhz r0, 8(r29) +/* 801D2F7C 001CFEDC 38 81 00 14 */ addi r4, r1, 0x14 +/* 801D2F80 001CFEE0 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801D2F84 001CFEE4 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801D2F88 001CFEE8 4B FF DA 15 */ bl sub_801d099c +/* 801D2F8C 001CFEEC 48 00 00 18 */ b lbl_801D2FA4 +lbl_801D2F90: +/* 801D2F90 001CFEF0 A0 1D 00 08 */ lhz r0, 8(r29) +/* 801D2F94 001CFEF4 38 81 00 0C */ addi r4, r1, 0xc +/* 801D2F98 001CFEF8 B0 01 00 08 */ sth r0, 8(r1) +/* 801D2F9C 001CFEFC B0 01 00 0C */ sth r0, 0xc(r1) +/* 801D2FA0 001CFF00 4B FF DB F1 */ bl sub_801d0b90 +lbl_801D2FA4: +/* 801D2FA4 001CFF04 3B FF 00 0C */ addi r31, r31, 0xc +lbl_801D2FA8: +/* 801D2FA8 001CFF08 80 1D 00 24 */ lwz r0, 0x24(r29) +/* 801D2FAC 001CFF0C 80 7D 00 2C */ lwz r3, 0x2c(r29) +/* 801D2FB0 001CFF10 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801D2FB4 001CFF14 7C 03 02 14 */ add r0, r3, r0 +/* 801D2FB8 001CFF18 7C 1F 00 40 */ cmplw r31, r0 +/* 801D2FBC 001CFF1C 40 82 FF 44 */ bne lbl_801D2F00 +/* 801D2FC0 001CFF20 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801D2FC4 001CFF24 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801D2FC8 001CFF28 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801D2FCC 001CFF2C 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 801D2FD0 001CFF30 7C 08 03 A6 */ mtlr r0 +/* 801D2FD4 001CFF34 38 21 00 40 */ addi r1, r1, 0x40 +/* 801D2FD8 001CFF38 4E 80 00 20 */ blr + +.global AddSelf__18CFishCloudModifierFR13CStateManager +AddSelf__18CFishCloudModifierFR13CStateManager: +/* 801D2FDC 001CFF3C 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801D2FE0 001CFF40 7C 08 02 A6 */ mflr r0 +/* 801D2FE4 001CFF44 90 01 00 44 */ stw r0, 0x44(r1) +/* 801D2FE8 001CFF48 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801D2FEC 001CFF4C 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801D2FF0 001CFF50 7C 9E 23 78 */ mr r30, r4 +/* 801D2FF4 001CFF54 93 A1 00 34 */ stw r29, 0x34(r1) +/* 801D2FF8 001CFF58 7C 7D 1B 78 */ mr r29, r3 +/* 801D2FFC 001CFF5C 83 E3 00 2C */ lwz r31, 0x2c(r3) +/* 801D3000 001CFF60 48 00 00 C4 */ b lbl_801D30C4 +lbl_801D3004: +/* 801D3004 001CFF64 80 1F 00 00 */ lwz r0, 0(r31) +/* 801D3008 001CFF68 2C 00 00 19 */ cmpwi r0, 0x19 +/* 801D300C 001CFF6C 40 82 00 B4 */ bne lbl_801D30C0 +/* 801D3010 001CFF70 80 1F 00 04 */ lwz r0, 4(r31) +/* 801D3014 001CFF74 2C 00 00 06 */ cmpwi r0, 6 +/* 801D3018 001CFF78 40 82 00 A8 */ bne lbl_801D30C0 +/* 801D301C 001CFF7C 80 1F 00 08 */ lwz r0, 8(r31) +/* 801D3020 001CFF80 7F C4 F3 78 */ mr r4, r30 +/* 801D3024 001CFF84 38 61 00 1C */ addi r3, r1, 0x1c +/* 801D3028 001CFF88 38 A1 00 24 */ addi r5, r1, 0x24 +/* 801D302C 001CFF8C 90 01 00 24 */ stw r0, 0x24(r1) +/* 801D3030 001CFF90 4B E7 4E ED */ bl GetIdForScript__13CStateManagerCF9TEditorId +/* 801D3034 001CFF94 A0 61 00 1C */ lhz r3, 0x1c(r1) +/* 801D3038 001CFF98 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801D303C 001CFF9C B0 61 00 20 */ sth r3, 0x20(r1) +/* 801D3040 001CFFA0 7C 03 00 40 */ cmplw r3, r0 +/* 801D3044 001CFFA4 41 82 00 7C */ beq lbl_801D30C0 +/* 801D3048 001CFFA8 B0 61 00 18 */ sth r3, 0x18(r1) +/* 801D304C 001CFFAC 7F C3 F3 78 */ mr r3, r30 +/* 801D3050 001CFFB0 38 81 00 18 */ addi r4, r1, 0x18 +/* 801D3054 001CFFB4 4B E7 95 21 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801D3058 001CFFB8 7C 64 1B 78 */ mr r4, r3 +/* 801D305C 001CFFBC 38 61 00 28 */ addi r3, r1, 0x28 +/* 801D3060 001CFFC0 4B ED B1 01 */ bl "__ct__24TCastToPtr<10CFishCloud>FP7CEntity" +/* 801D3064 001CFFC4 80 63 00 04 */ lwz r3, 4(r3) +/* 801D3068 001CFFC8 28 03 00 00 */ cmplwi r3, 0 +/* 801D306C 001CFFCC 41 82 00 54 */ beq lbl_801D30C0 +/* 801D3070 001CFFD0 88 1D 00 F0 */ lbz r0, 0xf0(r29) +/* 801D3074 001CFFD4 28 00 00 00 */ cmplwi r0, 0 +/* 801D3078 001CFFD8 41 82 00 28 */ beq lbl_801D30A0 +/* 801D307C 001CFFDC A0 1D 00 08 */ lhz r0, 8(r29) +/* 801D3080 001CFFE0 38 81 00 14 */ addi r4, r1, 0x14 +/* 801D3084 001CFFE4 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801D3088 001CFFE8 88 BD 00 F1 */ lbz r5, 0xf1(r29) +/* 801D308C 001CFFEC B0 01 00 10 */ sth r0, 0x10(r1) +/* 801D3090 001CFFF0 C0 3D 00 E8 */ lfs f1, 0xe8(r29) +/* 801D3094 001CFFF4 C0 5D 00 EC */ lfs f2, 0xec(r29) +/* 801D3098 001CFFF8 4B FF DB ED */ bl sub_801d0c84 +/* 801D309C 001CFFFC 48 00 00 24 */ b lbl_801D30C0 +lbl_801D30A0: +/* 801D30A0 001D0000 A0 1D 00 08 */ lhz r0, 8(r29) +/* 801D30A4 001D0004 38 81 00 0C */ addi r4, r1, 0xc +/* 801D30A8 001D0008 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801D30AC 001D000C 88 BD 00 F1 */ lbz r5, 0xf1(r29) +/* 801D30B0 001D0010 B0 01 00 08 */ sth r0, 8(r1) +/* 801D30B4 001D0014 C0 3D 00 E8 */ lfs f1, 0xe8(r29) +/* 801D30B8 001D0018 C0 5D 00 EC */ lfs f2, 0xec(r29) +/* 801D30BC 001D001C 4B FF E0 89 */ bl sub_801d1144 +lbl_801D30C0: +/* 801D30C0 001D0020 3B FF 00 0C */ addi r31, r31, 0xc +lbl_801D30C4: +/* 801D30C4 001D0024 80 1D 00 24 */ lwz r0, 0x24(r29) +/* 801D30C8 001D0028 80 7D 00 2C */ lwz r3, 0x2c(r29) +/* 801D30CC 001D002C 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801D30D0 001D0030 7C 03 02 14 */ add r0, r3, r0 +/* 801D30D4 001D0034 7C 1F 00 40 */ cmplw r31, r0 +/* 801D30D8 001D0038 40 82 FF 2C */ bne lbl_801D3004 +/* 801D30DC 001D003C 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801D30E0 001D0040 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801D30E4 001D0044 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801D30E8 001D0048 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 801D30EC 001D004C 7C 08 03 A6 */ mtlr r0 +/* 801D30F0 001D0050 38 21 00 40 */ addi r1, r1, 0x40 +/* 801D30F4 001D0054 4E 80 00 20 */ blr + +.global AcceptScriptMsg__18CFishCloudModifierF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__18CFishCloudModifierF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 801D30F8 001D0058 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801D30FC 001D005C 7C 08 02 A6 */ mflr r0 +/* 801D3100 001D0060 90 01 00 24 */ stw r0, 0x24(r1) +/* 801D3104 001D0064 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801D3108 001D0068 7C DF 33 78 */ mr r31, r6 +/* 801D310C 001D006C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801D3110 001D0070 7C 9E 23 78 */ mr r30, r4 +/* 801D3114 001D0074 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801D3118 001D0078 7C 7D 1B 78 */ mr r29, r3 +/* 801D311C 001D007C A0 05 00 00 */ lhz r0, 0(r5) +/* 801D3120 001D0080 38 A1 00 08 */ addi r5, r1, 8 +/* 801D3124 001D0084 B0 01 00 08 */ sth r0, 8(r1) +/* 801D3128 001D0088 4B E8 04 ED */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 801D312C 001D008C 2C 1E 00 04 */ cmpwi r30, 4 +/* 801D3130 001D0090 41 82 00 48 */ beq lbl_801D3178 +/* 801D3134 001D0094 40 80 00 10 */ bge lbl_801D3144 +/* 801D3138 001D0098 2C 1E 00 01 */ cmpwi r30, 1 +/* 801D313C 001D009C 41 82 00 20 */ beq lbl_801D315C +/* 801D3140 001D00A0 48 00 00 44 */ b lbl_801D3184 +lbl_801D3144: +/* 801D3144 001D00A4 2C 1E 00 23 */ cmpwi r30, 0x23 +/* 801D3148 001D00A8 41 82 00 14 */ beq lbl_801D315C +/* 801D314C 001D00AC 40 80 00 38 */ bge lbl_801D3184 +/* 801D3150 001D00B0 2C 1E 00 22 */ cmpwi r30, 0x22 +/* 801D3154 001D00B4 40 80 00 24 */ bge lbl_801D3178 +/* 801D3158 001D00B8 48 00 00 2C */ b lbl_801D3184 +lbl_801D315C: +/* 801D315C 001D00BC 88 1D 00 30 */ lbz r0, 0x30(r29) +/* 801D3160 001D00C0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801D3164 001D00C4 41 82 00 20 */ beq lbl_801D3184 +/* 801D3168 001D00C8 7F A3 EB 78 */ mr r3, r29 +/* 801D316C 001D00CC 7F E4 FB 78 */ mr r4, r31 +/* 801D3170 001D00D0 4B FF FE 6D */ bl AddSelf__18CFishCloudModifierFR13CStateManager +/* 801D3174 001D00D4 48 00 00 10 */ b lbl_801D3184 +lbl_801D3178: +/* 801D3178 001D00D8 7F A3 EB 78 */ mr r3, r29 +/* 801D317C 001D00DC 7F E4 FB 78 */ mr r4, r31 +/* 801D3180 001D00E0 4B FF FD 59 */ bl RemoveSelf__18CFishCloudModifierFR13CStateManager +lbl_801D3184: +/* 801D3184 001D00E4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801D3188 001D00E8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801D318C 001D00EC 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801D3190 001D00F0 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801D3194 001D00F4 7C 08 03 A6 */ mtlr r0 +/* 801D3198 001D00F8 38 21 00 20 */ addi r1, r1, 0x20 +/* 801D319C 001D00FC 4E 80 00 20 */ blr + +.global Accept__18CFishCloudModifierFR8IVisitor +Accept__18CFishCloudModifierFR8IVisitor: +/* 801D31A0 001D0100 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D31A4 001D0104 7C 08 02 A6 */ mflr r0 +/* 801D31A8 001D0108 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D31AC 001D010C 7C 60 1B 78 */ mr r0, r3 +/* 801D31B0 001D0110 7C 83 23 78 */ mr r3, r4 +/* 801D31B4 001D0114 81 84 00 00 */ lwz r12, 0(r4) +/* 801D31B8 001D0118 7C 04 03 78 */ mr r4, r0 +/* 801D31BC 001D011C 81 8C 00 08 */ lwz r12, 8(r12) +/* 801D31C0 001D0120 7D 89 03 A6 */ mtctr r12 +/* 801D31C4 001D0124 4E 80 04 21 */ bctrl +/* 801D31C8 001D0128 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D31CC 001D012C 7C 08 03 A6 */ mtlr r0 +/* 801D31D0 001D0130 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D31D4 001D0134 4E 80 00 20 */ blr + +.global "__ct__18CFishCloudModifierF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3fbff" +"__ct__18CFishCloudModifierF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3fbff": +/* 801D31D8 001D0138 94 21 FE C0 */ stwu r1, -0x140(r1) +/* 801D31DC 001D013C 7C 08 02 A6 */ mflr r0 +/* 801D31E0 001D0140 90 01 01 44 */ stw r0, 0x144(r1) +/* 801D31E4 001D0144 DB E1 01 38 */ stfd f31, 0x138(r1) +/* 801D31E8 001D0148 FF E0 10 90 */ fmr f31, f2 +/* 801D31EC 001D014C DB C1 01 30 */ stfd f30, 0x130(r1) +/* 801D31F0 001D0150 FF C0 08 90 */ fmr f30, f1 +/* 801D31F4 001D0154 BF 01 01 10 */ stmw r24, 0x110(r1) +/* 801D31F8 001D0158 7C 7F 1B 78 */ mr r31, r3 +/* 801D31FC 001D015C 7C 98 23 78 */ mr r24, r4 +/* 801D3200 001D0160 7C B9 2B 78 */ mr r25, r5 +/* 801D3204 001D0164 7C DA 33 78 */ mr r26, r6 +/* 801D3208 001D0168 7C FB 3B 78 */ mr r27, r7 +/* 801D320C 001D016C 7D 1C 43 78 */ mr r28, r8 +/* 801D3210 001D0170 7D 3D 4B 78 */ mr r29, r9 +/* 801D3214 001D0174 7D 5E 53 78 */ mr r30, r10 +/* 801D3218 001D0178 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 801D321C 001D017C 4B E6 75 89 */ bl CModelDataNull__10CModelDataFv +/* 801D3220 001D0180 38 61 00 50 */ addi r3, r1, 0x50 +/* 801D3224 001D0184 4B E4 7C 15 */ bl None__16CActorParametersFv +/* 801D3228 001D0188 A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 801D322C 001D018C 38 00 00 00 */ li r0, 0 +/* 801D3230 001D0190 80 AD 91 88 */ lwz r5, lbl_805A7D48@sda21(r13) +/* 801D3234 001D0194 38 60 00 00 */ li r3, 0 +/* 801D3238 001D0198 B0 81 00 10 */ sth r4, 0x10(r1) +/* 801D323C 001D019C 38 80 00 01 */ li r4, 1 +/* 801D3240 001D01A0 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801D3244 001D01A4 90 01 00 18 */ stw r0, 0x18(r1) +/* 801D3248 001D01A8 48 1B 6C AD */ bl __shl2i +/* 801D324C 001D01AC 80 01 00 18 */ lwz r0, 0x18(r1) +/* 801D3250 001D01B0 80 A1 00 1C */ lwz r5, 0x1c(r1) +/* 801D3254 001D01B4 7C 03 1B 78 */ or r3, r0, r3 +/* 801D3258 001D01B8 A0 18 00 00 */ lhz r0, 0(r24) +/* 801D325C 001D01BC 7C A5 23 78 */ or r5, r5, r4 +/* 801D3260 001D01C0 90 61 00 18 */ stw r3, 0x18(r1) +/* 801D3264 001D01C4 7F 84 E3 78 */ mr r4, r28 +/* 801D3268 001D01C8 38 61 00 20 */ addi r3, r1, 0x20 +/* 801D326C 001D01CC 90 A1 00 1C */ stw r5, 0x1c(r1) +/* 801D3270 001D01D0 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801D3274 001D01D4 48 13 FE CD */ bl Translate__12CTransform4fFRC9CVector3f +/* 801D3278 001D01D8 38 61 00 50 */ addi r3, r1, 0x50 +/* 801D327C 001D01DC 38 01 00 10 */ addi r0, r1, 0x10 +/* 801D3280 001D01E0 90 61 00 08 */ stw r3, 8(r1) +/* 801D3284 001D01E4 7F E3 FB 78 */ mr r3, r31 +/* 801D3288 001D01E8 7F 25 CB 78 */ mr r5, r25 +/* 801D328C 001D01EC 7F 46 D3 78 */ mr r6, r26 +/* 801D3290 001D01F0 90 01 00 0C */ stw r0, 0xc(r1) +/* 801D3294 001D01F4 7F 67 DB 78 */ mr r7, r27 +/* 801D3298 001D01F8 38 81 00 14 */ addi r4, r1, 0x14 +/* 801D329C 001D01FC 39 01 00 20 */ addi r8, r1, 0x20 +/* 801D32A0 001D0200 39 21 00 B8 */ addi r9, r1, 0xb8 +/* 801D32A4 001D0204 39 41 00 18 */ addi r10, r1, 0x18 +/* 801D32A8 001D0208 4B E8 25 79 */ bl "__ct__6CActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC16CActorParameters9TUniqueId" +/* 801D32AC 001D020C 38 61 00 50 */ addi r3, r1, 0x50 +/* 801D32B0 001D0210 38 80 FF FF */ li r4, -1 +/* 801D32B4 001D0214 4B F3 33 55 */ bl __dt__16CActorParametersFv +/* 801D32B8 001D0218 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 801D32BC 001D021C 38 80 FF FF */ li r4, -1 +/* 801D32C0 001D0220 4B F4 37 8D */ bl __dt__10CModelDataFv +/* 801D32C4 001D0224 3C 80 80 3E */ lis r4, lbl_803E57C4@ha +/* 801D32C8 001D0228 7F E3 FB 78 */ mr r3, r31 +/* 801D32CC 001D022C 38 04 57 C4 */ addi r0, r4, lbl_803E57C4@l +/* 801D32D0 001D0230 90 1F 00 00 */ stw r0, 0(r31) +/* 801D32D4 001D0234 D3 DF 00 E8 */ stfs f30, 0xe8(r31) +/* 801D32D8 001D0238 D3 FF 00 EC */ stfs f31, 0xec(r31) +/* 801D32DC 001D023C 9B BF 00 F0 */ stb r29, 0xf0(r31) +/* 801D32E0 001D0240 9B DF 00 F1 */ stb r30, 0xf1(r31) +/* 801D32E4 001D0244 CB E1 01 38 */ lfd f31, 0x138(r1) +/* 801D32E8 001D0248 CB C1 01 30 */ lfd f30, 0x130(r1) +/* 801D32EC 001D024C BB 01 01 10 */ lmw r24, 0x110(r1) +/* 801D32F0 001D0250 80 01 01 44 */ lwz r0, 0x144(r1) +/* 801D32F4 001D0254 7C 08 03 A6 */ mtlr r0 +/* 801D32F8 001D0258 38 21 01 40 */ addi r1, r1, 0x140 +/* 801D32FC 001D025C 4E 80 00 20 */ blr + +.global __dt__18CFishCloudModifierFv +__dt__18CFishCloudModifierFv: +/* 801D3300 001D0260 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D3304 001D0264 7C 08 02 A6 */ mflr r0 +/* 801D3308 001D0268 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D330C 001D026C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801D3310 001D0270 7C 9F 23 78 */ mr r31, r4 +/* 801D3314 001D0274 93 C1 00 08 */ stw r30, 8(r1) +/* 801D3318 001D0278 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801D331C 001D027C 41 82 00 28 */ beq lbl_801D3344 +/* 801D3320 001D0280 3C A0 80 3E */ lis r5, lbl_803E57C4@ha +/* 801D3324 001D0284 38 80 00 00 */ li r4, 0 +/* 801D3328 001D0288 38 05 57 C4 */ addi r0, r5, lbl_803E57C4@l +/* 801D332C 001D028C 90 1E 00 00 */ stw r0, 0(r30) +/* 801D3330 001D0290 4B E8 23 C1 */ bl __dt__6CActorFv +/* 801D3334 001D0294 7F E0 07 35 */ extsh. r0, r31 +/* 801D3338 001D0298 40 81 00 0C */ ble lbl_801D3344 +/* 801D333C 001D029C 7F C3 F3 78 */ mr r3, r30 +/* 801D3340 001D02A0 48 14 25 F1 */ bl Free__7CMemoryFPCv +lbl_801D3344: +/* 801D3344 001D02A4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D3348 001D02A8 7F C3 F3 78 */ mr r3, r30 +/* 801D334C 001D02AC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801D3350 001D02B0 83 C1 00 08 */ lwz r30, 8(r1) +/* 801D3354 001D02B4 7C 08 03 A6 */ mtlr r0 +/* 801D3358 001D02B8 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D335C 001D02BC 4E 80 00 20 */ blr + +.global sub_801d3360 +sub_801d3360: +/* 801D3360 001D02C0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D3364 001D02C4 7C 08 02 A6 */ mflr r0 +/* 801D3368 001D02C8 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D336C 001D02CC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801D3370 001D02D0 7C 7F 1B 78 */ mr r31, r3 +/* 801D3374 001D02D4 80 83 00 00 */ lwz r4, 0(r3) +/* 801D3378 001D02D8 80 64 00 04 */ lwz r3, 4(r4) +/* 801D337C 001D02DC 34 03 FF FF */ addic. r0, r3, -1 +/* 801D3380 001D02E0 90 04 00 04 */ stw r0, 4(r4) +/* 801D3384 001D02E4 41 81 00 24 */ bgt lbl_801D33A8 +/* 801D3388 001D02E8 80 7F 00 00 */ lwz r3, 0(r31) +/* 801D338C 001D02EC 38 80 00 01 */ li r4, 1 +/* 801D3390 001D02F0 80 63 00 00 */ lwz r3, 0(r3) +/* 801D3394 001D02F4 4B F4 36 B9 */ bl __dt__10CModelDataFv +/* 801D3398 001D02F8 80 7F 00 00 */ lwz r3, 0(r31) +/* 801D339C 001D02FC 28 03 00 00 */ cmplwi r3, 0 +/* 801D33A0 001D0300 41 82 00 08 */ beq lbl_801D33A8 +/* 801D33A4 001D0304 48 14 25 8D */ bl Free__7CMemoryFPCv +lbl_801D33A8: +/* 801D33A8 001D0308 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D33AC 001D030C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801D33B0 001D0310 7C 08 03 A6 */ mtlr r0 +/* 801D33B4 001D0314 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D33B8 001D0318 4E 80 00 20 */ blr + +.global "lower_bound,Q24rstl17rmemory_allocator>,Q210CFishCloud15CModifierSource>__4rstlFQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl152pointer_iterator,Q24rstl17rmemory_allocator>,Q210CFishCloud15CModifierSource>__4rstlFQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl152pointer_iterator,Q24rstl17rmemory_allocator>>__4rstlFQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl152pointer_iterator,Q24rstl17rmemory_allocator>" +/* 801D33F4 001D0354 80 1B 00 00 */ lwz r0, 0(r27) +/* 801D33F8 001D0358 7C 7E 1B 78 */ mr r30, r3 +/* 801D33FC 001D035C 90 01 00 10 */ stw r0, 0x10(r1) +/* 801D3400 001D0360 48 00 00 5C */ b lbl_801D345C +lbl_801D3404: +/* 801D3404 001D0364 57 C3 0F FE */ srwi r3, r30, 0x1f +/* 801D3408 001D0368 80 1B 00 00 */ lwz r0, 0(r27) +/* 801D340C 001D036C 7C 83 F2 14 */ add r4, r3, r30 +/* 801D3410 001D0370 38 61 00 10 */ addi r3, r1, 0x10 +/* 801D3414 001D0374 7C 9D 0E 70 */ srawi r29, r4, 1 +/* 801D3418 001D0378 90 01 00 10 */ stw r0, 0x10(r1) +/* 801D341C 001D037C 7F A4 EB 78 */ mr r4, r29 +/* 801D3420 001D0380 48 00 03 89 */ bl "advance,Q24rstl17rmemory_allocator>,i>__4rstlFRQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>i" +/* 801D3424 001D0384 80 61 00 10 */ lwz r3, 0x10(r1) +/* 801D3428 001D0388 7F 84 E3 78 */ mr r4, r28 +/* 801D342C 001D038C 4B FF FA 61 */ bl __lt__Q210CFishCloud15CModifierSourceCFRCQ210CFishCloud15CModifierSource +/* 801D3430 001D0390 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801D3434 001D0394 41 82 00 24 */ beq lbl_801D3458 +/* 801D3438 001D0398 80 01 00 10 */ lwz r0, 0x10(r1) +/* 801D343C 001D039C 7C 7D F0 50 */ subf r3, r29, r30 +/* 801D3440 001D03A0 3B C3 FF FF */ addi r30, r3, -1 +/* 801D3444 001D03A4 90 1B 00 00 */ stw r0, 0(r27) +/* 801D3448 001D03A8 80 7B 00 00 */ lwz r3, 0(r27) +/* 801D344C 001D03AC 38 03 00 10 */ addi r0, r3, 0x10 +/* 801D3450 001D03B0 90 1B 00 00 */ stw r0, 0(r27) +/* 801D3454 001D03B4 48 00 00 08 */ b lbl_801D345C +lbl_801D3458: +/* 801D3458 001D03B8 7F BE EB 78 */ mr r30, r29 +lbl_801D345C: +/* 801D345C 001D03BC 2C 1E 00 00 */ cmpwi r30, 0 +/* 801D3460 001D03C0 41 81 FF A4 */ bgt lbl_801D3404 +/* 801D3464 001D03C4 80 1B 00 00 */ lwz r0, 0(r27) +/* 801D3468 001D03C8 90 1F 00 00 */ stw r0, 0(r31) +/* 801D346C 001D03CC BB 61 00 1C */ lmw r27, 0x1c(r1) +/* 801D3470 001D03D0 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801D3474 001D03D4 7C 08 03 A6 */ mtlr r0 +/* 801D3478 001D03D8 38 21 00 30 */ addi r1, r1, 0x30 +/* 801D347C 001D03DC 4E 80 00 20 */ blr + +.global "reserve__Q24rstl66vectorFi" +"reserve__Q24rstl66vectorFi": +/* 801D3480 001D03E0 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801D3484 001D03E4 7C 08 02 A6 */ mflr r0 +/* 801D3488 001D03E8 90 01 00 34 */ stw r0, 0x34(r1) +/* 801D348C 001D03EC 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801D3490 001D03F0 7C 9F 23 78 */ mr r31, r4 +/* 801D3494 001D03F4 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801D3498 001D03F8 7C 7E 1B 78 */ mr r30, r3 +/* 801D349C 001D03FC 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801D34A0 001D0400 80 03 00 08 */ lwz r0, 8(r3) +/* 801D34A4 001D0404 7C 1F 00 00 */ cmpw r31, r0 +/* 801D34A8 001D0408 40 81 00 C8 */ ble lbl_801D3570 +/* 801D34AC 001D040C 57 E3 20 37 */ rlwinm. r3, r31, 4, 0, 0x1b +/* 801D34B0 001D0410 40 82 00 0C */ bne lbl_801D34BC +/* 801D34B4 001D0414 3B A0 00 00 */ li r29, 0 +/* 801D34B8 001D0418 48 00 00 18 */ b lbl_801D34D0 +lbl_801D34BC: +/* 801D34BC 001D041C 3C 80 80 3D */ lis r4, lbl_803D1B70@ha +/* 801D34C0 001D0420 38 A0 00 00 */ li r5, 0 +/* 801D34C4 001D0424 38 84 1B 70 */ addi r4, r4, lbl_803D1B70@l +/* 801D34C8 001D0428 48 14 23 51 */ bl __nwa__FUlPCcPCc +/* 801D34CC 001D042C 7C 7D 1B 78 */ mr r29, r3 +lbl_801D34D0: +/* 801D34D0 001D0430 80 1E 00 04 */ lwz r0, 4(r30) +/* 801D34D4 001D0434 7F A4 EB 78 */ mr r4, r29 +/* 801D34D8 001D0438 80 BE 00 0C */ lwz r5, 0xc(r30) +/* 801D34DC 001D043C 54 00 20 36 */ slwi r0, r0, 4 +/* 801D34E0 001D0440 7C 65 02 14 */ add r3, r5, r0 +/* 801D34E4 001D0444 90 A1 00 10 */ stw r5, 0x10(r1) +/* 801D34E8 001D0448 90 61 00 08 */ stw r3, 8(r1) +/* 801D34EC 001D044C 90 61 00 0C */ stw r3, 0xc(r1) +/* 801D34F0 001D0450 90 A1 00 14 */ stw r5, 0x14(r1) +/* 801D34F4 001D0454 48 00 00 3C */ b lbl_801D3530 +lbl_801D34F8: +/* 801D34F8 001D0458 28 04 00 00 */ cmplwi r4, 0 +/* 801D34FC 001D045C 41 82 00 2C */ beq lbl_801D3528 +/* 801D3500 001D0460 A0 05 00 00 */ lhz r0, 0(r5) +/* 801D3504 001D0464 B0 04 00 00 */ sth r0, 0(r4) +/* 801D3508 001D0468 C0 05 00 04 */ lfs f0, 4(r5) +/* 801D350C 001D046C D0 04 00 04 */ stfs f0, 4(r4) +/* 801D3510 001D0470 C0 05 00 08 */ lfs f0, 8(r5) +/* 801D3514 001D0474 D0 04 00 08 */ stfs f0, 8(r4) +/* 801D3518 001D0478 88 05 00 0C */ lbz r0, 0xc(r5) +/* 801D351C 001D047C 98 04 00 0C */ stb r0, 0xc(r4) +/* 801D3520 001D0480 88 05 00 0D */ lbz r0, 0xd(r5) +/* 801D3524 001D0484 98 04 00 0D */ stb r0, 0xd(r4) +lbl_801D3528: +/* 801D3528 001D0488 38 84 00 10 */ addi r4, r4, 0x10 +/* 801D352C 001D048C 38 A5 00 10 */ addi r5, r5, 0x10 +lbl_801D3530: +/* 801D3530 001D0490 7C 05 18 40 */ cmplw r5, r3 +/* 801D3534 001D0494 40 82 FF C4 */ bne lbl_801D34F8 +/* 801D3538 001D0498 80 1E 00 04 */ lwz r0, 4(r30) +/* 801D353C 001D049C 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 801D3540 001D04A0 54 00 20 36 */ slwi r0, r0, 4 +/* 801D3544 001D04A4 7C 64 1B 78 */ mr r4, r3 +/* 801D3548 001D04A8 7C 03 02 14 */ add r0, r3, r0 +/* 801D354C 001D04AC 48 00 00 08 */ b lbl_801D3554 +lbl_801D3550: +/* 801D3550 001D04B0 38 84 00 10 */ addi r4, r4, 0x10 +lbl_801D3554: +/* 801D3554 001D04B4 7C 04 00 40 */ cmplw r4, r0 +/* 801D3558 001D04B8 40 82 FF F8 */ bne lbl_801D3550 +/* 801D355C 001D04BC 28 03 00 00 */ cmplwi r3, 0 +/* 801D3560 001D04C0 41 82 00 08 */ beq lbl_801D3568 +/* 801D3564 001D04C4 48 14 23 CD */ bl Free__7CMemoryFPCv +lbl_801D3568: +/* 801D3568 001D04C8 93 BE 00 0C */ stw r29, 0xc(r30) +/* 801D356C 001D04CC 93 FE 00 08 */ stw r31, 8(r30) +lbl_801D3570: +/* 801D3570 001D04D0 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801D3574 001D04D4 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801D3578 001D04D8 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801D357C 001D04DC 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801D3580 001D04E0 7C 08 03 A6 */ mtlr r0 +/* 801D3584 001D04E4 38 21 00 30 */ addi r1, r1, 0x30 +/* 801D3588 001D04E8 4E 80 00 20 */ blr + +.global "reserve__Q24rstl56vectorFi" +"reserve__Q24rstl56vectorFi": +/* 801D358C 001D04EC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801D3590 001D04F0 7C 08 02 A6 */ mflr r0 +/* 801D3594 001D04F4 90 01 00 34 */ stw r0, 0x34(r1) +/* 801D3598 001D04F8 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801D359C 001D04FC 7C 9F 23 78 */ mr r31, r4 +/* 801D35A0 001D0500 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801D35A4 001D0504 7C 7E 1B 78 */ mr r30, r3 +/* 801D35A8 001D0508 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801D35AC 001D050C 80 03 00 08 */ lwz r0, 8(r3) +/* 801D35B0 001D0510 7C 1F 00 00 */ cmpw r31, r0 +/* 801D35B4 001D0514 40 81 00 A8 */ ble lbl_801D365C +/* 801D35B8 001D0518 57 E3 10 3B */ rlwinm. r3, r31, 2, 0, 0x1d +/* 801D35BC 001D051C 40 82 00 0C */ bne lbl_801D35C8 +/* 801D35C0 001D0520 3B A0 00 00 */ li r29, 0 +/* 801D35C4 001D0524 48 00 00 18 */ b lbl_801D35DC +lbl_801D35C8: +/* 801D35C8 001D0528 3C 80 80 3D */ lis r4, lbl_803D1B70@ha +/* 801D35CC 001D052C 38 A0 00 00 */ li r5, 0 +/* 801D35D0 001D0530 38 84 1B 70 */ addi r4, r4, lbl_803D1B70@l +/* 801D35D4 001D0534 48 14 22 45 */ bl __nwa__FUlPCcPCc +/* 801D35D8 001D0538 7C 7D 1B 78 */ mr r29, r3 +lbl_801D35DC: +/* 801D35DC 001D053C 80 1E 00 04 */ lwz r0, 4(r30) +/* 801D35E0 001D0540 7F A4 EB 78 */ mr r4, r29 +/* 801D35E4 001D0544 80 BE 00 0C */ lwz r5, 0xc(r30) +/* 801D35E8 001D0548 54 00 10 3A */ slwi r0, r0, 2 +/* 801D35EC 001D054C 7C 65 02 14 */ add r3, r5, r0 +/* 801D35F0 001D0550 90 A1 00 10 */ stw r5, 0x10(r1) +/* 801D35F4 001D0554 90 61 00 08 */ stw r3, 8(r1) +/* 801D35F8 001D0558 90 61 00 0C */ stw r3, 0xc(r1) +/* 801D35FC 001D055C 90 A1 00 14 */ stw r5, 0x14(r1) +/* 801D3600 001D0560 48 00 00 1C */ b lbl_801D361C +lbl_801D3604: +/* 801D3604 001D0564 28 04 00 00 */ cmplwi r4, 0 +/* 801D3608 001D0568 41 82 00 0C */ beq lbl_801D3614 +/* 801D360C 001D056C 80 05 00 00 */ lwz r0, 0(r5) +/* 801D3610 001D0570 90 04 00 00 */ stw r0, 0(r4) +lbl_801D3614: +/* 801D3614 001D0574 38 84 00 04 */ addi r4, r4, 4 +/* 801D3618 001D0578 38 A5 00 04 */ addi r5, r5, 4 +lbl_801D361C: +/* 801D361C 001D057C 7C 05 18 40 */ cmplw r5, r3 +/* 801D3620 001D0580 40 82 FF E4 */ bne lbl_801D3604 +/* 801D3624 001D0584 80 1E 00 04 */ lwz r0, 4(r30) +/* 801D3628 001D0588 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 801D362C 001D058C 54 00 10 3A */ slwi r0, r0, 2 +/* 801D3630 001D0590 7C 64 1B 78 */ mr r4, r3 +/* 801D3634 001D0594 7C 03 02 14 */ add r0, r3, r0 +/* 801D3638 001D0598 48 00 00 08 */ b lbl_801D3640 +lbl_801D363C: +/* 801D363C 001D059C 38 84 00 04 */ addi r4, r4, 4 +lbl_801D3640: +/* 801D3640 001D05A0 7C 04 00 40 */ cmplw r4, r0 +/* 801D3644 001D05A4 40 82 FF F8 */ bne lbl_801D363C +/* 801D3648 001D05A8 28 03 00 00 */ cmplwi r3, 0 +/* 801D364C 001D05AC 41 82 00 08 */ beq lbl_801D3654 +/* 801D3650 001D05B0 48 14 22 E1 */ bl Free__7CMemoryFPCv +lbl_801D3654: +/* 801D3654 001D05B4 93 BE 00 0C */ stw r29, 0xc(r30) +/* 801D3658 001D05B8 93 FE 00 08 */ stw r31, 8(r30) +lbl_801D365C: +/* 801D365C 001D05BC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801D3660 001D05C0 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801D3664 001D05C4 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801D3668 001D05C8 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801D366C 001D05CC 7C 08 03 A6 */ mtlr r0 +/* 801D3670 001D05D0 38 21 00 30 */ addi r1, r1, 0x30 +/* 801D3674 001D05D4 4E 80 00 20 */ blr + +.global "reserve__Q24rstl55vectorFi" +"reserve__Q24rstl55vectorFi": +/* 801D3678 001D05D8 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801D367C 001D05DC 7C 08 02 A6 */ mflr r0 +/* 801D3680 001D05E0 90 01 00 34 */ stw r0, 0x34(r1) +/* 801D3684 001D05E4 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801D3688 001D05E8 7C 9F 23 78 */ mr r31, r4 +/* 801D368C 001D05EC 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801D3690 001D05F0 7C 7E 1B 78 */ mr r30, r3 +/* 801D3694 001D05F4 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801D3698 001D05F8 80 03 00 08 */ lwz r0, 8(r3) +/* 801D369C 001D05FC 7C 1F 00 00 */ cmpw r31, r0 +/* 801D36A0 001D0600 40 81 00 EC */ ble lbl_801D378C +/* 801D36A4 001D0604 1C 7F 00 24 */ mulli r3, r31, 0x24 +/* 801D36A8 001D0608 2C 03 00 00 */ cmpwi r3, 0 +/* 801D36AC 001D060C 40 82 00 0C */ bne lbl_801D36B8 +/* 801D36B0 001D0610 3B A0 00 00 */ li r29, 0 +/* 801D36B4 001D0614 48 00 00 18 */ b lbl_801D36CC +lbl_801D36B8: +/* 801D36B8 001D0618 3C 80 80 3D */ lis r4, lbl_803D1B70@ha +/* 801D36BC 001D061C 38 A0 00 00 */ li r5, 0 +/* 801D36C0 001D0620 38 84 1B 70 */ addi r4, r4, lbl_803D1B70@l +/* 801D36C4 001D0624 48 14 21 55 */ bl __nwa__FUlPCcPCc +/* 801D36C8 001D0628 7C 7D 1B 78 */ mr r29, r3 +lbl_801D36CC: +/* 801D36CC 001D062C 80 1E 00 04 */ lwz r0, 4(r30) +/* 801D36D0 001D0630 7F A4 EB 78 */ mr r4, r29 +/* 801D36D4 001D0634 80 BE 00 0C */ lwz r5, 0xc(r30) +/* 801D36D8 001D0638 1C 00 00 24 */ mulli r0, r0, 0x24 +/* 801D36DC 001D063C 90 A1 00 10 */ stw r5, 0x10(r1) +/* 801D36E0 001D0640 7C 65 02 14 */ add r3, r5, r0 +/* 801D36E4 001D0644 90 A1 00 14 */ stw r5, 0x14(r1) +/* 801D36E8 001D0648 90 61 00 08 */ stw r3, 8(r1) +/* 801D36EC 001D064C 90 61 00 0C */ stw r3, 0xc(r1) +/* 801D36F0 001D0650 48 00 00 5C */ b lbl_801D374C +lbl_801D36F4: +/* 801D36F4 001D0654 28 04 00 00 */ cmplwi r4, 0 +/* 801D36F8 001D0658 41 82 00 4C */ beq lbl_801D3744 +/* 801D36FC 001D065C C0 05 00 00 */ lfs f0, 0(r5) +/* 801D3700 001D0660 D0 04 00 00 */ stfs f0, 0(r4) +/* 801D3704 001D0664 C0 05 00 04 */ lfs f0, 4(r5) +/* 801D3708 001D0668 D0 04 00 04 */ stfs f0, 4(r4) +/* 801D370C 001D066C C0 05 00 08 */ lfs f0, 8(r5) +/* 801D3710 001D0670 D0 04 00 08 */ stfs f0, 8(r4) +/* 801D3714 001D0674 C0 05 00 0C */ lfs f0, 0xc(r5) +/* 801D3718 001D0678 D0 04 00 0C */ stfs f0, 0xc(r4) +/* 801D371C 001D067C C0 05 00 10 */ lfs f0, 0x10(r5) +/* 801D3720 001D0680 D0 04 00 10 */ stfs f0, 0x10(r4) +/* 801D3724 001D0684 C0 05 00 14 */ lfs f0, 0x14(r5) +/* 801D3728 001D0688 D0 04 00 14 */ stfs f0, 0x14(r4) +/* 801D372C 001D068C C0 05 00 18 */ lfs f0, 0x18(r5) +/* 801D3730 001D0690 D0 04 00 18 */ stfs f0, 0x18(r4) +/* 801D3734 001D0694 80 05 00 1C */ lwz r0, 0x1c(r5) +/* 801D3738 001D0698 90 04 00 1C */ stw r0, 0x1c(r4) +/* 801D373C 001D069C 88 05 00 20 */ lbz r0, 0x20(r5) +/* 801D3740 001D06A0 98 04 00 20 */ stb r0, 0x20(r4) +lbl_801D3744: +/* 801D3744 001D06A4 38 84 00 24 */ addi r4, r4, 0x24 +/* 801D3748 001D06A8 38 A5 00 24 */ addi r5, r5, 0x24 +lbl_801D374C: +/* 801D374C 001D06AC 7C 05 18 40 */ cmplw r5, r3 +/* 801D3750 001D06B0 40 82 FF A4 */ bne lbl_801D36F4 +/* 801D3754 001D06B4 80 1E 00 04 */ lwz r0, 4(r30) +/* 801D3758 001D06B8 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 801D375C 001D06BC 1C 00 00 24 */ mulli r0, r0, 0x24 +/* 801D3760 001D06C0 7C 64 1B 78 */ mr r4, r3 +/* 801D3764 001D06C4 7C 03 02 14 */ add r0, r3, r0 +/* 801D3768 001D06C8 48 00 00 08 */ b lbl_801D3770 +lbl_801D376C: +/* 801D376C 001D06CC 38 84 00 24 */ addi r4, r4, 0x24 +lbl_801D3770: +/* 801D3770 001D06D0 7C 04 00 40 */ cmplw r4, r0 +/* 801D3774 001D06D4 40 82 FF F8 */ bne lbl_801D376C +/* 801D3778 001D06D8 28 03 00 00 */ cmplwi r3, 0 +/* 801D377C 001D06DC 41 82 00 08 */ beq lbl_801D3784 +/* 801D3780 001D06E0 48 14 21 B1 */ bl Free__7CMemoryFPCv +lbl_801D3784: +/* 801D3784 001D06E4 93 BE 00 0C */ stw r29, 0xc(r30) +/* 801D3788 001D06E8 93 FE 00 08 */ stw r31, 8(r30) +lbl_801D378C: +/* 801D378C 001D06EC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801D3790 001D06F0 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801D3794 001D06F4 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801D3798 001D06F8 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801D379C 001D06FC 7C 08 03 A6 */ mtlr r0 +/* 801D37A0 001D0700 38 21 00 30 */ addi r1, r1, 0x30 +/* 801D37A4 001D0704 4E 80 00 20 */ blr + +.global "advance,Q24rstl17rmemory_allocator>,i>__4rstlFRQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>i" +"advance,Q24rstl17rmemory_allocator>,i>__4rstlFRQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>i": +/* 801D37A8 001D0708 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D37AC 001D070C 7C 08 02 A6 */ mflr r0 +/* 801D37B0 001D0710 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D37B4 001D0714 38 A1 00 0C */ addi r5, r1, 0xc +/* 801D37B8 001D0718 88 01 00 08 */ lbz r0, 8(r1) +/* 801D37BC 001D071C 98 01 00 0C */ stb r0, 0xc(r1) +/* 801D37C0 001D0720 48 00 00 15 */ bl "__advance,Q24rstl17rmemory_allocator>,i>__4rstlFRQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>iQ24rstl26random_access_iterator_tag" +/* 801D37C4 001D0724 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D37C8 001D0728 7C 08 03 A6 */ mtlr r0 +/* 801D37CC 001D072C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D37D0 001D0730 4E 80 00 20 */ blr + +.global "__advance,Q24rstl17rmemory_allocator>,i>__4rstlFRQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>iQ24rstl26random_access_iterator_tag" +"__advance,Q24rstl17rmemory_allocator>,i>__4rstlFRQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>iQ24rstl26random_access_iterator_tag": +/* 801D37D4 001D0734 80 A3 00 00 */ lwz r5, 0(r3) +/* 801D37D8 001D0738 54 80 20 36 */ slwi r0, r4, 4 +/* 801D37DC 001D073C 7C 05 02 14 */ add r0, r5, r0 +/* 801D37E0 001D0740 90 03 00 00 */ stw r0, 0(r3) +/* 801D37E4 001D0744 4E 80 00 20 */ blr + +.global "distance,Q24rstl17rmemory_allocator>>__4rstlFQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl152pointer_iterator,Q24rstl17rmemory_allocator>" +"distance,Q24rstl17rmemory_allocator>>__4rstlFQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl152pointer_iterator,Q24rstl17rmemory_allocator>": +/* 801D37E8 001D0748 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801D37EC 001D074C 7C 08 02 A6 */ mflr r0 +/* 801D37F0 001D0750 90 01 00 24 */ stw r0, 0x24(r1) +/* 801D37F4 001D0754 38 A1 00 0C */ addi r5, r1, 0xc +/* 801D37F8 001D0758 88 E1 00 08 */ lbz r7, 8(r1) +/* 801D37FC 001D075C 80 C4 00 00 */ lwz r6, 0(r4) +/* 801D3800 001D0760 38 81 00 10 */ addi r4, r1, 0x10 +/* 801D3804 001D0764 80 03 00 00 */ lwz r0, 0(r3) +/* 801D3808 001D0768 38 61 00 14 */ addi r3, r1, 0x14 +/* 801D380C 001D076C 90 C1 00 10 */ stw r6, 0x10(r1) +/* 801D3810 001D0770 98 E1 00 0C */ stb r7, 0xc(r1) +/* 801D3814 001D0774 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D3818 001D0778 48 00 00 15 */ bl "__distance,Q24rstl17rmemory_allocator>>__4rstlFQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24r" +/* 801D381C 001D077C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801D3820 001D0780 7C 08 03 A6 */ mtlr r0 +/* 801D3824 001D0784 38 21 00 20 */ addi r1, r1, 0x20 +/* 801D3828 001D0788 4E 80 00 20 */ blr + +.global "__distance,Q24rstl17rmemory_allocator>>__4rstlFQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24r" +"__distance,Q24rstl17rmemory_allocator>>__4rstlFQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24r": +/* 801D382C 001D078C 80 63 00 00 */ lwz r3, 0(r3) +/* 801D3830 001D0790 80 04 00 00 */ lwz r0, 0(r4) +/* 801D3834 001D0794 7C 03 00 50 */ subf r0, r3, r0 +/* 801D3838 001D0798 7C 00 26 70 */ srawi r0, r0, 4 +/* 801D383C 001D079C 7C 60 01 94 */ addze r3, r0 +/* 801D3840 001D07A0 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/ScriptObjects/CRepulsor.s b/asm/Kyoto_CWD/ScriptObjects/CRepulsor.s new file mode 100644 index 00000000..816b009e --- /dev/null +++ b/asm/Kyoto_CWD/ScriptObjects/CRepulsor.s @@ -0,0 +1,131 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__9CRepulsorFv +__dt__9CRepulsorFv: +/* 8020FC48 0020CBA8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8020FC4C 0020CBAC 7C 08 02 A6 */ mflr r0 +/* 8020FC50 0020CBB0 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020FC54 0020CBB4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8020FC58 0020CBB8 7C 9F 23 78 */ mr r31, r4 +/* 8020FC5C 0020CBBC 93 C1 00 08 */ stw r30, 8(r1) +/* 8020FC60 0020CBC0 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8020FC64 0020CBC4 41 82 00 28 */ beq lbl_8020FC8C +/* 8020FC68 0020CBC8 3C A0 80 3E */ lis r5, lbl_803E70E8@ha +/* 8020FC6C 0020CBCC 38 80 00 00 */ li r4, 0 +/* 8020FC70 0020CBD0 38 05 70 E8 */ addi r0, r5, lbl_803E70E8@l +/* 8020FC74 0020CBD4 90 1E 00 00 */ stw r0, 0(r30) +/* 8020FC78 0020CBD8 4B E4 5A 79 */ bl __dt__6CActorFv +/* 8020FC7C 0020CBDC 7F E0 07 35 */ extsh. r0, r31 +/* 8020FC80 0020CBE0 40 81 00 0C */ ble lbl_8020FC8C +/* 8020FC84 0020CBE4 7F C3 F3 78 */ mr r3, r30 +/* 8020FC88 0020CBE8 48 10 5C A9 */ bl Free__7CMemoryFPCv +lbl_8020FC8C: +/* 8020FC8C 0020CBEC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8020FC90 0020CBF0 7F C3 F3 78 */ mr r3, r30 +/* 8020FC94 0020CBF4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8020FC98 0020CBF8 83 C1 00 08 */ lwz r30, 8(r1) +/* 8020FC9C 0020CBFC 7C 08 03 A6 */ mtlr r0 +/* 8020FCA0 0020CC00 38 21 00 10 */ addi r1, r1, 0x10 +/* 8020FCA4 0020CC04 4E 80 00 20 */ blr + +.global AcceptScriptMsg__9CRepulsorF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__9CRepulsorF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 8020FCA8 0020CC08 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8020FCAC 0020CC0C 7C 08 02 A6 */ mflr r0 +/* 8020FCB0 0020CC10 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020FCB4 0020CC14 A0 05 00 00 */ lhz r0, 0(r5) +/* 8020FCB8 0020CC18 38 A1 00 08 */ addi r5, r1, 8 +/* 8020FCBC 0020CC1C B0 01 00 08 */ sth r0, 8(r1) +/* 8020FCC0 0020CC20 4B E4 39 55 */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 8020FCC4 0020CC24 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8020FCC8 0020CC28 7C 08 03 A6 */ mtlr r0 +/* 8020FCCC 0020CC2C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8020FCD0 0020CC30 4E 80 00 20 */ blr + +.global Accept__9CRepulsorFR8IVisitor +Accept__9CRepulsorFR8IVisitor: +/* 8020FCD4 0020CC34 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8020FCD8 0020CC38 7C 08 02 A6 */ mflr r0 +/* 8020FCDC 0020CC3C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020FCE0 0020CC40 7C 60 1B 78 */ mr r0, r3 +/* 8020FCE4 0020CC44 7C 83 23 78 */ mr r3, r4 +/* 8020FCE8 0020CC48 81 84 00 00 */ lwz r12, 0(r4) +/* 8020FCEC 0020CC4C 7C 04 03 78 */ mr r4, r0 +/* 8020FCF0 0020CC50 81 8C 00 58 */ lwz r12, 0x58(r12) +/* 8020FCF4 0020CC54 7D 89 03 A6 */ mtctr r12 +/* 8020FCF8 0020CC58 4E 80 04 21 */ bctrl +/* 8020FCFC 0020CC5C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8020FD00 0020CC60 7C 08 03 A6 */ mtlr r0 +/* 8020FD04 0020CC64 38 21 00 10 */ addi r1, r1, 0x10 +/* 8020FD08 0020CC68 4E 80 00 20 */ blr + +.global "__ct__9CRepulsorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3ff" +"__ct__9CRepulsorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3ff": +/* 8020FD0C 0020CC6C 94 21 FE D0 */ stwu r1, -0x130(r1) +/* 8020FD10 0020CC70 7C 08 02 A6 */ mflr r0 +/* 8020FD14 0020CC74 90 01 01 34 */ stw r0, 0x134(r1) +/* 8020FD18 0020CC78 DB E1 01 28 */ stfd f31, 0x128(r1) +/* 8020FD1C 0020CC7C FF E0 08 90 */ fmr f31, f1 +/* 8020FD20 0020CC80 BF 41 01 10 */ stmw r26, 0x110(r1) +/* 8020FD24 0020CC84 7C 7F 1B 78 */ mr r31, r3 +/* 8020FD28 0020CC88 7C 9A 23 78 */ mr r26, r4 +/* 8020FD2C 0020CC8C 7C BB 2B 78 */ mr r27, r5 +/* 8020FD30 0020CC90 7C DC 33 78 */ mr r28, r6 +/* 8020FD34 0020CC94 7C FD 3B 78 */ mr r29, r7 +/* 8020FD38 0020CC98 7D 1E 43 78 */ mr r30, r8 +/* 8020FD3C 0020CC9C 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 8020FD40 0020CCA0 4B E2 AA 65 */ bl CModelDataNull__10CModelDataFv +/* 8020FD44 0020CCA4 38 61 00 50 */ addi r3, r1, 0x50 +/* 8020FD48 0020CCA8 4B E0 B0 F1 */ bl None__16CActorParametersFv +/* 8020FD4C 0020CCAC A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 8020FD50 0020CCB0 38 00 00 00 */ li r0, 0 +/* 8020FD54 0020CCB4 80 AD 94 B0 */ lwz r5, lbl_805A8070@sda21(r13) +/* 8020FD58 0020CCB8 38 60 00 00 */ li r3, 0 +/* 8020FD5C 0020CCBC B0 81 00 10 */ sth r4, 0x10(r1) +/* 8020FD60 0020CCC0 38 80 00 01 */ li r4, 1 +/* 8020FD64 0020CCC4 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8020FD68 0020CCC8 90 01 00 18 */ stw r0, 0x18(r1) +/* 8020FD6C 0020CCCC 48 17 A1 89 */ bl __shl2i +/* 8020FD70 0020CCD0 80 01 00 18 */ lwz r0, 0x18(r1) +/* 8020FD74 0020CCD4 80 A1 00 1C */ lwz r5, 0x1c(r1) +/* 8020FD78 0020CCD8 7C 03 1B 78 */ or r3, r0, r3 +/* 8020FD7C 0020CCDC A0 1A 00 00 */ lhz r0, 0(r26) +/* 8020FD80 0020CCE0 7C A5 23 78 */ or r5, r5, r4 +/* 8020FD84 0020CCE4 90 61 00 18 */ stw r3, 0x18(r1) +/* 8020FD88 0020CCE8 7F C4 F3 78 */ mr r4, r30 +/* 8020FD8C 0020CCEC 38 61 00 20 */ addi r3, r1, 0x20 +/* 8020FD90 0020CCF0 90 A1 00 1C */ stw r5, 0x1c(r1) +/* 8020FD94 0020CCF4 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8020FD98 0020CCF8 48 10 33 A9 */ bl Translate__12CTransform4fFRC9CVector3f +/* 8020FD9C 0020CCFC 38 61 00 50 */ addi r3, r1, 0x50 +/* 8020FDA0 0020CD00 38 01 00 10 */ addi r0, r1, 0x10 +/* 8020FDA4 0020CD04 90 61 00 08 */ stw r3, 8(r1) +/* 8020FDA8 0020CD08 7F E3 FB 78 */ mr r3, r31 +/* 8020FDAC 0020CD0C 7F 65 DB 78 */ mr r5, r27 +/* 8020FDB0 0020CD10 7F 86 E3 78 */ mr r6, r28 +/* 8020FDB4 0020CD14 90 01 00 0C */ stw r0, 0xc(r1) +/* 8020FDB8 0020CD18 7F A7 EB 78 */ mr r7, r29 +/* 8020FDBC 0020CD1C 38 81 00 14 */ addi r4, r1, 0x14 +/* 8020FDC0 0020CD20 39 01 00 20 */ addi r8, r1, 0x20 +/* 8020FDC4 0020CD24 39 21 00 B8 */ addi r9, r1, 0xb8 +/* 8020FDC8 0020CD28 39 41 00 18 */ addi r10, r1, 0x18 +/* 8020FDCC 0020CD2C 4B E4 5A 55 */ bl "__ct__6CActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC16CActorParameters9TUniqueId" +/* 8020FDD0 0020CD30 38 61 00 50 */ addi r3, r1, 0x50 +/* 8020FDD4 0020CD34 38 80 FF FF */ li r4, -1 +/* 8020FDD8 0020CD38 4B EF 68 31 */ bl __dt__16CActorParametersFv +/* 8020FDDC 0020CD3C 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 8020FDE0 0020CD40 38 80 FF FF */ li r4, -1 +/* 8020FDE4 0020CD44 4B F0 6C 69 */ bl __dt__10CModelDataFv +/* 8020FDE8 0020CD48 3C 80 80 3E */ lis r4, lbl_803E70E8@ha +/* 8020FDEC 0020CD4C 7F E3 FB 78 */ mr r3, r31 +/* 8020FDF0 0020CD50 38 04 70 E8 */ addi r0, r4, lbl_803E70E8@l +/* 8020FDF4 0020CD54 90 1F 00 00 */ stw r0, 0(r31) +/* 8020FDF8 0020CD58 D3 FF 00 E8 */ stfs f31, 0xe8(r31) +/* 8020FDFC 0020CD5C CB E1 01 28 */ lfd f31, 0x128(r1) +/* 8020FE00 0020CD60 BB 41 01 10 */ lmw r26, 0x110(r1) +/* 8020FE04 0020CD64 80 01 01 34 */ lwz r0, 0x134(r1) +/* 8020FE08 0020CD68 7C 08 03 A6 */ mtlr r0 +/* 8020FE0C 0020CD6C 38 21 01 30 */ addi r1, r1, 0x130 +/* 8020FE10 0020CD70 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/ScriptObjects/CScriptAiJumpPoint.s b/asm/Kyoto_CWD/ScriptObjects/CScriptAiJumpPoint.s new file mode 100644 index 00000000..4fbf6b7e --- /dev/null +++ b/asm/Kyoto_CWD/ScriptObjects/CScriptAiJumpPoint.s @@ -0,0 +1,302 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__18CScriptAiJumpPointFv +__dt__18CScriptAiJumpPointFv: +/* 801EF1EC 001EC14C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801EF1F0 001EC150 7C 08 02 A6 */ mflr r0 +/* 801EF1F4 001EC154 90 01 00 14 */ stw r0, 0x14(r1) +/* 801EF1F8 001EC158 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801EF1FC 001EC15C 7C 9F 23 78 */ mr r31, r4 +/* 801EF200 001EC160 93 C1 00 08 */ stw r30, 8(r1) +/* 801EF204 001EC164 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801EF208 001EC168 41 82 00 3C */ beq lbl_801EF244 +/* 801EF20C 001EC16C 3C 60 80 3E */ lis r3, lbl_803E6398@ha +/* 801EF210 001EC170 34 1E 00 EC */ addic. r0, r30, 0xec +/* 801EF214 001EC174 38 03 63 98 */ addi r0, r3, lbl_803E6398@l +/* 801EF218 001EC178 90 1E 00 00 */ stw r0, 0(r30) +/* 801EF21C 001EC17C 41 82 00 0C */ beq lbl_801EF228 +/* 801EF220 001EC180 38 00 00 00 */ li r0, 0 +/* 801EF224 001EC184 98 1E 01 04 */ stb r0, 0x104(r30) +lbl_801EF228: +/* 801EF228 001EC188 7F C3 F3 78 */ mr r3, r30 +/* 801EF22C 001EC18C 38 80 00 00 */ li r4, 0 +/* 801EF230 001EC190 4B E6 64 C1 */ bl __dt__6CActorFv +/* 801EF234 001EC194 7F E0 07 35 */ extsh. r0, r31 +/* 801EF238 001EC198 40 81 00 0C */ ble lbl_801EF244 +/* 801EF23C 001EC19C 7F C3 F3 78 */ mr r3, r30 +/* 801EF240 001EC1A0 48 12 66 F1 */ bl Free__7CMemoryFPCv +lbl_801EF244: +/* 801EF244 001EC1A4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801EF248 001EC1A8 7F C3 F3 78 */ mr r3, r30 +/* 801EF24C 001EC1AC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801EF250 001EC1B0 83 C1 00 08 */ lwz r30, 8(r1) +/* 801EF254 001EC1B4 7C 08 03 A6 */ mtlr r0 +/* 801EF258 001EC1B8 38 21 00 10 */ addi r1, r1, 0x10 +/* 801EF25C 001EC1BC 4E 80 00 20 */ blr + +.global GetTouchBounds__18CScriptAiJumpPointCFv +GetTouchBounds__18CScriptAiJumpPointCFv: +/* 801EF260 001EC1C0 88 04 01 04 */ lbz r0, 0x104(r4) +/* 801EF264 001EC1C4 98 03 00 18 */ stb r0, 0x18(r3) +/* 801EF268 001EC1C8 88 04 01 04 */ lbz r0, 0x104(r4) +/* 801EF26C 001EC1CC 28 00 00 00 */ cmplwi r0, 0 +/* 801EF270 001EC1D0 4D 82 00 20 */ beqlr +/* 801EF274 001EC1D4 28 03 00 00 */ cmplwi r3, 0 +/* 801EF278 001EC1D8 4D 82 00 20 */ beqlr +/* 801EF27C 001EC1DC C0 04 00 EC */ lfs f0, 0xec(r4) +/* 801EF280 001EC1E0 D0 03 00 00 */ stfs f0, 0(r3) +/* 801EF284 001EC1E4 C0 04 00 F0 */ lfs f0, 0xf0(r4) +/* 801EF288 001EC1E8 D0 03 00 04 */ stfs f0, 4(r3) +/* 801EF28C 001EC1EC C0 04 00 F4 */ lfs f0, 0xf4(r4) +/* 801EF290 001EC1F0 D0 03 00 08 */ stfs f0, 8(r3) +/* 801EF294 001EC1F4 C0 04 00 F8 */ lfs f0, 0xf8(r4) +/* 801EF298 001EC1F8 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 801EF29C 001EC1FC C0 04 00 FC */ lfs f0, 0xfc(r4) +/* 801EF2A0 001EC200 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 801EF2A4 001EC204 C0 04 01 00 */ lfs f0, 0x100(r4) +/* 801EF2A8 001EC208 D0 03 00 14 */ stfs f0, 0x14(r3) +/* 801EF2AC 001EC20C 4E 80 00 20 */ blr + +.global Render__18CScriptAiJumpPointCFRC13CStateManager +Render__18CScriptAiJumpPointCFRC13CStateManager: +/* 801EF2B0 001EC210 4E 80 00 20 */ blr + +.global AddToRenderer__18CScriptAiJumpPointCFRC14CFrustumPlanesRC13CStateManager +AddToRenderer__18CScriptAiJumpPointCFRC14CFrustumPlanesRC13CStateManager: +/* 801EF2B4 001EC214 4E 80 00 20 */ blr + +.global Think__18CScriptAiJumpPointFfR13CStateManager +Think__18CScriptAiJumpPointFfR13CStateManager: +/* 801EF2B8 001EC218 C0 43 01 10 */ lfs f2, 0x110(r3) +/* 801EF2BC 001EC21C C0 02 AE 40 */ lfs f0, lbl_805ACB60@sda21(r2) +/* 801EF2C0 001EC220 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801EF2C4 001EC224 4C 81 00 20 */ blelr +/* 801EF2C8 001EC228 EC 02 08 28 */ fsubs f0, f2, f1 +/* 801EF2CC 001EC22C D0 03 01 10 */ stfs f0, 0x110(r3) +/* 801EF2D0 001EC230 4E 80 00 20 */ blr + +.global GetInUse__18CScriptAiJumpPointCF9TUniqueId +GetInUse__18CScriptAiJumpPointCF9TUniqueId: +/* 801EF2D4 001EC234 88 03 01 08 */ lbz r0, 0x108(r3) +/* 801EF2D8 001EC238 38 A0 00 00 */ li r5, 0 +/* 801EF2DC 001EC23C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801EF2E0 001EC240 40 82 00 38 */ bne lbl_801EF318 +/* 801EF2E4 001EC244 C0 23 01 10 */ lfs f1, 0x110(r3) +/* 801EF2E8 001EC248 C0 02 AE 40 */ lfs f0, lbl_805ACB60@sda21(r2) +/* 801EF2EC 001EC24C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801EF2F0 001EC250 41 81 00 28 */ bgt lbl_801EF318 +/* 801EF2F4 001EC254 A0 C3 01 0A */ lhz r6, 0x10a(r3) +/* 801EF2F8 001EC258 A0 6D A3 8C */ lhz r3, lbl_805A8F4C@sda21(r13) +/* 801EF2FC 001EC25C 7C 06 18 40 */ cmplw r6, r3 +/* 801EF300 001EC260 41 82 00 1C */ beq lbl_801EF31C +/* 801EF304 001EC264 A0 04 00 00 */ lhz r0, 0(r4) +/* 801EF308 001EC268 7C 00 18 40 */ cmplw r0, r3 +/* 801EF30C 001EC26C 41 82 00 10 */ beq lbl_801EF31C +/* 801EF310 001EC270 7C 00 30 40 */ cmplw r0, r6 +/* 801EF314 001EC274 41 82 00 08 */ beq lbl_801EF31C +lbl_801EF318: +/* 801EF318 001EC278 38 A0 00 01 */ li r5, 1 +lbl_801EF31C: +/* 801EF31C 001EC27C 7C A3 2B 78 */ mr r3, r5 +/* 801EF320 001EC280 4E 80 00 20 */ blr + +.global AcceptScriptMsg__18CScriptAiJumpPointF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__18CScriptAiJumpPointF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 801EF324 001EC284 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801EF328 001EC288 7C 08 02 A6 */ mflr r0 +/* 801EF32C 001EC28C 90 01 00 44 */ stw r0, 0x44(r1) +/* 801EF330 001EC290 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801EF334 001EC294 7C 7F 1B 78 */ mr r31, r3 +/* 801EF338 001EC298 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801EF33C 001EC29C 7C 9E 23 78 */ mr r30, r4 +/* 801EF340 001EC2A0 93 A1 00 34 */ stw r29, 0x34(r1) +/* 801EF344 001EC2A4 7C DD 33 78 */ mr r29, r6 +/* 801EF348 001EC2A8 A0 05 00 00 */ lhz r0, 0(r5) +/* 801EF34C 001EC2AC 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801EF350 001EC2B0 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801EF354 001EC2B4 4B E6 42 C1 */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 801EF358 001EC2B8 2C 1E 00 23 */ cmpwi r30, 0x23 +/* 801EF35C 001EC2BC 41 82 00 08 */ beq lbl_801EF364 +/* 801EF360 001EC2C0 48 00 00 A8 */ b lbl_801EF408 +lbl_801EF364: +/* 801EF364 001EC2C4 83 DF 00 2C */ lwz r30, 0x2c(r31) +/* 801EF368 001EC2C8 48 00 00 88 */ b lbl_801EF3F0 +lbl_801EF36C: +/* 801EF36C 001EC2CC 80 1E 00 00 */ lwz r0, 0(r30) +/* 801EF370 001EC2D0 2C 00 00 01 */ cmpwi r0, 1 +/* 801EF374 001EC2D4 40 82 00 78 */ bne lbl_801EF3EC +/* 801EF378 001EC2D8 80 1E 00 04 */ lwz r0, 4(r30) +/* 801EF37C 001EC2DC 2C 00 00 08 */ cmpwi r0, 8 +/* 801EF380 001EC2E0 40 82 00 6C */ bne lbl_801EF3EC +/* 801EF384 001EC2E4 80 1E 00 08 */ lwz r0, 8(r30) +/* 801EF388 001EC2E8 7F A4 EB 78 */ mr r4, r29 +/* 801EF38C 001EC2EC 38 61 00 10 */ addi r3, r1, 0x10 +/* 801EF390 001EC2F0 38 A1 00 1C */ addi r5, r1, 0x1c +/* 801EF394 001EC2F4 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801EF398 001EC2F8 4B E5 8B 85 */ bl GetIdForScript__13CStateManagerCF9TEditorId +/* 801EF39C 001EC2FC A0 01 00 10 */ lhz r0, 0x10(r1) +/* 801EF3A0 001EC300 7F A3 EB 78 */ mr r3, r29 +/* 801EF3A4 001EC304 38 81 00 0C */ addi r4, r1, 0xc +/* 801EF3A8 001EC308 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801EF3AC 001EC30C B0 01 00 0C */ sth r0, 0xc(r1) +/* 801EF3B0 001EC310 4B E5 D1 F5 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801EF3B4 001EC314 7C 64 1B 78 */ mr r4, r3 +/* 801EF3B8 001EC318 38 61 00 20 */ addi r3, r1, 0x20 +/* 801EF3BC 001EC31C 4B EB 71 91 */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 801EF3C0 001EC320 80 83 00 04 */ lwz r4, 4(r3) +/* 801EF3C4 001EC324 28 04 00 00 */ cmplwi r4, 0 +/* 801EF3C8 001EC328 41 82 00 24 */ beq lbl_801EF3EC +/* 801EF3CC 001EC32C A0 01 00 18 */ lhz r0, 0x18(r1) +/* 801EF3D0 001EC330 7F A5 EB 78 */ mr r5, r29 +/* 801EF3D4 001EC334 38 61 00 08 */ addi r3, r1, 8 +/* 801EF3D8 001EC338 B0 1F 01 0C */ sth r0, 0x10c(r31) +/* 801EF3DC 001EC33C 4B E8 7D 59 */ bl NextWaypoint__15CScriptWaypointCFR13CStateManager +/* 801EF3E0 001EC340 A0 01 00 08 */ lhz r0, 8(r1) +/* 801EF3E4 001EC344 B0 1F 01 0E */ sth r0, 0x10e(r31) +/* 801EF3E8 001EC348 48 00 00 20 */ b lbl_801EF408 +lbl_801EF3EC: +/* 801EF3EC 001EC34C 3B DE 00 0C */ addi r30, r30, 0xc +lbl_801EF3F0: +/* 801EF3F0 001EC350 80 1F 00 24 */ lwz r0, 0x24(r31) +/* 801EF3F4 001EC354 80 7F 00 2C */ lwz r3, 0x2c(r31) +/* 801EF3F8 001EC358 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801EF3FC 001EC35C 7C 03 02 14 */ add r0, r3, r0 +/* 801EF400 001EC360 7C 1E 00 40 */ cmplw r30, r0 +/* 801EF404 001EC364 40 82 FF 68 */ bne lbl_801EF36C +lbl_801EF408: +/* 801EF408 001EC368 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801EF40C 001EC36C 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801EF410 001EC370 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801EF414 001EC374 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 801EF418 001EC378 7C 08 03 A6 */ mtlr r0 +/* 801EF41C 001EC37C 38 21 00 40 */ addi r1, r1, 0x40 +/* 801EF420 001EC380 4E 80 00 20 */ blr + +.global Accept__18CScriptAiJumpPointFR8IVisitor +Accept__18CScriptAiJumpPointFR8IVisitor: +/* 801EF424 001EC384 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801EF428 001EC388 7C 08 02 A6 */ mflr r0 +/* 801EF42C 001EC38C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801EF430 001EC390 7C 60 1B 78 */ mr r0, r3 +/* 801EF434 001EC394 7C 83 23 78 */ mr r3, r4 +/* 801EF438 001EC398 81 84 00 00 */ lwz r12, 0(r4) +/* 801EF43C 001EC39C 7C 04 03 78 */ mr r4, r0 +/* 801EF440 001EC3A0 81 8C 00 64 */ lwz r12, 0x64(r12) +/* 801EF444 001EC3A4 7D 89 03 A6 */ mtctr r12 +/* 801EF448 001EC3A8 4E 80 04 21 */ bctrl +/* 801EF44C 001EC3AC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801EF450 001EC3B0 7C 08 03 A6 */ mtlr r0 +/* 801EF454 001EC3B4 38 21 00 10 */ addi r1, r1, 0x10 +/* 801EF458 001EC3B8 4E 80 00 20 */ blr + +.global "__ct__18CScriptAiJumpPointF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fbf" +"__ct__18CScriptAiJumpPointF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fbf": +/* 801EF45C 001EC3BC 94 21 FE D0 */ stwu r1, -0x130(r1) +/* 801EF460 001EC3C0 7C 08 02 A6 */ mflr r0 +/* 801EF464 001EC3C4 90 01 01 34 */ stw r0, 0x134(r1) +/* 801EF468 001EC3C8 DB E1 01 20 */ stfd f31, 0x120(r1) +/* 801EF46C 001EC3CC F3 E1 01 28 */ psq_st f31, 296(r1), 0, qr0 +/* 801EF470 001EC3D0 BF 41 01 08 */ stmw r26, 0x108(r1) +/* 801EF474 001EC3D4 FF E0 08 90 */ fmr f31, f1 +/* 801EF478 001EC3D8 7C 7F 1B 78 */ mr r31, r3 +/* 801EF47C 001EC3DC 7C 9A 23 78 */ mr r26, r4 +/* 801EF480 001EC3E0 7C BB 2B 78 */ mr r27, r5 +/* 801EF484 001EC3E4 7C DC 33 78 */ mr r28, r6 +/* 801EF488 001EC3E8 7C FD 3B 78 */ mr r29, r7 +/* 801EF48C 001EC3EC 7D 1E 43 78 */ mr r30, r8 +/* 801EF490 001EC3F0 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 801EF494 001EC3F4 4B E4 B3 11 */ bl CModelDataNull__10CModelDataFv +/* 801EF498 001EC3F8 38 61 00 50 */ addi r3, r1, 0x50 +/* 801EF49C 001EC3FC 4B E2 B9 9D */ bl None__16CActorParametersFv +/* 801EF4A0 001EC400 A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 801EF4A4 001EC404 38 00 00 00 */ li r0, 0 +/* 801EF4A8 001EC408 80 AD 92 68 */ lwz r5, lbl_805A7E28@sda21(r13) +/* 801EF4AC 001EC40C 38 60 00 00 */ li r3, 0 +/* 801EF4B0 001EC410 B0 81 00 10 */ sth r4, 0x10(r1) +/* 801EF4B4 001EC414 38 80 00 01 */ li r4, 1 +/* 801EF4B8 001EC418 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801EF4BC 001EC41C 90 01 00 18 */ stw r0, 0x18(r1) +/* 801EF4C0 001EC420 48 19 AA 35 */ bl __shl2i +/* 801EF4C4 001EC424 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 801EF4C8 001EC428 39 61 00 50 */ addi r11, r1, 0x50 +/* 801EF4CC 001EC42C 80 C1 00 1C */ lwz r6, 0x1c(r1) +/* 801EF4D0 001EC430 38 01 00 10 */ addi r0, r1, 0x10 +/* 801EF4D4 001EC434 7C A3 1B 78 */ or r3, r5, r3 +/* 801EF4D8 001EC438 A1 3A 00 00 */ lhz r9, 0(r26) +/* 801EF4DC 001EC43C 7C C4 23 78 */ or r4, r6, r4 +/* 801EF4E0 001EC440 90 61 00 18 */ stw r3, 0x18(r1) +/* 801EF4E4 001EC444 7F E3 FB 78 */ mr r3, r31 +/* 801EF4E8 001EC448 7F C5 F3 78 */ mr r5, r30 +/* 801EF4EC 001EC44C 90 81 00 1C */ stw r4, 0x1c(r1) +/* 801EF4F0 001EC450 7F 66 DB 78 */ mr r6, r27 +/* 801EF4F4 001EC454 7F 87 E3 78 */ mr r7, r28 +/* 801EF4F8 001EC458 7F A8 EB 78 */ mr r8, r29 +/* 801EF4FC 001EC45C B1 21 00 14 */ sth r9, 0x14(r1) +/* 801EF500 001EC460 38 81 00 14 */ addi r4, r1, 0x14 +/* 801EF504 001EC464 39 21 00 B8 */ addi r9, r1, 0xb8 +/* 801EF508 001EC468 39 41 00 18 */ addi r10, r1, 0x18 +/* 801EF50C 001EC46C 91 61 00 08 */ stw r11, 8(r1) +/* 801EF510 001EC470 90 01 00 0C */ stw r0, 0xc(r1) +/* 801EF514 001EC474 4B E6 63 0D */ bl "__ct__6CActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC16CActorParameters9TUniqueId" +/* 801EF518 001EC478 38 61 00 50 */ addi r3, r1, 0x50 +/* 801EF51C 001EC47C 38 80 FF FF */ li r4, -1 +/* 801EF520 001EC480 4B F1 70 E9 */ bl __dt__16CActorParametersFv +/* 801EF524 001EC484 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 801EF528 001EC488 38 80 FF FF */ li r4, -1 +/* 801EF52C 001EC48C 4B F2 75 21 */ bl __dt__10CModelDataFv +/* 801EF530 001EC490 3C 80 80 3E */ lis r4, lbl_803E6398@ha +/* 801EF534 001EC494 38 61 00 38 */ addi r3, r1, 0x38 +/* 801EF538 001EC498 38 04 63 98 */ addi r0, r4, lbl_803E6398@l +/* 801EF53C 001EC49C 38 81 00 2C */ addi r4, r1, 0x2c +/* 801EF540 001EC4A0 90 1F 00 00 */ stw r0, 0(r31) +/* 801EF544 001EC4A4 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801EF548 001EC4A8 D3 FF 00 E8 */ stfs f31, 0xe8(r31) +/* 801EF54C 001EC4AC C0 5D 00 2C */ lfs f2, 0x2c(r29) +/* 801EF550 001EC4B0 C0 3D 00 1C */ lfs f1, 0x1c(r29) +/* 801EF554 001EC4B4 C0 1D 00 0C */ lfs f0, 0xc(r29) +/* 801EF558 001EC4B8 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 801EF55C 001EC4BC D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801EF560 001EC4C0 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 801EF564 001EC4C4 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801EF568 001EC4C8 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 801EF56C 001EC4CC D0 41 00 34 */ stfs f2, 0x34(r1) +/* 801EF570 001EC4D0 48 14 8F 99 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801EF574 001EC4D4 38 00 00 01 */ li r0, 1 +/* 801EF578 001EC4D8 34 7F 00 EC */ addic. r3, r31, 0xec +/* 801EF57C 001EC4DC 98 1F 01 04 */ stb r0, 0x104(r31) +/* 801EF580 001EC4E0 41 82 00 34 */ beq lbl_801EF5B4 +/* 801EF584 001EC4E4 C0 01 00 38 */ lfs f0, 0x38(r1) +/* 801EF588 001EC4E8 D0 03 00 00 */ stfs f0, 0(r3) +/* 801EF58C 001EC4EC C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 801EF590 001EC4F0 D0 03 00 04 */ stfs f0, 4(r3) +/* 801EF594 001EC4F4 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 801EF598 001EC4F8 D0 03 00 08 */ stfs f0, 8(r3) +/* 801EF59C 001EC4FC C0 01 00 44 */ lfs f0, 0x44(r1) +/* 801EF5A0 001EC500 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 801EF5A4 001EC504 C0 01 00 48 */ lfs f0, 0x48(r1) +/* 801EF5A8 001EC508 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 801EF5AC 001EC50C C0 01 00 4C */ lfs f0, 0x4c(r1) +/* 801EF5B0 001EC510 D0 03 00 14 */ stfs f0, 0x14(r3) +lbl_801EF5B4: +/* 801EF5B4 001EC514 88 1F 01 08 */ lbz r0, 0x108(r31) +/* 801EF5B8 001EC518 38 60 00 00 */ li r3, 0 +/* 801EF5BC 001EC51C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801EF5C0 001EC520 C0 02 AE 40 */ lfs f0, lbl_805ACB60@sda21(r2) +/* 801EF5C4 001EC524 98 1F 01 08 */ stb r0, 0x108(r31) +/* 801EF5C8 001EC528 7F E3 FB 78 */ mr r3, r31 +/* 801EF5CC 001EC52C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801EF5D0 001EC530 B0 1F 01 0A */ sth r0, 0x10a(r31) +/* 801EF5D4 001EC534 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801EF5D8 001EC538 B0 1F 01 0C */ sth r0, 0x10c(r31) +/* 801EF5DC 001EC53C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801EF5E0 001EC540 B0 1F 01 0E */ sth r0, 0x10e(r31) +/* 801EF5E4 001EC544 D0 1F 01 10 */ stfs f0, 0x110(r31) +/* 801EF5E8 001EC548 E3 E1 01 28 */ psq_l f31, 296(r1), 0, qr0 +/* 801EF5EC 001EC54C CB E1 01 20 */ lfd f31, 0x120(r1) +/* 801EF5F0 001EC550 BB 41 01 08 */ lmw r26, 0x108(r1) +/* 801EF5F4 001EC554 80 01 01 34 */ lwz r0, 0x134(r1) +/* 801EF5F8 001EC558 7C 08 03 A6 */ mtlr r0 +/* 801EF5FC 001EC55C 38 21 01 30 */ addi r1, r1, 0x130 +/* 801EF600 001EC560 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/ScriptObjects/CScriptAreaAttributes.s b/asm/Kyoto_CWD/ScriptObjects/CScriptAreaAttributes.s new file mode 100644 index 00000000..f0fee8d6 --- /dev/null +++ b/asm/Kyoto_CWD/ScriptObjects/CScriptAreaAttributes.s @@ -0,0 +1,168 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__21CScriptAreaAttributesFv +__dt__21CScriptAreaAttributesFv: +/* 801BD448 001BA3A8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801BD44C 001BA3AC 7C 08 02 A6 */ mflr r0 +/* 801BD450 001BA3B0 90 01 00 14 */ stw r0, 0x14(r1) +/* 801BD454 001BA3B4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801BD458 001BA3B8 7C 9F 23 78 */ mr r31, r4 +/* 801BD45C 001BA3BC 93 C1 00 08 */ stw r30, 8(r1) +/* 801BD460 001BA3C0 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801BD464 001BA3C4 41 82 00 28 */ beq lbl_801BD48C +/* 801BD468 001BA3C8 3C A0 80 3E */ lis r5, lbl_803E52F8@ha +/* 801BD46C 001BA3CC 38 80 00 00 */ li r4, 0 +/* 801BD470 001BA3D0 38 05 52 F8 */ addi r0, r5, lbl_803E52F8@l +/* 801BD474 001BA3D4 90 1E 00 00 */ stw r0, 0(r30) +/* 801BD478 001BA3D8 4B E9 3D FD */ bl __dt__7CEntityFv +/* 801BD47C 001BA3DC 7F E0 07 35 */ extsh. r0, r31 +/* 801BD480 001BA3E0 40 81 00 0C */ ble lbl_801BD48C +/* 801BD484 001BA3E4 7F C3 F3 78 */ mr r3, r30 +/* 801BD488 001BA3E8 48 15 84 A9 */ bl Free__7CMemoryFPCv +lbl_801BD48C: +/* 801BD48C 001BA3EC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801BD490 001BA3F0 7F C3 F3 78 */ mr r3, r30 +/* 801BD494 001BA3F4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801BD498 001BA3F8 83 C1 00 08 */ lwz r30, 8(r1) +/* 801BD49C 001BA3FC 7C 08 03 A6 */ mtlr r0 +/* 801BD4A0 001BA400 38 21 00 10 */ addi r1, r1, 0x10 +/* 801BD4A4 001BA404 4E 80 00 20 */ blr + +.global Accept__21CScriptAreaAttributesFR8IVisitor +Accept__21CScriptAreaAttributesFR8IVisitor: +/* 801BD4A8 001BA408 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801BD4AC 001BA40C 7C 08 02 A6 */ mflr r0 +/* 801BD4B0 001BA410 90 01 00 14 */ stw r0, 0x14(r1) +/* 801BD4B4 001BA414 7C 60 1B 78 */ mr r0, r3 +/* 801BD4B8 001BA418 7C 83 23 78 */ mr r3, r4 +/* 801BD4BC 001BA41C 81 84 00 00 */ lwz r12, 0(r4) +/* 801BD4C0 001BA420 7C 04 03 78 */ mr r4, r0 +/* 801BD4C4 001BA424 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 801BD4C8 001BA428 7D 89 03 A6 */ mtctr r12 +/* 801BD4CC 001BA42C 4E 80 04 21 */ bctrl +/* 801BD4D0 001BA430 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801BD4D4 001BA434 7C 08 03 A6 */ mtlr r0 +/* 801BD4D8 001BA438 38 21 00 10 */ addi r1, r1, 0x10 +/* 801BD4DC 001BA43C 4E 80 00 20 */ blr + +.global AcceptScriptMsg__21CScriptAreaAttributesF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__21CScriptAreaAttributesF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 801BD4E0 001BA440 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801BD4E4 001BA444 7C 08 02 A6 */ mflr r0 +/* 801BD4E8 001BA448 90 01 00 44 */ stw r0, 0x44(r1) +/* 801BD4EC 001BA44C 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801BD4F0 001BA450 7C DF 33 78 */ mr r31, r6 +/* 801BD4F4 001BA454 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801BD4F8 001BA458 7C 9E 23 78 */ mr r30, r4 +/* 801BD4FC 001BA45C 93 A1 00 34 */ stw r29, 0x34(r1) +/* 801BD500 001BA460 7C 7D 1B 78 */ mr r29, r3 +/* 801BD504 001BA464 A0 05 00 00 */ lhz r0, 0(r5) +/* 801BD508 001BA468 38 A1 00 08 */ addi r5, r1, 8 +/* 801BD50C 001BA46C B0 01 00 08 */ sth r0, 8(r1) +/* 801BD510 001BA470 4B E9 3C 4D */ bl AcceptScriptMsg__7CEntityF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 801BD514 001BA474 80 BD 00 04 */ lwz r5, 4(r29) +/* 801BD518 001BA478 80 0D A3 90 */ lwz r0, lbl_805A8F50@sda21(r13) +/* 801BD51C 001BA47C 7C 05 00 00 */ cmpw r5, r0 +/* 801BD520 001BA480 41 82 00 8C */ beq lbl_801BD5AC +/* 801BD524 001BA484 2C 1E 00 23 */ cmpwi r30, 0x23 +/* 801BD528 001BA488 41 82 00 14 */ beq lbl_801BD53C +/* 801BD52C 001BA48C 40 80 00 80 */ bge lbl_801BD5AC +/* 801BD530 001BA490 2C 1E 00 22 */ cmpwi r30, 0x22 +/* 801BD534 001BA494 40 80 00 40 */ bge lbl_801BD574 +/* 801BD538 001BA498 48 00 00 74 */ b lbl_801BD5AC +lbl_801BD53C: +/* 801BD53C 001BA49C 80 9F 08 50 */ lwz r4, 0x850(r31) +/* 801BD540 001BA4A0 54 A3 18 38 */ slwi r3, r5, 3 +/* 801BD544 001BA4A4 38 03 00 04 */ addi r0, r3, 4 +/* 801BD548 001BA4A8 90 A1 00 20 */ stw r5, 0x20(r1) +/* 801BD54C 001BA4AC 80 64 00 20 */ lwz r3, 0x20(r4) +/* 801BD550 001BA4B0 7F A4 EB 78 */ mr r4, r29 +/* 801BD554 001BA4B4 90 A1 00 10 */ stw r5, 0x10(r1) +/* 801BD558 001BA4B8 7C 63 00 2E */ lwzx r3, r3, r0 +/* 801BD55C 001BA4BC 4B EA 0C B5 */ bl sub_8005e210 +/* 801BD560 001BA4C0 80 7F 08 80 */ lwz r3, 0x880(r31) +/* 801BD564 001BA4C4 38 80 01 F4 */ li r4, 0x1f4 +/* 801BD568 001BA4C8 C0 3D 00 3C */ lfs f1, 0x3c(r29) +/* 801BD56C 001BA4CC 48 05 29 F1 */ bl sub_8020ff5c +/* 801BD570 001BA4D0 48 00 00 3C */ b lbl_801BD5AC +lbl_801BD574: +/* 801BD574 001BA4D4 80 9F 08 50 */ lwz r4, 0x850(r31) +/* 801BD578 001BA4D8 54 A3 18 38 */ slwi r3, r5, 3 +/* 801BD57C 001BA4DC 38 03 00 04 */ addi r0, r3, 4 +/* 801BD580 001BA4E0 90 A1 00 18 */ stw r5, 0x18(r1) +/* 801BD584 001BA4E4 80 64 00 20 */ lwz r3, 0x20(r4) +/* 801BD588 001BA4E8 90 A1 00 1C */ stw r5, 0x1c(r1) +/* 801BD58C 001BA4EC 7C 63 00 2E */ lwzx r3, r3, r0 +/* 801BD590 001BA4F0 88 03 00 F0 */ lbz r0, 0xf0(r3) +/* 801BD594 001BA4F4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801BD598 001BA4F8 41 82 00 14 */ beq lbl_801BD5AC +/* 801BD59C 001BA4FC 90 A1 00 14 */ stw r5, 0x14(r1) +/* 801BD5A0 001BA500 38 80 00 00 */ li r4, 0 +/* 801BD5A4 001BA504 90 A1 00 0C */ stw r5, 0xc(r1) +/* 801BD5A8 001BA508 4B EA 0C 69 */ bl sub_8005e210 +lbl_801BD5AC: +/* 801BD5AC 001BA50C 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801BD5B0 001BA510 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801BD5B4 001BA514 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801BD5B8 001BA518 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 801BD5BC 001BA51C 7C 08 03 A6 */ mtlr r0 +/* 801BD5C0 001BA520 38 21 00 40 */ addi r1, r1, 0x40 +/* 801BD5C4 001BA524 4E 80 00 20 */ blr + +.global __ct__21CScriptAreaAttributesF9TUniqueIdRC11CEntityInfob10EEnvFxTypeffffi11EPhazonType +__ct__21CScriptAreaAttributesF9TUniqueIdRC11CEntityInfob10EEnvFxTypeffffi11EPhazonType: +/* 801BD5C8 001BA528 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801BD5CC 001BA52C 7C 08 02 A6 */ mflr r0 +/* 801BD5D0 001BA530 90 01 00 64 */ stw r0, 0x64(r1) +/* 801BD5D4 001BA534 39 61 00 60 */ addi r11, r1, 0x60 +/* 801BD5D8 001BA538 48 1C C4 11 */ bl sub_803899e8 +/* 801BD5DC 001BA53C BF 21 00 24 */ stmw r25, 0x24(r1) +/* 801BD5E0 001BA540 3D 40 80 3D */ lis r10, lbl_803D19F0@ha +/* 801BD5E4 001BA544 FF 80 08 90 */ fmr f28, f1 +/* 801BD5E8 001BA548 FF A0 10 90 */ fmr f29, f2 +/* 801BD5EC 001BA54C 38 0A 19 F0 */ addi r0, r10, lbl_803D19F0@l +/* 801BD5F0 001BA550 7C 79 1B 78 */ mr r25, r3 +/* 801BD5F4 001BA554 7C 9A 23 78 */ mr r26, r4 +/* 801BD5F8 001BA558 FF C0 18 90 */ fmr f30, f3 +/* 801BD5FC 001BA55C FF E0 20 90 */ fmr f31, f4 +/* 801BD600 001BA560 7C BB 2B 78 */ mr r27, r5 +/* 801BD604 001BA564 7C DC 33 78 */ mr r28, r6 +/* 801BD608 001BA568 7C FD 3B 78 */ mr r29, r7 +/* 801BD60C 001BA56C 7D 1E 43 78 */ mr r30, r8 +/* 801BD610 001BA570 7D 3F 4B 78 */ mr r31, r9 +/* 801BD614 001BA574 7C 04 03 78 */ mr r4, r0 +/* 801BD618 001BA578 38 61 00 0C */ addi r3, r1, 0xc +/* 801BD61C 001BA57C 4B E4 76 9D */ bl string_l__4rstlFPCc +/* 801BD620 001BA580 A0 1A 00 00 */ lhz r0, 0(r26) +/* 801BD624 001BA584 7F 23 CB 78 */ mr r3, r25 +/* 801BD628 001BA588 7F 65 DB 78 */ mr r5, r27 +/* 801BD62C 001BA58C 38 81 00 08 */ addi r4, r1, 8 +/* 801BD630 001BA590 B0 01 00 08 */ sth r0, 8(r1) +/* 801BD634 001BA594 38 E1 00 0C */ addi r7, r1, 0xc +/* 801BD638 001BA598 38 C0 00 01 */ li r6, 1 +/* 801BD63C 001BA59C 4B E9 3C E9 */ bl "__ct__7CEntityF9TUniqueIdRC11CEntityInfobRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801BD640 001BA5A0 38 61 00 0C */ addi r3, r1, 0xc +/* 801BD644 001BA5A4 48 18 04 9D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801BD648 001BA5A8 3C 60 80 3E */ lis r3, lbl_803E52F8@ha +/* 801BD64C 001BA5AC 39 61 00 60 */ addi r11, r1, 0x60 +/* 801BD650 001BA5B0 38 03 52 F8 */ addi r0, r3, lbl_803E52F8@l +/* 801BD654 001BA5B4 90 19 00 00 */ stw r0, 0(r25) +/* 801BD658 001BA5B8 7F 23 CB 78 */ mr r3, r25 +/* 801BD65C 001BA5BC 88 19 00 34 */ lbz r0, 0x34(r25) +/* 801BD660 001BA5C0 53 80 3E 30 */ rlwimi r0, r28, 7, 0x18, 0x18 +/* 801BD664 001BA5C4 98 19 00 34 */ stb r0, 0x34(r25) +/* 801BD668 001BA5C8 93 B9 00 38 */ stw r29, 0x38(r25) +/* 801BD66C 001BA5CC D3 99 00 3C */ stfs f28, 0x3c(r25) +/* 801BD670 001BA5D0 D3 B9 00 40 */ stfs f29, 0x40(r25) +/* 801BD674 001BA5D4 D3 D9 00 44 */ stfs f30, 0x44(r25) +/* 801BD678 001BA5D8 D3 F9 00 48 */ stfs f31, 0x48(r25) +/* 801BD67C 001BA5DC 93 D9 00 4C */ stw r30, 0x4c(r25) +/* 801BD680 001BA5E0 93 F9 00 50 */ stw r31, 0x50(r25) +/* 801BD684 001BA5E4 48 1C C3 B1 */ bl sub_80389a34 +/* 801BD688 001BA5E8 BB 21 00 24 */ lmw r25, 0x24(r1) +/* 801BD68C 001BA5EC 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801BD690 001BA5F0 7C 08 03 A6 */ mtlr r0 +/* 801BD694 001BA5F4 38 21 00 60 */ addi r1, r1, 0x60 +/* 801BD698 001BA5F8 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/ScriptObjects/CScriptCameraHintTrigger.s b/asm/Kyoto_CWD/ScriptObjects/CScriptCameraHintTrigger.s new file mode 100644 index 00000000..2514d254 --- /dev/null +++ b/asm/Kyoto_CWD/ScriptObjects/CScriptCameraHintTrigger.s @@ -0,0 +1,326 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__24CScriptCameraHintTriggerFv +__dt__24CScriptCameraHintTriggerFv: +/* 8024B39C 002482FC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024B3A0 00248300 7C 08 02 A6 */ mflr r0 +/* 8024B3A4 00248304 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024B3A8 00248308 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8024B3AC 0024830C 7C 9F 23 78 */ mr r31, r4 +/* 8024B3B0 00248310 93 C1 00 08 */ stw r30, 8(r1) +/* 8024B3B4 00248314 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8024B3B8 00248318 41 82 00 28 */ beq lbl_8024B3E0 +/* 8024B3BC 0024831C 3C A0 80 3F */ lis r5, lbl_803E8C40@ha +/* 8024B3C0 00248320 38 80 00 00 */ li r4, 0 +/* 8024B3C4 00248324 38 05 8C 40 */ addi r0, r5, lbl_803E8C40@l +/* 8024B3C8 00248328 90 1E 00 00 */ stw r0, 0(r30) +/* 8024B3CC 0024832C 4B E0 A3 25 */ bl __dt__6CActorFv +/* 8024B3D0 00248330 7F E0 07 35 */ extsh. r0, r31 +/* 8024B3D4 00248334 40 81 00 0C */ ble lbl_8024B3E0 +/* 8024B3D8 00248338 7F C3 F3 78 */ mr r3, r30 +/* 8024B3DC 0024833C 48 0C A5 55 */ bl Free__7CMemoryFPCv +lbl_8024B3E0: +/* 8024B3E0 00248340 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024B3E4 00248344 7F C3 F3 78 */ mr r3, r30 +/* 8024B3E8 00248348 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8024B3EC 0024834C 83 C1 00 08 */ lwz r30, 8(r1) +/* 8024B3F0 00248350 7C 08 03 A6 */ mtlr r0 +/* 8024B3F4 00248354 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024B3F8 00248358 4E 80 00 20 */ blr + +.global AcceptScriptMsg__24CScriptCameraHintTriggerF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__24CScriptCameraHintTriggerF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 8024B3FC 0024835C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8024B400 00248360 7C 08 02 A6 */ mflr r0 +/* 8024B404 00248364 90 01 00 24 */ stw r0, 0x24(r1) +/* 8024B408 00248368 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8024B40C 0024836C 7C 9F 23 78 */ mr r31, r4 +/* 8024B410 00248370 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8024B414 00248374 7C 7E 1B 78 */ mr r30, r3 +/* 8024B418 00248378 88 03 00 30 */ lbz r0, 0x30(r3) +/* 8024B41C 0024837C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8024B420 00248380 41 82 00 E8 */ beq lbl_8024B508 +/* 8024B424 00248384 88 9E 01 30 */ lbz r4, 0x130(r30) +/* 8024B428 00248388 54 80 DF FF */ rlwinm. r0, r4, 0x1b, 0x1f, 0x1f +/* 8024B42C 0024838C 41 82 00 50 */ beq lbl_8024B47C +/* 8024B430 00248390 54 80 E7 FF */ rlwinm. r0, r4, 0x1c, 0x1f, 0x1f +/* 8024B434 00248394 40 82 00 48 */ bne lbl_8024B47C +/* 8024B438 00248398 38 00 00 01 */ li r0, 1 +/* 8024B43C 0024839C 7F E5 FB 78 */ mr r5, r31 +/* 8024B440 002483A0 50 04 26 F6 */ rlwimi r4, r0, 4, 0x1b, 0x1b +/* 8024B444 002483A4 38 C0 FF FF */ li r6, -1 +/* 8024B448 002483A8 98 9E 01 30 */ stb r4, 0x130(r30) +/* 8024B44C 002483AC 38 80 00 03 */ li r4, 3 +/* 8024B450 002483B0 4B E0 5C 71 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 8024B454 002483B4 88 1E 01 30 */ lbz r0, 0x130(r30) +/* 8024B458 002483B8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8024B45C 002483BC 41 82 00 20 */ beq lbl_8024B47C +/* 8024B460 002483C0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8024B464 002483C4 7F E3 FB 78 */ mr r3, r31 +/* 8024B468 002483C8 7F C4 F3 78 */ mr r4, r30 +/* 8024B46C 002483CC 38 A1 00 0C */ addi r5, r1, 0xc +/* 8024B470 002483D0 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8024B474 002483D4 38 C0 00 04 */ li r6, 4 +/* 8024B478 002483D8 4B DF 8A 59 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +lbl_8024B47C: +/* 8024B47C 002483DC 88 9E 01 30 */ lbz r4, 0x130(r30) +/* 8024B480 002483E0 54 80 DF FF */ rlwinm. r0, r4, 0x1b, 0x1f, 0x1f +/* 8024B484 002483E4 40 82 00 54 */ bne lbl_8024B4D8 +/* 8024B488 002483E8 54 80 E7 FF */ rlwinm. r0, r4, 0x1c, 0x1f, 0x1f +/* 8024B48C 002483EC 41 82 00 4C */ beq lbl_8024B4D8 +/* 8024B490 002483F0 38 00 00 00 */ li r0, 0 +/* 8024B494 002483F4 7F C3 F3 78 */ mr r3, r30 +/* 8024B498 002483F8 50 04 26 F6 */ rlwimi r4, r0, 4, 0x1b, 0x1b +/* 8024B49C 002483FC 7F E5 FB 78 */ mr r5, r31 +/* 8024B4A0 00248400 98 9E 01 30 */ stb r4, 0x130(r30) +/* 8024B4A4 00248404 38 80 00 04 */ li r4, 4 +/* 8024B4A8 00248408 38 C0 FF FF */ li r6, -1 +/* 8024B4AC 0024840C 4B E0 5C 15 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 8024B4B0 00248410 88 1E 01 30 */ lbz r0, 0x130(r30) +/* 8024B4B4 00248414 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8024B4B8 00248418 41 82 00 20 */ beq lbl_8024B4D8 +/* 8024B4BC 0024841C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8024B4C0 00248420 7F E3 FB 78 */ mr r3, r31 +/* 8024B4C4 00248424 7F C4 F3 78 */ mr r4, r30 +/* 8024B4C8 00248428 38 A1 00 08 */ addi r5, r1, 8 +/* 8024B4CC 0024842C B0 01 00 08 */ sth r0, 8(r1) +/* 8024B4D0 00248430 38 C0 00 04 */ li r6, 4 +/* 8024B4D4 00248434 4B DF 89 FD */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +lbl_8024B4D8: +/* 8024B4D8 00248438 88 1E 01 30 */ lbz r0, 0x130(r30) +/* 8024B4DC 0024843C 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 8024B4E0 00248440 41 82 00 18 */ beq lbl_8024B4F8 +/* 8024B4E4 00248444 7F C3 F3 78 */ mr r3, r30 +/* 8024B4E8 00248448 7F E5 FB 78 */ mr r5, r31 +/* 8024B4EC 0024844C 38 80 00 06 */ li r4, 6 +/* 8024B4F0 00248450 38 C0 FF FF */ li r6, -1 +/* 8024B4F4 00248454 4B E0 5B CD */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +lbl_8024B4F8: +/* 8024B4F8 00248458 88 1E 01 30 */ lbz r0, 0x130(r30) +/* 8024B4FC 0024845C 38 60 00 00 */ li r3, 0 +/* 8024B500 00248460 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 8024B504 00248464 98 1E 01 30 */ stb r0, 0x130(r30) +lbl_8024B508: +/* 8024B508 00248468 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8024B50C 0024846C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8024B510 00248470 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8024B514 00248474 7C 08 03 A6 */ mtlr r0 +/* 8024B518 00248478 38 21 00 20 */ addi r1, r1, 0x20 +/* 8024B51C 0024847C 4E 80 00 20 */ blr + +.global Touch__24CScriptCameraHintTriggerFR6CActorR13CStateManager +Touch__24CScriptCameraHintTriggerFR6CActorR13CStateManager: +/* 8024B520 00248480 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 8024B524 00248484 7C 08 02 A6 */ mflr r0 +/* 8024B528 00248488 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 8024B52C 0024848C 93 E1 00 CC */ stw r31, 0xcc(r1) +/* 8024B530 00248490 7C 9F 23 78 */ mr r31, r4 +/* 8024B534 00248494 93 C1 00 C8 */ stw r30, 0xc8(r1) +/* 8024B538 00248498 7C 7E 1B 78 */ mr r30, r3 +/* 8024B53C 0024849C 38 61 00 08 */ addi r3, r1, 8 +/* 8024B540 002484A0 4B E6 0E C1 */ bl "__ct__20TCastToPtr<7CPlayer>FR7CEntity" +/* 8024B544 002484A4 80 03 00 04 */ lwz r0, 4(r3) +/* 8024B548 002484A8 28 00 00 00 */ cmplwi r0, 0 +/* 8024B54C 002484AC 41 82 00 D0 */ beq lbl_8024B61C +/* 8024B550 002484B0 7F E4 FB 78 */ mr r4, r31 +/* 8024B554 002484B4 38 61 00 10 */ addi r3, r1, 0x10 +/* 8024B558 002484B8 81 9F 00 00 */ lwz r12, 0(r31) +/* 8024B55C 002484BC 81 8C 00 40 */ lwz r12, 0x40(r12) +/* 8024B560 002484C0 7D 89 03 A6 */ mtctr r12 +/* 8024B564 002484C4 4E 80 04 21 */ bctrl +/* 8024B568 002484C8 88 01 00 28 */ lbz r0, 0x28(r1) +/* 8024B56C 002484CC 28 00 00 00 */ cmplwi r0, 0 +/* 8024B570 002484D0 98 01 00 44 */ stb r0, 0x44(r1) +/* 8024B574 002484D4 41 82 00 3C */ beq lbl_8024B5B0 +/* 8024B578 002484D8 34 61 00 2C */ addic. r3, r1, 0x2c +/* 8024B57C 002484DC 41 82 00 34 */ beq lbl_8024B5B0 +/* 8024B580 002484E0 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 8024B584 002484E4 D0 03 00 00 */ stfs f0, 0(r3) +/* 8024B588 002484E8 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 8024B58C 002484EC D0 03 00 04 */ stfs f0, 4(r3) +/* 8024B590 002484F0 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 8024B594 002484F4 D0 03 00 08 */ stfs f0, 8(r3) +/* 8024B598 002484F8 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 8024B59C 002484FC D0 03 00 0C */ stfs f0, 0xc(r3) +/* 8024B5A0 00248500 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 8024B5A4 00248504 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 8024B5A8 00248508 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 8024B5AC 0024850C D0 03 00 14 */ stfs f0, 0x14(r3) +lbl_8024B5B0: +/* 8024B5B0 00248510 88 01 00 44 */ lbz r0, 0x44(r1) +/* 8024B5B4 00248514 38 60 00 00 */ li r3, 0 +/* 8024B5B8 00248518 98 61 00 28 */ stb r3, 0x28(r1) +/* 8024B5BC 0024851C 28 00 00 00 */ cmplwi r0, 0 +/* 8024B5C0 00248520 41 82 00 54 */ beq lbl_8024B614 +/* 8024B5C4 00248524 3C 80 80 5A */ lis r4, skIdentity4f@ha +/* 8024B5C8 00248528 38 61 00 48 */ addi r3, r1, 0x48 +/* 8024B5CC 0024852C 38 A4 66 70 */ addi r5, r4, skIdentity4f@l +/* 8024B5D0 00248530 38 81 00 2C */ addi r4, r1, 0x2c +/* 8024B5D4 00248534 48 08 A7 49 */ bl FromAABox__6COBBoxFRC6CAABoxRC12CTransform4f +/* 8024B5D8 00248538 38 61 00 84 */ addi r3, r1, 0x84 +/* 8024B5DC 0024853C 38 81 00 48 */ addi r4, r1, 0x48 +/* 8024B5E0 00248540 48 0C 75 95 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8024B5E4 00248544 C0 41 00 78 */ lfs f2, 0x78(r1) +/* 8024B5E8 00248548 38 7E 00 E8 */ addi r3, r30, 0xe8 +/* 8024B5EC 0024854C C0 21 00 7C */ lfs f1, 0x7c(r1) +/* 8024B5F0 00248550 38 81 00 84 */ addi r4, r1, 0x84 +/* 8024B5F4 00248554 C0 01 00 80 */ lfs f0, 0x80(r1) +/* 8024B5F8 00248558 D0 41 00 B4 */ stfs f2, 0xb4(r1) +/* 8024B5FC 0024855C D0 21 00 B8 */ stfs f1, 0xb8(r1) +/* 8024B600 00248560 D0 01 00 BC */ stfs f0, 0xbc(r1) +/* 8024B604 00248564 48 08 9E 91 */ bl OBBIntersectsBox__6COBBoxCFRC6COBBox +/* 8024B608 00248568 88 1E 01 30 */ lbz r0, 0x130(r30) +/* 8024B60C 0024856C 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 8024B610 00248570 98 1E 01 30 */ stb r0, 0x130(r30) +lbl_8024B614: +/* 8024B614 00248574 38 00 00 00 */ li r0, 0 +/* 8024B618 00248578 98 01 00 44 */ stb r0, 0x44(r1) +lbl_8024B61C: +/* 8024B61C 0024857C 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 8024B620 00248580 83 E1 00 CC */ lwz r31, 0xcc(r1) +/* 8024B624 00248584 83 C1 00 C8 */ lwz r30, 0xc8(r1) +/* 8024B628 00248588 7C 08 03 A6 */ mtlr r0 +/* 8024B62C 0024858C 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 8024B630 00248590 4E 80 00 20 */ blr + +.global GetTouchBounds__24CScriptCameraHintTriggerCFv +GetTouchBounds__24CScriptCameraHintTriggerCFv: +/* 8024B634 00248594 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8024B638 00248598 7C 08 02 A6 */ mflr r0 +/* 8024B63C 0024859C 3C A0 80 5A */ lis r5, skIdentity4f@ha +/* 8024B640 002485A0 38 84 00 E8 */ addi r4, r4, 0xe8 +/* 8024B644 002485A4 90 01 00 34 */ stw r0, 0x34(r1) +/* 8024B648 002485A8 38 A5 66 70 */ addi r5, r5, skIdentity4f@l +/* 8024B64C 002485AC 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8024B650 002485B0 7C 7F 1B 78 */ mr r31, r3 +/* 8024B654 002485B4 38 61 00 08 */ addi r3, r1, 8 +/* 8024B658 002485B8 48 08 A7 81 */ bl CalculateAABox__6COBBoxCFRC12CTransform4f +/* 8024B65C 002485BC 38 00 00 01 */ li r0, 1 +/* 8024B660 002485C0 28 1F 00 00 */ cmplwi r31, 0 +/* 8024B664 002485C4 98 1F 00 18 */ stb r0, 0x18(r31) +/* 8024B668 002485C8 41 82 00 34 */ beq lbl_8024B69C +/* 8024B66C 002485CC C0 01 00 08 */ lfs f0, 8(r1) +/* 8024B670 002485D0 D0 1F 00 00 */ stfs f0, 0(r31) +/* 8024B674 002485D4 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 8024B678 002485D8 D0 1F 00 04 */ stfs f0, 4(r31) +/* 8024B67C 002485DC C0 01 00 10 */ lfs f0, 0x10(r1) +/* 8024B680 002485E0 D0 1F 00 08 */ stfs f0, 8(r31) +/* 8024B684 002485E4 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 8024B688 002485E8 D0 1F 00 0C */ stfs f0, 0xc(r31) +/* 8024B68C 002485EC C0 01 00 18 */ lfs f0, 0x18(r1) +/* 8024B690 002485F0 D0 1F 00 10 */ stfs f0, 0x10(r31) +/* 8024B694 002485F4 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 8024B698 002485F8 D0 1F 00 14 */ stfs f0, 0x14(r31) +lbl_8024B69C: +/* 8024B69C 002485FC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8024B6A0 00248600 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8024B6A4 00248604 7C 08 03 A6 */ mtlr r0 +/* 8024B6A8 00248608 38 21 00 30 */ addi r1, r1, 0x30 +/* 8024B6AC 0024860C 4E 80 00 20 */ blr + +.global Accept__24CScriptCameraHintTriggerFR8IVisitor +Accept__24CScriptCameraHintTriggerFR8IVisitor: +/* 8024B6B0 00248610 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8024B6B4 00248614 7C 08 02 A6 */ mflr r0 +/* 8024B6B8 00248618 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024B6BC 0024861C 7C 60 1B 78 */ mr r0, r3 +/* 8024B6C0 00248620 7C 83 23 78 */ mr r3, r4 +/* 8024B6C4 00248624 81 84 00 00 */ lwz r12, 0(r4) +/* 8024B6C8 00248628 7C 04 03 78 */ mr r4, r0 +/* 8024B6CC 0024862C 81 8C 00 08 */ lwz r12, 8(r12) +/* 8024B6D0 00248630 7D 89 03 A6 */ mtctr r12 +/* 8024B6D4 00248634 4E 80 04 21 */ bctrl +/* 8024B6D8 00248638 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024B6DC 0024863C 7C 08 03 A6 */ mtlr r0 +/* 8024B6E0 00248640 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024B6E4 00248644 4E 80 00 20 */ blr + +.global "__ct__24CScriptCameraHintTriggerF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3fRC12CTransform4fbb" +"__ct__24CScriptCameraHintTriggerF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3fRC12CTransform4fbb": +/* 8024B6E8 00248648 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 8024B6EC 0024864C 7C 08 02 A6 */ mflr r0 +/* 8024B6F0 00248650 90 01 01 04 */ stw r0, 0x104(r1) +/* 8024B6F4 00248654 BE E1 00 DC */ stmw r23, 0xdc(r1) +/* 8024B6F8 00248658 7C 78 1B 78 */ mr r24, r3 +/* 8024B6FC 0024865C 8B E1 01 0B */ lbz r31, 0x10b(r1) +/* 8024B700 00248660 7C 97 23 78 */ mr r23, r4 +/* 8024B704 00248664 7C B9 2B 78 */ mr r25, r5 +/* 8024B708 00248668 7C DA 33 78 */ mr r26, r6 +/* 8024B70C 0024866C 7C FB 3B 78 */ mr r27, r7 +/* 8024B710 00248670 7D 1C 43 78 */ mr r28, r8 +/* 8024B714 00248674 7D 3D 4B 78 */ mr r29, r9 +/* 8024B718 00248678 7D 5E 53 78 */ mr r30, r10 +/* 8024B71C 0024867C 38 61 00 88 */ addi r3, r1, 0x88 +/* 8024B720 00248680 4B DE F0 85 */ bl CModelDataNull__10CModelDataFv +/* 8024B724 00248684 38 61 00 20 */ addi r3, r1, 0x20 +/* 8024B728 00248688 4B DC F7 11 */ bl None__16CActorParametersFv +/* 8024B72C 0024868C A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 8024B730 00248690 38 00 00 00 */ li r0, 0 +/* 8024B734 00248694 80 AD 97 08 */ lwz r5, lbl_805A82C8@sda21(r13) +/* 8024B738 00248698 38 60 00 00 */ li r3, 0 +/* 8024B73C 0024869C B0 81 00 10 */ sth r4, 0x10(r1) +/* 8024B740 002486A0 38 80 00 01 */ li r4, 1 +/* 8024B744 002486A4 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8024B748 002486A8 90 01 00 18 */ stw r0, 0x18(r1) +/* 8024B74C 002486AC 48 13 E7 A9 */ bl __shl2i +/* 8024B750 002486B0 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 8024B754 002486B4 39 61 00 20 */ addi r11, r1, 0x20 +/* 8024B758 002486B8 80 C1 00 1C */ lwz r6, 0x1c(r1) +/* 8024B75C 002486BC 38 01 00 10 */ addi r0, r1, 0x10 +/* 8024B760 002486C0 7C A3 1B 78 */ or r3, r5, r3 +/* 8024B764 002486C4 A1 37 00 00 */ lhz r9, 0(r23) +/* 8024B768 002486C8 7C C4 23 78 */ or r4, r6, r4 +/* 8024B76C 002486CC 90 61 00 18 */ stw r3, 0x18(r1) +/* 8024B770 002486D0 7F 03 C3 78 */ mr r3, r24 +/* 8024B774 002486D4 7F 25 CB 78 */ mr r5, r25 +/* 8024B778 002486D8 90 81 00 1C */ stw r4, 0x1c(r1) +/* 8024B77C 002486DC 7F 46 D3 78 */ mr r6, r26 +/* 8024B780 002486E0 7F 67 DB 78 */ mr r7, r27 +/* 8024B784 002486E4 7F A8 EB 78 */ mr r8, r29 +/* 8024B788 002486E8 B1 21 00 14 */ sth r9, 0x14(r1) +/* 8024B78C 002486EC 38 81 00 14 */ addi r4, r1, 0x14 +/* 8024B790 002486F0 39 21 00 88 */ addi r9, r1, 0x88 +/* 8024B794 002486F4 39 41 00 18 */ addi r10, r1, 0x18 +/* 8024B798 002486F8 91 61 00 08 */ stw r11, 8(r1) +/* 8024B79C 002486FC 90 01 00 0C */ stw r0, 0xc(r1) +/* 8024B7A0 00248700 4B E0 A0 81 */ bl "__ct__6CActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC16CActorParameters9TUniqueId" +/* 8024B7A4 00248704 38 61 00 20 */ addi r3, r1, 0x20 +/* 8024B7A8 00248708 38 80 FF FF */ li r4, -1 +/* 8024B7AC 0024870C 4B EB AE 5D */ bl __dt__16CActorParametersFv +/* 8024B7B0 00248710 38 61 00 88 */ addi r3, r1, 0x88 +/* 8024B7B4 00248714 38 80 FF FF */ li r4, -1 +/* 8024B7B8 00248718 4B EC B2 95 */ bl __dt__10CModelDataFv +/* 8024B7BC 0024871C 3C 60 80 3F */ lis r3, lbl_803E8C40@ha +/* 8024B7C0 00248720 7F A4 EB 78 */ mr r4, r29 +/* 8024B7C4 00248724 38 03 8C 40 */ addi r0, r3, lbl_803E8C40@l +/* 8024B7C8 00248728 7F 85 E3 78 */ mr r5, r28 +/* 8024B7CC 0024872C 90 18 00 00 */ stw r0, 0(r24) +/* 8024B7D0 00248730 38 78 00 E8 */ addi r3, r24, 0xe8 +/* 8024B7D4 00248734 48 08 A7 C1 */ bl __ct__6COBBoxFRC12CTransform4fRC9CVector3f +/* 8024B7D8 00248738 C0 1C 00 00 */ lfs f0, 0(r28) +/* 8024B7DC 0024873C 38 80 00 00 */ li r4, 0 +/* 8024B7E0 00248740 7F 03 C3 78 */ mr r3, r24 +/* 8024B7E4 00248744 D0 18 01 24 */ stfs f0, 0x124(r24) +/* 8024B7E8 00248748 C0 1C 00 04 */ lfs f0, 4(r28) +/* 8024B7EC 0024874C D0 18 01 28 */ stfs f0, 0x128(r24) +/* 8024B7F0 00248750 C0 1C 00 08 */ lfs f0, 8(r28) +/* 8024B7F4 00248754 D0 18 01 2C */ stfs f0, 0x12c(r24) +/* 8024B7F8 00248758 88 18 01 30 */ lbz r0, 0x130(r24) +/* 8024B7FC 0024875C 53 C0 3E 30 */ rlwimi r0, r30, 7, 0x18, 0x18 +/* 8024B800 00248760 98 18 01 30 */ stb r0, 0x130(r24) +/* 8024B804 00248764 88 18 01 30 */ lbz r0, 0x130(r24) +/* 8024B808 00248768 53 E0 36 72 */ rlwimi r0, r31, 6, 0x19, 0x19 +/* 8024B80C 0024876C 98 18 01 30 */ stb r0, 0x130(r24) +/* 8024B810 00248770 88 18 01 30 */ lbz r0, 0x130(r24) +/* 8024B814 00248774 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 8024B818 00248778 98 18 01 30 */ stb r0, 0x130(r24) +/* 8024B81C 0024877C 88 18 01 30 */ lbz r0, 0x130(r24) +/* 8024B820 00248780 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 8024B824 00248784 98 18 01 30 */ stb r0, 0x130(r24) +/* 8024B828 00248788 BA E1 00 DC */ lmw r23, 0xdc(r1) +/* 8024B82C 0024878C 80 01 01 04 */ lwz r0, 0x104(r1) +/* 8024B830 00248790 7C 08 03 A6 */ mtlr r0 +/* 8024B834 00248794 38 21 01 00 */ addi r1, r1, 0x100 +/* 8024B838 00248798 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/ScriptObjects/CScriptCameraPitchVolume.s b/asm/Kyoto_CWD/ScriptObjects/CScriptCameraPitchVolume.s new file mode 100644 index 00000000..db9c4d5e --- /dev/null +++ b/asm/Kyoto_CWD/ScriptObjects/CScriptCameraPitchVolume.s @@ -0,0 +1,352 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__24CScriptCameraPitchVolumeFv +__dt__24CScriptCameraPitchVolumeFv: +/* 802264D4 00223434 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 802264D8 00223438 7C 08 02 A6 */ mflr r0 +/* 802264DC 0022343C 90 01 00 14 */ stw r0, 0x14(r1) +/* 802264E0 00223440 93 E1 00 0C */ stw r31, 0xc(r1) +/* 802264E4 00223444 7C 9F 23 78 */ mr r31, r4 +/* 802264E8 00223448 93 C1 00 08 */ stw r30, 8(r1) +/* 802264EC 0022344C 7C 7E 1B 79 */ or. r30, r3, r3 +/* 802264F0 00223450 41 82 00 28 */ beq lbl_80226518 +/* 802264F4 00223454 3C A0 80 3E */ lis r5, lbl_803E7A70@ha +/* 802264F8 00223458 38 80 00 00 */ li r4, 0 +/* 802264FC 0022345C 38 05 7A 70 */ addi r0, r5, lbl_803E7A70@l +/* 80226500 00223460 90 1E 00 00 */ stw r0, 0(r30) +/* 80226504 00223464 4B E2 F1 ED */ bl __dt__6CActorFv +/* 80226508 00223468 7F E0 07 35 */ extsh. r0, r31 +/* 8022650C 0022346C 40 81 00 0C */ ble lbl_80226518 +/* 80226510 00223470 7F C3 F3 78 */ mr r3, r30 +/* 80226514 00223474 48 0E F4 1D */ bl Free__7CMemoryFPCv +lbl_80226518: +/* 80226518 00223478 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8022651C 0022347C 7F C3 F3 78 */ mr r3, r30 +/* 80226520 00223480 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80226524 00223484 83 C1 00 08 */ lwz r30, 8(r1) +/* 80226528 00223488 7C 08 03 A6 */ mtlr r0 +/* 8022652C 0022348C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80226530 00223490 4E 80 00 20 */ blr + +.global Exited__24CScriptCameraPitchVolumeFR13CStateManager +Exited__24CScriptCameraPitchVolumeFR13CStateManager: +/* 80226534 00223494 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80226538 00223498 38 A0 00 00 */ li r5, 0 +/* 8022653C 0022349C 88 03 01 3C */ lbz r0, 0x13c(r3) +/* 80226540 002234A0 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 80226544 002234A4 98 03 01 3C */ stb r0, 0x13c(r3) +/* 80226548 002234A8 80 64 08 70 */ lwz r3, 0x870(r4) +/* 8022654C 002234AC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80226550 002234B0 80 63 00 7C */ lwz r3, 0x7c(r3) +/* 80226554 002234B4 B0 01 00 08 */ sth r0, 8(r1) +/* 80226558 002234B8 B0 03 01 C4 */ sth r0, 0x1c4(r3) +/* 8022655C 002234BC 38 21 00 10 */ addi r1, r1, 0x10 +/* 80226560 002234C0 4E 80 00 20 */ blr + +.global Entered__24CScriptCameraPitchVolumeFR13CStateManager +Entered__24CScriptCameraPitchVolumeFR13CStateManager: +/* 80226564 002234C4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80226568 002234C8 38 A0 00 01 */ li r5, 1 +/* 8022656C 002234CC 88 03 01 3C */ lbz r0, 0x13c(r3) +/* 80226570 002234D0 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 80226574 002234D4 98 03 01 3C */ stb r0, 0x13c(r3) +/* 80226578 002234D8 80 84 08 70 */ lwz r4, 0x870(r4) +/* 8022657C 002234DC A0 03 00 08 */ lhz r0, 8(r3) +/* 80226580 002234E0 80 64 00 7C */ lwz r3, 0x7c(r4) +/* 80226584 002234E4 B0 01 00 08 */ sth r0, 8(r1) +/* 80226588 002234E8 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8022658C 002234EC B0 03 01 C4 */ sth r0, 0x1c4(r3) +/* 80226590 002234F0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80226594 002234F4 4E 80 00 20 */ blr + +.global Think__24CScriptCameraPitchVolumeFfR13CStateManager +Think__24CScriptCameraPitchVolumeFfR13CStateManager: +/* 80226598 002234F8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8022659C 002234FC 7C 08 02 A6 */ mflr r0 +/* 802265A0 00223500 90 01 00 14 */ stw r0, 0x14(r1) +/* 802265A4 00223504 93 E1 00 0C */ stw r31, 0xc(r1) +/* 802265A8 00223508 7C 9F 23 78 */ mr r31, r4 +/* 802265AC 0022350C 93 C1 00 08 */ stw r30, 8(r1) +/* 802265B0 00223510 7C 7E 1B 78 */ mr r30, r3 +/* 802265B4 00223514 88 03 00 30 */ lbz r0, 0x30(r3) +/* 802265B8 00223518 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 802265BC 0022351C 41 82 00 4C */ beq lbl_80226608 +/* 802265C0 00223520 88 BE 01 3C */ lbz r5, 0x13c(r30) +/* 802265C4 00223524 54 A0 CF FF */ rlwinm. r0, r5, 0x19, 0x1f, 0x1f +/* 802265C8 00223528 41 82 00 10 */ beq lbl_802265D8 +/* 802265CC 0022352C 54 A0 D7 FF */ rlwinm. r0, r5, 0x1a, 0x1f, 0x1f +/* 802265D0 00223530 40 82 00 08 */ bne lbl_802265D8 +/* 802265D4 00223534 4B FF FF 91 */ bl Entered__24CScriptCameraPitchVolumeFR13CStateManager +lbl_802265D8: +/* 802265D8 00223538 88 7E 01 3C */ lbz r3, 0x13c(r30) +/* 802265DC 0022353C 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f +/* 802265E0 00223540 40 82 00 18 */ bne lbl_802265F8 +/* 802265E4 00223544 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f +/* 802265E8 00223548 41 82 00 10 */ beq lbl_802265F8 +/* 802265EC 0022354C 7F C3 F3 78 */ mr r3, r30 +/* 802265F0 00223550 7F E4 FB 78 */ mr r4, r31 +/* 802265F4 00223554 4B FF FF 41 */ bl Exited__24CScriptCameraPitchVolumeFR13CStateManager +lbl_802265F8: +/* 802265F8 00223558 88 1E 01 3C */ lbz r0, 0x13c(r30) +/* 802265FC 0022355C 38 60 00 00 */ li r3, 0 +/* 80226600 00223560 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80226604 00223564 98 1E 01 3C */ stb r0, 0x13c(r30) +lbl_80226608: +/* 80226608 00223568 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8022660C 0022356C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80226610 00223570 83 C1 00 08 */ lwz r30, 8(r1) +/* 80226614 00223574 7C 08 03 A6 */ mtlr r0 +/* 80226618 00223578 38 21 00 10 */ addi r1, r1, 0x10 +/* 8022661C 0022357C 4E 80 00 20 */ blr + +.global Touch__24CScriptCameraPitchVolumeFR6CActorR13CStateManager +Touch__24CScriptCameraPitchVolumeFR6CActorR13CStateManager: +/* 80226620 00223580 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 80226624 00223584 7C 08 02 A6 */ mflr r0 +/* 80226628 00223588 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 8022662C 0022358C 93 E1 00 CC */ stw r31, 0xcc(r1) +/* 80226630 00223590 7C 9F 23 78 */ mr r31, r4 +/* 80226634 00223594 93 C1 00 C8 */ stw r30, 0xc8(r1) +/* 80226638 00223598 7C 7E 1B 78 */ mr r30, r3 +/* 8022663C 0022359C 38 61 00 08 */ addi r3, r1, 8 +/* 80226640 002235A0 4B E8 5D C1 */ bl "__ct__20TCastToPtr<7CPlayer>FR7CEntity" +/* 80226644 002235A4 80 03 00 04 */ lwz r0, 4(r3) +/* 80226648 002235A8 28 00 00 00 */ cmplwi r0, 0 +/* 8022664C 002235AC 41 82 00 D0 */ beq lbl_8022671C +/* 80226650 002235B0 7F E4 FB 78 */ mr r4, r31 +/* 80226654 002235B4 38 61 00 10 */ addi r3, r1, 0x10 +/* 80226658 002235B8 81 9F 00 00 */ lwz r12, 0(r31) +/* 8022665C 002235BC 81 8C 00 40 */ lwz r12, 0x40(r12) +/* 80226660 002235C0 7D 89 03 A6 */ mtctr r12 +/* 80226664 002235C4 4E 80 04 21 */ bctrl +/* 80226668 002235C8 88 01 00 28 */ lbz r0, 0x28(r1) +/* 8022666C 002235CC 28 00 00 00 */ cmplwi r0, 0 +/* 80226670 002235D0 98 01 00 44 */ stb r0, 0x44(r1) +/* 80226674 002235D4 41 82 00 3C */ beq lbl_802266B0 +/* 80226678 002235D8 34 61 00 2C */ addic. r3, r1, 0x2c +/* 8022667C 002235DC 41 82 00 34 */ beq lbl_802266B0 +/* 80226680 002235E0 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 80226684 002235E4 D0 03 00 00 */ stfs f0, 0(r3) +/* 80226688 002235E8 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 8022668C 002235EC D0 03 00 04 */ stfs f0, 4(r3) +/* 80226690 002235F0 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 80226694 002235F4 D0 03 00 08 */ stfs f0, 8(r3) +/* 80226698 002235F8 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 8022669C 002235FC D0 03 00 0C */ stfs f0, 0xc(r3) +/* 802266A0 00223600 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 802266A4 00223604 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 802266A8 00223608 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 802266AC 0022360C D0 03 00 14 */ stfs f0, 0x14(r3) +lbl_802266B0: +/* 802266B0 00223610 88 01 00 44 */ lbz r0, 0x44(r1) +/* 802266B4 00223614 38 60 00 00 */ li r3, 0 +/* 802266B8 00223618 98 61 00 28 */ stb r3, 0x28(r1) +/* 802266BC 0022361C 28 00 00 00 */ cmplwi r0, 0 +/* 802266C0 00223620 41 82 00 54 */ beq lbl_80226714 +/* 802266C4 00223624 3C 80 80 5A */ lis r4, skIdentity4f@ha +/* 802266C8 00223628 38 61 00 48 */ addi r3, r1, 0x48 +/* 802266CC 0022362C 38 A4 66 70 */ addi r5, r4, skIdentity4f@l +/* 802266D0 00223630 38 81 00 2C */ addi r4, r1, 0x2c +/* 802266D4 00223634 48 0A F6 49 */ bl FromAABox__6COBBoxFRC6CAABoxRC12CTransform4f +/* 802266D8 00223638 38 61 00 84 */ addi r3, r1, 0x84 +/* 802266DC 0022363C 38 81 00 48 */ addi r4, r1, 0x48 +/* 802266E0 00223640 48 0E C4 95 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 802266E4 00223644 C0 41 00 78 */ lfs f2, 0x78(r1) +/* 802266E8 00223648 38 7E 00 E8 */ addi r3, r30, 0xe8 +/* 802266EC 0022364C C0 21 00 7C */ lfs f1, 0x7c(r1) +/* 802266F0 00223650 38 81 00 84 */ addi r4, r1, 0x84 +/* 802266F4 00223654 C0 01 00 80 */ lfs f0, 0x80(r1) +/* 802266F8 00223658 D0 41 00 B4 */ stfs f2, 0xb4(r1) +/* 802266FC 0022365C D0 21 00 B8 */ stfs f1, 0xb8(r1) +/* 80226700 00223660 D0 01 00 BC */ stfs f0, 0xbc(r1) +/* 80226704 00223664 48 0A ED 91 */ bl OBBIntersectsBox__6COBBoxCFRC6COBBox +/* 80226708 00223668 88 1E 01 3C */ lbz r0, 0x13c(r30) +/* 8022670C 0022366C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80226710 00223670 98 1E 01 3C */ stb r0, 0x13c(r30) +lbl_80226714: +/* 80226714 00223674 38 00 00 00 */ li r0, 0 +/* 80226718 00223678 98 01 00 44 */ stb r0, 0x44(r1) +lbl_8022671C: +/* 8022671C 0022367C 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 80226720 00223680 83 E1 00 CC */ lwz r31, 0xcc(r1) +/* 80226724 00223684 83 C1 00 C8 */ lwz r30, 0xc8(r1) +/* 80226728 00223688 7C 08 03 A6 */ mtlr r0 +/* 8022672C 0022368C 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 80226730 00223690 4E 80 00 20 */ blr + +.global GetTouchBounds__24CScriptCameraPitchVolumeCFv +GetTouchBounds__24CScriptCameraPitchVolumeCFv: +/* 80226734 00223694 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80226738 00223698 7C 08 02 A6 */ mflr r0 +/* 8022673C 0022369C 3C A0 80 5A */ lis r5, skIdentity4f@ha +/* 80226740 002236A0 38 84 00 E8 */ addi r4, r4, 0xe8 +/* 80226744 002236A4 90 01 00 34 */ stw r0, 0x34(r1) +/* 80226748 002236A8 38 A5 66 70 */ addi r5, r5, skIdentity4f@l +/* 8022674C 002236AC 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80226750 002236B0 7C 7F 1B 78 */ mr r31, r3 +/* 80226754 002236B4 38 61 00 08 */ addi r3, r1, 8 +/* 80226758 002236B8 48 0A F6 81 */ bl CalculateAABox__6COBBoxCFRC12CTransform4f +/* 8022675C 002236BC 38 00 00 01 */ li r0, 1 +/* 80226760 002236C0 28 1F 00 00 */ cmplwi r31, 0 +/* 80226764 002236C4 98 1F 00 18 */ stb r0, 0x18(r31) +/* 80226768 002236C8 41 82 00 34 */ beq lbl_8022679C +/* 8022676C 002236CC C0 01 00 08 */ lfs f0, 8(r1) +/* 80226770 002236D0 D0 1F 00 00 */ stfs f0, 0(r31) +/* 80226774 002236D4 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 80226778 002236D8 D0 1F 00 04 */ stfs f0, 4(r31) +/* 8022677C 002236DC C0 01 00 10 */ lfs f0, 0x10(r1) +/* 80226780 002236E0 D0 1F 00 08 */ stfs f0, 8(r31) +/* 80226784 002236E4 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 80226788 002236E8 D0 1F 00 0C */ stfs f0, 0xc(r31) +/* 8022678C 002236EC C0 01 00 18 */ lfs f0, 0x18(r1) +/* 80226790 002236F0 D0 1F 00 10 */ stfs f0, 0x10(r31) +/* 80226794 002236F4 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 80226798 002236F8 D0 1F 00 14 */ stfs f0, 0x14(r31) +lbl_8022679C: +/* 8022679C 002236FC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 802267A0 00223700 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 802267A4 00223704 7C 08 03 A6 */ mtlr r0 +/* 802267A8 00223708 38 21 00 30 */ addi r1, r1, 0x30 +/* 802267AC 0022370C 4E 80 00 20 */ blr + +.global Accept__24CScriptCameraPitchVolumeFR8IVisitor +Accept__24CScriptCameraPitchVolumeFR8IVisitor: +/* 802267B0 00223710 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 802267B4 00223714 7C 08 02 A6 */ mflr r0 +/* 802267B8 00223718 90 01 00 14 */ stw r0, 0x14(r1) +/* 802267BC 0022371C 7C 60 1B 78 */ mr r0, r3 +/* 802267C0 00223720 7C 83 23 78 */ mr r3, r4 +/* 802267C4 00223724 81 84 00 00 */ lwz r12, 0(r4) +/* 802267C8 00223728 7C 04 03 78 */ mr r4, r0 +/* 802267CC 0022372C 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 802267D0 00223730 7D 89 03 A6 */ mtctr r12 +/* 802267D4 00223734 4E 80 04 21 */ bctrl +/* 802267D8 00223738 80 01 00 14 */ lwz r0, 0x14(r1) +/* 802267DC 0022373C 7C 08 03 A6 */ mtlr r0 +/* 802267E0 00223740 38 21 00 10 */ addi r1, r1, 0x10 +/* 802267E4 00223744 4E 80 00 20 */ blr + +.global "__ct__24CScriptCameraPitchVolumeF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3fRC12CTransform4fRC9CRelAngleRC9CRelAnglef" +"__ct__24CScriptCameraPitchVolumeF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3fRC12CTransform4fRC9CRelAngleRC9CRelAnglef": +/* 802267E8 00223748 94 21 FE E0 */ stwu r1, -0x120(r1) +/* 802267EC 0022374C 7C 08 02 A6 */ mflr r0 +/* 802267F0 00223750 90 01 01 24 */ stw r0, 0x124(r1) +/* 802267F4 00223754 DB E1 01 10 */ stfd f31, 0x110(r1) +/* 802267F8 00223758 F3 E1 01 18 */ psq_st f31, 280(r1), 0, qr0 +/* 802267FC 0022375C BE E1 00 EC */ stmw r23, 0xec(r1) +/* 80226800 00223760 FF E0 08 90 */ fmr f31, f1 +/* 80226804 00223764 7C 78 1B 78 */ mr r24, r3 +/* 80226808 00223768 83 E1 01 28 */ lwz r31, 0x128(r1) +/* 8022680C 0022376C 7C 97 23 78 */ mr r23, r4 +/* 80226810 00223770 7C B9 2B 78 */ mr r25, r5 +/* 80226814 00223774 7C DA 33 78 */ mr r26, r6 +/* 80226818 00223778 7C FB 3B 78 */ mr r27, r7 +/* 8022681C 0022377C 7D 1C 43 78 */ mr r28, r8 +/* 80226820 00223780 7D 3D 4B 78 */ mr r29, r9 +/* 80226824 00223784 7D 5E 53 78 */ mr r30, r10 +/* 80226828 00223788 38 61 00 94 */ addi r3, r1, 0x94 +/* 8022682C 0022378C 4B E1 3F 79 */ bl CModelDataNull__10CModelDataFv +/* 80226830 00223790 38 61 00 2C */ addi r3, r1, 0x2c +/* 80226834 00223794 4B DF 46 05 */ bl None__16CActorParametersFv +/* 80226838 00223798 A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 8022683C 0022379C 38 00 00 00 */ li r0, 0 +/* 80226840 002237A0 80 AD 95 60 */ lwz r5, lbl_805A8120@sda21(r13) +/* 80226844 002237A4 38 60 00 00 */ li r3, 0 +/* 80226848 002237A8 B0 81 00 10 */ sth r4, 0x10(r1) +/* 8022684C 002237AC 38 80 00 01 */ li r4, 1 +/* 80226850 002237B0 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80226854 002237B4 90 01 00 18 */ stw r0, 0x18(r1) +/* 80226858 002237B8 48 16 36 9D */ bl __shl2i +/* 8022685C 002237BC 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 80226860 002237C0 39 61 00 2C */ addi r11, r1, 0x2c +/* 80226864 002237C4 80 C1 00 1C */ lwz r6, 0x1c(r1) +/* 80226868 002237C8 38 01 00 10 */ addi r0, r1, 0x10 +/* 8022686C 002237CC 7C A3 1B 78 */ or r3, r5, r3 +/* 80226870 002237D0 A1 37 00 00 */ lhz r9, 0(r23) +/* 80226874 002237D4 7C C4 23 78 */ or r4, r6, r4 +/* 80226878 002237D8 90 61 00 18 */ stw r3, 0x18(r1) +/* 8022687C 002237DC 7F 03 C3 78 */ mr r3, r24 +/* 80226880 002237E0 7F 25 CB 78 */ mr r5, r25 +/* 80226884 002237E4 90 81 00 1C */ stw r4, 0x1c(r1) +/* 80226888 002237E8 7F 46 D3 78 */ mr r6, r26 +/* 8022688C 002237EC 7F 67 DB 78 */ mr r7, r27 +/* 80226890 002237F0 7F A8 EB 78 */ mr r8, r29 +/* 80226894 002237F4 B1 21 00 14 */ sth r9, 0x14(r1) +/* 80226898 002237F8 38 81 00 14 */ addi r4, r1, 0x14 +/* 8022689C 002237FC 39 21 00 94 */ addi r9, r1, 0x94 +/* 802268A0 00223800 39 41 00 18 */ addi r10, r1, 0x18 +/* 802268A4 00223804 91 61 00 08 */ stw r11, 8(r1) +/* 802268A8 00223808 90 01 00 0C */ stw r0, 0xc(r1) +/* 802268AC 0022380C 4B E2 EF 75 */ bl "__ct__6CActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC16CActorParameters9TUniqueId" +/* 802268B0 00223810 38 61 00 2C */ addi r3, r1, 0x2c +/* 802268B4 00223814 38 80 FF FF */ li r4, -1 +/* 802268B8 00223818 4B ED FD 51 */ bl __dt__16CActorParametersFv +/* 802268BC 0022381C 38 61 00 94 */ addi r3, r1, 0x94 +/* 802268C0 00223820 38 80 FF FF */ li r4, -1 +/* 802268C4 00223824 4B EF 01 89 */ bl __dt__10CModelDataFv +/* 802268C8 00223828 3C 80 80 3E */ lis r4, lbl_803E7A70@ha +/* 802268CC 0022382C 3C 60 80 57 */ lis r3, lbl_80572134@ha +/* 802268D0 00223830 38 04 7A 70 */ addi r0, r4, lbl_803E7A70@l +/* 802268D4 00223834 7F A4 EB 78 */ mr r4, r29 +/* 802268D8 00223838 90 18 00 00 */ stw r0, 0(r24) +/* 802268DC 0022383C 3B 23 21 34 */ addi r25, r3, lbl_80572134@l +/* 802268E0 00223840 38 78 00 E8 */ addi r3, r24, 0xe8 +/* 802268E4 00223844 38 A1 00 20 */ addi r5, r1, 0x20 +/* 802268E8 00223848 C0 3C 00 08 */ lfs f1, 8(r28) +/* 802268EC 0022384C C0 19 00 08 */ lfs f0, 8(r25) +/* 802268F0 00223850 C0 7C 00 04 */ lfs f3, 4(r28) +/* 802268F4 00223854 C0 59 00 04 */ lfs f2, 4(r25) +/* 802268F8 00223858 EC 81 00 32 */ fmuls f4, f1, f0 +/* 802268FC 0022385C C0 3C 00 00 */ lfs f1, 0(r28) +/* 80226900 00223860 C0 19 00 00 */ lfs f0, 0(r25) +/* 80226904 00223864 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 80226908 00223868 D0 81 00 28 */ stfs f4, 0x28(r1) +/* 8022690C 0022386C EC 01 00 32 */ fmuls f0, f1, f0 +/* 80226910 00223870 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 80226914 00223874 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 80226918 00223878 48 0A F6 7D */ bl __ct__6COBBoxFRC12CTransform4fRC9CVector3f +/* 8022691C 0022387C C0 1E 00 00 */ lfs f0, 0(r30) +/* 80226920 00223880 3C 60 80 57 */ lis r3, lbl_80572134@ha +/* 80226924 00223884 38 A3 21 34 */ addi r5, r3, lbl_80572134@l +/* 80226928 00223888 38 80 00 00 */ li r4, 0 +/* 8022692C 0022388C D0 18 01 24 */ stfs f0, 0x124(r24) +/* 80226930 00223890 7F 03 C3 78 */ mr r3, r24 +/* 80226934 00223894 C0 1F 00 00 */ lfs f0, 0(r31) +/* 80226938 00223898 D0 18 01 28 */ stfs f0, 0x128(r24) +/* 8022693C 0022389C C0 3C 00 00 */ lfs f1, 0(r28) +/* 80226940 002238A0 C0 05 00 00 */ lfs f0, 0(r5) +/* 80226944 002238A4 C0 7C 00 04 */ lfs f3, 4(r28) +/* 80226948 002238A8 C0 59 00 04 */ lfs f2, 4(r25) +/* 8022694C 002238AC EC 01 00 32 */ fmuls f0, f1, f0 +/* 80226950 002238B0 C0 9C 00 08 */ lfs f4, 8(r28) +/* 80226954 002238B4 C0 39 00 08 */ lfs f1, 8(r25) +/* 80226958 002238B8 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 8022695C 002238BC D0 18 01 2C */ stfs f0, 0x12c(r24) +/* 80226960 002238C0 EC 04 00 72 */ fmuls f0, f4, f1 +/* 80226964 002238C4 D0 58 01 30 */ stfs f2, 0x130(r24) +/* 80226968 002238C8 D0 18 01 34 */ stfs f0, 0x134(r24) +/* 8022696C 002238CC D3 F8 01 38 */ stfs f31, 0x138(r24) +/* 80226970 002238D0 88 18 01 3C */ lbz r0, 0x13c(r24) +/* 80226974 002238D4 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 80226978 002238D8 98 18 01 3C */ stb r0, 0x13c(r24) +/* 8022697C 002238DC 88 18 01 3C */ lbz r0, 0x13c(r24) +/* 80226980 002238E0 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 80226984 002238E4 98 18 01 3C */ stb r0, 0x13c(r24) +/* 80226988 002238E8 E3 E1 01 18 */ psq_l f31, 280(r1), 0, qr0 +/* 8022698C 002238EC CB E1 01 10 */ lfd f31, 0x110(r1) +/* 80226990 002238F0 BA E1 00 EC */ lmw r23, 0xec(r1) +/* 80226994 002238F4 80 01 01 24 */ lwz r0, 0x124(r1) +/* 80226998 002238F8 7C 08 03 A6 */ mtlr r0 +/* 8022699C 002238FC 38 21 01 20 */ addi r1, r1, 0x120 +/* 802269A0 00223900 4E 80 00 20 */ blr + +.global __sinit_CScriptCameraPitchVolume_cpp +__sinit_CScriptCameraPitchVolume_cpp: +/* 802269A4 00223904 C0 02 B4 B8 */ lfs f0, lbl_805AD1D8@sda21(r2) +/* 802269A8 00223908 3C 60 80 57 */ lis r3, lbl_80572134@ha +/* 802269AC 0022390C D4 03 21 34 */ stfsu f0, lbl_80572134@l(r3) +/* 802269B0 00223910 D0 03 00 04 */ stfs f0, 4(r3) +/* 802269B4 00223914 D0 03 00 08 */ stfs f0, 8(r3) +/* 802269B8 00223918 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/ScriptObjects/CScriptColorModulate.s b/asm/Kyoto_CWD/ScriptObjects/CScriptColorModulate.s new file mode 100644 index 00000000..afe312f5 --- /dev/null +++ b/asm/Kyoto_CWD/ScriptObjects/CScriptColorModulate.s @@ -0,0 +1,1201 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__20CScriptColorModulateFv +__dt__20CScriptColorModulateFv: +/* 80200BD8 001FDB38 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80200BDC 001FDB3C 7C 08 02 A6 */ mflr r0 +/* 80200BE0 001FDB40 90 01 00 14 */ stw r0, 0x14(r1) +/* 80200BE4 001FDB44 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80200BE8 001FDB48 7C 9F 23 78 */ mr r31, r4 +/* 80200BEC 001FDB4C 93 C1 00 08 */ stw r30, 8(r1) +/* 80200BF0 001FDB50 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80200BF4 001FDB54 41 82 00 28 */ beq lbl_80200C1C +/* 80200BF8 001FDB58 3C A0 80 3E */ lis r5, lbl_803E6BB0@ha +/* 80200BFC 001FDB5C 38 80 00 00 */ li r4, 0 +/* 80200C00 001FDB60 38 05 6B B0 */ addi r0, r5, lbl_803E6BB0@l +/* 80200C04 001FDB64 90 1E 00 00 */ stw r0, 0(r30) +/* 80200C08 001FDB68 4B E5 06 6D */ bl __dt__7CEntityFv +/* 80200C0C 001FDB6C 7F E0 07 35 */ extsh. r0, r31 +/* 80200C10 001FDB70 40 81 00 0C */ ble lbl_80200C1C +/* 80200C14 001FDB74 7F C3 F3 78 */ mr r3, r30 +/* 80200C18 001FDB78 48 11 4D 19 */ bl Free__7CMemoryFPCv +lbl_80200C1C: +/* 80200C1C 001FDB7C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80200C20 001FDB80 7F C3 F3 78 */ mr r3, r30 +/* 80200C24 001FDB84 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80200C28 001FDB88 83 C1 00 08 */ lwz r30, 8(r1) +/* 80200C2C 001FDB8C 7C 08 03 A6 */ mtlr r0 +/* 80200C30 001FDB90 38 21 00 10 */ addi r1, r1, 0x10 +/* 80200C34 001FDB94 4E 80 00 20 */ blr + +.global Accept__20CScriptColorModulateFR8IVisitor +Accept__20CScriptColorModulateFR8IVisitor: +/* 80200C38 001FDB98 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80200C3C 001FDB9C 7C 08 02 A6 */ mflr r0 +/* 80200C40 001FDBA0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80200C44 001FDBA4 7C 60 1B 78 */ mr r0, r3 +/* 80200C48 001FDBA8 7C 83 23 78 */ mr r3, r4 +/* 80200C4C 001FDBAC 81 84 00 00 */ lwz r12, 0(r4) +/* 80200C50 001FDBB0 7C 04 03 78 */ mr r4, r0 +/* 80200C54 001FDBB4 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 80200C58 001FDBB8 7D 89 03 A6 */ mtctr r12 +/* 80200C5C 001FDBBC 4E 80 04 21 */ bctrl +/* 80200C60 001FDBC0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80200C64 001FDBC4 7C 08 03 A6 */ mtlr r0 +/* 80200C68 001FDBC8 38 21 00 10 */ addi r1, r1, 0x10 +/* 80200C6C 001FDBCC 4E 80 00 20 */ blr + +.global AcceptScriptMsg__20CScriptColorModulateF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__20CScriptColorModulateF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 80200C70 001FDBD0 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80200C74 001FDBD4 7C 08 02 A6 */ mflr r0 +/* 80200C78 001FDBD8 90 01 00 34 */ stw r0, 0x34(r1) +/* 80200C7C 001FDBDC 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80200C80 001FDBE0 7C 7F 1B 78 */ mr r31, r3 +/* 80200C84 001FDBE4 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80200C88 001FDBE8 7C DE 33 78 */ mr r30, r6 +/* 80200C8C 001FDBEC 93 A1 00 24 */ stw r29, 0x24(r1) +/* 80200C90 001FDBF0 7C 9D 23 78 */ mr r29, r4 +/* 80200C94 001FDBF4 A0 05 00 00 */ lhz r0, 0(r5) +/* 80200C98 001FDBF8 38 A1 00 08 */ addi r5, r1, 8 +/* 80200C9C 001FDBFC B0 01 00 08 */ sth r0, 8(r1) +/* 80200CA0 001FDC00 4B E5 04 BD */ bl AcceptScriptMsg__7CEntityF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 80200CA4 001FDC04 88 1F 00 30 */ lbz r0, 0x30(r31) +/* 80200CA8 001FDC08 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80200CAC 001FDC0C 41 82 01 6C */ beq lbl_80200E18 +/* 80200CB0 001FDC10 2C 1D 00 06 */ cmpwi r29, 6 +/* 80200CB4 001FDC14 41 82 01 64 */ beq lbl_80200E18 +/* 80200CB8 001FDC18 40 80 00 10 */ bge lbl_80200CC8 +/* 80200CBC 001FDC1C 2C 1D 00 05 */ cmpwi r29, 5 +/* 80200CC0 001FDC20 40 80 00 B8 */ bge lbl_80200D78 +/* 80200CC4 001FDC24 48 00 01 54 */ b lbl_80200E18 +lbl_80200CC8: +/* 80200CC8 001FDC28 2C 1D 00 08 */ cmpwi r29, 8 +/* 80200CCC 001FDC2C 40 80 01 4C */ bge lbl_80200E18 +/* 80200CD0 001FDC30 88 7F 00 54 */ lbz r3, 0x54(r31) +/* 80200CD4 001FDC34 54 60 F7 FF */ rlwinm. r0, r3, 0x1e, 0x1f, 0x1f +/* 80200CD8 001FDC38 41 82 00 28 */ beq lbl_80200D00 +/* 80200CDC 001FDC3C 80 1F 00 38 */ lwz r0, 0x38(r31) +/* 80200CE0 001FDC40 38 60 00 00 */ li r3, 0 +/* 80200CE4 001FDC44 7C 00 00 34 */ cntlzw r0, r0 +/* 80200CE8 001FDC48 54 00 D9 7E */ srwi r0, r0, 5 +/* 80200CEC 001FDC4C 90 1F 00 38 */ stw r0, 0x38(r31) +/* 80200CF0 001FDC50 88 1F 00 54 */ lbz r0, 0x54(r31) +/* 80200CF4 001FDC54 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 80200CF8 001FDC58 98 1F 00 54 */ stb r0, 0x54(r31) +/* 80200CFC 001FDC5C 48 00 01 1C */ b lbl_80200E18 +lbl_80200D00: +/* 80200D00 001FDC60 54 60 FF FF */ rlwinm. r0, r3, 0x1f, 0x1f, 0x1f +/* 80200D04 001FDC64 41 82 00 38 */ beq lbl_80200D3C +/* 80200D08 001FDC68 80 1F 00 38 */ lwz r0, 0x38(r31) +/* 80200D0C 001FDC6C 2C 00 00 00 */ cmpwi r0, 0 +/* 80200D10 001FDC70 40 82 00 10 */ bne lbl_80200D20 +/* 80200D14 001FDC74 C0 02 B0 30 */ lfs f0, lbl_805ACD50@sda21(r2) +/* 80200D18 001FDC78 D0 1F 00 3C */ stfs f0, 0x3c(r31) +/* 80200D1C 001FDC7C 48 00 00 40 */ b lbl_80200D5C +lbl_80200D20: +/* 80200D20 001FDC80 C0 3F 00 3C */ lfs f1, 0x3c(r31) +/* 80200D24 001FDC84 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 80200D28 001FDC88 C0 5F 00 4C */ lfs f2, 0x4c(r31) +/* 80200D2C 001FDC8C EC 01 00 24 */ fdivs f0, f1, f0 +/* 80200D30 001FDC90 EC 02 10 3C */ fnmsubs f0, f2, f0, f2 +/* 80200D34 001FDC94 D0 1F 00 3C */ stfs f0, 0x3c(r31) +/* 80200D38 001FDC98 48 00 00 24 */ b lbl_80200D5C +lbl_80200D3C: +/* 80200D3C 001FDC9C 7F E4 FB 78 */ mr r4, r31 +/* 80200D40 001FDCA0 38 61 00 14 */ addi r3, r1, 0x14 +/* 80200D44 001FDCA4 38 BF 00 40 */ addi r5, r31, 0x40 +/* 80200D48 001FDCA8 48 00 02 A9 */ bl CalculateFlags__20CScriptColorModulateCFRC6CColor +/* 80200D4C 001FDCAC 7F E3 FB 78 */ mr r3, r31 +/* 80200D50 001FDCB0 7F C4 F3 78 */ mr r4, r30 +/* 80200D54 001FDCB4 38 A1 00 14 */ addi r5, r1, 0x14 +/* 80200D58 001FDCB8 48 00 08 B1 */ bl SetTargetFlags__20CScriptColorModulateFR13CStateManagerRC11CModelFlags +lbl_80200D5C: +/* 80200D5C 001FDCBC 88 7F 00 54 */ lbz r3, 0x54(r31) +/* 80200D60 001FDCC0 38 00 00 01 */ li r0, 1 +/* 80200D64 001FDCC4 50 03 0F BC */ rlwimi r3, r0, 1, 0x1e, 0x1e +/* 80200D68 001FDCC8 38 00 00 00 */ li r0, 0 +/* 80200D6C 001FDCCC 98 7F 00 54 */ stb r3, 0x54(r31) +/* 80200D70 001FDCD0 90 1F 00 38 */ stw r0, 0x38(r31) +/* 80200D74 001FDCD4 48 00 00 A4 */ b lbl_80200E18 +lbl_80200D78: +/* 80200D78 001FDCD8 88 7F 00 54 */ lbz r3, 0x54(r31) +/* 80200D7C 001FDCDC 54 60 F7 FF */ rlwinm. r0, r3, 0x1e, 0x1f, 0x1f +/* 80200D80 001FDCE0 41 82 00 28 */ beq lbl_80200DA8 +/* 80200D84 001FDCE4 80 1F 00 38 */ lwz r0, 0x38(r31) +/* 80200D88 001FDCE8 38 60 00 00 */ li r3, 0 +/* 80200D8C 001FDCEC 7C 00 00 34 */ cntlzw r0, r0 +/* 80200D90 001FDCF0 54 00 D9 7E */ srwi r0, r0, 5 +/* 80200D94 001FDCF4 90 1F 00 38 */ stw r0, 0x38(r31) +/* 80200D98 001FDCF8 88 1F 00 54 */ lbz r0, 0x54(r31) +/* 80200D9C 001FDCFC 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 80200DA0 001FDD00 98 1F 00 54 */ stb r0, 0x54(r31) +/* 80200DA4 001FDD04 48 00 00 74 */ b lbl_80200E18 +lbl_80200DA8: +/* 80200DA8 001FDD08 54 60 FF FF */ rlwinm. r0, r3, 0x1f, 0x1f, 0x1f +/* 80200DAC 001FDD0C 41 82 00 38 */ beq lbl_80200DE4 +/* 80200DB0 001FDD10 80 1F 00 38 */ lwz r0, 0x38(r31) +/* 80200DB4 001FDD14 2C 00 00 00 */ cmpwi r0, 0 +/* 80200DB8 001FDD18 40 82 00 10 */ bne lbl_80200DC8 +/* 80200DBC 001FDD1C C0 02 B0 30 */ lfs f0, lbl_805ACD50@sda21(r2) +/* 80200DC0 001FDD20 D0 1F 00 3C */ stfs f0, 0x3c(r31) +/* 80200DC4 001FDD24 48 00 00 40 */ b lbl_80200E04 +lbl_80200DC8: +/* 80200DC8 001FDD28 C0 3F 00 3C */ lfs f1, 0x3c(r31) +/* 80200DCC 001FDD2C C0 1F 00 4C */ lfs f0, 0x4c(r31) +/* 80200DD0 001FDD30 C0 5F 00 50 */ lfs f2, 0x50(r31) +/* 80200DD4 001FDD34 EC 01 00 24 */ fdivs f0, f1, f0 +/* 80200DD8 001FDD38 EC 02 10 3C */ fnmsubs f0, f2, f0, f2 +/* 80200DDC 001FDD3C D0 1F 00 3C */ stfs f0, 0x3c(r31) +/* 80200DE0 001FDD40 48 00 00 24 */ b lbl_80200E04 +lbl_80200DE4: +/* 80200DE4 001FDD44 7F E4 FB 78 */ mr r4, r31 +/* 80200DE8 001FDD48 38 61 00 0C */ addi r3, r1, 0xc +/* 80200DEC 001FDD4C 38 BF 00 44 */ addi r5, r31, 0x44 +/* 80200DF0 001FDD50 48 00 02 01 */ bl CalculateFlags__20CScriptColorModulateCFRC6CColor +/* 80200DF4 001FDD54 7F E3 FB 78 */ mr r3, r31 +/* 80200DF8 001FDD58 7F C4 F3 78 */ mr r4, r30 +/* 80200DFC 001FDD5C 38 A1 00 0C */ addi r5, r1, 0xc +/* 80200E00 001FDD60 48 00 08 09 */ bl SetTargetFlags__20CScriptColorModulateFR13CStateManagerRC11CModelFlags +lbl_80200E04: +/* 80200E04 001FDD64 88 1F 00 54 */ lbz r0, 0x54(r31) +/* 80200E08 001FDD68 38 60 00 01 */ li r3, 1 +/* 80200E0C 001FDD6C 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 80200E10 001FDD70 98 1F 00 54 */ stb r0, 0x54(r31) +/* 80200E14 001FDD74 90 7F 00 38 */ stw r3, 0x38(r31) +lbl_80200E18: +/* 80200E18 001FDD78 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80200E1C 001FDD7C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80200E20 001FDD80 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80200E24 001FDD84 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 80200E28 001FDD88 7C 08 03 A6 */ mtlr r0 +/* 80200E2C 001FDD8C 38 21 00 30 */ addi r1, r1, 0x30 +/* 80200E30 001FDD90 4E 80 00 20 */ blr + +.global Think__20CScriptColorModulateFfR13CStateManager +Think__20CScriptColorModulateFfR13CStateManager: +/* 80200E34 001FDD94 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80200E38 001FDD98 7C 08 02 A6 */ mflr r0 +/* 80200E3C 001FDD9C 90 01 00 44 */ stw r0, 0x44(r1) +/* 80200E40 001FDDA0 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80200E44 001FDDA4 7C 9F 23 78 */ mr r31, r4 +/* 80200E48 001FDDA8 93 C1 00 38 */ stw r30, 0x38(r1) +/* 80200E4C 001FDDAC 7C 7E 1B 78 */ mr r30, r3 +/* 80200E50 001FDDB0 88 03 00 30 */ lbz r0, 0x30(r3) +/* 80200E54 001FDDB4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80200E58 001FDDB8 41 82 01 80 */ beq lbl_80200FD8 +/* 80200E5C 001FDDBC 88 1E 00 54 */ lbz r0, 0x54(r30) +/* 80200E60 001FDDC0 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 80200E64 001FDDC4 40 82 00 08 */ bne lbl_80200E6C +/* 80200E68 001FDDC8 48 00 01 70 */ b lbl_80200FD8 +lbl_80200E6C: +/* 80200E6C 001FDDCC C0 1E 00 3C */ lfs f0, 0x3c(r30) +/* 80200E70 001FDDD0 EC 00 08 2A */ fadds f0, f0, f1 +/* 80200E74 001FDDD4 D0 1E 00 3C */ stfs f0, 0x3c(r30) +/* 80200E78 001FDDD8 80 1E 00 38 */ lwz r0, 0x38(r30) +/* 80200E7C 001FDDDC 2C 00 00 01 */ cmpwi r0, 1 +/* 80200E80 001FDDE0 41 82 00 B8 */ beq lbl_80200F38 +/* 80200E84 001FDDE4 40 80 01 54 */ bge lbl_80200FD8 +/* 80200E88 001FDDE8 2C 00 00 00 */ cmpwi r0, 0 +/* 80200E8C 001FDDEC 40 80 00 08 */ bge lbl_80200E94 +/* 80200E90 001FDDF0 48 00 01 48 */ b lbl_80200FD8 +lbl_80200E94: +/* 80200E94 001FDDF4 C0 5E 00 4C */ lfs f2, 0x4c(r30) +/* 80200E98 001FDDF8 C0 22 B0 30 */ lfs f1, lbl_805ACD50@sda21(r2) +/* 80200E9C 001FDDFC C8 02 B0 38 */ lfd f0, lbl_805ACD58@sda21(r2) +/* 80200EA0 001FDE00 EC 22 08 28 */ fsubs f1, f2, f1 +/* 80200EA4 001FDE04 FC 20 0A 10 */ fabs f1, f1 +/* 80200EA8 001FDE08 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80200EAC 001FDE0C 40 80 00 0C */ bge lbl_80200EB8 +/* 80200EB0 001FDE10 C0 22 B0 40 */ lfs f1, lbl_805ACD60@sda21(r2) +/* 80200EB4 001FDE14 48 00 00 2C */ b lbl_80200EE0 +lbl_80200EB8: +/* 80200EB8 001FDE18 C0 3E 00 3C */ lfs f1, 0x3c(r30) +/* 80200EBC 001FDE1C C0 0D 93 40 */ lfs f0, lbl_805A7F00@sda21(r13) +/* 80200EC0 001FDE20 EC 21 10 24 */ fdivs f1, f1, f2 +/* 80200EC4 001FDE24 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80200EC8 001FDE28 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 80200ECC 001FDE2C 40 80 00 0C */ bge lbl_80200ED8 +/* 80200ED0 001FDE30 38 61 00 10 */ addi r3, r1, 0x10 +/* 80200ED4 001FDE34 48 00 00 08 */ b lbl_80200EDC +lbl_80200ED8: +/* 80200ED8 001FDE38 38 6D 93 40 */ addi r3, r13, lbl_805A7F00@sda21 +lbl_80200EDC: +/* 80200EDC 001FDE3C C0 23 00 00 */ lfs f1, 0(r3) +lbl_80200EE0: +/* 80200EE0 001FDE40 38 61 00 14 */ addi r3, r1, 0x14 +/* 80200EE4 001FDE44 38 9E 00 40 */ addi r4, r30, 0x40 +/* 80200EE8 001FDE48 38 BE 00 44 */ addi r5, r30, 0x44 +/* 80200EEC 001FDE4C 48 16 23 C1 */ bl Lerp__6CColorFRC6CColorRC6CColorf +/* 80200EF0 001FDE50 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80200EF4 001FDE54 7F C4 F3 78 */ mr r4, r30 +/* 80200EF8 001FDE58 38 61 00 28 */ addi r3, r1, 0x28 +/* 80200EFC 001FDE5C 38 A1 00 1C */ addi r5, r1, 0x1c +/* 80200F00 001FDE60 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80200F04 001FDE64 48 00 00 ED */ bl CalculateFlags__20CScriptColorModulateCFRC6CColor +/* 80200F08 001FDE68 7F C3 F3 78 */ mr r3, r30 +/* 80200F0C 001FDE6C 7F E4 FB 78 */ mr r4, r31 +/* 80200F10 001FDE70 38 A1 00 28 */ addi r5, r1, 0x28 +/* 80200F14 001FDE74 48 00 06 F5 */ bl SetTargetFlags__20CScriptColorModulateFR13CStateManagerRC11CModelFlags +/* 80200F18 001FDE78 C0 3E 00 3C */ lfs f1, 0x3c(r30) +/* 80200F1C 001FDE7C C0 1E 00 4C */ lfs f0, 0x4c(r30) +/* 80200F20 001FDE80 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80200F24 001FDE84 40 81 00 B4 */ ble lbl_80200FD8 +/* 80200F28 001FDE88 7F C3 F3 78 */ mr r3, r30 +/* 80200F2C 001FDE8C 7F E4 FB 78 */ mr r4, r31 +/* 80200F30 001FDE90 48 00 05 9D */ bl End__20CScriptColorModulateFR13CStateManager +/* 80200F34 001FDE94 48 00 00 A4 */ b lbl_80200FD8 +lbl_80200F38: +/* 80200F38 001FDE98 C0 5E 00 50 */ lfs f2, 0x50(r30) +/* 80200F3C 001FDE9C C0 22 B0 30 */ lfs f1, lbl_805ACD50@sda21(r2) +/* 80200F40 001FDEA0 C8 02 B0 38 */ lfd f0, lbl_805ACD58@sda21(r2) +/* 80200F44 001FDEA4 EC 22 08 28 */ fsubs f1, f2, f1 +/* 80200F48 001FDEA8 FC 20 0A 10 */ fabs f1, f1 +/* 80200F4C 001FDEAC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80200F50 001FDEB0 40 80 00 0C */ bge lbl_80200F5C +/* 80200F54 001FDEB4 C0 22 B0 40 */ lfs f1, lbl_805ACD60@sda21(r2) +/* 80200F58 001FDEB8 48 00 00 2C */ b lbl_80200F84 +lbl_80200F5C: +/* 80200F5C 001FDEBC C0 3E 00 3C */ lfs f1, 0x3c(r30) +/* 80200F60 001FDEC0 C0 0D 93 44 */ lfs f0, lbl_805A7F04@sda21(r13) +/* 80200F64 001FDEC4 EC 21 10 24 */ fdivs f1, f1, f2 +/* 80200F68 001FDEC8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80200F6C 001FDECC D0 21 00 08 */ stfs f1, 8(r1) +/* 80200F70 001FDED0 40 80 00 0C */ bge lbl_80200F7C +/* 80200F74 001FDED4 38 61 00 08 */ addi r3, r1, 8 +/* 80200F78 001FDED8 48 00 00 08 */ b lbl_80200F80 +lbl_80200F7C: +/* 80200F7C 001FDEDC 38 6D 93 44 */ addi r3, r13, lbl_805A7F04@sda21 +lbl_80200F80: +/* 80200F80 001FDEE0 C0 23 00 00 */ lfs f1, 0(r3) +lbl_80200F84: +/* 80200F84 001FDEE4 38 61 00 0C */ addi r3, r1, 0xc +/* 80200F88 001FDEE8 38 9E 00 44 */ addi r4, r30, 0x44 +/* 80200F8C 001FDEEC 38 BE 00 40 */ addi r5, r30, 0x40 +/* 80200F90 001FDEF0 48 16 23 1D */ bl Lerp__6CColorFRC6CColorRC6CColorf +/* 80200F94 001FDEF4 80 01 00 0C */ lwz r0, 0xc(r1) +/* 80200F98 001FDEF8 7F C4 F3 78 */ mr r4, r30 +/* 80200F9C 001FDEFC 38 61 00 20 */ addi r3, r1, 0x20 +/* 80200FA0 001FDF00 38 A1 00 18 */ addi r5, r1, 0x18 +/* 80200FA4 001FDF04 90 01 00 18 */ stw r0, 0x18(r1) +/* 80200FA8 001FDF08 48 00 00 49 */ bl CalculateFlags__20CScriptColorModulateCFRC6CColor +/* 80200FAC 001FDF0C 7F C3 F3 78 */ mr r3, r30 +/* 80200FB0 001FDF10 7F E4 FB 78 */ mr r4, r31 +/* 80200FB4 001FDF14 38 A1 00 20 */ addi r5, r1, 0x20 +/* 80200FB8 001FDF18 48 00 06 51 */ bl SetTargetFlags__20CScriptColorModulateFR13CStateManagerRC11CModelFlags +/* 80200FBC 001FDF1C C0 3E 00 3C */ lfs f1, 0x3c(r30) +/* 80200FC0 001FDF20 C0 1E 00 50 */ lfs f0, 0x50(r30) +/* 80200FC4 001FDF24 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80200FC8 001FDF28 40 81 00 10 */ ble lbl_80200FD8 +/* 80200FCC 001FDF2C 7F C3 F3 78 */ mr r3, r30 +/* 80200FD0 001FDF30 7F E4 FB 78 */ mr r4, r31 +/* 80200FD4 001FDF34 48 00 04 F9 */ bl End__20CScriptColorModulateFR13CStateManager +lbl_80200FD8: +/* 80200FD8 001FDF38 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80200FDC 001FDF3C 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 80200FE0 001FDF40 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 80200FE4 001FDF44 7C 08 03 A6 */ mtlr r0 +/* 80200FE8 001FDF48 38 21 00 40 */ addi r1, r1, 0x40 +/* 80200FEC 001FDF4C 4E 80 00 20 */ blr + +.global CalculateFlags__20CScriptColorModulateCFRC6CColor +CalculateFlags__20CScriptColorModulateCFRC6CColor: +/* 80200FF0 001FDF50 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 80200FF4 001FDF54 7C 08 02 A6 */ mflr r0 +/* 80200FF8 001FDF58 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 80200FFC 001FDF5C 93 E1 00 9C */ stw r31, 0x9c(r1) +/* 80201000 001FDF60 7C 7F 1B 78 */ mr r31, r3 +/* 80201004 001FDF64 93 C1 00 98 */ stw r30, 0x98(r1) +/* 80201008 001FDF68 7C 9E 23 78 */ mr r30, r4 +/* 8020100C 001FDF6C 93 A1 00 94 */ stw r29, 0x94(r1) +/* 80201010 001FDF70 7C BD 2B 78 */ mr r29, r5 +/* 80201014 001FDF74 88 04 00 54 */ lbz r0, 0x54(r4) +/* 80201018 001FDF78 54 03 EF FF */ rlwinm. r3, r0, 0x1d, 0x1f, 0x1f +/* 8020101C 001FDF7C 41 82 01 EC */ beq lbl_80201208 +/* 80201020 001FDF80 80 7E 00 48 */ lwz r3, 0x48(r30) +/* 80201024 001FDF84 2C 03 00 02 */ cmpwi r3, 2 +/* 80201028 001FDF88 41 82 00 D8 */ beq lbl_80201100 +/* 8020102C 001FDF8C 40 80 00 14 */ bge lbl_80201040 +/* 80201030 001FDF90 2C 03 00 00 */ cmpwi r3, 0 +/* 80201034 001FDF94 41 82 00 1C */ beq lbl_80201050 +/* 80201038 001FDF98 40 80 00 70 */ bge lbl_802010A8 +/* 8020103C 001FDF9C 48 00 01 CC */ b lbl_80201208 +lbl_80201040: +/* 80201040 001FDFA0 2C 03 00 04 */ cmpwi r3, 4 +/* 80201044 001FDFA4 41 82 01 6C */ beq lbl_802011B0 +/* 80201048 001FDFA8 40 80 01 C0 */ bge lbl_80201208 +/* 8020104C 001FDFAC 48 00 01 0C */ b lbl_80201158 +lbl_80201050: +/* 80201050 001FDFB0 80 9D 00 00 */ lwz r4, 0(r29) +/* 80201054 001FDFB4 38 E0 00 05 */ li r7, 5 +/* 80201058 001FDFB8 38 C0 00 00 */ li r6, 0 +/* 8020105C 001FDFBC 38 A0 00 03 */ li r5, 3 +/* 80201060 001FDFC0 98 FF 00 00 */ stb r7, 0(r31) +/* 80201064 001FDFC4 54 03 EF BC */ rlwinm r3, r0, 0x1d, 0x1e, 0x1e +/* 80201068 001FDFC8 50 03 DF FE */ rlwimi r3, r0, 0x1b, 0x1f, 0x1f +/* 8020106C 001FDFCC 50 A3 04 3A */ rlwimi r3, r5, 0, 0x10, 0x1d +/* 80201070 001FDFD0 98 DF 00 01 */ stb r6, 1(r31) +/* 80201074 001FDFD4 54 60 04 3E */ clrlwi r0, r3, 0x10 +/* 80201078 001FDFD8 60 00 00 08 */ ori r0, r0, 8 +/* 8020107C 001FDFDC 98 E1 00 80 */ stb r7, 0x80(r1) +/* 80201080 001FDFE0 B0 1F 00 02 */ sth r0, 2(r31) +/* 80201084 001FDFE4 98 C1 00 81 */ stb r6, 0x81(r1) +/* 80201088 001FDFE8 B0 A1 00 82 */ sth r5, 0x82(r1) +/* 8020108C 001FDFEC 90 81 00 84 */ stw r4, 0x84(r1) +/* 80201090 001FDFF0 98 E1 00 88 */ stb r7, 0x88(r1) +/* 80201094 001FDFF4 98 C1 00 89 */ stb r6, 0x89(r1) +/* 80201098 001FDFF8 B0 61 00 8A */ sth r3, 0x8a(r1) +/* 8020109C 001FDFFC 90 81 00 8C */ stw r4, 0x8c(r1) +/* 802010A0 001FE000 90 9F 00 04 */ stw r4, 4(r31) +/* 802010A4 001FE004 48 00 04 0C */ b lbl_802014B0 +lbl_802010A8: +/* 802010A8 001FE008 80 9D 00 00 */ lwz r4, 0(r29) +/* 802010AC 001FE00C 38 E0 00 07 */ li r7, 7 +/* 802010B0 001FE010 38 C0 00 00 */ li r6, 0 +/* 802010B4 001FE014 38 A0 00 03 */ li r5, 3 +/* 802010B8 001FE018 98 FF 00 00 */ stb r7, 0(r31) +/* 802010BC 001FE01C 54 03 EF BC */ rlwinm r3, r0, 0x1d, 0x1e, 0x1e +/* 802010C0 001FE020 50 03 DF FE */ rlwimi r3, r0, 0x1b, 0x1f, 0x1f +/* 802010C4 001FE024 50 A3 04 3A */ rlwimi r3, r5, 0, 0x10, 0x1d +/* 802010C8 001FE028 98 DF 00 01 */ stb r6, 1(r31) +/* 802010CC 001FE02C 54 60 04 3E */ clrlwi r0, r3, 0x10 +/* 802010D0 001FE030 60 00 00 08 */ ori r0, r0, 8 +/* 802010D4 001FE034 98 E1 00 70 */ stb r7, 0x70(r1) +/* 802010D8 001FE038 B0 1F 00 02 */ sth r0, 2(r31) +/* 802010DC 001FE03C 98 C1 00 71 */ stb r6, 0x71(r1) +/* 802010E0 001FE040 B0 A1 00 72 */ sth r5, 0x72(r1) +/* 802010E4 001FE044 90 81 00 74 */ stw r4, 0x74(r1) +/* 802010E8 001FE048 98 E1 00 78 */ stb r7, 0x78(r1) +/* 802010EC 001FE04C 98 C1 00 79 */ stb r6, 0x79(r1) +/* 802010F0 001FE050 B0 61 00 7A */ sth r3, 0x7a(r1) +/* 802010F4 001FE054 90 81 00 7C */ stw r4, 0x7c(r1) +/* 802010F8 001FE058 90 9F 00 04 */ stw r4, 4(r31) +/* 802010FC 001FE05C 48 00 03 B4 */ b lbl_802014B0 +lbl_80201100: +/* 80201100 001FE060 80 9D 00 00 */ lwz r4, 0(r29) +/* 80201104 001FE064 38 E0 00 08 */ li r7, 8 +/* 80201108 001FE068 38 C0 00 00 */ li r6, 0 +/* 8020110C 001FE06C 38 A0 00 03 */ li r5, 3 +/* 80201110 001FE070 98 FF 00 00 */ stb r7, 0(r31) +/* 80201114 001FE074 54 03 EF BC */ rlwinm r3, r0, 0x1d, 0x1e, 0x1e +/* 80201118 001FE078 50 03 DF FE */ rlwimi r3, r0, 0x1b, 0x1f, 0x1f +/* 8020111C 001FE07C 50 A3 04 3A */ rlwimi r3, r5, 0, 0x10, 0x1d +/* 80201120 001FE080 98 DF 00 01 */ stb r6, 1(r31) +/* 80201124 001FE084 54 60 04 3E */ clrlwi r0, r3, 0x10 +/* 80201128 001FE088 60 00 00 08 */ ori r0, r0, 8 +/* 8020112C 001FE08C 98 E1 00 60 */ stb r7, 0x60(r1) +/* 80201130 001FE090 B0 1F 00 02 */ sth r0, 2(r31) +/* 80201134 001FE094 98 C1 00 61 */ stb r6, 0x61(r1) +/* 80201138 001FE098 B0 A1 00 62 */ sth r5, 0x62(r1) +/* 8020113C 001FE09C 90 81 00 64 */ stw r4, 0x64(r1) +/* 80201140 001FE0A0 98 E1 00 68 */ stb r7, 0x68(r1) +/* 80201144 001FE0A4 98 C1 00 69 */ stb r6, 0x69(r1) +/* 80201148 001FE0A8 B0 61 00 6A */ sth r3, 0x6a(r1) +/* 8020114C 001FE0AC 90 81 00 6C */ stw r4, 0x6c(r1) +/* 80201150 001FE0B0 90 9F 00 04 */ stw r4, 4(r31) +/* 80201154 001FE0B4 48 00 03 5C */ b lbl_802014B0 +lbl_80201158: +/* 80201158 001FE0B8 80 9D 00 00 */ lwz r4, 0(r29) +/* 8020115C 001FE0BC 38 E0 00 01 */ li r7, 1 +/* 80201160 001FE0C0 38 C0 00 00 */ li r6, 0 +/* 80201164 001FE0C4 38 A0 00 03 */ li r5, 3 +/* 80201168 001FE0C8 98 FF 00 00 */ stb r7, 0(r31) +/* 8020116C 001FE0CC 54 03 EF BC */ rlwinm r3, r0, 0x1d, 0x1e, 0x1e +/* 80201170 001FE0D0 50 03 DF FE */ rlwimi r3, r0, 0x1b, 0x1f, 0x1f +/* 80201174 001FE0D4 50 A3 04 3A */ rlwimi r3, r5, 0, 0x10, 0x1d +/* 80201178 001FE0D8 98 DF 00 01 */ stb r6, 1(r31) +/* 8020117C 001FE0DC 54 60 04 3E */ clrlwi r0, r3, 0x10 +/* 80201180 001FE0E0 60 00 00 08 */ ori r0, r0, 8 +/* 80201184 001FE0E4 98 E1 00 50 */ stb r7, 0x50(r1) +/* 80201188 001FE0E8 B0 1F 00 02 */ sth r0, 2(r31) +/* 8020118C 001FE0EC 98 C1 00 51 */ stb r6, 0x51(r1) +/* 80201190 001FE0F0 B0 A1 00 52 */ sth r5, 0x52(r1) +/* 80201194 001FE0F4 90 81 00 54 */ stw r4, 0x54(r1) +/* 80201198 001FE0F8 98 E1 00 58 */ stb r7, 0x58(r1) +/* 8020119C 001FE0FC 98 C1 00 59 */ stb r6, 0x59(r1) +/* 802011A0 001FE100 B0 61 00 5A */ sth r3, 0x5a(r1) +/* 802011A4 001FE104 90 81 00 5C */ stw r4, 0x5c(r1) +/* 802011A8 001FE108 90 9F 00 04 */ stw r4, 4(r31) +/* 802011AC 001FE10C 48 00 03 04 */ b lbl_802014B0 +lbl_802011B0: +/* 802011B0 001FE110 80 9D 00 00 */ lwz r4, 0(r29) +/* 802011B4 001FE114 38 E0 00 02 */ li r7, 2 +/* 802011B8 001FE118 38 C0 00 00 */ li r6, 0 +/* 802011BC 001FE11C 38 A0 00 03 */ li r5, 3 +/* 802011C0 001FE120 98 FF 00 00 */ stb r7, 0(r31) +/* 802011C4 001FE124 54 03 EF BC */ rlwinm r3, r0, 0x1d, 0x1e, 0x1e +/* 802011C8 001FE128 50 03 DF FE */ rlwimi r3, r0, 0x1b, 0x1f, 0x1f +/* 802011CC 001FE12C 50 A3 04 3A */ rlwimi r3, r5, 0, 0x10, 0x1d +/* 802011D0 001FE130 98 DF 00 01 */ stb r6, 1(r31) +/* 802011D4 001FE134 54 60 04 3E */ clrlwi r0, r3, 0x10 +/* 802011D8 001FE138 60 00 00 08 */ ori r0, r0, 8 +/* 802011DC 001FE13C 98 E1 00 40 */ stb r7, 0x40(r1) +/* 802011E0 001FE140 B0 1F 00 02 */ sth r0, 2(r31) +/* 802011E4 001FE144 98 C1 00 41 */ stb r6, 0x41(r1) +/* 802011E8 001FE148 B0 A1 00 42 */ sth r5, 0x42(r1) +/* 802011EC 001FE14C 90 81 00 44 */ stw r4, 0x44(r1) +/* 802011F0 001FE150 98 E1 00 48 */ stb r7, 0x48(r1) +/* 802011F4 001FE154 98 C1 00 49 */ stb r6, 0x49(r1) +/* 802011F8 001FE158 B0 61 00 4A */ sth r3, 0x4a(r1) +/* 802011FC 001FE15C 90 81 00 4C */ stw r4, 0x4c(r1) +/* 80201200 001FE160 90 9F 00 04 */ stw r4, 4(r31) +/* 80201204 001FE164 48 00 02 AC */ b lbl_802014B0 +lbl_80201208: +/* 80201208 001FE168 80 1E 00 48 */ lwz r0, 0x48(r30) +/* 8020120C 001FE16C 2C 00 00 02 */ cmpwi r0, 2 +/* 80201210 001FE170 41 82 01 2C */ beq lbl_8020133C +/* 80201214 001FE174 40 80 00 14 */ bge lbl_80201228 +/* 80201218 001FE178 2C 00 00 00 */ cmpwi r0, 0 +/* 8020121C 001FE17C 41 82 00 1C */ beq lbl_80201238 +/* 80201220 001FE180 40 80 00 D8 */ bge lbl_802012F8 +/* 80201224 001FE184 48 00 02 60 */ b lbl_80201484 +lbl_80201228: +/* 80201228 001FE188 2C 00 00 04 */ cmpwi r0, 4 +/* 8020122C 001FE18C 41 82 02 14 */ beq lbl_80201440 +/* 80201230 001FE190 40 80 02 54 */ bge lbl_80201484 +/* 80201234 001FE194 48 00 01 4C */ b lbl_80201380 +lbl_80201238: +/* 80201238 001FE198 48 14 8D 75 */ bl White__6CColorFv +/* 8020123C 001FE19C 80 FD 00 00 */ lwz r7, 0(r29) +/* 80201240 001FE1A0 80 03 00 00 */ lwz r0, 0(r3) +/* 80201244 001FE1A4 7C 07 00 40 */ cmplw r7, r0 +/* 80201248 001FE1A8 40 82 00 70 */ bne lbl_802012B8 +/* 8020124C 001FE1AC C0 22 B0 40 */ lfs f1, lbl_805ACD60@sda21(r2) +/* 80201250 001FE1B0 38 80 00 00 */ li r4, 0 +/* 80201254 001FE1B4 88 BE 00 54 */ lbz r5, 0x54(r30) +/* 80201258 001FE1B8 38 00 00 03 */ li r0, 3 +/* 8020125C 001FE1BC FC 40 08 90 */ fmr f2, f1 +/* 80201260 001FE1C0 98 81 00 38 */ stb r4, 0x38(r1) +/* 80201264 001FE1C4 FC 60 08 90 */ fmr f3, f1 +/* 80201268 001FE1C8 38 61 00 3C */ addi r3, r1, 0x3c +/* 8020126C 001FE1CC FC 80 08 90 */ fmr f4, f1 +/* 80201270 001FE1D0 98 81 00 39 */ stb r4, 0x39(r1) +/* 80201274 001FE1D4 B0 01 00 3A */ sth r0, 0x3a(r1) +/* 80201278 001FE1D8 54 BE E7 FE */ rlwinm r30, r5, 0x1c, 0x1f, 0x1f +/* 8020127C 001FE1DC 54 BD DF FE */ rlwinm r29, r5, 0x1b, 0x1f, 0x1f +/* 80201280 001FE1E0 48 16 21 6D */ bl __ct__6CColorFffff +/* 80201284 001FE1E4 A0 81 00 3A */ lhz r4, 0x3a(r1) +/* 80201288 001FE1E8 57 C3 0D FC */ rlwinm r3, r30, 1, 0x17, 0x1e +/* 8020128C 001FE1EC 88 01 00 38 */ lbz r0, 0x38(r1) +/* 80201290 001FE1F0 7F A3 1B 78 */ or r3, r29, r3 +/* 80201294 001FE1F4 54 84 00 3A */ rlwinm r4, r4, 0, 0, 0x1d +/* 80201298 001FE1F8 98 1F 00 00 */ stb r0, 0(r31) +/* 8020129C 001FE1FC 7C 83 1B 78 */ or r3, r4, r3 +/* 802012A0 001FE200 88 01 00 39 */ lbz r0, 0x39(r1) +/* 802012A4 001FE204 98 1F 00 01 */ stb r0, 1(r31) +/* 802012A8 001FE208 B0 7F 00 02 */ sth r3, 2(r31) +/* 802012AC 001FE20C 80 01 00 3C */ lwz r0, 0x3c(r1) +/* 802012B0 001FE210 90 1F 00 04 */ stw r0, 4(r31) +/* 802012B4 001FE214 48 00 01 FC */ b lbl_802014B0 +lbl_802012B8: +/* 802012B8 001FE218 88 BE 00 54 */ lbz r5, 0x54(r30) +/* 802012BC 001FE21C 38 80 00 05 */ li r4, 5 +/* 802012C0 001FE220 38 60 00 00 */ li r3, 0 +/* 802012C4 001FE224 38 00 00 03 */ li r0, 3 +/* 802012C8 001FE228 98 9F 00 00 */ stb r4, 0(r31) +/* 802012CC 001FE22C 54 A6 EF BC */ rlwinm r6, r5, 0x1d, 0x1e, 0x1e +/* 802012D0 001FE230 50 A6 DF FE */ rlwimi r6, r5, 0x1b, 0x1f, 0x1f +/* 802012D4 001FE234 98 7F 00 01 */ stb r3, 1(r31) +/* 802012D8 001FE238 50 06 04 3A */ rlwimi r6, r0, 0, 0x10, 0x1d +/* 802012DC 001FE23C B0 DF 00 02 */ sth r6, 2(r31) +/* 802012E0 001FE240 98 81 00 30 */ stb r4, 0x30(r1) +/* 802012E4 001FE244 98 61 00 31 */ stb r3, 0x31(r1) +/* 802012E8 001FE248 B0 01 00 32 */ sth r0, 0x32(r1) +/* 802012EC 001FE24C 90 E1 00 34 */ stw r7, 0x34(r1) +/* 802012F0 001FE250 90 FF 00 04 */ stw r7, 4(r31) +/* 802012F4 001FE254 48 00 01 BC */ b lbl_802014B0 +lbl_802012F8: +/* 802012F8 001FE258 88 DE 00 54 */ lbz r6, 0x54(r30) +/* 802012FC 001FE25C 38 A0 00 07 */ li r5, 7 +/* 80201300 001FE260 80 1D 00 00 */ lwz r0, 0(r29) +/* 80201304 001FE264 38 80 00 00 */ li r4, 0 +/* 80201308 001FE268 38 60 00 03 */ li r3, 3 +/* 8020130C 001FE26C 54 C7 EF BC */ rlwinm r7, r6, 0x1d, 0x1e, 0x1e +/* 80201310 001FE270 98 BF 00 00 */ stb r5, 0(r31) +/* 80201314 001FE274 50 C7 DF FE */ rlwimi r7, r6, 0x1b, 0x1f, 0x1f +/* 80201318 001FE278 50 67 04 3A */ rlwimi r7, r3, 0, 0x10, 0x1d +/* 8020131C 001FE27C 98 9F 00 01 */ stb r4, 1(r31) +/* 80201320 001FE280 B0 FF 00 02 */ sth r7, 2(r31) +/* 80201324 001FE284 98 A1 00 28 */ stb r5, 0x28(r1) +/* 80201328 001FE288 98 81 00 29 */ stb r4, 0x29(r1) +/* 8020132C 001FE28C B0 61 00 2A */ sth r3, 0x2a(r1) +/* 80201330 001FE290 90 01 00 2C */ stw r0, 0x2c(r1) +/* 80201334 001FE294 90 1F 00 04 */ stw r0, 4(r31) +/* 80201338 001FE298 48 00 01 78 */ b lbl_802014B0 +lbl_8020133C: +/* 8020133C 001FE29C 88 DE 00 54 */ lbz r6, 0x54(r30) +/* 80201340 001FE2A0 38 A0 00 08 */ li r5, 8 +/* 80201344 001FE2A4 80 1D 00 00 */ lwz r0, 0(r29) +/* 80201348 001FE2A8 38 80 00 00 */ li r4, 0 +/* 8020134C 001FE2AC 38 60 00 03 */ li r3, 3 +/* 80201350 001FE2B0 54 C7 EF BC */ rlwinm r7, r6, 0x1d, 0x1e, 0x1e +/* 80201354 001FE2B4 98 BF 00 00 */ stb r5, 0(r31) +/* 80201358 001FE2B8 50 C7 DF FE */ rlwimi r7, r6, 0x1b, 0x1f, 0x1f +/* 8020135C 001FE2BC 50 67 04 3A */ rlwimi r7, r3, 0, 0x10, 0x1d +/* 80201360 001FE2C0 98 9F 00 01 */ stb r4, 1(r31) +/* 80201364 001FE2C4 B0 FF 00 02 */ sth r7, 2(r31) +/* 80201368 001FE2C8 98 A1 00 20 */ stb r5, 0x20(r1) +/* 8020136C 001FE2CC 98 81 00 21 */ stb r4, 0x21(r1) +/* 80201370 001FE2D0 B0 61 00 22 */ sth r3, 0x22(r1) +/* 80201374 001FE2D4 90 01 00 24 */ stw r0, 0x24(r1) +/* 80201378 001FE2D8 90 1F 00 04 */ stw r0, 4(r31) +/* 8020137C 001FE2DC 48 00 01 34 */ b lbl_802014B0 +lbl_80201380: +/* 80201380 001FE2E0 48 14 8C 2D */ bl White__6CColorFv +/* 80201384 001FE2E4 80 FD 00 00 */ lwz r7, 0(r29) +/* 80201388 001FE2E8 80 03 00 00 */ lwz r0, 0(r3) +/* 8020138C 001FE2EC 7C 07 00 40 */ cmplw r7, r0 +/* 80201390 001FE2F0 40 82 00 70 */ bne lbl_80201400 +/* 80201394 001FE2F4 C0 22 B0 40 */ lfs f1, lbl_805ACD60@sda21(r2) +/* 80201398 001FE2F8 38 80 00 00 */ li r4, 0 +/* 8020139C 001FE2FC 88 BE 00 54 */ lbz r5, 0x54(r30) +/* 802013A0 001FE300 38 00 00 03 */ li r0, 3 +/* 802013A4 001FE304 FC 40 08 90 */ fmr f2, f1 +/* 802013A8 001FE308 98 81 00 18 */ stb r4, 0x18(r1) +/* 802013AC 001FE30C FC 60 08 90 */ fmr f3, f1 +/* 802013B0 001FE310 38 61 00 1C */ addi r3, r1, 0x1c +/* 802013B4 001FE314 FC 80 08 90 */ fmr f4, f1 +/* 802013B8 001FE318 98 81 00 19 */ stb r4, 0x19(r1) +/* 802013BC 001FE31C B0 01 00 1A */ sth r0, 0x1a(r1) +/* 802013C0 001FE320 54 BD E7 FE */ rlwinm r29, r5, 0x1c, 0x1f, 0x1f +/* 802013C4 001FE324 54 BE DF FE */ rlwinm r30, r5, 0x1b, 0x1f, 0x1f +/* 802013C8 001FE328 48 16 20 25 */ bl __ct__6CColorFffff +/* 802013CC 001FE32C A0 81 00 1A */ lhz r4, 0x1a(r1) +/* 802013D0 001FE330 57 A3 0D FC */ rlwinm r3, r29, 1, 0x17, 0x1e +/* 802013D4 001FE334 88 01 00 18 */ lbz r0, 0x18(r1) +/* 802013D8 001FE338 7F C3 1B 78 */ or r3, r30, r3 +/* 802013DC 001FE33C 54 84 00 3A */ rlwinm r4, r4, 0, 0, 0x1d +/* 802013E0 001FE340 98 1F 00 00 */ stb r0, 0(r31) +/* 802013E4 001FE344 7C 83 1B 78 */ or r3, r4, r3 +/* 802013E8 001FE348 88 01 00 19 */ lbz r0, 0x19(r1) +/* 802013EC 001FE34C 98 1F 00 01 */ stb r0, 1(r31) +/* 802013F0 001FE350 B0 7F 00 02 */ sth r3, 2(r31) +/* 802013F4 001FE354 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 802013F8 001FE358 90 1F 00 04 */ stw r0, 4(r31) +/* 802013FC 001FE35C 48 00 00 B4 */ b lbl_802014B0 +lbl_80201400: +/* 80201400 001FE360 88 BE 00 54 */ lbz r5, 0x54(r30) +/* 80201404 001FE364 38 80 00 01 */ li r4, 1 +/* 80201408 001FE368 38 60 00 00 */ li r3, 0 +/* 8020140C 001FE36C 38 00 00 03 */ li r0, 3 +/* 80201410 001FE370 98 9F 00 00 */ stb r4, 0(r31) +/* 80201414 001FE374 54 A6 EF BC */ rlwinm r6, r5, 0x1d, 0x1e, 0x1e +/* 80201418 001FE378 50 A6 DF FE */ rlwimi r6, r5, 0x1b, 0x1f, 0x1f +/* 8020141C 001FE37C 98 7F 00 01 */ stb r3, 1(r31) +/* 80201420 001FE380 50 06 04 3A */ rlwimi r6, r0, 0, 0x10, 0x1d +/* 80201424 001FE384 B0 DF 00 02 */ sth r6, 2(r31) +/* 80201428 001FE388 98 81 00 10 */ stb r4, 0x10(r1) +/* 8020142C 001FE38C 98 61 00 11 */ stb r3, 0x11(r1) +/* 80201430 001FE390 B0 01 00 12 */ sth r0, 0x12(r1) +/* 80201434 001FE394 90 E1 00 14 */ stw r7, 0x14(r1) +/* 80201438 001FE398 90 FF 00 04 */ stw r7, 4(r31) +/* 8020143C 001FE39C 48 00 00 74 */ b lbl_802014B0 +lbl_80201440: +/* 80201440 001FE3A0 88 DE 00 54 */ lbz r6, 0x54(r30) +/* 80201444 001FE3A4 38 A0 00 02 */ li r5, 2 +/* 80201448 001FE3A8 80 1D 00 00 */ lwz r0, 0(r29) +/* 8020144C 001FE3AC 38 80 00 00 */ li r4, 0 +/* 80201450 001FE3B0 38 60 00 03 */ li r3, 3 +/* 80201454 001FE3B4 54 C7 EF BC */ rlwinm r7, r6, 0x1d, 0x1e, 0x1e +/* 80201458 001FE3B8 98 BF 00 00 */ stb r5, 0(r31) +/* 8020145C 001FE3BC 50 C7 DF FE */ rlwimi r7, r6, 0x1b, 0x1f, 0x1f +/* 80201460 001FE3C0 50 67 04 3A */ rlwimi r7, r3, 0, 0x10, 0x1d +/* 80201464 001FE3C4 98 9F 00 01 */ stb r4, 1(r31) +/* 80201468 001FE3C8 B0 FF 00 02 */ sth r7, 2(r31) +/* 8020146C 001FE3CC 98 A1 00 08 */ stb r5, 8(r1) +/* 80201470 001FE3D0 98 81 00 09 */ stb r4, 9(r1) +/* 80201474 001FE3D4 B0 61 00 0A */ sth r3, 0xa(r1) +/* 80201478 001FE3D8 90 01 00 0C */ stw r0, 0xc(r1) +/* 8020147C 001FE3DC 90 1F 00 04 */ stw r0, 4(r31) +/* 80201480 001FE3E0 48 00 00 30 */ b lbl_802014B0 +lbl_80201484: +/* 80201484 001FE3E4 38 80 00 00 */ li r4, 0 +/* 80201488 001FE3E8 C0 22 B0 40 */ lfs f1, lbl_805ACD60@sda21(r2) +/* 8020148C 001FE3EC 98 9F 00 00 */ stb r4, 0(r31) +/* 80201490 001FE3F0 38 00 00 03 */ li r0, 3 +/* 80201494 001FE3F4 FC 40 08 90 */ fmr f2, f1 +/* 80201498 001FE3F8 38 7F 00 04 */ addi r3, r31, 4 +/* 8020149C 001FE3FC 98 9F 00 01 */ stb r4, 1(r31) +/* 802014A0 001FE400 FC 60 08 90 */ fmr f3, f1 +/* 802014A4 001FE404 FC 80 08 90 */ fmr f4, f1 +/* 802014A8 001FE408 B0 1F 00 02 */ sth r0, 2(r31) +/* 802014AC 001FE40C 48 16 1F 41 */ bl __ct__6CColorFffff +lbl_802014B0: +/* 802014B0 001FE410 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 802014B4 001FE414 83 E1 00 9C */ lwz r31, 0x9c(r1) +/* 802014B8 001FE418 83 C1 00 98 */ lwz r30, 0x98(r1) +/* 802014BC 001FE41C 83 A1 00 94 */ lwz r29, 0x94(r1) +/* 802014C0 001FE420 7C 08 03 A6 */ mtlr r0 +/* 802014C4 001FE424 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 802014C8 001FE428 4E 80 00 20 */ blr + +.global End__20CScriptColorModulateFR13CStateManager +End__20CScriptColorModulateFR13CStateManager: +/* 802014CC 001FE42C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 802014D0 001FE430 7C 08 02 A6 */ mflr r0 +/* 802014D4 001FE434 C0 02 B0 30 */ lfs f0, lbl_805ACD50@sda21(r2) +/* 802014D8 001FE438 90 01 00 34 */ stw r0, 0x34(r1) +/* 802014DC 001FE43C 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 802014E0 001FE440 7C 9F 23 78 */ mr r31, r4 +/* 802014E4 001FE444 93 C1 00 28 */ stw r30, 0x28(r1) +/* 802014E8 001FE448 7C 7E 1B 78 */ mr r30, r3 +/* 802014EC 001FE44C D0 03 00 3C */ stfs f0, 0x3c(r3) +/* 802014F0 001FE450 88 63 00 54 */ lbz r3, 0x54(r3) +/* 802014F4 001FE454 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f +/* 802014F8 001FE458 41 82 00 2C */ beq lbl_80201524 +/* 802014FC 001FE45C 54 60 F7 FF */ rlwinm. r0, r3, 0x1e, 0x1f, 0x1f +/* 80201500 001FE460 40 82 00 24 */ bne lbl_80201524 +/* 80201504 001FE464 38 00 00 01 */ li r0, 1 +/* 80201508 001FE468 50 03 17 7A */ rlwimi r3, r0, 2, 0x1d, 0x1d +/* 8020150C 001FE46C 98 7E 00 54 */ stb r3, 0x54(r30) +/* 80201510 001FE470 80 1E 00 38 */ lwz r0, 0x38(r30) +/* 80201514 001FE474 7C 00 00 34 */ cntlzw r0, r0 +/* 80201518 001FE478 54 00 D9 7E */ srwi r0, r0, 5 +/* 8020151C 001FE47C 90 1E 00 38 */ stw r0, 0x38(r30) +/* 80201520 001FE480 48 00 00 D0 */ b lbl_802015F0 +lbl_80201524: +/* 80201524 001FE484 88 1E 00 54 */ lbz r0, 0x54(r30) +/* 80201528 001FE488 38 80 00 00 */ li r4, 0 +/* 8020152C 001FE48C 50 80 0F BC */ rlwimi r0, r4, 1, 0x1e, 0x1e +/* 80201530 001FE490 98 1E 00 54 */ stb r0, 0x54(r30) +/* 80201534 001FE494 88 1E 00 54 */ lbz r0, 0x54(r30) +/* 80201538 001FE498 50 80 17 7A */ rlwimi r0, r4, 2, 0x1d, 0x1d +/* 8020153C 001FE49C 98 1E 00 54 */ stb r0, 0x54(r30) +/* 80201540 001FE4A0 88 1E 00 54 */ lbz r0, 0x54(r30) +/* 80201544 001FE4A4 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80201548 001FE4A8 41 82 00 3C */ beq lbl_80201584 +/* 8020154C 001FE4AC C0 22 B0 40 */ lfs f1, lbl_805ACD60@sda21(r2) +/* 80201550 001FE4B0 38 00 00 03 */ li r0, 3 +/* 80201554 001FE4B4 98 81 00 1C */ stb r4, 0x1c(r1) +/* 80201558 001FE4B8 38 61 00 20 */ addi r3, r1, 0x20 +/* 8020155C 001FE4BC FC 40 08 90 */ fmr f2, f1 +/* 80201560 001FE4C0 FC 60 08 90 */ fmr f3, f1 +/* 80201564 001FE4C4 98 81 00 1D */ stb r4, 0x1d(r1) +/* 80201568 001FE4C8 FC 80 08 90 */ fmr f4, f1 +/* 8020156C 001FE4CC B0 01 00 1E */ sth r0, 0x1e(r1) +/* 80201570 001FE4D0 48 16 1E 7D */ bl __ct__6CColorFffff +/* 80201574 001FE4D4 7F C3 F3 78 */ mr r3, r30 +/* 80201578 001FE4D8 7F E4 FB 78 */ mr r4, r31 +/* 8020157C 001FE4DC 38 A1 00 1C */ addi r5, r1, 0x1c +/* 80201580 001FE4E0 48 00 00 89 */ bl SetTargetFlags__20CScriptColorModulateFR13CStateManagerRC11CModelFlags +lbl_80201584: +/* 80201584 001FE4E4 88 1E 00 55 */ lbz r0, 0x55(r30) +/* 80201588 001FE4E8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8020158C 001FE4EC 41 82 00 2C */ beq lbl_802015B8 +/* 80201590 001FE4F0 A0 FE 00 08 */ lhz r7, 8(r30) +/* 80201594 001FE4F4 7F E3 FB 78 */ mr r3, r31 +/* 80201598 001FE4F8 38 81 00 18 */ addi r4, r1, 0x18 +/* 8020159C 001FE4FC 38 A1 00 14 */ addi r5, r1, 0x14 +/* 802015A0 001FE500 B0 E1 00 14 */ sth r7, 0x14(r1) +/* 802015A4 001FE504 38 C0 00 04 */ li r6, 4 +/* 802015A8 001FE508 A0 1E 00 34 */ lhz r0, 0x34(r30) +/* 802015AC 001FE50C B0 E1 00 10 */ sth r7, 0x10(r1) +/* 802015B0 001FE510 B0 01 00 18 */ sth r0, 0x18(r1) +/* 802015B4 001FE514 4B E4 28 A1 */ bl SendScriptMsgAlways__13CStateManagerF9TUniqueId +lbl_802015B8: +/* 802015B8 001FE518 7F C3 F3 78 */ mr r3, r30 +/* 802015BC 001FE51C 7F E5 FB 78 */ mr r5, r31 +/* 802015C0 001FE520 38 80 00 07 */ li r4, 7 +/* 802015C4 001FE524 38 C0 FF FF */ li r6, -1 +/* 802015C8 001FE528 4B E4 FA F9 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 802015CC 001FE52C 88 1E 00 54 */ lbz r0, 0x54(r30) +/* 802015D0 001FE530 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 802015D4 001FE534 41 82 00 1C */ beq lbl_802015F0 +/* 802015D8 001FE538 A0 1E 00 08 */ lhz r0, 8(r30) +/* 802015DC 001FE53C 7F E3 FB 78 */ mr r3, r31 +/* 802015E0 001FE540 38 81 00 0C */ addi r4, r1, 0xc +/* 802015E4 001FE544 B0 01 00 08 */ sth r0, 8(r1) +/* 802015E8 001FE548 B0 01 00 0C */ sth r0, 0xc(r1) +/* 802015EC 001FE54C 4B E4 AC 81 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +lbl_802015F0: +/* 802015F0 001FE550 80 01 00 34 */ lwz r0, 0x34(r1) +/* 802015F4 001FE554 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 802015F8 001FE558 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 802015FC 001FE55C 7C 08 03 A6 */ mtlr r0 +/* 80201600 001FE560 38 21 00 30 */ addi r1, r1, 0x30 +/* 80201604 001FE564 4E 80 00 20 */ blr + +.global SetTargetFlags__20CScriptColorModulateFR13CStateManagerRC11CModelFlags +SetTargetFlags__20CScriptColorModulateFR13CStateManagerRC11CModelFlags: +/* 80201608 001FE568 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 8020160C 001FE56C 7C 08 02 A6 */ mflr r0 +/* 80201610 001FE570 90 01 00 64 */ stw r0, 0x64(r1) +/* 80201614 001FE574 BF 01 00 40 */ stmw r24, 0x40(r1) +/* 80201618 001FE578 7C 7C 1B 78 */ mr r28, r3 +/* 8020161C 001FE57C 7C 9D 23 78 */ mr r29, r4 +/* 80201620 001FE580 7C BE 2B 78 */ mr r30, r5 +/* 80201624 001FE584 83 E3 00 2C */ lwz r31, 0x2c(r3) +/* 80201628 001FE588 48 00 00 C8 */ b lbl_802016F0 +lbl_8020162C: +/* 8020162C 001FE58C 80 1F 00 00 */ lwz r0, 0(r31) +/* 80201630 001FE590 2C 00 00 12 */ cmpwi r0, 0x12 +/* 80201634 001FE594 40 82 00 B8 */ bne lbl_802016EC +/* 80201638 001FE598 80 1F 00 04 */ lwz r0, 4(r31) +/* 8020163C 001FE59C 2C 00 00 01 */ cmpwi r0, 1 +/* 80201640 001FE5A0 40 82 00 AC */ bne lbl_802016EC +/* 80201644 001FE5A4 80 1F 00 08 */ lwz r0, 8(r31) +/* 80201648 001FE5A8 7F A4 EB 78 */ mr r4, r29 +/* 8020164C 001FE5AC 38 61 00 24 */ addi r3, r1, 0x24 +/* 80201650 001FE5B0 38 A1 00 10 */ addi r5, r1, 0x10 +/* 80201654 001FE5B4 90 01 00 10 */ stw r0, 0x10(r1) +/* 80201658 001FE5B8 4B E4 69 71 */ bl GetIdListForScript__13CStateManagerCF9TEditorId +/* 8020165C 001FE5BC 83 61 00 28 */ lwz r27, 0x28(r1) +/* 80201660 001FE5C0 83 41 00 2C */ lwz r26, 0x2c(r1) +/* 80201664 001FE5C4 83 21 00 30 */ lwz r25, 0x30(r1) +/* 80201668 001FE5C8 83 01 00 24 */ lwz r24, 0x24(r1) +/* 8020166C 001FE5CC 48 00 00 60 */ b lbl_802016CC +lbl_80201670: +/* 80201670 001FE5D0 A0 18 00 14 */ lhz r0, 0x14(r24) +/* 80201674 001FE5D4 7F A3 EB 78 */ mr r3, r29 +/* 80201678 001FE5D8 38 81 00 0C */ addi r4, r1, 0xc +/* 8020167C 001FE5DC B0 01 00 0C */ sth r0, 0xc(r1) +/* 80201680 001FE5E0 4B E4 AE F5 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80201684 001FE5E4 7C 64 1B 78 */ mr r4, r3 +/* 80201688 001FE5E8 38 61 00 1C */ addi r3, r1, 0x1c +/* 8020168C 001FE5EC 4B EA E6 05 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 80201690 001FE5F0 80 63 00 04 */ lwz r3, 4(r3) +/* 80201694 001FE5F4 28 03 00 00 */ cmplwi r3, 0 +/* 80201698 001FE5F8 41 82 00 24 */ beq lbl_802016BC +/* 8020169C 001FE5FC 88 1E 00 00 */ lbz r0, 0(r30) +/* 802016A0 001FE600 98 03 00 B4 */ stb r0, 0xb4(r3) +/* 802016A4 001FE604 88 1E 00 01 */ lbz r0, 1(r30) +/* 802016A8 001FE608 98 03 00 B5 */ stb r0, 0xb5(r3) +/* 802016AC 001FE60C A0 1E 00 02 */ lhz r0, 2(r30) +/* 802016B0 001FE610 B0 03 00 B6 */ sth r0, 0xb6(r3) +/* 802016B4 001FE614 80 1E 00 04 */ lwz r0, 4(r30) +/* 802016B8 001FE618 90 03 00 B8 */ stw r0, 0xb8(r3) +lbl_802016BC: +/* 802016BC 001FE61C 7F 63 DB 78 */ mr r3, r27 +/* 802016C0 001FE620 7F 04 C3 78 */ mr r4, r24 +/* 802016C4 001FE624 48 13 AF 1D */ bl rbtree_traverse_forward__4rstlFPCvPv +/* 802016C8 001FE628 7C 78 1B 78 */ mr r24, r3 +lbl_802016CC: +/* 802016CC 001FE62C 7C 18 D0 40 */ cmplw r24, r26 +/* 802016D0 001FE630 38 00 00 00 */ li r0, 0 +/* 802016D4 001FE634 40 82 00 0C */ bne lbl_802016E0 +/* 802016D8 001FE638 7C 1B C8 40 */ cmplw r27, r25 +/* 802016DC 001FE63C 41 82 00 08 */ beq lbl_802016E4 +lbl_802016E0: +/* 802016E0 001FE640 38 00 00 01 */ li r0, 1 +lbl_802016E4: +/* 802016E4 001FE644 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 802016E8 001FE648 40 82 FF 88 */ bne lbl_80201670 +lbl_802016EC: +/* 802016EC 001FE64C 3B FF 00 0C */ addi r31, r31, 0xc +lbl_802016F0: +/* 802016F0 001FE650 80 1C 00 24 */ lwz r0, 0x24(r28) +/* 802016F4 001FE654 80 7C 00 2C */ lwz r3, 0x2c(r28) +/* 802016F8 001FE658 1C 00 00 0C */ mulli r0, r0, 0xc +/* 802016FC 001FE65C 7C 03 02 14 */ add r0, r3, r0 +/* 80201700 001FE660 7C 1F 00 40 */ cmplw r31, r0 +/* 80201704 001FE664 40 82 FF 28 */ bne lbl_8020162C +/* 80201708 001FE668 A0 7C 00 34 */ lhz r3, 0x34(r28) +/* 8020170C 001FE66C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80201710 001FE670 7C 03 00 40 */ cmplw r3, r0 +/* 80201714 001FE674 41 82 00 50 */ beq lbl_80201764 +/* 80201718 001FE678 A0 1C 00 34 */ lhz r0, 0x34(r28) +/* 8020171C 001FE67C 7F A3 EB 78 */ mr r3, r29 +/* 80201720 001FE680 38 81 00 08 */ addi r4, r1, 8 +/* 80201724 001FE684 B0 01 00 08 */ sth r0, 8(r1) +/* 80201728 001FE688 4B E4 AE 4D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8020172C 001FE68C 7C 64 1B 78 */ mr r4, r3 +/* 80201730 001FE690 38 61 00 14 */ addi r3, r1, 0x14 +/* 80201734 001FE694 4B EA E5 5D */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 80201738 001FE698 80 63 00 04 */ lwz r3, 4(r3) +/* 8020173C 001FE69C 28 03 00 00 */ cmplwi r3, 0 +/* 80201740 001FE6A0 41 82 00 24 */ beq lbl_80201764 +/* 80201744 001FE6A4 88 1E 00 00 */ lbz r0, 0(r30) +/* 80201748 001FE6A8 98 03 00 B4 */ stb r0, 0xb4(r3) +/* 8020174C 001FE6AC 88 1E 00 01 */ lbz r0, 1(r30) +/* 80201750 001FE6B0 98 03 00 B5 */ stb r0, 0xb5(r3) +/* 80201754 001FE6B4 A0 1E 00 02 */ lhz r0, 2(r30) +/* 80201758 001FE6B8 B0 03 00 B6 */ sth r0, 0xb6(r3) +/* 8020175C 001FE6BC 80 1E 00 04 */ lwz r0, 4(r30) +/* 80201760 001FE6C0 90 03 00 B8 */ stw r0, 0xb8(r3) +lbl_80201764: +/* 80201764 001FE6C4 BB 01 00 40 */ lmw r24, 0x40(r1) +/* 80201768 001FE6C8 80 01 00 64 */ lwz r0, 0x64(r1) +/* 8020176C 001FE6CC 7C 08 03 A6 */ mtlr r0 +/* 80201770 001FE6D0 38 21 00 60 */ addi r1, r1, 0x60 +/* 80201774 001FE6D4 4E 80 00 20 */ blr + +.global FadeOutHelper__20CScriptColorModulateFR13CStateManager9TUniqueIdf +FadeOutHelper__20CScriptColorModulateFR13CStateManager9TUniqueIdf: +/* 80201778 001FE6D8 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 8020177C 001FE6DC 7C 08 02 A6 */ mflr r0 +/* 80201780 001FE6E0 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 80201784 001FE6E4 DB E1 00 A0 */ stfd f31, 0xa0(r1) +/* 80201788 001FE6E8 F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0 +/* 8020178C 001FE6EC BF 41 00 88 */ stmw r26, 0x88(r1) +/* 80201790 001FE6F0 7C BF 2B 78 */ mr r31, r5 +/* 80201794 001FE6F4 7C 9E 23 78 */ mr r30, r4 +/* 80201798 001FE6F8 A0 05 00 00 */ lhz r0, 0(r5) +/* 8020179C 001FE6FC 7C 7D 1B 78 */ mr r29, r3 +/* 802017A0 001FE700 FF E0 08 90 */ fmr f31, f1 +/* 802017A4 001FE704 7F C3 F3 78 */ mr r3, r30 +/* 802017A8 001FE708 B0 01 00 28 */ sth r0, 0x28(r1) +/* 802017AC 001FE70C 38 81 00 28 */ addi r4, r1, 0x28 +/* 802017B0 001FE710 4B E4 AD F5 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 802017B4 001FE714 28 03 00 00 */ cmplwi r3, 0 +/* 802017B8 001FE718 41 82 00 14 */ beq lbl_802017CC +/* 802017BC 001FE71C 80 03 00 04 */ lwz r0, 4(r3) +/* 802017C0 001FE720 38 61 00 54 */ addi r3, r1, 0x54 +/* 802017C4 001FE724 90 01 00 54 */ stw r0, 0x54(r1) +/* 802017C8 001FE728 48 00 00 10 */ b lbl_802017D8 +lbl_802017CC: +/* 802017CC 001FE72C 80 1E 08 CC */ lwz r0, 0x8cc(r30) +/* 802017D0 001FE730 38 61 00 50 */ addi r3, r1, 0x50 +/* 802017D4 001FE734 90 01 00 50 */ stw r0, 0x50(r1) +lbl_802017D8: +/* 802017D8 001FE738 80 63 00 00 */ lwz r3, 0(r3) +/* 802017DC 001FE73C 38 00 00 00 */ li r0, 0 +/* 802017E0 001FE740 38 AD A9 18 */ addi r5, r13, "_EmptyString__Q24rstl66basic_string,Q24rstl17rmemory_allocator>"@sda21 +/* 802017E4 001FE744 7F C4 F3 78 */ mr r4, r30 +/* 802017E8 001FE748 90 61 00 58 */ stw r3, 0x58(r1) +/* 802017EC 001FE74C 38 61 00 24 */ addi r3, r1, 0x24 +/* 802017F0 001FE750 90 A1 00 5C */ stw r5, 0x5c(r1) +/* 802017F4 001FE754 90 01 00 60 */ stw r0, 0x60(r1) +/* 802017F8 001FE758 90 01 00 64 */ stw r0, 0x64(r1) +/* 802017FC 001FE75C 4B E4 B8 E1 */ bl AllocateUniqueId__13CStateManagerFv +/* 80201800 001FE760 A0 01 00 24 */ lhz r0, 0x24(r1) +/* 80201804 001FE764 3C 60 80 3D */ lis r3, lbl_803D2580@ha +/* 80201808 001FE768 38 83 25 80 */ addi r4, r3, lbl_803D2580@l +/* 8020180C 001FE76C 3B 40 00 00 */ li r26, 0 +/* 80201810 001FE770 B0 01 00 2C */ sth r0, 0x2c(r1) +/* 80201814 001FE774 38 60 00 58 */ li r3, 0x58 +/* 80201818 001FE778 38 A0 00 00 */ li r5, 0 +/* 8020181C 001FE77C 48 11 40 51 */ bl __nw__FUlPCcPCc +/* 80201820 001FE780 7C 7B 1B 79 */ or. r27, r3, r3 +/* 80201824 001FE784 41 82 00 B8 */ beq lbl_802018DC +/* 80201828 001FE788 80 8D A3 88 */ lwz r4, lbl_805A8F48@sda21(r13) +/* 8020182C 001FE78C 3C 60 80 57 */ lis r3, lbl_8056D410@ha +/* 80201830 001FE790 80 01 00 58 */ lwz r0, 0x58(r1) +/* 80201834 001FE794 38 A3 D4 10 */ addi r5, r3, lbl_8056D410@l +/* 80201838 001FE798 90 81 00 44 */ stw r4, 0x44(r1) +/* 8020183C 001FE79C 38 61 00 6C */ addi r3, r1, 0x6c +/* 80201840 001FE7A0 38 81 00 40 */ addi r4, r1, 0x40 +/* 80201844 001FE7A4 38 C1 00 44 */ addi r6, r1, 0x44 +/* 80201848 001FE7A8 90 01 00 40 */ stw r0, 0x40(r1) +/* 8020184C 001FE7AC 4B E4 FC 39 */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" +/* 80201850 001FE7B0 C0 22 B0 40 */ lfs f1, lbl_805ACD60@sda21(r2) +/* 80201854 001FE7B4 38 61 00 4C */ addi r3, r1, 0x4c +/* 80201858 001FE7B8 A0 01 00 2C */ lhz r0, 0x2c(r1) +/* 8020185C 001FE7BC 3B 40 00 01 */ li r26, 1 +/* 80201860 001FE7C0 FC 40 08 90 */ fmr f2, f1 +/* 80201864 001FE7C4 C0 82 B0 30 */ lfs f4, lbl_805ACD50@sda21(r2) +/* 80201868 001FE7C8 FC 60 08 90 */ fmr f3, f1 +/* 8020186C 001FE7CC B0 01 00 20 */ sth r0, 0x20(r1) +/* 80201870 001FE7D0 48 16 1B 7D */ bl __ct__6CColorFffff +/* 80201874 001FE7D4 C0 22 B0 40 */ lfs f1, lbl_805ACD60@sda21(r2) +/* 80201878 001FE7D8 7C 7C 1B 78 */ mr r28, r3 +/* 8020187C 001FE7DC 38 61 00 48 */ addi r3, r1, 0x48 +/* 80201880 001FE7E0 FC 40 08 90 */ fmr f2, f1 +/* 80201884 001FE7E4 FC 60 08 90 */ fmr f3, f1 +/* 80201888 001FE7E8 FC 80 08 90 */ fmr f4, f1 +/* 8020188C 001FE7EC 48 16 1B 61 */ bl __ct__6CColorFffff +/* 80201890 001FE7F0 39 20 00 00 */ li r9, 0 +/* 80201894 001FE7F4 7C 67 1B 78 */ mr r7, r3 +/* 80201898 001FE7F8 91 21 00 08 */ stw r9, 8(r1) +/* 8020189C 001FE7FC 38 00 00 01 */ li r0, 1 +/* 802018A0 001FE800 FC 20 F8 90 */ fmr f1, f31 +/* 802018A4 001FE804 C0 42 B0 30 */ lfs f2, lbl_805ACD50@sda21(r2) +/* 802018A8 001FE808 90 01 00 0C */ stw r0, 0xc(r1) +/* 802018AC 001FE80C 7F 63 DB 78 */ mr r3, r27 +/* 802018B0 001FE810 7F 88 E3 78 */ mr r8, r28 +/* 802018B4 001FE814 38 81 00 20 */ addi r4, r1, 0x20 +/* 802018B8 001FE818 90 01 00 10 */ stw r0, 0x10(r1) +/* 802018BC 001FE81C 38 A1 00 5C */ addi r5, r1, 0x5c +/* 802018C0 001FE820 38 C1 00 6C */ addi r6, r1, 0x6c +/* 802018C4 001FE824 39 40 00 00 */ li r10, 0 +/* 802018C8 001FE828 91 21 00 14 */ stw r9, 0x14(r1) +/* 802018CC 001FE82C 39 20 00 00 */ li r9, 0 +/* 802018D0 001FE830 90 01 00 18 */ stw r0, 0x18(r1) +/* 802018D4 001FE834 48 00 02 F9 */ bl "__ct__20CScriptColorModulateF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC6CColorRC6CColorQ220CScriptColorModulate10EBlendModeffbbbbbb" +/* 802018D8 001FE838 7C 7B 1B 78 */ mr r27, r3 +lbl_802018DC: +/* 802018DC 001FE83C 7F 40 07 75 */ extsb. r0, r26 +/* 802018E0 001FE840 41 82 00 44 */ beq lbl_80201924 +/* 802018E4 001FE844 80 01 00 74 */ lwz r0, 0x74(r1) +/* 802018E8 001FE848 80 61 00 7C */ lwz r3, 0x7c(r1) +/* 802018EC 001FE84C 1C 00 00 0C */ mulli r0, r0, 0xc +/* 802018F0 001FE850 90 61 00 34 */ stw r3, 0x34(r1) +/* 802018F4 001FE854 7C 64 1B 78 */ mr r4, r3 +/* 802018F8 001FE858 7C 03 02 14 */ add r0, r3, r0 +/* 802018FC 001FE85C 90 61 00 30 */ stw r3, 0x30(r1) +/* 80201900 001FE860 90 01 00 3C */ stw r0, 0x3c(r1) +/* 80201904 001FE864 90 01 00 38 */ stw r0, 0x38(r1) +/* 80201908 001FE868 48 00 00 08 */ b lbl_80201910 +lbl_8020190C: +/* 8020190C 001FE86C 38 84 00 0C */ addi r4, r4, 0xc +lbl_80201910: +/* 80201910 001FE870 7C 04 00 40 */ cmplw r4, r0 +/* 80201914 001FE874 40 82 FF F8 */ bne lbl_8020190C +/* 80201918 001FE878 28 03 00 00 */ cmplwi r3, 0 +/* 8020191C 001FE87C 41 82 00 08 */ beq lbl_80201924 +/* 80201920 001FE880 48 11 40 11 */ bl Free__7CMemoryFPCv +lbl_80201924: +/* 80201924 001FE884 A0 1F 00 00 */ lhz r0, 0(r31) +/* 80201928 001FE888 38 A0 00 01 */ li r5, 1 +/* 8020192C 001FE88C 7F C3 F3 78 */ mr r3, r30 +/* 80201930 001FE890 7F 64 DB 78 */ mr r4, r27 +/* 80201934 001FE894 B0 1B 00 34 */ sth r0, 0x34(r27) +/* 80201938 001FE898 88 1B 00 54 */ lbz r0, 0x54(r27) +/* 8020193C 001FE89C 50 A0 0F BC */ rlwimi r0, r5, 1, 0x1e, 0x1e +/* 80201940 001FE8A0 98 1B 00 54 */ stb r0, 0x54(r27) +/* 80201944 001FE8A4 88 1B 00 54 */ lbz r0, 0x54(r27) +/* 80201948 001FE8A8 50 A0 07 FE */ rlwimi r0, r5, 0, 0x1f, 0x1f +/* 8020194C 001FE8AC 98 1B 00 54 */ stb r0, 0x54(r27) +/* 80201950 001FE8B0 88 1B 00 55 */ lbz r0, 0x55(r27) +/* 80201954 001FE8B4 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 80201958 001FE8B8 98 1B 00 55 */ stb r0, 0x55(r27) +/* 8020195C 001FE8BC 4B E4 B1 B9 */ bl AddObject__13CStateManagerFR7CEntity +/* 80201960 001FE8C0 7F 63 DB 78 */ mr r3, r27 +/* 80201964 001FE8C4 7F C4 F3 78 */ mr r4, r30 +/* 80201968 001FE8C8 81 9B 00 00 */ lwz r12, 0(r27) +/* 8020196C 001FE8CC C0 22 B0 30 */ lfs f1, lbl_805ACD50@sda21(r2) +/* 80201970 001FE8D0 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 80201974 001FE8D4 7D 89 03 A6 */ mtctr r12 +/* 80201978 001FE8D8 4E 80 04 21 */ bctrl +/* 8020197C 001FE8DC A0 01 00 2C */ lhz r0, 0x2c(r1) +/* 80201980 001FE8E0 38 61 00 5C */ addi r3, r1, 0x5c +/* 80201984 001FE8E4 B0 1D 00 00 */ sth r0, 0(r29) +/* 80201988 001FE8E8 48 13 C1 59 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8020198C 001FE8EC E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0 +/* 80201990 001FE8F0 CB E1 00 A0 */ lfd f31, 0xa0(r1) +/* 80201994 001FE8F4 BB 41 00 88 */ lmw r26, 0x88(r1) +/* 80201998 001FE8F8 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 8020199C 001FE8FC 7C 08 03 A6 */ mtlr r0 +/* 802019A0 001FE900 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 802019A4 001FE904 4E 80 00 20 */ blr + +.global FadeInHelper__20CScriptColorModulateFR13CStateManager9TUniqueIdf +FadeInHelper__20CScriptColorModulateFR13CStateManager9TUniqueIdf: +/* 802019A8 001FE908 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 802019AC 001FE90C 7C 08 02 A6 */ mflr r0 +/* 802019B0 001FE910 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 802019B4 001FE914 DB E1 00 A0 */ stfd f31, 0xa0(r1) +/* 802019B8 001FE918 F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0 +/* 802019BC 001FE91C BF 41 00 88 */ stmw r26, 0x88(r1) +/* 802019C0 001FE920 7C BF 2B 78 */ mr r31, r5 +/* 802019C4 001FE924 7C 9E 23 78 */ mr r30, r4 +/* 802019C8 001FE928 A0 05 00 00 */ lhz r0, 0(r5) +/* 802019CC 001FE92C 7C 7D 1B 78 */ mr r29, r3 +/* 802019D0 001FE930 FF E0 08 90 */ fmr f31, f1 +/* 802019D4 001FE934 7F C3 F3 78 */ mr r3, r30 +/* 802019D8 001FE938 B0 01 00 28 */ sth r0, 0x28(r1) +/* 802019DC 001FE93C 38 81 00 28 */ addi r4, r1, 0x28 +/* 802019E0 001FE940 4B E4 AB C5 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 802019E4 001FE944 28 03 00 00 */ cmplwi r3, 0 +/* 802019E8 001FE948 41 82 00 14 */ beq lbl_802019FC +/* 802019EC 001FE94C 80 03 00 04 */ lwz r0, 4(r3) +/* 802019F0 001FE950 38 61 00 54 */ addi r3, r1, 0x54 +/* 802019F4 001FE954 90 01 00 54 */ stw r0, 0x54(r1) +/* 802019F8 001FE958 48 00 00 10 */ b lbl_80201A08 +lbl_802019FC: +/* 802019FC 001FE95C 80 1E 08 CC */ lwz r0, 0x8cc(r30) +/* 80201A00 001FE960 38 61 00 50 */ addi r3, r1, 0x50 +/* 80201A04 001FE964 90 01 00 50 */ stw r0, 0x50(r1) +lbl_80201A08: +/* 80201A08 001FE968 80 63 00 00 */ lwz r3, 0(r3) +/* 80201A0C 001FE96C 38 00 00 00 */ li r0, 0 +/* 80201A10 001FE970 38 AD A9 18 */ addi r5, r13, "_EmptyString__Q24rstl66basic_string,Q24rstl17rmemory_allocator>"@sda21 +/* 80201A14 001FE974 7F C4 F3 78 */ mr r4, r30 +/* 80201A18 001FE978 90 61 00 58 */ stw r3, 0x58(r1) +/* 80201A1C 001FE97C 38 61 00 24 */ addi r3, r1, 0x24 +/* 80201A20 001FE980 90 A1 00 5C */ stw r5, 0x5c(r1) +/* 80201A24 001FE984 90 01 00 60 */ stw r0, 0x60(r1) +/* 80201A28 001FE988 90 01 00 64 */ stw r0, 0x64(r1) +/* 80201A2C 001FE98C 4B E4 B6 B1 */ bl AllocateUniqueId__13CStateManagerFv +/* 80201A30 001FE990 A0 01 00 24 */ lhz r0, 0x24(r1) +/* 80201A34 001FE994 3C 60 80 3D */ lis r3, lbl_803D2580@ha +/* 80201A38 001FE998 38 83 25 80 */ addi r4, r3, lbl_803D2580@l +/* 80201A3C 001FE99C 3B 40 00 00 */ li r26, 0 +/* 80201A40 001FE9A0 B0 01 00 2C */ sth r0, 0x2c(r1) +/* 80201A44 001FE9A4 38 60 00 58 */ li r3, 0x58 +/* 80201A48 001FE9A8 38 A0 00 00 */ li r5, 0 +/* 80201A4C 001FE9AC 48 11 3E 21 */ bl __nw__FUlPCcPCc +/* 80201A50 001FE9B0 7C 7B 1B 79 */ or. r27, r3, r3 +/* 80201A54 001FE9B4 41 82 00 B8 */ beq lbl_80201B0C +/* 80201A58 001FE9B8 80 8D A3 88 */ lwz r4, lbl_805A8F48@sda21(r13) +/* 80201A5C 001FE9BC 3C 60 80 57 */ lis r3, lbl_8056D410@ha +/* 80201A60 001FE9C0 80 01 00 58 */ lwz r0, 0x58(r1) +/* 80201A64 001FE9C4 38 A3 D4 10 */ addi r5, r3, lbl_8056D410@l +/* 80201A68 001FE9C8 90 81 00 44 */ stw r4, 0x44(r1) +/* 80201A6C 001FE9CC 38 61 00 6C */ addi r3, r1, 0x6c +/* 80201A70 001FE9D0 38 81 00 40 */ addi r4, r1, 0x40 +/* 80201A74 001FE9D4 38 C1 00 44 */ addi r6, r1, 0x44 +/* 80201A78 001FE9D8 90 01 00 40 */ stw r0, 0x40(r1) +/* 80201A7C 001FE9DC 4B E4 FA 09 */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" +/* 80201A80 001FE9E0 C0 22 B0 40 */ lfs f1, lbl_805ACD60@sda21(r2) +/* 80201A84 001FE9E4 38 61 00 4C */ addi r3, r1, 0x4c +/* 80201A88 001FE9E8 A0 01 00 2C */ lhz r0, 0x2c(r1) +/* 80201A8C 001FE9EC 3B 40 00 01 */ li r26, 1 +/* 80201A90 001FE9F0 FC 40 08 90 */ fmr f2, f1 +/* 80201A94 001FE9F4 FC 60 08 90 */ fmr f3, f1 +/* 80201A98 001FE9F8 B0 01 00 20 */ sth r0, 0x20(r1) +/* 80201A9C 001FE9FC FC 80 08 90 */ fmr f4, f1 +/* 80201AA0 001FEA00 48 16 19 4D */ bl __ct__6CColorFffff +/* 80201AA4 001FEA04 C0 22 B0 40 */ lfs f1, lbl_805ACD60@sda21(r2) +/* 80201AA8 001FEA08 7C 7C 1B 78 */ mr r28, r3 +/* 80201AAC 001FEA0C C0 82 B0 30 */ lfs f4, lbl_805ACD50@sda21(r2) +/* 80201AB0 001FEA10 38 61 00 48 */ addi r3, r1, 0x48 +/* 80201AB4 001FEA14 FC 40 08 90 */ fmr f2, f1 +/* 80201AB8 001FEA18 FC 60 08 90 */ fmr f3, f1 +/* 80201ABC 001FEA1C 48 16 19 31 */ bl __ct__6CColorFffff +/* 80201AC0 001FEA20 39 60 00 01 */ li r11, 1 +/* 80201AC4 001FEA24 7C 67 1B 78 */ mr r7, r3 +/* 80201AC8 001FEA28 91 61 00 08 */ stw r11, 8(r1) +/* 80201ACC 001FEA2C 38 00 00 00 */ li r0, 0 +/* 80201AD0 001FEA30 FC 20 F8 90 */ fmr f1, f31 +/* 80201AD4 001FEA34 C0 42 B0 30 */ lfs f2, lbl_805ACD50@sda21(r2) +/* 80201AD8 001FEA38 91 61 00 0C */ stw r11, 0xc(r1) +/* 80201ADC 001FEA3C 7F 63 DB 78 */ mr r3, r27 +/* 80201AE0 001FEA40 7F 88 E3 78 */ mr r8, r28 +/* 80201AE4 001FEA44 38 81 00 20 */ addi r4, r1, 0x20 +/* 80201AE8 001FEA48 91 61 00 10 */ stw r11, 0x10(r1) +/* 80201AEC 001FEA4C 38 A1 00 5C */ addi r5, r1, 0x5c +/* 80201AF0 001FEA50 38 C1 00 6C */ addi r6, r1, 0x6c +/* 80201AF4 001FEA54 39 20 00 00 */ li r9, 0 +/* 80201AF8 001FEA58 90 01 00 14 */ stw r0, 0x14(r1) +/* 80201AFC 001FEA5C 39 40 00 00 */ li r10, 0 +/* 80201B00 001FEA60 91 61 00 18 */ stw r11, 0x18(r1) +/* 80201B04 001FEA64 48 00 00 C9 */ bl "__ct__20CScriptColorModulateF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC6CColorRC6CColorQ220CScriptColorModulate10EBlendModeffbbbbbb" +/* 80201B08 001FEA68 7C 7B 1B 78 */ mr r27, r3 +lbl_80201B0C: +/* 80201B0C 001FEA6C 7F 40 07 75 */ extsb. r0, r26 +/* 80201B10 001FEA70 41 82 00 44 */ beq lbl_80201B54 +/* 80201B14 001FEA74 80 01 00 74 */ lwz r0, 0x74(r1) +/* 80201B18 001FEA78 80 61 00 7C */ lwz r3, 0x7c(r1) +/* 80201B1C 001FEA7C 1C 00 00 0C */ mulli r0, r0, 0xc +/* 80201B20 001FEA80 90 61 00 34 */ stw r3, 0x34(r1) +/* 80201B24 001FEA84 7C 64 1B 78 */ mr r4, r3 +/* 80201B28 001FEA88 7C 03 02 14 */ add r0, r3, r0 +/* 80201B2C 001FEA8C 90 61 00 30 */ stw r3, 0x30(r1) +/* 80201B30 001FEA90 90 01 00 3C */ stw r0, 0x3c(r1) +/* 80201B34 001FEA94 90 01 00 38 */ stw r0, 0x38(r1) +/* 80201B38 001FEA98 48 00 00 08 */ b lbl_80201B40 +lbl_80201B3C: +/* 80201B3C 001FEA9C 38 84 00 0C */ addi r4, r4, 0xc +lbl_80201B40: +/* 80201B40 001FEAA0 7C 04 00 40 */ cmplw r4, r0 +/* 80201B44 001FEAA4 40 82 FF F8 */ bne lbl_80201B3C +/* 80201B48 001FEAA8 28 03 00 00 */ cmplwi r3, 0 +/* 80201B4C 001FEAAC 41 82 00 08 */ beq lbl_80201B54 +/* 80201B50 001FEAB0 48 11 3D E1 */ bl Free__7CMemoryFPCv +lbl_80201B54: +/* 80201B54 001FEAB4 A0 1F 00 00 */ lhz r0, 0(r31) +/* 80201B58 001FEAB8 38 A0 00 01 */ li r5, 1 +/* 80201B5C 001FEABC 7F C3 F3 78 */ mr r3, r30 +/* 80201B60 001FEAC0 7F 64 DB 78 */ mr r4, r27 +/* 80201B64 001FEAC4 B0 1B 00 34 */ sth r0, 0x34(r27) +/* 80201B68 001FEAC8 88 1B 00 54 */ lbz r0, 0x54(r27) +/* 80201B6C 001FEACC 50 A0 0F BC */ rlwimi r0, r5, 1, 0x1e, 0x1e +/* 80201B70 001FEAD0 98 1B 00 54 */ stb r0, 0x54(r27) +/* 80201B74 001FEAD4 88 1B 00 54 */ lbz r0, 0x54(r27) +/* 80201B78 001FEAD8 50 A0 07 FE */ rlwimi r0, r5, 0, 0x1f, 0x1f +/* 80201B7C 001FEADC 98 1B 00 54 */ stb r0, 0x54(r27) +/* 80201B80 001FEAE0 4B E4 AF 95 */ bl AddObject__13CStateManagerFR7CEntity +/* 80201B84 001FEAE4 7F 63 DB 78 */ mr r3, r27 +/* 80201B88 001FEAE8 7F C4 F3 78 */ mr r4, r30 +/* 80201B8C 001FEAEC 81 9B 00 00 */ lwz r12, 0(r27) +/* 80201B90 001FEAF0 C0 22 B0 30 */ lfs f1, lbl_805ACD50@sda21(r2) +/* 80201B94 001FEAF4 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 80201B98 001FEAF8 7D 89 03 A6 */ mtctr r12 +/* 80201B9C 001FEAFC 4E 80 04 21 */ bctrl +/* 80201BA0 001FEB00 A0 01 00 2C */ lhz r0, 0x2c(r1) +/* 80201BA4 001FEB04 38 61 00 5C */ addi r3, r1, 0x5c +/* 80201BA8 001FEB08 B0 1D 00 00 */ sth r0, 0(r29) +/* 80201BAC 001FEB0C 48 13 BF 35 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80201BB0 001FEB10 E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0 +/* 80201BB4 001FEB14 CB E1 00 A0 */ lfd f31, 0xa0(r1) +/* 80201BB8 001FEB18 BB 41 00 88 */ lmw r26, 0x88(r1) +/* 80201BBC 001FEB1C 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 80201BC0 001FEB20 7C 08 03 A6 */ mtlr r0 +/* 80201BC4 001FEB24 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 80201BC8 001FEB28 4E 80 00 20 */ blr + +.global "__ct__20CScriptColorModulateF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC6CColorRC6CColorQ220CScriptColorModulate10EBlendModeffbbbbbb" +"__ct__20CScriptColorModulateF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC6CColorRC6CColorQ220CScriptColorModulate10EBlendModeffbbbbbb": +/* 80201BCC 001FEB2C 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80201BD0 001FEB30 7C 08 02 A6 */ mflr r0 +/* 80201BD4 001FEB34 90 01 00 64 */ stw r0, 0x64(r1) +/* 80201BD8 001FEB38 DB E1 00 50 */ stfd f31, 0x50(r1) +/* 80201BDC 001FEB3C F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 80201BE0 001FEB40 DB C1 00 40 */ stfd f30, 0x40(r1) +/* 80201BE4 001FEB44 F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0 +/* 80201BE8 001FEB48 BE E1 00 1C */ stmw r23, 0x1c(r1) +/* 80201BEC 001FEB4C A0 04 00 00 */ lhz r0, 0(r4) +/* 80201BF0 001FEB50 7C AB 2B 78 */ mr r11, r5 +/* 80201BF4 001FEB54 FF C0 08 90 */ fmr f30, f1 +/* 80201BF8 001FEB58 88 81 00 7B */ lbz r4, 0x7b(r1) +/* 80201BFC 001FEB5C FF E0 10 90 */ fmr f31, f2 +/* 80201C00 001FEB60 B0 01 00 08 */ sth r0, 8(r1) +/* 80201C04 001FEB64 7C F9 3B 78 */ mr r25, r7 +/* 80201C08 001FEB68 7C C5 33 78 */ mr r5, r6 +/* 80201C0C 001FEB6C 7C 86 23 78 */ mr r6, r4 +/* 80201C10 001FEB70 8B 81 00 6B */ lbz r28, 0x6b(r1) +/* 80201C14 001FEB74 8B A1 00 6F */ lbz r29, 0x6f(r1) +/* 80201C18 001FEB78 7C 78 1B 78 */ mr r24, r3 +/* 80201C1C 001FEB7C 8B C1 00 73 */ lbz r30, 0x73(r1) +/* 80201C20 001FEB80 7D 1A 43 78 */ mr r26, r8 +/* 80201C24 001FEB84 8B E1 00 77 */ lbz r31, 0x77(r1) +/* 80201C28 001FEB88 7D 3B 4B 78 */ mr r27, r9 +/* 80201C2C 001FEB8C 7D 57 53 78 */ mr r23, r10 +/* 80201C30 001FEB90 7D 67 5B 78 */ mr r7, r11 +/* 80201C34 001FEB94 38 81 00 08 */ addi r4, r1, 8 +/* 80201C38 001FEB98 4B E4 F6 ED */ bl "__ct__7CEntityF9TUniqueIdRC11CEntityInfobRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80201C3C 001FEB9C 3C 60 80 3E */ lis r3, lbl_803E6BB0@ha +/* 80201C40 001FEBA0 38 A0 00 00 */ li r5, 0 +/* 80201C44 001FEBA4 38 03 6B B0 */ addi r0, r3, lbl_803E6BB0@l +/* 80201C48 001FEBA8 C0 02 B0 30 */ lfs f0, lbl_805ACD50@sda21(r2) +/* 80201C4C 001FEBAC 90 18 00 00 */ stw r0, 0(r24) +/* 80201C50 001FEBB0 7F 03 C3 78 */ mr r3, r24 +/* 80201C54 001FEBB4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80201C58 001FEBB8 B0 18 00 34 */ sth r0, 0x34(r24) +/* 80201C5C 001FEBBC 90 B8 00 38 */ stw r5, 0x38(r24) +/* 80201C60 001FEBC0 D0 18 00 3C */ stfs f0, 0x3c(r24) +/* 80201C64 001FEBC4 80 19 00 00 */ lwz r0, 0(r25) +/* 80201C68 001FEBC8 90 18 00 40 */ stw r0, 0x40(r24) +/* 80201C6C 001FEBCC 80 1A 00 00 */ lwz r0, 0(r26) +/* 80201C70 001FEBD0 90 18 00 44 */ stw r0, 0x44(r24) +/* 80201C74 001FEBD4 93 78 00 48 */ stw r27, 0x48(r24) +/* 80201C78 001FEBD8 D3 D8 00 4C */ stfs f30, 0x4c(r24) +/* 80201C7C 001FEBDC D3 F8 00 50 */ stfs f31, 0x50(r24) +/* 80201C80 001FEBE0 88 18 00 54 */ lbz r0, 0x54(r24) +/* 80201C84 001FEBE4 52 E0 3E 30 */ rlwimi r0, r23, 7, 0x18, 0x18 +/* 80201C88 001FEBE8 98 18 00 54 */ stb r0, 0x54(r24) +/* 80201C8C 001FEBEC 88 18 00 54 */ lbz r0, 0x54(r24) +/* 80201C90 001FEBF0 53 80 36 72 */ rlwimi r0, r28, 6, 0x19, 0x19 +/* 80201C94 001FEBF4 98 18 00 54 */ stb r0, 0x54(r24) +/* 80201C98 001FEBF8 88 18 00 54 */ lbz r0, 0x54(r24) +/* 80201C9C 001FEBFC 53 A0 2E B4 */ rlwimi r0, r29, 5, 0x1a, 0x1a +/* 80201CA0 001FEC00 98 18 00 54 */ stb r0, 0x54(r24) +/* 80201CA4 001FEC04 88 18 00 54 */ lbz r0, 0x54(r24) +/* 80201CA8 001FEC08 53 C0 26 F6 */ rlwimi r0, r30, 4, 0x1b, 0x1b +/* 80201CAC 001FEC0C 98 18 00 54 */ stb r0, 0x54(r24) +/* 80201CB0 001FEC10 88 18 00 54 */ lbz r0, 0x54(r24) +/* 80201CB4 001FEC14 53 E0 1F 38 */ rlwimi r0, r31, 3, 0x1c, 0x1c +/* 80201CB8 001FEC18 98 18 00 54 */ stb r0, 0x54(r24) +/* 80201CBC 001FEC1C 88 18 00 54 */ lbz r0, 0x54(r24) +/* 80201CC0 001FEC20 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d +/* 80201CC4 001FEC24 98 18 00 54 */ stb r0, 0x54(r24) +/* 80201CC8 001FEC28 88 18 00 54 */ lbz r0, 0x54(r24) +/* 80201CCC 001FEC2C 50 A0 0F BC */ rlwimi r0, r5, 1, 0x1e, 0x1e +/* 80201CD0 001FEC30 98 18 00 54 */ stb r0, 0x54(r24) +/* 80201CD4 001FEC34 88 18 00 54 */ lbz r0, 0x54(r24) +/* 80201CD8 001FEC38 50 A0 07 FE */ rlwimi r0, r5, 0, 0x1f, 0x1f +/* 80201CDC 001FEC3C 98 18 00 54 */ stb r0, 0x54(r24) +/* 80201CE0 001FEC40 88 18 00 55 */ lbz r0, 0x55(r24) +/* 80201CE4 001FEC44 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 80201CE8 001FEC48 98 18 00 55 */ stb r0, 0x55(r24) +/* 80201CEC 001FEC4C E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 +/* 80201CF0 001FEC50 CB E1 00 50 */ lfd f31, 0x50(r1) +/* 80201CF4 001FEC54 E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0 +/* 80201CF8 001FEC58 CB C1 00 40 */ lfd f30, 0x40(r1) +/* 80201CFC 001FEC5C BA E1 00 1C */ lmw r23, 0x1c(r1) +/* 80201D00 001FEC60 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80201D04 001FEC64 7C 08 03 A6 */ mtlr r0 +/* 80201D08 001FEC68 38 21 00 60 */ addi r1, r1, 0x60 +/* 80201D0C 001FEC6C 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/ScriptObjects/CScriptControllerAction.s b/asm/Kyoto_CWD/ScriptObjects/CScriptControllerAction.s new file mode 100644 index 00000000..3ddc0e00 --- /dev/null +++ b/asm/Kyoto_CWD/ScriptObjects/CScriptControllerAction.s @@ -0,0 +1,186 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__23CScriptControllerActionFv +__dt__23CScriptControllerActionFv: +/* 801D8CF4 001D5C54 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D8CF8 001D5C58 7C 08 02 A6 */ mflr r0 +/* 801D8CFC 001D5C5C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D8D00 001D5C60 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801D8D04 001D5C64 7C 9F 23 78 */ mr r31, r4 +/* 801D8D08 001D5C68 93 C1 00 08 */ stw r30, 8(r1) +/* 801D8D0C 001D5C6C 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801D8D10 001D5C70 41 82 00 28 */ beq lbl_801D8D38 +/* 801D8D14 001D5C74 3C A0 80 3E */ lis r5, lbl_803E5C20@ha +/* 801D8D18 001D5C78 38 80 00 00 */ li r4, 0 +/* 801D8D1C 001D5C7C 38 05 5C 20 */ addi r0, r5, lbl_803E5C20@l +/* 801D8D20 001D5C80 90 1E 00 00 */ stw r0, 0(r30) +/* 801D8D24 001D5C84 4B E7 85 51 */ bl __dt__7CEntityFv +/* 801D8D28 001D5C88 7F E0 07 35 */ extsh. r0, r31 +/* 801D8D2C 001D5C8C 40 81 00 0C */ ble lbl_801D8D38 +/* 801D8D30 001D5C90 7F C3 F3 78 */ mr r3, r30 +/* 801D8D34 001D5C94 48 13 CB FD */ bl Free__7CMemoryFPCv +lbl_801D8D38: +/* 801D8D38 001D5C98 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D8D3C 001D5C9C 7F C3 F3 78 */ mr r3, r30 +/* 801D8D40 001D5CA0 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801D8D44 001D5CA4 83 C1 00 08 */ lwz r30, 8(r1) +/* 801D8D48 001D5CA8 7C 08 03 A6 */ mtlr r0 +/* 801D8D4C 001D5CAC 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D8D50 001D5CB0 4E 80 00 20 */ blr + +.global nullsub_51 +nullsub_51: +/* 801D8D54 001D5CB4 4E 80 00 20 */ blr + +.global Think__23CScriptControllerActionFfR13CStateManager +Think__23CScriptControllerActionFfR13CStateManager: +/* 801D8D58 001D5CB8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801D8D5C 001D5CBC 7C 08 02 A6 */ mflr r0 +/* 801D8D60 001D5CC0 90 01 00 24 */ stw r0, 0x24(r1) +/* 801D8D64 001D5CC4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801D8D68 001D5CC8 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801D8D6C 001D5CCC 7C 9E 23 78 */ mr r30, r4 +/* 801D8D70 001D5CD0 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801D8D74 001D5CD4 7C 7D 1B 78 */ mr r29, r3 +/* 801D8D78 001D5CD8 88 63 00 3C */ lbz r3, 0x3c(r3) +/* 801D8D7C 001D5CDC 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f +/* 801D8D80 001D5CE0 54 7F DF FE */ rlwinm r31, r3, 0x1b, 0x1f, 0x1f +/* 801D8D84 001D5CE4 41 82 00 40 */ beq lbl_801D8DC4 +/* 801D8D88 001D5CE8 80 1D 00 38 */ lwz r0, 0x38(r29) +/* 801D8D8C 001D5CEC 2C 00 00 00 */ cmpwi r0, 0 +/* 801D8D90 001D5CF0 41 82 00 08 */ beq lbl_801D8D98 +/* 801D8D94 001D5CF4 48 00 00 6C */ b lbl_801D8E00 +lbl_801D8D98: +/* 801D8D98 001D5CF8 88 1E 0F 94 */ lbz r0, 0xf94(r30) +/* 801D8D9C 001D5CFC 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 801D8DA0 001D5D00 41 82 00 14 */ beq lbl_801D8DB4 +/* 801D8DA4 001D5D04 38 00 00 01 */ li r0, 1 +/* 801D8DA8 001D5D08 50 03 2E B4 */ rlwimi r3, r0, 5, 0x1a, 0x1a +/* 801D8DAC 001D5D0C 98 7D 00 3C */ stb r3, 0x3c(r29) +/* 801D8DB0 001D5D10 48 00 00 50 */ b lbl_801D8E00 +lbl_801D8DB4: +/* 801D8DB4 001D5D14 38 00 00 00 */ li r0, 0 +/* 801D8DB8 001D5D18 50 03 2E B4 */ rlwimi r3, r0, 5, 0x1a, 0x1a +/* 801D8DBC 001D5D1C 98 7D 00 3C */ stb r3, 0x3c(r29) +/* 801D8DC0 001D5D20 48 00 00 40 */ b lbl_801D8E00 +lbl_801D8DC4: +/* 801D8DC4 001D5D24 80 7D 00 34 */ lwz r3, 0x34(r29) +/* 801D8DC8 001D5D28 4B FF FF 8D */ bl nullsub_51 +/* 801D8DCC 001D5D2C 38 9E 0B 54 */ addi r4, r30, 0xb54 +/* 801D8DD0 001D5D30 4B E3 3A A5 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 801D8DD4 001D5D34 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801D8DD8 001D5D38 41 82 00 18 */ beq lbl_801D8DF0 +/* 801D8DDC 001D5D3C 88 1D 00 3C */ lbz r0, 0x3c(r29) +/* 801D8DE0 001D5D40 38 60 00 01 */ li r3, 1 +/* 801D8DE4 001D5D44 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 801D8DE8 001D5D48 98 1D 00 3C */ stb r0, 0x3c(r29) +/* 801D8DEC 001D5D4C 48 00 00 14 */ b lbl_801D8E00 +lbl_801D8DF0: +/* 801D8DF0 001D5D50 88 1D 00 3C */ lbz r0, 0x3c(r29) +/* 801D8DF4 001D5D54 38 60 00 00 */ li r3, 0 +/* 801D8DF8 001D5D58 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 801D8DFC 001D5D5C 98 1D 00 3C */ stb r0, 0x3c(r29) +lbl_801D8E00: +/* 801D8E00 001D5D60 88 1D 00 30 */ lbz r0, 0x30(r29) +/* 801D8E04 001D5D64 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801D8E08 001D5D68 41 82 00 80 */ beq lbl_801D8E88 +/* 801D8E0C 001D5D6C 88 1D 00 3C */ lbz r0, 0x3c(r29) +/* 801D8E10 001D5D70 54 00 DF FE */ rlwinm r0, r0, 0x1b, 0x1f, 0x1f +/* 801D8E14 001D5D74 7C 00 F8 40 */ cmplw r0, r31 +/* 801D8E18 001D5D78 41 82 00 70 */ beq lbl_801D8E88 +/* 801D8E1C 001D5D7C 28 00 00 00 */ cmplwi r0, 0 +/* 801D8E20 001D5D80 41 82 00 1C */ beq lbl_801D8E3C +/* 801D8E24 001D5D84 7F A3 EB 78 */ mr r3, r29 +/* 801D8E28 001D5D88 7F C5 F3 78 */ mr r5, r30 +/* 801D8E2C 001D5D8C 38 80 00 08 */ li r4, 8 +/* 801D8E30 001D5D90 38 C0 FF FF */ li r6, -1 +/* 801D8E34 001D5D94 4B E7 82 8D */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 801D8E38 001D5D98 48 00 00 50 */ b lbl_801D8E88 +lbl_801D8E3C: +/* 801D8E3C 001D5D9C 7F A3 EB 78 */ mr r3, r29 +/* 801D8E40 001D5DA0 7F C5 F3 78 */ mr r5, r30 +/* 801D8E44 001D5DA4 38 80 00 02 */ li r4, 2 +/* 801D8E48 001D5DA8 38 C0 FF FF */ li r6, -1 +/* 801D8E4C 001D5DAC 4B E7 82 75 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 801D8E50 001D5DB0 88 1D 00 3C */ lbz r0, 0x3c(r29) +/* 801D8E54 001D5DB4 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801D8E58 001D5DB8 41 82 00 30 */ beq lbl_801D8E88 +/* 801D8E5C 001D5DBC 7F A3 EB 78 */ mr r3, r29 +/* 801D8E60 001D5DC0 38 80 00 00 */ li r4, 0 +/* 801D8E64 001D5DC4 81 9D 00 00 */ lwz r12, 0(r29) +/* 801D8E68 001D5DC8 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801D8E6C 001D5DCC 7D 89 03 A6 */ mtctr r12 +/* 801D8E70 001D5DD0 4E 80 04 21 */ bctrl +/* 801D8E74 001D5DD4 7F A3 EB 78 */ mr r3, r29 +/* 801D8E78 001D5DD8 7F C5 F3 78 */ mr r5, r30 +/* 801D8E7C 001D5DDC 38 80 00 05 */ li r4, 5 +/* 801D8E80 001D5DE0 38 C0 FF FF */ li r6, -1 +/* 801D8E84 001D5DE4 4B E7 82 3D */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +lbl_801D8E88: +/* 801D8E88 001D5DE8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801D8E8C 001D5DEC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801D8E90 001D5DF0 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801D8E94 001D5DF4 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801D8E98 001D5DF8 7C 08 03 A6 */ mtlr r0 +/* 801D8E9C 001D5DFC 38 21 00 20 */ addi r1, r1, 0x20 +/* 801D8EA0 001D5E00 4E 80 00 20 */ blr + +.global Accept__23CScriptControllerActionFR8IVisitor +Accept__23CScriptControllerActionFR8IVisitor: +/* 801D8EA4 001D5E04 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D8EA8 001D5E08 7C 08 02 A6 */ mflr r0 +/* 801D8EAC 001D5E0C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D8EB0 001D5E10 7C 60 1B 78 */ mr r0, r3 +/* 801D8EB4 001D5E14 7C 83 23 78 */ mr r3, r4 +/* 801D8EB8 001D5E18 81 84 00 00 */ lwz r12, 0(r4) +/* 801D8EBC 001D5E1C 7C 04 03 78 */ mr r4, r0 +/* 801D8EC0 001D5E20 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 801D8EC4 001D5E24 7D 89 03 A6 */ mtctr r12 +/* 801D8EC8 001D5E28 4E 80 04 21 */ bctrl +/* 801D8ECC 001D5E2C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D8ED0 001D5E30 7C 08 03 A6 */ mtlr r0 +/* 801D8ED4 001D5E34 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D8ED8 001D5E38 4E 80 00 20 */ blr + +.global "__ct__23CScriptControllerActionF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfobQ223CScriptControllerAction9ECommandsb" +"__ct__23CScriptControllerActionF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfobQ223CScriptControllerAction9ECommandsb": +/* 801D8EDC 001D5E3C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801D8EE0 001D5E40 7C 08 02 A6 */ mflr r0 +/* 801D8EE4 001D5E44 90 01 00 34 */ stw r0, 0x34(r1) +/* 801D8EE8 001D5E48 BF 61 00 1C */ stmw r27, 0x1c(r1) +/* 801D8EEC 001D5E4C 7C 7B 1B 78 */ mr r27, r3 +/* 801D8EF0 001D5E50 8B E1 00 3B */ lbz r31, 0x3b(r1) +/* 801D8EF4 001D5E54 7D 1C 43 78 */ mr r28, r8 +/* 801D8EF8 001D5E58 7D 3D 4B 78 */ mr r29, r9 +/* 801D8EFC 001D5E5C 7D 5E 53 78 */ mr r30, r10 +/* 801D8F00 001D5E60 A0 04 00 00 */ lhz r0, 0(r4) +/* 801D8F04 001D5E64 7C A4 2B 78 */ mr r4, r5 +/* 801D8F08 001D5E68 7C C5 33 78 */ mr r5, r6 +/* 801D8F0C 001D5E6C 7C E6 3B 78 */ mr r6, r7 +/* 801D8F10 001D5E70 B0 01 00 08 */ sth r0, 8(r1) +/* 801D8F14 001D5E74 7C 87 23 78 */ mr r7, r4 +/* 801D8F18 001D5E78 38 81 00 08 */ addi r4, r1, 8 +/* 801D8F1C 001D5E7C 4B E7 84 09 */ bl "__ct__7CEntityF9TUniqueIdRC11CEntityInfobRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801D8F20 001D5E80 3C 60 80 3E */ lis r3, lbl_803E5C20@ha +/* 801D8F24 001D5E84 38 80 00 00 */ li r4, 0 +/* 801D8F28 001D5E88 38 03 5C 20 */ addi r0, r3, lbl_803E5C20@l +/* 801D8F2C 001D5E8C 90 1B 00 00 */ stw r0, 0(r27) +/* 801D8F30 001D5E90 7F 63 DB 78 */ mr r3, r27 +/* 801D8F34 001D5E94 93 9B 00 34 */ stw r28, 0x34(r27) +/* 801D8F38 001D5E98 93 DB 00 38 */ stw r30, 0x38(r27) +/* 801D8F3C 001D5E9C 88 1B 00 3C */ lbz r0, 0x3c(r27) +/* 801D8F40 001D5EA0 53 A0 3E 30 */ rlwimi r0, r29, 7, 0x18, 0x18 +/* 801D8F44 001D5EA4 98 1B 00 3C */ stb r0, 0x3c(r27) +/* 801D8F48 001D5EA8 88 1B 00 3C */ lbz r0, 0x3c(r27) +/* 801D8F4C 001D5EAC 53 E0 36 72 */ rlwimi r0, r31, 6, 0x19, 0x19 +/* 801D8F50 001D5EB0 98 1B 00 3C */ stb r0, 0x3c(r27) +/* 801D8F54 001D5EB4 88 1B 00 3C */ lbz r0, 0x3c(r27) +/* 801D8F58 001D5EB8 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 801D8F5C 001D5EBC 98 1B 00 3C */ stb r0, 0x3c(r27) +/* 801D8F60 001D5EC0 BB 61 00 1C */ lmw r27, 0x1c(r1) +/* 801D8F64 001D5EC4 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801D8F68 001D5EC8 7C 08 03 A6 */ mtlr r0 +/* 801D8F6C 001D5ECC 38 21 00 30 */ addi r1, r1, 0x30 +/* 801D8F70 001D5ED0 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/ScriptObjects/CScriptGunTurret.s b/asm/Kyoto_CWD/ScriptObjects/CScriptGunTurret.s new file mode 100644 index 00000000..96316024 --- /dev/null +++ b/asm/Kyoto_CWD/ScriptObjects/CScriptGunTurret.s @@ -0,0 +1,6845 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global HealthInfo__16CScriptGunTurretFR13CStateManager +HealthInfo__16CScriptGunTurretFR13CStateManager: +/* 80215890 002127F0 38 63 02 64 */ addi r3, r3, 0x264 +/* 80215894 002127F4 4E 80 00 20 */ blr + +.global GetDamageVulnerability__16CScriptGunTurretCFv +GetDamageVulnerability__16CScriptGunTurretCFv: +/* 80215898 002127F8 38 63 02 6C */ addi r3, r3, 0x26c +/* 8021589C 002127FC 4E 80 00 20 */ blr + +.global PlayerInsideTurretSphere__16CScriptGunTurretFR13CStateManager +PlayerInsideTurretSphere__16CScriptGunTurretFR13CStateManager: +/* 802158A0 00212800 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 802158A4 00212804 7C 08 02 A6 */ mflr r0 +/* 802158A8 00212808 90 01 00 84 */ stw r0, 0x84(r1) +/* 802158AC 0021280C DB E1 00 70 */ stfd f31, 0x70(r1) +/* 802158B0 00212810 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 +/* 802158B4 00212814 DB C1 00 60 */ stfd f30, 0x60(r1) +/* 802158B8 00212818 F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 +/* 802158BC 0021281C DB A1 00 50 */ stfd f29, 0x50(r1) +/* 802158C0 00212820 F3 A1 00 58 */ psq_st f29, 88(r1), 0, qr0 +/* 802158C4 00212824 DB 81 00 40 */ stfd f28, 0x40(r1) +/* 802158C8 00212828 F3 81 00 48 */ psq_st f28, 72(r1), 0, qr0 +/* 802158CC 0021282C 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 802158D0 00212830 93 C1 00 38 */ stw r30, 0x38(r1) +/* 802158D4 00212834 93 A1 00 34 */ stw r29, 0x34(r1) +/* 802158D8 00212838 7C 7D 1B 78 */ mr r29, r3 +/* 802158DC 0021283C 7C 9E 23 78 */ mr r30, r4 +/* 802158E0 00212840 A0 03 04 A0 */ lhz r0, 0x4a0(r3) +/* 802158E4 00212844 7F C3 F3 78 */ mr r3, r30 +/* 802158E8 00212848 38 81 00 08 */ addi r4, r1, 8 +/* 802158EC 0021284C B0 01 00 08 */ sth r0, 8(r1) +/* 802158F0 00212850 4B E3 6C B5 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 802158F4 00212854 7C 64 1B 78 */ mr r4, r3 +/* 802158F8 00212858 38 61 00 0C */ addi r3, r1, 0xc +/* 802158FC 0021285C 4B E9 9A 51 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 80215900 00212860 83 E3 00 04 */ lwz r31, 4(r3) +/* 80215904 00212864 28 1F 00 00 */ cmplwi r31, 0 +/* 80215908 00212868 41 82 00 C0 */ beq lbl_802159C8 +/* 8021590C 0021286C 88 1F 00 30 */ lbz r0, 0x30(r31) +/* 80215910 00212870 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80215914 00212874 41 82 00 B4 */ beq lbl_802159C8 +/* 80215918 00212878 80 9E 08 4C */ lwz r4, 0x84c(r30) +/* 8021591C 0021287C 7F C5 F3 78 */ mr r5, r30 +/* 80215920 00212880 38 61 00 14 */ addi r3, r1, 0x14 +/* 80215924 00212884 C0 22 B3 5C */ lfs f1, lbl_805AD07C@sda21(r2) +/* 80215928 00212888 81 84 00 00 */ lwz r12, 0(r4) +/* 8021592C 0021288C 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 80215930 00212890 7D 89 03 A6 */ mtctr r12 +/* 80215934 00212894 4E 80 04 21 */ bctrl +/* 80215938 00212898 C0 7D 00 60 */ lfs f3, 0x60(r29) +/* 8021593C 0021289C C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 80215940 002128A0 C0 9D 00 50 */ lfs f4, 0x50(r29) +/* 80215944 002128A4 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 80215948 002128A8 EF C0 18 28 */ fsubs f30, f0, f3 +/* 8021594C 002128AC C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 80215950 002128B0 C0 BD 00 40 */ lfs f5, 0x40(r29) +/* 80215954 002128B4 EF A1 20 28 */ fsubs f29, f1, f4 +/* 80215958 002128B8 C0 21 00 14 */ lfs f1, 0x14(r1) +/* 8021595C 002128BC FC 1E 00 40 */ fcmpo cr0, f30, f0 +/* 80215960 002128C0 EF 81 28 28 */ fsubs f28, f1, f5 +/* 80215964 002128C4 40 80 00 64 */ bge lbl_802159C8 +/* 80215968 002128C8 C0 5F 00 50 */ lfs f2, 0x50(r31) +/* 8021596C 002128CC 38 61 00 20 */ addi r3, r1, 0x20 +/* 80215970 002128D0 C0 3F 00 60 */ lfs f1, 0x60(r31) +/* 80215974 002128D4 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 80215978 002128D8 EC 42 20 28 */ fsubs f2, f2, f4 +/* 8021597C 002128DC EC 21 18 28 */ fsubs f1, f1, f3 +/* 80215980 002128E0 EC 00 28 28 */ fsubs f0, f0, f5 +/* 80215984 002128E4 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 80215988 002128E8 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 8021598C 002128EC D0 21 00 28 */ stfs f1, 0x28(r1) +/* 80215990 002128F0 48 0F EF 29 */ bl Magnitude__9CVector3fCFv +/* 80215994 002128F4 FF E0 08 90 */ fmr f31, f1 +/* 80215998 002128F8 7F E3 FB 78 */ mr r3, r31 +/* 8021599C 002128FC 4B F9 31 E1 */ bl GetSphereRadius__15CCollisionActorCFv +/* 802159A0 00212900 EC 1D 07 72 */ fmuls f0, f29, f29 +/* 802159A4 00212904 C0 42 B3 60 */ lfs f2, lbl_805AD080@sda21(r2) +/* 802159A8 00212908 EC 42 F8 7A */ fmadds f2, f2, f1, f31 +/* 802159AC 0021290C EC 3C 07 3A */ fmadds f1, f28, f28, f0 +/* 802159B0 00212910 EC 02 00 B2 */ fmuls f0, f2, f2 +/* 802159B4 00212914 EC 3E 0F BA */ fmadds f1, f30, f30, f1 +/* 802159B8 00212918 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802159BC 0021291C 7C 00 00 26 */ mfcr r0 +/* 802159C0 00212920 54 03 0F FE */ srwi r3, r0, 0x1f +/* 802159C4 00212924 48 00 00 08 */ b lbl_802159CC +lbl_802159C8: +/* 802159C8 00212928 38 60 00 00 */ li r3, 0 +lbl_802159CC: +/* 802159CC 0021292C E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 +/* 802159D0 00212930 CB E1 00 70 */ lfd f31, 0x70(r1) +/* 802159D4 00212934 E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 +/* 802159D8 00212938 CB C1 00 60 */ lfd f30, 0x60(r1) +/* 802159DC 0021293C E3 A1 00 58 */ psq_l f29, 88(r1), 0, qr0 +/* 802159E0 00212940 CB A1 00 50 */ lfd f29, 0x50(r1) +/* 802159E4 00212944 E3 81 00 48 */ psq_l f28, 72(r1), 0, qr0 +/* 802159E8 00212948 CB 81 00 40 */ lfd f28, 0x40(r1) +/* 802159EC 0021294C 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 802159F0 00212950 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 802159F4 00212954 80 01 00 84 */ lwz r0, 0x84(r1) +/* 802159F8 00212958 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 802159FC 0021295C 7C 08 03 A6 */ mtlr r0 +/* 80215A00 00212960 38 21 00 80 */ addi r1, r1, 0x80 +/* 80215A04 00212964 4E 80 00 20 */ blr + +.global UpdateFrozenState__16CScriptGunTurretFfR13CStateManager +UpdateFrozenState__16CScriptGunTurretFfR13CStateManager: +/* 80215A08 00212968 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80215A0C 0021296C 7C 08 02 A6 */ mflr r0 +/* 80215A10 00212970 90 01 00 24 */ stw r0, 0x24(r1) +/* 80215A14 00212974 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80215A18 00212978 7C 7F 1B 78 */ mr r31, r3 +/* 80215A1C 0021297C 88 C3 05 60 */ lbz r6, 0x560(r3) +/* 80215A20 00212980 54 C0 D7 FF */ rlwinm. r0, r6, 0x1a, 0x1f, 0x1f +/* 80215A24 00212984 41 82 00 9C */ beq lbl_80215AC0 +/* 80215A28 00212988 C0 5F 05 3C */ lfs f2, 0x53c(r31) +/* 80215A2C 0021298C C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 80215A30 00212990 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80215A34 00212994 4C 40 13 82 */ cror 2, 0, 2 +/* 80215A38 00212998 40 82 00 70 */ bne lbl_80215AA8 +/* 80215A3C 0021299C 38 00 00 00 */ li r0, 0 +/* 80215A40 002129A0 7C 85 23 78 */ mr r5, r4 +/* 80215A44 002129A4 50 06 36 72 */ rlwimi r6, r0, 6, 0x19, 0x19 +/* 80215A48 002129A8 38 80 00 1D */ li r4, 0x1d +/* 80215A4C 002129AC 98 DF 05 60 */ stb r6, 0x560(r31) +/* 80215A50 002129B0 38 C0 FF FF */ li r6, -1 +/* 80215A54 002129B4 4B E3 B6 6D */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 80215A58 002129B8 81 5F 00 04 */ lwz r10, 4(r31) +/* 80215A5C 002129BC 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 80215A60 002129C0 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 80215A64 002129C4 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 80215A68 002129C8 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 80215A6C 002129CC 38 61 00 08 */ addi r3, r1, 8 +/* 80215A70 002129D0 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 80215A74 002129D4 38 A1 00 0C */ addi r5, r1, 0xc +/* 80215A78 002129D8 A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) +/* 80215A7C 002129DC 38 E0 00 00 */ li r7, 0 +/* 80215A80 002129E0 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 80215A84 002129E4 39 00 00 00 */ li r8, 0 +/* 80215A88 002129E8 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 80215A8C 002129EC D0 41 00 14 */ stfs f2, 0x14(r1) +/* 80215A90 002129F0 A0 9F 03 54 */ lhz r4, 0x354(r31) +/* 80215A94 002129F4 48 0D 48 1D */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +/* 80215A98 002129F8 7F E3 FB 78 */ mr r3, r31 +/* 80215A9C 002129FC 38 80 00 00 */ li r4, 0 +/* 80215AA0 00212A00 4B E3 D9 4D */ bl SetMuted__6CActorFb +/* 80215AA4 00212A04 48 00 00 24 */ b lbl_80215AC8 +lbl_80215AA8: +/* 80215AA8 00212A08 88 1F 03 10 */ lbz r0, 0x310(r31) +/* 80215AAC 00212A0C 28 00 00 00 */ cmplwi r0, 0 +/* 80215AB0 00212A10 41 82 00 18 */ beq lbl_80215AC8 +/* 80215AB4 00212A14 EC 02 08 28 */ fsubs f0, f2, f1 +/* 80215AB8 00212A18 D0 1F 05 3C */ stfs f0, 0x53c(r31) +/* 80215ABC 00212A1C 48 00 00 0C */ b lbl_80215AC8 +lbl_80215AC0: +/* 80215AC0 00212A20 C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 80215AC4 00212A24 D0 1F 05 3C */ stfs f0, 0x53c(r31) +lbl_80215AC8: +/* 80215AC8 00212A28 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80215ACC 00212A2C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80215AD0 00212A30 7C 08 03 A6 */ mtlr r0 +/* 80215AD4 00212A34 38 21 00 20 */ addi r1, r1, 0x20 +/* 80215AD8 00212A38 4E 80 00 20 */ blr + +.global UpdateGunCollisionManager__16CScriptGunTurretFfR13CStateManager +UpdateGunCollisionManager__16CScriptGunTurretFfR13CStateManager: +/* 80215ADC 00212A3C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80215AE0 00212A40 7C 08 02 A6 */ mflr r0 +/* 80215AE4 00212A44 90 01 00 34 */ stw r0, 0x34(r1) +/* 80215AE8 00212A48 DB E1 00 28 */ stfd f31, 0x28(r1) +/* 80215AEC 00212A4C FF E0 08 90 */ fmr f31, f1 +/* 80215AF0 00212A50 93 E1 00 24 */ stw r31, 0x24(r1) +/* 80215AF4 00212A54 7C 9F 23 78 */ mr r31, r4 +/* 80215AF8 00212A58 38 81 00 08 */ addi r4, r1, 8 +/* 80215AFC 00212A5C 93 C1 00 20 */ stw r30, 0x20(r1) +/* 80215B00 00212A60 7C 7E 1B 78 */ mr r30, r3 +/* 80215B04 00212A64 A0 03 04 A0 */ lhz r0, 0x4a0(r3) +/* 80215B08 00212A68 7F E3 FB 78 */ mr r3, r31 +/* 80215B0C 00212A6C B0 01 00 08 */ sth r0, 8(r1) +/* 80215B10 00212A70 4B E3 6A 65 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80215B14 00212A74 7C 64 1B 78 */ mr r4, r3 +/* 80215B18 00212A78 38 61 00 0C */ addi r3, r1, 0xc +/* 80215B1C 00212A7C 4B E9 98 31 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 80215B20 00212A80 80 63 00 04 */ lwz r3, 4(r3) +/* 80215B24 00212A84 28 03 00 00 */ cmplwi r3, 0 +/* 80215B28 00212A88 41 82 00 2C */ beq lbl_80215B54 +/* 80215B2C 00212A8C 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 80215B30 00212A90 81 83 00 00 */ lwz r12, 0(r3) +/* 80215B34 00212A94 80 A4 02 F8 */ lwz r5, 0x2f8(r4) +/* 80215B38 00212A98 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80215B3C 00212A9C 20 85 00 01 */ subfic r4, r5, 1 +/* 80215B40 00212AA0 38 05 FF FF */ addi r0, r5, -1 +/* 80215B44 00212AA4 7C 80 03 78 */ or r0, r4, r0 +/* 80215B48 00212AA8 54 04 0F FE */ srwi r4, r0, 0x1f +/* 80215B4C 00212AAC 7D 89 03 A6 */ mtctr r12 +/* 80215B50 00212AB0 4E 80 04 21 */ bctrl +lbl_80215B54: +/* 80215B54 00212AB4 FC 20 F8 90 */ fmr f1, f31 +/* 80215B58 00212AB8 80 7E 04 9C */ lwz r3, 0x49c(r30) +/* 80215B5C 00212ABC 7F E4 FB 78 */ mr r4, r31 +/* 80215B60 00212AC0 38 A0 00 00 */ li r5, 0 +/* 80215B64 00212AC4 4B F9 18 ED */ bl Update__22CCollisionActorManagerCFfR13CStateManagerQ222CCollisionActorManager14EUpdateOptions +/* 80215B68 00212AC8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80215B6C 00212ACC CB E1 00 28 */ lfd f31, 0x28(r1) +/* 80215B70 00212AD0 83 E1 00 24 */ lwz r31, 0x24(r1) +/* 80215B74 00212AD4 83 C1 00 20 */ lwz r30, 0x20(r1) +/* 80215B78 00212AD8 7C 08 03 A6 */ mtlr r0 +/* 80215B7C 00212ADC 38 21 00 30 */ addi r1, r1, 0x30 +/* 80215B80 00212AE0 4E 80 00 20 */ blr + +.global SetupCollisionManager__16CScriptGunTurretFR13CStateManager +SetupCollisionManager__16CScriptGunTurretFR13CStateManager: +/* 80215B84 00212AE4 94 21 FE 10 */ stwu r1, -0x1f0(r1) +/* 80215B88 00212AE8 7C 08 02 A6 */ mflr r0 +/* 80215B8C 00212AEC 90 01 01 F4 */ stw r0, 0x1f4(r1) +/* 80215B90 00212AF0 38 00 00 00 */ li r0, 0 +/* 80215B94 00212AF4 BE E1 01 CC */ stmw r23, 0x1cc(r1) +/* 80215B98 00212AF8 7C 7B 1B 78 */ mr r27, r3 +/* 80215B9C 00212AFC 7C 9C 23 78 */ mr r28, r4 +/* 80215BA0 00212B00 38 61 00 90 */ addi r3, r1, 0x90 +/* 80215BA4 00212B04 38 80 00 02 */ li r4, 2 +/* 80215BA8 00212B08 90 01 00 94 */ stw r0, 0x94(r1) +/* 80215BAC 00212B0C 90 01 00 98 */ stw r0, 0x98(r1) +/* 80215BB0 00212B10 90 01 00 9C */ stw r0, 0x9c(r1) +/* 80215BB4 00212B14 4B F4 0C 05 */ bl "reserve__Q24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>Fi" +/* 80215BB8 00212B18 80 BB 00 64 */ lwz r5, 0x64(r27) +/* 80215BBC 00212B1C 38 61 00 80 */ addi r3, r1, 0x80 +/* 80215BC0 00212B20 80 82 B3 50 */ lwz r4, lbl_805AD070@sda21(r2) +/* 80215BC4 00212B24 83 45 00 10 */ lwz r26, 0x10(r5) +/* 80215BC8 00212B28 4B DE F0 F1 */ bl string_l__4rstlFPCc +/* 80215BCC 00212B2C 7F 44 D3 78 */ mr r4, r26 +/* 80215BD0 00212B30 38 61 00 18 */ addi r3, r1, 0x18 +/* 80215BD4 00212B34 38 A1 00 80 */ addi r5, r1, 0x80 +/* 80215BD8 00212B38 4B E1 8C 61 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80215BDC 00212B3C 88 01 00 18 */ lbz r0, 0x18(r1) +/* 80215BE0 00212B40 38 61 00 80 */ addi r3, r1, 0x80 +/* 80215BE4 00212B44 98 1B 05 08 */ stb r0, 0x508(r27) +/* 80215BE8 00212B48 48 12 7E F9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80215BEC 00212B4C 80 82 B3 54 */ lwz r4, lbl_805AD074@sda21(r2) +/* 80215BF0 00212B50 38 61 00 70 */ addi r3, r1, 0x70 +/* 80215BF4 00212B54 4B DE F0 C5 */ bl string_l__4rstlFPCc +/* 80215BF8 00212B58 7F 44 D3 78 */ mr r4, r26 +/* 80215BFC 00212B5C 38 61 00 14 */ addi r3, r1, 0x14 +/* 80215C00 00212B60 38 A1 00 70 */ addi r5, r1, 0x70 +/* 80215C04 00212B64 4B E1 8C 35 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80215C08 00212B68 88 01 00 14 */ lbz r0, 0x14(r1) +/* 80215C0C 00212B6C 38 61 00 70 */ addi r3, r1, 0x70 +/* 80215C10 00212B70 98 01 00 1C */ stb r0, 0x1c(r1) +/* 80215C14 00212B74 48 12 7E CD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80215C18 00212B78 80 82 B3 50 */ lwz r4, lbl_805AD070@sda21(r2) +/* 80215C1C 00212B7C 38 61 00 60 */ addi r3, r1, 0x60 +/* 80215C20 00212B80 4B DE F0 99 */ bl string_l__4rstlFPCc +/* 80215C24 00212B84 88 01 00 1C */ lbz r0, 0x1c(r1) +/* 80215C28 00212B88 38 61 00 FC */ addi r3, r1, 0xfc +/* 80215C2C 00212B8C C0 22 B3 64 */ lfs f1, lbl_805AD084@sda21(r2) +/* 80215C30 00212B90 38 81 00 10 */ addi r4, r1, 0x10 +/* 80215C34 00212B94 98 01 00 0C */ stb r0, 0xc(r1) +/* 80215C38 00212B98 38 A1 00 0C */ addi r5, r1, 0xc +/* 80215C3C 00212B9C C0 42 B3 68 */ lfs f2, lbl_805AD088@sda21(r2) +/* 80215C40 00212BA0 38 E1 00 60 */ addi r7, r1, 0x60 +/* 80215C44 00212BA4 88 1B 05 08 */ lbz r0, 0x508(r27) +/* 80215C48 00212BA8 38 C0 00 01 */ li r6, 1 +/* 80215C4C 00212BAC C0 62 B3 6C */ lfs f3, lbl_805AD08C@sda21(r2) +/* 80215C50 00212BB0 98 01 00 10 */ stb r0, 0x10(r1) +/* 80215C54 00212BB4 4B F9 2B 01 */ bl "SphereSubdivideCollision__26CJointCollisionDescriptionF6CSegId6CSegIdffQ226CJointCollisionDescription16EOrientationTypeRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" +/* 80215C58 00212BB8 80 E1 00 FC */ lwz r7, 0xfc(r1) +/* 80215C5C 00212BBC 3B C1 01 B0 */ addi r30, r1, 0x1b0 +/* 80215C60 00212BC0 80 C1 01 00 */ lwz r6, 0x100(r1) +/* 80215C64 00212BC4 3B 01 01 28 */ addi r24, r1, 0x128 +/* 80215C68 00212BC8 88 A1 01 04 */ lbz r5, 0x104(r1) +/* 80215C6C 00212BCC 7F C3 F3 78 */ mr r3, r30 +/* 80215C70 00212BD0 88 01 01 05 */ lbz r0, 0x105(r1) +/* 80215C74 00212BD4 7F 04 C3 78 */ mr r4, r24 +/* 80215C78 00212BD8 C0 E1 01 08 */ lfs f7, 0x108(r1) +/* 80215C7C 00212BDC C0 C1 01 0C */ lfs f6, 0x10c(r1) +/* 80215C80 00212BE0 C0 A1 01 10 */ lfs f5, 0x110(r1) +/* 80215C84 00212BE4 C0 81 01 14 */ lfs f4, 0x114(r1) +/* 80215C88 00212BE8 C0 61 01 18 */ lfs f3, 0x118(r1) +/* 80215C8C 00212BEC C0 41 01 1C */ lfs f2, 0x11c(r1) +/* 80215C90 00212BF0 C0 21 01 20 */ lfs f1, 0x120(r1) +/* 80215C94 00212BF4 C0 01 01 24 */ lfs f0, 0x124(r1) +/* 80215C98 00212BF8 90 E1 01 84 */ stw r7, 0x184(r1) +/* 80215C9C 00212BFC 90 C1 01 88 */ stw r6, 0x188(r1) +/* 80215CA0 00212C00 98 A1 01 8C */ stb r5, 0x18c(r1) +/* 80215CA4 00212C04 98 01 01 8D */ stb r0, 0x18d(r1) +/* 80215CA8 00212C08 D0 E1 01 90 */ stfs f7, 0x190(r1) +/* 80215CAC 00212C0C D0 C1 01 94 */ stfs f6, 0x194(r1) +/* 80215CB0 00212C10 D0 A1 01 98 */ stfs f5, 0x198(r1) +/* 80215CB4 00212C14 D0 81 01 9C */ stfs f4, 0x19c(r1) +/* 80215CB8 00212C18 D0 61 01 A0 */ stfs f3, 0x1a0(r1) +/* 80215CBC 00212C1C D0 41 01 A4 */ stfs f2, 0x1a4(r1) +/* 80215CC0 00212C20 D0 21 01 A8 */ stfs f1, 0x1a8(r1) +/* 80215CC4 00212C24 D0 01 01 AC */ stfs f0, 0x1ac(r1) +/* 80215CC8 00212C28 48 12 84 99 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80215CCC 00212C2C A0 01 01 38 */ lhz r0, 0x138(r1) +/* 80215CD0 00212C30 28 18 00 00 */ cmplwi r24, 0 +/* 80215CD4 00212C34 C0 01 01 3C */ lfs f0, 0x13c(r1) +/* 80215CD8 00212C38 B0 01 01 C0 */ sth r0, 0x1c0(r1) +/* 80215CDC 00212C3C D0 01 01 C4 */ stfs f0, 0x1c4(r1) +/* 80215CE0 00212C40 41 82 00 0C */ beq lbl_80215CEC +/* 80215CE4 00212C44 7F 03 C3 78 */ mr r3, r24 +/* 80215CE8 00212C48 48 12 7D F9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80215CEC: +/* 80215CEC 00212C4C 38 61 00 60 */ addi r3, r1, 0x60 +/* 80215CF0 00212C50 48 12 7D F1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80215CF4 00212C54 38 61 00 90 */ addi r3, r1, 0x90 +/* 80215CF8 00212C58 38 81 01 84 */ addi r4, r1, 0x184 +/* 80215CFC 00212C5C 4B F4 05 35 */ bl sub_80156230 +/* 80215D00 00212C60 80 82 B3 54 */ lwz r4, lbl_805AD074@sda21(r2) +/* 80215D04 00212C64 38 61 00 50 */ addi r3, r1, 0x50 +/* 80215D08 00212C68 4B DE EF B1 */ bl string_l__4rstlFPCc +/* 80215D0C 00212C6C 88 01 00 1C */ lbz r0, 0x1c(r1) +/* 80215D10 00212C70 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 80215D14 00212C74 C0 22 B3 70 */ lfs f1, lbl_805AD090@sda21(r2) +/* 80215D18 00212C78 38 81 00 08 */ addi r4, r1, 8 +/* 80215D1C 00212C7C 98 01 00 08 */ stb r0, 8(r1) +/* 80215D20 00212C80 38 A1 00 50 */ addi r5, r1, 0x50 +/* 80215D24 00212C84 C0 42 B3 6C */ lfs f2, lbl_805AD08C@sda21(r2) +/* 80215D28 00212C88 4B F9 2A E5 */ bl "SphereCollision__26CJointCollisionDescriptionF6CSegIdfRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" +/* 80215D2C 00212C8C 80 E1 00 B8 */ lwz r7, 0xb8(r1) +/* 80215D30 00212C90 3B E1 01 6C */ addi r31, r1, 0x16c +/* 80215D34 00212C94 80 C1 00 BC */ lwz r6, 0xbc(r1) +/* 80215D38 00212C98 3B 01 00 E4 */ addi r24, r1, 0xe4 +/* 80215D3C 00212C9C 88 A1 00 C0 */ lbz r5, 0xc0(r1) +/* 80215D40 00212CA0 7F E3 FB 78 */ mr r3, r31 +/* 80215D44 00212CA4 88 01 00 C1 */ lbz r0, 0xc1(r1) +/* 80215D48 00212CA8 7F 04 C3 78 */ mr r4, r24 +/* 80215D4C 00212CAC C0 E1 00 C4 */ lfs f7, 0xc4(r1) +/* 80215D50 00212CB0 C0 C1 00 C8 */ lfs f6, 0xc8(r1) +/* 80215D54 00212CB4 C0 A1 00 CC */ lfs f5, 0xcc(r1) +/* 80215D58 00212CB8 C0 81 00 D0 */ lfs f4, 0xd0(r1) +/* 80215D5C 00212CBC C0 61 00 D4 */ lfs f3, 0xd4(r1) +/* 80215D60 00212CC0 C0 41 00 D8 */ lfs f2, 0xd8(r1) +/* 80215D64 00212CC4 C0 21 00 DC */ lfs f1, 0xdc(r1) +/* 80215D68 00212CC8 C0 01 00 E0 */ lfs f0, 0xe0(r1) +/* 80215D6C 00212CCC 90 E1 01 40 */ stw r7, 0x140(r1) +/* 80215D70 00212CD0 90 C1 01 44 */ stw r6, 0x144(r1) +/* 80215D74 00212CD4 98 A1 01 48 */ stb r5, 0x148(r1) +/* 80215D78 00212CD8 98 01 01 49 */ stb r0, 0x149(r1) +/* 80215D7C 00212CDC D0 E1 01 4C */ stfs f7, 0x14c(r1) +/* 80215D80 00212CE0 D0 C1 01 50 */ stfs f6, 0x150(r1) +/* 80215D84 00212CE4 D0 A1 01 54 */ stfs f5, 0x154(r1) +/* 80215D88 00212CE8 D0 81 01 58 */ stfs f4, 0x158(r1) +/* 80215D8C 00212CEC D0 61 01 5C */ stfs f3, 0x15c(r1) +/* 80215D90 00212CF0 D0 41 01 60 */ stfs f2, 0x160(r1) +/* 80215D94 00212CF4 D0 21 01 64 */ stfs f1, 0x164(r1) +/* 80215D98 00212CF8 D0 01 01 68 */ stfs f0, 0x168(r1) +/* 80215D9C 00212CFC 48 12 83 C5 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80215DA0 00212D00 A0 01 00 F4 */ lhz r0, 0xf4(r1) +/* 80215DA4 00212D04 28 18 00 00 */ cmplwi r24, 0 +/* 80215DA8 00212D08 C0 01 00 F8 */ lfs f0, 0xf8(r1) +/* 80215DAC 00212D0C B0 01 01 7C */ sth r0, 0x17c(r1) +/* 80215DB0 00212D10 D0 01 01 80 */ stfs f0, 0x180(r1) +/* 80215DB4 00212D14 41 82 00 0C */ beq lbl_80215DC0 +/* 80215DB8 00212D18 7F 03 C3 78 */ mr r3, r24 +/* 80215DBC 00212D1C 48 12 7D 25 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80215DC0: +/* 80215DC0 00212D20 38 61 00 50 */ addi r3, r1, 0x50 +/* 80215DC4 00212D24 48 12 7D 1D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80215DC8 00212D28 38 61 00 90 */ addi r3, r1, 0x90 +/* 80215DCC 00212D2C 38 81 01 40 */ addi r4, r1, 0x140 +/* 80215DD0 00212D30 4B F4 04 61 */ bl sub_80156230 +/* 80215DD4 00212D34 3C 80 80 3D */ lis r4, lbl_803D2FF0@ha +/* 80215DD8 00212D38 38 60 00 18 */ li r3, 0x18 +/* 80215DDC 00212D3C 38 84 2F F0 */ addi r4, r4, lbl_803D2FF0@l +/* 80215DE0 00212D40 38 A0 00 00 */ li r5, 0 +/* 80215DE4 00212D44 38 84 00 31 */ addi r4, r4, 0x31 +/* 80215DE8 00212D48 48 0F FA 85 */ bl __nw__FUlPCcPCc +/* 80215DEC 00212D4C 7C 7A 1B 79 */ or. r26, r3, r3 +/* 80215DF0 00212D50 41 82 00 38 */ beq lbl_80215E28 +/* 80215DF4 00212D54 81 3B 00 04 */ lwz r9, 4(r27) +/* 80215DF8 00212D58 7F 84 E3 78 */ mr r4, r28 +/* 80215DFC 00212D5C 38 A1 00 28 */ addi r5, r1, 0x28 +/* 80215E00 00212D60 38 C1 00 34 */ addi r6, r1, 0x34 +/* 80215E04 00212D64 91 21 00 34 */ stw r9, 0x34(r1) +/* 80215E08 00212D68 38 E1 00 90 */ addi r7, r1, 0x90 +/* 80215E0C 00212D6C 39 00 00 01 */ li r8, 1 +/* 80215E10 00212D70 A0 1B 00 08 */ lhz r0, 8(r27) +/* 80215E14 00212D74 91 21 00 30 */ stw r9, 0x30(r1) +/* 80215E18 00212D78 B0 01 00 24 */ sth r0, 0x24(r1) +/* 80215E1C 00212D7C B0 01 00 28 */ sth r0, 0x28(r1) +/* 80215E20 00212D80 4B F9 1B 11 */ bl "__ct__22CCollisionActorManagerFR13CStateManager9TUniqueId7TAreaIdRCQ24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>b" +/* 80215E24 00212D84 7C 7A 1B 78 */ mr r26, r3 +lbl_80215E28: +/* 80215E28 00212D88 80 7B 04 9C */ lwz r3, 0x49c(r27) +/* 80215E2C 00212D8C 38 80 00 01 */ li r4, 1 +/* 80215E30 00212D90 4B F9 1A AD */ bl sub_801a78dc +/* 80215E34 00212D94 93 5B 04 9C */ stw r26, 0x49c(r27) +/* 80215E38 00212D98 7F 84 E3 78 */ mr r4, r28 +/* 80215E3C 00212D9C 88 1B 00 30 */ lbz r0, 0x30(r27) +/* 80215E40 00212DA0 80 7B 04 9C */ lwz r3, 0x49c(r27) +/* 80215E44 00212DA4 54 05 CF FE */ rlwinm r5, r0, 0x19, 0x1f, 0x1f +/* 80215E48 00212DA8 4B F9 14 B1 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb +/* 80215E4C 00212DAC 3B A0 00 00 */ li r29, 0 +/* 80215E50 00212DB0 48 00 01 08 */ b lbl_80215F58 +lbl_80215E54: +/* 80215E54 00212DB4 80 7B 04 9C */ lwz r3, 0x49c(r27) +/* 80215E58 00212DB8 7F A4 EB 78 */ mr r4, r29 +/* 80215E5C 00212DBC 4B F9 13 DD */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 80215E60 00212DC0 7C 7A 1B 78 */ mr r26, r3 +/* 80215E64 00212DC4 7F 83 E3 78 */ mr r3, r28 +/* 80215E68 00212DC8 A0 1A 00 3C */ lhz r0, 0x3c(r26) +/* 80215E6C 00212DCC 38 81 00 20 */ addi r4, r1, 0x20 +/* 80215E70 00212DD0 B0 01 00 2C */ sth r0, 0x2c(r1) +/* 80215E74 00212DD4 B0 01 00 20 */ sth r0, 0x20(r1) +/* 80215E78 00212DD8 4B E3 66 FD */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80215E7C 00212DDC 7C 64 1B 78 */ mr r4, r3 +/* 80215E80 00212DE0 38 61 00 38 */ addi r3, r1, 0x38 +/* 80215E84 00212DE4 4B E9 94 C9 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 80215E88 00212DE8 82 E3 00 04 */ lwz r23, 4(r3) +/* 80215E8C 00212DEC 28 17 00 00 */ cmplwi r23, 0 +/* 80215E90 00212DF0 41 82 00 C4 */ beq lbl_80215F54 +/* 80215E94 00212DF4 7E E3 BB 78 */ mr r3, r23 +/* 80215E98 00212DF8 7F 85 E3 78 */ mr r5, r28 +/* 80215E9C 00212DFC 38 80 00 12 */ li r4, 0x12 +/* 80215EA0 00212E00 4B E3 E4 B1 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 80215EA4 00212E04 80 AD 95 0C */ lwz r5, lbl_805A80CC@sda21(r13) +/* 80215EA8 00212E08 38 60 00 00 */ li r3, 0 +/* 80215EAC 00212E0C 38 80 00 01 */ li r4, 1 +/* 80215EB0 00212E10 48 17 40 45 */ bl __shl2i +/* 80215EB4 00212E14 80 AD 95 10 */ lwz r5, lbl_805A80D0@sda21(r13) +/* 80215EB8 00212E18 7C 98 23 78 */ mr r24, r4 +/* 80215EBC 00212E1C 7C 79 1B 78 */ mr r25, r3 +/* 80215EC0 00212E20 38 60 00 00 */ li r3, 0 +/* 80215EC4 00212E24 38 80 00 01 */ li r4, 1 +/* 80215EC8 00212E28 48 17 40 2D */ bl __shl2i +/* 80215ECC 00212E2C 80 AD 95 14 */ lwz r5, lbl_805A80D4@sda21(r13) +/* 80215ED0 00212E30 7F 18 23 78 */ or r24, r24, r4 +/* 80215ED4 00212E34 7F 39 1B 78 */ or r25, r25, r3 +/* 80215ED8 00212E38 38 60 00 00 */ li r3, 0 +/* 80215EDC 00212E3C 38 80 00 01 */ li r4, 1 +/* 80215EE0 00212E40 48 17 40 15 */ bl __shl2i +/* 80215EE4 00212E44 80 AD 95 08 */ lwz r5, lbl_805A80C8@sda21(r13) +/* 80215EE8 00212E48 7F 18 23 78 */ or r24, r24, r4 +/* 80215EEC 00212E4C 7F 39 1B 78 */ or r25, r25, r3 +/* 80215EF0 00212E50 38 60 00 00 */ li r3, 0 +/* 80215EF4 00212E54 38 80 00 01 */ li r4, 1 +/* 80215EF8 00212E58 48 17 3F FD */ bl __shl2i +/* 80215EFC 00212E5C 38 00 00 03 */ li r0, 3 +/* 80215F00 00212E60 90 81 00 A4 */ stw r4, 0xa4(r1) +/* 80215F04 00212E64 38 81 00 A0 */ addi r4, r1, 0xa0 +/* 80215F08 00212E68 90 61 00 A0 */ stw r3, 0xa0(r1) +/* 80215F0C 00212E6C 7E E3 BB 78 */ mr r3, r23 +/* 80215F10 00212E70 93 01 00 AC */ stw r24, 0xac(r1) +/* 80215F14 00212E74 93 21 00 A8 */ stw r25, 0xa8(r1) +/* 80215F18 00212E78 90 01 00 B0 */ stw r0, 0xb0(r1) +/* 80215F1C 00212E7C 4B E3 D9 85 */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter +/* 80215F20 00212E80 80 82 B3 54 */ lwz r4, lbl_805AD074@sda21(r2) +/* 80215F24 00212E84 38 61 00 40 */ addi r3, r1, 0x40 +/* 80215F28 00212E88 4B DE ED 91 */ bl string_l__4rstlFPCc +/* 80215F2C 00212E8C 38 7A 00 2C */ addi r3, r26, 0x2c +/* 80215F30 00212E90 38 81 00 40 */ addi r4, r1, 0x40 +/* 80215F34 00212E94 4B E3 C6 AD */ 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" +/* 80215F38 00212E98 7C 7A 1B 78 */ mr r26, r3 +/* 80215F3C 00212E9C 38 61 00 40 */ addi r3, r1, 0x40 +/* 80215F40 00212EA0 48 12 7B A1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80215F44 00212EA4 57 40 06 3F */ clrlwi. r0, r26, 0x18 +/* 80215F48 00212EA8 41 82 00 0C */ beq lbl_80215F54 +/* 80215F4C 00212EAC A0 01 00 2C */ lhz r0, 0x2c(r1) +/* 80215F50 00212EB0 B0 1B 04 A0 */ sth r0, 0x4a0(r27) +lbl_80215F54: +/* 80215F54 00212EB4 3B BD 00 01 */ addi r29, r29, 1 +lbl_80215F58: +/* 80215F58 00212EB8 80 7B 04 9C */ lwz r3, 0x49c(r27) +/* 80215F5C 00212EBC 4B F9 12 ED */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 80215F60 00212EC0 7C 1D 18 40 */ cmplw r29, r3 +/* 80215F64 00212EC4 41 80 FE F0 */ blt lbl_80215E54 +/* 80215F68 00212EC8 28 1F 00 00 */ cmplwi r31, 0 +/* 80215F6C 00212ECC 41 82 00 0C */ beq lbl_80215F78 +/* 80215F70 00212ED0 7F E3 FB 78 */ mr r3, r31 +/* 80215F74 00212ED4 48 12 7B 6D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80215F78: +/* 80215F78 00212ED8 28 1E 00 00 */ cmplwi r30, 0 +/* 80215F7C 00212EDC 41 82 00 0C */ beq lbl_80215F88 +/* 80215F80 00212EE0 7F C3 F3 78 */ mr r3, r30 +/* 80215F84 00212EE4 48 12 7B 5D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80215F88: +/* 80215F88 00212EE8 38 61 00 90 */ addi r3, r1, 0x90 +/* 80215F8C 00212EEC 38 80 FF FF */ li r4, -1 +/* 80215F90 00212EF0 4B F4 03 9D */ bl sub_8015632c +/* 80215F94 00212EF4 BA E1 01 CC */ lmw r23, 0x1cc(r1) +/* 80215F98 00212EF8 80 01 01 F4 */ lwz r0, 0x1f4(r1) +/* 80215F9C 00212EFC 7C 08 03 A6 */ mtlr r0 +/* 80215FA0 00212F00 38 21 01 F0 */ addi r1, r1, 0x1f0 +/* 80215FA4 00212F04 4E 80 00 20 */ blr + +.global LineOfSightTest__16CScriptGunTurretCFR13CStateManager +LineOfSightTest__16CScriptGunTurretCFR13CStateManager: +/* 80215FA8 00212F08 94 21 F6 B0 */ stwu r1, -0x950(r1) +/* 80215FAC 00212F0C 7C 08 02 A6 */ mflr r0 +/* 80215FB0 00212F10 90 01 09 54 */ stw r0, 0x954(r1) +/* 80215FB4 00212F14 DB E1 09 40 */ stfd f31, 0x940(r1) +/* 80215FB8 00212F18 F3 E1 09 48 */ psq_st f31, -1720(r1), 0, qr0 +/* 80215FBC 00212F1C 93 E1 09 3C */ stw r31, 0x93c(r1) +/* 80215FC0 00212F20 93 C1 09 38 */ stw r30, 0x938(r1) +/* 80215FC4 00212F24 93 A1 09 34 */ stw r29, 0x934(r1) +/* 80215FC8 00212F28 93 81 09 30 */ stw r28, 0x930(r1) +/* 80215FCC 00212F2C 7C 7E 1B 78 */ mr r30, r3 +/* 80215FD0 00212F30 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80215FD4 00212F34 A0 63 02 5C */ lhz r3, 0x25c(r3) +/* 80215FD8 00212F38 7C 9C 23 78 */ mr r28, r4 +/* 80215FDC 00212F3C 7C 03 00 40 */ cmplw r3, r0 +/* 80215FE0 00212F40 41 82 02 7C */ beq lbl_8021625C +/* 80215FE4 00212F44 B0 61 00 08 */ sth r3, 8(r1) +/* 80215FE8 00212F48 7F 83 E3 78 */ mr r3, r28 +/* 80215FEC 00212F4C 38 81 00 08 */ addi r4, r1, 8 +/* 80215FF0 00212F50 4B E3 65 85 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80215FF4 00212F54 7C 64 1B 78 */ mr r4, r3 +/* 80215FF8 00212F58 38 61 00 10 */ addi r3, r1, 0x10 +/* 80215FFC 00212F5C 4B E9 37 B9 */ bl "__ct__30TCastToPtr<16CScriptGunTurret>FP7CEntity" +/* 80216000 00212F60 83 A3 00 04 */ lwz r29, 4(r3) +/* 80216004 00212F64 28 1D 00 00 */ cmplwi r29, 0 +/* 80216008 00212F68 41 82 02 54 */ beq lbl_8021625C +/* 8021600C 00212F6C 88 1E 05 60 */ lbz r0, 0x560(r30) +/* 80216010 00212F70 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 80216014 00212F74 40 82 00 1C */ bne lbl_80216030 +/* 80216018 00212F78 80 1E 05 20 */ lwz r0, 0x520(r30) +/* 8021601C 00212F7C 2C 00 00 05 */ cmpwi r0, 5 +/* 80216020 00212F80 40 82 00 18 */ bne lbl_80216038 +/* 80216024 00212F84 88 1E 04 F0 */ lbz r0, 0x4f0(r30) +/* 80216028 00212F88 28 00 00 00 */ cmplwi r0, 0 +/* 8021602C 00212F8C 41 82 00 0C */ beq lbl_80216038 +lbl_80216030: +/* 80216030 00212F90 38 60 00 01 */ li r3, 1 +/* 80216034 00212F94 48 00 02 2C */ b lbl_80216260 +lbl_80216038: +/* 80216038 00212F98 80 82 B3 54 */ lwz r4, lbl_805AD074@sda21(r2) +/* 8021603C 00212F9C 38 61 00 3C */ addi r3, r1, 0x3c +/* 80216040 00212FA0 4B DE EC 79 */ bl string_l__4rstlFPCc +/* 80216044 00212FA4 7F A4 EB 78 */ mr r4, r29 +/* 80216048 00212FA8 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 8021604C 00212FAC 38 A1 00 3C */ addi r5, r1, 0x3c +/* 80216050 00212FB0 4B E3 CE B1 */ bl "GetLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80216054 00212FB4 38 61 00 F8 */ addi r3, r1, 0xf8 +/* 80216058 00212FB8 38 81 00 C8 */ addi r4, r1, 0xc8 +/* 8021605C 00212FBC 48 0F CB 19 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80216060 00212FC0 38 61 00 3C */ addi r3, r1, 0x3c +/* 80216064 00212FC4 48 12 7A 7D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80216068 00212FC8 C0 41 01 04 */ lfs f2, 0x104(r1) +/* 8021606C 00212FCC 38 61 00 30 */ addi r3, r1, 0x30 +/* 80216070 00212FD0 C0 21 01 14 */ lfs f1, 0x114(r1) +/* 80216074 00212FD4 38 9D 00 34 */ addi r4, r29, 0x34 +/* 80216078 00212FD8 C0 01 01 24 */ lfs f0, 0x124(r1) +/* 8021607C 00212FDC 38 A1 00 24 */ addi r5, r1, 0x24 +/* 80216080 00212FE0 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 80216084 00212FE4 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 80216088 00212FE8 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 8021608C 00212FEC 48 0F C9 F5 */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 80216090 00212FF0 C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 80216094 00212FF4 7F 85 E3 78 */ mr r5, r28 +/* 80216098 00212FF8 C0 01 00 34 */ lfs f0, 0x34(r1) +/* 8021609C 00212FFC 38 61 00 18 */ addi r3, r1, 0x18 +/* 802160A0 00213000 C0 7D 00 60 */ lfs f3, 0x60(r29) +/* 802160A4 00213004 C0 41 00 38 */ lfs f2, 0x38(r1) +/* 802160A8 00213008 EC 81 00 2A */ fadds f4, f1, f0 +/* 802160AC 0021300C C0 3D 00 40 */ lfs f1, 0x40(r29) +/* 802160B0 00213010 C0 01 00 30 */ lfs f0, 0x30(r1) +/* 802160B4 00213014 EC 43 10 2A */ fadds f2, f3, f2 +/* 802160B8 00213018 D0 81 00 5C */ stfs f4, 0x5c(r1) +/* 802160BC 0021301C EC 01 00 2A */ fadds f0, f1, f0 +/* 802160C0 00213020 C0 22 B3 5C */ lfs f1, lbl_805AD07C@sda21(r2) +/* 802160C4 00213024 D0 41 00 60 */ stfs f2, 0x60(r1) +/* 802160C8 00213028 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 802160CC 0021302C 80 9C 08 4C */ lwz r4, 0x84c(r28) +/* 802160D0 00213030 81 84 00 00 */ lwz r12, 0(r4) +/* 802160D4 00213034 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 802160D8 00213038 7D 89 03 A6 */ mtctr r12 +/* 802160DC 0021303C 4E 80 04 21 */ bctrl +/* 802160E0 00213040 C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 802160E4 00213044 38 61 00 4C */ addi r3, r1, 0x4c +/* 802160E8 00213048 C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 802160EC 0021304C C0 61 00 20 */ lfs f3, 0x20(r1) +/* 802160F0 00213050 C0 41 00 60 */ lfs f2, 0x60(r1) +/* 802160F4 00213054 EC 81 00 28 */ fsubs f4, f1, f0 +/* 802160F8 00213058 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 802160FC 0021305C C0 01 00 58 */ lfs f0, 0x58(r1) +/* 80216100 00213060 EC 43 10 28 */ fsubs f2, f3, f2 +/* 80216104 00213064 D0 81 00 50 */ stfs f4, 0x50(r1) +/* 80216108 00213068 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8021610C 0021306C D0 41 00 54 */ stfs f2, 0x54(r1) +/* 80216110 00213070 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 80216114 00213074 48 0F E7 A5 */ bl Magnitude__9CVector3fCFv +/* 80216118 00213078 FF E0 08 90 */ fmr f31, f1 +/* 8021611C 0021307C C0 42 B3 68 */ lfs f2, lbl_805AD088@sda21(r2) +/* 80216120 00213080 38 00 00 00 */ li r0, 0 +/* 80216124 00213084 C0 61 00 4C */ lfs f3, 0x4c(r1) +/* 80216128 00213088 C0 21 00 50 */ lfs f1, 0x50(r1) +/* 8021612C 0021308C 38 60 00 00 */ li r3, 0 +/* 80216130 00213090 EC 82 F8 24 */ fdivs f4, f2, f31 +/* 80216134 00213094 C0 01 00 54 */ lfs f0, 0x54(r1) +/* 80216138 00213098 80 AD 95 00 */ lwz r5, lbl_805A80C0@sda21(r13) +/* 8021613C 0021309C 38 80 00 01 */ li r4, 1 +/* 80216140 002130A0 90 01 01 28 */ stw r0, 0x128(r1) +/* 80216144 002130A4 EC 43 01 32 */ fmuls f2, f3, f4 +/* 80216148 002130A8 EC 21 01 32 */ fmuls f1, f1, f4 +/* 8021614C 002130AC EC 00 01 32 */ fmuls f0, f0, f4 +/* 80216150 002130B0 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 80216154 002130B4 D0 21 00 50 */ stfs f1, 0x50(r1) +/* 80216158 002130B8 D0 01 00 54 */ stfs f0, 0x54(r1) +/* 8021615C 002130BC 48 17 3D 99 */ bl __shl2i +/* 80216160 002130C0 80 AD 95 04 */ lwz r5, lbl_805A80C4@sda21(r13) +/* 80216164 002130C4 7C 9E 23 78 */ mr r30, r4 +/* 80216168 002130C8 7C 7F 1B 78 */ mr r31, r3 +/* 8021616C 002130CC 38 60 00 00 */ li r3, 0 +/* 80216170 002130D0 38 80 00 01 */ li r4, 1 +/* 80216174 002130D4 48 17 3D 81 */ bl __shl2i +/* 80216178 002130D8 80 AD 94 FC */ lwz r5, lbl_805A80BC@sda21(r13) +/* 8021617C 002130DC 7F DE 23 78 */ or r30, r30, r4 +/* 80216180 002130E0 7F FF 1B 78 */ or r31, r31, r3 +/* 80216184 002130E4 38 60 00 00 */ li r3, 0 +/* 80216188 002130E8 38 80 00 01 */ li r4, 1 +/* 8021618C 002130EC 48 17 3D 69 */ bl __shl2i +/* 80216190 002130F0 38 00 00 03 */ li r0, 3 +/* 80216194 002130F4 FC 20 F8 90 */ fmr f1, f31 +/* 80216198 002130F8 90 81 00 84 */ stw r4, 0x84(r1) +/* 8021619C 002130FC 7F A8 EB 78 */ mr r8, r29 +/* 802161A0 00213100 38 81 01 28 */ addi r4, r1, 0x128 +/* 802161A4 00213104 38 A1 00 58 */ addi r5, r1, 0x58 +/* 802161A8 00213108 90 61 00 80 */ stw r3, 0x80(r1) +/* 802161AC 0021310C 7F 83 E3 78 */ mr r3, r28 +/* 802161B0 00213110 38 C1 00 4C */ addi r6, r1, 0x4c +/* 802161B4 00213114 90 01 00 78 */ stw r0, 0x78(r1) +/* 802161B8 00213118 38 E1 00 80 */ addi r7, r1, 0x80 +/* 802161BC 0021311C 93 C1 00 8C */ stw r30, 0x8c(r1) +/* 802161C0 00213120 93 E1 00 88 */ stw r31, 0x88(r1) +/* 802161C4 00213124 90 01 00 90 */ stw r0, 0x90(r1) +/* 802161C8 00213128 4B E3 65 11 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC9CVector3fRC9CVector3ffRC15CMaterialFilterPC6CActor" +/* 802161CC 0021312C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 802161D0 00213130 FC 20 F8 90 */ fmr f1, f31 +/* 802161D4 00213134 7F 84 E3 78 */ mr r4, r28 +/* 802161D8 00213138 38 61 00 98 */ addi r3, r1, 0x98 +/* 802161DC 0021313C B0 01 00 0C */ sth r0, 0xc(r1) +/* 802161E0 00213140 38 A1 00 0C */ addi r5, r1, 0xc +/* 802161E4 00213144 38 C1 00 58 */ addi r6, r1, 0x58 +/* 802161E8 00213148 38 E1 00 4C */ addi r7, r1, 0x4c +/* 802161EC 0021314C 39 01 00 80 */ addi r8, r1, 0x80 +/* 802161F0 00213150 39 21 01 28 */ addi r9, r1, 0x128 +/* 802161F4 00213154 4B E3 6D D1 */ bl "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 802161F8 00213158 80 C1 01 28 */ lwz r6, 0x128(r1) +/* 802161FC 0021315C 38 80 00 00 */ li r4, 0 +/* 80216200 00213160 88 01 00 B8 */ lbz r0, 0xb8(r1) +/* 80216204 00213164 2C 06 00 00 */ cmpwi r6, 0 +/* 80216208 00213168 7C 00 00 34 */ cntlzw r0, r0 +/* 8021620C 0021316C 54 03 D9 7E */ srwi r3, r0, 5 +/* 80216210 00213170 40 81 00 40 */ ble lbl_80216250 +/* 80216214 00213174 2C 06 00 08 */ cmpwi r6, 8 +/* 80216218 00213178 38 A6 FF F8 */ addi r5, r6, -8 +/* 8021621C 0021317C 40 81 00 20 */ ble lbl_8021623C +/* 80216220 00213180 38 05 00 07 */ addi r0, r5, 7 +/* 80216224 00213184 54 00 E8 FE */ srwi r0, r0, 3 +/* 80216228 00213188 7C 09 03 A6 */ mtctr r0 +/* 8021622C 0021318C 2C 05 00 00 */ cmpwi r5, 0 +/* 80216230 00213190 40 81 00 0C */ ble lbl_8021623C +lbl_80216234: +/* 80216234 00213194 38 84 00 08 */ addi r4, r4, 8 +/* 80216238 00213198 42 00 FF FC */ bdnz lbl_80216234 +lbl_8021623C: +/* 8021623C 0021319C 7C 04 30 50 */ subf r0, r4, r6 +/* 80216240 002131A0 7C 09 03 A6 */ mtctr r0 +/* 80216244 002131A4 7C 04 30 00 */ cmpw r4, r6 +/* 80216248 002131A8 40 80 00 08 */ bge lbl_80216250 +lbl_8021624C: +/* 8021624C 002131AC 42 00 00 00 */ bdnz lbl_8021624C +lbl_80216250: +/* 80216250 002131B0 38 00 00 00 */ li r0, 0 +/* 80216254 002131B4 90 01 01 28 */ stw r0, 0x128(r1) +/* 80216258 002131B8 48 00 00 08 */ b lbl_80216260 +lbl_8021625C: +/* 8021625C 002131BC 38 60 00 00 */ li r3, 0 +lbl_80216260: +/* 80216260 002131C0 E3 E1 09 48 */ psq_l f31, -1720(r1), 0, qr0 +/* 80216264 002131C4 80 01 09 54 */ lwz r0, 0x954(r1) +/* 80216268 002131C8 CB E1 09 40 */ lfd f31, 0x940(r1) +/* 8021626C 002131CC 83 E1 09 3C */ lwz r31, 0x93c(r1) +/* 80216270 002131D0 83 C1 09 38 */ lwz r30, 0x938(r1) +/* 80216274 002131D4 83 A1 09 34 */ lwz r29, 0x934(r1) +/* 80216278 002131D8 83 81 09 30 */ lwz r28, 0x930(r1) +/* 8021627C 002131DC 7C 08 03 A6 */ mtlr r0 +/* 80216280 002131E0 38 21 09 50 */ addi r1, r1, 0x950 +/* 80216284 002131E4 4E 80 00 20 */ blr + +.global UpdateTargettingSound__16CScriptGunTurretFf +UpdateTargettingSound__16CScriptGunTurretFf: +/* 80216288 002131E8 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 8021628C 002131EC 7C 08 02 A6 */ mflr r0 +/* 80216290 002131F0 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 80216294 002131F4 DB E1 00 90 */ stfd f31, 0x90(r1) +/* 80216298 002131F8 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 +/* 8021629C 002131FC DB C1 00 80 */ stfd f30, 0x80(r1) +/* 802162A0 00213200 F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 +/* 802162A4 00213204 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 802162A8 00213208 FF E0 08 90 */ fmr f31, f1 +/* 802162AC 0021320C C0 03 05 10 */ lfs f0, 0x510(r3) +/* 802162B0 00213210 7C 7F 1B 78 */ mr r31, r3 +/* 802162B4 00213214 38 61 00 2C */ addi r3, r1, 0x2c +/* 802162B8 00213218 EC 00 F8 2A */ fadds f0, f0, f31 +/* 802162BC 0021321C D0 1F 05 10 */ stfs f0, 0x510(r31) +/* 802162C0 00213220 C0 5F 00 48 */ lfs f2, 0x48(r31) +/* 802162C4 00213224 C0 3F 00 38 */ lfs f1, 0x38(r31) +/* 802162C8 00213228 C0 1F 00 58 */ lfs f0, 0x58(r31) +/* 802162CC 0021322C D0 21 00 5C */ stfs f1, 0x5c(r1) +/* 802162D0 00213230 D0 41 00 60 */ stfs f2, 0x60(r1) +/* 802162D4 00213234 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 802162D8 00213238 48 0F DF 29 */ bl __ct__9CVector2fFff +/* 802162DC 0021323C C0 21 00 2C */ lfs f1, 0x2c(r1) +/* 802162E0 00213240 38 61 00 24 */ addi r3, r1, 0x24 +/* 802162E4 00213244 C0 01 00 30 */ lfs f0, 0x30(r1) +/* 802162E8 00213248 D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 802162EC 0021324C D0 01 00 40 */ stfs f0, 0x40(r1) +/* 802162F0 00213250 C0 3F 05 14 */ lfs f1, 0x514(r31) +/* 802162F4 00213254 C0 5F 05 18 */ lfs f2, 0x518(r31) +/* 802162F8 00213258 48 0F DF 09 */ bl __ct__9CVector2fFff +/* 802162FC 0021325C C0 21 00 24 */ lfs f1, 0x24(r1) +/* 80216300 00213260 38 61 00 34 */ addi r3, r1, 0x34 +/* 80216304 00213264 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 80216308 00213268 38 81 00 3C */ addi r4, r1, 0x3c +/* 8021630C 0021326C D0 21 00 34 */ stfs f1, 0x34(r1) +/* 80216310 00213270 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 80216314 00213274 48 0F DC B1 */ bl GetAngleDiff__9CVector2fFRC9CVector2fRC9CVector2f +/* 80216318 00213278 88 1F 05 60 */ lbz r0, 0x560(r31) +/* 8021631C 0021327C FF C0 08 90 */ fmr f30, f1 +/* 80216320 00213280 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 80216324 00213284 41 82 00 80 */ beq lbl_802163A4 +/* 80216328 00213288 C0 02 B3 74 */ lfs f0, lbl_805AD094@sda21(r2) +/* 8021632C 0021328C FC 1E 00 40 */ fcmpo cr0, f30, f0 +/* 80216330 00213290 40 80 00 74 */ bge lbl_802163A4 +/* 80216334 00213294 80 1F 05 20 */ lwz r0, 0x520(r31) +/* 80216338 00213298 2C 00 00 09 */ cmpwi r0, 9 +/* 8021633C 0021329C 41 82 00 0C */ beq lbl_80216348 +/* 80216340 002132A0 2C 00 00 0A */ cmpwi r0, 0xa +/* 80216344 002132A4 40 82 00 60 */ bne lbl_802163A4 +lbl_80216348: +/* 80216348 002132A8 88 1F 05 60 */ lbz r0, 0x560(r31) +/* 8021634C 002132AC 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80216350 002132B0 40 82 00 44 */ bne lbl_80216394 +/* 80216354 002132B4 81 5F 00 04 */ lwz r10, 4(r31) +/* 80216358 002132B8 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 8021635C 002132BC C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 80216360 002132C0 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 80216364 002132C4 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 80216368 002132C8 38 61 00 20 */ addi r3, r1, 0x20 +/* 8021636C 002132CC C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 80216370 002132D0 38 A1 00 50 */ addi r5, r1, 0x50 +/* 80216374 002132D4 A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) +/* 80216378 002132D8 38 E0 00 00 */ li r7, 0 +/* 8021637C 002132DC D0 01 00 50 */ stfs f0, 0x50(r1) +/* 80216380 002132E0 39 00 00 00 */ li r8, 0 +/* 80216384 002132E4 D0 21 00 54 */ stfs f1, 0x54(r1) +/* 80216388 002132E8 D0 41 00 58 */ stfs f2, 0x58(r1) +/* 8021638C 002132EC A0 9F 03 56 */ lhz r4, 0x356(r31) +/* 80216390 002132F0 48 0D 3F 21 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +lbl_80216394: +/* 80216394 002132F4 88 1F 05 60 */ lbz r0, 0x560(r31) +/* 80216398 002132F8 38 60 00 00 */ li r3, 0 +/* 8021639C 002132FC 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 802163A0 00213300 98 1F 05 60 */ stb r0, 0x560(r31) +lbl_802163A4: +/* 802163A4 00213304 C0 3F 05 10 */ lfs f1, 0x510(r31) +/* 802163A8 00213308 C0 02 B3 78 */ lfs f0, lbl_805AD098@sda21(r2) +/* 802163AC 0021330C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802163B0 00213310 4C 41 13 82 */ cror 2, 1, 2 +/* 802163B4 00213314 40 82 01 74 */ bne lbl_80216528 +/* 802163B8 00213318 88 1F 05 60 */ lbz r0, 0x560(r31) +/* 802163BC 0021331C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 802163C0 00213320 40 82 01 68 */ bne lbl_80216528 +/* 802163C4 00213324 80 1F 05 20 */ lwz r0, 0x520(r31) +/* 802163C8 00213328 2C 00 00 09 */ cmpwi r0, 9 +/* 802163CC 0021332C 41 82 00 14 */ beq lbl_802163E0 +/* 802163D0 00213330 2C 00 00 0A */ cmpwi r0, 0xa +/* 802163D4 00213334 41 82 00 0C */ beq lbl_802163E0 +/* 802163D8 00213338 2C 00 00 0C */ cmpwi r0, 0xc +/* 802163DC 0021333C 40 82 01 1C */ bne lbl_802164F8 +lbl_802163E0: +/* 802163E0 00213340 FC 20 F8 90 */ fmr f1, f31 +/* 802163E4 00213344 7F E3 FB 78 */ mr r3, r31 +/* 802163E8 00213348 48 00 18 3D */ bl IsInsignificantRotation__16CScriptGunTurretCFf +/* 802163EC 0021334C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 802163F0 00213350 40 82 00 64 */ bne lbl_80216454 +/* 802163F4 00213354 80 1F 05 0C */ lwz r0, 0x50c(r31) +/* 802163F8 00213358 28 00 00 00 */ cmplwi r0, 0 +/* 802163FC 0021335C 40 82 00 58 */ bne lbl_80216454 +/* 80216400 00213360 81 5F 00 04 */ lwz r10, 4(r31) +/* 80216404 00213364 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80216408 00213368 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 8021640C 0021336C 38 C3 66 A0 */ addi r6, r3, skZero3f@l +/* 80216410 00213370 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 80216414 00213374 38 61 00 1C */ addi r3, r1, 0x1c +/* 80216418 00213378 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8021641C 0021337C 38 A1 00 44 */ addi r5, r1, 0x44 +/* 80216420 00213380 A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) +/* 80216424 00213384 38 E0 00 00 */ li r7, 0 +/* 80216428 00213388 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 8021642C 0021338C 39 00 00 01 */ li r8, 1 +/* 80216430 00213390 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 80216434 00213394 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 80216438 00213398 A0 9F 03 50 */ lhz r4, 0x350(r31) +/* 8021643C 0021339C 48 0D 3E 75 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +/* 80216440 002133A0 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 80216444 002133A4 C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 80216448 002133A8 90 1F 05 0C */ stw r0, 0x50c(r31) +/* 8021644C 002133AC D0 1F 05 10 */ stfs f0, 0x510(r31) +/* 80216450 002133B0 48 00 00 38 */ b lbl_80216488 +lbl_80216454: +/* 80216454 002133B4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80216458 002133B8 41 82 00 30 */ beq lbl_80216488 +/* 8021645C 002133BC 80 1F 05 0C */ lwz r0, 0x50c(r31) +/* 80216460 002133C0 28 00 00 00 */ cmplwi r0, 0 +/* 80216464 002133C4 41 82 00 24 */ beq lbl_80216488 +/* 80216468 002133C8 80 1F 05 0C */ lwz r0, 0x50c(r31) +/* 8021646C 002133CC 38 61 00 18 */ addi r3, r1, 0x18 +/* 80216470 002133D0 90 01 00 18 */ stw r0, 0x18(r1) +/* 80216474 002133D4 48 0D 3A 11 */ bl RemoveEmitter__11CSfxManagerFRC10CSfxHandle +/* 80216478 002133D8 38 00 00 00 */ li r0, 0 +/* 8021647C 002133DC C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 80216480 002133E0 90 1F 05 0C */ stw r0, 0x50c(r31) +/* 80216484 002133E4 D0 1F 05 10 */ stfs f0, 0x510(r31) +lbl_80216488: +/* 80216488 002133E8 80 1F 05 0C */ lwz r0, 0x50c(r31) +/* 8021648C 002133EC 28 00 00 00 */ cmplwi r0, 0 +/* 80216490 002133F0 41 82 00 C8 */ beq lbl_80216558 +/* 80216494 002133F4 C0 3F 02 FC */ lfs f1, 0x2fc(r31) +/* 80216498 002133F8 C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 8021649C 002133FC EC 5F 00 72 */ fmuls f2, f31, f1 +/* 802164A0 00213400 C0 22 B3 7C */ lfs f1, lbl_805AD09C@sda21(r2) +/* 802164A4 00213404 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 802164A8 00213408 40 81 00 08 */ ble lbl_802164B0 +/* 802164AC 0021340C EC 1E 10 24 */ fdivs f0, f30, f2 +lbl_802164B0: +/* 802164B0 00213410 EC 21 00 32 */ fmuls f1, f1, f0 +/* 802164B4 00213414 C0 0D 94 F8 */ lfs f0, lbl_805A80B8@sda21(r13) +/* 802164B8 00213418 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 802164BC 0021341C D0 21 00 14 */ stfs f1, 0x14(r1) +/* 802164C0 00213420 40 80 00 0C */ bge lbl_802164CC +/* 802164C4 00213424 38 6D 94 F8 */ addi r3, r13, lbl_805A80B8@sda21 +/* 802164C8 00213428 48 00 00 08 */ b lbl_802164D0 +lbl_802164CC: +/* 802164CC 0021342C 38 61 00 14 */ addi r3, r1, 0x14 +lbl_802164D0: +/* 802164D0 00213430 C0 03 00 00 */ lfs f0, 0(r3) +/* 802164D4 00213434 38 61 00 10 */ addi r3, r1, 0x10 +/* 802164D8 00213438 80 1F 05 0C */ lwz r0, 0x50c(r31) +/* 802164DC 0021343C FC 00 00 1E */ fctiwz f0, f0 +/* 802164E0 00213440 90 01 00 10 */ stw r0, 0x10(r1) +/* 802164E4 00213444 D8 01 00 68 */ stfd f0, 0x68(r1) +/* 802164E8 00213448 80 81 00 6C */ lwz r4, 0x6c(r1) +/* 802164EC 0021344C 38 84 20 00 */ addi r4, r4, 0x2000 +/* 802164F0 00213450 48 0D 29 BD */ bl PitchBend__11CSfxManagerF10CSfxHandlei +/* 802164F4 00213454 48 00 00 64 */ b lbl_80216558 +lbl_802164F8: +/* 802164F8 00213458 80 1F 05 0C */ lwz r0, 0x50c(r31) +/* 802164FC 0021345C 28 00 00 00 */ cmplwi r0, 0 +/* 80216500 00213460 41 82 00 58 */ beq lbl_80216558 +/* 80216504 00213464 80 1F 05 0C */ lwz r0, 0x50c(r31) +/* 80216508 00213468 38 61 00 0C */ addi r3, r1, 0xc +/* 8021650C 0021346C 90 01 00 0C */ stw r0, 0xc(r1) +/* 80216510 00213470 48 0D 39 75 */ bl RemoveEmitter__11CSfxManagerFRC10CSfxHandle +/* 80216514 00213474 38 00 00 00 */ li r0, 0 +/* 80216518 00213478 C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 8021651C 0021347C 90 1F 05 0C */ stw r0, 0x50c(r31) +/* 80216520 00213480 D0 1F 05 10 */ stfs f0, 0x510(r31) +/* 80216524 00213484 48 00 00 34 */ b lbl_80216558 +lbl_80216528: +/* 80216528 00213488 88 1F 05 60 */ lbz r0, 0x560(r31) +/* 8021652C 0021348C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80216530 00213490 41 82 00 28 */ beq lbl_80216558 +/* 80216534 00213494 80 1F 05 0C */ lwz r0, 0x50c(r31) +/* 80216538 00213498 28 00 00 00 */ cmplwi r0, 0 +/* 8021653C 0021349C 41 82 00 1C */ beq lbl_80216558 +/* 80216540 002134A0 80 1F 05 0C */ lwz r0, 0x50c(r31) +/* 80216544 002134A4 38 61 00 08 */ addi r3, r1, 8 +/* 80216548 002134A8 90 01 00 08 */ stw r0, 8(r1) +/* 8021654C 002134AC 48 0D 39 39 */ bl RemoveEmitter__11CSfxManagerFRC10CSfxHandle +/* 80216550 002134B0 38 00 00 00 */ li r0, 0 +/* 80216554 002134B4 90 1F 05 0C */ stw r0, 0x50c(r31) +lbl_80216558: +/* 80216558 002134B8 C0 5F 00 58 */ lfs f2, 0x58(r31) +/* 8021655C 002134BC C0 3F 00 48 */ lfs f1, 0x48(r31) +/* 80216560 002134C0 C0 1F 00 38 */ lfs f0, 0x38(r31) +/* 80216564 002134C4 D0 1F 05 14 */ stfs f0, 0x514(r31) +/* 80216568 002134C8 D0 3F 05 18 */ stfs f1, 0x518(r31) +/* 8021656C 002134CC D0 5F 05 1C */ stfs f2, 0x51c(r31) +/* 80216570 002134D0 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 +/* 80216574 002134D4 CB E1 00 90 */ lfd f31, 0x90(r1) +/* 80216578 002134D8 E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 +/* 8021657C 002134DC CB C1 00 80 */ lfd f30, 0x80(r1) +/* 80216580 002134E0 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 80216584 002134E4 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 80216588 002134E8 7C 08 03 A6 */ mtlr r0 +/* 8021658C 002134EC 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 80216590 002134F0 4E 80 00 20 */ blr + +.global UpdateBurstType__16CScriptGunTurretFR13CStateManager +UpdateBurstType__16CScriptGunTurretFR13CStateManager: +/* 80216594 002134F4 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80216598 002134F8 7C 08 02 A6 */ mflr r0 +/* 8021659C 002134FC 90 01 00 34 */ stw r0, 0x34(r1) +/* 802165A0 00213500 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 802165A4 00213504 7C 9F 23 78 */ mr r31, r4 +/* 802165A8 00213508 93 C1 00 28 */ stw r30, 0x28(r1) +/* 802165AC 0021350C 7C 7E 1B 78 */ mr r30, r3 +/* 802165B0 00213510 93 A1 00 24 */ stw r29, 0x24(r1) +/* 802165B4 00213514 88 03 05 60 */ lbz r0, 0x560(r3) +/* 802165B8 00213518 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 802165BC 0021351C 41 82 00 D4 */ beq lbl_80216690 +/* 802165C0 00213520 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 802165C4 00213524 38 00 00 01 */ li r0, 1 +/* 802165C8 00213528 80 64 02 F8 */ lwz r3, 0x2f8(r4) +/* 802165CC 0021352C 2C 03 00 01 */ cmpwi r3, 1 +/* 802165D0 00213530 41 82 00 50 */ beq lbl_80216620 +/* 802165D4 00213534 C0 84 00 48 */ lfs f4, 0x48(r4) +/* 802165D8 00213538 C0 DE 00 48 */ lfs f6, 0x48(r30) +/* 802165DC 0021353C C0 64 00 38 */ lfs f3, 0x38(r4) +/* 802165E0 00213540 C0 5E 00 38 */ lfs f2, 0x38(r30) +/* 802165E4 00213544 EC 06 01 32 */ fmuls f0, f6, f4 +/* 802165E8 00213548 C0 A4 00 58 */ lfs f5, 0x58(r4) +/* 802165EC 0021354C C0 FE 00 58 */ lfs f7, 0x58(r30) +/* 802165F0 00213550 EC 22 00 FA */ fmadds f1, f2, f3, f0 +/* 802165F4 00213554 C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 802165F8 00213558 D0 61 00 14 */ stfs f3, 0x14(r1) +/* 802165FC 0021355C EC 27 09 7A */ fmadds f1, f7, f5, f1 +/* 80216600 00213560 D0 81 00 18 */ stfs f4, 0x18(r1) +/* 80216604 00213564 D0 A1 00 1C */ stfs f5, 0x1c(r1) +/* 80216608 00213568 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8021660C 0021356C D0 41 00 08 */ stfs f2, 8(r1) +/* 80216610 00213570 D0 C1 00 0C */ stfs f6, 0xc(r1) +/* 80216614 00213574 D0 E1 00 10 */ stfs f7, 0x10(r1) +/* 80216618 00213578 41 80 00 08 */ blt lbl_80216620 +/* 8021661C 0021357C 38 00 00 00 */ li r0, 0 +lbl_80216620: +/* 80216620 00213580 54 05 06 3E */ clrlwi r5, r0, 0x18 +/* 80216624 00213584 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 80216628 00213588 7C 85 00 D0 */ neg r4, r5 +/* 8021662C 0021358C 38 00 00 03 */ li r0, 3 +/* 80216630 00213590 7C 85 2B 78 */ or r5, r4, r5 +/* 80216634 00213594 38 80 00 00 */ li r4, 0 +/* 80216638 00213598 7C A6 FE 70 */ srawi r6, r5, 0x1f +/* 8021663C 0021359C 38 A0 00 03 */ li r5, 3 +/* 80216640 002135A0 7C 1D 30 78 */ andc r29, r0, r6 +/* 80216644 002135A4 48 0F BF 51 */ bl Range__9CRandom16Fii +/* 80216648 002135A8 38 63 00 02 */ addi r3, r3, 2 +/* 8021664C 002135AC 2C 03 00 02 */ cmpwi r3, 2 +/* 80216650 002135B0 40 81 00 10 */ ble lbl_80216660 +/* 80216654 002135B4 80 1E 03 6C */ lwz r0, 0x36c(r30) +/* 80216658 002135B8 2C 00 00 03 */ cmpwi r0, 3 +/* 8021665C 002135BC 40 80 00 0C */ bge lbl_80216668 +lbl_80216660: +/* 80216660 002135C0 38 00 00 00 */ li r0, 0 +/* 80216664 002135C4 48 00 00 20 */ b lbl_80216684 +lbl_80216668: +/* 80216668 002135C8 2C 03 00 05 */ cmpwi r3, 5 +/* 8021666C 002135CC 41 80 00 14 */ blt lbl_80216680 +/* 80216670 002135D0 2C 00 00 03 */ cmpwi r0, 3 +/* 80216674 002135D4 40 81 00 0C */ ble lbl_80216680 +/* 80216678 002135D8 38 00 00 02 */ li r0, 2 +/* 8021667C 002135DC 48 00 00 08 */ b lbl_80216684 +lbl_80216680: +/* 80216680 002135E0 38 00 00 01 */ li r0, 1 +lbl_80216684: +/* 80216684 002135E4 7C 00 EA 14 */ add r0, r0, r29 +/* 80216688 002135E8 90 1E 03 A4 */ stw r0, 0x3a4(r30) +/* 8021668C 002135EC 48 00 00 18 */ b lbl_802166A4 +lbl_80216690: +/* 80216690 002135F0 80 7E 03 64 */ lwz r3, 0x364(r30) +/* 80216694 002135F4 38 03 FF FE */ addi r0, r3, -2 +/* 80216698 002135F8 90 1E 03 A4 */ stw r0, 0x3a4(r30) +/* 8021669C 002135FC 80 1E 03 68 */ lwz r0, 0x368(r30) +/* 802166A0 00213600 90 1E 03 B0 */ stw r0, 0x3b0(r30) +lbl_802166A4: +/* 802166A4 00213604 7F E4 FB 78 */ mr r4, r31 +/* 802166A8 00213608 38 7E 03 A4 */ addi r3, r30, 0x3a4 +/* 802166AC 0021360C 4B F9 6D 79 */ bl Start__10CBurstFireFR13CStateManager +/* 802166B0 00213610 88 1E 05 60 */ lbz r0, 0x560(r30) +/* 802166B4 00213614 38 60 00 00 */ li r3, 0 +/* 802166B8 00213618 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 802166BC 0021361C 38 60 00 01 */ li r3, 1 +/* 802166C0 00213620 98 1E 05 60 */ stb r0, 0x560(r30) +/* 802166C4 00213624 88 1E 05 60 */ lbz r0, 0x560(r30) +/* 802166C8 00213628 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 802166CC 0021362C 98 1E 05 60 */ stb r0, 0x560(r30) +/* 802166D0 00213630 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 802166D4 00213634 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 802166D8 00213638 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 802166DC 0021363C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 802166E0 00213640 7C 08 03 A6 */ mtlr r0 +/* 802166E4 00213644 38 21 00 30 */ addi r1, r1, 0x30 +/* 802166E8 00213648 4E 80 00 20 */ blr + +.global UpdateGunParticles__16CScriptGunTurretFfR13CStateManager +UpdateGunParticles__16CScriptGunTurretFfR13CStateManager: +/* 802166EC 0021364C 94 21 FC 90 */ stwu r1, -0x370(r1) +/* 802166F0 00213650 7C 08 02 A6 */ mflr r0 +/* 802166F4 00213654 90 01 03 74 */ stw r0, 0x374(r1) +/* 802166F8 00213658 DB E1 03 60 */ stfd f31, 0x360(r1) +/* 802166FC 0021365C F3 E1 03 68 */ psq_st f31, 872(r1), 0, qr0 +/* 80216700 00213660 93 E1 03 5C */ stw r31, 0x35c(r1) +/* 80216704 00213664 93 C1 03 58 */ stw r30, 0x358(r1) +/* 80216708 00213668 93 A1 03 54 */ stw r29, 0x354(r1) +/* 8021670C 0021366C 93 81 03 50 */ stw r28, 0x350(r1) +/* 80216710 00213670 7C 7E 1B 78 */ mr r30, r3 +/* 80216714 00213674 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80216718 00213678 A0 63 04 98 */ lhz r3, 0x498(r3) +/* 8021671C 0021367C FF E0 08 90 */ fmr f31, f1 +/* 80216720 00213680 3B E0 00 00 */ li r31, 0 +/* 80216724 00213684 7C 03 00 40 */ cmplw r3, r0 +/* 80216728 00213688 41 82 00 28 */ beq lbl_80216750 +/* 8021672C 0021368C A0 1E 04 98 */ lhz r0, 0x498(r30) +/* 80216730 00213690 7C 83 23 78 */ mr r3, r4 +/* 80216734 00213694 38 81 00 08 */ addi r4, r1, 8 +/* 80216738 00213698 B0 01 00 08 */ sth r0, 8(r1) +/* 8021673C 0021369C 4B E3 5E 39 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80216740 002136A0 7C 64 1B 78 */ mr r4, r3 +/* 80216744 002136A4 38 61 00 0C */ addi r3, r1, 0xc +/* 80216748 002136A8 4B E9 73 3D */ bl "__ct__24TCastToPtr<10CGameLight>FP7CEntity" +/* 8021674C 002136AC 83 E3 00 04 */ lwz r31, 4(r3) +lbl_80216750: +/* 80216750 002136B0 88 1E 05 60 */ lbz r0, 0x560(r30) +/* 80216754 002136B4 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80216758 002136B8 40 82 08 50 */ bne lbl_80216FA8 +/* 8021675C 002136BC 80 82 B3 58 */ lwz r4, lbl_805AD078@sda21(r2) +/* 80216760 002136C0 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 80216764 002136C4 4B DE E5 55 */ bl string_l__4rstlFPCc +/* 80216768 002136C8 7F C4 F3 78 */ mr r4, r30 +/* 8021676C 002136CC 38 61 02 20 */ addi r3, r1, 0x220 +/* 80216770 002136D0 38 A1 00 A8 */ addi r5, r1, 0xa8 +/* 80216774 002136D4 4B E3 C7 8D */ bl "GetLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80216778 002136D8 38 61 02 80 */ addi r3, r1, 0x280 +/* 8021677C 002136DC 38 81 02 20 */ addi r4, r1, 0x220 +/* 80216780 002136E0 48 0F C3 F5 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80216784 002136E4 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 80216788 002136E8 48 12 73 59 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8021678C 002136EC C0 41 02 8C */ lfs f2, 0x28c(r1) +/* 80216790 002136F0 38 61 00 9C */ addi r3, r1, 0x9c +/* 80216794 002136F4 C0 21 02 9C */ lfs f1, 0x29c(r1) +/* 80216798 002136F8 38 9E 00 34 */ addi r4, r30, 0x34 +/* 8021679C 002136FC C0 01 02 AC */ lfs f0, 0x2ac(r1) +/* 802167A0 00213700 38 A1 00 90 */ addi r5, r1, 0x90 +/* 802167A4 00213704 D0 41 00 90 */ stfs f2, 0x90(r1) +/* 802167A8 00213708 D0 21 00 94 */ stfs f1, 0x94(r1) +/* 802167AC 0021370C D0 01 00 98 */ stfs f0, 0x98(r1) +/* 802167B0 00213710 48 0F C2 D1 */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 802167B4 00213714 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 802167B8 00213718 28 1F 00 00 */ cmplwi r31, 0 +/* 802167BC 0021371C C0 01 00 A0 */ lfs f0, 0xa0(r1) +/* 802167C0 00213720 C0 7E 00 60 */ lfs f3, 0x60(r30) +/* 802167C4 00213724 C0 41 00 A4 */ lfs f2, 0xa4(r1) +/* 802167C8 00213728 EC 81 00 2A */ fadds f4, f1, f0 +/* 802167CC 0021372C C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 802167D0 00213730 C0 01 00 9C */ lfs f0, 0x9c(r1) +/* 802167D4 00213734 EC 43 10 2A */ fadds f2, f3, f2 +/* 802167D8 00213738 D0 81 00 C8 */ stfs f4, 0xc8(r1) +/* 802167DC 0021373C EC 01 00 2A */ fadds f0, f1, f0 +/* 802167E0 00213740 D0 41 00 CC */ stfs f2, 0xcc(r1) +/* 802167E4 00213744 D0 01 00 C4 */ stfs f0, 0xc4(r1) +/* 802167E8 00213748 41 82 00 1C */ beq lbl_80216804 +/* 802167EC 0021374C 7F E3 FB 78 */ mr r3, r31 +/* 802167F0 00213750 38 80 00 01 */ li r4, 1 +/* 802167F4 00213754 81 9F 00 00 */ lwz r12, 0(r31) +/* 802167F8 00213758 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 802167FC 0021375C 7D 89 03 A6 */ mtctr r12 +/* 80216800 00213760 4E 80 04 21 */ bctrl +lbl_80216804: +/* 80216804 00213764 80 1E 05 20 */ lwz r0, 0x520(r30) +/* 80216808 00213768 2C 00 00 06 */ cmpwi r0, 6 +/* 8021680C 0021376C 41 82 04 38 */ beq lbl_80216C44 +/* 80216810 00213770 40 80 00 1C */ bge lbl_8021682C +/* 80216814 00213774 2C 00 00 00 */ cmpwi r0, 0 +/* 80216818 00213778 41 82 06 C4 */ beq lbl_80216EDC +/* 8021681C 0021377C 41 80 06 C0 */ blt lbl_80216EDC +/* 80216820 00213780 2C 00 00 05 */ cmpwi r0, 5 +/* 80216824 00213784 40 80 01 A0 */ bge lbl_802169C4 +/* 80216828 00213788 48 00 00 18 */ b lbl_80216840 +lbl_8021682C: +/* 8021682C 0021378C 2C 00 00 0D */ cmpwi r0, 0xd +/* 80216830 00213790 40 80 06 AC */ bge lbl_80216EDC +/* 80216834 00213794 2C 00 00 09 */ cmpwi r0, 9 +/* 80216838 00213798 40 80 04 0C */ bge lbl_80216C44 +/* 8021683C 0021379C 48 00 02 C8 */ b lbl_80216B04 +lbl_80216840: +/* 80216840 002137A0 80 7E 04 6C */ lwz r3, 0x46c(r30) +/* 80216844 002137A4 38 80 00 00 */ li r4, 0 +/* 80216848 002137A8 81 83 00 00 */ lwz r12, 0(r3) +/* 8021684C 002137AC 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80216850 002137B0 7D 89 03 A6 */ mtctr r12 +/* 80216854 002137B4 4E 80 04 21 */ bctrl +/* 80216858 002137B8 80 7E 04 74 */ lwz r3, 0x474(r30) +/* 8021685C 002137BC 38 80 00 01 */ li r4, 1 +/* 80216860 002137C0 81 83 00 00 */ lwz r12, 0(r3) +/* 80216864 002137C4 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80216868 002137C8 7D 89 03 A6 */ mtctr r12 +/* 8021686C 002137CC 4E 80 04 21 */ bctrl +/* 80216870 002137D0 80 7E 04 7C */ lwz r3, 0x47c(r30) +/* 80216874 002137D4 38 80 00 00 */ li r4, 0 +/* 80216878 002137D8 81 83 00 00 */ lwz r12, 0(r3) +/* 8021687C 002137DC 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80216880 002137E0 7D 89 03 A6 */ mtctr r12 +/* 80216884 002137E4 4E 80 04 21 */ bctrl +/* 80216888 002137E8 80 7E 04 84 */ lwz r3, 0x484(r30) +/* 8021688C 002137EC 38 80 00 00 */ li r4, 0 +/* 80216890 002137F0 81 83 00 00 */ lwz r12, 0(r3) +/* 80216894 002137F4 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80216898 002137F8 7D 89 03 A6 */ mtctr r12 +/* 8021689C 002137FC 4E 80 04 21 */ bctrl +/* 802168A0 00213800 80 7E 04 8C */ lwz r3, 0x48c(r30) +/* 802168A4 00213804 38 80 00 00 */ li r4, 0 +/* 802168A8 00213808 81 83 00 00 */ lwz r12, 0(r3) +/* 802168AC 0021380C 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 802168B0 00213810 7D 89 03 A6 */ mtctr r12 +/* 802168B4 00213814 4E 80 04 21 */ bctrl +/* 802168B8 00213818 80 7E 04 94 */ lwz r3, 0x494(r30) +/* 802168BC 0021381C 38 80 00 00 */ li r4, 0 +/* 802168C0 00213820 81 83 00 00 */ lwz r12, 0(r3) +/* 802168C4 00213824 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 802168C8 00213828 7D 89 03 A6 */ mtctr r12 +/* 802168CC 0021382C 4E 80 04 21 */ bctrl +/* 802168D0 00213830 83 BE 04 74 */ lwz r29, 0x474(r30) +/* 802168D4 00213834 38 61 01 F0 */ addi r3, r1, 0x1f0 +/* 802168D8 00213838 38 9E 00 34 */ addi r4, r30, 0x34 +/* 802168DC 0021383C 48 0F C3 65 */ bl GetRotation__12CTransform4fCFv +/* 802168E0 00213840 7F A3 EB 78 */ mr r3, r29 +/* 802168E4 00213844 38 81 01 F0 */ addi r4, r1, 0x1f0 +/* 802168E8 00213848 81 9D 00 00 */ lwz r12, 0(r29) +/* 802168EC 0021384C 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 802168F0 00213850 7D 89 03 A6 */ mtctr r12 +/* 802168F4 00213854 4E 80 04 21 */ bctrl +/* 802168F8 00213858 80 7E 04 74 */ lwz r3, 0x474(r30) +/* 802168FC 0021385C 38 81 00 C4 */ addi r4, r1, 0xc4 +/* 80216900 00213860 81 83 00 00 */ lwz r12, 0(r3) +/* 80216904 00213864 81 8C 00 20 */ lwz r12, 0x20(r12) +/* 80216908 00213868 7D 89 03 A6 */ mtctr r12 +/* 8021690C 0021386C 4E 80 04 21 */ bctrl +/* 80216910 00213870 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 80216914 00213874 38 81 00 84 */ addi r4, r1, 0x84 +/* 80216918 00213878 C0 03 00 00 */ lfs f0, 0(r3) +/* 8021691C 0021387C D0 01 00 84 */ stfs f0, 0x84(r1) +/* 80216920 00213880 C0 03 00 04 */ lfs f0, 4(r3) +/* 80216924 00213884 D0 01 00 88 */ stfs f0, 0x88(r1) +/* 80216928 00213888 C0 03 00 08 */ lfs f0, 8(r3) +/* 8021692C 0021388C D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 80216930 00213890 80 7E 04 74 */ lwz r3, 0x474(r30) +/* 80216934 00213894 81 83 00 00 */ lwz r12, 0(r3) +/* 80216938 00213898 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 8021693C 0021389C 7D 89 03 A6 */ mtctr r12 +/* 80216940 002138A0 4E 80 04 21 */ bctrl +/* 80216944 002138A4 80 7E 04 74 */ lwz r3, 0x474(r30) +/* 80216948 002138A8 FC 20 F8 90 */ fmr f1, f31 +/* 8021694C 002138AC 81 83 00 00 */ lwz r12, 0(r3) +/* 80216950 002138B0 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80216954 002138B4 7D 89 03 A6 */ mtctr r12 +/* 80216958 002138B8 4E 80 04 21 */ bctrl +/* 8021695C 002138BC 28 1F 00 00 */ cmplwi r31, 0 +/* 80216960 002138C0 41 82 07 9C */ beq lbl_802170FC +/* 80216964 002138C4 80 7E 04 74 */ lwz r3, 0x474(r30) +/* 80216968 002138C8 81 83 00 00 */ lwz r12, 0(r3) +/* 8021696C 002138CC 81 8C 00 64 */ lwz r12, 0x64(r12) +/* 80216970 002138D0 7D 89 03 A6 */ mtctr r12 +/* 80216974 002138D4 4E 80 04 21 */ bctrl +/* 80216978 002138D8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8021697C 002138DC 41 82 00 2C */ beq lbl_802169A8 +/* 80216980 002138E0 80 9E 04 74 */ lwz r4, 0x474(r30) +/* 80216984 002138E4 38 61 03 00 */ addi r3, r1, 0x300 +/* 80216988 002138E8 81 84 00 00 */ lwz r12, 0(r4) +/* 8021698C 002138EC 81 8C 00 68 */ lwz r12, 0x68(r12) +/* 80216990 002138F0 7D 89 03 A6 */ mtctr r12 +/* 80216994 002138F4 4E 80 04 21 */ bctrl +/* 80216998 002138F8 7F E3 FB 78 */ mr r3, r31 +/* 8021699C 002138FC 38 81 03 00 */ addi r4, r1, 0x300 +/* 802169A0 00213900 4B E9 ED A5 */ bl SetLight__10CGameLightFRC6CLight +/* 802169A4 00213904 48 00 07 58 */ b lbl_802170FC +lbl_802169A8: +/* 802169A8 00213908 7F E3 FB 78 */ mr r3, r31 +/* 802169AC 0021390C 38 80 00 00 */ li r4, 0 +/* 802169B0 00213910 81 9F 00 00 */ lwz r12, 0(r31) +/* 802169B4 00213914 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 802169B8 00213918 7D 89 03 A6 */ mtctr r12 +/* 802169BC 0021391C 4E 80 04 21 */ bctrl +/* 802169C0 00213920 48 00 07 3C */ b lbl_802170FC +lbl_802169C4: +/* 802169C4 00213924 80 7E 04 6C */ lwz r3, 0x46c(r30) +/* 802169C8 00213928 38 80 00 01 */ li r4, 1 +/* 802169CC 0021392C 81 83 00 00 */ lwz r12, 0(r3) +/* 802169D0 00213930 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 802169D4 00213934 7D 89 03 A6 */ mtctr r12 +/* 802169D8 00213938 4E 80 04 21 */ bctrl +/* 802169DC 0021393C 80 7E 04 74 */ lwz r3, 0x474(r30) +/* 802169E0 00213940 38 80 00 00 */ li r4, 0 +/* 802169E4 00213944 81 83 00 00 */ lwz r12, 0(r3) +/* 802169E8 00213948 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 802169EC 0021394C 7D 89 03 A6 */ mtctr r12 +/* 802169F0 00213950 4E 80 04 21 */ bctrl +/* 802169F4 00213954 80 7E 04 7C */ lwz r3, 0x47c(r30) +/* 802169F8 00213958 38 80 00 00 */ li r4, 0 +/* 802169FC 0021395C 81 83 00 00 */ lwz r12, 0(r3) +/* 80216A00 00213960 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80216A04 00213964 7D 89 03 A6 */ mtctr r12 +/* 80216A08 00213968 4E 80 04 21 */ bctrl +/* 80216A0C 0021396C 80 7E 04 84 */ lwz r3, 0x484(r30) +/* 80216A10 00213970 38 80 00 00 */ li r4, 0 +/* 80216A14 00213974 81 83 00 00 */ lwz r12, 0(r3) +/* 80216A18 00213978 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80216A1C 0021397C 7D 89 03 A6 */ mtctr r12 +/* 80216A20 00213980 4E 80 04 21 */ bctrl +/* 80216A24 00213984 80 7E 04 8C */ lwz r3, 0x48c(r30) +/* 80216A28 00213988 38 80 00 00 */ li r4, 0 +/* 80216A2C 0021398C 81 83 00 00 */ lwz r12, 0(r3) +/* 80216A30 00213990 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80216A34 00213994 7D 89 03 A6 */ mtctr r12 +/* 80216A38 00213998 4E 80 04 21 */ bctrl +/* 80216A3C 0021399C 80 7E 04 94 */ lwz r3, 0x494(r30) +/* 80216A40 002139A0 38 80 00 00 */ li r4, 0 +/* 80216A44 002139A4 81 83 00 00 */ lwz r12, 0(r3) +/* 80216A48 002139A8 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80216A4C 002139AC 7D 89 03 A6 */ mtctr r12 +/* 80216A50 002139B0 4E 80 04 21 */ bctrl +/* 80216A54 002139B4 83 BE 04 6C */ lwz r29, 0x46c(r30) +/* 80216A58 002139B8 38 61 01 C0 */ addi r3, r1, 0x1c0 +/* 80216A5C 002139BC 38 9E 00 34 */ addi r4, r30, 0x34 +/* 80216A60 002139C0 48 0F C1 E1 */ bl GetRotation__12CTransform4fCFv +/* 80216A64 002139C4 7F A3 EB 78 */ mr r3, r29 +/* 80216A68 002139C8 38 81 01 C0 */ addi r4, r1, 0x1c0 +/* 80216A6C 002139CC 81 9D 00 00 */ lwz r12, 0(r29) +/* 80216A70 002139D0 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 80216A74 002139D4 7D 89 03 A6 */ mtctr r12 +/* 80216A78 002139D8 4E 80 04 21 */ bctrl +/* 80216A7C 002139DC 80 7E 04 6C */ lwz r3, 0x46c(r30) +/* 80216A80 002139E0 38 81 00 C4 */ addi r4, r1, 0xc4 +/* 80216A84 002139E4 81 83 00 00 */ lwz r12, 0(r3) +/* 80216A88 002139E8 81 8C 00 20 */ lwz r12, 0x20(r12) +/* 80216A8C 002139EC 7D 89 03 A6 */ mtctr r12 +/* 80216A90 002139F0 4E 80 04 21 */ bctrl +/* 80216A94 002139F4 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 80216A98 002139F8 38 81 00 78 */ addi r4, r1, 0x78 +/* 80216A9C 002139FC C0 03 00 00 */ lfs f0, 0(r3) +/* 80216AA0 00213A00 D0 01 00 78 */ stfs f0, 0x78(r1) +/* 80216AA4 00213A04 C0 03 00 04 */ lfs f0, 4(r3) +/* 80216AA8 00213A08 D0 01 00 7C */ stfs f0, 0x7c(r1) +/* 80216AAC 00213A0C C0 03 00 08 */ lfs f0, 8(r3) +/* 80216AB0 00213A10 D0 01 00 80 */ stfs f0, 0x80(r1) +/* 80216AB4 00213A14 80 7E 04 6C */ lwz r3, 0x46c(r30) +/* 80216AB8 00213A18 81 83 00 00 */ lwz r12, 0(r3) +/* 80216ABC 00213A1C 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 80216AC0 00213A20 7D 89 03 A6 */ mtctr r12 +/* 80216AC4 00213A24 4E 80 04 21 */ bctrl +/* 80216AC8 00213A28 80 7E 04 6C */ lwz r3, 0x46c(r30) +/* 80216ACC 00213A2C FC 20 F8 90 */ fmr f1, f31 +/* 80216AD0 00213A30 81 83 00 00 */ lwz r12, 0(r3) +/* 80216AD4 00213A34 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80216AD8 00213A38 7D 89 03 A6 */ mtctr r12 +/* 80216ADC 00213A3C 4E 80 04 21 */ bctrl +/* 80216AE0 00213A40 28 1F 00 00 */ cmplwi r31, 0 +/* 80216AE4 00213A44 41 82 06 18 */ beq lbl_802170FC +/* 80216AE8 00213A48 7F E3 FB 78 */ mr r3, r31 +/* 80216AEC 00213A4C 38 80 00 00 */ li r4, 0 +/* 80216AF0 00213A50 81 9F 00 00 */ lwz r12, 0(r31) +/* 80216AF4 00213A54 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80216AF8 00213A58 7D 89 03 A6 */ mtctr r12 +/* 80216AFC 00213A5C 4E 80 04 21 */ bctrl +/* 80216B00 00213A60 48 00 05 FC */ b lbl_802170FC +lbl_80216B04: +/* 80216B04 00213A64 80 7E 04 6C */ lwz r3, 0x46c(r30) +/* 80216B08 00213A68 38 80 00 00 */ li r4, 0 +/* 80216B0C 00213A6C 81 83 00 00 */ lwz r12, 0(r3) +/* 80216B10 00213A70 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80216B14 00213A74 7D 89 03 A6 */ mtctr r12 +/* 80216B18 00213A78 4E 80 04 21 */ bctrl +/* 80216B1C 00213A7C 80 7E 04 74 */ lwz r3, 0x474(r30) +/* 80216B20 00213A80 38 80 00 00 */ li r4, 0 +/* 80216B24 00213A84 81 83 00 00 */ lwz r12, 0(r3) +/* 80216B28 00213A88 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80216B2C 00213A8C 7D 89 03 A6 */ mtctr r12 +/* 80216B30 00213A90 4E 80 04 21 */ bctrl +/* 80216B34 00213A94 80 7E 04 7C */ lwz r3, 0x47c(r30) +/* 80216B38 00213A98 38 80 00 00 */ li r4, 0 +/* 80216B3C 00213A9C 81 83 00 00 */ lwz r12, 0(r3) +/* 80216B40 00213AA0 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80216B44 00213AA4 7D 89 03 A6 */ mtctr r12 +/* 80216B48 00213AA8 4E 80 04 21 */ bctrl +/* 80216B4C 00213AAC 80 7E 04 84 */ lwz r3, 0x484(r30) +/* 80216B50 00213AB0 38 80 00 00 */ li r4, 0 +/* 80216B54 00213AB4 81 83 00 00 */ lwz r12, 0(r3) +/* 80216B58 00213AB8 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80216B5C 00213ABC 7D 89 03 A6 */ mtctr r12 +/* 80216B60 00213AC0 4E 80 04 21 */ bctrl +/* 80216B64 00213AC4 80 7E 04 8C */ lwz r3, 0x48c(r30) +/* 80216B68 00213AC8 38 80 00 00 */ li r4, 0 +/* 80216B6C 00213ACC 81 83 00 00 */ lwz r12, 0(r3) +/* 80216B70 00213AD0 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80216B74 00213AD4 7D 89 03 A6 */ mtctr r12 +/* 80216B78 00213AD8 4E 80 04 21 */ bctrl +/* 80216B7C 00213ADC 80 7E 04 94 */ lwz r3, 0x494(r30) +/* 80216B80 00213AE0 38 80 00 01 */ li r4, 1 +/* 80216B84 00213AE4 81 83 00 00 */ lwz r12, 0(r3) +/* 80216B88 00213AE8 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80216B8C 00213AEC 7D 89 03 A6 */ mtctr r12 +/* 80216B90 00213AF0 4E 80 04 21 */ bctrl +/* 80216B94 00213AF4 83 BE 04 94 */ lwz r29, 0x494(r30) +/* 80216B98 00213AF8 38 61 01 90 */ addi r3, r1, 0x190 +/* 80216B9C 00213AFC 38 9E 00 34 */ addi r4, r30, 0x34 +/* 80216BA0 00213B00 48 0F C0 A1 */ bl GetRotation__12CTransform4fCFv +/* 80216BA4 00213B04 7F A3 EB 78 */ mr r3, r29 +/* 80216BA8 00213B08 38 81 01 90 */ addi r4, r1, 0x190 +/* 80216BAC 00213B0C 81 9D 00 00 */ lwz r12, 0(r29) +/* 80216BB0 00213B10 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 80216BB4 00213B14 7D 89 03 A6 */ mtctr r12 +/* 80216BB8 00213B18 4E 80 04 21 */ bctrl +/* 80216BBC 00213B1C 80 7E 04 94 */ lwz r3, 0x494(r30) +/* 80216BC0 00213B20 38 81 00 C4 */ addi r4, r1, 0xc4 +/* 80216BC4 00213B24 81 83 00 00 */ lwz r12, 0(r3) +/* 80216BC8 00213B28 81 8C 00 20 */ lwz r12, 0x20(r12) +/* 80216BCC 00213B2C 7D 89 03 A6 */ mtctr r12 +/* 80216BD0 00213B30 4E 80 04 21 */ bctrl +/* 80216BD4 00213B34 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 80216BD8 00213B38 38 81 00 6C */ addi r4, r1, 0x6c +/* 80216BDC 00213B3C C0 03 00 00 */ lfs f0, 0(r3) +/* 80216BE0 00213B40 D0 01 00 6C */ stfs f0, 0x6c(r1) +/* 80216BE4 00213B44 C0 03 00 04 */ lfs f0, 4(r3) +/* 80216BE8 00213B48 D0 01 00 70 */ stfs f0, 0x70(r1) +/* 80216BEC 00213B4C C0 03 00 08 */ lfs f0, 8(r3) +/* 80216BF0 00213B50 D0 01 00 74 */ stfs f0, 0x74(r1) +/* 80216BF4 00213B54 80 7E 04 94 */ lwz r3, 0x494(r30) +/* 80216BF8 00213B58 81 83 00 00 */ lwz r12, 0(r3) +/* 80216BFC 00213B5C 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 80216C00 00213B60 7D 89 03 A6 */ mtctr r12 +/* 80216C04 00213B64 4E 80 04 21 */ bctrl +/* 80216C08 00213B68 80 7E 04 94 */ lwz r3, 0x494(r30) +/* 80216C0C 00213B6C FC 20 F8 90 */ fmr f1, f31 +/* 80216C10 00213B70 81 83 00 00 */ lwz r12, 0(r3) +/* 80216C14 00213B74 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80216C18 00213B78 7D 89 03 A6 */ mtctr r12 +/* 80216C1C 00213B7C 4E 80 04 21 */ bctrl +/* 80216C20 00213B80 28 1F 00 00 */ cmplwi r31, 0 +/* 80216C24 00213B84 41 82 04 D8 */ beq lbl_802170FC +/* 80216C28 00213B88 7F E3 FB 78 */ mr r3, r31 +/* 80216C2C 00213B8C 38 80 00 00 */ li r4, 0 +/* 80216C30 00213B90 81 9F 00 00 */ lwz r12, 0(r31) +/* 80216C34 00213B94 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80216C38 00213B98 7D 89 03 A6 */ mtctr r12 +/* 80216C3C 00213B9C 4E 80 04 21 */ bctrl +/* 80216C40 00213BA0 48 00 04 BC */ b lbl_802170FC +lbl_80216C44: +/* 80216C44 00213BA4 2C 00 00 0A */ cmpwi r0, 0xa +/* 80216C48 00213BA8 3B A0 00 00 */ li r29, 0 +/* 80216C4C 00213BAC 41 82 00 0C */ beq lbl_80216C58 +/* 80216C50 00213BB0 2C 00 00 0C */ cmpwi r0, 0xc +/* 80216C54 00213BB4 40 82 00 08 */ bne lbl_80216C5C +lbl_80216C58: +/* 80216C58 00213BB8 3B A0 00 01 */ li r29, 1 +lbl_80216C5C: +/* 80216C5C 00213BBC 80 7E 04 6C */ lwz r3, 0x46c(r30) +/* 80216C60 00213BC0 38 80 00 00 */ li r4, 0 +/* 80216C64 00213BC4 81 83 00 00 */ lwz r12, 0(r3) +/* 80216C68 00213BC8 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80216C6C 00213BCC 7D 89 03 A6 */ mtctr r12 +/* 80216C70 00213BD0 4E 80 04 21 */ bctrl +/* 80216C74 00213BD4 80 7E 04 74 */ lwz r3, 0x474(r30) +/* 80216C78 00213BD8 38 80 00 00 */ li r4, 0 +/* 80216C7C 00213BDC 81 83 00 00 */ lwz r12, 0(r3) +/* 80216C80 00213BE0 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80216C84 00213BE4 7D 89 03 A6 */ mtctr r12 +/* 80216C88 00213BE8 4E 80 04 21 */ bctrl +/* 80216C8C 00213BEC 80 7E 04 7C */ lwz r3, 0x47c(r30) +/* 80216C90 00213BF0 38 80 00 01 */ li r4, 1 +/* 80216C94 00213BF4 81 83 00 00 */ lwz r12, 0(r3) +/* 80216C98 00213BF8 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80216C9C 00213BFC 7D 89 03 A6 */ mtctr r12 +/* 80216CA0 00213C00 4E 80 04 21 */ bctrl +/* 80216CA4 00213C04 80 7E 04 84 */ lwz r3, 0x484(r30) +/* 80216CA8 00213C08 38 80 00 00 */ li r4, 0 +/* 80216CAC 00213C0C 81 83 00 00 */ lwz r12, 0(r3) +/* 80216CB0 00213C10 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80216CB4 00213C14 7D 89 03 A6 */ mtctr r12 +/* 80216CB8 00213C18 4E 80 04 21 */ bctrl +/* 80216CBC 00213C1C 80 7E 04 8C */ lwz r3, 0x48c(r30) +/* 80216CC0 00213C20 7F A4 EB 78 */ mr r4, r29 +/* 80216CC4 00213C24 81 83 00 00 */ lwz r12, 0(r3) +/* 80216CC8 00213C28 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80216CCC 00213C2C 7D 89 03 A6 */ mtctr r12 +/* 80216CD0 00213C30 4E 80 04 21 */ bctrl +/* 80216CD4 00213C34 83 9E 04 7C */ lwz r28, 0x47c(r30) +/* 80216CD8 00213C38 38 61 01 60 */ addi r3, r1, 0x160 +/* 80216CDC 00213C3C 38 9E 00 34 */ addi r4, r30, 0x34 +/* 80216CE0 00213C40 48 0F BF 61 */ bl GetRotation__12CTransform4fCFv +/* 80216CE4 00213C44 7F 83 E3 78 */ mr r3, r28 +/* 80216CE8 00213C48 38 81 01 60 */ addi r4, r1, 0x160 +/* 80216CEC 00213C4C 81 9C 00 00 */ lwz r12, 0(r28) +/* 80216CF0 00213C50 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 80216CF4 00213C54 7D 89 03 A6 */ mtctr r12 +/* 80216CF8 00213C58 4E 80 04 21 */ bctrl +/* 80216CFC 00213C5C 80 7E 04 7C */ lwz r3, 0x47c(r30) +/* 80216D00 00213C60 38 81 00 C4 */ addi r4, r1, 0xc4 +/* 80216D04 00213C64 81 83 00 00 */ lwz r12, 0(r3) +/* 80216D08 00213C68 81 8C 00 20 */ lwz r12, 0x20(r12) +/* 80216D0C 00213C6C 7D 89 03 A6 */ mtctr r12 +/* 80216D10 00213C70 4E 80 04 21 */ bctrl +/* 80216D14 00213C74 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 80216D18 00213C78 38 81 00 60 */ addi r4, r1, 0x60 +/* 80216D1C 00213C7C C0 03 00 00 */ lfs f0, 0(r3) +/* 80216D20 00213C80 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 80216D24 00213C84 C0 03 00 04 */ lfs f0, 4(r3) +/* 80216D28 00213C88 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 80216D2C 00213C8C C0 03 00 08 */ lfs f0, 8(r3) +/* 80216D30 00213C90 D0 01 00 68 */ stfs f0, 0x68(r1) +/* 80216D34 00213C94 80 7E 04 7C */ lwz r3, 0x47c(r30) +/* 80216D38 00213C98 81 83 00 00 */ lwz r12, 0(r3) +/* 80216D3C 00213C9C 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 80216D40 00213CA0 7D 89 03 A6 */ mtctr r12 +/* 80216D44 00213CA4 4E 80 04 21 */ bctrl +/* 80216D48 00213CA8 80 7E 04 7C */ lwz r3, 0x47c(r30) +/* 80216D4C 00213CAC FC 20 F8 90 */ fmr f1, f31 +/* 80216D50 00213CB0 81 83 00 00 */ lwz r12, 0(r3) +/* 80216D54 00213CB4 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80216D58 00213CB8 7D 89 03 A6 */ mtctr r12 +/* 80216D5C 00213CBC 4E 80 04 21 */ bctrl +/* 80216D60 00213CC0 80 7E 04 7C */ lwz r3, 0x47c(r30) +/* 80216D64 00213CC4 81 83 00 00 */ lwz r12, 0(r3) +/* 80216D68 00213CC8 81 8C 00 64 */ lwz r12, 0x64(r12) +/* 80216D6C 00213CCC 7D 89 03 A6 */ mtctr r12 +/* 80216D70 00213CD0 4E 80 04 21 */ bctrl +/* 80216D74 00213CD4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80216D78 00213CD8 41 82 00 2C */ beq lbl_80216DA4 +/* 80216D7C 00213CDC 80 9E 04 7C */ lwz r4, 0x47c(r30) +/* 80216D80 00213CE0 38 61 02 B0 */ addi r3, r1, 0x2b0 +/* 80216D84 00213CE4 81 84 00 00 */ lwz r12, 0(r4) +/* 80216D88 00213CE8 81 8C 00 68 */ lwz r12, 0x68(r12) +/* 80216D8C 00213CEC 7D 89 03 A6 */ mtctr r12 +/* 80216D90 00213CF0 4E 80 04 21 */ bctrl +/* 80216D94 00213CF4 7F E3 FB 78 */ mr r3, r31 +/* 80216D98 00213CF8 38 81 02 B0 */ addi r4, r1, 0x2b0 +/* 80216D9C 00213CFC 4B E9 E9 A9 */ bl SetLight__10CGameLightFRC6CLight +/* 80216DA0 00213D00 48 00 00 1C */ b lbl_80216DBC +lbl_80216DA4: +/* 80216DA4 00213D04 7F E3 FB 78 */ mr r3, r31 +/* 80216DA8 00213D08 38 80 00 00 */ li r4, 0 +/* 80216DAC 00213D0C 81 9F 00 00 */ lwz r12, 0(r31) +/* 80216DB0 00213D10 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80216DB4 00213D14 7D 89 03 A6 */ mtctr r12 +/* 80216DB8 00213D18 4E 80 04 21 */ bctrl +lbl_80216DBC: +/* 80216DBC 00213D1C 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 80216DC0 00213D20 41 82 03 3C */ beq lbl_802170FC +/* 80216DC4 00213D24 80 82 B3 54 */ lwz r4, lbl_805AD074@sda21(r2) +/* 80216DC8 00213D28 38 61 00 50 */ addi r3, r1, 0x50 +/* 80216DCC 00213D2C 4B DE DE ED */ bl string_l__4rstlFPCc +/* 80216DD0 00213D30 7F C4 F3 78 */ mr r4, r30 +/* 80216DD4 00213D34 38 61 01 30 */ addi r3, r1, 0x130 +/* 80216DD8 00213D38 38 A1 00 50 */ addi r5, r1, 0x50 +/* 80216DDC 00213D3C 4B E3 C1 25 */ bl "GetLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80216DE0 00213D40 38 61 02 50 */ addi r3, r1, 0x250 +/* 80216DE4 00213D44 38 81 01 30 */ addi r4, r1, 0x130 +/* 80216DE8 00213D48 48 0F BD 8D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80216DEC 00213D4C 38 61 00 50 */ addi r3, r1, 0x50 +/* 80216DF0 00213D50 48 12 6C F1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80216DF4 00213D54 C0 41 02 5C */ lfs f2, 0x25c(r1) +/* 80216DF8 00213D58 38 61 00 44 */ addi r3, r1, 0x44 +/* 80216DFC 00213D5C C0 21 02 6C */ lfs f1, 0x26c(r1) +/* 80216E00 00213D60 38 9E 00 34 */ addi r4, r30, 0x34 +/* 80216E04 00213D64 C0 01 02 7C */ lfs f0, 0x27c(r1) +/* 80216E08 00213D68 38 A1 00 38 */ addi r5, r1, 0x38 +/* 80216E0C 00213D6C D0 41 00 38 */ stfs f2, 0x38(r1) +/* 80216E10 00213D70 D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 80216E14 00213D74 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 80216E18 00213D78 48 0F BC 69 */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 80216E1C 00213D7C C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 80216E20 00213D80 38 61 01 00 */ addi r3, r1, 0x100 +/* 80216E24 00213D84 C0 01 00 48 */ lfs f0, 0x48(r1) +/* 80216E28 00213D88 38 9E 00 34 */ addi r4, r30, 0x34 +/* 80216E2C 00213D8C C0 7E 00 60 */ lfs f3, 0x60(r30) +/* 80216E30 00213D90 C0 41 00 4C */ lfs f2, 0x4c(r1) +/* 80216E34 00213D94 EC 81 00 2A */ fadds f4, f1, f0 +/* 80216E38 00213D98 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 80216E3C 00213D9C C0 01 00 44 */ lfs f0, 0x44(r1) +/* 80216E40 00213DA0 EC 43 10 2A */ fadds f2, f3, f2 +/* 80216E44 00213DA4 D0 81 00 BC */ stfs f4, 0xbc(r1) +/* 80216E48 00213DA8 EC 01 00 2A */ fadds f0, f1, f0 +/* 80216E4C 00213DAC D0 41 00 C0 */ stfs f2, 0xc0(r1) +/* 80216E50 00213DB0 D0 01 00 B8 */ stfs f0, 0xb8(r1) +/* 80216E54 00213DB4 83 9E 04 8C */ lwz r28, 0x48c(r30) +/* 80216E58 00213DB8 48 0F BD E9 */ bl GetRotation__12CTransform4fCFv +/* 80216E5C 00213DBC 7F 83 E3 78 */ mr r3, r28 +/* 80216E60 00213DC0 38 81 01 00 */ addi r4, r1, 0x100 +/* 80216E64 00213DC4 81 9C 00 00 */ lwz r12, 0(r28) +/* 80216E68 00213DC8 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 80216E6C 00213DCC 7D 89 03 A6 */ mtctr r12 +/* 80216E70 00213DD0 4E 80 04 21 */ bctrl +/* 80216E74 00213DD4 80 7E 04 8C */ lwz r3, 0x48c(r30) +/* 80216E78 00213DD8 38 81 00 B8 */ addi r4, r1, 0xb8 +/* 80216E7C 00213DDC 81 83 00 00 */ lwz r12, 0(r3) +/* 80216E80 00213DE0 81 8C 00 20 */ lwz r12, 0x20(r12) +/* 80216E84 00213DE4 7D 89 03 A6 */ mtctr r12 +/* 80216E88 00213DE8 4E 80 04 21 */ bctrl +/* 80216E8C 00213DEC 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 80216E90 00213DF0 38 81 00 2C */ addi r4, r1, 0x2c +/* 80216E94 00213DF4 C0 03 00 00 */ lfs f0, 0(r3) +/* 80216E98 00213DF8 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 80216E9C 00213DFC C0 03 00 04 */ lfs f0, 4(r3) +/* 80216EA0 00213E00 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 80216EA4 00213E04 C0 03 00 08 */ lfs f0, 8(r3) +/* 80216EA8 00213E08 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 80216EAC 00213E0C 80 7E 04 8C */ lwz r3, 0x48c(r30) +/* 80216EB0 00213E10 81 83 00 00 */ lwz r12, 0(r3) +/* 80216EB4 00213E14 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 80216EB8 00213E18 7D 89 03 A6 */ mtctr r12 +/* 80216EBC 00213E1C 4E 80 04 21 */ bctrl +/* 80216EC0 00213E20 80 7E 04 8C */ lwz r3, 0x48c(r30) +/* 80216EC4 00213E24 FC 20 F8 90 */ fmr f1, f31 +/* 80216EC8 00213E28 81 83 00 00 */ lwz r12, 0(r3) +/* 80216ECC 00213E2C 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80216ED0 00213E30 7D 89 03 A6 */ mtctr r12 +/* 80216ED4 00213E34 4E 80 04 21 */ bctrl +/* 80216ED8 00213E38 48 00 02 24 */ b lbl_802170FC +lbl_80216EDC: +/* 80216EDC 00213E3C 80 7E 04 6C */ lwz r3, 0x46c(r30) +/* 80216EE0 00213E40 38 80 00 00 */ li r4, 0 +/* 80216EE4 00213E44 81 83 00 00 */ lwz r12, 0(r3) +/* 80216EE8 00213E48 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80216EEC 00213E4C 7D 89 03 A6 */ mtctr r12 +/* 80216EF0 00213E50 4E 80 04 21 */ bctrl +/* 80216EF4 00213E54 80 7E 04 74 */ lwz r3, 0x474(r30) +/* 80216EF8 00213E58 38 80 00 00 */ li r4, 0 +/* 80216EFC 00213E5C 81 83 00 00 */ lwz r12, 0(r3) +/* 80216F00 00213E60 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80216F04 00213E64 7D 89 03 A6 */ mtctr r12 +/* 80216F08 00213E68 4E 80 04 21 */ bctrl +/* 80216F0C 00213E6C 80 7E 04 7C */ lwz r3, 0x47c(r30) +/* 80216F10 00213E70 38 80 00 00 */ li r4, 0 +/* 80216F14 00213E74 81 83 00 00 */ lwz r12, 0(r3) +/* 80216F18 00213E78 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80216F1C 00213E7C 7D 89 03 A6 */ mtctr r12 +/* 80216F20 00213E80 4E 80 04 21 */ bctrl +/* 80216F24 00213E84 80 7E 04 84 */ lwz r3, 0x484(r30) +/* 80216F28 00213E88 38 80 00 00 */ li r4, 0 +/* 80216F2C 00213E8C 81 83 00 00 */ lwz r12, 0(r3) +/* 80216F30 00213E90 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80216F34 00213E94 7D 89 03 A6 */ mtctr r12 +/* 80216F38 00213E98 4E 80 04 21 */ bctrl +/* 80216F3C 00213E9C 80 7E 04 8C */ lwz r3, 0x48c(r30) +/* 80216F40 00213EA0 38 80 00 00 */ li r4, 0 +/* 80216F44 00213EA4 81 83 00 00 */ lwz r12, 0(r3) +/* 80216F48 00213EA8 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80216F4C 00213EAC 7D 89 03 A6 */ mtctr r12 +/* 80216F50 00213EB0 4E 80 04 21 */ bctrl +/* 80216F54 00213EB4 80 7E 04 94 */ lwz r3, 0x494(r30) +/* 80216F58 00213EB8 38 80 00 00 */ li r4, 0 +/* 80216F5C 00213EBC 81 83 00 00 */ lwz r12, 0(r3) +/* 80216F60 00213EC0 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80216F64 00213EC4 7D 89 03 A6 */ mtctr r12 +/* 80216F68 00213EC8 4E 80 04 21 */ bctrl +/* 80216F6C 00213ECC 80 7E 04 94 */ lwz r3, 0x494(r30) +/* 80216F70 00213ED0 FC 20 F8 90 */ fmr f1, f31 +/* 80216F74 00213ED4 81 83 00 00 */ lwz r12, 0(r3) +/* 80216F78 00213ED8 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80216F7C 00213EDC 7D 89 03 A6 */ mtctr r12 +/* 80216F80 00213EE0 4E 80 04 21 */ bctrl +/* 80216F84 00213EE4 28 1F 00 00 */ cmplwi r31, 0 +/* 80216F88 00213EE8 41 82 01 74 */ beq lbl_802170FC +/* 80216F8C 00213EEC 7F E3 FB 78 */ mr r3, r31 +/* 80216F90 00213EF0 38 80 00 00 */ li r4, 0 +/* 80216F94 00213EF4 81 9F 00 00 */ lwz r12, 0(r31) +/* 80216F98 00213EF8 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80216F9C 00213EFC 7D 89 03 A6 */ mtctr r12 +/* 80216FA0 00213F00 4E 80 04 21 */ bctrl +/* 80216FA4 00213F04 48 00 01 58 */ b lbl_802170FC +lbl_80216FA8: +/* 80216FA8 00213F08 80 7E 04 6C */ lwz r3, 0x46c(r30) +/* 80216FAC 00213F0C 38 80 00 00 */ li r4, 0 +/* 80216FB0 00213F10 81 83 00 00 */ lwz r12, 0(r3) +/* 80216FB4 00213F14 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80216FB8 00213F18 7D 89 03 A6 */ mtctr r12 +/* 80216FBC 00213F1C 4E 80 04 21 */ bctrl +/* 80216FC0 00213F20 80 7E 04 74 */ lwz r3, 0x474(r30) +/* 80216FC4 00213F24 38 80 00 00 */ li r4, 0 +/* 80216FC8 00213F28 81 83 00 00 */ lwz r12, 0(r3) +/* 80216FCC 00213F2C 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80216FD0 00213F30 7D 89 03 A6 */ mtctr r12 +/* 80216FD4 00213F34 4E 80 04 21 */ bctrl +/* 80216FD8 00213F38 80 7E 04 7C */ lwz r3, 0x47c(r30) +/* 80216FDC 00213F3C 38 80 00 00 */ li r4, 0 +/* 80216FE0 00213F40 81 83 00 00 */ lwz r12, 0(r3) +/* 80216FE4 00213F44 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80216FE8 00213F48 7D 89 03 A6 */ mtctr r12 +/* 80216FEC 00213F4C 4E 80 04 21 */ bctrl +/* 80216FF0 00213F50 80 7E 04 84 */ lwz r3, 0x484(r30) +/* 80216FF4 00213F54 38 80 00 01 */ li r4, 1 +/* 80216FF8 00213F58 81 83 00 00 */ lwz r12, 0(r3) +/* 80216FFC 00213F5C 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80217000 00213F60 7D 89 03 A6 */ mtctr r12 +/* 80217004 00213F64 4E 80 04 21 */ bctrl +/* 80217008 00213F68 80 7E 04 8C */ lwz r3, 0x48c(r30) +/* 8021700C 00213F6C 38 80 00 00 */ li r4, 0 +/* 80217010 00213F70 81 83 00 00 */ lwz r12, 0(r3) +/* 80217014 00213F74 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80217018 00213F78 7D 89 03 A6 */ mtctr r12 +/* 8021701C 00213F7C 4E 80 04 21 */ bctrl +/* 80217020 00213F80 80 7E 04 94 */ lwz r3, 0x494(r30) +/* 80217024 00213F84 38 80 00 00 */ li r4, 0 +/* 80217028 00213F88 81 83 00 00 */ lwz r12, 0(r3) +/* 8021702C 00213F8C 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80217030 00213F90 7D 89 03 A6 */ mtctr r12 +/* 80217034 00213F94 4E 80 04 21 */ bctrl +/* 80217038 00213F98 83 9E 04 84 */ lwz r28, 0x484(r30) +/* 8021703C 00213F9C 38 61 00 D0 */ addi r3, r1, 0xd0 +/* 80217040 00213FA0 38 9E 00 34 */ addi r4, r30, 0x34 +/* 80217044 00213FA4 48 0F BB FD */ bl GetRotation__12CTransform4fCFv +/* 80217048 00213FA8 7F 83 E3 78 */ mr r3, r28 +/* 8021704C 00213FAC 38 81 00 D0 */ addi r4, r1, 0xd0 +/* 80217050 00213FB0 81 9C 00 00 */ lwz r12, 0(r28) +/* 80217054 00213FB4 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 80217058 00213FB8 7D 89 03 A6 */ mtctr r12 +/* 8021705C 00213FBC 4E 80 04 21 */ bctrl +/* 80217060 00213FC0 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 80217064 00213FC4 38 81 00 20 */ addi r4, r1, 0x20 +/* 80217068 00213FC8 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 8021706C 00213FCC C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 80217070 00213FD0 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 80217074 00213FD4 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 80217078 00213FD8 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 8021707C 00213FDC 80 7E 04 84 */ lwz r3, 0x484(r30) +/* 80217080 00213FE0 81 83 00 00 */ lwz r12, 0(r3) +/* 80217084 00213FE4 81 8C 00 20 */ lwz r12, 0x20(r12) +/* 80217088 00213FE8 7D 89 03 A6 */ mtctr r12 +/* 8021708C 00213FEC 4E 80 04 21 */ bctrl +/* 80217090 00213FF0 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 80217094 00213FF4 38 81 00 14 */ addi r4, r1, 0x14 +/* 80217098 00213FF8 C0 03 00 00 */ lfs f0, 0(r3) +/* 8021709C 00213FFC D0 01 00 14 */ stfs f0, 0x14(r1) +/* 802170A0 00214000 C0 03 00 04 */ lfs f0, 4(r3) +/* 802170A4 00214004 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 802170A8 00214008 C0 03 00 08 */ lfs f0, 8(r3) +/* 802170AC 0021400C D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 802170B0 00214010 80 7E 04 84 */ lwz r3, 0x484(r30) +/* 802170B4 00214014 81 83 00 00 */ lwz r12, 0(r3) +/* 802170B8 00214018 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 802170BC 0021401C 7D 89 03 A6 */ mtctr r12 +/* 802170C0 00214020 4E 80 04 21 */ bctrl +/* 802170C4 00214024 80 7E 04 84 */ lwz r3, 0x484(r30) +/* 802170C8 00214028 FC 20 F8 90 */ fmr f1, f31 +/* 802170CC 0021402C 81 83 00 00 */ lwz r12, 0(r3) +/* 802170D0 00214030 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 802170D4 00214034 7D 89 03 A6 */ mtctr r12 +/* 802170D8 00214038 4E 80 04 21 */ bctrl +/* 802170DC 0021403C 28 1F 00 00 */ cmplwi r31, 0 +/* 802170E0 00214040 41 82 00 1C */ beq lbl_802170FC +/* 802170E4 00214044 7F E3 FB 78 */ mr r3, r31 +/* 802170E8 00214048 38 80 00 00 */ li r4, 0 +/* 802170EC 0021404C 81 9F 00 00 */ lwz r12, 0(r31) +/* 802170F0 00214050 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 802170F4 00214054 7D 89 03 A6 */ mtctr r12 +/* 802170F8 00214058 4E 80 04 21 */ bctrl +lbl_802170FC: +/* 802170FC 0021405C E3 E1 03 68 */ psq_l f31, 872(r1), 0, qr0 +/* 80217100 00214060 80 01 03 74 */ lwz r0, 0x374(r1) +/* 80217104 00214064 CB E1 03 60 */ lfd f31, 0x360(r1) +/* 80217108 00214068 83 E1 03 5C */ lwz r31, 0x35c(r1) +/* 8021710C 0021406C 83 C1 03 58 */ lwz r30, 0x358(r1) +/* 80217110 00214070 83 A1 03 54 */ lwz r29, 0x354(r1) +/* 80217114 00214074 83 81 03 50 */ lwz r28, 0x350(r1) +/* 80217118 00214078 7C 08 03 A6 */ mtlr r0 +/* 8021711C 0021407C 38 21 03 70 */ addi r1, r1, 0x370 +/* 80217120 00214080 4E 80 00 20 */ blr + +.global PlayAdditiveChargingAnimation__16CScriptGunTurretFR13CStateManager +PlayAdditiveChargingAnimation__16CScriptGunTurretFR13CStateManager: +/* 80217124 00214084 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 80217128 00214088 7C 08 02 A6 */ mflr r0 +/* 8021712C 0021408C 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 80217130 00214090 93 E1 00 AC */ stw r31, 0xac(r1) +/* 80217134 00214094 7C 9F 23 78 */ mr r31, r4 +/* 80217138 00214098 93 C1 00 A8 */ stw r30, 0xa8(r1) +/* 8021713C 0021409C 7C 7E 1B 78 */ mr r30, r3 +/* 80217140 002140A0 80 03 05 20 */ lwz r0, 0x520(r3) +/* 80217144 002140A4 2C 00 00 0A */ cmpwi r0, 0xa +/* 80217148 002140A8 40 82 01 38 */ bne lbl_80217280 +/* 8021714C 002140AC 80 1E 05 5C */ lwz r0, 0x55c(r30) +/* 80217150 002140B0 2C 00 FF FF */ cmpwi r0, -1 +/* 80217154 002140B4 40 82 01 4C */ bne lbl_802172A0 +/* 80217158 002140B8 38 61 00 18 */ addi r3, r1, 0x18 +/* 8021715C 002140BC 48 0C BF 21 */ bl NoParameter__12CPASAnimParmFv +/* 80217160 002140C0 38 61 00 20 */ addi r3, r1, 0x20 +/* 80217164 002140C4 48 0C BF 19 */ bl NoParameter__12CPASAnimParmFv +/* 80217168 002140C8 38 61 00 28 */ addi r3, r1, 0x28 +/* 8021716C 002140CC 48 0C BF 11 */ bl NoParameter__12CPASAnimParmFv +/* 80217170 002140D0 38 61 00 30 */ addi r3, r1, 0x30 +/* 80217174 002140D4 48 0C BF 09 */ bl NoParameter__12CPASAnimParmFv +/* 80217178 002140D8 38 61 00 38 */ addi r3, r1, 0x38 +/* 8021717C 002140DC 48 0C BF 01 */ bl NoParameter__12CPASAnimParmFv +/* 80217180 002140E0 38 61 00 40 */ addi r3, r1, 0x40 +/* 80217184 002140E4 48 0C BE F9 */ bl NoParameter__12CPASAnimParmFv +/* 80217188 002140E8 38 61 00 48 */ addi r3, r1, 0x48 +/* 8021718C 002140EC 48 0C BE F1 */ bl NoParameter__12CPASAnimParmFv +/* 80217190 002140F0 38 61 00 50 */ addi r3, r1, 0x50 +/* 80217194 002140F4 38 80 00 02 */ li r4, 2 +/* 80217198 002140F8 48 0C BD ED */ bl FromEnum__12CPASAnimParmFi +/* 8021719C 002140FC 38 61 00 20 */ addi r3, r1, 0x20 +/* 802171A0 00214100 38 01 00 18 */ addi r0, r1, 0x18 +/* 802171A4 00214104 90 61 00 08 */ stw r3, 8(r1) +/* 802171A8 00214108 38 61 00 58 */ addi r3, r1, 0x58 +/* 802171AC 0021410C 38 A1 00 50 */ addi r5, r1, 0x50 +/* 802171B0 00214110 38 C1 00 48 */ addi r6, r1, 0x48 +/* 802171B4 00214114 90 01 00 0C */ stw r0, 0xc(r1) +/* 802171B8 00214118 38 E1 00 40 */ addi r7, r1, 0x40 +/* 802171BC 0021411C 39 01 00 38 */ addi r8, r1, 0x38 +/* 802171C0 00214120 39 21 00 30 */ addi r9, r1, 0x30 +/* 802171C4 00214124 39 41 00 28 */ addi r10, r1, 0x28 +/* 802171C8 00214128 38 80 00 18 */ li r4, 0x18 +/* 802171CC 0021412C 4B E6 60 F9 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 802171D0 00214130 80 9E 00 64 */ lwz r4, 0x64(r30) +/* 802171D4 00214134 38 61 00 10 */ addi r3, r1, 0x10 +/* 802171D8 00214138 80 DF 09 00 */ lwz r6, 0x900(r31) +/* 802171DC 0021413C 38 A1 00 58 */ addi r5, r1, 0x58 +/* 802171E0 00214140 83 E4 00 10 */ lwz r31, 0x10(r4) +/* 802171E4 00214144 38 E0 FF FF */ li r7, -1 +/* 802171E8 00214148 38 9F 00 3C */ addi r4, r31, 0x3c +/* 802171EC 0021414C 48 0C DE 75 */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i +/* 802171F0 00214150 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 802171F4 00214154 C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 802171F8 00214158 80 01 00 14 */ lwz r0, 0x14(r1) +/* 802171FC 0021415C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80217200 00214160 40 81 00 20 */ ble lbl_80217220 +/* 80217204 00214164 90 1E 05 5C */ stw r0, 0x55c(r30) +/* 80217208 00214168 7F E3 FB 78 */ mr r3, r31 +/* 8021720C 0021416C C0 22 B3 68 */ lfs f1, lbl_805AD088@sda21(r2) +/* 80217210 00214170 38 A0 00 01 */ li r5, 1 +/* 80217214 00214174 80 9E 05 5C */ lwz r4, 0x55c(r30) +/* 80217218 00214178 38 C0 00 00 */ li r6, 0 +/* 8021721C 0021417C 4B E1 2F B5 */ bl AddAdditiveAnimation__9CAnimDataFUifbb +lbl_80217220: +/* 80217220 00214180 34 A1 00 5C */ addic. r5, r1, 0x5c +/* 80217224 00214184 41 82 00 7C */ beq lbl_802172A0 +/* 80217228 00214188 80 C5 00 00 */ lwz r6, 0(r5) +/* 8021722C 0021418C 38 60 00 00 */ li r3, 0 +/* 80217230 00214190 2C 06 00 00 */ cmpwi r6, 0 +/* 80217234 00214194 40 81 00 40 */ ble lbl_80217274 +/* 80217238 00214198 2C 06 00 08 */ cmpwi r6, 8 +/* 8021723C 0021419C 38 86 FF F8 */ addi r4, r6, -8 +/* 80217240 002141A0 40 81 00 20 */ ble lbl_80217260 +/* 80217244 002141A4 38 04 00 07 */ addi r0, r4, 7 +/* 80217248 002141A8 54 00 E8 FE */ srwi r0, r0, 3 +/* 8021724C 002141AC 7C 09 03 A6 */ mtctr r0 +/* 80217250 002141B0 2C 04 00 00 */ cmpwi r4, 0 +/* 80217254 002141B4 40 81 00 0C */ ble lbl_80217260 +lbl_80217258: +/* 80217258 002141B8 38 63 00 08 */ addi r3, r3, 8 +/* 8021725C 002141BC 42 00 FF FC */ bdnz lbl_80217258 +lbl_80217260: +/* 80217260 002141C0 7C 03 30 50 */ subf r0, r3, r6 +/* 80217264 002141C4 7C 09 03 A6 */ mtctr r0 +/* 80217268 002141C8 7C 03 30 00 */ cmpw r3, r6 +/* 8021726C 002141CC 40 80 00 08 */ bge lbl_80217274 +lbl_80217270: +/* 80217270 002141D0 42 00 00 00 */ bdnz lbl_80217270 +lbl_80217274: +/* 80217274 002141D4 38 00 00 00 */ li r0, 0 +/* 80217278 002141D8 90 05 00 00 */ stw r0, 0(r5) +/* 8021727C 002141DC 48 00 00 24 */ b lbl_802172A0 +lbl_80217280: +/* 80217280 002141E0 80 9E 05 5C */ lwz r4, 0x55c(r30) +/* 80217284 002141E4 2C 04 FF FF */ cmpwi r4, -1 +/* 80217288 002141E8 41 82 00 18 */ beq lbl_802172A0 +/* 8021728C 002141EC 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 80217290 002141F0 80 63 00 10 */ lwz r3, 0x10(r3) +/* 80217294 002141F4 4B E1 2E C5 */ bl DelAdditiveAnimation__9CAnimDataFUi +/* 80217298 002141F8 38 00 FF FF */ li r0, -1 +/* 8021729C 002141FC 90 1E 05 5C */ stw r0, 0x55c(r30) +lbl_802172A0: +/* 802172A0 00214200 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 802172A4 00214204 83 E1 00 AC */ lwz r31, 0xac(r1) +/* 802172A8 00214208 83 C1 00 A8 */ lwz r30, 0xa8(r1) +/* 802172AC 0021420C 7C 08 03 A6 */ mtlr r0 +/* 802172B0 00214210 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 802172B4 00214214 4E 80 00 20 */ blr + +.global PlayAdditiveFlinchAnimation__16CScriptGunTurretFR13CStateManager +PlayAdditiveFlinchAnimation__16CScriptGunTurretFR13CStateManager: +/* 802172B8 00214218 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 802172BC 0021421C 7C 08 02 A6 */ mflr r0 +/* 802172C0 00214220 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 802172C4 00214224 93 E1 00 AC */ stw r31, 0xac(r1) +/* 802172C8 00214228 7C 9F 23 78 */ mr r31, r4 +/* 802172CC 0021422C 93 C1 00 A8 */ stw r30, 0xa8(r1) +/* 802172D0 00214230 7C 7E 1B 78 */ mr r30, r3 +/* 802172D4 00214234 38 61 00 18 */ addi r3, r1, 0x18 +/* 802172D8 00214238 48 0C BD A5 */ bl NoParameter__12CPASAnimParmFv +/* 802172DC 0021423C 38 61 00 20 */ addi r3, r1, 0x20 +/* 802172E0 00214240 48 0C BD 9D */ bl NoParameter__12CPASAnimParmFv +/* 802172E4 00214244 38 61 00 28 */ addi r3, r1, 0x28 +/* 802172E8 00214248 48 0C BD 95 */ bl NoParameter__12CPASAnimParmFv +/* 802172EC 0021424C 38 61 00 30 */ addi r3, r1, 0x30 +/* 802172F0 00214250 48 0C BD 8D */ bl NoParameter__12CPASAnimParmFv +/* 802172F4 00214254 38 61 00 38 */ addi r3, r1, 0x38 +/* 802172F8 00214258 48 0C BD 85 */ bl NoParameter__12CPASAnimParmFv +/* 802172FC 0021425C 38 61 00 40 */ addi r3, r1, 0x40 +/* 80217300 00214260 48 0C BD 7D */ bl NoParameter__12CPASAnimParmFv +/* 80217304 00214264 38 61 00 48 */ addi r3, r1, 0x48 +/* 80217308 00214268 48 0C BD 75 */ bl NoParameter__12CPASAnimParmFv +/* 8021730C 0021426C 38 61 00 50 */ addi r3, r1, 0x50 +/* 80217310 00214270 48 0C BD 6D */ bl NoParameter__12CPASAnimParmFv +/* 80217314 00214274 38 61 00 20 */ addi r3, r1, 0x20 +/* 80217318 00214278 38 01 00 18 */ addi r0, r1, 0x18 +/* 8021731C 0021427C 90 61 00 08 */ stw r3, 8(r1) +/* 80217320 00214280 38 61 00 58 */ addi r3, r1, 0x58 +/* 80217324 00214284 38 A1 00 50 */ addi r5, r1, 0x50 +/* 80217328 00214288 38 C1 00 48 */ addi r6, r1, 0x48 +/* 8021732C 0021428C 90 01 00 0C */ stw r0, 0xc(r1) +/* 80217330 00214290 38 E1 00 40 */ addi r7, r1, 0x40 +/* 80217334 00214294 39 01 00 38 */ addi r8, r1, 0x38 +/* 80217338 00214298 39 21 00 30 */ addi r9, r1, 0x30 +/* 8021733C 0021429C 39 41 00 28 */ addi r10, r1, 0x28 +/* 80217340 002142A0 38 80 00 17 */ li r4, 0x17 +/* 80217344 002142A4 4B E6 5F 81 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 80217348 002142A8 80 9E 00 64 */ lwz r4, 0x64(r30) +/* 8021734C 002142AC 38 61 00 10 */ addi r3, r1, 0x10 +/* 80217350 002142B0 80 DF 09 00 */ lwz r6, 0x900(r31) +/* 80217354 002142B4 38 A1 00 58 */ addi r5, r1, 0x58 +/* 80217358 002142B8 80 84 00 10 */ lwz r4, 0x10(r4) +/* 8021735C 002142BC 38 E0 FF FF */ li r7, -1 +/* 80217360 002142C0 38 84 00 3C */ addi r4, r4, 0x3c +/* 80217364 002142C4 48 0C DC FD */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i +/* 80217368 002142C8 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 8021736C 002142CC C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 80217370 002142D0 80 81 00 14 */ lwz r4, 0x14(r1) +/* 80217374 002142D4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80217378 002142D8 40 81 00 1C */ ble lbl_80217394 +/* 8021737C 002142DC 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 80217380 002142E0 38 A0 00 00 */ li r5, 0 +/* 80217384 002142E4 C0 22 B3 68 */ lfs f1, lbl_805AD088@sda21(r2) +/* 80217388 002142E8 38 C0 00 01 */ li r6, 1 +/* 8021738C 002142EC 80 63 00 10 */ lwz r3, 0x10(r3) +/* 80217390 002142F0 4B E1 2E 41 */ bl AddAdditiveAnimation__9CAnimDataFUifbb +lbl_80217394: +/* 80217394 002142F4 34 A1 00 5C */ addic. r5, r1, 0x5c +/* 80217398 002142F8 41 82 00 58 */ beq lbl_802173F0 +/* 8021739C 002142FC 80 C5 00 00 */ lwz r6, 0(r5) +/* 802173A0 00214300 38 60 00 00 */ li r3, 0 +/* 802173A4 00214304 2C 06 00 00 */ cmpwi r6, 0 +/* 802173A8 00214308 40 81 00 40 */ ble lbl_802173E8 +/* 802173AC 0021430C 2C 06 00 08 */ cmpwi r6, 8 +/* 802173B0 00214310 38 86 FF F8 */ addi r4, r6, -8 +/* 802173B4 00214314 40 81 00 20 */ ble lbl_802173D4 +/* 802173B8 00214318 38 04 00 07 */ addi r0, r4, 7 +/* 802173BC 0021431C 54 00 E8 FE */ srwi r0, r0, 3 +/* 802173C0 00214320 7C 09 03 A6 */ mtctr r0 +/* 802173C4 00214324 2C 04 00 00 */ cmpwi r4, 0 +/* 802173C8 00214328 40 81 00 0C */ ble lbl_802173D4 +lbl_802173CC: +/* 802173CC 0021432C 38 63 00 08 */ addi r3, r3, 8 +/* 802173D0 00214330 42 00 FF FC */ bdnz lbl_802173CC +lbl_802173D4: +/* 802173D4 00214334 7C 03 30 50 */ subf r0, r3, r6 +/* 802173D8 00214338 7C 09 03 A6 */ mtctr r0 +/* 802173DC 0021433C 7C 03 30 00 */ cmpw r3, r6 +/* 802173E0 00214340 40 80 00 08 */ bge lbl_802173E8 +lbl_802173E4: +/* 802173E4 00214344 42 00 00 00 */ bdnz lbl_802173E4 +lbl_802173E8: +/* 802173E8 00214348 38 00 00 00 */ li r0, 0 +/* 802173EC 0021434C 90 05 00 00 */ stw r0, 0(r5) +lbl_802173F0: +/* 802173F0 00214350 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 802173F4 00214354 83 E1 00 AC */ lwz r31, 0xac(r1) +/* 802173F8 00214358 83 C1 00 A8 */ lwz r30, 0xa8(r1) +/* 802173FC 0021435C 7C 08 03 A6 */ mtlr r0 +/* 80217400 00214360 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 80217404 00214364 4E 80 00 20 */ blr + +.global LaunchProjectile__16CScriptGunTurretFR13CStateManager +LaunchProjectile__16CScriptGunTurretFR13CStateManager: +/* 80217408 00214368 94 21 FD 70 */ stwu r1, -0x290(r1) +/* 8021740C 0021436C 7C 08 02 A6 */ mflr r0 +/* 80217410 00214370 90 01 02 94 */ stw r0, 0x294(r1) +/* 80217414 00214374 DB E1 02 80 */ stfd f31, 0x280(r1) +/* 80217418 00214378 F3 E1 02 88 */ psq_st f31, 648(r1), 0, qr0 +/* 8021741C 0021437C DB C1 02 70 */ stfd f30, 0x270(r1) +/* 80217420 00214380 F3 C1 02 78 */ psq_st f30, 632(r1), 0, qr0 +/* 80217424 00214384 DB A1 02 60 */ stfd f29, 0x260(r1) +/* 80217428 00214388 F3 A1 02 68 */ psq_st f29, 616(r1), 0, qr0 +/* 8021742C 0021438C 93 E1 02 5C */ stw r31, 0x25c(r1) +/* 80217430 00214390 93 C1 02 58 */ stw r30, 0x258(r1) +/* 80217434 00214394 93 A1 02 54 */ stw r29, 0x254(r1) +/* 80217438 00214398 93 81 02 50 */ stw r28, 0x250(r1) +/* 8021743C 0021439C 7C 7E 1B 78 */ mr r30, r3 +/* 80217440 002143A0 7C 9F 23 78 */ mr r31, r4 +/* 80217444 002143A4 3B BE 03 7C */ addi r29, r30, 0x37c +/* 80217448 002143A8 80 03 03 84 */ lwz r0, 0x384(r3) +/* 8021744C 002143AC 28 00 00 00 */ cmplwi r0, 0 +/* 80217450 002143B0 41 82 00 0C */ beq lbl_8021745C +/* 80217454 002143B4 38 60 00 01 */ li r3, 1 +/* 80217458 002143B8 48 00 00 3C */ b lbl_80217494 +lbl_8021745C: +/* 8021745C 002143BC 88 1D 00 04 */ lbz r0, 4(r29) +/* 80217460 002143C0 28 00 00 00 */ cmplwi r0, 0 +/* 80217464 002143C4 41 82 00 2C */ beq lbl_80217490 +/* 80217468 002143C8 80 7D 00 00 */ lwz r3, 0(r29) +/* 8021746C 002143CC 80 03 00 10 */ lwz r0, 0x10(r3) +/* 80217470 002143D0 28 00 00 00 */ cmplwi r0, 0 +/* 80217474 002143D4 41 82 00 1C */ beq lbl_80217490 +/* 80217478 002143D8 7F A3 EB 78 */ mr r3, r29 +/* 8021747C 002143DC 48 12 99 91 */ bl GetObj__6CTokenFv +/* 80217480 002143E0 80 03 00 04 */ lwz r0, 4(r3) +/* 80217484 002143E4 38 60 00 01 */ li r3, 1 +/* 80217488 002143E8 90 1D 00 08 */ stw r0, 8(r29) +/* 8021748C 002143EC 48 00 00 08 */ b lbl_80217494 +lbl_80217490: +/* 80217490 002143F0 38 60 00 00 */ li r3, 0 +lbl_80217494: +/* 80217494 002143F4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80217498 002143F8 41 82 04 80 */ beq lbl_80217918 +/* 8021749C 002143FC A0 1E 00 08 */ lhz r0, 8(r30) +/* 802174A0 00214400 7F E3 FB 78 */ mr r3, r31 +/* 802174A4 00214404 38 81 00 48 */ addi r4, r1, 0x48 +/* 802174A8 00214408 38 A0 00 09 */ li r5, 9 +/* 802174AC 0021440C B0 01 00 44 */ sth r0, 0x44(r1) +/* 802174B0 00214410 38 C0 00 08 */ li r6, 8 +/* 802174B4 00214414 B0 01 00 48 */ sth r0, 0x48(r1) +/* 802174B8 00214418 4B E2 E2 79 */ bl CanCreateProjectile__13CStateManagerCF9TUniqueId11EWeaponTypei +/* 802174BC 0021441C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 802174C0 00214420 41 82 04 58 */ beq lbl_80217918 +/* 802174C4 00214424 80 82 B3 54 */ lwz r4, lbl_805AD074@sda21(r2) +/* 802174C8 00214428 38 61 00 DC */ addi r3, r1, 0xdc +/* 802174CC 0021442C 4B DE D7 ED */ bl string_l__4rstlFPCc +/* 802174D0 00214430 7F C4 F3 78 */ mr r4, r30 +/* 802174D4 00214434 38 61 01 74 */ addi r3, r1, 0x174 +/* 802174D8 00214438 38 A1 00 DC */ addi r5, r1, 0xdc +/* 802174DC 0021443C 4B E3 BA 25 */ bl "GetLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 802174E0 00214440 38 61 01 D4 */ addi r3, r1, 0x1d4 +/* 802174E4 00214444 38 81 01 74 */ addi r4, r1, 0x174 +/* 802174E8 00214448 48 0F B6 8D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 802174EC 0021444C 38 61 00 DC */ addi r3, r1, 0xdc +/* 802174F0 00214450 48 12 65 F1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 802174F4 00214454 C0 41 01 E0 */ lfs f2, 0x1e0(r1) +/* 802174F8 00214458 38 61 00 D0 */ addi r3, r1, 0xd0 +/* 802174FC 0021445C C0 21 01 F0 */ lfs f1, 0x1f0(r1) +/* 80217500 00214460 38 9E 00 34 */ addi r4, r30, 0x34 +/* 80217504 00214464 C0 01 02 00 */ lfs f0, 0x200(r1) +/* 80217508 00214468 38 A1 00 C4 */ addi r5, r1, 0xc4 +/* 8021750C 0021446C D0 41 00 C4 */ stfs f2, 0xc4(r1) +/* 80217510 00214470 D0 21 00 C8 */ stfs f1, 0xc8(r1) +/* 80217514 00214474 D0 01 00 CC */ stfs f0, 0xcc(r1) +/* 80217518 00214478 48 0F B5 69 */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 8021751C 0021447C C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 80217520 00214480 38 61 00 F8 */ addi r3, r1, 0xf8 +/* 80217524 00214484 C0 01 00 D4 */ lfs f0, 0xd4(r1) +/* 80217528 00214488 38 81 00 EC */ addi r4, r1, 0xec +/* 8021752C 0021448C C0 7E 00 60 */ lfs f3, 0x60(r30) +/* 80217530 00214490 C0 41 00 D8 */ lfs f2, 0xd8(r1) +/* 80217534 00214494 EC 81 00 2A */ fadds f4, f1, f0 +/* 80217538 00214498 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 8021753C 0021449C C0 01 00 D0 */ lfs f0, 0xd0(r1) +/* 80217540 002144A0 EC 43 10 2A */ fadds f2, f3, f2 +/* 80217544 002144A4 D0 81 01 14 */ stfs f4, 0x114(r1) +/* 80217548 002144A8 EC 21 00 2A */ fadds f1, f1, f0 +/* 8021754C 002144AC D0 41 01 18 */ stfs f2, 0x118(r1) +/* 80217550 002144B0 D0 21 01 10 */ stfs f1, 0x110(r1) +/* 80217554 002144B4 C0 1E 04 04 */ lfs f0, 0x404(r30) +/* 80217558 002144B8 D0 01 01 04 */ stfs f0, 0x104(r1) +/* 8021755C 002144BC EC 00 08 28 */ fsubs f0, f0, f1 +/* 80217560 002144C0 C0 3E 04 08 */ lfs f1, 0x408(r30) +/* 80217564 002144C4 D0 21 01 08 */ stfs f1, 0x108(r1) +/* 80217568 002144C8 EC 61 20 28 */ fsubs f3, f1, f4 +/* 8021756C 002144CC C0 3E 04 0C */ lfs f1, 0x40c(r30) +/* 80217570 002144D0 D0 21 01 0C */ stfs f1, 0x10c(r1) +/* 80217574 002144D4 EC 41 10 28 */ fsubs f2, f1, f2 +/* 80217578 002144D8 C0 BE 00 58 */ lfs f5, 0x58(r30) +/* 8021757C 002144DC C0 9E 00 48 */ lfs f4, 0x48(r30) +/* 80217580 002144E0 C0 3E 00 38 */ lfs f1, 0x38(r30) +/* 80217584 002144E4 D0 21 00 F8 */ stfs f1, 0xf8(r1) +/* 80217588 002144E8 D0 81 00 FC */ stfs f4, 0xfc(r1) +/* 8021758C 002144EC D0 A1 01 00 */ stfs f5, 0x100(r1) +/* 80217590 002144F0 D0 01 00 EC */ stfs f0, 0xec(r1) +/* 80217594 002144F4 D0 61 00 F0 */ stfs f3, 0xf0(r1) +/* 80217598 002144F8 D0 41 00 F4 */ stfs f2, 0xf4(r1) +/* 8021759C 002144FC 48 0F D0 95 */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f +/* 802175A0 00214500 C0 02 B3 74 */ lfs f0, lbl_805AD094@sda21(r2) +/* 802175A4 00214504 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802175A8 00214508 40 81 00 B8 */ ble lbl_80217660 +/* 802175AC 0021450C 38 61 00 EC */ addi r3, r1, 0xec +/* 802175B0 00214510 48 0F D1 49 */ bl CanBeNormalized__9CVector3fCFv +/* 802175B4 00214514 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 802175B8 00214518 41 82 00 74 */ beq lbl_8021762C +/* 802175BC 0021451C C0 02 B3 74 */ lfs f0, lbl_805AD094@sda21(r2) +/* 802175C0 00214520 38 61 00 AC */ addi r3, r1, 0xac +/* 802175C4 00214524 38 81 00 EC */ addi r4, r1, 0xec +/* 802175C8 00214528 D0 01 00 54 */ stfs f0, 0x54(r1) +/* 802175CC 0021452C 48 0F D2 85 */ bl AsNormalized__9CVector3fCFv +/* 802175D0 00214530 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 802175D4 00214534 38 81 00 F8 */ addi r4, r1, 0xf8 +/* 802175D8 00214538 38 A1 00 AC */ addi r5, r1, 0xac +/* 802175DC 0021453C 38 C1 00 54 */ addi r6, r1, 0x54 +/* 802175E0 00214540 48 0F D3 75 */ bl Slerp__9CVector3fFRC9CVector3fRC9CVector3fRC9CRelAngle +/* 802175E4 00214544 C3 E1 00 B8 */ lfs f31, 0xb8(r1) +/* 802175E8 00214548 38 61 00 EC */ addi r3, r1, 0xec +/* 802175EC 0021454C C3 C1 00 BC */ lfs f30, 0xbc(r1) +/* 802175F0 00214550 C3 A1 00 C0 */ lfs f29, 0xc0(r1) +/* 802175F4 00214554 48 0F D2 C5 */ bl Magnitude__9CVector3fCFv +/* 802175F8 00214558 EC 81 07 B2 */ fmuls f4, f1, f30 +/* 802175FC 0021455C C0 A1 01 14 */ lfs f5, 0x114(r1) +/* 80217600 00214560 EC 41 07 72 */ fmuls f2, f1, f29 +/* 80217604 00214564 C0 61 01 18 */ lfs f3, 0x118(r1) +/* 80217608 00214568 EC 01 07 F2 */ fmuls f0, f1, f31 +/* 8021760C 0021456C C0 21 01 10 */ lfs f1, 0x110(r1) +/* 80217610 00214570 EC 85 20 2A */ fadds f4, f5, f4 +/* 80217614 00214574 EC 43 10 2A */ fadds f2, f3, f2 +/* 80217618 00214578 EC 01 00 2A */ fadds f0, f1, f0 +/* 8021761C 0021457C D0 81 01 08 */ stfs f4, 0x108(r1) +/* 80217620 00214580 D0 01 01 04 */ stfs f0, 0x104(r1) +/* 80217624 00214584 D0 41 01 0C */ stfs f2, 0x10c(r1) +/* 80217628 00214588 48 00 00 78 */ b lbl_802176A0 +lbl_8021762C: +/* 8021762C 0021458C C0 21 01 14 */ lfs f1, 0x114(r1) +/* 80217630 00214590 C0 01 00 FC */ lfs f0, 0xfc(r1) +/* 80217634 00214594 C0 61 01 18 */ lfs f3, 0x118(r1) +/* 80217638 00214598 C0 41 01 00 */ lfs f2, 0x100(r1) +/* 8021763C 0021459C EC 81 00 2A */ fadds f4, f1, f0 +/* 80217640 002145A0 C0 21 01 10 */ lfs f1, 0x110(r1) +/* 80217644 002145A4 C0 01 00 F8 */ lfs f0, 0xf8(r1) +/* 80217648 002145A8 EC 43 10 2A */ fadds f2, f3, f2 +/* 8021764C 002145AC D0 81 01 08 */ stfs f4, 0x108(r1) +/* 80217650 002145B0 EC 01 00 2A */ fadds f0, f1, f0 +/* 80217654 002145B4 D0 41 01 0C */ stfs f2, 0x10c(r1) +/* 80217658 002145B8 D0 01 01 04 */ stfs f0, 0x104(r1) +/* 8021765C 002145BC 48 00 00 44 */ b lbl_802176A0 +lbl_80217660: +/* 80217660 002145C0 38 61 00 EC */ addi r3, r1, 0xec +/* 80217664 002145C4 48 0F D0 95 */ bl CanBeNormalized__9CVector3fCFv +/* 80217668 002145C8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8021766C 002145CC 40 82 00 34 */ bne lbl_802176A0 +/* 80217670 002145D0 C0 21 01 14 */ lfs f1, 0x114(r1) +/* 80217674 002145D4 C0 01 00 FC */ lfs f0, 0xfc(r1) +/* 80217678 002145D8 C0 61 01 18 */ lfs f3, 0x118(r1) +/* 8021767C 002145DC C0 41 01 00 */ lfs f2, 0x100(r1) +/* 80217680 002145E0 EC 81 00 2A */ fadds f4, f1, f0 +/* 80217684 002145E4 C0 21 01 10 */ lfs f1, 0x110(r1) +/* 80217688 002145E8 C0 01 00 F8 */ lfs f0, 0xf8(r1) +/* 8021768C 002145EC EC 43 10 2A */ fadds f2, f3, f2 +/* 80217690 002145F0 D0 81 01 08 */ stfs f4, 0x108(r1) +/* 80217694 002145F4 EC 01 00 2A */ fadds f0, f1, f0 +/* 80217698 002145F8 D0 41 01 0C */ stfs f2, 0x10c(r1) +/* 8021769C 002145FC D0 01 01 04 */ stfs f0, 0x104(r1) +lbl_802176A0: +/* 802176A0 00214600 3C 80 80 5A */ lis r4, lbl_805A66F4@ha +/* 802176A4 00214604 38 61 01 44 */ addi r3, r1, 0x144 +/* 802176A8 00214608 38 C4 66 F4 */ addi r6, r4, lbl_805A66F4@l +/* 802176AC 0021460C 38 A1 01 04 */ addi r5, r1, 0x104 +/* 802176B0 00214610 38 81 01 10 */ addi r4, r1, 0x110 +/* 802176B4 00214614 48 0F C4 5D */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 802176B8 00214618 38 61 01 A4 */ addi r3, r1, 0x1a4 +/* 802176BC 0021461C 38 81 01 44 */ addi r4, r1, 0x144 +/* 802176C0 00214620 48 0F B4 B5 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 802176C4 00214624 3C 80 80 3D */ lis r4, lbl_803D2FF0@ha +/* 802176C8 00214628 38 60 03 D8 */ li r3, 0x3d8 +/* 802176CC 0021462C 38 84 2F F0 */ addi r4, r4, lbl_803D2FF0@l +/* 802176D0 00214630 38 A0 00 00 */ li r5, 0 +/* 802176D4 00214634 38 84 00 31 */ addi r4, r4, 0x31 +/* 802176D8 00214638 48 0F E1 95 */ bl __nw__FUlPCcPCc +/* 802176DC 0021463C 7C 7D 1B 79 */ or. r29, r3, r3 +/* 802176E0 00214640 41 82 00 B0 */ beq lbl_80217790 +/* 802176E4 00214644 A3 9E 03 5A */ lhz r28, 0x35a(r30) +/* 802176E8 00214648 7F E4 FB 78 */ mr r4, r31 +/* 802176EC 0021464C C0 02 B3 68 */ lfs f0, lbl_805AD088@sda21(r2) +/* 802176F0 00214650 38 61 00 30 */ addi r3, r1, 0x30 +/* 802176F4 00214654 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 802176F8 00214658 D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 802176FC 0021465C D0 01 00 A4 */ stfs f0, 0xa4(r1) +/* 80217700 00214660 D0 01 00 A8 */ stfs f0, 0xa8(r1) +/* 80217704 00214664 B0 01 00 40 */ sth r0, 0x40(r1) +/* 80217708 00214668 A0 BE 00 08 */ lhz r5, 8(r30) +/* 8021770C 0021466C B0 A1 00 3C */ sth r5, 0x3c(r1) +/* 80217710 00214670 80 1E 00 04 */ lwz r0, 4(r30) +/* 80217714 00214674 B0 A1 00 38 */ sth r5, 0x38(r1) +/* 80217718 00214678 90 01 00 4C */ stw r0, 0x4c(r1) +/* 8021771C 0021467C 90 01 00 50 */ stw r0, 0x50(r1) +/* 80217720 00214680 4B E3 59 BD */ bl AllocateUniqueId__13CStateManagerFv +/* 80217724 00214684 A0 01 00 30 */ lhz r0, 0x30(r1) +/* 80217728 00214688 38 61 00 50 */ addi r3, r1, 0x50 +/* 8021772C 0021468C 38 81 00 3C */ addi r4, r1, 0x3c +/* 80217730 00214690 38 C1 00 40 */ addi r6, r1, 0x40 +/* 80217734 00214694 B0 01 00 34 */ sth r0, 0x34(r1) +/* 80217738 00214698 39 80 00 00 */ li r12, 0 +/* 8021773C 0021469C 39 61 00 A0 */ addi r11, r1, 0xa0 +/* 80217740 002146A0 38 1E 04 58 */ addi r0, r30, 0x458 +/* 80217744 002146A4 90 61 00 08 */ stw r3, 8(r1) +/* 80217748 002146A8 7F A3 EB 78 */ mr r3, r29 +/* 8021774C 002146AC 38 BE 03 7C */ addi r5, r30, 0x37c +/* 80217750 002146B0 38 E1 01 A4 */ addi r7, r1, 0x1a4 +/* 80217754 002146B4 90 81 00 0C */ stw r4, 0xc(r1) +/* 80217758 002146B8 39 3E 03 88 */ addi r9, r30, 0x388 +/* 8021775C 002146BC 39 41 00 34 */ addi r10, r1, 0x34 +/* 80217760 002146C0 38 80 00 01 */ li r4, 1 +/* 80217764 002146C4 90 C1 00 10 */ stw r6, 0x10(r1) +/* 80217768 002146C8 38 C0 00 09 */ li r6, 9 +/* 8021776C 002146CC 39 00 00 21 */ li r8, 0x21 +/* 80217770 002146D0 91 81 00 14 */ stw r12, 0x14(r1) +/* 80217774 002146D4 91 81 00 18 */ stw r12, 0x18(r1) +/* 80217778 002146D8 91 61 00 1C */ stw r11, 0x1c(r1) +/* 8021777C 002146DC 90 01 00 20 */ stw r0, 0x20(r1) +/* 80217780 002146E0 93 81 00 24 */ stw r28, 0x24(r1) +/* 80217784 002146E4 91 81 00 28 */ stw r12, 0x28(r1) +/* 80217788 002146E8 4B FF DF 11 */ bl "__ct__17CEnergyProjectileFbRC28TToken<18CWeaponDescription>11EWeaponTypeRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId7TAreaId9TUniqueId9TUniqueIdUibRC9CVector3fRCQ24rstl50optional_object<31TLockedToken<15CGenDescription>>sb" +/* 8021778C 002146EC 7C 7D 1B 78 */ mr r29, r3 +lbl_80217790: +/* 80217790 002146F0 28 1D 00 00 */ cmplwi r29, 0 +/* 80217794 002146F4 41 82 01 84 */ beq lbl_80217918 +/* 80217798 002146F8 7F E3 FB 78 */ mr r3, r31 +/* 8021779C 002146FC 7F A4 EB 78 */ mr r4, r29 +/* 802177A0 00214700 4B E3 55 55 */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +/* 802177A4 00214704 38 61 00 60 */ addi r3, r1, 0x60 +/* 802177A8 00214708 48 0C B8 D5 */ bl NoParameter__12CPASAnimParmFv +/* 802177AC 0021470C 38 61 00 68 */ addi r3, r1, 0x68 +/* 802177B0 00214710 48 0C B8 CD */ bl NoParameter__12CPASAnimParmFv +/* 802177B4 00214714 38 61 00 70 */ addi r3, r1, 0x70 +/* 802177B8 00214718 48 0C B8 C5 */ bl NoParameter__12CPASAnimParmFv +/* 802177BC 0021471C 38 61 00 78 */ addi r3, r1, 0x78 +/* 802177C0 00214720 48 0C B8 BD */ bl NoParameter__12CPASAnimParmFv +/* 802177C4 00214724 38 61 00 80 */ addi r3, r1, 0x80 +/* 802177C8 00214728 48 0C B8 B5 */ bl NoParameter__12CPASAnimParmFv +/* 802177CC 0021472C 80 1E 05 20 */ lwz r0, 0x520(r30) +/* 802177D0 00214730 3C 60 80 3D */ lis r3, lbl_803D2908@ha +/* 802177D4 00214734 38 83 29 08 */ addi r4, r3, lbl_803D2908@l +/* 802177D8 00214738 38 61 00 88 */ addi r3, r1, 0x88 +/* 802177DC 0021473C 54 00 10 3A */ slwi r0, r0, 2 +/* 802177E0 00214740 7C 84 00 2E */ lwzx r4, r4, r0 +/* 802177E4 00214744 48 0C B7 A1 */ bl FromEnum__12CPASAnimParmFi +/* 802177E8 00214748 C0 22 B3 80 */ lfs f1, lbl_805AD0A0@sda21(r2) +/* 802177EC 0021474C 38 61 00 90 */ addi r3, r1, 0x90 +/* 802177F0 00214750 48 0C B7 F9 */ bl FromReal32__12CPASAnimParmFf +/* 802177F4 00214754 38 61 00 98 */ addi r3, r1, 0x98 +/* 802177F8 00214758 38 80 00 01 */ li r4, 1 +/* 802177FC 0021475C 48 0C B7 89 */ bl FromEnum__12CPASAnimParmFi +/* 80217800 00214760 38 61 00 68 */ addi r3, r1, 0x68 +/* 80217804 00214764 38 01 00 60 */ addi r0, r1, 0x60 +/* 80217808 00214768 90 61 00 08 */ stw r3, 8(r1) +/* 8021780C 0021476C 38 61 02 04 */ addi r3, r1, 0x204 +/* 80217810 00214770 38 A1 00 98 */ addi r5, r1, 0x98 +/* 80217814 00214774 38 C1 00 90 */ addi r6, r1, 0x90 +/* 80217818 00214778 90 01 00 0C */ stw r0, 0xc(r1) +/* 8021781C 0021477C 38 E1 00 88 */ addi r7, r1, 0x88 +/* 80217820 00214780 39 01 00 80 */ addi r8, r1, 0x80 +/* 80217824 00214784 39 21 00 78 */ addi r9, r1, 0x78 +/* 80217828 00214788 39 41 00 70 */ addi r10, r1, 0x70 +/* 8021782C 0021478C 38 80 00 12 */ li r4, 0x12 +/* 80217830 00214790 4B E6 5A 95 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 80217834 00214794 80 9E 00 64 */ lwz r4, 0x64(r30) +/* 80217838 00214798 38 61 00 58 */ addi r3, r1, 0x58 +/* 8021783C 0021479C 38 A1 02 04 */ addi r5, r1, 0x204 +/* 80217840 002147A0 38 C0 FF FF */ li r6, -1 +/* 80217844 002147A4 80 84 00 10 */ lwz r4, 0x10(r4) +/* 80217848 002147A8 38 84 00 3C */ addi r4, r4, 0x3c +/* 8021784C 002147AC 48 0C D9 21 */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDatai +/* 80217850 002147B0 C0 21 00 58 */ lfs f1, 0x58(r1) +/* 80217854 002147B4 C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 80217858 002147B8 83 81 00 5C */ lwz r28, 0x5c(r1) +/* 8021785C 002147BC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80217860 002147C0 40 81 00 5C */ ble lbl_802178BC +/* 80217864 002147C4 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 80217868 002147C8 38 80 00 00 */ li r4, 0 +/* 8021786C 002147CC 4B EF DC F5 */ bl EnableLooping__10CModelDataFb +/* 80217870 002147D0 C0 02 B3 68 */ lfs f0, lbl_805AD088@sda21(r2) +/* 80217874 002147D4 38 00 00 00 */ li r0, 0 +/* 80217878 002147D8 38 C0 FF FF */ li r6, -1 +/* 8021787C 002147DC 38 60 00 01 */ li r3, 1 +/* 80217880 002147E0 93 81 01 1C */ stw r28, 0x11c(r1) +/* 80217884 002147E4 38 81 01 1C */ addi r4, r1, 0x11c +/* 80217888 002147E8 38 A0 00 00 */ li r5, 0 +/* 8021788C 002147EC 90 C1 01 20 */ stw r6, 0x120(r1) +/* 80217890 002147F0 D0 01 01 24 */ stfs f0, 0x124(r1) +/* 80217894 002147F4 98 61 01 28 */ stb r3, 0x128(r1) +/* 80217898 002147F8 90 01 01 2C */ stw r0, 0x12c(r1) +/* 8021789C 002147FC 90 01 01 30 */ stw r0, 0x130(r1) +/* 802178A0 00214800 98 01 01 34 */ stb r0, 0x134(r1) +/* 802178A4 00214804 90 01 01 38 */ stw r0, 0x138(r1) +/* 802178A8 00214808 90 01 01 3C */ stw r0, 0x13c(r1) +/* 802178AC 0021480C 90 01 01 40 */ stw r0, 0x140(r1) +/* 802178B0 00214810 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 802178B4 00214814 80 63 00 10 */ lwz r3, 0x10(r3) +/* 802178B8 00214818 4B E1 54 C5 */ bl SetAnimation__9CAnimDataFRC18CAnimPlaybackParmsb +lbl_802178BC: +/* 802178BC 0021481C 34 A1 02 08 */ addic. r5, r1, 0x208 +/* 802178C0 00214820 41 82 00 58 */ beq lbl_80217918 +/* 802178C4 00214824 80 C5 00 00 */ lwz r6, 0(r5) +/* 802178C8 00214828 38 60 00 00 */ li r3, 0 +/* 802178CC 0021482C 2C 06 00 00 */ cmpwi r6, 0 +/* 802178D0 00214830 40 81 00 40 */ ble lbl_80217910 +/* 802178D4 00214834 2C 06 00 08 */ cmpwi r6, 8 +/* 802178D8 00214838 38 86 FF F8 */ addi r4, r6, -8 +/* 802178DC 0021483C 40 81 00 20 */ ble lbl_802178FC +/* 802178E0 00214840 38 04 00 07 */ addi r0, r4, 7 +/* 802178E4 00214844 54 00 E8 FE */ srwi r0, r0, 3 +/* 802178E8 00214848 7C 09 03 A6 */ mtctr r0 +/* 802178EC 0021484C 2C 04 00 00 */ cmpwi r4, 0 +/* 802178F0 00214850 40 81 00 0C */ ble lbl_802178FC +lbl_802178F4: +/* 802178F4 00214854 38 63 00 08 */ addi r3, r3, 8 +/* 802178F8 00214858 42 00 FF FC */ bdnz lbl_802178F4 +lbl_802178FC: +/* 802178FC 0021485C 7C 03 30 50 */ subf r0, r3, r6 +/* 80217900 00214860 7C 09 03 A6 */ mtctr r0 +/* 80217904 00214864 7C 03 30 00 */ cmpw r3, r6 +/* 80217908 00214868 40 80 00 08 */ bge lbl_80217910 +lbl_8021790C: +/* 8021790C 0021486C 42 00 00 00 */ bdnz lbl_8021790C +lbl_80217910: +/* 80217910 00214870 38 00 00 00 */ li r0, 0 +/* 80217914 00214874 90 05 00 00 */ stw r0, 0(r5) +lbl_80217918: +/* 80217918 00214878 E3 E1 02 88 */ psq_l f31, 648(r1), 0, qr0 +/* 8021791C 0021487C CB E1 02 80 */ lfd f31, 0x280(r1) +/* 80217920 00214880 E3 C1 02 78 */ psq_l f30, 632(r1), 0, qr0 +/* 80217924 00214884 CB C1 02 70 */ lfd f30, 0x270(r1) +/* 80217928 00214888 E3 A1 02 68 */ psq_l f29, 616(r1), 0, qr0 +/* 8021792C 0021488C CB A1 02 60 */ lfd f29, 0x260(r1) +/* 80217930 00214890 83 E1 02 5C */ lwz r31, 0x25c(r1) +/* 80217934 00214894 83 C1 02 58 */ lwz r30, 0x258(r1) +/* 80217938 00214898 83 A1 02 54 */ lwz r29, 0x254(r1) +/* 8021793C 0021489C 80 01 02 94 */ lwz r0, 0x294(r1) +/* 80217940 002148A0 83 81 02 50 */ lwz r28, 0x250(r1) +/* 80217944 002148A4 7C 08 03 A6 */ mtlr r0 +/* 80217948 002148A8 38 21 02 90 */ addi r1, r1, 0x290 +/* 8021794C 002148AC 4E 80 00 20 */ blr + +.global ShouldFire__16CScriptGunTurretCFR13CStateManager +ShouldFire__16CScriptGunTurretCFR13CStateManager: +/* 80217950 002148B0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80217954 002148B4 7C 08 02 A6 */ mflr r0 +/* 80217958 002148B8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8021795C 002148BC 80 03 05 20 */ lwz r0, 0x520(r3) +/* 80217960 002148C0 2C 00 00 09 */ cmpwi r0, 9 +/* 80217964 002148C4 40 82 00 2C */ bne lbl_80217990 +/* 80217968 002148C8 C0 23 05 34 */ lfs f1, 0x534(r3) +/* 8021796C 002148CC C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 80217970 002148D0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80217974 002148D4 4C 40 13 82 */ cror 2, 0, 2 +/* 80217978 002148D8 40 82 00 18 */ bne lbl_80217990 +/* 8021797C 002148DC 88 03 03 B8 */ lbz r0, 0x3b8(r3) +/* 80217980 002148E0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80217984 002148E4 41 82 00 0C */ beq lbl_80217990 +/* 80217988 002148E8 48 00 01 51 */ bl IsPlayerInFiringRange__16CScriptGunTurretCFR13CStateManager +/* 8021798C 002148EC 48 00 00 08 */ b lbl_80217994 +lbl_80217990: +/* 80217990 002148F0 38 60 00 00 */ li r3, 0 +lbl_80217994: +/* 80217994 002148F4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80217998 002148F8 7C 08 03 A6 */ mtlr r0 +/* 8021799C 002148FC 38 21 00 10 */ addi r1, r1, 0x10 +/* 802179A0 00214900 4E 80 00 20 */ blr + +.global InDetectionRange__16CScriptGunTurretCFR13CStateManager +InDetectionRange__16CScriptGunTurretCFR13CStateManager: +/* 802179A4 00214904 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 802179A8 00214908 7C 08 02 A6 */ mflr r0 +/* 802179AC 0021490C 90 01 00 34 */ stw r0, 0x34(r1) +/* 802179B0 00214910 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 802179B4 00214914 7C 9F 23 78 */ mr r31, r4 +/* 802179B8 00214918 93 C1 00 28 */ stw r30, 0x28(r1) +/* 802179BC 0021491C 7C 7E 1B 78 */ mr r30, r3 +/* 802179C0 00214920 3C 60 80 5A */ lis r3, lbl_805A6700@ha +/* 802179C4 00214924 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 802179C8 00214928 38 63 67 00 */ addi r3, r3, lbl_805A6700@l +/* 802179CC 0021492C C0 1E 00 50 */ lfs f0, 0x50(r30) +/* 802179D0 00214930 C0 24 00 50 */ lfs f1, 0x50(r4) +/* 802179D4 00214934 C0 44 00 40 */ lfs f2, 0x40(r4) +/* 802179D8 00214938 EC A1 00 28 */ fsubs f5, f1, f0 +/* 802179DC 0021493C C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 802179E0 00214940 C0 03 00 04 */ lfs f0, 4(r3) +/* 802179E4 00214944 EC 62 08 28 */ fsubs f3, f2, f1 +/* 802179E8 00214948 C0 84 00 60 */ lfs f4, 0x60(r4) +/* 802179EC 0021494C EC 05 00 32 */ fmuls f0, f5, f0 +/* 802179F0 00214950 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 802179F4 00214954 C0 23 00 00 */ lfs f1, 0(r3) +/* 802179F8 00214958 EC 84 10 28 */ fsubs f4, f4, f2 +/* 802179FC 0021495C C0 43 00 08 */ lfs f2, 8(r3) +/* 80217A00 00214960 EC 23 00 7A */ fmadds f1, f3, f1, f0 +/* 80217A04 00214964 C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 80217A08 00214968 D0 61 00 14 */ stfs f3, 0x14(r1) +/* 80217A0C 0021496C EC 24 08 BA */ fmadds f1, f4, f2, f1 +/* 80217A10 00214970 D0 A1 00 18 */ stfs f5, 0x18(r1) +/* 80217A14 00214974 D0 81 00 1C */ stfs f4, 0x1c(r1) +/* 80217A18 00214978 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80217A1C 0021497C 4C 41 13 82 */ cror 2, 1, 2 +/* 80217A20 00214980 41 82 00 38 */ beq lbl_80217A58 +/* 80217A24 00214984 C0 5E 00 58 */ lfs f2, 0x58(r30) +/* 80217A28 00214988 38 61 00 08 */ addi r3, r1, 8 +/* 80217A2C 0021498C C0 3E 00 48 */ lfs f1, 0x48(r30) +/* 80217A30 00214990 38 81 00 14 */ addi r4, r1, 0x14 +/* 80217A34 00214994 C0 1E 00 38 */ lfs f0, 0x38(r30) +/* 80217A38 00214998 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 80217A3C 0021499C D0 01 00 08 */ stfs f0, 8(r1) +/* 80217A40 002149A0 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 80217A44 002149A4 48 0F CB ED */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f +/* 80217A48 002149A8 C0 02 B3 74 */ lfs f0, lbl_805AD094@sda21(r2) +/* 80217A4C 002149AC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80217A50 002149B0 4C 40 13 82 */ cror 2, 0, 2 +/* 80217A54 002149B4 40 82 00 68 */ bne lbl_80217ABC +lbl_80217A58: +/* 80217A58 002149B8 C0 21 00 14 */ lfs f1, 0x14(r1) +/* 80217A5C 002149BC C0 01 00 18 */ lfs f0, 0x18(r1) +/* 80217A60 002149C0 EC 41 00 72 */ fmuls f2, f1, f1 +/* 80217A64 002149C4 C0 81 00 1C */ lfs f4, 0x1c(r1) +/* 80217A68 002149C8 EC 20 00 32 */ fmuls f1, f0, f0 +/* 80217A6C 002149CC C0 1E 03 00 */ lfs f0, 0x300(r30) +/* 80217A70 002149D0 EC 64 01 32 */ fmuls f3, f4, f4 +/* 80217A74 002149D4 EC 00 00 32 */ fmuls f0, f0, f0 +/* 80217A78 002149D8 EC 22 08 2A */ fadds f1, f2, f1 +/* 80217A7C 002149DC EC 23 08 2A */ fadds f1, f3, f1 +/* 80217A80 002149E0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80217A84 002149E4 4C 40 13 82 */ cror 2, 0, 2 +/* 80217A88 002149E8 40 82 00 34 */ bne lbl_80217ABC +/* 80217A8C 002149EC C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 80217A90 002149F0 C0 3E 03 04 */ lfs f1, 0x304(r30) +/* 80217A94 002149F4 FC 00 08 00 */ fcmpu cr0, f0, f1 +/* 80217A98 002149F8 41 82 00 14 */ beq lbl_80217AAC +/* 80217A9C 002149FC FC 00 22 10 */ fabs f0, f4 +/* 80217AA0 00214A00 FC 00 00 18 */ frsp f0, f0 +/* 80217AA4 00214A04 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80217AA8 00214A08 40 80 00 14 */ bge lbl_80217ABC +lbl_80217AAC: +/* 80217AAC 00214A0C 7F C3 F3 78 */ mr r3, r30 +/* 80217AB0 00214A10 7F E4 FB 78 */ mr r4, r31 +/* 80217AB4 00214A14 4B FF E4 F5 */ bl LineOfSightTest__16CScriptGunTurretCFR13CStateManager +/* 80217AB8 00214A18 48 00 00 08 */ b lbl_80217AC0 +lbl_80217ABC: +/* 80217ABC 00214A1C 38 60 00 00 */ li r3, 0 +lbl_80217AC0: +/* 80217AC0 00214A20 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80217AC4 00214A24 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80217AC8 00214A28 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80217ACC 00214A2C 7C 08 03 A6 */ mtlr r0 +/* 80217AD0 00214A30 38 21 00 30 */ addi r1, r1, 0x30 +/* 80217AD4 00214A34 4E 80 00 20 */ blr + +.global IsPlayerInFiringRange__16CScriptGunTurretCFR13CStateManager +IsPlayerInFiringRange__16CScriptGunTurretCFR13CStateManager: +/* 80217AD8 00214A38 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80217ADC 00214A3C 7C 08 02 A6 */ mflr r0 +/* 80217AE0 00214A40 90 01 00 44 */ stw r0, 0x44(r1) +/* 80217AE4 00214A44 DB E1 00 30 */ stfd f31, 0x30(r1) +/* 80217AE8 00214A48 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 80217AEC 00214A4C 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80217AF0 00214A50 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 80217AF4 00214A54 7C 7F 1B 78 */ mr r31, r3 +/* 80217AF8 00214A58 C0 43 00 50 */ lfs f2, 0x50(r3) +/* 80217AFC 00214A5C 38 61 00 08 */ addi r3, r1, 8 +/* 80217B00 00214A60 C0 64 00 50 */ lfs f3, 0x50(r4) +/* 80217B04 00214A64 C0 24 00 40 */ lfs f1, 0x40(r4) +/* 80217B08 00214A68 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 80217B0C 00214A6C EC 43 10 28 */ fsubs f2, f3, f2 +/* 80217B10 00214A70 C0 64 00 60 */ lfs f3, 0x60(r4) +/* 80217B14 00214A74 EC 21 00 28 */ fsubs f1, f1, f0 +/* 80217B18 00214A78 C0 1F 00 60 */ lfs f0, 0x60(r31) +/* 80217B1C 00214A7C D0 41 00 20 */ stfs f2, 0x20(r1) +/* 80217B20 00214A80 EC 03 00 28 */ fsubs f0, f3, f0 +/* 80217B24 00214A84 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 80217B28 00214A88 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 80217B2C 00214A8C 48 0F C6 D5 */ bl __ct__9CVector2fFff +/* 80217B30 00214A90 C0 3F 05 54 */ lfs f1, 0x554(r31) +/* 80217B34 00214A94 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 80217B38 00214A98 C0 62 B3 5C */ lfs f3, lbl_805AD07C@sda21(r2) +/* 80217B3C 00214A9C EC 01 00 32 */ fmuls f0, f1, f0 +/* 80217B40 00214AA0 C0 5F 05 50 */ lfs f2, 0x550(r31) +/* 80217B44 00214AA4 C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 80217B48 00214AA8 C0 A1 00 08 */ lfs f5, 8(r1) +/* 80217B4C 00214AAC EC 02 00 7A */ fmadds f0, f2, f1, f0 +/* 80217B50 00214AB0 C0 5F 05 58 */ lfs f2, 0x558(r31) +/* 80217B54 00214AB4 C0 21 00 24 */ lfs f1, 0x24(r1) +/* 80217B58 00214AB8 C0 81 00 0C */ lfs f4, 0xc(r1) +/* 80217B5C 00214ABC EC 02 00 7A */ fmadds f0, f2, f1, f0 +/* 80217B60 00214AC0 D0 A1 00 10 */ stfs f5, 0x10(r1) +/* 80217B64 00214AC4 D0 81 00 14 */ stfs f4, 0x14(r1) +/* 80217B68 00214AC8 FC 00 18 40 */ fcmpo cr0, f0, f3 +/* 80217B6C 00214ACC D0 61 00 18 */ stfs f3, 0x18(r1) +/* 80217B70 00214AD0 4C 41 13 82 */ cror 2, 1, 2 +/* 80217B74 00214AD4 40 82 00 28 */ bne lbl_80217B9C +/* 80217B78 00214AD8 C3 FF 02 F4 */ lfs f31, 0x2f4(r31) +/* 80217B7C 00214ADC 38 7F 05 44 */ addi r3, r31, 0x544 +/* 80217B80 00214AE0 38 81 00 10 */ addi r4, r1, 0x10 +/* 80217B84 00214AE4 48 0F CA AD */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f +/* 80217B88 00214AE8 FC 01 F8 40 */ fcmpo cr0, f1, f31 +/* 80217B8C 00214AEC 4C 40 13 82 */ cror 2, 0, 2 +/* 80217B90 00214AF0 7C 00 00 26 */ mfcr r0 +/* 80217B94 00214AF4 54 03 1F FE */ rlwinm r3, r0, 3, 0x1f, 0x1f +/* 80217B98 00214AF8 48 00 00 24 */ b lbl_80217BBC +lbl_80217B9C: +/* 80217B9C 00214AFC C3 FF 02 F0 */ lfs f31, 0x2f0(r31) +/* 80217BA0 00214B00 38 7F 05 44 */ addi r3, r31, 0x544 +/* 80217BA4 00214B04 38 81 00 10 */ addi r4, r1, 0x10 +/* 80217BA8 00214B08 48 0F CA 89 */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f +/* 80217BAC 00214B0C FC 01 F8 40 */ fcmpo cr0, f1, f31 +/* 80217BB0 00214B10 4C 40 13 82 */ cror 2, 0, 2 +/* 80217BB4 00214B14 7C 00 00 26 */ mfcr r0 +/* 80217BB8 00214B18 54 03 1F FE */ rlwinm r3, r0, 3, 0x1f, 0x1f +lbl_80217BBC: +/* 80217BBC 00214B1C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80217BC0 00214B20 41 82 00 48 */ beq lbl_80217C08 +/* 80217BC4 00214B24 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 80217BC8 00214B28 38 81 00 1C */ addi r4, r1, 0x1c +/* 80217BCC 00214B2C 38 63 66 F4 */ addi r3, r3, lbl_805A66F4@l +/* 80217BD0 00214B30 48 0F CA 61 */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f +/* 80217BD4 00214B34 C0 42 B3 84 */ lfs f2, lbl_805AD0A4@sda21(r2) +/* 80217BD8 00214B38 38 00 00 00 */ li r0, 0 +/* 80217BDC 00214B3C C0 02 B3 88 */ lfs f0, lbl_805AD0A8@sda21(r2) +/* 80217BE0 00214B40 EC 21 10 28 */ fsubs f1, f1, f2 +/* 80217BE4 00214B44 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80217BE8 00214B48 4C 41 13 82 */ cror 2, 1, 2 +/* 80217BEC 00214B4C 40 82 00 18 */ bne lbl_80217C04 +/* 80217BF0 00214B50 C0 1F 02 F8 */ lfs f0, 0x2f8(r31) +/* 80217BF4 00214B54 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80217BF8 00214B58 4C 40 13 82 */ cror 2, 0, 2 +/* 80217BFC 00214B5C 40 82 00 08 */ bne lbl_80217C04 +/* 80217C00 00214B60 38 00 00 01 */ li r0, 1 +lbl_80217C04: +/* 80217C04 00214B64 7C 03 03 78 */ mr r3, r0 +lbl_80217C08: +/* 80217C08 00214B68 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 80217C0C 00214B6C 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80217C10 00214B70 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 80217C14 00214B74 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80217C18 00214B78 7C 08 03 A6 */ mtlr r0 +/* 80217C1C 00214B7C 38 21 00 40 */ addi r1, r1, 0x40 +/* 80217C20 00214B80 4E 80 00 20 */ blr + +.global IsInsignificantRotation__16CScriptGunTurretCFf +IsInsignificantRotation__16CScriptGunTurretCFf: +/* 80217C24 00214B84 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80217C28 00214B88 7C 08 02 A6 */ mflr r0 +/* 80217C2C 00214B8C 90 01 00 54 */ stw r0, 0x54(r1) +/* 80217C30 00214B90 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 80217C34 00214B94 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 80217C38 00214B98 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80217C3C 00214B9C 7C 7F 1B 78 */ mr r31, r3 +/* 80217C40 00214BA0 C0 43 00 48 */ lfs f2, 0x48(r3) +/* 80217C44 00214BA4 FF E0 08 90 */ fmr f31, f1 +/* 80217C48 00214BA8 C0 3F 00 38 */ lfs f1, 0x38(r31) +/* 80217C4C 00214BAC C0 1F 00 58 */ lfs f0, 0x58(r31) +/* 80217C50 00214BB0 38 61 00 10 */ addi r3, r1, 0x10 +/* 80217C54 00214BB4 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 80217C58 00214BB8 D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 80217C5C 00214BBC D0 01 00 30 */ stfs f0, 0x30(r1) +/* 80217C60 00214BC0 48 0F C5 A1 */ bl __ct__9CVector2fFff +/* 80217C64 00214BC4 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 80217C68 00214BC8 38 61 00 08 */ addi r3, r1, 8 +/* 80217C6C 00214BCC C0 01 00 14 */ lfs f0, 0x14(r1) +/* 80217C70 00214BD0 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 80217C74 00214BD4 C0 3F 05 14 */ lfs f1, 0x514(r31) +/* 80217C78 00214BD8 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 80217C7C 00214BDC C0 5F 05 18 */ lfs f2, 0x518(r31) +/* 80217C80 00214BE0 48 0F C5 81 */ bl __ct__9CVector2fFff +/* 80217C84 00214BE4 C0 21 00 08 */ lfs f1, 8(r1) +/* 80217C88 00214BE8 38 61 00 18 */ addi r3, r1, 0x18 +/* 80217C8C 00214BEC C0 01 00 0C */ lfs f0, 0xc(r1) +/* 80217C90 00214BF0 38 81 00 20 */ addi r4, r1, 0x20 +/* 80217C94 00214BF4 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 80217C98 00214BF8 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 80217C9C 00214BFC 48 0F C3 29 */ bl GetAngleDiff__9CVector2fFRC9CVector2fRC9CVector2f +/* 80217CA0 00214C00 C0 02 B3 8C */ lfs f0, lbl_805AD0AC@sda21(r2) +/* 80217CA4 00214C04 EC 00 07 F2 */ fmuls f0, f0, f31 +/* 80217CA8 00214C08 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80217CAC 00214C0C 7C 00 00 26 */ mfcr r0 +/* 80217CB0 00214C10 54 03 0F FE */ srwi r3, r0, 0x1f +/* 80217CB4 00214C14 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 80217CB8 00214C18 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80217CBC 00214C1C CB E1 00 40 */ lfd f31, 0x40(r1) +/* 80217CC0 00214C20 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 80217CC4 00214C24 7C 08 03 A6 */ mtlr r0 +/* 80217CC8 00214C28 38 21 00 50 */ addi r1, r1, 0x50 +/* 80217CCC 00214C2C 4E 80 00 20 */ blr + +.global UpdateHealthInfo__16CScriptGunTurretFR13CStateManager +UpdateHealthInfo__16CScriptGunTurretFR13CStateManager: +/* 80217CD0 00214C30 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80217CD4 00214C34 7C 08 02 A6 */ mflr r0 +/* 80217CD8 00214C38 90 01 00 34 */ stw r0, 0x34(r1) +/* 80217CDC 00214C3C 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80217CE0 00214C40 7C 7F 1B 78 */ mr r31, r3 +/* 80217CE4 00214C44 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80217CE8 00214C48 7C 9E 23 78 */ mr r30, r4 +/* 80217CEC 00214C4C 80 03 02 58 */ lwz r0, 0x258(r3) +/* 80217CF0 00214C50 2C 00 00 01 */ cmpwi r0, 1 +/* 80217CF4 00214C54 41 82 00 B0 */ beq lbl_80217DA4 +/* 80217CF8 00214C58 40 80 01 24 */ bge lbl_80217E1C +/* 80217CFC 00214C5C 2C 00 00 00 */ cmpwi r0, 0 +/* 80217D00 00214C60 40 80 00 08 */ bge lbl_80217D08 +/* 80217D04 00214C64 48 00 01 18 */ b lbl_80217E1C +lbl_80217D08: +/* 80217D08 00214C68 A0 9F 02 5C */ lhz r4, 0x25c(r31) +/* 80217D0C 00214C6C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80217D10 00214C70 7C 04 00 40 */ cmplw r4, r0 +/* 80217D14 00214C74 41 82 00 80 */ beq lbl_80217D94 +/* 80217D18 00214C78 A0 1F 02 5C */ lhz r0, 0x25c(r31) +/* 80217D1C 00214C7C 7F C3 F3 78 */ mr r3, r30 +/* 80217D20 00214C80 38 81 00 10 */ addi r4, r1, 0x10 +/* 80217D24 00214C84 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80217D28 00214C88 4B E3 48 4D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80217D2C 00214C8C 7C 64 1B 78 */ mr r4, r3 +/* 80217D30 00214C90 38 61 00 18 */ addi r3, r1, 0x18 +/* 80217D34 00214C94 4B E9 1A 81 */ bl "__ct__30TCastToPtr<16CScriptGunTurret>FP7CEntity" +/* 80217D38 00214C98 80 03 00 04 */ lwz r0, 4(r3) +/* 80217D3C 00214C9C 28 00 00 00 */ cmplwi r0, 0 +/* 80217D40 00214CA0 40 82 00 DC */ bne lbl_80217E1C +/* 80217D44 00214CA4 7F E3 FB 78 */ mr r3, r31 +/* 80217D48 00214CA8 7F C5 F3 78 */ mr r5, r30 +/* 80217D4C 00214CAC 38 80 00 00 */ li r4, 0 +/* 80217D50 00214CB0 48 00 1D C9 */ bl SetTurretState__16CScriptGunTurretFQ216CScriptGunTurret12ETurretState +/* 80217D54 00214CB4 88 1F 05 60 */ lbz r0, 0x560(r31) +/* 80217D58 00214CB8 38 60 00 00 */ li r3, 0 +/* 80217D5C 00214CBC 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 80217D60 00214CC0 98 1F 05 60 */ stb r0, 0x560(r31) +/* 80217D64 00214CC4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80217D68 00214CC8 B0 1F 02 5C */ sth r0, 0x25c(r31) +/* 80217D6C 00214CCC 80 1F 05 0C */ lwz r0, 0x50c(r31) +/* 80217D70 00214CD0 28 00 00 00 */ cmplwi r0, 0 +/* 80217D74 00214CD4 41 82 00 A8 */ beq lbl_80217E1C +/* 80217D78 00214CD8 80 1F 05 0C */ lwz r0, 0x50c(r31) +/* 80217D7C 00214CDC 38 61 00 14 */ addi r3, r1, 0x14 +/* 80217D80 00214CE0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80217D84 00214CE4 48 0D 21 01 */ bl RemoveEmitter__11CSfxManagerFRC10CSfxHandle +/* 80217D88 00214CE8 38 00 00 00 */ li r0, 0 +/* 80217D8C 00214CEC 90 1F 05 0C */ stw r0, 0x50c(r31) +/* 80217D90 00214CF0 48 00 00 8C */ b lbl_80217E1C +lbl_80217D94: +/* 80217D94 00214CF4 7F C5 F3 78 */ mr r5, r30 +/* 80217D98 00214CF8 38 80 00 00 */ li r4, 0 +/* 80217D9C 00214CFC 48 00 1D 7D */ bl SetTurretState__16CScriptGunTurretFQ216CScriptGunTurret12ETurretState +/* 80217DA0 00214D00 48 00 00 7C */ b lbl_80217E1C +lbl_80217DA4: +/* 80217DA4 00214D04 88 1F 05 60 */ lbz r0, 0x560(r31) +/* 80217DA8 00214D08 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80217DAC 00214D0C 40 82 00 70 */ bne lbl_80217E1C +/* 80217DB0 00214D10 80 1F 05 20 */ lwz r0, 0x520(r31) +/* 80217DB4 00214D14 2C 00 00 0C */ cmpwi r0, 0xc +/* 80217DB8 00214D18 41 82 00 64 */ beq lbl_80217E1C +/* 80217DBC 00214D1C 81 83 00 00 */ lwz r12, 0(r3) +/* 80217DC0 00214D20 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80217DC4 00214D24 7D 89 03 A6 */ mtctr r12 +/* 80217DC8 00214D28 4E 80 04 21 */ bctrl +/* 80217DCC 00214D2C C0 23 00 00 */ lfs f1, 0(r3) +/* 80217DD0 00214D30 C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 80217DD4 00214D34 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80217DD8 00214D38 4C 40 13 82 */ cror 2, 0, 2 +/* 80217DDC 00214D3C 40 82 00 40 */ bne lbl_80217E1C +/* 80217DE0 00214D40 88 1F 05 60 */ lbz r0, 0x560(r31) +/* 80217DE4 00214D44 38 60 00 01 */ li r3, 1 +/* 80217DE8 00214D48 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80217DEC 00214D4C 7F E3 FB 78 */ mr r3, r31 +/* 80217DF0 00214D50 98 1F 05 60 */ stb r0, 0x560(r31) +/* 80217DF4 00214D54 7F C5 F3 78 */ mr r5, r30 +/* 80217DF8 00214D58 38 80 00 0E */ li r4, 0xe +/* 80217DFC 00214D5C 38 C0 FF FF */ li r6, -1 +/* 80217E00 00214D60 4B E3 92 C1 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 80217E04 00214D64 A0 1F 00 08 */ lhz r0, 8(r31) +/* 80217E08 00214D68 7F C3 F3 78 */ mr r3, r30 +/* 80217E0C 00214D6C 38 81 00 0C */ addi r4, r1, 0xc +/* 80217E10 00214D70 B0 01 00 08 */ sth r0, 8(r1) +/* 80217E14 00214D74 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80217E18 00214D78 4B E3 44 55 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +lbl_80217E1C: +/* 80217E1C 00214D7C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80217E20 00214D80 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80217E24 00214D84 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80217E28 00214D88 7C 08 03 A6 */ mtlr r0 +/* 80217E2C 00214D8C 38 21 00 30 */ addi r1, r1, 0x30 +/* 80217E30 00214D90 4E 80 00 20 */ blr + +.global UpdateExtensionModelState__16CScriptGunTurretFf +UpdateExtensionModelState__16CScriptGunTurretFf: +/* 80217E34 00214D94 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80217E38 00214D98 3C A0 80 5A */ lis r5, skZero3f@ha +/* 80217E3C 00214D9C 88 04 04 F0 */ lbz r0, 0x4f0(r4) +/* 80217E40 00214DA0 C4 85 66 A0 */ lfsu f4, skZero3f@l(r5) +/* 80217E44 00214DA4 28 00 00 00 */ cmplwi r0, 0 +/* 80217E48 00214DA8 C0 45 00 04 */ lfs f2, 4(r5) +/* 80217E4C 00214DAC C0 05 00 08 */ lfs f0, 8(r5) +/* 80217E50 00214DB0 41 82 00 F8 */ beq lbl_80217F48 +/* 80217E54 00214DB4 C0 02 B3 90 */ lfs f0, lbl_805AD0B0@sda21(r2) +/* 80217E58 00214DB8 80 04 05 20 */ lwz r0, 0x520(r4) +/* 80217E5C 00214DBC EC 40 00 72 */ fmuls f2, f0, f1 +/* 80217E60 00214DC0 2C 00 00 06 */ cmpwi r0, 6 +/* 80217E64 00214DC4 41 82 00 84 */ beq lbl_80217EE8 +/* 80217E68 00214DC8 40 80 00 18 */ bge lbl_80217E80 +/* 80217E6C 00214DCC 2C 00 00 05 */ cmpwi r0, 5 +/* 80217E70 00214DD0 40 80 00 4C */ bge lbl_80217EBC +/* 80217E74 00214DD4 2C 00 00 03 */ cmpwi r0, 3 +/* 80217E78 00214DD8 40 80 00 70 */ bge lbl_80217EE8 +/* 80217E7C 00214DDC 48 00 00 40 */ b lbl_80217EBC +lbl_80217E80: +/* 80217E80 00214DE0 2C 00 00 0C */ cmpwi r0, 0xc +/* 80217E84 00214DE4 41 82 00 64 */ beq lbl_80217EE8 +/* 80217E88 00214DE8 40 80 00 34 */ bge lbl_80217EBC +/* 80217E8C 00214DEC C0 24 04 F8 */ lfs f1, 0x4f8(r4) +/* 80217E90 00214DF0 C0 02 B3 4C */ lfs f0, lbl_805AD06C@sda21(r2) +/* 80217E94 00214DF4 EC 21 10 2A */ fadds f1, f1, f2 +/* 80217E98 00214DF8 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80217E9C 00214DFC D0 21 00 0C */ stfs f1, 0xc(r1) +/* 80217EA0 00214E00 40 80 00 0C */ bge lbl_80217EAC +/* 80217EA4 00214E04 38 A2 B3 4C */ addi r5, r2, lbl_805AD06C@sda21 +/* 80217EA8 00214E08 48 00 00 08 */ b lbl_80217EB0 +lbl_80217EAC: +/* 80217EAC 00214E0C 38 A1 00 0C */ addi r5, r1, 0xc +lbl_80217EB0: +/* 80217EB0 00214E10 C0 05 00 00 */ lfs f0, 0(r5) +/* 80217EB4 00214E14 D0 04 04 F8 */ stfs f0, 0x4f8(r4) +/* 80217EB8 00214E18 48 00 00 30 */ b lbl_80217EE8 +lbl_80217EBC: +/* 80217EBC 00214E1C C0 24 04 F8 */ lfs f1, 0x4f8(r4) +/* 80217EC0 00214E20 C0 0D 94 F4 */ lfs f0, lbl_805A80B4@sda21(r13) +/* 80217EC4 00214E24 EC 21 10 28 */ fsubs f1, f1, f2 +/* 80217EC8 00214E28 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80217ECC 00214E2C D0 21 00 08 */ stfs f1, 8(r1) +/* 80217ED0 00214E30 40 80 00 0C */ bge lbl_80217EDC +/* 80217ED4 00214E34 38 A1 00 08 */ addi r5, r1, 8 +/* 80217ED8 00214E38 48 00 00 08 */ b lbl_80217EE0 +lbl_80217EDC: +/* 80217EDC 00214E3C 38 AD 94 F4 */ addi r5, r13, lbl_805A80B4@sda21 +lbl_80217EE0: +/* 80217EE0 00214E40 C0 05 00 00 */ lfs f0, 0(r5) +/* 80217EE4 00214E44 D0 04 04 F8 */ stfs f0, 0x4f8(r4) +lbl_80217EE8: +/* 80217EE8 00214E48 3C A0 80 5A */ lis r5, lbl_805A6700@ha +/* 80217EEC 00214E4C C4 45 67 00 */ lfsu f2, lbl_805A6700@l(r5) +/* 80217EF0 00214E50 C0 64 04 F8 */ lfs f3, 0x4f8(r4) +/* 80217EF4 00214E54 C0 25 00 04 */ lfs f1, 4(r5) +/* 80217EF8 00214E58 C0 05 00 08 */ lfs f0, 8(r5) +/* 80217EFC 00214E5C EC 43 00 B2 */ fmuls f2, f3, f2 +/* 80217F00 00214E60 EC 23 00 72 */ fmuls f1, f3, f1 +/* 80217F04 00214E64 C0 C4 03 60 */ lfs f6, 0x360(r4) +/* 80217F08 00214E68 EC 03 00 32 */ fmuls f0, f3, f0 +/* 80217F0C 00214E6C C0 A4 04 FC */ lfs f5, 0x4fc(r4) +/* 80217F10 00214E70 EC 86 00 B2 */ fmuls f4, f6, f2 +/* 80217F14 00214E74 EC 46 00 72 */ fmuls f2, f6, f1 +/* 80217F18 00214E78 C0 64 05 00 */ lfs f3, 0x500(r4) +/* 80217F1C 00214E7C EC 06 00 32 */ fmuls f0, f6, f0 +/* 80217F20 00214E80 C0 24 05 04 */ lfs f1, 0x504(r4) +/* 80217F24 00214E84 EC A5 20 2A */ fadds f5, f5, f4 +/* 80217F28 00214E88 EC 63 10 2A */ fadds f3, f3, f2 +/* 80217F2C 00214E8C EC 21 00 2A */ fadds f1, f1, f0 +/* 80217F30 00214E90 C0 84 00 40 */ lfs f4, 0x40(r4) +/* 80217F34 00214E94 C0 44 00 50 */ lfs f2, 0x50(r4) +/* 80217F38 00214E98 C0 04 00 60 */ lfs f0, 0x60(r4) +/* 80217F3C 00214E9C EC 85 20 28 */ fsubs f4, f5, f4 +/* 80217F40 00214EA0 EC 43 10 28 */ fsubs f2, f3, f2 +/* 80217F44 00214EA4 EC 01 00 28 */ fsubs f0, f1, f0 +lbl_80217F48: +/* 80217F48 00214EA8 D0 83 00 00 */ stfs f4, 0(r3) +/* 80217F4C 00214EAC D0 43 00 04 */ stfs f2, 4(r3) +/* 80217F50 00214EB0 D0 03 00 08 */ stfs f0, 8(r3) +/* 80217F54 00214EB4 38 21 00 10 */ addi r1, r1, 0x10 +/* 80217F58 00214EB8 4E 80 00 20 */ blr + +.global UpdateGunOrientation__16CScriptGunTurretFfR13CStateManager +UpdateGunOrientation__16CScriptGunTurretFfR13CStateManager: +/* 80217F5C 00214EBC 94 21 FB D0 */ stwu r1, -0x430(r1) +/* 80217F60 00214EC0 7C 08 02 A6 */ mflr r0 +/* 80217F64 00214EC4 90 01 04 34 */ stw r0, 0x434(r1) +/* 80217F68 00214EC8 DB E1 04 20 */ stfd f31, 0x420(r1) +/* 80217F6C 00214ECC F3 E1 04 28 */ psq_st f31, 1064(r1), 0, qr0 +/* 80217F70 00214ED0 DB C1 04 10 */ stfd f30, 0x410(r1) +/* 80217F74 00214ED4 F3 C1 04 18 */ psq_st f30, 1048(r1), 0, qr0 +/* 80217F78 00214ED8 DB A1 04 00 */ stfd f29, 0x400(r1) +/* 80217F7C 00214EDC F3 A1 04 08 */ psq_st f29, 1032(r1), 0, qr0 +/* 80217F80 00214EE0 DB 81 03 F0 */ stfd f28, 0x3f0(r1) +/* 80217F84 00214EE4 F3 81 03 F8 */ psq_st f28, 1016(r1), 0, qr0 +/* 80217F88 00214EE8 93 E1 03 EC */ stw r31, 0x3ec(r1) +/* 80217F8C 00214EEC 93 C1 03 E8 */ stw r30, 0x3e8(r1) +/* 80217F90 00214EF0 93 A1 03 E4 */ stw r29, 0x3e4(r1) +/* 80217F94 00214EF4 7C 7E 1B 78 */ mr r30, r3 +/* 80217F98 00214EF8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80217F9C 00214EFC A0 63 02 5C */ lhz r3, 0x25c(r3) +/* 80217FA0 00214F00 FF A0 08 90 */ fmr f29, f1 +/* 80217FA4 00214F04 7C 9D 23 78 */ mr r29, r4 +/* 80217FA8 00214F08 7C 03 00 40 */ cmplw r3, r0 +/* 80217FAC 00214F0C 41 82 08 48 */ beq lbl_802187F4 +/* 80217FB0 00214F10 A0 1E 02 5C */ lhz r0, 0x25c(r30) +/* 80217FB4 00214F14 7F A3 EB 78 */ mr r3, r29 +/* 80217FB8 00214F18 38 81 00 08 */ addi r4, r1, 8 +/* 80217FBC 00214F1C B0 01 00 08 */ sth r0, 8(r1) +/* 80217FC0 00214F20 4B E3 45 B5 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80217FC4 00214F24 7C 64 1B 78 */ mr r4, r3 +/* 80217FC8 00214F28 38 61 00 40 */ addi r3, r1, 0x40 +/* 80217FCC 00214F2C 4B E9 17 E9 */ bl "__ct__30TCastToPtr<16CScriptGunTurret>FP7CEntity" +/* 80217FD0 00214F30 83 E3 00 04 */ lwz r31, 4(r3) +/* 80217FD4 00214F34 28 1F 00 00 */ cmplwi r31, 0 +/* 80217FD8 00214F38 41 82 08 1C */ beq lbl_802187F4 +/* 80217FDC 00214F3C 80 82 B3 50 */ lwz r4, lbl_805AD070@sda21(r2) +/* 80217FE0 00214F40 38 61 01 90 */ addi r3, r1, 0x190 +/* 80217FE4 00214F44 4B DE CC D5 */ bl string_l__4rstlFPCc +/* 80217FE8 00214F48 7F C4 F3 78 */ mr r4, r30 +/* 80217FEC 00214F4C 38 61 03 1C */ addi r3, r1, 0x31c +/* 80217FF0 00214F50 38 A1 01 90 */ addi r5, r1, 0x190 +/* 80217FF4 00214F54 4B E3 AF 0D */ bl "GetLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80217FF8 00214F58 38 61 03 4C */ addi r3, r1, 0x34c +/* 80217FFC 00214F5C 38 9E 00 34 */ addi r4, r30, 0x34 +/* 80218000 00214F60 38 A1 03 1C */ addi r5, r1, 0x31c +/* 80218004 00214F64 48 0F A9 4D */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80218008 00214F68 38 61 03 AC */ addi r3, r1, 0x3ac +/* 8021800C 00214F6C 38 81 03 4C */ addi r4, r1, 0x34c +/* 80218010 00214F70 48 0F AB 65 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80218014 00214F74 38 61 01 90 */ addi r3, r1, 0x190 +/* 80218018 00214F78 48 12 5A C9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8021801C 00214F7C 80 1E 05 20 */ lwz r0, 0x520(r30) +/* 80218020 00214F80 2C 00 00 0B */ cmpwi r0, 0xb +/* 80218024 00214F84 41 82 03 04 */ beq lbl_80218328 +/* 80218028 00214F88 40 80 00 10 */ bge lbl_80218038 +/* 8021802C 00214F8C 2C 00 00 09 */ cmpwi r0, 9 +/* 80218030 00214F90 40 80 00 14 */ bge lbl_80218044 +/* 80218034 00214F94 48 00 07 8C */ b lbl_802187C0 +lbl_80218038: +/* 80218038 00214F98 2C 00 00 0D */ cmpwi r0, 0xd +/* 8021803C 00214F9C 40 80 07 84 */ bge lbl_802187C0 +/* 80218040 00214FA0 48 00 04 4C */ b lbl_8021848C +lbl_80218044: +/* 80218044 00214FA4 C0 01 03 B0 */ lfs f0, 0x3b0(r1) +/* 80218048 00214FA8 C0 61 03 D8 */ lfs f3, 0x3d8(r1) +/* 8021804C 00214FAC EC 00 00 32 */ fmuls f0, f0, f0 +/* 80218050 00214FB0 C0 81 03 C0 */ lfs f4, 0x3c0(r1) +/* 80218054 00214FB4 C0 41 03 B8 */ lfs f2, 0x3b8(r1) +/* 80218058 00214FB8 C0 21 03 C8 */ lfs f1, 0x3c8(r1) +/* 8021805C 00214FBC EC 84 01 3A */ fmadds f4, f4, f4, f0 +/* 80218060 00214FC0 C8 02 B3 98 */ lfd f0, lbl_805AD0B8@sda21(r2) +/* 80218064 00214FC4 D0 41 02 38 */ stfs f2, 0x238(r1) +/* 80218068 00214FC8 C3 C2 B3 5C */ lfs f30, lbl_805AD07C@sda21(r2) +/* 8021806C 00214FCC FC 04 00 40 */ fcmpo cr0, f4, f0 +/* 80218070 00214FD0 D0 21 02 3C */ stfs f1, 0x23c(r1) +/* 80218074 00214FD4 D0 61 02 40 */ stfs f3, 0x240(r1) +/* 80218078 00214FD8 40 81 00 58 */ ble lbl_802180D0 +/* 8021807C 00214FDC FC 20 20 34 */ frsqrte f1, f4 +/* 80218080 00214FE0 C8 62 B3 A0 */ lfd f3, lbl_805AD0C0@sda21(r2) +/* 80218084 00214FE4 C8 42 B3 A8 */ lfd f2, lbl_805AD0C8@sda21(r2) +/* 80218088 00214FE8 FC 01 00 72 */ fmul f0, f1, f1 +/* 8021808C 00214FEC FC 23 00 72 */ fmul f1, f3, f1 +/* 80218090 00214FF0 FC 04 10 3C */ fnmsub f0, f4, f0, f2 +/* 80218094 00214FF4 FC 21 00 32 */ fmul f1, f1, f0 +/* 80218098 00214FF8 FC 01 00 72 */ fmul f0, f1, f1 +/* 8021809C 00214FFC FC 23 00 72 */ fmul f1, f3, f1 +/* 802180A0 00215000 FC 04 10 3C */ fnmsub f0, f4, f0, f2 +/* 802180A4 00215004 FC 21 00 32 */ fmul f1, f1, f0 +/* 802180A8 00215008 FC 01 00 72 */ fmul f0, f1, f1 +/* 802180AC 0021500C FC 23 00 72 */ fmul f1, f3, f1 +/* 802180B0 00215010 FC 04 10 3C */ fnmsub f0, f4, f0, f2 +/* 802180B4 00215014 FC 21 00 32 */ fmul f1, f1, f0 +/* 802180B8 00215018 FC 01 00 72 */ fmul f0, f1, f1 +/* 802180BC 0021501C FC 23 00 72 */ fmul f1, f3, f1 +/* 802180C0 00215020 FC 04 10 3C */ fnmsub f0, f4, f0, f2 +/* 802180C4 00215024 FC 01 00 32 */ fmul f0, f1, f0 +/* 802180C8 00215028 FC 04 00 32 */ fmul f0, f4, f0 +/* 802180CC 0021502C 48 00 00 2C */ b lbl_802180F8 +lbl_802180D0: +/* 802180D0 00215030 FC 00 20 00 */ fcmpu cr0, f0, f4 +/* 802180D4 00215034 40 82 00 08 */ bne lbl_802180DC +/* 802180D8 00215038 48 00 00 20 */ b lbl_802180F8 +lbl_802180DC: +/* 802180DC 0021503C FC 04 00 00 */ fcmpu cr0, f4, f0 +/* 802180E0 00215040 41 82 00 10 */ beq lbl_802180F0 +/* 802180E4 00215044 3C 60 80 5B */ lis r3, lbl_805A8BA0@ha +/* 802180E8 00215048 C0 03 8B A0 */ lfs f0, lbl_805A8BA0@l(r3) +/* 802180EC 0021504C 48 00 00 0C */ b lbl_802180F8 +lbl_802180F0: +/* 802180F0 00215050 3C 60 80 5B */ lis r3, lbl_805A8BA4@ha +/* 802180F4 00215054 C0 03 8B A4 */ lfs f0, lbl_805A8BA4@l(r3) +lbl_802180F8: +/* 802180F8 00215058 FC 20 00 18 */ frsp f1, f0 +/* 802180FC 0021505C C0 02 B3 B0 */ lfs f0, lbl_805AD0D0@sda21(r2) +/* 80218100 00215060 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80218104 00215064 40 81 00 18 */ ble lbl_8021811C +/* 80218108 00215068 C0 21 03 B0 */ lfs f1, 0x3b0(r1) +/* 8021810C 0021506C C0 41 03 C0 */ lfs f2, 0x3c0(r1) +/* 80218110 00215070 48 17 CB 5D */ bl atan2 +/* 80218114 00215074 FC 00 08 50 */ fneg f0, f1 +/* 80218118 00215078 FF C0 00 18 */ frsp f30, f0 +lbl_8021811C: +/* 8021811C 0021507C 7F E3 FB 78 */ mr r3, r31 +/* 80218120 00215080 4B E3 C3 39 */ bl GetPitch__6CActorCFv +/* 80218124 00215084 C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 80218128 00215088 FF E0 08 90 */ fmr f31, f1 +/* 8021812C 0021508C 7F E3 FB 78 */ mr r3, r31 +/* 80218130 00215090 7F A4 EB 78 */ mr r4, r29 +/* 80218134 00215094 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 80218138 00215098 4B FF D7 69 */ bl PlayerInsideTurretSphere__16CScriptGunTurretFR13CStateManager +/* 8021813C 0021509C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80218140 002150A0 40 82 01 1C */ bne lbl_8021825C +/* 80218144 002150A4 C0 3E 04 08 */ lfs f1, 0x408(r30) +/* 80218148 002150A8 38 61 02 2C */ addi r3, r1, 0x22c +/* 8021814C 002150AC C0 01 02 3C */ lfs f0, 0x23c(r1) +/* 80218150 002150B0 C0 7E 04 0C */ lfs f3, 0x40c(r30) +/* 80218154 002150B4 C0 41 02 40 */ lfs f2, 0x240(r1) +/* 80218158 002150B8 EC 81 00 28 */ fsubs f4, f1, f0 +/* 8021815C 002150BC C0 3E 04 04 */ lfs f1, 0x404(r30) +/* 80218160 002150C0 C0 01 02 38 */ lfs f0, 0x238(r1) +/* 80218164 002150C4 EC 43 10 28 */ fsubs f2, f3, f2 +/* 80218168 002150C8 D0 81 02 30 */ stfs f4, 0x230(r1) +/* 8021816C 002150CC EC 01 00 28 */ fsubs f0, f1, f0 +/* 80218170 002150D0 D0 41 02 34 */ stfs f2, 0x234(r1) +/* 80218174 002150D4 D0 01 02 2C */ stfs f0, 0x22c(r1) +/* 80218178 002150D8 48 0F C5 81 */ bl CanBeNormalized__9CVector3fCFv +/* 8021817C 002150DC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80218180 002150E0 41 82 00 24 */ beq lbl_802181A4 +/* 80218184 002150E4 3C 80 80 5A */ lis r4, lbl_805A66F4@ha +/* 80218188 002150E8 38 61 02 EC */ addi r3, r1, 0x2ec +/* 8021818C 002150EC 38 C4 66 F4 */ addi r6, r4, lbl_805A66F4@l +/* 80218190 002150F0 38 BE 04 04 */ addi r5, r30, 0x404 +/* 80218194 002150F4 38 81 02 38 */ addi r4, r1, 0x238 +/* 80218198 002150F8 48 0F B9 79 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 8021819C 002150FC 38 81 02 EC */ addi r4, r1, 0x2ec +/* 802181A0 00215100 48 00 00 08 */ b lbl_802181A8 +lbl_802181A4: +/* 802181A4 00215104 38 9E 00 34 */ addi r4, r30, 0x34 +lbl_802181A8: +/* 802181A8 00215108 38 61 03 7C */ addi r3, r1, 0x37c +/* 802181AC 0021510C 48 0F A9 C9 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 802181B0 00215110 C0 21 03 90 */ lfs f1, 0x390(r1) +/* 802181B4 00215114 C0 01 03 80 */ lfs f0, 0x380(r1) +/* 802181B8 00215118 EC 21 00 72 */ fmuls f1, f1, f1 +/* 802181BC 0021511C EC 00 00 32 */ fmuls f0, f0, f0 +/* 802181C0 00215120 EC 21 00 2A */ fadds f1, f1, f0 +/* 802181C4 00215124 48 0F D3 3D */ bl SqrtF__5CMathFf +/* 802181C8 00215128 C0 01 03 A0 */ lfs f0, 0x3a0(r1) +/* 802181CC 0021512C FC 40 08 90 */ fmr f2, f1 +/* 802181D0 00215130 FC 20 00 50 */ fneg f1, f0 +/* 802181D4 00215134 48 17 CA 99 */ bl atan2 +/* 802181D8 00215138 FC 20 08 50 */ fneg f1, f1 +/* 802181DC 0021513C C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 802181E0 00215140 FC 60 08 18 */ frsp f3, f1 +/* 802181E4 00215144 EC 23 F8 28 */ fsubs f1, f3, f31 +/* 802181E8 00215148 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802181EC 0021514C 40 81 00 10 */ ble lbl_802181FC +/* 802181F0 00215150 C0 1E 02 FC */ lfs f0, 0x2fc(r30) +/* 802181F4 00215154 EC 5D 00 32 */ fmuls f2, f29, f0 +/* 802181F8 00215158 48 00 00 10 */ b lbl_80218208 +lbl_802181FC: +/* 802181FC 0021515C C0 1E 02 FC */ lfs f0, 0x2fc(r30) +/* 80218200 00215160 FC 00 00 50 */ fneg f0, f0 +/* 80218204 00215164 EC 5D 00 32 */ fmuls f2, f29, f0 +lbl_80218208: +/* 80218208 00215168 FC 00 12 10 */ fabs f0, f2 +/* 8021820C 0021516C FC 20 0A 10 */ fabs f1, f1 +/* 80218210 00215170 FC 00 00 18 */ frsp f0, f0 +/* 80218214 00215174 FC 20 08 18 */ frsp f1, f1 +/* 80218218 00215178 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8021821C 0021517C 4C 40 13 82 */ cror 2, 0, 2 +/* 80218220 00215180 40 82 00 08 */ bne lbl_80218228 +/* 80218224 00215184 48 00 00 08 */ b lbl_8021822C +lbl_80218228: +/* 80218228 00215188 EC 7F 10 2A */ fadds f3, f31, f2 +lbl_8021822C: +/* 8021822C 0021518C D0 61 00 3C */ stfs f3, 0x3c(r1) +/* 80218230 00215190 C0 1E 02 F8 */ lfs f0, 0x2f8(r30) +/* 80218234 00215194 FC 20 00 50 */ fneg f1, f0 +/* 80218238 00215198 FC 00 08 18 */ frsp f0, f1 +/* 8021823C 0021519C D0 21 00 34 */ stfs f1, 0x34(r1) +/* 80218240 002151A0 FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 80218244 002151A4 40 80 00 0C */ bge lbl_80218250 +/* 80218248 002151A8 38 61 00 34 */ addi r3, r1, 0x34 +/* 8021824C 002151AC 48 00 00 08 */ b lbl_80218254 +lbl_80218250: +/* 80218250 002151B0 38 61 00 3C */ addi r3, r1, 0x3c +lbl_80218254: +/* 80218254 002151B4 C0 03 00 00 */ lfs f0, 0(r3) +/* 80218258 002151B8 D0 01 00 3C */ stfs f0, 0x3c(r1) +lbl_8021825C: +/* 8021825C 002151BC C0 21 00 3C */ lfs f1, 0x3c(r1) +/* 80218260 002151C0 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 80218264 002151C4 C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 80218268 002151C8 38 81 00 30 */ addi r4, r1, 0x30 +/* 8021826C 002151CC D3 C1 00 28 */ stfs f30, 0x28(r1) +/* 80218270 002151D0 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 80218274 002151D4 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 80218278 002151D8 48 0F 8E B9 */ bl YRotation__11CQuaternionFRC9CRelAngle +/* 8021827C 002151DC 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 80218280 002151E0 38 81 00 2C */ addi r4, r1, 0x2c +/* 80218284 002151E4 48 0F 8E E5 */ bl XRotation__11CQuaternionFRC9CRelAngle +/* 80218288 002151E8 38 61 00 98 */ addi r3, r1, 0x98 +/* 8021828C 002151EC 38 81 00 28 */ addi r4, r1, 0x28 +/* 80218290 002151F0 48 0F 8E 69 */ bl ZRotation__11CQuaternionFRC9CRelAngle +/* 80218294 002151F4 38 61 00 88 */ addi r3, r1, 0x88 +/* 80218298 002151F8 38 81 00 98 */ addi r4, r1, 0x98 +/* 8021829C 002151FC 38 A1 00 A8 */ addi r5, r1, 0xa8 +/* 802182A0 00215200 48 0F 8F 01 */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 802182A4 00215204 38 61 01 80 */ addi r3, r1, 0x180 +/* 802182A8 00215208 38 81 00 88 */ addi r4, r1, 0x88 +/* 802182AC 0021520C 38 A1 00 B8 */ addi r5, r1, 0xb8 +/* 802182B0 00215210 48 0F 8E F1 */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 802182B4 00215214 C0 61 01 80 */ lfs f3, 0x180(r1) +/* 802182B8 00215218 38 61 02 98 */ addi r3, r1, 0x298 +/* 802182BC 0021521C C0 41 01 84 */ lfs f2, 0x184(r1) +/* 802182C0 00215220 38 81 02 1C */ addi r4, r1, 0x21c +/* 802182C4 00215224 C0 21 01 88 */ lfs f1, 0x188(r1) +/* 802182C8 00215228 C0 01 01 8C */ lfs f0, 0x18c(r1) +/* 802182CC 0021522C D0 61 02 1C */ stfs f3, 0x21c(r1) +/* 802182D0 00215230 D0 41 02 20 */ stfs f2, 0x220(r1) +/* 802182D4 00215234 D0 21 02 24 */ stfs f1, 0x224(r1) +/* 802182D8 00215238 D0 01 02 28 */ stfs f0, 0x228(r1) +/* 802182DC 0021523C 48 0F 9D B1 */ bl BuildTransform__11CQuaternionCFv +/* 802182E0 00215240 38 61 02 BC */ addi r3, r1, 0x2bc +/* 802182E4 00215244 38 81 02 98 */ addi r4, r1, 0x298 +/* 802182E8 00215248 38 A1 02 38 */ addi r5, r1, 0x238 +/* 802182EC 0021524C 48 0F AF 8D */ bl __ct__12CTransform4fFRC9CMatrix3fRC9CVector3f +/* 802182F0 00215250 38 7F 00 34 */ addi r3, r31, 0x34 +/* 802182F4 00215254 38 81 02 BC */ addi r4, r1, 0x2bc +/* 802182F8 00215258 48 0F A8 49 */ bl __as__12CTransform4fFRC12CTransform4f +/* 802182FC 0021525C 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 80218300 00215260 38 60 00 01 */ li r3, 1 +/* 80218304 00215264 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 80218308 00215268 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 8021830C 0021526C 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 80218310 00215270 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 80218314 00215274 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 80218318 00215278 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 8021831C 0021527C 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 80218320 00215280 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 80218324 00215284 48 00 04 D0 */ b lbl_802187F4 +lbl_80218328: +/* 80218328 00215288 C0 1E 02 FC */ lfs f0, 0x2fc(r30) +/* 8021832C 0021528C 38 61 01 70 */ addi r3, r1, 0x170 +/* 80218330 00215290 C0 22 B3 70 */ lfs f1, lbl_805AD090@sda21(r2) +/* 80218334 00215294 38 81 01 64 */ addi r4, r1, 0x164 +/* 80218338 00215298 EC 1D 00 32 */ fmuls f0, f29, f0 +/* 8021833C 0021529C C0 9E 00 58 */ lfs f4, 0x58(r30) +/* 80218340 002152A0 C0 7E 00 48 */ lfs f3, 0x48(r30) +/* 80218344 002152A4 38 A1 01 58 */ addi r5, r1, 0x158 +/* 80218348 002152A8 C0 5E 00 38 */ lfs f2, 0x38(r30) +/* 8021834C 002152AC 38 C1 00 24 */ addi r6, r1, 0x24 +/* 80218350 002152B0 EF C1 00 32 */ fmuls f30, f1, f0 +/* 80218354 002152B4 C0 BF 00 58 */ lfs f5, 0x58(r31) +/* 80218358 002152B8 C0 3F 00 48 */ lfs f1, 0x48(r31) +/* 8021835C 002152BC C0 1F 00 38 */ lfs f0, 0x38(r31) +/* 80218360 002152C0 D3 C1 00 24 */ stfs f30, 0x24(r1) +/* 80218364 002152C4 D0 41 01 58 */ stfs f2, 0x158(r1) +/* 80218368 002152C8 D0 61 01 5C */ stfs f3, 0x15c(r1) +/* 8021836C 002152CC D0 81 01 60 */ stfs f4, 0x160(r1) +/* 80218370 002152D0 D0 01 01 64 */ stfs f0, 0x164(r1) +/* 80218374 002152D4 D0 21 01 68 */ stfs f1, 0x168(r1) +/* 80218378 002152D8 D0 A1 01 6C */ stfs f5, 0x16c(r1) +/* 8021837C 002152DC 48 0F 93 19 */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle +/* 80218380 002152E0 C0 61 01 70 */ lfs f3, 0x170(r1) +/* 80218384 002152E4 38 A1 02 10 */ addi r5, r1, 0x210 +/* 80218388 002152E8 C0 41 01 74 */ lfs f2, 0x174(r1) +/* 8021838C 002152EC 38 61 01 4C */ addi r3, r1, 0x14c +/* 80218390 002152F0 C0 21 01 78 */ lfs f1, 0x178(r1) +/* 80218394 002152F4 38 9F 00 34 */ addi r4, r31, 0x34 +/* 80218398 002152F8 C0 01 01 7C */ lfs f0, 0x17c(r1) +/* 8021839C 002152FC D0 61 02 0C */ stfs f3, 0x20c(r1) +/* 802183A0 00215300 D0 41 02 10 */ stfs f2, 0x210(r1) +/* 802183A4 00215304 D0 21 02 14 */ stfs f1, 0x214(r1) +/* 802183A8 00215308 D0 01 02 18 */ stfs f0, 0x218(r1) +/* 802183AC 0021530C 48 0F A6 79 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 802183B0 00215310 C0 81 02 0C */ lfs f4, 0x20c(r1) +/* 802183B4 00215314 FC 20 E8 90 */ fmr f1, f29 +/* 802183B8 00215318 C0 61 01 4C */ lfs f3, 0x14c(r1) +/* 802183BC 0021531C 7F E3 FB 78 */ mr r3, r31 +/* 802183C0 00215320 C0 41 01 50 */ lfs f2, 0x150(r1) +/* 802183C4 00215324 38 81 01 FC */ addi r4, r1, 0x1fc +/* 802183C8 00215328 C0 01 01 54 */ lfs f0, 0x154(r1) +/* 802183CC 0021532C D0 81 01 FC */ stfs f4, 0x1fc(r1) +/* 802183D0 00215330 D0 61 02 00 */ stfs f3, 0x200(r1) +/* 802183D4 00215334 D0 41 02 04 */ stfs f2, 0x204(r1) +/* 802183D8 00215338 D0 01 02 08 */ stfs f0, 0x208(r1) +/* 802183DC 0021533C 4B F0 29 81 */ bl RotateInOneFrameOR__13CPhysicsActorFRC11CQuaternionf +/* 802183E0 00215340 C0 7E 05 44 */ lfs f3, 0x544(r30) +/* 802183E4 00215344 38 61 01 3C */ addi r3, r1, 0x13c +/* 802183E8 00215348 C0 9E 05 48 */ lfs f4, 0x548(r30) +/* 802183EC 0021534C 38 81 01 30 */ addi r4, r1, 0x130 +/* 802183F0 00215350 C0 BE 05 4C */ lfs f5, 0x54c(r30) +/* 802183F4 00215354 38 A1 01 24 */ addi r5, r1, 0x124 +/* 802183F8 00215358 C0 5E 00 58 */ lfs f2, 0x58(r30) +/* 802183FC 0021535C 38 C1 00 20 */ addi r6, r1, 0x20 +/* 80218400 00215360 C0 3E 00 48 */ lfs f1, 0x48(r30) +/* 80218404 00215364 C0 1E 00 38 */ lfs f0, 0x38(r30) +/* 80218408 00215368 D3 C1 00 20 */ stfs f30, 0x20(r1) +/* 8021840C 0021536C D0 61 01 24 */ stfs f3, 0x124(r1) +/* 80218410 00215370 D0 81 01 28 */ stfs f4, 0x128(r1) +/* 80218414 00215374 D0 A1 01 2C */ stfs f5, 0x12c(r1) +/* 80218418 00215378 D0 01 01 30 */ stfs f0, 0x130(r1) +/* 8021841C 0021537C D0 21 01 34 */ stfs f1, 0x134(r1) +/* 80218420 00215380 D0 41 01 38 */ stfs f2, 0x138(r1) +/* 80218424 00215384 48 0F 92 71 */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle +/* 80218428 00215388 C0 61 01 3C */ lfs f3, 0x13c(r1) +/* 8021842C 0021538C 38 A1 01 F0 */ addi r5, r1, 0x1f0 +/* 80218430 00215390 C0 41 01 40 */ lfs f2, 0x140(r1) +/* 80218434 00215394 38 61 01 18 */ addi r3, r1, 0x118 +/* 80218438 00215398 C0 21 01 44 */ lfs f1, 0x144(r1) +/* 8021843C 0021539C 38 9E 00 34 */ addi r4, r30, 0x34 +/* 80218440 002153A0 C0 01 01 48 */ lfs f0, 0x148(r1) +/* 80218444 002153A4 D0 61 01 EC */ stfs f3, 0x1ec(r1) +/* 80218448 002153A8 D0 41 01 F0 */ stfs f2, 0x1f0(r1) +/* 8021844C 002153AC D0 21 01 F4 */ stfs f1, 0x1f4(r1) +/* 80218450 002153B0 D0 01 01 F8 */ stfs f0, 0x1f8(r1) +/* 80218454 002153B4 48 0F A5 D1 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 80218458 002153B8 C0 81 01 EC */ lfs f4, 0x1ec(r1) +/* 8021845C 002153BC FC 20 E8 90 */ fmr f1, f29 +/* 80218460 002153C0 C0 61 01 18 */ lfs f3, 0x118(r1) +/* 80218464 002153C4 7F C3 F3 78 */ mr r3, r30 +/* 80218468 002153C8 C0 41 01 1C */ lfs f2, 0x11c(r1) +/* 8021846C 002153CC 38 81 01 DC */ addi r4, r1, 0x1dc +/* 80218470 002153D0 C0 01 01 20 */ lfs f0, 0x120(r1) +/* 80218474 002153D4 D0 81 01 DC */ stfs f4, 0x1dc(r1) +/* 80218478 002153D8 D0 61 01 E0 */ stfs f3, 0x1e0(r1) +/* 8021847C 002153DC D0 41 01 E4 */ stfs f2, 0x1e4(r1) +/* 80218480 002153E0 D0 01 01 E8 */ stfs f0, 0x1e8(r1) +/* 80218484 002153E4 4B F0 28 D9 */ bl RotateInOneFrameOR__13CPhysicsActorFRC11CQuaternionf +/* 80218488 002153E8 48 00 03 6C */ b lbl_802187F4 +lbl_8021848C: +/* 8021848C 002153EC C0 01 03 B0 */ lfs f0, 0x3b0(r1) +/* 80218490 002153F0 C0 61 03 B8 */ lfs f3, 0x3b8(r1) +/* 80218494 002153F4 EC 00 00 32 */ fmuls f0, f0, f0 +/* 80218498 002153F8 C0 81 03 C0 */ lfs f4, 0x3c0(r1) +/* 8021849C 002153FC C0 41 03 C8 */ lfs f2, 0x3c8(r1) +/* 802184A0 00215400 C0 21 03 D8 */ lfs f1, 0x3d8(r1) +/* 802184A4 00215404 EC 84 01 3A */ fmadds f4, f4, f4, f0 +/* 802184A8 00215408 C8 02 B3 98 */ lfd f0, lbl_805AD0B8@sda21(r2) +/* 802184AC 0021540C D0 61 01 D0 */ stfs f3, 0x1d0(r1) +/* 802184B0 00215410 C3 C2 B3 5C */ lfs f30, lbl_805AD07C@sda21(r2) +/* 802184B4 00215414 FC 04 00 40 */ fcmpo cr0, f4, f0 +/* 802184B8 00215418 D0 41 01 D4 */ stfs f2, 0x1d4(r1) +/* 802184BC 0021541C D0 21 01 D8 */ stfs f1, 0x1d8(r1) +/* 802184C0 00215420 40 81 00 58 */ ble lbl_80218518 +/* 802184C4 00215424 FC 20 20 34 */ frsqrte f1, f4 +/* 802184C8 00215428 C8 62 B3 A0 */ lfd f3, lbl_805AD0C0@sda21(r2) +/* 802184CC 0021542C C8 42 B3 A8 */ lfd f2, lbl_805AD0C8@sda21(r2) +/* 802184D0 00215430 FC 01 00 72 */ fmul f0, f1, f1 +/* 802184D4 00215434 FC 23 00 72 */ fmul f1, f3, f1 +/* 802184D8 00215438 FC 04 10 3C */ fnmsub f0, f4, f0, f2 +/* 802184DC 0021543C FC 21 00 32 */ fmul f1, f1, f0 +/* 802184E0 00215440 FC 01 00 72 */ fmul f0, f1, f1 +/* 802184E4 00215444 FC 23 00 72 */ fmul f1, f3, f1 +/* 802184E8 00215448 FC 04 10 3C */ fnmsub f0, f4, f0, f2 +/* 802184EC 0021544C FC 21 00 32 */ fmul f1, f1, f0 +/* 802184F0 00215450 FC 01 00 72 */ fmul f0, f1, f1 +/* 802184F4 00215454 FC 23 00 72 */ fmul f1, f3, f1 +/* 802184F8 00215458 FC 04 10 3C */ fnmsub f0, f4, f0, f2 +/* 802184FC 0021545C FC 21 00 32 */ fmul f1, f1, f0 +/* 80218500 00215460 FC 01 00 72 */ fmul f0, f1, f1 +/* 80218504 00215464 FC 23 00 72 */ fmul f1, f3, f1 +/* 80218508 00215468 FC 04 10 3C */ fnmsub f0, f4, f0, f2 +/* 8021850C 0021546C FC 01 00 32 */ fmul f0, f1, f0 +/* 80218510 00215470 FC 04 00 32 */ fmul f0, f4, f0 +/* 80218514 00215474 48 00 00 2C */ b lbl_80218540 +lbl_80218518: +/* 80218518 00215478 FC 00 20 00 */ fcmpu cr0, f0, f4 +/* 8021851C 0021547C 40 82 00 08 */ bne lbl_80218524 +/* 80218520 00215480 48 00 00 20 */ b lbl_80218540 +lbl_80218524: +/* 80218524 00215484 FC 04 00 00 */ fcmpu cr0, f4, f0 +/* 80218528 00215488 41 82 00 10 */ beq lbl_80218538 +/* 8021852C 0021548C 3C 60 80 5B */ lis r3, lbl_805A8BA0@ha +/* 80218530 00215490 C0 03 8B A0 */ lfs f0, lbl_805A8BA0@l(r3) +/* 80218534 00215494 48 00 00 0C */ b lbl_80218540 +lbl_80218538: +/* 80218538 00215498 3C 60 80 5B */ lis r3, lbl_805A8BA4@ha +/* 8021853C 0021549C C0 03 8B A4 */ lfs f0, lbl_805A8BA4@l(r3) +lbl_80218540: +/* 80218540 002154A0 FC 20 00 18 */ frsp f1, f0 +/* 80218544 002154A4 C0 02 B3 B0 */ lfs f0, lbl_805AD0D0@sda21(r2) +/* 80218548 002154A8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8021854C 002154AC 40 81 00 18 */ ble lbl_80218564 +/* 80218550 002154B0 C0 21 03 B0 */ lfs f1, 0x3b0(r1) +/* 80218554 002154B4 C0 41 03 C0 */ lfs f2, 0x3c0(r1) +/* 80218558 002154B8 48 17 C7 15 */ bl atan2 +/* 8021855C 002154BC FC 00 08 50 */ fneg f0, f1 +/* 80218560 002154C0 FF C0 00 18 */ frsp f30, f0 +lbl_80218564: +/* 80218564 002154C4 C0 22 B3 60 */ lfs f1, lbl_805AD080@sda21(r2) +/* 80218568 002154C8 C0 1E 05 24 */ lfs f0, 0x524(r30) +/* 8021856C 002154CC C3 FE 02 FC */ lfs f31, 0x2fc(r30) +/* 80218570 002154D0 EC 01 00 32 */ fmuls f0, f1, f0 +/* 80218574 002154D4 C3 9E 02 F8 */ lfs f28, 0x2f8(r30) +/* 80218578 002154D8 EC 20 07 F2 */ fmuls f1, f0, f31 +/* 8021857C 002154DC 48 0F C7 C9 */ bl FastCosR__5CMathFf +/* 80218580 002154E0 C0 42 B3 68 */ lfs f2, lbl_805AD088@sda21(r2) +/* 80218584 002154E4 7F E3 FB 78 */ mr r3, r31 +/* 80218588 002154E8 C0 02 B3 B4 */ lfs f0, lbl_805AD0D4@sda21(r2) +/* 8021858C 002154EC EC 22 08 28 */ fsubs f1, f2, f1 +/* 80218590 002154F0 EC 00 07 32 */ fmuls f0, f0, f28 +/* 80218594 002154F4 EF 80 00 72 */ fmuls f28, f0, f1 +/* 80218598 002154F8 4B E3 BE C1 */ bl GetPitch__6CActorCFv +/* 8021859C 002154FC EC 5C 08 28 */ fsubs f2, f28, f1 +/* 802185A0 00215500 C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 802185A4 00215504 EF FF 07 72 */ fmuls f31, f31, f29 +/* 802185A8 00215508 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 802185AC 0021550C 40 81 00 0C */ ble lbl_802185B8 +/* 802185B0 00215510 FC 60 F8 90 */ fmr f3, f31 +/* 802185B4 00215514 48 00 00 08 */ b lbl_802185BC +lbl_802185B8: +/* 802185B8 00215518 FC 60 F8 50 */ fneg f3, f31 +lbl_802185BC: +/* 802185BC 0021551C FC 00 1A 10 */ fabs f0, f3 +/* 802185C0 00215520 FC 40 12 10 */ fabs f2, f2 +/* 802185C4 00215524 FC 00 00 18 */ frsp f0, f0 +/* 802185C8 00215528 FC 40 10 18 */ frsp f2, f2 +/* 802185CC 0021552C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 802185D0 00215530 4C 40 13 82 */ cror 2, 0, 2 +/* 802185D4 00215534 40 82 00 0C */ bne lbl_802185E0 +/* 802185D8 00215538 FC 40 E0 90 */ fmr f2, f28 +/* 802185DC 0021553C 48 00 00 08 */ b lbl_802185E4 +lbl_802185E0: +/* 802185E0 00215540 EC 41 18 2A */ fadds f2, f1, f3 +lbl_802185E4: +/* 802185E4 00215544 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 802185E8 00215548 C0 1E 02 F8 */ lfs f0, 0x2f8(r30) +/* 802185EC 0021554C FC 20 00 50 */ fneg f1, f0 +/* 802185F0 00215550 FC 00 08 18 */ frsp f0, f1 +/* 802185F4 00215554 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 802185F8 00215558 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 802185FC 0021555C 40 80 00 0C */ bge lbl_80218608 +/* 80218600 00215560 38 61 00 1C */ addi r3, r1, 0x1c +/* 80218604 00215564 48 00 00 08 */ b lbl_8021860C +lbl_80218608: +/* 80218608 00215568 38 61 00 38 */ addi r3, r1, 0x38 +lbl_8021860C: +/* 8021860C 0021556C C0 23 00 00 */ lfs f1, 0(r3) +/* 80218610 00215570 38 61 00 78 */ addi r3, r1, 0x78 +/* 80218614 00215574 C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 80218618 00215578 38 81 00 18 */ addi r4, r1, 0x18 +/* 8021861C 0021557C D0 21 00 38 */ stfs f1, 0x38(r1) +/* 80218620 00215580 D3 C1 00 10 */ stfs f30, 0x10(r1) +/* 80218624 00215584 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 80218628 00215588 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 8021862C 0021558C 48 0F 8B 05 */ bl YRotation__11CQuaternionFRC9CRelAngle +/* 80218630 00215590 38 61 00 68 */ addi r3, r1, 0x68 +/* 80218634 00215594 38 81 00 14 */ addi r4, r1, 0x14 +/* 80218638 00215598 48 0F 8B 31 */ bl XRotation__11CQuaternionFRC9CRelAngle +/* 8021863C 0021559C 38 61 00 58 */ addi r3, r1, 0x58 +/* 80218640 002155A0 38 81 00 10 */ addi r4, r1, 0x10 +/* 80218644 002155A4 48 0F 8A B5 */ bl ZRotation__11CQuaternionFRC9CRelAngle +/* 80218648 002155A8 38 61 00 48 */ addi r3, r1, 0x48 +/* 8021864C 002155AC 38 81 00 58 */ addi r4, r1, 0x58 +/* 80218650 002155B0 38 A1 00 68 */ addi r5, r1, 0x68 +/* 80218654 002155B4 48 0F 8B 4D */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 80218658 002155B8 38 61 01 08 */ addi r3, r1, 0x108 +/* 8021865C 002155BC 38 81 00 48 */ addi r4, r1, 0x48 +/* 80218660 002155C0 38 A1 00 78 */ addi r5, r1, 0x78 +/* 80218664 002155C4 48 0F 8B 3D */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 80218668 002155C8 C0 61 01 08 */ lfs f3, 0x108(r1) +/* 8021866C 002155CC 38 61 02 44 */ addi r3, r1, 0x244 +/* 80218670 002155D0 C0 41 01 0C */ lfs f2, 0x10c(r1) +/* 80218674 002155D4 38 81 01 C0 */ addi r4, r1, 0x1c0 +/* 80218678 002155D8 C0 21 01 10 */ lfs f1, 0x110(r1) +/* 8021867C 002155DC C0 01 01 14 */ lfs f0, 0x114(r1) +/* 80218680 002155E0 D0 61 01 C0 */ stfs f3, 0x1c0(r1) +/* 80218684 002155E4 D0 41 01 C4 */ stfs f2, 0x1c4(r1) +/* 80218688 002155E8 D0 21 01 C8 */ stfs f1, 0x1c8(r1) +/* 8021868C 002155EC D0 01 01 CC */ stfs f0, 0x1cc(r1) +/* 80218690 002155F0 48 0F 99 FD */ bl BuildTransform__11CQuaternionCFv +/* 80218694 002155F4 38 61 02 68 */ addi r3, r1, 0x268 +/* 80218698 002155F8 38 81 02 44 */ addi r4, r1, 0x244 +/* 8021869C 002155FC 38 A1 01 D0 */ addi r5, r1, 0x1d0 +/* 802186A0 00215600 48 0F AB D9 */ bl __ct__12CTransform4fFRC9CMatrix3fRC9CVector3f +/* 802186A4 00215604 38 7F 00 34 */ addi r3, r31, 0x34 +/* 802186A8 00215608 38 81 02 68 */ addi r4, r1, 0x268 +/* 802186AC 0021560C 48 0F A4 95 */ bl __as__12CTransform4fFRC12CTransform4f +/* 802186B0 00215610 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 802186B4 00215614 38 60 00 01 */ li r3, 1 +/* 802186B8 00215618 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 802186BC 0021561C 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 802186C0 00215620 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 802186C4 00215624 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 802186C8 00215628 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 802186CC 0021562C 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 802186D0 00215630 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 802186D4 00215634 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 802186D8 00215638 88 1E 05 60 */ lbz r0, 0x560(r30) +/* 802186DC 0021563C 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 802186E0 00215640 41 82 00 30 */ beq lbl_80218710 +/* 802186E4 00215644 C0 5E 05 58 */ lfs f2, 0x558(r30) +/* 802186E8 00215648 38 A1 00 FC */ addi r5, r1, 0xfc +/* 802186EC 0021564C C0 3E 05 54 */ lfs f1, 0x554(r30) +/* 802186F0 00215650 C0 1E 05 50 */ lfs f0, 0x550(r30) +/* 802186F4 00215654 FC 40 10 50 */ fneg f2, f2 +/* 802186F8 00215658 FC 20 08 50 */ fneg f1, f1 +/* 802186FC 0021565C FC 00 00 50 */ fneg f0, f0 +/* 80218700 00215660 D0 41 01 04 */ stfs f2, 0x104(r1) +/* 80218704 00215664 D0 01 00 FC */ stfs f0, 0xfc(r1) +/* 80218708 00215668 D0 21 01 00 */ stfs f1, 0x100(r1) +/* 8021870C 0021566C 48 00 00 08 */ b lbl_80218714 +lbl_80218710: +/* 80218710 00215670 38 BE 05 50 */ addi r5, r30, 0x550 +lbl_80218714: +/* 80218714 00215674 C0 65 00 00 */ lfs f3, 0(r5) +/* 80218718 00215678 38 61 00 EC */ addi r3, r1, 0xec +/* 8021871C 0021567C C0 85 00 04 */ lfs f4, 4(r5) +/* 80218720 00215680 38 81 00 E0 */ addi r4, r1, 0xe0 +/* 80218724 00215684 C0 A5 00 08 */ lfs f5, 8(r5) +/* 80218728 00215688 38 A1 00 D4 */ addi r5, r1, 0xd4 +/* 8021872C 0021568C C0 5E 00 58 */ lfs f2, 0x58(r30) +/* 80218730 00215690 38 C1 00 0C */ addi r6, r1, 0xc +/* 80218734 00215694 C0 3E 00 48 */ lfs f1, 0x48(r30) +/* 80218738 00215698 C0 1E 00 38 */ lfs f0, 0x38(r30) +/* 8021873C 0021569C D3 E1 00 0C */ stfs f31, 0xc(r1) +/* 80218740 002156A0 D0 61 00 D4 */ stfs f3, 0xd4(r1) +/* 80218744 002156A4 D0 81 00 D8 */ stfs f4, 0xd8(r1) +/* 80218748 002156A8 D0 A1 00 DC */ stfs f5, 0xdc(r1) +/* 8021874C 002156AC D0 01 00 E0 */ stfs f0, 0xe0(r1) +/* 80218750 002156B0 D0 21 00 E4 */ stfs f1, 0xe4(r1) +/* 80218754 002156B4 D0 41 00 E8 */ stfs f2, 0xe8(r1) +/* 80218758 002156B8 48 0F 8F 3D */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle +/* 8021875C 002156BC C0 61 00 EC */ lfs f3, 0xec(r1) +/* 80218760 002156C0 38 A1 01 B4 */ addi r5, r1, 0x1b4 +/* 80218764 002156C4 C0 41 00 F0 */ lfs f2, 0xf0(r1) +/* 80218768 002156C8 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 8021876C 002156CC C0 21 00 F4 */ lfs f1, 0xf4(r1) +/* 80218770 002156D0 38 9E 00 34 */ addi r4, r30, 0x34 +/* 80218774 002156D4 C0 01 00 F8 */ lfs f0, 0xf8(r1) +/* 80218778 002156D8 D0 61 01 B0 */ stfs f3, 0x1b0(r1) +/* 8021877C 002156DC D0 41 01 B4 */ stfs f2, 0x1b4(r1) +/* 80218780 002156E0 D0 21 01 B8 */ stfs f1, 0x1b8(r1) +/* 80218784 002156E4 D0 01 01 BC */ stfs f0, 0x1bc(r1) +/* 80218788 002156E8 48 0F A2 9D */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 8021878C 002156EC C0 81 01 B0 */ lfs f4, 0x1b0(r1) +/* 80218790 002156F0 FC 20 E8 90 */ fmr f1, f29 +/* 80218794 002156F4 C0 61 00 C8 */ lfs f3, 0xc8(r1) +/* 80218798 002156F8 7F C3 F3 78 */ mr r3, r30 +/* 8021879C 002156FC C0 41 00 CC */ lfs f2, 0xcc(r1) +/* 802187A0 00215700 38 81 01 A0 */ addi r4, r1, 0x1a0 +/* 802187A4 00215704 C0 01 00 D0 */ lfs f0, 0xd0(r1) +/* 802187A8 00215708 D0 81 01 A0 */ stfs f4, 0x1a0(r1) +/* 802187AC 0021570C D0 61 01 A4 */ stfs f3, 0x1a4(r1) +/* 802187B0 00215710 D0 41 01 A8 */ stfs f2, 0x1a8(r1) +/* 802187B4 00215714 D0 01 01 AC */ stfs f0, 0x1ac(r1) +/* 802187B8 00215718 4B F0 25 A5 */ bl RotateInOneFrameOR__13CPhysicsActorFRC11CQuaternionf +/* 802187BC 0021571C 48 00 00 38 */ b lbl_802187F4 +lbl_802187C0: +/* 802187C0 00215720 38 7F 00 34 */ addi r3, r31, 0x34 +/* 802187C4 00215724 38 81 03 AC */ addi r4, r1, 0x3ac +/* 802187C8 00215728 48 0F A3 79 */ bl __as__12CTransform4fFRC12CTransform4f +/* 802187CC 0021572C 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 802187D0 00215730 38 60 00 01 */ li r3, 1 +/* 802187D4 00215734 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 802187D8 00215738 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 802187DC 0021573C 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 802187E0 00215740 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 802187E4 00215744 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 802187E8 00215748 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 802187EC 0021574C 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 802187F0 00215750 98 1F 00 E4 */ stb r0, 0xe4(r31) +lbl_802187F4: +/* 802187F4 00215754 E3 E1 04 28 */ psq_l f31, 1064(r1), 0, qr0 +/* 802187F8 00215758 CB E1 04 20 */ lfd f31, 0x420(r1) +/* 802187FC 0021575C E3 C1 04 18 */ psq_l f30, 1048(r1), 0, qr0 +/* 80218800 00215760 CB C1 04 10 */ lfd f30, 0x410(r1) +/* 80218804 00215764 E3 A1 04 08 */ psq_l f29, 1032(r1), 0, qr0 +/* 80218808 00215768 CB A1 04 00 */ lfd f29, 0x400(r1) +/* 8021880C 0021576C E3 81 03 F8 */ psq_l f28, 1016(r1), 0, qr0 +/* 80218810 00215770 CB 81 03 F0 */ lfd f28, 0x3f0(r1) +/* 80218814 00215774 83 E1 03 EC */ lwz r31, 0x3ec(r1) +/* 80218818 00215778 83 C1 03 E8 */ lwz r30, 0x3e8(r1) +/* 8021881C 0021577C 80 01 04 34 */ lwz r0, 0x434(r1) +/* 80218820 00215780 83 A1 03 E4 */ lwz r29, 0x3e4(r1) +/* 80218824 00215784 7C 08 03 A6 */ mtlr r0 +/* 80218828 00215788 38 21 04 30 */ addi r1, r1, 0x430 +/* 8021882C 0021578C 4E 80 00 20 */ blr + +.global UpdateTargettingMode__16CScriptGunTurretFfR13CStateManager +UpdateTargettingMode__16CScriptGunTurretFfR13CStateManager: +/* 80218830 00215790 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80218834 00215794 7C 08 02 A6 */ mflr r0 +/* 80218838 00215798 90 01 00 54 */ stw r0, 0x54(r1) +/* 8021883C 0021579C DB E1 00 40 */ stfd f31, 0x40(r1) +/* 80218840 002157A0 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 80218844 002157A4 DB C1 00 30 */ stfd f30, 0x30(r1) +/* 80218848 002157A8 F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 +/* 8021884C 002157AC DB A1 00 20 */ stfd f29, 0x20(r1) +/* 80218850 002157B0 F3 A1 00 28 */ psq_st f29, 40(r1), 0, qr0 +/* 80218854 002157B4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80218858 002157B8 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8021885C 002157BC FF A0 08 90 */ fmr f29, f1 +/* 80218860 002157C0 7C 9F 23 78 */ mr r31, r4 +/* 80218864 002157C4 7C 7E 1B 78 */ mr r30, r3 +/* 80218868 002157C8 80 64 08 70 */ lwz r3, 0x870(r4) +/* 8021886C 002157CC 4B DF 20 95 */ bl IsInCinematicCamera__14CCameraManagerCFv +/* 80218870 002157D0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80218874 002157D4 41 82 00 2C */ beq lbl_802188A0 +/* 80218878 002157D8 C3 FE 02 E0 */ lfs f31, 0x2e0(r30) +/* 8021887C 002157DC C3 DE 02 DC */ lfs f30, 0x2dc(r30) +/* 80218880 002157E0 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 80218884 002157E4 48 0F 9C 59 */ bl Float__9CRandom16Fv +/* 80218888 002157E8 EC 01 F7 FA */ fmadds f0, f1, f31, f30 +/* 8021888C 002157EC C0 22 B3 78 */ lfs f1, lbl_805AD098@sda21(r2) +/* 80218890 002157F0 D0 1E 05 34 */ stfs f0, 0x534(r30) +/* 80218894 002157F4 C0 1E 05 34 */ lfs f0, 0x534(r30) +/* 80218898 002157F8 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8021889C 002157FC D0 1E 05 38 */ stfs f0, 0x538(r30) +lbl_802188A0: +/* 802188A0 00215800 C0 3E 05 34 */ lfs f1, 0x534(r30) +/* 802188A4 00215804 C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 802188A8 00215808 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802188AC 0021580C 40 81 00 7C */ ble lbl_80218928 +/* 802188B0 00215810 EC 01 E8 28 */ fsubs f0, f1, f29 +/* 802188B4 00215814 D0 1E 05 34 */ stfs f0, 0x534(r30) +/* 802188B8 00215818 C0 3E 05 34 */ lfs f1, 0x534(r30) +/* 802188BC 0021581C C0 1E 05 38 */ lfs f0, 0x538(r30) +/* 802188C0 00215820 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802188C4 00215824 40 80 00 D4 */ bge lbl_80218998 +/* 802188C8 00215828 80 1E 05 20 */ lwz r0, 0x520(r30) +/* 802188CC 0021582C 2C 00 00 0A */ cmpwi r0, 0xa +/* 802188D0 00215830 41 82 00 C8 */ beq lbl_80218998 +/* 802188D4 00215834 81 5E 00 04 */ lwz r10, 4(r30) +/* 802188D8 00215838 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 802188DC 0021583C C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 802188E0 00215840 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 802188E4 00215844 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 802188E8 00215848 38 61 00 08 */ addi r3, r1, 8 +/* 802188EC 0021584C C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 802188F0 00215850 38 A1 00 0C */ addi r5, r1, 0xc +/* 802188F4 00215854 A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) +/* 802188F8 00215858 38 E0 00 00 */ li r7, 0 +/* 802188FC 0021585C D0 01 00 0C */ stfs f0, 0xc(r1) +/* 80218900 00215860 39 00 00 00 */ li r8, 0 +/* 80218904 00215864 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 80218908 00215868 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 8021890C 0021586C A0 9E 03 58 */ lhz r4, 0x358(r30) +/* 80218910 00215870 48 0D 19 A1 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +/* 80218914 00215874 7F C3 F3 78 */ mr r3, r30 +/* 80218918 00215878 7F E5 FB 78 */ mr r5, r31 +/* 8021891C 0021587C 38 80 00 0A */ li r4, 0xa +/* 80218920 00215880 48 00 11 F9 */ bl SetTurretState__16CScriptGunTurretFQ216CScriptGunTurret12ETurretState +/* 80218924 00215884 48 00 00 74 */ b lbl_80218998 +lbl_80218928: +/* 80218928 00215888 80 1E 05 20 */ lwz r0, 0x520(r30) +/* 8021892C 0021588C 2C 00 00 09 */ cmpwi r0, 9 +/* 80218930 00215890 41 82 00 14 */ beq lbl_80218944 +/* 80218934 00215894 7F C3 F3 78 */ mr r3, r30 +/* 80218938 00215898 7F E5 FB 78 */ mr r5, r31 +/* 8021893C 0021589C 38 80 00 09 */ li r4, 9 +/* 80218940 002158A0 48 00 11 D9 */ bl SetTurretState__16CScriptGunTurretFQ216CScriptGunTurret12ETurretState +lbl_80218944: +/* 80218944 002158A4 80 1E 03 BC */ lwz r0, 0x3bc(r30) +/* 80218948 002158A8 28 00 00 00 */ cmplwi r0, 0 +/* 8021894C 002158AC 40 82 00 3C */ bne lbl_80218988 +/* 80218950 002158B0 7F C3 F3 78 */ mr r3, r30 +/* 80218954 002158B4 7F E4 FB 78 */ mr r4, r31 +/* 80218958 002158B8 4B FF DC 3D */ bl UpdateBurstType__16CScriptGunTurretFR13CStateManager +/* 8021895C 002158BC C3 DE 02 E0 */ lfs f30, 0x2e0(r30) +/* 80218960 002158C0 C3 FE 02 DC */ lfs f31, 0x2dc(r30) +/* 80218964 002158C4 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 80218968 002158C8 48 0F 9B 75 */ bl Float__9CRandom16Fv +/* 8021896C 002158CC EC 01 FF BA */ fmadds f0, f1, f30, f31 +/* 80218970 002158D0 C0 22 B3 78 */ lfs f1, lbl_805AD098@sda21(r2) +/* 80218974 002158D4 D0 1E 05 34 */ stfs f0, 0x534(r30) +/* 80218978 002158D8 C0 1E 05 34 */ lfs f0, 0x534(r30) +/* 8021897C 002158DC EC 01 00 32 */ fmuls f0, f1, f0 +/* 80218980 002158E0 D0 1E 05 38 */ stfs f0, 0x538(r30) +/* 80218984 002158E4 48 00 00 14 */ b lbl_80218998 +lbl_80218988: +/* 80218988 002158E8 FC 20 E8 90 */ fmr f1, f29 +/* 8021898C 002158EC 7F E4 FB 78 */ mr r4, r31 +/* 80218990 002158F0 38 7E 03 A4 */ addi r3, r30, 0x3a4 +/* 80218994 002158F4 4B F9 49 C1 */ bl Update__10CBurstFireFR13CStateManagerf +lbl_80218998: +/* 80218998 002158F8 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 8021899C 002158FC CB E1 00 40 */ lfd f31, 0x40(r1) +/* 802189A0 00215900 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 +/* 802189A4 00215904 CB C1 00 30 */ lfd f30, 0x30(r1) +/* 802189A8 00215908 E3 A1 00 28 */ psq_l f29, 40(r1), 0, qr0 +/* 802189AC 0021590C CB A1 00 20 */ lfd f29, 0x20(r1) +/* 802189B0 00215910 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 802189B4 00215914 80 01 00 54 */ lwz r0, 0x54(r1) +/* 802189B8 00215918 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 802189BC 0021591C 7C 08 03 A6 */ mtlr r0 +/* 802189C0 00215920 38 21 00 50 */ addi r1, r1, 0x50 +/* 802189C4 00215924 4E 80 00 20 */ blr + +.global UpdateTurretAnimation__16CScriptGunTurretFv +UpdateTurretAnimation__16CScriptGunTurretFv: +/* 802189C8 00215928 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 802189CC 0021592C 7C 08 02 A6 */ mflr r0 +/* 802189D0 00215930 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 802189D4 00215934 93 E1 00 CC */ stw r31, 0xcc(r1) +/* 802189D8 00215938 7C 7F 1B 78 */ mr r31, r3 +/* 802189DC 0021593C 38 60 00 00 */ li r3, 0 +/* 802189E0 00215940 93 C1 00 C8 */ stw r30, 0xc8(r1) +/* 802189E4 00215944 80 9F 00 64 */ lwz r4, 0x64(r31) +/* 802189E8 00215948 28 04 00 00 */ cmplwi r4, 0 +/* 802189EC 0021594C 41 82 00 14 */ beq lbl_80218A00 +/* 802189F0 00215950 80 04 00 10 */ lwz r0, 0x10(r4) +/* 802189F4 00215954 28 00 00 00 */ cmplwi r0, 0 +/* 802189F8 00215958 41 82 00 08 */ beq lbl_80218A00 +/* 802189FC 0021595C 38 60 00 01 */ li r3, 1 +lbl_80218A00: +/* 80218A00 00215960 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80218A04 00215964 41 82 01 98 */ beq lbl_80218B9C +/* 80218A08 00215968 80 1F 05 20 */ lwz r0, 0x520(r31) +/* 80218A0C 0021596C 2C 00 00 00 */ cmpwi r0, 0 +/* 80218A10 00215970 41 80 01 8C */ blt lbl_80218B9C +/* 80218A14 00215974 2C 00 00 0C */ cmpwi r0, 0xc +/* 80218A18 00215978 41 81 01 84 */ bgt lbl_80218B9C +/* 80218A1C 0021597C 38 61 00 18 */ addi r3, r1, 0x18 +/* 80218A20 00215980 48 0C A6 5D */ bl NoParameter__12CPASAnimParmFv +/* 80218A24 00215984 38 61 00 20 */ addi r3, r1, 0x20 +/* 80218A28 00215988 48 0C A6 55 */ bl NoParameter__12CPASAnimParmFv +/* 80218A2C 0021598C 38 61 00 28 */ addi r3, r1, 0x28 +/* 80218A30 00215990 48 0C A6 4D */ bl NoParameter__12CPASAnimParmFv +/* 80218A34 00215994 38 61 00 30 */ addi r3, r1, 0x30 +/* 80218A38 00215998 48 0C A6 45 */ bl NoParameter__12CPASAnimParmFv +/* 80218A3C 0021599C 38 61 00 38 */ addi r3, r1, 0x38 +/* 80218A40 002159A0 48 0C A6 3D */ bl NoParameter__12CPASAnimParmFv +/* 80218A44 002159A4 38 61 00 40 */ addi r3, r1, 0x40 +/* 80218A48 002159A8 48 0C A6 35 */ bl NoParameter__12CPASAnimParmFv +/* 80218A4C 002159AC 80 1F 05 20 */ lwz r0, 0x520(r31) +/* 80218A50 002159B0 3C 60 80 3D */ lis r3, lbl_803D2908@ha +/* 80218A54 002159B4 38 83 29 08 */ addi r4, r3, lbl_803D2908@l +/* 80218A58 002159B8 38 61 00 48 */ addi r3, r1, 0x48 +/* 80218A5C 002159BC 54 00 10 3A */ slwi r0, r0, 2 +/* 80218A60 002159C0 7C 84 00 2E */ lwzx r4, r4, r0 +/* 80218A64 002159C4 48 0C A5 21 */ bl FromEnum__12CPASAnimParmFi +/* 80218A68 002159C8 38 61 00 50 */ addi r3, r1, 0x50 +/* 80218A6C 002159CC 38 80 00 00 */ li r4, 0 +/* 80218A70 002159D0 48 0C A5 15 */ bl FromEnum__12CPASAnimParmFi +/* 80218A74 002159D4 38 61 00 20 */ addi r3, r1, 0x20 +/* 80218A78 002159D8 38 01 00 18 */ addi r0, r1, 0x18 +/* 80218A7C 002159DC 90 61 00 08 */ stw r3, 8(r1) +/* 80218A80 002159E0 38 61 00 80 */ addi r3, r1, 0x80 +/* 80218A84 002159E4 38 A1 00 50 */ addi r5, r1, 0x50 +/* 80218A88 002159E8 38 C1 00 48 */ addi r6, r1, 0x48 +/* 80218A8C 002159EC 90 01 00 0C */ stw r0, 0xc(r1) +/* 80218A90 002159F0 38 E1 00 40 */ addi r7, r1, 0x40 +/* 80218A94 002159F4 39 01 00 38 */ addi r8, r1, 0x38 +/* 80218A98 002159F8 39 21 00 30 */ addi r9, r1, 0x30 +/* 80218A9C 002159FC 39 41 00 28 */ addi r10, r1, 0x28 +/* 80218AA0 00215A00 38 80 00 05 */ li r4, 5 +/* 80218AA4 00215A04 4B E6 48 21 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 80218AA8 00215A08 80 9F 00 64 */ lwz r4, 0x64(r31) +/* 80218AAC 00215A0C 38 61 00 10 */ addi r3, r1, 0x10 +/* 80218AB0 00215A10 38 A1 00 80 */ addi r5, r1, 0x80 +/* 80218AB4 00215A14 38 C0 FF FF */ li r6, -1 +/* 80218AB8 00215A18 80 84 00 10 */ lwz r4, 0x10(r4) +/* 80218ABC 00215A1C 38 84 00 3C */ addi r4, r4, 0x3c +/* 80218AC0 00215A20 48 0C C6 AD */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDatai +/* 80218AC4 00215A24 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 80218AC8 00215A28 C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 80218ACC 00215A2C 83 C1 00 14 */ lwz r30, 0x14(r1) +/* 80218AD0 00215A30 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80218AD4 00215A34 40 81 00 6C */ ble lbl_80218B40 +/* 80218AD8 00215A38 80 1F 05 40 */ lwz r0, 0x540(r31) +/* 80218ADC 00215A3C 7C 1E 00 00 */ cmpw r30, r0 +/* 80218AE0 00215A40 41 82 00 60 */ beq lbl_80218B40 +/* 80218AE4 00215A44 C0 02 B3 68 */ lfs f0, lbl_805AD088@sda21(r2) +/* 80218AE8 00215A48 38 00 00 00 */ li r0, 0 +/* 80218AEC 00215A4C 38 C0 FF FF */ li r6, -1 +/* 80218AF0 00215A50 38 60 00 01 */ li r3, 1 +/* 80218AF4 00215A54 93 C1 00 58 */ stw r30, 0x58(r1) +/* 80218AF8 00215A58 38 81 00 58 */ addi r4, r1, 0x58 +/* 80218AFC 00215A5C 38 A0 00 00 */ li r5, 0 +/* 80218B00 00215A60 90 C1 00 5C */ stw r6, 0x5c(r1) +/* 80218B04 00215A64 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 80218B08 00215A68 98 61 00 64 */ stb r3, 0x64(r1) +/* 80218B0C 00215A6C 90 01 00 68 */ stw r0, 0x68(r1) +/* 80218B10 00215A70 90 01 00 6C */ stw r0, 0x6c(r1) +/* 80218B14 00215A74 98 01 00 70 */ stb r0, 0x70(r1) +/* 80218B18 00215A78 90 01 00 74 */ stw r0, 0x74(r1) +/* 80218B1C 00215A7C 90 01 00 78 */ stw r0, 0x78(r1) +/* 80218B20 00215A80 90 01 00 7C */ stw r0, 0x7c(r1) +/* 80218B24 00215A84 80 7F 00 64 */ lwz r3, 0x64(r31) +/* 80218B28 00215A88 80 63 00 10 */ lwz r3, 0x10(r3) +/* 80218B2C 00215A8C 4B E1 42 51 */ bl SetAnimation__9CAnimDataFRC18CAnimPlaybackParmsb +/* 80218B30 00215A90 80 7F 00 64 */ lwz r3, 0x64(r31) +/* 80218B34 00215A94 38 80 00 01 */ li r4, 1 +/* 80218B38 00215A98 4B EF CA 29 */ bl EnableLooping__10CModelDataFb +/* 80218B3C 00215A9C 93 DF 05 40 */ stw r30, 0x540(r31) +lbl_80218B40: +/* 80218B40 00215AA0 34 A1 00 84 */ addic. r5, r1, 0x84 +/* 80218B44 00215AA4 41 82 00 58 */ beq lbl_80218B9C +/* 80218B48 00215AA8 80 C5 00 00 */ lwz r6, 0(r5) +/* 80218B4C 00215AAC 38 60 00 00 */ li r3, 0 +/* 80218B50 00215AB0 2C 06 00 00 */ cmpwi r6, 0 +/* 80218B54 00215AB4 40 81 00 40 */ ble lbl_80218B94 +/* 80218B58 00215AB8 2C 06 00 08 */ cmpwi r6, 8 +/* 80218B5C 00215ABC 38 86 FF F8 */ addi r4, r6, -8 +/* 80218B60 00215AC0 40 81 00 20 */ ble lbl_80218B80 +/* 80218B64 00215AC4 38 04 00 07 */ addi r0, r4, 7 +/* 80218B68 00215AC8 54 00 E8 FE */ srwi r0, r0, 3 +/* 80218B6C 00215ACC 7C 09 03 A6 */ mtctr r0 +/* 80218B70 00215AD0 2C 04 00 00 */ cmpwi r4, 0 +/* 80218B74 00215AD4 40 81 00 0C */ ble lbl_80218B80 +lbl_80218B78: +/* 80218B78 00215AD8 38 63 00 08 */ addi r3, r3, 8 +/* 80218B7C 00215ADC 42 00 FF FC */ bdnz lbl_80218B78 +lbl_80218B80: +/* 80218B80 00215AE0 7C 03 30 50 */ subf r0, r3, r6 +/* 80218B84 00215AE4 7C 09 03 A6 */ mtctr r0 +/* 80218B88 00215AE8 7C 03 30 00 */ cmpw r3, r6 +/* 80218B8C 00215AEC 40 80 00 08 */ bge lbl_80218B94 +lbl_80218B90: +/* 80218B90 00215AF0 42 00 00 00 */ bdnz lbl_80218B90 +lbl_80218B94: +/* 80218B94 00215AF4 38 00 00 00 */ li r0, 0 +/* 80218B98 00215AF8 90 05 00 00 */ stw r0, 0(r5) +lbl_80218B9C: +/* 80218B9C 00215AFC 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 80218BA0 00215B00 83 E1 00 CC */ lwz r31, 0xcc(r1) +/* 80218BA4 00215B04 83 C1 00 C8 */ lwz r30, 0xc8(r1) +/* 80218BA8 00215B08 7C 08 03 A6 */ mtlr r0 +/* 80218BAC 00215B0C 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 80218BB0 00215B10 4E 80 00 20 */ blr + +.global ProcessFrenzyState__16CScriptGunTurretFfR13CStateManager +ProcessFrenzyState__16CScriptGunTurretFfR13CStateManager: +/* 80218BB4 00215B14 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80218BB8 00215B18 7C 08 02 A6 */ mflr r0 +/* 80218BBC 00215B1C 90 01 00 54 */ stw r0, 0x54(r1) +/* 80218BC0 00215B20 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 80218BC4 00215B24 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 80218BC8 00215B28 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80218BCC 00215B2C 93 C1 00 38 */ stw r30, 0x38(r1) +/* 80218BD0 00215B30 FF E0 08 90 */ fmr f31, f1 +/* 80218BD4 00215B34 2C 04 00 01 */ cmpwi r4, 1 +/* 80218BD8 00215B38 7C 7E 1B 78 */ mr r30, r3 +/* 80218BDC 00215B3C 7C BF 2B 78 */ mr r31, r5 +/* 80218BE0 00215B40 41 82 00 74 */ beq lbl_80218C54 +/* 80218BE4 00215B44 40 80 02 30 */ bge lbl_80218E14 +/* 80218BE8 00215B48 2C 04 00 00 */ cmpwi r4, 0 +/* 80218BEC 00215B4C 40 80 00 08 */ bge lbl_80218BF4 +/* 80218BF0 00215B50 48 00 02 24 */ b lbl_80218E14 +lbl_80218BF4: +/* 80218BF4 00215B54 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 80218BF8 00215B58 48 0F 98 E5 */ bl Float__9CRandom16Fv +/* 80218BFC 00215B5C C0 02 B3 78 */ lfs f0, lbl_805AD098@sda21(r2) +/* 80218C00 00215B60 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80218C04 00215B64 7C 60 00 26 */ mfcr r3 +/* 80218C08 00215B68 88 1E 05 60 */ lbz r0, 0x560(r30) +/* 80218C0C 00215B6C 50 60 0F FE */ rlwimi r0, r3, 1, 0x1f, 0x1f +/* 80218C10 00215B70 C0 02 B3 B8 */ lfs f0, lbl_805AD0D8@sda21(r2) +/* 80218C14 00215B74 98 1E 05 60 */ stb r0, 0x560(r30) +/* 80218C18 00215B78 7F C3 F3 78 */ mr r3, r30 +/* 80218C1C 00215B7C 7F E6 FB 78 */ mr r6, r31 +/* 80218C20 00215B80 38 80 00 28 */ li r4, 0x28 +/* 80218C24 00215B84 D0 1E 05 34 */ stfs f0, 0x534(r30) +/* 80218C28 00215B88 38 A0 00 29 */ li r5, 0x29 +/* 80218C2C 00215B8C 4B E3 B2 A9 */ bl RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager +/* 80218C30 00215B90 A0 1E 00 08 */ lhz r0, 8(r30) +/* 80218C34 00215B94 7F E6 FB 78 */ mr r6, r31 +/* 80218C38 00215B98 38 81 00 14 */ addi r4, r1, 0x14 +/* 80218C3C 00215B9C 38 A0 00 08 */ li r5, 8 +/* 80218C40 00215BA0 B0 01 00 14 */ sth r0, 0x14(r1) +/* 80218C44 00215BA4 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80218C48 00215BA8 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 80218C4C 00215BAC 4B F6 26 09 */ bl SetOrbitRequestForTarget__7CPlayerF9TUniqueId19EPlayerOrbitRequestR13CStateManager +/* 80218C50 00215BB0 48 00 01 C4 */ b lbl_80218E14 +lbl_80218C54: +/* 80218C54 00215BB4 C0 3E 05 24 */ lfs f1, 0x524(r30) +/* 80218C58 00215BB8 C0 1E 03 70 */ lfs f0, 0x370(r30) +/* 80218C5C 00215BBC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80218C60 00215BC0 4C 41 13 82 */ cror 2, 1, 2 +/* 80218C64 00215BC4 40 82 00 44 */ bne lbl_80218CA8 +/* 80218C68 00215BC8 38 80 00 00 */ li r4, 0 +/* 80218C6C 00215BCC 48 00 0E AD */ bl SetTurretState__16CScriptGunTurretFQ216CScriptGunTurret12ETurretState +/* 80218C70 00215BD0 A0 1E 02 5C */ lhz r0, 0x25c(r30) +/* 80218C74 00215BD4 7F E3 FB 78 */ mr r3, r31 +/* 80218C78 00215BD8 38 81 00 0C */ addi r4, r1, 0xc +/* 80218C7C 00215BDC B0 01 00 0C */ sth r0, 0xc(r1) +/* 80218C80 00215BE0 4B E3 38 F5 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80218C84 00215BE4 7C 64 1B 78 */ mr r4, r3 +/* 80218C88 00215BE8 38 61 00 20 */ addi r3, r1, 0x20 +/* 80218C8C 00215BEC 4B E9 0B 29 */ bl "__ct__30TCastToPtr<16CScriptGunTurret>FP7CEntity" +/* 80218C90 00215BF0 80 63 00 04 */ lwz r3, 4(r3) +/* 80218C94 00215BF4 28 03 00 00 */ cmplwi r3, 0 +/* 80218C98 00215BF8 41 82 01 7C */ beq lbl_80218E14 +/* 80218C9C 00215BFC 38 00 00 00 */ li r0, 0 +/* 80218CA0 00215C00 90 03 05 20 */ stw r0, 0x520(r3) +/* 80218CA4 00215C04 48 00 01 70 */ b lbl_80218E14 +lbl_80218CA8: +/* 80218CA8 00215C08 C0 BE 00 58 */ lfs f5, 0x58(r30) +/* 80218CAC 00215C0C C0 3E 00 48 */ lfs f1, 0x48(r30) +/* 80218CB0 00215C10 C0 9E 00 38 */ lfs f4, 0x38(r30) +/* 80218CB4 00215C14 D0 81 00 28 */ stfs f4, 0x28(r1) +/* 80218CB8 00215C18 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 80218CBC 00215C1C D0 A1 00 30 */ stfs f5, 0x30(r1) +/* 80218CC0 00215C20 88 1E 05 60 */ lbz r0, 0x560(r30) +/* 80218CC4 00215C24 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 80218CC8 00215C28 41 82 00 58 */ beq lbl_80218D20 +/* 80218CCC 00215C2C C0 1E 05 54 */ lfs f0, 0x554(r30) +/* 80218CD0 00215C30 C0 5E 05 50 */ lfs f2, 0x550(r30) +/* 80218CD4 00215C34 EC 20 00 72 */ fmuls f1, f0, f1 +/* 80218CD8 00215C38 C0 7E 05 58 */ lfs f3, 0x558(r30) +/* 80218CDC 00215C3C C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 80218CE0 00215C40 EC 22 09 3A */ fmadds f1, f2, f4, f1 +/* 80218CE4 00215C44 EC 23 09 7A */ fmadds f1, f3, f5, f1 +/* 80218CE8 00215C48 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80218CEC 00215C4C 40 80 00 84 */ bge lbl_80218D70 +/* 80218CF0 00215C50 38 7E 05 44 */ addi r3, r30, 0x544 +/* 80218CF4 00215C54 38 81 00 28 */ addi r4, r1, 0x28 +/* 80218CF8 00215C58 48 0F B9 39 */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f +/* 80218CFC 00215C5C C0 02 B3 BC */ lfs f0, lbl_805AD0DC@sda21(r2) +/* 80218D00 00215C60 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80218D04 00215C64 4C 41 13 82 */ cror 2, 1, 2 +/* 80218D08 00215C68 40 82 00 68 */ bne lbl_80218D70 +/* 80218D0C 00215C6C 88 1E 05 60 */ lbz r0, 0x560(r30) +/* 80218D10 00215C70 38 60 00 00 */ li r3, 0 +/* 80218D14 00215C74 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f +/* 80218D18 00215C78 98 1E 05 60 */ stb r0, 0x560(r30) +/* 80218D1C 00215C7C 48 00 00 54 */ b lbl_80218D70 +lbl_80218D20: +/* 80218D20 00215C80 C0 1E 05 54 */ lfs f0, 0x554(r30) +/* 80218D24 00215C84 C0 5E 05 50 */ lfs f2, 0x550(r30) +/* 80218D28 00215C88 EC 20 00 72 */ fmuls f1, f0, f1 +/* 80218D2C 00215C8C C0 7E 05 58 */ lfs f3, 0x558(r30) +/* 80218D30 00215C90 C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 80218D34 00215C94 EC 22 09 3A */ fmadds f1, f2, f4, f1 +/* 80218D38 00215C98 EC 23 09 7A */ fmadds f1, f3, f5, f1 +/* 80218D3C 00215C9C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80218D40 00215CA0 40 81 00 30 */ ble lbl_80218D70 +/* 80218D44 00215CA4 38 7E 05 44 */ addi r3, r30, 0x544 +/* 80218D48 00215CA8 38 81 00 28 */ addi r4, r1, 0x28 +/* 80218D4C 00215CAC 48 0F B8 E5 */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f +/* 80218D50 00215CB0 C0 02 B3 BC */ lfs f0, lbl_805AD0DC@sda21(r2) +/* 80218D54 00215CB4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80218D58 00215CB8 4C 41 13 82 */ cror 2, 1, 2 +/* 80218D5C 00215CBC 40 82 00 14 */ bne lbl_80218D70 +/* 80218D60 00215CC0 88 1E 05 60 */ lbz r0, 0x560(r30) +/* 80218D64 00215CC4 38 60 00 01 */ li r3, 1 +/* 80218D68 00215CC8 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f +/* 80218D6C 00215CCC 98 1E 05 60 */ stb r0, 0x560(r30) +lbl_80218D70: +/* 80218D70 00215CD0 A0 1E 02 5C */ lhz r0, 0x25c(r30) +/* 80218D74 00215CD4 7F E3 FB 78 */ mr r3, r31 +/* 80218D78 00215CD8 38 81 00 08 */ addi r4, r1, 8 +/* 80218D7C 00215CDC B0 01 00 08 */ sth r0, 8(r1) +/* 80218D80 00215CE0 4B E3 37 F5 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80218D84 00215CE4 7C 64 1B 78 */ mr r4, r3 +/* 80218D88 00215CE8 38 61 00 18 */ addi r3, r1, 0x18 +/* 80218D8C 00215CEC 4B E9 0A 29 */ bl "__ct__30TCastToPtr<16CScriptGunTurret>FP7CEntity" +/* 80218D90 00215CF0 80 E3 00 04 */ lwz r7, 4(r3) +/* 80218D94 00215CF4 28 07 00 00 */ cmplwi r7, 0 +/* 80218D98 00215CF8 41 82 00 7C */ beq lbl_80218E14 +/* 80218D9C 00215CFC C0 3E 05 34 */ lfs f1, 0x534(r30) +/* 80218DA0 00215D00 C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 80218DA4 00215D04 EC 21 F8 28 */ fsubs f1, f1, f31 +/* 80218DA8 00215D08 D0 3E 05 34 */ stfs f1, 0x534(r30) +/* 80218DAC 00215D0C C0 3E 05 34 */ lfs f1, 0x534(r30) +/* 80218DB0 00215D10 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80218DB4 00215D14 40 80 00 60 */ bge lbl_80218E14 +/* 80218DB8 00215D18 C0 A2 B3 C0 */ lfs f5, lbl_805AD0E0@sda21(r2) +/* 80218DBC 00215D1C 7F C3 F3 78 */ mr r3, r30 +/* 80218DC0 00215D20 C0 07 00 38 */ lfs f0, 0x38(r7) +/* 80218DC4 00215D24 7F E5 FB 78 */ mr r5, r31 +/* 80218DC8 00215D28 C0 67 00 48 */ lfs f3, 0x48(r7) +/* 80218DCC 00215D2C 38 80 00 0A */ li r4, 0xa +/* 80218DD0 00215D30 EC 05 00 32 */ fmuls f0, f5, f0 +/* 80218DD4 00215D34 C0 27 00 40 */ lfs f1, 0x40(r7) +/* 80218DD8 00215D38 C0 47 00 58 */ lfs f2, 0x58(r7) +/* 80218DDC 00215D3C EC 85 00 F2 */ fmuls f4, f5, f3 +/* 80218DE0 00215D40 C0 C7 00 50 */ lfs f6, 0x50(r7) +/* 80218DE4 00215D44 38 C0 FF FF */ li r6, -1 +/* 80218DE8 00215D48 EC 01 00 2A */ fadds f0, f1, f0 +/* 80218DEC 00215D4C C0 67 00 60 */ lfs f3, 0x60(r7) +/* 80218DF0 00215D50 EC 25 00 B2 */ fmuls f1, f5, f2 +/* 80218DF4 00215D54 EC 46 20 2A */ fadds f2, f6, f4 +/* 80218DF8 00215D58 D0 1E 04 04 */ stfs f0, 0x404(r30) +/* 80218DFC 00215D5C EC 03 08 2A */ fadds f0, f3, f1 +/* 80218E00 00215D60 D0 5E 04 08 */ stfs f2, 0x408(r30) +/* 80218E04 00215D64 D0 1E 04 0C */ stfs f0, 0x40c(r30) +/* 80218E08 00215D68 4B E3 82 B9 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 80218E0C 00215D6C C0 02 B3 B8 */ lfs f0, lbl_805AD0D8@sda21(r2) +/* 80218E10 00215D70 D0 1E 05 34 */ stfs f0, 0x534(r30) +lbl_80218E14: +/* 80218E14 00215D74 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 80218E18 00215D78 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80218E1C 00215D7C CB E1 00 40 */ lfd f31, 0x40(r1) +/* 80218E20 00215D80 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 80218E24 00215D84 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 80218E28 00215D88 7C 08 03 A6 */ mtlr r0 +/* 80218E2C 00215D8C 38 21 00 50 */ addi r1, r1, 0x50 +/* 80218E30 00215D90 4E 80 00 20 */ blr + +.global ProcessExitTargettingState__16CScriptGunTurretFfR13CStateManager +ProcessExitTargettingState__16CScriptGunTurretFfR13CStateManager: +/* 80218E34 00215D94 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 80218E38 00215D98 7C 08 02 A6 */ mflr r0 +/* 80218E3C 00215D9C 2C 04 00 01 */ cmpwi r4, 1 +/* 80218E40 00215DA0 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 80218E44 00215DA4 93 E1 00 DC */ stw r31, 0xdc(r1) +/* 80218E48 00215DA8 93 C1 00 D8 */ stw r30, 0xd8(r1) +/* 80218E4C 00215DAC 7C BE 2B 78 */ mr r30, r5 +/* 80218E50 00215DB0 93 A1 00 D4 */ stw r29, 0xd4(r1) +/* 80218E54 00215DB4 7C 7D 1B 78 */ mr r29, r3 +/* 80218E58 00215DB8 41 82 00 08 */ beq lbl_80218E60 +/* 80218E5C 00215DBC 48 00 00 D8 */ b lbl_80218F34 +lbl_80218E60: +/* 80218E60 00215DC0 A0 7D 02 5C */ lhz r3, 0x25c(r29) +/* 80218E64 00215DC4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80218E68 00215DC8 7C 03 00 40 */ cmplw r3, r0 +/* 80218E6C 00215DCC 41 82 00 C8 */ beq lbl_80218F34 +/* 80218E70 00215DD0 A0 1D 02 5C */ lhz r0, 0x25c(r29) +/* 80218E74 00215DD4 7F C3 F3 78 */ mr r3, r30 +/* 80218E78 00215DD8 38 81 00 08 */ addi r4, r1, 8 +/* 80218E7C 00215DDC B0 01 00 08 */ sth r0, 8(r1) +/* 80218E80 00215DE0 4B E3 36 F5 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80218E84 00215DE4 7C 64 1B 78 */ mr r4, r3 +/* 80218E88 00215DE8 38 61 00 0C */ addi r3, r1, 0xc +/* 80218E8C 00215DEC 4B E9 09 29 */ bl "__ct__30TCastToPtr<16CScriptGunTurret>FP7CEntity" +/* 80218E90 00215DF0 83 E3 00 04 */ lwz r31, 4(r3) +/* 80218E94 00215DF4 28 1F 00 00 */ cmplwi r31, 0 +/* 80218E98 00215DF8 41 82 00 9C */ beq lbl_80218F34 +/* 80218E9C 00215DFC 80 82 B3 50 */ lwz r4, lbl_805AD070@sda21(r2) +/* 80218EA0 00215E00 38 61 00 14 */ addi r3, r1, 0x14 +/* 80218EA4 00215E04 4B DE BE 15 */ bl string_l__4rstlFPCc +/* 80218EA8 00215E08 7F A4 EB 78 */ mr r4, r29 +/* 80218EAC 00215E0C 38 61 00 3C */ addi r3, r1, 0x3c +/* 80218EB0 00215E10 38 A1 00 14 */ addi r5, r1, 0x14 +/* 80218EB4 00215E14 4B E3 A0 4D */ bl "GetLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80218EB8 00215E18 38 61 00 6C */ addi r3, r1, 0x6c +/* 80218EBC 00215E1C 38 9D 00 34 */ addi r4, r29, 0x34 +/* 80218EC0 00215E20 38 A1 00 3C */ addi r5, r1, 0x3c +/* 80218EC4 00215E24 48 0F 9A 8D */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80218EC8 00215E28 38 61 00 9C */ addi r3, r1, 0x9c +/* 80218ECC 00215E2C 38 81 00 6C */ addi r4, r1, 0x6c +/* 80218ED0 00215E30 48 0F 9C A5 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80218ED4 00215E34 38 61 00 14 */ addi r3, r1, 0x14 +/* 80218ED8 00215E38 48 12 4C 09 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80218EDC 00215E3C C0 5F 00 58 */ lfs f2, 0x58(r31) +/* 80218EE0 00215E40 38 61 00 30 */ addi r3, r1, 0x30 +/* 80218EE4 00215E44 C0 3F 00 48 */ lfs f1, 0x48(r31) +/* 80218EE8 00215E48 38 81 00 24 */ addi r4, r1, 0x24 +/* 80218EEC 00215E4C C0 1F 00 38 */ lfs f0, 0x38(r31) +/* 80218EF0 00215E50 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 80218EF4 00215E54 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 80218EF8 00215E58 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 80218EFC 00215E5C C0 1D 05 44 */ lfs f0, 0x544(r29) +/* 80218F00 00215E60 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 80218F04 00215E64 C0 1D 05 48 */ lfs f0, 0x548(r29) +/* 80218F08 00215E68 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 80218F0C 00215E6C C0 1D 05 4C */ lfs f0, 0x54c(r29) +/* 80218F10 00215E70 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 80218F14 00215E74 48 0F B7 1D */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f +/* 80218F18 00215E78 C0 02 B3 C4 */ lfs f0, lbl_805AD0E4@sda21(r2) +/* 80218F1C 00215E7C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80218F20 00215E80 40 80 00 14 */ bge lbl_80218F34 +/* 80218F24 00215E84 7F A3 EB 78 */ mr r3, r29 +/* 80218F28 00215E88 7F C5 F3 78 */ mr r5, r30 +/* 80218F2C 00215E8C 38 80 00 06 */ li r4, 6 +/* 80218F30 00215E90 48 00 0B E9 */ bl SetTurretState__16CScriptGunTurretFQ216CScriptGunTurret12ETurretState +lbl_80218F34: +/* 80218F34 00215E94 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 80218F38 00215E98 83 E1 00 DC */ lwz r31, 0xdc(r1) +/* 80218F3C 00215E9C 83 C1 00 D8 */ lwz r30, 0xd8(r1) +/* 80218F40 00215EA0 83 A1 00 D4 */ lwz r29, 0xd4(r1) +/* 80218F44 00215EA4 7C 08 03 A6 */ mtlr r0 +/* 80218F48 00215EA8 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 80218F4C 00215EAC 4E 80 00 20 */ blr + +.global ProcessTargettingState__16CScriptGunTurretFfR13CStateManager +ProcessTargettingState__16CScriptGunTurretFfR13CStateManager: +/* 80218F50 00215EB0 94 21 FE 30 */ stwu r1, -0x1d0(r1) +/* 80218F54 00215EB4 7C 08 02 A6 */ mflr r0 +/* 80218F58 00215EB8 90 01 01 D4 */ stw r0, 0x1d4(r1) +/* 80218F5C 00215EBC DB E1 01 C0 */ stfd f31, 0x1c0(r1) +/* 80218F60 00215EC0 F3 E1 01 C8 */ psq_st f31, 456(r1), 0, qr0 +/* 80218F64 00215EC4 DB C1 01 B0 */ stfd f30, 0x1b0(r1) +/* 80218F68 00215EC8 F3 C1 01 B8 */ psq_st f30, 440(r1), 0, qr0 +/* 80218F6C 00215ECC DB A1 01 A0 */ stfd f29, 0x1a0(r1) +/* 80218F70 00215ED0 F3 A1 01 A8 */ psq_st f29, 424(r1), 0, qr0 +/* 80218F74 00215ED4 DB 81 01 90 */ stfd f28, 0x190(r1) +/* 80218F78 00215ED8 F3 81 01 98 */ psq_st f28, 408(r1), 0, qr0 +/* 80218F7C 00215EDC 93 E1 01 8C */ stw r31, 0x18c(r1) +/* 80218F80 00215EE0 93 C1 01 88 */ stw r30, 0x188(r1) +/* 80218F84 00215EE4 93 A1 01 84 */ stw r29, 0x184(r1) +/* 80218F88 00215EE8 93 81 01 80 */ stw r28, 0x180(r1) +/* 80218F8C 00215EEC FF E0 08 90 */ fmr f31, f1 +/* 80218F90 00215EF0 2C 04 00 01 */ cmpwi r4, 1 +/* 80218F94 00215EF4 7C 7F 1B 78 */ mr r31, r3 +/* 80218F98 00215EF8 7C BC 2B 78 */ mr r28, r5 +/* 80218F9C 00215EFC 41 82 00 2C */ beq lbl_80218FC8 +/* 80218FA0 00215F00 40 80 00 10 */ bge lbl_80218FB0 +/* 80218FA4 00215F04 2C 04 00 00 */ cmpwi r4, 0 +/* 80218FA8 00215F08 40 80 00 14 */ bge lbl_80218FBC +/* 80218FAC 00215F0C 48 00 04 40 */ b lbl_802193EC +lbl_80218FB0: +/* 80218FB0 00215F10 2C 04 00 03 */ cmpwi r4, 3 +/* 80218FB4 00215F14 40 80 04 38 */ bge lbl_802193EC +/* 80218FB8 00215F18 48 00 04 24 */ b lbl_802193DC +lbl_80218FBC: +/* 80218FBC 00215F1C C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 80218FC0 00215F20 D0 1F 05 2C */ stfs f0, 0x52c(r31) +/* 80218FC4 00215F24 48 00 04 28 */ b lbl_802193EC +lbl_80218FC8: +/* 80218FC8 00215F28 88 1F 05 60 */ lbz r0, 0x560(r31) +/* 80218FCC 00215F2C 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 80218FD0 00215F30 40 82 00 14 */ bne lbl_80218FE4 +/* 80218FD4 00215F34 7F 84 E3 78 */ mr r4, r28 +/* 80218FD8 00215F38 4B FF E9 CD */ bl InDetectionRange__16CScriptGunTurretCFR13CStateManager +/* 80218FDC 00215F3C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80218FE0 00215F40 41 82 03 C8 */ beq lbl_802193A8 +lbl_80218FE4: +/* 80218FE4 00215F44 FC 20 F8 90 */ fmr f1, f31 +/* 80218FE8 00215F48 7F E3 FB 78 */ mr r3, r31 +/* 80218FEC 00215F4C 7F 84 E3 78 */ mr r4, r28 +/* 80218FF0 00215F50 4B FF F8 41 */ bl UpdateTargettingMode__16CScriptGunTurretFfR13CStateManager +/* 80218FF4 00215F54 A0 7F 02 5C */ lhz r3, 0x25c(r31) +/* 80218FF8 00215F58 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80218FFC 00215F5C 7C 03 00 40 */ cmplw r3, r0 +/* 80219000 00215F60 41 82 02 00 */ beq lbl_80219200 +/* 80219004 00215F64 A0 1F 02 5C */ lhz r0, 0x25c(r31) +/* 80219008 00215F68 7F 83 E3 78 */ mr r3, r28 +/* 8021900C 00215F6C 38 81 00 08 */ addi r4, r1, 8 +/* 80219010 00215F70 B0 01 00 08 */ sth r0, 8(r1) +/* 80219014 00215F74 4B E3 35 61 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80219018 00215F78 7C 64 1B 78 */ mr r4, r3 +/* 8021901C 00215F7C 38 61 00 18 */ addi r3, r1, 0x18 +/* 80219020 00215F80 4B E9 07 95 */ bl "__ct__30TCastToPtr<16CScriptGunTurret>FP7CEntity" +/* 80219024 00215F84 83 A3 00 04 */ lwz r29, 4(r3) +/* 80219028 00215F88 28 1D 00 00 */ cmplwi r29, 0 +/* 8021902C 00215F8C 41 82 01 D4 */ beq lbl_80219200 +/* 80219030 00215F90 C3 DF 04 04 */ lfs f30, 0x404(r31) +/* 80219034 00215F94 7F E3 FB 78 */ mr r3, r31 +/* 80219038 00215F98 C3 BF 04 08 */ lfs f29, 0x408(r31) +/* 8021903C 00215F9C 7F 84 E3 78 */ mr r4, r28 +/* 80219040 00215FA0 C3 9F 04 0C */ lfs f28, 0x40c(r31) +/* 80219044 00215FA4 4B FF EA 95 */ bl IsPlayerInFiringRange__16CScriptGunTurretCFR13CStateManager +/* 80219048 00215FA8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8021904C 00215FAC 41 82 01 14 */ beq lbl_80219160 +/* 80219050 00215FB0 80 82 B3 54 */ lwz r4, lbl_805AD074@sda21(r2) +/* 80219054 00215FB4 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 80219058 00215FB8 4B DE BC 61 */ bl string_l__4rstlFPCc +/* 8021905C 00215FBC 7F A4 EB 78 */ mr r4, r29 +/* 80219060 00215FC0 38 61 01 20 */ addi r3, r1, 0x120 +/* 80219064 00215FC4 38 A1 00 B4 */ addi r5, r1, 0xb4 +/* 80219068 00215FC8 4B E3 9E 99 */ bl "GetLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8021906C 00215FCC 38 61 01 50 */ addi r3, r1, 0x150 +/* 80219070 00215FD0 38 81 01 20 */ addi r4, r1, 0x120 +/* 80219074 00215FD4 48 0F 9B 01 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80219078 00215FD8 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 8021907C 00215FDC 48 12 4A 65 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80219080 00215FE0 C0 41 01 5C */ lfs f2, 0x15c(r1) +/* 80219084 00215FE4 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 80219088 00215FE8 C0 21 01 6C */ lfs f1, 0x16c(r1) +/* 8021908C 00215FEC 38 9D 00 34 */ addi r4, r29, 0x34 +/* 80219090 00215FF0 C0 01 01 7C */ lfs f0, 0x17c(r1) +/* 80219094 00215FF4 38 A1 00 9C */ addi r5, r1, 0x9c +/* 80219098 00215FF8 D0 41 00 9C */ stfs f2, 0x9c(r1) +/* 8021909C 00215FFC D0 21 00 A0 */ stfs f1, 0xa0(r1) +/* 802190A0 00216000 D0 01 00 A4 */ stfs f0, 0xa4(r1) +/* 802190A4 00216004 48 0F 99 DD */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 802190A8 00216008 C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 802190AC 0021600C 7F 85 E3 78 */ mr r5, r28 +/* 802190B0 00216010 C0 01 00 AC */ lfs f0, 0xac(r1) +/* 802190B4 00216014 38 61 00 90 */ addi r3, r1, 0x90 +/* 802190B8 00216018 C0 7D 00 60 */ lfs f3, 0x60(r29) +/* 802190BC 0021601C C0 41 00 B0 */ lfs f2, 0xb0(r1) +/* 802190C0 00216020 EC 81 00 2A */ fadds f4, f1, f0 +/* 802190C4 00216024 C0 3D 00 40 */ lfs f1, 0x40(r29) +/* 802190C8 00216028 C0 01 00 A8 */ lfs f0, 0xa8(r1) +/* 802190CC 0021602C EC 43 10 2A */ fadds f2, f3, f2 +/* 802190D0 00216030 D0 81 01 18 */ stfs f4, 0x118(r1) +/* 802190D4 00216034 EC 01 00 2A */ fadds f0, f1, f0 +/* 802190D8 00216038 C0 22 B3 5C */ lfs f1, lbl_805AD07C@sda21(r2) +/* 802190DC 0021603C D0 41 01 1C */ stfs f2, 0x11c(r1) +/* 802190E0 00216040 D0 01 01 14 */ stfs f0, 0x114(r1) +/* 802190E4 00216044 80 9C 08 4C */ lwz r4, 0x84c(r28) +/* 802190E8 00216048 81 84 00 00 */ lwz r12, 0(r4) +/* 802190EC 0021604C 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 802190F0 00216050 7D 89 03 A6 */ mtctr r12 +/* 802190F4 00216054 4E 80 04 21 */ bctrl +/* 802190F8 00216058 C0 01 00 90 */ lfs f0, 0x90(r1) +/* 802190FC 0021605C 7F 85 E3 78 */ mr r5, r28 +/* 80219100 00216060 38 61 00 78 */ addi r3, r1, 0x78 +/* 80219104 00216064 C0 22 B3 5C */ lfs f1, lbl_805AD07C@sda21(r2) +/* 80219108 00216068 D0 1F 04 04 */ stfs f0, 0x404(r31) +/* 8021910C 0021606C C0 01 00 94 */ lfs f0, 0x94(r1) +/* 80219110 00216070 D0 1F 04 08 */ stfs f0, 0x408(r31) +/* 80219114 00216074 C0 01 00 98 */ lfs f0, 0x98(r1) +/* 80219118 00216078 D0 1F 04 0C */ stfs f0, 0x40c(r31) +/* 8021911C 0021607C 80 9C 08 4C */ lwz r4, 0x84c(r28) +/* 80219120 00216080 81 84 00 00 */ lwz r12, 0(r4) +/* 80219124 00216084 7C 9E 23 78 */ mr r30, r4 +/* 80219128 00216088 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 8021912C 0021608C 7D 89 03 A6 */ mtctr r12 +/* 80219130 00216090 4E 80 04 21 */ bctrl +/* 80219134 00216094 FC 20 F8 90 */ fmr f1, f31 +/* 80219138 00216098 7F C7 F3 78 */ mr r7, r30 +/* 8021913C 0021609C 38 61 00 84 */ addi r3, r1, 0x84 +/* 80219140 002160A0 38 9F 03 7C */ addi r4, r31, 0x37c +/* 80219144 002160A4 38 A1 01 14 */ addi r5, r1, 0x114 +/* 80219148 002160A8 38 C1 00 78 */ addi r6, r1, 0x78 +/* 8021914C 002160AC 39 00 00 00 */ li r8, 0 +/* 80219150 002160B0 48 00 2D 9D */ bl PredictInterceptPos__15CProjectileInfoFRC9CVector3fRC9CVector3fRC7CPlayerbf +/* 80219154 002160B4 C3 C1 00 84 */ lfs f30, 0x84(r1) +/* 80219158 002160B8 C3 A1 00 88 */ lfs f29, 0x88(r1) +/* 8021915C 002160BC C3 81 00 8C */ lfs f28, 0x8c(r1) +lbl_80219160: +/* 80219160 002160C0 C0 3F 04 08 */ lfs f1, 0x408(r31) +/* 80219164 002160C4 38 61 01 08 */ addi r3, r1, 0x108 +/* 80219168 002160C8 C0 1D 00 50 */ lfs f0, 0x50(r29) +/* 8021916C 002160CC C0 7F 04 0C */ lfs f3, 0x40c(r31) +/* 80219170 002160D0 C0 5D 00 60 */ lfs f2, 0x60(r29) +/* 80219174 002160D4 EC 81 00 28 */ fsubs f4, f1, f0 +/* 80219178 002160D8 C0 3F 04 04 */ lfs f1, 0x404(r31) +/* 8021917C 002160DC C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 80219180 002160E0 EC 43 10 28 */ fsubs f2, f3, f2 +/* 80219184 002160E4 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80219188 002160E8 D0 81 01 0C */ stfs f4, 0x10c(r1) +/* 8021918C 002160EC D0 41 01 10 */ stfs f2, 0x110(r1) +/* 80219190 002160F0 D0 01 01 08 */ stfs f0, 0x108(r1) +/* 80219194 002160F4 48 0F B7 25 */ bl Magnitude__9CVector3fCFv +/* 80219198 002160F8 C0 42 B3 C8 */ lfs f2, lbl_805AD0E8@sda21(r2) +/* 8021919C 002160FC 38 61 00 60 */ addi r3, r1, 0x60 +/* 802191A0 00216100 38 9F 03 A4 */ addi r4, r31, 0x3a4 +/* 802191A4 00216104 4B F9 3F A1 */ bl GetDistanceCompensatedError__10CBurstFireCFff +/* 802191A8 00216108 38 61 00 6C */ addi r3, r1, 0x6c +/* 802191AC 0021610C 38 9D 00 34 */ addi r4, r29, 0x34 +/* 802191B0 00216110 38 A1 00 60 */ addi r5, r1, 0x60 +/* 802191B4 00216114 48 0F 98 CD */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 802191B8 00216118 C0 BF 04 04 */ lfs f5, 0x404(r31) +/* 802191BC 0021611C C0 DF 04 08 */ lfs f6, 0x408(r31) +/* 802191C0 00216120 EC 3E 28 28 */ fsubs f1, f30, f5 +/* 802191C4 00216124 C0 01 00 6C */ lfs f0, 0x6c(r1) +/* 802191C8 00216128 C0 FF 04 0C */ lfs f7, 0x40c(r31) +/* 802191CC 0021612C EC 9D 30 28 */ fsubs f4, f29, f6 +/* 802191D0 00216130 C0 41 00 70 */ lfs f2, 0x70(r1) +/* 802191D4 00216134 EC 01 00 2A */ fadds f0, f1, f0 +/* 802191D8 00216138 EC 7C 38 28 */ fsubs f3, f28, f7 +/* 802191DC 0021613C C0 21 00 74 */ lfs f1, 0x74(r1) +/* 802191E0 00216140 EC 44 10 2A */ fadds f2, f4, f2 +/* 802191E4 00216144 EC 05 00 2A */ fadds f0, f5, f0 +/* 802191E8 00216148 EC 23 08 2A */ fadds f1, f3, f1 +/* 802191EC 0021614C EC 46 10 2A */ fadds f2, f6, f2 +/* 802191F0 00216150 D0 1D 04 04 */ stfs f0, 0x404(r29) +/* 802191F4 00216154 EC 07 08 2A */ fadds f0, f7, f1 +/* 802191F8 00216158 D0 5D 04 08 */ stfs f2, 0x408(r29) +/* 802191FC 0021615C D0 1D 04 0C */ stfs f0, 0x40c(r29) +lbl_80219200: +/* 80219200 00216160 C0 3F 04 0C */ lfs f1, 0x40c(r31) +/* 80219204 00216164 38 61 00 FC */ addi r3, r1, 0xfc +/* 80219208 00216168 C0 1F 00 60 */ lfs f0, 0x60(r31) +/* 8021920C 0021616C C0 9F 04 08 */ lfs f4, 0x408(r31) +/* 80219210 00216170 C0 7F 00 50 */ lfs f3, 0x50(r31) +/* 80219214 00216174 EC A1 00 28 */ fsubs f5, f1, f0 +/* 80219218 00216178 C0 5F 04 04 */ lfs f2, 0x404(r31) +/* 8021921C 0021617C C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 80219220 00216180 EC 64 18 28 */ fsubs f3, f4, f3 +/* 80219224 00216184 C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 80219228 00216188 EC 22 08 28 */ fsubs f1, f2, f1 +/* 8021922C 0021618C D0 A1 01 04 */ stfs f5, 0x104(r1) +/* 80219230 00216190 D0 61 01 00 */ stfs f3, 0x100(r1) +/* 80219234 00216194 D0 21 00 FC */ stfs f1, 0xfc(r1) +/* 80219238 00216198 D0 01 01 04 */ stfs f0, 0x104(r1) +/* 8021923C 0021619C 48 0F B4 BD */ bl CanBeNormalized__9CVector3fCFv +/* 80219240 002161A0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80219244 002161A4 41 82 01 20 */ beq lbl_80219364 +/* 80219248 002161A8 38 61 00 54 */ addi r3, r1, 0x54 +/* 8021924C 002161AC 38 81 00 FC */ addi r4, r1, 0xfc +/* 80219250 002161B0 48 0F B6 01 */ bl AsNormalized__9CVector3fCFv +/* 80219254 002161B4 C0 41 00 54 */ lfs f2, 0x54(r1) +/* 80219258 002161B8 38 61 00 F0 */ addi r3, r1, 0xf0 +/* 8021925C 002161BC C0 21 00 58 */ lfs f1, 0x58(r1) +/* 80219260 002161C0 38 81 00 E4 */ addi r4, r1, 0xe4 +/* 80219264 002161C4 C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 80219268 002161C8 D0 41 00 F0 */ stfs f2, 0xf0(r1) +/* 8021926C 002161CC D0 21 00 F4 */ stfs f1, 0xf4(r1) +/* 80219270 002161D0 D0 01 00 F8 */ stfs f0, 0xf8(r1) +/* 80219274 002161D4 C0 5F 00 58 */ lfs f2, 0x58(r31) +/* 80219278 002161D8 C0 3F 00 48 */ lfs f1, 0x48(r31) +/* 8021927C 002161DC C0 1F 00 38 */ lfs f0, 0x38(r31) +/* 80219280 002161E0 D0 01 00 E4 */ stfs f0, 0xe4(r1) +/* 80219284 002161E4 D0 21 00 E8 */ stfs f1, 0xe8(r1) +/* 80219288 002161E8 D0 41 00 EC */ stfs f2, 0xec(r1) +/* 8021928C 002161EC 48 0F B3 A5 */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f +/* 80219290 002161F0 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 80219294 002161F4 FC 00 08 18 */ frsp f0, f1 +/* 80219298 002161F8 C0 3F 02 FC */ lfs f1, 0x2fc(r31) +/* 8021929C 002161FC EC 3F 00 72 */ fmuls f1, f31, f1 +/* 802192A0 00216200 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 802192A4 00216204 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 802192A8 00216208 40 80 00 0C */ bge lbl_802192B4 +/* 802192AC 0021620C 38 61 00 10 */ addi r3, r1, 0x10 +/* 802192B0 00216210 48 00 00 08 */ b lbl_802192B8 +lbl_802192B4: +/* 802192B4 00216214 38 61 00 14 */ addi r3, r1, 0x14 +lbl_802192B8: +/* 802192B8 00216218 C0 C3 00 00 */ lfs f6, 0(r3) +/* 802192BC 0021621C 38 61 00 44 */ addi r3, r1, 0x44 +/* 802192C0 00216220 C0 A1 00 F0 */ lfs f5, 0xf0(r1) +/* 802192C4 00216224 38 81 00 38 */ addi r4, r1, 0x38 +/* 802192C8 00216228 C0 81 00 F4 */ lfs f4, 0xf4(r1) +/* 802192CC 0021622C 38 A1 00 2C */ addi r5, r1, 0x2c +/* 802192D0 00216230 C0 61 00 F8 */ lfs f3, 0xf8(r1) +/* 802192D4 00216234 38 C1 00 0C */ addi r6, r1, 0xc +/* 802192D8 00216238 C0 41 00 E4 */ lfs f2, 0xe4(r1) +/* 802192DC 0021623C C0 21 00 E8 */ lfs f1, 0xe8(r1) +/* 802192E0 00216240 C0 01 00 EC */ lfs f0, 0xec(r1) +/* 802192E4 00216244 D0 C1 00 0C */ stfs f6, 0xc(r1) +/* 802192E8 00216248 D0 A1 00 2C */ stfs f5, 0x2c(r1) +/* 802192EC 0021624C D0 81 00 30 */ stfs f4, 0x30(r1) +/* 802192F0 00216250 D0 61 00 34 */ stfs f3, 0x34(r1) +/* 802192F4 00216254 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 802192F8 00216258 D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 802192FC 0021625C D0 01 00 40 */ stfs f0, 0x40(r1) +/* 80219300 00216260 48 0F 83 95 */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle +/* 80219304 00216264 C0 61 00 44 */ lfs f3, 0x44(r1) +/* 80219308 00216268 38 A1 00 D8 */ addi r5, r1, 0xd8 +/* 8021930C 0021626C C0 41 00 48 */ lfs f2, 0x48(r1) +/* 80219310 00216270 38 61 00 20 */ addi r3, r1, 0x20 +/* 80219314 00216274 C0 21 00 4C */ lfs f1, 0x4c(r1) +/* 80219318 00216278 38 9F 00 34 */ addi r4, r31, 0x34 +/* 8021931C 0021627C C0 01 00 50 */ lfs f0, 0x50(r1) +/* 80219320 00216280 D0 61 00 D4 */ stfs f3, 0xd4(r1) +/* 80219324 00216284 D0 41 00 D8 */ stfs f2, 0xd8(r1) +/* 80219328 00216288 D0 21 00 DC */ stfs f1, 0xdc(r1) +/* 8021932C 0021628C D0 01 00 E0 */ stfs f0, 0xe0(r1) +/* 80219330 00216290 48 0F 96 F5 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 80219334 00216294 C0 81 00 D4 */ lfs f4, 0xd4(r1) +/* 80219338 00216298 FC 20 F8 90 */ fmr f1, f31 +/* 8021933C 0021629C C0 61 00 20 */ lfs f3, 0x20(r1) +/* 80219340 002162A0 7F E3 FB 78 */ mr r3, r31 +/* 80219344 002162A4 C0 41 00 24 */ lfs f2, 0x24(r1) +/* 80219348 002162A8 38 81 00 C4 */ addi r4, r1, 0xc4 +/* 8021934C 002162AC C0 01 00 28 */ lfs f0, 0x28(r1) +/* 80219350 002162B0 D0 81 00 C4 */ stfs f4, 0xc4(r1) +/* 80219354 002162B4 D0 61 00 C8 */ stfs f3, 0xc8(r1) +/* 80219358 002162B8 D0 41 00 CC */ stfs f2, 0xcc(r1) +/* 8021935C 002162BC D0 01 00 D0 */ stfs f0, 0xd0(r1) +/* 80219360 002162C0 4B F0 19 FD */ bl RotateInOneFrameOR__13CPhysicsActorFRC11CQuaternionf +lbl_80219364: +/* 80219364 002162C4 7F E3 FB 78 */ mr r3, r31 +/* 80219368 002162C8 7F 84 E3 78 */ mr r4, r28 +/* 8021936C 002162CC 4B FF E5 E5 */ bl ShouldFire__16CScriptGunTurretCFR13CStateManager +/* 80219370 002162D0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80219374 002162D4 41 82 00 28 */ beq lbl_8021939C +/* 80219378 002162D8 7F E3 FB 78 */ mr r3, r31 +/* 8021937C 002162DC 7F 85 E3 78 */ mr r5, r28 +/* 80219380 002162E0 38 80 00 0A */ li r4, 0xa +/* 80219384 002162E4 38 C0 FF FF */ li r6, -1 +/* 80219388 002162E8 4B E3 7D 39 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 8021938C 002162EC 88 1F 05 60 */ lbz r0, 0x560(r31) +/* 80219390 002162F0 38 60 00 01 */ li r3, 1 +/* 80219394 002162F4 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 80219398 002162F8 98 1F 05 60 */ stb r0, 0x560(r31) +lbl_8021939C: +/* 8021939C 002162FC C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 802193A0 00216300 D0 1F 05 2C */ stfs f0, 0x52c(r31) +/* 802193A4 00216304 48 00 00 48 */ b lbl_802193EC +lbl_802193A8: +/* 802193A8 00216308 C0 3F 05 2C */ lfs f1, 0x52c(r31) +/* 802193AC 0021630C C0 02 B3 CC */ lfs f0, lbl_805AD0EC@sda21(r2) +/* 802193B0 00216310 EC 21 F8 2A */ fadds f1, f1, f31 +/* 802193B4 00216314 D0 3F 05 2C */ stfs f1, 0x52c(r31) +/* 802193B8 00216318 C0 3F 05 2C */ lfs f1, 0x52c(r31) +/* 802193BC 0021631C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802193C0 00216320 4C 41 13 82 */ cror 2, 1, 2 +/* 802193C4 00216324 40 82 00 28 */ bne lbl_802193EC +/* 802193C8 00216328 7F E3 FB 78 */ mr r3, r31 +/* 802193CC 0021632C 7F 85 E3 78 */ mr r5, r28 +/* 802193D0 00216330 38 80 00 0B */ li r4, 0xb +/* 802193D4 00216334 48 00 07 45 */ bl SetTurretState__16CScriptGunTurretFQ216CScriptGunTurret12ETurretState +/* 802193D8 00216338 48 00 00 14 */ b lbl_802193EC +lbl_802193DC: +/* 802193DC 0021633C 88 1F 05 60 */ lbz r0, 0x560(r31) +/* 802193E0 00216340 38 60 00 01 */ li r3, 1 +/* 802193E4 00216344 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 802193E8 00216348 98 1F 05 60 */ stb r0, 0x560(r31) +lbl_802193EC: +/* 802193EC 0021634C E3 E1 01 C8 */ psq_l f31, 456(r1), 0, qr0 +/* 802193F0 00216350 CB E1 01 C0 */ lfd f31, 0x1c0(r1) +/* 802193F4 00216354 E3 C1 01 B8 */ psq_l f30, 440(r1), 0, qr0 +/* 802193F8 00216358 CB C1 01 B0 */ lfd f30, 0x1b0(r1) +/* 802193FC 0021635C E3 A1 01 A8 */ psq_l f29, 424(r1), 0, qr0 +/* 80219400 00216360 CB A1 01 A0 */ lfd f29, 0x1a0(r1) +/* 80219404 00216364 E3 81 01 98 */ psq_l f28, 408(r1), 0, qr0 +/* 80219408 00216368 CB 81 01 90 */ lfd f28, 0x190(r1) +/* 8021940C 0021636C 83 E1 01 8C */ lwz r31, 0x18c(r1) +/* 80219410 00216370 83 C1 01 88 */ lwz r30, 0x188(r1) +/* 80219414 00216374 83 A1 01 84 */ lwz r29, 0x184(r1) +/* 80219418 00216378 80 01 01 D4 */ lwz r0, 0x1d4(r1) +/* 8021941C 0021637C 83 81 01 80 */ lwz r28, 0x180(r1) +/* 80219420 00216380 7C 08 03 A6 */ mtlr r0 +/* 80219424 00216384 38 21 01 D0 */ addi r1, r1, 0x1d0 +/* 80219428 00216388 4E 80 00 20 */ blr + +.global ProcessPanningState__16CScriptGunTurretFfR13CStateManager +ProcessPanningState__16CScriptGunTurretFfR13CStateManager: +/* 8021942C 0021638C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80219430 00216390 7C 08 02 A6 */ mflr r0 +/* 80219434 00216394 90 01 00 34 */ stw r0, 0x34(r1) +/* 80219438 00216398 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 8021943C 0021639C F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 80219440 002163A0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80219444 002163A4 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80219448 002163A8 FF E0 08 90 */ fmr f31, f1 +/* 8021944C 002163AC 2C 04 00 01 */ cmpwi r4, 1 +/* 80219450 002163B0 7C 7E 1B 78 */ mr r30, r3 +/* 80219454 002163B4 7C BF 2B 78 */ mr r31, r5 +/* 80219458 002163B8 41 82 00 20 */ beq lbl_80219478 +/* 8021945C 002163BC 40 80 01 40 */ bge lbl_8021959C +/* 80219460 002163C0 2C 04 00 00 */ cmpwi r4, 0 +/* 80219464 002163C4 40 80 00 08 */ bge lbl_8021946C +/* 80219468 002163C8 48 00 01 34 */ b lbl_8021959C +lbl_8021946C: +/* 8021946C 002163CC C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 80219470 002163D0 D0 1E 05 2C */ stfs f0, 0x52c(r30) +/* 80219474 002163D4 48 00 01 28 */ b lbl_8021959C +lbl_80219478: +/* 80219478 002163D8 7F E4 FB 78 */ mr r4, r31 +/* 8021947C 002163DC 4B FF E6 5D */ bl IsPlayerInFiringRange__16CScriptGunTurretCFR13CStateManager +/* 80219480 002163E0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80219484 002163E4 41 82 00 6C */ beq lbl_802194F0 +/* 80219488 002163E8 7F C3 F3 78 */ mr r3, r30 +/* 8021948C 002163EC 7F E4 FB 78 */ mr r4, r31 +/* 80219490 002163F0 4B FF E5 15 */ bl InDetectionRange__16CScriptGunTurretCFR13CStateManager +/* 80219494 002163F4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80219498 002163F8 41 82 00 58 */ beq lbl_802194F0 +/* 8021949C 002163FC 7F C3 F3 78 */ mr r3, r30 +/* 802194A0 00216400 7F E5 FB 78 */ mr r5, r31 +/* 802194A4 00216404 38 80 00 09 */ li r4, 9 +/* 802194A8 00216408 48 00 06 71 */ bl SetTurretState__16CScriptGunTurretFQ216CScriptGunTurret12ETurretState +/* 802194AC 0021640C 81 5E 00 04 */ lwz r10, 4(r30) +/* 802194B0 00216410 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 802194B4 00216414 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 802194B8 00216418 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 802194BC 0021641C C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 802194C0 00216420 38 61 00 08 */ addi r3, r1, 8 +/* 802194C4 00216424 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 802194C8 00216428 38 A1 00 0C */ addi r5, r1, 0xc +/* 802194CC 0021642C A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) +/* 802194D0 00216430 38 E0 00 00 */ li r7, 0 +/* 802194D4 00216434 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 802194D8 00216438 39 00 00 00 */ li r8, 0 +/* 802194DC 0021643C D0 21 00 10 */ stfs f1, 0x10(r1) +/* 802194E0 00216440 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 802194E4 00216444 A0 9E 03 52 */ lhz r4, 0x352(r30) +/* 802194E8 00216448 48 0D 0D C9 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +/* 802194EC 0021644C 48 00 00 B0 */ b lbl_8021959C +lbl_802194F0: +/* 802194F0 00216450 C0 1E 05 2C */ lfs f0, 0x52c(r30) +/* 802194F4 00216454 EC 00 F8 2A */ fadds f0, f0, f31 +/* 802194F8 00216458 D0 1E 05 2C */ stfs f0, 0x52c(r30) +/* 802194FC 0021645C C0 1E 05 30 */ lfs f0, 0x530(r30) +/* 80219500 00216460 EC 00 F8 2A */ fadds f0, f0, f31 +/* 80219504 00216464 D0 1E 05 30 */ stfs f0, 0x530(r30) +/* 80219508 00216468 C0 3E 05 30 */ lfs f1, 0x530(r30) +/* 8021950C 0021646C C0 1E 02 EC */ lfs f0, 0x2ec(r30) +/* 80219510 00216470 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80219514 00216474 4C 41 13 82 */ cror 2, 1, 2 +/* 80219518 00216478 40 82 00 50 */ bne lbl_80219568 +/* 8021951C 0021647C 88 1E 04 F0 */ lbz r0, 0x4f0(r30) +/* 80219520 00216480 28 00 00 00 */ cmplwi r0, 0 +/* 80219524 00216484 40 82 00 44 */ bne lbl_80219568 +/* 80219528 00216488 88 1E 03 74 */ lbz r0, 0x374(r30) +/* 8021952C 0021648C 28 00 00 00 */ cmplwi r0, 0 +/* 80219530 00216490 40 82 00 38 */ bne lbl_80219568 +/* 80219534 00216494 7F C3 F3 78 */ mr r3, r30 +/* 80219538 00216498 7F E5 FB 78 */ mr r5, r31 +/* 8021953C 0021649C 38 80 00 05 */ li r4, 5 +/* 80219540 002164A0 48 00 05 D9 */ bl SetTurretState__16CScriptGunTurretFQ216CScriptGunTurret12ETurretState +/* 80219544 002164A4 88 1E 05 60 */ lbz r0, 0x560(r30) +/* 80219548 002164A8 38 60 00 00 */ li r3, 0 +/* 8021954C 002164AC 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 80219550 002164B0 98 1E 05 60 */ stb r0, 0x560(r30) +/* 80219554 002164B4 54 03 EF FE */ rlwinm r3, r0, 0x1d, 0x1f, 0x1f +/* 80219558 002164B8 88 1E 05 60 */ lbz r0, 0x560(r30) +/* 8021955C 002164BC 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 80219560 002164C0 98 1E 05 60 */ stb r0, 0x560(r30) +/* 80219564 002164C4 48 00 00 38 */ b lbl_8021959C +lbl_80219568: +/* 80219568 002164C8 C0 3E 05 2C */ lfs f1, 0x52c(r30) +/* 8021956C 002164CC C0 1E 02 E8 */ lfs f0, 0x2e8(r30) +/* 80219570 002164D0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80219574 002164D4 4C 41 13 82 */ cror 2, 1, 2 +/* 80219578 002164D8 40 82 00 24 */ bne lbl_8021959C +/* 8021957C 002164DC 80 1E 05 20 */ lwz r0, 0x520(r30) +/* 80219580 002164E0 7F C3 F3 78 */ mr r3, r30 +/* 80219584 002164E4 38 80 00 07 */ li r4, 7 +/* 80219588 002164E8 2C 00 00 07 */ cmpwi r0, 7 +/* 8021958C 002164EC 40 82 00 08 */ bne lbl_80219594 +/* 80219590 002164F0 38 80 00 08 */ li r4, 8 +lbl_80219594: +/* 80219594 002164F4 7F E5 FB 78 */ mr r5, r31 +/* 80219598 002164F8 48 00 05 81 */ bl SetTurretState__16CScriptGunTurretFQ216CScriptGunTurret12ETurretState +lbl_8021959C: +/* 8021959C 002164FC E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 802195A0 00216500 80 01 00 34 */ lwz r0, 0x34(r1) +/* 802195A4 00216504 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 802195A8 00216508 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 802195AC 0021650C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 802195B0 00216510 7C 08 03 A6 */ mtlr r0 +/* 802195B4 00216514 38 21 00 30 */ addi r1, r1, 0x30 +/* 802195B8 00216518 4E 80 00 20 */ blr + +.global ProcessReadyState__16CScriptGunTurretFfR13CStateManager +ProcessReadyState__16CScriptGunTurretFfR13CStateManager: +/* 802195BC 0021651C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 802195C0 00216520 7C 08 02 A6 */ mflr r0 +/* 802195C4 00216524 2C 04 00 01 */ cmpwi r4, 1 +/* 802195C8 00216528 90 01 00 24 */ stw r0, 0x24(r1) +/* 802195CC 0021652C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 802195D0 00216530 7C BF 2B 78 */ mr r31, r5 +/* 802195D4 00216534 93 C1 00 18 */ stw r30, 0x18(r1) +/* 802195D8 00216538 7C 7E 1B 78 */ mr r30, r3 +/* 802195DC 0021653C 41 82 00 20 */ beq lbl_802195FC +/* 802195E0 00216540 40 80 00 CC */ bge lbl_802196AC +/* 802195E4 00216544 2C 04 00 00 */ cmpwi r4, 0 +/* 802195E8 00216548 40 80 00 08 */ bge lbl_802195F0 +/* 802195EC 0021654C 48 00 00 C0 */ b lbl_802196AC +lbl_802195F0: +/* 802195F0 00216550 C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 802195F4 00216554 D0 1E 05 2C */ stfs f0, 0x52c(r30) +/* 802195F8 00216558 48 00 00 B4 */ b lbl_802196AC +lbl_802195FC: +/* 802195FC 0021655C C0 1E 05 2C */ lfs f0, 0x52c(r30) +/* 80219600 00216560 EC 00 08 2A */ fadds f0, f0, f1 +/* 80219604 00216564 D0 1E 05 2C */ stfs f0, 0x52c(r30) +/* 80219608 00216568 C0 3E 05 2C */ lfs f1, 0x52c(r30) +/* 8021960C 0021656C C0 1E 02 E4 */ lfs f0, 0x2e4(r30) +/* 80219610 00216570 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80219614 00216574 4C 41 13 82 */ cror 2, 1, 2 +/* 80219618 00216578 40 82 00 94 */ bne lbl_802196AC +/* 8021961C 0021657C 7F E4 FB 78 */ mr r4, r31 +/* 80219620 00216580 4B FF E4 B9 */ bl IsPlayerInFiringRange__16CScriptGunTurretCFR13CStateManager +/* 80219624 00216584 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80219628 00216588 41 82 00 6C */ beq lbl_80219694 +/* 8021962C 0021658C 7F C3 F3 78 */ mr r3, r30 +/* 80219630 00216590 7F E4 FB 78 */ mr r4, r31 +/* 80219634 00216594 4B FF E3 71 */ bl InDetectionRange__16CScriptGunTurretCFR13CStateManager +/* 80219638 00216598 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8021963C 0021659C 41 82 00 58 */ beq lbl_80219694 +/* 80219640 002165A0 7F C3 F3 78 */ mr r3, r30 +/* 80219644 002165A4 7F E5 FB 78 */ mr r5, r31 +/* 80219648 002165A8 38 80 00 09 */ li r4, 9 +/* 8021964C 002165AC 48 00 04 CD */ bl SetTurretState__16CScriptGunTurretFQ216CScriptGunTurret12ETurretState +/* 80219650 002165B0 81 5E 00 04 */ lwz r10, 4(r30) +/* 80219654 002165B4 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 80219658 002165B8 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 8021965C 002165BC 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 80219660 002165C0 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 80219664 002165C4 38 61 00 08 */ addi r3, r1, 8 +/* 80219668 002165C8 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 8021966C 002165CC 38 A1 00 0C */ addi r5, r1, 0xc +/* 80219670 002165D0 A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) +/* 80219674 002165D4 38 E0 00 00 */ li r7, 0 +/* 80219678 002165D8 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 8021967C 002165DC 39 00 00 00 */ li r8, 0 +/* 80219680 002165E0 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 80219684 002165E4 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 80219688 002165E8 A0 9E 03 52 */ lhz r4, 0x352(r30) +/* 8021968C 002165EC 48 0D 0C 25 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +/* 80219690 002165F0 48 00 00 1C */ b lbl_802196AC +lbl_80219694: +/* 80219694 002165F4 7F C3 F3 78 */ mr r3, r30 +/* 80219698 002165F8 7F E5 FB 78 */ mr r5, r31 +/* 8021969C 002165FC 38 80 00 07 */ li r4, 7 +/* 802196A0 00216600 48 00 04 79 */ bl SetTurretState__16CScriptGunTurretFQ216CScriptGunTurret12ETurretState +/* 802196A4 00216604 C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 802196A8 00216608 D0 1E 05 30 */ stfs f0, 0x530(r30) +lbl_802196AC: +/* 802196AC 0021660C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 802196B0 00216610 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 802196B4 00216614 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 802196B8 00216618 7C 08 03 A6 */ mtlr r0 +/* 802196BC 0021661C 38 21 00 20 */ addi r1, r1, 0x20 +/* 802196C0 00216620 4E 80 00 20 */ blr + +.global ProcessInactiveState__16CScriptGunTurretFfR13CStateManager +ProcessInactiveState__16CScriptGunTurretFfR13CStateManager: +/* 802196C4 00216624 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 802196C8 00216628 7C 08 02 A6 */ mflr r0 +/* 802196CC 0021662C 90 01 00 54 */ stw r0, 0x54(r1) +/* 802196D0 00216630 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 802196D4 00216634 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 802196D8 00216638 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 802196DC 0021663C 93 C1 00 38 */ stw r30, 0x38(r1) +/* 802196E0 00216640 93 A1 00 34 */ stw r29, 0x34(r1) +/* 802196E4 00216644 93 81 00 30 */ stw r28, 0x30(r1) +/* 802196E8 00216648 FF E0 08 90 */ fmr f31, f1 +/* 802196EC 0021664C 2C 04 00 01 */ cmpwi r4, 1 +/* 802196F0 00216650 7C 7D 1B 78 */ mr r29, r3 +/* 802196F4 00216654 7C BE 2B 78 */ mr r30, r5 +/* 802196F8 00216658 41 82 00 84 */ beq lbl_8021977C +/* 802196FC 0021665C 40 80 00 10 */ bge lbl_8021970C +/* 80219700 00216660 2C 04 00 00 */ cmpwi r4, 0 +/* 80219704 00216664 40 80 00 14 */ bge lbl_80219718 +/* 80219708 00216668 48 00 02 08 */ b lbl_80219910 +lbl_8021970C: +/* 8021970C 0021666C 2C 04 00 03 */ cmpwi r4, 3 +/* 80219710 00216670 40 80 02 00 */ bge lbl_80219910 +/* 80219714 00216674 48 00 01 8C */ b lbl_802198A0 +lbl_80219718: +/* 80219718 00216678 C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 8021971C 0021667C 38 A0 00 00 */ li r5, 0 +/* 80219720 00216680 7F C3 F3 78 */ mr r3, r30 +/* 80219724 00216684 38 81 00 10 */ addi r4, r1, 0x10 +/* 80219728 00216688 D0 1D 05 28 */ stfs f0, 0x528(r29) +/* 8021972C 0021668C 88 1D 05 60 */ lbz r0, 0x560(r29) +/* 80219730 00216690 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 80219734 00216694 98 1D 05 60 */ stb r0, 0x560(r29) +/* 80219738 00216698 A0 1D 02 5C */ lhz r0, 0x25c(r29) +/* 8021973C 0021669C B0 01 00 10 */ sth r0, 0x10(r1) +/* 80219740 002166A0 4B E3 2E 35 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80219744 002166A4 7C 64 1B 78 */ mr r4, r3 +/* 80219748 002166A8 38 61 00 24 */ addi r3, r1, 0x24 +/* 8021974C 002166AC 4B E9 00 69 */ bl "__ct__30TCastToPtr<16CScriptGunTurret>FP7CEntity" +/* 80219750 002166B0 80 63 00 04 */ lwz r3, 4(r3) +/* 80219754 002166B4 28 03 00 00 */ cmplwi r3, 0 +/* 80219758 002166B8 41 82 01 B8 */ beq lbl_80219910 +/* 8021975C 002166BC 81 83 00 00 */ lwz r12, 0(r3) +/* 80219760 002166C0 7F C4 F3 78 */ mr r4, r30 +/* 80219764 002166C4 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80219768 002166C8 7D 89 03 A6 */ mtctr r12 +/* 8021976C 002166CC 4E 80 04 21 */ bctrl +/* 80219770 002166D0 C0 03 00 00 */ lfs f0, 0(r3) +/* 80219774 002166D4 D0 1D 02 60 */ stfs f0, 0x260(r29) +/* 80219778 002166D8 48 00 01 98 */ b lbl_80219910 +lbl_8021977C: +/* 8021977C 002166DC A0 7D 02 5C */ lhz r3, 0x25c(r29) +/* 80219780 002166E0 3B E0 00 00 */ li r31, 0 +/* 80219784 002166E4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80219788 002166E8 7C 03 00 40 */ cmplw r3, r0 +/* 8021978C 002166EC 41 82 00 58 */ beq lbl_802197E4 +/* 80219790 002166F0 A0 1D 02 5C */ lhz r0, 0x25c(r29) +/* 80219794 002166F4 7F C3 F3 78 */ mr r3, r30 +/* 80219798 002166F8 38 81 00 0C */ addi r4, r1, 0xc +/* 8021979C 002166FC B0 01 00 0C */ sth r0, 0xc(r1) +/* 802197A0 00216700 4B E3 2D D5 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 802197A4 00216704 7C 64 1B 78 */ mr r4, r3 +/* 802197A8 00216708 38 61 00 1C */ addi r3, r1, 0x1c +/* 802197AC 0021670C 4B E9 00 09 */ bl "__ct__30TCastToPtr<16CScriptGunTurret>FP7CEntity" +/* 802197B0 00216710 80 63 00 04 */ lwz r3, 4(r3) +/* 802197B4 00216714 28 03 00 00 */ cmplwi r3, 0 +/* 802197B8 00216718 41 82 00 2C */ beq lbl_802197E4 +/* 802197BC 0021671C 81 83 00 00 */ lwz r12, 0(r3) +/* 802197C0 00216720 7F C4 F3 78 */ mr r4, r30 +/* 802197C4 00216724 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 802197C8 00216728 7D 89 03 A6 */ mtctr r12 +/* 802197CC 0021672C 4E 80 04 21 */ bctrl +/* 802197D0 00216730 C0 23 00 00 */ lfs f1, 0(r3) +/* 802197D4 00216734 C0 1D 02 60 */ lfs f0, 0x260(r29) +/* 802197D8 00216738 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802197DC 0021673C 7C 00 00 26 */ mfcr r0 +/* 802197E0 00216740 54 1F 0F FE */ srwi r31, r0, 0x1f +lbl_802197E4: +/* 802197E4 00216744 88 1D 03 74 */ lbz r0, 0x374(r29) +/* 802197E8 00216748 28 00 00 00 */ cmplwi r0, 0 +/* 802197EC 0021674C 41 82 00 24 */ beq lbl_80219810 +/* 802197F0 00216750 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 802197F4 00216754 3B 80 00 00 */ li r28, 0 +/* 802197F8 00216758 40 82 00 10 */ bne lbl_80219808 +/* 802197FC 0021675C 88 1D 05 60 */ lbz r0, 0x560(r29) +/* 80219800 00216760 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 80219804 00216764 41 82 00 3C */ beq lbl_80219840 +lbl_80219808: +/* 80219808 00216768 3B 80 00 01 */ li r28, 1 +/* 8021980C 0021676C 48 00 00 34 */ b lbl_80219840 +lbl_80219810: +/* 80219810 00216770 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 80219814 00216774 3B 80 00 00 */ li r28, 0 +/* 80219818 00216778 40 82 00 24 */ bne lbl_8021983C +/* 8021981C 0021677C 88 1D 05 60 */ lbz r0, 0x560(r29) +/* 80219820 00216780 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 80219824 00216784 40 82 00 18 */ bne lbl_8021983C +/* 80219828 00216788 7F A3 EB 78 */ mr r3, r29 +/* 8021982C 0021678C 7F C4 F3 78 */ mr r4, r30 +/* 80219830 00216790 4B FF E1 75 */ bl InDetectionRange__16CScriptGunTurretCFR13CStateManager +/* 80219834 00216794 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80219838 00216798 41 82 00 08 */ beq lbl_80219840 +lbl_8021983C: +/* 8021983C 0021679C 3B 80 00 01 */ li r28, 1 +lbl_80219840: +/* 80219840 002167A0 57 80 06 3F */ clrlwi. r0, r28, 0x18 +/* 80219844 002167A4 41 82 00 40 */ beq lbl_80219884 +/* 80219848 002167A8 C0 1D 05 28 */ lfs f0, 0x528(r29) +/* 8021984C 002167AC 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 80219850 002167B0 EC 00 F8 2A */ fadds f0, f0, f31 +/* 80219854 002167B4 D0 1D 05 28 */ stfs f0, 0x528(r29) +/* 80219858 002167B8 40 82 00 18 */ bne lbl_80219870 +/* 8021985C 002167BC C0 3D 05 28 */ lfs f1, 0x528(r29) +/* 80219860 002167C0 C0 1D 02 D8 */ lfs f0, 0x2d8(r29) +/* 80219864 002167C4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80219868 002167C8 4C 41 13 82 */ cror 2, 1, 2 +/* 8021986C 002167CC 40 82 00 A4 */ bne lbl_80219910 +lbl_80219870: +/* 80219870 002167D0 7F A3 EB 78 */ mr r3, r29 +/* 80219874 002167D4 7F C5 F3 78 */ mr r5, r30 +/* 80219878 002167D8 38 80 00 06 */ li r4, 6 +/* 8021987C 002167DC 48 00 02 9D */ bl SetTurretState__16CScriptGunTurretFQ216CScriptGunTurret12ETurretState +/* 80219880 002167E0 48 00 00 90 */ b lbl_80219910 +lbl_80219884: +/* 80219884 002167E4 80 7D 04 6C */ lwz r3, 0x46c(r29) +/* 80219888 002167E8 38 80 00 01 */ li r4, 1 +/* 8021988C 002167EC 81 83 00 00 */ lwz r12, 0(r3) +/* 80219890 002167F0 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80219894 002167F4 7D 89 03 A6 */ mtctr r12 +/* 80219898 002167F8 4E 80 04 21 */ bctrl +/* 8021989C 002167FC 48 00 00 74 */ b lbl_80219910 +lbl_802198A0: +/* 802198A0 00216800 88 1D 05 60 */ lbz r0, 0x560(r29) +/* 802198A4 00216804 38 60 00 01 */ li r3, 1 +/* 802198A8 00216808 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 802198AC 0021680C 38 80 00 00 */ li r4, 0 +/* 802198B0 00216810 98 1D 05 60 */ stb r0, 0x560(r29) +/* 802198B4 00216814 80 7D 04 6C */ lwz r3, 0x46c(r29) +/* 802198B8 00216818 81 83 00 00 */ lwz r12, 0(r3) +/* 802198BC 0021681C 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 802198C0 00216820 7D 89 03 A6 */ mtctr r12 +/* 802198C4 00216824 4E 80 04 21 */ bctrl +/* 802198C8 00216828 A0 1D 02 5C */ lhz r0, 0x25c(r29) +/* 802198CC 0021682C 7F C3 F3 78 */ mr r3, r30 +/* 802198D0 00216830 38 81 00 08 */ addi r4, r1, 8 +/* 802198D4 00216834 B0 01 00 08 */ sth r0, 8(r1) +/* 802198D8 00216838 4B E3 2C 9D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 802198DC 0021683C 7C 64 1B 78 */ mr r4, r3 +/* 802198E0 00216840 38 61 00 14 */ addi r3, r1, 0x14 +/* 802198E4 00216844 4B E8 FE D1 */ bl "__ct__30TCastToPtr<16CScriptGunTurret>FP7CEntity" +/* 802198E8 00216848 80 63 00 04 */ lwz r3, 4(r3) +/* 802198EC 0021684C 28 03 00 00 */ cmplwi r3, 0 +/* 802198F0 00216850 41 82 00 20 */ beq lbl_80219910 +/* 802198F4 00216854 81 83 00 00 */ lwz r12, 0(r3) +/* 802198F8 00216858 7F C4 F3 78 */ mr r4, r30 +/* 802198FC 0021685C 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80219900 00216860 7D 89 03 A6 */ mtctr r12 +/* 80219904 00216864 4E 80 04 21 */ bctrl +/* 80219908 00216868 C0 03 00 00 */ lfs f0, 0(r3) +/* 8021990C 0021686C D0 1D 02 60 */ stfs f0, 0x260(r29) +lbl_80219910: +/* 80219910 00216870 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 80219914 00216874 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80219918 00216878 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 8021991C 0021687C 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 80219920 00216880 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 80219924 00216884 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 80219928 00216888 83 81 00 30 */ lwz r28, 0x30(r1) +/* 8021992C 0021688C 7C 08 03 A6 */ mtlr r0 +/* 80219930 00216890 38 21 00 50 */ addi r1, r1, 0x50 +/* 80219934 00216894 4E 80 00 20 */ blr + +.global ProcessDeactivatingState__16CScriptGunTurretFfR13CStateManager +ProcessDeactivatingState__16CScriptGunTurretFfR13CStateManager: +/* 80219938 00216898 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8021993C 0021689C 7C 08 02 A6 */ mflr r0 +/* 80219940 002168A0 2C 04 00 01 */ cmpwi r4, 1 +/* 80219944 002168A4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80219948 002168A8 41 82 00 08 */ beq lbl_80219950 +/* 8021994C 002168AC 48 00 00 30 */ b lbl_8021997C +lbl_80219950: +/* 80219950 002168B0 C0 23 05 24 */ lfs f1, 0x524(r3) +/* 80219954 002168B4 C0 03 02 D4 */ lfs f0, 0x2d4(r3) +/* 80219958 002168B8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8021995C 002168BC 4C 41 13 82 */ cror 2, 1, 2 +/* 80219960 002168C0 40 82 00 1C */ bne lbl_8021997C +/* 80219964 002168C4 88 03 05 60 */ lbz r0, 0x560(r3) +/* 80219968 002168C8 38 80 00 01 */ li r4, 1 +/* 8021996C 002168CC 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 80219970 002168D0 41 82 00 08 */ beq lbl_80219978 +/* 80219974 002168D4 38 80 00 02 */ li r4, 2 +lbl_80219978: +/* 80219978 002168D8 48 00 01 A1 */ bl SetTurretState__16CScriptGunTurretFQ216CScriptGunTurret12ETurretState +lbl_8021997C: +/* 8021997C 002168DC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80219980 002168E0 7C 08 03 A6 */ mtlr r0 +/* 80219984 002168E4 38 21 00 10 */ addi r1, r1, 0x10 +/* 80219988 002168E8 4E 80 00 20 */ blr + +.global ProcessCurrentState__16CScriptGunTurretFfR13CStateManager +ProcessCurrentState__16CScriptGunTurretFfR13CStateManager: +/* 8021998C 002168EC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80219990 002168F0 7C 08 02 A6 */ mflr r0 +/* 80219994 002168F4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80219998 002168F8 80 03 05 20 */ lwz r0, 0x520(r3) +/* 8021999C 002168FC 28 00 00 0C */ cmplwi r0, 0xc +/* 802199A0 00216900 41 81 00 50 */ bgt lbl_802199F0 +/* 802199A4 00216904 3C C0 80 3E */ lis r6, lbl_803E7270@ha +/* 802199A8 00216908 54 00 10 3A */ slwi r0, r0, 2 +/* 802199AC 0021690C 38 C6 72 70 */ addi r6, r6, lbl_803E7270@l +/* 802199B0 00216910 7C 06 00 2E */ lwzx r0, r6, r0 +/* 802199B4 00216914 7C 09 03 A6 */ mtctr r0 +/* 802199B8 00216918 4E 80 04 20 */ bctr +/* 802199BC 0021691C 4B FF FF 7D */ bl ProcessDeactivatingState__16CScriptGunTurretFfR13CStateManager +/* 802199C0 00216920 48 00 00 30 */ b lbl_802199F0 +/* 802199C4 00216924 4B FF FD 01 */ bl ProcessInactiveState__16CScriptGunTurretFfR13CStateManager +/* 802199C8 00216928 48 00 00 28 */ b lbl_802199F0 +/* 802199CC 0021692C 4B FF FB F1 */ bl ProcessReadyState__16CScriptGunTurretFfR13CStateManager +/* 802199D0 00216930 48 00 00 20 */ b lbl_802199F0 +/* 802199D4 00216934 4B FF FA 59 */ bl ProcessPanningState__16CScriptGunTurretFfR13CStateManager +/* 802199D8 00216938 48 00 00 18 */ b lbl_802199F0 +/* 802199DC 0021693C 4B FF F5 75 */ bl ProcessTargettingState__16CScriptGunTurretFfR13CStateManager +/* 802199E0 00216940 48 00 00 10 */ b lbl_802199F0 +/* 802199E4 00216944 4B FF F4 51 */ bl ProcessExitTargettingState__16CScriptGunTurretFfR13CStateManager +/* 802199E8 00216948 48 00 00 08 */ b lbl_802199F0 +/* 802199EC 0021694C 4B FF F1 C9 */ bl ProcessFrenzyState__16CScriptGunTurretFfR13CStateManager +lbl_802199F0: +/* 802199F0 00216950 80 01 00 14 */ lwz r0, 0x14(r1) +/* 802199F4 00216954 7C 08 03 A6 */ mtlr r0 +/* 802199F8 00216958 38 21 00 10 */ addi r1, r1, 0x10 +/* 802199FC 0021695C 4E 80 00 20 */ blr + +.global ProcessGunStateMachine__16CScriptGunTurretFfR13CStateManager +ProcessGunStateMachine__16CScriptGunTurretFfR13CStateManager: +/* 80219A00 00216960 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80219A04 00216964 7C 08 02 A6 */ mflr r0 +/* 80219A08 00216968 90 01 00 44 */ stw r0, 0x44(r1) +/* 80219A0C 0021696C DB E1 00 30 */ stfd f31, 0x30(r1) +/* 80219A10 00216970 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 80219A14 00216974 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80219A18 00216978 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80219A1C 0021697C 93 A1 00 24 */ stw r29, 0x24(r1) +/* 80219A20 00216980 FF E0 08 90 */ fmr f31, f1 +/* 80219A24 00216984 7C 9E 23 78 */ mr r30, r4 +/* 80219A28 00216988 7C 7D 1B 78 */ mr r29, r3 +/* 80219A2C 0021698C 38 80 00 01 */ li r4, 1 +/* 80219A30 00216990 7F C5 F3 78 */ mr r5, r30 +/* 80219A34 00216994 4B FF FF 59 */ bl ProcessCurrentState__16CScriptGunTurretFfR13CStateManager +/* 80219A38 00216998 C0 1D 05 24 */ lfs f0, 0x524(r29) +/* 80219A3C 0021699C 7F A3 EB 78 */ mr r3, r29 +/* 80219A40 002169A0 7F C4 F3 78 */ mr r4, r30 +/* 80219A44 002169A4 EC 00 F8 2A */ fadds f0, f0, f31 +/* 80219A48 002169A8 D0 1D 05 24 */ stfs f0, 0x524(r29) +/* 80219A4C 002169AC 4B FF D6 D9 */ bl PlayAdditiveChargingAnimation__16CScriptGunTurretFR13CStateManager +/* 80219A50 002169B0 A0 7D 02 5C */ lhz r3, 0x25c(r29) +/* 80219A54 002169B4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80219A58 002169B8 7C 03 00 40 */ cmplw r3, r0 +/* 80219A5C 002169BC 41 82 00 98 */ beq lbl_80219AF4 +/* 80219A60 002169C0 A0 1D 02 5C */ lhz r0, 0x25c(r29) +/* 80219A64 002169C4 7F C3 F3 78 */ mr r3, r30 +/* 80219A68 002169C8 38 81 00 10 */ addi r4, r1, 0x10 +/* 80219A6C 002169CC B0 01 00 10 */ sth r0, 0x10(r1) +/* 80219A70 002169D0 4B E3 2B 05 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80219A74 002169D4 7C 64 1B 78 */ mr r4, r3 +/* 80219A78 002169D8 38 61 00 14 */ addi r3, r1, 0x14 +/* 80219A7C 002169DC 4B E8 FD 39 */ bl "__ct__30TCastToPtr<16CScriptGunTurret>FP7CEntity" +/* 80219A80 002169E0 83 E3 00 04 */ lwz r31, 4(r3) +/* 80219A84 002169E4 28 1F 00 00 */ cmplwi r31, 0 +/* 80219A88 002169E8 41 82 00 6C */ beq lbl_80219AF4 +/* 80219A8C 002169EC 80 1F 05 20 */ lwz r0, 0x520(r31) +/* 80219A90 002169F0 2C 00 00 0C */ cmpwi r0, 0xc +/* 80219A94 002169F4 41 82 00 10 */ beq lbl_80219AA4 +/* 80219A98 002169F8 80 1D 05 20 */ lwz r0, 0x520(r29) +/* 80219A9C 002169FC 90 1F 05 20 */ stw r0, 0x520(r31) +/* 80219AA0 00216A00 48 00 00 54 */ b lbl_80219AF4 +lbl_80219AA4: +/* 80219AA4 00216A04 80 1D 05 20 */ lwz r0, 0x520(r29) +/* 80219AA8 00216A08 2C 00 00 0C */ cmpwi r0, 0xc +/* 80219AAC 00216A0C 41 82 00 48 */ beq lbl_80219AF4 +/* 80219AB0 00216A10 7F A3 EB 78 */ mr r3, r29 +/* 80219AB4 00216A14 7F C5 F3 78 */ mr r5, r30 +/* 80219AB8 00216A18 38 80 00 0C */ li r4, 0xc +/* 80219ABC 00216A1C 48 00 00 5D */ bl SetTurretState__16CScriptGunTurretFQ216CScriptGunTurret12ETurretState +/* 80219AC0 00216A20 7F E3 FB 78 */ mr r3, r31 +/* 80219AC4 00216A24 7F C6 F3 78 */ mr r6, r30 +/* 80219AC8 00216A28 38 80 00 28 */ li r4, 0x28 +/* 80219ACC 00216A2C 38 A0 00 29 */ li r5, 0x29 +/* 80219AD0 00216A30 4B E3 A4 05 */ bl RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager +/* 80219AD4 00216A34 A0 1D 00 08 */ lhz r0, 8(r29) +/* 80219AD8 00216A38 7F C6 F3 78 */ mr r6, r30 +/* 80219ADC 00216A3C 38 81 00 0C */ addi r4, r1, 0xc +/* 80219AE0 00216A40 38 A0 00 08 */ li r5, 8 +/* 80219AE4 00216A44 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80219AE8 00216A48 B0 01 00 08 */ sth r0, 8(r1) +/* 80219AEC 00216A4C 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 80219AF0 00216A50 4B F6 17 65 */ bl SetOrbitRequestForTarget__7CPlayerF9TUniqueId19EPlayerOrbitRequestR13CStateManager +lbl_80219AF4: +/* 80219AF4 00216A54 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 80219AF8 00216A58 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80219AFC 00216A5C CB E1 00 30 */ lfd f31, 0x30(r1) +/* 80219B00 00216A60 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80219B04 00216A64 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80219B08 00216A68 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 80219B0C 00216A6C 7C 08 03 A6 */ mtlr r0 +/* 80219B10 00216A70 38 21 00 40 */ addi r1, r1, 0x40 +/* 80219B14 00216A74 4E 80 00 20 */ blr + +.global SetTurretState__16CScriptGunTurretFQ216CScriptGunTurret12ETurretState +SetTurretState__16CScriptGunTurretFQ216CScriptGunTurret12ETurretState: +/* 80219B18 00216A78 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80219B1C 00216A7C 7C 08 02 A6 */ mflr r0 +/* 80219B20 00216A80 90 01 00 24 */ stw r0, 0x24(r1) +/* 80219B24 00216A84 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80219B28 00216A88 7C BF 2B 78 */ mr r31, r5 +/* 80219B2C 00216A8C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80219B30 00216A90 7C 9E 23 79 */ or. r30, r4, r4 +/* 80219B34 00216A94 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80219B38 00216A98 7C 7D 1B 78 */ mr r29, r3 +/* 80219B3C 00216A9C 41 80 00 40 */ blt lbl_80219B7C +/* 80219B40 00216AA0 2C 1E 00 0C */ cmpwi r30, 0xc +/* 80219B44 00216AA4 41 81 00 38 */ bgt lbl_80219B7C +/* 80219B48 00216AA8 80 1D 05 20 */ lwz r0, 0x520(r29) +/* 80219B4C 00216AAC 2C 00 FF FF */ cmpwi r0, -1 +/* 80219B50 00216AB0 41 82 00 10 */ beq lbl_80219B60 +/* 80219B54 00216AB4 C0 22 B3 5C */ lfs f1, lbl_805AD07C@sda21(r2) +/* 80219B58 00216AB8 38 80 00 02 */ li r4, 2 +/* 80219B5C 00216ABC 4B FF FE 31 */ bl ProcessCurrentState__16CScriptGunTurretFfR13CStateManager +lbl_80219B60: +/* 80219B60 00216AC0 C0 22 B3 5C */ lfs f1, lbl_805AD07C@sda21(r2) +/* 80219B64 00216AC4 7F A3 EB 78 */ mr r3, r29 +/* 80219B68 00216AC8 93 DD 05 20 */ stw r30, 0x520(r29) +/* 80219B6C 00216ACC 7F E5 FB 78 */ mr r5, r31 +/* 80219B70 00216AD0 38 80 00 00 */ li r4, 0 +/* 80219B74 00216AD4 D0 3D 05 24 */ stfs f1, 0x524(r29) +/* 80219B78 00216AD8 4B FF FE 15 */ bl ProcessCurrentState__16CScriptGunTurretFfR13CStateManager +lbl_80219B7C: +/* 80219B7C 00216ADC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80219B80 00216AE0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80219B84 00216AE4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80219B88 00216AE8 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80219B8C 00216AEC 7C 08 03 A6 */ mtlr r0 +/* 80219B90 00216AF0 38 21 00 20 */ addi r1, r1, 0x20 +/* 80219B94 00216AF4 4E 80 00 20 */ blr + +.global GetOrbitPosition__16CScriptGunTurretCFRC13CStateManager +GetOrbitPosition__16CScriptGunTurretCFRC13CStateManager: +/* 80219B98 00216AF8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80219B9C 00216AFC 7C 08 02 A6 */ mflr r0 +/* 80219BA0 00216B00 C0 22 B3 5C */ lfs f1, lbl_805AD07C@sda21(r2) +/* 80219BA4 00216B04 90 01 00 14 */ stw r0, 0x14(r1) +/* 80219BA8 00216B08 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80219BAC 00216B0C 7C 7F 1B 78 */ mr r31, r3 +/* 80219BB0 00216B10 81 84 00 00 */ lwz r12, 0(r4) +/* 80219BB4 00216B14 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 80219BB8 00216B18 7D 89 03 A6 */ mtctr r12 +/* 80219BBC 00216B1C 4E 80 04 21 */ bctrl +/* 80219BC0 00216B20 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80219BC4 00216B24 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80219BC8 00216B28 7C 08 03 A6 */ mtlr r0 +/* 80219BCC 00216B2C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80219BD0 00216B30 4E 80 00 20 */ blr + +.global GetAimPosition__16CScriptGunTurretCFRC13CStateManagerf +GetAimPosition__16CScriptGunTurretCFRC13CStateManagerf: +/* 80219BD4 00216B34 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 80219BD8 00216B38 7C 08 02 A6 */ mflr r0 +/* 80219BDC 00216B3C 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 80219BE0 00216B40 93 E1 00 9C */ stw r31, 0x9c(r1) +/* 80219BE4 00216B44 7C 9F 23 78 */ mr r31, r4 +/* 80219BE8 00216B48 93 C1 00 98 */ stw r30, 0x98(r1) +/* 80219BEC 00216B4C 7C 7E 1B 78 */ mr r30, r3 +/* 80219BF0 00216B50 80 04 02 58 */ lwz r0, 0x258(r4) +/* 80219BF4 00216B54 2C 00 00 01 */ cmpwi r0, 1 +/* 80219BF8 00216B58 40 82 00 90 */ bne lbl_80219C88 +/* 80219BFC 00216B5C 80 82 B3 50 */ lwz r4, lbl_805AD070@sda21(r2) +/* 80219C00 00216B60 38 61 00 20 */ addi r3, r1, 0x20 +/* 80219C04 00216B64 4B DE B0 B5 */ bl string_l__4rstlFPCc +/* 80219C08 00216B68 7F E4 FB 78 */ mr r4, r31 +/* 80219C0C 00216B6C 38 61 00 30 */ addi r3, r1, 0x30 +/* 80219C10 00216B70 38 A1 00 20 */ addi r5, r1, 0x20 +/* 80219C14 00216B74 4B E3 92 ED */ bl "GetLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80219C18 00216B78 38 61 00 60 */ addi r3, r1, 0x60 +/* 80219C1C 00216B7C 38 81 00 30 */ addi r4, r1, 0x30 +/* 80219C20 00216B80 48 0F 8F 55 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80219C24 00216B84 38 61 00 20 */ addi r3, r1, 0x20 +/* 80219C28 00216B88 48 12 3E B9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80219C2C 00216B8C C0 41 00 6C */ lfs f2, 0x6c(r1) +/* 80219C30 00216B90 38 61 00 14 */ addi r3, r1, 0x14 +/* 80219C34 00216B94 C0 21 00 7C */ lfs f1, 0x7c(r1) +/* 80219C38 00216B98 38 9F 00 34 */ addi r4, r31, 0x34 +/* 80219C3C 00216B9C C0 01 00 8C */ lfs f0, 0x8c(r1) +/* 80219C40 00216BA0 38 A1 00 08 */ addi r5, r1, 8 +/* 80219C44 00216BA4 D0 41 00 08 */ stfs f2, 8(r1) +/* 80219C48 00216BA8 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 80219C4C 00216BAC D0 01 00 10 */ stfs f0, 0x10(r1) +/* 80219C50 00216BB0 48 0F 8E 31 */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 80219C54 00216BB4 C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 80219C58 00216BB8 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 80219C5C 00216BBC C0 9F 00 50 */ lfs f4, 0x50(r31) +/* 80219C60 00216BC0 C0 61 00 18 */ lfs f3, 0x18(r1) +/* 80219C64 00216BC4 EC 01 00 2A */ fadds f0, f1, f0 +/* 80219C68 00216BC8 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 80219C6C 00216BCC C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 80219C70 00216BD0 EC 64 18 2A */ fadds f3, f4, f3 +/* 80219C74 00216BD4 D0 1E 00 00 */ stfs f0, 0(r30) +/* 80219C78 00216BD8 EC 02 08 2A */ fadds f0, f2, f1 +/* 80219C7C 00216BDC D0 7E 00 04 */ stfs f3, 4(r30) +/* 80219C80 00216BE0 D0 1E 00 08 */ stfs f0, 8(r30) +/* 80219C84 00216BE4 48 00 00 1C */ b lbl_80219CA0 +lbl_80219C88: +/* 80219C88 00216BE8 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 80219C8C 00216BEC C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 80219C90 00216BF0 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 80219C94 00216BF4 D0 1E 00 00 */ stfs f0, 0(r30) +/* 80219C98 00216BF8 D0 3E 00 04 */ stfs f1, 4(r30) +/* 80219C9C 00216BFC D0 5E 00 08 */ stfs f2, 8(r30) +lbl_80219CA0: +/* 80219CA0 00216C00 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 80219CA4 00216C04 83 E1 00 9C */ lwz r31, 0x9c(r1) +/* 80219CA8 00216C08 83 C1 00 98 */ lwz r30, 0x98(r1) +/* 80219CAC 00216C0C 7C 08 03 A6 */ mtlr r0 +/* 80219CB0 00216C10 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 80219CB4 00216C14 4E 80 00 20 */ blr + +.global Touch__16CScriptGunTurretFR6CActorR13CStateManager +Touch__16CScriptGunTurretFR6CActorR13CStateManager: +/* 80219CB8 00216C18 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80219CBC 00216C1C 7C 08 02 A6 */ mflr r0 +/* 80219CC0 00216C20 90 01 00 54 */ stw r0, 0x54(r1) +/* 80219CC4 00216C24 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 80219CC8 00216C28 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 80219CCC 00216C2C DB C1 00 30 */ stfd f30, 0x30(r1) +/* 80219CD0 00216C30 F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 +/* 80219CD4 00216C34 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80219CD8 00216C38 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80219CDC 00216C3C 93 A1 00 24 */ stw r29, 0x24(r1) +/* 80219CE0 00216C40 7C 7E 1B 78 */ mr r30, r3 +/* 80219CE4 00216C44 7C BF 2B 78 */ mr r31, r5 +/* 80219CE8 00216C48 80 03 02 58 */ lwz r0, 0x258(r3) +/* 80219CEC 00216C4C 2C 00 00 01 */ cmpwi r0, 1 +/* 80219CF0 00216C50 40 82 01 08 */ bne lbl_80219DF8 +/* 80219CF4 00216C54 38 61 00 08 */ addi r3, r1, 8 +/* 80219CF8 00216C58 4B E9 3A 81 */ bl "__ct__29TCastToPtr<15CGameProjectile>FR7CEntity" +/* 80219CFC 00216C5C 83 A3 00 04 */ lwz r29, 4(r3) +/* 80219D00 00216C60 28 1D 00 00 */ cmplwi r29, 0 +/* 80219D04 00216C64 41 82 00 F4 */ beq lbl_80219DF8 +/* 80219D08 00216C68 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 80219D0C 00216C6C A0 9D 00 EC */ lhz r4, 0xec(r29) +/* 80219D10 00216C70 A0 03 00 08 */ lhz r0, 8(r3) +/* 80219D14 00216C74 7C 04 00 40 */ cmplw r4, r0 +/* 80219D18 00216C78 40 82 00 E0 */ bne lbl_80219DF8 +/* 80219D1C 00216C7C 7F C3 F3 78 */ mr r3, r30 +/* 80219D20 00216C80 81 9E 00 00 */ lwz r12, 0(r30) +/* 80219D24 00216C84 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 80219D28 00216C88 7D 89 03 A6 */ mtctr r12 +/* 80219D2C 00216C8C 4E 80 04 21 */ bctrl +/* 80219D30 00216C90 88 1E 05 60 */ lbz r0, 0x560(r30) +/* 80219D34 00216C94 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80219D38 00216C98 40 82 00 AC */ bne lbl_80219DE4 +/* 80219D3C 00216C9C 80 1E 05 20 */ lwz r0, 0x520(r30) +/* 80219D40 00216CA0 2C 00 00 0C */ cmpwi r0, 0xc +/* 80219D44 00216CA4 41 82 00 A0 */ beq lbl_80219DE4 +/* 80219D48 00216CA8 80 1D 00 E8 */ lwz r0, 0xe8(r29) +/* 80219D4C 00216CAC 54 00 07 38 */ rlwinm r0, r0, 0, 0x1c, 0x1c +/* 80219D50 00216CB0 2C 00 00 08 */ cmpwi r0, 8 +/* 80219D54 00216CB4 40 82 00 90 */ bne lbl_80219DE4 +/* 80219D58 00216CB8 88 01 00 14 */ lbz r0, 0x14(r1) +/* 80219D5C 00216CBC 38 A0 00 00 */ li r5, 0 +/* 80219D60 00216CC0 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 80219D64 00216CC4 38 C0 00 01 */ li r6, 1 +/* 80219D68 00216CC8 98 01 00 14 */ stb r0, 0x14(r1) +/* 80219D6C 00216CCC 54 00 06 3E */ clrlwi r0, r0, 0x18 +/* 80219D70 00216CD0 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 80219D74 00216CD4 38 81 00 10 */ addi r4, r1, 0x10 +/* 80219D78 00216CD8 98 01 00 14 */ stb r0, 0x14(r1) +/* 80219D7C 00216CDC 54 00 06 3E */ clrlwi r0, r0, 0x18 +/* 80219D80 00216CE0 50 A0 2E B4 */ rlwimi r0, r5, 5, 0x1a, 0x1a +/* 80219D84 00216CE4 38 A0 00 00 */ li r5, 0 +/* 80219D88 00216CE8 90 C1 00 10 */ stw r6, 0x10(r1) +/* 80219D8C 00216CEC 98 01 00 14 */ stb r0, 0x14(r1) +/* 80219D90 00216CF0 4B EE 87 F5 */ bl WeaponHits__20CDamageVulnerabilityCFRC11CWeaponModei +/* 80219D94 00216CF4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80219D98 00216CF8 41 82 00 4C */ beq lbl_80219DE4 +/* 80219D9C 00216CFC 88 1E 05 60 */ lbz r0, 0x560(r30) +/* 80219DA0 00216D00 38 60 00 01 */ li r3, 1 +/* 80219DA4 00216D04 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 80219DA8 00216D08 7F C3 F3 78 */ mr r3, r30 +/* 80219DAC 00216D0C 98 1E 05 60 */ stb r0, 0x560(r30) +/* 80219DB0 00216D10 7F E5 FB 78 */ mr r5, r31 +/* 80219DB4 00216D14 38 80 00 09 */ li r4, 9 +/* 80219DB8 00216D18 38 C0 FF FF */ li r6, -1 +/* 80219DBC 00216D1C 4B E3 73 05 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 80219DC0 00216D20 C3 FE 03 0C */ lfs f31, 0x30c(r30) +/* 80219DC4 00216D24 C3 DE 03 08 */ lfs f30, 0x308(r30) +/* 80219DC8 00216D28 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 80219DCC 00216D2C 48 0F 87 11 */ bl Float__9CRandom16Fv +/* 80219DD0 00216D30 EC 01 F7 FA */ fmadds f0, f1, f31, f30 +/* 80219DD4 00216D34 7F C3 F3 78 */ mr r3, r30 +/* 80219DD8 00216D38 38 80 00 01 */ li r4, 1 +/* 80219DDC 00216D3C D0 1E 05 3C */ stfs f0, 0x53c(r30) +/* 80219DE0 00216D40 4B E3 96 0D */ bl SetMuted__6CActorFb +lbl_80219DE4: +/* 80219DE4 00216D44 7F C3 F3 78 */ mr r3, r30 +/* 80219DE8 00216D48 7F E5 FB 78 */ mr r5, r31 +/* 80219DEC 00216D4C 38 80 00 16 */ li r4, 0x16 +/* 80219DF0 00216D50 38 C0 FF FF */ li r6, -1 +/* 80219DF4 00216D54 4B E3 72 CD */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +lbl_80219DF8: +/* 80219DF8 00216D58 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 80219DFC 00216D5C CB E1 00 40 */ lfd f31, 0x40(r1) +/* 80219E00 00216D60 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 +/* 80219E04 00216D64 CB C1 00 30 */ lfd f30, 0x30(r1) +/* 80219E08 00216D68 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80219E0C 00216D6C 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80219E10 00216D70 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80219E14 00216D74 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 80219E18 00216D78 7C 08 03 A6 */ mtlr r0 +/* 80219E1C 00216D7C 38 21 00 50 */ addi r1, r1, 0x50 +/* 80219E20 00216D80 4E 80 00 20 */ blr + +.global GetTouchBounds__16CScriptGunTurretCFv +GetTouchBounds__16CScriptGunTurretCFv: +/* 80219E24 00216D84 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80219E28 00216D88 7C 08 02 A6 */ mflr r0 +/* 80219E2C 00216D8C 90 01 00 34 */ stw r0, 0x34(r1) +/* 80219E30 00216D90 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80219E34 00216D94 7C 7F 1B 78 */ mr r31, r3 +/* 80219E38 00216D98 88 04 00 30 */ lbz r0, 0x30(r4) +/* 80219E3C 00216D9C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80219E40 00216DA0 41 82 00 78 */ beq lbl_80219EB8 +/* 80219E44 00216DA4 80 04 00 68 */ lwz r0, 0x68(r4) +/* 80219E48 00216DA8 38 A0 00 00 */ li r5, 0 +/* 80219E4C 00216DAC 80 C4 00 6C */ lwz r6, 0x6c(r4) +/* 80219E50 00216DB0 3C 60 00 08 */ lis r3, 8 +/* 80219E54 00216DB4 7C 00 28 38 */ and r0, r0, r5 +/* 80219E58 00216DB8 7C C3 18 38 */ and r3, r6, r3 +/* 80219E5C 00216DBC 7C 63 2A 78 */ xor r3, r3, r5 +/* 80219E60 00216DC0 7C 00 2A 78 */ xor r0, r0, r5 +/* 80219E64 00216DC4 7C 60 03 79 */ or. r0, r3, r0 +/* 80219E68 00216DC8 41 82 00 50 */ beq lbl_80219EB8 +/* 80219E6C 00216DCC 38 61 00 08 */ addi r3, r1, 8 +/* 80219E70 00216DD0 4B F0 0A BD */ bl GetBoundingBox__13CPhysicsActorCFv +/* 80219E74 00216DD4 38 00 00 01 */ li r0, 1 +/* 80219E78 00216DD8 28 1F 00 00 */ cmplwi r31, 0 +/* 80219E7C 00216DDC 98 1F 00 18 */ stb r0, 0x18(r31) +/* 80219E80 00216DE0 41 82 00 40 */ beq lbl_80219EC0 +/* 80219E84 00216DE4 C0 01 00 08 */ lfs f0, 8(r1) +/* 80219E88 00216DE8 D0 1F 00 00 */ stfs f0, 0(r31) +/* 80219E8C 00216DEC C0 01 00 0C */ lfs f0, 0xc(r1) +/* 80219E90 00216DF0 D0 1F 00 04 */ stfs f0, 4(r31) +/* 80219E94 00216DF4 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 80219E98 00216DF8 D0 1F 00 08 */ stfs f0, 8(r31) +/* 80219E9C 00216DFC C0 01 00 14 */ lfs f0, 0x14(r1) +/* 80219EA0 00216E00 D0 1F 00 0C */ stfs f0, 0xc(r31) +/* 80219EA4 00216E04 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 80219EA8 00216E08 D0 1F 00 10 */ stfs f0, 0x10(r31) +/* 80219EAC 00216E0C C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 80219EB0 00216E10 D0 1F 00 14 */ stfs f0, 0x14(r31) +/* 80219EB4 00216E14 48 00 00 0C */ b lbl_80219EC0 +lbl_80219EB8: +/* 80219EB8 00216E18 38 00 00 00 */ li r0, 0 +/* 80219EBC 00216E1C 98 1F 00 18 */ stb r0, 0x18(r31) +lbl_80219EC0: +/* 80219EC0 00216E20 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80219EC4 00216E24 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80219EC8 00216E28 7C 08 03 A6 */ mtlr r0 +/* 80219ECC 00216E2C 38 21 00 30 */ addi r1, r1, 0x30 +/* 80219ED0 00216E30 4E 80 00 20 */ blr + +.global AddToRenderer__16CScriptGunTurretCFRC14CFrustumPlanesRC13CStateManager +AddToRenderer__16CScriptGunTurretCFRC14CFrustumPlanesRC13CStateManager: +/* 80219ED4 00216E34 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80219ED8 00216E38 7C 08 02 A6 */ mflr r0 +/* 80219EDC 00216E3C 90 01 00 14 */ stw r0, 0x14(r1) +/* 80219EE0 00216E40 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80219EE4 00216E44 7C 7F 1B 78 */ mr r31, r3 +/* 80219EE8 00216E48 4B E3 AC 51 */ bl AddToRenderer__6CActorCFRC14CFrustumPlanesRC13CStateManager +/* 80219EEC 00216E4C 80 1F 02 58 */ lwz r0, 0x258(r31) +/* 80219EF0 00216E50 2C 00 00 01 */ cmpwi r0, 1 +/* 80219EF4 00216E54 40 82 00 FC */ bne lbl_80219FF0 +/* 80219EF8 00216E58 88 1F 05 60 */ lbz r0, 0x560(r31) +/* 80219EFC 00216E5C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80219F00 00216E60 40 82 00 D8 */ bne lbl_80219FD8 +/* 80219F04 00216E64 80 1F 05 20 */ lwz r0, 0x520(r31) +/* 80219F08 00216E68 2C 00 00 06 */ cmpwi r0, 6 +/* 80219F0C 00216E6C 41 82 00 84 */ beq lbl_80219F90 +/* 80219F10 00216E70 40 80 00 18 */ bge lbl_80219F28 +/* 80219F14 00216E74 2C 00 00 05 */ cmpwi r0, 5 +/* 80219F18 00216E78 40 80 00 40 */ bge lbl_80219F58 +/* 80219F1C 00216E7C 2C 00 00 01 */ cmpwi r0, 1 +/* 80219F20 00216E80 40 80 00 1C */ bge lbl_80219F3C +/* 80219F24 00216E84 48 00 00 CC */ b lbl_80219FF0 +lbl_80219F28: +/* 80219F28 00216E88 2C 00 00 0D */ cmpwi r0, 0xd +/* 80219F2C 00216E8C 40 80 00 C4 */ bge lbl_80219FF0 +/* 80219F30 00216E90 2C 00 00 09 */ cmpwi r0, 9 +/* 80219F34 00216E94 40 80 00 5C */ bge lbl_80219F90 +/* 80219F38 00216E98 48 00 00 3C */ b lbl_80219F74 +lbl_80219F3C: +/* 80219F3C 00216E9C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 80219F40 00216EA0 80 9F 04 74 */ lwz r4, 0x474(r31) +/* 80219F44 00216EA4 81 83 00 00 */ lwz r12, 0(r3) +/* 80219F48 00216EA8 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80219F4C 00216EAC 7D 89 03 A6 */ mtctr r12 +/* 80219F50 00216EB0 4E 80 04 21 */ bctrl +/* 80219F54 00216EB4 48 00 00 9C */ b lbl_80219FF0 +lbl_80219F58: +/* 80219F58 00216EB8 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 80219F5C 00216EBC 80 9F 04 6C */ lwz r4, 0x46c(r31) +/* 80219F60 00216EC0 81 83 00 00 */ lwz r12, 0(r3) +/* 80219F64 00216EC4 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80219F68 00216EC8 7D 89 03 A6 */ mtctr r12 +/* 80219F6C 00216ECC 4E 80 04 21 */ bctrl +/* 80219F70 00216ED0 48 00 00 80 */ b lbl_80219FF0 +lbl_80219F74: +/* 80219F74 00216ED4 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 80219F78 00216ED8 80 9F 04 94 */ lwz r4, 0x494(r31) +/* 80219F7C 00216EDC 81 83 00 00 */ lwz r12, 0(r3) +/* 80219F80 00216EE0 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80219F84 00216EE4 7D 89 03 A6 */ mtctr r12 +/* 80219F88 00216EE8 4E 80 04 21 */ bctrl +/* 80219F8C 00216EEC 48 00 00 64 */ b lbl_80219FF0 +lbl_80219F90: +/* 80219F90 00216EF0 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 80219F94 00216EF4 80 9F 04 7C */ lwz r4, 0x47c(r31) +/* 80219F98 00216EF8 81 83 00 00 */ lwz r12, 0(r3) +/* 80219F9C 00216EFC 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80219FA0 00216F00 7D 89 03 A6 */ mtctr r12 +/* 80219FA4 00216F04 4E 80 04 21 */ bctrl +/* 80219FA8 00216F08 80 1F 05 20 */ lwz r0, 0x520(r31) +/* 80219FAC 00216F0C 2C 00 00 0A */ cmpwi r0, 0xa +/* 80219FB0 00216F10 41 82 00 0C */ beq lbl_80219FBC +/* 80219FB4 00216F14 2C 00 00 0C */ cmpwi r0, 0xc +/* 80219FB8 00216F18 40 82 00 38 */ bne lbl_80219FF0 +lbl_80219FBC: +/* 80219FBC 00216F1C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 80219FC0 00216F20 80 9F 04 8C */ lwz r4, 0x48c(r31) +/* 80219FC4 00216F24 81 83 00 00 */ lwz r12, 0(r3) +/* 80219FC8 00216F28 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80219FCC 00216F2C 7D 89 03 A6 */ mtctr r12 +/* 80219FD0 00216F30 4E 80 04 21 */ bctrl +/* 80219FD4 00216F34 48 00 00 1C */ b lbl_80219FF0 +lbl_80219FD8: +/* 80219FD8 00216F38 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 80219FDC 00216F3C 80 9F 04 84 */ lwz r4, 0x484(r31) +/* 80219FE0 00216F40 81 83 00 00 */ lwz r12, 0(r3) +/* 80219FE4 00216F44 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80219FE8 00216F48 7D 89 03 A6 */ mtctr r12 +/* 80219FEC 00216F4C 4E 80 04 21 */ bctrl +lbl_80219FF0: +/* 80219FF0 00216F50 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80219FF4 00216F54 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80219FF8 00216F58 7C 08 03 A6 */ mtlr r0 +/* 80219FFC 00216F5C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8021A000 00216F60 4E 80 00 20 */ blr + +.global Render__16CScriptGunTurretCFRC13CStateManager +Render__16CScriptGunTurretCFRC13CStateManager: +/* 8021A004 00216F64 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 8021A008 00216F68 7C 08 02 A6 */ mflr r0 +/* 8021A00C 00216F6C 90 01 00 54 */ stw r0, 0x54(r1) +/* 8021A010 00216F70 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 8021A014 00216F74 7C 9F 23 78 */ mr r31, r4 +/* 8021A018 00216F78 93 C1 00 48 */ stw r30, 0x48(r1) +/* 8021A01C 00216F7C 7C 7E 1B 78 */ mr r30, r3 +/* 8021A020 00216F80 4B F0 04 C9 */ bl Render__13CPhysicsActorCFRC13CStateManager +/* 8021A024 00216F84 80 1E 02 58 */ lwz r0, 0x258(r30) +/* 8021A028 00216F88 2C 00 00 01 */ cmpwi r0, 1 +/* 8021A02C 00216F8C 40 82 00 E0 */ bne lbl_8021A10C +/* 8021A030 00216F90 88 1E 05 60 */ lbz r0, 0x560(r30) +/* 8021A034 00216F94 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8021A038 00216F98 40 82 00 BC */ bne lbl_8021A0F4 +/* 8021A03C 00216F9C 80 1E 05 20 */ lwz r0, 0x520(r30) +/* 8021A040 00216FA0 2C 00 00 06 */ cmpwi r0, 6 +/* 8021A044 00216FA4 41 82 00 78 */ beq lbl_8021A0BC +/* 8021A048 00216FA8 40 80 00 18 */ bge lbl_8021A060 +/* 8021A04C 00216FAC 2C 00 00 05 */ cmpwi r0, 5 +/* 8021A050 00216FB0 40 80 00 3C */ bge lbl_8021A08C +/* 8021A054 00216FB4 2C 00 00 01 */ cmpwi r0, 1 +/* 8021A058 00216FB8 40 80 00 1C */ bge lbl_8021A074 +/* 8021A05C 00216FBC 48 00 01 7C */ b lbl_8021A1D8 +lbl_8021A060: +/* 8021A060 00216FC0 2C 00 00 0D */ cmpwi r0, 0xd +/* 8021A064 00216FC4 40 80 01 74 */ bge lbl_8021A1D8 +/* 8021A068 00216FC8 2C 00 00 09 */ cmpwi r0, 9 +/* 8021A06C 00216FCC 40 80 00 50 */ bge lbl_8021A0BC +/* 8021A070 00216FD0 48 00 00 34 */ b lbl_8021A0A4 +lbl_8021A074: +/* 8021A074 00216FD4 80 7E 04 74 */ lwz r3, 0x474(r30) +/* 8021A078 00216FD8 81 83 00 00 */ lwz r12, 0(r3) +/* 8021A07C 00216FDC 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 8021A080 00216FE0 7D 89 03 A6 */ mtctr r12 +/* 8021A084 00216FE4 4E 80 04 21 */ bctrl +/* 8021A088 00216FE8 48 00 01 50 */ b lbl_8021A1D8 +lbl_8021A08C: +/* 8021A08C 00216FEC 80 7E 04 6C */ lwz r3, 0x46c(r30) +/* 8021A090 00216FF0 81 83 00 00 */ lwz r12, 0(r3) +/* 8021A094 00216FF4 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 8021A098 00216FF8 7D 89 03 A6 */ mtctr r12 +/* 8021A09C 00216FFC 4E 80 04 21 */ bctrl +/* 8021A0A0 00217000 48 00 01 38 */ b lbl_8021A1D8 +lbl_8021A0A4: +/* 8021A0A4 00217004 80 7E 04 94 */ lwz r3, 0x494(r30) +/* 8021A0A8 00217008 81 83 00 00 */ lwz r12, 0(r3) +/* 8021A0AC 0021700C 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 8021A0B0 00217010 7D 89 03 A6 */ mtctr r12 +/* 8021A0B4 00217014 4E 80 04 21 */ bctrl +/* 8021A0B8 00217018 48 00 01 20 */ b lbl_8021A1D8 +lbl_8021A0BC: +/* 8021A0BC 0021701C 80 7E 04 7C */ lwz r3, 0x47c(r30) +/* 8021A0C0 00217020 81 83 00 00 */ lwz r12, 0(r3) +/* 8021A0C4 00217024 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 8021A0C8 00217028 7D 89 03 A6 */ mtctr r12 +/* 8021A0CC 0021702C 4E 80 04 21 */ bctrl +/* 8021A0D0 00217030 80 1E 05 20 */ lwz r0, 0x520(r30) +/* 8021A0D4 00217034 2C 00 00 0A */ cmpwi r0, 0xa +/* 8021A0D8 00217038 40 82 01 00 */ bne lbl_8021A1D8 +/* 8021A0DC 0021703C 80 7E 04 8C */ lwz r3, 0x48c(r30) +/* 8021A0E0 00217040 81 83 00 00 */ lwz r12, 0(r3) +/* 8021A0E4 00217044 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 8021A0E8 00217048 7D 89 03 A6 */ mtctr r12 +/* 8021A0EC 0021704C 4E 80 04 21 */ bctrl +/* 8021A0F0 00217050 48 00 00 E8 */ b lbl_8021A1D8 +lbl_8021A0F4: +/* 8021A0F4 00217054 80 7E 04 84 */ lwz r3, 0x484(r30) +/* 8021A0F8 00217058 81 83 00 00 */ lwz r12, 0(r3) +/* 8021A0FC 0021705C 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 8021A100 00217060 7D 89 03 A6 */ mtctr r12 +/* 8021A104 00217064 4E 80 04 21 */ bctrl +/* 8021A108 00217068 48 00 00 D0 */ b lbl_8021A1D8 +lbl_8021A10C: +/* 8021A10C 0021706C 2C 00 00 00 */ cmpwi r0, 0 +/* 8021A110 00217070 40 82 00 C8 */ bne lbl_8021A1D8 +/* 8021A114 00217074 88 1E 04 F0 */ lbz r0, 0x4f0(r30) +/* 8021A118 00217078 28 00 00 00 */ cmplwi r0, 0 +/* 8021A11C 0021707C 41 82 00 BC */ beq lbl_8021A1D8 +/* 8021A120 00217080 C0 3E 04 F8 */ lfs f1, 0x4f8(r30) +/* 8021A124 00217084 C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 8021A128 00217088 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8021A12C 0021708C 40 81 00 AC */ ble lbl_8021A1D8 +/* 8021A130 00217090 38 61 00 10 */ addi r3, r1, 0x10 +/* 8021A134 00217094 38 9E 00 34 */ addi r4, r30, 0x34 +/* 8021A138 00217098 48 0F 8A 3D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8021A13C 0021709C 3C 60 80 5A */ lis r3, lbl_805A6700@ha +/* 8021A140 002170A0 C0 22 B3 68 */ lfs f1, lbl_805AD088@sda21(r2) +/* 8021A144 002170A4 38 63 67 00 */ addi r3, r3, lbl_805A6700@l +/* 8021A148 002170A8 38 80 00 00 */ li r4, 0 +/* 8021A14C 002170AC C0 C2 B3 78 */ lfs f6, lbl_805AD098@sda21(r2) +/* 8021A150 002170B0 38 00 00 03 */ li r0, 3 +/* 8021A154 002170B4 C0 A3 00 04 */ lfs f5, 4(r3) +/* 8021A158 002170B8 FC 40 08 90 */ fmr f2, f1 +/* 8021A15C 002170BC C0 83 00 08 */ lfs f4, 8(r3) +/* 8021A160 002170C0 FC 60 08 90 */ fmr f3, f1 +/* 8021A164 002170C4 C0 03 00 00 */ lfs f0, 0(r3) +/* 8021A168 002170C8 EC E6 01 72 */ fmuls f7, f6, f5 +/* 8021A16C 002170CC C1 3E 04 F4 */ lfs f9, 0x4f4(r30) +/* 8021A170 002170D0 EC A6 01 32 */ fmuls f5, f6, f4 +/* 8021A174 002170D4 C1 1E 05 00 */ lfs f8, 0x500(r30) +/* 8021A178 002170D8 EC 06 00 32 */ fmuls f0, f6, f0 +/* 8021A17C 002170DC C0 DE 05 04 */ lfs f6, 0x504(r30) +/* 8021A180 002170E0 EC E9 01 F2 */ fmuls f7, f9, f7 +/* 8021A184 002170E4 C0 9E 04 FC */ lfs f4, 0x4fc(r30) +/* 8021A188 002170E8 EC A9 01 72 */ fmuls f5, f9, f5 +/* 8021A18C 002170EC 98 81 00 08 */ stb r4, 8(r1) +/* 8021A190 002170F0 EC 09 00 32 */ fmuls f0, f9, f0 +/* 8021A194 002170F4 38 61 00 0C */ addi r3, r1, 0xc +/* 8021A198 002170F8 EC E8 38 2A */ fadds f7, f8, f7 +/* 8021A19C 002170FC 98 81 00 09 */ stb r4, 9(r1) +/* 8021A1A0 00217100 EC A6 28 2A */ fadds f5, f6, f5 +/* 8021A1A4 00217104 B0 01 00 0A */ sth r0, 0xa(r1) +/* 8021A1A8 00217108 EC 04 00 2A */ fadds f0, f4, f0 +/* 8021A1AC 0021710C FC 80 08 90 */ fmr f4, f1 +/* 8021A1B0 00217110 D0 E1 00 2C */ stfs f7, 0x2c(r1) +/* 8021A1B4 00217114 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8021A1B8 00217118 D0 A1 00 3C */ stfs f5, 0x3c(r1) +/* 8021A1BC 0021711C 48 14 92 31 */ bl __ct__6CColorFffff +/* 8021A1C0 00217120 80 DE 00 90 */ lwz r6, 0x90(r30) +/* 8021A1C4 00217124 7F E4 FB 78 */ mr r4, r31 +/* 8021A1C8 00217128 38 7E 04 A4 */ addi r3, r30, 0x4a4 +/* 8021A1CC 0021712C 38 A1 00 10 */ addi r5, r1, 0x10 +/* 8021A1D0 00217130 38 E1 00 08 */ addi r7, r1, 8 +/* 8021A1D4 00217134 4B EF AB E9 */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags +lbl_8021A1D8: +/* 8021A1D8 00217138 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8021A1DC 0021713C 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 8021A1E0 00217140 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 8021A1E4 00217144 7C 08 03 A6 */ mtlr r0 +/* 8021A1E8 00217148 38 21 00 50 */ addi r1, r1, 0x50 +/* 8021A1EC 0021714C 4E 80 00 20 */ blr + +.global Accept__16CScriptGunTurretFR8IVisitor +Accept__16CScriptGunTurretFR8IVisitor: +/* 8021A1F0 00217150 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8021A1F4 00217154 7C 08 02 A6 */ mflr r0 +/* 8021A1F8 00217158 90 01 00 14 */ stw r0, 0x14(r1) +/* 8021A1FC 0021715C 7C 60 1B 78 */ mr r0, r3 +/* 8021A200 00217160 7C 83 23 78 */ mr r3, r4 +/* 8021A204 00217164 81 84 00 00 */ lwz r12, 0(r4) +/* 8021A208 00217168 7C 04 03 78 */ mr r4, r0 +/* 8021A20C 0021716C 81 8C 00 90 */ lwz r12, 0x90(r12) +/* 8021A210 00217170 7D 89 03 A6 */ mtctr r12 +/* 8021A214 00217174 4E 80 04 21 */ bctrl +/* 8021A218 00217178 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8021A21C 0021717C 7C 08 03 A6 */ mtlr r0 +/* 8021A220 00217180 38 21 00 10 */ addi r1, r1, 0x10 +/* 8021A224 00217184 4E 80 00 20 */ blr + +.global AcceptScriptMsg__16CScriptGunTurretF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__16CScriptGunTurretF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 8021A228 00217188 94 21 FE 40 */ stwu r1, -0x1c0(r1) +/* 8021A22C 0021718C 7C 08 02 A6 */ mflr r0 +/* 8021A230 00217190 90 01 01 C4 */ stw r0, 0x1c4(r1) +/* 8021A234 00217194 BF 41 01 A8 */ stmw r26, 0x1a8(r1) +/* 8021A238 00217198 7C BC 2B 78 */ mr r28, r5 +/* 8021A23C 0021719C 7C 7E 1B 78 */ mr r30, r3 +/* 8021A240 002171A0 7C 9D 23 78 */ mr r29, r4 +/* 8021A244 002171A4 7C DF 33 78 */ mr r31, r6 +/* 8021A248 002171A8 A0 05 00 00 */ lhz r0, 0(r5) +/* 8021A24C 002171AC 38 A1 00 38 */ addi r5, r1, 0x38 +/* 8021A250 002171B0 B0 01 00 38 */ sth r0, 0x38(r1) +/* 8021A254 002171B4 4B E3 93 C1 */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 8021A258 002171B8 28 1D 00 29 */ cmplwi r29, 0x29 +/* 8021A25C 002171BC 41 81 05 2C */ bgt lbl_8021A788 +/* 8021A260 002171C0 3C 60 80 3E */ lis r3, lbl_803E72A4@ha +/* 8021A264 002171C4 57 A0 10 3A */ slwi r0, r29, 2 +/* 8021A268 002171C8 38 63 72 A4 */ addi r3, r3, lbl_803E72A4@l +/* 8021A26C 002171CC 7C 03 00 2E */ lwzx r0, r3, r0 +/* 8021A270 002171D0 7C 09 03 A6 */ mtctr r0 +/* 8021A274 002171D4 4E 80 04 20 */ bctr +/* 8021A278 002171D8 80 7E 04 9C */ lwz r3, 0x49c(r30) +/* 8021A27C 002171DC 28 03 00 00 */ cmplwi r3, 0 +/* 8021A280 002171E0 41 82 05 08 */ beq lbl_8021A788 +/* 8021A284 002171E4 7F E4 FB 78 */ mr r4, r31 +/* 8021A288 002171E8 38 A0 00 01 */ li r5, 1 +/* 8021A28C 002171EC 4B F8 D0 6D */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb +/* 8021A290 002171F0 48 00 04 F8 */ b lbl_8021A788 +/* 8021A294 002171F4 80 7E 04 9C */ lwz r3, 0x49c(r30) +/* 8021A298 002171F8 28 03 00 00 */ cmplwi r3, 0 +/* 8021A29C 002171FC 41 82 04 EC */ beq lbl_8021A788 +/* 8021A2A0 00217200 7F E4 FB 78 */ mr r4, r31 +/* 8021A2A4 00217204 38 A0 00 00 */ li r5, 0 +/* 8021A2A8 00217208 4B F8 D0 51 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb +/* 8021A2AC 0021720C 48 00 04 DC */ b lbl_8021A788 +/* 8021A2B0 00217210 80 1E 02 58 */ lwz r0, 0x258(r30) +/* 8021A2B4 00217214 2C 00 00 01 */ cmpwi r0, 1 +/* 8021A2B8 00217218 40 82 01 44 */ bne lbl_8021A3FC +/* 8021A2BC 0021721C 80 7E 04 7C */ lwz r3, 0x47c(r30) +/* 8021A2C0 00217220 81 83 00 00 */ lwz r12, 0(r3) +/* 8021A2C4 00217224 81 8C 00 64 */ lwz r12, 0x64(r12) +/* 8021A2C8 00217228 7D 89 03 A6 */ mtctr r12 +/* 8021A2CC 0021722C 4E 80 04 21 */ bctrl +/* 8021A2D0 00217230 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8021A2D4 00217234 41 82 01 28 */ beq lbl_8021A3FC +/* 8021A2D8 00217238 7F E4 FB 78 */ mr r4, r31 +/* 8021A2DC 0021723C 38 61 00 34 */ addi r3, r1, 0x34 +/* 8021A2E0 00217240 4B E3 2D FD */ bl AllocateUniqueId__13CStateManagerFv +/* 8021A2E4 00217244 A0 01 00 34 */ lhz r0, 0x34(r1) +/* 8021A2E8 00217248 3C 60 80 3D */ lis r3, lbl_803D2FF0@ha +/* 8021A2EC 0021724C 38 63 2F F0 */ addi r3, r3, lbl_803D2FF0@l +/* 8021A2F0 00217250 3B 60 00 00 */ li r27, 0 +/* 8021A2F4 00217254 B0 1E 04 98 */ sth r0, 0x498(r30) +/* 8021A2F8 00217258 38 83 00 31 */ addi r4, r3, 0x31 +/* 8021A2FC 0021725C 3B 40 00 00 */ li r26, 0 +/* 8021A300 00217260 38 60 01 48 */ li r3, 0x148 +/* 8021A304 00217264 38 A0 00 00 */ li r5, 0 +/* 8021A308 00217268 48 0F B5 65 */ bl __nw__FUlPCcPCc +/* 8021A30C 0021726C 7C 7D 1B 79 */ or. r29, r3, r3 +/* 8021A310 00217270 41 82 00 B0 */ beq lbl_8021A3C0 +/* 8021A314 00217274 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8021A318 00217278 3C 60 80 3D */ lis r3, lbl_803D2FF0@ha +/* 8021A31C 0021727C 83 9E 04 7C */ lwz r28, 0x47c(r30) +/* 8021A320 00217280 38 83 2F F0 */ addi r4, r3, lbl_803D2FF0@l +/* 8021A324 00217284 B0 01 00 2C */ sth r0, 0x2c(r1) +/* 8021A328 00217288 38 61 00 8C */ addi r3, r1, 0x8c +/* 8021A32C 0021728C 38 84 00 38 */ addi r4, r4, 0x38 +/* 8021A330 00217290 B0 01 00 30 */ sth r0, 0x30(r1) +/* 8021A334 00217294 4B DE A9 85 */ bl string_l__4rstlFPCc +/* 8021A338 00217298 38 61 00 7C */ addi r3, r1, 0x7c +/* 8021A33C 0021729C 38 81 00 8C */ addi r4, r1, 0x8c +/* 8021A340 002172A0 38 BE 00 10 */ addi r5, r30, 0x10 +/* 8021A344 002172A4 3B 60 00 01 */ li r27, 1 +/* 8021A348 002172A8 4B DE A9 15 */ bl "__pl__4rstlFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8021A34C 002172AC 88 1E 00 30 */ lbz r0, 0x30(r30) +/* 8021A350 002172B0 7F 84 E3 78 */ mr r4, r28 +/* 8021A354 002172B4 80 BE 00 04 */ lwz r5, 4(r30) +/* 8021A358 002172B8 38 61 01 50 */ addi r3, r1, 0x150 +/* 8021A35C 002172BC 54 1C CF FE */ rlwinm r28, r0, 0x19, 0x1f, 0x1f +/* 8021A360 002172C0 3B 40 00 01 */ li r26, 1 +/* 8021A364 002172C4 90 A1 00 4C */ stw r5, 0x4c(r1) +/* 8021A368 002172C8 A0 1E 04 98 */ lhz r0, 0x498(r30) +/* 8021A36C 002172CC 90 A1 00 48 */ stw r5, 0x48(r1) +/* 8021A370 002172D0 B0 01 00 28 */ sth r0, 0x28(r1) +/* 8021A374 002172D4 81 84 00 00 */ lwz r12, 0(r4) +/* 8021A378 002172D8 81 8C 00 68 */ lwz r12, 0x68(r12) +/* 8021A37C 002172DC 7D 89 03 A6 */ mtctr r12 +/* 8021A380 002172E0 4E 80 04 21 */ bctrl +/* 8021A384 002172E4 38 60 00 00 */ li r3, 0 +/* 8021A388 002172E8 38 00 00 01 */ li r0, 1 +/* 8021A38C 002172EC 90 61 00 08 */ stw r3, 8(r1) +/* 8021A390 002172F0 7F A3 EB 78 */ mr r3, r29 +/* 8021A394 002172F4 C0 22 B3 5C */ lfs f1, lbl_805AD07C@sda21(r2) +/* 8021A398 002172F8 7F 86 E3 78 */ mr r6, r28 +/* 8021A39C 002172FC 90 01 00 0C */ stw r0, 0xc(r1) +/* 8021A3A0 00217300 38 81 00 28 */ addi r4, r1, 0x28 +/* 8021A3A4 00217304 38 A1 00 4C */ addi r5, r1, 0x4c +/* 8021A3A8 00217308 38 E1 00 7C */ addi r7, r1, 0x7c +/* 8021A3AC 0021730C 39 1E 00 34 */ addi r8, r30, 0x34 +/* 8021A3B0 00217310 39 21 00 30 */ addi r9, r1, 0x30 +/* 8021A3B4 00217314 39 41 01 50 */ addi r10, r1, 0x150 +/* 8021A3B8 00217318 4B E9 B4 6D */ bl "__ct__10CGameLightF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC12CTransform4f9TUniqueIdRC6CLightUiUif" +/* 8021A3BC 0021731C 7C 7D 1B 78 */ mr r29, r3 +lbl_8021A3C0: +/* 8021A3C0 00217320 7F E3 FB 78 */ mr r3, r31 +/* 8021A3C4 00217324 7F A4 EB 78 */ mr r4, r29 +/* 8021A3C8 00217328 4B E3 29 2D */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +/* 8021A3CC 0021732C 7F 40 07 75 */ extsb. r0, r26 +/* 8021A3D0 00217330 41 82 00 0C */ beq lbl_8021A3DC +/* 8021A3D4 00217334 38 61 00 7C */ addi r3, r1, 0x7c +/* 8021A3D8 00217338 48 12 37 09 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8021A3DC: +/* 8021A3DC 0021733C 7F 60 07 75 */ extsb. r0, r27 +/* 8021A3E0 00217340 41 82 00 0C */ beq lbl_8021A3EC +/* 8021A3E4 00217344 38 61 00 8C */ addi r3, r1, 0x8c +/* 8021A3E8 00217348 48 12 36 F9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8021A3EC: +/* 8021A3EC 0021734C 7F C3 F3 78 */ mr r3, r30 +/* 8021A3F0 00217350 7F E4 FB 78 */ mr r4, r31 +/* 8021A3F4 00217354 4B FF B7 91 */ bl SetupCollisionManager__16CScriptGunTurretFR13CStateManager +/* 8021A3F8 00217358 48 00 03 90 */ b lbl_8021A788 +lbl_8021A3FC: +/* 8021A3FC 0021735C 80 1E 02 58 */ lwz r0, 0x258(r30) +/* 8021A400 00217360 2C 00 00 00 */ cmpwi r0, 0 +/* 8021A404 00217364 40 82 03 84 */ bne lbl_8021A788 +/* 8021A408 00217368 80 DE 03 5C */ lwz r6, 0x35c(r30) +/* 8021A40C 0021736C 3C 06 00 01 */ addis r0, r6, 1 +/* 8021A410 00217370 28 00 FF FF */ cmplwi r0, 0xffff +/* 8021A414 00217374 41 82 00 9C */ beq lbl_8021A4B0 +/* 8021A418 00217378 80 BE 00 64 */ lwz r5, 0x64(r30) +/* 8021A41C 0021737C 38 61 01 04 */ addi r3, r1, 0x104 +/* 8021A420 00217380 38 81 00 6C */ addi r4, r1, 0x6c +/* 8021A424 00217384 C0 45 00 00 */ lfs f2, 0(r5) +/* 8021A428 00217388 C0 25 00 04 */ lfs f1, 4(r5) +/* 8021A42C 0021738C C0 05 00 08 */ lfs f0, 8(r5) +/* 8021A430 00217390 D0 41 00 60 */ stfs f2, 0x60(r1) +/* 8021A434 00217394 D0 21 00 64 */ stfs f1, 0x64(r1) +/* 8021A438 00217398 D0 01 00 68 */ stfs f0, 0x68(r1) +/* 8021A43C 0021739C 90 C1 00 6C */ stw r6, 0x6c(r1) +/* 8021A440 002173A0 D0 41 00 70 */ stfs f2, 0x70(r1) +/* 8021A444 002173A4 D0 21 00 74 */ stfs f1, 0x74(r1) +/* 8021A448 002173A8 D0 01 00 78 */ stfs f0, 0x78(r1) +/* 8021A44C 002173AC 4B EF C9 11 */ bl __ct__10CModelDataFRC10CStaticRes +/* 8021A450 002173B0 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 8021A454 002173B4 38 81 01 04 */ addi r4, r1, 0x104 +/* 8021A458 002173B8 4B EC DE 41 */ bl sub_800e8298 +/* 8021A45C 002173BC 38 7E 04 A4 */ addi r3, r30, 0x4a4 +/* 8021A460 002173C0 38 81 00 B4 */ addi r4, r1, 0xb4 +/* 8021A464 002173C4 4B F0 38 E9 */ bl sub_8011dd4c +/* 8021A468 002173C8 88 01 01 00 */ lbz r0, 0x100(r1) +/* 8021A46C 002173CC 28 00 00 00 */ cmplwi r0, 0 +/* 8021A470 002173D0 41 82 00 10 */ beq lbl_8021A480 +/* 8021A474 002173D4 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 8021A478 002173D8 38 80 FF FF */ li r4, -1 +/* 8021A47C 002173DC 4B EF C5 D1 */ bl __dt__10CModelDataFv +lbl_8021A480: +/* 8021A480 002173E0 38 00 00 00 */ li r0, 0 +/* 8021A484 002173E4 38 61 01 04 */ addi r3, r1, 0x104 +/* 8021A488 002173E8 98 01 01 00 */ stb r0, 0x100(r1) +/* 8021A48C 002173EC 38 80 FF FF */ li r4, -1 +/* 8021A490 002173F0 4B EF C5 BD */ bl __dt__10CModelDataFv +/* 8021A494 002173F4 38 61 00 9C */ addi r3, r1, 0x9c +/* 8021A498 002173F8 38 9E 04 A4 */ addi r4, r30, 0x4a4 +/* 8021A49C 002173FC 4B EF B1 29 */ bl GetBounds__10CModelDataCFv +/* 8021A4A0 00217400 C0 21 00 B0 */ lfs f1, 0xb0(r1) +/* 8021A4A4 00217404 C0 01 00 A4 */ lfs f0, 0xa4(r1) +/* 8021A4A8 00217408 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8021A4AC 0021740C D0 1E 04 F4 */ stfs f0, 0x4f4(r30) +lbl_8021A4B0: +/* 8021A4B0 00217410 7F C3 F3 78 */ mr r3, r30 +/* 8021A4B4 00217414 7F E5 FB 78 */ mr r5, r31 +/* 8021A4B8 00217418 38 80 00 05 */ li r4, 5 +/* 8021A4BC 0021741C 4B FF F6 5D */ bl SetTurretState__16CScriptGunTurretFQ216CScriptGunTurret12ETurretState +/* 8021A4C0 00217420 48 00 02 C8 */ b lbl_8021A788 +/* 8021A4C4 00217424 80 1E 02 58 */ lwz r0, 0x258(r30) +/* 8021A4C8 00217428 2C 00 00 01 */ cmpwi r0, 1 +/* 8021A4CC 0021742C 40 82 00 28 */ bne lbl_8021A4F4 +/* 8021A4D0 00217430 A0 7E 04 98 */ lhz r3, 0x498(r30) +/* 8021A4D4 00217434 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8021A4D8 00217438 7C 03 00 40 */ cmplw r3, r0 +/* 8021A4DC 0021743C 41 82 00 18 */ beq lbl_8021A4F4 +/* 8021A4E0 00217440 A0 1E 04 98 */ lhz r0, 0x498(r30) +/* 8021A4E4 00217444 7F E3 FB 78 */ mr r3, r31 +/* 8021A4E8 00217448 38 81 00 24 */ addi r4, r1, 0x24 +/* 8021A4EC 0021744C B0 01 00 24 */ sth r0, 0x24(r1) +/* 8021A4F0 00217450 4B E3 1D 7D */ bl FreeScriptObject__13CStateManagerF9TUniqueId +lbl_8021A4F4: +/* 8021A4F4 00217454 80 1E 05 0C */ lwz r0, 0x50c(r30) +/* 8021A4F8 00217458 28 00 00 00 */ cmplwi r0, 0 +/* 8021A4FC 0021745C 41 82 00 14 */ beq lbl_8021A510 +/* 8021A500 00217460 80 1E 05 0C */ lwz r0, 0x50c(r30) +/* 8021A504 00217464 38 61 00 44 */ addi r3, r1, 0x44 +/* 8021A508 00217468 90 01 00 44 */ stw r0, 0x44(r1) +/* 8021A50C 0021746C 48 0C F9 79 */ bl RemoveEmitter__11CSfxManagerFRC10CSfxHandle +lbl_8021A510: +/* 8021A510 00217470 80 7E 04 9C */ lwz r3, 0x49c(r30) +/* 8021A514 00217474 28 03 00 00 */ cmplwi r3, 0 +/* 8021A518 00217478 41 82 02 70 */ beq lbl_8021A788 +/* 8021A51C 0021747C 7F E4 FB 78 */ mr r4, r31 +/* 8021A520 00217480 4B F8 CE A5 */ bl Destroy__22CCollisionActorManagerCFR13CStateManager +/* 8021A524 00217484 48 00 02 64 */ b lbl_8021A788 +/* 8021A528 00217488 80 1E 02 58 */ lwz r0, 0x258(r30) +/* 8021A52C 0021748C 2C 00 00 00 */ cmpwi r0, 0 +/* 8021A530 00217490 40 82 02 58 */ bne lbl_8021A788 +/* 8021A534 00217494 80 1E 05 20 */ lwz r0, 0x520(r30) +/* 8021A538 00217498 2C 00 00 05 */ cmpwi r0, 5 +/* 8021A53C 0021749C 40 82 02 4C */ bne lbl_8021A788 +/* 8021A540 002174A0 88 1E 05 60 */ lbz r0, 0x560(r30) +/* 8021A544 002174A4 38 60 00 01 */ li r3, 1 +/* 8021A548 002174A8 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 8021A54C 002174AC 98 1E 05 60 */ stb r0, 0x560(r30) +/* 8021A550 002174B0 48 00 02 38 */ b lbl_8021A788 +/* 8021A554 002174B4 80 1E 02 58 */ lwz r0, 0x258(r30) +/* 8021A558 002174B8 2C 00 00 00 */ cmpwi r0, 0 +/* 8021A55C 002174BC 40 82 02 2C */ bne lbl_8021A788 +/* 8021A560 002174C0 80 1E 05 20 */ lwz r0, 0x520(r30) +/* 8021A564 002174C4 2C 00 00 01 */ cmpwi r0, 1 +/* 8021A568 002174C8 41 82 02 20 */ beq lbl_8021A788 +/* 8021A56C 002174CC 2C 00 00 02 */ cmpwi r0, 2 +/* 8021A570 002174D0 41 82 02 18 */ beq lbl_8021A788 +/* 8021A574 002174D4 2C 00 00 03 */ cmpwi r0, 3 +/* 8021A578 002174D8 41 82 02 10 */ beq lbl_8021A788 +/* 8021A57C 002174DC 88 1E 05 60 */ lbz r0, 0x560(r30) +/* 8021A580 002174E0 7F C3 F3 78 */ mr r3, r30 +/* 8021A584 002174E4 38 80 00 03 */ li r4, 3 +/* 8021A588 002174E8 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 8021A58C 002174EC 41 82 00 08 */ beq lbl_8021A594 +/* 8021A590 002174F0 38 80 00 04 */ li r4, 4 +lbl_8021A594: +/* 8021A594 002174F4 7F E5 FB 78 */ mr r5, r31 +/* 8021A598 002174F8 4B FF F5 81 */ bl SetTurretState__16CScriptGunTurretFQ216CScriptGunTurret12ETurretState +/* 8021A59C 002174FC 48 00 01 EC */ b lbl_8021A788 +/* 8021A5A0 00217500 80 1E 02 58 */ lwz r0, 0x258(r30) +/* 8021A5A4 00217504 2C 00 00 01 */ cmpwi r0, 1 +/* 8021A5A8 00217508 40 82 00 14 */ bne lbl_8021A5BC +/* 8021A5AC 0021750C 7F C3 F3 78 */ mr r3, r30 +/* 8021A5B0 00217510 7F E4 FB 78 */ mr r4, r31 +/* 8021A5B4 00217514 4B FF CE 55 */ bl LaunchProjectile__16CScriptGunTurretFR13CStateManager +/* 8021A5B8 00217518 48 00 01 D0 */ b lbl_8021A788 +lbl_8021A5BC: +/* 8021A5BC 0021751C 2C 00 00 00 */ cmpwi r0, 0 +/* 8021A5C0 00217520 40 82 01 C8 */ bne lbl_8021A788 +/* 8021A5C4 00217524 7F C3 F3 78 */ mr r3, r30 +/* 8021A5C8 00217528 7F E4 FB 78 */ mr r4, r31 +/* 8021A5CC 0021752C 4B FF CC ED */ bl PlayAdditiveFlinchAnimation__16CScriptGunTurretFR13CStateManager +/* 8021A5D0 00217530 48 00 01 B8 */ b lbl_8021A788 +/* 8021A5D4 00217534 88 1E 05 60 */ lbz r0, 0x560(r30) +/* 8021A5D8 00217538 38 60 00 00 */ li r3, 0 +/* 8021A5DC 0021753C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 8021A5E0 00217540 7F C3 F3 78 */ mr r3, r30 +/* 8021A5E4 00217544 98 1E 05 60 */ stb r0, 0x560(r30) +/* 8021A5E8 00217548 38 80 00 00 */ li r4, 0 +/* 8021A5EC 0021754C 4B E3 8E 01 */ bl SetMuted__6CActorFb +/* 8021A5F0 00217550 48 00 01 98 */ b lbl_8021A788 +/* 8021A5F4 00217554 88 1E 05 60 */ lbz r0, 0x560(r30) +/* 8021A5F8 00217558 38 60 00 01 */ li r3, 1 +/* 8021A5FC 0021755C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 8021A600 00217560 7F C3 F3 78 */ mr r3, r30 +/* 8021A604 00217564 98 1E 05 60 */ stb r0, 0x560(r30) +/* 8021A608 00217568 38 80 00 01 */ li r4, 1 +/* 8021A60C 0021756C 4B E3 8D E1 */ bl SetMuted__6CActorFb +/* 8021A610 00217570 48 00 01 78 */ b lbl_8021A788 +/* 8021A614 00217574 80 1E 02 58 */ lwz r0, 0x258(r30) +/* 8021A618 00217578 2C 00 00 00 */ cmpwi r0, 0 +/* 8021A61C 0021757C 40 82 01 6C */ bne lbl_8021A788 +/* 8021A620 00217580 83 9E 00 2C */ lwz r28, 0x2c(r30) +/* 8021A624 00217584 48 00 00 90 */ b lbl_8021A6B4 +lbl_8021A628: +/* 8021A628 00217588 80 1C 00 00 */ lwz r0, 0(r28) +/* 8021A62C 0021758C 2C 00 00 12 */ cmpwi r0, 0x12 +/* 8021A630 00217590 40 82 00 80 */ bne lbl_8021A6B0 +/* 8021A634 00217594 80 1C 00 04 */ lwz r0, 4(r28) +/* 8021A638 00217598 2C 00 00 01 */ cmpwi r0, 1 +/* 8021A63C 0021759C 40 82 00 74 */ bne lbl_8021A6B0 +/* 8021A640 002175A0 80 1C 00 08 */ lwz r0, 8(r28) +/* 8021A644 002175A4 7F E4 FB 78 */ mr r4, r31 +/* 8021A648 002175A8 38 61 00 20 */ addi r3, r1, 0x20 +/* 8021A64C 002175AC 38 A1 00 40 */ addi r5, r1, 0x40 +/* 8021A650 002175B0 90 01 00 40 */ stw r0, 0x40(r1) +/* 8021A654 002175B4 4B E2 D8 C9 */ bl GetIdForScript__13CStateManagerCF9TEditorId +/* 8021A658 002175B8 A0 01 00 20 */ lhz r0, 0x20(r1) +/* 8021A65C 002175BC 7F E3 FB 78 */ mr r3, r31 +/* 8021A660 002175C0 38 81 00 1C */ addi r4, r1, 0x1c +/* 8021A664 002175C4 B0 01 00 3C */ sth r0, 0x3c(r1) +/* 8021A668 002175C8 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 8021A66C 002175CC 4B E3 1F 09 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8021A670 002175D0 7C 64 1B 78 */ mr r4, r3 +/* 8021A674 002175D4 38 61 00 58 */ addi r3, r1, 0x58 +/* 8021A678 002175D8 4B E8 F1 3D */ bl "__ct__30TCastToPtr<16CScriptGunTurret>FP7CEntity" +/* 8021A67C 002175DC 80 63 00 04 */ lwz r3, 4(r3) +/* 8021A680 002175E0 28 03 00 00 */ cmplwi r3, 0 +/* 8021A684 002175E4 41 82 00 2C */ beq lbl_8021A6B0 +/* 8021A688 002175E8 A0 01 00 3C */ lhz r0, 0x3c(r1) +/* 8021A68C 002175EC 7F E4 FB 78 */ mr r4, r31 +/* 8021A690 002175F0 B0 1E 02 5C */ sth r0, 0x25c(r30) +/* 8021A694 002175F4 81 83 00 00 */ lwz r12, 0(r3) +/* 8021A698 002175F8 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8021A69C 002175FC 7D 89 03 A6 */ mtctr r12 +/* 8021A6A0 00217600 4E 80 04 21 */ bctrl +/* 8021A6A4 00217604 C0 03 00 00 */ lfs f0, 0(r3) +/* 8021A6A8 00217608 D0 1E 02 60 */ stfs f0, 0x260(r30) +/* 8021A6AC 0021760C 48 00 00 DC */ b lbl_8021A788 +lbl_8021A6B0: +/* 8021A6B0 00217610 3B 9C 00 0C */ addi r28, r28, 0xc +lbl_8021A6B4: +/* 8021A6B4 00217614 80 1E 00 24 */ lwz r0, 0x24(r30) +/* 8021A6B8 00217618 80 7E 00 2C */ lwz r3, 0x2c(r30) +/* 8021A6BC 0021761C 1C 00 00 0C */ mulli r0, r0, 0xc +/* 8021A6C0 00217620 7C 03 02 14 */ add r0, r3, r0 +/* 8021A6C4 00217624 7C 1C 00 40 */ cmplw r28, r0 +/* 8021A6C8 00217628 40 82 FF 60 */ bne lbl_8021A628 +/* 8021A6CC 0021762C 48 00 00 BC */ b lbl_8021A788 +/* 8021A6D0 00217630 80 1E 02 58 */ lwz r0, 0x258(r30) +/* 8021A6D4 00217634 2C 00 00 01 */ cmpwi r0, 1 +/* 8021A6D8 00217638 40 82 00 B0 */ bne lbl_8021A788 +/* 8021A6DC 0021763C 7F C3 F3 78 */ mr r3, r30 +/* 8021A6E0 00217640 7F E4 FB 78 */ mr r4, r31 +/* 8021A6E4 00217644 81 9E 00 00 */ lwz r12, 0(r30) +/* 8021A6E8 00217648 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8021A6EC 0021764C 7D 89 03 A6 */ mtctr r12 +/* 8021A6F0 00217650 4E 80 04 21 */ bctrl +/* 8021A6F4 00217654 C0 23 00 00 */ lfs f1, 0(r3) +/* 8021A6F8 00217658 C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 8021A6FC 0021765C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8021A700 00217660 4C 40 13 82 */ cror 2, 0, 2 +/* 8021A704 00217664 40 82 00 84 */ bne lbl_8021A788 +/* 8021A708 00217668 A0 1C 00 00 */ lhz r0, 0(r28) +/* 8021A70C 0021766C 7F E3 FB 78 */ mr r3, r31 +/* 8021A710 00217670 38 81 00 18 */ addi r4, r1, 0x18 +/* 8021A714 00217674 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8021A718 00217678 4B E3 1E 8D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8021A71C 0021767C 7C 64 1B 78 */ mr r4, r3 +/* 8021A720 00217680 38 61 00 50 */ addi r3, r1, 0x50 +/* 8021A724 00217684 4B E9 2F E9 */ bl "__ct__29TCastToPtr<15CGameProjectile>FP7CEntity" +/* 8021A728 00217688 80 63 00 04 */ lwz r3, 4(r3) +/* 8021A72C 0021768C 28 03 00 00 */ cmplwi r3, 0 +/* 8021A730 00217690 41 82 00 58 */ beq lbl_8021A788 +/* 8021A734 00217694 80 03 00 E8 */ lwz r0, 0xe8(r3) +/* 8021A738 00217698 54 00 06 F6 */ rlwinm r0, r0, 0, 0x1b, 0x1b +/* 8021A73C 0021769C 2C 00 00 10 */ cmpwi r0, 0x10 +/* 8021A740 002176A0 40 82 00 48 */ bne lbl_8021A788 +/* 8021A744 002176A4 38 00 00 0C */ li r0, 0xc +/* 8021A748 002176A8 7F C3 F3 78 */ mr r3, r30 +/* 8021A74C 002176AC 90 1E 05 20 */ stw r0, 0x520(r30) +/* 8021A750 002176B0 7F E6 FB 78 */ mr r6, r31 +/* 8021A754 002176B4 38 80 00 28 */ li r4, 0x28 +/* 8021A758 002176B8 38 A0 00 29 */ li r5, 0x29 +/* 8021A75C 002176BC 4B E3 97 79 */ bl RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager +/* 8021A760 002176C0 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8021A764 002176C4 7F E6 FB 78 */ mr r6, r31 +/* 8021A768 002176C8 38 81 00 14 */ addi r4, r1, 0x14 +/* 8021A76C 002176CC 38 A0 00 08 */ li r5, 8 +/* 8021A770 002176D0 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8021A774 002176D4 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8021A778 002176D8 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8021A77C 002176DC 4B F6 0A D9 */ bl SetOrbitRequestForTarget__7CPlayerF9TUniqueId19EPlayerOrbitRequestR13CStateManager +/* 8021A780 002176E0 C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 8021A784 002176E4 D0 1E 05 3C */ stfs f0, 0x53c(r30) +lbl_8021A788: +/* 8021A788 002176E8 BB 41 01 A8 */ lmw r26, 0x1a8(r1) +/* 8021A78C 002176EC 80 01 01 C4 */ lwz r0, 0x1c4(r1) +/* 8021A790 002176F0 7C 08 03 A6 */ mtlr r0 +/* 8021A794 002176F4 38 21 01 C0 */ addi r1, r1, 0x1c0 +/* 8021A798 002176F8 4E 80 00 20 */ blr + +.global Think__16CScriptGunTurretFfR13CStateManager +Think__16CScriptGunTurretFfR13CStateManager: +/* 8021A79C 002176FC 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 8021A7A0 00217700 7C 08 02 A6 */ mflr r0 +/* 8021A7A4 00217704 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 8021A7A8 00217708 DB E1 00 E0 */ stfd f31, 0xe0(r1) +/* 8021A7AC 0021770C F3 E1 00 E8 */ psq_st f31, 232(r1), 0, qr0 +/* 8021A7B0 00217710 DB C1 00 D0 */ stfd f30, 0xd0(r1) +/* 8021A7B4 00217714 F3 C1 00 D8 */ psq_st f30, 216(r1), 0, qr0 +/* 8021A7B8 00217718 DB A1 00 C0 */ stfd f29, 0xc0(r1) +/* 8021A7BC 0021771C F3 A1 00 C8 */ psq_st f29, 200(r1), 0, qr0 +/* 8021A7C0 00217720 DB 81 00 B0 */ stfd f28, 0xb0(r1) +/* 8021A7C4 00217724 F3 81 00 B8 */ psq_st f28, 184(r1), 0, qr0 +/* 8021A7C8 00217728 93 E1 00 AC */ stw r31, 0xac(r1) +/* 8021A7CC 0021772C 93 C1 00 A8 */ stw r30, 0xa8(r1) +/* 8021A7D0 00217730 93 A1 00 A4 */ stw r29, 0xa4(r1) +/* 8021A7D4 00217734 88 03 00 30 */ lbz r0, 0x30(r3) +/* 8021A7D8 00217738 FF E0 08 90 */ fmr f31, f1 +/* 8021A7DC 0021773C 7C 7D 1B 78 */ mr r29, r3 +/* 8021A7E0 00217740 7C 9E 23 78 */ mr r30, r4 +/* 8021A7E4 00217744 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8021A7E8 00217748 41 82 01 CC */ beq lbl_8021A9B4 +/* 8021A7EC 0021774C 80 1D 02 58 */ lwz r0, 0x258(r29) +/* 8021A7F0 00217750 2C 00 00 01 */ cmpwi r0, 1 +/* 8021A7F4 00217754 41 82 01 1C */ beq lbl_8021A910 +/* 8021A7F8 00217758 40 80 01 B0 */ bge lbl_8021A9A8 +/* 8021A7FC 0021775C 2C 00 00 00 */ cmpwi r0, 0 +/* 8021A800 00217760 40 80 00 08 */ bge lbl_8021A808 +/* 8021A804 00217764 48 00 01 A4 */ b lbl_8021A9A8 +lbl_8021A808: +/* 8021A808 00217768 88 1D 05 60 */ lbz r0, 0x560(r29) +/* 8021A80C 0021776C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8021A810 00217770 40 82 00 EC */ bne lbl_8021A8FC +/* 8021A814 00217774 4B FF F1 ED */ bl ProcessGunStateMachine__16CScriptGunTurretFfR13CStateManager +/* 8021A818 00217778 7F A3 EB 78 */ mr r3, r29 +/* 8021A81C 0021777C 4B FF E1 AD */ bl UpdateTurretAnimation__16CScriptGunTurretFv +/* 8021A820 00217780 FC 20 F8 90 */ fmr f1, f31 +/* 8021A824 00217784 7F A3 EB 78 */ mr r3, r29 +/* 8021A828 00217788 7F C4 F3 78 */ mr r4, r30 +/* 8021A82C 0021778C 4B FF D7 31 */ bl UpdateGunOrientation__16CScriptGunTurretFfR13CStateManager +/* 8021A830 00217790 FC 20 F8 90 */ fmr f1, f31 +/* 8021A834 00217794 7F A4 EB 78 */ mr r4, r29 +/* 8021A838 00217798 38 61 00 20 */ addi r3, r1, 0x20 +/* 8021A83C 0021779C 4B FF D5 F9 */ bl UpdateExtensionModelState__16CScriptGunTurretFf +/* 8021A840 002177A0 FC 20 F8 90 */ fmr f1, f31 +/* 8021A844 002177A4 C3 C1 00 20 */ lfs f30, 0x20(r1) +/* 8021A848 002177A8 C3 A1 00 24 */ lfs f29, 0x24(r1) +/* 8021A84C 002177AC 7F A4 EB 78 */ mr r4, r29 +/* 8021A850 002177B0 C3 81 00 28 */ lfs f28, 0x28(r1) +/* 8021A854 002177B4 7F C5 F3 78 */ mr r5, r30 +/* 8021A858 002177B8 38 61 00 48 */ addi r3, r1, 0x48 +/* 8021A85C 002177BC 38 C0 00 01 */ li r6, 1 +/* 8021A860 002177C0 4B E3 AA 3D */ bl UpdateAnimation__6CActorFfR13CStateManagerb +/* 8021A864 002177C4 C0 C1 00 48 */ lfs f6, 0x48(r1) +/* 8021A868 002177C8 7F A3 EB 78 */ mr r3, r29 +/* 8021A86C 002177CC C0 A1 00 4C */ lfs f5, 0x4c(r1) +/* 8021A870 002177D0 3B E1 00 8C */ addi r31, r1, 0x8c +/* 8021A874 002177D4 C0 81 00 50 */ lfs f4, 0x50(r1) +/* 8021A878 002177D8 38 81 00 14 */ addi r4, r1, 0x14 +/* 8021A87C 002177DC C0 61 00 54 */ lfs f3, 0x54(r1) +/* 8021A880 002177E0 C0 41 00 58 */ lfs f2, 0x58(r1) +/* 8021A884 002177E4 C0 21 00 5C */ lfs f1, 0x5c(r1) +/* 8021A888 002177E8 C0 01 00 60 */ lfs f0, 0x60(r1) +/* 8021A88C 002177EC D0 C1 00 80 */ stfs f6, 0x80(r1) +/* 8021A890 002177F0 D0 A1 00 84 */ stfs f5, 0x84(r1) +/* 8021A894 002177F4 D0 81 00 88 */ stfs f4, 0x88(r1) +/* 8021A898 002177F8 D0 61 00 8C */ stfs f3, 0x8c(r1) +/* 8021A89C 002177FC D0 41 00 90 */ stfs f2, 0x90(r1) +/* 8021A8A0 00217800 D0 21 00 94 */ stfs f1, 0x94(r1) +/* 8021A8A4 00217804 D0 01 00 98 */ stfs f0, 0x98(r1) +/* 8021A8A8 00217808 C0 1D 00 50 */ lfs f0, 0x50(r29) +/* 8021A8AC 0021780C C0 3D 00 60 */ lfs f1, 0x60(r29) +/* 8021A8B0 00217810 EC 60 28 2A */ fadds f3, f0, f5 +/* 8021A8B4 00217814 C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 8021A8B8 00217818 EC 41 20 2A */ fadds f2, f1, f4 +/* 8021A8BC 0021781C EC 20 30 2A */ fadds f1, f0, f6 +/* 8021A8C0 00217820 EC 83 E8 2A */ fadds f4, f3, f29 +/* 8021A8C4 00217824 D0 61 00 0C */ stfs f3, 0xc(r1) +/* 8021A8C8 00217828 EC 62 E0 2A */ fadds f3, f2, f28 +/* 8021A8CC 0021782C EC 01 F0 2A */ fadds f0, f1, f30 +/* 8021A8D0 00217830 D0 21 00 08 */ stfs f1, 8(r1) +/* 8021A8D4 00217834 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 8021A8D8 00217838 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 8021A8DC 0021783C D0 81 00 18 */ stfs f4, 0x18(r1) +/* 8021A8E0 00217840 D0 61 00 1C */ stfs f3, 0x1c(r1) +/* 8021A8E4 00217844 4B E3 85 A9 */ bl SetTranslation__6CActorFRC9CVector3f +/* 8021A8E8 00217848 FC 20 F8 90 */ fmr f1, f31 +/* 8021A8EC 0021784C 7F A3 EB 78 */ mr r3, r29 +/* 8021A8F0 00217850 7F E4 FB 78 */ mr r4, r31 +/* 8021A8F4 00217854 4B F0 05 21 */ bl RotateToOR__13CPhysicsActorFRC11CQuaternionf +/* 8021A8F8 00217858 48 00 00 08 */ b lbl_8021A900 +lbl_8021A8FC: +/* 8021A8FC 0021785C 4B F0 0A 7D */ bl Stop__13CPhysicsActorFv +lbl_8021A900: +/* 8021A900 00217860 FC 20 F8 90 */ fmr f1, f31 +/* 8021A904 00217864 7F A3 EB 78 */ mr r3, r29 +/* 8021A908 00217868 4B FF B9 81 */ bl UpdateTargettingSound__16CScriptGunTurretFf +/* 8021A90C 0021786C 48 00 00 9C */ b lbl_8021A9A8 +lbl_8021A910: +/* 8021A910 00217870 4B FF BD DD */ bl UpdateGunParticles__16CScriptGunTurretFfR13CStateManager +/* 8021A914 00217874 FC 20 F8 90 */ fmr f1, f31 +/* 8021A918 00217878 7F A4 EB 78 */ mr r4, r29 +/* 8021A91C 0021787C 7F C5 F3 78 */ mr r5, r30 +/* 8021A920 00217880 38 61 00 2C */ addi r3, r1, 0x2c +/* 8021A924 00217884 38 C0 00 01 */ li r6, 1 +/* 8021A928 00217888 4B E3 A9 75 */ bl UpdateAnimation__6CActorFfR13CStateManagerb +/* 8021A92C 0021788C C0 E1 00 2C */ lfs f7, 0x2c(r1) +/* 8021A930 00217890 FC 20 F8 90 */ fmr f1, f31 +/* 8021A934 00217894 C0 C1 00 30 */ lfs f6, 0x30(r1) +/* 8021A938 00217898 7F A3 EB 78 */ mr r3, r29 +/* 8021A93C 0021789C C0 A1 00 34 */ lfs f5, 0x34(r1) +/* 8021A940 002178A0 3B E1 00 70 */ addi r31, r1, 0x70 +/* 8021A944 002178A4 C0 81 00 38 */ lfs f4, 0x38(r1) +/* 8021A948 002178A8 C0 61 00 3C */ lfs f3, 0x3c(r1) +/* 8021A94C 002178AC 38 81 00 64 */ addi r4, r1, 0x64 +/* 8021A950 002178B0 C0 41 00 40 */ lfs f2, 0x40(r1) +/* 8021A954 002178B4 C0 01 00 44 */ lfs f0, 0x44(r1) +/* 8021A958 002178B8 D0 E1 00 64 */ stfs f7, 0x64(r1) +/* 8021A95C 002178BC D0 C1 00 68 */ stfs f6, 0x68(r1) +/* 8021A960 002178C0 D0 A1 00 6C */ stfs f5, 0x6c(r1) +/* 8021A964 002178C4 D0 81 00 70 */ stfs f4, 0x70(r1) +/* 8021A968 002178C8 D0 61 00 74 */ stfs f3, 0x74(r1) +/* 8021A96C 002178CC D0 41 00 78 */ stfs f2, 0x78(r1) +/* 8021A970 002178D0 D0 01 00 7C */ stfs f0, 0x7c(r1) +/* 8021A974 002178D4 4B F0 05 05 */ bl MoveToOR__13CPhysicsActorFRC9CVector3ff +/* 8021A978 002178D8 FC 20 F8 90 */ fmr f1, f31 +/* 8021A97C 002178DC 7F A3 EB 78 */ mr r3, r29 +/* 8021A980 002178E0 7F E4 FB 78 */ mr r4, r31 +/* 8021A984 002178E4 4B F0 04 91 */ bl RotateToOR__13CPhysicsActorFRC11CQuaternionf +/* 8021A988 002178E8 FC 20 F8 90 */ fmr f1, f31 +/* 8021A98C 002178EC 7F A3 EB 78 */ mr r3, r29 +/* 8021A990 002178F0 7F C4 F3 78 */ mr r4, r30 +/* 8021A994 002178F4 4B FF B1 49 */ bl UpdateGunCollisionManager__16CScriptGunTurretFfR13CStateManager +/* 8021A998 002178F8 FC 20 F8 90 */ fmr f1, f31 +/* 8021A99C 002178FC 7F A3 EB 78 */ mr r3, r29 +/* 8021A9A0 00217900 7F C4 F3 78 */ mr r4, r30 +/* 8021A9A4 00217904 4B FF B0 65 */ bl UpdateFrozenState__16CScriptGunTurretFfR13CStateManager +lbl_8021A9A8: +/* 8021A9A8 00217908 7F A3 EB 78 */ mr r3, r29 +/* 8021A9AC 0021790C 7F C4 F3 78 */ mr r4, r30 +/* 8021A9B0 00217910 4B FF D3 21 */ bl UpdateHealthInfo__16CScriptGunTurretFR13CStateManager +lbl_8021A9B4: +/* 8021A9B4 00217914 E3 E1 00 E8 */ psq_l f31, 232(r1), 0, qr0 +/* 8021A9B8 00217918 CB E1 00 E0 */ lfd f31, 0xe0(r1) +/* 8021A9BC 0021791C E3 C1 00 D8 */ psq_l f30, 216(r1), 0, qr0 +/* 8021A9C0 00217920 CB C1 00 D0 */ lfd f30, 0xd0(r1) +/* 8021A9C4 00217924 E3 A1 00 C8 */ psq_l f29, 200(r1), 0, qr0 +/* 8021A9C8 00217928 CB A1 00 C0 */ lfd f29, 0xc0(r1) +/* 8021A9CC 0021792C E3 81 00 B8 */ psq_l f28, 184(r1), 0, qr0 +/* 8021A9D0 00217930 CB 81 00 B0 */ lfd f28, 0xb0(r1) +/* 8021A9D4 00217934 83 E1 00 AC */ lwz r31, 0xac(r1) +/* 8021A9D8 00217938 83 C1 00 A8 */ lwz r30, 0xa8(r1) +/* 8021A9DC 0021793C 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 8021A9E0 00217940 83 A1 00 A4 */ lwz r29, 0xa4(r1) +/* 8021A9E4 00217944 7C 08 03 A6 */ mtlr r0 +/* 8021A9E8 00217948 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 8021A9EC 0021794C 4E 80 00 20 */ blr + +.global __dt__16CScriptGunTurretFv +__dt__16CScriptGunTurretFv: +/* 8021A9F0 00217950 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8021A9F4 00217954 7C 08 02 A6 */ mflr r0 +/* 8021A9F8 00217958 90 01 00 14 */ stw r0, 0x14(r1) +/* 8021A9FC 0021795C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8021AA00 00217960 7C 9F 23 78 */ mr r31, r4 +/* 8021AA04 00217964 93 C1 00 08 */ stw r30, 8(r1) +/* 8021AA08 00217968 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8021AA0C 0021796C 41 82 03 04 */ beq lbl_8021AD10 +/* 8021AA10 00217970 3C 60 80 3E */ lis r3, lbl_803E71EC@ha +/* 8021AA14 00217974 34 1E 04 A4 */ addic. r0, r30, 0x4a4 +/* 8021AA18 00217978 38 03 71 EC */ addi r0, r3, lbl_803E71EC@l +/* 8021AA1C 0021797C 90 1E 00 00 */ stw r0, 0(r30) +/* 8021AA20 00217980 41 82 00 24 */ beq lbl_8021AA44 +/* 8021AA24 00217984 88 1E 04 F0 */ lbz r0, 0x4f0(r30) +/* 8021AA28 00217988 28 00 00 00 */ cmplwi r0, 0 +/* 8021AA2C 0021798C 41 82 00 10 */ beq lbl_8021AA3C +/* 8021AA30 00217990 38 7E 04 A4 */ addi r3, r30, 0x4a4 +/* 8021AA34 00217994 38 80 FF FF */ li r4, -1 +/* 8021AA38 00217998 4B EF C0 15 */ bl __dt__10CModelDataFv +lbl_8021AA3C: +/* 8021AA3C 0021799C 38 00 00 00 */ li r0, 0 +/* 8021AA40 002179A0 98 1E 04 F0 */ stb r0, 0x4f0(r30) +lbl_8021AA44: +/* 8021AA44 002179A4 34 1E 04 9C */ addic. r0, r30, 0x49c +/* 8021AA48 002179A8 41 82 00 10 */ beq lbl_8021AA58 +/* 8021AA4C 002179AC 80 7E 04 9C */ lwz r3, 0x49c(r30) +/* 8021AA50 002179B0 38 80 00 01 */ li r4, 1 +/* 8021AA54 002179B4 4B F8 CE 89 */ bl sub_801a78dc +lbl_8021AA58: +/* 8021AA58 002179B8 34 1E 04 90 */ addic. r0, r30, 0x490 +/* 8021AA5C 002179BC 41 82 00 30 */ beq lbl_8021AA8C +/* 8021AA60 002179C0 88 1E 04 90 */ lbz r0, 0x490(r30) +/* 8021AA64 002179C4 28 00 00 00 */ cmplwi r0, 0 +/* 8021AA68 002179C8 41 82 00 24 */ beq lbl_8021AA8C +/* 8021AA6C 002179CC 80 7E 04 94 */ lwz r3, 0x494(r30) +/* 8021AA70 002179D0 28 03 00 00 */ cmplwi r3, 0 +/* 8021AA74 002179D4 41 82 00 18 */ beq lbl_8021AA8C +/* 8021AA78 002179D8 81 83 00 00 */ lwz r12, 0(r3) +/* 8021AA7C 002179DC 38 80 00 01 */ li r4, 1 +/* 8021AA80 002179E0 81 8C 00 08 */ lwz r12, 8(r12) +/* 8021AA84 002179E4 7D 89 03 A6 */ mtctr r12 +/* 8021AA88 002179E8 4E 80 04 21 */ bctrl +lbl_8021AA8C: +/* 8021AA8C 002179EC 34 1E 04 88 */ addic. r0, r30, 0x488 +/* 8021AA90 002179F0 41 82 00 30 */ beq lbl_8021AAC0 +/* 8021AA94 002179F4 88 1E 04 88 */ lbz r0, 0x488(r30) +/* 8021AA98 002179F8 28 00 00 00 */ cmplwi r0, 0 +/* 8021AA9C 002179FC 41 82 00 24 */ beq lbl_8021AAC0 +/* 8021AAA0 00217A00 80 7E 04 8C */ lwz r3, 0x48c(r30) +/* 8021AAA4 00217A04 28 03 00 00 */ cmplwi r3, 0 +/* 8021AAA8 00217A08 41 82 00 18 */ beq lbl_8021AAC0 +/* 8021AAAC 00217A0C 81 83 00 00 */ lwz r12, 0(r3) +/* 8021AAB0 00217A10 38 80 00 01 */ li r4, 1 +/* 8021AAB4 00217A14 81 8C 00 08 */ lwz r12, 8(r12) +/* 8021AAB8 00217A18 7D 89 03 A6 */ mtctr r12 +/* 8021AABC 00217A1C 4E 80 04 21 */ bctrl +lbl_8021AAC0: +/* 8021AAC0 00217A20 34 1E 04 80 */ addic. r0, r30, 0x480 +/* 8021AAC4 00217A24 41 82 00 30 */ beq lbl_8021AAF4 +/* 8021AAC8 00217A28 88 1E 04 80 */ lbz r0, 0x480(r30) +/* 8021AACC 00217A2C 28 00 00 00 */ cmplwi r0, 0 +/* 8021AAD0 00217A30 41 82 00 24 */ beq lbl_8021AAF4 +/* 8021AAD4 00217A34 80 7E 04 84 */ lwz r3, 0x484(r30) +/* 8021AAD8 00217A38 28 03 00 00 */ cmplwi r3, 0 +/* 8021AADC 00217A3C 41 82 00 18 */ beq lbl_8021AAF4 +/* 8021AAE0 00217A40 81 83 00 00 */ lwz r12, 0(r3) +/* 8021AAE4 00217A44 38 80 00 01 */ li r4, 1 +/* 8021AAE8 00217A48 81 8C 00 08 */ lwz r12, 8(r12) +/* 8021AAEC 00217A4C 7D 89 03 A6 */ mtctr r12 +/* 8021AAF0 00217A50 4E 80 04 21 */ bctrl +lbl_8021AAF4: +/* 8021AAF4 00217A54 34 1E 04 78 */ addic. r0, r30, 0x478 +/* 8021AAF8 00217A58 41 82 00 30 */ beq lbl_8021AB28 +/* 8021AAFC 00217A5C 88 1E 04 78 */ lbz r0, 0x478(r30) +/* 8021AB00 00217A60 28 00 00 00 */ cmplwi r0, 0 +/* 8021AB04 00217A64 41 82 00 24 */ beq lbl_8021AB28 +/* 8021AB08 00217A68 80 7E 04 7C */ lwz r3, 0x47c(r30) +/* 8021AB0C 00217A6C 28 03 00 00 */ cmplwi r3, 0 +/* 8021AB10 00217A70 41 82 00 18 */ beq lbl_8021AB28 +/* 8021AB14 00217A74 81 83 00 00 */ lwz r12, 0(r3) +/* 8021AB18 00217A78 38 80 00 01 */ li r4, 1 +/* 8021AB1C 00217A7C 81 8C 00 08 */ lwz r12, 8(r12) +/* 8021AB20 00217A80 7D 89 03 A6 */ mtctr r12 +/* 8021AB24 00217A84 4E 80 04 21 */ bctrl +lbl_8021AB28: +/* 8021AB28 00217A88 34 1E 04 70 */ addic. r0, r30, 0x470 +/* 8021AB2C 00217A8C 41 82 00 30 */ beq lbl_8021AB5C +/* 8021AB30 00217A90 88 1E 04 70 */ lbz r0, 0x470(r30) +/* 8021AB34 00217A94 28 00 00 00 */ cmplwi r0, 0 +/* 8021AB38 00217A98 41 82 00 24 */ beq lbl_8021AB5C +/* 8021AB3C 00217A9C 80 7E 04 74 */ lwz r3, 0x474(r30) +/* 8021AB40 00217AA0 28 03 00 00 */ cmplwi r3, 0 +/* 8021AB44 00217AA4 41 82 00 18 */ beq lbl_8021AB5C +/* 8021AB48 00217AA8 81 83 00 00 */ lwz r12, 0(r3) +/* 8021AB4C 00217AAC 38 80 00 01 */ li r4, 1 +/* 8021AB50 00217AB0 81 8C 00 08 */ lwz r12, 8(r12) +/* 8021AB54 00217AB4 7D 89 03 A6 */ mtctr r12 +/* 8021AB58 00217AB8 4E 80 04 21 */ bctrl +lbl_8021AB5C: +/* 8021AB5C 00217ABC 34 1E 04 68 */ addic. r0, r30, 0x468 +/* 8021AB60 00217AC0 41 82 00 30 */ beq lbl_8021AB90 +/* 8021AB64 00217AC4 88 1E 04 68 */ lbz r0, 0x468(r30) +/* 8021AB68 00217AC8 28 00 00 00 */ cmplwi r0, 0 +/* 8021AB6C 00217ACC 41 82 00 24 */ beq lbl_8021AB90 +/* 8021AB70 00217AD0 80 7E 04 6C */ lwz r3, 0x46c(r30) +/* 8021AB74 00217AD4 28 03 00 00 */ cmplwi r3, 0 +/* 8021AB78 00217AD8 41 82 00 18 */ beq lbl_8021AB90 +/* 8021AB7C 00217ADC 81 83 00 00 */ lwz r12, 0(r3) +/* 8021AB80 00217AE0 38 80 00 01 */ li r4, 1 +/* 8021AB84 00217AE4 81 8C 00 08 */ lwz r12, 8(r12) +/* 8021AB88 00217AE8 7D 89 03 A6 */ mtctr r12 +/* 8021AB8C 00217AEC 4E 80 04 21 */ bctrl +lbl_8021AB90: +/* 8021AB90 00217AF0 34 1E 04 58 */ addic. r0, r30, 0x458 +/* 8021AB94 00217AF4 41 82 00 30 */ beq lbl_8021ABC4 +/* 8021AB98 00217AF8 88 1E 04 64 */ lbz r0, 0x464(r30) +/* 8021AB9C 00217AFC 28 00 00 00 */ cmplwi r0, 0 +/* 8021ABA0 00217B00 41 82 00 1C */ beq lbl_8021ABBC +/* 8021ABA4 00217B04 34 7E 04 58 */ addic. r3, r30, 0x458 +/* 8021ABA8 00217B08 41 82 00 14 */ beq lbl_8021ABBC +/* 8021ABAC 00217B0C 28 03 00 00 */ cmplwi r3, 0 +/* 8021ABB0 00217B10 41 82 00 0C */ beq lbl_8021ABBC +/* 8021ABB4 00217B14 38 80 00 00 */ li r4, 0 +/* 8021ABB8 00217B18 48 12 62 89 */ bl __dt__6CTokenFv +lbl_8021ABBC: +/* 8021ABBC 00217B1C 38 00 00 00 */ li r0, 0 +/* 8021ABC0 00217B20 98 1E 04 64 */ stb r0, 0x464(r30) +lbl_8021ABC4: +/* 8021ABC4 00217B24 34 1E 04 4C */ addic. r0, r30, 0x44c +/* 8021ABC8 00217B28 41 82 00 18 */ beq lbl_8021ABE0 +/* 8021ABCC 00217B2C 34 1E 04 4C */ addic. r0, r30, 0x44c +/* 8021ABD0 00217B30 41 82 00 10 */ beq lbl_8021ABE0 +/* 8021ABD4 00217B34 38 7E 04 4C */ addi r3, r30, 0x44c +/* 8021ABD8 00217B38 38 80 00 00 */ li r4, 0 +/* 8021ABDC 00217B3C 48 12 62 65 */ bl __dt__6CTokenFv +lbl_8021ABE0: +/* 8021ABE0 00217B40 34 1E 04 40 */ addic. r0, r30, 0x440 +/* 8021ABE4 00217B44 41 82 00 18 */ beq lbl_8021ABFC +/* 8021ABE8 00217B48 34 1E 04 40 */ addic. r0, r30, 0x440 +/* 8021ABEC 00217B4C 41 82 00 10 */ beq lbl_8021ABFC +/* 8021ABF0 00217B50 38 7E 04 40 */ addi r3, r30, 0x440 +/* 8021ABF4 00217B54 38 80 00 00 */ li r4, 0 +/* 8021ABF8 00217B58 48 12 62 49 */ bl __dt__6CTokenFv +lbl_8021ABFC: +/* 8021ABFC 00217B5C 34 1E 04 34 */ addic. r0, r30, 0x434 +/* 8021AC00 00217B60 41 82 00 18 */ beq lbl_8021AC18 +/* 8021AC04 00217B64 34 1E 04 34 */ addic. r0, r30, 0x434 +/* 8021AC08 00217B68 41 82 00 10 */ beq lbl_8021AC18 +/* 8021AC0C 00217B6C 38 7E 04 34 */ addi r3, r30, 0x434 +/* 8021AC10 00217B70 38 80 00 00 */ li r4, 0 +/* 8021AC14 00217B74 48 12 62 2D */ bl __dt__6CTokenFv +lbl_8021AC18: +/* 8021AC18 00217B78 34 1E 04 28 */ addic. r0, r30, 0x428 +/* 8021AC1C 00217B7C 41 82 00 18 */ beq lbl_8021AC34 +/* 8021AC20 00217B80 34 1E 04 28 */ addic. r0, r30, 0x428 +/* 8021AC24 00217B84 41 82 00 10 */ beq lbl_8021AC34 +/* 8021AC28 00217B88 38 7E 04 28 */ addi r3, r30, 0x428 +/* 8021AC2C 00217B8C 38 80 00 00 */ li r4, 0 +/* 8021AC30 00217B90 48 12 62 11 */ bl __dt__6CTokenFv +lbl_8021AC34: +/* 8021AC34 00217B94 34 1E 04 1C */ addic. r0, r30, 0x41c +/* 8021AC38 00217B98 41 82 00 18 */ beq lbl_8021AC50 +/* 8021AC3C 00217B9C 34 1E 04 1C */ addic. r0, r30, 0x41c +/* 8021AC40 00217BA0 41 82 00 10 */ beq lbl_8021AC50 +/* 8021AC44 00217BA4 38 7E 04 1C */ addi r3, r30, 0x41c +/* 8021AC48 00217BA8 38 80 00 00 */ li r4, 0 +/* 8021AC4C 00217BAC 48 12 61 F5 */ bl __dt__6CTokenFv +lbl_8021AC50: +/* 8021AC50 00217BB0 34 1E 04 10 */ addic. r0, r30, 0x410 +/* 8021AC54 00217BB4 41 82 00 18 */ beq lbl_8021AC6C +/* 8021AC58 00217BB8 34 1E 04 10 */ addic. r0, r30, 0x410 +/* 8021AC5C 00217BBC 41 82 00 10 */ beq lbl_8021AC6C +/* 8021AC60 00217BC0 38 7E 04 10 */ addi r3, r30, 0x410 +/* 8021AC64 00217BC4 38 80 00 00 */ li r4, 0 +/* 8021AC68 00217BC8 48 12 61 D9 */ bl __dt__6CTokenFv +lbl_8021AC6C: +/* 8021AC6C 00217BCC 34 1E 03 A4 */ addic. r0, r30, 0x3a4 +/* 8021AC70 00217BD0 41 82 00 60 */ beq lbl_8021ACD0 +/* 8021AC74 00217BD4 34 1E 03 C0 */ addic. r0, r30, 0x3c0 +/* 8021AC78 00217BD8 41 82 00 58 */ beq lbl_8021ACD0 +/* 8021AC7C 00217BDC 80 BE 03 C0 */ lwz r5, 0x3c0(r30) +/* 8021AC80 00217BE0 38 60 00 00 */ li r3, 0 +/* 8021AC84 00217BE4 2C 05 00 00 */ cmpwi r5, 0 +/* 8021AC88 00217BE8 40 81 00 40 */ ble lbl_8021ACC8 +/* 8021AC8C 00217BEC 2C 05 00 08 */ cmpwi r5, 8 +/* 8021AC90 00217BF0 38 85 FF F8 */ addi r4, r5, -8 +/* 8021AC94 00217BF4 40 81 00 20 */ ble lbl_8021ACB4 +/* 8021AC98 00217BF8 38 04 00 07 */ addi r0, r4, 7 +/* 8021AC9C 00217BFC 54 00 E8 FE */ srwi r0, r0, 3 +/* 8021ACA0 00217C00 7C 09 03 A6 */ mtctr r0 +/* 8021ACA4 00217C04 2C 04 00 00 */ cmpwi r4, 0 +/* 8021ACA8 00217C08 40 81 00 0C */ ble lbl_8021ACB4 +lbl_8021ACAC: +/* 8021ACAC 00217C0C 38 63 00 08 */ addi r3, r3, 8 +/* 8021ACB0 00217C10 42 00 FF FC */ bdnz lbl_8021ACAC +lbl_8021ACB4: +/* 8021ACB4 00217C14 7C 03 28 50 */ subf r0, r3, r5 +/* 8021ACB8 00217C18 7C 09 03 A6 */ mtctr r0 +/* 8021ACBC 00217C1C 7C 03 28 00 */ cmpw r3, r5 +/* 8021ACC0 00217C20 40 80 00 08 */ bge lbl_8021ACC8 +lbl_8021ACC4: +/* 8021ACC4 00217C24 42 00 00 00 */ bdnz lbl_8021ACC4 +lbl_8021ACC8: +/* 8021ACC8 00217C28 38 00 00 00 */ li r0, 0 +/* 8021ACCC 00217C2C 90 1E 03 C0 */ stw r0, 0x3c0(r30) +lbl_8021ACD0: +/* 8021ACD0 00217C30 34 1E 03 7C */ addic. r0, r30, 0x37c +/* 8021ACD4 00217C34 41 82 00 20 */ beq lbl_8021ACF4 +/* 8021ACD8 00217C38 34 1E 03 7C */ addic. r0, r30, 0x37c +/* 8021ACDC 00217C3C 41 82 00 18 */ beq lbl_8021ACF4 +/* 8021ACE0 00217C40 34 1E 03 7C */ addic. r0, r30, 0x37c +/* 8021ACE4 00217C44 41 82 00 10 */ beq lbl_8021ACF4 +/* 8021ACE8 00217C48 38 7E 03 7C */ addi r3, r30, 0x37c +/* 8021ACEC 00217C4C 38 80 00 00 */ li r4, 0 +/* 8021ACF0 00217C50 48 12 61 51 */ bl __dt__6CTokenFv +lbl_8021ACF4: +/* 8021ACF4 00217C54 7F C3 F3 78 */ mr r3, r30 +/* 8021ACF8 00217C58 38 80 00 00 */ li r4, 0 +/* 8021ACFC 00217C5C 4B F0 17 19 */ bl __dt__13CPhysicsActorFv +/* 8021AD00 00217C60 7F E0 07 35 */ extsh. r0, r31 +/* 8021AD04 00217C64 40 81 00 0C */ ble lbl_8021AD10 +/* 8021AD08 00217C68 7F C3 F3 78 */ mr r3, r30 +/* 8021AD0C 00217C6C 48 0F AC 25 */ bl Free__7CMemoryFPCv +lbl_8021AD10: +/* 8021AD10 00217C70 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8021AD14 00217C74 7F C3 F3 78 */ mr r3, r30 +/* 8021AD18 00217C78 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8021AD1C 00217C7C 83 C1 00 08 */ lwz r30, 8(r1) +/* 8021AD20 00217C80 7C 08 03 A6 */ mtlr r0 +/* 8021AD24 00217C84 38 21 00 10 */ addi r1, r1, 0x10 +/* 8021AD28 00217C88 4E 80 00 20 */ blr + +.global "__ct__16CScriptGunTurretF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q216CScriptGunTurret16ETurretComponentRC11CEntityInfoRC12CTransform4fRC10CModelDataRC6CAABoxRC11CHealthInfoRC20CDamageVulnerabilityRC16CActorParametersRC20CScriptGunTurretData" +"__ct__16CScriptGunTurretF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q216CScriptGunTurret16ETurretComponentRC11CEntityInfoRC12CTransform4fRC10CModelDataRC6CAABoxRC11CHealthInfoRC20CDamageVulnerabilityRC16CActorParametersRC20CScriptGunTurretData": +/* 8021AD2C 00217C8C 94 21 FE 50 */ stwu r1, -0x1b0(r1) +/* 8021AD30 00217C90 7C 08 02 A6 */ mflr r0 +/* 8021AD34 00217C94 90 01 01 B4 */ stw r0, 0x1b4(r1) +/* 8021AD38 00217C98 BE 41 01 78 */ stmw r18, 0x178(r1) +/* 8021AD3C 00217C9C 7C 7F 1B 78 */ mr r31, r3 +/* 8021AD40 00217CA0 83 01 01 B8 */ lwz r24, 0x1b8(r1) +/* 8021AD44 00217CA4 7C 93 23 78 */ mr r19, r4 +/* 8021AD48 00217CA8 83 21 01 BC */ lwz r25, 0x1bc(r1) +/* 8021AD4C 00217CAC 7C B4 2B 78 */ mr r20, r5 +/* 8021AD50 00217CB0 83 41 01 C0 */ lwz r26, 0x1c0(r1) +/* 8021AD54 00217CB4 7C DD 33 78 */ mr r29, r6 +/* 8021AD58 00217CB8 83 61 01 C4 */ lwz r27, 0x1c4(r1) +/* 8021AD5C 00217CBC 7C F5 3B 78 */ mr r21, r7 +/* 8021AD60 00217CC0 7D 1E 43 78 */ mr r30, r8 +/* 8021AD64 00217CC4 7D 36 4B 78 */ mr r22, r9 +/* 8021AD68 00217CC8 7D 57 53 78 */ mr r23, r10 +/* 8021AD6C 00217CCC 4B E0 07 C9 */ bl Identity__10CAxisAngleFv +/* 8021AD70 00217CD0 7C 72 1B 78 */ mr r18, r3 +/* 8021AD74 00217CD4 4B E0 07 C1 */ bl Identity__10CAxisAngleFv +/* 8021AD78 00217CD8 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8021AD7C 00217CDC C0 02 B3 6C */ lfs f0, lbl_805AD08C@sda21(r2) +/* 8021AD80 00217CE0 3B 84 66 A0 */ addi r28, r4, skZero3f@l +/* 8021AD84 00217CE4 2C 1D 00 00 */ cmpwi r29, 0 +/* 8021AD88 00217CE8 C0 5C 00 00 */ lfs f2, 0(r28) +/* 8021AD8C 00217CEC 38 A1 00 E8 */ addi r5, r1, 0xe8 +/* 8021AD90 00217CF0 C0 7C 00 04 */ lfs f3, 4(r28) +/* 8021AD94 00217CF4 39 4D A5 08 */ addi r10, r13, lbl_805A90C8@sda21 +/* 8021AD98 00217CF8 C0 9C 00 08 */ lfs f4, 8(r28) +/* 8021AD9C 00217CFC D0 41 00 E8 */ stfs f2, 0xe8(r1) +/* 8021ADA0 00217D00 D0 61 00 EC */ stfs f3, 0xec(r1) +/* 8021ADA4 00217D04 D0 81 00 F0 */ stfs f4, 0xf0(r1) +/* 8021ADA8 00217D08 C0 23 00 00 */ lfs f1, 0(r3) +/* 8021ADAC 00217D0C D0 21 00 F4 */ stfs f1, 0xf4(r1) +/* 8021ADB0 00217D10 C0 23 00 04 */ lfs f1, 4(r3) +/* 8021ADB4 00217D14 D0 21 00 F8 */ stfs f1, 0xf8(r1) +/* 8021ADB8 00217D18 C0 23 00 08 */ lfs f1, 8(r3) +/* 8021ADBC 00217D1C D0 21 00 FC */ stfs f1, 0xfc(r1) +/* 8021ADC0 00217D20 D0 41 01 00 */ stfs f2, 0x100(r1) +/* 8021ADC4 00217D24 D0 61 01 04 */ stfs f3, 0x104(r1) +/* 8021ADC8 00217D28 D0 81 01 08 */ stfs f4, 0x108(r1) +/* 8021ADCC 00217D2C C0 32 00 00 */ lfs f1, 0(r18) +/* 8021ADD0 00217D30 D0 21 01 0C */ stfs f1, 0x10c(r1) +/* 8021ADD4 00217D34 C0 32 00 04 */ lfs f1, 4(r18) +/* 8021ADD8 00217D38 D0 21 01 10 */ stfs f1, 0x110(r1) +/* 8021ADDC 00217D3C C0 32 00 08 */ lfs f1, 8(r18) +/* 8021ADE0 00217D40 D0 21 01 14 */ stfs f1, 0x114(r1) +/* 8021ADE4 00217D44 D0 01 01 18 */ stfs f0, 0x118(r1) +/* 8021ADE8 00217D48 40 82 00 08 */ bne lbl_8021ADF0 +/* 8021ADEC 00217D4C 39 4D A5 00 */ addi r10, r13, lbl_805A90C0@sda21 +lbl_8021ADF0: +/* 8021ADF0 00217D50 A0 13 00 00 */ lhz r0, 0(r19) +/* 8021ADF4 00217D54 7F E3 FB 78 */ mr r3, r31 +/* 8021ADF8 00217D58 C0 22 B3 70 */ lfs f1, lbl_805AD090@sda21(r2) +/* 8021ADFC 00217D5C 7E 86 A3 78 */ mr r6, r20 +/* 8021AE00 00217D60 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8021AE04 00217D64 7E A7 AB 78 */ mr r7, r21 +/* 8021AE08 00217D68 C0 42 B3 D0 */ lfs f2, lbl_805AD0F0@sda21(r2) +/* 8021AE0C 00217D6C 7F C8 F3 78 */ mr r8, r30 +/* 8021AE10 00217D70 92 E1 00 08 */ stw r23, 8(r1) +/* 8021AE14 00217D74 7E C9 B3 78 */ mr r9, r22 +/* 8021AE18 00217D78 38 81 00 18 */ addi r4, r1, 0x18 +/* 8021AE1C 00217D7C 90 A1 00 0C */ stw r5, 0xc(r1) +/* 8021AE20 00217D80 38 A0 00 01 */ li r5, 1 +/* 8021AE24 00217D84 93 41 00 10 */ stw r26, 0x10(r1) +/* 8021AE28 00217D88 4B F0 16 89 */ bl "__ct__13CPhysicsActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC6CAABoxRC10SMoverDataRC16CActorParametersff" +/* 8021AE2C 00217D8C 3C 60 80 3E */ lis r3, lbl_803E71EC@ha +/* 8021AE30 00217D90 C0 02 B3 5C */ lfs f0, lbl_805AD07C@sda21(r2) +/* 8021AE34 00217D94 38 03 71 EC */ addi r0, r3, lbl_803E71EC@l +/* 8021AE38 00217D98 7F 64 DB 78 */ mr r4, r27 +/* 8021AE3C 00217D9C 90 1F 00 00 */ stw r0, 0(r31) +/* 8021AE40 00217DA0 38 7F 02 D4 */ addi r3, r31, 0x2d4 +/* 8021AE44 00217DA4 93 BF 02 58 */ stw r29, 0x258(r31) +/* 8021AE48 00217DA8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8021AE4C 00217DAC B0 1F 02 5C */ sth r0, 0x25c(r31) +/* 8021AE50 00217DB0 D0 1F 02 60 */ stfs f0, 0x260(r31) +/* 8021AE54 00217DB4 C0 18 00 00 */ lfs f0, 0(r24) +/* 8021AE58 00217DB8 D0 1F 02 64 */ stfs f0, 0x264(r31) +/* 8021AE5C 00217DBC C0 18 00 04 */ lfs f0, 4(r24) +/* 8021AE60 00217DC0 D0 1F 02 68 */ stfs f0, 0x268(r31) +/* 8021AE64 00217DC4 80 B9 00 00 */ lwz r5, 0(r25) +/* 8021AE68 00217DC8 80 19 00 04 */ lwz r0, 4(r25) +/* 8021AE6C 00217DCC 90 BF 02 6C */ stw r5, 0x26c(r31) +/* 8021AE70 00217DD0 90 1F 02 70 */ stw r0, 0x270(r31) +/* 8021AE74 00217DD4 80 B9 00 08 */ lwz r5, 8(r25) +/* 8021AE78 00217DD8 80 19 00 0C */ lwz r0, 0xc(r25) +/* 8021AE7C 00217DDC 90 BF 02 74 */ stw r5, 0x274(r31) +/* 8021AE80 00217DE0 90 1F 02 78 */ stw r0, 0x278(r31) +/* 8021AE84 00217DE4 80 B9 00 10 */ lwz r5, 0x10(r25) +/* 8021AE88 00217DE8 80 19 00 14 */ lwz r0, 0x14(r25) +/* 8021AE8C 00217DEC 90 BF 02 7C */ stw r5, 0x27c(r31) +/* 8021AE90 00217DF0 90 1F 02 80 */ stw r0, 0x280(r31) +/* 8021AE94 00217DF4 80 B9 00 18 */ lwz r5, 0x18(r25) +/* 8021AE98 00217DF8 80 19 00 1C */ lwz r0, 0x1c(r25) +/* 8021AE9C 00217DFC 90 BF 02 84 */ stw r5, 0x284(r31) +/* 8021AEA0 00217E00 90 1F 02 88 */ stw r0, 0x288(r31) +/* 8021AEA4 00217E04 80 B9 00 20 */ lwz r5, 0x20(r25) +/* 8021AEA8 00217E08 80 19 00 24 */ lwz r0, 0x24(r25) +/* 8021AEAC 00217E0C 90 BF 02 8C */ stw r5, 0x28c(r31) +/* 8021AEB0 00217E10 90 1F 02 90 */ stw r0, 0x290(r31) +/* 8021AEB4 00217E14 80 B9 00 28 */ lwz r5, 0x28(r25) +/* 8021AEB8 00217E18 80 19 00 2C */ lwz r0, 0x2c(r25) +/* 8021AEBC 00217E1C 90 BF 02 94 */ stw r5, 0x294(r31) +/* 8021AEC0 00217E20 90 1F 02 98 */ stw r0, 0x298(r31) +/* 8021AEC4 00217E24 80 B9 00 30 */ lwz r5, 0x30(r25) +/* 8021AEC8 00217E28 80 19 00 34 */ lwz r0, 0x34(r25) +/* 8021AECC 00217E2C 90 BF 02 9C */ stw r5, 0x29c(r31) +/* 8021AED0 00217E30 90 1F 02 A0 */ stw r0, 0x2a0(r31) +/* 8021AED4 00217E34 80 19 00 38 */ lwz r0, 0x38(r25) +/* 8021AED8 00217E38 90 1F 02 A4 */ stw r0, 0x2a4(r31) +/* 8021AEDC 00217E3C 80 B9 00 3C */ lwz r5, 0x3c(r25) +/* 8021AEE0 00217E40 80 19 00 40 */ lwz r0, 0x40(r25) +/* 8021AEE4 00217E44 90 BF 02 A8 */ stw r5, 0x2a8(r31) +/* 8021AEE8 00217E48 90 1F 02 AC */ stw r0, 0x2ac(r31) +/* 8021AEEC 00217E4C 80 B9 00 44 */ lwz r5, 0x44(r25) +/* 8021AEF0 00217E50 80 19 00 48 */ lwz r0, 0x48(r25) +/* 8021AEF4 00217E54 90 BF 02 B0 */ stw r5, 0x2b0(r31) +/* 8021AEF8 00217E58 90 1F 02 B4 */ stw r0, 0x2b4(r31) +/* 8021AEFC 00217E5C 80 B9 00 4C */ lwz r5, 0x4c(r25) +/* 8021AF00 00217E60 80 19 00 50 */ lwz r0, 0x50(r25) +/* 8021AF04 00217E64 90 BF 02 B8 */ stw r5, 0x2b8(r31) +/* 8021AF08 00217E68 90 1F 02 BC */ stw r0, 0x2bc(r31) +/* 8021AF0C 00217E6C 80 B9 00 54 */ lwz r5, 0x54(r25) +/* 8021AF10 00217E70 80 19 00 58 */ lwz r0, 0x58(r25) +/* 8021AF14 00217E74 90 BF 02 C0 */ stw r5, 0x2c0(r31) +/* 8021AF18 00217E78 90 1F 02 C4 */ stw r0, 0x2c4(r31) +/* 8021AF1C 00217E7C 80 19 00 5C */ lwz r0, 0x5c(r25) +/* 8021AF20 00217E80 90 1F 02 C8 */ stw r0, 0x2c8(r31) +/* 8021AF24 00217E84 80 19 00 60 */ lwz r0, 0x60(r25) +/* 8021AF28 00217E88 90 1F 02 CC */ stw r0, 0x2cc(r31) +/* 8021AF2C 00217E8C 80 19 00 64 */ lwz r0, 0x64(r25) +/* 8021AF30 00217E90 90 1F 02 D0 */ stw r0, 0x2d0(r31) +/* 8021AF34 00217E94 48 00 08 5D */ bl __ct__20CScriptGunTurretDataFRC20CScriptGunTurretData +/* 8021AF38 00217E98 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8021AF3C 00217E9C 38 7F 03 7C */ addi r3, r31, 0x37c +/* 8021AF40 00217EA0 38 BB 00 44 */ addi r5, r27, 0x44 +/* 8021AF44 00217EA4 B0 1F 03 78 */ sth r0, 0x378(r31) +/* 8021AF48 00217EA8 80 9B 00 40 */ lwz r4, 0x40(r27) +/* 8021AF4C 00217EAC 48 00 11 5D */ bl __ct__15CProjectileInfoFUiRC11CDamageInfo +/* 8021AF50 00217EB0 3C 80 80 3E */ lis r4, lbl_803E71D0@ha +/* 8021AF54 00217EB4 38 7F 03 A4 */ addi r3, r31, 0x3a4 +/* 8021AF58 00217EB8 38 84 71 D0 */ addi r4, r4, lbl_803E71D0@l +/* 8021AF5C 00217EBC 38 A0 00 01 */ li r5, 1 +/* 8021AF60 00217EC0 4B F9 25 A5 */ bl __ct__10CBurstFireFPPC6SBursti +/* 8021AF64 00217EC4 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8021AF68 00217EC8 3C 80 50 41 */ lis r4, 0x50415254@ha +/* 8021AF6C 00217ECC 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 8021AF70 00217ED0 38 61 00 AC */ addi r3, r1, 0xac +/* 8021AF74 00217ED4 C0 05 00 00 */ lfs f0, 0(r5) +/* 8021AF78 00217ED8 38 04 52 54 */ addi r0, r4, 0x50415254@l +/* 8021AF7C 00217EDC 38 A1 00 B4 */ addi r5, r1, 0xb4 +/* 8021AF80 00217EE0 D0 1F 04 04 */ stfs f0, 0x404(r31) +/* 8021AF84 00217EE4 C0 1C 00 04 */ lfs f0, 4(r28) +/* 8021AF88 00217EE8 D0 1F 04 08 */ stfs f0, 0x408(r31) +/* 8021AF8C 00217EEC C0 1C 00 08 */ lfs f0, 8(r28) +/* 8021AF90 00217EF0 D0 1F 04 0C */ stfs f0, 0x40c(r31) +/* 8021AF94 00217EF4 80 DB 00 60 */ lwz r6, 0x60(r27) +/* 8021AF98 00217EF8 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8021AF9C 00217EFC 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 8021AFA0 00217F00 90 C1 00 B8 */ stw r6, 0xb8(r1) +/* 8021AFA4 00217F04 81 84 00 00 */ lwz r12, 0(r4) +/* 8021AFA8 00217F08 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8021AFAC 00217F0C 7D 89 03 A6 */ mtctr r12 +/* 8021AFB0 00217F10 4E 80 04 21 */ bctrl +/* 8021AFB4 00217F14 3A 5F 04 10 */ addi r18, r31, 0x410 +/* 8021AFB8 00217F18 38 81 00 AC */ addi r4, r1, 0xac +/* 8021AFBC 00217F1C 7E 43 93 78 */ mr r3, r18 +/* 8021AFC0 00217F20 48 12 5E E9 */ bl __ct__6CTokenFRC6CToken +/* 8021AFC4 00217F24 7E 43 93 78 */ mr r3, r18 +/* 8021AFC8 00217F28 48 12 5E 45 */ bl GetObj__6CTokenFv +/* 8021AFCC 00217F2C 80 03 00 04 */ lwz r0, 4(r3) +/* 8021AFD0 00217F30 38 61 00 AC */ addi r3, r1, 0xac +/* 8021AFD4 00217F34 38 80 FF FF */ li r4, -1 +/* 8021AFD8 00217F38 90 12 00 08 */ stw r0, 8(r18) +/* 8021AFDC 00217F3C 48 12 5E 65 */ bl __dt__6CTokenFv +/* 8021AFE0 00217F40 80 DB 00 64 */ lwz r6, 0x64(r27) +/* 8021AFE4 00217F44 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 8021AFE8 00217F48 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 8021AFEC 00217F4C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8021AFF0 00217F50 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 8021AFF4 00217F54 38 61 00 9C */ addi r3, r1, 0x9c +/* 8021AFF8 00217F58 38 A1 00 A4 */ addi r5, r1, 0xa4 +/* 8021AFFC 00217F5C 90 C1 00 A8 */ stw r6, 0xa8(r1) +/* 8021B000 00217F60 81 84 00 00 */ lwz r12, 0(r4) +/* 8021B004 00217F64 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8021B008 00217F68 7D 89 03 A6 */ mtctr r12 +/* 8021B00C 00217F6C 4E 80 04 21 */ bctrl +/* 8021B010 00217F70 3A 5F 04 1C */ addi r18, r31, 0x41c +/* 8021B014 00217F74 38 81 00 9C */ addi r4, r1, 0x9c +/* 8021B018 00217F78 7E 43 93 78 */ mr r3, r18 +/* 8021B01C 00217F7C 48 12 5E 8D */ bl __ct__6CTokenFRC6CToken +/* 8021B020 00217F80 7E 43 93 78 */ mr r3, r18 +/* 8021B024 00217F84 48 12 5D E9 */ bl GetObj__6CTokenFv +/* 8021B028 00217F88 80 03 00 04 */ lwz r0, 4(r3) +/* 8021B02C 00217F8C 38 61 00 9C */ addi r3, r1, 0x9c +/* 8021B030 00217F90 38 80 FF FF */ li r4, -1 +/* 8021B034 00217F94 90 12 00 08 */ stw r0, 8(r18) +/* 8021B038 00217F98 48 12 5E 09 */ bl __dt__6CTokenFv +/* 8021B03C 00217F9C 80 DB 00 68 */ lwz r6, 0x68(r27) +/* 8021B040 00217FA0 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 8021B044 00217FA4 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 8021B048 00217FA8 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8021B04C 00217FAC 90 01 00 94 */ stw r0, 0x94(r1) +/* 8021B050 00217FB0 38 61 00 8C */ addi r3, r1, 0x8c +/* 8021B054 00217FB4 38 A1 00 94 */ addi r5, r1, 0x94 +/* 8021B058 00217FB8 90 C1 00 98 */ stw r6, 0x98(r1) +/* 8021B05C 00217FBC 81 84 00 00 */ lwz r12, 0(r4) +/* 8021B060 00217FC0 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8021B064 00217FC4 7D 89 03 A6 */ mtctr r12 +/* 8021B068 00217FC8 4E 80 04 21 */ bctrl +/* 8021B06C 00217FCC 3A 5F 04 28 */ addi r18, r31, 0x428 +/* 8021B070 00217FD0 38 81 00 8C */ addi r4, r1, 0x8c +/* 8021B074 00217FD4 7E 43 93 78 */ mr r3, r18 +/* 8021B078 00217FD8 48 12 5E 31 */ bl __ct__6CTokenFRC6CToken +/* 8021B07C 00217FDC 7E 43 93 78 */ mr r3, r18 +/* 8021B080 00217FE0 48 12 5D 8D */ bl GetObj__6CTokenFv +/* 8021B084 00217FE4 80 03 00 04 */ lwz r0, 4(r3) +/* 8021B088 00217FE8 38 61 00 8C */ addi r3, r1, 0x8c +/* 8021B08C 00217FEC 38 80 FF FF */ li r4, -1 +/* 8021B090 00217FF0 90 12 00 08 */ stw r0, 8(r18) +/* 8021B094 00217FF4 48 12 5D AD */ bl __dt__6CTokenFv +/* 8021B098 00217FF8 80 DB 00 6C */ lwz r6, 0x6c(r27) +/* 8021B09C 00217FFC 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 8021B0A0 00218000 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 8021B0A4 00218004 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8021B0A8 00218008 90 01 00 84 */ stw r0, 0x84(r1) +/* 8021B0AC 0021800C 38 61 00 7C */ addi r3, r1, 0x7c +/* 8021B0B0 00218010 38 A1 00 84 */ addi r5, r1, 0x84 +/* 8021B0B4 00218014 90 C1 00 88 */ stw r6, 0x88(r1) +/* 8021B0B8 00218018 81 84 00 00 */ lwz r12, 0(r4) +/* 8021B0BC 0021801C 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8021B0C0 00218020 7D 89 03 A6 */ mtctr r12 +/* 8021B0C4 00218024 4E 80 04 21 */ bctrl +/* 8021B0C8 00218028 3A 5F 04 34 */ addi r18, r31, 0x434 +/* 8021B0CC 0021802C 38 81 00 7C */ addi r4, r1, 0x7c +/* 8021B0D0 00218030 7E 43 93 78 */ mr r3, r18 +/* 8021B0D4 00218034 48 12 5D D5 */ bl __ct__6CTokenFRC6CToken +/* 8021B0D8 00218038 7E 43 93 78 */ mr r3, r18 +/* 8021B0DC 0021803C 48 12 5D 31 */ bl GetObj__6CTokenFv +/* 8021B0E0 00218040 80 03 00 04 */ lwz r0, 4(r3) +/* 8021B0E4 00218044 38 61 00 7C */ addi r3, r1, 0x7c +/* 8021B0E8 00218048 38 80 FF FF */ li r4, -1 +/* 8021B0EC 0021804C 90 12 00 08 */ stw r0, 8(r18) +/* 8021B0F0 00218050 48 12 5D 51 */ bl __dt__6CTokenFv +/* 8021B0F4 00218054 80 DB 00 70 */ lwz r6, 0x70(r27) +/* 8021B0F8 00218058 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 8021B0FC 0021805C 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 8021B100 00218060 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8021B104 00218064 90 01 00 74 */ stw r0, 0x74(r1) +/* 8021B108 00218068 38 61 00 6C */ addi r3, r1, 0x6c +/* 8021B10C 0021806C 38 A1 00 74 */ addi r5, r1, 0x74 +/* 8021B110 00218070 90 C1 00 78 */ stw r6, 0x78(r1) +/* 8021B114 00218074 81 84 00 00 */ lwz r12, 0(r4) +/* 8021B118 00218078 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8021B11C 0021807C 7D 89 03 A6 */ mtctr r12 +/* 8021B120 00218080 4E 80 04 21 */ bctrl +/* 8021B124 00218084 3A 5F 04 40 */ addi r18, r31, 0x440 +/* 8021B128 00218088 38 81 00 6C */ addi r4, r1, 0x6c +/* 8021B12C 0021808C 7E 43 93 78 */ mr r3, r18 +/* 8021B130 00218090 48 12 5D 79 */ bl __ct__6CTokenFRC6CToken +/* 8021B134 00218094 7E 43 93 78 */ mr r3, r18 +/* 8021B138 00218098 48 12 5C D5 */ bl GetObj__6CTokenFv +/* 8021B13C 0021809C 80 03 00 04 */ lwz r0, 4(r3) +/* 8021B140 002180A0 38 61 00 6C */ addi r3, r1, 0x6c +/* 8021B144 002180A4 38 80 FF FF */ li r4, -1 +/* 8021B148 002180A8 90 12 00 08 */ stw r0, 8(r18) +/* 8021B14C 002180AC 48 12 5C F5 */ bl __dt__6CTokenFv +/* 8021B150 002180B0 80 DB 00 74 */ lwz r6, 0x74(r27) +/* 8021B154 002180B4 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 8021B158 002180B8 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 8021B15C 002180BC 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8021B160 002180C0 90 01 00 64 */ stw r0, 0x64(r1) +/* 8021B164 002180C4 38 61 00 5C */ addi r3, r1, 0x5c +/* 8021B168 002180C8 38 A1 00 64 */ addi r5, r1, 0x64 +/* 8021B16C 002180CC 90 C1 00 68 */ stw r6, 0x68(r1) +/* 8021B170 002180D0 81 84 00 00 */ lwz r12, 0(r4) +/* 8021B174 002180D4 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8021B178 002180D8 7D 89 03 A6 */ mtctr r12 +/* 8021B17C 002180DC 4E 80 04 21 */ bctrl +/* 8021B180 002180E0 3A 5F 04 4C */ addi r18, r31, 0x44c +/* 8021B184 002180E4 38 81 00 5C */ addi r4, r1, 0x5c +/* 8021B188 002180E8 7E 43 93 78 */ mr r3, r18 +/* 8021B18C 002180EC 48 12 5D 1D */ bl __ct__6CTokenFRC6CToken +/* 8021B190 002180F0 7E 43 93 78 */ mr r3, r18 +/* 8021B194 002180F4 48 12 5C 79 */ bl GetObj__6CTokenFv +/* 8021B198 002180F8 80 03 00 04 */ lwz r0, 4(r3) +/* 8021B19C 002180FC 38 61 00 5C */ addi r3, r1, 0x5c +/* 8021B1A0 00218100 38 80 FF FF */ li r4, -1 +/* 8021B1A4 00218104 90 12 00 08 */ stw r0, 8(r18) +/* 8021B1A8 00218108 48 12 5C 99 */ bl __dt__6CTokenFv +/* 8021B1AC 0021810C 80 9B 00 78 */ lwz r4, 0x78(r27) +/* 8021B1B0 00218110 3A 60 00 00 */ li r19, 0 +/* 8021B1B4 00218114 3A 80 00 00 */ li r20, 0 +/* 8021B1B8 00218118 3A A0 00 00 */ li r21, 0 +/* 8021B1BC 0021811C 3C 04 00 01 */ addis r0, r4, 1 +/* 8021B1C0 00218120 3A C0 00 00 */ li r22, 0 +/* 8021B1C4 00218124 28 00 FF FF */ cmplwi r0, 0xffff +/* 8021B1C8 00218128 41 82 00 90 */ beq lbl_8021B258 +/* 8021B1CC 0021812C 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 8021B1D0 00218130 90 81 00 58 */ stw r4, 0x58(r1) +/* 8021B1D4 00218134 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 8021B1D8 00218138 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8021B1DC 0021813C 90 01 00 54 */ stw r0, 0x54(r1) +/* 8021B1E0 00218140 38 61 00 4C */ addi r3, r1, 0x4c +/* 8021B1E4 00218144 38 A1 00 54 */ addi r5, r1, 0x54 +/* 8021B1E8 00218148 81 84 00 00 */ lwz r12, 0(r4) +/* 8021B1EC 0021814C 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8021B1F0 00218150 7D 89 03 A6 */ mtctr r12 +/* 8021B1F4 00218154 4E 80 04 21 */ bctrl +/* 8021B1F8 00218158 3A 41 00 DC */ addi r18, r1, 0xdc +/* 8021B1FC 0021815C 38 81 00 4C */ addi r4, r1, 0x4c +/* 8021B200 00218160 7E 43 93 78 */ mr r3, r18 +/* 8021B204 00218164 3A 60 00 01 */ li r19, 1 +/* 8021B208 00218168 48 12 5C A1 */ bl __ct__6CTokenFRC6CToken +/* 8021B20C 0021816C 7E 43 93 78 */ mr r3, r18 +/* 8021B210 00218170 48 12 5B FD */ bl GetObj__6CTokenFv +/* 8021B214 00218174 80 63 00 04 */ lwz r3, 4(r3) +/* 8021B218 00218178 38 00 00 01 */ li r0, 1 +/* 8021B21C 0021817C 36 41 00 CC */ addic. r18, r1, 0xcc +/* 8021B220 00218180 3A 80 00 01 */ li r20, 1 +/* 8021B224 00218184 90 61 00 E4 */ stw r3, 0xe4(r1) +/* 8021B228 00218188 98 01 00 D8 */ stb r0, 0xd8(r1) +/* 8021B22C 0021818C 41 82 00 20 */ beq lbl_8021B24C +/* 8021B230 00218190 7E 43 93 78 */ mr r3, r18 +/* 8021B234 00218194 38 81 00 DC */ addi r4, r1, 0xdc +/* 8021B238 00218198 48 12 5C 71 */ bl __ct__6CTokenFRC6CToken +/* 8021B23C 0021819C 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 8021B240 002181A0 7E 43 93 78 */ mr r3, r18 +/* 8021B244 002181A4 90 12 00 08 */ stw r0, 8(r18) +/* 8021B248 002181A8 48 12 5B 3D */ bl Lock__6CTokenFv +lbl_8021B24C: +/* 8021B24C 002181AC 3A 41 00 CC */ addi r18, r1, 0xcc +/* 8021B250 002181B0 3A A0 00 01 */ li r21, 1 +/* 8021B254 002181B4 48 00 00 14 */ b lbl_8021B268 +lbl_8021B258: +/* 8021B258 002181B8 38 00 00 00 */ li r0, 0 +/* 8021B25C 002181BC 3A 41 00 BC */ addi r18, r1, 0xbc +/* 8021B260 002181C0 98 01 00 C8 */ stb r0, 0xc8(r1) +/* 8021B264 002181C4 3A C0 00 01 */ li r22, 1 +lbl_8021B268: +/* 8021B268 002181C8 88 12 00 0C */ lbz r0, 0xc(r18) +/* 8021B26C 002181CC 98 1F 04 64 */ stb r0, 0x464(r31) +/* 8021B270 002181D0 88 12 00 0C */ lbz r0, 0xc(r18) +/* 8021B274 002181D4 28 00 00 00 */ cmplwi r0, 0 +/* 8021B278 002181D8 41 82 00 28 */ beq lbl_8021B2A0 +/* 8021B27C 002181DC 36 FF 04 58 */ addic. r23, r31, 0x458 +/* 8021B280 002181E0 41 82 00 20 */ beq lbl_8021B2A0 +/* 8021B284 002181E4 7E E3 BB 78 */ mr r3, r23 +/* 8021B288 002181E8 7E 44 93 78 */ mr r4, r18 +/* 8021B28C 002181EC 48 12 5C 1D */ bl __ct__6CTokenFRC6CToken +/* 8021B290 002181F0 80 12 00 08 */ lwz r0, 8(r18) +/* 8021B294 002181F4 7E E3 BB 78 */ mr r3, r23 +/* 8021B298 002181F8 90 17 00 08 */ stw r0, 8(r23) +/* 8021B29C 002181FC 48 12 5A E9 */ bl Lock__6CTokenFv +lbl_8021B2A0: +/* 8021B2A0 00218200 7E C0 07 75 */ extsb. r0, r22 +/* 8021B2A4 00218204 41 82 00 30 */ beq lbl_8021B2D4 +/* 8021B2A8 00218208 88 01 00 C8 */ lbz r0, 0xc8(r1) +/* 8021B2AC 0021820C 28 00 00 00 */ cmplwi r0, 0 +/* 8021B2B0 00218210 41 82 00 1C */ beq lbl_8021B2CC +/* 8021B2B4 00218214 34 61 00 BC */ addic. r3, r1, 0xbc +/* 8021B2B8 00218218 41 82 00 14 */ beq lbl_8021B2CC +/* 8021B2BC 0021821C 28 03 00 00 */ cmplwi r3, 0 +/* 8021B2C0 00218220 41 82 00 0C */ beq lbl_8021B2CC +/* 8021B2C4 00218224 38 80 00 00 */ li r4, 0 +/* 8021B2C8 00218228 48 12 5B 79 */ bl __dt__6CTokenFv +lbl_8021B2CC: +/* 8021B2CC 0021822C 38 00 00 00 */ li r0, 0 +/* 8021B2D0 00218230 98 01 00 C8 */ stb r0, 0xc8(r1) +lbl_8021B2D4: +/* 8021B2D4 00218234 7E A0 07 75 */ extsb. r0, r21 +/* 8021B2D8 00218238 41 82 00 30 */ beq lbl_8021B308 +/* 8021B2DC 0021823C 88 01 00 D8 */ lbz r0, 0xd8(r1) +/* 8021B2E0 00218240 28 00 00 00 */ cmplwi r0, 0 +/* 8021B2E4 00218244 41 82 00 1C */ beq lbl_8021B300 +/* 8021B2E8 00218248 34 61 00 CC */ addic. r3, r1, 0xcc +/* 8021B2EC 0021824C 41 82 00 14 */ beq lbl_8021B300 +/* 8021B2F0 00218250 28 03 00 00 */ cmplwi r3, 0 +/* 8021B2F4 00218254 41 82 00 0C */ beq lbl_8021B300 +/* 8021B2F8 00218258 38 80 00 00 */ li r4, 0 +/* 8021B2FC 0021825C 48 12 5B 45 */ bl __dt__6CTokenFv +lbl_8021B300: +/* 8021B300 00218260 38 00 00 00 */ li r0, 0 +/* 8021B304 00218264 98 01 00 D8 */ stb r0, 0xd8(r1) +lbl_8021B308: +/* 8021B308 00218268 7E 80 07 75 */ extsb. r0, r20 +/* 8021B30C 0021826C 41 82 00 10 */ beq lbl_8021B31C +/* 8021B310 00218270 38 61 00 DC */ addi r3, r1, 0xdc +/* 8021B314 00218274 38 80 00 00 */ li r4, 0 +/* 8021B318 00218278 48 12 5B 29 */ bl __dt__6CTokenFv +lbl_8021B31C: +/* 8021B31C 0021827C 7E 60 07 75 */ extsb. r0, r19 +/* 8021B320 00218280 41 82 00 10 */ beq lbl_8021B330 +/* 8021B324 00218284 38 61 00 4C */ addi r3, r1, 0x4c +/* 8021B328 00218288 38 80 FF FF */ li r4, -1 +/* 8021B32C 0021828C 48 12 5B 15 */ bl __dt__6CTokenFv +lbl_8021B330: +/* 8021B330 00218290 3C 60 80 3D */ lis r3, lbl_803D2FF0@ha +/* 8021B334 00218294 3A 60 00 00 */ li r19, 0 +/* 8021B338 00218298 38 83 2F F0 */ addi r4, r3, lbl_803D2FF0@l +/* 8021B33C 0021829C 38 60 03 40 */ li r3, 0x340 +/* 8021B340 002182A0 38 84 00 31 */ addi r4, r4, 0x31 +/* 8021B344 002182A4 38 A0 00 00 */ li r5, 0 +/* 8021B348 002182A8 48 0F A5 25 */ bl __nw__FUlPCcPCc +/* 8021B34C 002182AC 7C 72 1B 79 */ or. r18, r3, r3 +/* 8021B350 002182B0 41 82 00 2C */ beq lbl_8021B37C +/* 8021B354 002182B4 38 61 00 44 */ addi r3, r1, 0x44 +/* 8021B358 002182B8 38 9F 04 10 */ addi r4, r31, 0x410 +/* 8021B35C 002182BC 48 12 5B 4D */ bl __ct__6CTokenFRC6CToken +/* 8021B360 002182C0 7E 43 93 78 */ mr r3, r18 +/* 8021B364 002182C4 38 81 00 44 */ addi r4, r1, 0x44 +/* 8021B368 002182C8 3A 60 00 01 */ li r19, 1 +/* 8021B36C 002182CC 38 A0 00 00 */ li r5, 0 +/* 8021B370 002182D0 38 C0 00 01 */ li r6, 1 +/* 8021B374 002182D4 48 10 40 6D */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 8021B378 002182D8 7C 72 1B 78 */ mr r18, r3 +lbl_8021B37C: +/* 8021B37C 002182DC 7C 72 00 D0 */ neg r3, r18 +/* 8021B380 002182E0 7E 60 07 75 */ extsb. r0, r19 +/* 8021B384 002182E4 7C 60 93 78 */ or r0, r3, r18 +/* 8021B388 002182E8 54 00 0F FE */ srwi r0, r0, 0x1f +/* 8021B38C 002182EC 98 1F 04 68 */ stb r0, 0x468(r31) +/* 8021B390 002182F0 92 5F 04 6C */ stw r18, 0x46c(r31) +/* 8021B394 002182F4 41 82 00 10 */ beq lbl_8021B3A4 +/* 8021B398 002182F8 38 61 00 44 */ addi r3, r1, 0x44 +/* 8021B39C 002182FC 38 80 00 00 */ li r4, 0 +/* 8021B3A0 00218300 48 12 5A A1 */ bl __dt__6CTokenFv +lbl_8021B3A4: +/* 8021B3A4 00218304 3C 60 80 3D */ lis r3, lbl_803D2FF0@ha +/* 8021B3A8 00218308 3A 60 00 00 */ li r19, 0 +/* 8021B3AC 0021830C 38 83 2F F0 */ addi r4, r3, lbl_803D2FF0@l +/* 8021B3B0 00218310 38 60 03 40 */ li r3, 0x340 +/* 8021B3B4 00218314 38 84 00 31 */ addi r4, r4, 0x31 +/* 8021B3B8 00218318 38 A0 00 00 */ li r5, 0 +/* 8021B3BC 0021831C 48 0F A4 B1 */ bl __nw__FUlPCcPCc +/* 8021B3C0 00218320 7C 72 1B 79 */ or. r18, r3, r3 +/* 8021B3C4 00218324 41 82 00 2C */ beq lbl_8021B3F0 +/* 8021B3C8 00218328 38 61 00 3C */ addi r3, r1, 0x3c +/* 8021B3CC 0021832C 38 9F 04 1C */ addi r4, r31, 0x41c +/* 8021B3D0 00218330 48 12 5A D9 */ bl __ct__6CTokenFRC6CToken +/* 8021B3D4 00218334 7E 43 93 78 */ mr r3, r18 +/* 8021B3D8 00218338 38 81 00 3C */ addi r4, r1, 0x3c +/* 8021B3DC 0021833C 3A 60 00 01 */ li r19, 1 +/* 8021B3E0 00218340 38 A0 00 00 */ li r5, 0 +/* 8021B3E4 00218344 38 C0 00 01 */ li r6, 1 +/* 8021B3E8 00218348 48 10 3F F9 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 8021B3EC 0021834C 7C 72 1B 78 */ mr r18, r3 +lbl_8021B3F0: +/* 8021B3F0 00218350 7C 72 00 D0 */ neg r3, r18 +/* 8021B3F4 00218354 7E 60 07 75 */ extsb. r0, r19 +/* 8021B3F8 00218358 7C 60 93 78 */ or r0, r3, r18 +/* 8021B3FC 0021835C 54 00 0F FE */ srwi r0, r0, 0x1f +/* 8021B400 00218360 98 1F 04 70 */ stb r0, 0x470(r31) +/* 8021B404 00218364 92 5F 04 74 */ stw r18, 0x474(r31) +/* 8021B408 00218368 41 82 00 10 */ beq lbl_8021B418 +/* 8021B40C 0021836C 38 61 00 3C */ addi r3, r1, 0x3c +/* 8021B410 00218370 38 80 00 00 */ li r4, 0 +/* 8021B414 00218374 48 12 5A 2D */ bl __dt__6CTokenFv +lbl_8021B418: +/* 8021B418 00218378 3C 60 80 3D */ lis r3, lbl_803D2FF0@ha +/* 8021B41C 0021837C 3A 60 00 00 */ li r19, 0 +/* 8021B420 00218380 38 83 2F F0 */ addi r4, r3, lbl_803D2FF0@l +/* 8021B424 00218384 38 60 03 40 */ li r3, 0x340 +/* 8021B428 00218388 38 84 00 31 */ addi r4, r4, 0x31 +/* 8021B42C 0021838C 38 A0 00 00 */ li r5, 0 +/* 8021B430 00218390 48 0F A4 3D */ bl __nw__FUlPCcPCc +/* 8021B434 00218394 7C 72 1B 79 */ or. r18, r3, r3 +/* 8021B438 00218398 41 82 00 2C */ beq lbl_8021B464 +/* 8021B43C 0021839C 38 61 00 34 */ addi r3, r1, 0x34 +/* 8021B440 002183A0 38 9F 04 28 */ addi r4, r31, 0x428 +/* 8021B444 002183A4 48 12 5A 65 */ bl __ct__6CTokenFRC6CToken +/* 8021B448 002183A8 7E 43 93 78 */ mr r3, r18 +/* 8021B44C 002183AC 38 81 00 34 */ addi r4, r1, 0x34 +/* 8021B450 002183B0 3A 60 00 01 */ li r19, 1 +/* 8021B454 002183B4 38 A0 00 00 */ li r5, 0 +/* 8021B458 002183B8 38 C0 00 01 */ li r6, 1 +/* 8021B45C 002183BC 48 10 3F 85 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 8021B460 002183C0 7C 72 1B 78 */ mr r18, r3 +lbl_8021B464: +/* 8021B464 002183C4 7C 72 00 D0 */ neg r3, r18 +/* 8021B468 002183C8 7E 60 07 75 */ extsb. r0, r19 +/* 8021B46C 002183CC 7C 60 93 78 */ or r0, r3, r18 +/* 8021B470 002183D0 54 00 0F FE */ srwi r0, r0, 0x1f +/* 8021B474 002183D4 98 1F 04 78 */ stb r0, 0x478(r31) +/* 8021B478 002183D8 92 5F 04 7C */ stw r18, 0x47c(r31) +/* 8021B47C 002183DC 41 82 00 10 */ beq lbl_8021B48C +/* 8021B480 002183E0 38 61 00 34 */ addi r3, r1, 0x34 +/* 8021B484 002183E4 38 80 00 00 */ li r4, 0 +/* 8021B488 002183E8 48 12 59 B9 */ bl __dt__6CTokenFv +lbl_8021B48C: +/* 8021B48C 002183EC 3C 60 80 3D */ lis r3, lbl_803D2FF0@ha +/* 8021B490 002183F0 3A 60 00 00 */ li r19, 0 +/* 8021B494 002183F4 38 83 2F F0 */ addi r4, r3, lbl_803D2FF0@l +/* 8021B498 002183F8 38 60 03 40 */ li r3, 0x340 +/* 8021B49C 002183FC 38 84 00 31 */ addi r4, r4, 0x31 +/* 8021B4A0 00218400 38 A0 00 00 */ li r5, 0 +/* 8021B4A4 00218404 48 0F A3 C9 */ bl __nw__FUlPCcPCc +/* 8021B4A8 00218408 7C 72 1B 79 */ or. r18, r3, r3 +/* 8021B4AC 0021840C 41 82 00 2C */ beq lbl_8021B4D8 +/* 8021B4B0 00218410 38 61 00 2C */ addi r3, r1, 0x2c +/* 8021B4B4 00218414 38 9F 04 34 */ addi r4, r31, 0x434 +/* 8021B4B8 00218418 48 12 59 F1 */ bl __ct__6CTokenFRC6CToken +/* 8021B4BC 0021841C 7E 43 93 78 */ mr r3, r18 +/* 8021B4C0 00218420 38 81 00 2C */ addi r4, r1, 0x2c +/* 8021B4C4 00218424 3A 60 00 01 */ li r19, 1 +/* 8021B4C8 00218428 38 A0 00 00 */ li r5, 0 +/* 8021B4CC 0021842C 38 C0 00 01 */ li r6, 1 +/* 8021B4D0 00218430 48 10 3F 11 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 8021B4D4 00218434 7C 72 1B 78 */ mr r18, r3 +lbl_8021B4D8: +/* 8021B4D8 00218438 7C 72 00 D0 */ neg r3, r18 +/* 8021B4DC 0021843C 7E 60 07 75 */ extsb. r0, r19 +/* 8021B4E0 00218440 7C 60 93 78 */ or r0, r3, r18 +/* 8021B4E4 00218444 54 00 0F FE */ srwi r0, r0, 0x1f +/* 8021B4E8 00218448 98 1F 04 80 */ stb r0, 0x480(r31) +/* 8021B4EC 0021844C 92 5F 04 84 */ stw r18, 0x484(r31) +/* 8021B4F0 00218450 41 82 00 10 */ beq lbl_8021B500 +/* 8021B4F4 00218454 38 61 00 2C */ addi r3, r1, 0x2c +/* 8021B4F8 00218458 38 80 00 00 */ li r4, 0 +/* 8021B4FC 0021845C 48 12 59 45 */ bl __dt__6CTokenFv +lbl_8021B500: +/* 8021B500 00218460 3C 60 80 3D */ lis r3, lbl_803D2FF0@ha +/* 8021B504 00218464 3A 60 00 00 */ li r19, 0 +/* 8021B508 00218468 38 83 2F F0 */ addi r4, r3, lbl_803D2FF0@l +/* 8021B50C 0021846C 38 60 03 40 */ li r3, 0x340 +/* 8021B510 00218470 38 84 00 31 */ addi r4, r4, 0x31 +/* 8021B514 00218474 38 A0 00 00 */ li r5, 0 +/* 8021B518 00218478 48 0F A3 55 */ bl __nw__FUlPCcPCc +/* 8021B51C 0021847C 7C 72 1B 79 */ or. r18, r3, r3 +/* 8021B520 00218480 41 82 00 2C */ beq lbl_8021B54C +/* 8021B524 00218484 38 61 00 24 */ addi r3, r1, 0x24 +/* 8021B528 00218488 38 9F 04 40 */ addi r4, r31, 0x440 +/* 8021B52C 0021848C 48 12 59 7D */ bl __ct__6CTokenFRC6CToken +/* 8021B530 00218490 7E 43 93 78 */ mr r3, r18 +/* 8021B534 00218494 38 81 00 24 */ addi r4, r1, 0x24 +/* 8021B538 00218498 3A 60 00 01 */ li r19, 1 +/* 8021B53C 0021849C 38 A0 00 00 */ li r5, 0 +/* 8021B540 002184A0 38 C0 00 01 */ li r6, 1 +/* 8021B544 002184A4 48 10 3E 9D */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 8021B548 002184A8 7C 72 1B 78 */ mr r18, r3 +lbl_8021B54C: +/* 8021B54C 002184AC 7C 72 00 D0 */ neg r3, r18 +/* 8021B550 002184B0 7E 60 07 75 */ extsb. r0, r19 +/* 8021B554 002184B4 7C 60 93 78 */ or r0, r3, r18 +/* 8021B558 002184B8 54 00 0F FE */ srwi r0, r0, 0x1f +/* 8021B55C 002184BC 98 1F 04 88 */ stb r0, 0x488(r31) +/* 8021B560 002184C0 92 5F 04 8C */ stw r18, 0x48c(r31) +/* 8021B564 002184C4 41 82 00 10 */ beq lbl_8021B574 +/* 8021B568 002184C8 38 61 00 24 */ addi r3, r1, 0x24 +/* 8021B56C 002184CC 38 80 00 00 */ li r4, 0 +/* 8021B570 002184D0 48 12 58 D1 */ bl __dt__6CTokenFv +lbl_8021B574: +/* 8021B574 002184D4 3C 60 80 3D */ lis r3, lbl_803D2FF0@ha +/* 8021B578 002184D8 3A 60 00 00 */ li r19, 0 +/* 8021B57C 002184DC 38 83 2F F0 */ addi r4, r3, lbl_803D2FF0@l +/* 8021B580 002184E0 38 60 03 40 */ li r3, 0x340 +/* 8021B584 002184E4 38 84 00 31 */ addi r4, r4, 0x31 +/* 8021B588 002184E8 38 A0 00 00 */ li r5, 0 +/* 8021B58C 002184EC 48 0F A2 E1 */ bl __nw__FUlPCcPCc +/* 8021B590 002184F0 7C 72 1B 79 */ or. r18, r3, r3 +/* 8021B594 002184F4 41 82 00 2C */ beq lbl_8021B5C0 +/* 8021B598 002184F8 38 61 00 1C */ addi r3, r1, 0x1c +/* 8021B59C 002184FC 38 9F 04 4C */ addi r4, r31, 0x44c +/* 8021B5A0 00218500 48 12 59 09 */ bl __ct__6CTokenFRC6CToken +/* 8021B5A4 00218504 7E 43 93 78 */ mr r3, r18 +/* 8021B5A8 00218508 38 81 00 1C */ addi r4, r1, 0x1c +/* 8021B5AC 0021850C 3A 60 00 01 */ li r19, 1 +/* 8021B5B0 00218510 38 A0 00 00 */ li r5, 0 +/* 8021B5B4 00218514 38 C0 00 01 */ li r6, 1 +/* 8021B5B8 00218518 48 10 3E 29 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 8021B5BC 0021851C 7C 72 1B 78 */ mr r18, r3 +lbl_8021B5C0: +/* 8021B5C0 00218520 7C 72 00 D0 */ neg r3, r18 +/* 8021B5C4 00218524 7E 60 07 75 */ extsb. r0, r19 +/* 8021B5C8 00218528 7C 60 93 78 */ or r0, r3, r18 +/* 8021B5CC 0021852C 54 00 0F FE */ srwi r0, r0, 0x1f +/* 8021B5D0 00218530 98 1F 04 90 */ stb r0, 0x490(r31) +/* 8021B5D4 00218534 92 5F 04 94 */ stw r18, 0x494(r31) +/* 8021B5D8 00218538 41 82 00 10 */ beq lbl_8021B5E8 +/* 8021B5DC 0021853C 38 61 00 1C */ addi r3, r1, 0x1c +/* 8021B5E0 00218540 38 80 00 00 */ li r4, 0 +/* 8021B5E4 00218544 48 12 58 5D */ bl __dt__6CTokenFv +lbl_8021B5E8: +/* 8021B5E8 00218548 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8021B5EC 0021854C 38 A0 00 00 */ li r5, 0 +/* 8021B5F0 00218550 38 7F 04 A4 */ addi r3, r31, 0x4a4 +/* 8021B5F4 00218554 38 81 01 1C */ addi r4, r1, 0x11c +/* 8021B5F8 00218558 B0 1F 04 98 */ sth r0, 0x498(r31) +/* 8021B5FC 0021855C 90 BF 04 9C */ stw r5, 0x49c(r31) +/* 8021B600 00218560 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8021B604 00218564 B0 1F 04 A0 */ sth r0, 0x4a0(r31) +/* 8021B608 00218568 98 A1 01 68 */ stb r5, 0x168(r1) +/* 8021B60C 0021856C 4B EC CC 21 */ bl sub_800e822c +/* 8021B610 00218570 88 01 01 68 */ lbz r0, 0x168(r1) +/* 8021B614 00218574 28 00 00 00 */ cmplwi r0, 0 +/* 8021B618 00218578 41 82 00 10 */ beq lbl_8021B628 +/* 8021B61C 0021857C 38 61 01 1C */ addi r3, r1, 0x11c +/* 8021B620 00218580 38 80 FF FF */ li r4, -1 +/* 8021B624 00218584 4B EF B4 29 */ bl __dt__10CModelDataFv +lbl_8021B628: +/* 8021B628 00218588 38 A0 00 00 */ li r5, 0 +/* 8021B62C 0021858C C0 22 B3 5C */ lfs f1, lbl_805AD07C@sda21(r2) +/* 8021B630 00218590 98 A1 01 68 */ stb r5, 0x168(r1) +/* 8021B634 00218594 38 60 00 FF */ li r3, 0xff +/* 8021B638 00218598 38 00 FF FF */ li r0, -1 +/* 8021B63C 0021859C 38 80 00 01 */ li r4, 1 +/* 8021B640 002185A0 D0 3F 04 F4 */ stfs f1, 0x4f4(r31) +/* 8021B644 002185A4 2C 1D 00 00 */ cmpwi r29, 0 +/* 8021B648 002185A8 D0 3F 04 F8 */ stfs f1, 0x4f8(r31) +/* 8021B64C 002185AC C0 7E 00 2C */ lfs f3, 0x2c(r30) +/* 8021B650 002185B0 C0 5E 00 1C */ lfs f2, 0x1c(r30) +/* 8021B654 002185B4 C0 1E 00 0C */ lfs f0, 0xc(r30) +/* 8021B658 002185B8 D0 1F 04 FC */ stfs f0, 0x4fc(r31) +/* 8021B65C 002185BC D0 5F 05 00 */ stfs f2, 0x500(r31) +/* 8021B660 002185C0 D0 7F 05 04 */ stfs f3, 0x504(r31) +/* 8021B664 002185C4 98 7F 05 08 */ stb r3, 0x508(r31) +/* 8021B668 002185C8 90 BF 05 0C */ stw r5, 0x50c(r31) +/* 8021B66C 002185CC D0 3F 05 10 */ stfs f1, 0x510(r31) +/* 8021B670 002185D0 C0 7E 00 24 */ lfs f3, 0x24(r30) +/* 8021B674 002185D4 C0 5E 00 14 */ lfs f2, 0x14(r30) +/* 8021B678 002185D8 C0 1E 00 04 */ lfs f0, 4(r30) +/* 8021B67C 002185DC D0 1F 05 14 */ stfs f0, 0x514(r31) +/* 8021B680 002185E0 D0 5F 05 18 */ stfs f2, 0x518(r31) +/* 8021B684 002185E4 D0 7F 05 1C */ stfs f3, 0x51c(r31) +/* 8021B688 002185E8 90 1F 05 20 */ stw r0, 0x520(r31) +/* 8021B68C 002185EC D0 3F 05 24 */ stfs f1, 0x524(r31) +/* 8021B690 002185F0 D0 3F 05 28 */ stfs f1, 0x528(r31) +/* 8021B694 002185F4 D0 3F 05 2C */ stfs f1, 0x52c(r31) +/* 8021B698 002185F8 D0 3F 05 30 */ stfs f1, 0x530(r31) +/* 8021B69C 002185FC D0 3F 05 34 */ stfs f1, 0x534(r31) +/* 8021B6A0 00218600 D0 3F 05 38 */ stfs f1, 0x538(r31) +/* 8021B6A4 00218604 D0 3F 05 3C */ stfs f1, 0x53c(r31) +/* 8021B6A8 00218608 90 1F 05 40 */ stw r0, 0x540(r31) +/* 8021B6AC 0021860C C0 5E 00 24 */ lfs f2, 0x24(r30) +/* 8021B6B0 00218610 C0 3E 00 14 */ lfs f1, 0x14(r30) +/* 8021B6B4 00218614 C0 1E 00 04 */ lfs f0, 4(r30) +/* 8021B6B8 00218618 D0 1F 05 44 */ stfs f0, 0x544(r31) +/* 8021B6BC 0021861C D0 3F 05 48 */ stfs f1, 0x548(r31) +/* 8021B6C0 00218620 D0 5F 05 4C */ stfs f2, 0x54c(r31) +/* 8021B6C4 00218624 C0 5E 00 20 */ lfs f2, 0x20(r30) +/* 8021B6C8 00218628 C0 3E 00 10 */ lfs f1, 0x10(r30) +/* 8021B6CC 0021862C C0 1E 00 00 */ lfs f0, 0(r30) +/* 8021B6D0 00218630 D0 1F 05 50 */ stfs f0, 0x550(r31) +/* 8021B6D4 00218634 D0 3F 05 54 */ stfs f1, 0x554(r31) +/* 8021B6D8 00218638 D0 5F 05 58 */ stfs f2, 0x558(r31) +/* 8021B6DC 0021863C 90 1F 05 5C */ stw r0, 0x55c(r31) +/* 8021B6E0 00218640 88 1F 05 60 */ lbz r0, 0x560(r31) +/* 8021B6E4 00218644 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 8021B6E8 00218648 98 1F 05 60 */ stb r0, 0x560(r31) +/* 8021B6EC 0021864C 88 1F 05 60 */ lbz r0, 0x560(r31) +/* 8021B6F0 00218650 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 8021B6F4 00218654 98 1F 05 60 */ stb r0, 0x560(r31) +/* 8021B6F8 00218658 88 1F 05 60 */ lbz r0, 0x560(r31) +/* 8021B6FC 0021865C 50 A0 2E B4 */ rlwimi r0, r5, 5, 0x1a, 0x1a +/* 8021B700 00218660 98 1F 05 60 */ stb r0, 0x560(r31) +/* 8021B704 00218664 88 1F 05 60 */ lbz r0, 0x560(r31) +/* 8021B708 00218668 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 8021B70C 0021866C 98 1F 05 60 */ stb r0, 0x560(r31) +/* 8021B710 00218670 88 1F 05 60 */ lbz r0, 0x560(r31) +/* 8021B714 00218674 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 8021B718 00218678 98 1F 05 60 */ stb r0, 0x560(r31) +/* 8021B71C 0021867C 88 1F 05 60 */ lbz r0, 0x560(r31) +/* 8021B720 00218680 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d +/* 8021B724 00218684 98 1F 05 60 */ stb r0, 0x560(r31) +/* 8021B728 00218688 88 1F 05 60 */ lbz r0, 0x560(r31) +/* 8021B72C 0021868C 50 80 0F BC */ rlwimi r0, r4, 1, 0x1e, 0x1e +/* 8021B730 00218690 98 1F 05 60 */ stb r0, 0x560(r31) +/* 8021B734 00218694 88 1F 05 60 */ lbz r0, 0x560(r31) +/* 8021B738 00218698 50 A0 07 FE */ rlwimi r0, r5, 0, 0x1f, 0x1f +/* 8021B73C 0021869C 98 1F 05 60 */ stb r0, 0x560(r31) +/* 8021B740 002186A0 40 82 00 30 */ bne lbl_8021B770 +/* 8021B744 002186A4 80 7F 00 64 */ lwz r3, 0x64(r31) +/* 8021B748 002186A8 28 03 00 00 */ cmplwi r3, 0 +/* 8021B74C 002186AC 41 82 00 14 */ beq lbl_8021B760 +/* 8021B750 002186B0 80 03 00 10 */ lwz r0, 0x10(r3) +/* 8021B754 002186B4 28 00 00 00 */ cmplwi r0, 0 +/* 8021B758 002186B8 41 82 00 08 */ beq lbl_8021B760 +/* 8021B75C 002186BC 7C 85 23 78 */ mr r5, r4 +lbl_8021B760: +/* 8021B760 002186C0 54 A0 06 3F */ clrlwi. r0, r5, 0x18 +/* 8021B764 002186C4 41 82 00 0C */ beq lbl_8021B770 +/* 8021B768 002186C8 38 80 00 01 */ li r4, 1 +/* 8021B76C 002186CC 4B EF 9D F5 */ bl EnableLooping__10CModelDataFb +lbl_8021B770: +/* 8021B770 002186D0 38 7F 03 7C */ addi r3, r31, 0x37c +/* 8021B774 002186D4 48 12 56 11 */ bl Lock__6CTokenFv +/* 8021B778 002186D8 7F E3 FB 78 */ mr r3, r31 +/* 8021B77C 002186DC BA 41 01 78 */ lmw r18, 0x178(r1) +/* 8021B780 002186E0 80 01 01 B4 */ lwz r0, 0x1b4(r1) +/* 8021B784 002186E4 7C 08 03 A6 */ mtlr r0 +/* 8021B788 002186E8 38 21 01 B0 */ addi r1, r1, 0x1b0 +/* 8021B78C 002186EC 4E 80 00 20 */ blr + +.global __ct__20CScriptGunTurretDataFRC20CScriptGunTurretData +__ct__20CScriptGunTurretDataFRC20CScriptGunTurretData: +/* 8021B790 002186F0 C0 04 00 00 */ lfs f0, 0(r4) +/* 8021B794 002186F4 D0 03 00 00 */ stfs f0, 0(r3) +/* 8021B798 002186F8 C0 04 00 04 */ lfs f0, 4(r4) +/* 8021B79C 002186FC D0 03 00 04 */ stfs f0, 4(r3) +/* 8021B7A0 00218700 C0 04 00 08 */ lfs f0, 8(r4) +/* 8021B7A4 00218704 D0 03 00 08 */ stfs f0, 8(r3) +/* 8021B7A8 00218708 C0 04 00 0C */ lfs f0, 0xc(r4) +/* 8021B7AC 0021870C D0 03 00 0C */ stfs f0, 0xc(r3) +/* 8021B7B0 00218710 C0 04 00 10 */ lfs f0, 0x10(r4) +/* 8021B7B4 00218714 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 8021B7B8 00218718 C0 04 00 14 */ lfs f0, 0x14(r4) +/* 8021B7BC 0021871C D0 03 00 14 */ stfs f0, 0x14(r3) +/* 8021B7C0 00218720 C0 04 00 18 */ lfs f0, 0x18(r4) +/* 8021B7C4 00218724 D0 03 00 18 */ stfs f0, 0x18(r3) +/* 8021B7C8 00218728 C0 04 00 1C */ lfs f0, 0x1c(r4) +/* 8021B7CC 0021872C D0 03 00 1C */ stfs f0, 0x1c(r3) +/* 8021B7D0 00218730 C0 04 00 20 */ lfs f0, 0x20(r4) +/* 8021B7D4 00218734 D0 03 00 20 */ stfs f0, 0x20(r3) +/* 8021B7D8 00218738 C0 04 00 24 */ lfs f0, 0x24(r4) +/* 8021B7DC 0021873C D0 03 00 24 */ stfs f0, 0x24(r3) +/* 8021B7E0 00218740 C0 04 00 28 */ lfs f0, 0x28(r4) +/* 8021B7E4 00218744 D0 03 00 28 */ stfs f0, 0x28(r3) +/* 8021B7E8 00218748 C0 04 00 2C */ lfs f0, 0x2c(r4) +/* 8021B7EC 0021874C D0 03 00 2C */ stfs f0, 0x2c(r3) +/* 8021B7F0 00218750 C0 04 00 30 */ lfs f0, 0x30(r4) +/* 8021B7F4 00218754 D0 03 00 30 */ stfs f0, 0x30(r3) +/* 8021B7F8 00218758 C0 04 00 34 */ lfs f0, 0x34(r4) +/* 8021B7FC 0021875C D0 03 00 34 */ stfs f0, 0x34(r3) +/* 8021B800 00218760 C0 04 00 38 */ lfs f0, 0x38(r4) +/* 8021B804 00218764 D0 03 00 38 */ stfs f0, 0x38(r3) +/* 8021B808 00218768 88 04 00 3C */ lbz r0, 0x3c(r4) +/* 8021B80C 0021876C 98 03 00 3C */ stb r0, 0x3c(r3) +/* 8021B810 00218770 80 04 00 40 */ lwz r0, 0x40(r4) +/* 8021B814 00218774 90 03 00 40 */ stw r0, 0x40(r3) +/* 8021B818 00218778 80 04 00 44 */ lwz r0, 0x44(r4) +/* 8021B81C 0021877C 90 03 00 44 */ stw r0, 0x44(r3) +/* 8021B820 00218780 88 04 00 48 */ lbz r0, 0x48(r4) +/* 8021B824 00218784 98 03 00 48 */ stb r0, 0x48(r3) +/* 8021B828 00218788 C0 04 00 4C */ lfs f0, 0x4c(r4) +/* 8021B82C 0021878C D0 03 00 4C */ stfs f0, 0x4c(r3) +/* 8021B830 00218790 C0 04 00 50 */ lfs f0, 0x50(r4) +/* 8021B834 00218794 D0 03 00 50 */ stfs f0, 0x50(r3) +/* 8021B838 00218798 C0 04 00 54 */ lfs f0, 0x54(r4) +/* 8021B83C 0021879C D0 03 00 54 */ stfs f0, 0x54(r3) +/* 8021B840 002187A0 C0 04 00 58 */ lfs f0, 0x58(r4) +/* 8021B844 002187A4 D0 03 00 58 */ stfs f0, 0x58(r3) +/* 8021B848 002187A8 88 04 00 5C */ lbz r0, 0x5c(r4) +/* 8021B84C 002187AC 98 03 00 5C */ stb r0, 0x5c(r3) +/* 8021B850 002187B0 80 04 00 60 */ lwz r0, 0x60(r4) +/* 8021B854 002187B4 90 03 00 60 */ stw r0, 0x60(r3) +/* 8021B858 002187B8 80 04 00 64 */ lwz r0, 0x64(r4) +/* 8021B85C 002187BC 90 03 00 64 */ stw r0, 0x64(r3) +/* 8021B860 002187C0 80 04 00 68 */ lwz r0, 0x68(r4) +/* 8021B864 002187C4 90 03 00 68 */ stw r0, 0x68(r3) +/* 8021B868 002187C8 80 04 00 6C */ lwz r0, 0x6c(r4) +/* 8021B86C 002187CC 90 03 00 6C */ stw r0, 0x6c(r3) +/* 8021B870 002187D0 80 04 00 70 */ lwz r0, 0x70(r4) +/* 8021B874 002187D4 90 03 00 70 */ stw r0, 0x70(r3) +/* 8021B878 002187D8 80 04 00 74 */ lwz r0, 0x74(r4) +/* 8021B87C 002187DC 90 03 00 74 */ stw r0, 0x74(r3) +/* 8021B880 002187E0 80 04 00 78 */ lwz r0, 0x78(r4) +/* 8021B884 002187E4 90 03 00 78 */ stw r0, 0x78(r3) +/* 8021B888 002187E8 A0 04 00 7C */ lhz r0, 0x7c(r4) +/* 8021B88C 002187EC B0 03 00 7C */ sth r0, 0x7c(r3) +/* 8021B890 002187F0 A0 04 00 7E */ lhz r0, 0x7e(r4) +/* 8021B894 002187F4 B0 03 00 7E */ sth r0, 0x7e(r3) +/* 8021B898 002187F8 A0 04 00 80 */ lhz r0, 0x80(r4) +/* 8021B89C 002187FC B0 03 00 80 */ sth r0, 0x80(r3) +/* 8021B8A0 00218800 A0 04 00 82 */ lhz r0, 0x82(r4) +/* 8021B8A4 00218804 B0 03 00 82 */ sth r0, 0x82(r3) +/* 8021B8A8 00218808 A0 04 00 84 */ lhz r0, 0x84(r4) +/* 8021B8AC 0021880C B0 03 00 84 */ sth r0, 0x84(r3) +/* 8021B8B0 00218810 A0 04 00 86 */ lhz r0, 0x86(r4) +/* 8021B8B4 00218814 B0 03 00 86 */ sth r0, 0x86(r3) +/* 8021B8B8 00218818 80 04 00 88 */ lwz r0, 0x88(r4) +/* 8021B8BC 0021881C 90 03 00 88 */ stw r0, 0x88(r3) +/* 8021B8C0 00218820 C0 04 00 8C */ lfs f0, 0x8c(r4) +/* 8021B8C4 00218824 D0 03 00 8C */ stfs f0, 0x8c(r3) +/* 8021B8C8 00218828 80 04 00 90 */ lwz r0, 0x90(r4) +/* 8021B8CC 0021882C 90 03 00 90 */ stw r0, 0x90(r3) +/* 8021B8D0 00218830 80 04 00 94 */ lwz r0, 0x94(r4) +/* 8021B8D4 00218834 90 03 00 94 */ stw r0, 0x94(r3) +/* 8021B8D8 00218838 80 04 00 98 */ lwz r0, 0x98(r4) +/* 8021B8DC 0021883C 90 03 00 98 */ stw r0, 0x98(r3) +/* 8021B8E0 00218840 C0 04 00 9C */ lfs f0, 0x9c(r4) +/* 8021B8E4 00218844 D0 03 00 9C */ stfs f0, 0x9c(r3) +/* 8021B8E8 00218848 88 04 00 A0 */ lbz r0, 0xa0(r4) +/* 8021B8EC 0021884C 98 03 00 A0 */ stb r0, 0xa0(r3) +/* 8021B8F0 00218850 4E 80 00 20 */ blr + +.global __ct__20CScriptGunTurretDataFR12CInputStreami +__ct__20CScriptGunTurretDataFR12CInputStreami: +/* 8021B8F4 00218854 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8021B8F8 00218858 7C 08 02 A6 */ mflr r0 +/* 8021B8FC 0021885C 90 01 00 24 */ stw r0, 0x24(r1) +/* 8021B900 00218860 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8021B904 00218864 7C BF 2B 78 */ mr r31, r5 +/* 8021B908 00218868 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8021B90C 0021886C 7C 9E 23 78 */ mr r30, r4 +/* 8021B910 00218870 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8021B914 00218874 7C 7D 1B 78 */ mr r29, r3 +/* 8021B918 00218878 7F C3 F3 78 */ mr r3, r30 +/* 8021B91C 0021887C 48 12 33 0D */ bl ReadFloat__12CInputStreamFv +/* 8021B920 00218880 D0 3D 00 00 */ stfs f1, 0(r29) +/* 8021B924 00218884 7F C3 F3 78 */ mr r3, r30 +/* 8021B928 00218888 48 12 33 01 */ bl ReadFloat__12CInputStreamFv +/* 8021B92C 0021888C D0 3D 00 04 */ stfs f1, 4(r29) +/* 8021B930 00218890 7F C3 F3 78 */ mr r3, r30 +/* 8021B934 00218894 48 12 32 F5 */ bl ReadFloat__12CInputStreamFv +/* 8021B938 00218898 D0 3D 00 08 */ stfs f1, 8(r29) +/* 8021B93C 0021889C 7F C3 F3 78 */ mr r3, r30 +/* 8021B940 002188A0 48 12 32 E9 */ bl ReadFloat__12CInputStreamFv +/* 8021B944 002188A4 D0 3D 00 0C */ stfs f1, 0xc(r29) +/* 8021B948 002188A8 7F C3 F3 78 */ mr r3, r30 +/* 8021B94C 002188AC 48 12 32 DD */ bl ReadFloat__12CInputStreamFv +/* 8021B950 002188B0 D0 3D 00 10 */ stfs f1, 0x10(r29) +/* 8021B954 002188B4 7F C3 F3 78 */ mr r3, r30 +/* 8021B958 002188B8 48 12 32 D1 */ bl ReadFloat__12CInputStreamFv +/* 8021B95C 002188BC D0 3D 00 14 */ stfs f1, 0x14(r29) +/* 8021B960 002188C0 7F C3 F3 78 */ mr r3, r30 +/* 8021B964 002188C4 C0 02 B3 D4 */ lfs f0, lbl_805AD0F4@sda21(r2) +/* 8021B968 002188C8 D0 1D 00 18 */ stfs f0, 0x18(r29) +/* 8021B96C 002188CC 48 12 32 BD */ bl ReadFloat__12CInputStreamFv +/* 8021B970 002188D0 C0 02 B3 C4 */ lfs f0, lbl_805AD0E4@sda21(r2) +/* 8021B974 002188D4 7F C3 F3 78 */ mr r3, r30 +/* 8021B978 002188D8 EC 00 00 72 */ fmuls f0, f0, f1 +/* 8021B97C 002188DC D0 1D 00 1C */ stfs f0, 0x1c(r29) +/* 8021B980 002188E0 48 12 32 A9 */ bl ReadFloat__12CInputStreamFv +/* 8021B984 002188E4 C0 02 B3 C4 */ lfs f0, lbl_805AD0E4@sda21(r2) +/* 8021B988 002188E8 7F C3 F3 78 */ mr r3, r30 +/* 8021B98C 002188EC EC 00 00 72 */ fmuls f0, f0, f1 +/* 8021B990 002188F0 D0 1D 00 20 */ stfs f0, 0x20(r29) +/* 8021B994 002188F4 48 12 32 95 */ bl ReadFloat__12CInputStreamFv +/* 8021B998 002188F8 C0 02 B3 C4 */ lfs f0, lbl_805AD0E4@sda21(r2) +/* 8021B99C 002188FC 7F C3 F3 78 */ mr r3, r30 +/* 8021B9A0 00218900 EC 00 00 72 */ fmuls f0, f0, f1 +/* 8021B9A4 00218904 D0 1D 00 24 */ stfs f0, 0x24(r29) +/* 8021B9A8 00218908 48 12 32 81 */ bl ReadFloat__12CInputStreamFv +/* 8021B9AC 0021890C C0 02 B3 C4 */ lfs f0, lbl_805AD0E4@sda21(r2) +/* 8021B9B0 00218910 7F C3 F3 78 */ mr r3, r30 +/* 8021B9B4 00218914 EC 00 00 72 */ fmuls f0, f0, f1 +/* 8021B9B8 00218918 D0 1D 00 28 */ stfs f0, 0x28(r29) +/* 8021B9BC 0021891C 48 12 32 6D */ bl ReadFloat__12CInputStreamFv +/* 8021B9C0 00218920 D0 3D 00 2C */ stfs f1, 0x2c(r29) +/* 8021B9C4 00218924 7F C3 F3 78 */ mr r3, r30 +/* 8021B9C8 00218928 48 12 32 61 */ bl ReadFloat__12CInputStreamFv +/* 8021B9CC 0021892C D0 3D 00 30 */ stfs f1, 0x30(r29) +/* 8021B9D0 00218930 7F C3 F3 78 */ mr r3, r30 +/* 8021B9D4 00218934 48 12 32 55 */ bl ReadFloat__12CInputStreamFv +/* 8021B9D8 00218938 D0 3D 00 34 */ stfs f1, 0x34(r29) +/* 8021B9DC 0021893C 7F C3 F3 78 */ mr r3, r30 +/* 8021B9E0 00218940 48 12 32 49 */ bl ReadFloat__12CInputStreamFv +/* 8021B9E4 00218944 2C 1F 00 30 */ cmpwi r31, 0x30 +/* 8021B9E8 00218948 D0 3D 00 38 */ stfs f1, 0x38(r29) +/* 8021B9EC 0021894C 41 80 00 10 */ blt lbl_8021B9FC +/* 8021B9F0 00218950 7F C3 F3 78 */ mr r3, r30 +/* 8021B9F4 00218954 48 12 32 E9 */ bl ReadBool__12CInputStreamFv +/* 8021B9F8 00218958 48 00 00 08 */ b lbl_8021BA00 +lbl_8021B9FC: +/* 8021B9FC 0021895C 38 60 00 00 */ li r3, 0 +lbl_8021BA00: +/* 8021BA00 00218960 98 7D 00 3C */ stb r3, 0x3c(r29) +/* 8021BA04 00218964 7F C3 F3 78 */ mr r3, r30 +/* 8021BA08 00218968 48 12 32 7D */ bl ReadLong__12CInputStreamFv +/* 8021BA0C 0021896C 90 7D 00 40 */ stw r3, 0x40(r29) +/* 8021BA10 00218970 7F C4 F3 78 */ mr r4, r30 +/* 8021BA14 00218974 38 7D 00 44 */ addi r3, r29, 0x44 +/* 8021BA18 00218978 4B EA 7B 49 */ bl __ct__11CDamageInfoFR12CInputStream +/* 8021BA1C 0021897C 7F C3 F3 78 */ mr r3, r30 +/* 8021BA20 00218980 48 12 32 65 */ bl ReadLong__12CInputStreamFv +/* 8021BA24 00218984 90 7D 00 60 */ stw r3, 0x60(r29) +/* 8021BA28 00218988 7F C3 F3 78 */ mr r3, r30 +/* 8021BA2C 0021898C 48 12 32 59 */ bl ReadLong__12CInputStreamFv +/* 8021BA30 00218990 90 7D 00 64 */ stw r3, 0x64(r29) +/* 8021BA34 00218994 7F C3 F3 78 */ mr r3, r30 +/* 8021BA38 00218998 48 12 32 4D */ bl ReadLong__12CInputStreamFv +/* 8021BA3C 0021899C 90 7D 00 68 */ stw r3, 0x68(r29) +/* 8021BA40 002189A0 7F C3 F3 78 */ mr r3, r30 +/* 8021BA44 002189A4 48 12 32 41 */ bl ReadLong__12CInputStreamFv +/* 8021BA48 002189A8 90 7D 00 6C */ stw r3, 0x6c(r29) +/* 8021BA4C 002189AC 7F C3 F3 78 */ mr r3, r30 +/* 8021BA50 002189B0 48 12 32 35 */ bl ReadLong__12CInputStreamFv +/* 8021BA54 002189B4 90 7D 00 70 */ stw r3, 0x70(r29) +/* 8021BA58 002189B8 7F C3 F3 78 */ mr r3, r30 +/* 8021BA5C 002189BC 48 12 32 29 */ bl ReadLong__12CInputStreamFv +/* 8021BA60 002189C0 2C 1F 00 2C */ cmpwi r31, 0x2c +/* 8021BA64 002189C4 90 7D 00 74 */ stw r3, 0x74(r29) +/* 8021BA68 002189C8 41 80 00 10 */ blt lbl_8021BA78 +/* 8021BA6C 002189CC 7F C3 F3 78 */ mr r3, r30 +/* 8021BA70 002189D0 48 12 32 15 */ bl ReadLong__12CInputStreamFv +/* 8021BA74 002189D4 48 00 00 08 */ b lbl_8021BA7C +lbl_8021BA78: +/* 8021BA78 002189D8 38 60 FF FF */ li r3, -1 +lbl_8021BA7C: +/* 8021BA7C 002189DC 90 7D 00 78 */ stw r3, 0x78(r29) +/* 8021BA80 002189E0 7F C3 F3 78 */ mr r3, r30 +/* 8021BA84 002189E4 48 12 32 01 */ bl ReadLong__12CInputStreamFv +/* 8021BA88 002189E8 54 63 04 3E */ clrlwi r3, r3, 0x10 +/* 8021BA8C 002189EC 48 0C CF 25 */ bl TranslateSFXID__11CSfxManagerFUs +/* 8021BA90 002189F0 B0 7D 00 7C */ sth r3, 0x7c(r29) +/* 8021BA94 002189F4 7F C3 F3 78 */ mr r3, r30 +/* 8021BA98 002189F8 48 12 31 ED */ bl ReadLong__12CInputStreamFv +/* 8021BA9C 002189FC 54 63 04 3E */ clrlwi r3, r3, 0x10 +/* 8021BAA0 00218A00 48 0C CF 11 */ bl TranslateSFXID__11CSfxManagerFUs +/* 8021BAA4 00218A04 B0 7D 00 7E */ sth r3, 0x7e(r29) +/* 8021BAA8 00218A08 7F C3 F3 78 */ mr r3, r30 +/* 8021BAAC 00218A0C 48 12 31 D9 */ bl ReadLong__12CInputStreamFv +/* 8021BAB0 00218A10 54 63 04 3E */ clrlwi r3, r3, 0x10 +/* 8021BAB4 00218A14 48 0C CE FD */ bl TranslateSFXID__11CSfxManagerFUs +/* 8021BAB8 00218A18 B0 7D 00 80 */ sth r3, 0x80(r29) +/* 8021BABC 00218A1C 7F C3 F3 78 */ mr r3, r30 +/* 8021BAC0 00218A20 48 12 31 C5 */ bl ReadLong__12CInputStreamFv +/* 8021BAC4 00218A24 54 63 04 3E */ clrlwi r3, r3, 0x10 +/* 8021BAC8 00218A28 48 0C CE E9 */ bl TranslateSFXID__11CSfxManagerFUs +/* 8021BACC 00218A2C B0 7D 00 82 */ sth r3, 0x82(r29) +/* 8021BAD0 00218A30 7F C3 F3 78 */ mr r3, r30 +/* 8021BAD4 00218A34 48 12 31 B1 */ bl ReadLong__12CInputStreamFv +/* 8021BAD8 00218A38 54 63 04 3E */ clrlwi r3, r3, 0x10 +/* 8021BADC 00218A3C 48 0C CE D5 */ bl TranslateSFXID__11CSfxManagerFUs +/* 8021BAE0 00218A40 2C 1F 00 2D */ cmpwi r31, 0x2d +/* 8021BAE4 00218A44 B0 7D 00 84 */ sth r3, 0x84(r29) +/* 8021BAE8 00218A48 41 80 00 18 */ blt lbl_8021BB00 +/* 8021BAEC 00218A4C 7F C3 F3 78 */ mr r3, r30 +/* 8021BAF0 00218A50 48 12 31 95 */ bl ReadLong__12CInputStreamFv +/* 8021BAF4 00218A54 54 63 04 3E */ clrlwi r3, r3, 0x10 +/* 8021BAF8 00218A58 48 0C CE B9 */ bl TranslateSFXID__11CSfxManagerFUs +/* 8021BAFC 00218A5C 48 00 00 08 */ b lbl_8021BB04 +lbl_8021BB00: +/* 8021BB00 00218A60 A0 62 C5 FC */ lhz r3, lbl_805AE31C@sda21(r2) +lbl_8021BB04: +/* 8021BB04 00218A64 B0 7D 00 86 */ sth r3, 0x86(r29) +/* 8021BB08 00218A68 7F C3 F3 78 */ mr r3, r30 +/* 8021BB0C 00218A6C 48 12 31 79 */ bl ReadLong__12CInputStreamFv +/* 8021BB10 00218A70 90 7D 00 88 */ stw r3, 0x88(r29) +/* 8021BB14 00218A74 7F C3 F3 78 */ mr r3, r30 +/* 8021BB18 00218A78 48 12 31 11 */ bl ReadFloat__12CInputStreamFv +/* 8021BB1C 00218A7C D0 3D 00 8C */ stfs f1, 0x8c(r29) +/* 8021BB20 00218A80 7F C3 F3 78 */ mr r3, r30 +/* 8021BB24 00218A84 48 12 31 61 */ bl ReadLong__12CInputStreamFv +/* 8021BB28 00218A88 90 7D 00 90 */ stw r3, 0x90(r29) +/* 8021BB2C 00218A8C 7F C3 F3 78 */ mr r3, r30 +/* 8021BB30 00218A90 48 12 31 55 */ bl ReadLong__12CInputStreamFv +/* 8021BB34 00218A94 90 7D 00 94 */ stw r3, 0x94(r29) +/* 8021BB38 00218A98 7F C3 F3 78 */ mr r3, r30 +/* 8021BB3C 00218A9C 48 12 31 49 */ bl ReadLong__12CInputStreamFv +/* 8021BB40 00218AA0 2C 1F 00 2F */ cmpwi r31, 0x2f +/* 8021BB44 00218AA4 90 7D 00 98 */ stw r3, 0x98(r29) +/* 8021BB48 00218AA8 41 80 00 10 */ blt lbl_8021BB58 +/* 8021BB4C 00218AAC 7F C3 F3 78 */ mr r3, r30 +/* 8021BB50 00218AB0 48 12 30 D9 */ bl ReadFloat__12CInputStreamFv +/* 8021BB54 00218AB4 48 00 00 08 */ b lbl_8021BB5C +lbl_8021BB58: +/* 8021BB58 00218AB8 C0 22 B3 D8 */ lfs f1, lbl_805AD0F8@sda21(r2) +lbl_8021BB5C: +/* 8021BB5C 00218ABC 2C 1F 00 2E */ cmpwi r31, 0x2e +/* 8021BB60 00218AC0 D0 3D 00 9C */ stfs f1, 0x9c(r29) +/* 8021BB64 00218AC4 41 80 00 10 */ blt lbl_8021BB74 +/* 8021BB68 00218AC8 7F C3 F3 78 */ mr r3, r30 +/* 8021BB6C 00218ACC 48 12 31 71 */ bl ReadBool__12CInputStreamFv +/* 8021BB70 00218AD0 48 00 00 08 */ b lbl_8021BB78 +lbl_8021BB74: +/* 8021BB74 00218AD4 38 60 00 00 */ li r3, 0 +lbl_8021BB78: +/* 8021BB78 00218AD8 98 7D 00 A0 */ stb r3, 0xa0(r29) +/* 8021BB7C 00218ADC 7F A3 EB 78 */ mr r3, r29 +/* 8021BB80 00218AE0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8021BB84 00218AE4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8021BB88 00218AE8 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8021BB8C 00218AEC 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8021BB90 00218AF0 7C 08 03 A6 */ mtlr r0 +/* 8021BB94 00218AF4 38 21 00 20 */ addi r1, r1, 0x20 +/* 8021BB98 00218AF8 4E 80 00 20 */ blr + +.global __sinit_CScriptGunTurret_cpp +__sinit_CScriptGunTurret_cpp: +/* 8021BB9C 00218AFC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8021BBA0 00218B00 7C 08 02 A6 */ mflr r0 +/* 8021BBA4 00218B04 38 60 00 00 */ li r3, 0 +/* 8021BBA8 00218B08 38 80 00 01 */ li r4, 1 +/* 8021BBAC 00218B0C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8021BBB0 00218B10 38 00 00 00 */ li r0, 0 +/* 8021BBB4 00218B14 80 AD 94 E0 */ lwz r5, lbl_805A80A0@sda21(r13) +/* 8021BBB8 00218B18 90 0D A5 04 */ stw r0, lbl_805A90C4@sda21(r13) +/* 8021BBBC 00218B1C 90 0D A5 00 */ stw r0, lbl_805A90C0@sda21(r13) +/* 8021BBC0 00218B20 48 16 E3 35 */ bl __shl2i +/* 8021BBC4 00218B24 80 AD A5 00 */ lwz r5, lbl_805A90C0@sda21(r13) +/* 8021BBC8 00218B28 38 00 00 00 */ li r0, 0 +/* 8021BBCC 00218B2C 80 CD A5 04 */ lwz r6, lbl_805A90C4@sda21(r13) +/* 8021BBD0 00218B30 7C A3 1B 78 */ or r3, r5, r3 +/* 8021BBD4 00218B34 80 AD 94 E4 */ lwz r5, lbl_805A80A4@sda21(r13) +/* 8021BBD8 00218B38 7C C4 23 78 */ or r4, r6, r4 +/* 8021BBDC 00218B3C 90 6D A5 00 */ stw r3, lbl_805A90C0@sda21(r13) +/* 8021BBE0 00218B40 38 60 00 00 */ li r3, 0 +/* 8021BBE4 00218B44 90 8D A5 04 */ stw r4, lbl_805A90C4@sda21(r13) +/* 8021BBE8 00218B48 38 80 00 01 */ li r4, 1 +/* 8021BBEC 00218B4C 90 0D A5 0C */ stw r0, lbl_805A90CC@sda21(r13) +/* 8021BBF0 00218B50 90 0D A5 08 */ stw r0, lbl_805A90C8@sda21(r13) +/* 8021BBF4 00218B54 48 16 E3 01 */ bl __shl2i +/* 8021BBF8 00218B58 80 0D A5 08 */ lwz r0, lbl_805A90C8@sda21(r13) +/* 8021BBFC 00218B5C 80 CD A5 0C */ lwz r6, lbl_805A90CC@sda21(r13) +/* 8021BC00 00218B60 7C 00 1B 78 */ or r0, r0, r3 +/* 8021BC04 00218B64 80 AD 94 E8 */ lwz r5, lbl_805A80A8@sda21(r13) +/* 8021BC08 00218B68 7C C4 23 78 */ or r4, r6, r4 +/* 8021BC0C 00218B6C 90 0D A5 08 */ stw r0, lbl_805A90C8@sda21(r13) +/* 8021BC10 00218B70 38 60 00 00 */ li r3, 0 +/* 8021BC14 00218B74 90 8D A5 0C */ stw r4, lbl_805A90CC@sda21(r13) +/* 8021BC18 00218B78 38 80 00 01 */ li r4, 1 +/* 8021BC1C 00218B7C 48 16 E2 D9 */ bl __shl2i +/* 8021BC20 00218B80 80 0D A5 08 */ lwz r0, lbl_805A90C8@sda21(r13) +/* 8021BC24 00218B84 80 CD A5 0C */ lwz r6, lbl_805A90CC@sda21(r13) +/* 8021BC28 00218B88 7C 00 1B 78 */ or r0, r0, r3 +/* 8021BC2C 00218B8C 80 AD 94 EC */ lwz r5, lbl_805A80AC@sda21(r13) +/* 8021BC30 00218B90 7C C4 23 78 */ or r4, r6, r4 +/* 8021BC34 00218B94 90 0D A5 08 */ stw r0, lbl_805A90C8@sda21(r13) +/* 8021BC38 00218B98 38 60 00 00 */ li r3, 0 +/* 8021BC3C 00218B9C 90 8D A5 0C */ stw r4, lbl_805A90CC@sda21(r13) +/* 8021BC40 00218BA0 38 80 00 01 */ li r4, 1 +/* 8021BC44 00218BA4 48 16 E2 B1 */ bl __shl2i +/* 8021BC48 00218BA8 80 0D A5 08 */ lwz r0, lbl_805A90C8@sda21(r13) +/* 8021BC4C 00218BAC 80 CD A5 0C */ lwz r6, lbl_805A90CC@sda21(r13) +/* 8021BC50 00218BB0 7C 00 1B 78 */ or r0, r0, r3 +/* 8021BC54 00218BB4 80 AD 94 F0 */ lwz r5, lbl_805A80B0@sda21(r13) +/* 8021BC58 00218BB8 7C C4 23 78 */ or r4, r6, r4 +/* 8021BC5C 00218BBC 90 0D A5 08 */ stw r0, lbl_805A90C8@sda21(r13) +/* 8021BC60 00218BC0 38 60 00 00 */ li r3, 0 +/* 8021BC64 00218BC4 90 8D A5 0C */ stw r4, lbl_805A90CC@sda21(r13) +/* 8021BC68 00218BC8 38 80 00 01 */ li r4, 1 +/* 8021BC6C 00218BCC 48 16 E2 89 */ bl __shl2i +/* 8021BC70 00218BD0 80 0D A5 08 */ lwz r0, lbl_805A90C8@sda21(r13) +/* 8021BC74 00218BD4 80 AD A5 0C */ lwz r5, lbl_805A90CC@sda21(r13) +/* 8021BC78 00218BD8 7C 00 1B 78 */ or r0, r0, r3 +/* 8021BC7C 00218BDC 7C A3 23 78 */ or r3, r5, r4 +/* 8021BC80 00218BE0 90 0D A5 08 */ stw r0, lbl_805A90C8@sda21(r13) +/* 8021BC84 00218BE4 90 6D A5 0C */ stw r3, lbl_805A90CC@sda21(r13) +/* 8021BC88 00218BE8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8021BC8C 00218BEC 7C 08 03 A6 */ mtlr r0 +/* 8021BC90 00218BF0 38 21 00 10 */ addi r1, r1, 0x10 +/* 8021BC94 00218BF4 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/ScriptObjects/CScriptMemoryRelay.s b/asm/Kyoto_CWD/ScriptObjects/CScriptMemoryRelay.s new file mode 100644 index 00000000..3185dd85 --- /dev/null +++ b/asm/Kyoto_CWD/ScriptObjects/CScriptMemoryRelay.s @@ -0,0 +1,150 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global Accept__18CScriptMemoryRelayFR8IVisitor +Accept__18CScriptMemoryRelayFR8IVisitor: +/* 802418F0 0023E850 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 802418F4 0023E854 7C 08 02 A6 */ mflr r0 +/* 802418F8 0023E858 90 01 00 14 */ stw r0, 0x14(r1) +/* 802418FC 0023E85C 7C 60 1B 78 */ mr r0, r3 +/* 80241900 0023E860 7C 83 23 78 */ mr r3, r4 +/* 80241904 0023E864 81 84 00 00 */ lwz r12, 0(r4) +/* 80241908 0023E868 7C 04 03 78 */ mr r4, r0 +/* 8024190C 0023E86C 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 80241910 0023E870 7D 89 03 A6 */ mtctr r12 +/* 80241914 0023E874 4E 80 04 21 */ bctrl +/* 80241918 0023E878 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024191C 0023E87C 7C 08 03 A6 */ mtlr r0 +/* 80241920 0023E880 38 21 00 10 */ addi r1, r1, 0x10 +/* 80241924 0023E884 4E 80 00 20 */ blr + +.global AcceptScriptMsg__18CScriptMemoryRelayF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__18CScriptMemoryRelayF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 80241928 0023E888 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8024192C 0023E88C 7C 08 02 A6 */ mflr r0 +/* 80241930 0023E890 90 01 00 34 */ stw r0, 0x34(r1) +/* 80241934 0023E894 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80241938 0023E898 7C DF 33 78 */ mr r31, r6 +/* 8024193C 0023E89C 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80241940 0023E8A0 7C 7E 1B 78 */ mr r30, r3 +/* 80241944 0023E8A4 88 03 00 34 */ lbz r0, 0x34(r3) +/* 80241948 0023E8A8 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 8024194C 0023E8AC 40 82 00 94 */ bne lbl_802419E0 +/* 80241950 0023E8B0 2C 04 00 04 */ cmpwi r4, 4 +/* 80241954 0023E8B4 41 82 00 54 */ beq lbl_802419A8 +/* 80241958 0023E8B8 40 80 00 70 */ bge lbl_802419C8 +/* 8024195C 0023E8BC 2C 04 00 01 */ cmpwi r4, 1 +/* 80241960 0023E8C0 41 82 00 08 */ beq lbl_80241968 +/* 80241964 0023E8C4 48 00 00 64 */ b lbl_802419C8 +lbl_80241968: +/* 80241968 0023E8C8 80 1E 00 0C */ lwz r0, 0xc(r30) +/* 8024196C 0023E8CC 38 81 00 18 */ addi r4, r1, 0x18 +/* 80241970 0023E8D0 90 01 00 18 */ stw r0, 0x18(r1) +/* 80241974 0023E8D4 80 7F 08 BC */ lwz r3, 0x8bc(r31) +/* 80241978 0023E8D8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024197C 0023E8DC 80 63 00 00 */ lwz r3, 0(r3) +/* 80241980 0023E8E0 4B EA 01 8D */ bl AddRelay__14CScriptMailboxF9TEditorId +/* 80241984 0023E8E4 88 1E 00 34 */ lbz r0, 0x34(r30) +/* 80241988 0023E8E8 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8024198C 0023E8EC 40 82 00 54 */ bne lbl_802419E0 +/* 80241990 0023E8F0 7F C3 F3 78 */ mr r3, r30 +/* 80241994 0023E8F4 7F E5 FB 78 */ mr r5, r31 +/* 80241998 0023E8F8 38 80 00 00 */ li r4, 0 +/* 8024199C 0023E8FC 38 C0 FF FF */ li r6, -1 +/* 802419A0 0023E900 4B E0 F7 21 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 802419A4 0023E904 48 00 00 3C */ b lbl_802419E0 +lbl_802419A8: +/* 802419A8 0023E908 80 1E 00 0C */ lwz r0, 0xc(r30) +/* 802419AC 0023E90C 38 81 00 10 */ addi r4, r1, 0x10 +/* 802419B0 0023E910 90 01 00 10 */ stw r0, 0x10(r1) +/* 802419B4 0023E914 80 7F 08 BC */ lwz r3, 0x8bc(r31) +/* 802419B8 0023E918 90 01 00 0C */ stw r0, 0xc(r1) +/* 802419BC 0023E91C 80 63 00 00 */ lwz r3, 0(r3) +/* 802419C0 0023E920 4B EA 00 C5 */ bl RemoveRelay__14CScriptMailboxF9TEditorId +/* 802419C4 0023E924 48 00 00 1C */ b lbl_802419E0 +lbl_802419C8: +/* 802419C8 0023E928 A0 05 00 00 */ lhz r0, 0(r5) +/* 802419CC 0023E92C 7F C3 F3 78 */ mr r3, r30 +/* 802419D0 0023E930 7F E6 FB 78 */ mr r6, r31 +/* 802419D4 0023E934 38 A1 00 08 */ addi r5, r1, 8 +/* 802419D8 0023E938 B0 01 00 08 */ sth r0, 8(r1) +/* 802419DC 0023E93C 4B E0 F7 81 */ bl AcceptScriptMsg__7CEntityF20EScriptObjectMessage9TUniqueIdR13CStateManager +lbl_802419E0: +/* 802419E0 0023E940 80 01 00 34 */ lwz r0, 0x34(r1) +/* 802419E4 0023E944 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 802419E8 0023E948 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 802419EC 0023E94C 7C 08 03 A6 */ mtlr r0 +/* 802419F0 0023E950 38 21 00 30 */ addi r1, r1, 0x30 +/* 802419F4 0023E954 4E 80 00 20 */ blr + +.global __dt__18CScriptMemoryRelayFv +__dt__18CScriptMemoryRelayFv: +/* 802419F8 0023E958 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 802419FC 0023E95C 7C 08 02 A6 */ mflr r0 +/* 80241A00 0023E960 90 01 00 14 */ stw r0, 0x14(r1) +/* 80241A04 0023E964 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80241A08 0023E968 7C 9F 23 78 */ mr r31, r4 +/* 80241A0C 0023E96C 93 C1 00 08 */ stw r30, 8(r1) +/* 80241A10 0023E970 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80241A14 0023E974 41 82 00 28 */ beq lbl_80241A3C +/* 80241A18 0023E978 3C A0 80 3F */ lis r5, lbl_803E86E8@ha +/* 80241A1C 0023E97C 38 80 00 00 */ li r4, 0 +/* 80241A20 0023E980 38 05 86 E8 */ addi r0, r5, lbl_803E86E8@l +/* 80241A24 0023E984 90 1E 00 00 */ stw r0, 0(r30) +/* 80241A28 0023E988 4B E0 F8 4D */ bl __dt__7CEntityFv +/* 80241A2C 0023E98C 7F E0 07 35 */ extsh. r0, r31 +/* 80241A30 0023E990 40 81 00 0C */ ble lbl_80241A3C +/* 80241A34 0023E994 7F C3 F3 78 */ mr r3, r30 +/* 80241A38 0023E998 48 0D 3E F9 */ bl Free__7CMemoryFPCv +lbl_80241A3C: +/* 80241A3C 0023E99C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80241A40 0023E9A0 7F C3 F3 78 */ mr r3, r30 +/* 80241A44 0023E9A4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80241A48 0023E9A8 83 C1 00 08 */ lwz r30, 8(r1) +/* 80241A4C 0023E9AC 7C 08 03 A6 */ mtlr r0 +/* 80241A50 0023E9B0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80241A54 0023E9B4 4E 80 00 20 */ blr + +.global "__ct__18CScriptMemoryRelayF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfobbb" +"__ct__18CScriptMemoryRelayF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfobbb": +/* 80241A58 0023E9B8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80241A5C 0023E9BC 7C 08 02 A6 */ mflr r0 +/* 80241A60 0023E9C0 90 01 00 24 */ stw r0, 0x24(r1) +/* 80241A64 0023E9C4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80241A68 0023E9C8 7D 3F 4B 78 */ mr r31, r9 +/* 80241A6C 0023E9CC 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80241A70 0023E9D0 7D 1E 43 78 */ mr r30, r8 +/* 80241A74 0023E9D4 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80241A78 0023E9D8 7C FD 3B 78 */ mr r29, r7 +/* 80241A7C 0023E9DC 93 81 00 10 */ stw r28, 0x10(r1) +/* 80241A80 0023E9E0 7C 7C 1B 78 */ mr r28, r3 +/* 80241A84 0023E9E4 A0 04 00 00 */ lhz r0, 0(r4) +/* 80241A88 0023E9E8 7C A4 2B 78 */ mr r4, r5 +/* 80241A8C 0023E9EC 7C C5 33 78 */ mr r5, r6 +/* 80241A90 0023E9F0 38 C0 00 01 */ li r6, 1 +/* 80241A94 0023E9F4 B0 01 00 08 */ sth r0, 8(r1) +/* 80241A98 0023E9F8 7C 87 23 78 */ mr r7, r4 +/* 80241A9C 0023E9FC 38 81 00 08 */ addi r4, r1, 8 +/* 80241AA0 0023EA00 4B E0 F8 85 */ bl "__ct__7CEntityF9TUniqueIdRC11CEntityInfobRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80241AA4 0023EA04 3C 60 80 3F */ lis r3, lbl_803E86E8@ha +/* 80241AA8 0023EA08 38 03 86 E8 */ addi r0, r3, lbl_803E86E8@l +/* 80241AAC 0023EA0C 90 1C 00 00 */ stw r0, 0(r28) +/* 80241AB0 0023EA10 7F 83 E3 78 */ mr r3, r28 +/* 80241AB4 0023EA14 88 1C 00 34 */ lbz r0, 0x34(r28) +/* 80241AB8 0023EA18 53 A0 3E 30 */ rlwimi r0, r29, 7, 0x18, 0x18 +/* 80241ABC 0023EA1C 98 1C 00 34 */ stb r0, 0x34(r28) +/* 80241AC0 0023EA20 88 1C 00 34 */ lbz r0, 0x34(r28) +/* 80241AC4 0023EA24 53 C0 36 72 */ rlwimi r0, r30, 6, 0x19, 0x19 +/* 80241AC8 0023EA28 98 1C 00 34 */ stb r0, 0x34(r28) +/* 80241ACC 0023EA2C 88 1C 00 34 */ lbz r0, 0x34(r28) +/* 80241AD0 0023EA30 53 E0 2E B4 */ rlwimi r0, r31, 5, 0x1a, 0x1a +/* 80241AD4 0023EA34 98 1C 00 34 */ stb r0, 0x34(r28) +/* 80241AD8 0023EA38 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80241ADC 0023EA3C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80241AE0 0023EA40 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80241AE4 0023EA44 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80241AE8 0023EA48 83 81 00 10 */ lwz r28, 0x10(r1) +/* 80241AEC 0023EA4C 7C 08 03 A6 */ mtlr r0 +/* 80241AF0 0023EA50 38 21 00 20 */ addi r1, r1, 0x20 +/* 80241AF4 0023EA54 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/ScriptObjects/CScriptMidi.s b/asm/Kyoto_CWD/ScriptObjects/CScriptMidi.s new file mode 100644 index 00000000..1da83ee8 --- /dev/null +++ b/asm/Kyoto_CWD/ScriptObjects/CScriptMidi.s @@ -0,0 +1,346 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global StopInternal__11CScriptMidiFf +StopInternal__11CScriptMidiFf: +/* 8020B93C 0020889C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8020B940 002088A0 7C 08 02 A6 */ mflr r0 +/* 8020B944 002088A4 90 01 00 24 */ stw r0, 0x24(r1) +/* 8020B948 002088A8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8020B94C 002088AC 7C 7F 1B 78 */ mr r31, r3 +/* 8020B950 002088B0 80 03 00 3C */ lwz r0, 0x3c(r3) +/* 8020B954 002088B4 28 00 00 00 */ cmplwi r0, 0 +/* 8020B958 002088B8 41 82 00 1C */ beq lbl_8020B974 +/* 8020B95C 002088BC C0 02 B1 A8 */ lfs f0, lbl_805ACEC8@sda21(r2) +/* 8020B960 002088C0 EC 20 00 72 */ fmuls f1, f0, f1 +/* 8020B964 002088C4 F0 21 B0 08 */ psq_st f1, 8(r1), 1, qr3 +/* 8020B968 002088C8 38 7F 00 3C */ addi r3, r31, 0x3c +/* 8020B96C 002088CC A0 81 00 08 */ lhz r4, 8(r1) +/* 8020B970 002088D0 48 14 D7 2D */ bl Stop__12CMidiManagerFRC10CSfxHandleUs +lbl_8020B974: +/* 8020B974 002088D4 38 00 00 00 */ li r0, 0 +/* 8020B978 002088D8 90 1F 00 3C */ stw r0, 0x3c(r31) +/* 8020B97C 002088DC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8020B980 002088E0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8020B984 002088E4 7C 08 03 A6 */ mtlr r0 +/* 8020B988 002088E8 38 21 00 20 */ addi r1, r1, 0x20 +/* 8020B98C 002088EC 4E 80 00 20 */ blr + +.global Stop__11CScriptMidiFR13CStateManagerf +Stop__11CScriptMidiFR13CStateManagerf: +/* 8020B990 002088F0 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 8020B994 002088F4 7C 08 02 A6 */ mflr r0 +/* 8020B998 002088F8 90 01 00 54 */ stw r0, 0x54(r1) +/* 8020B99C 002088FC DB E1 00 40 */ stfd f31, 0x40(r1) +/* 8020B9A0 00208900 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 8020B9A4 00208904 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8020B9A8 00208908 80 C3 00 04 */ lwz r6, 4(r3) +/* 8020B9AC 0020890C 7C 7F 1B 78 */ mr r31, r3 +/* 8020B9B0 00208910 80 E4 08 50 */ lwz r7, 0x850(r4) +/* 8020B9B4 00208914 FF E0 08 90 */ fmr f31, f1 +/* 8020B9B8 00208918 54 C4 18 38 */ slwi r4, r6, 3 +/* 8020B9BC 0020891C 90 C1 00 08 */ stw r6, 8(r1) +/* 8020B9C0 00208920 38 04 00 04 */ addi r0, r4, 4 +/* 8020B9C4 00208924 80 A7 00 20 */ lwz r5, 0x20(r7) +/* 8020B9C8 00208928 90 C1 00 0C */ stw r6, 0xc(r1) +/* 8020B9CC 0020892C 7C A5 00 2E */ lwzx r5, r5, r0 +/* 8020B9D0 00208930 38 61 00 10 */ addi r3, r1, 0x10 +/* 8020B9D4 00208934 80 87 00 08 */ lwz r4, 8(r7) +/* 8020B9D8 00208938 38 DF 00 10 */ addi r6, r31, 0x10 +/* 8020B9DC 0020893C 80 A5 00 84 */ lwz r5, 0x84(r5) +/* 8020B9E0 00208940 48 01 11 AD */ bl "GetIdentifierForMidiEvent__19CInGameTweakManagerFUiUiRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8020B9E4 00208944 38 61 00 20 */ addi r3, r1, 0x20 +/* 8020B9E8 00208948 38 81 00 10 */ addi r4, r1, 0x10 +/* 8020B9EC 0020894C 48 13 27 75 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8020B9F0 00208950 38 61 00 10 */ addi r3, r1, 0x10 +/* 8020B9F4 00208954 48 13 20 ED */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8020B9F8 00208958 80 6D A0 88 */ lwz r3, gpTweakManager@sda21(r13) +/* 8020B9FC 0020895C 38 81 00 20 */ addi r4, r1, 0x20 +/* 8020BA00 00208960 48 01 15 F1 */ bl "HasTweakValue__19CInGameTweakManagerCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8020BA04 00208964 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8020BA08 00208968 41 82 00 14 */ beq lbl_8020BA1C +/* 8020BA0C 0020896C 80 6D A0 88 */ lwz r3, gpTweakManager@sda21(r13) +/* 8020BA10 00208970 38 81 00 20 */ addi r4, r1, 0x20 +/* 8020BA14 00208974 48 01 12 91 */ bl "GetTweakValue__19CInGameTweakManagerCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8020BA18 00208978 C3 E3 00 28 */ lfs f31, 0x28(r3) +lbl_8020BA1C: +/* 8020BA1C 0020897C FC 20 F8 90 */ fmr f1, f31 +/* 8020BA20 00208980 7F E3 FB 78 */ mr r3, r31 +/* 8020BA24 00208984 4B FF FF 19 */ bl StopInternal__11CScriptMidiFf +/* 8020BA28 00208988 38 61 00 20 */ addi r3, r1, 0x20 +/* 8020BA2C 0020898C 48 13 20 B5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8020BA30 00208990 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 8020BA34 00208994 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8020BA38 00208998 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 8020BA3C 0020899C 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8020BA40 002089A0 7C 08 03 A6 */ mtlr r0 +/* 8020BA44 002089A4 38 21 00 50 */ addi r1, r1, 0x50 +/* 8020BA48 002089A8 4E 80 00 20 */ blr + +.global Play__11CScriptMidiFR13CStateManagerf +Play__11CScriptMidiFR13CStateManagerf: +/* 8020BA4C 002089AC 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 8020BA50 002089B0 7C 08 02 A6 */ mflr r0 +/* 8020BA54 002089B4 90 01 00 84 */ stw r0, 0x84(r1) +/* 8020BA58 002089B8 DB E1 00 70 */ stfd f31, 0x70(r1) +/* 8020BA5C 002089BC F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 +/* 8020BA60 002089C0 DB C1 00 60 */ stfd f30, 0x60(r1) +/* 8020BA64 002089C4 F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 +/* 8020BA68 002089C8 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 8020BA6C 002089CC 93 C1 00 58 */ stw r30, 0x58(r1) +/* 8020BA70 002089D0 80 C3 00 04 */ lwz r6, 4(r3) +/* 8020BA74 002089D4 7C 7E 1B 78 */ mr r30, r3 +/* 8020BA78 002089D8 80 E4 08 50 */ lwz r7, 0x850(r4) +/* 8020BA7C 002089DC FF C0 08 90 */ fmr f30, f1 +/* 8020BA80 002089E0 54 C4 18 38 */ slwi r4, r6, 3 +/* 8020BA84 002089E4 90 C1 00 10 */ stw r6, 0x10(r1) +/* 8020BA88 002089E8 38 04 00 04 */ addi r0, r4, 4 +/* 8020BA8C 002089EC 80 A7 00 20 */ lwz r5, 0x20(r7) +/* 8020BA90 002089F0 90 C1 00 14 */ stw r6, 0x14(r1) +/* 8020BA94 002089F4 7C A5 00 2E */ lwzx r5, r5, r0 +/* 8020BA98 002089F8 38 61 00 30 */ addi r3, r1, 0x30 +/* 8020BA9C 002089FC 80 87 00 08 */ lwz r4, 8(r7) +/* 8020BAA0 00208A00 38 DE 00 10 */ addi r6, r30, 0x10 +/* 8020BAA4 00208A04 80 A5 00 84 */ lwz r5, 0x84(r5) +/* 8020BAA8 00208A08 48 01 10 E5 */ bl "GetIdentifierForMidiEvent__19CInGameTweakManagerFUiUiRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8020BAAC 00208A0C 38 61 00 40 */ addi r3, r1, 0x40 +/* 8020BAB0 00208A10 38 81 00 30 */ addi r4, r1, 0x30 +/* 8020BAB4 00208A14 48 13 26 AD */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8020BAB8 00208A18 38 61 00 30 */ addi r3, r1, 0x30 +/* 8020BABC 00208A1C 48 13 20 25 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8020BAC0 00208A20 AB FE 00 48 */ lha r31, 0x48(r30) +/* 8020BAC4 00208A24 38 81 00 40 */ addi r4, r1, 0x40 +/* 8020BAC8 00208A28 80 6D A0 88 */ lwz r3, gpTweakManager@sda21(r13) +/* 8020BACC 00208A2C 48 01 15 25 */ bl "HasTweakValue__19CInGameTweakManagerCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8020BAD0 00208A30 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8020BAD4 00208A34 41 82 00 90 */ beq lbl_8020BB64 +/* 8020BAD8 00208A38 80 6D A0 88 */ lwz r3, gpTweakManager@sda21(r13) +/* 8020BADC 00208A3C 38 81 00 40 */ addi r4, r1, 0x40 +/* 8020BAE0 00208A40 48 01 11 C5 */ bl "GetTweakValue__19CInGameTweakManagerCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8020BAE4 00208A44 7C 7F 1B 78 */ mr r31, r3 +/* 8020BAE8 00208A48 3C 60 43 53 */ lis r3, 0x43534E47@ha +/* 8020BAEC 00208A4C C3 DF 00 24 */ lfs f30, 0x24(r31) +/* 8020BAF0 00208A50 38 03 4E 47 */ addi r0, r3, 0x43534E47@l +/* 8020BAF4 00208A54 80 DF 00 40 */ lwz r6, 0x40(r31) +/* 8020BAF8 00208A58 38 61 00 20 */ addi r3, r1, 0x20 +/* 8020BAFC 00208A5C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8020BB00 00208A60 38 A1 00 28 */ addi r5, r1, 0x28 +/* 8020BB04 00208A64 90 01 00 28 */ stw r0, 0x28(r1) +/* 8020BB08 00208A68 90 C1 00 2C */ stw r6, 0x2c(r1) +/* 8020BB0C 00208A6C 81 84 00 00 */ lwz r12, 0(r4) +/* 8020BB10 00208A70 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8020BB14 00208A74 7D 89 03 A6 */ mtctr r12 +/* 8020BB18 00208A78 4E 80 04 21 */ bctrl +/* 8020BB1C 00208A7C 38 61 00 18 */ addi r3, r1, 0x18 +/* 8020BB20 00208A80 38 81 00 20 */ addi r4, r1, 0x20 +/* 8020BB24 00208A84 48 13 53 85 */ bl __ct__6CTokenFRC6CToken +/* 8020BB28 00208A88 38 7E 00 34 */ addi r3, r30, 0x34 +/* 8020BB2C 00208A8C 38 81 00 18 */ addi r4, r1, 0x18 +/* 8020BB30 00208A90 48 13 51 95 */ bl __as__6CTokenFRC6CToken +/* 8020BB34 00208A94 38 61 00 18 */ addi r3, r1, 0x18 +/* 8020BB38 00208A98 38 80 00 00 */ li r4, 0 +/* 8020BB3C 00208A9C 48 13 53 05 */ bl __dt__6CTokenFv +/* 8020BB40 00208AA0 38 61 00 20 */ addi r3, r1, 0x20 +/* 8020BB44 00208AA4 38 80 FF FF */ li r4, -1 +/* 8020BB48 00208AA8 48 13 52 F9 */ bl __dt__6CTokenFv +/* 8020BB4C 00208AAC C0 22 B1 AC */ lfs f1, lbl_805ACECC@sda21(r2) +/* 8020BB50 00208AB0 C0 1F 00 2C */ lfs f0, 0x2c(r31) +/* 8020BB54 00208AB4 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8020BB58 00208AB8 FC 00 00 1E */ fctiwz f0, f0 +/* 8020BB5C 00208ABC D8 01 00 50 */ stfd f0, 0x50(r1) +/* 8020BB60 00208AC0 83 E1 00 54 */ lwz r31, 0x54(r1) +lbl_8020BB64: +/* 8020BB64 00208AC4 38 7E 00 34 */ addi r3, r30, 0x34 +/* 8020BB68 00208AC8 48 13 52 A5 */ bl GetObj__6CTokenFv +/* 8020BB6C 00208ACC C0 02 B1 A8 */ lfs f0, lbl_805ACEC8@sda21(r2) +/* 8020BB70 00208AD0 80 83 00 04 */ lwz r4, 4(r3) +/* 8020BB74 00208AD4 EF E0 07 B2 */ fmuls f31, f0, f30 +/* 8020BB78 00208AD8 F3 E1 B0 08 */ psq_st f31, 8(r1), 1, qr3 +/* 8020BB7C 00208ADC 38 61 00 0C */ addi r3, r1, 0xc +/* 8020BB80 00208AE0 7F E7 07 34 */ extsh r7, r31 +/* 8020BB84 00208AE4 38 C0 00 00 */ li r6, 0 +/* 8020BB88 00208AE8 A0 A1 00 08 */ lhz r5, 8(r1) +/* 8020BB8C 00208AEC 48 14 D5 D1 */ bl Play__12CMidiManagerFRCQ212CMidiManager9CMidiDataUsbs +/* 8020BB90 00208AF0 80 01 00 0C */ lwz r0, 0xc(r1) +/* 8020BB94 00208AF4 38 61 00 40 */ addi r3, r1, 0x40 +/* 8020BB98 00208AF8 90 1E 00 3C */ stw r0, 0x3c(r30) +/* 8020BB9C 00208AFC 48 13 1F 45 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8020BBA0 00208B00 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 +/* 8020BBA4 00208B04 CB E1 00 70 */ lfd f31, 0x70(r1) +/* 8020BBA8 00208B08 E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 +/* 8020BBAC 00208B0C CB C1 00 60 */ lfd f30, 0x60(r1) +/* 8020BBB0 00208B10 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 8020BBB4 00208B14 80 01 00 84 */ lwz r0, 0x84(r1) +/* 8020BBB8 00208B18 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 8020BBBC 00208B1C 7C 08 03 A6 */ mtlr r0 +/* 8020BBC0 00208B20 38 21 00 80 */ addi r1, r1, 0x80 +/* 8020BBC4 00208B24 4E 80 00 20 */ blr + +.global __dt__11CScriptMidiFv +__dt__11CScriptMidiFv: +/* 8020BBC8 00208B28 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8020BBCC 00208B2C 7C 08 02 A6 */ mflr r0 +/* 8020BBD0 00208B30 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020BBD4 00208B34 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8020BBD8 00208B38 7C 9F 23 78 */ mr r31, r4 +/* 8020BBDC 00208B3C 93 C1 00 08 */ stw r30, 8(r1) +/* 8020BBE0 00208B40 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8020BBE4 00208B44 41 82 00 48 */ beq lbl_8020BC2C +/* 8020BBE8 00208B48 3C 80 80 3E */ lis r4, lbl_803E7048@ha +/* 8020BBEC 00208B4C C0 22 B1 B0 */ lfs f1, lbl_805ACED0@sda21(r2) +/* 8020BBF0 00208B50 38 04 70 48 */ addi r0, r4, lbl_803E7048@l +/* 8020BBF4 00208B54 90 1E 00 00 */ stw r0, 0(r30) +/* 8020BBF8 00208B58 4B FF FD 45 */ bl StopInternal__11CScriptMidiFf +/* 8020BBFC 00208B5C 34 1E 00 34 */ addic. r0, r30, 0x34 +/* 8020BC00 00208B60 41 82 00 10 */ beq lbl_8020BC10 +/* 8020BC04 00208B64 38 7E 00 34 */ addi r3, r30, 0x34 +/* 8020BC08 00208B68 38 80 00 00 */ li r4, 0 +/* 8020BC0C 00208B6C 48 13 52 35 */ bl __dt__6CTokenFv +lbl_8020BC10: +/* 8020BC10 00208B70 7F C3 F3 78 */ mr r3, r30 +/* 8020BC14 00208B74 38 80 00 00 */ li r4, 0 +/* 8020BC18 00208B78 4B E4 56 5D */ bl __dt__7CEntityFv +/* 8020BC1C 00208B7C 7F E0 07 35 */ extsh. r0, r31 +/* 8020BC20 00208B80 40 81 00 0C */ ble lbl_8020BC2C +/* 8020BC24 00208B84 7F C3 F3 78 */ mr r3, r30 +/* 8020BC28 00208B88 48 10 9D 09 */ bl Free__7CMemoryFPCv +lbl_8020BC2C: +/* 8020BC2C 00208B8C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8020BC30 00208B90 7F C3 F3 78 */ mr r3, r30 +/* 8020BC34 00208B94 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8020BC38 00208B98 83 C1 00 08 */ lwz r30, 8(r1) +/* 8020BC3C 00208B9C 7C 08 03 A6 */ mtlr r0 +/* 8020BC40 00208BA0 38 21 00 10 */ addi r1, r1, 0x10 +/* 8020BC44 00208BA4 4E 80 00 20 */ blr + +.global AcceptScriptMsg__11CScriptMidiF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__11CScriptMidiF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 8020BC48 00208BA8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8020BC4C 00208BAC 7C 08 02 A6 */ mflr r0 +/* 8020BC50 00208BB0 90 01 00 24 */ stw r0, 0x24(r1) +/* 8020BC54 00208BB4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8020BC58 00208BB8 7C DF 33 78 */ mr r31, r6 +/* 8020BC5C 00208BBC 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8020BC60 00208BC0 7C 9E 23 78 */ mr r30, r4 +/* 8020BC64 00208BC4 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8020BC68 00208BC8 7C 7D 1B 78 */ mr r29, r3 +/* 8020BC6C 00208BCC A0 05 00 00 */ lhz r0, 0(r5) +/* 8020BC70 00208BD0 38 A1 00 08 */ addi r5, r1, 8 +/* 8020BC74 00208BD4 B0 01 00 08 */ sth r0, 8(r1) +/* 8020BC78 00208BD8 4B E4 54 E5 */ bl AcceptScriptMsg__7CEntityF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 8020BC7C 00208BDC 2C 1E 00 0F */ cmpwi r30, 0xf +/* 8020BC80 00208BE0 41 82 00 40 */ beq lbl_8020BCC0 +/* 8020BC84 00208BE4 40 80 00 10 */ bge lbl_8020BC94 +/* 8020BC88 00208BE8 2C 1E 00 04 */ cmpwi r30, 4 +/* 8020BC8C 00208BEC 41 82 00 54 */ beq lbl_8020BCE0 +/* 8020BC90 00208BF0 48 00 00 5C */ b lbl_8020BCEC +lbl_8020BC94: +/* 8020BC94 00208BF4 2C 1E 00 14 */ cmpwi r30, 0x14 +/* 8020BC98 00208BF8 41 82 00 08 */ beq lbl_8020BCA0 +/* 8020BC9C 00208BFC 48 00 00 50 */ b lbl_8020BCEC +lbl_8020BCA0: +/* 8020BCA0 00208C00 88 1D 00 30 */ lbz r0, 0x30(r29) +/* 8020BCA4 00208C04 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8020BCA8 00208C08 41 82 00 44 */ beq lbl_8020BCEC +/* 8020BCAC 00208C0C C0 3D 00 40 */ lfs f1, 0x40(r29) +/* 8020BCB0 00208C10 7F A3 EB 78 */ mr r3, r29 +/* 8020BCB4 00208C14 7F E4 FB 78 */ mr r4, r31 +/* 8020BCB8 00208C18 4B FF FD 95 */ bl Play__11CScriptMidiFR13CStateManagerf +/* 8020BCBC 00208C1C 48 00 00 30 */ b lbl_8020BCEC +lbl_8020BCC0: +/* 8020BCC0 00208C20 88 1D 00 30 */ lbz r0, 0x30(r29) +/* 8020BCC4 00208C24 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8020BCC8 00208C28 41 82 00 24 */ beq lbl_8020BCEC +/* 8020BCCC 00208C2C C0 3D 00 44 */ lfs f1, 0x44(r29) +/* 8020BCD0 00208C30 7F A3 EB 78 */ mr r3, r29 +/* 8020BCD4 00208C34 7F E4 FB 78 */ mr r4, r31 +/* 8020BCD8 00208C38 4B FF FC B9 */ bl Stop__11CScriptMidiFR13CStateManagerf +/* 8020BCDC 00208C3C 48 00 00 10 */ b lbl_8020BCEC +lbl_8020BCE0: +/* 8020BCE0 00208C40 C0 22 B1 B0 */ lfs f1, lbl_805ACED0@sda21(r2) +/* 8020BCE4 00208C44 7F A3 EB 78 */ mr r3, r29 +/* 8020BCE8 00208C48 4B FF FC 55 */ bl StopInternal__11CScriptMidiFf +lbl_8020BCEC: +/* 8020BCEC 00208C4C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8020BCF0 00208C50 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8020BCF4 00208C54 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8020BCF8 00208C58 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8020BCFC 00208C5C 7C 08 03 A6 */ mtlr r0 +/* 8020BD00 00208C60 38 21 00 20 */ addi r1, r1, 0x20 +/* 8020BD04 00208C64 4E 80 00 20 */ blr + +.global Accept__11CScriptMidiFR8IVisitor +Accept__11CScriptMidiFR8IVisitor: +/* 8020BD08 00208C68 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8020BD0C 00208C6C 7C 08 02 A6 */ mflr r0 +/* 8020BD10 00208C70 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020BD14 00208C74 7C 60 1B 78 */ mr r0, r3 +/* 8020BD18 00208C78 7C 83 23 78 */ mr r3, r4 +/* 8020BD1C 00208C7C 81 84 00 00 */ lwz r12, 0(r4) +/* 8020BD20 00208C80 7C 04 03 78 */ mr r4, r0 +/* 8020BD24 00208C84 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 8020BD28 00208C88 7D 89 03 A6 */ mtctr r12 +/* 8020BD2C 00208C8C 4E 80 04 21 */ bctrl +/* 8020BD30 00208C90 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8020BD34 00208C94 7C 08 03 A6 */ mtlr r0 +/* 8020BD38 00208C98 38 21 00 10 */ addi r1, r1, 0x10 +/* 8020BD3C 00208C9C 4E 80 00 20 */ blr + +.global "__ct__11CScriptMidiF9TUniqueIdRC11CEntityInfoRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>bUiffi" +"__ct__11CScriptMidiF9TUniqueIdRC11CEntityInfoRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>bUiffi": +/* 8020BD40 00208CA0 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8020BD44 00208CA4 7C 08 02 A6 */ mflr r0 +/* 8020BD48 00208CA8 90 01 00 44 */ stw r0, 0x44(r1) +/* 8020BD4C 00208CAC DB E1 00 38 */ stfd f31, 0x38(r1) +/* 8020BD50 00208CB0 FF E0 10 90 */ fmr f31, f2 +/* 8020BD54 00208CB4 DB C1 00 30 */ stfd f30, 0x30(r1) +/* 8020BD58 00208CB8 FF C0 08 90 */ fmr f30, f1 +/* 8020BD5C 00208CBC 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8020BD60 00208CC0 7D 3F 4B 78 */ mr r31, r9 +/* 8020BD64 00208CC4 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8020BD68 00208CC8 7D 1E 43 78 */ mr r30, r8 +/* 8020BD6C 00208CCC 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8020BD70 00208CD0 7C 7D 1B 78 */ mr r29, r3 +/* 8020BD74 00208CD4 A0 04 00 00 */ lhz r0, 0(r4) +/* 8020BD78 00208CD8 7C C4 33 78 */ mr r4, r6 +/* 8020BD7C 00208CDC 7C E6 3B 78 */ mr r6, r7 +/* 8020BD80 00208CE0 B0 01 00 08 */ sth r0, 8(r1) +/* 8020BD84 00208CE4 7C 87 23 78 */ mr r7, r4 +/* 8020BD88 00208CE8 38 81 00 08 */ addi r4, r1, 8 +/* 8020BD8C 00208CEC 4B E4 55 99 */ bl "__ct__7CEntityF9TUniqueIdRC11CEntityInfobRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8020BD90 00208CF0 3C 60 80 3E */ lis r3, lbl_803E7048@ha +/* 8020BD94 00208CF4 3C 80 43 53 */ lis r4, 0x43534E47@ha +/* 8020BD98 00208CF8 38 03 70 48 */ addi r0, r3, lbl_803E7048@l +/* 8020BD9C 00208CFC 38 61 00 0C */ addi r3, r1, 0xc +/* 8020BDA0 00208D00 90 1D 00 00 */ stw r0, 0(r29) +/* 8020BDA4 00208D04 38 04 4E 47 */ addi r0, r4, 0x43534E47@l +/* 8020BDA8 00208D08 38 A1 00 14 */ addi r5, r1, 0x14 +/* 8020BDAC 00208D0C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020BDB0 00208D10 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8020BDB4 00208D14 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8020BDB8 00208D18 81 84 00 00 */ lwz r12, 0(r4) +/* 8020BDBC 00208D1C 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8020BDC0 00208D20 7D 89 03 A6 */ mtctr r12 +/* 8020BDC4 00208D24 4E 80 04 21 */ bctrl +/* 8020BDC8 00208D28 38 7D 00 34 */ addi r3, r29, 0x34 +/* 8020BDCC 00208D2C 38 81 00 0C */ addi r4, r1, 0xc +/* 8020BDD0 00208D30 48 13 50 D9 */ bl __ct__6CTokenFRC6CToken +/* 8020BDD4 00208D34 38 61 00 0C */ addi r3, r1, 0xc +/* 8020BDD8 00208D38 38 80 FF FF */ li r4, -1 +/* 8020BDDC 00208D3C 48 13 50 65 */ bl __dt__6CTokenFv +/* 8020BDE0 00208D40 38 00 00 00 */ li r0, 0 +/* 8020BDE4 00208D44 7F A3 EB 78 */ mr r3, r29 +/* 8020BDE8 00208D48 90 1D 00 3C */ stw r0, 0x3c(r29) +/* 8020BDEC 00208D4C D3 DD 00 40 */ stfs f30, 0x40(r29) +/* 8020BDF0 00208D50 D3 FD 00 44 */ stfs f31, 0x44(r29) +/* 8020BDF4 00208D54 B3 FD 00 48 */ sth r31, 0x48(r29) +/* 8020BDF8 00208D58 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8020BDFC 00208D5C CB E1 00 38 */ lfd f31, 0x38(r1) +/* 8020BE00 00208D60 CB C1 00 30 */ lfd f30, 0x30(r1) +/* 8020BE04 00208D64 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8020BE08 00208D68 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8020BE0C 00208D6C 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8020BE10 00208D70 7C 08 03 A6 */ mtlr r0 +/* 8020BE14 00208D74 38 21 00 40 */ addi r1, r1, 0x40 +/* 8020BE18 00208D78 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/ScriptObjects/CScriptPlayerActor.s b/asm/Kyoto_CWD/ScriptObjects/CScriptPlayerActor.s new file mode 100644 index 00000000..491652f2 --- /dev/null +++ b/asm/Kyoto_CWD/ScriptObjects/CScriptPlayerActor.s @@ -0,0 +1,2238 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__18CScriptPlayerActorFv +__dt__18CScriptPlayerActorFv: +/* 801AA284 001A71E4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801AA288 001A71E8 7C 08 02 A6 */ mflr r0 +/* 801AA28C 001A71EC 90 01 00 24 */ stw r0, 0x24(r1) +/* 801AA290 001A71F0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801AA294 001A71F4 7C 9F 23 78 */ mr r31, r4 +/* 801AA298 001A71F8 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801AA29C 001A71FC 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801AA2A0 001A7200 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801AA2A4 001A7204 41 82 01 38 */ beq lbl_801AA3DC +/* 801AA2A8 001A7208 3C 60 80 3E */ lis r3, lbl_803E4BE0@ha +/* 801AA2AC 001A720C 34 1E 03 38 */ addic. r0, r30, 0x338 +/* 801AA2B0 001A7210 38 03 4B E0 */ addi r0, r3, lbl_803E4BE0@l +/* 801AA2B4 001A7214 90 1E 00 00 */ stw r0, 0(r30) +/* 801AA2B8 001A7218 41 82 00 30 */ beq lbl_801AA2E8 +/* 801AA2BC 001A721C 88 1E 03 44 */ lbz r0, 0x344(r30) +/* 801AA2C0 001A7220 28 00 00 00 */ cmplwi r0, 0 +/* 801AA2C4 001A7224 41 82 00 1C */ beq lbl_801AA2E0 +/* 801AA2C8 001A7228 34 7E 03 38 */ addic. r3, r30, 0x338 +/* 801AA2CC 001A722C 41 82 00 14 */ beq lbl_801AA2E0 +/* 801AA2D0 001A7230 28 03 00 00 */ cmplwi r3, 0 +/* 801AA2D4 001A7234 41 82 00 0C */ beq lbl_801AA2E0 +/* 801AA2D8 001A7238 38 80 00 00 */ li r4, 0 +/* 801AA2DC 001A723C 48 19 6B 65 */ bl __dt__6CTokenFv +lbl_801AA2E0: +/* 801AA2E0 001A7240 38 00 00 00 */ li r0, 0 +/* 801AA2E4 001A7244 98 1E 03 44 */ stb r0, 0x344(r30) +lbl_801AA2E8: +/* 801AA2E8 001A7248 34 1E 03 28 */ addic. r0, r30, 0x328 +/* 801AA2EC 001A724C 41 82 00 30 */ beq lbl_801AA31C +/* 801AA2F0 001A7250 88 1E 03 34 */ lbz r0, 0x334(r30) +/* 801AA2F4 001A7254 28 00 00 00 */ cmplwi r0, 0 +/* 801AA2F8 001A7258 41 82 00 1C */ beq lbl_801AA314 +/* 801AA2FC 001A725C 34 7E 03 28 */ addic. r3, r30, 0x328 +/* 801AA300 001A7260 41 82 00 14 */ beq lbl_801AA314 +/* 801AA304 001A7264 28 03 00 00 */ cmplwi r3, 0 +/* 801AA308 001A7268 41 82 00 0C */ beq lbl_801AA314 +/* 801AA30C 001A726C 38 80 00 00 */ li r4, 0 +/* 801AA310 001A7270 48 19 6B 31 */ bl __dt__6CTokenFv +lbl_801AA314: +/* 801AA314 001A7274 38 00 00 00 */ li r0, 0 +/* 801AA318 001A7278 98 1E 03 34 */ stb r0, 0x334(r30) +lbl_801AA31C: +/* 801AA31C 001A727C 34 1E 03 24 */ addic. r0, r30, 0x324 +/* 801AA320 001A7280 41 82 00 24 */ beq lbl_801AA344 +/* 801AA324 001A7284 83 BE 03 24 */ lwz r29, 0x324(r30) +/* 801AA328 001A7288 28 1D 00 00 */ cmplwi r29, 0 +/* 801AA32C 001A728C 41 82 00 18 */ beq lbl_801AA344 +/* 801AA330 001A7290 7F A3 EB 78 */ mr r3, r29 +/* 801AA334 001A7294 38 80 00 00 */ li r4, 0 +/* 801AA338 001A7298 48 19 6B 09 */ bl __dt__6CTokenFv +/* 801AA33C 001A729C 7F A3 EB 78 */ mr r3, r29 +/* 801AA340 001A72A0 48 16 B5 F1 */ bl Free__7CMemoryFPCv +lbl_801AA344: +/* 801AA344 001A72A4 34 1E 03 20 */ addic. r0, r30, 0x320 +/* 801AA348 001A72A8 41 82 00 28 */ beq lbl_801AA370 +/* 801AA34C 001A72AC 83 BE 03 20 */ lwz r29, 0x320(r30) +/* 801AA350 001A72B0 28 1D 00 00 */ cmplwi r29, 0 +/* 801AA354 001A72B4 41 82 00 1C */ beq lbl_801AA370 +/* 801AA358 001A72B8 41 82 00 10 */ beq lbl_801AA368 +/* 801AA35C 001A72BC 7F A3 EB 78 */ mr r3, r29 +/* 801AA360 001A72C0 38 80 00 00 */ li r4, 0 +/* 801AA364 001A72C4 48 19 6A DD */ bl __dt__6CTokenFv +lbl_801AA368: +/* 801AA368 001A72C8 7F A3 EB 78 */ mr r3, r29 +/* 801AA36C 001A72CC 48 16 B5 C5 */ bl Free__7CMemoryFPCv +lbl_801AA370: +/* 801AA370 001A72D0 34 1E 03 1C */ addic. r0, r30, 0x31c +/* 801AA374 001A72D4 41 82 00 24 */ beq lbl_801AA398 +/* 801AA378 001A72D8 83 BE 03 1C */ lwz r29, 0x31c(r30) +/* 801AA37C 001A72DC 28 1D 00 00 */ cmplwi r29, 0 +/* 801AA380 001A72E0 41 82 00 18 */ beq lbl_801AA398 +/* 801AA384 001A72E4 7F A3 EB 78 */ mr r3, r29 +/* 801AA388 001A72E8 38 80 00 00 */ li r4, 0 +/* 801AA38C 001A72EC 48 19 6A B5 */ bl __dt__6CTokenFv +/* 801AA390 001A72F0 7F A3 EB 78 */ mr r3, r29 +/* 801AA394 001A72F4 48 16 B5 9D */ bl Free__7CMemoryFPCv +lbl_801AA398: +/* 801AA398 001A72F8 34 1E 03 18 */ addic. r0, r30, 0x318 +/* 801AA39C 001A72FC 41 82 00 10 */ beq lbl_801AA3AC +/* 801AA3A0 001A7300 80 7E 03 18 */ lwz r3, 0x318(r30) +/* 801AA3A4 001A7304 38 80 00 01 */ li r4, 1 +/* 801AA3A8 001A7308 4B F6 C6 A5 */ bl __dt__10CModelDataFv +lbl_801AA3AC: +/* 801AA3AC 001A730C 34 1E 03 14 */ addic. r0, r30, 0x314 +/* 801AA3B0 001A7310 41 82 00 10 */ beq lbl_801AA3C0 +/* 801AA3B4 001A7314 80 7E 03 14 */ lwz r3, 0x314(r30) +/* 801AA3B8 001A7318 38 80 00 01 */ li r4, 1 +/* 801AA3BC 001A731C 4B F6 C6 91 */ bl __dt__10CModelDataFv +lbl_801AA3C0: +/* 801AA3C0 001A7320 7F C3 F3 78 */ mr r3, r30 +/* 801AA3C4 001A7324 38 80 00 00 */ li r4, 0 +/* 801AA3C8 001A7328 4B EC B4 85 */ bl __dt__12CScriptActorFv +/* 801AA3CC 001A732C 7F E0 07 35 */ extsh. r0, r31 +/* 801AA3D0 001A7330 40 81 00 0C */ ble lbl_801AA3DC +/* 801AA3D4 001A7334 7F C3 F3 78 */ mr r3, r30 +/* 801AA3D8 001A7338 48 16 B5 59 */ bl Free__7CMemoryFPCv +lbl_801AA3DC: +/* 801AA3DC 001A733C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801AA3E0 001A7340 7F C3 F3 78 */ mr r3, r30 +/* 801AA3E4 001A7344 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801AA3E8 001A7348 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801AA3EC 001A734C 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801AA3F0 001A7350 7C 08 03 A6 */ mtlr r0 +/* 801AA3F4 001A7354 38 21 00 20 */ addi r1, r1, 0x20 +/* 801AA3F8 001A7358 4E 80 00 20 */ blr + +.global SetIntoStateManager__18CScriptPlayerActorFR13CStateManagerb +SetIntoStateManager__18CScriptPlayerActorFR13CStateManagerb: +/* 801AA3FC 001A735C 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801AA400 001A7360 7C 08 02 A6 */ mflr r0 +/* 801AA404 001A7364 90 01 00 64 */ stw r0, 0x64(r1) +/* 801AA408 001A7368 54 A0 06 3F */ clrlwi. r0, r5, 0x18 +/* 801AA40C 001A736C BF 61 00 4C */ stmw r27, 0x4c(r1) +/* 801AA410 001A7370 7C 7D 1B 78 */ mr r29, r3 +/* 801AA414 001A7374 7C BF 2B 78 */ mr r31, r5 +/* 801AA418 001A7378 7C 9E 23 78 */ mr r30, r4 +/* 801AA41C 001A737C A0 63 00 08 */ lhz r3, 8(r3) +/* 801AA420 001A7380 B0 61 00 30 */ sth r3, 0x30(r1) +/* 801AA424 001A7384 40 82 00 30 */ bne lbl_801AA454 +/* 801AA428 001A7388 A0 1E 0F 6C */ lhz r0, 0xf6c(r30) +/* 801AA42C 001A738C 7C 00 18 40 */ cmplw r0, r3 +/* 801AA430 001A7390 40 82 00 24 */ bne lbl_801AA454 +/* 801AA434 001A7394 A0 7D 03 56 */ lhz r3, 0x356(r29) +/* 801AA438 001A7398 B0 7E 0F 6C */ sth r3, 0xf6c(r30) +/* 801AA43C 001A739C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801AA440 001A73A0 B0 61 00 24 */ sth r3, 0x24(r1) +/* 801AA444 001A73A4 B0 61 00 28 */ sth r3, 0x28(r1) +/* 801AA448 001A73A8 B0 01 00 20 */ sth r0, 0x20(r1) +/* 801AA44C 001A73AC B0 1D 03 56 */ sth r0, 0x356(r29) +/* 801AA450 001A73B0 48 00 00 D8 */ b lbl_801AA528 +lbl_801AA454: +/* 801AA454 001A73B4 A0 1E 0F 6C */ lhz r0, 0xf6c(r30) +/* 801AA458 001A73B8 3B 60 00 00 */ li r27, 0 +/* 801AA45C 001A73BC A3 81 00 30 */ lhz r28, 0x30(r1) +/* 801AA460 001A73C0 B0 01 00 2C */ sth r0, 0x2c(r1) +/* 801AA464 001A73C4 48 00 00 98 */ b lbl_801AA4FC +lbl_801AA468: +/* 801AA468 001A73C8 A0 01 00 2C */ lhz r0, 0x2c(r1) +/* 801AA46C 001A73CC 7C 00 E0 40 */ cmplw r0, r28 +/* 801AA470 001A73D0 40 82 00 34 */ bne lbl_801AA4A4 +/* 801AA474 001A73D4 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 801AA478 001A73D8 40 82 00 B0 */ bne lbl_801AA528 +/* 801AA47C 001A73DC 28 1B 00 00 */ cmplwi r27, 0 +/* 801AA480 001A73E0 41 82 00 A8 */ beq lbl_801AA528 +/* 801AA484 001A73E4 A0 7D 03 56 */ lhz r3, 0x356(r29) +/* 801AA488 001A73E8 B0 7B 03 56 */ sth r3, 0x356(r27) +/* 801AA48C 001A73EC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801AA490 001A73F0 B0 61 00 18 */ sth r3, 0x18(r1) +/* 801AA494 001A73F4 B0 61 00 1C */ sth r3, 0x1c(r1) +/* 801AA498 001A73F8 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801AA49C 001A73FC B0 1D 03 56 */ sth r0, 0x356(r29) +/* 801AA4A0 001A7400 48 00 00 88 */ b lbl_801AA528 +lbl_801AA4A4: +/* 801AA4A4 001A7404 A0 01 00 2C */ lhz r0, 0x2c(r1) +/* 801AA4A8 001A7408 7F C3 F3 78 */ mr r3, r30 +/* 801AA4AC 001A740C 38 81 00 10 */ addi r4, r1, 0x10 +/* 801AA4B0 001A7410 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801AA4B4 001A7414 4B EA 20 C1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801AA4B8 001A7418 7C 64 1B 78 */ mr r4, r3 +/* 801AA4BC 001A741C 38 61 00 34 */ addi r3, r1, 0x34 +/* 801AA4C0 001A7420 4B F0 18 AD */ bl "__ct__26TCastToPtr<12CScriptActor>FP7CEntity" +/* 801AA4C4 001A7424 80 63 00 04 */ lwz r3, 4(r3) +/* 801AA4C8 001A7428 28 03 00 00 */ cmplwi r3, 0 +/* 801AA4CC 001A742C 41 82 00 20 */ beq lbl_801AA4EC +/* 801AA4D0 001A7430 88 03 02 E3 */ lbz r0, 0x2e3(r3) +/* 801AA4D4 001A7434 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801AA4D8 001A7438 41 82 00 14 */ beq lbl_801AA4EC +/* 801AA4DC 001A743C A0 03 03 56 */ lhz r0, 0x356(r3) +/* 801AA4E0 001A7440 7C 7B 1B 78 */ mr r27, r3 +/* 801AA4E4 001A7444 B0 01 00 2C */ sth r0, 0x2c(r1) +/* 801AA4E8 001A7448 48 00 00 14 */ b lbl_801AA4FC +lbl_801AA4EC: +/* 801AA4EC 001A744C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801AA4F0 001A7450 B0 01 00 2C */ sth r0, 0x2c(r1) +/* 801AA4F4 001A7454 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801AA4F8 001A7458 B0 1D 03 56 */ sth r0, 0x356(r29) +lbl_801AA4FC: +/* 801AA4FC 001A745C A0 61 00 2C */ lhz r3, 0x2c(r1) +/* 801AA500 001A7460 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801AA504 001A7464 7C 03 00 40 */ cmplw r3, r0 +/* 801AA508 001A7468 40 82 FF 60 */ bne lbl_801AA468 +/* 801AA50C 001A746C 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 801AA510 001A7470 41 82 00 18 */ beq lbl_801AA528 +/* 801AA514 001A7474 A0 7E 0F 6C */ lhz r3, 0xf6c(r30) +/* 801AA518 001A7478 A0 01 00 30 */ lhz r0, 0x30(r1) +/* 801AA51C 001A747C B0 7D 03 56 */ sth r3, 0x356(r29) +/* 801AA520 001A7480 B0 01 00 08 */ sth r0, 8(r1) +/* 801AA524 001A7484 B0 1E 0F 6C */ sth r0, 0xf6c(r30) +lbl_801AA528: +/* 801AA528 001A7488 BB 61 00 4C */ lmw r27, 0x4c(r1) +/* 801AA52C 001A748C 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801AA530 001A7490 7C 08 03 A6 */ mtlr r0 +/* 801AA534 001A7494 38 21 00 60 */ addi r1, r1, 0x60 +/* 801AA538 001A7498 4E 80 00 20 */ blr + +.global SetupEnvFx__18CScriptPlayerActorFRC13CStateManagerb +SetupEnvFx__18CScriptPlayerActorFRC13CStateManagerb: +/* 801AA53C 001A749C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801AA540 001A74A0 7C 08 02 A6 */ mflr r0 +/* 801AA544 001A74A4 7C 67 1B 78 */ mr r7, r3 +/* 801AA548 001A74A8 90 01 00 14 */ stw r0, 0x14(r1) +/* 801AA54C 001A74AC 54 A0 06 3F */ clrlwi. r0, r5, 0x18 +/* 801AA550 001A74B0 7C 85 23 78 */ mr r5, r4 +/* 801AA554 001A74B4 41 82 00 78 */ beq lbl_801AA5CC +/* 801AA558 001A74B8 80 65 08 50 */ lwz r3, 0x850(r5) +/* 801AA55C 001A74BC 80 85 08 80 */ lwz r4, 0x880(r5) +/* 801AA560 001A74C0 80 03 00 C4 */ lwz r0, 0xc4(r3) +/* 801AA564 001A74C4 2C 00 00 02 */ cmpwi r0, 2 +/* 801AA568 001A74C8 40 82 00 70 */ bne lbl_801AA5D8 +/* 801AA56C 001A74CC 80 C7 00 64 */ lwz r6, 0x64(r7) +/* 801AA570 001A74D0 38 60 00 00 */ li r3, 0 +/* 801AA574 001A74D4 28 06 00 00 */ cmplwi r6, 0 +/* 801AA578 001A74D8 41 82 00 20 */ beq lbl_801AA598 +/* 801AA57C 001A74DC 80 06 00 10 */ lwz r0, 0x10(r6) +/* 801AA580 001A74E0 28 00 00 00 */ cmplwi r0, 0 +/* 801AA584 001A74E4 40 82 00 10 */ bne lbl_801AA594 +/* 801AA588 001A74E8 88 06 00 28 */ lbz r0, 0x28(r6) +/* 801AA58C 001A74EC 28 00 00 00 */ cmplwi r0, 0 +/* 801AA590 001A74F0 41 82 00 08 */ beq lbl_801AA598 +lbl_801AA594: +/* 801AA594 001A74F4 38 60 00 01 */ li r3, 1 +lbl_801AA598: +/* 801AA598 001A74F8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801AA59C 001A74FC 41 82 00 3C */ beq lbl_801AA5D8 +/* 801AA5A0 001A7500 C0 24 00 30 */ lfs f1, 0x30(r4) +/* 801AA5A4 001A7504 C0 02 A8 3C */ lfs f0, lbl_805AC55C@sda21(r2) +/* 801AA5A8 001A7508 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 801AA5AC 001A750C 41 82 00 2C */ beq lbl_801AA5D8 +/* 801AA5B0 001A7510 80 65 08 84 */ lwz r3, 0x884(r5) +/* 801AA5B4 001A7514 7C E4 3B 78 */ mr r4, r7 +/* 801AA5B8 001A7518 C0 22 A8 40 */ lfs f1, lbl_805AC560@sda21(r2) +/* 801AA5BC 001A751C 38 C0 00 FA */ li r6, 0xfa +/* 801AA5C0 001A7520 38 E0 00 0A */ li r7, 0xa +/* 801AA5C4 001A7524 48 03 A9 4D */ bl AddRainSplashGenerator__20CActorModelParticlesFR6CActorR13CStateManageriif +/* 801AA5C8 001A7528 48 00 00 10 */ b lbl_801AA5D8 +lbl_801AA5CC: +/* 801AA5CC 001A752C 80 65 08 84 */ lwz r3, 0x884(r5) +/* 801AA5D0 001A7530 7C E4 3B 78 */ mr r4, r7 +/* 801AA5D4 001A7534 48 03 A8 6D */ bl RemoveRainSplashGenerator__20CActorModelParticlesFR6CActor +lbl_801AA5D8: +/* 801AA5D8 001A7538 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801AA5DC 001A753C 7C 08 03 A6 */ mtlr r0 +/* 801AA5E0 001A7540 38 21 00 10 */ addi r1, r1, 0x10 +/* 801AA5E4 001A7544 4E 80 00 20 */ blr + +.global SetActive__18CScriptPlayerActorFb +SetActive__18CScriptPlayerActorFb: +/* 801AA5E8 001A7548 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801AA5EC 001A754C 7C 08 02 A6 */ mflr r0 +/* 801AA5F0 001A7550 90 01 00 14 */ stw r0, 0x14(r1) +/* 801AA5F4 001A7554 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801AA5F8 001A7558 7C 7F 1B 78 */ mr r31, r3 +/* 801AA5FC 001A755C 4B EA 92 51 */ bl SetActive__6CActorFb +/* 801AA600 001A7560 88 1F 00 E7 */ lbz r0, 0xe7(r31) +/* 801AA604 001A7564 38 60 00 01 */ li r3, 1 +/* 801AA608 001A7568 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801AA60C 001A756C 98 1F 00 E7 */ stb r0, 0xe7(r31) +/* 801AA610 001A7570 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801AA614 001A7574 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801AA618 001A7578 7C 08 03 A6 */ mtlr r0 +/* 801AA61C 001A757C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801AA620 001A7580 4E 80 00 20 */ blr + +.global PreRender__18CScriptPlayerActorFR13CStateManagerRC14CFrustumPlanes +PreRender__18CScriptPlayerActorFR13CStateManagerRC14CFrustumPlanes: +/* 801AA624 001A7584 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801AA628 001A7588 7C 08 02 A6 */ mflr r0 +/* 801AA62C 001A758C 90 01 00 34 */ stw r0, 0x34(r1) +/* 801AA630 001A7590 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801AA634 001A7594 7C BF 2B 78 */ mr r31, r5 +/* 801AA638 001A7598 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801AA63C 001A759C 7C 9E 23 78 */ mr r30, r4 +/* 801AA640 001A75A0 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801AA644 001A75A4 7C 7D 1B 78 */ mr r29, r3 +/* 801AA648 001A75A8 93 81 00 20 */ stw r28, 0x20(r1) +/* 801AA64C 001A75AC 88 03 03 34 */ lbz r0, 0x334(r3) +/* 801AA650 001A75B0 28 00 00 00 */ cmplwi r0, 0 +/* 801AA654 001A75B4 41 82 00 E0 */ beq lbl_801AA734 +/* 801AA658 001A75B8 80 7D 03 48 */ lwz r3, 0x348(r29) +/* 801AA65C 001A75BC 2C 03 00 00 */ cmpwi r3, 0 +/* 801AA660 001A75C0 40 82 00 CC */ bne lbl_801AA72C +/* 801AA664 001A75C4 3B 9D 03 28 */ addi r28, r29, 0x328 +/* 801AA668 001A75C8 38 81 00 08 */ addi r4, r1, 8 +/* 801AA66C 001A75CC 38 00 00 00 */ li r0, 0 +/* 801AA670 001A75D0 7C 1C 20 40 */ cmplw r28, r4 +/* 801AA674 001A75D4 98 01 00 14 */ stb r0, 0x14(r1) +/* 801AA678 001A75D8 41 82 00 84 */ beq lbl_801AA6FC +/* 801AA67C 001A75DC 28 00 00 00 */ cmplwi r0, 0 +/* 801AA680 001A75E0 41 82 00 50 */ beq lbl_801AA6D0 +/* 801AA684 001A75E4 88 1D 03 34 */ lbz r0, 0x334(r29) +/* 801AA688 001A75E8 28 00 00 00 */ cmplwi r0, 0 +/* 801AA68C 001A75EC 40 82 00 30 */ bne lbl_801AA6BC +/* 801AA690 001A75F0 37 9D 03 28 */ addic. r28, r29, 0x328 +/* 801AA694 001A75F4 41 82 00 1C */ beq lbl_801AA6B0 +/* 801AA698 001A75F8 7F 83 E3 78 */ mr r3, r28 +/* 801AA69C 001A75FC 48 19 68 0D */ bl __ct__6CTokenFRC6CToken +/* 801AA6A0 001A7600 80 01 00 10 */ lwz r0, 0x10(r1) +/* 801AA6A4 001A7604 7F 83 E3 78 */ mr r3, r28 +/* 801AA6A8 001A7608 90 1C 00 08 */ stw r0, 8(r28) +/* 801AA6AC 001A760C 48 19 66 D9 */ bl Lock__6CTokenFv +lbl_801AA6B0: +/* 801AA6B0 001A7610 38 00 00 01 */ li r0, 1 +/* 801AA6B4 001A7614 98 1D 03 34 */ stb r0, 0x334(r29) +/* 801AA6B8 001A7618 48 00 00 44 */ b lbl_801AA6FC +lbl_801AA6BC: +/* 801AA6BC 001A761C 7F 83 E3 78 */ mr r3, r28 +/* 801AA6C0 001A7620 48 19 66 05 */ bl __as__6CTokenFRC6CToken +/* 801AA6C4 001A7624 80 01 00 10 */ lwz r0, 0x10(r1) +/* 801AA6C8 001A7628 90 1C 00 08 */ stw r0, 8(r28) +/* 801AA6CC 001A762C 48 00 00 30 */ b lbl_801AA6FC +lbl_801AA6D0: +/* 801AA6D0 001A7630 88 1D 03 34 */ lbz r0, 0x334(r29) +/* 801AA6D4 001A7634 28 00 00 00 */ cmplwi r0, 0 +/* 801AA6D8 001A7638 41 82 00 1C */ beq lbl_801AA6F4 +/* 801AA6DC 001A763C 34 7D 03 28 */ addic. r3, r29, 0x328 +/* 801AA6E0 001A7640 41 82 00 14 */ beq lbl_801AA6F4 +/* 801AA6E4 001A7644 28 03 00 00 */ cmplwi r3, 0 +/* 801AA6E8 001A7648 41 82 00 0C */ beq lbl_801AA6F4 +/* 801AA6EC 001A764C 38 80 00 00 */ li r4, 0 +/* 801AA6F0 001A7650 48 19 67 51 */ bl __dt__6CTokenFv +lbl_801AA6F4: +/* 801AA6F4 001A7654 38 00 00 00 */ li r0, 0 +/* 801AA6F8 001A7658 98 1D 03 34 */ stb r0, 0x334(r29) +lbl_801AA6FC: +/* 801AA6FC 001A765C 88 01 00 14 */ lbz r0, 0x14(r1) +/* 801AA700 001A7660 28 00 00 00 */ cmplwi r0, 0 +/* 801AA704 001A7664 41 82 00 1C */ beq lbl_801AA720 +/* 801AA708 001A7668 34 61 00 08 */ addic. r3, r1, 8 +/* 801AA70C 001A766C 41 82 00 14 */ beq lbl_801AA720 +/* 801AA710 001A7670 28 03 00 00 */ cmplwi r3, 0 +/* 801AA714 001A7674 41 82 00 0C */ beq lbl_801AA720 +/* 801AA718 001A7678 38 80 00 00 */ li r4, 0 +/* 801AA71C 001A767C 48 19 67 25 */ bl __dt__6CTokenFv +lbl_801AA720: +/* 801AA720 001A7680 38 00 00 00 */ li r0, 0 +/* 801AA724 001A7684 98 01 00 14 */ stb r0, 0x14(r1) +/* 801AA728 001A7688 48 00 00 0C */ b lbl_801AA734 +lbl_801AA72C: +/* 801AA72C 001A768C 38 03 FF FF */ addi r0, r3, -1 +/* 801AA730 001A7690 90 1D 03 48 */ stw r0, 0x348(r29) +lbl_801AA734: +/* 801AA734 001A7694 80 1D 02 EC */ lwz r0, 0x2ec(r29) +/* 801AA738 001A7698 2C 00 00 03 */ cmpwi r0, 3 +/* 801AA73C 001A769C 40 82 00 0C */ bne lbl_801AA748 +/* 801AA740 001A76A0 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801AA744 001A76A4 48 10 B8 2D */ bl AllocatePhazonSuitMaskTexture__13CCubeRendererFv +lbl_801AA748: +/* 801AA748 001A76A8 7F A3 EB 78 */ mr r3, r29 +/* 801AA74C 001A76AC 7F C4 F3 78 */ mr r4, r30 +/* 801AA750 001A76B0 7F E5 FB 78 */ mr r5, r31 +/* 801AA754 001A76B4 4B EC A9 69 */ bl PreRender__12CScriptActorFR13CStateManagerRC14CFrustumPlanes +/* 801AA758 001A76B8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801AA75C 001A76BC 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801AA760 001A76C0 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801AA764 001A76C4 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801AA768 001A76C8 83 81 00 20 */ lwz r28, 0x20(r1) +/* 801AA76C 001A76CC 7C 08 03 A6 */ mtlr r0 +/* 801AA770 001A76D0 38 21 00 30 */ addi r1, r1, 0x30 +/* 801AA774 001A76D4 4E 80 00 20 */ blr + +.global GetSuitCharIdx__18CScriptPlayerActorCFRC13CStateManager11EPlayerSuit +GetSuitCharIdx__18CScriptPlayerActorCFRC13CStateManager11EPlayerSuit: +/* 801AA778 001A76D8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801AA77C 001A76DC 7C 08 02 A6 */ mflr r0 +/* 801AA780 001A76E0 90 01 00 14 */ stw r0, 0x14(r1) +/* 801AA784 001A76E4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801AA788 001A76E8 7C BF 2B 78 */ mr r31, r5 +/* 801AA78C 001A76EC 80 64 08 B8 */ lwz r3, 0x8b8(r4) +/* 801AA790 001A76F0 80 63 00 00 */ lwz r3, 0(r3) +/* 801AA794 001A76F4 4B EE 6D 31 */ bl GetIsFusionEnabled__12CPlayerStateFv +/* 801AA798 001A76F8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801AA79C 001A76FC 41 82 00 48 */ beq lbl_801AA7E4 +/* 801AA7A0 001A7700 2C 1F 00 02 */ cmpwi r31, 2 +/* 801AA7A4 001A7704 41 82 00 2C */ beq lbl_801AA7D0 +/* 801AA7A8 001A7708 40 80 00 14 */ bge lbl_801AA7BC +/* 801AA7AC 001A770C 2C 1F 00 00 */ cmpwi r31, 0 +/* 801AA7B0 001A7710 41 82 00 18 */ beq lbl_801AA7C8 +/* 801AA7B4 001A7714 40 80 00 24 */ bge lbl_801AA7D8 +/* 801AA7B8 001A7718 48 00 00 2C */ b lbl_801AA7E4 +lbl_801AA7BC: +/* 801AA7BC 001A771C 2C 1F 00 04 */ cmpwi r31, 4 +/* 801AA7C0 001A7720 40 80 00 24 */ bge lbl_801AA7E4 +/* 801AA7C4 001A7724 48 00 00 1C */ b lbl_801AA7E0 +lbl_801AA7C8: +/* 801AA7C8 001A7728 3B E0 00 04 */ li r31, 4 +/* 801AA7CC 001A772C 48 00 00 18 */ b lbl_801AA7E4 +lbl_801AA7D0: +/* 801AA7D0 001A7730 3B E0 00 07 */ li r31, 7 +/* 801AA7D4 001A7734 48 00 00 10 */ b lbl_801AA7E4 +lbl_801AA7D8: +/* 801AA7D8 001A7738 3B E0 00 06 */ li r31, 6 +/* 801AA7DC 001A773C 48 00 00 08 */ b lbl_801AA7E4 +lbl_801AA7E0: +/* 801AA7E0 001A7740 3B E0 00 08 */ li r31, 8 +lbl_801AA7E4: +/* 801AA7E4 001A7744 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801AA7E8 001A7748 7F E3 FB 78 */ mr r3, r31 +/* 801AA7EC 001A774C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801AA7F0 001A7750 7C 08 03 A6 */ mtlr r0 +/* 801AA7F4 001A7754 38 21 00 10 */ addi r1, r1, 0x10 +/* 801AA7F8 001A7758 4E 80 00 20 */ blr + +.global GetNextSuitCharIdx__18CScriptPlayerActorFRC13CStateManager +GetNextSuitCharIdx__18CScriptPlayerActorFRC13CStateManager: +/* 801AA7FC 001A775C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801AA800 001A7760 7C 08 02 A6 */ mflr r0 +/* 801AA804 001A7764 38 A0 00 03 */ li r5, 3 +/* 801AA808 001A7768 90 01 00 14 */ stw r0, 0x14(r1) +/* 801AA80C 001A776C 80 03 03 50 */ lwz r0, 0x350(r3) +/* 801AA810 001A7770 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e +/* 801AA814 001A7774 41 82 00 44 */ beq lbl_801AA858 +/* 801AA818 001A7778 80 03 03 08 */ lwz r0, 0x308(r3) +/* 801AA81C 001A777C 2C 00 00 02 */ cmpwi r0, 2 +/* 801AA820 001A7780 41 82 00 30 */ beq lbl_801AA850 +/* 801AA824 001A7784 40 80 00 10 */ bge lbl_801AA834 +/* 801AA828 001A7788 2C 00 00 01 */ cmpwi r0, 1 +/* 801AA82C 001A778C 40 80 00 14 */ bge lbl_801AA840 +/* 801AA830 001A7790 48 00 00 20 */ b lbl_801AA850 +lbl_801AA834: +/* 801AA834 001A7794 2C 00 00 04 */ cmpwi r0, 4 +/* 801AA838 001A7798 40 80 00 18 */ bge lbl_801AA850 +/* 801AA83C 001A779C 48 00 00 0C */ b lbl_801AA848 +lbl_801AA840: +/* 801AA840 001A77A0 38 A0 00 02 */ li r5, 2 +/* 801AA844 001A77A4 48 00 00 50 */ b lbl_801AA894 +lbl_801AA848: +/* 801AA848 001A77A8 38 A0 00 01 */ li r5, 1 +/* 801AA84C 001A77AC 48 00 00 48 */ b lbl_801AA894 +lbl_801AA850: +/* 801AA850 001A77B0 38 A0 00 00 */ li r5, 0 +/* 801AA854 001A77B4 48 00 00 40 */ b lbl_801AA894 +lbl_801AA858: +/* 801AA858 001A77B8 80 03 03 08 */ lwz r0, 0x308(r3) +/* 801AA85C 001A77BC 2C 00 00 01 */ cmpwi r0, 1 +/* 801AA860 001A77C0 41 82 00 30 */ beq lbl_801AA890 +/* 801AA864 001A77C4 40 80 00 10 */ bge lbl_801AA874 +/* 801AA868 001A77C8 2C 00 00 00 */ cmpwi r0, 0 +/* 801AA86C 001A77CC 40 80 00 14 */ bge lbl_801AA880 +/* 801AA870 001A77D0 48 00 00 24 */ b lbl_801AA894 +lbl_801AA874: +/* 801AA874 001A77D4 2C 00 00 03 */ cmpwi r0, 3 +/* 801AA878 001A77D8 40 80 00 1C */ bge lbl_801AA894 +/* 801AA87C 001A77DC 48 00 00 0C */ b lbl_801AA888 +lbl_801AA880: +/* 801AA880 001A77E0 38 A0 00 02 */ li r5, 2 +/* 801AA884 001A77E4 48 00 00 10 */ b lbl_801AA894 +lbl_801AA888: +/* 801AA888 001A77E8 38 A0 00 01 */ li r5, 1 +/* 801AA88C 001A77EC 48 00 00 08 */ b lbl_801AA894 +lbl_801AA890: +/* 801AA890 001A77F0 38 A0 00 03 */ li r5, 3 +lbl_801AA894: +/* 801AA894 001A77F4 4B FF FE E5 */ bl GetSuitCharIdx__18CScriptPlayerActorCFRC13CStateManager11EPlayerSuit +/* 801AA898 001A77F8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801AA89C 001A77FC 7C 08 03 A6 */ mtlr r0 +/* 801AA8A0 001A7800 38 21 00 10 */ addi r1, r1, 0x10 +/* 801AA8A4 001A7804 4E 80 00 20 */ blr + +.global PumpBeamModel__18CScriptPlayerActorFRC13CStateManager +PumpBeamModel__18CScriptPlayerActorFRC13CStateManager: +/* 801AA8A8 001A7808 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801AA8AC 001A780C 7C 08 02 A6 */ mflr r0 +/* 801AA8B0 001A7810 90 01 00 14 */ stw r0, 0x14(r1) +/* 801AA8B4 001A7814 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801AA8B8 001A7818 7C 9F 23 78 */ mr r31, r4 +/* 801AA8BC 001A781C 93 C1 00 08 */ stw r30, 8(r1) +/* 801AA8C0 001A7820 7C 7E 1B 78 */ mr r30, r3 +/* 801AA8C4 001A7824 80 83 03 1C */ lwz r4, 0x31c(r3) +/* 801AA8C8 001A7828 28 04 00 00 */ cmplwi r4, 0 +/* 801AA8CC 001A782C 41 82 00 64 */ beq lbl_801AA930 +/* 801AA8D0 001A7830 80 84 00 00 */ lwz r4, 0(r4) +/* 801AA8D4 001A7834 80 04 00 10 */ lwz r0, 0x10(r4) +/* 801AA8D8 001A7838 28 00 00 00 */ cmplwi r0, 0 +/* 801AA8DC 001A783C 41 82 00 54 */ beq lbl_801AA930 +/* 801AA8E0 001A7840 48 00 07 F1 */ bl BuildBeamModelData__18CScriptPlayerActorFv +/* 801AA8E4 001A7844 80 7E 03 14 */ lwz r3, 0x314(r30) +/* 801AA8E8 001A7848 7F E4 FB 78 */ mr r4, r31 +/* 801AA8EC 001A784C 38 A0 00 00 */ li r5, 0 +/* 801AA8F0 001A7850 4B F6 B4 21 */ bl Touch__10CModelDataCFRC13CStateManageri +/* 801AA8F4 001A7854 80 7F 08 50 */ lwz r3, 0x850(r31) +/* 801AA8F8 001A7858 4B EA B4 69 */ bl CyclePauseState__6CWorldFv +/* 801AA8FC 001A785C 83 FE 03 1C */ lwz r31, 0x31c(r30) +/* 801AA900 001A7860 28 1F 00 00 */ cmplwi r31, 0 +/* 801AA904 001A7864 41 82 00 18 */ beq lbl_801AA91C +/* 801AA908 001A7868 7F E3 FB 78 */ mr r3, r31 +/* 801AA90C 001A786C 38 80 00 00 */ li r4, 0 +/* 801AA910 001A7870 48 19 65 31 */ bl __dt__6CTokenFv +/* 801AA914 001A7874 7F E3 FB 78 */ mr r3, r31 +/* 801AA918 001A7878 48 16 B0 19 */ bl Free__7CMemoryFPCv +lbl_801AA91C: +/* 801AA91C 001A787C 38 60 00 00 */ li r3, 0 +/* 801AA920 001A7880 90 7E 03 1C */ stw r3, 0x31c(r30) +/* 801AA924 001A7884 88 1E 03 54 */ lbz r0, 0x354(r30) +/* 801AA928 001A7888 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801AA92C 001A788C 98 1E 03 54 */ stb r0, 0x354(r30) +lbl_801AA930: +/* 801AA930 001A7890 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801AA934 001A7894 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801AA938 001A7898 83 C1 00 08 */ lwz r30, 8(r1) +/* 801AA93C 001A789C 7C 08 03 A6 */ mtlr r0 +/* 801AA940 001A78A0 38 21 00 10 */ addi r1, r1, 0x10 +/* 801AA944 001A78A4 4E 80 00 20 */ blr + +.global PumpSuitModel__18CScriptPlayerActorFRC13CStateManager +PumpSuitModel__18CScriptPlayerActorFRC13CStateManager: +/* 801AA948 001A78A8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801AA94C 001A78AC 7C 08 02 A6 */ mflr r0 +/* 801AA950 001A78B0 90 01 00 24 */ stw r0, 0x24(r1) +/* 801AA954 001A78B4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801AA958 001A78B8 7C 9F 23 78 */ mr r31, r4 +/* 801AA95C 001A78BC 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801AA960 001A78C0 7C 7E 1B 78 */ mr r30, r3 +/* 801AA964 001A78C4 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801AA968 001A78C8 83 A3 03 20 */ lwz r29, 0x320(r3) +/* 801AA96C 001A78CC 28 1D 00 00 */ cmplwi r29, 0 +/* 801AA970 001A78D0 41 82 01 68 */ beq lbl_801AAAD8 +/* 801AA974 001A78D4 80 1D 00 08 */ lwz r0, 8(r29) +/* 801AA978 001A78D8 28 00 00 00 */ cmplwi r0, 0 +/* 801AA97C 001A78DC 41 82 00 0C */ beq lbl_801AA988 +/* 801AA980 001A78E0 38 60 00 01 */ li r3, 1 +/* 801AA984 001A78E4 48 00 00 3C */ b lbl_801AA9C0 +lbl_801AA988: +/* 801AA988 001A78E8 88 1D 00 04 */ lbz r0, 4(r29) +/* 801AA98C 001A78EC 28 00 00 00 */ cmplwi r0, 0 +/* 801AA990 001A78F0 41 82 00 2C */ beq lbl_801AA9BC +/* 801AA994 001A78F4 80 7D 00 00 */ lwz r3, 0(r29) +/* 801AA998 001A78F8 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801AA99C 001A78FC 28 00 00 00 */ cmplwi r0, 0 +/* 801AA9A0 001A7900 41 82 00 1C */ beq lbl_801AA9BC +/* 801AA9A4 001A7904 7F A3 EB 78 */ mr r3, r29 +/* 801AA9A8 001A7908 48 19 64 65 */ bl GetObj__6CTokenFv +/* 801AA9AC 001A790C 80 03 00 04 */ lwz r0, 4(r3) +/* 801AA9B0 001A7910 38 60 00 01 */ li r3, 1 +/* 801AA9B4 001A7914 90 1D 00 08 */ stw r0, 8(r29) +/* 801AA9B8 001A7918 48 00 00 08 */ b lbl_801AA9C0 +lbl_801AA9BC: +/* 801AA9BC 001A791C 38 60 00 00 */ li r3, 0 +lbl_801AA9C0: +/* 801AA9C0 001A7920 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801AA9C4 001A7924 41 82 01 14 */ beq lbl_801AAAD8 +/* 801AA9C8 001A7928 80 7E 03 24 */ lwz r3, 0x324(r30) +/* 801AA9CC 001A792C 80 63 00 00 */ lwz r3, 0(r3) +/* 801AA9D0 001A7930 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801AA9D4 001A7934 28 00 00 00 */ cmplwi r0, 0 +/* 801AA9D8 001A7938 41 82 01 00 */ beq lbl_801AAAD8 +/* 801AA9DC 001A793C 80 BE 03 20 */ lwz r5, 0x320(r30) +/* 801AA9E0 001A7940 38 80 00 00 */ li r4, 0 +/* 801AA9E4 001A7944 80 05 00 08 */ lwz r0, 8(r5) +/* 801AA9E8 001A7948 28 00 00 00 */ cmplwi r0, 0 +/* 801AA9EC 001A794C 40 82 00 14 */ bne lbl_801AAA00 +/* 801AA9F0 001A7950 80 65 00 00 */ lwz r3, 0(r5) +/* 801AA9F4 001A7954 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801AA9F8 001A7958 28 00 00 00 */ cmplwi r0, 0 +/* 801AA9FC 001A795C 41 82 00 08 */ beq lbl_801AAA04 +lbl_801AAA00: +/* 801AAA00 001A7960 38 80 00 01 */ li r4, 1 +lbl_801AAA04: +/* 801AAA04 001A7964 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 801AAA08 001A7968 41 82 00 D0 */ beq lbl_801AAAD8 +/* 801AAA0C 001A796C 80 65 00 08 */ lwz r3, 8(r5) +/* 801AAA10 001A7970 38 80 00 00 */ li r4, 0 +/* 801AAA14 001A7974 48 1A AC 21 */ bl Touch__6CModelCFi +/* 801AAA18 001A7978 80 7F 08 50 */ lwz r3, 0x850(r31) +/* 801AAA1C 001A797C 4B EA B3 45 */ bl CyclePauseState__6CWorldFv +/* 801AAA20 001A7980 88 9E 03 54 */ lbz r4, 0x354(r30) +/* 801AAA24 001A7984 3B A0 00 00 */ li r29, 0 +/* 801AAA28 001A7988 54 80 DF FF */ rlwinm. r0, r4, 0x1b, 0x1f, 0x1f +/* 801AAA2C 001A798C 41 82 00 20 */ beq lbl_801AAA4C +/* 801AAA30 001A7990 38 00 00 00 */ li r0, 0 +/* 801AAA34 001A7994 7F C3 F3 78 */ mr r3, r30 +/* 801AAA38 001A7998 50 04 2E B4 */ rlwimi r4, r0, 5, 0x1a, 0x1a +/* 801AAA3C 001A799C 3B A0 00 01 */ li r29, 1 +/* 801AAA40 001A79A0 98 9E 03 54 */ stb r4, 0x354(r30) +/* 801AAA44 001A79A4 48 00 03 A1 */ bl SetupOfflineModelData__18CScriptPlayerActorFv +/* 801AAA48 001A79A8 48 00 00 24 */ b lbl_801AAA6C +lbl_801AAA4C: +/* 801AAA4C 001A79AC 54 80 D7 FF */ rlwinm. r0, r4, 0x1a, 0x1f, 0x1f +/* 801AAA50 001A79B0 41 82 00 1C */ beq lbl_801AAA6C +/* 801AAA54 001A79B4 38 00 00 00 */ li r0, 0 +/* 801AAA58 001A79B8 7F C3 F3 78 */ mr r3, r30 +/* 801AAA5C 001A79BC 50 04 36 72 */ rlwimi r4, r0, 6, 0x19, 0x19 +/* 801AAA60 001A79C0 3B A0 00 01 */ li r29, 1 +/* 801AAA64 001A79C4 98 9E 03 54 */ stb r4, 0x354(r30) +/* 801AAA68 001A79C8 48 00 04 E1 */ bl SetupOnlineModelData__18CScriptPlayerActorFv +lbl_801AAA6C: +/* 801AAA6C 001A79CC 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 801AAA70 001A79D0 41 82 00 68 */ beq lbl_801AAAD8 +/* 801AAA74 001A79D4 88 1E 03 54 */ lbz r0, 0x354(r30) +/* 801AAA78 001A79D8 38 60 00 00 */ li r3, 0 +/* 801AAA7C 001A79DC 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801AAA80 001A79E0 98 1E 03 54 */ stb r0, 0x354(r30) +/* 801AAA84 001A79E4 83 FE 03 20 */ lwz r31, 0x320(r30) +/* 801AAA88 001A79E8 28 1F 00 00 */ cmplwi r31, 0 +/* 801AAA8C 001A79EC 41 82 00 1C */ beq lbl_801AAAA8 +/* 801AAA90 001A79F0 41 82 00 10 */ beq lbl_801AAAA0 +/* 801AAA94 001A79F4 7F E3 FB 78 */ mr r3, r31 +/* 801AAA98 001A79F8 38 80 00 00 */ li r4, 0 +/* 801AAA9C 001A79FC 48 19 63 A5 */ bl __dt__6CTokenFv +lbl_801AAAA0: +/* 801AAAA0 001A7A00 7F E3 FB 78 */ mr r3, r31 +/* 801AAAA4 001A7A04 48 16 AE 8D */ bl Free__7CMemoryFPCv +lbl_801AAAA8: +/* 801AAAA8 001A7A08 38 00 00 00 */ li r0, 0 +/* 801AAAAC 001A7A0C 90 1E 03 20 */ stw r0, 0x320(r30) +/* 801AAAB0 001A7A10 83 FE 03 24 */ lwz r31, 0x324(r30) +/* 801AAAB4 001A7A14 28 1F 00 00 */ cmplwi r31, 0 +/* 801AAAB8 001A7A18 41 82 00 18 */ beq lbl_801AAAD0 +/* 801AAABC 001A7A1C 7F E3 FB 78 */ mr r3, r31 +/* 801AAAC0 001A7A20 38 80 00 00 */ li r4, 0 +/* 801AAAC4 001A7A24 48 19 63 7D */ bl __dt__6CTokenFv +/* 801AAAC8 001A7A28 7F E3 FB 78 */ mr r3, r31 +/* 801AAACC 001A7A2C 48 16 AE 65 */ bl Free__7CMemoryFPCv +lbl_801AAAD0: +/* 801AAAD0 001A7A30 38 00 00 00 */ li r0, 0 +/* 801AAAD4 001A7A34 90 1E 03 24 */ stw r0, 0x324(r30) +lbl_801AAAD8: +/* 801AAAD8 001A7A38 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801AAADC 001A7A3C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801AAAE0 001A7A40 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801AAAE4 001A7A44 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801AAAE8 001A7A48 7C 08 03 A6 */ mtlr r0 +/* 801AAAEC 001A7A4C 38 21 00 20 */ addi r1, r1, 0x20 +/* 801AAAF0 001A7A50 4E 80 00 20 */ blr + +.global LoadBeam__18CScriptPlayerActorF7EBeamId +LoadBeam__18CScriptPlayerActorF7EBeamId: +/* 801AAAF4 001A7A54 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801AAAF8 001A7A58 7C 08 02 A6 */ mflr r0 +/* 801AAAFC 001A7A5C 90 01 00 34 */ stw r0, 0x34(r1) +/* 801AAB00 001A7A60 BF 61 00 1C */ stmw r27, 0x1c(r1) +/* 801AAB04 001A7A64 7C 9D 23 78 */ mr r29, r4 +/* 801AAB08 001A7A68 7C 7C 1B 78 */ mr r28, r3 +/* 801AAB0C 001A7A6C 80 03 03 0C */ lwz r0, 0x30c(r3) +/* 801AAB10 001A7A70 7C 1D 00 00 */ cmpw r29, r0 +/* 801AAB14 001A7A74 41 82 00 C4 */ beq lbl_801AABD8 +/* 801AAB18 001A7A78 80 6D A1 4C */ lwz r3, gpTweakPlayerRes@sda21(r13) +/* 801AAB1C 001A7A7C 48 00 16 F5 */ bl GetCinematicBeamResId__15CTweakPlayerResCFQ212CPlayerState7EBeamId +/* 801AAB20 001A7A80 3C 80 80 3D */ lis r4, lbl_803D14B8@ha +/* 801AAB24 001A7A84 7C 7F 1B 78 */ mr r31, r3 +/* 801AAB28 001A7A88 38 64 14 B8 */ addi r3, r4, lbl_803D14B8@l +/* 801AAB2C 001A7A8C 3B 60 00 00 */ li r27, 0 +/* 801AAB30 001A7A90 38 83 00 09 */ addi r4, r3, 9 +/* 801AAB34 001A7A94 38 60 00 08 */ li r3, 8 +/* 801AAB38 001A7A98 38 A0 00 00 */ li r5, 0 +/* 801AAB3C 001A7A9C 48 16 AD 31 */ bl __nw__FUlPCcPCc +/* 801AAB40 001A7AA0 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801AAB44 001A7AA4 41 82 00 40 */ beq lbl_801AAB84 +/* 801AAB48 001A7AA8 3C 60 43 4D */ lis r3, 0x434D444C@ha +/* 801AAB4C 001A7AAC 93 E1 00 14 */ stw r31, 0x14(r1) +/* 801AAB50 001A7AB0 38 03 44 4C */ addi r0, r3, 0x434D444C@l +/* 801AAB54 001A7AB4 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801AAB58 001A7AB8 90 01 00 10 */ stw r0, 0x10(r1) +/* 801AAB5C 001A7ABC 38 61 00 08 */ addi r3, r1, 8 +/* 801AAB60 001A7AC0 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801AAB64 001A7AC4 81 84 00 00 */ lwz r12, 0(r4) +/* 801AAB68 001A7AC8 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801AAB6C 001A7ACC 7D 89 03 A6 */ mtctr r12 +/* 801AAB70 001A7AD0 4E 80 04 21 */ bctrl +/* 801AAB74 001A7AD4 7F C3 F3 78 */ mr r3, r30 +/* 801AAB78 001A7AD8 38 81 00 08 */ addi r4, r1, 8 +/* 801AAB7C 001A7ADC 3B 60 00 01 */ li r27, 1 +/* 801AAB80 001A7AE0 48 19 63 29 */ bl __ct__6CTokenFRC6CToken +lbl_801AAB84: +/* 801AAB84 001A7AE4 83 FC 03 1C */ lwz r31, 0x31c(r28) +/* 801AAB88 001A7AE8 28 1F 00 00 */ cmplwi r31, 0 +/* 801AAB8C 001A7AEC 41 82 00 18 */ beq lbl_801AABA4 +/* 801AAB90 001A7AF0 7F E3 FB 78 */ mr r3, r31 +/* 801AAB94 001A7AF4 38 80 00 00 */ li r4, 0 +/* 801AAB98 001A7AF8 48 19 62 A9 */ bl __dt__6CTokenFv +/* 801AAB9C 001A7AFC 7F E3 FB 78 */ mr r3, r31 +/* 801AABA0 001A7B00 48 16 AD 91 */ bl Free__7CMemoryFPCv +lbl_801AABA4: +/* 801AABA4 001A7B04 7F 60 07 75 */ extsb. r0, r27 +/* 801AABA8 001A7B08 93 DC 03 1C */ stw r30, 0x31c(r28) +/* 801AABAC 001A7B0C 41 82 00 10 */ beq lbl_801AABBC +/* 801AABB0 001A7B10 38 61 00 08 */ addi r3, r1, 8 +/* 801AABB4 001A7B14 38 80 FF FF */ li r4, -1 +/* 801AABB8 001A7B18 48 19 62 89 */ bl __dt__6CTokenFv +lbl_801AABBC: +/* 801AABBC 001A7B1C 80 7C 03 1C */ lwz r3, 0x31c(r28) +/* 801AABC0 001A7B20 48 19 61 C5 */ bl Lock__6CTokenFv +/* 801AABC4 001A7B24 88 1C 03 54 */ lbz r0, 0x354(r28) +/* 801AABC8 001A7B28 38 60 00 01 */ li r3, 1 +/* 801AABCC 001A7B2C 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801AABD0 001A7B30 98 1C 03 54 */ stb r0, 0x354(r28) +/* 801AABD4 001A7B34 93 BC 03 0C */ stw r29, 0x30c(r28) +lbl_801AABD8: +/* 801AABD8 001A7B38 BB 61 00 1C */ lmw r27, 0x1c(r1) +/* 801AABDC 001A7B3C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801AABE0 001A7B40 7C 08 03 A6 */ mtlr r0 +/* 801AABE4 001A7B44 38 21 00 30 */ addi r1, r1, 0x30 +/* 801AABE8 001A7B48 4E 80 00 20 */ blr + +.global LoadSuit__18CScriptPlayerActorFUi +LoadSuit__18CScriptPlayerActorFUi: +/* 801AABEC 001A7B4C 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801AABF0 001A7B50 7C 08 02 A6 */ mflr r0 +/* 801AABF4 001A7B54 90 01 00 64 */ stw r0, 0x64(r1) +/* 801AABF8 001A7B58 BF 41 00 48 */ stmw r26, 0x48(r1) +/* 801AABFC 001A7B5C 7C 9F 23 78 */ mr r31, r4 +/* 801AAC00 001A7B60 7C 7E 1B 78 */ mr r30, r3 +/* 801AAC04 001A7B64 80 03 03 10 */ lwz r0, 0x310(r3) +/* 801AAC08 001A7B68 7C 1F 00 00 */ cmpw r31, r0 +/* 801AAC0C 001A7B6C 41 82 01 C4 */ beq lbl_801AADD0 +/* 801AAC10 001A7B70 80 8D A0 6C */ lwz r4, gpCharacterFactoryBuilder@sda21(r13) +/* 801AAC14 001A7B74 38 61 00 28 */ addi r3, r1, 0x28 +/* 801AAC18 001A7B78 38 BE 02 E8 */ addi r5, r30, 0x2e8 +/* 801AAC1C 001A7B7C 4B E8 9C 9D */ bl GetFactory__24CCharacterFactoryBuilderFRC8CAnimRes +/* 801AAC20 001A7B80 3B 61 00 30 */ addi r27, r1, 0x30 +/* 801AAC24 001A7B84 38 81 00 28 */ addi r4, r1, 0x28 +/* 801AAC28 001A7B88 7F 63 DB 78 */ mr r3, r27 +/* 801AAC2C 001A7B8C 48 19 62 7D */ bl __ct__6CTokenFRC6CToken +/* 801AAC30 001A7B90 7F 63 DB 78 */ mr r3, r27 +/* 801AAC34 001A7B94 48 19 61 D9 */ bl GetObj__6CTokenFv +/* 801AAC38 001A7B98 80 03 00 04 */ lwz r0, 4(r3) +/* 801AAC3C 001A7B9C 38 61 00 28 */ addi r3, r1, 0x28 +/* 801AAC40 001A7BA0 38 80 00 00 */ li r4, 0 +/* 801AAC44 001A7BA4 90 01 00 38 */ stw r0, 0x38(r1) +/* 801AAC48 001A7BA8 48 19 61 F9 */ bl __dt__6CTokenFv +/* 801AAC4C 001A7BAC 80 61 00 38 */ lwz r3, 0x38(r1) +/* 801AAC50 001A7BB0 7F E4 FB 78 */ mr r4, r31 +/* 801AAC54 001A7BB4 4B E8 76 F1 */ bl sub_80032344 +/* 801AAC58 001A7BB8 3C 80 80 3D */ lis r4, lbl_803D14B8@ha +/* 801AAC5C 001A7BBC 7C 7D 1B 78 */ mr r29, r3 +/* 801AAC60 001A7BC0 38 64 14 B8 */ addi r3, r4, lbl_803D14B8@l +/* 801AAC64 001A7BC4 3B 40 00 00 */ li r26, 0 +/* 801AAC68 001A7BC8 38 83 00 09 */ addi r4, r3, 9 +/* 801AAC6C 001A7BCC 38 60 00 0C */ li r3, 0xc +/* 801AAC70 001A7BD0 38 A0 00 00 */ li r5, 0 +/* 801AAC74 001A7BD4 48 16 AB F9 */ bl __nw__FUlPCcPCc +/* 801AAC78 001A7BD8 7C 7C 1B 79 */ or. r28, r3, r3 +/* 801AAC7C 001A7BDC 41 82 00 4C */ beq lbl_801AACC8 +/* 801AAC80 001A7BE0 80 DD 00 14 */ lwz r6, 0x14(r29) +/* 801AAC84 001A7BE4 3C 60 43 4D */ lis r3, 0x434D444C@ha +/* 801AAC88 001A7BE8 38 03 44 4C */ addi r0, r3, 0x434D444C@l +/* 801AAC8C 001A7BEC 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801AAC90 001A7BF0 90 01 00 20 */ stw r0, 0x20(r1) +/* 801AAC94 001A7BF4 38 61 00 18 */ addi r3, r1, 0x18 +/* 801AAC98 001A7BF8 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801AAC9C 001A7BFC 90 C1 00 24 */ stw r6, 0x24(r1) +/* 801AACA0 001A7C00 81 84 00 00 */ lwz r12, 0(r4) +/* 801AACA4 001A7C04 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801AACA8 001A7C08 7D 89 03 A6 */ mtctr r12 +/* 801AACAC 001A7C0C 4E 80 04 21 */ bctrl +/* 801AACB0 001A7C10 7F 83 E3 78 */ mr r3, r28 +/* 801AACB4 001A7C14 38 81 00 18 */ addi r4, r1, 0x18 +/* 801AACB8 001A7C18 3B 40 00 01 */ li r26, 1 +/* 801AACBC 001A7C1C 48 19 61 ED */ bl __ct__6CTokenFRC6CToken +/* 801AACC0 001A7C20 38 00 00 00 */ li r0, 0 +/* 801AACC4 001A7C24 90 1C 00 08 */ stw r0, 8(r28) +lbl_801AACC8: +/* 801AACC8 001A7C28 83 7E 03 20 */ lwz r27, 0x320(r30) +/* 801AACCC 001A7C2C 28 1B 00 00 */ cmplwi r27, 0 +/* 801AACD0 001A7C30 41 82 00 1C */ beq lbl_801AACEC +/* 801AACD4 001A7C34 41 82 00 10 */ beq lbl_801AACE4 +/* 801AACD8 001A7C38 7F 63 DB 78 */ mr r3, r27 +/* 801AACDC 001A7C3C 38 80 00 00 */ li r4, 0 +/* 801AACE0 001A7C40 48 19 61 61 */ bl __dt__6CTokenFv +lbl_801AACE4: +/* 801AACE4 001A7C44 7F 63 DB 78 */ mr r3, r27 +/* 801AACE8 001A7C48 48 16 AC 49 */ bl Free__7CMemoryFPCv +lbl_801AACEC: +/* 801AACEC 001A7C4C 7F 40 07 75 */ extsb. r0, r26 +/* 801AACF0 001A7C50 93 9E 03 20 */ stw r28, 0x320(r30) +/* 801AACF4 001A7C54 41 82 00 10 */ beq lbl_801AAD04 +/* 801AACF8 001A7C58 38 61 00 18 */ addi r3, r1, 0x18 +/* 801AACFC 001A7C5C 38 80 FF FF */ li r4, -1 +/* 801AAD00 001A7C60 48 19 61 41 */ bl __dt__6CTokenFv +lbl_801AAD04: +/* 801AAD04 001A7C64 80 7E 03 20 */ lwz r3, 0x320(r30) +/* 801AAD08 001A7C68 48 19 60 7D */ bl Lock__6CTokenFv +/* 801AAD0C 001A7C6C 3C 60 80 3D */ lis r3, lbl_803D14B8@ha +/* 801AAD10 001A7C70 3B 40 00 00 */ li r26, 0 +/* 801AAD14 001A7C74 38 83 14 B8 */ addi r4, r3, lbl_803D14B8@l +/* 801AAD18 001A7C78 38 60 00 08 */ li r3, 8 +/* 801AAD1C 001A7C7C 38 84 00 09 */ addi r4, r4, 9 +/* 801AAD20 001A7C80 38 A0 00 00 */ li r5, 0 +/* 801AAD24 001A7C84 48 16 AB 49 */ bl __nw__FUlPCcPCc +/* 801AAD28 001A7C88 7C 7B 1B 79 */ or. r27, r3, r3 +/* 801AAD2C 001A7C8C 41 82 00 44 */ beq lbl_801AAD70 +/* 801AAD30 001A7C90 80 DD 00 18 */ lwz r6, 0x18(r29) +/* 801AAD34 001A7C94 3C 60 43 53 */ lis r3, 0x43534B52@ha +/* 801AAD38 001A7C98 38 03 4B 52 */ addi r0, r3, 0x43534B52@l +/* 801AAD3C 001A7C9C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801AAD40 001A7CA0 90 01 00 10 */ stw r0, 0x10(r1) +/* 801AAD44 001A7CA4 38 61 00 08 */ addi r3, r1, 8 +/* 801AAD48 001A7CA8 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801AAD4C 001A7CAC 90 C1 00 14 */ stw r6, 0x14(r1) +/* 801AAD50 001A7CB0 81 84 00 00 */ lwz r12, 0(r4) +/* 801AAD54 001A7CB4 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801AAD58 001A7CB8 7D 89 03 A6 */ mtctr r12 +/* 801AAD5C 001A7CBC 4E 80 04 21 */ bctrl +/* 801AAD60 001A7CC0 7F 63 DB 78 */ mr r3, r27 +/* 801AAD64 001A7CC4 38 81 00 08 */ addi r4, r1, 8 +/* 801AAD68 001A7CC8 3B 40 00 01 */ li r26, 1 +/* 801AAD6C 001A7CCC 48 19 61 3D */ bl __ct__6CTokenFRC6CToken +lbl_801AAD70: +/* 801AAD70 001A7CD0 83 9E 03 24 */ lwz r28, 0x324(r30) +/* 801AAD74 001A7CD4 28 1C 00 00 */ cmplwi r28, 0 +/* 801AAD78 001A7CD8 41 82 00 18 */ beq lbl_801AAD90 +/* 801AAD7C 001A7CDC 7F 83 E3 78 */ mr r3, r28 +/* 801AAD80 001A7CE0 38 80 00 00 */ li r4, 0 +/* 801AAD84 001A7CE4 48 19 60 BD */ bl __dt__6CTokenFv +/* 801AAD88 001A7CE8 7F 83 E3 78 */ mr r3, r28 +/* 801AAD8C 001A7CEC 48 16 AB A5 */ bl Free__7CMemoryFPCv +lbl_801AAD90: +/* 801AAD90 001A7CF0 7F 40 07 75 */ extsb. r0, r26 +/* 801AAD94 001A7CF4 93 7E 03 24 */ stw r27, 0x324(r30) +/* 801AAD98 001A7CF8 41 82 00 10 */ beq lbl_801AADA8 +/* 801AAD9C 001A7CFC 38 61 00 08 */ addi r3, r1, 8 +/* 801AADA0 001A7D00 38 80 FF FF */ li r4, -1 +/* 801AADA4 001A7D04 48 19 60 9D */ bl __dt__6CTokenFv +lbl_801AADA8: +/* 801AADA8 001A7D08 80 7E 03 24 */ lwz r3, 0x324(r30) +/* 801AADAC 001A7D0C 48 19 5F D9 */ bl Lock__6CTokenFv +/* 801AADB0 001A7D10 88 1E 03 54 */ lbz r0, 0x354(r30) +/* 801AADB4 001A7D14 38 60 00 01 */ li r3, 1 +/* 801AADB8 001A7D18 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801AADBC 001A7D1C 38 61 00 30 */ addi r3, r1, 0x30 +/* 801AADC0 001A7D20 98 1E 03 54 */ stb r0, 0x354(r30) +/* 801AADC4 001A7D24 38 80 00 00 */ li r4, 0 +/* 801AADC8 001A7D28 93 FE 03 10 */ stw r31, 0x310(r30) +/* 801AADCC 001A7D2C 48 19 60 75 */ bl __dt__6CTokenFv +lbl_801AADD0: +/* 801AADD0 001A7D30 BB 41 00 48 */ lmw r26, 0x48(r1) +/* 801AADD4 001A7D34 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801AADD8 001A7D38 7C 08 03 A6 */ mtlr r0 +/* 801AADDC 001A7D3C 38 21 00 60 */ addi r1, r1, 0x60 +/* 801AADE0 001A7D40 4E 80 00 20 */ blr + +.global SetupOfflineModelData__18CScriptPlayerActorFv +SetupOfflineModelData__18CScriptPlayerActorFv: +/* 801AADE4 001A7D44 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801AADE8 001A7D48 7C 08 02 A6 */ mflr r0 +/* 801AADEC 001A7D4C 38 A0 00 00 */ li r5, 0 +/* 801AADF0 001A7D50 90 01 00 44 */ stw r0, 0x44(r1) +/* 801AADF4 001A7D54 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801AADF8 001A7D58 7C 7F 1B 78 */ mr r31, r3 +/* 801AADFC 001A7D5C 3C 60 80 3D */ lis r3, lbl_803D14B8@ha +/* 801AAE00 001A7D60 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801AAE04 001A7D64 38 63 14 B8 */ addi r3, r3, lbl_803D14B8@l +/* 801AAE08 001A7D68 38 83 00 09 */ addi r4, r3, 9 +/* 801AAE0C 001A7D6C 93 A1 00 34 */ stw r29, 0x34(r1) +/* 801AAE10 001A7D70 38 60 00 4C */ li r3, 0x4c +/* 801AAE14 001A7D74 89 3F 02 FC */ lbz r9, 0x2fc(r31) +/* 801AAE18 001A7D78 81 5F 03 00 */ lwz r10, 0x300(r31) +/* 801AAE1C 001A7D7C 81 1F 02 E8 */ lwz r8, 0x2e8(r31) +/* 801AAE20 001A7D80 80 FF 03 10 */ lwz r7, 0x310(r31) +/* 801AAE24 001A7D84 C0 5F 02 F0 */ lfs f2, 0x2f0(r31) +/* 801AAE28 001A7D88 C0 3F 02 F4 */ lfs f1, 0x2f4(r31) +/* 801AAE2C 001A7D8C C0 1F 02 F8 */ lfs f0, 0x2f8(r31) +/* 801AAE30 001A7D90 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 801AAE34 001A7D94 91 1F 02 E8 */ stw r8, 0x2e8(r31) +/* 801AAE38 001A7D98 80 01 00 10 */ lwz r0, 0x10(r1) +/* 801AAE3C 001A7D9C D0 21 00 14 */ stfs f1, 0x14(r1) +/* 801AAE40 001A7DA0 90 FF 02 EC */ stw r7, 0x2ec(r31) +/* 801AAE44 001A7DA4 80 C1 00 14 */ lwz r6, 0x14(r1) +/* 801AAE48 001A7DA8 90 1F 02 F0 */ stw r0, 0x2f0(r31) +/* 801AAE4C 001A7DAC D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801AAE50 001A7DB0 80 01 00 18 */ lwz r0, 0x18(r1) +/* 801AAE54 001A7DB4 90 DF 02 F4 */ stw r6, 0x2f4(r31) +/* 801AAE58 001A7DB8 90 1F 02 F8 */ stw r0, 0x2f8(r31) +/* 801AAE5C 001A7DBC 99 3F 02 FC */ stb r9, 0x2fc(r31) +/* 801AAE60 001A7DC0 91 01 00 08 */ stw r8, 8(r1) +/* 801AAE64 001A7DC4 90 E1 00 0C */ stw r7, 0xc(r1) +/* 801AAE68 001A7DC8 99 21 00 1C */ stb r9, 0x1c(r1) +/* 801AAE6C 001A7DCC 91 41 00 20 */ stw r10, 0x20(r1) +/* 801AAE70 001A7DD0 91 5F 03 00 */ stw r10, 0x300(r31) +/* 801AAE74 001A7DD4 48 16 A9 F9 */ bl __nw__FUlPCcPCc +/* 801AAE78 001A7DD8 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801AAE7C 001A7DDC 41 82 00 10 */ beq lbl_801AAE8C +/* 801AAE80 001A7DE0 38 9F 02 E8 */ addi r4, r31, 0x2e8 +/* 801AAE84 001A7DE4 4B F6 BC D1 */ bl __ct__10CModelDataFRC8CAnimRes +/* 801AAE88 001A7DE8 7C 7E 1B 78 */ mr r30, r3 +lbl_801AAE8C: +/* 801AAE8C 001A7DEC 80 7F 03 18 */ lwz r3, 0x318(r31) +/* 801AAE90 001A7DF0 38 80 00 01 */ li r4, 1 +/* 801AAE94 001A7DF4 4B F6 BB B9 */ bl __dt__10CModelDataFv +/* 801AAE98 001A7DF8 93 DF 03 18 */ stw r30, 0x318(r31) +/* 801AAE9C 001A7DFC 80 6D A0 78 */ lwz r3, gpMain@sda21(r13) +/* 801AAEA0 001A7E00 88 03 01 60 */ lbz r0, 0x160(r3) +/* 801AAEA4 001A7E04 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801AAEA8 001A7E08 40 82 00 6C */ bne lbl_801AAF14 +/* 801AAEAC 001A7E0C 80 7F 00 64 */ lwz r3, 0x64(r31) +/* 801AAEB0 001A7E10 88 1F 03 34 */ lbz r0, 0x334(r31) +/* 801AAEB4 001A7E14 80 63 00 10 */ lwz r3, 0x10(r3) +/* 801AAEB8 001A7E18 28 00 00 00 */ cmplwi r0, 0 +/* 801AAEBC 001A7E1C 3B A3 00 D8 */ addi r29, r3, 0xd8 +/* 801AAEC0 001A7E20 40 82 00 34 */ bne lbl_801AAEF4 +/* 801AAEC4 001A7E24 37 DF 03 28 */ addic. r30, r31, 0x328 +/* 801AAEC8 001A7E28 41 82 00 20 */ beq lbl_801AAEE8 +/* 801AAECC 001A7E2C 7F C3 F3 78 */ mr r3, r30 +/* 801AAED0 001A7E30 7F A4 EB 78 */ mr r4, r29 +/* 801AAED4 001A7E34 48 19 5F D5 */ bl __ct__6CTokenFRC6CToken +/* 801AAED8 001A7E38 80 1D 00 08 */ lwz r0, 8(r29) +/* 801AAEDC 001A7E3C 7F C3 F3 78 */ mr r3, r30 +/* 801AAEE0 001A7E40 90 1E 00 08 */ stw r0, 8(r30) +/* 801AAEE4 001A7E44 48 19 5E A1 */ bl Lock__6CTokenFv +lbl_801AAEE8: +/* 801AAEE8 001A7E48 38 00 00 01 */ li r0, 1 +/* 801AAEEC 001A7E4C 98 1F 03 34 */ stb r0, 0x334(r31) +/* 801AAEF0 001A7E50 48 00 00 1C */ b lbl_801AAF0C +lbl_801AAEF4: +/* 801AAEF4 001A7E54 3B DF 03 28 */ addi r30, r31, 0x328 +/* 801AAEF8 001A7E58 7F A4 EB 78 */ mr r4, r29 +/* 801AAEFC 001A7E5C 7F C3 F3 78 */ mr r3, r30 +/* 801AAF00 001A7E60 48 19 5D C5 */ bl __as__6CTokenFRC6CToken +/* 801AAF04 001A7E64 80 1D 00 08 */ lwz r0, 8(r29) +/* 801AAF08 001A7E68 90 1E 00 08 */ stw r0, 8(r30) +lbl_801AAF0C: +/* 801AAF0C 001A7E6C 38 00 00 02 */ li r0, 2 +/* 801AAF10 001A7E70 90 1F 03 48 */ stw r0, 0x348(r31) +lbl_801AAF14: +/* 801AAF14 001A7E74 80 7F 03 18 */ lwz r3, 0x318(r31) +/* 801AAF18 001A7E78 80 BF 00 64 */ lwz r5, 0x64(r31) +/* 801AAF1C 001A7E7C 80 83 00 10 */ lwz r4, 0x10(r3) +/* 801AAF20 001A7E80 80 65 00 10 */ lwz r3, 0x10(r5) +/* 801AAF24 001A7E84 38 84 00 D8 */ addi r4, r4, 0xd8 +/* 801AAF28 001A7E88 4B E8 31 75 */ bl "SubstituteModelData__9CAnimDataFRC29TCachedToken<13CSkinnedModel>" +/* 801AAF2C 001A7E8C 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801AAF30 001A7E90 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801AAF34 001A7E94 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801AAF38 001A7E98 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 801AAF3C 001A7E9C 7C 08 03 A6 */ mtlr r0 +/* 801AAF40 001A7EA0 38 21 00 40 */ addi r1, r1, 0x40 +/* 801AAF44 001A7EA4 4E 80 00 20 */ blr + +.global SetupOnlineModelData__18CScriptPlayerActorFv +SetupOnlineModelData__18CScriptPlayerActorFv: +/* 801AAF48 001A7EA8 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 801AAF4C 001A7EAC 7C 08 02 A6 */ mflr r0 +/* 801AAF50 001A7EB0 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 801AAF54 001A7EB4 93 E1 00 EC */ stw r31, 0xec(r1) +/* 801AAF58 001A7EB8 7C 7F 1B 78 */ mr r31, r3 +/* 801AAF5C 001A7EBC 93 C1 00 E8 */ stw r30, 0xe8(r1) +/* 801AAF60 001A7EC0 81 23 03 10 */ lwz r9, 0x310(r3) +/* 801AAF64 001A7EC4 80 03 02 EC */ lwz r0, 0x2ec(r3) +/* 801AAF68 001A7EC8 7C 09 00 00 */ cmpw r9, r0 +/* 801AAF6C 001A7ECC 40 82 00 44 */ bne lbl_801AAFB0 +/* 801AAF70 001A7ED0 80 9F 00 64 */ lwz r4, 0x64(r31) +/* 801AAF74 001A7ED4 38 60 00 00 */ li r3, 0 +/* 801AAF78 001A7ED8 28 04 00 00 */ cmplwi r4, 0 +/* 801AAF7C 001A7EDC 41 82 00 20 */ beq lbl_801AAF9C +/* 801AAF80 001A7EE0 80 04 00 10 */ lwz r0, 0x10(r4) +/* 801AAF84 001A7EE4 28 00 00 00 */ cmplwi r0, 0 +/* 801AAF88 001A7EE8 40 82 00 10 */ bne lbl_801AAF98 +/* 801AAF8C 001A7EEC 88 04 00 28 */ lbz r0, 0x28(r4) +/* 801AAF90 001A7EF0 28 00 00 00 */ cmplwi r0, 0 +/* 801AAF94 001A7EF4 41 82 00 08 */ beq lbl_801AAF9C +lbl_801AAF98: +/* 801AAF98 001A7EF8 38 60 00 01 */ li r3, 1 +lbl_801AAF9C: +/* 801AAF9C 001A7EFC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801AAFA0 001A7F00 41 82 00 10 */ beq lbl_801AAFB0 +/* 801AAFA4 001A7F04 80 04 00 10 */ lwz r0, 0x10(r4) +/* 801AAFA8 001A7F08 28 00 00 00 */ cmplwi r0, 0 +/* 801AAFAC 001A7F0C 40 82 01 0C */ bne lbl_801AB0B8 +lbl_801AAFB0: +/* 801AAFB0 001A7F10 88 FF 02 FC */ lbz r7, 0x2fc(r31) +/* 801AAFB4 001A7F14 38 61 00 94 */ addi r3, r1, 0x94 +/* 801AAFB8 001A7F18 81 1F 03 00 */ lwz r8, 0x300(r31) +/* 801AAFBC 001A7F1C 38 9F 02 E8 */ addi r4, r31, 0x2e8 +/* 801AAFC0 001A7F20 80 DF 02 E8 */ lwz r6, 0x2e8(r31) +/* 801AAFC4 001A7F24 C0 5F 02 F0 */ lfs f2, 0x2f0(r31) +/* 801AAFC8 001A7F28 C0 3F 02 F4 */ lfs f1, 0x2f4(r31) +/* 801AAFCC 001A7F2C C0 1F 02 F8 */ lfs f0, 0x2f8(r31) +/* 801AAFD0 001A7F30 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 801AAFD4 001A7F34 90 DF 02 E8 */ stw r6, 0x2e8(r31) +/* 801AAFD8 001A7F38 80 01 00 28 */ lwz r0, 0x28(r1) +/* 801AAFDC 001A7F3C D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 801AAFE0 001A7F40 91 3F 02 EC */ stw r9, 0x2ec(r31) +/* 801AAFE4 001A7F44 80 A1 00 2C */ lwz r5, 0x2c(r1) +/* 801AAFE8 001A7F48 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801AAFEC 001A7F4C 90 1F 02 F0 */ stw r0, 0x2f0(r31) +/* 801AAFF0 001A7F50 80 01 00 30 */ lwz r0, 0x30(r1) +/* 801AAFF4 001A7F54 90 BF 02 F4 */ stw r5, 0x2f4(r31) +/* 801AAFF8 001A7F58 90 1F 02 F8 */ stw r0, 0x2f8(r31) +/* 801AAFFC 001A7F5C 98 FF 02 FC */ stb r7, 0x2fc(r31) +/* 801AB000 001A7F60 90 C1 00 20 */ stw r6, 0x20(r1) +/* 801AB004 001A7F64 91 21 00 24 */ stw r9, 0x24(r1) +/* 801AB008 001A7F68 98 E1 00 34 */ stb r7, 0x34(r1) +/* 801AB00C 001A7F6C 91 01 00 38 */ stw r8, 0x38(r1) +/* 801AB010 001A7F70 91 1F 03 00 */ stw r8, 0x300(r31) +/* 801AB014 001A7F74 4B F6 BB 41 */ bl __ct__10CModelDataFRC8CAnimRes +/* 801AB018 001A7F78 7F E3 FB 78 */ mr r3, r31 +/* 801AB01C 001A7F7C 38 81 00 94 */ addi r4, r1, 0x94 +/* 801AB020 001A7F80 4B EA A0 11 */ bl SetModelData__6CActorFRC10CModelData +/* 801AB024 001A7F84 80 9F 03 00 */ lwz r4, 0x300(r31) +/* 801AB028 001A7F88 38 00 00 00 */ li r0, 0 +/* 801AB02C 001A7F8C C0 02 A8 44 */ lfs f0, lbl_805AC564@sda21(r2) +/* 801AB030 001A7F90 38 C0 FF FF */ li r6, -1 +/* 801AB034 001A7F94 38 60 00 01 */ li r3, 1 +/* 801AB038 001A7F98 90 81 00 6C */ stw r4, 0x6c(r1) +/* 801AB03C 001A7F9C 38 81 00 6C */ addi r4, r1, 0x6c +/* 801AB040 001A7FA0 38 A0 00 00 */ li r5, 0 +/* 801AB044 001A7FA4 90 C1 00 70 */ stw r6, 0x70(r1) +/* 801AB048 001A7FA8 D0 01 00 74 */ stfs f0, 0x74(r1) +/* 801AB04C 001A7FAC 98 61 00 78 */ stb r3, 0x78(r1) +/* 801AB050 001A7FB0 90 01 00 7C */ stw r0, 0x7c(r1) +/* 801AB054 001A7FB4 90 01 00 80 */ stw r0, 0x80(r1) +/* 801AB058 001A7FB8 98 01 00 84 */ stb r0, 0x84(r1) +/* 801AB05C 001A7FBC 90 01 00 88 */ stw r0, 0x88(r1) +/* 801AB060 001A7FC0 90 01 00 8C */ stw r0, 0x8c(r1) +/* 801AB064 001A7FC4 90 01 00 90 */ stw r0, 0x90(r1) +/* 801AB068 001A7FC8 80 7F 00 64 */ lwz r3, 0x64(r31) +/* 801AB06C 001A7FCC 80 63 00 10 */ lwz r3, 0x10(r3) +/* 801AB070 001A7FD0 4B E8 1D 0D */ bl SetAnimation__9CAnimDataFRC18CAnimPlaybackParmsb +/* 801AB074 001A7FD4 88 1F 03 54 */ lbz r0, 0x354(r31) +/* 801AB078 001A7FD8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801AB07C 001A7FDC 41 82 00 30 */ beq lbl_801AB0AC +/* 801AB080 001A7FE0 83 DF 00 64 */ lwz r30, 0x64(r31) +/* 801AB084 001A7FE4 38 61 00 3C */ addi r3, r1, 0x3c +/* 801AB088 001A7FE8 38 9F 00 34 */ addi r4, r31, 0x34 +/* 801AB08C 001A7FEC 48 16 7B B5 */ bl GetRotation__12CTransform4fCFv +/* 801AB090 001A7FF0 7F C4 F3 78 */ mr r4, r30 +/* 801AB094 001A7FF4 38 61 00 08 */ addi r3, r1, 8 +/* 801AB098 001A7FF8 38 A1 00 3C */ addi r5, r1, 0x3c +/* 801AB09C 001A7FFC 4B F6 A7 19 */ bl GetBounds__10CModelDataCFRC12CTransform4f +/* 801AB0A0 001A8000 7F E3 FB 78 */ mr r3, r31 +/* 801AB0A4 001A8004 38 81 00 08 */ addi r4, r1, 8 +/* 801AB0A8 001A8008 4B F6 F5 B1 */ bl SetBoundingBox__13CPhysicsActorFRC6CAABox +lbl_801AB0AC: +/* 801AB0AC 001A800C 38 61 00 94 */ addi r3, r1, 0x94 +/* 801AB0B0 001A8010 38 80 FF FF */ li r4, -1 +/* 801AB0B4 001A8014 4B F6 B9 99 */ bl __dt__10CModelDataFv +lbl_801AB0B8: +/* 801AB0B8 001A8018 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 801AB0BC 001A801C 83 E1 00 EC */ lwz r31, 0xec(r1) +/* 801AB0C0 001A8020 83 C1 00 E8 */ lwz r30, 0xe8(r1) +/* 801AB0C4 001A8024 7C 08 03 A6 */ mtlr r0 +/* 801AB0C8 001A8028 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 801AB0CC 001A802C 4E 80 00 20 */ blr + +.global BuildBeamModelData__18CScriptPlayerActorFv +BuildBeamModelData__18CScriptPlayerActorFv: +/* 801AB0D0 001A8030 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801AB0D4 001A8034 7C 08 02 A6 */ mflr r0 +/* 801AB0D8 001A8038 90 01 00 24 */ stw r0, 0x24(r1) +/* 801AB0DC 001A803C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801AB0E0 001A8040 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801AB0E4 001A8044 7C 7E 1B 78 */ mr r30, r3 +/* 801AB0E8 001A8048 80 6D A1 4C */ lwz r3, gpTweakPlayerRes@sda21(r13) +/* 801AB0EC 001A804C 80 9E 03 0C */ lwz r4, 0x30c(r30) +/* 801AB0F0 001A8050 48 00 11 21 */ bl GetCinematicBeamResId__15CTweakPlayerResCFQ212CPlayerState7EBeamId +/* 801AB0F4 001A8054 90 61 00 08 */ stw r3, 8(r1) +/* 801AB0F8 001A8058 3C 60 80 3D */ lis r3, lbl_803D14B8@ha +/* 801AB0FC 001A805C 38 83 14 B8 */ addi r4, r3, lbl_803D14B8@l +/* 801AB100 001A8060 38 60 00 4C */ li r3, 0x4c +/* 801AB104 001A8064 C0 1E 02 F0 */ lfs f0, 0x2f0(r30) +/* 801AB108 001A8068 38 84 00 09 */ addi r4, r4, 9 +/* 801AB10C 001A806C 38 A0 00 00 */ li r5, 0 +/* 801AB110 001A8070 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801AB114 001A8074 C0 1E 02 F4 */ lfs f0, 0x2f4(r30) +/* 801AB118 001A8078 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801AB11C 001A807C C0 1E 02 F8 */ lfs f0, 0x2f8(r30) +/* 801AB120 001A8080 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801AB124 001A8084 48 16 A7 49 */ bl __nw__FUlPCcPCc +/* 801AB128 001A8088 7C 7F 1B 79 */ or. r31, r3, r3 +/* 801AB12C 001A808C 41 82 00 10 */ beq lbl_801AB13C +/* 801AB130 001A8090 38 81 00 08 */ addi r4, r1, 8 +/* 801AB134 001A8094 4B F6 BC 29 */ bl __ct__10CModelDataFRC10CStaticRes +/* 801AB138 001A8098 7C 7F 1B 78 */ mr r31, r3 +lbl_801AB13C: +/* 801AB13C 001A809C 80 7E 03 14 */ lwz r3, 0x314(r30) +/* 801AB140 001A80A0 38 80 00 01 */ li r4, 1 +/* 801AB144 001A80A4 4B F6 B9 09 */ bl __dt__10CModelDataFv +/* 801AB148 001A80A8 93 FE 03 14 */ stw r31, 0x314(r30) +/* 801AB14C 001A80AC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801AB150 001A80B0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801AB154 001A80B4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801AB158 001A80B8 7C 08 03 A6 */ mtlr r0 +/* 801AB15C 001A80BC 38 21 00 20 */ addi r1, r1, 0x20 +/* 801AB160 001A80C0 4E 80 00 20 */ blr + +.global AddToRenderer__18CScriptPlayerActorCFRC14CFrustumPlanesRC13CStateManager +AddToRenderer__18CScriptPlayerActorCFRC14CFrustumPlanesRC13CStateManager: +/* 801AB164 001A80C4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801AB168 001A80C8 7C 08 02 A6 */ mflr r0 +/* 801AB16C 001A80CC 90 01 00 24 */ stw r0, 0x24(r1) +/* 801AB170 001A80D0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801AB174 001A80D4 7C BF 2B 78 */ mr r31, r5 +/* 801AB178 001A80D8 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801AB17C 001A80DC 7C 9E 23 78 */ mr r30, r4 +/* 801AB180 001A80E0 7F E4 FB 78 */ mr r4, r31 +/* 801AB184 001A80E4 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801AB188 001A80E8 7C 7D 1B 78 */ mr r29, r3 +/* 801AB18C 001A80EC 48 00 00 3D */ bl TouchModels_Internal__18CScriptPlayerActorFRC13CStateManager +/* 801AB190 001A80F0 88 1D 00 30 */ lbz r0, 0x30(r29) +/* 801AB194 001A80F4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801AB198 001A80F8 41 82 00 14 */ beq lbl_801AB1AC +/* 801AB19C 001A80FC 7F A3 EB 78 */ mr r3, r29 +/* 801AB1A0 001A8100 7F C4 F3 78 */ mr r4, r30 +/* 801AB1A4 001A8104 7F E5 FB 78 */ mr r5, r31 +/* 801AB1A8 001A8108 4B EA 99 91 */ bl AddToRenderer__6CActorCFRC14CFrustumPlanesRC13CStateManager +lbl_801AB1AC: +/* 801AB1AC 001A810C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801AB1B0 001A8110 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801AB1B4 001A8114 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801AB1B8 001A8118 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801AB1BC 001A811C 7C 08 03 A6 */ mtlr r0 +/* 801AB1C0 001A8120 38 21 00 20 */ addi r1, r1, 0x20 +/* 801AB1C4 001A8124 4E 80 00 20 */ blr + +.global TouchModels_Internal__18CScriptPlayerActorFRC13CStateManager +TouchModels_Internal__18CScriptPlayerActorFRC13CStateManager: +/* 801AB1C8 001A8128 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801AB1CC 001A812C 7C 08 02 A6 */ mflr r0 +/* 801AB1D0 001A8130 90 01 00 14 */ stw r0, 0x14(r1) +/* 801AB1D4 001A8134 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801AB1D8 001A8138 7C 9F 23 78 */ mr r31, r4 +/* 801AB1DC 001A813C 38 80 00 00 */ li r4, 0 +/* 801AB1E0 001A8140 93 C1 00 08 */ stw r30, 8(r1) +/* 801AB1E4 001A8144 7C 7E 1B 78 */ mr r30, r3 +/* 801AB1E8 001A8148 80 63 00 64 */ lwz r3, 0x64(r3) +/* 801AB1EC 001A814C 28 03 00 00 */ cmplwi r3, 0 +/* 801AB1F0 001A8150 41 82 00 20 */ beq lbl_801AB210 +/* 801AB1F4 001A8154 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801AB1F8 001A8158 28 00 00 00 */ cmplwi r0, 0 +/* 801AB1FC 001A815C 40 82 00 10 */ bne lbl_801AB20C +/* 801AB200 001A8160 88 03 00 28 */ lbz r0, 0x28(r3) +/* 801AB204 001A8164 28 00 00 00 */ cmplwi r0, 0 +/* 801AB208 001A8168 41 82 00 08 */ beq lbl_801AB210 +lbl_801AB20C: +/* 801AB20C 001A816C 38 80 00 01 */ li r4, 1 +lbl_801AB210: +/* 801AB210 001A8170 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 801AB214 001A8174 41 82 00 10 */ beq lbl_801AB224 +/* 801AB218 001A8178 7F E4 FB 78 */ mr r4, r31 +/* 801AB21C 001A817C 38 A0 00 00 */ li r5, 0 +/* 801AB220 001A8180 4B F6 AA F1 */ bl Touch__10CModelDataCFRC13CStateManageri +lbl_801AB224: +/* 801AB224 001A8184 80 7E 03 18 */ lwz r3, 0x318(r30) +/* 801AB228 001A8188 38 80 00 00 */ li r4, 0 +/* 801AB22C 001A818C 28 03 00 00 */ cmplwi r3, 0 +/* 801AB230 001A8190 41 82 00 20 */ beq lbl_801AB250 +/* 801AB234 001A8194 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801AB238 001A8198 28 00 00 00 */ cmplwi r0, 0 +/* 801AB23C 001A819C 40 82 00 10 */ bne lbl_801AB24C +/* 801AB240 001A81A0 88 03 00 28 */ lbz r0, 0x28(r3) +/* 801AB244 001A81A4 28 00 00 00 */ cmplwi r0, 0 +/* 801AB248 001A81A8 41 82 00 08 */ beq lbl_801AB250 +lbl_801AB24C: +/* 801AB24C 001A81AC 38 80 00 01 */ li r4, 1 +lbl_801AB250: +/* 801AB250 001A81B0 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 801AB254 001A81B4 41 82 00 10 */ beq lbl_801AB264 +/* 801AB258 001A81B8 7F E4 FB 78 */ mr r4, r31 +/* 801AB25C 001A81BC 38 A0 00 00 */ li r5, 0 +/* 801AB260 001A81C0 4B F6 AA B1 */ bl Touch__10CModelDataCFRC13CStateManageri +lbl_801AB264: +/* 801AB264 001A81C4 88 1E 03 54 */ lbz r0, 0x354(r30) +/* 801AB268 001A81C8 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 801AB26C 001A81CC 40 82 00 44 */ bne lbl_801AB2B0 +/* 801AB270 001A81D0 80 7E 03 14 */ lwz r3, 0x314(r30) +/* 801AB274 001A81D4 38 80 00 00 */ li r4, 0 +/* 801AB278 001A81D8 28 03 00 00 */ cmplwi r3, 0 +/* 801AB27C 001A81DC 41 82 00 20 */ beq lbl_801AB29C +/* 801AB280 001A81E0 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801AB284 001A81E4 28 00 00 00 */ cmplwi r0, 0 +/* 801AB288 001A81E8 40 82 00 10 */ bne lbl_801AB298 +/* 801AB28C 001A81EC 88 03 00 28 */ lbz r0, 0x28(r3) +/* 801AB290 001A81F0 28 00 00 00 */ cmplwi r0, 0 +/* 801AB294 001A81F4 41 82 00 08 */ beq lbl_801AB29C +lbl_801AB298: +/* 801AB298 001A81F8 38 80 00 01 */ li r4, 1 +lbl_801AB29C: +/* 801AB29C 001A81FC 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 801AB2A0 001A8200 41 82 00 10 */ beq lbl_801AB2B0 +/* 801AB2A4 001A8204 7F E4 FB 78 */ mr r4, r31 +/* 801AB2A8 001A8208 38 A0 00 00 */ li r5, 0 +/* 801AB2AC 001A820C 4B F6 AA 65 */ bl Touch__10CModelDataCFRC13CStateManageri +lbl_801AB2B0: +/* 801AB2B0 001A8210 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801AB2B4 001A8214 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801AB2B8 001A8218 83 C1 00 08 */ lwz r30, 8(r1) +/* 801AB2BC 001A821C 7C 08 03 A6 */ mtlr r0 +/* 801AB2C0 001A8220 38 21 00 10 */ addi r1, r1, 0x10 +/* 801AB2C4 001A8224 4E 80 00 20 */ blr + +.global TouchModels__18CScriptPlayerActorFRC13CStateManager +TouchModels__18CScriptPlayerActorFRC13CStateManager: +/* 801AB2C8 001A8228 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801AB2CC 001A822C 7C 08 02 A6 */ mflr r0 +/* 801AB2D0 001A8230 90 01 00 24 */ stw r0, 0x24(r1) +/* 801AB2D4 001A8234 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801AB2D8 001A8238 7C 7F 1B 78 */ mr r31, r3 +/* 801AB2DC 001A823C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801AB2E0 001A8240 7C 9E 23 78 */ mr r30, r4 +/* 801AB2E4 001A8244 4B FF FE E5 */ bl TouchModels_Internal__18CScriptPlayerActorFRC13CStateManager +/* 801AB2E8 001A8248 A0 1F 03 56 */ lhz r0, 0x356(r31) +/* 801AB2EC 001A824C B0 01 00 0C */ sth r0, 0xc(r1) +/* 801AB2F0 001A8250 48 00 00 5C */ b lbl_801AB34C +lbl_801AB2F4: +/* 801AB2F4 001A8254 A0 01 00 0C */ lhz r0, 0xc(r1) +/* 801AB2F8 001A8258 7F C3 F3 78 */ mr r3, r30 +/* 801AB2FC 001A825C 38 81 00 08 */ addi r4, r1, 8 +/* 801AB300 001A8260 B0 01 00 08 */ sth r0, 8(r1) +/* 801AB304 001A8264 4B EA 12 A1 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801AB308 001A8268 7C 64 1B 78 */ mr r4, r3 +/* 801AB30C 001A826C 38 61 00 10 */ addi r3, r1, 0x10 +/* 801AB310 001A8270 4B F0 0A 5D */ bl "__ct__26TCastToPtr<12CScriptActor>FP7CEntity" +/* 801AB314 001A8274 83 E3 00 04 */ lwz r31, 4(r3) +/* 801AB318 001A8278 28 1F 00 00 */ cmplwi r31, 0 +/* 801AB31C 001A827C 41 82 00 28 */ beq lbl_801AB344 +/* 801AB320 001A8280 88 1F 02 E3 */ lbz r0, 0x2e3(r31) +/* 801AB324 001A8284 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801AB328 001A8288 41 82 00 1C */ beq lbl_801AB344 +/* 801AB32C 001A828C 7F E3 FB 78 */ mr r3, r31 +/* 801AB330 001A8290 7F C4 F3 78 */ mr r4, r30 +/* 801AB334 001A8294 4B FF FE 95 */ bl TouchModels_Internal__18CScriptPlayerActorFRC13CStateManager +/* 801AB338 001A8298 A0 1F 03 56 */ lhz r0, 0x356(r31) +/* 801AB33C 001A829C B0 01 00 0C */ sth r0, 0xc(r1) +/* 801AB340 001A82A0 48 00 00 0C */ b lbl_801AB34C +lbl_801AB344: +/* 801AB344 001A82A4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801AB348 001A82A8 B0 01 00 0C */ sth r0, 0xc(r1) +lbl_801AB34C: +/* 801AB34C 001A82AC A0 61 00 0C */ lhz r3, 0xc(r1) +/* 801AB350 001A82B0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801AB354 001A82B4 7C 03 00 40 */ cmplw r3, r0 +/* 801AB358 001A82B8 40 82 FF 9C */ bne lbl_801AB2F4 +/* 801AB35C 001A82BC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801AB360 001A82C0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801AB364 001A82C4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801AB368 001A82C8 7C 08 03 A6 */ mtlr r0 +/* 801AB36C 001A82CC 38 21 00 20 */ addi r1, r1, 0x20 +/* 801AB370 001A82D0 4E 80 00 20 */ blr + +.global Render__18CScriptPlayerActorCFRC13CStateManager +Render__18CScriptPlayerActorCFRC13CStateManager: +/* 801AB374 001A82D4 94 21 FE 80 */ stwu r1, -0x180(r1) +/* 801AB378 001A82D8 7C 08 02 A6 */ mflr r0 +/* 801AB37C 001A82DC 90 01 01 84 */ stw r0, 0x184(r1) +/* 801AB380 001A82E0 DB E1 01 70 */ stfd f31, 0x170(r1) +/* 801AB384 001A82E4 F3 E1 01 78 */ psq_st f31, 376(r1), 0, qr0 +/* 801AB388 001A82E8 DB C1 01 60 */ stfd f30, 0x160(r1) +/* 801AB38C 001A82EC F3 C1 01 68 */ psq_st f30, 360(r1), 0, qr0 +/* 801AB390 001A82F0 DB A1 01 50 */ stfd f29, 0x150(r1) +/* 801AB394 001A82F4 F3 A1 01 58 */ psq_st f29, 344(r1), 0, qr0 +/* 801AB398 001A82F8 BF 61 01 3C */ stmw r27, 0x13c(r1) +/* 801AB39C 001A82FC 80 03 02 EC */ lwz r0, 0x2ec(r3) +/* 801AB3A0 001A8300 7C 7D 1B 78 */ mr r29, r3 +/* 801AB3A4 001A8304 7C 9E 23 78 */ mr r30, r4 +/* 801AB3A8 001A8308 20 00 00 03 */ subfic r0, r0, 3 +/* 801AB3AC 001A830C 7C 03 00 34 */ cntlzw r3, r0 +/* 801AB3B0 001A8310 54 60 DE 3F */ rlwinm. r0, r3, 0x1b, 0x18, 0x1f +/* 801AB3B4 001A8314 54 7F D9 7E */ srwi r31, r3, 5 +/* 801AB3B8 001A8318 41 82 00 10 */ beq lbl_801AB3C8 +/* 801AB3BC 001A831C 38 60 00 01 */ li r3, 1 +/* 801AB3C0 001A8320 38 80 00 FF */ li r4, 0xff +/* 801AB3C4 001A8324 48 1D 0D 1D */ bl GXSetDstAlpha +lbl_801AB3C8: +/* 801AB3C8 001A8328 7F A3 EB 78 */ mr r3, r29 +/* 801AB3CC 001A832C 7F C4 F3 78 */ mr r4, r30 +/* 801AB3D0 001A8330 4B F6 F1 19 */ bl Render__13CPhysicsActorCFRC13CStateManager +/* 801AB3D4 001A8334 80 9D 03 14 */ lwz r4, 0x314(r29) +/* 801AB3D8 001A8338 38 60 00 00 */ li r3, 0 +/* 801AB3DC 001A833C 28 04 00 00 */ cmplwi r4, 0 +/* 801AB3E0 001A8340 41 82 00 20 */ beq lbl_801AB400 +/* 801AB3E4 001A8344 80 04 00 10 */ lwz r0, 0x10(r4) +/* 801AB3E8 001A8348 28 00 00 00 */ cmplwi r0, 0 +/* 801AB3EC 001A834C 40 82 00 10 */ bne lbl_801AB3FC +/* 801AB3F0 001A8350 88 04 00 28 */ lbz r0, 0x28(r4) +/* 801AB3F4 001A8354 28 00 00 00 */ cmplwi r0, 0 +/* 801AB3F8 001A8358 41 82 00 08 */ beq lbl_801AB400 +lbl_801AB3FC: +/* 801AB3FC 001A835C 38 60 00 01 */ li r3, 1 +lbl_801AB400: +/* 801AB400 001A8360 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801AB404 001A8364 41 82 01 04 */ beq lbl_801AB508 +/* 801AB408 001A8368 80 9D 00 64 */ lwz r4, 0x64(r29) +/* 801AB40C 001A836C 38 60 00 00 */ li r3, 0 +/* 801AB410 001A8370 28 04 00 00 */ cmplwi r4, 0 +/* 801AB414 001A8374 41 82 00 20 */ beq lbl_801AB434 +/* 801AB418 001A8378 80 04 00 10 */ lwz r0, 0x10(r4) +/* 801AB41C 001A837C 28 00 00 00 */ cmplwi r0, 0 +/* 801AB420 001A8380 40 82 00 10 */ bne lbl_801AB430 +/* 801AB424 001A8384 88 04 00 28 */ lbz r0, 0x28(r4) +/* 801AB428 001A8388 28 00 00 00 */ cmplwi r0, 0 +/* 801AB42C 001A838C 41 82 00 08 */ beq lbl_801AB434 +lbl_801AB430: +/* 801AB430 001A8390 38 60 00 01 */ li r3, 1 +lbl_801AB434: +/* 801AB434 001A8394 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801AB438 001A8398 41 82 00 D0 */ beq lbl_801AB508 +/* 801AB43C 001A839C 80 82 A8 38 */ lwz r4, lbl_805AC558@sda21(r2) +/* 801AB440 001A83A0 38 61 00 44 */ addi r3, r1, 0x44 +/* 801AB444 001A83A4 4B E5 98 75 */ bl string_l__4rstlFPCc +/* 801AB448 001A83A8 80 9D 00 64 */ lwz r4, 0x64(r29) +/* 801AB44C 001A83AC 38 61 00 9C */ addi r3, r1, 0x9c +/* 801AB450 001A83B0 38 A1 00 44 */ addi r5, r1, 0x44 +/* 801AB454 001A83B4 4B F6 A5 4D */ bl "GetScaledLocatorTransform__10CModelDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801AB458 001A83B8 38 61 00 FC */ addi r3, r1, 0xfc +/* 801AB45C 001A83BC 38 81 00 9C */ addi r4, r1, 0x9c +/* 801AB460 001A83C0 48 16 77 15 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801AB464 001A83C4 38 61 00 44 */ addi r3, r1, 0x44 +/* 801AB468 001A83C8 48 19 26 79 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801AB46C 001A83CC 38 61 00 6C */ addi r3, r1, 0x6c +/* 801AB470 001A83D0 38 9D 00 34 */ addi r4, r29, 0x34 +/* 801AB474 001A83D4 38 A1 00 FC */ addi r5, r1, 0xfc +/* 801AB478 001A83D8 48 16 74 D9 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 801AB47C 001A83DC 38 61 00 CC */ addi r3, r1, 0xcc +/* 801AB480 001A83E0 38 81 00 6C */ addi r4, r1, 0x6c +/* 801AB484 001A83E4 48 16 76 F1 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801AB488 001A83E8 83 9D 03 14 */ lwz r28, 0x314(r29) +/* 801AB48C 001A83EC 83 7D 00 90 */ lwz r27, 0x90(r29) +/* 801AB490 001A83F0 E0 9D A0 BB */ psq_l f4, 187(r29), 1, qr2 +/* 801AB494 001A83F4 38 A0 00 05 */ li r5, 5 +/* 801AB498 001A83F8 C0 22 A8 44 */ lfs f1, lbl_805AC564@sda21(r2) +/* 801AB49C 001A83FC 38 80 00 00 */ li r4, 0 +/* 801AB4A0 001A8400 C0 02 A8 48 */ lfs f0, lbl_805AC568@sda21(r2) +/* 801AB4A4 001A8404 38 00 00 03 */ li r0, 3 +/* 801AB4A8 001A8408 FC 40 08 90 */ fmr f2, f1 +/* 801AB4AC 001A840C 98 A1 00 10 */ stb r5, 0x10(r1) +/* 801AB4B0 001A8410 FC 60 08 90 */ fmr f3, f1 +/* 801AB4B4 001A8414 38 61 00 14 */ addi r3, r1, 0x14 +/* 801AB4B8 001A8418 EC 80 01 32 */ fmuls f4, f0, f4 +/* 801AB4BC 001A841C 98 81 00 11 */ stb r4, 0x11(r1) +/* 801AB4C0 001A8420 B0 01 00 12 */ sth r0, 0x12(r1) +/* 801AB4C4 001A8424 48 1B 7F 29 */ bl __ct__6CColorFffff +/* 801AB4C8 001A8428 A0 01 00 12 */ lhz r0, 0x12(r1) +/* 801AB4CC 001A842C 7F 83 E3 78 */ mr r3, r28 +/* 801AB4D0 001A8430 88 A1 00 10 */ lbz r5, 0x10(r1) +/* 801AB4D4 001A8434 7F C4 F3 78 */ mr r4, r30 +/* 801AB4D8 001A8438 54 00 00 3A */ rlwinm r0, r0, 0, 0, 0x1d +/* 801AB4DC 001A843C 88 E1 00 11 */ lbz r7, 0x11(r1) +/* 801AB4E0 001A8440 60 08 00 03 */ ori r8, r0, 3 +/* 801AB4E4 001A8444 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801AB4E8 001A8448 98 A1 00 18 */ stb r5, 0x18(r1) +/* 801AB4EC 001A844C 7F 66 DB 78 */ mr r6, r27 +/* 801AB4F0 001A8450 38 A1 00 CC */ addi r5, r1, 0xcc +/* 801AB4F4 001A8454 98 E1 00 19 */ stb r7, 0x19(r1) +/* 801AB4F8 001A8458 38 E1 00 18 */ addi r7, r1, 0x18 +/* 801AB4FC 001A845C B1 01 00 1A */ sth r8, 0x1a(r1) +/* 801AB500 001A8460 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801AB504 001A8464 4B F6 98 B9 */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags +lbl_801AB508: +/* 801AB508 001A8468 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 801AB50C 001A846C 41 82 01 1C */ beq lbl_801AB628 +/* 801AB510 001A8470 83 6D A0 68 */ lwz r27, gpRender@sda21(r13) +/* 801AB514 001A8474 38 80 00 01 */ li r4, 1 +/* 801AB518 001A8478 80 CD A8 28 */ lwz r6, lbl_805A93E8@sda21(r13) +/* 801AB51C 001A847C 38 A0 00 01 */ li r5, 1 +/* 801AB520 001A8480 7F 63 DB 78 */ mr r3, r27 +/* 801AB524 001A8484 38 E0 00 04 */ li r7, 4 +/* 801AB528 001A8488 39 00 00 00 */ li r8, 0 +/* 801AB52C 001A848C 48 10 BE 21 */ bl CopyTex__13CCubeRendererFibPv8GXTexFmtb +/* 801AB530 001A8490 80 7E 08 70 */ lwz r3, 0x870(r30) +/* 801AB534 001A8494 7F C4 F3 78 */ mr r4, r30 +/* 801AB538 001A8498 4B E6 05 E1 */ bl GetCurrentCamera__14CCameraManagerCFR13CStateManager +/* 801AB53C 001A849C C0 43 00 60 */ lfs f2, 0x60(r3) +/* 801AB540 001A84A0 7F A4 EB 78 */ mr r4, r29 +/* 801AB544 001A84A4 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801AB548 001A84A8 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801AB54C 001A84AC 38 61 00 54 */ addi r3, r1, 0x54 +/* 801AB550 001A84B0 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 801AB554 001A84B4 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801AB558 001A84B8 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 801AB55C 001A84BC 4B F6 F3 D1 */ bl GetBoundingBox__13CPhysicsActorCFv +/* 801AB560 001A84C0 38 61 00 2C */ addi r3, r1, 0x2c +/* 801AB564 001A84C4 38 81 00 54 */ addi r4, r1, 0x54 +/* 801AB568 001A84C8 48 18 C0 A5 */ bl GetCenterPoint__6CAABoxCFv +/* 801AB56C 001A84CC C0 21 00 30 */ lfs f1, 0x30(r1) +/* 801AB570 001A84D0 38 61 00 38 */ addi r3, r1, 0x38 +/* 801AB574 001A84D4 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 801AB578 001A84D8 C0 61 00 34 */ lfs f3, 0x34(r1) +/* 801AB57C 001A84DC C0 41 00 28 */ lfs f2, 0x28(r1) +/* 801AB580 001A84E0 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801AB584 001A84E4 C0 21 00 2C */ lfs f1, 0x2c(r1) +/* 801AB588 001A84E8 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 801AB58C 001A84EC EC 43 10 28 */ fsubs f2, f3, f2 +/* 801AB590 001A84F0 D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 801AB594 001A84F4 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801AB598 001A84F8 D0 41 00 40 */ stfs f2, 0x40(r1) +/* 801AB59C 001A84FC D0 01 00 38 */ stfs f0, 0x38(r1) +/* 801AB5A0 001A8500 48 16 93 19 */ bl Magnitude__9CVector3fCFv +/* 801AB5A4 001A8504 C0 42 A8 4C */ lfs f2, lbl_805AC56C@sda21(r2) +/* 801AB5A8 001A8508 38 81 00 0C */ addi r4, r1, 0xc +/* 801AB5AC 001A850C 38 6D 90 78 */ addi r3, r13, lbl_805A7C38@sda21 +/* 801AB5B0 001A8510 38 AD 90 7C */ addi r5, r13, lbl_805A7C3C@sda21 +/* 801AB5B4 001A8514 EC 02 08 28 */ fsubs f0, f2, f1 +/* 801AB5B8 001A8518 EC 00 10 24 */ fdivs f0, f0, f2 +/* 801AB5BC 001A851C D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801AB5C0 001A8520 4B E6 0C F5 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 801AB5C4 001A8524 C3 A3 00 00 */ lfs f29, 0(r3) +/* 801AB5C8 001A8528 48 19 E9 E5 */ bl White__6CColorFv +/* 801AB5CC 001A852C C0 3D 03 4C */ lfs f1, 0x34c(r29) +/* 801AB5D0 001A8530 7C 7E 1B 78 */ mr r30, r3 +/* 801AB5D4 001A8534 48 16 98 1D */ bl FastSinR__5CMathFf +/* 801AB5D8 001A8538 C0 02 A8 58 */ lfs f0, lbl_805AC578@sda21(r2) +/* 801AB5DC 001A853C EF C0 00 72 */ fmuls f30, f0, f1 +/* 801AB5E0 001A8540 C0 3D 03 4C */ lfs f1, 0x34c(r29) +/* 801AB5E4 001A8544 48 16 98 0D */ bl FastSinR__5CMathFf +/* 801AB5E8 001A8548 FF E0 08 90 */ fmr f31, f1 +/* 801AB5EC 001A854C C0 22 A8 50 */ lfs f1, lbl_805AC570@sda21(r2) +/* 801AB5F0 001A8550 C0 82 A8 44 */ lfs f4, lbl_805AC564@sda21(r2) +/* 801AB5F4 001A8554 38 61 00 08 */ addi r3, r1, 8 +/* 801AB5F8 001A8558 FC 40 08 90 */ fmr f2, f1 +/* 801AB5FC 001A855C FC 60 08 90 */ fmr f3, f1 +/* 801AB600 001A8560 48 1B 7D ED */ bl __ct__6CColorFffff +/* 801AB604 001A8564 FC 20 E8 90 */ fmr f1, f29 +/* 801AB608 001A8568 7C 64 1B 78 */ mr r4, r3 +/* 801AB60C 001A856C FC 60 F8 90 */ fmr f3, f31 +/* 801AB610 001A8570 C0 42 A8 54 */ lfs f2, lbl_805AC574@sda21(r2) +/* 801AB614 001A8574 FC 80 F0 90 */ fmr f4, f30 +/* 801AB618 001A8578 7F 63 DB 78 */ mr r3, r27 +/* 801AB61C 001A857C 7F C6 F3 78 */ mr r6, r30 +/* 801AB620 001A8580 38 BD 03 38 */ addi r5, r29, 0x338 +/* 801AB624 001A8584 48 10 A9 FD */ bl "DrawPhazonSuitIndirectEffect__13CCubeRendererFRC6CColorRC23TLockedToken<8CTexture>RC6CColorffff" +lbl_801AB628: +/* 801AB628 001A8588 E3 E1 01 78 */ psq_l f31, 376(r1), 0, qr0 +/* 801AB62C 001A858C CB E1 01 70 */ lfd f31, 0x170(r1) +/* 801AB630 001A8590 E3 C1 01 68 */ psq_l f30, 360(r1), 0, qr0 +/* 801AB634 001A8594 CB C1 01 60 */ lfd f30, 0x160(r1) +/* 801AB638 001A8598 E3 A1 01 58 */ psq_l f29, 344(r1), 0, qr0 +/* 801AB63C 001A859C CB A1 01 50 */ lfd f29, 0x150(r1) +/* 801AB640 001A85A0 BB 61 01 3C */ lmw r27, 0x13c(r1) +/* 801AB644 001A85A4 80 01 01 84 */ lwz r0, 0x184(r1) +/* 801AB648 001A85A8 7C 08 03 A6 */ mtlr r0 +/* 801AB64C 001A85AC 38 21 01 80 */ addi r1, r1, 0x180 +/* 801AB650 001A85B0 4E 80 00 20 */ blr + +.global Think__18CScriptPlayerActorFfR13CStateManager +Think__18CScriptPlayerActorFfR13CStateManager: +/* 801AB654 001A85B4 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 801AB658 001A85B8 7C 08 02 A6 */ mflr r0 +/* 801AB65C 001A85BC 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 801AB660 001A85C0 DB E1 00 A0 */ stfd f31, 0xa0(r1) +/* 801AB664 001A85C4 F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0 +/* 801AB668 001A85C8 93 E1 00 9C */ stw r31, 0x9c(r1) +/* 801AB66C 001A85CC 93 C1 00 98 */ stw r30, 0x98(r1) +/* 801AB670 001A85D0 93 A1 00 94 */ stw r29, 0x94(r1) +/* 801AB674 001A85D4 93 81 00 90 */ stw r28, 0x90(r1) +/* 801AB678 001A85D8 88 C3 03 54 */ lbz r6, 0x354(r3) +/* 801AB67C 001A85DC FF E0 08 90 */ fmr f31, f1 +/* 801AB680 001A85E0 80 A4 08 B8 */ lwz r5, 0x8b8(r4) +/* 801AB684 001A85E4 7C 7D 1B 78 */ mr r29, r3 +/* 801AB688 001A85E8 54 C0 07 FF */ clrlwi. r0, r6, 0x1f +/* 801AB68C 001A85EC 7C 9E 23 78 */ mr r30, r4 +/* 801AB690 001A85F0 83 E5 00 00 */ lwz r31, 0(r5) +/* 801AB694 001A85F4 41 82 00 3C */ beq lbl_801AB6D0 +/* 801AB698 001A85F8 38 00 00 01 */ li r0, 1 +/* 801AB69C 001A85FC 38 A0 00 00 */ li r5, 0 +/* 801AB6A0 001A8600 50 06 36 72 */ rlwimi r6, r0, 6, 0x19, 0x19 +/* 801AB6A4 001A8604 98 DD 03 54 */ stb r6, 0x354(r29) +/* 801AB6A8 001A8608 88 1D 03 54 */ lbz r0, 0x354(r29) +/* 801AB6AC 001A860C 50 A0 07 FE */ rlwimi r0, r5, 0, 0x1f, 0x1f +/* 801AB6B0 001A8610 98 1D 03 54 */ stb r0, 0x354(r29) +/* 801AB6B4 001A8614 80 1F 00 20 */ lwz r0, 0x20(r31) +/* 801AB6B8 001A8618 90 1D 03 08 */ stw r0, 0x308(r29) +/* 801AB6BC 001A861C 80 BD 03 08 */ lwz r5, 0x308(r29) +/* 801AB6C0 001A8620 4B FF F0 B9 */ bl GetSuitCharIdx__18CScriptPlayerActorCFRC13CStateManager11EPlayerSuit +/* 801AB6C4 001A8624 7C 64 1B 78 */ mr r4, r3 +/* 801AB6C8 001A8628 7F A3 EB 78 */ mr r3, r29 +/* 801AB6CC 001A862C 4B FF F5 21 */ bl LoadSuit__18CScriptPlayerActorFUi +lbl_801AB6D0: +/* 801AB6D0 001A8630 88 1D 03 54 */ lbz r0, 0x354(r29) +/* 801AB6D4 001A8634 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 801AB6D8 001A8638 41 82 01 F8 */ beq lbl_801AB8D0 +/* 801AB6DC 001A863C 80 1D 03 50 */ lwz r0, 0x350(r29) +/* 801AB6E0 001A8640 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 801AB6E4 001A8644 40 82 00 60 */ bne lbl_801AB744 +/* 801AB6E8 001A8648 80 BF 00 20 */ lwz r5, 0x20(r31) +/* 801AB6EC 001A864C 7F A3 EB 78 */ mr r3, r29 +/* 801AB6F0 001A8650 7F C4 F3 78 */ mr r4, r30 +/* 801AB6F4 001A8654 4B FF F0 85 */ bl GetSuitCharIdx__18CScriptPlayerActorCFRC13CStateManager11EPlayerSuit +/* 801AB6F8 001A8658 80 1D 03 10 */ lwz r0, 0x310(r29) +/* 801AB6FC 001A865C 7C 7C 1B 78 */ mr r28, r3 +/* 801AB700 001A8660 7C 1C 00 00 */ cmpw r28, r0 +/* 801AB704 001A8664 41 82 00 40 */ beq lbl_801AB744 +/* 801AB708 001A8668 38 61 00 34 */ addi r3, r1, 0x34 +/* 801AB70C 001A866C 4B E8 F0 99 */ bl CModelDataNull__10CModelDataFv +/* 801AB710 001A8670 7F A3 EB 78 */ mr r3, r29 +/* 801AB714 001A8674 38 81 00 34 */ addi r4, r1, 0x34 +/* 801AB718 001A8678 4B EA 99 19 */ bl SetModelData__6CActorFRC10CModelData +/* 801AB71C 001A867C 38 61 00 34 */ addi r3, r1, 0x34 +/* 801AB720 001A8680 38 80 FF FF */ li r4, -1 +/* 801AB724 001A8684 4B F6 B3 29 */ bl __dt__10CModelDataFv +/* 801AB728 001A8688 7F A3 EB 78 */ mr r3, r29 +/* 801AB72C 001A868C 7F 84 E3 78 */ mr r4, r28 +/* 801AB730 001A8690 4B FF F4 BD */ bl LoadSuit__18CScriptPlayerActorFUi +/* 801AB734 001A8694 88 1D 03 54 */ lbz r0, 0x354(r29) +/* 801AB738 001A8698 38 60 00 01 */ li r3, 1 +/* 801AB73C 001A869C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801AB740 001A86A0 98 1D 03 54 */ stb r0, 0x354(r29) +lbl_801AB744: +/* 801AB744 001A86A4 80 9D 03 04 */ lwz r4, 0x304(r29) +/* 801AB748 001A86A8 7F A3 EB 78 */ mr r3, r29 +/* 801AB74C 001A86AC 2C 04 FF FF */ cmpwi r4, -1 +/* 801AB750 001A86B0 41 82 00 08 */ beq lbl_801AB758 +/* 801AB754 001A86B4 48 00 00 08 */ b lbl_801AB75C +lbl_801AB758: +/* 801AB758 001A86B8 80 9F 00 08 */ lwz r4, 8(r31) +lbl_801AB75C: +/* 801AB75C 001A86BC 4B FF F3 99 */ bl LoadBeam__18CScriptPlayerActorF7EBeamId +/* 801AB760 001A86C0 88 1D 03 54 */ lbz r0, 0x354(r29) +/* 801AB764 001A86C4 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 801AB768 001A86C8 41 82 00 10 */ beq lbl_801AB778 +/* 801AB76C 001A86CC 7F A3 EB 78 */ mr r3, r29 +/* 801AB770 001A86D0 7F C4 F3 78 */ mr r4, r30 +/* 801AB774 001A86D4 4B FF F1 35 */ bl PumpBeamModel__18CScriptPlayerActorFRC13CStateManager +lbl_801AB778: +/* 801AB778 001A86D8 88 1D 03 54 */ lbz r0, 0x354(r29) +/* 801AB77C 001A86DC 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 801AB780 001A86E0 41 82 00 10 */ beq lbl_801AB790 +/* 801AB784 001A86E4 7F A3 EB 78 */ mr r3, r29 +/* 801AB788 001A86E8 7F C4 F3 78 */ mr r4, r30 +/* 801AB78C 001A86EC 4B FF F1 BD */ bl PumpSuitModel__18CScriptPlayerActorFRC13CStateManager +lbl_801AB790: +/* 801AB790 001A86F0 88 7D 03 54 */ lbz r3, 0x354(r29) +/* 801AB794 001A86F4 54 60 F7 FF */ rlwinm. r0, r3, 0x1e, 0x1f, 0x1f +/* 801AB798 001A86F8 40 82 00 68 */ bne lbl_801AB800 +/* 801AB79C 001A86FC 54 60 EF FF */ rlwinm. r0, r3, 0x1d, 0x1f, 0x1f +/* 801AB7A0 001A8700 40 82 00 50 */ bne lbl_801AB7F0 +/* 801AB7A4 001A8704 54 60 E7 FF */ rlwinm. r0, r3, 0x1c, 0x1f, 0x1f +/* 801AB7A8 001A8708 40 82 00 48 */ bne lbl_801AB7F0 +/* 801AB7AC 001A870C 80 7D 00 64 */ lwz r3, 0x64(r29) +/* 801AB7B0 001A8710 38 80 00 00 */ li r4, 0 +/* 801AB7B4 001A8714 28 03 00 00 */ cmplwi r3, 0 +/* 801AB7B8 001A8718 41 82 00 20 */ beq lbl_801AB7D8 +/* 801AB7BC 001A871C 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801AB7C0 001A8720 28 00 00 00 */ cmplwi r0, 0 +/* 801AB7C4 001A8724 40 82 00 10 */ bne lbl_801AB7D4 +/* 801AB7C8 001A8728 88 03 00 28 */ lbz r0, 0x28(r3) +/* 801AB7CC 001A872C 28 00 00 00 */ cmplwi r0, 0 +/* 801AB7D0 001A8730 41 82 00 08 */ beq lbl_801AB7D8 +lbl_801AB7D4: +/* 801AB7D4 001A8734 38 80 00 01 */ li r4, 1 +lbl_801AB7D8: +/* 801AB7D8 001A8738 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 801AB7DC 001A873C 41 82 00 14 */ beq lbl_801AB7F0 +/* 801AB7E0 001A8740 38 80 00 00 */ li r4, 0 +/* 801AB7E4 001A8744 4B F6 94 A1 */ bl IsLoaded__10CModelDataCFi +/* 801AB7E8 001A8748 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801AB7EC 001A874C 40 82 00 14 */ bne lbl_801AB800 +lbl_801AB7F0: +/* 801AB7F0 001A8750 88 1D 03 54 */ lbz r0, 0x354(r29) +/* 801AB7F4 001A8754 38 60 00 01 */ li r3, 1 +/* 801AB7F8 001A8758 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801AB7FC 001A875C 98 1D 03 54 */ stb r0, 0x354(r29) +lbl_801AB800: +/* 801AB800 001A8760 88 7D 03 54 */ lbz r3, 0x354(r29) +/* 801AB804 001A8764 54 60 F7 FF */ rlwinm. r0, r3, 0x1e, 0x1f, 0x1f +/* 801AB808 001A8768 41 82 00 C8 */ beq lbl_801AB8D0 +/* 801AB80C 001A876C 54 60 EF FF */ rlwinm. r0, r3, 0x1d, 0x1f, 0x1f +/* 801AB810 001A8770 40 82 00 C0 */ bne lbl_801AB8D0 +/* 801AB814 001A8774 54 60 E7 FF */ rlwinm. r0, r3, 0x1c, 0x1f, 0x1f +/* 801AB818 001A8778 40 82 00 B8 */ bne lbl_801AB8D0 +/* 801AB81C 001A877C 80 7D 00 64 */ lwz r3, 0x64(r29) +/* 801AB820 001A8780 38 80 00 00 */ li r4, 0 +/* 801AB824 001A8784 28 03 00 00 */ cmplwi r3, 0 +/* 801AB828 001A8788 41 82 00 20 */ beq lbl_801AB848 +/* 801AB82C 001A878C 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801AB830 001A8790 28 00 00 00 */ cmplwi r0, 0 +/* 801AB834 001A8794 40 82 00 10 */ bne lbl_801AB844 +/* 801AB838 001A8798 88 03 00 28 */ lbz r0, 0x28(r3) +/* 801AB83C 001A879C 28 00 00 00 */ cmplwi r0, 0 +/* 801AB840 001A87A0 41 82 00 08 */ beq lbl_801AB848 +lbl_801AB844: +/* 801AB844 001A87A4 38 80 00 01 */ li r4, 1 +lbl_801AB848: +/* 801AB848 001A87A8 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 801AB84C 001A87AC 41 82 00 84 */ beq lbl_801AB8D0 +/* 801AB850 001A87B0 38 80 00 00 */ li r4, 0 +/* 801AB854 001A87B4 4B F6 94 31 */ bl IsLoaded__10CModelDataCFi +/* 801AB858 001A87B8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801AB85C 001A87BC 41 82 00 74 */ beq lbl_801AB8D0 +/* 801AB860 001A87C0 88 1D 03 55 */ lbz r0, 0x355(r29) +/* 801AB864 001A87C4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801AB868 001A87C8 41 82 00 44 */ beq lbl_801AB8AC +/* 801AB86C 001A87CC 80 DD 00 04 */ lwz r6, 4(r29) +/* 801AB870 001A87D0 38 60 00 00 */ li r3, 0 +/* 801AB874 001A87D4 80 BE 08 50 */ lwz r5, 0x850(r30) +/* 801AB878 001A87D8 54 C4 18 38 */ slwi r4, r6, 3 +/* 801AB87C 001A87DC 90 C1 00 0C */ stw r6, 0xc(r1) +/* 801AB880 001A87E0 80 A5 00 20 */ lwz r5, 0x20(r5) +/* 801AB884 001A87E4 38 04 00 04 */ addi r0, r4, 4 +/* 801AB888 001A87E8 90 C1 00 08 */ stw r6, 8(r1) +/* 801AB88C 001A87EC 7C 85 00 2E */ lwzx r4, r5, r0 +/* 801AB890 001A87F0 80 A4 01 2C */ lwz r5, 0x12c(r4) +/* 801AB894 001A87F4 80 85 11 3C */ lwz r4, 0x113c(r5) +/* 801AB898 001A87F8 38 04 FF FF */ addi r0, r4, -1 +/* 801AB89C 001A87FC 90 05 11 3C */ stw r0, 0x113c(r5) +/* 801AB8A0 001A8800 88 1D 03 55 */ lbz r0, 0x355(r29) +/* 801AB8A4 001A8804 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801AB8A8 001A8808 98 1D 03 55 */ stb r0, 0x355(r29) +lbl_801AB8AC: +/* 801AB8AC 001A880C 88 1D 03 54 */ lbz r0, 0x354(r29) +/* 801AB8B0 001A8810 38 60 00 00 */ li r3, 0 +/* 801AB8B4 001A8814 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801AB8B8 001A8818 7F A3 EB 78 */ mr r3, r29 +/* 801AB8BC 001A881C 98 1D 03 54 */ stb r0, 0x354(r29) +/* 801AB8C0 001A8820 7F C5 F3 78 */ mr r5, r30 +/* 801AB8C4 001A8824 38 80 00 01 */ li r4, 1 +/* 801AB8C8 001A8828 38 C0 FF FF */ li r6, -1 +/* 801AB8CC 001A882C 4B EA 57 F5 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +lbl_801AB8D0: +/* 801AB8D0 001A8830 80 1D 02 EC */ lwz r0, 0x2ec(r29) +/* 801AB8D4 001A8834 2C 00 00 03 */ cmpwi r0, 3 +/* 801AB8D8 001A8838 40 82 00 B8 */ bne lbl_801AB990 +/* 801AB8DC 001A883C 88 1D 03 44 */ lbz r0, 0x344(r29) +/* 801AB8E0 001A8840 28 00 00 00 */ cmplwi r0, 0 +/* 801AB8E4 001A8844 40 82 01 74 */ bne lbl_801ABA58 +/* 801AB8E8 001A8848 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801AB8EC 001A884C 3C 60 80 3D */ lis r3, lbl_803D14B8@ha +/* 801AB8F0 001A8850 38 A3 14 B8 */ addi r5, r3, lbl_803D14B8@l +/* 801AB8F4 001A8854 38 61 00 10 */ addi r3, r1, 0x10 +/* 801AB8F8 001A8858 81 84 00 00 */ lwz r12, 0(r4) +/* 801AB8FC 001A885C 38 A5 00 10 */ addi r5, r5, 0x10 +/* 801AB900 001A8860 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801AB904 001A8864 7D 89 03 A6 */ mtctr r12 +/* 801AB908 001A8868 4E 80 04 21 */ bctrl +/* 801AB90C 001A886C 38 61 00 28 */ addi r3, r1, 0x28 +/* 801AB910 001A8870 38 81 00 10 */ addi r4, r1, 0x10 +/* 801AB914 001A8874 48 19 55 95 */ bl __ct__6CTokenFRC6CToken +/* 801AB918 001A8878 38 00 00 00 */ li r0, 0 +/* 801AB91C 001A887C 90 01 00 30 */ stw r0, 0x30(r1) +/* 801AB920 001A8880 88 1D 03 44 */ lbz r0, 0x344(r29) +/* 801AB924 001A8884 28 00 00 00 */ cmplwi r0, 0 +/* 801AB928 001A8888 40 82 00 2C */ bne lbl_801AB954 +/* 801AB92C 001A888C 37 FD 03 38 */ addic. r31, r29, 0x338 +/* 801AB930 001A8890 41 82 00 18 */ beq lbl_801AB948 +/* 801AB934 001A8894 7F E3 FB 78 */ mr r3, r31 +/* 801AB938 001A8898 38 81 00 28 */ addi r4, r1, 0x28 +/* 801AB93C 001A889C 48 19 55 6D */ bl __ct__6CTokenFRC6CToken +/* 801AB940 001A88A0 80 01 00 30 */ lwz r0, 0x30(r1) +/* 801AB944 001A88A4 90 1F 00 08 */ stw r0, 8(r31) +lbl_801AB948: +/* 801AB948 001A88A8 38 00 00 01 */ li r0, 1 +/* 801AB94C 001A88AC 98 1D 03 44 */ stb r0, 0x344(r29) +/* 801AB950 001A88B0 48 00 00 1C */ b lbl_801AB96C +lbl_801AB954: +/* 801AB954 001A88B4 3B FD 03 38 */ addi r31, r29, 0x338 +/* 801AB958 001A88B8 38 81 00 28 */ addi r4, r1, 0x28 +/* 801AB95C 001A88BC 7F E3 FB 78 */ mr r3, r31 +/* 801AB960 001A88C0 48 19 53 65 */ bl __as__6CTokenFRC6CToken +/* 801AB964 001A88C4 80 01 00 30 */ lwz r0, 0x30(r1) +/* 801AB968 001A88C8 90 1F 00 08 */ stw r0, 8(r31) +lbl_801AB96C: +/* 801AB96C 001A88CC 38 61 00 28 */ addi r3, r1, 0x28 +/* 801AB970 001A88D0 38 80 00 00 */ li r4, 0 +/* 801AB974 001A88D4 48 19 54 CD */ bl __dt__6CTokenFv +/* 801AB978 001A88D8 38 61 00 10 */ addi r3, r1, 0x10 +/* 801AB97C 001A88DC 38 80 FF FF */ li r4, -1 +/* 801AB980 001A88E0 48 19 54 C1 */ bl __dt__6CTokenFv +/* 801AB984 001A88E4 38 7D 03 38 */ addi r3, r29, 0x338 +/* 801AB988 001A88E8 48 19 53 FD */ bl Lock__6CTokenFv +/* 801AB98C 001A88EC 48 00 00 CC */ b lbl_801ABA58 +lbl_801AB990: +/* 801AB990 001A88F0 88 1D 03 44 */ lbz r0, 0x344(r29) +/* 801AB994 001A88F4 28 00 00 00 */ cmplwi r0, 0 +/* 801AB998 001A88F8 41 82 00 C0 */ beq lbl_801ABA58 +/* 801AB99C 001A88FC 3B FD 03 38 */ addi r31, r29, 0x338 +/* 801AB9A0 001A8900 38 81 00 18 */ addi r4, r1, 0x18 +/* 801AB9A4 001A8904 38 00 00 00 */ li r0, 0 +/* 801AB9A8 001A8908 7C 1F 20 40 */ cmplw r31, r4 +/* 801AB9AC 001A890C 98 01 00 24 */ stb r0, 0x24(r1) +/* 801AB9B0 001A8910 41 82 00 7C */ beq lbl_801ABA2C +/* 801AB9B4 001A8914 28 00 00 00 */ cmplwi r0, 0 +/* 801AB9B8 001A8918 41 82 00 48 */ beq lbl_801ABA00 +/* 801AB9BC 001A891C 88 1D 03 44 */ lbz r0, 0x344(r29) +/* 801AB9C0 001A8920 28 00 00 00 */ cmplwi r0, 0 +/* 801AB9C4 001A8924 40 82 00 28 */ bne lbl_801AB9EC +/* 801AB9C8 001A8928 37 FD 03 38 */ addic. r31, r29, 0x338 +/* 801AB9CC 001A892C 41 82 00 14 */ beq lbl_801AB9E0 +/* 801AB9D0 001A8930 7F E3 FB 78 */ mr r3, r31 +/* 801AB9D4 001A8934 48 19 54 D5 */ bl __ct__6CTokenFRC6CToken +/* 801AB9D8 001A8938 80 01 00 20 */ lwz r0, 0x20(r1) +/* 801AB9DC 001A893C 90 1F 00 08 */ stw r0, 8(r31) +lbl_801AB9E0: +/* 801AB9E0 001A8940 38 00 00 01 */ li r0, 1 +/* 801AB9E4 001A8944 98 1D 03 44 */ stb r0, 0x344(r29) +/* 801AB9E8 001A8948 48 00 00 44 */ b lbl_801ABA2C +lbl_801AB9EC: +/* 801AB9EC 001A894C 7F E3 FB 78 */ mr r3, r31 +/* 801AB9F0 001A8950 48 19 52 D5 */ bl __as__6CTokenFRC6CToken +/* 801AB9F4 001A8954 80 01 00 20 */ lwz r0, 0x20(r1) +/* 801AB9F8 001A8958 90 1F 00 08 */ stw r0, 8(r31) +/* 801AB9FC 001A895C 48 00 00 30 */ b lbl_801ABA2C +lbl_801ABA00: +/* 801ABA00 001A8960 88 1D 03 44 */ lbz r0, 0x344(r29) +/* 801ABA04 001A8964 28 00 00 00 */ cmplwi r0, 0 +/* 801ABA08 001A8968 41 82 00 1C */ beq lbl_801ABA24 +/* 801ABA0C 001A896C 34 7D 03 38 */ addic. r3, r29, 0x338 +/* 801ABA10 001A8970 41 82 00 14 */ beq lbl_801ABA24 +/* 801ABA14 001A8974 28 03 00 00 */ cmplwi r3, 0 +/* 801ABA18 001A8978 41 82 00 0C */ beq lbl_801ABA24 +/* 801ABA1C 001A897C 38 80 00 00 */ li r4, 0 +/* 801ABA20 001A8980 48 19 54 21 */ bl __dt__6CTokenFv +lbl_801ABA24: +/* 801ABA24 001A8984 38 00 00 00 */ li r0, 0 +/* 801ABA28 001A8988 98 1D 03 44 */ stb r0, 0x344(r29) +lbl_801ABA2C: +/* 801ABA2C 001A898C 88 01 00 24 */ lbz r0, 0x24(r1) +/* 801ABA30 001A8990 28 00 00 00 */ cmplwi r0, 0 +/* 801ABA34 001A8994 41 82 00 1C */ beq lbl_801ABA50 +/* 801ABA38 001A8998 34 61 00 18 */ addic. r3, r1, 0x18 +/* 801ABA3C 001A899C 41 82 00 14 */ beq lbl_801ABA50 +/* 801ABA40 001A89A0 28 03 00 00 */ cmplwi r3, 0 +/* 801ABA44 001A89A4 41 82 00 0C */ beq lbl_801ABA50 +/* 801ABA48 001A89A8 38 80 00 00 */ li r4, 0 +/* 801ABA4C 001A89AC 48 19 53 F5 */ bl __dt__6CTokenFv +lbl_801ABA50: +/* 801ABA50 001A89B0 38 00 00 00 */ li r0, 0 +/* 801ABA54 001A89B4 98 01 00 24 */ stb r0, 0x24(r1) +lbl_801ABA58: +/* 801ABA58 001A89B8 88 1D 03 44 */ lbz r0, 0x344(r29) +/* 801ABA5C 001A89BC 28 00 00 00 */ cmplwi r0, 0 +/* 801ABA60 001A89C0 41 82 00 A0 */ beq lbl_801ABB00 +/* 801ABA64 001A89C4 3B FD 03 38 */ addi r31, r29, 0x338 +/* 801ABA68 001A89C8 80 1D 03 40 */ lwz r0, 0x340(r29) +/* 801ABA6C 001A89CC 28 00 00 00 */ cmplwi r0, 0 +/* 801ABA70 001A89D0 40 82 00 30 */ bne lbl_801ABAA0 +/* 801ABA74 001A89D4 88 1F 00 04 */ lbz r0, 4(r31) +/* 801ABA78 001A89D8 28 00 00 00 */ cmplwi r0, 0 +/* 801ABA7C 001A89DC 41 82 00 24 */ beq lbl_801ABAA0 +/* 801ABA80 001A89E0 80 7F 00 00 */ lwz r3, 0(r31) +/* 801ABA84 001A89E4 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801ABA88 001A89E8 28 00 00 00 */ cmplwi r0, 0 +/* 801ABA8C 001A89EC 41 82 00 14 */ beq lbl_801ABAA0 +/* 801ABA90 001A89F0 7F E3 FB 78 */ mr r3, r31 +/* 801ABA94 001A89F4 48 19 53 79 */ bl GetObj__6CTokenFv +/* 801ABA98 001A89F8 80 03 00 04 */ lwz r0, 4(r3) +/* 801ABA9C 001A89FC 90 1F 00 08 */ stw r0, 8(r31) +lbl_801ABAA0: +/* 801ABAA0 001A8A00 C0 3D 03 4C */ lfs f1, 0x34c(r29) +/* 801ABAA4 001A8A04 3C 00 43 30 */ lis r0, 0x4330 +/* 801ABAA8 001A8A08 C0 02 A8 5C */ lfs f0, lbl_805AC57C@sda21(r2) +/* 801ABAAC 001A8A0C C0 42 A8 60 */ lfs f2, lbl_805AC580@sda21(r2) +/* 801ABAB0 001A8A10 EC 01 00 2A */ fadds f0, f1, f0 +/* 801ABAB4 001A8A14 90 01 00 88 */ stw r0, 0x88(r1) +/* 801ABAB8 001A8A18 C8 62 A8 68 */ lfd f3, lbl_805AC588@sda21(r2) +/* 801ABABC 001A8A1C C0 22 A8 64 */ lfs f1, lbl_805AC584@sda21(r2) +/* 801ABAC0 001A8A20 D0 1D 03 4C */ stfs f0, 0x34c(r29) +/* 801ABAC4 001A8A24 C0 02 A8 3C */ lfs f0, lbl_805AC55C@sda21(r2) +/* 801ABAC8 001A8A28 C0 9D 03 4C */ lfs f4, 0x34c(r29) +/* 801ABACC 001A8A2C EC 44 00 B2 */ fmuls f2, f4, f2 +/* 801ABAD0 001A8A30 FC 40 10 1E */ fctiwz f2, f2 +/* 801ABAD4 001A8A34 D8 41 00 80 */ stfd f2, 0x80(r1) +/* 801ABAD8 001A8A38 80 01 00 84 */ lwz r0, 0x84(r1) +/* 801ABADC 001A8A3C 6C 00 80 00 */ xoris r0, r0, 0x8000 +/* 801ABAE0 001A8A40 90 01 00 8C */ stw r0, 0x8c(r1) +/* 801ABAE4 001A8A44 C8 41 00 88 */ lfd f2, 0x88(r1) +/* 801ABAE8 001A8A48 EC 42 18 28 */ fsubs f2, f2, f3 +/* 801ABAEC 001A8A4C EC 42 20 7C */ fnmsubs f2, f2, f1, f4 +/* 801ABAF0 001A8A50 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801ABAF4 001A8A54 40 80 00 08 */ bge lbl_801ABAFC +/* 801ABAF8 001A8A58 EC 42 08 2A */ fadds f2, f2, f1 +lbl_801ABAFC: +/* 801ABAFC 001A8A5C D0 5D 03 4C */ stfs f2, 0x34c(r29) +lbl_801ABB00: +/* 801ABB00 001A8A60 FC 20 F8 90 */ fmr f1, f31 +/* 801ABB04 001A8A64 7F A3 EB 78 */ mr r3, r29 +/* 801ABB08 001A8A68 7F C4 F3 78 */ mr r4, r30 +/* 801ABB0C 001A8A6C 4B EC 9A 01 */ bl Think__12CScriptActorFfR13CStateManager +/* 801ABB10 001A8A70 E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0 +/* 801ABB14 001A8A74 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 801ABB18 001A8A78 CB E1 00 A0 */ lfd f31, 0xa0(r1) +/* 801ABB1C 001A8A7C 83 E1 00 9C */ lwz r31, 0x9c(r1) +/* 801ABB20 001A8A80 83 C1 00 98 */ lwz r30, 0x98(r1) +/* 801ABB24 001A8A84 83 A1 00 94 */ lwz r29, 0x94(r1) +/* 801ABB28 001A8A88 83 81 00 90 */ lwz r28, 0x90(r1) +/* 801ABB2C 001A8A8C 7C 08 03 A6 */ mtlr r0 +/* 801ABB30 001A8A90 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 801ABB34 001A8A94 4E 80 00 20 */ blr + +.global AcceptScriptMsg__18CScriptPlayerActorF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__18CScriptPlayerActorF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 801ABB38 001A8A98 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 801ABB3C 001A8A9C 7C 08 02 A6 */ mflr r0 +/* 801ABB40 001A8AA0 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 801ABB44 001A8AA4 BF 61 00 8C */ stmw r27, 0x8c(r1) +/* 801ABB48 001A8AA8 7C 9D 23 78 */ mr r29, r4 +/* 801ABB4C 001A8AAC 28 1D 00 23 */ cmplwi r29, 0x23 +/* 801ABB50 001A8AB0 7C 7C 1B 78 */ mr r28, r3 +/* 801ABB54 001A8AB4 7C BE 2B 78 */ mr r30, r5 +/* 801ABB58 001A8AB8 7C DF 33 78 */ mr r31, r6 +/* 801ABB5C 001A8ABC 41 81 04 50 */ bgt lbl_801ABFAC +/* 801ABB60 001A8AC0 3C 80 80 3E */ lis r4, lbl_803E4C64@ha +/* 801ABB64 001A8AC4 57 A0 10 3A */ slwi r0, r29, 2 +/* 801ABB68 001A8AC8 38 84 4C 64 */ addi r4, r4, lbl_803E4C64@l +/* 801ABB6C 001A8ACC 7C 04 00 2E */ lwzx r0, r4, r0 +/* 801ABB70 001A8AD0 7C 09 03 A6 */ mtctr r0 +/* 801ABB74 001A8AD4 4E 80 04 20 */ bctr +/* 801ABB78 001A8AD8 88 1C 03 54 */ lbz r0, 0x354(r28) +/* 801ABB7C 001A8ADC 38 C0 00 01 */ li r6, 1 +/* 801ABB80 001A8AE0 50 C0 07 FE */ rlwimi r0, r6, 0, 0x1f, 0x1f +/* 801ABB84 001A8AE4 98 1C 03 54 */ stb r0, 0x354(r28) +/* 801ABB88 001A8AE8 80 1C 03 50 */ lwz r0, 0x350(r28) +/* 801ABB8C 001A8AEC 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c +/* 801ABB90 001A8AF0 41 82 00 40 */ beq lbl_801ABBD0 +/* 801ABB94 001A8AF4 80 BC 00 04 */ lwz r5, 4(r28) +/* 801ABB98 001A8AF8 80 9F 08 50 */ lwz r4, 0x850(r31) +/* 801ABB9C 001A8AFC 54 A3 18 38 */ slwi r3, r5, 3 +/* 801ABBA0 001A8B00 90 A1 00 10 */ stw r5, 0x10(r1) +/* 801ABBA4 001A8B04 80 84 00 20 */ lwz r4, 0x20(r4) +/* 801ABBA8 001A8B08 38 03 00 04 */ addi r0, r3, 4 +/* 801ABBAC 001A8B0C 90 A1 00 0C */ stw r5, 0xc(r1) +/* 801ABBB0 001A8B10 7C 64 00 2E */ lwzx r3, r4, r0 +/* 801ABBB4 001A8B14 80 83 01 2C */ lwz r4, 0x12c(r3) +/* 801ABBB8 001A8B18 80 64 11 3C */ lwz r3, 0x113c(r4) +/* 801ABBBC 001A8B1C 38 03 00 01 */ addi r0, r3, 1 +/* 801ABBC0 001A8B20 90 04 11 3C */ stw r0, 0x113c(r4) +/* 801ABBC4 001A8B24 88 1C 03 55 */ lbz r0, 0x355(r28) +/* 801ABBC8 001A8B28 50 C0 3E 30 */ rlwimi r0, r6, 7, 0x18, 0x18 +/* 801ABBCC 001A8B2C 98 1C 03 55 */ stb r0, 0x355(r28) +lbl_801ABBD0: +/* 801ABBD0 001A8B30 88 1C 00 30 */ lbz r0, 0x30(r28) +/* 801ABBD4 001A8B34 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801ABBD8 001A8B38 41 82 03 D4 */ beq lbl_801ABFAC +/* 801ABBDC 001A8B3C 7F 83 E3 78 */ mr r3, r28 +/* 801ABBE0 001A8B40 7F E4 FB 78 */ mr r4, r31 +/* 801ABBE4 001A8B44 38 A0 00 01 */ li r5, 1 +/* 801ABBE8 001A8B48 4B FF E9 55 */ bl SetupEnvFx__18CScriptPlayerActorFRC13CStateManagerb +/* 801ABBEC 001A8B4C 7F 83 E3 78 */ mr r3, r28 +/* 801ABBF0 001A8B50 7F E4 FB 78 */ mr r4, r31 +/* 801ABBF4 001A8B54 38 A0 00 01 */ li r5, 1 +/* 801ABBF8 001A8B58 4B FF E8 05 */ bl SetIntoStateManager__18CScriptPlayerActorFR13CStateManagerb +/* 801ABBFC 001A8B5C 48 00 03 B0 */ b lbl_801ABFAC +/* 801ABC00 001A8B60 88 1C 00 30 */ lbz r0, 0x30(r28) +/* 801ABC04 001A8B64 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801ABC08 001A8B68 40 82 03 A4 */ bne lbl_801ABFAC +/* 801ABC0C 001A8B6C 80 1C 03 50 */ lwz r0, 0x350(r28) +/* 801ABC10 001A8B70 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 801ABC14 001A8B74 41 82 00 18 */ beq lbl_801ABC2C +/* 801ABC18 001A8B78 7F E4 FB 78 */ mr r4, r31 +/* 801ABC1C 001A8B7C 4B FF EB E1 */ bl GetNextSuitCharIdx__18CScriptPlayerActorFRC13CStateManager +/* 801ABC20 001A8B80 7C 64 1B 78 */ mr r4, r3 +/* 801ABC24 001A8B84 7F 83 E3 78 */ mr r3, r28 +/* 801ABC28 001A8B88 4B FF EF C5 */ bl LoadSuit__18CScriptPlayerActorFUi +lbl_801ABC2C: +/* 801ABC2C 001A8B8C 7F 83 E3 78 */ mr r3, r28 +/* 801ABC30 001A8B90 7F E4 FB 78 */ mr r4, r31 +/* 801ABC34 001A8B94 38 A0 00 01 */ li r5, 1 +/* 801ABC38 001A8B98 4B FF E7 C5 */ bl SetIntoStateManager__18CScriptPlayerActorFR13CStateManagerb +/* 801ABC3C 001A8B9C 7F 83 E3 78 */ mr r3, r28 +/* 801ABC40 001A8BA0 7F E4 FB 78 */ mr r4, r31 +/* 801ABC44 001A8BA4 38 A0 00 01 */ li r5, 1 +/* 801ABC48 001A8BA8 4B FF E8 F5 */ bl SetupEnvFx__18CScriptPlayerActorFRC13CStateManagerb +/* 801ABC4C 001A8BAC 88 1C 03 54 */ lbz r0, 0x354(r28) +/* 801ABC50 001A8BB0 38 60 00 01 */ li r3, 1 +/* 801ABC54 001A8BB4 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 801ABC58 001A8BB8 98 1C 03 54 */ stb r0, 0x354(r28) +/* 801ABC5C 001A8BBC 48 00 03 50 */ b lbl_801ABFAC +/* 801ABC60 001A8BC0 80 1C 03 50 */ lwz r0, 0x350(r28) +/* 801ABC64 001A8BC4 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 801ABC68 001A8BC8 41 82 03 44 */ beq lbl_801ABFAC +/* 801ABC6C 001A8BCC 88 1C 03 54 */ lbz r0, 0x354(r28) +/* 801ABC70 001A8BD0 38 60 00 00 */ li r3, 0 +/* 801ABC74 001A8BD4 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801ABC78 001A8BD8 38 60 00 01 */ li r3, 1 +/* 801ABC7C 001A8BDC 98 1C 03 54 */ stb r0, 0x354(r28) +/* 801ABC80 001A8BE0 7F E4 FB 78 */ mr r4, r31 +/* 801ABC84 001A8BE4 88 1C 03 54 */ lbz r0, 0x354(r28) +/* 801ABC88 001A8BE8 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 801ABC8C 001A8BEC 98 1C 03 54 */ stb r0, 0x354(r28) +/* 801ABC90 001A8BF0 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 801ABC94 001A8BF4 4B E6 5E 99 */ bl AsyncLoadSuit__7CPlayerFR13CStateManager +/* 801ABC98 001A8BF8 48 00 03 14 */ b lbl_801ABFAC +/* 801ABC9C 001A8BFC 88 1C 00 30 */ lbz r0, 0x30(r28) +/* 801ABCA0 001A8C00 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801ABCA4 001A8C04 41 82 00 2C */ beq lbl_801ABCD0 +/* 801ABCA8 001A8C08 80 1C 03 50 */ lwz r0, 0x350(r28) +/* 801ABCAC 001A8C0C 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b +/* 801ABCB0 001A8C10 40 82 00 10 */ bne lbl_801ABCC0 +/* 801ABCB4 001A8C14 7F E4 FB 78 */ mr r4, r31 +/* 801ABCB8 001A8C18 38 A0 00 00 */ li r5, 0 +/* 801ABCBC 001A8C1C 4B FF E7 41 */ bl SetIntoStateManager__18CScriptPlayerActorFR13CStateManagerb +lbl_801ABCC0: +/* 801ABCC0 001A8C20 7F 83 E3 78 */ mr r3, r28 +/* 801ABCC4 001A8C24 7F E4 FB 78 */ mr r4, r31 +/* 801ABCC8 001A8C28 38 A0 00 00 */ li r5, 0 +/* 801ABCCC 001A8C2C 4B FF E8 71 */ bl SetupEnvFx__18CScriptPlayerActorFRC13CStateManagerb +lbl_801ABCD0: +/* 801ABCD0 001A8C30 80 1C 03 50 */ lwz r0, 0x350(r28) +/* 801ABCD4 001A8C34 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d +/* 801ABCD8 001A8C38 41 82 02 D4 */ beq lbl_801ABFAC +/* 801ABCDC 001A8C3C 88 1C 00 30 */ lbz r0, 0x30(r28) +/* 801ABCE0 001A8C40 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801ABCE4 001A8C44 40 82 00 0C */ bne lbl_801ABCF0 +/* 801ABCE8 001A8C48 2C 1D 00 0A */ cmpwi r29, 0xa +/* 801ABCEC 001A8C4C 40 82 02 C0 */ bne lbl_801ABFAC +lbl_801ABCF0: +/* 801ABCF0 001A8C50 38 00 FF FF */ li r0, -1 +/* 801ABCF4 001A8C54 38 80 00 01 */ li r4, 1 +/* 801ABCF8 001A8C58 90 1C 03 0C */ stw r0, 0x30c(r28) +/* 801ABCFC 001A8C5C 90 1C 03 10 */ stw r0, 0x310(r28) +/* 801ABD00 001A8C60 80 7C 03 14 */ lwz r3, 0x314(r28) +/* 801ABD04 001A8C64 4B F6 AD 49 */ bl __dt__10CModelDataFv +/* 801ABD08 001A8C68 38 00 00 00 */ li r0, 0 +/* 801ABD0C 001A8C6C 38 80 00 01 */ li r4, 1 +/* 801ABD10 001A8C70 90 1C 03 14 */ stw r0, 0x314(r28) +/* 801ABD14 001A8C74 80 7C 03 18 */ lwz r3, 0x318(r28) +/* 801ABD18 001A8C78 4B F6 AD 35 */ bl __dt__10CModelDataFv +/* 801ABD1C 001A8C7C 38 00 00 00 */ li r0, 0 +/* 801ABD20 001A8C80 90 1C 03 18 */ stw r0, 0x318(r28) +/* 801ABD24 001A8C84 83 7C 03 1C */ lwz r27, 0x31c(r28) +/* 801ABD28 001A8C88 28 1B 00 00 */ cmplwi r27, 0 +/* 801ABD2C 001A8C8C 41 82 00 18 */ beq lbl_801ABD44 +/* 801ABD30 001A8C90 7F 63 DB 78 */ mr r3, r27 +/* 801ABD34 001A8C94 38 80 00 00 */ li r4, 0 +/* 801ABD38 001A8C98 48 19 51 09 */ bl __dt__6CTokenFv +/* 801ABD3C 001A8C9C 7F 63 DB 78 */ mr r3, r27 +/* 801ABD40 001A8CA0 48 16 9B F1 */ bl Free__7CMemoryFPCv +lbl_801ABD44: +/* 801ABD44 001A8CA4 38 00 00 00 */ li r0, 0 +/* 801ABD48 001A8CA8 90 1C 03 1C */ stw r0, 0x31c(r28) +/* 801ABD4C 001A8CAC 83 7C 03 20 */ lwz r27, 0x320(r28) +/* 801ABD50 001A8CB0 28 1B 00 00 */ cmplwi r27, 0 +/* 801ABD54 001A8CB4 41 82 00 1C */ beq lbl_801ABD70 +/* 801ABD58 001A8CB8 41 82 00 10 */ beq lbl_801ABD68 +/* 801ABD5C 001A8CBC 7F 63 DB 78 */ mr r3, r27 +/* 801ABD60 001A8CC0 38 80 00 00 */ li r4, 0 +/* 801ABD64 001A8CC4 48 19 50 DD */ bl __dt__6CTokenFv +lbl_801ABD68: +/* 801ABD68 001A8CC8 7F 63 DB 78 */ mr r3, r27 +/* 801ABD6C 001A8CCC 48 16 9B C5 */ bl Free__7CMemoryFPCv +lbl_801ABD70: +/* 801ABD70 001A8CD0 38 00 00 00 */ li r0, 0 +/* 801ABD74 001A8CD4 90 1C 03 20 */ stw r0, 0x320(r28) +/* 801ABD78 001A8CD8 83 7C 03 24 */ lwz r27, 0x324(r28) +/* 801ABD7C 001A8CDC 28 1B 00 00 */ cmplwi r27, 0 +/* 801ABD80 001A8CE0 41 82 00 18 */ beq lbl_801ABD98 +/* 801ABD84 001A8CE4 7F 63 DB 78 */ mr r3, r27 +/* 801ABD88 001A8CE8 38 80 00 00 */ li r4, 0 +/* 801ABD8C 001A8CEC 48 19 50 B5 */ bl __dt__6CTokenFv +/* 801ABD90 001A8CF0 7F 63 DB 78 */ mr r3, r27 +/* 801ABD94 001A8CF4 48 16 9B 9D */ bl Free__7CMemoryFPCv +lbl_801ABD98: +/* 801ABD98 001A8CF8 38 00 00 00 */ li r0, 0 +/* 801ABD9C 001A8CFC 3B 7C 03 28 */ addi r27, r28, 0x328 +/* 801ABDA0 001A8D00 90 1C 03 24 */ stw r0, 0x324(r28) +/* 801ABDA4 001A8D04 38 81 00 24 */ addi r4, r1, 0x24 +/* 801ABDA8 001A8D08 7C 1B 20 40 */ cmplw r27, r4 +/* 801ABDAC 001A8D0C 98 01 00 30 */ stb r0, 0x30(r1) +/* 801ABDB0 001A8D10 41 82 00 84 */ beq lbl_801ABE34 +/* 801ABDB4 001A8D14 28 00 00 00 */ cmplwi r0, 0 +/* 801ABDB8 001A8D18 41 82 00 50 */ beq lbl_801ABE08 +/* 801ABDBC 001A8D1C 88 1C 03 34 */ lbz r0, 0x334(r28) +/* 801ABDC0 001A8D20 28 00 00 00 */ cmplwi r0, 0 +/* 801ABDC4 001A8D24 40 82 00 30 */ bne lbl_801ABDF4 +/* 801ABDC8 001A8D28 37 7C 03 28 */ addic. r27, r28, 0x328 +/* 801ABDCC 001A8D2C 41 82 00 1C */ beq lbl_801ABDE8 +/* 801ABDD0 001A8D30 7F 63 DB 78 */ mr r3, r27 +/* 801ABDD4 001A8D34 48 19 50 D5 */ bl __ct__6CTokenFRC6CToken +/* 801ABDD8 001A8D38 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 801ABDDC 001A8D3C 7F 63 DB 78 */ mr r3, r27 +/* 801ABDE0 001A8D40 90 1B 00 08 */ stw r0, 8(r27) +/* 801ABDE4 001A8D44 48 19 4F A1 */ bl Lock__6CTokenFv +lbl_801ABDE8: +/* 801ABDE8 001A8D48 38 00 00 01 */ li r0, 1 +/* 801ABDEC 001A8D4C 98 1C 03 34 */ stb r0, 0x334(r28) +/* 801ABDF0 001A8D50 48 00 00 44 */ b lbl_801ABE34 +lbl_801ABDF4: +/* 801ABDF4 001A8D54 7F 63 DB 78 */ mr r3, r27 +/* 801ABDF8 001A8D58 48 19 4E CD */ bl __as__6CTokenFRC6CToken +/* 801ABDFC 001A8D5C 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 801ABE00 001A8D60 90 1B 00 08 */ stw r0, 8(r27) +/* 801ABE04 001A8D64 48 00 00 30 */ b lbl_801ABE34 +lbl_801ABE08: +/* 801ABE08 001A8D68 88 1C 03 34 */ lbz r0, 0x334(r28) +/* 801ABE0C 001A8D6C 28 00 00 00 */ cmplwi r0, 0 +/* 801ABE10 001A8D70 41 82 00 1C */ beq lbl_801ABE2C +/* 801ABE14 001A8D74 34 7C 03 28 */ addic. r3, r28, 0x328 +/* 801ABE18 001A8D78 41 82 00 14 */ beq lbl_801ABE2C +/* 801ABE1C 001A8D7C 28 03 00 00 */ cmplwi r3, 0 +/* 801ABE20 001A8D80 41 82 00 0C */ beq lbl_801ABE2C +/* 801ABE24 001A8D84 38 80 00 00 */ li r4, 0 +/* 801ABE28 001A8D88 48 19 50 19 */ bl __dt__6CTokenFv +lbl_801ABE2C: +/* 801ABE2C 001A8D8C 38 00 00 00 */ li r0, 0 +/* 801ABE30 001A8D90 98 1C 03 34 */ stb r0, 0x334(r28) +lbl_801ABE34: +/* 801ABE34 001A8D94 88 01 00 30 */ lbz r0, 0x30(r1) +/* 801ABE38 001A8D98 28 00 00 00 */ cmplwi r0, 0 +/* 801ABE3C 001A8D9C 41 82 00 1C */ beq lbl_801ABE58 +/* 801ABE40 001A8DA0 34 61 00 24 */ addic. r3, r1, 0x24 +/* 801ABE44 001A8DA4 41 82 00 14 */ beq lbl_801ABE58 +/* 801ABE48 001A8DA8 28 03 00 00 */ cmplwi r3, 0 +/* 801ABE4C 001A8DAC 41 82 00 0C */ beq lbl_801ABE58 +/* 801ABE50 001A8DB0 38 80 00 00 */ li r4, 0 +/* 801ABE54 001A8DB4 48 19 4F ED */ bl __dt__6CTokenFv +lbl_801ABE58: +/* 801ABE58 001A8DB8 3B 7C 03 38 */ addi r27, r28, 0x338 +/* 801ABE5C 001A8DBC 38 81 00 14 */ addi r4, r1, 0x14 +/* 801ABE60 001A8DC0 38 00 00 00 */ li r0, 0 +/* 801ABE64 001A8DC4 7C 1B 20 40 */ cmplw r27, r4 +/* 801ABE68 001A8DC8 98 01 00 30 */ stb r0, 0x30(r1) +/* 801ABE6C 001A8DCC 98 01 00 20 */ stb r0, 0x20(r1) +/* 801ABE70 001A8DD0 41 82 00 7C */ beq lbl_801ABEEC +/* 801ABE74 001A8DD4 28 00 00 00 */ cmplwi r0, 0 +/* 801ABE78 001A8DD8 41 82 00 48 */ beq lbl_801ABEC0 +/* 801ABE7C 001A8DDC 88 1C 03 44 */ lbz r0, 0x344(r28) +/* 801ABE80 001A8DE0 28 00 00 00 */ cmplwi r0, 0 +/* 801ABE84 001A8DE4 40 82 00 28 */ bne lbl_801ABEAC +/* 801ABE88 001A8DE8 37 7C 03 38 */ addic. r27, r28, 0x338 +/* 801ABE8C 001A8DEC 41 82 00 14 */ beq lbl_801ABEA0 +/* 801ABE90 001A8DF0 7F 63 DB 78 */ mr r3, r27 +/* 801ABE94 001A8DF4 48 19 50 15 */ bl __ct__6CTokenFRC6CToken +/* 801ABE98 001A8DF8 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 801ABE9C 001A8DFC 90 1B 00 08 */ stw r0, 8(r27) +lbl_801ABEA0: +/* 801ABEA0 001A8E00 38 00 00 01 */ li r0, 1 +/* 801ABEA4 001A8E04 98 1C 03 44 */ stb r0, 0x344(r28) +/* 801ABEA8 001A8E08 48 00 00 44 */ b lbl_801ABEEC +lbl_801ABEAC: +/* 801ABEAC 001A8E0C 7F 63 DB 78 */ mr r3, r27 +/* 801ABEB0 001A8E10 48 19 4E 15 */ bl __as__6CTokenFRC6CToken +/* 801ABEB4 001A8E14 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 801ABEB8 001A8E18 90 1B 00 08 */ stw r0, 8(r27) +/* 801ABEBC 001A8E1C 48 00 00 30 */ b lbl_801ABEEC +lbl_801ABEC0: +/* 801ABEC0 001A8E20 88 1C 03 44 */ lbz r0, 0x344(r28) +/* 801ABEC4 001A8E24 28 00 00 00 */ cmplwi r0, 0 +/* 801ABEC8 001A8E28 41 82 00 1C */ beq lbl_801ABEE4 +/* 801ABECC 001A8E2C 34 7C 03 38 */ addic. r3, r28, 0x338 +/* 801ABED0 001A8E30 41 82 00 14 */ beq lbl_801ABEE4 +/* 801ABED4 001A8E34 28 03 00 00 */ cmplwi r3, 0 +/* 801ABED8 001A8E38 41 82 00 0C */ beq lbl_801ABEE4 +/* 801ABEDC 001A8E3C 38 80 00 00 */ li r4, 0 +/* 801ABEE0 001A8E40 48 19 4F 61 */ bl __dt__6CTokenFv +lbl_801ABEE4: +/* 801ABEE4 001A8E44 38 00 00 00 */ li r0, 0 +/* 801ABEE8 001A8E48 98 1C 03 44 */ stb r0, 0x344(r28) +lbl_801ABEEC: +/* 801ABEEC 001A8E4C 88 01 00 20 */ lbz r0, 0x20(r1) +/* 801ABEF0 001A8E50 28 00 00 00 */ cmplwi r0, 0 +/* 801ABEF4 001A8E54 41 82 00 1C */ beq lbl_801ABF10 +/* 801ABEF8 001A8E58 34 61 00 14 */ addic. r3, r1, 0x14 +/* 801ABEFC 001A8E5C 41 82 00 14 */ beq lbl_801ABF10 +/* 801ABF00 001A8E60 28 03 00 00 */ cmplwi r3, 0 +/* 801ABF04 001A8E64 41 82 00 0C */ beq lbl_801ABF10 +/* 801ABF08 001A8E68 38 80 00 00 */ li r4, 0 +/* 801ABF0C 001A8E6C 48 19 4F 35 */ bl __dt__6CTokenFv +lbl_801ABF10: +/* 801ABF10 001A8E70 38 80 00 00 */ li r4, 0 +/* 801ABF14 001A8E74 38 61 00 34 */ addi r3, r1, 0x34 +/* 801ABF18 001A8E78 98 81 00 20 */ stb r4, 0x20(r1) +/* 801ABF1C 001A8E7C 90 9C 03 48 */ stw r4, 0x348(r28) +/* 801ABF20 001A8E80 80 1C 03 50 */ lwz r0, 0x350(r28) +/* 801ABF24 001A8E84 54 00 00 3C */ rlwinm r0, r0, 0, 0, 0x1e +/* 801ABF28 001A8E88 90 1C 03 50 */ stw r0, 0x350(r28) +/* 801ABF2C 001A8E8C 88 1C 03 54 */ lbz r0, 0x354(r28) +/* 801ABF30 001A8E90 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 801ABF34 001A8E94 98 1C 03 54 */ stb r0, 0x354(r28) +/* 801ABF38 001A8E98 88 1C 03 54 */ lbz r0, 0x354(r28) +/* 801ABF3C 001A8E9C 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 801ABF40 001A8EA0 98 1C 03 54 */ stb r0, 0x354(r28) +/* 801ABF44 001A8EA4 88 1C 03 54 */ lbz r0, 0x354(r28) +/* 801ABF48 001A8EA8 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 801ABF4C 001A8EAC 98 1C 03 54 */ stb r0, 0x354(r28) +/* 801ABF50 001A8EB0 88 1C 03 54 */ lbz r0, 0x354(r28) +/* 801ABF54 001A8EB4 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c +/* 801ABF58 001A8EB8 98 1C 03 54 */ stb r0, 0x354(r28) +/* 801ABF5C 001A8EBC 88 1C 03 54 */ lbz r0, 0x354(r28) +/* 801ABF60 001A8EC0 50 80 0F BC */ rlwimi r0, r4, 1, 0x1e, 0x1e +/* 801ABF64 001A8EC4 98 1C 03 54 */ stb r0, 0x354(r28) +/* 801ABF68 001A8EC8 4B E8 E8 3D */ bl CModelDataNull__10CModelDataFv +/* 801ABF6C 001A8ECC 7F 83 E3 78 */ mr r3, r28 +/* 801ABF70 001A8ED0 38 81 00 34 */ addi r4, r1, 0x34 +/* 801ABF74 001A8ED4 4B EA 90 BD */ bl SetModelData__6CActorFRC10CModelData +/* 801ABF78 001A8ED8 38 61 00 34 */ addi r3, r1, 0x34 +/* 801ABF7C 001A8EDC 38 80 FF FF */ li r4, -1 +/* 801ABF80 001A8EE0 4B F6 AA CD */ bl __dt__10CModelDataFv +/* 801ABF84 001A8EE4 7F 83 E3 78 */ mr r3, r28 +/* 801ABF88 001A8EE8 38 80 00 00 */ li r4, 0 +/* 801ABF8C 001A8EEC 81 9C 00 00 */ lwz r12, 0(r28) +/* 801ABF90 001A8EF0 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801ABF94 001A8EF4 7D 89 03 A6 */ mtctr r12 +/* 801ABF98 001A8EF8 4E 80 04 21 */ bctrl +/* 801ABF9C 001A8EFC 48 00 00 10 */ b lbl_801ABFAC +/* 801ABFA0 001A8F00 7F E4 FB 78 */ mr r4, r31 +/* 801ABFA4 001A8F04 38 A0 00 00 */ li r5, 0 +/* 801ABFA8 001A8F08 4B FF E4 55 */ bl SetIntoStateManager__18CScriptPlayerActorFR13CStateManagerb +lbl_801ABFAC: +/* 801ABFAC 001A8F0C A0 1E 00 00 */ lhz r0, 0(r30) +/* 801ABFB0 001A8F10 7F 83 E3 78 */ mr r3, r28 +/* 801ABFB4 001A8F14 7F A4 EB 78 */ mr r4, r29 +/* 801ABFB8 001A8F18 7F E6 FB 78 */ mr r6, r31 +/* 801ABFBC 001A8F1C B0 01 00 08 */ sth r0, 8(r1) +/* 801ABFC0 001A8F20 38 A1 00 08 */ addi r5, r1, 8 +/* 801ABFC4 001A8F24 4B EC 93 3D */ bl AcceptScriptMsg__12CScriptActorF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 801ABFC8 001A8F28 BB 61 00 8C */ lmw r27, 0x8c(r1) +/* 801ABFCC 001A8F2C 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 801ABFD0 001A8F30 7C 08 03 A6 */ mtlr r0 +/* 801ABFD4 001A8F34 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 801ABFD8 001A8F38 4E 80 00 20 */ blr + +.global "__ct__18CScriptPlayerActorF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC8CAnimResRC10CModelDataRC6CAABoxbRC13CMaterialListffRC11CHealthInfoRC20CDamageVulnerabilityRC16CActorParametersbb" +"__ct__18CScriptPlayerActorF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC8CAnimResRC10CModelDataRC6CAABoxbRC13CMaterialListffRC11CHealthInfoRC20CDamageVulnerabilityRC16CActorParametersbb": +/* 801ABFDC 001A8F3C 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 801ABFE0 001A8F40 7C 08 02 A6 */ mflr r0 +/* 801ABFE4 001A8F44 C0 62 A8 44 */ lfs f3, lbl_805AC564@sda21(r2) +/* 801ABFE8 001A8F48 90 01 00 74 */ stw r0, 0x74(r1) +/* 801ABFEC 001A8F4C 38 00 00 00 */ li r0, 0 +/* 801ABFF0 001A8F50 81 61 00 80 */ lwz r11, 0x80(r1) +/* 801ABFF4 001A8F54 BF 41 00 58 */ stmw r26, 0x58(r1) +/* 801ABFF8 001A8F58 7D 1D 43 78 */ mr r29, r8 +/* 801ABFFC 001A8F5C 7D 28 4B 78 */ mr r8, r9 +/* 801AC000 001A8F60 81 81 00 7C */ lwz r12, 0x7c(r1) +/* 801AC004 001A8F64 7D 49 53 78 */ mr r9, r10 +/* 801AC008 001A8F68 83 E1 00 88 */ lwz r31, 0x88(r1) +/* 801AC00C 001A8F6C 7D 8A 63 78 */ mr r10, r12 +/* 801AC010 001A8F70 89 81 00 8F */ lbz r12, 0x8f(r1) +/* 801AC014 001A8F74 8B C1 00 7B */ lbz r30, 0x7b(r1) +/* 801AC018 001A8F78 7C 7C 1B 78 */ mr r28, r3 +/* 801AC01C 001A8F7C 83 41 00 94 */ lwz r26, 0x94(r1) +/* 801AC020 001A8F80 83 61 00 98 */ lwz r27, 0x98(r1) +/* 801AC024 001A8F84 A0 84 00 00 */ lhz r4, 0(r4) +/* 801AC028 001A8F88 B0 81 00 30 */ sth r4, 0x30(r1) +/* 801AC02C 001A8F8C 80 81 00 84 */ lwz r4, 0x84(r1) +/* 801AC030 001A8F90 91 61 00 08 */ stw r11, 8(r1) +/* 801AC034 001A8F94 89 61 00 93 */ lbz r11, 0x93(r1) +/* 801AC038 001A8F98 90 81 00 0C */ stw r4, 0xc(r1) +/* 801AC03C 001A8F9C 38 81 00 30 */ addi r4, r1, 0x30 +/* 801AC040 001A8FA0 93 E1 00 10 */ stw r31, 0x10(r1) +/* 801AC044 001A8FA4 91 81 00 14 */ stw r12, 0x14(r1) +/* 801AC048 001A8FA8 91 61 00 18 */ stw r11, 0x18(r1) +/* 801AC04C 001A8FAC 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801AC050 001A8FB0 90 01 00 20 */ stw r0, 0x20(r1) +/* 801AC054 001A8FB4 90 01 00 24 */ stw r0, 0x24(r1) +/* 801AC058 001A8FB8 90 01 00 28 */ stw r0, 0x28(r1) +/* 801AC05C 001A8FBC 90 01 00 2C */ stw r0, 0x2c(r1) +/* 801AC060 001A8FC0 4B EC 98 4D */ bl "__ct__12CScriptActorF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC6CAABoxRC13CMaterialListffRC11CHealthInfoRC20CDamageVulnerabilityRC16CActorParametersbbUibbbb" +/* 801AC064 001A8FC4 3C 60 80 3E */ lis r3, lbl_803E4BE0@ha +/* 801AC068 001A8FC8 38 00 FF FF */ li r0, -1 +/* 801AC06C 001A8FCC 38 63 4B E0 */ addi r3, r3, lbl_803E4BE0@l +/* 801AC070 001A8FD0 38 A0 00 00 */ li r5, 0 +/* 801AC074 001A8FD4 90 7C 00 00 */ stw r3, 0(r28) +/* 801AC078 001A8FD8 38 80 00 01 */ li r4, 1 +/* 801AC07C 001A8FDC C0 02 A8 3C */ lfs f0, lbl_805AC55C@sda21(r2) +/* 801AC080 001A8FE0 7F 83 E3 78 */ mr r3, r28 +/* 801AC084 001A8FE4 80 DD 00 00 */ lwz r6, 0(r29) +/* 801AC088 001A8FE8 90 DC 02 E8 */ stw r6, 0x2e8(r28) +/* 801AC08C 001A8FEC 80 DD 00 04 */ lwz r6, 4(r29) +/* 801AC090 001A8FF0 90 DC 02 EC */ stw r6, 0x2ec(r28) +/* 801AC094 001A8FF4 C0 3D 00 08 */ lfs f1, 8(r29) +/* 801AC098 001A8FF8 D0 3C 02 F0 */ stfs f1, 0x2f0(r28) +/* 801AC09C 001A8FFC C0 3D 00 0C */ lfs f1, 0xc(r29) +/* 801AC0A0 001A9000 D0 3C 02 F4 */ stfs f1, 0x2f4(r28) +/* 801AC0A4 001A9004 C0 3D 00 10 */ lfs f1, 0x10(r29) +/* 801AC0A8 001A9008 D0 3C 02 F8 */ stfs f1, 0x2f8(r28) +/* 801AC0AC 001A900C 88 DD 00 14 */ lbz r6, 0x14(r29) +/* 801AC0B0 001A9010 98 DC 02 FC */ stb r6, 0x2fc(r28) +/* 801AC0B4 001A9014 80 DD 00 18 */ lwz r6, 0x18(r29) +/* 801AC0B8 001A9018 90 DC 03 00 */ stw r6, 0x300(r28) +/* 801AC0BC 001A901C 93 7C 03 04 */ stw r27, 0x304(r28) +/* 801AC0C0 001A9020 90 1C 03 08 */ stw r0, 0x308(r28) +/* 801AC0C4 001A9024 90 1C 03 0C */ stw r0, 0x30c(r28) +/* 801AC0C8 001A9028 90 1C 03 10 */ stw r0, 0x310(r28) +/* 801AC0CC 001A902C 90 BC 03 14 */ stw r5, 0x314(r28) +/* 801AC0D0 001A9030 90 BC 03 18 */ stw r5, 0x318(r28) +/* 801AC0D4 001A9034 90 BC 03 1C */ stw r5, 0x31c(r28) +/* 801AC0D8 001A9038 90 BC 03 20 */ stw r5, 0x320(r28) +/* 801AC0DC 001A903C 90 BC 03 24 */ stw r5, 0x324(r28) +/* 801AC0E0 001A9040 98 BC 03 34 */ stb r5, 0x334(r28) +/* 801AC0E4 001A9044 98 BC 03 44 */ stb r5, 0x344(r28) +/* 801AC0E8 001A9048 90 BC 03 48 */ stw r5, 0x348(r28) +/* 801AC0EC 001A904C D0 1C 03 4C */ stfs f0, 0x34c(r28) +/* 801AC0F0 001A9050 93 5C 03 50 */ stw r26, 0x350(r28) +/* 801AC0F4 001A9054 88 1C 03 54 */ lbz r0, 0x354(r28) +/* 801AC0F8 001A9058 53 C0 3E 30 */ rlwimi r0, r30, 7, 0x18, 0x18 +/* 801AC0FC 001A905C 98 1C 03 54 */ stb r0, 0x354(r28) +/* 801AC100 001A9060 88 1C 03 54 */ lbz r0, 0x354(r28) +/* 801AC104 001A9064 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 801AC108 001A9068 98 1C 03 54 */ stb r0, 0x354(r28) +/* 801AC10C 001A906C 88 1C 03 54 */ lbz r0, 0x354(r28) +/* 801AC110 001A9070 50 A0 2E B4 */ rlwimi r0, r5, 5, 0x1a, 0x1a +/* 801AC114 001A9074 98 1C 03 54 */ stb r0, 0x354(r28) +/* 801AC118 001A9078 88 1C 03 54 */ lbz r0, 0x354(r28) +/* 801AC11C 001A907C 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 801AC120 001A9080 98 1C 03 54 */ stb r0, 0x354(r28) +/* 801AC124 001A9084 88 1C 03 54 */ lbz r0, 0x354(r28) +/* 801AC128 001A9088 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 801AC12C 001A908C 98 1C 03 54 */ stb r0, 0x354(r28) +/* 801AC130 001A9090 88 1C 03 54 */ lbz r0, 0x354(r28) +/* 801AC134 001A9094 50 80 17 7A */ rlwimi r0, r4, 2, 0x1d, 0x1d +/* 801AC138 001A9098 98 1C 03 54 */ stb r0, 0x354(r28) +/* 801AC13C 001A909C 88 1C 03 54 */ lbz r0, 0x354(r28) +/* 801AC140 001A90A0 50 80 0F BC */ rlwimi r0, r4, 1, 0x1e, 0x1e +/* 801AC144 001A90A4 98 1C 03 54 */ stb r0, 0x354(r28) +/* 801AC148 001A90A8 88 1C 03 54 */ lbz r0, 0x354(r28) +/* 801AC14C 001A90AC 50 A0 07 FE */ rlwimi r0, r5, 0, 0x1f, 0x1f +/* 801AC150 001A90B0 98 1C 03 54 */ stb r0, 0x354(r28) +/* 801AC154 001A90B4 88 1C 03 55 */ lbz r0, 0x355(r28) +/* 801AC158 001A90B8 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 801AC15C 001A90BC 98 1C 03 55 */ stb r0, 0x355(r28) +/* 801AC160 001A90C0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801AC164 001A90C4 B0 1C 03 56 */ sth r0, 0x356(r28) +/* 801AC168 001A90C8 4B EA 77 55 */ bl GetMaterialFilter__6CActorCFv +/* 801AC16C 001A90CC 83 A3 00 08 */ lwz r29, 8(r3) +/* 801AC170 001A90D0 83 C3 00 0C */ lwz r30, 0xc(r3) +/* 801AC174 001A90D4 7F 83 E3 78 */ mr r3, r28 +/* 801AC178 001A90D8 4B EA 77 45 */ bl GetMaterialFilter__6CActorCFv +/* 801AC17C 001A90DC 80 C3 00 00 */ lwz r6, 0(r3) +/* 801AC180 001A90E0 63 A5 00 01 */ ori r5, r29, 1 +/* 801AC184 001A90E4 80 E3 00 04 */ lwz r7, 4(r3) +/* 801AC188 001A90E8 38 00 00 03 */ li r0, 3 +/* 801AC18C 001A90EC 7F 83 E3 78 */ mr r3, r28 +/* 801AC190 001A90F0 38 81 00 40 */ addi r4, r1, 0x40 +/* 801AC194 001A90F4 90 E1 00 44 */ stw r7, 0x44(r1) +/* 801AC198 001A90F8 90 C1 00 40 */ stw r6, 0x40(r1) +/* 801AC19C 001A90FC 93 C1 00 4C */ stw r30, 0x4c(r1) +/* 801AC1A0 001A9100 90 A1 00 48 */ stw r5, 0x48(r1) +/* 801AC1A4 001A9104 90 01 00 50 */ stw r0, 0x50(r1) +/* 801AC1A8 001A9108 4B EA 76 F9 */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter +/* 801AC1AC 001A910C 7F E4 FB 78 */ mr r4, r31 +/* 801AC1B0 001A9110 38 61 00 34 */ addi r3, r1, 0x34 +/* 801AC1B4 001A9114 4B F5 A2 5D */ bl MakeActorLights__16CLightParametersCFv +/* 801AC1B8 001A9118 7F 83 E3 78 */ mr r3, r28 +/* 801AC1BC 001A911C 38 81 00 34 */ addi r4, r1, 0x34 +/* 801AC1C0 001A9120 4B EA 77 05 */ bl sub_800538c4 +/* 801AC1C4 001A9124 88 01 00 34 */ lbz r0, 0x34(r1) +/* 801AC1C8 001A9128 28 00 00 00 */ cmplwi r0, 0 +/* 801AC1CC 001A912C 41 82 00 10 */ beq lbl_801AC1DC +/* 801AC1D0 001A9130 80 61 00 38 */ lwz r3, 0x38(r1) +/* 801AC1D4 001A9134 38 80 00 01 */ li r4, 1 +/* 801AC1D8 001A9138 4B F5 8E FD */ bl __dt__12CActorLightsFv +lbl_801AC1DC: +/* 801AC1DC 001A913C 88 1C 00 E7 */ lbz r0, 0xe7(r28) +/* 801AC1E0 001A9140 38 80 00 01 */ li r4, 1 +/* 801AC1E4 001A9144 50 80 17 7A */ rlwimi r0, r4, 2, 0x1d, 0x1d +/* 801AC1E8 001A9148 7F 83 E3 78 */ mr r3, r28 +/* 801AC1EC 001A914C 98 1C 00 E7 */ stb r0, 0xe7(r28) +/* 801AC1F0 001A9150 88 1C 02 E3 */ lbz r0, 0x2e3(r28) +/* 801AC1F4 001A9154 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801AC1F8 001A9158 98 1C 02 E3 */ stb r0, 0x2e3(r28) +/* 801AC1FC 001A915C BB 41 00 58 */ lmw r26, 0x58(r1) +/* 801AC200 001A9160 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801AC204 001A9164 7C 08 03 A6 */ mtlr r0 +/* 801AC208 001A9168 38 21 00 70 */ addi r1, r1, 0x70 +/* 801AC20C 001A916C 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/ScriptObjects/CScriptPlayerStateChange.s b/asm/Kyoto_CWD/ScriptObjects/CScriptPlayerStateChange.s new file mode 100644 index 00000000..af256dba --- /dev/null +++ b/asm/Kyoto_CWD/ScriptObjects/CScriptPlayerStateChange.s @@ -0,0 +1,160 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__24CScriptPlayerStateChangeFv +__dt__24CScriptPlayerStateChangeFv: +/* 801DA4A0 001D7400 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801DA4A4 001D7404 7C 08 02 A6 */ mflr r0 +/* 801DA4A8 001D7408 90 01 00 14 */ stw r0, 0x14(r1) +/* 801DA4AC 001D740C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801DA4B0 001D7410 7C 9F 23 78 */ mr r31, r4 +/* 801DA4B4 001D7414 93 C1 00 08 */ stw r30, 8(r1) +/* 801DA4B8 001D7418 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801DA4BC 001D741C 41 82 00 28 */ beq lbl_801DA4E4 +/* 801DA4C0 001D7420 3C A0 80 3E */ lis r5, lbl_803E5CC0@ha +/* 801DA4C4 001D7424 38 80 00 00 */ li r4, 0 +/* 801DA4C8 001D7428 38 05 5C C0 */ addi r0, r5, lbl_803E5CC0@l +/* 801DA4CC 001D742C 90 1E 00 00 */ stw r0, 0(r30) +/* 801DA4D0 001D7430 4B E7 6D A5 */ bl __dt__7CEntityFv +/* 801DA4D4 001D7434 7F E0 07 35 */ extsh. r0, r31 +/* 801DA4D8 001D7438 40 81 00 0C */ ble lbl_801DA4E4 +/* 801DA4DC 001D743C 7F C3 F3 78 */ mr r3, r30 +/* 801DA4E0 001D7440 48 13 B4 51 */ bl Free__7CMemoryFPCv +lbl_801DA4E4: +/* 801DA4E4 001D7444 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801DA4E8 001D7448 7F C3 F3 78 */ mr r3, r30 +/* 801DA4EC 001D744C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801DA4F0 001D7450 83 C1 00 08 */ lwz r30, 8(r1) +/* 801DA4F4 001D7454 7C 08 03 A6 */ mtlr r0 +/* 801DA4F8 001D7458 38 21 00 10 */ addi r1, r1, 0x10 +/* 801DA4FC 001D745C 4E 80 00 20 */ blr + +.global AcceptScriptMsg__24CScriptPlayerStateChangeF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__24CScriptPlayerStateChangeF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 801DA500 001D7460 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801DA504 001D7464 7C 08 02 A6 */ mflr r0 +/* 801DA508 001D7468 90 01 00 34 */ stw r0, 0x34(r1) +/* 801DA50C 001D746C BF 61 00 1C */ stmw r27, 0x1c(r1) +/* 801DA510 001D7470 7C 7B 1B 78 */ mr r27, r3 +/* 801DA514 001D7474 7C 9C 23 78 */ mr r28, r4 +/* 801DA518 001D7478 7C BD 2B 78 */ mr r29, r5 +/* 801DA51C 001D747C 7C DE 33 78 */ mr r30, r6 +/* 801DA520 001D7480 88 03 00 30 */ lbz r0, 0x30(r3) +/* 801DA524 001D7484 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801DA528 001D7488 41 82 00 C8 */ beq lbl_801DA5F0 +/* 801DA52C 001D748C 2C 1C 00 0D */ cmpwi r28, 0xd +/* 801DA530 001D7490 40 82 00 C0 */ bne lbl_801DA5F0 +/* 801DA534 001D7494 80 7E 08 B8 */ lwz r3, 0x8b8(r30) +/* 801DA538 001D7498 80 9B 00 34 */ lwz r4, 0x34(r27) +/* 801DA53C 001D749C 80 63 00 00 */ lwz r3, 0(r3) +/* 801DA540 001D74A0 80 BB 00 3C */ lwz r5, 0x3c(r27) +/* 801DA544 001D74A4 4B EB 78 25 */ bl InitializePowerUp__12CPlayerStateFQ212CPlayerState9EItemTypei +/* 801DA548 001D74A8 80 7E 08 B8 */ lwz r3, 0x8b8(r30) +/* 801DA54C 001D74AC 80 9B 00 34 */ lwz r4, 0x34(r27) +/* 801DA550 001D74B0 80 63 00 00 */ lwz r3, 0(r3) +/* 801DA554 001D74B4 80 BB 00 38 */ lwz r5, 0x38(r27) +/* 801DA558 001D74B8 4B EB 76 99 */ bl IncrPickUp__12CPlayerStateFQ212CPlayerState9EItemTypei +/* 801DA55C 001D74BC 80 7B 00 44 */ lwz r3, 0x44(r27) +/* 801DA560 001D74C0 2C 03 00 00 */ cmpwi r3, 0 +/* 801DA564 001D74C4 41 82 00 8C */ beq lbl_801DA5F0 +/* 801DA568 001D74C8 80 1B 00 40 */ lwz r0, 0x40(r27) +/* 801DA56C 001D74CC 2C 00 00 01 */ cmpwi r0, 1 +/* 801DA570 001D74D0 41 82 00 08 */ beq lbl_801DA578 +/* 801DA574 001D74D4 48 00 00 7C */ b lbl_801DA5F0 +lbl_801DA578: +/* 801DA578 001D74D8 20 03 00 01 */ subfic r0, r3, 1 +/* 801DA57C 001D74DC 38 60 00 18 */ li r3, 0x18 +/* 801DA580 001D74E0 7C 00 00 34 */ cntlzw r0, r0 +/* 801DA584 001D74E4 54 1F D9 7E */ srwi r31, r0, 5 +/* 801DA588 001D74E8 7F E4 FB 78 */ mr r4, r31 +/* 801DA58C 001D74EC 4B E3 21 FD */ bl SetCommandFiltered__13ControlMapperFQ213ControlMapper9ECommandsb +/* 801DA590 001D74F0 7F E4 FB 78 */ mr r4, r31 +/* 801DA594 001D74F4 38 60 00 1C */ li r3, 0x1c +/* 801DA598 001D74F8 4B E3 21 F1 */ bl SetCommandFiltered__13ControlMapperFQ213ControlMapper9ECommandsb +/* 801DA59C 001D74FC 7F E4 FB 78 */ mr r4, r31 +/* 801DA5A0 001D7500 38 60 00 20 */ li r3, 0x20 +/* 801DA5A4 001D7504 4B E3 21 E5 */ bl SetCommandFiltered__13ControlMapperFQ213ControlMapper9ECommandsb +/* 801DA5A8 001D7508 7F E4 FB 78 */ mr r4, r31 +/* 801DA5AC 001D750C 38 60 00 19 */ li r3, 0x19 +/* 801DA5B0 001D7510 4B E3 21 D9 */ bl SetCommandFiltered__13ControlMapperFQ213ControlMapper9ECommandsb +/* 801DA5B4 001D7514 7F E4 FB 78 */ mr r4, r31 +/* 801DA5B8 001D7518 38 60 00 1D */ li r3, 0x1d +/* 801DA5BC 001D751C 4B E3 21 CD */ bl SetCommandFiltered__13ControlMapperFQ213ControlMapper9ECommandsb +/* 801DA5C0 001D7520 7F E4 FB 78 */ mr r4, r31 +/* 801DA5C4 001D7524 38 60 00 1A */ li r3, 0x1a +/* 801DA5C8 001D7528 4B E3 21 C1 */ bl SetCommandFiltered__13ControlMapperFQ213ControlMapper9ECommandsb +/* 801DA5CC 001D752C 7F E4 FB 78 */ mr r4, r31 +/* 801DA5D0 001D7530 38 60 00 1E */ li r3, 0x1e +/* 801DA5D4 001D7534 4B E3 21 B5 */ bl SetCommandFiltered__13ControlMapperFQ213ControlMapper9ECommandsb +/* 801DA5D8 001D7538 7F E4 FB 78 */ mr r4, r31 +/* 801DA5DC 001D753C 38 60 00 1B */ li r3, 0x1b +/* 801DA5E0 001D7540 4B E3 21 A9 */ bl SetCommandFiltered__13ControlMapperFQ213ControlMapper9ECommandsb +/* 801DA5E4 001D7544 7F E4 FB 78 */ mr r4, r31 +/* 801DA5E8 001D7548 38 60 00 1F */ li r3, 0x1f +/* 801DA5EC 001D754C 4B E3 21 9D */ bl SetCommandFiltered__13ControlMapperFQ213ControlMapper9ECommandsb +lbl_801DA5F0: +/* 801DA5F0 001D7550 A0 1D 00 00 */ lhz r0, 0(r29) +/* 801DA5F4 001D7554 7F 63 DB 78 */ mr r3, r27 +/* 801DA5F8 001D7558 7F 84 E3 78 */ mr r4, r28 +/* 801DA5FC 001D755C 7F C6 F3 78 */ mr r6, r30 +/* 801DA600 001D7560 B0 01 00 08 */ sth r0, 8(r1) +/* 801DA604 001D7564 38 A1 00 08 */ addi r5, r1, 8 +/* 801DA608 001D7568 4B E7 6B 55 */ bl AcceptScriptMsg__7CEntityF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 801DA60C 001D756C BB 61 00 1C */ lmw r27, 0x1c(r1) +/* 801DA610 001D7570 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801DA614 001D7574 7C 08 03 A6 */ mtlr r0 +/* 801DA618 001D7578 38 21 00 30 */ addi r1, r1, 0x30 +/* 801DA61C 001D757C 4E 80 00 20 */ blr + +.global Accept__24CScriptPlayerStateChangeFR8IVisitor +Accept__24CScriptPlayerStateChangeFR8IVisitor: +/* 801DA620 001D7580 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801DA624 001D7584 7C 08 02 A6 */ mflr r0 +/* 801DA628 001D7588 90 01 00 14 */ stw r0, 0x14(r1) +/* 801DA62C 001D758C 7C 60 1B 78 */ mr r0, r3 +/* 801DA630 001D7590 7C 83 23 78 */ mr r3, r4 +/* 801DA634 001D7594 81 84 00 00 */ lwz r12, 0(r4) +/* 801DA638 001D7598 7C 04 03 78 */ mr r4, r0 +/* 801DA63C 001D759C 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 801DA640 001D75A0 7D 89 03 A6 */ mtctr r12 +/* 801DA644 001D75A4 4E 80 04 21 */ bctrl +/* 801DA648 001D75A8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801DA64C 001D75AC 7C 08 03 A6 */ mtlr r0 +/* 801DA650 001D75B0 38 21 00 10 */ addi r1, r1, 0x10 +/* 801DA654 001D75B4 4E 80 00 20 */ blr + +.global "__ct__24CScriptPlayerStateChangeF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfobiiiQ224CScriptPlayerStateChange8EControlQ224CScriptPlayerStateChange21EControlCommandOption" +"__ct__24CScriptPlayerStateChangeF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfobiiiQ224CScriptPlayerStateChange8EControlQ224CScriptPlayerStateChange21EControlCommandOption": +/* 801DA658 001D75B8 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801DA65C 001D75BC 7C 08 02 A6 */ mflr r0 +/* 801DA660 001D75C0 90 01 00 34 */ stw r0, 0x34(r1) +/* 801DA664 001D75C4 BF 41 00 18 */ stmw r26, 0x18(r1) +/* 801DA668 001D75C8 7C 7A 1B 78 */ mr r26, r3 +/* 801DA66C 001D75CC 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801DA670 001D75D0 7D 1B 43 78 */ mr r27, r8 +/* 801DA674 001D75D4 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801DA678 001D75D8 7D 3C 4B 78 */ mr r28, r9 +/* 801DA67C 001D75DC 7D 5D 53 78 */ mr r29, r10 +/* 801DA680 001D75E0 A0 04 00 00 */ lhz r0, 0(r4) +/* 801DA684 001D75E4 7C A4 2B 78 */ mr r4, r5 +/* 801DA688 001D75E8 7C C5 33 78 */ mr r5, r6 +/* 801DA68C 001D75EC 7C E6 3B 78 */ mr r6, r7 +/* 801DA690 001D75F0 B0 01 00 08 */ sth r0, 8(r1) +/* 801DA694 001D75F4 7C 87 23 78 */ mr r7, r4 +/* 801DA698 001D75F8 38 81 00 08 */ addi r4, r1, 8 +/* 801DA69C 001D75FC 4B E7 6C 89 */ bl "__ct__7CEntityF9TUniqueIdRC11CEntityInfobRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801DA6A0 001D7600 3C 80 80 3E */ lis r4, lbl_803E5CC0@ha +/* 801DA6A4 001D7604 7F 43 D3 78 */ mr r3, r26 +/* 801DA6A8 001D7608 38 04 5C C0 */ addi r0, r4, lbl_803E5CC0@l +/* 801DA6AC 001D760C 90 1A 00 00 */ stw r0, 0(r26) +/* 801DA6B0 001D7610 93 7A 00 34 */ stw r27, 0x34(r26) +/* 801DA6B4 001D7614 93 9A 00 38 */ stw r28, 0x38(r26) +/* 801DA6B8 001D7618 93 BA 00 3C */ stw r29, 0x3c(r26) +/* 801DA6BC 001D761C 93 DA 00 40 */ stw r30, 0x40(r26) +/* 801DA6C0 001D7620 93 FA 00 44 */ stw r31, 0x44(r26) +/* 801DA6C4 001D7624 BB 41 00 18 */ lmw r26, 0x18(r1) +/* 801DA6C8 001D7628 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801DA6CC 001D762C 7C 08 03 A6 */ mtlr r0 +/* 801DA6D0 001D7630 38 21 00 30 */ addi r1, r1, 0x30 +/* 801DA6D4 001D7634 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/ScriptObjects/CScriptRoomAcoustics.s b/asm/Kyoto_CWD/ScriptObjects/CScriptRoomAcoustics.s new file mode 100644 index 00000000..f2edf3bf --- /dev/null +++ b/asm/Kyoto_CWD/ScriptObjects/CScriptRoomAcoustics.s @@ -0,0 +1,372 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__20CScriptRoomAcousticsFv +__dt__20CScriptRoomAcousticsFv: +/* 8019DD04 0019AC64 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8019DD08 0019AC68 7C 08 02 A6 */ mflr r0 +/* 8019DD0C 0019AC6C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8019DD10 0019AC70 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8019DD14 0019AC74 7C 9F 23 78 */ mr r31, r4 +/* 8019DD18 0019AC78 93 C1 00 08 */ stw r30, 8(r1) +/* 8019DD1C 0019AC7C 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8019DD20 0019AC80 41 82 00 28 */ beq lbl_8019DD48 +/* 8019DD24 0019AC84 3C A0 80 3E */ lis r5, lbl_803E4708@ha +/* 8019DD28 0019AC88 38 80 00 00 */ li r4, 0 +/* 8019DD2C 0019AC8C 38 05 47 08 */ addi r0, r5, lbl_803E4708@l +/* 8019DD30 0019AC90 90 1E 00 00 */ stw r0, 0(r30) +/* 8019DD34 0019AC94 4B EB 35 41 */ bl __dt__7CEntityFv +/* 8019DD38 0019AC98 7F E0 07 35 */ extsh. r0, r31 +/* 8019DD3C 0019AC9C 40 81 00 0C */ ble lbl_8019DD48 +/* 8019DD40 0019ACA0 7F C3 F3 78 */ mr r3, r30 +/* 8019DD44 0019ACA4 48 17 7B ED */ bl Free__7CMemoryFPCv +lbl_8019DD48: +/* 8019DD48 0019ACA8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8019DD4C 0019ACAC 7F C3 F3 78 */ mr r3, r30 +/* 8019DD50 0019ACB0 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8019DD54 0019ACB4 83 C1 00 08 */ lwz r30, 8(r1) +/* 8019DD58 0019ACB8 7C 08 03 A6 */ mtlr r0 +/* 8019DD5C 0019ACBC 38 21 00 10 */ addi r1, r1, 0x10 +/* 8019DD60 0019ACC0 4E 80 00 20 */ blr + +.global DisableAuxCallbacks__20CScriptRoomAcousticsFv +DisableAuxCallbacks__20CScriptRoomAcousticsFv: +/* 8019DD64 0019ACC4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8019DD68 0019ACC8 7C 08 02 A6 */ mflr r0 +/* 8019DD6C 0019ACCC 90 01 00 14 */ stw r0, 0x14(r1) +/* 8019DD70 0019ACD0 48 14 A6 C9 */ bl DisableAuxProcessing__11CSfxManagerFv +/* 8019DD74 0019ACD4 80 0D A3 90 */ lwz r0, lbl_805A8F50@sda21(r13) +/* 8019DD78 0019ACD8 90 0D A4 88 */ stw r0, lbl_805A9048@sda21(r13) +/* 8019DD7C 0019ACDC 48 1A CA 81 */ bl GetDefaultVolumeScale__9CAudioSysFv +/* 8019DD80 0019ACE0 48 1A CA 8D */ bl SetVolumeScale__9CAudioSysFs +/* 8019DD84 0019ACE4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8019DD88 0019ACE8 7C 08 03 A6 */ mtlr r0 +/* 8019DD8C 0019ACEC 38 21 00 10 */ addi r1, r1, 0x10 +/* 8019DD90 0019ACF0 4E 80 00 20 */ blr + +.global EnableAuxCallbacks__20CScriptRoomAcousticsFv +EnableAuxCallbacks__20CScriptRoomAcousticsFv: +/* 8019DD94 0019ACF4 94 21 FB C0 */ stwu r1, -0x440(r1) +/* 8019DD98 0019ACF8 7C 08 02 A6 */ mflr r0 +/* 8019DD9C 0019ACFC 90 01 04 44 */ stw r0, 0x444(r1) +/* 8019DDA0 0019AD00 93 E1 04 3C */ stw r31, 0x43c(r1) +/* 8019DDA4 0019AD04 7C 7F 1B 78 */ mr r31, r3 +/* 8019DDA8 0019AD08 93 C1 04 38 */ stw r30, 0x438(r1) +/* 8019DDAC 0019AD0C 88 03 00 30 */ lbz r0, 0x30(r3) +/* 8019DDB0 0019AD10 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8019DDB4 0019AD14 41 82 01 70 */ beq lbl_8019DF24 +/* 8019DDB8 0019AD18 88 1F 00 38 */ lbz r0, 0x38(r31) +/* 8019DDBC 0019AD1C 3B C0 00 00 */ li r30, 0 +/* 8019DDC0 0019AD20 28 00 00 00 */ cmplwi r0, 0 +/* 8019DDC4 0019AD24 41 82 00 48 */ beq lbl_8019DE0C +/* 8019DDC8 0019AD28 88 1F 00 39 */ lbz r0, 0x39(r31) +/* 8019DDCC 0019AD2C 38 61 02 58 */ addi r3, r1, 0x258 +/* 8019DDD0 0019AD30 3B C0 00 01 */ li r30, 1 +/* 8019DDD4 0019AD34 98 01 04 1C */ stb r0, 0x41c(r1) +/* 8019DDD8 0019AD38 C0 1F 00 3C */ lfs f0, 0x3c(r31) +/* 8019DDDC 0019AD3C D0 01 04 28 */ stfs f0, 0x428(r1) +/* 8019DDE0 0019AD40 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8019DDE4 0019AD44 D0 01 04 30 */ stfs f0, 0x430(r1) +/* 8019DDE8 0019AD48 C0 1F 00 44 */ lfs f0, 0x44(r31) +/* 8019DDEC 0019AD4C D0 01 04 2C */ stfs f0, 0x42c(r1) +/* 8019DDF0 0019AD50 C0 1F 00 48 */ lfs f0, 0x48(r31) +/* 8019DDF4 0019AD54 D0 01 04 20 */ stfs f0, 0x420(r1) +/* 8019DDF8 0019AD58 C0 1F 00 4C */ lfs f0, 0x4c(r31) +/* 8019DDFC 0019AD5C D0 01 04 34 */ stfs f0, 0x434(r1) +/* 8019DE00 0019AD60 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 8019DE04 0019AD64 D0 01 04 24 */ stfs f0, 0x424(r1) +/* 8019DE08 0019AD68 48 14 A4 B5 */ bl PrepareReverbHiCallback__11CSfxManagerFRC16SND_AUX_REVERBHI +lbl_8019DE0C: +/* 8019DE0C 0019AD6C 88 1F 00 54 */ lbz r0, 0x54(r31) +/* 8019DE10 0019AD70 28 00 00 00 */ cmplwi r0, 0 +/* 8019DE14 0019AD74 41 82 00 3C */ beq lbl_8019DE50 +/* 8019DE18 0019AD78 2C 1E 00 01 */ cmpwi r30, 1 +/* 8019DE1C 0019AD7C 40 80 00 34 */ bge lbl_8019DE50 +/* 8019DE20 0019AD80 C0 3F 00 58 */ lfs f1, 0x58(r31) +/* 8019DE24 0019AD84 48 1E BB 31 */ bl __cvt_fp2unsigned +/* 8019DE28 0019AD88 90 61 00 F8 */ stw r3, 0xf8(r1) +/* 8019DE2C 0019AD8C C0 3F 00 5C */ lfs f1, 0x5c(r31) +/* 8019DE30 0019AD90 48 1E BB 25 */ bl __cvt_fp2unsigned +/* 8019DE34 0019AD94 90 61 00 FC */ stw r3, 0xfc(r1) +/* 8019DE38 0019AD98 C0 3F 00 60 */ lfs f1, 0x60(r31) +/* 8019DE3C 0019AD9C 48 1E BB 19 */ bl __cvt_fp2unsigned +/* 8019DE40 0019ADA0 90 61 01 00 */ stw r3, 0x100(r1) +/* 8019DE44 0019ADA4 3B DE 00 01 */ addi r30, r30, 1 +/* 8019DE48 0019ADA8 38 61 00 68 */ addi r3, r1, 0x68 +/* 8019DE4C 0019ADAC 48 14 A3 DD */ bl PrepareChorusCallback__11CSfxManagerFRC14SND_AUX_CHORUS +lbl_8019DE50: +/* 8019DE50 0019ADB0 88 1F 00 64 */ lbz r0, 0x64(r31) +/* 8019DE54 0019ADB4 28 00 00 00 */ cmplwi r0, 0 +/* 8019DE58 0019ADB8 41 82 00 48 */ beq lbl_8019DEA0 +/* 8019DE5C 0019ADBC 2C 1E 00 01 */ cmpwi r30, 1 +/* 8019DE60 0019ADC0 40 80 00 40 */ bge lbl_8019DEA0 +/* 8019DE64 0019ADC4 88 1F 00 65 */ lbz r0, 0x65(r31) +/* 8019DE68 0019ADC8 38 61 01 04 */ addi r3, r1, 0x104 +/* 8019DE6C 0019ADCC 3B DE 00 01 */ addi r30, r30, 1 +/* 8019DE70 0019ADD0 98 01 02 40 */ stb r0, 0x240(r1) +/* 8019DE74 0019ADD4 C0 1F 00 68 */ lfs f0, 0x68(r31) +/* 8019DE78 0019ADD8 D0 01 02 4C */ stfs f0, 0x24c(r1) +/* 8019DE7C 0019ADDC C0 1F 00 6C */ lfs f0, 0x6c(r31) +/* 8019DE80 0019ADE0 D0 01 02 54 */ stfs f0, 0x254(r1) +/* 8019DE84 0019ADE4 C0 1F 00 70 */ lfs f0, 0x70(r31) +/* 8019DE88 0019ADE8 D0 01 02 50 */ stfs f0, 0x250(r1) +/* 8019DE8C 0019ADEC C0 1F 00 74 */ lfs f0, 0x74(r31) +/* 8019DE90 0019ADF0 D0 01 02 44 */ stfs f0, 0x244(r1) +/* 8019DE94 0019ADF4 C0 1F 00 78 */ lfs f0, 0x78(r31) +/* 8019DE98 0019ADF8 D0 01 02 48 */ stfs f0, 0x248(r1) +/* 8019DE9C 0019ADFC 48 14 A2 D9 */ bl PrepareReverbStdCallback__11CSfxManagerFRC17SND_AUX_REVERBSTD +lbl_8019DEA0: +/* 8019DEA0 0019AE00 88 1F 00 7C */ lbz r0, 0x7c(r31) +/* 8019DEA4 0019AE04 28 00 00 00 */ cmplwi r0, 0 +/* 8019DEA8 0019AE08 41 82 00 60 */ beq lbl_8019DF08 +/* 8019DEAC 0019AE0C 2C 1E 00 01 */ cmpwi r30, 1 +/* 8019DEB0 0019AE10 40 80 00 58 */ bge lbl_8019DF08 +/* 8019DEB4 0019AE14 80 1F 00 80 */ lwz r0, 0x80(r31) +/* 8019DEB8 0019AE18 38 61 00 08 */ addi r3, r1, 8 +/* 8019DEBC 0019AE1C 3B DE 00 01 */ addi r30, r30, 1 +/* 8019DEC0 0019AE20 90 01 00 44 */ stw r0, 0x44(r1) +/* 8019DEC4 0019AE24 80 1F 00 84 */ lwz r0, 0x84(r31) +/* 8019DEC8 0019AE28 90 01 00 48 */ stw r0, 0x48(r1) +/* 8019DECC 0019AE2C 80 1F 00 88 */ lwz r0, 0x88(r31) +/* 8019DED0 0019AE30 90 01 00 4C */ stw r0, 0x4c(r1) +/* 8019DED4 0019AE34 80 1F 00 8C */ lwz r0, 0x8c(r31) +/* 8019DED8 0019AE38 90 01 00 50 */ stw r0, 0x50(r1) +/* 8019DEDC 0019AE3C 80 1F 00 90 */ lwz r0, 0x90(r31) +/* 8019DEE0 0019AE40 90 01 00 54 */ stw r0, 0x54(r1) +/* 8019DEE4 0019AE44 80 1F 00 94 */ lwz r0, 0x94(r31) +/* 8019DEE8 0019AE48 90 01 00 58 */ stw r0, 0x58(r1) +/* 8019DEEC 0019AE4C 80 1F 00 98 */ lwz r0, 0x98(r31) +/* 8019DEF0 0019AE50 90 01 00 5C */ stw r0, 0x5c(r1) +/* 8019DEF4 0019AE54 80 1F 00 9C */ lwz r0, 0x9c(r31) +/* 8019DEF8 0019AE58 90 01 00 60 */ stw r0, 0x60(r1) +/* 8019DEFC 0019AE5C 80 1F 00 A0 */ lwz r0, 0xa0(r31) +/* 8019DF00 0019AE60 90 01 00 64 */ stw r0, 0x64(r1) +/* 8019DF04 0019AE64 48 14 A1 61 */ bl PrepareDelayCallback__11CSfxManagerFRC13SND_AUX_DELAY +lbl_8019DF08: +/* 8019DF08 0019AE68 2C 1E 00 00 */ cmpwi r30, 0 +/* 8019DF0C 0019AE6C 40 81 00 10 */ ble lbl_8019DF1C +/* 8019DF10 0019AE70 80 1F 00 34 */ lwz r0, 0x34(r31) +/* 8019DF14 0019AE74 7C 03 07 34 */ extsh r3, r0 +/* 8019DF18 0019AE78 48 1A C8 F5 */ bl SetVolumeScale__9CAudioSysFs +lbl_8019DF1C: +/* 8019DF1C 0019AE7C 80 1F 00 04 */ lwz r0, 4(r31) +/* 8019DF20 0019AE80 90 0D A4 88 */ stw r0, lbl_805A9048@sda21(r13) +lbl_8019DF24: +/* 8019DF24 0019AE84 80 01 04 44 */ lwz r0, 0x444(r1) +/* 8019DF28 0019AE88 83 E1 04 3C */ lwz r31, 0x43c(r1) +/* 8019DF2C 0019AE8C 83 C1 04 38 */ lwz r30, 0x438(r1) +/* 8019DF30 0019AE90 7C 08 03 A6 */ mtlr r0 +/* 8019DF34 0019AE94 38 21 04 40 */ addi r1, r1, 0x440 +/* 8019DF38 0019AE98 4E 80 00 20 */ blr + +.global Think__20CScriptRoomAcousticsFfR13CStateManager +Think__20CScriptRoomAcousticsFfR13CStateManager: +/* 8019DF3C 0019AE9C 88 03 00 30 */ lbz r0, 0x30(r3) +/* 8019DF40 0019AEA0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8019DF44 0019AEA4 4E 80 00 20 */ blr + +.global AcceptScriptMsg__20CScriptRoomAcousticsF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__20CScriptRoomAcousticsF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 8019DF48 0019AEA8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8019DF4C 0019AEAC 7C 08 02 A6 */ mflr r0 +/* 8019DF50 0019AEB0 90 01 00 24 */ stw r0, 0x24(r1) +/* 8019DF54 0019AEB4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8019DF58 0019AEB8 7C 9F 23 78 */ mr r31, r4 +/* 8019DF5C 0019AEBC 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8019DF60 0019AEC0 7C 7E 1B 78 */ mr r30, r3 +/* 8019DF64 0019AEC4 A0 05 00 00 */ lhz r0, 0(r5) +/* 8019DF68 0019AEC8 38 A1 00 08 */ addi r5, r1, 8 +/* 8019DF6C 0019AECC B0 01 00 08 */ sth r0, 8(r1) +/* 8019DF70 0019AED0 4B EB 31 ED */ bl AcceptScriptMsg__7CEntityF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 8019DF74 0019AED4 2C 1F 00 04 */ cmpwi r31, 4 +/* 8019DF78 0019AED8 41 82 00 20 */ beq lbl_8019DF98 +/* 8019DF7C 0019AEDC 40 80 00 40 */ bge lbl_8019DFBC +/* 8019DF80 0019AEE0 2C 1F 00 01 */ cmpwi r31, 1 +/* 8019DF84 0019AEE4 41 82 00 08 */ beq lbl_8019DF8C +/* 8019DF88 0019AEE8 48 00 00 34 */ b lbl_8019DFBC +lbl_8019DF8C: +/* 8019DF8C 0019AEEC 7F C3 F3 78 */ mr r3, r30 +/* 8019DF90 0019AEF0 4B FF FE 05 */ bl EnableAuxCallbacks__20CScriptRoomAcousticsFv +/* 8019DF94 0019AEF4 48 00 00 28 */ b lbl_8019DFBC +lbl_8019DF98: +/* 8019DF98 0019AEF8 80 6D A4 88 */ lwz r3, lbl_805A9048@sda21(r13) +/* 8019DF9C 0019AEFC 80 1E 00 04 */ lwz r0, 4(r30) +/* 8019DFA0 0019AF00 7C 03 00 00 */ cmpw r3, r0 +/* 8019DFA4 0019AF04 40 82 00 18 */ bne lbl_8019DFBC +/* 8019DFA8 0019AF08 48 14 A4 91 */ bl DisableAuxProcessing__11CSfxManagerFv +/* 8019DFAC 0019AF0C 80 0D A3 90 */ lwz r0, lbl_805A8F50@sda21(r13) +/* 8019DFB0 0019AF10 90 0D A4 88 */ stw r0, lbl_805A9048@sda21(r13) +/* 8019DFB4 0019AF14 48 1A C8 49 */ bl GetDefaultVolumeScale__9CAudioSysFv +/* 8019DFB8 0019AF18 48 1A C8 55 */ bl SetVolumeScale__9CAudioSysFs +lbl_8019DFBC: +/* 8019DFBC 0019AF1C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8019DFC0 0019AF20 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8019DFC4 0019AF24 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8019DFC8 0019AF28 7C 08 03 A6 */ mtlr r0 +/* 8019DFCC 0019AF2C 38 21 00 20 */ addi r1, r1, 0x20 +/* 8019DFD0 0019AF30 4E 80 00 20 */ blr + +.global Accept__20CScriptRoomAcousticsFR8IVisitor +Accept__20CScriptRoomAcousticsFR8IVisitor: +/* 8019DFD4 0019AF34 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8019DFD8 0019AF38 7C 08 02 A6 */ mflr r0 +/* 8019DFDC 0019AF3C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8019DFE0 0019AF40 7C 60 1B 78 */ mr r0, r3 +/* 8019DFE4 0019AF44 7C 83 23 78 */ mr r3, r4 +/* 8019DFE8 0019AF48 81 84 00 00 */ lwz r12, 0(r4) +/* 8019DFEC 0019AF4C 7C 04 03 78 */ mr r4, r0 +/* 8019DFF0 0019AF50 81 8C 00 A8 */ lwz r12, 0xa8(r12) +/* 8019DFF4 0019AF54 7D 89 03 A6 */ mtctr r12 +/* 8019DFF8 0019AF58 4E 80 04 21 */ bctrl +/* 8019DFFC 0019AF5C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8019E000 0019AF60 7C 08 03 A6 */ mtlr r0 +/* 8019E004 0019AF64 38 21 00 10 */ addi r1, r1, 0x10 +/* 8019E008 0019AF68 4E 80 00 20 */ blr + +.global "__ct__20CScriptRoomAcousticsF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfobbbfffffffbfffbbfffffbiiiiiiiii" +"__ct__20CScriptRoomAcousticsF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfobbbfffffffbfffbbfffffbiiiiiiiii": +/* 8019E00C 0019AF6C 94 21 FE C0 */ stwu r1, -0x140(r1) +/* 8019E010 0019AF70 7C 08 02 A6 */ mflr r0 +/* 8019E014 0019AF74 90 01 01 44 */ stw r0, 0x144(r1) +/* 8019E018 0019AF78 DB E1 01 30 */ stfd f31, 0x130(r1) +/* 8019E01C 0019AF7C F3 E1 01 38 */ psq_st f31, 312(r1), 0, qr0 +/* 8019E020 0019AF80 DB C1 01 20 */ stfd f30, 0x120(r1) +/* 8019E024 0019AF84 F3 C1 01 28 */ psq_st f30, 296(r1), 0, qr0 +/* 8019E028 0019AF88 DB A1 01 10 */ stfd f29, 0x110(r1) +/* 8019E02C 0019AF8C F3 A1 01 18 */ psq_st f29, 280(r1), 0, qr0 +/* 8019E030 0019AF90 DB 81 01 00 */ stfd f28, 0x100(r1) +/* 8019E034 0019AF94 F3 81 01 08 */ psq_st f28, 264(r1), 0, qr0 +/* 8019E038 0019AF98 DB 61 00 F0 */ stfd f27, 0xf0(r1) +/* 8019E03C 0019AF9C F3 61 00 F8 */ psq_st f27, 248(r1), 0, qr0 +/* 8019E040 0019AFA0 DB 41 00 E0 */ stfd f26, 0xe0(r1) +/* 8019E044 0019AFA4 F3 41 00 E8 */ psq_st f26, 232(r1), 0, qr0 +/* 8019E048 0019AFA8 DB 21 00 D0 */ stfd f25, 0xd0(r1) +/* 8019E04C 0019AFAC F3 21 00 D8 */ psq_st f25, 216(r1), 0, qr0 +/* 8019E050 0019AFB0 DB 01 00 C0 */ stfd f24, 0xc0(r1) +/* 8019E054 0019AFB4 F3 01 00 C8 */ psq_st f24, 200(r1), 0, qr0 +/* 8019E058 0019AFB8 DA E1 00 B0 */ stfd f23, 0xb0(r1) +/* 8019E05C 0019AFBC F2 E1 00 B8 */ psq_st f23, 184(r1), 0, qr0 +/* 8019E060 0019AFC0 DA C1 00 A0 */ stfd f22, 0xa0(r1) +/* 8019E064 0019AFC4 F2 C1 00 A8 */ psq_st f22, 168(r1), 0, qr0 +/* 8019E068 0019AFC8 DA A1 00 90 */ stfd f21, 0x90(r1) +/* 8019E06C 0019AFCC F2 A1 00 98 */ psq_st f21, 152(r1), 0, qr0 +/* 8019E070 0019AFD0 DA 81 00 80 */ stfd f20, 0x80(r1) +/* 8019E074 0019AFD4 F2 81 00 88 */ psq_st f20, 136(r1), 0, qr0 +/* 8019E078 0019AFD8 DA 61 00 70 */ stfd f19, 0x70(r1) +/* 8019E07C 0019AFDC F2 61 00 78 */ psq_st f19, 120(r1), 0, qr0 +/* 8019E080 0019AFE0 DA 41 00 60 */ stfd f18, 0x60(r1) +/* 8019E084 0019AFE4 F2 41 00 68 */ psq_st f18, 104(r1), 0, qr0 +/* 8019E088 0019AFE8 BD E1 00 1C */ stmw r15, 0x1c(r1) +/* 8019E08C 0019AFEC A0 04 00 00 */ lhz r0, 0(r4) +/* 8019E090 0019AFF0 7C A4 2B 78 */ mr r4, r5 +/* 8019E094 0019AFF4 FE 40 08 90 */ fmr f18, f1 +/* 8019E098 0019AFF8 7C C5 33 78 */ mr r5, r6 +/* 8019E09C 0019AFFC FE 60 10 90 */ fmr f19, f2 +/* 8019E0A0 0019B000 B0 01 00 08 */ sth r0, 8(r1) +/* 8019E0A4 0019B004 7C E6 3B 78 */ mr r6, r7 +/* 8019E0A8 0019B008 7C 87 23 78 */ mr r7, r4 +/* 8019E0AC 0019B00C FE 80 18 90 */ fmr f20, f3 +/* 8019E0B0 0019B010 8B A1 01 4B */ lbz r29, 0x14b(r1) +/* 8019E0B4 0019B014 FE A0 20 90 */ fmr f21, f4 +/* 8019E0B8 0019B018 C3 41 01 4C */ lfs f26, 0x14c(r1) +/* 8019E0BC 0019B01C FE C0 28 90 */ fmr f22, f5 +/* 8019E0C0 0019B020 8B C1 01 53 */ lbz r30, 0x153(r1) +/* 8019E0C4 0019B024 FE E0 30 90 */ fmr f23, f6 +/* 8019E0C8 0019B028 8B E1 01 57 */ lbz r31, 0x157(r1) +/* 8019E0CC 0019B02C FF 00 38 90 */ fmr f24, f7 +/* 8019E0D0 0019B030 C3 61 01 58 */ lfs f27, 0x158(r1) +/* 8019E0D4 0019B034 FF 20 40 90 */ fmr f25, f8 +/* 8019E0D8 0019B038 C3 81 01 5C */ lfs f28, 0x15c(r1) +/* 8019E0DC 0019B03C C3 A1 01 60 */ lfs f29, 0x160(r1) +/* 8019E0E0 0019B040 7C 79 1B 78 */ mr r25, r3 +/* 8019E0E4 0019B044 C3 C1 01 64 */ lfs f30, 0x164(r1) +/* 8019E0E8 0019B048 7D 1A 43 78 */ mr r26, r8 +/* 8019E0EC 0019B04C C3 E1 01 68 */ lfs f31, 0x168(r1) +/* 8019E0F0 0019B050 7D 3B 4B 78 */ mr r27, r9 +/* 8019E0F4 0019B054 8A 01 01 6F */ lbz r16, 0x16f(r1) +/* 8019E0F8 0019B058 7D 5C 53 78 */ mr r28, r10 +/* 8019E0FC 0019B05C 82 21 01 70 */ lwz r17, 0x170(r1) +/* 8019E100 0019B060 38 81 00 08 */ addi r4, r1, 8 +/* 8019E104 0019B064 82 41 01 74 */ lwz r18, 0x174(r1) +/* 8019E108 0019B068 82 61 01 78 */ lwz r19, 0x178(r1) +/* 8019E10C 0019B06C 82 81 01 7C */ lwz r20, 0x17c(r1) +/* 8019E110 0019B070 82 A1 01 80 */ lwz r21, 0x180(r1) +/* 8019E114 0019B074 82 C1 01 84 */ lwz r22, 0x184(r1) +/* 8019E118 0019B078 82 E1 01 88 */ lwz r23, 0x188(r1) +/* 8019E11C 0019B07C 83 01 01 8C */ lwz r24, 0x18c(r1) +/* 8019E120 0019B080 81 E1 01 90 */ lwz r15, 0x190(r1) +/* 8019E124 0019B084 4B EB 32 01 */ bl "__ct__7CEntityF9TUniqueIdRC11CEntityInfobRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8019E128 0019B088 3C 80 80 3E */ lis r4, lbl_803E4708@ha +/* 8019E12C 0019B08C 7F 23 CB 78 */ mr r3, r25 +/* 8019E130 0019B090 38 04 47 08 */ addi r0, r4, lbl_803E4708@l +/* 8019E134 0019B094 90 19 00 00 */ stw r0, 0(r25) +/* 8019E138 0019B098 93 59 00 34 */ stw r26, 0x34(r25) +/* 8019E13C 0019B09C 9B 79 00 38 */ stb r27, 0x38(r25) +/* 8019E140 0019B0A0 9B 99 00 39 */ stb r28, 0x39(r25) +/* 8019E144 0019B0A4 D2 59 00 3C */ stfs f18, 0x3c(r25) +/* 8019E148 0019B0A8 D2 79 00 40 */ stfs f19, 0x40(r25) +/* 8019E14C 0019B0AC D2 99 00 44 */ stfs f20, 0x44(r25) +/* 8019E150 0019B0B0 D2 B9 00 48 */ stfs f21, 0x48(r25) +/* 8019E154 0019B0B4 D2 D9 00 4C */ stfs f22, 0x4c(r25) +/* 8019E158 0019B0B8 D2 F9 00 50 */ stfs f23, 0x50(r25) +/* 8019E15C 0019B0BC 9B B9 00 54 */ stb r29, 0x54(r25) +/* 8019E160 0019B0C0 D3 19 00 58 */ stfs f24, 0x58(r25) +/* 8019E164 0019B0C4 D3 39 00 5C */ stfs f25, 0x5c(r25) +/* 8019E168 0019B0C8 D3 59 00 60 */ stfs f26, 0x60(r25) +/* 8019E16C 0019B0CC 9B D9 00 64 */ stb r30, 0x64(r25) +/* 8019E170 0019B0D0 9B F9 00 65 */ stb r31, 0x65(r25) +/* 8019E174 0019B0D4 D3 79 00 68 */ stfs f27, 0x68(r25) +/* 8019E178 0019B0D8 D3 99 00 6C */ stfs f28, 0x6c(r25) +/* 8019E17C 0019B0DC D3 B9 00 70 */ stfs f29, 0x70(r25) +/* 8019E180 0019B0E0 D3 D9 00 74 */ stfs f30, 0x74(r25) +/* 8019E184 0019B0E4 D3 F9 00 78 */ stfs f31, 0x78(r25) +/* 8019E188 0019B0E8 9A 19 00 7C */ stb r16, 0x7c(r25) +/* 8019E18C 0019B0EC 92 39 00 80 */ stw r17, 0x80(r25) +/* 8019E190 0019B0F0 92 59 00 84 */ stw r18, 0x84(r25) +/* 8019E194 0019B0F4 92 79 00 88 */ stw r19, 0x88(r25) +/* 8019E198 0019B0F8 92 99 00 8C */ stw r20, 0x8c(r25) +/* 8019E19C 0019B0FC 92 B9 00 90 */ stw r21, 0x90(r25) +/* 8019E1A0 0019B100 92 D9 00 94 */ stw r22, 0x94(r25) +/* 8019E1A4 0019B104 92 F9 00 98 */ stw r23, 0x98(r25) +/* 8019E1A8 0019B108 93 19 00 9C */ stw r24, 0x9c(r25) +/* 8019E1AC 0019B10C 91 F9 00 A0 */ stw r15, 0xa0(r25) +/* 8019E1B0 0019B110 E3 E1 01 38 */ psq_l f31, 312(r1), 0, qr0 +/* 8019E1B4 0019B114 CB E1 01 30 */ lfd f31, 0x130(r1) +/* 8019E1B8 0019B118 E3 C1 01 28 */ psq_l f30, 296(r1), 0, qr0 +/* 8019E1BC 0019B11C CB C1 01 20 */ lfd f30, 0x120(r1) +/* 8019E1C0 0019B120 E3 A1 01 18 */ psq_l f29, 280(r1), 0, qr0 +/* 8019E1C4 0019B124 CB A1 01 10 */ lfd f29, 0x110(r1) +/* 8019E1C8 0019B128 E3 81 01 08 */ psq_l f28, 264(r1), 0, qr0 +/* 8019E1CC 0019B12C CB 81 01 00 */ lfd f28, 0x100(r1) +/* 8019E1D0 0019B130 E3 61 00 F8 */ psq_l f27, 248(r1), 0, qr0 +/* 8019E1D4 0019B134 CB 61 00 F0 */ lfd f27, 0xf0(r1) +/* 8019E1D8 0019B138 E3 41 00 E8 */ psq_l f26, 232(r1), 0, qr0 +/* 8019E1DC 0019B13C CB 41 00 E0 */ lfd f26, 0xe0(r1) +/* 8019E1E0 0019B140 E3 21 00 D8 */ psq_l f25, 216(r1), 0, qr0 +/* 8019E1E4 0019B144 CB 21 00 D0 */ lfd f25, 0xd0(r1) +/* 8019E1E8 0019B148 E3 01 00 C8 */ psq_l f24, 200(r1), 0, qr0 +/* 8019E1EC 0019B14C CB 01 00 C0 */ lfd f24, 0xc0(r1) +/* 8019E1F0 0019B150 E2 E1 00 B8 */ psq_l f23, 184(r1), 0, qr0 +/* 8019E1F4 0019B154 CA E1 00 B0 */ lfd f23, 0xb0(r1) +/* 8019E1F8 0019B158 E2 C1 00 A8 */ psq_l f22, 168(r1), 0, qr0 +/* 8019E1FC 0019B15C CA C1 00 A0 */ lfd f22, 0xa0(r1) +/* 8019E200 0019B160 E2 A1 00 98 */ psq_l f21, 152(r1), 0, qr0 +/* 8019E204 0019B164 CA A1 00 90 */ lfd f21, 0x90(r1) +/* 8019E208 0019B168 E2 81 00 88 */ psq_l f20, 136(r1), 0, qr0 +/* 8019E20C 0019B16C CA 81 00 80 */ lfd f20, 0x80(r1) +/* 8019E210 0019B170 E2 61 00 78 */ psq_l f19, 120(r1), 0, qr0 +/* 8019E214 0019B174 CA 61 00 70 */ lfd f19, 0x70(r1) +/* 8019E218 0019B178 E2 41 00 68 */ psq_l f18, 104(r1), 0, qr0 +/* 8019E21C 0019B17C CA 41 00 60 */ lfd f18, 0x60(r1) +/* 8019E220 0019B180 B9 E1 00 1C */ lmw r15, 0x1c(r1) +/* 8019E224 0019B184 80 01 01 44 */ lwz r0, 0x144(r1) +/* 8019E228 0019B188 7C 08 03 A6 */ mtlr r0 +/* 8019E22C 0019B18C 38 21 01 40 */ addi r1, r1, 0x140 +/* 8019E230 0019B190 4E 80 00 20 */ blr + +.global __sinit_CScriptRoomAcoustics_cpp +__sinit_CScriptRoomAcoustics_cpp: +/* 8019E234 0019B194 80 0D A3 90 */ lwz r0, lbl_805A8F50@sda21(r13) +/* 8019E238 0019B198 90 0D A4 88 */ stw r0, lbl_805A9048@sda21(r13) +/* 8019E23C 0019B19C 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/ScriptObjects/CScriptSpindleCamera.s b/asm/Kyoto_CWD/ScriptObjects/CScriptSpindleCamera.s new file mode 100644 index 00000000..a7c32331 --- /dev/null +++ b/asm/Kyoto_CWD/ScriptObjects/CScriptSpindleCamera.s @@ -0,0 +1,1990 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global AcceptScriptMsg__20CScriptSpindleCameraF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__20CScriptSpindleCameraF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 8023FC00 0023CB60 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8023FC04 0023CB64 7C 08 02 A6 */ mflr r0 +/* 8023FC08 0023CB68 90 01 00 14 */ stw r0, 0x14(r1) +/* 8023FC0C 0023CB6C A0 05 00 00 */ lhz r0, 0(r5) +/* 8023FC10 0023CB70 38 A1 00 08 */ addi r5, r1, 8 +/* 8023FC14 0023CB74 B0 01 00 08 */ sth r0, 8(r1) +/* 8023FC18 0023CB78 4B E1 B7 31 */ bl AcceptScriptMsg__11CGameCameraF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 8023FC1C 0023CB7C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8023FC20 0023CB80 7C 08 03 A6 */ mtlr r0 +/* 8023FC24 0023CB84 38 21 00 10 */ addi r1, r1, 0x10 +/* 8023FC28 0023CB88 4E 80 00 20 */ blr + +.global Render__20CScriptSpindleCameraCFRC13CStateManager +Render__20CScriptSpindleCameraCFRC13CStateManager: +/* 8023FC2C 0023CB8C 4E 80 00 20 */ blr + +.global Accept__20CScriptSpindleCameraFR8IVisitor +Accept__20CScriptSpindleCameraFR8IVisitor: +/* 8023FC30 0023CB90 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8023FC34 0023CB94 7C 08 02 A6 */ mflr r0 +/* 8023FC38 0023CB98 90 01 00 14 */ stw r0, 0x14(r1) +/* 8023FC3C 0023CB9C 7C 60 1B 78 */ mr r0, r3 +/* 8023FC40 0023CBA0 7C 83 23 78 */ mr r3, r4 +/* 8023FC44 0023CBA4 81 84 00 00 */ lwz r12, 0(r4) +/* 8023FC48 0023CBA8 7C 04 03 78 */ mr r4, r0 +/* 8023FC4C 0023CBAC 81 8C 00 E0 */ lwz r12, 0xe0(r12) +/* 8023FC50 0023CBB0 7D 89 03 A6 */ mtctr r12 +/* 8023FC54 0023CBB4 4E 80 04 21 */ bctrl +/* 8023FC58 0023CBB8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8023FC5C 0023CBBC 7C 08 03 A6 */ mtlr r0 +/* 8023FC60 0023CBC0 38 21 00 10 */ addi r1, r1, 0x10 +/* 8023FC64 0023CBC4 4E 80 00 20 */ blr + +.global ProcessInput__20CScriptSpindleCameraFRC11CFinalInputR13CStateManager +ProcessInput__20CScriptSpindleCameraFRC11CFinalInputR13CStateManager: +/* 8023FC68 0023CBC8 4E 80 00 20 */ blr + +.global Think__20CScriptSpindleCameraFfR13CStateManager +Think__20CScriptSpindleCameraFfR13CStateManager: +/* 8023FC6C 0023CBCC 94 21 FC A0 */ stwu r1, -0x360(r1) +/* 8023FC70 0023CBD0 7C 08 02 A6 */ mflr r0 +/* 8023FC74 0023CBD4 90 01 03 64 */ stw r0, 0x364(r1) +/* 8023FC78 0023CBD8 DB E1 03 50 */ stfd f31, 0x350(r1) +/* 8023FC7C 0023CBDC F3 E1 03 58 */ psq_st f31, 856(r1), 0, qr0 +/* 8023FC80 0023CBE0 DB C1 03 40 */ stfd f30, 0x340(r1) +/* 8023FC84 0023CBE4 F3 C1 03 48 */ psq_st f30, 840(r1), 0, qr0 +/* 8023FC88 0023CBE8 DB A1 03 30 */ stfd f29, 0x330(r1) +/* 8023FC8C 0023CBEC F3 A1 03 38 */ psq_st f29, 824(r1), 0, qr0 +/* 8023FC90 0023CBF0 DB 81 03 20 */ stfd f28, 0x320(r1) +/* 8023FC94 0023CBF4 F3 81 03 28 */ psq_st f28, 808(r1), 0, qr0 +/* 8023FC98 0023CBF8 DB 61 03 10 */ stfd f27, 0x310(r1) +/* 8023FC9C 0023CBFC F3 61 03 18 */ psq_st f27, 792(r1), 0, qr0 +/* 8023FCA0 0023CC00 DB 41 03 00 */ stfd f26, 0x300(r1) +/* 8023FCA4 0023CC04 F3 41 03 08 */ psq_st f26, 776(r1), 0, qr0 +/* 8023FCA8 0023CC08 DB 21 02 F0 */ stfd f25, 0x2f0(r1) +/* 8023FCAC 0023CC0C F3 21 02 F8 */ psq_st f25, 760(r1), 0, qr0 +/* 8023FCB0 0023CC10 DB 01 02 E0 */ stfd f24, 0x2e0(r1) +/* 8023FCB4 0023CC14 F3 01 02 E8 */ psq_st f24, 744(r1), 0, qr0 +/* 8023FCB8 0023CC18 DA E1 02 D0 */ stfd f23, 0x2d0(r1) +/* 8023FCBC 0023CC1C F2 E1 02 D8 */ psq_st f23, 728(r1), 0, qr0 +/* 8023FCC0 0023CC20 DA C1 02 C0 */ stfd f22, 0x2c0(r1) +/* 8023FCC4 0023CC24 F2 C1 02 C8 */ psq_st f22, 712(r1), 0, qr0 +/* 8023FCC8 0023CC28 DA A1 02 B0 */ stfd f21, 0x2b0(r1) +/* 8023FCCC 0023CC2C F2 A1 02 B8 */ psq_st f21, 696(r1), 0, qr0 +/* 8023FCD0 0023CC30 DA 81 02 A0 */ stfd f20, 0x2a0(r1) +/* 8023FCD4 0023CC34 F2 81 02 A8 */ psq_st f20, 680(r1), 0, qr0 +/* 8023FCD8 0023CC38 DA 61 02 90 */ stfd f19, 0x290(r1) +/* 8023FCDC 0023CC3C F2 61 02 98 */ psq_st f19, 664(r1), 0, qr0 +/* 8023FCE0 0023CC40 DA 41 02 80 */ stfd f18, 0x280(r1) +/* 8023FCE4 0023CC44 F2 41 02 88 */ psq_st f18, 648(r1), 0, qr0 +/* 8023FCE8 0023CC48 93 E1 02 7C */ stw r31, 0x27c(r1) +/* 8023FCEC 0023CC4C 93 C1 02 78 */ stw r30, 0x278(r1) +/* 8023FCF0 0023CC50 93 A1 02 74 */ stw r29, 0x274(r1) +/* 8023FCF4 0023CC54 93 81 02 70 */ stw r28, 0x270(r1) +/* 8023FCF8 0023CC58 88 03 00 30 */ lbz r0, 0x30(r3) +/* 8023FCFC 0023CC5C FE C0 08 90 */ fmr f22, f1 +/* 8023FD00 0023CC60 7C 7C 1B 78 */ mr r28, r3 +/* 8023FD04 0023CC64 7C 9D 23 78 */ mr r29, r4 +/* 8023FD08 0023CC68 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8023FD0C 0023CC6C 41 82 12 38 */ beq lbl_80240F44 +/* 8023FD10 0023CC70 80 7D 08 70 */ lwz r3, 0x870(r29) +/* 8023FD14 0023CC74 83 C3 00 80 */ lwz r30, 0x80(r3) +/* 8023FD18 0023CC78 4B DC 96 B9 */ bl GetCameraHint__14CCameraManagerCFR13CStateManager +/* 8023FD1C 0023CC7C 7C 7F 1B 79 */ or. r31, r3, r3 +/* 8023FD20 0023CC80 41 82 12 24 */ beq lbl_80240F44 +/* 8023FD24 0023CC84 C3 FF 00 60 */ lfs f31, 0x60(r31) +/* 8023FD28 0023CC88 38 61 01 80 */ addi r3, r1, 0x180 +/* 8023FD2C 0023CC8C C0 1C 00 60 */ lfs f0, 0x60(r28) +/* 8023FD30 0023CC90 C3 DF 00 50 */ lfs f30, 0x50(r31) +/* 8023FD34 0023CC94 C0 3C 00 50 */ lfs f1, 0x50(r28) +/* 8023FD38 0023CC98 EC 40 F8 28 */ fsubs f2, f0, f31 +/* 8023FD3C 0023CC9C C3 BF 00 40 */ lfs f29, 0x40(r31) +/* 8023FD40 0023CCA0 C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 8023FD44 0023CCA4 EC 61 F0 28 */ fsubs f3, f1, f30 +/* 8023FD48 0023CCA8 C3 7E 01 C0 */ lfs f27, 0x1c0(r30) +/* 8023FD4C 0023CCAC C3 9E 01 C4 */ lfs f28, 0x1c4(r30) +/* 8023FD50 0023CCB0 EC 20 E8 28 */ fsubs f1, f0, f29 +/* 8023FD54 0023CCB4 C0 02 B7 D0 */ lfs f0, lbl_805AD4F0@sda21(r2) +/* 8023FD58 0023CCB8 D0 41 02 38 */ stfs f2, 0x238(r1) +/* 8023FD5C 0023CCBC D0 21 02 30 */ stfs f1, 0x230(r1) +/* 8023FD60 0023CCC0 D0 61 02 34 */ stfs f3, 0x234(r1) +/* 8023FD64 0023CCC4 D0 01 02 38 */ stfs f0, 0x238(r1) +/* 8023FD68 0023CCC8 80 9D 08 4C */ lwz r4, 0x84c(r29) +/* 8023FD6C 0023CCCC 48 04 4F DD */ bl GetBallPosition__7CPlayerCFv +/* 8023FD70 0023CCD0 C3 41 01 88 */ lfs f26, 0x188(r1) +/* 8023FD74 0023CCD4 38 61 02 18 */ addi r3, r1, 0x218 +/* 8023FD78 0023CCD8 C3 01 01 80 */ lfs f24, 0x180(r1) +/* 8023FD7C 0023CCDC EE 5A F8 28 */ fsubs f18, f26, f31 +/* 8023FD80 0023CCE0 C2 E1 01 84 */ lfs f23, 0x184(r1) +/* 8023FD84 0023CCE4 EC 58 E8 28 */ fsubs f2, f24, f29 +/* 8023FD88 0023CCE8 C0 22 B7 D0 */ lfs f1, lbl_805AD4F0@sda21(r2) +/* 8023FD8C 0023CCEC EC 17 F0 28 */ fsubs f0, f23, f30 +/* 8023FD90 0023CCF0 D2 41 02 2C */ stfs f18, 0x22c(r1) +/* 8023FD94 0023CCF4 FE 80 08 90 */ fmr f20, f1 +/* 8023FD98 0023CCF8 D0 41 02 24 */ stfs f2, 0x224(r1) +/* 8023FD9C 0023CCFC D0 01 02 28 */ stfs f0, 0x228(r1) +/* 8023FDA0 0023CD00 D0 21 02 2C */ stfs f1, 0x22c(r1) +/* 8023FDA4 0023CD04 C0 7F 00 58 */ lfs f3, 0x58(r31) +/* 8023FDA8 0023CD08 C0 5F 00 48 */ lfs f2, 0x48(r31) +/* 8023FDAC 0023CD0C C0 1F 00 38 */ lfs f0, 0x38(r31) +/* 8023FDB0 0023CD10 D0 61 02 20 */ stfs f3, 0x220(r1) +/* 8023FDB4 0023CD14 D0 01 02 18 */ stfs f0, 0x218(r1) +/* 8023FDB8 0023CD18 D0 41 02 1C */ stfs f2, 0x21c(r1) +/* 8023FDBC 0023CD1C D0 21 02 20 */ stfs f1, 0x220(r1) +/* 8023FDC0 0023CD20 48 0D 49 39 */ bl CanBeNormalized__9CVector3fCFv +/* 8023FDC4 0023CD24 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8023FDC8 0023CD28 41 82 00 10 */ beq lbl_8023FDD8 +/* 8023FDCC 0023CD2C 38 61 02 18 */ addi r3, r1, 0x218 +/* 8023FDD0 0023CD30 48 0D 4B 29 */ bl Normalize__9CVector3fFv +/* 8023FDD4 0023CD34 48 00 00 18 */ b lbl_8023FDEC +lbl_8023FDD8: +/* 8023FDD8 0023CD38 C0 22 B7 D0 */ lfs f1, lbl_805AD4F0@sda21(r2) +/* 8023FDDC 0023CD3C C0 02 B7 D4 */ lfs f0, lbl_805AD4F4@sda21(r2) +/* 8023FDE0 0023CD40 D0 21 02 18 */ stfs f1, 0x218(r1) +/* 8023FDE4 0023CD44 D0 01 02 1C */ stfs f0, 0x21c(r1) +/* 8023FDE8 0023CD48 D0 21 02 20 */ stfs f1, 0x220(r1) +lbl_8023FDEC: +/* 8023FDEC 0023CD4C 38 61 02 24 */ addi r3, r1, 0x224 +/* 8023FDF0 0023CD50 48 0D 49 09 */ bl CanBeNormalized__9CVector3fCFv +/* 8023FDF4 0023CD54 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8023FDF8 0023CD58 41 82 00 1C */ beq lbl_8023FE14 +/* 8023FDFC 0023CD5C 38 61 02 24 */ addi r3, r1, 0x224 +/* 8023FE00 0023CD60 48 0D 4A B9 */ bl Magnitude__9CVector3fCFv +/* 8023FE04 0023CD64 FE 80 08 90 */ fmr f20, f1 +/* 8023FE08 0023CD68 38 61 02 24 */ addi r3, r1, 0x224 +/* 8023FE0C 0023CD6C 48 0D 4A ED */ bl Normalize__9CVector3fFv +/* 8023FE10 0023CD70 48 00 00 1C */ b lbl_8023FE2C +lbl_8023FE14: +/* 8023FE14 0023CD74 C0 41 02 18 */ lfs f2, 0x218(r1) +/* 8023FE18 0023CD78 C0 21 02 1C */ lfs f1, 0x21c(r1) +/* 8023FE1C 0023CD7C C0 01 02 20 */ lfs f0, 0x220(r1) +/* 8023FE20 0023CD80 D0 41 02 24 */ stfs f2, 0x224(r1) +/* 8023FE24 0023CD84 D0 21 02 28 */ stfs f1, 0x228(r1) +/* 8023FE28 0023CD88 D0 01 02 2C */ stfs f0, 0x22c(r1) +lbl_8023FE2C: +/* 8023FE2C 0023CD8C 80 BC 01 8C */ lwz r5, 0x18c(r28) +/* 8023FE30 0023CD90 3B DC 01 90 */ addi r30, r28, 0x190 +/* 8023FE34 0023CD94 38 60 00 00 */ li r3, 0 +/* 8023FE38 0023CD98 2C 05 00 00 */ cmpwi r5, 0 +/* 8023FE3C 0023CD9C 40 81 00 40 */ ble lbl_8023FE7C +/* 8023FE40 0023CDA0 2C 05 00 08 */ cmpwi r5, 8 +/* 8023FE44 0023CDA4 38 85 FF F8 */ addi r4, r5, -8 +/* 8023FE48 0023CDA8 40 81 00 20 */ ble lbl_8023FE68 +/* 8023FE4C 0023CDAC 38 04 00 07 */ addi r0, r4, 7 +/* 8023FE50 0023CDB0 54 00 E8 FE */ srwi r0, r0, 3 +/* 8023FE54 0023CDB4 7C 09 03 A6 */ mtctr r0 +/* 8023FE58 0023CDB8 2C 04 00 00 */ cmpwi r4, 0 +/* 8023FE5C 0023CDBC 40 81 00 0C */ ble lbl_8023FE68 +lbl_8023FE60: +/* 8023FE60 0023CDC0 38 63 00 08 */ addi r3, r3, 8 +/* 8023FE64 0023CDC4 42 00 FF FC */ bdnz lbl_8023FE60 +lbl_8023FE68: +/* 8023FE68 0023CDC8 7C 03 28 50 */ subf r0, r3, r5 +/* 8023FE6C 0023CDCC 7C 09 03 A6 */ mtctr r0 +/* 8023FE70 0023CDD0 7C 03 28 00 */ cmpw r3, r5 +/* 8023FE74 0023CDD4 40 80 00 08 */ bge lbl_8023FE7C +lbl_8023FE78: +/* 8023FE78 0023CDD8 42 00 00 00 */ bdnz lbl_8023FE78 +lbl_8023FE7C: +/* 8023FE7C 0023CDDC 38 00 00 00 */ li r0, 0 +/* 8023FE80 0023CDE0 90 1C 01 8C */ stw r0, 0x18c(r28) +/* 8023FE84 0023CDE4 80 1C 01 8C */ lwz r0, 0x18c(r28) +/* 8023FE88 0023CDE8 54 00 10 3A */ slwi r0, r0, 2 +/* 8023FE8C 0023CDEC 7C 7E 02 15 */ add. r3, r30, r0 +/* 8023FE90 0023CDF0 41 82 00 0C */ beq lbl_8023FE9C +/* 8023FE94 0023CDF4 C0 0D 96 C4 */ lfs f0, lbl_805A8284@sda21(r13) +/* 8023FE98 0023CDF8 D0 03 00 00 */ stfs f0, 0(r3) +lbl_8023FE9C: +/* 8023FE9C 0023CDFC 80 7C 01 8C */ lwz r3, 0x18c(r28) +/* 8023FEA0 0023CE00 38 03 00 01 */ addi r0, r3, 1 +/* 8023FEA4 0023CE04 90 1C 01 8C */ stw r0, 0x18c(r28) +/* 8023FEA8 0023CE08 80 1C 01 8C */ lwz r0, 0x18c(r28) +/* 8023FEAC 0023CE0C 54 00 10 3A */ slwi r0, r0, 2 +/* 8023FEB0 0023CE10 7C 7E 02 15 */ add. r3, r30, r0 +/* 8023FEB4 0023CE14 41 82 00 08 */ beq lbl_8023FEBC +/* 8023FEB8 0023CE18 D2 83 00 00 */ stfs f20, 0(r3) +lbl_8023FEBC: +/* 8023FEBC 0023CE1C 80 7C 01 8C */ lwz r3, 0x18c(r28) +/* 8023FEC0 0023CE20 FC 00 92 10 */ fabs f0, f18 +/* 8023FEC4 0023CE24 38 03 00 01 */ addi r0, r3, 1 +/* 8023FEC8 0023CE28 90 1C 01 8C */ stw r0, 0x18c(r28) +/* 8023FECC 0023CE2C FC 00 00 18 */ frsp f0, f0 +/* 8023FED0 0023CE30 80 1C 01 8C */ lwz r0, 0x18c(r28) +/* 8023FED4 0023CE34 54 00 10 3A */ slwi r0, r0, 2 +/* 8023FED8 0023CE38 7C 7E 02 15 */ add. r3, r30, r0 +/* 8023FEDC 0023CE3C 41 82 00 08 */ beq lbl_8023FEE4 +/* 8023FEE0 0023CE40 D0 03 00 00 */ stfs f0, 0(r3) +lbl_8023FEE4: +/* 8023FEE4 0023CE44 80 7C 01 8C */ lwz r3, 0x18c(r28) +/* 8023FEE8 0023CE48 C8 02 B7 D8 */ lfd f0, lbl_805AD4F8@sda21(r2) +/* 8023FEEC 0023CE4C 38 03 00 01 */ addi r0, r3, 1 +/* 8023FEF0 0023CE50 90 1C 01 8C */ stw r0, 0x18c(r28) +/* 8023FEF4 0023CE54 C0 41 02 28 */ lfs f2, 0x228(r1) +/* 8023FEF8 0023CE58 C0 21 02 1C */ lfs f1, 0x21c(r1) +/* 8023FEFC 0023CE5C C0 61 02 24 */ lfs f3, 0x224(r1) +/* 8023FF00 0023CE60 EC 22 00 72 */ fmuls f1, f2, f1 +/* 8023FF04 0023CE64 C0 41 02 18 */ lfs f2, 0x218(r1) +/* 8023FF08 0023CE68 C0 A1 02 2C */ lfs f5, 0x22c(r1) +/* 8023FF0C 0023CE6C C0 81 02 20 */ lfs f4, 0x220(r1) +/* 8023FF10 0023CE70 EC 23 08 BA */ fmadds f1, f3, f2, f1 +/* 8023FF14 0023CE74 EC 25 09 3A */ fmadds f1, f5, f4, f1 +/* 8023FF18 0023CE78 FC 40 0A 10 */ fabs f2, f1 +/* 8023FF1C 0023CE7C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8023FF20 0023CE80 40 81 00 14 */ ble lbl_8023FF34 +/* 8023FF24 0023CE84 C0 02 B7 E0 */ lfs f0, lbl_805AD500@sda21(r2) +/* 8023FF28 0023CE88 C0 42 B7 D4 */ lfs f2, lbl_805AD4F4@sda21(r2) +/* 8023FF2C 0023CE8C FC 01 00 AE */ fsel f0, f1, f2, f0 +/* 8023FF30 0023CE90 EC 22 00 32 */ fmuls f1, f2, f0 +lbl_8023FF34: +/* 8023FF34 0023CE94 48 15 4C F9 */ bl acos +/* 8023FF38 0023CE98 FC 00 08 18 */ frsp f0, f1 +/* 8023FF3C 0023CE9C 80 1C 01 8C */ lwz r0, 0x18c(r28) +/* 8023FF40 0023CEA0 54 00 10 3A */ slwi r0, r0, 2 +/* 8023FF44 0023CEA4 FC 00 02 10 */ fabs f0, f0 +/* 8023FF48 0023CEA8 7C 7E 02 15 */ add. r3, r30, r0 +/* 8023FF4C 0023CEAC FE 60 00 18 */ frsp f19, f0 +/* 8023FF50 0023CEB0 41 82 00 08 */ beq lbl_8023FF58 +/* 8023FF54 0023CEB4 D2 63 00 00 */ stfs f19, 0(r3) +lbl_8023FF58: +/* 8023FF58 0023CEB8 80 7C 01 8C */ lwz r3, 0x18c(r28) +/* 8023FF5C 0023CEBC C0 02 B7 D0 */ lfs f0, lbl_805AD4F0@sda21(r2) +/* 8023FF60 0023CEC0 38 03 00 01 */ addi r0, r3, 1 +/* 8023FF64 0023CEC4 90 1C 01 8C */ stw r0, 0x18c(r28) +/* 8023FF68 0023CEC8 C0 41 02 18 */ lfs f2, 0x218(r1) +/* 8023FF6C 0023CECC C0 21 02 28 */ lfs f1, 0x228(r1) +/* 8023FF70 0023CED0 C0 61 02 24 */ lfs f3, 0x224(r1) +/* 8023FF74 0023CED4 EC 22 00 72 */ fmuls f1, f2, f1 +/* 8023FF78 0023CED8 C0 41 02 1C */ lfs f2, 0x21c(r1) +/* 8023FF7C 0023CEDC EE A3 08 B8 */ fmsubs f21, f3, f2, f1 +/* 8023FF80 0023CEE0 FC 15 00 40 */ fcmpo cr0, f21, f0 +/* 8023FF84 0023CEE4 4C 41 13 82 */ cror 2, 1, 2 +/* 8023FF88 0023CEE8 40 82 00 50 */ bne lbl_8023FFD8 +/* 8023FF8C 0023CEEC 80 1C 01 8C */ lwz r0, 0x18c(r28) +/* 8023FF90 0023CEF0 54 00 10 3A */ slwi r0, r0, 2 +/* 8023FF94 0023CEF4 7C 7E 02 15 */ add. r3, r30, r0 +/* 8023FF98 0023CEF8 41 82 00 08 */ beq lbl_8023FFA0 +/* 8023FF9C 0023CEFC D2 63 00 00 */ stfs f19, 0(r3) +lbl_8023FFA0: +/* 8023FFA0 0023CF00 80 7C 01 8C */ lwz r3, 0x18c(r28) +/* 8023FFA4 0023CF04 C0 02 B7 E4 */ lfs f0, lbl_805AD504@sda21(r2) +/* 8023FFA8 0023CF08 38 03 00 01 */ addi r0, r3, 1 +/* 8023FFAC 0023CF0C 90 1C 01 8C */ stw r0, 0x18c(r28) +/* 8023FFB0 0023CF10 EC 00 98 28 */ fsubs f0, f0, f19 +/* 8023FFB4 0023CF14 80 1C 01 8C */ lwz r0, 0x18c(r28) +/* 8023FFB8 0023CF18 54 00 10 3A */ slwi r0, r0, 2 +/* 8023FFBC 0023CF1C 7C 7E 02 15 */ add. r3, r30, r0 +/* 8023FFC0 0023CF20 41 82 00 08 */ beq lbl_8023FFC8 +/* 8023FFC4 0023CF24 D0 03 00 00 */ stfs f0, 0(r3) +lbl_8023FFC8: +/* 8023FFC8 0023CF28 80 7C 01 8C */ lwz r3, 0x18c(r28) +/* 8023FFCC 0023CF2C 38 03 00 01 */ addi r0, r3, 1 +/* 8023FFD0 0023CF30 90 1C 01 8C */ stw r0, 0x18c(r28) +/* 8023FFD4 0023CF34 48 00 00 4C */ b lbl_80240020 +lbl_8023FFD8: +/* 8023FFD8 0023CF38 80 1C 01 8C */ lwz r0, 0x18c(r28) +/* 8023FFDC 0023CF3C C0 02 B7 E4 */ lfs f0, lbl_805AD504@sda21(r2) +/* 8023FFE0 0023CF40 54 00 10 3A */ slwi r0, r0, 2 +/* 8023FFE4 0023CF44 EC 00 98 28 */ fsubs f0, f0, f19 +/* 8023FFE8 0023CF48 7C 7E 02 15 */ add. r3, r30, r0 +/* 8023FFEC 0023CF4C 41 82 00 08 */ beq lbl_8023FFF4 +/* 8023FFF0 0023CF50 D0 03 00 00 */ stfs f0, 0(r3) +lbl_8023FFF4: +/* 8023FFF4 0023CF54 80 7C 01 8C */ lwz r3, 0x18c(r28) +/* 8023FFF8 0023CF58 38 03 00 01 */ addi r0, r3, 1 +/* 8023FFFC 0023CF5C 90 1C 01 8C */ stw r0, 0x18c(r28) +/* 80240000 0023CF60 80 1C 01 8C */ lwz r0, 0x18c(r28) +/* 80240004 0023CF64 54 00 10 3A */ slwi r0, r0, 2 +/* 80240008 0023CF68 7C 7E 02 15 */ add. r3, r30, r0 +/* 8024000C 0023CF6C 41 82 00 08 */ beq lbl_80240014 +/* 80240010 0023CF70 D2 63 00 00 */ stfs f19, 0(r3) +lbl_80240014: +/* 80240014 0023CF74 80 7C 01 8C */ lwz r3, 0x18c(r28) +/* 80240018 0023CF78 38 03 00 01 */ addi r0, r3, 1 +/* 8024001C 0023CF7C 90 1C 01 8C */ stw r0, 0x18c(r28) +lbl_80240020: +/* 80240020 0023CF80 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 80240024 0023CF84 38 61 02 0C */ addi r3, r1, 0x20c +/* 80240028 0023CF88 C0 3F 01 94 */ lfs f1, 0x194(r31) +/* 8024002C 0023CF8C C0 02 B7 D0 */ lfs f0, lbl_805AD4F0@sda21(r2) +/* 80240030 0023CF90 EC A2 08 28 */ fsubs f5, f2, f1 +/* 80240034 0023CF94 C0 9F 00 50 */ lfs f4, 0x50(r31) +/* 80240038 0023CF98 C0 7F 01 84 */ lfs f3, 0x184(r31) +/* 8024003C 0023CF9C FF 20 00 90 */ fmr f25, f0 +/* 80240040 0023CFA0 C0 5F 00 40 */ lfs f2, 0x40(r31) +/* 80240044 0023CFA4 C0 3F 01 74 */ lfs f1, 0x174(r31) +/* 80240048 0023CFA8 FC C0 2A 10 */ fabs f6, f5 +/* 8024004C 0023CFAC EC 64 18 28 */ fsubs f3, f4, f3 +/* 80240050 0023CFB0 D0 A1 02 14 */ stfs f5, 0x214(r1) +/* 80240054 0023CFB4 EC 22 08 28 */ fsubs f1, f2, f1 +/* 80240058 0023CFB8 FE 40 30 18 */ frsp f18, f6 +/* 8024005C 0023CFBC D0 01 02 14 */ stfs f0, 0x214(r1) +/* 80240060 0023CFC0 D0 21 02 0C */ stfs f1, 0x20c(r1) +/* 80240064 0023CFC4 D0 61 02 10 */ stfs f3, 0x210(r1) +/* 80240068 0023CFC8 48 0D 46 91 */ bl CanBeNormalized__9CVector3fCFv +/* 8024006C 0023CFCC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80240070 0023CFD0 41 82 00 10 */ beq lbl_80240080 +/* 80240074 0023CFD4 38 61 02 0C */ addi r3, r1, 0x20c +/* 80240078 0023CFD8 48 0D 48 41 */ bl Magnitude__9CVector3fCFv +/* 8024007C 0023CFDC FF 20 08 90 */ fmr f25, f1 +lbl_80240080: +/* 80240080 0023CFE0 80 1C 01 8C */ lwz r0, 0x18c(r28) +/* 80240084 0023CFE4 54 00 10 3A */ slwi r0, r0, 2 +/* 80240088 0023CFE8 7C 7E 02 15 */ add. r3, r30, r0 +/* 8024008C 0023CFEC 41 82 00 08 */ beq lbl_80240094 +/* 80240090 0023CFF0 D3 23 00 00 */ stfs f25, 0(r3) +lbl_80240094: +/* 80240094 0023CFF4 80 7C 01 8C */ lwz r3, 0x18c(r28) +/* 80240098 0023CFF8 38 03 00 01 */ addi r0, r3, 1 +/* 8024009C 0023CFFC 90 1C 01 8C */ stw r0, 0x18c(r28) +/* 802400A0 0023D000 80 1C 01 8C */ lwz r0, 0x18c(r28) +/* 802400A4 0023D004 54 00 10 3A */ slwi r0, r0, 2 +/* 802400A8 0023D008 7C 7E 02 15 */ add. r3, r30, r0 +/* 802400AC 0023D00C 41 82 00 08 */ beq lbl_802400B4 +/* 802400B0 0023D010 D2 43 00 00 */ stfs f18, 0(r3) +lbl_802400B4: +/* 802400B4 0023D014 80 7C 01 8C */ lwz r3, 0x18c(r28) +/* 802400B8 0023D018 38 03 00 01 */ addi r0, r3, 1 +/* 802400BC 0023D01C 90 1C 01 8C */ stw r0, 0x18c(r28) +/* 802400C0 0023D020 80 1C 01 88 */ lwz r0, 0x188(r28) +/* 802400C4 0023D024 54 00 04 A5 */ rlwinm. r0, r0, 0, 0x12, 0x12 +/* 802400C8 0023D028 41 82 00 50 */ beq lbl_80240118 +/* 802400CC 0023D02C 7F 83 E3 78 */ mr r3, r28 +/* 802400D0 0023D030 38 9C 02 F8 */ addi r4, r28, 0x2f8 +/* 802400D4 0023D034 48 00 0F 01 */ bl GetInVar__20CScriptSpindleCameraCFRC16SSpindleProperty +/* 802400D8 0023D038 38 7C 02 F8 */ addi r3, r28, 0x2f8 +/* 802400DC 0023D03C 48 00 14 FD */ bl GetValue__16SSpindlePropertyCFf +/* 802400E0 0023D040 FC 14 08 40 */ fcmpo cr0, f20, f1 +/* 802400E4 0023D044 40 81 00 34 */ ble lbl_80240118 +/* 802400E8 0023D048 A0 7F 01 64 */ lhz r3, 0x164(r31) +/* 802400EC 0023D04C A0 1C 00 08 */ lhz r0, 8(r28) +/* 802400F0 0023D050 7C 03 00 40 */ cmplw r3, r0 +/* 802400F4 0023D054 40 82 0E 50 */ bne lbl_80240F44 +/* 802400F8 0023D058 A0 1F 00 08 */ lhz r0, 8(r31) +/* 802400FC 0023D05C 7F A5 EB 78 */ mr r5, r29 +/* 80240100 0023D060 38 81 00 0C */ addi r4, r1, 0xc +/* 80240104 0023D064 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80240108 0023D068 B0 01 00 08 */ sth r0, 8(r1) +/* 8024010C 0023D06C 80 7D 08 70 */ lwz r3, 0x870(r29) +/* 80240110 0023D070 4B DC 94 6D */ bl DeleteCameraHint__14CCameraManagerF9TUniqueIdR13CStateManager +/* 80240114 0023D074 48 00 0E 30 */ b lbl_80240F44 +lbl_80240118: +/* 80240118 0023D078 80 1C 01 88 */ lwz r0, 0x188(r28) +/* 8024011C 0023D07C 54 00 05 29 */ rlwinm. r0, r0, 0, 0x14, 0x14 +/* 80240120 0023D080 40 82 00 1C */ bne lbl_8024013C +/* 80240124 0023D084 C0 41 02 18 */ lfs f2, 0x218(r1) +/* 80240128 0023D088 C0 21 02 1C */ lfs f1, 0x21c(r1) +/* 8024012C 0023D08C C0 01 02 20 */ lfs f0, 0x220(r1) +/* 80240130 0023D090 D0 41 02 24 */ stfs f2, 0x224(r1) +/* 80240134 0023D094 D0 21 02 28 */ stfs f1, 0x228(r1) +/* 80240138 0023D098 D0 01 02 2C */ stfs f0, 0x22c(r1) +lbl_8024013C: +/* 8024013C 0023D09C 80 1C 01 88 */ lwz r0, 0x188(r28) +/* 80240140 0023D0A0 54 00 06 B5 */ rlwinm. r0, r0, 0, 0x1a, 0x1a +/* 80240144 0023D0A4 41 82 00 E8 */ beq lbl_8024022C +/* 80240148 0023D0A8 88 1C 03 2C */ lbz r0, 0x32c(r28) +/* 8024014C 0023D0AC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80240150 0023D0B0 40 82 00 4C */ bne lbl_8024019C +/* 80240154 0023D0B4 7F 83 E3 78 */ mr r3, r28 +/* 80240158 0023D0B8 38 9C 02 B0 */ addi r4, r28, 0x2b0 +/* 8024015C 0023D0BC 48 00 0E 79 */ bl GetInVar__20CScriptSpindleCameraCFRC16SSpindleProperty +/* 80240160 0023D0C0 38 7C 02 B0 */ addi r3, r28, 0x2b0 +/* 80240164 0023D0C4 48 00 14 75 */ bl GetValue__16SSpindlePropertyCFf +/* 80240168 0023D0C8 FC 13 08 40 */ fcmpo cr0, f19, f1 +/* 8024016C 0023D0CC 40 81 00 C0 */ ble lbl_8024022C +/* 80240170 0023D0D0 C0 01 02 24 */ lfs f0, 0x224(r1) +/* 80240174 0023D0D4 38 60 00 01 */ li r3, 1 +/* 80240178 0023D0D8 D0 1C 03 30 */ stfs f0, 0x330(r28) +/* 8024017C 0023D0DC C0 01 02 28 */ lfs f0, 0x228(r1) +/* 80240180 0023D0E0 D0 1C 03 34 */ stfs f0, 0x334(r28) +/* 80240184 0023D0E4 C0 01 02 2C */ lfs f0, 0x22c(r1) +/* 80240188 0023D0E8 D0 1C 03 38 */ stfs f0, 0x338(r28) +/* 8024018C 0023D0EC 88 1C 03 2C */ lbz r0, 0x32c(r28) +/* 80240190 0023D0F0 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80240194 0023D0F4 98 1C 03 2C */ stb r0, 0x32c(r28) +/* 80240198 0023D0F8 48 00 00 94 */ b lbl_8024022C +lbl_8024019C: +/* 8024019C 0023D0FC C0 21 02 18 */ lfs f1, 0x218(r1) +/* 802401A0 0023D100 7F 83 E3 78 */ mr r3, r28 +/* 802401A4 0023D104 C0 01 02 34 */ lfs f0, 0x234(r1) +/* 802401A8 0023D108 38 9C 03 10 */ addi r4, r28, 0x310 +/* 802401AC 0023D10C C0 41 02 30 */ lfs f2, 0x230(r1) +/* 802401B0 0023D110 EC 01 00 32 */ fmuls f0, f1, f0 +/* 802401B4 0023D114 C0 21 02 1C */ lfs f1, 0x21c(r1) +/* 802401B8 0023D118 EE 42 00 78 */ fmsubs f18, f2, f1, f0 +/* 802401BC 0023D11C 48 00 0E 19 */ bl GetInVar__20CScriptSpindleCameraCFRC16SSpindleProperty +/* 802401C0 0023D120 38 7C 03 10 */ addi r3, r28, 0x310 +/* 802401C4 0023D124 48 00 14 15 */ bl GetValue__16SSpindlePropertyCFf +/* 802401C8 0023D128 FC 13 08 40 */ fcmpo cr0, f19, f1 +/* 802401CC 0023D12C 40 80 00 14 */ bge lbl_802401E0 +/* 802401D0 0023D130 EC 35 04 B2 */ fmuls f1, f21, f18 +/* 802401D4 0023D134 C0 02 B7 D0 */ lfs f0, lbl_805AD4F0@sda21(r2) +/* 802401D8 0023D138 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802401DC 0023D13C 41 80 00 24 */ blt lbl_80240200 +lbl_802401E0: +/* 802401E0 0023D140 7F 83 E3 78 */ mr r3, r28 +/* 802401E4 0023D144 38 9C 02 B0 */ addi r4, r28, 0x2b0 +/* 802401E8 0023D148 48 00 0D ED */ bl GetInVar__20CScriptSpindleCameraCFRC16SSpindleProperty +/* 802401EC 0023D14C 38 7C 02 B0 */ addi r3, r28, 0x2b0 +/* 802401F0 0023D150 48 00 13 E9 */ bl GetValue__16SSpindlePropertyCFf +/* 802401F4 0023D154 FC 13 08 40 */ fcmpo cr0, f19, f1 +/* 802401F8 0023D158 4C 40 13 82 */ cror 2, 0, 2 +/* 802401FC 0023D15C 40 82 00 18 */ bne lbl_80240214 +lbl_80240200: +/* 80240200 0023D160 88 1C 03 2C */ lbz r0, 0x32c(r28) +/* 80240204 0023D164 38 60 00 00 */ li r3, 0 +/* 80240208 0023D168 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8024020C 0023D16C 98 1C 03 2C */ stb r0, 0x32c(r28) +/* 80240210 0023D170 48 00 00 1C */ b lbl_8024022C +lbl_80240214: +/* 80240214 0023D174 C0 1C 03 30 */ lfs f0, 0x330(r28) +/* 80240218 0023D178 D0 01 02 24 */ stfs f0, 0x224(r1) +/* 8024021C 0023D17C C0 1C 03 34 */ lfs f0, 0x334(r28) +/* 80240220 0023D180 D0 01 02 28 */ stfs f0, 0x228(r1) +/* 80240224 0023D184 C0 1C 03 38 */ lfs f0, 0x338(r28) +/* 80240228 0023D188 D0 01 02 2C */ stfs f0, 0x22c(r1) +lbl_8024022C: +/* 8024022C 0023D18C 7F 83 E3 78 */ mr r3, r28 +/* 80240230 0023D190 38 9C 01 F0 */ addi r4, r28, 0x1f0 +/* 80240234 0023D194 48 00 0D A1 */ bl GetInVar__20CScriptSpindleCameraCFRC16SSpindleProperty +/* 80240238 0023D198 38 7C 01 F0 */ addi r3, r28, 0x1f0 +/* 8024023C 0023D19C 48 00 13 9D */ bl GetValue__16SSpindlePropertyCFf +/* 80240240 0023D1A0 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 80240244 0023D1A4 80 1C 01 88 */ lwz r0, 0x188(r28) +/* 80240248 0023D1A8 54 00 06 73 */ rlwinm. r0, r0, 0, 0x19, 0x19 +/* 8024024C 0023D1AC 41 82 00 20 */ beq lbl_8024026C +/* 80240250 0023D1B0 7F 83 E3 78 */ mr r3, r28 +/* 80240254 0023D1B4 38 9C 02 08 */ addi r4, r28, 0x208 +/* 80240258 0023D1B8 48 00 0D 7D */ bl GetInVar__20CScriptSpindleCameraCFRC16SSpindleProperty +/* 8024025C 0023D1BC 38 7C 02 08 */ addi r3, r28, 0x208 +/* 80240260 0023D1C0 48 00 13 79 */ bl GetValue__16SSpindlePropertyCFf +/* 80240264 0023D1C4 EC 14 08 2A */ fadds f0, f20, f1 +/* 80240268 0023D1C8 D0 01 00 34 */ stfs f0, 0x34(r1) +lbl_8024026C: +/* 8024026C 0023D1CC 38 7C 01 B0 */ addi r3, r28, 0x1b0 +/* 80240270 0023D1D0 38 81 00 34 */ addi r4, r1, 0x34 +/* 80240274 0023D1D4 38 BC 01 B4 */ addi r5, r28, 0x1b4 +/* 80240278 0023D1D8 4B DC C0 3D */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8024027C 0023D1DC C0 03 00 00 */ lfs f0, 0(r3) +/* 80240280 0023D1E0 38 61 02 30 */ addi r3, r1, 0x230 +/* 80240284 0023D1E4 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 80240288 0023D1E8 C0 5C 00 60 */ lfs f2, 0x60(r28) +/* 8024028C 0023D1EC C0 3C 00 50 */ lfs f1, 0x50(r28) +/* 80240290 0023D1F0 C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 80240294 0023D1F4 D0 01 02 00 */ stfs f0, 0x200(r1) +/* 80240298 0023D1F8 D0 21 02 04 */ stfs f1, 0x204(r1) +/* 8024029C 0023D1FC D0 41 02 08 */ stfs f2, 0x208(r1) +/* 802402A0 0023D200 48 0D 46 19 */ bl Magnitude__9CVector3fCFv +/* 802402A4 0023D204 FE A0 08 90 */ fmr f21, f1 +/* 802402A8 0023D208 38 61 02 30 */ addi r3, r1, 0x230 +/* 802402AC 0023D20C 48 0D 44 4D */ bl CanBeNormalized__9CVector3fCFv +/* 802402B0 0023D210 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 802402B4 0023D214 41 82 00 10 */ beq lbl_802402C4 +/* 802402B8 0023D218 38 61 02 30 */ addi r3, r1, 0x230 +/* 802402BC 0023D21C 48 0D 46 3D */ bl Normalize__9CVector3fFv +/* 802402C0 0023D220 48 00 00 34 */ b lbl_802402F4 +lbl_802402C4: +/* 802402C4 0023D224 C0 41 02 18 */ lfs f2, 0x218(r1) +/* 802402C8 0023D228 7F 83 E3 78 */ mr r3, r28 +/* 802402CC 0023D22C C0 21 02 1C */ lfs f1, 0x21c(r1) +/* 802402D0 0023D230 38 9C 01 F0 */ addi r4, r28, 0x1f0 +/* 802402D4 0023D234 C0 01 02 20 */ lfs f0, 0x220(r1) +/* 802402D8 0023D238 D0 41 02 30 */ stfs f2, 0x230(r1) +/* 802402DC 0023D23C D0 21 02 34 */ stfs f1, 0x234(r1) +/* 802402E0 0023D240 D0 01 02 38 */ stfs f0, 0x238(r1) +/* 802402E4 0023D244 48 00 0C F1 */ bl GetInVar__20CScriptSpindleCameraCFRC16SSpindleProperty +/* 802402E8 0023D248 38 7C 01 F0 */ addi r3, r28, 0x1f0 +/* 802402EC 0023D24C 48 00 12 ED */ bl GetValue__16SSpindlePropertyCFf +/* 802402F0 0023D250 FE A0 08 90 */ fmr f21, f1 +lbl_802402F4: +/* 802402F4 0023D254 7F 83 E3 78 */ mr r3, r28 +/* 802402F8 0023D258 38 9C 02 20 */ addi r4, r28, 0x220 +/* 802402FC 0023D25C 48 00 0C D9 */ bl GetInVar__20CScriptSpindleCameraCFRC16SSpindleProperty +/* 80240300 0023D260 38 7C 02 20 */ addi r3, r28, 0x220 +/* 80240304 0023D264 48 00 12 D5 */ bl GetValue__16SSpindlePropertyCFf +/* 80240308 0023D268 80 1C 01 88 */ lwz r0, 0x188(r28) +/* 8024030C 0023D26C FF 20 08 90 */ fmr f25, f1 +/* 80240310 0023D270 54 00 04 63 */ rlwinm. r0, r0, 0, 0x11, 0x11 +/* 80240314 0023D274 40 82 00 54 */ bne lbl_80240368 +/* 80240318 0023D278 C0 81 02 34 */ lfs f4, 0x234(r1) +/* 8024031C 0023D27C C0 E1 02 24 */ lfs f7, 0x224(r1) +/* 80240320 0023D280 C0 A1 02 38 */ lfs f5, 0x238(r1) +/* 80240324 0023D284 C0 21 02 28 */ lfs f1, 0x228(r1) +/* 80240328 0023D288 EC 07 01 32 */ fmuls f0, f7, f4 +/* 8024032C 0023D28C C0 41 02 30 */ lfs f2, 0x230(r1) +/* 80240330 0023D290 C0 C1 02 2C */ lfs f6, 0x22c(r1) +/* 80240334 0023D294 EC 61 01 72 */ fmuls f3, f1, f5 +/* 80240338 0023D298 EC 22 00 78 */ fmsubs f1, f2, f1, f0 +/* 8024033C 0023D29C C0 02 B7 D0 */ lfs f0, lbl_805AD4F0@sda21(r2) +/* 80240340 0023D2A0 EC 46 00 B2 */ fmuls f2, f6, f2 +/* 80240344 0023D2A4 EC 64 19 B8 */ fmsubs f3, f4, f6, f3 +/* 80240348 0023D2A8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8024034C 0023D2AC D0 21 01 7C */ stfs f1, 0x17c(r1) +/* 80240350 0023D2B0 EC 05 11 F8 */ fmsubs f0, f5, f7, f2 +/* 80240354 0023D2B4 D0 61 01 74 */ stfs f3, 0x174(r1) +/* 80240358 0023D2B8 D0 01 01 78 */ stfs f0, 0x178(r1) +/* 8024035C 0023D2BC 4C 41 13 82 */ cror 2, 1, 2 +/* 80240360 0023D2C0 40 82 00 08 */ bne lbl_80240368 +/* 80240364 0023D2C4 FF 20 C8 50 */ fneg f25, f25 +lbl_80240368: +/* 80240368 0023D2C8 D3 21 00 2C */ stfs f25, 0x2c(r1) +/* 8024036C 0023D2CC 38 61 01 64 */ addi r3, r1, 0x164 +/* 80240370 0023D2D0 38 81 00 2C */ addi r4, r1, 0x2c +/* 80240374 0023D2D4 48 0D 0D 85 */ bl ZRotation__11CQuaternionFRC9CRelAngle +/* 80240378 0023D2D8 C0 61 01 64 */ lfs f3, 0x164(r1) +/* 8024037C 0023D2DC 38 61 01 58 */ addi r3, r1, 0x158 +/* 80240380 0023D2E0 C0 41 01 68 */ lfs f2, 0x168(r1) +/* 80240384 0023D2E4 38 81 01 F0 */ addi r4, r1, 0x1f0 +/* 80240388 0023D2E8 C0 21 01 6C */ lfs f1, 0x16c(r1) +/* 8024038C 0023D2EC 38 A1 02 24 */ addi r5, r1, 0x224 +/* 80240390 0023D2F0 C0 01 01 70 */ lfs f0, 0x170(r1) +/* 80240394 0023D2F4 D0 61 01 F0 */ stfs f3, 0x1f0(r1) +/* 80240398 0023D2F8 D0 41 01 F4 */ stfs f2, 0x1f4(r1) +/* 8024039C 0023D2FC D0 21 01 F8 */ stfs f1, 0x1f8(r1) +/* 802403A0 0023D300 D0 01 01 FC */ stfs f0, 0x1fc(r1) +/* 802403A4 0023D304 48 0D 0E C1 */ bl Transform__11CQuaternionCFRC9CVector3f +/* 802403A8 0023D308 C0 61 01 5C */ lfs f3, 0x15c(r1) +/* 802403AC 0023D30C C0 A1 02 34 */ lfs f5, 0x234(r1) +/* 802403B0 0023D310 C0 81 01 58 */ lfs f4, 0x158(r1) +/* 802403B4 0023D314 C0 C1 02 30 */ lfs f6, 0x230(r1) +/* 802403B8 0023D318 EC 05 00 F2 */ fmuls f0, f5, f3 +/* 802403BC 0023D31C C0 41 01 60 */ lfs f2, 0x160(r1) +/* 802403C0 0023D320 C0 E1 02 38 */ lfs f7, 0x238(r1) +/* 802403C4 0023D324 EC 26 01 3A */ fmadds f1, f6, f4, f0 +/* 802403C8 0023D328 C8 02 B7 D8 */ lfd f0, lbl_805AD4F8@sda21(r2) +/* 802403CC 0023D32C D0 81 01 E4 */ stfs f4, 0x1e4(r1) +/* 802403D0 0023D330 EC 27 08 BA */ fmadds f1, f7, f2, f1 +/* 802403D4 0023D334 D0 61 01 E8 */ stfs f3, 0x1e8(r1) +/* 802403D8 0023D338 D0 41 01 EC */ stfs f2, 0x1ec(r1) +/* 802403DC 0023D33C FC 40 0A 10 */ fabs f2, f1 +/* 802403E0 0023D340 D0 C1 01 D8 */ stfs f6, 0x1d8(r1) +/* 802403E4 0023D344 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 802403E8 0023D348 D0 A1 01 DC */ stfs f5, 0x1dc(r1) +/* 802403EC 0023D34C D0 E1 01 E0 */ stfs f7, 0x1e0(r1) +/* 802403F0 0023D350 40 81 00 14 */ ble lbl_80240404 +/* 802403F4 0023D354 C0 02 B7 E0 */ lfs f0, lbl_805AD500@sda21(r2) +/* 802403F8 0023D358 C0 42 B7 D4 */ lfs f2, lbl_805AD4F4@sda21(r2) +/* 802403FC 0023D35C FC 01 00 AE */ fsel f0, f1, f2, f0 +/* 80240400 0023D360 EC 22 00 32 */ fmuls f1, f2, f0 +lbl_80240404: +/* 80240404 0023D364 48 15 48 29 */ bl acos +/* 80240408 0023D368 FC 00 08 18 */ frsp f0, f1 +/* 8024040C 0023D36C 7F 83 E3 78 */ mr r3, r28 +/* 80240410 0023D370 38 9C 02 C8 */ addi r4, r28, 0x2c8 +/* 80240414 0023D374 FC 00 02 10 */ fabs f0, f0 +/* 80240418 0023D378 FE 80 00 18 */ frsp f20, f0 +/* 8024041C 0023D37C 48 00 0B B9 */ bl GetInVar__20CScriptSpindleCameraCFRC16SSpindleProperty +/* 80240420 0023D380 38 7C 02 C8 */ addi r3, r28, 0x2c8 +/* 80240424 0023D384 48 00 11 B5 */ bl GetValue__16SSpindlePropertyCFf +/* 80240428 0023D388 EE 54 08 24 */ fdivs f18, f20, f1 +/* 8024042C 0023D38C C8 02 B7 D8 */ lfd f0, lbl_805AD4F8@sda21(r2) +/* 80240430 0023D390 FC 20 92 10 */ fabs f1, f18 +/* 80240434 0023D394 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80240438 0023D398 40 81 00 14 */ ble lbl_8024044C +/* 8024043C 0023D39C C0 02 B7 E0 */ lfs f0, lbl_805AD500@sda21(r2) +/* 80240440 0023D3A0 C0 22 B7 D4 */ lfs f1, lbl_805AD4F4@sda21(r2) +/* 80240444 0023D3A4 FC 12 00 6E */ fsel f0, f18, f1, f0 +/* 80240448 0023D3A8 EE 41 00 32 */ fmuls f18, f1, f0 +lbl_8024044C: +/* 8024044C 0023D3AC 7F 83 E3 78 */ mr r3, r28 +/* 80240450 0023D3B0 38 9C 01 C0 */ addi r4, r28, 0x1c0 +/* 80240454 0023D3B4 48 00 0B 81 */ bl GetInVar__20CScriptSpindleCameraCFRC16SSpindleProperty +/* 80240458 0023D3B8 38 7C 01 C0 */ addi r3, r28, 0x1c0 +/* 8024045C 0023D3BC 48 00 11 7D */ bl GetValue__16SSpindlePropertyCFf +/* 80240460 0023D3C0 80 1C 01 88 */ lwz r0, 0x188(r28) +/* 80240464 0023D3C4 FE 60 08 90 */ fmr f19, f1 +/* 80240468 0023D3C8 54 00 05 EF */ rlwinm. r0, r0, 0, 0x17, 0x17 +/* 8024046C 0023D3CC 40 82 00 3C */ bne lbl_802404A8 +/* 80240470 0023D3D0 7F 83 E3 78 */ mr r3, r28 +/* 80240474 0023D3D4 38 9C 01 D8 */ addi r4, r28, 0x1d8 +/* 80240478 0023D3D8 48 00 0B 5D */ bl GetInVar__20CScriptSpindleCameraCFRC16SSpindleProperty +/* 8024047C 0023D3DC 38 7C 01 D8 */ addi r3, r28, 0x1d8 +/* 80240480 0023D3E0 48 00 11 59 */ bl GetValue__16SSpindlePropertyCFf +/* 80240484 0023D3E4 EC 21 A8 24 */ fdivs f1, f1, f21 +/* 80240488 0023D3E8 FC 00 0A 10 */ fabs f0, f1 +/* 8024048C 0023D3EC FC 00 98 40 */ fcmpo cr0, f0, f19 +/* 80240490 0023D3F0 40 81 00 14 */ ble lbl_802404A4 +/* 80240494 0023D3F4 C0 42 B7 E0 */ lfs f2, lbl_805AD500@sda21(r2) +/* 80240498 0023D3F8 C0 02 B7 D4 */ lfs f0, lbl_805AD4F4@sda21(r2) +/* 8024049C 0023D3FC FC 01 10 2E */ fsel f0, f1, f0, f2 +/* 802404A0 0023D400 EC 33 00 32 */ fmuls f1, f19, f0 +lbl_802404A4: +/* 802404A4 0023D404 FE 60 08 90 */ fmr f19, f1 +lbl_802404A8: +/* 802404A8 0023D408 C0 81 02 28 */ lfs f4, 0x228(r1) +/* 802404AC 0023D40C C0 01 02 30 */ lfs f0, 0x230(r1) +/* 802404B0 0023D410 C0 A1 02 2C */ lfs f5, 0x22c(r1) +/* 802404B4 0023D414 C0 41 02 34 */ lfs f2, 0x234(r1) +/* 802404B8 0023D418 EC C0 01 32 */ fmuls f6, f0, f4 +/* 802404BC 0023D41C C0 21 02 24 */ lfs f1, 0x224(r1) +/* 802404C0 0023D420 C0 61 02 38 */ lfs f3, 0x238(r1) +/* 802404C4 0023D424 ED 02 01 72 */ fmuls f8, f2, f5 +/* 802404C8 0023D428 EC C1 30 B8 */ fmsubs f6, f1, f2, f6 +/* 802404CC 0023D42C C1 22 B7 D0 */ lfs f9, lbl_805AD4F0@sda21(r2) +/* 802404D0 0023D430 EC E3 00 72 */ fmuls f7, f3, f1 +/* 802404D4 0023D434 ED 04 40 F8 */ fmsubs f8, f4, f3, f8 +/* 802404D8 0023D438 FC 06 48 40 */ fcmpo cr0, f6, f9 +/* 802404DC 0023D43C D0 C1 01 54 */ stfs f6, 0x154(r1) +/* 802404E0 0023D440 EC C5 38 38 */ fmsubs f6, f5, f0, f7 +/* 802404E4 0023D444 D1 01 01 4C */ stfs f8, 0x14c(r1) +/* 802404E8 0023D448 D0 C1 01 50 */ stfs f6, 0x150(r1) +/* 802404EC 0023D44C 4C 41 13 82 */ cror 2, 1, 2 +/* 802404F0 0023D450 40 82 00 3C */ bne lbl_8024052C +/* 802404F4 0023D454 C1 41 01 E8 */ lfs f10, 0x1e8(r1) +/* 802404F8 0023D458 C1 61 01 EC */ lfs f11, 0x1ec(r1) +/* 802404FC 0023D45C C1 81 01 E4 */ lfs f12, 0x1e4(r1) +/* 80240500 0023D460 EC C0 02 B2 */ fmuls f6, f0, f10 +/* 80240504 0023D464 ED 02 02 F2 */ fmuls f8, f2, f11 +/* 80240508 0023D468 EC E3 03 32 */ fmuls f7, f3, f12 +/* 8024050C 0023D46C EC CC 30 B8 */ fmsubs f6, f12, f2, f6 +/* 80240510 0023D470 ED 0A 40 F8 */ fmsubs f8, f10, f3, f8 +/* 80240514 0023D474 EC EB 38 38 */ fmsubs f7, f11, f0, f7 +/* 80240518 0023D478 FC 06 48 40 */ fcmpo cr0, f6, f9 +/* 8024051C 0023D47C D0 C1 01 48 */ stfs f6, 0x148(r1) +/* 80240520 0023D480 D1 01 01 40 */ stfs f8, 0x140(r1) +/* 80240524 0023D484 D0 E1 01 44 */ stfs f7, 0x144(r1) +/* 80240528 0023D488 41 80 00 70 */ blt lbl_80240598 +lbl_8024052C: +/* 8024052C 0023D48C EC E0 01 32 */ fmuls f7, f0, f4 +/* 80240530 0023D490 C0 C2 B7 D0 */ lfs f6, lbl_805AD4F0@sda21(r2) +/* 80240534 0023D494 ED 22 01 72 */ fmuls f9, f2, f5 +/* 80240538 0023D498 ED 03 00 72 */ fmuls f8, f3, f1 +/* 8024053C 0023D49C EC 21 38 B8 */ fmsubs f1, f1, f2, f7 +/* 80240540 0023D4A0 EC E4 48 F8 */ fmsubs f7, f4, f3, f9 +/* 80240544 0023D4A4 EC 85 40 38 */ fmsubs f4, f5, f0, f8 +/* 80240548 0023D4A8 FC 01 30 40 */ fcmpo cr0, f1, f6 +/* 8024054C 0023D4AC D0 21 01 3C */ stfs f1, 0x13c(r1) +/* 80240550 0023D4B0 D0 E1 01 34 */ stfs f7, 0x134(r1) +/* 80240554 0023D4B4 D0 81 01 38 */ stfs f4, 0x138(r1) +/* 80240558 0023D4B8 40 80 00 7C */ bge lbl_802405D4 +/* 8024055C 0023D4BC C0 E1 01 E8 */ lfs f7, 0x1e8(r1) +/* 80240560 0023D4C0 C1 01 01 EC */ lfs f8, 0x1ec(r1) +/* 80240564 0023D4C4 C1 21 01 E4 */ lfs f9, 0x1e4(r1) +/* 80240568 0023D4C8 EC 20 01 F2 */ fmuls f1, f0, f7 +/* 8024056C 0023D4CC EC A2 02 32 */ fmuls f5, f2, f8 +/* 80240570 0023D4D0 EC 83 02 72 */ fmuls f4, f3, f9 +/* 80240574 0023D4D4 EC 29 08 B8 */ fmsubs f1, f9, f2, f1 +/* 80240578 0023D4D8 EC 47 28 F8 */ fmsubs f2, f7, f3, f5 +/* 8024057C 0023D4DC EC 08 20 38 */ fmsubs f0, f8, f0, f4 +/* 80240580 0023D4E0 FC 01 30 40 */ fcmpo cr0, f1, f6 +/* 80240584 0023D4E4 D0 21 01 30 */ stfs f1, 0x130(r1) +/* 80240588 0023D4E8 D0 41 01 28 */ stfs f2, 0x128(r1) +/* 8024058C 0023D4EC D0 01 01 2C */ stfs f0, 0x12c(r1) +/* 80240590 0023D4F0 4C 41 13 82 */ cror 2, 1, 2 +/* 80240594 0023D4F4 40 82 00 40 */ bne lbl_802405D4 +lbl_80240598: +/* 80240598 0023D4F8 7F 83 E3 78 */ mr r3, r28 +/* 8024059C 0023D4FC 38 9C 02 E0 */ addi r4, r28, 0x2e0 +/* 802405A0 0023D500 48 00 0A 35 */ bl GetInVar__20CScriptSpindleCameraCFRC16SSpindleProperty +/* 802405A4 0023D504 38 7C 02 E0 */ addi r3, r28, 0x2e0 +/* 802405A8 0023D508 48 00 10 31 */ bl GetValue__16SSpindlePropertyCFf +/* 802405AC 0023D50C FC 00 9A 10 */ fabs f0, f19 +/* 802405B0 0023D510 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 802405B4 0023D514 40 81 00 18 */ ble lbl_802405CC +/* 802405B8 0023D518 C0 42 B7 E0 */ lfs f2, lbl_805AD500@sda21(r2) +/* 802405BC 0023D51C C0 02 B7 D4 */ lfs f0, lbl_805AD4F4@sda21(r2) +/* 802405C0 0023D520 FC 13 10 2E */ fsel f0, f19, f0, f2 +/* 802405C4 0023D524 EC 01 00 32 */ fmuls f0, f1, f0 +/* 802405C8 0023D528 48 00 00 08 */ b lbl_802405D0 +lbl_802405CC: +/* 802405CC 0023D52C FC 00 98 90 */ fmr f0, f19 +lbl_802405D0: +/* 802405D0 0023D530 FE 60 00 90 */ fmr f19, f0 +lbl_802405D4: +/* 802405D4 0023D534 C0 3C 00 60 */ lfs f1, 0x60(r28) +/* 802405D8 0023D538 EC 76 04 B2 */ fmuls f3, f22, f18 +/* 802405DC 0023D53C C0 5C 00 50 */ lfs f2, 0x50(r28) +/* 802405E0 0023D540 38 61 01 CC */ addi r3, r1, 0x1cc +/* 802405E4 0023D544 C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 802405E8 0023D548 EC 9A 08 28 */ fsubs f4, f26, f1 +/* 802405EC 0023D54C EC 57 10 28 */ fsubs f2, f23, f2 +/* 802405F0 0023D550 EC 38 00 28 */ fsubs f1, f24, f0 +/* 802405F4 0023D554 C0 02 B7 D0 */ lfs f0, lbl_805AD4F0@sda21(r2) +/* 802405F8 0023D558 D0 81 01 D4 */ stfs f4, 0x1d4(r1) +/* 802405FC 0023D55C EE 73 00 F2 */ fmuls f19, f19, f3 +/* 80240600 0023D560 FE 40 00 90 */ fmr f18, f0 +/* 80240604 0023D564 D0 21 01 CC */ stfs f1, 0x1cc(r1) +/* 80240608 0023D568 D0 41 01 D0 */ stfs f2, 0x1d0(r1) +/* 8024060C 0023D56C D0 01 01 D4 */ stfs f0, 0x1d4(r1) +/* 80240610 0023D570 48 0D 40 E9 */ bl CanBeNormalized__9CVector3fCFv +/* 80240614 0023D574 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80240618 0023D578 41 82 00 10 */ beq lbl_80240628 +/* 8024061C 0023D57C 38 61 01 CC */ addi r3, r1, 0x1cc +/* 80240620 0023D580 48 0D 42 99 */ bl Magnitude__9CVector3fCFv +/* 80240624 0023D584 FE 40 08 90 */ fmr f18, f1 +lbl_80240628: +/* 80240628 0023D588 C0 22 B7 E8 */ lfs f1, lbl_805AD508@sda21(r2) +/* 8024062C 0023D58C 38 81 00 28 */ addi r4, r1, 0x28 +/* 80240630 0023D590 C0 02 B7 EC */ lfs f0, lbl_805AD50C@sda21(r2) +/* 80240634 0023D594 38 6D 96 C8 */ addi r3, r13, lbl_805A8288@sda21 +/* 80240638 0023D598 EC 32 08 28 */ fsubs f1, f18, f1 +/* 8024063C 0023D59C 38 AD 96 CC */ addi r5, r13, lbl_805A828C@sda21 +/* 80240640 0023D5A0 EC 01 00 32 */ fmuls f0, f1, f0 +/* 80240644 0023D5A4 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 80240648 0023D5A8 4B DC BC 6D */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8024064C 0023D5AC C0 43 00 00 */ lfs f2, 0(r3) +/* 80240650 0023D5B0 C0 22 B7 D4 */ lfs f1, lbl_805AD4F4@sda21(r2) +/* 80240654 0023D5B4 C0 02 B7 F0 */ lfs f0, lbl_805AD510@sda21(r2) +/* 80240658 0023D5B8 EC 41 10 28 */ fsubs f2, f1, f2 +/* 8024065C 0023D5BC EC 00 08 BA */ fmadds f0, f0, f2, f1 +/* 80240660 0023D5C0 EE 73 00 32 */ fmuls f19, f19, f0 +/* 80240664 0023D5C4 FC 00 9A 10 */ fabs f0, f19 +/* 80240668 0023D5C8 FC 00 A0 40 */ fcmpo cr0, f0, f20 +/* 8024066C 0023D5CC 40 81 00 14 */ ble lbl_80240680 +/* 80240670 0023D5D0 C0 02 B7 E0 */ lfs f0, lbl_805AD500@sda21(r2) +/* 80240674 0023D5D4 FC 13 00 6E */ fsel f0, f19, f1, f0 +/* 80240678 0023D5D8 EC B4 00 32 */ fmuls f5, f20, f0 +/* 8024067C 0023D5DC 48 00 00 08 */ b lbl_80240684 +lbl_80240680: +/* 80240680 0023D5E0 FC A0 98 90 */ fmr f5, f19 +lbl_80240684: +/* 80240684 0023D5E4 C0 21 02 34 */ lfs f1, 0x234(r1) +/* 80240688 0023D5E8 C0 01 01 E8 */ lfs f0, 0x1e8(r1) +/* 8024068C 0023D5EC C0 41 02 30 */ lfs f2, 0x230(r1) +/* 80240690 0023D5F0 EC 01 00 32 */ fmuls f0, f1, f0 +/* 80240694 0023D5F4 C0 21 01 E4 */ lfs f1, 0x1e4(r1) +/* 80240698 0023D5F8 C0 81 02 38 */ lfs f4, 0x238(r1) +/* 8024069C 0023D5FC C0 61 01 EC */ lfs f3, 0x1ec(r1) +/* 802406A0 0023D600 EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 802406A4 0023D604 C8 02 B7 D8 */ lfd f0, lbl_805AD4F8@sda21(r2) +/* 802406A8 0023D608 EC 44 08 FA */ fmadds f2, f4, f3, f1 +/* 802406AC 0023D60C FC 20 12 10 */ fabs f1, f2 +/* 802406B0 0023D610 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802406B4 0023D614 40 81 00 14 */ ble lbl_802406C8 +/* 802406B8 0023D618 C0 02 B7 E0 */ lfs f0, lbl_805AD500@sda21(r2) +/* 802406BC 0023D61C C0 22 B7 D4 */ lfs f1, lbl_805AD4F4@sda21(r2) +/* 802406C0 0023D620 FC 02 00 6E */ fsel f0, f2, f1, f0 +/* 802406C4 0023D624 EC 41 00 32 */ fmuls f2, f1, f0 +lbl_802406C8: +/* 802406C8 0023D628 FC 20 12 10 */ fabs f1, f2 +/* 802406CC 0023D62C C0 02 B7 F4 */ lfs f0, lbl_805AD514@sda21(r2) +/* 802406D0 0023D630 FC 20 08 18 */ frsp f1, f1 +/* 802406D4 0023D634 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802406D8 0023D638 40 80 00 80 */ bge lbl_80240758 +/* 802406DC 0023D63C D0 A1 00 24 */ stfs f5, 0x24(r1) +/* 802406E0 0023D640 38 61 01 00 */ addi r3, r1, 0x100 +/* 802406E4 0023D644 38 81 01 E4 */ addi r4, r1, 0x1e4 +/* 802406E8 0023D648 48 0D 36 E9 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 802406EC 0023D64C 7C 7D 1B 78 */ mr r29, r3 +/* 802406F0 0023D650 38 61 01 0C */ addi r3, r1, 0x10c +/* 802406F4 0023D654 38 81 02 30 */ addi r4, r1, 0x230 +/* 802406F8 0023D658 48 0D 36 D9 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 802406FC 0023D65C 7C 64 1B 78 */ mr r4, r3 +/* 80240700 0023D660 7F A5 EB 78 */ mr r5, r29 +/* 80240704 0023D664 38 61 01 18 */ addi r3, r1, 0x118 +/* 80240708 0023D668 38 C1 00 24 */ addi r6, r1, 0x24 +/* 8024070C 0023D66C 48 0D 0F 89 */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle +/* 80240710 0023D670 C0 01 01 18 */ lfs f0, 0x118(r1) +/* 80240714 0023D674 38 61 00 F4 */ addi r3, r1, 0xf4 +/* 80240718 0023D678 80 E1 01 1C */ lwz r7, 0x11c(r1) +/* 8024071C 0023D67C 38 81 01 F0 */ addi r4, r1, 0x1f0 +/* 80240720 0023D680 80 C1 01 20 */ lwz r6, 0x120(r1) +/* 80240724 0023D684 38 A1 02 30 */ addi r5, r1, 0x230 +/* 80240728 0023D688 80 01 01 24 */ lwz r0, 0x124(r1) +/* 8024072C 0023D68C D0 01 01 F0 */ stfs f0, 0x1f0(r1) +/* 80240730 0023D690 90 E1 01 F4 */ stw r7, 0x1f4(r1) +/* 80240734 0023D694 90 C1 01 F8 */ stw r6, 0x1f8(r1) +/* 80240738 0023D698 90 01 01 FC */ stw r0, 0x1fc(r1) +/* 8024073C 0023D69C 48 0D 0B 29 */ bl Transform__11CQuaternionCFRC9CVector3f +/* 80240740 0023D6A0 C0 41 00 F4 */ lfs f2, 0xf4(r1) +/* 80240744 0023D6A4 C0 21 00 F8 */ lfs f1, 0xf8(r1) +/* 80240748 0023D6A8 C0 01 00 FC */ lfs f0, 0xfc(r1) +/* 8024074C 0023D6AC D0 41 01 D8 */ stfs f2, 0x1d8(r1) +/* 80240750 0023D6B0 D0 21 01 DC */ stfs f1, 0x1dc(r1) +/* 80240754 0023D6B4 D0 01 01 E0 */ stfs f0, 0x1e0(r1) +lbl_80240758: +/* 80240758 0023D6B8 C0 21 02 28 */ lfs f1, 0x228(r1) +/* 8024075C 0023D6BC C0 01 01 DC */ lfs f0, 0x1dc(r1) +/* 80240760 0023D6C0 C0 41 02 24 */ lfs f2, 0x224(r1) +/* 80240764 0023D6C4 EC 01 00 32 */ fmuls f0, f1, f0 +/* 80240768 0023D6C8 C0 21 01 D8 */ lfs f1, 0x1d8(r1) +/* 8024076C 0023D6CC C0 81 02 2C */ lfs f4, 0x22c(r1) +/* 80240770 0023D6D0 C0 61 01 E0 */ lfs f3, 0x1e0(r1) +/* 80240774 0023D6D4 EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 80240778 0023D6D8 C8 02 B7 D8 */ lfd f0, lbl_805AD4F8@sda21(r2) +/* 8024077C 0023D6DC EC 24 08 FA */ fmadds f1, f4, f3, f1 +/* 80240780 0023D6E0 FC 40 0A 10 */ fabs f2, f1 +/* 80240784 0023D6E4 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80240788 0023D6E8 40 81 00 14 */ ble lbl_8024079C +/* 8024078C 0023D6EC C0 02 B7 E0 */ lfs f0, lbl_805AD500@sda21(r2) +/* 80240790 0023D6F0 C0 42 B7 D4 */ lfs f2, lbl_805AD4F4@sda21(r2) +/* 80240794 0023D6F4 FC 01 00 AE */ fsel f0, f1, f2, f0 +/* 80240798 0023D6F8 EC 22 00 32 */ fmuls f1, f2, f0 +lbl_8024079C: +/* 8024079C 0023D6FC 48 15 44 91 */ bl acos +/* 802407A0 0023D700 80 1C 01 88 */ lwz r0, 0x188(r28) +/* 802407A4 0023D704 FE 40 08 18 */ frsp f18, f1 +/* 802407A8 0023D708 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b +/* 802407AC 0023D70C 41 82 00 28 */ beq lbl_802407D4 +/* 802407B0 0023D710 FE 60 92 10 */ fabs f19, f18 +/* 802407B4 0023D714 7F 83 E3 78 */ mr r3, r28 +/* 802407B8 0023D718 38 9C 02 20 */ addi r4, r28, 0x220 +/* 802407BC 0023D71C 48 00 08 19 */ bl GetInVar__20CScriptSpindleCameraCFRC16SSpindleProperty +/* 802407C0 0023D720 38 7C 02 20 */ addi r3, r28, 0x220 +/* 802407C4 0023D724 48 00 0E 15 */ bl GetValue__16SSpindlePropertyCFf +/* 802407C8 0023D728 FC 00 98 18 */ frsp f0, f19 +/* 802407CC 0023D72C FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 802407D0 0023D730 41 80 00 1C */ blt lbl_802407EC +lbl_802407D4: +/* 802407D4 0023D734 80 1C 01 88 */ lwz r0, 0x188(r28) +/* 802407D8 0023D738 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c +/* 802407DC 0023D73C 40 82 00 10 */ bne lbl_802407EC +/* 802407E0 0023D740 88 1C 03 3C */ lbz r0, 0x33c(r28) +/* 802407E4 0023D744 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 802407E8 0023D748 41 82 00 1C */ beq lbl_80240804 +lbl_802407EC: +/* 802407EC 0023D74C C0 41 01 E4 */ lfs f2, 0x1e4(r1) +/* 802407F0 0023D750 C0 21 01 E8 */ lfs f1, 0x1e8(r1) +/* 802407F4 0023D754 C0 01 01 EC */ lfs f0, 0x1ec(r1) +/* 802407F8 0023D758 D0 41 01 D8 */ stfs f2, 0x1d8(r1) +/* 802407FC 0023D75C D0 21 01 DC */ stfs f1, 0x1dc(r1) +/* 80240800 0023D760 D0 01 01 E0 */ stfs f0, 0x1e0(r1) +lbl_80240804: +/* 80240804 0023D764 7F 83 E3 78 */ mr r3, r28 +/* 80240808 0023D768 38 9C 02 50 */ addi r4, r28, 0x250 +/* 8024080C 0023D76C 48 00 07 C9 */ bl GetInVar__20CScriptSpindleCameraCFRC16SSpindleProperty +/* 80240810 0023D770 38 7C 02 50 */ addi r3, r28, 0x250 +/* 80240814 0023D774 48 00 0D C5 */ bl GetValue__16SSpindlePropertyCFf +/* 80240818 0023D778 FC 00 92 10 */ fabs f0, f18 +/* 8024081C 0023D77C FC 00 00 18 */ frsp f0, f0 +/* 80240820 0023D780 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80240824 0023D784 40 81 01 9C */ ble lbl_802409C0 +/* 80240828 0023D788 C0 5C 03 28 */ lfs f2, 0x328(r28) +/* 8024082C 0023D78C C0 02 B7 F8 */ lfs f0, lbl_805AD518@sda21(r2) +/* 80240830 0023D790 EC 42 B0 2A */ fadds f2, f2, f22 +/* 80240834 0023D794 D0 5C 03 28 */ stfs f2, 0x328(r28) +/* 80240838 0023D798 C0 5C 03 28 */ lfs f2, 0x328(r28) +/* 8024083C 0023D79C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80240840 0023D7A0 40 80 00 E0 */ bge lbl_80240920 +/* 80240844 0023D7A4 EC 82 00 24 */ fdivs f4, f2, f0 +/* 80240848 0023D7A8 C8 02 B7 D8 */ lfd f0, lbl_805AD4F8@sda21(r2) +/* 8024084C 0023D7AC FC 40 22 10 */ fabs f2, f4 +/* 80240850 0023D7B0 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80240854 0023D7B4 40 81 00 14 */ ble lbl_80240868 +/* 80240858 0023D7B8 C0 02 B7 E0 */ lfs f0, lbl_805AD500@sda21(r2) +/* 8024085C 0023D7BC C0 42 B7 D4 */ lfs f2, lbl_805AD4F4@sda21(r2) +/* 80240860 0023D7C0 FC 04 00 AE */ fsel f0, f4, f2, f0 +/* 80240864 0023D7C4 EC 82 00 32 */ fmuls f4, f2, f0 +lbl_80240868: +/* 80240868 0023D7C8 EC 01 90 28 */ fsubs f0, f1, f18 +/* 8024086C 0023D7CC C0 C1 02 28 */ lfs f6, 0x228(r1) +/* 80240870 0023D7D0 C1 41 01 D8 */ lfs f10, 0x1d8(r1) +/* 80240874 0023D7D4 C0 E1 02 2C */ lfs f7, 0x22c(r1) +/* 80240878 0023D7D8 C1 01 01 DC */ lfs f8, 0x1dc(r1) +/* 8024087C 0023D7DC FC 00 02 10 */ fabs f0, f0 +/* 80240880 0023D7E0 C1 21 01 E0 */ lfs f9, 0x1e0(r1) +/* 80240884 0023D7E4 EC 2A 01 B2 */ fmuls f1, f10, f6 +/* 80240888 0023D7E8 C1 61 02 24 */ lfs f11, 0x224(r1) +/* 8024088C 0023D7EC EC 68 01 F2 */ fmuls f3, f8, f7 +/* 80240890 0023D7F0 FC A0 00 18 */ frsp f5, f0 +/* 80240894 0023D7F4 EC 49 02 F2 */ fmuls f2, f9, f11 +/* 80240898 0023D7F8 C0 02 B7 D0 */ lfs f0, lbl_805AD4F0@sda21(r2) +/* 8024089C 0023D7FC EC 2B 0A 38 */ fmsubs f1, f11, f8, f1 +/* 802408A0 0023D800 EC 66 1A 78 */ fmsubs f3, f6, f9, f3 +/* 802408A4 0023D804 EC 47 12 B8 */ fmsubs f2, f7, f10, f2 +/* 802408A8 0023D808 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802408AC 0023D80C D0 21 00 F0 */ stfs f1, 0xf0(r1) +/* 802408B0 0023D810 D0 61 00 E8 */ stfs f3, 0xe8(r1) +/* 802408B4 0023D814 D0 41 00 EC */ stfs f2, 0xec(r1) +/* 802408B8 0023D818 40 81 00 08 */ ble lbl_802408C0 +/* 802408BC 0023D81C FC A0 28 50 */ fneg f5, f5 +lbl_802408C0: +/* 802408C0 0023D820 EC 05 01 32 */ fmuls f0, f5, f4 +/* 802408C4 0023D824 38 61 00 D8 */ addi r3, r1, 0xd8 +/* 802408C8 0023D828 38 81 00 20 */ addi r4, r1, 0x20 +/* 802408CC 0023D82C D0 01 00 20 */ stfs f0, 0x20(r1) +/* 802408D0 0023D830 48 0D 08 29 */ bl ZRotation__11CQuaternionFRC9CRelAngle +/* 802408D4 0023D834 C0 01 00 D8 */ lfs f0, 0xd8(r1) +/* 802408D8 0023D838 38 61 00 CC */ addi r3, r1, 0xcc +/* 802408DC 0023D83C 80 E1 00 DC */ lwz r7, 0xdc(r1) +/* 802408E0 0023D840 38 81 01 F0 */ addi r4, r1, 0x1f0 +/* 802408E4 0023D844 80 C1 00 E0 */ lwz r6, 0xe0(r1) +/* 802408E8 0023D848 38 A1 01 D8 */ addi r5, r1, 0x1d8 +/* 802408EC 0023D84C 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 802408F0 0023D850 D0 01 01 F0 */ stfs f0, 0x1f0(r1) +/* 802408F4 0023D854 90 E1 01 F4 */ stw r7, 0x1f4(r1) +/* 802408F8 0023D858 90 C1 01 F8 */ stw r6, 0x1f8(r1) +/* 802408FC 0023D85C 90 01 01 FC */ stw r0, 0x1fc(r1) +/* 80240900 0023D860 48 0D 09 65 */ bl Transform__11CQuaternionCFRC9CVector3f +/* 80240904 0023D864 C0 41 00 CC */ lfs f2, 0xcc(r1) +/* 80240908 0023D868 C0 21 00 D0 */ lfs f1, 0xd0(r1) +/* 8024090C 0023D86C C0 01 00 D4 */ lfs f0, 0xd4(r1) +/* 80240910 0023D870 D0 41 01 D8 */ stfs f2, 0x1d8(r1) +/* 80240914 0023D874 D0 21 01 DC */ stfs f1, 0x1dc(r1) +/* 80240918 0023D878 D0 01 01 E0 */ stfs f0, 0x1e0(r1) +/* 8024091C 0023D87C 48 00 00 AC */ b lbl_802409C8 +lbl_80240920: +/* 80240920 0023D880 C0 02 B7 D0 */ lfs f0, lbl_805AD4F0@sda21(r2) +/* 80240924 0023D884 FC 19 00 40 */ fcmpo cr0, f25, f0 +/* 80240928 0023D888 40 81 00 38 */ ble lbl_80240960 +/* 8024092C 0023D88C D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 80240930 0023D890 38 61 00 BC */ addi r3, r1, 0xbc +/* 80240934 0023D894 38 81 00 1C */ addi r4, r1, 0x1c +/* 80240938 0023D898 48 0D 07 C1 */ bl ZRotation__11CQuaternionFRC9CRelAngle +/* 8024093C 0023D89C C0 01 00 BC */ lfs f0, 0xbc(r1) +/* 80240940 0023D8A0 80 81 00 C0 */ lwz r4, 0xc0(r1) +/* 80240944 0023D8A4 80 61 00 C4 */ lwz r3, 0xc4(r1) +/* 80240948 0023D8A8 80 01 00 C8 */ lwz r0, 0xc8(r1) +/* 8024094C 0023D8AC D0 01 01 F0 */ stfs f0, 0x1f0(r1) +/* 80240950 0023D8B0 90 81 01 F4 */ stw r4, 0x1f4(r1) +/* 80240954 0023D8B4 90 61 01 F8 */ stw r3, 0x1f8(r1) +/* 80240958 0023D8B8 90 01 01 FC */ stw r0, 0x1fc(r1) +/* 8024095C 0023D8BC 48 00 00 38 */ b lbl_80240994 +lbl_80240960: +/* 80240960 0023D8C0 FC 00 08 50 */ fneg f0, f1 +/* 80240964 0023D8C4 38 61 00 AC */ addi r3, r1, 0xac +/* 80240968 0023D8C8 38 81 00 18 */ addi r4, r1, 0x18 +/* 8024096C 0023D8CC D0 01 00 18 */ stfs f0, 0x18(r1) +/* 80240970 0023D8D0 48 0D 07 89 */ bl ZRotation__11CQuaternionFRC9CRelAngle +/* 80240974 0023D8D4 C0 01 00 AC */ lfs f0, 0xac(r1) +/* 80240978 0023D8D8 80 81 00 B0 */ lwz r4, 0xb0(r1) +/* 8024097C 0023D8DC 80 61 00 B4 */ lwz r3, 0xb4(r1) +/* 80240980 0023D8E0 80 01 00 B8 */ lwz r0, 0xb8(r1) +/* 80240984 0023D8E4 D0 01 01 F0 */ stfs f0, 0x1f0(r1) +/* 80240988 0023D8E8 90 81 01 F4 */ stw r4, 0x1f4(r1) +/* 8024098C 0023D8EC 90 61 01 F8 */ stw r3, 0x1f8(r1) +/* 80240990 0023D8F0 90 01 01 FC */ stw r0, 0x1fc(r1) +lbl_80240994: +/* 80240994 0023D8F4 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 80240998 0023D8F8 38 81 01 F0 */ addi r4, r1, 0x1f0 +/* 8024099C 0023D8FC 38 A1 02 24 */ addi r5, r1, 0x224 +/* 802409A0 0023D900 48 0D 08 C5 */ bl Transform__11CQuaternionCFRC9CVector3f +/* 802409A4 0023D904 C0 41 00 A0 */ lfs f2, 0xa0(r1) +/* 802409A8 0023D908 C0 21 00 A4 */ lfs f1, 0xa4(r1) +/* 802409AC 0023D90C C0 01 00 A8 */ lfs f0, 0xa8(r1) +/* 802409B0 0023D910 D0 41 01 D8 */ stfs f2, 0x1d8(r1) +/* 802409B4 0023D914 D0 21 01 DC */ stfs f1, 0x1dc(r1) +/* 802409B8 0023D918 D0 01 01 E0 */ stfs f0, 0x1e0(r1) +/* 802409BC 0023D91C 48 00 00 0C */ b lbl_802409C8 +lbl_802409C0: +/* 802409C0 0023D920 C0 02 B7 D0 */ lfs f0, lbl_805AD4F0@sda21(r2) +/* 802409C4 0023D924 D0 1C 03 28 */ stfs f0, 0x328(r28) +lbl_802409C8: +/* 802409C8 0023D928 80 1C 01 88 */ lwz r0, 0x188(r28) +/* 802409CC 0023D92C 54 00 06 B5 */ rlwinm. r0, r0, 0, 0x1a, 0x1a +/* 802409D0 0023D930 41 82 01 68 */ beq lbl_80240B38 +/* 802409D4 0023D934 C0 7F 00 58 */ lfs f3, 0x58(r31) +/* 802409D8 0023D938 38 61 01 C0 */ addi r3, r1, 0x1c0 +/* 802409DC 0023D93C C0 5F 00 48 */ lfs f2, 0x48(r31) +/* 802409E0 0023D940 C0 3F 00 38 */ lfs f1, 0x38(r31) +/* 802409E4 0023D944 C0 02 B7 D0 */ lfs f0, lbl_805AD4F0@sda21(r2) +/* 802409E8 0023D948 D0 61 01 C8 */ stfs f3, 0x1c8(r1) +/* 802409EC 0023D94C D0 21 01 C0 */ stfs f1, 0x1c0(r1) +/* 802409F0 0023D950 D0 41 01 C4 */ stfs f2, 0x1c4(r1) +/* 802409F4 0023D954 D0 01 01 C8 */ stfs f0, 0x1c8(r1) +/* 802409F8 0023D958 48 0D 3D 01 */ bl CanBeNormalized__9CVector3fCFv +/* 802409FC 0023D95C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80240A00 0023D960 41 82 01 38 */ beq lbl_80240B38 +/* 80240A04 0023D964 38 61 01 C0 */ addi r3, r1, 0x1c0 +/* 80240A08 0023D968 48 0D 3E F1 */ bl Normalize__9CVector3fFv +/* 80240A0C 0023D96C C0 21 01 C4 */ lfs f1, 0x1c4(r1) +/* 80240A10 0023D970 C0 01 01 DC */ lfs f0, 0x1dc(r1) +/* 80240A14 0023D974 C0 41 01 C0 */ lfs f2, 0x1c0(r1) +/* 80240A18 0023D978 EC 01 00 32 */ fmuls f0, f1, f0 +/* 80240A1C 0023D97C C0 21 01 D8 */ lfs f1, 0x1d8(r1) +/* 80240A20 0023D980 C0 81 01 C8 */ lfs f4, 0x1c8(r1) +/* 80240A24 0023D984 C0 61 01 E0 */ lfs f3, 0x1e0(r1) +/* 80240A28 0023D988 EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 80240A2C 0023D98C C8 02 B7 D8 */ lfd f0, lbl_805AD4F8@sda21(r2) +/* 80240A30 0023D990 EC 24 08 FA */ fmadds f1, f4, f3, f1 +/* 80240A34 0023D994 FC 40 0A 10 */ fabs f2, f1 +/* 80240A38 0023D998 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80240A3C 0023D99C 40 81 00 14 */ ble lbl_80240A50 +/* 80240A40 0023D9A0 C0 02 B7 E0 */ lfs f0, lbl_805AD500@sda21(r2) +/* 80240A44 0023D9A4 C0 42 B7 D4 */ lfs f2, lbl_805AD4F4@sda21(r2) +/* 80240A48 0023D9A8 FC 01 00 AE */ fsel f0, f1, f2, f0 +/* 80240A4C 0023D9AC EC 22 00 32 */ fmuls f1, f2, f0 +lbl_80240A50: +/* 80240A50 0023D9B0 48 15 41 DD */ bl acos +/* 80240A54 0023D9B4 FC 00 08 18 */ frsp f0, f1 +/* 80240A58 0023D9B8 7F 83 E3 78 */ mr r3, r28 +/* 80240A5C 0023D9BC 38 9C 02 B0 */ addi r4, r28, 0x2b0 +/* 80240A60 0023D9C0 FC 00 02 10 */ fabs f0, f0 +/* 80240A64 0023D9C4 FE 40 00 18 */ frsp f18, f0 +/* 80240A68 0023D9C8 48 00 05 6D */ bl GetInVar__20CScriptSpindleCameraCFRC16SSpindleProperty +/* 80240A6C 0023D9CC 38 7C 02 B0 */ addi r3, r28, 0x2b0 +/* 80240A70 0023D9D0 48 00 0B 69 */ bl GetValue__16SSpindlePropertyCFf +/* 80240A74 0023D9D4 FC 00 92 10 */ fabs f0, f18 +/* 80240A78 0023D9D8 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80240A7C 0023D9DC 40 81 00 14 */ ble lbl_80240A90 +/* 80240A80 0023D9E0 C0 42 B7 E0 */ lfs f2, lbl_805AD500@sda21(r2) +/* 80240A84 0023D9E4 C0 02 B7 D4 */ lfs f0, lbl_805AD4F4@sda21(r2) +/* 80240A88 0023D9E8 FC 12 10 2E */ fsel f0, f18, f0, f2 +/* 80240A8C 0023D9EC EE 41 00 32 */ fmuls f18, f1, f0 +lbl_80240A90: +/* 80240A90 0023D9F0 C0 81 01 C4 */ lfs f4, 0x1c4(r1) +/* 80240A94 0023D9F4 FD 00 90 90 */ fmr f8, f18 +/* 80240A98 0023D9F8 C0 E1 01 D8 */ lfs f7, 0x1d8(r1) +/* 80240A9C 0023D9FC C0 A1 01 C8 */ lfs f5, 0x1c8(r1) +/* 80240AA0 0023DA00 C0 21 01 DC */ lfs f1, 0x1dc(r1) +/* 80240AA4 0023DA04 EC 07 01 32 */ fmuls f0, f7, f4 +/* 80240AA8 0023DA08 C0 41 01 C0 */ lfs f2, 0x1c0(r1) +/* 80240AAC 0023DA0C C0 C1 01 E0 */ lfs f6, 0x1e0(r1) +/* 80240AB0 0023DA10 EC 61 01 72 */ fmuls f3, f1, f5 +/* 80240AB4 0023DA14 EC 22 00 78 */ fmsubs f1, f2, f1, f0 +/* 80240AB8 0023DA18 C0 02 B7 D0 */ lfs f0, lbl_805AD4F0@sda21(r2) +/* 80240ABC 0023DA1C EC 46 00 B2 */ fmuls f2, f6, f2 +/* 80240AC0 0023DA20 EC 64 19 B8 */ fmsubs f3, f4, f6, f3 +/* 80240AC4 0023DA24 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80240AC8 0023DA28 D0 21 00 9C */ stfs f1, 0x9c(r1) +/* 80240ACC 0023DA2C EC 05 11 F8 */ fmsubs f0, f5, f7, f2 +/* 80240AD0 0023DA30 D0 61 00 94 */ stfs f3, 0x94(r1) +/* 80240AD4 0023DA34 D0 01 00 98 */ stfs f0, 0x98(r1) +/* 80240AD8 0023DA38 40 80 00 08 */ bge lbl_80240AE0 +/* 80240ADC 0023DA3C FD 00 90 50 */ fneg f8, f18 +lbl_80240AE0: +/* 80240AE0 0023DA40 D1 01 00 14 */ stfs f8, 0x14(r1) +/* 80240AE4 0023DA44 38 61 00 84 */ addi r3, r1, 0x84 +/* 80240AE8 0023DA48 38 81 00 14 */ addi r4, r1, 0x14 +/* 80240AEC 0023DA4C 48 0D 06 0D */ bl ZRotation__11CQuaternionFRC9CRelAngle +/* 80240AF0 0023DA50 C0 01 00 84 */ lfs f0, 0x84(r1) +/* 80240AF4 0023DA54 38 61 00 78 */ addi r3, r1, 0x78 +/* 80240AF8 0023DA58 80 E1 00 88 */ lwz r7, 0x88(r1) +/* 80240AFC 0023DA5C 38 81 01 F0 */ addi r4, r1, 0x1f0 +/* 80240B00 0023DA60 80 C1 00 8C */ lwz r6, 0x8c(r1) +/* 80240B04 0023DA64 38 A1 01 C0 */ addi r5, r1, 0x1c0 +/* 80240B08 0023DA68 80 01 00 90 */ lwz r0, 0x90(r1) +/* 80240B0C 0023DA6C D0 01 01 F0 */ stfs f0, 0x1f0(r1) +/* 80240B10 0023DA70 90 E1 01 F4 */ stw r7, 0x1f4(r1) +/* 80240B14 0023DA74 90 C1 01 F8 */ stw r6, 0x1f8(r1) +/* 80240B18 0023DA78 90 01 01 FC */ stw r0, 0x1fc(r1) +/* 80240B1C 0023DA7C 48 0D 07 49 */ bl Transform__11CQuaternionCFRC9CVector3f +/* 80240B20 0023DA80 C0 41 00 78 */ lfs f2, 0x78(r1) +/* 80240B24 0023DA84 C0 21 00 7C */ lfs f1, 0x7c(r1) +/* 80240B28 0023DA88 C0 01 00 80 */ lfs f0, 0x80(r1) +/* 80240B2C 0023DA8C D0 41 01 D8 */ stfs f2, 0x1d8(r1) +/* 80240B30 0023DA90 D0 21 01 DC */ stfs f1, 0x1dc(r1) +/* 80240B34 0023DA94 D0 01 01 E0 */ stfs f0, 0x1e0(r1) +lbl_80240B38: +/* 80240B38 0023DA98 C0 81 00 34 */ lfs f4, 0x34(r1) +/* 80240B3C 0023DA9C C0 01 01 D8 */ lfs f0, 0x1d8(r1) +/* 80240B40 0023DAA0 C0 21 01 DC */ lfs f1, 0x1dc(r1) +/* 80240B44 0023DAA4 EC 60 01 32 */ fmuls f3, f0, f4 +/* 80240B48 0023DAA8 C0 01 01 E0 */ lfs f0, 0x1e0(r1) +/* 80240B4C 0023DAAC EC 41 01 32 */ fmuls f2, f1, f4 +/* 80240B50 0023DAB0 EC 20 01 32 */ fmuls f1, f0, f4 +/* 80240B54 0023DAB4 EC 1D 18 2A */ fadds f0, f29, f3 +/* 80240B58 0023DAB8 D0 61 01 D8 */ stfs f3, 0x1d8(r1) +/* 80240B5C 0023DABC EC 9E 10 2A */ fadds f4, f30, f2 +/* 80240B60 0023DAC0 EC 7F 08 2A */ fadds f3, f31, f1 +/* 80240B64 0023DAC4 D0 41 01 DC */ stfs f2, 0x1dc(r1) +/* 80240B68 0023DAC8 D0 21 01 E0 */ stfs f1, 0x1e0(r1) +/* 80240B6C 0023DACC D0 01 02 00 */ stfs f0, 0x200(r1) +/* 80240B70 0023DAD0 D0 81 02 04 */ stfs f4, 0x204(r1) +/* 80240B74 0023DAD4 D0 61 02 08 */ stfs f3, 0x208(r1) +/* 80240B78 0023DAD8 80 1C 01 88 */ lwz r0, 0x188(r28) +/* 80240B7C 0023DADC 54 00 06 31 */ rlwinm. r0, r0, 0, 0x18, 0x18 +/* 80240B80 0023DAE0 41 82 00 24 */ beq lbl_80240BA4 +/* 80240B84 0023DAE4 7F 83 E3 78 */ mr r3, r28 +/* 80240B88 0023DAE8 38 9C 02 98 */ addi r4, r28, 0x298 +/* 80240B8C 0023DAEC 48 00 04 49 */ bl GetInVar__20CScriptSpindleCameraCFRC16SSpindleProperty +/* 80240B90 0023DAF0 38 7C 02 98 */ addi r3, r28, 0x298 +/* 80240B94 0023DAF4 48 00 0A 45 */ bl GetValue__16SSpindlePropertyCFf +/* 80240B98 0023DAF8 EC 1A 08 2A */ fadds f0, f26, f1 +/* 80240B9C 0023DAFC D0 01 02 08 */ stfs f0, 0x208(r1) +/* 80240BA0 0023DB00 48 00 00 20 */ b lbl_80240BC0 +lbl_80240BA4: +/* 80240BA4 0023DB04 7F 83 E3 78 */ mr r3, r28 +/* 80240BA8 0023DB08 38 9C 02 98 */ addi r4, r28, 0x298 +/* 80240BAC 0023DB0C 48 00 04 29 */ bl GetInVar__20CScriptSpindleCameraCFRC16SSpindleProperty +/* 80240BB0 0023DB10 38 7C 02 98 */ addi r3, r28, 0x298 +/* 80240BB4 0023DB14 48 00 0A 25 */ bl GetValue__16SSpindlePropertyCFf +/* 80240BB8 0023DB18 EC 1F 08 2A */ fadds f0, f31, f1 +/* 80240BBC 0023DB1C D0 01 02 08 */ stfs f0, 0x208(r1) +lbl_80240BC0: +/* 80240BC0 0023DB20 C0 01 02 08 */ lfs f0, 0x208(r1) +/* 80240BC4 0023DB24 38 7C 01 B8 */ addi r3, r28, 0x1b8 +/* 80240BC8 0023DB28 38 81 00 30 */ addi r4, r1, 0x30 +/* 80240BCC 0023DB2C 38 BC 01 BC */ addi r5, r28, 0x1bc +/* 80240BD0 0023DB30 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 80240BD4 0023DB34 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 80240BD8 0023DB38 4B DC B6 DD */ bl "Clamp__5CMathFRCfRCfRCf" +/* 80240BDC 0023DB3C C0 23 00 00 */ lfs f1, 0(r3) +/* 80240BE0 0023DB40 EC 01 F8 2A */ fadds f0, f1, f31 +/* 80240BE4 0023DB44 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 80240BE8 0023DB48 D0 01 02 08 */ stfs f0, 0x208(r1) +/* 80240BEC 0023DB4C 80 1C 01 88 */ lwz r0, 0x188(r28) +/* 80240BF0 0023DB50 54 00 05 AD */ rlwinm. r0, r0, 0, 0x16, 0x16 +/* 80240BF4 0023DB54 41 82 00 20 */ beq lbl_80240C14 +/* 80240BF8 0023DB58 7F 83 E3 78 */ mr r3, r28 +/* 80240BFC 0023DB5C 38 9C 02 80 */ addi r4, r28, 0x280 +/* 80240C00 0023DB60 48 00 03 D5 */ bl GetInVar__20CScriptSpindleCameraCFRC16SSpindleProperty +/* 80240C04 0023DB64 38 7C 02 80 */ addi r3, r28, 0x280 +/* 80240C08 0023DB68 48 00 09 D1 */ bl GetValue__16SSpindlePropertyCFf +/* 80240C0C 0023DB6C EE 5A 08 2A */ fadds f18, f26, f1 +/* 80240C10 0023DB70 48 00 00 1C */ b lbl_80240C2C +lbl_80240C14: +/* 80240C14 0023DB74 7F 83 E3 78 */ mr r3, r28 +/* 80240C18 0023DB78 38 9C 02 80 */ addi r4, r28, 0x280 +/* 80240C1C 0023DB7C 48 00 03 B9 */ bl GetInVar__20CScriptSpindleCameraCFRC16SSpindleProperty +/* 80240C20 0023DB80 38 7C 02 80 */ addi r3, r28, 0x280 +/* 80240C24 0023DB84 48 00 09 B5 */ bl GetValue__16SSpindlePropertyCFf +/* 80240C28 0023DB88 EE 5F 08 2A */ fadds f18, f31, f1 +lbl_80240C2C: +/* 80240C2C 0023DB8C C0 01 02 08 */ lfs f0, 0x208(r1) +/* 80240C30 0023DB90 FE 80 90 90 */ fmr f20, f18 +/* 80240C34 0023DB94 C0 21 02 04 */ lfs f1, 0x204(r1) +/* 80240C38 0023DB98 38 61 01 A8 */ addi r3, r1, 0x1a8 +/* 80240C3C 0023DB9C EC 52 00 28 */ fsubs f2, f18, f0 +/* 80240C40 0023DBA0 C0 01 02 00 */ lfs f0, 0x200(r1) +/* 80240C44 0023DBA4 EC 7C 08 28 */ fsubs f3, f28, f1 +/* 80240C48 0023DBA8 EC 3B 00 28 */ fsubs f1, f27, f0 +/* 80240C4C 0023DBAC C0 02 B7 D0 */ lfs f0, lbl_805AD4F0@sda21(r2) +/* 80240C50 0023DBB0 D0 41 01 B0 */ stfs f2, 0x1b0(r1) +/* 80240C54 0023DBB4 D0 21 01 B4 */ stfs f1, 0x1b4(r1) +/* 80240C58 0023DBB8 D0 61 01 B8 */ stfs f3, 0x1b8(r1) +/* 80240C5C 0023DBBC D0 41 01 BC */ stfs f2, 0x1bc(r1) +/* 80240C60 0023DBC0 D0 21 01 A8 */ stfs f1, 0x1a8(r1) +/* 80240C64 0023DBC4 D0 61 01 AC */ stfs f3, 0x1ac(r1) +/* 80240C68 0023DBC8 D0 01 01 B0 */ stfs f0, 0x1b0(r1) +/* 80240C6C 0023DBCC 48 0D 3A 8D */ bl CanBeNormalized__9CVector3fCFv +/* 80240C70 0023DBD0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80240C74 0023DBD4 41 82 01 C8 */ beq lbl_80240E3C +/* 80240C78 0023DBD8 38 61 01 A8 */ addi r3, r1, 0x1a8 +/* 80240C7C 0023DBDC 48 0D 3C 3D */ bl Magnitude__9CVector3fCFv +/* 80240C80 0023DBE0 FE 60 08 90 */ fmr f19, f1 +/* 80240C84 0023DBE4 38 61 01 A8 */ addi r3, r1, 0x1a8 +/* 80240C88 0023DBE8 48 0D 3C 71 */ bl Normalize__9CVector3fFv +/* 80240C8C 0023DBEC 7F 83 E3 78 */ mr r3, r28 +/* 80240C90 0023DBF0 38 9C 02 68 */ addi r4, r28, 0x268 +/* 80240C94 0023DBF4 48 00 03 41 */ bl GetInVar__20CScriptSpindleCameraCFRC16SSpindleProperty +/* 80240C98 0023DBF8 38 7C 02 68 */ addi r3, r28, 0x268 +/* 80240C9C 0023DBFC 48 00 09 3D */ bl GetValue__16SSpindlePropertyCFf +/* 80240CA0 0023DC00 C0 01 02 08 */ lfs f0, 0x208(r1) +/* 80240CA4 0023DC04 FE 80 08 50 */ fneg f20, f1 +/* 80240CA8 0023DC08 C0 21 02 04 */ lfs f1, 0x204(r1) +/* 80240CAC 0023DC0C 38 61 01 9C */ addi r3, r1, 0x19c +/* 80240CB0 0023DC10 EC 40 F8 28 */ fsubs f2, f0, f31 +/* 80240CB4 0023DC14 C0 01 02 00 */ lfs f0, 0x200(r1) +/* 80240CB8 0023DC18 EC 61 F0 28 */ fsubs f3, f1, f30 +/* 80240CBC 0023DC1C EC 20 E8 28 */ fsubs f1, f0, f29 +/* 80240CC0 0023DC20 C0 02 B7 D0 */ lfs f0, lbl_805AD4F0@sda21(r2) +/* 80240CC4 0023DC24 D0 41 01 A4 */ stfs f2, 0x1a4(r1) +/* 80240CC8 0023DC28 D0 21 01 9C */ stfs f1, 0x19c(r1) +/* 80240CCC 0023DC2C D0 61 01 A0 */ stfs f3, 0x1a0(r1) +/* 80240CD0 0023DC30 D0 01 01 A4 */ stfs f0, 0x1a4(r1) +/* 80240CD4 0023DC34 48 0D 3A 25 */ bl CanBeNormalized__9CVector3fCFv +/* 80240CD8 0023DC38 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80240CDC 0023DC3C 41 82 00 10 */ beq lbl_80240CEC +/* 80240CE0 0023DC40 38 61 01 9C */ addi r3, r1, 0x19c +/* 80240CE4 0023DC44 48 0D 3C 15 */ bl Normalize__9CVector3fFv +/* 80240CE8 0023DC48 48 00 00 18 */ b lbl_80240D00 +lbl_80240CEC: +/* 80240CEC 0023DC4C C0 22 B7 D0 */ lfs f1, lbl_805AD4F0@sda21(r2) +/* 80240CF0 0023DC50 C0 02 B7 D4 */ lfs f0, lbl_805AD4F4@sda21(r2) +/* 80240CF4 0023DC54 D0 21 01 9C */ stfs f1, 0x19c(r1) +/* 80240CF8 0023DC58 D0 01 01 A0 */ stfs f0, 0x1a0(r1) +/* 80240CFC 0023DC5C D0 21 01 A4 */ stfs f1, 0x1a4(r1) +lbl_80240D00: +/* 80240D00 0023DC60 C0 C1 01 A0 */ lfs f6, 0x1a0(r1) +/* 80240D04 0023DC64 C0 81 02 24 */ lfs f4, 0x224(r1) +/* 80240D08 0023DC68 C1 01 01 A4 */ lfs f8, 0x1a4(r1) +/* 80240D0C 0023DC6C C0 E1 02 28 */ lfs f7, 0x228(r1) +/* 80240D10 0023DC70 EC 04 01 B2 */ fmuls f0, f4, f6 +/* 80240D14 0023DC74 C0 A1 01 9C */ lfs f5, 0x19c(r1) +/* 80240D18 0023DC78 C1 21 02 2C */ lfs f9, 0x22c(r1) +/* 80240D1C 0023DC7C EC 67 02 32 */ fmuls f3, f7, f8 +/* 80240D20 0023DC80 EC 25 01 F8 */ fmsubs f1, f5, f7, f0 +/* 80240D24 0023DC84 C0 02 B7 D0 */ lfs f0, lbl_805AD4F0@sda21(r2) +/* 80240D28 0023DC88 EC 49 01 72 */ fmuls f2, f9, f5 +/* 80240D2C 0023DC8C EC 66 1A 78 */ fmsubs f3, f6, f9, f3 +/* 80240D30 0023DC90 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80240D34 0023DC94 D0 21 00 74 */ stfs f1, 0x74(r1) +/* 80240D38 0023DC98 EC 08 11 38 */ fmsubs f0, f8, f4, f2 +/* 80240D3C 0023DC9C D0 61 00 6C */ stfs f3, 0x6c(r1) +/* 80240D40 0023DCA0 D0 01 00 70 */ stfs f0, 0x70(r1) +/* 80240D44 0023DCA4 4C 41 13 82 */ cror 2, 1, 2 +/* 80240D48 0023DCA8 40 82 00 08 */ bne lbl_80240D50 +/* 80240D4C 0023DCAC FE 80 A0 50 */ fneg f20, f20 +lbl_80240D50: +/* 80240D50 0023DCB0 80 1C 01 88 */ lwz r0, 0x188(r28) +/* 80240D54 0023DCB4 54 00 04 E7 */ rlwinm. r0, r0, 0, 0x13, 0x13 +/* 80240D58 0023DCB8 41 82 00 6C */ beq lbl_80240DC4 +/* 80240D5C 0023DCBC EC 27 01 B2 */ fmuls f1, f7, f6 +/* 80240D60 0023DCC0 C8 02 B7 D8 */ lfd f0, lbl_805AD4F8@sda21(r2) +/* 80240D64 0023DCC4 EC 24 09 7A */ fmadds f1, f4, f5, f1 +/* 80240D68 0023DCC8 EC 49 0A 3A */ fmadds f2, f9, f8, f1 +/* 80240D6C 0023DCCC FC 20 12 10 */ fabs f1, f2 +/* 80240D70 0023DCD0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80240D74 0023DCD4 40 81 00 14 */ ble lbl_80240D88 +/* 80240D78 0023DCD8 C0 02 B7 E0 */ lfs f0, lbl_805AD500@sda21(r2) +/* 80240D7C 0023DCDC C0 22 B7 D4 */ lfs f1, lbl_805AD4F4@sda21(r2) +/* 80240D80 0023DCE0 FC 02 00 6E */ fsel f0, f2, f1, f0 +/* 80240D84 0023DCE4 EC 41 00 32 */ fmuls f2, f1, f0 +lbl_80240D88: +/* 80240D88 0023DCE8 FC 00 12 10 */ fabs f0, f2 +/* 80240D8C 0023DCEC FC 20 00 18 */ frsp f1, f0 +/* 80240D90 0023DCF0 48 15 3E 9D */ bl acos +/* 80240D94 0023DCF4 FC 40 08 18 */ frsp f2, f1 +/* 80240D98 0023DCF8 C0 22 B7 FC */ lfs f1, lbl_805AD51C@sda21(r2) +/* 80240D9C 0023DCFC C8 02 B7 D8 */ lfd f0, lbl_805AD4F8@sda21(r2) +/* 80240DA0 0023DD00 EC 42 08 24 */ fdivs f2, f2, f1 +/* 80240DA4 0023DD04 FC 20 12 10 */ fabs f1, f2 +/* 80240DA8 0023DD08 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80240DAC 0023DD0C 40 81 00 14 */ ble lbl_80240DC0 +/* 80240DB0 0023DD10 C0 02 B7 E0 */ lfs f0, lbl_805AD500@sda21(r2) +/* 80240DB4 0023DD14 C0 22 B7 D4 */ lfs f1, lbl_805AD4F4@sda21(r2) +/* 80240DB8 0023DD18 FC 02 00 6E */ fsel f0, f2, f1, f0 +/* 80240DBC 0023DD1C EC 41 00 32 */ fmuls f2, f1, f0 +lbl_80240DC0: +/* 80240DC0 0023DD20 EE 94 00 B2 */ fmuls f20, f20, f2 +lbl_80240DC4: +/* 80240DC4 0023DD24 D2 81 00 10 */ stfs f20, 0x10(r1) +/* 80240DC8 0023DD28 38 61 00 5C */ addi r3, r1, 0x5c +/* 80240DCC 0023DD2C 38 81 00 10 */ addi r4, r1, 0x10 +/* 80240DD0 0023DD30 48 0D 03 29 */ bl ZRotation__11CQuaternionFRC9CRelAngle +/* 80240DD4 0023DD34 C0 61 00 5C */ lfs f3, 0x5c(r1) +/* 80240DD8 0023DD38 38 61 00 50 */ addi r3, r1, 0x50 +/* 80240DDC 0023DD3C C0 41 00 60 */ lfs f2, 0x60(r1) +/* 80240DE0 0023DD40 38 81 01 8C */ addi r4, r1, 0x18c +/* 80240DE4 0023DD44 C0 21 00 64 */ lfs f1, 0x64(r1) +/* 80240DE8 0023DD48 38 A1 01 A8 */ addi r5, r1, 0x1a8 +/* 80240DEC 0023DD4C C0 01 00 68 */ lfs f0, 0x68(r1) +/* 80240DF0 0023DD50 D0 61 01 8C */ stfs f3, 0x18c(r1) +/* 80240DF4 0023DD54 D0 41 01 90 */ stfs f2, 0x190(r1) +/* 80240DF8 0023DD58 D0 21 01 94 */ stfs f1, 0x194(r1) +/* 80240DFC 0023DD5C D0 01 01 98 */ stfs f0, 0x198(r1) +/* 80240E00 0023DD60 48 0D 04 65 */ bl Transform__11CQuaternionCFRC9CVector3f +/* 80240E04 0023DD64 FC 20 A0 90 */ fmr f1, f20 +/* 80240E08 0023DD68 C2 A1 00 50 */ lfs f21, 0x50(r1) +/* 80240E0C 0023DD6C C2 C1 00 54 */ lfs f22, 0x54(r1) +/* 80240E10 0023DD70 48 15 35 E1 */ bl cos +/* 80240E14 0023DD74 FC 00 08 18 */ frsp f0, f1 +/* 80240E18 0023DD78 C0 61 02 00 */ lfs f3, 0x200(r1) +/* 80240E1C 0023DD7C C0 21 02 04 */ lfs f1, 0x204(r1) +/* 80240E20 0023DD80 FE 80 90 90 */ fmr f20, f18 +/* 80240E24 0023DD84 EC 40 05 72 */ fmuls f2, f0, f21 +/* 80240E28 0023DD88 EC 00 05 B2 */ fmuls f0, f0, f22 +/* 80240E2C 0023DD8C EC 53 00 B2 */ fmuls f2, f19, f2 +/* 80240E30 0023DD90 EC 13 00 32 */ fmuls f0, f19, f0 +/* 80240E34 0023DD94 EF 63 10 2A */ fadds f27, f3, f2 +/* 80240E38 0023DD98 EF 81 00 2A */ fadds f28, f1, f0 +lbl_80240E3C: +/* 80240E3C 0023DD9C C0 61 02 00 */ lfs f3, 0x200(r1) +/* 80240E40 0023DDA0 C0 81 02 04 */ lfs f4, 0x204(r1) +/* 80240E44 0023DDA4 C0 01 02 08 */ lfs f0, 0x208(r1) +/* 80240E48 0023DDA8 EC 5B 18 28 */ fsubs f2, f27, f3 +/* 80240E4C 0023DDAC EC 3C 20 28 */ fsubs f1, f28, f4 +/* 80240E50 0023DDB0 EC 14 00 28 */ fsubs f0, f20, f0 +/* 80240E54 0023DDB4 D0 41 01 B4 */ stfs f2, 0x1b4(r1) +/* 80240E58 0023DDB8 D0 21 01 B8 */ stfs f1, 0x1b8(r1) +/* 80240E5C 0023DDBC D0 01 01 BC */ stfs f0, 0x1bc(r1) +/* 80240E60 0023DDC0 80 1C 01 88 */ lwz r0, 0x188(r28) +/* 80240E64 0023DDC4 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 80240E68 0023DDC8 41 82 00 20 */ beq lbl_80240E88 +/* 80240E6C 0023DDCC EC 3D 18 28 */ fsubs f1, f29, f3 +/* 80240E70 0023DDD0 D0 01 01 BC */ stfs f0, 0x1bc(r1) +/* 80240E74 0023DDD4 EC 1E 20 28 */ fsubs f0, f30, f4 +/* 80240E78 0023DDD8 FF 60 E8 90 */ fmr f27, f29 +/* 80240E7C 0023DDDC FF 80 F0 90 */ fmr f28, f30 +/* 80240E80 0023DDE0 D0 21 01 B4 */ stfs f1, 0x1b4(r1) +/* 80240E84 0023DDE4 D0 01 01 B8 */ stfs f0, 0x1b8(r1) +lbl_80240E88: +/* 80240E88 0023DDE8 80 1C 01 88 */ lwz r0, 0x188(r28) +/* 80240E8C 0023DDEC 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e +/* 80240E90 0023DDF0 41 82 00 1C */ beq lbl_80240EAC +/* 80240E94 0023DDF4 EC 5B E8 28 */ fsubs f2, f27, f29 +/* 80240E98 0023DDF8 EC 3C F0 28 */ fsubs f1, f28, f30 +/* 80240E9C 0023DDFC EC 14 A0 28 */ fsubs f0, f20, f20 +/* 80240EA0 0023DE00 D0 41 01 B4 */ stfs f2, 0x1b4(r1) +/* 80240EA4 0023DE04 D0 21 01 B8 */ stfs f1, 0x1b8(r1) +/* 80240EA8 0023DE08 D0 01 01 BC */ stfs f0, 0x1bc(r1) +lbl_80240EAC: +/* 80240EAC 0023DE0C 38 61 01 B4 */ addi r3, r1, 0x1b4 +/* 80240EB0 0023DE10 48 0D 38 49 */ bl CanBeNormalized__9CVector3fCFv +/* 80240EB4 0023DE14 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80240EB8 0023DE18 41 82 00 8C */ beq lbl_80240F44 +/* 80240EBC 0023DE1C 38 61 00 38 */ addi r3, r1, 0x38 +/* 80240EC0 0023DE20 38 81 01 B4 */ addi r4, r1, 0x1b4 +/* 80240EC4 0023DE24 48 0D 39 8D */ bl AsNormalized__9CVector3fCFv +/* 80240EC8 0023DE28 C0 21 02 04 */ lfs f1, 0x204(r1) +/* 80240ECC 0023DE2C 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 80240ED0 0023DE30 C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 80240ED4 0023DE34 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 80240ED8 0023DE38 C0 61 02 08 */ lfs f3, 0x208(r1) +/* 80240EDC 0023DE3C 38 61 02 3C */ addi r3, r1, 0x23c +/* 80240EE0 0023DE40 EC 81 00 2A */ fadds f4, f1, f0 +/* 80240EE4 0023DE44 C0 41 00 40 */ lfs f2, 0x40(r1) +/* 80240EE8 0023DE48 C0 21 02 00 */ lfs f1, 0x200(r1) +/* 80240EEC 0023DE4C 38 81 02 00 */ addi r4, r1, 0x200 +/* 80240EF0 0023DE50 C0 01 00 38 */ lfs f0, 0x38(r1) +/* 80240EF4 0023DE54 EC 43 10 2A */ fadds f2, f3, f2 +/* 80240EF8 0023DE58 EC 01 00 2A */ fadds f0, f1, f0 +/* 80240EFC 0023DE5C D0 81 00 48 */ stfs f4, 0x48(r1) +/* 80240F00 0023DE60 38 A1 00 44 */ addi r5, r1, 0x44 +/* 80240F04 0023DE64 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 80240F08 0023DE68 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 80240F0C 0023DE6C 48 0D 2C 05 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 80240F10 0023DE70 38 7C 00 34 */ addi r3, r28, 0x34 +/* 80240F14 0023DE74 38 81 02 3C */ addi r4, r1, 0x23c +/* 80240F18 0023DE78 48 0D 1C 29 */ bl __as__12CTransform4fFRC12CTransform4f +/* 80240F1C 0023DE7C 88 1C 00 E4 */ lbz r0, 0xe4(r28) +/* 80240F20 0023DE80 38 60 00 01 */ li r3, 1 +/* 80240F24 0023DE84 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 80240F28 0023DE88 98 1C 00 E4 */ stb r0, 0xe4(r28) +/* 80240F2C 0023DE8C 88 1C 00 E4 */ lbz r0, 0xe4(r28) +/* 80240F30 0023DE90 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 80240F34 0023DE94 98 1C 00 E4 */ stb r0, 0xe4(r28) +/* 80240F38 0023DE98 88 1C 00 E4 */ lbz r0, 0xe4(r28) +/* 80240F3C 0023DE9C 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 80240F40 0023DEA0 98 1C 00 E4 */ stb r0, 0xe4(r28) +lbl_80240F44: +/* 80240F44 0023DEA4 E3 E1 03 58 */ psq_l f31, 856(r1), 0, qr0 +/* 80240F48 0023DEA8 CB E1 03 50 */ lfd f31, 0x350(r1) +/* 80240F4C 0023DEAC E3 C1 03 48 */ psq_l f30, 840(r1), 0, qr0 +/* 80240F50 0023DEB0 CB C1 03 40 */ lfd f30, 0x340(r1) +/* 80240F54 0023DEB4 E3 A1 03 38 */ psq_l f29, 824(r1), 0, qr0 +/* 80240F58 0023DEB8 CB A1 03 30 */ lfd f29, 0x330(r1) +/* 80240F5C 0023DEBC E3 81 03 28 */ psq_l f28, 808(r1), 0, qr0 +/* 80240F60 0023DEC0 CB 81 03 20 */ lfd f28, 0x320(r1) +/* 80240F64 0023DEC4 E3 61 03 18 */ psq_l f27, 792(r1), 0, qr0 +/* 80240F68 0023DEC8 CB 61 03 10 */ lfd f27, 0x310(r1) +/* 80240F6C 0023DECC E3 41 03 08 */ psq_l f26, 776(r1), 0, qr0 +/* 80240F70 0023DED0 CB 41 03 00 */ lfd f26, 0x300(r1) +/* 80240F74 0023DED4 E3 21 02 F8 */ psq_l f25, 760(r1), 0, qr0 +/* 80240F78 0023DED8 CB 21 02 F0 */ lfd f25, 0x2f0(r1) +/* 80240F7C 0023DEDC E3 01 02 E8 */ psq_l f24, 744(r1), 0, qr0 +/* 80240F80 0023DEE0 CB 01 02 E0 */ lfd f24, 0x2e0(r1) +/* 80240F84 0023DEE4 E2 E1 02 D8 */ psq_l f23, 728(r1), 0, qr0 +/* 80240F88 0023DEE8 CA E1 02 D0 */ lfd f23, 0x2d0(r1) +/* 80240F8C 0023DEEC E2 C1 02 C8 */ psq_l f22, 712(r1), 0, qr0 +/* 80240F90 0023DEF0 CA C1 02 C0 */ lfd f22, 0x2c0(r1) +/* 80240F94 0023DEF4 E2 A1 02 B8 */ psq_l f21, 696(r1), 0, qr0 +/* 80240F98 0023DEF8 CA A1 02 B0 */ lfd f21, 0x2b0(r1) +/* 80240F9C 0023DEFC E2 81 02 A8 */ psq_l f20, 680(r1), 0, qr0 +/* 80240FA0 0023DF00 CA 81 02 A0 */ lfd f20, 0x2a0(r1) +/* 80240FA4 0023DF04 E2 61 02 98 */ psq_l f19, 664(r1), 0, qr0 +/* 80240FA8 0023DF08 CA 61 02 90 */ lfd f19, 0x290(r1) +/* 80240FAC 0023DF0C E2 41 02 88 */ psq_l f18, 648(r1), 0, qr0 +/* 80240FB0 0023DF10 CA 41 02 80 */ lfd f18, 0x280(r1) +/* 80240FB4 0023DF14 83 E1 02 7C */ lwz r31, 0x27c(r1) +/* 80240FB8 0023DF18 83 C1 02 78 */ lwz r30, 0x278(r1) +/* 80240FBC 0023DF1C 83 A1 02 74 */ lwz r29, 0x274(r1) +/* 80240FC0 0023DF20 80 01 03 64 */ lwz r0, 0x364(r1) +/* 80240FC4 0023DF24 83 81 02 70 */ lwz r28, 0x270(r1) +/* 80240FC8 0023DF28 7C 08 03 A6 */ mtlr r0 +/* 80240FCC 0023DF2C 38 21 03 60 */ addi r1, r1, 0x360 +/* 80240FD0 0023DF30 4E 80 00 20 */ blr + +.global GetInVar__20CScriptSpindleCameraCFRC16SSpindleProperty +GetInVar__20CScriptSpindleCameraCFRC16SSpindleProperty: +/* 80240FD4 0023DF34 80 04 00 04 */ lwz r0, 4(r4) +/* 80240FD8 0023DF38 54 00 10 3A */ slwi r0, r0, 2 +/* 80240FDC 0023DF3C 7C 63 02 14 */ add r3, r3, r0 +/* 80240FE0 0023DF40 C0 23 01 90 */ lfs f1, 0x190(r3) +/* 80240FE4 0023DF44 4E 80 00 20 */ blr + +.global Reset__20CScriptSpindleCameraFRC12CTransform4fR13CStateManager +Reset__20CScriptSpindleCameraFRC12CTransform4fR13CStateManager: +/* 80240FE8 0023DF48 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80240FEC 0023DF4C 7C 08 02 A6 */ mflr r0 +/* 80240FF0 0023DF50 90 01 00 14 */ stw r0, 0x14(r1) +/* 80240FF4 0023DF54 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80240FF8 0023DF58 7C BF 2B 78 */ mr r31, r5 +/* 80240FFC 0023DF5C 7F E4 FB 78 */ mr r4, r31 +/* 80241000 0023DF60 93 C1 00 08 */ stw r30, 8(r1) +/* 80241004 0023DF64 7C 7E 1B 78 */ mr r30, r3 +/* 80241008 0023DF68 80 65 08 70 */ lwz r3, 0x870(r5) +/* 8024100C 0023DF6C 4B DC 83 C5 */ bl GetCameraHint__14CCameraManagerCFR13CStateManager +/* 80241010 0023DF70 88 1E 00 30 */ lbz r0, 0x30(r30) +/* 80241014 0023DF74 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80241018 0023DF78 41 82 00 60 */ beq lbl_80241078 +/* 8024101C 0023DF7C 28 03 00 00 */ cmplwi r3, 0 +/* 80241020 0023DF80 40 82 00 08 */ bne lbl_80241028 +/* 80241024 0023DF84 48 00 00 54 */ b lbl_80241078 +lbl_80241028: +/* 80241028 0023DF88 88 1E 03 3C */ lbz r0, 0x33c(r30) +/* 8024102C 0023DF8C 38 60 00 01 */ li r3, 1 +/* 80241030 0023DF90 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80241034 0023DF94 C0 22 B8 00 */ lfs f1, lbl_805AD520@sda21(r2) +/* 80241038 0023DF98 98 1E 03 3C */ stb r0, 0x33c(r30) +/* 8024103C 0023DF9C 7F E4 FB 78 */ mr r4, r31 +/* 80241040 0023DFA0 80 7F 08 70 */ lwz r3, 0x870(r31) +/* 80241044 0023DFA4 80 63 00 80 */ lwz r3, 0x80(r3) +/* 80241048 0023DFA8 4B E4 2A 1D */ bl UpdateLookAtPosition__11CBallCameraFfR13CStateManager +/* 8024104C 0023DFAC 7F C3 F3 78 */ mr r3, r30 +/* 80241050 0023DFB0 7F E4 FB 78 */ mr r4, r31 +/* 80241054 0023DFB4 81 9E 00 00 */ lwz r12, 0(r30) +/* 80241058 0023DFB8 C0 22 B8 00 */ lfs f1, lbl_805AD520@sda21(r2) +/* 8024105C 0023DFBC 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 80241060 0023DFC0 7D 89 03 A6 */ mtctr r12 +/* 80241064 0023DFC4 4E 80 04 21 */ bctrl +/* 80241068 0023DFC8 88 1E 03 3C */ lbz r0, 0x33c(r30) +/* 8024106C 0023DFCC 38 60 00 00 */ li r3, 0 +/* 80241070 0023DFD0 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80241074 0023DFD4 98 1E 03 3C */ stb r0, 0x33c(r30) +lbl_80241078: +/* 80241078 0023DFD8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8024107C 0023DFDC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80241080 0023DFE0 83 C1 00 08 */ lwz r30, 8(r1) +/* 80241084 0023DFE4 7C 08 03 A6 */ mtlr r0 +/* 80241088 0023DFE8 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024108C 0023DFEC 4E 80 00 20 */ blr + +.global __dt__20CScriptSpindleCameraFv +__dt__20CScriptSpindleCameraFv: +/* 80241090 0023DFF0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80241094 0023DFF4 7C 08 02 A6 */ mflr r0 +/* 80241098 0023DFF8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8024109C 0023DFFC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 802410A0 0023E000 7C 9F 23 78 */ mr r31, r4 +/* 802410A4 0023E004 93 C1 00 08 */ stw r30, 8(r1) +/* 802410A8 0023E008 7C 7E 1B 79 */ or. r30, r3, r3 +/* 802410AC 0023E00C 41 82 00 88 */ beq lbl_80241134 +/* 802410B0 0023E010 3C 60 80 3F */ lis r3, lbl_803E8670@ha +/* 802410B4 0023E014 34 1E 01 8C */ addic. r0, r30, 0x18c +/* 802410B8 0023E018 38 03 86 70 */ addi r0, r3, lbl_803E8670@l +/* 802410BC 0023E01C 90 1E 00 00 */ stw r0, 0(r30) +/* 802410C0 0023E020 41 82 00 58 */ beq lbl_80241118 +/* 802410C4 0023E024 80 BE 01 8C */ lwz r5, 0x18c(r30) +/* 802410C8 0023E028 38 60 00 00 */ li r3, 0 +/* 802410CC 0023E02C 2C 05 00 00 */ cmpwi r5, 0 +/* 802410D0 0023E030 40 81 00 40 */ ble lbl_80241110 +/* 802410D4 0023E034 2C 05 00 08 */ cmpwi r5, 8 +/* 802410D8 0023E038 38 85 FF F8 */ addi r4, r5, -8 +/* 802410DC 0023E03C 40 81 00 20 */ ble lbl_802410FC +/* 802410E0 0023E040 38 04 00 07 */ addi r0, r4, 7 +/* 802410E4 0023E044 54 00 E8 FE */ srwi r0, r0, 3 +/* 802410E8 0023E048 7C 09 03 A6 */ mtctr r0 +/* 802410EC 0023E04C 2C 04 00 00 */ cmpwi r4, 0 +/* 802410F0 0023E050 40 81 00 0C */ ble lbl_802410FC +lbl_802410F4: +/* 802410F4 0023E054 38 63 00 08 */ addi r3, r3, 8 +/* 802410F8 0023E058 42 00 FF FC */ bdnz lbl_802410F4 +lbl_802410FC: +/* 802410FC 0023E05C 7C 03 28 50 */ subf r0, r3, r5 +/* 80241100 0023E060 7C 09 03 A6 */ mtctr r0 +/* 80241104 0023E064 7C 03 28 00 */ cmpw r3, r5 +/* 80241108 0023E068 40 80 00 08 */ bge lbl_80241110 +lbl_8024110C: +/* 8024110C 0023E06C 42 00 00 00 */ bdnz lbl_8024110C +lbl_80241110: +/* 80241110 0023E070 38 00 00 00 */ li r0, 0 +/* 80241114 0023E074 90 1E 01 8C */ stw r0, 0x18c(r30) +lbl_80241118: +/* 80241118 0023E078 7F C3 F3 78 */ mr r3, r30 +/* 8024111C 0023E07C 38 80 00 00 */ li r4, 0 +/* 80241120 0023E080 4B E1 C9 3D */ bl __dt__11CGameCameraFv +/* 80241124 0023E084 7F E0 07 35 */ extsh. r0, r31 +/* 80241128 0023E088 40 81 00 0C */ ble lbl_80241134 +/* 8024112C 0023E08C 7F C3 F3 78 */ mr r3, r30 +/* 80241130 0023E090 48 0D 48 01 */ bl Free__7CMemoryFPCv +lbl_80241134: +/* 80241134 0023E094 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80241138 0023E098 7F C3 F3 78 */ mr r3, r30 +/* 8024113C 0023E09C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80241140 0023E0A0 83 C1 00 08 */ lwz r30, 8(r1) +/* 80241144 0023E0A4 7C 08 03 A6 */ mtlr r0 +/* 80241148 0023E0A8 38 21 00 10 */ addi r1, r1, 0x10 +/* 8024114C 0023E0AC 4E 80 00 20 */ blr + +.global __ct__20CScriptSpindleCameraF9TUniqueIdRCQ24rstl12basic_stringRC11CEntityInfoRC12CTransform4fbiffffRC6CAABoxRC6CAABoxRC6CAABoxRC6CAABoxRC6CAABoxRC6CAABoxRC6CAABoxRC6CAABoxRC6CAABoxRC6CAABoxRC6CAABoxRC6CAABoxRC6CAABoxRC6CAABoxRC6CAABox +__ct__20CScriptSpindleCameraF9TUniqueIdRCQ24rstl12basic_stringRC11CEntityInfoRC12CTransform4fbiffffRC6CAABoxRC6CAABoxRC6CAABoxRC6CAABoxRC6CAABoxRC6CAABoxRC6CAABoxRC6CAABoxRC6CAABoxRC6CAABoxRC6CAABoxRC6CAABoxRC6CAABoxRC6CAABoxRC6CAABox: +/* 80241150 0023E0B0 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 80241154 0023E0B4 7C 08 02 A6 */ mflr r0 +/* 80241158 0023E0B8 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 8024115C 0023E0BC DB E1 00 D0 */ stfd f31, 0xd0(r1) +/* 80241160 0023E0C0 F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 +/* 80241164 0023E0C4 DB C1 00 C0 */ stfd f30, 0xc0(r1) +/* 80241168 0023E0C8 F3 C1 00 C8 */ psq_st f30, 200(r1), 0, qr0 +/* 8024116C 0023E0CC DB A1 00 B0 */ stfd f29, 0xb0(r1) +/* 80241170 0023E0D0 F3 A1 00 B8 */ psq_st f29, 184(r1), 0, qr0 +/* 80241174 0023E0D4 DB 81 00 A0 */ stfd f28, 0xa0(r1) +/* 80241178 0023E0D8 F3 81 00 A8 */ psq_st f28, 168(r1), 0, qr0 +/* 8024117C 0023E0DC DB 61 00 90 */ stfd f27, 0x90(r1) +/* 80241180 0023E0E0 F3 61 00 98 */ psq_st f27, 152(r1), 0, qr0 +/* 80241184 0023E0E4 DB 41 00 80 */ stfd f26, 0x80(r1) +/* 80241188 0023E0E8 F3 41 00 88 */ psq_st f26, 136(r1), 0, qr0 +/* 8024118C 0023E0EC DB 21 00 70 */ stfd f25, 0x70(r1) +/* 80241190 0023E0F0 F3 21 00 78 */ psq_st f25, 120(r1), 0, qr0 +/* 80241194 0023E0F4 BD C1 00 28 */ stmw r14, 0x28(r1) +/* 80241198 0023E0F8 A1 6D A3 8C */ lhz r11, lbl_805A8F4C@sda21(r13) +/* 8024119C 0023E0FC FF 20 08 90 */ fmr f25, f1 +/* 802411A0 0023E100 A0 04 00 00 */ lhz r0, 0(r4) +/* 802411A4 0023E104 FF 40 10 90 */ fmr f26, f2 +/* 802411A8 0023E108 FF 60 18 90 */ fmr f27, f3 +/* 802411AC 0023E10C B1 61 00 1C */ sth r11, 0x1c(r1) +/* 802411B0 0023E110 FF 80 20 90 */ fmr f28, f4 +/* 802411B4 0023E114 B0 01 00 20 */ sth r0, 0x20(r1) +/* 802411B8 0023E118 7C 6F 1B 78 */ mr r15, r3 +/* 802411BC 0023E11C 82 41 00 E8 */ lwz r18, 0xe8(r1) +/* 802411C0 0023E120 82 61 00 EC */ lwz r19, 0xec(r1) +/* 802411C4 0023E124 7C AE 2B 78 */ mr r14, r5 +/* 802411C8 0023E128 82 81 00 F0 */ lwz r20, 0xf0(r1) +/* 802411CC 0023E12C 7C F0 3B 78 */ mr r16, r7 +/* 802411D0 0023E130 90 C1 00 10 */ stw r6, 0x10(r1) +/* 802411D4 0023E134 7D 51 53 78 */ mr r17, r10 +/* 802411D8 0023E138 82 A1 00 F4 */ lwz r21, 0xf4(r1) +/* 802411DC 0023E13C 82 C1 00 F8 */ lwz r22, 0xf8(r1) +/* 802411E0 0023E140 99 01 00 14 */ stb r8, 0x14(r1) +/* 802411E4 0023E144 82 E1 00 FC */ lwz r23, 0xfc(r1) +/* 802411E8 0023E148 91 21 00 18 */ stw r9, 0x18(r1) +/* 802411EC 0023E14C 83 01 01 00 */ lwz r24, 0x100(r1) +/* 802411F0 0023E150 83 21 01 04 */ lwz r25, 0x104(r1) +/* 802411F4 0023E154 83 41 01 08 */ lwz r26, 0x108(r1) +/* 802411F8 0023E158 83 61 01 0C */ lwz r27, 0x10c(r1) +/* 802411FC 0023E15C 83 81 01 10 */ lwz r28, 0x110(r1) +/* 80241200 0023E160 83 A1 01 14 */ lwz r29, 0x114(r1) +/* 80241204 0023E164 83 C1 01 18 */ lwz r30, 0x118(r1) +/* 80241208 0023E168 83 E1 01 1C */ lwz r31, 0x11c(r1) +/* 8024120C 0023E16C 4B DC AE AD */ bl DefaultAspect__14CCameraManagerFv +/* 80241210 0023E170 FF A0 08 90 */ fmr f29, f1 +/* 80241214 0023E174 4B DC AE AD */ bl DefaultFarPlane__14CCameraManagerFv +/* 80241218 0023E178 FF C0 08 90 */ fmr f30, f1 +/* 8024121C 0023E17C 4B DC AE AD */ bl DefaultNearPlane__14CCameraManagerFv +/* 80241220 0023E180 FF E0 08 90 */ fmr f31, f1 +/* 80241224 0023E184 4B DC AE B5 */ bl DefaultThirdPersonFov__14CCameraManagerFv +/* 80241228 0023E188 38 00 00 00 */ li r0, 0 +/* 8024122C 0023E18C FC 40 F8 90 */ fmr f2, f31 +/* 80241230 0023E190 FC 60 F0 90 */ fmr f3, f30 +/* 80241234 0023E194 90 01 00 08 */ stw r0, 8(r1) +/* 80241238 0023E198 FC 80 E8 90 */ fmr f4, f29 +/* 8024123C 0023E19C 88 A1 00 14 */ lbz r5, 0x14(r1) +/* 80241240 0023E1A0 80 E1 00 10 */ lwz r7, 0x10(r1) +/* 80241244 0023E1A4 7D E3 7B 78 */ mr r3, r15 +/* 80241248 0023E1A8 7D C6 73 78 */ mr r6, r14 +/* 8024124C 0023E1AC 7E 08 83 78 */ mr r8, r16 +/* 80241250 0023E1B0 38 81 00 20 */ addi r4, r1, 0x20 +/* 80241254 0023E1B4 39 21 00 1C */ addi r9, r1, 0x1c +/* 80241258 0023E1B8 39 40 00 00 */ li r10, 0 +/* 8024125C 0023E1BC 4B E1 C8 61 */ bl "__ct__11CGameCameraF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fffff9TUniqueIdbi" +/* 80241260 0023E1C0 3C 60 80 3F */ lis r3, lbl_803E8670@ha +/* 80241264 0023E1C4 38 00 00 00 */ li r0, 0 +/* 80241268 0023E1C8 38 63 86 70 */ addi r3, r3, lbl_803E8670@l +/* 8024126C 0023E1CC 90 6F 00 00 */ stw r3, 0(r15) +/* 80241270 0023E1D0 80 61 00 18 */ lwz r3, 0x18(r1) +/* 80241274 0023E1D4 90 6F 01 88 */ stw r3, 0x188(r15) +/* 80241278 0023E1D8 90 0F 01 8C */ stw r0, 0x18c(r15) +/* 8024127C 0023E1DC D3 2F 01 B0 */ stfs f25, 0x1b0(r15) +/* 80241280 0023E1E0 D3 4F 01 B4 */ stfs f26, 0x1b4(r15) +/* 80241284 0023E1E4 D3 6F 01 B8 */ stfs f27, 0x1b8(r15) +/* 80241288 0023E1E8 D3 8F 01 BC */ stfs f28, 0x1bc(r15) +/* 8024128C 0023E1EC 80 71 00 00 */ lwz r3, 0(r17) +/* 80241290 0023E1F0 90 6F 01 C0 */ stw r3, 0x1c0(r15) +/* 80241294 0023E1F4 80 71 00 04 */ lwz r3, 4(r17) +/* 80241298 0023E1F8 90 6F 01 C4 */ stw r3, 0x1c4(r15) +/* 8024129C 0023E1FC C0 11 00 08 */ lfs f0, 8(r17) +/* 802412A0 0023E200 D0 0F 01 C8 */ stfs f0, 0x1c8(r15) +/* 802412A4 0023E204 C0 11 00 0C */ lfs f0, 0xc(r17) +/* 802412A8 0023E208 D0 0F 01 CC */ stfs f0, 0x1cc(r15) +/* 802412AC 0023E20C C0 11 00 10 */ lfs f0, 0x10(r17) +/* 802412B0 0023E210 D0 0F 01 D0 */ stfs f0, 0x1d0(r15) +/* 802412B4 0023E214 C0 11 00 14 */ lfs f0, 0x14(r17) +/* 802412B8 0023E218 D0 0F 01 D4 */ stfs f0, 0x1d4(r15) +/* 802412BC 0023E21C 80 72 00 00 */ lwz r3, 0(r18) +/* 802412C0 0023E220 90 6F 01 D8 */ stw r3, 0x1d8(r15) +/* 802412C4 0023E224 80 72 00 04 */ lwz r3, 4(r18) +/* 802412C8 0023E228 90 6F 01 DC */ stw r3, 0x1dc(r15) +/* 802412CC 0023E22C C0 12 00 08 */ lfs f0, 8(r18) +/* 802412D0 0023E230 D0 0F 01 E0 */ stfs f0, 0x1e0(r15) +/* 802412D4 0023E234 C0 12 00 0C */ lfs f0, 0xc(r18) +/* 802412D8 0023E238 D0 0F 01 E4 */ stfs f0, 0x1e4(r15) +/* 802412DC 0023E23C C0 12 00 10 */ lfs f0, 0x10(r18) +/* 802412E0 0023E240 D0 0F 01 E8 */ stfs f0, 0x1e8(r15) +/* 802412E4 0023E244 C0 12 00 14 */ lfs f0, 0x14(r18) +/* 802412E8 0023E248 D0 0F 01 EC */ stfs f0, 0x1ec(r15) +/* 802412EC 0023E24C 80 73 00 00 */ lwz r3, 0(r19) +/* 802412F0 0023E250 90 6F 01 F0 */ stw r3, 0x1f0(r15) +/* 802412F4 0023E254 80 73 00 04 */ lwz r3, 4(r19) +/* 802412F8 0023E258 90 6F 01 F4 */ stw r3, 0x1f4(r15) +/* 802412FC 0023E25C C0 13 00 08 */ lfs f0, 8(r19) +/* 80241300 0023E260 D0 0F 01 F8 */ stfs f0, 0x1f8(r15) +/* 80241304 0023E264 C0 13 00 0C */ lfs f0, 0xc(r19) +/* 80241308 0023E268 D0 0F 01 FC */ stfs f0, 0x1fc(r15) +/* 8024130C 0023E26C C0 13 00 10 */ lfs f0, 0x10(r19) +/* 80241310 0023E270 D0 0F 02 00 */ stfs f0, 0x200(r15) +/* 80241314 0023E274 C0 13 00 14 */ lfs f0, 0x14(r19) +/* 80241318 0023E278 D0 0F 02 04 */ stfs f0, 0x204(r15) +/* 8024131C 0023E27C 80 74 00 00 */ lwz r3, 0(r20) +/* 80241320 0023E280 90 6F 02 08 */ stw r3, 0x208(r15) +/* 80241324 0023E284 80 74 00 04 */ lwz r3, 4(r20) +/* 80241328 0023E288 90 6F 02 0C */ stw r3, 0x20c(r15) +/* 8024132C 0023E28C C0 14 00 08 */ lfs f0, 8(r20) +/* 80241330 0023E290 D0 0F 02 10 */ stfs f0, 0x210(r15) +/* 80241334 0023E294 C0 14 00 0C */ lfs f0, 0xc(r20) +/* 80241338 0023E298 D0 0F 02 14 */ stfs f0, 0x214(r15) +/* 8024133C 0023E29C C0 14 00 10 */ lfs f0, 0x10(r20) +/* 80241340 0023E2A0 D0 0F 02 18 */ stfs f0, 0x218(r15) +/* 80241344 0023E2A4 C0 14 00 14 */ lfs f0, 0x14(r20) +/* 80241348 0023E2A8 D0 0F 02 1C */ stfs f0, 0x21c(r15) +/* 8024134C 0023E2AC 80 75 00 00 */ lwz r3, 0(r21) +/* 80241350 0023E2B0 90 6F 02 20 */ stw r3, 0x220(r15) +/* 80241354 0023E2B4 80 75 00 04 */ lwz r3, 4(r21) +/* 80241358 0023E2B8 90 6F 02 24 */ stw r3, 0x224(r15) +/* 8024135C 0023E2BC C0 15 00 08 */ lfs f0, 8(r21) +/* 80241360 0023E2C0 D0 0F 02 28 */ stfs f0, 0x228(r15) +/* 80241364 0023E2C4 C0 15 00 0C */ lfs f0, 0xc(r21) +/* 80241368 0023E2C8 D0 0F 02 2C */ stfs f0, 0x22c(r15) +/* 8024136C 0023E2CC C0 15 00 10 */ lfs f0, 0x10(r21) +/* 80241370 0023E2D0 D0 0F 02 30 */ stfs f0, 0x230(r15) +/* 80241374 0023E2D4 C0 15 00 14 */ lfs f0, 0x14(r21) +/* 80241378 0023E2D8 D0 0F 02 34 */ stfs f0, 0x234(r15) +/* 8024137C 0023E2DC 80 76 00 00 */ lwz r3, 0(r22) +/* 80241380 0023E2E0 90 6F 02 38 */ stw r3, 0x238(r15) +/* 80241384 0023E2E4 80 76 00 04 */ lwz r3, 4(r22) +/* 80241388 0023E2E8 90 6F 02 3C */ stw r3, 0x23c(r15) +/* 8024138C 0023E2EC C0 16 00 08 */ lfs f0, 8(r22) +/* 80241390 0023E2F0 D0 0F 02 40 */ stfs f0, 0x240(r15) +/* 80241394 0023E2F4 C0 16 00 0C */ lfs f0, 0xc(r22) +/* 80241398 0023E2F8 D0 0F 02 44 */ stfs f0, 0x244(r15) +/* 8024139C 0023E2FC C0 16 00 10 */ lfs f0, 0x10(r22) +/* 802413A0 0023E300 D0 0F 02 48 */ stfs f0, 0x248(r15) +/* 802413A4 0023E304 C0 16 00 14 */ lfs f0, 0x14(r22) +/* 802413A8 0023E308 D0 0F 02 4C */ stfs f0, 0x24c(r15) +/* 802413AC 0023E30C 80 77 00 00 */ lwz r3, 0(r23) +/* 802413B0 0023E310 90 6F 02 50 */ stw r3, 0x250(r15) +/* 802413B4 0023E314 80 77 00 04 */ lwz r3, 4(r23) +/* 802413B8 0023E318 90 6F 02 54 */ stw r3, 0x254(r15) +/* 802413BC 0023E31C C0 17 00 08 */ lfs f0, 8(r23) +/* 802413C0 0023E320 D0 0F 02 58 */ stfs f0, 0x258(r15) +/* 802413C4 0023E324 C0 17 00 0C */ lfs f0, 0xc(r23) +/* 802413C8 0023E328 D0 0F 02 5C */ stfs f0, 0x25c(r15) +/* 802413CC 0023E32C C0 17 00 10 */ lfs f0, 0x10(r23) +/* 802413D0 0023E330 D0 0F 02 60 */ stfs f0, 0x260(r15) +/* 802413D4 0023E334 C0 17 00 14 */ lfs f0, 0x14(r23) +/* 802413D8 0023E338 D0 0F 02 64 */ stfs f0, 0x264(r15) +/* 802413DC 0023E33C 80 78 00 00 */ lwz r3, 0(r24) +/* 802413E0 0023E340 90 6F 02 68 */ stw r3, 0x268(r15) +/* 802413E4 0023E344 80 78 00 04 */ lwz r3, 4(r24) +/* 802413E8 0023E348 90 6F 02 6C */ stw r3, 0x26c(r15) +/* 802413EC 0023E34C C0 18 00 08 */ lfs f0, 8(r24) +/* 802413F0 0023E350 D0 0F 02 70 */ stfs f0, 0x270(r15) +/* 802413F4 0023E354 C0 38 00 0C */ lfs f1, 0xc(r24) +/* 802413F8 0023E358 C0 02 B7 D0 */ lfs f0, lbl_805AD4F0@sda21(r2) +/* 802413FC 0023E35C D0 2F 02 74 */ stfs f1, 0x274(r15) +/* 80241400 0023E360 C0 38 00 10 */ lfs f1, 0x10(r24) +/* 80241404 0023E364 D0 2F 02 78 */ stfs f1, 0x278(r15) +/* 80241408 0023E368 C0 38 00 14 */ lfs f1, 0x14(r24) +/* 8024140C 0023E36C D0 2F 02 7C */ stfs f1, 0x27c(r15) +/* 80241410 0023E370 80 79 00 00 */ lwz r3, 0(r25) +/* 80241414 0023E374 90 6F 02 80 */ stw r3, 0x280(r15) +/* 80241418 0023E378 80 79 00 04 */ lwz r3, 4(r25) +/* 8024141C 0023E37C 90 6F 02 84 */ stw r3, 0x284(r15) +/* 80241420 0023E380 C0 39 00 08 */ lfs f1, 8(r25) +/* 80241424 0023E384 D0 2F 02 88 */ stfs f1, 0x288(r15) +/* 80241428 0023E388 C0 39 00 0C */ lfs f1, 0xc(r25) +/* 8024142C 0023E38C D0 2F 02 8C */ stfs f1, 0x28c(r15) +/* 80241430 0023E390 C0 39 00 10 */ lfs f1, 0x10(r25) +/* 80241434 0023E394 D0 2F 02 90 */ stfs f1, 0x290(r15) +/* 80241438 0023E398 C0 39 00 14 */ lfs f1, 0x14(r25) +/* 8024143C 0023E39C D0 2F 02 94 */ stfs f1, 0x294(r15) +/* 80241440 0023E3A0 80 7A 00 00 */ lwz r3, 0(r26) +/* 80241444 0023E3A4 90 6F 02 98 */ stw r3, 0x298(r15) +/* 80241448 0023E3A8 80 7A 00 04 */ lwz r3, 4(r26) +/* 8024144C 0023E3AC 90 6F 02 9C */ stw r3, 0x29c(r15) +/* 80241450 0023E3B0 C0 3A 00 08 */ lfs f1, 8(r26) +/* 80241454 0023E3B4 D0 2F 02 A0 */ stfs f1, 0x2a0(r15) +/* 80241458 0023E3B8 C0 3A 00 0C */ lfs f1, 0xc(r26) +/* 8024145C 0023E3BC D0 2F 02 A4 */ stfs f1, 0x2a4(r15) +/* 80241460 0023E3C0 C0 3A 00 10 */ lfs f1, 0x10(r26) +/* 80241464 0023E3C4 D0 2F 02 A8 */ stfs f1, 0x2a8(r15) +/* 80241468 0023E3C8 C0 3A 00 14 */ lfs f1, 0x14(r26) +/* 8024146C 0023E3CC D0 2F 02 AC */ stfs f1, 0x2ac(r15) +/* 80241470 0023E3D0 80 7B 00 00 */ lwz r3, 0(r27) +/* 80241474 0023E3D4 90 6F 02 B0 */ stw r3, 0x2b0(r15) +/* 80241478 0023E3D8 80 7B 00 04 */ lwz r3, 4(r27) +/* 8024147C 0023E3DC 90 6F 02 B4 */ stw r3, 0x2b4(r15) +/* 80241480 0023E3E0 C0 3B 00 08 */ lfs f1, 8(r27) +/* 80241484 0023E3E4 D0 2F 02 B8 */ stfs f1, 0x2b8(r15) +/* 80241488 0023E3E8 C0 3B 00 0C */ lfs f1, 0xc(r27) +/* 8024148C 0023E3EC D0 2F 02 BC */ stfs f1, 0x2bc(r15) +/* 80241490 0023E3F0 C0 3B 00 10 */ lfs f1, 0x10(r27) +/* 80241494 0023E3F4 D0 2F 02 C0 */ stfs f1, 0x2c0(r15) +/* 80241498 0023E3F8 C0 3B 00 14 */ lfs f1, 0x14(r27) +/* 8024149C 0023E3FC D0 2F 02 C4 */ stfs f1, 0x2c4(r15) +/* 802414A0 0023E400 80 7C 00 00 */ lwz r3, 0(r28) +/* 802414A4 0023E404 90 6F 02 C8 */ stw r3, 0x2c8(r15) +/* 802414A8 0023E408 80 7C 00 04 */ lwz r3, 4(r28) +/* 802414AC 0023E40C 90 6F 02 CC */ stw r3, 0x2cc(r15) +/* 802414B0 0023E410 C0 3C 00 08 */ lfs f1, 8(r28) +/* 802414B4 0023E414 D0 2F 02 D0 */ stfs f1, 0x2d0(r15) +/* 802414B8 0023E418 C0 3C 00 0C */ lfs f1, 0xc(r28) +/* 802414BC 0023E41C D0 2F 02 D4 */ stfs f1, 0x2d4(r15) +/* 802414C0 0023E420 C0 3C 00 10 */ lfs f1, 0x10(r28) +/* 802414C4 0023E424 D0 2F 02 D8 */ stfs f1, 0x2d8(r15) +/* 802414C8 0023E428 C0 3C 00 14 */ lfs f1, 0x14(r28) +/* 802414CC 0023E42C D0 2F 02 DC */ stfs f1, 0x2dc(r15) +/* 802414D0 0023E430 80 7D 00 00 */ lwz r3, 0(r29) +/* 802414D4 0023E434 90 6F 02 E0 */ stw r3, 0x2e0(r15) +/* 802414D8 0023E438 80 7D 00 04 */ lwz r3, 4(r29) +/* 802414DC 0023E43C 90 6F 02 E4 */ stw r3, 0x2e4(r15) +/* 802414E0 0023E440 C0 3D 00 08 */ lfs f1, 8(r29) +/* 802414E4 0023E444 D0 2F 02 E8 */ stfs f1, 0x2e8(r15) +/* 802414E8 0023E448 C0 3D 00 0C */ lfs f1, 0xc(r29) +/* 802414EC 0023E44C D0 2F 02 EC */ stfs f1, 0x2ec(r15) +/* 802414F0 0023E450 C0 3D 00 10 */ lfs f1, 0x10(r29) +/* 802414F4 0023E454 D0 2F 02 F0 */ stfs f1, 0x2f0(r15) +/* 802414F8 0023E458 C0 3D 00 14 */ lfs f1, 0x14(r29) +/* 802414FC 0023E45C D0 2F 02 F4 */ stfs f1, 0x2f4(r15) +/* 80241500 0023E460 80 7E 00 00 */ lwz r3, 0(r30) +/* 80241504 0023E464 90 6F 02 F8 */ stw r3, 0x2f8(r15) +/* 80241508 0023E468 80 7E 00 04 */ lwz r3, 4(r30) +/* 8024150C 0023E46C 90 6F 02 FC */ stw r3, 0x2fc(r15) +/* 80241510 0023E470 C0 3E 00 08 */ lfs f1, 8(r30) +/* 80241514 0023E474 D0 2F 03 00 */ stfs f1, 0x300(r15) +/* 80241518 0023E478 C0 3E 00 0C */ lfs f1, 0xc(r30) +/* 8024151C 0023E47C D0 2F 03 04 */ stfs f1, 0x304(r15) +/* 80241520 0023E480 C0 3E 00 10 */ lfs f1, 0x10(r30) +/* 80241524 0023E484 D0 2F 03 08 */ stfs f1, 0x308(r15) +/* 80241528 0023E488 C0 3E 00 14 */ lfs f1, 0x14(r30) +/* 8024152C 0023E48C D0 2F 03 0C */ stfs f1, 0x30c(r15) +/* 80241530 0023E490 80 7F 00 00 */ lwz r3, 0(r31) +/* 80241534 0023E494 90 6F 03 10 */ stw r3, 0x310(r15) +/* 80241538 0023E498 80 7F 00 04 */ lwz r3, 4(r31) +/* 8024153C 0023E49C 90 6F 03 14 */ stw r3, 0x314(r15) +/* 80241540 0023E4A0 C0 3F 00 08 */ lfs f1, 8(r31) +/* 80241544 0023E4A4 D0 2F 03 18 */ stfs f1, 0x318(r15) +/* 80241548 0023E4A8 C0 3F 00 0C */ lfs f1, 0xc(r31) +/* 8024154C 0023E4AC D0 2F 03 1C */ stfs f1, 0x31c(r15) +/* 80241550 0023E4B0 C0 3F 00 10 */ lfs f1, 0x10(r31) +/* 80241554 0023E4B4 D0 2F 03 20 */ stfs f1, 0x320(r15) +/* 80241558 0023E4B8 C0 3F 00 14 */ lfs f1, 0x14(r31) +/* 8024155C 0023E4BC D0 2F 03 24 */ stfs f1, 0x324(r15) +/* 80241560 0023E4C0 D0 0F 03 28 */ stfs f0, 0x328(r15) +/* 80241564 0023E4C4 88 6F 03 2C */ lbz r3, 0x32c(r15) +/* 80241568 0023E4C8 50 03 3E 30 */ rlwimi r3, r0, 7, 0x18, 0x18 +/* 8024156C 0023E4CC 98 6F 03 2C */ stb r3, 0x32c(r15) +/* 80241570 0023E4D0 C0 50 00 24 */ lfs f2, 0x24(r16) +/* 80241574 0023E4D4 C0 30 00 14 */ lfs f1, 0x14(r16) +/* 80241578 0023E4D8 C0 10 00 04 */ lfs f0, 4(r16) +/* 8024157C 0023E4DC D0 0F 03 30 */ stfs f0, 0x330(r15) +/* 80241580 0023E4E0 D0 2F 03 34 */ stfs f1, 0x334(r15) +/* 80241584 0023E4E4 D0 4F 03 38 */ stfs f2, 0x338(r15) +/* 80241588 0023E4E8 7D E3 7B 78 */ mr r3, r15 +/* 8024158C 0023E4EC E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 +/* 80241590 0023E4F0 CB E1 00 D0 */ lfd f31, 0xd0(r1) +/* 80241594 0023E4F4 E3 C1 00 C8 */ psq_l f30, 200(r1), 0, qr0 +/* 80241598 0023E4F8 CB C1 00 C0 */ lfd f30, 0xc0(r1) +/* 8024159C 0023E4FC E3 A1 00 B8 */ psq_l f29, 184(r1), 0, qr0 +/* 802415A0 0023E500 CB A1 00 B0 */ lfd f29, 0xb0(r1) +/* 802415A4 0023E504 E3 81 00 A8 */ psq_l f28, 168(r1), 0, qr0 +/* 802415A8 0023E508 CB 81 00 A0 */ lfd f28, 0xa0(r1) +/* 802415AC 0023E50C E3 61 00 98 */ psq_l f27, 152(r1), 0, qr0 +/* 802415B0 0023E510 CB 61 00 90 */ lfd f27, 0x90(r1) +/* 802415B4 0023E514 E3 41 00 88 */ psq_l f26, 136(r1), 0, qr0 +/* 802415B8 0023E518 CB 41 00 80 */ lfd f26, 0x80(r1) +/* 802415BC 0023E51C E3 21 00 78 */ psq_l f25, 120(r1), 0, qr0 +/* 802415C0 0023E520 CB 21 00 70 */ lfd f25, 0x70(r1) +/* 802415C4 0023E524 B9 C1 00 28 */ lmw r14, 0x28(r1) +/* 802415C8 0023E528 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 802415CC 0023E52C 7C 08 03 A6 */ mtlr r0 +/* 802415D0 0023E530 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 802415D4 0023E534 4E 80 00 20 */ blr + +.global GetValue__16SSpindlePropertyCFf +GetValue__16SSpindlePropertyCFf: +/* 802415D8 0023E538 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 802415DC 0023E53C 7C 08 02 A6 */ mflr r0 +/* 802415E0 0023E540 7C 65 1B 78 */ mr r5, r3 +/* 802415E4 0023E544 90 01 00 14 */ stw r0, 0x14(r1) +/* 802415E8 0023E548 80 03 00 04 */ lwz r0, 4(r3) +/* 802415EC 0023E54C 2C 00 00 00 */ cmpwi r0, 0 +/* 802415F0 0023E550 40 82 00 0C */ bne lbl_802415FC +/* 802415F4 0023E554 C0 25 00 08 */ lfs f1, 8(r5) +/* 802415F8 0023E558 48 00 00 D4 */ b lbl_802416CC +lbl_802415FC: +/* 802415FC 0023E55C C0 65 00 14 */ lfs f3, 0x14(r5) +/* 80241600 0023E560 C0 05 00 10 */ lfs f0, 0x10(r5) +/* 80241604 0023E564 C0 42 B7 D0 */ lfs f2, lbl_805AD4F0@sda21(r2) +/* 80241608 0023E568 EC A3 00 28 */ fsubs f5, f3, f0 +/* 8024160C 0023E56C C0 02 B8 04 */ lfs f0, lbl_805AD524@sda21(r2) +/* 80241610 0023E570 EC 45 10 28 */ fsubs f2, f5, f2 +/* 80241614 0023E574 FC 40 12 10 */ fabs f2, f2 +/* 80241618 0023E578 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8024161C 0023E57C 40 80 00 0C */ bge lbl_80241628 +/* 80241620 0023E580 C0 25 00 08 */ lfs f1, 8(r5) +/* 80241624 0023E584 48 00 00 A8 */ b lbl_802416CC +lbl_80241628: +/* 80241628 0023E588 80 65 00 00 */ lwz r3, 0(r5) +/* 8024162C 0023E58C FC E0 08 90 */ fmr f7, f1 +/* 80241630 0023E590 C0 05 00 0C */ lfs f0, 0xc(r5) +/* 80241634 0023E594 C0 85 00 08 */ lfs f4, 8(r5) +/* 80241638 0023E598 54 60 07 FF */ clrlwi. r0, r3, 0x1f +/* 8024163C 0023E59C EC C0 20 28 */ fsubs f6, f0, f4 +/* 80241640 0023E5A0 41 82 00 14 */ beq lbl_80241654 +/* 80241644 0023E5A4 FC 01 18 40 */ fcmpo cr0, f1, f3 +/* 80241648 0023E5A8 40 81 00 0C */ ble lbl_80241654 +/* 8024164C 0023E5AC EC 01 18 28 */ fsubs f0, f1, f3 +/* 80241650 0023E5B0 EC E3 00 28 */ fsubs f7, f3, f0 +lbl_80241654: +/* 80241654 0023E5B4 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e +/* 80241658 0023E5B8 41 82 00 18 */ beq lbl_80241670 +/* 8024165C 0023E5BC C0 45 00 10 */ lfs f2, 0x10(r5) +/* 80241660 0023E5C0 FC 01 10 40 */ fcmpo cr0, f1, f2 +/* 80241664 0023E5C4 40 80 00 0C */ bge lbl_80241670 +/* 80241668 0023E5C8 EC 02 08 28 */ fsubs f0, f2, f1 +/* 8024166C 0023E5CC EC E2 00 2A */ fadds f7, f2, f0 +lbl_80241670: +/* 80241670 0023E5D0 C0 05 00 10 */ lfs f0, 0x10(r5) +/* 80241674 0023E5D4 C0 25 00 08 */ lfs f1, 8(r5) +/* 80241678 0023E5D8 EC 47 00 28 */ fsubs f2, f7, f0 +/* 8024167C 0023E5DC C0 05 00 0C */ lfs f0, 0xc(r5) +/* 80241680 0023E5E0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80241684 0023E5E4 EC 06 00 B2 */ fmuls f0, f6, f2 +/* 80241688 0023E5E8 EC 00 28 24 */ fdivs f0, f0, f5 +/* 8024168C 0023E5EC EC 04 00 2A */ fadds f0, f4, f0 +/* 80241690 0023E5F0 D0 01 00 08 */ stfs f0, 8(r1) +/* 80241694 0023E5F4 40 80 00 1C */ bge lbl_802416B0 +/* 80241698 0023E5F8 38 65 00 08 */ addi r3, r5, 8 +/* 8024169C 0023E5FC 38 81 00 08 */ addi r4, r1, 8 +/* 802416A0 0023E600 38 A5 00 0C */ addi r5, r5, 0xc +/* 802416A4 0023E604 4B DC AC 11 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 802416A8 0023E608 C0 03 00 00 */ lfs f0, 0(r3) +/* 802416AC 0023E60C 48 00 00 18 */ b lbl_802416C4 +lbl_802416B0: +/* 802416B0 0023E610 38 65 00 0C */ addi r3, r5, 0xc +/* 802416B4 0023E614 38 81 00 08 */ addi r4, r1, 8 +/* 802416B8 0023E618 38 A5 00 08 */ addi r5, r5, 8 +/* 802416BC 0023E61C 4B DC AB F9 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 802416C0 0023E620 C0 03 00 00 */ lfs f0, 0(r3) +lbl_802416C4: +/* 802416C4 0023E624 D0 01 00 08 */ stfs f0, 8(r1) +/* 802416C8 0023E628 FC 20 00 18 */ frsp f1, f0 +lbl_802416CC: +/* 802416CC 0023E62C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 802416D0 0023E630 7C 08 03 A6 */ mtlr r0 +/* 802416D4 0023E634 38 21 00 10 */ addi r1, r1, 0x10 +/* 802416D8 0023E638 4E 80 00 20 */ blr + +.global FixupAngles__15SSpindleSegmentFv +FixupAngles__15SSpindleSegmentFv: +/* 802416DC 0023E63C C0 03 00 08 */ lfs f0, 8(r3) +/* 802416E0 0023E640 C0 22 B8 08 */ lfs f1, lbl_805AD528@sda21(r2) +/* 802416E4 0023E644 EC 00 00 72 */ fmuls f0, f0, f1 +/* 802416E8 0023E648 D0 03 00 08 */ stfs f0, 8(r3) +/* 802416EC 0023E64C C0 03 00 0C */ lfs f0, 0xc(r3) +/* 802416F0 0023E650 EC 00 00 72 */ fmuls f0, f0, f1 +/* 802416F4 0023E654 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 802416F8 0023E658 4E 80 00 20 */ blr + +.global LoadSpindleSegment__FR12CInputStream +LoadSpindleSegment__FR12CInputStream: +/* 802416FC 0023E65C 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80241700 0023E660 7C 08 02 A6 */ mflr r0 +/* 80241704 0023E664 90 01 00 54 */ stw r0, 0x54(r1) +/* 80241708 0023E668 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 8024170C 0023E66C F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 80241710 0023E670 DB C1 00 30 */ stfd f30, 0x30(r1) +/* 80241714 0023E674 F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 +/* 80241718 0023E678 DB A1 00 20 */ stfd f29, 0x20(r1) +/* 8024171C 0023E67C F3 A1 00 28 */ psq_st f29, 40(r1), 0, qr0 +/* 80241720 0023E680 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80241724 0023E684 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80241728 0023E688 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8024172C 0023E68C 93 81 00 10 */ stw r28, 0x10(r1) +/* 80241730 0023E690 7C 9D 23 78 */ mr r29, r4 +/* 80241734 0023E694 7C 7C 1B 78 */ mr r28, r3 +/* 80241738 0023E698 7F A3 EB 78 */ mr r3, r29 +/* 8024173C 0023E69C 48 0F D5 49 */ bl ReadLong__12CInputStreamFv +/* 80241740 0023E6A0 7C 60 1B 78 */ mr r0, r3 +/* 80241744 0023E6A4 7F A3 EB 78 */ mr r3, r29 +/* 80241748 0023E6A8 7C 1F 03 78 */ mr r31, r0 +/* 8024174C 0023E6AC 4B E9 84 B1 */ bl LoadParameterFlags__FR12CInputStream +/* 80241750 0023E6B0 7C 60 1B 78 */ mr r0, r3 +/* 80241754 0023E6B4 7F A3 EB 78 */ mr r3, r29 +/* 80241758 0023E6B8 7C 1E 03 78 */ mr r30, r0 +/* 8024175C 0023E6BC 48 0F D4 CD */ bl ReadFloat__12CInputStreamFv +/* 80241760 0023E6C0 FF E0 08 90 */ fmr f31, f1 +/* 80241764 0023E6C4 7F A3 EB 78 */ mr r3, r29 +/* 80241768 0023E6C8 48 0F D4 C1 */ bl ReadFloat__12CInputStreamFv +/* 8024176C 0023E6CC FF C0 08 90 */ fmr f30, f1 +/* 80241770 0023E6D0 7F A3 EB 78 */ mr r3, r29 +/* 80241774 0023E6D4 48 0F D4 B5 */ bl ReadFloat__12CInputStreamFv +/* 80241778 0023E6D8 FF A0 08 90 */ fmr f29, f1 +/* 8024177C 0023E6DC 7F A3 EB 78 */ mr r3, r29 +/* 80241780 0023E6E0 48 0F D4 A9 */ bl ReadFloat__12CInputStreamFv +/* 80241784 0023E6E4 2C 1F 00 06 */ cmpwi r31, 6 +/* 80241788 0023E6E8 FC 80 08 90 */ fmr f4, f1 +/* 8024178C 0023E6EC 40 80 00 1C */ bge lbl_802417A8 +/* 80241790 0023E6F0 2C 1F 00 03 */ cmpwi r31, 3 +/* 80241794 0023E6F4 40 80 00 08 */ bge lbl_8024179C +/* 80241798 0023E6F8 48 00 00 10 */ b lbl_802417A8 +lbl_8024179C: +/* 8024179C 0023E6FC C0 02 B8 08 */ lfs f0, lbl_805AD528@sda21(r2) +/* 802417A0 0023E700 EF BD 00 32 */ fmuls f29, f29, f0 +/* 802417A4 0023E704 EC 84 00 32 */ fmuls f4, f4, f0 +lbl_802417A8: +/* 802417A8 0023E708 FC 20 F8 90 */ fmr f1, f31 +/* 802417AC 0023E70C 7F 83 E3 78 */ mr r3, r28 +/* 802417B0 0023E710 FC 40 F0 90 */ fmr f2, f30 +/* 802417B4 0023E714 7F E4 FB 78 */ mr r4, r31 +/* 802417B8 0023E718 FC 60 E8 90 */ fmr f3, f29 +/* 802417BC 0023E71C 7F C5 F3 78 */ mr r5, r30 +/* 802417C0 0023E720 48 00 00 3D */ bl sub_802417fc +/* 802417C4 0023E724 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 802417C8 0023E728 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 802417CC 0023E72C E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 +/* 802417D0 0023E730 CB C1 00 30 */ lfd f30, 0x30(r1) +/* 802417D4 0023E734 E3 A1 00 28 */ psq_l f29, 40(r1), 0, qr0 +/* 802417D8 0023E738 CB A1 00 20 */ lfd f29, 0x20(r1) +/* 802417DC 0023E73C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 802417E0 0023E740 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 802417E4 0023E744 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 802417E8 0023E748 80 01 00 54 */ lwz r0, 0x54(r1) +/* 802417EC 0023E74C 83 81 00 10 */ lwz r28, 0x10(r1) +/* 802417F0 0023E750 7C 08 03 A6 */ mtlr r0 +/* 802417F4 0023E754 38 21 00 50 */ addi r1, r1, 0x50 +/* 802417F8 0023E758 4E 80 00 20 */ blr + +.global sub_802417fc +sub_802417fc: +/* 802417FC 0023E75C 90 A3 00 00 */ stw r5, 0(r3) +/* 80241800 0023E760 90 83 00 04 */ stw r4, 4(r3) +/* 80241804 0023E764 D0 23 00 08 */ stfs f1, 8(r3) +/* 80241808 0023E768 D0 43 00 0C */ stfs f2, 0xc(r3) +/* 8024180C 0023E76C D0 63 00 10 */ stfs f3, 0x10(r3) +/* 80241810 0023E770 D0 83 00 14 */ stfs f4, 0x14(r3) +/* 80241814 0023E774 4E 80 00 20 */ blr + +.global __sinit_CScriptSpindleCamera_cpp +__sinit_CScriptSpindleCamera_cpp: +/* 80241818 0023E778 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8024181C 0023E77C 7C 08 02 A6 */ mflr r0 +/* 80241820 0023E780 38 60 00 00 */ li r3, 0 +/* 80241824 0023E784 38 80 00 01 */ li r4, 1 +/* 80241828 0023E788 90 01 00 34 */ stw r0, 0x34(r1) +/* 8024182C 0023E78C 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80241830 0023E790 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80241834 0023E794 80 AD 96 B0 */ lwz r5, lbl_805A8270@sda21(r13) +/* 80241838 0023E798 48 14 86 BD */ bl __shl2i +/* 8024183C 0023E79C 90 8D A5 3C */ stw r4, lbl_805A90FC@sda21(r13) +/* 80241840 0023E7A0 38 80 00 01 */ li r4, 1 +/* 80241844 0023E7A4 80 AD 96 B4 */ lwz r5, lbl_805A8274@sda21(r13) +/* 80241848 0023E7A8 90 6D A5 38 */ stw r3, lbl_805A90F8@sda21(r13) +/* 8024184C 0023E7AC 38 60 00 00 */ li r3, 0 +/* 80241850 0023E7B0 48 14 86 A5 */ bl __shl2i +/* 80241854 0023E7B4 80 AD 96 B8 */ lwz r5, lbl_805A8278@sda21(r13) +/* 80241858 0023E7B8 7C 9E 23 78 */ mr r30, r4 +/* 8024185C 0023E7BC 7C 7F 1B 78 */ mr r31, r3 +/* 80241860 0023E7C0 38 60 00 00 */ li r3, 0 +/* 80241864 0023E7C4 38 80 00 01 */ li r4, 1 +/* 80241868 0023E7C8 48 14 86 8D */ bl __shl2i +/* 8024186C 0023E7CC 80 AD 96 BC */ lwz r5, lbl_805A827C@sda21(r13) +/* 80241870 0023E7D0 7F DE 23 78 */ or r30, r30, r4 +/* 80241874 0023E7D4 7F FF 1B 78 */ or r31, r31, r3 +/* 80241878 0023E7D8 38 60 00 00 */ li r3, 0 +/* 8024187C 0023E7DC 38 80 00 01 */ li r4, 1 +/* 80241880 0023E7E0 48 14 86 75 */ bl __shl2i +/* 80241884 0023E7E4 80 AD 96 C0 */ lwz r5, lbl_805A8280@sda21(r13) +/* 80241888 0023E7E8 7F DE 23 78 */ or r30, r30, r4 +/* 8024188C 0023E7EC 7F FF 1B 78 */ or r31, r31, r3 +/* 80241890 0023E7F0 38 60 00 00 */ li r3, 0 +/* 80241894 0023E7F4 38 80 00 01 */ li r4, 1 +/* 80241898 0023E7F8 48 14 86 5D */ bl __shl2i +/* 8024189C 0023E7FC 3C A0 80 47 */ lis r5, lbl_8046D390@ha +/* 802418A0 0023E800 80 0D A5 38 */ lwz r0, lbl_805A90F8@sda21(r13) +/* 802418A4 0023E804 7F DE 23 78 */ or r30, r30, r4 +/* 802418A8 0023E808 7F FF 1B 78 */ or r31, r31, r3 +/* 802418AC 0023E80C 38 65 D3 90 */ addi r3, r5, lbl_8046D390@l +/* 802418B0 0023E810 38 A0 00 03 */ li r5, 3 +/* 802418B4 0023E814 80 8D A5 3C */ lwz r4, lbl_805A90FC@sda21(r13) +/* 802418B8 0023E818 93 CD A5 44 */ stw r30, lbl_805A9104@sda21(r13) +/* 802418BC 0023E81C 93 ED A5 40 */ stw r31, lbl_805A9100@sda21(r13) +/* 802418C0 0023E820 90 A1 00 18 */ stw r5, 0x18(r1) +/* 802418C4 0023E824 90 83 00 04 */ stw r4, 4(r3) +/* 802418C8 0023E828 90 03 00 00 */ stw r0, 0(r3) +/* 802418CC 0023E82C 93 C3 00 0C */ stw r30, 0xc(r3) +/* 802418D0 0023E830 93 E3 00 08 */ stw r31, 8(r3) +/* 802418D4 0023E834 90 A3 00 10 */ stw r5, 0x10(r3) +/* 802418D8 0023E838 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 802418DC 0023E83C 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 802418E0 0023E840 80 01 00 34 */ lwz r0, 0x34(r1) +/* 802418E4 0023E844 7C 08 03 A6 */ mtlr r0 +/* 802418E8 0023E848 38 21 00 30 */ addi r1, r1, 0x30 +/* 802418EC 0023E84C 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/ScriptObjects/CScriptStreamedAudio.s b/asm/Kyoto_CWD/ScriptObjects/CScriptStreamedAudio.s new file mode 100644 index 00000000..50806de5 --- /dev/null +++ b/asm/Kyoto_CWD/ScriptObjects/CScriptStreamedAudio.s @@ -0,0 +1,750 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__20CScriptStreamedMusicFv +__dt__20CScriptStreamedMusicFv: +/* 8020BE1C 00208D7C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8020BE20 00208D80 7C 08 02 A6 */ mflr r0 +/* 8020BE24 00208D84 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020BE28 00208D88 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8020BE2C 00208D8C 7C 9F 23 78 */ mr r31, r4 +/* 8020BE30 00208D90 93 C1 00 08 */ stw r30, 8(r1) +/* 8020BE34 00208D94 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8020BE38 00208D98 41 82 00 3C */ beq lbl_8020BE74 +/* 8020BE3C 00208D9C 3C 60 80 3E */ lis r3, lbl_803E7068@ha +/* 8020BE40 00208DA0 34 1E 00 34 */ addic. r0, r30, 0x34 +/* 8020BE44 00208DA4 38 03 70 68 */ addi r0, r3, lbl_803E7068@l +/* 8020BE48 00208DA8 90 1E 00 00 */ stw r0, 0(r30) +/* 8020BE4C 00208DAC 41 82 00 0C */ beq lbl_8020BE58 +/* 8020BE50 00208DB0 38 7E 00 34 */ addi r3, r30, 0x34 +/* 8020BE54 00208DB4 48 13 1C 8D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8020BE58: +/* 8020BE58 00208DB8 7F C3 F3 78 */ mr r3, r30 +/* 8020BE5C 00208DBC 38 80 00 00 */ li r4, 0 +/* 8020BE60 00208DC0 4B E4 54 15 */ bl __dt__7CEntityFv +/* 8020BE64 00208DC4 7F E0 07 35 */ extsh. r0, r31 +/* 8020BE68 00208DC8 40 81 00 0C */ ble lbl_8020BE74 +/* 8020BE6C 00208DCC 7F C3 F3 78 */ mr r3, r30 +/* 8020BE70 00208DD0 48 10 9A C1 */ bl Free__7CMemoryFPCv +lbl_8020BE74: +/* 8020BE74 00208DD4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8020BE78 00208DD8 7F C3 F3 78 */ mr r3, r30 +/* 8020BE7C 00208DDC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8020BE80 00208DE0 83 C1 00 08 */ lwz r30, 8(r1) +/* 8020BE84 00208DE4 7C 08 03 A6 */ mtlr r0 +/* 8020BE88 00208DE8 38 21 00 10 */ addi r1, r1, 0x10 +/* 8020BE8C 00208DEC 4E 80 00 20 */ blr + +.global sub_8020be90 +sub_8020be90: +/* 8020BE90 00208DF0 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 8020BE94 00208DF4 7C 08 02 A6 */ mflr r0 +/* 8020BE98 00208DF8 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 8020BE9C 00208DFC 93 E1 00 BC */ stw r31, 0xbc(r1) +/* 8020BEA0 00208E00 7C 7F 1B 78 */ mr r31, r3 +/* 8020BEA4 00208E04 93 C1 00 B8 */ stw r30, 0xb8(r1) +/* 8020BEA8 00208E08 88 03 00 45 */ lbz r0, 0x45(r3) +/* 8020BEAC 00208E0C 28 00 00 00 */ cmplwi r0, 0 +/* 8020BEB0 00208E10 41 82 01 CC */ beq lbl_8020C07C +/* 8020BEB4 00208E14 38 7F 00 34 */ addi r3, r31, 0x34 +/* 8020BEB8 00208E18 38 80 00 7C */ li r4, 0x7c +/* 8020BEBC 00208E1C 38 A0 00 00 */ li r5, 0 +/* 8020BEC0 00208E20 48 00 02 95 */ bl sub_8020c154 +/* 8020BEC4 00208E24 2C 03 FF FF */ cmpwi r3, -1 +/* 8020BEC8 00208E28 40 82 01 B4 */ bne lbl_8020C07C +/* 8020BECC 00208E2C 80 7F 00 3C */ lwz r3, 0x3c(r31) +/* 8020BED0 00208E30 2C 03 00 05 */ cmpwi r3, 5 +/* 8020BED4 00208E34 41 80 01 A8 */ blt lbl_8020C07C +/* 8020BED8 00208E38 80 1F 00 34 */ lwz r0, 0x34(r31) +/* 8020BEDC 00208E3C 38 83 FF FB */ addi r4, r3, -5 +/* 8020BEE0 00208E40 38 61 00 98 */ addi r3, r1, 0x98 +/* 8020BEE4 00208E44 7C 80 22 14 */ add r4, r0, r4 +/* 8020BEE8 00208E48 4B DF 8D D1 */ bl string_l__4rstlFPCc +/* 8020BEEC 00208E4C 3C 80 80 3D */ lis r4, lbl_803D2778@ha +/* 8020BEF0 00208E50 38 61 00 88 */ addi r3, r1, 0x88 +/* 8020BEF4 00208E54 38 84 27 78 */ addi r4, r4, lbl_803D2778@l +/* 8020BEF8 00208E58 4B DF 8D C1 */ bl string_l__4rstlFPCc +/* 8020BEFC 00208E5C 38 61 00 98 */ addi r3, r1, 0x98 +/* 8020BF00 00208E60 38 81 00 88 */ addi r4, r1, 0x88 +/* 8020BF04 00208E64 48 13 2A E9 */ bl "CompareCaseInsensitive__13CStringExtrasFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8020BF08 00208E68 7C 7E 1B 78 */ mr r30, r3 +/* 8020BF0C 00208E6C 38 61 00 88 */ addi r3, r1, 0x88 +/* 8020BF10 00208E70 48 13 1B D1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8020BF14 00208E74 38 61 00 98 */ addi r3, r1, 0x98 +/* 8020BF18 00208E78 48 13 1B C9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8020BF1C 00208E7C 2C 1E 00 00 */ cmpwi r30, 0 +/* 8020BF20 00208E80 40 82 01 5C */ bne lbl_8020C07C +/* 8020BF24 00208E84 80 FF 00 3C */ lwz r7, 0x3c(r31) +/* 8020BF28 00208E88 38 DF 00 34 */ addi r6, r31, 0x34 +/* 8020BF2C 00208E8C 38 00 00 00 */ li r0, 0 +/* 8020BF30 00208E90 90 C1 00 20 */ stw r6, 0x20(r1) +/* 8020BF34 00208E94 38 A7 FF FB */ addi r5, r7, -5 +/* 8020BF38 00208E98 38 61 00 10 */ addi r3, r1, 0x10 +/* 8020BF3C 00208E9C 90 E1 00 0C */ stw r7, 0xc(r1) +/* 8020BF40 00208EA0 38 81 00 18 */ addi r4, r1, 0x18 +/* 8020BF44 00208EA4 90 E1 00 24 */ stw r7, 0x24(r1) +/* 8020BF48 00208EA8 90 C1 00 08 */ stw r6, 8(r1) +/* 8020BF4C 00208EAC 90 A1 00 0C */ stw r5, 0xc(r1) +/* 8020BF50 00208EB0 90 C1 00 28 */ stw r6, 0x28(r1) +/* 8020BF54 00208EB4 90 A1 00 2C */ stw r5, 0x2c(r1) +/* 8020BF58 00208EB8 90 C1 00 30 */ stw r6, 0x30(r1) +/* 8020BF5C 00208EBC 90 A1 00 34 */ stw r5, 0x34(r1) +/* 8020BF60 00208EC0 90 C1 00 38 */ stw r6, 0x38(r1) +/* 8020BF64 00208EC4 90 01 00 3C */ stw r0, 0x3c(r1) +/* 8020BF68 00208EC8 90 C1 00 40 */ stw r6, 0x40(r1) +/* 8020BF6C 00208ECC 90 01 00 44 */ stw r0, 0x44(r1) +/* 8020BF70 00208ED0 90 C1 00 18 */ stw r6, 0x18(r1) +/* 8020BF74 00208ED4 90 A1 00 1C */ stw r5, 0x1c(r1) +/* 8020BF78 00208ED8 90 C1 00 10 */ stw r6, 0x10(r1) +/* 8020BF7C 00208EDC 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020BF80 00208EE0 48 00 08 71 */ bl sub_8020c7f0 +/* 8020BF84 00208EE4 7C 7E 1B 78 */ mr r30, r3 +/* 8020BF88 00208EE8 38 61 00 78 */ addi r3, r1, 0x78 +/* 8020BF8C 00208EEC 38 9E 00 01 */ addi r4, r30, 1 +/* 8020BF90 00208EF0 48 13 1B 99 */ bl "internal_allocate__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fi" +/* 8020BF94 00208EF4 81 01 00 44 */ lwz r8, 0x44(r1) +/* 8020BF98 00208EF8 38 E0 00 00 */ li r7, 0 +/* 8020BF9C 00208EFC 81 21 00 34 */ lwz r9, 0x34(r1) +/* 8020BFA0 00208F00 80 A1 00 40 */ lwz r5, 0x40(r1) +/* 8020BFA4 00208F04 80 61 00 30 */ lwz r3, 0x30(r1) +/* 8020BFA8 00208F08 48 00 00 1C */ b lbl_8020BFC4 +lbl_8020BFAC: +/* 8020BFAC 00208F0C 80 85 00 00 */ lwz r4, 0(r5) +/* 8020BFB0 00208F10 80 C1 00 78 */ lwz r6, 0x78(r1) +/* 8020BFB4 00208F14 7C 04 40 AE */ lbzx r0, r4, r8 +/* 8020BFB8 00208F18 39 08 00 01 */ addi r8, r8, 1 +/* 8020BFBC 00208F1C 7C 06 39 AE */ stbx r0, r6, r7 +/* 8020BFC0 00208F20 38 E7 00 01 */ addi r7, r7, 1 +lbl_8020BFC4: +/* 8020BFC4 00208F24 7C 05 18 40 */ cmplw r5, r3 +/* 8020BFC8 00208F28 38 00 00 00 */ li r0, 0 +/* 8020BFCC 00208F2C 40 82 00 0C */ bne lbl_8020BFD8 +/* 8020BFD0 00208F30 7C 08 48 00 */ cmpw r8, r9 +/* 8020BFD4 00208F34 41 82 00 08 */ beq lbl_8020BFDC +lbl_8020BFD8: +/* 8020BFD8 00208F38 38 00 00 01 */ li r0, 1 +lbl_8020BFDC: +/* 8020BFDC 00208F3C 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 8020BFE0 00208F40 40 82 FF CC */ bne lbl_8020BFAC +/* 8020BFE4 00208F44 80 A1 00 78 */ lwz r5, 0x78(r1) +/* 8020BFE8 00208F48 38 00 00 00 */ li r0, 0 +/* 8020BFEC 00208F4C 3C 80 80 3D */ lis r4, lbl_803D2778@ha +/* 8020BFF0 00208F50 38 61 00 68 */ addi r3, r1, 0x68 +/* 8020BFF4 00208F54 7C 05 39 AE */ stbx r0, r5, r7 +/* 8020BFF8 00208F58 38 A4 27 78 */ addi r5, r4, lbl_803D2778@l +/* 8020BFFC 00208F5C 38 81 00 78 */ addi r4, r1, 0x78 +/* 8020C000 00208F60 93 C1 00 80 */ stw r30, 0x80(r1) +/* 8020C004 00208F64 38 A5 00 06 */ addi r5, r5, 6 +/* 8020C008 00208F68 48 00 00 ED */ bl "__pl__4rstlFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>PCc" +/* 8020C00C 00208F6C 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 8020C010 00208F70 38 81 00 68 */ addi r4, r1, 0x68 +/* 8020C014 00208F74 48 13 21 4D */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8020C018 00208F78 38 61 00 68 */ addi r3, r1, 0x68 +/* 8020C01C 00208F7C 48 13 1A C5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8020C020 00208F80 38 61 00 78 */ addi r3, r1, 0x78 +/* 8020C024 00208F84 48 13 1A BD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8020C028 00208F88 80 61 00 A8 */ lwz r3, 0xa8(r1) +/* 8020C02C 00208F8C 48 14 39 21 */ bl FileExists__8CDvdFileFPCc +/* 8020C030 00208F90 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8020C034 00208F94 41 82 00 40 */ beq lbl_8020C074 +/* 8020C038 00208F98 38 61 00 58 */ addi r3, r1, 0x58 +/* 8020C03C 00208F9C 38 9F 00 34 */ addi r4, r31, 0x34 +/* 8020C040 00208FA0 38 A0 00 7C */ li r5, 0x7c +/* 8020C044 00208FA4 48 00 00 51 */ bl "__pl__4rstlFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>c" +/* 8020C048 00208FA8 38 61 00 48 */ addi r3, r1, 0x48 +/* 8020C04C 00208FAC 38 81 00 58 */ addi r4, r1, 0x58 +/* 8020C050 00208FB0 38 A1 00 A8 */ addi r5, r1, 0xa8 +/* 8020C054 00208FB4 4B DF 8C 09 */ bl "__pl__4rstlFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8020C058 00208FB8 38 7F 00 34 */ addi r3, r31, 0x34 +/* 8020C05C 00208FBC 38 81 00 48 */ addi r4, r1, 0x48 +/* 8020C060 00208FC0 48 13 1C FD */ bl "assign__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8020C064 00208FC4 38 61 00 48 */ addi r3, r1, 0x48 +/* 8020C068 00208FC8 48 13 1A 79 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8020C06C 00208FCC 38 61 00 58 */ addi r3, r1, 0x58 +/* 8020C070 00208FD0 48 13 1A 71 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8020C074: +/* 8020C074 00208FD4 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 8020C078 00208FD8 48 13 1A 69 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8020C07C: +/* 8020C07C 00208FDC 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 8020C080 00208FE0 83 E1 00 BC */ lwz r31, 0xbc(r1) +/* 8020C084 00208FE4 83 C1 00 B8 */ lwz r30, 0xb8(r1) +/* 8020C088 00208FE8 7C 08 03 A6 */ mtlr r0 +/* 8020C08C 00208FEC 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 8020C090 00208FF0 4E 80 00 20 */ blr + +.global "__pl__4rstlFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>c" +"__pl__4rstlFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>c": +/* 8020C094 00208FF4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8020C098 00208FF8 7C 08 02 A6 */ mflr r0 +/* 8020C09C 00208FFC 90 01 00 24 */ stw r0, 0x24(r1) +/* 8020C0A0 00209000 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8020C0A4 00209004 7C BF 2B 78 */ mr r31, r5 +/* 8020C0A8 00209008 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8020C0AC 0020900C 7C 7E 1B 78 */ mr r30, r3 +/* 8020C0B0 00209010 38 61 00 08 */ addi r3, r1, 8 +/* 8020C0B4 00209014 48 13 20 AD */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8020C0B8 00209018 7F E5 FB 78 */ mr r5, r31 +/* 8020C0BC 0020901C 38 61 00 08 */ addi r3, r1, 8 +/* 8020C0C0 00209020 38 80 00 01 */ li r4, 1 +/* 8020C0C4 00209024 48 13 1D 25 */ bl "append__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fic" +/* 8020C0C8 00209028 7F C3 F3 78 */ mr r3, r30 +/* 8020C0CC 0020902C 38 81 00 08 */ addi r4, r1, 8 +/* 8020C0D0 00209030 48 13 20 91 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8020C0D4 00209034 38 61 00 08 */ addi r3, r1, 8 +/* 8020C0D8 00209038 48 13 1A 09 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8020C0DC 0020903C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8020C0E0 00209040 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8020C0E4 00209044 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8020C0E8 00209048 7C 08 03 A6 */ mtlr r0 +/* 8020C0EC 0020904C 38 21 00 20 */ addi r1, r1, 0x20 +/* 8020C0F0 00209050 4E 80 00 20 */ blr + +.global "__pl__4rstlFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>PCc" +"__pl__4rstlFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>PCc": +/* 8020C0F4 00209054 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8020C0F8 00209058 7C 08 02 A6 */ mflr r0 +/* 8020C0FC 0020905C 90 01 00 24 */ stw r0, 0x24(r1) +/* 8020C100 00209060 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8020C104 00209064 7C BF 2B 78 */ mr r31, r5 +/* 8020C108 00209068 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8020C10C 0020906C 7C 7E 1B 78 */ mr r30, r3 +/* 8020C110 00209070 38 61 00 08 */ addi r3, r1, 8 +/* 8020C114 00209074 48 13 20 4D */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8020C118 00209078 7F E4 FB 78 */ mr r4, r31 +/* 8020C11C 0020907C 38 61 00 08 */ addi r3, r1, 8 +/* 8020C120 00209080 38 A0 FF FF */ li r5, -1 +/* 8020C124 00209084 48 13 1D C1 */ bl "append__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCci" +/* 8020C128 00209088 7F C3 F3 78 */ mr r3, r30 +/* 8020C12C 0020908C 38 81 00 08 */ addi r4, r1, 8 +/* 8020C130 00209090 48 13 20 31 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8020C134 00209094 38 61 00 08 */ addi r3, r1, 8 +/* 8020C138 00209098 48 13 19 A9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8020C13C 0020909C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8020C140 002090A0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8020C144 002090A4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8020C148 002090A8 7C 08 03 A6 */ mtlr r0 +/* 8020C14C 002090AC 38 21 00 20 */ addi r1, r1, 0x20 +/* 8020C150 002090B0 4E 80 00 20 */ blr + +.global sub_8020c154 +sub_8020c154: +/* 8020C154 002090B4 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8020C158 002090B8 2C 05 FF FF */ cmpwi r5, -1 +/* 8020C15C 002090BC 98 81 00 08 */ stb r4, 8(r1) +/* 8020C160 002090C0 41 82 00 10 */ beq lbl_8020C170 +/* 8020C164 002090C4 80 03 00 08 */ lwz r0, 8(r3) +/* 8020C168 002090C8 7C 05 00 00 */ cmpw r5, r0 +/* 8020C16C 002090CC 41 80 00 08 */ blt lbl_8020C174 +lbl_8020C170: +/* 8020C170 002090D0 80 A3 00 08 */ lwz r5, 8(r3) +lbl_8020C174: +/* 8020C174 002090D4 80 C3 00 08 */ lwz r6, 8(r3) +/* 8020C178 002090D8 38 E1 00 08 */ addi r7, r1, 8 +/* 8020C17C 002090DC 39 41 00 09 */ addi r10, r1, 9 +/* 8020C180 002090E0 39 00 00 00 */ li r8, 0 +/* 8020C184 002090E4 7C 07 50 40 */ cmplw r7, r10 +/* 8020C188 002090E8 90 61 00 1C */ stw r3, 0x1c(r1) +/* 8020C18C 002090EC 91 01 00 20 */ stw r8, 0x20(r1) +/* 8020C190 002090F0 90 61 00 24 */ stw r3, 0x24(r1) +/* 8020C194 002090F4 90 A1 00 28 */ stw r5, 0x28(r1) +/* 8020C198 002090F8 90 61 00 2C */ stw r3, 0x2c(r1) +/* 8020C19C 002090FC 90 A1 00 30 */ stw r5, 0x30(r1) +/* 8020C1A0 00209100 90 61 00 0C */ stw r3, 0xc(r1) +/* 8020C1A4 00209104 90 C1 00 10 */ stw r6, 0x10(r1) +/* 8020C1A8 00209108 90 61 00 14 */ stw r3, 0x14(r1) +/* 8020C1AC 0020910C 90 C1 00 18 */ stw r6, 0x18(r1) +/* 8020C1B0 00209110 40 82 00 08 */ bne lbl_8020C1B8 +/* 8020C1B4 00209114 48 00 00 78 */ b lbl_8020C22C +lbl_8020C1B8: +/* 8020C1B8 00209118 7C A9 2B 78 */ mr r9, r5 +/* 8020C1BC 0020911C 48 00 00 4C */ b lbl_8020C208 +lbl_8020C1C0: +/* 8020C1C0 00209120 80 83 00 00 */ lwz r4, 0(r3) +/* 8020C1C4 00209124 88 07 00 00 */ lbz r0, 0(r7) +/* 8020C1C8 00209128 7C 84 48 AE */ lbzx r4, r4, r9 +/* 8020C1CC 0020912C 7C 00 07 74 */ extsb r0, r0 +/* 8020C1D0 00209130 7C 84 07 74 */ extsb r4, r4 +/* 8020C1D4 00209134 7C 04 00 00 */ cmpw r4, r0 +/* 8020C1D8 00209138 40 82 00 24 */ bne lbl_8020C1FC +/* 8020C1DC 0020913C 38 E7 00 01 */ addi r7, r7, 1 +/* 8020C1E0 00209140 39 08 00 01 */ addi r8, r8, 1 +/* 8020C1E4 00209144 7C 07 50 40 */ cmplw r7, r10 +/* 8020C1E8 00209148 40 82 00 1C */ bne lbl_8020C204 +/* 8020C1EC 0020914C 7C 05 48 50 */ subf r0, r5, r9 +/* 8020C1F0 00209150 7C 68 00 50 */ subf r3, r8, r0 +/* 8020C1F4 00209154 39 03 00 01 */ addi r8, r3, 1 +/* 8020C1F8 00209158 48 00 00 34 */ b lbl_8020C22C +lbl_8020C1FC: +/* 8020C1FC 0020915C 38 E1 00 08 */ addi r7, r1, 8 +/* 8020C200 00209160 39 00 00 00 */ li r8, 0 +lbl_8020C204: +/* 8020C204 00209164 39 29 00 01 */ addi r9, r9, 1 +lbl_8020C208: +/* 8020C208 00209168 7C 03 18 40 */ cmplw r3, r3 +/* 8020C20C 0020916C 38 00 00 00 */ li r0, 0 +/* 8020C210 00209170 40 82 00 0C */ bne lbl_8020C21C +/* 8020C214 00209174 7C 09 30 00 */ cmpw r9, r6 +/* 8020C218 00209178 41 82 00 08 */ beq lbl_8020C220 +lbl_8020C21C: +/* 8020C21C 0020917C 38 00 00 01 */ li r0, 1 +lbl_8020C220: +/* 8020C220 00209180 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 8020C224 00209184 40 82 FF 9C */ bne lbl_8020C1C0 +/* 8020C228 00209188 39 00 FF FF */ li r8, -1 +lbl_8020C22C: +/* 8020C22C 0020918C 2C 08 FF FF */ cmpwi r8, -1 +/* 8020C230 00209190 7C 68 2A 14 */ add r3, r8, r5 +/* 8020C234 00209194 40 82 00 08 */ bne lbl_8020C23C +/* 8020C238 00209198 7D 03 43 78 */ mr r3, r8 +lbl_8020C23C: +/* 8020C23C 0020919C 38 21 00 40 */ addi r1, r1, 0x40 +/* 8020C240 002091A0 4E 80 00 20 */ blr + +.global sub_8020c244 +sub_8020c244: +/* 8020C244 002091A4 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 8020C248 002091A8 7C 08 02 A6 */ mflr r0 +/* 8020C24C 002091AC 90 01 00 74 */ stw r0, 0x74(r1) +/* 8020C250 002091B0 DB E1 00 60 */ stfd f31, 0x60(r1) +/* 8020C254 002091B4 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 8020C258 002091B8 DB C1 00 50 */ stfd f30, 0x50(r1) +/* 8020C25C 002091BC F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 +/* 8020C260 002091C0 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 8020C264 002091C4 93 C1 00 48 */ stw r30, 0x48(r1) +/* 8020C268 002091C8 7C 7E 1B 78 */ mr r30, r3 +/* 8020C26C 002091CC 80 84 08 50 */ lwz r4, 0x850(r4) +/* 8020C270 002091D0 80 E3 00 04 */ lwz r7, 4(r3) +/* 8020C274 002091D4 38 61 00 14 */ addi r3, r1, 0x14 +/* 8020C278 002091D8 80 C4 00 20 */ lwz r6, 0x20(r4) +/* 8020C27C 002091DC 38 BE 00 10 */ addi r5, r30, 0x10 +/* 8020C280 002091E0 54 E4 18 38 */ slwi r4, r7, 3 +/* 8020C284 002091E4 90 E1 00 0C */ stw r7, 0xc(r1) +/* 8020C288 002091E8 38 04 00 04 */ addi r0, r4, 4 +/* 8020C28C 002091EC 7C 86 00 2E */ lwzx r4, r6, r0 +/* 8020C290 002091F0 90 E1 00 10 */ stw r7, 0x10(r1) +/* 8020C294 002091F4 80 84 00 84 */ lwz r4, 0x84(r4) +/* 8020C298 002091F8 48 01 08 A1 */ bl sub_8021cb38 +/* 8020C29C 002091FC 38 61 00 34 */ addi r3, r1, 0x34 +/* 8020C2A0 00209200 38 81 00 14 */ addi r4, r1, 0x14 +/* 8020C2A4 00209204 48 13 1E BD */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8020C2A8 00209208 38 61 00 14 */ addi r3, r1, 0x14 +/* 8020C2AC 0020920C 48 13 18 35 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8020C2B0 00209210 80 6D A0 88 */ lwz r3, gpTweakManager@sda21(r13) +/* 8020C2B4 00209214 38 81 00 34 */ addi r4, r1, 0x34 +/* 8020C2B8 00209218 48 01 0D 39 */ bl "HasTweakValue__19CInGameTweakManagerCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8020C2BC 0020921C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8020C2C0 00209220 41 82 00 7C */ beq lbl_8020C33C +/* 8020C2C4 00209224 80 6D A0 88 */ lwz r3, gpTweakManager@sda21(r13) +/* 8020C2C8 00209228 38 81 00 34 */ addi r4, r1, 0x34 +/* 8020C2CC 0020922C 48 01 09 D9 */ bl "GetTweakValue__19CInGameTweakManagerCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8020C2D0 00209230 7C 7F 1B 78 */ mr r31, r3 +/* 8020C2D4 00209234 38 61 00 24 */ addi r3, r1, 0x24 +/* 8020C2D8 00209238 38 9F 00 30 */ addi r4, r31, 0x30 +/* 8020C2DC 0020923C 48 13 1E 85 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8020C2E0 00209240 C0 22 B1 B8 */ lfs f1, lbl_805ACED8@sda21(r2) +/* 8020C2E4 00209244 C0 1F 00 2C */ lfs f0, 0x2c(r31) +/* 8020C2E8 00209248 C3 DF 00 24 */ lfs f30, 0x24(r31) +/* 8020C2EC 0020924C EF E1 00 32 */ fmuls f31, f1, f0 +/* 8020C2F0 00209250 F3 E1 C0 08 */ psq_st f31, 8(r1), 1, qr4 +/* 8020C2F4 00209254 38 7E 00 34 */ addi r3, r30, 0x34 +/* 8020C2F8 00209258 C3 FF 00 28 */ lfs f31, 0x28(r31) +/* 8020C2FC 0020925C 38 81 00 24 */ addi r4, r1, 0x24 +/* 8020C300 00209260 8B E1 00 08 */ lbz r31, 8(r1) +/* 8020C304 00209264 48 13 1A 59 */ bl "assign__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8020C308 00209268 38 7E 00 34 */ addi r3, r30, 0x34 +/* 8020C30C 0020926C 48 00 03 65 */ bl IsDSPFile__20CScriptStreamedMusicFRCQ24rstl6string +/* 8020C310 00209270 98 7E 00 45 */ stb r3, 0x45(r30) +/* 8020C314 00209274 7F E0 07 74 */ extsb r0, r31 +/* 8020C318 00209278 7F C3 F3 78 */ mr r3, r30 +/* 8020C31C 0020927C D3 DE 00 48 */ stfs f30, 0x48(r30) +/* 8020C320 00209280 90 1E 00 50 */ stw r0, 0x50(r30) +/* 8020C324 00209284 D3 FE 00 4C */ stfs f31, 0x4c(r30) +/* 8020C328 00209288 48 00 03 FD */ bl nullsub_42 +/* 8020C32C 0020928C 7F C3 F3 78 */ mr r3, r30 +/* 8020C330 00209290 4B FF FB 61 */ bl sub_8020be90 +/* 8020C334 00209294 38 61 00 24 */ addi r3, r1, 0x24 +/* 8020C338 00209298 48 13 17 A9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8020C33C: +/* 8020C33C 0020929C 38 61 00 34 */ addi r3, r1, 0x34 +/* 8020C340 002092A0 48 13 17 A1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8020C344 002092A4 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 8020C348 002092A8 CB E1 00 60 */ lfd f31, 0x60(r1) +/* 8020C34C 002092AC E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 +/* 8020C350 002092B0 CB C1 00 50 */ lfd f30, 0x50(r1) +/* 8020C354 002092B4 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 8020C358 002092B8 80 01 00 74 */ lwz r0, 0x74(r1) +/* 8020C35C 002092BC 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 8020C360 002092C0 7C 08 03 A6 */ mtlr r0 +/* 8020C364 002092C4 38 21 00 70 */ addi r1, r1, 0x70 +/* 8020C368 002092C8 4E 80 00 20 */ blr + +.global StopStream__20CScriptStreamedMusicFR13CStateManager +StopStream__20CScriptStreamedMusicFR13CStateManager: +/* 8020C36C 002092CC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8020C370 002092D0 7C 08 02 A6 */ mflr r0 +/* 8020C374 002092D4 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020C378 002092D8 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8020C37C 002092DC 7C 7F 1B 78 */ mr r31, r3 +/* 8020C380 002092E0 88 63 00 46 */ lbz r3, 0x46(r3) +/* 8020C384 002092E4 48 00 04 5D */ bl IsOneShot__20CScriptStreamedMusicFb +/* 8020C388 002092E8 38 9F 00 34 */ addi r4, r31, 0x34 +/* 8020C38C 002092EC 48 15 9C 39 */ bl Stop__19CStreamAudioManagerFiRCQ24rstl6string +/* 8020C390 002092F0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8020C394 002092F4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8020C398 002092F8 7C 08 03 A6 */ mtlr r0 +/* 8020C39C 002092FC 38 21 00 10 */ addi r1, r1, 0x10 +/* 8020C3A0 00209300 4E 80 00 20 */ blr + +.global StartStream__20CScriptStreamedMusicFR13CStateManager +StartStream__20CScriptStreamedMusicFR13CStateManager: +/* 8020C3A4 00209304 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8020C3A8 00209308 7C 08 02 A6 */ mflr r0 +/* 8020C3AC 0020930C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020C3B0 00209310 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8020C3B4 00209314 7C 7F 1B 78 */ mr r31, r3 +/* 8020C3B8 00209318 88 63 00 46 */ lbz r3, 0x46(r3) +/* 8020C3BC 0020931C 48 00 04 25 */ bl IsOneShot__20CScriptStreamedMusicFb +/* 8020C3C0 00209320 80 1F 00 50 */ lwz r0, 0x50(r31) +/* 8020C3C4 00209324 38 9F 00 34 */ addi r4, r31, 0x34 +/* 8020C3C8 00209328 C0 3F 00 48 */ lfs f1, 0x48(r31) +/* 8020C3CC 0020932C C0 5F 00 4C */ lfs f2, 0x4c(r31) +/* 8020C3D0 00209330 54 05 06 3E */ clrlwi r5, r0, 0x18 +/* 8020C3D4 00209334 88 DF 00 47 */ lbz r6, 0x47(r31) +/* 8020C3D8 00209338 48 15 99 A9 */ bl Start__19CStreamAudioManagerFiRCQ24rstl6stringib +/* 8020C3DC 0020933C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8020C3E0 00209340 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8020C3E4 00209344 7C 08 03 A6 */ mtlr r0 +/* 8020C3E8 00209348 38 21 00 10 */ addi r1, r1, 0x10 +/* 8020C3EC 0020934C 4E 80 00 20 */ blr + +.global sub_8020c3f0 +sub_8020c3f0: +/* 8020C3F0 00209350 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8020C3F4 00209354 7C 08 02 A6 */ mflr r0 +/* 8020C3F8 00209358 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020C3FC 0020935C C0 23 00 4C */ lfs f1, 0x4c(r3) +/* 8020C400 00209360 48 15 95 0D */ bl sub_8036590c +/* 8020C404 00209364 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8020C408 00209368 7C 08 03 A6 */ mtlr r0 +/* 8020C40C 0020936C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8020C410 00209370 4E 80 00 20 */ blr + +.global sub_8020c414 +sub_8020c414: +/* 8020C414 00209374 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8020C418 00209378 7C 08 02 A6 */ mflr r0 +/* 8020C41C 0020937C 7C 64 1B 78 */ mr r4, r3 +/* 8020C420 00209380 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020C424 00209384 88 03 00 44 */ lbz r0, 0x44(r3) +/* 8020C428 00209388 80 63 00 50 */ lwz r3, 0x50(r3) +/* 8020C42C 0020938C 28 00 00 00 */ cmplwi r0, 0 +/* 8020C430 00209390 7C 60 07 74 */ extsb r0, r3 +/* 8020C434 00209394 41 82 00 1C */ beq lbl_8020C450 +/* 8020C438 00209398 C0 24 00 4C */ lfs f1, 0x4c(r4) +/* 8020C43C 0020939C 38 64 00 34 */ addi r3, r4, 0x34 +/* 8020C440 002093A0 C0 44 00 48 */ lfs f2, 0x48(r4) +/* 8020C444 002093A4 54 04 06 3E */ clrlwi r4, r0, 0x18 +/* 8020C448 002093A8 48 15 97 71 */ bl "SetDefaultAudio__19CStreamAudioManagerFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>fUc" +/* 8020C44C 002093AC 48 00 00 18 */ b lbl_8020C464 +lbl_8020C450: +/* 8020C450 002093B0 C0 24 00 4C */ lfs f1, 0x4c(r4) +/* 8020C454 002093B4 38 64 00 34 */ addi r3, r4, 0x34 +/* 8020C458 002093B8 C0 44 00 48 */ lfs f2, 0x48(r4) +/* 8020C45C 002093BC 54 04 06 3E */ clrlwi r4, r0, 0x18 +/* 8020C460 002093C0 48 15 96 0D */ bl "SetCurrentAudio__19CStreamAudioManagerFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>fUc" +lbl_8020C464: +/* 8020C464 002093C4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8020C468 002093C8 7C 08 03 A6 */ mtlr r0 +/* 8020C46C 002093CC 38 21 00 10 */ addi r1, r1, 0x10 +/* 8020C470 002093D0 4E 80 00 20 */ blr + +.global Stop__20CScriptStreamedMusicFR13CStateManager +Stop__20CScriptStreamedMusicFR13CStateManager: +/* 8020C474 002093D4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8020C478 002093D8 7C 08 02 A6 */ mflr r0 +/* 8020C47C 002093DC 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020C480 002093E0 88 03 00 45 */ lbz r0, 0x45(r3) +/* 8020C484 002093E4 28 00 00 00 */ cmplwi r0, 0 +/* 8020C488 002093E8 41 82 00 0C */ beq lbl_8020C494 +/* 8020C48C 002093EC 4B FF FE E1 */ bl StopStream__20CScriptStreamedMusicFR13CStateManager +/* 8020C490 002093F0 48 00 00 08 */ b lbl_8020C498 +lbl_8020C494: +/* 8020C494 002093F4 4B FF FF 5D */ bl sub_8020c3f0 +lbl_8020C498: +/* 8020C498 002093F8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8020C49C 002093FC 7C 08 03 A6 */ mtlr r0 +/* 8020C4A0 00209400 38 21 00 10 */ addi r1, r1, 0x10 +/* 8020C4A4 00209404 4E 80 00 20 */ blr + +.global Play__20CScriptStreamedMusicFR13CStateManager +Play__20CScriptStreamedMusicFR13CStateManager: +/* 8020C4A8 00209408 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8020C4AC 0020940C 7C 08 02 A6 */ mflr r0 +/* 8020C4B0 00209410 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020C4B4 00209414 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8020C4B8 00209418 7C 9F 23 78 */ mr r31, r4 +/* 8020C4BC 0020941C 93 C1 00 08 */ stw r30, 8(r1) +/* 8020C4C0 00209420 7C 7E 1B 78 */ mr r30, r3 +/* 8020C4C4 00209424 4B FF FD 81 */ bl sub_8020c244 +/* 8020C4C8 00209428 88 1E 00 45 */ lbz r0, 0x45(r30) +/* 8020C4CC 0020942C 28 00 00 00 */ cmplwi r0, 0 +/* 8020C4D0 00209430 41 82 00 14 */ beq lbl_8020C4E4 +/* 8020C4D4 00209434 7F C3 F3 78 */ mr r3, r30 +/* 8020C4D8 00209438 7F E4 FB 78 */ mr r4, r31 +/* 8020C4DC 0020943C 4B FF FE C9 */ bl StartStream__20CScriptStreamedMusicFR13CStateManager +/* 8020C4E0 00209440 48 00 00 10 */ b lbl_8020C4F0 +lbl_8020C4E4: +/* 8020C4E4 00209444 7F C3 F3 78 */ mr r3, r30 +/* 8020C4E8 00209448 7F E4 FB 78 */ mr r4, r31 +/* 8020C4EC 0020944C 4B FF FF 29 */ bl sub_8020c414 +lbl_8020C4F0: +/* 8020C4F0 00209450 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8020C4F4 00209454 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8020C4F8 00209458 83 C1 00 08 */ lwz r30, 8(r1) +/* 8020C4FC 0020945C 7C 08 03 A6 */ mtlr r0 +/* 8020C500 00209460 38 21 00 10 */ addi r1, r1, 0x10 +/* 8020C504 00209464 4E 80 00 20 */ blr + +.global Accept__20CScriptStreamedMusicFR8IVisitor +Accept__20CScriptStreamedMusicFR8IVisitor: +/* 8020C508 00209468 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8020C50C 0020946C 7C 08 02 A6 */ mflr r0 +/* 8020C510 00209470 90 01 00 14 */ stw r0, 0x14(r1) +/* 8020C514 00209474 7C 60 1B 78 */ mr r0, r3 +/* 8020C518 00209478 7C 83 23 78 */ mr r3, r4 +/* 8020C51C 0020947C 81 84 00 00 */ lwz r12, 0(r4) +/* 8020C520 00209480 7C 04 03 78 */ mr r4, r0 +/* 8020C524 00209484 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 8020C528 00209488 7D 89 03 A6 */ mtctr r12 +/* 8020C52C 0020948C 4E 80 04 21 */ bctrl +/* 8020C530 00209490 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8020C534 00209494 7C 08 03 A6 */ mtlr r0 +/* 8020C538 00209498 38 21 00 10 */ addi r1, r1, 0x10 +/* 8020C53C 0020949C 4E 80 00 20 */ blr + +.global AcceptScriptMsg__20CScriptStreamedMusicF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__20CScriptStreamedMusicF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 8020C540 002094A0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8020C544 002094A4 7C 08 02 A6 */ mflr r0 +/* 8020C548 002094A8 90 01 00 24 */ stw r0, 0x24(r1) +/* 8020C54C 002094AC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8020C550 002094B0 7C DF 33 78 */ mr r31, r6 +/* 8020C554 002094B4 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8020C558 002094B8 7C 9E 23 78 */ mr r30, r4 +/* 8020C55C 002094BC 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8020C560 002094C0 7C 7D 1B 78 */ mr r29, r3 +/* 8020C564 002094C4 A0 05 00 00 */ lhz r0, 0(r5) +/* 8020C568 002094C8 38 A1 00 08 */ addi r5, r1, 8 +/* 8020C56C 002094CC B0 01 00 08 */ sth r0, 8(r1) +/* 8020C570 002094D0 4B E4 4B ED */ bl AcceptScriptMsg__7CEntityF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 8020C574 002094D4 38 1E FF FC */ addi r0, r30, -4 +/* 8020C578 002094D8 28 00 00 10 */ cmplwi r0, 0x10 +/* 8020C57C 002094DC 41 81 00 D8 */ bgt lbl_8020C654 +/* 8020C580 002094E0 3C 60 80 3E */ lis r3, lbl_803E7088@ha +/* 8020C584 002094E4 54 00 10 3A */ slwi r0, r0, 2 +/* 8020C588 002094E8 38 63 70 88 */ addi r3, r3, lbl_803E7088@l +/* 8020C58C 002094EC 7C 03 00 2E */ lwzx r0, r3, r0 +/* 8020C590 002094F0 7C 09 03 A6 */ mtctr r0 +/* 8020C594 002094F4 4E 80 04 20 */ bctr +/* 8020C598 002094F8 88 1D 00 30 */ lbz r0, 0x30(r29) +/* 8020C59C 002094FC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8020C5A0 00209500 41 82 00 B4 */ beq lbl_8020C654 +/* 8020C5A4 00209504 7F A3 EB 78 */ mr r3, r29 +/* 8020C5A8 00209508 7F E4 FB 78 */ mr r4, r31 +/* 8020C5AC 0020950C 4B FF FE FD */ bl Play__20CScriptStreamedMusicFR13CStateManager +/* 8020C5B0 00209510 48 00 00 A4 */ b lbl_8020C654 +/* 8020C5B4 00209514 88 1D 00 30 */ lbz r0, 0x30(r29) +/* 8020C5B8 00209518 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8020C5BC 0020951C 41 82 00 98 */ beq lbl_8020C654 +/* 8020C5C0 00209520 7F A3 EB 78 */ mr r3, r29 +/* 8020C5C4 00209524 7F E4 FB 78 */ mr r4, r31 +/* 8020C5C8 00209528 4B FF FE AD */ bl Stop__20CScriptStreamedMusicFR13CStateManager +/* 8020C5CC 0020952C 48 00 00 88 */ b lbl_8020C654 +/* 8020C5D0 00209530 88 7D 00 45 */ lbz r3, 0x45(r29) +/* 8020C5D4 00209534 28 03 00 00 */ cmplwi r3, 0 +/* 8020C5D8 00209538 40 82 00 10 */ bne lbl_8020C5E8 +/* 8020C5DC 0020953C 88 1D 00 44 */ lbz r0, 0x44(r29) +/* 8020C5E0 00209540 28 00 00 00 */ cmplwi r0, 0 +/* 8020C5E4 00209544 41 82 00 0C */ beq lbl_8020C5F0 +lbl_8020C5E8: +/* 8020C5E8 00209548 28 03 00 00 */ cmplwi r3, 0 +/* 8020C5EC 0020954C 41 82 00 68 */ beq lbl_8020C654 +lbl_8020C5F0: +/* 8020C5F0 00209550 7F A3 EB 78 */ mr r3, r29 +/* 8020C5F4 00209554 7F E4 FB 78 */ mr r4, r31 +/* 8020C5F8 00209558 4B FF FE 7D */ bl Stop__20CScriptStreamedMusicFR13CStateManager +/* 8020C5FC 0020955C 48 00 00 58 */ b lbl_8020C654 +/* 8020C600 00209560 88 1D 00 45 */ lbz r0, 0x45(r29) +/* 8020C604 00209564 28 00 00 00 */ cmplwi r0, 0 +/* 8020C608 00209568 41 82 00 18 */ beq lbl_8020C620 +/* 8020C60C 0020956C 88 7D 00 46 */ lbz r3, 0x46(r29) +/* 8020C610 00209570 48 00 01 D1 */ bl IsOneShot__20CScriptStreamedMusicFb +/* 8020C614 00209574 C0 3D 00 48 */ lfs f1, 0x48(r29) +/* 8020C618 00209578 48 15 9A D5 */ bl FadeBackIn__19CStreamAudioManagerFif +/* 8020C61C 0020957C 48 00 00 38 */ b lbl_8020C654 +lbl_8020C620: +/* 8020C620 00209580 C0 3D 00 48 */ lfs f1, 0x48(r29) +/* 8020C624 00209584 48 15 8D D5 */ bl sub_803653f8 +/* 8020C628 00209588 48 00 00 2C */ b lbl_8020C654 +/* 8020C62C 0020958C 88 1D 00 45 */ lbz r0, 0x45(r29) +/* 8020C630 00209590 28 00 00 00 */ cmplwi r0, 0 +/* 8020C634 00209594 41 82 00 18 */ beq lbl_8020C64C +/* 8020C638 00209598 88 7D 00 46 */ lbz r3, 0x46(r29) +/* 8020C63C 0020959C 48 00 01 A5 */ bl IsOneShot__20CScriptStreamedMusicFb +/* 8020C640 002095A0 C0 3D 00 4C */ lfs f1, 0x4c(r29) +/* 8020C644 002095A4 48 15 9A DD */ bl TemporaryFadeOut__19CStreamAudioManagerFif +/* 8020C648 002095A8 48 00 00 0C */ b lbl_8020C654 +lbl_8020C64C: +/* 8020C64C 002095AC C0 3D 00 4C */ lfs f1, 0x4c(r29) +/* 8020C650 002095B0 48 15 8D D5 */ bl sub_80365424 +lbl_8020C654: +/* 8020C654 002095B4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8020C658 002095B8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8020C65C 002095BC 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8020C660 002095C0 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8020C664 002095C4 7C 08 03 A6 */ mtlr r0 +/* 8020C668 002095C8 38 21 00 20 */ addi r1, r1, 0x20 +/* 8020C66C 002095CC 4E 80 00 20 */ blr + +.global IsDSPFile__20CScriptStreamedMusicFRCQ24rstl6string +IsDSPFile__20CScriptStreamedMusicFRCQ24rstl6string: +/* 8020C670 002095D0 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8020C674 002095D4 7C 08 02 A6 */ mflr r0 +/* 8020C678 002095D8 3C 80 80 3D */ lis r4, lbl_803D2778@ha +/* 8020C67C 002095DC 90 01 00 44 */ stw r0, 0x44(r1) +/* 8020C680 002095E0 38 84 27 78 */ addi r4, r4, lbl_803D2778@l +/* 8020C684 002095E4 38 84 00 0C */ addi r4, r4, 0xc +/* 8020C688 002095E8 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8020C68C 002095EC 93 C1 00 38 */ stw r30, 0x38(r1) +/* 8020C690 002095F0 7C 7E 1B 78 */ mr r30, r3 +/* 8020C694 002095F4 38 61 00 18 */ addi r3, r1, 0x18 +/* 8020C698 002095F8 93 A1 00 34 */ stw r29, 0x34(r1) +/* 8020C69C 002095FC 4B DF 86 1D */ bl string_l__4rstlFPCc +/* 8020C6A0 00209600 7F C3 F3 78 */ mr r3, r30 +/* 8020C6A4 00209604 38 81 00 18 */ addi r4, r1, 0x18 +/* 8020C6A8 00209608 3B A0 00 00 */ li r29, 0 +/* 8020C6AC 0020960C 3B E0 00 01 */ li r31, 1 +/* 8020C6B0 00209610 48 13 23 3D */ bl "CompareCaseInsensitive__13CStringExtrasFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8020C6B4 00209614 2C 03 00 00 */ cmpwi r3, 0 +/* 8020C6B8 00209618 41 82 00 34 */ beq lbl_8020C6EC +/* 8020C6BC 0020961C 3C 80 80 3D */ lis r4, lbl_803D2778@ha +/* 8020C6C0 00209620 38 61 00 08 */ addi r3, r1, 8 +/* 8020C6C4 00209624 38 84 27 78 */ addi r4, r4, lbl_803D2778@l +/* 8020C6C8 00209628 38 84 00 0F */ addi r4, r4, 0xf +/* 8020C6CC 0020962C 4B DF 85 ED */ bl string_l__4rstlFPCc +/* 8020C6D0 00209630 7F C3 F3 78 */ mr r3, r30 +/* 8020C6D4 00209634 38 81 00 08 */ addi r4, r1, 8 +/* 8020C6D8 00209638 3B A0 00 01 */ li r29, 1 +/* 8020C6DC 0020963C 48 13 24 01 */ bl "IndexOfSubstring__13CStringExtrasFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8020C6E0 00209640 2C 03 FF FF */ cmpwi r3, -1 +/* 8020C6E4 00209644 40 82 00 08 */ bne lbl_8020C6EC +/* 8020C6E8 00209648 3B E0 00 00 */ li r31, 0 +lbl_8020C6EC: +/* 8020C6EC 0020964C 7F A0 07 75 */ extsb. r0, r29 +/* 8020C6F0 00209650 41 82 00 0C */ beq lbl_8020C6FC +/* 8020C6F4 00209654 38 61 00 08 */ addi r3, r1, 8 +/* 8020C6F8 00209658 48 13 13 E9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8020C6FC: +/* 8020C6FC 0020965C 38 61 00 18 */ addi r3, r1, 0x18 +/* 8020C700 00209660 48 13 13 E1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8020C704 00209664 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8020C708 00209668 7F E3 FB 78 */ mr r3, r31 +/* 8020C70C 0020966C 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8020C710 00209670 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 8020C714 00209674 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 8020C718 00209678 7C 08 03 A6 */ mtlr r0 +/* 8020C71C 0020967C 38 21 00 40 */ addi r1, r1, 0x40 +/* 8020C720 00209680 4E 80 00 20 */ blr + +.global nullsub_42 +nullsub_42: +/* 8020C724 00209684 4E 80 00 20 */ blr + +.global "__ct__20CScriptStreamedMusicF9TUniqueIdRC11CEntityInfoRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>bRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>bffi" +"__ct__20CScriptStreamedMusicF9TUniqueIdRC11CEntityInfoRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>bRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>bffi": +/* 8020C728 00209688 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8020C72C 0020968C 7C 08 02 A6 */ mflr r0 +/* 8020C730 00209690 90 01 00 44 */ stw r0, 0x44(r1) +/* 8020C734 00209694 DB E1 00 38 */ stfd f31, 0x38(r1) +/* 8020C738 00209698 FF E0 10 90 */ fmr f31, f2 +/* 8020C73C 0020969C DB C1 00 30 */ stfd f30, 0x30(r1) +/* 8020C740 002096A0 FF C0 08 90 */ fmr f30, f1 +/* 8020C744 002096A4 BF 41 00 18 */ stmw r26, 0x18(r1) +/* 8020C748 002096A8 7C 7A 1B 78 */ mr r26, r3 +/* 8020C74C 002096AC 8B C1 00 4B */ lbz r30, 0x4b(r1) +/* 8020C750 002096B0 7D 1B 43 78 */ mr r27, r8 +/* 8020C754 002096B4 8B E1 00 4F */ lbz r31, 0x4f(r1) +/* 8020C758 002096B8 7D 3C 4B 78 */ mr r28, r9 +/* 8020C75C 002096BC 7D 5D 53 78 */ mr r29, r10 +/* 8020C760 002096C0 A0 04 00 00 */ lhz r0, 0(r4) +/* 8020C764 002096C4 7C C4 33 78 */ mr r4, r6 +/* 8020C768 002096C8 7C E6 3B 78 */ mr r6, r7 +/* 8020C76C 002096CC B0 01 00 08 */ sth r0, 8(r1) +/* 8020C770 002096D0 7C 87 23 78 */ mr r7, r4 +/* 8020C774 002096D4 38 81 00 08 */ addi r4, r1, 8 +/* 8020C778 002096D8 4B E4 4B AD */ bl "__ct__7CEntityF9TUniqueIdRC11CEntityInfobRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8020C77C 002096DC 3C 60 80 3E */ lis r3, lbl_803E7068@ha +/* 8020C780 002096E0 7F 64 DB 78 */ mr r4, r27 +/* 8020C784 002096E4 38 03 70 68 */ addi r0, r3, lbl_803E7068@l +/* 8020C788 002096E8 38 7A 00 34 */ addi r3, r26, 0x34 +/* 8020C78C 002096EC 90 1A 00 00 */ stw r0, 0(r26) +/* 8020C790 002096F0 48 13 19 D1 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8020C794 002096F4 9B 9A 00 44 */ stb r28, 0x44(r26) +/* 8020C798 002096F8 7F 63 DB 78 */ mr r3, r27 +/* 8020C79C 002096FC 4B FF FE D5 */ bl IsDSPFile__20CScriptStreamedMusicFRCQ24rstl6string +/* 8020C7A0 00209700 98 7A 00 45 */ stb r3, 0x45(r26) +/* 8020C7A4 00209704 7F 43 D3 78 */ mr r3, r26 +/* 8020C7A8 00209708 9B DA 00 46 */ stb r30, 0x46(r26) +/* 8020C7AC 0020970C 9B FA 00 47 */ stb r31, 0x47(r26) +/* 8020C7B0 00209710 D3 DA 00 48 */ stfs f30, 0x48(r26) +/* 8020C7B4 00209714 D3 FA 00 4C */ stfs f31, 0x4c(r26) +/* 8020C7B8 00209718 93 BA 00 50 */ stw r29, 0x50(r26) +/* 8020C7BC 0020971C 4B FF FF 69 */ bl nullsub_42 +/* 8020C7C0 00209720 CB E1 00 38 */ lfd f31, 0x38(r1) +/* 8020C7C4 00209724 7F 43 D3 78 */ mr r3, r26 +/* 8020C7C8 00209728 CB C1 00 30 */ lfd f30, 0x30(r1) +/* 8020C7CC 0020972C BB 41 00 18 */ lmw r26, 0x18(r1) +/* 8020C7D0 00209730 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8020C7D4 00209734 7C 08 03 A6 */ mtlr r0 +/* 8020C7D8 00209738 38 21 00 40 */ addi r1, r1, 0x40 +/* 8020C7DC 0020973C 4E 80 00 20 */ blr + +.global IsOneShot__20CScriptStreamedMusicFb +IsOneShot__20CScriptStreamedMusicFb: +/* 8020C7E0 00209740 54 60 06 3E */ clrlwi r0, r3, 0x18 +/* 8020C7E4 00209744 7C 00 00 34 */ cntlzw r0, r0 +/* 8020C7E8 00209748 54 03 D9 7E */ srwi r3, r0, 5 +/* 8020C7EC 0020974C 4E 80 00 20 */ blr + +.global sub_8020c7f0 +sub_8020c7f0: +/* 8020C7F0 00209750 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8020C7F4 00209754 7C 08 02 A6 */ mflr r0 +/* 8020C7F8 00209758 90 01 00 24 */ stw r0, 0x24(r1) +/* 8020C7FC 0020975C 38 A1 00 0C */ addi r5, r1, 0xc +/* 8020C800 00209760 89 21 00 08 */ lbz r9, 8(r1) +/* 8020C804 00209764 81 04 00 00 */ lwz r8, 0(r4) +/* 8020C808 00209768 80 E4 00 04 */ lwz r7, 4(r4) +/* 8020C80C 0020976C 38 81 00 10 */ addi r4, r1, 0x10 +/* 8020C810 00209770 80 C3 00 00 */ lwz r6, 0(r3) +/* 8020C814 00209774 80 03 00 04 */ lwz r0, 4(r3) +/* 8020C818 00209778 38 61 00 18 */ addi r3, r1, 0x18 +/* 8020C81C 0020977C 99 21 00 0C */ stb r9, 0xc(r1) +/* 8020C820 00209780 91 01 00 10 */ stw r8, 0x10(r1) +/* 8020C824 00209784 90 E1 00 14 */ stw r7, 0x14(r1) +/* 8020C828 00209788 90 C1 00 18 */ stw r6, 0x18(r1) +/* 8020C82C 0020978C 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8020C830 00209790 48 00 00 15 */ bl sub_8020c844 +/* 8020C834 00209794 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8020C838 00209798 7C 08 03 A6 */ mtlr r0 +/* 8020C83C 0020979C 38 21 00 20 */ addi r1, r1, 0x20 +/* 8020C840 002097A0 4E 80 00 20 */ blr + +.global sub_8020c844 +sub_8020c844: +/* 8020C844 002097A4 80 63 00 04 */ lwz r3, 4(r3) +/* 8020C848 002097A8 80 04 00 04 */ lwz r0, 4(r4) +/* 8020C84C 002097AC 7C 63 00 50 */ subf r3, r3, r0 +/* 8020C850 002097B0 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/ScriptObjects/CScriptSwitch.s b/asm/Kyoto_CWD/ScriptObjects/CScriptSwitch.s new file mode 100644 index 00000000..8d4fb5b3 --- /dev/null +++ b/asm/Kyoto_CWD/ScriptObjects/CScriptSwitch.s @@ -0,0 +1,151 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__13CScriptSwitchFv +__dt__13CScriptSwitchFv: +/* 801D9730 001D6690 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D9734 001D6694 7C 08 02 A6 */ mflr r0 +/* 801D9738 001D6698 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D973C 001D669C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801D9740 001D66A0 7C 9F 23 78 */ mr r31, r4 +/* 801D9744 001D66A4 93 C1 00 08 */ stw r30, 8(r1) +/* 801D9748 001D66A8 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801D974C 001D66AC 41 82 00 28 */ beq lbl_801D9774 +/* 801D9750 001D66B0 3C A0 80 3E */ lis r5, lbl_803E5C40@ha +/* 801D9754 001D66B4 38 80 00 00 */ li r4, 0 +/* 801D9758 001D66B8 38 05 5C 40 */ addi r0, r5, lbl_803E5C40@l +/* 801D975C 001D66BC 90 1E 00 00 */ stw r0, 0(r30) +/* 801D9760 001D66C0 4B E7 7B 15 */ bl __dt__7CEntityFv +/* 801D9764 001D66C4 7F E0 07 35 */ extsh. r0, r31 +/* 801D9768 001D66C8 40 81 00 0C */ ble lbl_801D9774 +/* 801D976C 001D66CC 7F C3 F3 78 */ mr r3, r30 +/* 801D9770 001D66D0 48 13 C1 C1 */ bl Free__7CMemoryFPCv +lbl_801D9774: +/* 801D9774 001D66D4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D9778 001D66D8 7F C3 F3 78 */ mr r3, r30 +/* 801D977C 001D66DC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801D9780 001D66E0 83 C1 00 08 */ lwz r30, 8(r1) +/* 801D9784 001D66E4 7C 08 03 A6 */ mtlr r0 +/* 801D9788 001D66E8 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D978C 001D66EC 4E 80 00 20 */ blr + +.global AcceptScriptMsg__13CScriptSwitchF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__13CScriptSwitchF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 801D9790 001D66F0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801D9794 001D66F4 7C 08 02 A6 */ mflr r0 +/* 801D9798 001D66F8 90 01 00 24 */ stw r0, 0x24(r1) +/* 801D979C 001D66FC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801D97A0 001D6700 7C DF 33 78 */ mr r31, r6 +/* 801D97A4 001D6704 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801D97A8 001D6708 7C BE 2B 78 */ mr r30, r5 +/* 801D97AC 001D670C 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801D97B0 001D6710 7C 9D 23 78 */ mr r29, r4 +/* 801D97B4 001D6714 93 81 00 10 */ stw r28, 0x10(r1) +/* 801D97B8 001D6718 7C 7C 1B 78 */ mr r28, r3 +/* 801D97BC 001D671C 88 03 00 30 */ lbz r0, 0x30(r3) +/* 801D97C0 001D6720 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801D97C4 001D6724 41 82 00 84 */ beq lbl_801D9848 +/* 801D97C8 001D6728 2C 1D 00 09 */ cmpwi r29, 9 +/* 801D97CC 001D672C 41 82 00 20 */ beq lbl_801D97EC +/* 801D97D0 001D6730 40 80 00 10 */ bge lbl_801D97E0 +/* 801D97D4 001D6734 2C 1D 00 03 */ cmpwi r29, 3 +/* 801D97D8 001D6738 41 82 00 20 */ beq lbl_801D97F8 +/* 801D97DC 001D673C 48 00 00 6C */ b lbl_801D9848 +lbl_801D97E0: +/* 801D97E0 001D6740 2C 1D 00 0D */ cmpwi r29, 0xd +/* 801D97E4 001D6744 41 82 00 20 */ beq lbl_801D9804 +/* 801D97E8 001D6748 48 00 00 60 */ b lbl_801D9848 +lbl_801D97EC: +/* 801D97EC 001D674C 38 00 00 01 */ li r0, 1 +/* 801D97F0 001D6750 98 1C 00 34 */ stb r0, 0x34(r28) +/* 801D97F4 001D6754 48 00 00 54 */ b lbl_801D9848 +lbl_801D97F8: +/* 801D97F8 001D6758 38 00 00 00 */ li r0, 0 +/* 801D97FC 001D675C 98 1C 00 34 */ stb r0, 0x34(r28) +/* 801D9800 001D6760 48 00 00 48 */ b lbl_801D9848 +lbl_801D9804: +/* 801D9804 001D6764 88 1C 00 34 */ lbz r0, 0x34(r28) +/* 801D9808 001D6768 28 00 00 00 */ cmplwi r0, 0 +/* 801D980C 001D676C 41 82 00 2C */ beq lbl_801D9838 +/* 801D9810 001D6770 7F E5 FB 78 */ mr r5, r31 +/* 801D9814 001D6774 38 80 00 08 */ li r4, 8 +/* 801D9818 001D6778 38 C0 FF FF */ li r6, -1 +/* 801D981C 001D677C 4B E7 78 A5 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 801D9820 001D6780 88 1C 00 35 */ lbz r0, 0x35(r28) +/* 801D9824 001D6784 28 00 00 00 */ cmplwi r0, 0 +/* 801D9828 001D6788 41 82 00 20 */ beq lbl_801D9848 +/* 801D982C 001D678C 38 00 00 00 */ li r0, 0 +/* 801D9830 001D6790 98 1C 00 34 */ stb r0, 0x34(r28) +/* 801D9834 001D6794 48 00 00 14 */ b lbl_801D9848 +lbl_801D9838: +/* 801D9838 001D6798 7F E5 FB 78 */ mr r5, r31 +/* 801D983C 001D679C 38 80 00 02 */ li r4, 2 +/* 801D9840 001D67A0 38 C0 FF FF */ li r6, -1 +/* 801D9844 001D67A4 4B E7 78 7D */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +lbl_801D9848: +/* 801D9848 001D67A8 A0 1E 00 00 */ lhz r0, 0(r30) +/* 801D984C 001D67AC 7F 83 E3 78 */ mr r3, r28 +/* 801D9850 001D67B0 7F A4 EB 78 */ mr r4, r29 +/* 801D9854 001D67B4 7F E6 FB 78 */ mr r6, r31 +/* 801D9858 001D67B8 B0 01 00 08 */ sth r0, 8(r1) +/* 801D985C 001D67BC 38 A1 00 08 */ addi r5, r1, 8 +/* 801D9860 001D67C0 4B E7 78 FD */ bl AcceptScriptMsg__7CEntityF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 801D9864 001D67C4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801D9868 001D67C8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801D986C 001D67CC 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801D9870 001D67D0 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801D9874 001D67D4 83 81 00 10 */ lwz r28, 0x10(r1) +/* 801D9878 001D67D8 7C 08 03 A6 */ mtlr r0 +/* 801D987C 001D67DC 38 21 00 20 */ addi r1, r1, 0x20 +/* 801D9880 001D67E0 4E 80 00 20 */ blr + +.global Accept__13CScriptSwitchFR8IVisitor +Accept__13CScriptSwitchFR8IVisitor: +/* 801D9884 001D67E4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D9888 001D67E8 7C 08 02 A6 */ mflr r0 +/* 801D988C 001D67EC 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D9890 001D67F0 7C 60 1B 78 */ mr r0, r3 +/* 801D9894 001D67F4 7C 83 23 78 */ mr r3, r4 +/* 801D9898 001D67F8 81 84 00 00 */ lwz r12, 0(r4) +/* 801D989C 001D67FC 7C 04 03 78 */ mr r4, r0 +/* 801D98A0 001D6800 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 801D98A4 001D6804 7D 89 03 A6 */ mtctr r12 +/* 801D98A8 001D6808 4E 80 04 21 */ bctrl +/* 801D98AC 001D680C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D98B0 001D6810 7C 08 03 A6 */ mtlr r0 +/* 801D98B4 001D6814 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D98B8 001D6818 4E 80 00 20 */ blr + +.global "__ct__13CScriptSwitchF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfobbb" +"__ct__13CScriptSwitchF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfobbb": +/* 801D98BC 001D681C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801D98C0 001D6820 7C 08 02 A6 */ mflr r0 +/* 801D98C4 001D6824 90 01 00 24 */ stw r0, 0x24(r1) +/* 801D98C8 001D6828 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801D98CC 001D682C 7D 3F 4B 78 */ mr r31, r9 +/* 801D98D0 001D6830 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801D98D4 001D6834 7D 1E 43 78 */ mr r30, r8 +/* 801D98D8 001D6838 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801D98DC 001D683C 7C 7D 1B 78 */ mr r29, r3 +/* 801D98E0 001D6840 A0 04 00 00 */ lhz r0, 0(r4) +/* 801D98E4 001D6844 7C A4 2B 78 */ mr r4, r5 +/* 801D98E8 001D6848 7C C5 33 78 */ mr r5, r6 +/* 801D98EC 001D684C 7C E6 3B 78 */ mr r6, r7 +/* 801D98F0 001D6850 B0 01 00 08 */ sth r0, 8(r1) +/* 801D98F4 001D6854 7C 87 23 78 */ mr r7, r4 +/* 801D98F8 001D6858 38 81 00 08 */ addi r4, r1, 8 +/* 801D98FC 001D685C 4B E7 7A 29 */ bl "__ct__7CEntityF9TUniqueIdRC11CEntityInfobRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801D9900 001D6860 3C 80 80 3E */ lis r4, lbl_803E5C40@ha +/* 801D9904 001D6864 7F A3 EB 78 */ mr r3, r29 +/* 801D9908 001D6868 38 04 5C 40 */ addi r0, r4, lbl_803E5C40@l +/* 801D990C 001D686C 90 1D 00 00 */ stw r0, 0(r29) +/* 801D9910 001D6870 9B DD 00 34 */ stb r30, 0x34(r29) +/* 801D9914 001D6874 9B FD 00 35 */ stb r31, 0x35(r29) +/* 801D9918 001D6878 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801D991C 001D687C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801D9920 001D6880 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801D9924 001D6884 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801D9928 001D6888 7C 08 03 A6 */ mtlr r0 +/* 801D992C 001D688C 38 21 00 20 */ addi r1, r1, 0x20 +/* 801D9930 001D6890 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/ScriptObjects/CScriptVisorFlare.s b/asm/Kyoto_CWD/ScriptObjects/CScriptVisorFlare.s new file mode 100644 index 00000000..aadbcdfa --- /dev/null +++ b/asm/Kyoto_CWD/ScriptObjects/CScriptVisorFlare.s @@ -0,0 +1,293 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global Render__17CScriptVisorFlareCFRC13CStateManager +Render__17CScriptVisorFlareCFRC13CStateManager: +/* 801D6490 001D33F0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801D6494 001D33F4 7C 08 02 A6 */ mflr r0 +/* 801D6498 001D33F8 7C 85 23 78 */ mr r5, r4 +/* 801D649C 001D33FC 7C 66 1B 78 */ mr r6, r3 +/* 801D64A0 001D3400 90 01 00 24 */ stw r0, 0x24(r1) +/* 801D64A4 001D3404 38 81 00 08 */ addi r4, r1, 8 +/* 801D64A8 001D3408 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 801D64AC 001D340C C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801D64B0 001D3410 38 66 00 E8 */ addi r3, r6, 0xe8 +/* 801D64B4 001D3414 C0 06 00 40 */ lfs f0, 0x40(r6) +/* 801D64B8 001D3418 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 801D64BC 001D341C D0 01 00 08 */ stfs f0, 8(r1) +/* 801D64C0 001D3420 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 801D64C4 001D3424 48 03 15 BD */ bl Render__11CVisorFlareCFRC9CVector3fRC13CStateManager +/* 801D64C8 001D3428 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801D64CC 001D342C 7C 08 03 A6 */ mtlr r0 +/* 801D64D0 001D3430 38 21 00 20 */ addi r1, r1, 0x20 +/* 801D64D4 001D3434 4E 80 00 20 */ blr + +.global AddToRenderer__17CScriptVisorFlareCFRC14CFrustumPlanesRC13CStateManager +AddToRenderer__17CScriptVisorFlareCFRC14CFrustumPlanesRC13CStateManager: +/* 801D64D8 001D3438 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801D64DC 001D343C 7C 08 02 A6 */ mflr r0 +/* 801D64E0 001D3440 90 01 00 44 */ stw r0, 0x44(r1) +/* 801D64E4 001D3444 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801D64E8 001D3448 7C BF 2B 78 */ mr r31, r5 +/* 801D64EC 001D344C 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801D64F0 001D3450 7C 7E 1B 78 */ mr r30, r3 +/* 801D64F4 001D3454 88 03 01 1C */ lbz r0, 0x11c(r3) +/* 801D64F8 001D3458 28 00 00 00 */ cmplwi r0, 0 +/* 801D64FC 001D345C 41 82 00 4C */ beq lbl_801D6548 +/* 801D6500 001D3460 80 DF 08 4C */ lwz r6, 0x84c(r31) +/* 801D6504 001D3464 7F C4 F3 78 */ mr r4, r30 +/* 801D6508 001D3468 38 61 00 14 */ addi r3, r1, 0x14 +/* 801D650C 001D346C C0 46 00 60 */ lfs f2, 0x60(r6) +/* 801D6510 001D3470 C0 26 00 50 */ lfs f1, 0x50(r6) +/* 801D6514 001D3474 C0 06 00 40 */ lfs f0, 0x40(r6) +/* 801D6518 001D3478 D0 01 00 08 */ stfs f0, 8(r1) +/* 801D651C 001D347C D0 21 00 0C */ stfs f1, 0xc(r1) +/* 801D6520 001D3480 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 801D6524 001D3484 81 9E 00 00 */ lwz r12, 0(r30) +/* 801D6528 001D3488 81 8C 00 64 */ lwz r12, 0x64(r12) +/* 801D652C 001D348C 7D 89 03 A6 */ mtctr r12 +/* 801D6530 001D3490 4E 80 04 21 */ bctrl +/* 801D6534 001D3494 7F C3 F3 78 */ mr r3, r30 +/* 801D6538 001D3498 7F E4 FB 78 */ mr r4, r31 +/* 801D653C 001D349C 38 A1 00 08 */ addi r5, r1, 8 +/* 801D6540 001D34A0 38 C1 00 14 */ addi r6, r1, 0x14 +/* 801D6544 001D34A4 4B E7 E5 65 */ bl EnsureRendered__6CActorCFRC13CStateManagerRC9CVector3f +lbl_801D6548: +/* 801D6548 001D34A8 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801D654C 001D34AC 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801D6550 001D34B0 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801D6554 001D34B4 7C 08 03 A6 */ mtlr r0 +/* 801D6558 001D34B8 38 21 00 40 */ addi r1, r1, 0x40 +/* 801D655C 001D34BC 4E 80 00 20 */ blr + +.global PreRender__17CScriptVisorFlareFR13CStateManagerRC14CFrustumPlanes +PreRender__17CScriptVisorFlareFR13CStateManagerRC14CFrustumPlanes: +/* 801D6560 001D34C0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801D6564 001D34C4 7C 08 02 A6 */ mflr r0 +/* 801D6568 001D34C8 90 01 00 24 */ stw r0, 0x24(r1) +/* 801D656C 001D34CC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801D6570 001D34D0 7C 7F 1B 78 */ mr r31, r3 +/* 801D6574 001D34D4 A0 03 00 08 */ lhz r0, 8(r3) +/* 801D6578 001D34D8 7C 83 23 78 */ mr r3, r4 +/* 801D657C 001D34DC 38 81 00 08 */ addi r4, r1, 8 +/* 801D6580 001D34E0 B0 01 00 08 */ sth r0, 8(r1) +/* 801D6584 001D34E4 4B E6 E3 55 */ bl RenderLast__13CStateManagerFRC9TUniqueId +/* 801D6588 001D34E8 54 60 06 3E */ clrlwi r0, r3, 0x18 +/* 801D658C 001D34EC 7C 00 00 34 */ cntlzw r0, r0 +/* 801D6590 001D34F0 54 00 D9 7E */ srwi r0, r0, 5 +/* 801D6594 001D34F4 98 1F 01 1C */ stb r0, 0x11c(r31) +/* 801D6598 001D34F8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801D659C 001D34FC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801D65A0 001D3500 7C 08 03 A6 */ mtlr r0 +/* 801D65A4 001D3504 38 21 00 20 */ addi r1, r1, 0x20 +/* 801D65A8 001D3508 4E 80 00 20 */ blr + +.global AcceptScriptMsg__17CScriptVisorFlareF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__17CScriptVisorFlareF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 801D65AC 001D350C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D65B0 001D3510 7C 08 02 A6 */ mflr r0 +/* 801D65B4 001D3514 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D65B8 001D3518 A0 05 00 00 */ lhz r0, 0(r5) +/* 801D65BC 001D351C 38 A1 00 08 */ addi r5, r1, 8 +/* 801D65C0 001D3520 B0 01 00 08 */ sth r0, 8(r1) +/* 801D65C4 001D3524 4B E7 D0 51 */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 801D65C8 001D3528 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D65CC 001D352C 7C 08 03 A6 */ mtlr r0 +/* 801D65D0 001D3530 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D65D4 001D3534 4E 80 00 20 */ blr + +.global Think__17CScriptVisorFlareFfR13CStateManager +Think__17CScriptVisorFlareFfR13CStateManager: +/* 801D65D8 001D3538 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801D65DC 001D353C 7C 08 02 A6 */ mflr r0 +/* 801D65E0 001D3540 90 01 00 24 */ stw r0, 0x24(r1) +/* 801D65E4 001D3544 88 03 00 30 */ lbz r0, 0x30(r3) +/* 801D65E8 001D3548 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801D65EC 001D354C 41 82 00 30 */ beq lbl_801D661C +/* 801D65F0 001D3550 C0 63 00 60 */ lfs f3, 0x60(r3) +/* 801D65F4 001D3554 7C 65 1B 78 */ mr r5, r3 +/* 801D65F8 001D3558 C0 43 00 50 */ lfs f2, 0x50(r3) +/* 801D65FC 001D355C 7C 86 23 78 */ mr r6, r4 +/* 801D6600 001D3560 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801D6604 001D3564 38 63 00 E8 */ addi r3, r3, 0xe8 +/* 801D6608 001D3568 38 81 00 08 */ addi r4, r1, 8 +/* 801D660C 001D356C D0 01 00 08 */ stfs f0, 8(r1) +/* 801D6610 001D3570 D0 41 00 0C */ stfs f2, 0xc(r1) +/* 801D6614 001D3574 D0 61 00 10 */ stfs f3, 0x10(r1) +/* 801D6618 001D3578 48 03 19 41 */ bl Update__11CVisorFlareFfRC9CVector3fPC6CActorR13CStateManager +lbl_801D661C: +/* 801D661C 001D357C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801D6620 001D3580 7C 08 03 A6 */ mtlr r0 +/* 801D6624 001D3584 38 21 00 20 */ addi r1, r1, 0x20 +/* 801D6628 001D3588 4E 80 00 20 */ blr + +.global Accept__17CScriptVisorFlareFR8IVisitor +Accept__17CScriptVisorFlareFR8IVisitor: +/* 801D662C 001D358C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D6630 001D3590 7C 08 02 A6 */ mflr r0 +/* 801D6634 001D3594 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D6638 001D3598 7C 60 1B 78 */ mr r0, r3 +/* 801D663C 001D359C 7C 83 23 78 */ mr r3, r4 +/* 801D6640 001D35A0 81 84 00 00 */ lwz r12, 0(r4) +/* 801D6644 001D35A4 7C 04 03 78 */ mr r4, r0 +/* 801D6648 001D35A8 81 8C 00 D0 */ lwz r12, 0xd0(r12) +/* 801D664C 001D35AC 7D 89 03 A6 */ mtctr r12 +/* 801D6650 001D35B0 4E 80 04 21 */ bctrl +/* 801D6654 001D35B4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D6658 001D35B8 7C 08 03 A6 */ mtlr r0 +/* 801D665C 001D35BC 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D6660 001D35C0 4E 80 00 20 */ blr + +.global __dt__17CScriptVisorFlareFv +__dt__17CScriptVisorFlareFv: +/* 801D6664 001D35C4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D6668 001D35C8 7C 08 02 A6 */ mflr r0 +/* 801D666C 001D35CC 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D6670 001D35D0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801D6674 001D35D4 7C 9F 23 78 */ mr r31, r4 +/* 801D6678 001D35D8 93 C1 00 08 */ stw r30, 8(r1) +/* 801D667C 001D35DC 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801D6680 001D35E0 41 82 00 38 */ beq lbl_801D66B8 +/* 801D6684 001D35E4 3C 80 80 3E */ lis r4, lbl_803E5830@ha +/* 801D6688 001D35E8 38 7E 00 E8 */ addi r3, r30, 0xe8 +/* 801D668C 001D35EC 38 04 58 30 */ addi r0, r4, lbl_803E5830@l +/* 801D6690 001D35F0 38 80 FF FF */ li r4, -1 +/* 801D6694 001D35F4 90 1E 00 00 */ stw r0, 0(r30) +/* 801D6698 001D35F8 48 00 00 3D */ bl sub_801d66d4 +/* 801D669C 001D35FC 7F C3 F3 78 */ mr r3, r30 +/* 801D66A0 001D3600 38 80 00 00 */ li r4, 0 +/* 801D66A4 001D3604 4B E7 F0 4D */ bl __dt__6CActorFv +/* 801D66A8 001D3608 7F E0 07 35 */ extsh. r0, r31 +/* 801D66AC 001D360C 40 81 00 0C */ ble lbl_801D66B8 +/* 801D66B0 001D3610 7F C3 F3 78 */ mr r3, r30 +/* 801D66B4 001D3614 48 13 F2 7D */ bl Free__7CMemoryFPCv +lbl_801D66B8: +/* 801D66B8 001D3618 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D66BC 001D361C 7F C3 F3 78 */ mr r3, r30 +/* 801D66C0 001D3620 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801D66C4 001D3624 83 C1 00 08 */ lwz r30, 8(r1) +/* 801D66C8 001D3628 7C 08 03 A6 */ mtlr r0 +/* 801D66CC 001D362C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D66D0 001D3630 4E 80 00 20 */ blr + +.global sub_801d66d4 +sub_801d66d4: +/* 801D66D4 001D3634 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D66D8 001D3638 7C 08 02 A6 */ mflr r0 +/* 801D66DC 001D363C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D66E0 001D3640 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801D66E4 001D3644 7C 9F 23 78 */ mr r31, r4 +/* 801D66E8 001D3648 93 C1 00 08 */ stw r30, 8(r1) +/* 801D66EC 001D364C 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801D66F0 001D3650 41 82 00 20 */ beq lbl_801D6710 +/* 801D66F4 001D3654 38 7E 00 04 */ addi r3, r30, 4 +/* 801D66F8 001D3658 38 80 FF FF */ li r4, -1 +/* 801D66FC 001D365C 4B EF 70 BD */ bl sub_800cd7b8 +/* 801D6700 001D3660 7F E0 07 35 */ extsh. r0, r31 +/* 801D6704 001D3664 40 81 00 0C */ ble lbl_801D6710 +/* 801D6708 001D3668 7F C3 F3 78 */ mr r3, r30 +/* 801D670C 001D366C 48 13 F2 25 */ bl Free__7CMemoryFPCv +lbl_801D6710: +/* 801D6710 001D3670 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D6714 001D3674 7F C3 F3 78 */ mr r3, r30 +/* 801D6718 001D3678 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801D671C 001D367C 83 C1 00 08 */ lwz r30, 8(r1) +/* 801D6720 001D3680 7C 08 03 A6 */ mtlr r0 +/* 801D6724 001D3684 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D6728 001D3688 4E 80 00 20 */ blr + +.global "__ct__17CScriptVisorFlareF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfobRC9CVector3fQ211CVisorFlare10EBlendModebfffRCQ24rstl60vector" +"__ct__17CScriptVisorFlareF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfobRC9CVector3fQ211CVisorFlare10EBlendModebfffRCQ24rstl60vector": +/* 801D672C 001D368C 94 21 FE B0 */ stwu r1, -0x150(r1) +/* 801D6730 001D3690 7C 08 02 A6 */ mflr r0 +/* 801D6734 001D3694 90 01 01 54 */ stw r0, 0x154(r1) +/* 801D6738 001D3698 DB E1 01 48 */ stfd f31, 0x148(r1) +/* 801D673C 001D369C FF E0 18 90 */ fmr f31, f3 +/* 801D6740 001D36A0 DB C1 01 40 */ stfd f30, 0x140(r1) +/* 801D6744 001D36A4 FF C0 10 90 */ fmr f30, f2 +/* 801D6748 001D36A8 DB A1 01 38 */ stfd f29, 0x138(r1) +/* 801D674C 001D36AC FF A0 08 90 */ fmr f29, f1 +/* 801D6750 001D36B0 BE A1 01 0C */ stmw r21, 0x10c(r1) +/* 801D6754 001D36B4 7C 76 1B 78 */ mr r22, r3 +/* 801D6758 001D36B8 83 A1 01 58 */ lwz r29, 0x158(r1) +/* 801D675C 001D36BC 7C 95 23 78 */ mr r21, r4 +/* 801D6760 001D36C0 83 C1 01 5C */ lwz r30, 0x15c(r1) +/* 801D6764 001D36C4 7C B7 2B 78 */ mr r23, r5 +/* 801D6768 001D36C8 83 E1 01 60 */ lwz r31, 0x160(r1) +/* 801D676C 001D36CC 7C D8 33 78 */ mr r24, r6 +/* 801D6770 001D36D0 7C F9 3B 78 */ mr r25, r7 +/* 801D6774 001D36D4 7D 1A 43 78 */ mr r26, r8 +/* 801D6778 001D36D8 7D 3B 4B 78 */ mr r27, r9 +/* 801D677C 001D36DC 7D 5C 53 78 */ mr r28, r10 +/* 801D6780 001D36E0 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 801D6784 001D36E4 4B E6 40 21 */ bl CModelDataNull__10CModelDataFv +/* 801D6788 001D36E8 38 61 00 50 */ addi r3, r1, 0x50 +/* 801D678C 001D36EC 4B E4 46 AD */ bl None__16CActorParametersFv +/* 801D6790 001D36F0 A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 801D6794 001D36F4 38 00 00 00 */ li r0, 0 +/* 801D6798 001D36F8 80 AD 91 B8 */ lwz r5, lbl_805A7D78@sda21(r13) +/* 801D679C 001D36FC 38 60 00 00 */ li r3, 0 +/* 801D67A0 001D3700 B0 81 00 10 */ sth r4, 0x10(r1) +/* 801D67A4 001D3704 38 80 00 01 */ li r4, 1 +/* 801D67A8 001D3708 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801D67AC 001D370C 90 01 00 18 */ stw r0, 0x18(r1) +/* 801D67B0 001D3710 48 1B 37 45 */ bl __shl2i +/* 801D67B4 001D3714 80 01 00 18 */ lwz r0, 0x18(r1) +/* 801D67B8 001D3718 80 A1 00 1C */ lwz r5, 0x1c(r1) +/* 801D67BC 001D371C 7C 03 1B 78 */ or r3, r0, r3 +/* 801D67C0 001D3720 A0 15 00 00 */ lhz r0, 0(r21) +/* 801D67C4 001D3724 7C A5 23 78 */ or r5, r5, r4 +/* 801D67C8 001D3728 90 61 00 18 */ stw r3, 0x18(r1) +/* 801D67CC 001D372C 7F 44 D3 78 */ mr r4, r26 +/* 801D67D0 001D3730 38 61 00 20 */ addi r3, r1, 0x20 +/* 801D67D4 001D3734 90 A1 00 1C */ stw r5, 0x1c(r1) +/* 801D67D8 001D3738 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801D67DC 001D373C 48 13 C9 65 */ bl Translate__12CTransform4fFRC9CVector3f +/* 801D67E0 001D3740 38 61 00 50 */ addi r3, r1, 0x50 +/* 801D67E4 001D3744 38 01 00 10 */ addi r0, r1, 0x10 +/* 801D67E8 001D3748 90 61 00 08 */ stw r3, 8(r1) +/* 801D67EC 001D374C 7E C3 B3 78 */ mr r3, r22 +/* 801D67F0 001D3750 7F 25 CB 78 */ mr r5, r25 +/* 801D67F4 001D3754 7E E6 BB 78 */ mr r6, r23 +/* 801D67F8 001D3758 90 01 00 0C */ stw r0, 0xc(r1) +/* 801D67FC 001D375C 7F 07 C3 78 */ mr r7, r24 +/* 801D6800 001D3760 38 81 00 14 */ addi r4, r1, 0x14 +/* 801D6804 001D3764 39 01 00 20 */ addi r8, r1, 0x20 +/* 801D6808 001D3768 39 21 00 B8 */ addi r9, r1, 0xb8 +/* 801D680C 001D376C 39 41 00 18 */ addi r10, r1, 0x18 +/* 801D6810 001D3770 4B E7 F0 11 */ bl "__ct__6CActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC16CActorParameters9TUniqueId" +/* 801D6814 001D3774 38 61 00 50 */ addi r3, r1, 0x50 +/* 801D6818 001D3778 38 80 FF FF */ li r4, -1 +/* 801D681C 001D377C 4B F2 FD ED */ bl __dt__16CActorParametersFv +/* 801D6820 001D3780 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 801D6824 001D3784 38 80 FF FF */ li r4, -1 +/* 801D6828 001D3788 4B F4 02 25 */ bl __dt__10CModelDataFv +/* 801D682C 001D378C 3C 60 80 3E */ lis r3, lbl_803E5830@ha +/* 801D6830 001D3790 FC 20 E8 90 */ fmr f1, f29 +/* 801D6834 001D3794 38 03 58 30 */ addi r0, r3, lbl_803E5830@l +/* 801D6838 001D3798 FC 40 F0 90 */ fmr f2, f30 +/* 801D683C 001D379C FC 60 F8 90 */ fmr f3, f31 +/* 801D6840 001D37A0 90 16 00 00 */ stw r0, 0(r22) +/* 801D6844 001D37A4 7F 64 DB 78 */ mr r4, r27 +/* 801D6848 001D37A8 7F 85 E3 78 */ mr r5, r28 +/* 801D684C 001D37AC 7F A6 EB 78 */ mr r6, r29 +/* 801D6850 001D37B0 7F C7 F3 78 */ mr r7, r30 +/* 801D6854 001D37B4 7F E8 FB 78 */ mr r8, r31 +/* 801D6858 001D37B8 38 76 00 E8 */ addi r3, r22, 0xe8 +/* 801D685C 001D37BC 48 03 1A 7D */ bl "__ct__11CVisorFlareFQ211CVisorFlare10EBlendModebfffRCQ24rstl60vector" +/* 801D6860 001D37C0 38 00 00 01 */ li r0, 1 +/* 801D6864 001D37C4 38 80 00 02 */ li r4, 2 +/* 801D6868 001D37C8 98 16 01 1C */ stb r0, 0x11c(r22) +/* 801D686C 001D37CC 7E C3 B3 78 */ mr r3, r22 +/* 801D6870 001D37D0 88 16 00 E6 */ lbz r0, 0xe6(r22) +/* 801D6874 001D37D4 50 80 1E F8 */ rlwimi r0, r4, 3, 0x1b, 0x1c +/* 801D6878 001D37D8 98 16 00 E6 */ stb r0, 0xe6(r22) +/* 801D687C 001D37DC CB E1 01 48 */ lfd f31, 0x148(r1) +/* 801D6880 001D37E0 CB C1 01 40 */ lfd f30, 0x140(r1) +/* 801D6884 001D37E4 CB A1 01 38 */ lfd f29, 0x138(r1) +/* 801D6888 001D37E8 BA A1 01 0C */ lmw r21, 0x10c(r1) +/* 801D688C 001D37EC 80 01 01 54 */ lwz r0, 0x154(r1) +/* 801D6890 001D37F0 7C 08 03 A6 */ mtlr r0 +/* 801D6894 001D37F4 38 21 01 50 */ addi r1, r1, 0x150 +/* 801D6898 001D37F8 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/ScriptObjects/CScriptVisorGoo.s b/asm/Kyoto_CWD/ScriptObjects/CScriptVisorGoo.s new file mode 100644 index 00000000..7d0425c4 --- /dev/null +++ b/asm/Kyoto_CWD/ScriptObjects/CScriptVisorGoo.s @@ -0,0 +1,666 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global Accept__15CScriptVisorGooFR8IVisitor +Accept__15CScriptVisorGooFR8IVisitor: +/* 801D6FC4 001D3F24 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D6FC8 001D3F28 7C 08 02 A6 */ mflr r0 +/* 801D6FCC 001D3F2C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D6FD0 001D3F30 7C 60 1B 78 */ mr r0, r3 +/* 801D6FD4 001D3F34 7C 83 23 78 */ mr r3, r4 +/* 801D6FD8 001D3F38 81 84 00 00 */ lwz r12, 0(r4) +/* 801D6FDC 001D3F3C 7C 04 03 78 */ mr r4, r0 +/* 801D6FE0 001D3F40 81 8C 00 08 */ lwz r12, 8(r12) +/* 801D6FE4 001D3F44 7D 89 03 A6 */ mtctr r12 +/* 801D6FE8 001D3F48 4E 80 04 21 */ bctrl +/* 801D6FEC 001D3F4C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D6FF0 001D3F50 7C 08 03 A6 */ mtlr r0 +/* 801D6FF4 001D3F54 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D6FF8 001D3F58 4E 80 00 20 */ blr + +.global AddToRenderer__15CScriptVisorGooCFRC14CFrustumPlanesRC13CStateManager +AddToRenderer__15CScriptVisorGooCFRC14CFrustumPlanesRC13CStateManager: +/* 801D6FFC 001D3F5C 4E 80 00 20 */ blr + +.global Render__15CScriptVisorGooCFRC13CStateManager +Render__15CScriptVisorGooCFRC13CStateManager: +/* 801D7000 001D3F60 4E 80 00 20 */ blr + +.global AcceptScriptMsg__15CScriptVisorGooF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__15CScriptVisorGooF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 801D7004 001D3F64 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801D7008 001D3F68 7C 08 02 A6 */ mflr r0 +/* 801D700C 001D3F6C 90 01 00 24 */ stw r0, 0x24(r1) +/* 801D7010 001D3F70 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801D7014 001D3F74 7C DF 33 78 */ mr r31, r6 +/* 801D7018 001D3F78 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801D701C 001D3F7C 7C BE 2B 78 */ mr r30, r5 +/* 801D7020 001D3F80 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801D7024 001D3F84 7C 9D 23 78 */ mr r29, r4 +/* 801D7028 001D3F88 2C 1D 00 01 */ cmpwi r29, 1 +/* 801D702C 001D3F8C 93 81 00 10 */ stw r28, 0x10(r1) +/* 801D7030 001D3F90 7C 7C 1B 78 */ mr r28, r3 +/* 801D7034 001D3F94 41 82 00 08 */ beq lbl_801D703C +/* 801D7038 001D3F98 48 00 00 34 */ b lbl_801D706C +lbl_801D703C: +/* 801D703C 001D3F9C 80 7C 00 FC */ lwz r3, 0xfc(r28) +/* 801D7040 001D3FA0 3C 03 00 01 */ addis r0, r3, 1 +/* 801D7044 001D3FA4 28 00 FF FF */ cmplwi r0, 0xffff +/* 801D7048 001D3FA8 41 82 00 0C */ beq lbl_801D7054 +/* 801D704C 001D3FAC 38 7C 00 E8 */ addi r3, r28, 0xe8 +/* 801D7050 001D3FB0 48 16 9D 35 */ bl Lock__6CTokenFv +lbl_801D7054: +/* 801D7054 001D3FB4 80 7C 01 00 */ lwz r3, 0x100(r28) +/* 801D7058 001D3FB8 3C 03 00 01 */ addis r0, r3, 1 +/* 801D705C 001D3FBC 28 00 FF FF */ cmplwi r0, 0xffff +/* 801D7060 001D3FC0 41 82 00 0C */ beq lbl_801D706C +/* 801D7064 001D3FC4 38 7C 00 F0 */ addi r3, r28, 0xf0 +/* 801D7068 001D3FC8 48 16 9D 1D */ bl Lock__6CTokenFv +lbl_801D706C: +/* 801D706C 001D3FCC A0 1E 00 00 */ lhz r0, 0(r30) +/* 801D7070 001D3FD0 7F 83 E3 78 */ mr r3, r28 +/* 801D7074 001D3FD4 7F A4 EB 78 */ mr r4, r29 +/* 801D7078 001D3FD8 7F E6 FB 78 */ mr r6, r31 +/* 801D707C 001D3FDC B0 01 00 08 */ sth r0, 8(r1) +/* 801D7080 001D3FE0 38 A1 00 08 */ addi r5, r1, 8 +/* 801D7084 001D3FE4 4B E7 C5 91 */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 801D7088 001D3FE8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801D708C 001D3FEC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801D7090 001D3FF0 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801D7094 001D3FF4 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801D7098 001D3FF8 83 81 00 10 */ lwz r28, 0x10(r1) +/* 801D709C 001D3FFC 7C 08 03 A6 */ mtlr r0 +/* 801D70A0 001D4000 38 21 00 20 */ addi r1, r1, 0x20 +/* 801D70A4 001D4004 4E 80 00 20 */ blr + +.global GetTouchBounds__15CScriptVisorGooCFv +GetTouchBounds__15CScriptVisorGooCFv: +/* 801D70A8 001D4008 38 00 00 00 */ li r0, 0 +/* 801D70AC 001D400C 98 03 00 18 */ stb r0, 0x18(r3) +/* 801D70B0 001D4010 4E 80 00 20 */ blr + +.global Touch__15CScriptVisorGooFR6CActorR13CStateManager +Touch__15CScriptVisorGooFR6CActorR13CStateManager: +/* 801D70B4 001D4014 4E 80 00 20 */ blr + +.global Think__15CScriptVisorGooFfR13CStateManager +Think__15CScriptVisorGooFfR13CStateManager: +/* 801D70B8 001D4018 94 21 FE A0 */ stwu r1, -0x160(r1) +/* 801D70BC 001D401C 7C 08 02 A6 */ mflr r0 +/* 801D70C0 001D4020 90 01 01 64 */ stw r0, 0x164(r1) +/* 801D70C4 001D4024 DB E1 01 50 */ stfd f31, 0x150(r1) +/* 801D70C8 001D4028 F3 E1 01 58 */ psq_st f31, 344(r1), 0, qr0 +/* 801D70CC 001D402C DB C1 01 40 */ stfd f30, 0x140(r1) +/* 801D70D0 001D4030 F3 C1 01 48 */ psq_st f30, 328(r1), 0, qr0 +/* 801D70D4 001D4034 DB A1 01 30 */ stfd f29, 0x130(r1) +/* 801D70D8 001D4038 F3 A1 01 38 */ psq_st f29, 312(r1), 0, qr0 +/* 801D70DC 001D403C DB 81 01 20 */ stfd f28, 0x120(r1) +/* 801D70E0 001D4040 F3 81 01 28 */ psq_st f28, 296(r1), 0, qr0 +/* 801D70E4 001D4044 BE A1 00 F4 */ stmw r21, 0xf4(r1) +/* 801D70E8 001D4048 88 03 00 30 */ lbz r0, 0x30(r3) +/* 801D70EC 001D404C 7C 7C 1B 78 */ mr r28, r3 +/* 801D70F0 001D4050 7C 9D 23 78 */ mr r29, r4 +/* 801D70F4 001D4054 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801D70F8 001D4058 41 82 04 78 */ beq lbl_801D7570 +/* 801D70FC 001D405C 80 7C 00 FC */ lwz r3, 0xfc(r28) +/* 801D7100 001D4060 38 80 00 00 */ li r4, 0 +/* 801D7104 001D4064 3C 03 00 01 */ addis r0, r3, 1 +/* 801D7108 001D4068 28 00 FF FF */ cmplwi r0, 0xffff +/* 801D710C 001D406C 41 82 00 44 */ beq lbl_801D7150 +/* 801D7110 001D4070 80 7C 00 E8 */ lwz r3, 0xe8(r28) +/* 801D7114 001D4074 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801D7118 001D4078 28 00 00 00 */ cmplwi r0, 0 +/* 801D711C 001D407C 41 82 00 48 */ beq lbl_801D7164 +/* 801D7120 001D4080 80 7C 01 00 */ lwz r3, 0x100(r28) +/* 801D7124 001D4084 3C 03 00 01 */ addis r0, r3, 1 +/* 801D7128 001D4088 28 00 FF FF */ cmplwi r0, 0xffff +/* 801D712C 001D408C 41 82 00 1C */ beq lbl_801D7148 +/* 801D7130 001D4090 80 7C 00 F0 */ lwz r3, 0xf0(r28) +/* 801D7134 001D4094 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801D7138 001D4098 28 00 00 00 */ cmplwi r0, 0 +/* 801D713C 001D409C 41 82 00 28 */ beq lbl_801D7164 +/* 801D7140 001D40A0 38 80 00 01 */ li r4, 1 +/* 801D7144 001D40A4 48 00 00 20 */ b lbl_801D7164 +lbl_801D7148: +/* 801D7148 001D40A8 38 80 00 01 */ li r4, 1 +/* 801D714C 001D40AC 48 00 00 18 */ b lbl_801D7164 +lbl_801D7150: +/* 801D7150 001D40B0 80 7C 00 F0 */ lwz r3, 0xf0(r28) +/* 801D7154 001D40B4 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801D7158 001D40B8 28 00 00 00 */ cmplwi r0, 0 +/* 801D715C 001D40BC 41 82 00 08 */ beq lbl_801D7164 +/* 801D7160 001D40C0 38 80 00 01 */ li r4, 1 +lbl_801D7164: +/* 801D7164 001D40C4 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 801D7168 001D40C8 41 82 04 08 */ beq lbl_801D7570 +/* 801D716C 001D40CC 80 9D 08 4C */ lwz r4, 0x84c(r29) +/* 801D7170 001D40D0 3A A0 00 00 */ li r21, 0 +/* 801D7174 001D40D4 80 04 02 F4 */ lwz r0, 0x2f4(r4) +/* 801D7178 001D40D8 2C 00 00 00 */ cmpwi r0, 0 +/* 801D717C 001D40DC 40 82 03 DC */ bne lbl_801D7558 +/* 801D7180 001D40E0 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 801D7184 001D40E4 48 0A DB F9 */ bl GetEyePosition__7CPlayerCFv +/* 801D7188 001D40E8 C0 3C 00 50 */ lfs f1, 0x50(r28) +/* 801D718C 001D40EC 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 801D7190 001D40F0 C0 01 00 A8 */ lfs f0, 0xa8(r1) +/* 801D7194 001D40F4 C0 7C 00 60 */ lfs f3, 0x60(r28) +/* 801D7198 001D40F8 C0 41 00 AC */ lfs f2, 0xac(r1) +/* 801D719C 001D40FC EC 81 00 28 */ fsubs f4, f1, f0 +/* 801D71A0 001D4100 C0 3C 00 40 */ lfs f1, 0x40(r28) +/* 801D71A4 001D4104 C0 01 00 A4 */ lfs f0, 0xa4(r1) +/* 801D71A8 001D4108 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801D71AC 001D410C D0 81 00 B4 */ stfs f4, 0xb4(r1) +/* 801D71B0 001D4110 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801D71B4 001D4114 D0 41 00 B8 */ stfs f2, 0xb8(r1) +/* 801D71B8 001D4118 D0 01 00 B0 */ stfs f0, 0xb0(r1) +/* 801D71BC 001D411C 48 13 D6 FD */ bl Magnitude__9CVector3fCFv +/* 801D71C0 001D4120 FF E0 08 90 */ fmr f31, f1 +/* 801D71C4 001D4124 C0 1C 01 04 */ lfs f0, 0x104(r28) +/* 801D71C8 001D4128 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 801D71CC 001D412C 4C 41 13 82 */ cror 2, 1, 2 +/* 801D71D0 001D4130 40 82 03 88 */ bne lbl_801D7558 +/* 801D71D4 001D4134 C0 1C 01 08 */ lfs f0, 0x108(r28) +/* 801D71D8 001D4138 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 801D71DC 001D413C 4C 40 13 82 */ cror 2, 0, 2 +/* 801D71E0 001D4140 40 82 03 78 */ bne lbl_801D7558 +/* 801D71E4 001D4144 88 1C 01 18 */ lbz r0, 0x118(r28) +/* 801D71E8 001D4148 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801D71EC 001D414C 41 82 00 D8 */ beq lbl_801D72C4 +/* 801D71F0 001D4150 80 9D 08 70 */ lwz r4, 0x870(r29) +/* 801D71F4 001D4154 7F A5 EB 78 */ mr r5, r29 +/* 801D71F8 001D4158 38 61 00 BC */ addi r3, r1, 0xbc +/* 801D71FC 001D415C 4B E3 37 6D */ bl GetCurrentCameraTransform__14CCameraManagerCFRC13CStateManager +/* 801D7200 001D4160 C0 41 00 E0 */ lfs f2, 0xe0(r1) +/* 801D7204 001D4164 38 61 00 98 */ addi r3, r1, 0x98 +/* 801D7208 001D4168 C0 21 00 D0 */ lfs f1, 0xd0(r1) +/* 801D720C 001D416C 38 81 00 8C */ addi r4, r1, 0x8c +/* 801D7210 001D4170 C0 01 00 C0 */ lfs f0, 0xc0(r1) +/* 801D7214 001D4174 D0 21 00 90 */ stfs f1, 0x90(r1) +/* 801D7218 001D4178 D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 801D721C 001D417C D0 41 00 94 */ stfs f2, 0x94(r1) +/* 801D7220 001D4180 48 13 D6 31 */ bl AsNormalized__9CVector3fCFv +/* 801D7224 001D4184 C0 02 AC 50 */ lfs f0, lbl_805AC970@sda21(r2) +/* 801D7228 001D4188 38 61 00 80 */ addi r3, r1, 0x80 +/* 801D722C 001D418C C3 C1 00 98 */ lfs f30, 0x98(r1) +/* 801D7230 001D4190 38 81 00 B0 */ addi r4, r1, 0xb0 +/* 801D7234 001D4194 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801D7238 001D4198 C3 A1 00 9C */ lfs f29, 0x9c(r1) +/* 801D723C 001D419C C3 81 00 A0 */ lfs f28, 0xa0(r1) +/* 801D7240 001D41A0 48 13 D6 11 */ bl AsNormalized__9CVector3fCFv +/* 801D7244 001D41A4 C0 01 00 84 */ lfs f0, 0x84(r1) +/* 801D7248 001D41A8 C0 21 00 80 */ lfs f1, 0x80(r1) +/* 801D724C 001D41AC EC 00 07 72 */ fmuls f0, f0, f29 +/* 801D7250 001D41B0 C0 41 00 88 */ lfs f2, 0x88(r1) +/* 801D7254 001D41B4 EC 01 07 BA */ fmadds f0, f1, f30, f0 +/* 801D7258 001D41B8 EC 22 07 3A */ fmadds f1, f2, f28, f0 +/* 801D725C 001D41BC 48 13 DA 79 */ bl FastArcCosR__5CMathFf +/* 801D7260 001D41C0 C0 42 AC 58 */ lfs f2, lbl_805AC978@sda21(r2) +/* 801D7264 001D41C4 C0 02 AC 5C */ lfs f0, lbl_805AC97C@sda21(r2) +/* 801D7268 001D41C8 EC 22 00 72 */ fmuls f1, f2, f1 +/* 801D726C 001D41CC C0 42 AC 54 */ lfs f2, lbl_805AC974@sda21(r2) +/* 801D7270 001D41D0 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 801D7274 001D41D4 EC 62 00 72 */ fmuls f3, f2, f1 +/* 801D7278 001D41D8 40 80 00 34 */ bge lbl_801D72AC +/* 801D727C 001D41DC EC 20 F8 24 */ fdivs f1, f0, f31 +/* 801D7280 001D41E0 C0 41 00 24 */ lfs f2, 0x24(r1) +/* 801D7284 001D41E4 C0 0D 91 C0 */ lfs f0, lbl_805A7D80@sda21(r13) +/* 801D7288 001D41E8 EC 22 00 72 */ fmuls f1, f2, f1 +/* 801D728C 001D41EC FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801D7290 001D41F0 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 801D7294 001D41F4 40 80 00 0C */ bge lbl_801D72A0 +/* 801D7298 001D41F8 38 6D 91 C0 */ addi r3, r13, lbl_805A7D80@sda21 +/* 801D729C 001D41FC 48 00 00 08 */ b lbl_801D72A4 +lbl_801D72A0: +/* 801D72A0 001D4200 38 61 00 24 */ addi r3, r1, 0x24 +lbl_801D72A4: +/* 801D72A4 001D4204 C0 03 00 00 */ lfs f0, 0(r3) +/* 801D72A8 001D4208 D0 01 00 24 */ stfs f0, 0x24(r1) +lbl_801D72AC: +/* 801D72AC 001D420C C0 01 00 24 */ lfs f0, 0x24(r1) +/* 801D72B0 001D4210 FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 801D72B4 001D4214 4C 40 13 82 */ cror 2, 0, 2 +/* 801D72B8 001D4218 40 82 00 10 */ bne lbl_801D72C8 +/* 801D72BC 001D421C 3A A0 00 01 */ li r21, 1 +/* 801D72C0 001D4220 48 00 00 08 */ b lbl_801D72C8 +lbl_801D72C4: +/* 801D72C4 001D4224 3A A0 00 01 */ li r21, 1 +lbl_801D72C8: +/* 801D72C8 001D4228 56 A0 06 3F */ clrlwi. r0, r21, 0x18 +/* 801D72CC 001D422C 41 82 02 8C */ beq lbl_801D7558 +/* 801D72D0 001D4230 C0 5C 01 08 */ lfs f2, 0x108(r28) +/* 801D72D4 001D4234 C0 1C 01 04 */ lfs f0, 0x104(r28) +/* 801D72D8 001D4238 EC 82 F8 28 */ fsubs f4, f2, f31 +/* 801D72DC 001D423C C0 22 AC 60 */ lfs f1, lbl_805AC980@sda21(r2) +/* 801D72E0 001D4240 EC 62 00 28 */ fsubs f3, f2, f0 +/* 801D72E4 001D4244 C0 1C 01 10 */ lfs f0, 0x110(r28) +/* 801D72E8 001D4248 C0 5C 01 0C */ lfs f2, 0x10c(r28) +/* 801D72EC 001D424C 80 7D 09 00 */ lwz r3, 0x900(r29) +/* 801D72F0 001D4250 EC 64 18 24 */ fdivs f3, f4, f3 +/* 801D72F4 001D4254 EC 21 18 28 */ fsubs f1, f1, f3 +/* 801D72F8 001D4258 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801D72FC 001D425C EF 83 00 BA */ fmadds f28, f3, f2, f0 +/* 801D7300 001D4260 48 13 B1 DD */ bl Float__9CRandom16Fv +/* 801D7304 001D4264 C0 02 AC 64 */ lfs f0, lbl_805AC984@sda21(r2) +/* 801D7308 001D4268 EC 00 00 72 */ fmuls f0, f0, f1 +/* 801D730C 001D426C FC 00 E0 40 */ fcmpo cr0, f0, f28 +/* 801D7310 001D4270 4C 40 13 82 */ cror 2, 0, 2 +/* 801D7314 001D4274 40 82 02 44 */ bne lbl_801D7558 +/* 801D7318 001D4278 3C 60 80 3D */ lis r3, lbl_803D1B90@ha +/* 801D731C 001D427C 3B 60 00 00 */ li r27, 0 +/* 801D7320 001D4280 38 83 1B 90 */ addi r4, r3, lbl_803D1B90@l +/* 801D7324 001D4284 3B 40 00 00 */ li r26, 0 +/* 801D7328 001D4288 3B 20 00 00 */ li r25, 0 +/* 801D732C 001D428C 3B 00 00 00 */ li r24, 0 +/* 801D7330 001D4290 3A E0 00 00 */ li r23, 0 +/* 801D7334 001D4294 38 60 01 10 */ li r3, 0x110 +/* 801D7338 001D4298 38 A0 00 00 */ li r5, 0 +/* 801D733C 001D429C 48 13 E5 31 */ bl __nw__FUlPCcPCc +/* 801D7340 001D42A0 7C 7F 1B 79 */ or. r31, r3, r3 +/* 801D7344 001D42A4 41 82 01 24 */ beq lbl_801D7468 +/* 801D7348 001D42A8 80 7C 00 FC */ lwz r3, 0xfc(r28) +/* 801D734C 001D42AC 3C 03 00 01 */ addis r0, r3, 1 +/* 801D7350 001D42B0 28 00 FF FF */ cmplwi r0, 0xffff +/* 801D7354 001D42B4 41 82 00 28 */ beq lbl_801D737C +/* 801D7358 001D42B8 38 00 00 01 */ li r0, 1 +/* 801D735C 001D42BC 34 61 00 34 */ addic. r3, r1, 0x34 +/* 801D7360 001D42C0 98 01 00 3C */ stb r0, 0x3c(r1) +/* 801D7364 001D42C4 38 9C 00 E8 */ addi r4, r28, 0xe8 +/* 801D7368 001D42C8 41 82 00 08 */ beq lbl_801D7370 +/* 801D736C 001D42CC 48 16 9B 3D */ bl __ct__6CTokenFRC6CToken +lbl_801D7370: +/* 801D7370 001D42D0 3B C1 00 34 */ addi r30, r1, 0x34 +/* 801D7374 001D42D4 3B 00 00 01 */ li r24, 1 +/* 801D7378 001D42D8 48 00 00 14 */ b lbl_801D738C +lbl_801D737C: +/* 801D737C 001D42DC 38 00 00 00 */ li r0, 0 +/* 801D7380 001D42E0 3B C1 00 28 */ addi r30, r1, 0x28 +/* 801D7384 001D42E4 98 01 00 30 */ stb r0, 0x30(r1) +/* 801D7388 001D42E8 3A E0 00 01 */ li r23, 1 +lbl_801D738C: +/* 801D738C 001D42EC 80 7C 01 00 */ lwz r3, 0x100(r28) +/* 801D7390 001D42F0 3C 03 00 01 */ addis r0, r3, 1 +/* 801D7394 001D42F4 28 00 FF FF */ cmplwi r0, 0xffff +/* 801D7398 001D42F8 41 82 00 28 */ beq lbl_801D73C0 +/* 801D739C 001D42FC 38 00 00 01 */ li r0, 1 +/* 801D73A0 001D4300 34 61 00 4C */ addic. r3, r1, 0x4c +/* 801D73A4 001D4304 98 01 00 54 */ stb r0, 0x54(r1) +/* 801D73A8 001D4308 38 9C 00 F0 */ addi r4, r28, 0xf0 +/* 801D73AC 001D430C 41 82 00 08 */ beq lbl_801D73B4 +/* 801D73B0 001D4310 48 16 9A F9 */ bl __ct__6CTokenFRC6CToken +lbl_801D73B4: +/* 801D73B4 001D4314 3A A1 00 4C */ addi r21, r1, 0x4c +/* 801D73B8 001D4318 3B 40 00 01 */ li r26, 1 +/* 801D73BC 001D431C 48 00 00 14 */ b lbl_801D73D0 +lbl_801D73C0: +/* 801D73C0 001D4320 38 00 00 00 */ li r0, 0 +/* 801D73C4 001D4324 3A A1 00 40 */ addi r21, r1, 0x40 +/* 801D73C8 001D4328 98 01 00 48 */ stb r0, 0x48(r1) +/* 801D73CC 001D432C 3B 20 00 01 */ li r25, 1 +lbl_801D73D0: +/* 801D73D0 001D4330 7F A4 EB 78 */ mr r4, r29 +/* 801D73D4 001D4334 38 61 00 18 */ addi r3, r1, 0x18 +/* 801D73D8 001D4338 4B E7 5D 05 */ bl AllocateUniqueId__13CStateManagerFv +/* 801D73DC 001D433C A0 01 00 18 */ lhz r0, 0x18(r1) +/* 801D73E0 001D4340 3C 60 80 3D */ lis r3, lbl_803D1B90@ha +/* 801D73E4 001D4344 38 83 1B 90 */ addi r4, r3, lbl_803D1B90@l +/* 801D73E8 001D4348 38 61 00 58 */ addi r3, r1, 0x58 +/* 801D73EC 001D434C B0 01 00 1C */ sth r0, 0x1c(r1) +/* 801D73F0 001D4350 38 84 00 07 */ addi r4, r4, 7 +/* 801D73F4 001D4354 4B E2 D8 C5 */ bl string_l__4rstlFPCc +/* 801D73F8 001D4358 C0 22 AC 60 */ lfs f1, lbl_805AC980@sda21(r2) +/* 801D73FC 001D435C 7F A3 EB 78 */ mr r3, r29 +/* 801D7400 001D4360 C0 02 AC 68 */ lfs f0, lbl_805AC988@sda21(r2) +/* 801D7404 001D4364 3B 60 00 01 */ li r27, 1 +/* 801D7408 001D4368 D0 21 00 68 */ stfs f1, 0x68(r1) +/* 801D740C 001D436C D0 21 00 6C */ stfs f1, 0x6c(r1) +/* 801D7410 001D4370 D0 21 00 70 */ stfs f1, 0x70(r1) +/* 801D7414 001D4374 D0 01 00 74 */ stfs f0, 0x74(r1) +/* 801D7418 001D4378 D0 01 00 78 */ stfs f0, 0x78(r1) +/* 801D741C 001D437C D0 01 00 7C */ stfs f0, 0x7c(r1) +/* 801D7420 001D4380 4B F5 8E 0D */ bl GetScaleForPOV__19CHUDBillboardEffectFRC13CStateManager +/* 801D7424 001D4384 7C 76 1B 78 */ mr r22, r3 +/* 801D7428 001D4388 7F A3 EB 78 */ mr r3, r29 +/* 801D742C 001D438C 4B F5 8D CD */ bl GetNearClipDistance__19CHUDBillboardEffectFRC13CStateManager +/* 801D7430 001D4390 38 61 00 68 */ addi r3, r1, 0x68 +/* 801D7434 001D4394 38 01 00 74 */ addi r0, r1, 0x74 +/* 801D7438 001D4398 90 61 00 08 */ stw r3, 8(r1) +/* 801D743C 001D439C 7F E3 FB 78 */ mr r3, r31 +/* 801D7440 001D43A0 7F C4 F3 78 */ mr r4, r30 +/* 801D7444 001D43A4 7E A5 AB 78 */ mr r5, r21 +/* 801D7448 001D43A8 90 01 00 0C */ stw r0, 0xc(r1) +/* 801D744C 001D43AC 7E C9 B3 78 */ mr r9, r22 +/* 801D7450 001D43B0 38 C1 00 1C */ addi r6, r1, 0x1c +/* 801D7454 001D43B4 39 01 00 58 */ addi r8, r1, 0x58 +/* 801D7458 001D43B8 39 5C 01 14 */ addi r10, r28, 0x114 +/* 801D745C 001D43BC 38 E0 00 01 */ li r7, 1 +/* 801D7460 001D43C0 4B F5 8A 99 */ bl "__ct__19CHUDBillboardEffectFRCQ24rstl44optional_object<25TToken<15CGenDescription>>RCQ24rstl49optional_object<30TToken<20CElectricDescription>>9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>fRC9CVector3fRC6CColorRC9CVector3fRC9CVector3f" +/* 801D7464 001D43C4 7C 7F 1B 78 */ mr r31, r3 +lbl_801D7468: +/* 801D7468 001D43C8 7F A3 EB 78 */ mr r3, r29 +/* 801D746C 001D43CC 7F E4 FB 78 */ mr r4, r31 +/* 801D7470 001D43D0 4B E7 58 85 */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +/* 801D7474 001D43D4 7E E0 07 75 */ extsb. r0, r23 +/* 801D7478 001D43D8 41 82 00 28 */ beq lbl_801D74A0 +/* 801D747C 001D43DC 88 01 00 30 */ lbz r0, 0x30(r1) +/* 801D7480 001D43E0 28 00 00 00 */ cmplwi r0, 0 +/* 801D7484 001D43E4 41 82 00 14 */ beq lbl_801D7498 +/* 801D7488 001D43E8 34 61 00 28 */ addic. r3, r1, 0x28 +/* 801D748C 001D43EC 41 82 00 0C */ beq lbl_801D7498 +/* 801D7490 001D43F0 38 80 00 00 */ li r4, 0 +/* 801D7494 001D43F4 48 16 99 AD */ bl __dt__6CTokenFv +lbl_801D7498: +/* 801D7498 001D43F8 38 00 00 00 */ li r0, 0 +/* 801D749C 001D43FC 98 01 00 30 */ stb r0, 0x30(r1) +lbl_801D74A0: +/* 801D74A0 001D4400 7F 00 07 75 */ extsb. r0, r24 +/* 801D74A4 001D4404 41 82 00 28 */ beq lbl_801D74CC +/* 801D74A8 001D4408 88 01 00 3C */ lbz r0, 0x3c(r1) +/* 801D74AC 001D440C 28 00 00 00 */ cmplwi r0, 0 +/* 801D74B0 001D4410 41 82 00 14 */ beq lbl_801D74C4 +/* 801D74B4 001D4414 34 61 00 34 */ addic. r3, r1, 0x34 +/* 801D74B8 001D4418 41 82 00 0C */ beq lbl_801D74C4 +/* 801D74BC 001D441C 38 80 00 00 */ li r4, 0 +/* 801D74C0 001D4420 48 16 99 81 */ bl __dt__6CTokenFv +lbl_801D74C4: +/* 801D74C4 001D4424 38 00 00 00 */ li r0, 0 +/* 801D74C8 001D4428 98 01 00 3C */ stb r0, 0x3c(r1) +lbl_801D74CC: +/* 801D74CC 001D442C 7F 20 07 75 */ extsb. r0, r25 +/* 801D74D0 001D4430 41 82 00 28 */ beq lbl_801D74F8 +/* 801D74D4 001D4434 88 01 00 48 */ lbz r0, 0x48(r1) +/* 801D74D8 001D4438 28 00 00 00 */ cmplwi r0, 0 +/* 801D74DC 001D443C 41 82 00 14 */ beq lbl_801D74F0 +/* 801D74E0 001D4440 34 61 00 40 */ addic. r3, r1, 0x40 +/* 801D74E4 001D4444 41 82 00 0C */ beq lbl_801D74F0 +/* 801D74E8 001D4448 38 80 00 00 */ li r4, 0 +/* 801D74EC 001D444C 48 16 99 55 */ bl __dt__6CTokenFv +lbl_801D74F0: +/* 801D74F0 001D4450 38 00 00 00 */ li r0, 0 +/* 801D74F4 001D4454 98 01 00 48 */ stb r0, 0x48(r1) +lbl_801D74F8: +/* 801D74F8 001D4458 7F 40 07 75 */ extsb. r0, r26 +/* 801D74FC 001D445C 41 82 00 28 */ beq lbl_801D7524 +/* 801D7500 001D4460 88 01 00 54 */ lbz r0, 0x54(r1) +/* 801D7504 001D4464 28 00 00 00 */ cmplwi r0, 0 +/* 801D7508 001D4468 41 82 00 14 */ beq lbl_801D751C +/* 801D750C 001D446C 34 61 00 4C */ addic. r3, r1, 0x4c +/* 801D7510 001D4470 41 82 00 0C */ beq lbl_801D751C +/* 801D7514 001D4474 38 80 00 00 */ li r4, 0 +/* 801D7518 001D4478 48 16 99 29 */ bl __dt__6CTokenFv +lbl_801D751C: +/* 801D751C 001D447C 38 00 00 00 */ li r0, 0 +/* 801D7520 001D4480 98 01 00 54 */ stb r0, 0x54(r1) +lbl_801D7524: +/* 801D7524 001D4484 7F 60 07 75 */ extsb. r0, r27 +/* 801D7528 001D4488 41 82 00 0C */ beq lbl_801D7534 +/* 801D752C 001D448C 38 61 00 58 */ addi r3, r1, 0x58 +/* 801D7530 001D4490 48 16 65 B1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801D7534: +/* 801D7534 001D4494 A0 9C 00 F8 */ lhz r4, 0xf8(r28) +/* 801D7538 001D4498 38 61 00 20 */ addi r3, r1, 0x20 +/* 801D753C 001D449C A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 801D7540 001D44A0 38 A0 00 7F */ li r5, 0x7f +/* 801D7544 001D44A4 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 801D7548 001D44A8 38 C0 00 40 */ li r6, 0x40 +/* 801D754C 001D44AC 38 E0 00 00 */ li r7, 0 +/* 801D7550 001D44B0 39 20 00 00 */ li r9, 0 +/* 801D7554 001D44B4 48 11 28 21 */ bl SfxStart__11CSfxManagerFUsssbsbi +lbl_801D7558: +/* 801D7558 001D44B8 A0 1C 00 08 */ lhz r0, 8(r28) +/* 801D755C 001D44BC 7F A3 EB 78 */ mr r3, r29 +/* 801D7560 001D44C0 38 81 00 14 */ addi r4, r1, 0x14 +/* 801D7564 001D44C4 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801D7568 001D44C8 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801D756C 001D44CC 4B E7 4D 01 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +lbl_801D7570: +/* 801D7570 001D44D0 E3 E1 01 58 */ psq_l f31, 344(r1), 0, qr0 +/* 801D7574 001D44D4 CB E1 01 50 */ lfd f31, 0x150(r1) +/* 801D7578 001D44D8 E3 C1 01 48 */ psq_l f30, 328(r1), 0, qr0 +/* 801D757C 001D44DC CB C1 01 40 */ lfd f30, 0x140(r1) +/* 801D7580 001D44E0 E3 A1 01 38 */ psq_l f29, 312(r1), 0, qr0 +/* 801D7584 001D44E4 CB A1 01 30 */ lfd f29, 0x130(r1) +/* 801D7588 001D44E8 E3 81 01 28 */ psq_l f28, 296(r1), 0, qr0 +/* 801D758C 001D44EC CB 81 01 20 */ lfd f28, 0x120(r1) +/* 801D7590 001D44F0 BA A1 00 F4 */ lmw r21, 0xf4(r1) +/* 801D7594 001D44F4 80 01 01 64 */ lwz r0, 0x164(r1) +/* 801D7598 001D44F8 7C 08 03 A6 */ mtlr r0 +/* 801D759C 001D44FC 38 21 01 60 */ addi r1, r1, 0x160 +/* 801D75A0 001D4500 4E 80 00 20 */ blr + +.global __dt__15CScriptVisorGooFv +__dt__15CScriptVisorGooFv: +/* 801D75A4 001D4504 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D75A8 001D4508 7C 08 02 A6 */ mflr r0 +/* 801D75AC 001D450C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D75B0 001D4510 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801D75B4 001D4514 7C 9F 23 78 */ mr r31, r4 +/* 801D75B8 001D4518 93 C1 00 08 */ stw r30, 8(r1) +/* 801D75BC 001D451C 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801D75C0 001D4520 41 82 00 54 */ beq lbl_801D7614 +/* 801D75C4 001D4524 3C 60 80 3E */ lis r3, lbl_803E58C0@ha +/* 801D75C8 001D4528 34 1E 00 F0 */ addic. r0, r30, 0xf0 +/* 801D75CC 001D452C 38 03 58 C0 */ addi r0, r3, lbl_803E58C0@l +/* 801D75D0 001D4530 90 1E 00 00 */ stw r0, 0(r30) +/* 801D75D4 001D4534 41 82 00 10 */ beq lbl_801D75E4 +/* 801D75D8 001D4538 38 7E 00 F0 */ addi r3, r30, 0xf0 +/* 801D75DC 001D453C 38 80 00 00 */ li r4, 0 +/* 801D75E0 001D4540 48 16 98 61 */ bl __dt__6CTokenFv +lbl_801D75E4: +/* 801D75E4 001D4544 34 1E 00 E8 */ addic. r0, r30, 0xe8 +/* 801D75E8 001D4548 41 82 00 10 */ beq lbl_801D75F8 +/* 801D75EC 001D454C 38 7E 00 E8 */ addi r3, r30, 0xe8 +/* 801D75F0 001D4550 38 80 00 00 */ li r4, 0 +/* 801D75F4 001D4554 48 16 98 4D */ bl __dt__6CTokenFv +lbl_801D75F8: +/* 801D75F8 001D4558 7F C3 F3 78 */ mr r3, r30 +/* 801D75FC 001D455C 38 80 00 00 */ li r4, 0 +/* 801D7600 001D4560 4B E7 E0 F1 */ bl __dt__6CActorFv +/* 801D7604 001D4564 7F E0 07 35 */ extsh. r0, r31 +/* 801D7608 001D4568 40 81 00 0C */ ble lbl_801D7614 +/* 801D760C 001D456C 7F C3 F3 78 */ mr r3, r30 +/* 801D7610 001D4570 48 13 E3 21 */ bl Free__7CMemoryFPCv +lbl_801D7614: +/* 801D7614 001D4574 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D7618 001D4578 7F C3 F3 78 */ mr r3, r30 +/* 801D761C 001D457C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801D7620 001D4580 83 C1 00 08 */ lwz r30, 8(r1) +/* 801D7624 001D4584 7C 08 03 A6 */ mtlr r0 +/* 801D7628 001D4588 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D762C 001D458C 4E 80 00 20 */ blr + +.global "__ct__15CScriptVisorGooF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fUiUiffffRC6CColoribb" +"__ct__15CScriptVisorGooF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fUiUiffffRC6CColoribb": +/* 801D7630 001D4590 94 21 FE 80 */ stwu r1, -0x180(r1) +/* 801D7634 001D4594 7C 08 02 A6 */ mflr r0 +/* 801D7638 001D4598 90 01 01 84 */ stw r0, 0x184(r1) +/* 801D763C 001D459C DB E1 01 70 */ stfd f31, 0x170(r1) +/* 801D7640 001D45A0 F3 E1 01 78 */ psq_st f31, 376(r1), 0, qr0 +/* 801D7644 001D45A4 DB C1 01 60 */ stfd f30, 0x160(r1) +/* 801D7648 001D45A8 F3 C1 01 68 */ psq_st f30, 360(r1), 0, qr0 +/* 801D764C 001D45AC DB A1 01 50 */ stfd f29, 0x150(r1) +/* 801D7650 001D45B0 F3 A1 01 58 */ psq_st f29, 344(r1), 0, qr0 +/* 801D7654 001D45B4 BE A1 01 24 */ stmw r21, 0x124(r1) +/* 801D7658 001D45B8 FF A0 08 90 */ fmr f29, f1 +/* 801D765C 001D45BC 7C 7A 1B 78 */ mr r26, r3 +/* 801D7660 001D45C0 FF C0 18 90 */ fmr f30, f3 +/* 801D7664 001D45C4 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 801D7668 001D45C8 FF E0 20 90 */ fmr f31, f4 +/* 801D766C 001D45CC 83 C1 01 88 */ lwz r30, 0x188(r1) +/* 801D7670 001D45D0 8B E1 01 8F */ lbz r31, 0x18f(r1) +/* 801D7674 001D45D4 7C 95 23 78 */ mr r21, r4 +/* 801D7678 001D45D8 8B 21 01 93 */ lbz r25, 0x193(r1) +/* 801D767C 001D45DC 7C B6 2B 78 */ mr r22, r5 +/* 801D7680 001D45E0 7C D7 33 78 */ mr r23, r6 +/* 801D7684 001D45E4 7C F8 3B 78 */ mr r24, r7 +/* 801D7688 001D45E8 7D 1B 43 78 */ mr r27, r8 +/* 801D768C 001D45EC 7D 3C 4B 78 */ mr r28, r9 +/* 801D7690 001D45F0 7D 5D 53 78 */ mr r29, r10 +/* 801D7694 001D45F4 38 61 00 D0 */ addi r3, r1, 0xd0 +/* 801D7698 001D45F8 4B E6 31 0D */ bl CModelDataNull__10CModelDataFv +/* 801D769C 001D45FC 38 61 00 68 */ addi r3, r1, 0x68 +/* 801D76A0 001D4600 4B E4 37 99 */ bl None__16CActorParametersFv +/* 801D76A4 001D4604 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801D76A8 001D4608 38 80 00 00 */ li r4, 0 +/* 801D76AC 001D460C A1 95 00 00 */ lhz r12, 0(r21) +/* 801D76B0 001D4610 39 61 00 68 */ addi r11, r1, 0x68 +/* 801D76B4 001D4614 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801D76B8 001D4618 38 01 00 14 */ addi r0, r1, 0x14 +/* 801D76BC 001D461C 7F 43 D3 78 */ mr r3, r26 +/* 801D76C0 001D4620 7F 25 CB 78 */ mr r5, r25 +/* 801D76C4 001D4624 90 81 00 64 */ stw r4, 0x64(r1) +/* 801D76C8 001D4628 7E C6 B3 78 */ mr r6, r22 +/* 801D76CC 001D462C 7E E7 BB 78 */ mr r7, r23 +/* 801D76D0 001D4630 7F 08 C3 78 */ mr r8, r24 +/* 801D76D4 001D4634 90 81 00 60 */ stw r4, 0x60(r1) +/* 801D76D8 001D4638 38 81 00 18 */ addi r4, r1, 0x18 +/* 801D76DC 001D463C 39 21 00 D0 */ addi r9, r1, 0xd0 +/* 801D76E0 001D4640 39 41 00 60 */ addi r10, r1, 0x60 +/* 801D76E4 001D4644 B1 81 00 18 */ sth r12, 0x18(r1) +/* 801D76E8 001D4648 91 61 00 08 */ stw r11, 8(r1) +/* 801D76EC 001D464C 90 01 00 0C */ stw r0, 0xc(r1) +/* 801D76F0 001D4650 4B E7 E1 31 */ bl "__ct__6CActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC16CActorParameters9TUniqueId" +/* 801D76F4 001D4654 38 61 00 68 */ addi r3, r1, 0x68 +/* 801D76F8 001D4658 38 80 FF FF */ li r4, -1 +/* 801D76FC 001D465C 4B F2 EF 0D */ bl __dt__16CActorParametersFv +/* 801D7700 001D4660 38 61 00 D0 */ addi r3, r1, 0xd0 +/* 801D7704 001D4664 38 80 FF FF */ li r4, -1 +/* 801D7708 001D4668 4B F3 F3 45 */ bl __dt__10CModelDataFv +/* 801D770C 001D466C 3C 60 80 3E */ lis r3, lbl_803E58C0@ha +/* 801D7710 001D4670 3A BA 00 E8 */ addi r21, r26, 0xe8 +/* 801D7714 001D4674 38 03 58 C0 */ addi r0, r3, lbl_803E58C0@l +/* 801D7718 001D4678 38 61 00 28 */ addi r3, r1, 0x28 +/* 801D771C 001D467C 90 1A 00 00 */ stw r0, 0(r26) +/* 801D7720 001D4680 38 80 00 00 */ li r4, 0 +/* 801D7724 001D4684 4B EB 82 1D */ bl "GetNewDerivedObject__43TObjOwnerDerivedFromIObj<15CGenDescription>FP15CGenDescription" +/* 801D7728 001D4688 38 00 00 00 */ li r0, 0 +/* 801D772C 001D468C 80 81 00 2C */ lwz r4, 0x2c(r1) +/* 801D7730 001D4690 98 01 00 28 */ stb r0, 0x28(r1) +/* 801D7734 001D4694 7E A3 AB 78 */ mr r3, r21 +/* 801D7738 001D4698 48 16 97 CD */ bl __ct__6CTokenFP4IObj +/* 801D773C 001D469C 88 01 00 28 */ lbz r0, 0x28(r1) +/* 801D7740 001D46A0 28 00 00 00 */ cmplwi r0, 0 +/* 801D7744 001D46A4 41 82 00 24 */ beq lbl_801D7768 +/* 801D7748 001D46A8 80 61 00 2C */ lwz r3, 0x2c(r1) +/* 801D774C 001D46AC 28 03 00 00 */ cmplwi r3, 0 +/* 801D7750 001D46B0 41 82 00 18 */ beq lbl_801D7768 +/* 801D7754 001D46B4 81 83 00 00 */ lwz r12, 0(r3) +/* 801D7758 001D46B8 38 80 00 01 */ li r4, 1 +/* 801D775C 001D46BC 81 8C 00 08 */ lwz r12, 8(r12) +/* 801D7760 001D46C0 7D 89 03 A6 */ mtctr r12 +/* 801D7764 001D46C4 4E 80 04 21 */ bctrl +lbl_801D7768: +/* 801D7768 001D46C8 3A BA 00 F0 */ addi r21, r26, 0xf0 +/* 801D776C 001D46CC 38 61 00 20 */ addi r3, r1, 0x20 +/* 801D7770 001D46D0 38 80 00 00 */ li r4, 0 +/* 801D7774 001D46D4 4B EB 82 ED */ bl "GetNewDerivedObject__48TObjOwnerDerivedFromIObj<20CElectricDescription>FP20CElectricDescription" +/* 801D7778 001D46D8 38 00 00 00 */ li r0, 0 +/* 801D777C 001D46DC 80 81 00 24 */ lwz r4, 0x24(r1) +/* 801D7780 001D46E0 98 01 00 20 */ stb r0, 0x20(r1) +/* 801D7784 001D46E4 7E A3 AB 78 */ mr r3, r21 +/* 801D7788 001D46E8 48 16 97 7D */ bl __ct__6CTokenFP4IObj +/* 801D778C 001D46EC 88 01 00 20 */ lbz r0, 0x20(r1) +/* 801D7790 001D46F0 28 00 00 00 */ cmplwi r0, 0 +/* 801D7794 001D46F4 41 82 00 24 */ beq lbl_801D77B8 +/* 801D7798 001D46F8 80 61 00 24 */ lwz r3, 0x24(r1) +/* 801D779C 001D46FC 28 03 00 00 */ cmplwi r3, 0 +/* 801D77A0 001D4700 41 82 00 18 */ beq lbl_801D77B8 +/* 801D77A4 001D4704 81 83 00 00 */ lwz r12, 0(r3) +/* 801D77A8 001D4708 38 80 00 01 */ li r4, 1 +/* 801D77AC 001D470C 81 8C 00 08 */ lwz r12, 8(r12) +/* 801D77B0 001D4710 7D 89 03 A6 */ mtctr r12 +/* 801D77B4 001D4714 4E 80 04 21 */ bctrl +lbl_801D77B8: +/* 801D77B8 001D4718 57 C3 04 3E */ clrlwi r3, r30, 0x10 +/* 801D77BC 001D471C 48 11 11 F5 */ bl TranslateSFXID__11CSfxManagerFUs +/* 801D77C0 001D4720 B0 7A 00 F8 */ sth r3, 0xf8(r26) +/* 801D77C4 001D4724 C0 02 AC 6C */ lfs f0, lbl_805AC98C@sda21(r2) +/* 801D77C8 001D4728 93 7A 00 FC */ stw r27, 0xfc(r26) +/* 801D77CC 001D472C EC 20 E8 2A */ fadds f1, f0, f29 +/* 801D77D0 001D4730 93 9A 01 00 */ stw r28, 0x100(r26) +/* 801D77D4 001D4734 D3 BA 01 04 */ stfs f29, 0x104(r26) +/* 801D77D8 001D4738 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 801D77DC 001D473C D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 801D77E0 001D4740 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801D77E4 001D4744 40 80 00 0C */ bge lbl_801D77F0 +/* 801D77E8 001D4748 38 61 00 1C */ addi r3, r1, 0x1c +/* 801D77EC 001D474C 48 00 00 08 */ b lbl_801D77F4 +lbl_801D77F0: +/* 801D77F0 001D4750 38 61 00 10 */ addi r3, r1, 0x10 +lbl_801D77F4: +/* 801D77F4 001D4754 C0 03 00 00 */ lfs f0, 0(r3) +/* 801D77F8 001D4758 3C 1B 00 01 */ addis r0, r27, 1 +/* 801D77FC 001D475C 28 00 FF FF */ cmplwi r0, 0xffff +/* 801D7800 001D4760 7F E3 00 34 */ cntlzw r3, r31 +/* 801D7804 001D4764 D0 1A 01 08 */ stfs f0, 0x108(r26) +/* 801D7808 001D4768 D3 DA 01 0C */ stfs f30, 0x10c(r26) +/* 801D780C 001D476C D3 FA 01 10 */ stfs f31, 0x110(r26) +/* 801D7810 001D4770 80 1D 00 00 */ lwz r0, 0(r29) +/* 801D7814 001D4774 90 1A 01 14 */ stw r0, 0x114(r26) +/* 801D7818 001D4778 88 1A 01 18 */ lbz r0, 0x118(r26) +/* 801D781C 001D477C 50 60 16 30 */ rlwimi r0, r3, 2, 0x18, 0x18 +/* 801D7820 001D4780 98 1A 01 18 */ stb r0, 0x118(r26) +/* 801D7824 001D4784 41 82 00 60 */ beq lbl_801D7884 +/* 801D7828 001D4788 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 801D782C 001D478C 93 61 00 5C */ stw r27, 0x5c(r1) +/* 801D7830 001D4790 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 801D7834 001D4794 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801D7838 001D4798 90 01 00 58 */ stw r0, 0x58(r1) +/* 801D783C 001D479C 38 61 00 50 */ addi r3, r1, 0x50 +/* 801D7840 001D47A0 38 A1 00 58 */ addi r5, r1, 0x58 +/* 801D7844 001D47A4 81 84 00 00 */ lwz r12, 0(r4) +/* 801D7848 001D47A8 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801D784C 001D47AC 7D 89 03 A6 */ mtctr r12 +/* 801D7850 001D47B0 4E 80 04 21 */ bctrl +/* 801D7854 001D47B4 38 61 00 48 */ addi r3, r1, 0x48 +/* 801D7858 001D47B8 38 81 00 50 */ addi r4, r1, 0x50 +/* 801D785C 001D47BC 48 16 96 4D */ bl __ct__6CTokenFRC6CToken +/* 801D7860 001D47C0 38 7A 00 E8 */ addi r3, r26, 0xe8 +/* 801D7864 001D47C4 38 81 00 48 */ addi r4, r1, 0x48 +/* 801D7868 001D47C8 48 16 94 5D */ bl __as__6CTokenFRC6CToken +/* 801D786C 001D47CC 38 61 00 48 */ addi r3, r1, 0x48 +/* 801D7870 001D47D0 38 80 00 00 */ li r4, 0 +/* 801D7874 001D47D4 48 16 95 CD */ bl __dt__6CTokenFv +/* 801D7878 001D47D8 38 61 00 50 */ addi r3, r1, 0x50 +/* 801D787C 001D47DC 38 80 FF FF */ li r4, -1 +/* 801D7880 001D47E0 48 16 95 C1 */ bl __dt__6CTokenFv +lbl_801D7884: +/* 801D7884 001D47E4 3C 1C 00 01 */ addis r0, r28, 1 +/* 801D7888 001D47E8 28 00 FF FF */ cmplwi r0, 0xffff +/* 801D788C 001D47EC 41 82 00 60 */ beq lbl_801D78EC +/* 801D7890 001D47F0 3C 60 45 4C */ lis r3, 0x454C5343@ha +/* 801D7894 001D47F4 93 81 00 44 */ stw r28, 0x44(r1) +/* 801D7898 001D47F8 38 03 53 43 */ addi r0, r3, 0x454C5343@l +/* 801D789C 001D47FC 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801D78A0 001D4800 90 01 00 40 */ stw r0, 0x40(r1) +/* 801D78A4 001D4804 38 61 00 38 */ addi r3, r1, 0x38 +/* 801D78A8 001D4808 38 A1 00 40 */ addi r5, r1, 0x40 +/* 801D78AC 001D480C 81 84 00 00 */ lwz r12, 0(r4) +/* 801D78B0 001D4810 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801D78B4 001D4814 7D 89 03 A6 */ mtctr r12 +/* 801D78B8 001D4818 4E 80 04 21 */ bctrl +/* 801D78BC 001D481C 38 61 00 30 */ addi r3, r1, 0x30 +/* 801D78C0 001D4820 38 81 00 38 */ addi r4, r1, 0x38 +/* 801D78C4 001D4824 48 16 95 E5 */ bl __ct__6CTokenFRC6CToken +/* 801D78C8 001D4828 38 7A 00 F0 */ addi r3, r26, 0xf0 +/* 801D78CC 001D482C 38 81 00 30 */ addi r4, r1, 0x30 +/* 801D78D0 001D4830 48 16 93 F5 */ bl __as__6CTokenFRC6CToken +/* 801D78D4 001D4834 38 61 00 30 */ addi r3, r1, 0x30 +/* 801D78D8 001D4838 38 80 00 00 */ li r4, 0 +/* 801D78DC 001D483C 48 16 95 65 */ bl __dt__6CTokenFv +/* 801D78E0 001D4840 38 61 00 38 */ addi r3, r1, 0x38 +/* 801D78E4 001D4844 38 80 FF FF */ li r4, -1 +/* 801D78E8 001D4848 48 16 95 59 */ bl __dt__6CTokenFv +lbl_801D78EC: +/* 801D78EC 001D484C 7F 43 D3 78 */ mr r3, r26 +/* 801D78F0 001D4850 E3 E1 01 78 */ psq_l f31, 376(r1), 0, qr0 +/* 801D78F4 001D4854 CB E1 01 70 */ lfd f31, 0x170(r1) +/* 801D78F8 001D4858 E3 C1 01 68 */ psq_l f30, 360(r1), 0, qr0 +/* 801D78FC 001D485C CB C1 01 60 */ lfd f30, 0x160(r1) +/* 801D7900 001D4860 E3 A1 01 58 */ psq_l f29, 344(r1), 0, qr0 +/* 801D7904 001D4864 CB A1 01 50 */ lfd f29, 0x150(r1) +/* 801D7908 001D4868 BA A1 01 24 */ lmw r21, 0x124(r1) +/* 801D790C 001D486C 80 01 01 84 */ lwz r0, 0x184(r1) +/* 801D7910 001D4870 7C 08 03 A6 */ mtlr r0 +/* 801D7914 001D4874 38 21 01 80 */ addi r1, r1, 0x180 +/* 801D7918 001D4878 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/ScriptObjects/CScriptWorldTeleporter.s b/asm/Kyoto_CWD/ScriptObjects/CScriptWorldTeleporter.s new file mode 100644 index 00000000..246d89bb --- /dev/null +++ b/asm/Kyoto_CWD/ScriptObjects/CScriptWorldTeleporter.s @@ -0,0 +1,492 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global StartTransition__22CScriptWorldTeleporterFv +StartTransition__22CScriptWorldTeleporterFv: +/* 801D689C 001D37FC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801D68A0 001D3800 7C 08 02 A6 */ mflr r0 +/* 801D68A4 001D3804 90 01 00 34 */ stw r0, 0x34(r1) +/* 801D68A8 001D3808 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801D68AC 001D380C 7C 7F 1B 78 */ mr r31, r3 +/* 801D68B0 001D3810 88 A3 00 40 */ lbz r5, 0x40(r3) +/* 801D68B4 001D3814 54 A0 D7 FF */ rlwinm. r0, r5, 0x1a, 0x1f, 0x1f +/* 801D68B8 001D3818 40 82 00 DC */ bne lbl_801D6994 +/* 801D68BC 001D381C 80 FF 00 3C */ lwz r7, 0x3c(r31) +/* 801D68C0 001D3820 80 64 08 C4 */ lwz r3, 0x8c4(r4) +/* 801D68C4 001D3824 2C 07 00 01 */ cmpwi r7, 1 +/* 801D68C8 001D3828 80 63 00 00 */ lwz r3, 0(r3) +/* 801D68CC 001D382C 40 82 00 84 */ bne lbl_801D6950 +/* 801D68D0 001D3830 80 DF 00 50 */ lwz r6, 0x50(r31) +/* 801D68D4 001D3834 3C 06 00 01 */ addis r0, r6, 1 +/* 801D68D8 001D3838 28 00 FF FF */ cmplwi r0, 0xffff +/* 801D68DC 001D383C 41 82 00 74 */ beq lbl_801D6950 +/* 801D68E0 001D3840 81 5F 00 54 */ lwz r10, 0x54(r31) +/* 801D68E4 001D3844 3C 0A 00 01 */ addis r0, r10, 1 +/* 801D68E8 001D3848 28 00 FF FF */ cmplwi r0, 0xffff +/* 801D68EC 001D384C 41 82 00 64 */ beq lbl_801D6950 +/* 801D68F0 001D3850 80 FF 00 58 */ lwz r7, 0x58(r31) +/* 801D68F4 001D3854 38 00 00 01 */ li r0, 1 +/* 801D68F8 001D3858 54 A9 CF FE */ rlwinm r9, r5, 0x19, 0x1f, 0x1f +/* 801D68FC 001D385C 38 81 00 08 */ addi r4, r1, 8 +/* 801D6900 001D3860 90 C1 00 08 */ stw r6, 8(r1) +/* 801D6904 001D3864 38 DF 00 6C */ addi r6, r31, 0x6c +/* 801D6908 001D3868 39 1F 00 7C */ addi r8, r31, 0x7c +/* 801D690C 001D386C 90 E1 00 0C */ stw r7, 0xc(r1) +/* 801D6910 001D3870 C0 1F 00 5C */ lfs f0, 0x5c(r31) +/* 801D6914 001D3874 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801D6918 001D3878 C0 1F 00 60 */ lfs f0, 0x60(r31) +/* 801D691C 001D387C D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801D6920 001D3880 C0 1F 00 64 */ lfs f0, 0x64(r31) +/* 801D6924 001D3884 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801D6928 001D3888 98 01 00 1C */ stb r0, 0x1c(r1) +/* 801D692C 001D388C 91 41 00 20 */ stw r10, 0x20(r1) +/* 801D6930 001D3890 80 BF 00 68 */ lwz r5, 0x68(r31) +/* 801D6934 001D3894 80 FF 00 78 */ lwz r7, 0x78(r31) +/* 801D6938 001D3898 48 03 42 71 */ bl EnableTransition__18CWorldTransManagerFRC8CAnimResUiRC9CVector3fUiRC9CVector3fb +/* 801D693C 001D389C 88 1F 00 40 */ lbz r0, 0x40(r31) +/* 801D6940 001D38A0 38 60 00 01 */ li r3, 1 +/* 801D6944 001D38A4 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801D6948 001D38A8 98 1F 00 40 */ stb r0, 0x40(r31) +/* 801D694C 001D38AC 48 00 00 48 */ b lbl_801D6994 +lbl_801D6950: +/* 801D6950 001D38B0 2C 07 00 02 */ cmpwi r7, 2 +/* 801D6954 001D38B4 40 82 00 3C */ bne lbl_801D6990 +/* 801D6958 001D38B8 88 1F 00 40 */ lbz r0, 0x40(r31) +/* 801D695C 001D38BC 38 C0 00 00 */ li r6, 0 +/* 801D6960 001D38C0 80 9F 00 8C */ lwz r4, 0x8c(r31) +/* 801D6964 001D38C4 80 BF 00 90 */ lwz r5, 0x90(r31) +/* 801D6968 001D38C8 54 07 E7 FE */ rlwinm r7, r0, 0x1c, 0x1f, 0x1f +/* 801D696C 001D38CC C0 3F 00 44 */ lfs f1, 0x44(r31) +/* 801D6970 001D38D0 C0 5F 00 48 */ lfs f2, 0x48(r31) +/* 801D6974 001D38D4 C0 7F 00 4C */ lfs f3, 0x4c(r31) +/* 801D6978 001D38D8 48 03 2C 79 */ bl EnableTransition__18CWorldTransManagerFviibbfff +/* 801D697C 001D38DC 88 1F 00 40 */ lbz r0, 0x40(r31) +/* 801D6980 001D38E0 38 60 00 01 */ li r3, 1 +/* 801D6984 001D38E4 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801D6988 001D38E8 98 1F 00 40 */ stb r0, 0x40(r31) +/* 801D698C 001D38EC 48 00 00 08 */ b lbl_801D6994 +lbl_801D6990: +/* 801D6990 001D38F0 48 03 4A F9 */ bl DisableTransition__18CWorldTransManagerFv +lbl_801D6994: +/* 801D6994 001D38F4 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801D6998 001D38F8 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801D699C 001D38FC 7C 08 03 A6 */ mtlr r0 +/* 801D69A0 001D3900 38 21 00 30 */ addi r1, r1, 0x30 +/* 801D69A4 001D3904 4E 80 00 20 */ blr + +.global AcceptScriptMsg__22CScriptWorldTeleporterF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__22CScriptWorldTeleporterF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 801D69A8 001D3908 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801D69AC 001D390C 7C 08 02 A6 */ mflr r0 +/* 801D69B0 001D3910 90 01 00 34 */ stw r0, 0x34(r1) +/* 801D69B4 001D3914 BF 41 00 18 */ stmw r26, 0x18(r1) +/* 801D69B8 001D3918 7C 7C 1B 78 */ mr r28, r3 +/* 801D69BC 001D391C 7C 9D 23 78 */ mr r29, r4 +/* 801D69C0 001D3920 7C BE 2B 78 */ mr r30, r5 +/* 801D69C4 001D3924 7C DF 33 78 */ mr r31, r6 +/* 801D69C8 001D3928 88 03 00 30 */ lbz r0, 0x30(r3) +/* 801D69CC 001D392C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801D69D0 001D3930 41 82 01 2C */ beq lbl_801D6AFC +/* 801D69D4 001D3934 80 9F 08 C4 */ lwz r4, 0x8c4(r31) +/* 801D69D8 001D3938 2C 1D 00 0F */ cmpwi r29, 0xf +/* 801D69DC 001D393C 83 64 00 00 */ lwz r27, 0(r4) +/* 801D69E0 001D3940 41 82 00 FC */ beq lbl_801D6ADC +/* 801D69E4 001D3944 40 80 00 10 */ bge lbl_801D69F4 +/* 801D69E8 001D3948 2C 1D 00 0D */ cmpwi r29, 0xd +/* 801D69EC 001D394C 41 82 00 14 */ beq lbl_801D6A00 +/* 801D69F0 001D3950 48 00 01 0C */ b lbl_801D6AFC +lbl_801D69F4: +/* 801D69F4 001D3954 2C 1D 00 14 */ cmpwi r29, 0x14 +/* 801D69F8 001D3958 41 82 00 BC */ beq lbl_801D6AB4 +/* 801D69FC 001D395C 48 00 01 00 */ b lbl_801D6AFC +lbl_801D6A00: +/* 801D6A00 001D3960 80 7F 08 50 */ lwz r3, 0x850(r31) +/* 801D6A04 001D3964 38 80 00 01 */ li r4, 1 +/* 801D6A08 001D3968 4B E7 F5 ED */ bl SetLoadPauseState__6CWorldFb +/* 801D6A0C 001D396C 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) +/* 801D6A10 001D3970 4B FF CF C1 */ bl CurrentWorldAssetId__10CGameStateCFv +/* 801D6A14 001D3974 7C 60 1B 78 */ mr r0, r3 +/* 801D6A18 001D3978 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) +/* 801D6A1C 001D397C 80 9C 00 34 */ lwz r4, 0x34(r28) +/* 801D6A20 001D3980 7C 1A 03 78 */ mr r26, r0 +/* 801D6A24 001D3984 4B FF CF 21 */ bl SetCurrentWorldId__10CGameStateFUi +/* 801D6A28 001D3988 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) +/* 801D6A2C 001D398C 80 9C 00 34 */ lwz r4, 0x34(r28) +/* 801D6A30 001D3990 38 63 00 04 */ addi r3, r3, 4 +/* 801D6A34 001D3994 48 16 52 99 */ bl GetResourceTypeById__10CResLoaderCFUi +/* 801D6A38 001D3998 3C 03 B2 B4 */ addis r0, r3, 0xb2b4 +/* 801D6A3C 001D399C 28 00 56 4C */ cmplwi r0, 0x564c +/* 801D6A40 001D39A0 40 82 00 4C */ bne lbl_801D6A8C +/* 801D6A44 001D39A4 7F 83 E3 78 */ mr r3, r28 +/* 801D6A48 001D39A8 7F E4 FB 78 */ mr r4, r31 +/* 801D6A4C 001D39AC 4B FF FE 51 */ bl StartTransition__22CScriptWorldTeleporterFv +/* 801D6A50 001D39B0 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) +/* 801D6A54 001D39B4 80 9C 00 34 */ lwz r4, 0x34(r28) +/* 801D6A58 001D39B8 4B FF CE ED */ bl SetCurrentWorldId__10CGameStateFUi +/* 801D6A5C 001D39BC 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) +/* 801D6A60 001D39C0 4B FF CF 4D */ bl CurrentWorldState__10CGameStateFv +/* 801D6A64 001D39C4 80 9C 00 38 */ lwz r4, 0x38(r28) +/* 801D6A68 001D39C8 4B FF E2 D5 */ bl SetDesiredAreaAssetId__11CWorldStateFUi +/* 801D6A6C 001D39CC 80 8D A0 78 */ lwz r4, gpMain@sda21(r13) +/* 801D6A70 001D39D0 38 00 00 00 */ li r0, 0 +/* 801D6A74 001D39D4 38 60 00 01 */ li r3, 1 +/* 801D6A78 001D39D8 90 04 01 2C */ stw r0, 0x12c(r4) +/* 801D6A7C 001D39DC 88 1F 0F 94 */ lbz r0, 0xf94(r31) +/* 801D6A80 001D39E0 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801D6A84 001D39E4 98 1F 0F 94 */ stb r0, 0xf94(r31) +/* 801D6A88 001D39E8 48 00 00 74 */ b lbl_801D6AFC +lbl_801D6A8C: +/* 801D6A8C 001D39EC 88 1C 00 40 */ lbz r0, 0x40(r28) +/* 801D6A90 001D39F0 38 60 00 00 */ li r3, 0 +/* 801D6A94 001D39F4 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801D6A98 001D39F8 7F 63 DB 78 */ mr r3, r27 +/* 801D6A9C 001D39FC 98 1C 00 40 */ stb r0, 0x40(r28) +/* 801D6AA0 001D3A00 48 03 49 E9 */ bl DisableTransition__18CWorldTransManagerFv +/* 801D6AA4 001D3A04 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) +/* 801D6AA8 001D3A08 7F 44 D3 78 */ mr r4, r26 +/* 801D6AAC 001D3A0C 4B FF CE 99 */ bl SetCurrentWorldId__10CGameStateFUi +/* 801D6AB0 001D3A10 48 00 00 4C */ b lbl_801D6AFC +lbl_801D6AB4: +/* 801D6AB4 001D3A14 7F E4 FB 78 */ mr r4, r31 +/* 801D6AB8 001D3A18 4B FF FD E5 */ bl StartTransition__22CScriptWorldTeleporterFv +/* 801D6ABC 001D3A1C A0 9C 00 88 */ lhz r4, 0x88(r28) +/* 801D6AC0 001D3A20 7F 63 DB 78 */ mr r3, r27 +/* 801D6AC4 001D3A24 88 BC 00 8A */ lbz r5, 0x8a(r28) +/* 801D6AC8 001D3A28 88 DC 00 8B */ lbz r6, 0x8b(r28) +/* 801D6ACC 001D3A2C 48 03 2E 99 */ bl sub_80209964 +/* 801D6AD0 001D3A30 7F 63 DB 78 */ mr r3, r27 +/* 801D6AD4 001D3A34 48 03 2E ED */ bl sub_802099c0 +/* 801D6AD8 001D3A38 48 00 00 24 */ b lbl_801D6AFC +lbl_801D6ADC: +/* 801D6ADC 001D3A3C 88 1C 00 40 */ lbz r0, 0x40(r28) +/* 801D6AE0 001D3A40 38 60 00 00 */ li r3, 0 +/* 801D6AE4 001D3A44 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801D6AE8 001D3A48 7F 63 DB 78 */ mr r3, r27 +/* 801D6AEC 001D3A4C 98 1C 00 40 */ stb r0, 0x40(r28) +/* 801D6AF0 001D3A50 48 03 49 99 */ bl DisableTransition__18CWorldTransManagerFv +/* 801D6AF4 001D3A54 7F 63 DB 78 */ mr r3, r27 +/* 801D6AF8 001D3A58 48 03 2E 7D */ bl sub_80209974 +lbl_801D6AFC: +/* 801D6AFC 001D3A5C A0 1E 00 00 */ lhz r0, 0(r30) +/* 801D6B00 001D3A60 7F 83 E3 78 */ mr r3, r28 +/* 801D6B04 001D3A64 7F A4 EB 78 */ mr r4, r29 +/* 801D6B08 001D3A68 7F E6 FB 78 */ mr r6, r31 +/* 801D6B0C 001D3A6C B0 01 00 08 */ sth r0, 8(r1) +/* 801D6B10 001D3A70 38 A1 00 08 */ addi r5, r1, 8 +/* 801D6B14 001D3A74 4B E7 A6 49 */ bl AcceptScriptMsg__7CEntityF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 801D6B18 001D3A78 BB 41 00 18 */ lmw r26, 0x18(r1) +/* 801D6B1C 001D3A7C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801D6B20 001D3A80 7C 08 03 A6 */ mtlr r0 +/* 801D6B24 001D3A84 38 21 00 30 */ addi r1, r1, 0x30 +/* 801D6B28 001D3A88 4E 80 00 20 */ blr + +.global Accept__22CScriptWorldTeleporterFR8IVisitor +Accept__22CScriptWorldTeleporterFR8IVisitor: +/* 801D6B2C 001D3A8C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D6B30 001D3A90 7C 08 02 A6 */ mflr r0 +/* 801D6B34 001D3A94 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D6B38 001D3A98 7C 60 1B 78 */ mr r0, r3 +/* 801D6B3C 001D3A9C 7C 83 23 78 */ mr r3, r4 +/* 801D6B40 001D3AA0 81 84 00 00 */ lwz r12, 0(r4) +/* 801D6B44 001D3AA4 7C 04 03 78 */ mr r4, r0 +/* 801D6B48 001D3AA8 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 801D6B4C 001D3AAC 7D 89 03 A6 */ mtctr r12 +/* 801D6B50 001D3AB0 4E 80 04 21 */ bctrl +/* 801D6B54 001D3AB4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D6B58 001D3AB8 7C 08 03 A6 */ mtlr r0 +/* 801D6B5C 001D3ABC 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D6B60 001D3AC0 4E 80 00 20 */ blr + +.global __dt__22CScriptWorldTeleporterFv +__dt__22CScriptWorldTeleporterFv: +/* 801D6B64 001D3AC4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D6B68 001D3AC8 7C 08 02 A6 */ mflr r0 +/* 801D6B6C 001D3ACC 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D6B70 001D3AD0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801D6B74 001D3AD4 7C 9F 23 78 */ mr r31, r4 +/* 801D6B78 001D3AD8 93 C1 00 08 */ stw r30, 8(r1) +/* 801D6B7C 001D3ADC 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801D6B80 001D3AE0 41 82 00 28 */ beq lbl_801D6BA8 +/* 801D6B84 001D3AE4 3C A0 80 3E */ lis r5, lbl_803E58A0@ha +/* 801D6B88 001D3AE8 38 80 00 00 */ li r4, 0 +/* 801D6B8C 001D3AEC 38 05 58 A0 */ addi r0, r5, lbl_803E58A0@l +/* 801D6B90 001D3AF0 90 1E 00 00 */ stw r0, 0(r30) +/* 801D6B94 001D3AF4 4B E7 A6 E1 */ bl __dt__7CEntityFv +/* 801D6B98 001D3AF8 7F E0 07 35 */ extsh. r0, r31 +/* 801D6B9C 001D3AFC 40 81 00 0C */ ble lbl_801D6BA8 +/* 801D6BA0 001D3B00 7F C3 F3 78 */ mr r3, r30 +/* 801D6BA4 001D3B04 48 13 ED 8D */ bl Free__7CMemoryFPCv +lbl_801D6BA8: +/* 801D6BA8 001D3B08 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D6BAC 001D3B0C 7F C3 F3 78 */ mr r3, r30 +/* 801D6BB0 001D3B10 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801D6BB4 001D3B14 83 C1 00 08 */ lwz r30, 8(r1) +/* 801D6BB8 001D3B18 7C 08 03 A6 */ mtlr r0 +/* 801D6BBC 001D3B1C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D6BC0 001D3B20 4E 80 00 20 */ blr + +.global "__ct__22CScriptWorldTeleporterF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfobUiUiUiUiRC9CVector3fUiRC9CVector3fUiRC9CVector3fb" +"__ct__22CScriptWorldTeleporterF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfobUiUiUiUiRC9CVector3fUiRC9CVector3fUiRC9CVector3fb": +/* 801D6BC4 001D3B24 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 801D6BC8 001D3B28 7C 08 02 A6 */ mflr r0 +/* 801D6BCC 001D3B2C 90 01 00 74 */ stw r0, 0x74(r1) +/* 801D6BD0 001D3B30 DB E1 00 60 */ stfd f31, 0x60(r1) +/* 801D6BD4 001D3B34 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 801D6BD8 001D3B38 DB C1 00 50 */ stfd f30, 0x50(r1) +/* 801D6BDC 001D3B3C F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 +/* 801D6BE0 001D3B40 DB A1 00 40 */ stfd f29, 0x40(r1) +/* 801D6BE4 001D3B44 F3 A1 00 48 */ psq_st f29, 72(r1), 0, qr0 +/* 801D6BE8 001D3B48 BE E1 00 1C */ stmw r23, 0x1c(r1) +/* 801D6BEC 001D3B4C A0 04 00 00 */ lhz r0, 0(r4) +/* 801D6BF0 001D3B50 7C A4 2B 78 */ mr r4, r5 +/* 801D6BF4 001D3B54 FF A0 08 90 */ fmr f29, f1 +/* 801D6BF8 001D3B58 7C C5 33 78 */ mr r5, r6 +/* 801D6BFC 001D3B5C FF C0 10 90 */ fmr f30, f2 +/* 801D6C00 001D3B60 B0 01 00 08 */ sth r0, 8(r1) +/* 801D6C04 001D3B64 7C E6 3B 78 */ mr r6, r7 +/* 801D6C08 001D3B68 7C 87 23 78 */ mr r7, r4 +/* 801D6C0C 001D3B6C FF E0 18 90 */ fmr f31, f3 +/* 801D6C10 001D3B70 8B 61 00 7B */ lbz r27, 0x7b(r1) +/* 801D6C14 001D3B74 8B 81 00 7F */ lbz r28, 0x7f(r1) +/* 801D6C18 001D3B78 7C 77 1B 78 */ mr r23, r3 +/* 801D6C1C 001D3B7C 83 A1 00 80 */ lwz r29, 0x80(r1) +/* 801D6C20 001D3B80 7D 18 43 78 */ mr r24, r8 +/* 801D6C24 001D3B84 83 C1 00 84 */ lwz r30, 0x84(r1) +/* 801D6C28 001D3B88 7D 39 4B 78 */ mr r25, r9 +/* 801D6C2C 001D3B8C 8B E1 00 8B */ lbz r31, 0x8b(r1) +/* 801D6C30 001D3B90 7D 5A 53 78 */ mr r26, r10 +/* 801D6C34 001D3B94 38 81 00 08 */ addi r4, r1, 8 +/* 801D6C38 001D3B98 4B E7 A6 ED */ bl "__ct__7CEntityF9TUniqueIdRC11CEntityInfobRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801D6C3C 001D3B9C 3C 80 80 3E */ lis r4, lbl_803E58A0@ha +/* 801D6C40 001D3BA0 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801D6C44 001D3BA4 38 04 58 A0 */ addi r0, r4, lbl_803E58A0@l +/* 801D6C48 001D3BA8 38 A0 00 02 */ li r5, 2 +/* 801D6C4C 001D3BAC 90 17 00 00 */ stw r0, 0(r23) +/* 801D6C50 001D3BB0 38 C0 00 00 */ li r6, 0 +/* 801D6C54 001D3BB4 38 00 FF FF */ li r0, -1 +/* 801D6C58 001D3BB8 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 801D6C5C 001D3BBC 93 17 00 34 */ stw r24, 0x34(r23) +/* 801D6C60 001D3BC0 57 43 04 3E */ clrlwi r3, r26, 0x10 +/* 801D6C64 001D3BC4 93 37 00 38 */ stw r25, 0x38(r23) +/* 801D6C68 001D3BC8 90 B7 00 3C */ stw r5, 0x3c(r23) +/* 801D6C6C 001D3BCC 88 B7 00 40 */ lbz r5, 0x40(r23) +/* 801D6C70 001D3BD0 50 C5 3E 30 */ rlwimi r5, r6, 7, 0x18, 0x18 +/* 801D6C74 001D3BD4 98 B7 00 40 */ stb r5, 0x40(r23) +/* 801D6C78 001D3BD8 88 B7 00 40 */ lbz r5, 0x40(r23) +/* 801D6C7C 001D3BDC 50 C5 36 72 */ rlwimi r5, r6, 6, 0x19, 0x19 +/* 801D6C80 001D3BE0 98 B7 00 40 */ stb r5, 0x40(r23) +/* 801D6C84 001D3BE4 88 B7 00 40 */ lbz r5, 0x40(r23) +/* 801D6C88 001D3BE8 53 E5 26 F6 */ rlwimi r5, r31, 4, 0x1b, 0x1b +/* 801D6C8C 001D3BEC 98 B7 00 40 */ stb r5, 0x40(r23) +/* 801D6C90 001D3BF0 D3 B7 00 44 */ stfs f29, 0x44(r23) +/* 801D6C94 001D3BF4 D3 D7 00 48 */ stfs f30, 0x48(r23) +/* 801D6C98 001D3BF8 D3 F7 00 4C */ stfs f31, 0x4c(r23) +/* 801D6C9C 001D3BFC 90 17 00 50 */ stw r0, 0x50(r23) +/* 801D6CA0 001D3C00 90 17 00 54 */ stw r0, 0x54(r23) +/* 801D6CA4 001D3C04 90 D7 00 58 */ stw r6, 0x58(r23) +/* 801D6CA8 001D3C08 C0 04 00 00 */ lfs f0, 0(r4) +/* 801D6CAC 001D3C0C D0 17 00 5C */ stfs f0, 0x5c(r23) +/* 801D6CB0 001D3C10 C0 04 00 04 */ lfs f0, 4(r4) +/* 801D6CB4 001D3C14 D0 17 00 60 */ stfs f0, 0x60(r23) +/* 801D6CB8 001D3C18 C0 04 00 08 */ lfs f0, 8(r4) +/* 801D6CBC 001D3C1C D0 17 00 64 */ stfs f0, 0x64(r23) +/* 801D6CC0 001D3C20 90 17 00 68 */ stw r0, 0x68(r23) +/* 801D6CC4 001D3C24 C0 04 00 00 */ lfs f0, 0(r4) +/* 801D6CC8 001D3C28 D0 17 00 6C */ stfs f0, 0x6c(r23) +/* 801D6CCC 001D3C2C C0 04 00 04 */ lfs f0, 4(r4) +/* 801D6CD0 001D3C30 D0 17 00 70 */ stfs f0, 0x70(r23) +/* 801D6CD4 001D3C34 C0 04 00 08 */ lfs f0, 8(r4) +/* 801D6CD8 001D3C38 D0 17 00 74 */ stfs f0, 0x74(r23) +/* 801D6CDC 001D3C3C 90 17 00 78 */ stw r0, 0x78(r23) +/* 801D6CE0 001D3C40 C0 04 00 00 */ lfs f0, 0(r4) +/* 801D6CE4 001D3C44 D0 17 00 7C */ stfs f0, 0x7c(r23) +/* 801D6CE8 001D3C48 C0 04 00 04 */ lfs f0, 4(r4) +/* 801D6CEC 001D3C4C D0 17 00 80 */ stfs f0, 0x80(r23) +/* 801D6CF0 001D3C50 C0 04 00 08 */ lfs f0, 8(r4) +/* 801D6CF4 001D3C54 D0 17 00 84 */ stfs f0, 0x84(r23) +/* 801D6CF8 001D3C58 48 11 1C B9 */ bl TranslateSFXID__11CSfxManagerFUs +/* 801D6CFC 001D3C5C B0 77 00 88 */ sth r3, 0x88(r23) +/* 801D6D00 001D3C60 7E E3 BB 78 */ mr r3, r23 +/* 801D6D04 001D3C64 9B 77 00 8A */ stb r27, 0x8a(r23) +/* 801D6D08 001D3C68 9B 97 00 8B */ stb r28, 0x8b(r23) +/* 801D6D0C 001D3C6C 93 B7 00 8C */ stw r29, 0x8c(r23) +/* 801D6D10 001D3C70 93 D7 00 90 */ stw r30, 0x90(r23) +/* 801D6D14 001D3C74 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 801D6D18 001D3C78 CB E1 00 60 */ lfd f31, 0x60(r1) +/* 801D6D1C 001D3C7C E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 +/* 801D6D20 001D3C80 CB C1 00 50 */ lfd f30, 0x50(r1) +/* 801D6D24 001D3C84 E3 A1 00 48 */ psq_l f29, 72(r1), 0, qr0 +/* 801D6D28 001D3C88 CB A1 00 40 */ lfd f29, 0x40(r1) +/* 801D6D2C 001D3C8C BA E1 00 1C */ lmw r23, 0x1c(r1) +/* 801D6D30 001D3C90 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801D6D34 001D3C94 7C 08 03 A6 */ mtlr r0 +/* 801D6D38 001D3C98 38 21 00 70 */ addi r1, r1, 0x70 +/* 801D6D3C 001D3C9C 4E 80 00 20 */ blr + +.global "__ct__22CScriptWorldTeleporterF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +"__ct__22CScriptWorldTeleporterF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>": +/* 801D6D40 001D3CA0 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801D6D44 001D3CA4 7C 08 02 A6 */ mflr r0 +/* 801D6D48 001D3CA8 90 01 00 54 */ stw r0, 0x54(r1) +/* 801D6D4C 001D3CAC BE 21 00 14 */ stmw r17, 0x14(r1) +/* 801D6D50 001D3CB0 7C 78 1B 78 */ mr r24, r3 +/* 801D6D54 001D3CB4 83 81 00 58 */ lwz r28, 0x58(r1) +/* 801D6D58 001D3CB8 7D 19 43 78 */ mr r25, r8 +/* 801D6D5C 001D3CBC 83 A1 00 5C */ lwz r29, 0x5c(r1) +/* 801D6D60 001D3CC0 7D 3A 4B 78 */ mr r26, r9 +/* 801D6D64 001D3CC4 83 C1 00 60 */ lwz r30, 0x60(r1) +/* 801D6D68 001D3CC8 7D 5B 53 78 */ mr r27, r10 +/* 801D6D6C 001D3CCC 83 E1 00 64 */ lwz r31, 0x64(r1) +/* 801D6D70 001D3CD0 82 21 00 68 */ lwz r17, 0x68(r1) +/* 801D6D74 001D3CD4 82 41 00 6C */ lwz r18, 0x6c(r1) +/* 801D6D78 001D3CD8 82 61 00 70 */ lwz r19, 0x70(r1) +/* 801D6D7C 001D3CDC 8A 81 00 77 */ lbz r20, 0x77(r1) +/* 801D6D80 001D3CE0 A2 A1 00 7A */ lhz r21, 0x7a(r1) +/* 801D6D84 001D3CE4 8A C1 00 7F */ lbz r22, 0x7f(r1) +/* 801D6D88 001D3CE8 8A E1 00 83 */ lbz r23, 0x83(r1) +/* 801D6D8C 001D3CEC A0 04 00 00 */ lhz r0, 0(r4) +/* 801D6D90 001D3CF0 7C A4 2B 78 */ mr r4, r5 +/* 801D6D94 001D3CF4 7C C5 33 78 */ mr r5, r6 +/* 801D6D98 001D3CF8 7C E6 3B 78 */ mr r6, r7 +/* 801D6D9C 001D3CFC B0 01 00 08 */ sth r0, 8(r1) +/* 801D6DA0 001D3D00 7C 87 23 78 */ mr r7, r4 +/* 801D6DA4 001D3D04 38 81 00 08 */ addi r4, r1, 8 +/* 801D6DA8 001D3D08 4B E7 A5 7D */ bl "__ct__7CEntityF9TUniqueIdRC11CEntityInfobRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801D6DAC 001D3D0C 3C 60 80 3E */ lis r3, lbl_803E58A0@ha +/* 801D6DB0 001D3D10 38 00 00 01 */ li r0, 1 +/* 801D6DB4 001D3D14 38 63 58 A0 */ addi r3, r3, lbl_803E58A0@l +/* 801D6DB8 001D3D18 38 80 00 00 */ li r4, 0 +/* 801D6DBC 001D3D1C 90 78 00 00 */ stw r3, 0(r24) +/* 801D6DC0 001D3D20 7E A3 AB 78 */ mr r3, r21 +/* 801D6DC4 001D3D24 C0 42 AC 40 */ lfs f2, lbl_805AC960@sda21(r2) +/* 801D6DC8 001D3D28 93 38 00 34 */ stw r25, 0x34(r24) +/* 801D6DCC 001D3D2C C0 22 AC 44 */ lfs f1, lbl_805AC964@sda21(r2) +/* 801D6DD0 001D3D30 93 58 00 38 */ stw r26, 0x38(r24) +/* 801D6DD4 001D3D34 C0 02 AC 48 */ lfs f0, lbl_805AC968@sda21(r2) +/* 801D6DD8 001D3D38 90 18 00 3C */ stw r0, 0x3c(r24) +/* 801D6DDC 001D3D3C 88 18 00 40 */ lbz r0, 0x40(r24) +/* 801D6DE0 001D3D40 52 80 3E 30 */ rlwimi r0, r20, 7, 0x18, 0x18 +/* 801D6DE4 001D3D44 98 18 00 40 */ stb r0, 0x40(r24) +/* 801D6DE8 001D3D48 88 18 00 40 */ lbz r0, 0x40(r24) +/* 801D6DEC 001D3D4C 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 801D6DF0 001D3D50 98 18 00 40 */ stb r0, 0x40(r24) +/* 801D6DF4 001D3D54 88 18 00 40 */ lbz r0, 0x40(r24) +/* 801D6DF8 001D3D58 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 801D6DFC 001D3D5C 98 18 00 40 */ stb r0, 0x40(r24) +/* 801D6E00 001D3D60 D0 58 00 44 */ stfs f2, 0x44(r24) +/* 801D6E04 001D3D64 D0 38 00 48 */ stfs f1, 0x48(r24) +/* 801D6E08 001D3D68 D0 18 00 4C */ stfs f0, 0x4c(r24) +/* 801D6E0C 001D3D6C 93 78 00 50 */ stw r27, 0x50(r24) +/* 801D6E10 001D3D70 93 98 00 54 */ stw r28, 0x54(r24) +/* 801D6E14 001D3D74 93 B8 00 58 */ stw r29, 0x58(r24) +/* 801D6E18 001D3D78 C0 1E 00 00 */ lfs f0, 0(r30) +/* 801D6E1C 001D3D7C D0 18 00 5C */ stfs f0, 0x5c(r24) +/* 801D6E20 001D3D80 C0 1E 00 04 */ lfs f0, 4(r30) +/* 801D6E24 001D3D84 D0 18 00 60 */ stfs f0, 0x60(r24) +/* 801D6E28 001D3D88 C0 1E 00 08 */ lfs f0, 8(r30) +/* 801D6E2C 001D3D8C D0 18 00 64 */ stfs f0, 0x64(r24) +/* 801D6E30 001D3D90 93 F8 00 68 */ stw r31, 0x68(r24) +/* 801D6E34 001D3D94 C0 11 00 00 */ lfs f0, 0(r17) +/* 801D6E38 001D3D98 D0 18 00 6C */ stfs f0, 0x6c(r24) +/* 801D6E3C 001D3D9C C0 11 00 04 */ lfs f0, 4(r17) +/* 801D6E40 001D3DA0 D0 18 00 70 */ stfs f0, 0x70(r24) +/* 801D6E44 001D3DA4 C0 11 00 08 */ lfs f0, 8(r17) +/* 801D6E48 001D3DA8 D0 18 00 74 */ stfs f0, 0x74(r24) +/* 801D6E4C 001D3DAC 92 58 00 78 */ stw r18, 0x78(r24) +/* 801D6E50 001D3DB0 C0 13 00 00 */ lfs f0, 0(r19) +/* 801D6E54 001D3DB4 D0 18 00 7C */ stfs f0, 0x7c(r24) +/* 801D6E58 001D3DB8 C0 13 00 04 */ lfs f0, 4(r19) +/* 801D6E5C 001D3DBC D0 18 00 80 */ stfs f0, 0x80(r24) +/* 801D6E60 001D3DC0 C0 13 00 08 */ lfs f0, 8(r19) +/* 801D6E64 001D3DC4 D0 18 00 84 */ stfs f0, 0x84(r24) +/* 801D6E68 001D3DC8 48 11 1B 49 */ bl TranslateSFXID__11CSfxManagerFUs +/* 801D6E6C 001D3DCC B0 78 00 88 */ sth r3, 0x88(r24) +/* 801D6E70 001D3DD0 7F 03 C3 78 */ mr r3, r24 +/* 801D6E74 001D3DD4 9A D8 00 8A */ stb r22, 0x8a(r24) +/* 801D6E78 001D3DD8 9A F8 00 8B */ stb r23, 0x8b(r24) +/* 801D6E7C 001D3DDC BA 21 00 14 */ lmw r17, 0x14(r1) +/* 801D6E80 001D3DE0 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801D6E84 001D3DE4 7C 08 03 A6 */ mtlr r0 +/* 801D6E88 001D3DE8 38 21 00 50 */ addi r1, r1, 0x50 +/* 801D6E8C 001D3DEC 4E 80 00 20 */ blr + +.global "__ct__22CScriptWorldTeleporterF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfobUiUi" +"__ct__22CScriptWorldTeleporterF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfobUiUi": +/* 801D6E90 001D3DF0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801D6E94 001D3DF4 7C 08 02 A6 */ mflr r0 +/* 801D6E98 001D3DF8 90 01 00 24 */ stw r0, 0x24(r1) +/* 801D6E9C 001D3DFC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801D6EA0 001D3E00 7D 3F 4B 78 */ mr r31, r9 +/* 801D6EA4 001D3E04 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801D6EA8 001D3E08 7D 1E 43 78 */ mr r30, r8 +/* 801D6EAC 001D3E0C 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801D6EB0 001D3E10 7C 7D 1B 78 */ mr r29, r3 +/* 801D6EB4 001D3E14 A0 04 00 00 */ lhz r0, 0(r4) +/* 801D6EB8 001D3E18 7C A4 2B 78 */ mr r4, r5 +/* 801D6EBC 001D3E1C 7C C5 33 78 */ mr r5, r6 +/* 801D6EC0 001D3E20 7C E6 3B 78 */ mr r6, r7 +/* 801D6EC4 001D3E24 B0 01 00 08 */ sth r0, 8(r1) +/* 801D6EC8 001D3E28 7C 87 23 78 */ mr r7, r4 +/* 801D6ECC 001D3E2C 38 81 00 08 */ addi r4, r1, 8 +/* 801D6ED0 001D3E30 4B E7 A4 55 */ bl "__ct__7CEntityF9TUniqueIdRC11CEntityInfobRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801D6ED4 001D3E34 3C 80 80 3E */ lis r4, lbl_803E58A0@ha +/* 801D6ED8 001D3E38 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801D6EDC 001D3E3C 38 04 58 A0 */ addi r0, r4, lbl_803E58A0@l +/* 801D6EE0 001D3E40 38 E0 00 00 */ li r7, 0 +/* 801D6EE4 001D3E44 90 1D 00 00 */ stw r0, 0(r29) +/* 801D6EE8 001D3E48 38 A0 FF FF */ li r5, -1 +/* 801D6EEC 001D3E4C C0 42 AC 40 */ lfs f2, lbl_805AC960@sda21(r2) +/* 801D6EF0 001D3E50 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 801D6EF4 001D3E54 93 DD 00 34 */ stw r30, 0x34(r29) +/* 801D6EF8 001D3E58 7F A3 EB 78 */ mr r3, r29 +/* 801D6EFC 001D3E5C C0 22 AC 44 */ lfs f1, lbl_805AC964@sda21(r2) +/* 801D6F00 001D3E60 93 FD 00 38 */ stw r31, 0x38(r29) +/* 801D6F04 001D3E64 C0 02 AC 48 */ lfs f0, lbl_805AC968@sda21(r2) +/* 801D6F08 001D3E68 90 FD 00 3C */ stw r7, 0x3c(r29) +/* 801D6F0C 001D3E6C A0 02 C5 FC */ lhz r0, lbl_805AE31C@sda21(r2) +/* 801D6F10 001D3E70 88 DD 00 40 */ lbz r6, 0x40(r29) +/* 801D6F14 001D3E74 50 E6 3E 30 */ rlwimi r6, r7, 7, 0x18, 0x18 +/* 801D6F18 001D3E78 98 DD 00 40 */ stb r6, 0x40(r29) +/* 801D6F1C 001D3E7C 88 DD 00 40 */ lbz r6, 0x40(r29) +/* 801D6F20 001D3E80 50 E6 36 72 */ rlwimi r6, r7, 6, 0x19, 0x19 +/* 801D6F24 001D3E84 98 DD 00 40 */ stb r6, 0x40(r29) +/* 801D6F28 001D3E88 88 DD 00 40 */ lbz r6, 0x40(r29) +/* 801D6F2C 001D3E8C 50 E6 26 F6 */ rlwimi r6, r7, 4, 0x1b, 0x1b +/* 801D6F30 001D3E90 98 DD 00 40 */ stb r6, 0x40(r29) +/* 801D6F34 001D3E94 D0 5D 00 44 */ stfs f2, 0x44(r29) +/* 801D6F38 001D3E98 D0 3D 00 48 */ stfs f1, 0x48(r29) +/* 801D6F3C 001D3E9C D0 1D 00 4C */ stfs f0, 0x4c(r29) +/* 801D6F40 001D3EA0 90 BD 00 50 */ stw r5, 0x50(r29) +/* 801D6F44 001D3EA4 90 BD 00 54 */ stw r5, 0x54(r29) +/* 801D6F48 001D3EA8 90 FD 00 58 */ stw r7, 0x58(r29) +/* 801D6F4C 001D3EAC C0 04 00 00 */ lfs f0, 0(r4) +/* 801D6F50 001D3EB0 D0 1D 00 5C */ stfs f0, 0x5c(r29) +/* 801D6F54 001D3EB4 C0 04 00 04 */ lfs f0, 4(r4) +/* 801D6F58 001D3EB8 D0 1D 00 60 */ stfs f0, 0x60(r29) +/* 801D6F5C 001D3EBC C0 04 00 08 */ lfs f0, 8(r4) +/* 801D6F60 001D3EC0 D0 1D 00 64 */ stfs f0, 0x64(r29) +/* 801D6F64 001D3EC4 90 BD 00 68 */ stw r5, 0x68(r29) +/* 801D6F68 001D3EC8 C0 04 00 00 */ lfs f0, 0(r4) +/* 801D6F6C 001D3ECC D0 1D 00 6C */ stfs f0, 0x6c(r29) +/* 801D6F70 001D3ED0 C0 04 00 04 */ lfs f0, 4(r4) +/* 801D6F74 001D3ED4 D0 1D 00 70 */ stfs f0, 0x70(r29) +/* 801D6F78 001D3ED8 C0 04 00 08 */ lfs f0, 8(r4) +/* 801D6F7C 001D3EDC D0 1D 00 74 */ stfs f0, 0x74(r29) +/* 801D6F80 001D3EE0 90 BD 00 78 */ stw r5, 0x78(r29) +/* 801D6F84 001D3EE4 C0 04 00 00 */ lfs f0, 0(r4) +/* 801D6F88 001D3EE8 D0 1D 00 7C */ stfs f0, 0x7c(r29) +/* 801D6F8C 001D3EEC C0 04 00 04 */ lfs f0, 4(r4) +/* 801D6F90 001D3EF0 D0 1D 00 80 */ stfs f0, 0x80(r29) +/* 801D6F94 001D3EF4 C0 04 00 08 */ lfs f0, 8(r4) +/* 801D6F98 001D3EF8 D0 1D 00 84 */ stfs f0, 0x84(r29) +/* 801D6F9C 001D3EFC B0 1D 00 88 */ sth r0, 0x88(r29) +/* 801D6FA0 001D3F00 98 FD 00 8A */ stb r7, 0x8a(r29) +/* 801D6FA4 001D3F04 98 FD 00 8B */ stb r7, 0x8b(r29) +/* 801D6FA8 001D3F08 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801D6FAC 001D3F0C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801D6FB0 001D3F10 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801D6FB4 001D3F14 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801D6FB8 001D3F18 7C 08 03 A6 */ mtlr r0 +/* 801D6FBC 001D3F1C 38 21 00 20 */ addi r1, r1, 0x20 +/* 801D6FC0 001D3F20 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CTweakAutoMapper.s b/asm/Kyoto_CWD/Tweaks/CTweakAutoMapper.s similarity index 100% rename from asm/Kyoto_CWD/CTweakAutoMapper.s rename to asm/Kyoto_CWD/Tweaks/CTweakAutoMapper.s diff --git a/asm/Kyoto_CWD/CTweakBall.s b/asm/Kyoto_CWD/Tweaks/CTweakBall.s similarity index 100% rename from asm/Kyoto_CWD/CTweakBall.s rename to asm/Kyoto_CWD/Tweaks/CTweakBall.s diff --git a/asm/Kyoto_CWD/CTweakGame.s b/asm/Kyoto_CWD/Tweaks/CTweakGame.s similarity index 100% rename from asm/Kyoto_CWD/CTweakGame.s rename to asm/Kyoto_CWD/Tweaks/CTweakGame.s diff --git a/asm/Kyoto_CWD/CTweakGui.s b/asm/Kyoto_CWD/Tweaks/CTweakGui.s similarity index 100% rename from asm/Kyoto_CWD/CTweakGui.s rename to asm/Kyoto_CWD/Tweaks/CTweakGui.s diff --git a/asm/Kyoto_CWD/Tweaks/CTweakGuiColors.s b/asm/Kyoto_CWD/Tweaks/CTweakGuiColors.s new file mode 100644 index 00000000..2a78fe9f --- /dev/null +++ b/asm/Kyoto_CWD/Tweaks/CTweakGuiColors.s @@ -0,0 +1,507 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __ct__15CTweakGuiColorsFR12CInputStream +__ct__15CTweakGuiColorsFR12CInputStream: +/* 801CDA2C 001CA98C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801CDA30 001CA990 7C 08 02 A6 */ mflr r0 +/* 801CDA34 001CA994 3C A0 80 3E */ lis r5, lbl_803D9CC4@ha +/* 801CDA38 001CA998 90 01 00 14 */ stw r0, 0x14(r1) +/* 801CDA3C 001CA99C 38 05 9C C4 */ addi r0, r5, lbl_803D9CC4@l +/* 801CDA40 001CA9A0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801CDA44 001CA9A4 7C 9F 23 78 */ mr r31, r4 +/* 801CDA48 001CA9A8 93 C1 00 08 */ stw r30, 8(r1) +/* 801CDA4C 001CA9AC 7C 7E 1B 78 */ mr r30, r3 +/* 801CDA50 001CA9B0 3C 60 80 3E */ lis r3, lbl_803E5748@ha +/* 801CDA54 001CA9B4 90 1E 00 00 */ stw r0, 0(r30) +/* 801CDA58 001CA9B8 38 03 57 48 */ addi r0, r3, lbl_803E5748@l +/* 801CDA5C 001CA9BC 38 7E 00 04 */ addi r3, r30, 4 +/* 801CDA60 001CA9C0 90 1E 00 00 */ stw r0, 0(r30) +/* 801CDA64 001CA9C4 48 19 59 E9 */ bl __ct__6CColorFR12CInputStream +/* 801CDA68 001CA9C8 7F E4 FB 78 */ mr r4, r31 +/* 801CDA6C 001CA9CC 38 7E 00 08 */ addi r3, r30, 8 +/* 801CDA70 001CA9D0 48 19 59 DD */ bl __ct__6CColorFR12CInputStream +/* 801CDA74 001CA9D4 7F E4 FB 78 */ mr r4, r31 +/* 801CDA78 001CA9D8 38 7E 00 0C */ addi r3, r30, 0xc +/* 801CDA7C 001CA9DC 48 19 59 D1 */ bl __ct__6CColorFR12CInputStream +/* 801CDA80 001CA9E0 7F E4 FB 78 */ mr r4, r31 +/* 801CDA84 001CA9E4 38 7E 00 10 */ addi r3, r30, 0x10 +/* 801CDA88 001CA9E8 48 19 59 C5 */ bl __ct__6CColorFR12CInputStream +/* 801CDA8C 001CA9EC 7F E4 FB 78 */ mr r4, r31 +/* 801CDA90 001CA9F0 38 7E 00 14 */ addi r3, r30, 0x14 +/* 801CDA94 001CA9F4 48 19 59 B9 */ bl __ct__6CColorFR12CInputStream +/* 801CDA98 001CA9F8 7F E4 FB 78 */ mr r4, r31 +/* 801CDA9C 001CA9FC 38 7E 00 18 */ addi r3, r30, 0x18 +/* 801CDAA0 001CAA00 48 19 59 AD */ bl __ct__6CColorFR12CInputStream +/* 801CDAA4 001CAA04 7F E4 FB 78 */ mr r4, r31 +/* 801CDAA8 001CAA08 38 7E 00 1C */ addi r3, r30, 0x1c +/* 801CDAAC 001CAA0C 48 19 59 A1 */ bl __ct__6CColorFR12CInputStream +/* 801CDAB0 001CAA10 7F E4 FB 78 */ mr r4, r31 +/* 801CDAB4 001CAA14 38 7E 00 20 */ addi r3, r30, 0x20 +/* 801CDAB8 001CAA18 48 19 59 95 */ bl __ct__6CColorFR12CInputStream +/* 801CDABC 001CAA1C 7F E4 FB 78 */ mr r4, r31 +/* 801CDAC0 001CAA20 38 7E 00 24 */ addi r3, r30, 0x24 +/* 801CDAC4 001CAA24 48 19 59 89 */ bl __ct__6CColorFR12CInputStream +/* 801CDAC8 001CAA28 7F E4 FB 78 */ mr r4, r31 +/* 801CDACC 001CAA2C 38 7E 00 28 */ addi r3, r30, 0x28 +/* 801CDAD0 001CAA30 48 19 59 7D */ bl __ct__6CColorFR12CInputStream +/* 801CDAD4 001CAA34 7F E4 FB 78 */ mr r4, r31 +/* 801CDAD8 001CAA38 38 7E 00 2C */ addi r3, r30, 0x2c +/* 801CDADC 001CAA3C 48 19 59 71 */ bl __ct__6CColorFR12CInputStream +/* 801CDAE0 001CAA40 7F E4 FB 78 */ mr r4, r31 +/* 801CDAE4 001CAA44 38 7E 00 30 */ addi r3, r30, 0x30 +/* 801CDAE8 001CAA48 48 19 59 65 */ bl __ct__6CColorFR12CInputStream +/* 801CDAEC 001CAA4C 7F E4 FB 78 */ mr r4, r31 +/* 801CDAF0 001CAA50 38 7E 00 34 */ addi r3, r30, 0x34 +/* 801CDAF4 001CAA54 48 19 59 59 */ bl __ct__6CColorFR12CInputStream +/* 801CDAF8 001CAA58 7F E4 FB 78 */ mr r4, r31 +/* 801CDAFC 001CAA5C 38 7E 00 38 */ addi r3, r30, 0x38 +/* 801CDB00 001CAA60 48 19 59 4D */ bl __ct__6CColorFR12CInputStream +/* 801CDB04 001CAA64 7F E4 FB 78 */ mr r4, r31 +/* 801CDB08 001CAA68 38 7E 00 3C */ addi r3, r30, 0x3c +/* 801CDB0C 001CAA6C 48 19 59 41 */ bl __ct__6CColorFR12CInputStream +/* 801CDB10 001CAA70 7F E4 FB 78 */ mr r4, r31 +/* 801CDB14 001CAA74 38 7E 00 40 */ addi r3, r30, 0x40 +/* 801CDB18 001CAA78 48 19 59 35 */ bl __ct__6CColorFR12CInputStream +/* 801CDB1C 001CAA7C 7F E4 FB 78 */ mr r4, r31 +/* 801CDB20 001CAA80 38 7E 00 44 */ addi r3, r30, 0x44 +/* 801CDB24 001CAA84 48 19 59 29 */ bl __ct__6CColorFR12CInputStream +/* 801CDB28 001CAA88 7F E4 FB 78 */ mr r4, r31 +/* 801CDB2C 001CAA8C 38 7E 00 48 */ addi r3, r30, 0x48 +/* 801CDB30 001CAA90 48 19 59 1D */ bl __ct__6CColorFR12CInputStream +/* 801CDB34 001CAA94 7F E4 FB 78 */ mr r4, r31 +/* 801CDB38 001CAA98 38 7E 00 4C */ addi r3, r30, 0x4c +/* 801CDB3C 001CAA9C 48 19 59 11 */ bl __ct__6CColorFR12CInputStream +/* 801CDB40 001CAAA0 7F E4 FB 78 */ mr r4, r31 +/* 801CDB44 001CAAA4 38 7E 00 50 */ addi r3, r30, 0x50 +/* 801CDB48 001CAAA8 48 19 59 05 */ bl __ct__6CColorFR12CInputStream +/* 801CDB4C 001CAAAC 7F E4 FB 78 */ mr r4, r31 +/* 801CDB50 001CAAB0 38 7E 00 54 */ addi r3, r30, 0x54 +/* 801CDB54 001CAAB4 48 19 58 F9 */ bl __ct__6CColorFR12CInputStream +/* 801CDB58 001CAAB8 7F E4 FB 78 */ mr r4, r31 +/* 801CDB5C 001CAABC 38 7E 00 58 */ addi r3, r30, 0x58 +/* 801CDB60 001CAAC0 48 19 58 ED */ bl __ct__6CColorFR12CInputStream +/* 801CDB64 001CAAC4 7F E4 FB 78 */ mr r4, r31 +/* 801CDB68 001CAAC8 38 7E 00 5C */ addi r3, r30, 0x5c +/* 801CDB6C 001CAACC 48 19 58 E1 */ bl __ct__6CColorFR12CInputStream +/* 801CDB70 001CAAD0 7F E4 FB 78 */ mr r4, r31 +/* 801CDB74 001CAAD4 38 7E 00 60 */ addi r3, r30, 0x60 +/* 801CDB78 001CAAD8 48 19 58 D5 */ bl __ct__6CColorFR12CInputStream +/* 801CDB7C 001CAADC 7F E4 FB 78 */ mr r4, r31 +/* 801CDB80 001CAAE0 38 7E 00 64 */ addi r3, r30, 0x64 +/* 801CDB84 001CAAE4 48 19 58 C9 */ bl __ct__6CColorFR12CInputStream +/* 801CDB88 001CAAE8 7F E4 FB 78 */ mr r4, r31 +/* 801CDB8C 001CAAEC 38 7E 00 68 */ addi r3, r30, 0x68 +/* 801CDB90 001CAAF0 48 19 58 BD */ bl __ct__6CColorFR12CInputStream +/* 801CDB94 001CAAF4 7F E4 FB 78 */ mr r4, r31 +/* 801CDB98 001CAAF8 38 7E 00 6C */ addi r3, r30, 0x6c +/* 801CDB9C 001CAAFC 48 19 58 B1 */ bl __ct__6CColorFR12CInputStream +/* 801CDBA0 001CAB00 7F E4 FB 78 */ mr r4, r31 +/* 801CDBA4 001CAB04 38 7E 00 70 */ addi r3, r30, 0x70 +/* 801CDBA8 001CAB08 48 19 58 A5 */ bl __ct__6CColorFR12CInputStream +/* 801CDBAC 001CAB0C 7F E4 FB 78 */ mr r4, r31 +/* 801CDBB0 001CAB10 38 7E 00 74 */ addi r3, r30, 0x74 +/* 801CDBB4 001CAB14 48 19 58 99 */ bl __ct__6CColorFR12CInputStream +/* 801CDBB8 001CAB18 7F E4 FB 78 */ mr r4, r31 +/* 801CDBBC 001CAB1C 38 7E 00 78 */ addi r3, r30, 0x78 +/* 801CDBC0 001CAB20 48 19 58 8D */ bl __ct__6CColorFR12CInputStream +/* 801CDBC4 001CAB24 7F E4 FB 78 */ mr r4, r31 +/* 801CDBC8 001CAB28 38 7E 00 7C */ addi r3, r30, 0x7c +/* 801CDBCC 001CAB2C 48 19 58 81 */ bl __ct__6CColorFR12CInputStream +/* 801CDBD0 001CAB30 7F E4 FB 78 */ mr r4, r31 +/* 801CDBD4 001CAB34 38 7E 00 80 */ addi r3, r30, 0x80 +/* 801CDBD8 001CAB38 48 19 58 75 */ bl __ct__6CColorFR12CInputStream +/* 801CDBDC 001CAB3C 7F E4 FB 78 */ mr r4, r31 +/* 801CDBE0 001CAB40 38 7E 00 84 */ addi r3, r30, 0x84 +/* 801CDBE4 001CAB44 48 19 58 69 */ bl __ct__6CColorFR12CInputStream +/* 801CDBE8 001CAB48 7F E4 FB 78 */ mr r4, r31 +/* 801CDBEC 001CAB4C 38 7E 00 88 */ addi r3, r30, 0x88 +/* 801CDBF0 001CAB50 48 19 58 5D */ bl __ct__6CColorFR12CInputStream +/* 801CDBF4 001CAB54 7F E4 FB 78 */ mr r4, r31 +/* 801CDBF8 001CAB58 38 7E 00 8C */ addi r3, r30, 0x8c +/* 801CDBFC 001CAB5C 48 19 58 51 */ bl __ct__6CColorFR12CInputStream +/* 801CDC00 001CAB60 7F E4 FB 78 */ mr r4, r31 +/* 801CDC04 001CAB64 38 7E 00 90 */ addi r3, r30, 0x90 +/* 801CDC08 001CAB68 48 19 58 45 */ bl __ct__6CColorFR12CInputStream +/* 801CDC0C 001CAB6C 7F E4 FB 78 */ mr r4, r31 +/* 801CDC10 001CAB70 38 7E 00 94 */ addi r3, r30, 0x94 +/* 801CDC14 001CAB74 48 19 58 39 */ bl __ct__6CColorFR12CInputStream +/* 801CDC18 001CAB78 7F E4 FB 78 */ mr r4, r31 +/* 801CDC1C 001CAB7C 38 7E 00 98 */ addi r3, r30, 0x98 +/* 801CDC20 001CAB80 48 19 58 2D */ bl __ct__6CColorFR12CInputStream +/* 801CDC24 001CAB84 7F E4 FB 78 */ mr r4, r31 +/* 801CDC28 001CAB88 38 7E 00 9C */ addi r3, r30, 0x9c +/* 801CDC2C 001CAB8C 48 19 58 21 */ bl __ct__6CColorFR12CInputStream +/* 801CDC30 001CAB90 7F E4 FB 78 */ mr r4, r31 +/* 801CDC34 001CAB94 38 7E 00 A0 */ addi r3, r30, 0xa0 +/* 801CDC38 001CAB98 48 19 58 15 */ bl __ct__6CColorFR12CInputStream +/* 801CDC3C 001CAB9C 7F E4 FB 78 */ mr r4, r31 +/* 801CDC40 001CABA0 38 7E 00 A4 */ addi r3, r30, 0xa4 +/* 801CDC44 001CABA4 48 19 58 09 */ bl __ct__6CColorFR12CInputStream +/* 801CDC48 001CABA8 7F E4 FB 78 */ mr r4, r31 +/* 801CDC4C 001CABAC 38 7E 00 A8 */ addi r3, r30, 0xa8 +/* 801CDC50 001CABB0 48 19 57 FD */ bl __ct__6CColorFR12CInputStream +/* 801CDC54 001CABB4 7F E4 FB 78 */ mr r4, r31 +/* 801CDC58 001CABB8 38 7E 00 AC */ addi r3, r30, 0xac +/* 801CDC5C 001CABBC 48 19 57 F1 */ bl __ct__6CColorFR12CInputStream +/* 801CDC60 001CABC0 7F E4 FB 78 */ mr r4, r31 +/* 801CDC64 001CABC4 38 7E 00 B0 */ addi r3, r30, 0xb0 +/* 801CDC68 001CABC8 48 19 57 E5 */ bl __ct__6CColorFR12CInputStream +/* 801CDC6C 001CABCC 7F E4 FB 78 */ mr r4, r31 +/* 801CDC70 001CABD0 38 7E 00 B4 */ addi r3, r30, 0xb4 +/* 801CDC74 001CABD4 48 19 57 D9 */ bl __ct__6CColorFR12CInputStream +/* 801CDC78 001CABD8 7F E4 FB 78 */ mr r4, r31 +/* 801CDC7C 001CABDC 38 7E 00 B8 */ addi r3, r30, 0xb8 +/* 801CDC80 001CABE0 48 19 57 CD */ bl __ct__6CColorFR12CInputStream +/* 801CDC84 001CABE4 7F E4 FB 78 */ mr r4, r31 +/* 801CDC88 001CABE8 38 7E 00 BC */ addi r3, r30, 0xbc +/* 801CDC8C 001CABEC 48 19 57 C1 */ bl __ct__6CColorFR12CInputStream +/* 801CDC90 001CABF0 7F E4 FB 78 */ mr r4, r31 +/* 801CDC94 001CABF4 38 7E 00 C0 */ addi r3, r30, 0xc0 +/* 801CDC98 001CABF8 48 19 57 B5 */ bl __ct__6CColorFR12CInputStream +/* 801CDC9C 001CABFC 7F E4 FB 78 */ mr r4, r31 +/* 801CDCA0 001CAC00 38 7E 00 C4 */ addi r3, r30, 0xc4 +/* 801CDCA4 001CAC04 48 19 57 A9 */ bl __ct__6CColorFR12CInputStream +/* 801CDCA8 001CAC08 7F E4 FB 78 */ mr r4, r31 +/* 801CDCAC 001CAC0C 38 7E 00 C8 */ addi r3, r30, 0xc8 +/* 801CDCB0 001CAC10 48 19 57 9D */ bl __ct__6CColorFR12CInputStream +/* 801CDCB4 001CAC14 7F E4 FB 78 */ mr r4, r31 +/* 801CDCB8 001CAC18 38 7E 00 CC */ addi r3, r30, 0xcc +/* 801CDCBC 001CAC1C 48 19 57 91 */ bl __ct__6CColorFR12CInputStream +/* 801CDCC0 001CAC20 7F E4 FB 78 */ mr r4, r31 +/* 801CDCC4 001CAC24 38 7E 00 D0 */ addi r3, r30, 0xd0 +/* 801CDCC8 001CAC28 48 19 57 85 */ bl __ct__6CColorFR12CInputStream +/* 801CDCCC 001CAC2C 7F E4 FB 78 */ mr r4, r31 +/* 801CDCD0 001CAC30 38 7E 00 D4 */ addi r3, r30, 0xd4 +/* 801CDCD4 001CAC34 48 19 57 79 */ bl __ct__6CColorFR12CInputStream +/* 801CDCD8 001CAC38 7F E4 FB 78 */ mr r4, r31 +/* 801CDCDC 001CAC3C 38 7E 00 D8 */ addi r3, r30, 0xd8 +/* 801CDCE0 001CAC40 48 19 57 6D */ bl __ct__6CColorFR12CInputStream +/* 801CDCE4 001CAC44 7F E4 FB 78 */ mr r4, r31 +/* 801CDCE8 001CAC48 38 7E 00 DC */ addi r3, r30, 0xdc +/* 801CDCEC 001CAC4C 48 19 57 61 */ bl __ct__6CColorFR12CInputStream +/* 801CDCF0 001CAC50 7F E4 FB 78 */ mr r4, r31 +/* 801CDCF4 001CAC54 38 7E 00 E0 */ addi r3, r30, 0xe0 +/* 801CDCF8 001CAC58 48 19 57 55 */ bl __ct__6CColorFR12CInputStream +/* 801CDCFC 001CAC5C 7F E4 FB 78 */ mr r4, r31 +/* 801CDD00 001CAC60 38 7E 00 E4 */ addi r3, r30, 0xe4 +/* 801CDD04 001CAC64 48 19 57 49 */ bl __ct__6CColorFR12CInputStream +/* 801CDD08 001CAC68 7F E4 FB 78 */ mr r4, r31 +/* 801CDD0C 001CAC6C 38 7E 00 E8 */ addi r3, r30, 0xe8 +/* 801CDD10 001CAC70 48 19 57 3D */ bl __ct__6CColorFR12CInputStream +/* 801CDD14 001CAC74 7F E4 FB 78 */ mr r4, r31 +/* 801CDD18 001CAC78 38 7E 00 EC */ addi r3, r30, 0xec +/* 801CDD1C 001CAC7C 48 19 57 31 */ bl __ct__6CColorFR12CInputStream +/* 801CDD20 001CAC80 7F E4 FB 78 */ mr r4, r31 +/* 801CDD24 001CAC84 38 7E 00 F0 */ addi r3, r30, 0xf0 +/* 801CDD28 001CAC88 48 19 57 25 */ bl __ct__6CColorFR12CInputStream +/* 801CDD2C 001CAC8C 7F E4 FB 78 */ mr r4, r31 +/* 801CDD30 001CAC90 38 7E 00 F4 */ addi r3, r30, 0xf4 +/* 801CDD34 001CAC94 48 19 57 19 */ bl __ct__6CColorFR12CInputStream +/* 801CDD38 001CAC98 7F E4 FB 78 */ mr r4, r31 +/* 801CDD3C 001CAC9C 38 7E 00 F8 */ addi r3, r30, 0xf8 +/* 801CDD40 001CACA0 48 19 57 0D */ bl __ct__6CColorFR12CInputStream +/* 801CDD44 001CACA4 7F E4 FB 78 */ mr r4, r31 +/* 801CDD48 001CACA8 38 7E 00 FC */ addi r3, r30, 0xfc +/* 801CDD4C 001CACAC 48 19 57 01 */ bl __ct__6CColorFR12CInputStream +/* 801CDD50 001CACB0 7F E4 FB 78 */ mr r4, r31 +/* 801CDD54 001CACB4 38 7E 01 00 */ addi r3, r30, 0x100 +/* 801CDD58 001CACB8 48 19 56 F5 */ bl __ct__6CColorFR12CInputStream +/* 801CDD5C 001CACBC 7F E4 FB 78 */ mr r4, r31 +/* 801CDD60 001CACC0 38 7E 01 04 */ addi r3, r30, 0x104 +/* 801CDD64 001CACC4 48 19 56 E9 */ bl __ct__6CColorFR12CInputStream +/* 801CDD68 001CACC8 7F E4 FB 78 */ mr r4, r31 +/* 801CDD6C 001CACCC 38 7E 01 08 */ addi r3, r30, 0x108 +/* 801CDD70 001CACD0 48 19 56 DD */ bl __ct__6CColorFR12CInputStream +/* 801CDD74 001CACD4 7F E4 FB 78 */ mr r4, r31 +/* 801CDD78 001CACD8 38 7E 01 0C */ addi r3, r30, 0x10c +/* 801CDD7C 001CACDC 48 19 56 D1 */ bl __ct__6CColorFR12CInputStream +/* 801CDD80 001CACE0 7F E4 FB 78 */ mr r4, r31 +/* 801CDD84 001CACE4 38 7E 01 10 */ addi r3, r30, 0x110 +/* 801CDD88 001CACE8 48 19 56 C5 */ bl __ct__6CColorFR12CInputStream +/* 801CDD8C 001CACEC 7F E4 FB 78 */ mr r4, r31 +/* 801CDD90 001CACF0 38 7E 01 14 */ addi r3, r30, 0x114 +/* 801CDD94 001CACF4 48 19 56 B9 */ bl __ct__6CColorFR12CInputStream +/* 801CDD98 001CACF8 7F E4 FB 78 */ mr r4, r31 +/* 801CDD9C 001CACFC 38 7E 01 18 */ addi r3, r30, 0x118 +/* 801CDDA0 001CAD00 48 19 56 AD */ bl __ct__6CColorFR12CInputStream +/* 801CDDA4 001CAD04 7F E4 FB 78 */ mr r4, r31 +/* 801CDDA8 001CAD08 38 7E 01 1C */ addi r3, r30, 0x11c +/* 801CDDAC 001CAD0C 48 19 56 A1 */ bl __ct__6CColorFR12CInputStream +/* 801CDDB0 001CAD10 7F E4 FB 78 */ mr r4, r31 +/* 801CDDB4 001CAD14 38 7E 01 20 */ addi r3, r30, 0x120 +/* 801CDDB8 001CAD18 48 19 56 95 */ bl __ct__6CColorFR12CInputStream +/* 801CDDBC 001CAD1C 7F E4 FB 78 */ mr r4, r31 +/* 801CDDC0 001CAD20 38 7E 01 24 */ addi r3, r30, 0x124 +/* 801CDDC4 001CAD24 48 19 56 89 */ bl __ct__6CColorFR12CInputStream +/* 801CDDC8 001CAD28 7F E4 FB 78 */ mr r4, r31 +/* 801CDDCC 001CAD2C 38 7E 01 28 */ addi r3, r30, 0x128 +/* 801CDDD0 001CAD30 48 19 56 7D */ bl __ct__6CColorFR12CInputStream +/* 801CDDD4 001CAD34 7F E4 FB 78 */ mr r4, r31 +/* 801CDDD8 001CAD38 38 7E 01 2C */ addi r3, r30, 0x12c +/* 801CDDDC 001CAD3C 48 19 56 71 */ bl __ct__6CColorFR12CInputStream +/* 801CDDE0 001CAD40 7F E4 FB 78 */ mr r4, r31 +/* 801CDDE4 001CAD44 38 7E 01 30 */ addi r3, r30, 0x130 +/* 801CDDE8 001CAD48 48 19 56 65 */ bl __ct__6CColorFR12CInputStream +/* 801CDDEC 001CAD4C 7F E4 FB 78 */ mr r4, r31 +/* 801CDDF0 001CAD50 38 7E 01 34 */ addi r3, r30, 0x134 +/* 801CDDF4 001CAD54 48 19 56 59 */ bl __ct__6CColorFR12CInputStream +/* 801CDDF8 001CAD58 7F E4 FB 78 */ mr r4, r31 +/* 801CDDFC 001CAD5C 38 7E 01 38 */ addi r3, r30, 0x138 +/* 801CDE00 001CAD60 48 19 56 4D */ bl __ct__6CColorFR12CInputStream +/* 801CDE04 001CAD64 7F E4 FB 78 */ mr r4, r31 +/* 801CDE08 001CAD68 38 7E 01 3C */ addi r3, r30, 0x13c +/* 801CDE0C 001CAD6C 48 19 56 41 */ bl __ct__6CColorFR12CInputStream +/* 801CDE10 001CAD70 7F E4 FB 78 */ mr r4, r31 +/* 801CDE14 001CAD74 38 7E 01 40 */ addi r3, r30, 0x140 +/* 801CDE18 001CAD78 48 19 56 35 */ bl __ct__6CColorFR12CInputStream +/* 801CDE1C 001CAD7C 7F E4 FB 78 */ mr r4, r31 +/* 801CDE20 001CAD80 38 7E 01 44 */ addi r3, r30, 0x144 +/* 801CDE24 001CAD84 48 19 56 29 */ bl __ct__6CColorFR12CInputStream +/* 801CDE28 001CAD88 7F E4 FB 78 */ mr r4, r31 +/* 801CDE2C 001CAD8C 38 7E 01 48 */ addi r3, r30, 0x148 +/* 801CDE30 001CAD90 48 19 56 1D */ bl __ct__6CColorFR12CInputStream +/* 801CDE34 001CAD94 7F E4 FB 78 */ mr r4, r31 +/* 801CDE38 001CAD98 38 7E 01 4C */ addi r3, r30, 0x14c +/* 801CDE3C 001CAD9C 48 19 56 11 */ bl __ct__6CColorFR12CInputStream +/* 801CDE40 001CADA0 7F E4 FB 78 */ mr r4, r31 +/* 801CDE44 001CADA4 38 7E 01 50 */ addi r3, r30, 0x150 +/* 801CDE48 001CADA8 48 19 56 05 */ bl __ct__6CColorFR12CInputStream +/* 801CDE4C 001CADAC 7F E4 FB 78 */ mr r4, r31 +/* 801CDE50 001CADB0 38 7E 01 54 */ addi r3, r30, 0x154 +/* 801CDE54 001CADB4 48 19 55 F9 */ bl __ct__6CColorFR12CInputStream +/* 801CDE58 001CADB8 7F E4 FB 78 */ mr r4, r31 +/* 801CDE5C 001CADBC 38 7E 01 58 */ addi r3, r30, 0x158 +/* 801CDE60 001CADC0 48 19 55 ED */ bl __ct__6CColorFR12CInputStream +/* 801CDE64 001CADC4 7F E4 FB 78 */ mr r4, r31 +/* 801CDE68 001CADC8 38 7E 01 5C */ addi r3, r30, 0x15c +/* 801CDE6C 001CADCC 48 19 55 E1 */ bl __ct__6CColorFR12CInputStream +/* 801CDE70 001CADD0 7F E4 FB 78 */ mr r4, r31 +/* 801CDE74 001CADD4 38 7E 01 60 */ addi r3, r30, 0x160 +/* 801CDE78 001CADD8 48 19 55 D5 */ bl __ct__6CColorFR12CInputStream +/* 801CDE7C 001CADDC 7F E4 FB 78 */ mr r4, r31 +/* 801CDE80 001CADE0 38 7E 01 64 */ addi r3, r30, 0x164 +/* 801CDE84 001CADE4 48 19 55 C9 */ bl __ct__6CColorFR12CInputStream +/* 801CDE88 001CADE8 7F E4 FB 78 */ mr r4, r31 +/* 801CDE8C 001CADEC 38 7E 01 68 */ addi r3, r30, 0x168 +/* 801CDE90 001CADF0 48 19 55 BD */ bl __ct__6CColorFR12CInputStream +/* 801CDE94 001CADF4 7F E4 FB 78 */ mr r4, r31 +/* 801CDE98 001CADF8 38 7E 01 6C */ addi r3, r30, 0x16c +/* 801CDE9C 001CADFC 48 19 55 B1 */ bl __ct__6CColorFR12CInputStream +/* 801CDEA0 001CAE00 7F E4 FB 78 */ mr r4, r31 +/* 801CDEA4 001CAE04 38 7E 01 70 */ addi r3, r30, 0x170 +/* 801CDEA8 001CAE08 48 19 55 A5 */ bl __ct__6CColorFR12CInputStream +/* 801CDEAC 001CAE0C 7F E4 FB 78 */ mr r4, r31 +/* 801CDEB0 001CAE10 38 7E 01 74 */ addi r3, r30, 0x174 +/* 801CDEB4 001CAE14 48 19 55 99 */ bl __ct__6CColorFR12CInputStream +/* 801CDEB8 001CAE18 7F E4 FB 78 */ mr r4, r31 +/* 801CDEBC 001CAE1C 38 7E 01 78 */ addi r3, r30, 0x178 +/* 801CDEC0 001CAE20 48 19 55 8D */ bl __ct__6CColorFR12CInputStream +/* 801CDEC4 001CAE24 7F E4 FB 78 */ mr r4, r31 +/* 801CDEC8 001CAE28 38 7E 01 7C */ addi r3, r30, 0x17c +/* 801CDECC 001CAE2C 48 19 55 81 */ bl __ct__6CColorFR12CInputStream +/* 801CDED0 001CAE30 7F E4 FB 78 */ mr r4, r31 +/* 801CDED4 001CAE34 38 7E 01 80 */ addi r3, r30, 0x180 +/* 801CDED8 001CAE38 48 19 55 75 */ bl __ct__6CColorFR12CInputStream +/* 801CDEDC 001CAE3C 7F E4 FB 78 */ mr r4, r31 +/* 801CDEE0 001CAE40 38 7E 01 84 */ addi r3, r30, 0x184 +/* 801CDEE4 001CAE44 48 19 55 69 */ bl __ct__6CColorFR12CInputStream +/* 801CDEE8 001CAE48 7F E4 FB 78 */ mr r4, r31 +/* 801CDEEC 001CAE4C 38 7E 01 88 */ addi r3, r30, 0x188 +/* 801CDEF0 001CAE50 48 19 55 5D */ bl __ct__6CColorFR12CInputStream +/* 801CDEF4 001CAE54 7F E4 FB 78 */ mr r4, r31 +/* 801CDEF8 001CAE58 38 7E 01 8C */ addi r3, r30, 0x18c +/* 801CDEFC 001CAE5C 48 19 55 51 */ bl __ct__6CColorFR12CInputStream +/* 801CDF00 001CAE60 7F E4 FB 78 */ mr r4, r31 +/* 801CDF04 001CAE64 38 7E 01 90 */ addi r3, r30, 0x190 +/* 801CDF08 001CAE68 48 19 55 45 */ bl __ct__6CColorFR12CInputStream +/* 801CDF0C 001CAE6C 7F E4 FB 78 */ mr r4, r31 +/* 801CDF10 001CAE70 38 7E 01 94 */ addi r3, r30, 0x194 +/* 801CDF14 001CAE74 48 19 55 39 */ bl __ct__6CColorFR12CInputStream +/* 801CDF18 001CAE78 7F E4 FB 78 */ mr r4, r31 +/* 801CDF1C 001CAE7C 38 7E 01 98 */ addi r3, r30, 0x198 +/* 801CDF20 001CAE80 48 19 55 2D */ bl __ct__6CColorFR12CInputStream +/* 801CDF24 001CAE84 7F E4 FB 78 */ mr r4, r31 +/* 801CDF28 001CAE88 38 7E 01 9C */ addi r3, r30, 0x19c +/* 801CDF2C 001CAE8C 48 19 55 21 */ bl __ct__6CColorFR12CInputStream +/* 801CDF30 001CAE90 7F E4 FB 78 */ mr r4, r31 +/* 801CDF34 001CAE94 38 7E 01 A0 */ addi r3, r30, 0x1a0 +/* 801CDF38 001CAE98 48 19 55 15 */ bl __ct__6CColorFR12CInputStream +/* 801CDF3C 001CAE9C 7F E4 FB 78 */ mr r4, r31 +/* 801CDF40 001CAEA0 38 7E 01 A4 */ addi r3, r30, 0x1a4 +/* 801CDF44 001CAEA4 48 19 55 09 */ bl __ct__6CColorFR12CInputStream +/* 801CDF48 001CAEA8 7F E4 FB 78 */ mr r4, r31 +/* 801CDF4C 001CAEAC 38 7E 01 A8 */ addi r3, r30, 0x1a8 +/* 801CDF50 001CAEB0 48 19 54 FD */ bl __ct__6CColorFR12CInputStream +/* 801CDF54 001CAEB4 7F E4 FB 78 */ mr r4, r31 +/* 801CDF58 001CAEB8 38 7E 01 AC */ addi r3, r30, 0x1ac +/* 801CDF5C 001CAEBC 48 19 54 F1 */ bl __ct__6CColorFR12CInputStream +/* 801CDF60 001CAEC0 7F E4 FB 78 */ mr r4, r31 +/* 801CDF64 001CAEC4 38 7E 01 B0 */ addi r3, r30, 0x1b0 +/* 801CDF68 001CAEC8 48 19 54 E5 */ bl __ct__6CColorFR12CInputStream +/* 801CDF6C 001CAECC 7F E4 FB 78 */ mr r4, r31 +/* 801CDF70 001CAED0 38 7E 01 B4 */ addi r3, r30, 0x1b4 +/* 801CDF74 001CAED4 48 19 54 D9 */ bl __ct__6CColorFR12CInputStream +/* 801CDF78 001CAED8 7F E4 FB 78 */ mr r4, r31 +/* 801CDF7C 001CAEDC 38 7E 01 B8 */ addi r3, r30, 0x1b8 +/* 801CDF80 001CAEE0 48 19 54 CD */ bl __ct__6CColorFR12CInputStream +/* 801CDF84 001CAEE4 7F E4 FB 78 */ mr r4, r31 +/* 801CDF88 001CAEE8 38 7E 01 BC */ addi r3, r30, 0x1bc +/* 801CDF8C 001CAEEC 48 19 54 C1 */ bl __ct__6CColorFR12CInputStream +/* 801CDF90 001CAEF0 7F E4 FB 78 */ mr r4, r31 +/* 801CDF94 001CAEF4 38 7E 01 C0 */ addi r3, r30, 0x1c0 +/* 801CDF98 001CAEF8 48 19 54 B5 */ bl __ct__6CColorFR12CInputStream +/* 801CDF9C 001CAEFC 7F E4 FB 78 */ mr r4, r31 +/* 801CDFA0 001CAF00 38 7E 01 C4 */ addi r3, r30, 0x1c4 +/* 801CDFA4 001CAF04 48 00 00 21 */ bl sub_801cdfc4 +/* 801CDFA8 001CAF08 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801CDFAC 001CAF0C 7F C3 F3 78 */ mr r3, r30 +/* 801CDFB0 001CAF10 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801CDFB4 001CAF14 83 C1 00 08 */ lwz r30, 8(r1) +/* 801CDFB8 001CAF18 7C 08 03 A6 */ mtlr r0 +/* 801CDFBC 001CAF1C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801CDFC0 001CAF20 4E 80 00 20 */ blr + +.global sub_801cdfc4 +sub_801cdfc4: +/* 801CDFC4 001CAF24 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801CDFC8 001CAF28 7C 08 02 A6 */ mflr r0 +/* 801CDFCC 001CAF2C 90 01 00 54 */ stw r0, 0x54(r1) +/* 801CDFD0 001CAF30 BE C1 00 28 */ stmw r22, 0x28(r1) +/* 801CDFD4 001CAF34 7C 97 23 78 */ mr r23, r4 +/* 801CDFD8 001CAF38 7C 76 1B 78 */ mr r22, r3 +/* 801CDFDC 001CAF3C 7E E3 BB 78 */ mr r3, r23 +/* 801CDFE0 001CAF40 48 17 0C A5 */ bl ReadLong__12CInputStreamFv +/* 801CDFE4 001CAF44 90 76 00 00 */ stw r3, 0(r22) +/* 801CDFE8 001CAF48 3B F6 00 04 */ addi r31, r22, 4 +/* 801CDFEC 001CAF4C 3B C1 00 0C */ addi r30, r1, 0xc +/* 801CDFF0 001CAF50 3B A1 00 10 */ addi r29, r1, 0x10 +/* 801CDFF4 001CAF54 3B 81 00 14 */ addi r28, r1, 0x14 +/* 801CDFF8 001CAF58 3B 61 00 18 */ addi r27, r1, 0x18 +/* 801CDFFC 001CAF5C 3B 41 00 1C */ addi r26, r1, 0x1c +/* 801CE000 001CAF60 3B 21 00 20 */ addi r25, r1, 0x20 +/* 801CE004 001CAF64 3B 00 00 00 */ li r24, 0 +/* 801CE008 001CAF68 48 00 00 A0 */ b lbl_801CE0A8 +lbl_801CE00C: +/* 801CE00C 001CAF6C 7E E4 BB 78 */ mr r4, r23 +/* 801CE010 001CAF70 38 61 00 08 */ addi r3, r1, 8 +/* 801CE014 001CAF74 48 19 54 39 */ bl __ct__6CColorFR12CInputStream +/* 801CE018 001CAF78 7F C3 F3 78 */ mr r3, r30 +/* 801CE01C 001CAF7C 7E E4 BB 78 */ mr r4, r23 +/* 801CE020 001CAF80 48 19 54 2D */ bl __ct__6CColorFR12CInputStream +/* 801CE024 001CAF84 7F A3 EB 78 */ mr r3, r29 +/* 801CE028 001CAF88 7E E4 BB 78 */ mr r4, r23 +/* 801CE02C 001CAF8C 48 19 54 21 */ bl __ct__6CColorFR12CInputStream +/* 801CE030 001CAF90 7F 83 E3 78 */ mr r3, r28 +/* 801CE034 001CAF94 7E E4 BB 78 */ mr r4, r23 +/* 801CE038 001CAF98 48 19 54 15 */ bl __ct__6CColorFR12CInputStream +/* 801CE03C 001CAF9C 7F 63 DB 78 */ mr r3, r27 +/* 801CE040 001CAFA0 7E E4 BB 78 */ mr r4, r23 +/* 801CE044 001CAFA4 48 19 54 09 */ bl __ct__6CColorFR12CInputStream +/* 801CE048 001CAFA8 7F 43 D3 78 */ mr r3, r26 +/* 801CE04C 001CAFAC 7E E4 BB 78 */ mr r4, r23 +/* 801CE050 001CAFB0 48 19 53 FD */ bl __ct__6CColorFR12CInputStream +/* 801CE054 001CAFB4 7F 23 CB 78 */ mr r3, r25 +/* 801CE058 001CAFB8 7E E4 BB 78 */ mr r4, r23 +/* 801CE05C 001CAFBC 48 19 53 F1 */ bl __ct__6CColorFR12CInputStream +/* 801CE060 001CAFC0 28 1F 00 00 */ cmplwi r31, 0 +/* 801CE064 001CAFC4 41 82 00 3C */ beq lbl_801CE0A0 +/* 801CE068 001CAFC8 80 01 00 08 */ lwz r0, 8(r1) +/* 801CE06C 001CAFCC 90 1F 00 00 */ stw r0, 0(r31) +/* 801CE070 001CAFD0 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801CE074 001CAFD4 90 1F 00 04 */ stw r0, 4(r31) +/* 801CE078 001CAFD8 80 01 00 10 */ lwz r0, 0x10(r1) +/* 801CE07C 001CAFDC 90 1F 00 08 */ stw r0, 8(r31) +/* 801CE080 001CAFE0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801CE084 001CAFE4 90 1F 00 0C */ stw r0, 0xc(r31) +/* 801CE088 001CAFE8 80 01 00 18 */ lwz r0, 0x18(r1) +/* 801CE08C 001CAFEC 90 1F 00 10 */ stw r0, 0x10(r31) +/* 801CE090 001CAFF0 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 801CE094 001CAFF4 90 1F 00 14 */ stw r0, 0x14(r31) +/* 801CE098 001CAFF8 80 01 00 20 */ lwz r0, 0x20(r1) +/* 801CE09C 001CAFFC 90 1F 00 18 */ stw r0, 0x18(r31) +lbl_801CE0A0: +/* 801CE0A0 001CB000 3B FF 00 1C */ addi r31, r31, 0x1c +/* 801CE0A4 001CB004 3B 18 00 01 */ addi r24, r24, 1 +lbl_801CE0A8: +/* 801CE0A8 001CB008 80 16 00 00 */ lwz r0, 0(r22) +/* 801CE0AC 001CB00C 7C 18 00 00 */ cmpw r24, r0 +/* 801CE0B0 001CB010 41 80 FF 5C */ blt lbl_801CE00C +/* 801CE0B4 001CB014 7E C3 B3 78 */ mr r3, r22 +/* 801CE0B8 001CB018 BA C1 00 28 */ lmw r22, 0x28(r1) +/* 801CE0BC 001CB01C 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801CE0C0 001CB020 7C 08 03 A6 */ mtlr r0 +/* 801CE0C4 001CB024 38 21 00 50 */ addi r1, r1, 0x50 +/* 801CE0C8 001CB028 4E 80 00 20 */ blr + +.global __dt__15CTweakGuiColorsFv +__dt__15CTweakGuiColorsFv: +/* 801CE0CC 001CB02C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801CE0D0 001CB030 7C 08 02 A6 */ mflr r0 +/* 801CE0D4 001CB034 90 01 00 14 */ stw r0, 0x14(r1) +/* 801CE0D8 001CB038 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801CE0DC 001CB03C 7C 7F 1B 79 */ or. r31, r3, r3 +/* 801CE0E0 001CB040 41 82 00 90 */ beq lbl_801CE170 +/* 801CE0E4 001CB044 3C 60 80 3E */ lis r3, lbl_803E5748@ha +/* 801CE0E8 001CB048 34 1F 01 C4 */ addic. r0, r31, 0x1c4 +/* 801CE0EC 001CB04C 38 03 57 48 */ addi r0, r3, lbl_803E5748@l +/* 801CE0F0 001CB050 90 1F 00 00 */ stw r0, 0(r31) +/* 801CE0F4 001CB054 41 82 00 58 */ beq lbl_801CE14C +/* 801CE0F8 001CB058 80 DF 01 C4 */ lwz r6, 0x1c4(r31) +/* 801CE0FC 001CB05C 38 60 00 00 */ li r3, 0 +/* 801CE100 001CB060 2C 06 00 00 */ cmpwi r6, 0 +/* 801CE104 001CB064 40 81 00 40 */ ble lbl_801CE144 +/* 801CE108 001CB068 2C 06 00 08 */ cmpwi r6, 8 +/* 801CE10C 001CB06C 38 A6 FF F8 */ addi r5, r6, -8 +/* 801CE110 001CB070 40 81 00 20 */ ble lbl_801CE130 +/* 801CE114 001CB074 38 05 00 07 */ addi r0, r5, 7 +/* 801CE118 001CB078 54 00 E8 FE */ srwi r0, r0, 3 +/* 801CE11C 001CB07C 7C 09 03 A6 */ mtctr r0 +/* 801CE120 001CB080 2C 05 00 00 */ cmpwi r5, 0 +/* 801CE124 001CB084 40 81 00 0C */ ble lbl_801CE130 +lbl_801CE128: +/* 801CE128 001CB088 38 63 00 08 */ addi r3, r3, 8 +/* 801CE12C 001CB08C 42 00 FF FC */ bdnz lbl_801CE128 +lbl_801CE130: +/* 801CE130 001CB090 7C 03 30 50 */ subf r0, r3, r6 +/* 801CE134 001CB094 7C 09 03 A6 */ mtctr r0 +/* 801CE138 001CB098 7C 03 30 00 */ cmpw r3, r6 +/* 801CE13C 001CB09C 40 80 00 08 */ bge lbl_801CE144 +lbl_801CE140: +/* 801CE140 001CB0A0 42 00 00 00 */ bdnz lbl_801CE140 +lbl_801CE144: +/* 801CE144 001CB0A4 38 00 00 00 */ li r0, 0 +/* 801CE148 001CB0A8 90 1F 01 C4 */ stw r0, 0x1c4(r31) +lbl_801CE14C: +/* 801CE14C 001CB0AC 28 1F 00 00 */ cmplwi r31, 0 +/* 801CE150 001CB0B0 41 82 00 10 */ beq lbl_801CE160 +/* 801CE154 001CB0B4 3C 60 80 3E */ lis r3, lbl_803D9CC4@ha +/* 801CE158 001CB0B8 38 03 9C C4 */ addi r0, r3, lbl_803D9CC4@l +/* 801CE15C 001CB0BC 90 1F 00 00 */ stw r0, 0(r31) +lbl_801CE160: +/* 801CE160 001CB0C0 7C 80 07 35 */ extsh. r0, r4 +/* 801CE164 001CB0C4 40 81 00 0C */ ble lbl_801CE170 +/* 801CE168 001CB0C8 7F E3 FB 78 */ mr r3, r31 +/* 801CE16C 001CB0CC 48 00 00 1D */ bl "__dl__29TOneStatic<15CTweakGuiColors>FPv" +lbl_801CE170: +/* 801CE170 001CB0D0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801CE174 001CB0D4 7F E3 FB 78 */ mr r3, r31 +/* 801CE178 001CB0D8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801CE17C 001CB0DC 7C 08 03 A6 */ mtlr r0 +/* 801CE180 001CB0E0 38 21 00 10 */ addi r1, r1, 0x10 +/* 801CE184 001CB0E4 4E 80 00 20 */ blr + +.global "__dl__29TOneStatic<15CTweakGuiColors>FPv" +"__dl__29TOneStatic<15CTweakGuiColors>FPv": +/* 801CE188 001CB0E8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801CE18C 001CB0EC 7C 08 02 A6 */ mflr r0 +/* 801CE190 001CB0F0 90 01 00 14 */ stw r0, 0x14(r1) +/* 801CE194 001CB0F4 4B E6 8E 11 */ bl "ReferenceCount__29TOneStatic<15CTweakGuiColors>Fv" +/* 801CE198 001CB0F8 80 83 00 00 */ lwz r4, 0(r3) +/* 801CE19C 001CB0FC 38 04 FF FF */ addi r0, r4, -1 +/* 801CE1A0 001CB100 90 03 00 00 */ stw r0, 0(r3) +/* 801CE1A4 001CB104 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801CE1A8 001CB108 7C 08 03 A6 */ mtlr r0 +/* 801CE1AC 001CB10C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801CE1B0 001CB110 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CTweakGunRes.s b/asm/Kyoto_CWD/Tweaks/CTweakGunRes.s similarity index 100% rename from asm/Kyoto_CWD/CTweakGunRes.s rename to asm/Kyoto_CWD/Tweaks/CTweakGunRes.s diff --git a/asm/Kyoto_CWD/CTweakParticle.s b/asm/Kyoto_CWD/Tweaks/CTweakParticle.s similarity index 100% rename from asm/Kyoto_CWD/CTweakParticle.s rename to asm/Kyoto_CWD/Tweaks/CTweakParticle.s diff --git a/asm/Kyoto_CWD/CTweakPlayer.s b/asm/Kyoto_CWD/Tweaks/CTweakPlayer.s similarity index 100% rename from asm/Kyoto_CWD/CTweakPlayer.s rename to asm/Kyoto_CWD/Tweaks/CTweakPlayer.s diff --git a/asm/Kyoto_CWD/CTweakPlayerControl.s b/asm/Kyoto_CWD/Tweaks/CTweakPlayerControl.s similarity index 100% rename from asm/Kyoto_CWD/CTweakPlayerControl.s rename to asm/Kyoto_CWD/Tweaks/CTweakPlayerControl.s diff --git a/asm/Kyoto_CWD/CTweakPlayerGun.s b/asm/Kyoto_CWD/Tweaks/CTweakPlayerGun.s similarity index 100% rename from asm/Kyoto_CWD/CTweakPlayerGun.s rename to asm/Kyoto_CWD/Tweaks/CTweakPlayerGun.s diff --git a/asm/Kyoto_CWD/Tweaks/CTweakPlayerRes.s b/asm/Kyoto_CWD/Tweaks/CTweakPlayerRes.s new file mode 100644 index 00000000..52ad7a04 --- /dev/null +++ b/asm/Kyoto_CWD/Tweaks/CTweakPlayerRes.s @@ -0,0 +1,1122 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global GetCinematicBeamResId__15CTweakPlayerResCFQ212CPlayerState7EBeamId +GetCinematicBeamResId__15CTweakPlayerResCFQ212CPlayerState7EBeamId: +/* 801AC210 001A9170 2C 04 00 00 */ cmpwi r4, 0 +/* 801AC214 001A9174 41 80 00 0C */ blt lbl_801AC220 +/* 801AC218 001A9178 2C 04 00 04 */ cmpwi r4, 4 +/* 801AC21C 001A917C 40 81 00 0C */ ble lbl_801AC228 +lbl_801AC220: +/* 801AC220 001A9180 80 63 00 DC */ lwz r3, 0xdc(r3) +/* 801AC224 001A9184 4E 80 00 20 */ blr +lbl_801AC228: +/* 801AC228 001A9188 54 80 10 3A */ slwi r0, r4, 2 +/* 801AC22C 001A918C 7C 63 02 14 */ add r3, r3, r0 +/* 801AC230 001A9190 80 63 00 DC */ lwz r3, 0xdc(r3) +/* 801AC234 001A9194 4E 80 00 20 */ blr + +.global GetBallTransitionBeamResId__15CTweakPlayerResCFQ212CPlayerState7EBeamId +GetBallTransitionBeamResId__15CTweakPlayerResCFQ212CPlayerState7EBeamId: +/* 801AC238 001A9198 2C 04 00 00 */ cmpwi r4, 0 +/* 801AC23C 001A919C 41 80 00 0C */ blt lbl_801AC248 +/* 801AC240 001A91A0 2C 04 00 04 */ cmpwi r4, 4 +/* 801AC244 001A91A4 40 81 00 0C */ ble lbl_801AC250 +lbl_801AC248: +/* 801AC248 001A91A8 80 63 00 C8 */ lwz r3, 0xc8(r3) +/* 801AC24C 001A91AC 4E 80 00 20 */ blr +lbl_801AC250: +/* 801AC250 001A91B0 54 80 10 3A */ slwi r0, r4, 2 +/* 801AC254 001A91B4 7C 63 02 14 */ add r3, r3, r0 +/* 801AC258 001A91B8 80 63 00 C8 */ lwz r3, 0xc8(r3) +/* 801AC25C 001A91BC 4E 80 00 20 */ blr + +.global __ct__15CTweakPlayerResFR12CInputStream +__ct__15CTweakPlayerResFR12CInputStream: +/* 801AC260 001A91C0 94 21 FE 70 */ stwu r1, -0x190(r1) +/* 801AC264 001A91C4 7C 08 02 A6 */ mflr r0 +/* 801AC268 001A91C8 3C A0 80 3E */ lis r5, lbl_803D9CC4@ha +/* 801AC26C 001A91CC 90 01 01 94 */ stw r0, 0x194(r1) +/* 801AC270 001A91D0 38 05 9C C4 */ addi r0, r5, lbl_803D9CC4@l +/* 801AC274 001A91D4 38 A1 00 2C */ addi r5, r1, 0x2c +/* 801AC278 001A91D8 93 E1 01 8C */ stw r31, 0x18c(r1) +/* 801AC27C 001A91DC 7C 9F 23 78 */ mr r31, r4 +/* 801AC280 001A91E0 93 C1 01 88 */ stw r30, 0x188(r1) +/* 801AC284 001A91E4 7C 7E 1B 78 */ mr r30, r3 +/* 801AC288 001A91E8 3C 60 80 3E */ lis r3, lbl_803E4CF8@ha +/* 801AC28C 001A91EC 93 A1 01 84 */ stw r29, 0x184(r1) +/* 801AC290 001A91F0 93 81 01 80 */ stw r28, 0x180(r1) +/* 801AC294 001A91F4 90 1E 00 00 */ stw r0, 0(r30) +/* 801AC298 001A91F8 38 03 4C F8 */ addi r0, r3, lbl_803E4CF8@l +/* 801AC29C 001A91FC 38 61 00 E4 */ addi r3, r1, 0xe4 +/* 801AC2A0 001A9200 90 1E 00 00 */ stw r0, 0(r30) +/* 801AC2A4 001A9204 48 19 20 55 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FR12CInputStreamRCQ24rstl17rmemory_allocator" +/* 801AC2A8 001A9208 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) +/* 801AC2AC 001A920C 80 81 00 E4 */ lwz r4, 0xe4(r1) +/* 801AC2B0 001A9210 81 83 00 00 */ lwz r12, 0(r3) +/* 801AC2B4 001A9214 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801AC2B8 001A9218 7D 89 03 A6 */ mtctr r12 +/* 801AC2BC 001A921C 4E 80 04 21 */ bctrl +/* 801AC2C0 001A9220 80 03 00 04 */ lwz r0, 4(r3) +/* 801AC2C4 001A9224 38 61 00 E4 */ addi r3, r1, 0xe4 +/* 801AC2C8 001A9228 90 1E 00 04 */ stw r0, 4(r30) +/* 801AC2CC 001A922C 48 19 18 15 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801AC2D0 001A9230 7F E4 FB 78 */ mr r4, r31 +/* 801AC2D4 001A9234 38 61 00 D4 */ addi r3, r1, 0xd4 +/* 801AC2D8 001A9238 38 A1 00 28 */ addi r5, r1, 0x28 +/* 801AC2DC 001A923C 48 19 20 1D */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FR12CInputStreamRCQ24rstl17rmemory_allocator" +/* 801AC2E0 001A9240 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) +/* 801AC2E4 001A9244 80 81 00 D4 */ lwz r4, 0xd4(r1) +/* 801AC2E8 001A9248 81 83 00 00 */ lwz r12, 0(r3) +/* 801AC2EC 001A924C 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801AC2F0 001A9250 7D 89 03 A6 */ mtctr r12 +/* 801AC2F4 001A9254 4E 80 04 21 */ bctrl +/* 801AC2F8 001A9258 80 03 00 04 */ lwz r0, 4(r3) +/* 801AC2FC 001A925C 38 61 00 D4 */ addi r3, r1, 0xd4 +/* 801AC300 001A9260 90 1E 00 08 */ stw r0, 8(r30) +/* 801AC304 001A9264 48 19 17 DD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801AC308 001A9268 7F E4 FB 78 */ mr r4, r31 +/* 801AC30C 001A926C 38 61 00 C4 */ addi r3, r1, 0xc4 +/* 801AC310 001A9270 38 A1 00 24 */ addi r5, r1, 0x24 +/* 801AC314 001A9274 48 19 1F E5 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FR12CInputStreamRCQ24rstl17rmemory_allocator" +/* 801AC318 001A9278 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) +/* 801AC31C 001A927C 80 81 00 C4 */ lwz r4, 0xc4(r1) +/* 801AC320 001A9280 81 83 00 00 */ lwz r12, 0(r3) +/* 801AC324 001A9284 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801AC328 001A9288 7D 89 03 A6 */ mtctr r12 +/* 801AC32C 001A928C 4E 80 04 21 */ bctrl +/* 801AC330 001A9290 80 03 00 04 */ lwz r0, 4(r3) +/* 801AC334 001A9294 38 61 00 C4 */ addi r3, r1, 0xc4 +/* 801AC338 001A9298 90 1E 00 0C */ stw r0, 0xc(r30) +/* 801AC33C 001A929C 48 19 17 A5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801AC340 001A92A0 7F E4 FB 78 */ mr r4, r31 +/* 801AC344 001A92A4 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 801AC348 001A92A8 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801AC34C 001A92AC 48 19 1F AD */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FR12CInputStreamRCQ24rstl17rmemory_allocator" +/* 801AC350 001A92B0 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) +/* 801AC354 001A92B4 80 81 00 B4 */ lwz r4, 0xb4(r1) +/* 801AC358 001A92B8 81 83 00 00 */ lwz r12, 0(r3) +/* 801AC35C 001A92BC 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801AC360 001A92C0 7D 89 03 A6 */ mtctr r12 +/* 801AC364 001A92C4 4E 80 04 21 */ bctrl +/* 801AC368 001A92C8 80 03 00 04 */ lwz r0, 4(r3) +/* 801AC36C 001A92CC 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 801AC370 001A92D0 90 1E 00 10 */ stw r0, 0x10(r30) +/* 801AC374 001A92D4 48 19 17 6D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801AC378 001A92D8 7F E4 FB 78 */ mr r4, r31 +/* 801AC37C 001A92DC 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 801AC380 001A92E0 38 A1 00 1C */ addi r5, r1, 0x1c +/* 801AC384 001A92E4 48 19 1F 75 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FR12CInputStreamRCQ24rstl17rmemory_allocator" +/* 801AC388 001A92E8 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) +/* 801AC38C 001A92EC 80 81 00 A4 */ lwz r4, 0xa4(r1) +/* 801AC390 001A92F0 81 83 00 00 */ lwz r12, 0(r3) +/* 801AC394 001A92F4 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801AC398 001A92F8 7D 89 03 A6 */ mtctr r12 +/* 801AC39C 001A92FC 4E 80 04 21 */ bctrl +/* 801AC3A0 001A9300 80 03 00 04 */ lwz r0, 4(r3) +/* 801AC3A4 001A9304 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 801AC3A8 001A9308 90 1E 00 14 */ stw r0, 0x14(r30) +/* 801AC3AC 001A930C 48 19 17 35 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801AC3B0 001A9310 7F E4 FB 78 */ mr r4, r31 +/* 801AC3B4 001A9314 38 61 00 94 */ addi r3, r1, 0x94 +/* 801AC3B8 001A9318 38 A1 00 18 */ addi r5, r1, 0x18 +/* 801AC3BC 001A931C 48 19 1F 3D */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FR12CInputStreamRCQ24rstl17rmemory_allocator" +/* 801AC3C0 001A9320 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) +/* 801AC3C4 001A9324 80 81 00 94 */ lwz r4, 0x94(r1) +/* 801AC3C8 001A9328 81 83 00 00 */ lwz r12, 0(r3) +/* 801AC3CC 001A932C 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801AC3D0 001A9330 7D 89 03 A6 */ mtctr r12 +/* 801AC3D4 001A9334 4E 80 04 21 */ bctrl +/* 801AC3D8 001A9338 80 03 00 04 */ lwz r0, 4(r3) +/* 801AC3DC 001A933C 38 61 00 94 */ addi r3, r1, 0x94 +/* 801AC3E0 001A9340 90 1E 00 18 */ stw r0, 0x18(r30) +/* 801AC3E4 001A9344 48 19 16 FD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801AC3E8 001A9348 7F E4 FB 78 */ mr r4, r31 +/* 801AC3EC 001A934C 38 61 00 84 */ addi r3, r1, 0x84 +/* 801AC3F0 001A9350 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801AC3F4 001A9354 48 19 1F 05 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FR12CInputStreamRCQ24rstl17rmemory_allocator" +/* 801AC3F8 001A9358 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) +/* 801AC3FC 001A935C 80 81 00 84 */ lwz r4, 0x84(r1) +/* 801AC400 001A9360 81 83 00 00 */ lwz r12, 0(r3) +/* 801AC404 001A9364 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801AC408 001A9368 7D 89 03 A6 */ mtctr r12 +/* 801AC40C 001A936C 4E 80 04 21 */ bctrl +/* 801AC410 001A9370 80 03 00 04 */ lwz r0, 4(r3) +/* 801AC414 001A9374 38 61 00 84 */ addi r3, r1, 0x84 +/* 801AC418 001A9378 90 1E 00 1C */ stw r0, 0x1c(r30) +/* 801AC41C 001A937C 48 19 16 C5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801AC420 001A9380 7F E4 FB 78 */ mr r4, r31 +/* 801AC424 001A9384 38 61 01 4C */ addi r3, r1, 0x14c +/* 801AC428 001A9388 48 00 07 F1 */ bl sub_801acc18 +/* 801AC42C 001A938C 80 01 01 4C */ lwz r0, 0x14c(r1) +/* 801AC430 001A9390 38 9E 00 24 */ addi r4, r30, 0x24 +/* 801AC434 001A9394 38 61 01 50 */ addi r3, r1, 0x150 +/* 801AC438 001A9398 90 1E 00 20 */ stw r0, 0x20(r30) +/* 801AC43C 001A939C 80 1E 00 20 */ lwz r0, 0x20(r30) +/* 801AC440 001A93A0 7C 09 03 A6 */ mtctr r0 +/* 801AC444 001A93A4 2C 00 00 00 */ cmpwi r0, 0 +/* 801AC448 001A93A8 40 81 00 20 */ ble lbl_801AC468 +lbl_801AC44C: +/* 801AC44C 001A93AC 28 04 00 00 */ cmplwi r4, 0 +/* 801AC450 001A93B0 41 82 00 0C */ beq lbl_801AC45C +/* 801AC454 001A93B4 80 03 00 00 */ lwz r0, 0(r3) +/* 801AC458 001A93B8 90 04 00 00 */ stw r0, 0(r4) +lbl_801AC45C: +/* 801AC45C 001A93BC 38 84 00 04 */ addi r4, r4, 4 +/* 801AC460 001A93C0 38 63 00 04 */ addi r3, r3, 4 +/* 801AC464 001A93C4 42 00 FF E8 */ bdnz lbl_801AC44C +lbl_801AC468: +/* 801AC468 001A93C8 80 A1 01 4C */ lwz r5, 0x14c(r1) +/* 801AC46C 001A93CC 38 60 00 00 */ li r3, 0 +/* 801AC470 001A93D0 2C 05 00 00 */ cmpwi r5, 0 +/* 801AC474 001A93D4 40 81 00 40 */ ble lbl_801AC4B4 +/* 801AC478 001A93D8 2C 05 00 08 */ cmpwi r5, 8 +/* 801AC47C 001A93DC 38 85 FF F8 */ addi r4, r5, -8 +/* 801AC480 001A93E0 40 81 00 20 */ ble lbl_801AC4A0 +/* 801AC484 001A93E4 38 04 00 07 */ addi r0, r4, 7 +/* 801AC488 001A93E8 54 00 E8 FE */ srwi r0, r0, 3 +/* 801AC48C 001A93EC 7C 09 03 A6 */ mtctr r0 +/* 801AC490 001A93F0 2C 04 00 00 */ cmpwi r4, 0 +/* 801AC494 001A93F4 40 81 00 0C */ ble lbl_801AC4A0 +lbl_801AC498: +/* 801AC498 001A93F8 38 63 00 08 */ addi r3, r3, 8 +/* 801AC49C 001A93FC 42 00 FF FC */ bdnz lbl_801AC498 +lbl_801AC4A0: +/* 801AC4A0 001A9400 7C 03 28 50 */ subf r0, r3, r5 +/* 801AC4A4 001A9404 7C 09 03 A6 */ mtctr r0 +/* 801AC4A8 001A9408 7C 03 28 00 */ cmpw r3, r5 +/* 801AC4AC 001A940C 40 80 00 08 */ bge lbl_801AC4B4 +lbl_801AC4B0: +/* 801AC4B0 001A9410 42 00 00 00 */ bdnz lbl_801AC4B0 +lbl_801AC4B4: +/* 801AC4B4 001A9414 38 00 00 00 */ li r0, 0 +/* 801AC4B8 001A9418 7F E4 FB 78 */ mr r4, r31 +/* 801AC4BC 001A941C 90 01 01 4C */ stw r0, 0x14c(r1) +/* 801AC4C0 001A9420 38 61 01 24 */ addi r3, r1, 0x124 +/* 801AC4C4 001A9424 48 00 07 55 */ bl sub_801acc18 +/* 801AC4C8 001A9428 80 01 01 24 */ lwz r0, 0x124(r1) +/* 801AC4CC 001A942C 38 9E 00 4C */ addi r4, r30, 0x4c +/* 801AC4D0 001A9430 38 61 01 28 */ addi r3, r1, 0x128 +/* 801AC4D4 001A9434 90 1E 00 48 */ stw r0, 0x48(r30) +/* 801AC4D8 001A9438 80 1E 00 48 */ lwz r0, 0x48(r30) +/* 801AC4DC 001A943C 7C 09 03 A6 */ mtctr r0 +/* 801AC4E0 001A9440 2C 00 00 00 */ cmpwi r0, 0 +/* 801AC4E4 001A9444 40 81 00 20 */ ble lbl_801AC504 +lbl_801AC4E8: +/* 801AC4E8 001A9448 28 04 00 00 */ cmplwi r4, 0 +/* 801AC4EC 001A944C 41 82 00 0C */ beq lbl_801AC4F8 +/* 801AC4F0 001A9450 80 03 00 00 */ lwz r0, 0(r3) +/* 801AC4F4 001A9454 90 04 00 00 */ stw r0, 0(r4) +lbl_801AC4F8: +/* 801AC4F8 001A9458 38 84 00 04 */ addi r4, r4, 4 +/* 801AC4FC 001A945C 38 63 00 04 */ addi r3, r3, 4 +/* 801AC500 001A9460 42 00 FF E8 */ bdnz lbl_801AC4E8 +lbl_801AC504: +/* 801AC504 001A9464 80 A1 01 24 */ lwz r5, 0x124(r1) +/* 801AC508 001A9468 38 60 00 00 */ li r3, 0 +/* 801AC50C 001A946C 2C 05 00 00 */ cmpwi r5, 0 +/* 801AC510 001A9470 40 81 00 40 */ ble lbl_801AC550 +/* 801AC514 001A9474 2C 05 00 08 */ cmpwi r5, 8 +/* 801AC518 001A9478 38 85 FF F8 */ addi r4, r5, -8 +/* 801AC51C 001A947C 40 81 00 20 */ ble lbl_801AC53C +/* 801AC520 001A9480 38 04 00 07 */ addi r0, r4, 7 +/* 801AC524 001A9484 54 00 E8 FE */ srwi r0, r0, 3 +/* 801AC528 001A9488 7C 09 03 A6 */ mtctr r0 +/* 801AC52C 001A948C 2C 04 00 00 */ cmpwi r4, 0 +/* 801AC530 001A9490 40 81 00 0C */ ble lbl_801AC53C +lbl_801AC534: +/* 801AC534 001A9494 38 63 00 08 */ addi r3, r3, 8 +/* 801AC538 001A9498 42 00 FF FC */ bdnz lbl_801AC534 +lbl_801AC53C: +/* 801AC53C 001A949C 7C 03 28 50 */ subf r0, r3, r5 +/* 801AC540 001A94A0 7C 09 03 A6 */ mtctr r0 +/* 801AC544 001A94A4 7C 03 28 00 */ cmpw r3, r5 +/* 801AC548 001A94A8 40 80 00 08 */ bge lbl_801AC550 +lbl_801AC54C: +/* 801AC54C 001A94AC 42 00 00 00 */ bdnz lbl_801AC54C +lbl_801AC550: +/* 801AC550 001A94B0 38 00 00 00 */ li r0, 0 +/* 801AC554 001A94B4 7F E4 FB 78 */ mr r4, r31 +/* 801AC558 001A94B8 90 01 01 24 */ stw r0, 0x124(r1) +/* 801AC55C 001A94BC 38 61 00 78 */ addi r3, r1, 0x78 +/* 801AC560 001A94C0 48 00 05 79 */ bl sub_801acad8 +/* 801AC564 001A94C4 80 01 00 78 */ lwz r0, 0x78(r1) +/* 801AC568 001A94C8 38 9E 00 74 */ addi r4, r30, 0x74 +/* 801AC56C 001A94CC 38 61 00 7C */ addi r3, r1, 0x7c +/* 801AC570 001A94D0 90 1E 00 70 */ stw r0, 0x70(r30) +/* 801AC574 001A94D4 80 1E 00 70 */ lwz r0, 0x70(r30) +/* 801AC578 001A94D8 7C 09 03 A6 */ mtctr r0 +/* 801AC57C 001A94DC 2C 00 00 00 */ cmpwi r0, 0 +/* 801AC580 001A94E0 40 81 00 20 */ ble lbl_801AC5A0 +lbl_801AC584: +/* 801AC584 001A94E4 28 04 00 00 */ cmplwi r4, 0 +/* 801AC588 001A94E8 41 82 00 0C */ beq lbl_801AC594 +/* 801AC58C 001A94EC 80 03 00 00 */ lwz r0, 0(r3) +/* 801AC590 001A94F0 90 04 00 00 */ stw r0, 0(r4) +lbl_801AC594: +/* 801AC594 001A94F4 38 84 00 04 */ addi r4, r4, 4 +/* 801AC598 001A94F8 38 63 00 04 */ addi r3, r3, 4 +/* 801AC59C 001A94FC 42 00 FF E8 */ bdnz lbl_801AC584 +lbl_801AC5A0: +/* 801AC5A0 001A9500 80 A1 00 78 */ lwz r5, 0x78(r1) +/* 801AC5A4 001A9504 38 60 00 00 */ li r3, 0 +/* 801AC5A8 001A9508 2C 05 00 00 */ cmpwi r5, 0 +/* 801AC5AC 001A950C 40 81 00 40 */ ble lbl_801AC5EC +/* 801AC5B0 001A9510 2C 05 00 08 */ cmpwi r5, 8 +/* 801AC5B4 001A9514 38 85 FF F8 */ addi r4, r5, -8 +/* 801AC5B8 001A9518 40 81 00 20 */ ble lbl_801AC5D8 +/* 801AC5BC 001A951C 38 04 00 07 */ addi r0, r4, 7 +/* 801AC5C0 001A9520 54 00 E8 FE */ srwi r0, r0, 3 +/* 801AC5C4 001A9524 7C 09 03 A6 */ mtctr r0 +/* 801AC5C8 001A9528 2C 04 00 00 */ cmpwi r4, 0 +/* 801AC5CC 001A952C 40 81 00 0C */ ble lbl_801AC5D8 +lbl_801AC5D0: +/* 801AC5D0 001A9530 38 63 00 08 */ addi r3, r3, 8 +/* 801AC5D4 001A9534 42 00 FF FC */ bdnz lbl_801AC5D0 +lbl_801AC5D8: +/* 801AC5D8 001A9538 7C 03 28 50 */ subf r0, r3, r5 +/* 801AC5DC 001A953C 7C 09 03 A6 */ mtctr r0 +/* 801AC5E0 001A9540 7C 03 28 00 */ cmpw r3, r5 +/* 801AC5E4 001A9544 40 80 00 08 */ bge lbl_801AC5EC +lbl_801AC5E8: +/* 801AC5E8 001A9548 42 00 00 00 */ bdnz lbl_801AC5E8 +lbl_801AC5EC: +/* 801AC5EC 001A954C 38 00 00 00 */ li r0, 0 +/* 801AC5F0 001A9550 7F E4 FB 78 */ mr r4, r31 +/* 801AC5F4 001A9554 90 01 00 78 */ stw r0, 0x78(r1) +/* 801AC5F8 001A9558 38 61 00 6C */ addi r3, r1, 0x6c +/* 801AC5FC 001A955C 48 00 04 DD */ bl sub_801acad8 +/* 801AC600 001A9560 80 01 00 6C */ lwz r0, 0x6c(r1) +/* 801AC604 001A9564 38 9E 00 80 */ addi r4, r30, 0x80 +/* 801AC608 001A9568 38 61 00 70 */ addi r3, r1, 0x70 +/* 801AC60C 001A956C 90 1E 00 7C */ stw r0, 0x7c(r30) +/* 801AC610 001A9570 80 1E 00 7C */ lwz r0, 0x7c(r30) +/* 801AC614 001A9574 7C 09 03 A6 */ mtctr r0 +/* 801AC618 001A9578 2C 00 00 00 */ cmpwi r0, 0 +/* 801AC61C 001A957C 40 81 00 20 */ ble lbl_801AC63C +lbl_801AC620: +/* 801AC620 001A9580 28 04 00 00 */ cmplwi r4, 0 +/* 801AC624 001A9584 41 82 00 0C */ beq lbl_801AC630 +/* 801AC628 001A9588 80 03 00 00 */ lwz r0, 0(r3) +/* 801AC62C 001A958C 90 04 00 00 */ stw r0, 0(r4) +lbl_801AC630: +/* 801AC630 001A9590 38 84 00 04 */ addi r4, r4, 4 +/* 801AC634 001A9594 38 63 00 04 */ addi r3, r3, 4 +/* 801AC638 001A9598 42 00 FF E8 */ bdnz lbl_801AC620 +lbl_801AC63C: +/* 801AC63C 001A959C 80 A1 00 6C */ lwz r5, 0x6c(r1) +/* 801AC640 001A95A0 38 60 00 00 */ li r3, 0 +/* 801AC644 001A95A4 2C 05 00 00 */ cmpwi r5, 0 +/* 801AC648 001A95A8 40 81 00 40 */ ble lbl_801AC688 +/* 801AC64C 001A95AC 2C 05 00 08 */ cmpwi r5, 8 +/* 801AC650 001A95B0 38 85 FF F8 */ addi r4, r5, -8 +/* 801AC654 001A95B4 40 81 00 20 */ ble lbl_801AC674 +/* 801AC658 001A95B8 38 04 00 07 */ addi r0, r4, 7 +/* 801AC65C 001A95BC 54 00 E8 FE */ srwi r0, r0, 3 +/* 801AC660 001A95C0 7C 09 03 A6 */ mtctr r0 +/* 801AC664 001A95C4 2C 04 00 00 */ cmpwi r4, 0 +/* 801AC668 001A95C8 40 81 00 0C */ ble lbl_801AC674 +lbl_801AC66C: +/* 801AC66C 001A95CC 38 63 00 08 */ addi r3, r3, 8 +/* 801AC670 001A95D0 42 00 FF FC */ bdnz lbl_801AC66C +lbl_801AC674: +/* 801AC674 001A95D4 7C 03 28 50 */ subf r0, r3, r5 +/* 801AC678 001A95D8 7C 09 03 A6 */ mtctr r0 +/* 801AC67C 001A95DC 7C 03 28 00 */ cmpw r3, r5 +/* 801AC680 001A95E0 40 80 00 08 */ bge lbl_801AC688 +lbl_801AC684: +/* 801AC684 001A95E4 42 00 00 00 */ bdnz lbl_801AC684 +lbl_801AC688: +/* 801AC688 001A95E8 38 00 00 00 */ li r0, 0 +/* 801AC68C 001A95EC 7F E4 FB 78 */ mr r4, r31 +/* 801AC690 001A95F0 90 01 00 6C */ stw r0, 0x6c(r1) +/* 801AC694 001A95F4 38 61 00 60 */ addi r3, r1, 0x60 +/* 801AC698 001A95F8 48 00 04 41 */ bl sub_801acad8 +/* 801AC69C 001A95FC 80 01 00 60 */ lwz r0, 0x60(r1) +/* 801AC6A0 001A9600 38 9E 00 8C */ addi r4, r30, 0x8c +/* 801AC6A4 001A9604 38 61 00 64 */ addi r3, r1, 0x64 +/* 801AC6A8 001A9608 90 1E 00 88 */ stw r0, 0x88(r30) +/* 801AC6AC 001A960C 80 1E 00 88 */ lwz r0, 0x88(r30) +/* 801AC6B0 001A9610 7C 09 03 A6 */ mtctr r0 +/* 801AC6B4 001A9614 2C 00 00 00 */ cmpwi r0, 0 +/* 801AC6B8 001A9618 40 81 00 20 */ ble lbl_801AC6D8 +lbl_801AC6BC: +/* 801AC6BC 001A961C 28 04 00 00 */ cmplwi r4, 0 +/* 801AC6C0 001A9620 41 82 00 0C */ beq lbl_801AC6CC +/* 801AC6C4 001A9624 80 03 00 00 */ lwz r0, 0(r3) +/* 801AC6C8 001A9628 90 04 00 00 */ stw r0, 0(r4) +lbl_801AC6CC: +/* 801AC6CC 001A962C 38 84 00 04 */ addi r4, r4, 4 +/* 801AC6D0 001A9630 38 63 00 04 */ addi r3, r3, 4 +/* 801AC6D4 001A9634 42 00 FF E8 */ bdnz lbl_801AC6BC +lbl_801AC6D8: +/* 801AC6D8 001A9638 80 A1 00 60 */ lwz r5, 0x60(r1) +/* 801AC6DC 001A963C 38 60 00 00 */ li r3, 0 +/* 801AC6E0 001A9640 2C 05 00 00 */ cmpwi r5, 0 +/* 801AC6E4 001A9644 40 81 00 40 */ ble lbl_801AC724 +/* 801AC6E8 001A9648 2C 05 00 08 */ cmpwi r5, 8 +/* 801AC6EC 001A964C 38 85 FF F8 */ addi r4, r5, -8 +/* 801AC6F0 001A9650 40 81 00 20 */ ble lbl_801AC710 +/* 801AC6F4 001A9654 38 04 00 07 */ addi r0, r4, 7 +/* 801AC6F8 001A9658 54 00 E8 FE */ srwi r0, r0, 3 +/* 801AC6FC 001A965C 7C 09 03 A6 */ mtctr r0 +/* 801AC700 001A9660 2C 04 00 00 */ cmpwi r4, 0 +/* 801AC704 001A9664 40 81 00 0C */ ble lbl_801AC710 +lbl_801AC708: +/* 801AC708 001A9668 38 63 00 08 */ addi r3, r3, 8 +/* 801AC70C 001A966C 42 00 FF FC */ bdnz lbl_801AC708 +lbl_801AC710: +/* 801AC710 001A9670 7C 03 28 50 */ subf r0, r3, r5 +/* 801AC714 001A9674 7C 09 03 A6 */ mtctr r0 +/* 801AC718 001A9678 7C 03 28 00 */ cmpw r3, r5 +/* 801AC71C 001A967C 40 80 00 08 */ bge lbl_801AC724 +lbl_801AC720: +/* 801AC720 001A9680 42 00 00 00 */ bdnz lbl_801AC720 +lbl_801AC724: +/* 801AC724 001A9684 38 00 00 00 */ li r0, 0 +/* 801AC728 001A9688 7F E4 FB 78 */ mr r4, r31 +/* 801AC72C 001A968C 90 01 00 60 */ stw r0, 0x60(r1) +/* 801AC730 001A9690 38 61 00 54 */ addi r3, r1, 0x54 +/* 801AC734 001A9694 48 00 03 A5 */ bl sub_801acad8 +/* 801AC738 001A9698 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801AC73C 001A969C 38 9E 00 98 */ addi r4, r30, 0x98 +/* 801AC740 001A96A0 38 61 00 58 */ addi r3, r1, 0x58 +/* 801AC744 001A96A4 90 1E 00 94 */ stw r0, 0x94(r30) +/* 801AC748 001A96A8 80 1E 00 94 */ lwz r0, 0x94(r30) +/* 801AC74C 001A96AC 7C 09 03 A6 */ mtctr r0 +/* 801AC750 001A96B0 2C 00 00 00 */ cmpwi r0, 0 +/* 801AC754 001A96B4 40 81 00 20 */ ble lbl_801AC774 +lbl_801AC758: +/* 801AC758 001A96B8 28 04 00 00 */ cmplwi r4, 0 +/* 801AC75C 001A96BC 41 82 00 0C */ beq lbl_801AC768 +/* 801AC760 001A96C0 80 03 00 00 */ lwz r0, 0(r3) +/* 801AC764 001A96C4 90 04 00 00 */ stw r0, 0(r4) +lbl_801AC768: +/* 801AC768 001A96C8 38 84 00 04 */ addi r4, r4, 4 +/* 801AC76C 001A96CC 38 63 00 04 */ addi r3, r3, 4 +/* 801AC770 001A96D0 42 00 FF E8 */ bdnz lbl_801AC758 +lbl_801AC774: +/* 801AC774 001A96D4 80 A1 00 54 */ lwz r5, 0x54(r1) +/* 801AC778 001A96D8 38 60 00 00 */ li r3, 0 +/* 801AC77C 001A96DC 2C 05 00 00 */ cmpwi r5, 0 +/* 801AC780 001A96E0 40 81 00 40 */ ble lbl_801AC7C0 +/* 801AC784 001A96E4 2C 05 00 08 */ cmpwi r5, 8 +/* 801AC788 001A96E8 38 85 FF F8 */ addi r4, r5, -8 +/* 801AC78C 001A96EC 40 81 00 20 */ ble lbl_801AC7AC +/* 801AC790 001A96F0 38 04 00 07 */ addi r0, r4, 7 +/* 801AC794 001A96F4 54 00 E8 FE */ srwi r0, r0, 3 +/* 801AC798 001A96F8 7C 09 03 A6 */ mtctr r0 +/* 801AC79C 001A96FC 2C 04 00 00 */ cmpwi r4, 0 +/* 801AC7A0 001A9700 40 81 00 0C */ ble lbl_801AC7AC +lbl_801AC7A4: +/* 801AC7A4 001A9704 38 63 00 08 */ addi r3, r3, 8 +/* 801AC7A8 001A9708 42 00 FF FC */ bdnz lbl_801AC7A4 +lbl_801AC7AC: +/* 801AC7AC 001A970C 7C 03 28 50 */ subf r0, r3, r5 +/* 801AC7B0 001A9710 7C 09 03 A6 */ mtctr r0 +/* 801AC7B4 001A9714 7C 03 28 00 */ cmpw r3, r5 +/* 801AC7B8 001A9718 40 80 00 08 */ bge lbl_801AC7C0 +lbl_801AC7BC: +/* 801AC7BC 001A971C 42 00 00 00 */ bdnz lbl_801AC7BC +lbl_801AC7C0: +/* 801AC7C0 001A9720 38 00 00 00 */ li r0, 0 +/* 801AC7C4 001A9724 7F E4 FB 78 */ mr r4, r31 +/* 801AC7C8 001A9728 90 01 00 54 */ stw r0, 0x54(r1) +/* 801AC7CC 001A972C 38 61 00 48 */ addi r3, r1, 0x48 +/* 801AC7D0 001A9730 48 00 03 09 */ bl sub_801acad8 +/* 801AC7D4 001A9734 80 01 00 48 */ lwz r0, 0x48(r1) +/* 801AC7D8 001A9738 38 9E 00 A4 */ addi r4, r30, 0xa4 +/* 801AC7DC 001A973C 38 61 00 4C */ addi r3, r1, 0x4c +/* 801AC7E0 001A9740 90 1E 00 A0 */ stw r0, 0xa0(r30) +/* 801AC7E4 001A9744 80 1E 00 A0 */ lwz r0, 0xa0(r30) +/* 801AC7E8 001A9748 7C 09 03 A6 */ mtctr r0 +/* 801AC7EC 001A974C 2C 00 00 00 */ cmpwi r0, 0 +/* 801AC7F0 001A9750 40 81 00 20 */ ble lbl_801AC810 +lbl_801AC7F4: +/* 801AC7F4 001A9754 28 04 00 00 */ cmplwi r4, 0 +/* 801AC7F8 001A9758 41 82 00 0C */ beq lbl_801AC804 +/* 801AC7FC 001A975C 80 03 00 00 */ lwz r0, 0(r3) +/* 801AC800 001A9760 90 04 00 00 */ stw r0, 0(r4) +lbl_801AC804: +/* 801AC804 001A9764 38 84 00 04 */ addi r4, r4, 4 +/* 801AC808 001A9768 38 63 00 04 */ addi r3, r3, 4 +/* 801AC80C 001A976C 42 00 FF E8 */ bdnz lbl_801AC7F4 +lbl_801AC810: +/* 801AC810 001A9770 80 A1 00 48 */ lwz r5, 0x48(r1) +/* 801AC814 001A9774 38 60 00 00 */ li r3, 0 +/* 801AC818 001A9778 2C 05 00 00 */ cmpwi r5, 0 +/* 801AC81C 001A977C 40 81 00 40 */ ble lbl_801AC85C +/* 801AC820 001A9780 2C 05 00 08 */ cmpwi r5, 8 +/* 801AC824 001A9784 38 85 FF F8 */ addi r4, r5, -8 +/* 801AC828 001A9788 40 81 00 20 */ ble lbl_801AC848 +/* 801AC82C 001A978C 38 04 00 07 */ addi r0, r4, 7 +/* 801AC830 001A9790 54 00 E8 FE */ srwi r0, r0, 3 +/* 801AC834 001A9794 7C 09 03 A6 */ mtctr r0 +/* 801AC838 001A9798 2C 04 00 00 */ cmpwi r4, 0 +/* 801AC83C 001A979C 40 81 00 0C */ ble lbl_801AC848 +lbl_801AC840: +/* 801AC840 001A97A0 38 63 00 08 */ addi r3, r3, 8 +/* 801AC844 001A97A4 42 00 FF FC */ bdnz lbl_801AC840 +lbl_801AC848: +/* 801AC848 001A97A8 7C 03 28 50 */ subf r0, r3, r5 +/* 801AC84C 001A97AC 7C 09 03 A6 */ mtctr r0 +/* 801AC850 001A97B0 7C 03 28 00 */ cmpw r3, r5 +/* 801AC854 001A97B4 40 80 00 08 */ bge lbl_801AC85C +lbl_801AC858: +/* 801AC858 001A97B8 42 00 00 00 */ bdnz lbl_801AC858 +lbl_801AC85C: +/* 801AC85C 001A97BC 38 00 00 00 */ li r0, 0 +/* 801AC860 001A97C0 7F E4 FB 78 */ mr r4, r31 +/* 801AC864 001A97C4 90 01 00 48 */ stw r0, 0x48(r1) +/* 801AC868 001A97C8 38 61 00 3C */ addi r3, r1, 0x3c +/* 801AC86C 001A97CC 48 00 02 6D */ bl sub_801acad8 +/* 801AC870 001A97D0 80 01 00 3C */ lwz r0, 0x3c(r1) +/* 801AC874 001A97D4 38 9E 00 B0 */ addi r4, r30, 0xb0 +/* 801AC878 001A97D8 38 61 00 40 */ addi r3, r1, 0x40 +/* 801AC87C 001A97DC 90 1E 00 AC */ stw r0, 0xac(r30) +/* 801AC880 001A97E0 80 1E 00 AC */ lwz r0, 0xac(r30) +/* 801AC884 001A97E4 7C 09 03 A6 */ mtctr r0 +/* 801AC888 001A97E8 2C 00 00 00 */ cmpwi r0, 0 +/* 801AC88C 001A97EC 40 81 00 20 */ ble lbl_801AC8AC +lbl_801AC890: +/* 801AC890 001A97F0 28 04 00 00 */ cmplwi r4, 0 +/* 801AC894 001A97F4 41 82 00 0C */ beq lbl_801AC8A0 +/* 801AC898 001A97F8 80 03 00 00 */ lwz r0, 0(r3) +/* 801AC89C 001A97FC 90 04 00 00 */ stw r0, 0(r4) +lbl_801AC8A0: +/* 801AC8A0 001A9800 38 84 00 04 */ addi r4, r4, 4 +/* 801AC8A4 001A9804 38 63 00 04 */ addi r3, r3, 4 +/* 801AC8A8 001A9808 42 00 FF E8 */ bdnz lbl_801AC890 +lbl_801AC8AC: +/* 801AC8AC 001A980C 80 A1 00 3C */ lwz r5, 0x3c(r1) +/* 801AC8B0 001A9810 38 60 00 00 */ li r3, 0 +/* 801AC8B4 001A9814 2C 05 00 00 */ cmpwi r5, 0 +/* 801AC8B8 001A9818 40 81 00 40 */ ble lbl_801AC8F8 +/* 801AC8BC 001A981C 2C 05 00 08 */ cmpwi r5, 8 +/* 801AC8C0 001A9820 38 85 FF F8 */ addi r4, r5, -8 +/* 801AC8C4 001A9824 40 81 00 20 */ ble lbl_801AC8E4 +/* 801AC8C8 001A9828 38 04 00 07 */ addi r0, r4, 7 +/* 801AC8CC 001A982C 54 00 E8 FE */ srwi r0, r0, 3 +/* 801AC8D0 001A9830 7C 09 03 A6 */ mtctr r0 +/* 801AC8D4 001A9834 2C 04 00 00 */ cmpwi r4, 0 +/* 801AC8D8 001A9838 40 81 00 0C */ ble lbl_801AC8E4 +lbl_801AC8DC: +/* 801AC8DC 001A983C 38 63 00 08 */ addi r3, r3, 8 +/* 801AC8E0 001A9840 42 00 FF FC */ bdnz lbl_801AC8DC +lbl_801AC8E4: +/* 801AC8E4 001A9844 7C 03 28 50 */ subf r0, r3, r5 +/* 801AC8E8 001A9848 7C 09 03 A6 */ mtctr r0 +/* 801AC8EC 001A984C 7C 03 28 00 */ cmpw r3, r5 +/* 801AC8F0 001A9850 40 80 00 08 */ bge lbl_801AC8F8 +lbl_801AC8F4: +/* 801AC8F4 001A9854 42 00 00 00 */ bdnz lbl_801AC8F4 +lbl_801AC8F8: +/* 801AC8F8 001A9858 38 00 00 00 */ li r0, 0 +/* 801AC8FC 001A985C 7F E4 FB 78 */ mr r4, r31 +/* 801AC900 001A9860 90 01 00 3C */ stw r0, 0x3c(r1) +/* 801AC904 001A9864 38 61 00 30 */ addi r3, r1, 0x30 +/* 801AC908 001A9868 48 00 01 D1 */ bl sub_801acad8 +/* 801AC90C 001A986C 80 01 00 30 */ lwz r0, 0x30(r1) +/* 801AC910 001A9870 38 9E 00 BC */ addi r4, r30, 0xbc +/* 801AC914 001A9874 38 61 00 34 */ addi r3, r1, 0x34 +/* 801AC918 001A9878 90 1E 00 B8 */ stw r0, 0xb8(r30) +/* 801AC91C 001A987C 80 1E 00 B8 */ lwz r0, 0xb8(r30) +/* 801AC920 001A9880 7C 09 03 A6 */ mtctr r0 +/* 801AC924 001A9884 2C 00 00 00 */ cmpwi r0, 0 +/* 801AC928 001A9888 40 81 00 20 */ ble lbl_801AC948 +lbl_801AC92C: +/* 801AC92C 001A988C 28 04 00 00 */ cmplwi r4, 0 +/* 801AC930 001A9890 41 82 00 0C */ beq lbl_801AC93C +/* 801AC934 001A9894 80 03 00 00 */ lwz r0, 0(r3) +/* 801AC938 001A9898 90 04 00 00 */ stw r0, 0(r4) +lbl_801AC93C: +/* 801AC93C 001A989C 38 84 00 04 */ addi r4, r4, 4 +/* 801AC940 001A98A0 38 63 00 04 */ addi r3, r3, 4 +/* 801AC944 001A98A4 42 00 FF E8 */ bdnz lbl_801AC92C +lbl_801AC948: +/* 801AC948 001A98A8 80 A1 00 30 */ lwz r5, 0x30(r1) +/* 801AC94C 001A98AC 38 60 00 00 */ li r3, 0 +/* 801AC950 001A98B0 2C 05 00 00 */ cmpwi r5, 0 +/* 801AC954 001A98B4 40 81 00 40 */ ble lbl_801AC994 +/* 801AC958 001A98B8 2C 05 00 08 */ cmpwi r5, 8 +/* 801AC95C 001A98BC 38 85 FF F8 */ addi r4, r5, -8 +/* 801AC960 001A98C0 40 81 00 20 */ ble lbl_801AC980 +/* 801AC964 001A98C4 38 04 00 07 */ addi r0, r4, 7 +/* 801AC968 001A98C8 54 00 E8 FE */ srwi r0, r0, 3 +/* 801AC96C 001A98CC 7C 09 03 A6 */ mtctr r0 +/* 801AC970 001A98D0 2C 04 00 00 */ cmpwi r4, 0 +/* 801AC974 001A98D4 40 81 00 0C */ ble lbl_801AC980 +lbl_801AC978: +/* 801AC978 001A98D8 38 63 00 08 */ addi r3, r3, 8 +/* 801AC97C 001A98DC 42 00 FF FC */ bdnz lbl_801AC978 +lbl_801AC980: +/* 801AC980 001A98E0 7C 03 28 50 */ subf r0, r3, r5 +/* 801AC984 001A98E4 7C 09 03 A6 */ mtctr r0 +/* 801AC988 001A98E8 7C 03 28 00 */ cmpw r3, r5 +/* 801AC98C 001A98EC 40 80 00 08 */ bge lbl_801AC994 +lbl_801AC990: +/* 801AC990 001A98F0 42 00 00 00 */ bdnz lbl_801AC990 +lbl_801AC994: +/* 801AC994 001A98F4 38 00 00 00 */ li r0, 0 +/* 801AC998 001A98F8 C0 02 A8 70 */ lfs f0, lbl_805AC590@sda21(r2) +/* 801AC99C 001A98FC 90 01 00 30 */ stw r0, 0x30(r1) +/* 801AC9A0 001A9900 38 7E 00 C8 */ addi r3, r30, 0xc8 +/* 801AC9A4 001A9904 38 80 00 00 */ li r4, 0 +/* 801AC9A8 001A9908 38 A0 00 14 */ li r5, 0x14 +/* 801AC9AC 001A990C 90 1E 00 C4 */ stw r0, 0xc4(r30) +/* 801AC9B0 001A9910 D0 1E 00 F0 */ stfs f0, 0xf0(r30) +/* 801AC9B4 001A9914 4B E5 69 F5 */ bl memset +/* 801AC9B8 001A9918 38 7E 00 DC */ addi r3, r30, 0xdc +/* 801AC9BC 001A991C 38 80 00 00 */ li r4, 0 +/* 801AC9C0 001A9920 38 A0 00 14 */ li r5, 0x14 +/* 801AC9C4 001A9924 4B E5 69 E5 */ bl memset +/* 801AC9C8 001A9928 7F E4 FB 78 */ mr r4, r31 +/* 801AC9CC 001A992C 38 61 01 14 */ addi r3, r1, 0x114 +/* 801AC9D0 001A9930 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801AC9D4 001A9934 48 19 19 25 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FR12CInputStreamRCQ24rstl17rmemory_allocator" +/* 801AC9D8 001A9938 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) +/* 801AC9DC 001A993C 80 81 01 14 */ lwz r4, 0x114(r1) +/* 801AC9E0 001A9940 81 83 00 00 */ lwz r12, 0(r3) +/* 801AC9E4 001A9944 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801AC9E8 001A9948 7D 89 03 A6 */ mtctr r12 +/* 801AC9EC 001A994C 4E 80 04 21 */ bctrl +/* 801AC9F0 001A9950 80 03 00 04 */ lwz r0, 4(r3) +/* 801AC9F4 001A9954 3B 80 00 00 */ li r28, 0 +/* 801AC9F8 001A9958 3B A0 00 00 */ li r29, 0 +/* 801AC9FC 001A995C 90 1E 00 C4 */ stw r0, 0xc4(r30) +lbl_801ACA00: +/* 801ACA00 001A9960 7F E4 FB 78 */ mr r4, r31 +/* 801ACA04 001A9964 38 61 01 04 */ addi r3, r1, 0x104 +/* 801ACA08 001A9968 38 A1 00 0C */ addi r5, r1, 0xc +/* 801ACA0C 001A996C 48 19 18 ED */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FR12CInputStreamRCQ24rstl17rmemory_allocator" +/* 801ACA10 001A9970 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) +/* 801ACA14 001A9974 80 81 01 04 */ lwz r4, 0x104(r1) +/* 801ACA18 001A9978 81 83 00 00 */ lwz r12, 0(r3) +/* 801ACA1C 001A997C 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801ACA20 001A9980 7D 89 03 A6 */ mtctr r12 +/* 801ACA24 001A9984 4E 80 04 21 */ bctrl +/* 801ACA28 001A9988 80 83 00 04 */ lwz r4, 4(r3) +/* 801ACA2C 001A998C 38 1D 00 C8 */ addi r0, r29, 0xc8 +/* 801ACA30 001A9990 38 61 01 04 */ addi r3, r1, 0x104 +/* 801ACA34 001A9994 7C 9E 01 2E */ stwx r4, r30, r0 +/* 801ACA38 001A9998 48 19 10 A9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801ACA3C 001A999C 3B 9C 00 01 */ addi r28, r28, 1 +/* 801ACA40 001A99A0 3B BD 00 04 */ addi r29, r29, 4 +/* 801ACA44 001A99A4 2C 1C 00 05 */ cmpwi r28, 5 +/* 801ACA48 001A99A8 41 80 FF B8 */ blt lbl_801ACA00 +/* 801ACA4C 001A99AC 3B 80 00 00 */ li r28, 0 +/* 801ACA50 001A99B0 3B A0 00 00 */ li r29, 0 +lbl_801ACA54: +/* 801ACA54 001A99B4 7F E4 FB 78 */ mr r4, r31 +/* 801ACA58 001A99B8 38 61 00 F4 */ addi r3, r1, 0xf4 +/* 801ACA5C 001A99BC 38 A1 00 08 */ addi r5, r1, 8 +/* 801ACA60 001A99C0 48 19 18 99 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FR12CInputStreamRCQ24rstl17rmemory_allocator" +/* 801ACA64 001A99C4 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) +/* 801ACA68 001A99C8 80 81 00 F4 */ lwz r4, 0xf4(r1) +/* 801ACA6C 001A99CC 81 83 00 00 */ lwz r12, 0(r3) +/* 801ACA70 001A99D0 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801ACA74 001A99D4 7D 89 03 A6 */ mtctr r12 +/* 801ACA78 001A99D8 4E 80 04 21 */ bctrl +/* 801ACA7C 001A99DC 80 83 00 04 */ lwz r4, 4(r3) +/* 801ACA80 001A99E0 38 1D 00 DC */ addi r0, r29, 0xdc +/* 801ACA84 001A99E4 38 61 00 F4 */ addi r3, r1, 0xf4 +/* 801ACA88 001A99E8 7C 9E 01 2E */ stwx r4, r30, r0 +/* 801ACA8C 001A99EC 48 19 10 55 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801ACA90 001A99F0 3B 9C 00 01 */ addi r28, r28, 1 +/* 801ACA94 001A99F4 3B BD 00 04 */ addi r29, r29, 4 +/* 801ACA98 001A99F8 2C 1C 00 05 */ cmpwi r28, 5 +/* 801ACA9C 001A99FC 41 80 FF B8 */ blt lbl_801ACA54 +/* 801ACAA0 001A9A00 7F E3 FB 78 */ mr r3, r31 +/* 801ACAA4 001A9A04 48 19 21 85 */ bl ReadFloat__12CInputStreamFv +/* 801ACAA8 001A9A08 D0 3E 00 F0 */ stfs f1, 0xf0(r30) +/* 801ACAAC 001A9A0C 38 61 01 14 */ addi r3, r1, 0x114 +/* 801ACAB0 001A9A10 48 19 10 31 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801ACAB4 001A9A14 80 01 01 94 */ lwz r0, 0x194(r1) +/* 801ACAB8 001A9A18 7F C3 F3 78 */ mr r3, r30 +/* 801ACABC 001A9A1C 83 E1 01 8C */ lwz r31, 0x18c(r1) +/* 801ACAC0 001A9A20 83 C1 01 88 */ lwz r30, 0x188(r1) +/* 801ACAC4 001A9A24 83 A1 01 84 */ lwz r29, 0x184(r1) +/* 801ACAC8 001A9A28 83 81 01 80 */ lwz r28, 0x180(r1) +/* 801ACACC 001A9A2C 7C 08 03 A6 */ mtlr r0 +/* 801ACAD0 001A9A30 38 21 01 90 */ addi r1, r1, 0x190 +/* 801ACAD4 001A9A34 4E 80 00 20 */ blr + +.global sub_801acad8 +sub_801acad8: +/* 801ACAD8 001A9A38 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801ACADC 001A9A3C 7C 08 02 A6 */ mflr r0 +/* 801ACAE0 001A9A40 90 01 00 44 */ stw r0, 0x44(r1) +/* 801ACAE4 001A9A44 38 00 00 00 */ li r0, 0 +/* 801ACAE8 001A9A48 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801ACAEC 001A9A4C 3B E1 00 20 */ addi r31, r1, 0x20 +/* 801ACAF0 001A9A50 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801ACAF4 001A9A54 3B C0 00 00 */ li r30, 0 +/* 801ACAF8 001A9A58 93 A1 00 34 */ stw r29, 0x34(r1) +/* 801ACAFC 001A9A5C 7C 9D 23 78 */ mr r29, r4 +/* 801ACB00 001A9A60 93 81 00 30 */ stw r28, 0x30(r1) +/* 801ACB04 001A9A64 7C 7C 1B 78 */ mr r28, r3 +/* 801ACB08 001A9A68 90 01 00 1C */ stw r0, 0x1c(r1) +lbl_801ACB0C: +/* 801ACB0C 001A9A6C 7F A4 EB 78 */ mr r4, r29 +/* 801ACB10 001A9A70 38 61 00 0C */ addi r3, r1, 0xc +/* 801ACB14 001A9A74 38 A1 00 08 */ addi r5, r1, 8 +/* 801ACB18 001A9A78 48 19 17 E1 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FR12CInputStreamRCQ24rstl17rmemory_allocator" +/* 801ACB1C 001A9A7C 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) +/* 801ACB20 001A9A80 80 81 00 0C */ lwz r4, 0xc(r1) +/* 801ACB24 001A9A84 81 83 00 00 */ lwz r12, 0(r3) +/* 801ACB28 001A9A88 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801ACB2C 001A9A8C 7D 89 03 A6 */ mtctr r12 +/* 801ACB30 001A9A90 4E 80 04 21 */ bctrl +/* 801ACB34 001A9A94 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 801ACB38 001A9A98 80 63 00 04 */ lwz r3, 4(r3) +/* 801ACB3C 001A9A9C 54 00 10 3A */ slwi r0, r0, 2 +/* 801ACB40 001A9AA0 7C 9F 02 15 */ add. r4, r31, r0 +/* 801ACB44 001A9AA4 41 82 00 08 */ beq lbl_801ACB4C +/* 801ACB48 001A9AA8 90 64 00 00 */ stw r3, 0(r4) +lbl_801ACB4C: +/* 801ACB4C 001A9AAC 80 81 00 1C */ lwz r4, 0x1c(r1) +/* 801ACB50 001A9AB0 38 61 00 0C */ addi r3, r1, 0xc +/* 801ACB54 001A9AB4 38 04 00 01 */ addi r0, r4, 1 +/* 801ACB58 001A9AB8 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801ACB5C 001A9ABC 48 19 0F 85 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801ACB60 001A9AC0 3B DE 00 01 */ addi r30, r30, 1 +/* 801ACB64 001A9AC4 2C 1E 00 02 */ cmpwi r30, 2 +/* 801ACB68 001A9AC8 41 80 FF A4 */ blt lbl_801ACB0C +/* 801ACB6C 001A9ACC 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 801ACB70 001A9AD0 38 7C 00 04 */ addi r3, r28, 4 +/* 801ACB74 001A9AD4 90 1C 00 00 */ stw r0, 0(r28) +/* 801ACB78 001A9AD8 80 1C 00 00 */ lwz r0, 0(r28) +/* 801ACB7C 001A9ADC 7C 09 03 A6 */ mtctr r0 +/* 801ACB80 001A9AE0 2C 00 00 00 */ cmpwi r0, 0 +/* 801ACB84 001A9AE4 40 81 00 20 */ ble lbl_801ACBA4 +lbl_801ACB88: +/* 801ACB88 001A9AE8 28 03 00 00 */ cmplwi r3, 0 +/* 801ACB8C 001A9AEC 41 82 00 0C */ beq lbl_801ACB98 +/* 801ACB90 001A9AF0 80 1F 00 00 */ lwz r0, 0(r31) +/* 801ACB94 001A9AF4 90 03 00 00 */ stw r0, 0(r3) +lbl_801ACB98: +/* 801ACB98 001A9AF8 38 63 00 04 */ addi r3, r3, 4 +/* 801ACB9C 001A9AFC 3B FF 00 04 */ addi r31, r31, 4 +/* 801ACBA0 001A9B00 42 00 FF E8 */ bdnz lbl_801ACB88 +lbl_801ACBA4: +/* 801ACBA4 001A9B04 80 A1 00 1C */ lwz r5, 0x1c(r1) +/* 801ACBA8 001A9B08 38 60 00 00 */ li r3, 0 +/* 801ACBAC 001A9B0C 2C 05 00 00 */ cmpwi r5, 0 +/* 801ACBB0 001A9B10 40 81 00 40 */ ble lbl_801ACBF0 +/* 801ACBB4 001A9B14 2C 05 00 08 */ cmpwi r5, 8 +/* 801ACBB8 001A9B18 38 85 FF F8 */ addi r4, r5, -8 +/* 801ACBBC 001A9B1C 40 81 00 20 */ ble lbl_801ACBDC +/* 801ACBC0 001A9B20 38 04 00 07 */ addi r0, r4, 7 +/* 801ACBC4 001A9B24 54 00 E8 FE */ srwi r0, r0, 3 +/* 801ACBC8 001A9B28 7C 09 03 A6 */ mtctr r0 +/* 801ACBCC 001A9B2C 2C 04 00 00 */ cmpwi r4, 0 +/* 801ACBD0 001A9B30 40 81 00 0C */ ble lbl_801ACBDC +lbl_801ACBD4: +/* 801ACBD4 001A9B34 38 63 00 08 */ addi r3, r3, 8 +/* 801ACBD8 001A9B38 42 00 FF FC */ bdnz lbl_801ACBD4 +lbl_801ACBDC: +/* 801ACBDC 001A9B3C 7C 03 28 50 */ subf r0, r3, r5 +/* 801ACBE0 001A9B40 7C 09 03 A6 */ mtctr r0 +/* 801ACBE4 001A9B44 7C 03 28 00 */ cmpw r3, r5 +/* 801ACBE8 001A9B48 40 80 00 08 */ bge lbl_801ACBF0 +lbl_801ACBEC: +/* 801ACBEC 001A9B4C 42 00 00 00 */ bdnz lbl_801ACBEC +lbl_801ACBF0: +/* 801ACBF0 001A9B50 38 00 00 00 */ li r0, 0 +/* 801ACBF4 001A9B54 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801ACBF8 001A9B58 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801ACBFC 001A9B5C 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801ACC00 001A9B60 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801ACC04 001A9B64 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 801ACC08 001A9B68 83 81 00 30 */ lwz r28, 0x30(r1) +/* 801ACC0C 001A9B6C 7C 08 03 A6 */ mtlr r0 +/* 801ACC10 001A9B70 38 21 00 40 */ addi r1, r1, 0x40 +/* 801ACC14 001A9B74 4E 80 00 20 */ blr + +.global sub_801acc18 +sub_801acc18: +/* 801ACC18 001A9B78 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801ACC1C 001A9B7C 7C 08 02 A6 */ mflr r0 +/* 801ACC20 001A9B80 90 01 00 64 */ stw r0, 0x64(r1) +/* 801ACC24 001A9B84 38 00 00 00 */ li r0, 0 +/* 801ACC28 001A9B88 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 801ACC2C 001A9B8C 3B E1 00 20 */ addi r31, r1, 0x20 +/* 801ACC30 001A9B90 93 C1 00 58 */ stw r30, 0x58(r1) +/* 801ACC34 001A9B94 3B C0 00 00 */ li r30, 0 +/* 801ACC38 001A9B98 93 A1 00 54 */ stw r29, 0x54(r1) +/* 801ACC3C 001A9B9C 7C 9D 23 78 */ mr r29, r4 +/* 801ACC40 001A9BA0 93 81 00 50 */ stw r28, 0x50(r1) +/* 801ACC44 001A9BA4 7C 7C 1B 78 */ mr r28, r3 +/* 801ACC48 001A9BA8 90 01 00 1C */ stw r0, 0x1c(r1) +lbl_801ACC4C: +/* 801ACC4C 001A9BAC 7F A4 EB 78 */ mr r4, r29 +/* 801ACC50 001A9BB0 38 61 00 0C */ addi r3, r1, 0xc +/* 801ACC54 001A9BB4 38 A1 00 08 */ addi r5, r1, 8 +/* 801ACC58 001A9BB8 48 19 16 A1 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FR12CInputStreamRCQ24rstl17rmemory_allocator" +/* 801ACC5C 001A9BBC 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) +/* 801ACC60 001A9BC0 80 81 00 0C */ lwz r4, 0xc(r1) +/* 801ACC64 001A9BC4 81 83 00 00 */ lwz r12, 0(r3) +/* 801ACC68 001A9BC8 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801ACC6C 001A9BCC 7D 89 03 A6 */ mtctr r12 +/* 801ACC70 001A9BD0 4E 80 04 21 */ bctrl +/* 801ACC74 001A9BD4 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 801ACC78 001A9BD8 80 63 00 04 */ lwz r3, 4(r3) +/* 801ACC7C 001A9BDC 54 00 10 3A */ slwi r0, r0, 2 +/* 801ACC80 001A9BE0 7C 9F 02 15 */ add. r4, r31, r0 +/* 801ACC84 001A9BE4 41 82 00 08 */ beq lbl_801ACC8C +/* 801ACC88 001A9BE8 90 64 00 00 */ stw r3, 0(r4) +lbl_801ACC8C: +/* 801ACC8C 001A9BEC 80 81 00 1C */ lwz r4, 0x1c(r1) +/* 801ACC90 001A9BF0 38 61 00 0C */ addi r3, r1, 0xc +/* 801ACC94 001A9BF4 38 04 00 01 */ addi r0, r4, 1 +/* 801ACC98 001A9BF8 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801ACC9C 001A9BFC 48 19 0E 45 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801ACCA0 001A9C00 3B DE 00 01 */ addi r30, r30, 1 +/* 801ACCA4 001A9C04 2C 1E 00 09 */ cmpwi r30, 9 +/* 801ACCA8 001A9C08 41 80 FF A4 */ blt lbl_801ACC4C +/* 801ACCAC 001A9C0C 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 801ACCB0 001A9C10 38 7C 00 04 */ addi r3, r28, 4 +/* 801ACCB4 001A9C14 90 1C 00 00 */ stw r0, 0(r28) +/* 801ACCB8 001A9C18 80 1C 00 00 */ lwz r0, 0(r28) +/* 801ACCBC 001A9C1C 7C 09 03 A6 */ mtctr r0 +/* 801ACCC0 001A9C20 2C 00 00 00 */ cmpwi r0, 0 +/* 801ACCC4 001A9C24 40 81 00 20 */ ble lbl_801ACCE4 +lbl_801ACCC8: +/* 801ACCC8 001A9C28 28 03 00 00 */ cmplwi r3, 0 +/* 801ACCCC 001A9C2C 41 82 00 0C */ beq lbl_801ACCD8 +/* 801ACCD0 001A9C30 80 1F 00 00 */ lwz r0, 0(r31) +/* 801ACCD4 001A9C34 90 03 00 00 */ stw r0, 0(r3) +lbl_801ACCD8: +/* 801ACCD8 001A9C38 38 63 00 04 */ addi r3, r3, 4 +/* 801ACCDC 001A9C3C 3B FF 00 04 */ addi r31, r31, 4 +/* 801ACCE0 001A9C40 42 00 FF E8 */ bdnz lbl_801ACCC8 +lbl_801ACCE4: +/* 801ACCE4 001A9C44 80 A1 00 1C */ lwz r5, 0x1c(r1) +/* 801ACCE8 001A9C48 38 60 00 00 */ li r3, 0 +/* 801ACCEC 001A9C4C 2C 05 00 00 */ cmpwi r5, 0 +/* 801ACCF0 001A9C50 40 81 00 40 */ ble lbl_801ACD30 +/* 801ACCF4 001A9C54 2C 05 00 08 */ cmpwi r5, 8 +/* 801ACCF8 001A9C58 38 85 FF F8 */ addi r4, r5, -8 +/* 801ACCFC 001A9C5C 40 81 00 20 */ ble lbl_801ACD1C +/* 801ACD00 001A9C60 38 04 00 07 */ addi r0, r4, 7 +/* 801ACD04 001A9C64 54 00 E8 FE */ srwi r0, r0, 3 +/* 801ACD08 001A9C68 7C 09 03 A6 */ mtctr r0 +/* 801ACD0C 001A9C6C 2C 04 00 00 */ cmpwi r4, 0 +/* 801ACD10 001A9C70 40 81 00 0C */ ble lbl_801ACD1C +lbl_801ACD14: +/* 801ACD14 001A9C74 38 63 00 08 */ addi r3, r3, 8 +/* 801ACD18 001A9C78 42 00 FF FC */ bdnz lbl_801ACD14 +lbl_801ACD1C: +/* 801ACD1C 001A9C7C 7C 03 28 50 */ subf r0, r3, r5 +/* 801ACD20 001A9C80 7C 09 03 A6 */ mtctr r0 +/* 801ACD24 001A9C84 7C 03 28 00 */ cmpw r3, r5 +/* 801ACD28 001A9C88 40 80 00 08 */ bge lbl_801ACD30 +lbl_801ACD2C: +/* 801ACD2C 001A9C8C 42 00 00 00 */ bdnz lbl_801ACD2C +lbl_801ACD30: +/* 801ACD30 001A9C90 38 00 00 00 */ li r0, 0 +/* 801ACD34 001A9C94 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 801ACD38 001A9C98 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801ACD3C 001A9C9C 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801ACD40 001A9CA0 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 801ACD44 001A9CA4 83 A1 00 54 */ lwz r29, 0x54(r1) +/* 801ACD48 001A9CA8 83 81 00 50 */ lwz r28, 0x50(r1) +/* 801ACD4C 001A9CAC 7C 08 03 A6 */ mtlr r0 +/* 801ACD50 001A9CB0 38 21 00 60 */ addi r1, r1, 0x60 +/* 801ACD54 001A9CB4 4E 80 00 20 */ blr + +.global __dt__15CTweakPlayerResFv +__dt__15CTweakPlayerResFv: +/* 801ACD58 001A9CB8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801ACD5C 001A9CBC 7C 08 02 A6 */ mflr r0 +/* 801ACD60 001A9CC0 90 01 00 14 */ stw r0, 0x14(r1) +/* 801ACD64 001A9CC4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801ACD68 001A9CC8 7C 7F 1B 79 */ or. r31, r3, r3 +/* 801ACD6C 001A9CCC 41 82 03 70 */ beq lbl_801AD0DC +/* 801ACD70 001A9CD0 3C 60 80 3E */ lis r3, lbl_803E4CF8@ha +/* 801ACD74 001A9CD4 34 1F 00 B8 */ addic. r0, r31, 0xb8 +/* 801ACD78 001A9CD8 38 03 4C F8 */ addi r0, r3, lbl_803E4CF8@l +/* 801ACD7C 001A9CDC 90 1F 00 00 */ stw r0, 0(r31) +/* 801ACD80 001A9CE0 41 82 00 58 */ beq lbl_801ACDD8 +/* 801ACD84 001A9CE4 80 DF 00 B8 */ lwz r6, 0xb8(r31) +/* 801ACD88 001A9CE8 38 60 00 00 */ li r3, 0 +/* 801ACD8C 001A9CEC 2C 06 00 00 */ cmpwi r6, 0 +/* 801ACD90 001A9CF0 40 81 00 40 */ ble lbl_801ACDD0 +/* 801ACD94 001A9CF4 2C 06 00 08 */ cmpwi r6, 8 +/* 801ACD98 001A9CF8 38 A6 FF F8 */ addi r5, r6, -8 +/* 801ACD9C 001A9CFC 40 81 00 20 */ ble lbl_801ACDBC +/* 801ACDA0 001A9D00 38 05 00 07 */ addi r0, r5, 7 +/* 801ACDA4 001A9D04 54 00 E8 FE */ srwi r0, r0, 3 +/* 801ACDA8 001A9D08 7C 09 03 A6 */ mtctr r0 +/* 801ACDAC 001A9D0C 2C 05 00 00 */ cmpwi r5, 0 +/* 801ACDB0 001A9D10 40 81 00 0C */ ble lbl_801ACDBC +lbl_801ACDB4: +/* 801ACDB4 001A9D14 38 63 00 08 */ addi r3, r3, 8 +/* 801ACDB8 001A9D18 42 00 FF FC */ bdnz lbl_801ACDB4 +lbl_801ACDBC: +/* 801ACDBC 001A9D1C 7C 03 30 50 */ subf r0, r3, r6 +/* 801ACDC0 001A9D20 7C 09 03 A6 */ mtctr r0 +/* 801ACDC4 001A9D24 7C 03 30 00 */ cmpw r3, r6 +/* 801ACDC8 001A9D28 40 80 00 08 */ bge lbl_801ACDD0 +lbl_801ACDCC: +/* 801ACDCC 001A9D2C 42 00 00 00 */ bdnz lbl_801ACDCC +lbl_801ACDD0: +/* 801ACDD0 001A9D30 38 00 00 00 */ li r0, 0 +/* 801ACDD4 001A9D34 90 1F 00 B8 */ stw r0, 0xb8(r31) +lbl_801ACDD8: +/* 801ACDD8 001A9D38 34 1F 00 AC */ addic. r0, r31, 0xac +/* 801ACDDC 001A9D3C 41 82 00 58 */ beq lbl_801ACE34 +/* 801ACDE0 001A9D40 80 DF 00 AC */ lwz r6, 0xac(r31) +/* 801ACDE4 001A9D44 38 60 00 00 */ li r3, 0 +/* 801ACDE8 001A9D48 2C 06 00 00 */ cmpwi r6, 0 +/* 801ACDEC 001A9D4C 40 81 00 40 */ ble lbl_801ACE2C +/* 801ACDF0 001A9D50 2C 06 00 08 */ cmpwi r6, 8 +/* 801ACDF4 001A9D54 38 A6 FF F8 */ addi r5, r6, -8 +/* 801ACDF8 001A9D58 40 81 00 20 */ ble lbl_801ACE18 +/* 801ACDFC 001A9D5C 38 05 00 07 */ addi r0, r5, 7 +/* 801ACE00 001A9D60 54 00 E8 FE */ srwi r0, r0, 3 +/* 801ACE04 001A9D64 7C 09 03 A6 */ mtctr r0 +/* 801ACE08 001A9D68 2C 05 00 00 */ cmpwi r5, 0 +/* 801ACE0C 001A9D6C 40 81 00 0C */ ble lbl_801ACE18 +lbl_801ACE10: +/* 801ACE10 001A9D70 38 63 00 08 */ addi r3, r3, 8 +/* 801ACE14 001A9D74 42 00 FF FC */ bdnz lbl_801ACE10 +lbl_801ACE18: +/* 801ACE18 001A9D78 7C 03 30 50 */ subf r0, r3, r6 +/* 801ACE1C 001A9D7C 7C 09 03 A6 */ mtctr r0 +/* 801ACE20 001A9D80 7C 03 30 00 */ cmpw r3, r6 +/* 801ACE24 001A9D84 40 80 00 08 */ bge lbl_801ACE2C +lbl_801ACE28: +/* 801ACE28 001A9D88 42 00 00 00 */ bdnz lbl_801ACE28 +lbl_801ACE2C: +/* 801ACE2C 001A9D8C 38 00 00 00 */ li r0, 0 +/* 801ACE30 001A9D90 90 1F 00 AC */ stw r0, 0xac(r31) +lbl_801ACE34: +/* 801ACE34 001A9D94 34 1F 00 A0 */ addic. r0, r31, 0xa0 +/* 801ACE38 001A9D98 41 82 00 58 */ beq lbl_801ACE90 +/* 801ACE3C 001A9D9C 80 DF 00 A0 */ lwz r6, 0xa0(r31) +/* 801ACE40 001A9DA0 38 60 00 00 */ li r3, 0 +/* 801ACE44 001A9DA4 2C 06 00 00 */ cmpwi r6, 0 +/* 801ACE48 001A9DA8 40 81 00 40 */ ble lbl_801ACE88 +/* 801ACE4C 001A9DAC 2C 06 00 08 */ cmpwi r6, 8 +/* 801ACE50 001A9DB0 38 A6 FF F8 */ addi r5, r6, -8 +/* 801ACE54 001A9DB4 40 81 00 20 */ ble lbl_801ACE74 +/* 801ACE58 001A9DB8 38 05 00 07 */ addi r0, r5, 7 +/* 801ACE5C 001A9DBC 54 00 E8 FE */ srwi r0, r0, 3 +/* 801ACE60 001A9DC0 7C 09 03 A6 */ mtctr r0 +/* 801ACE64 001A9DC4 2C 05 00 00 */ cmpwi r5, 0 +/* 801ACE68 001A9DC8 40 81 00 0C */ ble lbl_801ACE74 +lbl_801ACE6C: +/* 801ACE6C 001A9DCC 38 63 00 08 */ addi r3, r3, 8 +/* 801ACE70 001A9DD0 42 00 FF FC */ bdnz lbl_801ACE6C +lbl_801ACE74: +/* 801ACE74 001A9DD4 7C 03 30 50 */ subf r0, r3, r6 +/* 801ACE78 001A9DD8 7C 09 03 A6 */ mtctr r0 +/* 801ACE7C 001A9DDC 7C 03 30 00 */ cmpw r3, r6 +/* 801ACE80 001A9DE0 40 80 00 08 */ bge lbl_801ACE88 +lbl_801ACE84: +/* 801ACE84 001A9DE4 42 00 00 00 */ bdnz lbl_801ACE84 +lbl_801ACE88: +/* 801ACE88 001A9DE8 38 00 00 00 */ li r0, 0 +/* 801ACE8C 001A9DEC 90 1F 00 A0 */ stw r0, 0xa0(r31) +lbl_801ACE90: +/* 801ACE90 001A9DF0 34 1F 00 94 */ addic. r0, r31, 0x94 +/* 801ACE94 001A9DF4 41 82 00 58 */ beq lbl_801ACEEC +/* 801ACE98 001A9DF8 80 DF 00 94 */ lwz r6, 0x94(r31) +/* 801ACE9C 001A9DFC 38 60 00 00 */ li r3, 0 +/* 801ACEA0 001A9E00 2C 06 00 00 */ cmpwi r6, 0 +/* 801ACEA4 001A9E04 40 81 00 40 */ ble lbl_801ACEE4 +/* 801ACEA8 001A9E08 2C 06 00 08 */ cmpwi r6, 8 +/* 801ACEAC 001A9E0C 38 A6 FF F8 */ addi r5, r6, -8 +/* 801ACEB0 001A9E10 40 81 00 20 */ ble lbl_801ACED0 +/* 801ACEB4 001A9E14 38 05 00 07 */ addi r0, r5, 7 +/* 801ACEB8 001A9E18 54 00 E8 FE */ srwi r0, r0, 3 +/* 801ACEBC 001A9E1C 7C 09 03 A6 */ mtctr r0 +/* 801ACEC0 001A9E20 2C 05 00 00 */ cmpwi r5, 0 +/* 801ACEC4 001A9E24 40 81 00 0C */ ble lbl_801ACED0 +lbl_801ACEC8: +/* 801ACEC8 001A9E28 38 63 00 08 */ addi r3, r3, 8 +/* 801ACECC 001A9E2C 42 00 FF FC */ bdnz lbl_801ACEC8 +lbl_801ACED0: +/* 801ACED0 001A9E30 7C 03 30 50 */ subf r0, r3, r6 +/* 801ACED4 001A9E34 7C 09 03 A6 */ mtctr r0 +/* 801ACED8 001A9E38 7C 03 30 00 */ cmpw r3, r6 +/* 801ACEDC 001A9E3C 40 80 00 08 */ bge lbl_801ACEE4 +lbl_801ACEE0: +/* 801ACEE0 001A9E40 42 00 00 00 */ bdnz lbl_801ACEE0 +lbl_801ACEE4: +/* 801ACEE4 001A9E44 38 00 00 00 */ li r0, 0 +/* 801ACEE8 001A9E48 90 1F 00 94 */ stw r0, 0x94(r31) +lbl_801ACEEC: +/* 801ACEEC 001A9E4C 34 1F 00 88 */ addic. r0, r31, 0x88 +/* 801ACEF0 001A9E50 41 82 00 58 */ beq lbl_801ACF48 +/* 801ACEF4 001A9E54 80 DF 00 88 */ lwz r6, 0x88(r31) +/* 801ACEF8 001A9E58 38 60 00 00 */ li r3, 0 +/* 801ACEFC 001A9E5C 2C 06 00 00 */ cmpwi r6, 0 +/* 801ACF00 001A9E60 40 81 00 40 */ ble lbl_801ACF40 +/* 801ACF04 001A9E64 2C 06 00 08 */ cmpwi r6, 8 +/* 801ACF08 001A9E68 38 A6 FF F8 */ addi r5, r6, -8 +/* 801ACF0C 001A9E6C 40 81 00 20 */ ble lbl_801ACF2C +/* 801ACF10 001A9E70 38 05 00 07 */ addi r0, r5, 7 +/* 801ACF14 001A9E74 54 00 E8 FE */ srwi r0, r0, 3 +/* 801ACF18 001A9E78 7C 09 03 A6 */ mtctr r0 +/* 801ACF1C 001A9E7C 2C 05 00 00 */ cmpwi r5, 0 +/* 801ACF20 001A9E80 40 81 00 0C */ ble lbl_801ACF2C +lbl_801ACF24: +/* 801ACF24 001A9E84 38 63 00 08 */ addi r3, r3, 8 +/* 801ACF28 001A9E88 42 00 FF FC */ bdnz lbl_801ACF24 +lbl_801ACF2C: +/* 801ACF2C 001A9E8C 7C 03 30 50 */ subf r0, r3, r6 +/* 801ACF30 001A9E90 7C 09 03 A6 */ mtctr r0 +/* 801ACF34 001A9E94 7C 03 30 00 */ cmpw r3, r6 +/* 801ACF38 001A9E98 40 80 00 08 */ bge lbl_801ACF40 +lbl_801ACF3C: +/* 801ACF3C 001A9E9C 42 00 00 00 */ bdnz lbl_801ACF3C +lbl_801ACF40: +/* 801ACF40 001A9EA0 38 00 00 00 */ li r0, 0 +/* 801ACF44 001A9EA4 90 1F 00 88 */ stw r0, 0x88(r31) +lbl_801ACF48: +/* 801ACF48 001A9EA8 34 1F 00 7C */ addic. r0, r31, 0x7c +/* 801ACF4C 001A9EAC 41 82 00 58 */ beq lbl_801ACFA4 +/* 801ACF50 001A9EB0 80 DF 00 7C */ lwz r6, 0x7c(r31) +/* 801ACF54 001A9EB4 38 60 00 00 */ li r3, 0 +/* 801ACF58 001A9EB8 2C 06 00 00 */ cmpwi r6, 0 +/* 801ACF5C 001A9EBC 40 81 00 40 */ ble lbl_801ACF9C +/* 801ACF60 001A9EC0 2C 06 00 08 */ cmpwi r6, 8 +/* 801ACF64 001A9EC4 38 A6 FF F8 */ addi r5, r6, -8 +/* 801ACF68 001A9EC8 40 81 00 20 */ ble lbl_801ACF88 +/* 801ACF6C 001A9ECC 38 05 00 07 */ addi r0, r5, 7 +/* 801ACF70 001A9ED0 54 00 E8 FE */ srwi r0, r0, 3 +/* 801ACF74 001A9ED4 7C 09 03 A6 */ mtctr r0 +/* 801ACF78 001A9ED8 2C 05 00 00 */ cmpwi r5, 0 +/* 801ACF7C 001A9EDC 40 81 00 0C */ ble lbl_801ACF88 +lbl_801ACF80: +/* 801ACF80 001A9EE0 38 63 00 08 */ addi r3, r3, 8 +/* 801ACF84 001A9EE4 42 00 FF FC */ bdnz lbl_801ACF80 +lbl_801ACF88: +/* 801ACF88 001A9EE8 7C 03 30 50 */ subf r0, r3, r6 +/* 801ACF8C 001A9EEC 7C 09 03 A6 */ mtctr r0 +/* 801ACF90 001A9EF0 7C 03 30 00 */ cmpw r3, r6 +/* 801ACF94 001A9EF4 40 80 00 08 */ bge lbl_801ACF9C +lbl_801ACF98: +/* 801ACF98 001A9EF8 42 00 00 00 */ bdnz lbl_801ACF98 +lbl_801ACF9C: +/* 801ACF9C 001A9EFC 38 00 00 00 */ li r0, 0 +/* 801ACFA0 001A9F00 90 1F 00 7C */ stw r0, 0x7c(r31) +lbl_801ACFA4: +/* 801ACFA4 001A9F04 34 1F 00 70 */ addic. r0, r31, 0x70 +/* 801ACFA8 001A9F08 41 82 00 58 */ beq lbl_801AD000 +/* 801ACFAC 001A9F0C 80 DF 00 70 */ lwz r6, 0x70(r31) +/* 801ACFB0 001A9F10 38 60 00 00 */ li r3, 0 +/* 801ACFB4 001A9F14 2C 06 00 00 */ cmpwi r6, 0 +/* 801ACFB8 001A9F18 40 81 00 40 */ ble lbl_801ACFF8 +/* 801ACFBC 001A9F1C 2C 06 00 08 */ cmpwi r6, 8 +/* 801ACFC0 001A9F20 38 A6 FF F8 */ addi r5, r6, -8 +/* 801ACFC4 001A9F24 40 81 00 20 */ ble lbl_801ACFE4 +/* 801ACFC8 001A9F28 38 05 00 07 */ addi r0, r5, 7 +/* 801ACFCC 001A9F2C 54 00 E8 FE */ srwi r0, r0, 3 +/* 801ACFD0 001A9F30 7C 09 03 A6 */ mtctr r0 +/* 801ACFD4 001A9F34 2C 05 00 00 */ cmpwi r5, 0 +/* 801ACFD8 001A9F38 40 81 00 0C */ ble lbl_801ACFE4 +lbl_801ACFDC: +/* 801ACFDC 001A9F3C 38 63 00 08 */ addi r3, r3, 8 +/* 801ACFE0 001A9F40 42 00 FF FC */ bdnz lbl_801ACFDC +lbl_801ACFE4: +/* 801ACFE4 001A9F44 7C 03 30 50 */ subf r0, r3, r6 +/* 801ACFE8 001A9F48 7C 09 03 A6 */ mtctr r0 +/* 801ACFEC 001A9F4C 7C 03 30 00 */ cmpw r3, r6 +/* 801ACFF0 001A9F50 40 80 00 08 */ bge lbl_801ACFF8 +lbl_801ACFF4: +/* 801ACFF4 001A9F54 42 00 00 00 */ bdnz lbl_801ACFF4 +lbl_801ACFF8: +/* 801ACFF8 001A9F58 38 00 00 00 */ li r0, 0 +/* 801ACFFC 001A9F5C 90 1F 00 70 */ stw r0, 0x70(r31) +lbl_801AD000: +/* 801AD000 001A9F60 34 1F 00 48 */ addic. r0, r31, 0x48 +/* 801AD004 001A9F64 41 82 00 58 */ beq lbl_801AD05C +/* 801AD008 001A9F68 80 DF 00 48 */ lwz r6, 0x48(r31) +/* 801AD00C 001A9F6C 38 60 00 00 */ li r3, 0 +/* 801AD010 001A9F70 2C 06 00 00 */ cmpwi r6, 0 +/* 801AD014 001A9F74 40 81 00 40 */ ble lbl_801AD054 +/* 801AD018 001A9F78 2C 06 00 08 */ cmpwi r6, 8 +/* 801AD01C 001A9F7C 38 A6 FF F8 */ addi r5, r6, -8 +/* 801AD020 001A9F80 40 81 00 20 */ ble lbl_801AD040 +/* 801AD024 001A9F84 38 05 00 07 */ addi r0, r5, 7 +/* 801AD028 001A9F88 54 00 E8 FE */ srwi r0, r0, 3 +/* 801AD02C 001A9F8C 7C 09 03 A6 */ mtctr r0 +/* 801AD030 001A9F90 2C 05 00 00 */ cmpwi r5, 0 +/* 801AD034 001A9F94 40 81 00 0C */ ble lbl_801AD040 +lbl_801AD038: +/* 801AD038 001A9F98 38 63 00 08 */ addi r3, r3, 8 +/* 801AD03C 001A9F9C 42 00 FF FC */ bdnz lbl_801AD038 +lbl_801AD040: +/* 801AD040 001A9FA0 7C 03 30 50 */ subf r0, r3, r6 +/* 801AD044 001A9FA4 7C 09 03 A6 */ mtctr r0 +/* 801AD048 001A9FA8 7C 03 30 00 */ cmpw r3, r6 +/* 801AD04C 001A9FAC 40 80 00 08 */ bge lbl_801AD054 +lbl_801AD050: +/* 801AD050 001A9FB0 42 00 00 00 */ bdnz lbl_801AD050 +lbl_801AD054: +/* 801AD054 001A9FB4 38 00 00 00 */ li r0, 0 +/* 801AD058 001A9FB8 90 1F 00 48 */ stw r0, 0x48(r31) +lbl_801AD05C: +/* 801AD05C 001A9FBC 34 1F 00 20 */ addic. r0, r31, 0x20 +/* 801AD060 001A9FC0 41 82 00 58 */ beq lbl_801AD0B8 +/* 801AD064 001A9FC4 80 DF 00 20 */ lwz r6, 0x20(r31) +/* 801AD068 001A9FC8 38 60 00 00 */ li r3, 0 +/* 801AD06C 001A9FCC 2C 06 00 00 */ cmpwi r6, 0 +/* 801AD070 001A9FD0 40 81 00 40 */ ble lbl_801AD0B0 +/* 801AD074 001A9FD4 2C 06 00 08 */ cmpwi r6, 8 +/* 801AD078 001A9FD8 38 A6 FF F8 */ addi r5, r6, -8 +/* 801AD07C 001A9FDC 40 81 00 20 */ ble lbl_801AD09C +/* 801AD080 001A9FE0 38 05 00 07 */ addi r0, r5, 7 +/* 801AD084 001A9FE4 54 00 E8 FE */ srwi r0, r0, 3 +/* 801AD088 001A9FE8 7C 09 03 A6 */ mtctr r0 +/* 801AD08C 001A9FEC 2C 05 00 00 */ cmpwi r5, 0 +/* 801AD090 001A9FF0 40 81 00 0C */ ble lbl_801AD09C +lbl_801AD094: +/* 801AD094 001A9FF4 38 63 00 08 */ addi r3, r3, 8 +/* 801AD098 001A9FF8 42 00 FF FC */ bdnz lbl_801AD094 +lbl_801AD09C: +/* 801AD09C 001A9FFC 7C 03 30 50 */ subf r0, r3, r6 +/* 801AD0A0 001AA000 7C 09 03 A6 */ mtctr r0 +/* 801AD0A4 001AA004 7C 03 30 00 */ cmpw r3, r6 +/* 801AD0A8 001AA008 40 80 00 08 */ bge lbl_801AD0B0 +lbl_801AD0AC: +/* 801AD0AC 001AA00C 42 00 00 00 */ bdnz lbl_801AD0AC +lbl_801AD0B0: +/* 801AD0B0 001AA010 38 00 00 00 */ li r0, 0 +/* 801AD0B4 001AA014 90 1F 00 20 */ stw r0, 0x20(r31) +lbl_801AD0B8: +/* 801AD0B8 001AA018 28 1F 00 00 */ cmplwi r31, 0 +/* 801AD0BC 001AA01C 41 82 00 10 */ beq lbl_801AD0CC +/* 801AD0C0 001AA020 3C 60 80 3E */ lis r3, lbl_803D9CC4@ha +/* 801AD0C4 001AA024 38 03 9C C4 */ addi r0, r3, lbl_803D9CC4@l +/* 801AD0C8 001AA028 90 1F 00 00 */ stw r0, 0(r31) +lbl_801AD0CC: +/* 801AD0CC 001AA02C 7C 80 07 35 */ extsh. r0, r4 +/* 801AD0D0 001AA030 40 81 00 0C */ ble lbl_801AD0DC +/* 801AD0D4 001AA034 7F E3 FB 78 */ mr r3, r31 +/* 801AD0D8 001AA038 48 00 00 1D */ bl "__dl__29TOneStatic<15CTweakPlayerRes>FPv" +lbl_801AD0DC: +/* 801AD0DC 001AA03C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801AD0E0 001AA040 7F E3 FB 78 */ mr r3, r31 +/* 801AD0E4 001AA044 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801AD0E8 001AA048 7C 08 03 A6 */ mtlr r0 +/* 801AD0EC 001AA04C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801AD0F0 001AA050 4E 80 00 20 */ blr + +.global "__dl__29TOneStatic<15CTweakPlayerRes>FPv" +"__dl__29TOneStatic<15CTweakPlayerRes>FPv": +/* 801AD0F4 001AA054 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801AD0F8 001AA058 7C 08 02 A6 */ mflr r0 +/* 801AD0FC 001AA05C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801AD100 001AA060 4B E8 9D 25 */ bl "ReferenceCount__29TOneStatic<15CTweakPlayerRes>Fv" +/* 801AD104 001AA064 80 83 00 00 */ lwz r4, 0(r3) +/* 801AD108 001AA068 38 04 FF FF */ addi r0, r4, -1 +/* 801AD10C 001AA06C 90 03 00 00 */ stw r0, 0(r3) +/* 801AD110 001AA070 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801AD114 001AA074 7C 08 03 A6 */ mtlr r0 +/* 801AD118 001AA078 38 21 00 10 */ addi r1, r1, 0x10 +/* 801AD11C 001AA07C 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CTweakTargeting.s b/asm/Kyoto_CWD/Tweaks/CTweakTargeting.s similarity index 100% rename from asm/Kyoto_CWD/CTweakTargeting.s rename to asm/Kyoto_CWD/Tweaks/CTweakTargeting.s diff --git a/asm/Kyoto_CWD/CTweaks.s b/asm/Kyoto_CWD/Tweaks/CTweaks.s similarity index 100% rename from asm/Kyoto_CWD/CTweaks.s rename to asm/Kyoto_CWD/Tweaks/CTweaks.s diff --git a/asm/Kyoto_CWD/Weapons/CAuxWeapon.s b/asm/Kyoto_CWD/Weapons/CAuxWeapon.s new file mode 100644 index 00000000..54431074 --- /dev/null +++ b/asm/Kyoto_CWD/Weapons/CAuxWeapon.s @@ -0,0 +1,1391 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global LoadIdle__10CAuxWeaponFv +LoadIdle__10CAuxWeaponFv: +/* 801B88A4 001B5804 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B88A8 001B5808 7C 08 02 A6 */ mflr r0 +/* 801B88AC 001B580C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B88B0 001B5810 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801B88B4 001B5814 93 C1 00 08 */ stw r30, 8(r1) +/* 801B88B8 001B5818 7C 7E 1B 78 */ mr r30, r3 +/* 801B88BC 001B581C 80 03 00 78 */ lwz r0, 0x78(r3) +/* 801B88C0 001B5820 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801B88C4 001B5824 7F FE 02 14 */ add r31, r30, r0 +/* 801B88C8 001B5828 80 1F 00 34 */ lwz r0, 0x34(r31) +/* 801B88CC 001B582C 3B FF 00 2C */ addi r31, r31, 0x2c +/* 801B88D0 001B5830 28 00 00 00 */ cmplwi r0, 0 +/* 801B88D4 001B5834 41 82 00 0C */ beq lbl_801B88E0 +/* 801B88D8 001B5838 38 60 00 01 */ li r3, 1 +/* 801B88DC 001B583C 48 00 00 3C */ b lbl_801B8918 +lbl_801B88E0: +/* 801B88E0 001B5840 88 1F 00 04 */ lbz r0, 4(r31) +/* 801B88E4 001B5844 28 00 00 00 */ cmplwi r0, 0 +/* 801B88E8 001B5848 41 82 00 2C */ beq lbl_801B8914 +/* 801B88EC 001B584C 80 7F 00 00 */ lwz r3, 0(r31) +/* 801B88F0 001B5850 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801B88F4 001B5854 28 00 00 00 */ cmplwi r0, 0 +/* 801B88F8 001B5858 41 82 00 1C */ beq lbl_801B8914 +/* 801B88FC 001B585C 7F E3 FB 78 */ mr r3, r31 +/* 801B8900 001B5860 48 18 85 0D */ bl GetObj__6CTokenFv +/* 801B8904 001B5864 80 03 00 04 */ lwz r0, 4(r3) +/* 801B8908 001B5868 38 60 00 01 */ li r3, 1 +/* 801B890C 001B586C 90 1F 00 08 */ stw r0, 8(r31) +/* 801B8910 001B5870 48 00 00 08 */ b lbl_801B8918 +lbl_801B8914: +/* 801B8914 001B5874 38 60 00 00 */ li r3, 0 +lbl_801B8918: +/* 801B8918 001B5878 88 1E 00 80 */ lbz r0, 0x80(r30) +/* 801B891C 001B587C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801B8920 001B5880 98 1E 00 80 */ stb r0, 0x80(r30) +/* 801B8924 001B5884 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801B8928 001B5888 83 C1 00 08 */ lwz r30, 8(r1) +/* 801B892C 001B588C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B8930 001B5890 7C 08 03 A6 */ mtlr r0 +/* 801B8934 001B5894 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B8938 001B5898 4E 80 00 20 */ blr + +.global Load__10CAuxWeaponFiR13CStateManager +Load__10CAuxWeaponFiR13CStateManager: +/* 801B893C 001B589C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801B8940 001B58A0 7C 08 02 A6 */ mflr r0 +/* 801B8944 001B58A4 38 C0 00 00 */ li r6, 0 +/* 801B8948 001B58A8 90 01 00 24 */ stw r0, 0x24(r1) +/* 801B894C 001B58AC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801B8950 001B58B0 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801B8954 001B58B4 7C 9E 23 78 */ mr r30, r4 +/* 801B8958 001B58B8 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801B895C 001B58BC 7C 7D 1B 78 */ mr r29, r3 +/* 801B8960 001B58C0 88 03 00 80 */ lbz r0, 0x80(r3) +/* 801B8964 001B58C4 50 C0 3E 30 */ rlwimi r0, r6, 7, 0x18, 0x18 +/* 801B8968 001B58C8 98 03 00 80 */ stb r0, 0x80(r3) +/* 801B896C 001B58CC 80 03 00 78 */ lwz r0, 0x78(r3) +/* 801B8970 001B58D0 2C 00 00 03 */ cmpwi r0, 3 +/* 801B8974 001B58D4 41 82 00 20 */ beq lbl_801B8994 +/* 801B8978 001B58D8 40 80 00 24 */ bge lbl_801B899C +/* 801B897C 001B58DC 2C 00 00 02 */ cmpwi r0, 2 +/* 801B8980 001B58E0 40 80 00 08 */ bge lbl_801B8988 +/* 801B8984 001B58E4 48 00 00 18 */ b lbl_801B899C +lbl_801B8988: +/* 801B8988 001B58E8 7C A4 2B 78 */ mr r4, r5 +/* 801B898C 001B58EC 48 00 00 F9 */ bl DeleteWaveBusterBeam__10CAuxWeaponFR13CStateManager +/* 801B8990 001B58F0 48 00 00 0C */ b lbl_801B899C +lbl_801B8994: +/* 801B8994 001B58F4 7C A4 2B 78 */ mr r4, r5 +/* 801B8998 001B58F8 48 00 01 7D */ bl DeleteFlameThrower__10CAuxWeaponFR13CStateManager +lbl_801B899C: +/* 801B899C 001B58FC 80 7D 00 78 */ lwz r3, 0x78(r29) +/* 801B89A0 001B5900 3B FD 00 2C */ addi r31, r29, 0x2c +/* 801B89A4 001B5904 38 00 00 00 */ li r0, 0 +/* 801B89A8 001B5908 1C 63 00 0C */ mulli r3, r3, 0xc +/* 801B89AC 001B590C 7C 7F 1A 14 */ add r3, r31, r3 +/* 801B89B0 001B5910 90 03 00 08 */ stw r0, 8(r3) +/* 801B89B4 001B5914 48 18 83 8D */ bl Unlock__6CTokenFv +/* 801B89B8 001B5918 1C 1E 00 0C */ mulli r0, r30, 0xc +/* 801B89BC 001B591C 7C 7F 02 14 */ add r3, r31, r0 +/* 801B89C0 001B5920 48 18 83 C5 */ bl Lock__6CTokenFv +/* 801B89C4 001B5924 93 DD 00 78 */ stw r30, 0x78(r29) +/* 801B89C8 001B5928 7F A3 EB 78 */ mr r3, r29 +/* 801B89CC 001B592C 4B FF FE D9 */ bl LoadIdle__10CAuxWeaponFv +/* 801B89D0 001B5930 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801B89D4 001B5934 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801B89D8 001B5938 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801B89DC 001B593C 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801B89E0 001B5940 7C 08 03 A6 */ mtlr r0 +/* 801B89E4 001B5944 38 21 00 20 */ addi r1, r1, 0x20 +/* 801B89E8 001B5948 4E 80 00 20 */ blr + +.global FreeComboVoiceId__10CAuxWeaponFv +FreeComboVoiceId__10CAuxWeaponFv: +/* 801B89EC 001B594C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801B89F0 001B5950 7C 08 02 A6 */ mflr r0 +/* 801B89F4 001B5954 90 01 00 24 */ stw r0, 0x24(r1) +/* 801B89F8 001B5958 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801B89FC 001B595C 7C 7F 1B 78 */ mr r31, r3 +/* 801B8A00 001B5960 38 61 00 08 */ addi r3, r1, 8 +/* 801B8A04 001B5964 80 1F 00 7C */ lwz r0, 0x7c(r31) +/* 801B8A08 001B5968 90 01 00 08 */ stw r0, 8(r1) +/* 801B8A0C 001B596C 48 13 13 3D */ bl SfxStop__11CSfxManagerFRC10CSfxHandle +/* 801B8A10 001B5970 38 00 00 00 */ li r0, 0 +/* 801B8A14 001B5974 90 1F 00 7C */ stw r0, 0x7c(r31) +/* 801B8A18 001B5978 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801B8A1C 001B597C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801B8A20 001B5980 7C 08 03 A6 */ mtlr r0 +/* 801B8A24 001B5984 38 21 00 20 */ addi r1, r1, 0x20 +/* 801B8A28 001B5988 4E 80 00 20 */ blr + +.global AcceptScriptMsg__10CAuxWeaponF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__10CAuxWeaponF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 801B8A2C 001B598C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B8A30 001B5990 7C 08 02 A6 */ mflr r0 +/* 801B8A34 001B5994 2C 04 00 22 */ cmpwi r4, 0x22 +/* 801B8A38 001B5998 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B8A3C 001B599C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801B8A40 001B59A0 7C DF 33 78 */ mr r31, r6 +/* 801B8A44 001B59A4 93 C1 00 08 */ stw r30, 8(r1) +/* 801B8A48 001B59A8 7C 7E 1B 78 */ mr r30, r3 +/* 801B8A4C 001B59AC 41 82 00 0C */ beq lbl_801B8A58 +/* 801B8A50 001B59B0 40 80 00 1C */ bge lbl_801B8A6C +/* 801B8A54 001B59B4 48 00 00 18 */ b lbl_801B8A6C +lbl_801B8A58: +/* 801B8A58 001B59B8 7F E4 FB 78 */ mr r4, r31 +/* 801B8A5C 001B59BC 48 00 00 B9 */ bl DeleteFlameThrower__10CAuxWeaponFR13CStateManager +/* 801B8A60 001B59C0 7F C3 F3 78 */ mr r3, r30 +/* 801B8A64 001B59C4 7F E4 FB 78 */ mr r4, r31 +/* 801B8A68 001B59C8 48 00 00 1D */ bl DeleteWaveBusterBeam__10CAuxWeaponFR13CStateManager +lbl_801B8A6C: +/* 801B8A6C 001B59CC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B8A70 001B59D0 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801B8A74 001B59D4 83 C1 00 08 */ lwz r30, 8(r1) +/* 801B8A78 001B59D8 7C 08 03 A6 */ mtlr r0 +/* 801B8A7C 001B59DC 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B8A80 001B59E0 4E 80 00 20 */ blr + +.global DeleteWaveBusterBeam__10CAuxWeaponFR13CStateManager +DeleteWaveBusterBeam__10CAuxWeaponFR13CStateManager: +/* 801B8A84 001B59E4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801B8A88 001B59E8 7C 08 02 A6 */ mflr r0 +/* 801B8A8C 001B59EC 90 01 00 24 */ stw r0, 0x24(r1) +/* 801B8A90 001B59F0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801B8A94 001B59F4 7C 9F 23 78 */ mr r31, r4 +/* 801B8A98 001B59F8 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801B8A9C 001B59FC 7C 7E 1B 78 */ mr r30, r3 +/* 801B8AA0 001B5A00 4B FF FF 4D */ bl FreeComboVoiceId__10CAuxWeaponFv +/* 801B8AA4 001B5A04 A0 7E 00 70 */ lhz r3, 0x70(r30) +/* 801B8AA8 001B5A08 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801B8AAC 001B5A0C 7C 03 00 40 */ cmplw r3, r0 +/* 801B8AB0 001B5A10 41 82 00 4C */ beq lbl_801B8AFC +/* 801B8AB4 001B5A14 A0 1E 00 70 */ lhz r0, 0x70(r30) +/* 801B8AB8 001B5A18 7F E3 FB 78 */ mr r3, r31 +/* 801B8ABC 001B5A1C 38 81 00 08 */ addi r4, r1, 8 +/* 801B8AC0 001B5A20 B0 01 00 08 */ sth r0, 8(r1) +/* 801B8AC4 001B5A24 4B E9 37 A9 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +/* 801B8AC8 001B5A28 A0 6D A3 8C */ lhz r3, lbl_805A8F4C@sda21(r13) +/* 801B8ACC 001B5A2C 38 00 FF FF */ li r0, -1 +/* 801B8AD0 001B5A30 B0 7E 00 70 */ sth r3, 0x70(r30) +/* 801B8AD4 001B5A34 90 1E 00 74 */ stw r0, 0x74(r30) +/* 801B8AD8 001B5A38 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 801B8ADC 001B5A3C 80 83 00 00 */ lwz r4, 0(r3) +/* 801B8AE0 001B5A40 88 04 00 00 */ lbz r0, 0(r4) +/* 801B8AE4 001B5A44 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801B8AE8 001B5A48 41 82 00 14 */ beq lbl_801B8AFC +/* 801B8AEC 001B5A4C 88 04 00 00 */ lbz r0, 0(r4) +/* 801B8AF0 001B5A50 38 60 00 00 */ li r3, 0 +/* 801B8AF4 001B5A54 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801B8AF8 001B5A58 98 04 00 00 */ stb r0, 0(r4) +lbl_801B8AFC: +/* 801B8AFC 001B5A5C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801B8B00 001B5A60 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801B8B04 001B5A64 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801B8B08 001B5A68 7C 08 03 A6 */ mtlr r0 +/* 801B8B0C 001B5A6C 38 21 00 20 */ addi r1, r1, 0x20 +/* 801B8B10 001B5A70 4E 80 00 20 */ blr + +.global DeleteFlameThrower__10CAuxWeaponFR13CStateManager +DeleteFlameThrower__10CAuxWeaponFR13CStateManager: +/* 801B8B14 001B5A74 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801B8B18 001B5A78 7C 08 02 A6 */ mflr r0 +/* 801B8B1C 001B5A7C 90 01 00 24 */ stw r0, 0x24(r1) +/* 801B8B20 001B5A80 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801B8B24 001B5A84 7C 9F 23 78 */ mr r31, r4 +/* 801B8B28 001B5A88 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801B8B2C 001B5A8C 7C 7E 1B 78 */ mr r30, r3 +/* 801B8B30 001B5A90 4B FF FE BD */ bl FreeComboVoiceId__10CAuxWeaponFv +/* 801B8B34 001B5A94 A0 7E 00 6E */ lhz r3, 0x6e(r30) +/* 801B8B38 001B5A98 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801B8B3C 001B5A9C 7C 03 00 40 */ cmplw r3, r0 +/* 801B8B40 001B5AA0 41 82 00 4C */ beq lbl_801B8B8C +/* 801B8B44 001B5AA4 A0 1E 00 6E */ lhz r0, 0x6e(r30) +/* 801B8B48 001B5AA8 7F E3 FB 78 */ mr r3, r31 +/* 801B8B4C 001B5AAC 38 81 00 08 */ addi r4, r1, 8 +/* 801B8B50 001B5AB0 B0 01 00 08 */ sth r0, 8(r1) +/* 801B8B54 001B5AB4 4B E9 37 19 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +/* 801B8B58 001B5AB8 A0 6D A3 8C */ lhz r3, lbl_805A8F4C@sda21(r13) +/* 801B8B5C 001B5ABC 38 00 FF FF */ li r0, -1 +/* 801B8B60 001B5AC0 B0 7E 00 6E */ sth r3, 0x6e(r30) +/* 801B8B64 001B5AC4 90 1E 00 74 */ stw r0, 0x74(r30) +/* 801B8B68 001B5AC8 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 801B8B6C 001B5ACC 80 83 00 00 */ lwz r4, 0(r3) +/* 801B8B70 001B5AD0 88 04 00 00 */ lbz r0, 0(r4) +/* 801B8B74 001B5AD4 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801B8B78 001B5AD8 41 82 00 14 */ beq lbl_801B8B8C +/* 801B8B7C 001B5ADC 88 04 00 00 */ lbz r0, 0(r4) +/* 801B8B80 001B5AE0 38 60 00 00 */ li r3, 0 +/* 801B8B84 001B5AE4 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801B8B88 001B5AE8 98 04 00 00 */ stb r0, 0(r4) +lbl_801B8B8C: +/* 801B8B8C 001B5AEC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801B8B90 001B5AF0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801B8B94 001B5AF4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801B8B98 001B5AF8 7C 08 03 A6 */ mtlr r0 +/* 801B8B9C 001B5AFC 38 21 00 20 */ addi r1, r1, 0x20 +/* 801B8BA0 001B5B00 4E 80 00 20 */ blr + +.global CreateWaveBusterBeam__10CAuxWeaponFUi9TUniqueIdRC12CTransform4fR13CStateManager +CreateWaveBusterBeam__10CAuxWeaponFUi9TUniqueIdRC12CTransform4fR13CStateManager: +/* 801B8BA4 001B5B04 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 801B8BA8 001B5B08 7C 08 02 A6 */ mflr r0 +/* 801B8BAC 001B5B0C 90 01 00 74 */ stw r0, 0x74(r1) +/* 801B8BB0 001B5B10 BF 41 00 58 */ stmw r26, 0x58(r1) +/* 801B8BB4 001B5B14 7C FF 3B 78 */ mr r31, r7 +/* 801B8BB8 001B5B18 7C 9D 23 78 */ mr r29, r4 +/* 801B8BBC 001B5B1C 7C 7C 1B 78 */ mr r28, r3 +/* 801B8BC0 001B5B20 7C BA 2B 78 */ mr r26, r5 +/* 801B8BC4 001B5B24 7C DE 33 78 */ mr r30, r6 +/* 801B8BC8 001B5B28 7F E4 FB 78 */ mr r4, r31 +/* 801B8BCC 001B5B2C 4B FF FE B9 */ bl DeleteWaveBusterBeam__10CAuxWeaponFR13CStateManager +/* 801B8BD0 001B5B30 A0 7C 00 70 */ lhz r3, 0x70(r28) +/* 801B8BD4 001B5B34 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801B8BD8 001B5B38 7C 03 00 40 */ cmplw r3, r0 +/* 801B8BDC 001B5B3C 40 82 01 8C */ bne lbl_801B8D68 +/* 801B8BE0 001B5B40 7F E4 FB 78 */ mr r4, r31 +/* 801B8BE4 001B5B44 38 61 00 24 */ addi r3, r1, 0x24 +/* 801B8BE8 001B5B48 4B E9 44 F5 */ bl AllocateUniqueId__13CStateManagerFv +/* 801B8BEC 001B5B4C A0 01 00 24 */ lhz r0, 0x24(r1) +/* 801B8BF0 001B5B50 3C 60 80 3D */ lis r3, lbl_803D1678@ha +/* 801B8BF4 001B5B54 38 83 16 78 */ addi r4, r3, lbl_803D1678@l +/* 801B8BF8 001B5B58 38 60 03 D8 */ li r3, 0x3d8 +/* 801B8BFC 001B5B5C B0 1C 00 70 */ sth r0, 0x70(r28) +/* 801B8C00 001B5B60 38 84 00 2E */ addi r4, r4, 0x2e +/* 801B8C04 001B5B64 38 A0 00 00 */ li r5, 0 +/* 801B8C08 001B5B68 48 15 CC 65 */ bl __nw__FUlPCcPCc +/* 801B8C0C 001B5B6C 7C 7B 1B 79 */ or. r27, r3, r3 +/* 801B8C10 001B5B70 41 82 00 74 */ beq lbl_801B8C84 +/* 801B8C14 001B5B74 A0 1A 00 00 */ lhz r0, 0(r26) +/* 801B8C18 001B5B78 7F E5 FB 78 */ mr r5, r31 +/* 801B8C1C 001B5B7C 80 8D A1 34 */ lwz r4, gpTweakPlayerGun@sda21(r13) +/* 801B8C20 001B5B80 38 61 00 38 */ addi r3, r1, 0x38 +/* 801B8C24 001B5B84 B0 01 00 20 */ sth r0, 0x20(r1) +/* 801B8C28 001B5B88 80 0D A3 90 */ lwz r0, lbl_805A8F50@sda21(r13) +/* 801B8C2C 001B5B8C 38 84 02 2C */ addi r4, r4, 0x22c +/* 801B8C30 001B5B90 A0 DC 00 6C */ lhz r6, 0x6c(r28) +/* 801B8C34 001B5B94 B0 C1 00 1C */ sth r6, 0x1c(r1) +/* 801B8C38 001B5B98 90 01 00 2C */ stw r0, 0x2c(r1) +/* 801B8C3C 001B5B9C A0 1C 00 70 */ lhz r0, 0x70(r28) +/* 801B8C40 001B5BA0 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801B8C44 001B5BA4 48 0D 1D E1 */ bl GetShotDamageInfo__10CGunWeaponCFRC10SShotParamR13CStateManager +/* 801B8C48 001B5BA8 38 61 00 1C */ addi r3, r1, 0x1c +/* 801B8C4C 001B5BAC 38 01 00 20 */ addi r0, r1, 0x20 +/* 801B8C50 001B5BB0 90 61 00 08 */ stw r3, 8(r1) +/* 801B8C54 001B5BB4 7F 63 DB 78 */ mr r3, r27 +/* 801B8C58 001B5BB8 7F C6 F3 78 */ mr r6, r30 +/* 801B8C5C 001B5BBC 38 9C 00 44 */ addi r4, r28, 0x44 +/* 801B8C60 001B5BC0 90 01 00 0C */ stw r0, 0xc(r1) +/* 801B8C64 001B5BC4 39 01 00 38 */ addi r8, r1, 0x38 +/* 801B8C68 001B5BC8 39 21 00 18 */ addi r9, r1, 0x18 +/* 801B8C6C 001B5BCC 39 41 00 2C */ addi r10, r1, 0x2c +/* 801B8C70 001B5BD0 93 A1 00 10 */ stw r29, 0x10(r1) +/* 801B8C74 001B5BD4 38 A0 00 02 */ li r5, 2 +/* 801B8C78 001B5BD8 38 E0 00 20 */ li r7, 0x20 +/* 801B8C7C 001B5BDC 48 00 75 01 */ bl "__ct__11CWaveBusterFRC28TToken<18CWeaponDescription>11EWeaponTypeRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId7TAreaId9TUniqueId9TUniqueIdUi" +/* 801B8C80 001B5BE0 7C 7B 1B 78 */ mr r27, r3 +lbl_801B8C84: +/* 801B8C84 001B5BE4 7F E3 FB 78 */ mr r3, r31 +/* 801B8C88 001B5BE8 7F 64 DB 78 */ mr r4, r27 +/* 801B8C8C 001B5BEC 4B E9 3E 89 */ bl AddObject__13CStateManagerFR7CEntity +/* 801B8C90 001B5BF0 3C 60 80 3D */ lis r3, lbl_803D1678@ha +/* 801B8C94 001B5BF4 3B 40 00 00 */ li r26, 0 +/* 801B8C98 001B5BF8 38 83 16 78 */ addi r4, r3, lbl_803D1678@l +/* 801B8C9C 001B5BFC 38 60 03 40 */ li r3, 0x340 +/* 801B8CA0 001B5C00 38 84 00 2E */ addi r4, r4, 0x2e +/* 801B8CA4 001B5C04 38 A0 00 00 */ li r5, 0 +/* 801B8CA8 001B5C08 48 15 CB C5 */ bl __nw__FUlPCcPCc +/* 801B8CAC 001B5C0C 7C 7D 1B 79 */ or. r29, r3, r3 +/* 801B8CB0 001B5C10 41 82 00 2C */ beq lbl_801B8CDC +/* 801B8CB4 001B5C14 38 61 00 30 */ addi r3, r1, 0x30 +/* 801B8CB8 001B5C18 38 9C 00 18 */ addi r4, r28, 0x18 +/* 801B8CBC 001B5C1C 48 18 81 ED */ bl __ct__6CTokenFRC6CToken +/* 801B8CC0 001B5C20 7F A3 EB 78 */ mr r3, r29 +/* 801B8CC4 001B5C24 38 81 00 30 */ addi r4, r1, 0x30 +/* 801B8CC8 001B5C28 3B 40 00 01 */ li r26, 1 +/* 801B8CCC 001B5C2C 38 A0 00 00 */ li r5, 0 +/* 801B8CD0 001B5C30 38 C0 00 01 */ li r6, 1 +/* 801B8CD4 001B5C34 48 16 67 0D */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 801B8CD8 001B5C38 7C 7D 1B 78 */ mr r29, r3 +lbl_801B8CDC: +/* 801B8CDC 001B5C3C 80 7C 00 24 */ lwz r3, 0x24(r28) +/* 801B8CE0 001B5C40 28 03 00 00 */ cmplwi r3, 0 +/* 801B8CE4 001B5C44 41 82 00 18 */ beq lbl_801B8CFC +/* 801B8CE8 001B5C48 81 83 00 00 */ lwz r12, 0(r3) +/* 801B8CEC 001B5C4C 38 80 00 01 */ li r4, 1 +/* 801B8CF0 001B5C50 81 8C 00 08 */ lwz r12, 8(r12) +/* 801B8CF4 001B5C54 7D 89 03 A6 */ mtctr r12 +/* 801B8CF8 001B5C58 4E 80 04 21 */ bctrl +lbl_801B8CFC: +/* 801B8CFC 001B5C5C 7F 40 07 75 */ extsb. r0, r26 +/* 801B8D00 001B5C60 93 BC 00 24 */ stw r29, 0x24(r28) +/* 801B8D04 001B5C64 41 82 00 10 */ beq lbl_801B8D14 +/* 801B8D08 001B5C68 38 61 00 30 */ addi r3, r1, 0x30 +/* 801B8D0C 001B5C6C 38 80 00 00 */ li r4, 0 +/* 801B8D10 001B5C70 48 18 81 31 */ bl __dt__6CTokenFv +lbl_801B8D14: +/* 801B8D14 001B5C74 38 61 00 28 */ addi r3, r1, 0x28 +/* 801B8D18 001B5C78 38 80 07 37 */ li r4, 0x737 +/* 801B8D1C 001B5C7C 38 A0 00 00 */ li r5, 0 +/* 801B8D20 001B5C80 38 C0 00 01 */ li r6, 1 +/* 801B8D24 001B5C84 38 E0 00 4A */ li r7, 0x4a +/* 801B8D28 001B5C88 48 0D 1D D1 */ bl play_sfx__12NWeaponTypesFUsbbs +/* 801B8D2C 001B5C8C 80 01 00 28 */ lwz r0, 0x28(r1) +/* 801B8D30 001B5C90 3C 60 80 57 */ lis r3, lbl_805719E8@ha +/* 801B8D34 001B5C94 38 83 19 E8 */ addi r4, r3, lbl_805719E8@l +/* 801B8D38 001B5C98 38 A0 00 00 */ li r5, 0 +/* 801B8D3C 001B5C9C 90 1C 00 7C */ stw r0, 0x7c(r28) +/* 801B8D40 001B5CA0 80 7F 08 70 */ lwz r3, 0x870(r31) +/* 801B8D44 001B5CA4 4B E5 1C DD */ bl AddCameraShaker__14CCameraManagerFRC16CCameraShakeDatab +/* 801B8D48 001B5CA8 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 801B8D4C 001B5CAC 38 A0 00 01 */ li r5, 1 +/* 801B8D50 001B5CB0 38 00 00 02 */ li r0, 2 +/* 801B8D54 001B5CB4 80 83 00 00 */ lwz r4, 0(r3) +/* 801B8D58 001B5CB8 88 64 00 00 */ lbz r3, 0(r4) +/* 801B8D5C 001B5CBC 50 A3 36 72 */ rlwimi r3, r5, 6, 0x19, 0x19 +/* 801B8D60 001B5CC0 98 64 00 00 */ stb r3, 0(r4) +/* 801B8D64 001B5CC4 90 1C 00 74 */ stw r0, 0x74(r28) +lbl_801B8D68: +/* 801B8D68 001B5CC8 BB 41 00 58 */ lmw r26, 0x58(r1) +/* 801B8D6C 001B5CCC 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801B8D70 001B5CD0 7C 08 03 A6 */ mtlr r0 +/* 801B8D74 001B5CD4 38 21 00 70 */ addi r1, r1, 0x70 +/* 801B8D78 001B5CD8 4E 80 00 20 */ blr + +.global CreateFlameThrower__10CAuxWeaponFRC12CTransform4fR13CStateManagerf +CreateFlameThrower__10CAuxWeaponFRC12CTransform4fR13CStateManagerf: +/* 801B8D7C 001B5CDC 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 801B8D80 001B5CE0 7C 08 02 A6 */ mflr r0 +/* 801B8D84 001B5CE4 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 801B8D88 001B5CE8 DB E1 00 B8 */ stfd f31, 0xb8(r1) +/* 801B8D8C 001B5CEC FF E0 08 90 */ fmr f31, f1 +/* 801B8D90 001B5CF0 BE E1 00 94 */ stmw r23, 0x94(r1) +/* 801B8D94 001B5CF4 7C BC 2B 78 */ mr r28, r5 +/* 801B8D98 001B5CF8 7C 9B 23 78 */ mr r27, r4 +/* 801B8D9C 001B5CFC 7C 7A 1B 78 */ mr r26, r3 +/* 801B8DA0 001B5D00 7F 84 E3 78 */ mr r4, r28 +/* 801B8DA4 001B5D04 4B FF FD 71 */ bl DeleteFlameThrower__10CAuxWeaponFR13CStateManager +/* 801B8DA8 001B5D08 A0 7A 00 6E */ lhz r3, 0x6e(r26) +/* 801B8DAC 001B5D0C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801B8DB0 001B5D10 7C 03 00 40 */ cmplw r3, r0 +/* 801B8DB4 001B5D14 40 82 02 A4 */ bne lbl_801B9058 +/* 801B8DB8 001B5D18 3C 60 80 3D */ lis r3, lbl_803D1678@ha +/* 801B8DBC 001B5D1C 38 63 16 78 */ addi r3, r3, lbl_803D1678@l +/* 801B8DC0 001B5D20 38 63 00 35 */ addi r3, r3, 0x35 +/* 801B8DC4 001B5D24 48 0D 26 85 */ bl get_asset_id_from_name__12NWeaponTypesFPCc +/* 801B8DC8 001B5D28 3C 80 80 3D */ lis r4, lbl_803D1678@ha +/* 801B8DCC 001B5D2C 7C 7D 1B 78 */ mr r29, r3 +/* 801B8DD0 001B5D30 38 64 16 78 */ addi r3, r4, lbl_803D1678@l +/* 801B8DD4 001B5D34 38 63 00 48 */ addi r3, r3, 0x48 +/* 801B8DD8 001B5D38 48 0D 26 71 */ bl get_asset_id_from_name__12NWeaponTypesFPCc +/* 801B8DDC 001B5D3C 3C 80 80 3D */ lis r4, lbl_803D1678@ha +/* 801B8DE0 001B5D40 7C 7E 1B 78 */ mr r30, r3 +/* 801B8DE4 001B5D44 38 64 16 78 */ addi r3, r4, lbl_803D1678@l +/* 801B8DE8 001B5D48 38 63 00 59 */ addi r3, r3, 0x59 +/* 801B8DEC 001B5D4C 48 0D 26 5D */ bl get_asset_id_from_name__12NWeaponTypesFPCc +/* 801B8DF0 001B5D50 3C 80 80 3D */ lis r4, lbl_803D1678@ha +/* 801B8DF4 001B5D54 7C 7F 1B 78 */ mr r31, r3 +/* 801B8DF8 001B5D58 38 64 16 78 */ addi r3, r4, lbl_803D1678@l +/* 801B8DFC 001B5D5C 38 63 00 6B */ addi r3, r3, 0x6b +/* 801B8E00 001B5D60 48 0D 26 49 */ bl get_asset_id_from_name__12NWeaponTypesFPCc +/* 801B8E04 001B5D64 3C 80 80 3D */ lis r4, lbl_803D1678@ha +/* 801B8E08 001B5D68 7C 77 1B 78 */ mr r23, r3 +/* 801B8E0C 001B5D6C 38 64 16 78 */ addi r3, r4, lbl_803D1678@l +/* 801B8E10 001B5D70 38 63 00 79 */ addi r3, r3, 0x79 +/* 801B8E14 001B5D74 48 0D 26 35 */ bl get_asset_id_from_name__12NWeaponTypesFPCc +/* 801B8E18 001B5D78 3C 80 80 3D */ lis r4, lbl_803D1678@ha +/* 801B8E1C 001B5D7C 7C 78 1B 78 */ mr r24, r3 +/* 801B8E20 001B5D80 38 64 16 78 */ addi r3, r4, lbl_803D1678@l +/* 801B8E24 001B5D84 38 63 00 89 */ addi r3, r3, 0x89 +/* 801B8E28 001B5D88 48 0D 26 21 */ bl get_asset_id_from_name__12NWeaponTypesFPCc +/* 801B8E2C 001B5D8C 3C 80 80 3D */ lis r4, lbl_803D1678@ha +/* 801B8E30 001B5D90 7C 79 1B 78 */ mr r25, r3 +/* 801B8E34 001B5D94 38 64 16 78 */ addi r3, r4, lbl_803D1678@l +/* 801B8E38 001B5D98 38 63 00 96 */ addi r3, r3, 0x96 +/* 801B8E3C 001B5D9C 48 0D 26 0D */ bl get_asset_id_from_name__12NWeaponTypesFPCc +/* 801B8E40 001B5DA0 38 A0 00 08 */ li r5, 8 +/* 801B8E44 001B5DA4 38 00 FF FF */ li r0, -1 +/* 801B8E48 001B5DA8 90 61 00 64 */ stw r3, 0x64(r1) +/* 801B8E4C 001B5DAC 7F 84 E3 78 */ mr r4, r28 +/* 801B8E50 001B5DB0 38 61 00 20 */ addi r3, r1, 0x20 +/* 801B8E54 001B5DB4 90 A1 00 60 */ stw r5, 0x60(r1) +/* 801B8E58 001B5DB8 93 21 00 68 */ stw r25, 0x68(r1) +/* 801B8E5C 001B5DBC 93 01 00 6C */ stw r24, 0x6c(r1) +/* 801B8E60 001B5DC0 92 E1 00 70 */ stw r23, 0x70(r1) +/* 801B8E64 001B5DC4 93 E1 00 74 */ stw r31, 0x74(r1) +/* 801B8E68 001B5DC8 93 C1 00 78 */ stw r30, 0x78(r1) +/* 801B8E6C 001B5DCC 93 A1 00 7C */ stw r29, 0x7c(r1) +/* 801B8E70 001B5DD0 90 01 00 80 */ stw r0, 0x80(r1) +/* 801B8E74 001B5DD4 4B E9 42 69 */ bl AllocateUniqueId__13CStateManagerFv +/* 801B8E78 001B5DD8 A0 01 00 20 */ lhz r0, 0x20(r1) +/* 801B8E7C 001B5DDC 3C 60 80 3D */ lis r3, lbl_803D1678@ha +/* 801B8E80 001B5DE0 38 63 16 78 */ addi r3, r3, lbl_803D1678@l +/* 801B8E84 001B5DE4 3B 00 00 00 */ li r24, 0 +/* 801B8E88 001B5DE8 B0 1A 00 6E */ sth r0, 0x6e(r26) +/* 801B8E8C 001B5DEC 38 83 00 2E */ addi r4, r3, 0x2e +/* 801B8E90 001B5DF0 38 60 03 C8 */ li r3, 0x3c8 +/* 801B8E94 001B5DF4 38 A0 00 00 */ li r5, 0 +/* 801B8E98 001B5DF8 48 15 C9 D5 */ bl __nw__FUlPCcPCc +/* 801B8E9C 001B5DFC 7C 77 1B 79 */ or. r23, r3, r3 +/* 801B8EA0 001B5E00 41 82 00 94 */ beq lbl_801B8F34 +/* 801B8EA4 001B5E04 A0 BA 00 6C */ lhz r5, 0x6c(r26) +/* 801B8EA8 001B5E08 3C 60 80 3D */ lis r3, lbl_803D1678@ha +/* 801B8EAC 001B5E0C 80 0D A3 90 */ lwz r0, lbl_805A8F50@sda21(r13) +/* 801B8EB0 001B5E10 38 83 16 78 */ addi r4, r3, lbl_803D1678@l +/* 801B8EB4 001B5E14 B0 A1 00 1C */ sth r5, 0x1c(r1) +/* 801B8EB8 001B5E18 38 61 00 34 */ addi r3, r1, 0x34 +/* 801B8EBC 001B5E1C 80 AD A1 34 */ lwz r5, gpTweakPlayerGun@sda21(r13) +/* 801B8EC0 001B5E20 38 84 00 A2 */ addi r4, r4, 0xa2 +/* 801B8EC4 001B5E24 90 01 00 28 */ stw r0, 0x28(r1) +/* 801B8EC8 001B5E28 3B 05 02 48 */ addi r24, r5, 0x248 +/* 801B8ECC 001B5E2C A0 1A 00 6E */ lhz r0, 0x6e(r26) +/* 801B8ED0 001B5E30 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801B8ED4 001B5E34 4B E4 BD E5 */ bl string_l__4rstlFPCc +/* 801B8ED8 001B5E38 7F 04 C3 78 */ mr r4, r24 +/* 801B8EDC 001B5E3C 7F 85 E3 78 */ mr r5, r28 +/* 801B8EE0 001B5E40 38 61 00 44 */ addi r3, r1, 0x44 +/* 801B8EE4 001B5E44 3B 00 00 01 */ li r24, 1 +/* 801B8EE8 001B5E48 48 0D 1B 3D */ bl GetShotDamageInfo__10CGunWeaponCFRC10SShotParamR13CStateManager +/* 801B8EEC 001B5E4C 38 01 00 18 */ addi r0, r1, 0x18 +/* 801B8EF0 001B5E50 38 81 00 28 */ addi r4, r1, 0x28 +/* 801B8EF4 001B5E54 90 01 00 08 */ stw r0, 8(r1) +/* 801B8EF8 001B5E58 38 C1 00 1C */ addi r6, r1, 0x1c +/* 801B8EFC 001B5E5C 38 00 00 00 */ li r0, 0 +/* 801B8F00 001B5E60 7E E3 BB 78 */ mr r3, r23 +/* 801B8F04 001B5E64 90 81 00 0C */ stw r4, 0xc(r1) +/* 801B8F08 001B5E68 7F 68 DB 78 */ mr r8, r27 +/* 801B8F0C 001B5E6C 38 9A 00 50 */ addi r4, r26, 0x50 +/* 801B8F10 001B5E70 38 A1 00 34 */ addi r5, r1, 0x34 +/* 801B8F14 001B5E74 90 C1 00 10 */ stw r6, 0x10(r1) +/* 801B8F18 001B5E78 38 E1 00 60 */ addi r7, r1, 0x60 +/* 801B8F1C 001B5E7C 39 41 00 44 */ addi r10, r1, 0x44 +/* 801B8F20 001B5E80 38 C0 00 03 */ li r6, 3 +/* 801B8F24 001B5E84 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B8F28 001B5E88 39 20 00 20 */ li r9, 0x20 +/* 801B8F2C 001B5E8C 48 0A B4 F9 */ bl "__ct__16CNewFlameThrowerbRC28TToken<18CWeaponDescription>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>11EWeaponTypeRCQ24rstl21reserved_vectorRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId7TAreaId9TUniqueIdUi" +/* 801B8F30 001B5E90 7C 77 1B 78 */ mr r23, r3 +lbl_801B8F34: +/* 801B8F34 001B5E94 7F 00 07 75 */ extsb. r0, r24 +/* 801B8F38 001B5E98 41 82 00 0C */ beq lbl_801B8F44 +/* 801B8F3C 001B5E9C 38 61 00 34 */ addi r3, r1, 0x34 +/* 801B8F40 001B5EA0 48 18 4B A1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801B8F44: +/* 801B8F44 001B5EA4 7F 83 E3 78 */ mr r3, r28 +/* 801B8F48 001B5EA8 7E E4 BB 78 */ mr r4, r23 +/* 801B8F4C 001B5EAC 4B E9 3B C9 */ bl AddObject__13CStateManagerFR7CEntity +/* 801B8F50 001B5EB0 7E E3 BB 78 */ mr r3, r23 +/* 801B8F54 001B5EB4 FC 20 F8 90 */ fmr f1, f31 +/* 801B8F58 001B5EB8 81 97 00 00 */ lwz r12, 0(r23) +/* 801B8F5C 001B5EBC 7F 84 E3 78 */ mr r4, r28 +/* 801B8F60 001B5EC0 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 801B8F64 001B5EC4 7D 89 03 A6 */ mtctr r12 +/* 801B8F68 001B5EC8 4E 80 04 21 */ bctrl +/* 801B8F6C 001B5ECC 7E E3 BB 78 */ mr r3, r23 +/* 801B8F70 001B5ED0 7F 64 DB 78 */ mr r4, r27 +/* 801B8F74 001B5ED4 7F 85 E3 78 */ mr r5, r28 +/* 801B8F78 001B5ED8 38 C0 00 00 */ li r6, 0 +/* 801B8F7C 001B5EDC 48 0A AA 45 */ bl StartFiring__16CNewFlameThrowerFRC12CTransform4fRC13CStateManager +/* 801B8F80 001B5EE0 3C 60 80 3D */ lis r3, lbl_803D1678@ha +/* 801B8F84 001B5EE4 3B 00 00 00 */ li r24, 0 +/* 801B8F88 001B5EE8 38 83 16 78 */ addi r4, r3, lbl_803D1678@l +/* 801B8F8C 001B5EEC 38 60 03 40 */ li r3, 0x340 +/* 801B8F90 001B5EF0 38 84 00 2E */ addi r4, r4, 0x2e +/* 801B8F94 001B5EF4 38 A0 00 00 */ li r5, 0 +/* 801B8F98 001B5EF8 48 15 C8 D5 */ bl __nw__FUlPCcPCc +/* 801B8F9C 001B5EFC 7C 77 1B 79 */ or. r23, r3, r3 +/* 801B8FA0 001B5F00 41 82 00 2C */ beq lbl_801B8FCC +/* 801B8FA4 001B5F04 38 61 00 2C */ addi r3, r1, 0x2c +/* 801B8FA8 001B5F08 38 9A 00 0C */ addi r4, r26, 0xc +/* 801B8FAC 001B5F0C 48 18 7E FD */ bl __ct__6CTokenFRC6CToken +/* 801B8FB0 001B5F10 7E E3 BB 78 */ mr r3, r23 +/* 801B8FB4 001B5F14 38 81 00 2C */ addi r4, r1, 0x2c +/* 801B8FB8 001B5F18 3B 00 00 01 */ li r24, 1 +/* 801B8FBC 001B5F1C 38 A0 00 00 */ li r5, 0 +/* 801B8FC0 001B5F20 38 C0 00 01 */ li r6, 1 +/* 801B8FC4 001B5F24 48 16 64 1D */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 801B8FC8 001B5F28 7C 77 1B 78 */ mr r23, r3 +lbl_801B8FCC: +/* 801B8FCC 001B5F2C 80 7A 00 24 */ lwz r3, 0x24(r26) +/* 801B8FD0 001B5F30 28 03 00 00 */ cmplwi r3, 0 +/* 801B8FD4 001B5F34 41 82 00 18 */ beq lbl_801B8FEC +/* 801B8FD8 001B5F38 81 83 00 00 */ lwz r12, 0(r3) +/* 801B8FDC 001B5F3C 38 80 00 01 */ li r4, 1 +/* 801B8FE0 001B5F40 81 8C 00 08 */ lwz r12, 8(r12) +/* 801B8FE4 001B5F44 7D 89 03 A6 */ mtctr r12 +/* 801B8FE8 001B5F48 4E 80 04 21 */ bctrl +lbl_801B8FEC: +/* 801B8FEC 001B5F4C 7F 00 07 75 */ extsb. r0, r24 +/* 801B8FF0 001B5F50 92 FA 00 24 */ stw r23, 0x24(r26) +/* 801B8FF4 001B5F54 41 82 00 10 */ beq lbl_801B9004 +/* 801B8FF8 001B5F58 38 61 00 2C */ addi r3, r1, 0x2c +/* 801B8FFC 001B5F5C 38 80 00 00 */ li r4, 0 +/* 801B9000 001B5F60 48 18 7E 41 */ bl __dt__6CTokenFv +lbl_801B9004: +/* 801B9004 001B5F64 38 61 00 24 */ addi r3, r1, 0x24 +/* 801B9008 001B5F68 38 80 07 32 */ li r4, 0x732 +/* 801B900C 001B5F6C 38 A0 00 00 */ li r5, 0 +/* 801B9010 001B5F70 38 C0 00 01 */ li r6, 1 +/* 801B9014 001B5F74 38 E0 00 4A */ li r7, 0x4a +/* 801B9018 001B5F78 48 0D 1A E1 */ bl play_sfx__12NWeaponTypesFUsbbs +/* 801B901C 001B5F7C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801B9020 001B5F80 3C 60 80 57 */ lis r3, lbl_80571B90@ha +/* 801B9024 001B5F84 38 83 1B 90 */ addi r4, r3, lbl_80571B90@l +/* 801B9028 001B5F88 38 A0 00 00 */ li r5, 0 +/* 801B902C 001B5F8C 90 1A 00 7C */ stw r0, 0x7c(r26) +/* 801B9030 001B5F90 80 7C 08 70 */ lwz r3, 0x870(r28) +/* 801B9034 001B5F94 4B E5 19 ED */ bl AddCameraShaker__14CCameraManagerFRC16CCameraShakeDatab +/* 801B9038 001B5F98 80 7C 08 B8 */ lwz r3, 0x8b8(r28) +/* 801B903C 001B5F9C 38 A0 00 01 */ li r5, 1 +/* 801B9040 001B5FA0 38 00 00 03 */ li r0, 3 +/* 801B9044 001B5FA4 80 83 00 00 */ lwz r4, 0(r3) +/* 801B9048 001B5FA8 88 64 00 00 */ lbz r3, 0(r4) +/* 801B904C 001B5FAC 50 A3 36 72 */ rlwimi r3, r5, 6, 0x19, 0x19 +/* 801B9050 001B5FB0 98 64 00 00 */ stb r3, 0(r4) +/* 801B9054 001B5FB4 90 1A 00 74 */ stw r0, 0x74(r26) +lbl_801B9058: +/* 801B9058 001B5FB8 CB E1 00 B8 */ lfd f31, 0xb8(r1) +/* 801B905C 001B5FBC BA E1 00 94 */ lmw r23, 0x94(r1) +/* 801B9060 001B5FC0 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 801B9064 001B5FC4 7C 08 03 A6 */ mtlr r0 +/* 801B9068 001B5FC8 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 801B906C 001B5FCC 4E 80 00 20 */ blr + +.global LaunchMissile__10CAuxWeaponFbbiUiRC12CTransform4f9TUniqueIdR13CStateManager +LaunchMissile__10CAuxWeaponFbbiUiRC12CTransform4f9TUniqueIdR13CStateManager: +/* 801B9070 001B5FD0 94 21 FE 30 */ stwu r1, -0x1d0(r1) +/* 801B9074 001B5FD4 7C 08 02 A6 */ mflr r0 +/* 801B9078 001B5FD8 90 01 01 D4 */ stw r0, 0x1d4(r1) +/* 801B907C 001B5FDC DB E1 01 C0 */ stfd f31, 0x1c0(r1) +/* 801B9080 001B5FE0 F3 E1 01 C8 */ psq_st f31, 456(r1), 0, qr0 +/* 801B9084 001B5FE4 BD C1 01 78 */ stmw r14, 0x178(r1) +/* 801B9088 001B5FE8 7C 79 1B 78 */ mr r25, r3 +/* 801B908C 001B5FEC FF E0 08 90 */ fmr f31, f1 +/* 801B9090 001B5FF0 1C 66 00 0C */ mulli r3, r6, 0xc +/* 801B9094 001B5FF4 54 A0 06 3F */ clrlwi. r0, r5, 0x18 +/* 801B9098 001B5FF8 7C BB 2B 78 */ mr r27, r5 +/* 801B909C 001B5FFC 7C 9A 23 78 */ mr r26, r4 +/* 801B90A0 001B6000 7F F9 1A 14 */ add r31, r25, r3 +/* 801B90A4 001B6004 7C FC 3B 78 */ mr r28, r7 +/* 801B90A8 001B6008 7D 1D 43 78 */ mr r29, r8 +/* 801B90AC 001B600C 7D 2E 4B 78 */ mr r14, r9 +/* 801B90B0 001B6010 7D 5E 53 78 */ mr r30, r10 +/* 801B90B4 001B6014 3B FF 00 2C */ addi r31, r31, 0x2c +/* 801B90B8 001B6018 41 82 00 18 */ beq lbl_801B90D0 +/* 801B90BC 001B601C 1C 06 00 1C */ mulli r0, r6, 0x1c +/* 801B90C0 001B6020 80 6D A1 34 */ lwz r3, gpTweakPlayerGun@sda21(r13) +/* 801B90C4 001B6024 7E E3 02 14 */ add r23, r3, r0 +/* 801B90C8 001B6028 3A F7 01 F4 */ addi r23, r23, 0x1f4 +/* 801B90CC 001B602C 48 00 00 0C */ b lbl_801B90D8 +lbl_801B90D0: +/* 801B90D0 001B6030 80 6D A1 34 */ lwz r3, gpTweakPlayerGun@sda21(r13) +/* 801B90D4 001B6034 3A E3 01 D4 */ addi r23, r3, 0x1d4 +lbl_801B90D8: +/* 801B90D8 001B6038 57 60 06 3F */ clrlwi. r0, r27, 0x18 +/* 801B90DC 001B603C 41 82 00 18 */ beq lbl_801B90F4 +/* 801B90E0 001B6040 3C 60 80 3D */ lis r3, lbl_803D1658@ha +/* 801B90E4 001B6044 54 C0 08 3C */ slwi r0, r6, 1 +/* 801B90E8 001B6048 38 63 16 58 */ addi r3, r3, lbl_803D1658@l +/* 801B90EC 001B604C 7E C3 02 2E */ lhzx r22, r3, r0 +/* 801B90F0 001B6050 48 00 00 08 */ b lbl_801B90F8 +lbl_801B90F4: +/* 801B90F4 001B6054 3A C0 06 E8 */ li r22, 0x6e8 +lbl_801B90F8: +/* 801B90F8 001B6058 3C 60 80 3D */ lis r3, lbl_803D1678@ha +/* 801B90FC 001B605C 3B 00 00 00 */ li r24, 0 +/* 801B9100 001B6060 38 83 16 78 */ addi r4, r3, lbl_803D1678@l +/* 801B9104 001B6064 38 60 03 D8 */ li r3, 0x3d8 +/* 801B9108 001B6068 38 84 00 2E */ addi r4, r4, 0x2e +/* 801B910C 001B606C 38 A0 00 00 */ li r5, 0 +/* 801B9110 001B6070 48 15 C7 5D */ bl __nw__FUlPCcPCc +/* 801B9114 001B6074 7C 75 1B 79 */ or. r21, r3, r3 +/* 801B9118 001B6078 41 82 00 EC */ beq lbl_801B9204 +/* 801B911C 001B607C C0 02 A9 B0 */ lfs f0, lbl_805AC6D0@sda21(r2) +/* 801B9120 001B6080 38 00 00 00 */ li r0, 0 +/* 801B9124 001B6084 A0 AE 00 00 */ lhz r5, 0(r14) +/* 801B9128 001B6088 7F C4 F3 78 */ mr r4, r30 +/* 801B912C 001B608C 98 01 00 78 */ stb r0, 0x78(r1) +/* 801B9130 001B6090 39 C1 00 6C */ addi r14, r1, 0x6c +/* 801B9134 001B6094 80 0D A3 90 */ lwz r0, lbl_805A8F50@sda21(r13) +/* 801B9138 001B6098 39 E1 00 60 */ addi r15, r1, 0x60 +/* 801B913C 001B609C D0 01 00 60 */ stfs f0, 0x60(r1) +/* 801B9140 001B60A0 3A 81 00 3C */ addi r20, r1, 0x3c +/* 801B9144 001B60A4 3A 61 00 38 */ addi r19, r1, 0x38 +/* 801B9148 001B60A8 3A 41 00 44 */ addi r18, r1, 0x44 +/* 801B914C 001B60AC D0 01 00 64 */ stfs f0, 0x64(r1) +/* 801B9150 001B60B0 38 61 00 30 */ addi r3, r1, 0x30 +/* 801B9154 001B60B4 3B 00 00 01 */ li r24, 1 +/* 801B9158 001B60B8 D0 01 00 68 */ stfs f0, 0x68(r1) +/* 801B915C 001B60BC B0 A1 00 3C */ sth r5, 0x3c(r1) +/* 801B9160 001B60C0 A0 B9 00 6C */ lhz r5, 0x6c(r25) +/* 801B9164 001B60C4 B0 A1 00 38 */ sth r5, 0x38(r1) +/* 801B9168 001B60C8 90 01 00 44 */ stw r0, 0x44(r1) +/* 801B916C 001B60CC 4B E9 3F 71 */ bl AllocateUniqueId__13CStateManagerFv +/* 801B9170 001B60D0 A0 61 00 30 */ lhz r3, 0x30(r1) +/* 801B9174 001B60D4 57 60 06 3F */ clrlwi. r0, r27, 0x18 +/* 801B9178 001B60D8 3A 21 00 34 */ addi r17, r1, 0x34 +/* 801B917C 001B60DC 3A 00 00 06 */ li r16, 6 +/* 801B9180 001B60E0 B0 61 00 34 */ sth r3, 0x34(r1) +/* 801B9184 001B60E4 41 82 00 08 */ beq lbl_801B918C +/* 801B9188 001B60E8 3A 00 00 00 */ li r16, 0 +lbl_801B918C: +/* 801B918C 001B60EC 57 60 06 3F */ clrlwi. r0, r27, 0x18 +/* 801B9190 001B60F0 41 82 00 08 */ beq lbl_801B9198 +/* 801B9194 001B60F4 48 00 00 08 */ b lbl_801B919C +lbl_801B9198: +/* 801B9198 001B60F8 7F 3F CB 78 */ mr r31, r25 +lbl_801B919C: +/* 801B919C 001B60FC 7E E4 BB 78 */ mr r4, r23 +/* 801B91A0 001B6100 7F C5 F3 78 */ mr r5, r30 +/* 801B91A4 001B6104 38 61 00 7C */ addi r3, r1, 0x7c +/* 801B91A8 001B6108 48 0D 18 7D */ bl GetShotDamageInfo__10CGunWeaponCFRC10SShotParamR13CStateManager +/* 801B91AC 001B610C 92 41 00 08 */ stw r18, 8(r1) +/* 801B91B0 001B6110 63 84 08 00 */ ori r4, r28, 0x800 +/* 801B91B4 001B6114 A1 62 C5 FC */ lhz r11, lbl_805AE31C@sda21(r2) +/* 801B91B8 001B6118 38 00 00 00 */ li r0, 0 +/* 801B91BC 001B611C 92 61 00 0C */ stw r19, 0xc(r1) +/* 801B91C0 001B6120 7E A3 AB 78 */ mr r3, r21 +/* 801B91C4 001B6124 7F E5 FB 78 */ mr r5, r31 +/* 801B91C8 001B6128 7E 06 83 78 */ mr r6, r16 +/* 801B91CC 001B612C 92 81 00 10 */ stw r20, 0x10(r1) +/* 801B91D0 001B6130 7F A7 EB 78 */ mr r7, r29 +/* 801B91D4 001B6134 7E 2A 8B 78 */ mr r10, r17 +/* 801B91D8 001B6138 39 21 00 7C */ addi r9, r1, 0x7c +/* 801B91DC 001B613C 90 81 00 14 */ stw r4, 0x14(r1) +/* 801B91E0 001B6140 38 80 00 01 */ li r4, 1 +/* 801B91E4 001B6144 39 00 00 20 */ li r8, 0x20 +/* 801B91E8 001B6148 93 41 00 18 */ stw r26, 0x18(r1) +/* 801B91EC 001B614C 91 E1 00 1C */ stw r15, 0x1c(r1) +/* 801B91F0 001B6150 91 C1 00 20 */ stw r14, 0x20(r1) +/* 801B91F4 001B6154 91 61 00 24 */ stw r11, 0x24(r1) +/* 801B91F8 001B6158 90 01 00 28 */ stw r0, 0x28(r1) +/* 801B91FC 001B615C 48 05 C4 9D */ bl "__ct__17CEnergyProjectileFbRC28TToken<18CWeaponDescription>11EWeaponTypeRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId7TAreaId9TUniqueId9TUniqueIdUibRC9CVector3fRCQ24rstl50optional_object<31TLockedToken<15CGenDescription>>sb" +/* 801B9200 001B6160 7C 75 1B 78 */ mr r21, r3 +lbl_801B9204: +/* 801B9204 001B6164 7F 00 07 75 */ extsb. r0, r24 +/* 801B9208 001B6168 7E AE AB 78 */ mr r14, r21 +/* 801B920C 001B616C 41 82 00 30 */ beq lbl_801B923C +/* 801B9210 001B6170 88 01 00 78 */ lbz r0, 0x78(r1) +/* 801B9214 001B6174 28 00 00 00 */ cmplwi r0, 0 +/* 801B9218 001B6178 41 82 00 1C */ beq lbl_801B9234 +/* 801B921C 001B617C 34 61 00 6C */ addic. r3, r1, 0x6c +/* 801B9220 001B6180 41 82 00 14 */ beq lbl_801B9234 +/* 801B9224 001B6184 28 03 00 00 */ cmplwi r3, 0 +/* 801B9228 001B6188 41 82 00 0C */ beq lbl_801B9234 +/* 801B922C 001B618C 38 80 00 00 */ li r4, 0 +/* 801B9230 001B6190 48 18 7C 11 */ bl __dt__6CTokenFv +lbl_801B9234: +/* 801B9234 001B6194 38 00 00 00 */ li r0, 0 +/* 801B9238 001B6198 98 01 00 78 */ stb r0, 0x78(r1) +lbl_801B923C: +/* 801B923C 001B619C 28 0E 00 00 */ cmplwi r14, 0 +/* 801B9240 001B61A0 41 82 00 2C */ beq lbl_801B926C +/* 801B9244 001B61A4 7F C3 F3 78 */ mr r3, r30 +/* 801B9248 001B61A8 7D C4 73 78 */ mr r4, r14 +/* 801B924C 001B61AC 4B E9 3A A9 */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +/* 801B9250 001B61B0 7D C3 73 78 */ mr r3, r14 +/* 801B9254 001B61B4 FC 20 F8 90 */ fmr f1, f31 +/* 801B9258 001B61B8 81 8E 00 00 */ lwz r12, 0(r14) +/* 801B925C 001B61BC 7F C4 F3 78 */ mr r4, r30 +/* 801B9260 001B61C0 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 801B9264 001B61C4 7D 89 03 A6 */ mtctr r12 +/* 801B9268 001B61C8 4E 80 04 21 */ bctrl +lbl_801B926C: +/* 801B926C 001B61CC 57 60 06 3F */ clrlwi. r0, r27, 0x18 +/* 801B9270 001B61D0 41 82 00 AC */ beq lbl_801B931C +/* 801B9274 001B61D4 C0 2E 00 40 */ lfs f1, 0x40(r14) +/* 801B9278 001B61D8 38 61 00 98 */ addi r3, r1, 0x98 +/* 801B927C 001B61DC C0 4E 00 50 */ lfs f2, 0x50(r14) +/* 801B9280 001B61E0 38 81 00 54 */ addi r4, r1, 0x54 +/* 801B9284 001B61E4 C0 0E 00 60 */ lfs f0, 0x60(r14) +/* 801B9288 001B61E8 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 801B928C 001B61EC C0 22 A9 B4 */ lfs f1, lbl_805AC6D4@sda21(r2) +/* 801B9290 001B61F0 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 801B9294 001B61F4 80 C1 00 48 */ lwz r6, 0x48(r1) +/* 801B9298 001B61F8 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 801B929C 001B61FC 80 A1 00 4C */ lwz r5, 0x4c(r1) +/* 801B92A0 001B6200 80 01 00 50 */ lwz r0, 0x50(r1) +/* 801B92A4 001B6204 90 C1 00 54 */ stw r6, 0x54(r1) +/* 801B92A8 001B6208 C0 42 A9 B8 */ lfs f2, lbl_805AC6D8@sda21(r2) +/* 801B92AC 001B620C 90 A1 00 58 */ stw r5, 0x58(r1) +/* 801B92B0 001B6210 C0 62 A9 BC */ lfs f3, lbl_805AC6DC@sda21(r2) +/* 801B92B4 001B6214 90 01 00 5C */ stw r0, 0x5c(r1) +/* 801B92B8 001B6218 4B FA 42 0D */ bl BuildMissileShakeData__16CCameraShakeDataFfffRC9CVector3f +/* 801B92BC 001B621C 7D C3 73 78 */ mr r3, r14 +/* 801B92C0 001B6220 38 81 00 98 */ addi r4, r1, 0x98 +/* 801B92C4 001B6224 48 05 A8 09 */ bl SetCameraShake__17CEnergyProjectileFRC16CCameraShakeData +/* 801B92C8 001B6228 34 81 01 18 */ addic. r4, r1, 0x118 +/* 801B92CC 001B622C 41 82 00 10 */ beq lbl_801B92DC +/* 801B92D0 001B6230 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 801B92D4 001B6234 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 801B92D8 001B6238 90 04 00 00 */ stw r0, 0(r4) +lbl_801B92DC: +/* 801B92DC 001B623C 34 81 00 DC */ addic. r4, r1, 0xdc +/* 801B92E0 001B6240 41 82 00 10 */ beq lbl_801B92F0 +/* 801B92E4 001B6244 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 801B92E8 001B6248 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 801B92EC 001B624C 90 04 00 00 */ stw r0, 0(r4) +lbl_801B92F0: +/* 801B92F0 001B6250 34 81 00 A0 */ addic. r4, r1, 0xa0 +/* 801B92F4 001B6254 41 82 00 10 */ beq lbl_801B9304 +/* 801B92F8 001B6258 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 801B92FC 001B625C 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 801B9300 001B6260 90 04 00 00 */ stw r0, 0(r4) +lbl_801B9304: +/* 801B9304 001B6264 3C 80 80 57 */ lis r4, lbl_80571B90@ha +/* 801B9308 001B6268 80 7E 08 70 */ lwz r3, 0x870(r30) +/* 801B930C 001B626C 38 84 1B 90 */ addi r4, r4, lbl_80571B90@l +/* 801B9310 001B6270 38 A0 00 00 */ li r5, 0 +/* 801B9314 001B6274 4B E5 17 0D */ bl AddCameraShaker__14CCameraManagerFRC16CCameraShakeDatab +/* 801B9318 001B6278 48 00 00 1C */ b lbl_801B9334 +lbl_801B931C: +/* 801B931C 001B627C 80 7E 08 8C */ lwz r3, 0x88c(r30) +/* 801B9320 001B6280 7F C4 F3 78 */ mr r4, r30 +/* 801B9324 001B6284 C0 22 A9 C0 */ lfs f1, lbl_805AC6E0@sda21(r2) +/* 801B9328 001B6288 38 A0 00 0D */ li r5, 0xd +/* 801B932C 001B628C 38 C0 00 01 */ li r6, 1 +/* 801B9330 001B6290 48 07 4F 15 */ bl Rumble__14CRumbleManagerFR13CStateManager11ERumbleFxIdf15ERumblePriority +lbl_801B9334: +/* 801B9334 001B6294 7E C4 B3 78 */ mr r4, r22 +/* 801B9338 001B6298 7F 45 D3 78 */ mr r5, r26 +/* 801B933C 001B629C 38 61 00 40 */ addi r3, r1, 0x40 +/* 801B9340 001B62A0 38 C0 00 00 */ li r6, 0 +/* 801B9344 001B62A4 38 E0 00 4A */ li r7, 0x4a +/* 801B9348 001B62A8 48 0D 17 B1 */ bl play_sfx__12NWeaponTypesFUsbbs +/* 801B934C 001B62AC 80 01 00 40 */ lwz r0, 0x40(r1) +/* 801B9350 001B62B0 90 19 00 7C */ stw r0, 0x7c(r25) +/* 801B9354 001B62B4 E3 E1 01 C8 */ psq_l f31, 456(r1), 0, qr0 +/* 801B9358 001B62B8 CB E1 01 C0 */ lfd f31, 0x1c0(r1) +/* 801B935C 001B62BC B9 C1 01 78 */ lmw r14, 0x178(r1) +/* 801B9360 001B62C0 80 01 01 D4 */ lwz r0, 0x1d4(r1) +/* 801B9364 001B62C4 7C 08 03 A6 */ mtlr r0 +/* 801B9368 001B62C8 38 21 01 D0 */ addi r1, r1, 0x1d0 +/* 801B936C 001B62CC 4E 80 00 20 */ blr + +.global InitComboData__10CAuxWeaponFv +InitComboData__10CAuxWeaponFv: +/* 801B9370 001B62D0 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801B9374 001B62D4 7C 08 02 A6 */ mflr r0 +/* 801B9378 001B62D8 3C 80 80 3D */ lis r4, lbl_803D1664@ha +/* 801B937C 001B62DC 90 01 00 44 */ stw r0, 0x44(r1) +/* 801B9380 001B62E0 BF 61 00 2C */ stmw r27, 0x2c(r1) +/* 801B9384 001B62E4 7C 7B 1B 78 */ mr r27, r3 +/* 801B9388 001B62E8 3B C4 16 64 */ addi r30, r4, lbl_803D1664@l +/* 801B938C 001B62EC 3B 80 00 00 */ li r28, 0 +/* 801B9390 001B62F0 3B BB 00 2C */ addi r29, r27, 0x2c +lbl_801B9394: +/* 801B9394 001B62F4 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801B9398 001B62F8 38 61 00 08 */ addi r3, r1, 8 +/* 801B939C 001B62FC 80 BE 00 00 */ lwz r5, 0(r30) +/* 801B93A0 001B6300 81 84 00 00 */ lwz r12, 0(r4) +/* 801B93A4 001B6304 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801B93A8 001B6308 7D 89 03 A6 */ mtctr r12 +/* 801B93AC 001B630C 4E 80 04 21 */ bctrl +/* 801B93B0 001B6310 38 61 00 10 */ addi r3, r1, 0x10 +/* 801B93B4 001B6314 38 81 00 08 */ addi r4, r1, 8 +/* 801B93B8 001B6318 48 18 7A F1 */ bl __ct__6CTokenFRC6CToken +/* 801B93BC 001B631C 38 00 00 00 */ li r0, 0 +/* 801B93C0 001B6320 90 01 00 18 */ stw r0, 0x18(r1) +/* 801B93C4 001B6324 80 1B 00 28 */ lwz r0, 0x28(r27) +/* 801B93C8 001B6328 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801B93CC 001B632C 7F FD 02 15 */ add. r31, r29, r0 +/* 801B93D0 001B6330 41 82 00 18 */ beq lbl_801B93E8 +/* 801B93D4 001B6334 7F E3 FB 78 */ mr r3, r31 +/* 801B93D8 001B6338 38 81 00 10 */ addi r4, r1, 0x10 +/* 801B93DC 001B633C 48 18 7A CD */ bl __ct__6CTokenFRC6CToken +/* 801B93E0 001B6340 80 01 00 18 */ lwz r0, 0x18(r1) +/* 801B93E4 001B6344 90 1F 00 08 */ stw r0, 8(r31) +lbl_801B93E8: +/* 801B93E8 001B6348 80 BB 00 28 */ lwz r5, 0x28(r27) +/* 801B93EC 001B634C 38 61 00 10 */ addi r3, r1, 0x10 +/* 801B93F0 001B6350 38 80 00 00 */ li r4, 0 +/* 801B93F4 001B6354 38 05 00 01 */ addi r0, r5, 1 +/* 801B93F8 001B6358 90 1B 00 28 */ stw r0, 0x28(r27) +/* 801B93FC 001B635C 48 18 7A 45 */ bl __dt__6CTokenFv +/* 801B9400 001B6360 38 61 00 08 */ addi r3, r1, 8 +/* 801B9404 001B6364 38 80 FF FF */ li r4, -1 +/* 801B9408 001B6368 48 18 7A 39 */ bl __dt__6CTokenFv +/* 801B940C 001B636C 3B 9C 00 01 */ addi r28, r28, 1 +/* 801B9410 001B6370 3B DE 00 04 */ addi r30, r30, 4 +/* 801B9414 001B6374 2C 1C 00 05 */ cmpwi r28, 5 +/* 801B9418 001B6378 41 80 FF 7C */ blt lbl_801B9394 +/* 801B941C 001B637C BB 61 00 2C */ lmw r27, 0x2c(r1) +/* 801B9420 001B6380 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801B9424 001B6384 7C 08 03 A6 */ mtlr r0 +/* 801B9428 001B6388 38 21 00 40 */ addi r1, r1, 0x40 +/* 801B942C 001B638C 4E 80 00 20 */ blr + +.global IsComboFxActive__10CAuxWeaponCFRC13CStateManager +IsComboFxActive__10CAuxWeaponCFRC13CStateManager: +/* 801B9430 001B6390 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B9434 001B6394 7C 08 02 A6 */ mflr r0 +/* 801B9438 001B6398 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B943C 001B639C 80 03 00 74 */ lwz r0, 0x74(r3) +/* 801B9440 001B63A0 2C 00 00 03 */ cmpwi r0, 3 +/* 801B9444 001B63A4 41 82 00 3C */ beq lbl_801B9480 +/* 801B9448 001B63A8 40 80 00 60 */ bge lbl_801B94A8 +/* 801B944C 001B63AC 2C 00 00 02 */ cmpwi r0, 2 +/* 801B9450 001B63B0 40 80 00 08 */ bge lbl_801B9458 +/* 801B9454 001B63B4 48 00 00 54 */ b lbl_801B94A8 +lbl_801B9458: +/* 801B9458 001B63B8 A0 03 00 70 */ lhz r0, 0x70(r3) +/* 801B945C 001B63BC 7C 83 23 78 */ mr r3, r4 +/* 801B9460 001B63C0 38 81 00 0C */ addi r4, r1, 0xc +/* 801B9464 001B63C4 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801B9468 001B63C8 4B E9 31 3D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801B946C 001B63CC 28 03 00 00 */ cmplwi r3, 0 +/* 801B9470 001B63D0 41 82 00 38 */ beq lbl_801B94A8 +/* 801B9474 001B63D4 88 03 03 D0 */ lbz r0, 0x3d0(r3) +/* 801B9478 001B63D8 54 03 CF FE */ rlwinm r3, r0, 0x19, 0x1f, 0x1f +/* 801B947C 001B63DC 48 00 00 30 */ b lbl_801B94AC +lbl_801B9480: +/* 801B9480 001B63E0 A0 03 00 6E */ lhz r0, 0x6e(r3) +/* 801B9484 001B63E4 7C 83 23 78 */ mr r3, r4 +/* 801B9488 001B63E8 38 81 00 08 */ addi r4, r1, 8 +/* 801B948C 001B63EC B0 01 00 08 */ sth r0, 8(r1) +/* 801B9490 001B63F0 4B E9 31 15 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801B9494 001B63F4 28 03 00 00 */ cmplwi r3, 0 +/* 801B9498 001B63F8 41 82 00 10 */ beq lbl_801B94A8 +/* 801B949C 001B63FC 88 03 03 7C */ lbz r0, 0x37c(r3) +/* 801B94A0 001B6400 54 03 D7 FE */ rlwinm r3, r0, 0x1a, 0x1f, 0x1f +/* 801B94A4 001B6404 48 00 00 08 */ b lbl_801B94AC +lbl_801B94A8: +/* 801B94A8 001B6408 38 60 00 00 */ li r3, 0 +lbl_801B94AC: +/* 801B94AC 001B640C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B94B0 001B6410 7C 08 03 A6 */ mtlr r0 +/* 801B94B4 001B6414 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B94B8 001B6418 4E 80 00 20 */ blr + +.global StopComboFx__10CAuxWeaponFR13CStateManagerb +StopComboFx__10CAuxWeaponFR13CStateManagerb: +/* 801B94BC 001B641C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801B94C0 001B6420 7C 08 02 A6 */ mflr r0 +/* 801B94C4 001B6424 90 01 00 24 */ stw r0, 0x24(r1) +/* 801B94C8 001B6428 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801B94CC 001B642C 7C BF 2B 78 */ mr r31, r5 +/* 801B94D0 001B6430 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801B94D4 001B6434 7C 9E 23 78 */ mr r30, r4 +/* 801B94D8 001B6438 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801B94DC 001B643C 7C 7D 1B 78 */ mr r29, r3 +/* 801B94E0 001B6440 80 03 00 74 */ lwz r0, 0x74(r3) +/* 801B94E4 001B6444 2C 00 00 03 */ cmpwi r0, 3 +/* 801B94E8 001B6448 41 82 00 48 */ beq lbl_801B9530 +/* 801B94EC 001B644C 40 80 00 BC */ bge lbl_801B95A8 +/* 801B94F0 001B6450 2C 00 00 02 */ cmpwi r0, 2 +/* 801B94F4 001B6454 40 80 00 08 */ bge lbl_801B94FC +/* 801B94F8 001B6458 48 00 00 B0 */ b lbl_801B95A8 +lbl_801B94FC: +/* 801B94FC 001B645C A0 1D 00 70 */ lhz r0, 0x70(r29) +/* 801B9500 001B6460 7F C3 F3 78 */ mr r3, r30 +/* 801B9504 001B6464 38 81 00 0C */ addi r4, r1, 0xc +/* 801B9508 001B6468 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801B950C 001B646C 4B E9 30 69 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801B9510 001B6470 28 03 00 00 */ cmplwi r3, 0 +/* 801B9514 001B6474 41 82 00 94 */ beq lbl_801B95A8 +/* 801B9518 001B6478 7F E4 FB 78 */ mr r4, r31 +/* 801B951C 001B647C 48 00 57 FD */ bl ResetBeam__11CWaveBusterFb +/* 801B9520 001B6480 7F A3 EB 78 */ mr r3, r29 +/* 801B9524 001B6484 7F C4 F3 78 */ mr r4, r30 +/* 801B9528 001B6488 4B FF F5 5D */ bl DeleteWaveBusterBeam__10CAuxWeaponFR13CStateManager +/* 801B952C 001B648C 48 00 00 7C */ b lbl_801B95A8 +lbl_801B9530: +/* 801B9530 001B6490 A0 1D 00 6E */ lhz r0, 0x6e(r29) +/* 801B9534 001B6494 7F C3 F3 78 */ mr r3, r30 +/* 801B9538 001B6498 38 81 00 08 */ addi r4, r1, 8 +/* 801B953C 001B649C B0 01 00 08 */ sth r0, 8(r1) +/* 801B9540 001B64A0 4B E9 30 35 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801B9544 001B64A4 28 03 00 00 */ cmplwi r3, 0 +/* 801B9548 001B64A8 41 82 00 60 */ beq lbl_801B95A8 +/* 801B954C 001B64AC 80 9E 08 B8 */ lwz r4, 0x8b8(r30) +/* 801B9550 001B64B0 38 A0 00 00 */ li r5, 0 +/* 801B9554 001B64B4 80 84 00 00 */ lwz r4, 0(r4) +/* 801B9558 001B64B8 88 04 00 00 */ lbz r0, 0(r4) +/* 801B955C 001B64BC 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 801B9560 001B64C0 98 04 00 00 */ stb r0, 0(r4) +/* 801B9564 001B64C4 88 03 03 7C */ lbz r0, 0x37c(r3) +/* 801B9568 001B64C8 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801B956C 001B64CC 41 82 00 1C */ beq lbl_801B9588 +/* 801B9570 001B64D0 7F C4 F3 78 */ mr r4, r30 +/* 801B9574 001B64D4 7F E5 FB 78 */ mr r5, r31 +/* 801B9578 001B64D8 48 0A A3 69 */ bl Reset__16CFlameNewThrowerFR13CStateManagerb +/* 801B957C 001B64DC 7F A3 EB 78 */ mr r3, r29 +/* 801B9580 001B64E0 4B FF F4 6D */ bl FreeComboVoiceId__10CAuxWeaponFv +/* 801B9584 001B64E4 48 00 00 24 */ b lbl_801B95A8 +lbl_801B9588: +/* 801B9588 001B64E8 88 03 00 30 */ lbz r0, 0x30(r3) +/* 801B958C 001B64EC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801B9590 001B64F0 41 82 00 18 */ beq lbl_801B95A8 +/* 801B9594 001B64F4 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 801B9598 001B64F8 41 82 00 10 */ beq lbl_801B95A8 +/* 801B959C 001B64FC 7F C4 F3 78 */ mr r4, r30 +/* 801B95A0 001B6500 7F E5 FB 78 */ mr r5, r31 +/* 801B95A4 001B6504 48 0A A3 3D */ bl Reset__16CFlameNewThrowerFR13CStateManagerb +lbl_801B95A8: +/* 801B95A8 001B6508 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 801B95AC 001B650C 41 82 00 14 */ beq lbl_801B95C0 +/* 801B95B0 001B6510 38 00 FF FF */ li r0, -1 +/* 801B95B4 001B6514 C0 02 A9 C4 */ lfs f0, lbl_805AC6E4@sda21(r2) +/* 801B95B8 001B6518 90 1D 00 74 */ stw r0, 0x74(r29) +/* 801B95BC 001B651C D0 1D 00 68 */ stfs f0, 0x68(r29) +lbl_801B95C0: +/* 801B95C0 001B6520 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801B95C4 001B6524 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801B95C8 001B6528 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801B95CC 001B652C 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801B95D0 001B6530 7C 08 03 A6 */ mtlr r0 +/* 801B95D4 001B6534 38 21 00 20 */ addi r1, r1, 0x20 +/* 801B95D8 001B6538 4E 80 00 20 */ blr + +.global UpdateComboFx__10CAuxWeaponFfRC9CVector3fRC9CVector3fRC12CTransform4fR13CStateManager +UpdateComboFx__10CAuxWeaponFfRC9CVector3fRC9CVector3fRC12CTransform4fR13CStateManager: +/* 801B95DC 001B653C 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801B95E0 001B6540 7C 08 02 A6 */ mflr r0 +/* 801B95E4 001B6544 90 01 00 54 */ stw r0, 0x54(r1) +/* 801B95E8 001B6548 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 801B95EC 001B654C F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 801B95F0 001B6550 BE C1 00 18 */ stmw r22, 0x18(r1) +/* 801B95F4 001B6554 88 03 00 80 */ lbz r0, 0x80(r3) +/* 801B95F8 001B6558 FF E0 08 90 */ fmr f31, f1 +/* 801B95FC 001B655C 7C 78 1B 78 */ mr r24, r3 +/* 801B9600 001B6560 7C 99 23 78 */ mr r25, r4 +/* 801B9604 001B6564 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801B9608 001B6568 7C BA 2B 78 */ mr r26, r5 +/* 801B960C 001B656C 7C DB 33 78 */ mr r27, r6 +/* 801B9610 001B6570 7C FC 3B 78 */ mr r28, r7 +/* 801B9614 001B6574 41 82 00 10 */ beq lbl_801B9624 +/* 801B9618 001B6578 80 18 00 74 */ lwz r0, 0x74(r24) +/* 801B961C 001B657C 2C 00 FF FF */ cmpwi r0, -1 +/* 801B9620 001B6580 40 82 00 0C */ bne lbl_801B962C +lbl_801B9624: +/* 801B9624 001B6584 38 60 00 00 */ li r3, 0 +/* 801B9628 001B6588 48 00 02 2C */ b lbl_801B9854 +lbl_801B962C: +/* 801B962C 001B658C 80 9C 08 B8 */ lwz r4, 0x8b8(r28) +/* 801B9630 001B6590 38 61 00 10 */ addi r3, r1, 0x10 +/* 801B9634 001B6594 80 18 00 7C */ lwz r0, 0x7c(r24) +/* 801B9638 001B6598 3B C0 00 00 */ li r30, 0 +/* 801B963C 001B659C 83 E4 00 00 */ lwz r31, 0(r4) +/* 801B9640 001B65A0 90 01 00 10 */ stw r0, 0x10(r1) +/* 801B9644 001B65A4 48 12 F7 91 */ bl IsPlaying__11CSfxManagerF10CSfxHandle +/* 801B9648 001B65A8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B964C 001B65AC 40 82 00 18 */ bne lbl_801B9664 +/* 801B9650 001B65B0 80 18 00 7C */ lwz r0, 0x7c(r24) +/* 801B9654 001B65B4 28 00 00 00 */ cmplwi r0, 0 +/* 801B9658 001B65B8 41 82 00 0C */ beq lbl_801B9664 +/* 801B965C 001B65BC 7F 03 C3 78 */ mr r3, r24 +/* 801B9660 001B65C0 4B FF F3 8D */ bl FreeComboVoiceId__10CAuxWeaponFv +lbl_801B9664: +/* 801B9664 001B65C4 80 18 00 74 */ lwz r0, 0x74(r24) +/* 801B9668 001B65C8 2C 00 00 04 */ cmpwi r0, 4 +/* 801B966C 001B65CC 40 80 01 E4 */ bge lbl_801B9850 +/* 801B9670 001B65D0 2C 00 00 02 */ cmpwi r0, 2 +/* 801B9674 001B65D4 40 80 00 08 */ bge lbl_801B967C +/* 801B9678 001B65D8 48 00 01 D8 */ b lbl_801B9850 +lbl_801B967C: +/* 801B967C 001B65DC 3B A0 00 00 */ li r29, 0 +/* 801B9680 001B65E0 40 82 00 68 */ bne lbl_801B96E8 +/* 801B9684 001B65E4 A0 18 00 70 */ lhz r0, 0x70(r24) +/* 801B9688 001B65E8 7F 83 E3 78 */ mr r3, r28 +/* 801B968C 001B65EC 38 81 00 0C */ addi r4, r1, 0xc +/* 801B9690 001B65F0 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801B9694 001B65F4 4B E9 2E E1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801B9698 001B65F8 28 03 00 00 */ cmplwi r3, 0 +/* 801B969C 001B65FC 41 82 00 2C */ beq lbl_801B96C8 +/* 801B96A0 001B6600 88 03 03 D0 */ lbz r0, 0x3d0(r3) +/* 801B96A4 001B6604 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801B96A8 001B6608 41 82 00 20 */ beq lbl_801B96C8 +/* 801B96AC 001B660C FC 20 F8 90 */ fmr f1, f31 +/* 801B96B0 001B6610 7F 64 DB 78 */ mr r4, r27 +/* 801B96B4 001B6614 7F 85 E3 78 */ mr r5, r28 +/* 801B96B8 001B6618 48 00 57 C5 */ bl UpdateFx__11CWaveBusterFRC12CTransform4ffR13CStateManager +/* 801B96BC 001B661C 3B C0 00 01 */ li r30, 1 +/* 801B96C0 001B6620 3B A0 00 01 */ li r29, 1 +/* 801B96C4 001B6624 48 00 00 B0 */ b lbl_801B9774 +lbl_801B96C8: +/* 801B96C8 001B6628 7F 03 C3 78 */ mr r3, r24 +/* 801B96CC 001B662C 7F 84 E3 78 */ mr r4, r28 +/* 801B96D0 001B6630 4B FF F3 B5 */ bl DeleteWaveBusterBeam__10CAuxWeaponFR13CStateManager +/* 801B96D4 001B6634 88 1F 00 00 */ lbz r0, 0(r31) +/* 801B96D8 001B6638 38 60 00 00 */ li r3, 0 +/* 801B96DC 001B663C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801B96E0 001B6640 98 1F 00 00 */ stb r0, 0(r31) +/* 801B96E4 001B6644 48 00 00 90 */ b lbl_801B9774 +lbl_801B96E8: +/* 801B96E8 001B6648 A0 18 00 6E */ lhz r0, 0x6e(r24) +/* 801B96EC 001B664C 7F 83 E3 78 */ mr r3, r28 +/* 801B96F0 001B6650 38 81 00 08 */ addi r4, r1, 8 +/* 801B96F4 001B6654 B0 01 00 08 */ sth r0, 8(r1) +/* 801B96F8 001B6658 4B E9 2E 7D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801B96FC 001B665C 7C 77 1B 79 */ or. r23, r3, r3 +/* 801B9700 001B6660 3A C0 00 01 */ li r22, 1 +/* 801B9704 001B6664 41 82 00 4C */ beq lbl_801B9750 +/* 801B9708 001B6668 88 17 00 30 */ lbz r0, 0x30(r23) +/* 801B970C 001B666C 88 97 03 7C */ lbz r4, 0x37c(r23) +/* 801B9710 001B6670 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801B9714 001B6674 54 9D CF FE */ rlwinm r29, r4, 0x19, 0x1f, 0x1f +/* 801B9718 001B6678 41 82 00 1C */ beq lbl_801B9734 +/* 801B971C 001B667C FC 20 F8 90 */ fmr f1, f31 +/* 801B9720 001B6680 7F 64 DB 78 */ mr r4, r27 +/* 801B9724 001B6684 7F 85 E3 78 */ mr r5, r28 +/* 801B9728 001B6688 48 0A A4 15 */ bl UpdateFx__16CNewFlameThrowerFRC12CTransform4ffR13CStateManager +/* 801B972C 001B668C 88 17 03 7C */ lbz r0, 0x37c(r23) +/* 801B9730 001B6690 54 1E D7 FE */ rlwinm r30, r0, 0x1a, 0x1f, 0x1f +lbl_801B9734: +/* 801B9734 001B6694 A0 78 00 6E */ lhz r3, 0x6e(r24) +/* 801B9738 001B6698 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801B973C 001B669C 7C 03 00 40 */ cmplw r3, r0 +/* 801B9740 001B66A0 41 82 00 10 */ beq lbl_801B9750 +/* 801B9744 001B66A4 7E E3 BB 78 */ mr r3, r23 +/* 801B9748 001B66A8 48 0A 87 6D */ bl AreParticlesDoneEmitting__16CNewFlameThrowerCFv +/* 801B974C 001B66AC 7C 76 1B 78 */ mr r22, r3 +lbl_801B9750: +/* 801B9750 001B66B0 56 C0 06 3F */ clrlwi. r0, r22, 0x18 +/* 801B9754 001B66B4 41 82 00 20 */ beq lbl_801B9774 +/* 801B9758 001B66B8 7F 03 C3 78 */ mr r3, r24 +/* 801B975C 001B66BC 7F 84 E3 78 */ mr r4, r28 +/* 801B9760 001B66C0 4B FF F3 B5 */ bl DeleteFlameThrower__10CAuxWeaponFR13CStateManager +/* 801B9764 001B66C4 88 1F 00 00 */ lbz r0, 0(r31) +/* 801B9768 001B66C8 38 60 00 00 */ li r3, 0 +/* 801B976C 001B66CC 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801B9770 001B66D0 98 1F 00 00 */ stb r0, 0(r31) +lbl_801B9774: +/* 801B9774 001B66D4 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 801B9778 001B66D8 41 82 00 54 */ beq lbl_801B97CC +/* 801B977C 001B66DC C0 18 00 68 */ lfs f0, 0x68(r24) +/* 801B9780 001B66E0 7F E3 FB 78 */ mr r3, r31 +/* 801B9784 001B66E4 38 80 00 04 */ li r4, 4 +/* 801B9788 001B66E8 EC 00 F8 2A */ fadds f0, f0, f31 +/* 801B978C 001B66EC D0 18 00 68 */ stfs f0, 0x68(r24) +/* 801B9790 001B66F0 4B ED 83 8D */ bl GetItemAmount__12CPlayerStateCFQ212CPlayerState9EItemType +/* 801B9794 001B66F4 2C 03 00 00 */ cmpwi r3, 0 +/* 801B9798 001B66F8 40 81 00 34 */ ble lbl_801B97CC +/* 801B979C 001B66FC 7F E3 FB 78 */ mr r3, r31 +/* 801B97A0 001B6700 4B ED 7A 65 */ bl GetComboFireAmmoPeriod__12CPlayerStateCFv +/* 801B97A4 001B6704 C0 18 00 68 */ lfs f0, 0x68(r24) +/* 801B97A8 001B6708 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801B97AC 001B670C 4C 41 13 82 */ cror 2, 1, 2 +/* 801B97B0 001B6710 40 82 00 1C */ bne lbl_801B97CC +/* 801B97B4 001B6714 7F E3 FB 78 */ mr r3, r31 +/* 801B97B8 001B6718 38 80 00 04 */ li r4, 4 +/* 801B97BC 001B671C 38 A0 00 01 */ li r5, 1 +/* 801B97C0 001B6720 4B ED 83 D5 */ bl DecrPickUp__12CPlayerStateFQ212CPlayerState9EItemTypei +/* 801B97C4 001B6724 C0 02 A9 C4 */ lfs f0, lbl_805AC6E4@sda21(r2) +/* 801B97C8 001B6728 D0 18 00 68 */ stfs f0, 0x68(r24) +lbl_801B97CC: +/* 801B97CC 001B672C 7F E3 FB 78 */ mr r3, r31 +/* 801B97D0 001B6730 38 80 00 04 */ li r4, 4 +/* 801B97D4 001B6734 4B ED 83 49 */ bl GetItemAmount__12CPlayerStateCFQ212CPlayerState9EItemType +/* 801B97D8 001B6738 2C 03 00 00 */ cmpwi r3, 0 +/* 801B97DC 001B673C 40 82 00 14 */ bne lbl_801B97F0 +/* 801B97E0 001B6740 7F 03 C3 78 */ mr r3, r24 +/* 801B97E4 001B6744 7F 84 E3 78 */ mr r4, r28 +/* 801B97E8 001B6748 38 A0 00 00 */ li r5, 0 +/* 801B97EC 001B674C 4B FF FC D1 */ bl StopComboFx__10CAuxWeaponFR13CStateManagerb +lbl_801B97F0: +/* 801B97F0 001B6750 80 78 00 24 */ lwz r3, 0x24(r24) +/* 801B97F4 001B6754 7F 44 D3 78 */ mr r4, r26 +/* 801B97F8 001B6758 81 83 00 00 */ lwz r12, 0(r3) +/* 801B97FC 001B675C 81 8C 00 20 */ lwz r12, 0x20(r12) +/* 801B9800 001B6760 7D 89 03 A6 */ mtctr r12 +/* 801B9804 001B6764 4E 80 04 21 */ bctrl +/* 801B9808 001B6768 80 78 00 24 */ lwz r3, 0x24(r24) +/* 801B980C 001B676C 7F 24 CB 78 */ mr r4, r25 +/* 801B9810 001B6770 81 83 00 00 */ lwz r12, 0(r3) +/* 801B9814 001B6774 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 801B9818 001B6778 7D 89 03 A6 */ mtctr r12 +/* 801B981C 001B677C 4E 80 04 21 */ bctrl +/* 801B9820 001B6780 80 78 00 24 */ lwz r3, 0x24(r24) +/* 801B9824 001B6784 57 A4 06 3E */ clrlwi r4, r29, 0x18 +/* 801B9828 001B6788 81 83 00 00 */ lwz r12, 0(r3) +/* 801B982C 001B678C 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801B9830 001B6790 7D 89 03 A6 */ mtctr r12 +/* 801B9834 001B6794 4E 80 04 21 */ bctrl +/* 801B9838 001B6798 80 78 00 24 */ lwz r3, 0x24(r24) +/* 801B983C 001B679C FC 20 F8 90 */ fmr f1, f31 +/* 801B9840 001B67A0 81 83 00 00 */ lwz r12, 0(r3) +/* 801B9844 001B67A4 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801B9848 001B67A8 7D 89 03 A6 */ mtctr r12 +/* 801B984C 001B67AC 4E 80 04 21 */ bctrl +lbl_801B9850: +/* 801B9850 001B67B0 57 C3 06 3E */ clrlwi r3, r30, 0x18 +lbl_801B9854: +/* 801B9854 001B67B4 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 801B9858 001B67B8 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 801B985C 001B67BC BA C1 00 18 */ lmw r22, 0x18(r1) +/* 801B9860 001B67C0 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801B9864 001B67C4 7C 08 03 A6 */ mtlr r0 +/* 801B9868 001B67C8 38 21 00 50 */ addi r1, r1, 0x50 +/* 801B986C 001B67CC 4E 80 00 20 */ blr + +.global RenderMuzzleFx__10CAuxWeaponCFv +RenderMuzzleFx__10CAuxWeaponCFv: +/* 801B9870 001B67D0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B9874 001B67D4 7C 08 02 A6 */ mflr r0 +/* 801B9878 001B67D8 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B987C 001B67DC 80 03 00 74 */ lwz r0, 0x74(r3) +/* 801B9880 001B67E0 2C 00 00 04 */ cmpwi r0, 4 +/* 801B9884 001B67E4 40 80 00 24 */ bge lbl_801B98A8 +/* 801B9888 001B67E8 2C 00 00 02 */ cmpwi r0, 2 +/* 801B988C 001B67EC 40 80 00 08 */ bge lbl_801B9894 +/* 801B9890 001B67F0 48 00 00 18 */ b lbl_801B98A8 +lbl_801B9894: +/* 801B9894 001B67F4 80 63 00 24 */ lwz r3, 0x24(r3) +/* 801B9898 001B67F8 81 83 00 00 */ lwz r12, 0(r3) +/* 801B989C 001B67FC 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801B98A0 001B6800 7D 89 03 A6 */ mtctr r12 +/* 801B98A4 001B6804 4E 80 04 21 */ bctrl +lbl_801B98A8: +/* 801B98A8 001B6808 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B98AC 001B680C 7C 08 03 A6 */ mtlr r0 +/* 801B98B0 001B6810 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B98B4 001B6814 4E 80 00 20 */ blr + +.global HasTarget__10CAuxWeaponCFRC13CStateManager +HasTarget__10CAuxWeaponCFRC13CStateManager: +/* 801B98B8 001B6818 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801B98BC 001B681C 7C 08 02 A6 */ mflr r0 +/* 801B98C0 001B6820 90 01 00 24 */ stw r0, 0x24(r1) +/* 801B98C4 001B6824 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801B98C8 001B6828 7C 7F 1B 78 */ mr r31, r3 +/* 801B98CC 001B682C 80 04 00 74 */ lwz r0, 0x74(r4) +/* 801B98D0 001B6830 2C 00 00 02 */ cmpwi r0, 2 +/* 801B98D4 001B6834 41 82 00 08 */ beq lbl_801B98DC +/* 801B98D8 001B6838 48 00 00 2C */ b lbl_801B9904 +lbl_801B98DC: +/* 801B98DC 001B683C A0 04 00 70 */ lhz r0, 0x70(r4) +/* 801B98E0 001B6840 7C A3 2B 78 */ mr r3, r5 +/* 801B98E4 001B6844 38 81 00 08 */ addi r4, r1, 8 +/* 801B98E8 001B6848 B0 01 00 08 */ sth r0, 8(r1) +/* 801B98EC 001B684C 4B E9 2C B9 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801B98F0 001B6850 28 03 00 00 */ cmplwi r3, 0 +/* 801B98F4 001B6854 41 82 00 10 */ beq lbl_801B9904 +/* 801B98F8 001B6858 A0 03 02 C0 */ lhz r0, 0x2c0(r3) +/* 801B98FC 001B685C B0 1F 00 00 */ sth r0, 0(r31) +/* 801B9900 001B6860 48 00 00 0C */ b lbl_801B990C +lbl_801B9904: +/* 801B9904 001B6864 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801B9908 001B6868 B0 1F 00 00 */ sth r0, 0(r31) +lbl_801B990C: +/* 801B990C 001B686C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801B9910 001B6870 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801B9914 001B6874 7C 08 03 A6 */ mtlr r0 +/* 801B9918 001B6878 38 21 00 20 */ addi r1, r1, 0x20 +/* 801B991C 001B687C 4E 80 00 20 */ blr + +.global SetNewTarget__10CAuxWeaponF9TUniqueIdR13CStateManager +SetNewTarget__10CAuxWeaponF9TUniqueIdR13CStateManager: +/* 801B9920 001B6880 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801B9924 001B6884 7C 08 02 A6 */ mflr r0 +/* 801B9928 001B6888 90 01 00 24 */ stw r0, 0x24(r1) +/* 801B992C 001B688C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801B9930 001B6890 7C BF 2B 78 */ mr r31, r5 +/* 801B9934 001B6894 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801B9938 001B6898 7C 9E 23 78 */ mr r30, r4 +/* 801B993C 001B689C 80 03 00 74 */ lwz r0, 0x74(r3) +/* 801B9940 001B68A0 2C 00 00 02 */ cmpwi r0, 2 +/* 801B9944 001B68A4 41 82 00 08 */ beq lbl_801B994C +/* 801B9948 001B68A8 48 00 00 34 */ b lbl_801B997C +lbl_801B994C: +/* 801B994C 001B68AC A0 03 00 70 */ lhz r0, 0x70(r3) +/* 801B9950 001B68B0 7F E3 FB 78 */ mr r3, r31 +/* 801B9954 001B68B4 38 81 00 0C */ addi r4, r1, 0xc +/* 801B9958 001B68B8 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801B995C 001B68BC 4B E9 2C 19 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801B9960 001B68C0 28 03 00 00 */ cmplwi r3, 0 +/* 801B9964 001B68C4 41 82 00 18 */ beq lbl_801B997C +/* 801B9968 001B68C8 A0 1E 00 00 */ lhz r0, 0(r30) +/* 801B996C 001B68CC 7F E5 FB 78 */ mr r5, r31 +/* 801B9970 001B68D0 38 81 00 08 */ addi r4, r1, 8 +/* 801B9974 001B68D4 B0 01 00 08 */ sth r0, 8(r1) +/* 801B9978 001B68D8 48 00 66 E5 */ bl SetNewTarget__11CWaveBusterF9TUniqueId +lbl_801B997C: +/* 801B997C 001B68DC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801B9980 001B68E0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801B9984 001B68E4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801B9988 001B68E8 7C 08 03 A6 */ mtlr r0 +/* 801B998C 001B68EC 38 21 00 20 */ addi r1, r1, 0x20 +/* 801B9990 001B68F0 4E 80 00 20 */ blr + +.global Fire__10CAuxWeaponFfbiQ212CPlayerState12EChargeStageRC12CTransform4fR13CStateManager11EWeaponType9TUniqueId +Fire__10CAuxWeaponFfbiQ212CPlayerState12EChargeStageRC12CTransform4fR13CStateManager11EWeaponType9TUniqueId: +/* 801B9994 001B68F4 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801B9998 001B68F8 7C 08 02 A6 */ mflr r0 +/* 801B999C 001B68FC 90 01 00 44 */ stw r0, 0x44(r1) +/* 801B99A0 001B6900 DB E1 00 38 */ stfd f31, 0x38(r1) +/* 801B99A4 001B6904 FF E0 08 90 */ fmr f31, f1 +/* 801B99A8 001B6908 BF 21 00 1C */ stmw r25, 0x1c(r1) +/* 801B99AC 001B690C 7C 79 1B 78 */ mr r25, r3 +/* 801B99B0 001B6910 7C 9A 23 78 */ mr r26, r4 +/* 801B99B4 001B6914 7C BB 2B 78 */ mr r27, r5 +/* 801B99B8 001B6918 7C FC 3B 78 */ mr r28, r7 +/* 801B99BC 001B691C 7D 1D 43 78 */ mr r29, r8 +/* 801B99C0 001B6920 7D 5E 53 78 */ mr r30, r10 +/* 801B99C4 001B6924 88 03 00 80 */ lbz r0, 0x80(r3) +/* 801B99C8 001B6928 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801B99CC 001B692C 41 82 00 EC */ beq lbl_801B9AB8 +/* 801B99D0 001B6930 7C 06 00 D0 */ neg r0, r6 +/* 801B99D4 001B6934 7C 00 33 78 */ or r0, r0, r6 +/* 801B99D8 001B6938 54 1F 0F FF */ rlwinm. r31, r0, 1, 0x1f, 0x1f +/* 801B99DC 001B693C 41 82 00 14 */ beq lbl_801B99F0 +/* 801B99E0 001B6940 7D 23 4B 78 */ mr r3, r9 +/* 801B99E4 001B6944 4B E7 DE 75 */ bl GetBeamAttribType__15CGameProjectileF11EWeaponType +/* 801B99E8 001B6948 60 67 00 80 */ ori r7, r3, 0x80 +/* 801B99EC 001B694C 48 00 00 08 */ b lbl_801B99F4 +lbl_801B99F0: +/* 801B99F0 001B6950 38 E0 00 00 */ li r7, 0 +lbl_801B99F4: +/* 801B99F4 001B6954 28 1F 00 00 */ cmplwi r31, 0 +/* 801B99F8 001B6958 40 82 00 34 */ bne lbl_801B9A2C +/* 801B99FC 001B695C A0 1E 00 00 */ lhz r0, 0(r30) +/* 801B9A00 001B6960 FC 20 F8 90 */ fmr f1, f31 +/* 801B9A04 001B6964 7F 23 CB 78 */ mr r3, r25 +/* 801B9A08 001B6968 7F 44 D3 78 */ mr r4, r26 +/* 801B9A0C 001B696C B0 01 00 10 */ sth r0, 0x10(r1) +/* 801B9A10 001B6970 7F E5 FB 78 */ mr r5, r31 +/* 801B9A14 001B6974 7F 66 DB 78 */ mr r6, r27 +/* 801B9A18 001B6978 7F 88 E3 78 */ mr r8, r28 +/* 801B9A1C 001B697C 7F AA EB 78 */ mr r10, r29 +/* 801B9A20 001B6980 39 21 00 10 */ addi r9, r1, 0x10 +/* 801B9A24 001B6984 4B FF F6 4D */ bl LaunchMissile__10CAuxWeaponFbbiUiRC12CTransform4f9TUniqueIdR13CStateManager +/* 801B9A28 001B6988 48 00 00 90 */ b lbl_801B9AB8 +lbl_801B9A2C: +/* 801B9A2C 001B698C 2C 1B 00 02 */ cmpwi r27, 2 +/* 801B9A30 001B6990 41 82 00 50 */ beq lbl_801B9A80 +/* 801B9A34 001B6994 40 80 00 10 */ bge lbl_801B9A44 +/* 801B9A38 001B6998 2C 1B 00 00 */ cmpwi r27, 0 +/* 801B9A3C 001B699C 40 80 00 14 */ bge lbl_801B9A50 +/* 801B9A40 001B69A0 48 00 00 78 */ b lbl_801B9AB8 +lbl_801B9A44: +/* 801B9A44 001B69A4 2C 1B 00 04 */ cmpwi r27, 4 +/* 801B9A48 001B69A8 40 80 00 70 */ bge lbl_801B9AB8 +/* 801B9A4C 001B69AC 48 00 00 58 */ b lbl_801B9AA4 +lbl_801B9A50: +/* 801B9A50 001B69B0 A0 1E 00 00 */ lhz r0, 0(r30) +/* 801B9A54 001B69B4 FC 20 F8 90 */ fmr f1, f31 +/* 801B9A58 001B69B8 7F 23 CB 78 */ mr r3, r25 +/* 801B9A5C 001B69BC 7F 44 D3 78 */ mr r4, r26 +/* 801B9A60 001B69C0 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801B9A64 001B69C4 7F E5 FB 78 */ mr r5, r31 +/* 801B9A68 001B69C8 7F 66 DB 78 */ mr r6, r27 +/* 801B9A6C 001B69CC 7F 88 E3 78 */ mr r8, r28 +/* 801B9A70 001B69D0 7F AA EB 78 */ mr r10, r29 +/* 801B9A74 001B69D4 39 21 00 0C */ addi r9, r1, 0xc +/* 801B9A78 001B69D8 4B FF F5 F9 */ bl LaunchMissile__10CAuxWeaponFbbiUiRC12CTransform4f9TUniqueIdR13CStateManager +/* 801B9A7C 001B69DC 48 00 00 3C */ b lbl_801B9AB8 +lbl_801B9A80: +/* 801B9A80 001B69E0 A0 1E 00 00 */ lhz r0, 0(r30) +/* 801B9A84 001B69E4 7F 23 CB 78 */ mr r3, r25 +/* 801B9A88 001B69E8 7C E4 3B 78 */ mr r4, r7 +/* 801B9A8C 001B69EC 7F 86 E3 78 */ mr r6, r28 +/* 801B9A90 001B69F0 B0 01 00 08 */ sth r0, 8(r1) +/* 801B9A94 001B69F4 7F A7 EB 78 */ mr r7, r29 +/* 801B9A98 001B69F8 38 A1 00 08 */ addi r5, r1, 8 +/* 801B9A9C 001B69FC 4B FF F1 09 */ bl CreateWaveBusterBeam__10CAuxWeaponFUi9TUniqueIdRC12CTransform4fR13CStateManager +/* 801B9AA0 001B6A00 48 00 00 18 */ b lbl_801B9AB8 +lbl_801B9AA4: +/* 801B9AA4 001B6A04 FC 20 F8 90 */ fmr f1, f31 +/* 801B9AA8 001B6A08 7F 23 CB 78 */ mr r3, r25 +/* 801B9AAC 001B6A0C 7F 84 E3 78 */ mr r4, r28 +/* 801B9AB0 001B6A10 7F A5 EB 78 */ mr r5, r29 +/* 801B9AB4 001B6A14 4B FF F2 C9 */ bl CreateFlameThrower__10CAuxWeaponFRC12CTransform4fR13CStateManagerf +lbl_801B9AB8: +/* 801B9AB8 001B6A18 CB E1 00 38 */ lfd f31, 0x38(r1) +/* 801B9ABC 001B6A1C BB 21 00 1C */ lmw r25, 0x1c(r1) +/* 801B9AC0 001B6A20 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801B9AC4 001B6A24 7C 08 03 A6 */ mtlr r0 +/* 801B9AC8 001B6A28 38 21 00 40 */ addi r1, r1, 0x40 +/* 801B9ACC 001B6A2C 4E 80 00 20 */ blr + +.global __ct__10CAuxWeaponF9TUniqueId +__ct__10CAuxWeaponF9TUniqueId: +/* 801B9AD0 001B6A30 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801B9AD4 001B6A34 7C 08 02 A6 */ mflr r0 +/* 801B9AD8 001B6A38 3C A0 80 3D */ lis r5, lbl_803D1678@ha +/* 801B9ADC 001B6A3C 90 01 00 34 */ stw r0, 0x34(r1) +/* 801B9AE0 001B6A40 38 A5 16 78 */ addi r5, r5, lbl_803D1678@l +/* 801B9AE4 001B6A44 38 A5 00 B6 */ addi r5, r5, 0xb6 +/* 801B9AE8 001B6A48 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801B9AEC 001B6A4C 7C 9F 23 78 */ mr r31, r4 +/* 801B9AF0 001B6A50 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801B9AF4 001B6A54 7C 7E 1B 78 */ mr r30, r3 +/* 801B9AF8 001B6A58 38 61 00 18 */ addi r3, r1, 0x18 +/* 801B9AFC 001B6A5C 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801B9B00 001B6A60 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801B9B04 001B6A64 81 84 00 00 */ lwz r12, 0(r4) +/* 801B9B08 001B6A68 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801B9B0C 001B6A6C 7D 89 03 A6 */ mtctr r12 +/* 801B9B10 001B6A70 4E 80 04 21 */ bctrl +/* 801B9B14 001B6A74 7F C3 F3 78 */ mr r3, r30 +/* 801B9B18 001B6A78 38 81 00 18 */ addi r4, r1, 0x18 +/* 801B9B1C 001B6A7C 48 18 73 8D */ bl __ct__6CTokenFRC6CToken +/* 801B9B20 001B6A80 7F C3 F3 78 */ mr r3, r30 +/* 801B9B24 001B6A84 48 18 72 E9 */ bl GetObj__6CTokenFv +/* 801B9B28 001B6A88 80 03 00 04 */ lwz r0, 4(r3) +/* 801B9B2C 001B6A8C 38 61 00 18 */ addi r3, r1, 0x18 +/* 801B9B30 001B6A90 38 80 FF FF */ li r4, -1 +/* 801B9B34 001B6A94 90 1E 00 08 */ stw r0, 8(r30) +/* 801B9B38 001B6A98 48 18 73 09 */ bl __dt__6CTokenFv +/* 801B9B3C 001B6A9C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801B9B40 001B6AA0 3C 60 80 3D */ lis r3, lbl_803D1678@ha +/* 801B9B44 001B6AA4 38 A3 16 78 */ addi r5, r3, lbl_803D1678@l +/* 801B9B48 001B6AA8 38 61 00 10 */ addi r3, r1, 0x10 +/* 801B9B4C 001B6AAC 81 84 00 00 */ lwz r12, 0(r4) +/* 801B9B50 001B6AB0 38 A5 00 BE */ addi r5, r5, 0xbe +/* 801B9B54 001B6AB4 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801B9B58 001B6AB8 7D 89 03 A6 */ mtctr r12 +/* 801B9B5C 001B6ABC 4E 80 04 21 */ bctrl +/* 801B9B60 001B6AC0 3B BE 00 0C */ addi r29, r30, 0xc +/* 801B9B64 001B6AC4 38 81 00 10 */ addi r4, r1, 0x10 +/* 801B9B68 001B6AC8 7F A3 EB 78 */ mr r3, r29 +/* 801B9B6C 001B6ACC 48 18 73 3D */ bl __ct__6CTokenFRC6CToken +/* 801B9B70 001B6AD0 7F A3 EB 78 */ mr r3, r29 +/* 801B9B74 001B6AD4 48 18 72 99 */ bl GetObj__6CTokenFv +/* 801B9B78 001B6AD8 80 03 00 04 */ lwz r0, 4(r3) +/* 801B9B7C 001B6ADC 38 61 00 10 */ addi r3, r1, 0x10 +/* 801B9B80 001B6AE0 38 80 FF FF */ li r4, -1 +/* 801B9B84 001B6AE4 90 1D 00 08 */ stw r0, 8(r29) +/* 801B9B88 001B6AE8 48 18 72 B9 */ bl __dt__6CTokenFv +/* 801B9B8C 001B6AEC 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801B9B90 001B6AF0 3C 60 80 3D */ lis r3, lbl_803D1678@ha +/* 801B9B94 001B6AF4 38 A3 16 78 */ addi r5, r3, lbl_803D1678@l +/* 801B9B98 001B6AF8 38 61 00 08 */ addi r3, r1, 8 +/* 801B9B9C 001B6AFC 81 84 00 00 */ lwz r12, 0(r4) +/* 801B9BA0 001B6B00 38 A5 00 CA */ addi r5, r5, 0xca +/* 801B9BA4 001B6B04 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801B9BA8 001B6B08 7D 89 03 A6 */ mtctr r12 +/* 801B9BAC 001B6B0C 4E 80 04 21 */ bctrl +/* 801B9BB0 001B6B10 3B BE 00 18 */ addi r29, r30, 0x18 +/* 801B9BB4 001B6B14 38 81 00 08 */ addi r4, r1, 8 +/* 801B9BB8 001B6B18 7F A3 EB 78 */ mr r3, r29 +/* 801B9BBC 001B6B1C 48 18 72 ED */ bl __ct__6CTokenFRC6CToken +/* 801B9BC0 001B6B20 7F A3 EB 78 */ mr r3, r29 +/* 801B9BC4 001B6B24 48 18 72 49 */ bl GetObj__6CTokenFv +/* 801B9BC8 001B6B28 80 03 00 04 */ lwz r0, 4(r3) +/* 801B9BCC 001B6B2C 38 61 00 08 */ addi r3, r1, 8 +/* 801B9BD0 001B6B30 38 80 FF FF */ li r4, -1 +/* 801B9BD4 001B6B34 90 1D 00 08 */ stw r0, 8(r29) +/* 801B9BD8 001B6B38 48 18 72 69 */ bl __dt__6CTokenFv +/* 801B9BDC 001B6B3C 38 A0 00 00 */ li r5, 0 +/* 801B9BE0 001B6B40 C0 02 A9 C4 */ lfs f0, lbl_805AC6E4@sda21(r2) +/* 801B9BE4 001B6B44 90 BE 00 24 */ stw r5, 0x24(r30) +/* 801B9BE8 001B6B48 38 00 FF FF */ li r0, -1 +/* 801B9BEC 001B6B4C 7F C3 F3 78 */ mr r3, r30 +/* 801B9BF0 001B6B50 90 BE 00 28 */ stw r5, 0x28(r30) +/* 801B9BF4 001B6B54 D0 1E 00 68 */ stfs f0, 0x68(r30) +/* 801B9BF8 001B6B58 A0 9F 00 00 */ lhz r4, 0(r31) +/* 801B9BFC 001B6B5C B0 9E 00 6C */ sth r4, 0x6c(r30) +/* 801B9C00 001B6B60 A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 801B9C04 001B6B64 B0 9E 00 6E */ sth r4, 0x6e(r30) +/* 801B9C08 001B6B68 A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 801B9C0C 001B6B6C B0 9E 00 70 */ sth r4, 0x70(r30) +/* 801B9C10 001B6B70 90 1E 00 74 */ stw r0, 0x74(r30) +/* 801B9C14 001B6B74 90 BE 00 78 */ stw r5, 0x78(r30) +/* 801B9C18 001B6B78 90 BE 00 7C */ stw r5, 0x7c(r30) +/* 801B9C1C 001B6B7C 88 1E 00 80 */ lbz r0, 0x80(r30) +/* 801B9C20 001B6B80 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 801B9C24 001B6B84 98 1E 00 80 */ stb r0, 0x80(r30) +/* 801B9C28 001B6B88 4B FF F7 49 */ bl InitComboData__10CAuxWeaponFv +/* 801B9C2C 001B6B8C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801B9C30 001B6B90 7F C3 F3 78 */ mr r3, r30 +/* 801B9C34 001B6B94 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801B9C38 001B6B98 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801B9C3C 001B6B9C 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801B9C40 001B6BA0 7C 08 03 A6 */ mtlr r0 +/* 801B9C44 001B6BA4 38 21 00 30 */ addi r1, r1, 0x30 +/* 801B9C48 001B6BA8 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Weapons/CBeamProjectile.s b/asm/Kyoto_CWD/Weapons/CBeamProjectile.s new file mode 100644 index 00000000..96f072d2 --- /dev/null +++ b/asm/Kyoto_CWD/Weapons/CBeamProjectile.s @@ -0,0 +1,740 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global UpdateFx__15CBeamProjectileFRC12CTransform4ffR13CStateManager +UpdateFx__15CBeamProjectileFRC12CTransform4ffR13CStateManager: +/* 80198DE0 00195D40 94 21 F6 10 */ stwu r1, -0x9f0(r1) +/* 80198DE4 00195D44 7C 08 02 A6 */ mflr r0 +/* 80198DE8 00195D48 90 01 09 F4 */ stw r0, 0x9f4(r1) +/* 80198DEC 00195D4C DB E1 09 E0 */ stfd f31, 0x9e0(r1) +/* 80198DF0 00195D50 F3 E1 09 E8 */ psq_st f31, -1560(r1), 0, qr0 +/* 80198DF4 00195D54 93 E1 09 DC */ stw r31, 0x9dc(r1) +/* 80198DF8 00195D58 93 C1 09 D8 */ stw r30, 0x9d8(r1) +/* 80198DFC 00195D5C 93 A1 09 D4 */ stw r29, 0x9d4(r1) +/* 80198E00 00195D60 93 81 09 D0 */ stw r28, 0x9d0(r1) +/* 80198E04 00195D64 88 03 00 30 */ lbz r0, 0x30(r3) +/* 80198E08 00195D68 FF E0 08 90 */ fmr f31, f1 +/* 80198E0C 00195D6C 7C 7C 1B 78 */ mr r28, r3 +/* 80198E10 00195D70 7C 9D 23 78 */ mr r29, r4 +/* 80198E14 00195D74 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80198E18 00195D78 7C BE 2B 78 */ mr r30, r5 +/* 80198E1C 00195D7C 41 82 04 7C */ beq lbl_80199298 +/* 80198E20 00195D80 38 61 01 68 */ addi r3, r1, 0x168 +/* 80198E24 00195D84 48 17 9E 1D */ bl GetRotation__12CTransform4fCFv +/* 80198E28 00195D88 38 7C 00 34 */ addi r3, r28, 0x34 +/* 80198E2C 00195D8C 38 81 01 68 */ addi r4, r1, 0x168 +/* 80198E30 00195D90 48 17 9D 11 */ bl __as__12CTransform4fFRC12CTransform4f +/* 80198E34 00195D94 88 1C 00 E4 */ lbz r0, 0xe4(r28) +/* 80198E38 00195D98 38 60 00 01 */ li r3, 1 +/* 80198E3C 00195D9C 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 80198E40 00195DA0 98 1C 00 E4 */ stb r0, 0xe4(r28) +/* 80198E44 00195DA4 88 1C 00 E4 */ lbz r0, 0xe4(r28) +/* 80198E48 00195DA8 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 80198E4C 00195DAC 98 1C 00 E4 */ stb r0, 0xe4(r28) +/* 80198E50 00195DB0 88 1C 00 E4 */ lbz r0, 0xe4(r28) +/* 80198E54 00195DB4 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 80198E58 00195DB8 98 1C 00 E4 */ stb r0, 0xe4(r28) +/* 80198E5C 00195DBC 88 1C 04 64 */ lbz r0, 0x464(r28) +/* 80198E60 00195DC0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80198E64 00195DC4 41 82 00 28 */ beq lbl_80198E8C +/* 80198E68 00195DC8 C0 3C 03 08 */ lfs f1, 0x308(r28) +/* 80198E6C 00195DCC C0 1C 03 00 */ lfs f0, 0x300(r28) +/* 80198E70 00195DD0 EC 01 07 FA */ fmadds f0, f1, f31, f0 +/* 80198E74 00195DD4 D0 1C 03 00 */ stfs f0, 0x300(r28) +/* 80198E78 00195DD8 C0 1C 03 00 */ lfs f0, 0x300(r28) +/* 80198E7C 00195DDC C0 3C 02 EC */ lfs f1, 0x2ec(r28) +/* 80198E80 00195DE0 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80198E84 00195DE4 40 81 00 08 */ ble lbl_80198E8C +/* 80198E88 00195DE8 D0 3C 03 00 */ stfs f1, 0x300(r28) +lbl_80198E8C: +/* 80198E8C 00195DEC C0 1C 03 00 */ lfs f0, 0x300(r28) +/* 80198E90 00195DF0 38 00 00 00 */ li r0, 0 +/* 80198E94 00195DF4 38 61 00 64 */ addi r3, r1, 0x64 +/* 80198E98 00195DF8 38 81 00 58 */ addi r4, r1, 0x58 +/* 80198E9C 00195DFC D0 1C 03 04 */ stfs f0, 0x304(r28) +/* 80198EA0 00195E00 90 1C 02 F8 */ stw r0, 0x2f8(r28) +/* 80198EA4 00195E04 C0 7D 00 2C */ lfs f3, 0x2c(r29) +/* 80198EA8 00195E08 C0 5D 00 1C */ lfs f2, 0x1c(r29) +/* 80198EAC 00195E0C C0 3D 00 0C */ lfs f1, 0xc(r29) +/* 80198EB0 00195E10 C0 BD 00 24 */ lfs f5, 0x24(r29) +/* 80198EB4 00195E14 C0 9D 00 14 */ lfs f4, 0x14(r29) +/* 80198EB8 00195E18 C0 1D 00 04 */ lfs f0, 4(r29) +/* 80198EBC 00195E1C D0 21 00 7C */ stfs f1, 0x7c(r1) +/* 80198EC0 00195E20 D0 41 00 80 */ stfs f2, 0x80(r1) +/* 80198EC4 00195E24 D0 61 00 84 */ stfs f3, 0x84(r1) +/* 80198EC8 00195E28 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 80198ECC 00195E2C D0 81 00 5C */ stfs f4, 0x5c(r1) +/* 80198ED0 00195E30 D0 A1 00 60 */ stfs f5, 0x60(r1) +/* 80198ED4 00195E34 48 17 B9 7D */ bl AsNormalized__9CVector3fCFv +/* 80198ED8 00195E38 C0 FC 03 00 */ lfs f7, 0x300(r28) +/* 80198EDC 00195E3C 7F 83 E3 78 */ mr r3, r28 +/* 80198EE0 00195E40 C0 41 00 68 */ lfs f2, 0x68(r1) +/* 80198EE4 00195E44 38 81 00 70 */ addi r4, r1, 0x70 +/* 80198EE8 00195E48 C0 21 00 6C */ lfs f1, 0x6c(r1) +/* 80198EEC 00195E4C C0 01 00 64 */ lfs f0, 0x64(r1) +/* 80198EF0 00195E50 EC A7 00 B2 */ fmuls f5, f7, f2 +/* 80198EF4 00195E54 C0 DD 00 1C */ lfs f6, 0x1c(r29) +/* 80198EF8 00195E58 EC 67 00 72 */ fmuls f3, f7, f1 +/* 80198EFC 00195E5C C0 9D 00 2C */ lfs f4, 0x2c(r29) +/* 80198F00 00195E60 EC 27 00 32 */ fmuls f1, f7, f0 +/* 80198F04 00195E64 C0 5D 00 0C */ lfs f2, 0xc(r29) +/* 80198F08 00195E68 EC A6 28 2A */ fadds f5, f6, f5 +/* 80198F0C 00195E6C C0 01 00 7C */ lfs f0, 0x7c(r1) +/* 80198F10 00195E70 EC 64 18 2A */ fadds f3, f4, f3 +/* 80198F14 00195E74 EC 22 08 2A */ fadds f1, f2, f1 +/* 80198F18 00195E78 D0 A1 00 74 */ stfs f5, 0x74(r1) +/* 80198F1C 00195E7C D0 21 00 70 */ stfs f1, 0x70(r1) +/* 80198F20 00195E80 D0 61 00 78 */ stfs f3, 0x78(r1) +/* 80198F24 00195E84 D0 1C 02 98 */ stfs f0, 0x298(r28) +/* 80198F28 00195E88 C0 01 00 80 */ lfs f0, 0x80(r1) +/* 80198F2C 00195E8C D0 1C 02 9C */ stfs f0, 0x29c(r28) +/* 80198F30 00195E90 C0 01 00 84 */ lfs f0, 0x84(r1) +/* 80198F34 00195E94 D0 1C 02 A0 */ stfs f0, 0x2a0(r28) +/* 80198F38 00195E98 4B EB 9F 55 */ bl SetTranslation__6CActorFRC9CVector3f +/* 80198F3C 00195E9C C0 7C 02 F4 */ lfs f3, 0x2f4(r28) +/* 80198F40 00195EA0 38 61 00 F0 */ addi r3, r1, 0xf0 +/* 80198F44 00195EA4 C0 22 A6 C8 */ lfs f1, lbl_805AC3E8@sda21(r2) +/* 80198F48 00195EA8 38 81 00 4C */ addi r4, r1, 0x4c +/* 80198F4C 00195EAC FC 40 18 50 */ fneg f2, f3 +/* 80198F50 00195EB0 C0 1C 03 04 */ lfs f0, 0x304(r28) +/* 80198F54 00195EB4 D0 21 01 24 */ stfs f1, 0x124(r1) +/* 80198F58 00195EB8 38 A1 00 40 */ addi r5, r1, 0x40 +/* 80198F5C 00195EBC D0 41 01 20 */ stfs f2, 0x120(r1) +/* 80198F60 00195EC0 80 01 01 24 */ lwz r0, 0x124(r1) +/* 80198F64 00195EC4 80 C1 01 20 */ lwz r6, 0x120(r1) +/* 80198F68 00195EC8 D0 41 01 28 */ stfs f2, 0x128(r1) +/* 80198F6C 00195ECC 90 DC 03 54 */ stw r6, 0x354(r28) +/* 80198F70 00195ED0 80 C1 01 28 */ lwz r6, 0x128(r1) +/* 80198F74 00195ED4 D0 61 01 2C */ stfs f3, 0x12c(r1) +/* 80198F78 00195ED8 90 1C 03 58 */ stw r0, 0x358(r28) +/* 80198F7C 00195EDC 80 01 01 2C */ lwz r0, 0x12c(r1) +/* 80198F80 00195EE0 D0 01 01 30 */ stfs f0, 0x130(r1) +/* 80198F84 00195EE4 90 DC 03 5C */ stw r6, 0x35c(r28) +/* 80198F88 00195EE8 80 C1 01 30 */ lwz r6, 0x130(r1) +/* 80198F8C 00195EEC D0 61 01 34 */ stfs f3, 0x134(r1) +/* 80198F90 00195EF0 90 1C 03 60 */ stw r0, 0x360(r28) +/* 80198F94 00195EF4 80 01 01 34 */ lwz r0, 0x134(r1) +/* 80198F98 00195EF8 90 DC 03 64 */ stw r6, 0x364(r28) +/* 80198F9C 00195EFC 90 1C 03 68 */ stw r0, 0x368(r28) +/* 80198FA0 00195F00 C0 5C 02 F4 */ lfs f2, 0x2f4(r28) +/* 80198FA4 00195F04 C0 1C 03 00 */ lfs f0, 0x300(r28) +/* 80198FA8 00195F08 FC 60 10 50 */ fneg f3, f2 +/* 80198FAC 00195F0C D0 41 00 40 */ stfs f2, 0x40(r1) +/* 80198FB0 00195F10 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 80198FB4 00195F14 D0 41 00 48 */ stfs f2, 0x48(r1) +/* 80198FB8 00195F18 D0 61 00 4C */ stfs f3, 0x4c(r1) +/* 80198FBC 00195F1C D0 21 00 50 */ stfs f1, 0x50(r1) +/* 80198FC0 00195F20 D0 61 00 54 */ stfs f3, 0x54(r1) +/* 80198FC4 00195F24 48 19 F5 45 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 80198FC8 00195F28 7C 64 1B 78 */ mr r4, r3 +/* 80198FCC 00195F2C 7F A5 EB 78 */ mr r5, r29 +/* 80198FD0 00195F30 38 61 01 08 */ addi r3, r1, 0x108 +/* 80198FD4 00195F34 48 19 E9 29 */ bl GetTransformedAABox__6CAABoxCFRC12CTransform4f +/* 80198FD8 00195F38 80 C1 01 08 */ lwz r6, 0x108(r1) +/* 80198FDC 00195F3C 38 00 00 00 */ li r0, 0 +/* 80198FE0 00195F40 80 A1 01 0C */ lwz r5, 0x10c(r1) +/* 80198FE4 00195F44 38 60 00 00 */ li r3, 0 +/* 80198FE8 00195F48 38 80 00 01 */ li r4, 1 +/* 80198FEC 00195F4C 90 DC 03 6C */ stw r6, 0x36c(r28) +/* 80198FF0 00195F50 90 BC 03 70 */ stw r5, 0x370(r28) +/* 80198FF4 00195F54 80 A1 01 10 */ lwz r5, 0x110(r1) +/* 80198FF8 00195F58 90 BC 03 74 */ stw r5, 0x374(r28) +/* 80198FFC 00195F5C 80 C1 01 14 */ lwz r6, 0x114(r1) +/* 80199000 00195F60 80 A1 01 18 */ lwz r5, 0x118(r1) +/* 80199004 00195F64 90 DC 03 78 */ stw r6, 0x378(r28) +/* 80199008 00195F68 90 BC 03 7C */ stw r5, 0x37c(r28) +/* 8019900C 00195F6C 80 A1 01 1C */ lwz r5, 0x11c(r1) +/* 80199010 00195F70 90 BC 03 80 */ stw r5, 0x380(r28) +/* 80199014 00195F74 A0 CD A3 8C */ lhz r6, lbl_805A8F4C@sda21(r13) +/* 80199018 00195F78 80 AD 8F D0 */ lwz r5, lbl_805A7B90@sda21(r13) +/* 8019901C 00195F7C B0 C1 00 1C */ sth r6, 0x1c(r1) +/* 80199020 00195F80 90 01 01 C8 */ stw r0, 0x1c8(r1) +/* 80199024 00195F84 48 1F 0E D1 */ bl __shl2i +/* 80199028 00195F88 39 20 FF FF */ li r9, -1 +/* 8019902C 00195F8C 39 00 00 00 */ li r8, 0 +/* 80199030 00195F90 38 00 00 02 */ li r0, 2 +/* 80199034 00195F94 90 81 00 E4 */ stw r4, 0xe4(r1) +/* 80199038 00195F98 7F 87 E3 78 */ mr r7, r28 +/* 8019903C 00195F9C 38 81 01 C8 */ addi r4, r1, 0x1c8 +/* 80199040 00195FA0 90 61 00 E0 */ stw r3, 0xe0(r1) +/* 80199044 00195FA4 7F C3 F3 78 */ mr r3, r30 +/* 80199048 00195FA8 38 BC 03 6C */ addi r5, r28, 0x36c +/* 8019904C 00195FAC 38 C1 00 D8 */ addi r6, r1, 0xd8 +/* 80199050 00195FB0 91 21 00 DC */ stw r9, 0xdc(r1) +/* 80199054 00195FB4 91 01 00 D8 */ stw r8, 0xd8(r1) +/* 80199058 00195FB8 90 01 00 E8 */ stw r0, 0xe8(r1) +/* 8019905C 00195FBC 4B EB 36 C5 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" +/* 80199060 00195FC0 C0 3C 03 00 */ lfs f1, 0x300(r28) +/* 80199064 00195FC4 7F 84 E3 78 */ mr r4, r28 +/* 80199068 00195FC8 7F C9 F3 78 */ mr r9, r30 +/* 8019906C 00195FCC 38 61 01 38 */ addi r3, r1, 0x138 +/* 80199070 00195FD0 38 A1 00 1C */ addi r5, r1, 0x1c +/* 80199074 00195FD4 38 C1 00 7C */ addi r6, r1, 0x7c +/* 80199078 00195FD8 38 E1 00 70 */ addi r7, r1, 0x70 +/* 8019907C 00195FDC 39 01 01 C8 */ addi r8, r1, 0x1c8 +/* 80199080 00195FE0 4B E9 F6 41 */ bl "RayCollisionCheckWithWorld__15CGameProjectileFR9TUniqueIdRC9CVector3fRC9CVector3ffRQ24rstl32reserved_vector<9TUniqueId,1024>R13CStateManager" +/* 80199084 00195FE4 C0 E1 01 38 */ lfs f7, 0x138(r1) +/* 80199088 00195FE8 7F C3 F3 78 */ mr r3, r30 +/* 8019908C 00195FEC C0 C1 01 3C */ lfs f6, 0x13c(r1) +/* 80199090 00195FF0 3B E1 01 9C */ addi r31, r1, 0x19c +/* 80199094 00195FF4 C0 A1 01 40 */ lfs f5, 0x140(r1) +/* 80199098 00195FF8 38 81 00 18 */ addi r4, r1, 0x18 +/* 8019909C 00195FFC C0 81 01 44 */ lfs f4, 0x144(r1) +/* 801990A0 00196000 C0 61 01 48 */ lfs f3, 0x148(r1) +/* 801990A4 00196004 C0 41 01 4C */ lfs f2, 0x14c(r1) +/* 801990A8 00196008 C0 21 01 50 */ lfs f1, 0x150(r1) +/* 801990AC 0019600C C0 01 01 54 */ lfs f0, 0x154(r1) +/* 801990B0 00196010 88 E1 01 58 */ lbz r7, 0x158(r1) +/* 801990B4 00196014 80 A1 01 60 */ lwz r5, 0x160(r1) +/* 801990B8 00196018 80 C1 01 64 */ lwz r6, 0x164(r1) +/* 801990BC 0019601C A0 01 00 1C */ lhz r0, 0x1c(r1) +/* 801990C0 00196020 D0 E1 01 98 */ stfs f7, 0x198(r1) +/* 801990C4 00196024 D0 C1 01 9C */ stfs f6, 0x19c(r1) +/* 801990C8 00196028 D0 A1 01 A0 */ stfs f5, 0x1a0(r1) +/* 801990CC 0019602C D0 81 01 A4 */ stfs f4, 0x1a4(r1) +/* 801990D0 00196030 D0 61 01 A8 */ stfs f3, 0x1a8(r1) +/* 801990D4 00196034 D0 41 01 AC */ stfs f2, 0x1ac(r1) +/* 801990D8 00196038 D0 21 01 B0 */ stfs f1, 0x1b0(r1) +/* 801990DC 0019603C D0 01 01 B4 */ stfs f0, 0x1b4(r1) +/* 801990E0 00196040 98 E1 01 B8 */ stb r7, 0x1b8(r1) +/* 801990E4 00196044 90 C1 01 C4 */ stw r6, 0x1c4(r1) +/* 801990E8 00196048 90 A1 01 C0 */ stw r5, 0x1c0(r1) +/* 801990EC 0019604C B0 01 00 18 */ sth r0, 0x18(r1) +/* 801990F0 00196050 4B EB 34 85 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801990F4 00196054 7C 64 1B 78 */ mr r4, r3 +/* 801990F8 00196058 38 61 00 20 */ addi r3, r1, 0x20 +/* 801990FC 0019605C 4B F1 6B 95 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 80199100 00196060 80 03 00 04 */ lwz r0, 4(r3) +/* 80199104 00196064 28 00 00 00 */ cmplwi r0, 0 +/* 80199108 00196068 41 82 00 50 */ beq lbl_80199158 +/* 8019910C 0019606C A0 01 00 1C */ lhz r0, 0x1c(r1) +/* 80199110 00196070 7F 83 E3 78 */ mr r3, r28 +/* 80199114 00196074 38 A1 01 98 */ addi r5, r1, 0x198 +/* 80199118 00196078 38 C1 00 14 */ addi r6, r1, 0x14 +/* 8019911C 0019607C B0 01 00 14 */ sth r0, 0x14(r1) +/* 80199120 00196080 38 80 00 01 */ li r4, 1 +/* 80199124 00196084 48 00 01 9D */ bl SetCollisionResultData__15CBeamProjectileFQ215CBeamProjectile11EDamageTypeRC14CRayCastResult +/* 80199128 00196088 88 1C 04 64 */ lbz r0, 0x464(r28) +/* 8019912C 0019608C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80199130 00196090 41 82 01 08 */ beq lbl_80199238 +/* 80199134 00196094 FC 20 F8 90 */ fmr f1, f31 +/* 80199138 00196098 38 61 00 BC */ addi r3, r1, 0xbc +/* 8019913C 0019609C 38 9C 01 2C */ addi r4, r28, 0x12c +/* 80199140 001960A0 4B F2 A3 09 */ bl __ct__11CDamageInfoFRC11CDamageInfof +/* 80199144 001960A4 7F 83 E3 78 */ mr r3, r28 +/* 80199148 001960A8 7F C4 F3 78 */ mr r4, r30 +/* 8019914C 001960AC 38 A1 00 BC */ addi r5, r1, 0xbc +/* 80199150 001960B0 4B E9 F1 25 */ bl ApplyDamageToActors__15CGameProjectileFR13CStateManager +/* 80199154 001960B4 48 00 00 E4 */ b lbl_80199238 +lbl_80199158: +/* 80199158 001960B8 88 01 01 B8 */ lbz r0, 0x1b8(r1) +/* 8019915C 001960BC 28 00 00 00 */ cmplwi r0, 0 +/* 80199160 001960C0 41 82 00 90 */ beq lbl_801991F0 +/* 80199164 001960C4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80199168 001960C8 7F 83 E3 78 */ mr r3, r28 +/* 8019916C 001960CC 38 A1 01 98 */ addi r5, r1, 0x198 +/* 80199170 001960D0 38 C1 00 10 */ addi r6, r1, 0x10 +/* 80199174 001960D4 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80199178 001960D8 38 80 00 02 */ li r4, 2 +/* 8019917C 001960DC 48 00 01 45 */ bl SetCollisionResultData__15CBeamProjectileFQ215CBeamProjectile11EDamageTypeRC14CRayCastResult +/* 80199180 001960E0 88 1C 04 64 */ lbz r0, 0x464(r28) +/* 80199184 001960E4 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80199188 001960E8 41 82 00 B0 */ beq lbl_80199238 +/* 8019918C 001960EC 80 1C 00 F8 */ lwz r0, 0xf8(r28) +/* 80199190 001960F0 FC 20 F8 90 */ fmr f1, f31 +/* 80199194 001960F4 80 BC 00 FC */ lwz r5, 0xfc(r28) +/* 80199198 001960F8 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 8019919C 001960FC 38 9C 01 2C */ addi r4, r28, 0x12c +/* 801991A0 00196100 90 A1 00 8C */ stw r5, 0x8c(r1) +/* 801991A4 00196104 90 01 00 88 */ stw r0, 0x88(r1) +/* 801991A8 00196108 80 1C 01 00 */ lwz r0, 0x100(r28) +/* 801991AC 0019610C 80 BC 01 04 */ lwz r5, 0x104(r28) +/* 801991B0 00196110 90 A1 00 94 */ stw r5, 0x94(r1) +/* 801991B4 00196114 90 01 00 90 */ stw r0, 0x90(r1) +/* 801991B8 00196118 80 1C 01 08 */ lwz r0, 0x108(r28) +/* 801991BC 0019611C 90 01 00 98 */ stw r0, 0x98(r1) +/* 801991C0 00196120 4B F2 A2 89 */ bl __ct__11CDamageInfoFRC11CDamageInfof +/* 801991C4 00196124 A0 1C 00 EC */ lhz r0, 0xec(r28) +/* 801991C8 00196128 7F C3 F3 78 */ mr r3, r30 +/* 801991CC 0019612C 7F 85 E3 78 */ mr r5, r28 +/* 801991D0 00196130 7F E6 FB 78 */ mr r6, r31 +/* 801991D4 00196134 B0 01 00 08 */ sth r0, 8(r1) +/* 801991D8 00196138 38 81 00 0C */ addi r4, r1, 0xc +/* 801991DC 0019613C 38 E1 00 A0 */ addi r7, r1, 0xa0 +/* 801991E0 00196140 39 01 00 88 */ addi r8, r1, 0x88 +/* 801991E4 00196144 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801991E8 00196148 4B EA FA C5 */ bl ApplyDamageToWorld__13CStateManagerF9TUniqueIdRC6CActorRC9CVector3fRC11CDamageInfoRC15CMaterialFilter +/* 801991EC 0019614C 48 00 00 4C */ b lbl_80199238 +lbl_801991F0: +/* 801991F0 00196150 C0 3C 02 F4 */ lfs f1, 0x2f4(r28) +/* 801991F4 00196154 7F A4 EB 78 */ mr r4, r29 +/* 801991F8 00196158 C0 1C 03 04 */ lfs f0, 0x304(r28) +/* 801991FC 0019615C 38 61 00 34 */ addi r3, r1, 0x34 +/* 80199200 00196160 38 A1 00 28 */ addi r5, r1, 0x28 +/* 80199204 00196164 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 80199208 00196168 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 8019920C 0019616C D0 21 00 30 */ stfs f1, 0x30(r1) +/* 80199210 00196170 48 17 98 D9 */ bl __ml__12CTransform4fCFRC9CVector3f +/* 80199214 00196174 C0 01 00 34 */ lfs f0, 0x34(r1) +/* 80199218 00196178 7F 83 E3 78 */ mr r3, r28 +/* 8019921C 0019617C 38 9C 03 18 */ addi r4, r28, 0x318 +/* 80199220 00196180 D0 1C 03 18 */ stfs f0, 0x318(r28) +/* 80199224 00196184 C0 01 00 38 */ lfs f0, 0x38(r1) +/* 80199228 00196188 D0 1C 03 1C */ stfs f0, 0x31c(r28) +/* 8019922C 0019618C C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 80199230 00196190 D0 1C 03 20 */ stfs f0, 0x320(r28) +/* 80199234 00196194 4B EB 9C 59 */ bl SetTranslation__6CActorFRC9CVector3f +lbl_80199238: +/* 80199238 00196198 7F A4 EB 78 */ mr r4, r29 +/* 8019923C 0019619C 38 7C 03 24 */ addi r3, r28, 0x324 +/* 80199240 001961A0 48 17 99 01 */ bl __as__12CTransform4fFRC12CTransform4f +/* 80199244 001961A4 80 A1 01 C8 */ lwz r5, 0x1c8(r1) +/* 80199248 001961A8 38 60 00 00 */ li r3, 0 +/* 8019924C 001961AC 2C 05 00 00 */ cmpwi r5, 0 +/* 80199250 001961B0 40 81 00 40 */ ble lbl_80199290 +/* 80199254 001961B4 2C 05 00 08 */ cmpwi r5, 8 +/* 80199258 001961B8 38 85 FF F8 */ addi r4, r5, -8 +/* 8019925C 001961BC 40 81 00 20 */ ble lbl_8019927C +/* 80199260 001961C0 38 04 00 07 */ addi r0, r4, 7 +/* 80199264 001961C4 54 00 E8 FE */ srwi r0, r0, 3 +/* 80199268 001961C8 7C 09 03 A6 */ mtctr r0 +/* 8019926C 001961CC 2C 04 00 00 */ cmpwi r4, 0 +/* 80199270 001961D0 40 81 00 0C */ ble lbl_8019927C +lbl_80199274: +/* 80199274 001961D4 38 63 00 08 */ addi r3, r3, 8 +/* 80199278 001961D8 42 00 FF FC */ bdnz lbl_80199274 +lbl_8019927C: +/* 8019927C 001961DC 7C 03 28 50 */ subf r0, r3, r5 +/* 80199280 001961E0 7C 09 03 A6 */ mtctr r0 +/* 80199284 001961E4 7C 03 28 00 */ cmpw r3, r5 +/* 80199288 001961E8 40 80 00 08 */ bge lbl_80199290 +lbl_8019928C: +/* 8019928C 001961EC 42 00 00 00 */ bdnz lbl_8019928C +lbl_80199290: +/* 80199290 001961F0 38 00 00 00 */ li r0, 0 +/* 80199294 001961F4 90 01 01 C8 */ stw r0, 0x1c8(r1) +lbl_80199298: +/* 80199298 001961F8 E3 E1 09 E8 */ psq_l f31, -1560(r1), 0, qr0 +/* 8019929C 001961FC 80 01 09 F4 */ lwz r0, 0x9f4(r1) +/* 801992A0 00196200 CB E1 09 E0 */ lfd f31, 0x9e0(r1) +/* 801992A4 00196204 83 E1 09 DC */ lwz r31, 0x9dc(r1) +/* 801992A8 00196208 83 C1 09 D8 */ lwz r30, 0x9d8(r1) +/* 801992AC 0019620C 83 A1 09 D4 */ lwz r29, 0x9d4(r1) +/* 801992B0 00196210 83 81 09 D0 */ lwz r28, 0x9d0(r1) +/* 801992B4 00196214 7C 08 03 A6 */ mtlr r0 +/* 801992B8 00196218 38 21 09 F0 */ addi r1, r1, 0x9f0 +/* 801992BC 0019621C 4E 80 00 20 */ blr + +.global SetCollisionResultData__15CBeamProjectileFQ215CBeamProjectile11EDamageTypeRC14CRayCastResult +SetCollisionResultData__15CBeamProjectileFQ215CBeamProjectile11EDamageTypeRC14CRayCastResult: +/* 801992C0 00196220 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801992C4 00196224 7C 08 02 A6 */ mflr r0 +/* 801992C8 00196228 2C 04 00 01 */ cmpwi r4, 1 +/* 801992CC 0019622C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801992D0 00196230 90 83 02 F8 */ stw r4, 0x2f8(r3) +/* 801992D4 00196234 C0 05 00 00 */ lfs f0, 0(r5) +/* 801992D8 00196238 D0 03 03 04 */ stfs f0, 0x304(r3) +/* 801992DC 0019623C C0 05 00 04 */ lfs f0, 4(r5) +/* 801992E0 00196240 D0 03 03 18 */ stfs f0, 0x318(r3) +/* 801992E4 00196244 C0 05 00 08 */ lfs f0, 8(r5) +/* 801992E8 00196248 D0 03 03 1C */ stfs f0, 0x31c(r3) +/* 801992EC 0019624C C0 05 00 0C */ lfs f0, 0xc(r5) +/* 801992F0 00196250 D0 03 03 20 */ stfs f0, 0x320(r3) +/* 801992F4 00196254 C0 05 00 10 */ lfs f0, 0x10(r5) +/* 801992F8 00196258 D0 03 03 0C */ stfs f0, 0x30c(r3) +/* 801992FC 0019625C C0 05 00 14 */ lfs f0, 0x14(r5) +/* 80199300 00196260 D0 03 03 10 */ stfs f0, 0x310(r3) +/* 80199304 00196264 C0 05 00 18 */ lfs f0, 0x18(r5) +/* 80199308 00196268 D0 03 03 14 */ stfs f0, 0x314(r3) +/* 8019930C 0019626C 40 82 00 08 */ bne lbl_80199314 +/* 80199310 00196270 48 00 00 08 */ b lbl_80199318 +lbl_80199314: +/* 80199314 00196274 38 CD A3 8C */ addi r6, r13, lbl_805A8F4C@sda21 +lbl_80199318: +/* 80199318 00196278 A0 06 00 00 */ lhz r0, 0(r6) +/* 8019931C 0019627C 38 85 00 04 */ addi r4, r5, 4 +/* 80199320 00196280 B0 03 02 FE */ sth r0, 0x2fe(r3) +/* 80199324 00196284 4B EB 9B 69 */ bl SetTranslation__6CActorFRC9CVector3f +/* 80199328 00196288 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8019932C 0019628C 7C 08 03 A6 */ mtlr r0 +/* 80199330 00196290 38 21 00 10 */ addi r1, r1, 0x10 +/* 80199334 00196294 4E 80 00 20 */ blr + +.global ResetBeam__15CBeamProjectileFR13CStateManagerb +ResetBeam__15CBeamProjectileFR13CStateManagerb: +/* 80199338 00196298 88 03 04 64 */ lbz r0, 0x464(r3) +/* 8019933C 0019629C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80199340 001962A0 4D 82 00 20 */ beqlr +/* 80199344 001962A4 C0 02 A6 C8 */ lfs f0, lbl_805AC3E8@sda21(r2) +/* 80199348 001962A8 D0 03 03 00 */ stfs f0, 0x300(r3) +/* 8019934C 001962AC 4E 80 00 20 */ blr + +.global nullsub_142 +nullsub_142: +/* 80199350 001962B0 4E 80 00 20 */ blr + +.global Accept__15CBeamProjectileFR8IVisitor +Accept__15CBeamProjectileFR8IVisitor: +/* 80199354 001962B4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80199358 001962B8 7C 08 02 A6 */ mflr r0 +/* 8019935C 001962BC 90 01 00 14 */ stw r0, 0x14(r1) +/* 80199360 001962C0 7C 60 1B 78 */ mr r0, r3 +/* 80199364 001962C4 7C 83 23 78 */ mr r3, r4 +/* 80199368 001962C8 81 84 00 00 */ lwz r12, 0(r4) +/* 8019936C 001962CC 7C 04 03 78 */ mr r4, r0 +/* 80199370 001962D0 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 80199374 001962D4 7D 89 03 A6 */ mtctr r12 +/* 80199378 001962D8 4E 80 04 21 */ bctrl +/* 8019937C 001962DC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80199380 001962E0 7C 08 03 A6 */ mtlr r0 +/* 80199384 001962E4 38 21 00 10 */ addi r1, r1, 0x10 +/* 80199388 001962E8 4E 80 00 20 */ blr + +.global CalculateRenderBounds__15CBeamProjectileFv +CalculateRenderBounds__15CBeamProjectileFv: +/* 8019938C 001962EC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80199390 001962F0 7C 08 02 A6 */ mflr r0 +/* 80199394 001962F4 90 01 00 34 */ stw r0, 0x34(r1) +/* 80199398 001962F8 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8019939C 001962FC 7C 7F 1B 78 */ mr r31, r3 +/* 801993A0 00196300 38 61 00 08 */ addi r3, r1, 8 +/* 801993A4 00196304 38 9F 03 54 */ addi r4, r31, 0x354 +/* 801993A8 00196308 38 BF 03 24 */ addi r5, r31, 0x324 +/* 801993AC 0019630C 48 19 E5 51 */ bl GetTransformedAABox__6CAABoxCFRC12CTransform4f +/* 801993B0 00196310 80 61 00 08 */ lwz r3, 8(r1) +/* 801993B4 00196314 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801993B8 00196318 90 7F 00 9C */ stw r3, 0x9c(r31) +/* 801993BC 0019631C 90 1F 00 A0 */ stw r0, 0xa0(r31) +/* 801993C0 00196320 80 01 00 10 */ lwz r0, 0x10(r1) +/* 801993C4 00196324 90 1F 00 A4 */ stw r0, 0xa4(r31) +/* 801993C8 00196328 80 61 00 14 */ lwz r3, 0x14(r1) +/* 801993CC 0019632C 80 01 00 18 */ lwz r0, 0x18(r1) +/* 801993D0 00196330 90 7F 00 A8 */ stw r3, 0xa8(r31) +/* 801993D4 00196334 90 1F 00 AC */ stw r0, 0xac(r31) +/* 801993D8 00196338 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 801993DC 0019633C 90 1F 00 B0 */ stw r0, 0xb0(r31) +/* 801993E0 00196340 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801993E4 00196344 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801993E8 00196348 7C 08 03 A6 */ mtlr r0 +/* 801993EC 0019634C 38 21 00 30 */ addi r1, r1, 0x30 +/* 801993F0 00196350 4E 80 00 20 */ blr + +.global GetTouchBounds__15CBeamProjectileCFv +GetTouchBounds__15CBeamProjectileCFv: +/* 801993F4 00196354 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801993F8 00196358 88 04 00 30 */ lbz r0, 0x30(r4) +/* 801993FC 0019635C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80199400 00196360 41 82 00 10 */ beq lbl_80199410 +/* 80199404 00196364 88 04 04 64 */ lbz r0, 0x464(r4) +/* 80199408 00196368 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8019940C 0019636C 40 82 00 10 */ bne lbl_8019941C +lbl_80199410: +/* 80199410 00196370 38 00 00 00 */ li r0, 0 +/* 80199414 00196374 98 03 00 18 */ stb r0, 0x18(r3) +/* 80199418 00196378 48 00 00 6C */ b lbl_80199484 +lbl_8019941C: +/* 8019941C 0019637C C0 C4 00 60 */ lfs f6, 0x60(r4) +/* 80199420 00196380 28 03 00 00 */ cmplwi r3, 0 +/* 80199424 00196384 C0 E2 84 00 */ lfs f7, lbl_805AA120@sda21(r2) +/* 80199428 00196388 38 00 00 01 */ li r0, 1 +/* 8019942C 0019638C C0 24 00 50 */ lfs f1, 0x50(r4) +/* 80199430 00196390 C0 04 00 40 */ lfs f0, 0x40(r4) +/* 80199434 00196394 EC 66 38 28 */ fsubs f3, f6, f7 +/* 80199438 00196398 EC 81 38 28 */ fsubs f4, f1, f7 +/* 8019943C 0019639C EC A0 38 28 */ fsubs f5, f0, f7 +/* 80199440 001963A0 98 03 00 18 */ stb r0, 0x18(r3) +/* 80199444 001963A4 EC 47 00 2A */ fadds f2, f7, f0 +/* 80199448 001963A8 EC 27 08 2A */ fadds f1, f7, f1 +/* 8019944C 001963AC D0 81 00 0C */ stfs f4, 0xc(r1) +/* 80199450 001963B0 EC 07 30 2A */ fadds f0, f7, f6 +/* 80199454 001963B4 D0 A1 00 08 */ stfs f5, 8(r1) +/* 80199458 001963B8 D0 61 00 10 */ stfs f3, 0x10(r1) +/* 8019945C 001963BC D0 41 00 14 */ stfs f2, 0x14(r1) +/* 80199460 001963C0 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 80199464 001963C4 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 80199468 001963C8 41 82 00 1C */ beq lbl_80199484 +/* 8019946C 001963CC D0 A3 00 00 */ stfs f5, 0(r3) +/* 80199470 001963D0 D0 83 00 04 */ stfs f4, 4(r3) +/* 80199474 001963D4 D0 63 00 08 */ stfs f3, 8(r3) +/* 80199478 001963D8 D0 43 00 0C */ stfs f2, 0xc(r3) +/* 8019947C 001963DC D0 23 00 10 */ stfs f1, 0x10(r3) +/* 80199480 001963E0 D0 03 00 14 */ stfs f0, 0x14(r3) +lbl_80199484: +/* 80199484 001963E4 38 21 00 20 */ addi r1, r1, 0x20 +/* 80199488 001963E8 4E 80 00 20 */ blr + +.global "__ct__15CBeamProjectileFRC28TToken<18CWeaponDescription>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>11EWeaponTypeRC12CTransform4fiff14EMaterialTypesRC11CDamageInfo9TUniqueId9TUniqueIdUib" +"__ct__15CBeamProjectileFRC28TToken<18CWeaponDescription>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>11EWeaponTypeRC12CTransform4fiff14EMaterialTypesRC11CDamageInfo9TUniqueId9TUniqueIdUib": +/* 8019948C 001963EC 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 80199490 001963F0 7C 08 02 A6 */ mflr r0 +/* 80199494 001963F4 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 80199498 001963F8 DB E1 00 B0 */ stfd f31, 0xb0(r1) +/* 8019949C 001963FC F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0 +/* 801994A0 00196400 DB C1 00 A0 */ stfd f30, 0xa0(r1) +/* 801994A4 00196404 F3 C1 00 A8 */ psq_st f30, 168(r1), 0, qr0 +/* 801994A8 00196408 BE 61 00 6C */ stmw r19, 0x6c(r1) +/* 801994AC 0019640C C0 02 A6 CC */ lfs f0, lbl_805AC3EC@sda21(r2) +/* 801994B0 00196410 38 00 00 00 */ li r0, 0 +/* 801994B4 00196414 A2 ED A3 8C */ lhz r23, lbl_805A8F4C@sda21(r13) +/* 801994B8 00196418 7C BB 2B 78 */ mr r27, r5 +/* 801994BC 0019641C 98 01 00 4C */ stb r0, 0x4c(r1) +/* 801994C0 00196420 7C DC 33 78 */ mr r28, r6 +/* 801994C4 00196424 80 A1 00 D0 */ lwz r5, 0xd0(r1) +/* 801994C8 00196428 7C FD 3B 78 */ mr r29, r7 +/* 801994CC 0019642C B2 E1 00 30 */ sth r23, 0x30(r1) +/* 801994D0 00196430 7D 1E 43 78 */ mr r30, r8 +/* 801994D4 00196434 80 C1 00 CC */ lwz r6, 0xcc(r1) +/* 801994D8 00196438 3A 61 00 38 */ addi r19, r1, 0x38 +/* 801994DC 0019643C D0 01 00 50 */ stfs f0, 0x50(r1) +/* 801994E0 00196440 3A 81 00 3C */ addi r20, r1, 0x3c +/* 801994E4 00196444 81 81 00 C8 */ lwz r12, 0xc8(r1) +/* 801994E8 00196448 3A A1 00 34 */ addi r21, r1, 0x34 +/* 801994EC 0019644C D0 01 00 54 */ stfs f0, 0x54(r1) +/* 801994F0 00196450 3A C1 00 30 */ addi r22, r1, 0x30 +/* 801994F4 00196454 81 61 00 D4 */ lwz r11, 0xd4(r1) +/* 801994F8 00196458 3A E1 00 50 */ addi r23, r1, 0x50 +/* 801994FC 0019645C D0 01 00 58 */ stfs f0, 0x58(r1) +/* 80199500 00196460 3B 01 00 40 */ addi r24, r1, 0x40 +/* 80199504 00196464 A3 22 C5 FC */ lhz r25, lbl_805AE31C@sda21(r2) +/* 80199508 00196468 FF C0 08 90 */ fmr f30, f1 +/* 8019950C 0019646C A0 A5 00 00 */ lhz r5, 0(r5) +/* 80199510 00196470 FF E0 10 90 */ fmr f31, f2 +/* 80199514 00196474 8B E1 00 DB */ lbz r31, 0xdb(r1) +/* 80199518 00196478 7C 7A 1B 78 */ mr r26, r3 +/* 8019951C 0019647C B0 A1 00 34 */ sth r5, 0x34(r1) +/* 80199520 00196480 7C 85 23 78 */ mr r5, r4 +/* 80199524 00196484 7F 87 E3 78 */ mr r7, r28 +/* 80199528 00196488 80 86 00 00 */ lwz r4, 0(r6) +/* 8019952C 0019648C 7F 66 DB 78 */ mr r6, r27 +/* 80199530 00196490 7F A8 EB 78 */ mr r8, r29 +/* 80199534 00196494 90 81 00 3C */ stw r4, 0x3c(r1) +/* 80199538 00196498 38 80 00 00 */ li r4, 0 +/* 8019953C 0019649C A1 8C 00 00 */ lhz r12, 0(r12) +/* 80199540 001964A0 B1 81 00 38 */ sth r12, 0x38(r1) +/* 80199544 001964A4 92 61 00 08 */ stw r19, 8(r1) +/* 80199548 001964A8 92 81 00 0C */ stw r20, 0xc(r1) +/* 8019954C 001964AC 92 A1 00 10 */ stw r21, 0x10(r1) +/* 80199550 001964B0 92 C1 00 14 */ stw r22, 0x14(r1) +/* 80199554 001964B4 91 61 00 18 */ stw r11, 0x18(r1) +/* 80199558 001964B8 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8019955C 001964BC 92 E1 00 20 */ stw r23, 0x20(r1) +/* 80199560 001964C0 93 01 00 24 */ stw r24, 0x24(r1) +/* 80199564 001964C4 93 21 00 28 */ stw r25, 0x28(r1) +/* 80199568 001964C8 90 01 00 2C */ stw r0, 0x2c(r1) +/* 8019956C 001964CC 4B EA 0F 19 */ bl "__ct__15CGameProjectileFbRC28TToken<18CWeaponDescription>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>11EWeaponTypeRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId7TAreaId9TUniqueId9TUniqueIdUibRC9CVector3fRCQ24rstl50optional_object<31TLockedToken<15CGenDescription>>sb" +/* 80199570 001964D0 88 01 00 4C */ lbz r0, 0x4c(r1) +/* 80199574 001964D4 28 00 00 00 */ cmplwi r0, 0 +/* 80199578 001964D8 41 82 00 1C */ beq lbl_80199594 +/* 8019957C 001964DC 34 61 00 40 */ addic. r3, r1, 0x40 +/* 80199580 001964E0 41 82 00 14 */ beq lbl_80199594 +/* 80199584 001964E4 28 03 00 00 */ cmplwi r3, 0 +/* 80199588 001964E8 41 82 00 0C */ beq lbl_80199594 +/* 8019958C 001964EC 38 80 00 00 */ li r4, 0 +/* 80199590 001964F0 48 1A 78 B1 */ bl __dt__6CTokenFv +lbl_80199594: +/* 80199594 001964F4 38 00 00 00 */ li r0, 0 +/* 80199598 001964F8 3C 60 80 3E */ lis r3, lbl_803E4648@ha +/* 8019959C 001964FC 98 01 00 4C */ stb r0, 0x4c(r1) +/* 801995A0 00196500 38 03 46 48 */ addi r0, r3, lbl_803E4648@l +/* 801995A4 00196504 7F C3 F3 78 */ mr r3, r30 +/* 801995A8 00196508 90 1A 00 00 */ stw r0, 0(r26) +/* 801995AC 0019650C 48 1F 38 71 */ bl abs +/* 801995B0 00196510 90 7A 02 E8 */ stw r3, 0x2e8(r26) +/* 801995B4 00196514 3C 60 43 30 */ lis r3, 0x4330 +/* 801995B8 00196518 C8 42 A6 D0 */ lfd f2, lbl_805AC3F0@sda21(r2) +/* 801995BC 0019651C 38 00 00 00 */ li r0, 0 +/* 801995C0 00196520 80 9A 02 E8 */ lwz r4, 0x2e8(r26) +/* 801995C4 00196524 28 1F 00 00 */ cmplwi r31, 0 +/* 801995C8 00196528 90 61 00 60 */ stw r3, 0x60(r1) +/* 801995CC 0019652C 6C 83 80 00 */ xoris r3, r4, 0x8000 +/* 801995D0 00196530 C0 22 A6 CC */ lfs f1, lbl_805AC3EC@sda21(r2) +/* 801995D4 00196534 90 61 00 64 */ stw r3, 0x64(r1) +/* 801995D8 00196538 C8 01 00 60 */ lfd f0, 0x60(r1) +/* 801995DC 0019653C EC 00 10 28 */ fsubs f0, f0, f2 +/* 801995E0 00196540 D0 1A 02 EC */ stfs f0, 0x2ec(r26) +/* 801995E4 00196544 C0 1A 02 EC */ lfs f0, 0x2ec(r26) +/* 801995E8 00196548 EC 01 00 24 */ fdivs f0, f1, f0 +/* 801995EC 0019654C D0 1A 02 F0 */ stfs f0, 0x2f0(r26) +/* 801995F0 00196550 D3 DA 02 F4 */ stfs f30, 0x2f4(r26) +/* 801995F4 00196554 90 1A 02 F8 */ stw r0, 0x2f8(r26) +/* 801995F8 00196558 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801995FC 0019655C B0 1A 02 FC */ sth r0, 0x2fc(r26) +/* 80199600 00196560 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80199604 00196564 B0 1A 02 FE */ sth r0, 0x2fe(r26) +/* 80199608 00196568 41 82 00 0C */ beq lbl_80199614 +/* 8019960C 0019656C C0 02 A6 C8 */ lfs f0, lbl_805AC3E8@sda21(r2) +/* 80199610 00196570 48 00 00 08 */ b lbl_80199618 +lbl_80199614: +/* 80199614 00196574 C0 1A 02 EC */ lfs f0, 0x2ec(r26) +lbl_80199618: +/* 80199618 00196578 D0 1A 03 00 */ stfs f0, 0x300(r26) +/* 8019961C 0019657C 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 80199620 00196580 38 83 66 70 */ addi r4, r3, skIdentity4f@l +/* 80199624 00196584 3C C0 80 5A */ lis r6, lbl_805A66F4@ha +/* 80199628 00196588 C0 1A 02 EC */ lfs f0, 0x2ec(r26) +/* 8019962C 0019658C 3C A0 80 5A */ lis r5, skZero3f@ha +/* 80199630 00196590 38 7A 03 24 */ addi r3, r26, 0x324 +/* 80199634 00196594 D0 1A 03 04 */ stfs f0, 0x304(r26) +/* 80199638 00196598 D3 FA 03 08 */ stfs f31, 0x308(r26) +/* 8019963C 0019659C C4 06 66 F4 */ lfsu f0, lbl_805A66F4@l(r6) +/* 80199640 001965A0 D0 1A 03 0C */ stfs f0, 0x30c(r26) +/* 80199644 001965A4 C0 06 00 04 */ lfs f0, 4(r6) +/* 80199648 001965A8 D0 1A 03 10 */ stfs f0, 0x310(r26) +/* 8019964C 001965AC C0 06 00 08 */ lfs f0, 8(r6) +/* 80199650 001965B0 D0 1A 03 14 */ stfs f0, 0x314(r26) +/* 80199654 001965B4 C4 05 66 A0 */ lfsu f0, skZero3f@l(r5) +/* 80199658 001965B8 D0 1A 03 18 */ stfs f0, 0x318(r26) +/* 8019965C 001965BC C0 05 00 04 */ lfs f0, 4(r5) +/* 80199660 001965C0 D0 1A 03 1C */ stfs f0, 0x31c(r26) +/* 80199664 001965C4 C0 05 00 08 */ lfs f0, 8(r5) +/* 80199668 001965C8 D0 1A 03 20 */ stfs f0, 0x320(r26) +/* 8019966C 001965CC 48 17 95 09 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80199670 001965D0 3C 60 80 5A */ lis r3, lbl_805A6784@ha +/* 80199674 001965D4 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80199678 001965D8 38 A3 67 84 */ addi r5, r3, lbl_805A6784@l +/* 8019967C 001965DC 38 60 00 0A */ li r3, 0xa +/* 80199680 001965E0 C0 05 00 00 */ lfs f0, 0(r5) +/* 80199684 001965E4 38 00 00 02 */ li r0, 2 +/* 80199688 001965E8 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 8019968C 001965EC 38 FA 03 88 */ addi r7, r26, 0x388 +/* 80199690 001965F0 D0 1A 03 54 */ stfs f0, 0x354(r26) +/* 80199694 001965F4 38 C0 00 00 */ li r6, 0 +/* 80199698 001965F8 C0 05 00 04 */ lfs f0, 4(r5) +/* 8019969C 001965FC D0 1A 03 58 */ stfs f0, 0x358(r26) +/* 801996A0 00196600 C0 05 00 08 */ lfs f0, 8(r5) +/* 801996A4 00196604 D0 1A 03 5C */ stfs f0, 0x35c(r26) +/* 801996A8 00196608 C0 05 00 0C */ lfs f0, 0xc(r5) +/* 801996AC 0019660C D0 1A 03 60 */ stfs f0, 0x360(r26) +/* 801996B0 00196610 C0 05 00 10 */ lfs f0, 0x10(r5) +/* 801996B4 00196614 D0 1A 03 64 */ stfs f0, 0x364(r26) +/* 801996B8 00196618 C0 05 00 14 */ lfs f0, 0x14(r5) +/* 801996BC 0019661C D0 1A 03 68 */ stfs f0, 0x368(r26) +/* 801996C0 00196620 C0 05 00 00 */ lfs f0, 0(r5) +/* 801996C4 00196624 D0 1A 03 6C */ stfs f0, 0x36c(r26) +/* 801996C8 00196628 C0 05 00 04 */ lfs f0, 4(r5) +/* 801996CC 0019662C D0 1A 03 70 */ stfs f0, 0x370(r26) +/* 801996D0 00196630 C0 05 00 08 */ lfs f0, 8(r5) +/* 801996D4 00196634 D0 1A 03 74 */ stfs f0, 0x374(r26) +/* 801996D8 00196638 C0 05 00 0C */ lfs f0, 0xc(r5) +/* 801996DC 0019663C D0 1A 03 78 */ stfs f0, 0x378(r26) +/* 801996E0 00196640 C0 05 00 10 */ lfs f0, 0x10(r5) +/* 801996E4 00196644 D0 1A 03 7C */ stfs f0, 0x37c(r26) +/* 801996E8 00196648 C0 05 00 14 */ lfs f0, 0x14(r5) +/* 801996EC 0019664C D0 1A 03 80 */ stfs f0, 0x380(r26) +/* 801996F0 00196650 90 7A 03 84 */ stw r3, 0x384(r26) +/* 801996F4 00196654 7C 09 03 A6 */ mtctr r0 +lbl_801996F8: +/* 801996F8 00196658 28 07 00 00 */ cmplwi r7, 0 +/* 801996FC 0019665C 41 82 00 1C */ beq lbl_80199718 +/* 80199700 00196660 C0 04 00 00 */ lfs f0, 0(r4) +/* 80199704 00196664 D0 07 00 00 */ stfs f0, 0(r7) +/* 80199708 00196668 C0 04 00 04 */ lfs f0, 4(r4) +/* 8019970C 0019666C D0 07 00 04 */ stfs f0, 4(r7) +/* 80199710 00196670 C0 04 00 08 */ lfs f0, 8(r4) +/* 80199714 00196674 D0 07 00 08 */ stfs f0, 8(r7) +lbl_80199718: +/* 80199718 00196678 34 E7 00 0C */ addic. r7, r7, 0xc +/* 8019971C 0019667C 41 82 00 1C */ beq lbl_80199738 +/* 80199720 00196680 C0 04 00 00 */ lfs f0, 0(r4) +/* 80199724 00196684 D0 07 00 00 */ stfs f0, 0(r7) +/* 80199728 00196688 C0 04 00 04 */ lfs f0, 4(r4) +/* 8019972C 0019668C D0 07 00 04 */ stfs f0, 4(r7) +/* 80199730 00196690 C0 04 00 08 */ lfs f0, 8(r4) +/* 80199734 00196694 D0 07 00 08 */ stfs f0, 8(r7) +lbl_80199738: +/* 80199738 00196698 34 E7 00 0C */ addic. r7, r7, 0xc +/* 8019973C 0019669C 41 82 00 1C */ beq lbl_80199758 +/* 80199740 001966A0 C0 04 00 00 */ lfs f0, 0(r4) +/* 80199744 001966A4 D0 07 00 00 */ stfs f0, 0(r7) +/* 80199748 001966A8 C0 04 00 04 */ lfs f0, 4(r4) +/* 8019974C 001966AC D0 07 00 04 */ stfs f0, 4(r7) +/* 80199750 001966B0 C0 04 00 08 */ lfs f0, 8(r4) +/* 80199754 001966B4 D0 07 00 08 */ stfs f0, 8(r7) +lbl_80199758: +/* 80199758 001966B8 34 E7 00 0C */ addic. r7, r7, 0xc +/* 8019975C 001966BC 41 82 00 1C */ beq lbl_80199778 +/* 80199760 001966C0 C0 04 00 00 */ lfs f0, 0(r4) +/* 80199764 001966C4 D0 07 00 00 */ stfs f0, 0(r7) +/* 80199768 001966C8 C0 04 00 04 */ lfs f0, 4(r4) +/* 8019976C 001966CC D0 07 00 04 */ stfs f0, 4(r7) +/* 80199770 001966D0 C0 04 00 08 */ lfs f0, 8(r4) +/* 80199774 001966D4 D0 07 00 08 */ stfs f0, 8(r7) +lbl_80199778: +/* 80199778 001966D8 34 E7 00 0C */ addic. r7, r7, 0xc +/* 8019977C 001966DC 41 82 00 1C */ beq lbl_80199798 +/* 80199780 001966E0 C0 04 00 00 */ lfs f0, 0(r4) +/* 80199784 001966E4 D0 07 00 00 */ stfs f0, 0(r7) +/* 80199788 001966E8 C0 04 00 04 */ lfs f0, 4(r4) +/* 8019978C 001966EC D0 07 00 04 */ stfs f0, 4(r7) +/* 80199790 001966F0 C0 04 00 08 */ lfs f0, 8(r4) +/* 80199794 001966F4 D0 07 00 08 */ stfs f0, 8(r7) +lbl_80199798: +/* 80199798 001966F8 38 C6 00 04 */ addi r6, r6, 4 +/* 8019979C 001966FC 38 E7 00 0C */ addi r7, r7, 0xc +/* 801997A0 00196700 42 00 FF 58 */ bdnz lbl_801996F8 +/* 801997A4 00196704 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801997A8 00196708 38 60 00 08 */ li r3, 8 +/* 801997AC 0019670C 38 00 00 02 */ li r0, 2 +/* 801997B0 00196710 90 7A 04 00 */ stw r3, 0x400(r26) +/* 801997B4 00196714 38 64 66 A0 */ addi r3, r4, skZero3f@l +/* 801997B8 00196718 38 BA 04 04 */ addi r5, r26, 0x404 +/* 801997BC 0019671C 38 80 00 00 */ li r4, 0 +/* 801997C0 00196720 7C 09 03 A6 */ mtctr r0 +lbl_801997C4: +/* 801997C4 00196724 28 05 00 00 */ cmplwi r5, 0 +/* 801997C8 00196728 41 82 00 1C */ beq lbl_801997E4 +/* 801997CC 0019672C C0 03 00 00 */ lfs f0, 0(r3) +/* 801997D0 00196730 D0 05 00 00 */ stfs f0, 0(r5) +/* 801997D4 00196734 C0 03 00 04 */ lfs f0, 4(r3) +/* 801997D8 00196738 D0 05 00 04 */ stfs f0, 4(r5) +/* 801997DC 0019673C C0 03 00 08 */ lfs f0, 8(r3) +/* 801997E0 00196740 D0 05 00 08 */ stfs f0, 8(r5) +lbl_801997E4: +/* 801997E4 00196744 34 A5 00 0C */ addic. r5, r5, 0xc +/* 801997E8 00196748 41 82 00 1C */ beq lbl_80199804 +/* 801997EC 0019674C C0 03 00 00 */ lfs f0, 0(r3) +/* 801997F0 00196750 D0 05 00 00 */ stfs f0, 0(r5) +/* 801997F4 00196754 C0 03 00 04 */ lfs f0, 4(r3) +/* 801997F8 00196758 D0 05 00 04 */ stfs f0, 4(r5) +/* 801997FC 0019675C C0 03 00 08 */ lfs f0, 8(r3) +/* 80199800 00196760 D0 05 00 08 */ stfs f0, 8(r5) +lbl_80199804: +/* 80199804 00196764 34 A5 00 0C */ addic. r5, r5, 0xc +/* 80199808 00196768 41 82 00 1C */ beq lbl_80199824 +/* 8019980C 0019676C C0 03 00 00 */ lfs f0, 0(r3) +/* 80199810 00196770 D0 05 00 00 */ stfs f0, 0(r5) +/* 80199814 00196774 C0 03 00 04 */ lfs f0, 4(r3) +/* 80199818 00196778 D0 05 00 04 */ stfs f0, 4(r5) +/* 8019981C 0019677C C0 03 00 08 */ lfs f0, 8(r3) +/* 80199820 00196780 D0 05 00 08 */ stfs f0, 8(r5) +lbl_80199824: +/* 80199824 00196784 34 A5 00 0C */ addic. r5, r5, 0xc +/* 80199828 00196788 41 82 00 1C */ beq lbl_80199844 +/* 8019982C 0019678C C0 03 00 00 */ lfs f0, 0(r3) +/* 80199830 00196790 D0 05 00 00 */ stfs f0, 0(r5) +/* 80199834 00196794 C0 03 00 04 */ lfs f0, 4(r3) +/* 80199838 00196798 D0 05 00 04 */ stfs f0, 4(r5) +/* 8019983C 0019679C C0 03 00 08 */ lfs f0, 8(r3) +/* 80199840 001967A0 D0 05 00 08 */ stfs f0, 8(r5) +lbl_80199844: +/* 80199844 001967A4 38 84 00 03 */ addi r4, r4, 3 +/* 80199848 001967A8 38 A5 00 0C */ addi r5, r5, 0xc +/* 8019984C 001967AC 42 00 FF 78 */ bdnz lbl_801997C4 +/* 80199850 001967B0 88 1A 04 64 */ lbz r0, 0x464(r26) +/* 80199854 001967B4 53 E0 3E 30 */ rlwimi r0, r31, 7, 0x18, 0x18 +/* 80199858 001967B8 38 80 00 00 */ li r4, 0 +/* 8019985C 001967BC 7F 43 D3 78 */ mr r3, r26 +/* 80199860 001967C0 98 1A 04 64 */ stb r0, 0x464(r26) +/* 80199864 001967C4 88 1A 04 64 */ lbz r0, 0x464(r26) +/* 80199868 001967C8 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 8019986C 001967CC 98 1A 04 64 */ stb r0, 0x464(r26) +/* 80199870 001967D0 E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0 +/* 80199874 001967D4 CB E1 00 B0 */ lfd f31, 0xb0(r1) +/* 80199878 001967D8 E3 C1 00 A8 */ psq_l f30, 168(r1), 0, qr0 +/* 8019987C 001967DC CB C1 00 A0 */ lfd f30, 0xa0(r1) +/* 80199880 001967E0 BA 61 00 6C */ lmw r19, 0x6c(r1) +/* 80199884 001967E4 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 80199888 001967E8 7C 08 03 A6 */ mtlr r0 +/* 8019988C 001967EC 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 80199890 001967F0 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CBomb.s b/asm/Kyoto_CWD/Weapons/CBomb.s similarity index 100% rename from asm/Kyoto_CWD/CBomb.s rename to asm/Kyoto_CWD/Weapons/CBomb.s diff --git a/asm/Kyoto_CWD/Weapons/CEnergyProjectile.s b/asm/Kyoto_CWD/Weapons/CEnergyProjectile.s new file mode 100644 index 00000000..83d515ea --- /dev/null +++ b/asm/Kyoto_CWD/Weapons/CEnergyProjectile.s @@ -0,0 +1,2034 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global SetCameraShake__17CEnergyProjectileFRC16CCameraShakeData +SetCameraShake__17CEnergyProjectileFRC16CCameraShakeData: +/* 80213ACC 00210A2C C0 04 00 00 */ lfs f0, 0(r4) +/* 80213AD0 00210A30 38 A0 00 01 */ li r5, 1 +/* 80213AD4 00210A34 D0 03 02 FC */ stfs f0, 0x2fc(r3) +/* 80213AD8 00210A38 C0 04 00 04 */ lfs f0, 4(r4) +/* 80213ADC 00210A3C D0 03 03 00 */ stfs f0, 0x300(r3) +/* 80213AE0 00210A40 80 04 00 0C */ lwz r0, 0xc(r4) +/* 80213AE4 00210A44 90 03 03 08 */ stw r0, 0x308(r3) +/* 80213AE8 00210A48 80 C4 00 10 */ lwz r6, 0x10(r4) +/* 80213AEC 00210A4C 80 04 00 14 */ lwz r0, 0x14(r4) +/* 80213AF0 00210A50 90 C3 03 0C */ stw r6, 0x30c(r3) +/* 80213AF4 00210A54 90 03 03 10 */ stw r0, 0x310(r3) +/* 80213AF8 00210A58 80 C4 00 18 */ lwz r6, 0x18(r4) +/* 80213AFC 00210A5C 80 04 00 1C */ lwz r0, 0x1c(r4) +/* 80213B00 00210A60 90 C3 03 14 */ stw r6, 0x314(r3) +/* 80213B04 00210A64 90 03 03 18 */ stw r0, 0x318(r3) +/* 80213B08 00210A68 80 C4 00 20 */ lwz r6, 0x20(r4) +/* 80213B0C 00210A6C 80 04 00 24 */ lwz r0, 0x24(r4) +/* 80213B10 00210A70 90 C3 03 1C */ stw r6, 0x31c(r3) +/* 80213B14 00210A74 90 03 03 20 */ stw r0, 0x320(r3) +/* 80213B18 00210A78 80 C4 00 28 */ lwz r6, 0x28(r4) +/* 80213B1C 00210A7C 80 04 00 2C */ lwz r0, 0x2c(r4) +/* 80213B20 00210A80 90 C3 03 24 */ stw r6, 0x324(r3) +/* 80213B24 00210A84 90 03 03 28 */ stw r0, 0x328(r3) +/* 80213B28 00210A88 80 C4 00 30 */ lwz r6, 0x30(r4) +/* 80213B2C 00210A8C 80 04 00 34 */ lwz r0, 0x34(r4) +/* 80213B30 00210A90 90 C3 03 2C */ stw r6, 0x32c(r3) +/* 80213B34 00210A94 90 03 03 30 */ stw r0, 0x330(r3) +/* 80213B38 00210A98 80 C4 00 38 */ lwz r6, 0x38(r4) +/* 80213B3C 00210A9C 80 04 00 3C */ lwz r0, 0x3c(r4) +/* 80213B40 00210AA0 90 C3 03 34 */ stw r6, 0x334(r3) +/* 80213B44 00210AA4 90 03 03 38 */ stw r0, 0x338(r3) +/* 80213B48 00210AA8 C0 04 00 40 */ lfs f0, 0x40(r4) +/* 80213B4C 00210AAC D0 03 03 3C */ stfs f0, 0x33c(r3) +/* 80213B50 00210AB0 80 04 00 48 */ lwz r0, 0x48(r4) +/* 80213B54 00210AB4 90 03 03 44 */ stw r0, 0x344(r3) +/* 80213B58 00210AB8 80 C4 00 4C */ lwz r6, 0x4c(r4) +/* 80213B5C 00210ABC 80 04 00 50 */ lwz r0, 0x50(r4) +/* 80213B60 00210AC0 90 C3 03 48 */ stw r6, 0x348(r3) +/* 80213B64 00210AC4 90 03 03 4C */ stw r0, 0x34c(r3) +/* 80213B68 00210AC8 80 C4 00 54 */ lwz r6, 0x54(r4) +/* 80213B6C 00210ACC 80 04 00 58 */ lwz r0, 0x58(r4) +/* 80213B70 00210AD0 90 C3 03 50 */ stw r6, 0x350(r3) +/* 80213B74 00210AD4 90 03 03 54 */ stw r0, 0x354(r3) +/* 80213B78 00210AD8 80 C4 00 5C */ lwz r6, 0x5c(r4) +/* 80213B7C 00210ADC 80 04 00 60 */ lwz r0, 0x60(r4) +/* 80213B80 00210AE0 90 C3 03 58 */ stw r6, 0x358(r3) +/* 80213B84 00210AE4 90 03 03 5C */ stw r0, 0x35c(r3) +/* 80213B88 00210AE8 80 C4 00 64 */ lwz r6, 0x64(r4) +/* 80213B8C 00210AEC 80 04 00 68 */ lwz r0, 0x68(r4) +/* 80213B90 00210AF0 90 C3 03 60 */ stw r6, 0x360(r3) +/* 80213B94 00210AF4 90 03 03 64 */ stw r0, 0x364(r3) +/* 80213B98 00210AF8 80 C4 00 6C */ lwz r6, 0x6c(r4) +/* 80213B9C 00210AFC 80 04 00 70 */ lwz r0, 0x70(r4) +/* 80213BA0 00210B00 90 C3 03 68 */ stw r6, 0x368(r3) +/* 80213BA4 00210B04 90 03 03 6C */ stw r0, 0x36c(r3) +/* 80213BA8 00210B08 80 C4 00 74 */ lwz r6, 0x74(r4) +/* 80213BAC 00210B0C 80 04 00 78 */ lwz r0, 0x78(r4) +/* 80213BB0 00210B10 90 C3 03 70 */ stw r6, 0x370(r3) +/* 80213BB4 00210B14 90 03 03 74 */ stw r0, 0x374(r3) +/* 80213BB8 00210B18 C0 04 00 7C */ lfs f0, 0x7c(r4) +/* 80213BBC 00210B1C D0 03 03 78 */ stfs f0, 0x378(r3) +/* 80213BC0 00210B20 80 04 00 84 */ lwz r0, 0x84(r4) +/* 80213BC4 00210B24 90 03 03 80 */ stw r0, 0x380(r3) +/* 80213BC8 00210B28 80 C4 00 88 */ lwz r6, 0x88(r4) +/* 80213BCC 00210B2C 80 04 00 8C */ lwz r0, 0x8c(r4) +/* 80213BD0 00210B30 90 C3 03 84 */ stw r6, 0x384(r3) +/* 80213BD4 00210B34 90 03 03 88 */ stw r0, 0x388(r3) +/* 80213BD8 00210B38 80 C4 00 90 */ lwz r6, 0x90(r4) +/* 80213BDC 00210B3C 80 04 00 94 */ lwz r0, 0x94(r4) +/* 80213BE0 00210B40 90 C3 03 8C */ stw r6, 0x38c(r3) +/* 80213BE4 00210B44 90 03 03 90 */ stw r0, 0x390(r3) +/* 80213BE8 00210B48 80 C4 00 98 */ lwz r6, 0x98(r4) +/* 80213BEC 00210B4C 80 04 00 9C */ lwz r0, 0x9c(r4) +/* 80213BF0 00210B50 90 C3 03 94 */ stw r6, 0x394(r3) +/* 80213BF4 00210B54 90 03 03 98 */ stw r0, 0x398(r3) +/* 80213BF8 00210B58 80 C4 00 A0 */ lwz r6, 0xa0(r4) +/* 80213BFC 00210B5C 80 04 00 A4 */ lwz r0, 0xa4(r4) +/* 80213C00 00210B60 90 C3 03 9C */ stw r6, 0x39c(r3) +/* 80213C04 00210B64 90 03 03 A0 */ stw r0, 0x3a0(r3) +/* 80213C08 00210B68 80 C4 00 A8 */ lwz r6, 0xa8(r4) +/* 80213C0C 00210B6C 80 04 00 AC */ lwz r0, 0xac(r4) +/* 80213C10 00210B70 90 C3 03 A4 */ stw r6, 0x3a4(r3) +/* 80213C14 00210B74 90 03 03 A8 */ stw r0, 0x3a8(r3) +/* 80213C18 00210B78 80 C4 00 B0 */ lwz r6, 0xb0(r4) +/* 80213C1C 00210B7C 80 04 00 B4 */ lwz r0, 0xb4(r4) +/* 80213C20 00210B80 90 C3 03 AC */ stw r6, 0x3ac(r3) +/* 80213C24 00210B84 90 03 03 B0 */ stw r0, 0x3b0(r3) +/* 80213C28 00210B88 C0 04 00 B8 */ lfs f0, 0xb8(r4) +/* 80213C2C 00210B8C D0 03 03 B4 */ stfs f0, 0x3b4(r3) +/* 80213C30 00210B90 80 04 00 BC */ lwz r0, 0xbc(r4) +/* 80213C34 00210B94 90 03 03 B8 */ stw r0, 0x3b8(r3) +/* 80213C38 00210B98 80 04 00 C0 */ lwz r0, 0xc0(r4) +/* 80213C3C 00210B9C 90 03 03 BC */ stw r0, 0x3bc(r3) +/* 80213C40 00210BA0 80 C4 00 C4 */ lwz r6, 0xc4(r4) +/* 80213C44 00210BA4 80 04 00 C8 */ lwz r0, 0xc8(r4) +/* 80213C48 00210BA8 90 C3 03 C0 */ stw r6, 0x3c0(r3) +/* 80213C4C 00210BAC 90 03 03 C4 */ stw r0, 0x3c4(r3) +/* 80213C50 00210BB0 80 04 00 CC */ lwz r0, 0xcc(r4) +/* 80213C54 00210BB4 90 03 03 C8 */ stw r0, 0x3c8(r3) +/* 80213C58 00210BB8 C0 04 00 D0 */ lfs f0, 0xd0(r4) +/* 80213C5C 00210BBC D0 03 03 CC */ stfs f0, 0x3cc(r3) +/* 80213C60 00210BC0 88 03 03 D0 */ lbz r0, 0x3d0(r3) +/* 80213C64 00210BC4 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 80213C68 00210BC8 98 03 03 D0 */ stb r0, 0x3d0(r3) +/* 80213C6C 00210BCC 4E 80 00 20 */ blr + +.global PlayImpactSound__17CEnergyProjectileFRC9CVector3f29EWeaponCollisionResponseTypes +PlayImpactSound__17CEnergyProjectileFRC9CVector3f29EWeaponCollisionResponseTypes: +/* 80213C70 00210BD0 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80213C74 00210BD4 7C 08 02 A6 */ mflr r0 +/* 80213C78 00210BD8 90 01 00 64 */ stw r0, 0x64(r1) +/* 80213C7C 00210BDC DB E1 00 50 */ stfd f31, 0x50(r1) +/* 80213C80 00210BE0 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 80213C84 00210BE4 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 80213C88 00210BE8 93 C1 00 48 */ stw r30, 0x48(r1) +/* 80213C8C 00210BEC 93 A1 00 44 */ stw r29, 0x44(r1) +/* 80213C90 00210BF0 93 81 00 40 */ stw r28, 0x40(r1) +/* 80213C94 00210BF4 7C 7C 1B 78 */ mr r28, r3 +/* 80213C98 00210BF8 7C 9D 23 78 */ mr r29, r4 +/* 80213C9C 00210BFC 3B DC 01 70 */ addi r30, r28, 0x170 +/* 80213CA0 00210C00 7C A4 2B 78 */ mr r4, r5 +/* 80213CA4 00210C04 7F C3 F3 78 */ mr r3, r30 +/* 80213CA8 00210C08 48 09 B6 25 */ bl GetSoundIdForCollision__17CProjectileWeaponCF29EWeaponCollisionResponseTypes +/* 80213CAC 00210C0C 7C 7F 1B 79 */ or. r31, r3, r3 +/* 80213CB0 00210C10 41 80 00 CC */ blt lbl_80213D7C +/* 80213CB4 00210C14 7F C3 F3 78 */ mr r3, r30 +/* 80213CB8 00210C18 48 09 B5 1D */ bl GetAudibleRange__17CProjectileWeaponCFv +/* 80213CBC 00210C1C FF E0 08 90 */ fmr f31, f1 +/* 80213CC0 00210C20 7F C3 F3 78 */ mr r3, r30 +/* 80213CC4 00210C24 48 09 B4 9D */ bl GetAudibleFallOff__17CProjectileWeaponCFv +/* 80213CC8 00210C28 C0 82 B3 10 */ lfs f4, lbl_805AD030@sda21(r2) +/* 80213CCC 00210C2C 38 C0 00 00 */ li r6, 0 +/* 80213CD0 00210C30 88 A2 CC 40 */ lbz r5, lbl_805AE960@sda21(r2) +/* 80213CD4 00210C34 38 E0 00 01 */ li r7, 1 +/* 80213CD8 00210C38 88 02 CC 41 */ lbz r0, lbl_805AE961@sda21(r2) +/* 80213CDC 00210C3C 38 80 00 14 */ li r4, 0x14 +/* 80213CE0 00210C40 D0 81 00 14 */ stfs f4, 0x14(r1) +/* 80213CE4 00210C44 57 E3 04 3E */ clrlwi r3, r31, 0x10 +/* 80213CE8 00210C48 C0 7D 00 00 */ lfs f3, 0(r29) +/* 80213CEC 00210C4C D0 81 00 18 */ stfs f4, 0x18(r1) +/* 80213CF0 00210C50 C0 5D 00 04 */ lfs f2, 4(r29) +/* 80213CF4 00210C54 D0 81 00 1C */ stfs f4, 0x1c(r1) +/* 80213CF8 00210C58 C0 1D 00 08 */ lfs f0, 8(r29) +/* 80213CFC 00210C5C D0 81 00 20 */ stfs f4, 0x20(r1) +/* 80213D00 00210C60 D0 81 00 24 */ stfs f4, 0x24(r1) +/* 80213D04 00210C64 D0 81 00 28 */ stfs f4, 0x28(r1) +/* 80213D08 00210C68 D3 E1 00 2C */ stfs f31, 0x2c(r1) +/* 80213D0C 00210C6C D0 21 00 30 */ stfs f1, 0x30(r1) +/* 80213D10 00210C70 90 E1 00 34 */ stw r7, 0x34(r1) +/* 80213D14 00210C74 B0 C1 00 38 */ sth r6, 0x38(r1) +/* 80213D18 00210C78 98 A1 00 3A */ stb r5, 0x3a(r1) +/* 80213D1C 00210C7C 98 81 00 3B */ stb r4, 0x3b(r1) +/* 80213D20 00210C80 98 C1 00 3C */ stb r6, 0x3c(r1) +/* 80213D24 00210C84 98 01 00 3D */ stb r0, 0x3d(r1) +/* 80213D28 00210C88 D0 61 00 14 */ stfs f3, 0x14(r1) +/* 80213D2C 00210C8C D0 41 00 18 */ stfs f2, 0x18(r1) +/* 80213D30 00210C90 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 80213D34 00210C94 48 0D 4C 7D */ bl TranslateSFXID__11CSfxManagerFUs +/* 80213D38 00210C98 B0 61 00 38 */ sth r3, 0x38(r1) +/* 80213D3C 00210C9C 38 61 00 0C */ addi r3, r1, 0xc +/* 80213D40 00210CA0 A8 C2 C5 FA */ lha r6, lbl_805AE31A@sda21(r2) +/* 80213D44 00210CA4 38 81 00 14 */ addi r4, r1, 0x14 +/* 80213D48 00210CA8 81 02 C6 00 */ lwz r8, lbl_805AE320@sda21(r2) +/* 80213D4C 00210CAC 38 A0 00 01 */ li r5, 1 +/* 80213D50 00210CB0 38 E0 00 00 */ li r7, 0 +/* 80213D54 00210CB4 48 0D 62 8D */ bl AddEmitter__11CSfxManagerFRQ29CAudioSys18C3DEmitterParmDatabsbi +/* 80213D58 00210CB8 88 1C 02 E4 */ lbz r0, 0x2e4(r28) +/* 80213D5C 00210CBC 80 61 00 0C */ lwz r3, 0xc(r1) +/* 80213D60 00210CC0 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 80213D64 00210CC4 90 61 00 10 */ stw r3, 0x10(r1) +/* 80213D68 00210CC8 41 82 00 14 */ beq lbl_80213D7C +/* 80213D6C 00210CCC 90 61 00 08 */ stw r3, 8(r1) +/* 80213D70 00210CD0 38 61 00 08 */ addi r3, r1, 8 +/* 80213D74 00210CD4 38 80 00 00 */ li r4, 0 +/* 80213D78 00210CD8 48 0D 51 35 */ bl PitchBend__11CSfxManagerF10CSfxHandlei +lbl_80213D7C: +/* 80213D7C 00210CDC E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 +/* 80213D80 00210CE0 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80213D84 00210CE4 CB E1 00 50 */ lfd f31, 0x50(r1) +/* 80213D88 00210CE8 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 80213D8C 00210CEC 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 80213D90 00210CF0 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 80213D94 00210CF4 83 81 00 40 */ lwz r28, 0x40(r1) +/* 80213D98 00210CF8 7C 08 03 A6 */ mtlr r0 +/* 80213D9C 00210CFC 38 21 00 60 */ addi r1, r1, 0x60 +/* 80213DA0 00210D00 4E 80 00 20 */ blr + +.global ChangeProjectileOwner__17CEnergyProjectileF9TUniqueIdR13CStateManager +ChangeProjectileOwner__17CEnergyProjectileF9TUniqueIdR13CStateManager: +/* 80213DA4 00210D04 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 80213DA8 00210D08 7C 08 02 A6 */ mflr r0 +/* 80213DAC 00210D0C 90 01 00 74 */ stw r0, 0x74(r1) +/* 80213DB0 00210D10 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 80213DB4 00210D14 7C 7F 1B 78 */ mr r31, r3 +/* 80213DB8 00210D18 93 C1 00 68 */ stw r30, 0x68(r1) +/* 80213DBC 00210D1C 7C BE 2B 78 */ mr r30, r5 +/* 80213DC0 00210D20 7F C3 F3 78 */ mr r3, r30 +/* 80213DC4 00210D24 93 A1 00 64 */ stw r29, 0x64(r1) +/* 80213DC8 00210D28 7C 9D 23 78 */ mr r29, r4 +/* 80213DCC 00210D2C A0 04 00 00 */ lhz r0, 0(r4) +/* 80213DD0 00210D30 38 81 00 18 */ addi r4, r1, 0x18 +/* 80213DD4 00210D34 B0 01 00 18 */ sth r0, 0x18(r1) +/* 80213DD8 00210D38 4B E3 87 CD */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80213DDC 00210D3C 7C 64 1B 78 */ mr r4, r3 +/* 80213DE0 00210D40 38 61 00 1C */ addi r3, r1, 0x1c +/* 80213DE4 00210D44 4B E9 BE AD */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 80213DE8 00210D48 80 03 00 04 */ lwz r0, 4(r3) +/* 80213DEC 00210D4C 28 00 00 00 */ cmplwi r0, 0 +/* 80213DF0 00210D50 41 82 00 E8 */ beq lbl_80213ED8 +/* 80213DF4 00210D54 80 6D A1 34 */ lwz r3, gpTweakPlayerGun@sda21(r13) +/* 80213DF8 00210D58 80 9F 01 10 */ lwz r4, 0x110(r31) +/* 80213DFC 00210D5C 4B E5 BE 29 */ bl GetRichochetDamage__15CTweakPlayerGunCF11EWeaponType +/* 80213E00 00210D60 C0 1F 01 18 */ lfs f0, 0x118(r31) +/* 80213E04 00210D64 7F C3 F3 78 */ mr r3, r30 +/* 80213E08 00210D68 38 81 00 14 */ addi r4, r1, 0x14 +/* 80213E0C 00210D6C EC 01 00 32 */ fmuls f0, f1, f0 +/* 80213E10 00210D70 D0 1F 01 18 */ stfs f0, 0x118(r31) +/* 80213E14 00210D74 C0 1F 01 1C */ lfs f0, 0x11c(r31) +/* 80213E18 00210D78 EC 01 00 32 */ fmuls f0, f1, f0 +/* 80213E1C 00210D7C D0 1F 01 1C */ stfs f0, 0x11c(r31) +/* 80213E20 00210D80 C0 1F 01 20 */ lfs f0, 0x120(r31) +/* 80213E24 00210D84 EC 01 00 32 */ fmuls f0, f1, f0 +/* 80213E28 00210D88 D0 1F 01 20 */ stfs f0, 0x120(r31) +/* 80213E2C 00210D8C C0 1F 01 24 */ lfs f0, 0x124(r31) +/* 80213E30 00210D90 EC 01 00 32 */ fmuls f0, f1, f0 +/* 80213E34 00210D94 D0 1F 01 24 */ stfs f0, 0x124(r31) +/* 80213E38 00210D98 A0 1F 00 EC */ lhz r0, 0xec(r31) +/* 80213E3C 00210D9C 80 BF 00 F0 */ lwz r5, 0xf0(r31) +/* 80213E40 00210DA0 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80213E44 00210DA4 B0 01 00 14 */ sth r0, 0x14(r1) +/* 80213E48 00210DA8 4B E3 0E 91 */ bl RemoveWeaponId__13CStateManagerF9TUniqueId11EWeaponType +/* 80213E4C 00210DAC A0 DD 00 00 */ lhz r6, 0(r29) +/* 80213E50 00210DB0 7F C3 F3 78 */ mr r3, r30 +/* 80213E54 00210DB4 38 81 00 08 */ addi r4, r1, 8 +/* 80213E58 00210DB8 B0 DF 00 EC */ sth r6, 0xec(r31) +/* 80213E5C 00210DBC 80 BF 00 F0 */ lwz r5, 0xf0(r31) +/* 80213E60 00210DC0 A0 1D 00 00 */ lhz r0, 0(r29) +/* 80213E64 00210DC4 B0 C1 00 0C */ sth r6, 0xc(r1) +/* 80213E68 00210DC8 B0 01 00 08 */ sth r0, 8(r1) +/* 80213E6C 00210DCC 4B E3 0E 9D */ bl AddWeaponId__13CStateManagerF9TUniqueId11EWeaponType +/* 80213E70 00210DD0 81 3F 00 F8 */ lwz r9, 0xf8(r31) +/* 80213E74 00210DD4 38 00 00 03 */ li r0, 3 +/* 80213E78 00210DD8 81 5F 00 FC */ lwz r10, 0xfc(r31) +/* 80213E7C 00210DDC 38 80 FF FF */ li r4, -1 +/* 80213E80 00210DE0 80 FF 01 00 */ lwz r7, 0x100(r31) +/* 80213E84 00210DE4 38 60 FF FE */ li r3, -2 +/* 80213E88 00210DE8 81 1F 01 04 */ lwz r8, 0x104(r31) +/* 80213E8C 00210DEC 60 E5 00 02 */ ori r5, r7, 2 +/* 80213E90 00210DF0 80 DF 01 08 */ lwz r6, 0x108(r31) +/* 80213E94 00210DF4 7D 04 20 38 */ and r4, r8, r4 +/* 80213E98 00210DF8 91 41 00 2C */ stw r10, 0x2c(r1) +/* 80213E9C 00210DFC 7C A3 18 38 */ and r3, r5, r3 +/* 80213EA0 00210E00 91 21 00 28 */ stw r9, 0x28(r1) +/* 80213EA4 00210E04 C8 01 00 28 */ lfd f0, 0x28(r1) +/* 80213EA8 00210E08 90 81 00 34 */ stw r4, 0x34(r1) +/* 80213EAC 00210E0C 90 61 00 30 */ stw r3, 0x30(r1) +/* 80213EB0 00210E10 D8 1F 00 F8 */ stfd f0, 0xf8(r31) +/* 80213EB4 00210E14 C8 01 00 30 */ lfd f0, 0x30(r1) +/* 80213EB8 00210E18 91 41 00 44 */ stw r10, 0x44(r1) +/* 80213EBC 00210E1C D8 1F 01 00 */ stfd f0, 0x100(r31) +/* 80213EC0 00210E20 91 21 00 40 */ stw r9, 0x40(r1) +/* 80213EC4 00210E24 91 01 00 4C */ stw r8, 0x4c(r1) +/* 80213EC8 00210E28 90 E1 00 48 */ stw r7, 0x48(r1) +/* 80213ECC 00210E2C 90 C1 00 50 */ stw r6, 0x50(r1) +/* 80213ED0 00210E30 90 01 00 38 */ stw r0, 0x38(r1) +/* 80213ED4 00210E34 90 1F 01 08 */ stw r0, 0x108(r31) +lbl_80213ED8: +/* 80213ED8 00210E38 80 01 00 74 */ lwz r0, 0x74(r1) +/* 80213EDC 00210E3C 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 80213EE0 00210E40 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 80213EE4 00210E44 83 A1 00 64 */ lwz r29, 0x64(r1) +/* 80213EE8 00210E48 7C 08 03 A6 */ mtlr r0 +/* 80213EEC 00210E4C 38 21 00 70 */ addi r1, r1, 0x70 +/* 80213EF0 00210E50 4E 80 00 20 */ blr + +.global AcceptScriptMsg__17CEnergyProjectileF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__17CEnergyProjectileF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 80213EF4 00210E54 94 21 FE D0 */ stwu r1, -0x130(r1) +/* 80213EF8 00210E58 7C 08 02 A6 */ mflr r0 +/* 80213EFC 00210E5C 90 01 01 34 */ stw r0, 0x134(r1) +/* 80213F00 00210E60 BF 41 01 18 */ stmw r26, 0x118(r1) +/* 80213F04 00210E64 7C 9C 23 78 */ mr r28, r4 +/* 80213F08 00210E68 2C 1C 00 22 */ cmpwi r28, 0x22 +/* 80213F0C 00210E6C 7C 7B 1B 78 */ mr r27, r3 +/* 80213F10 00210E70 7C BD 2B 78 */ mr r29, r5 +/* 80213F14 00210E74 7C DE 33 78 */ mr r30, r6 +/* 80213F18 00210E78 41 82 00 14 */ beq lbl_80213F2C +/* 80213F1C 00210E7C 40 80 02 E0 */ bge lbl_802141FC +/* 80213F20 00210E80 2C 1C 00 21 */ cmpwi r28, 0x21 +/* 80213F24 00210E84 40 80 00 58 */ bge lbl_80213F7C +/* 80213F28 00210E88 48 00 02 D4 */ b lbl_802141FC +lbl_80213F2C: +/* 80213F2C 00210E8C 88 1B 02 E4 */ lbz r0, 0x2e4(r27) +/* 80213F30 00210E90 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80213F34 00210E94 41 82 00 20 */ beq lbl_80213F54 +/* 80213F38 00210E98 A0 1B 00 EC */ lhz r0, 0xec(r27) +/* 80213F3C 00210E9C 7F C3 F3 78 */ mr r3, r30 +/* 80213F40 00210EA0 80 BB 00 F0 */ lwz r5, 0xf0(r27) +/* 80213F44 00210EA4 38 81 00 18 */ addi r4, r1, 0x18 +/* 80213F48 00210EA8 B0 01 00 14 */ sth r0, 0x14(r1) +/* 80213F4C 00210EAC B0 01 00 18 */ sth r0, 0x18(r1) +/* 80213F50 00210EB0 4B E3 0D 89 */ bl RemoveWeaponId__13CStateManagerF9TUniqueId11EWeaponType +lbl_80213F54: +/* 80213F54 00210EB4 80 1B 02 E8 */ lwz r0, 0x2e8(r27) +/* 80213F58 00210EB8 28 00 00 00 */ cmplwi r0, 0 +/* 80213F5C 00210EBC 41 82 02 A0 */ beq lbl_802141FC +/* 80213F60 00210EC0 80 1B 02 E8 */ lwz r0, 0x2e8(r27) +/* 80213F64 00210EC4 38 61 00 20 */ addi r3, r1, 0x20 +/* 80213F68 00210EC8 90 01 00 20 */ stw r0, 0x20(r1) +/* 80213F6C 00210ECC 48 0D 5F 19 */ bl RemoveEmitter__11CSfxManagerFRC10CSfxHandle +/* 80213F70 00210ED0 38 00 00 00 */ li r0, 0 +/* 80213F74 00210ED4 90 1B 02 E8 */ stw r0, 0x2e8(r27) +/* 80213F78 00210ED8 48 00 02 84 */ b lbl_802141FC +lbl_80213F7C: +/* 80213F7C 00210EDC 3B FB 01 70 */ addi r31, r27, 0x170 +/* 80213F80 00210EE0 80 7B 02 6C */ lwz r3, 0x26c(r27) +/* 80213F84 00210EE4 28 03 00 00 */ cmplwi r3, 0 +/* 80213F88 00210EE8 41 82 00 60 */ beq lbl_80213FE8 +/* 80213F8C 00210EEC 81 83 00 00 */ lwz r12, 0(r3) +/* 80213F90 00210EF0 81 8C 00 64 */ lwz r12, 0x64(r12) +/* 80213F94 00210EF4 7D 89 03 A6 */ mtctr r12 +/* 80213F98 00210EF8 4E 80 04 21 */ bctrl +/* 80213F9C 00210EFC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80213FA0 00210F00 41 82 00 48 */ beq lbl_80213FE8 +/* 80213FA4 00210F04 3C 80 80 3D */ lis r4, lbl_803D2890@ha +/* 80213FA8 00210F08 38 61 00 80 */ addi r3, r1, 0x80 +/* 80213FAC 00210F0C 38 84 28 90 */ addi r4, r4, lbl_803D2890@l +/* 80213FB0 00210F10 4B DF 0D 09 */ bl string_l__4rstlFPCc +/* 80213FB4 00210F14 80 9F 00 FC */ lwz r4, 0xfc(r31) +/* 80213FB8 00210F18 38 61 00 BC */ addi r3, r1, 0xbc +/* 80213FBC 00210F1C 81 84 00 00 */ lwz r12, 0(r4) +/* 80213FC0 00210F20 81 8C 00 68 */ lwz r12, 0x68(r12) +/* 80213FC4 00210F24 7D 89 03 A6 */ mtctr r12 +/* 80213FC8 00210F28 4E 80 04 21 */ bctrl +/* 80213FCC 00210F2C 7F 63 DB 78 */ mr r3, r27 +/* 80213FD0 00210F30 7F C6 F3 78 */ mr r6, r30 +/* 80213FD4 00210F34 38 81 00 80 */ addi r4, r1, 0x80 +/* 80213FD8 00210F38 38 A1 00 BC */ addi r5, r1, 0xbc +/* 80213FDC 00210F3C 4B E2 39 21 */ bl "CreateProjectileLight__15CGameProjectileFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC6CLightR13CStateManager" +/* 80213FE0 00210F40 38 61 00 80 */ addi r3, r1, 0x80 +/* 80213FE4 00210F44 48 12 9A FD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80213FE8: +/* 80213FE8 00210F48 7F E4 FB 78 */ mr r4, r31 +/* 80213FEC 00210F4C 38 61 00 74 */ addi r3, r1, 0x74 +/* 80213FF0 00210F50 4B E2 45 91 */ bl GetWeaponDescription__17CProjectileWeaponCFv +/* 80213FF4 00210F54 80 A1 00 7C */ lwz r5, 0x7c(r1) +/* 80213FF8 00210F58 38 61 00 74 */ addi r3, r1, 0x74 +/* 80213FFC 00210F5C 38 80 00 00 */ li r4, 0 +/* 80214000 00210F60 80 05 00 A8 */ lwz r0, 0xa8(r5) +/* 80214004 00210F64 54 00 0F FE */ srwi r0, r0, 0x1f +/* 80214008 00210F68 68 1A 00 01 */ xori r26, r0, 1 +/* 8021400C 00210F6C 48 12 CE 35 */ bl __dt__6CTokenFv +/* 80214010 00210F70 57 40 06 3F */ clrlwi. r0, r26, 0x18 +/* 80214014 00210F74 41 82 01 CC */ beq lbl_802141E0 +/* 80214018 00210F78 C0 22 B3 14 */ lfs f1, lbl_805AD034@sda21(r2) +/* 8021401C 00210F7C 7F E4 FB 78 */ mr r4, r31 +/* 80214020 00210F80 C0 02 B3 18 */ lfs f0, lbl_805AD038@sda21(r2) +/* 80214024 00210F84 38 61 00 68 */ addi r3, r1, 0x68 +/* 80214028 00210F88 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 8021402C 00210F8C D0 01 00 24 */ stfs f0, 0x24(r1) +/* 80214030 00210F90 4B E2 45 51 */ bl GetWeaponDescription__17CProjectileWeaponCFv +/* 80214034 00210F94 80 A1 00 70 */ lwz r5, 0x70(r1) +/* 80214038 00210F98 38 61 00 68 */ addi r3, r1, 0x68 +/* 8021403C 00210F9C 38 80 00 00 */ li r4, 0 +/* 80214040 00210FA0 83 45 00 AC */ lwz r26, 0xac(r5) +/* 80214044 00210FA4 48 12 CD FD */ bl __dt__6CTokenFv +/* 80214048 00210FA8 28 1A 00 00 */ cmplwi r26, 0 +/* 8021404C 00210FAC 41 82 00 3C */ beq lbl_80214088 +/* 80214050 00210FB0 7F E4 FB 78 */ mr r4, r31 +/* 80214054 00210FB4 38 61 00 5C */ addi r3, r1, 0x5c +/* 80214058 00210FB8 4B E2 45 29 */ bl GetWeaponDescription__17CProjectileWeaponCFv +/* 8021405C 00210FBC 80 61 00 64 */ lwz r3, 0x64(r1) +/* 80214060 00210FC0 38 A1 00 28 */ addi r5, r1, 0x28 +/* 80214064 00210FC4 38 80 00 00 */ li r4, 0 +/* 80214068 00210FC8 80 63 00 AC */ lwz r3, 0xac(r3) +/* 8021406C 00210FCC 81 83 00 00 */ lwz r12, 0(r3) +/* 80214070 00210FD0 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80214074 00210FD4 7D 89 03 A6 */ mtctr r12 +/* 80214078 00210FD8 4E 80 04 21 */ bctrl +/* 8021407C 00210FDC 38 61 00 5C */ addi r3, r1, 0x5c +/* 80214080 00210FE0 38 80 00 00 */ li r4, 0 +/* 80214084 00210FE4 48 12 CD BD */ bl __dt__6CTokenFv +lbl_80214088: +/* 80214088 00210FE8 7F E4 FB 78 */ mr r4, r31 +/* 8021408C 00210FEC 38 61 00 50 */ addi r3, r1, 0x50 +/* 80214090 00210FF0 4B E2 44 F1 */ bl GetWeaponDescription__17CProjectileWeaponCFv +/* 80214094 00210FF4 80 A1 00 58 */ lwz r5, 0x58(r1) +/* 80214098 00210FF8 38 61 00 50 */ addi r3, r1, 0x50 +/* 8021409C 00210FFC 38 80 00 00 */ li r4, 0 +/* 802140A0 00211000 83 45 00 B0 */ lwz r26, 0xb0(r5) +/* 802140A4 00211004 48 12 CD 9D */ bl __dt__6CTokenFv +/* 802140A8 00211008 28 1A 00 00 */ cmplwi r26, 0 +/* 802140AC 0021100C 41 82 00 3C */ beq lbl_802140E8 +/* 802140B0 00211010 7F E4 FB 78 */ mr r4, r31 +/* 802140B4 00211014 38 61 00 44 */ addi r3, r1, 0x44 +/* 802140B8 00211018 4B E2 44 C9 */ bl GetWeaponDescription__17CProjectileWeaponCFv +/* 802140BC 0021101C 80 61 00 4C */ lwz r3, 0x4c(r1) +/* 802140C0 00211020 38 A1 00 24 */ addi r5, r1, 0x24 +/* 802140C4 00211024 38 80 00 00 */ li r4, 0 +/* 802140C8 00211028 80 63 00 B0 */ lwz r3, 0xb0(r3) +/* 802140CC 0021102C 81 83 00 00 */ lwz r12, 0(r3) +/* 802140D0 00211030 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 802140D4 00211034 7D 89 03 A6 */ mtctr r12 +/* 802140D8 00211038 4E 80 04 21 */ bctrl +/* 802140DC 0021103C 38 61 00 44 */ addi r3, r1, 0x44 +/* 802140E0 00211040 38 80 00 00 */ li r4, 0 +/* 802140E4 00211044 48 12 CD 5D */ bl __dt__6CTokenFv +lbl_802140E8: +/* 802140E8 00211048 C0 42 B3 10 */ lfs f2, lbl_805AD030@sda21(r2) +/* 802140EC 0021104C 38 E0 00 00 */ li r7, 0 +/* 802140F0 00211050 C0 21 00 28 */ lfs f1, 0x28(r1) +/* 802140F4 00211054 39 00 00 09 */ li r8, 9 +/* 802140F8 00211058 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 802140FC 0021105C 38 C0 00 FF */ li r6, 0xff +/* 80214100 00211060 88 02 CC 41 */ lbz r0, lbl_805AE961@sda21(r2) +/* 80214104 00211064 38 A0 00 14 */ li r5, 0x14 +/* 80214108 00211068 D0 41 00 90 */ stfs f2, 0x90(r1) +/* 8021410C 0021106C 38 9B 01 70 */ addi r4, r27, 0x170 +/* 80214110 00211070 38 61 00 38 */ addi r3, r1, 0x38 +/* 80214114 00211074 D0 41 00 94 */ stfs f2, 0x94(r1) +/* 80214118 00211078 D0 41 00 98 */ stfs f2, 0x98(r1) +/* 8021411C 0021107C D0 41 00 9C */ stfs f2, 0x9c(r1) +/* 80214120 00211080 D0 41 00 A0 */ stfs f2, 0xa0(r1) +/* 80214124 00211084 D0 41 00 A4 */ stfs f2, 0xa4(r1) +/* 80214128 00211088 D0 21 00 A8 */ stfs f1, 0xa8(r1) +/* 8021412C 0021108C D0 01 00 AC */ stfs f0, 0xac(r1) +/* 80214130 00211090 91 01 00 B0 */ stw r8, 0xb0(r1) +/* 80214134 00211094 B0 E1 00 B4 */ sth r7, 0xb4(r1) +/* 80214138 00211098 98 C1 00 B6 */ stb r6, 0xb6(r1) +/* 8021413C 0021109C 98 A1 00 B7 */ stb r5, 0xb7(r1) +/* 80214140 002110A0 98 E1 00 B8 */ stb r7, 0xb8(r1) +/* 80214144 002110A4 98 01 00 B9 */ stb r0, 0xb9(r1) +/* 80214148 002110A8 81 9B 01 70 */ lwz r12, 0x170(r27) +/* 8021414C 002110AC 81 8C 00 18 */ lwz r12, 0x18(r12) +/* 80214150 002110B0 7D 89 03 A6 */ mtctr r12 +/* 80214154 002110B4 4E 80 04 21 */ bctrl +/* 80214158 002110B8 C0 41 00 38 */ lfs f2, 0x38(r1) +/* 8021415C 002110BC 38 7B 01 70 */ addi r3, r27, 0x170 +/* 80214160 002110C0 C0 21 00 3C */ lfs f1, 0x3c(r1) +/* 80214164 002110C4 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 80214168 002110C8 D0 41 00 90 */ stfs f2, 0x90(r1) +/* 8021416C 002110CC D0 21 00 94 */ stfs f1, 0x94(r1) +/* 80214170 002110D0 D0 01 00 98 */ stfs f0, 0x98(r1) +/* 80214174 002110D4 48 09 AF C1 */ bl GetVelocity__17CProjectileWeaponCFv +/* 80214178 002110D8 C0 03 00 00 */ lfs f0, 0(r3) +/* 8021417C 002110DC 38 9B 01 70 */ addi r4, r27, 0x170 +/* 80214180 002110E0 D0 01 00 9C */ stfs f0, 0x9c(r1) +/* 80214184 002110E4 C0 03 00 04 */ lfs f0, 4(r3) +/* 80214188 002110E8 D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 8021418C 002110EC C0 03 00 08 */ lfs f0, 8(r3) +/* 80214190 002110F0 38 61 00 2C */ addi r3, r1, 0x2c +/* 80214194 002110F4 D0 01 00 A4 */ stfs f0, 0xa4(r1) +/* 80214198 002110F8 4B E2 43 E9 */ bl GetWeaponDescription__17CProjectileWeaponCFv +/* 8021419C 002110FC 80 61 00 34 */ lwz r3, 0x34(r1) +/* 802141A0 00211100 80 03 00 A8 */ lwz r0, 0xa8(r3) +/* 802141A4 00211104 54 03 04 3E */ clrlwi r3, r0, 0x10 +/* 802141A8 00211108 48 0D 48 09 */ bl TranslateSFXID__11CSfxManagerFUs +/* 802141AC 0021110C B0 61 00 B4 */ sth r3, 0xb4(r1) +/* 802141B0 00211110 38 61 00 2C */ addi r3, r1, 0x2c +/* 802141B4 00211114 38 80 00 00 */ li r4, 0 +/* 802141B8 00211118 48 12 CC 89 */ bl __dt__6CTokenFv +/* 802141BC 0021111C A8 C2 C5 FA */ lha r6, lbl_805AE31A@sda21(r2) +/* 802141C0 00211120 38 61 00 1C */ addi r3, r1, 0x1c +/* 802141C4 00211124 81 02 C6 00 */ lwz r8, lbl_805AE320@sda21(r2) +/* 802141C8 00211128 38 81 00 90 */ addi r4, r1, 0x90 +/* 802141CC 0021112C 38 A0 00 01 */ li r5, 1 +/* 802141D0 00211130 38 E0 00 01 */ li r7, 1 +/* 802141D4 00211134 48 0D 5E 0D */ bl AddEmitter__11CSfxManagerFRQ29CAudioSys18C3DEmitterParmDatabsbi +/* 802141D8 00211138 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 802141DC 0021113C 90 1B 02 E8 */ stw r0, 0x2e8(r27) +lbl_802141E0: +/* 802141E0 00211140 A0 1B 00 EC */ lhz r0, 0xec(r27) +/* 802141E4 00211144 7F C3 F3 78 */ mr r3, r30 +/* 802141E8 00211148 80 BB 00 F0 */ lwz r5, 0xf0(r27) +/* 802141EC 0021114C 38 81 00 10 */ addi r4, r1, 0x10 +/* 802141F0 00211150 B0 01 00 0C */ sth r0, 0xc(r1) +/* 802141F4 00211154 B0 01 00 10 */ sth r0, 0x10(r1) +/* 802141F8 00211158 4B E3 0B 11 */ bl AddWeaponId__13CStateManagerF9TUniqueId11EWeaponType +lbl_802141FC: +/* 802141FC 0021115C A0 1D 00 00 */ lhz r0, 0(r29) +/* 80214200 00211160 7F 63 DB 78 */ mr r3, r27 +/* 80214204 00211164 7F 84 E3 78 */ mr r4, r28 +/* 80214208 00211168 7F C6 F3 78 */ mr r6, r30 +/* 8021420C 0021116C B0 01 00 08 */ sth r0, 8(r1) +/* 80214210 00211170 38 A1 00 08 */ addi r5, r1, 8 +/* 80214214 00211174 4B E2 43 B9 */ bl AcceptScriptMsg__15CGameProjectileF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 80214218 00211178 BB 41 01 18 */ lmw r26, 0x118(r1) +/* 8021421C 0021117C 80 01 01 34 */ lwz r0, 0x134(r1) +/* 80214220 00211180 7C 08 03 A6 */ mtlr r0 +/* 80214224 00211184 38 21 01 30 */ addi r1, r1, 0x130 +/* 80214228 00211188 4E 80 00 20 */ blr + +.global Accept__17CEnergyProjectileFR8IVisitor +Accept__17CEnergyProjectileFR8IVisitor: +/* 8021422C 0021118C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80214230 00211190 7C 08 02 A6 */ mflr r0 +/* 80214234 00211194 90 01 00 14 */ stw r0, 0x14(r1) +/* 80214238 00211198 7C 60 1B 78 */ mr r0, r3 +/* 8021423C 0021119C 7C 83 23 78 */ mr r3, r4 +/* 80214240 002111A0 81 84 00 00 */ lwz r12, 0(r4) +/* 80214244 002111A4 7C 04 03 78 */ mr r4, r0 +/* 80214248 002111A8 81 8C 00 20 */ lwz r12, 0x20(r12) +/* 8021424C 002111AC 7D 89 03 A6 */ mtctr r12 +/* 80214250 002111B0 4E 80 04 21 */ bctrl +/* 80214254 002111B4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80214258 002111B8 7C 08 03 A6 */ mtlr r0 +/* 8021425C 002111BC 38 21 00 10 */ addi r1, r1, 0x10 +/* 80214260 002111C0 4E 80 00 20 */ blr + +.global ResolveCollisionWithWorld__17CEnergyProjectileFRC14CRayCastResultR13CStateManager +ResolveCollisionWithWorld__17CEnergyProjectileFRC14CRayCastResultR13CStateManager: +/* 80214264 002111C4 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80214268 002111C8 7C 08 02 A6 */ mflr r0 +/* 8021426C 002111CC 90 01 00 44 */ stw r0, 0x44(r1) +/* 80214270 002111D0 38 00 00 00 */ li r0, 0 +/* 80214274 002111D4 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80214278 002111D8 7C BF 2B 78 */ mr r31, r5 +/* 8021427C 002111DC 93 C1 00 38 */ stw r30, 0x38(r1) +/* 80214280 002111E0 7C 9E 23 78 */ mr r30, r4 +/* 80214284 002111E4 93 A1 00 34 */ stw r29, 0x34(r1) +/* 80214288 002111E8 7C 7D 1B 78 */ mr r29, r3 +/* 8021428C 002111EC 80 C4 00 28 */ lwz r6, 0x28(r4) +/* 80214290 002111F0 38 80 FF FF */ li r4, -1 +/* 80214294 002111F4 81 0D A4 F8 */ lwz r8, lbl_805A90B8@sda21(r13) +/* 80214298 002111F8 81 2D A4 FC */ lwz r9, lbl_805A90BC@sda21(r13) +/* 8021429C 002111FC 80 FE 00 2C */ lwz r7, 0x2c(r30) +/* 802142A0 00211200 7D 06 30 38 */ and r6, r8, r6 +/* 802142A4 00211204 7C C3 00 38 */ and r3, r6, r0 +/* 802142A8 00211208 7D 25 38 38 */ and r5, r9, r7 +/* 802142AC 0021120C 7C A4 20 38 */ and r4, r5, r4 +/* 802142B0 00211210 48 0B B9 59 */ bl BitPosition__13CMaterialListFUx +/* 802142B4 00211214 48 09 E1 11 */ bl GetWorldCollisionResponseType__22CCollisionResponseDataFi +/* 802142B8 00211218 80 1D 00 E8 */ lwz r0, 0xe8(r29) +/* 802142BC 0021121C 7C 66 1B 78 */ mr r6, r3 +/* 802142C0 00211220 70 00 00 90 */ andi. r0, r0, 0x90 +/* 802142C4 00211224 2C 00 00 90 */ cmpwi r0, 0x90 +/* 802142C8 00211228 41 82 00 9C */ beq lbl_80214364 +/* 802142CC 0021122C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 802142D0 00211230 3C 60 80 57 */ lis r3, lbl_8056D578@ha +/* 802142D4 00211234 39 03 D5 78 */ addi r8, r3, lbl_8056D578@l +/* 802142D8 00211238 7F E7 FB 78 */ mr r7, r31 +/* 802142DC 0021123C B0 01 00 14 */ sth r0, 0x14(r1) +/* 802142E0 00211240 7F A3 EB 78 */ mr r3, r29 +/* 802142E4 00211244 38 9E 00 04 */ addi r4, r30, 4 +/* 802142E8 00211248 38 BE 00 10 */ addi r5, r30, 0x10 +/* 802142EC 0021124C 81 9D 00 00 */ lwz r12, 0(r29) +/* 802142F0 00211250 39 21 00 14 */ addi r9, r1, 0x14 +/* 802142F4 00211254 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 802142F8 00211258 7D 89 03 A6 */ mtctr r12 +/* 802142FC 0021125C 4E 80 04 21 */ bctrl +/* 80214300 00211260 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80214304 00211264 41 82 00 54 */ beq lbl_80214358 +/* 80214308 00211268 80 1D 00 F8 */ lwz r0, 0xf8(r29) +/* 8021430C 0021126C 7F E3 FB 78 */ mr r3, r31 +/* 80214310 00211270 80 FD 00 FC */ lwz r7, 0xfc(r29) +/* 80214314 00211274 7F A5 EB 78 */ mr r5, r29 +/* 80214318 00211278 38 81 00 10 */ addi r4, r1, 0x10 +/* 8021431C 0021127C 38 DE 00 04 */ addi r6, r30, 4 +/* 80214320 00211280 90 E1 00 1C */ stw r7, 0x1c(r1) +/* 80214324 00211284 38 FD 01 2C */ addi r7, r29, 0x12c +/* 80214328 00211288 39 01 00 18 */ addi r8, r1, 0x18 +/* 8021432C 0021128C 90 01 00 18 */ stw r0, 0x18(r1) +/* 80214330 00211290 80 1D 01 00 */ lwz r0, 0x100(r29) +/* 80214334 00211294 81 3D 01 04 */ lwz r9, 0x104(r29) +/* 80214338 00211298 91 21 00 24 */ stw r9, 0x24(r1) +/* 8021433C 0021129C 90 01 00 20 */ stw r0, 0x20(r1) +/* 80214340 002112A0 80 1D 01 08 */ lwz r0, 0x108(r29) +/* 80214344 002112A4 90 01 00 28 */ stw r0, 0x28(r1) +/* 80214348 002112A8 A0 1D 00 EC */ lhz r0, 0xec(r29) +/* 8021434C 002112AC B0 01 00 0C */ sth r0, 0xc(r1) +/* 80214350 002112B0 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80214354 002112B4 4B E3 49 59 */ bl ApplyDamageToWorld__13CStateManagerF9TUniqueIdRC6CActorRC9CVector3fRC11CDamageInfoRC15CMaterialFilter +lbl_80214358: +/* 80214358 002112B8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8021435C 002112BC B0 01 00 08 */ sth r0, 8(r1) +/* 80214360 002112C0 B0 1D 02 C2 */ sth r0, 0x2c2(r29) +lbl_80214364: +/* 80214364 002112C4 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80214368 002112C8 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8021436C 002112CC 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 80214370 002112D0 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 80214374 002112D4 7C 08 03 A6 */ mtlr r0 +/* 80214378 002112D8 38 21 00 40 */ addi r1, r1, 0x40 +/* 8021437C 002112DC 4E 80 00 20 */ blr + +.global ResolveCollisionWithActor__17CEnergyProjectileFRC14CRayCastResultR6CActorR13CStateManager +ResolveCollisionWithActor__17CEnergyProjectileFRC14CRayCastResultR6CActorR13CStateManager: +/* 80214380 002112E0 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 80214384 002112E4 7C 08 02 A6 */ mflr r0 +/* 80214388 002112E8 90 01 00 84 */ stw r0, 0x84(r1) +/* 8021438C 002112EC BF 61 00 6C */ stmw r27, 0x6c(r1) +/* 80214390 002112F0 7C 7B 1B 78 */ mr r27, r3 +/* 80214394 002112F4 7C 9C 23 78 */ mr r28, r4 +/* 80214398 002112F8 7C BD 2B 78 */ mr r29, r5 +/* 8021439C 002112FC 7C DE 33 78 */ mr r30, r6 +/* 802143A0 00211300 38 61 00 5C */ addi r3, r1, 0x5c +/* 802143A4 00211304 38 81 00 50 */ addi r4, r1, 0x50 +/* 802143A8 00211308 A0 05 00 08 */ lhz r0, 8(r5) +/* 802143AC 0021130C B0 1B 02 C2 */ sth r0, 0x2c2(r27) +/* 802143B0 00211310 83 FB 00 E8 */ lwz r31, 0xe8(r27) +/* 802143B4 00211314 C0 5B 00 58 */ lfs f2, 0x58(r27) +/* 802143B8 00211318 C0 3B 00 48 */ lfs f1, 0x48(r27) +/* 802143BC 0021131C C0 1B 00 38 */ lfs f0, 0x38(r27) +/* 802143C0 00211320 B0 01 00 28 */ sth r0, 0x28(r1) +/* 802143C4 00211324 B0 01 00 2C */ sth r0, 0x2c(r1) +/* 802143C8 00211328 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 802143CC 0021132C D0 21 00 54 */ stfs f1, 0x54(r1) +/* 802143D0 00211330 D0 41 00 58 */ stfs f2, 0x58(r1) +/* 802143D4 00211334 48 10 04 7D */ bl AsNormalized__9CVector3fCFv +/* 802143D8 00211338 7F A3 EB 78 */ mr r3, r29 +/* 802143DC 0021133C 7F E7 FB 78 */ mr r7, r31 +/* 802143E0 00211340 81 9D 00 00 */ lwz r12, 0(r29) +/* 802143E4 00211344 38 9C 00 04 */ addi r4, r28, 4 +/* 802143E8 00211348 38 A1 00 5C */ addi r5, r1, 0x5c +/* 802143EC 0021134C 38 DB 01 2C */ addi r6, r27, 0x12c +/* 802143F0 00211350 81 8C 00 58 */ lwz r12, 0x58(r12) +/* 802143F4 00211354 7D 89 03 A6 */ mtctr r12 +/* 802143F8 00211358 4E 80 04 21 */ bctrl +/* 802143FC 0021135C 7C 60 1B 78 */ mr r0, r3 +/* 80214400 00211360 7F A3 EB 78 */ mr r3, r29 +/* 80214404 00211364 81 9D 00 00 */ lwz r12, 0(r29) +/* 80214408 00211368 7C 1F 03 78 */ mr r31, r0 +/* 8021440C 0021136C 7F 64 DB 78 */ mr r4, r27 +/* 80214410 00211370 7F C5 F3 78 */ mr r5, r30 +/* 80214414 00211374 81 8C 00 44 */ lwz r12, 0x44(r12) +/* 80214418 00211378 7D 89 03 A6 */ mtctr r12 +/* 8021441C 0021137C 4E 80 04 21 */ bctrl +/* 80214420 00211380 A0 1D 00 08 */ lhz r0, 8(r29) +/* 80214424 00211384 7F A3 EB 78 */ mr r3, r29 +/* 80214428 00211388 B0 01 00 24 */ sth r0, 0x24(r1) +/* 8021442C 0021138C 81 9D 00 00 */ lwz r12, 0(r29) +/* 80214430 00211390 B0 01 00 20 */ sth r0, 0x20(r1) +/* 80214434 00211394 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 80214438 00211398 7D 89 03 A6 */ mtctr r12 +/* 8021443C 0021139C 4E 80 04 21 */ bctrl +/* 80214440 002113A0 81 9B 00 00 */ lwz r12, 0(r27) +/* 80214444 002113A4 7C 68 1B 78 */ mr r8, r3 +/* 80214448 002113A8 7F 63 DB 78 */ mr r3, r27 +/* 8021444C 002113AC 7F E6 FB 78 */ mr r6, r31 +/* 80214450 002113B0 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 80214454 002113B4 7F C7 F3 78 */ mr r7, r30 +/* 80214458 002113B8 38 9C 00 04 */ addi r4, r28, 4 +/* 8021445C 002113BC 38 BC 00 10 */ addi r5, r28, 0x10 +/* 80214460 002113C0 39 21 00 24 */ addi r9, r1, 0x24 +/* 80214464 002113C4 7D 89 03 A6 */ mtctr r12 +/* 80214468 002113C8 4E 80 04 21 */ bctrl +/* 8021446C 002113CC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80214470 002113D0 40 82 00 3C */ bne lbl_802144AC +/* 80214474 002113D4 A0 1B 00 08 */ lhz r0, 8(r27) +/* 80214478 002113D8 7F C3 F3 78 */ mr r3, r30 +/* 8021447C 002113DC 7F A4 EB 78 */ mr r4, r29 +/* 80214480 002113E0 38 A1 00 1C */ addi r5, r1, 0x1c +/* 80214484 002113E4 B0 01 00 18 */ sth r0, 0x18(r1) +/* 80214488 002113E8 38 C0 00 1E */ li r6, 0x1e +/* 8021448C 002113EC B0 01 00 1C */ sth r0, 0x1c(r1) +/* 80214490 002113F0 4B E2 FA 41 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +/* 80214494 002113F4 7F A3 EB 78 */ mr r3, r29 +/* 80214498 002113F8 7F C5 F3 78 */ mr r5, r30 +/* 8021449C 002113FC 38 80 00 1F */ li r4, 0x1f +/* 802144A0 00211400 38 C0 FF FF */ li r6, -1 +/* 802144A4 00211404 4B E3 CC 1D */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 802144A8 00211408 48 00 00 28 */ b lbl_802144D0 +lbl_802144AC: +/* 802144AC 0021140C 7F 63 DB 78 */ mr r3, r27 +/* 802144B0 00211410 7F 84 E3 78 */ mr r4, r28 +/* 802144B4 00211414 7F A5 EB 78 */ mr r5, r29 +/* 802144B8 00211418 7F C6 F3 78 */ mr r6, r30 +/* 802144BC 0021141C 4B E2 30 99 */ bl ResolveCollisionWithActor__15CGameProjectileFRC14CRayCastResultR6CActorR13CStateManager +/* 802144C0 00211420 7F 63 DB 78 */ mr r3, r27 +/* 802144C4 00211424 7F C4 F3 78 */ mr r4, r30 +/* 802144C8 00211428 38 BB 01 2C */ addi r5, r27, 0x12c +/* 802144CC 0021142C 4B E2 3D A9 */ bl ApplyDamageToActors__15CGameProjectileFR13CStateManager +lbl_802144D0: +/* 802144D0 00211430 7F A4 EB 78 */ mr r4, r29 +/* 802144D4 00211434 38 61 00 30 */ addi r3, r1, 0x30 +/* 802144D8 00211438 4B E9 A8 5D */ bl "__ct__31TCastToPtr<17CEnergyProjectile>FR7CEntity" +/* 802144DC 0021143C 83 E3 00 04 */ lwz r31, 4(r3) +/* 802144E0 00211440 28 1F 00 00 */ cmplwi r31, 0 +/* 802144E4 00211444 41 82 00 90 */ beq lbl_80214574 +/* 802144E8 00211448 A0 9B 00 EC */ lhz r4, 0xec(r27) +/* 802144EC 0021144C 7F 63 DB 78 */ mr r3, r27 +/* 802144F0 00211450 B0 9F 02 C4 */ sth r4, 0x2c4(r31) +/* 802144F4 00211454 A0 1B 00 08 */ lhz r0, 8(r27) +/* 802144F8 00211458 B0 81 00 10 */ sth r4, 0x10(r1) +/* 802144FC 0021145C B0 01 00 0C */ sth r0, 0xc(r1) +/* 80214500 00211460 C0 5B 00 58 */ lfs f2, 0x58(r27) +/* 80214504 00211464 C0 3B 00 48 */ lfs f1, 0x48(r27) +/* 80214508 00211468 C0 1B 00 38 */ lfs f0, 0x38(r27) +/* 8021450C 0021146C B0 81 00 14 */ sth r4, 0x14(r1) +/* 80214510 00211470 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 80214514 00211474 D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 80214518 00211478 D0 41 00 40 */ stfs f2, 0x40(r1) +/* 8021451C 0021147C C0 5B 00 60 */ lfs f2, 0x60(r27) +/* 80214520 00211480 C0 3B 00 50 */ lfs f1, 0x50(r27) +/* 80214524 00211484 C0 1B 00 40 */ lfs f0, 0x40(r27) +/* 80214528 00211488 B0 01 00 08 */ sth r0, 8(r1) +/* 8021452C 0021148C D0 01 00 44 */ stfs f0, 0x44(r1) +/* 80214530 00211490 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 80214534 00211494 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 80214538 00211498 81 9B 00 00 */ lwz r12, 0(r27) +/* 8021453C 0021149C 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 80214540 002114A0 7D 89 03 A6 */ mtctr r12 +/* 80214544 002114A4 4E 80 04 21 */ bctrl +/* 80214548 002114A8 81 9F 00 00 */ lwz r12, 0(r31) +/* 8021454C 002114AC 7C 68 1B 78 */ mr r8, r3 +/* 80214550 002114B0 7F E3 FB 78 */ mr r3, r31 +/* 80214554 002114B4 7F C7 F3 78 */ mr r7, r30 +/* 80214558 002114B8 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 8021455C 002114BC 38 81 00 44 */ addi r4, r1, 0x44 +/* 80214560 002114C0 38 A1 00 38 */ addi r5, r1, 0x38 +/* 80214564 002114C4 39 21 00 0C */ addi r9, r1, 0xc +/* 80214568 002114C8 38 C0 00 0D */ li r6, 0xd +/* 8021456C 002114CC 7D 89 03 A6 */ mtctr r12 +/* 80214570 002114D0 4E 80 04 21 */ bctrl +lbl_80214574: +/* 80214574 002114D4 BB 61 00 6C */ lmw r27, 0x6c(r1) +/* 80214578 002114D8 80 01 00 84 */ lwz r0, 0x84(r1) +/* 8021457C 002114DC 7C 08 03 A6 */ mtlr r0 +/* 80214580 002114E0 38 21 00 80 */ addi r1, r1, 0x80 +/* 80214584 002114E4 4E 80 00 20 */ blr + +.global Think__17CEnergyProjectileFfR13CStateManager +Think__17CEnergyProjectileFfR13CStateManager: +/* 80214588 002114E8 94 21 FE C0 */ stwu r1, -0x140(r1) +/* 8021458C 002114EC 7C 08 02 A6 */ mflr r0 +/* 80214590 002114F0 90 01 01 44 */ stw r0, 0x144(r1) +/* 80214594 002114F4 DB E1 01 30 */ stfd f31, 0x130(r1) +/* 80214598 002114F8 F3 E1 01 38 */ psq_st f31, 312(r1), 0, qr0 +/* 8021459C 002114FC 93 E1 01 2C */ stw r31, 0x12c(r1) +/* 802145A0 00211500 93 C1 01 28 */ stw r30, 0x128(r1) +/* 802145A4 00211504 93 A1 01 24 */ stw r29, 0x124(r1) +/* 802145A8 00211508 93 81 01 20 */ stw r28, 0x120(r1) +/* 802145AC 0021150C FF E0 08 90 */ fmr f31, f1 +/* 802145B0 00211510 7C 7D 1B 78 */ mr r29, r3 +/* 802145B4 00211514 7C 9E 23 78 */ mr r30, r4 +/* 802145B8 00211518 4B EE DB 21 */ bl Think__7CWeaponFfR13CStateManager +/* 802145BC 0021151C 80 7E 08 50 */ lwz r3, 0x850(r30) +/* 802145C0 00211520 80 1D 00 04 */ lwz r0, 4(r29) +/* 802145C4 00211524 80 C3 00 68 */ lwz r6, 0x68(r3) +/* 802145C8 00211528 7C 00 30 00 */ cmpw r0, r6 +/* 802145CC 0021152C 41 82 00 2C */ beq lbl_802145F8 +/* 802145D0 00211530 80 1D 00 E8 */ lwz r0, 0xe8(r29) +/* 802145D4 00211534 54 00 05 28 */ rlwinm r0, r0, 0, 0x14, 0x14 +/* 802145D8 00211538 2C 00 08 00 */ cmpwi r0, 0x800 +/* 802145DC 0021153C 40 82 00 1C */ bne lbl_802145F8 +/* 802145E0 00211540 90 C1 00 34 */ stw r6, 0x34(r1) +/* 802145E4 00211544 7F C3 F3 78 */ mr r3, r30 +/* 802145E8 00211548 7F A4 EB 78 */ mr r4, r29 +/* 802145EC 0021154C 38 A1 00 38 */ addi r5, r1, 0x38 +/* 802145F0 00211550 90 C1 00 38 */ stw r6, 0x38(r1) +/* 802145F4 00211554 4B E3 0C 85 */ bl SetActorAreaId__13CStateManagerFR6CActor7TAreaId +lbl_802145F8: +/* 802145F8 00211558 FC 20 F8 90 */ fmr f1, f31 +/* 802145FC 0021155C 7F A3 EB 78 */ mr r3, r29 +/* 80214600 00211560 7F C4 F3 78 */ mr r4, r30 +/* 80214604 00211564 4B E2 38 F9 */ bl UpdateProjectileMovement__15CGameProjectileFfR13CStateManager +/* 80214608 00211568 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8021460C 0021156C 7F A4 EB 78 */ mr r4, r29 +/* 80214610 00211570 7F C6 F3 78 */ mr r6, r30 +/* 80214614 00211574 38 61 00 70 */ addi r3, r1, 0x70 +/* 80214618 00211578 B0 01 00 28 */ sth r0, 0x28(r1) +/* 8021461C 0021157C 38 A1 00 28 */ addi r5, r1, 0x28 +/* 80214620 00211580 4B E2 39 DD */ bl DoCollisionCheck__15CGameProjectileFR9TUniqueIdR13CStateManager +/* 80214624 00211584 88 81 00 90 */ lbz r4, 0x90(r1) +/* 80214628 00211588 C0 E1 00 70 */ lfs f7, 0x70(r1) +/* 8021462C 0021158C C0 C1 00 74 */ lfs f6, 0x74(r1) +/* 80214630 00211590 28 04 00 00 */ cmplwi r4, 0 +/* 80214634 00211594 C0 A1 00 78 */ lfs f5, 0x78(r1) +/* 80214638 00211598 C0 81 00 7C */ lfs f4, 0x7c(r1) +/* 8021463C 0021159C C0 61 00 80 */ lfs f3, 0x80(r1) +/* 80214640 002115A0 C0 41 00 84 */ lfs f2, 0x84(r1) +/* 80214644 002115A4 C0 21 00 88 */ lfs f1, 0x88(r1) +/* 80214648 002115A8 C0 01 00 8C */ lfs f0, 0x8c(r1) +/* 8021464C 002115AC 80 01 00 98 */ lwz r0, 0x98(r1) +/* 80214650 002115B0 80 61 00 9C */ lwz r3, 0x9c(r1) +/* 80214654 002115B4 D0 E1 00 A0 */ stfs f7, 0xa0(r1) +/* 80214658 002115B8 D0 C1 00 A4 */ stfs f6, 0xa4(r1) +/* 8021465C 002115BC D0 A1 00 A8 */ stfs f5, 0xa8(r1) +/* 80214660 002115C0 D0 81 00 AC */ stfs f4, 0xac(r1) +/* 80214664 002115C4 D0 61 00 B0 */ stfs f3, 0xb0(r1) +/* 80214668 002115C8 D0 41 00 B4 */ stfs f2, 0xb4(r1) +/* 8021466C 002115CC D0 21 00 B8 */ stfs f1, 0xb8(r1) +/* 80214670 002115D0 D0 01 00 BC */ stfs f0, 0xbc(r1) +/* 80214674 002115D4 98 81 00 C0 */ stb r4, 0xc0(r1) +/* 80214678 002115D8 90 61 00 CC */ stw r3, 0xcc(r1) +/* 8021467C 002115DC 90 01 00 C8 */ stw r0, 0xc8(r1) +/* 80214680 002115E0 41 82 00 60 */ beq lbl_802146E0 +/* 80214684 002115E4 A0 01 00 28 */ lhz r0, 0x28(r1) +/* 80214688 002115E8 7F C3 F3 78 */ mr r3, r30 +/* 8021468C 002115EC 38 81 00 24 */ addi r4, r1, 0x24 +/* 80214690 002115F0 B0 01 00 24 */ sth r0, 0x24(r1) +/* 80214694 002115F4 4B E3 7E E1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80214698 002115F8 7C 64 1B 78 */ mr r4, r3 +/* 8021469C 002115FC 38 61 00 44 */ addi r3, r1, 0x44 +/* 802146A0 00211600 4B E9 B5 F1 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 802146A4 00211604 80 A3 00 04 */ lwz r5, 4(r3) +/* 802146A8 00211608 28 05 00 00 */ cmplwi r5, 0 +/* 802146AC 0021160C 41 82 00 24 */ beq lbl_802146D0 +/* 802146B0 00211610 81 9D 00 00 */ lwz r12, 0(r29) +/* 802146B4 00211614 7F A3 EB 78 */ mr r3, r29 +/* 802146B8 00211618 7F C6 F3 78 */ mr r6, r30 +/* 802146BC 0021161C 38 81 00 A0 */ addi r4, r1, 0xa0 +/* 802146C0 00211620 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 802146C4 00211624 7D 89 03 A6 */ mtctr r12 +/* 802146C8 00211628 4E 80 04 21 */ bctrl +/* 802146CC 0021162C 48 00 00 14 */ b lbl_802146E0 +lbl_802146D0: +/* 802146D0 00211630 7F A3 EB 78 */ mr r3, r29 +/* 802146D4 00211634 7F C5 F3 78 */ mr r5, r30 +/* 802146D8 00211638 38 81 00 A0 */ addi r4, r1, 0xa0 +/* 802146DC 0021163C 4B FF FB 89 */ bl ResolveCollisionWithWorld__17CEnergyProjectileFRC14CRayCastResultR13CStateManager +lbl_802146E0: +/* 802146E0 00211640 3B FD 01 70 */ addi r31, r29, 0x170 +/* 802146E4 00211644 7F E3 FB 78 */ mr r3, r31 +/* 802146E8 00211648 48 09 BF 61 */ bl UpdateParticleFX__17CProjectileWeaponFv +/* 802146EC 0021164C 88 1D 02 E4 */ lbz r0, 0x2e4(r29) +/* 802146F0 00211650 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 802146F4 00211654 41 82 00 64 */ beq lbl_80214758 +/* 802146F8 00211658 88 1D 03 D0 */ lbz r0, 0x3d0(r29) +/* 802146FC 0021165C 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 80214700 00211660 41 82 00 58 */ beq lbl_80214758 +/* 80214704 00211664 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80214708 00211668 3C A0 80 5A */ lis r5, lbl_805A66F4@ha +/* 8021470C 0021166C 3C 80 80 57 */ lis r4, lbl_8056D578@ha +/* 80214710 00211670 7F A3 EB 78 */ mr r3, r29 +/* 80214714 00211674 B0 01 00 20 */ sth r0, 0x20(r1) +/* 80214718 00211678 39 04 D5 78 */ addi r8, r4, lbl_8056D578@l +/* 8021471C 0021167C 38 A5 66 F4 */ addi r5, r5, lbl_805A66F4@l +/* 80214720 00211680 7F C7 F3 78 */ mr r7, r30 +/* 80214724 00211684 C0 5D 00 60 */ lfs f2, 0x60(r29) +/* 80214728 00211688 38 81 00 64 */ addi r4, r1, 0x64 +/* 8021472C 0021168C C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 80214730 00211690 39 21 00 20 */ addi r9, r1, 0x20 +/* 80214734 00211694 C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 80214738 00211698 38 C0 00 01 */ li r6, 1 +/* 8021473C 0021169C D0 01 00 64 */ stfs f0, 0x64(r1) +/* 80214740 002116A0 D0 21 00 68 */ stfs f1, 0x68(r1) +/* 80214744 002116A4 D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 80214748 002116A8 81 9D 00 00 */ lwz r12, 0(r29) +/* 8021474C 002116AC 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 80214750 002116B0 7D 89 03 A6 */ mtctr r12 +/* 80214754 002116B4 4E 80 04 21 */ bctrl +lbl_80214758: +/* 80214758 002116B8 A0 BD 02 C8 */ lhz r5, 0x2c8(r29) +/* 8021475C 002116BC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80214760 002116C0 7C 05 00 40 */ cmplw r5, r0 +/* 80214764 002116C4 41 82 00 D0 */ beq lbl_80214834 +/* 80214768 002116C8 B0 A1 00 18 */ sth r5, 0x18(r1) +/* 8021476C 002116CC 7F C3 F3 78 */ mr r3, r30 +/* 80214770 002116D0 38 81 00 1C */ addi r4, r1, 0x1c +/* 80214774 002116D4 B0 A1 00 1C */ sth r5, 0x1c(r1) +/* 80214778 002116D8 4B E3 7D FD */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8021477C 002116DC 7C 64 1B 78 */ mr r4, r3 +/* 80214780 002116E0 38 61 00 3C */ addi r3, r1, 0x3c +/* 80214784 002116E4 4B E9 93 01 */ bl "__ct__24TCastToPtr<10CGameLight>FP7CEntity" +/* 80214788 002116E8 83 83 00 04 */ lwz r28, 4(r3) +/* 8021478C 002116EC 28 1C 00 00 */ cmplwi r28, 0 +/* 80214790 002116F0 41 82 00 A4 */ beq lbl_80214834 +/* 80214794 002116F4 38 7C 00 34 */ addi r3, r28, 0x34 +/* 80214798 002116F8 38 9D 00 34 */ addi r4, r29, 0x34 +/* 8021479C 002116FC 48 0F E3 A5 */ bl __as__12CTransform4fFRC12CTransform4f +/* 802147A0 00211700 88 1C 00 E4 */ lbz r0, 0xe4(r28) +/* 802147A4 00211704 38 A0 00 01 */ li r5, 1 +/* 802147A8 00211708 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 802147AC 0021170C 7F 83 E3 78 */ mr r3, r28 +/* 802147B0 00211710 98 1C 00 E4 */ stb r0, 0xe4(r28) +/* 802147B4 00211714 38 81 00 58 */ addi r4, r1, 0x58 +/* 802147B8 00211718 88 1C 00 E4 */ lbz r0, 0xe4(r28) +/* 802147BC 0021171C 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 802147C0 00211720 98 1C 00 E4 */ stb r0, 0xe4(r28) +/* 802147C4 00211724 88 1C 00 E4 */ lbz r0, 0xe4(r28) +/* 802147C8 00211728 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d +/* 802147CC 0021172C 98 1C 00 E4 */ stb r0, 0xe4(r28) +/* 802147D0 00211730 C0 5D 00 60 */ lfs f2, 0x60(r29) +/* 802147D4 00211734 C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 802147D8 00211738 C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 802147DC 0021173C D0 01 00 58 */ stfs f0, 0x58(r1) +/* 802147E0 00211740 D0 21 00 5C */ stfs f1, 0x5c(r1) +/* 802147E4 00211744 D0 41 00 60 */ stfs f2, 0x60(r1) +/* 802147E8 00211748 4B E3 E6 A5 */ bl SetTranslation__6CActorFRC9CVector3f +/* 802147EC 0021174C 80 7F 00 FC */ lwz r3, 0xfc(r31) +/* 802147F0 00211750 28 03 00 00 */ cmplwi r3, 0 +/* 802147F4 00211754 41 82 00 40 */ beq lbl_80214834 +/* 802147F8 00211758 81 83 00 00 */ lwz r12, 0(r3) +/* 802147FC 0021175C 81 8C 00 64 */ lwz r12, 0x64(r12) +/* 80214800 00211760 7D 89 03 A6 */ mtctr r12 +/* 80214804 00211764 4E 80 04 21 */ bctrl +/* 80214808 00211768 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8021480C 0021176C 41 82 00 28 */ beq lbl_80214834 +/* 80214810 00211770 80 9F 00 FC */ lwz r4, 0xfc(r31) +/* 80214814 00211774 38 61 00 D0 */ addi r3, r1, 0xd0 +/* 80214818 00211778 81 84 00 00 */ lwz r12, 0(r4) +/* 8021481C 0021177C 81 8C 00 68 */ lwz r12, 0x68(r12) +/* 80214820 00211780 7D 89 03 A6 */ mtctr r12 +/* 80214824 00211784 4E 80 04 21 */ bctrl +/* 80214828 00211788 7F 83 E3 78 */ mr r3, r28 +/* 8021482C 0021178C 38 81 00 D0 */ addi r4, r1, 0xd0 +/* 80214830 00211790 4B EA 0F 15 */ bl SetLight__10CGameLightFRC6CLight +lbl_80214834: +/* 80214834 00211794 80 1D 02 E8 */ lwz r0, 0x2e8(r29) +/* 80214838 00211798 28 00 00 00 */ cmplwi r0, 0 +/* 8021483C 0021179C 41 82 00 70 */ beq lbl_802148AC +/* 80214840 002117A0 80 1D 02 E8 */ lwz r0, 0x2e8(r29) +/* 80214844 002117A4 7F E3 FB 78 */ mr r3, r31 +/* 80214848 002117A8 90 01 00 30 */ stw r0, 0x30(r1) +/* 8021484C 002117AC 48 09 A8 E9 */ bl GetVelocity__17CProjectileWeaponCFv +/* 80214850 002117B0 7F E4 FB 78 */ mr r4, r31 +/* 80214854 002117B4 7C 7C 1B 78 */ mr r28, r3 +/* 80214858 002117B8 81 9F 00 00 */ lwz r12, 0(r31) +/* 8021485C 002117BC 38 61 00 4C */ addi r3, r1, 0x4c +/* 80214860 002117C0 81 8C 00 18 */ lwz r12, 0x18(r12) +/* 80214864 002117C4 7D 89 03 A6 */ mtctr r12 +/* 80214868 002117C8 4E 80 04 21 */ bctrl +/* 8021486C 002117CC 7F 85 E3 78 */ mr r5, r28 +/* 80214870 002117D0 38 61 00 30 */ addi r3, r1, 0x30 +/* 80214874 002117D4 38 81 00 4C */ addi r4, r1, 0x4c +/* 80214878 002117D8 38 C0 00 FF */ li r6, 0xff +/* 8021487C 002117DC 48 0D 56 35 */ bl UpdateEmitter__11CSfxManagerF10CSfxHandleRC9CVector3fRC9CVector3fUc +/* 80214880 002117E0 88 BD 02 E4 */ lbz r5, 0x2e4(r29) +/* 80214884 002117E4 38 80 20 00 */ li r4, 0x2000 +/* 80214888 002117E8 80 1D 02 E8 */ lwz r0, 0x2e8(r29) +/* 8021488C 002117EC 38 61 00 2C */ addi r3, r1, 0x2c +/* 80214890 002117F0 54 A6 DF FE */ rlwinm r6, r5, 0x1b, 0x1f, 0x1f +/* 80214894 002117F4 7C A6 00 D0 */ neg r5, r6 +/* 80214898 002117F8 90 01 00 2C */ stw r0, 0x2c(r1) +/* 8021489C 002117FC 7C A0 33 78 */ or r0, r5, r6 +/* 802148A0 00211800 7C 00 FE 70 */ srawi r0, r0, 0x1f +/* 802148A4 00211804 7C 84 00 78 */ andc r4, r4, r0 +/* 802148A8 00211808 48 0D 46 05 */ bl PitchBend__11CSfxManagerF10CSfxHandlei +lbl_802148AC: +/* 802148AC 0021180C C0 3D 03 D4 */ lfs f1, 0x3d4(r29) +/* 802148B0 00211810 C0 02 B3 1C */ lfs f0, lbl_805AD03C@sda21(r2) +/* 802148B4 00211814 EC 21 F8 2A */ fadds f1, f1, f31 +/* 802148B8 00211818 D0 3D 03 D4 */ stfs f1, 0x3d4(r29) +/* 802148BC 0021181C C0 3D 03 D4 */ lfs f1, 0x3d4(r29) +/* 802148C0 00211820 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802148C4 00211824 40 81 00 20 */ ble lbl_802148E4 +/* 802148C8 00211828 A0 1D 00 08 */ lhz r0, 8(r29) +/* 802148CC 0021182C 7F C3 F3 78 */ mr r3, r30 +/* 802148D0 00211830 38 81 00 14 */ addi r4, r1, 0x14 +/* 802148D4 00211834 B0 01 00 10 */ sth r0, 0x10(r1) +/* 802148D8 00211838 B0 01 00 14 */ sth r0, 0x14(r1) +/* 802148DC 0021183C 4B E3 79 91 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +/* 802148E0 00211840 48 00 00 38 */ b lbl_80214918 +lbl_802148E4: +/* 802148E4 00211844 7F E3 FB 78 */ mr r3, r31 +/* 802148E8 00211848 48 09 B0 B5 */ bl IsSystemDeletable__17CProjectileWeaponCFv +/* 802148EC 0021184C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 802148F0 00211850 40 82 00 10 */ bne lbl_80214900 +/* 802148F4 00211854 88 1D 03 D0 */ lbz r0, 0x3d0(r29) +/* 802148F8 00211858 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 802148FC 0021185C 41 82 00 1C */ beq lbl_80214918 +lbl_80214900: +/* 80214900 00211860 A0 1D 00 08 */ lhz r0, 8(r29) +/* 80214904 00211864 7F C3 F3 78 */ mr r3, r30 +/* 80214908 00211868 38 81 00 0C */ addi r4, r1, 0xc +/* 8021490C 0021186C B0 01 00 08 */ sth r0, 8(r1) +/* 80214910 00211870 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80214914 00211874 4B E3 79 59 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +lbl_80214918: +/* 80214918 00211878 E3 E1 01 38 */ psq_l f31, 312(r1), 0, qr0 +/* 8021491C 0021187C 80 01 01 44 */ lwz r0, 0x144(r1) +/* 80214920 00211880 CB E1 01 30 */ lfd f31, 0x130(r1) +/* 80214924 00211884 83 E1 01 2C */ lwz r31, 0x12c(r1) +/* 80214928 00211888 83 C1 01 28 */ lwz r30, 0x128(r1) +/* 8021492C 0021188C 83 A1 01 24 */ lwz r29, 0x124(r1) +/* 80214930 00211890 83 81 01 20 */ lwz r28, 0x120(r1) +/* 80214934 00211894 7C 08 03 A6 */ mtlr r0 +/* 80214938 00211898 38 21 01 40 */ addi r1, r1, 0x140 +/* 8021493C 0021189C 4E 80 00 20 */ blr + +.global Render__17CEnergyProjectileCFRC13CStateManager +Render__17CEnergyProjectileCFRC13CStateManager: +/* 80214940 002118A0 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80214944 002118A4 7C 08 02 A6 */ mflr r0 +/* 80214948 002118A8 90 01 00 44 */ stw r0, 0x44(r1) +/* 8021494C 002118AC 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80214950 002118B0 7C 9F 23 78 */ mr r31, r4 +/* 80214954 002118B4 93 C1 00 38 */ stw r30, 0x38(r1) +/* 80214958 002118B8 7C 7E 1B 78 */ mr r30, r3 +/* 8021495C 002118BC 93 A1 00 34 */ stw r29, 0x34(r1) +/* 80214960 002118C0 80 64 08 B8 */ lwz r3, 0x8b8(r4) +/* 80214964 002118C4 80 63 00 00 */ lwz r3, 0(r3) +/* 80214968 002118C8 4B E7 CB F1 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager +/* 8021496C 002118CC 7C 7D 1B 79 */ or. r29, r3, r3 +/* 80214970 002118D0 40 82 00 68 */ bne lbl_802149D8 +/* 80214974 002118D4 80 7E 00 E8 */ lwz r3, 0xe8(r30) +/* 80214978 002118D8 54 60 07 7A */ rlwinm r0, r3, 0, 0x1d, 0x1d +/* 8021497C 002118DC 2C 00 00 04 */ cmpwi r0, 4 +/* 80214980 002118E0 41 82 00 10 */ beq lbl_80214990 +/* 80214984 002118E4 54 60 06 30 */ rlwinm r0, r3, 0, 0x18, 0x18 +/* 80214988 002118E8 2C 00 00 80 */ cmpwi r0, 0x80 +/* 8021498C 002118EC 40 82 00 4C */ bne lbl_802149D8 +lbl_80214990: +/* 80214990 002118F0 C8 1E 02 40 */ lfd f0, 0x240(r30) +/* 80214994 002118F4 C0 42 B3 20 */ lfs f2, lbl_805AD040@sda21(r2) +/* 80214998 002118F8 FC 20 00 18 */ frsp f1, f0 +/* 8021499C 002118FC C0 02 B3 10 */ lfs f0, lbl_805AD030@sda21(r2) +/* 802149A0 00211900 EC 22 08 28 */ fsubs f1, f2, f1 +/* 802149A4 00211904 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802149A8 00211908 40 81 00 30 */ ble lbl_802149D8 +/* 802149AC 0021190C C0 02 B3 24 */ lfs f0, lbl_805AD044@sda21(r2) +/* 802149B0 00211910 7F E3 FB 78 */ mr r3, r31 +/* 802149B4 00211914 C0 7E 00 60 */ lfs f3, 0x60(r30) +/* 802149B8 00211918 38 81 00 18 */ addi r4, r1, 0x18 +/* 802149BC 0021191C C0 5E 00 50 */ lfs f2, 0x50(r30) +/* 802149C0 00211920 EC 20 00 72 */ fmuls f1, f0, f1 +/* 802149C4 00211924 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 802149C8 00211928 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 802149CC 0021192C D0 01 00 18 */ stfs f0, 0x18(r1) +/* 802149D0 00211930 D0 61 00 20 */ stfs f3, 0x20(r1) +/* 802149D4 00211934 4B E3 0A 29 */ bl DrawSpaceWarp__13CStateManagerCFRC9CVector3ff +lbl_802149D8: +/* 802149D8 00211938 2C 1D 00 01 */ cmpwi r29, 1 +/* 802149DC 0021193C 40 82 00 70 */ bne lbl_80214A4C +/* 802149E0 00211940 80 1E 00 E8 */ lwz r0, 0xe8(r30) +/* 802149E4 00211944 54 04 07 38 */ rlwinm r4, r0, 0, 0x1c, 0x1c +/* 802149E8 00211948 38 64 FF F8 */ addi r3, r4, -8 +/* 802149EC 0021194C 20 04 00 08 */ subfic r0, r4, 8 +/* 802149F0 00211950 7C 60 03 78 */ or r0, r3, r0 +/* 802149F4 00211954 54 00 0F FE */ srwi r0, r0, 0x1f +/* 802149F8 00211958 98 0D A8 B9 */ stb r0, lbl_805A9479@sda21(r13) +/* 802149FC 0021195C 48 13 55 B9 */ bl Black__6CColorFv +/* 80214A00 00211960 C0 22 B3 10 */ lfs f1, lbl_805AD030@sda21(r2) +/* 80214A04 00211964 7C 64 1B 78 */ mr r4, r3 +/* 80214A08 00211968 C0 42 B3 28 */ lfs f2, lbl_805AD048@sda21(r2) +/* 80214A0C 0021196C 38 60 00 02 */ li r3, 2 +/* 80214A10 00211970 48 0F 58 79 */ bl SetFog__9CGraphicsF11ERglFogModeffRC6CColor +/* 80214A14 00211974 38 7E 01 70 */ addi r3, r30, 0x170 +/* 80214A18 00211978 48 09 AC 29 */ bl RenderParticles__17CProjectileWeaponCFv +/* 80214A1C 0021197C 7F C3 F3 78 */ mr r3, r30 +/* 80214A20 00211980 7F E4 FB 78 */ mr r4, r31 +/* 80214A24 00211984 4B E2 5A 0D */ bl Render__15CGameProjectileCFRC13CStateManager +/* 80214A28 00211988 80 1E 00 04 */ lwz r0, 4(r30) +/* 80214A2C 0021198C 7F E3 FB 78 */ mr r3, r31 +/* 80214A30 00211990 38 81 00 14 */ addi r4, r1, 0x14 +/* 80214A34 00211994 90 01 00 10 */ stw r0, 0x10(r1) +/* 80214A38 00211998 90 01 00 14 */ stw r0, 0x14(r1) +/* 80214A3C 0021199C 4B E3 23 45 */ bl SetupFogForArea__13CStateManagerCF7TAreaId +/* 80214A40 002119A0 38 00 00 00 */ li r0, 0 +/* 80214A44 002119A4 98 0D A8 B9 */ stb r0, lbl_805A9479@sda21(r13) +/* 80214A48 002119A8 48 00 00 6C */ b lbl_80214AB4 +lbl_80214A4C: +/* 80214A4C 002119AC 80 1E 00 E8 */ lwz r0, 0xe8(r30) +/* 80214A50 002119B0 54 00 07 38 */ rlwinm r0, r0, 0, 0x1c, 0x1c +/* 80214A54 002119B4 2C 00 00 08 */ cmpwi r0, 8 +/* 80214A58 002119B8 40 82 00 50 */ bne lbl_80214AA8 +/* 80214A5C 002119BC 80 1F 0F 34 */ lwz r0, 0xf34(r31) +/* 80214A60 002119C0 2C 00 00 00 */ cmpwi r0, 0 +/* 80214A64 002119C4 40 82 00 44 */ bne lbl_80214AA8 +/* 80214A68 002119C8 38 00 00 01 */ li r0, 1 +/* 80214A6C 002119CC 38 7E 01 70 */ addi r3, r30, 0x170 +/* 80214A70 002119D0 98 0D A8 B9 */ stb r0, lbl_805A9479@sda21(r13) +/* 80214A74 002119D4 48 09 AB CD */ bl RenderParticles__17CProjectileWeaponCFv +/* 80214A78 002119D8 7F C3 F3 78 */ mr r3, r30 +/* 80214A7C 002119DC 7F E4 FB 78 */ mr r4, r31 +/* 80214A80 002119E0 4B E2 59 B1 */ bl Render__15CGameProjectileCFRC13CStateManager +/* 80214A84 002119E4 80 1E 00 04 */ lwz r0, 4(r30) +/* 80214A88 002119E8 7F E3 FB 78 */ mr r3, r31 +/* 80214A8C 002119EC 38 81 00 0C */ addi r4, r1, 0xc +/* 80214A90 002119F0 90 01 00 08 */ stw r0, 8(r1) +/* 80214A94 002119F4 90 01 00 0C */ stw r0, 0xc(r1) +/* 80214A98 002119F8 4B E3 22 E9 */ bl SetupFogForArea__13CStateManagerCF7TAreaId +/* 80214A9C 002119FC 38 00 00 00 */ li r0, 0 +/* 80214AA0 00211A00 98 0D A8 B9 */ stb r0, lbl_805A9479@sda21(r13) +/* 80214AA4 00211A04 48 00 00 10 */ b lbl_80214AB4 +lbl_80214AA8: +/* 80214AA8 00211A08 7F C3 F3 78 */ mr r3, r30 +/* 80214AAC 00211A0C 7F E4 FB 78 */ mr r4, r31 +/* 80214AB0 00211A10 4B E2 59 81 */ bl Render__15CGameProjectileCFRC13CStateManager +lbl_80214AB4: +/* 80214AB4 00211A14 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80214AB8 00211A18 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 80214ABC 00211A1C 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 80214AC0 00211A20 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 80214AC4 00211A24 7C 08 03 A6 */ mtlr r0 +/* 80214AC8 00211A28 38 21 00 40 */ addi r1, r1, 0x40 +/* 80214ACC 00211A2C 4E 80 00 20 */ blr + +.global AddToRenderer__17CEnergyProjectileCFRC14CFrustumPlanesRC13CStateManager +AddToRenderer__17CEnergyProjectileCFRC14CFrustumPlanesRC13CStateManager: +/* 80214AD0 00211A30 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80214AD4 00211A34 7C 08 02 A6 */ mflr r0 +/* 80214AD8 00211A38 90 01 00 54 */ stw r0, 0x54(r1) +/* 80214ADC 00211A3C 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 80214AE0 00211A40 7C BF 2B 78 */ mr r31, r5 +/* 80214AE4 00211A44 93 C1 00 48 */ stw r30, 0x48(r1) +/* 80214AE8 00211A48 7C 9E 23 78 */ mr r30, r4 +/* 80214AEC 00211A4C 93 A1 00 44 */ stw r29, 0x44(r1) +/* 80214AF0 00211A50 7C 7D 1B 78 */ mr r29, r3 +/* 80214AF4 00211A54 38 61 00 08 */ addi r3, r1, 8 +/* 80214AF8 00211A58 38 9D 01 70 */ addi r4, r29, 0x170 +/* 80214AFC 00211A5C 48 09 A2 0D */ bl GetBounds__17CProjectileWeaponCFv +/* 80214B00 00211A60 88 01 00 20 */ lbz r0, 0x20(r1) +/* 80214B04 00211A64 28 00 00 00 */ cmplwi r0, 0 +/* 80214B08 00211A68 98 01 00 3C */ stb r0, 0x3c(r1) +/* 80214B0C 00211A6C 41 82 00 3C */ beq lbl_80214B48 +/* 80214B10 00211A70 34 61 00 24 */ addic. r3, r1, 0x24 +/* 80214B14 00211A74 41 82 00 34 */ beq lbl_80214B48 +/* 80214B18 00211A78 C0 01 00 08 */ lfs f0, 8(r1) +/* 80214B1C 00211A7C D0 03 00 00 */ stfs f0, 0(r3) +/* 80214B20 00211A80 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 80214B24 00211A84 D0 03 00 04 */ stfs f0, 4(r3) +/* 80214B28 00211A88 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 80214B2C 00211A8C D0 03 00 08 */ stfs f0, 8(r3) +/* 80214B30 00211A90 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 80214B34 00211A94 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 80214B38 00211A98 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 80214B3C 00211A9C D0 03 00 10 */ stfs f0, 0x10(r3) +/* 80214B40 00211AA0 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 80214B44 00211AA4 D0 03 00 14 */ stfs f0, 0x14(r3) +lbl_80214B48: +/* 80214B48 00211AA8 88 01 00 3C */ lbz r0, 0x3c(r1) +/* 80214B4C 00211AAC 38 60 00 00 */ li r3, 0 +/* 80214B50 00211AB0 98 61 00 20 */ stb r3, 0x20(r1) +/* 80214B54 00211AB4 28 00 00 00 */ cmplwi r0, 0 +/* 80214B58 00211AB8 41 82 00 24 */ beq lbl_80214B7C +/* 80214B5C 00211ABC 7F C3 F3 78 */ mr r3, r30 +/* 80214B60 00211AC0 38 81 00 24 */ addi r4, r1, 0x24 +/* 80214B64 00211AC4 48 13 06 25 */ bl "BoxInFrustumPlanes__14CFrustumPlanesCFRCQ24rstl24optional_object<6CAABox>" +/* 80214B68 00211AC8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80214B6C 00211ACC 40 82 00 10 */ bne lbl_80214B7C +/* 80214B70 00211AD0 38 00 00 00 */ li r0, 0 +/* 80214B74 00211AD4 98 01 00 3C */ stb r0, 0x3c(r1) +/* 80214B78 00211AD8 48 00 00 60 */ b lbl_80214BD8 +lbl_80214B7C: +/* 80214B7C 00211ADC 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 80214B80 00211AE0 7F E4 FB 78 */ mr r4, r31 +/* 80214B84 00211AE4 80 63 00 00 */ lwz r3, 0(r3) +/* 80214B88 00211AE8 4B E7 C9 D1 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager +/* 80214B8C 00211AEC 2C 03 00 01 */ cmpwi r3, 1 +/* 80214B90 00211AF0 41 82 00 34 */ beq lbl_80214BC4 +/* 80214B94 00211AF4 80 1D 00 E8 */ lwz r0, 0xe8(r29) +/* 80214B98 00211AF8 54 00 07 38 */ rlwinm r0, r0, 0, 0x1c, 0x1c +/* 80214B9C 00211AFC 2C 00 00 08 */ cmpwi r0, 8 +/* 80214BA0 00211B00 40 82 00 10 */ bne lbl_80214BB0 +/* 80214BA4 00211B04 80 1F 0F 34 */ lwz r0, 0xf34(r31) +/* 80214BA8 00211B08 2C 00 00 00 */ cmpwi r0, 0 +/* 80214BAC 00211B0C 41 82 00 18 */ beq lbl_80214BC4 +lbl_80214BB0: +/* 80214BB0 00211B10 38 7D 01 70 */ addi r3, r29, 0x170 +/* 80214BB4 00211B14 81 9D 01 70 */ lwz r12, 0x170(r29) +/* 80214BB8 00211B18 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 80214BBC 00211B1C 7D 89 03 A6 */ mtctr r12 +/* 80214BC0 00211B20 4E 80 04 21 */ bctrl +lbl_80214BC4: +/* 80214BC4 00211B24 7F A3 EB 78 */ mr r3, r29 +/* 80214BC8 00211B28 7F E4 FB 78 */ mr r4, r31 +/* 80214BCC 00211B2C 4B E3 FE 01 */ bl EnsureRendered__6CActorCFRC13CStateManager +/* 80214BD0 00211B30 38 00 00 00 */ li r0, 0 +/* 80214BD4 00211B34 98 01 00 3C */ stb r0, 0x3c(r1) +lbl_80214BD8: +/* 80214BD8 00211B38 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80214BDC 00211B3C 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 80214BE0 00211B40 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 80214BE4 00211B44 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 80214BE8 00211B48 7C 08 03 A6 */ mtlr r0 +/* 80214BEC 00211B4C 38 21 00 50 */ addi r1, r1, 0x50 +/* 80214BF0 00211B50 4E 80 00 20 */ blr + +.global Touch__17CEnergyProjectileFR6CActorR13CStateManager +Touch__17CEnergyProjectileFR6CActorR13CStateManager: +/* 80214BF4 00211B54 4E 80 00 20 */ blr + +.global Explode__17CEnergyProjectileFRC9CVector3fRC9CVector3f29EWeaponCollisionResponseTypesR13CStateManagerRC20CDamageVulnerability9TUniqueId +Explode__17CEnergyProjectileFRC9CVector3fRC9CVector3f29EWeaponCollisionResponseTypesR13CStateManagerRC20CDamageVulnerability9TUniqueId: +/* 80214BF8 00211B58 94 21 FD C0 */ stwu r1, -0x240(r1) +/* 80214BFC 00211B5C 7C 08 02 A6 */ mflr r0 +/* 80214C00 00211B60 90 01 02 44 */ stw r0, 0x244(r1) +/* 80214C04 00211B64 DB E1 02 30 */ stfd f31, 0x230(r1) +/* 80214C08 00211B68 F3 E1 02 38 */ psq_st f31, 568(r1), 0, qr0 +/* 80214C0C 00211B6C DB C1 02 20 */ stfd f30, 0x220(r1) +/* 80214C10 00211B70 F3 C1 02 28 */ psq_st f30, 552(r1), 0, qr0 +/* 80214C14 00211B74 BE A1 01 F4 */ stmw r21, 0x1f4(r1) +/* 80214C18 00211B78 C0 62 B3 2C */ lfs f3, lbl_805AD04C@sda21(r2) +/* 80214C1C 00211B7C 7C 96 23 78 */ mr r22, r4 +/* 80214C20 00211B80 C0 45 00 04 */ lfs f2, 4(r5) +/* 80214C24 00211B84 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80214C28 00211B88 C0 25 00 08 */ lfs f1, 8(r5) +/* 80214C2C 00211B8C 7C 7F 1B 78 */ mr r31, r3 +/* 80214C30 00211B90 C0 05 00 00 */ lfs f0, 0(r5) +/* 80214C34 00211B94 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 80214C38 00211B98 C0 B6 00 04 */ lfs f5, 4(r22) +/* 80214C3C 00211B9C EC 23 00 72 */ fmuls f1, f3, f1 +/* 80214C40 00211BA0 EC 03 00 32 */ fmuls f0, f3, f0 +/* 80214C44 00211BA4 C0 96 00 08 */ lfs f4, 8(r22) +/* 80214C48 00211BA8 EC A5 10 2A */ fadds f5, f5, f2 +/* 80214C4C 00211BAC C0 76 00 00 */ lfs f3, 0(r22) +/* 80214C50 00211BB0 EC 84 08 2A */ fadds f4, f4, f1 +/* 80214C54 00211BB4 C4 44 66 A0 */ lfsu f2, skZero3f@l(r4) +/* 80214C58 00211BB8 EC 63 00 2A */ fadds f3, f3, f0 +/* 80214C5C 00211BBC 7D 15 43 78 */ mr r21, r8 +/* 80214C60 00211BC0 C0 24 00 04 */ lfs f1, 4(r4) +/* 80214C64 00211BC4 7C B7 2B 78 */ mr r23, r5 +/* 80214C68 00211BC8 C0 04 00 08 */ lfs f0, 8(r4) +/* 80214C6C 00211BCC 7C D8 33 78 */ mr r24, r6 +/* 80214C70 00211BD0 D0 A1 01 38 */ stfs f5, 0x138(r1) +/* 80214C74 00211BD4 7C FE 3B 78 */ mr r30, r7 +/* 80214C78 00211BD8 7D 3D 4B 78 */ mr r29, r9 +/* 80214C7C 00211BDC 7E A3 AB 78 */ mr r3, r21 +/* 80214C80 00211BE0 D0 61 01 34 */ stfs f3, 0x134(r1) +/* 80214C84 00211BE4 38 9F 01 2C */ addi r4, r31, 0x12c +/* 80214C88 00211BE8 3B 80 00 01 */ li r28, 1 +/* 80214C8C 00211BEC 3B 40 00 00 */ li r26, 0 +/* 80214C90 00211BF0 D0 81 01 3C */ stfs f4, 0x13c(r1) +/* 80214C94 00211BF4 3B 20 00 00 */ li r25, 0 +/* 80214C98 00211BF8 38 A0 00 00 */ li r5, 0 +/* 80214C9C 00211BFC D0 41 01 28 */ stfs f2, 0x128(r1) +/* 80214CA0 00211C00 D0 21 01 2C */ stfs f1, 0x12c(r1) +/* 80214CA4 00211C04 D0 01 01 30 */ stfs f0, 0x130(r1) +/* 80214CA8 00211C08 4B EE D8 15 */ bl GetVulnerability__20CDamageVulnerabilityCFRC11CWeaponMode +/* 80214CAC 00211C0C 7C 7B 1B 78 */ mr r27, r3 +/* 80214CB0 00211C10 2C 1B 00 02 */ cmpwi r27, 2 +/* 80214CB4 00211C14 40 82 01 58 */ bne lbl_80214E0C +/* 80214CB8 00211C18 7E A3 AB 78 */ mr r3, r21 +/* 80214CBC 00211C1C 38 9F 01 2C */ addi r4, r31, 0x12c +/* 80214CC0 00211C20 4B EE D7 D1 */ bl GetDeflectionType__20CDamageVulnerabilityCFRC11CWeaponMode +/* 80214CC4 00211C24 2C 03 00 01 */ cmpwi r3, 1 +/* 80214CC8 00211C28 3B 20 00 01 */ li r25, 1 +/* 80214CCC 00211C2C 41 82 00 B0 */ beq lbl_80214D7C +/* 80214CD0 00211C30 40 80 00 10 */ bge lbl_80214CE0 +/* 80214CD4 00211C34 2C 03 00 00 */ cmpwi r3, 0 +/* 80214CD8 00211C38 40 80 00 14 */ bge lbl_80214CEC +/* 80214CDC 00211C3C 48 00 00 A0 */ b lbl_80214D7C +lbl_80214CE0: +/* 80214CE0 00211C40 2C 03 00 04 */ cmpwi r3, 4 +/* 80214CE4 00211C44 40 80 00 98 */ bge lbl_80214D7C +/* 80214CE8 00211C48 48 00 00 0C */ b lbl_80214CF4 +lbl_80214CEC: +/* 80214CEC 00211C4C 3B 20 00 00 */ li r25, 0 +/* 80214CF0 00211C50 48 00 00 8C */ b lbl_80214D7C +lbl_80214CF4: +/* 80214CF4 00211C54 2C 03 00 02 */ cmpwi r3, 2 +/* 80214CF8 00211C58 38 60 00 00 */ li r3, 0 +/* 80214CFC 00211C5C 40 82 00 28 */ bne lbl_80214D24 +/* 80214D00 00211C60 80 1F 00 F0 */ lwz r0, 0xf0(r31) +/* 80214D04 00211C64 2C 00 00 06 */ cmpwi r0, 6 +/* 80214D08 00211C68 41 82 00 20 */ beq lbl_80214D28 +/* 80214D0C 00211C6C 80 1F 00 E8 */ lwz r0, 0xe8(r31) +/* 80214D10 00211C70 54 00 06 30 */ rlwinm r0, r0, 0, 0x18, 0x18 +/* 80214D14 00211C74 2C 00 00 80 */ cmpwi r0, 0x80 +/* 80214D18 00211C78 41 82 00 10 */ beq lbl_80214D28 +/* 80214D1C 00211C7C 38 60 00 01 */ li r3, 1 +/* 80214D20 00211C80 48 00 00 08 */ b lbl_80214D28 +lbl_80214D24: +/* 80214D24 00211C84 38 60 00 01 */ li r3, 1 +lbl_80214D28: +/* 80214D28 00211C88 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80214D2C 00211C8C 41 82 00 50 */ beq lbl_80214D7C +/* 80214D30 00211C90 80 DF 01 00 */ lwz r6, 0x100(r31) +/* 80214D34 00211C94 38 00 00 01 */ li r0, 1 +/* 80214D38 00211C98 80 FF 01 04 */ lwz r7, 0x104(r31) +/* 80214D3C 00211C9C 38 80 00 00 */ li r4, 0 +/* 80214D40 00211CA0 7C C0 00 38 */ and r0, r6, r0 +/* 80214D44 00211CA4 81 1F 00 F8 */ lwz r8, 0xf8(r31) +/* 80214D48 00211CA8 7C E3 20 38 */ and r3, r7, r4 +/* 80214D4C 00211CAC 81 3F 00 FC */ lwz r9, 0xfc(r31) +/* 80214D50 00211CB0 80 BF 01 08 */ lwz r5, 0x108(r31) +/* 80214D54 00211CB4 7C 63 22 78 */ xor r3, r3, r4 +/* 80214D58 00211CB8 7C 00 22 78 */ xor r0, r0, r4 +/* 80214D5C 00211CBC 91 21 01 74 */ stw r9, 0x174(r1) +/* 80214D60 00211CC0 7C 60 03 79 */ or. r0, r3, r0 +/* 80214D64 00211CC4 91 01 01 70 */ stw r8, 0x170(r1) +/* 80214D68 00211CC8 90 E1 01 7C */ stw r7, 0x17c(r1) +/* 80214D6C 00211CCC 90 C1 01 78 */ stw r6, 0x178(r1) +/* 80214D70 00211CD0 90 A1 01 80 */ stw r5, 0x180(r1) +/* 80214D74 00211CD4 41 82 00 08 */ beq lbl_80214D7C +/* 80214D78 00211CD8 3B 40 00 01 */ li r26, 1 +lbl_80214D7C: +/* 80214D7C 00211CDC 57 40 06 3F */ clrlwi. r0, r26, 0x18 +/* 80214D80 00211CE0 41 82 00 8C */ beq lbl_80214E0C +/* 80214D84 00211CE4 80 7E 09 00 */ lwz r3, 0x900(r30) +/* 80214D88 00211CE8 C0 22 B3 10 */ lfs f1, lbl_805AD030@sda21(r2) +/* 80214D8C 00211CEC C0 42 B3 30 */ lfs f2, lbl_805AD050@sda21(r2) +/* 80214D90 00211CF0 48 0F D7 B5 */ bl Range__9CRandom16Fff +/* 80214D94 00211CF4 FF E0 08 90 */ fmr f31, f1 +/* 80214D98 00211CF8 48 10 00 59 */ bl FastSinR__5CMathFf +/* 80214D9C 00211CFC FF C0 08 90 */ fmr f30, f1 +/* 80214DA0 00211D00 FC 20 F8 90 */ fmr f1, f31 +/* 80214DA4 00211D04 48 0F FF A1 */ bl FastCosR__5CMathFf +/* 80214DA8 00211D08 80 9E 08 4C */ lwz r4, 0x84c(r30) +/* 80214DAC 00211D0C FF E0 08 90 */ fmr f31, f1 +/* 80214DB0 00211D10 7F C5 F3 78 */ mr r5, r30 +/* 80214DB4 00211D14 38 61 00 D8 */ addi r3, r1, 0xd8 +/* 80214DB8 00211D18 81 84 00 00 */ lwz r12, 0(r4) +/* 80214DBC 00211D1C C0 22 B3 10 */ lfs f1, lbl_805AD030@sda21(r2) +/* 80214DC0 00211D20 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 80214DC4 00211D24 7D 89 03 A6 */ mtctr r12 +/* 80214DC8 00211D28 4E 80 04 21 */ bctrl +/* 80214DCC 00211D2C C0 01 00 E0 */ lfs f0, 0xe0(r1) +/* 80214DD0 00211D30 7F E3 FB 78 */ mr r3, r31 +/* 80214DD4 00211D34 C0 41 00 D8 */ lfs f2, 0xd8(r1) +/* 80214DD8 00211D38 7F C5 F3 78 */ mr r5, r30 +/* 80214DDC 00211D3C EC 60 F0 2A */ fadds f3, f0, f30 +/* 80214DE0 00211D40 C0 21 00 DC */ lfs f1, 0xdc(r1) +/* 80214DE4 00211D44 C0 02 B3 10 */ lfs f0, lbl_805AD030@sda21(r2) +/* 80214DE8 00211D48 EC 42 F8 2A */ fadds f2, f2, f31 +/* 80214DEC 00211D4C A0 1D 00 00 */ lhz r0, 0(r29) +/* 80214DF0 00211D50 38 81 00 34 */ addi r4, r1, 0x34 +/* 80214DF4 00211D54 EC 01 00 2A */ fadds f0, f1, f0 +/* 80214DF8 00211D58 D0 41 01 28 */ stfs f2, 0x128(r1) +/* 80214DFC 00211D5C D0 61 01 30 */ stfs f3, 0x130(r1) +/* 80214E00 00211D60 D0 01 01 2C */ stfs f0, 0x12c(r1) +/* 80214E04 00211D64 B0 01 00 34 */ sth r0, 0x34(r1) +/* 80214E08 00211D68 4B FF EF 9D */ bl ChangeProjectileOwner__17CEnergyProjectileF9TUniqueIdR13CStateManager +lbl_80214E0C: +/* 80214E0C 00211D6C 2C 1B 00 03 */ cmpwi r27, 3 +/* 80214E10 00211D70 41 82 00 38 */ beq lbl_80214E48 +/* 80214E14 00211D74 57 20 06 3F */ clrlwi. r0, r25, 0x18 +/* 80214E18 00211D78 40 82 00 30 */ bne lbl_80214E48 +/* 80214E1C 00211D7C 2C 18 00 0F */ cmpwi r24, 0xf +/* 80214E20 00211D80 38 00 00 00 */ li r0, 0 +/* 80214E24 00211D84 41 82 00 1C */ beq lbl_80214E40 +/* 80214E28 00211D88 2C 18 00 12 */ cmpwi r24, 0x12 +/* 80214E2C 00211D8C 41 82 00 14 */ beq lbl_80214E40 +/* 80214E30 00211D90 2C 18 00 45 */ cmpwi r24, 0x45 +/* 80214E34 00211D94 41 80 00 10 */ blt lbl_80214E44 +/* 80214E38 00211D98 2C 18 00 5D */ cmpwi r24, 0x5d +/* 80214E3C 00211D9C 41 81 00 08 */ bgt lbl_80214E44 +lbl_80214E40: +/* 80214E40 00211DA0 38 00 00 01 */ li r0, 1 +lbl_80214E44: +/* 80214E44 00211DA4 7C 19 03 78 */ mr r25, r0 +lbl_80214E48: +/* 80214E48 00211DA8 7F E3 FB 78 */ mr r3, r31 +/* 80214E4C 00211DAC 38 81 01 34 */ addi r4, r1, 0x134 +/* 80214E50 00211DB0 4B E3 E0 3D */ bl SetTranslation__6CActorFRC9CVector3f +/* 80214E54 00211DB4 57 20 06 3F */ clrlwi. r0, r25, 0x18 +/* 80214E58 00211DB8 41 82 00 28 */ beq lbl_80214E80 +/* 80214E5C 00211DBC A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 80214E60 00211DC0 38 60 00 00 */ li r3, 0 +/* 80214E64 00211DC4 3B 80 00 00 */ li r28, 0 +/* 80214E68 00211DC8 B0 9F 02 C0 */ sth r4, 0x2c0(r31) +/* 80214E6C 00211DCC 88 1F 03 D0 */ lbz r0, 0x3d0(r31) +/* 80214E70 00211DD0 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 80214E74 00211DD4 B0 81 00 30 */ sth r4, 0x30(r1) +/* 80214E78 00211DD8 98 1F 03 D0 */ stb r0, 0x3d0(r31) +/* 80214E7C 00211DDC 48 00 00 54 */ b lbl_80214ED0 +lbl_80214E80: +/* 80214E80 00211DE0 7F E3 FB 78 */ mr r3, r31 +/* 80214E84 00211DE4 7F C4 F3 78 */ mr r4, r30 +/* 80214E88 00211DE8 48 00 07 75 */ bl StopProjectile__17CEnergyProjectileFR13CStateManager +/* 80214E8C 00211DEC 88 1F 03 D0 */ lbz r0, 0x3d0(r31) +/* 80214E90 00211DF0 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 80214E94 00211DF4 41 82 00 3C */ beq lbl_80214ED0 +/* 80214E98 00211DF8 80 D6 00 00 */ lwz r6, 0(r22) +/* 80214E9C 00211DFC 38 7F 02 FC */ addi r3, r31, 0x2fc +/* 80214EA0 00211E00 80 B6 00 04 */ lwz r5, 4(r22) +/* 80214EA4 00211E04 38 81 00 CC */ addi r4, r1, 0xcc +/* 80214EA8 00211E08 80 16 00 08 */ lwz r0, 8(r22) +/* 80214EAC 00211E0C 90 C1 00 CC */ stw r6, 0xcc(r1) +/* 80214EB0 00211E10 C0 22 B3 14 */ lfs f1, lbl_805AD034@sda21(r2) +/* 80214EB4 00211E14 90 A1 00 D0 */ stw r5, 0xd0(r1) +/* 80214EB8 00211E18 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 80214EBC 00211E1C 4B F4 7F B1 */ bl SetSfxPositionAndDistance__16CCameraShakeDataFRC9CVector3ff +/* 80214EC0 00211E20 80 7E 08 70 */ lwz r3, 0x870(r30) +/* 80214EC4 00211E24 38 9F 02 FC */ addi r4, r31, 0x2fc +/* 80214EC8 00211E28 38 A0 00 00 */ li r5, 0 +/* 80214ECC 00211E2C 4B DF 5B 55 */ bl AddCameraShaker__14CCameraManagerFRC16CCameraShakeDatab +lbl_80214ED0: +/* 80214ED0 00211E30 7F E3 FB 78 */ mr r3, r31 +/* 80214ED4 00211E34 7E C4 B3 78 */ mr r4, r22 +/* 80214ED8 00211E38 7F 05 C3 78 */ mr r5, r24 +/* 80214EDC 00211E3C 4B FF ED 95 */ bl PlayImpactSound__17CEnergyProjectileFRC9CVector3f29EWeaponCollisionResponseTypes +/* 80214EE0 00211E40 7F C3 F3 78 */ mr r3, r30 +/* 80214EE4 00211E44 7E C4 B3 78 */ mr r4, r22 +/* 80214EE8 00211E48 38 A0 00 02 */ li r5, 2 +/* 80214EEC 00211E4C 4B E3 38 99 */ bl InformListeners__13CStateManagerFRC9CVector3f16EListenNoiseType +/* 80214EF0 00211E50 57 80 06 3E */ clrlwi r0, r28, 0x18 +/* 80214EF4 00211E54 3B 7F 01 70 */ addi r27, r31, 0x170 +/* 80214EF8 00211E58 7C 00 00 34 */ cntlzw r0, r0 +/* 80214EFC 00211E5C 7F 05 C3 78 */ mr r5, r24 +/* 80214F00 00211E60 54 06 D9 7E */ srwi r6, r0, 5 +/* 80214F04 00211E64 7F 64 DB 78 */ mr r4, r27 +/* 80214F08 00211E68 7E E9 BB 78 */ mr r9, r23 +/* 80214F0C 00211E6C 38 61 00 BC */ addi r3, r1, 0xbc +/* 80214F10 00211E70 57 47 06 3E */ clrlwi r7, r26, 0x18 +/* 80214F14 00211E74 39 01 01 34 */ addi r8, r1, 0x134 +/* 80214F18 00211E78 39 41 01 28 */ addi r10, r1, 0x128 +/* 80214F1C 00211E7C 48 09 A4 25 */ bl CollisionOccured__17CProjectileWeaponF29EWeaponCollisionResponseTypesbbRC9CVector3fRC9CVector3fRC9CVector3f +/* 80214F20 00211E80 88 01 00 C8 */ lbz r0, 0xc8(r1) +/* 80214F24 00211E84 28 00 00 00 */ cmplwi r0, 0 +/* 80214F28 00211E88 98 01 01 24 */ stb r0, 0x124(r1) +/* 80214F2C 00211E8C 41 82 00 28 */ beq lbl_80214F54 +/* 80214F30 00211E90 36 C1 01 18 */ addic. r22, r1, 0x118 +/* 80214F34 00211E94 38 81 00 BC */ addi r4, r1, 0xbc +/* 80214F38 00211E98 41 82 00 1C */ beq lbl_80214F54 +/* 80214F3C 00211E9C 7E C3 B3 78 */ mr r3, r22 +/* 80214F40 00211EA0 48 12 BF 69 */ bl __ct__6CTokenFRC6CToken +/* 80214F44 00211EA4 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 80214F48 00211EA8 7E C3 B3 78 */ mr r3, r22 +/* 80214F4C 00211EAC 90 16 00 08 */ stw r0, 8(r22) +/* 80214F50 00211EB0 48 12 BE 35 */ bl Lock__6CTokenFv +lbl_80214F54: +/* 80214F54 00211EB4 88 01 00 C8 */ lbz r0, 0xc8(r1) +/* 80214F58 00211EB8 28 00 00 00 */ cmplwi r0, 0 +/* 80214F5C 00211EBC 41 82 00 1C */ beq lbl_80214F78 +/* 80214F60 00211EC0 34 61 00 BC */ addic. r3, r1, 0xbc +/* 80214F64 00211EC4 41 82 00 14 */ beq lbl_80214F78 +/* 80214F68 00211EC8 28 03 00 00 */ cmplwi r3, 0 +/* 80214F6C 00211ECC 41 82 00 0C */ beq lbl_80214F78 +/* 80214F70 00211ED0 38 80 00 00 */ li r4, 0 +/* 80214F74 00211ED4 48 12 BE CD */ bl __dt__6CTokenFv +lbl_80214F78: +/* 80214F78 00211ED8 88 01 01 24 */ lbz r0, 0x124(r1) +/* 80214F7C 00211EDC 38 60 00 00 */ li r3, 0 +/* 80214F80 00211EE0 98 61 00 C8 */ stb r3, 0xc8(r1) +/* 80214F84 00211EE4 28 00 00 00 */ cmplwi r0, 0 +/* 80214F88 00211EE8 41 82 06 1C */ beq lbl_802155A4 +/* 80214F8C 00211EEC 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80214F90 00211EF0 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 80214F94 00211EF4 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 80214F98 00211EF8 7E E5 BB 78 */ mr r5, r23 +/* 80214F9C 00211EFC 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 80214FA0 00211F00 38 61 01 88 */ addi r3, r1, 0x188 +/* 80214FA4 00211F04 48 0F EB 6D */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 80214FA8 00211F08 38 61 01 B8 */ addi r3, r1, 0x1b8 +/* 80214FAC 00211F0C 38 81 01 88 */ addi r4, r1, 0x188 +/* 80214FB0 00211F10 48 0F DB C5 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80214FB4 00211F14 C0 41 01 34 */ lfs f2, 0x134(r1) +/* 80214FB8 00211F18 39 40 00 00 */ li r10, 0 +/* 80214FBC 00211F1C C0 21 01 38 */ lfs f1, 0x138(r1) +/* 80214FC0 00211F20 7D 4B 53 78 */ mr r11, r10 +/* 80214FC4 00211F24 C0 01 01 3C */ lfs f0, 0x13c(r1) +/* 80214FC8 00211F28 D0 41 01 C4 */ stfs f2, 0x1c4(r1) +/* 80214FCC 00211F2C D0 21 01 D4 */ stfs f1, 0x1d4(r1) +/* 80214FD0 00211F30 D0 01 01 E4 */ stfs f0, 0x1e4(r1) +/* 80214FD4 00211F34 80 1F 00 F0 */ lwz r0, 0xf0(r31) +/* 80214FD8 00211F38 2C 00 00 00 */ cmpwi r0, 0 +/* 80214FDC 00211F3C 40 82 00 4C */ bne lbl_80215028 +/* 80214FE0 00211F40 80 FF 01 04 */ lwz r7, 0x104(r31) +/* 80214FE4 00211F44 38 80 00 01 */ li r4, 1 +/* 80214FE8 00211F48 80 DF 01 00 */ lwz r6, 0x100(r31) +/* 80214FEC 00211F4C 7C E3 50 38 */ and r3, r7, r10 +/* 80214FF0 00211F50 81 1F 00 F8 */ lwz r8, 0xf8(r31) +/* 80214FF4 00211F54 7C C0 20 38 */ and r0, r6, r4 +/* 80214FF8 00211F58 81 3F 00 FC */ lwz r9, 0xfc(r31) +/* 80214FFC 00211F5C 80 BF 01 08 */ lwz r5, 0x108(r31) +/* 80215000 00211F60 7C 63 52 78 */ xor r3, r3, r10 +/* 80215004 00211F64 7C 00 52 78 */ xor r0, r0, r10 +/* 80215008 00211F68 91 21 01 5C */ stw r9, 0x15c(r1) +/* 8021500C 00211F6C 7C 60 03 79 */ or. r0, r3, r0 +/* 80215010 00211F70 91 01 01 58 */ stw r8, 0x158(r1) +/* 80215014 00211F74 90 E1 01 64 */ stw r7, 0x164(r1) +/* 80215018 00211F78 90 C1 01 60 */ stw r6, 0x160(r1) +/* 8021501C 00211F7C 90 A1 01 68 */ stw r5, 0x168(r1) +/* 80215020 00211F80 41 82 00 08 */ beq lbl_80215028 +/* 80215024 00211F84 7C 8B 23 78 */ mr r11, r4 +lbl_80215028: +/* 80215028 00211F88 55 60 06 3F */ clrlwi. r0, r11, 0x18 +/* 8021502C 00211F8C 41 82 00 14 */ beq lbl_80215040 +/* 80215030 00211F90 88 1F 02 E4 */ lbz r0, 0x2e4(r31) +/* 80215034 00211F94 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 80215038 00211F98 41 82 00 08 */ beq lbl_80215040 +/* 8021503C 00211F9C 39 40 00 01 */ li r10, 1 +lbl_80215040: +/* 80215040 00211FA0 55 40 06 3F */ clrlwi. r0, r10, 0x18 +/* 80215044 00211FA4 40 82 04 04 */ bne lbl_80215448 +/* 80215048 00211FA8 7F 64 DB 78 */ mr r4, r27 +/* 8021504C 00211FAC 7F 05 C3 78 */ mr r5, r24 +/* 80215050 00211FB0 38 61 00 AC */ addi r3, r1, 0xac +/* 80215054 00211FB4 48 09 A1 F5 */ bl GetDecalForCollision__17CProjectileWeaponCF29EWeaponCollisionResponseTypes +/* 80215058 00211FB8 88 01 00 B8 */ lbz r0, 0xb8(r1) +/* 8021505C 00211FBC 28 00 00 00 */ cmplwi r0, 0 +/* 80215060 00211FC0 98 01 01 14 */ stb r0, 0x114(r1) +/* 80215064 00211FC4 41 82 00 28 */ beq lbl_8021508C +/* 80215068 00211FC8 36 C1 01 08 */ addic. r22, r1, 0x108 +/* 8021506C 00211FCC 38 81 00 AC */ addi r4, r1, 0xac +/* 80215070 00211FD0 41 82 00 1C */ beq lbl_8021508C +/* 80215074 00211FD4 7E C3 B3 78 */ mr r3, r22 +/* 80215078 00211FD8 48 12 BE 31 */ bl __ct__6CTokenFRC6CToken +/* 8021507C 00211FDC 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 80215080 00211FE0 7E C3 B3 78 */ mr r3, r22 +/* 80215084 00211FE4 90 16 00 08 */ stw r0, 8(r22) +/* 80215088 00211FE8 48 12 BC FD */ bl Lock__6CTokenFv +lbl_8021508C: +/* 8021508C 00211FEC 88 01 00 B8 */ lbz r0, 0xb8(r1) +/* 80215090 00211FF0 28 00 00 00 */ cmplwi r0, 0 +/* 80215094 00211FF4 41 82 00 1C */ beq lbl_802150B0 +/* 80215098 00211FF8 34 61 00 AC */ addic. r3, r1, 0xac +/* 8021509C 00211FFC 41 82 00 14 */ beq lbl_802150B0 +/* 802150A0 00212000 28 03 00 00 */ cmplwi r3, 0 +/* 802150A4 00212004 41 82 00 0C */ beq lbl_802150B0 +/* 802150A8 00212008 38 80 00 00 */ li r4, 0 +/* 802150AC 0021200C 48 12 BD 95 */ bl __dt__6CTokenFv +lbl_802150B0: +/* 802150B0 00212010 88 01 01 14 */ lbz r0, 0x114(r1) +/* 802150B4 00212014 38 60 00 00 */ li r3, 0 +/* 802150B8 00212018 98 61 00 B8 */ stb r3, 0xb8(r1) +/* 802150BC 0021201C 28 00 00 00 */ cmplwi r0, 0 +/* 802150C0 00212020 41 82 00 2C */ beq lbl_802150EC +/* 802150C4 00212024 80 1F 00 E8 */ lwz r0, 0xe8(r31) +/* 802150C8 00212028 7F C6 F3 78 */ mr r6, r30 +/* 802150CC 0021202C 38 61 01 08 */ addi r3, r1, 0x108 +/* 802150D0 00212030 38 81 01 B8 */ addi r4, r1, 0x1b8 +/* 802150D4 00212034 54 07 07 38 */ rlwinm r7, r0, 0, 0x1c, 0x1c +/* 802150D8 00212038 38 A7 FF F8 */ addi r5, r7, -8 +/* 802150DC 0021203C 20 07 00 08 */ subfic r0, r7, 8 +/* 802150E0 00212040 7C A0 03 78 */ or r0, r5, r0 +/* 802150E4 00212044 54 05 0F FE */ srwi r5, r0, 0x1f +/* 802150E8 00212048 4B F0 20 41 */ bl "AddDecal__13CDecalManagerFRC27TToken<17CDecalDescription>RC12CTransform4fR13CStateManager" +lbl_802150EC: +/* 802150EC 0021204C C0 02 B3 20 */ lfs f0, lbl_805AD040@sda21(r2) +/* 802150F0 00212050 38 80 00 00 */ li r4, 0 +/* 802150F4 00212054 D0 01 00 FC */ stfs f0, 0xfc(r1) +/* 802150F8 00212058 D0 01 01 00 */ stfs f0, 0x100(r1) +/* 802150FC 0021205C D0 01 01 04 */ stfs f0, 0x104(r1) +/* 80215100 00212060 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 80215104 00212064 80 03 02 F4 */ lwz r0, 0x2f4(r3) +/* 80215108 00212068 2C 00 00 00 */ cmpwi r0, 0 +/* 8021510C 0021206C 40 82 00 80 */ bne lbl_8021518C +/* 80215110 00212070 80 7E 08 70 */ lwz r3, 0x870(r30) +/* 80215114 00212074 7F C4 F3 78 */ mr r4, r30 +/* 80215118 00212078 4B DF 6A 01 */ bl GetCurrentCamera__14CCameraManagerCFR13CStateManager +/* 8021511C 0021207C C0 21 01 D4 */ lfs f1, 0x1d4(r1) +/* 80215120 00212080 C0 03 00 50 */ lfs f0, 0x50(r3) +/* 80215124 00212084 C0 61 01 E4 */ lfs f3, 0x1e4(r1) +/* 80215128 00212088 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 8021512C 0021208C EC 81 00 28 */ fsubs f4, f1, f0 +/* 80215130 00212090 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 80215134 00212094 38 61 00 F0 */ addi r3, r1, 0xf0 +/* 80215138 00212098 C0 21 01 C4 */ lfs f1, 0x1c4(r1) +/* 8021513C 0021209C EC 43 10 28 */ fsubs f2, f3, f2 +/* 80215140 002120A0 D0 81 00 F4 */ stfs f4, 0xf4(r1) +/* 80215144 002120A4 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80215148 002120A8 D0 41 00 F8 */ stfs f2, 0xf8(r1) +/* 8021514C 002120AC D0 01 00 F0 */ stfs f0, 0xf0(r1) +/* 80215150 002120B0 48 0F F7 69 */ bl Magnitude__9CVector3fCFv +/* 80215154 002120B4 C0 02 B3 34 */ lfs f0, lbl_805AD054@sda21(r2) +/* 80215158 002120B8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8021515C 002120BC 40 80 00 20 */ bge lbl_8021517C +/* 80215160 002120C0 C0 42 B3 38 */ lfs f2, lbl_805AD058@sda21(r2) +/* 80215164 002120C4 C0 62 B3 24 */ lfs f3, lbl_805AD044@sda21(r2) +/* 80215168 002120C8 EC 01 00 B2 */ fmuls f0, f1, f2 +/* 8021516C 002120CC EC 03 10 3A */ fmadds f0, f3, f0, f2 +/* 80215170 002120D0 D0 01 00 FC */ stfs f0, 0xfc(r1) +/* 80215174 002120D4 D0 01 01 00 */ stfs f0, 0x100(r1) +/* 80215178 002120D8 D0 01 01 04 */ stfs f0, 0x104(r1) +lbl_8021517C: +/* 8021517C 002120DC C0 02 B3 34 */ lfs f0, lbl_805AD054@sda21(r2) +/* 80215180 002120E0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80215184 002120E4 7C 00 00 26 */ mfcr r0 +/* 80215188 002120E8 54 04 0F FE */ srwi r4, r0, 0x1f +lbl_8021518C: +/* 8021518C 002120EC 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 80215190 002120F0 40 82 00 24 */ bne lbl_802151B4 +/* 80215194 002120F4 80 6D A0 78 */ lwz r3, gpMain@sda21(r13) +/* 80215198 002120F8 C0 02 B3 3C */ lfs f0, lbl_805AD05C@sda21(r2) +/* 8021519C 002120FC C0 43 01 1C */ lfs f2, 0x11c(r3) +/* 802151A0 00212100 C0 23 01 18 */ lfs f1, 0x118(r3) +/* 802151A4 00212104 EC 21 10 2A */ fadds f1, f1, f2 +/* 802151A8 00212108 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 802151AC 0021210C 40 81 00 08 */ ble lbl_802151B4 +/* 802151B0 00212110 38 80 00 01 */ li r4, 1 +lbl_802151B4: +/* 802151B4 00212114 80 1F 00 E8 */ lwz r0, 0xe8(r31) +/* 802151B8 00212118 3B 20 00 08 */ li r25, 8 +/* 802151BC 0021211C 54 00 07 38 */ rlwinm r0, r0, 0, 0x1c, 0x1c +/* 802151C0 00212120 2C 00 00 08 */ cmpwi r0, 8 +/* 802151C4 00212124 40 82 00 08 */ bne lbl_802151CC +/* 802151C8 00212128 63 39 00 04 */ ori r25, r25, 4 +lbl_802151CC: +/* 802151CC 0021212C 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 802151D0 00212130 41 82 00 08 */ beq lbl_802151D8 +/* 802151D4 00212134 63 39 00 02 */ ori r25, r25, 2 +lbl_802151D8: +/* 802151D8 00212138 3C 60 80 3D */ lis r3, lbl_803D2890@ha +/* 802151DC 0021213C 3A C0 00 00 */ li r22, 0 +/* 802151E0 00212140 38 63 28 90 */ addi r3, r3, lbl_803D2890@l +/* 802151E4 00212144 3A A0 00 00 */ li r21, 0 +/* 802151E8 00212148 38 83 00 1F */ addi r4, r3, 0x1f +/* 802151EC 0021214C 38 60 01 00 */ li r3, 0x100 +/* 802151F0 00212150 38 A0 00 00 */ li r5, 0 +/* 802151F4 00212154 48 10 06 79 */ bl __nw__FUlPCcPCc +/* 802151F8 00212158 7C 77 1B 79 */ or. r23, r3, r3 +/* 802151FC 0021215C 41 82 00 98 */ beq lbl_80215294 +/* 80215200 00212160 3C 80 80 3D */ lis r4, lbl_803D2890@ha +/* 80215204 00212164 38 61 00 9C */ addi r3, r1, 0x9c +/* 80215208 00212168 38 84 28 90 */ addi r4, r4, lbl_803D2890@l +/* 8021520C 0021216C 38 84 00 26 */ addi r4, r4, 0x26 +/* 80215210 00212170 4B DE FA A9 */ bl string_l__4rstlFPCc +/* 80215214 00212174 80 0D A3 88 */ lwz r0, lbl_805A8F48@sda21(r13) +/* 80215218 00212178 3C 60 80 57 */ lis r3, lbl_8056D410@ha +/* 8021521C 0021217C 38 A3 D4 10 */ addi r5, r3, lbl_8056D410@l +/* 80215220 00212180 38 81 00 58 */ addi r4, r1, 0x58 +/* 80215224 00212184 90 01 00 5C */ stw r0, 0x5c(r1) +/* 80215228 00212188 38 61 01 40 */ addi r3, r1, 0x140 +/* 8021522C 0021218C 38 C1 00 5C */ addi r6, r1, 0x5c +/* 80215230 00212190 3A C0 00 01 */ li r22, 1 +/* 80215234 00212194 80 1F 00 04 */ lwz r0, 4(r31) +/* 80215238 00212198 90 01 00 54 */ stw r0, 0x54(r1) +/* 8021523C 0021219C 90 01 00 58 */ stw r0, 0x58(r1) +/* 80215240 002121A0 4B E3 C2 45 */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" +/* 80215244 002121A4 7F C4 F3 78 */ mr r4, r30 +/* 80215248 002121A8 38 61 00 28 */ addi r3, r1, 0x28 +/* 8021524C 002121AC 3A A0 00 01 */ li r21, 1 +/* 80215250 002121B0 4B E3 7E 8D */ bl AllocateUniqueId__13CStateManagerFv +/* 80215254 002121B4 A0 01 00 28 */ lhz r0, 0x28(r1) +/* 80215258 002121B8 B0 01 00 2C */ sth r0, 0x2c(r1) +/* 8021525C 002121BC 48 13 4D 51 */ bl White__6CColorFv +/* 80215260 002121C0 38 01 00 FC */ addi r0, r1, 0xfc +/* 80215264 002121C4 7F 2A CB 78 */ mr r10, r25 +/* 80215268 002121C8 90 01 00 08 */ stw r0, 8(r1) +/* 8021526C 002121CC 38 81 01 18 */ addi r4, r1, 0x118 +/* 80215270 002121D0 38 A1 00 2C */ addi r5, r1, 0x2c +/* 80215274 002121D4 38 E1 01 40 */ addi r7, r1, 0x140 +/* 80215278 002121D8 90 61 00 0C */ stw r3, 0xc(r1) +/* 8021527C 002121DC 7E E3 BB 78 */ mr r3, r23 +/* 80215280 002121E0 39 01 00 9C */ addi r8, r1, 0x9c +/* 80215284 002121E4 39 21 01 B8 */ addi r9, r1, 0x1b8 +/* 80215288 002121E8 38 C0 00 01 */ li r6, 1 +/* 8021528C 002121EC 4B E4 58 6D */ bl "__ct__10CExplosionFRC31TLockedToken<15CGenDescription>9TUniqueIdbRC11CEntityInfoRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC12CTransform4fUiRC9CVector3fRC6CColor" +/* 80215290 002121F0 7C 77 1B 78 */ mr r23, r3 +lbl_80215294: +/* 80215294 002121F4 7E A0 07 75 */ extsb. r0, r21 +/* 80215298 002121F8 7E F9 BB 78 */ mr r25, r23 +/* 8021529C 002121FC 41 82 00 44 */ beq lbl_802152E0 +/* 802152A0 00212200 80 01 01 48 */ lwz r0, 0x148(r1) +/* 802152A4 00212204 80 61 01 50 */ lwz r3, 0x150(r1) +/* 802152A8 00212208 1C 00 00 0C */ mulli r0, r0, 0xc +/* 802152AC 0021220C 90 61 00 3C */ stw r3, 0x3c(r1) +/* 802152B0 00212210 7C 64 1B 78 */ mr r4, r3 +/* 802152B4 00212214 7C 03 02 14 */ add r0, r3, r0 +/* 802152B8 00212218 90 61 00 38 */ stw r3, 0x38(r1) +/* 802152BC 0021221C 90 01 00 44 */ stw r0, 0x44(r1) +/* 802152C0 00212220 90 01 00 40 */ stw r0, 0x40(r1) +/* 802152C4 00212224 48 00 00 08 */ b lbl_802152CC +lbl_802152C8: +/* 802152C8 00212228 38 84 00 0C */ addi r4, r4, 0xc +lbl_802152CC: +/* 802152CC 0021222C 7C 04 00 40 */ cmplw r4, r0 +/* 802152D0 00212230 40 82 FF F8 */ bne lbl_802152C8 +/* 802152D4 00212234 28 03 00 00 */ cmplwi r3, 0 +/* 802152D8 00212238 41 82 00 08 */ beq lbl_802152E0 +/* 802152DC 0021223C 48 10 06 55 */ bl Free__7CMemoryFPCv +lbl_802152E0: +/* 802152E0 00212240 7E C0 07 75 */ extsb. r0, r22 +/* 802152E4 00212244 41 82 00 0C */ beq lbl_802152F0 +/* 802152E8 00212248 38 61 00 9C */ addi r3, r1, 0x9c +/* 802152EC 0021224C 48 12 87 F5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_802152F0: +/* 802152F0 00212250 7F C3 F3 78 */ mr r3, r30 +/* 802152F4 00212254 7F 24 CB 78 */ mr r4, r25 +/* 802152F8 00212258 4B E3 79 FD */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +/* 802152FC 0021225C A0 1D 00 00 */ lhz r0, 0(r29) +/* 80215300 00212260 7F C3 F3 78 */ mr r3, r30 +/* 80215304 00212264 38 81 00 24 */ addi r4, r1, 0x24 +/* 80215308 00212268 B0 01 00 24 */ sth r0, 0x24(r1) +/* 8021530C 0021226C 4B E3 72 69 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80215310 00212270 7C 64 1B 78 */ mr r4, r3 +/* 80215314 00212274 38 61 00 78 */ addi r3, r1, 0x78 +/* 80215318 00212278 4B E9 A9 79 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8021531C 0021227C 82 C3 00 04 */ lwz r22, 4(r3) +/* 80215320 00212280 28 16 00 00 */ cmplwi r22, 0 +/* 80215324 00212284 41 82 00 F4 */ beq lbl_80215418 +/* 80215328 00212288 7E C4 B3 78 */ mr r4, r22 +/* 8021532C 0021228C 38 61 00 70 */ addi r3, r1, 0x70 +/* 80215330 00212290 3B 40 00 00 */ li r26, 0 +/* 80215334 00212294 4B E9 3A E1 */ bl "__ct__29TCastToPtr<15CScriptPlatform>FP7CEntity" +/* 80215338 00212298 80 03 00 04 */ lwz r0, 4(r3) +/* 8021533C 0021229C 28 00 00 00 */ cmplwi r0, 0 +/* 80215340 002122A0 7C 1B 03 78 */ mr r27, r0 +/* 80215344 002122A4 41 82 00 0C */ beq lbl_80215350 +/* 80215348 002122A8 3B 40 00 01 */ li r26, 1 +/* 8021534C 002122AC 48 00 00 A8 */ b lbl_802153F4 +lbl_80215350: +/* 80215350 002122B0 80 76 00 68 */ lwz r3, 0x68(r22) +/* 80215354 002122B4 3C 00 00 10 */ lis r0, 0x10 +/* 80215358 002122B8 80 B6 00 6C */ lwz r5, 0x6c(r22) +/* 8021535C 002122BC 38 80 00 00 */ li r4, 0 +/* 80215360 002122C0 7C 60 00 38 */ and r0, r3, r0 +/* 80215364 002122C4 7C A3 20 38 */ and r3, r5, r4 +/* 80215368 002122C8 7C 63 22 78 */ xor r3, r3, r4 +/* 8021536C 002122CC 7C 00 22 78 */ xor r0, r0, r4 +/* 80215370 002122D0 7C 60 03 79 */ or. r0, r3, r0 +/* 80215374 002122D4 41 82 00 80 */ beq lbl_802153F4 +/* 80215378 002122D8 82 DE 08 48 */ lwz r22, 0x848(r30) +/* 8021537C 002122DC AA F6 20 08 */ lha r23, 0x2008(r22) +/* 80215380 002122E0 48 00 00 6C */ b lbl_802153EC +lbl_80215384: +/* 80215384 002122E4 7E C3 B3 78 */ mr r3, r22 +/* 80215388 002122E8 7E E4 BB 78 */ mr r4, r23 +/* 8021538C 002122EC 4B DF A9 89 */ bl __vc__11CObjectListFi +/* 80215390 002122F0 7C 64 1B 78 */ mr r4, r3 +/* 80215394 002122F4 38 61 00 68 */ addi r3, r1, 0x68 +/* 80215398 002122F8 4B E9 3A 7D */ bl "__ct__29TCastToPtr<15CScriptPlatform>FP7CEntity" +/* 8021539C 002122FC 83 03 00 04 */ lwz r24, 4(r3) +/* 802153A0 00212300 28 18 00 00 */ cmplwi r24, 0 +/* 802153A4 00212304 41 82 00 2C */ beq lbl_802153D0 +/* 802153A8 00212308 A0 1D 00 00 */ lhz r0, 0(r29) +/* 802153AC 0021230C 7F 03 C3 78 */ mr r3, r24 +/* 802153B0 00212310 38 81 00 20 */ addi r4, r1, 0x20 +/* 802153B4 00212314 B0 01 00 20 */ sth r0, 0x20(r1) +/* 802153B8 00212318 4B E9 C8 41 */ bl IsSlave__15CScriptPlatformCF9TUniqueId +/* 802153BC 0021231C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 802153C0 00212320 41 82 00 10 */ beq lbl_802153D0 +/* 802153C4 00212324 7F 1B C3 78 */ mr r27, r24 +/* 802153C8 00212328 3B 40 00 01 */ li r26, 1 +/* 802153CC 0021232C 48 00 00 28 */ b lbl_802153F4 +lbl_802153D0: +/* 802153D0 00212330 2C 17 FF FF */ cmpwi r23, -1 +/* 802153D4 00212334 41 82 00 14 */ beq lbl_802153E8 +/* 802153D8 00212338 56 E3 18 38 */ slwi r3, r23, 3 +/* 802153DC 0021233C 38 03 00 08 */ addi r0, r3, 8 +/* 802153E0 00212340 7E F6 02 AE */ lhax r23, r22, r0 +/* 802153E4 00212344 48 00 00 08 */ b lbl_802153EC +lbl_802153E8: +/* 802153E8 00212348 3A E0 FF FF */ li r23, -1 +lbl_802153EC: +/* 802153EC 0021234C 2C 17 FF FF */ cmpwi r23, -1 +/* 802153F0 00212350 40 82 FF 94 */ bne lbl_80215384 +lbl_802153F4: +/* 802153F4 00212354 57 40 06 3F */ clrlwi. r0, r26, 0x18 +/* 802153F8 00212358 41 82 00 20 */ beq lbl_80215418 +/* 802153FC 0021235C A0 19 00 08 */ lhz r0, 8(r25) +/* 80215400 00212360 7F 63 DB 78 */ mr r3, r27 +/* 80215404 00212364 7F C5 F3 78 */ mr r5, r30 +/* 80215408 00212368 38 81 00 1C */ addi r4, r1, 0x1c +/* 8021540C 0021236C B0 01 00 18 */ sth r0, 0x18(r1) +/* 80215410 00212370 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 80215414 00212374 4B E9 CB 1D */ bl AddSlave__15CScriptPlatformF9TUniqueIdR13CStateManager +lbl_80215418: +/* 80215418 00212378 88 01 01 14 */ lbz r0, 0x114(r1) +/* 8021541C 0021237C 28 00 00 00 */ cmplwi r0, 0 +/* 80215420 00212380 41 82 00 1C */ beq lbl_8021543C +/* 80215424 00212384 34 61 01 08 */ addic. r3, r1, 0x108 +/* 80215428 00212388 41 82 00 14 */ beq lbl_8021543C +/* 8021542C 0021238C 28 03 00 00 */ cmplwi r3, 0 +/* 80215430 00212390 41 82 00 0C */ beq lbl_8021543C +/* 80215434 00212394 38 80 00 00 */ li r4, 0 +/* 80215438 00212398 48 12 BA 09 */ bl __dt__6CTokenFv +lbl_8021543C: +/* 8021543C 0021239C 38 00 00 00 */ li r0, 0 +/* 80215440 002123A0 98 01 01 14 */ stb r0, 0x114(r1) +/* 80215444 002123A4 48 00 00 14 */ b lbl_80215458 +lbl_80215448: +/* 80215448 002123A8 88 1F 03 D0 */ lbz r0, 0x3d0(r31) +/* 8021544C 002123AC 38 60 00 01 */ li r3, 1 +/* 80215450 002123B0 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80215454 002123B4 98 1F 03 D0 */ stb r0, 0x3d0(r31) +lbl_80215458: +/* 80215458 002123B8 80 1F 00 E8 */ lwz r0, 0xe8(r31) +/* 8021545C 002123BC 70 00 00 88 */ andi. r0, r0, 0x88 +/* 80215460 002123C0 2C 00 00 88 */ cmpwi r0, 0x88 +/* 80215464 002123C4 40 82 01 40 */ bne lbl_802155A4 +/* 80215468 002123C8 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8021546C 002123CC 3C 60 80 3D */ lis r3, lbl_803D2890@ha +/* 80215470 002123D0 38 A3 28 90 */ addi r5, r3, lbl_803D2890@l +/* 80215474 002123D4 38 61 00 60 */ addi r3, r1, 0x60 +/* 80215478 002123D8 81 84 00 00 */ lwz r12, 0(r4) +/* 8021547C 002123DC 38 A5 00 44 */ addi r5, r5, 0x44 +/* 80215480 002123E0 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 80215484 002123E4 7D 89 03 A6 */ mtctr r12 +/* 80215488 002123E8 4E 80 04 21 */ bctrl +/* 8021548C 002123EC 3A A1 00 E4 */ addi r21, r1, 0xe4 +/* 80215490 002123F0 38 81 00 60 */ addi r4, r1, 0x60 +/* 80215494 002123F4 7E A3 AB 78 */ mr r3, r21 +/* 80215498 002123F8 48 12 BA 11 */ bl __ct__6CTokenFRC6CToken +/* 8021549C 002123FC 7E A3 AB 78 */ mr r3, r21 +/* 802154A0 00212400 48 12 B9 6D */ bl GetObj__6CTokenFv +/* 802154A4 00212404 80 03 00 04 */ lwz r0, 4(r3) +/* 802154A8 00212408 38 61 00 60 */ addi r3, r1, 0x60 +/* 802154AC 0021240C 38 80 FF FF */ li r4, -1 +/* 802154B0 00212410 90 01 00 EC */ stw r0, 0xec(r1) +/* 802154B4 00212414 48 12 B9 8D */ bl __dt__6CTokenFv +/* 802154B8 00212418 3C 60 80 3D */ lis r3, lbl_803D2890@ha +/* 802154BC 0021241C 3A A0 00 00 */ li r21, 0 +/* 802154C0 00212420 38 83 28 90 */ addi r4, r3, lbl_803D2890@l +/* 802154C4 00212424 38 60 05 A0 */ li r3, 0x5a0 +/* 802154C8 00212428 38 84 00 1F */ addi r4, r4, 0x1f +/* 802154CC 0021242C 38 A0 00 00 */ li r5, 0 +/* 802154D0 00212430 48 10 03 9D */ bl __nw__FUlPCcPCc +/* 802154D4 00212434 7C 76 1B 79 */ or. r22, r3, r3 +/* 802154D8 00212438 41 82 00 A4 */ beq lbl_8021557C +/* 802154DC 0021243C C0 02 B3 20 */ lfs f0, lbl_805AD040@sda21(r2) +/* 802154E0 00212440 3C 60 80 3D */ lis r3, lbl_803D2890@ha +/* 802154E4 00212444 38 83 28 90 */ addi r4, r3, lbl_803D2890@l +/* 802154E8 00212448 3A E1 00 90 */ addi r23, r1, 0x90 +/* 802154EC 0021244C D0 01 00 90 */ stfs f0, 0x90(r1) +/* 802154F0 00212450 38 61 00 80 */ addi r3, r1, 0x80 +/* 802154F4 00212454 38 84 00 4F */ addi r4, r4, 0x4f +/* 802154F8 00212458 D0 01 00 94 */ stfs f0, 0x94(r1) +/* 802154FC 0021245C D0 01 00 98 */ stfs f0, 0x98(r1) +/* 80215500 00212460 88 1F 00 E6 */ lbz r0, 0xe6(r31) +/* 80215504 00212464 54 00 E7 FE */ rlwinm r0, r0, 0x1c, 0x1f, 0x1f +/* 80215508 00212468 68 18 00 01 */ xori r24, r0, 1 +/* 8021550C 0021246C 4B DE F7 AD */ bl string_l__4rstlFPCc +/* 80215510 00212470 80 1F 00 04 */ lwz r0, 4(r31) +/* 80215514 00212474 7F C4 F3 78 */ mr r4, r30 +/* 80215518 00212478 38 61 00 10 */ addi r3, r1, 0x10 +/* 8021551C 0021247C 3A A0 00 01 */ li r21, 1 +/* 80215520 00212480 90 01 00 48 */ stw r0, 0x48(r1) +/* 80215524 00212484 90 01 00 4C */ stw r0, 0x4c(r1) +/* 80215528 00212488 4B E3 7B B5 */ bl AllocateUniqueId__13CStateManagerFv +/* 8021552C 0021248C C0 22 B3 20 */ lfs f1, lbl_805AD040@sda21(r2) +/* 80215530 00212490 38 61 00 50 */ addi r3, r1, 0x50 +/* 80215534 00212494 A0 01 00 10 */ lhz r0, 0x10(r1) +/* 80215538 00212498 FC 40 08 90 */ fmr f2, f1 +/* 8021553C 0021249C FC 60 08 90 */ fmr f3, f1 +/* 80215540 002124A0 B0 01 00 14 */ sth r0, 0x14(r1) +/* 80215544 002124A4 FC 80 08 90 */ fmr f4, f1 +/* 80215548 002124A8 48 14 DE A5 */ bl __ct__6CColorFffff +/* 8021554C 002124AC 92 E1 00 08 */ stw r23, 8(r1) +/* 80215550 002124B0 38 81 00 E4 */ addi r4, r1, 0xe4 +/* 80215554 002124B4 38 A1 00 14 */ addi r5, r1, 0x14 +/* 80215558 002124B8 38 C1 00 4C */ addi r6, r1, 0x4c +/* 8021555C 002124BC 90 61 00 0C */ stw r3, 0xc(r1) +/* 80215560 002124C0 7E C3 B3 78 */ mr r3, r22 +/* 80215564 002124C4 39 01 00 80 */ addi r8, r1, 0x80 +/* 80215568 002124C8 39 21 01 B8 */ addi r9, r1, 0x1b8 +/* 8021556C 002124CC 63 0A 00 02 */ ori r10, r24, 2 +/* 80215570 002124D0 38 E0 00 01 */ li r7, 1 +/* 80215574 002124D4 4B FA 24 E1 */ bl "__ct__10CIceImpactFRC31TLockedToken<15CGenDescription>9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC12CTransform4fUiRC9CVector3fRC6CColor" +/* 80215578 002124D8 7C 76 1B 78 */ mr r22, r3 +lbl_8021557C: +/* 8021557C 002124DC 7F C3 F3 78 */ mr r3, r30 +/* 80215580 002124E0 7E C4 B3 78 */ mr r4, r22 +/* 80215584 002124E4 4B E3 77 71 */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +/* 80215588 002124E8 7E A0 07 75 */ extsb. r0, r21 +/* 8021558C 002124EC 41 82 00 0C */ beq lbl_80215598 +/* 80215590 002124F0 38 61 00 80 */ addi r3, r1, 0x80 +/* 80215594 002124F4 48 12 85 4D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80215598: +/* 80215598 002124F8 38 61 00 E4 */ addi r3, r1, 0xe4 +/* 8021559C 002124FC 38 80 00 00 */ li r4, 0 +/* 802155A0 00212500 48 12 B8 A1 */ bl __dt__6CTokenFv +lbl_802155A4: +/* 802155A4 00212504 88 01 01 24 */ lbz r0, 0x124(r1) +/* 802155A8 00212508 57 96 06 3E */ clrlwi r22, r28, 0x18 +/* 802155AC 0021250C 28 00 00 00 */ cmplwi r0, 0 +/* 802155B0 00212510 41 82 00 1C */ beq lbl_802155CC +/* 802155B4 00212514 34 61 01 18 */ addic. r3, r1, 0x118 +/* 802155B8 00212518 41 82 00 14 */ beq lbl_802155CC +/* 802155BC 0021251C 28 03 00 00 */ cmplwi r3, 0 +/* 802155C0 00212520 41 82 00 0C */ beq lbl_802155CC +/* 802155C4 00212524 38 80 00 00 */ li r4, 0 +/* 802155C8 00212528 48 12 B8 79 */ bl __dt__6CTokenFv +lbl_802155CC: +/* 802155CC 0021252C 38 00 00 00 */ li r0, 0 +/* 802155D0 00212530 7E C3 B3 78 */ mr r3, r22 +/* 802155D4 00212534 98 01 01 24 */ stb r0, 0x124(r1) +/* 802155D8 00212538 E3 E1 02 38 */ psq_l f31, 568(r1), 0, qr0 +/* 802155DC 0021253C CB E1 02 30 */ lfd f31, 0x230(r1) +/* 802155E0 00212540 E3 C1 02 28 */ psq_l f30, 552(r1), 0, qr0 +/* 802155E4 00212544 CB C1 02 20 */ lfd f30, 0x220(r1) +/* 802155E8 00212548 BA A1 01 F4 */ lmw r21, 0x1f4(r1) +/* 802155EC 0021254C 80 01 02 44 */ lwz r0, 0x244(r1) +/* 802155F0 00212550 7C 08 03 A6 */ mtlr r0 +/* 802155F4 00212554 38 21 02 40 */ addi r1, r1, 0x240 +/* 802155F8 00212558 4E 80 00 20 */ blr + +.global StopProjectile__17CEnergyProjectileFR13CStateManager +StopProjectile__17CEnergyProjectileFR13CStateManager: +/* 802155FC 0021255C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80215600 00212560 7C 08 02 A6 */ mflr r0 +/* 80215604 00212564 90 01 00 24 */ stw r0, 0x24(r1) +/* 80215608 00212568 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8021560C 0021256C 7C 9F 23 78 */ mr r31, r4 +/* 80215610 00212570 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80215614 00212574 7C 7E 1B 78 */ mr r30, r3 +/* 80215618 00212578 4B E2 22 91 */ bl DeleteProjectileLight__15CGameProjectileFR13CStateManager +/* 8021561C 0021257C A0 1E 00 EC */ lhz r0, 0xec(r30) +/* 80215620 00212580 7F E3 FB 78 */ mr r3, r31 +/* 80215624 00212584 80 BE 00 F0 */ lwz r5, 0xf0(r30) +/* 80215628 00212588 38 81 00 0C */ addi r4, r1, 0xc +/* 8021562C 0021258C B0 01 00 08 */ sth r0, 8(r1) +/* 80215630 00212590 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80215634 00212594 4B E2 F6 A5 */ bl RemoveWeaponId__13CStateManagerF9TUniqueId11EWeaponType +/* 80215638 00212598 88 1E 02 E4 */ lbz r0, 0x2e4(r30) +/* 8021563C 0021259C 38 A0 00 00 */ li r5, 0 +/* 80215640 002125A0 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 80215644 002125A4 7F E3 FB 78 */ mr r3, r31 +/* 80215648 002125A8 98 1E 02 E4 */ stb r0, 0x2e4(r30) +/* 8021564C 002125AC 7F C4 F3 78 */ mr r4, r30 +/* 80215650 002125B0 90 BE 00 6C */ stw r5, 0x6c(r30) +/* 80215654 002125B4 90 BE 00 68 */ stw r5, 0x68(r30) +/* 80215658 002125B8 4B E3 70 ED */ bl UpdateActorInSortedLists__13CStateManagerFR6CActor +/* 8021565C 002125BC 80 1E 02 E8 */ lwz r0, 0x2e8(r30) +/* 80215660 002125C0 28 00 00 00 */ cmplwi r0, 0 +/* 80215664 002125C4 41 82 00 1C */ beq lbl_80215680 +/* 80215668 002125C8 80 1E 02 E8 */ lwz r0, 0x2e8(r30) +/* 8021566C 002125CC 38 61 00 10 */ addi r3, r1, 0x10 +/* 80215670 002125D0 90 01 00 10 */ stw r0, 0x10(r1) +/* 80215674 002125D4 48 0D 48 11 */ bl RemoveEmitter__11CSfxManagerFRC10CSfxHandle +/* 80215678 002125D8 38 00 00 00 */ li r0, 0 +/* 8021567C 002125DC 90 1E 02 E8 */ stw r0, 0x2e8(r30) +lbl_80215680: +/* 80215680 002125E0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80215684 002125E4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80215688 002125E8 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8021568C 002125EC 7C 08 03 A6 */ mtlr r0 +/* 80215690 002125F0 38 21 00 20 */ addi r1, r1, 0x20 +/* 80215694 002125F4 4E 80 00 20 */ blr + +.global "__ct__17CEnergyProjectileFbRC28TToken<18CWeaponDescription>11EWeaponTypeRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId7TAreaId9TUniqueId9TUniqueIdUibRC9CVector3fRCQ24rstl50optional_object<31TLockedToken<15CGenDescription>>sb" +"__ct__17CEnergyProjectileFbRC28TToken<18CWeaponDescription>11EWeaponTypeRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId7TAreaId9TUniqueId9TUniqueIdUibRC9CVector3fRCQ24rstl50optional_object<31TLockedToken<15CGenDescription>>sb": +/* 80215698 002125F8 94 21 FE 90 */ stwu r1, -0x170(r1) +/* 8021569C 002125FC 7C 08 02 A6 */ mflr r0 +/* 802156A0 00212600 3D 60 80 3D */ lis r11, lbl_803D2890@ha +/* 802156A4 00212604 90 01 01 74 */ stw r0, 0x174(r1) +/* 802156A8 00212608 39 6B 28 90 */ addi r11, r11, lbl_803D2890@l +/* 802156AC 0021260C BD E1 01 2C */ stmw r15, 0x12c(r1) +/* 802156B0 00212610 7C 70 1B 78 */ mr r16, r3 +/* 802156B4 00212614 7C 91 23 78 */ mr r17, r4 +/* 802156B8 00212618 83 01 01 78 */ lwz r24, 0x178(r1) +/* 802156BC 0021261C 83 21 01 7C */ lwz r25, 0x17c(r1) +/* 802156C0 00212620 7C B2 2B 78 */ mr r18, r5 +/* 802156C4 00212624 83 41 01 80 */ lwz r26, 0x180(r1) +/* 802156C8 00212628 7C D3 33 78 */ mr r19, r6 +/* 802156CC 0021262C 83 61 01 84 */ lwz r27, 0x184(r1) +/* 802156D0 00212630 7C F4 3B 78 */ mr r20, r7 +/* 802156D4 00212634 8B 81 01 8B */ lbz r28, 0x18b(r1) +/* 802156D8 00212638 7D 15 43 78 */ mr r21, r8 +/* 802156DC 0021263C 83 A1 01 8C */ lwz r29, 0x18c(r1) +/* 802156E0 00212640 7D 36 4B 78 */ mr r22, r9 +/* 802156E4 00212644 83 C1 01 90 */ lwz r30, 0x190(r1) +/* 802156E8 00212648 7D 57 53 78 */ mr r23, r10 +/* 802156EC 0021264C A3 E1 01 96 */ lhz r31, 0x196(r1) +/* 802156F0 00212650 38 61 00 40 */ addi r3, r1, 0x40 +/* 802156F4 00212654 89 E1 01 9B */ lbz r15, 0x19b(r1) +/* 802156F8 00212658 38 8B 00 64 */ addi r4, r11, 0x64 +/* 802156FC 0021265C 4B DE F5 BD */ bl string_l__4rstlFPCc +/* 80215700 00212660 A0 1A 00 00 */ lhz r0, 0(r26) +/* 80215704 00212664 3B 41 00 38 */ addi r26, r1, 0x38 +/* 80215708 00212668 A2 F7 00 00 */ lhz r23, 0(r23) +/* 8021570C 0021266C 39 81 00 3C */ addi r12, r1, 0x3c +/* 80215710 00212670 B0 01 00 30 */ sth r0, 0x30(r1) +/* 80215714 00212674 39 61 00 34 */ addi r11, r1, 0x34 +/* 80215718 00212678 38 01 00 30 */ addi r0, r1, 0x30 +/* 8021571C 0021267C 7E 03 83 78 */ mr r3, r16 +/* 80215720 00212680 A0 D9 00 00 */ lhz r6, 0(r25) +/* 80215724 00212684 7E 24 8B 78 */ mr r4, r17 +/* 80215728 00212688 7E 45 93 78 */ mr r5, r18 +/* 8021572C 0021268C 7E 67 9B 78 */ mr r7, r19 +/* 80215730 00212690 B0 C1 00 34 */ sth r6, 0x34(r1) +/* 80215734 00212694 7E 88 A3 78 */ mr r8, r20 +/* 80215738 00212698 7E A9 AB 78 */ mr r9, r21 +/* 8021573C 0021269C 7E CA B3 78 */ mr r10, r22 +/* 80215740 002126A0 82 38 00 00 */ lwz r17, 0(r24) +/* 80215744 002126A4 38 C1 00 40 */ addi r6, r1, 0x40 +/* 80215748 002126A8 92 21 00 3C */ stw r17, 0x3c(r1) +/* 8021574C 002126AC B2 E1 00 38 */ sth r23, 0x38(r1) +/* 80215750 002126B0 93 41 00 08 */ stw r26, 8(r1) +/* 80215754 002126B4 91 81 00 0C */ stw r12, 0xc(r1) +/* 80215758 002126B8 91 61 00 10 */ stw r11, 0x10(r1) +/* 8021575C 002126BC 90 01 00 14 */ stw r0, 0x14(r1) +/* 80215760 002126C0 93 61 00 18 */ stw r27, 0x18(r1) +/* 80215764 002126C4 93 81 00 1C */ stw r28, 0x1c(r1) +/* 80215768 002126C8 93 A1 00 20 */ stw r29, 0x20(r1) +/* 8021576C 002126CC 93 C1 00 24 */ stw r30, 0x24(r1) +/* 80215770 002126D0 93 E1 00 28 */ stw r31, 0x28(r1) +/* 80215774 002126D4 91 E1 00 2C */ stw r15, 0x2c(r1) +/* 80215778 002126D8 4B E2 4D 0D */ bl "__ct__15CGameProjectileFbRC28TToken<18CWeaponDescription>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>11EWeaponTypeRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId7TAreaId9TUniqueId9TUniqueIdUibRC9CVector3fRCQ24rstl50optional_object<31TLockedToken<15CGenDescription>>sb" +/* 8021577C 002126DC 38 61 00 40 */ addi r3, r1, 0x40 +/* 80215780 002126E0 48 12 83 61 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80215784 002126E4 3C 60 80 3E */ lis r3, lbl_803E7158@ha +/* 80215788 002126E8 38 00 00 00 */ li r0, 0 +/* 8021578C 002126EC 38 83 71 58 */ addi r4, r3, lbl_803E7158@l +/* 80215790 002126F0 38 70 02 EC */ addi r3, r16, 0x2ec +/* 80215794 002126F4 90 90 00 00 */ stw r4, 0(r16) +/* 80215798 002126F8 90 10 02 E8 */ stw r0, 0x2e8(r16) +/* 8021579C 002126FC C0 54 00 24 */ lfs f2, 0x24(r20) +/* 802157A0 00212700 C0 34 00 14 */ lfs f1, 0x14(r20) +/* 802157A4 00212704 C0 14 00 04 */ lfs f0, 4(r20) +/* 802157A8 00212708 D0 10 02 EC */ stfs f0, 0x2ec(r16) +/* 802157AC 0021270C D0 30 02 F0 */ stfs f1, 0x2f0(r16) +/* 802157B0 00212710 D0 50 02 F4 */ stfs f2, 0x2f4(r16) +/* 802157B4 00212714 48 0F F1 05 */ bl Magnitude__9CVector3fCFv +/* 802157B8 00212718 D0 30 02 F8 */ stfs f1, 0x2f8(r16) +/* 802157BC 0021271C 38 61 00 50 */ addi r3, r1, 0x50 +/* 802157C0 00212720 C0 22 B3 40 */ lfs f1, lbl_805AD060@sda21(r2) +/* 802157C4 00212724 C0 42 B3 24 */ lfs f2, lbl_805AD044@sda21(r2) +/* 802157C8 00212728 4B F4 83 ED */ bl BuildProjectileCameraShake__16CCameraShakeDataFff +/* 802157CC 0021272C 38 70 02 FC */ addi r3, r16, 0x2fc +/* 802157D0 00212730 38 81 00 50 */ addi r4, r1, 0x50 +/* 802157D4 00212734 4B DF 55 D5 */ bl __ct__16CCameraShakeDataFRC16CCameraShakeData +/* 802157D8 00212738 34 81 00 D0 */ addic. r4, r1, 0xd0 +/* 802157DC 0021273C 41 82 00 10 */ beq lbl_802157EC +/* 802157E0 00212740 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 802157E4 00212744 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 802157E8 00212748 90 04 00 00 */ stw r0, 0(r4) +lbl_802157EC: +/* 802157EC 0021274C 34 81 00 94 */ addic. r4, r1, 0x94 +/* 802157F0 00212750 41 82 00 10 */ beq lbl_80215800 +/* 802157F4 00212754 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 802157F8 00212758 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 802157FC 0021275C 90 04 00 00 */ stw r0, 0(r4) +lbl_80215800: +/* 80215800 00212760 34 81 00 58 */ addic. r4, r1, 0x58 +/* 80215804 00212764 41 82 00 10 */ beq lbl_80215814 +/* 80215808 00212768 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8021580C 0021276C 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 80215810 00212770 90 04 00 00 */ stw r0, 0(r4) +lbl_80215814: +/* 80215814 00212774 88 10 03 D0 */ lbz r0, 0x3d0(r16) +/* 80215818 00212778 38 A0 00 00 */ li r5, 0 +/* 8021581C 0021277C 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 80215820 00212780 C0 02 B3 10 */ lfs f0, lbl_805AD030@sda21(r2) +/* 80215824 00212784 98 10 03 D0 */ stb r0, 0x3d0(r16) +/* 80215828 00212788 38 80 00 02 */ li r4, 2 +/* 8021582C 0021278C 7E 03 83 78 */ mr r3, r16 +/* 80215830 00212790 88 10 03 D0 */ lbz r0, 0x3d0(r16) +/* 80215834 00212794 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 80215838 00212798 98 10 03 D0 */ stb r0, 0x3d0(r16) +/* 8021583C 0021279C 88 10 03 D0 */ lbz r0, 0x3d0(r16) +/* 80215840 002127A0 50 A0 2E B4 */ rlwimi r0, r5, 5, 0x1a, 0x1a +/* 80215844 002127A4 98 10 03 D0 */ stb r0, 0x3d0(r16) +/* 80215848 002127A8 88 10 03 D0 */ lbz r0, 0x3d0(r16) +/* 8021584C 002127AC 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 80215850 002127B0 98 10 03 D0 */ stb r0, 0x3d0(r16) +/* 80215854 002127B4 D0 10 03 D4 */ stfs f0, 0x3d4(r16) +/* 80215858 002127B8 88 10 00 E6 */ lbz r0, 0xe6(r16) +/* 8021585C 002127BC 50 80 1E F8 */ rlwimi r0, r4, 3, 0x1b, 0x1c +/* 80215860 002127C0 98 10 00 E6 */ stb r0, 0xe6(r16) +/* 80215864 002127C4 B9 E1 01 2C */ lmw r15, 0x12c(r1) +/* 80215868 002127C8 80 01 01 74 */ lwz r0, 0x174(r1) +/* 8021586C 002127CC 7C 08 03 A6 */ mtlr r0 +/* 80215870 002127D0 38 21 01 70 */ addi r1, r1, 0x170 +/* 80215874 002127D4 4E 80 00 20 */ blr + +.global __sinit_CEnergyProjectile_cpp +__sinit_CEnergyProjectile_cpp: +/* 80215878 002127D8 3C 60 00 E4 */ lis r3, 0x00E3FFFE@ha +/* 8021587C 002127DC 38 00 00 00 */ li r0, 0 +/* 80215880 002127E0 38 63 FF FE */ addi r3, r3, 0x00E3FFFE@l +/* 80215884 002127E4 90 0D A4 F8 */ stw r0, lbl_805A90B8@sda21(r13) +/* 80215888 002127E8 90 6D A4 FC */ stw r3, lbl_805A90BC@sda21(r13) +/* 8021588C 002127EC 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Weapons/CFlameThrower.s b/asm/Kyoto_CWD/Weapons/CFlameThrower.s new file mode 100644 index 00000000..b9d3fdac --- /dev/null +++ b/asm/Kyoto_CWD/Weapons/CFlameThrower.s @@ -0,0 +1,1740 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__13CFlameThrowerFv +__dt__13CFlameThrowerFv: +/* 801974BC 0019441C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801974C0 00194420 7C 08 02 A6 */ mflr r0 +/* 801974C4 00194424 90 01 00 14 */ stw r0, 0x14(r1) +/* 801974C8 00194428 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801974CC 0019442C 7C 9F 23 78 */ mr r31, r4 +/* 801974D0 00194430 93 C1 00 08 */ stw r30, 8(r1) +/* 801974D4 00194434 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801974D8 00194438 41 82 00 7C */ beq lbl_80197554 +/* 801974DC 0019443C 3C 80 80 3E */ lis r4, lbl_803E45D8@ha +/* 801974E0 00194440 38 7E 03 4C */ addi r3, r30, 0x34c +/* 801974E4 00194444 38 04 45 D8 */ addi r0, r4, lbl_803E45D8@l +/* 801974E8 00194448 38 80 FF FF */ li r4, -1 +/* 801974EC 0019444C 90 1E 00 00 */ stw r0, 0(r30) +/* 801974F0 00194450 48 01 E1 79 */ bl __dt__10CFlameWarpFv +/* 801974F4 00194454 34 1E 03 48 */ addic. r0, r30, 0x348 +/* 801974F8 00194458 41 82 00 24 */ beq lbl_8019751C +/* 801974FC 0019445C 80 7E 03 48 */ lwz r3, 0x348(r30) +/* 80197500 00194460 28 03 00 00 */ cmplwi r3, 0 +/* 80197504 00194464 41 82 00 18 */ beq lbl_8019751C +/* 80197508 00194468 81 83 00 00 */ lwz r12, 0(r3) +/* 8019750C 0019446C 38 80 00 01 */ li r4, 1 +/* 80197510 00194470 81 8C 00 08 */ lwz r12, 8(r12) +/* 80197514 00194474 7D 89 03 A6 */ mtctr r12 +/* 80197518 00194478 4E 80 04 21 */ bctrl +lbl_8019751C: +/* 8019751C 0019447C 34 1E 03 3C */ addic. r0, r30, 0x33c +/* 80197520 00194480 41 82 00 18 */ beq lbl_80197538 +/* 80197524 00194484 34 1E 03 3C */ addic. r0, r30, 0x33c +/* 80197528 00194488 41 82 00 10 */ beq lbl_80197538 +/* 8019752C 0019448C 38 7E 03 3C */ addi r3, r30, 0x33c +/* 80197530 00194490 38 80 00 00 */ li r4, 0 +/* 80197534 00194494 48 1A 99 0D */ bl __dt__6CTokenFv +lbl_80197538: +/* 80197538 00194498 7F C3 F3 78 */ mr r3, r30 +/* 8019753C 0019449C 38 80 00 00 */ li r4, 0 +/* 80197540 001944A0 4B E9 FE C1 */ bl __dt__15CGameProjectileFv +/* 80197544 001944A4 7F E0 07 35 */ extsh. r0, r31 +/* 80197548 001944A8 40 81 00 0C */ ble lbl_80197554 +/* 8019754C 001944AC 7F C3 F3 78 */ mr r3, r30 +/* 80197550 001944B0 48 17 E3 E1 */ bl Free__7CMemoryFPCv +lbl_80197554: +/* 80197554 001944B4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80197558 001944B8 7F C3 F3 78 */ mr r3, r30 +/* 8019755C 001944BC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80197560 001944C0 83 C1 00 08 */ lwz r30, 8(r1) +/* 80197564 001944C4 7C 08 03 A6 */ mtlr r0 +/* 80197568 001944C8 38 21 00 10 */ addi r1, r1, 0x10 +/* 8019756C 001944CC 4E 80 00 20 */ blr + +.global sub_80197570 +sub_80197570: +/* 80197570 001944D0 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80197574 001944D4 7C 08 02 A6 */ mflr r0 +/* 80197578 001944D8 90 01 00 44 */ stw r0, 0x44(r1) +/* 8019757C 001944DC DB E1 00 38 */ stfd f31, 0x38(r1) +/* 80197580 001944E0 FF E0 08 90 */ fmr f31, f1 +/* 80197584 001944E4 93 E1 00 34 */ stw r31, 0x34(r1) +/* 80197588 001944E8 7C 9F 23 78 */ mr r31, r4 +/* 8019758C 001944EC 93 C1 00 30 */ stw r30, 0x30(r1) +/* 80197590 001944F0 7C 7E 1B 78 */ mr r30, r3 +/* 80197594 001944F4 81 04 08 4C */ lwz r8, 0x84c(r4) +/* 80197598 001944F8 A0 A5 00 00 */ lhz r5, 0(r5) +/* 8019759C 001944FC A0 08 00 08 */ lhz r0, 8(r8) +/* 801975A0 00194500 7C 05 00 40 */ cmplw r5, r0 +/* 801975A4 00194504 40 82 00 30 */ bne lbl_801975D4 +/* 801975A8 00194508 80 BE 03 F4 */ lwz r5, 0x3f4(r30) +/* 801975AC 0019450C 3C 05 00 01 */ addis r0, r5, 1 +/* 801975B0 00194510 28 00 FF FF */ cmplwi r0, 0xffff +/* 801975B4 00194514 41 82 00 20 */ beq lbl_801975D4 +/* 801975B8 00194518 80 FE 03 FC */ lwz r7, 0x3fc(r30) +/* 801975BC 0019451C 3C 07 00 01 */ addis r0, r7, 1 +/* 801975C0 00194520 28 00 FF FF */ cmplwi r0, 0xffff +/* 801975C4 00194524 41 82 00 10 */ beq lbl_801975D4 +/* 801975C8 00194528 A0 DE 03 F8 */ lhz r6, 0x3f8(r30) +/* 801975CC 0019452C 7D 03 43 78 */ mr r3, r8 +/* 801975D0 00194530 4B E7 E7 45 */ bl Freeze__7CPlayerFR13CStateManagerUiUsUi +lbl_801975D4: +/* 801975D4 00194534 FC 20 F8 90 */ fmr f1, f31 +/* 801975D8 00194538 38 61 00 08 */ addi r3, r1, 8 +/* 801975DC 0019453C 38 9E 01 2C */ addi r4, r30, 0x12c +/* 801975E0 00194540 4B F2 BE 69 */ bl __ct__11CDamageInfoFRC11CDamageInfof +/* 801975E4 00194544 7F C3 F3 78 */ mr r3, r30 +/* 801975E8 00194548 7F E4 FB 78 */ mr r4, r31 +/* 801975EC 0019454C 38 A1 00 08 */ addi r5, r1, 8 +/* 801975F0 00194550 4B EA 0C 85 */ bl ApplyDamageToActors__15CGameProjectileFR13CStateManager +/* 801975F4 00194554 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801975F8 00194558 CB E1 00 38 */ lfd f31, 0x38(r1) +/* 801975FC 0019455C 83 E1 00 34 */ lwz r31, 0x34(r1) +/* 80197600 00194560 83 C1 00 30 */ lwz r30, 0x30(r1) +/* 80197604 00194564 7C 08 03 A6 */ mtlr r0 +/* 80197608 00194568 38 21 00 40 */ addi r1, r1, 0x40 +/* 8019760C 0019456C 4E 80 00 20 */ blr + +.global SetFlameLightActive__13CFlameThrowerFbR13CStateManager +SetFlameLightActive__13CFlameThrowerFbR13CStateManager: +/* 80197610 00194570 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80197614 00194574 7C 08 02 A6 */ mflr r0 +/* 80197618 00194578 90 01 00 24 */ stw r0, 0x24(r1) +/* 8019761C 0019457C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80197620 00194580 7C 9F 23 78 */ mr r31, r4 +/* 80197624 00194584 A0 C3 02 C8 */ lhz r6, 0x2c8(r3) +/* 80197628 00194588 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8019762C 0019458C 7C 06 00 40 */ cmplw r6, r0 +/* 80197630 00194590 41 82 00 44 */ beq lbl_80197674 +/* 80197634 00194594 B0 C1 00 08 */ sth r6, 8(r1) +/* 80197638 00194598 7C A3 2B 78 */ mr r3, r5 +/* 8019763C 0019459C 38 81 00 0C */ addi r4, r1, 0xc +/* 80197640 001945A0 B0 C1 00 0C */ sth r6, 0xc(r1) +/* 80197644 001945A4 4B EB 4F 31 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80197648 001945A8 7C 64 1B 78 */ mr r4, r3 +/* 8019764C 001945AC 38 61 00 10 */ addi r3, r1, 0x10 +/* 80197650 001945B0 4B F1 64 35 */ bl "__ct__24TCastToPtr<10CGameLight>FP7CEntity" +/* 80197654 001945B4 80 63 00 04 */ lwz r3, 4(r3) +/* 80197658 001945B8 28 03 00 00 */ cmplwi r3, 0 +/* 8019765C 001945BC 41 82 00 18 */ beq lbl_80197674 +/* 80197660 001945C0 81 83 00 00 */ lwz r12, 0(r3) +/* 80197664 001945C4 57 E4 06 3E */ clrlwi r4, r31, 0x18 +/* 80197668 001945C8 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 8019766C 001945CC 7D 89 03 A6 */ mtctr r12 +/* 80197670 001945D0 4E 80 04 21 */ bctrl +lbl_80197674: +/* 80197674 001945D4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80197678 001945D8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8019767C 001945DC 7C 08 03 A6 */ mtlr r0 +/* 80197680 001945E0 38 21 00 20 */ addi r1, r1, 0x20 +/* 80197684 001945E4 4E 80 00 20 */ blr + +.global DoCollisionCheck__13CFlameThrowerFR9TUniqueIdRC6CAABoxR13CStateManager +DoCollisionCheck__13CFlameThrowerFR9TUniqueIdRC6CAABoxR13CStateManager: +/* 80197688 001945E8 94 21 F4 50 */ stwu r1, -0xbb0(r1) +/* 8019768C 001945EC 7C 08 02 A6 */ mflr r0 +/* 80197690 001945F0 90 01 0B B4 */ stw r0, 0xbb4(r1) +/* 80197694 001945F4 DB E1 0B A0 */ stfd f31, 0xba0(r1) +/* 80197698 001945F8 F3 E1 0B A8 */ psq_st f31, -1112(r1), 0, qr0 +/* 8019769C 001945FC DB C1 0B 90 */ stfd f30, 0xb90(r1) +/* 801976A0 00194600 F3 C1 0B 98 */ psq_st f30, -1128(r1), 0, qr0 +/* 801976A4 00194604 DB A1 0B 80 */ stfd f29, 0xb80(r1) +/* 801976A8 00194608 F3 A1 0B 88 */ psq_st f29, -1144(r1), 0, qr0 +/* 801976AC 0019460C DB 81 0B 70 */ stfd f28, 0xb70(r1) +/* 801976B0 00194610 F3 81 0B 78 */ psq_st f28, -1160(r1), 0, qr0 +/* 801976B4 00194614 DB 61 0B 60 */ stfd f27, 0xb60(r1) +/* 801976B8 00194618 F3 61 0B 68 */ psq_st f27, -1176(r1), 0, qr0 +/* 801976BC 0019461C DB 41 0B 50 */ stfd f26, 0xb50(r1) +/* 801976C0 00194620 F3 41 0B 58 */ psq_st f26, -1192(r1), 0, qr0 +/* 801976C4 00194624 BE 61 0B 1C */ stmw r19, 0xb1c(r1) +/* 801976C8 00194628 C0 02 A6 A4 */ lfs f0, lbl_805AC3C4@sda21(r2) +/* 801976CC 0019462C 7C 7E 1B 78 */ mr r30, r3 +/* 801976D0 00194630 C0 22 A6 A0 */ lfs f1, lbl_805AC3C0@sda21(r2) +/* 801976D4 00194634 7C 9F 23 78 */ mr r31, r4 +/* 801976D8 00194638 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801976DC 0019463C 7C B4 2B 78 */ mr r20, r5 +/* 801976E0 00194640 7C D5 33 78 */ mr r21, r6 +/* 801976E4 00194644 7C F3 3B 78 */ mr r19, r7 +/* 801976E8 00194648 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 801976EC 0019464C 38 61 00 0C */ addi r3, r1, 0xc +/* 801976F0 00194650 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801976F4 00194654 48 17 D2 05 */ bl Normalize__9CVector3fFv +/* 801976F8 00194658 C0 62 A6 A4 */ lfs f3, lbl_805AC3C4@sda21(r2) +/* 801976FC 0019465C 38 00 00 00 */ li r0, 0 +/* 80197700 00194660 C0 41 00 0C */ lfs f2, 0xc(r1) +/* 80197704 00194664 3C 60 80 5A */ lis r3, lbl_8059FD18@ha +/* 80197708 00194668 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 8019770C 0019466C 38 C3 FD 18 */ addi r6, r3, lbl_8059FD18@l +/* 80197710 00194670 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 80197714 00194674 7E 63 9B 78 */ mr r3, r19 +/* 80197718 00194678 D0 61 02 68 */ stfs f3, 0x268(r1) +/* 8019771C 0019467C 7E A5 AB 78 */ mr r5, r21 +/* 80197720 00194680 7F E7 FB 78 */ mr r7, r31 +/* 80197724 00194684 38 81 03 08 */ addi r4, r1, 0x308 +/* 80197728 00194688 D0 61 02 6C */ stfs f3, 0x26c(r1) +/* 8019772C 0019468C D0 61 02 70 */ stfs f3, 0x270(r1) +/* 80197730 00194690 D0 61 02 74 */ stfs f3, 0x274(r1) +/* 80197734 00194694 D0 41 02 78 */ stfs f2, 0x278(r1) +/* 80197738 00194698 D0 21 02 7C */ stfs f1, 0x27c(r1) +/* 8019773C 0019469C D0 01 02 80 */ stfs f0, 0x280(r1) +/* 80197740 001946A0 D0 61 02 84 */ stfs f3, 0x284(r1) +/* 80197744 001946A4 98 01 02 88 */ stb r0, 0x288(r1) +/* 80197748 001946A8 90 01 02 94 */ stw r0, 0x294(r1) +/* 8019774C 001946AC 90 01 02 90 */ stw r0, 0x290(r1) +/* 80197750 001946B0 90 01 03 08 */ stw r0, 0x308(r1) +/* 80197754 001946B4 4B EB 4F CD */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" +/* 80197758 001946B8 88 1F 04 00 */ lbz r0, 0x400(r31) +/* 8019775C 001946BC 3B 9F 03 50 */ addi r28, r31, 0x350 +/* 80197760 001946C0 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 80197764 001946C4 41 82 05 9C */ beq lbl_80197D00 +/* 80197768 001946C8 80 1C 00 00 */ lwz r0, 0(r28) +/* 8019776C 001946CC 2C 00 00 00 */ cmpwi r0, 0 +/* 80197770 001946D0 40 81 05 90 */ ble lbl_80197D00 +/* 80197774 001946D4 6C 03 80 00 */ xoris r3, r0, 0x8000 +/* 80197778 001946D8 3C 00 43 30 */ lis r0, 0x4330 +/* 8019777C 001946DC 90 61 0B 14 */ stw r3, 0xb14(r1) +/* 80197780 001946E0 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 80197784 001946E4 C0 7F 03 E0 */ lfs f3, 0x3e0(r31) +/* 80197788 001946E8 3B 01 02 D4 */ addi r24, r1, 0x2d4 +/* 8019778C 001946EC 90 01 0B 10 */ stw r0, 0xb10(r1) +/* 80197790 001946F0 3B 7C 00 10 */ addi r27, r28, 0x10 +/* 80197794 001946F4 C0 5F 03 DC */ lfs f2, 0x3dc(r31) +/* 80197798 001946F8 3B 41 03 0C */ addi r26, r1, 0x30c +/* 8019779C 001946FC C8 22 A6 B0 */ lfd f1, lbl_805AC3D0@sda21(r2) +/* 801977A0 00194700 3B 21 01 34 */ addi r25, r1, 0x134 +/* 801977A4 00194704 C8 01 0B 10 */ lfd f0, 0xb10(r1) +/* 801977A8 00194708 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801977AC 0019470C C3 E2 A6 A8 */ lfs f31, lbl_805AC3C8@sda21(r2) +/* 801977B0 00194710 3A E1 01 C4 */ addi r23, r1, 0x1c4 +/* 801977B4 00194714 EC 00 08 28 */ fsubs f0, f0, f1 +/* 801977B8 00194718 3B A3 66 F4 */ addi r29, r3, lbl_805A66F4@l +/* 801977BC 0019471C 3A C0 00 01 */ li r22, 1 +/* 801977C0 00194720 EC 02 00 24 */ fdivs f0, f2, f0 +/* 801977C4 00194724 EF DF 00 32 */ fmuls f30, f31, f0 +/* 801977C8 00194728 FF A0 F0 90 */ fmr f29, f30 +/* 801977CC 0019472C 48 00 05 24 */ b lbl_80197CF0 +lbl_801977D0: +/* 801977D0 00194730 38 16 FF FF */ addi r0, r22, -1 +/* 801977D4 00194734 C0 BB 00 04 */ lfs f5, 4(r27) +/* 801977D8 00194738 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801977DC 0019473C C0 7B 00 08 */ lfs f3, 8(r27) +/* 801977E0 00194740 C0 3B 00 00 */ lfs f1, 0(r27) +/* 801977E4 00194744 7F 65 DB 78 */ mr r5, r27 +/* 801977E8 00194748 7F A6 EB 78 */ mr r6, r29 +/* 801977EC 0019474C 7E 9C 02 14 */ add r20, r28, r0 +/* 801977F0 00194750 C0 94 00 08 */ lfs f4, 8(r20) +/* 801977F4 00194754 38 61 01 68 */ addi r3, r1, 0x168 +/* 801977F8 00194758 C0 54 00 0C */ lfs f2, 0xc(r20) +/* 801977FC 0019475C C4 14 00 04 */ lfsu f0, 4(r20) +/* 80197800 00194760 EC 85 20 28 */ fsubs f4, f5, f4 +/* 80197804 00194764 EC 43 10 28 */ fsubs f2, f3, f2 +/* 80197808 00194768 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8019780C 0019476C 7E 84 A3 78 */ mr r4, r20 +/* 80197810 00194770 D0 81 00 64 */ stfs f4, 0x64(r1) +/* 80197814 00194774 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 80197818 00194778 D0 41 00 68 */ stfs f2, 0x68(r1) +/* 8019781C 0019477C 48 17 C2 F5 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 80197820 00194780 38 61 02 34 */ addi r3, r1, 0x234 +/* 80197824 00194784 38 81 01 68 */ addi r4, r1, 0x168 +/* 80197828 00194788 48 17 B3 4D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8019782C 0019478C C0 41 00 64 */ lfs f2, 0x64(r1) +/* 80197830 00194790 38 61 00 60 */ addi r3, r1, 0x60 +/* 80197834 00194794 C0 21 00 68 */ lfs f1, 0x68(r1) +/* 80197838 00194798 C0 01 00 60 */ lfs f0, 0x60(r1) +/* 8019783C 0019479C EC 9F 00 B2 */ fmuls f4, f31, f2 +/* 80197840 001947A0 C0 B4 00 04 */ lfs f5, 4(r20) +/* 80197844 001947A4 EC 5F 00 72 */ fmuls f2, f31, f1 +/* 80197848 001947A8 C0 74 00 08 */ lfs f3, 8(r20) +/* 8019784C 001947AC EC 1F 00 32 */ fmuls f0, f31, f0 +/* 80197850 001947B0 C0 34 00 00 */ lfs f1, 0(r20) +/* 80197854 001947B4 EC 85 20 2A */ fadds f4, f5, f4 +/* 80197858 001947B8 EC 43 10 2A */ fadds f2, f3, f2 +/* 8019785C 001947BC EC 01 00 2A */ fadds f0, f1, f0 +/* 80197860 001947C0 D0 81 02 50 */ stfs f4, 0x250(r1) +/* 80197864 001947C4 D0 01 02 40 */ stfs f0, 0x240(r1) +/* 80197868 001947C8 D0 41 02 60 */ stfs f2, 0x260(r1) +/* 8019786C 001947CC 48 17 D0 4D */ bl Magnitude__9CVector3fCFv +/* 80197870 001947D0 EC 1F 00 72 */ fmuls f0, f31, f1 +/* 80197874 001947D4 D3 A1 00 48 */ stfs f29, 0x48(r1) +/* 80197878 001947D8 38 61 01 F8 */ addi r3, r1, 0x1f8 +/* 8019787C 001947DC 38 81 02 34 */ addi r4, r1, 0x234 +/* 80197880 001947E0 D3 A1 00 50 */ stfs f29, 0x50(r1) +/* 80197884 001947E4 38 A1 00 48 */ addi r5, r1, 0x48 +/* 80197888 001947E8 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 8019788C 001947EC 48 13 E7 09 */ bl __ct__6COBBoxFRC12CTransform4fRC9CVector3f +/* 80197890 001947F0 7F 55 D3 78 */ mr r21, r26 +/* 80197894 001947F4 48 00 04 3C */ b lbl_80197CD0 +lbl_80197898: +/* 80197898 001947F8 A0 15 00 00 */ lhz r0, 0(r21) +/* 8019789C 001947FC 7E 63 9B 78 */ mr r3, r19 +/* 801978A0 00194800 38 81 00 08 */ addi r4, r1, 8 +/* 801978A4 00194804 B0 01 00 08 */ sth r0, 8(r1) +/* 801978A8 00194808 4B EB 4C CD */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801978AC 0019480C 7C 74 1B 79 */ or. r20, r3, r3 +/* 801978B0 00194810 41 82 04 1C */ beq lbl_80197CCC +/* 801978B4 00194814 7F E4 FB 78 */ mr r4, r31 +/* 801978B8 00194818 7E 85 A3 78 */ mr r5, r20 +/* 801978BC 0019481C 7E 66 9B 78 */ mr r6, r19 +/* 801978C0 00194820 38 61 01 30 */ addi r3, r1, 0x130 +/* 801978C4 00194824 4B EA 17 B1 */ bl CanCollideWith__15CGameProjectileFR6CActorR13CStateManager +/* 801978C8 00194828 88 01 01 64 */ lbz r0, 0x164(r1) +/* 801978CC 0019482C 38 81 01 C0 */ addi r4, r1, 0x1c0 +/* 801978D0 00194830 A0 61 01 30 */ lhz r3, 0x130(r1) +/* 801978D4 00194834 28 00 00 00 */ cmplwi r0, 0 +/* 801978D8 00194838 98 01 01 F4 */ stb r0, 0x1f4(r1) +/* 801978DC 0019483C B0 61 01 C0 */ sth r3, 0x1c0(r1) +/* 801978E0 00194840 41 82 00 64 */ beq lbl_80197944 +/* 801978E4 00194844 34 84 00 04 */ addic. r4, r4, 4 +/* 801978E8 00194848 41 82 00 5C */ beq lbl_80197944 +/* 801978EC 0019484C C0 01 01 34 */ lfs f0, 0x134(r1) +/* 801978F0 00194850 D0 04 00 00 */ stfs f0, 0(r4) +/* 801978F4 00194854 C0 01 01 38 */ lfs f0, 0x138(r1) +/* 801978F8 00194858 D0 04 00 04 */ stfs f0, 4(r4) +/* 801978FC 0019485C C0 01 01 3C */ lfs f0, 0x13c(r1) +/* 80197900 00194860 D0 04 00 08 */ stfs f0, 8(r4) +/* 80197904 00194864 C0 01 01 40 */ lfs f0, 0x140(r1) +/* 80197908 00194868 D0 04 00 0C */ stfs f0, 0xc(r4) +/* 8019790C 0019486C C0 01 01 44 */ lfs f0, 0x144(r1) +/* 80197910 00194870 D0 04 00 10 */ stfs f0, 0x10(r4) +/* 80197914 00194874 C0 01 01 48 */ lfs f0, 0x148(r1) +/* 80197918 00194878 D0 04 00 14 */ stfs f0, 0x14(r4) +/* 8019791C 0019487C C0 01 01 4C */ lfs f0, 0x14c(r1) +/* 80197920 00194880 D0 04 00 18 */ stfs f0, 0x18(r4) +/* 80197924 00194884 C0 01 01 50 */ lfs f0, 0x150(r1) +/* 80197928 00194888 D0 04 00 1C */ stfs f0, 0x1c(r4) +/* 8019792C 0019488C 88 01 01 54 */ lbz r0, 0x154(r1) +/* 80197930 00194890 98 04 00 20 */ stb r0, 0x20(r4) +/* 80197934 00194894 80 01 01 5C */ lwz r0, 0x15c(r1) +/* 80197938 00194898 80 61 01 60 */ lwz r3, 0x160(r1) +/* 8019793C 0019489C 90 64 00 2C */ stw r3, 0x2c(r4) +/* 80197940 001948A0 90 04 00 28 */ stw r0, 0x28(r4) +lbl_80197944: +/* 80197944 001948A4 28 19 00 00 */ cmplwi r25, 0 +/* 80197948 001948A8 41 82 00 0C */ beq lbl_80197954 +/* 8019794C 001948AC 38 00 00 00 */ li r0, 0 +/* 80197950 001948B0 98 01 01 64 */ stb r0, 0x164(r1) +lbl_80197954: +/* 80197954 001948B4 A0 61 01 C0 */ lhz r3, 0x1c0(r1) +/* 80197958 001948B8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8019795C 001948BC 7C 03 00 40 */ cmplw r3, r0 +/* 80197960 001948C0 40 82 00 18 */ bne lbl_80197978 +/* 80197964 001948C4 28 17 00 00 */ cmplwi r23, 0 +/* 80197968 001948C8 41 82 03 64 */ beq lbl_80197CCC +/* 8019796C 001948CC 38 00 00 00 */ li r0, 0 +/* 80197970 001948D0 98 01 01 F4 */ stb r0, 0x1f4(r1) +/* 80197974 001948D4 48 00 03 58 */ b lbl_80197CCC +lbl_80197978: +/* 80197978 001948D8 7E 84 A3 78 */ mr r4, r20 +/* 8019797C 001948DC 38 61 00 6C */ addi r3, r1, 0x6c +/* 80197980 001948E0 81 94 00 00 */ lwz r12, 0(r20) +/* 80197984 001948E4 81 8C 00 40 */ lwz r12, 0x40(r12) +/* 80197988 001948E8 7D 89 03 A6 */ mtctr r12 +/* 8019798C 001948EC 4E 80 04 21 */ bctrl +/* 80197990 001948F0 88 01 00 84 */ lbz r0, 0x84(r1) +/* 80197994 001948F4 28 00 00 00 */ cmplwi r0, 0 +/* 80197998 001948F8 98 01 00 A0 */ stb r0, 0xa0(r1) +/* 8019799C 001948FC 41 82 00 3C */ beq lbl_801979D8 +/* 801979A0 00194900 34 61 00 88 */ addic. r3, r1, 0x88 +/* 801979A4 00194904 41 82 00 34 */ beq lbl_801979D8 +/* 801979A8 00194908 C0 01 00 6C */ lfs f0, 0x6c(r1) +/* 801979AC 0019490C D0 03 00 00 */ stfs f0, 0(r3) +/* 801979B0 00194910 C0 01 00 70 */ lfs f0, 0x70(r1) +/* 801979B4 00194914 D0 03 00 04 */ stfs f0, 4(r3) +/* 801979B8 00194918 C0 01 00 74 */ lfs f0, 0x74(r1) +/* 801979BC 0019491C D0 03 00 08 */ stfs f0, 8(r3) +/* 801979C0 00194920 C0 01 00 78 */ lfs f0, 0x78(r1) +/* 801979C4 00194924 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 801979C8 00194928 C0 01 00 7C */ lfs f0, 0x7c(r1) +/* 801979CC 0019492C D0 03 00 10 */ stfs f0, 0x10(r3) +/* 801979D0 00194930 C0 01 00 80 */ lfs f0, 0x80(r1) +/* 801979D4 00194934 D0 03 00 14 */ stfs f0, 0x14(r3) +lbl_801979D8: +/* 801979D8 00194938 88 01 00 A0 */ lbz r0, 0xa0(r1) +/* 801979DC 0019493C 38 60 00 00 */ li r3, 0 +/* 801979E0 00194940 98 61 00 84 */ stb r3, 0x84(r1) +/* 801979E4 00194944 28 00 00 00 */ cmplwi r0, 0 +/* 801979E8 00194948 40 82 00 18 */ bne lbl_80197A00 +/* 801979EC 0019494C 28 17 00 00 */ cmplwi r23, 0 +/* 801979F0 00194950 98 61 00 A0 */ stb r3, 0xa0(r1) +/* 801979F4 00194954 41 82 02 D8 */ beq lbl_80197CCC +/* 801979F8 00194958 98 61 01 F4 */ stb r3, 0x1f4(r1) +/* 801979FC 0019495C 48 00 02 D0 */ b lbl_80197CCC +lbl_80197A00: +/* 80197A00 00194960 38 61 01 F8 */ addi r3, r1, 0x1f8 +/* 80197A04 00194964 38 81 00 88 */ addi r4, r1, 0x88 +/* 80197A08 00194968 48 13 E1 6D */ bl AABoxIntersectsBox__6COBBoxFRC6CAABox +/* 80197A0C 0019496C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80197A10 00194970 41 82 02 A8 */ beq lbl_80197CB8 +/* 80197A14 00194974 38 61 01 08 */ addi r3, r1, 0x108 +/* 80197A18 00194978 38 94 00 68 */ addi r4, r20, 0x68 +/* 80197A1C 0019497C 48 13 7E 99 */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList +/* 80197A20 00194980 3C 60 80 3F */ lis r3, lbl_803ECAD0@ha +/* 80197A24 00194984 C0 C1 00 88 */ lfs f6, 0x88(r1) +/* 80197A28 00194988 39 03 CA D0 */ addi r8, r3, lbl_803ECAD0@l +/* 80197A2C 0019498C C0 A1 00 8C */ lfs f5, 0x8c(r1) +/* 80197A30 00194990 91 01 01 08 */ stw r8, 0x108(r1) +/* 80197A34 00194994 3C 60 80 3E */ lis r3, lbl_803D97E4@ha +/* 80197A38 00194998 38 E3 97 E4 */ addi r7, r3, lbl_803D97E4@l +/* 80197A3C 0019499C C0 81 00 90 */ lfs f4, 0x90(r1) +/* 80197A40 001949A0 C0 61 00 94 */ lfs f3, 0x94(r1) +/* 80197A44 001949A4 7E 84 A3 78 */ mr r4, r20 +/* 80197A48 001949A8 C0 41 00 98 */ lfs f2, 0x98(r1) +/* 80197A4C 001949AC 7E 65 9B 78 */ mr r5, r19 +/* 80197A50 001949B0 C0 01 00 9C */ lfs f0, 0x9c(r1) +/* 80197A54 001949B4 38 61 00 3C */ addi r3, r1, 0x3c +/* 80197A58 001949B8 90 E1 01 98 */ stw r7, 0x198(r1) +/* 80197A5C 001949BC 80 01 01 10 */ lwz r0, 0x110(r1) +/* 80197A60 001949C0 91 01 01 08 */ stw r8, 0x108(r1) +/* 80197A64 001949C4 80 C1 01 14 */ lwz r6, 0x114(r1) +/* 80197A68 001949C8 D0 C1 01 18 */ stfs f6, 0x118(r1) +/* 80197A6C 001949CC C0 22 A6 A4 */ lfs f1, lbl_805AC3C4@sda21(r2) +/* 80197A70 001949D0 D0 A1 01 1C */ stfs f5, 0x11c(r1) +/* 80197A74 001949D4 D0 81 01 20 */ stfs f4, 0x120(r1) +/* 80197A78 001949D8 D0 61 01 24 */ stfs f3, 0x124(r1) +/* 80197A7C 001949DC D0 41 01 28 */ stfs f2, 0x128(r1) +/* 80197A80 001949E0 D0 01 01 2C */ stfs f0, 0x12c(r1) +/* 80197A84 001949E4 90 C1 01 A4 */ stw r6, 0x1a4(r1) +/* 80197A88 001949E8 90 01 01 A0 */ stw r0, 0x1a0(r1) +/* 80197A8C 001949EC 91 01 01 98 */ stw r8, 0x198(r1) +/* 80197A90 001949F0 D0 C1 01 A8 */ stfs f6, 0x1a8(r1) +/* 80197A94 001949F4 D0 A1 01 AC */ stfs f5, 0x1ac(r1) +/* 80197A98 001949F8 D0 81 01 B0 */ stfs f4, 0x1b0(r1) +/* 80197A9C 001949FC D0 61 01 B4 */ stfs f3, 0x1b4(r1) +/* 80197AA0 00194A00 D0 41 01 B8 */ stfs f2, 0x1b8(r1) +/* 80197AA4 00194A04 D0 01 01 BC */ stfs f0, 0x1bc(r1) +/* 80197AA8 00194A08 90 E1 01 08 */ stw r7, 0x108(r1) +/* 80197AAC 00194A0C 81 94 00 00 */ lwz r12, 0(r20) +/* 80197AB0 00194A10 C3 5F 03 14 */ lfs f26, 0x314(r31) +/* 80197AB4 00194A14 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 80197AB8 00194A18 C3 7F 03 04 */ lfs f27, 0x304(r31) +/* 80197ABC 00194A1C C3 9F 02 F4 */ lfs f28, 0x2f4(r31) +/* 80197AC0 00194A20 7D 89 03 A6 */ mtctr r12 +/* 80197AC4 00194A24 4E 80 04 21 */ bctrl +/* 80197AC8 00194A28 C0 41 00 40 */ lfs f2, 0x40(r1) +/* 80197ACC 00194A2C 38 61 00 54 */ addi r3, r1, 0x54 +/* 80197AD0 00194A30 C0 21 00 44 */ lfs f1, 0x44(r1) +/* 80197AD4 00194A34 C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 80197AD8 00194A38 EC 42 D8 28 */ fsubs f2, f2, f27 +/* 80197ADC 00194A3C EC 21 D0 28 */ fsubs f1, f1, f26 +/* 80197AE0 00194A40 EC 00 E0 28 */ fsubs f0, f0, f28 +/* 80197AE4 00194A44 D0 41 00 58 */ stfs f2, 0x58(r1) +/* 80197AE8 00194A48 D0 01 00 54 */ stfs f0, 0x54(r1) +/* 80197AEC 00194A4C D0 21 00 5C */ stfs f1, 0x5c(r1) +/* 80197AF0 00194A50 48 17 CD C9 */ bl Magnitude__9CVector3fCFv +/* 80197AF4 00194A54 FF 80 08 90 */ fmr f28, f1 +/* 80197AF8 00194A58 38 61 00 24 */ addi r3, r1, 0x24 +/* 80197AFC 00194A5C 38 81 00 54 */ addi r4, r1, 0x54 +/* 80197B00 00194A60 48 17 CD 51 */ bl AsNormalized__9CVector3fCFv +/* 80197B04 00194A64 C0 7F 03 14 */ lfs f3, 0x314(r31) +/* 80197B08 00194A68 FC 20 E0 90 */ fmr f1, f28 +/* 80197B0C 00194A6C C0 5F 03 04 */ lfs f2, 0x304(r31) +/* 80197B10 00194A70 38 61 02 98 */ addi r3, r1, 0x298 +/* 80197B14 00194A74 C0 1F 02 F4 */ lfs f0, 0x2f4(r31) +/* 80197B18 00194A78 38 81 00 30 */ addi r4, r1, 0x30 +/* 80197B1C 00194A7C 38 A1 00 24 */ addi r5, r1, 0x24 +/* 80197B20 00194A80 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 80197B24 00194A84 D0 41 00 34 */ stfs f2, 0x34(r1) +/* 80197B28 00194A88 D0 61 00 38 */ stfs f3, 0x38(r1) +/* 80197B2C 00194A8C 48 13 E5 41 */ bl __ct__5CMRayFRC9CVector3fRC9CVector3ff +/* 80197B30 00194A90 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 80197B34 00194A94 D3 81 02 D0 */ stfs f28, 0x2d0(r1) +/* 80197B38 00194A98 38 83 66 70 */ addi r4, r3, skIdentity4f@l +/* 80197B3C 00194A9C 7F 03 C3 78 */ mr r3, r24 +/* 80197B40 00194AA0 48 17 B0 35 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80197B44 00194AA4 3C 60 80 5A */ lis r3, lbl_8059FD18@ha +/* 80197B48 00194AA8 81 81 01 98 */ lwz r12, 0x198(r1) +/* 80197B4C 00194AAC 38 03 FD 18 */ addi r0, r3, lbl_8059FD18@l +/* 80197B50 00194AB0 38 61 00 D8 */ addi r3, r1, 0xd8 +/* 80197B54 00194AB4 90 01 03 04 */ stw r0, 0x304(r1) +/* 80197B58 00194AB8 38 81 01 98 */ addi r4, r1, 0x198 +/* 80197B5C 00194ABC 38 A1 02 98 */ addi r5, r1, 0x298 +/* 80197B60 00194AC0 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 80197B64 00194AC4 7D 89 03 A6 */ mtctr r12 +/* 80197B68 00194AC8 4E 80 04 21 */ bctrl +/* 80197B6C 00194ACC 88 E1 00 F8 */ lbz r7, 0xf8(r1) +/* 80197B70 00194AD0 C0 21 00 D8 */ lfs f1, 0xd8(r1) +/* 80197B74 00194AD4 80 81 00 DC */ lwz r4, 0xdc(r1) +/* 80197B78 00194AD8 28 07 00 00 */ cmplwi r7, 0 +/* 80197B7C 00194ADC 80 61 00 E0 */ lwz r3, 0xe0(r1) +/* 80197B80 00194AE0 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 80197B84 00194AE4 C0 A1 00 E8 */ lfs f5, 0xe8(r1) +/* 80197B88 00194AE8 C0 81 00 EC */ lfs f4, 0xec(r1) +/* 80197B8C 00194AEC C0 61 00 F0 */ lfs f3, 0xf0(r1) +/* 80197B90 00194AF0 C0 41 00 F4 */ lfs f2, 0xf4(r1) +/* 80197B94 00194AF4 C8 01 01 00 */ lfd f0, 0x100(r1) +/* 80197B98 00194AF8 D0 21 02 68 */ stfs f1, 0x268(r1) +/* 80197B9C 00194AFC 90 81 02 6C */ stw r4, 0x26c(r1) +/* 80197BA0 00194B00 90 61 02 70 */ stw r3, 0x270(r1) +/* 80197BA4 00194B04 90 01 02 74 */ stw r0, 0x274(r1) +/* 80197BA8 00194B08 D0 A1 02 78 */ stfs f5, 0x278(r1) +/* 80197BAC 00194B0C D0 81 02 7C */ stfs f4, 0x27c(r1) +/* 80197BB0 00194B10 D0 61 02 80 */ stfs f3, 0x280(r1) +/* 80197BB4 00194B14 D0 41 02 84 */ stfs f2, 0x284(r1) +/* 80197BB8 00194B18 98 E1 02 88 */ stb r7, 0x288(r1) +/* 80197BBC 00194B1C D8 01 02 90 */ stfd f0, 0x290(r1) +/* 80197BC0 00194B20 40 82 00 34 */ bne lbl_80197BF4 +/* 80197BC4 00194B24 3C 80 80 3F */ lis r4, lbl_803ECAD0@ha +/* 80197BC8 00194B28 3C 60 80 3E */ lis r3, lbl_803D97E4@ha +/* 80197BCC 00194B2C 38 84 CA D0 */ addi r4, r4, lbl_803ECAD0@l +/* 80197BD0 00194B30 38 00 00 00 */ li r0, 0 +/* 80197BD4 00194B34 90 81 01 98 */ stw r4, 0x198(r1) +/* 80197BD8 00194B38 38 63 97 E4 */ addi r3, r3, lbl_803D97E4@l +/* 80197BDC 00194B3C 28 17 00 00 */ cmplwi r23, 0 +/* 80197BE0 00194B40 90 61 01 98 */ stw r3, 0x198(r1) +/* 80197BE4 00194B44 98 01 00 A0 */ stb r0, 0xa0(r1) +/* 80197BE8 00194B48 41 82 00 E4 */ beq lbl_80197CCC +/* 80197BEC 00194B4C 98 01 01 F4 */ stb r0, 0x1f4(r1) +/* 80197BF0 00194B50 48 00 00 DC */ b lbl_80197CCC +lbl_80197BF4: +/* 80197BF4 00194B54 D0 3E 00 00 */ stfs f1, 0(r30) +/* 80197BF8 00194B58 3C 80 80 3F */ lis r4, lbl_803ECAD0@ha +/* 80197BFC 00194B5C C0 01 02 6C */ lfs f0, 0x26c(r1) +/* 80197C00 00194B60 3C 60 80 3E */ lis r3, lbl_803D97E4@ha +/* 80197C04 00194B64 C0 21 02 70 */ lfs f1, 0x270(r1) +/* 80197C08 00194B68 38 84 CA D0 */ addi r4, r4, lbl_803ECAD0@l +/* 80197C0C 00194B6C D0 1E 00 04 */ stfs f0, 4(r30) +/* 80197C10 00194B70 28 17 00 00 */ cmplwi r23, 0 +/* 80197C14 00194B74 C0 01 02 74 */ lfs f0, 0x274(r1) +/* 80197C18 00194B78 38 63 97 E4 */ addi r3, r3, lbl_803D97E4@l +/* 80197C1C 00194B7C D0 3E 00 08 */ stfs f1, 8(r30) +/* 80197C20 00194B80 38 00 00 00 */ li r0, 0 +/* 80197C24 00194B84 80 C1 02 94 */ lwz r6, 0x294(r1) +/* 80197C28 00194B88 D0 1E 00 0C */ stfs f0, 0xc(r30) +/* 80197C2C 00194B8C 80 A1 02 90 */ lwz r5, 0x290(r1) +/* 80197C30 00194B90 D0 BE 00 10 */ stfs f5, 0x10(r30) +/* 80197C34 00194B94 D0 9E 00 14 */ stfs f4, 0x14(r30) +/* 80197C38 00194B98 D0 7E 00 18 */ stfs f3, 0x18(r30) +/* 80197C3C 00194B9C D0 5E 00 1C */ stfs f2, 0x1c(r30) +/* 80197C40 00194BA0 98 FE 00 20 */ stb r7, 0x20(r30) +/* 80197C44 00194BA4 90 DE 00 2C */ stw r6, 0x2c(r30) +/* 80197C48 00194BA8 90 BE 00 28 */ stw r5, 0x28(r30) +/* 80197C4C 00194BAC 90 81 01 98 */ stw r4, 0x198(r1) +/* 80197C50 00194BB0 90 61 01 98 */ stw r3, 0x198(r1) +/* 80197C54 00194BB4 98 01 00 A0 */ stb r0, 0xa0(r1) +/* 80197C58 00194BB8 41 82 00 08 */ beq lbl_80197C60 +/* 80197C5C 00194BBC 98 01 01 F4 */ stb r0, 0x1f4(r1) +lbl_80197C60: +/* 80197C60 00194BC0 80 A1 03 08 */ lwz r5, 0x308(r1) +/* 80197C64 00194BC4 38 60 00 00 */ li r3, 0 +/* 80197C68 00194BC8 2C 05 00 00 */ cmpwi r5, 0 +/* 80197C6C 00194BCC 40 81 00 40 */ ble lbl_80197CAC +/* 80197C70 00194BD0 2C 05 00 08 */ cmpwi r5, 8 +/* 80197C74 00194BD4 38 85 FF F8 */ addi r4, r5, -8 +/* 80197C78 00194BD8 40 81 00 20 */ ble lbl_80197C98 +/* 80197C7C 00194BDC 38 04 00 07 */ addi r0, r4, 7 +/* 80197C80 00194BE0 54 00 E8 FE */ srwi r0, r0, 3 +/* 80197C84 00194BE4 7C 09 03 A6 */ mtctr r0 +/* 80197C88 00194BE8 2C 04 00 00 */ cmpwi r4, 0 +/* 80197C8C 00194BEC 40 81 00 0C */ ble lbl_80197C98 +lbl_80197C90: +/* 80197C90 00194BF0 38 63 00 08 */ addi r3, r3, 8 +/* 80197C94 00194BF4 42 00 FF FC */ bdnz lbl_80197C90 +lbl_80197C98: +/* 80197C98 00194BF8 7C 03 28 50 */ subf r0, r3, r5 +/* 80197C9C 00194BFC 7C 09 03 A6 */ mtctr r0 +/* 80197CA0 00194C00 7C 03 28 00 */ cmpw r3, r5 +/* 80197CA4 00194C04 40 80 00 08 */ bge lbl_80197CAC +lbl_80197CA8: +/* 80197CA8 00194C08 42 00 00 00 */ bdnz lbl_80197CA8 +lbl_80197CAC: +/* 80197CAC 00194C0C 38 00 00 00 */ li r0, 0 +/* 80197CB0 00194C10 90 01 03 08 */ stw r0, 0x308(r1) +/* 80197CB4 00194C14 48 00 02 80 */ b lbl_80197F34 +lbl_80197CB8: +/* 80197CB8 00194C18 38 00 00 00 */ li r0, 0 +/* 80197CBC 00194C1C 28 17 00 00 */ cmplwi r23, 0 +/* 80197CC0 00194C20 98 01 00 A0 */ stb r0, 0xa0(r1) +/* 80197CC4 00194C24 41 82 00 08 */ beq lbl_80197CCC +/* 80197CC8 00194C28 98 01 01 F4 */ stb r0, 0x1f4(r1) +lbl_80197CCC: +/* 80197CCC 00194C2C 3A B5 00 02 */ addi r21, r21, 2 +lbl_80197CD0: +/* 80197CD0 00194C30 80 01 03 08 */ lwz r0, 0x308(r1) +/* 80197CD4 00194C34 54 00 08 3C */ slwi r0, r0, 1 +/* 80197CD8 00194C38 7C 1A 02 14 */ add r0, r26, r0 +/* 80197CDC 00194C3C 7C 15 00 40 */ cmplw r21, r0 +/* 80197CE0 00194C40 40 82 FB B8 */ bne lbl_80197898 +/* 80197CE4 00194C44 EF BD F0 2A */ fadds f29, f29, f30 +/* 80197CE8 00194C48 3B 7B 00 0C */ addi r27, r27, 0xc +/* 80197CEC 00194C4C 3A D6 00 01 */ addi r22, r22, 1 +lbl_80197CF0: +/* 80197CF0 00194C50 80 1C 00 00 */ lwz r0, 0(r28) +/* 80197CF4 00194C54 7C 16 00 00 */ cmpw r22, r0 +/* 80197CF8 00194C58 41 80 FA D8 */ blt lbl_801977D0 +/* 80197CFC 00194C5C 48 00 01 8C */ b lbl_80197E88 +lbl_80197D00: +/* 80197D00 00194C60 C3 A2 A6 A4 */ lfs f29, lbl_805AC3C4@sda21(r2) +/* 80197D04 00194C64 3A BC 00 04 */ addi r21, r28, 4 +/* 80197D08 00194C68 3A E0 00 00 */ li r23, 0 +/* 80197D0C 00194C6C 48 00 01 6C */ b lbl_80197E78 +lbl_80197D10: +/* 80197D10 00194C70 38 17 00 01 */ addi r0, r23, 1 +/* 80197D14 00194C74 C0 95 00 04 */ lfs f4, 4(r21) +/* 80197D18 00194C78 1C 00 00 0C */ mulli r0, r0, 0xc +/* 80197D1C 00194C7C C0 55 00 08 */ lfs f2, 8(r21) +/* 80197D20 00194C80 C0 15 00 00 */ lfs f0, 0(r21) +/* 80197D24 00194C84 38 61 00 18 */ addi r3, r1, 0x18 +/* 80197D28 00194C88 7E DC 02 14 */ add r22, r28, r0 +/* 80197D2C 00194C8C C0 B6 00 08 */ lfs f5, 8(r22) +/* 80197D30 00194C90 C0 76 00 0C */ lfs f3, 0xc(r22) +/* 80197D34 00194C94 C4 36 00 04 */ lfsu f1, 4(r22) +/* 80197D38 00194C98 EC 85 20 28 */ fsubs f4, f5, f4 +/* 80197D3C 00194C9C EC 43 10 28 */ fsubs f2, f3, f2 +/* 80197D40 00194CA0 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80197D44 00194CA4 D0 81 00 1C */ stfs f4, 0x1c(r1) +/* 80197D48 00194CA8 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 80197D4C 00194CAC D0 41 00 20 */ stfs f2, 0x20(r1) +/* 80197D50 00194CB0 48 17 CB 69 */ bl Magnitude__9CVector3fCFv +/* 80197D54 00194CB4 FC 01 E8 40 */ fcmpo cr0, f1, f29 +/* 80197D58 00194CB8 4C 40 13 82 */ cror 2, 0, 2 +/* 80197D5C 00194CBC 41 82 01 2C */ beq lbl_80197E88 +/* 80197D60 00194CC0 7F E4 FB 78 */ mr r4, r31 +/* 80197D64 00194CC4 7E 85 A3 78 */ mr r5, r20 +/* 80197D68 00194CC8 7E A6 AB 78 */ mr r6, r21 +/* 80197D6C 00194CCC 7E C7 B3 78 */ mr r7, r22 +/* 80197D70 00194CD0 7E 69 9B 78 */ mr r9, r19 +/* 80197D74 00194CD4 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 80197D78 00194CD8 39 01 03 08 */ addi r8, r1, 0x308 +/* 80197D7C 00194CDC 4B EA 09 45 */ bl "RayCollisionCheckWithWorld__15CGameProjectileFR9TUniqueIdRC9CVector3fRC9CVector3ffRQ24rstl32reserved_vector<9TUniqueId,1024>R13CStateManager" +/* 80197D80 00194CE0 88 81 00 C8 */ lbz r4, 0xc8(r1) +/* 80197D84 00194CE4 C0 21 00 A8 */ lfs f1, 0xa8(r1) +/* 80197D88 00194CE8 80 A1 00 AC */ lwz r5, 0xac(r1) +/* 80197D8C 00194CEC 28 04 00 00 */ cmplwi r4, 0 +/* 80197D90 00194CF0 80 61 00 B0 */ lwz r3, 0xb0(r1) +/* 80197D94 00194CF4 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 80197D98 00194CF8 C0 A1 00 B8 */ lfs f5, 0xb8(r1) +/* 80197D9C 00194CFC C0 81 00 BC */ lfs f4, 0xbc(r1) +/* 80197DA0 00194D00 C0 61 00 C0 */ lfs f3, 0xc0(r1) +/* 80197DA4 00194D04 C0 41 00 C4 */ lfs f2, 0xc4(r1) +/* 80197DA8 00194D08 C8 01 00 D0 */ lfd f0, 0xd0(r1) +/* 80197DAC 00194D0C D0 21 02 68 */ stfs f1, 0x268(r1) +/* 80197DB0 00194D10 90 A1 02 6C */ stw r5, 0x26c(r1) +/* 80197DB4 00194D14 90 61 02 70 */ stw r3, 0x270(r1) +/* 80197DB8 00194D18 90 01 02 74 */ stw r0, 0x274(r1) +/* 80197DBC 00194D1C D0 A1 02 78 */ stfs f5, 0x278(r1) +/* 80197DC0 00194D20 D0 81 02 7C */ stfs f4, 0x27c(r1) +/* 80197DC4 00194D24 D0 61 02 80 */ stfs f3, 0x280(r1) +/* 80197DC8 00194D28 D0 41 02 84 */ stfs f2, 0x284(r1) +/* 80197DCC 00194D2C 98 81 02 88 */ stb r4, 0x288(r1) +/* 80197DD0 00194D30 D8 01 02 90 */ stfd f0, 0x290(r1) +/* 80197DD4 00194D34 41 82 00 9C */ beq lbl_80197E70 +/* 80197DD8 00194D38 D0 3E 00 00 */ stfs f1, 0(r30) +/* 80197DDC 00194D3C 38 A0 00 00 */ li r5, 0 +/* 80197DE0 00194D40 C0 01 02 6C */ lfs f0, 0x26c(r1) +/* 80197DE4 00194D44 C0 21 02 70 */ lfs f1, 0x270(r1) +/* 80197DE8 00194D48 D0 1E 00 04 */ stfs f0, 4(r30) +/* 80197DEC 00194D4C C0 01 02 74 */ lfs f0, 0x274(r1) +/* 80197DF0 00194D50 D0 3E 00 08 */ stfs f1, 8(r30) +/* 80197DF4 00194D54 80 61 02 94 */ lwz r3, 0x294(r1) +/* 80197DF8 00194D58 D0 1E 00 0C */ stfs f0, 0xc(r30) +/* 80197DFC 00194D5C 80 01 02 90 */ lwz r0, 0x290(r1) +/* 80197E00 00194D60 D0 BE 00 10 */ stfs f5, 0x10(r30) +/* 80197E04 00194D64 D0 9E 00 14 */ stfs f4, 0x14(r30) +/* 80197E08 00194D68 D0 7E 00 18 */ stfs f3, 0x18(r30) +/* 80197E0C 00194D6C D0 5E 00 1C */ stfs f2, 0x1c(r30) +/* 80197E10 00194D70 98 9E 00 20 */ stb r4, 0x20(r30) +/* 80197E14 00194D74 90 7E 00 2C */ stw r3, 0x2c(r30) +/* 80197E18 00194D78 90 1E 00 28 */ stw r0, 0x28(r30) +/* 80197E1C 00194D7C 80 81 03 08 */ lwz r4, 0x308(r1) +/* 80197E20 00194D80 2C 04 00 00 */ cmpwi r4, 0 +/* 80197E24 00194D84 40 81 00 40 */ ble lbl_80197E64 +/* 80197E28 00194D88 2C 04 00 08 */ cmpwi r4, 8 +/* 80197E2C 00194D8C 38 64 FF F8 */ addi r3, r4, -8 +/* 80197E30 00194D90 40 81 00 20 */ ble lbl_80197E50 +/* 80197E34 00194D94 38 03 00 07 */ addi r0, r3, 7 +/* 80197E38 00194D98 54 00 E8 FE */ srwi r0, r0, 3 +/* 80197E3C 00194D9C 7C 09 03 A6 */ mtctr r0 +/* 80197E40 00194DA0 2C 03 00 00 */ cmpwi r3, 0 +/* 80197E44 00194DA4 40 81 00 0C */ ble lbl_80197E50 +lbl_80197E48: +/* 80197E48 00194DA8 38 A5 00 08 */ addi r5, r5, 8 +/* 80197E4C 00194DAC 42 00 FF FC */ bdnz lbl_80197E48 +lbl_80197E50: +/* 80197E50 00194DB0 7C 05 20 50 */ subf r0, r5, r4 +/* 80197E54 00194DB4 7C 09 03 A6 */ mtctr r0 +/* 80197E58 00194DB8 7C 05 20 00 */ cmpw r5, r4 +/* 80197E5C 00194DBC 40 80 00 08 */ bge lbl_80197E64 +lbl_80197E60: +/* 80197E60 00194DC0 42 00 00 00 */ bdnz lbl_80197E60 +lbl_80197E64: +/* 80197E64 00194DC4 38 00 00 00 */ li r0, 0 +/* 80197E68 00194DC8 90 01 03 08 */ stw r0, 0x308(r1) +/* 80197E6C 00194DCC 48 00 00 C8 */ b lbl_80197F34 +lbl_80197E70: +/* 80197E70 00194DD0 3A B5 00 0C */ addi r21, r21, 0xc +/* 80197E74 00194DD4 3A F7 00 01 */ addi r23, r23, 1 +lbl_80197E78: +/* 80197E78 00194DD8 80 7C 00 00 */ lwz r3, 0(r28) +/* 80197E7C 00194DDC 38 03 FF FF */ addi r0, r3, -1 +/* 80197E80 00194DE0 7C 17 00 00 */ cmpw r23, r0 +/* 80197E84 00194DE4 41 80 FE 8C */ blt lbl_80197D10 +lbl_80197E88: +/* 80197E88 00194DE8 C0 21 02 68 */ lfs f1, 0x268(r1) +/* 80197E8C 00194DEC 38 80 00 00 */ li r4, 0 +/* 80197E90 00194DF0 C0 01 02 6C */ lfs f0, 0x26c(r1) +/* 80197E94 00194DF4 D0 3E 00 00 */ stfs f1, 0(r30) +/* 80197E98 00194DF8 C0 21 02 70 */ lfs f1, 0x270(r1) +/* 80197E9C 00194DFC D0 1E 00 04 */ stfs f0, 4(r30) +/* 80197EA0 00194E00 C0 01 02 74 */ lfs f0, 0x274(r1) +/* 80197EA4 00194E04 D0 3E 00 08 */ stfs f1, 8(r30) +/* 80197EA8 00194E08 C0 21 02 78 */ lfs f1, 0x278(r1) +/* 80197EAC 00194E0C D0 1E 00 0C */ stfs f0, 0xc(r30) +/* 80197EB0 00194E10 C0 01 02 7C */ lfs f0, 0x27c(r1) +/* 80197EB4 00194E14 D0 3E 00 10 */ stfs f1, 0x10(r30) +/* 80197EB8 00194E18 C0 21 02 80 */ lfs f1, 0x280(r1) +/* 80197EBC 00194E1C D0 1E 00 14 */ stfs f0, 0x14(r30) +/* 80197EC0 00194E20 C0 01 02 84 */ lfs f0, 0x284(r1) +/* 80197EC4 00194E24 D0 3E 00 18 */ stfs f1, 0x18(r30) +/* 80197EC8 00194E28 88 01 02 88 */ lbz r0, 0x288(r1) +/* 80197ECC 00194E2C D0 1E 00 1C */ stfs f0, 0x1c(r30) +/* 80197ED0 00194E30 80 61 02 94 */ lwz r3, 0x294(r1) +/* 80197ED4 00194E34 98 1E 00 20 */ stb r0, 0x20(r30) +/* 80197ED8 00194E38 80 01 02 90 */ lwz r0, 0x290(r1) +/* 80197EDC 00194E3C 90 7E 00 2C */ stw r3, 0x2c(r30) +/* 80197EE0 00194E40 90 1E 00 28 */ stw r0, 0x28(r30) +/* 80197EE4 00194E44 80 A1 03 08 */ lwz r5, 0x308(r1) +/* 80197EE8 00194E48 2C 05 00 00 */ cmpwi r5, 0 +/* 80197EEC 00194E4C 40 81 00 40 */ ble lbl_80197F2C +/* 80197EF0 00194E50 2C 05 00 08 */ cmpwi r5, 8 +/* 80197EF4 00194E54 38 65 FF F8 */ addi r3, r5, -8 +/* 80197EF8 00194E58 40 81 00 20 */ ble lbl_80197F18 +/* 80197EFC 00194E5C 38 03 00 07 */ addi r0, r3, 7 +/* 80197F00 00194E60 54 00 E8 FE */ srwi r0, r0, 3 +/* 80197F04 00194E64 7C 09 03 A6 */ mtctr r0 +/* 80197F08 00194E68 2C 03 00 00 */ cmpwi r3, 0 +/* 80197F0C 00194E6C 40 81 00 0C */ ble lbl_80197F18 +lbl_80197F10: +/* 80197F10 00194E70 38 84 00 08 */ addi r4, r4, 8 +/* 80197F14 00194E74 42 00 FF FC */ bdnz lbl_80197F10 +lbl_80197F18: +/* 80197F18 00194E78 7C 04 28 50 */ subf r0, r4, r5 +/* 80197F1C 00194E7C 7C 09 03 A6 */ mtctr r0 +/* 80197F20 00194E80 7C 04 28 00 */ cmpw r4, r5 +/* 80197F24 00194E84 40 80 00 08 */ bge lbl_80197F2C +lbl_80197F28: +/* 80197F28 00194E88 42 00 00 00 */ bdnz lbl_80197F28 +lbl_80197F2C: +/* 80197F2C 00194E8C 38 00 00 00 */ li r0, 0 +/* 80197F30 00194E90 90 01 03 08 */ stw r0, 0x308(r1) +lbl_80197F34: +/* 80197F34 00194E94 E3 E1 0B A8 */ psq_l f31, -1112(r1), 0, qr0 +/* 80197F38 00194E98 CB E1 0B A0 */ lfd f31, 0xba0(r1) +/* 80197F3C 00194E9C E3 C1 0B 98 */ psq_l f30, -1128(r1), 0, qr0 +/* 80197F40 00194EA0 CB C1 0B 90 */ lfd f30, 0xb90(r1) +/* 80197F44 00194EA4 E3 A1 0B 88 */ psq_l f29, -1144(r1), 0, qr0 +/* 80197F48 00194EA8 CB A1 0B 80 */ lfd f29, 0xb80(r1) +/* 80197F4C 00194EAC E3 81 0B 78 */ psq_l f28, -1160(r1), 0, qr0 +/* 80197F50 00194EB0 CB 81 0B 70 */ lfd f28, 0xb70(r1) +/* 80197F54 00194EB4 E3 61 0B 68 */ psq_l f27, -1176(r1), 0, qr0 +/* 80197F58 00194EB8 CB 61 0B 60 */ lfd f27, 0xb60(r1) +/* 80197F5C 00194EBC E3 41 0B 58 */ psq_l f26, -1192(r1), 0, qr0 +/* 80197F60 00194EC0 CB 41 0B 50 */ lfd f26, 0xb50(r1) +/* 80197F64 00194EC4 BA 61 0B 1C */ lmw r19, 0xb1c(r1) +/* 80197F68 00194EC8 80 01 0B B4 */ lwz r0, 0xbb4(r1) +/* 80197F6C 00194ECC 7C 08 03 A6 */ mtlr r0 +/* 80197F70 00194ED0 38 21 0B B0 */ addi r1, r1, 0xbb0 +/* 80197F74 00194ED4 4E 80 00 20 */ blr + +.global AcceptScriptMsg__13CFlameThrowerF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__13CFlameThrowerF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 80197F78 00194ED8 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80197F7C 00194EDC 7C 08 02 A6 */ mflr r0 +/* 80197F80 00194EE0 90 01 00 34 */ stw r0, 0x34(r1) +/* 80197F84 00194EE4 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80197F88 00194EE8 7C DF 33 78 */ mr r31, r6 +/* 80197F8C 00194EEC 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80197F90 00194EF0 7C BE 2B 78 */ mr r30, r5 +/* 80197F94 00194EF4 93 A1 00 24 */ stw r29, 0x24(r1) +/* 80197F98 00194EF8 7C 9D 23 78 */ mr r29, r4 +/* 80197F9C 00194EFC 2C 1D 00 22 */ cmpwi r29, 0x22 +/* 80197FA0 00194F00 93 81 00 20 */ stw r28, 0x20(r1) +/* 80197FA4 00194F04 7C 7C 1B 78 */ mr r28, r3 +/* 80197FA8 00194F08 41 82 00 44 */ beq lbl_80197FEC +/* 80197FAC 00194F0C 40 80 00 68 */ bge lbl_80198014 +/* 80197FB0 00194F10 2C 1D 00 21 */ cmpwi r29, 0x21 +/* 80197FB4 00194F14 40 80 00 08 */ bge lbl_80197FBC +/* 80197FB8 00194F18 48 00 00 5C */ b lbl_80198014 +lbl_80197FBC: +/* 80197FBC 00194F1C 88 1C 00 E6 */ lbz r0, 0xe6(r28) +/* 80197FC0 00194F20 38 60 00 02 */ li r3, 2 +/* 80197FC4 00194F24 50 60 1E F8 */ rlwimi r0, r3, 3, 0x1b, 0x1c +/* 80197FC8 00194F28 38 81 00 18 */ addi r4, r1, 0x18 +/* 80197FCC 00194F2C 98 1C 00 E6 */ stb r0, 0xe6(r28) +/* 80197FD0 00194F30 7F E3 FB 78 */ mr r3, r31 +/* 80197FD4 00194F34 A0 1C 00 EC */ lhz r0, 0xec(r28) +/* 80197FD8 00194F38 80 BC 00 F0 */ lwz r5, 0xf0(r28) +/* 80197FDC 00194F3C B0 01 00 14 */ sth r0, 0x14(r1) +/* 80197FE0 00194F40 B0 01 00 18 */ sth r0, 0x18(r1) +/* 80197FE4 00194F44 4B EA CD 25 */ bl AddWeaponId__13CStateManagerF9TUniqueId11EWeaponType +/* 80197FE8 00194F48 48 00 00 2C */ b lbl_80198014 +lbl_80197FEC: +/* 80197FEC 00194F4C A0 1C 00 EC */ lhz r0, 0xec(r28) +/* 80197FF0 00194F50 7F E3 FB 78 */ mr r3, r31 +/* 80197FF4 00194F54 80 BC 00 F0 */ lwz r5, 0xf0(r28) +/* 80197FF8 00194F58 38 81 00 10 */ addi r4, r1, 0x10 +/* 80197FFC 00194F5C B0 01 00 0C */ sth r0, 0xc(r1) +/* 80198000 00194F60 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80198004 00194F64 4B EA CC D5 */ bl RemoveWeaponId__13CStateManagerF9TUniqueId11EWeaponType +/* 80198008 00194F68 7F 83 E3 78 */ mr r3, r28 +/* 8019800C 00194F6C 7F E4 FB 78 */ mr r4, r31 +/* 80198010 00194F70 4B E9 F8 99 */ bl DeleteProjectileLight__15CGameProjectileFR13CStateManager +lbl_80198014: +/* 80198014 00194F74 A0 1E 00 00 */ lhz r0, 0(r30) +/* 80198018 00194F78 7F 83 E3 78 */ mr r3, r28 +/* 8019801C 00194F7C 7F A4 EB 78 */ mr r4, r29 +/* 80198020 00194F80 7F E6 FB 78 */ mr r6, r31 +/* 80198024 00194F84 B0 01 00 08 */ sth r0, 8(r1) +/* 80198028 00194F88 38 A1 00 08 */ addi r5, r1, 8 +/* 8019802C 00194F8C 4B EA 05 A1 */ bl AcceptScriptMsg__15CGameProjectileF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 80198030 00194F90 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80198034 00194F94 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80198038 00194F98 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8019803C 00194F9C 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 80198040 00194FA0 83 81 00 20 */ lwz r28, 0x20(r1) +/* 80198044 00194FA4 7C 08 03 A6 */ mtlr r0 +/* 80198048 00194FA8 38 21 00 30 */ addi r1, r1, 0x30 +/* 8019804C 00194FAC 4E 80 00 20 */ blr + +.global CreateFlameParticles__13CFlameThrowerFR13CStateManager +CreateFlameParticles__13CFlameThrowerFR13CStateManager: +/* 80198050 00194FB0 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 80198054 00194FB4 7C 08 02 A6 */ mflr r0 +/* 80198058 00194FB8 90 01 00 84 */ stw r0, 0x84(r1) +/* 8019805C 00194FBC 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 80198060 00194FC0 7C 9F 23 78 */ mr r31, r4 +/* 80198064 00194FC4 93 C1 00 78 */ stw r30, 0x78(r1) +/* 80198068 00194FC8 7C 7E 1B 78 */ mr r30, r3 +/* 8019806C 00194FCC 93 A1 00 74 */ stw r29, 0x74(r1) +/* 80198070 00194FD0 93 81 00 70 */ stw r28, 0x70(r1) +/* 80198074 00194FD4 4B E9 F8 35 */ bl DeleteProjectileLight__15CGameProjectileFR13CStateManager +/* 80198078 00194FD8 3C 60 80 3D */ lis r3, lbl_803D1210@ha +/* 8019807C 00194FDC 3B 80 00 00 */ li r28, 0 +/* 80198080 00194FE0 38 83 12 10 */ addi r4, r3, lbl_803D1210@l +/* 80198084 00194FE4 38 A0 00 00 */ li r5, 0 +/* 80198088 00194FE8 38 60 03 40 */ li r3, 0x340 +/* 8019808C 00194FEC 48 17 D7 E1 */ bl __nw__FUlPCcPCc +/* 80198090 00194FF0 7C 7D 1B 79 */ or. r29, r3, r3 +/* 80198094 00194FF4 41 82 00 2C */ beq lbl_801980C0 +/* 80198098 00194FF8 38 61 00 08 */ addi r3, r1, 8 +/* 8019809C 00194FFC 38 9E 03 3C */ addi r4, r30, 0x33c +/* 801980A0 00195000 48 1A 8E 09 */ bl __ct__6CTokenFRC6CToken +/* 801980A4 00195004 7F A3 EB 78 */ mr r3, r29 +/* 801980A8 00195008 38 81 00 08 */ addi r4, r1, 8 +/* 801980AC 0019500C 3B 80 00 01 */ li r28, 1 +/* 801980B0 00195010 38 A0 00 00 */ li r5, 0 +/* 801980B4 00195014 38 C0 00 01 */ li r6, 1 +/* 801980B8 00195018 48 18 73 29 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 801980BC 0019501C 7C 7D 1B 78 */ mr r29, r3 +lbl_801980C0: +/* 801980C0 00195020 80 7E 03 48 */ lwz r3, 0x348(r30) +/* 801980C4 00195024 28 03 00 00 */ cmplwi r3, 0 +/* 801980C8 00195028 41 82 00 18 */ beq lbl_801980E0 +/* 801980CC 0019502C 81 83 00 00 */ lwz r12, 0(r3) +/* 801980D0 00195030 38 80 00 01 */ li r4, 1 +/* 801980D4 00195034 81 8C 00 08 */ lwz r12, 8(r12) +/* 801980D8 00195038 7D 89 03 A6 */ mtctr r12 +/* 801980DC 0019503C 4E 80 04 21 */ bctrl +lbl_801980E0: +/* 801980E0 00195040 7F 80 07 75 */ extsb. r0, r28 +/* 801980E4 00195044 93 BE 03 48 */ stw r29, 0x348(r30) +/* 801980E8 00195048 41 82 00 10 */ beq lbl_801980F8 +/* 801980EC 0019504C 38 61 00 08 */ addi r3, r1, 8 +/* 801980F0 00195050 38 80 00 00 */ li r4, 0 +/* 801980F4 00195054 48 1A 8D 4D */ bl __dt__6CTokenFv +lbl_801980F8: +/* 801980F8 00195058 80 BE 03 48 */ lwz r5, 0x348(r30) +/* 801980FC 0019505C 28 05 00 00 */ cmplwi r5, 0 +/* 80198100 00195060 41 82 00 A0 */ beq lbl_801981A0 +/* 80198104 00195064 88 7E 04 00 */ lbz r3, 0x400(r30) +/* 80198108 00195068 38 9E 03 4C */ addi r4, r30, 0x34c +/* 8019810C 0019506C 88 05 02 6C */ lbz r0, 0x26c(r5) +/* 80198110 00195070 50 60 F7 38 */ rlwimi r0, r3, 0x1e, 0x1c, 0x1c +/* 80198114 00195074 98 05 02 6C */ stb r0, 0x26c(r5) +/* 80198118 00195078 80 7E 03 48 */ lwz r3, 0x348(r30) +/* 8019811C 0019507C 81 83 00 00 */ lwz r12, 0(r3) +/* 80198120 00195080 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 80198124 00195084 7D 89 03 A6 */ mtctr r12 +/* 80198128 00195088 4E 80 04 21 */ bctrl +/* 8019812C 0019508C 80 7E 03 48 */ lwz r3, 0x348(r30) +/* 80198130 00195090 81 83 00 00 */ lwz r12, 0(r3) +/* 80198134 00195094 81 8C 00 64 */ lwz r12, 0x64(r12) +/* 80198138 00195098 7D 89 03 A6 */ mtctr r12 +/* 8019813C 0019509C 4E 80 04 21 */ bctrl +/* 80198140 001950A0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80198144 001950A4 41 82 00 5C */ beq lbl_801981A0 +/* 80198148 001950A8 A0 7E 02 C8 */ lhz r3, 0x2c8(r30) +/* 8019814C 001950AC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80198150 001950B0 7C 03 00 40 */ cmplw r3, r0 +/* 80198154 001950B4 40 82 00 4C */ bne lbl_801981A0 +/* 80198158 001950B8 3C 80 80 3D */ lis r4, lbl_803D1210@ha +/* 8019815C 001950BC 38 61 00 10 */ addi r3, r1, 0x10 +/* 80198160 001950C0 38 84 12 10 */ addi r4, r4, lbl_803D1210@l +/* 80198164 001950C4 38 84 00 07 */ addi r4, r4, 7 +/* 80198168 001950C8 4B E6 CB 51 */ bl string_l__4rstlFPCc +/* 8019816C 001950CC 80 9E 03 48 */ lwz r4, 0x348(r30) +/* 80198170 001950D0 38 61 00 20 */ addi r3, r1, 0x20 +/* 80198174 001950D4 81 84 00 00 */ lwz r12, 0(r4) +/* 80198178 001950D8 81 8C 00 68 */ lwz r12, 0x68(r12) +/* 8019817C 001950DC 7D 89 03 A6 */ mtctr r12 +/* 80198180 001950E0 4E 80 04 21 */ bctrl +/* 80198184 001950E4 7F C3 F3 78 */ mr r3, r30 +/* 80198188 001950E8 7F E6 FB 78 */ mr r6, r31 +/* 8019818C 001950EC 38 81 00 10 */ addi r4, r1, 0x10 +/* 80198190 001950F0 38 A1 00 20 */ addi r5, r1, 0x20 +/* 80198194 001950F4 4B E9 F7 69 */ bl "CreateProjectileLight__15CGameProjectileFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC6CLightR13CStateManager" +/* 80198198 001950F8 38 61 00 10 */ addi r3, r1, 0x10 +/* 8019819C 001950FC 48 1A 59 45 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801981A0: +/* 801981A0 00195100 80 01 00 84 */ lwz r0, 0x84(r1) +/* 801981A4 00195104 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 801981A8 00195108 83 C1 00 78 */ lwz r30, 0x78(r1) +/* 801981AC 0019510C 83 A1 00 74 */ lwz r29, 0x74(r1) +/* 801981B0 00195110 83 81 00 70 */ lwz r28, 0x70(r1) +/* 801981B4 00195114 7C 08 03 A6 */ mtlr r0 +/* 801981B8 00195118 38 21 00 80 */ addi r1, r1, 0x80 +/* 801981BC 0019511C 4E 80 00 20 */ blr + +.global Reset__13CFlameThrowerFR13CStateManagerb +Reset__13CFlameThrowerFR13CStateManagerb: +/* 801981C0 00195120 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801981C4 00195124 7C 08 02 A6 */ mflr r0 +/* 801981C8 00195128 90 01 00 24 */ stw r0, 0x24(r1) +/* 801981CC 0019512C 7C 80 23 78 */ mr r0, r4 +/* 801981D0 00195130 38 80 00 00 */ li r4, 0 +/* 801981D4 00195134 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801981D8 00195138 7C BF 2B 78 */ mr r31, r5 +/* 801981DC 0019513C 7C 05 03 78 */ mr r5, r0 +/* 801981E0 00195140 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801981E4 00195144 7C 7E 1B 78 */ mr r30, r3 +/* 801981E8 00195148 4B FF F4 29 */ bl SetFlameLightActive__13CFlameThrowerFbR13CStateManager +/* 801981EC 0019514C 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 801981F0 00195150 41 82 00 B4 */ beq lbl_801982A4 +/* 801981F4 00195154 7F C3 F3 78 */ mr r3, r30 +/* 801981F8 00195158 38 80 00 00 */ li r4, 0 +/* 801981FC 0019515C 81 9E 00 00 */ lwz r12, 0(r30) +/* 80198200 00195160 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80198204 00195164 7D 89 03 A6 */ mtctr r12 +/* 80198208 00195168 4E 80 04 21 */ bctrl +/* 8019820C 0019516C 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 80198210 00195170 38 C0 00 00 */ li r6, 0 +/* 80198214 00195174 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19 +/* 80198218 00195178 3C 60 80 5A */ lis r3, lbl_805A6784@ha +/* 8019821C 0019517C 98 1E 04 00 */ stb r0, 0x400(r30) +/* 80198220 00195180 38 A3 67 84 */ addi r5, r3, lbl_805A6784@l +/* 80198224 00195184 C0 02 A6 A4 */ lfs f0, lbl_805AC3C4@sda21(r2) +/* 80198228 00195188 38 80 00 00 */ li r4, 0 +/* 8019822C 0019518C 90 DE 03 F0 */ stw r6, 0x3f0(r30) +/* 80198230 00195190 D0 1E 03 30 */ stfs f0, 0x330(r30) +/* 80198234 00195194 D0 1E 03 34 */ stfs f0, 0x334(r30) +/* 80198238 00195198 80 65 00 00 */ lwz r3, 0(r5) +/* 8019823C 0019519C 80 05 00 04 */ lwz r0, 4(r5) +/* 80198240 001951A0 90 7E 03 18 */ stw r3, 0x318(r30) +/* 80198244 001951A4 90 1E 03 1C */ stw r0, 0x31c(r30) +/* 80198248 001951A8 80 05 00 08 */ lwz r0, 8(r5) +/* 8019824C 001951AC 90 1E 03 20 */ stw r0, 0x320(r30) +/* 80198250 001951B0 80 65 00 0C */ lwz r3, 0xc(r5) +/* 80198254 001951B4 80 05 00 10 */ lwz r0, 0x10(r5) +/* 80198258 001951B8 90 7E 03 24 */ stw r3, 0x324(r30) +/* 8019825C 001951BC 90 1E 03 28 */ stw r0, 0x328(r30) +/* 80198260 001951C0 80 05 00 14 */ lwz r0, 0x14(r5) +/* 80198264 001951C4 90 1E 03 2C */ stw r0, 0x32c(r30) +/* 80198268 001951C8 80 7E 03 48 */ lwz r3, 0x348(r30) +/* 8019826C 001951CC 81 83 00 00 */ lwz r12, 0(r3) +/* 80198270 001951D0 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80198274 001951D4 7D 89 03 A6 */ mtctr r12 +/* 80198278 001951D8 4E 80 04 21 */ bctrl +/* 8019827C 001951DC C0 5E 03 14 */ lfs f2, 0x314(r30) +/* 80198280 001951E0 38 7E 03 4C */ addi r3, r30, 0x34c +/* 80198284 001951E4 C0 3E 03 04 */ lfs f1, 0x304(r30) +/* 80198288 001951E8 38 81 00 08 */ addi r4, r1, 8 +/* 8019828C 001951EC C0 1E 02 F4 */ lfs f0, 0x2f4(r30) +/* 80198290 001951F0 D0 01 00 08 */ stfs f0, 8(r1) +/* 80198294 001951F4 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 80198298 001951F8 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 8019829C 001951FC 48 01 CC D9 */ bl sub_801b4f74 +/* 801982A0 00195200 48 00 00 34 */ b lbl_801982D4 +lbl_801982A4: +/* 801982A4 00195204 80 7E 03 48 */ lwz r3, 0x348(r30) +/* 801982A8 00195208 38 80 00 00 */ li r4, 0 +/* 801982AC 0019520C 81 83 00 00 */ lwz r12, 0(r3) +/* 801982B0 00195210 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801982B4 00195214 7D 89 03 A6 */ mtctr r12 +/* 801982B8 00195218 4E 80 04 21 */ bctrl +/* 801982BC 0019521C 88 7E 04 00 */ lbz r3, 0x400(r30) +/* 801982C0 00195220 38 00 00 00 */ li r0, 0 +/* 801982C4 00195224 50 03 36 72 */ rlwimi r3, r0, 6, 0x19, 0x19 +/* 801982C8 00195228 38 00 00 03 */ li r0, 3 +/* 801982CC 0019522C 98 7E 04 00 */ stb r3, 0x400(r30) +/* 801982D0 00195230 90 1E 03 F0 */ stw r0, 0x3f0(r30) +lbl_801982D4: +/* 801982D4 00195234 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801982D8 00195238 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801982DC 0019523C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801982E0 00195240 7C 08 03 A6 */ mtlr r0 +/* 801982E4 00195244 38 21 00 20 */ addi r1, r1, 0x20 +/* 801982E8 00195248 4E 80 00 20 */ blr + +.global Fire__13CFlameThrowerFRC12CTransform4fR13CStateManagerb +Fire__13CFlameThrowerFRC12CTransform4fR13CStateManagerb: +/* 801982EC 0019524C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801982F0 00195250 7C 08 02 A6 */ mflr r0 +/* 801982F4 00195254 38 80 00 01 */ li r4, 1 +/* 801982F8 00195258 90 01 00 14 */ stw r0, 0x14(r1) +/* 801982FC 0019525C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80198300 00195260 7C BF 2B 78 */ mr r31, r5 +/* 80198304 00195264 93 C1 00 08 */ stw r30, 8(r1) +/* 80198308 00195268 7C 7E 1B 78 */ mr r30, r3 +/* 8019830C 0019526C 81 83 00 00 */ lwz r12, 0(r3) +/* 80198310 00195270 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80198314 00195274 7D 89 03 A6 */ mtctr r12 +/* 80198318 00195278 4E 80 04 21 */ bctrl +/* 8019831C 0019527C 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 80198320 00195280 38 A0 00 01 */ li r5, 1 +/* 80198324 00195284 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 80198328 00195288 7F C3 F3 78 */ mr r3, r30 +/* 8019832C 0019528C 98 1E 04 00 */ stb r0, 0x400(r30) +/* 80198330 00195290 7F E4 FB 78 */ mr r4, r31 +/* 80198334 00195294 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 80198338 00195298 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 8019833C 0019529C 98 1E 04 00 */ stb r0, 0x400(r30) +/* 80198340 001952A0 90 BE 03 F0 */ stw r5, 0x3f0(r30) +/* 80198344 001952A4 4B FF FD 0D */ bl CreateFlameParticles__13CFlameThrowerFR13CStateManager +/* 80198348 001952A8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8019834C 001952AC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80198350 001952B0 83 C1 00 08 */ lwz r30, 8(r1) +/* 80198354 001952B4 7C 08 03 A6 */ mtlr r0 +/* 80198358 001952B8 38 21 00 10 */ addi r1, r1, 0x10 +/* 8019835C 001952BC 4E 80 00 20 */ blr + +.global Render__13CFlameThrowerCFRC13CStateManager +Render__13CFlameThrowerCFRC13CStateManager: +/* 80198360 001952C0 88 03 00 30 */ lbz r0, 0x30(r3) +/* 80198364 001952C4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80198368 001952C8 4E 80 00 20 */ blr + +.global AddToRenderer__13CFlameThrowerCFRC14CFrustumPlanesRC13CStateManager +AddToRenderer__13CFlameThrowerCFRC14CFrustumPlanesRC13CStateManager: +/* 8019836C 001952CC 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80198370 001952D0 7C 08 02 A6 */ mflr r0 +/* 80198374 001952D4 90 01 00 44 */ stw r0, 0x44(r1) +/* 80198378 001952D8 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8019837C 001952DC 7C BF 2B 78 */ mr r31, r5 +/* 80198380 001952E0 93 C1 00 38 */ stw r30, 0x38(r1) +/* 80198384 001952E4 7C 7E 1B 78 */ mr r30, r3 +/* 80198388 001952E8 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 8019838C 001952EC 80 9E 03 48 */ lwz r4, 0x348(r30) +/* 80198390 001952F0 81 83 00 00 */ lwz r12, 0(r3) +/* 80198394 001952F4 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80198398 001952F8 7D 89 03 A6 */ mtctr r12 +/* 8019839C 001952FC 4E 80 04 21 */ bctrl +/* 801983A0 00195300 C0 5E 03 14 */ lfs f2, 0x314(r30) +/* 801983A4 00195304 7F C4 F3 78 */ mr r4, r30 +/* 801983A8 00195308 C0 3E 03 04 */ lfs f1, 0x304(r30) +/* 801983AC 0019530C 7F E5 FB 78 */ mr r5, r31 +/* 801983B0 00195310 C0 1E 02 F4 */ lfs f0, 0x2f4(r30) +/* 801983B4 00195314 38 61 00 14 */ addi r3, r1, 0x14 +/* 801983B8 00195318 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 801983BC 0019531C D0 01 00 08 */ stfs f0, 8(r1) +/* 801983C0 00195320 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 801983C4 00195324 81 9E 00 00 */ lwz r12, 0(r30) +/* 801983C8 00195328 81 8C 00 64 */ lwz r12, 0x64(r12) +/* 801983CC 0019532C 7D 89 03 A6 */ mtctr r12 +/* 801983D0 00195330 4E 80 04 21 */ bctrl +/* 801983D4 00195334 7F C3 F3 78 */ mr r3, r30 +/* 801983D8 00195338 7F E4 FB 78 */ mr r4, r31 +/* 801983DC 0019533C 38 A1 00 08 */ addi r5, r1, 8 +/* 801983E0 00195340 38 C1 00 14 */ addi r6, r1, 0x14 +/* 801983E4 00195344 4B EB C6 C5 */ bl EnsureRendered__6CActorCFRC13CStateManagerRC9CVector3f +/* 801983E8 00195348 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801983EC 0019534C 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801983F0 00195350 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801983F4 00195354 7C 08 03 A6 */ mtlr r0 +/* 801983F8 00195358 38 21 00 40 */ addi r1, r1, 0x40 +/* 801983FC 0019535C 4E 80 00 20 */ blr + +.global SetTransform__13CFlameThrowerFRC12CTransform4f +SetTransform__13CFlameThrowerFRC12CTransform4f: +/* 80198400 00195360 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80198404 00195364 7C 08 02 A6 */ mflr r0 +/* 80198408 00195368 38 63 02 E8 */ addi r3, r3, 0x2e8 +/* 8019840C 0019536C 90 01 00 14 */ stw r0, 0x14(r1) +/* 80198410 00195370 48 17 A7 31 */ bl __as__12CTransform4fFRC12CTransform4f +/* 80198414 00195374 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80198418 00195378 7C 08 03 A6 */ mtlr r0 +/* 8019841C 0019537C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80198420 00195380 4E 80 00 20 */ blr + +.global UpdateFlameState__13CFlameThrowerFfR13CStateManager +UpdateFlameState__13CFlameThrowerFfR13CStateManager: +/* 80198424 00195384 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80198428 00195388 7C 08 02 A6 */ mflr r0 +/* 8019842C 0019538C 90 01 00 14 */ stw r0, 0x14(r1) +/* 80198430 00195390 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80198434 00195394 7C 9F 23 78 */ mr r31, r4 +/* 80198438 00195398 93 C1 00 08 */ stw r30, 8(r1) +/* 8019843C 0019539C 7C 7E 1B 78 */ mr r30, r3 +/* 80198440 001953A0 80 03 03 F0 */ lwz r0, 0x3f0(r3) +/* 80198444 001953A4 2C 00 00 03 */ cmpwi r0, 3 +/* 80198448 001953A8 41 82 00 2C */ beq lbl_80198474 +/* 8019844C 001953AC 40 80 00 10 */ bge lbl_8019845C +/* 80198450 001953B0 2C 00 00 01 */ cmpwi r0, 1 +/* 80198454 001953B4 41 82 00 14 */ beq lbl_80198468 +/* 80198458 001953B8 48 00 00 A8 */ b lbl_80198500 +lbl_8019845C: +/* 8019845C 001953BC 2C 00 00 05 */ cmpwi r0, 5 +/* 80198460 001953C0 40 80 00 A0 */ bge lbl_80198500 +/* 80198464 001953C4 48 00 00 50 */ b lbl_801984B4 +lbl_80198468: +/* 80198468 001953C8 38 00 00 02 */ li r0, 2 +/* 8019846C 001953CC 90 1E 03 F0 */ stw r0, 0x3f0(r30) +/* 80198470 001953D0 48 00 00 90 */ b lbl_80198500 +lbl_80198474: +/* 80198474 001953D4 C0 62 A6 B8 */ lfs f3, lbl_805AC3D8@sda21(r2) +/* 80198478 001953D8 C0 5E 03 34 */ lfs f2, 0x334(r30) +/* 8019847C 001953DC C0 02 A6 A0 */ lfs f0, lbl_805AC3C0@sda21(r2) +/* 80198480 001953E0 EC 23 10 7A */ fmadds f1, f3, f1, f2 +/* 80198484 001953E4 D0 3E 03 34 */ stfs f1, 0x334(r30) +/* 80198488 001953E8 C0 3E 03 34 */ lfs f1, 0x334(r30) +/* 8019848C 001953EC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80198490 001953F0 40 81 00 70 */ ble lbl_80198500 +/* 80198494 001953F4 D0 1E 03 34 */ stfs f0, 0x334(r30) +/* 80198498 001953F8 38 00 00 04 */ li r0, 4 +/* 8019849C 001953FC 38 60 00 00 */ li r3, 0 +/* 801984A0 00195400 90 1E 03 F0 */ stw r0, 0x3f0(r30) +/* 801984A4 00195404 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 801984A8 00195408 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801984AC 0019540C 98 1E 04 00 */ stb r0, 0x400(r30) +/* 801984B0 00195410 48 00 00 50 */ b lbl_80198500 +lbl_801984B4: +/* 801984B4 00195414 C0 5E 03 30 */ lfs f2, 0x330(r30) +/* 801984B8 00195418 C0 02 A6 BC */ lfs f0, lbl_805AC3DC@sda21(r2) +/* 801984BC 0019541C EC 22 08 2A */ fadds f1, f2, f1 +/* 801984C0 00195420 D0 3E 03 30 */ stfs f1, 0x330(r30) +/* 801984C4 00195424 C0 3E 03 30 */ lfs f1, 0x330(r30) +/* 801984C8 00195428 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801984CC 0019542C 40 81 00 34 */ ble lbl_80198500 +/* 801984D0 00195430 80 7E 03 48 */ lwz r3, 0x348(r30) +/* 801984D4 00195434 28 03 00 00 */ cmplwi r3, 0 +/* 801984D8 00195438 41 82 00 28 */ beq lbl_80198500 +/* 801984DC 0019543C 48 17 FA 11 */ bl GetParticleCountAll__11CElementGenCFv +/* 801984E0 00195440 2C 03 00 00 */ cmpwi r3, 0 +/* 801984E4 00195444 40 82 00 1C */ bne lbl_80198500 +/* 801984E8 00195448 38 00 00 00 */ li r0, 0 +/* 801984EC 0019544C 7F C3 F3 78 */ mr r3, r30 +/* 801984F0 00195450 90 1E 03 F0 */ stw r0, 0x3f0(r30) +/* 801984F4 00195454 7F E4 FB 78 */ mr r4, r31 +/* 801984F8 00195458 38 A0 00 01 */ li r5, 1 +/* 801984FC 0019545C 4B FF FC C5 */ bl Reset__13CFlameThrowerFR13CStateManagerb +lbl_80198500: +/* 80198500 00195460 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80198504 00195464 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80198508 00195468 C0 22 A6 A4 */ lfs f1, lbl_805AC3C4@sda21(r2) +/* 8019850C 0019546C 83 C1 00 08 */ lwz r30, 8(r1) +/* 80198510 00195470 7C 08 03 A6 */ mtlr r0 +/* 80198514 00195474 38 21 00 10 */ addi r1, r1, 0x10 +/* 80198518 00195478 4E 80 00 20 */ blr + +.global Think__13CFlameThrowerFfR13CStateManager +Think__13CFlameThrowerFfR13CStateManager: +/* 8019851C 0019547C 94 21 FE 10 */ stwu r1, -0x1f0(r1) +/* 80198520 00195480 7C 08 02 A6 */ mflr r0 +/* 80198524 00195484 90 01 01 F4 */ stw r0, 0x1f4(r1) +/* 80198528 00195488 DB E1 01 E0 */ stfd f31, 0x1e0(r1) +/* 8019852C 0019548C F3 E1 01 E8 */ psq_st f31, 488(r1), 0, qr0 +/* 80198530 00195490 BF 61 01 CC */ stmw r27, 0x1cc(r1) +/* 80198534 00195494 FF E0 08 90 */ fmr f31, f1 +/* 80198538 00195498 7C 7D 1B 78 */ mr r29, r3 +/* 8019853C 0019549C 7C 9E 23 78 */ mr r30, r4 +/* 80198540 001954A0 4B F6 9B 99 */ bl Think__7CWeaponFfR13CStateManager +/* 80198544 001954A4 88 1D 00 30 */ lbz r0, 0x30(r29) +/* 80198548 001954A8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8019854C 001954AC 41 82 04 9C */ beq lbl_801989E8 +/* 80198550 001954B0 FC 20 F8 90 */ fmr f1, f31 +/* 80198554 001954B4 7F A3 EB 78 */ mr r3, r29 +/* 80198558 001954B8 7F C4 F3 78 */ mr r4, r30 +/* 8019855C 001954BC 3B FD 02 E8 */ addi r31, r29, 0x2e8 +/* 80198560 001954C0 4B FF FE C5 */ bl UpdateFlameState__13CFlameThrowerFfR13CStateManager +/* 80198564 001954C4 C0 5F 00 2C */ lfs f2, 0x2c(r31) +/* 80198568 001954C8 3B 80 00 01 */ li r28, 1 +/* 8019856C 001954CC C0 3F 00 1C */ lfs f1, 0x1c(r31) +/* 80198570 001954D0 C0 1F 00 0C */ lfs f0, 0xc(r31) +/* 80198574 001954D4 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 80198578 001954D8 D0 21 00 5C */ stfs f1, 0x5c(r1) +/* 8019857C 001954DC D0 41 00 60 */ stfs f2, 0x60(r1) +/* 80198580 001954E0 80 1D 03 F0 */ lwz r0, 0x3f0(r29) +/* 80198584 001954E4 2C 00 00 02 */ cmpwi r0, 2 +/* 80198588 001954E8 41 82 00 10 */ beq lbl_80198598 +/* 8019858C 001954EC 2C 00 00 03 */ cmpwi r0, 3 +/* 80198590 001954F0 41 82 00 08 */ beq lbl_80198598 +/* 80198594 001954F4 3B 80 00 00 */ li r28, 0 +lbl_80198598: +/* 80198598 001954F8 2C 00 00 04 */ cmpwi r0, 4 +/* 8019859C 001954FC 40 80 00 88 */ bge lbl_80198624 +/* 801985A0 00195500 2C 00 00 02 */ cmpwi r0, 2 +/* 801985A4 00195504 40 80 00 08 */ bge lbl_801985AC +/* 801985A8 00195508 48 00 00 7C */ b lbl_80198624 +lbl_801985AC: +/* 801985AC 0019550C 38 7D 03 4C */ addi r3, r29, 0x34c +/* 801985B0 00195510 38 80 00 01 */ li r4, 1 +/* 801985B4 00195514 81 9D 03 4C */ lwz r12, 0x34c(r29) +/* 801985B8 00195518 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 801985BC 0019551C 7D 89 03 A6 */ mtctr r12 +/* 801985C0 00195520 4E 80 04 21 */ bctrl +/* 801985C4 00195524 C0 01 00 58 */ lfs f0, 0x58(r1) +/* 801985C8 00195528 38 81 00 58 */ addi r4, r1, 0x58 +/* 801985CC 0019552C D0 1D 03 C0 */ stfs f0, 0x3c0(r29) +/* 801985D0 00195530 C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 801985D4 00195534 D0 1D 03 C4 */ stfs f0, 0x3c4(r29) +/* 801985D8 00195538 C0 01 00 60 */ lfs f0, 0x60(r1) +/* 801985DC 0019553C D0 1D 03 C8 */ stfs f0, 0x3c8(r29) +/* 801985E0 00195540 93 DD 03 E8 */ stw r30, 0x3e8(r29) +/* 801985E4 00195544 80 7D 03 48 */ lwz r3, 0x348(r29) +/* 801985E8 00195548 81 83 00 00 */ lwz r12, 0(r3) +/* 801985EC 0019554C 81 8C 00 18 */ lwz r12, 0x18(r12) +/* 801985F0 00195550 7D 89 03 A6 */ mtctr r12 +/* 801985F4 00195554 4E 80 04 21 */ bctrl +/* 801985F8 00195558 83 7D 03 48 */ lwz r27, 0x348(r29) +/* 801985FC 0019555C 7F E4 FB 78 */ mr r4, r31 +/* 80198600 00195560 38 61 01 18 */ addi r3, r1, 0x118 +/* 80198604 00195564 48 17 A6 3D */ bl GetRotation__12CTransform4fCFv +/* 80198608 00195568 7F 63 DB 78 */ mr r3, r27 +/* 8019860C 0019556C 38 81 01 18 */ addi r4, r1, 0x118 +/* 80198610 00195570 81 9B 00 00 */ lwz r12, 0(r27) +/* 80198614 00195574 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 80198618 00195578 7D 89 03 A6 */ mtctr r12 +/* 8019861C 0019557C 4E 80 04 21 */ bctrl +/* 80198620 00195580 48 00 00 1C */ b lbl_8019863C +lbl_80198624: +/* 80198624 00195584 38 7D 03 4C */ addi r3, r29, 0x34c +/* 80198628 00195588 38 80 00 00 */ li r4, 0 +/* 8019862C 0019558C 81 9D 03 4C */ lwz r12, 0x34c(r29) +/* 80198630 00195590 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 80198634 00195594 7D 89 03 A6 */ mtctr r12 +/* 80198638 00195598 4E 80 04 21 */ bctrl +lbl_8019863C: +/* 8019863C 0019559C 80 7D 03 48 */ lwz r3, 0x348(r29) +/* 80198640 001955A0 FC 20 F8 90 */ fmr f1, f31 +/* 80198644 001955A4 81 83 00 00 */ lwz r12, 0(r3) +/* 80198648 001955A8 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8019864C 001955AC 7D 89 03 A6 */ mtctr r12 +/* 80198650 001955B0 4E 80 04 21 */ bctrl +/* 80198654 001955B4 C0 02 A6 A4 */ lfs f0, lbl_805AC3C4@sda21(r2) +/* 80198658 001955B8 57 80 06 3F */ clrlwi. r0, r28, 0x18 +/* 8019865C 001955BC D0 1D 03 D8 */ stfs f0, 0x3d8(r29) +/* 80198660 001955C0 C0 01 00 58 */ lfs f0, 0x58(r1) +/* 80198664 001955C4 D0 1D 03 CC */ stfs f0, 0x3cc(r29) +/* 80198668 001955C8 C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 8019866C 001955CC D0 1D 03 D0 */ stfs f0, 0x3d0(r29) +/* 80198670 001955D0 C0 01 00 60 */ lfs f0, 0x60(r1) +/* 80198674 001955D4 D0 1D 03 D4 */ stfs f0, 0x3d4(r29) +/* 80198678 001955D8 41 82 02 48 */ beq lbl_801988C0 +/* 8019867C 001955DC 88 1D 03 EC */ lbz r0, 0x3ec(r29) +/* 80198680 001955E0 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 80198684 001955E4 41 82 02 3C */ beq lbl_801988C0 +/* 80198688 001955E8 38 9D 03 50 */ addi r4, r29, 0x350 +/* 8019868C 001955EC C0 5D 03 54 */ lfs f2, 0x354(r29) +/* 80198690 001955F0 38 A4 00 10 */ addi r5, r4, 0x10 +/* 80198694 001955F4 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 80198698 001955F8 C0 3D 03 58 */ lfs f1, 0x358(r29) +/* 8019869C 001955FC D0 21 00 50 */ stfs f1, 0x50(r1) +/* 801986A0 00195600 C0 1D 03 5C */ lfs f0, 0x35c(r29) +/* 801986A4 00195604 D0 01 00 54 */ stfs f0, 0x54(r1) +/* 801986A8 00195608 D0 41 00 40 */ stfs f2, 0x40(r1) +/* 801986AC 0019560C D0 21 00 44 */ stfs f1, 0x44(r1) +/* 801986B0 00195610 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 801986B4 00195614 48 00 00 80 */ b lbl_80198734 +lbl_801986B8: +/* 801986B8 00195618 C0 25 00 00 */ lfs f1, 0(r5) +/* 801986BC 0019561C C0 01 00 4C */ lfs f0, 0x4c(r1) +/* 801986C0 00195620 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801986C4 00195624 40 80 00 08 */ bge lbl_801986CC +/* 801986C8 00195628 D0 21 00 4C */ stfs f1, 0x4c(r1) +lbl_801986CC: +/* 801986CC 0019562C C0 25 00 04 */ lfs f1, 4(r5) +/* 801986D0 00195630 C0 01 00 50 */ lfs f0, 0x50(r1) +/* 801986D4 00195634 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801986D8 00195638 40 80 00 08 */ bge lbl_801986E0 +/* 801986DC 0019563C D0 21 00 50 */ stfs f1, 0x50(r1) +lbl_801986E0: +/* 801986E0 00195640 C0 25 00 08 */ lfs f1, 8(r5) +/* 801986E4 00195644 C0 01 00 54 */ lfs f0, 0x54(r1) +/* 801986E8 00195648 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801986EC 0019564C 40 80 00 08 */ bge lbl_801986F4 +/* 801986F0 00195650 D0 21 00 54 */ stfs f1, 0x54(r1) +lbl_801986F4: +/* 801986F4 00195654 C0 25 00 00 */ lfs f1, 0(r5) +/* 801986F8 00195658 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 801986FC 0019565C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80198700 00195660 40 81 00 08 */ ble lbl_80198708 +/* 80198704 00195664 D0 21 00 40 */ stfs f1, 0x40(r1) +lbl_80198708: +/* 80198708 00195668 C0 25 00 04 */ lfs f1, 4(r5) +/* 8019870C 0019566C C0 01 00 44 */ lfs f0, 0x44(r1) +/* 80198710 00195670 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80198714 00195674 40 81 00 08 */ ble lbl_8019871C +/* 80198718 00195678 D0 21 00 44 */ stfs f1, 0x44(r1) +lbl_8019871C: +/* 8019871C 0019567C C0 25 00 08 */ lfs f1, 8(r5) +/* 80198720 00195680 C0 01 00 48 */ lfs f0, 0x48(r1) +/* 80198724 00195684 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80198728 00195688 40 81 00 08 */ ble lbl_80198730 +/* 8019872C 0019568C D0 21 00 48 */ stfs f1, 0x48(r1) +lbl_80198730: +/* 80198730 00195690 38 A5 00 0C */ addi r5, r5, 0xc +lbl_80198734: +/* 80198734 00195694 80 04 00 00 */ lwz r0, 0(r4) +/* 80198738 00195698 1C 00 00 0C */ mulli r0, r0, 0xc +/* 8019873C 0019569C 7C 64 02 14 */ add r3, r4, r0 +/* 80198740 001956A0 38 03 00 04 */ addi r0, r3, 4 +/* 80198744 001956A4 7C 05 00 40 */ cmplw r5, r0 +/* 80198748 001956A8 40 82 FF 70 */ bne lbl_801986B8 +/* 8019874C 001956AC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80198750 001956B0 38 61 00 9C */ addi r3, r1, 0x9c +/* 80198754 001956B4 38 81 00 4C */ addi r4, r1, 0x4c +/* 80198758 001956B8 38 A1 00 40 */ addi r5, r1, 0x40 +/* 8019875C 001956BC B0 01 00 20 */ sth r0, 0x20(r1) +/* 80198760 001956C0 48 19 FD A9 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 80198764 001956C4 80 C1 00 9C */ lwz r6, 0x9c(r1) +/* 80198768 001956C8 7F A4 EB 78 */ mr r4, r29 +/* 8019876C 001956CC 80 01 00 A0 */ lwz r0, 0xa0(r1) +/* 80198770 001956D0 7F C7 F3 78 */ mr r7, r30 +/* 80198774 001956D4 38 61 00 E8 */ addi r3, r1, 0xe8 +/* 80198778 001956D8 38 A1 00 20 */ addi r5, r1, 0x20 +/* 8019877C 001956DC 90 DD 03 18 */ stw r6, 0x318(r29) +/* 80198780 001956E0 38 DD 03 18 */ addi r6, r29, 0x318 +/* 80198784 001956E4 90 1D 03 1C */ stw r0, 0x31c(r29) +/* 80198788 001956E8 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 8019878C 001956EC 90 1D 03 20 */ stw r0, 0x320(r29) +/* 80198790 001956F0 81 01 00 A8 */ lwz r8, 0xa8(r1) +/* 80198794 001956F4 80 01 00 AC */ lwz r0, 0xac(r1) +/* 80198798 001956F8 91 1D 03 24 */ stw r8, 0x324(r29) +/* 8019879C 001956FC 90 1D 03 28 */ stw r0, 0x328(r29) +/* 801987A0 00195700 80 01 00 B0 */ lwz r0, 0xb0(r1) +/* 801987A4 00195704 90 1D 03 2C */ stw r0, 0x32c(r29) +/* 801987A8 00195708 4B FF EE E1 */ bl DoCollisionCheck__13CFlameThrowerFR9TUniqueIdRC6CAABoxR13CStateManager +/* 801987AC 0019570C C0 E1 00 E8 */ lfs f7, 0xe8(r1) +/* 801987B0 00195710 7F C3 F3 78 */ mr r3, r30 +/* 801987B4 00195714 C0 C1 00 EC */ lfs f6, 0xec(r1) +/* 801987B8 00195718 3B 61 01 4C */ addi r27, r1, 0x14c +/* 801987BC 0019571C C0 A1 00 F0 */ lfs f5, 0xf0(r1) +/* 801987C0 00195720 38 81 00 1C */ addi r4, r1, 0x1c +/* 801987C4 00195724 C0 81 00 F4 */ lfs f4, 0xf4(r1) +/* 801987C8 00195728 C0 61 00 F8 */ lfs f3, 0xf8(r1) +/* 801987CC 0019572C C0 41 00 FC */ lfs f2, 0xfc(r1) +/* 801987D0 00195730 C0 21 01 00 */ lfs f1, 0x100(r1) +/* 801987D4 00195734 C0 01 01 04 */ lfs f0, 0x104(r1) +/* 801987D8 00195738 88 E1 01 08 */ lbz r7, 0x108(r1) +/* 801987DC 0019573C 80 A1 01 10 */ lwz r5, 0x110(r1) +/* 801987E0 00195740 80 C1 01 14 */ lwz r6, 0x114(r1) +/* 801987E4 00195744 A0 01 00 20 */ lhz r0, 0x20(r1) +/* 801987E8 00195748 D0 E1 01 48 */ stfs f7, 0x148(r1) +/* 801987EC 0019574C D0 C1 01 4C */ stfs f6, 0x14c(r1) +/* 801987F0 00195750 D0 A1 01 50 */ stfs f5, 0x150(r1) +/* 801987F4 00195754 D0 81 01 54 */ stfs f4, 0x154(r1) +/* 801987F8 00195758 D0 61 01 58 */ stfs f3, 0x158(r1) +/* 801987FC 0019575C D0 41 01 5C */ stfs f2, 0x15c(r1) +/* 80198800 00195760 D0 21 01 60 */ stfs f1, 0x160(r1) +/* 80198804 00195764 D0 01 01 64 */ stfs f0, 0x164(r1) +/* 80198808 00195768 98 E1 01 68 */ stb r7, 0x168(r1) +/* 8019880C 0019576C 90 C1 01 74 */ stw r6, 0x174(r1) +/* 80198810 00195770 90 A1 01 70 */ stw r5, 0x170(r1) +/* 80198814 00195774 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 80198818 00195778 4B EB 3D 5D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8019881C 0019577C 7C 64 1B 78 */ mr r4, r3 +/* 80198820 00195780 38 61 00 2C */ addi r3, r1, 0x2c +/* 80198824 00195784 4B F1 74 6D */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 80198828 00195788 80 03 00 04 */ lwz r0, 4(r3) +/* 8019882C 0019578C 28 00 00 00 */ cmplwi r0, 0 +/* 80198830 00195790 41 82 00 24 */ beq lbl_80198854 +/* 80198834 00195794 A0 01 00 20 */ lhz r0, 0x20(r1) +/* 80198838 00195798 FC 20 F8 90 */ fmr f1, f31 +/* 8019883C 0019579C 7F A3 EB 78 */ mr r3, r29 +/* 80198840 001957A0 7F C4 F3 78 */ mr r4, r30 +/* 80198844 001957A4 B0 01 00 18 */ sth r0, 0x18(r1) +/* 80198848 001957A8 38 A1 00 18 */ addi r5, r1, 0x18 +/* 8019884C 001957AC 4B FF ED 25 */ bl sub_80197570 +/* 80198850 001957B0 48 00 00 70 */ b lbl_801988C0 +lbl_80198854: +/* 80198854 001957B4 88 01 01 68 */ lbz r0, 0x168(r1) +/* 80198858 001957B8 28 00 00 00 */ cmplwi r0, 0 +/* 8019885C 001957BC 41 82 00 64 */ beq lbl_801988C0 +/* 80198860 001957C0 80 1D 00 F8 */ lwz r0, 0xf8(r29) +/* 80198864 001957C4 FC 20 F8 90 */ fmr f1, f31 +/* 80198868 001957C8 80 BD 00 FC */ lwz r5, 0xfc(r29) +/* 8019886C 001957CC 38 61 00 80 */ addi r3, r1, 0x80 +/* 80198870 001957D0 38 9D 01 2C */ addi r4, r29, 0x12c +/* 80198874 001957D4 90 A1 00 6C */ stw r5, 0x6c(r1) +/* 80198878 001957D8 90 01 00 68 */ stw r0, 0x68(r1) +/* 8019887C 001957DC 80 1D 01 00 */ lwz r0, 0x100(r29) +/* 80198880 001957E0 80 BD 01 04 */ lwz r5, 0x104(r29) +/* 80198884 001957E4 90 A1 00 74 */ stw r5, 0x74(r1) +/* 80198888 001957E8 90 01 00 70 */ stw r0, 0x70(r1) +/* 8019888C 001957EC 80 1D 01 08 */ lwz r0, 0x108(r29) +/* 80198890 001957F0 90 01 00 78 */ stw r0, 0x78(r1) +/* 80198894 001957F4 4B F2 AB B5 */ bl __ct__11CDamageInfoFRC11CDamageInfof +/* 80198898 001957F8 A0 1D 00 EC */ lhz r0, 0xec(r29) +/* 8019889C 001957FC 7F C3 F3 78 */ mr r3, r30 +/* 801988A0 00195800 7F A5 EB 78 */ mr r5, r29 +/* 801988A4 00195804 7F 66 DB 78 */ mr r6, r27 +/* 801988A8 00195808 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801988AC 0019580C 38 81 00 14 */ addi r4, r1, 0x14 +/* 801988B0 00195810 38 E1 00 80 */ addi r7, r1, 0x80 +/* 801988B4 00195814 39 01 00 68 */ addi r8, r1, 0x68 +/* 801988B8 00195818 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801988BC 0019581C 4B EB 03 F1 */ bl ApplyDamageToWorld__13CStateManagerF9TUniqueIdRC6CActorRC9CVector3fRC11CDamageInfoRC15CMaterialFilter +lbl_801988C0: +/* 801988C0 00195820 7F E4 FB 78 */ mr r4, r31 +/* 801988C4 00195824 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 801988C8 00195828 48 17 A3 79 */ bl GetRotation__12CTransform4fCFv +/* 801988CC 0019582C 38 7D 00 34 */ addi r3, r29, 0x34 +/* 801988D0 00195830 38 81 00 B4 */ addi r4, r1, 0xb4 +/* 801988D4 00195834 48 17 A2 6D */ bl __as__12CTransform4fFRC12CTransform4f +/* 801988D8 00195838 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 801988DC 0019583C 38 A0 00 01 */ li r5, 1 +/* 801988E0 00195840 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 801988E4 00195844 7F A3 EB 78 */ mr r3, r29 +/* 801988E8 00195848 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 801988EC 0019584C 38 81 00 34 */ addi r4, r1, 0x34 +/* 801988F0 00195850 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 801988F4 00195854 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 801988F8 00195858 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 801988FC 0019585C 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 80198900 00195860 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d +/* 80198904 00195864 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 80198908 00195868 C0 5F 00 2C */ lfs f2, 0x2c(r31) +/* 8019890C 0019586C C0 3F 00 1C */ lfs f1, 0x1c(r31) +/* 80198910 00195870 C0 1F 00 0C */ lfs f0, 0xc(r31) +/* 80198914 00195874 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 80198918 00195878 D0 21 00 38 */ stfs f1, 0x38(r1) +/* 8019891C 0019587C D0 41 00 3C */ stfs f2, 0x3c(r1) +/* 80198920 00195880 4B EB A5 6D */ bl SetTranslation__6CActorFRC9CVector3f +/* 80198924 00195884 A0 BD 02 C8 */ lhz r5, 0x2c8(r29) +/* 80198928 00195888 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8019892C 0019588C 7C 05 00 40 */ cmplw r5, r0 +/* 80198930 00195890 41 82 00 B8 */ beq lbl_801989E8 +/* 80198934 00195894 B0 A1 00 08 */ sth r5, 8(r1) +/* 80198938 00195898 7F C3 F3 78 */ mr r3, r30 +/* 8019893C 0019589C 38 81 00 0C */ addi r4, r1, 0xc +/* 80198940 001958A0 B0 A1 00 0C */ sth r5, 0xc(r1) +/* 80198944 001958A4 4B EB 3C 31 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80198948 001958A8 7C 64 1B 78 */ mr r4, r3 +/* 8019894C 001958AC 38 61 00 24 */ addi r3, r1, 0x24 +/* 80198950 001958B0 4B F1 51 35 */ bl "__ct__24TCastToPtr<10CGameLight>FP7CEntity" +/* 80198954 001958B4 83 63 00 04 */ lwz r27, 4(r3) +/* 80198958 001958B8 28 1B 00 00 */ cmplwi r27, 0 +/* 8019895C 001958BC 41 82 00 8C */ beq lbl_801989E8 +/* 80198960 001958C0 38 7B 00 34 */ addi r3, r27, 0x34 +/* 80198964 001958C4 38 9D 00 34 */ addi r4, r29, 0x34 +/* 80198968 001958C8 48 17 A1 D9 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8019896C 001958CC 88 1B 00 E4 */ lbz r0, 0xe4(r27) +/* 80198970 001958D0 38 A0 00 01 */ li r5, 1 +/* 80198974 001958D4 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 80198978 001958D8 7F 63 DB 78 */ mr r3, r27 +/* 8019897C 001958DC 98 1B 00 E4 */ stb r0, 0xe4(r27) +/* 80198980 001958E0 38 9D 03 CC */ addi r4, r29, 0x3cc +/* 80198984 001958E4 88 1B 00 E4 */ lbz r0, 0xe4(r27) +/* 80198988 001958E8 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 8019898C 001958EC 98 1B 00 E4 */ stb r0, 0xe4(r27) +/* 80198990 001958F0 88 1B 00 E4 */ lbz r0, 0xe4(r27) +/* 80198994 001958F4 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d +/* 80198998 001958F8 98 1B 00 E4 */ stb r0, 0xe4(r27) +/* 8019899C 001958FC 4B EB A4 F1 */ bl SetTranslation__6CActorFRC9CVector3f +/* 801989A0 00195900 80 7D 03 48 */ lwz r3, 0x348(r29) +/* 801989A4 00195904 28 03 00 00 */ cmplwi r3, 0 +/* 801989A8 00195908 41 82 00 40 */ beq lbl_801989E8 +/* 801989AC 0019590C 81 83 00 00 */ lwz r12, 0(r3) +/* 801989B0 00195910 81 8C 00 64 */ lwz r12, 0x64(r12) +/* 801989B4 00195914 7D 89 03 A6 */ mtctr r12 +/* 801989B8 00195918 4E 80 04 21 */ bctrl +/* 801989BC 0019591C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801989C0 00195920 41 82 00 28 */ beq lbl_801989E8 +/* 801989C4 00195924 80 9D 03 48 */ lwz r4, 0x348(r29) +/* 801989C8 00195928 38 61 01 78 */ addi r3, r1, 0x178 +/* 801989CC 0019592C 81 84 00 00 */ lwz r12, 0(r4) +/* 801989D0 00195930 81 8C 00 68 */ lwz r12, 0x68(r12) +/* 801989D4 00195934 7D 89 03 A6 */ mtctr r12 +/* 801989D8 00195938 4E 80 04 21 */ bctrl +/* 801989DC 0019593C 7F 63 DB 78 */ mr r3, r27 +/* 801989E0 00195940 38 81 01 78 */ addi r4, r1, 0x178 +/* 801989E4 00195944 4B F1 CD 61 */ bl SetLight__10CGameLightFRC6CLight +lbl_801989E8: +/* 801989E8 00195948 E3 E1 01 E8 */ psq_l f31, 488(r1), 0, qr0 +/* 801989EC 0019594C CB E1 01 E0 */ lfd f31, 0x1e0(r1) +/* 801989F0 00195950 BB 61 01 CC */ lmw r27, 0x1cc(r1) +/* 801989F4 00195954 80 01 01 F4 */ lwz r0, 0x1f4(r1) +/* 801989F8 00195958 7C 08 03 A6 */ mtlr r0 +/* 801989FC 0019595C 38 21 01 F0 */ addi r1, r1, 0x1f0 +/* 80198A00 00195960 4E 80 00 20 */ blr + +.global Activate__10CFlameWarpFb +Activate__10CFlameWarpFb: +/* 80198A04 00195964 88 03 00 A0 */ lbz r0, 0xa0(r3) +/* 80198A08 00195968 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 80198A0C 0019596C 98 03 00 A0 */ stb r0, 0xa0(r3) +/* 80198A10 00195970 4E 80 00 20 */ blr + +.global nullsub_141 +nullsub_141: +/* 80198A14 00195974 4E 80 00 20 */ blr + +.global Accept__13CFlameThrowerFR8IVisitor +Accept__13CFlameThrowerFR8IVisitor: +/* 80198A18 00195978 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80198A1C 0019597C 7C 08 02 A6 */ mflr r0 +/* 80198A20 00195980 90 01 00 14 */ stw r0, 0x14(r1) +/* 80198A24 00195984 7C 60 1B 78 */ mr r0, r3 +/* 80198A28 00195988 7C 83 23 78 */ mr r3, r4 +/* 80198A2C 0019598C 81 84 00 00 */ lwz r12, 0(r4) +/* 80198A30 00195990 7C 04 03 78 */ mr r4, r0 +/* 80198A34 00195994 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 80198A38 00195998 7D 89 03 A6 */ mtctr r12 +/* 80198A3C 0019599C 4E 80 04 21 */ bctrl +/* 80198A40 001959A0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80198A44 001959A4 7C 08 03 A6 */ mtlr r0 +/* 80198A48 001959A8 38 21 00 10 */ addi r1, r1, 0x10 +/* 80198A4C 001959AC 4E 80 00 20 */ blr + +.global GetTouchBounds__13CFlameThrowerCFv +GetTouchBounds__13CFlameThrowerCFv: +/* 80198A50 001959B0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80198A54 001959B4 88 04 00 30 */ lbz r0, 0x30(r4) +/* 80198A58 001959B8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80198A5C 001959BC 41 82 00 18 */ beq lbl_80198A74 +/* 80198A60 001959C0 80 04 03 F0 */ lwz r0, 0x3f0(r4) +/* 80198A64 001959C4 2C 00 00 02 */ cmpwi r0, 2 +/* 80198A68 001959C8 40 82 00 0C */ bne lbl_80198A74 +/* 80198A6C 001959CC 2C 00 00 03 */ cmpwi r0, 3 +/* 80198A70 001959D0 41 82 00 10 */ beq lbl_80198A80 +lbl_80198A74: +/* 80198A74 001959D4 38 00 00 00 */ li r0, 0 +/* 80198A78 001959D8 98 03 00 18 */ stb r0, 0x18(r3) +/* 80198A7C 001959DC 48 00 00 6C */ b lbl_80198AE8 +lbl_80198A80: +/* 80198A80 001959E0 C0 C4 00 60 */ lfs f6, 0x60(r4) +/* 80198A84 001959E4 28 03 00 00 */ cmplwi r3, 0 +/* 80198A88 001959E8 C0 E2 84 00 */ lfs f7, lbl_805AA120@sda21(r2) +/* 80198A8C 001959EC 38 00 00 01 */ li r0, 1 +/* 80198A90 001959F0 C0 24 00 50 */ lfs f1, 0x50(r4) +/* 80198A94 001959F4 C0 04 00 40 */ lfs f0, 0x40(r4) +/* 80198A98 001959F8 EC 66 38 28 */ fsubs f3, f6, f7 +/* 80198A9C 001959FC EC 81 38 28 */ fsubs f4, f1, f7 +/* 80198AA0 00195A00 EC A0 38 28 */ fsubs f5, f0, f7 +/* 80198AA4 00195A04 98 03 00 18 */ stb r0, 0x18(r3) +/* 80198AA8 00195A08 EC 47 00 2A */ fadds f2, f7, f0 +/* 80198AAC 00195A0C EC 27 08 2A */ fadds f1, f7, f1 +/* 80198AB0 00195A10 D0 81 00 0C */ stfs f4, 0xc(r1) +/* 80198AB4 00195A14 EC 07 30 2A */ fadds f0, f7, f6 +/* 80198AB8 00195A18 D0 A1 00 08 */ stfs f5, 8(r1) +/* 80198ABC 00195A1C D0 61 00 10 */ stfs f3, 0x10(r1) +/* 80198AC0 00195A20 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 80198AC4 00195A24 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 80198AC8 00195A28 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 80198ACC 00195A2C 41 82 00 1C */ beq lbl_80198AE8 +/* 80198AD0 00195A30 D0 A3 00 00 */ stfs f5, 0(r3) +/* 80198AD4 00195A34 D0 83 00 04 */ stfs f4, 4(r3) +/* 80198AD8 00195A38 D0 63 00 08 */ stfs f3, 8(r3) +/* 80198ADC 00195A3C D0 43 00 0C */ stfs f2, 0xc(r3) +/* 80198AE0 00195A40 D0 23 00 10 */ stfs f1, 0x10(r3) +/* 80198AE4 00195A44 D0 03 00 14 */ stfs f0, 0x14(r3) +lbl_80198AE8: +/* 80198AE8 00195A48 38 21 00 20 */ addi r1, r1, 0x20 +/* 80198AEC 00195A4C 4E 80 00 20 */ blr + +.global "__ct__13CFlameThrowerFRC28TToken<18CWeaponDescription>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>11EWeaponTypeRC10CFlameInfoRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId9TUniqueIdUi" +"__ct__13CFlameThrowerFRC28TToken<18CWeaponDescription>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>11EWeaponTypeRC10CFlameInfoRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId9TUniqueIdUi": +/* 80198AF0 00195A50 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 80198AF4 00195A54 7C 08 02 A6 */ mflr r0 +/* 80198AF8 00195A58 C0 02 A6 A0 */ lfs f0, lbl_805AC3C0@sda21(r2) +/* 80198AFC 00195A5C 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 80198B00 00195A60 39 81 00 74 */ addi r12, r1, 0x74 +/* 80198B04 00195A64 39 61 00 64 */ addi r11, r1, 0x64 +/* 80198B08 00195A68 BE 41 00 88 */ stmw r18, 0x88(r1) +/* 80198B0C 00195A6C 3A A0 00 00 */ li r21, 0 +/* 80198B10 00195A70 7C BE 2B 78 */ mr r30, r5 +/* 80198B14 00195A74 80 A1 00 D0 */ lwz r5, 0xd0(r1) +/* 80198B18 00195A78 7C D2 33 78 */ mr r18, r6 +/* 80198B1C 00195A7C 7C FB 3B 78 */ mr r27, r7 +/* 80198B20 00195A80 83 E1 00 CC */ lwz r31, 0xcc(r1) +/* 80198B24 00195A84 7E 47 93 78 */ mr r7, r18 +/* 80198B28 00195A88 82 61 00 C8 */ lwz r19, 0xc8(r1) +/* 80198B2C 00195A8C 3A C1 00 38 */ addi r22, r1, 0x38 +/* 80198B30 00195A90 3A E1 00 3C */ addi r23, r1, 0x3c +/* 80198B34 00195A94 3B 01 00 34 */ addi r24, r1, 0x34 +/* 80198B38 00195A98 3B 21 00 30 */ addi r25, r1, 0x30 +/* 80198B3C 00195A9C 82 81 00 D4 */ lwz r20, 0xd4(r1) +/* 80198B40 00195AA0 83 A1 00 D8 */ lwz r29, 0xd8(r1) +/* 80198B44 00195AA4 7C 7A 1B 78 */ mr r26, r3 +/* 80198B48 00195AA8 7D 1C 43 78 */ mr r28, r8 +/* 80198B4C 00195AAC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80198B50 00195AB0 9A A1 00 70 */ stb r21, 0x70(r1) +/* 80198B54 00195AB4 B0 01 00 30 */ sth r0, 0x30(r1) +/* 80198B58 00195AB8 A0 02 C5 FC */ lhz r0, lbl_805AE31C@sda21(r2) +/* 80198B5C 00195ABC D0 01 00 74 */ stfs f0, 0x74(r1) +/* 80198B60 00195AC0 D0 01 00 78 */ stfs f0, 0x78(r1) +/* 80198B64 00195AC4 D0 01 00 7C */ stfs f0, 0x7c(r1) +/* 80198B68 00195AC8 A0 C5 00 00 */ lhz r6, 0(r5) +/* 80198B6C 00195ACC 7C 85 23 78 */ mr r5, r4 +/* 80198B70 00195AD0 38 80 00 00 */ li r4, 0 +/* 80198B74 00195AD4 B0 C1 00 34 */ sth r6, 0x34(r1) +/* 80198B78 00195AD8 7F C6 F3 78 */ mr r6, r30 +/* 80198B7C 00195ADC A3 C1 00 DE */ lhz r30, 0xde(r1) +/* 80198B80 00195AE0 82 5F 00 00 */ lwz r18, 0(r31) +/* 80198B84 00195AE4 83 E1 00 E0 */ lwz r31, 0xe0(r1) +/* 80198B88 00195AE8 92 41 00 3C */ stw r18, 0x3c(r1) +/* 80198B8C 00195AEC A2 53 00 00 */ lhz r18, 0(r19) +/* 80198B90 00195AF0 B2 41 00 38 */ sth r18, 0x38(r1) +/* 80198B94 00195AF4 92 C1 00 08 */ stw r22, 8(r1) +/* 80198B98 00195AF8 92 E1 00 0C */ stw r23, 0xc(r1) +/* 80198B9C 00195AFC 93 01 00 10 */ stw r24, 0x10(r1) +/* 80198BA0 00195B00 93 21 00 14 */ stw r25, 0x14(r1) +/* 80198BA4 00195B04 92 81 00 18 */ stw r20, 0x18(r1) +/* 80198BA8 00195B08 92 A1 00 1C */ stw r21, 0x1c(r1) +/* 80198BAC 00195B0C 91 81 00 20 */ stw r12, 0x20(r1) +/* 80198BB0 00195B10 91 61 00 24 */ stw r11, 0x24(r1) +/* 80198BB4 00195B14 90 01 00 28 */ stw r0, 0x28(r1) +/* 80198BB8 00195B18 92 A1 00 2C */ stw r21, 0x2c(r1) +/* 80198BBC 00195B1C 4B EA 18 C9 */ bl "__ct__15CGameProjectileFbRC28TToken<18CWeaponDescription>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>11EWeaponTypeRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId7TAreaId9TUniqueId9TUniqueIdUibRC9CVector3fRCQ24rstl50optional_object<31TLockedToken<15CGenDescription>>sb" +/* 80198BC0 00195B20 88 01 00 70 */ lbz r0, 0x70(r1) +/* 80198BC4 00195B24 28 00 00 00 */ cmplwi r0, 0 +/* 80198BC8 00195B28 41 82 00 1C */ beq lbl_80198BE4 +/* 80198BCC 00195B2C 34 61 00 64 */ addic. r3, r1, 0x64 +/* 80198BD0 00195B30 41 82 00 14 */ beq lbl_80198BE4 +/* 80198BD4 00195B34 28 03 00 00 */ cmplwi r3, 0 +/* 80198BD8 00195B38 41 82 00 0C */ beq lbl_80198BE4 +/* 80198BDC 00195B3C 38 80 00 00 */ li r4, 0 +/* 80198BE0 00195B40 48 1A 82 61 */ bl __dt__6CTokenFv +lbl_80198BE4: +/* 80198BE4 00195B44 38 00 00 00 */ li r0, 0 +/* 80198BE8 00195B48 3C 60 80 3E */ lis r3, lbl_803E45D8@ha +/* 80198BEC 00195B4C 98 01 00 70 */ stb r0, 0x70(r1) +/* 80198BF0 00195B50 38 03 45 D8 */ addi r0, r3, lbl_803E45D8@l +/* 80198BF4 00195B54 7F 84 E3 78 */ mr r4, r28 +/* 80198BF8 00195B58 38 7A 02 E8 */ addi r3, r26, 0x2e8 +/* 80198BFC 00195B5C 90 1A 00 00 */ stw r0, 0(r26) +/* 80198C00 00195B60 48 17 9F 75 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80198C04 00195B64 3C 80 80 5A */ lis r4, lbl_805A6784@ha +/* 80198C08 00195B68 C4 24 67 84 */ lfsu f1, lbl_805A6784@l(r4) +/* 80198C0C 00195B6C 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 80198C10 00195B70 C0 02 A6 A4 */ lfs f0, lbl_805AC3C4@sda21(r2) +/* 80198C14 00195B74 D0 3A 03 18 */ stfs f1, 0x318(r26) +/* 80198C18 00195B78 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 80198C1C 00195B7C 38 61 00 48 */ addi r3, r1, 0x48 +/* 80198C20 00195B80 38 A1 00 50 */ addi r5, r1, 0x50 +/* 80198C24 00195B84 C0 24 00 04 */ lfs f1, 4(r4) +/* 80198C28 00195B88 D0 3A 03 1C */ stfs f1, 0x31c(r26) +/* 80198C2C 00195B8C C0 24 00 08 */ lfs f1, 8(r4) +/* 80198C30 00195B90 D0 3A 03 20 */ stfs f1, 0x320(r26) +/* 80198C34 00195B94 C0 24 00 0C */ lfs f1, 0xc(r4) +/* 80198C38 00195B98 D0 3A 03 24 */ stfs f1, 0x324(r26) +/* 80198C3C 00195B9C C0 24 00 10 */ lfs f1, 0x10(r4) +/* 80198C40 00195BA0 D0 3A 03 28 */ stfs f1, 0x328(r26) +/* 80198C44 00195BA4 C0 24 00 14 */ lfs f1, 0x14(r4) +/* 80198C48 00195BA8 D0 3A 03 2C */ stfs f1, 0x32c(r26) +/* 80198C4C 00195BAC D0 1A 03 30 */ stfs f0, 0x330(r26) +/* 80198C50 00195BB0 D0 1A 03 34 */ stfs f0, 0x334(r26) +/* 80198C54 00195BB4 C0 1B 00 10 */ lfs f0, 0x10(r27) +/* 80198C58 00195BB8 D0 1A 03 38 */ stfs f0, 0x338(r26) +/* 80198C5C 00195BBC 80 DB 00 08 */ lwz r6, 8(r27) +/* 80198C60 00195BC0 90 01 00 50 */ stw r0, 0x50(r1) +/* 80198C64 00195BC4 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80198C68 00195BC8 90 C1 00 54 */ stw r6, 0x54(r1) +/* 80198C6C 00195BCC 81 84 00 00 */ lwz r12, 0(r4) +/* 80198C70 00195BD0 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80198C74 00195BD4 7D 89 03 A6 */ mtctr r12 +/* 80198C78 00195BD8 4E 80 04 21 */ bctrl +/* 80198C7C 00195BDC 3A 5A 03 3C */ addi r18, r26, 0x33c +/* 80198C80 00195BE0 38 81 00 48 */ addi r4, r1, 0x48 +/* 80198C84 00195BE4 7E 43 93 78 */ mr r3, r18 +/* 80198C88 00195BE8 48 1A 82 21 */ bl __ct__6CTokenFRC6CToken +/* 80198C8C 00195BEC 7E 43 93 78 */ mr r3, r18 +/* 80198C90 00195BF0 48 1A 81 7D */ bl GetObj__6CTokenFv +/* 80198C94 00195BF4 80 03 00 04 */ lwz r0, 4(r3) +/* 80198C98 00195BF8 38 61 00 48 */ addi r3, r1, 0x48 +/* 80198C9C 00195BFC 38 80 FF FF */ li r4, -1 +/* 80198CA0 00195C00 90 12 00 08 */ stw r0, 8(r18) +/* 80198CA4 00195C04 48 1A 81 9D */ bl __dt__6CTokenFv +/* 80198CA8 00195C08 3C 60 80 3D */ lis r3, lbl_803D1210@ha +/* 80198CAC 00195C0C 3A 60 00 00 */ li r19, 0 +/* 80198CB0 00195C10 38 83 12 10 */ addi r4, r3, lbl_803D1210@l +/* 80198CB4 00195C14 38 A0 00 00 */ li r5, 0 +/* 80198CB8 00195C18 38 60 03 40 */ li r3, 0x340 +/* 80198CBC 00195C1C 48 17 CB B1 */ bl __nw__FUlPCcPCc +/* 80198CC0 00195C20 7C 72 1B 79 */ or. r18, r3, r3 +/* 80198CC4 00195C24 41 82 00 2C */ beq lbl_80198CF0 +/* 80198CC8 00195C28 38 61 00 40 */ addi r3, r1, 0x40 +/* 80198CCC 00195C2C 38 9A 03 3C */ addi r4, r26, 0x33c +/* 80198CD0 00195C30 48 1A 81 D9 */ bl __ct__6CTokenFRC6CToken +/* 80198CD4 00195C34 7E 43 93 78 */ mr r3, r18 +/* 80198CD8 00195C38 38 81 00 40 */ addi r4, r1, 0x40 +/* 80198CDC 00195C3C 3A 60 00 01 */ li r19, 1 +/* 80198CE0 00195C40 38 A0 00 00 */ li r5, 0 +/* 80198CE4 00195C44 38 C0 00 01 */ li r6, 1 +/* 80198CE8 00195C48 48 18 66 F9 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 80198CEC 00195C4C 7C 72 1B 78 */ mr r18, r3 +lbl_80198CF0: +/* 80198CF0 00195C50 7E 60 07 75 */ extsb. r0, r19 +/* 80198CF4 00195C54 92 5A 03 48 */ stw r18, 0x348(r26) +/* 80198CF8 00195C58 41 82 00 10 */ beq lbl_80198D08 +/* 80198CFC 00195C5C 38 61 00 40 */ addi r3, r1, 0x40 +/* 80198D00 00195C60 38 80 00 00 */ li r4, 0 +/* 80198D04 00195C64 48 1A 81 3D */ bl __dt__6CTokenFv +lbl_80198D08: +/* 80198D08 00195C68 80 9B 00 0C */ lwz r4, 0xc(r27) +/* 80198D0C 00195C6C 3C 00 43 30 */ lis r0, 0x4330 +/* 80198D10 00195C70 C0 9C 00 2C */ lfs f4, 0x2c(r28) +/* 80198D14 00195C74 38 7A 03 4C */ addi r3, r26, 0x34c +/* 80198D18 00195C78 6C 84 80 00 */ xoris r4, r4, 0x8000 +/* 80198D1C 00195C7C C0 7C 00 1C */ lfs f3, 0x1c(r28) +/* 80198D20 00195C80 90 81 00 84 */ stw r4, 0x84(r1) +/* 80198D24 00195C84 38 81 00 58 */ addi r4, r1, 0x58 +/* 80198D28 00195C88 C0 5C 00 0C */ lfs f2, 0xc(r28) +/* 80198D2C 00195C8C 90 01 00 80 */ stw r0, 0x80(r1) +/* 80198D30 00195C90 C8 22 A6 B0 */ lfd f1, lbl_805AC3D0@sda21(r2) +/* 80198D34 00195C94 C8 01 00 80 */ lfd f0, 0x80(r1) +/* 80198D38 00195C98 80 BB 00 04 */ lwz r5, 4(r27) +/* 80198D3C 00195C9C EC 20 08 28 */ fsubs f1, f0, f1 +/* 80198D40 00195CA0 D0 41 00 58 */ stfs f2, 0x58(r1) +/* 80198D44 00195CA4 54 A5 F7 FE */ rlwinm r5, r5, 0x1e, 0x1f, 0x1f +/* 80198D48 00195CA8 D0 61 00 5C */ stfs f3, 0x5c(r1) +/* 80198D4C 00195CAC D0 81 00 60 */ stfs f4, 0x60(r1) +/* 80198D50 00195CB0 48 01 C9 D9 */ bl __ct__10CFlameWarpFfRC9CVector3fb +/* 80198D54 00195CB4 38 80 00 00 */ li r4, 0 +/* 80198D58 00195CB8 7F 43 D3 78 */ mr r3, r26 +/* 80198D5C 00195CBC 90 9A 03 F0 */ stw r4, 0x3f0(r26) +/* 80198D60 00195CC0 93 BA 03 F4 */ stw r29, 0x3f4(r26) +/* 80198D64 00195CC4 B3 DA 03 F8 */ sth r30, 0x3f8(r26) +/* 80198D68 00195CC8 93 FA 03 FC */ stw r31, 0x3fc(r26) +/* 80198D6C 00195CCC 88 1A 04 00 */ lbz r0, 0x400(r26) +/* 80198D70 00195CD0 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 80198D74 00195CD4 98 1A 04 00 */ stb r0, 0x400(r26) +/* 80198D78 00195CD8 88 1A 04 00 */ lbz r0, 0x400(r26) +/* 80198D7C 00195CDC 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 80198D80 00195CE0 98 1A 04 00 */ stb r0, 0x400(r26) +/* 80198D84 00195CE4 80 9B 00 04 */ lwz r4, 4(r27) +/* 80198D88 00195CE8 88 1A 04 00 */ lbz r0, 0x400(r26) +/* 80198D8C 00195CEC 54 84 07 FE */ clrlwi r4, r4, 0x1f +/* 80198D90 00195CF0 68 84 00 01 */ xori r4, r4, 1 +/* 80198D94 00195CF4 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 80198D98 00195CF8 98 1A 04 00 */ stb r0, 0x400(r26) +/* 80198D9C 00195CFC 80 9B 00 04 */ lwz r4, 4(r27) +/* 80198DA0 00195D00 88 1A 04 00 */ lbz r0, 0x400(r26) +/* 80198DA4 00195D04 50 80 1E F6 */ rlwimi r0, r4, 3, 0x1b, 0x1b +/* 80198DA8 00195D08 98 1A 04 00 */ stb r0, 0x400(r26) +/* 80198DAC 00195D0C BA 41 00 88 */ lmw r18, 0x88(r1) +/* 80198DB0 00195D10 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 80198DB4 00195D14 7C 08 03 A6 */ mtlr r0 +/* 80198DB8 00195D18 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 80198DBC 00195D1C 4E 80 00 20 */ blr + +.global __sinit_CFlameThrower_cpp +__sinit_CFlameThrower_cpp: +/* 80198DC0 00195D20 C0 42 A6 A4 */ lfs f2, lbl_805AC3C4@sda21(r2) +/* 80198DC4 00195D24 3C 60 80 57 */ lis r3, lbl_8057200C@ha +/* 80198DC8 00195D28 C0 22 A6 C0 */ lfs f1, lbl_805AC3E0@sda21(r2) +/* 80198DCC 00195D2C D4 43 20 0C */ stfsu f2, lbl_8057200C@l(r3) +/* 80198DD0 00195D30 C0 02 A6 C4 */ lfs f0, lbl_805AC3E4@sda21(r2) +/* 80198DD4 00195D34 D0 23 00 04 */ stfs f1, 4(r3) +/* 80198DD8 00195D38 D0 03 00 08 */ stfs f0, 8(r3) +/* 80198DDC 00195D3C 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Weapons/CIceImpact.s b/asm/Kyoto_CWD/Weapons/CIceImpact.s new file mode 100644 index 00000000..378b40f6 --- /dev/null +++ b/asm/Kyoto_CWD/Weapons/CIceImpact.s @@ -0,0 +1,2846 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global SubdivideAndGenerateParticles__10CIceImpactFR13CStateManagerRC9CVector3fRC9CVector3fRC9CVector3fRC7CSphereRC7CSphere +SubdivideAndGenerateParticles__10CIceImpactFR13CStateManagerRC9CVector3fRC9CVector3fRC9CVector3fRC7CSphereRC7CSphere: +/* 801B5BA4 001B2B04 94 21 FE 50 */ stwu r1, -0x1b0(r1) +/* 801B5BA8 001B2B08 7C 08 02 A6 */ mflr r0 +/* 801B5BAC 001B2B0C 90 01 01 B4 */ stw r0, 0x1b4(r1) +/* 801B5BB0 001B2B10 DB E1 01 A0 */ stfd f31, 0x1a0(r1) +/* 801B5BB4 001B2B14 F3 E1 01 A8 */ psq_st f31, 424(r1), 0, qr0 +/* 801B5BB8 001B2B18 DB C1 01 90 */ stfd f30, 0x190(r1) +/* 801B5BBC 001B2B1C F3 C1 01 98 */ psq_st f30, 408(r1), 0, qr0 +/* 801B5BC0 001B2B20 DB A1 01 80 */ stfd f29, 0x180(r1) +/* 801B5BC4 001B2B24 F3 A1 01 88 */ psq_st f29, 392(r1), 0, qr0 +/* 801B5BC8 001B2B28 DB 81 01 70 */ stfd f28, 0x170(r1) +/* 801B5BCC 001B2B2C F3 81 01 78 */ psq_st f28, 376(r1), 0, qr0 +/* 801B5BD0 001B2B30 DB 61 01 60 */ stfd f27, 0x160(r1) +/* 801B5BD4 001B2B34 F3 61 01 68 */ psq_st f27, 360(r1), 0, qr0 +/* 801B5BD8 001B2B38 DB 41 01 50 */ stfd f26, 0x150(r1) +/* 801B5BDC 001B2B3C F3 41 01 58 */ psq_st f26, 344(r1), 0, qr0 +/* 801B5BE0 001B2B40 BE A1 01 24 */ stmw r21, 0x124(r1) +/* 801B5BE4 001B2B44 7C B8 2B 78 */ mr r24, r5 +/* 801B5BE8 001B2B48 7C D9 33 78 */ mr r25, r6 +/* 801B5BEC 001B2B4C 7C FA 3B 78 */ mr r26, r7 +/* 801B5BF0 001B2B50 7C 97 23 78 */ mr r23, r4 +/* 801B5BF4 001B2B54 7D 1B 43 78 */ mr r27, r8 +/* 801B5BF8 001B2B58 7C 76 1B 78 */ mr r22, r3 +/* 801B5BFC 001B2B5C 7D 3C 4B 78 */ mr r28, r9 +/* 801B5C00 001B2B60 7F 04 C3 78 */ mr r4, r24 +/* 801B5C04 001B2B64 7F 63 DB 78 */ mr r3, r27 +/* 801B5C08 001B2B68 7F 25 CB 78 */ mr r5, r25 +/* 801B5C0C 001B2B6C 7F 46 D3 78 */ mr r6, r26 +/* 801B5C10 001B2B70 48 11 A8 31 */ bl TriSphereOverlap__13CollisionUtilFRC7CSphereRC9CVector3fRC9CVector3fRC9CVector3f +/* 801B5C14 001B2B74 54 60 06 3E */ clrlwi r0, r3, 0x18 +/* 801B5C18 001B2B78 28 00 00 01 */ cmplwi r0, 1 +/* 801B5C1C 001B2B7C 40 82 05 9C */ bne lbl_801B61B8 +/* 801B5C20 001B2B80 7F 83 E3 78 */ mr r3, r28 +/* 801B5C24 001B2B84 7F 04 C3 78 */ mr r4, r24 +/* 801B5C28 001B2B88 48 00 0F 9D */ bl pointInSphere__FRC7CSphereRC9CVector3f +/* 801B5C2C 001B2B8C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B5C30 001B2B90 41 82 00 34 */ beq lbl_801B5C64 +/* 801B5C34 001B2B94 7F 83 E3 78 */ mr r3, r28 +/* 801B5C38 001B2B98 7F 24 CB 78 */ mr r4, r25 +/* 801B5C3C 001B2B9C 48 00 0F 89 */ bl pointInSphere__FRC7CSphereRC9CVector3f +/* 801B5C40 001B2BA0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B5C44 001B2BA4 41 82 00 20 */ beq lbl_801B5C64 +/* 801B5C48 001B2BA8 7F 83 E3 78 */ mr r3, r28 +/* 801B5C4C 001B2BAC 7F 44 D3 78 */ mr r4, r26 +/* 801B5C50 001B2BB0 48 00 0F 75 */ bl pointInSphere__FRC7CSphereRC9CVector3f +/* 801B5C54 001B2BB4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B5C58 001B2BB8 41 82 00 0C */ beq lbl_801B5C64 +/* 801B5C5C 001B2BBC 38 60 00 00 */ li r3, 0 +/* 801B5C60 001B2BC0 48 00 05 5C */ b lbl_801B61BC +lbl_801B5C64: +/* 801B5C64 001B2BC4 C0 59 00 00 */ lfs f2, 0(r25) +/* 801B5C68 001B2BC8 38 61 00 74 */ addi r3, r1, 0x74 +/* 801B5C6C 001B2BCC C0 78 00 00 */ lfs f3, 0(r24) +/* 801B5C70 001B2BD0 C0 1A 00 00 */ lfs f0, 0(r26) +/* 801B5C74 001B2BD4 C0 39 00 04 */ lfs f1, 4(r25) +/* 801B5C78 001B2BD8 EC A2 18 28 */ fsubs f5, f2, f3 +/* 801B5C7C 001B2BDC C0 58 00 04 */ lfs f2, 4(r24) +/* 801B5C80 001B2BE0 ED 00 18 28 */ fsubs f8, f0, f3 +/* 801B5C84 001B2BE4 C0 1A 00 04 */ lfs f0, 4(r26) +/* 801B5C88 001B2BE8 EC 81 10 28 */ fsubs f4, f1, f2 +/* 801B5C8C 001B2BEC C0 39 00 08 */ lfs f1, 8(r25) +/* 801B5C90 001B2BF0 C0 D8 00 08 */ lfs f6, 8(r24) +/* 801B5C94 001B2BF4 EC E0 10 28 */ fsubs f7, f0, f2 +/* 801B5C98 001B2BF8 C0 1A 00 08 */ lfs f0, 8(r26) +/* 801B5C9C 001B2BFC EC 61 30 28 */ fsubs f3, f1, f6 +/* 801B5CA0 001B2C00 EC C0 30 28 */ fsubs f6, f0, f6 +/* 801B5CA4 001B2C04 EC 08 01 32 */ fmuls f0, f8, f4 +/* 801B5CA8 001B2C08 EC 47 00 F2 */ fmuls f2, f7, f3 +/* 801B5CAC 001B2C0C EC 26 01 72 */ fmuls f1, f6, f5 +/* 801B5CB0 001B2C10 EF 85 01 F8 */ fmsubs f28, f5, f7, f0 +/* 801B5CB4 001B2C14 EF C4 11 B8 */ fmsubs f30, f4, f6, f2 +/* 801B5CB8 001B2C18 EF A3 0A 38 */ fmsubs f29, f3, f8, f1 +/* 801B5CBC 001B2C1C D3 81 00 7C */ stfs f28, 0x7c(r1) +/* 801B5CC0 001B2C20 D3 C1 00 74 */ stfs f30, 0x74(r1) +/* 801B5CC4 001B2C24 D3 A1 00 78 */ stfs f29, 0x78(r1) +/* 801B5CC8 001B2C28 48 15 EB F1 */ bl Magnitude__9CVector3fCFv +/* 801B5CCC 001B2C2C C3 E2 A9 68 */ lfs f31, lbl_805AC688@sda21(r2) +/* 801B5CD0 001B2C30 FC 01 F8 40 */ fcmpo cr0, f1, f31 +/* 801B5CD4 001B2C34 40 81 00 A8 */ ble lbl_801B5D7C +/* 801B5CD8 001B2C38 C0 02 A9 6C */ lfs f0, lbl_805AC68C@sda21(r2) +/* 801B5CDC 001B2C3C 7F 04 C3 78 */ mr r4, r24 +/* 801B5CE0 001B2C40 7F 25 CB 78 */ mr r5, r25 +/* 801B5CE4 001B2C44 7F 46 D3 78 */ mr r6, r26 +/* 801B5CE8 001B2C48 D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 801B5CEC 001B2C4C 38 61 00 68 */ addi r3, r1, 0x68 +/* 801B5CF0 001B2C50 38 E1 00 5C */ addi r7, r1, 0x5c +/* 801B5CF4 001B2C54 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 801B5CF8 001B2C58 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 801B5CFC 001B2C5C 48 15 F1 A1 */ bl BaryToWorld__5CMathFRC9CVector3fRC9CVector3fRC9CVector3fRC9CVector3f +/* 801B5D00 001B2C60 C0 41 00 68 */ lfs f2, 0x68(r1) +/* 801B5D04 001B2C64 7E C3 B3 78 */ mr r3, r22 +/* 801B5D08 001B2C68 C0 21 00 6C */ lfs f1, 0x6c(r1) +/* 801B5D0C 001B2C6C 7E E4 BB 78 */ mr r4, r23 +/* 801B5D10 001B2C70 C0 01 00 70 */ lfs f0, 0x70(r1) +/* 801B5D14 001B2C74 7F 05 C3 78 */ mr r5, r24 +/* 801B5D18 001B2C78 D0 41 00 A4 */ stfs f2, 0xa4(r1) +/* 801B5D1C 001B2C7C 7F 26 CB 78 */ mr r6, r25 +/* 801B5D20 001B2C80 7F 68 DB 78 */ mr r8, r27 +/* 801B5D24 001B2C84 7F 89 E3 78 */ mr r9, r28 +/* 801B5D28 001B2C88 D0 21 00 A8 */ stfs f1, 0xa8(r1) +/* 801B5D2C 001B2C8C 38 E1 00 A4 */ addi r7, r1, 0xa4 +/* 801B5D30 001B2C90 D0 01 00 AC */ stfs f0, 0xac(r1) +/* 801B5D34 001B2C94 4B FF FE 71 */ bl SubdivideAndGenerateParticles__10CIceImpactFR13CStateManagerRC9CVector3fRC9CVector3fRC9CVector3fRC7CSphereRC7CSphere +/* 801B5D38 001B2C98 7E C3 B3 78 */ mr r3, r22 +/* 801B5D3C 001B2C9C 7E E4 BB 78 */ mr r4, r23 +/* 801B5D40 001B2CA0 7F 25 CB 78 */ mr r5, r25 +/* 801B5D44 001B2CA4 7F 46 D3 78 */ mr r6, r26 +/* 801B5D48 001B2CA8 7F 68 DB 78 */ mr r8, r27 +/* 801B5D4C 001B2CAC 7F 89 E3 78 */ mr r9, r28 +/* 801B5D50 001B2CB0 38 E1 00 A4 */ addi r7, r1, 0xa4 +/* 801B5D54 001B2CB4 4B FF FE 51 */ bl SubdivideAndGenerateParticles__10CIceImpactFR13CStateManagerRC9CVector3fRC9CVector3fRC9CVector3fRC7CSphereRC7CSphere +/* 801B5D58 001B2CB8 7E C3 B3 78 */ mr r3, r22 +/* 801B5D5C 001B2CBC 7E E4 BB 78 */ mr r4, r23 +/* 801B5D60 001B2CC0 7F 45 D3 78 */ mr r5, r26 +/* 801B5D64 001B2CC4 7F 06 C3 78 */ mr r6, r24 +/* 801B5D68 001B2CC8 7F 68 DB 78 */ mr r8, r27 +/* 801B5D6C 001B2CCC 7F 89 E3 78 */ mr r9, r28 +/* 801B5D70 001B2CD0 38 E1 00 A4 */ addi r7, r1, 0xa4 +/* 801B5D74 001B2CD4 4B FF FE 31 */ bl SubdivideAndGenerateParticles__10CIceImpactFR13CStateManagerRC9CVector3fRC9CVector3fRC9CVector3fRC7CSphereRC7CSphere +/* 801B5D78 001B2CD8 48 00 04 40 */ b lbl_801B61B8 +lbl_801B5D7C: +/* 801B5D7C 001B2CDC C0 16 01 04 */ lfs f0, 0x104(r22) +/* 801B5D80 001B2CE0 3C 00 43 30 */ lis r0, 0x4330 +/* 801B5D84 001B2CE4 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801B5D88 001B2CE8 90 01 01 18 */ stw r0, 0x118(r1) +/* 801B5D8C 001B2CEC EC 00 08 2A */ fadds f0, f0, f1 +/* 801B5D90 001B2CF0 C8 22 A9 78 */ lfd f1, lbl_805AC698@sda21(r2) +/* 801B5D94 001B2CF4 3B E3 66 A0 */ addi r31, r3, skZero3f@l +/* 801B5D98 001B2CF8 3B A0 00 00 */ li r29, 0 +/* 801B5D9C 001B2CFC D0 16 01 04 */ stfs f0, 0x104(r22) +/* 801B5DA0 001B2D00 C0 56 01 04 */ lfs f2, 0x104(r22) +/* 801B5DA4 001B2D04 FC 00 10 1E */ fctiwz f0, f2 +/* 801B5DA8 001B2D08 D8 01 01 10 */ stfd f0, 0x110(r1) +/* 801B5DAC 001B2D0C 83 C1 01 14 */ lwz r30, 0x114(r1) +/* 801B5DB0 001B2D10 6F C0 80 00 */ xoris r0, r30, 0x8000 +/* 801B5DB4 001B2D14 90 01 01 1C */ stw r0, 0x11c(r1) +/* 801B5DB8 001B2D18 C8 01 01 18 */ lfd f0, 0x118(r1) +/* 801B5DBC 001B2D1C EC 00 08 28 */ fsubs f0, f0, f1 +/* 801B5DC0 001B2D20 EC 02 00 28 */ fsubs f0, f2, f0 +/* 801B5DC4 001B2D24 D0 16 01 04 */ stfs f0, 0x104(r22) +/* 801B5DC8 001B2D28 48 00 03 E8 */ b lbl_801B61B0 +lbl_801B5DCC: +/* 801B5DCC 001B2D2C 80 77 09 00 */ lwz r3, 0x900(r23) +/* 801B5DD0 001B2D30 48 15 C7 0D */ bl Float__9CRandom16Fv +/* 801B5DD4 001B2D34 FF 40 08 90 */ fmr f26, f1 +/* 801B5DD8 001B2D38 80 77 09 00 */ lwz r3, 0x900(r23) +/* 801B5DDC 001B2D3C 48 15 C7 01 */ bl Float__9CRandom16Fv +/* 801B5DE0 001B2D40 FF 60 08 90 */ fmr f27, f1 +/* 801B5DE4 001B2D44 80 77 09 00 */ lwz r3, 0x900(r23) +/* 801B5DE8 001B2D48 48 15 C6 F5 */ bl Float__9CRandom16Fv +/* 801B5DEC 001B2D4C EC 1A D8 2A */ fadds f0, f26, f27 +/* 801B5DF0 001B2D50 7F 04 C3 78 */ mr r4, r24 +/* 801B5DF4 001B2D54 7F 25 CB 78 */ mr r5, r25 +/* 801B5DF8 001B2D58 7F 46 D3 78 */ mr r6, r26 +/* 801B5DFC 001B2D5C 38 61 00 50 */ addi r3, r1, 0x50 +/* 801B5E00 001B2D60 38 E1 00 44 */ addi r7, r1, 0x44 +/* 801B5E04 001B2D64 EC 01 00 2A */ fadds f0, f1, f0 +/* 801B5E08 001B2D68 EC 7F 00 24 */ fdivs f3, f31, f0 +/* 801B5E0C 001B2D6C EC 1A 00 F2 */ fmuls f0, f26, f3 +/* 801B5E10 001B2D70 EC 5B 00 F2 */ fmuls f2, f27, f3 +/* 801B5E14 001B2D74 EC 21 00 F2 */ fmuls f1, f1, f3 +/* 801B5E18 001B2D78 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 801B5E1C 001B2D7C D0 41 00 48 */ stfs f2, 0x48(r1) +/* 801B5E20 001B2D80 D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 801B5E24 001B2D84 48 15 F0 79 */ bl BaryToWorld__5CMathFRC9CVector3fRC9CVector3fRC9CVector3fRC9CVector3f +/* 801B5E28 001B2D88 C0 41 00 50 */ lfs f2, 0x50(r1) +/* 801B5E2C 001B2D8C 7F 83 E3 78 */ mr r3, r28 +/* 801B5E30 001B2D90 C0 21 00 54 */ lfs f1, 0x54(r1) +/* 801B5E34 001B2D94 38 81 00 98 */ addi r4, r1, 0x98 +/* 801B5E38 001B2D98 C0 01 00 58 */ lfs f0, 0x58(r1) +/* 801B5E3C 001B2D9C D0 41 00 98 */ stfs f2, 0x98(r1) +/* 801B5E40 001B2DA0 D0 21 00 9C */ stfs f1, 0x9c(r1) +/* 801B5E44 001B2DA4 D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 801B5E48 001B2DA8 48 00 0D 7D */ bl pointInSphere__FRC7CSphereRC9CVector3f +/* 801B5E4C 001B2DAC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B5E50 001B2DB0 40 82 03 5C */ bne lbl_801B61AC +/* 801B5E54 001B2DB4 7F 63 DB 78 */ mr r3, r27 +/* 801B5E58 001B2DB8 38 81 00 98 */ addi r4, r1, 0x98 +/* 801B5E5C 001B2DBC 48 00 0D 69 */ bl pointInSphere__FRC7CSphereRC9CVector3f +/* 801B5E60 001B2DC0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B5E64 001B2DC4 41 82 03 48 */ beq lbl_801B61AC +/* 801B5E68 001B2DC8 38 76 01 18 */ addi r3, r22, 0x118 +/* 801B5E6C 001B2DCC 38 81 00 98 */ addi r4, r1, 0x98 +/* 801B5E70 001B2DD0 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801B5E74 001B2DD4 38 C1 00 0C */ addi r6, r1, 0xc +/* 801B5E78 001B2DD8 38 E1 00 08 */ addi r7, r1, 8 +/* 801B5E7C 001B2DDC 48 00 23 FD */ bl GetCoords__11CMarkerGridCFRC9CVector3fRUiRUiRUi +/* 801B5E80 001B2DE0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B5E84 001B2DE4 41 82 03 28 */ beq lbl_801B61AC +/* 801B5E88 001B2DE8 80 81 00 10 */ lwz r4, 0x10(r1) +/* 801B5E8C 001B2DEC 38 76 01 18 */ addi r3, r22, 0x118 +/* 801B5E90 001B2DF0 80 A1 00 0C */ lwz r5, 0xc(r1) +/* 801B5E94 001B2DF4 80 C1 00 08 */ lwz r6, 8(r1) +/* 801B5E98 001B2DF8 48 00 24 99 */ bl GetValue__11CMarkerGridCFUiUiUi +/* 801B5E9C 001B2DFC 54 60 07 FF */ clrlwi. r0, r3, 0x1f +/* 801B5EA0 001B2E00 40 82 03 0C */ bne lbl_801B61AC +/* 801B5EA4 001B2E04 80 81 00 10 */ lwz r4, 0x10(r1) +/* 801B5EA8 001B2E08 38 76 01 18 */ addi r3, r22, 0x118 +/* 801B5EAC 001B2E0C 80 A1 00 0C */ lwz r5, 0xc(r1) +/* 801B5EB0 001B2E10 38 E0 00 01 */ li r7, 1 +/* 801B5EB4 001B2E14 80 C1 00 08 */ lwz r6, 8(r1) +/* 801B5EB8 001B2E18 48 00 23 85 */ bl SetValue__11CMarkerGridFUiUiUiUi +/* 801B5EBC 001B2E1C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801B5EC0 001B2E20 C0 3F 00 04 */ lfs f1, 4(r31) +/* 801B5EC4 001B2E24 C0 1F 00 08 */ lfs f0, 8(r31) +/* 801B5EC8 001B2E28 38 80 00 00 */ li r4, 0 +/* 801B5ECC 001B2E2C C0 43 66 A0 */ lfs f2, skZero3f@l(r3) +/* 801B5ED0 001B2E30 38 A0 00 02 */ li r5, 2 +/* 801B5ED4 001B2E34 D0 21 00 90 */ stfs f1, 0x90(r1) +/* 801B5ED8 001B2E38 D0 41 00 8C */ stfs f2, 0x8c(r1) +/* 801B5EDC 001B2E3C D0 01 00 94 */ stfs f0, 0x94(r1) +/* 801B5EE0 001B2E40 80 77 09 00 */ lwz r3, 0x900(r23) +/* 801B5EE4 001B2E44 48 15 C6 B1 */ bl Range__9CRandom16Fii +/* 801B5EE8 001B2E48 2C 03 00 01 */ cmpwi r3, 1 +/* 801B5EEC 001B2E4C 41 82 00 94 */ beq lbl_801B5F80 +/* 801B5EF0 001B2E50 40 80 00 10 */ bge lbl_801B5F00 +/* 801B5EF4 001B2E54 2C 03 00 00 */ cmpwi r3, 0 +/* 801B5EF8 001B2E58 40 80 00 14 */ bge lbl_801B5F0C +/* 801B5EFC 001B2E5C 48 00 01 68 */ b lbl_801B6064 +lbl_801B5F00: +/* 801B5F00 001B2E60 2C 03 00 03 */ cmpwi r3, 3 +/* 801B5F04 001B2E64 40 80 01 60 */ bge lbl_801B6064 +/* 801B5F08 001B2E68 48 00 00 EC */ b lbl_801B5FF4 +lbl_801B5F0C: +/* 801B5F0C 001B2E6C C0 38 00 04 */ lfs f1, 4(r24) +/* 801B5F10 001B2E70 38 61 00 8C */ addi r3, r1, 0x8c +/* 801B5F14 001B2E74 C0 01 00 9C */ lfs f0, 0x9c(r1) +/* 801B5F18 001B2E78 C0 78 00 08 */ lfs f3, 8(r24) +/* 801B5F1C 001B2E7C C0 41 00 A0 */ lfs f2, 0xa0(r1) +/* 801B5F20 001B2E80 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801B5F24 001B2E84 C0 38 00 00 */ lfs f1, 0(r24) +/* 801B5F28 001B2E88 C0 01 00 98 */ lfs f0, 0x98(r1) +/* 801B5F2C 001B2E8C EC 43 10 28 */ fsubs f2, f3, f2 +/* 801B5F30 001B2E90 D0 81 00 90 */ stfs f4, 0x90(r1) +/* 801B5F34 001B2E94 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801B5F38 001B2E98 D0 41 00 94 */ stfs f2, 0x94(r1) +/* 801B5F3C 001B2E9C D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 801B5F40 001B2EA0 48 15 E7 B9 */ bl CanBeNormalized__9CVector3fCFv +/* 801B5F44 001B2EA4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B5F48 001B2EA8 40 82 01 1C */ bne lbl_801B6064 +/* 801B5F4C 001B2EAC C0 39 00 04 */ lfs f1, 4(r25) +/* 801B5F50 001B2EB0 C0 01 00 9C */ lfs f0, 0x9c(r1) +/* 801B5F54 001B2EB4 C0 79 00 08 */ lfs f3, 8(r25) +/* 801B5F58 001B2EB8 C0 41 00 A0 */ lfs f2, 0xa0(r1) +/* 801B5F5C 001B2EBC EC 81 00 28 */ fsubs f4, f1, f0 +/* 801B5F60 001B2EC0 C0 39 00 00 */ lfs f1, 0(r25) +/* 801B5F64 001B2EC4 C0 01 00 98 */ lfs f0, 0x98(r1) +/* 801B5F68 001B2EC8 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801B5F6C 001B2ECC D0 81 00 90 */ stfs f4, 0x90(r1) +/* 801B5F70 001B2ED0 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801B5F74 001B2ED4 D0 41 00 94 */ stfs f2, 0x94(r1) +/* 801B5F78 001B2ED8 D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 801B5F7C 001B2EDC 48 00 00 E8 */ b lbl_801B6064 +lbl_801B5F80: +/* 801B5F80 001B2EE0 C0 39 00 04 */ lfs f1, 4(r25) +/* 801B5F84 001B2EE4 38 61 00 8C */ addi r3, r1, 0x8c +/* 801B5F88 001B2EE8 C0 01 00 9C */ lfs f0, 0x9c(r1) +/* 801B5F8C 001B2EEC C0 79 00 08 */ lfs f3, 8(r25) +/* 801B5F90 001B2EF0 C0 41 00 A0 */ lfs f2, 0xa0(r1) +/* 801B5F94 001B2EF4 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801B5F98 001B2EF8 C0 39 00 00 */ lfs f1, 0(r25) +/* 801B5F9C 001B2EFC C0 01 00 98 */ lfs f0, 0x98(r1) +/* 801B5FA0 001B2F00 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801B5FA4 001B2F04 D0 81 00 90 */ stfs f4, 0x90(r1) +/* 801B5FA8 001B2F08 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801B5FAC 001B2F0C D0 41 00 94 */ stfs f2, 0x94(r1) +/* 801B5FB0 001B2F10 D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 801B5FB4 001B2F14 48 15 E7 45 */ bl CanBeNormalized__9CVector3fCFv +/* 801B5FB8 001B2F18 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B5FBC 001B2F1C 40 82 00 A8 */ bne lbl_801B6064 +/* 801B5FC0 001B2F20 C0 3A 00 04 */ lfs f1, 4(r26) +/* 801B5FC4 001B2F24 C0 01 00 9C */ lfs f0, 0x9c(r1) +/* 801B5FC8 001B2F28 C0 7A 00 08 */ lfs f3, 8(r26) +/* 801B5FCC 001B2F2C C0 41 00 A0 */ lfs f2, 0xa0(r1) +/* 801B5FD0 001B2F30 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801B5FD4 001B2F34 C0 3A 00 00 */ lfs f1, 0(r26) +/* 801B5FD8 001B2F38 C0 01 00 98 */ lfs f0, 0x98(r1) +/* 801B5FDC 001B2F3C EC 43 10 28 */ fsubs f2, f3, f2 +/* 801B5FE0 001B2F40 D0 81 00 90 */ stfs f4, 0x90(r1) +/* 801B5FE4 001B2F44 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801B5FE8 001B2F48 D0 41 00 94 */ stfs f2, 0x94(r1) +/* 801B5FEC 001B2F4C D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 801B5FF0 001B2F50 48 00 00 74 */ b lbl_801B6064 +lbl_801B5FF4: +/* 801B5FF4 001B2F54 C0 3A 00 04 */ lfs f1, 4(r26) +/* 801B5FF8 001B2F58 38 61 00 8C */ addi r3, r1, 0x8c +/* 801B5FFC 001B2F5C C0 01 00 9C */ lfs f0, 0x9c(r1) +/* 801B6000 001B2F60 C0 7A 00 08 */ lfs f3, 8(r26) +/* 801B6004 001B2F64 C0 41 00 A0 */ lfs f2, 0xa0(r1) +/* 801B6008 001B2F68 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801B600C 001B2F6C C0 3A 00 00 */ lfs f1, 0(r26) +/* 801B6010 001B2F70 C0 01 00 98 */ lfs f0, 0x98(r1) +/* 801B6014 001B2F74 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801B6018 001B2F78 D0 81 00 90 */ stfs f4, 0x90(r1) +/* 801B601C 001B2F7C EC 01 00 28 */ fsubs f0, f1, f0 +/* 801B6020 001B2F80 D0 41 00 94 */ stfs f2, 0x94(r1) +/* 801B6024 001B2F84 D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 801B6028 001B2F88 48 15 E6 D1 */ bl CanBeNormalized__9CVector3fCFv +/* 801B602C 001B2F8C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B6030 001B2F90 40 82 00 34 */ bne lbl_801B6064 +/* 801B6034 001B2F94 C0 38 00 04 */ lfs f1, 4(r24) +/* 801B6038 001B2F98 C0 01 00 9C */ lfs f0, 0x9c(r1) +/* 801B603C 001B2F9C C0 78 00 08 */ lfs f3, 8(r24) +/* 801B6040 001B2FA0 C0 41 00 A0 */ lfs f2, 0xa0(r1) +/* 801B6044 001B2FA4 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801B6048 001B2FA8 C0 38 00 00 */ lfs f1, 0(r24) +/* 801B604C 001B2FAC C0 01 00 98 */ lfs f0, 0x98(r1) +/* 801B6050 001B2FB0 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801B6054 001B2FB4 D0 81 00 90 */ stfs f4, 0x90(r1) +/* 801B6058 001B2FB8 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801B605C 001B2FBC D0 41 00 94 */ stfs f2, 0x94(r1) +/* 801B6060 001B2FC0 D0 01 00 8C */ stfs f0, 0x8c(r1) +lbl_801B6064: +/* 801B6064 001B2FC4 38 61 00 38 */ addi r3, r1, 0x38 +/* 801B6068 001B2FC8 38 81 00 8C */ addi r4, r1, 0x8c +/* 801B606C 001B2FCC 48 15 E7 E5 */ bl AsNormalized__9CVector3fCFv +/* 801B6070 001B2FD0 C0 41 00 38 */ lfs f2, 0x38(r1) +/* 801B6074 001B2FD4 38 61 00 2C */ addi r3, r1, 0x2c +/* 801B6078 001B2FD8 C0 21 00 3C */ lfs f1, 0x3c(r1) +/* 801B607C 001B2FDC 38 81 00 20 */ addi r4, r1, 0x20 +/* 801B6080 001B2FE0 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 801B6084 001B2FE4 D0 41 00 8C */ stfs f2, 0x8c(r1) +/* 801B6088 001B2FE8 D0 21 00 90 */ stfs f1, 0x90(r1) +/* 801B608C 001B2FEC D0 01 00 94 */ stfs f0, 0x94(r1) +/* 801B6090 001B2FF0 D3 C1 00 20 */ stfs f30, 0x20(r1) +/* 801B6094 001B2FF4 D3 A1 00 24 */ stfs f29, 0x24(r1) +/* 801B6098 001B2FF8 D3 81 00 28 */ stfs f28, 0x28(r1) +/* 801B609C 001B2FFC 48 15 E7 B5 */ bl AsNormalized__9CVector3fCFv +/* 801B60A0 001B3000 C0 41 00 2C */ lfs f2, 0x2c(r1) +/* 801B60A4 001B3004 C0 21 00 30 */ lfs f1, 0x30(r1) +/* 801B60A8 001B3008 C0 01 00 34 */ lfs f0, 0x34(r1) +/* 801B60AC 001B300C D0 41 00 80 */ stfs f2, 0x80(r1) +/* 801B60B0 001B3010 D0 21 00 84 */ stfs f1, 0x84(r1) +/* 801B60B4 001B3014 D0 01 00 88 */ stfs f0, 0x88(r1) +/* 801B60B8 001B3018 80 77 09 00 */ lwz r3, 0x900(r23) +/* 801B60BC 001B301C 48 15 C4 21 */ bl Float__9CRandom16Fv +/* 801B60C0 001B3020 C0 02 A9 74 */ lfs f0, lbl_805AC694@sda21(r2) +/* 801B60C4 001B3024 C0 42 A9 70 */ lfs f2, lbl_805AC690@sda21(r2) +/* 801B60C8 001B3028 EC 21 00 28 */ fsubs f1, f1, f0 +/* 801B60CC 001B302C C0 01 00 80 */ lfs f0, 0x80(r1) +/* 801B60D0 001B3030 EC 02 00 7A */ fmadds f0, f2, f1, f0 +/* 801B60D4 001B3034 D0 01 00 80 */ stfs f0, 0x80(r1) +/* 801B60D8 001B3038 80 77 09 00 */ lwz r3, 0x900(r23) +/* 801B60DC 001B303C 48 15 C4 01 */ bl Float__9CRandom16Fv +/* 801B60E0 001B3040 C0 02 A9 74 */ lfs f0, lbl_805AC694@sda21(r2) +/* 801B60E4 001B3044 C0 42 A9 70 */ lfs f2, lbl_805AC690@sda21(r2) +/* 801B60E8 001B3048 EC 21 00 28 */ fsubs f1, f1, f0 +/* 801B60EC 001B304C C0 01 00 84 */ lfs f0, 0x84(r1) +/* 801B60F0 001B3050 EC 02 00 7A */ fmadds f0, f2, f1, f0 +/* 801B60F4 001B3054 D0 01 00 84 */ stfs f0, 0x84(r1) +/* 801B60F8 001B3058 80 77 09 00 */ lwz r3, 0x900(r23) +/* 801B60FC 001B305C 48 15 C3 E1 */ bl Float__9CRandom16Fv +/* 801B6100 001B3060 C0 02 A9 74 */ lfs f0, lbl_805AC694@sda21(r2) +/* 801B6104 001B3064 38 61 00 14 */ addi r3, r1, 0x14 +/* 801B6108 001B3068 C0 42 A9 70 */ lfs f2, lbl_805AC690@sda21(r2) +/* 801B610C 001B306C 38 81 00 80 */ addi r4, r1, 0x80 +/* 801B6110 001B3070 EC 21 00 28 */ fsubs f1, f1, f0 +/* 801B6114 001B3074 C0 01 00 88 */ lfs f0, 0x88(r1) +/* 801B6118 001B3078 EC 02 00 7A */ fmadds f0, f2, f1, f0 +/* 801B611C 001B307C D0 01 00 88 */ stfs f0, 0x88(r1) +/* 801B6120 001B3080 48 15 E7 31 */ bl AsNormalized__9CVector3fCFv +/* 801B6124 001B3084 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801B6128 001B3088 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 801B612C 001B308C 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 801B6130 001B3090 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801B6134 001B3094 38 C1 00 8C */ addi r6, r1, 0x8c +/* 801B6138 001B3098 48 15 D9 D9 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 801B613C 001B309C 38 61 00 E0 */ addi r3, r1, 0xe0 +/* 801B6140 001B30A0 38 81 00 B0 */ addi r4, r1, 0xb0 +/* 801B6144 001B30A4 48 15 CA 31 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801B6148 001B30A8 80 76 00 E8 */ lwz r3, 0xe8(r22) +/* 801B614C 001B30AC 38 81 00 E0 */ addi r4, r1, 0xe0 +/* 801B6150 001B30B0 81 83 00 00 */ lwz r12, 0(r3) +/* 801B6154 001B30B4 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 801B6158 001B30B8 7D 89 03 A6 */ mtctr r12 +/* 801B615C 001B30BC 4E 80 04 21 */ bctrl +/* 801B6160 001B30C0 80 76 00 E8 */ lwz r3, 0xe8(r22) +/* 801B6164 001B30C4 38 81 00 98 */ addi r4, r1, 0x98 +/* 801B6168 001B30C8 81 83 00 00 */ lwz r12, 0(r3) +/* 801B616C 001B30CC 81 8C 00 18 */ lwz r12, 0x18(r12) +/* 801B6170 001B30D0 7D 89 03 A6 */ mtctr r12 +/* 801B6174 001B30D4 4E 80 04 21 */ bctrl +/* 801B6178 001B30D8 80 76 00 E8 */ lwz r3, 0xe8(r22) +/* 801B617C 001B30DC 38 80 00 01 */ li r4, 1 +/* 801B6180 001B30E0 48 16 67 41 */ bl ForceParticleCreation__11CElementGenFi +/* 801B6184 001B30E4 80 76 00 E8 */ lwz r3, 0xe8(r22) +/* 801B6188 001B30E8 81 83 00 00 */ lwz r12, 0(r3) +/* 801B618C 001B30EC 82 A3 00 90 */ lwz r21, 0x90(r3) +/* 801B6190 001B30F0 81 8C 00 60 */ lwz r12, 0x60(r12) +/* 801B6194 001B30F4 7D 89 03 A6 */ mtctr r12 +/* 801B6198 001B30F8 4E 80 04 21 */ bctrl +/* 801B619C 001B30FC 7C 03 A8 00 */ cmpw r3, r21 +/* 801B61A0 001B3100 40 82 00 0C */ bne lbl_801B61AC +/* 801B61A4 001B3104 38 60 00 01 */ li r3, 1 +/* 801B61A8 001B3108 48 00 00 14 */ b lbl_801B61BC +lbl_801B61AC: +/* 801B61AC 001B310C 3B BD 00 01 */ addi r29, r29, 1 +lbl_801B61B0: +/* 801B61B0 001B3110 7C 1D F0 00 */ cmpw r29, r30 +/* 801B61B4 001B3114 41 80 FC 18 */ blt lbl_801B5DCC +lbl_801B61B8: +/* 801B61B8 001B3118 38 60 00 00 */ li r3, 0 +lbl_801B61BC: +/* 801B61BC 001B311C E3 E1 01 A8 */ psq_l f31, 424(r1), 0, qr0 +/* 801B61C0 001B3120 CB E1 01 A0 */ lfd f31, 0x1a0(r1) +/* 801B61C4 001B3124 E3 C1 01 98 */ psq_l f30, 408(r1), 0, qr0 +/* 801B61C8 001B3128 CB C1 01 90 */ lfd f30, 0x190(r1) +/* 801B61CC 001B312C E3 A1 01 88 */ psq_l f29, 392(r1), 0, qr0 +/* 801B61D0 001B3130 CB A1 01 80 */ lfd f29, 0x180(r1) +/* 801B61D4 001B3134 E3 81 01 78 */ psq_l f28, 376(r1), 0, qr0 +/* 801B61D8 001B3138 CB 81 01 70 */ lfd f28, 0x170(r1) +/* 801B61DC 001B313C E3 61 01 68 */ psq_l f27, 360(r1), 0, qr0 +/* 801B61E0 001B3140 CB 61 01 60 */ lfd f27, 0x160(r1) +/* 801B61E4 001B3144 E3 41 01 58 */ psq_l f26, 344(r1), 0, qr0 +/* 801B61E8 001B3148 CB 41 01 50 */ lfd f26, 0x150(r1) +/* 801B61EC 001B314C BA A1 01 24 */ lmw r21, 0x124(r1) +/* 801B61F0 001B3150 80 01 01 B4 */ lwz r0, 0x1b4(r1) +/* 801B61F4 001B3154 7C 08 03 A6 */ mtlr r0 +/* 801B61F8 001B3158 38 21 01 B0 */ addi r1, r1, 0x1b0 +/* 801B61FC 001B315C 4E 80 00 20 */ blr + +.global GenerateParticlesAgainstOBBTree__10CIceImpactFR13CStateManagerRC8COBBTreeRC12CTransform4fRC7CSphereRC7CSphere +GenerateParticlesAgainstOBBTree__10CIceImpactFR13CStateManagerRC8COBBTreeRC12CTransform4fRC7CSphereRC7CSphere: +/* 801B6200 001B3160 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 801B6204 001B3164 7C 08 02 A6 */ mflr r0 +/* 801B6208 001B3168 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 801B620C 001B316C BE E1 00 9C */ stmw r23, 0x9c(r1) +/* 801B6210 001B3170 7C 78 1B 78 */ mr r24, r3 +/* 801B6214 001B3174 7C 99 23 78 */ mr r25, r4 +/* 801B6218 001B3178 7C BA 2B 78 */ mr r26, r5 +/* 801B621C 001B317C 7C DB 33 78 */ mr r27, r6 +/* 801B6220 001B3180 7C FC 3B 78 */ mr r28, r7 +/* 801B6224 001B3184 7D 1D 43 78 */ mr r29, r8 +/* 801B6228 001B3188 38 60 00 00 */ li r3, 0 +/* 801B622C 001B318C 38 80 00 01 */ li r4, 1 +/* 801B6230 001B3190 80 0D 90 F8 */ lwz r0, lbl_805A7CB8@sda21(r13) +/* 801B6234 001B3194 7C 05 03 78 */ mr r5, r0 +/* 801B6238 001B3198 48 1D 3C BD */ bl __shl2i +/* 801B623C 001B319C 38 C0 00 02 */ li r6, 2 +/* 801B6240 001B31A0 38 A0 FF FF */ li r5, -1 +/* 801B6244 001B31A4 38 00 00 00 */ li r0, 0 +/* 801B6248 001B31A8 90 C1 00 20 */ stw r6, 0x20(r1) +/* 801B624C 001B31AC 3B C1 00 74 */ addi r30, r1, 0x74 +/* 801B6250 001B31B0 3B E1 00 80 */ addi r31, r1, 0x80 +/* 801B6254 001B31B4 90 A1 00 2C */ stw r5, 0x2c(r1) +/* 801B6258 001B31B8 3A E0 00 00 */ li r23, 0 +/* 801B625C 001B31BC 90 01 00 28 */ stw r0, 0x28(r1) +/* 801B6260 001B31C0 90 81 00 34 */ stw r4, 0x34(r1) +/* 801B6264 001B31C4 90 61 00 30 */ stw r3, 0x30(r1) +/* 801B6268 001B31C8 90 C1 00 38 */ stw r6, 0x38(r1) +/* 801B626C 001B31CC 48 00 00 B4 */ b lbl_801B6320 +lbl_801B6270: +/* 801B6270 001B31D0 7F 44 D3 78 */ mr r4, r26 +/* 801B6274 001B31D4 7F 66 DB 78 */ mr r6, r27 +/* 801B6278 001B31D8 38 61 00 40 */ addi r3, r1, 0x40 +/* 801B627C 001B31DC 56 E5 04 3E */ clrlwi r5, r23, 0x10 +/* 801B6280 001B31E0 48 0F 27 C1 */ bl GetTransformedSurface__8COBBTreeCFUsRC12CTransform4f +/* 801B6284 001B31E4 80 A1 00 64 */ lwz r5, 0x64(r1) +/* 801B6288 001B31E8 38 00 00 00 */ li r0, 0 +/* 801B628C 001B31EC C1 01 00 40 */ lfs f8, 0x40(r1) +/* 801B6290 001B31F0 38 61 00 28 */ addi r3, r1, 0x28 +/* 801B6294 001B31F4 C0 E1 00 44 */ lfs f7, 0x44(r1) +/* 801B6298 001B31F8 38 81 00 08 */ addi r4, r1, 8 +/* 801B629C 001B31FC C0 C1 00 48 */ lfs f6, 0x48(r1) +/* 801B62A0 001B3200 C0 A1 00 4C */ lfs f5, 0x4c(r1) +/* 801B62A4 001B3204 C0 81 00 50 */ lfs f4, 0x50(r1) +/* 801B62A8 001B3208 C0 61 00 54 */ lfs f3, 0x54(r1) +/* 801B62AC 001B320C C0 41 00 58 */ lfs f2, 0x58(r1) +/* 801B62B0 001B3210 C0 21 00 5C */ lfs f1, 0x5c(r1) +/* 801B62B4 001B3214 C0 01 00 60 */ lfs f0, 0x60(r1) +/* 801B62B8 001B3218 D1 01 00 68 */ stfs f8, 0x68(r1) +/* 801B62BC 001B321C D0 E1 00 6C */ stfs f7, 0x6c(r1) +/* 801B62C0 001B3220 D0 C1 00 70 */ stfs f6, 0x70(r1) +/* 801B62C4 001B3224 D0 A1 00 74 */ stfs f5, 0x74(r1) +/* 801B62C8 001B3228 D0 81 00 78 */ stfs f4, 0x78(r1) +/* 801B62CC 001B322C D0 61 00 7C */ stfs f3, 0x7c(r1) +/* 801B62D0 001B3230 D0 41 00 80 */ stfs f2, 0x80(r1) +/* 801B62D4 001B3234 D0 21 00 84 */ stfs f1, 0x84(r1) +/* 801B62D8 001B3238 D0 01 00 88 */ stfs f0, 0x88(r1) +/* 801B62DC 001B323C 90 A1 00 8C */ stw r5, 0x8c(r1) +/* 801B62E0 001B3240 90 A1 00 0C */ stw r5, 0xc(r1) +/* 801B62E4 001B3244 90 01 00 08 */ stw r0, 8(r1) +/* 801B62E8 001B3248 48 11 F0 65 */ bl Passes__15CMaterialFilterCFRC13CMaterialList +/* 801B62EC 001B324C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B62F0 001B3250 41 82 00 2C */ beq lbl_801B631C +/* 801B62F4 001B3254 7F 03 C3 78 */ mr r3, r24 +/* 801B62F8 001B3258 7F 24 CB 78 */ mr r4, r25 +/* 801B62FC 001B325C 7F C6 F3 78 */ mr r6, r30 +/* 801B6300 001B3260 7F E7 FB 78 */ mr r7, r31 +/* 801B6304 001B3264 7F 88 E3 78 */ mr r8, r28 +/* 801B6308 001B3268 7F A9 EB 78 */ mr r9, r29 +/* 801B630C 001B326C 38 A1 00 68 */ addi r5, r1, 0x68 +/* 801B6310 001B3270 4B FF F8 95 */ bl SubdivideAndGenerateParticles__10CIceImpactFR13CStateManagerRC9CVector3fRC9CVector3fRC9CVector3fRC7CSphereRC7CSphere +/* 801B6314 001B3274 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B6318 001B3278 40 82 00 18 */ bne lbl_801B6330 +lbl_801B631C: +/* 801B631C 001B327C 3A F7 00 01 */ addi r23, r23, 1 +lbl_801B6320: +/* 801B6320 001B3280 80 1A 00 4C */ lwz r0, 0x4c(r26) +/* 801B6324 001B3284 7E E3 07 34 */ extsh r3, r23 +/* 801B6328 001B3288 7C 03 00 00 */ cmpw r3, r0 +/* 801B632C 001B328C 41 80 FF 44 */ blt lbl_801B6270 +lbl_801B6330: +/* 801B6330 001B3290 BA E1 00 9C */ lmw r23, 0x9c(r1) +/* 801B6334 001B3294 38 60 00 00 */ li r3, 0 +/* 801B6338 001B3298 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 801B633C 001B329C 7C 08 03 A6 */ mtlr r0 +/* 801B6340 001B32A0 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 801B6344 001B32A4 4E 80 00 20 */ blr + +.global GenerateParticlesAgainstAABox__10CIceImpactFR13CStateManagerRC6CAABoxRC7CSphereRC7CSphere +GenerateParticlesAgainstAABox__10CIceImpactFR13CStateManagerRC6CAABoxRC7CSphereRC7CSphere: +/* 801B6348 001B32A8 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 801B634C 001B32AC 7C 08 02 A6 */ mflr r0 +/* 801B6350 001B32B0 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 801B6354 001B32B4 BE E1 00 7C */ stmw r23, 0x7c(r1) +/* 801B6358 001B32B8 7C 77 1B 78 */ mr r23, r3 +/* 801B635C 001B32BC 7C 98 23 78 */ mr r24, r4 +/* 801B6360 001B32C0 7C B9 2B 78 */ mr r25, r5 +/* 801B6364 001B32C4 7C DA 33 78 */ mr r26, r6 +/* 801B6368 001B32C8 7C FB 3B 78 */ mr r27, r7 +/* 801B636C 001B32CC 3B E1 00 4C */ addi r31, r1, 0x4c +/* 801B6370 001B32D0 3B C1 00 58 */ addi r30, r1, 0x58 +/* 801B6374 001B32D4 3B A1 00 64 */ addi r29, r1, 0x64 +/* 801B6378 001B32D8 3B 80 00 00 */ li r28, 0 +lbl_801B637C: +/* 801B637C 001B32DC 57 80 0F FE */ srwi r0, r28, 0x1f +/* 801B6380 001B32E0 7F 24 CB 78 */ mr r4, r25 +/* 801B6384 001B32E4 7C 00 E2 14 */ add r0, r0, r28 +/* 801B6388 001B32E8 38 61 00 08 */ addi r3, r1, 8 +/* 801B638C 001B32EC 7C 05 0E 70 */ srawi r5, r0, 1 +/* 801B6390 001B32F0 57 86 0F BC */ rlwinm r6, r28, 1, 0x1e, 0x1e +/* 801B6394 001B32F4 48 18 18 61 */ bl GetTri__6CAABoxCFQ26CAABox10EBoxFaceIdi +/* 801B6398 001B32F8 C1 81 00 08 */ lfs f12, 8(r1) +/* 801B639C 001B32FC 7E E3 BB 78 */ mr r3, r23 +/* 801B63A0 001B3300 C1 61 00 0C */ lfs f11, 0xc(r1) +/* 801B63A4 001B3304 7F 04 C3 78 */ mr r4, r24 +/* 801B63A8 001B3308 C1 41 00 10 */ lfs f10, 0x10(r1) +/* 801B63AC 001B330C 7F E5 FB 78 */ mr r5, r31 +/* 801B63B0 001B3310 C1 21 00 14 */ lfs f9, 0x14(r1) +/* 801B63B4 001B3314 7F A6 EB 78 */ mr r6, r29 +/* 801B63B8 001B3318 C1 01 00 18 */ lfs f8, 0x18(r1) +/* 801B63BC 001B331C 7F C7 F3 78 */ mr r7, r30 +/* 801B63C0 001B3320 C0 E1 00 1C */ lfs f7, 0x1c(r1) +/* 801B63C4 001B3324 7F 48 D3 78 */ mr r8, r26 +/* 801B63C8 001B3328 C0 C1 00 20 */ lfs f6, 0x20(r1) +/* 801B63CC 001B332C 7F 69 DB 78 */ mr r9, r27 +/* 801B63D0 001B3330 C0 A1 00 24 */ lfs f5, 0x24(r1) +/* 801B63D4 001B3334 C0 81 00 28 */ lfs f4, 0x28(r1) +/* 801B63D8 001B3338 C0 61 00 2C */ lfs f3, 0x2c(r1) +/* 801B63DC 001B333C C0 41 00 30 */ lfs f2, 0x30(r1) +/* 801B63E0 001B3340 C0 21 00 34 */ lfs f1, 0x34(r1) +/* 801B63E4 001B3344 C0 01 00 38 */ lfs f0, 0x38(r1) +/* 801B63E8 001B3348 D1 81 00 3C */ stfs f12, 0x3c(r1) +/* 801B63EC 001B334C D1 61 00 40 */ stfs f11, 0x40(r1) +/* 801B63F0 001B3350 D1 41 00 44 */ stfs f10, 0x44(r1) +/* 801B63F4 001B3354 D1 21 00 48 */ stfs f9, 0x48(r1) +/* 801B63F8 001B3358 D1 01 00 4C */ stfs f8, 0x4c(r1) +/* 801B63FC 001B335C D0 E1 00 50 */ stfs f7, 0x50(r1) +/* 801B6400 001B3360 D0 C1 00 54 */ stfs f6, 0x54(r1) +/* 801B6404 001B3364 D0 A1 00 58 */ stfs f5, 0x58(r1) +/* 801B6408 001B3368 D0 81 00 5C */ stfs f4, 0x5c(r1) +/* 801B640C 001B336C D0 61 00 60 */ stfs f3, 0x60(r1) +/* 801B6410 001B3370 D0 41 00 64 */ stfs f2, 0x64(r1) +/* 801B6414 001B3374 D0 21 00 68 */ stfs f1, 0x68(r1) +/* 801B6418 001B3378 D0 01 00 6C */ stfs f0, 0x6c(r1) +/* 801B641C 001B337C 4B FF F7 89 */ bl SubdivideAndGenerateParticles__10CIceImpactFR13CStateManagerRC9CVector3fRC9CVector3fRC9CVector3fRC7CSphereRC7CSphere +/* 801B6420 001B3380 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B6424 001B3384 40 82 00 10 */ bne lbl_801B6434 +/* 801B6428 001B3388 3B 9C 00 01 */ addi r28, r28, 1 +/* 801B642C 001B338C 2C 1C 00 0C */ cmpwi r28, 0xc +/* 801B6430 001B3390 41 80 FF 4C */ blt lbl_801B637C +lbl_801B6434: +/* 801B6434 001B3394 BA E1 00 7C */ lmw r23, 0x7c(r1) +/* 801B6438 001B3398 38 60 00 00 */ li r3, 0 +/* 801B643C 001B339C 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 801B6440 001B33A0 7C 08 03 A6 */ mtlr r0 +/* 801B6444 001B33A4 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 801B6448 001B33A8 4E 80 00 20 */ blr + +.global GenerateParticlesAgainstActors__10CIceImpactFR13CStateManagerRC6CAABoxRC7CSphereRC7CSphere +GenerateParticlesAgainstActors__10CIceImpactFR13CStateManagerRC6CAABoxRC7CSphereRC7CSphere: +/* 801B644C 001B33AC 94 21 F7 30 */ stwu r1, -0x8d0(r1) +/* 801B6450 001B33B0 7C 08 02 A6 */ mflr r0 +/* 801B6454 001B33B4 90 01 08 D4 */ stw r0, 0x8d4(r1) +/* 801B6458 001B33B8 38 00 00 00 */ li r0, 0 +/* 801B645C 001B33BC BE E1 08 AC */ stmw r23, 0x8ac(r1) +/* 801B6460 001B33C0 7C 7A 1B 78 */ mr r26, r3 +/* 801B6464 001B33C4 7C 9B 23 78 */ mr r27, r4 +/* 801B6468 001B33C8 7C B7 2B 78 */ mr r23, r5 +/* 801B646C 001B33CC 7C DC 33 78 */ mr r28, r6 +/* 801B6470 001B33D0 7C FD 3B 78 */ mr r29, r7 +/* 801B6474 001B33D4 38 60 00 00 */ li r3, 0 +/* 801B6478 001B33D8 38 80 00 01 */ li r4, 1 +/* 801B647C 001B33DC 81 0D 90 E4 */ lwz r8, lbl_805A7CA4@sda21(r13) +/* 801B6480 001B33E0 90 01 00 9C */ stw r0, 0x9c(r1) +/* 801B6484 001B33E4 7D 05 43 78 */ mr r5, r8 +/* 801B6488 001B33E8 48 1D 3A 6D */ bl __shl2i +/* 801B648C 001B33EC 80 AD 90 E8 */ lwz r5, lbl_805A7CA8@sda21(r13) +/* 801B6490 001B33F0 7C 9F 23 78 */ mr r31, r4 +/* 801B6494 001B33F4 7C 7E 1B 78 */ mr r30, r3 +/* 801B6498 001B33F8 38 60 00 00 */ li r3, 0 +/* 801B649C 001B33FC 38 80 00 01 */ li r4, 1 +/* 801B64A0 001B3400 48 1D 3A 55 */ bl __shl2i +/* 801B64A4 001B3404 80 AD 90 EC */ lwz r5, lbl_805A7CAC@sda21(r13) +/* 801B64A8 001B3408 7F FF 23 78 */ or r31, r31, r4 +/* 801B64AC 001B340C 7F DE 1B 78 */ or r30, r30, r3 +/* 801B64B0 001B3410 38 60 00 00 */ li r3, 0 +/* 801B64B4 001B3414 38 80 00 01 */ li r4, 1 +/* 801B64B8 001B3418 48 1D 3A 3D */ bl __shl2i +/* 801B64BC 001B341C 80 AD 90 F0 */ lwz r5, lbl_805A7CB0@sda21(r13) +/* 801B64C0 001B3420 7F FF 23 78 */ or r31, r31, r4 +/* 801B64C4 001B3424 7F DE 1B 78 */ or r30, r30, r3 +/* 801B64C8 001B3428 38 60 00 00 */ li r3, 0 +/* 801B64CC 001B342C 38 80 00 01 */ li r4, 1 +/* 801B64D0 001B3430 48 1D 3A 25 */ bl __shl2i +/* 801B64D4 001B3434 80 AD 90 F4 */ lwz r5, lbl_805A7CB4@sda21(r13) +/* 801B64D8 001B3438 7F FF 23 78 */ or r31, r31, r4 +/* 801B64DC 001B343C 7F DE 1B 78 */ or r30, r30, r3 +/* 801B64E0 001B3440 38 60 00 00 */ li r3, 0 +/* 801B64E4 001B3444 38 80 00 01 */ li r4, 1 +/* 801B64E8 001B3448 48 1D 3A 0D */ bl __shl2i +/* 801B64EC 001B344C 7F FF 23 78 */ or r31, r31, r4 +/* 801B64F0 001B3450 7F DE 1B 78 */ or r30, r30, r3 +/* 801B64F4 001B3454 38 60 FF FF */ li r3, -1 +/* 801B64F8 001B3458 38 80 00 00 */ li r4, 0 +/* 801B64FC 001B345C 38 00 00 02 */ li r0, 2 +/* 801B6500 001B3460 90 61 00 3C */ stw r3, 0x3c(r1) +/* 801B6504 001B3464 7F 63 DB 78 */ mr r3, r27 +/* 801B6508 001B3468 7E E5 BB 78 */ mr r5, r23 +/* 801B650C 001B346C 90 81 00 38 */ stw r4, 0x38(r1) +/* 801B6510 001B3470 7F 47 D3 78 */ mr r7, r26 +/* 801B6514 001B3474 38 81 00 9C */ addi r4, r1, 0x9c +/* 801B6518 001B3478 38 C1 00 38 */ addi r6, r1, 0x38 +/* 801B651C 001B347C 93 E1 00 44 */ stw r31, 0x44(r1) +/* 801B6520 001B3480 93 C1 00 40 */ stw r30, 0x40(r1) +/* 801B6524 001B3484 90 01 00 48 */ stw r0, 0x48(r1) +/* 801B6528 001B3488 4B E9 61 F9 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" +/* 801B652C 001B348C 3B E1 00 A0 */ addi r31, r1, 0xa0 +/* 801B6530 001B3490 7F FE FB 78 */ mr r30, r31 +/* 801B6534 001B3494 48 00 01 C0 */ b lbl_801B66F4 +lbl_801B6538: +/* 801B6538 001B3498 A0 1E 00 00 */ lhz r0, 0(r30) +/* 801B653C 001B349C 7F 63 DB 78 */ mr r3, r27 +/* 801B6540 001B34A0 38 81 00 08 */ addi r4, r1, 8 +/* 801B6544 001B34A4 B0 01 00 08 */ sth r0, 8(r1) +/* 801B6548 001B34A8 4B E9 60 2D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801B654C 001B34AC 7C 60 1B 78 */ mr r0, r3 +/* 801B6550 001B34B0 38 61 00 14 */ addi r3, r1, 0x14 +/* 801B6554 001B34B4 7C 19 03 78 */ mr r25, r0 +/* 801B6558 001B34B8 7F 24 CB 78 */ mr r4, r25 +/* 801B655C 001B34BC 4B EF 61 89 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" +/* 801B6560 001B34C0 83 03 00 04 */ lwz r24, 4(r3) +/* 801B6564 001B34C4 28 18 00 00 */ cmplwi r24, 0 +/* 801B6568 001B34C8 41 82 00 AC */ beq lbl_801B6614 +/* 801B656C 001B34CC 7F 03 C3 78 */ mr r3, r24 +/* 801B6570 001B34D0 81 98 00 00 */ lwz r12, 0(r24) +/* 801B6574 001B34D4 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 801B6578 001B34D8 7D 89 03 A6 */ mtctr r12 +/* 801B657C 001B34DC 4E 80 04 21 */ bctrl +/* 801B6580 001B34E0 81 83 00 00 */ lwz r12, 0(r3) +/* 801B6584 001B34E4 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801B6588 001B34E8 7D 89 03 A6 */ mtctr r12 +/* 801B658C 001B34EC 4E 80 04 21 */ bctrl +/* 801B6590 001B34F0 3C 03 B0 BE */ addis r0, r3, 0xb0be +/* 801B6594 001B34F4 28 00 54 47 */ cmplwi r0, 0x5447 +/* 801B6598 001B34F8 40 82 00 7C */ bne lbl_801B6614 +/* 801B659C 001B34FC 7F 03 C3 78 */ mr r3, r24 +/* 801B65A0 001B3500 81 98 00 00 */ lwz r12, 0(r24) +/* 801B65A4 001B3504 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 801B65A8 001B3508 7D 89 03 A6 */ mtctr r12 +/* 801B65AC 001B350C 4E 80 04 21 */ bctrl +/* 801B65B0 001B3510 3A E0 00 00 */ li r23, 0 +/* 801B65B4 001B3514 7C 79 1B 78 */ mr r25, r3 +/* 801B65B8 001B3518 48 00 00 48 */ b lbl_801B6600 +lbl_801B65BC: +/* 801B65BC 001B351C 7F 04 C3 78 */ mr r4, r24 +/* 801B65C0 001B3520 38 61 00 6C */ addi r3, r1, 0x6c +/* 801B65C4 001B3524 81 98 00 00 */ lwz r12, 0(r24) +/* 801B65C8 001B3528 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 801B65CC 001B352C 7D 89 03 A6 */ mtctr r12 +/* 801B65D0 001B3530 4E 80 04 21 */ bctrl +/* 801B65D4 001B3534 7F 23 CB 78 */ mr r3, r25 +/* 801B65D8 001B3538 7E E4 BB 78 */ mr r4, r23 +/* 801B65DC 001B353C 48 0F 73 71 */ bl GetOBBTreeAABox__23CCollidableOBBTreeGroupCFi +/* 801B65E0 001B3540 7C 65 1B 78 */ mr r5, r3 +/* 801B65E4 001B3544 7F 43 D3 78 */ mr r3, r26 +/* 801B65E8 001B3548 7F 64 DB 78 */ mr r4, r27 +/* 801B65EC 001B354C 7F 87 E3 78 */ mr r7, r28 +/* 801B65F0 001B3550 7F A8 EB 78 */ mr r8, r29 +/* 801B65F4 001B3554 38 C1 00 6C */ addi r6, r1, 0x6c +/* 801B65F8 001B3558 4B FF FC 09 */ bl GenerateParticlesAgainstOBBTree__10CIceImpactFR13CStateManagerRC8COBBTreeRC12CTransform4fRC7CSphereRC7CSphere +/* 801B65FC 001B355C 3A F7 00 01 */ addi r23, r23, 1 +lbl_801B6600: +/* 801B6600 001B3560 80 79 00 10 */ lwz r3, 0x10(r25) +/* 801B6604 001B3564 80 03 00 04 */ lwz r0, 4(r3) +/* 801B6608 001B3568 7C 17 00 00 */ cmpw r23, r0 +/* 801B660C 001B356C 41 80 FF B0 */ blt lbl_801B65BC +/* 801B6610 001B3570 48 00 00 E0 */ b lbl_801B66F0 +lbl_801B6614: +/* 801B6614 001B3574 28 19 00 00 */ cmplwi r25, 0 +/* 801B6618 001B3578 41 82 00 D8 */ beq lbl_801B66F0 +/* 801B661C 001B357C 80 19 00 68 */ lwz r0, 0x68(r25) +/* 801B6620 001B3580 38 80 00 00 */ li r4, 0 +/* 801B6624 001B3584 80 B9 00 6C */ lwz r5, 0x6c(r25) +/* 801B6628 001B3588 3C 60 00 08 */ lis r3, 8 +/* 801B662C 001B358C 7C 00 20 38 */ and r0, r0, r4 +/* 801B6630 001B3590 7C A3 18 38 */ and r3, r5, r3 +/* 801B6634 001B3594 7C 63 22 78 */ xor r3, r3, r4 +/* 801B6638 001B3598 7C 00 22 78 */ xor r0, r0, r4 +/* 801B663C 001B359C 7C 60 03 79 */ or. r0, r3, r0 +/* 801B6640 001B35A0 40 82 00 1C */ bne lbl_801B665C +/* 801B6644 001B35A4 7F 24 CB 78 */ mr r4, r25 +/* 801B6648 001B35A8 38 61 00 0C */ addi r3, r1, 0xc +/* 801B664C 001B35AC 4B EF 02 15 */ bl "__ct__26TCastToPtr<12CScriptWater>FP7CEntity" +/* 801B6650 001B35B0 80 03 00 04 */ lwz r0, 4(r3) +/* 801B6654 001B35B4 28 00 00 00 */ cmplwi r0, 0 +/* 801B6658 001B35B8 41 82 00 98 */ beq lbl_801B66F0 +lbl_801B665C: +/* 801B665C 001B35BC 7F 24 CB 78 */ mr r4, r25 +/* 801B6660 001B35C0 38 61 00 1C */ addi r3, r1, 0x1c +/* 801B6664 001B35C4 81 99 00 00 */ lwz r12, 0(r25) +/* 801B6668 001B35C8 81 8C 00 40 */ lwz r12, 0x40(r12) +/* 801B666C 001B35CC 7D 89 03 A6 */ mtctr r12 +/* 801B6670 001B35D0 4E 80 04 21 */ bctrl +/* 801B6674 001B35D4 88 01 00 34 */ lbz r0, 0x34(r1) +/* 801B6678 001B35D8 28 00 00 00 */ cmplwi r0, 0 +/* 801B667C 001B35DC 98 01 00 68 */ stb r0, 0x68(r1) +/* 801B6680 001B35E0 41 82 00 3C */ beq lbl_801B66BC +/* 801B6684 001B35E4 34 61 00 50 */ addic. r3, r1, 0x50 +/* 801B6688 001B35E8 41 82 00 34 */ beq lbl_801B66BC +/* 801B668C 001B35EC C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 801B6690 001B35F0 D0 03 00 00 */ stfs f0, 0(r3) +/* 801B6694 001B35F4 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 801B6698 001B35F8 D0 03 00 04 */ stfs f0, 4(r3) +/* 801B669C 001B35FC C0 01 00 24 */ lfs f0, 0x24(r1) +/* 801B66A0 001B3600 D0 03 00 08 */ stfs f0, 8(r3) +/* 801B66A4 001B3604 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 801B66A8 001B3608 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 801B66AC 001B360C C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 801B66B0 001B3610 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 801B66B4 001B3614 C0 01 00 30 */ lfs f0, 0x30(r1) +/* 801B66B8 001B3618 D0 03 00 14 */ stfs f0, 0x14(r3) +lbl_801B66BC: +/* 801B66BC 001B361C 88 01 00 68 */ lbz r0, 0x68(r1) +/* 801B66C0 001B3620 38 60 00 00 */ li r3, 0 +/* 801B66C4 001B3624 98 61 00 34 */ stb r3, 0x34(r1) +/* 801B66C8 001B3628 28 00 00 00 */ cmplwi r0, 0 +/* 801B66CC 001B362C 41 82 00 1C */ beq lbl_801B66E8 +/* 801B66D0 001B3630 7F 43 D3 78 */ mr r3, r26 +/* 801B66D4 001B3634 7F 64 DB 78 */ mr r4, r27 +/* 801B66D8 001B3638 7F 86 E3 78 */ mr r6, r28 +/* 801B66DC 001B363C 7F A7 EB 78 */ mr r7, r29 +/* 801B66E0 001B3640 38 A1 00 50 */ addi r5, r1, 0x50 +/* 801B66E4 001B3644 4B FF FC 65 */ bl GenerateParticlesAgainstAABox__10CIceImpactFR13CStateManagerRC6CAABoxRC7CSphereRC7CSphere +lbl_801B66E8: +/* 801B66E8 001B3648 38 00 00 00 */ li r0, 0 +/* 801B66EC 001B364C 98 01 00 68 */ stb r0, 0x68(r1) +lbl_801B66F0: +/* 801B66F0 001B3650 3B DE 00 02 */ addi r30, r30, 2 +lbl_801B66F4: +/* 801B66F4 001B3654 80 A1 00 9C */ lwz r5, 0x9c(r1) +/* 801B66F8 001B3658 54 A0 08 3C */ slwi r0, r5, 1 +/* 801B66FC 001B365C 7C 1F 02 14 */ add r0, r31, r0 +/* 801B6700 001B3660 7C 1E 00 40 */ cmplw r30, r0 +/* 801B6704 001B3664 40 82 FE 34 */ bne lbl_801B6538 +/* 801B6708 001B3668 2C 05 00 00 */ cmpwi r5, 0 +/* 801B670C 001B366C 38 60 00 00 */ li r3, 0 +/* 801B6710 001B3670 40 81 00 40 */ ble lbl_801B6750 +/* 801B6714 001B3674 2C 05 00 08 */ cmpwi r5, 8 +/* 801B6718 001B3678 38 85 FF F8 */ addi r4, r5, -8 +/* 801B671C 001B367C 40 81 00 20 */ ble lbl_801B673C +/* 801B6720 001B3680 38 04 00 07 */ addi r0, r4, 7 +/* 801B6724 001B3684 54 00 E8 FE */ srwi r0, r0, 3 +/* 801B6728 001B3688 7C 09 03 A6 */ mtctr r0 +/* 801B672C 001B368C 2C 04 00 00 */ cmpwi r4, 0 +/* 801B6730 001B3690 40 81 00 0C */ ble lbl_801B673C +lbl_801B6734: +/* 801B6734 001B3694 38 63 00 08 */ addi r3, r3, 8 +/* 801B6738 001B3698 42 00 FF FC */ bdnz lbl_801B6734 +lbl_801B673C: +/* 801B673C 001B369C 7C 03 28 50 */ subf r0, r3, r5 +/* 801B6740 001B36A0 7C 09 03 A6 */ mtctr r0 +/* 801B6744 001B36A4 7C 03 28 00 */ cmpw r3, r5 +/* 801B6748 001B36A8 40 80 00 08 */ bge lbl_801B6750 +lbl_801B674C: +/* 801B674C 001B36AC 42 00 00 00 */ bdnz lbl_801B674C +lbl_801B6750: +/* 801B6750 001B36B0 38 00 00 00 */ li r0, 0 +/* 801B6754 001B36B4 38 60 00 01 */ li r3, 1 +/* 801B6758 001B36B8 90 01 00 9C */ stw r0, 0x9c(r1) +/* 801B675C 001B36BC BA E1 08 AC */ lmw r23, 0x8ac(r1) +/* 801B6760 001B36C0 80 01 08 D4 */ lwz r0, 0x8d4(r1) +/* 801B6764 001B36C4 7C 08 03 A6 */ mtlr r0 +/* 801B6768 001B36C8 38 21 08 D0 */ addi r1, r1, 0x8d0 +/* 801B676C 001B36CC 4E 80 00 20 */ blr + +.global GenerateParticlesAgainstWorld__10CIceImpactFR13CStateManagerRCQ220CMetroidAreaCollider16COctreeLeafCacheRC7CSphereRC7CSphere +GenerateParticlesAgainstWorld__10CIceImpactFR13CStateManagerRCQ220CMetroidAreaCollider16COctreeLeafCacheRC7CSphereRC7CSphere: +/* 801B6770 001B36D0 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 801B6774 001B36D4 7C 08 02 A6 */ mflr r0 +/* 801B6778 001B36D8 90 01 01 04 */ stw r0, 0x104(r1) +/* 801B677C 001B36DC BE 61 00 CC */ stmw r19, 0xcc(r1) +/* 801B6780 001B36E0 7C 73 1B 78 */ mr r19, r3 +/* 801B6784 001B36E4 7C 94 23 78 */ mr r20, r4 +/* 801B6788 001B36E8 7C B5 2B 78 */ mr r21, r5 +/* 801B678C 001B36EC 7C D6 33 78 */ mr r22, r6 +/* 801B6790 001B36F0 7C F7 3B 78 */ mr r23, r7 +/* 801B6794 001B36F4 48 0F 08 AD */ bl ResetInternalCounters__20CMetroidAreaColliderFv +/* 801B6798 001B36F8 80 AD 90 E0 */ lwz r5, lbl_805A7CA0@sda21(r13) +/* 801B679C 001B36FC 38 60 00 00 */ li r3, 0 +/* 801B67A0 001B3700 38 80 00 01 */ li r4, 1 +/* 801B67A4 001B3704 48 1D 37 51 */ bl __shl2i +/* 801B67A8 001B3708 38 E0 00 02 */ li r7, 2 +/* 801B67AC 001B370C 38 C0 FF FF */ li r6, -1 +/* 801B67B0 001B3710 38 00 00 00 */ li r0, 0 +/* 801B67B4 001B3714 3C A0 80 59 */ lis r5, lbl_80597BAC@ha +/* 801B67B8 001B3718 90 E1 00 50 */ stw r7, 0x50(r1) +/* 801B67BC 001B371C 3B B5 00 08 */ addi r29, r21, 8 +/* 801B67C0 001B3720 3B E5 7B AC */ addi r31, r5, lbl_80597BAC@l +/* 801B67C4 001B3724 3B 60 00 00 */ li r27, 0 +/* 801B67C8 001B3728 90 C1 00 5C */ stw r6, 0x5c(r1) +/* 801B67CC 001B372C 90 01 00 58 */ stw r0, 0x58(r1) +/* 801B67D0 001B3730 90 81 00 64 */ stw r4, 0x64(r1) +/* 801B67D4 001B3734 90 61 00 60 */ stw r3, 0x60(r1) +/* 801B67D8 001B3738 90 E1 00 68 */ stw r7, 0x68(r1) +/* 801B67DC 001B373C 48 00 01 4C */ b lbl_801B6928 +lbl_801B67E0: +/* 801B67E0 001B3740 7F A4 EB 78 */ mr r4, r29 +/* 801B67E4 001B3744 38 61 00 08 */ addi r3, r1, 8 +/* 801B67E8 001B3748 48 0E C5 55 */ bl GetTriangleArray__Q212CAreaOctTree4NodeCFv +/* 801B67EC 001B374C 83 81 00 08 */ lwz r28, 8(r1) +/* 801B67F0 001B3750 3B 20 00 00 */ li r25, 0 +/* 801B67F4 001B3754 83 DD 00 1C */ lwz r30, 0x1c(r29) +/* 801B67F8 001B3758 3B 00 00 00 */ li r24, 0 +/* 801B67FC 001B375C A3 5C 00 18 */ lhz r26, 0x18(r28) +/* 801B6800 001B3760 48 00 01 10 */ b lbl_801B6910 +lbl_801B6804: +/* 801B6804 001B3764 A0 BC 00 1A */ lhz r5, 0x1a(r28) +/* 801B6808 001B3768 A0 8D A5 D0 */ lhz r4, lbl_805A9190@sda21(r13) +/* 801B680C 001B376C 54 A3 0B FC */ rlwinm r3, r5, 1, 0xf, 0x1e +/* 801B6810 001B3770 7C 1F 1A 2E */ lhzx r0, r31, r3 +/* 801B6814 001B3774 7C 00 20 40 */ cmplw r0, r4 +/* 801B6818 001B3778 41 82 00 F0 */ beq lbl_801B6908 +/* 801B681C 001B377C 7C 9F 1B 2E */ sthx r4, r31, r3 +/* 801B6820 001B3780 7F C4 F3 78 */ mr r4, r30 +/* 801B6824 001B3784 38 61 00 70 */ addi r3, r1, 0x70 +/* 801B6828 001B3788 48 0E C2 0D */ bl GetMasterListTriangle__12CAreaOctTreeCFUs +/* 801B682C 001B378C 80 A1 00 94 */ lwz r5, 0x94(r1) +/* 801B6830 001B3790 38 00 00 00 */ li r0, 0 +/* 801B6834 001B3794 C1 01 00 70 */ lfs f8, 0x70(r1) +/* 801B6838 001B3798 38 61 00 58 */ addi r3, r1, 0x58 +/* 801B683C 001B379C C0 E1 00 74 */ lfs f7, 0x74(r1) +/* 801B6840 001B37A0 38 81 00 10 */ addi r4, r1, 0x10 +/* 801B6844 001B37A4 C0 C1 00 78 */ lfs f6, 0x78(r1) +/* 801B6848 001B37A8 C0 A1 00 7C */ lfs f5, 0x7c(r1) +/* 801B684C 001B37AC C0 81 00 80 */ lfs f4, 0x80(r1) +/* 801B6850 001B37B0 C0 61 00 84 */ lfs f3, 0x84(r1) +/* 801B6854 001B37B4 C0 41 00 88 */ lfs f2, 0x88(r1) +/* 801B6858 001B37B8 C0 21 00 8C */ lfs f1, 0x8c(r1) +/* 801B685C 001B37BC C0 01 00 90 */ lfs f0, 0x90(r1) +/* 801B6860 001B37C0 D1 01 00 98 */ stfs f8, 0x98(r1) +/* 801B6864 001B37C4 D0 E1 00 9C */ stfs f7, 0x9c(r1) +/* 801B6868 001B37C8 D0 C1 00 A0 */ stfs f6, 0xa0(r1) +/* 801B686C 001B37CC D0 A1 00 A4 */ stfs f5, 0xa4(r1) +/* 801B6870 001B37D0 D0 81 00 A8 */ stfs f4, 0xa8(r1) +/* 801B6874 001B37D4 D0 61 00 AC */ stfs f3, 0xac(r1) +/* 801B6878 001B37D8 D0 41 00 B0 */ stfs f2, 0xb0(r1) +/* 801B687C 001B37DC D0 21 00 B4 */ stfs f1, 0xb4(r1) +/* 801B6880 001B37E0 D0 01 00 B8 */ stfs f0, 0xb8(r1) +/* 801B6884 001B37E4 90 A1 00 BC */ stw r5, 0xbc(r1) +/* 801B6888 001B37E8 90 A1 00 14 */ stw r5, 0x14(r1) +/* 801B688C 001B37EC 90 01 00 10 */ stw r0, 0x10(r1) +/* 801B6890 001B37F0 48 11 EA BD */ bl Passes__15CMaterialFilterCFRC13CMaterialList +/* 801B6894 001B37F4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B6898 001B37F8 41 82 00 70 */ beq lbl_801B6908 +/* 801B689C 001B37FC C1 01 00 98 */ lfs f8, 0x98(r1) +/* 801B68A0 001B3800 7E 63 9B 78 */ mr r3, r19 +/* 801B68A4 001B3804 C0 E1 00 9C */ lfs f7, 0x9c(r1) +/* 801B68A8 001B3808 7E 84 A3 78 */ mr r4, r20 +/* 801B68AC 001B380C C0 C1 00 A0 */ lfs f6, 0xa0(r1) +/* 801B68B0 001B3810 7E C8 B3 78 */ mr r8, r22 +/* 801B68B4 001B3814 C0 A1 00 A4 */ lfs f5, 0xa4(r1) +/* 801B68B8 001B3818 7E E9 BB 78 */ mr r9, r23 +/* 801B68BC 001B381C C0 81 00 A8 */ lfs f4, 0xa8(r1) +/* 801B68C0 001B3820 38 A1 00 30 */ addi r5, r1, 0x30 +/* 801B68C4 001B3824 C0 61 00 AC */ lfs f3, 0xac(r1) +/* 801B68C8 001B3828 38 C1 00 24 */ addi r6, r1, 0x24 +/* 801B68CC 001B382C C0 41 00 B0 */ lfs f2, 0xb0(r1) +/* 801B68D0 001B3830 38 E1 00 18 */ addi r7, r1, 0x18 +/* 801B68D4 001B3834 C0 21 00 B4 */ lfs f1, 0xb4(r1) +/* 801B68D8 001B3838 C0 01 00 B8 */ lfs f0, 0xb8(r1) +/* 801B68DC 001B383C D1 01 00 30 */ stfs f8, 0x30(r1) +/* 801B68E0 001B3840 D0 E1 00 34 */ stfs f7, 0x34(r1) +/* 801B68E4 001B3844 D0 C1 00 38 */ stfs f6, 0x38(r1) +/* 801B68E8 001B3848 D0 A1 00 24 */ stfs f5, 0x24(r1) +/* 801B68EC 001B384C D0 81 00 28 */ stfs f4, 0x28(r1) +/* 801B68F0 001B3850 D0 61 00 2C */ stfs f3, 0x2c(r1) +/* 801B68F4 001B3854 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 801B68F8 001B3858 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 801B68FC 001B385C D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801B6900 001B3860 4B FF F2 A5 */ bl SubdivideAndGenerateParticles__10CIceImpactFR13CStateManagerRC9CVector3fRC9CVector3fRC9CVector3fRC7CSphereRC7CSphere +/* 801B6904 001B3864 7C 79 1B 78 */ mr r25, r3 +lbl_801B6908: +/* 801B6908 001B3868 3B 9C 00 02 */ addi r28, r28, 2 +/* 801B690C 001B386C 3B 18 00 01 */ addi r24, r24, 1 +lbl_801B6910: +/* 801B6910 001B3870 7C 18 D0 00 */ cmpw r24, r26 +/* 801B6914 001B3874 40 80 00 0C */ bge lbl_801B6920 +/* 801B6918 001B3878 57 20 06 3F */ clrlwi. r0, r25, 0x18 +/* 801B691C 001B387C 41 82 FE E8 */ beq lbl_801B6804 +lbl_801B6920: +/* 801B6920 001B3880 3B BD 00 24 */ addi r29, r29, 0x24 +/* 801B6924 001B3884 3B 7B 00 01 */ addi r27, r27, 1 +lbl_801B6928: +/* 801B6928 001B3888 80 15 00 04 */ lwz r0, 4(r21) +/* 801B692C 001B388C 7C 1B 00 00 */ cmpw r27, r0 +/* 801B6930 001B3890 41 80 FE B0 */ blt lbl_801B67E0 +/* 801B6934 001B3894 BA 61 00 CC */ lmw r19, 0xcc(r1) +/* 801B6938 001B3898 38 60 00 00 */ li r3, 0 +/* 801B693C 001B389C 80 01 01 04 */ lwz r0, 0x104(r1) +/* 801B6940 001B38A0 7C 08 03 A6 */ mtlr r0 +/* 801B6944 001B38A4 38 21 01 00 */ addi r1, r1, 0x100 +/* 801B6948 001B38A8 4E 80 00 20 */ blr + +.global GenerateNewSphere__10CIceImpactFv +GenerateNewSphere__10CIceImpactFv: +/* 801B694C 001B38AC 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 801B6950 001B38B0 7C 08 02 A6 */ mflr r0 +/* 801B6954 001B38B4 90 01 00 74 */ stw r0, 0x74(r1) +/* 801B6958 001B38B8 BF 01 00 50 */ stmw r24, 0x50(r1) +/* 801B695C 001B38BC 7C 78 1B 78 */ mr r24, r3 +/* 801B6960 001B38C0 7C 99 23 78 */ mr r25, r4 +/* 801B6964 001B38C4 3B E0 00 08 */ li r31, 8 +/* 801B6968 001B38C8 80 64 00 FC */ lwz r3, 0xfc(r4) +/* 801B696C 001B38CC 38 03 00 01 */ addi r0, r3, 1 +/* 801B6970 001B38D0 90 04 00 FC */ stw r0, 0xfc(r4) +/* 801B6974 001B38D4 80 04 00 FC */ lwz r0, 0xfc(r4) +/* 801B6978 001B38D8 54 00 07 7E */ clrlwi r0, r0, 0x1d +/* 801B697C 001B38DC 90 04 00 FC */ stw r0, 0xfc(r4) +/* 801B6980 001B38E0 80 04 00 FC */ lwz r0, 0xfc(r4) +/* 801B6984 001B38E4 54 1D 07 FE */ clrlwi r29, r0, 0x1f +/* 801B6988 001B38E8 54 1C 07 BC */ rlwinm r28, r0, 0, 0x1e, 0x1e +/* 801B698C 001B38EC 54 1B 07 7A */ rlwinm r27, r0, 0, 0x1d, 0x1d +/* 801B6990 001B38F0 48 00 01 D8 */ b lbl_801B6B68 +lbl_801B6994: +/* 801B6994 001B38F4 3B C0 00 08 */ li r30, 8 +/* 801B6998 001B38F8 48 00 01 7C */ b lbl_801B6B14 +lbl_801B699C: +/* 801B699C 001B38FC 3B 40 00 08 */ li r26, 8 +/* 801B69A0 001B3900 48 00 01 20 */ b lbl_801B6AC0 +lbl_801B69A4: +/* 801B69A4 001B3904 7F 44 D3 78 */ mr r4, r26 +/* 801B69A8 001B3908 7F C5 F3 78 */ mr r5, r30 +/* 801B69AC 001B390C 7F E6 FB 78 */ mr r6, r31 +/* 801B69B0 001B3910 38 79 01 18 */ addi r3, r25, 0x118 +/* 801B69B4 001B3914 48 00 19 7D */ bl GetValue__11CMarkerGridCFUiUiUi +/* 801B69B8 001B3918 2C 03 00 01 */ cmpwi r3, 1 +/* 801B69BC 001B391C 40 82 00 F0 */ bne lbl_801B6AAC +/* 801B69C0 001B3920 7F 45 D3 78 */ mr r5, r26 +/* 801B69C4 001B3924 7F C6 F3 78 */ mr r6, r30 +/* 801B69C8 001B3928 7F E7 FB 78 */ mr r7, r31 +/* 801B69CC 001B392C 38 61 00 18 */ addi r3, r1, 0x18 +/* 801B69D0 001B3930 38 99 01 18 */ addi r4, r25, 0x118 +/* 801B69D4 001B3934 48 00 14 39 */ bl GetWorldPositionForCell__11CMarkerGridCFUiUiUi +/* 801B69D8 001B3938 C0 41 00 18 */ lfs f2, 0x18(r1) +/* 801B69DC 001B393C 7F 44 D3 78 */ mr r4, r26 +/* 801B69E0 001B3940 C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 801B69E4 001B3944 7F C5 F3 78 */ mr r5, r30 +/* 801B69E8 001B3948 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 801B69EC 001B394C 7F E6 FB 78 */ mr r6, r31 +/* 801B69F0 001B3950 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 801B69F4 001B3954 38 79 01 18 */ addi r3, r25, 0x118 +/* 801B69F8 001B3958 38 E0 00 03 */ li r7, 3 +/* 801B69FC 001B395C D0 21 00 28 */ stfs f1, 0x28(r1) +/* 801B6A00 001B3960 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801B6A04 001B3964 48 00 18 39 */ bl SetValue__11CMarkerGridFUiUiUiUi +/* 801B6A08 001B3968 38 79 01 08 */ addi r3, r25, 0x108 +/* 801B6A0C 001B396C 38 81 00 24 */ addi r4, r1, 0x24 +/* 801B6A10 001B3970 48 00 01 B5 */ bl pointInSphere__FRC7CSphereRC9CVector3f +/* 801B6A14 001B3974 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B6A18 001B3978 41 82 00 94 */ beq lbl_801B6AAC +/* 801B6A1C 001B397C C0 61 00 24 */ lfs f3, 0x24(r1) +/* 801B6A20 001B3980 38 79 01 18 */ addi r3, r25, 0x118 +/* 801B6A24 001B3984 C0 41 00 28 */ lfs f2, 0x28(r1) +/* 801B6A28 001B3988 38 81 00 08 */ addi r4, r1, 8 +/* 801B6A2C 001B398C C0 21 00 2C */ lfs f1, 0x2c(r1) +/* 801B6A30 001B3990 38 A0 00 02 */ li r5, 2 +/* 801B6A34 001B3994 C0 02 A9 80 */ lfs f0, lbl_805AC6A0@sda21(r2) +/* 801B6A38 001B3998 D0 61 00 08 */ stfs f3, 8(r1) +/* 801B6A3C 001B399C D0 41 00 0C */ stfs f2, 0xc(r1) +/* 801B6A40 001B39A0 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 801B6A44 001B39A4 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801B6A48 001B39A8 48 00 14 61 */ bl MarkCells__11CMarkerGridFRC7CSphereUi +/* 801B6A4C 001B39AC C0 22 A9 80 */ lfs f1, lbl_805AC6A0@sda21(r2) +/* 801B6A50 001B39B0 28 18 00 00 */ cmplwi r24, 0 +/* 801B6A54 001B39B4 C0 02 A9 84 */ lfs f0, lbl_805AC6A4@sda21(r2) +/* 801B6A58 001B39B8 38 00 00 01 */ li r0, 1 +/* 801B6A5C 001B39BC C0 81 00 24 */ lfs f4, 0x24(r1) +/* 801B6A60 001B39C0 C0 61 00 28 */ lfs f3, 0x28(r1) +/* 801B6A64 001B39C4 C0 41 00 2C */ lfs f2, 0x2c(r1) +/* 801B6A68 001B39C8 D0 81 00 30 */ stfs f4, 0x30(r1) +/* 801B6A6C 001B39CC D0 61 00 34 */ stfs f3, 0x34(r1) +/* 801B6A70 001B39D0 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 801B6A74 001B39D4 D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 801B6A78 001B39D8 D0 21 00 40 */ stfs f1, 0x40(r1) +/* 801B6A7C 001B39DC D0 01 00 44 */ stfs f0, 0x44(r1) +/* 801B6A80 001B39E0 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 801B6A84 001B39E4 98 18 00 1C */ stb r0, 0x1c(r24) +/* 801B6A88 001B39E8 41 82 01 28 */ beq lbl_801B6BB0 +/* 801B6A8C 001B39EC D0 98 00 00 */ stfs f4, 0(r24) +/* 801B6A90 001B39F0 D0 78 00 04 */ stfs f3, 4(r24) +/* 801B6A94 001B39F4 D0 58 00 08 */ stfs f2, 8(r24) +/* 801B6A98 001B39F8 D0 38 00 0C */ stfs f1, 0xc(r24) +/* 801B6A9C 001B39FC D0 38 00 10 */ stfs f1, 0x10(r24) +/* 801B6AA0 001B3A00 D0 18 00 14 */ stfs f0, 0x14(r24) +/* 801B6AA4 001B3A04 D0 18 00 18 */ stfs f0, 0x18(r24) +/* 801B6AA8 001B3A08 48 00 01 08 */ b lbl_801B6BB0 +lbl_801B6AAC: +/* 801B6AAC 001B3A0C 28 1B 00 00 */ cmplwi r27, 0 +/* 801B6AB0 001B3A10 41 82 00 0C */ beq lbl_801B6ABC +/* 801B6AB4 001B3A14 3B 5A 00 01 */ addi r26, r26, 1 +/* 801B6AB8 001B3A18 48 00 00 08 */ b lbl_801B6AC0 +lbl_801B6ABC: +/* 801B6ABC 001B3A1C 3B 5A FF FF */ addi r26, r26, -1 +lbl_801B6AC0: +/* 801B6AC0 001B3A20 28 1B 00 00 */ cmplwi r27, 0 +/* 801B6AC4 001B3A24 41 82 00 1C */ beq lbl_801B6AE0 +/* 801B6AC8 001B3A28 38 60 00 0E */ li r3, 0xe +/* 801B6ACC 001B3A2C 7C 60 D2 78 */ xor r0, r3, r26 +/* 801B6AD0 001B3A30 7C 00 00 34 */ cntlzw r0, r0 +/* 801B6AD4 001B3A34 7C 60 00 30 */ slw r0, r3, r0 +/* 801B6AD8 001B3A38 54 00 0F FE */ srwi r0, r0, 0x1f +/* 801B6ADC 001B3A3C 48 00 00 1C */ b lbl_801B6AF8 +lbl_801B6AE0: +/* 801B6AE0 001B3A40 38 1A FF FF */ addi r0, r26, -1 +/* 801B6AE4 001B3A44 38 60 00 01 */ li r3, 1 +/* 801B6AE8 001B3A48 7F 43 1B 38 */ orc r3, r26, r3 +/* 801B6AEC 001B3A4C 54 00 F8 7E */ srwi r0, r0, 1 +/* 801B6AF0 001B3A50 7C 00 18 50 */ subf r0, r0, r3 +/* 801B6AF4 001B3A54 54 00 0F FE */ srwi r0, r0, 0x1f +lbl_801B6AF8: +/* 801B6AF8 001B3A58 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 801B6AFC 001B3A5C 40 82 FE A8 */ bne lbl_801B69A4 +/* 801B6B00 001B3A60 28 1C 00 00 */ cmplwi r28, 0 +/* 801B6B04 001B3A64 41 82 00 0C */ beq lbl_801B6B10 +/* 801B6B08 001B3A68 3B DE 00 01 */ addi r30, r30, 1 +/* 801B6B0C 001B3A6C 48 00 00 08 */ b lbl_801B6B14 +lbl_801B6B10: +/* 801B6B10 001B3A70 3B DE FF FF */ addi r30, r30, -1 +lbl_801B6B14: +/* 801B6B14 001B3A74 28 1C 00 00 */ cmplwi r28, 0 +/* 801B6B18 001B3A78 41 82 00 1C */ beq lbl_801B6B34 +/* 801B6B1C 001B3A7C 38 60 00 0E */ li r3, 0xe +/* 801B6B20 001B3A80 7C 60 F2 78 */ xor r0, r3, r30 +/* 801B6B24 001B3A84 7C 00 00 34 */ cntlzw r0, r0 +/* 801B6B28 001B3A88 7C 60 00 30 */ slw r0, r3, r0 +/* 801B6B2C 001B3A8C 54 00 0F FE */ srwi r0, r0, 0x1f +/* 801B6B30 001B3A90 48 00 00 1C */ b lbl_801B6B4C +lbl_801B6B34: +/* 801B6B34 001B3A94 38 1E FF FF */ addi r0, r30, -1 +/* 801B6B38 001B3A98 38 60 00 01 */ li r3, 1 +/* 801B6B3C 001B3A9C 7F C3 1B 38 */ orc r3, r30, r3 +/* 801B6B40 001B3AA0 54 00 F8 7E */ srwi r0, r0, 1 +/* 801B6B44 001B3AA4 7C 00 18 50 */ subf r0, r0, r3 +/* 801B6B48 001B3AA8 54 00 0F FE */ srwi r0, r0, 0x1f +lbl_801B6B4C: +/* 801B6B4C 001B3AAC 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 801B6B50 001B3AB0 40 82 FE 4C */ bne lbl_801B699C +/* 801B6B54 001B3AB4 28 1D 00 00 */ cmplwi r29, 0 +/* 801B6B58 001B3AB8 41 82 00 0C */ beq lbl_801B6B64 +/* 801B6B5C 001B3ABC 3B FF 00 01 */ addi r31, r31, 1 +/* 801B6B60 001B3AC0 48 00 00 08 */ b lbl_801B6B68 +lbl_801B6B64: +/* 801B6B64 001B3AC4 3B FF FF FF */ addi r31, r31, -1 +lbl_801B6B68: +/* 801B6B68 001B3AC8 28 1D 00 00 */ cmplwi r29, 0 +/* 801B6B6C 001B3ACC 41 82 00 1C */ beq lbl_801B6B88 +/* 801B6B70 001B3AD0 38 60 00 0E */ li r3, 0xe +/* 801B6B74 001B3AD4 7C 60 FA 78 */ xor r0, r3, r31 +/* 801B6B78 001B3AD8 7C 00 00 34 */ cntlzw r0, r0 +/* 801B6B7C 001B3ADC 7C 60 00 30 */ slw r0, r3, r0 +/* 801B6B80 001B3AE0 54 00 0F FE */ srwi r0, r0, 0x1f +/* 801B6B84 001B3AE4 48 00 00 1C */ b lbl_801B6BA0 +lbl_801B6B88: +/* 801B6B88 001B3AE8 38 1F FF FF */ addi r0, r31, -1 +/* 801B6B8C 001B3AEC 38 60 00 01 */ li r3, 1 +/* 801B6B90 001B3AF0 7F E3 1B 38 */ orc r3, r31, r3 +/* 801B6B94 001B3AF4 54 00 F8 7E */ srwi r0, r0, 1 +/* 801B6B98 001B3AF8 7C 00 18 50 */ subf r0, r0, r3 +/* 801B6B9C 001B3AFC 54 00 0F FE */ srwi r0, r0, 0x1f +lbl_801B6BA0: +/* 801B6BA0 001B3B00 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 801B6BA4 001B3B04 40 82 FD F0 */ bne lbl_801B6994 +/* 801B6BA8 001B3B08 38 00 00 00 */ li r0, 0 +/* 801B6BAC 001B3B0C 98 18 00 1C */ stb r0, 0x1c(r24) +lbl_801B6BB0: +/* 801B6BB0 001B3B10 BB 01 00 50 */ lmw r24, 0x50(r1) +/* 801B6BB4 001B3B14 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801B6BB8 001B3B18 7C 08 03 A6 */ mtlr r0 +/* 801B6BBC 001B3B1C 38 21 00 70 */ addi r1, r1, 0x70 +/* 801B6BC0 001B3B20 4E 80 00 20 */ blr + +.global pointInSphere__FRC7CSphereRC9CVector3f +pointInSphere__FRC7CSphereRC9CVector3f: +/* 801B6BC4 001B3B24 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801B6BC8 001B3B28 C0 43 00 04 */ lfs f2, 4(r3) +/* 801B6BCC 001B3B2C C0 04 00 04 */ lfs f0, 4(r4) +/* 801B6BD0 001B3B30 C0 23 00 00 */ lfs f1, 0(r3) +/* 801B6BD4 001B3B34 EC 82 00 28 */ fsubs f4, f2, f0 +/* 801B6BD8 001B3B38 C0 04 00 00 */ lfs f0, 0(r4) +/* 801B6BDC 001B3B3C C0 A3 00 0C */ lfs f5, 0xc(r3) +/* 801B6BE0 001B3B40 EC 41 00 28 */ fsubs f2, f1, f0 +/* 801B6BE4 001B3B44 C0 63 00 08 */ lfs f3, 8(r3) +/* 801B6BE8 001B3B48 C0 24 00 08 */ lfs f1, 8(r4) +/* 801B6BEC 001B3B4C EC 04 01 32 */ fmuls f0, f4, f4 +/* 801B6BF0 001B3B50 D0 81 00 0C */ stfs f4, 0xc(r1) +/* 801B6BF4 001B3B54 EC 63 08 28 */ fsubs f3, f3, f1 +/* 801B6BF8 001B3B58 EC 22 00 B2 */ fmuls f1, f2, f2 +/* 801B6BFC 001B3B5C D0 41 00 08 */ stfs f2, 8(r1) +/* 801B6C00 001B3B60 EC A5 01 72 */ fmuls f5, f5, f5 +/* 801B6C04 001B3B64 EC 43 00 F2 */ fmuls f2, f3, f3 +/* 801B6C08 001B3B68 D0 61 00 10 */ stfs f3, 0x10(r1) +/* 801B6C0C 001B3B6C EC 01 00 2A */ fadds f0, f1, f0 +/* 801B6C10 001B3B70 EC 02 00 2A */ fadds f0, f2, f0 +/* 801B6C14 001B3B74 FC 00 28 40 */ fcmpo cr0, f0, f5 +/* 801B6C18 001B3B78 4C 40 13 82 */ cror 2, 0, 2 +/* 801B6C1C 001B3B7C 7C 00 00 26 */ mfcr r0 +/* 801B6C20 001B3B80 54 03 1F FE */ rlwinm r3, r0, 3, 0x1f, 0x1f +/* 801B6C24 001B3B84 38 21 00 20 */ addi r1, r1, 0x20 +/* 801B6C28 001B3B88 4E 80 00 20 */ blr + +.global Touch__10CIceImpactFR6CActorR13CStateManager +Touch__10CIceImpactFR6CActorR13CStateManager: +/* 801B6C2C 001B3B8C 94 21 FE E0 */ stwu r1, -0x120(r1) +/* 801B6C30 001B3B90 7C 08 02 A6 */ mflr r0 +/* 801B6C34 001B3B94 90 01 01 24 */ stw r0, 0x124(r1) +/* 801B6C38 001B3B98 93 E1 01 1C */ stw r31, 0x11c(r1) +/* 801B6C3C 001B3B9C 7C BF 2B 78 */ mr r31, r5 +/* 801B6C40 001B3BA0 93 C1 01 18 */ stw r30, 0x118(r1) +/* 801B6C44 001B3BA4 7C 9E 23 78 */ mr r30, r4 +/* 801B6C48 001B3BA8 93 A1 01 14 */ stw r29, 0x114(r1) +/* 801B6C4C 001B3BAC 7C 7D 1B 78 */ mr r29, r3 +/* 801B6C50 001B3BB0 93 81 01 10 */ stw r28, 0x110(r1) +/* 801B6C54 001B3BB4 C0 23 00 F4 */ lfs f1, 0xf4(r3) +/* 801B6C58 001B3BB8 C0 03 00 F8 */ lfs f0, 0xf8(r3) +/* 801B6C5C 001B3BBC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B6C60 001B3BC0 41 81 03 5C */ bgt lbl_801B6FBC +/* 801B6C64 001B3BC4 81 84 00 00 */ lwz r12, 0(r4) +/* 801B6C68 001B3BC8 38 61 00 98 */ addi r3, r1, 0x98 +/* 801B6C6C 001B3BCC 81 8C 00 40 */ lwz r12, 0x40(r12) +/* 801B6C70 001B3BD0 7D 89 03 A6 */ mtctr r12 +/* 801B6C74 001B3BD4 4E 80 04 21 */ bctrl +/* 801B6C78 001B3BD8 88 01 00 B0 */ lbz r0, 0xb0(r1) +/* 801B6C7C 001B3BDC 28 00 00 00 */ cmplwi r0, 0 +/* 801B6C80 001B3BE0 98 01 01 00 */ stb r0, 0x100(r1) +/* 801B6C84 001B3BE4 41 82 00 3C */ beq lbl_801B6CC0 +/* 801B6C88 001B3BE8 34 61 00 E8 */ addic. r3, r1, 0xe8 +/* 801B6C8C 001B3BEC 41 82 00 34 */ beq lbl_801B6CC0 +/* 801B6C90 001B3BF0 C0 01 00 98 */ lfs f0, 0x98(r1) +/* 801B6C94 001B3BF4 D0 03 00 00 */ stfs f0, 0(r3) +/* 801B6C98 001B3BF8 C0 01 00 9C */ lfs f0, 0x9c(r1) +/* 801B6C9C 001B3BFC D0 03 00 04 */ stfs f0, 4(r3) +/* 801B6CA0 001B3C00 C0 01 00 A0 */ lfs f0, 0xa0(r1) +/* 801B6CA4 001B3C04 D0 03 00 08 */ stfs f0, 8(r3) +/* 801B6CA8 001B3C08 C0 01 00 A4 */ lfs f0, 0xa4(r1) +/* 801B6CAC 001B3C0C D0 03 00 0C */ stfs f0, 0xc(r3) +/* 801B6CB0 001B3C10 C0 01 00 A8 */ lfs f0, 0xa8(r1) +/* 801B6CB4 001B3C14 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 801B6CB8 001B3C18 C0 01 00 AC */ lfs f0, 0xac(r1) +/* 801B6CBC 001B3C1C D0 03 00 14 */ stfs f0, 0x14(r3) +lbl_801B6CC0: +/* 801B6CC0 001B3C20 88 01 01 00 */ lbz r0, 0x100(r1) +/* 801B6CC4 001B3C24 38 60 00 00 */ li r3, 0 +/* 801B6CC8 001B3C28 98 61 00 B0 */ stb r3, 0xb0(r1) +/* 801B6CCC 001B3C2C 28 00 00 00 */ cmplwi r0, 0 +/* 801B6CD0 001B3C30 41 82 02 E4 */ beq lbl_801B6FB4 +/* 801B6CD4 001B3C34 88 01 00 4C */ lbz r0, 0x4c(r1) +/* 801B6CD8 001B3C38 38 C0 00 01 */ li r6, 1 +/* 801B6CDC 001B3C3C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801B6CE0 001B3C40 C0 42 A9 88 */ lfs f2, lbl_805AC6A8@sda21(r2) +/* 801B6CE4 001B3C44 98 01 00 4C */ stb r0, 0x4c(r1) +/* 801B6CE8 001B3C48 54 00 06 3E */ clrlwi r0, r0, 0x18 +/* 801B6CEC 001B3C4C 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19 +/* 801B6CF0 001B3C50 C0 22 A9 84 */ lfs f1, lbl_805AC6A4@sda21(r2) +/* 801B6CF4 001B3C54 C0 02 A9 68 */ lfs f0, lbl_805AC688@sda21(r2) +/* 801B6CF8 001B3C58 54 05 06 3E */ clrlwi r5, r0, 0x18 +/* 801B6CFC 001B3C5C 98 01 00 4C */ stb r0, 0x4c(r1) +/* 801B6D00 001B3C60 50 65 2E B4 */ rlwimi r5, r3, 5, 0x1a, 0x1a +/* 801B6D04 001B3C64 88 01 00 E4 */ lbz r0, 0xe4(r1) +/* 801B6D08 001B3C68 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801B6D0C 001B3C6C 90 C1 00 48 */ stw r6, 0x48(r1) +/* 801B6D10 001B3C70 7F C4 F3 78 */ mr r4, r30 +/* 801B6D14 001B3C74 38 61 00 40 */ addi r3, r1, 0x40 +/* 801B6D18 001B3C78 98 A1 00 4C */ stb r5, 0x4c(r1) +/* 801B6D1C 001B3C7C 90 C1 00 CC */ stw r6, 0xcc(r1) +/* 801B6D20 001B3C80 98 A1 00 D0 */ stb r5, 0xd0(r1) +/* 801B6D24 001B3C84 D0 41 00 D4 */ stfs f2, 0xd4(r1) +/* 801B6D28 001B3C88 D0 41 00 D8 */ stfs f2, 0xd8(r1) +/* 801B6D2C 001B3C8C D0 21 00 DC */ stfs f1, 0xdc(r1) +/* 801B6D30 001B3C90 D0 01 00 E0 */ stfs f0, 0xe0(r1) +/* 801B6D34 001B3C94 98 01 00 E4 */ stb r0, 0xe4(r1) +/* 801B6D38 001B3C98 4B EF 5D 25 */ bl "__ct__16TCastToPtr<3CAi>FP7CEntity" +/* 801B6D3C 001B3C9C 83 83 00 04 */ lwz r28, 4(r3) +/* 801B6D40 001B3CA0 28 1C 00 00 */ cmplwi r28, 0 +/* 801B6D44 001B3CA4 41 82 01 88 */ beq lbl_801B6ECC +/* 801B6D48 001B3CA8 C0 01 00 F8 */ lfs f0, 0xf8(r1) +/* 801B6D4C 001B3CAC 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 801B6D50 001B3CB0 C0 A2 A9 84 */ lfs f5, lbl_805AC6A4@sda21(r2) +/* 801B6D54 001B3CB4 38 81 00 5C */ addi r4, r1, 0x5c +/* 801B6D58 001B3CB8 C0 41 00 F4 */ lfs f2, 0xf4(r1) +/* 801B6D5C 001B3CBC 38 A1 00 50 */ addi r5, r1, 0x50 +/* 801B6D60 001B3CC0 C0 21 00 EC */ lfs f1, 0xec(r1) +/* 801B6D64 001B3CC4 EC E0 28 2A */ fadds f7, f0, f5 +/* 801B6D68 001B3CC8 C0 01 00 E8 */ lfs f0, 0xe8(r1) +/* 801B6D6C 001B3CCC EC 42 28 2A */ fadds f2, f2, f5 +/* 801B6D70 001B3CD0 EC C1 28 28 */ fsubs f6, f1, f5 +/* 801B6D74 001B3CD4 C0 81 00 FC */ lfs f4, 0xfc(r1) +/* 801B6D78 001B3CD8 C0 62 A9 74 */ lfs f3, lbl_805AC694@sda21(r2) +/* 801B6D7C 001B3CDC C0 21 00 F0 */ lfs f1, 0xf0(r1) +/* 801B6D80 001B3CE0 EC 00 28 28 */ fsubs f0, f0, f5 +/* 801B6D84 001B3CE4 EC 84 18 2A */ fadds f4, f4, f3 +/* 801B6D88 001B3CE8 EC 21 18 28 */ fsubs f1, f1, f3 +/* 801B6D8C 001B3CEC D0 41 00 50 */ stfs f2, 0x50(r1) +/* 801B6D90 001B3CF0 D0 E1 00 54 */ stfs f7, 0x54(r1) +/* 801B6D94 001B3CF4 D0 81 00 58 */ stfs f4, 0x58(r1) +/* 801B6D98 001B3CF8 D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 801B6D9C 001B3CFC D0 C1 00 60 */ stfs f6, 0x60(r1) +/* 801B6DA0 001B3D00 D0 21 00 64 */ stfs f1, 0x64(r1) +/* 801B6DA4 001B3D04 48 18 17 65 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801B6DA8 001B3D08 38 7D 01 18 */ addi r3, r29, 0x118 +/* 801B6DAC 001B3D0C 38 81 00 B4 */ addi r4, r1, 0xb4 +/* 801B6DB0 001B3D10 38 A0 00 01 */ li r5, 1 +/* 801B6DB4 001B3D14 48 00 12 0D */ bl AABoxTouchesData__11CMarkerGridCFRC6CAABoxUi +/* 801B6DB8 001B3D18 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B6DBC 001B3D1C 41 82 01 10 */ beq lbl_801B6ECC +/* 801B6DC0 001B3D20 88 01 00 3C */ lbz r0, 0x3c(r1) +/* 801B6DC4 001B3D24 38 80 00 00 */ li r4, 0 +/* 801B6DC8 001B3D28 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801B6DCC 001B3D2C 38 A0 00 01 */ li r5, 1 +/* 801B6DD0 001B3D30 98 01 00 3C */ stb r0, 0x3c(r1) +/* 801B6DD4 001B3D34 54 00 06 3E */ clrlwi r0, r0, 0x18 +/* 801B6DD8 001B3D38 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 801B6DDC 001B3D3C 7F 83 E3 78 */ mr r3, r28 +/* 801B6DE0 001B3D40 98 01 00 3C */ stb r0, 0x3c(r1) +/* 801B6DE4 001B3D44 54 00 06 3E */ clrlwi r0, r0, 0x18 +/* 801B6DE8 001B3D48 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 801B6DEC 001B3D4C 90 A1 00 38 */ stw r5, 0x38(r1) +/* 801B6DF0 001B3D50 98 01 00 3C */ stb r0, 0x3c(r1) +/* 801B6DF4 001B3D54 81 9C 00 00 */ lwz r12, 0(r28) +/* 801B6DF8 001B3D58 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 801B6DFC 001B3D5C 7D 89 03 A6 */ mtctr r12 +/* 801B6E00 001B3D60 4E 80 04 21 */ bctrl +/* 801B6E04 001B3D64 38 81 00 38 */ addi r4, r1, 0x38 +/* 801B6E08 001B3D68 38 A0 00 00 */ li r5, 0 +/* 801B6E0C 001B3D6C 4B F4 B7 79 */ bl WeaponHits__20CDamageVulnerabilityCFRC11CWeaponModei +/* 801B6E10 001B3D70 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B6E14 001B3D74 41 82 00 B8 */ beq lbl_801B6ECC +/* 801B6E18 001B3D78 88 1C 04 E1 */ lbz r0, 0x4e1(r28) +/* 801B6E1C 001B3D7C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801B6E20 001B3D80 41 82 00 AC */ beq lbl_801B6ECC +/* 801B6E24 001B3D84 80 7C 04 50 */ lwz r3, 0x450(r28) +/* 801B6E28 001B3D88 4B F8 32 A5 */ bl GetPercentageFrozen__15CBodyControllerCFv +/* 801B6E2C 001B3D8C C0 02 A9 84 */ lfs f0, lbl_805AC6A4@sda21(r2) +/* 801B6E30 001B3D90 FC 00 08 00 */ fcmpu cr0, f0, f1 +/* 801B6E34 001B3D94 40 82 00 98 */ bne lbl_801B6ECC +/* 801B6E38 001B3D98 C0 3D 00 F8 */ lfs f1, 0xf8(r29) +/* 801B6E3C 001B3D9C C0 5D 00 F4 */ lfs f2, 0xf4(r29) +/* 801B6E40 001B3DA0 C0 02 A9 74 */ lfs f0, lbl_805AC694@sda21(r2) +/* 801B6E44 001B3DA4 EC 21 10 28 */ fsubs f1, f1, f2 +/* 801B6E48 001B3DA8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B6E4C 001B3DAC 40 81 00 80 */ ble lbl_801B6ECC +/* 801B6E50 001B3DB0 C0 02 A9 8C */ lfs f0, lbl_805AC6AC@sda21(r2) +/* 801B6E54 001B3DB4 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801B6E58 001B3DB8 40 80 00 74 */ bge lbl_801B6ECC +/* 801B6E5C 001B3DBC 80 AD 90 D8 */ lwz r5, lbl_805A7C98@sda21(r13) +/* 801B6E60 001B3DC0 38 60 00 00 */ li r3, 0 +/* 801B6E64 001B3DC4 38 80 00 01 */ li r4, 1 +/* 801B6E68 001B3DC8 48 1D 30 8D */ bl __shl2i +/* 801B6E6C 001B3DCC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801B6E70 001B3DD0 39 00 00 00 */ li r8, 0 +/* 801B6E74 001B3DD4 39 40 00 03 */ li r10, 3 +/* 801B6E78 001B3DD8 90 81 00 84 */ stw r4, 0x84(r1) +/* 801B6E7C 001B3DDC 3C A0 80 5A */ lis r5, skZero3f@ha +/* 801B6E80 001B3DE0 38 81 00 2C */ addi r4, r1, 0x2c +/* 801B6E84 001B3DE4 90 61 00 80 */ stw r3, 0x80(r1) +/* 801B6E88 001B3DE8 39 25 66 A0 */ addi r9, r5, skZero3f@l +/* 801B6E8C 001B3DEC 7F E3 FB 78 */ mr r3, r31 +/* 801B6E90 001B3DF0 38 A1 00 24 */ addi r5, r1, 0x24 +/* 801B6E94 001B3DF4 91 01 00 8C */ stw r8, 0x8c(r1) +/* 801B6E98 001B3DF8 38 C1 00 1C */ addi r6, r1, 0x1c +/* 801B6E9C 001B3DFC 38 E1 00 CC */ addi r7, r1, 0xcc +/* 801B6EA0 001B3E00 91 01 00 88 */ stw r8, 0x88(r1) +/* 801B6EA4 001B3E04 39 01 00 80 */ addi r8, r1, 0x80 +/* 801B6EA8 001B3E08 91 41 00 90 */ stw r10, 0x90(r1) +/* 801B6EAC 001B3E0C B0 01 00 1C */ sth r0, 0x1c(r1) +/* 801B6EB0 001B3E10 A1 5E 00 08 */ lhz r10, 8(r30) +/* 801B6EB4 001B3E14 B1 41 00 24 */ sth r10, 0x24(r1) +/* 801B6EB8 001B3E18 A0 1D 00 08 */ lhz r0, 8(r29) +/* 801B6EBC 001B3E1C B1 41 00 20 */ sth r10, 0x20(r1) +/* 801B6EC0 001B3E20 B0 01 00 28 */ sth r0, 0x28(r1) +/* 801B6EC4 001B3E24 B0 01 00 2C */ sth r0, 0x2c(r1) +/* 801B6EC8 001B3E28 4B E9 31 D9 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +lbl_801B6ECC: +/* 801B6ECC 001B3E2C 80 7E 00 68 */ lwz r3, 0x68(r30) +/* 801B6ED0 001B3E30 3C 00 01 00 */ lis r0, 0x100 +/* 801B6ED4 001B3E34 80 BE 00 6C */ lwz r5, 0x6c(r30) +/* 801B6ED8 001B3E38 38 80 00 00 */ li r4, 0 +/* 801B6EDC 001B3E3C 7C 60 00 38 */ and r0, r3, r0 +/* 801B6EE0 001B3E40 7C A3 20 38 */ and r3, r5, r4 +/* 801B6EE4 001B3E44 7C 63 22 78 */ xor r3, r3, r4 +/* 801B6EE8 001B3E48 7C 00 22 78 */ xor r0, r0, r4 +/* 801B6EEC 001B3E4C 7C 60 03 79 */ or. r0, r3, r0 +/* 801B6EF0 001B3E50 41 82 00 8C */ beq lbl_801B6F7C +/* 801B6EF4 001B3E54 38 7D 01 18 */ addi r3, r29, 0x118 +/* 801B6EF8 001B3E58 38 81 00 E8 */ addi r4, r1, 0xe8 +/* 801B6EFC 001B3E5C 38 A0 00 01 */ li r5, 1 +/* 801B6F00 001B3E60 48 00 10 C1 */ bl AABoxTouchesData__11CMarkerGridCFRC6CAABoxUi +/* 801B6F04 001B3E64 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B6F08 001B3E68 41 82 00 74 */ beq lbl_801B6F7C +/* 801B6F0C 001B3E6C 80 AD 90 D8 */ lwz r5, lbl_805A7C98@sda21(r13) +/* 801B6F10 001B3E70 38 60 00 00 */ li r3, 0 +/* 801B6F14 001B3E74 38 80 00 01 */ li r4, 1 +/* 801B6F18 001B3E78 48 1D 2F DD */ bl __shl2i +/* 801B6F1C 001B3E7C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801B6F20 001B3E80 39 00 00 00 */ li r8, 0 +/* 801B6F24 001B3E84 39 40 00 03 */ li r10, 3 +/* 801B6F28 001B3E88 90 81 00 6C */ stw r4, 0x6c(r1) +/* 801B6F2C 001B3E8C 3C A0 80 5A */ lis r5, skZero3f@ha +/* 801B6F30 001B3E90 38 81 00 18 */ addi r4, r1, 0x18 +/* 801B6F34 001B3E94 90 61 00 68 */ stw r3, 0x68(r1) +/* 801B6F38 001B3E98 39 25 66 A0 */ addi r9, r5, skZero3f@l +/* 801B6F3C 001B3E9C 7F E3 FB 78 */ mr r3, r31 +/* 801B6F40 001B3EA0 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801B6F44 001B3EA4 91 01 00 74 */ stw r8, 0x74(r1) +/* 801B6F48 001B3EA8 38 C1 00 08 */ addi r6, r1, 8 +/* 801B6F4C 001B3EAC 38 E1 00 CC */ addi r7, r1, 0xcc +/* 801B6F50 001B3EB0 91 01 00 70 */ stw r8, 0x70(r1) +/* 801B6F54 001B3EB4 39 01 00 68 */ addi r8, r1, 0x68 +/* 801B6F58 001B3EB8 91 41 00 78 */ stw r10, 0x78(r1) +/* 801B6F5C 001B3EBC B0 01 00 08 */ sth r0, 8(r1) +/* 801B6F60 001B3EC0 A1 5E 00 08 */ lhz r10, 8(r30) +/* 801B6F64 001B3EC4 B1 41 00 10 */ sth r10, 0x10(r1) +/* 801B6F68 001B3EC8 A0 1D 00 08 */ lhz r0, 8(r29) +/* 801B6F6C 001B3ECC B1 41 00 0C */ sth r10, 0xc(r1) +/* 801B6F70 001B3ED0 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801B6F74 001B3ED4 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801B6F78 001B3ED8 4B E9 31 29 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +lbl_801B6F7C: +/* 801B6F7C 001B3EDC 7F C4 F3 78 */ mr r4, r30 +/* 801B6F80 001B3EE0 38 61 00 30 */ addi r3, r1, 0x30 +/* 801B6F84 001B3EE4 4B EE EC 8D */ bl "__ct__31TCastToPtr<17CWallCrawlerSwarm>FP7CEntity" +/* 801B6F88 001B3EE8 80 63 00 04 */ lwz r3, 4(r3) +/* 801B6F8C 001B3EEC 28 03 00 00 */ cmplwi r3, 0 +/* 801B6F90 001B3EF0 41 82 00 24 */ beq lbl_801B6FB4 +/* 801B6F94 001B3EF4 C0 5D 00 F8 */ lfs f2, 0xf8(r29) +/* 801B6F98 001B3EF8 C0 3D 00 F4 */ lfs f1, 0xf4(r29) +/* 801B6F9C 001B3EFC C0 02 A9 74 */ lfs f0, lbl_805AC694@sda21(r2) +/* 801B6FA0 001B3F00 EC 22 08 28 */ fsubs f1, f2, f1 +/* 801B6FA4 001B3F04 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B6FA8 001B3F08 40 81 00 0C */ ble lbl_801B6FB4 +/* 801B6FAC 001B3F0C 38 9D 01 18 */ addi r4, r29, 0x118 +/* 801B6FB0 001B3F10 48 03 09 6D */ bl FreezeCollision__17CWallCrawlerSwarmFRC11CMarkerGridf +lbl_801B6FB4: +/* 801B6FB4 001B3F14 38 00 00 00 */ li r0, 0 +/* 801B6FB8 001B3F18 98 01 01 00 */ stb r0, 0x100(r1) +lbl_801B6FBC: +/* 801B6FBC 001B3F1C 80 01 01 24 */ lwz r0, 0x124(r1) +/* 801B6FC0 001B3F20 83 E1 01 1C */ lwz r31, 0x11c(r1) +/* 801B6FC4 001B3F24 83 C1 01 18 */ lwz r30, 0x118(r1) +/* 801B6FC8 001B3F28 83 A1 01 14 */ lwz r29, 0x114(r1) +/* 801B6FCC 001B3F2C 83 81 01 10 */ lwz r28, 0x110(r1) +/* 801B6FD0 001B3F30 7C 08 03 A6 */ mtlr r0 +/* 801B6FD4 001B3F34 38 21 01 20 */ addi r1, r1, 0x120 +/* 801B6FD8 001B3F38 4E 80 00 20 */ blr + +.global GetTouchBounds__10CIceImpactCFv +GetTouchBounds__10CIceImpactCFv: +/* 801B6FDC 001B3F3C 38 00 00 01 */ li r0, 1 +/* 801B6FE0 001B3F40 28 03 00 00 */ cmplwi r3, 0 +/* 801B6FE4 001B3F44 98 03 00 18 */ stb r0, 0x18(r3) +/* 801B6FE8 001B3F48 4D 82 00 20 */ beqlr +/* 801B6FEC 001B3F4C C0 04 01 18 */ lfs f0, 0x118(r4) +/* 801B6FF0 001B3F50 D0 03 00 00 */ stfs f0, 0(r3) +/* 801B6FF4 001B3F54 C0 04 01 1C */ lfs f0, 0x11c(r4) +/* 801B6FF8 001B3F58 D0 03 00 04 */ stfs f0, 4(r3) +/* 801B6FFC 001B3F5C C0 04 01 20 */ lfs f0, 0x120(r4) +/* 801B7000 001B3F60 D0 03 00 08 */ stfs f0, 8(r3) +/* 801B7004 001B3F64 C0 04 01 24 */ lfs f0, 0x124(r4) +/* 801B7008 001B3F68 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 801B700C 001B3F6C C0 04 01 28 */ lfs f0, 0x128(r4) +/* 801B7010 001B3F70 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 801B7014 001B3F74 C0 04 01 2C */ lfs f0, 0x12c(r4) +/* 801B7018 001B3F78 D0 03 00 14 */ stfs f0, 0x14(r3) +/* 801B701C 001B3F7C 4E 80 00 20 */ blr + +.global AcceptScriptMsg__10CIceImpactF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__10CIceImpactF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 801B7020 001B3F80 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 801B7024 001B3F84 7C 08 02 A6 */ mflr r0 +/* 801B7028 001B3F88 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 801B702C 001B3F8C BE E1 00 AC */ stmw r23, 0xac(r1) +/* 801B7030 001B3F90 7C 9D 23 78 */ mr r29, r4 +/* 801B7034 001B3F94 2C 1D 00 22 */ cmpwi r29, 0x22 +/* 801B7038 001B3F98 7C 7C 1B 78 */ mr r28, r3 +/* 801B703C 001B3F9C 7C BE 2B 78 */ mr r30, r5 +/* 801B7040 001B3FA0 7C DF 33 78 */ mr r31, r6 +/* 801B7044 001B3FA4 41 82 01 44 */ beq lbl_801B7188 +/* 801B7048 001B3FA8 40 80 01 6C */ bge lbl_801B71B4 +/* 801B704C 001B3FAC 2C 1D 00 21 */ cmpwi r29, 0x21 +/* 801B7050 001B3FB0 40 80 00 08 */ bge lbl_801B7058 +/* 801B7054 001B3FB4 48 00 01 60 */ b lbl_801B71B4 +lbl_801B7058: +/* 801B7058 001B3FB8 80 7C 00 E8 */ lwz r3, 0xe8(r28) +/* 801B705C 001B3FBC 81 83 00 00 */ lwz r12, 0(r3) +/* 801B7060 001B3FC0 81 8C 00 64 */ lwz r12, 0x64(r12) +/* 801B7064 001B3FC4 7D 89 03 A6 */ mtctr r12 +/* 801B7068 001B3FC8 4E 80 04 21 */ bctrl +/* 801B706C 001B3FCC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B7070 001B3FD0 41 82 01 44 */ beq lbl_801B71B4 +/* 801B7074 001B3FD4 7F E4 FB 78 */ mr r4, r31 +/* 801B7078 001B3FD8 38 61 00 2C */ addi r3, r1, 0x2c +/* 801B707C 001B3FDC 4B E9 60 61 */ bl AllocateUniqueId__13CStateManagerFv +/* 801B7080 001B3FE0 A0 01 00 2C */ lhz r0, 0x2c(r1) +/* 801B7084 001B3FE4 3C 60 80 3D */ lis r3, lbl_803D1640@ha +/* 801B7088 001B3FE8 38 83 16 40 */ addi r4, r3, lbl_803D1640@l +/* 801B708C 001B3FEC 3B 60 00 00 */ li r27, 0 +/* 801B7090 001B3FF0 B0 1C 00 EC */ sth r0, 0xec(r28) +/* 801B7094 001B3FF4 3A E0 00 00 */ li r23, 0 +/* 801B7098 001B3FF8 38 60 01 48 */ li r3, 0x148 +/* 801B709C 001B3FFC 38 A0 00 00 */ li r5, 0 +/* 801B70A0 001B4000 83 1C 00 F0 */ lwz r24, 0xf0(r28) +/* 801B70A4 001B4004 48 15 E7 C9 */ bl __nw__FUlPCcPCc +/* 801B70A8 001B4008 7C 7A 1B 79 */ or. r26, r3, r3 +/* 801B70AC 001B400C 41 82 00 AC */ beq lbl_801B7158 +/* 801B70B0 001B4010 A0 1C 00 08 */ lhz r0, 8(r28) +/* 801B70B4 001B4014 3C 60 80 3D */ lis r3, lbl_803D1640@ha +/* 801B70B8 001B4018 83 3C 00 E8 */ lwz r25, 0xe8(r28) +/* 801B70BC 001B401C 38 83 16 40 */ addi r4, r3, lbl_803D1640@l +/* 801B70C0 001B4020 B0 01 00 24 */ sth r0, 0x24(r1) +/* 801B70C4 001B4024 38 61 00 48 */ addi r3, r1, 0x48 +/* 801B70C8 001B4028 38 84 00 07 */ addi r4, r4, 7 +/* 801B70CC 001B402C B0 01 00 28 */ sth r0, 0x28(r1) +/* 801B70D0 001B4030 4B E4 DB E9 */ bl string_l__4rstlFPCc +/* 801B70D4 001B4034 38 61 00 38 */ addi r3, r1, 0x38 +/* 801B70D8 001B4038 38 81 00 48 */ addi r4, r1, 0x48 +/* 801B70DC 001B403C 38 BC 00 10 */ addi r5, r28, 0x10 +/* 801B70E0 001B4040 3B 60 00 01 */ li r27, 1 +/* 801B70E4 001B4044 4B E4 DB 79 */ bl "__pl__4rstlFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801B70E8 001B4048 88 1C 00 30 */ lbz r0, 0x30(r28) +/* 801B70EC 001B404C 7F 24 CB 78 */ mr r4, r25 +/* 801B70F0 001B4050 80 BC 00 04 */ lwz r5, 4(r28) +/* 801B70F4 001B4054 38 61 00 58 */ addi r3, r1, 0x58 +/* 801B70F8 001B4058 54 19 CF FE */ rlwinm r25, r0, 0x19, 0x1f, 0x1f +/* 801B70FC 001B405C 3A E0 00 01 */ li r23, 1 +/* 801B7100 001B4060 90 A1 00 34 */ stw r5, 0x34(r1) +/* 801B7104 001B4064 A0 1C 00 EC */ lhz r0, 0xec(r28) +/* 801B7108 001B4068 90 A1 00 30 */ stw r5, 0x30(r1) +/* 801B710C 001B406C B0 01 00 20 */ sth r0, 0x20(r1) +/* 801B7110 001B4070 81 84 00 00 */ lwz r12, 0(r4) +/* 801B7114 001B4074 81 8C 00 68 */ lwz r12, 0x68(r12) +/* 801B7118 001B4078 7D 89 03 A6 */ mtctr r12 +/* 801B711C 001B407C 4E 80 04 21 */ bctrl +/* 801B7120 001B4080 93 01 00 08 */ stw r24, 8(r1) +/* 801B7124 001B4084 38 00 00 01 */ li r0, 1 +/* 801B7128 001B4088 C0 22 A9 84 */ lfs f1, lbl_805AC6A4@sda21(r2) +/* 801B712C 001B408C 7F 43 D3 78 */ mr r3, r26 +/* 801B7130 001B4090 90 01 00 0C */ stw r0, 0xc(r1) +/* 801B7134 001B4094 7F 26 CB 78 */ mr r6, r25 +/* 801B7138 001B4098 38 81 00 20 */ addi r4, r1, 0x20 +/* 801B713C 001B409C 38 A1 00 34 */ addi r5, r1, 0x34 +/* 801B7140 001B40A0 38 E1 00 38 */ addi r7, r1, 0x38 +/* 801B7144 001B40A4 39 1C 00 34 */ addi r8, r28, 0x34 +/* 801B7148 001B40A8 39 21 00 28 */ addi r9, r1, 0x28 +/* 801B714C 001B40AC 39 41 00 58 */ addi r10, r1, 0x58 +/* 801B7150 001B40B0 4B EF E6 D5 */ bl "__ct__10CGameLightF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC12CTransform4f9TUniqueIdRC6CLightUiUif" +/* 801B7154 001B40B4 7C 7A 1B 78 */ mr r26, r3 +lbl_801B7158: +/* 801B7158 001B40B8 7F E3 FB 78 */ mr r3, r31 +/* 801B715C 001B40BC 7F 44 D3 78 */ mr r4, r26 +/* 801B7160 001B40C0 4B E9 5B 95 */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +/* 801B7164 001B40C4 7E E0 07 75 */ extsb. r0, r23 +/* 801B7168 001B40C8 41 82 00 0C */ beq lbl_801B7174 +/* 801B716C 001B40CC 38 61 00 38 */ addi r3, r1, 0x38 +/* 801B7170 001B40D0 48 18 69 71 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801B7174: +/* 801B7174 001B40D4 7F 60 07 75 */ extsb. r0, r27 +/* 801B7178 001B40D8 41 82 00 3C */ beq lbl_801B71B4 +/* 801B717C 001B40DC 38 61 00 48 */ addi r3, r1, 0x48 +/* 801B7180 001B40E0 48 18 69 61 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801B7184 001B40E4 48 00 00 30 */ b lbl_801B71B4 +lbl_801B7188: +/* 801B7188 001B40E8 A0 7C 00 EC */ lhz r3, 0xec(r28) +/* 801B718C 001B40EC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801B7190 001B40F0 7C 03 00 40 */ cmplw r3, r0 +/* 801B7194 001B40F4 41 82 00 20 */ beq lbl_801B71B4 +/* 801B7198 001B40F8 A0 1C 00 EC */ lhz r0, 0xec(r28) +/* 801B719C 001B40FC 7F E3 FB 78 */ mr r3, r31 +/* 801B71A0 001B4100 38 81 00 1C */ addi r4, r1, 0x1c +/* 801B71A4 001B4104 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 801B71A8 001B4108 4B E9 50 C5 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +/* 801B71AC 001B410C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801B71B0 001B4110 B0 1C 00 EC */ sth r0, 0xec(r28) +lbl_801B71B4: +/* 801B71B4 001B4114 A0 1E 00 00 */ lhz r0, 0(r30) +/* 801B71B8 001B4118 7F 83 E3 78 */ mr r3, r28 +/* 801B71BC 001B411C 7F A4 EB 78 */ mr r4, r29 +/* 801B71C0 001B4120 7F E6 FB 78 */ mr r6, r31 +/* 801B71C4 001B4124 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801B71C8 001B4128 38 A1 00 18 */ addi r5, r1, 0x18 +/* 801B71CC 001B412C 4B E9 C4 49 */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 801B71D0 001B4130 A0 7C 00 EC */ lhz r3, 0xec(r28) +/* 801B71D4 001B4134 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801B71D8 001B4138 7C 03 00 40 */ cmplw r3, r0 +/* 801B71DC 001B413C 41 82 00 28 */ beq lbl_801B7204 +/* 801B71E0 001B4140 A0 1E 00 00 */ lhz r0, 0(r30) +/* 801B71E4 001B4144 7F E3 FB 78 */ mr r3, r31 +/* 801B71E8 001B4148 7F A6 EB 78 */ mr r6, r29 +/* 801B71EC 001B414C 38 81 00 14 */ addi r4, r1, 0x14 +/* 801B71F0 001B4150 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801B71F4 001B4154 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801B71F8 001B4158 A0 1C 00 EC */ lhz r0, 0xec(r28) +/* 801B71FC 001B415C B0 01 00 14 */ sth r0, 0x14(r1) +/* 801B7200 001B4160 4B E8 CC 55 */ bl SendScriptMsgAlways__13CStateManagerF9TUniqueId +lbl_801B7204: +/* 801B7204 001B4164 BA E1 00 AC */ lmw r23, 0xac(r1) +/* 801B7208 001B4168 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 801B720C 001B416C 7C 08 03 A6 */ mtlr r0 +/* 801B7210 001B4170 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 801B7214 001B4174 4E 80 00 20 */ blr + +.global Accept__10CIceImpactFR8IVisitor +Accept__10CIceImpactFR8IVisitor: +/* 801B7218 001B4178 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B721C 001B417C 7C 08 02 A6 */ mflr r0 +/* 801B7220 001B4180 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B7224 001B4184 7C 60 1B 78 */ mr r0, r3 +/* 801B7228 001B4188 7C 83 23 78 */ mr r3, r4 +/* 801B722C 001B418C 81 84 00 00 */ lwz r12, 0(r4) +/* 801B7230 001B4190 7C 04 03 78 */ mr r4, r0 +/* 801B7234 001B4194 81 8C 00 08 */ lwz r12, 8(r12) +/* 801B7238 001B4198 7D 89 03 A6 */ mtctr r12 +/* 801B723C 001B419C 4E 80 04 21 */ bctrl +/* 801B7240 001B41A0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B7244 001B41A4 7C 08 03 A6 */ mtlr r0 +/* 801B7248 001B41A8 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B724C 001B41AC 4E 80 00 20 */ blr + +.global Think__10CIceImpactFfR13CStateManager +Think__10CIceImpactFfR13CStateManager: +/* 801B7250 001B41B0 94 21 E3 80 */ stwu r1, -0x1c80(r1) +/* 801B7254 001B41B4 7C 08 02 A6 */ mflr r0 +/* 801B7258 001B41B8 90 01 1C 84 */ stw r0, 0x1c84(r1) +/* 801B725C 001B41BC 38 00 1C 78 */ li r0, 0x1c78 +/* 801B7260 001B41C0 DB E1 1C 70 */ stfd f31, 0x1c70(r1) +/* 801B7264 001B41C4 13 E1 00 0E */ psq_stx f31, r1, r0, 0, qr0 +/* 801B7268 001B41C8 BF 01 1C 50 */ stmw r24, 0x1c50(r1) +/* 801B726C 001B41CC 7C 7A 1B 78 */ mr r26, r3 +/* 801B7270 001B41D0 FF E0 08 90 */ fmr f31, f1 +/* 801B7274 001B41D4 C0 23 00 F4 */ lfs f1, 0xf4(r3) +/* 801B7278 001B41D8 7C 9B 23 78 */ mr r27, r4 +/* 801B727C 001B41DC C0 02 A9 8C */ lfs f0, lbl_805AC6AC@sda21(r2) +/* 801B7280 001B41E0 EC 21 F8 2A */ fadds f1, f1, f31 +/* 801B7284 001B41E4 D0 23 00 F4 */ stfs f1, 0xf4(r3) +/* 801B7288 001B41E8 C0 23 00 F4 */ lfs f1, 0xf4(r3) +/* 801B728C 001B41EC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B7290 001B41F0 40 80 02 C8 */ bge lbl_801B7558 +/* 801B7294 001B41F4 80 7A 00 E8 */ lwz r3, 0xe8(r26) +/* 801B7298 001B41F8 81 83 00 00 */ lwz r12, 0(r3) +/* 801B729C 001B41FC 81 8C 00 60 */ lwz r12, 0x60(r12) +/* 801B72A0 001B4200 7D 89 03 A6 */ mtctr r12 +/* 801B72A4 001B4204 4E 80 04 21 */ bctrl +/* 801B72A8 001B4208 2C 03 01 90 */ cmpwi r3, 0x190 +/* 801B72AC 001B420C 40 80 02 AC */ bge lbl_801B7558 +/* 801B72B0 001B4210 3B DA 05 44 */ addi r30, r26, 0x544 +/* 801B72B4 001B4214 3B 20 00 00 */ li r25, 0 +/* 801B72B8 001B4218 7F DC F3 78 */ mr r28, r30 +/* 801B72BC 001B421C 48 00 00 CC */ b lbl_801B7388 +lbl_801B72C0: +/* 801B72C0 001B4220 C0 3C 00 14 */ lfs f1, 0x14(r28) +/* 801B72C4 001B4224 C0 1C 00 0C */ lfs f0, 0xc(r28) +/* 801B72C8 001B4228 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B72CC 001B422C 40 81 00 B4 */ ble lbl_801B7380 +/* 801B72D0 001B4230 7F 44 D3 78 */ mr r4, r26 +/* 801B72D4 001B4234 38 61 00 5C */ addi r3, r1, 0x5c +/* 801B72D8 001B4238 4B FF F6 75 */ bl GenerateNewSphere__10CIceImpactFv +/* 801B72DC 001B423C 88 01 00 78 */ lbz r0, 0x78(r1) +/* 801B72E0 001B4240 28 00 00 00 */ cmplwi r0, 0 +/* 801B72E4 001B4244 98 01 00 B0 */ stb r0, 0xb0(r1) +/* 801B72E8 001B4248 41 82 00 44 */ beq lbl_801B732C +/* 801B72EC 001B424C 34 61 00 94 */ addic. r3, r1, 0x94 +/* 801B72F0 001B4250 41 82 00 3C */ beq lbl_801B732C +/* 801B72F4 001B4254 C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 801B72F8 001B4258 D0 03 00 00 */ stfs f0, 0(r3) +/* 801B72FC 001B425C C0 01 00 60 */ lfs f0, 0x60(r1) +/* 801B7300 001B4260 D0 03 00 04 */ stfs f0, 4(r3) +/* 801B7304 001B4264 C0 01 00 64 */ lfs f0, 0x64(r1) +/* 801B7308 001B4268 D0 03 00 08 */ stfs f0, 8(r3) +/* 801B730C 001B426C C0 01 00 68 */ lfs f0, 0x68(r1) +/* 801B7310 001B4270 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 801B7314 001B4274 C0 01 00 6C */ lfs f0, 0x6c(r1) +/* 801B7318 001B4278 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 801B731C 001B427C C0 01 00 70 */ lfs f0, 0x70(r1) +/* 801B7320 001B4280 D0 03 00 14 */ stfs f0, 0x14(r3) +/* 801B7324 001B4284 C0 01 00 74 */ lfs f0, 0x74(r1) +/* 801B7328 001B4288 D0 03 00 18 */ stfs f0, 0x18(r3) +lbl_801B732C: +/* 801B732C 001B428C 88 01 00 B0 */ lbz r0, 0xb0(r1) +/* 801B7330 001B4290 38 60 00 00 */ li r3, 0 +/* 801B7334 001B4294 98 61 00 78 */ stb r3, 0x78(r1) +/* 801B7338 001B4298 28 00 00 00 */ cmplwi r0, 0 +/* 801B733C 001B429C 41 82 00 3C */ beq lbl_801B7378 +/* 801B7340 001B42A0 80 01 00 94 */ lwz r0, 0x94(r1) +/* 801B7344 001B42A4 80 61 00 98 */ lwz r3, 0x98(r1) +/* 801B7348 001B42A8 90 1C 00 00 */ stw r0, 0(r28) +/* 801B734C 001B42AC 80 01 00 9C */ lwz r0, 0x9c(r1) +/* 801B7350 001B42B0 90 7C 00 04 */ stw r3, 4(r28) +/* 801B7354 001B42B4 C0 21 00 A0 */ lfs f1, 0xa0(r1) +/* 801B7358 001B42B8 90 1C 00 08 */ stw r0, 8(r28) +/* 801B735C 001B42BC C0 01 00 A4 */ lfs f0, 0xa4(r1) +/* 801B7360 001B42C0 D0 3C 00 0C */ stfs f1, 0xc(r28) +/* 801B7364 001B42C4 C0 21 00 A8 */ lfs f1, 0xa8(r1) +/* 801B7368 001B42C8 D0 1C 00 10 */ stfs f0, 0x10(r28) +/* 801B736C 001B42CC C0 01 00 AC */ lfs f0, 0xac(r1) +/* 801B7370 001B42D0 D0 3C 00 14 */ stfs f1, 0x14(r28) +/* 801B7374 001B42D4 D0 1C 00 18 */ stfs f0, 0x18(r28) +lbl_801B7378: +/* 801B7378 001B42D8 38 00 00 00 */ li r0, 0 +/* 801B737C 001B42DC 98 01 00 B0 */ stb r0, 0xb0(r1) +lbl_801B7380: +/* 801B7380 001B42E0 3B 9C 00 1C */ addi r28, r28, 0x1c +/* 801B7384 001B42E4 3B 39 00 01 */ addi r25, r25, 1 +lbl_801B7388: +/* 801B7388 001B42E8 80 1A 05 40 */ lwz r0, 0x540(r26) +/* 801B738C 001B42EC 7C 19 00 00 */ cmpw r25, r0 +/* 801B7390 001B42F0 41 80 FF 30 */ blt lbl_801B72C0 +/* 801B7394 001B42F4 3B A1 01 1C */ addi r29, r1, 0x11c +/* 801B7398 001B42F8 3B 80 00 00 */ li r28, 0 +/* 801B739C 001B42FC 3B FD 00 04 */ addi r31, r29, 4 +/* 801B73A0 001B4300 48 00 01 AC */ b lbl_801B754C +lbl_801B73A4: +/* 801B73A4 001B4304 C0 3E 00 14 */ lfs f1, 0x14(r30) +/* 801B73A8 001B4308 C0 1E 00 0C */ lfs f0, 0xc(r30) +/* 801B73AC 001B430C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B73B0 001B4310 41 81 01 94 */ bgt lbl_801B7544 +/* 801B73B4 001B4314 D0 3E 00 18 */ stfs f1, 0x18(r30) +/* 801B73B8 001B4318 38 61 00 7C */ addi r3, r1, 0x7c +/* 801B73BC 001B431C 38 81 00 30 */ addi r4, r1, 0x30 +/* 801B73C0 001B4320 38 A1 00 24 */ addi r5, r1, 0x24 +/* 801B73C4 001B4324 C0 3E 00 14 */ lfs f1, 0x14(r30) +/* 801B73C8 001B4328 C0 1E 00 10 */ lfs f0, 0x10(r30) +/* 801B73CC 001B432C EC 01 00 2A */ fadds f0, f1, f0 +/* 801B73D0 001B4330 D0 1E 00 14 */ stfs f0, 0x14(r30) +/* 801B73D4 001B4334 C0 FE 00 04 */ lfs f7, 4(r30) +/* 801B73D8 001B4338 C1 3E 00 14 */ lfs f9, 0x14(r30) +/* 801B73DC 001B433C C1 1E 00 08 */ lfs f8, 8(r30) +/* 801B73E0 001B4340 C0 5E 00 00 */ lfs f2, 0(r30) +/* 801B73E4 001B4344 EC C7 48 2A */ fadds f6, f7, f9 +/* 801B73E8 001B4348 EC A8 48 2A */ fadds f5, f8, f9 +/* 801B73EC 001B434C D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 801B73F0 001B4350 EC 22 48 2A */ fadds f1, f2, f9 +/* 801B73F4 001B4354 EC 87 48 28 */ fsubs f4, f7, f9 +/* 801B73F8 001B4358 D0 E1 00 50 */ stfs f7, 0x50(r1) +/* 801B73FC 001B435C EC 68 48 28 */ fsubs f3, f8, f9 +/* 801B7400 001B4360 EC 02 48 28 */ fsubs f0, f2, f9 +/* 801B7404 001B4364 D1 01 00 54 */ stfs f8, 0x54(r1) +/* 801B7408 001B4368 D1 21 00 58 */ stfs f9, 0x58(r1) +/* 801B740C 001B436C C1 3E 00 18 */ lfs f9, 0x18(r30) +/* 801B7410 001B4370 D0 41 00 3C */ stfs f2, 0x3c(r1) +/* 801B7414 001B4374 D0 E1 00 40 */ stfs f7, 0x40(r1) +/* 801B7418 001B4378 D1 01 00 44 */ stfs f8, 0x44(r1) +/* 801B741C 001B437C D1 21 00 48 */ stfs f9, 0x48(r1) +/* 801B7420 001B4380 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 801B7424 001B4384 D0 C1 00 28 */ stfs f6, 0x28(r1) +/* 801B7428 001B4388 D0 A1 00 2C */ stfs f5, 0x2c(r1) +/* 801B742C 001B438C D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801B7430 001B4390 D0 81 00 34 */ stfs f4, 0x34(r1) +/* 801B7434 001B4394 D0 61 00 38 */ stfs f3, 0x38(r1) +/* 801B7438 001B4398 48 18 10 D1 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801B743C 001B439C C0 02 A9 84 */ lfs f0, lbl_805AC6A4@sda21(r2) +/* 801B7440 001B43A0 7F 43 D3 78 */ mr r3, r26 +/* 801B7444 001B43A4 7F 64 DB 78 */ mr r4, r27 +/* 801B7448 001B43A8 38 A1 00 7C */ addi r5, r1, 0x7c +/* 801B744C 001B43AC D0 1A 01 04 */ stfs f0, 0x104(r26) +/* 801B7450 001B43B0 38 C1 00 4C */ addi r6, r1, 0x4c +/* 801B7454 001B43B4 38 E1 00 3C */ addi r7, r1, 0x3c +/* 801B7458 001B43B8 4B FF EF F5 */ bl GenerateParticlesAgainstActors__10CIceImpactFR13CStateManagerRC6CAABoxRC7CSphereRC7CSphere +/* 801B745C 001B43BC 38 61 01 04 */ addi r3, r1, 0x104 +/* 801B7460 001B43C0 38 81 00 7C */ addi r4, r1, 0x7c +/* 801B7464 001B43C4 48 0E C6 2D */ bl __ct__19CAreaCollisionCacheFRC6CAABox +/* 801B7468 001B43C8 7F 63 DB 78 */ mr r3, r27 +/* 801B746C 001B43CC 38 81 01 04 */ addi r4, r1, 0x104 +/* 801B7470 001B43D0 4B FC D2 55 */ bl BuildAreaCollisionCache__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCache +/* 801B7474 001B43D4 7F F9 FB 78 */ mr r25, r31 +/* 801B7478 001B43D8 3B 00 00 00 */ li r24, 0 +/* 801B747C 001B43DC 48 00 00 24 */ b lbl_801B74A0 +lbl_801B7480: +/* 801B7480 001B43E0 7F 43 D3 78 */ mr r3, r26 +/* 801B7484 001B43E4 7F 64 DB 78 */ mr r4, r27 +/* 801B7488 001B43E8 7F 25 CB 78 */ mr r5, r25 +/* 801B748C 001B43EC 38 C1 00 4C */ addi r6, r1, 0x4c +/* 801B7490 001B43F0 38 E1 00 3C */ addi r7, r1, 0x3c +/* 801B7494 001B43F4 4B FF F2 DD */ bl GenerateParticlesAgainstWorld__10CIceImpactFR13CStateManagerRCQ220CMetroidAreaCollider16COctreeLeafCacheRC7CSphereRC7CSphere +/* 801B7498 001B43F8 3B 39 09 0C */ addi r25, r25, 0x90c +/* 801B749C 001B43FC 3B 18 00 01 */ addi r24, r24, 1 +lbl_801B74A0: +/* 801B74A0 001B4400 80 01 01 1C */ lwz r0, 0x11c(r1) +/* 801B74A4 001B4404 7C 18 00 00 */ cmpw r24, r0 +/* 801B74A8 001B4408 41 80 FF D8 */ blt lbl_801B7480 +/* 801B74AC 001B440C 28 1D 00 00 */ cmplwi r29, 0 +/* 801B74B0 001B4410 41 82 00 94 */ beq lbl_801B7544 +/* 801B74B4 001B4414 7F E6 FB 78 */ mr r6, r31 +/* 801B74B8 001B4418 38 60 00 00 */ li r3, 0 +/* 801B74BC 001B441C 48 00 00 74 */ b lbl_801B7530 +lbl_801B74C0: +/* 801B74C0 001B4420 28 06 00 00 */ cmplwi r6, 0 +/* 801B74C4 001B4424 41 82 00 64 */ beq lbl_801B7528 +/* 801B74C8 001B4428 34 06 00 04 */ addic. r0, r6, 4 +/* 801B74CC 001B442C 41 82 00 5C */ beq lbl_801B7528 +/* 801B74D0 001B4430 80 E6 00 04 */ lwz r7, 4(r6) +/* 801B74D4 001B4434 38 80 00 00 */ li r4, 0 +/* 801B74D8 001B4438 2C 07 00 00 */ cmpwi r7, 0 +/* 801B74DC 001B443C 40 81 00 44 */ ble lbl_801B7520 +/* 801B74E0 001B4440 2C 07 00 08 */ cmpwi r7, 8 +/* 801B74E4 001B4444 38 A7 FF F8 */ addi r5, r7, -8 +/* 801B74E8 001B4448 40 81 00 20 */ ble lbl_801B7508 +/* 801B74EC 001B444C 38 05 00 07 */ addi r0, r5, 7 +/* 801B74F0 001B4450 54 00 E8 FE */ srwi r0, r0, 3 +/* 801B74F4 001B4454 7C 09 03 A6 */ mtctr r0 +/* 801B74F8 001B4458 2C 05 00 00 */ cmpwi r5, 0 +/* 801B74FC 001B445C 40 81 00 0C */ ble lbl_801B7508 +lbl_801B7500: +/* 801B7500 001B4460 38 84 00 08 */ addi r4, r4, 8 +/* 801B7504 001B4464 42 00 FF FC */ bdnz lbl_801B7500 +lbl_801B7508: +/* 801B7508 001B4468 7C 04 38 50 */ subf r0, r4, r7 +/* 801B750C 001B446C 7C 09 03 A6 */ mtctr r0 +/* 801B7510 001B4470 7C 04 38 00 */ cmpw r4, r7 +/* 801B7514 001B4474 40 80 00 0C */ bge lbl_801B7520 +lbl_801B7518: +/* 801B7518 001B4478 38 84 00 01 */ addi r4, r4, 1 +/* 801B751C 001B447C 42 00 FF FC */ bdnz lbl_801B7518 +lbl_801B7520: +/* 801B7520 001B4480 38 00 00 00 */ li r0, 0 +/* 801B7524 001B4484 90 06 00 04 */ stw r0, 4(r6) +lbl_801B7528: +/* 801B7528 001B4488 38 C6 09 0C */ addi r6, r6, 0x90c +/* 801B752C 001B448C 38 63 00 01 */ addi r3, r3, 1 +lbl_801B7530: +/* 801B7530 001B4490 80 01 01 1C */ lwz r0, 0x11c(r1) +/* 801B7534 001B4494 7C 03 00 00 */ cmpw r3, r0 +/* 801B7538 001B4498 41 80 FF 88 */ blt lbl_801B74C0 +/* 801B753C 001B449C 38 00 00 00 */ li r0, 0 +/* 801B7540 001B44A0 90 01 01 1C */ stw r0, 0x11c(r1) +lbl_801B7544: +/* 801B7544 001B44A4 3B DE 00 1C */ addi r30, r30, 0x1c +/* 801B7548 001B44A8 3B 9C 00 01 */ addi r28, r28, 1 +lbl_801B754C: +/* 801B754C 001B44AC 80 1A 05 40 */ lwz r0, 0x540(r26) +/* 801B7550 001B44B0 7C 1C 00 00 */ cmpw r28, r0 +/* 801B7554 001B44B4 41 80 FE 50 */ blt lbl_801B73A4 +lbl_801B7558: +/* 801B7558 001B44B8 80 7A 00 E8 */ lwz r3, 0xe8(r26) +/* 801B755C 001B44BC 3C 80 80 5A */ lis r4, skIdentity4f@ha +/* 801B7560 001B44C0 38 84 66 70 */ addi r4, r4, skIdentity4f@l +/* 801B7564 001B44C4 81 83 00 00 */ lwz r12, 0(r3) +/* 801B7568 001B44C8 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 801B756C 001B44CC 7D 89 03 A6 */ mtctr r12 +/* 801B7570 001B44D0 4E 80 04 21 */ bctrl +/* 801B7574 001B44D4 80 7A 00 E8 */ lwz r3, 0xe8(r26) +/* 801B7578 001B44D8 FC 20 F8 90 */ fmr f1, f31 +/* 801B757C 001B44DC 81 83 00 00 */ lwz r12, 0(r3) +/* 801B7580 001B44E0 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801B7584 001B44E4 7D 89 03 A6 */ mtctr r12 +/* 801B7588 001B44E8 4E 80 04 21 */ bctrl +/* 801B758C 001B44EC A0 7A 00 EC */ lhz r3, 0xec(r26) +/* 801B7590 001B44F0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801B7594 001B44F4 7C 03 00 40 */ cmplw r3, r0 +/* 801B7598 001B44F8 41 82 00 60 */ beq lbl_801B75F8 +/* 801B759C 001B44FC A0 1A 00 EC */ lhz r0, 0xec(r26) +/* 801B75A0 001B4500 7F 63 DB 78 */ mr r3, r27 +/* 801B75A4 001B4504 38 81 00 10 */ addi r4, r1, 0x10 +/* 801B75A8 001B4508 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801B75AC 001B450C 4B E9 4F C9 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801B75B0 001B4510 7C 64 1B 78 */ mr r4, r3 +/* 801B75B4 001B4514 38 61 00 1C */ addi r3, r1, 0x1c +/* 801B75B8 001B4518 4B EF 64 CD */ bl "__ct__24TCastToPtr<10CGameLight>FP7CEntity" +/* 801B75BC 001B451C 83 83 00 04 */ lwz r28, 4(r3) +/* 801B75C0 001B4520 28 1C 00 00 */ cmplwi r28, 0 +/* 801B75C4 001B4524 41 82 00 34 */ beq lbl_801B75F8 +/* 801B75C8 001B4528 88 1A 00 30 */ lbz r0, 0x30(r26) +/* 801B75CC 001B452C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801B75D0 001B4530 41 82 00 28 */ beq lbl_801B75F8 +/* 801B75D4 001B4534 80 9A 00 E8 */ lwz r4, 0xe8(r26) +/* 801B75D8 001B4538 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 801B75DC 001B453C 81 84 00 00 */ lwz r12, 0(r4) +/* 801B75E0 001B4540 81 8C 00 68 */ lwz r12, 0x68(r12) +/* 801B75E4 001B4544 7D 89 03 A6 */ mtctr r12 +/* 801B75E8 001B4548 4E 80 04 21 */ bctrl +/* 801B75EC 001B454C 7F 83 E3 78 */ mr r3, r28 +/* 801B75F0 001B4550 38 81 00 B4 */ addi r4, r1, 0xb4 +/* 801B75F4 001B4554 4B EF E1 51 */ bl SetLight__10CGameLightFRC6CLight +lbl_801B75F8: +/* 801B75F8 001B4558 88 1A 05 98 */ lbz r0, 0x598(r26) +/* 801B75FC 001B455C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801B7600 001B4560 41 82 00 28 */ beq lbl_801B7628 +/* 801B7604 001B4564 7F 63 DB 78 */ mr r3, r27 +/* 801B7608 001B4568 4B E8 C9 35 */ bl GetPlayer__13CStateManagerCFv +/* 801B760C 001B456C 80 03 00 04 */ lwz r0, 4(r3) +/* 801B7610 001B4570 7F 63 DB 78 */ mr r3, r27 +/* 801B7614 001B4574 7F 44 D3 78 */ mr r4, r26 +/* 801B7618 001B4578 38 A1 00 18 */ addi r5, r1, 0x18 +/* 801B761C 001B457C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B7620 001B4580 90 01 00 18 */ stw r0, 0x18(r1) +/* 801B7624 001B4584 4B E8 DC 55 */ bl SetActorAreaId__13CStateManagerFR6CActor7TAreaId +lbl_801B7628: +/* 801B7628 001B4588 80 7A 00 E8 */ lwz r3, 0xe8(r26) +/* 801B762C 001B458C 81 83 00 00 */ lwz r12, 0(r3) +/* 801B7630 001B4590 81 8C 00 58 */ lwz r12, 0x58(r12) +/* 801B7634 001B4594 7D 89 03 A6 */ mtctr r12 +/* 801B7638 001B4598 4E 80 04 21 */ bctrl +/* 801B763C 001B459C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B7640 001B45A0 41 82 00 1C */ beq lbl_801B765C +/* 801B7644 001B45A4 A0 1A 00 08 */ lhz r0, 8(r26) +/* 801B7648 001B45A8 7F 63 DB 78 */ mr r3, r27 +/* 801B764C 001B45AC 38 81 00 0C */ addi r4, r1, 0xc +/* 801B7650 001B45B0 B0 01 00 08 */ sth r0, 8(r1) +/* 801B7654 001B45B4 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801B7658 001B45B8 4B E9 4C 15 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +lbl_801B765C: +/* 801B765C 001B45BC 38 00 1C 78 */ li r0, 0x1c78 +/* 801B7660 001B45C0 13 E1 00 0C */ psq_lx f31, r1, r0, 0, qr0 +/* 801B7664 001B45C4 CB E1 1C 70 */ lfd f31, 0x1c70(r1) +/* 801B7668 001B45C8 BB 01 1C 50 */ lmw r24, 0x1c50(r1) +/* 801B766C 001B45CC 80 01 1C 84 */ lwz r0, 0x1c84(r1) +/* 801B7670 001B45D0 7C 08 03 A6 */ mtlr r0 +/* 801B7674 001B45D4 38 21 1C 80 */ addi r1, r1, 0x1c80 +/* 801B7678 001B45D8 4E 80 00 20 */ blr + +.global Render__10CIceImpactCFRC13CStateManager +Render__10CIceImpactCFRC13CStateManager: +/* 801B767C 001B45DC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B7680 001B45E0 7C 08 02 A6 */ mflr r0 +/* 801B7684 001B45E4 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B7688 001B45E8 38 00 00 01 */ li r0, 1 +/* 801B768C 001B45EC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801B7690 001B45F0 7C 7F 1B 78 */ mr r31, r3 +/* 801B7694 001B45F4 38 60 00 01 */ li r3, 1 +/* 801B7698 001B45F8 98 0D A8 B9 */ stb r0, lbl_805A9479@sda21(r13) +/* 801B769C 001B45FC 48 18 E1 4D */ bl SetRenderModelBlack__10CCubeModelFb +/* 801B76A0 001B4600 80 7F 00 E8 */ lwz r3, 0xe8(r31) +/* 801B76A4 001B4604 81 83 00 00 */ lwz r12, 0(r3) +/* 801B76A8 001B4608 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801B76AC 001B460C 7D 89 03 A6 */ mtctr r12 +/* 801B76B0 001B4610 4E 80 04 21 */ bctrl +/* 801B76B4 001B4614 38 00 00 00 */ li r0, 0 +/* 801B76B8 001B4618 38 60 00 00 */ li r3, 0 +/* 801B76BC 001B461C 98 0D A8 B9 */ stb r0, lbl_805A9479@sda21(r13) +/* 801B76C0 001B4620 48 18 E1 29 */ bl SetRenderModelBlack__10CCubeModelFb +/* 801B76C4 001B4624 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B76C8 001B4628 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801B76CC 001B462C 7C 08 03 A6 */ mtlr r0 +/* 801B76D0 001B4630 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B76D4 001B4634 4E 80 00 20 */ blr + +.global AddToRenderer__10CIceImpactCFRC14CFrustumPlanesRC13CStateManager +AddToRenderer__10CIceImpactCFRC14CFrustumPlanesRC13CStateManager: +/* 801B76D8 001B4638 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B76DC 001B463C 7C 08 02 A6 */ mflr r0 +/* 801B76E0 001B4640 7C 64 1B 78 */ mr r4, r3 +/* 801B76E4 001B4644 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B76E8 001B4648 88 03 00 E4 */ lbz r0, 0xe4(r3) +/* 801B76EC 001B464C 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 801B76F0 001B4650 40 82 00 34 */ bne lbl_801B7724 +/* 801B76F4 001B4654 80 05 0F 34 */ lwz r0, 0xf34(r5) +/* 801B76F8 001B4658 2C 00 00 00 */ cmpwi r0, 0 +/* 801B76FC 001B465C 40 82 00 10 */ bne lbl_801B770C +/* 801B7700 001B4660 7C A4 2B 78 */ mr r4, r5 +/* 801B7704 001B4664 4B E9 D2 C9 */ bl EnsureRendered__6CActorCFRC13CStateManager +/* 801B7708 001B4668 48 00 00 1C */ b lbl_801B7724 +lbl_801B770C: +/* 801B770C 001B466C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801B7710 001B4670 80 84 00 E8 */ lwz r4, 0xe8(r4) +/* 801B7714 001B4674 81 83 00 00 */ lwz r12, 0(r3) +/* 801B7718 001B4678 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801B771C 001B467C 7D 89 03 A6 */ mtctr r12 +/* 801B7720 001B4680 4E 80 04 21 */ bctrl +lbl_801B7724: +/* 801B7724 001B4684 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B7728 001B4688 7C 08 03 A6 */ mtlr r0 +/* 801B772C 001B468C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B7730 001B4690 4E 80 00 20 */ blr + +.global PreRender__10CIceImpactFR13CStateManagerRC14CFrustumPlanes +PreRender__10CIceImpactFR13CStateManagerRC14CFrustumPlanes: +/* 801B7734 001B4694 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801B7738 001B4698 7C 08 02 A6 */ mflr r0 +/* 801B773C 001B469C 90 01 00 24 */ stw r0, 0x24(r1) +/* 801B7740 001B46A0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801B7744 001B46A4 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801B7748 001B46A8 7C BE 2B 78 */ mr r30, r5 +/* 801B774C 001B46AC 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801B7750 001B46B0 7C 7D 1B 78 */ mr r29, r3 +/* 801B7754 001B46B4 4B E9 D5 8D */ bl PreRender__6CActorFR13CStateManagerRC14CFrustumPlanes +/* 801B7758 001B46B8 88 1D 05 98 */ lbz r0, 0x598(r29) +/* 801B775C 001B46BC 3B E0 00 00 */ li r31, 0 +/* 801B7760 001B46C0 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801B7764 001B46C4 41 82 00 18 */ beq lbl_801B777C +/* 801B7768 001B46C8 7F C3 F3 78 */ mr r3, r30 +/* 801B776C 001B46CC 38 9D 00 9C */ addi r4, r29, 0x9c +/* 801B7770 001B46D0 48 18 DA 61 */ bl BoxInFrustumPlanes__14CFrustumPlanesCFRC6CAABox +/* 801B7774 001B46D4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B7778 001B46D8 40 82 00 08 */ bne lbl_801B7780 +lbl_801B777C: +/* 801B777C 001B46DC 3B E0 00 01 */ li r31, 1 +lbl_801B7780: +/* 801B7780 001B46E0 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 801B7784 001B46E4 53 E0 0F BC */ rlwimi r0, r31, 1, 0x1e, 0x1e +/* 801B7788 001B46E8 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 801B778C 001B46EC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801B7790 001B46F0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801B7794 001B46F4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801B7798 001B46F8 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801B779C 001B46FC 7C 08 03 A6 */ mtlr r0 +/* 801B77A0 001B4700 38 21 00 20 */ addi r1, r1, 0x20 +/* 801B77A4 001B4704 4E 80 00 20 */ blr + +.global CalculateRenderBounds__10CIceImpactFv +CalculateRenderBounds__10CIceImpactFv: +/* 801B77A8 001B4708 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 801B77AC 001B470C 7C 08 02 A6 */ mflr r0 +/* 801B77B0 001B4710 90 01 00 74 */ stw r0, 0x74(r1) +/* 801B77B4 001B4714 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 801B77B8 001B4718 7C 7F 1B 78 */ mr r31, r3 +/* 801B77BC 001B471C 38 61 00 2C */ addi r3, r1, 0x2c +/* 801B77C0 001B4720 80 9F 00 E8 */ lwz r4, 0xe8(r31) +/* 801B77C4 001B4724 81 84 00 00 */ lwz r12, 0(r4) +/* 801B77C8 001B4728 81 8C 00 5C */ lwz r12, 0x5c(r12) +/* 801B77CC 001B472C 7D 89 03 A6 */ mtctr r12 +/* 801B77D0 001B4730 4E 80 04 21 */ bctrl +/* 801B77D4 001B4734 88 01 00 44 */ lbz r0, 0x44(r1) +/* 801B77D8 001B4738 28 00 00 00 */ cmplwi r0, 0 +/* 801B77DC 001B473C 98 01 00 60 */ stb r0, 0x60(r1) +/* 801B77E0 001B4740 41 82 00 3C */ beq lbl_801B781C +/* 801B77E4 001B4744 34 61 00 48 */ addic. r3, r1, 0x48 +/* 801B77E8 001B4748 41 82 00 34 */ beq lbl_801B781C +/* 801B77EC 001B474C C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 801B77F0 001B4750 D0 03 00 00 */ stfs f0, 0(r3) +/* 801B77F4 001B4754 C0 01 00 30 */ lfs f0, 0x30(r1) +/* 801B77F8 001B4758 D0 03 00 04 */ stfs f0, 4(r3) +/* 801B77FC 001B475C C0 01 00 34 */ lfs f0, 0x34(r1) +/* 801B7800 001B4760 D0 03 00 08 */ stfs f0, 8(r3) +/* 801B7804 001B4764 C0 01 00 38 */ lfs f0, 0x38(r1) +/* 801B7808 001B4768 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 801B780C 001B476C C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 801B7810 001B4770 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 801B7814 001B4774 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 801B7818 001B4778 D0 03 00 14 */ stfs f0, 0x14(r3) +lbl_801B781C: +/* 801B781C 001B477C 88 01 00 60 */ lbz r0, 0x60(r1) +/* 801B7820 001B4780 38 C0 00 00 */ li r6, 0 +/* 801B7824 001B4784 98 C1 00 44 */ stb r6, 0x44(r1) +/* 801B7828 001B4788 28 00 00 00 */ cmplwi r0, 0 +/* 801B782C 001B478C 41 82 00 48 */ beq lbl_801B7874 +/* 801B7830 001B4790 88 1F 05 98 */ lbz r0, 0x598(r31) +/* 801B7834 001B4794 38 60 00 01 */ li r3, 1 +/* 801B7838 001B4798 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801B783C 001B479C 80 61 00 48 */ lwz r3, 0x48(r1) +/* 801B7840 001B47A0 98 1F 05 98 */ stb r0, 0x598(r31) +/* 801B7844 001B47A4 80 01 00 4C */ lwz r0, 0x4c(r1) +/* 801B7848 001B47A8 90 7F 00 9C */ stw r3, 0x9c(r31) +/* 801B784C 001B47AC 80 61 00 50 */ lwz r3, 0x50(r1) +/* 801B7850 001B47B0 90 1F 00 A0 */ stw r0, 0xa0(r31) +/* 801B7854 001B47B4 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801B7858 001B47B8 90 7F 00 A4 */ stw r3, 0xa4(r31) +/* 801B785C 001B47BC 80 61 00 58 */ lwz r3, 0x58(r1) +/* 801B7860 001B47C0 90 1F 00 A8 */ stw r0, 0xa8(r31) +/* 801B7864 001B47C4 80 01 00 5C */ lwz r0, 0x5c(r1) +/* 801B7868 001B47C8 90 7F 00 AC */ stw r3, 0xac(r31) +/* 801B786C 001B47CC 90 1F 00 B0 */ stw r0, 0xb0(r31) +/* 801B7870 001B47D0 48 00 00 68 */ b lbl_801B78D8 +lbl_801B7874: +/* 801B7874 001B47D4 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 801B7878 001B47D8 38 81 00 08 */ addi r4, r1, 8 +/* 801B787C 001B47DC C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 801B7880 001B47E0 7C 85 23 78 */ mr r5, r4 +/* 801B7884 001B47E4 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801B7888 001B47E8 38 61 00 14 */ addi r3, r1, 0x14 +/* 801B788C 001B47EC D0 01 00 08 */ stfs f0, 8(r1) +/* 801B7890 001B47F0 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 801B7894 001B47F4 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 801B7898 001B47F8 88 1F 05 98 */ lbz r0, 0x598(r31) +/* 801B789C 001B47FC 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19 +/* 801B78A0 001B4800 98 1F 05 98 */ stb r0, 0x598(r31) +/* 801B78A4 001B4804 48 18 0C 65 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801B78A8 001B4808 80 61 00 14 */ lwz r3, 0x14(r1) +/* 801B78AC 001B480C 80 01 00 18 */ lwz r0, 0x18(r1) +/* 801B78B0 001B4810 90 7F 00 9C */ stw r3, 0x9c(r31) +/* 801B78B4 001B4814 90 1F 00 A0 */ stw r0, 0xa0(r31) +/* 801B78B8 001B4818 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 801B78BC 001B481C 90 1F 00 A4 */ stw r0, 0xa4(r31) +/* 801B78C0 001B4820 80 61 00 20 */ lwz r3, 0x20(r1) +/* 801B78C4 001B4824 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801B78C8 001B4828 90 7F 00 A8 */ stw r3, 0xa8(r31) +/* 801B78CC 001B482C 90 1F 00 AC */ stw r0, 0xac(r31) +/* 801B78D0 001B4830 80 01 00 28 */ lwz r0, 0x28(r1) +/* 801B78D4 001B4834 90 1F 00 B0 */ stw r0, 0xb0(r31) +lbl_801B78D8: +/* 801B78D8 001B4838 38 00 00 00 */ li r0, 0 +/* 801B78DC 001B483C 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 801B78E0 001B4840 98 01 00 60 */ stb r0, 0x60(r1) +/* 801B78E4 001B4844 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801B78E8 001B4848 7C 08 03 A6 */ mtlr r0 +/* 801B78EC 001B484C 38 21 00 70 */ addi r1, r1, 0x70 +/* 801B78F0 001B4850 4E 80 00 20 */ blr + +.global __dt__10CIceImpactFv +__dt__10CIceImpactFv: +/* 801B78F4 001B4854 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801B78F8 001B4858 7C 08 02 A6 */ mflr r0 +/* 801B78FC 001B485C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B7900 001B4860 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801B7904 001B4864 7C 9F 23 78 */ mr r31, r4 +/* 801B7908 001B4868 93 C1 00 08 */ stw r30, 8(r1) +/* 801B790C 001B486C 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801B7910 001B4870 41 82 01 28 */ beq lbl_801B7A38 +/* 801B7914 001B4874 3C 60 80 3E */ lis r3, lbl_803E51E8@ha +/* 801B7918 001B4878 34 1E 05 40 */ addic. r0, r30, 0x540 +/* 801B791C 001B487C 38 03 51 E8 */ addi r0, r3, lbl_803E51E8@l +/* 801B7920 001B4880 90 1E 00 00 */ stw r0, 0(r30) +/* 801B7924 001B4884 41 82 00 58 */ beq lbl_801B797C +/* 801B7928 001B4888 80 BE 05 40 */ lwz r5, 0x540(r30) +/* 801B792C 001B488C 38 60 00 00 */ li r3, 0 +/* 801B7930 001B4890 2C 05 00 00 */ cmpwi r5, 0 +/* 801B7934 001B4894 40 81 00 40 */ ble lbl_801B7974 +/* 801B7938 001B4898 2C 05 00 08 */ cmpwi r5, 8 +/* 801B793C 001B489C 38 85 FF F8 */ addi r4, r5, -8 +/* 801B7940 001B48A0 40 81 00 20 */ ble lbl_801B7960 +/* 801B7944 001B48A4 38 04 00 07 */ addi r0, r4, 7 +/* 801B7948 001B48A8 54 00 E8 FE */ srwi r0, r0, 3 +/* 801B794C 001B48AC 7C 09 03 A6 */ mtctr r0 +/* 801B7950 001B48B0 2C 04 00 00 */ cmpwi r4, 0 +/* 801B7954 001B48B4 40 81 00 0C */ ble lbl_801B7960 +lbl_801B7958: +/* 801B7958 001B48B8 38 63 00 08 */ addi r3, r3, 8 +/* 801B795C 001B48BC 42 00 FF FC */ bdnz lbl_801B7958 +lbl_801B7960: +/* 801B7960 001B48C0 7C 03 28 50 */ subf r0, r3, r5 +/* 801B7964 001B48C4 7C 09 03 A6 */ mtctr r0 +/* 801B7968 001B48C8 7C 03 28 00 */ cmpw r3, r5 +/* 801B796C 001B48CC 40 80 00 08 */ bge lbl_801B7974 +lbl_801B7970: +/* 801B7970 001B48D0 42 00 00 00 */ bdnz lbl_801B7970 +lbl_801B7974: +/* 801B7974 001B48D4 38 00 00 00 */ li r0, 0 +/* 801B7978 001B48D8 90 1E 05 40 */ stw r0, 0x540(r30) +lbl_801B797C: +/* 801B797C 001B48DC 34 1E 01 18 */ addic. r0, r30, 0x118 +/* 801B7980 001B48E0 41 82 00 60 */ beq lbl_801B79E0 +/* 801B7984 001B48E4 34 1E 01 3C */ addic. r0, r30, 0x13c +/* 801B7988 001B48E8 41 82 00 58 */ beq lbl_801B79E0 +/* 801B798C 001B48EC 80 BE 01 3C */ lwz r5, 0x13c(r30) +/* 801B7990 001B48F0 38 60 00 00 */ li r3, 0 +/* 801B7994 001B48F4 2C 05 00 00 */ cmpwi r5, 0 +/* 801B7998 001B48F8 40 81 00 40 */ ble lbl_801B79D8 +/* 801B799C 001B48FC 2C 05 00 08 */ cmpwi r5, 8 +/* 801B79A0 001B4900 38 85 FF F8 */ addi r4, r5, -8 +/* 801B79A4 001B4904 40 81 00 20 */ ble lbl_801B79C4 +/* 801B79A8 001B4908 38 04 00 07 */ addi r0, r4, 7 +/* 801B79AC 001B490C 54 00 E8 FE */ srwi r0, r0, 3 +/* 801B79B0 001B4910 7C 09 03 A6 */ mtctr r0 +/* 801B79B4 001B4914 2C 04 00 00 */ cmpwi r4, 0 +/* 801B79B8 001B4918 40 81 00 0C */ ble lbl_801B79C4 +lbl_801B79BC: +/* 801B79BC 001B491C 38 63 00 08 */ addi r3, r3, 8 +/* 801B79C0 001B4920 42 00 FF FC */ bdnz lbl_801B79BC +lbl_801B79C4: +/* 801B79C4 001B4924 7C 03 28 50 */ subf r0, r3, r5 +/* 801B79C8 001B4928 7C 09 03 A6 */ mtctr r0 +/* 801B79CC 001B492C 7C 03 28 00 */ cmpw r3, r5 +/* 801B79D0 001B4930 40 80 00 08 */ bge lbl_801B79D8 +lbl_801B79D4: +/* 801B79D4 001B4934 42 00 00 00 */ bdnz lbl_801B79D4 +lbl_801B79D8: +/* 801B79D8 001B4938 38 00 00 00 */ li r0, 0 +/* 801B79DC 001B493C 90 1E 01 3C */ stw r0, 0x13c(r30) +lbl_801B79E0: +/* 801B79E0 001B4940 34 1E 00 E8 */ addic. r0, r30, 0xe8 +/* 801B79E4 001B4944 41 82 00 24 */ beq lbl_801B7A08 +/* 801B79E8 001B4948 80 7E 00 E8 */ lwz r3, 0xe8(r30) +/* 801B79EC 001B494C 28 03 00 00 */ cmplwi r3, 0 +/* 801B79F0 001B4950 41 82 00 18 */ beq lbl_801B7A08 +/* 801B79F4 001B4954 81 83 00 00 */ lwz r12, 0(r3) +/* 801B79F8 001B4958 38 80 00 01 */ li r4, 1 +/* 801B79FC 001B495C 81 8C 00 08 */ lwz r12, 8(r12) +/* 801B7A00 001B4960 7D 89 03 A6 */ mtctr r12 +/* 801B7A04 001B4964 4E 80 04 21 */ bctrl +lbl_801B7A08: +/* 801B7A08 001B4968 28 1E 00 00 */ cmplwi r30, 0 +/* 801B7A0C 001B496C 41 82 00 1C */ beq lbl_801B7A28 +/* 801B7A10 001B4970 3C 80 80 3E */ lis r4, lbl_803DA118@ha +/* 801B7A14 001B4974 7F C3 F3 78 */ mr r3, r30 +/* 801B7A18 001B4978 38 04 A1 18 */ addi r0, r4, lbl_803DA118@l +/* 801B7A1C 001B497C 38 80 00 00 */ li r4, 0 +/* 801B7A20 001B4980 90 1E 00 00 */ stw r0, 0(r30) +/* 801B7A24 001B4984 4B E9 DC CD */ bl __dt__6CActorFv +lbl_801B7A28: +/* 801B7A28 001B4988 7F E0 07 35 */ extsh. r0, r31 +/* 801B7A2C 001B498C 40 81 00 0C */ ble lbl_801B7A38 +/* 801B7A30 001B4990 7F C3 F3 78 */ mr r3, r30 +/* 801B7A34 001B4994 48 15 DE FD */ bl Free__7CMemoryFPCv +lbl_801B7A38: +/* 801B7A38 001B4998 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801B7A3C 001B499C 7F C3 F3 78 */ mr r3, r30 +/* 801B7A40 001B49A0 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801B7A44 001B49A4 83 C1 00 08 */ lwz r30, 8(r1) +/* 801B7A48 001B49A8 7C 08 03 A6 */ mtlr r0 +/* 801B7A4C 001B49AC 38 21 00 10 */ addi r1, r1, 0x10 +/* 801B7A50 001B49B0 4E 80 00 20 */ blr + +.global "__ct__10CIceImpactFRC31TLockedToken<15CGenDescription>9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC12CTransform4fUiRC9CVector3fRC6CColor" +"__ct__10CIceImpactFRC31TLockedToken<15CGenDescription>9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC12CTransform4fUiRC9CVector3fRC6CColor": +/* 801B7A54 001B49B4 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 801B7A58 001B49B8 7C 08 02 A6 */ mflr r0 +/* 801B7A5C 001B49BC 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 801B7A60 001B49C0 BF 21 00 B4 */ stmw r25, 0xb4(r1) +/* 801B7A64 001B49C4 7C 7C 1B 78 */ mr r28, r3 +/* 801B7A68 001B49C8 7C 9D 23 78 */ mr r29, r4 +/* 801B7A6C 001B49CC 7C B9 2B 78 */ mr r25, r5 +/* 801B7A70 001B49D0 7C FA 3B 78 */ mr r26, r7 +/* 801B7A74 001B49D4 7D 1B 43 78 */ mr r27, r8 +/* 801B7A78 001B49D8 7D 3E 4B 78 */ mr r30, r9 +/* 801B7A7C 001B49DC 7D 5F 53 78 */ mr r31, r10 +/* 801B7A80 001B49E0 38 61 00 8C */ addi r3, r1, 0x8c +/* 801B7A84 001B49E4 38 81 00 20 */ addi r4, r1, 0x20 +/* 801B7A88 001B49E8 80 06 00 00 */ lwz r0, 0(r6) +/* 801B7A8C 001B49EC 3C C0 80 57 */ lis r6, lbl_8056D410@ha +/* 801B7A90 001B49F0 81 6D A3 88 */ lwz r11, lbl_805A8F48@sda21(r13) +/* 801B7A94 001B49F4 90 01 00 20 */ stw r0, 0x20(r1) +/* 801B7A98 001B49F8 38 06 D4 10 */ addi r0, r6, lbl_8056D410@l +/* 801B7A9C 001B49FC 7C 05 03 78 */ mr r5, r0 +/* 801B7AA0 001B4A00 38 C1 00 1C */ addi r6, r1, 0x1c +/* 801B7AA4 001B4A04 91 61 00 1C */ stw r11, 0x1c(r1) +/* 801B7AA8 001B4A08 4B E9 99 DD */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" +/* 801B7AAC 001B4A0C A0 19 00 00 */ lhz r0, 0(r25) +/* 801B7AB0 001B4A10 7F 83 E3 78 */ mr r3, r28 +/* 801B7AB4 001B4A14 7F 46 D3 78 */ mr r6, r26 +/* 801B7AB8 001B4A18 7F 67 DB 78 */ mr r7, r27 +/* 801B7ABC 001B4A1C B0 01 00 08 */ sth r0, 8(r1) +/* 801B7AC0 001B4A20 7F C8 F3 78 */ mr r8, r30 +/* 801B7AC4 001B4A24 38 81 00 08 */ addi r4, r1, 8 +/* 801B7AC8 001B4A28 38 A1 00 8C */ addi r5, r1, 0x8c +/* 801B7ACC 001B4A2C 4B EA 32 85 */ bl "__ct__7CEffectF9TUniqueIdRC11CEntityInfobRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC12CTransform4f" +/* 801B7AD0 001B4A30 80 01 00 94 */ lwz r0, 0x94(r1) +/* 801B7AD4 001B4A34 80 61 00 9C */ lwz r3, 0x9c(r1) +/* 801B7AD8 001B4A38 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801B7ADC 001B4A3C 90 61 00 10 */ stw r3, 0x10(r1) +/* 801B7AE0 001B4A40 7C 64 1B 78 */ mr r4, r3 +/* 801B7AE4 001B4A44 7C 03 02 14 */ add r0, r3, r0 +/* 801B7AE8 001B4A48 90 61 00 0C */ stw r3, 0xc(r1) +/* 801B7AEC 001B4A4C 90 01 00 18 */ stw r0, 0x18(r1) +/* 801B7AF0 001B4A50 90 01 00 14 */ stw r0, 0x14(r1) +/* 801B7AF4 001B4A54 48 00 00 08 */ b lbl_801B7AFC +lbl_801B7AF8: +/* 801B7AF8 001B4A58 38 84 00 0C */ addi r4, r4, 0xc +lbl_801B7AFC: +/* 801B7AFC 001B4A5C 7C 04 00 40 */ cmplw r4, r0 +/* 801B7B00 001B4A60 40 82 FF F8 */ bne lbl_801B7AF8 +/* 801B7B04 001B4A64 28 03 00 00 */ cmplwi r3, 0 +/* 801B7B08 001B4A68 41 82 00 08 */ beq lbl_801B7B10 +/* 801B7B0C 001B4A6C 48 15 DE 25 */ bl Free__7CMemoryFPCv +lbl_801B7B10: +/* 801B7B10 001B4A70 3C 80 80 3E */ lis r4, lbl_803E51E8@ha +/* 801B7B14 001B4A74 3C 60 80 3D */ lis r3, lbl_803D1640@ha +/* 801B7B18 001B4A78 38 04 51 E8 */ addi r0, r4, lbl_803E51E8@l +/* 801B7B1C 001B4A7C 3B 20 00 00 */ li r25, 0 +/* 801B7B20 001B4A80 90 1C 00 00 */ stw r0, 0(r28) +/* 801B7B24 001B4A84 38 83 16 40 */ addi r4, r3, lbl_803D1640@l +/* 801B7B28 001B4A88 38 60 03 40 */ li r3, 0x340 +/* 801B7B2C 001B4A8C 38 A0 00 00 */ li r5, 0 +/* 801B7B30 001B4A90 48 15 DD 3D */ bl __nw__FUlPCcPCc +/* 801B7B34 001B4A94 7C 7B 1B 79 */ or. r27, r3, r3 +/* 801B7B38 001B4A98 41 82 00 2C */ beq lbl_801B7B64 +/* 801B7B3C 001B4A9C 7F A4 EB 78 */ mr r4, r29 +/* 801B7B40 001B4AA0 38 61 00 2C */ addi r3, r1, 0x2c +/* 801B7B44 001B4AA4 48 18 93 65 */ bl __ct__6CTokenFRC6CToken +/* 801B7B48 001B4AA8 7F 63 DB 78 */ mr r3, r27 +/* 801B7B4C 001B4AAC 38 81 00 2C */ addi r4, r1, 0x2c +/* 801B7B50 001B4AB0 3B 20 00 01 */ li r25, 1 +/* 801B7B54 001B4AB4 38 A0 00 01 */ li r5, 1 +/* 801B7B58 001B4AB8 38 C0 00 01 */ li r6, 1 +/* 801B7B5C 001B4ABC 48 16 78 85 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 801B7B60 001B4AC0 7C 7B 1B 78 */ mr r27, r3 +lbl_801B7B64: +/* 801B7B64 001B4AC4 7F 20 07 75 */ extsb. r0, r25 +/* 801B7B68 001B4AC8 93 7C 00 E8 */ stw r27, 0xe8(r28) +/* 801B7B6C 001B4ACC 41 82 00 10 */ beq lbl_801B7B7C +/* 801B7B70 001B4AD0 38 61 00 2C */ addi r3, r1, 0x2c +/* 801B7B74 001B4AD4 38 80 00 00 */ li r4, 0 +/* 801B7B78 001B4AD8 48 18 92 C9 */ bl __dt__6CTokenFv +lbl_801B7B7C: +/* 801B7B7C 001B4ADC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801B7B80 001B4AE0 7F A4 EB 78 */ mr r4, r29 +/* 801B7B84 001B4AE4 38 61 00 24 */ addi r3, r1, 0x24 +/* 801B7B88 001B4AE8 B0 1C 00 EC */ sth r0, 0xec(r28) +/* 801B7B8C 001B4AEC 48 18 93 1D */ bl __ct__6CTokenFRC6CToken +/* 801B7B90 001B4AF0 80 A1 00 24 */ lwz r5, 0x24(r1) +/* 801B7B94 001B4AF4 38 61 00 24 */ addi r3, r1, 0x24 +/* 801B7B98 001B4AF8 38 80 00 00 */ li r4, 0 +/* 801B7B9C 001B4AFC 80 05 00 08 */ lwz r0, 8(r5) +/* 801B7BA0 001B4B00 90 1C 00 F0 */ stw r0, 0xf0(r28) +/* 801B7BA4 001B4B04 48 18 92 9D */ bl __dt__6CTokenFv +/* 801B7BA8 001B4B08 C0 42 A9 84 */ lfs f2, lbl_805AC6A4@sda21(r2) +/* 801B7BAC 001B4B0C 38 00 00 00 */ li r0, 0 +/* 801B7BB0 001B4B10 C0 02 A9 90 */ lfs f0, lbl_805AC6B0@sda21(r2) +/* 801B7BB4 001B4B14 38 61 00 74 */ addi r3, r1, 0x74 +/* 801B7BB8 001B4B18 D0 5C 00 F4 */ stfs f2, 0xf4(r28) +/* 801B7BBC 001B4B1C 38 81 00 68 */ addi r4, r1, 0x68 +/* 801B7BC0 001B4B20 C0 22 A9 94 */ lfs f1, lbl_805AC6B4@sda21(r2) +/* 801B7BC4 001B4B24 38 A1 00 50 */ addi r5, r1, 0x50 +/* 801B7BC8 001B4B28 D0 1C 00 F8 */ stfs f0, 0xf8(r28) +/* 801B7BCC 001B4B2C C0 02 A9 80 */ lfs f0, lbl_805AC6A0@sda21(r2) +/* 801B7BD0 001B4B30 90 1C 00 FC */ stw r0, 0xfc(r28) +/* 801B7BD4 001B4B34 D0 3C 01 00 */ stfs f1, 0x100(r28) +/* 801B7BD8 001B4B38 D0 5C 01 04 */ stfs f2, 0x104(r28) +/* 801B7BDC 001B4B3C C0 3C 01 00 */ lfs f1, 0x100(r28) +/* 801B7BE0 001B4B40 C0 7C 00 60 */ lfs f3, 0x60(r28) +/* 801B7BE4 001B4B44 C0 5C 00 50 */ lfs f2, 0x50(r28) +/* 801B7BE8 001B4B48 EC 21 00 28 */ fsubs f1, f1, f0 +/* 801B7BEC 001B4B4C C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 801B7BF0 001B4B50 D0 1C 01 08 */ stfs f0, 0x108(r28) +/* 801B7BF4 001B4B54 D0 5C 01 0C */ stfs f2, 0x10c(r28) +/* 801B7BF8 001B4B58 D0 7C 01 10 */ stfs f3, 0x110(r28) +/* 801B7BFC 001B4B5C D0 3C 01 14 */ stfs f1, 0x114(r28) +/* 801B7C00 001B4B60 C1 1E 00 2C */ lfs f8, 0x2c(r30) +/* 801B7C04 001B4B64 C0 1C 01 00 */ lfs f0, 0x100(r28) +/* 801B7C08 001B4B68 C0 FE 00 1C */ lfs f7, 0x1c(r30) +/* 801B7C0C 001B4B6C C0 5E 00 0C */ lfs f2, 0xc(r30) +/* 801B7C10 001B4B70 EC A8 00 2A */ fadds f5, f8, f0 +/* 801B7C14 001B4B74 EC C7 00 2A */ fadds f6, f7, f0 +/* 801B7C18 001B4B78 D0 E1 00 48 */ stfs f7, 0x48(r1) +/* 801B7C1C 001B4B7C EC 22 00 2A */ fadds f1, f2, f0 +/* 801B7C20 001B4B80 EC 87 00 28 */ fsubs f4, f7, f0 +/* 801B7C24 001B4B84 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 801B7C28 001B4B88 EC 68 00 28 */ fsubs f3, f8, f0 +/* 801B7C2C 001B4B8C EC 02 00 28 */ fsubs f0, f2, f0 +/* 801B7C30 001B4B90 D1 01 00 4C */ stfs f8, 0x4c(r1) +/* 801B7C34 001B4B94 D0 21 00 50 */ stfs f1, 0x50(r1) +/* 801B7C38 001B4B98 D0 C1 00 54 */ stfs f6, 0x54(r1) +/* 801B7C3C 001B4B9C D0 A1 00 58 */ stfs f5, 0x58(r1) +/* 801B7C40 001B4BA0 D0 41 00 5C */ stfs f2, 0x5c(r1) +/* 801B7C44 001B4BA4 D0 E1 00 60 */ stfs f7, 0x60(r1) +/* 801B7C48 001B4BA8 D1 01 00 64 */ stfs f8, 0x64(r1) +/* 801B7C4C 001B4BAC D0 01 00 68 */ stfs f0, 0x68(r1) +/* 801B7C50 001B4BB0 D0 81 00 6C */ stfs f4, 0x6c(r1) +/* 801B7C54 001B4BB4 D0 61 00 70 */ stfs f3, 0x70(r1) +/* 801B7C58 001B4BB8 48 18 08 B1 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801B7C5C 001B4BBC 7C 64 1B 78 */ mr r4, r3 +/* 801B7C60 001B4BC0 38 7C 01 18 */ addi r3, r28, 0x118 +/* 801B7C64 001B4BC4 48 00 07 01 */ bl __ct__11CMarkerGridFRC6CAABox +/* 801B7C68 001B4BC8 38 A0 00 00 */ li r5, 0 +/* 801B7C6C 001B4BCC 38 60 00 02 */ li r3, 2 +/* 801B7C70 001B4BD0 90 BC 05 40 */ stw r5, 0x540(r28) +/* 801B7C74 001B4BD4 38 DC 05 40 */ addi r6, r28, 0x540 +/* 801B7C78 001B4BD8 88 1C 05 98 */ lbz r0, 0x598(r28) +/* 801B7C7C 001B4BDC 53 E0 36 30 */ rlwimi r0, r31, 6, 0x18, 0x18 +/* 801B7C80 001B4BE0 98 1C 05 98 */ stb r0, 0x598(r28) +/* 801B7C84 001B4BE4 88 1C 05 98 */ lbz r0, 0x598(r28) +/* 801B7C88 001B4BE8 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 801B7C8C 001B4BEC 98 1C 05 98 */ stb r0, 0x598(r28) +/* 801B7C90 001B4BF0 88 1C 00 E6 */ lbz r0, 0xe6(r28) +/* 801B7C94 001B4BF4 50 60 1E F8 */ rlwimi r0, r3, 3, 0x1b, 0x1c +/* 801B7C98 001B4BF8 98 1C 00 E6 */ stb r0, 0xe6(r28) +/* 801B7C9C 001B4BFC 80 1C 05 40 */ lwz r0, 0x540(r28) +/* 801B7CA0 001B4C00 C0 7C 00 60 */ lfs f3, 0x60(r28) +/* 801B7CA4 001B4C04 1C 00 00 1C */ mulli r0, r0, 0x1c +/* 801B7CA8 001B4C08 C0 3C 00 50 */ lfs f1, 0x50(r28) +/* 801B7CAC 001B4C0C C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 801B7CB0 001B4C10 7C 66 02 14 */ add r3, r6, r0 +/* 801B7CB4 001B4C14 34 63 00 04 */ addic. r3, r3, 4 +/* 801B7CB8 001B4C18 41 82 00 2C */ beq lbl_801B7CE4 +/* 801B7CBC 001B4C1C D0 03 00 00 */ stfs f0, 0(r3) +/* 801B7CC0 001B4C20 C0 42 A9 98 */ lfs f2, lbl_805AC6B8@sda21(r2) +/* 801B7CC4 001B4C24 D0 23 00 04 */ stfs f1, 4(r3) +/* 801B7CC8 001B4C28 C0 22 A9 80 */ lfs f1, lbl_805AC6A0@sda21(r2) +/* 801B7CCC 001B4C2C D0 63 00 08 */ stfs f3, 8(r3) +/* 801B7CD0 001B4C30 C0 02 A9 84 */ lfs f0, lbl_805AC6A4@sda21(r2) +/* 801B7CD4 001B4C34 D0 43 00 0C */ stfs f2, 0xc(r3) +/* 801B7CD8 001B4C38 D0 23 00 10 */ stfs f1, 0x10(r3) +/* 801B7CDC 001B4C3C D0 03 00 14 */ stfs f0, 0x14(r3) +/* 801B7CE0 001B4C40 D0 03 00 18 */ stfs f0, 0x18(r3) +lbl_801B7CE4: +/* 801B7CE4 001B4C44 80 7C 05 40 */ lwz r3, 0x540(r28) +/* 801B7CE8 001B4C48 38 9C 05 40 */ addi r4, r28, 0x540 +/* 801B7CEC 001B4C4C 38 03 00 01 */ addi r0, r3, 1 +/* 801B7CF0 001B4C50 90 1C 05 40 */ stw r0, 0x540(r28) +/* 801B7CF4 001B4C54 80 1C 05 40 */ lwz r0, 0x540(r28) +/* 801B7CF8 001B4C58 C0 7C 00 60 */ lfs f3, 0x60(r28) +/* 801B7CFC 001B4C5C 1C 00 00 1C */ mulli r0, r0, 0x1c +/* 801B7D00 001B4C60 C0 5C 00 50 */ lfs f2, 0x50(r28) +/* 801B7D04 001B4C64 C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 801B7D08 001B4C68 7C 64 02 14 */ add r3, r4, r0 +/* 801B7D0C 001B4C6C 34 63 00 04 */ addic. r3, r3, 4 +/* 801B7D10 001B4C70 41 82 00 28 */ beq lbl_801B7D38 +/* 801B7D14 001B4C74 D0 03 00 00 */ stfs f0, 0(r3) +/* 801B7D18 001B4C78 C0 22 A9 84 */ lfs f1, lbl_805AC6A4@sda21(r2) +/* 801B7D1C 001B4C7C D0 43 00 04 */ stfs f2, 4(r3) +/* 801B7D20 001B4C80 C0 02 A9 68 */ lfs f0, lbl_805AC688@sda21(r2) +/* 801B7D24 001B4C84 D0 63 00 08 */ stfs f3, 8(r3) +/* 801B7D28 001B4C88 D0 23 00 0C */ stfs f1, 0xc(r3) +/* 801B7D2C 001B4C8C D0 03 00 10 */ stfs f0, 0x10(r3) +/* 801B7D30 001B4C90 D0 23 00 14 */ stfs f1, 0x14(r3) +/* 801B7D34 001B4C94 D0 23 00 18 */ stfs f1, 0x18(r3) +lbl_801B7D38: +/* 801B7D38 001B4C98 80 BC 05 40 */ lwz r5, 0x540(r28) +/* 801B7D3C 001B4C9C 38 05 00 01 */ addi r0, r5, 1 +/* 801B7D40 001B4CA0 90 1C 05 40 */ stw r0, 0x540(r28) +/* 801B7D44 001B4CA4 C0 3C 05 74 */ lfs f1, 0x574(r28) +/* 801B7D48 001B4CA8 D0 3C 05 78 */ stfs f1, 0x578(r28) +/* 801B7D4C 001B4CAC C0 5C 05 74 */ lfs f2, 0x574(r28) +/* 801B7D50 001B4CB0 C0 3C 05 70 */ lfs f1, 0x570(r28) +/* 801B7D54 001B4CB4 EC 22 08 2A */ fadds f1, f2, f1 +/* 801B7D58 001B4CB8 D0 3C 05 74 */ stfs f1, 0x574(r28) +/* 801B7D5C 001B4CBC 80 04 00 00 */ lwz r0, 0(r4) +/* 801B7D60 001B4CC0 C0 7C 00 60 */ lfs f3, 0x60(r28) +/* 801B7D64 001B4CC4 1C 00 00 1C */ mulli r0, r0, 0x1c +/* 801B7D68 001B4CC8 C0 5C 00 50 */ lfs f2, 0x50(r28) +/* 801B7D6C 001B4CCC C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 801B7D70 001B4CD0 7C 64 02 14 */ add r3, r4, r0 +/* 801B7D74 001B4CD4 34 63 00 04 */ addic. r3, r3, 4 +/* 801B7D78 001B4CD8 41 82 00 28 */ beq lbl_801B7DA0 +/* 801B7D7C 001B4CDC D0 03 00 00 */ stfs f0, 0(r3) +/* 801B7D80 001B4CE0 C0 22 A9 84 */ lfs f1, lbl_805AC6A4@sda21(r2) +/* 801B7D84 001B4CE4 D0 43 00 04 */ stfs f2, 4(r3) +/* 801B7D88 001B4CE8 C0 02 A9 68 */ lfs f0, lbl_805AC688@sda21(r2) +/* 801B7D8C 001B4CEC D0 63 00 08 */ stfs f3, 8(r3) +/* 801B7D90 001B4CF0 D0 23 00 0C */ stfs f1, 0xc(r3) +/* 801B7D94 001B4CF4 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 801B7D98 001B4CF8 D0 23 00 14 */ stfs f1, 0x14(r3) +/* 801B7D9C 001B4CFC D0 23 00 18 */ stfs f1, 0x18(r3) +lbl_801B7DA0: +/* 801B7DA0 001B4D00 80 BC 05 40 */ lwz r5, 0x540(r28) +/* 801B7DA4 001B4D04 38 7C 01 18 */ addi r3, r28, 0x118 +/* 801B7DA8 001B4D08 C0 02 A9 98 */ lfs f0, lbl_805AC6B8@sda21(r2) +/* 801B7DAC 001B4D0C 38 81 00 34 */ addi r4, r1, 0x34 +/* 801B7DB0 001B4D10 38 05 00 01 */ addi r0, r5, 1 +/* 801B7DB4 001B4D14 38 A0 00 02 */ li r5, 2 +/* 801B7DB8 001B4D18 90 1C 05 40 */ stw r0, 0x540(r28) +/* 801B7DBC 001B4D1C C0 3C 05 90 */ lfs f1, 0x590(r28) +/* 801B7DC0 001B4D20 D0 3C 05 94 */ stfs f1, 0x594(r28) +/* 801B7DC4 001B4D24 C0 5C 05 90 */ lfs f2, 0x590(r28) +/* 801B7DC8 001B4D28 C0 3C 05 8C */ lfs f1, 0x58c(r28) +/* 801B7DCC 001B4D2C EC 22 08 2A */ fadds f1, f2, f1 +/* 801B7DD0 001B4D30 D0 3C 05 90 */ stfs f1, 0x590(r28) +/* 801B7DD4 001B4D34 C0 7C 00 60 */ lfs f3, 0x60(r28) +/* 801B7DD8 001B4D38 C0 5C 00 50 */ lfs f2, 0x50(r28) +/* 801B7DDC 001B4D3C C0 3C 00 40 */ lfs f1, 0x40(r28) +/* 801B7DE0 001B4D40 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 801B7DE4 001B4D44 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 801B7DE8 001B4D48 D0 61 00 3C */ stfs f3, 0x3c(r1) +/* 801B7DEC 001B4D4C D0 01 00 40 */ stfs f0, 0x40(r1) +/* 801B7DF0 001B4D50 48 00 00 B9 */ bl MarkCells__11CMarkerGridFRC7CSphereUi +/* 801B7DF4 001B4D54 7F 83 E3 78 */ mr r3, r28 +/* 801B7DF8 001B4D58 BB 21 00 B4 */ lmw r25, 0xb4(r1) +/* 801B7DFC 001B4D5C 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 801B7E00 001B4D60 7C 08 03 A6 */ mtlr r0 +/* 801B7E04 001B4D64 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 801B7E08 001B4D68 4E 80 00 20 */ blr + +.global GetWorldPositionForCell__11CMarkerGridCFUiUiUi +GetWorldPositionForCell__11CMarkerGridCFUiUiUi: +/* 801B7E0C 001B4D6C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801B7E10 001B4D70 3C 00 43 30 */ lis r0, 0x4330 +/* 801B7E14 001B4D74 C9 22 A9 A0 */ lfd f9, lbl_805AC6C0@sda21(r2) +/* 801B7E18 001B4D78 90 A1 00 1C */ stw r5, 0x1c(r1) +/* 801B7E1C 001B4D7C C0 24 00 18 */ lfs f1, 0x18(r4) +/* 801B7E20 001B4D80 90 01 00 18 */ stw r0, 0x18(r1) +/* 801B7E24 001B4D84 C0 C2 A9 74 */ lfs f6, lbl_805AC694@sda21(r2) +/* 801B7E28 001B4D88 C8 01 00 18 */ lfd f0, 0x18(r1) +/* 801B7E2C 001B4D8C 90 C1 00 0C */ stw r6, 0xc(r1) +/* 801B7E30 001B4D90 EC 40 48 28 */ fsubs f2, f0, f9 +/* 801B7E34 001B4D94 C0 84 00 1C */ lfs f4, 0x1c(r4) +/* 801B7E38 001B4D98 90 01 00 08 */ stw r0, 8(r1) +/* 801B7E3C 001B4D9C EC 06 00 72 */ fmuls f0, f6, f1 +/* 801B7E40 001B4DA0 C0 64 00 20 */ lfs f3, 0x20(r4) +/* 801B7E44 001B4DA4 C8 A1 00 08 */ lfd f5, 8(r1) +/* 801B7E48 001B4DA8 EC 42 00 72 */ fmuls f2, f2, f1 +/* 801B7E4C 001B4DAC C0 24 00 00 */ lfs f1, 0(r4) +/* 801B7E50 001B4DB0 EC E5 48 28 */ fsubs f7, f5, f9 +/* 801B7E54 001B4DB4 90 E1 00 14 */ stw r7, 0x14(r1) +/* 801B7E58 001B4DB8 EC A6 01 32 */ fmuls f5, f6, f4 +/* 801B7E5C 001B4DBC EC 22 08 2A */ fadds f1, f2, f1 +/* 801B7E60 001B4DC0 ED 07 01 32 */ fmuls f8, f7, f4 +/* 801B7E64 001B4DC4 90 01 00 10 */ stw r0, 0x10(r1) +/* 801B7E68 001B4DC8 C0 E4 00 04 */ lfs f7, 4(r4) +/* 801B7E6C 001B4DCC C8 81 00 10 */ lfd f4, 0x10(r1) +/* 801B7E70 001B4DD0 EC 01 00 2A */ fadds f0, f1, f0 +/* 801B7E74 001B4DD4 C0 44 00 08 */ lfs f2, 8(r4) +/* 801B7E78 001B4DD8 EC 26 00 F2 */ fmuls f1, f6, f3 +/* 801B7E7C 001B4DDC EC 84 48 28 */ fsubs f4, f4, f9 +/* 801B7E80 001B4DE0 D0 03 00 00 */ stfs f0, 0(r3) +/* 801B7E84 001B4DE4 EC C8 38 2A */ fadds f6, f8, f7 +/* 801B7E88 001B4DE8 EC 04 00 F2 */ fmuls f0, f4, f3 +/* 801B7E8C 001B4DEC EC 66 28 2A */ fadds f3, f6, f5 +/* 801B7E90 001B4DF0 EC 00 10 2A */ fadds f0, f0, f2 +/* 801B7E94 001B4DF4 D0 63 00 04 */ stfs f3, 4(r3) +/* 801B7E98 001B4DF8 EC 00 08 2A */ fadds f0, f0, f1 +/* 801B7E9C 001B4DFC D0 03 00 08 */ stfs f0, 8(r3) +/* 801B7EA0 001B4E00 38 21 00 20 */ addi r1, r1, 0x20 +/* 801B7EA4 001B4E04 4E 80 00 20 */ blr + +.global MarkCells__11CMarkerGridFRC7CSphereUi +MarkCells__11CMarkerGridFRC7CSphereUi: +/* 801B7EA8 001B4E08 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801B7EAC 001B4E0C 7C 08 02 A6 */ mflr r0 +/* 801B7EB0 001B4E10 90 01 00 54 */ stw r0, 0x54(r1) +/* 801B7EB4 001B4E14 38 C1 00 0C */ addi r6, r1, 0xc +/* 801B7EB8 001B4E18 38 E1 00 08 */ addi r7, r1, 8 +/* 801B7EBC 001B4E1C BF 01 00 30 */ stmw r24, 0x30(r1) +/* 801B7EC0 001B4E20 7C BD 2B 78 */ mr r29, r5 +/* 801B7EC4 001B4E24 7C 7C 1B 78 */ mr r28, r3 +/* 801B7EC8 001B4E28 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801B7ECC 001B4E2C C0 A3 00 18 */ lfs f5, 0x18(r3) +/* 801B7ED0 001B4E30 C0 04 00 0C */ lfs f0, 0xc(r4) +/* 801B7ED4 001B4E34 C0 63 00 1C */ lfs f3, 0x1c(r3) +/* 801B7ED8 001B4E38 EC 80 28 28 */ fsubs f4, f0, f5 +/* 801B7EDC 001B4E3C C0 23 00 20 */ lfs f1, 0x20(r3) +/* 801B7EE0 001B4E40 EC 40 18 28 */ fsubs f2, f0, f3 +/* 801B7EE4 001B4E44 EC 00 08 28 */ fsubs f0, f0, f1 +/* 801B7EE8 001B4E48 EC 84 28 24 */ fdivs f4, f4, f5 +/* 801B7EEC 001B4E4C EC 42 18 24 */ fdivs f2, f2, f3 +/* 801B7EF0 001B4E50 EC 00 08 24 */ fdivs f0, f0, f1 +/* 801B7EF4 001B4E54 FC 60 20 1E */ fctiwz f3, f4 +/* 801B7EF8 001B4E58 FC 20 10 1E */ fctiwz f1, f2 +/* 801B7EFC 001B4E5C FC 00 00 1E */ fctiwz f0, f0 +/* 801B7F00 001B4E60 D8 61 00 18 */ stfd f3, 0x18(r1) +/* 801B7F04 001B4E64 D8 21 00 20 */ stfd f1, 0x20(r1) +/* 801B7F08 001B4E68 83 61 00 1C */ lwz r27, 0x1c(r1) +/* 801B7F0C 001B4E6C D8 01 00 28 */ stfd f0, 0x28(r1) +/* 801B7F10 001B4E70 83 E1 00 24 */ lwz r31, 0x24(r1) +/* 801B7F14 001B4E74 83 C1 00 2C */ lwz r30, 0x2c(r1) +/* 801B7F18 001B4E78 48 00 03 61 */ bl GetCoords__11CMarkerGridCFRC9CVector3fRUiRUiRUi +/* 801B7F1C 001B4E7C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B7F20 001B4E80 41 82 00 8C */ beq lbl_801B7FAC +/* 801B7F24 001B4E84 80 01 00 08 */ lwz r0, 8(r1) +/* 801B7F28 001B4E88 7F 5B 00 50 */ subf r26, r27, r0 +/* 801B7F2C 001B4E8C 48 00 00 70 */ b lbl_801B7F9C +lbl_801B7F30: +/* 801B7F30 001B4E90 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801B7F34 001B4E94 7F 3F 00 50 */ subf r25, r31, r0 +/* 801B7F38 001B4E98 48 00 00 50 */ b lbl_801B7F88 +lbl_801B7F3C: +/* 801B7F3C 001B4E9C 80 01 00 10 */ lwz r0, 0x10(r1) +/* 801B7F40 001B4EA0 7F 1E 00 50 */ subf r24, r30, r0 +/* 801B7F44 001B4EA4 48 00 00 30 */ b lbl_801B7F74 +lbl_801B7F48: +/* 801B7F48 001B4EA8 80 A1 00 0C */ lwz r5, 0xc(r1) +/* 801B7F4C 001B4EAC 7F 83 E3 78 */ mr r3, r28 +/* 801B7F50 001B4EB0 80 C1 00 08 */ lwz r6, 8(r1) +/* 801B7F54 001B4EB4 48 00 03 DD */ bl GetValue__11CMarkerGridCFUiUiUi +/* 801B7F58 001B4EB8 7F A7 1B 78 */ or r7, r29, r3 +/* 801B7F5C 001B4EBC 7F 83 E3 78 */ mr r3, r28 +/* 801B7F60 001B4EC0 7F 04 C3 78 */ mr r4, r24 +/* 801B7F64 001B4EC4 7F 25 CB 78 */ mr r5, r25 +/* 801B7F68 001B4EC8 7F 46 D3 78 */ mr r6, r26 +/* 801B7F6C 001B4ECC 48 00 02 D1 */ bl SetValue__11CMarkerGridFUiUiUiUi +/* 801B7F70 001B4ED0 3B 18 00 01 */ addi r24, r24, 1 +lbl_801B7F74: +/* 801B7F74 001B4ED4 80 81 00 10 */ lwz r4, 0x10(r1) +/* 801B7F78 001B4ED8 7C 04 F2 14 */ add r0, r4, r30 +/* 801B7F7C 001B4EDC 7C 18 00 40 */ cmplw r24, r0 +/* 801B7F80 001B4EE0 41 80 FF C8 */ blt lbl_801B7F48 +/* 801B7F84 001B4EE4 3B 39 00 01 */ addi r25, r25, 1 +lbl_801B7F88: +/* 801B7F88 001B4EE8 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801B7F8C 001B4EEC 7C 00 FA 14 */ add r0, r0, r31 +/* 801B7F90 001B4EF0 7C 19 00 40 */ cmplw r25, r0 +/* 801B7F94 001B4EF4 41 80 FF A8 */ blt lbl_801B7F3C +/* 801B7F98 001B4EF8 3B 5A 00 01 */ addi r26, r26, 1 +lbl_801B7F9C: +/* 801B7F9C 001B4EFC 80 01 00 08 */ lwz r0, 8(r1) +/* 801B7FA0 001B4F00 7C 00 DA 14 */ add r0, r0, r27 +/* 801B7FA4 001B4F04 7C 1A 00 40 */ cmplw r26, r0 +/* 801B7FA8 001B4F08 41 80 FF 88 */ blt lbl_801B7F30 +lbl_801B7FAC: +/* 801B7FAC 001B4F0C BB 01 00 30 */ lmw r24, 0x30(r1) +/* 801B7FB0 001B4F10 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801B7FB4 001B4F14 7C 08 03 A6 */ mtlr r0 +/* 801B7FB8 001B4F18 38 21 00 50 */ addi r1, r1, 0x50 +/* 801B7FBC 001B4F1C 4E 80 00 20 */ blr + +.global AABoxTouchesData__11CMarkerGridCFRC6CAABoxUi +AABoxTouchesData__11CMarkerGridCFRC6CAABoxUi: +/* 801B7FC0 001B4F20 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 801B7FC4 001B4F24 7C 08 02 A6 */ mflr r0 +/* 801B7FC8 001B4F28 90 01 00 84 */ stw r0, 0x84(r1) +/* 801B7FCC 001B4F2C BF 61 00 6C */ stmw r27, 0x6c(r1) +/* 801B7FD0 001B4F30 7C 7C 1B 78 */ mr r28, r3 +/* 801B7FD4 001B4F34 7C 9D 23 78 */ mr r29, r4 +/* 801B7FD8 001B4F38 7C BE 2B 78 */ mr r30, r5 +/* 801B7FDC 001B4F3C 48 17 FB A9 */ bl DoBoundsOverlap__6CAABoxCFRC6CAABox +/* 801B7FE0 001B4F40 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B7FE4 001B4F44 40 82 00 0C */ bne lbl_801B7FF0 +/* 801B7FE8 001B4F48 38 60 00 00 */ li r3, 0 +/* 801B7FEC 001B4F4C 48 00 02 3C */ b lbl_801B8228 +lbl_801B7FF0: +/* 801B7FF0 001B4F50 C0 BD 00 00 */ lfs f5, 0(r29) +/* 801B7FF4 001B4F54 7F 84 E3 78 */ mr r4, r28 +/* 801B7FF8 001B4F58 C0 9D 00 04 */ lfs f4, 4(r29) +/* 801B7FFC 001B4F5C 3B E1 00 5C */ addi r31, r1, 0x5c +/* 801B8000 001B4F60 C0 7D 00 08 */ lfs f3, 8(r29) +/* 801B8004 001B4F64 38 61 00 50 */ addi r3, r1, 0x50 +/* 801B8008 001B4F68 C0 5D 00 0C */ lfs f2, 0xc(r29) +/* 801B800C 001B4F6C C0 3D 00 10 */ lfs f1, 0x10(r29) +/* 801B8010 001B4F70 C0 1D 00 14 */ lfs f0, 0x14(r29) +/* 801B8014 001B4F74 D0 A1 00 50 */ stfs f5, 0x50(r1) +/* 801B8018 001B4F78 D0 81 00 54 */ stfs f4, 0x54(r1) +/* 801B801C 001B4F7C D0 61 00 58 */ stfs f3, 0x58(r1) +/* 801B8020 001B4F80 D0 41 00 5C */ stfs f2, 0x5c(r1) +/* 801B8024 001B4F84 D0 21 00 60 */ stfs f1, 0x60(r1) +/* 801B8028 001B4F88 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 801B802C 001B4F8C 48 17 FA 55 */ bl Inside__6CAABoxCFRC6CAABox +/* 801B8030 001B4F90 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B8034 001B4F94 40 82 01 54 */ bne lbl_801B8188 +/* 801B8038 001B4F98 C0 7C 00 00 */ lfs f3, 0(r28) +/* 801B803C 001B4F9C C0 1D 00 00 */ lfs f0, 0(r29) +/* 801B8040 001B4FA0 C0 5C 00 04 */ lfs f2, 4(r28) +/* 801B8044 001B4FA4 C0 3C 00 08 */ lfs f1, 8(r28) +/* 801B8048 001B4FA8 FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 801B804C 001B4FAC D0 61 00 2C */ stfs f3, 0x2c(r1) +/* 801B8050 001B4FB0 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 801B8054 001B4FB4 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 801B8058 001B4FB8 40 80 00 0C */ bge lbl_801B8064 +/* 801B805C 001B4FBC 7F A3 EB 78 */ mr r3, r29 +/* 801B8060 001B4FC0 48 00 00 08 */ b lbl_801B8068 +lbl_801B8064: +/* 801B8064 001B4FC4 38 61 00 2C */ addi r3, r1, 0x2c +lbl_801B8068: +/* 801B8068 001B4FC8 38 9D 00 04 */ addi r4, r29, 4 +/* 801B806C 001B4FCC C0 43 00 00 */ lfs f2, 0(r3) +/* 801B8070 001B4FD0 C0 21 00 30 */ lfs f1, 0x30(r1) +/* 801B8074 001B4FD4 38 01 00 30 */ addi r0, r1, 0x30 +/* 801B8078 001B4FD8 C0 1D 00 04 */ lfs f0, 4(r29) +/* 801B807C 001B4FDC D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 801B8080 001B4FE0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B8084 001B4FE4 40 80 00 08 */ bge lbl_801B808C +/* 801B8088 001B4FE8 48 00 00 08 */ b lbl_801B8090 +lbl_801B808C: +/* 801B808C 001B4FEC 7C 04 03 78 */ mr r4, r0 +lbl_801B8090: +/* 801B8090 001B4FF0 38 7D 00 08 */ addi r3, r29, 8 +/* 801B8094 001B4FF4 C0 44 00 00 */ lfs f2, 0(r4) +/* 801B8098 001B4FF8 C0 21 00 34 */ lfs f1, 0x34(r1) +/* 801B809C 001B4FFC 38 01 00 34 */ addi r0, r1, 0x34 +/* 801B80A0 001B5000 C0 1D 00 08 */ lfs f0, 8(r29) +/* 801B80A4 001B5004 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 801B80A8 001B5008 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B80AC 001B500C 40 80 00 08 */ bge lbl_801B80B4 +/* 801B80B0 001B5010 48 00 00 08 */ b lbl_801B80B8 +lbl_801B80B4: +/* 801B80B4 001B5014 7C 03 03 78 */ mr r3, r0 +lbl_801B80B8: +/* 801B80B8 001B5018 38 9D 00 0C */ addi r4, r29, 0xc +/* 801B80BC 001B501C C0 83 00 00 */ lfs f4, 0(r3) +/* 801B80C0 001B5020 C0 7C 00 0C */ lfs f3, 0xc(r28) +/* 801B80C4 001B5024 C0 1D 00 0C */ lfs f0, 0xc(r29) +/* 801B80C8 001B5028 C0 5C 00 10 */ lfs f2, 0x10(r28) +/* 801B80CC 001B502C C0 3C 00 14 */ lfs f1, 0x14(r28) +/* 801B80D0 001B5030 FC 00 18 40 */ fcmpo cr0, f0, f3 +/* 801B80D4 001B5034 D0 81 00 34 */ stfs f4, 0x34(r1) +/* 801B80D8 001B5038 D0 61 00 20 */ stfs f3, 0x20(r1) +/* 801B80DC 001B503C D0 41 00 24 */ stfs f2, 0x24(r1) +/* 801B80E0 001B5040 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 801B80E4 001B5044 40 80 00 08 */ bge lbl_801B80EC +/* 801B80E8 001B5048 48 00 00 08 */ b lbl_801B80F0 +lbl_801B80EC: +/* 801B80EC 001B504C 38 81 00 20 */ addi r4, r1, 0x20 +lbl_801B80F0: +/* 801B80F0 001B5050 38 7D 00 10 */ addi r3, r29, 0x10 +/* 801B80F4 001B5054 C0 44 00 00 */ lfs f2, 0(r4) +/* 801B80F8 001B5058 C0 3D 00 10 */ lfs f1, 0x10(r29) +/* 801B80FC 001B505C 38 01 00 24 */ addi r0, r1, 0x24 +/* 801B8100 001B5060 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 801B8104 001B5064 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 801B8108 001B5068 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B810C 001B506C 40 80 00 08 */ bge lbl_801B8114 +/* 801B8110 001B5070 48 00 00 08 */ b lbl_801B8118 +lbl_801B8114: +/* 801B8114 001B5074 7C 03 03 78 */ mr r3, r0 +lbl_801B8118: +/* 801B8118 001B5078 38 9D 00 14 */ addi r4, r29, 0x14 +/* 801B811C 001B507C C0 43 00 00 */ lfs f2, 0(r3) +/* 801B8120 001B5080 C0 3D 00 14 */ lfs f1, 0x14(r29) +/* 801B8124 001B5084 38 01 00 28 */ addi r0, r1, 0x28 +/* 801B8128 001B5088 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 801B812C 001B508C D0 41 00 24 */ stfs f2, 0x24(r1) +/* 801B8130 001B5090 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801B8134 001B5094 40 80 00 08 */ bge lbl_801B813C +/* 801B8138 001B5098 48 00 00 08 */ b lbl_801B8140 +lbl_801B813C: +/* 801B813C 001B509C 7C 04 03 78 */ mr r4, r0 +lbl_801B8140: +/* 801B8140 001B50A0 C0 04 00 00 */ lfs f0, 0(r4) +/* 801B8144 001B50A4 38 61 00 38 */ addi r3, r1, 0x38 +/* 801B8148 001B50A8 38 81 00 2C */ addi r4, r1, 0x2c +/* 801B814C 001B50AC 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801B8150 001B50B0 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 801B8154 001B50B4 48 18 03 B5 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801B8158 001B50B8 80 E1 00 38 */ lwz r7, 0x38(r1) +/* 801B815C 001B50BC 80 C1 00 3C */ lwz r6, 0x3c(r1) +/* 801B8160 001B50C0 80 A1 00 40 */ lwz r5, 0x40(r1) +/* 801B8164 001B50C4 80 81 00 44 */ lwz r4, 0x44(r1) +/* 801B8168 001B50C8 80 61 00 48 */ lwz r3, 0x48(r1) +/* 801B816C 001B50CC 80 01 00 4C */ lwz r0, 0x4c(r1) +/* 801B8170 001B50D0 90 E1 00 50 */ stw r7, 0x50(r1) +/* 801B8174 001B50D4 90 C1 00 54 */ stw r6, 0x54(r1) +/* 801B8178 001B50D8 90 A1 00 58 */ stw r5, 0x58(r1) +/* 801B817C 001B50DC 90 81 00 5C */ stw r4, 0x5c(r1) +/* 801B8180 001B50E0 90 61 00 60 */ stw r3, 0x60(r1) +/* 801B8184 001B50E4 90 01 00 64 */ stw r0, 0x64(r1) +lbl_801B8188: +/* 801B8188 001B50E8 7F 83 E3 78 */ mr r3, r28 +/* 801B818C 001B50EC 38 81 00 50 */ addi r4, r1, 0x50 +/* 801B8190 001B50F0 38 A1 00 1C */ addi r5, r1, 0x1c +/* 801B8194 001B50F4 38 C1 00 18 */ addi r6, r1, 0x18 +/* 801B8198 001B50F8 38 E1 00 14 */ addi r7, r1, 0x14 +/* 801B819C 001B50FC 48 00 00 DD */ bl GetCoords__11CMarkerGridCFRC9CVector3fRUiRUiRUi +/* 801B81A0 001B5100 7F 83 E3 78 */ mr r3, r28 +/* 801B81A4 001B5104 7F E4 FB 78 */ mr r4, r31 +/* 801B81A8 001B5108 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801B81AC 001B510C 38 C1 00 0C */ addi r6, r1, 0xc +/* 801B81B0 001B5110 38 E1 00 08 */ addi r7, r1, 8 +/* 801B81B4 001B5114 48 00 00 C5 */ bl GetCoords__11CMarkerGridCFRC9CVector3fRUiRUiRUi +/* 801B81B8 001B5118 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801B81BC 001B511C 48 00 00 5C */ b lbl_801B8218 +lbl_801B81C0: +/* 801B81C0 001B5120 83 E1 00 18 */ lwz r31, 0x18(r1) +/* 801B81C4 001B5124 48 00 00 44 */ b lbl_801B8208 +lbl_801B81C8: +/* 801B81C8 001B5128 83 61 00 1C */ lwz r27, 0x1c(r1) +/* 801B81CC 001B512C 48 00 00 2C */ b lbl_801B81F8 +lbl_801B81D0: +/* 801B81D0 001B5130 7F 83 E3 78 */ mr r3, r28 +/* 801B81D4 001B5134 7F 64 DB 78 */ mr r4, r27 +/* 801B81D8 001B5138 7F E5 FB 78 */ mr r5, r31 +/* 801B81DC 001B513C 7F A6 EB 78 */ mr r6, r29 +/* 801B81E0 001B5140 48 00 01 51 */ bl GetValue__11CMarkerGridCFUiUiUi +/* 801B81E4 001B5144 7F C0 18 39 */ and. r0, r30, r3 +/* 801B81E8 001B5148 41 82 00 0C */ beq lbl_801B81F4 +/* 801B81EC 001B514C 38 60 00 01 */ li r3, 1 +/* 801B81F0 001B5150 48 00 00 38 */ b lbl_801B8228 +lbl_801B81F4: +/* 801B81F4 001B5154 3B 7B 00 01 */ addi r27, r27, 1 +lbl_801B81F8: +/* 801B81F8 001B5158 80 01 00 10 */ lwz r0, 0x10(r1) +/* 801B81FC 001B515C 7C 1B 00 40 */ cmplw r27, r0 +/* 801B8200 001B5160 41 80 FF D0 */ blt lbl_801B81D0 +/* 801B8204 001B5164 3B FF 00 01 */ addi r31, r31, 1 +lbl_801B8208: +/* 801B8208 001B5168 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801B820C 001B516C 7C 1F 00 40 */ cmplw r31, r0 +/* 801B8210 001B5170 41 80 FF B8 */ blt lbl_801B81C8 +/* 801B8214 001B5174 3B BD 00 01 */ addi r29, r29, 1 +lbl_801B8218: +/* 801B8218 001B5178 80 01 00 08 */ lwz r0, 8(r1) +/* 801B821C 001B517C 7C 1D 00 40 */ cmplw r29, r0 +/* 801B8220 001B5180 41 80 FF A0 */ blt lbl_801B81C0 +/* 801B8224 001B5184 38 60 00 00 */ li r3, 0 +lbl_801B8228: +/* 801B8228 001B5188 BB 61 00 6C */ lmw r27, 0x6c(r1) +/* 801B822C 001B518C 80 01 00 84 */ lwz r0, 0x84(r1) +/* 801B8230 001B5190 7C 08 03 A6 */ mtlr r0 +/* 801B8234 001B5194 38 21 00 80 */ addi r1, r1, 0x80 +/* 801B8238 001B5198 4E 80 00 20 */ blr + +.global SetValue__11CMarkerGridFUiUiUiUi +SetValue__11CMarkerGridFUiUiUiUi: +/* 801B823C 001B519C 54 C0 30 32 */ slwi r0, r6, 6 +/* 801B8240 001B51A0 54 88 F0 BE */ srwi r8, r4, 2 +/* 801B8244 001B51A4 54 86 0F 7C */ rlwinm r6, r4, 1, 0x1d, 0x1e +/* 801B8248 001B51A8 54 A5 10 3A */ slwi r5, r5, 2 +/* 801B824C 001B51AC 7C 80 42 14 */ add r4, r0, r8 +/* 801B8250 001B51B0 38 00 00 03 */ li r0, 3 +/* 801B8254 001B51B4 7C A5 22 14 */ add r5, r5, r4 +/* 801B8258 001B51B8 7C A5 1A 14 */ add r5, r5, r3 +/* 801B825C 001B51BC 7C 00 30 30 */ slw r0, r0, r6 +/* 801B8260 001B51C0 88 65 00 28 */ lbz r3, 0x28(r5) +/* 801B8264 001B51C4 7C E4 30 30 */ slw r4, r7, r6 +/* 801B8268 001B51C8 7C 60 00 78 */ andc r0, r3, r0 +/* 801B826C 001B51CC 7C 80 03 78 */ or r0, r4, r0 +/* 801B8270 001B51D0 98 05 00 28 */ stb r0, 0x28(r5) +/* 801B8274 001B51D4 4E 80 00 20 */ blr + +.global GetCoords__11CMarkerGridCFRC9CVector3fRUiRUiRUi +GetCoords__11CMarkerGridCFRC9CVector3fRUiRUiRUi: +/* 801B8278 001B51D8 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801B827C 001B51DC 7C 08 02 A6 */ mflr r0 +/* 801B8280 001B51E0 90 01 00 34 */ stw r0, 0x34(r1) +/* 801B8284 001B51E4 BF 61 00 1C */ stmw r27, 0x1c(r1) +/* 801B8288 001B51E8 7C 7B 1B 78 */ mr r27, r3 +/* 801B828C 001B51EC 7C 9C 23 78 */ mr r28, r4 +/* 801B8290 001B51F0 7C BD 2B 78 */ mr r29, r5 +/* 801B8294 001B51F4 7C DE 33 78 */ mr r30, r6 +/* 801B8298 001B51F8 7C FF 3B 78 */ mr r31, r7 +/* 801B829C 001B51FC 48 17 F2 99 */ bl PointInside__6CAABoxCFRC9CVector3f +/* 801B82A0 001B5200 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801B82A4 001B5204 40 82 00 0C */ bne lbl_801B82B0 +/* 801B82A8 001B5208 38 60 00 00 */ li r3, 0 +/* 801B82AC 001B520C 48 00 00 70 */ b lbl_801B831C +lbl_801B82B0: +/* 801B82B0 001B5210 C0 5C 00 00 */ lfs f2, 0(r28) +/* 801B82B4 001B5214 C0 3B 00 00 */ lfs f1, 0(r27) +/* 801B82B8 001B5218 C0 1B 00 18 */ lfs f0, 0x18(r27) +/* 801B82BC 001B521C EC 42 08 28 */ fsubs f2, f2, f1 +/* 801B82C0 001B5220 C0 BC 00 04 */ lfs f5, 4(r28) +/* 801B82C4 001B5224 C0 9B 00 04 */ lfs f4, 4(r27) +/* 801B82C8 001B5228 C0 7C 00 08 */ lfs f3, 8(r28) +/* 801B82CC 001B522C EC 22 00 24 */ fdivs f1, f2, f0 +/* 801B82D0 001B5230 C0 1B 00 08 */ lfs f0, 8(r27) +/* 801B82D4 001B5234 D0 41 00 08 */ stfs f2, 8(r1) +/* 801B82D8 001B5238 EC 45 20 28 */ fsubs f2, f5, f4 +/* 801B82DC 001B523C EC 03 00 28 */ fsubs f0, f3, f0 +/* 801B82E0 001B5240 D0 41 00 0C */ stfs f2, 0xc(r1) +/* 801B82E4 001B5244 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801B82E8 001B5248 48 1D 16 6D */ bl __cvt_fp2unsigned +/* 801B82EC 001B524C 90 7D 00 00 */ stw r3, 0(r29) +/* 801B82F0 001B5250 C0 21 00 0C */ lfs f1, 0xc(r1) +/* 801B82F4 001B5254 C0 1B 00 1C */ lfs f0, 0x1c(r27) +/* 801B82F8 001B5258 EC 21 00 24 */ fdivs f1, f1, f0 +/* 801B82FC 001B525C 48 1D 16 59 */ bl __cvt_fp2unsigned +/* 801B8300 001B5260 90 7E 00 00 */ stw r3, 0(r30) +/* 801B8304 001B5264 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 801B8308 001B5268 C0 1B 00 20 */ lfs f0, 0x20(r27) +/* 801B830C 001B526C EC 21 00 24 */ fdivs f1, f1, f0 +/* 801B8310 001B5270 48 1D 16 45 */ bl __cvt_fp2unsigned +/* 801B8314 001B5274 90 7F 00 00 */ stw r3, 0(r31) +/* 801B8318 001B5278 38 60 00 01 */ li r3, 1 +lbl_801B831C: +/* 801B831C 001B527C BB 61 00 1C */ lmw r27, 0x1c(r1) +/* 801B8320 001B5280 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801B8324 001B5284 7C 08 03 A6 */ mtlr r0 +/* 801B8328 001B5288 38 21 00 30 */ addi r1, r1, 0x30 +/* 801B832C 001B528C 4E 80 00 20 */ blr + +.global GetValue__11CMarkerGridCFUiUiUi +GetValue__11CMarkerGridCFUiUiUi: +/* 801B8330 001B5290 54 C0 30 32 */ slwi r0, r6, 6 +/* 801B8334 001B5294 54 87 F0 BE */ srwi r7, r4, 2 +/* 801B8338 001B5298 54 A5 10 3A */ slwi r5, r5, 2 +/* 801B833C 001B529C 54 88 0F 7C */ rlwinm r8, r4, 1, 0x1d, 0x1e +/* 801B8340 001B52A0 7C 00 3A 14 */ add r0, r0, r7 +/* 801B8344 001B52A4 38 C0 00 03 */ li r6, 3 +/* 801B8348 001B52A8 7C 85 02 14 */ add r4, r5, r0 +/* 801B834C 001B52AC 7C 84 1A 14 */ add r4, r4, r3 +/* 801B8350 001B52B0 7C C3 40 30 */ slw r3, r6, r8 +/* 801B8354 001B52B4 88 04 00 28 */ lbz r0, 0x28(r4) +/* 801B8358 001B52B8 7C 60 00 38 */ and r0, r3, r0 +/* 801B835C 001B52BC 7C 03 44 30 */ srw r3, r0, r8 +/* 801B8360 001B52C0 4E 80 00 20 */ blr + +.global __ct__11CMarkerGridFRC6CAABox +__ct__11CMarkerGridFRC6CAABox: +/* 801B8364 001B52C4 C0 04 00 00 */ lfs f0, 0(r4) +/* 801B8368 001B52C8 38 A0 04 00 */ li r5, 0x400 +/* 801B836C 001B52CC C0 82 A9 A8 */ lfs f4, lbl_805AC6C8@sda21(r2) +/* 801B8370 001B52D0 38 00 00 80 */ li r0, 0x80 +/* 801B8374 001B52D4 D0 03 00 00 */ stfs f0, 0(r3) +/* 801B8378 001B52D8 38 E3 00 28 */ addi r7, r3, 0x28 +/* 801B837C 001B52DC 38 C0 00 00 */ li r6, 0 +/* 801B8380 001B52E0 C0 04 00 04 */ lfs f0, 4(r4) +/* 801B8384 001B52E4 D0 03 00 04 */ stfs f0, 4(r3) +/* 801B8388 001B52E8 C0 04 00 08 */ lfs f0, 8(r4) +/* 801B838C 001B52EC D0 03 00 08 */ stfs f0, 8(r3) +/* 801B8390 001B52F0 C0 04 00 0C */ lfs f0, 0xc(r4) +/* 801B8394 001B52F4 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 801B8398 001B52F8 C0 04 00 10 */ lfs f0, 0x10(r4) +/* 801B839C 001B52FC D0 03 00 10 */ stfs f0, 0x10(r3) +/* 801B83A0 001B5300 C0 04 00 14 */ lfs f0, 0x14(r4) +/* 801B83A4 001B5304 D0 03 00 14 */ stfs f0, 0x14(r3) +/* 801B83A8 001B5308 C0 23 00 0C */ lfs f1, 0xc(r3) +/* 801B83AC 001B530C C0 03 00 00 */ lfs f0, 0(r3) +/* 801B83B0 001B5310 C0 63 00 10 */ lfs f3, 0x10(r3) +/* 801B83B4 001B5314 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801B83B8 001B5318 C0 23 00 04 */ lfs f1, 4(r3) +/* 801B83BC 001B531C C0 43 00 14 */ lfs f2, 0x14(r3) +/* 801B83C0 001B5320 EC 63 08 28 */ fsubs f3, f3, f1 +/* 801B83C4 001B5324 C0 23 00 08 */ lfs f1, 8(r3) +/* 801B83C8 001B5328 EC 04 00 32 */ fmuls f0, f4, f0 +/* 801B83CC 001B532C EC 22 08 28 */ fsubs f1, f2, f1 +/* 801B83D0 001B5330 EC 44 00 F2 */ fmuls f2, f4, f3 +/* 801B83D4 001B5334 D0 03 00 18 */ stfs f0, 0x18(r3) +/* 801B83D8 001B5338 EC 04 00 72 */ fmuls f0, f4, f1 +/* 801B83DC 001B533C D0 43 00 1C */ stfs f2, 0x1c(r3) +/* 801B83E0 001B5340 D0 03 00 20 */ stfs f0, 0x20(r3) +/* 801B83E4 001B5344 90 A3 00 24 */ stw r5, 0x24(r3) +/* 801B83E8 001B5348 7C 09 03 A6 */ mtctr r0 +lbl_801B83EC: +/* 801B83EC 001B534C 28 07 00 00 */ cmplwi r7, 0 +/* 801B83F0 001B5350 41 82 00 0C */ beq lbl_801B83FC +/* 801B83F4 001B5354 88 0D 90 DC */ lbz r0, lbl_805A7C9C@sda21(r13) +/* 801B83F8 001B5358 98 07 00 00 */ stb r0, 0(r7) +lbl_801B83FC: +/* 801B83FC 001B535C 34 E7 00 01 */ addic. r7, r7, 1 +/* 801B8400 001B5360 41 82 00 0C */ beq lbl_801B840C +/* 801B8404 001B5364 88 0D 90 DC */ lbz r0, lbl_805A7C9C@sda21(r13) +/* 801B8408 001B5368 98 07 00 00 */ stb r0, 0(r7) +lbl_801B840C: +/* 801B840C 001B536C 34 E7 00 01 */ addic. r7, r7, 1 +/* 801B8410 001B5370 41 82 00 0C */ beq lbl_801B841C +/* 801B8414 001B5374 88 0D 90 DC */ lbz r0, lbl_805A7C9C@sda21(r13) +/* 801B8418 001B5378 98 07 00 00 */ stb r0, 0(r7) +lbl_801B841C: +/* 801B841C 001B537C 34 E7 00 01 */ addic. r7, r7, 1 +/* 801B8420 001B5380 41 82 00 0C */ beq lbl_801B842C +/* 801B8424 001B5384 88 0D 90 DC */ lbz r0, lbl_805A7C9C@sda21(r13) +/* 801B8428 001B5388 98 07 00 00 */ stb r0, 0(r7) +lbl_801B842C: +/* 801B842C 001B538C 34 E7 00 01 */ addic. r7, r7, 1 +/* 801B8430 001B5390 41 82 00 0C */ beq lbl_801B843C +/* 801B8434 001B5394 88 0D 90 DC */ lbz r0, lbl_805A7C9C@sda21(r13) +/* 801B8438 001B5398 98 07 00 00 */ stb r0, 0(r7) +lbl_801B843C: +/* 801B843C 001B539C 34 E7 00 01 */ addic. r7, r7, 1 +/* 801B8440 001B53A0 41 82 00 0C */ beq lbl_801B844C +/* 801B8444 001B53A4 88 0D 90 DC */ lbz r0, lbl_805A7C9C@sda21(r13) +/* 801B8448 001B53A8 98 07 00 00 */ stb r0, 0(r7) +lbl_801B844C: +/* 801B844C 001B53AC 34 E7 00 01 */ addic. r7, r7, 1 +/* 801B8450 001B53B0 41 82 00 0C */ beq lbl_801B845C +/* 801B8454 001B53B4 88 0D 90 DC */ lbz r0, lbl_805A7C9C@sda21(r13) +/* 801B8458 001B53B8 98 07 00 00 */ stb r0, 0(r7) +lbl_801B845C: +/* 801B845C 001B53BC 34 E7 00 01 */ addic. r7, r7, 1 +/* 801B8460 001B53C0 41 82 00 0C */ beq lbl_801B846C +/* 801B8464 001B53C4 88 0D 90 DC */ lbz r0, lbl_805A7C9C@sda21(r13) +/* 801B8468 001B53C8 98 07 00 00 */ stb r0, 0(r7) +lbl_801B846C: +/* 801B846C 001B53CC 38 C6 00 07 */ addi r6, r6, 7 +/* 801B8470 001B53D0 38 E7 00 01 */ addi r7, r7, 1 +/* 801B8474 001B53D4 42 00 FF 78 */ bdnz lbl_801B83EC +/* 801B8478 001B53D8 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Weapons/CIceProjectile.s b/asm/Kyoto_CWD/Weapons/CIceProjectile.s new file mode 100644 index 00000000..6e9b25ac --- /dev/null +++ b/asm/Kyoto_CWD/Weapons/CIceProjectile.s @@ -0,0 +1,2650 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global ExplosionFinished__Q220CIceAttackProjectile12CTrailObjectCFv +ExplosionFinished__Q220CIceAttackProjectile12CTrailObjectCFv: +/* 801F1A68 001EE9C8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801F1A6C 001EE9CC 7C 08 02 A6 */ mflr r0 +/* 801F1A70 001EE9D0 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F1A74 001EE9D4 80 63 00 0C */ lwz r3, 0xc(r3) +/* 801F1A78 001EE9D8 28 03 00 00 */ cmplwi r3, 0 +/* 801F1A7C 001EE9DC 41 82 00 24 */ beq lbl_801F1AA0 +/* 801F1A80 001EE9E0 81 83 00 00 */ lwz r12, 0(r3) +/* 801F1A84 001EE9E4 81 8C 00 58 */ lwz r12, 0x58(r12) +/* 801F1A88 001EE9E8 7D 89 03 A6 */ mtctr r12 +/* 801F1A8C 001EE9EC 4E 80 04 21 */ bctrl +/* 801F1A90 001EE9F0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801F1A94 001EE9F4 41 82 00 0C */ beq lbl_801F1AA0 +/* 801F1A98 001EE9F8 38 60 00 01 */ li r3, 1 +/* 801F1A9C 001EE9FC 48 00 00 08 */ b lbl_801F1AA4 +lbl_801F1AA0: +/* 801F1AA0 001EEA00 38 60 00 00 */ li r3, 0 +lbl_801F1AA4: +/* 801F1AA4 001EEA04 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801F1AA8 001EEA08 7C 08 03 A6 */ mtlr r0 +/* 801F1AAC 001EEA0C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801F1AB0 001EEA10 4E 80 00 20 */ blr + +.global ExplosionStarted__Q220CIceAttackProjectile12CTrailObjectCFv +ExplosionStarted__Q220CIceAttackProjectile12CTrailObjectCFv: +/* 801F1AB4 001EEA14 80 63 00 0C */ lwz r3, 0xc(r3) +/* 801F1AB8 001EEA18 7C 03 00 D0 */ neg r0, r3 +/* 801F1ABC 001EEA1C 7C 00 1B 78 */ or r0, r0, r3 +/* 801F1AC0 001EEA20 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801F1AC4 001EEA24 4E 80 00 20 */ blr + +.global AddToRenderer__Q220CIceAttackProjectile12CTrailObjectCFRC14CFrustumPlanesRC13CStateManager +AddToRenderer__Q220CIceAttackProjectile12CTrailObjectCFRC14CFrustumPlanesRC13CStateManager: +/* 801F1AC8 001EEA28 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801F1ACC 001EEA2C 7C 08 02 A6 */ mflr r0 +/* 801F1AD0 001EEA30 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F1AD4 001EEA34 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801F1AD8 001EEA38 7C 7F 1B 78 */ mr r31, r3 +/* 801F1ADC 001EEA3C 80 03 00 04 */ lwz r0, 4(r3) +/* 801F1AE0 001EEA40 28 00 00 00 */ cmplwi r0, 0 +/* 801F1AE4 001EEA44 41 82 00 20 */ beq lbl_801F1B04 +/* 801F1AE8 001EEA48 38 7F 00 18 */ addi r3, r31, 0x18 +/* 801F1AEC 001EEA4C 4B F1 32 9D */ bl ActivateLights__12CActorLightsCFv +/* 801F1AF0 001EEA50 80 7F 00 04 */ lwz r3, 4(r31) +/* 801F1AF4 001EEA54 81 83 00 00 */ lwz r12, 0(r3) +/* 801F1AF8 001EEA58 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801F1AFC 001EEA5C 7D 89 03 A6 */ mtctr r12 +/* 801F1B00 001EEA60 4E 80 04 21 */ bctrl +lbl_801F1B04: +/* 801F1B04 001EEA64 80 7F 00 0C */ lwz r3, 0xc(r31) +/* 801F1B08 001EEA68 28 03 00 00 */ cmplwi r3, 0 +/* 801F1B0C 001EEA6C 41 82 00 14 */ beq lbl_801F1B20 +/* 801F1B10 001EEA70 81 83 00 00 */ lwz r12, 0(r3) +/* 801F1B14 001EEA74 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801F1B18 001EEA78 7D 89 03 A6 */ mtctr r12 +/* 801F1B1C 001EEA7C 4E 80 04 21 */ bctrl +lbl_801F1B20: +/* 801F1B20 001EEA80 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801F1B24 001EEA84 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801F1B28 001EEA88 7C 08 03 A6 */ mtlr r0 +/* 801F1B2C 001EEA8C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801F1B30 001EEA90 4E 80 00 20 */ blr + +.global Update__Q220CIceAttackProjectile12CTrailObjectFfR13CStateManagerPC13CPhysicsActor +Update__Q220CIceAttackProjectile12CTrailObjectFfR13CStateManagerPC13CPhysicsActor: +/* 801F1B34 001EEA94 94 21 FD F0 */ stwu r1, -0x210(r1) +/* 801F1B38 001EEA98 7C 08 02 A6 */ mflr r0 +/* 801F1B3C 001EEA9C 90 01 02 14 */ stw r0, 0x214(r1) +/* 801F1B40 001EEAA0 DB E1 02 00 */ stfd f31, 0x200(r1) +/* 801F1B44 001EEAA4 F3 E1 02 08 */ psq_st f31, 520(r1), 0, qr0 +/* 801F1B48 001EEAA8 DB C1 01 F0 */ stfd f30, 0x1f0(r1) +/* 801F1B4C 001EEAAC F3 C1 01 F8 */ psq_st f30, 504(r1), 0, qr0 +/* 801F1B50 001EEAB0 DB A1 01 E0 */ stfd f29, 0x1e0(r1) +/* 801F1B54 001EEAB4 F3 A1 01 E8 */ psq_st f29, 488(r1), 0, qr0 +/* 801F1B58 001EEAB8 DB 81 01 D0 */ stfd f28, 0x1d0(r1) +/* 801F1B5C 001EEABC F3 81 01 D8 */ psq_st f28, 472(r1), 0, qr0 +/* 801F1B60 001EEAC0 93 E1 01 CC */ stw r31, 0x1cc(r1) +/* 801F1B64 001EEAC4 93 C1 01 C8 */ stw r30, 0x1c8(r1) +/* 801F1B68 001EEAC8 93 A1 01 C4 */ stw r29, 0x1c4(r1) +/* 801F1B6C 001EEACC 93 81 01 C0 */ stw r28, 0x1c0(r1) +/* 801F1B70 001EEAD0 7C 7F 1B 78 */ mr r31, r3 +/* 801F1B74 001EEAD4 FF E0 08 90 */ fmr f31, f1 +/* 801F1B78 001EEAD8 88 03 03 20 */ lbz r0, 0x320(r3) +/* 801F1B7C 001EEADC 7C 9C 23 78 */ mr r28, r4 +/* 801F1B80 001EEAE0 7C BD 2B 78 */ mr r29, r5 +/* 801F1B84 001EEAE4 28 00 00 00 */ cmplwi r0, 0 +/* 801F1B88 001EEAE8 40 82 00 E4 */ bne lbl_801F1C6C +/* 801F1B8C 001EEAEC A0 1F 00 10 */ lhz r0, 0x10(r31) +/* 801F1B90 001EEAF0 7F 83 E3 78 */ mr r3, r28 +/* 801F1B94 001EEAF4 38 81 00 08 */ addi r4, r1, 8 +/* 801F1B98 001EEAF8 B0 01 00 08 */ sth r0, 8(r1) +/* 801F1B9C 001EEAFC 4B E5 A9 D9 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801F1BA0 001EEB00 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801F1BA4 001EEB04 41 82 00 C8 */ beq lbl_801F1C6C +/* 801F1BA8 001EEB08 7F A4 EB 78 */ mr r4, r29 +/* 801F1BAC 001EEB0C 38 61 00 C0 */ addi r3, r1, 0xc0 +/* 801F1BB0 001EEB10 81 9D 00 00 */ lwz r12, 0(r29) +/* 801F1BB4 001EEB14 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 801F1BB8 001EEB18 7D 89 03 A6 */ mtctr r12 +/* 801F1BBC 001EEB1C 4E 80 04 21 */ bctrl +/* 801F1BC0 001EEB20 7F A3 EB 78 */ mr r3, r29 +/* 801F1BC4 001EEB24 81 9D 00 00 */ lwz r12, 0(r29) +/* 801F1BC8 001EEB28 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 801F1BCC 001EEB2C 7D 89 03 A6 */ mtctr r12 +/* 801F1BD0 001EEB30 4E 80 04 21 */ bctrl +/* 801F1BD4 001EEB34 3C 80 80 5A */ lis r4, lbl_8059FD18@ha +/* 801F1BD8 001EEB38 90 61 00 F0 */ stw r3, 0xf0(r1) +/* 801F1BDC 001EEB3C 38 04 FD 18 */ addi r0, r4, lbl_8059FD18@l +/* 801F1BE0 001EEB40 38 61 00 F8 */ addi r3, r1, 0xf8 +/* 801F1BE4 001EEB44 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 801F1BE8 001EEB48 38 81 00 C0 */ addi r4, r1, 0xc0 +/* 801F1BEC 001EEB4C 48 12 0F 89 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801F1BF0 001EEB50 7F C4 F3 78 */ mr r4, r30 +/* 801F1BF4 001EEB54 38 61 01 28 */ addi r3, r1, 0x128 +/* 801F1BF8 001EEB58 81 9E 00 00 */ lwz r12, 0(r30) +/* 801F1BFC 001EEB5C 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 801F1C00 001EEB60 7D 89 03 A6 */ mtctr r12 +/* 801F1C04 001EEB64 4E 80 04 21 */ bctrl +/* 801F1C08 001EEB68 7F C3 F3 78 */ mr r3, r30 +/* 801F1C0C 001EEB6C 81 9E 00 00 */ lwz r12, 0(r30) +/* 801F1C10 001EEB70 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 801F1C14 001EEB74 7D 89 03 A6 */ mtctr r12 +/* 801F1C18 001EEB78 4E 80 04 21 */ bctrl +/* 801F1C1C 001EEB7C 3C 80 80 5A */ lis r4, lbl_8059FD18@ha +/* 801F1C20 001EEB80 90 61 01 58 */ stw r3, 0x158(r1) +/* 801F1C24 001EEB84 38 04 FD 18 */ addi r0, r4, lbl_8059FD18@l +/* 801F1C28 001EEB88 38 61 01 60 */ addi r3, r1, 0x160 +/* 801F1C2C 001EEB8C 90 01 01 5C */ stw r0, 0x15c(r1) +/* 801F1C30 001EEB90 38 81 01 28 */ addi r4, r1, 0x128 +/* 801F1C34 001EEB94 48 12 0F 41 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801F1C38 001EEB98 38 61 01 58 */ addi r3, r1, 0x158 +/* 801F1C3C 001EEB9C 38 81 00 F0 */ addi r4, r1, 0xf0 +/* 801F1C40 001EEBA0 48 0D CB ED */ bl CollideBoolean__19CCollisionPrimitiveFRCQ227CInternalCollisionStructure9CPrimDescRCQ227CInternalCollisionStructure9CPrimDesc +/* 801F1C44 001EEBA4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801F1C48 001EEBA8 40 82 00 24 */ bne lbl_801F1C6C +/* 801F1C4C 001EEBAC 7F C3 F3 78 */ mr r3, r30 +/* 801F1C50 001EEBB0 38 80 00 01 */ li r4, 1 +/* 801F1C54 001EEBB4 81 9E 00 00 */ lwz r12, 0(r30) +/* 801F1C58 001EEBB8 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801F1C5C 001EEBBC 7D 89 03 A6 */ mtctr r12 +/* 801F1C60 001EEBC0 4E 80 04 21 */ bctrl +/* 801F1C64 001EEBC4 38 00 00 01 */ li r0, 1 +/* 801F1C68 001EEBC8 98 1F 03 20 */ stb r0, 0x320(r31) +lbl_801F1C6C: +/* 801F1C6C 001EEBCC 80 1F 00 04 */ lwz r0, 4(r31) +/* 801F1C70 001EEBD0 28 00 00 00 */ cmplwi r0, 0 +/* 801F1C74 001EEBD4 41 82 02 00 */ beq lbl_801F1E74 +/* 801F1C78 001EEBD8 80 1F 03 1C */ lwz r0, 0x31c(r31) +/* 801F1C7C 001EEBDC 28 00 00 03 */ cmplwi r0, 3 +/* 801F1C80 001EEBE0 40 80 01 F4 */ bge lbl_801F1E74 +/* 801F1C84 001EEBE4 C0 1F 03 04 */ lfs f0, 0x304(r31) +/* 801F1C88 001EEBE8 C0 22 AE E0 */ lfs f1, lbl_805ACC00@sda21(r2) +/* 801F1C8C 001EEBEC D0 01 00 54 */ stfs f0, 0x54(r1) +/* 801F1C90 001EEBF0 C0 42 AE E4 */ lfs f2, lbl_805ACC04@sda21(r2) +/* 801F1C94 001EEBF4 C0 1F 03 08 */ lfs f0, 0x308(r31) +/* 801F1C98 001EEBF8 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 801F1C9C 001EEBFC C0 1F 03 0C */ lfs f0, 0x30c(r31) +/* 801F1CA0 001EEC00 D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 801F1CA4 001EEC04 80 7C 09 00 */ lwz r3, 0x900(r28) +/* 801F1CA8 001EEC08 48 12 08 9D */ bl Range__9CRandom16Fff +/* 801F1CAC 001EEC0C C0 01 00 54 */ lfs f0, 0x54(r1) +/* 801F1CB0 001EEC10 C0 42 AE E4 */ lfs f2, lbl_805ACC04@sda21(r2) +/* 801F1CB4 001EEC14 EC 00 08 2A */ fadds f0, f0, f1 +/* 801F1CB8 001EEC18 C0 22 AE E0 */ lfs f1, lbl_805ACC00@sda21(r2) +/* 801F1CBC 001EEC1C D0 01 00 54 */ stfs f0, 0x54(r1) +/* 801F1CC0 001EEC20 80 7C 09 00 */ lwz r3, 0x900(r28) +/* 801F1CC4 001EEC24 48 12 08 81 */ bl Range__9CRandom16Fff +/* 801F1CC8 001EEC28 C0 01 00 58 */ lfs f0, 0x58(r1) +/* 801F1CCC 001EEC2C C0 42 AE E4 */ lfs f2, lbl_805ACC04@sda21(r2) +/* 801F1CD0 001EEC30 EC 00 08 2A */ fadds f0, f0, f1 +/* 801F1CD4 001EEC34 C0 22 AE E0 */ lfs f1, lbl_805ACC00@sda21(r2) +/* 801F1CD8 001EEC38 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 801F1CDC 001EEC3C 80 7C 09 00 */ lwz r3, 0x900(r28) +/* 801F1CE0 001EEC40 48 12 08 65 */ bl Range__9CRandom16Fff +/* 801F1CE4 001EEC44 C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 801F1CE8 001EEC48 C0 62 AE E8 */ lfs f3, lbl_805ACC08@sda21(r2) +/* 801F1CEC 001EEC4C EC 80 08 2A */ fadds f4, f0, f1 +/* 801F1CF0 001EEC50 C0 02 AE EC */ lfs f0, lbl_805ACC0C@sda21(r2) +/* 801F1CF4 001EEC54 D0 61 00 30 */ stfs f3, 0x30(r1) +/* 801F1CF8 001EEC58 FC 20 18 90 */ fmr f1, f3 +/* 801F1CFC 001EEC5C C0 42 AE F0 */ lfs f2, lbl_805ACC10@sda21(r2) +/* 801F1D00 001EEC60 D0 81 00 5C */ stfs f4, 0x5c(r1) +/* 801F1D04 001EEC64 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801F1D08 001EEC68 D0 61 00 38 */ stfs f3, 0x38(r1) +/* 801F1D0C 001EEC6C 80 7C 09 00 */ lwz r3, 0x900(r28) +/* 801F1D10 001EEC70 48 12 08 35 */ bl Range__9CRandom16Fff +/* 801F1D14 001EEC74 C0 02 AE F4 */ lfs f0, lbl_805ACC14@sda21(r2) +/* 801F1D18 001EEC78 38 61 00 90 */ addi r3, r1, 0x90 +/* 801F1D1C 001EEC7C 38 81 00 0C */ addi r4, r1, 0xc +/* 801F1D20 001EEC80 EC 00 00 72 */ fmuls f0, f0, f1 +/* 801F1D24 001EEC84 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801F1D28 001EEC88 48 12 1A E9 */ bl RotateZ__12CTransform4fFRC9CRelAngle +/* 801F1D2C 001EEC8C 38 61 00 3C */ addi r3, r1, 0x3c +/* 801F1D30 001EEC90 38 81 00 90 */ addi r4, r1, 0x90 +/* 801F1D34 001EEC94 38 A1 00 30 */ addi r5, r1, 0x30 +/* 801F1D38 001EEC98 48 12 0D B1 */ bl __ml__12CTransform4fCFRC9CVector3f +/* 801F1D3C 001EEC9C C0 41 00 3C */ lfs f2, 0x3c(r1) +/* 801F1D40 001EECA0 38 61 00 24 */ addi r3, r1, 0x24 +/* 801F1D44 001EECA4 C0 21 00 40 */ lfs f1, 0x40(r1) +/* 801F1D48 001EECA8 38 81 00 54 */ addi r4, r1, 0x54 +/* 801F1D4C 001EECAC C0 01 00 44 */ lfs f0, 0x44(r1) +/* 801F1D50 001EECB0 D0 41 00 48 */ stfs f2, 0x48(r1) +/* 801F1D54 001EECB4 D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 801F1D58 001EECB8 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 801F1D5C 001EECBC 48 12 2A F5 */ bl AsNormalized__9CVector3fCFv +/* 801F1D60 001EECC0 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801F1D64 001EECC4 38 61 00 60 */ addi r3, r1, 0x60 +/* 801F1D68 001EECC8 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 801F1D6C 001EECCC 38 A1 00 24 */ addi r5, r1, 0x24 +/* 801F1D70 001EECD0 38 C1 00 48 */ addi r6, r1, 0x48 +/* 801F1D74 001EECD4 48 12 1D 9D */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 801F1D78 001EECD8 38 61 01 90 */ addi r3, r1, 0x190 +/* 801F1D7C 001EECDC 38 81 00 60 */ addi r4, r1, 0x60 +/* 801F1D80 001EECE0 48 12 0D F5 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801F1D84 001EECE4 38 7F 03 10 */ addi r3, r31, 0x310 +/* 801F1D88 001EECE8 48 12 2B 31 */ bl Magnitude__9CVector3fCFv +/* 801F1D8C 001EECEC FF 80 08 90 */ fmr f28, f1 +/* 801F1D90 001EECF0 80 7C 09 00 */ lwz r3, 0x900(r28) +/* 801F1D94 001EECF4 FF A0 E0 50 */ fneg f29, f28 +/* 801F1D98 001EECF8 FC 40 E0 90 */ fmr f2, f28 +/* 801F1D9C 001EECFC FC 20 E8 90 */ fmr f1, f29 +/* 801F1DA0 001EED00 48 12 07 A5 */ bl Range__9CRandom16Fff +/* 801F1DA4 001EED04 FF C0 08 90 */ fmr f30, f1 +/* 801F1DA8 001EED08 80 7C 09 00 */ lwz r3, 0x900(r28) +/* 801F1DAC 001EED0C FC 20 E8 90 */ fmr f1, f29 +/* 801F1DB0 001EED10 FC 40 E0 90 */ fmr f2, f28 +/* 801F1DB4 001EED14 48 12 07 91 */ bl Range__9CRandom16Fff +/* 801F1DB8 001EED18 C0 5F 02 FC */ lfs f2, 0x2fc(r31) +/* 801F1DBC 001EED1C 38 81 00 18 */ addi r4, r1, 0x18 +/* 801F1DC0 001EED20 C0 1F 02 F8 */ lfs f0, 0x2f8(r31) +/* 801F1DC4 001EED24 C0 7F 03 00 */ lfs f3, 0x300(r31) +/* 801F1DC8 001EED28 EC 82 F0 2A */ fadds f4, f2, f30 +/* 801F1DCC 001EED2C C0 42 AE F8 */ lfs f2, lbl_805ACC18@sda21(r2) +/* 801F1DD0 001EED30 EC 00 08 2A */ fadds f0, f0, f1 +/* 801F1DD4 001EED34 EC 23 10 2A */ fadds f1, f3, f2 +/* 801F1DD8 001EED38 D0 81 00 1C */ stfs f4, 0x1c(r1) +/* 801F1DDC 001EED3C D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801F1DE0 001EED40 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 801F1DE4 001EED44 80 7F 00 04 */ lwz r3, 4(r31) +/* 801F1DE8 001EED48 81 83 00 00 */ lwz r12, 0(r3) +/* 801F1DEC 001EED4C 81 8C 00 18 */ lwz r12, 0x18(r12) +/* 801F1DF0 001EED50 7D 89 03 A6 */ mtctr r12 +/* 801F1DF4 001EED54 4E 80 04 21 */ bctrl +/* 801F1DF8 001EED58 80 7F 00 04 */ lwz r3, 4(r31) +/* 801F1DFC 001EED5C 38 81 01 90 */ addi r4, r1, 0x190 +/* 801F1E00 001EED60 81 83 00 00 */ lwz r12, 0(r3) +/* 801F1E04 001EED64 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 801F1E08 001EED68 7D 89 03 A6 */ mtctr r12 +/* 801F1E0C 001EED6C 4E 80 04 21 */ bctrl +/* 801F1E10 001EED70 80 7F 00 04 */ lwz r3, 4(r31) +/* 801F1E14 001EED74 38 80 00 01 */ li r4, 1 +/* 801F1E18 001EED78 48 12 AA A9 */ bl ForceParticleCreation__11CElementGenFi +/* 801F1E1C 001EED7C 80 7F 00 04 */ lwz r3, 4(r31) +/* 801F1E20 001EED80 3C 80 80 5A */ lis r4, skIdentity4f@ha +/* 801F1E24 001EED84 38 84 66 70 */ addi r4, r4, skIdentity4f@l +/* 801F1E28 001EED88 81 83 00 00 */ lwz r12, 0(r3) +/* 801F1E2C 001EED8C 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 801F1E30 001EED90 7D 89 03 A6 */ mtctr r12 +/* 801F1E34 001EED94 4E 80 04 21 */ bctrl +/* 801F1E38 001EED98 80 7F 03 1C */ lwz r3, 0x31c(r31) +/* 801F1E3C 001EED9C 38 03 00 01 */ addi r0, r3, 1 +/* 801F1E40 001EEDA0 90 1F 03 1C */ stw r0, 0x31c(r31) +/* 801F1E44 001EEDA4 C0 3F 02 F8 */ lfs f1, 0x2f8(r31) +/* 801F1E48 001EEDA8 C0 1F 03 10 */ lfs f0, 0x310(r31) +/* 801F1E4C 001EEDAC EC 01 00 2A */ fadds f0, f1, f0 +/* 801F1E50 001EEDB0 D0 1F 02 F8 */ stfs f0, 0x2f8(r31) +/* 801F1E54 001EEDB4 C0 3F 02 FC */ lfs f1, 0x2fc(r31) +/* 801F1E58 001EEDB8 C0 1F 03 14 */ lfs f0, 0x314(r31) +/* 801F1E5C 001EEDBC EC 01 00 2A */ fadds f0, f1, f0 +/* 801F1E60 001EEDC0 D0 1F 02 FC */ stfs f0, 0x2fc(r31) +/* 801F1E64 001EEDC4 C0 3F 03 00 */ lfs f1, 0x300(r31) +/* 801F1E68 001EEDC8 C0 1F 03 18 */ lfs f0, 0x318(r31) +/* 801F1E6C 001EEDCC EC 01 00 2A */ fadds f0, f1, f0 +/* 801F1E70 001EEDD0 D0 1F 03 00 */ stfs f0, 0x300(r31) +lbl_801F1E74: +/* 801F1E74 001EEDD4 80 7F 00 04 */ lwz r3, 4(r31) +/* 801F1E78 001EEDD8 28 03 00 00 */ cmplwi r3, 0 +/* 801F1E7C 001EEDDC 41 82 00 34 */ beq lbl_801F1EB0 +/* 801F1E80 001EEDE0 C0 3F 00 14 */ lfs f1, 0x14(r31) +/* 801F1E84 001EEDE4 C0 02 AE FC */ lfs f0, lbl_805ACC1C@sda21(r2) +/* 801F1E88 001EEDE8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F1E8C 001EEDEC 41 80 00 10 */ blt lbl_801F1E9C +/* 801F1E90 001EEDF0 80 1F 00 0C */ lwz r0, 0xc(r31) +/* 801F1E94 001EEDF4 28 00 00 00 */ cmplwi r0, 0 +/* 801F1E98 001EEDF8 41 82 00 18 */ beq lbl_801F1EB0 +lbl_801F1E9C: +/* 801F1E9C 001EEDFC 81 83 00 00 */ lwz r12, 0(r3) +/* 801F1EA0 001EEE00 FC 20 F8 90 */ fmr f1, f31 +/* 801F1EA4 001EEE04 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801F1EA8 001EEE08 7D 89 03 A6 */ mtctr r12 +/* 801F1EAC 001EEE0C 4E 80 04 21 */ bctrl +lbl_801F1EB0: +/* 801F1EB0 001EEE10 C0 1F 00 14 */ lfs f0, 0x14(r31) +/* 801F1EB4 001EEE14 EC 00 F8 2A */ fadds f0, f0, f31 +/* 801F1EB8 001EEE18 D0 1F 00 14 */ stfs f0, 0x14(r31) +/* 801F1EBC 001EEE1C 80 7F 00 0C */ lwz r3, 0xc(r31) +/* 801F1EC0 001EEE20 28 03 00 00 */ cmplwi r3, 0 +/* 801F1EC4 001EEE24 41 82 00 EC */ beq lbl_801F1FB0 +/* 801F1EC8 001EEE28 81 83 00 00 */ lwz r12, 0(r3) +/* 801F1ECC 001EEE2C FC 20 F8 90 */ fmr f1, f31 +/* 801F1ED0 001EEE30 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801F1ED4 001EEE34 7D 89 03 A6 */ mtctr r12 +/* 801F1ED8 001EEE38 4E 80 04 21 */ bctrl +/* 801F1EDC 001EEE3C 80 7F 00 04 */ lwz r3, 4(r31) +/* 801F1EE0 001EEE40 28 03 00 00 */ cmplwi r3, 0 +/* 801F1EE4 001EEE44 41 82 00 CC */ beq lbl_801F1FB0 +/* 801F1EE8 001EEE48 81 83 00 00 */ lwz r12, 0(r3) +/* 801F1EEC 001EEE4C 81 8C 00 58 */ lwz r12, 0x58(r12) +/* 801F1EF0 001EEE50 7D 89 03 A6 */ mtctr r12 +/* 801F1EF4 001EEE54 4E 80 04 21 */ bctrl +/* 801F1EF8 001EEE58 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801F1EFC 001EEE5C 41 82 00 B4 */ beq lbl_801F1FB0 +/* 801F1F00 001EEE60 38 00 00 00 */ li r0, 0 +/* 801F1F04 001EEE64 98 1F 00 00 */ stb r0, 0(r31) +/* 801F1F08 001EEE68 80 7F 00 04 */ lwz r3, 4(r31) +/* 801F1F0C 001EEE6C 28 03 00 00 */ cmplwi r3, 0 +/* 801F1F10 001EEE70 41 82 00 18 */ beq lbl_801F1F28 +/* 801F1F14 001EEE74 81 83 00 00 */ lwz r12, 0(r3) +/* 801F1F18 001EEE78 38 80 00 01 */ li r4, 1 +/* 801F1F1C 001EEE7C 81 8C 00 08 */ lwz r12, 8(r12) +/* 801F1F20 001EEE80 7D 89 03 A6 */ mtctr r12 +/* 801F1F24 001EEE84 4E 80 04 21 */ bctrl +lbl_801F1F28: +/* 801F1F28 001EEE88 38 01 00 10 */ addi r0, r1, 0x10 +/* 801F1F2C 001EEE8C 38 60 00 00 */ li r3, 0 +/* 801F1F30 001EEE90 7C 00 F8 40 */ cmplw r0, r31 +/* 801F1F34 001EEE94 98 61 00 10 */ stb r3, 0x10(r1) +/* 801F1F38 001EEE98 90 61 00 14 */ stw r3, 0x14(r1) +/* 801F1F3C 001EEE9C 41 82 00 48 */ beq lbl_801F1F84 +/* 801F1F40 001EEEA0 88 1F 00 00 */ lbz r0, 0(r31) +/* 801F1F44 001EEEA4 28 00 00 00 */ cmplwi r0, 0 +/* 801F1F48 001EEEA8 41 82 00 24 */ beq lbl_801F1F6C +/* 801F1F4C 001EEEAC 80 7F 00 04 */ lwz r3, 4(r31) +/* 801F1F50 001EEEB0 28 03 00 00 */ cmplwi r3, 0 +/* 801F1F54 001EEEB4 41 82 00 18 */ beq lbl_801F1F6C +/* 801F1F58 001EEEB8 81 83 00 00 */ lwz r12, 0(r3) +/* 801F1F5C 001EEEBC 38 80 00 01 */ li r4, 1 +/* 801F1F60 001EEEC0 81 8C 00 08 */ lwz r12, 8(r12) +/* 801F1F64 001EEEC4 7D 89 03 A6 */ mtctr r12 +/* 801F1F68 001EEEC8 4E 80 04 21 */ bctrl +lbl_801F1F6C: +/* 801F1F6C 001EEECC 88 61 00 10 */ lbz r3, 0x10(r1) +/* 801F1F70 001EEED0 38 00 00 00 */ li r0, 0 +/* 801F1F74 001EEED4 98 7F 00 00 */ stb r3, 0(r31) +/* 801F1F78 001EEED8 80 61 00 14 */ lwz r3, 0x14(r1) +/* 801F1F7C 001EEEDC 90 7F 00 04 */ stw r3, 4(r31) +/* 801F1F80 001EEEE0 98 01 00 10 */ stb r0, 0x10(r1) +lbl_801F1F84: +/* 801F1F84 001EEEE4 88 01 00 10 */ lbz r0, 0x10(r1) +/* 801F1F88 001EEEE8 28 00 00 00 */ cmplwi r0, 0 +/* 801F1F8C 001EEEEC 41 82 00 24 */ beq lbl_801F1FB0 +/* 801F1F90 001EEEF0 80 61 00 14 */ lwz r3, 0x14(r1) +/* 801F1F94 001EEEF4 28 03 00 00 */ cmplwi r3, 0 +/* 801F1F98 001EEEF8 41 82 00 18 */ beq lbl_801F1FB0 +/* 801F1F9C 001EEEFC 81 83 00 00 */ lwz r12, 0(r3) +/* 801F1FA0 001EEF00 38 80 00 01 */ li r4, 1 +/* 801F1FA4 001EEF04 81 8C 00 08 */ lwz r12, 8(r12) +/* 801F1FA8 001EEF08 7D 89 03 A6 */ mtctr r12 +/* 801F1FAC 001EEF0C 4E 80 04 21 */ bctrl +lbl_801F1FB0: +/* 801F1FB0 001EEF10 E3 E1 02 08 */ psq_l f31, 520(r1), 0, qr0 +/* 801F1FB4 001EEF14 CB E1 02 00 */ lfd f31, 0x200(r1) +/* 801F1FB8 001EEF18 E3 C1 01 F8 */ psq_l f30, 504(r1), 0, qr0 +/* 801F1FBC 001EEF1C CB C1 01 F0 */ lfd f30, 0x1f0(r1) +/* 801F1FC0 001EEF20 E3 A1 01 E8 */ psq_l f29, 488(r1), 0, qr0 +/* 801F1FC4 001EEF24 CB A1 01 E0 */ lfd f29, 0x1e0(r1) +/* 801F1FC8 001EEF28 E3 81 01 D8 */ psq_l f28, 472(r1), 0, qr0 +/* 801F1FCC 001EEF2C CB 81 01 D0 */ lfd f28, 0x1d0(r1) +/* 801F1FD0 001EEF30 83 E1 01 CC */ lwz r31, 0x1cc(r1) +/* 801F1FD4 001EEF34 83 C1 01 C8 */ lwz r30, 0x1c8(r1) +/* 801F1FD8 001EEF38 83 A1 01 C4 */ lwz r29, 0x1c4(r1) +/* 801F1FDC 001EEF3C 80 01 02 14 */ lwz r0, 0x214(r1) +/* 801F1FE0 001EEF40 83 81 01 C0 */ lwz r28, 0x1c0(r1) +/* 801F1FE4 001EEF44 7C 08 03 A6 */ mtlr r0 +/* 801F1FE8 001EEF48 38 21 02 10 */ addi r1, r1, 0x210 +/* 801F1FEC 001EEF4C 4E 80 00 20 */ blr + +.global DeleteCollisionObject__Q220CIceAttackProjectile12CTrailObjectFR13CStateManager +DeleteCollisionObject__Q220CIceAttackProjectile12CTrailObjectFR13CStateManager: +/* 801F1FF0 001EEF50 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801F1FF4 001EEF54 7C 08 02 A6 */ mflr r0 +/* 801F1FF8 001EEF58 90 01 00 24 */ stw r0, 0x24(r1) +/* 801F1FFC 001EEF5C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801F2000 001EEF60 7C 7F 1B 78 */ mr r31, r3 +/* 801F2004 001EEF64 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801F2008 001EEF68 A0 63 00 10 */ lhz r3, 0x10(r3) +/* 801F200C 001EEF6C 7C 03 00 40 */ cmplw r3, r0 +/* 801F2010 001EEF70 41 82 00 20 */ beq lbl_801F2030 +/* 801F2014 001EEF74 A0 1F 00 10 */ lhz r0, 0x10(r31) +/* 801F2018 001EEF78 7C 83 23 78 */ mr r3, r4 +/* 801F201C 001EEF7C 38 81 00 08 */ addi r4, r1, 8 +/* 801F2020 001EEF80 B0 01 00 08 */ sth r0, 8(r1) +/* 801F2024 001EEF84 4B E5 A2 49 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +/* 801F2028 001EEF88 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801F202C 001EEF8C B0 1F 00 10 */ sth r0, 0x10(r31) +lbl_801F2030: +/* 801F2030 001EEF90 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801F2034 001EEF94 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801F2038 001EEF98 7C 08 03 A6 */ mtlr r0 +/* 801F203C 001EEF9C 38 21 00 20 */ addi r1, r1, 0x20 +/* 801F2040 001EEFA0 4E 80 00 20 */ blr + +.global StartExplosion__Q220CIceAttackProjectile12CTrailObjectFP11CElementGenR13CStateManager +StartExplosion__Q220CIceAttackProjectile12CTrailObjectFP11CElementGenR13CStateManager: +/* 801F2044 001EEFA4 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801F2048 001EEFA8 7C 08 02 A6 */ mflr r0 +/* 801F204C 001EEFAC 90 01 00 34 */ stw r0, 0x34(r1) +/* 801F2050 001EEFB0 7C 04 00 D0 */ neg r0, r4 +/* 801F2054 001EEFB4 7C 06 23 78 */ or r6, r0, r4 +/* 801F2058 001EEFB8 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801F205C 001EEFBC 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801F2060 001EEFC0 7C BE 2B 78 */ mr r30, r5 +/* 801F2064 001EEFC4 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801F2068 001EEFC8 7C 7D 1B 78 */ mr r29, r3 +/* 801F206C 001EEFCC 38 61 00 08 */ addi r3, r1, 8 +/* 801F2070 001EEFD0 38 1D 00 08 */ addi r0, r29, 8 +/* 801F2074 001EEFD4 90 81 00 0C */ stw r4, 0xc(r1) +/* 801F2078 001EEFD8 54 C4 0F FE */ srwi r4, r6, 0x1f +/* 801F207C 001EEFDC 7C 03 00 40 */ cmplw r3, r0 +/* 801F2080 001EEFE0 98 81 00 08 */ stb r4, 8(r1) +/* 801F2084 001EEFE4 41 82 00 48 */ beq lbl_801F20CC +/* 801F2088 001EEFE8 88 1D 00 08 */ lbz r0, 8(r29) +/* 801F208C 001EEFEC 28 00 00 00 */ cmplwi r0, 0 +/* 801F2090 001EEFF0 41 82 00 24 */ beq lbl_801F20B4 +/* 801F2094 001EEFF4 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 801F2098 001EEFF8 28 03 00 00 */ cmplwi r3, 0 +/* 801F209C 001EEFFC 41 82 00 18 */ beq lbl_801F20B4 +/* 801F20A0 001EF000 81 83 00 00 */ lwz r12, 0(r3) +/* 801F20A4 001EF004 38 80 00 01 */ li r4, 1 +/* 801F20A8 001EF008 81 8C 00 08 */ lwz r12, 8(r12) +/* 801F20AC 001EF00C 7D 89 03 A6 */ mtctr r12 +/* 801F20B0 001EF010 4E 80 04 21 */ bctrl +lbl_801F20B4: +/* 801F20B4 001EF014 88 61 00 08 */ lbz r3, 8(r1) +/* 801F20B8 001EF018 38 00 00 00 */ li r0, 0 +/* 801F20BC 001EF01C 98 7D 00 08 */ stb r3, 8(r29) +/* 801F20C0 001EF020 80 61 00 0C */ lwz r3, 0xc(r1) +/* 801F20C4 001EF024 90 7D 00 0C */ stw r3, 0xc(r29) +/* 801F20C8 001EF028 98 01 00 08 */ stb r0, 8(r1) +lbl_801F20CC: +/* 801F20CC 001EF02C 88 01 00 08 */ lbz r0, 8(r1) +/* 801F20D0 001EF030 28 00 00 00 */ cmplwi r0, 0 +/* 801F20D4 001EF034 41 82 00 24 */ beq lbl_801F20F8 +/* 801F20D8 001EF038 80 61 00 0C */ lwz r3, 0xc(r1) +/* 801F20DC 001EF03C 28 03 00 00 */ cmplwi r3, 0 +/* 801F20E0 001EF040 41 82 00 18 */ beq lbl_801F20F8 +/* 801F20E4 001EF044 81 83 00 00 */ lwz r12, 0(r3) +/* 801F20E8 001EF048 38 80 00 01 */ li r4, 1 +/* 801F20EC 001EF04C 81 8C 00 08 */ lwz r12, 8(r12) +/* 801F20F0 001EF050 7D 89 03 A6 */ mtctr r12 +/* 801F20F4 001EF054 4E 80 04 21 */ bctrl +lbl_801F20F8: +/* 801F20F8 001EF058 80 7D 00 04 */ lwz r3, 4(r29) +/* 801F20FC 001EF05C 83 FD 00 0C */ lwz r31, 0xc(r29) +/* 801F2100 001EF060 81 83 00 00 */ lwz r12, 0(r3) +/* 801F2104 001EF064 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 801F2108 001EF068 7D 89 03 A6 */ mtctr r12 +/* 801F210C 001EF06C 4E 80 04 21 */ bctrl +/* 801F2110 001EF070 81 9F 00 00 */ lwz r12, 0(r31) +/* 801F2114 001EF074 7C 64 1B 78 */ mr r4, r3 +/* 801F2118 001EF078 7F E3 FB 78 */ mr r3, r31 +/* 801F211C 001EF07C 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 801F2120 001EF080 7D 89 03 A6 */ mtctr r12 +/* 801F2124 001EF084 4E 80 04 21 */ bctrl +/* 801F2128 001EF088 80 7D 00 04 */ lwz r3, 4(r29) +/* 801F212C 001EF08C 81 83 00 00 */ lwz r12, 0(r3) +/* 801F2130 001EF090 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 801F2134 001EF094 7D 89 03 A6 */ mtctr r12 +/* 801F2138 001EF098 4E 80 04 21 */ bctrl +/* 801F213C 001EF09C C0 23 00 04 */ lfs f1, 4(r3) +/* 801F2140 001EF0A0 38 81 00 10 */ addi r4, r1, 0x10 +/* 801F2144 001EF0A4 C0 62 AE E8 */ lfs f3, lbl_805ACC08@sda21(r2) +/* 801F2148 001EF0A8 C0 03 00 00 */ lfs f0, 0(r3) +/* 801F214C 001EF0AC C0 43 00 08 */ lfs f2, 8(r3) +/* 801F2150 001EF0B0 EC 81 18 2A */ fadds f4, f1, f3 +/* 801F2154 001EF0B4 C0 22 AF 00 */ lfs f1, lbl_805ACC20@sda21(r2) +/* 801F2158 001EF0B8 EC 00 18 2A */ fadds f0, f0, f3 +/* 801F215C 001EF0BC EC 22 08 2A */ fadds f1, f2, f1 +/* 801F2160 001EF0C0 D0 81 00 14 */ stfs f4, 0x14(r1) +/* 801F2164 001EF0C4 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801F2168 001EF0C8 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801F216C 001EF0CC 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 801F2170 001EF0D0 81 83 00 00 */ lwz r12, 0(r3) +/* 801F2174 001EF0D4 81 8C 00 18 */ lwz r12, 0x18(r12) +/* 801F2178 001EF0D8 7D 89 03 A6 */ mtctr r12 +/* 801F217C 001EF0DC 4E 80 04 21 */ bctrl +/* 801F2180 001EF0E0 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 801F2184 001EF0E4 38 80 00 01 */ li r4, 1 +/* 801F2188 001EF0E8 81 83 00 00 */ lwz r12, 0(r3) +/* 801F218C 001EF0EC 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801F2190 001EF0F0 7D 89 03 A6 */ mtctr r12 +/* 801F2194 001EF0F4 4E 80 04 21 */ bctrl +/* 801F2198 001EF0F8 7F A3 EB 78 */ mr r3, r29 +/* 801F219C 001EF0FC 7F C4 F3 78 */ mr r4, r30 +/* 801F21A0 001EF100 4B FF FE 51 */ bl DeleteCollisionObject__Q220CIceAttackProjectile12CTrailObjectFR13CStateManager +/* 801F21A4 001EF104 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801F21A8 001EF108 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801F21AC 001EF10C 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801F21B0 001EF110 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801F21B4 001EF114 7C 08 03 A6 */ mtlr r0 +/* 801F21B8 001EF118 38 21 00 30 */ addi r1, r1, 0x30 +/* 801F21BC 001EF11C 4E 80 00 20 */ blr + +.global GetTranslation__11CElementGenCFv +GetTranslation__11CElementGenCFv: +/* 801F21C0 001EF120 38 63 00 DC */ addi r3, r3, 0xdc +/* 801F21C4 001EF124 4E 80 00 20 */ blr + +.global GetOrientation__11CElementGenCFv +GetOrientation__11CElementGenCFv: +/* 801F21C8 001EF128 38 63 01 D8 */ addi r3, r3, 0x1d8 +/* 801F21CC 001EF12C 4E 80 00 20 */ blr + +.global __ct__Q220CIceAttackProjectile12CTrailObjectFP11CElementGen9TUniqueIdRC9CVector3fRC9CVector3fRC9CVector3f +__ct__Q220CIceAttackProjectile12CTrailObjectFP11CElementGen9TUniqueIdRC9CVector3fRC9CVector3fRC9CVector3f: +/* 801F21D0 001EF130 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801F21D4 001EF134 7C 08 02 A6 */ mflr r0 +/* 801F21D8 001EF138 C0 42 AE E8 */ lfs f2, lbl_805ACC08@sda21(r2) +/* 801F21DC 001EF13C 39 20 00 00 */ li r9, 0 +/* 801F21E0 001EF140 90 01 00 34 */ stw r0, 0x34(r1) +/* 801F21E4 001EF144 7C 04 00 D0 */ neg r0, r4 +/* 801F21E8 001EF148 7C 00 23 78 */ or r0, r0, r4 +/* 801F21EC 001EF14C C0 02 AE EC */ lfs f0, lbl_805ACC0C@sda21(r2) +/* 801F21F0 001EF150 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801F21F4 001EF154 7D 1F 43 78 */ mr r31, r8 +/* 801F21F8 001EF158 54 00 0F FE */ srwi r0, r0, 0x1f +/* 801F21FC 001EF15C C0 22 94 04 */ lfs f1, lbl_805AB124@sda21(r2) +/* 801F2200 001EF160 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801F2204 001EF164 7C FE 3B 78 */ mr r30, r7 +/* 801F2208 001EF168 38 E0 00 04 */ li r7, 4 +/* 801F220C 001EF16C 39 00 00 00 */ li r8, 0 +/* 801F2210 001EF170 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801F2214 001EF174 7C DD 33 78 */ mr r29, r6 +/* 801F2218 001EF178 38 C0 00 04 */ li r6, 4 +/* 801F221C 001EF17C 39 40 00 00 */ li r10, 0 +/* 801F2220 001EF180 93 81 00 20 */ stw r28, 0x20(r1) +/* 801F2224 001EF184 7C 7C 1B 78 */ mr r28, r3 +/* 801F2228 001EF188 98 03 00 00 */ stb r0, 0(r3) +/* 801F222C 001EF18C 38 00 00 00 */ li r0, 0 +/* 801F2230 001EF190 90 83 00 04 */ stw r4, 4(r3) +/* 801F2234 001EF194 38 7C 00 18 */ addi r3, r28, 0x18 +/* 801F2238 001EF198 38 80 00 01 */ li r4, 1 +/* 801F223C 001EF19C 98 1C 00 08 */ stb r0, 8(r28) +/* 801F2240 001EF1A0 90 1C 00 0C */ stw r0, 0xc(r28) +/* 801F2244 001EF1A4 A0 05 00 00 */ lhz r0, 0(r5) +/* 801F2248 001EF1A8 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801F224C 001EF1AC D0 41 00 08 */ stfs f2, 8(r1) +/* 801F2250 001EF1B0 B0 1C 00 10 */ sth r0, 0x10(r28) +/* 801F2254 001EF1B4 81 81 00 08 */ lwz r12, 8(r1) +/* 801F2258 001EF1B8 D0 41 00 0C */ stfs f2, 0xc(r1) +/* 801F225C 001EF1BC D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801F2260 001EF1C0 81 61 00 0C */ lwz r11, 0xc(r1) +/* 801F2264 001EF1C4 D0 5C 00 14 */ stfs f2, 0x14(r28) +/* 801F2268 001EF1C8 80 01 00 10 */ lwz r0, 0x10(r1) +/* 801F226C 001EF1CC 91 81 00 14 */ stw r12, 0x14(r1) +/* 801F2270 001EF1D0 91 61 00 18 */ stw r11, 0x18(r1) +/* 801F2274 001EF1D4 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801F2278 001EF1D8 4B F1 2F 55 */ bl __ct__12CActorLightsFUi9CVector3fiif +/* 801F227C 001EF1DC C0 1D 00 00 */ lfs f0, 0(r29) +/* 801F2280 001EF1E0 38 00 00 00 */ li r0, 0 +/* 801F2284 001EF1E4 7F 83 E3 78 */ mr r3, r28 +/* 801F2288 001EF1E8 D0 1C 02 F8 */ stfs f0, 0x2f8(r28) +/* 801F228C 001EF1EC C0 1D 00 04 */ lfs f0, 4(r29) +/* 801F2290 001EF1F0 D0 1C 02 FC */ stfs f0, 0x2fc(r28) +/* 801F2294 001EF1F4 C0 1D 00 08 */ lfs f0, 8(r29) +/* 801F2298 001EF1F8 D0 1C 03 00 */ stfs f0, 0x300(r28) +/* 801F229C 001EF1FC C0 1E 00 00 */ lfs f0, 0(r30) +/* 801F22A0 001EF200 D0 1C 03 04 */ stfs f0, 0x304(r28) +/* 801F22A4 001EF204 C0 1E 00 04 */ lfs f0, 4(r30) +/* 801F22A8 001EF208 D0 1C 03 08 */ stfs f0, 0x308(r28) +/* 801F22AC 001EF20C C0 1E 00 08 */ lfs f0, 8(r30) +/* 801F22B0 001EF210 D0 1C 03 0C */ stfs f0, 0x30c(r28) +/* 801F22B4 001EF214 C0 1F 00 00 */ lfs f0, 0(r31) +/* 801F22B8 001EF218 D0 1C 03 10 */ stfs f0, 0x310(r28) +/* 801F22BC 001EF21C C0 1F 00 04 */ lfs f0, 4(r31) +/* 801F22C0 001EF220 D0 1C 03 14 */ stfs f0, 0x314(r28) +/* 801F22C4 001EF224 C0 1F 00 08 */ lfs f0, 8(r31) +/* 801F22C8 001EF228 D0 1C 03 18 */ stfs f0, 0x318(r28) +/* 801F22CC 001EF22C 90 1C 03 1C */ stw r0, 0x31c(r28) +/* 801F22D0 001EF230 98 1C 03 20 */ stb r0, 0x320(r28) +/* 801F22D4 001EF234 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801F22D8 001EF238 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801F22DC 001EF23C 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801F22E0 001EF240 83 81 00 20 */ lwz r28, 0x20(r1) +/* 801F22E4 001EF244 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801F22E8 001EF248 7C 08 03 A6 */ mtlr r0 +/* 801F22EC 001EF24C 38 21 00 30 */ addi r1, r1, 0x30 +/* 801F22F0 001EF250 4E 80 00 20 */ blr + +.global AcceptScriptMsg__20CIceAttackProjectileF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__20CIceAttackProjectileF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 801F22F4 001EF254 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801F22F8 001EF258 7C 08 02 A6 */ mflr r0 +/* 801F22FC 001EF25C 90 01 00 24 */ stw r0, 0x24(r1) +/* 801F2300 001EF260 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801F2304 001EF264 7C 9F 23 78 */ mr r31, r4 +/* 801F2308 001EF268 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801F230C 001EF26C 7C BE 2B 78 */ mr r30, r5 +/* 801F2310 001EF270 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801F2314 001EF274 7C DD 33 78 */ mr r29, r6 +/* 801F2318 001EF278 93 81 00 10 */ stw r28, 0x10(r1) +/* 801F231C 001EF27C 7C 7C 1B 78 */ mr r28, r3 +/* 801F2320 001EF280 A0 05 00 00 */ lhz r0, 0(r5) +/* 801F2324 001EF284 38 A1 00 08 */ addi r5, r1, 8 +/* 801F2328 001EF288 B0 01 00 08 */ sth r0, 8(r1) +/* 801F232C 001EF28C 4B E6 12 E9 */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 801F2330 001EF290 2C 1F 00 22 */ cmpwi r31, 0x22 +/* 801F2334 001EF294 41 82 00 30 */ beq lbl_801F2364 +/* 801F2338 001EF298 40 80 00 6C */ bge lbl_801F23A4 +/* 801F233C 001EF29C 2C 1F 00 21 */ cmpwi r31, 0x21 +/* 801F2340 001EF2A0 40 80 00 08 */ bge lbl_801F2348 +/* 801F2344 001EF2A4 48 00 00 60 */ b lbl_801F23A4 +lbl_801F2348: +/* 801F2348 001EF2A8 7F 83 E3 78 */ mr r3, r28 +/* 801F234C 001EF2AC 38 80 00 01 */ li r4, 1 +/* 801F2350 001EF2B0 81 9C 00 00 */ lwz r12, 0(r28) +/* 801F2354 001EF2B4 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801F2358 001EF2B8 7D 89 03 A6 */ mtctr r12 +/* 801F235C 001EF2BC 4E 80 04 21 */ bctrl +/* 801F2360 001EF2C0 48 00 00 44 */ b lbl_801F23A4 +lbl_801F2364: +/* 801F2364 001EF2C4 A0 7E 00 00 */ lhz r3, 0(r30) +/* 801F2368 001EF2C8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801F236C 001EF2CC 7C 03 00 40 */ cmplw r3, r0 +/* 801F2370 001EF2D0 40 82 00 34 */ bne lbl_801F23A4 +/* 801F2374 001EF2D4 3B C0 00 00 */ li r30, 0 +/* 801F2378 001EF2D8 3B E0 00 00 */ li r31, 0 +/* 801F237C 001EF2DC 48 00 00 1C */ b lbl_801F2398 +lbl_801F2380: +/* 801F2380 001EF2E0 80 1C 01 14 */ lwz r0, 0x114(r28) +/* 801F2384 001EF2E4 7F A4 EB 78 */ mr r4, r29 +/* 801F2388 001EF2E8 7C 60 FA 14 */ add r3, r0, r31 +/* 801F238C 001EF2EC 4B FF FC 65 */ bl DeleteCollisionObject__Q220CIceAttackProjectile12CTrailObjectFR13CStateManager +/* 801F2390 001EF2F0 3B FF 03 24 */ addi r31, r31, 0x324 +/* 801F2394 001EF2F4 3B DE 00 01 */ addi r30, r30, 1 +lbl_801F2398: +/* 801F2398 001EF2F8 80 1C 01 0C */ lwz r0, 0x10c(r28) +/* 801F239C 001EF2FC 7C 1E 00 00 */ cmpw r30, r0 +/* 801F23A0 001EF300 41 80 FF E0 */ blt lbl_801F2380 +lbl_801F23A4: +/* 801F23A4 001EF304 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801F23A8 001EF308 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801F23AC 001EF30C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801F23B0 001EF310 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801F23B4 001EF314 83 81 00 10 */ lwz r28, 0x10(r1) +/* 801F23B8 001EF318 7C 08 03 A6 */ mtlr r0 +/* 801F23BC 001EF31C 38 21 00 20 */ addi r1, r1, 0x20 +/* 801F23C0 001EF320 4E 80 00 20 */ blr + +.global Think__20CIceAttackProjectileFfR13CStateManager +Think__20CIceAttackProjectileFfR13CStateManager: +/* 801F23C4 001EF324 94 21 F4 C0 */ stwu r1, -0xb40(r1) +/* 801F23C8 001EF328 7C 08 02 A6 */ mflr r0 +/* 801F23CC 001EF32C 90 01 0B 44 */ stw r0, 0xb44(r1) +/* 801F23D0 001EF330 DB E1 0B 30 */ stfd f31, 0xb30(r1) +/* 801F23D4 001EF334 F3 E1 0B 38 */ psq_st f31, -1224(r1), 0, qr0 +/* 801F23D8 001EF338 DB C1 0B 20 */ stfd f30, 0xb20(r1) +/* 801F23DC 001EF33C F3 C1 0B 28 */ psq_st f30, -1240(r1), 0, qr0 +/* 801F23E0 001EF340 DB A1 0B 10 */ stfd f29, 0xb10(r1) +/* 801F23E4 001EF344 F3 A1 0B 18 */ psq_st f29, -1256(r1), 0, qr0 +/* 801F23E8 001EF348 DB 81 0B 00 */ stfd f28, 0xb00(r1) +/* 801F23EC 001EF34C F3 81 0B 08 */ psq_st f28, -1272(r1), 0, qr0 +/* 801F23F0 001EF350 DB 61 0A F0 */ stfd f27, 0xaf0(r1) +/* 801F23F4 001EF354 F3 61 0A F8 */ psq_st f27, -1288(r1), 0, qr0 +/* 801F23F8 001EF358 DB 41 0A E0 */ stfd f26, 0xae0(r1) +/* 801F23FC 001EF35C F3 41 0A E8 */ psq_st f26, -1304(r1), 0, qr0 +/* 801F2400 001EF360 BF 21 0A C4 */ stmw r25, 0xac4(r1) +/* 801F2404 001EF364 88 03 00 30 */ lbz r0, 0x30(r3) +/* 801F2408 001EF368 FF E0 08 90 */ fmr f31, f1 +/* 801F240C 001EF36C 7C 7B 1B 78 */ mr r27, r3 +/* 801F2410 001EF370 7C 9C 23 78 */ mr r28, r4 +/* 801F2414 001EF374 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801F2418 001EF378 3B C0 00 00 */ li r30, 0 +/* 801F241C 001EF37C 3B A0 00 00 */ li r29, 0 +/* 801F2420 001EF380 41 82 07 B4 */ beq lbl_801F2BD4 +/* 801F2424 001EF384 88 1B 01 90 */ lbz r0, 0x190(r27) +/* 801F2428 001EF388 28 00 00 00 */ cmplwi r0, 0 +/* 801F242C 001EF38C 40 82 05 8C */ bne lbl_801F29B8 +/* 801F2430 001EF390 A0 1B 01 18 */ lhz r0, 0x118(r27) +/* 801F2434 001EF394 7F 83 E3 78 */ mr r3, r28 +/* 801F2438 001EF398 38 81 00 10 */ addi r4, r1, 0x10 +/* 801F243C 001EF39C B0 01 00 10 */ sth r0, 0x10(r1) +/* 801F2440 001EF3A0 4B E5 A1 65 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801F2444 001EF3A4 7C 64 1B 78 */ mr r4, r3 +/* 801F2448 001EF3A8 38 61 00 2C */ addi r3, r1, 0x2c +/* 801F244C 001EF3AC 4B EB D8 45 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 801F2450 001EF3B0 80 63 00 04 */ lwz r3, 4(r3) +/* 801F2454 001EF3B4 28 03 00 00 */ cmplwi r3, 0 +/* 801F2458 001EF3B8 41 82 01 48 */ beq lbl_801F25A0 +/* 801F245C 001EF3BC C0 23 00 40 */ lfs f1, 0x40(r3) +/* 801F2460 001EF3C0 C0 1B 00 40 */ lfs f0, 0x40(r27) +/* 801F2464 001EF3C4 C0 83 00 50 */ lfs f4, 0x50(r3) +/* 801F2468 001EF3C8 EC 61 00 28 */ fsubs f3, f1, f0 +/* 801F246C 001EF3CC C0 1B 00 50 */ lfs f0, 0x50(r27) +/* 801F2470 001EF3D0 C0 42 AE E8 */ lfs f2, lbl_805ACC08@sda21(r2) +/* 801F2474 001EF3D4 EC C4 00 28 */ fsubs f6, f4, f0 +/* 801F2478 001EF3D8 C0 A3 00 60 */ lfs f5, 0x60(r3) +/* 801F247C 001EF3DC EC 23 00 F2 */ fmuls f1, f3, f3 +/* 801F2480 001EF3E0 C0 9B 00 60 */ lfs f4, 0x60(r27) +/* 801F2484 001EF3E4 C0 02 AF 04 */ lfs f0, lbl_805ACC24@sda21(r2) +/* 801F2488 001EF3E8 EC 26 09 BA */ fmadds f1, f6, f6, f1 +/* 801F248C 001EF3EC D0 61 01 0C */ stfs f3, 0x10c(r1) +/* 801F2490 001EF3F0 EC 65 20 28 */ fsubs f3, f5, f4 +/* 801F2494 001EF3F4 D0 C1 01 10 */ stfs f6, 0x110(r1) +/* 801F2498 001EF3F8 EC 22 08 2A */ fadds f1, f2, f1 +/* 801F249C 001EF3FC D0 61 01 14 */ stfs f3, 0x114(r1) +/* 801F24A0 001EF400 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F24A4 001EF404 40 80 00 08 */ bge lbl_801F24AC +/* 801F24A8 001EF408 D0 5B 01 74 */ stfs f2, 0x174(r27) +lbl_801F24AC: +/* 801F24AC 001EF40C 38 61 01 0C */ addi r3, r1, 0x10c +/* 801F24B0 001EF410 48 12 22 49 */ bl CanBeNormalized__9CVector3fCFv +/* 801F24B4 001EF414 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801F24B8 001EF418 41 82 00 E8 */ beq lbl_801F25A0 +/* 801F24BC 001EF41C 38 61 01 0C */ addi r3, r1, 0x10c +/* 801F24C0 001EF420 48 12 24 39 */ bl Normalize__9CVector3fFv +/* 801F24C4 001EF424 38 61 00 DC */ addi r3, r1, 0xdc +/* 801F24C8 001EF428 38 9B 00 34 */ addi r4, r27, 0x34 +/* 801F24CC 001EF42C 38 A1 01 0C */ addi r5, r1, 0x10c +/* 801F24D0 001EF430 48 12 05 55 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 801F24D4 001EF434 C0 81 00 DC */ lfs f4, 0xdc(r1) +/* 801F24D8 001EF438 38 61 00 D0 */ addi r3, r1, 0xd0 +/* 801F24DC 001EF43C C0 22 AE E8 */ lfs f1, lbl_805ACC08@sda21(r2) +/* 801F24E0 001EF440 38 81 01 0C */ addi r4, r1, 0x10c +/* 801F24E4 001EF444 C0 02 AE EC */ lfs f0, lbl_805ACC0C@sda21(r2) +/* 801F24E8 001EF448 C0 A2 AE F8 */ lfs f5, lbl_805ACC18@sda21(r2) +/* 801F24EC 001EF44C C0 61 00 E0 */ lfs f3, 0xe0(r1) +/* 801F24F0 001EF450 C0 41 00 E4 */ lfs f2, 0xe4(r1) +/* 801F24F4 001EF454 FF C4 28 2E */ fsel f30, f4, f0, f5 +/* 801F24F8 001EF458 D0 81 01 0C */ stfs f4, 0x10c(r1) +/* 801F24FC 001EF45C D0 61 01 10 */ stfs f3, 0x110(r1) +/* 801F2500 001EF460 D0 41 01 14 */ stfs f2, 0x114(r1) +/* 801F2504 001EF464 D0 21 00 D0 */ stfs f1, 0xd0(r1) +/* 801F2508 001EF468 D0 01 00 D4 */ stfs f0, 0xd4(r1) +/* 801F250C 001EF46C D0 21 00 D8 */ stfs f1, 0xd8(r1) +/* 801F2510 001EF470 48 12 21 21 */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f +/* 801F2514 001EF474 C0 1B 01 74 */ lfs f0, 0x174(r27) +/* 801F2518 001EF478 EC 21 07 B2 */ fmuls f1, f1, f30 +/* 801F251C 001EF47C 38 61 00 24 */ addi r3, r1, 0x24 +/* 801F2520 001EF480 38 81 00 28 */ addi r4, r1, 0x28 +/* 801F2524 001EF484 EC 00 07 F2 */ fmuls f0, f0, f31 +/* 801F2528 001EF488 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801F252C 001EF48C D0 21 00 28 */ stfs f1, 0x28(r1) +/* 801F2530 001EF490 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801F2534 001EF494 C0 1B 01 74 */ lfs f0, 0x174(r27) +/* 801F2538 001EF498 FC 00 00 50 */ fneg f0, f0 +/* 801F253C 001EF49C EC 00 07 F2 */ fmuls f0, f0, f31 +/* 801F2540 001EF4A0 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801F2544 001EF4A4 4B E1 9D 71 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 801F2548 001EF4A8 C0 03 00 00 */ lfs f0, 0(r3) +/* 801F254C 001EF4AC 38 61 02 88 */ addi r3, r1, 0x288 +/* 801F2550 001EF4B0 38 9B 00 34 */ addi r4, r27, 0x34 +/* 801F2554 001EF4B4 FF 40 00 50 */ fneg f26, f0 +/* 801F2558 001EF4B8 48 12 06 1D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801F255C 001EF4BC D3 41 00 1C */ stfs f26, 0x1c(r1) +/* 801F2560 001EF4C0 38 61 02 88 */ addi r3, r1, 0x288 +/* 801F2564 001EF4C4 38 81 00 1C */ addi r4, r1, 0x1c +/* 801F2568 001EF4C8 48 12 0F 55 */ bl RotateLocalZ__12CTransform4fFRC9CRelAngle +/* 801F256C 001EF4CC 38 7B 00 34 */ addi r3, r27, 0x34 +/* 801F2570 001EF4D0 38 81 02 88 */ addi r4, r1, 0x288 +/* 801F2574 001EF4D4 48 12 05 CD */ bl __as__12CTransform4fFRC12CTransform4f +/* 801F2578 001EF4D8 88 1B 00 E4 */ lbz r0, 0xe4(r27) +/* 801F257C 001EF4DC 38 60 00 01 */ li r3, 1 +/* 801F2580 001EF4E0 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801F2584 001EF4E4 98 1B 00 E4 */ stb r0, 0xe4(r27) +/* 801F2588 001EF4E8 88 1B 00 E4 */ lbz r0, 0xe4(r27) +/* 801F258C 001EF4EC 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801F2590 001EF4F0 98 1B 00 E4 */ stb r0, 0xe4(r27) +/* 801F2594 001EF4F4 88 1B 00 E4 */ lbz r0, 0xe4(r27) +/* 801F2598 001EF4F8 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801F259C 001EF4FC 98 1B 00 E4 */ stb r0, 0xe4(r27) +lbl_801F25A0: +/* 801F25A0 001EF500 C0 3B 01 78 */ lfs f1, 0x178(r27) +/* 801F25A4 001EF504 38 61 00 C4 */ addi r3, r1, 0xc4 +/* 801F25A8 001EF508 C0 02 AE E8 */ lfs f0, lbl_805ACC08@sda21(r2) +/* 801F25AC 001EF50C 38 9B 00 34 */ addi r4, r27, 0x34 +/* 801F25B0 001EF510 EC 21 F8 2A */ fadds f1, f1, f31 +/* 801F25B4 001EF514 38 A1 00 B8 */ addi r5, r1, 0xb8 +/* 801F25B8 001EF518 D0 3B 01 78 */ stfs f1, 0x178(r27) +/* 801F25BC 001EF51C C0 3B 01 70 */ lfs f1, 0x170(r27) +/* 801F25C0 001EF520 EC 21 07 F2 */ fmuls f1, f1, f31 +/* 801F25C4 001EF524 D0 01 00 B8 */ stfs f0, 0xb8(r1) +/* 801F25C8 001EF528 D0 01 00 C0 */ stfs f0, 0xc0(r1) +/* 801F25CC 001EF52C D0 21 00 BC */ stfs f1, 0xbc(r1) +/* 801F25D0 001EF530 48 12 05 19 */ bl __ml__12CTransform4fCFRC9CVector3f +/* 801F25D4 001EF534 C0 22 AE E8 */ lfs f1, lbl_805ACC08@sda21(r2) +/* 801F25D8 001EF538 38 61 00 34 */ addi r3, r1, 0x34 +/* 801F25DC 001EF53C C0 81 00 C4 */ lfs f4, 0xc4(r1) +/* 801F25E0 001EF540 C0 61 00 C8 */ lfs f3, 0xc8(r1) +/* 801F25E4 001EF544 C0 41 00 CC */ lfs f2, 0xcc(r1) +/* 801F25E8 001EF548 C0 02 AE EC */ lfs f0, lbl_805ACC0C@sda21(r2) +/* 801F25EC 001EF54C D0 81 01 00 */ stfs f4, 0x100(r1) +/* 801F25F0 001EF550 D0 61 01 04 */ stfs f3, 0x104(r1) +/* 801F25F4 001EF554 D0 41 01 08 */ stfs f2, 0x108(r1) +/* 801F25F8 001EF558 D0 21 02 58 */ stfs f1, 0x258(r1) +/* 801F25FC 001EF55C D0 21 02 5C */ stfs f1, 0x25c(r1) +/* 801F2600 001EF560 D0 21 02 60 */ stfs f1, 0x260(r1) +/* 801F2604 001EF564 D0 21 02 64 */ stfs f1, 0x264(r1) +/* 801F2608 001EF568 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801F260C 001EF56C D0 21 00 38 */ stfs f1, 0x38(r1) +/* 801F2610 001EF570 D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 801F2614 001EF574 48 12 22 E5 */ bl Normalize__9CVector3fFv +/* 801F2618 001EF578 C0 61 00 34 */ lfs f3, 0x34(r1) +/* 801F261C 001EF57C 38 C0 00 00 */ li r6, 0 +/* 801F2620 001EF580 C0 41 00 38 */ lfs f2, 0x38(r1) +/* 801F2624 001EF584 3B E1 02 68 */ addi r31, r1, 0x268 +/* 801F2628 001EF588 C0 21 00 3C */ lfs f1, 0x3c(r1) +/* 801F262C 001EF58C C0 02 AE E8 */ lfs f0, lbl_805ACC08@sda21(r2) +/* 801F2630 001EF590 D0 61 02 68 */ stfs f3, 0x268(r1) +/* 801F2634 001EF594 D0 41 02 6C */ stfs f2, 0x26c(r1) +/* 801F2638 001EF598 D0 21 02 70 */ stfs f1, 0x270(r1) +/* 801F263C 001EF59C D0 01 02 74 */ stfs f0, 0x274(r1) +/* 801F2640 001EF5A0 98 C1 02 78 */ stb r6, 0x278(r1) +/* 801F2644 001EF5A4 90 C1 02 84 */ stw r6, 0x284(r1) +/* 801F2648 001EF5A8 90 C1 02 80 */ stw r6, 0x280(r1) +/* 801F264C 001EF5AC 88 1B 01 92 */ lbz r0, 0x192(r27) +/* 801F2650 001EF5B0 28 00 00 00 */ cmplwi r0, 0 +/* 801F2654 001EF5B4 41 82 01 88 */ beq lbl_801F27DC +/* 801F2658 001EF5B8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801F265C 001EF5BC 38 60 00 00 */ li r3, 0 +/* 801F2660 001EF5C0 80 AD 92 AC */ lwz r5, lbl_805A7E6C@sda21(r13) +/* 801F2664 001EF5C4 38 80 00 01 */ li r4, 1 +/* 801F2668 001EF5C8 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801F266C 001EF5CC 90 C1 02 B8 */ stw r6, 0x2b8(r1) +/* 801F2670 001EF5D0 48 19 78 85 */ bl __shl2i +/* 801F2674 001EF5D4 80 AD 92 B0 */ lwz r5, lbl_805A7E70@sda21(r13) +/* 801F2678 001EF5D8 7C 99 23 78 */ mr r25, r4 +/* 801F267C 001EF5DC 7C 7A 1B 78 */ mr r26, r3 +/* 801F2680 001EF5E0 38 60 00 00 */ li r3, 0 +/* 801F2684 001EF5E4 38 80 00 01 */ li r4, 1 +/* 801F2688 001EF5E8 48 19 78 6D */ bl __shl2i +/* 801F268C 001EF5EC C0 82 AE E8 */ lfs f4, lbl_805ACC08@sda21(r2) +/* 801F2690 001EF5F0 7F 39 23 78 */ or r25, r25, r4 +/* 801F2694 001EF5F4 C0 21 01 04 */ lfs f1, 0x104(r1) +/* 801F2698 001EF5F8 7F 5A 1B 78 */ or r26, r26, r3 +/* 801F269C 001EF5FC C0 01 01 00 */ lfs f0, 0x100(r1) +/* 801F26A0 001EF600 39 20 00 01 */ li r9, 1 +/* 801F26A4 001EF604 EC A1 20 2A */ fadds f5, f1, f4 +/* 801F26A8 001EF608 C0 62 AE F8 */ lfs f3, lbl_805ACC18@sda21(r2) +/* 801F26AC 001EF60C 38 00 00 00 */ li r0, 0 +/* 801F26B0 001EF610 EC 00 20 2A */ fadds f0, f0, f4 +/* 801F26B4 001EF614 C0 41 01 08 */ lfs f2, 0x108(r1) +/* 801F26B8 001EF618 7F 83 E3 78 */ mr r3, r28 +/* 801F26BC 001EF61C C0 22 AF 00 */ lfs f1, lbl_805ACC20@sda21(r2) +/* 801F26C0 001EF620 38 81 02 B8 */ addi r4, r1, 0x2b8 +/* 801F26C4 001EF624 91 21 01 78 */ stw r9, 0x178(r1) +/* 801F26C8 001EF628 38 A1 00 E8 */ addi r5, r1, 0xe8 +/* 801F26CC 001EF62C EC 42 08 2A */ fadds f2, f2, f1 +/* 801F26D0 001EF630 C0 22 AF 08 */ lfs f1, lbl_805ACC28@sda21(r2) +/* 801F26D4 001EF634 93 21 01 84 */ stw r25, 0x184(r1) +/* 801F26D8 001EF638 38 C1 00 F4 */ addi r6, r1, 0xf4 +/* 801F26DC 001EF63C 38 E1 01 80 */ addi r7, r1, 0x180 +/* 801F26E0 001EF640 39 00 00 00 */ li r8, 0 +/* 801F26E4 001EF644 93 41 01 80 */ stw r26, 0x180(r1) +/* 801F26E8 001EF648 90 01 01 8C */ stw r0, 0x18c(r1) +/* 801F26EC 001EF64C 90 01 01 88 */ stw r0, 0x188(r1) +/* 801F26F0 001EF650 91 21 01 90 */ stw r9, 0x190(r1) +/* 801F26F4 001EF654 D0 81 00 F4 */ stfs f4, 0xf4(r1) +/* 801F26F8 001EF658 D0 81 00 F8 */ stfs f4, 0xf8(r1) +/* 801F26FC 001EF65C D0 61 00 FC */ stfs f3, 0xfc(r1) +/* 801F2700 001EF660 D0 01 00 E8 */ stfs f0, 0xe8(r1) +/* 801F2704 001EF664 D0 A1 00 EC */ stfs f5, 0xec(r1) +/* 801F2708 001EF668 D0 41 00 F0 */ stfs f2, 0xf0(r1) +/* 801F270C 001EF66C 4B E5 9F CD */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC9CVector3fRC9CVector3ffRC15CMaterialFilterPC6CActor" +/* 801F2710 001EF670 C0 22 AF 08 */ lfs f1, lbl_805ACC28@sda21(r2) +/* 801F2714 001EF674 7F 84 E3 78 */ mr r4, r28 +/* 801F2718 001EF678 38 61 02 28 */ addi r3, r1, 0x228 +/* 801F271C 001EF67C 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801F2720 001EF680 38 C1 00 E8 */ addi r6, r1, 0xe8 +/* 801F2724 001EF684 38 E1 00 F4 */ addi r7, r1, 0xf4 +/* 801F2728 001EF688 39 01 01 80 */ addi r8, r1, 0x180 +/* 801F272C 001EF68C 39 21 02 B8 */ addi r9, r1, 0x2b8 +/* 801F2730 001EF690 4B E5 A8 95 */ bl "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 801F2734 001EF694 80 E1 02 B8 */ lwz r7, 0x2b8(r1) +/* 801F2738 001EF698 38 C0 00 00 */ li r6, 0 +/* 801F273C 001EF69C C0 A1 02 28 */ lfs f5, 0x228(r1) +/* 801F2740 001EF6A0 80 A1 02 2C */ lwz r5, 0x22c(r1) +/* 801F2744 001EF6A4 2C 07 00 00 */ cmpwi r7, 0 +/* 801F2748 001EF6A8 80 81 02 30 */ lwz r4, 0x230(r1) +/* 801F274C 001EF6AC 80 61 02 34 */ lwz r3, 0x234(r1) +/* 801F2750 001EF6B0 C0 81 02 38 */ lfs f4, 0x238(r1) +/* 801F2754 001EF6B4 C0 61 02 3C */ lfs f3, 0x23c(r1) +/* 801F2758 001EF6B8 C0 41 02 40 */ lfs f2, 0x240(r1) +/* 801F275C 001EF6BC C0 21 02 44 */ lfs f1, 0x244(r1) +/* 801F2760 001EF6C0 88 01 02 48 */ lbz r0, 0x248(r1) +/* 801F2764 001EF6C4 C8 01 02 50 */ lfd f0, 0x250(r1) +/* 801F2768 001EF6C8 D0 A1 02 58 */ stfs f5, 0x258(r1) +/* 801F276C 001EF6CC 90 A1 02 5C */ stw r5, 0x25c(r1) +/* 801F2770 001EF6D0 90 81 02 60 */ stw r4, 0x260(r1) +/* 801F2774 001EF6D4 90 61 02 64 */ stw r3, 0x264(r1) +/* 801F2778 001EF6D8 D0 81 02 68 */ stfs f4, 0x268(r1) +/* 801F277C 001EF6DC D0 61 02 6C */ stfs f3, 0x26c(r1) +/* 801F2780 001EF6E0 D0 41 02 70 */ stfs f2, 0x270(r1) +/* 801F2784 001EF6E4 D0 21 02 74 */ stfs f1, 0x274(r1) +/* 801F2788 001EF6E8 98 01 02 78 */ stb r0, 0x278(r1) +/* 801F278C 001EF6EC D8 01 02 80 */ stfd f0, 0x280(r1) +/* 801F2790 001EF6F0 40 81 00 40 */ ble lbl_801F27D0 +/* 801F2794 001EF6F4 2C 07 00 08 */ cmpwi r7, 8 +/* 801F2798 001EF6F8 38 67 FF F8 */ addi r3, r7, -8 +/* 801F279C 001EF6FC 40 81 00 20 */ ble lbl_801F27BC +/* 801F27A0 001EF700 38 03 00 07 */ addi r0, r3, 7 +/* 801F27A4 001EF704 54 00 E8 FE */ srwi r0, r0, 3 +/* 801F27A8 001EF708 7C 09 03 A6 */ mtctr r0 +/* 801F27AC 001EF70C 2C 03 00 00 */ cmpwi r3, 0 +/* 801F27B0 001EF710 40 81 00 0C */ ble lbl_801F27BC +lbl_801F27B4: +/* 801F27B4 001EF714 38 C6 00 08 */ addi r6, r6, 8 +/* 801F27B8 001EF718 42 00 FF FC */ bdnz lbl_801F27B4 +lbl_801F27BC: +/* 801F27BC 001EF71C 7C 06 38 50 */ subf r0, r6, r7 +/* 801F27C0 001EF720 7C 09 03 A6 */ mtctr r0 +/* 801F27C4 001EF724 7C 06 38 00 */ cmpw r6, r7 +/* 801F27C8 001EF728 40 80 00 08 */ bge lbl_801F27D0 +lbl_801F27CC: +/* 801F27CC 001EF72C 42 00 00 00 */ bdnz lbl_801F27CC +lbl_801F27D0: +/* 801F27D0 001EF730 38 00 00 00 */ li r0, 0 +/* 801F27D4 001EF734 90 01 02 B8 */ stw r0, 0x2b8(r1) +/* 801F27D8 001EF738 48 00 00 B0 */ b lbl_801F2888 +lbl_801F27DC: +/* 801F27DC 001EF73C 80 AD 92 B4 */ lwz r5, lbl_805A7E74@sda21(r13) +/* 801F27E0 001EF740 38 60 00 00 */ li r3, 0 +/* 801F27E4 001EF744 38 80 00 01 */ li r4, 1 +/* 801F27E8 001EF748 48 19 77 0D */ bl __shl2i +/* 801F27EC 001EF74C C0 42 AE E8 */ lfs f2, lbl_805ACC08@sda21(r2) +/* 801F27F0 001EF750 39 00 00 00 */ li r8, 0 +/* 801F27F4 001EF754 C0 02 AE F8 */ lfs f0, lbl_805ACC18@sda21(r2) +/* 801F27F8 001EF758 38 00 00 01 */ li r0, 1 +/* 801F27FC 001EF75C 90 81 01 54 */ stw r4, 0x154(r1) +/* 801F2800 001EF760 7F 84 E3 78 */ mr r4, r28 +/* 801F2804 001EF764 C0 22 AF 08 */ lfs f1, lbl_805ACC28@sda21(r2) +/* 801F2808 001EF768 38 A1 01 00 */ addi r5, r1, 0x100 +/* 801F280C 001EF76C 90 61 01 50 */ stw r3, 0x150(r1) +/* 801F2810 001EF770 38 61 01 F8 */ addi r3, r1, 0x1f8 +/* 801F2814 001EF774 38 C1 00 AC */ addi r6, r1, 0xac +/* 801F2818 001EF778 38 E1 01 50 */ addi r7, r1, 0x150 +/* 801F281C 001EF77C 91 01 01 5C */ stw r8, 0x15c(r1) +/* 801F2820 001EF780 91 01 01 58 */ stw r8, 0x158(r1) +/* 801F2824 001EF784 90 01 01 60 */ stw r0, 0x160(r1) +/* 801F2828 001EF788 D0 41 00 AC */ stfs f2, 0xac(r1) +/* 801F282C 001EF78C D0 41 00 B0 */ stfs f2, 0xb0(r1) +/* 801F2830 001EF790 D0 01 00 B4 */ stfs f0, 0xb4(r1) +/* 801F2834 001EF794 4B E5 A7 65 */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter +/* 801F2838 001EF798 C0 A1 01 F8 */ lfs f5, 0x1f8(r1) +/* 801F283C 001EF79C 80 A1 01 FC */ lwz r5, 0x1fc(r1) +/* 801F2840 001EF7A0 80 81 02 00 */ lwz r4, 0x200(r1) +/* 801F2844 001EF7A4 80 61 02 04 */ lwz r3, 0x204(r1) +/* 801F2848 001EF7A8 C0 81 02 08 */ lfs f4, 0x208(r1) +/* 801F284C 001EF7AC C0 61 02 0C */ lfs f3, 0x20c(r1) +/* 801F2850 001EF7B0 C0 41 02 10 */ lfs f2, 0x210(r1) +/* 801F2854 001EF7B4 C0 21 02 14 */ lfs f1, 0x214(r1) +/* 801F2858 001EF7B8 88 01 02 18 */ lbz r0, 0x218(r1) +/* 801F285C 001EF7BC C8 01 02 20 */ lfd f0, 0x220(r1) +/* 801F2860 001EF7C0 D0 A1 02 58 */ stfs f5, 0x258(r1) +/* 801F2864 001EF7C4 90 A1 02 5C */ stw r5, 0x25c(r1) +/* 801F2868 001EF7C8 90 81 02 60 */ stw r4, 0x260(r1) +/* 801F286C 001EF7CC 90 61 02 64 */ stw r3, 0x264(r1) +/* 801F2870 001EF7D0 D0 81 02 68 */ stfs f4, 0x268(r1) +/* 801F2874 001EF7D4 D0 61 02 6C */ stfs f3, 0x26c(r1) +/* 801F2878 001EF7D8 D0 41 02 70 */ stfs f2, 0x270(r1) +/* 801F287C 001EF7DC D0 21 02 74 */ stfs f1, 0x274(r1) +/* 801F2880 001EF7E0 98 01 02 78 */ stb r0, 0x278(r1) +/* 801F2884 001EF7E4 D8 01 02 80 */ stfd f0, 0x280(r1) +lbl_801F2888: +/* 801F2888 001EF7E8 88 01 02 78 */ lbz r0, 0x278(r1) +/* 801F288C 001EF7EC 28 00 00 00 */ cmplwi r0, 0 +/* 801F2890 001EF7F0 41 82 00 34 */ beq lbl_801F28C4 +/* 801F2894 001EF7F4 C0 21 02 60 */ lfs f1, 0x260(r1) +/* 801F2898 001EF7F8 3B C0 00 01 */ li r30, 1 +/* 801F289C 001EF7FC C0 62 AE E8 */ lfs f3, lbl_805ACC08@sda21(r2) +/* 801F28A0 001EF800 C0 01 02 5C */ lfs f0, 0x25c(r1) +/* 801F28A4 001EF804 EC 81 18 2A */ fadds f4, f1, f3 +/* 801F28A8 001EF808 C0 41 02 64 */ lfs f2, 0x264(r1) +/* 801F28AC 001EF80C C0 22 AE EC */ lfs f1, lbl_805ACC0C@sda21(r2) +/* 801F28B0 001EF810 EC 00 18 2A */ fadds f0, f0, f3 +/* 801F28B4 001EF814 EC 22 08 2A */ fadds f1, f2, f1 +/* 801F28B8 001EF818 D0 81 01 04 */ stfs f4, 0x104(r1) +/* 801F28BC 001EF81C D0 01 01 00 */ stfs f0, 0x100(r1) +/* 801F28C0 001EF820 D0 21 01 08 */ stfs f1, 0x108(r1) +lbl_801F28C4: +/* 801F28C4 001EF824 80 AD 92 B8 */ lwz r5, lbl_805A7E78@sda21(r13) +/* 801F28C8 001EF828 38 60 00 00 */ li r3, 0 +/* 801F28CC 001EF82C 38 80 00 01 */ li r4, 1 +/* 801F28D0 001EF830 48 19 76 25 */ bl __shl2i +/* 801F28D4 001EF834 C0 22 AE E8 */ lfs f1, lbl_805ACC08@sda21(r2) +/* 801F28D8 001EF838 38 C0 00 00 */ li r6, 0 +/* 801F28DC 001EF83C C0 02 AE EC */ lfs f0, lbl_805ACC0C@sda21(r2) +/* 801F28E0 001EF840 38 00 00 01 */ li r0, 1 +/* 801F28E4 001EF844 90 81 01 3C */ stw r4, 0x13c(r1) +/* 801F28E8 001EF848 38 9B 00 34 */ addi r4, r27, 0x34 +/* 801F28EC 001EF84C 38 A1 00 94 */ addi r5, r1, 0x94 +/* 801F28F0 001EF850 90 61 01 38 */ stw r3, 0x138(r1) +/* 801F28F4 001EF854 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 801F28F8 001EF858 90 C1 01 44 */ stw r6, 0x144(r1) +/* 801F28FC 001EF85C 90 C1 01 40 */ stw r6, 0x140(r1) +/* 801F2900 001EF860 90 01 01 48 */ stw r0, 0x148(r1) +/* 801F2904 001EF864 D0 21 00 94 */ stfs f1, 0x94(r1) +/* 801F2908 001EF868 D0 01 00 98 */ stfs f0, 0x98(r1) +/* 801F290C 001EF86C D0 21 00 9C */ stfs f1, 0x9c(r1) +/* 801F2910 001EF870 48 12 01 71 */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 801F2914 001EF874 C0 22 AF 0C */ lfs f1, lbl_805ACC2C@sda21(r2) +/* 801F2918 001EF878 7F 84 E3 78 */ mr r4, r28 +/* 801F291C 001EF87C 38 61 01 C8 */ addi r3, r1, 0x1c8 +/* 801F2920 001EF880 38 A1 01 00 */ addi r5, r1, 0x100 +/* 801F2924 001EF884 38 C1 00 A0 */ addi r6, r1, 0xa0 +/* 801F2928 001EF888 38 E1 01 38 */ addi r7, r1, 0x138 +/* 801F292C 001EF88C 4B E5 A6 6D */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter +/* 801F2930 001EF890 88 01 01 E8 */ lbz r0, 0x1e8(r1) +/* 801F2934 001EF894 28 00 00 00 */ cmplwi r0, 0 +/* 801F2938 001EF898 41 82 00 08 */ beq lbl_801F2940 +/* 801F293C 001EF89C 3B A0 00 01 */ li r29, 1 +lbl_801F2940: +/* 801F2940 001EF8A0 7F 63 DB 78 */ mr r3, r27 +/* 801F2944 001EF8A4 38 81 01 00 */ addi r4, r1, 0x100 +/* 801F2948 001EF8A8 4B E6 05 45 */ bl SetTranslation__6CActorFRC9CVector3f +/* 801F294C 001EF8AC C0 3B 01 78 */ lfs f1, 0x178(r27) +/* 801F2950 001EF8B0 C0 02 AF 0C */ lfs f0, lbl_805ACC2C@sda21(r2) +/* 801F2954 001EF8B4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F2958 001EF8B8 41 81 00 14 */ bgt lbl_801F296C +/* 801F295C 001EF8BC 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 801F2960 001EF8C0 40 82 00 0C */ bne lbl_801F296C +/* 801F2964 001EF8C4 57 C0 06 3F */ clrlwi. r0, r30, 0x18 +/* 801F2968 001EF8C8 40 82 00 0C */ bne lbl_801F2974 +lbl_801F296C: +/* 801F296C 001EF8CC 38 00 00 01 */ li r0, 1 +/* 801F2970 001EF8D0 98 1B 01 90 */ stb r0, 0x190(r27) +lbl_801F2974: +/* 801F2974 001EF8D4 80 7B 01 80 */ lwz r3, 0x180(r27) +/* 801F2978 001EF8D8 38 03 00 01 */ addi r0, r3, 1 +/* 801F297C 001EF8DC 90 1B 01 80 */ stw r0, 0x180(r27) +/* 801F2980 001EF8E0 80 7B 01 80 */ lwz r3, 0x180(r27) +/* 801F2984 001EF8E4 54 60 F0 02 */ slwi r0, r3, 0x1e +/* 801F2988 001EF8E8 54 63 0F FE */ srwi r3, r3, 0x1f +/* 801F298C 001EF8EC 7C 03 00 50 */ subf r0, r3, r0 +/* 801F2990 001EF8F0 54 00 10 3E */ rotlwi r0, r0, 2 +/* 801F2994 001EF8F4 7C 00 1A 15 */ add. r0, r0, r3 +/* 801F2998 001EF8F8 40 82 00 20 */ bne lbl_801F29B8 +/* 801F299C 001EF8FC 57 C0 06 3F */ clrlwi. r0, r30, 0x18 +/* 801F29A0 001EF900 41 82 00 18 */ beq lbl_801F29B8 +/* 801F29A4 001EF904 FC 20 F8 90 */ fmr f1, f31 +/* 801F29A8 001EF908 7F 63 DB 78 */ mr r3, r27 +/* 801F29AC 001EF90C 7F 84 E3 78 */ mr r4, r28 +/* 801F29B0 001EF910 7F E5 FB 78 */ mr r5, r31 +/* 801F29B4 001EF914 48 00 04 15 */ bl CreateTrailObject__20CIceAttackProjectileFR13CStateManagerRC9CVector3ff +lbl_801F29B8: +/* 801F29B8 001EF918 FC 20 F8 90 */ fmr f1, f31 +/* 801F29BC 001EF91C 7F 63 DB 78 */ mr r3, r27 +/* 801F29C0 001EF920 7F 84 E3 78 */ mr r4, r28 +/* 801F29C4 001EF924 48 00 02 55 */ bl UpdateTrailObjects__20CIceAttackProjectileFfR13CStateManager +/* 801F29C8 001EF928 83 BB 01 04 */ lwz r29, 0x104(r27) +/* 801F29CC 001EF92C 38 61 01 98 */ addi r3, r1, 0x198 +/* 801F29D0 001EF930 38 9B 00 34 */ addi r4, r27, 0x34 +/* 801F29D4 001EF934 48 12 02 6D */ bl GetRotation__12CTransform4fCFv +/* 801F29D8 001EF938 7F A3 EB 78 */ mr r3, r29 +/* 801F29DC 001EF93C 38 81 01 98 */ addi r4, r1, 0x198 +/* 801F29E0 001EF940 81 9D 00 00 */ lwz r12, 0(r29) +/* 801F29E4 001EF944 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 801F29E8 001EF948 7D 89 03 A6 */ mtctr r12 +/* 801F29EC 001EF94C 4E 80 04 21 */ bctrl +/* 801F29F0 001EF950 C3 9B 00 58 */ lfs f28, 0x58(r27) +/* 801F29F4 001EF954 38 81 00 88 */ addi r4, r1, 0x88 +/* 801F29F8 001EF958 C0 02 AE EC */ lfs f0, lbl_805ACC0C@sda21(r2) +/* 801F29FC 001EF95C C3 BB 00 48 */ lfs f29, 0x48(r27) +/* 801F2A00 001EF960 C0 9B 00 38 */ lfs f4, 0x38(r27) +/* 801F2A04 001EF964 EC C0 07 32 */ fmuls f6, f0, f28 +/* 801F2A08 001EF968 C3 DB 00 5C */ lfs f30, 0x5c(r27) +/* 801F2A0C 001EF96C EC E0 07 72 */ fmuls f7, f0, f29 +/* 801F2A10 001EF970 C1 9B 00 4C */ lfs f12, 0x4c(r27) +/* 801F2A14 001EF974 EC 60 01 32 */ fmuls f3, f0, f4 +/* 801F2A18 001EF978 C0 3B 00 3C */ lfs f1, 0x3c(r27) +/* 801F2A1C 001EF97C C3 5B 00 60 */ lfs f26, 0x60(r27) +/* 801F2A20 001EF980 ED 60 03 32 */ fmuls f11, f0, f12 +/* 801F2A24 001EF984 C3 7B 00 50 */ lfs f27, 0x50(r27) +/* 801F2A28 001EF988 ED 40 07 B2 */ fmuls f10, f0, f30 +/* 801F2A2C 001EF98C C0 5B 00 40 */ lfs f2, 0x40(r27) +/* 801F2A30 001EF990 ED 1A 30 2A */ fadds f8, f26, f6 +/* 801F2A34 001EF994 ED 3B 38 2A */ fadds f9, f27, f7 +/* 801F2A38 001EF998 EC A0 00 72 */ fmuls f5, f0, f1 +/* 801F2A3C 001EF99C D0 21 00 40 */ stfs f1, 0x40(r1) +/* 801F2A40 001EF9A0 EC 22 18 2A */ fadds f1, f2, f3 +/* 801F2A44 001EF9A4 ED A9 58 28 */ fsubs f13, f9, f11 +/* 801F2A48 001EF9A8 D1 81 00 44 */ stfs f12, 0x44(r1) +/* 801F2A4C 001EF9AC ED 88 50 28 */ fsubs f12, f8, f10 +/* 801F2A50 001EF9B0 EC 01 28 28 */ fsubs f0, f1, f5 +/* 801F2A54 001EF9B4 D3 C1 00 48 */ stfs f30, 0x48(r1) +/* 801F2A58 001EF9B8 D1 A1 00 8C */ stfs f13, 0x8c(r1) +/* 801F2A5C 001EF9BC D0 01 00 88 */ stfs f0, 0x88(r1) +/* 801F2A60 001EF9C0 D1 81 00 90 */ stfs f12, 0x90(r1) +/* 801F2A64 001EF9C4 80 7B 01 04 */ lwz r3, 0x104(r27) +/* 801F2A68 001EF9C8 D0 A1 00 4C */ stfs f5, 0x4c(r1) +/* 801F2A6C 001EF9CC 81 83 00 00 */ lwz r12, 0(r3) +/* 801F2A70 001EF9D0 D1 61 00 50 */ stfs f11, 0x50(r1) +/* 801F2A74 001EF9D4 81 8C 00 20 */ lwz r12, 0x20(r12) +/* 801F2A78 001EF9D8 D1 41 00 54 */ stfs f10, 0x54(r1) +/* 801F2A7C 001EF9DC D0 81 00 58 */ stfs f4, 0x58(r1) +/* 801F2A80 001EF9E0 D3 A1 00 5C */ stfs f29, 0x5c(r1) +/* 801F2A84 001EF9E4 D3 81 00 60 */ stfs f28, 0x60(r1) +/* 801F2A88 001EF9E8 D0 61 00 64 */ stfs f3, 0x64(r1) +/* 801F2A8C 001EF9EC D0 E1 00 68 */ stfs f7, 0x68(r1) +/* 801F2A90 001EF9F0 D0 C1 00 6C */ stfs f6, 0x6c(r1) +/* 801F2A94 001EF9F4 D0 41 00 70 */ stfs f2, 0x70(r1) +/* 801F2A98 001EF9F8 D3 61 00 74 */ stfs f27, 0x74(r1) +/* 801F2A9C 001EF9FC D3 41 00 78 */ stfs f26, 0x78(r1) +/* 801F2AA0 001EFA00 D0 21 00 7C */ stfs f1, 0x7c(r1) +/* 801F2AA4 001EFA04 D1 21 00 80 */ stfs f9, 0x80(r1) +/* 801F2AA8 001EFA08 D1 01 00 84 */ stfs f8, 0x84(r1) +/* 801F2AAC 001EFA0C 7D 89 03 A6 */ mtctr r12 +/* 801F2AB0 001EFA10 4E 80 04 21 */ bctrl +/* 801F2AB4 001EFA14 80 7B 01 04 */ lwz r3, 0x104(r27) +/* 801F2AB8 001EFA18 FC 20 F8 90 */ fmr f1, f31 +/* 801F2ABC 001EFA1C 81 83 00 00 */ lwz r12, 0(r3) +/* 801F2AC0 001EFA20 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801F2AC4 001EFA24 7D 89 03 A6 */ mtctr r12 +/* 801F2AC8 001EFA28 4E 80 04 21 */ bctrl +/* 801F2ACC 001EFA2C 88 1B 01 90 */ lbz r0, 0x190(r27) +/* 801F2AD0 001EFA30 28 00 00 00 */ cmplwi r0, 0 +/* 801F2AD4 001EFA34 41 82 00 B8 */ beq lbl_801F2B8C +/* 801F2AD8 001EFA38 80 7B 01 04 */ lwz r3, 0x104(r27) +/* 801F2ADC 001EFA3C 38 80 00 00 */ li r4, 0 +/* 801F2AE0 001EFA40 81 83 00 00 */ lwz r12, 0(r3) +/* 801F2AE4 001EFA44 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801F2AE8 001EFA48 7D 89 03 A6 */ mtctr r12 +/* 801F2AEC 001EFA4C 4E 80 04 21 */ bctrl +/* 801F2AF0 001EFA50 80 7B 01 04 */ lwz r3, 0x104(r27) +/* 801F2AF4 001EFA54 81 83 00 00 */ lwz r12, 0(r3) +/* 801F2AF8 001EFA58 81 8C 00 60 */ lwz r12, 0x60(r12) +/* 801F2AFC 001EFA5C 7D 89 03 A6 */ mtctr r12 +/* 801F2B00 001EFA60 4E 80 04 21 */ bctrl +/* 801F2B04 001EFA64 7C 60 00 34 */ cntlzw r0, r3 +/* 801F2B08 001EFA68 3B C0 00 00 */ li r30, 0 +/* 801F2B0C 001EFA6C 54 1A D9 7E */ srwi r26, r0, 5 +/* 801F2B10 001EFA70 3B 20 00 00 */ li r25, 0 +/* 801F2B14 001EFA74 48 00 00 3C */ b lbl_801F2B50 +lbl_801F2B18: +/* 801F2B18 001EFA78 80 1B 01 14 */ lwz r0, 0x114(r27) +/* 801F2B1C 001EFA7C 7F A0 CA 14 */ add r29, r0, r25 +/* 801F2B20 001EFA80 7F A3 EB 78 */ mr r3, r29 +/* 801F2B24 001EFA84 4B FF EF 45 */ bl ExplosionFinished__Q220CIceAttackProjectile12CTrailObjectCFv +/* 801F2B28 001EFA88 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801F2B2C 001EFA8C 41 82 00 14 */ beq lbl_801F2B40 +/* 801F2B30 001EFA90 7F A3 EB 78 */ mr r3, r29 +/* 801F2B34 001EFA94 4B FF EF 81 */ bl ExplosionStarted__Q220CIceAttackProjectile12CTrailObjectCFv +/* 801F2B38 001EFA98 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801F2B3C 001EFA9C 40 82 00 0C */ bne lbl_801F2B48 +lbl_801F2B40: +/* 801F2B40 001EFAA0 3B 40 00 00 */ li r26, 0 +/* 801F2B44 001EFAA4 48 00 00 18 */ b lbl_801F2B5C +lbl_801F2B48: +/* 801F2B48 001EFAA8 3B 39 03 24 */ addi r25, r25, 0x324 +/* 801F2B4C 001EFAAC 3B DE 00 01 */ addi r30, r30, 1 +lbl_801F2B50: +/* 801F2B50 001EFAB0 80 1B 01 0C */ lwz r0, 0x10c(r27) +/* 801F2B54 001EFAB4 7C 1E 00 00 */ cmpw r30, r0 +/* 801F2B58 001EFAB8 41 80 FF C0 */ blt lbl_801F2B18 +lbl_801F2B5C: +/* 801F2B5C 001EFABC 57 40 06 3F */ clrlwi. r0, r26, 0x18 +/* 801F2B60 001EFAC0 41 82 00 2C */ beq lbl_801F2B8C +/* 801F2B64 001EFAC4 A0 1B 00 08 */ lhz r0, 8(r27) +/* 801F2B68 001EFAC8 7F 83 E3 78 */ mr r3, r28 +/* 801F2B6C 001EFACC 38 81 00 0C */ addi r4, r1, 0xc +/* 801F2B70 001EFAD0 B0 01 00 08 */ sth r0, 8(r1) +/* 801F2B74 001EFAD4 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801F2B78 001EFAD8 4B E5 96 F5 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +/* 801F2B7C 001EFADC 80 1B 01 94 */ lwz r0, 0x194(r27) +/* 801F2B80 001EFAE0 38 61 00 18 */ addi r3, r1, 0x18 +/* 801F2B84 001EFAE4 90 01 00 18 */ stw r0, 0x18(r1) +/* 801F2B88 001EFAE8 48 0F 71 C1 */ bl SfxStop__11CSfxManagerFRC10CSfxHandle +lbl_801F2B8C: +/* 801F2B8C 001EFAEC FC 20 F8 90 */ fmr f1, f31 +/* 801F2B90 001EFAF0 38 61 01 18 */ addi r3, r1, 0x118 +/* 801F2B94 001EFAF4 38 9B 01 1C */ addi r4, r27, 0x11c +/* 801F2B98 001EFAF8 4B ED 08 B1 */ bl __ct__11CDamageInfoFRC11CDamageInfof +/* 801F2B9C 001EFAFC 80 61 01 18 */ lwz r3, 0x118(r1) +/* 801F2BA0 001EFB00 80 01 01 1C */ lwz r0, 0x11c(r1) +/* 801F2BA4 001EFB04 90 7B 01 38 */ stw r3, 0x138(r27) +/* 801F2BA8 001EFB08 90 1B 01 3C */ stw r0, 0x13c(r27) +/* 801F2BAC 001EFB0C C0 01 01 20 */ lfs f0, 0x120(r1) +/* 801F2BB0 001EFB10 D0 1B 01 40 */ stfs f0, 0x140(r27) +/* 801F2BB4 001EFB14 C0 01 01 24 */ lfs f0, 0x124(r1) +/* 801F2BB8 001EFB18 D0 1B 01 44 */ stfs f0, 0x144(r27) +/* 801F2BBC 001EFB1C C0 01 01 28 */ lfs f0, 0x128(r1) +/* 801F2BC0 001EFB20 D0 1B 01 48 */ stfs f0, 0x148(r27) +/* 801F2BC4 001EFB24 C0 01 01 2C */ lfs f0, 0x12c(r1) +/* 801F2BC8 001EFB28 D0 1B 01 4C */ stfs f0, 0x14c(r27) +/* 801F2BCC 001EFB2C 88 01 01 30 */ lbz r0, 0x130(r1) +/* 801F2BD0 001EFB30 98 1B 01 50 */ stb r0, 0x150(r27) +lbl_801F2BD4: +/* 801F2BD4 001EFB34 E3 E1 0B 38 */ psq_l f31, -1224(r1), 0, qr0 +/* 801F2BD8 001EFB38 CB E1 0B 30 */ lfd f31, 0xb30(r1) +/* 801F2BDC 001EFB3C E3 C1 0B 28 */ psq_l f30, -1240(r1), 0, qr0 +/* 801F2BE0 001EFB40 CB C1 0B 20 */ lfd f30, 0xb20(r1) +/* 801F2BE4 001EFB44 E3 A1 0B 18 */ psq_l f29, -1256(r1), 0, qr0 +/* 801F2BE8 001EFB48 CB A1 0B 10 */ lfd f29, 0xb10(r1) +/* 801F2BEC 001EFB4C E3 81 0B 08 */ psq_l f28, -1272(r1), 0, qr0 +/* 801F2BF0 001EFB50 CB 81 0B 00 */ lfd f28, 0xb00(r1) +/* 801F2BF4 001EFB54 E3 61 0A F8 */ psq_l f27, -1288(r1), 0, qr0 +/* 801F2BF8 001EFB58 CB 61 0A F0 */ lfd f27, 0xaf0(r1) +/* 801F2BFC 001EFB5C E3 41 0A E8 */ psq_l f26, -1304(r1), 0, qr0 +/* 801F2C00 001EFB60 CB 41 0A E0 */ lfd f26, 0xae0(r1) +/* 801F2C04 001EFB64 BB 21 0A C4 */ lmw r25, 0xac4(r1) +/* 801F2C08 001EFB68 80 01 0B 44 */ lwz r0, 0xb44(r1) +/* 801F2C0C 001EFB6C 7C 08 03 A6 */ mtlr r0 +/* 801F2C10 001EFB70 38 21 0B 40 */ addi r1, r1, 0xb40 +/* 801F2C14 001EFB74 4E 80 00 20 */ blr + +.global UpdateTrailObjects__20CIceAttackProjectileFfR13CStateManager +UpdateTrailObjects__20CIceAttackProjectileFfR13CStateManager: +/* 801F2C18 001EFB78 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801F2C1C 001EFB7C 7C 08 02 A6 */ mflr r0 +/* 801F2C20 001EFB80 90 01 00 44 */ stw r0, 0x44(r1) +/* 801F2C24 001EFB84 DB E1 00 30 */ stfd f31, 0x30(r1) +/* 801F2C28 001EFB88 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 801F2C2C 001EFB8C BF 61 00 1C */ stmw r27, 0x1c(r1) +/* 801F2C30 001EFB90 7C 7E 1B 78 */ mr r30, r3 +/* 801F2C34 001EFB94 FF E0 08 90 */ fmr f31, f1 +/* 801F2C38 001EFB98 88 03 01 90 */ lbz r0, 0x190(r3) +/* 801F2C3C 001EFB9C 7C 9F 23 78 */ mr r31, r4 +/* 801F2C40 001EFBA0 28 00 00 00 */ cmplwi r0, 0 +/* 801F2C44 001EFBA4 41 82 01 18 */ beq lbl_801F2D5C +/* 801F2C48 001EFBA8 C0 3E 01 7C */ lfs f1, 0x17c(r30) +/* 801F2C4C 001EFBAC C0 02 AF 10 */ lfs f0, lbl_805ACC30@sda21(r2) +/* 801F2C50 001EFBB0 EC 21 F8 2A */ fadds f1, f1, f31 +/* 801F2C54 001EFBB4 D0 3E 01 7C */ stfs f1, 0x17c(r30) +/* 801F2C58 001EFBB8 C0 3E 01 7C */ lfs f1, 0x17c(r30) +/* 801F2C5C 001EFBBC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801F2C60 001EFBC0 40 81 00 FC */ ble lbl_801F2D5C +/* 801F2C64 001EFBC4 88 1E 01 91 */ lbz r0, 0x191(r30) +/* 801F2C68 001EFBC8 28 00 00 00 */ cmplwi r0, 0 +/* 801F2C6C 001EFBCC 40 82 00 38 */ bne lbl_801F2CA4 +/* 801F2C70 001EFBD0 A0 9E 01 8A */ lhz r4, 0x18a(r30) +/* 801F2C74 001EFBD4 38 61 00 0C */ addi r3, r1, 0xc +/* 801F2C78 001EFBD8 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 801F2C7C 001EFBDC 38 A0 00 7F */ li r5, 0x7f +/* 801F2C80 001EFBE0 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 801F2C84 001EFBE4 38 C0 00 40 */ li r6, 0x40 +/* 801F2C88 001EFBE8 38 E0 00 00 */ li r7, 0 +/* 801F2C8C 001EFBEC 39 20 00 01 */ li r9, 1 +/* 801F2C90 001EFBF0 48 0F 70 E5 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 801F2C94 001EFBF4 80 61 00 0C */ lwz r3, 0xc(r1) +/* 801F2C98 001EFBF8 38 00 00 01 */ li r0, 1 +/* 801F2C9C 001EFBFC 90 7E 01 94 */ stw r3, 0x194(r30) +/* 801F2CA0 001EFC00 98 1E 01 91 */ stb r0, 0x191(r30) +lbl_801F2CA4: +/* 801F2CA4 001EFC04 C0 3E 01 7C */ lfs f1, 0x17c(r30) +/* 801F2CA8 001EFC08 3B 60 00 00 */ li r27, 0 +/* 801F2CAC 001EFC0C C0 02 AF 10 */ lfs f0, lbl_805ACC30@sda21(r2) +/* 801F2CB0 001EFC10 3B A0 00 00 */ li r29, 0 +/* 801F2CB4 001EFC14 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801F2CB8 001EFC18 D0 1E 01 7C */ stfs f0, 0x17c(r30) +/* 801F2CBC 001EFC1C 48 00 00 94 */ b lbl_801F2D50 +lbl_801F2CC0: +/* 801F2CC0 001EFC20 80 1E 01 14 */ lwz r0, 0x114(r30) +/* 801F2CC4 001EFC24 7F 80 EA 14 */ add r28, r0, r29 +/* 801F2CC8 001EFC28 7F 83 E3 78 */ mr r3, r28 +/* 801F2CCC 001EFC2C 4B FF ED E9 */ bl ExplosionStarted__Q220CIceAttackProjectile12CTrailObjectCFv +/* 801F2CD0 001EFC30 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801F2CD4 001EFC34 40 82 00 74 */ bne lbl_801F2D48 +/* 801F2CD8 001EFC38 3C 60 80 3D */ lis r3, lbl_803D2050@ha +/* 801F2CDC 001EFC3C 3B 60 00 00 */ li r27, 0 +/* 801F2CE0 001EFC40 38 83 20 50 */ addi r4, r3, lbl_803D2050@l +/* 801F2CE4 001EFC44 38 A0 00 00 */ li r5, 0 +/* 801F2CE8 001EFC48 38 60 03 40 */ li r3, 0x340 +/* 801F2CEC 001EFC4C 48 12 2B 81 */ bl __nw__FUlPCcPCc +/* 801F2CF0 001EFC50 7C 7D 1B 79 */ or. r29, r3, r3 +/* 801F2CF4 001EFC54 41 82 00 2C */ beq lbl_801F2D20 +/* 801F2CF8 001EFC58 38 61 00 10 */ addi r3, r1, 0x10 +/* 801F2CFC 001EFC5C 38 9E 00 F0 */ addi r4, r30, 0xf0 +/* 801F2D00 001EFC60 48 14 E1 A9 */ bl __ct__6CTokenFRC6CToken +/* 801F2D04 001EFC64 7F A3 EB 78 */ mr r3, r29 +/* 801F2D08 001EFC68 38 81 00 10 */ addi r4, r1, 0x10 +/* 801F2D0C 001EFC6C 3B 60 00 01 */ li r27, 1 +/* 801F2D10 001EFC70 38 A0 00 00 */ li r5, 0 +/* 801F2D14 001EFC74 38 C0 00 01 */ li r6, 1 +/* 801F2D18 001EFC78 48 12 C6 C9 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 801F2D1C 001EFC7C 7C 7D 1B 78 */ mr r29, r3 +lbl_801F2D20: +/* 801F2D20 001EFC80 7F 83 E3 78 */ mr r3, r28 +/* 801F2D24 001EFC84 7F A4 EB 78 */ mr r4, r29 +/* 801F2D28 001EFC88 7F E5 FB 78 */ mr r5, r31 +/* 801F2D2C 001EFC8C 4B FF F3 19 */ bl StartExplosion__Q220CIceAttackProjectile12CTrailObjectFP11CElementGenR13CStateManager +/* 801F2D30 001EFC90 7F 60 07 75 */ extsb. r0, r27 +/* 801F2D34 001EFC94 41 82 00 28 */ beq lbl_801F2D5C +/* 801F2D38 001EFC98 38 61 00 10 */ addi r3, r1, 0x10 +/* 801F2D3C 001EFC9C 38 80 00 00 */ li r4, 0 +/* 801F2D40 001EFCA0 48 14 E1 01 */ bl __dt__6CTokenFv +/* 801F2D44 001EFCA4 48 00 00 18 */ b lbl_801F2D5C +lbl_801F2D48: +/* 801F2D48 001EFCA8 3B BD 03 24 */ addi r29, r29, 0x324 +/* 801F2D4C 001EFCAC 3B 7B 00 01 */ addi r27, r27, 1 +lbl_801F2D50: +/* 801F2D50 001EFCB0 80 1E 01 0C */ lwz r0, 0x10c(r30) +/* 801F2D54 001EFCB4 7C 1B 00 00 */ cmpw r27, r0 +/* 801F2D58 001EFCB8 41 80 FF 68 */ blt lbl_801F2CC0 +lbl_801F2D5C: +/* 801F2D5C 001EFCBC A0 1E 01 18 */ lhz r0, 0x118(r30) +/* 801F2D60 001EFCC0 7F E3 FB 78 */ mr r3, r31 +/* 801F2D64 001EFCC4 38 81 00 08 */ addi r4, r1, 8 +/* 801F2D68 001EFCC8 B0 01 00 08 */ sth r0, 8(r1) +/* 801F2D6C 001EFCCC 4B E5 98 39 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801F2D70 001EFCD0 3B A0 00 00 */ li r29, 0 +/* 801F2D74 001EFCD4 7C 7B 1B 78 */ mr r27, r3 +/* 801F2D78 001EFCD8 3B 80 00 00 */ li r28, 0 +/* 801F2D7C 001EFCDC 48 00 00 24 */ b lbl_801F2DA0 +lbl_801F2D80: +/* 801F2D80 001EFCE0 80 1E 01 14 */ lwz r0, 0x114(r30) +/* 801F2D84 001EFCE4 FC 20 F8 90 */ fmr f1, f31 +/* 801F2D88 001EFCE8 7F E4 FB 78 */ mr r4, r31 +/* 801F2D8C 001EFCEC 7F 65 DB 78 */ mr r5, r27 +/* 801F2D90 001EFCF0 7C 60 E2 14 */ add r3, r0, r28 +/* 801F2D94 001EFCF4 4B FF ED A1 */ bl Update__Q220CIceAttackProjectile12CTrailObjectFfR13CStateManagerPC13CPhysicsActor +/* 801F2D98 001EFCF8 3B 9C 03 24 */ addi r28, r28, 0x324 +/* 801F2D9C 001EFCFC 3B BD 00 01 */ addi r29, r29, 1 +lbl_801F2DA0: +/* 801F2DA0 001EFD00 80 1E 01 0C */ lwz r0, 0x10c(r30) +/* 801F2DA4 001EFD04 7C 1D 00 00 */ cmpw r29, r0 +/* 801F2DA8 001EFD08 41 80 FF D8 */ blt lbl_801F2D80 +/* 801F2DAC 001EFD0C E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 801F2DB0 001EFD10 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 801F2DB4 001EFD14 BB 61 00 1C */ lmw r27, 0x1c(r1) +/* 801F2DB8 001EFD18 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801F2DBC 001EFD1C 7C 08 03 A6 */ mtlr r0 +/* 801F2DC0 001EFD20 38 21 00 40 */ addi r1, r1, 0x40 +/* 801F2DC4 001EFD24 4E 80 00 20 */ blr + +.global CreateTrailObject__20CIceAttackProjectileFR13CStateManagerRC9CVector3ff +CreateTrailObject__20CIceAttackProjectileFR13CStateManagerRC9CVector3ff: +/* 801F2DC8 001EFD28 94 21 FB F0 */ stwu r1, -0x410(r1) +/* 801F2DCC 001EFD2C 7C 08 02 A6 */ mflr r0 +/* 801F2DD0 001EFD30 90 01 04 14 */ stw r0, 0x414(r1) +/* 801F2DD4 001EFD34 DB E1 04 00 */ stfd f31, 0x400(r1) +/* 801F2DD8 001EFD38 F3 E1 04 08 */ psq_st f31, 1032(r1), 0, qr0 +/* 801F2DDC 001EFD3C BF 41 03 E8 */ stmw r26, 0x3e8(r1) +/* 801F2DE0 001EFD40 FF E0 08 90 */ fmr f31, f1 +/* 801F2DE4 001EFD44 7C 7C 1B 78 */ mr r28, r3 +/* 801F2DE8 001EFD48 7C 9D 23 78 */ mr r29, r4 +/* 801F2DEC 001EFD4C 7C BE 2B 78 */ mr r30, r5 +/* 801F2DF0 001EFD50 38 61 00 18 */ addi r3, r1, 0x18 +/* 801F2DF4 001EFD54 4B E5 A2 E9 */ bl AllocateUniqueId__13CStateManagerFv +/* 801F2DF8 001EFD58 A0 01 00 18 */ lhz r0, 0x18(r1) +/* 801F2DFC 001EFD5C 3C 60 80 3D */ lis r3, lbl_803D2050@ha +/* 801F2E00 001EFD60 38 83 20 50 */ addi r4, r3, lbl_803D2050@l +/* 801F2E04 001EFD64 38 A0 00 00 */ li r5, 0 +/* 801F2E08 001EFD68 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 801F2E0C 001EFD6C 38 60 03 10 */ li r3, 0x310 +/* 801F2E10 001EFD70 48 12 2A 5D */ bl __nw__FUlPCcPCc +/* 801F2E14 001EFD74 7C 7F 1B 79 */ or. r31, r3, r3 +/* 801F2E18 001EFD78 41 82 00 44 */ beq lbl_801F2E5C +/* 801F2E1C 001EFD7C A1 3C 00 08 */ lhz r9, 8(r28) +/* 801F2E20 001EFD80 38 81 00 0C */ addi r4, r1, 0xc +/* 801F2E24 001EFD84 A0 01 00 1C */ lhz r0, 0x1c(r1) +/* 801F2E28 001EFD88 38 A1 00 2C */ addi r5, r1, 0x2c +/* 801F2E2C 001EFD8C B1 21 00 14 */ sth r9, 0x14(r1) +/* 801F2E30 001EFD90 38 C1 00 14 */ addi r6, r1, 0x14 +/* 801F2E34 001EFD94 C0 22 AF 0C */ lfs f1, lbl_805ACC2C@sda21(r2) +/* 801F2E38 001EFD98 38 E0 00 00 */ li r7, 0 +/* 801F2E3C 001EFD9C 81 1C 00 04 */ lwz r8, 4(r28) +/* 801F2E40 001EFDA0 B1 21 00 10 */ sth r9, 0x10(r1) +/* 801F2E44 001EFDA4 C0 42 AF 14 */ lfs f2, lbl_805ACC34@sda21(r2) +/* 801F2E48 001EFDA8 91 01 00 28 */ stw r8, 0x28(r1) +/* 801F2E4C 001EFDAC 91 01 00 2C */ stw r8, 0x2c(r1) +/* 801F2E50 001EFDB0 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801F2E54 001EFDB4 4B FB 65 E1 */ bl __ct__15CCollisionActorF9TUniqueId7TAreaId9TUniqueIdbff +/* 801F2E58 001EFDB8 7C 7F 1B 78 */ mr r31, r3 +lbl_801F2E5C: +/* 801F2E5C 001EFDBC 38 7F 00 34 */ addi r3, r31, 0x34 +/* 801F2E60 001EFDC0 38 9C 00 34 */ addi r4, r28, 0x34 +/* 801F2E64 001EFDC4 48 11 FC DD */ bl __as__12CTransform4fFRC12CTransform4f +/* 801F2E68 001EFDC8 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 801F2E6C 001EFDCC 38 A0 00 01 */ li r5, 1 +/* 801F2E70 001EFDD0 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 801F2E74 001EFDD4 C0 22 AE E8 */ lfs f1, lbl_805ACC08@sda21(r2) +/* 801F2E78 001EFDD8 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 801F2E7C 001EFDDC 7F E3 FB 78 */ mr r3, r31 +/* 801F2E80 001EFDE0 C0 02 AE EC */ lfs f0, lbl_805ACC0C@sda21(r2) +/* 801F2E84 001EFDE4 38 81 00 80 */ addi r4, r1, 0x80 +/* 801F2E88 001EFDE8 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 801F2E8C 001EFDEC 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 801F2E90 001EFDF0 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 801F2E94 001EFDF4 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 801F2E98 001EFDF8 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d +/* 801F2E9C 001EFDFC 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 801F2EA0 001EFE00 C0 DF 00 60 */ lfs f6, 0x60(r31) +/* 801F2EA4 001EFE04 C0 BF 00 50 */ lfs f5, 0x50(r31) +/* 801F2EA8 001EFE08 C0 5F 00 40 */ lfs f2, 0x40(r31) +/* 801F2EAC 001EFE0C EC 66 00 28 */ fsubs f3, f6, f0 +/* 801F2EB0 001EFE10 EC 85 08 28 */ fsubs f4, f5, f1 +/* 801F2EB4 001EFE14 D0 A1 00 78 */ stfs f5, 0x78(r1) +/* 801F2EB8 001EFE18 EC 02 08 28 */ fsubs f0, f2, f1 +/* 801F2EBC 001EFE1C D0 41 00 74 */ stfs f2, 0x74(r1) +/* 801F2EC0 001EFE20 D0 C1 00 7C */ stfs f6, 0x7c(r1) +/* 801F2EC4 001EFE24 D0 01 00 80 */ stfs f0, 0x80(r1) +/* 801F2EC8 001EFE28 D0 81 00 84 */ stfs f4, 0x84(r1) +/* 801F2ECC 001EFE2C D0 61 00 88 */ stfs f3, 0x88(r1) +/* 801F2ED0 001EFE30 4B E5 FF BD */ bl SetTranslation__6CActorFRC9CVector3f +/* 801F2ED4 001EFE34 80 9F 00 68 */ lwz r4, 0x68(r31) +/* 801F2ED8 001EFE38 3C 00 00 20 */ lis r0, 0x20 +/* 801F2EDC 001EFE3C 7F E3 FB 78 */ mr r3, r31 +/* 801F2EE0 001EFE40 60 84 08 00 */ ori r4, r4, 0x800 +/* 801F2EE4 001EFE44 90 9F 00 68 */ stw r4, 0x68(r31) +/* 801F2EE8 001EFE48 80 BF 00 6C */ lwz r5, 0x6c(r31) +/* 801F2EEC 001EFE4C 7C A0 03 78 */ or r0, r5, r0 +/* 801F2EF0 001EFE50 90 1F 00 6C */ stw r0, 0x6c(r31) +/* 801F2EF4 001EFE54 4B E6 09 C9 */ bl GetMaterialFilter__6CActorCFv +/* 801F2EF8 001EFE58 80 03 00 00 */ lwz r0, 0(r3) +/* 801F2EFC 001EFE5C 38 80 00 01 */ li r4, 1 +/* 801F2F00 001EFE60 80 C3 00 04 */ lwz r6, 4(r3) +/* 801F2F04 001EFE64 80 AD 92 A4 */ lwz r5, lbl_805A7E64@sda21(r13) +/* 801F2F08 001EFE68 90 C1 00 AC */ stw r6, 0xac(r1) +/* 801F2F0C 001EFE6C 90 01 00 A8 */ stw r0, 0xa8(r1) +/* 801F2F10 001EFE70 80 03 00 08 */ lwz r0, 8(r3) +/* 801F2F14 001EFE74 80 C3 00 0C */ lwz r6, 0xc(r3) +/* 801F2F18 001EFE78 90 C1 00 B4 */ stw r6, 0xb4(r1) +/* 801F2F1C 001EFE7C 90 01 00 B0 */ stw r0, 0xb0(r1) +/* 801F2F20 001EFE80 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801F2F24 001EFE84 38 60 00 00 */ li r3, 0 +/* 801F2F28 001EFE88 90 01 00 B8 */ stw r0, 0xb8(r1) +/* 801F2F2C 001EFE8C 48 19 6F C9 */ bl __shl2i +/* 801F2F30 001EFE90 80 AD 92 A8 */ lwz r5, lbl_805A7E68@sda21(r13) +/* 801F2F34 001EFE94 7C 9A 23 78 */ mr r26, r4 +/* 801F2F38 001EFE98 7C 7B 1B 78 */ mr r27, r3 +/* 801F2F3C 001EFE9C 38 60 00 00 */ li r3, 0 +/* 801F2F40 001EFEA0 38 80 00 01 */ li r4, 1 +/* 801F2F44 001EFEA4 48 19 6F B1 */ bl __shl2i +/* 801F2F48 001EFEA8 80 01 00 B0 */ lwz r0, 0xb0(r1) +/* 801F2F4C 001EFEAC 7F 7B 1B 78 */ or r27, r27, r3 +/* 801F2F50 001EFEB0 7F 5A 23 78 */ or r26, r26, r4 +/* 801F2F54 001EFEB4 80 81 00 B4 */ lwz r4, 0xb4(r1) +/* 801F2F58 001EFEB8 7C 00 DB 78 */ or r0, r0, r27 +/* 801F2F5C 001EFEBC 7F E3 FB 78 */ mr r3, r31 +/* 801F2F60 001EFEC0 7C 85 D3 78 */ or r5, r4, r26 +/* 801F2F64 001EFEC4 90 01 00 B0 */ stw r0, 0xb0(r1) +/* 801F2F68 001EFEC8 38 81 00 A8 */ addi r4, r1, 0xa8 +/* 801F2F6C 001EFECC 90 A1 00 B4 */ stw r5, 0xb4(r1) +/* 801F2F70 001EFED0 4B E6 09 31 */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter +/* 801F2F74 001EFED4 7F A3 EB 78 */ mr r3, r29 +/* 801F2F78 001EFED8 7F E4 FB 78 */ mr r4, r31 +/* 801F2F7C 001EFEDC 4B E5 9D 79 */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +/* 801F2F80 001EFEE0 3C 60 80 3D */ lis r3, lbl_803D2050@ha +/* 801F2F84 001EFEE4 3B 40 00 00 */ li r26, 0 +/* 801F2F88 001EFEE8 38 83 20 50 */ addi r4, r3, lbl_803D2050@l +/* 801F2F8C 001EFEEC 38 A0 00 00 */ li r5, 0 +/* 801F2F90 001EFEF0 38 60 03 40 */ li r3, 0x340 +/* 801F2F94 001EFEF4 48 12 28 D9 */ bl __nw__FUlPCcPCc +/* 801F2F98 001EFEF8 7C 7F 1B 79 */ or. r31, r3, r3 +/* 801F2F9C 001EFEFC 41 82 00 2C */ beq lbl_801F2FC8 +/* 801F2FA0 001EFF00 38 61 00 30 */ addi r3, r1, 0x30 +/* 801F2FA4 001EFF04 38 9C 00 E8 */ addi r4, r28, 0xe8 +/* 801F2FA8 001EFF08 48 14 DF 01 */ bl __ct__6CTokenFRC6CToken +/* 801F2FAC 001EFF0C 7F E3 FB 78 */ mr r3, r31 +/* 801F2FB0 001EFF10 38 81 00 30 */ addi r4, r1, 0x30 +/* 801F2FB4 001EFF14 3B 40 00 01 */ li r26, 1 +/* 801F2FB8 001EFF18 38 A0 00 01 */ li r5, 1 +/* 801F2FBC 001EFF1C 38 C0 00 01 */ li r6, 1 +/* 801F2FC0 001EFF20 48 12 C4 21 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 801F2FC4 001EFF24 7C 7F 1B 78 */ mr r31, r3 +lbl_801F2FC8: +/* 801F2FC8 001EFF28 7F 40 07 75 */ extsb. r0, r26 +/* 801F2FCC 001EFF2C 7F FA FB 78 */ mr r26, r31 +/* 801F2FD0 001EFF30 41 82 00 10 */ beq lbl_801F2FE0 +/* 801F2FD4 001EFF34 38 61 00 30 */ addi r3, r1, 0x30 +/* 801F2FD8 001EFF38 38 80 00 00 */ li r4, 0 +/* 801F2FDC 001EFF3C 48 14 DE 65 */ bl __dt__6CTokenFv +lbl_801F2FE0: +/* 801F2FE0 001EFF40 88 1A 02 6D */ lbz r0, 0x26d(r26) +/* 801F2FE4 001EFF44 38 60 00 01 */ li r3, 1 +/* 801F2FE8 001EFF48 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 801F2FEC 001EFF4C C0 02 AE E8 */ lfs f0, lbl_805ACC08@sda21(r2) +/* 801F2FF0 001EFF50 98 1A 02 6D */ stb r0, 0x26d(r26) +/* 801F2FF4 001EFF54 38 61 00 5C */ addi r3, r1, 0x5c +/* 801F2FF8 001EFF58 A0 01 00 1C */ lhz r0, 0x1c(r1) +/* 801F2FFC 001EFF5C 38 9C 00 34 */ addi r4, r28, 0x34 +/* 801F3000 001EFF60 C0 3C 01 70 */ lfs f1, 0x170(r28) +/* 801F3004 001EFF64 38 A1 00 50 */ addi r5, r1, 0x50 +/* 801F3008 001EFF68 EC 21 07 F2 */ fmuls f1, f1, f31 +/* 801F300C 001EFF6C D0 01 00 50 */ stfs f0, 0x50(r1) +/* 801F3010 001EFF70 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 801F3014 001EFF74 D0 21 00 54 */ stfs f1, 0x54(r1) +/* 801F3018 001EFF78 C0 5C 00 60 */ lfs f2, 0x60(r28) +/* 801F301C 001EFF7C C0 3C 00 50 */ lfs f1, 0x50(r28) +/* 801F3020 001EFF80 C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 801F3024 001EFF84 D0 01 00 68 */ stfs f0, 0x68(r1) +/* 801F3028 001EFF88 D0 21 00 6C */ stfs f1, 0x6c(r1) +/* 801F302C 001EFF8C D0 41 00 70 */ stfs f2, 0x70(r1) +/* 801F3030 001EFF90 B0 01 00 08 */ sth r0, 8(r1) +/* 801F3034 001EFF94 48 11 FA 4D */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 801F3038 001EFF98 7F 44 D3 78 */ mr r4, r26 +/* 801F303C 001EFF9C 7F C7 F3 78 */ mr r7, r30 +/* 801F3040 001EFFA0 38 61 00 C0 */ addi r3, r1, 0xc0 +/* 801F3044 001EFFA4 38 A1 00 08 */ addi r5, r1, 8 +/* 801F3048 001EFFA8 38 C1 00 68 */ addi r6, r1, 0x68 +/* 801F304C 001EFFAC 39 01 00 5C */ addi r8, r1, 0x5c +/* 801F3050 001EFFB0 4B FF F1 81 */ bl __ct__Q220CIceAttackProjectile12CTrailObjectFP11CElementGen9TUniqueIdRC9CVector3fRC9CVector3fRC9CVector3f +/* 801F3054 001EFFB4 38 80 00 02 */ li r4, 2 +/* 801F3058 001EFFB8 88 01 03 70 */ lbz r0, 0x370(r1) +/* 801F305C 001EFFBC 7C 64 00 D0 */ neg r3, r4 +/* 801F3060 001EFFC0 90 81 03 90 */ stw r4, 0x390(r1) +/* 801F3064 001EFFC4 7C 63 20 78 */ andc r3, r3, r4 +/* 801F3068 001EFFC8 3B 41 00 D8 */ addi r26, r1, 0xd8 +/* 801F306C 001EFFCC 54 64 0F FE */ srwi r4, r3, 0x1f +/* 801F3070 001EFFD0 38 61 00 8C */ addi r3, r1, 0x8c +/* 801F3074 001EFFD4 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 801F3078 001EFFD8 38 81 00 44 */ addi r4, r1, 0x44 +/* 801F307C 001EFFDC 98 01 03 70 */ stb r0, 0x370(r1) +/* 801F3080 001EFFE0 38 A1 00 38 */ addi r5, r1, 0x38 +/* 801F3084 001EFFE4 C0 5C 00 60 */ lfs f2, 0x60(r28) +/* 801F3088 001EFFE8 C0 3C 00 50 */ lfs f1, 0x50(r28) +/* 801F308C 001EFFEC C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 801F3090 001EFFF0 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 801F3094 001EFFF4 D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 801F3098 001EFFF8 D0 41 00 40 */ stfs f2, 0x40(r1) +/* 801F309C 001EFFFC D0 01 00 44 */ stfs f0, 0x44(r1) +/* 801F30A0 001F0000 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 801F30A4 001F0004 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 801F30A8 001F0008 81 1C 00 04 */ lwz r8, 4(r28) +/* 801F30AC 001F000C 80 FD 08 50 */ lwz r7, 0x850(r29) +/* 801F30B0 001F0010 55 06 18 38 */ slwi r6, r8, 3 +/* 801F30B4 001F0014 91 01 00 20 */ stw r8, 0x20(r1) +/* 801F30B8 001F0018 80 E7 00 20 */ lwz r7, 0x20(r7) +/* 801F30BC 001F001C 38 06 00 04 */ addi r0, r6, 4 +/* 801F30C0 001F0020 91 01 00 24 */ stw r8, 0x24(r1) +/* 801F30C4 001F0024 7F C7 00 2E */ lwzx r30, r7, r0 +/* 801F30C8 001F0028 48 14 54 41 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801F30CC 001F002C 7C 66 1B 78 */ mr r6, r3 +/* 801F30D0 001F0030 7F 43 D3 78 */ mr r3, r26 +/* 801F30D4 001F0034 7F A4 EB 78 */ mr r4, r29 +/* 801F30D8 001F0038 7F C5 F3 78 */ mr r5, r30 +/* 801F30DC 001F003C 4B F1 0C E5 */ bl BuildAreaLightList__12CActorLightsFRC13CStateManagerRC9CGameAreaRC6CAABox +/* 801F30E0 001F0040 80 7C 01 0C */ lwz r3, 0x10c(r28) +/* 801F30E4 001F0044 80 1C 01 10 */ lwz r0, 0x110(r28) +/* 801F30E8 001F0048 38 83 00 01 */ addi r4, r3, 1 +/* 801F30EC 001F004C 7C 00 20 00 */ cmpw r0, r4 +/* 801F30F0 001F0050 40 80 00 0C */ bge lbl_801F30FC +/* 801F30F4 001F0054 38 7C 01 08 */ addi r3, r28, 0x108 +/* 801F30F8 001F0058 48 00 0E 21 */ bl sub_801f3f18 +lbl_801F30FC: +/* 801F30FC 001F005C 38 7C 01 08 */ addi r3, r28, 0x108 +/* 801F3100 001F0060 38 81 00 C0 */ addi r4, r1, 0xc0 +/* 801F3104 001F0064 48 00 00 8D */ bl sub_801f3190 +/* 801F3108 001F0068 7F 43 D3 78 */ mr r3, r26 +/* 801F310C 001F006C 38 80 FF FF */ li r4, -1 +/* 801F3110 001F0070 4B F1 1F C5 */ bl __dt__12CActorLightsFv +/* 801F3114 001F0074 34 61 00 C8 */ addic. r3, r1, 0xc8 +/* 801F3118 001F0078 41 82 00 30 */ beq lbl_801F3148 +/* 801F311C 001F007C 88 03 00 00 */ lbz r0, 0(r3) +/* 801F3120 001F0080 28 00 00 00 */ cmplwi r0, 0 +/* 801F3124 001F0084 41 82 00 24 */ beq lbl_801F3148 +/* 801F3128 001F0088 80 61 00 CC */ lwz r3, 0xcc(r1) +/* 801F312C 001F008C 28 03 00 00 */ cmplwi r3, 0 +/* 801F3130 001F0090 41 82 00 18 */ beq lbl_801F3148 +/* 801F3134 001F0094 81 83 00 00 */ lwz r12, 0(r3) +/* 801F3138 001F0098 38 80 00 01 */ li r4, 1 +/* 801F313C 001F009C 81 8C 00 08 */ lwz r12, 8(r12) +/* 801F3140 001F00A0 7D 89 03 A6 */ mtctr r12 +/* 801F3144 001F00A4 4E 80 04 21 */ bctrl +lbl_801F3148: +/* 801F3148 001F00A8 88 01 00 C0 */ lbz r0, 0xc0(r1) +/* 801F314C 001F00AC 28 00 00 00 */ cmplwi r0, 0 +/* 801F3150 001F00B0 41 82 00 24 */ beq lbl_801F3174 +/* 801F3154 001F00B4 80 61 00 C4 */ lwz r3, 0xc4(r1) +/* 801F3158 001F00B8 28 03 00 00 */ cmplwi r3, 0 +/* 801F315C 001F00BC 41 82 00 18 */ beq lbl_801F3174 +/* 801F3160 001F00C0 81 83 00 00 */ lwz r12, 0(r3) +/* 801F3164 001F00C4 38 80 00 01 */ li r4, 1 +/* 801F3168 001F00C8 81 8C 00 08 */ lwz r12, 8(r12) +/* 801F316C 001F00CC 7D 89 03 A6 */ mtctr r12 +/* 801F3170 001F00D0 4E 80 04 21 */ bctrl +lbl_801F3174: +/* 801F3174 001F00D4 E3 E1 04 08 */ psq_l f31, 1032(r1), 0, qr0 +/* 801F3178 001F00D8 CB E1 04 00 */ lfd f31, 0x400(r1) +/* 801F317C 001F00DC BB 41 03 E8 */ lmw r26, 0x3e8(r1) +/* 801F3180 001F00E0 80 01 04 14 */ lwz r0, 0x414(r1) +/* 801F3184 001F00E4 7C 08 03 A6 */ mtlr r0 +/* 801F3188 001F00E8 38 21 04 10 */ addi r1, r1, 0x410 +/* 801F318C 001F00EC 4E 80 00 20 */ blr + +.global sub_801f3190 +sub_801f3190: +/* 801F3190 001F00F0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801F3194 001F00F4 7C 08 02 A6 */ mflr r0 +/* 801F3198 001F00F8 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F319C 001F00FC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801F31A0 001F0100 7C 9F 23 78 */ mr r31, r4 +/* 801F31A4 001F0104 93 C1 00 08 */ stw r30, 8(r1) +/* 801F31A8 001F0108 7C 7E 1B 78 */ mr r30, r3 +/* 801F31AC 001F010C 80 03 00 04 */ lwz r0, 4(r3) +/* 801F31B0 001F0110 80 A3 00 08 */ lwz r5, 8(r3) +/* 801F31B4 001F0114 7C 00 28 00 */ cmpw r0, r5 +/* 801F31B8 001F0118 41 80 00 18 */ blt lbl_801F31D0 +/* 801F31BC 001F011C 2C 05 00 00 */ cmpwi r5, 0 +/* 801F31C0 001F0120 38 80 00 04 */ li r4, 4 +/* 801F31C4 001F0124 41 82 00 08 */ beq lbl_801F31CC +/* 801F31C8 001F0128 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801F31CC: +/* 801F31CC 001F012C 48 00 0D 4D */ bl sub_801f3f18 +lbl_801F31D0: +/* 801F31D0 001F0130 80 1E 00 04 */ lwz r0, 4(r30) +/* 801F31D4 001F0134 7F E4 FB 78 */ mr r4, r31 +/* 801F31D8 001F0138 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 801F31DC 001F013C 1C 00 03 24 */ mulli r0, r0, 0x324 +/* 801F31E0 001F0140 7C 63 02 14 */ add r3, r3, r0 +/* 801F31E4 001F0144 48 00 00 29 */ bl sub_801f320c +/* 801F31E8 001F0148 80 7E 00 04 */ lwz r3, 4(r30) +/* 801F31EC 001F014C 38 03 00 01 */ addi r0, r3, 1 +/* 801F31F0 001F0150 90 1E 00 04 */ stw r0, 4(r30) +/* 801F31F4 001F0154 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801F31F8 001F0158 83 C1 00 08 */ lwz r30, 8(r1) +/* 801F31FC 001F015C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801F3200 001F0160 7C 08 03 A6 */ mtlr r0 +/* 801F3204 001F0164 38 21 00 10 */ addi r1, r1, 0x10 +/* 801F3208 001F0168 4E 80 00 20 */ blr + +.global sub_801f320c +sub_801f320c: +/* 801F320C 001F016C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801F3210 001F0170 7C 08 02 A6 */ mflr r0 +/* 801F3214 001F0174 28 03 00 00 */ cmplwi r3, 0 +/* 801F3218 001F0178 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F321C 001F017C 41 82 00 08 */ beq lbl_801F3224 +/* 801F3220 001F0180 48 00 00 15 */ bl sub_801f3234 +lbl_801F3224: +/* 801F3224 001F0184 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801F3228 001F0188 7C 08 03 A6 */ mtlr r0 +/* 801F322C 001F018C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801F3230 001F0190 4E 80 00 20 */ blr + +.global sub_801f3234 +sub_801f3234: +/* 801F3234 001F0194 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801F3238 001F0198 7C 08 02 A6 */ mflr r0 +/* 801F323C 001F019C 38 A0 00 00 */ li r5, 0 +/* 801F3240 001F01A0 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F3244 001F01A4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801F3248 001F01A8 7C 9F 23 78 */ mr r31, r4 +/* 801F324C 001F01AC 93 C1 00 08 */ stw r30, 8(r1) +/* 801F3250 001F01B0 7C 7E 1B 78 */ mr r30, r3 +/* 801F3254 001F01B4 38 7E 00 18 */ addi r3, r30, 0x18 +/* 801F3258 001F01B8 88 04 00 00 */ lbz r0, 0(r4) +/* 801F325C 001F01BC 38 9F 00 18 */ addi r4, r31, 0x18 +/* 801F3260 001F01C0 98 1E 00 00 */ stb r0, 0(r30) +/* 801F3264 001F01C4 80 1F 00 04 */ lwz r0, 4(r31) +/* 801F3268 001F01C8 90 1E 00 04 */ stw r0, 4(r30) +/* 801F326C 001F01CC 98 BF 00 00 */ stb r5, 0(r31) +/* 801F3270 001F01D0 88 1F 00 08 */ lbz r0, 8(r31) +/* 801F3274 001F01D4 98 1E 00 08 */ stb r0, 8(r30) +/* 801F3278 001F01D8 80 1F 00 0C */ lwz r0, 0xc(r31) +/* 801F327C 001F01DC 90 1E 00 0C */ stw r0, 0xc(r30) +/* 801F3280 001F01E0 98 BF 00 08 */ stb r5, 8(r31) +/* 801F3284 001F01E4 A0 1F 00 10 */ lhz r0, 0x10(r31) +/* 801F3288 001F01E8 B0 1E 00 10 */ sth r0, 0x10(r30) +/* 801F328C 001F01EC C0 1F 00 14 */ lfs f0, 0x14(r31) +/* 801F3290 001F01F0 D0 1E 00 14 */ stfs f0, 0x14(r30) +/* 801F3294 001F01F4 48 00 00 79 */ bl sub_801f330c +/* 801F3298 001F01F8 C0 1F 02 F8 */ lfs f0, 0x2f8(r31) +/* 801F329C 001F01FC 7F C3 F3 78 */ mr r3, r30 +/* 801F32A0 001F0200 D0 1E 02 F8 */ stfs f0, 0x2f8(r30) +/* 801F32A4 001F0204 C0 1F 02 FC */ lfs f0, 0x2fc(r31) +/* 801F32A8 001F0208 D0 1E 02 FC */ stfs f0, 0x2fc(r30) +/* 801F32AC 001F020C C0 1F 03 00 */ lfs f0, 0x300(r31) +/* 801F32B0 001F0210 D0 1E 03 00 */ stfs f0, 0x300(r30) +/* 801F32B4 001F0214 C0 1F 03 04 */ lfs f0, 0x304(r31) +/* 801F32B8 001F0218 D0 1E 03 04 */ stfs f0, 0x304(r30) +/* 801F32BC 001F021C C0 1F 03 08 */ lfs f0, 0x308(r31) +/* 801F32C0 001F0220 D0 1E 03 08 */ stfs f0, 0x308(r30) +/* 801F32C4 001F0224 C0 1F 03 0C */ lfs f0, 0x30c(r31) +/* 801F32C8 001F0228 D0 1E 03 0C */ stfs f0, 0x30c(r30) +/* 801F32CC 001F022C C0 1F 03 10 */ lfs f0, 0x310(r31) +/* 801F32D0 001F0230 D0 1E 03 10 */ stfs f0, 0x310(r30) +/* 801F32D4 001F0234 C0 1F 03 14 */ lfs f0, 0x314(r31) +/* 801F32D8 001F0238 D0 1E 03 14 */ stfs f0, 0x314(r30) +/* 801F32DC 001F023C C0 1F 03 18 */ lfs f0, 0x318(r31) +/* 801F32E0 001F0240 D0 1E 03 18 */ stfs f0, 0x318(r30) +/* 801F32E4 001F0244 80 1F 03 1C */ lwz r0, 0x31c(r31) +/* 801F32E8 001F0248 90 1E 03 1C */ stw r0, 0x31c(r30) +/* 801F32EC 001F024C 88 1F 03 20 */ lbz r0, 0x320(r31) +/* 801F32F0 001F0250 98 1E 03 20 */ stb r0, 0x320(r30) +/* 801F32F4 001F0254 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801F32F8 001F0258 83 C1 00 08 */ lwz r30, 8(r1) +/* 801F32FC 001F025C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801F3300 001F0260 7C 08 03 A6 */ mtlr r0 +/* 801F3304 001F0264 38 21 00 10 */ addi r1, r1, 0x10 +/* 801F3308 001F0268 4E 80 00 20 */ blr + +.global sub_801f330c +sub_801f330c: +/* 801F330C 001F026C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801F3310 001F0270 7C 08 02 A6 */ mflr r0 +/* 801F3314 001F0274 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F3318 001F0278 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801F331C 001F027C 7C 9F 23 78 */ mr r31, r4 +/* 801F3320 001F0280 93 C1 00 08 */ stw r30, 8(r1) +/* 801F3324 001F0284 7C 7E 1B 78 */ mr r30, r3 +/* 801F3328 001F0288 48 00 00 ED */ bl sub_801f3414 +/* 801F332C 001F028C 38 7E 01 44 */ addi r3, r30, 0x144 +/* 801F3330 001F0290 38 9F 01 44 */ addi r4, r31, 0x144 +/* 801F3334 001F0294 48 00 00 E1 */ bl sub_801f3414 +/* 801F3338 001F0298 C0 1F 02 88 */ lfs f0, 0x288(r31) +/* 801F333C 001F029C 7F C3 F3 78 */ mr r3, r30 +/* 801F3340 001F02A0 D0 1E 02 88 */ stfs f0, 0x288(r30) +/* 801F3344 001F02A4 C0 1F 02 8C */ lfs f0, 0x28c(r31) +/* 801F3348 001F02A8 D0 1E 02 8C */ stfs f0, 0x28c(r30) +/* 801F334C 001F02AC C0 1F 02 90 */ lfs f0, 0x290(r31) +/* 801F3350 001F02B0 D0 1E 02 90 */ stfs f0, 0x290(r30) +/* 801F3354 001F02B4 80 1F 02 94 */ lwz r0, 0x294(r31) +/* 801F3358 001F02B8 90 1E 02 94 */ stw r0, 0x294(r30) +/* 801F335C 001F02BC 88 1F 02 98 */ lbz r0, 0x298(r31) +/* 801F3360 001F02C0 98 1E 02 98 */ stb r0, 0x298(r30) +/* 801F3364 001F02C4 88 1F 02 99 */ lbz r0, 0x299(r31) +/* 801F3368 001F02C8 98 1E 02 99 */ stb r0, 0x299(r30) +/* 801F336C 001F02CC 88 1F 02 9A */ lbz r0, 0x29a(r31) +/* 801F3370 001F02D0 98 1E 02 9A */ stb r0, 0x29a(r30) +/* 801F3374 001F02D4 80 1F 02 9C */ lwz r0, 0x29c(r31) +/* 801F3378 001F02D8 90 1E 02 9C */ stw r0, 0x29c(r30) +/* 801F337C 001F02DC 80 1F 02 A0 */ lwz r0, 0x2a0(r31) +/* 801F3380 001F02E0 90 1E 02 A0 */ stw r0, 0x2a0(r30) +/* 801F3384 001F02E4 80 1F 02 A4 */ lwz r0, 0x2a4(r31) +/* 801F3388 001F02E8 90 1E 02 A4 */ stw r0, 0x2a4(r30) +/* 801F338C 001F02EC 80 1F 02 A8 */ lwz r0, 0x2a8(r31) +/* 801F3390 001F02F0 90 1E 02 A8 */ stw r0, 0x2a8(r30) +/* 801F3394 001F02F4 C0 1F 02 AC */ lfs f0, 0x2ac(r31) +/* 801F3398 001F02F8 D0 1E 02 AC */ stfs f0, 0x2ac(r30) +/* 801F339C 001F02FC C0 1F 02 B0 */ lfs f0, 0x2b0(r31) +/* 801F33A0 001F0300 D0 1E 02 B0 */ stfs f0, 0x2b0(r30) +/* 801F33A4 001F0304 C0 1F 02 B4 */ lfs f0, 0x2b4(r31) +/* 801F33A8 001F0308 D0 1E 02 B4 */ stfs f0, 0x2b4(r30) +/* 801F33AC 001F030C 80 1F 02 B8 */ lwz r0, 0x2b8(r31) +/* 801F33B0 001F0310 90 1E 02 B8 */ stw r0, 0x2b8(r30) +/* 801F33B4 001F0314 80 1F 02 BC */ lwz r0, 0x2bc(r31) +/* 801F33B8 001F0318 90 1E 02 BC */ stw r0, 0x2bc(r30) +/* 801F33BC 001F031C C0 1F 02 C0 */ lfs f0, 0x2c0(r31) +/* 801F33C0 001F0320 D0 1E 02 C0 */ stfs f0, 0x2c0(r30) +/* 801F33C4 001F0324 C0 1F 02 C4 */ lfs f0, 0x2c4(r31) +/* 801F33C8 001F0328 D0 1E 02 C4 */ stfs f0, 0x2c4(r30) +/* 801F33CC 001F032C C0 1F 02 C8 */ lfs f0, 0x2c8(r31) +/* 801F33D0 001F0330 D0 1E 02 C8 */ stfs f0, 0x2c8(r30) +/* 801F33D4 001F0334 C0 1F 02 CC */ lfs f0, 0x2cc(r31) +/* 801F33D8 001F0338 D0 1E 02 CC */ stfs f0, 0x2cc(r30) +/* 801F33DC 001F033C C0 1F 02 D0 */ lfs f0, 0x2d0(r31) +/* 801F33E0 001F0340 D0 1E 02 D0 */ stfs f0, 0x2d0(r30) +/* 801F33E4 001F0344 C0 1F 02 D4 */ lfs f0, 0x2d4(r31) +/* 801F33E8 001F0348 D0 1E 02 D4 */ stfs f0, 0x2d4(r30) +/* 801F33EC 001F034C 80 1F 02 D8 */ lwz r0, 0x2d8(r31) +/* 801F33F0 001F0350 90 1E 02 D8 */ stw r0, 0x2d8(r30) +/* 801F33F4 001F0354 80 1F 02 DC */ lwz r0, 0x2dc(r31) +/* 801F33F8 001F0358 90 1E 02 DC */ stw r0, 0x2dc(r30) +/* 801F33FC 001F035C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801F3400 001F0360 83 C1 00 08 */ lwz r30, 8(r1) +/* 801F3404 001F0364 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801F3408 001F0368 7C 08 03 A6 */ mtlr r0 +/* 801F340C 001F036C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801F3410 001F0370 4E 80 00 20 */ blr + +.global sub_801f3414 +sub_801f3414: +/* 801F3414 001F0374 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801F3418 001F0378 7C 08 02 A6 */ mflr r0 +/* 801F341C 001F037C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F3420 001F0380 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801F3424 001F0384 7C 7F 1B 78 */ mr r31, r3 +/* 801F3428 001F0388 38 64 00 04 */ addi r3, r4, 4 +/* 801F342C 001F038C 80 04 00 00 */ lwz r0, 0(r4) +/* 801F3430 001F0390 38 BF 00 04 */ addi r5, r31, 4 +/* 801F3434 001F0394 90 1F 00 00 */ stw r0, 0(r31) +/* 801F3438 001F0398 80 9F 00 00 */ lwz r4, 0(r31) +/* 801F343C 001F039C 48 00 00 1D */ bl sub_801f3458 +/* 801F3440 001F03A0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801F3444 001F03A4 7F E3 FB 78 */ mr r3, r31 +/* 801F3448 001F03A8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801F344C 001F03AC 7C 08 03 A6 */ mtlr r0 +/* 801F3450 001F03B0 38 21 00 10 */ addi r1, r1, 0x10 +/* 801F3454 001F03B4 4E 80 00 20 */ blr + +.global sub_801f3458 +sub_801f3458: +/* 801F3458 001F03B8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801F345C 001F03BC 7C 08 02 A6 */ mflr r0 +/* 801F3460 001F03C0 90 01 00 24 */ stw r0, 0x24(r1) +/* 801F3464 001F03C4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801F3468 001F03C8 7C 7F 1B 78 */ mr r31, r3 +/* 801F346C 001F03CC 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801F3470 001F03D0 7C BE 2B 78 */ mr r30, r5 +/* 801F3474 001F03D4 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801F3478 001F03D8 3B A0 00 00 */ li r29, 0 +/* 801F347C 001F03DC 93 81 00 10 */ stw r28, 0x10(r1) +/* 801F3480 001F03E0 7C 9C 23 78 */ mr r28, r4 +/* 801F3484 001F03E4 48 00 00 1C */ b lbl_801F34A0 +lbl_801F3488: +/* 801F3488 001F03E8 7F C3 F3 78 */ mr r3, r30 +/* 801F348C 001F03EC 7F E4 FB 78 */ mr r4, r31 +/* 801F3490 001F03F0 48 00 00 3D */ bl sub_801f34cc +/* 801F3494 001F03F4 3B DE 00 50 */ addi r30, r30, 0x50 +/* 801F3498 001F03F8 3B BD 00 01 */ addi r29, r29, 1 +/* 801F349C 001F03FC 3B FF 00 50 */ addi r31, r31, 0x50 +lbl_801F34A0: +/* 801F34A0 001F0400 7C 1D E0 00 */ cmpw r29, r28 +/* 801F34A4 001F0404 41 80 FF E4 */ blt lbl_801F3488 +/* 801F34A8 001F0408 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801F34AC 001F040C 7F C3 F3 78 */ mr r3, r30 +/* 801F34B0 001F0410 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801F34B4 001F0414 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801F34B8 001F0418 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801F34BC 001F041C 83 81 00 10 */ lwz r28, 0x10(r1) +/* 801F34C0 001F0420 7C 08 03 A6 */ mtlr r0 +/* 801F34C4 001F0424 38 21 00 20 */ addi r1, r1, 0x20 +/* 801F34C8 001F0428 4E 80 00 20 */ blr + +.global sub_801f34cc +sub_801f34cc: +/* 801F34CC 001F042C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801F34D0 001F0430 7C 08 02 A6 */ mflr r0 +/* 801F34D4 001F0434 28 03 00 00 */ cmplwi r3, 0 +/* 801F34D8 001F0438 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F34DC 001F043C 41 82 00 08 */ beq lbl_801F34E4 +/* 801F34E0 001F0440 4B E4 80 91 */ bl __ct__6CLightFCR6CLight +lbl_801F34E4: +/* 801F34E4 001F0444 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801F34E8 001F0448 7C 08 03 A6 */ mtlr r0 +/* 801F34EC 001F044C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801F34F0 001F0450 4E 80 00 20 */ blr + +.global Accept__20CIceAttackProjectileFR8IVisitor +Accept__20CIceAttackProjectileFR8IVisitor: +/* 801F34F4 001F0454 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801F34F8 001F0458 7C 08 02 A6 */ mflr r0 +/* 801F34FC 001F045C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F3500 001F0460 7C 60 1B 78 */ mr r0, r3 +/* 801F3504 001F0464 7C 83 23 78 */ mr r3, r4 +/* 801F3508 001F0468 81 84 00 00 */ lwz r12, 0(r4) +/* 801F350C 001F046C 7C 04 03 78 */ mr r4, r0 +/* 801F3510 001F0470 81 8C 00 08 */ lwz r12, 8(r12) +/* 801F3514 001F0474 7D 89 03 A6 */ mtctr r12 +/* 801F3518 001F0478 4E 80 04 21 */ bctrl +/* 801F351C 001F047C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801F3520 001F0480 7C 08 03 A6 */ mtlr r0 +/* 801F3524 001F0484 38 21 00 10 */ addi r1, r1, 0x10 +/* 801F3528 001F0488 4E 80 00 20 */ blr + +.global Render__20CIceAttackProjectileCFRC13CStateManager +Render__20CIceAttackProjectileCFRC13CStateManager: +/* 801F352C 001F048C 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 801F3530 001F0490 7C 08 02 A6 */ mflr r0 +/* 801F3534 001F0494 90 01 00 84 */ stw r0, 0x84(r1) +/* 801F3538 001F0498 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 801F353C 001F049C 3B E0 00 00 */ li r31, 0 +/* 801F3540 001F04A0 93 C1 00 78 */ stw r30, 0x78(r1) +/* 801F3544 001F04A4 3B C0 00 00 */ li r30, 0 +/* 801F3548 001F04A8 93 A1 00 74 */ stw r29, 0x74(r1) +/* 801F354C 001F04AC 7C 9D 23 78 */ mr r29, r4 +/* 801F3550 001F04B0 93 81 00 70 */ stw r28, 0x70(r1) +/* 801F3554 001F04B4 7C 7C 1B 78 */ mr r28, r3 +/* 801F3558 001F04B8 93 E1 00 08 */ stw r31, 8(r1) +/* 801F355C 001F04BC 48 00 00 20 */ b lbl_801F357C +lbl_801F3560: +/* 801F3560 001F04C0 80 1C 01 14 */ lwz r0, 0x114(r28) +/* 801F3564 001F04C4 7F A5 EB 78 */ mr r5, r29 +/* 801F3568 001F04C8 38 81 00 08 */ addi r4, r1, 8 +/* 801F356C 001F04CC 7C 60 FA 14 */ add r3, r0, r31 +/* 801F3570 001F04D0 4B FF E5 59 */ bl AddToRenderer__Q220CIceAttackProjectile12CTrailObjectCFRC14CFrustumPlanesRC13CStateManager +/* 801F3574 001F04D4 3B FF 03 24 */ addi r31, r31, 0x324 +/* 801F3578 001F04D8 3B DE 00 01 */ addi r30, r30, 1 +lbl_801F357C: +/* 801F357C 001F04DC 80 1C 01 0C */ lwz r0, 0x10c(r28) +/* 801F3580 001F04E0 7C 1E 00 00 */ cmpw r30, r0 +/* 801F3584 001F04E4 41 80 FF DC */ blt lbl_801F3560 +/* 801F3588 001F04E8 80 7C 01 04 */ lwz r3, 0x104(r28) +/* 801F358C 001F04EC 81 83 00 00 */ lwz r12, 0(r3) +/* 801F3590 001F04F0 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801F3594 001F04F4 7D 89 03 A6 */ mtctr r12 +/* 801F3598 001F04F8 4E 80 04 21 */ bctrl +/* 801F359C 001F04FC 80 A1 00 08 */ lwz r5, 8(r1) +/* 801F35A0 001F0500 38 60 00 00 */ li r3, 0 +/* 801F35A4 001F0504 2C 05 00 00 */ cmpwi r5, 0 +/* 801F35A8 001F0508 40 81 00 40 */ ble lbl_801F35E8 +/* 801F35AC 001F050C 2C 05 00 08 */ cmpwi r5, 8 +/* 801F35B0 001F0510 38 85 FF F8 */ addi r4, r5, -8 +/* 801F35B4 001F0514 40 81 00 20 */ ble lbl_801F35D4 +/* 801F35B8 001F0518 38 04 00 07 */ addi r0, r4, 7 +/* 801F35BC 001F051C 54 00 E8 FE */ srwi r0, r0, 3 +/* 801F35C0 001F0520 7C 09 03 A6 */ mtctr r0 +/* 801F35C4 001F0524 2C 04 00 00 */ cmpwi r4, 0 +/* 801F35C8 001F0528 40 81 00 0C */ ble lbl_801F35D4 +lbl_801F35CC: +/* 801F35CC 001F052C 38 63 00 08 */ addi r3, r3, 8 +/* 801F35D0 001F0530 42 00 FF FC */ bdnz lbl_801F35CC +lbl_801F35D4: +/* 801F35D4 001F0534 7C 03 28 50 */ subf r0, r3, r5 +/* 801F35D8 001F0538 7C 09 03 A6 */ mtctr r0 +/* 801F35DC 001F053C 7C 03 28 00 */ cmpw r3, r5 +/* 801F35E0 001F0540 40 80 00 08 */ bge lbl_801F35E8 +lbl_801F35E4: +/* 801F35E4 001F0544 42 00 00 00 */ bdnz lbl_801F35E4 +lbl_801F35E8: +/* 801F35E8 001F0548 38 00 00 00 */ li r0, 0 +/* 801F35EC 001F054C 90 01 00 08 */ stw r0, 8(r1) +/* 801F35F0 001F0550 80 01 00 84 */ lwz r0, 0x84(r1) +/* 801F35F4 001F0554 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 801F35F8 001F0558 83 C1 00 78 */ lwz r30, 0x78(r1) +/* 801F35FC 001F055C 83 A1 00 74 */ lwz r29, 0x74(r1) +/* 801F3600 001F0560 83 81 00 70 */ lwz r28, 0x70(r1) +/* 801F3604 001F0564 7C 08 03 A6 */ mtlr r0 +/* 801F3608 001F0568 38 21 00 80 */ addi r1, r1, 0x80 +/* 801F360C 001F056C 4E 80 00 20 */ blr + +.global AddToRenderer__20CIceAttackProjectileCFRC14CFrustumPlanesRC13CStateManager +AddToRenderer__20CIceAttackProjectileCFRC14CFrustumPlanesRC13CStateManager: +/* 801F3610 001F0570 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801F3614 001F0574 7C 08 02 A6 */ mflr r0 +/* 801F3618 001F0578 3C C0 80 5A */ lis r6, lbl_805A61D4@ha +/* 801F361C 001F057C 7C 64 1B 78 */ mr r4, r3 +/* 801F3620 001F0580 90 01 00 24 */ stw r0, 0x24(r1) +/* 801F3624 001F0584 38 C6 61 D4 */ addi r6, r6, lbl_805A61D4@l +/* 801F3628 001F0588 7C A3 2B 78 */ mr r3, r5 +/* 801F362C 001F058C C0 62 AF 18 */ lfs f3, lbl_805ACC38@sda21(r2) +/* 801F3630 001F0590 C0 46 00 04 */ lfs f2, 4(r6) +/* 801F3634 001F0594 38 A1 00 08 */ addi r5, r1, 8 +/* 801F3638 001F0598 C0 26 00 14 */ lfs f1, 0x14(r6) +/* 801F363C 001F059C C0 06 00 24 */ lfs f0, 0x24(r6) +/* 801F3640 001F05A0 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 801F3644 001F05A4 EC 23 00 72 */ fmuls f1, f3, f1 +/* 801F3648 001F05A8 38 C4 00 9C */ addi r6, r4, 0x9c +/* 801F364C 001F05AC EC 03 00 32 */ fmuls f0, f3, f0 +/* 801F3650 001F05B0 D0 41 00 08 */ stfs f2, 8(r1) +/* 801F3654 001F05B4 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 801F3658 001F05B8 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801F365C 001F05BC 4B E5 13 15 */ bl AddDrawableActor__13CStateManagerCFRC6CActorRC9CVector3fRC6CAABox +/* 801F3660 001F05C0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801F3664 001F05C4 7C 08 03 A6 */ mtlr r0 +/* 801F3668 001F05C8 38 21 00 20 */ addi r1, r1, 0x20 +/* 801F366C 001F05CC 4E 80 00 20 */ blr + +.global GetTouchBounds__20CIceAttackProjectileCFv +GetTouchBounds__20CIceAttackProjectileCFv: +/* 801F3670 001F05D0 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801F3674 001F05D4 7C 08 02 A6 */ mflr r0 +/* 801F3678 001F05D8 7C 85 23 78 */ mr r5, r4 +/* 801F367C 001F05DC 90 01 00 34 */ stw r0, 0x34(r1) +/* 801F3680 001F05E0 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801F3684 001F05E4 7C 7F 1B 78 */ mr r31, r3 +/* 801F3688 001F05E8 88 04 00 30 */ lbz r0, 0x30(r4) +/* 801F368C 001F05EC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801F3690 001F05F0 41 82 00 58 */ beq lbl_801F36E8 +/* 801F3694 001F05F4 38 61 00 08 */ addi r3, r1, 8 +/* 801F3698 001F05F8 38 85 01 54 */ addi r4, r5, 0x154 +/* 801F369C 001F05FC 38 A5 00 34 */ addi r5, r5, 0x34 +/* 801F36A0 001F0600 48 14 42 5D */ bl GetTransformedAABox__6CAABoxCFRC12CTransform4f +/* 801F36A4 001F0604 38 00 00 01 */ li r0, 1 +/* 801F36A8 001F0608 28 1F 00 00 */ cmplwi r31, 0 +/* 801F36AC 001F060C 98 1F 00 18 */ stb r0, 0x18(r31) +/* 801F36B0 001F0610 41 82 00 40 */ beq lbl_801F36F0 +/* 801F36B4 001F0614 C0 01 00 08 */ lfs f0, 8(r1) +/* 801F36B8 001F0618 D0 1F 00 00 */ stfs f0, 0(r31) +/* 801F36BC 001F061C C0 01 00 0C */ lfs f0, 0xc(r1) +/* 801F36C0 001F0620 D0 1F 00 04 */ stfs f0, 4(r31) +/* 801F36C4 001F0624 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 801F36C8 001F0628 D0 1F 00 08 */ stfs f0, 8(r31) +/* 801F36CC 001F062C C0 01 00 14 */ lfs f0, 0x14(r1) +/* 801F36D0 001F0630 D0 1F 00 0C */ stfs f0, 0xc(r31) +/* 801F36D4 001F0634 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 801F36D8 001F0638 D0 1F 00 10 */ stfs f0, 0x10(r31) +/* 801F36DC 001F063C C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 801F36E0 001F0640 D0 1F 00 14 */ stfs f0, 0x14(r31) +/* 801F36E4 001F0644 48 00 00 0C */ b lbl_801F36F0 +lbl_801F36E8: +/* 801F36E8 001F0648 38 00 00 00 */ li r0, 0 +/* 801F36EC 001F064C 98 1F 00 18 */ stb r0, 0x18(r31) +lbl_801F36F0: +/* 801F36F0 001F0650 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801F36F4 001F0654 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801F36F8 001F0658 7C 08 03 A6 */ mtlr r0 +/* 801F36FC 001F065C 38 21 00 30 */ addi r1, r1, 0x30 +/* 801F3700 001F0660 4E 80 00 20 */ blr + +.global Touch__20CIceAttackProjectileFR6CActorR13CStateManager +Touch__20CIceAttackProjectileFR6CActorR13CStateManager: +/* 801F3704 001F0664 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801F3708 001F0668 7C 08 02 A6 */ mflr r0 +/* 801F370C 001F066C 90 01 00 54 */ stw r0, 0x54(r1) +/* 801F3710 001F0670 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801F3714 001F0674 7C BF 2B 78 */ mr r31, r5 +/* 801F3718 001F0678 93 C1 00 48 */ stw r30, 0x48(r1) +/* 801F371C 001F067C 7C 9E 23 78 */ mr r30, r4 +/* 801F3720 001F0680 93 A1 00 44 */ stw r29, 0x44(r1) +/* 801F3724 001F0684 7C 7D 1B 78 */ mr r29, r3 +/* 801F3728 001F0688 A0 64 00 08 */ lhz r3, 8(r4) +/* 801F372C 001F068C A0 1D 01 18 */ lhz r0, 0x118(r29) +/* 801F3730 001F0690 7C 03 00 40 */ cmplw r3, r0 +/* 801F3734 001F0694 40 82 00 A0 */ bne lbl_801F37D4 +/* 801F3738 001F0698 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 801F373C 001F069C 4B E2 25 C1 */ bl GetFrozenState__7CPlayerCFv +/* 801F3740 001F06A0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801F3744 001F06A4 40 82 00 90 */ bne lbl_801F37D4 +/* 801F3748 001F06A8 A0 DD 01 88 */ lhz r6, 0x188(r29) +/* 801F374C 001F06AC 7F E4 FB 78 */ mr r4, r31 +/* 801F3750 001F06B0 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 801F3754 001F06B4 80 BD 01 84 */ lwz r5, 0x184(r29) +/* 801F3758 001F06B8 80 FD 01 8C */ lwz r7, 0x18c(r29) +/* 801F375C 001F06BC 4B E2 25 B9 */ bl Freeze__7CPlayerFR13CStateManagerUiUsUi +/* 801F3760 001F06C0 80 AD 92 98 */ lwz r5, lbl_805A7E58@sda21(r13) +/* 801F3764 001F06C4 38 60 00 00 */ li r3, 0 +/* 801F3768 001F06C8 38 80 00 01 */ li r4, 1 +/* 801F376C 001F06CC 48 19 67 89 */ bl __shl2i +/* 801F3770 001F06D0 39 40 00 00 */ li r10, 0 +/* 801F3774 001F06D4 38 00 00 03 */ li r0, 3 +/* 801F3778 001F06D8 90 81 00 24 */ stw r4, 0x24(r1) +/* 801F377C 001F06DC 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801F3780 001F06E0 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 801F3784 001F06E4 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801F3788 001F06E8 90 61 00 20 */ stw r3, 0x20(r1) +/* 801F378C 001F06EC 38 81 00 1C */ addi r4, r1, 0x1c +/* 801F3790 001F06F0 7F E3 FB 78 */ mr r3, r31 +/* 801F3794 001F06F4 38 C1 00 0C */ addi r6, r1, 0xc +/* 801F3798 001F06F8 91 41 00 2C */ stw r10, 0x2c(r1) +/* 801F379C 001F06FC 38 FD 01 1C */ addi r7, r29, 0x11c +/* 801F37A0 001F0700 39 01 00 20 */ addi r8, r1, 0x20 +/* 801F37A4 001F0704 91 41 00 28 */ stw r10, 0x28(r1) +/* 801F37A8 001F0708 90 01 00 30 */ stw r0, 0x30(r1) +/* 801F37AC 001F070C A0 1D 00 08 */ lhz r0, 8(r29) +/* 801F37B0 001F0710 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801F37B4 001F0714 A1 5E 00 08 */ lhz r10, 8(r30) +/* 801F37B8 001F0718 B0 01 00 08 */ sth r0, 8(r1) +/* 801F37BC 001F071C B1 41 00 14 */ sth r10, 0x14(r1) +/* 801F37C0 001F0720 A0 1D 00 08 */ lhz r0, 8(r29) +/* 801F37C4 001F0724 B1 41 00 10 */ sth r10, 0x10(r1) +/* 801F37C8 001F0728 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801F37CC 001F072C B0 01 00 1C */ sth r0, 0x1c(r1) +/* 801F37D0 001F0730 4B E5 68 D1 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +lbl_801F37D4: +/* 801F37D4 001F0734 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801F37D8 001F0738 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801F37DC 001F073C 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 801F37E0 001F0740 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 801F37E4 001F0744 7C 08 03 A6 */ mtlr r0 +/* 801F37E8 001F0748 38 21 00 50 */ addi r1, r1, 0x50 +/* 801F37EC 001F074C 4E 80 00 20 */ blr + +.global __dt__20CIceAttackProjectileFv +__dt__20CIceAttackProjectileFv: +/* 801F37F0 001F0750 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801F37F4 001F0754 7C 08 02 A6 */ mflr r0 +/* 801F37F8 001F0758 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F37FC 001F075C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801F3800 001F0760 7C 9F 23 78 */ mr r31, r4 +/* 801F3804 001F0764 93 C1 00 08 */ stw r30, 8(r1) +/* 801F3808 001F0768 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801F380C 001F076C 41 82 00 B8 */ beq lbl_801F38C4 +/* 801F3810 001F0770 3C 60 80 3E */ lis r3, lbl_803E6778@ha +/* 801F3814 001F0774 34 1E 01 54 */ addic. r0, r30, 0x154 +/* 801F3818 001F0778 38 03 67 78 */ addi r0, r3, lbl_803E6778@l +/* 801F381C 001F077C 90 1E 00 00 */ stw r0, 0(r30) +/* 801F3820 001F0780 41 82 00 0C */ beq lbl_801F382C +/* 801F3824 001F0784 38 00 00 00 */ li r0, 0 +/* 801F3828 001F0788 98 1E 01 6C */ stb r0, 0x16c(r30) +lbl_801F382C: +/* 801F382C 001F078C 38 7E 01 08 */ addi r3, r30, 0x108 +/* 801F3830 001F0790 38 80 FF FF */ li r4, -1 +/* 801F3834 001F0794 48 00 00 AD */ bl sub_801f38e0 +/* 801F3838 001F0798 34 1E 01 00 */ addic. r0, r30, 0x100 +/* 801F383C 001F079C 41 82 00 30 */ beq lbl_801F386C +/* 801F3840 001F07A0 88 1E 01 00 */ lbz r0, 0x100(r30) +/* 801F3844 001F07A4 28 00 00 00 */ cmplwi r0, 0 +/* 801F3848 001F07A8 41 82 00 24 */ beq lbl_801F386C +/* 801F384C 001F07AC 80 7E 01 04 */ lwz r3, 0x104(r30) +/* 801F3850 001F07B0 28 03 00 00 */ cmplwi r3, 0 +/* 801F3854 001F07B4 41 82 00 18 */ beq lbl_801F386C +/* 801F3858 001F07B8 81 83 00 00 */ lwz r12, 0(r3) +/* 801F385C 001F07BC 38 80 00 01 */ li r4, 1 +/* 801F3860 001F07C0 81 8C 00 08 */ lwz r12, 8(r12) +/* 801F3864 001F07C4 7D 89 03 A6 */ mtctr r12 +/* 801F3868 001F07C8 4E 80 04 21 */ bctrl +lbl_801F386C: +/* 801F386C 001F07CC 34 1E 00 F8 */ addic. r0, r30, 0xf8 +/* 801F3870 001F07D0 41 82 00 10 */ beq lbl_801F3880 +/* 801F3874 001F07D4 38 7E 00 F8 */ addi r3, r30, 0xf8 +/* 801F3878 001F07D8 38 80 00 00 */ li r4, 0 +/* 801F387C 001F07DC 48 14 D5 C5 */ bl __dt__6CTokenFv +lbl_801F3880: +/* 801F3880 001F07E0 34 1E 00 F0 */ addic. r0, r30, 0xf0 +/* 801F3884 001F07E4 41 82 00 10 */ beq lbl_801F3894 +/* 801F3888 001F07E8 38 7E 00 F0 */ addi r3, r30, 0xf0 +/* 801F388C 001F07EC 38 80 00 00 */ li r4, 0 +/* 801F3890 001F07F0 48 14 D5 B1 */ bl __dt__6CTokenFv +lbl_801F3894: +/* 801F3894 001F07F4 34 1E 00 E8 */ addic. r0, r30, 0xe8 +/* 801F3898 001F07F8 41 82 00 10 */ beq lbl_801F38A8 +/* 801F389C 001F07FC 38 7E 00 E8 */ addi r3, r30, 0xe8 +/* 801F38A0 001F0800 38 80 00 00 */ li r4, 0 +/* 801F38A4 001F0804 48 14 D5 9D */ bl __dt__6CTokenFv +lbl_801F38A8: +/* 801F38A8 001F0808 7F C3 F3 78 */ mr r3, r30 +/* 801F38AC 001F080C 38 80 00 00 */ li r4, 0 +/* 801F38B0 001F0810 4B E6 1E 41 */ bl __dt__6CActorFv +/* 801F38B4 001F0814 7F E0 07 35 */ extsh. r0, r31 +/* 801F38B8 001F0818 40 81 00 0C */ ble lbl_801F38C4 +/* 801F38BC 001F081C 7F C3 F3 78 */ mr r3, r30 +/* 801F38C0 001F0820 48 12 20 71 */ bl Free__7CMemoryFPCv +lbl_801F38C4: +/* 801F38C4 001F0824 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801F38C8 001F0828 7F C3 F3 78 */ mr r3, r30 +/* 801F38CC 001F082C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801F38D0 001F0830 83 C1 00 08 */ lwz r30, 8(r1) +/* 801F38D4 001F0834 7C 08 03 A6 */ mtlr r0 +/* 801F38D8 001F0838 38 21 00 10 */ addi r1, r1, 0x10 +/* 801F38DC 001F083C 4E 80 00 20 */ blr + +.global sub_801f38e0 +sub_801f38e0: +/* 801F38E0 001F0840 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801F38E4 001F0844 7C 08 02 A6 */ mflr r0 +/* 801F38E8 001F0848 90 01 00 34 */ stw r0, 0x34(r1) +/* 801F38EC 001F084C 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801F38F0 001F0850 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801F38F4 001F0854 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801F38F8 001F0858 7C 9D 23 78 */ mr r29, r4 +/* 801F38FC 001F085C 93 81 00 20 */ stw r28, 0x20(r1) +/* 801F3900 001F0860 7C 7C 1B 79 */ or. r28, r3, r3 +/* 801F3904 001F0864 41 82 00 D0 */ beq lbl_801F39D4 +/* 801F3908 001F0868 80 1C 00 04 */ lwz r0, 4(r28) +/* 801F390C 001F086C 83 DC 00 0C */ lwz r30, 0xc(r28) +/* 801F3910 001F0870 1C 00 03 24 */ mulli r0, r0, 0x324 +/* 801F3914 001F0874 93 C1 00 10 */ stw r30, 0x10(r1) +/* 801F3918 001F0878 7F FE 02 14 */ add r31, r30, r0 +/* 801F391C 001F087C 93 C1 00 14 */ stw r30, 0x14(r1) +/* 801F3920 001F0880 93 E1 00 08 */ stw r31, 8(r1) +/* 801F3924 001F0884 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801F3928 001F0888 48 00 00 84 */ b lbl_801F39AC +lbl_801F392C: +/* 801F392C 001F088C 28 1E 00 00 */ cmplwi r30, 0 +/* 801F3930 001F0890 41 82 00 78 */ beq lbl_801F39A8 +/* 801F3934 001F0894 38 7E 00 18 */ addi r3, r30, 0x18 +/* 801F3938 001F0898 38 80 FF FF */ li r4, -1 +/* 801F393C 001F089C 4B F1 17 99 */ bl __dt__12CActorLightsFv +/* 801F3940 001F08A0 34 1E 00 08 */ addic. r0, r30, 8 +/* 801F3944 001F08A4 41 82 00 30 */ beq lbl_801F3974 +/* 801F3948 001F08A8 88 1E 00 08 */ lbz r0, 8(r30) +/* 801F394C 001F08AC 28 00 00 00 */ cmplwi r0, 0 +/* 801F3950 001F08B0 41 82 00 24 */ beq lbl_801F3974 +/* 801F3954 001F08B4 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 801F3958 001F08B8 28 03 00 00 */ cmplwi r3, 0 +/* 801F395C 001F08BC 41 82 00 18 */ beq lbl_801F3974 +/* 801F3960 001F08C0 81 83 00 00 */ lwz r12, 0(r3) +/* 801F3964 001F08C4 38 80 00 01 */ li r4, 1 +/* 801F3968 001F08C8 81 8C 00 08 */ lwz r12, 8(r12) +/* 801F396C 001F08CC 7D 89 03 A6 */ mtctr r12 +/* 801F3970 001F08D0 4E 80 04 21 */ bctrl +lbl_801F3974: +/* 801F3974 001F08D4 28 1E 00 00 */ cmplwi r30, 0 +/* 801F3978 001F08D8 41 82 00 30 */ beq lbl_801F39A8 +/* 801F397C 001F08DC 88 1E 00 00 */ lbz r0, 0(r30) +/* 801F3980 001F08E0 28 00 00 00 */ cmplwi r0, 0 +/* 801F3984 001F08E4 41 82 00 24 */ beq lbl_801F39A8 +/* 801F3988 001F08E8 80 7E 00 04 */ lwz r3, 4(r30) +/* 801F398C 001F08EC 28 03 00 00 */ cmplwi r3, 0 +/* 801F3990 001F08F0 41 82 00 18 */ beq lbl_801F39A8 +/* 801F3994 001F08F4 81 83 00 00 */ lwz r12, 0(r3) +/* 801F3998 001F08F8 38 80 00 01 */ li r4, 1 +/* 801F399C 001F08FC 81 8C 00 08 */ lwz r12, 8(r12) +/* 801F39A0 001F0900 7D 89 03 A6 */ mtctr r12 +/* 801F39A4 001F0904 4E 80 04 21 */ bctrl +lbl_801F39A8: +/* 801F39A8 001F0908 3B DE 03 24 */ addi r30, r30, 0x324 +lbl_801F39AC: +/* 801F39AC 001F090C 7C 1E F8 40 */ cmplw r30, r31 +/* 801F39B0 001F0910 40 82 FF 7C */ bne lbl_801F392C +/* 801F39B4 001F0914 80 7C 00 0C */ lwz r3, 0xc(r28) +/* 801F39B8 001F0918 28 03 00 00 */ cmplwi r3, 0 +/* 801F39BC 001F091C 41 82 00 08 */ beq lbl_801F39C4 +/* 801F39C0 001F0920 48 12 1F 71 */ bl Free__7CMemoryFPCv +lbl_801F39C4: +/* 801F39C4 001F0924 7F A0 07 35 */ extsh. r0, r29 +/* 801F39C8 001F0928 40 81 00 0C */ ble lbl_801F39D4 +/* 801F39CC 001F092C 7F 83 E3 78 */ mr r3, r28 +/* 801F39D0 001F0930 48 12 1F 61 */ bl Free__7CMemoryFPCv +lbl_801F39D4: +/* 801F39D4 001F0934 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801F39D8 001F0938 7F 83 E3 78 */ mr r3, r28 +/* 801F39DC 001F093C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801F39E0 001F0940 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801F39E4 001F0944 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801F39E8 001F0948 83 81 00 20 */ lwz r28, 0x20(r1) +/* 801F39EC 001F094C 7C 08 03 A6 */ mtlr r0 +/* 801F39F0 001F0950 38 21 00 30 */ addi r1, r1, 0x30 +/* 801F39F4 001F0954 4E 80 00 20 */ blr + +.global "__ct__20CIceAttackProjectileF25TToken<15CGenDescription>25TToken<15CGenDescription>9TUniqueId9TUniqueIdbRC12CTransform4fRC11CDamageInfoRC6CAABoxff" +"__ct__20CIceAttackProjectileF25TToken<15CGenDescription>25TToken<15CGenDescription>9TUniqueId9TUniqueIdbRC12CTransform4fRC11CDamageInfoRC6CAABoxff": +/* 801F39F8 001F0958 94 21 FD E0 */ stwu r1, -0x220(r1) +/* 801F39FC 001F095C 7C 08 02 A6 */ mflr r0 +/* 801F3A00 001F0960 90 01 02 24 */ stw r0, 0x224(r1) +/* 801F3A04 001F0964 DB E1 02 10 */ stfd f31, 0x210(r1) +/* 801F3A08 001F0968 F3 E1 02 18 */ psq_st f31, 536(r1), 0, qr0 +/* 801F3A0C 001F096C DB C1 02 00 */ stfd f30, 0x200(r1) +/* 801F3A10 001F0970 F3 C1 02 08 */ psq_st f30, 520(r1), 0, qr0 +/* 801F3A14 001F0974 BE 21 01 C4 */ stmw r17, 0x1c4(r1) +/* 801F3A18 001F0978 3D 60 80 3D */ lis r11, lbl_803D2050@ha +/* 801F3A1C 001F097C FF C0 08 90 */ fmr f30, f1 +/* 801F3A20 001F0980 FF E0 10 90 */ fmr f31, f2 +/* 801F3A24 001F0984 39 6B 20 50 */ addi r11, r11, lbl_803D2050@l +/* 801F3A28 001F0988 7C 7F 1B 78 */ mr r31, r3 +/* 801F3A2C 001F098C 7C 94 23 78 */ mr r20, r4 +/* 801F3A30 001F0990 83 21 02 28 */ lwz r25, 0x228(r1) +/* 801F3A34 001F0994 83 41 02 2C */ lwz r26, 0x22c(r1) +/* 801F3A38 001F0998 83 61 02 30 */ lwz r27, 0x230(r1) +/* 801F3A3C 001F099C 7C B5 2B 78 */ mr r21, r5 +/* 801F3A40 001F09A0 83 81 02 34 */ lwz r28, 0x234(r1) +/* 801F3A44 001F09A4 7C D6 33 78 */ mr r22, r6 +/* 801F3A48 001F09A8 A3 A1 02 3A */ lhz r29, 0x23a(r1) +/* 801F3A4C 001F09AC 7C F7 3B 78 */ mr r23, r7 +/* 801F3A50 001F09B0 A3 C1 02 3E */ lhz r30, 0x23e(r1) +/* 801F3A54 001F09B4 7D 11 43 78 */ mr r17, r8 +/* 801F3A58 001F09B8 82 61 02 40 */ lwz r19, 0x240(r1) +/* 801F3A5C 001F09BC 7D 38 4B 78 */ mr r24, r9 +/* 801F3A60 001F09C0 7D 52 53 78 */ mr r18, r10 +/* 801F3A64 001F09C4 38 61 00 84 */ addi r3, r1, 0x84 +/* 801F3A68 001F09C8 38 8B 00 07 */ addi r4, r11, 7 +/* 801F3A6C 001F09CC 4B E1 12 4D */ bl string_l__4rstlFPCc +/* 801F3A70 001F09D0 80 8D A3 88 */ lwz r4, lbl_805A8F48@sda21(r13) +/* 801F3A74 001F09D4 3C 60 80 57 */ lis r3, lbl_8056D410@ha +/* 801F3A78 001F09D8 80 11 00 00 */ lwz r0, 0(r17) +/* 801F3A7C 001F09DC 38 A3 D4 10 */ addi r5, r3, lbl_8056D410@l +/* 801F3A80 001F09E0 90 81 00 28 */ stw r4, 0x28(r1) +/* 801F3A84 001F09E4 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 801F3A88 001F09E8 38 81 00 2C */ addi r4, r1, 0x2c +/* 801F3A8C 001F09EC 38 C1 00 28 */ addi r6, r1, 0x28 +/* 801F3A90 001F09F0 90 01 00 2C */ stw r0, 0x2c(r1) +/* 801F3A94 001F09F4 4B E5 D9 F1 */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" +/* 801F3A98 001F09F8 38 61 01 68 */ addi r3, r1, 0x168 +/* 801F3A9C 001F09FC 4B E4 6D 09 */ bl CModelDataNull__10CModelDataFv +/* 801F3AA0 001F0A00 38 61 01 00 */ addi r3, r1, 0x100 +/* 801F3AA4 001F0A04 4B E2 73 95 */ bl None__16CActorParametersFv +/* 801F3AA8 001F0A08 A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 801F3AAC 001F0A0C 38 00 00 00 */ li r0, 0 +/* 801F3AB0 001F0A10 80 AD 92 9C */ lwz r5, lbl_805A7E5C@sda21(r13) +/* 801F3AB4 001F0A14 38 60 00 00 */ li r3, 0 +/* 801F3AB8 001F0A18 B0 81 00 10 */ sth r4, 0x10(r1) +/* 801F3ABC 001F0A1C 38 80 00 01 */ li r4, 1 +/* 801F3AC0 001F0A20 90 01 00 44 */ stw r0, 0x44(r1) +/* 801F3AC4 001F0A24 90 01 00 40 */ stw r0, 0x40(r1) +/* 801F3AC8 001F0A28 48 19 64 2D */ bl __shl2i +/* 801F3ACC 001F0A2C 80 01 00 40 */ lwz r0, 0x40(r1) +/* 801F3AD0 001F0A30 80 C1 00 44 */ lwz r6, 0x44(r1) +/* 801F3AD4 001F0A34 7C 00 1B 78 */ or r0, r0, r3 +/* 801F3AD8 001F0A38 80 AD 92 A0 */ lwz r5, lbl_805A7E60@sda21(r13) +/* 801F3ADC 001F0A3C 7C C4 23 78 */ or r4, r6, r4 +/* 801F3AE0 001F0A40 90 01 00 40 */ stw r0, 0x40(r1) +/* 801F3AE4 001F0A44 38 60 00 00 */ li r3, 0 +/* 801F3AE8 001F0A48 90 81 00 44 */ stw r4, 0x44(r1) +/* 801F3AEC 001F0A4C 38 80 00 01 */ li r4, 1 +/* 801F3AF0 001F0A50 48 19 64 05 */ bl __shl2i +/* 801F3AF4 001F0A54 80 A1 00 40 */ lwz r5, 0x40(r1) +/* 801F3AF8 001F0A58 39 61 01 00 */ addi r11, r1, 0x100 +/* 801F3AFC 001F0A5C 80 C1 00 44 */ lwz r6, 0x44(r1) +/* 801F3B00 001F0A60 38 01 00 10 */ addi r0, r1, 0x10 +/* 801F3B04 001F0A64 7C A3 1B 78 */ or r3, r5, r3 +/* 801F3B08 001F0A68 A0 F7 00 00 */ lhz r7, 0(r23) +/* 801F3B0C 001F0A6C 7C C4 23 78 */ or r4, r6, r4 +/* 801F3B10 001F0A70 90 61 00 40 */ stw r3, 0x40(r1) +/* 801F3B14 001F0A74 7F E3 FB 78 */ mr r3, r31 +/* 801F3B18 001F0A78 7E 45 93 78 */ mr r5, r18 +/* 801F3B1C 001F0A7C 90 81 00 44 */ stw r4, 0x44(r1) +/* 801F3B20 001F0A80 7F 28 CB 78 */ mr r8, r25 +/* 801F3B24 001F0A84 38 81 00 14 */ addi r4, r1, 0x14 +/* 801F3B28 001F0A88 38 C1 00 84 */ addi r6, r1, 0x84 +/* 801F3B2C 001F0A8C B0 E1 00 14 */ sth r7, 0x14(r1) +/* 801F3B30 001F0A90 38 E1 00 B8 */ addi r7, r1, 0xb8 +/* 801F3B34 001F0A94 39 21 01 68 */ addi r9, r1, 0x168 +/* 801F3B38 001F0A98 39 41 00 40 */ addi r10, r1, 0x40 +/* 801F3B3C 001F0A9C 91 61 00 08 */ stw r11, 8(r1) +/* 801F3B40 001F0AA0 90 01 00 0C */ stw r0, 0xc(r1) +/* 801F3B44 001F0AA4 4B E6 1C DD */ bl "__ct__6CActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC16CActorParameters9TUniqueId" +/* 801F3B48 001F0AA8 38 61 01 00 */ addi r3, r1, 0x100 +/* 801F3B4C 001F0AAC 38 80 FF FF */ li r4, -1 +/* 801F3B50 001F0AB0 4B F1 2A B9 */ bl __dt__16CActorParametersFv +/* 801F3B54 001F0AB4 38 61 01 68 */ addi r3, r1, 0x168 +/* 801F3B58 001F0AB8 38 80 FF FF */ li r4, -1 +/* 801F3B5C 001F0ABC 4B F2 2E F1 */ bl __dt__10CModelDataFv +/* 801F3B60 001F0AC0 80 01 00 C0 */ lwz r0, 0xc0(r1) +/* 801F3B64 001F0AC4 80 61 00 C8 */ lwz r3, 0xc8(r1) +/* 801F3B68 001F0AC8 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801F3B6C 001F0ACC 90 61 00 1C */ stw r3, 0x1c(r1) +/* 801F3B70 001F0AD0 7C 64 1B 78 */ mr r4, r3 +/* 801F3B74 001F0AD4 7C 03 02 14 */ add r0, r3, r0 +/* 801F3B78 001F0AD8 90 61 00 18 */ stw r3, 0x18(r1) +/* 801F3B7C 001F0ADC 90 01 00 24 */ stw r0, 0x24(r1) +/* 801F3B80 001F0AE0 90 01 00 20 */ stw r0, 0x20(r1) +/* 801F3B84 001F0AE4 48 00 00 08 */ b lbl_801F3B8C +lbl_801F3B88: +/* 801F3B88 001F0AE8 38 84 00 0C */ addi r4, r4, 0xc +lbl_801F3B8C: +/* 801F3B8C 001F0AEC 7C 04 00 40 */ cmplw r4, r0 +/* 801F3B90 001F0AF0 40 82 FF F8 */ bne lbl_801F3B88 +/* 801F3B94 001F0AF4 28 03 00 00 */ cmplwi r3, 0 +/* 801F3B98 001F0AF8 41 82 00 08 */ beq lbl_801F3BA0 +/* 801F3B9C 001F0AFC 48 12 1D 95 */ bl Free__7CMemoryFPCv +lbl_801F3BA0: +/* 801F3BA0 001F0B00 38 61 00 84 */ addi r3, r1, 0x84 +/* 801F3BA4 001F0B04 48 14 9F 3D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801F3BA8 001F0B08 3C 60 80 3E */ lis r3, lbl_803E6778@ha +/* 801F3BAC 001F0B0C 7E 84 A3 78 */ mr r4, r20 +/* 801F3BB0 001F0B10 38 03 67 78 */ addi r0, r3, lbl_803E6778@l +/* 801F3BB4 001F0B14 38 7F 00 E8 */ addi r3, r31, 0xe8 +/* 801F3BB8 001F0B18 90 1F 00 00 */ stw r0, 0(r31) +/* 801F3BBC 001F0B1C 48 14 D2 ED */ bl __ct__6CTokenFRC6CToken +/* 801F3BC0 001F0B20 7E A4 AB 78 */ mr r4, r21 +/* 801F3BC4 001F0B24 38 7F 00 F0 */ addi r3, r31, 0xf0 +/* 801F3BC8 001F0B28 48 14 D2 E1 */ bl __ct__6CTokenFRC6CToken +/* 801F3BCC 001F0B2C 7E C4 B3 78 */ mr r4, r22 +/* 801F3BD0 001F0B30 38 7F 00 F8 */ addi r3, r31, 0xf8 +/* 801F3BD4 001F0B34 48 14 D2 D5 */ bl __ct__6CTokenFRC6CToken +/* 801F3BD8 001F0B38 38 60 00 00 */ li r3, 0 +/* 801F3BDC 001F0B3C 34 9F 01 54 */ addic. r4, r31, 0x154 +/* 801F3BE0 001F0B40 98 7F 01 00 */ stb r3, 0x100(r31) +/* 801F3BE4 001F0B44 38 00 00 01 */ li r0, 1 +/* 801F3BE8 001F0B48 90 7F 01 04 */ stw r3, 0x104(r31) +/* 801F3BEC 001F0B4C 90 7F 01 0C */ stw r3, 0x10c(r31) +/* 801F3BF0 001F0B50 90 7F 01 10 */ stw r3, 0x110(r31) +/* 801F3BF4 001F0B54 90 7F 01 14 */ stw r3, 0x114(r31) +/* 801F3BF8 001F0B58 A0 78 00 00 */ lhz r3, 0(r24) +/* 801F3BFC 001F0B5C B0 7F 01 18 */ sth r3, 0x118(r31) +/* 801F3C00 001F0B60 80 7A 00 00 */ lwz r3, 0(r26) +/* 801F3C04 001F0B64 90 7F 01 1C */ stw r3, 0x11c(r31) +/* 801F3C08 001F0B68 88 7A 00 04 */ lbz r3, 4(r26) +/* 801F3C0C 001F0B6C 98 7F 01 20 */ stb r3, 0x120(r31) +/* 801F3C10 001F0B70 C0 1A 00 08 */ lfs f0, 8(r26) +/* 801F3C14 001F0B74 D0 1F 01 24 */ stfs f0, 0x124(r31) +/* 801F3C18 001F0B78 C0 1A 00 0C */ lfs f0, 0xc(r26) +/* 801F3C1C 001F0B7C D0 1F 01 28 */ stfs f0, 0x128(r31) +/* 801F3C20 001F0B80 C0 1A 00 10 */ lfs f0, 0x10(r26) +/* 801F3C24 001F0B84 D0 1F 01 2C */ stfs f0, 0x12c(r31) +/* 801F3C28 001F0B88 C0 1A 00 14 */ lfs f0, 0x14(r26) +/* 801F3C2C 001F0B8C D0 1F 01 30 */ stfs f0, 0x130(r31) +/* 801F3C30 001F0B90 88 7A 00 18 */ lbz r3, 0x18(r26) +/* 801F3C34 001F0B94 98 7F 01 34 */ stb r3, 0x134(r31) +/* 801F3C38 001F0B98 80 7A 00 00 */ lwz r3, 0(r26) +/* 801F3C3C 001F0B9C 90 7F 01 38 */ stw r3, 0x138(r31) +/* 801F3C40 001F0BA0 88 7A 00 04 */ lbz r3, 4(r26) +/* 801F3C44 001F0BA4 98 7F 01 3C */ stb r3, 0x13c(r31) +/* 801F3C48 001F0BA8 C0 1A 00 08 */ lfs f0, 8(r26) +/* 801F3C4C 001F0BAC D0 1F 01 40 */ stfs f0, 0x140(r31) +/* 801F3C50 001F0BB0 C0 1A 00 0C */ lfs f0, 0xc(r26) +/* 801F3C54 001F0BB4 D0 1F 01 44 */ stfs f0, 0x144(r31) +/* 801F3C58 001F0BB8 C0 1A 00 10 */ lfs f0, 0x10(r26) +/* 801F3C5C 001F0BBC D0 1F 01 48 */ stfs f0, 0x148(r31) +/* 801F3C60 001F0BC0 C0 1A 00 14 */ lfs f0, 0x14(r26) +/* 801F3C64 001F0BC4 D0 1F 01 4C */ stfs f0, 0x14c(r31) +/* 801F3C68 001F0BC8 88 7A 00 18 */ lbz r3, 0x18(r26) +/* 801F3C6C 001F0BCC 98 7F 01 50 */ stb r3, 0x150(r31) +/* 801F3C70 001F0BD0 98 1F 01 6C */ stb r0, 0x16c(r31) +/* 801F3C74 001F0BD4 41 82 00 34 */ beq lbl_801F3CA8 +/* 801F3C78 001F0BD8 C0 1B 00 00 */ lfs f0, 0(r27) +/* 801F3C7C 001F0BDC D0 04 00 00 */ stfs f0, 0(r4) +/* 801F3C80 001F0BE0 C0 1B 00 04 */ lfs f0, 4(r27) +/* 801F3C84 001F0BE4 D0 04 00 04 */ stfs f0, 4(r4) +/* 801F3C88 001F0BE8 C0 1B 00 08 */ lfs f0, 8(r27) +/* 801F3C8C 001F0BEC D0 04 00 08 */ stfs f0, 8(r4) +/* 801F3C90 001F0BF0 C0 1B 00 0C */ lfs f0, 0xc(r27) +/* 801F3C94 001F0BF4 D0 04 00 0C */ stfs f0, 0xc(r4) +/* 801F3C98 001F0BF8 C0 1B 00 10 */ lfs f0, 0x10(r27) +/* 801F3C9C 001F0BFC D0 04 00 10 */ stfs f0, 0x10(r4) +/* 801F3CA0 001F0C00 C0 1B 00 14 */ lfs f0, 0x14(r27) +/* 801F3CA4 001F0C04 D0 04 00 14 */ stfs f0, 0x14(r4) +lbl_801F3CA8: +/* 801F3CA8 001F0C08 D3 DF 01 70 */ stfs f30, 0x170(r31) +/* 801F3CAC 001F0C0C 38 00 00 00 */ li r0, 0 +/* 801F3CB0 001F0C10 C0 82 AE E8 */ lfs f4, lbl_805ACC08@sda21(r2) +/* 801F3CB4 001F0C14 38 61 00 78 */ addi r3, r1, 0x78 +/* 801F3CB8 001F0C18 D3 FF 01 74 */ stfs f31, 0x174(r31) +/* 801F3CBC 001F0C1C 38 81 00 6C */ addi r4, r1, 0x6c +/* 801F3CC0 001F0C20 C0 62 AE EC */ lfs f3, lbl_805ACC0C@sda21(r2) +/* 801F3CC4 001F0C24 D0 9F 01 78 */ stfs f4, 0x178(r31) +/* 801F3CC8 001F0C28 D0 9F 01 7C */ stfs f4, 0x17c(r31) +/* 801F3CCC 001F0C2C 90 1F 01 80 */ stw r0, 0x180(r31) +/* 801F3CD0 001F0C30 93 9F 01 84 */ stw r28, 0x184(r31) +/* 801F3CD4 001F0C34 B3 BF 01 88 */ sth r29, 0x188(r31) +/* 801F3CD8 001F0C38 B3 DF 01 8A */ sth r30, 0x18a(r31) +/* 801F3CDC 001F0C3C 92 7F 01 8C */ stw r19, 0x18c(r31) +/* 801F3CE0 001F0C40 98 1F 01 90 */ stb r0, 0x190(r31) +/* 801F3CE4 001F0C44 98 1F 01 91 */ stb r0, 0x191(r31) +/* 801F3CE8 001F0C48 98 1F 01 92 */ stb r0, 0x192(r31) +/* 801F3CEC 001F0C4C 90 1F 01 94 */ stw r0, 0x194(r31) +/* 801F3CF0 001F0C50 D0 81 00 AC */ stfs f4, 0xac(r1) +/* 801F3CF4 001F0C54 D0 81 00 B0 */ stfs f4, 0xb0(r1) +/* 801F3CF8 001F0C58 D0 61 00 B4 */ stfs f3, 0xb4(r1) +/* 801F3CFC 001F0C5C C0 F9 00 24 */ lfs f7, 0x24(r25) +/* 801F3D00 001F0C60 C0 D9 00 14 */ lfs f6, 0x14(r25) +/* 801F3D04 001F0C64 C0 B9 00 04 */ lfs f5, 4(r25) +/* 801F3D08 001F0C68 EC 27 01 32 */ fmuls f1, f7, f4 +/* 801F3D0C 001F0C6C EC 46 00 F2 */ fmuls f2, f6, f3 +/* 801F3D10 001F0C70 EC 05 01 32 */ fmuls f0, f5, f4 +/* 801F3D14 001F0C74 EC 23 09 78 */ fmsubs f1, f3, f5, f1 +/* 801F3D18 001F0C78 EC 44 11 F8 */ fmsubs f2, f4, f7, f2 +/* 801F3D1C 001F0C7C EC 04 01 B8 */ fmsubs f0, f4, f6, f0 +/* 801F3D20 001F0C80 D0 21 00 70 */ stfs f1, 0x70(r1) +/* 801F3D24 001F0C84 D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 801F3D28 001F0C88 D0 01 00 74 */ stfs f0, 0x74(r1) +/* 801F3D2C 001F0C8C 48 12 0B 25 */ bl AsNormalized__9CVector3fCFv +/* 801F3D30 001F0C90 C0 A1 00 78 */ lfs f5, 0x78(r1) +/* 801F3D34 001F0C94 38 61 00 60 */ addi r3, r1, 0x60 +/* 801F3D38 001F0C98 C0 81 00 7C */ lfs f4, 0x7c(r1) +/* 801F3D3C 001F0C9C 38 81 00 54 */ addi r4, r1, 0x54 +/* 801F3D40 001F0CA0 C0 61 00 80 */ lfs f3, 0x80(r1) +/* 801F3D44 001F0CA4 C0 C1 00 B0 */ lfs f6, 0xb0(r1) +/* 801F3D48 001F0CA8 C0 E1 00 B4 */ lfs f7, 0xb4(r1) +/* 801F3D4C 001F0CAC C1 01 00 AC */ lfs f8, 0xac(r1) +/* 801F3D50 001F0CB0 EC 46 00 F2 */ fmuls f2, f6, f3 +/* 801F3D54 001F0CB4 EC 27 01 72 */ fmuls f1, f7, f5 +/* 801F3D58 001F0CB8 D0 A1 00 A0 */ stfs f5, 0xa0(r1) +/* 801F3D5C 001F0CBC EC 08 01 32 */ fmuls f0, f8, f4 +/* 801F3D60 001F0CC0 EC 44 11 F8 */ fmsubs f2, f4, f7, f2 +/* 801F3D64 001F0CC4 D0 81 00 A4 */ stfs f4, 0xa4(r1) +/* 801F3D68 001F0CC8 EC 23 0A 38 */ fmsubs f1, f3, f8, f1 +/* 801F3D6C 001F0CCC EC 05 01 B8 */ fmsubs f0, f5, f6, f0 +/* 801F3D70 001F0CD0 D0 61 00 A8 */ stfs f3, 0xa8(r1) +/* 801F3D74 001F0CD4 D0 41 00 54 */ stfs f2, 0x54(r1) +/* 801F3D78 001F0CD8 D0 21 00 58 */ stfs f1, 0x58(r1) +/* 801F3D7C 001F0CDC D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 801F3D80 001F0CE0 48 12 0A D1 */ bl AsNormalized__9CVector3fCFv +/* 801F3D84 001F0CE4 C0 41 00 60 */ lfs f2, 0x60(r1) +/* 801F3D88 001F0CE8 38 61 00 D0 */ addi r3, r1, 0xd0 +/* 801F3D8C 001F0CEC C0 21 00 64 */ lfs f1, 0x64(r1) +/* 801F3D90 001F0CF0 38 81 00 A0 */ addi r4, r1, 0xa0 +/* 801F3D94 001F0CF4 C0 01 00 68 */ lfs f0, 0x68(r1) +/* 801F3D98 001F0CF8 38 A1 00 94 */ addi r5, r1, 0x94 +/* 801F3D9C 001F0CFC D0 41 00 94 */ stfs f2, 0x94(r1) +/* 801F3DA0 001F0D00 38 C1 00 AC */ addi r6, r1, 0xac +/* 801F3DA4 001F0D04 38 E1 00 48 */ addi r7, r1, 0x48 +/* 801F3DA8 001F0D08 D0 21 00 98 */ stfs f1, 0x98(r1) +/* 801F3DAC 001F0D0C D0 01 00 9C */ stfs f0, 0x9c(r1) +/* 801F3DB0 001F0D10 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 801F3DB4 001F0D14 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 801F3DB8 001F0D18 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801F3DBC 001F0D1C D0 01 00 48 */ stfs f0, 0x48(r1) +/* 801F3DC0 001F0D20 D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 801F3DC4 001F0D24 D0 41 00 50 */ stfs f2, 0x50(r1) +/* 801F3DC8 001F0D28 48 11 F0 95 */ bl __ct__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3fRC9CVector3f_0 +/* 801F3DCC 001F0D2C 38 7F 00 34 */ addi r3, r31, 0x34 +/* 801F3DD0 001F0D30 38 81 00 D0 */ addi r4, r1, 0xd0 +/* 801F3DD4 001F0D34 48 11 ED 6D */ bl __as__12CTransform4fFRC12CTransform4f +/* 801F3DD8 001F0D38 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 801F3DDC 001F0D3C 38 C0 00 01 */ li r6, 1 +/* 801F3DE0 001F0D40 50 C0 26 F6 */ rlwimi r0, r6, 4, 0x1b, 0x1b +/* 801F3DE4 001F0D44 3C 60 80 3D */ lis r3, lbl_803D2050@ha +/* 801F3DE8 001F0D48 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 801F3DEC 001F0D4C 38 83 20 50 */ addi r4, r3, lbl_803D2050@l +/* 801F3DF0 001F0D50 3A 20 00 00 */ li r17, 0 +/* 801F3DF4 001F0D54 38 60 03 40 */ li r3, 0x340 +/* 801F3DF8 001F0D58 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 801F3DFC 001F0D5C 50 C0 1F 38 */ rlwimi r0, r6, 3, 0x1c, 0x1c +/* 801F3E00 001F0D60 38 A0 00 00 */ li r5, 0 +/* 801F3E04 001F0D64 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 801F3E08 001F0D68 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 801F3E0C 001F0D6C 50 C0 17 7A */ rlwimi r0, r6, 2, 0x1d, 0x1d +/* 801F3E10 001F0D70 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 801F3E14 001F0D74 48 12 1A 59 */ bl __nw__FUlPCcPCc +/* 801F3E18 001F0D78 7C 72 1B 79 */ or. r18, r3, r3 +/* 801F3E1C 001F0D7C 41 82 00 2C */ beq lbl_801F3E48 +/* 801F3E20 001F0D80 38 61 00 38 */ addi r3, r1, 0x38 +/* 801F3E24 001F0D84 38 9F 00 F8 */ addi r4, r31, 0xf8 +/* 801F3E28 001F0D88 48 14 D0 81 */ bl __ct__6CTokenFRC6CToken +/* 801F3E2C 001F0D8C 7E 43 93 78 */ mr r3, r18 +/* 801F3E30 001F0D90 38 81 00 38 */ addi r4, r1, 0x38 +/* 801F3E34 001F0D94 3A 20 00 01 */ li r17, 1 +/* 801F3E38 001F0D98 38 A0 00 00 */ li r5, 0 +/* 801F3E3C 001F0D9C 38 C0 00 01 */ li r6, 1 +/* 801F3E40 001F0DA0 48 12 B5 A1 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 801F3E44 001F0DA4 7C 72 1B 78 */ mr r18, r3 +lbl_801F3E48: +/* 801F3E48 001F0DA8 7C 72 00 D0 */ neg r3, r18 +/* 801F3E4C 001F0DAC 38 01 00 30 */ addi r0, r1, 0x30 +/* 801F3E50 001F0DB0 7C 63 93 78 */ or r3, r3, r18 +/* 801F3E54 001F0DB4 38 9F 01 00 */ addi r4, r31, 0x100 +/* 801F3E58 001F0DB8 54 63 0F FE */ srwi r3, r3, 0x1f +/* 801F3E5C 001F0DBC 92 41 00 34 */ stw r18, 0x34(r1) +/* 801F3E60 001F0DC0 7C 00 20 40 */ cmplw r0, r4 +/* 801F3E64 001F0DC4 98 61 00 30 */ stb r3, 0x30(r1) +/* 801F3E68 001F0DC8 41 82 00 48 */ beq lbl_801F3EB0 +/* 801F3E6C 001F0DCC 88 04 00 00 */ lbz r0, 0(r4) +/* 801F3E70 001F0DD0 28 00 00 00 */ cmplwi r0, 0 +/* 801F3E74 001F0DD4 41 82 00 24 */ beq lbl_801F3E98 +/* 801F3E78 001F0DD8 80 7F 01 04 */ lwz r3, 0x104(r31) +/* 801F3E7C 001F0DDC 28 03 00 00 */ cmplwi r3, 0 +/* 801F3E80 001F0DE0 41 82 00 18 */ beq lbl_801F3E98 +/* 801F3E84 001F0DE4 81 83 00 00 */ lwz r12, 0(r3) +/* 801F3E88 001F0DE8 38 80 00 01 */ li r4, 1 +/* 801F3E8C 001F0DEC 81 8C 00 08 */ lwz r12, 8(r12) +/* 801F3E90 001F0DF0 7D 89 03 A6 */ mtctr r12 +/* 801F3E94 001F0DF4 4E 80 04 21 */ bctrl +lbl_801F3E98: +/* 801F3E98 001F0DF8 88 61 00 30 */ lbz r3, 0x30(r1) +/* 801F3E9C 001F0DFC 38 00 00 00 */ li r0, 0 +/* 801F3EA0 001F0E00 98 7F 01 00 */ stb r3, 0x100(r31) +/* 801F3EA4 001F0E04 80 61 00 34 */ lwz r3, 0x34(r1) +/* 801F3EA8 001F0E08 90 7F 01 04 */ stw r3, 0x104(r31) +/* 801F3EAC 001F0E0C 98 01 00 30 */ stb r0, 0x30(r1) +lbl_801F3EB0: +/* 801F3EB0 001F0E10 88 01 00 30 */ lbz r0, 0x30(r1) +/* 801F3EB4 001F0E14 28 00 00 00 */ cmplwi r0, 0 +/* 801F3EB8 001F0E18 41 82 00 24 */ beq lbl_801F3EDC +/* 801F3EBC 001F0E1C 80 61 00 34 */ lwz r3, 0x34(r1) +/* 801F3EC0 001F0E20 28 03 00 00 */ cmplwi r3, 0 +/* 801F3EC4 001F0E24 41 82 00 18 */ beq lbl_801F3EDC +/* 801F3EC8 001F0E28 81 83 00 00 */ lwz r12, 0(r3) +/* 801F3ECC 001F0E2C 38 80 00 01 */ li r4, 1 +/* 801F3ED0 001F0E30 81 8C 00 08 */ lwz r12, 8(r12) +/* 801F3ED4 001F0E34 7D 89 03 A6 */ mtctr r12 +/* 801F3ED8 001F0E38 4E 80 04 21 */ bctrl +lbl_801F3EDC: +/* 801F3EDC 001F0E3C 7E 20 07 75 */ extsb. r0, r17 +/* 801F3EE0 001F0E40 41 82 00 10 */ beq lbl_801F3EF0 +/* 801F3EE4 001F0E44 38 61 00 38 */ addi r3, r1, 0x38 +/* 801F3EE8 001F0E48 38 80 00 00 */ li r4, 0 +/* 801F3EEC 001F0E4C 48 14 CF 55 */ bl __dt__6CTokenFv +lbl_801F3EF0: +/* 801F3EF0 001F0E50 7F E3 FB 78 */ mr r3, r31 +/* 801F3EF4 001F0E54 E3 E1 02 18 */ psq_l f31, 536(r1), 0, qr0 +/* 801F3EF8 001F0E58 CB E1 02 10 */ lfd f31, 0x210(r1) +/* 801F3EFC 001F0E5C E3 C1 02 08 */ psq_l f30, 520(r1), 0, qr0 +/* 801F3F00 001F0E60 CB C1 02 00 */ lfd f30, 0x200(r1) +/* 801F3F04 001F0E64 BA 21 01 C4 */ lmw r17, 0x1c4(r1) +/* 801F3F08 001F0E68 80 01 02 24 */ lwz r0, 0x224(r1) +/* 801F3F0C 001F0E6C 7C 08 03 A6 */ mtlr r0 +/* 801F3F10 001F0E70 38 21 02 20 */ addi r1, r1, 0x220 +/* 801F3F14 001F0E74 4E 80 00 20 */ blr + +.global sub_801f3f18 +sub_801f3f18: +/* 801F3F18 001F0E78 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801F3F1C 001F0E7C 7C 08 02 A6 */ mflr r0 +/* 801F3F20 001F0E80 90 01 00 34 */ stw r0, 0x34(r1) +/* 801F3F24 001F0E84 BF 61 00 1C */ stmw r27, 0x1c(r1) +/* 801F3F28 001F0E88 7C 9F 23 78 */ mr r31, r4 +/* 801F3F2C 001F0E8C 7C 7E 1B 78 */ mr r30, r3 +/* 801F3F30 001F0E90 80 03 00 08 */ lwz r0, 8(r3) +/* 801F3F34 001F0E94 7C 1F 00 00 */ cmpw r31, r0 +/* 801F3F38 001F0E98 40 81 01 14 */ ble lbl_801F404C +/* 801F3F3C 001F0E9C 1C 7F 03 24 */ mulli r3, r31, 0x324 +/* 801F3F40 001F0EA0 2C 03 00 00 */ cmpwi r3, 0 +/* 801F3F44 001F0EA4 40 82 00 0C */ bne lbl_801F3F50 +/* 801F3F48 001F0EA8 3B A0 00 00 */ li r29, 0 +/* 801F3F4C 001F0EAC 48 00 00 18 */ b lbl_801F3F64 +lbl_801F3F50: +/* 801F3F50 001F0EB0 3C 80 80 3D */ lis r4, lbl_803D2050@ha +/* 801F3F54 001F0EB4 38 A0 00 00 */ li r5, 0 +/* 801F3F58 001F0EB8 38 84 20 50 */ addi r4, r4, lbl_803D2050@l +/* 801F3F5C 001F0EBC 48 12 18 BD */ bl __nwa__FUlPCcPCc +/* 801F3F60 001F0EC0 7C 7D 1B 78 */ mr r29, r3 +lbl_801F3F64: +/* 801F3F64 001F0EC4 80 1E 00 04 */ lwz r0, 4(r30) +/* 801F3F68 001F0EC8 7F A5 EB 78 */ mr r5, r29 +/* 801F3F6C 001F0ECC 80 DE 00 0C */ lwz r6, 0xc(r30) +/* 801F3F70 001F0ED0 38 61 00 14 */ addi r3, r1, 0x14 +/* 801F3F74 001F0ED4 1C 00 03 24 */ mulli r0, r0, 0x324 +/* 801F3F78 001F0ED8 38 81 00 0C */ addi r4, r1, 0xc +/* 801F3F7C 001F0EDC 7C C6 02 14 */ add r6, r6, r0 +/* 801F3F80 001F0EE0 90 C1 00 0C */ stw r6, 0xc(r1) +/* 801F3F84 001F0EE4 80 1E 00 0C */ lwz r0, 0xc(r30) +/* 801F3F88 001F0EE8 90 C1 00 08 */ stw r6, 8(r1) +/* 801F3F8C 001F0EEC 90 01 00 10 */ stw r0, 0x10(r1) +/* 801F3F90 001F0EF0 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F3F94 001F0EF4 48 00 00 CD */ bl sub_801f4060 +/* 801F3F98 001F0EF8 80 1E 00 04 */ lwz r0, 4(r30) +/* 801F3F9C 001F0EFC 83 7E 00 0C */ lwz r27, 0xc(r30) +/* 801F3FA0 001F0F00 1C 00 03 24 */ mulli r0, r0, 0x324 +/* 801F3FA4 001F0F04 7F 9B 02 14 */ add r28, r27, r0 +/* 801F3FA8 001F0F08 48 00 00 84 */ b lbl_801F402C +lbl_801F3FAC: +/* 801F3FAC 001F0F0C 28 1B 00 00 */ cmplwi r27, 0 +/* 801F3FB0 001F0F10 41 82 00 78 */ beq lbl_801F4028 +/* 801F3FB4 001F0F14 38 7B 00 18 */ addi r3, r27, 0x18 +/* 801F3FB8 001F0F18 38 80 FF FF */ li r4, -1 +/* 801F3FBC 001F0F1C 4B F1 11 19 */ bl __dt__12CActorLightsFv +/* 801F3FC0 001F0F20 34 1B 00 08 */ addic. r0, r27, 8 +/* 801F3FC4 001F0F24 41 82 00 30 */ beq lbl_801F3FF4 +/* 801F3FC8 001F0F28 88 1B 00 08 */ lbz r0, 8(r27) +/* 801F3FCC 001F0F2C 28 00 00 00 */ cmplwi r0, 0 +/* 801F3FD0 001F0F30 41 82 00 24 */ beq lbl_801F3FF4 +/* 801F3FD4 001F0F34 80 7B 00 0C */ lwz r3, 0xc(r27) +/* 801F3FD8 001F0F38 28 03 00 00 */ cmplwi r3, 0 +/* 801F3FDC 001F0F3C 41 82 00 18 */ beq lbl_801F3FF4 +/* 801F3FE0 001F0F40 81 83 00 00 */ lwz r12, 0(r3) +/* 801F3FE4 001F0F44 38 80 00 01 */ li r4, 1 +/* 801F3FE8 001F0F48 81 8C 00 08 */ lwz r12, 8(r12) +/* 801F3FEC 001F0F4C 7D 89 03 A6 */ mtctr r12 +/* 801F3FF0 001F0F50 4E 80 04 21 */ bctrl +lbl_801F3FF4: +/* 801F3FF4 001F0F54 28 1B 00 00 */ cmplwi r27, 0 +/* 801F3FF8 001F0F58 41 82 00 30 */ beq lbl_801F4028 +/* 801F3FFC 001F0F5C 88 1B 00 00 */ lbz r0, 0(r27) +/* 801F4000 001F0F60 28 00 00 00 */ cmplwi r0, 0 +/* 801F4004 001F0F64 41 82 00 24 */ beq lbl_801F4028 +/* 801F4008 001F0F68 80 7B 00 04 */ lwz r3, 4(r27) +/* 801F400C 001F0F6C 28 03 00 00 */ cmplwi r3, 0 +/* 801F4010 001F0F70 41 82 00 18 */ beq lbl_801F4028 +/* 801F4014 001F0F74 81 83 00 00 */ lwz r12, 0(r3) +/* 801F4018 001F0F78 38 80 00 01 */ li r4, 1 +/* 801F401C 001F0F7C 81 8C 00 08 */ lwz r12, 8(r12) +/* 801F4020 001F0F80 7D 89 03 A6 */ mtctr r12 +/* 801F4024 001F0F84 4E 80 04 21 */ bctrl +lbl_801F4028: +/* 801F4028 001F0F88 3B 7B 03 24 */ addi r27, r27, 0x324 +lbl_801F402C: +/* 801F402C 001F0F8C 7C 1B E0 40 */ cmplw r27, r28 +/* 801F4030 001F0F90 40 82 FF 7C */ bne lbl_801F3FAC +/* 801F4034 001F0F94 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 801F4038 001F0F98 28 03 00 00 */ cmplwi r3, 0 +/* 801F403C 001F0F9C 41 82 00 08 */ beq lbl_801F4044 +/* 801F4040 001F0FA0 48 12 18 F1 */ bl Free__7CMemoryFPCv +lbl_801F4044: +/* 801F4044 001F0FA4 93 BE 00 0C */ stw r29, 0xc(r30) +/* 801F4048 001F0FA8 93 FE 00 08 */ stw r31, 8(r30) +lbl_801F404C: +/* 801F404C 001F0FAC BB 61 00 1C */ lmw r27, 0x1c(r1) +/* 801F4050 001F0FB0 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801F4054 001F0FB4 7C 08 03 A6 */ mtlr r0 +/* 801F4058 001F0FB8 38 21 00 30 */ addi r1, r1, 0x30 +/* 801F405C 001F0FBC 4E 80 00 20 */ blr + +.global sub_801f4060 +sub_801f4060: +/* 801F4060 001F0FC0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801F4064 001F0FC4 7C 08 02 A6 */ mflr r0 +/* 801F4068 001F0FC8 90 01 00 24 */ stw r0, 0x24(r1) +/* 801F406C 001F0FCC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801F4070 001F0FD0 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801F4074 001F0FD4 7C BE 2B 78 */ mr r30, r5 +/* 801F4078 001F0FD8 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801F407C 001F0FDC 7C 9D 23 78 */ mr r29, r4 +/* 801F4080 001F0FE0 83 E3 00 00 */ lwz r31, 0(r3) +/* 801F4084 001F0FE4 48 00 00 18 */ b lbl_801F409C +lbl_801F4088: +/* 801F4088 001F0FE8 7F C3 F3 78 */ mr r3, r30 +/* 801F408C 001F0FEC 7F E4 FB 78 */ mr r4, r31 +/* 801F4090 001F0FF0 4B FF F1 7D */ bl sub_801f320c +/* 801F4094 001F0FF4 3B DE 03 24 */ addi r30, r30, 0x324 +/* 801F4098 001F0FF8 3B FF 03 24 */ addi r31, r31, 0x324 +lbl_801F409C: +/* 801F409C 001F0FFC 80 1D 00 00 */ lwz r0, 0(r29) +/* 801F40A0 001F1000 7C 1F 00 40 */ cmplw r31, r0 +/* 801F40A4 001F1004 40 82 FF E4 */ bne lbl_801F4088 +/* 801F40A8 001F1008 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801F40AC 001F100C 7F C3 F3 78 */ mr r3, r30 +/* 801F40B0 001F1010 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801F40B4 001F1014 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801F40B8 001F1018 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801F40BC 001F101C 7C 08 03 A6 */ mtlr r0 +/* 801F40C0 001F1020 38 21 00 20 */ addi r1, r1, 0x20 +/* 801F40C4 001F1024 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Weapons/CPlayerGun.s b/asm/Kyoto_CWD/Weapons/CPlayerGun.s new file mode 100644 index 00000000..3b96c760 --- /dev/null +++ b/asm/Kyoto_CWD/Weapons/CPlayerGun.s @@ -0,0 +1,3981 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global DrawClipCube__FRC6CAABox +DrawClipCube__FRC6CAABox: +/* 801B9C4C 001B6BAC 94 21 FE C0 */ stwu r1, -0x140(r1) +/* 801B9C50 001B6BB0 7C 08 02 A6 */ mflr r0 +/* 801B9C54 001B6BB4 C0 22 A9 D8 */ lfs f1, lbl_805AC6F8@sda21(r2) +/* 801B9C58 001B6BB8 90 01 01 44 */ stw r0, 0x144(r1) +/* 801B9C5C 001B6BBC FC 40 08 90 */ fmr f2, f1 +/* 801B9C60 001B6BC0 C0 82 A9 DC */ lfs f4, lbl_805AC6FC@sda21(r2) +/* 801B9C64 001B6BC4 93 E1 01 3C */ stw r31, 0x13c(r1) +/* 801B9C68 001B6BC8 FC 60 08 90 */ fmr f3, f1 +/* 801B9C6C 001B6BCC 7C 7F 1B 78 */ mr r31, r3 +/* 801B9C70 001B6BD0 38 61 00 08 */ addi r3, r1, 8 +/* 801B9C74 001B6BD4 48 1A 97 79 */ bl __ct__6CColorFffff +/* 801B9C78 001B6BD8 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801B9C7C 001B6BDC 81 83 00 00 */ lwz r12, 0(r3) +/* 801B9C80 001B6BE0 81 8C 00 68 */ lwz r12, 0x68(r12) +/* 801B9C84 001B6BE4 7D 89 03 A6 */ mtctr r12 +/* 801B9C88 001B6BE8 4E 80 04 21 */ bctrl +/* 801B9C8C 001B6BEC 38 60 00 00 */ li r3, 0 +/* 801B9C90 001B6BF0 48 15 1D E1 */ bl SetCullMode__9CGraphicsF12ERglCullMode +/* 801B9C94 001B6BF4 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801B9C98 001B6BF8 38 80 00 04 */ li r4, 4 +/* 801B9C9C 001B6BFC 81 83 00 00 */ lwz r12, 0(r3) +/* 801B9CA0 001B6C00 81 8C 00 A0 */ lwz r12, 0xa0(r12) +/* 801B9CA4 001B6C04 7D 89 03 A6 */ mtctr r12 +/* 801B9CA8 001B6C08 4E 80 04 21 */ bctrl +/* 801B9CAC 001B6C0C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801B9CB0 001B6C10 38 81 00 08 */ addi r4, r1, 8 +/* 801B9CB4 001B6C14 81 83 00 00 */ lwz r12, 0(r3) +/* 801B9CB8 001B6C18 81 8C 00 B4 */ lwz r12, 0xb4(r12) +/* 801B9CBC 001B6C1C 7D 89 03 A6 */ mtctr r12 +/* 801B9CC0 001B6C20 4E 80 04 21 */ bctrl +/* 801B9CC4 001B6C24 C0 3F 00 08 */ lfs f1, 8(r31) +/* 801B9CC8 001B6C28 38 81 01 20 */ addi r4, r1, 0x120 +/* 801B9CCC 001B6C2C C0 5F 00 10 */ lfs f2, 0x10(r31) +/* 801B9CD0 001B6C30 C0 1F 00 0C */ lfs f0, 0xc(r31) +/* 801B9CD4 001B6C34 D0 41 01 24 */ stfs f2, 0x124(r1) +/* 801B9CD8 001B6C38 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801B9CDC 001B6C3C D0 01 01 20 */ stfs f0, 0x120(r1) +/* 801B9CE0 001B6C40 D0 21 01 28 */ stfs f1, 0x128(r1) +/* 801B9CE4 001B6C44 81 83 00 00 */ lwz r12, 0(r3) +/* 801B9CE8 001B6C48 81 8C 00 A8 */ lwz r12, 0xa8(r12) +/* 801B9CEC 001B6C4C 7D 89 03 A6 */ mtctr r12 +/* 801B9CF0 001B6C50 4E 80 04 21 */ bctrl +/* 801B9CF4 001B6C54 C0 3F 00 08 */ lfs f1, 8(r31) +/* 801B9CF8 001B6C58 38 81 01 14 */ addi r4, r1, 0x114 +/* 801B9CFC 001B6C5C C0 5F 00 04 */ lfs f2, 4(r31) +/* 801B9D00 001B6C60 C0 1F 00 0C */ lfs f0, 0xc(r31) +/* 801B9D04 001B6C64 D0 41 01 18 */ stfs f2, 0x118(r1) +/* 801B9D08 001B6C68 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801B9D0C 001B6C6C D0 01 01 14 */ stfs f0, 0x114(r1) +/* 801B9D10 001B6C70 D0 21 01 1C */ stfs f1, 0x11c(r1) +/* 801B9D14 001B6C74 81 83 00 00 */ lwz r12, 0(r3) +/* 801B9D18 001B6C78 81 8C 00 A8 */ lwz r12, 0xa8(r12) +/* 801B9D1C 001B6C7C 7D 89 03 A6 */ mtctr r12 +/* 801B9D20 001B6C80 4E 80 04 21 */ bctrl +/* 801B9D24 001B6C84 C0 3F 00 14 */ lfs f1, 0x14(r31) +/* 801B9D28 001B6C88 38 81 01 08 */ addi r4, r1, 0x108 +/* 801B9D2C 001B6C8C C0 5F 00 10 */ lfs f2, 0x10(r31) +/* 801B9D30 001B6C90 C0 1F 00 0C */ lfs f0, 0xc(r31) +/* 801B9D34 001B6C94 D0 41 01 0C */ stfs f2, 0x10c(r1) +/* 801B9D38 001B6C98 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801B9D3C 001B6C9C D0 01 01 08 */ stfs f0, 0x108(r1) +/* 801B9D40 001B6CA0 D0 21 01 10 */ stfs f1, 0x110(r1) +/* 801B9D44 001B6CA4 81 83 00 00 */ lwz r12, 0(r3) +/* 801B9D48 001B6CA8 81 8C 00 A8 */ lwz r12, 0xa8(r12) +/* 801B9D4C 001B6CAC 7D 89 03 A6 */ mtctr r12 +/* 801B9D50 001B6CB0 4E 80 04 21 */ bctrl +/* 801B9D54 001B6CB4 C0 3F 00 14 */ lfs f1, 0x14(r31) +/* 801B9D58 001B6CB8 38 81 00 FC */ addi r4, r1, 0xfc +/* 801B9D5C 001B6CBC C0 5F 00 04 */ lfs f2, 4(r31) +/* 801B9D60 001B6CC0 C0 1F 00 0C */ lfs f0, 0xc(r31) +/* 801B9D64 001B6CC4 D0 41 01 00 */ stfs f2, 0x100(r1) +/* 801B9D68 001B6CC8 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801B9D6C 001B6CCC D0 01 00 FC */ stfs f0, 0xfc(r1) +/* 801B9D70 001B6CD0 D0 21 01 04 */ stfs f1, 0x104(r1) +/* 801B9D74 001B6CD4 81 83 00 00 */ lwz r12, 0(r3) +/* 801B9D78 001B6CD8 81 8C 00 A8 */ lwz r12, 0xa8(r12) +/* 801B9D7C 001B6CDC 7D 89 03 A6 */ mtctr r12 +/* 801B9D80 001B6CE0 4E 80 04 21 */ bctrl +/* 801B9D84 001B6CE4 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801B9D88 001B6CE8 81 83 00 00 */ lwz r12, 0(r3) +/* 801B9D8C 001B6CEC 81 8C 00 B8 */ lwz r12, 0xb8(r12) +/* 801B9D90 001B6CF0 7D 89 03 A6 */ mtctr r12 +/* 801B9D94 001B6CF4 4E 80 04 21 */ bctrl +/* 801B9D98 001B6CF8 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801B9D9C 001B6CFC 38 80 00 04 */ li r4, 4 +/* 801B9DA0 001B6D00 81 83 00 00 */ lwz r12, 0(r3) +/* 801B9DA4 001B6D04 81 8C 00 A0 */ lwz r12, 0xa0(r12) +/* 801B9DA8 001B6D08 7D 89 03 A6 */ mtctr r12 +/* 801B9DAC 001B6D0C 4E 80 04 21 */ bctrl +/* 801B9DB0 001B6D10 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801B9DB4 001B6D14 38 81 00 08 */ addi r4, r1, 8 +/* 801B9DB8 001B6D18 81 83 00 00 */ lwz r12, 0(r3) +/* 801B9DBC 001B6D1C 81 8C 00 B4 */ lwz r12, 0xb4(r12) +/* 801B9DC0 001B6D20 7D 89 03 A6 */ mtctr r12 +/* 801B9DC4 001B6D24 4E 80 04 21 */ bctrl +/* 801B9DC8 001B6D28 C0 3F 00 08 */ lfs f1, 8(r31) +/* 801B9DCC 001B6D2C 38 81 00 F0 */ addi r4, r1, 0xf0 +/* 801B9DD0 001B6D30 C0 5F 00 10 */ lfs f2, 0x10(r31) +/* 801B9DD4 001B6D34 C0 1F 00 00 */ lfs f0, 0(r31) +/* 801B9DD8 001B6D38 D0 41 00 F4 */ stfs f2, 0xf4(r1) +/* 801B9DDC 001B6D3C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801B9DE0 001B6D40 D0 01 00 F0 */ stfs f0, 0xf0(r1) +/* 801B9DE4 001B6D44 D0 21 00 F8 */ stfs f1, 0xf8(r1) +/* 801B9DE8 001B6D48 81 83 00 00 */ lwz r12, 0(r3) +/* 801B9DEC 001B6D4C 81 8C 00 A8 */ lwz r12, 0xa8(r12) +/* 801B9DF0 001B6D50 7D 89 03 A6 */ mtctr r12 +/* 801B9DF4 001B6D54 4E 80 04 21 */ bctrl +/* 801B9DF8 001B6D58 C0 3F 00 08 */ lfs f1, 8(r31) +/* 801B9DFC 001B6D5C 38 81 00 E4 */ addi r4, r1, 0xe4 +/* 801B9E00 001B6D60 C0 5F 00 10 */ lfs f2, 0x10(r31) +/* 801B9E04 001B6D64 C0 1F 00 0C */ lfs f0, 0xc(r31) +/* 801B9E08 001B6D68 D0 41 00 E8 */ stfs f2, 0xe8(r1) +/* 801B9E0C 001B6D6C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801B9E10 001B6D70 D0 01 00 E4 */ stfs f0, 0xe4(r1) +/* 801B9E14 001B6D74 D0 21 00 EC */ stfs f1, 0xec(r1) +/* 801B9E18 001B6D78 81 83 00 00 */ lwz r12, 0(r3) +/* 801B9E1C 001B6D7C 81 8C 00 A8 */ lwz r12, 0xa8(r12) +/* 801B9E20 001B6D80 7D 89 03 A6 */ mtctr r12 +/* 801B9E24 001B6D84 4E 80 04 21 */ bctrl +/* 801B9E28 001B6D88 C0 3F 00 14 */ lfs f1, 0x14(r31) +/* 801B9E2C 001B6D8C 38 81 00 D8 */ addi r4, r1, 0xd8 +/* 801B9E30 001B6D90 C0 5F 00 10 */ lfs f2, 0x10(r31) +/* 801B9E34 001B6D94 C0 1F 00 00 */ lfs f0, 0(r31) +/* 801B9E38 001B6D98 D0 41 00 DC */ stfs f2, 0xdc(r1) +/* 801B9E3C 001B6D9C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801B9E40 001B6DA0 D0 01 00 D8 */ stfs f0, 0xd8(r1) +/* 801B9E44 001B6DA4 D0 21 00 E0 */ stfs f1, 0xe0(r1) +/* 801B9E48 001B6DA8 81 83 00 00 */ lwz r12, 0(r3) +/* 801B9E4C 001B6DAC 81 8C 00 A8 */ lwz r12, 0xa8(r12) +/* 801B9E50 001B6DB0 7D 89 03 A6 */ mtctr r12 +/* 801B9E54 001B6DB4 4E 80 04 21 */ bctrl +/* 801B9E58 001B6DB8 C0 3F 00 14 */ lfs f1, 0x14(r31) +/* 801B9E5C 001B6DBC 38 81 00 CC */ addi r4, r1, 0xcc +/* 801B9E60 001B6DC0 C0 5F 00 10 */ lfs f2, 0x10(r31) +/* 801B9E64 001B6DC4 C0 1F 00 0C */ lfs f0, 0xc(r31) +/* 801B9E68 001B6DC8 D0 41 00 D0 */ stfs f2, 0xd0(r1) +/* 801B9E6C 001B6DCC 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801B9E70 001B6DD0 D0 01 00 CC */ stfs f0, 0xcc(r1) +/* 801B9E74 001B6DD4 D0 21 00 D4 */ stfs f1, 0xd4(r1) +/* 801B9E78 001B6DD8 81 83 00 00 */ lwz r12, 0(r3) +/* 801B9E7C 001B6DDC 81 8C 00 A8 */ lwz r12, 0xa8(r12) +/* 801B9E80 001B6DE0 7D 89 03 A6 */ mtctr r12 +/* 801B9E84 001B6DE4 4E 80 04 21 */ bctrl +/* 801B9E88 001B6DE8 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801B9E8C 001B6DEC 81 83 00 00 */ lwz r12, 0(r3) +/* 801B9E90 001B6DF0 81 8C 00 B8 */ lwz r12, 0xb8(r12) +/* 801B9E94 001B6DF4 7D 89 03 A6 */ mtctr r12 +/* 801B9E98 001B6DF8 4E 80 04 21 */ bctrl +/* 801B9E9C 001B6DFC 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801B9EA0 001B6E00 38 80 00 04 */ li r4, 4 +/* 801B9EA4 001B6E04 81 83 00 00 */ lwz r12, 0(r3) +/* 801B9EA8 001B6E08 81 8C 00 A0 */ lwz r12, 0xa0(r12) +/* 801B9EAC 001B6E0C 7D 89 03 A6 */ mtctr r12 +/* 801B9EB0 001B6E10 4E 80 04 21 */ bctrl +/* 801B9EB4 001B6E14 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801B9EB8 001B6E18 38 81 00 08 */ addi r4, r1, 8 +/* 801B9EBC 001B6E1C 81 83 00 00 */ lwz r12, 0(r3) +/* 801B9EC0 001B6E20 81 8C 00 B4 */ lwz r12, 0xb4(r12) +/* 801B9EC4 001B6E24 7D 89 03 A6 */ mtctr r12 +/* 801B9EC8 001B6E28 4E 80 04 21 */ bctrl +/* 801B9ECC 001B6E2C C0 3F 00 08 */ lfs f1, 8(r31) +/* 801B9ED0 001B6E30 38 81 00 C0 */ addi r4, r1, 0xc0 +/* 801B9ED4 001B6E34 C0 5F 00 10 */ lfs f2, 0x10(r31) +/* 801B9ED8 001B6E38 C0 1F 00 00 */ lfs f0, 0(r31) +/* 801B9EDC 001B6E3C D0 41 00 C4 */ stfs f2, 0xc4(r1) +/* 801B9EE0 001B6E40 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801B9EE4 001B6E44 D0 01 00 C0 */ stfs f0, 0xc0(r1) +/* 801B9EE8 001B6E48 D0 21 00 C8 */ stfs f1, 0xc8(r1) +/* 801B9EEC 001B6E4C 81 83 00 00 */ lwz r12, 0(r3) +/* 801B9EF0 001B6E50 81 8C 00 A8 */ lwz r12, 0xa8(r12) +/* 801B9EF4 001B6E54 7D 89 03 A6 */ mtctr r12 +/* 801B9EF8 001B6E58 4E 80 04 21 */ bctrl +/* 801B9EFC 001B6E5C C0 3F 00 08 */ lfs f1, 8(r31) +/* 801B9F00 001B6E60 38 81 00 B4 */ addi r4, r1, 0xb4 +/* 801B9F04 001B6E64 C0 5F 00 04 */ lfs f2, 4(r31) +/* 801B9F08 001B6E68 C0 1F 00 00 */ lfs f0, 0(r31) +/* 801B9F0C 001B6E6C D0 41 00 B8 */ stfs f2, 0xb8(r1) +/* 801B9F10 001B6E70 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801B9F14 001B6E74 D0 01 00 B4 */ stfs f0, 0xb4(r1) +/* 801B9F18 001B6E78 D0 21 00 BC */ stfs f1, 0xbc(r1) +/* 801B9F1C 001B6E7C 81 83 00 00 */ lwz r12, 0(r3) +/* 801B9F20 001B6E80 81 8C 00 A8 */ lwz r12, 0xa8(r12) +/* 801B9F24 001B6E84 7D 89 03 A6 */ mtctr r12 +/* 801B9F28 001B6E88 4E 80 04 21 */ bctrl +/* 801B9F2C 001B6E8C C0 3F 00 14 */ lfs f1, 0x14(r31) +/* 801B9F30 001B6E90 38 81 00 A8 */ addi r4, r1, 0xa8 +/* 801B9F34 001B6E94 C0 5F 00 10 */ lfs f2, 0x10(r31) +/* 801B9F38 001B6E98 C0 1F 00 00 */ lfs f0, 0(r31) +/* 801B9F3C 001B6E9C D0 41 00 AC */ stfs f2, 0xac(r1) +/* 801B9F40 001B6EA0 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801B9F44 001B6EA4 D0 01 00 A8 */ stfs f0, 0xa8(r1) +/* 801B9F48 001B6EA8 D0 21 00 B0 */ stfs f1, 0xb0(r1) +/* 801B9F4C 001B6EAC 81 83 00 00 */ lwz r12, 0(r3) +/* 801B9F50 001B6EB0 81 8C 00 A8 */ lwz r12, 0xa8(r12) +/* 801B9F54 001B6EB4 7D 89 03 A6 */ mtctr r12 +/* 801B9F58 001B6EB8 4E 80 04 21 */ bctrl +/* 801B9F5C 001B6EBC C0 3F 00 14 */ lfs f1, 0x14(r31) +/* 801B9F60 001B6EC0 38 81 00 9C */ addi r4, r1, 0x9c +/* 801B9F64 001B6EC4 C0 5F 00 04 */ lfs f2, 4(r31) +/* 801B9F68 001B6EC8 C0 1F 00 00 */ lfs f0, 0(r31) +/* 801B9F6C 001B6ECC D0 41 00 A0 */ stfs f2, 0xa0(r1) +/* 801B9F70 001B6ED0 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801B9F74 001B6ED4 D0 01 00 9C */ stfs f0, 0x9c(r1) +/* 801B9F78 001B6ED8 D0 21 00 A4 */ stfs f1, 0xa4(r1) +/* 801B9F7C 001B6EDC 81 83 00 00 */ lwz r12, 0(r3) +/* 801B9F80 001B6EE0 81 8C 00 A8 */ lwz r12, 0xa8(r12) +/* 801B9F84 001B6EE4 7D 89 03 A6 */ mtctr r12 +/* 801B9F88 001B6EE8 4E 80 04 21 */ bctrl +/* 801B9F8C 001B6EEC 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801B9F90 001B6EF0 81 83 00 00 */ lwz r12, 0(r3) +/* 801B9F94 001B6EF4 81 8C 00 B8 */ lwz r12, 0xb8(r12) +/* 801B9F98 001B6EF8 7D 89 03 A6 */ mtctr r12 +/* 801B9F9C 001B6EFC 4E 80 04 21 */ bctrl +/* 801B9FA0 001B6F00 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801B9FA4 001B6F04 38 80 00 04 */ li r4, 4 +/* 801B9FA8 001B6F08 81 83 00 00 */ lwz r12, 0(r3) +/* 801B9FAC 001B6F0C 81 8C 00 A0 */ lwz r12, 0xa0(r12) +/* 801B9FB0 001B6F10 7D 89 03 A6 */ mtctr r12 +/* 801B9FB4 001B6F14 4E 80 04 21 */ bctrl +/* 801B9FB8 001B6F18 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801B9FBC 001B6F1C 38 81 00 08 */ addi r4, r1, 8 +/* 801B9FC0 001B6F20 81 83 00 00 */ lwz r12, 0(r3) +/* 801B9FC4 001B6F24 81 8C 00 B4 */ lwz r12, 0xb4(r12) +/* 801B9FC8 001B6F28 7D 89 03 A6 */ mtctr r12 +/* 801B9FCC 001B6F2C 4E 80 04 21 */ bctrl +/* 801B9FD0 001B6F30 C0 3F 00 08 */ lfs f1, 8(r31) +/* 801B9FD4 001B6F34 38 81 00 90 */ addi r4, r1, 0x90 +/* 801B9FD8 001B6F38 C0 5F 00 04 */ lfs f2, 4(r31) +/* 801B9FDC 001B6F3C C0 1F 00 00 */ lfs f0, 0(r31) +/* 801B9FE0 001B6F40 D0 41 00 94 */ stfs f2, 0x94(r1) +/* 801B9FE4 001B6F44 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801B9FE8 001B6F48 D0 01 00 90 */ stfs f0, 0x90(r1) +/* 801B9FEC 001B6F4C D0 21 00 98 */ stfs f1, 0x98(r1) +/* 801B9FF0 001B6F50 81 83 00 00 */ lwz r12, 0(r3) +/* 801B9FF4 001B6F54 81 8C 00 A8 */ lwz r12, 0xa8(r12) +/* 801B9FF8 001B6F58 7D 89 03 A6 */ mtctr r12 +/* 801B9FFC 001B6F5C 4E 80 04 21 */ bctrl +/* 801BA000 001B6F60 C0 3F 00 08 */ lfs f1, 8(r31) +/* 801BA004 001B6F64 38 81 00 84 */ addi r4, r1, 0x84 +/* 801BA008 001B6F68 C0 5F 00 04 */ lfs f2, 4(r31) +/* 801BA00C 001B6F6C C0 1F 00 0C */ lfs f0, 0xc(r31) +/* 801BA010 001B6F70 D0 41 00 88 */ stfs f2, 0x88(r1) +/* 801BA014 001B6F74 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801BA018 001B6F78 D0 01 00 84 */ stfs f0, 0x84(r1) +/* 801BA01C 001B6F7C D0 21 00 8C */ stfs f1, 0x8c(r1) +/* 801BA020 001B6F80 81 83 00 00 */ lwz r12, 0(r3) +/* 801BA024 001B6F84 81 8C 00 A8 */ lwz r12, 0xa8(r12) +/* 801BA028 001B6F88 7D 89 03 A6 */ mtctr r12 +/* 801BA02C 001B6F8C 4E 80 04 21 */ bctrl +/* 801BA030 001B6F90 C0 3F 00 14 */ lfs f1, 0x14(r31) +/* 801BA034 001B6F94 38 81 00 78 */ addi r4, r1, 0x78 +/* 801BA038 001B6F98 C0 5F 00 04 */ lfs f2, 4(r31) +/* 801BA03C 001B6F9C C0 1F 00 00 */ lfs f0, 0(r31) +/* 801BA040 001B6FA0 D0 41 00 7C */ stfs f2, 0x7c(r1) +/* 801BA044 001B6FA4 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801BA048 001B6FA8 D0 01 00 78 */ stfs f0, 0x78(r1) +/* 801BA04C 001B6FAC D0 21 00 80 */ stfs f1, 0x80(r1) +/* 801BA050 001B6FB0 81 83 00 00 */ lwz r12, 0(r3) +/* 801BA054 001B6FB4 81 8C 00 A8 */ lwz r12, 0xa8(r12) +/* 801BA058 001B6FB8 7D 89 03 A6 */ mtctr r12 +/* 801BA05C 001B6FBC 4E 80 04 21 */ bctrl +/* 801BA060 001B6FC0 C0 3F 00 14 */ lfs f1, 0x14(r31) +/* 801BA064 001B6FC4 38 81 00 6C */ addi r4, r1, 0x6c +/* 801BA068 001B6FC8 C0 5F 00 04 */ lfs f2, 4(r31) +/* 801BA06C 001B6FCC C0 1F 00 0C */ lfs f0, 0xc(r31) +/* 801BA070 001B6FD0 D0 41 00 70 */ stfs f2, 0x70(r1) +/* 801BA074 001B6FD4 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801BA078 001B6FD8 D0 01 00 6C */ stfs f0, 0x6c(r1) +/* 801BA07C 001B6FDC D0 21 00 74 */ stfs f1, 0x74(r1) +/* 801BA080 001B6FE0 81 83 00 00 */ lwz r12, 0(r3) +/* 801BA084 001B6FE4 81 8C 00 A8 */ lwz r12, 0xa8(r12) +/* 801BA088 001B6FE8 7D 89 03 A6 */ mtctr r12 +/* 801BA08C 001B6FEC 4E 80 04 21 */ bctrl +/* 801BA090 001B6FF0 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801BA094 001B6FF4 81 83 00 00 */ lwz r12, 0(r3) +/* 801BA098 001B6FF8 81 8C 00 B8 */ lwz r12, 0xb8(r12) +/* 801BA09C 001B6FFC 7D 89 03 A6 */ mtctr r12 +/* 801BA0A0 001B7000 4E 80 04 21 */ bctrl +/* 801BA0A4 001B7004 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801BA0A8 001B7008 38 80 00 04 */ li r4, 4 +/* 801BA0AC 001B700C 81 83 00 00 */ lwz r12, 0(r3) +/* 801BA0B0 001B7010 81 8C 00 A0 */ lwz r12, 0xa0(r12) +/* 801BA0B4 001B7014 7D 89 03 A6 */ mtctr r12 +/* 801BA0B8 001B7018 4E 80 04 21 */ bctrl +/* 801BA0BC 001B701C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801BA0C0 001B7020 38 81 00 08 */ addi r4, r1, 8 +/* 801BA0C4 001B7024 81 83 00 00 */ lwz r12, 0(r3) +/* 801BA0C8 001B7028 81 8C 00 B4 */ lwz r12, 0xb4(r12) +/* 801BA0CC 001B702C 7D 89 03 A6 */ mtctr r12 +/* 801BA0D0 001B7030 4E 80 04 21 */ bctrl +/* 801BA0D4 001B7034 C0 3F 00 14 */ lfs f1, 0x14(r31) +/* 801BA0D8 001B7038 38 81 00 60 */ addi r4, r1, 0x60 +/* 801BA0DC 001B703C C0 5F 00 04 */ lfs f2, 4(r31) +/* 801BA0E0 001B7040 C0 1F 00 00 */ lfs f0, 0(r31) +/* 801BA0E4 001B7044 D0 41 00 64 */ stfs f2, 0x64(r1) +/* 801BA0E8 001B7048 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801BA0EC 001B704C D0 01 00 60 */ stfs f0, 0x60(r1) +/* 801BA0F0 001B7050 D0 21 00 68 */ stfs f1, 0x68(r1) +/* 801BA0F4 001B7054 81 83 00 00 */ lwz r12, 0(r3) +/* 801BA0F8 001B7058 81 8C 00 A8 */ lwz r12, 0xa8(r12) +/* 801BA0FC 001B705C 7D 89 03 A6 */ mtctr r12 +/* 801BA100 001B7060 4E 80 04 21 */ bctrl +/* 801BA104 001B7064 C0 3F 00 14 */ lfs f1, 0x14(r31) +/* 801BA108 001B7068 38 81 00 54 */ addi r4, r1, 0x54 +/* 801BA10C 001B706C C0 5F 00 04 */ lfs f2, 4(r31) +/* 801BA110 001B7070 C0 1F 00 0C */ lfs f0, 0xc(r31) +/* 801BA114 001B7074 D0 41 00 58 */ stfs f2, 0x58(r1) +/* 801BA118 001B7078 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801BA11C 001B707C D0 01 00 54 */ stfs f0, 0x54(r1) +/* 801BA120 001B7080 D0 21 00 5C */ stfs f1, 0x5c(r1) +/* 801BA124 001B7084 81 83 00 00 */ lwz r12, 0(r3) +/* 801BA128 001B7088 81 8C 00 A8 */ lwz r12, 0xa8(r12) +/* 801BA12C 001B708C 7D 89 03 A6 */ mtctr r12 +/* 801BA130 001B7090 4E 80 04 21 */ bctrl +/* 801BA134 001B7094 C0 3F 00 14 */ lfs f1, 0x14(r31) +/* 801BA138 001B7098 38 81 00 48 */ addi r4, r1, 0x48 +/* 801BA13C 001B709C C0 5F 00 10 */ lfs f2, 0x10(r31) +/* 801BA140 001B70A0 C0 1F 00 00 */ lfs f0, 0(r31) +/* 801BA144 001B70A4 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 801BA148 001B70A8 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801BA14C 001B70AC D0 01 00 48 */ stfs f0, 0x48(r1) +/* 801BA150 001B70B0 D0 21 00 50 */ stfs f1, 0x50(r1) +/* 801BA154 001B70B4 81 83 00 00 */ lwz r12, 0(r3) +/* 801BA158 001B70B8 81 8C 00 A8 */ lwz r12, 0xa8(r12) +/* 801BA15C 001B70BC 7D 89 03 A6 */ mtctr r12 +/* 801BA160 001B70C0 4E 80 04 21 */ bctrl +/* 801BA164 001B70C4 C0 3F 00 14 */ lfs f1, 0x14(r31) +/* 801BA168 001B70C8 38 81 00 3C */ addi r4, r1, 0x3c +/* 801BA16C 001B70CC C0 5F 00 10 */ lfs f2, 0x10(r31) +/* 801BA170 001B70D0 C0 1F 00 0C */ lfs f0, 0xc(r31) +/* 801BA174 001B70D4 D0 41 00 40 */ stfs f2, 0x40(r1) +/* 801BA178 001B70D8 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801BA17C 001B70DC D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 801BA180 001B70E0 D0 21 00 44 */ stfs f1, 0x44(r1) +/* 801BA184 001B70E4 81 83 00 00 */ lwz r12, 0(r3) +/* 801BA188 001B70E8 81 8C 00 A8 */ lwz r12, 0xa8(r12) +/* 801BA18C 001B70EC 7D 89 03 A6 */ mtctr r12 +/* 801BA190 001B70F0 4E 80 04 21 */ bctrl +/* 801BA194 001B70F4 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801BA198 001B70F8 81 83 00 00 */ lwz r12, 0(r3) +/* 801BA19C 001B70FC 81 8C 00 B8 */ lwz r12, 0xb8(r12) +/* 801BA1A0 001B7100 7D 89 03 A6 */ mtctr r12 +/* 801BA1A4 001B7104 4E 80 04 21 */ bctrl +/* 801BA1A8 001B7108 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801BA1AC 001B710C 38 80 00 04 */ li r4, 4 +/* 801BA1B0 001B7110 81 83 00 00 */ lwz r12, 0(r3) +/* 801BA1B4 001B7114 81 8C 00 A0 */ lwz r12, 0xa0(r12) +/* 801BA1B8 001B7118 7D 89 03 A6 */ mtctr r12 +/* 801BA1BC 001B711C 4E 80 04 21 */ bctrl +/* 801BA1C0 001B7120 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801BA1C4 001B7124 38 81 00 08 */ addi r4, r1, 8 +/* 801BA1C8 001B7128 81 83 00 00 */ lwz r12, 0(r3) +/* 801BA1CC 001B712C 81 8C 00 B4 */ lwz r12, 0xb4(r12) +/* 801BA1D0 001B7130 7D 89 03 A6 */ mtctr r12 +/* 801BA1D4 001B7134 4E 80 04 21 */ bctrl +/* 801BA1D8 001B7138 C0 3F 00 08 */ lfs f1, 8(r31) +/* 801BA1DC 001B713C 38 81 00 30 */ addi r4, r1, 0x30 +/* 801BA1E0 001B7140 C0 5F 00 04 */ lfs f2, 4(r31) +/* 801BA1E4 001B7144 C0 1F 00 00 */ lfs f0, 0(r31) +/* 801BA1E8 001B7148 D0 41 00 34 */ stfs f2, 0x34(r1) +/* 801BA1EC 001B714C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801BA1F0 001B7150 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801BA1F4 001B7154 D0 21 00 38 */ stfs f1, 0x38(r1) +/* 801BA1F8 001B7158 81 83 00 00 */ lwz r12, 0(r3) +/* 801BA1FC 001B715C 81 8C 00 A8 */ lwz r12, 0xa8(r12) +/* 801BA200 001B7160 7D 89 03 A6 */ mtctr r12 +/* 801BA204 001B7164 4E 80 04 21 */ bctrl +/* 801BA208 001B7168 C0 3F 00 08 */ lfs f1, 8(r31) +/* 801BA20C 001B716C 38 81 00 24 */ addi r4, r1, 0x24 +/* 801BA210 001B7170 C0 5F 00 04 */ lfs f2, 4(r31) +/* 801BA214 001B7174 C0 1F 00 0C */ lfs f0, 0xc(r31) +/* 801BA218 001B7178 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 801BA21C 001B717C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801BA220 001B7180 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801BA224 001B7184 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 801BA228 001B7188 81 83 00 00 */ lwz r12, 0(r3) +/* 801BA22C 001B718C 81 8C 00 A8 */ lwz r12, 0xa8(r12) +/* 801BA230 001B7190 7D 89 03 A6 */ mtctr r12 +/* 801BA234 001B7194 4E 80 04 21 */ bctrl +/* 801BA238 001B7198 C0 3F 00 08 */ lfs f1, 8(r31) +/* 801BA23C 001B719C 38 81 00 18 */ addi r4, r1, 0x18 +/* 801BA240 001B71A0 C0 5F 00 10 */ lfs f2, 0x10(r31) +/* 801BA244 001B71A4 C0 1F 00 00 */ lfs f0, 0(r31) +/* 801BA248 001B71A8 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 801BA24C 001B71AC 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801BA250 001B71B0 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801BA254 001B71B4 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 801BA258 001B71B8 81 83 00 00 */ lwz r12, 0(r3) +/* 801BA25C 001B71BC 81 8C 00 A8 */ lwz r12, 0xa8(r12) +/* 801BA260 001B71C0 7D 89 03 A6 */ mtctr r12 +/* 801BA264 001B71C4 4E 80 04 21 */ bctrl +/* 801BA268 001B71C8 C0 3F 00 08 */ lfs f1, 8(r31) +/* 801BA26C 001B71CC 38 81 00 0C */ addi r4, r1, 0xc +/* 801BA270 001B71D0 C0 5F 00 10 */ lfs f2, 0x10(r31) +/* 801BA274 001B71D4 C0 1F 00 0C */ lfs f0, 0xc(r31) +/* 801BA278 001B71D8 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 801BA27C 001B71DC 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801BA280 001B71E0 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801BA284 001B71E4 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 801BA288 001B71E8 81 83 00 00 */ lwz r12, 0(r3) +/* 801BA28C 001B71EC 81 8C 00 A8 */ lwz r12, 0xa8(r12) +/* 801BA290 001B71F0 7D 89 03 A6 */ mtctr r12 +/* 801BA294 001B71F4 4E 80 04 21 */ bctrl +/* 801BA298 001B71F8 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801BA29C 001B71FC 81 83 00 00 */ lwz r12, 0(r3) +/* 801BA2A0 001B7200 81 8C 00 B8 */ lwz r12, 0xb8(r12) +/* 801BA2A4 001B7204 7D 89 03 A6 */ mtctr r12 +/* 801BA2A8 001B7208 4E 80 04 21 */ bctrl +/* 801BA2AC 001B720C 38 60 00 01 */ li r3, 1 +/* 801BA2B0 001B7210 48 15 17 C1 */ bl SetCullMode__9CGraphicsF12ERglCullMode +/* 801BA2B4 001B7214 80 01 01 44 */ lwz r0, 0x144(r1) +/* 801BA2B8 001B7218 83 E1 01 3C */ lwz r31, 0x13c(r1) +/* 801BA2BC 001B721C 7C 08 03 A6 */ mtlr r0 +/* 801BA2C0 001B7220 38 21 01 40 */ addi r1, r1, 0x140 +/* 801BA2C4 001B7224 4E 80 00 20 */ blr + +.global EnableFrozenEffect__10CGunWeaponF13EFrozenFxType +EnableFrozenEffect__10CGunWeaponF13EFrozenFxType: +/* 801BA2C8 001B7228 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801BA2CC 001B722C 7C 08 02 A6 */ mflr r0 +/* 801BA2D0 001B7230 90 01 00 34 */ stw r0, 0x34(r1) +/* 801BA2D4 001B7234 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801BA2D8 001B7238 7C 9F 23 78 */ mr r31, r4 +/* 801BA2DC 001B723C 2C 1F 00 02 */ cmpwi r31, 2 +/* 801BA2E0 001B7240 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801BA2E4 001B7244 7C 7E 1B 78 */ mr r30, r3 +/* 801BA2E8 001B7248 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801BA2EC 001B724C 93 81 00 20 */ stw r28, 0x20(r1) +/* 801BA2F0 001B7250 41 82 00 14 */ beq lbl_801BA304 +/* 801BA2F4 001B7254 40 80 01 64 */ bge lbl_801BA458 +/* 801BA2F8 001B7258 2C 1F 00 01 */ cmpwi r31, 1 +/* 801BA2FC 001B725C 40 80 00 B4 */ bge lbl_801BA3B0 +/* 801BA300 001B7260 48 00 01 58 */ b lbl_801BA458 +lbl_801BA304: +/* 801BA304 001B7264 80 1E 02 04 */ lwz r0, 0x204(r30) +/* 801BA308 001B7268 2C 00 00 02 */ cmpwi r0, 2 +/* 801BA30C 001B726C 41 82 01 4C */ beq lbl_801BA458 +/* 801BA310 001B7270 3C 60 80 3D */ lis r3, lbl_803D1828@ha +/* 801BA314 001B7274 3B 80 00 00 */ li r28, 0 +/* 801BA318 001B7278 38 83 18 28 */ addi r4, r3, lbl_803D1828@l +/* 801BA31C 001B727C 38 60 03 40 */ li r3, 0x340 +/* 801BA320 001B7280 38 84 01 B5 */ addi r4, r4, 0x1b5 +/* 801BA324 001B7284 38 A0 00 00 */ li r5, 0 +/* 801BA328 001B7288 48 15 B5 45 */ bl __nw__FUlPCcPCc +/* 801BA32C 001B728C 7C 7D 1B 79 */ or. r29, r3, r3 +/* 801BA330 001B7290 41 82 00 2C */ beq lbl_801BA35C +/* 801BA334 001B7294 38 61 00 10 */ addi r3, r1, 0x10 +/* 801BA338 001B7298 38 9E 01 98 */ addi r4, r30, 0x198 +/* 801BA33C 001B729C 48 18 6B 6D */ bl __ct__6CTokenFRC6CToken +/* 801BA340 001B72A0 7F A3 EB 78 */ mr r3, r29 +/* 801BA344 001B72A4 38 81 00 10 */ addi r4, r1, 0x10 +/* 801BA348 001B72A8 3B 80 00 01 */ li r28, 1 +/* 801BA34C 001B72AC 38 A0 00 00 */ li r5, 0 +/* 801BA350 001B72B0 38 C0 00 01 */ li r6, 1 +/* 801BA354 001B72B4 48 16 50 8D */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 801BA358 001B72B8 7C 7D 1B 78 */ mr r29, r3 +lbl_801BA35C: +/* 801BA35C 001B72BC 80 7E 01 B8 */ lwz r3, 0x1b8(r30) +/* 801BA360 001B72C0 28 03 00 00 */ cmplwi r3, 0 +/* 801BA364 001B72C4 41 82 00 18 */ beq lbl_801BA37C +/* 801BA368 001B72C8 81 83 00 00 */ lwz r12, 0(r3) +/* 801BA36C 001B72CC 38 80 00 01 */ li r4, 1 +/* 801BA370 001B72D0 81 8C 00 08 */ lwz r12, 8(r12) +/* 801BA374 001B72D4 7D 89 03 A6 */ mtctr r12 +/* 801BA378 001B72D8 4E 80 04 21 */ bctrl +lbl_801BA37C: +/* 801BA37C 001B72DC 7F 80 07 75 */ extsb. r0, r28 +/* 801BA380 001B72E0 93 BE 01 B8 */ stw r29, 0x1b8(r30) +/* 801BA384 001B72E4 41 82 00 10 */ beq lbl_801BA394 +/* 801BA388 001B72E8 38 61 00 10 */ addi r3, r1, 0x10 +/* 801BA38C 001B72EC 38 80 00 00 */ li r4, 0 +/* 801BA390 001B72F0 48 18 6A B1 */ bl __dt__6CTokenFv +lbl_801BA394: +/* 801BA394 001B72F4 80 7E 01 B8 */ lwz r3, 0x1b8(r30) +/* 801BA398 001B72F8 38 9E 00 04 */ addi r4, r30, 4 +/* 801BA39C 001B72FC 81 83 00 00 */ lwz r12, 0(r3) +/* 801BA3A0 001B7300 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 801BA3A4 001B7304 7D 89 03 A6 */ mtctr r12 +/* 801BA3A8 001B7308 4E 80 04 21 */ bctrl +/* 801BA3AC 001B730C 48 00 00 AC */ b lbl_801BA458 +lbl_801BA3B0: +/* 801BA3B0 001B7310 80 1E 02 04 */ lwz r0, 0x204(r30) +/* 801BA3B4 001B7314 2C 00 00 01 */ cmpwi r0, 1 +/* 801BA3B8 001B7318 41 82 00 A0 */ beq lbl_801BA458 +/* 801BA3BC 001B731C 3C 60 80 3D */ lis r3, lbl_803D1828@ha +/* 801BA3C0 001B7320 3B 80 00 00 */ li r28, 0 +/* 801BA3C4 001B7324 38 83 18 28 */ addi r4, r3, lbl_803D1828@l +/* 801BA3C8 001B7328 38 60 03 40 */ li r3, 0x340 +/* 801BA3CC 001B732C 38 84 01 B5 */ addi r4, r4, 0x1b5 +/* 801BA3D0 001B7330 38 A0 00 00 */ li r5, 0 +/* 801BA3D4 001B7334 48 15 B4 99 */ bl __nw__FUlPCcPCc +/* 801BA3D8 001B7338 7C 7D 1B 79 */ or. r29, r3, r3 +/* 801BA3DC 001B733C 41 82 00 2C */ beq lbl_801BA408 +/* 801BA3E0 001B7340 38 61 00 08 */ addi r3, r1, 8 +/* 801BA3E4 001B7344 38 9E 01 8C */ addi r4, r30, 0x18c +/* 801BA3E8 001B7348 48 18 6A C1 */ bl __ct__6CTokenFRC6CToken +/* 801BA3EC 001B734C 7F A3 EB 78 */ mr r3, r29 +/* 801BA3F0 001B7350 38 81 00 08 */ addi r4, r1, 8 +/* 801BA3F4 001B7354 3B 80 00 01 */ li r28, 1 +/* 801BA3F8 001B7358 38 A0 00 00 */ li r5, 0 +/* 801BA3FC 001B735C 38 C0 00 01 */ li r6, 1 +/* 801BA400 001B7360 48 16 4F E1 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 801BA404 001B7364 7C 7D 1B 78 */ mr r29, r3 +lbl_801BA408: +/* 801BA408 001B7368 80 7E 01 B8 */ lwz r3, 0x1b8(r30) +/* 801BA40C 001B736C 28 03 00 00 */ cmplwi r3, 0 +/* 801BA410 001B7370 41 82 00 18 */ beq lbl_801BA428 +/* 801BA414 001B7374 81 83 00 00 */ lwz r12, 0(r3) +/* 801BA418 001B7378 38 80 00 01 */ li r4, 1 +/* 801BA41C 001B737C 81 8C 00 08 */ lwz r12, 8(r12) +/* 801BA420 001B7380 7D 89 03 A6 */ mtctr r12 +/* 801BA424 001B7384 4E 80 04 21 */ bctrl +lbl_801BA428: +/* 801BA428 001B7388 7F 80 07 75 */ extsb. r0, r28 +/* 801BA42C 001B738C 93 BE 01 B8 */ stw r29, 0x1b8(r30) +/* 801BA430 001B7390 41 82 00 10 */ beq lbl_801BA440 +/* 801BA434 001B7394 38 61 00 08 */ addi r3, r1, 8 +/* 801BA438 001B7398 38 80 00 00 */ li r4, 0 +/* 801BA43C 001B739C 48 18 6A 05 */ bl __dt__6CTokenFv +lbl_801BA440: +/* 801BA440 001B73A0 80 7E 01 B8 */ lwz r3, 0x1b8(r30) +/* 801BA444 001B73A4 38 9E 00 04 */ addi r4, r30, 4 +/* 801BA448 001B73A8 81 83 00 00 */ lwz r12, 0(r3) +/* 801BA44C 001B73AC 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 801BA450 001B73B0 7D 89 03 A6 */ mtctr r12 +/* 801BA454 001B73B4 4E 80 04 21 */ bctrl +lbl_801BA458: +/* 801BA458 001B73B8 93 FE 02 04 */ stw r31, 0x204(r30) +/* 801BA45C 001B73BC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801BA460 001B73C0 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801BA464 001B73C4 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801BA468 001B73C8 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801BA46C 001B73CC 83 81 00 20 */ lwz r28, 0x20(r1) +/* 801BA470 001B73D0 7C 08 03 A6 */ mtlr r0 +/* 801BA474 001B73D4 38 21 00 30 */ addi r1, r1, 0x30 +/* 801BA478 001B73D8 4E 80 00 20 */ blr + +.global PointGenerator__10CGunWeaponFPvPC9CVector3fPC9CVector3fi +PointGenerator__10CGunWeaponFPvPC9CVector3fPC9CVector3fi: +/* 801BA47C 001B73DC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801BA480 001B73E0 7C 08 02 A6 */ mflr r0 +/* 801BA484 001B73E4 90 01 00 14 */ stw r0, 0x14(r1) +/* 801BA488 001B73E8 48 0B 01 59 */ bl GeneratePoints__20CRainSplashGeneratorFPC9CVector3fPC9CVector3fi +/* 801BA48C 001B73EC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801BA490 001B73F0 7C 08 03 A6 */ mtlr r0 +/* 801BA494 001B73F4 38 21 00 10 */ addi r1, r1, 0x10 +/* 801BA498 001B73F8 4E 80 00 20 */ blr + +.global LoadSuitArm__10CGunWeaponFR13CStateManager +LoadSuitArm__10CGunWeaponFR13CStateManager: +/* 801BA49C 001B73FC 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 801BA4A0 001B7400 7C 08 02 A6 */ mflr r0 +/* 801BA4A4 001B7404 90 01 00 74 */ stw r0, 0x74(r1) +/* 801BA4A8 001B7408 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 801BA4AC 001B740C 7C 7F 1B 78 */ mr r31, r3 +/* 801BA4B0 001B7410 80 63 01 3C */ lwz r3, 0x13c(r3) +/* 801BA4B4 001B7414 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801BA4B8 001B7418 28 00 00 00 */ cmplwi r0, 0 +/* 801BA4BC 001B741C 41 82 00 88 */ beq lbl_801BA544 +/* 801BA4C0 001B7420 7C 83 23 78 */ mr r3, r4 +/* 801BA4C4 001B7424 48 0D 05 09 */ bl get_current_suit__12NWeaponTypesFRC13CStateManager +/* 801BA4C8 001B7428 3C 80 80 3D */ lis r4, lbl_803D17DC@ha +/* 801BA4CC 001B742C 54 60 10 3A */ slwi r0, r3, 2 +/* 801BA4D0 001B7430 38 64 17 DC */ addi r3, r4, lbl_803D17DC@l +/* 801BA4D4 001B7434 7C 63 00 2E */ lwzx r3, r3, r0 +/* 801BA4D8 001B7438 48 0D 0F 71 */ bl get_asset_id_from_name__12NWeaponTypesFPCc +/* 801BA4DC 001B743C 90 61 00 08 */ stw r3, 8(r1) +/* 801BA4E0 001B7440 38 61 00 18 */ addi r3, r1, 0x18 +/* 801BA4E4 001B7444 38 81 00 08 */ addi r4, r1, 8 +/* 801BA4E8 001B7448 C0 1F 00 04 */ lfs f0, 4(r31) +/* 801BA4EC 001B744C D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801BA4F0 001B7450 C0 1F 00 08 */ lfs f0, 8(r31) +/* 801BA4F4 001B7454 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801BA4F8 001B7458 C0 1F 00 0C */ lfs f0, 0xc(r31) +/* 801BA4FC 001B745C D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801BA500 001B7460 4B F5 C8 5D */ bl __ct__10CModelDataFRC10CStaticRes +/* 801BA504 001B7464 38 7F 00 B0 */ addi r3, r31, 0xb0 +/* 801BA508 001B7468 38 81 00 18 */ addi r4, r1, 0x18 +/* 801BA50C 001B746C 4B F2 39 6D */ bl sub_800dde78 +/* 801BA510 001B7470 38 61 00 18 */ addi r3, r1, 0x18 +/* 801BA514 001B7474 38 80 FF FF */ li r4, -1 +/* 801BA518 001B7478 4B F5 C5 35 */ bl __dt__10CModelDataFv +/* 801BA51C 001B747C 88 1F 00 C4 */ lbz r0, 0xc4(r31) +/* 801BA520 001B7480 38 60 00 01 */ li r3, 1 +/* 801BA524 001B7484 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801BA528 001B7488 38 80 00 00 */ li r4, 0 +/* 801BA52C 001B748C 98 1F 00 C4 */ stb r0, 0xc4(r31) +/* 801BA530 001B7490 38 7F 01 3C */ addi r3, r31, 0x13c +/* 801BA534 001B7494 88 1F 02 18 */ lbz r0, 0x218(r31) +/* 801BA538 001B7498 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c +/* 801BA53C 001B749C 98 1F 02 18 */ stb r0, 0x218(r31) +/* 801BA540 001B74A0 48 18 68 01 */ bl Unlock__6CTokenFv +lbl_801BA544: +/* 801BA544 001B74A4 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801BA548 001B74A8 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 801BA54C 001B74AC 7C 08 03 A6 */ mtlr r0 +/* 801BA550 001B74B0 38 21 00 70 */ addi r1, r1, 0x70 +/* 801BA554 001B74B4 4E 80 00 20 */ blr + +.global AsyncLoadSuitArm__10CGunWeaponFR13CStateManager +AsyncLoadSuitArm__10CGunWeaponFR13CStateManager: +/* 801BA558 001B74B8 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 801BA55C 001B74BC 7C 08 02 A6 */ mflr r0 +/* 801BA560 001B74C0 90 01 00 74 */ stw r0, 0x74(r1) +/* 801BA564 001B74C4 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 801BA568 001B74C8 93 C1 00 68 */ stw r30, 0x68(r1) +/* 801BA56C 001B74CC 7C 7E 1B 78 */ mr r30, r3 +/* 801BA570 001B74D0 7C 83 23 78 */ mr r3, r4 +/* 801BA574 001B74D4 48 0D 04 59 */ bl get_current_suit__12NWeaponTypesFRC13CStateManager +/* 801BA578 001B74D8 38 00 00 00 */ li r0, 0 +/* 801BA57C 001B74DC 7C 7F 1B 78 */ mr r31, r3 +/* 801BA580 001B74E0 98 01 00 64 */ stb r0, 0x64(r1) +/* 801BA584 001B74E4 38 7E 00 B0 */ addi r3, r30, 0xb0 +/* 801BA588 001B74E8 38 81 00 18 */ addi r4, r1, 0x18 +/* 801BA58C 001B74EC 4B F6 37 C1 */ bl sub_8011dd4c +/* 801BA590 001B74F0 88 01 00 64 */ lbz r0, 0x64(r1) +/* 801BA594 001B74F4 28 00 00 00 */ cmplwi r0, 0 +/* 801BA598 001B74F8 41 82 00 10 */ beq lbl_801BA5A8 +/* 801BA59C 001B74FC 38 61 00 18 */ addi r3, r1, 0x18 +/* 801BA5A0 001B7500 38 80 FF FF */ li r4, -1 +/* 801BA5A4 001B7504 4B F5 C4 A9 */ bl __dt__10CModelDataFv +lbl_801BA5A8: +/* 801BA5A8 001B7508 38 00 00 00 */ li r0, 0 +/* 801BA5AC 001B750C 3C 60 80 3D */ lis r3, lbl_803D17DC@ha +/* 801BA5B0 001B7510 98 01 00 64 */ stb r0, 0x64(r1) +/* 801BA5B4 001B7514 57 E0 10 3A */ slwi r0, r31, 2 +/* 801BA5B8 001B7518 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801BA5BC 001B751C 38 A3 17 DC */ addi r5, r3, lbl_803D17DC@l +/* 801BA5C0 001B7520 38 61 00 10 */ addi r3, r1, 0x10 +/* 801BA5C4 001B7524 7C A5 00 2E */ lwzx r5, r5, r0 +/* 801BA5C8 001B7528 81 84 00 00 */ lwz r12, 0(r4) +/* 801BA5CC 001B752C 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801BA5D0 001B7530 7D 89 03 A6 */ mtctr r12 +/* 801BA5D4 001B7534 4E 80 04 21 */ bctrl +/* 801BA5D8 001B7538 38 61 00 08 */ addi r3, r1, 8 +/* 801BA5DC 001B753C 38 81 00 10 */ addi r4, r1, 0x10 +/* 801BA5E0 001B7540 48 18 68 C9 */ bl __ct__6CTokenFRC6CToken +/* 801BA5E4 001B7544 38 7E 01 3C */ addi r3, r30, 0x13c +/* 801BA5E8 001B7548 38 81 00 08 */ addi r4, r1, 8 +/* 801BA5EC 001B754C 48 18 66 D9 */ bl __as__6CTokenFRC6CToken +/* 801BA5F0 001B7550 38 61 00 08 */ addi r3, r1, 8 +/* 801BA5F4 001B7554 38 80 00 00 */ li r4, 0 +/* 801BA5F8 001B7558 48 18 68 49 */ bl __dt__6CTokenFv +/* 801BA5FC 001B755C 38 61 00 10 */ addi r3, r1, 0x10 +/* 801BA600 001B7560 38 80 FF FF */ li r4, -1 +/* 801BA604 001B7564 48 18 68 3D */ bl __dt__6CTokenFv +/* 801BA608 001B7568 38 7E 01 3C */ addi r3, r30, 0x13c +/* 801BA60C 001B756C 48 18 67 79 */ bl Lock__6CTokenFv +/* 801BA610 001B7570 88 1E 02 18 */ lbz r0, 0x218(r30) +/* 801BA614 001B7574 38 60 00 01 */ li r3, 1 +/* 801BA618 001B7578 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801BA61C 001B757C 98 1E 02 18 */ stb r0, 0x218(r30) +/* 801BA620 001B7580 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 801BA624 001B7584 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 801BA628 001B7588 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801BA62C 001B758C 7C 08 03 A6 */ mtlr r0 +/* 801BA630 001B7590 38 21 00 70 */ addi r1, r1, 0x70 +/* 801BA634 001B7594 4E 80 00 20 */ blr + +.global IsFidgetLoaded__10CGunWeaponFv +IsFidgetLoaded__10CGunWeaponFv: +/* 801BA638 001B7598 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801BA63C 001B759C 7C 08 02 A6 */ mflr r0 +/* 801BA640 001B75A0 90 01 00 14 */ stw r0, 0x14(r1) +/* 801BA644 001B75A4 80 63 01 00 */ lwz r3, 0x100(r3) +/* 801BA648 001B75A8 38 63 00 30 */ addi r3, r3, 0x30 +/* 801BA64C 001B75AC 48 03 6A 7D */ bl IsAnimLoaded__9CGSFidgetCFv +/* 801BA650 001B75B0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801BA654 001B75B4 7C 08 03 A6 */ mtlr r0 +/* 801BA658 001B75B8 38 21 00 10 */ addi r1, r1, 0x10 +/* 801BA65C 001B75BC 4E 80 00 20 */ blr + +.global UnLoadFidget__10CGunWeaponFv +UnLoadFidget__10CGunWeaponFv: +/* 801BA660 001B75C0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801BA664 001B75C4 7C 08 02 A6 */ mflr r0 +/* 801BA668 001B75C8 90 01 00 14 */ stw r0, 0x14(r1) +/* 801BA66C 001B75CC 80 63 01 00 */ lwz r3, 0x100(r3) +/* 801BA670 001B75D0 38 63 00 30 */ addi r3, r3, 0x30 +/* 801BA674 001B75D4 48 03 6A 75 */ bl UnLoadAnim__9CGSFidgetFv +/* 801BA678 001B75D8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801BA67C 001B75DC 7C 08 03 A6 */ mtlr r0 +/* 801BA680 001B75E0 38 21 00 10 */ addi r1, r1, 0x10 +/* 801BA684 001B75E4 4E 80 00 20 */ blr + +.global AsyncLoadFidget__10CGunWeaponFR13CStateManagerQ28SamusGun11EFidgetTypei +AsyncLoadFidget__10CGunWeaponFR13CStateManagerQ28SamusGun11EFidgetTypei: +/* 801BA688 001B75E8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801BA68C 001B75EC 7C 08 02 A6 */ mflr r0 +/* 801BA690 001B75F0 7C 68 1B 78 */ mr r8, r3 +/* 801BA694 001B75F4 7C C7 33 78 */ mr r7, r6 +/* 801BA698 001B75F8 90 01 00 14 */ stw r0, 0x14(r1) +/* 801BA69C 001B75FC 80 63 01 00 */ lwz r3, 0x100(r3) +/* 801BA6A0 001B7600 80 C8 02 00 */ lwz r6, 0x200(r8) +/* 801BA6A4 001B7604 48 01 21 79 */ bl LoadFidgetAnimAsync__14CGunControllerFR13CStateManageriii +/* 801BA6A8 001B7608 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801BA6AC 001B760C 7C 08 03 A6 */ mtlr r0 +/* 801BA6B0 001B7610 38 21 00 10 */ addi r1, r1, 0x10 +/* 801BA6B4 001B7614 4E 80 00 20 */ blr + +.global BuildDependencyList__10CGunWeaponFQ212CPlayerState7EBeamId +BuildDependencyList__10CGunWeaponFQ212CPlayerState7EBeamId: +/* 801BA6B8 001B7618 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801BA6BC 001B761C 7C 08 02 A6 */ mflr r0 +/* 801BA6C0 001B7620 3C A0 80 3D */ lis r5, lbl_803D17C8@ha +/* 801BA6C4 001B7624 90 01 00 44 */ stw r0, 0x44(r1) +/* 801BA6C8 001B7628 7C 80 23 78 */ mr r0, r4 +/* 801BA6CC 001B762C 38 A5 17 C8 */ addi r5, r5, lbl_803D17C8@l +/* 801BA6D0 001B7630 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801BA6D4 001B7634 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801BA6D8 001B7638 54 1E 10 3A */ slwi r30, r0, 2 +/* 801BA6DC 001B763C 7C A5 F0 2E */ lwzx r5, r5, r30 +/* 801BA6E0 001B7640 93 A1 00 34 */ stw r29, 0x34(r1) +/* 801BA6E4 001B7644 7C 7D 1B 78 */ mr r29, r3 +/* 801BA6E8 001B7648 38 61 00 10 */ addi r3, r1, 0x10 +/* 801BA6EC 001B764C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801BA6F0 001B7650 81 84 00 00 */ lwz r12, 0(r4) +/* 801BA6F4 001B7654 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801BA6F8 001B7658 7D 89 03 A6 */ mtctr r12 +/* 801BA6FC 001B765C 4E 80 04 21 */ bctrl +/* 801BA700 001B7660 3B E1 00 24 */ addi r31, r1, 0x24 +/* 801BA704 001B7664 38 81 00 10 */ addi r4, r1, 0x10 +/* 801BA708 001B7668 7F E3 FB 78 */ mr r3, r31 +/* 801BA70C 001B766C 48 18 67 9D */ bl __ct__6CTokenFRC6CToken +/* 801BA710 001B7670 7F E3 FB 78 */ mr r3, r31 +/* 801BA714 001B7674 48 18 66 F9 */ bl GetObj__6CTokenFv +/* 801BA718 001B7678 80 03 00 04 */ lwz r0, 4(r3) +/* 801BA71C 001B767C 38 61 00 10 */ addi r3, r1, 0x10 +/* 801BA720 001B7680 38 80 FF FF */ li r4, -1 +/* 801BA724 001B7684 90 01 00 2C */ stw r0, 0x2c(r1) +/* 801BA728 001B7688 48 18 67 19 */ bl __dt__6CTokenFv +/* 801BA72C 001B768C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801BA730 001B7690 3C 60 80 3D */ lis r3, lbl_803D17B4@ha +/* 801BA734 001B7694 38 A3 17 B4 */ addi r5, r3, lbl_803D17B4@l +/* 801BA738 001B7698 38 61 00 08 */ addi r3, r1, 8 +/* 801BA73C 001B769C 81 84 00 00 */ lwz r12, 0(r4) +/* 801BA740 001B76A0 7C A5 F0 2E */ lwzx r5, r5, r30 +/* 801BA744 001B76A4 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801BA748 001B76A8 7D 89 03 A6 */ mtctr r12 +/* 801BA74C 001B76AC 4E 80 04 21 */ bctrl +/* 801BA750 001B76B0 3B C1 00 18 */ addi r30, r1, 0x18 +/* 801BA754 001B76B4 38 81 00 08 */ addi r4, r1, 8 +/* 801BA758 001B76B8 7F C3 F3 78 */ mr r3, r30 +/* 801BA75C 001B76BC 48 18 67 4D */ bl __ct__6CTokenFRC6CToken +/* 801BA760 001B76C0 7F C3 F3 78 */ mr r3, r30 +/* 801BA764 001B76C4 48 18 66 A9 */ bl GetObj__6CTokenFv +/* 801BA768 001B76C8 80 03 00 04 */ lwz r0, 4(r3) +/* 801BA76C 001B76CC 38 61 00 08 */ addi r3, r1, 8 +/* 801BA770 001B76D0 38 80 FF FF */ li r4, -1 +/* 801BA774 001B76D4 90 01 00 20 */ stw r0, 0x20(r1) +/* 801BA778 001B76D8 48 18 66 C9 */ bl __dt__6CTokenFv +/* 801BA77C 001B76DC 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801BA780 001B76E0 38 7D 01 2C */ addi r3, r29, 0x12c +/* 801BA784 001B76E4 83 C1 00 20 */ lwz r30, 0x20(r1) +/* 801BA788 001B76E8 80 9F 00 04 */ lwz r4, 4(r31) +/* 801BA78C 001B76EC 80 1E 00 04 */ lwz r0, 4(r30) +/* 801BA790 001B76F0 7C 84 02 14 */ add r4, r4, r0 +/* 801BA794 001B76F4 4B E4 E1 C9 */ bl "reserve__Q24rstl42vector<6CToken,Q24rstl17rmemory_allocator>Fi" +/* 801BA798 001B76F8 7F E3 FB 78 */ mr r3, r31 +/* 801BA79C 001B76FC 38 9D 01 2C */ addi r4, r29, 0x12c +/* 801BA7A0 001B7700 38 A0 00 01 */ li r5, 1 +/* 801BA7A4 001B7704 48 00 00 49 */ bl "FillTokenVector__10CGunWeaponFRCQ24rstl47vector<10SObjectTag,Q24rstl17rmemory_allocator>RQ24rstl42vector<6CToken,Q24rstl17rmemory_allocator>" +/* 801BA7A8 001B7708 7F C3 F3 78 */ mr r3, r30 +/* 801BA7AC 001B770C 38 9D 01 2C */ addi r4, r29, 0x12c +/* 801BA7B0 001B7710 38 A0 00 00 */ li r5, 0 +/* 801BA7B4 001B7714 48 00 00 39 */ bl "FillTokenVector__10CGunWeaponFRCQ24rstl47vector<10SObjectTag,Q24rstl17rmemory_allocator>RQ24rstl42vector<6CToken,Q24rstl17rmemory_allocator>" +/* 801BA7B8 001B7718 38 61 00 18 */ addi r3, r1, 0x18 +/* 801BA7BC 001B771C 38 80 00 00 */ li r4, 0 +/* 801BA7C0 001B7720 48 18 66 81 */ bl __dt__6CTokenFv +/* 801BA7C4 001B7724 38 61 00 24 */ addi r3, r1, 0x24 +/* 801BA7C8 001B7728 38 80 00 00 */ li r4, 0 +/* 801BA7CC 001B772C 48 18 66 75 */ bl __dt__6CTokenFv +/* 801BA7D0 001B7730 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801BA7D4 001B7734 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801BA7D8 001B7738 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801BA7DC 001B773C 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 801BA7E0 001B7740 7C 08 03 A6 */ mtlr r0 +/* 801BA7E4 001B7744 38 21 00 40 */ addi r1, r1, 0x40 +/* 801BA7E8 001B7748 4E 80 00 20 */ blr + +.global "FillTokenVector__10CGunWeaponFRCQ24rstl47vector<10SObjectTag,Q24rstl17rmemory_allocator>RQ24rstl42vector<6CToken,Q24rstl17rmemory_allocator>" +"FillTokenVector__10CGunWeaponFRCQ24rstl47vector<10SObjectTag,Q24rstl17rmemory_allocator>RQ24rstl42vector<6CToken,Q24rstl17rmemory_allocator>": +/* 801BA7EC 001B774C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801BA7F0 001B7750 7C 08 02 A6 */ mflr r0 +/* 801BA7F4 001B7754 90 01 00 34 */ stw r0, 0x34(r1) +/* 801BA7F8 001B7758 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801BA7FC 001B775C 54 BF 06 3E */ clrlwi r31, r5, 0x18 +/* 801BA800 001B7760 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801BA804 001B7764 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801BA808 001B7768 7C 9D 23 78 */ mr r29, r4 +/* 801BA80C 001B776C 93 81 00 20 */ stw r28, 0x20(r1) +/* 801BA810 001B7770 7C 7C 1B 78 */ mr r28, r3 +/* 801BA814 001B7774 83 C3 00 0C */ lwz r30, 0xc(r3) +/* 801BA818 001B7778 48 00 00 C4 */ b lbl_801BA8DC +lbl_801BA81C: +/* 801BA81C 001B777C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801BA820 001B7780 7F C5 F3 78 */ mr r5, r30 +/* 801BA824 001B7784 38 61 00 08 */ addi r3, r1, 8 +/* 801BA828 001B7788 81 84 00 00 */ lwz r12, 0(r4) +/* 801BA82C 001B778C 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801BA830 001B7790 7D 89 03 A6 */ mtctr r12 +/* 801BA834 001B7794 4E 80 04 21 */ bctrl +/* 801BA838 001B7798 38 61 00 10 */ addi r3, r1, 0x10 +/* 801BA83C 001B779C 38 81 00 08 */ addi r4, r1, 8 +/* 801BA840 001B77A0 48 18 66 69 */ bl __ct__6CTokenFRC6CToken +/* 801BA844 001B77A4 38 61 00 08 */ addi r3, r1, 8 +/* 801BA848 001B77A8 38 80 FF FF */ li r4, -1 +/* 801BA84C 001B77AC 48 18 65 F5 */ bl __dt__6CTokenFv +/* 801BA850 001B77B0 28 1F 00 00 */ cmplwi r31, 0 +/* 801BA854 001B77B4 40 82 00 28 */ bne lbl_801BA87C +/* 801BA858 001B77B8 80 61 00 10 */ lwz r3, 0x10(r1) +/* 801BA85C 001B77BC 80 63 00 04 */ lwz r3, 4(r3) +/* 801BA860 001B77C0 3C 03 AB A8 */ addis r0, r3, 0xaba8 +/* 801BA864 001B77C4 28 00 54 52 */ cmplwi r0, 0x5452 +/* 801BA868 001B77C8 40 82 00 14 */ bne lbl_801BA87C +/* 801BA86C 001B77CC 38 61 00 10 */ addi r3, r1, 0x10 +/* 801BA870 001B77D0 38 80 FF FF */ li r4, -1 +/* 801BA874 001B77D4 48 18 65 CD */ bl __dt__6CTokenFv +/* 801BA878 001B77D8 48 00 00 60 */ b lbl_801BA8D8 +lbl_801BA87C: +/* 801BA87C 001B77DC 80 1D 00 04 */ lwz r0, 4(r29) +/* 801BA880 001B77E0 80 BD 00 08 */ lwz r5, 8(r29) +/* 801BA884 001B77E4 7C 00 28 00 */ cmpw r0, r5 +/* 801BA888 001B77E8 41 80 00 1C */ blt lbl_801BA8A4 +/* 801BA88C 001B77EC 2C 05 00 00 */ cmpwi r5, 0 +/* 801BA890 001B77F0 7F A3 EB 78 */ mr r3, r29 +/* 801BA894 001B77F4 38 80 00 04 */ li r4, 4 +/* 801BA898 001B77F8 41 82 00 08 */ beq lbl_801BA8A0 +/* 801BA89C 001B77FC 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801BA8A0: +/* 801BA8A0 001B7800 4B E4 E0 BD */ bl "reserve__Q24rstl42vector<6CToken,Q24rstl17rmemory_allocator>Fi" +lbl_801BA8A4: +/* 801BA8A4 001B7804 80 1D 00 04 */ lwz r0, 4(r29) +/* 801BA8A8 001B7808 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 801BA8AC 001B780C 54 00 18 38 */ slwi r0, r0, 3 +/* 801BA8B0 001B7810 7C 63 02 15 */ add. r3, r3, r0 +/* 801BA8B4 001B7814 41 82 00 0C */ beq lbl_801BA8C0 +/* 801BA8B8 001B7818 38 81 00 10 */ addi r4, r1, 0x10 +/* 801BA8BC 001B781C 48 18 65 ED */ bl __ct__6CTokenFRC6CToken +lbl_801BA8C0: +/* 801BA8C0 001B7820 80 BD 00 04 */ lwz r5, 4(r29) +/* 801BA8C4 001B7824 38 61 00 10 */ addi r3, r1, 0x10 +/* 801BA8C8 001B7828 38 80 FF FF */ li r4, -1 +/* 801BA8CC 001B782C 38 05 00 01 */ addi r0, r5, 1 +/* 801BA8D0 001B7830 90 1D 00 04 */ stw r0, 4(r29) +/* 801BA8D4 001B7834 48 18 65 6D */ bl __dt__6CTokenFv +lbl_801BA8D8: +/* 801BA8D8 001B7838 3B DE 00 08 */ addi r30, r30, 8 +lbl_801BA8DC: +/* 801BA8DC 001B783C 80 1C 00 04 */ lwz r0, 4(r28) +/* 801BA8E0 001B7840 80 7C 00 0C */ lwz r3, 0xc(r28) +/* 801BA8E4 001B7844 54 00 18 38 */ slwi r0, r0, 3 +/* 801BA8E8 001B7848 7C 03 02 14 */ add r0, r3, r0 +/* 801BA8EC 001B784C 7C 1E 00 40 */ cmplw r30, r0 +/* 801BA8F0 001B7850 40 82 FF 2C */ bne lbl_801BA81C +/* 801BA8F4 001B7854 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801BA8F8 001B7858 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801BA8FC 001B785C 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801BA900 001B7860 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801BA904 001B7864 83 81 00 20 */ lwz r28, 0x20(r1) +/* 801BA908 001B7868 7C 08 03 A6 */ mtlr r0 +/* 801BA90C 001B786C 38 21 00 30 */ addi r1, r1, 0x30 +/* 801BA910 001B7870 4E 80 00 20 */ blr + +.global UnlockTokens__10CGunWeaponFv +UnlockTokens__10CGunWeaponFv: +/* 801BA914 001B7874 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801BA918 001B7878 7C 08 02 A6 */ mflr r0 +/* 801BA91C 001B787C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801BA920 001B7880 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801BA924 001B7884 7C 7F 1B 78 */ mr r31, r3 +/* 801BA928 001B7888 38 7F 01 3C */ addi r3, r31, 0x13c +/* 801BA92C 001B788C 48 18 64 15 */ bl Unlock__6CTokenFv +/* 801BA930 001B7890 38 7F 01 2C */ addi r3, r31, 0x12c +/* 801BA934 001B7894 48 0D 08 41 */ bl "unlock_tokens__12NWeaponTypesFRQ24rstl42vector<6CToken,Q24rstl17rmemory_allocator>" +/* 801BA938 001B7898 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801BA93C 001B789C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801BA940 001B78A0 7C 08 03 A6 */ mtlr r0 +/* 801BA944 001B78A4 38 21 00 10 */ addi r1, r1, 0x10 +/* 801BA948 001B78A8 4E 80 00 20 */ blr + +.global LockTokens__10CGunWeaponFR13CStateManager +LockTokens__10CGunWeaponFR13CStateManager: +/* 801BA94C 001B78AC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801BA950 001B78B0 7C 08 02 A6 */ mflr r0 +/* 801BA954 001B78B4 90 01 00 14 */ stw r0, 0x14(r1) +/* 801BA958 001B78B8 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801BA95C 001B78BC 7C 7F 1B 78 */ mr r31, r3 +/* 801BA960 001B78C0 4B FF FB F9 */ bl AsyncLoadSuitArm__10CGunWeaponFR13CStateManager +/* 801BA964 001B78C4 38 7F 01 2C */ addi r3, r31, 0x12c +/* 801BA968 001B78C8 48 0D 08 69 */ bl "lock_tokens__12NWeaponTypesFRQ24rstl42vector<6CToken,Q24rstl17rmemory_allocator>" +/* 801BA96C 001B78CC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801BA970 001B78D0 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801BA974 001B78D4 7C 08 03 A6 */ mtlr r0 +/* 801BA978 001B78D8 38 21 00 10 */ addi r1, r1, 0x10 +/* 801BA97C 001B78DC 4E 80 00 20 */ blr + +.global IsAnimsLoaded__10CGunWeaponCFv +IsAnimsLoaded__10CGunWeaponCFv: +/* 801BA980 001B78E0 80 03 01 10 */ lwz r0, 0x110(r3) +/* 801BA984 001B78E4 80 A3 01 18 */ lwz r5, 0x118(r3) +/* 801BA988 001B78E8 54 00 18 38 */ slwi r0, r0, 3 +/* 801BA98C 001B78EC 7C 85 02 14 */ add r4, r5, r0 +/* 801BA990 001B78F0 48 00 00 20 */ b lbl_801BA9B0 +lbl_801BA994: +/* 801BA994 001B78F4 80 65 00 00 */ lwz r3, 0(r5) +/* 801BA998 001B78F8 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801BA99C 001B78FC 28 00 00 00 */ cmplwi r0, 0 +/* 801BA9A0 001B7900 40 82 00 0C */ bne lbl_801BA9AC +/* 801BA9A4 001B7904 38 60 00 00 */ li r3, 0 +/* 801BA9A8 001B7908 4E 80 00 20 */ blr +lbl_801BA9AC: +/* 801BA9AC 001B790C 38 A5 00 08 */ addi r5, r5, 8 +lbl_801BA9B0: +/* 801BA9B0 001B7910 7C 05 20 40 */ cmplw r5, r4 +/* 801BA9B4 001B7914 40 82 FF E0 */ bne lbl_801BA994 +/* 801BA9B8 001B7918 38 60 00 01 */ li r3, 1 +/* 801BA9BC 001B791C 4E 80 00 20 */ blr + +.global LoadAnimations__10CGunWeaponFv +LoadAnimations__10CGunWeaponFv: +/* 801BA9C0 001B7920 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801BA9C4 001B7924 7C 08 02 A6 */ mflr r0 +/* 801BA9C8 001B7928 7C 65 1B 78 */ mr r5, r3 +/* 801BA9CC 001B792C 38 80 00 00 */ li r4, 0 +/* 801BA9D0 001B7930 90 01 00 14 */ stw r0, 0x14(r1) +/* 801BA9D4 001B7934 38 C5 01 0C */ addi r6, r5, 0x10c +/* 801BA9D8 001B7938 38 A0 00 0F */ li r5, 0xf +/* 801BA9DC 001B793C 38 E0 00 01 */ li r7, 1 +/* 801BA9E0 001B7940 80 63 00 20 */ lwz r3, 0x20(r3) +/* 801BA9E4 001B7944 48 0D 08 89 */ bl "get_token_vector__12NWeaponTypesFR9CAnimDataiiRQ24rstl42vector<6CToken,Q24rstl17rmemory_allocator>b" +/* 801BA9E8 001B7948 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801BA9EC 001B794C 7C 08 03 A6 */ mtlr r0 +/* 801BA9F0 001B7950 38 21 00 10 */ addi r1, r1, 0x10 +/* 801BA9F4 001B7954 4E 80 00 20 */ blr + +.global LoadFxIdle__10CGunWeaponFfR13CStateManager +LoadFxIdle__10CGunWeaponFfR13CStateManager: +/* 801BA9F8 001B7958 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801BA9FC 001B795C 7C 08 02 A6 */ mflr r0 +/* 801BAA00 001B7960 90 01 00 34 */ stw r0, 0x34(r1) +/* 801BAA04 001B7964 DB E1 00 28 */ stfd f31, 0x28(r1) +/* 801BAA08 001B7968 FF E0 08 90 */ fmr f31, f1 +/* 801BAA0C 001B796C BF 41 00 10 */ stmw r26, 0x10(r1) +/* 801BAA10 001B7970 7C 7A 1B 78 */ mr r26, r3 +/* 801BAA14 001B7974 7C 9B 23 78 */ mr r27, r4 +/* 801BAA18 001B7978 38 7A 01 2C */ addi r3, r26, 0x12c +/* 801BAA1C 001B797C 48 0D 08 11 */ bl "are_tokens_ready__12NWeaponTypesFRCQ24rstl42vector<6CToken,Q24rstl17rmemory_allocator>" +/* 801BAA20 001B7980 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801BAA24 001B7984 41 82 02 2C */ beq lbl_801BAC50 +/* 801BAA28 001B7988 80 7A 02 10 */ lwz r3, 0x210(r26) +/* 801BAA2C 001B798C 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e +/* 801BAA30 001B7990 41 82 00 14 */ beq lbl_801BAA44 +/* 801BAA34 001B7994 54 60 07 7B */ rlwinm. r0, r3, 0, 0x1d, 0x1d +/* 801BAA38 001B7998 41 82 00 0C */ beq lbl_801BAA44 +/* 801BAA3C 001B799C 54 60 06 F7 */ rlwinm. r0, r3, 0, 0x1b, 0x1b +/* 801BAA40 001B79A0 40 82 02 10 */ bne lbl_801BAC50 +lbl_801BAA44: +/* 801BAA44 001B79A4 3B FA 01 70 */ addi r31, r26, 0x170 +/* 801BAA48 001B79A8 3B DA 01 48 */ addi r30, r26, 0x148 +/* 801BAA4C 001B79AC 3B A0 00 01 */ li r29, 1 +/* 801BAA50 001B79B0 3B 80 00 00 */ li r28, 0 +lbl_801BAA54: +/* 801BAA54 001B79B4 80 1F 00 08 */ lwz r0, 8(r31) +/* 801BAA58 001B79B8 28 00 00 00 */ cmplwi r0, 0 +/* 801BAA5C 001B79BC 41 82 00 0C */ beq lbl_801BAA68 +/* 801BAA60 001B79C0 38 60 00 01 */ li r3, 1 +/* 801BAA64 001B79C4 48 00 00 3C */ b lbl_801BAAA0 +lbl_801BAA68: +/* 801BAA68 001B79C8 88 1F 00 04 */ lbz r0, 4(r31) +/* 801BAA6C 001B79CC 28 00 00 00 */ cmplwi r0, 0 +/* 801BAA70 001B79D0 41 82 00 2C */ beq lbl_801BAA9C +/* 801BAA74 001B79D4 80 7F 00 00 */ lwz r3, 0(r31) +/* 801BAA78 001B79D8 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801BAA7C 001B79DC 28 00 00 00 */ cmplwi r0, 0 +/* 801BAA80 001B79E0 41 82 00 1C */ beq lbl_801BAA9C +/* 801BAA84 001B79E4 7F E3 FB 78 */ mr r3, r31 +/* 801BAA88 001B79E8 48 18 63 85 */ bl GetObj__6CTokenFv +/* 801BAA8C 001B79EC 80 03 00 04 */ lwz r0, 4(r3) +/* 801BAA90 001B79F0 38 60 00 01 */ li r3, 1 +/* 801BAA94 001B79F4 90 1F 00 08 */ stw r0, 8(r31) +/* 801BAA98 001B79F8 48 00 00 08 */ b lbl_801BAAA0 +lbl_801BAA9C: +/* 801BAA9C 001B79FC 38 60 00 00 */ li r3, 0 +lbl_801BAAA0: +/* 801BAAA0 001B7A00 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801BAAA4 001B7A04 40 82 00 0C */ bne lbl_801BAAB0 +/* 801BAAA8 001B7A08 3B A0 00 00 */ li r29, 0 +/* 801BAAAC 001B7A0C 48 00 00 74 */ b lbl_801BAB20 +lbl_801BAAB0: +/* 801BAAB0 001B7A10 80 1E 00 08 */ lwz r0, 8(r30) +/* 801BAAB4 001B7A14 28 00 00 00 */ cmplwi r0, 0 +/* 801BAAB8 001B7A18 41 82 00 0C */ beq lbl_801BAAC4 +/* 801BAABC 001B7A1C 38 60 00 01 */ li r3, 1 +/* 801BAAC0 001B7A20 48 00 00 3C */ b lbl_801BAAFC +lbl_801BAAC4: +/* 801BAAC4 001B7A24 88 1E 00 04 */ lbz r0, 4(r30) +/* 801BAAC8 001B7A28 28 00 00 00 */ cmplwi r0, 0 +/* 801BAACC 001B7A2C 41 82 00 2C */ beq lbl_801BAAF8 +/* 801BAAD0 001B7A30 80 7E 00 00 */ lwz r3, 0(r30) +/* 801BAAD4 001B7A34 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801BAAD8 001B7A38 28 00 00 00 */ cmplwi r0, 0 +/* 801BAADC 001B7A3C 41 82 00 1C */ beq lbl_801BAAF8 +/* 801BAAE0 001B7A40 7F C3 F3 78 */ mr r3, r30 +/* 801BAAE4 001B7A44 48 18 63 29 */ bl GetObj__6CTokenFv +/* 801BAAE8 001B7A48 80 03 00 04 */ lwz r0, 4(r3) +/* 801BAAEC 001B7A4C 38 60 00 01 */ li r3, 1 +/* 801BAAF0 001B7A50 90 1E 00 08 */ stw r0, 8(r30) +/* 801BAAF4 001B7A54 48 00 00 08 */ b lbl_801BAAFC +lbl_801BAAF8: +/* 801BAAF8 001B7A58 38 60 00 00 */ li r3, 0 +lbl_801BAAFC: +/* 801BAAFC 001B7A5C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801BAB00 001B7A60 40 82 00 0C */ bne lbl_801BAB0C +/* 801BAB04 001B7A64 3B A0 00 00 */ li r29, 0 +/* 801BAB08 001B7A68 48 00 00 18 */ b lbl_801BAB20 +lbl_801BAB0C: +/* 801BAB0C 001B7A6C 3B 9C 00 01 */ addi r28, r28, 1 +/* 801BAB10 001B7A70 3B DE 00 0C */ addi r30, r30, 0xc +/* 801BAB14 001B7A74 2C 1C 00 02 */ cmpwi r28, 2 +/* 801BAB18 001B7A78 3B FF 00 0C */ addi r31, r31, 0xc +/* 801BAB1C 001B7A7C 41 80 FF 38 */ blt lbl_801BAA54 +lbl_801BAB20: +/* 801BAB20 001B7A80 3B C0 00 00 */ li r30, 0 +/* 801BAB24 001B7A84 3B 9A 01 8C */ addi r28, r26, 0x18c +lbl_801BAB28: +/* 801BAB28 001B7A88 80 1C 00 08 */ lwz r0, 8(r28) +/* 801BAB2C 001B7A8C 28 00 00 00 */ cmplwi r0, 0 +/* 801BAB30 001B7A90 41 82 00 0C */ beq lbl_801BAB3C +/* 801BAB34 001B7A94 38 60 00 01 */ li r3, 1 +/* 801BAB38 001B7A98 48 00 00 3C */ b lbl_801BAB74 +lbl_801BAB3C: +/* 801BAB3C 001B7A9C 88 1C 00 04 */ lbz r0, 4(r28) +/* 801BAB40 001B7AA0 28 00 00 00 */ cmplwi r0, 0 +/* 801BAB44 001B7AA4 41 82 00 2C */ beq lbl_801BAB70 +/* 801BAB48 001B7AA8 80 7C 00 00 */ lwz r3, 0(r28) +/* 801BAB4C 001B7AAC 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801BAB50 001B7AB0 28 00 00 00 */ cmplwi r0, 0 +/* 801BAB54 001B7AB4 41 82 00 1C */ beq lbl_801BAB70 +/* 801BAB58 001B7AB8 7F 83 E3 78 */ mr r3, r28 +/* 801BAB5C 001B7ABC 48 18 62 B1 */ bl GetObj__6CTokenFv +/* 801BAB60 001B7AC0 80 03 00 04 */ lwz r0, 4(r3) +/* 801BAB64 001B7AC4 38 60 00 01 */ li r3, 1 +/* 801BAB68 001B7AC8 90 1C 00 08 */ stw r0, 8(r28) +/* 801BAB6C 001B7ACC 48 00 00 08 */ b lbl_801BAB74 +lbl_801BAB70: +/* 801BAB70 001B7AD0 38 60 00 00 */ li r3, 0 +lbl_801BAB74: +/* 801BAB74 001B7AD4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801BAB78 001B7AD8 40 82 00 0C */ bne lbl_801BAB84 +/* 801BAB7C 001B7ADC 3B A0 00 00 */ li r29, 0 +/* 801BAB80 001B7AE0 48 00 00 14 */ b lbl_801BAB94 +lbl_801BAB84: +/* 801BAB84 001B7AE4 3B DE 00 01 */ addi r30, r30, 1 +/* 801BAB88 001B7AE8 3B 9C 00 0C */ addi r28, r28, 0xc +/* 801BAB8C 001B7AEC 2C 1E 00 02 */ cmpwi r30, 2 +/* 801BAB90 001B7AF0 41 80 FF 98 */ blt lbl_801BAB28 +lbl_801BAB94: +/* 801BAB94 001B7AF4 80 1A 01 68 */ lwz r0, 0x168(r26) +/* 801BAB98 001B7AF8 28 00 00 00 */ cmplwi r0, 0 +/* 801BAB9C 001B7AFC 41 82 00 0C */ beq lbl_801BABA8 +/* 801BABA0 001B7B00 38 60 00 01 */ li r3, 1 +/* 801BABA4 001B7B04 48 00 00 3C */ b lbl_801BABE0 +lbl_801BABA8: +/* 801BABA8 001B7B08 88 1A 01 64 */ lbz r0, 0x164(r26) +/* 801BABAC 001B7B0C 28 00 00 00 */ cmplwi r0, 0 +/* 801BABB0 001B7B10 41 82 00 2C */ beq lbl_801BABDC +/* 801BABB4 001B7B14 80 7A 01 60 */ lwz r3, 0x160(r26) +/* 801BABB8 001B7B18 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801BABBC 001B7B1C 28 00 00 00 */ cmplwi r0, 0 +/* 801BABC0 001B7B20 41 82 00 1C */ beq lbl_801BABDC +/* 801BABC4 001B7B24 38 7A 01 60 */ addi r3, r26, 0x160 +/* 801BABC8 001B7B28 48 18 62 45 */ bl GetObj__6CTokenFv +/* 801BABCC 001B7B2C 80 03 00 04 */ lwz r0, 4(r3) +/* 801BABD0 001B7B30 38 60 00 01 */ li r3, 1 +/* 801BABD4 001B7B34 90 1A 01 68 */ stw r0, 0x168(r26) +/* 801BABD8 001B7B38 48 00 00 08 */ b lbl_801BABE0 +lbl_801BABDC: +/* 801BABDC 001B7B3C 38 60 00 00 */ li r3, 0 +lbl_801BABE0: +/* 801BABE0 001B7B40 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801BABE4 001B7B44 40 82 00 08 */ bne lbl_801BABEC +/* 801BABE8 001B7B48 3B A0 00 00 */ li r29, 0 +lbl_801BABEC: +/* 801BABEC 001B7B4C 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 801BABF0 001B7B50 41 82 00 60 */ beq lbl_801BAC50 +/* 801BABF4 001B7B54 80 1A 02 10 */ lwz r0, 0x210(r26) +/* 801BABF8 001B7B58 54 00 07 BC */ rlwinm r0, r0, 0, 0x1e, 0x1e +/* 801BABFC 001B7B5C 2C 00 00 02 */ cmpwi r0, 2 +/* 801BAC00 001B7B60 41 82 00 1C */ beq lbl_801BAC1C +/* 801BAC04 001B7B64 FC 20 F8 90 */ fmr f1, f31 +/* 801BAC08 001B7B68 7F 43 D3 78 */ mr r3, r26 +/* 801BAC0C 001B7B6C 48 00 1F 3D */ bl LoadMuzzleFx__10CGunWeaponFf +/* 801BAC10 001B7B70 80 1A 02 10 */ lwz r0, 0x210(r26) +/* 801BAC14 001B7B74 60 00 00 02 */ ori r0, r0, 2 +/* 801BAC18 001B7B78 90 1A 02 10 */ stw r0, 0x210(r26) +lbl_801BAC1C: +/* 801BAC1C 001B7B7C 80 1A 02 10 */ lwz r0, 0x210(r26) +/* 801BAC20 001B7B80 60 00 00 10 */ ori r0, r0, 0x10 +/* 801BAC24 001B7B84 90 1A 02 10 */ stw r0, 0x210(r26) +/* 801BAC28 001B7B88 80 1A 02 10 */ lwz r0, 0x210(r26) +/* 801BAC2C 001B7B8C 54 00 07 7A */ rlwinm r0, r0, 0, 0x1d, 0x1d +/* 801BAC30 001B7B90 2C 00 00 04 */ cmpwi r0, 4 +/* 801BAC34 001B7B94 41 82 00 1C */ beq lbl_801BAC50 +/* 801BAC38 001B7B98 7F 43 D3 78 */ mr r3, r26 +/* 801BAC3C 001B7B9C 7F 64 DB 78 */ mr r4, r27 +/* 801BAC40 001B7BA0 48 00 1B 99 */ bl LoadProjectileData__10CGunWeaponFR13CStateManager +/* 801BAC44 001B7BA4 80 1A 02 10 */ lwz r0, 0x210(r26) +/* 801BAC48 001B7BA8 60 00 00 04 */ ori r0, r0, 4 +/* 801BAC4C 001B7BAC 90 1A 02 10 */ stw r0, 0x210(r26) +lbl_801BAC50: +/* 801BAC50 001B7BB0 CB E1 00 28 */ lfd f31, 0x28(r1) +/* 801BAC54 001B7BB4 BB 41 00 10 */ lmw r26, 0x10(r1) +/* 801BAC58 001B7BB8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801BAC5C 001B7BBC 7C 08 03 A6 */ mtlr r0 +/* 801BAC60 001B7BC0 38 21 00 30 */ addi r1, r1, 0x30 +/* 801BAC64 001B7BC4 4E 80 00 20 */ blr + +.global FreeResPools__10CGunWeaponFv +FreeResPools__10CGunWeaponFv: +/* 801BAC68 001B7BC8 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801BAC6C 001B7BCC 7C 08 02 A6 */ mflr r0 +/* 801BAC70 001B7BD0 90 01 00 64 */ stw r0, 0x64(r1) +/* 801BAC74 001B7BD4 38 00 00 00 */ li r0, 0 +/* 801BAC78 001B7BD8 BF 61 00 4C */ stmw r27, 0x4c(r1) +/* 801BAC7C 001B7BDC 7C 7F 1B 78 */ mr r31, r3 +/* 801BAC80 001B7BE0 90 03 01 68 */ stw r0, 0x168(r3) +/* 801BAC84 001B7BE4 38 7F 01 60 */ addi r3, r31, 0x160 +/* 801BAC88 001B7BE8 48 18 60 B9 */ bl Unlock__6CTokenFv +/* 801BAC8C 001B7BEC 3B BF 01 70 */ addi r29, r31, 0x170 +/* 801BAC90 001B7BF0 3B 9F 01 48 */ addi r28, r31, 0x148 +/* 801BAC94 001B7BF4 3B 60 00 00 */ li r27, 0 +/* 801BAC98 001B7BF8 3B C0 00 00 */ li r30, 0 +lbl_801BAC9C: +/* 801BAC9C 001B7BFC 93 DD 00 08 */ stw r30, 8(r29) +/* 801BACA0 001B7C00 7F A3 EB 78 */ mr r3, r29 +/* 801BACA4 001B7C04 48 18 60 9D */ bl Unlock__6CTokenFv +/* 801BACA8 001B7C08 93 DC 00 08 */ stw r30, 8(r28) +/* 801BACAC 001B7C0C 7F 83 E3 78 */ mr r3, r28 +/* 801BACB0 001B7C10 48 18 60 91 */ bl Unlock__6CTokenFv +/* 801BACB4 001B7C14 3B 7B 00 01 */ addi r27, r27, 1 +/* 801BACB8 001B7C18 3B 9C 00 0C */ addi r28, r28, 0xc +/* 801BACBC 001B7C1C 2C 1B 00 02 */ cmpwi r27, 2 +/* 801BACC0 001B7C20 3B BD 00 0C */ addi r29, r29, 0xc +/* 801BACC4 001B7C24 41 80 FF D8 */ blt lbl_801BAC9C +/* 801BACC8 001B7C28 3B 9F 01 8C */ addi r28, r31, 0x18c +/* 801BACCC 001B7C2C 3B 60 00 00 */ li r27, 0 +/* 801BACD0 001B7C30 3B C0 00 00 */ li r30, 0 +lbl_801BACD4: +/* 801BACD4 001B7C34 93 DC 00 08 */ stw r30, 8(r28) +/* 801BACD8 001B7C38 7F 83 E3 78 */ mr r3, r28 +/* 801BACDC 001B7C3C 48 18 60 65 */ bl Unlock__6CTokenFv +/* 801BACE0 001B7C40 3B 7B 00 01 */ addi r27, r27, 1 +/* 801BACE4 001B7C44 3B 9C 00 0C */ addi r28, r28, 0xc +/* 801BACE8 001B7C48 2C 1B 00 02 */ cmpwi r27, 2 +/* 801BACEC 001B7C4C 41 80 FF E8 */ blt lbl_801BACD4 +/* 801BACF0 001B7C50 38 00 00 00 */ li r0, 0 +/* 801BACF4 001B7C54 38 7F 01 0C */ addi r3, r31, 0x10c +/* 801BACF8 001B7C58 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801BACFC 001B7C5C 38 81 00 18 */ addi r4, r1, 0x18 +/* 801BAD00 001B7C60 90 01 00 20 */ stw r0, 0x20(r1) +/* 801BAD04 001B7C64 90 01 00 24 */ stw r0, 0x24(r1) +/* 801BAD08 001B7C68 4B E4 BA FD */ bl sub_80006804 +/* 801BAD0C 001B7C6C 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 801BAD10 001B7C70 83 81 00 24 */ lwz r28, 0x24(r1) +/* 801BAD14 001B7C74 54 00 18 38 */ slwi r0, r0, 3 +/* 801BAD18 001B7C78 7F DC 02 14 */ add r30, r28, r0 +/* 801BAD1C 001B7C7C 93 81 00 0C */ stw r28, 0xc(r1) +/* 801BAD20 001B7C80 93 C1 00 14 */ stw r30, 0x14(r1) +/* 801BAD24 001B7C84 93 C1 00 10 */ stw r30, 0x10(r1) +/* 801BAD28 001B7C88 93 81 00 08 */ stw r28, 8(r1) +/* 801BAD2C 001B7C8C 48 00 00 14 */ b lbl_801BAD40 +lbl_801BAD30: +/* 801BAD30 001B7C90 7F 83 E3 78 */ mr r3, r28 +/* 801BAD34 001B7C94 38 80 FF FF */ li r4, -1 +/* 801BAD38 001B7C98 48 18 61 09 */ bl __dt__6CTokenFv +/* 801BAD3C 001B7C9C 3B 9C 00 08 */ addi r28, r28, 8 +lbl_801BAD40: +/* 801BAD40 001B7CA0 7C 1C F0 40 */ cmplw r28, r30 +/* 801BAD44 001B7CA4 40 82 FF EC */ bne lbl_801BAD30 +/* 801BAD48 001B7CA8 80 61 00 24 */ lwz r3, 0x24(r1) +/* 801BAD4C 001B7CAC 28 03 00 00 */ cmplwi r3, 0 +/* 801BAD50 001B7CB0 41 82 00 08 */ beq lbl_801BAD58 +/* 801BAD54 001B7CB4 48 15 AB DD */ bl Free__7CMemoryFPCv +lbl_801BAD58: +/* 801BAD58 001B7CB8 38 7F 01 A4 */ addi r3, r31, 0x1a4 +/* 801BAD5C 001B7CBC 38 01 00 28 */ addi r0, r1, 0x28 +/* 801BAD60 001B7CC0 3B C0 00 00 */ li r30, 0 +/* 801BAD64 001B7CC4 7C 03 00 40 */ cmplw r3, r0 +/* 801BAD68 001B7CC8 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801BAD6C 001B7CCC 41 82 00 A8 */ beq lbl_801BAE14 +/* 801BAD70 001B7CD0 3B BF 01 A8 */ addi r29, r31, 0x1a8 +/* 801BAD74 001B7CD4 7F BC EB 78 */ mr r28, r29 +/* 801BAD78 001B7CD8 48 00 00 40 */ b lbl_801BADB8 +lbl_801BAD7C: +/* 801BAD7C 001B7CDC 28 1C 00 00 */ cmplwi r28, 0 +/* 801BAD80 001B7CE0 41 82 00 30 */ beq lbl_801BADB0 +/* 801BAD84 001B7CE4 88 1C 00 00 */ lbz r0, 0(r28) +/* 801BAD88 001B7CE8 28 00 00 00 */ cmplwi r0, 0 +/* 801BAD8C 001B7CEC 41 82 00 24 */ beq lbl_801BADB0 +/* 801BAD90 001B7CF0 80 7C 00 04 */ lwz r3, 4(r28) +/* 801BAD94 001B7CF4 28 03 00 00 */ cmplwi r3, 0 +/* 801BAD98 001B7CF8 41 82 00 18 */ beq lbl_801BADB0 +/* 801BAD9C 001B7CFC 81 83 00 00 */ lwz r12, 0(r3) +/* 801BADA0 001B7D00 38 80 00 01 */ li r4, 1 +/* 801BADA4 001B7D04 81 8C 00 08 */ lwz r12, 8(r12) +/* 801BADA8 001B7D08 7D 89 03 A6 */ mtctr r12 +/* 801BADAC 001B7D0C 4E 80 04 21 */ bctrl +lbl_801BADB0: +/* 801BADB0 001B7D10 3B 9C 00 08 */ addi r28, r28, 8 +/* 801BADB4 001B7D14 3B DE 00 01 */ addi r30, r30, 1 +lbl_801BADB8: +/* 801BADB8 001B7D18 80 1F 01 A4 */ lwz r0, 0x1a4(r31) +/* 801BADBC 001B7D1C 7C 1E 00 00 */ cmpw r30, r0 +/* 801BADC0 001B7D20 41 80 FF BC */ blt lbl_801BAD7C +/* 801BADC4 001B7D24 38 60 00 00 */ li r3, 0 +/* 801BADC8 001B7D28 38 A1 00 2C */ addi r5, r1, 0x2c +/* 801BADCC 001B7D2C 90 7F 01 A4 */ stw r3, 0x1a4(r31) +/* 801BADD0 001B7D30 80 01 00 28 */ lwz r0, 0x28(r1) +/* 801BADD4 001B7D34 54 00 18 38 */ slwi r0, r0, 3 +/* 801BADD8 001B7D38 7C 85 02 14 */ add r4, r5, r0 +/* 801BADDC 001B7D3C 48 00 00 28 */ b lbl_801BAE04 +lbl_801BADE0: +/* 801BADE0 001B7D40 28 1D 00 00 */ cmplwi r29, 0 +/* 801BADE4 001B7D44 41 82 00 18 */ beq lbl_801BADFC +/* 801BADE8 001B7D48 88 05 00 00 */ lbz r0, 0(r5) +/* 801BADEC 001B7D4C 98 1D 00 00 */ stb r0, 0(r29) +/* 801BADF0 001B7D50 80 05 00 04 */ lwz r0, 4(r5) +/* 801BADF4 001B7D54 90 1D 00 04 */ stw r0, 4(r29) +/* 801BADF8 001B7D58 98 65 00 00 */ stb r3, 0(r5) +lbl_801BADFC: +/* 801BADFC 001B7D5C 3B BD 00 08 */ addi r29, r29, 8 +/* 801BAE00 001B7D60 38 A5 00 08 */ addi r5, r5, 8 +lbl_801BAE04: +/* 801BAE04 001B7D64 7C 05 20 40 */ cmplw r5, r4 +/* 801BAE08 001B7D68 40 82 FF D8 */ bne lbl_801BADE0 +/* 801BAE0C 001B7D6C 80 01 00 28 */ lwz r0, 0x28(r1) +/* 801BAE10 001B7D70 90 1F 01 A4 */ stw r0, 0x1a4(r31) +lbl_801BAE14: +/* 801BAE14 001B7D74 3B 81 00 2C */ addi r28, r1, 0x2c +/* 801BAE18 001B7D78 3B C0 00 00 */ li r30, 0 +/* 801BAE1C 001B7D7C 48 00 00 40 */ b lbl_801BAE5C +lbl_801BAE20: +/* 801BAE20 001B7D80 28 1C 00 00 */ cmplwi r28, 0 +/* 801BAE24 001B7D84 41 82 00 30 */ beq lbl_801BAE54 +/* 801BAE28 001B7D88 88 1C 00 00 */ lbz r0, 0(r28) +/* 801BAE2C 001B7D8C 28 00 00 00 */ cmplwi r0, 0 +/* 801BAE30 001B7D90 41 82 00 24 */ beq lbl_801BAE54 +/* 801BAE34 001B7D94 80 7C 00 04 */ lwz r3, 4(r28) +/* 801BAE38 001B7D98 28 03 00 00 */ cmplwi r3, 0 +/* 801BAE3C 001B7D9C 41 82 00 18 */ beq lbl_801BAE54 +/* 801BAE40 001B7DA0 81 83 00 00 */ lwz r12, 0(r3) +/* 801BAE44 001B7DA4 38 80 00 01 */ li r4, 1 +/* 801BAE48 001B7DA8 81 8C 00 08 */ lwz r12, 8(r12) +/* 801BAE4C 001B7DAC 7D 89 03 A6 */ mtctr r12 +/* 801BAE50 001B7DB0 4E 80 04 21 */ bctrl +lbl_801BAE54: +/* 801BAE54 001B7DB4 3B 9C 00 08 */ addi r28, r28, 8 +/* 801BAE58 001B7DB8 3B DE 00 01 */ addi r30, r30, 1 +lbl_801BAE5C: +/* 801BAE5C 001B7DBC 80 01 00 28 */ lwz r0, 0x28(r1) +/* 801BAE60 001B7DC0 7C 1E 00 00 */ cmpw r30, r0 +/* 801BAE64 001B7DC4 41 80 FF BC */ blt lbl_801BAE20 +/* 801BAE68 001B7DC8 38 00 00 00 */ li r0, 0 +/* 801BAE6C 001B7DCC 38 7F 01 D0 */ addi r3, r31, 0x1d0 +/* 801BAE70 001B7DD0 90 01 00 28 */ stw r0, 0x28(r1) +/* 801BAE74 001B7DD4 48 00 00 19 */ bl Clear__13CVelocityInfoFv +/* 801BAE78 001B7DD8 BB 61 00 4C */ lmw r27, 0x4c(r1) +/* 801BAE7C 001B7DDC 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801BAE80 001B7DE0 7C 08 03 A6 */ mtlr r0 +/* 801BAE84 001B7DE4 38 21 00 60 */ addi r1, r1, 0x60 +/* 801BAE88 001B7DE8 4E 80 00 20 */ blr + +.global Clear__13CVelocityInfoFv +Clear__13CVelocityInfoFv: +/* 801BAE8C 001B7DEC 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801BAE90 001B7DF0 38 80 00 00 */ li r4, 0 +/* 801BAE94 001B7DF4 38 01 00 1C */ addi r0, r1, 0x1c +/* 801BAE98 001B7DF8 90 81 00 1C */ stw r4, 0x1c(r1) +/* 801BAE9C 001B7DFC 7C 03 00 40 */ cmplw r3, r0 +/* 801BAEA0 001B7E00 41 82 00 A4 */ beq lbl_801BAF44 +/* 801BAEA4 001B7E04 80 C3 00 00 */ lwz r6, 0(r3) +/* 801BAEA8 001B7E08 2C 06 00 00 */ cmpwi r6, 0 +/* 801BAEAC 001B7E0C 40 81 00 40 */ ble lbl_801BAEEC +/* 801BAEB0 001B7E10 2C 06 00 08 */ cmpwi r6, 8 +/* 801BAEB4 001B7E14 38 A6 FF F8 */ addi r5, r6, -8 +/* 801BAEB8 001B7E18 40 81 00 20 */ ble lbl_801BAED8 +/* 801BAEBC 001B7E1C 38 05 00 07 */ addi r0, r5, 7 +/* 801BAEC0 001B7E20 54 00 E8 FE */ srwi r0, r0, 3 +/* 801BAEC4 001B7E24 7C 09 03 A6 */ mtctr r0 +/* 801BAEC8 001B7E28 2C 05 00 00 */ cmpwi r5, 0 +/* 801BAECC 001B7E2C 40 81 00 0C */ ble lbl_801BAED8 +lbl_801BAED0: +/* 801BAED0 001B7E30 38 84 00 08 */ addi r4, r4, 8 +/* 801BAED4 001B7E34 42 00 FF FC */ bdnz lbl_801BAED0 +lbl_801BAED8: +/* 801BAED8 001B7E38 7C 04 30 50 */ subf r0, r4, r6 +/* 801BAEDC 001B7E3C 7C 09 03 A6 */ mtctr r0 +/* 801BAEE0 001B7E40 7C 04 30 00 */ cmpw r4, r6 +/* 801BAEE4 001B7E44 40 80 00 08 */ bge lbl_801BAEEC +lbl_801BAEE8: +/* 801BAEE8 001B7E48 42 00 00 00 */ bdnz lbl_801BAEE8 +lbl_801BAEEC: +/* 801BAEEC 001B7E4C 38 00 00 00 */ li r0, 0 +/* 801BAEF0 001B7E50 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801BAEF4 001B7E54 90 03 00 00 */ stw r0, 0(r3) +/* 801BAEF8 001B7E58 38 83 00 04 */ addi r4, r3, 4 +/* 801BAEFC 001B7E5C 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 801BAF00 001B7E60 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801BAF04 001B7E64 7C 05 02 14 */ add r0, r5, r0 +/* 801BAF08 001B7E68 48 00 00 2C */ b lbl_801BAF34 +lbl_801BAF0C: +/* 801BAF0C 001B7E6C 28 04 00 00 */ cmplwi r4, 0 +/* 801BAF10 001B7E70 41 82 00 1C */ beq lbl_801BAF2C +/* 801BAF14 001B7E74 C0 05 00 00 */ lfs f0, 0(r5) +/* 801BAF18 001B7E78 D0 04 00 00 */ stfs f0, 0(r4) +/* 801BAF1C 001B7E7C C0 05 00 04 */ lfs f0, 4(r5) +/* 801BAF20 001B7E80 D0 04 00 04 */ stfs f0, 4(r4) +/* 801BAF24 001B7E84 C0 05 00 08 */ lfs f0, 8(r5) +/* 801BAF28 001B7E88 D0 04 00 08 */ stfs f0, 8(r4) +lbl_801BAF2C: +/* 801BAF2C 001B7E8C 38 84 00 0C */ addi r4, r4, 0xc +/* 801BAF30 001B7E90 38 A5 00 0C */ addi r5, r5, 0xc +lbl_801BAF34: +/* 801BAF34 001B7E94 7C 05 00 40 */ cmplw r5, r0 +/* 801BAF38 001B7E98 40 82 FF D4 */ bne lbl_801BAF0C +/* 801BAF3C 001B7E9C 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 801BAF40 001B7EA0 90 03 00 00 */ stw r0, 0(r3) +lbl_801BAF44: +/* 801BAF44 001B7EA4 80 C1 00 1C */ lwz r6, 0x1c(r1) +/* 801BAF48 001B7EA8 38 80 00 00 */ li r4, 0 +/* 801BAF4C 001B7EAC 2C 06 00 00 */ cmpwi r6, 0 +/* 801BAF50 001B7EB0 40 81 00 40 */ ble lbl_801BAF90 +/* 801BAF54 001B7EB4 2C 06 00 08 */ cmpwi r6, 8 +/* 801BAF58 001B7EB8 38 A6 FF F8 */ addi r5, r6, -8 +/* 801BAF5C 001B7EBC 40 81 00 20 */ ble lbl_801BAF7C +/* 801BAF60 001B7EC0 38 05 00 07 */ addi r0, r5, 7 +/* 801BAF64 001B7EC4 54 00 E8 FE */ srwi r0, r0, 3 +/* 801BAF68 001B7EC8 7C 09 03 A6 */ mtctr r0 +/* 801BAF6C 001B7ECC 2C 05 00 00 */ cmpwi r5, 0 +/* 801BAF70 001B7ED0 40 81 00 0C */ ble lbl_801BAF7C +lbl_801BAF74: +/* 801BAF74 001B7ED4 38 84 00 08 */ addi r4, r4, 8 +/* 801BAF78 001B7ED8 42 00 FF FC */ bdnz lbl_801BAF74 +lbl_801BAF7C: +/* 801BAF7C 001B7EDC 7C 04 30 50 */ subf r0, r4, r6 +/* 801BAF80 001B7EE0 7C 09 03 A6 */ mtctr r0 +/* 801BAF84 001B7EE4 7C 04 30 00 */ cmpw r4, r6 +/* 801BAF88 001B7EE8 40 80 00 08 */ bge lbl_801BAF90 +lbl_801BAF8C: +/* 801BAF8C 001B7EEC 42 00 00 00 */ bdnz lbl_801BAF8C +lbl_801BAF90: +/* 801BAF90 001B7EF0 38 83 00 1C */ addi r4, r3, 0x1c +/* 801BAF94 001B7EF4 38 01 00 08 */ addi r0, r1, 8 +/* 801BAF98 001B7EF8 38 A0 00 00 */ li r5, 0 +/* 801BAF9C 001B7EFC 7C 04 00 40 */ cmplw r4, r0 +/* 801BAFA0 001B7F00 90 A1 00 1C */ stw r5, 0x1c(r1) +/* 801BAFA4 001B7F04 90 A1 00 08 */ stw r5, 8(r1) +/* 801BAFA8 001B7F08 41 82 00 98 */ beq lbl_801BB040 +/* 801BAFAC 001B7F0C 80 C3 00 1C */ lwz r6, 0x1c(r3) +/* 801BAFB0 001B7F10 38 E3 00 20 */ addi r7, r3, 0x20 +/* 801BAFB4 001B7F14 2C 06 00 00 */ cmpwi r6, 0 +/* 801BAFB8 001B7F18 40 81 00 40 */ ble lbl_801BAFF8 +/* 801BAFBC 001B7F1C 2C 06 00 08 */ cmpwi r6, 8 +/* 801BAFC0 001B7F20 38 86 FF F8 */ addi r4, r6, -8 +/* 801BAFC4 001B7F24 40 81 00 20 */ ble lbl_801BAFE4 +/* 801BAFC8 001B7F28 38 04 00 07 */ addi r0, r4, 7 +/* 801BAFCC 001B7F2C 54 00 E8 FE */ srwi r0, r0, 3 +/* 801BAFD0 001B7F30 7C 09 03 A6 */ mtctr r0 +/* 801BAFD4 001B7F34 2C 04 00 00 */ cmpwi r4, 0 +/* 801BAFD8 001B7F38 40 81 00 0C */ ble lbl_801BAFE4 +lbl_801BAFDC: +/* 801BAFDC 001B7F3C 38 A5 00 08 */ addi r5, r5, 8 +/* 801BAFE0 001B7F40 42 00 FF FC */ bdnz lbl_801BAFDC +lbl_801BAFE4: +/* 801BAFE4 001B7F44 7C 05 30 50 */ subf r0, r5, r6 +/* 801BAFE8 001B7F48 7C 09 03 A6 */ mtctr r0 +/* 801BAFEC 001B7F4C 7C 05 30 00 */ cmpw r5, r6 +/* 801BAFF0 001B7F50 40 80 00 08 */ bge lbl_801BAFF8 +lbl_801BAFF4: +/* 801BAFF4 001B7F54 42 00 00 00 */ bdnz lbl_801BAFF4 +lbl_801BAFF8: +/* 801BAFF8 001B7F58 38 00 00 00 */ li r0, 0 +/* 801BAFFC 001B7F5C 38 A1 00 0C */ addi r5, r1, 0xc +/* 801BB000 001B7F60 90 03 00 1C */ stw r0, 0x1c(r3) +/* 801BB004 001B7F64 80 01 00 08 */ lwz r0, 8(r1) +/* 801BB008 001B7F68 7C 85 02 14 */ add r4, r5, r0 +/* 801BB00C 001B7F6C 7C 05 20 50 */ subf r0, r5, r4 +/* 801BB010 001B7F70 7C 09 03 A6 */ mtctr r0 +/* 801BB014 001B7F74 7C 05 20 40 */ cmplw r5, r4 +/* 801BB018 001B7F78 41 82 00 20 */ beq lbl_801BB038 +lbl_801BB01C: +/* 801BB01C 001B7F7C 28 07 00 00 */ cmplwi r7, 0 +/* 801BB020 001B7F80 41 82 00 0C */ beq lbl_801BB02C +/* 801BB024 001B7F84 88 05 00 00 */ lbz r0, 0(r5) +/* 801BB028 001B7F88 98 07 00 00 */ stb r0, 0(r7) +lbl_801BB02C: +/* 801BB02C 001B7F8C 38 E7 00 01 */ addi r7, r7, 1 +/* 801BB030 001B7F90 38 A5 00 01 */ addi r5, r5, 1 +/* 801BB034 001B7F94 42 00 FF E8 */ bdnz lbl_801BB01C +lbl_801BB038: +/* 801BB038 001B7F98 80 01 00 08 */ lwz r0, 8(r1) +/* 801BB03C 001B7F9C 90 03 00 1C */ stw r0, 0x1c(r3) +lbl_801BB040: +/* 801BB040 001B7FA0 80 C1 00 08 */ lwz r6, 8(r1) +/* 801BB044 001B7FA4 38 80 00 00 */ li r4, 0 +/* 801BB048 001B7FA8 2C 06 00 00 */ cmpwi r6, 0 +/* 801BB04C 001B7FAC 40 81 00 40 */ ble lbl_801BB08C +/* 801BB050 001B7FB0 2C 06 00 08 */ cmpwi r6, 8 +/* 801BB054 001B7FB4 38 A6 FF F8 */ addi r5, r6, -8 +/* 801BB058 001B7FB8 40 81 00 20 */ ble lbl_801BB078 +/* 801BB05C 001B7FBC 38 05 00 07 */ addi r0, r5, 7 +/* 801BB060 001B7FC0 54 00 E8 FE */ srwi r0, r0, 3 +/* 801BB064 001B7FC4 7C 09 03 A6 */ mtctr r0 +/* 801BB068 001B7FC8 2C 05 00 00 */ cmpwi r5, 0 +/* 801BB06C 001B7FCC 40 81 00 0C */ ble lbl_801BB078 +lbl_801BB070: +/* 801BB070 001B7FD0 38 84 00 08 */ addi r4, r4, 8 +/* 801BB074 001B7FD4 42 00 FF FC */ bdnz lbl_801BB070 +lbl_801BB078: +/* 801BB078 001B7FD8 7C 04 30 50 */ subf r0, r4, r6 +/* 801BB07C 001B7FDC 7C 09 03 A6 */ mtctr r0 +/* 801BB080 001B7FE0 7C 04 30 00 */ cmpw r4, r6 +/* 801BB084 001B7FE4 40 80 00 08 */ bge lbl_801BB08C +lbl_801BB088: +/* 801BB088 001B7FE8 42 00 00 00 */ bdnz lbl_801BB088 +lbl_801BB08C: +/* 801BB08C 001B7FEC 38 83 00 24 */ addi r4, r3, 0x24 +/* 801BB090 001B7FF0 38 01 00 10 */ addi r0, r1, 0x10 +/* 801BB094 001B7FF4 38 A0 00 00 */ li r5, 0 +/* 801BB098 001B7FF8 7C 04 00 40 */ cmplw r4, r0 +/* 801BB09C 001B7FFC 90 A1 00 08 */ stw r5, 8(r1) +/* 801BB0A0 001B8000 90 A1 00 10 */ stw r5, 0x10(r1) +/* 801BB0A4 001B8004 41 82 00 94 */ beq lbl_801BB138 +/* 801BB0A8 001B8008 80 C3 00 24 */ lwz r6, 0x24(r3) +/* 801BB0AC 001B800C 38 E3 00 28 */ addi r7, r3, 0x28 +/* 801BB0B0 001B8010 2C 06 00 00 */ cmpwi r6, 0 +/* 801BB0B4 001B8014 40 81 00 40 */ ble lbl_801BB0F4 +/* 801BB0B8 001B8018 2C 06 00 08 */ cmpwi r6, 8 +/* 801BB0BC 001B801C 38 86 FF F8 */ addi r4, r6, -8 +/* 801BB0C0 001B8020 40 81 00 20 */ ble lbl_801BB0E0 +/* 801BB0C4 001B8024 38 04 00 07 */ addi r0, r4, 7 +/* 801BB0C8 001B8028 54 00 E8 FE */ srwi r0, r0, 3 +/* 801BB0CC 001B802C 7C 09 03 A6 */ mtctr r0 +/* 801BB0D0 001B8030 2C 04 00 00 */ cmpwi r4, 0 +/* 801BB0D4 001B8034 40 81 00 0C */ ble lbl_801BB0E0 +lbl_801BB0D8: +/* 801BB0D8 001B8038 38 A5 00 08 */ addi r5, r5, 8 +/* 801BB0DC 001B803C 42 00 FF FC */ bdnz lbl_801BB0D8 +lbl_801BB0E0: +/* 801BB0E0 001B8040 7C 05 30 50 */ subf r0, r5, r6 +/* 801BB0E4 001B8044 7C 09 03 A6 */ mtctr r0 +/* 801BB0E8 001B8048 7C 05 30 00 */ cmpw r5, r6 +/* 801BB0EC 001B804C 40 80 00 08 */ bge lbl_801BB0F4 +lbl_801BB0F0: +/* 801BB0F0 001B8050 42 00 00 00 */ bdnz lbl_801BB0F0 +lbl_801BB0F4: +/* 801BB0F4 001B8054 38 00 00 00 */ li r0, 0 +/* 801BB0F8 001B8058 38 81 00 14 */ addi r4, r1, 0x14 +/* 801BB0FC 001B805C 90 03 00 24 */ stw r0, 0x24(r3) +/* 801BB100 001B8060 80 01 00 10 */ lwz r0, 0x10(r1) +/* 801BB104 001B8064 54 00 10 3A */ slwi r0, r0, 2 +/* 801BB108 001B8068 7C 04 02 14 */ add r0, r4, r0 +/* 801BB10C 001B806C 48 00 00 1C */ b lbl_801BB128 +lbl_801BB110: +/* 801BB110 001B8070 28 07 00 00 */ cmplwi r7, 0 +/* 801BB114 001B8074 41 82 00 0C */ beq lbl_801BB120 +/* 801BB118 001B8078 C0 04 00 00 */ lfs f0, 0(r4) +/* 801BB11C 001B807C D0 07 00 00 */ stfs f0, 0(r7) +lbl_801BB120: +/* 801BB120 001B8080 38 E7 00 04 */ addi r7, r7, 4 +/* 801BB124 001B8084 38 84 00 04 */ addi r4, r4, 4 +lbl_801BB128: +/* 801BB128 001B8088 7C 04 00 40 */ cmplw r4, r0 +/* 801BB12C 001B808C 40 82 FF E4 */ bne lbl_801BB110 +/* 801BB130 001B8090 80 01 00 10 */ lwz r0, 0x10(r1) +/* 801BB134 001B8094 90 03 00 24 */ stw r0, 0x24(r3) +lbl_801BB138: +/* 801BB138 001B8098 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 801BB13C 001B809C 38 60 00 00 */ li r3, 0 +/* 801BB140 001B80A0 2C 05 00 00 */ cmpwi r5, 0 +/* 801BB144 001B80A4 40 81 00 40 */ ble lbl_801BB184 +/* 801BB148 001B80A8 2C 05 00 08 */ cmpwi r5, 8 +/* 801BB14C 001B80AC 38 85 FF F8 */ addi r4, r5, -8 +/* 801BB150 001B80B0 40 81 00 20 */ ble lbl_801BB170 +/* 801BB154 001B80B4 38 04 00 07 */ addi r0, r4, 7 +/* 801BB158 001B80B8 54 00 E8 FE */ srwi r0, r0, 3 +/* 801BB15C 001B80BC 7C 09 03 A6 */ mtctr r0 +/* 801BB160 001B80C0 2C 04 00 00 */ cmpwi r4, 0 +/* 801BB164 001B80C4 40 81 00 0C */ ble lbl_801BB170 +lbl_801BB168: +/* 801BB168 001B80C8 38 63 00 08 */ addi r3, r3, 8 +/* 801BB16C 001B80CC 42 00 FF FC */ bdnz lbl_801BB168 +lbl_801BB170: +/* 801BB170 001B80D0 7C 03 28 50 */ subf r0, r3, r5 +/* 801BB174 001B80D4 7C 09 03 A6 */ mtctr r0 +/* 801BB178 001B80D8 7C 03 28 00 */ cmpw r3, r5 +/* 801BB17C 001B80DC 40 80 00 08 */ bge lbl_801BB184 +lbl_801BB180: +/* 801BB180 001B80E0 42 00 00 00 */ bdnz lbl_801BB180 +lbl_801BB184: +/* 801BB184 001B80E4 38 00 00 00 */ li r0, 0 +/* 801BB188 001B80E8 90 01 00 10 */ stw r0, 0x10(r1) +/* 801BB18C 001B80EC 38 21 00 40 */ addi r1, r1, 0x40 +/* 801BB190 001B80F0 4E 80 00 20 */ blr + +.global AllocResPools__10CGunWeaponFQ212CPlayerState7EBeamId +AllocResPools__10CGunWeaponFQ212CPlayerState7EBeamId: +/* 801BB194 001B80F4 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 801BB198 001B80F8 7C 08 02 A6 */ mflr r0 +/* 801BB19C 001B80FC 90 01 00 84 */ stw r0, 0x84(r1) +/* 801BB1A0 001B8100 BE C1 00 58 */ stmw r22, 0x58(r1) +/* 801BB1A4 001B8104 7C 78 1B 78 */ mr r24, r3 +/* 801BB1A8 001B8108 7C 96 23 78 */ mr r22, r4 +/* 801BB1AC 001B810C 80 6D A1 48 */ lwz r3, gpTweakGunRes@sda21(r13) +/* 801BB1B0 001B8110 4B F0 07 A9 */ bl GetWeaponResourcePair__12CTweakGunResCFi +/* 801BB1B4 001B8114 3C A0 80 3D */ lis r5, lbl_803D1750@ha +/* 801BB1B8 001B8118 3C 80 57 50 */ lis r4, 0x57505343@ha +/* 801BB1BC 001B811C 56 DA 18 38 */ slwi r26, r22, 3 +/* 801BB1C0 001B8120 7C 7F 1B 78 */ mr r31, r3 +/* 801BB1C4 001B8124 38 05 17 50 */ addi r0, r5, lbl_803D1750@l +/* 801BB1C8 001B8128 3B 98 01 70 */ addi r28, r24, 0x170 +/* 801BB1CC 001B812C 7F C0 D2 14 */ add r30, r0, r26 +/* 801BB1D0 001B8130 3B 78 01 48 */ addi r27, r24, 0x148 +/* 801BB1D4 001B8134 3A E4 53 43 */ addi r23, r4, 0x57505343@l +/* 801BB1D8 001B8138 3B 20 00 00 */ li r25, 0 +/* 801BB1DC 001B813C 3B A0 00 00 */ li r29, 0 +lbl_801BB1E0: +/* 801BB1E0 001B8140 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801BB1E4 001B8144 38 61 00 20 */ addi r3, r1, 0x20 +/* 801BB1E8 001B8148 80 BE 00 00 */ lwz r5, 0(r30) +/* 801BB1EC 001B814C 81 84 00 00 */ lwz r12, 0(r4) +/* 801BB1F0 001B8150 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801BB1F4 001B8154 7D 89 03 A6 */ mtctr r12 +/* 801BB1F8 001B8158 4E 80 04 21 */ bctrl +/* 801BB1FC 001B815C 38 61 00 40 */ addi r3, r1, 0x40 +/* 801BB200 001B8160 38 81 00 20 */ addi r4, r1, 0x20 +/* 801BB204 001B8164 48 18 5C A5 */ bl __ct__6CTokenFRC6CToken +/* 801BB208 001B8168 38 00 00 00 */ li r0, 0 +/* 801BB20C 001B816C 90 01 00 48 */ stw r0, 0x48(r1) +/* 801BB210 001B8170 80 18 01 6C */ lwz r0, 0x16c(r24) +/* 801BB214 001B8174 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801BB218 001B8178 7E DC 02 15 */ add. r22, r28, r0 +/* 801BB21C 001B817C 41 82 00 18 */ beq lbl_801BB234 +/* 801BB220 001B8180 7E C3 B3 78 */ mr r3, r22 +/* 801BB224 001B8184 38 81 00 40 */ addi r4, r1, 0x40 +/* 801BB228 001B8188 48 18 5C 81 */ bl __ct__6CTokenFRC6CToken +/* 801BB22C 001B818C 80 01 00 48 */ lwz r0, 0x48(r1) +/* 801BB230 001B8190 90 16 00 08 */ stw r0, 8(r22) +lbl_801BB234: +/* 801BB234 001B8194 80 B8 01 6C */ lwz r5, 0x16c(r24) +/* 801BB238 001B8198 38 61 00 40 */ addi r3, r1, 0x40 +/* 801BB23C 001B819C 38 80 00 00 */ li r4, 0 +/* 801BB240 001B81A0 38 05 00 01 */ addi r0, r5, 1 +/* 801BB244 001B81A4 90 18 01 6C */ stw r0, 0x16c(r24) +/* 801BB248 001B81A8 48 18 5B F9 */ bl __dt__6CTokenFv +/* 801BB24C 001B81AC 38 61 00 20 */ addi r3, r1, 0x20 +/* 801BB250 001B81B0 38 80 FF FF */ li r4, -1 +/* 801BB254 001B81B4 48 18 5B ED */ bl __dt__6CTokenFv +/* 801BB258 001B81B8 80 DF 00 0C */ lwz r6, 0xc(r31) +/* 801BB25C 001B81BC 38 61 00 10 */ addi r3, r1, 0x10 +/* 801BB260 001B81C0 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801BB264 001B81C4 38 A1 00 18 */ addi r5, r1, 0x18 +/* 801BB268 001B81C8 7C 06 E8 2E */ lwzx r0, r6, r29 +/* 801BB26C 001B81CC 92 E1 00 18 */ stw r23, 0x18(r1) +/* 801BB270 001B81D0 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801BB274 001B81D4 81 84 00 00 */ lwz r12, 0(r4) +/* 801BB278 001B81D8 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801BB27C 001B81DC 7D 89 03 A6 */ mtctr r12 +/* 801BB280 001B81E0 4E 80 04 21 */ bctrl +/* 801BB284 001B81E4 38 61 00 34 */ addi r3, r1, 0x34 +/* 801BB288 001B81E8 38 81 00 10 */ addi r4, r1, 0x10 +/* 801BB28C 001B81EC 48 18 5C 1D */ bl __ct__6CTokenFRC6CToken +/* 801BB290 001B81F0 38 00 00 00 */ li r0, 0 +/* 801BB294 001B81F4 90 01 00 3C */ stw r0, 0x3c(r1) +/* 801BB298 001B81F8 80 18 01 44 */ lwz r0, 0x144(r24) +/* 801BB29C 001B81FC 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801BB2A0 001B8200 7E DB 02 15 */ add. r22, r27, r0 +/* 801BB2A4 001B8204 41 82 00 18 */ beq lbl_801BB2BC +/* 801BB2A8 001B8208 7E C3 B3 78 */ mr r3, r22 +/* 801BB2AC 001B820C 38 81 00 34 */ addi r4, r1, 0x34 +/* 801BB2B0 001B8210 48 18 5B F9 */ bl __ct__6CTokenFRC6CToken +/* 801BB2B4 001B8214 80 01 00 3C */ lwz r0, 0x3c(r1) +/* 801BB2B8 001B8218 90 16 00 08 */ stw r0, 8(r22) +lbl_801BB2BC: +/* 801BB2BC 001B821C 80 B8 01 44 */ lwz r5, 0x144(r24) +/* 801BB2C0 001B8220 38 61 00 34 */ addi r3, r1, 0x34 +/* 801BB2C4 001B8224 38 80 00 00 */ li r4, 0 +/* 801BB2C8 001B8228 38 05 00 01 */ addi r0, r5, 1 +/* 801BB2CC 001B822C 90 18 01 44 */ stw r0, 0x144(r24) +/* 801BB2D0 001B8230 48 18 5B 71 */ bl __dt__6CTokenFv +/* 801BB2D4 001B8234 38 61 00 10 */ addi r3, r1, 0x10 +/* 801BB2D8 001B8238 38 80 FF FF */ li r4, -1 +/* 801BB2DC 001B823C 48 18 5B 65 */ bl __dt__6CTokenFv +/* 801BB2E0 001B8240 3B 39 00 01 */ addi r25, r25, 1 +/* 801BB2E4 001B8244 3B BD 00 04 */ addi r29, r29, 4 +/* 801BB2E8 001B8248 2C 19 00 02 */ cmpwi r25, 2 +/* 801BB2EC 001B824C 3B DE 00 04 */ addi r30, r30, 4 +/* 801BB2F0 001B8250 41 80 FE F0 */ blt lbl_801BB1E0 +/* 801BB2F4 001B8254 3C 60 80 3D */ lis r3, lbl_803D1778@ha +/* 801BB2F8 001B8258 3B 38 01 8C */ addi r25, r24, 0x18c +/* 801BB2FC 001B825C 38 03 17 78 */ addi r0, r3, lbl_803D1778@l +/* 801BB300 001B8260 3B 60 00 00 */ li r27, 0 +/* 801BB304 001B8264 7E E0 D2 14 */ add r23, r0, r26 +lbl_801BB308: +/* 801BB308 001B8268 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801BB30C 001B826C 38 61 00 08 */ addi r3, r1, 8 +/* 801BB310 001B8270 80 B7 00 00 */ lwz r5, 0(r23) +/* 801BB314 001B8274 81 84 00 00 */ lwz r12, 0(r4) +/* 801BB318 001B8278 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801BB31C 001B827C 7D 89 03 A6 */ mtctr r12 +/* 801BB320 001B8280 4E 80 04 21 */ bctrl +/* 801BB324 001B8284 38 61 00 28 */ addi r3, r1, 0x28 +/* 801BB328 001B8288 38 81 00 08 */ addi r4, r1, 8 +/* 801BB32C 001B828C 48 18 5B 7D */ bl __ct__6CTokenFRC6CToken +/* 801BB330 001B8290 38 00 00 00 */ li r0, 0 +/* 801BB334 001B8294 90 01 00 30 */ stw r0, 0x30(r1) +/* 801BB338 001B8298 80 18 01 88 */ lwz r0, 0x188(r24) +/* 801BB33C 001B829C 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801BB340 001B82A0 7E D9 02 15 */ add. r22, r25, r0 +/* 801BB344 001B82A4 41 82 00 18 */ beq lbl_801BB35C +/* 801BB348 001B82A8 7E C3 B3 78 */ mr r3, r22 +/* 801BB34C 001B82AC 38 81 00 28 */ addi r4, r1, 0x28 +/* 801BB350 001B82B0 48 18 5B 59 */ bl __ct__6CTokenFRC6CToken +/* 801BB354 001B82B4 80 01 00 30 */ lwz r0, 0x30(r1) +/* 801BB358 001B82B8 90 16 00 08 */ stw r0, 8(r22) +lbl_801BB35C: +/* 801BB35C 001B82BC 80 B8 01 88 */ lwz r5, 0x188(r24) +/* 801BB360 001B82C0 38 61 00 28 */ addi r3, r1, 0x28 +/* 801BB364 001B82C4 38 80 00 00 */ li r4, 0 +/* 801BB368 001B82C8 38 05 00 01 */ addi r0, r5, 1 +/* 801BB36C 001B82CC 90 18 01 88 */ stw r0, 0x188(r24) +/* 801BB370 001B82D0 48 18 5A D1 */ bl __dt__6CTokenFv +/* 801BB374 001B82D4 38 61 00 08 */ addi r3, r1, 8 +/* 801BB378 001B82D8 38 80 FF FF */ li r4, -1 +/* 801BB37C 001B82DC 48 18 5A C5 */ bl __dt__6CTokenFv +/* 801BB380 001B82E0 3B 7B 00 01 */ addi r27, r27, 1 +/* 801BB384 001B82E4 3A F7 00 04 */ addi r23, r23, 4 +/* 801BB388 001B82E8 2C 1B 00 02 */ cmpwi r27, 2 +/* 801BB38C 001B82EC 41 80 FF 7C */ blt lbl_801BB308 +/* 801BB390 001B82F0 BA C1 00 58 */ lmw r22, 0x58(r1) +/* 801BB394 001B82F4 80 01 00 84 */ lwz r0, 0x84(r1) +/* 801BB398 001B82F8 7C 08 03 A6 */ mtlr r0 +/* 801BB39C 001B82FC 38 21 00 80 */ addi r1, r1, 0x80 +/* 801BB3A0 001B8300 4E 80 00 20 */ blr + +.global IsLoaded__10CGunWeaponCFv +IsLoaded__10CGunWeaponCFv: +/* 801BB3A4 001B8304 88 03 02 18 */ lbz r0, 0x218(r3) +/* 801BB3A8 001B8308 54 03 DF FE */ rlwinm r3, r0, 0x1b, 0x1f, 0x1f +/* 801BB3AC 001B830C 4E 80 00 20 */ blr + +.global Unload__10CGunWeaponFR13CStateManager +Unload__10CGunWeaponFR13CStateManager: +/* 801BB3B0 001B8310 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 801BB3B4 001B8314 7C 08 02 A6 */ mflr r0 +/* 801BB3B8 001B8318 90 01 01 04 */ stw r0, 0x104(r1) +/* 801BB3BC 001B831C 93 E1 00 FC */ stw r31, 0xfc(r1) +/* 801BB3C0 001B8320 7C 7F 1B 78 */ mr r31, r3 +/* 801BB3C4 001B8324 4B FF F5 51 */ bl UnlockTokens__10CGunWeaponFv +/* 801BB3C8 001B8328 38 00 00 00 */ li r0, 0 +/* 801BB3CC 001B832C 38 7F 00 10 */ addi r3, r31, 0x10 +/* 801BB3D0 001B8330 90 1F 02 10 */ stw r0, 0x210(r31) +/* 801BB3D4 001B8334 38 81 00 A8 */ addi r4, r1, 0xa8 +/* 801BB3D8 001B8338 90 1F 02 04 */ stw r0, 0x204(r31) +/* 801BB3DC 001B833C 98 01 00 F4 */ stb r0, 0xf4(r1) +/* 801BB3E0 001B8340 4B F6 29 6D */ bl sub_8011dd4c +/* 801BB3E4 001B8344 88 01 00 F4 */ lbz r0, 0xf4(r1) +/* 801BB3E8 001B8348 28 00 00 00 */ cmplwi r0, 0 +/* 801BB3EC 001B834C 41 82 00 10 */ beq lbl_801BB3FC +/* 801BB3F0 001B8350 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 801BB3F4 001B8354 38 80 FF FF */ li r4, -1 +/* 801BB3F8 001B8358 4B F5 B6 55 */ bl __dt__10CModelDataFv +lbl_801BB3FC: +/* 801BB3FC 001B835C 38 00 00 00 */ li r0, 0 +/* 801BB400 001B8360 38 7F 00 60 */ addi r3, r31, 0x60 +/* 801BB404 001B8364 98 01 00 F4 */ stb r0, 0xf4(r1) +/* 801BB408 001B8368 38 81 00 58 */ addi r4, r1, 0x58 +/* 801BB40C 001B836C 98 01 00 A4 */ stb r0, 0xa4(r1) +/* 801BB410 001B8370 4B F6 29 3D */ bl sub_8011dd4c +/* 801BB414 001B8374 88 01 00 A4 */ lbz r0, 0xa4(r1) +/* 801BB418 001B8378 28 00 00 00 */ cmplwi r0, 0 +/* 801BB41C 001B837C 41 82 00 10 */ beq lbl_801BB42C +/* 801BB420 001B8380 38 61 00 58 */ addi r3, r1, 0x58 +/* 801BB424 001B8384 38 80 FF FF */ li r4, -1 +/* 801BB428 001B8388 4B F5 B6 25 */ bl __dt__10CModelDataFv +lbl_801BB42C: +/* 801BB42C 001B838C 38 00 00 00 */ li r0, 0 +/* 801BB430 001B8390 38 7F 00 B0 */ addi r3, r31, 0xb0 +/* 801BB434 001B8394 98 01 00 A4 */ stb r0, 0xa4(r1) +/* 801BB438 001B8398 38 81 00 08 */ addi r4, r1, 8 +/* 801BB43C 001B839C 98 01 00 54 */ stb r0, 0x54(r1) +/* 801BB440 001B83A0 4B F6 29 0D */ bl sub_8011dd4c +/* 801BB444 001B83A4 88 01 00 54 */ lbz r0, 0x54(r1) +/* 801BB448 001B83A8 28 00 00 00 */ cmplwi r0, 0 +/* 801BB44C 001B83AC 41 82 00 10 */ beq lbl_801BB45C +/* 801BB450 001B83B0 38 61 00 08 */ addi r3, r1, 8 +/* 801BB454 001B83B4 38 80 FF FF */ li r4, -1 +/* 801BB458 001B83B8 4B F5 B5 F5 */ bl __dt__10CModelDataFv +lbl_801BB45C: +/* 801BB45C 001B83BC 38 00 00 00 */ li r0, 0 +/* 801BB460 001B83C0 38 7F 01 00 */ addi r3, r31, 0x100 +/* 801BB464 001B83C4 98 01 00 54 */ stb r0, 0x54(r1) +/* 801BB468 001B83C8 38 80 00 00 */ li r4, 0 +/* 801BB46C 001B83CC 4B F6 26 69 */ bl "__as__Q24rstl28single_ptr<14CGunController>FRC14CGunController" +/* 801BB470 001B83D0 38 00 00 00 */ li r0, 0 +/* 801BB474 001B83D4 90 1F 01 BC */ stw r0, 0x1bc(r31) +/* 801BB478 001B83D8 80 7F 01 B8 */ lwz r3, 0x1b8(r31) +/* 801BB47C 001B83DC 28 03 00 00 */ cmplwi r3, 0 +/* 801BB480 001B83E0 41 82 00 18 */ beq lbl_801BB498 +/* 801BB484 001B83E4 81 83 00 00 */ lwz r12, 0(r3) +/* 801BB488 001B83E8 38 80 00 01 */ li r4, 1 +/* 801BB48C 001B83EC 81 8C 00 08 */ lwz r12, 8(r12) +/* 801BB490 001B83F0 7D 89 03 A6 */ mtctr r12 +/* 801BB494 001B83F4 4E 80 04 21 */ bctrl +lbl_801BB498: +/* 801BB498 001B83F8 38 00 00 00 */ li r0, 0 +/* 801BB49C 001B83FC 7F E3 FB 78 */ mr r3, r31 +/* 801BB4A0 001B8400 90 1F 01 B8 */ stw r0, 0x1b8(r31) +/* 801BB4A4 001B8404 4B FF F7 C5 */ bl FreeResPools__10CGunWeaponFv +/* 801BB4A8 001B8408 38 7F 01 04 */ addi r3, r31, 0x104 +/* 801BB4AC 001B840C 48 18 58 95 */ bl Unlock__6CTokenFv +/* 801BB4B0 001B8410 88 1F 02 18 */ lbz r0, 0x218(r31) +/* 801BB4B4 001B8414 38 60 00 00 */ li r3, 0 +/* 801BB4B8 001B8418 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 801BB4BC 001B841C 98 1F 02 18 */ stb r0, 0x218(r31) +/* 801BB4C0 001B8420 83 E1 00 FC */ lwz r31, 0xfc(r1) +/* 801BB4C4 001B8424 80 01 01 04 */ lwz r0, 0x104(r1) +/* 801BB4C8 001B8428 7C 08 03 A6 */ mtlr r0 +/* 801BB4CC 001B842C 38 21 01 00 */ addi r1, r1, 0x100 +/* 801BB4D0 001B8430 4E 80 00 20 */ blr + +.global Load__10CGunWeaponFR13CStateManagerb +Load__10CGunWeaponFR13CStateManagerb: +/* 801BB4D4 001B8434 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801BB4D8 001B8438 7C 08 02 A6 */ mflr r0 +/* 801BB4DC 001B843C 90 01 00 24 */ stw r0, 0x24(r1) +/* 801BB4E0 001B8440 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801BB4E4 001B8444 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801BB4E8 001B8448 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801BB4EC 001B844C 7C BD 2B 78 */ mr r29, r5 +/* 801BB4F0 001B8450 93 81 00 10 */ stw r28, 0x10(r1) +/* 801BB4F4 001B8454 7C 7C 1B 78 */ mr r28, r3 +/* 801BB4F8 001B8458 4B FF F4 55 */ bl LockTokens__10CGunWeaponFR13CStateManager +/* 801BB4FC 001B845C 88 7C 02 18 */ lbz r3, 0x218(r28) +/* 801BB500 001B8460 53 A3 26 F6 */ rlwimi r3, r29, 4, 0x1b, 0x1b +/* 801BB504 001B8464 38 00 00 00 */ li r0, 0 +/* 801BB508 001B8468 98 7C 02 18 */ stb r3, 0x218(r28) +/* 801BB50C 001B846C 90 1C 02 04 */ stw r0, 0x204(r28) +/* 801BB510 001B8470 80 7C 01 B8 */ lwz r3, 0x1b8(r28) +/* 801BB514 001B8474 28 03 00 00 */ cmplwi r3, 0 +/* 801BB518 001B8478 41 82 00 18 */ beq lbl_801BB530 +/* 801BB51C 001B847C 81 83 00 00 */ lwz r12, 0(r3) +/* 801BB520 001B8480 38 80 00 01 */ li r4, 1 +/* 801BB524 001B8484 81 8C 00 08 */ lwz r12, 8(r12) +/* 801BB528 001B8488 7D 89 03 A6 */ mtctr r12 +/* 801BB52C 001B848C 4E 80 04 21 */ bctrl +lbl_801BB530: +/* 801BB530 001B8490 38 00 00 00 */ li r0, 0 +/* 801BB534 001B8494 38 7C 01 04 */ addi r3, r28, 0x104 +/* 801BB538 001B8498 90 1C 01 B8 */ stw r0, 0x1b8(r28) +/* 801BB53C 001B849C 48 18 58 49 */ bl Lock__6CTokenFv +/* 801BB540 001B84A0 38 7C 01 60 */ addi r3, r28, 0x160 +/* 801BB544 001B84A4 48 18 58 41 */ bl Lock__6CTokenFv +/* 801BB548 001B84A8 3B FC 01 70 */ addi r31, r28, 0x170 +/* 801BB54C 001B84AC 3B DC 01 48 */ addi r30, r28, 0x148 +/* 801BB550 001B84B0 3B A0 00 00 */ li r29, 0 +lbl_801BB554: +/* 801BB554 001B84B4 7F E3 FB 78 */ mr r3, r31 +/* 801BB558 001B84B8 48 18 58 2D */ bl Lock__6CTokenFv +/* 801BB55C 001B84BC 7F C3 F3 78 */ mr r3, r30 +/* 801BB560 001B84C0 48 18 58 25 */ bl Lock__6CTokenFv +/* 801BB564 001B84C4 3B BD 00 01 */ addi r29, r29, 1 +/* 801BB568 001B84C8 3B DE 00 0C */ addi r30, r30, 0xc +/* 801BB56C 001B84CC 2C 1D 00 02 */ cmpwi r29, 2 +/* 801BB570 001B84D0 3B FF 00 0C */ addi r31, r31, 0xc +/* 801BB574 001B84D4 41 80 FF E0 */ blt lbl_801BB554 +/* 801BB578 001B84D8 3B A0 00 00 */ li r29, 0 +/* 801BB57C 001B84DC 3B DC 01 8C */ addi r30, r28, 0x18c +lbl_801BB580: +/* 801BB580 001B84E0 7F C3 F3 78 */ mr r3, r30 +/* 801BB584 001B84E4 48 18 58 01 */ bl Lock__6CTokenFv +/* 801BB588 001B84E8 3B BD 00 01 */ addi r29, r29, 1 +/* 801BB58C 001B84EC 3B DE 00 0C */ addi r30, r30, 0xc +/* 801BB590 001B84F0 2C 1D 00 02 */ cmpwi r29, 2 +/* 801BB594 001B84F4 41 80 FF EC */ blt lbl_801BB580 +/* 801BB598 001B84F8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801BB59C 001B84FC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801BB5A0 001B8500 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801BB5A4 001B8504 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801BB5A8 001B8508 83 81 00 10 */ lwz r28, 0x10(r1) +/* 801BB5AC 001B850C 7C 08 03 A6 */ mtlr r0 +/* 801BB5B0 001B8510 38 21 00 20 */ addi r1, r1, 0x20 +/* 801BB5B4 001B8514 4E 80 00 20 */ blr + +.global TouchHolo__10CGunWeaponFRC13CStateManager +TouchHolo__10CGunWeaponFRC13CStateManager: +/* 801BB5B8 001B8518 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801BB5BC 001B851C 7C 08 02 A6 */ mflr r0 +/* 801BB5C0 001B8520 90 01 00 14 */ stw r0, 0x14(r1) +/* 801BB5C4 001B8524 88 03 00 AC */ lbz r0, 0xac(r3) +/* 801BB5C8 001B8528 28 00 00 00 */ cmplwi r0, 0 +/* 801BB5CC 001B852C 41 82 00 10 */ beq lbl_801BB5DC +/* 801BB5D0 001B8530 38 63 00 60 */ addi r3, r3, 0x60 +/* 801BB5D4 001B8534 38 A0 00 00 */ li r5, 0 +/* 801BB5D8 001B8538 4B F5 A7 39 */ bl Touch__10CModelDataCFRC13CStateManageri +lbl_801BB5DC: +/* 801BB5DC 001B853C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801BB5E0 001B8540 7C 08 03 A6 */ mtlr r0 +/* 801BB5E4 001B8544 38 21 00 10 */ addi r1, r1, 0x10 +/* 801BB5E8 001B8548 4E 80 00 20 */ blr + +.global Touch__10CGunWeaponFRC13CStateManager +Touch__10CGunWeaponFRC13CStateManager: +/* 801BB5EC 001B854C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801BB5F0 001B8550 7C 08 02 A6 */ mflr r0 +/* 801BB5F4 001B8554 90 01 00 14 */ stw r0, 0x14(r1) +/* 801BB5F8 001B8558 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801BB5FC 001B855C 7C 9F 23 78 */ mr r31, r4 +/* 801BB600 001B8560 93 C1 00 08 */ stw r30, 8(r1) +/* 801BB604 001B8564 7C 7E 1B 78 */ mr r30, r3 +/* 801BB608 001B8568 88 03 00 5C */ lbz r0, 0x5c(r3) +/* 801BB60C 001B856C 28 00 00 00 */ cmplwi r0, 0 +/* 801BB610 001B8570 41 82 00 2C */ beq lbl_801BB63C +/* 801BB614 001B8574 80 BE 02 0C */ lwz r5, 0x20c(r30) +/* 801BB618 001B8578 38 7E 00 10 */ addi r3, r30, 0x10 +/* 801BB61C 001B857C 4B F5 A6 F5 */ bl Touch__10CModelDataCFRC13CStateManageri +/* 801BB620 001B8580 88 1E 00 FC */ lbz r0, 0xfc(r30) +/* 801BB624 001B8584 28 00 00 00 */ cmplwi r0, 0 +/* 801BB628 001B8588 41 82 00 14 */ beq lbl_801BB63C +/* 801BB62C 001B858C 7F E4 FB 78 */ mr r4, r31 +/* 801BB630 001B8590 38 7E 00 B0 */ addi r3, r30, 0xb0 +/* 801BB634 001B8594 38 A0 00 00 */ li r5, 0 +/* 801BB638 001B8598 4B F5 A6 D9 */ bl Touch__10CModelDataCFRC13CStateManageri +lbl_801BB63C: +/* 801BB63C 001B859C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801BB640 001B85A0 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801BB644 001B85A4 83 C1 00 08 */ lwz r30, 8(r1) +/* 801BB648 001B85A8 7C 08 03 A6 */ mtlr r0 +/* 801BB64C 001B85AC 38 21 00 10 */ addi r1, r1, 0x10 +/* 801BB650 001B85B0 4E 80 00 20 */ blr + +.global GetBounds__10CGunWeaponCFRC12CTransform4f +GetBounds__10CGunWeaponCFRC12CTransform4f: +/* 801BB654 001B85B4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801BB658 001B85B8 7C 08 02 A6 */ mflr r0 +/* 801BB65C 001B85BC 90 01 00 14 */ stw r0, 0x14(r1) +/* 801BB660 001B85C0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801BB664 001B85C4 7C 7F 1B 78 */ mr r31, r3 +/* 801BB668 001B85C8 88 04 00 5C */ lbz r0, 0x5c(r4) +/* 801BB66C 001B85CC 28 00 00 00 */ cmplwi r0, 0 +/* 801BB670 001B85D0 41 82 00 10 */ beq lbl_801BB680 +/* 801BB674 001B85D4 38 84 00 10 */ addi r4, r4, 0x10 +/* 801BB678 001B85D8 4B F5 A1 3D */ bl GetBounds__10CModelDataCFRC12CTransform4f +/* 801BB67C 001B85DC 48 00 00 38 */ b lbl_801BB6B4 +lbl_801BB680: +/* 801BB680 001B85E0 3C 60 80 5A */ lis r3, lbl_805A6784@ha +/* 801BB684 001B85E4 C4 03 67 84 */ lfsu f0, lbl_805A6784@l(r3) +/* 801BB688 001B85E8 D0 1F 00 00 */ stfs f0, 0(r31) +/* 801BB68C 001B85EC C0 03 00 04 */ lfs f0, 4(r3) +/* 801BB690 001B85F0 D0 1F 00 04 */ stfs f0, 4(r31) +/* 801BB694 001B85F4 C0 03 00 08 */ lfs f0, 8(r3) +/* 801BB698 001B85F8 D0 1F 00 08 */ stfs f0, 8(r31) +/* 801BB69C 001B85FC C0 03 00 0C */ lfs f0, 0xc(r3) +/* 801BB6A0 001B8600 D0 1F 00 0C */ stfs f0, 0xc(r31) +/* 801BB6A4 001B8604 C0 03 00 10 */ lfs f0, 0x10(r3) +/* 801BB6A8 001B8608 D0 1F 00 10 */ stfs f0, 0x10(r31) +/* 801BB6AC 001B860C C0 03 00 14 */ lfs f0, 0x14(r3) +/* 801BB6B0 001B8610 D0 1F 00 14 */ stfs f0, 0x14(r31) +lbl_801BB6B4: +/* 801BB6B4 001B8614 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801BB6B8 001B8618 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801BB6BC 001B861C 7C 08 03 A6 */ mtlr r0 +/* 801BB6C0 001B8620 38 21 00 10 */ addi r1, r1, 0x10 +/* 801BB6C4 001B8624 4E 80 00 20 */ blr + +.global GetBounds__10CGunWeaponCFv +GetBounds__10CGunWeaponCFv: +/* 801BB6C8 001B8628 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801BB6CC 001B862C 7C 08 02 A6 */ mflr r0 +/* 801BB6D0 001B8630 90 01 00 14 */ stw r0, 0x14(r1) +/* 801BB6D4 001B8634 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801BB6D8 001B8638 7C 7F 1B 78 */ mr r31, r3 +/* 801BB6DC 001B863C 88 04 00 5C */ lbz r0, 0x5c(r4) +/* 801BB6E0 001B8640 28 00 00 00 */ cmplwi r0, 0 +/* 801BB6E4 001B8644 41 82 00 10 */ beq lbl_801BB6F4 +/* 801BB6E8 001B8648 38 84 00 10 */ addi r4, r4, 0x10 +/* 801BB6EC 001B864C 4B F5 9E D9 */ bl GetBounds__10CModelDataCFv +/* 801BB6F0 001B8650 48 00 00 38 */ b lbl_801BB728 +lbl_801BB6F4: +/* 801BB6F4 001B8654 3C 60 80 5A */ lis r3, lbl_805A6784@ha +/* 801BB6F8 001B8658 C4 03 67 84 */ lfsu f0, lbl_805A6784@l(r3) +/* 801BB6FC 001B865C D0 1F 00 00 */ stfs f0, 0(r31) +/* 801BB700 001B8660 C0 03 00 04 */ lfs f0, 4(r3) +/* 801BB704 001B8664 D0 1F 00 04 */ stfs f0, 4(r31) +/* 801BB708 001B8668 C0 03 00 08 */ lfs f0, 8(r3) +/* 801BB70C 001B866C D0 1F 00 08 */ stfs f0, 8(r31) +/* 801BB710 001B8670 C0 03 00 0C */ lfs f0, 0xc(r3) +/* 801BB714 001B8674 D0 1F 00 0C */ stfs f0, 0xc(r31) +/* 801BB718 001B8678 C0 03 00 10 */ lfs f0, 0x10(r3) +/* 801BB71C 001B867C D0 1F 00 10 */ stfs f0, 0x10(r31) +/* 801BB720 001B8680 C0 03 00 14 */ lfs f0, 0x14(r3) +/* 801BB724 001B8684 D0 1F 00 14 */ stfs f0, 0x14(r31) +lbl_801BB728: +/* 801BB728 001B8688 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801BB72C 001B868C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801BB730 001B8690 7C 08 03 A6 */ mtlr r0 +/* 801BB734 001B8694 38 21 00 10 */ addi r1, r1, 0x10 +/* 801BB738 001B8698 4E 80 00 20 */ blr + +.global GetDamageInfo__10CGunWeaponFR13CStateManagerQ212CPlayerState12EChargeStagef +GetDamageInfo__10CGunWeaponFR13CStateManagerQ212CPlayerState12EChargeStagef: +/* 801BB73C 001B869C 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801BB740 001B86A0 7C 08 02 A6 */ mflr r0 +/* 801BB744 001B86A4 90 01 00 54 */ stw r0, 0x54(r1) +/* 801BB748 001B86A8 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 801BB74C 001B86AC F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 801BB750 001B86B0 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801BB754 001B86B4 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801BB758 001B86B8 93 A1 00 34 */ stw r29, 0x34(r1) +/* 801BB75C 001B86BC FF E0 08 90 */ fmr f31, f1 +/* 801BB760 001B86C0 7C 7D 1B 78 */ mr r29, r3 +/* 801BB764 001B86C4 7C BE 2B 78 */ mr r30, r5 +/* 801BB768 001B86C8 7C DF 33 78 */ mr r31, r6 +/* 801BB76C 001B86CC 7C 83 23 78 */ mr r3, r4 +/* 801BB770 001B86D0 48 00 15 25 */ bl GetWeaponInfo__10CGunWeaponCFv +/* 801BB774 001B86D4 2C 1F 00 00 */ cmpwi r31, 0 +/* 801BB778 001B86D8 7C 67 1B 78 */ mr r7, r3 +/* 801BB77C 001B86DC 40 82 00 18 */ bne lbl_801BB794 +/* 801BB780 001B86E0 7F A3 EB 78 */ mr r3, r29 +/* 801BB784 001B86E4 7F C5 F3 78 */ mr r5, r30 +/* 801BB788 001B86E8 38 87 00 04 */ addi r4, r7, 4 +/* 801BB78C 001B86EC 48 0C F2 99 */ bl GetShotDamageInfo__10CGunWeaponCFRC10SShotParamR13CStateManager +/* 801BB790 001B86F0 48 00 00 68 */ b lbl_801BB7F8 +lbl_801BB794: +/* 801BB794 001B86F4 C0 47 00 34 */ lfs f2, 0x34(r7) +/* 801BB798 001B86F8 38 80 00 00 */ li r4, 0 +/* 801BB79C 001B86FC C0 27 00 30 */ lfs f1, 0x30(r7) +/* 801BB7A0 001B8700 7F A3 EB 78 */ mr r3, r29 +/* 801BB7A4 001B8704 C0 07 00 28 */ lfs f0, 0x28(r7) +/* 801BB7A8 001B8708 EC 5F 00 B2 */ fmuls f2, f31, f2 +/* 801BB7AC 001B870C 80 A7 00 20 */ lwz r5, 0x20(r7) +/* 801BB7B0 001B8710 EC 3F 00 72 */ fmuls f1, f31, f1 +/* 801BB7B4 001B8714 88 01 00 20 */ lbz r0, 0x20(r1) +/* 801BB7B8 001B8718 EC 1F 00 32 */ fmuls f0, f31, f0 +/* 801BB7BC 001B871C 90 A1 00 08 */ stw r5, 8(r1) +/* 801BB7C0 001B8720 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801BB7C4 001B8724 7F C5 F3 78 */ mr r5, r30 +/* 801BB7C8 001B8728 88 C7 00 24 */ lbz r6, 0x24(r7) +/* 801BB7CC 001B872C 38 81 00 08 */ addi r4, r1, 8 +/* 801BB7D0 001B8730 98 C1 00 0C */ stb r6, 0xc(r1) +/* 801BB7D4 001B8734 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801BB7D8 001B8738 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801BB7DC 001B873C D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801BB7E0 001B8740 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 801BB7E4 001B8744 98 01 00 20 */ stb r0, 0x20(r1) +/* 801BB7E8 001B8748 C0 07 00 2C */ lfs f0, 0x2c(r7) +/* 801BB7EC 001B874C EC 1F 00 32 */ fmuls f0, f31, f0 +/* 801BB7F0 001B8750 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801BB7F4 001B8754 48 0C F2 31 */ bl GetShotDamageInfo__10CGunWeaponCFRC10SShotParamR13CStateManager +lbl_801BB7F8: +/* 801BB7F8 001B8758 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 801BB7FC 001B875C 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801BB800 001B8760 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 801BB804 001B8764 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801BB808 001B8768 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801BB80C 001B876C 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 801BB810 001B8770 7C 08 03 A6 */ mtlr r0 +/* 801BB814 001B8774 38 21 00 50 */ addi r1, r1, 0x50 +/* 801BB818 001B8778 4E 80 00 20 */ blr + +.global EnterFidget__10CGunWeaponFR13CStateManagerQ28SamusGun11EFidgetTypei +EnterFidget__10CGunWeaponFR13CStateManagerQ28SamusGun11EFidgetTypei: +/* 801BB81C 001B877C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801BB820 001B8780 7C 08 02 A6 */ mflr r0 +/* 801BB824 001B8784 7C 68 1B 78 */ mr r8, r3 +/* 801BB828 001B8788 7C C7 33 78 */ mr r7, r6 +/* 801BB82C 001B878C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801BB830 001B8790 80 63 01 00 */ lwz r3, 0x100(r3) +/* 801BB834 001B8794 80 C8 02 00 */ lwz r6, 0x200(r8) +/* 801BB838 001B8798 48 01 12 C9 */ bl EnterFidget__14CGunControllerFR13CStateManageriii +/* 801BB83C 001B879C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801BB840 001B87A0 7C 08 03 A6 */ mtlr r0 +/* 801BB844 001B87A4 38 21 00 10 */ addi r1, r1, 0x10 +/* 801BB848 001B87A8 4E 80 00 20 */ blr + +.global ComboFireOver__10CGunWeaponCFv +ComboFireOver__10CGunWeaponCFv: +/* 801BB84C 001B87AC 80 63 01 00 */ lwz r3, 0x100(r3) +/* 801BB850 001B87B0 88 03 00 2C */ lbz r0, 0x2c(r3) +/* 801BB854 001B87B4 54 03 CF FE */ rlwinm r3, r0, 0x19, 0x1f, 0x1f +/* 801BB858 001B87B8 4E 80 00 20 */ blr + +.global ReturnToDefault__10CGunWeaponFR13CStateManager +ReturnToDefault__10CGunWeaponFR13CStateManager: +/* 801BB85C 001B87BC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801BB860 001B87C0 7C 08 02 A6 */ mflr r0 +/* 801BB864 001B87C4 C0 22 A9 DC */ lfs f1, lbl_805AC6FC@sda21(r2) +/* 801BB868 001B87C8 38 A0 00 00 */ li r5, 0 +/* 801BB86C 001B87CC 90 01 00 14 */ stw r0, 0x14(r1) +/* 801BB870 001B87D0 80 63 01 00 */ lwz r3, 0x100(r3) +/* 801BB874 001B87D4 48 01 0A 85 */ bl ReturnToDefault__14CGunControllerFR13CStateManagerf +/* 801BB878 001B87D8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801BB87C 001B87DC 7C 08 03 A6 */ mtlr r0 +/* 801BB880 001B87E0 38 21 00 10 */ addi r1, r1, 0x10 +/* 801BB884 001B87E4 4E 80 00 20 */ blr + +.global Fire__10CGunWeaponFbfQ212CPlayerState12EChargeStageRC12CTransform4fR13CStateManager9TUniqueId +Fire__10CGunWeaponFbfQ212CPlayerState12EChargeStageRC12CTransform4fR13CStateManager9TUniqueId: +/* 801BB888 001B87E8 94 21 FE E0 */ stwu r1, -0x120(r1) +/* 801BB88C 001B87EC 7C 08 02 A6 */ mflr r0 +/* 801BB890 001B87F0 90 01 01 24 */ stw r0, 0x124(r1) +/* 801BB894 001B87F4 DB E1 01 10 */ stfd f31, 0x110(r1) +/* 801BB898 001B87F8 F3 E1 01 18 */ psq_st f31, 280(r1), 0, qr0 +/* 801BB89C 001B87FC DB C1 01 00 */ stfd f30, 0x100(r1) +/* 801BB8A0 001B8800 F3 C1 01 08 */ psq_st f30, 264(r1), 0, qr0 +/* 801BB8A4 001B8804 DB A1 00 F0 */ stfd f29, 0xf0(r1) +/* 801BB8A8 001B8808 F3 A1 00 F8 */ psq_st f29, 248(r1), 0, qr0 +/* 801BB8AC 001B880C BE C1 00 C8 */ stmw r22, 0xc8(r1) +/* 801BB8B0 001B8810 FF A0 10 90 */ fmr f29, f2 +/* 801BB8B4 001B8814 7C 77 1B 78 */ mr r23, r3 +/* 801BB8B8 001B8818 FF E0 08 90 */ fmr f31, f1 +/* 801BB8BC 001B881C 7C 98 23 78 */ mr r24, r4 +/* 801BB8C0 001B8820 FF C0 18 90 */ fmr f30, f3 +/* 801BB8C4 001B8824 7C B9 2B 78 */ mr r25, r5 +/* 801BB8C8 001B8828 7C FB 3B 78 */ mr r27, r7 +/* 801BB8CC 001B882C FC 20 E8 90 */ fmr f1, f29 +/* 801BB8D0 001B8830 7C DA 33 78 */ mr r26, r6 +/* 801BB8D4 001B8834 7D 1C 43 78 */ mr r28, r8 +/* 801BB8D8 001B8838 7E E4 BB 78 */ mr r4, r23 +/* 801BB8DC 001B883C 7F 65 DB 78 */ mr r5, r27 +/* 801BB8E0 001B8840 7F 26 CB 78 */ mr r6, r25 +/* 801BB8E4 001B8844 38 61 00 64 */ addi r3, r1, 0x64 +/* 801BB8E8 001B8848 4B FF FE 55 */ bl GetDamageInfo__10CGunWeaponFR13CStateManagerQ212CPlayerState12EChargeStagef +/* 801BB8EC 001B884C 80 81 00 64 */ lwz r4, 0x64(r1) +/* 801BB8F0 001B8850 2C 19 00 00 */ cmpwi r25, 0 +/* 801BB8F4 001B8854 88 61 00 68 */ lbz r3, 0x68(r1) +/* 801BB8F8 001B8858 C0 61 00 6C */ lfs f3, 0x6c(r1) +/* 801BB8FC 001B885C C0 41 00 70 */ lfs f2, 0x70(r1) +/* 801BB900 001B8860 C0 21 00 74 */ lfs f1, 0x74(r1) +/* 801BB904 001B8864 C0 01 00 78 */ lfs f0, 0x78(r1) +/* 801BB908 001B8868 88 01 00 7C */ lbz r0, 0x7c(r1) +/* 801BB90C 001B886C 90 81 00 80 */ stw r4, 0x80(r1) +/* 801BB910 001B8870 98 61 00 84 */ stb r3, 0x84(r1) +/* 801BB914 001B8874 D0 61 00 88 */ stfs f3, 0x88(r1) +/* 801BB918 001B8878 D0 41 00 8C */ stfs f2, 0x8c(r1) +/* 801BB91C 001B887C D0 21 00 90 */ stfs f1, 0x90(r1) +/* 801BB920 001B8880 D0 01 00 94 */ stfs f0, 0x94(r1) +/* 801BB924 001B8884 98 01 00 98 */ stb r0, 0x98(r1) +/* 801BB928 001B8888 40 82 00 0C */ bne lbl_801BB934 +/* 801BB92C 001B888C C0 22 A9 D8 */ lfs f1, lbl_805AC6F8@sda21(r2) +/* 801BB930 001B8890 48 00 00 08 */ b lbl_801BB938 +lbl_801BB934: +/* 801BB934 001B8894 FC 20 F0 90 */ fmr f1, f30 +lbl_801BB938: +/* 801BB938 001B8898 C0 02 A9 D8 */ lfs f0, lbl_805AC6F8@sda21(r2) +/* 801BB93C 001B889C 2C 19 00 00 */ cmpwi r25, 0 +/* 801BB940 001B88A0 EC 61 00 32 */ fmuls f3, f1, f0 +/* 801BB944 001B88A4 40 82 00 08 */ bne lbl_801BB94C +/* 801BB948 001B88A8 48 00 00 08 */ b lbl_801BB950 +lbl_801BB94C: +/* 801BB94C 001B88AC FC 00 F0 90 */ fmr f0, f30 +lbl_801BB950: +/* 801BB950 001B88B0 C0 82 A9 D8 */ lfs f4, lbl_805AC6F8@sda21(r2) +/* 801BB954 001B88B4 2C 19 00 00 */ cmpwi r25, 0 +/* 801BB958 001B88B8 EC 40 01 32 */ fmuls f2, f0, f4 +/* 801BB95C 001B88BC 40 82 00 08 */ bne lbl_801BB964 +/* 801BB960 001B88C0 48 00 00 08 */ b lbl_801BB968 +lbl_801BB964: +/* 801BB964 001B88C4 FC 80 F0 90 */ fmr f4, f30 +lbl_801BB968: +/* 801BB968 001B88C8 C0 22 A9 D8 */ lfs f1, lbl_805AC6F8@sda21(r2) +/* 801BB96C 001B88CC 2C 19 00 00 */ cmpwi r25, 0 +/* 801BB970 001B88D0 D0 61 00 58 */ stfs f3, 0x58(r1) +/* 801BB974 001B88D4 EC 04 00 72 */ fmuls f0, f4, f1 +/* 801BB978 001B88D8 D0 41 00 5C */ stfs f2, 0x5c(r1) +/* 801BB97C 001B88DC D0 01 00 60 */ stfs f0, 0x60(r1) +/* 801BB980 001B88E0 40 82 00 0C */ bne lbl_801BB98C +/* 801BB984 001B88E4 38 00 00 00 */ li r0, 0 +/* 801BB988 001B88E8 48 00 00 24 */ b lbl_801BB9AC +lbl_801BB98C: +/* 801BB98C 001B88EC EC 3D 08 28 */ fsubs f1, f29, f1 +/* 801BB990 001B88F0 C8 02 A9 E0 */ lfd f0, lbl_805AC700@sda21(r2) +/* 801BB994 001B88F4 FC 20 0A 10 */ fabs f1, f1 +/* 801BB998 001B88F8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801BB99C 001B88FC 7C 00 00 26 */ mfcr r0 +/* 801BB9A0 001B8900 54 00 0F FE */ srwi r0, r0, 0x1f +/* 801BB9A4 001B8904 7C 00 00 34 */ cntlzw r0, r0 +/* 801BB9A8 001B8908 54 00 D9 7E */ srwi r0, r0, 5 +lbl_801BB9AC: +/* 801BB9AC 001B890C 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 801BB9B0 001B8910 38 A0 00 00 */ li r5, 0 +/* 801BB9B4 001B8914 41 82 00 08 */ beq lbl_801BB9BC +/* 801BB9B8 001B8918 3C A0 00 01 */ lis r5, 1 +lbl_801BB9BC: +/* 801BB9BC 001B891C 2C 19 00 00 */ cmpwi r25, 0 +/* 801BB9C0 001B8920 38 80 08 00 */ li r4, 0x800 +/* 801BB9C4 001B8924 41 82 00 08 */ beq lbl_801BB9CC +/* 801BB9C8 001B8928 38 80 08 04 */ li r4, 0x804 +lbl_801BB9CC: +/* 801BB9CC 001B892C 1C 19 00 0C */ mulli r0, r25, 0xc +/* 801BB9D0 001B8930 3C 60 80 3D */ lis r3, lbl_803D1828@ha +/* 801BB9D4 001B8934 7C 9D 2B 78 */ or r29, r4, r5 +/* 801BB9D8 001B8938 38 63 18 28 */ addi r3, r3, lbl_803D1828@l +/* 801BB9DC 001B893C 7F F7 02 14 */ add r31, r23, r0 +/* 801BB9E0 001B8940 3A C0 00 00 */ li r22, 0 +/* 801BB9E4 001B8944 38 83 01 B5 */ addi r4, r3, 0x1b5 +/* 801BB9E8 001B8948 38 60 03 D8 */ li r3, 0x3d8 +/* 801BB9EC 001B894C 38 A0 00 00 */ li r5, 0 +/* 801BB9F0 001B8950 3B FF 01 48 */ addi r31, r31, 0x148 +/* 801BB9F4 001B8954 48 15 9E 79 */ bl __nw__FUlPCcPCc +/* 801BB9F8 001B8958 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801BB9FC 001B895C 41 82 00 A8 */ beq lbl_801BBAA4 +/* 801BBA00 001B8960 A0 BC 00 00 */ lhz r5, 0(r28) +/* 801BBA04 001B8964 38 00 00 00 */ li r0, 0 +/* 801BBA08 001B8968 98 01 00 54 */ stb r0, 0x54(r1) +/* 801BBA0C 001B896C 7F 64 DB 78 */ mr r4, r27 +/* 801BBA10 001B8970 80 0D A3 90 */ lwz r0, lbl_805A8F50@sda21(r13) +/* 801BBA14 001B8974 38 61 00 30 */ addi r3, r1, 0x30 +/* 801BBA18 001B8978 B0 A1 00 40 */ sth r5, 0x40(r1) +/* 801BBA1C 001B897C 3A C0 00 01 */ li r22, 1 +/* 801BBA20 001B8980 A0 B7 01 C4 */ lhz r5, 0x1c4(r23) +/* 801BBA24 001B8984 B0 A1 00 38 */ sth r5, 0x38(r1) +/* 801BBA28 001B8988 B0 A1 00 3C */ sth r5, 0x3c(r1) +/* 801BBA2C 001B898C 90 01 00 44 */ stw r0, 0x44(r1) +/* 801BBA30 001B8990 4B E9 16 AD */ bl AllocateUniqueId__13CStateManagerFv +/* 801BBA34 001B8994 A0 61 00 30 */ lhz r3, 0x30(r1) +/* 801BBA38 001B8998 38 01 00 44 */ addi r0, r1, 0x44 +/* 801BBA3C 001B899C 38 E1 00 3C */ addi r7, r1, 0x3c +/* 801BBA40 001B89A0 38 81 00 40 */ addi r4, r1, 0x40 +/* 801BBA44 001B89A4 B0 61 00 34 */ sth r3, 0x34(r1) +/* 801BBA48 001B89A8 39 61 00 58 */ addi r11, r1, 0x58 +/* 801BBA4C 001B89AC 39 01 00 48 */ addi r8, r1, 0x48 +/* 801BBA50 001B89B0 A0 C2 C5 FC */ lhz r6, lbl_805AE31C@sda21(r2) +/* 801BBA54 001B89B4 90 01 00 08 */ stw r0, 8(r1) +/* 801BBA58 001B89B8 38 00 00 00 */ li r0, 0 +/* 801BBA5C 001B89BC 7F C3 F3 78 */ mr r3, r30 +/* 801BBA60 001B89C0 7F E5 FB 78 */ mr r5, r31 +/* 801BBA64 001B89C4 90 E1 00 0C */ stw r7, 0xc(r1) +/* 801BBA68 001B89C8 7F 47 D3 78 */ mr r7, r26 +/* 801BBA6C 001B89CC 39 21 00 80 */ addi r9, r1, 0x80 +/* 801BBA70 001B89D0 39 41 00 34 */ addi r10, r1, 0x34 +/* 801BBA74 001B89D4 90 81 00 10 */ stw r4, 0x10(r1) +/* 801BBA78 001B89D8 38 80 00 01 */ li r4, 1 +/* 801BBA7C 001B89DC 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801BBA80 001B89E0 93 01 00 18 */ stw r24, 0x18(r1) +/* 801BBA84 001B89E4 91 61 00 1C */ stw r11, 0x1c(r1) +/* 801BBA88 001B89E8 91 01 00 20 */ stw r8, 0x20(r1) +/* 801BBA8C 001B89EC 90 C1 00 24 */ stw r6, 0x24(r1) +/* 801BBA90 001B89F0 90 01 00 28 */ stw r0, 0x28(r1) +/* 801BBA94 001B89F4 80 D7 01 C0 */ lwz r6, 0x1c0(r23) +/* 801BBA98 001B89F8 81 17 01 C8 */ lwz r8, 0x1c8(r23) +/* 801BBA9C 001B89FC 48 05 9B FD */ bl "__ct__17CEnergyProjectileFbRC28TToken<18CWeaponDescription>11EWeaponTypeRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId7TAreaId9TUniqueId9TUniqueIdUibRC9CVector3fRCQ24rstl50optional_object<31TLockedToken<15CGenDescription>>sb" +/* 801BBAA0 001B8A00 7C 7E 1B 78 */ mr r30, r3 +lbl_801BBAA4: +/* 801BBAA4 001B8A04 7E C0 07 75 */ extsb. r0, r22 +/* 801BBAA8 001B8A08 41 82 00 30 */ beq lbl_801BBAD8 +/* 801BBAAC 001B8A0C 88 01 00 54 */ lbz r0, 0x54(r1) +/* 801BBAB0 001B8A10 28 00 00 00 */ cmplwi r0, 0 +/* 801BBAB4 001B8A14 41 82 00 1C */ beq lbl_801BBAD0 +/* 801BBAB8 001B8A18 34 61 00 48 */ addic. r3, r1, 0x48 +/* 801BBABC 001B8A1C 41 82 00 14 */ beq lbl_801BBAD0 +/* 801BBAC0 001B8A20 28 03 00 00 */ cmplwi r3, 0 +/* 801BBAC4 001B8A24 41 82 00 0C */ beq lbl_801BBAD0 +/* 801BBAC8 001B8A28 38 80 00 00 */ li r4, 0 +/* 801BBACC 001B8A2C 48 18 53 75 */ bl __dt__6CTokenFv +lbl_801BBAD0: +/* 801BBAD0 001B8A30 38 00 00 00 */ li r0, 0 +/* 801BBAD4 001B8A34 98 01 00 54 */ stb r0, 0x54(r1) +lbl_801BBAD8: +/* 801BBAD8 001B8A38 28 1E 00 00 */ cmplwi r30, 0 +/* 801BBADC 001B8A3C 41 82 00 2C */ beq lbl_801BBB08 +/* 801BBAE0 001B8A40 7F 63 DB 78 */ mr r3, r27 +/* 801BBAE4 001B8A44 7F C4 F3 78 */ mr r4, r30 +/* 801BBAE8 001B8A48 4B E9 12 0D */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +/* 801BBAEC 001B8A4C 7F C3 F3 78 */ mr r3, r30 +/* 801BBAF0 001B8A50 FC 20 F8 90 */ fmr f1, f31 +/* 801BBAF4 001B8A54 81 9E 00 00 */ lwz r12, 0(r30) +/* 801BBAF8 001B8A58 7F 64 DB 78 */ mr r4, r27 +/* 801BBAFC 001B8A5C 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 801BBB00 001B8A60 7D 89 03 A6 */ mtctr r12 +/* 801BBB04 001B8A64 4E 80 04 21 */ bctrl +lbl_801BBB08: +/* 801BBB08 001B8A68 2C 19 00 00 */ cmpwi r25, 0 +/* 801BBB0C 001B8A6C 41 82 00 28 */ beq lbl_801BBB34 +/* 801BBB10 001B8A70 88 17 02 18 */ lbz r0, 0x218(r23) +/* 801BBB14 001B8A74 38 60 00 01 */ li r3, 1 +/* 801BBB18 001B8A78 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801BBB1C 001B8A7C 38 A0 00 00 */ li r5, 0 +/* 801BBB20 001B8A80 98 17 02 18 */ stb r0, 0x218(r23) +/* 801BBB24 001B8A84 3C 60 80 57 */ lis r3, lbl_805719E8@ha +/* 801BBB28 001B8A88 38 83 19 E8 */ addi r4, r3, lbl_805719E8@l +/* 801BBB2C 001B8A8C 80 7B 08 70 */ lwz r3, 0x870(r27) +/* 801BBB30 001B8A90 4B E4 EE F1 */ bl AddCameraShaker__14CCameraManagerFRC16CCameraShakeDatab +lbl_801BBB34: +/* 801BBB34 001B8A94 80 77 00 20 */ lwz r3, 0x20(r23) +/* 801BBB38 001B8A98 39 20 00 00 */ li r9, 0 +/* 801BBB3C 001B8A9C 39 00 00 01 */ li r8, 1 +/* 801BBB40 001B8AA0 57 25 10 3A */ slwi r5, r25, 2 +/* 801BBB44 001B8AA4 88 03 02 20 */ lbz r0, 0x220(r3) +/* 801BBB48 001B8AA8 51 20 36 72 */ rlwimi r0, r9, 6, 0x19, 0x19 +/* 801BBB4C 001B8AAC 38 82 A9 D0 */ addi r4, r2, lbl_805AC6F0@sda21 +/* 801BBB50 001B8AB0 C0 02 A9 D8 */ lfs f0, lbl_805AC6F8@sda21(r2) +/* 801BBB54 001B8AB4 98 03 02 20 */ stb r0, 0x220(r3) +/* 801BBB58 001B8AB8 38 00 FF FF */ li r0, -1 +/* 801BBB5C 001B8ABC 7C C4 28 2E */ lwzx r6, r4, r5 +/* 801BBB60 001B8AC0 38 81 00 9C */ addi r4, r1, 0x9c +/* 801BBB64 001B8AC4 88 E3 02 20 */ lbz r7, 0x220(r3) +/* 801BBB68 001B8AC8 51 07 3E 30 */ rlwimi r7, r8, 7, 0x18, 0x18 +/* 801BBB6C 001B8ACC 38 A0 00 00 */ li r5, 0 +/* 801BBB70 001B8AD0 98 E3 02 20 */ stb r7, 0x220(r3) +/* 801BBB74 001B8AD4 90 C1 00 9C */ stw r6, 0x9c(r1) +/* 801BBB78 001B8AD8 90 01 00 A0 */ stw r0, 0xa0(r1) +/* 801BBB7C 001B8ADC D0 01 00 A4 */ stfs f0, 0xa4(r1) +/* 801BBB80 001B8AE0 99 01 00 A8 */ stb r8, 0xa8(r1) +/* 801BBB84 001B8AE4 91 21 00 AC */ stw r9, 0xac(r1) +/* 801BBB88 001B8AE8 91 21 00 B0 */ stw r9, 0xb0(r1) +/* 801BBB8C 001B8AEC 99 21 00 B4 */ stb r9, 0xb4(r1) +/* 801BBB90 001B8AF0 91 21 00 B8 */ stw r9, 0xb8(r1) +/* 801BBB94 001B8AF4 91 21 00 BC */ stw r9, 0xbc(r1) +/* 801BBB98 001B8AF8 91 21 00 C0 */ stw r9, 0xc0(r1) +/* 801BBB9C 001B8AFC 4B E7 11 E1 */ bl SetAnimation__9CAnimDataFRC18CAnimPlaybackParmsb +/* 801BBBA0 001B8B00 E3 E1 01 18 */ psq_l f31, 280(r1), 0, qr0 +/* 801BBBA4 001B8B04 CB E1 01 10 */ lfd f31, 0x110(r1) +/* 801BBBA8 001B8B08 E3 C1 01 08 */ psq_l f30, 264(r1), 0, qr0 +/* 801BBBAC 001B8B0C CB C1 01 00 */ lfd f30, 0x100(r1) +/* 801BBBB0 001B8B10 E3 A1 00 F8 */ psq_l f29, 248(r1), 0, qr0 +/* 801BBBB4 001B8B14 CB A1 00 F0 */ lfd f29, 0xf0(r1) +/* 801BBBB8 001B8B18 BA C1 00 C8 */ lmw r22, 0xc8(r1) +/* 801BBBBC 001B8B1C 80 01 01 24 */ lwz r0, 0x124(r1) +/* 801BBBC0 001B8B20 7C 08 03 A6 */ mtlr r0 +/* 801BBBC4 001B8B24 38 21 01 20 */ addi r1, r1, 0x120 +/* 801BBBC8 001B8B28 4E 80 00 20 */ blr + +.global DrawHologram__10CGunWeaponCFRC13CStateManagerRC12CTransform4fRC11CModelFlags +DrawHologram__10CGunWeaponCFRC13CStateManagerRC12CTransform4fRC11CModelFlags: +/* 801BBBCC 001B8B2C 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 801BBBD0 001B8B30 7C 08 02 A6 */ mflr r0 +/* 801BBBD4 001B8B34 90 01 01 04 */ stw r0, 0x104(r1) +/* 801BBBD8 001B8B38 93 E1 00 FC */ stw r31, 0xfc(r1) +/* 801BBBDC 001B8B3C 7C DF 33 78 */ mr r31, r6 +/* 801BBBE0 001B8B40 93 C1 00 F8 */ stw r30, 0xf8(r1) +/* 801BBBE4 001B8B44 7C 7E 1B 78 */ mr r30, r3 +/* 801BBBE8 001B8B48 88 63 02 18 */ lbz r3, 0x218(r3) +/* 801BBBEC 001B8B4C 54 60 DF FF */ rlwinm. r0, r3, 0x1b, 0x1f, 0x1f +/* 801BBBF0 001B8B50 41 82 01 00 */ beq lbl_801BBCF0 +/* 801BBBF4 001B8B54 54 60 F7 FF */ rlwinm. r0, r3, 0x1e, 0x1f, 0x1f +/* 801BBBF8 001B8B58 41 82 00 1C */ beq lbl_801BBC14 +/* 801BBBFC 001B8B5C 7F E7 FB 78 */ mr r7, r31 +/* 801BBC00 001B8B60 38 7E 00 60 */ addi r3, r30, 0x60 +/* 801BBC04 001B8B64 38 80 00 00 */ li r4, 0 +/* 801BBC08 001B8B68 38 C0 00 00 */ li r6, 0 +/* 801BBC0C 001B8B6C 4B F5 A3 B9 */ bl FlatDraw__10CModelDataF11EWhichModelRC12CTransform4fbRC11CModelFlags +/* 801BBC10 001B8B70 48 00 00 E0 */ b lbl_801BBCF0 +lbl_801BBC14: +/* 801BBC14 001B8B74 C0 5E 00 10 */ lfs f2, 0x10(r30) +/* 801BBC18 001B8B78 7C A4 2B 78 */ mr r4, r5 +/* 801BBC1C 001B8B7C C0 3E 00 14 */ lfs f1, 0x14(r30) +/* 801BBC20 001B8B80 38 61 00 74 */ addi r3, r1, 0x74 +/* 801BBC24 001B8B84 C0 1E 00 18 */ lfs f0, 0x18(r30) +/* 801BBC28 001B8B88 D0 41 00 08 */ stfs f2, 8(r1) +/* 801BBC2C 001B8B8C D0 21 00 0C */ stfs f1, 0xc(r1) +/* 801BBC30 001B8B90 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801BBC34 001B8B94 48 15 6F 41 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801BBC38 001B8B98 C0 21 00 08 */ lfs f1, 8(r1) +/* 801BBC3C 001B8B9C 38 61 00 44 */ addi r3, r1, 0x44 +/* 801BBC40 001B8BA0 C0 41 00 0C */ lfs f2, 0xc(r1) +/* 801BBC44 001B8BA4 C0 61 00 10 */ lfs f3, 0x10(r1) +/* 801BBC48 001B8BA8 48 15 75 C1 */ bl Scale__12CTransform4fFfff +/* 801BBC4C 001B8BAC 38 61 00 14 */ addi r3, r1, 0x14 +/* 801BBC50 001B8BB0 38 81 00 74 */ addi r4, r1, 0x74 +/* 801BBC54 001B8BB4 38 A1 00 44 */ addi r5, r1, 0x44 +/* 801BBC58 001B8BB8 48 15 6C F9 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 801BBC5C 001B8BBC 38 61 00 74 */ addi r3, r1, 0x74 +/* 801BBC60 001B8BC0 38 81 00 14 */ addi r4, r1, 0x14 +/* 801BBC64 001B8BC4 48 15 6E DD */ bl __as__12CTransform4fFRC12CTransform4f +/* 801BBC68 001B8BC8 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801BBC6C 001B8BCC 38 81 00 74 */ addi r4, r1, 0x74 +/* 801BBC70 001B8BD0 81 83 00 00 */ lwz r12, 0(r3) +/* 801BBC74 001B8BD4 81 8C 00 30 */ lwz r12, 0x30(r12) +/* 801BBC78 001B8BD8 7D 89 03 A6 */ mtctr r12 +/* 801BBC7C 001B8BDC 4E 80 04 21 */ bctrl +/* 801BBC80 001B8BE0 48 15 0C FD */ bl DisableAllLights__9CGraphicsFv +/* 801BBC84 001B8BE4 48 18 E3 29 */ bl White__6CColorFv +/* 801BBC88 001B8BE8 7C 64 1B 78 */ mr r4, r3 +/* 801BBC8C 001B8BEC 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801BBC90 001B8BF0 81 83 00 00 */ lwz r12, 0(r3) +/* 801BBC94 001B8BF4 81 8C 00 BC */ lwz r12, 0xbc(r12) +/* 801BBC98 001B8BF8 7D 89 03 A6 */ mtctr r12 +/* 801BBC9C 001B8BFC 4E 80 04 21 */ bctrl +/* 801BBCA0 001B8C00 38 00 00 00 */ li r0, 0 +/* 801BBCA4 001B8C04 80 9E 00 70 */ lwz r4, 0x70(r30) +/* 801BBCA8 001B8C08 98 01 00 EC */ stb r0, 0xec(r1) +/* 801BBCAC 001B8C0C 7F E5 FB 78 */ mr r5, r31 +/* 801BBCB0 001B8C10 80 7E 00 20 */ lwz r3, 0x20(r30) +/* 801BBCB4 001B8C14 38 C1 00 A4 */ addi r6, r1, 0xa4 +/* 801BBCB8 001B8C18 80 84 00 E0 */ lwz r4, 0xe0(r4) +/* 801BBCBC 001B8C1C 38 E0 00 00 */ li r7, 0 +/* 801BBCC0 001B8C20 4B E7 0C 5D */ bl "Render__9CAnimDataCFRC13CSkinnedModelRC11CModelFlagsRCQ24rstl37optional_object<18CVertexMorphEffect>PCf" +/* 801BBCC4 001B8C24 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 801BBCC8 001B8C28 38 80 FF FF */ li r4, -1 +/* 801BBCCC 001B8C2C 4B EB BF C1 */ bl sub_80077c8c +/* 801BBCD0 001B8C30 48 18 E2 DD */ bl White__6CColorFv +/* 801BBCD4 001B8C34 7C 64 1B 78 */ mr r4, r3 +/* 801BBCD8 001B8C38 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801BBCDC 001B8C3C 81 83 00 00 */ lwz r12, 0(r3) +/* 801BBCE0 001B8C40 81 8C 00 BC */ lwz r12, 0xbc(r12) +/* 801BBCE4 001B8C44 7D 89 03 A6 */ mtctr r12 +/* 801BBCE8 001B8C48 4E 80 04 21 */ bctrl +/* 801BBCEC 001B8C4C 48 15 0C 91 */ bl DisableAllLights__9CGraphicsFv +lbl_801BBCF0: +/* 801BBCF0 001B8C50 80 01 01 04 */ lwz r0, 0x104(r1) +/* 801BBCF4 001B8C54 83 E1 00 FC */ lwz r31, 0xfc(r1) +/* 801BBCF8 001B8C58 83 C1 00 F8 */ lwz r30, 0xf8(r1) +/* 801BBCFC 001B8C5C 7C 08 03 A6 */ mtlr r0 +/* 801BBD00 001B8C60 38 21 01 00 */ addi r1, r1, 0x100 +/* 801BBD04 001B8C64 4E 80 00 20 */ blr + +.global Draw__10CGunWeaponCFbRC13CStateManagerRC12CTransform4fRC11CModelFlagsPC12CActorLights +Draw__10CGunWeaponCFbRC13CStateManagerRC12CTransform4fRC11CModelFlagsPC12CActorLights: +/* 801BBD08 001B8C68 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 801BBD0C 001B8C6C 7C 08 02 A6 */ mflr r0 +/* 801BBD10 001B8C70 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 801BBD14 001B8C74 BF 41 00 C8 */ stmw r26, 0xc8(r1) +/* 801BBD18 001B8C78 7C 7A 1B 78 */ mr r26, r3 +/* 801BBD1C 001B8C7C 7C 9B 23 78 */ mr r27, r4 +/* 801BBD20 001B8C80 7C BC 2B 78 */ mr r28, r5 +/* 801BBD24 001B8C84 7C DD 33 78 */ mr r29, r6 +/* 801BBD28 001B8C88 7C FE 3B 78 */ mr r30, r7 +/* 801BBD2C 001B8C8C 7D 1F 43 78 */ mr r31, r8 +/* 801BBD30 001B8C90 88 03 02 18 */ lbz r0, 0x218(r3) +/* 801BBD34 001B8C94 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801BBD38 001B8C98 41 82 02 3C */ beq lbl_801BBF74 +/* 801BBD3C 001B8C9C 80 82 A9 CC */ lwz r4, lbl_805AC6EC@sda21(r2) +/* 801BBD40 001B8CA0 38 61 00 28 */ addi r3, r1, 0x28 +/* 801BBD44 001B8CA4 4B E4 8F 75 */ bl string_l__4rstlFPCc +/* 801BBD48 001B8CA8 38 61 00 38 */ addi r3, r1, 0x38 +/* 801BBD4C 001B8CAC 38 9A 00 10 */ addi r4, r26, 0x10 +/* 801BBD50 001B8CB0 38 A1 00 28 */ addi r5, r1, 0x28 +/* 801BBD54 001B8CB4 4B F5 9C 4D */ bl "GetScaledLocatorTransform__10CModelDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801BBD58 001B8CB8 7F A4 EB 78 */ mr r4, r29 +/* 801BBD5C 001B8CBC 38 61 00 68 */ addi r3, r1, 0x68 +/* 801BBD60 001B8CC0 38 A1 00 38 */ addi r5, r1, 0x38 +/* 801BBD64 001B8CC4 48 15 6B ED */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 801BBD68 001B8CC8 38 61 00 98 */ addi r3, r1, 0x98 +/* 801BBD6C 001B8CCC 38 81 00 68 */ addi r4, r1, 0x68 +/* 801BBD70 001B8CD0 48 15 6E 05 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801BBD74 001B8CD4 38 61 00 28 */ addi r3, r1, 0x28 +/* 801BBD78 001B8CD8 48 18 1D 69 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801BBD7C 001B8CDC 80 7A 01 BC */ lwz r3, 0x1bc(r26) +/* 801BBD80 001B8CE0 28 03 00 00 */ cmplwi r3, 0 +/* 801BBD84 001B8CE4 41 82 00 1C */ beq lbl_801BBDA0 +/* 801BBD88 001B8CE8 88 03 00 48 */ lbz r0, 0x48(r3) +/* 801BBD8C 001B8CEC 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801BBD90 001B8CF0 41 82 00 10 */ beq lbl_801BBDA0 +/* 801BBD94 001B8CF4 3C 80 80 1C */ lis r4, PointGenerator__10CGunWeaponFPvPC9CVector3fPC9CVector3fi@ha +/* 801BBD98 001B8CF8 38 84 A4 7C */ addi r4, r4, PointGenerator__10CGunWeaponFPvPC9CVector3fPC9CVector3fi@l +/* 801BBD9C 001B8CFC 48 19 69 79 */ bl SetPointGeneratorFunc__13CSkinnedModelFUiPFUiPC9CVector3fPC9CVector3fi_v +lbl_801BBDA0: +/* 801BBDA0 001B8D00 80 1C 0F 34 */ lwz r0, 0xf34(r28) +/* 801BBDA4 001B8D04 2C 00 00 00 */ cmpwi r0, 0 +/* 801BBDA8 001B8D08 40 82 01 08 */ bne lbl_801BBEB0 +/* 801BBDAC 001B8D0C 80 1A 02 00 */ lwz r0, 0x200(r26) +/* 801BBDB0 001B8D10 2C 00 00 01 */ cmpwi r0, 1 +/* 801BBDB4 001B8D14 41 82 00 FC */ beq lbl_801BBEB0 +/* 801BBDB8 001B8D18 E0 3E A0 07 */ psq_l f1, 7(r30), 1, qr2 +/* 801BBDBC 001B8D1C 38 61 00 0C */ addi r3, r1, 0xc +/* 801BBDC0 001B8D20 C0 02 A9 E8 */ lfs f0, lbl_805AC708@sda21(r2) +/* 801BBDC4 001B8D24 EC 20 00 72 */ fmuls f1, f0, f1 +/* 801BBDC8 001B8D28 FC 40 08 90 */ fmr f2, f1 +/* 801BBDCC 001B8D2C FC 60 08 90 */ fmr f3, f1 +/* 801BBDD0 001B8D30 FC 80 08 90 */ fmr f4, f1 +/* 801BBDD4 001B8D34 48 1A 76 19 */ bl __ct__6CColorFffff +/* 801BBDD8 001B8D38 88 1A 02 18 */ lbz r0, 0x218(r26) +/* 801BBDDC 001B8D3C 38 60 00 40 */ li r3, 0x40 +/* 801BBDE0 001B8D40 98 61 00 08 */ stb r3, 8(r1) +/* 801BBDE4 001B8D44 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 801BBDE8 001B8D48 98 61 00 09 */ stb r3, 9(r1) +/* 801BBDEC 001B8D4C 98 61 00 0A */ stb r3, 0xa(r1) +/* 801BBDF0 001B8D50 98 61 00 0B */ stb r3, 0xb(r1) +/* 801BBDF4 001B8D54 41 82 00 1C */ beq lbl_801BBE10 +/* 801BBDF8 001B8D58 7F 43 D3 78 */ mr r3, r26 +/* 801BBDFC 001B8D5C 7F 84 E3 78 */ mr r4, r28 +/* 801BBE00 001B8D60 7F A5 EB 78 */ mr r5, r29 +/* 801BBE04 001B8D64 7F C6 F3 78 */ mr r6, r30 +/* 801BBE08 001B8D68 4B FF FD C5 */ bl DrawHologram__10CGunWeaponCFRC13CStateManagerRC12CTransform4fRC11CModelFlags +/* 801BBE0C 001B8D6C 48 00 00 48 */ b lbl_801BBE54 +lbl_801BBE10: +/* 801BBE10 001B8D70 C0 22 A9 D8 */ lfs f1, lbl_805AC6F8@sda21(r2) +/* 801BBE14 001B8D74 38 80 00 00 */ li r4, 0 +/* 801BBE18 001B8D78 38 00 00 03 */ li r0, 3 +/* 801BBE1C 001B8D7C 98 81 00 20 */ stb r4, 0x20(r1) +/* 801BBE20 001B8D80 FC 40 08 90 */ fmr f2, f1 +/* 801BBE24 001B8D84 38 61 00 24 */ addi r3, r1, 0x24 +/* 801BBE28 001B8D88 FC 60 08 90 */ fmr f3, f1 +/* 801BBE2C 001B8D8C 98 81 00 21 */ stb r4, 0x21(r1) +/* 801BBE30 001B8D90 FC 80 08 90 */ fmr f4, f1 +/* 801BBE34 001B8D94 B0 01 00 22 */ sth r0, 0x22(r1) +/* 801BBE38 001B8D98 48 1A 75 B5 */ bl __ct__6CColorFffff +/* 801BBE3C 001B8D9C 7F A4 EB 78 */ mr r4, r29 +/* 801BBE40 001B8DA0 38 7A 00 10 */ addi r3, r26, 0x10 +/* 801BBE44 001B8DA4 38 A1 00 0C */ addi r5, r1, 0xc +/* 801BBE48 001B8DA8 38 C1 00 08 */ addi r6, r1, 8 +/* 801BBE4C 001B8DAC 38 E1 00 20 */ addi r7, r1, 0x20 +/* 801BBE50 001B8DB0 4B F5 A4 51 */ bl RenderThermal__10CModelDataCFRC12CTransform4fRC6CColorRC6CColorRC11CModelFlags +lbl_801BBE54: +/* 801BBE54 001B8DB4 57 60 06 3F */ clrlwi. r0, r27, 0x18 +/* 801BBE58 001B8DB8 41 82 00 F4 */ beq lbl_801BBF4C +/* 801BBE5C 001B8DBC 88 1A 00 FC */ lbz r0, 0xfc(r26) +/* 801BBE60 001B8DC0 28 00 00 00 */ cmplwi r0, 0 +/* 801BBE64 001B8DC4 41 82 00 E8 */ beq lbl_801BBF4C +/* 801BBE68 001B8DC8 C0 22 A9 D8 */ lfs f1, lbl_805AC6F8@sda21(r2) +/* 801BBE6C 001B8DCC 38 80 00 00 */ li r4, 0 +/* 801BBE70 001B8DD0 38 00 00 03 */ li r0, 3 +/* 801BBE74 001B8DD4 98 81 00 18 */ stb r4, 0x18(r1) +/* 801BBE78 001B8DD8 FC 40 08 90 */ fmr f2, f1 +/* 801BBE7C 001B8DDC 38 61 00 1C */ addi r3, r1, 0x1c +/* 801BBE80 001B8DE0 FC 60 08 90 */ fmr f3, f1 +/* 801BBE84 001B8DE4 98 81 00 19 */ stb r4, 0x19(r1) +/* 801BBE88 001B8DE8 FC 80 08 90 */ fmr f4, f1 +/* 801BBE8C 001B8DEC B0 01 00 1A */ sth r0, 0x1a(r1) +/* 801BBE90 001B8DF0 48 1A 75 5D */ bl __ct__6CColorFffff +/* 801BBE94 001B8DF4 7F A4 EB 78 */ mr r4, r29 +/* 801BBE98 001B8DF8 38 7A 00 B0 */ addi r3, r26, 0xb0 +/* 801BBE9C 001B8DFC 38 A1 00 0C */ addi r5, r1, 0xc +/* 801BBEA0 001B8E00 38 C1 00 08 */ addi r6, r1, 8 +/* 801BBEA4 001B8E04 38 E1 00 18 */ addi r7, r1, 0x18 +/* 801BBEA8 001B8E08 4B F5 A3 F9 */ bl RenderThermal__10CModelDataCFRC12CTransform4fRC6CColorRC6CColorRC11CModelFlags +/* 801BBEAC 001B8E0C 48 00 00 A0 */ b lbl_801BBF4C +lbl_801BBEB0: +/* 801BBEB0 001B8E10 80 7C 08 B8 */ lwz r3, 0x8b8(r28) +/* 801BBEB4 001B8E14 80 63 00 00 */ lwz r3, 0(r3) +/* 801BBEB8 001B8E18 80 03 00 14 */ lwz r0, 0x14(r3) +/* 801BBEBC 001B8E1C 2C 00 00 01 */ cmpwi r0, 1 +/* 801BBEC0 001B8E20 41 82 00 4C */ beq lbl_801BBF0C +/* 801BBEC4 001B8E24 88 1A 02 18 */ lbz r0, 0x218(r26) +/* 801BBEC8 001B8E28 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 801BBECC 001B8E2C 40 82 00 40 */ bne lbl_801BBF0C +/* 801BBED0 001B8E30 81 3A 02 0C */ lwz r9, 0x20c(r26) +/* 801BBED4 001B8E34 7F 84 E3 78 */ mr r4, r28 +/* 801BBED8 001B8E38 88 7E 00 00 */ lbz r3, 0(r30) +/* 801BBEDC 001B8E3C 7F A5 EB 78 */ mr r5, r29 +/* 801BBEE0 001B8E40 A1 1E 00 02 */ lhz r8, 2(r30) +/* 801BBEE4 001B8E44 7F E6 FB 78 */ mr r6, r31 +/* 801BBEE8 001B8E48 80 1E 00 04 */ lwz r0, 4(r30) +/* 801BBEEC 001B8E4C 38 E1 00 10 */ addi r7, r1, 0x10 +/* 801BBEF0 001B8E50 98 61 00 10 */ stb r3, 0x10(r1) +/* 801BBEF4 001B8E54 38 7A 00 10 */ addi r3, r26, 0x10 +/* 801BBEF8 001B8E58 99 21 00 11 */ stb r9, 0x11(r1) +/* 801BBEFC 001B8E5C B1 01 00 12 */ sth r8, 0x12(r1) +/* 801BBF00 001B8E60 90 01 00 14 */ stw r0, 0x14(r1) +/* 801BBF04 001B8E64 4B F5 8E B9 */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags +/* 801BBF08 001B8E68 48 00 00 18 */ b lbl_801BBF20 +lbl_801BBF0C: +/* 801BBF0C 001B8E6C 7F 43 D3 78 */ mr r3, r26 +/* 801BBF10 001B8E70 7F 84 E3 78 */ mr r4, r28 +/* 801BBF14 001B8E74 7F A5 EB 78 */ mr r5, r29 +/* 801BBF18 001B8E78 7F C6 F3 78 */ mr r6, r30 +/* 801BBF1C 001B8E7C 4B FF FC B1 */ bl DrawHologram__10CGunWeaponCFRC13CStateManagerRC12CTransform4fRC11CModelFlags +lbl_801BBF20: +/* 801BBF20 001B8E80 57 60 06 3F */ clrlwi. r0, r27, 0x18 +/* 801BBF24 001B8E84 41 82 00 28 */ beq lbl_801BBF4C +/* 801BBF28 001B8E88 88 1A 00 FC */ lbz r0, 0xfc(r26) +/* 801BBF2C 001B8E8C 28 00 00 00 */ cmplwi r0, 0 +/* 801BBF30 001B8E90 41 82 00 1C */ beq lbl_801BBF4C +/* 801BBF34 001B8E94 7F 84 E3 78 */ mr r4, r28 +/* 801BBF38 001B8E98 7F E6 FB 78 */ mr r6, r31 +/* 801BBF3C 001B8E9C 7F C7 F3 78 */ mr r7, r30 +/* 801BBF40 001B8EA0 38 7A 00 B0 */ addi r3, r26, 0xb0 +/* 801BBF44 001B8EA4 38 A1 00 98 */ addi r5, r1, 0x98 +/* 801BBF48 001B8EA8 4B F5 8E 75 */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags +lbl_801BBF4C: +/* 801BBF4C 001B8EAC 80 7A 01 BC */ lwz r3, 0x1bc(r26) +/* 801BBF50 001B8EB0 28 03 00 00 */ cmplwi r3, 0 +/* 801BBF54 001B8EB4 41 82 00 20 */ beq lbl_801BBF74 +/* 801BBF58 001B8EB8 88 03 00 48 */ lbz r0, 0x48(r3) +/* 801BBF5C 001B8EBC 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801BBF60 001B8EC0 41 82 00 14 */ beq lbl_801BBF74 +/* 801BBF64 001B8EC4 48 19 67 A5 */ bl ClearPointGeneratorFunc__13CSkinnedModelFv +/* 801BBF68 001B8EC8 80 7A 01 BC */ lwz r3, 0x1bc(r26) +/* 801BBF6C 001B8ECC 7F A4 EB 78 */ mr r4, r29 +/* 801BBF70 001B8ED0 48 0A E4 51 */ bl Draw__20CRainSplashGeneratorCFRC12CTransform4f +lbl_801BBF74: +/* 801BBF74 001B8ED4 BB 41 00 C8 */ lmw r26, 0xc8(r1) +/* 801BBF78 001B8ED8 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 801BBF7C 001B8EDC 7C 08 03 A6 */ mtlr r0 +/* 801BBF80 001B8EE0 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 801BBF84 001B8EE4 4E 80 00 20 */ blr + +.global ActivateCharge__10CGunWeaponFbb +ActivateCharge__10CGunWeaponFbb: +/* 801BBF88 001B8EE8 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801BBF8C 001B8EEC 7C 08 02 A6 */ mflr r0 +/* 801BBF90 001B8EF0 90 01 00 34 */ stw r0, 0x34(r1) +/* 801BBF94 001B8EF4 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801BBF98 001B8EF8 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801BBF9C 001B8EFC 7C 7E 1B 78 */ mr r30, r3 +/* 801BBFA0 001B8F00 3B FE 01 A8 */ addi r31, r30, 0x1a8 +/* 801BBFA4 001B8F04 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801BBFA8 001B8F08 7C 9D 23 78 */ mr r29, r4 +/* 801BBFAC 001B8F0C 38 80 00 00 */ li r4, 0 +/* 801BBFB0 001B8F10 93 81 00 20 */ stw r28, 0x20(r1) +/* 801BBFB4 001B8F14 7C BC 2B 78 */ mr r28, r5 +/* 801BBFB8 001B8F18 80 03 02 08 */ lwz r0, 0x208(r3) +/* 801BBFBC 001B8F1C 54 00 18 38 */ slwi r0, r0, 3 +/* 801BBFC0 001B8F20 7C 7F 02 14 */ add r3, r31, r0 +/* 801BBFC4 001B8F24 80 63 00 04 */ lwz r3, 4(r3) +/* 801BBFC8 001B8F28 81 83 00 00 */ lwz r12, 0(r3) +/* 801BBFCC 001B8F2C 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801BBFD0 001B8F30 7D 89 03 A6 */ mtctr r12 +/* 801BBFD4 001B8F34 4E 80 04 21 */ bctrl +/* 801BBFD8 001B8F38 57 A3 06 3F */ clrlwi. r3, r29, 0x18 +/* 801BBFDC 001B8F3C 7C 03 00 D0 */ neg r0, r3 +/* 801BBFE0 001B8F40 7C 00 1B 78 */ or r0, r0, r3 +/* 801BBFE4 001B8F44 54 00 0F FE */ srwi r0, r0, 0x1f +/* 801BBFE8 001B8F48 90 1E 02 08 */ stw r0, 0x208(r30) +/* 801BBFEC 001B8F4C 40 82 00 0C */ bne lbl_801BBFF8 +/* 801BBFF0 001B8F50 57 80 06 3F */ clrlwi. r0, r28, 0x18 +/* 801BBFF4 001B8F54 41 82 01 0C */ beq lbl_801BC100 +lbl_801BBFF8: +/* 801BBFF8 001B8F58 3C 60 80 3D */ lis r3, lbl_803D1828@ha +/* 801BBFFC 001B8F5C 3B A0 00 00 */ li r29, 0 +/* 801BC000 001B8F60 38 83 18 28 */ addi r4, r3, lbl_803D1828@l +/* 801BC004 001B8F64 38 60 03 40 */ li r3, 0x340 +/* 801BC008 001B8F68 38 84 01 B5 */ addi r4, r4, 0x1b5 +/* 801BC00C 001B8F6C 38 A0 00 00 */ li r5, 0 +/* 801BC010 001B8F70 48 15 98 5D */ bl __nw__FUlPCcPCc +/* 801BC014 001B8F74 7C 7C 1B 79 */ or. r28, r3, r3 +/* 801BC018 001B8F78 41 82 00 38 */ beq lbl_801BC050 +/* 801BC01C 001B8F7C 80 1E 02 08 */ lwz r0, 0x208(r30) +/* 801BC020 001B8F80 38 61 00 10 */ addi r3, r1, 0x10 +/* 801BC024 001B8F84 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801BC028 001B8F88 7C 9E 02 14 */ add r4, r30, r0 +/* 801BC02C 001B8F8C 38 84 01 70 */ addi r4, r4, 0x170 +/* 801BC030 001B8F90 48 18 4E 79 */ bl __ct__6CTokenFRC6CToken +/* 801BC034 001B8F94 7F 83 E3 78 */ mr r3, r28 +/* 801BC038 001B8F98 38 81 00 10 */ addi r4, r1, 0x10 +/* 801BC03C 001B8F9C 3B A0 00 01 */ li r29, 1 +/* 801BC040 001B8FA0 38 A0 00 00 */ li r5, 0 +/* 801BC044 001B8FA4 38 C0 00 01 */ li r6, 1 +/* 801BC048 001B8FA8 48 16 33 99 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 801BC04C 001B8FAC 7C 7C 1B 78 */ mr r28, r3 +lbl_801BC050: +/* 801BC050 001B8FB0 7C 1C 00 D0 */ neg r0, r28 +/* 801BC054 001B8FB4 93 81 00 0C */ stw r28, 0xc(r1) +/* 801BC058 001B8FB8 7C 03 E3 78 */ or r3, r0, r28 +/* 801BC05C 001B8FBC 38 01 00 08 */ addi r0, r1, 8 +/* 801BC060 001B8FC0 54 63 0F FE */ srwi r3, r3, 0x1f +/* 801BC064 001B8FC4 98 61 00 08 */ stb r3, 8(r1) +/* 801BC068 001B8FC8 80 7E 02 08 */ lwz r3, 0x208(r30) +/* 801BC06C 001B8FCC 54 63 18 38 */ slwi r3, r3, 3 +/* 801BC070 001B8FD0 7F 9F 1A 14 */ add r28, r31, r3 +/* 801BC074 001B8FD4 7C 00 E0 40 */ cmplw r0, r28 +/* 801BC078 001B8FD8 41 82 00 48 */ beq lbl_801BC0C0 +/* 801BC07C 001B8FDC 88 1C 00 00 */ lbz r0, 0(r28) +/* 801BC080 001B8FE0 28 00 00 00 */ cmplwi r0, 0 +/* 801BC084 001B8FE4 41 82 00 24 */ beq lbl_801BC0A8 +/* 801BC088 001B8FE8 80 7C 00 04 */ lwz r3, 4(r28) +/* 801BC08C 001B8FEC 28 03 00 00 */ cmplwi r3, 0 +/* 801BC090 001B8FF0 41 82 00 18 */ beq lbl_801BC0A8 +/* 801BC094 001B8FF4 81 83 00 00 */ lwz r12, 0(r3) +/* 801BC098 001B8FF8 38 80 00 01 */ li r4, 1 +/* 801BC09C 001B8FFC 81 8C 00 08 */ lwz r12, 8(r12) +/* 801BC0A0 001B9000 7D 89 03 A6 */ mtctr r12 +/* 801BC0A4 001B9004 4E 80 04 21 */ bctrl +lbl_801BC0A8: +/* 801BC0A8 001B9008 88 61 00 08 */ lbz r3, 8(r1) +/* 801BC0AC 001B900C 38 00 00 00 */ li r0, 0 +/* 801BC0B0 001B9010 98 7C 00 00 */ stb r3, 0(r28) +/* 801BC0B4 001B9014 80 61 00 0C */ lwz r3, 0xc(r1) +/* 801BC0B8 001B9018 90 7C 00 04 */ stw r3, 4(r28) +/* 801BC0BC 001B901C 98 01 00 08 */ stb r0, 8(r1) +lbl_801BC0C0: +/* 801BC0C0 001B9020 88 01 00 08 */ lbz r0, 8(r1) +/* 801BC0C4 001B9024 28 00 00 00 */ cmplwi r0, 0 +/* 801BC0C8 001B9028 41 82 00 24 */ beq lbl_801BC0EC +/* 801BC0CC 001B902C 80 61 00 0C */ lwz r3, 0xc(r1) +/* 801BC0D0 001B9030 28 03 00 00 */ cmplwi r3, 0 +/* 801BC0D4 001B9034 41 82 00 18 */ beq lbl_801BC0EC +/* 801BC0D8 001B9038 81 83 00 00 */ lwz r12, 0(r3) +/* 801BC0DC 001B903C 38 80 00 01 */ li r4, 1 +/* 801BC0E0 001B9040 81 8C 00 08 */ lwz r12, 8(r12) +/* 801BC0E4 001B9044 7D 89 03 A6 */ mtctr r12 +/* 801BC0E8 001B9048 4E 80 04 21 */ bctrl +lbl_801BC0EC: +/* 801BC0EC 001B904C 7F A0 07 75 */ extsb. r0, r29 +/* 801BC0F0 001B9050 41 82 00 10 */ beq lbl_801BC100 +/* 801BC0F4 001B9054 38 61 00 10 */ addi r3, r1, 0x10 +/* 801BC0F8 001B9058 38 80 00 00 */ li r4, 0 +/* 801BC0FC 001B905C 48 18 4D 45 */ bl __dt__6CTokenFv +lbl_801BC100: +/* 801BC100 001B9060 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801BC104 001B9064 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801BC108 001B9068 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801BC10C 001B906C 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801BC110 001B9070 83 81 00 20 */ lwz r28, 0x20(r1) +/* 801BC114 001B9074 7C 08 03 A6 */ mtlr r0 +/* 801BC118 001B9078 38 21 00 30 */ addi r1, r1, 0x30 +/* 801BC11C 001B907C 4E 80 00 20 */ blr + +.global DrawMuzzleFx__10CGunWeaponCFRC13CStateManager +DrawMuzzleFx__10CGunWeaponCFRC13CStateManager: +/* 801BC120 001B9080 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801BC124 001B9084 7C 08 02 A6 */ mflr r0 +/* 801BC128 001B9088 90 01 00 14 */ stw r0, 0x14(r1) +/* 801BC12C 001B908C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801BC130 001B9090 93 C1 00 08 */ stw r30, 8(r1) +/* 801BC134 001B9094 7C 7E 1B 78 */ mr r30, r3 +/* 801BC138 001B9098 3B FE 01 A8 */ addi r31, r30, 0x1a8 +/* 801BC13C 001B909C 80 03 02 08 */ lwz r0, 0x208(r3) +/* 801BC140 001B90A0 54 00 18 38 */ slwi r0, r0, 3 +/* 801BC144 001B90A4 7C 7F 02 14 */ add r3, r31, r0 +/* 801BC148 001B90A8 80 03 00 04 */ lwz r0, 4(r3) +/* 801BC14C 001B90AC 28 00 00 00 */ cmplwi r0, 0 +/* 801BC150 001B90B0 41 82 00 78 */ beq lbl_801BC1C8 +/* 801BC154 001B90B4 80 1E 02 00 */ lwz r0, 0x200(r30) +/* 801BC158 001B90B8 2C 00 00 01 */ cmpwi r0, 1 +/* 801BC15C 001B90BC 41 82 00 4C */ beq lbl_801BC1A8 +/* 801BC160 001B90C0 80 64 08 B8 */ lwz r3, 0x8b8(r4) +/* 801BC164 001B90C4 80 63 00 00 */ lwz r3, 0(r3) +/* 801BC168 001B90C8 4B ED 53 F1 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager +/* 801BC16C 001B90CC 2C 03 00 01 */ cmpwi r3, 1 +/* 801BC170 001B90D0 40 82 00 38 */ bne lbl_801BC1A8 +/* 801BC174 001B90D4 80 1E 02 08 */ lwz r0, 0x208(r30) +/* 801BC178 001B90D8 38 60 00 01 */ li r3, 1 +/* 801BC17C 001B90DC 98 6D A8 B9 */ stb r3, lbl_805A9479@sda21(r13) +/* 801BC180 001B90E0 54 03 18 38 */ slwi r3, r0, 3 +/* 801BC184 001B90E4 38 03 00 04 */ addi r0, r3, 4 +/* 801BC188 001B90E8 7C 7F 00 2E */ lwzx r3, r31, r0 +/* 801BC18C 001B90EC 81 83 00 00 */ lwz r12, 0(r3) +/* 801BC190 001B90F0 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801BC194 001B90F4 7D 89 03 A6 */ mtctr r12 +/* 801BC198 001B90F8 4E 80 04 21 */ bctrl +/* 801BC19C 001B90FC 38 00 00 00 */ li r0, 0 +/* 801BC1A0 001B9100 98 0D A8 B9 */ stb r0, lbl_805A9479@sda21(r13) +/* 801BC1A4 001B9104 48 00 00 24 */ b lbl_801BC1C8 +lbl_801BC1A8: +/* 801BC1A8 001B9108 80 1E 02 08 */ lwz r0, 0x208(r30) +/* 801BC1AC 001B910C 54 03 18 38 */ slwi r3, r0, 3 +/* 801BC1B0 001B9110 38 03 00 04 */ addi r0, r3, 4 +/* 801BC1B4 001B9114 7C 7F 00 2E */ lwzx r3, r31, r0 +/* 801BC1B8 001B9118 81 83 00 00 */ lwz r12, 0(r3) +/* 801BC1BC 001B911C 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801BC1C0 001B9120 7D 89 03 A6 */ mtctr r12 +/* 801BC1C4 001B9124 4E 80 04 21 */ bctrl +lbl_801BC1C8: +/* 801BC1C8 001B9128 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801BC1CC 001B912C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801BC1D0 001B9130 83 C1 00 08 */ lwz r30, 8(r1) +/* 801BC1D4 001B9134 7C 08 03 A6 */ mtlr r0 +/* 801BC1D8 001B9138 38 21 00 10 */ addi r1, r1, 0x10 +/* 801BC1DC 001B913C 4E 80 00 20 */ blr + +.global GetChargeMuzzleFx__10CGunWeaponCFv +GetChargeMuzzleFx__10CGunWeaponCFv: +/* 801BC1E0 001B9140 80 63 01 B4 */ lwz r3, 0x1b4(r3) +/* 801BC1E4 001B9144 28 03 00 00 */ cmplwi r3, 0 +/* 801BC1E8 001B9148 4C 82 00 20 */ bnelr +/* 801BC1EC 001B914C 38 60 00 00 */ li r3, 0 +/* 801BC1F0 001B9150 4E 80 00 20 */ blr + +.global UpdateMuzzleFx__10CGunWeaponFfRC9CVector3fRC9CVector3fb +UpdateMuzzleFx__10CGunWeaponFfRC9CVector3fRC9CVector3fb: +/* 801BC1F4 001B9154 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801BC1F8 001B9158 7C 08 02 A6 */ mflr r0 +/* 801BC1FC 001B915C 90 01 00 24 */ stw r0, 0x24(r1) +/* 801BC200 001B9160 DB E1 00 18 */ stfd f31, 0x18(r1) +/* 801BC204 001B9164 FF E0 08 90 */ fmr f31, f1 +/* 801BC208 001B9168 93 E1 00 14 */ stw r31, 0x14(r1) +/* 801BC20C 001B916C 93 C1 00 10 */ stw r30, 0x10(r1) +/* 801BC210 001B9170 7C DE 33 78 */ mr r30, r6 +/* 801BC214 001B9174 93 A1 00 0C */ stw r29, 0xc(r1) +/* 801BC218 001B9178 7C 9D 23 78 */ mr r29, r4 +/* 801BC21C 001B917C 7C A4 2B 78 */ mr r4, r5 +/* 801BC220 001B9180 93 81 00 08 */ stw r28, 8(r1) +/* 801BC224 001B9184 7C 7C 1B 78 */ mr r28, r3 +/* 801BC228 001B9188 3B FC 01 A8 */ addi r31, r28, 0x1a8 +/* 801BC22C 001B918C 80 03 02 08 */ lwz r0, 0x208(r3) +/* 801BC230 001B9190 54 00 18 38 */ slwi r0, r0, 3 +/* 801BC234 001B9194 7C 7F 02 14 */ add r3, r31, r0 +/* 801BC238 001B9198 80 63 00 04 */ lwz r3, 4(r3) +/* 801BC23C 001B919C 81 83 00 00 */ lwz r12, 0(r3) +/* 801BC240 001B91A0 81 8C 00 20 */ lwz r12, 0x20(r12) +/* 801BC244 001B91A4 7D 89 03 A6 */ mtctr r12 +/* 801BC248 001B91A8 4E 80 04 21 */ bctrl +/* 801BC24C 001B91AC 80 1C 02 08 */ lwz r0, 0x208(r28) +/* 801BC250 001B91B0 7F A4 EB 78 */ mr r4, r29 +/* 801BC254 001B91B4 54 03 18 38 */ slwi r3, r0, 3 +/* 801BC258 001B91B8 38 03 00 04 */ addi r0, r3, 4 +/* 801BC25C 001B91BC 7C 7F 00 2E */ lwzx r3, r31, r0 +/* 801BC260 001B91C0 81 83 00 00 */ lwz r12, 0(r3) +/* 801BC264 001B91C4 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 801BC268 001B91C8 7D 89 03 A6 */ mtctr r12 +/* 801BC26C 001B91CC 4E 80 04 21 */ bctrl +/* 801BC270 001B91D0 80 1C 02 08 */ lwz r0, 0x208(r28) +/* 801BC274 001B91D4 7F C4 F3 78 */ mr r4, r30 +/* 801BC278 001B91D8 54 03 18 38 */ slwi r3, r0, 3 +/* 801BC27C 001B91DC 38 03 00 04 */ addi r0, r3, 4 +/* 801BC280 001B91E0 7C 7F 00 2E */ lwzx r3, r31, r0 +/* 801BC284 001B91E4 81 83 00 00 */ lwz r12, 0(r3) +/* 801BC288 001B91E8 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801BC28C 001B91EC 7D 89 03 A6 */ mtctr r12 +/* 801BC290 001B91F0 4E 80 04 21 */ bctrl +/* 801BC294 001B91F4 80 1C 02 08 */ lwz r0, 0x208(r28) +/* 801BC298 001B91F8 FC 20 F8 90 */ fmr f1, f31 +/* 801BC29C 001B91FC 54 03 18 38 */ slwi r3, r0, 3 +/* 801BC2A0 001B9200 38 03 00 04 */ addi r0, r3, 4 +/* 801BC2A4 001B9204 7C 7F 00 2E */ lwzx r3, r31, r0 +/* 801BC2A8 001B9208 81 83 00 00 */ lwz r12, 0(r3) +/* 801BC2AC 001B920C 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801BC2B0 001B9210 7D 89 03 A6 */ mtctr r12 +/* 801BC2B4 001B9214 4E 80 04 21 */ bctrl +/* 801BC2B8 001B9218 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801BC2BC 001B921C CB E1 00 18 */ lfd f31, 0x18(r1) +/* 801BC2C0 001B9220 83 E1 00 14 */ lwz r31, 0x14(r1) +/* 801BC2C4 001B9224 83 C1 00 10 */ lwz r30, 0x10(r1) +/* 801BC2C8 001B9228 83 A1 00 0C */ lwz r29, 0xc(r1) +/* 801BC2CC 001B922C 83 81 00 08 */ lwz r28, 8(r1) +/* 801BC2D0 001B9230 7C 08 03 A6 */ mtlr r0 +/* 801BC2D4 001B9234 38 21 00 20 */ addi r1, r1, 0x20 +/* 801BC2D8 001B9238 4E 80 00 20 */ blr + +.global UpdateGunFx__10CGunWeaponFbfRC13CStateManagerRC12CTransform4f +UpdateGunFx__10CGunWeaponFbfRC13CStateManagerRC12CTransform4f: +/* 801BC2DC 001B923C 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 801BC2E0 001B9240 7C 08 02 A6 */ mflr r0 +/* 801BC2E4 001B9244 90 01 00 74 */ stw r0, 0x74(r1) +/* 801BC2E8 001B9248 DB E1 00 60 */ stfd f31, 0x60(r1) +/* 801BC2EC 001B924C F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 801BC2F0 001B9250 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 801BC2F4 001B9254 93 C1 00 58 */ stw r30, 0x58(r1) +/* 801BC2F8 001B9258 93 A1 00 54 */ stw r29, 0x54(r1) +/* 801BC2FC 001B925C 88 03 02 18 */ lbz r0, 0x218(r3) +/* 801BC300 001B9260 FF E0 08 90 */ fmr f31, f1 +/* 801BC304 001B9264 7C 7D 1B 78 */ mr r29, r3 +/* 801BC308 001B9268 7C DE 33 78 */ mr r30, r6 +/* 801BC30C 001B926C 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801BC310 001B9270 41 82 00 F0 */ beq lbl_801BC400 +/* 801BC314 001B9274 80 1D 02 04 */ lwz r0, 0x204(r29) +/* 801BC318 001B9278 2C 00 00 00 */ cmpwi r0, 0 +/* 801BC31C 001B927C 41 82 00 E4 */ beq lbl_801BC400 +/* 801BC320 001B9280 2C 00 00 02 */ cmpwi r0, 2 +/* 801BC324 001B9284 40 82 00 B0 */ bne lbl_801BC3D4 +/* 801BC328 001B9288 80 7D 01 B8 */ lwz r3, 0x1b8(r29) +/* 801BC32C 001B928C 81 83 00 00 */ lwz r12, 0(r3) +/* 801BC330 001B9290 81 8C 00 58 */ lwz r12, 0x58(r12) +/* 801BC334 001B9294 7D 89 03 A6 */ mtctr r12 +/* 801BC338 001B9298 4E 80 04 21 */ bctrl +/* 801BC33C 001B929C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801BC340 001B92A0 41 82 00 38 */ beq lbl_801BC378 +/* 801BC344 001B92A4 38 00 00 00 */ li r0, 0 +/* 801BC348 001B92A8 90 1D 02 04 */ stw r0, 0x204(r29) +/* 801BC34C 001B92AC 80 7D 01 B8 */ lwz r3, 0x1b8(r29) +/* 801BC350 001B92B0 28 03 00 00 */ cmplwi r3, 0 +/* 801BC354 001B92B4 41 82 00 18 */ beq lbl_801BC36C +/* 801BC358 001B92B8 81 83 00 00 */ lwz r12, 0(r3) +/* 801BC35C 001B92BC 38 80 00 01 */ li r4, 1 +/* 801BC360 001B92C0 81 8C 00 08 */ lwz r12, 8(r12) +/* 801BC364 001B92C4 7D 89 03 A6 */ mtctr r12 +/* 801BC368 001B92C8 4E 80 04 21 */ bctrl +lbl_801BC36C: +/* 801BC36C 001B92CC 38 00 00 00 */ li r0, 0 +/* 801BC370 001B92D0 90 1D 01 B8 */ stw r0, 0x1b8(r29) +/* 801BC374 001B92D4 48 00 00 6C */ b lbl_801BC3E0 +lbl_801BC378: +/* 801BC378 001B92D8 C0 5E 00 2C */ lfs f2, 0x2c(r30) +/* 801BC37C 001B92DC 38 81 00 08 */ addi r4, r1, 8 +/* 801BC380 001B92E0 C0 3E 00 1C */ lfs f1, 0x1c(r30) +/* 801BC384 001B92E4 C0 1E 00 0C */ lfs f0, 0xc(r30) +/* 801BC388 001B92E8 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 801BC38C 001B92EC D0 01 00 08 */ stfs f0, 8(r1) +/* 801BC390 001B92F0 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 801BC394 001B92F4 80 7D 01 B8 */ lwz r3, 0x1b8(r29) +/* 801BC398 001B92F8 81 83 00 00 */ lwz r12, 0(r3) +/* 801BC39C 001B92FC 81 8C 00 18 */ lwz r12, 0x18(r12) +/* 801BC3A0 001B9300 7D 89 03 A6 */ mtctr r12 +/* 801BC3A4 001B9304 4E 80 04 21 */ bctrl +/* 801BC3A8 001B9308 83 FD 01 B8 */ lwz r31, 0x1b8(r29) +/* 801BC3AC 001B930C 7F C4 F3 78 */ mr r4, r30 +/* 801BC3B0 001B9310 38 61 00 14 */ addi r3, r1, 0x14 +/* 801BC3B4 001B9314 48 15 68 8D */ bl GetRotation__12CTransform4fCFv +/* 801BC3B8 001B9318 7F E3 FB 78 */ mr r3, r31 +/* 801BC3BC 001B931C 38 81 00 14 */ addi r4, r1, 0x14 +/* 801BC3C0 001B9320 81 9F 00 00 */ lwz r12, 0(r31) +/* 801BC3C4 001B9324 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 801BC3C8 001B9328 7D 89 03 A6 */ mtctr r12 +/* 801BC3CC 001B932C 4E 80 04 21 */ bctrl +/* 801BC3D0 001B9330 48 00 00 10 */ b lbl_801BC3E0 +lbl_801BC3D4: +/* 801BC3D4 001B9334 80 7D 01 B8 */ lwz r3, 0x1b8(r29) +/* 801BC3D8 001B9338 7F C4 F3 78 */ mr r4, r30 +/* 801BC3DC 001B933C 48 16 27 A9 */ bl SetGlobalOrientAndTrans__11CElementGenFRC12CTransform4f +lbl_801BC3E0: +/* 801BC3E0 001B9340 80 7D 01 B8 */ lwz r3, 0x1b8(r29) +/* 801BC3E4 001B9344 28 03 00 00 */ cmplwi r3, 0 +/* 801BC3E8 001B9348 41 82 00 18 */ beq lbl_801BC400 +/* 801BC3EC 001B934C 81 83 00 00 */ lwz r12, 0(r3) +/* 801BC3F0 001B9350 FC 20 F8 90 */ fmr f1, f31 +/* 801BC3F4 001B9354 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801BC3F8 001B9358 7D 89 03 A6 */ mtctr r12 +/* 801BC3FC 001B935C 4E 80 04 21 */ bctrl +lbl_801BC400: +/* 801BC400 001B9360 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 801BC404 001B9364 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801BC408 001B9368 CB E1 00 60 */ lfd f31, 0x60(r1) +/* 801BC40C 001B936C 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 801BC410 001B9370 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 801BC414 001B9374 83 A1 00 54 */ lwz r29, 0x54(r1) +/* 801BC418 001B9378 7C 08 03 A6 */ mtlr r0 +/* 801BC41C 001B937C 38 21 00 70 */ addi r1, r1, 0x70 +/* 801BC420 001B9380 4E 80 00 20 */ blr + +.global PostRenderGunFx__10CGunWeaponFRC13CStateManagerRC12CTransform4f +PostRenderGunFx__10CGunWeaponFRC13CStateManagerRC12CTransform4f: +/* 801BC424 001B9384 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801BC428 001B9388 7C 08 02 A6 */ mflr r0 +/* 801BC42C 001B938C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801BC430 001B9390 88 03 02 18 */ lbz r0, 0x218(r3) +/* 801BC434 001B9394 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801BC438 001B9398 41 82 00 30 */ beq lbl_801BC468 +/* 801BC43C 001B939C 80 83 01 B8 */ lwz r4, 0x1b8(r3) +/* 801BC440 001B93A0 28 04 00 00 */ cmplwi r4, 0 +/* 801BC444 001B93A4 41 82 00 24 */ beq lbl_801BC468 +/* 801BC448 001B93A8 80 03 02 04 */ lwz r0, 0x204(r3) +/* 801BC44C 001B93AC 2C 00 00 00 */ cmpwi r0, 0 +/* 801BC450 001B93B0 41 82 00 18 */ beq lbl_801BC468 +/* 801BC454 001B93B4 7C 83 23 78 */ mr r3, r4 +/* 801BC458 001B93B8 81 84 00 00 */ lwz r12, 0(r4) +/* 801BC45C 001B93BC 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801BC460 001B93C0 7D 89 03 A6 */ mtctr r12 +/* 801BC464 001B93C4 4E 80 04 21 */ bctrl +lbl_801BC468: +/* 801BC468 001B93C8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801BC46C 001B93CC 7C 08 03 A6 */ mtlr r0 +/* 801BC470 001B93D0 38 21 00 10 */ addi r1, r1, 0x10 +/* 801BC474 001B93D4 4E 80 00 20 */ blr + +.global Update__10CGunWeaponFfR13CStateManager +Update__10CGunWeaponFfR13CStateManager: +/* 801BC478 001B93D8 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801BC47C 001B93DC 7C 08 02 A6 */ mflr r0 +/* 801BC480 001B93E0 90 01 00 44 */ stw r0, 0x44(r1) +/* 801BC484 001B93E4 DB E1 00 38 */ stfd f31, 0x38(r1) +/* 801BC488 001B93E8 FF E0 08 90 */ fmr f31, f1 +/* 801BC48C 001B93EC 93 E1 00 34 */ stw r31, 0x34(r1) +/* 801BC490 001B93F0 7C 9F 23 78 */ mr r31, r4 +/* 801BC494 001B93F4 93 C1 00 30 */ stw r30, 0x30(r1) +/* 801BC498 001B93F8 7C 7E 1B 78 */ mr r30, r3 +/* 801BC49C 001B93FC 88 03 02 18 */ lbz r0, 0x218(r3) +/* 801BC4A0 001B9400 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801BC4A4 001B9404 41 82 00 50 */ beq lbl_801BC4F4 +/* 801BC4A8 001B9408 80 0D A3 90 */ lwz r0, lbl_805A8F50@sda21(r13) +/* 801BC4AC 001B940C 7F E5 FB 78 */ mr r5, r31 +/* 801BC4B0 001B9410 38 61 00 0C */ addi r3, r1, 0xc +/* 801BC4B4 001B9414 38 9E 00 10 */ addi r4, r30, 0x10 +/* 801BC4B8 001B9418 90 01 00 08 */ stw r0, 8(r1) +/* 801BC4BC 001B941C 38 C1 00 08 */ addi r6, r1, 8 +/* 801BC4C0 001B9420 38 E0 00 01 */ li r7, 1 +/* 801BC4C4 001B9424 4B F5 96 71 */ bl AdvanceAnimation__10CModelDataFfR13CStateManager7TAreaIdb +/* 801BC4C8 001B9428 FC 20 F8 90 */ fmr f1, f31 +/* 801BC4CC 001B942C 80 7E 01 00 */ lwz r3, 0x100(r30) +/* 801BC4D0 001B9430 7F E4 FB 78 */ mr r4, r31 +/* 801BC4D4 001B9434 48 01 01 6D */ bl Update__14CGunControllerFfR13CStateManager +/* 801BC4D8 001B9438 88 1E 02 18 */ lbz r0, 0x218(r30) +/* 801BC4DC 001B943C 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 801BC4E0 001B9440 41 82 00 EC */ beq lbl_801BC5CC +/* 801BC4E4 001B9444 7F C3 F3 78 */ mr r3, r30 +/* 801BC4E8 001B9448 7F E4 FB 78 */ mr r4, r31 +/* 801BC4EC 001B944C 4B FF DF B1 */ bl LoadSuitArm__10CGunWeaponFR13CStateManager +/* 801BC4F0 001B9450 48 00 00 DC */ b lbl_801BC5CC +lbl_801BC4F4: +/* 801BC4F4 001B9454 88 1E 01 08 */ lbz r0, 0x108(r30) +/* 801BC4F8 001B9458 28 00 00 00 */ cmplwi r0, 0 +/* 801BC4FC 001B945C 41 82 00 D0 */ beq lbl_801BC5CC +/* 801BC500 001B9460 80 BE 01 04 */ lwz r5, 0x104(r30) +/* 801BC504 001B9464 80 05 00 10 */ lwz r0, 0x10(r5) +/* 801BC508 001B9468 28 00 00 00 */ cmplwi r0, 0 +/* 801BC50C 001B946C 41 82 00 58 */ beq lbl_801BC564 +/* 801BC510 001B9470 80 1E 02 10 */ lwz r0, 0x210(r30) +/* 801BC514 001B9474 54 00 07 FE */ clrlwi r0, r0, 0x1f +/* 801BC518 001B9478 2C 00 00 01 */ cmpwi r0, 1 +/* 801BC51C 001B947C 41 82 00 1C */ beq lbl_801BC538 +/* 801BC520 001B9480 48 00 04 89 */ bl LoadGunModels__10CGunWeaponFR13CStateManager +/* 801BC524 001B9484 7F C3 F3 78 */ mr r3, r30 +/* 801BC528 001B9488 4B FF E4 99 */ bl LoadAnimations__10CGunWeaponFv +/* 801BC52C 001B948C 80 1E 02 10 */ lwz r0, 0x210(r30) +/* 801BC530 001B9490 60 00 00 01 */ ori r0, r0, 1 +/* 801BC534 001B9494 90 1E 02 10 */ stw r0, 0x210(r30) +lbl_801BC538: +/* 801BC538 001B9498 80 1E 02 10 */ lwz r0, 0x210(r30) +/* 801BC53C 001B949C 54 00 07 38 */ rlwinm r0, r0, 0, 0x1c, 0x1c +/* 801BC540 001B94A0 2C 00 00 08 */ cmpwi r0, 8 +/* 801BC544 001B94A4 41 82 00 20 */ beq lbl_801BC564 +/* 801BC548 001B94A8 7F C3 F3 78 */ mr r3, r30 +/* 801BC54C 001B94AC 4B FF E4 35 */ bl IsAnimsLoaded__10CGunWeaponCFv +/* 801BC550 001B94B0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801BC554 001B94B4 41 82 00 10 */ beq lbl_801BC564 +/* 801BC558 001B94B8 80 1E 02 10 */ lwz r0, 0x210(r30) +/* 801BC55C 001B94BC 60 00 00 08 */ ori r0, r0, 8 +/* 801BC560 001B94C0 90 1E 02 10 */ stw r0, 0x210(r30) +lbl_801BC564: +/* 801BC564 001B94C4 FC 20 F8 90 */ fmr f1, f31 +/* 801BC568 001B94C8 7F C3 F3 78 */ mr r3, r30 +/* 801BC56C 001B94CC 7F E4 FB 78 */ mr r4, r31 +/* 801BC570 001B94D0 4B FF E4 89 */ bl LoadFxIdle__10CGunWeaponFfR13CStateManager +/* 801BC574 001B94D4 80 1E 02 10 */ lwz r0, 0x210(r30) +/* 801BC578 001B94D8 54 00 06 FE */ clrlwi r0, r0, 0x1b +/* 801BC57C 001B94DC 2C 00 00 1F */ cmpwi r0, 0x1f +/* 801BC580 001B94E0 40 82 00 4C */ bne lbl_801BC5CC +/* 801BC584 001B94E4 38 7E 00 10 */ addi r3, r30, 0x10 +/* 801BC588 001B94E8 38 80 00 00 */ li r4, 0 +/* 801BC58C 001B94EC 4B F5 89 D1 */ bl PickAnimatedModel__10CModelDataCFQ210CModelData11EWhichModel +/* 801BC590 001B94F0 80 63 00 0C */ lwz r3, 0xc(r3) +/* 801BC594 001B94F4 80 9E 02 0C */ lwz r4, 0x20c(r30) +/* 801BC598 001B94F8 48 19 90 11 */ bl IsLoaded__6CModelCFi +/* 801BC59C 001B94FC 7C 7F 1B 78 */ mr r31, r3 +/* 801BC5A0 001B9500 38 7E 00 B0 */ addi r3, r30, 0xb0 +/* 801BC5A4 001B9504 38 80 00 00 */ li r4, 0 +/* 801BC5A8 001B9508 4B F5 86 DD */ bl IsLoaded__10CModelDataCFi +/* 801BC5AC 001B950C 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 801BC5B0 001B9510 41 82 00 1C */ beq lbl_801BC5CC +/* 801BC5B4 001B9514 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801BC5B8 001B9518 41 82 00 14 */ beq lbl_801BC5CC +/* 801BC5BC 001B951C 88 1E 02 18 */ lbz r0, 0x218(r30) +/* 801BC5C0 001B9520 38 60 00 01 */ li r3, 1 +/* 801BC5C4 001B9524 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 801BC5C8 001B9528 98 1E 02 18 */ stb r0, 0x218(r30) +lbl_801BC5CC: +/* 801BC5CC 001B952C 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801BC5D0 001B9530 CB E1 00 38 */ lfd f31, 0x38(r1) +/* 801BC5D4 001B9534 83 E1 00 34 */ lwz r31, 0x34(r1) +/* 801BC5D8 001B9538 83 C1 00 30 */ lwz r30, 0x30(r1) +/* 801BC5DC 001B953C 7C 08 03 A6 */ mtlr r0 +/* 801BC5E0 001B9540 38 21 00 40 */ addi r1, r1, 0x40 +/* 801BC5E4 001B9544 4E 80 00 20 */ blr + +.global Reset__10CGunWeaponFR13CStateManager +Reset__10CGunWeaponFR13CStateManager: +/* 801BC5E8 001B9548 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801BC5EC 001B954C 7C 08 02 A6 */ mflr r0 +/* 801BC5F0 001B9550 90 01 00 14 */ stw r0, 0x14(r1) +/* 801BC5F4 001B9554 88 03 02 18 */ lbz r0, 0x218(r3) +/* 801BC5F8 001B9558 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801BC5FC 001B955C 41 82 00 4C */ beq lbl_801BC648 +/* 801BC600 001B9560 80 C3 00 20 */ lwz r6, 0x20(r3) +/* 801BC604 001B9564 38 A0 00 00 */ li r5, 0 +/* 801BC608 001B9568 38 80 00 01 */ li r4, 1 +/* 801BC60C 001B956C 88 06 02 20 */ lbz r0, 0x220(r6) +/* 801BC610 001B9570 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 801BC614 001B9574 98 06 02 20 */ stb r0, 0x220(r6) +/* 801BC618 001B9578 88 06 02 20 */ lbz r0, 0x220(r6) +/* 801BC61C 001B957C 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801BC620 001B9580 98 06 02 20 */ stb r0, 0x220(r6) +/* 801BC624 001B9584 88 03 02 18 */ lbz r0, 0x218(r3) +/* 801BC628 001B9588 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801BC62C 001B958C 41 82 00 14 */ beq lbl_801BC640 +/* 801BC630 001B9590 88 03 02 18 */ lbz r0, 0x218(r3) +/* 801BC634 001B9594 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 801BC638 001B9598 98 03 02 18 */ stb r0, 0x218(r3) +/* 801BC63C 001B959C 48 00 00 0C */ b lbl_801BC648 +lbl_801BC640: +/* 801BC640 001B95A0 80 63 01 00 */ lwz r3, 0x100(r3) +/* 801BC644 001B95A4 48 00 FC 8D */ bl Reset__14CGunControllerFv +lbl_801BC648: +/* 801BC648 001B95A8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801BC64C 001B95AC 7C 08 03 A6 */ mtlr r0 +/* 801BC650 001B95B0 38 21 00 10 */ addi r1, r1, 0x10 +/* 801BC654 001B95B4 4E 80 00 20 */ blr + +.global PlayAnim__10CGunWeaponFQ212NWeaponTypes12EGunAnimTypeb +PlayAnim__10CGunWeaponFQ212NWeaponTypes12EGunAnimTypeb: +/* 801BC658 001B95B8 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801BC65C 001B95BC 7C 08 02 A6 */ mflr r0 +/* 801BC660 001B95C0 90 01 00 34 */ stw r0, 0x34(r1) +/* 801BC664 001B95C4 88 03 02 18 */ lbz r0, 0x218(r3) +/* 801BC668 001B95C8 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801BC66C 001B95CC 41 82 00 8C */ beq lbl_801BC6F8 +/* 801BC670 001B95D0 2C 04 00 00 */ cmpwi r4, 0 +/* 801BC674 001B95D4 41 80 00 84 */ blt lbl_801BC6F8 +/* 801BC678 001B95D8 2C 04 00 0A */ cmpwi r4, 0xa +/* 801BC67C 001B95DC 40 81 00 08 */ ble lbl_801BC684 +/* 801BC680 001B95E0 48 00 00 78 */ b lbl_801BC6F8 +lbl_801BC684: +/* 801BC684 001B95E4 80 63 00 20 */ lwz r3, 0x20(r3) +/* 801BC688 001B95E8 54 A7 06 3E */ clrlwi r7, r5, 0x18 +/* 801BC68C 001B95EC 3C A0 80 3D */ lis r5, lbl_803D17FC@ha +/* 801BC690 001B95F0 54 80 10 3A */ slwi r0, r4, 2 +/* 801BC694 001B95F4 88 C3 02 20 */ lbz r6, 0x220(r3) +/* 801BC698 001B95F8 50 E6 36 72 */ rlwimi r6, r7, 6, 0x19, 0x19 +/* 801BC69C 001B95FC 38 85 17 FC */ addi r4, r5, lbl_803D17FC@l +/* 801BC6A0 001B9600 39 00 00 01 */ li r8, 1 +/* 801BC6A4 001B9604 98 C3 02 20 */ stb r6, 0x220(r3) +/* 801BC6A8 001B9608 38 C0 FF FF */ li r6, -1 +/* 801BC6AC 001B960C 7C E4 00 2E */ lwzx r7, r4, r0 +/* 801BC6B0 001B9610 38 00 00 00 */ li r0, 0 +/* 801BC6B4 001B9614 88 83 02 20 */ lbz r4, 0x220(r3) +/* 801BC6B8 001B9618 51 04 3E 30 */ rlwimi r4, r8, 7, 0x18, 0x18 +/* 801BC6BC 001B961C C0 02 A9 D8 */ lfs f0, lbl_805AC6F8@sda21(r2) +/* 801BC6C0 001B9620 38 A0 00 00 */ li r5, 0 +/* 801BC6C4 001B9624 98 83 02 20 */ stb r4, 0x220(r3) +/* 801BC6C8 001B9628 38 81 00 08 */ addi r4, r1, 8 +/* 801BC6CC 001B962C 90 E1 00 08 */ stw r7, 8(r1) +/* 801BC6D0 001B9630 90 C1 00 0C */ stw r6, 0xc(r1) +/* 801BC6D4 001B9634 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801BC6D8 001B9638 99 01 00 14 */ stb r8, 0x14(r1) +/* 801BC6DC 001B963C 90 01 00 18 */ stw r0, 0x18(r1) +/* 801BC6E0 001B9640 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801BC6E4 001B9644 98 01 00 20 */ stb r0, 0x20(r1) +/* 801BC6E8 001B9648 90 01 00 24 */ stw r0, 0x24(r1) +/* 801BC6EC 001B964C 90 01 00 28 */ stw r0, 0x28(r1) +/* 801BC6F0 001B9650 90 01 00 2C */ stw r0, 0x2c(r1) +/* 801BC6F4 001B9654 4B E7 06 89 */ bl SetAnimation__9CAnimDataFRC18CAnimPlaybackParmsb +lbl_801BC6F8: +/* 801BC6F8 001B9658 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801BC6FC 001B965C 7C 08 03 A6 */ mtlr r0 +/* 801BC700 001B9660 38 21 00 30 */ addi r1, r1, 0x30 +/* 801BC704 001B9664 4E 80 00 20 */ blr + +.global IsChargeAnimOver__10CGunWeaponCFv +IsChargeAnimOver__10CGunWeaponCFv: +/* 801BC708 001B9668 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801BC70C 001B966C 7C 08 02 A6 */ mflr r0 +/* 801BC710 001B9670 90 01 00 24 */ stw r0, 0x24(r1) +/* 801BC714 001B9674 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801BC718 001B9678 7C 7F 1B 78 */ mr r31, r3 +/* 801BC71C 001B967C 88 03 02 18 */ lbz r0, 0x218(r3) +/* 801BC720 001B9680 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801BC724 001B9684 41 82 00 44 */ beq lbl_801BC768 +/* 801BC728 001B9688 3C 80 80 3D */ lis r4, lbl_803D1828@ha +/* 801BC72C 001B968C 38 61 00 08 */ addi r3, r1, 8 +/* 801BC730 001B9690 38 84 18 28 */ addi r4, r4, lbl_803D1828@l +/* 801BC734 001B9694 38 84 01 BC */ addi r4, r4, 0x1bc +/* 801BC738 001B9698 4B E4 85 81 */ bl string_l__4rstlFPCc +/* 801BC73C 001B969C 80 7F 00 20 */ lwz r3, 0x20(r31) +/* 801BC740 001B96A0 38 81 00 08 */ addi r4, r1, 8 +/* 801BC744 001B96A4 C0 22 A9 EC */ lfs f1, lbl_805AC70C@sda21(r2) +/* 801BC748 001B96A8 4B E6 FC A5 */ bl "IsAnimTimeRemaining__9CAnimDataCFfRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801BC74C 001B96AC 7C 7F 1B 78 */ mr r31, r3 +/* 801BC750 001B96B0 38 61 00 08 */ addi r3, r1, 8 +/* 801BC754 001B96B4 48 18 13 8D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801BC758 001B96B8 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 801BC75C 001B96BC 41 82 00 0C */ beq lbl_801BC768 +/* 801BC760 001B96C0 38 60 00 00 */ li r3, 0 +/* 801BC764 001B96C4 48 00 00 08 */ b lbl_801BC76C +lbl_801BC768: +/* 801BC768 001B96C8 38 60 00 01 */ li r3, 1 +lbl_801BC76C: +/* 801BC76C 001B96CC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801BC770 001B96D0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801BC774 001B96D4 7C 08 03 A6 */ mtlr r0 +/* 801BC778 001B96D8 38 21 00 20 */ addi r1, r1, 0x20 +/* 801BC77C 001B96DC 4E 80 00 20 */ blr + +.global PlayPasAnim__10CGunWeaponFQ28SamusGun15EAnimationStateR13CStateManagerf +PlayPasAnim__10CGunWeaponFQ28SamusGun15EAnimationStateR13CStateManagerf: +/* 801BC780 001B96E0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801BC784 001B96E4 7C 08 02 A6 */ mflr r0 +/* 801BC788 001B96E8 2C 04 00 04 */ cmpwi r4, 4 +/* 801BC78C 001B96EC 7C 66 1B 78 */ mr r6, r3 +/* 801BC790 001B96F0 90 01 00 14 */ stw r0, 0x14(r1) +/* 801BC794 001B96F4 41 82 00 14 */ beq lbl_801BC7A8 +/* 801BC798 001B96F8 40 80 00 24 */ bge lbl_801BC7BC +/* 801BC79C 001B96FC 2C 04 00 00 */ cmpwi r4, 0 +/* 801BC7A0 001B9700 41 82 00 24 */ beq lbl_801BC7C4 +/* 801BC7A4 001B9704 48 00 00 18 */ b lbl_801BC7BC +lbl_801BC7A8: +/* 801BC7A8 001B9708 80 66 01 00 */ lwz r3, 0x100(r6) +/* 801BC7AC 001B970C 7C A4 2B 78 */ mr r4, r5 +/* 801BC7B0 001B9710 80 A6 02 00 */ lwz r5, 0x200(r6) +/* 801BC7B4 001B9714 48 01 03 95 */ bl EnterComboFire__14CGunControllerFR13CStateManageri +/* 801BC7B8 001B9718 48 00 00 0C */ b lbl_801BC7C4 +lbl_801BC7BC: +/* 801BC7BC 001B971C 38 60 00 00 */ li r3, 0 +/* 801BC7C0 001B9720 48 00 00 08 */ b lbl_801BC7C8 +lbl_801BC7C4: +/* 801BC7C4 001B9724 38 60 00 01 */ li r3, 1 +lbl_801BC7C8: +/* 801BC7C8 001B9728 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801BC7CC 001B972C 7C 08 03 A6 */ mtlr r0 +/* 801BC7D0 001B9730 38 21 00 10 */ addi r1, r1, 0x10 +/* 801BC7D4 001B9734 4E 80 00 20 */ blr + +.global LoadProjectileData__10CGunWeaponFR13CStateManager +LoadProjectileData__10CGunWeaponFR13CStateManager: +/* 801BC7D8 001B9738 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801BC7DC 001B973C 7C 08 02 A6 */ mflr r0 +/* 801BC7E0 001B9740 90 01 00 64 */ stw r0, 0x64(r1) +/* 801BC7E4 001B9744 DB E1 00 50 */ stfd f31, 0x50(r1) +/* 801BC7E8 001B9748 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 801BC7EC 001B974C BE C1 00 28 */ stmw r22, 0x28(r1) +/* 801BC7F0 001B9750 80 84 08 D8 */ lwz r4, 0x8d8(r4) +/* 801BC7F4 001B9754 7C 76 1B 78 */ mr r22, r3 +/* 801BC7F8 001B9758 38 61 00 0C */ addi r3, r1, 0xc +/* 801BC7FC 001B975C 48 15 5D F1 */ bl __ct__9CRandom16FUi +/* 801BC800 001B9760 38 61 00 1C */ addi r3, r1, 0x1c +/* 801BC804 001B9764 38 81 00 0C */ addi r4, r1, 0xc +/* 801BC808 001B9768 48 15 5E 79 */ bl __ct__13CGlobalRandomFR9CRandom16 +/* 801BC80C 001B976C 3B 16 01 D4 */ addi r24, r22, 0x1d4 +/* 801BC810 001B9770 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801BC814 001B9774 3C 60 80 5A */ lis r3, lbl_805A6724@ha +/* 801BC818 001B9778 C3 E2 A9 DC */ lfs f31, lbl_805AC6FC@sda21(r2) +/* 801BC81C 001B977C 7F 1B C3 78 */ mr r27, r24 +/* 801BC820 001B9780 3B 96 01 48 */ addi r28, r22, 0x148 +/* 801BC824 001B9784 3B C4 66 A0 */ addi r30, r4, skZero3f@l +/* 801BC828 001B9788 3B 56 01 F8 */ addi r26, r22, 0x1f8 +/* 801BC82C 001B978C 3B 36 01 F0 */ addi r25, r22, 0x1f0 +/* 801BC830 001B9790 3B E3 67 24 */ addi r31, r3, lbl_805A6724@l +/* 801BC834 001B9794 3A E0 00 00 */ li r23, 0 +lbl_801BC838: +/* 801BC838 001B9798 83 BC 00 08 */ lwz r29, 8(r28) +/* 801BC83C 001B979C C0 5E 00 00 */ lfs f2, 0(r30) +/* 801BC840 001B97A0 C0 3E 00 04 */ lfs f1, 4(r30) +/* 801BC844 001B97A4 C0 1E 00 08 */ lfs f0, 8(r30) +/* 801BC848 001B97A8 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 801BC84C 001B97AC D0 21 00 14 */ stfs f1, 0x14(r1) +/* 801BC850 001B97B0 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801BC854 001B97B4 80 7D 00 04 */ lwz r3, 4(r29) +/* 801BC858 001B97B8 28 03 00 00 */ cmplwi r3, 0 +/* 801BC85C 001B97BC 41 82 00 1C */ beq lbl_801BC878 +/* 801BC860 001B97C0 81 83 00 00 */ lwz r12, 0(r3) +/* 801BC864 001B97C4 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801BC868 001B97C8 38 80 00 00 */ li r4, 0 +/* 801BC86C 001B97CC 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801BC870 001B97D0 7D 89 03 A6 */ mtctr r12 +/* 801BC874 001B97D4 4E 80 04 21 */ bctrl +lbl_801BC878: +/* 801BC878 001B97D8 80 16 01 D0 */ lwz r0, 0x1d0(r22) +/* 801BC87C 001B97DC 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801BC880 001B97E0 7C 78 02 15 */ add. r3, r24, r0 +/* 801BC884 001B97E4 41 82 00 1C */ beq lbl_801BC8A0 +/* 801BC888 001B97E8 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 801BC88C 001B97EC D0 03 00 00 */ stfs f0, 0(r3) +/* 801BC890 001B97F0 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 801BC894 001B97F4 D0 03 00 04 */ stfs f0, 4(r3) +/* 801BC898 001B97F8 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 801BC89C 001B97FC D0 03 00 08 */ stfs f0, 8(r3) +lbl_801BC8A0: +/* 801BC8A0 001B9800 80 76 01 D0 */ lwz r3, 0x1d0(r22) +/* 801BC8A4 001B9804 38 03 00 01 */ addi r0, r3, 1 +/* 801BC8A8 001B9808 90 16 01 D0 */ stw r0, 0x1d0(r22) +/* 801BC8AC 001B980C D3 E1 00 08 */ stfs f31, 8(r1) +/* 801BC8B0 001B9810 80 7D 00 30 */ lwz r3, 0x30(r29) +/* 801BC8B4 001B9814 28 03 00 00 */ cmplwi r3, 0 +/* 801BC8B8 001B9818 41 82 00 1C */ beq lbl_801BC8D4 +/* 801BC8BC 001B981C 81 83 00 00 */ lwz r12, 0(r3) +/* 801BC8C0 001B9820 38 A1 00 08 */ addi r5, r1, 8 +/* 801BC8C4 001B9824 38 80 00 00 */ li r4, 0 +/* 801BC8C8 001B9828 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801BC8CC 001B982C 7D 89 03 A6 */ mtctr r12 +/* 801BC8D0 001B9830 4E 80 04 21 */ bctrl +lbl_801BC8D4: +/* 801BC8D4 001B9834 80 16 01 F4 */ lwz r0, 0x1f4(r22) +/* 801BC8D8 001B9838 54 00 10 3A */ slwi r0, r0, 2 +/* 801BC8DC 001B983C 7C 7A 02 15 */ add. r3, r26, r0 +/* 801BC8E0 001B9840 41 82 00 0C */ beq lbl_801BC8EC +/* 801BC8E4 001B9844 C0 01 00 08 */ lfs f0, 8(r1) +/* 801BC8E8 001B9848 D0 03 00 00 */ stfs f0, 0(r3) +lbl_801BC8EC: +/* 801BC8EC 001B984C 80 76 01 F4 */ lwz r3, 0x1f4(r22) +/* 801BC8F0 001B9850 38 03 00 01 */ addi r0, r3, 1 +/* 801BC8F4 001B9854 90 16 01 F4 */ stw r0, 0x1f4(r22) +/* 801BC8F8 001B9858 80 16 01 EC */ lwz r0, 0x1ec(r22) +/* 801BC8FC 001B985C 7C 79 02 15 */ add. r3, r25, r0 +/* 801BC900 001B9860 41 82 00 0C */ beq lbl_801BC90C +/* 801BC904 001B9864 88 1D 00 29 */ lbz r0, 0x29(r29) +/* 801BC908 001B9868 98 03 00 00 */ stb r0, 0(r3) +lbl_801BC90C: +/* 801BC90C 001B986C 80 76 01 EC */ lwz r3, 0x1ec(r22) +/* 801BC910 001B9870 38 03 00 01 */ addi r0, r3, 1 +/* 801BC914 001B9874 90 16 01 EC */ stw r0, 0x1ec(r22) +/* 801BC918 001B9878 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 801BC91C 001B987C FC 00 F8 40 */ fcmpo cr0, f0, f31 +/* 801BC920 001B9880 40 81 00 30 */ ble lbl_801BC950 +/* 801BC924 001B9884 C0 1B 00 00 */ lfs f0, 0(r27) +/* 801BC928 001B9888 C0 22 A9 F0 */ lfs f1, lbl_805AC710@sda21(r2) +/* 801BC92C 001B988C EC 00 00 72 */ fmuls f0, f0, f1 +/* 801BC930 001B9890 D0 1B 00 00 */ stfs f0, 0(r27) +/* 801BC934 001B9894 C0 1B 00 04 */ lfs f0, 4(r27) +/* 801BC938 001B9898 EC 00 00 72 */ fmuls f0, f0, f1 +/* 801BC93C 001B989C D0 1B 00 04 */ stfs f0, 4(r27) +/* 801BC940 001B98A0 C0 1B 00 08 */ lfs f0, 8(r27) +/* 801BC944 001B98A4 EC 00 00 72 */ fmuls f0, f0, f1 +/* 801BC948 001B98A8 D0 1B 00 08 */ stfs f0, 8(r27) +/* 801BC94C 001B98AC 48 00 00 20 */ b lbl_801BC96C +lbl_801BC950: +/* 801BC950 001B98B0 3C 60 80 5A */ lis r3, lbl_805A6724@ha +/* 801BC954 001B98B4 C0 03 67 24 */ lfs f0, lbl_805A6724@l(r3) +/* 801BC958 001B98B8 D0 1B 00 00 */ stfs f0, 0(r27) +/* 801BC95C 001B98BC C0 1F 00 04 */ lfs f0, 4(r31) +/* 801BC960 001B98C0 D0 1B 00 04 */ stfs f0, 4(r27) +/* 801BC964 001B98C4 C0 1F 00 08 */ lfs f0, 8(r31) +/* 801BC968 001B98C8 D0 1B 00 08 */ stfs f0, 8(r27) +lbl_801BC96C: +/* 801BC96C 001B98CC 3A F7 00 01 */ addi r23, r23, 1 +/* 801BC970 001B98D0 3B 7B 00 0C */ addi r27, r27, 0xc +/* 801BC974 001B98D4 2C 17 00 02 */ cmpwi r23, 2 +/* 801BC978 001B98D8 3B 9C 00 0C */ addi r28, r28, 0xc +/* 801BC97C 001B98DC 41 80 FE BC */ blt lbl_801BC838 +/* 801BC980 001B98E0 38 61 00 1C */ addi r3, r1, 0x1c +/* 801BC984 001B98E4 38 80 FF FF */ li r4, -1 +/* 801BC988 001B98E8 48 15 5C 7D */ bl __dt__13CGlobalRandomFv +/* 801BC98C 001B98EC E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 +/* 801BC990 001B98F0 CB E1 00 50 */ lfd f31, 0x50(r1) +/* 801BC994 001B98F4 BA C1 00 28 */ lmw r22, 0x28(r1) +/* 801BC998 001B98F8 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801BC99C 001B98FC 7C 08 03 A6 */ mtlr r0 +/* 801BC9A0 001B9900 38 21 00 60 */ addi r1, r1, 0x60 +/* 801BC9A4 001B9904 4E 80 00 20 */ blr + +.global LoadGunModels__10CGunWeaponFR13CStateManager +LoadGunModels__10CGunWeaponFR13CStateManager: +/* 801BC9A8 001B9908 94 21 FE F0 */ stwu r1, -0x110(r1) +/* 801BC9AC 001B990C 7C 08 02 A6 */ mflr r0 +/* 801BC9B0 001B9910 90 01 01 14 */ stw r0, 0x114(r1) +/* 801BC9B4 001B9914 93 E1 01 0C */ stw r31, 0x10c(r1) +/* 801BC9B8 001B9918 7C 7F 1B 78 */ mr r31, r3 +/* 801BC9BC 001B991C 93 C1 01 08 */ stw r30, 0x108(r1) +/* 801BC9C0 001B9920 3B C0 00 09 */ li r30, 9 +/* 801BC9C4 001B9924 93 A1 01 04 */ stw r29, 0x104(r1) +/* 801BC9C8 001B9928 7C 9D 23 78 */ mr r29, r4 +/* 801BC9CC 001B992C 88 03 02 18 */ lbz r0, 0x218(r3) +/* 801BC9D0 001B9930 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 801BC9D4 001B9934 41 82 00 08 */ beq lbl_801BC9DC +/* 801BC9D8 001B9938 3B C0 00 00 */ li r30, 0 +lbl_801BC9DC: +/* 801BC9DC 001B993C 80 BF 02 14 */ lwz r5, 0x214(r31) +/* 801BC9E0 001B9940 38 00 00 00 */ li r0, 0 +/* 801BC9E4 001B9944 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 801BC9E8 001B9948 38 81 00 24 */ addi r4, r1, 0x24 +/* 801BC9EC 001B994C 90 A1 00 24 */ stw r5, 0x24(r1) +/* 801BC9F0 001B9950 90 01 00 28 */ stw r0, 0x28(r1) +/* 801BC9F4 001B9954 C0 1F 00 04 */ lfs f0, 4(r31) +/* 801BC9F8 001B9958 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801BC9FC 001B995C C0 1F 00 08 */ lfs f0, 8(r31) +/* 801BCA00 001B9960 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801BCA04 001B9964 C0 1F 00 0C */ lfs f0, 0xc(r31) +/* 801BCA08 001B9968 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801BCA0C 001B996C 98 01 00 38 */ stb r0, 0x38(r1) +/* 801BCA10 001B9970 93 C1 00 3C */ stw r30, 0x3c(r1) +/* 801BCA14 001B9974 4B F5 A1 41 */ bl __ct__10CModelDataFRC8CAnimRes +/* 801BCA18 001B9978 38 7F 00 10 */ addi r3, r31, 0x10 +/* 801BCA1C 001B997C 38 81 00 B4 */ addi r4, r1, 0xb4 +/* 801BCA20 001B9980 4B F2 14 59 */ bl sub_800dde78 +/* 801BCA24 001B9984 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 801BCA28 001B9988 38 80 FF FF */ li r4, -1 +/* 801BCA2C 001B998C 4B F5 A0 21 */ bl __dt__10CModelDataFv +/* 801BCA30 001B9990 80 9F 02 14 */ lwz r4, 0x214(r31) +/* 801BCA34 001B9994 38 A0 00 01 */ li r5, 1 +/* 801BCA38 001B9998 38 00 00 00 */ li r0, 0 +/* 801BCA3C 001B999C 38 61 00 68 */ addi r3, r1, 0x68 +/* 801BCA40 001B99A0 90 81 00 08 */ stw r4, 8(r1) +/* 801BCA44 001B99A4 38 81 00 08 */ addi r4, r1, 8 +/* 801BCA48 001B99A8 90 A1 00 0C */ stw r5, 0xc(r1) +/* 801BCA4C 001B99AC C0 1F 00 04 */ lfs f0, 4(r31) +/* 801BCA50 001B99B0 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801BCA54 001B99B4 C0 1F 00 08 */ lfs f0, 8(r31) +/* 801BCA58 001B99B8 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801BCA5C 001B99BC C0 1F 00 0C */ lfs f0, 0xc(r31) +/* 801BCA60 001B99C0 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801BCA64 001B99C4 98 01 00 1C */ stb r0, 0x1c(r1) +/* 801BCA68 001B99C8 93 C1 00 20 */ stw r30, 0x20(r1) +/* 801BCA6C 001B99CC 4B F5 A0 E9 */ bl __ct__10CModelDataFRC8CAnimRes +/* 801BCA70 001B99D0 38 7F 00 60 */ addi r3, r31, 0x60 +/* 801BCA74 001B99D4 38 81 00 68 */ addi r4, r1, 0x68 +/* 801BCA78 001B99D8 4B F2 14 01 */ bl sub_800dde78 +/* 801BCA7C 001B99DC 38 61 00 68 */ addi r3, r1, 0x68 +/* 801BCA80 001B99E0 38 80 FF FF */ li r4, -1 +/* 801BCA84 001B99E4 4B F5 9F C9 */ bl __dt__10CModelDataFv +/* 801BCA88 001B99E8 C0 02 A9 D8 */ lfs f0, lbl_805AC6F8@sda21(r2) +/* 801BCA8C 001B99EC 38 00 00 00 */ li r0, 0 +/* 801BCA90 001B99F0 38 C0 FF FF */ li r6, -1 +/* 801BCA94 001B99F4 38 60 00 01 */ li r3, 1 +/* 801BCA98 001B99F8 93 C1 00 40 */ stw r30, 0x40(r1) +/* 801BCA9C 001B99FC 38 81 00 40 */ addi r4, r1, 0x40 +/* 801BCAA0 001B9A00 38 A0 00 01 */ li r5, 1 +/* 801BCAA4 001B9A04 90 C1 00 44 */ stw r6, 0x44(r1) +/* 801BCAA8 001B9A08 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 801BCAAC 001B9A0C 98 61 00 4C */ stb r3, 0x4c(r1) +/* 801BCAB0 001B9A10 90 01 00 50 */ stw r0, 0x50(r1) +/* 801BCAB4 001B9A14 90 01 00 54 */ stw r0, 0x54(r1) +/* 801BCAB8 001B9A18 98 01 00 58 */ stb r0, 0x58(r1) +/* 801BCABC 001B9A1C 90 01 00 5C */ stw r0, 0x5c(r1) +/* 801BCAC0 001B9A20 90 01 00 60 */ stw r0, 0x60(r1) +/* 801BCAC4 001B9A24 90 01 00 64 */ stw r0, 0x64(r1) +/* 801BCAC8 001B9A28 80 7F 00 20 */ lwz r3, 0x20(r31) +/* 801BCACC 001B9A2C 4B E7 02 B1 */ bl SetAnimation__9CAnimDataFRC18CAnimPlaybackParmsb +/* 801BCAD0 001B9A30 7F E3 FB 78 */ mr r3, r31 +/* 801BCAD4 001B9A34 7F A4 EB 78 */ mr r4, r29 +/* 801BCAD8 001B9A38 4B FF D9 C5 */ bl LoadSuitArm__10CGunWeaponFR13CStateManager +/* 801BCADC 001B9A3C 88 1F 00 24 */ lbz r0, 0x24(r31) +/* 801BCAE0 001B9A40 38 A0 00 01 */ li r5, 1 +/* 801BCAE4 001B9A44 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 801BCAE8 001B9A48 3C 60 80 3D */ lis r3, lbl_803D1828@ha +/* 801BCAEC 001B9A4C 98 1F 00 24 */ stb r0, 0x24(r31) +/* 801BCAF0 001B9A50 38 63 18 28 */ addi r3, r3, lbl_803D1828@l +/* 801BCAF4 001B9A54 38 83 01 B5 */ addi r4, r3, 0x1b5 +/* 801BCAF8 001B9A58 38 60 00 5C */ li r3, 0x5c +/* 801BCAFC 001B9A5C 88 1F 00 74 */ lbz r0, 0x74(r31) +/* 801BCB00 001B9A60 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 801BCB04 001B9A64 38 A0 00 00 */ li r5, 0 +/* 801BCB08 001B9A68 98 1F 00 74 */ stb r0, 0x74(r31) +/* 801BCB0C 001B9A6C 48 15 8D 61 */ bl __nw__FUlPCcPCc +/* 801BCB10 001B9A70 7C 64 1B 79 */ or. r4, r3, r3 +/* 801BCB14 001B9A74 41 82 00 10 */ beq lbl_801BCB24 +/* 801BCB18 001B9A78 38 9F 00 10 */ addi r4, r31, 0x10 +/* 801BCB1C 001B9A7C 48 01 01 19 */ bl __ct__14CGunControllerFR10CModelData +/* 801BCB20 001B9A80 7C 64 1B 78 */ mr r4, r3 +lbl_801BCB24: +/* 801BCB24 001B9A84 38 7F 01 00 */ addi r3, r31, 0x100 +/* 801BCB28 001B9A88 4B F6 0F AD */ bl "__as__Q24rstl28single_ptr<14CGunController>FRC14CGunController" +/* 801BCB2C 001B9A8C 80 01 01 14 */ lwz r0, 0x114(r1) +/* 801BCB30 001B9A90 83 E1 01 0C */ lwz r31, 0x10c(r1) +/* 801BCB34 001B9A94 83 C1 01 08 */ lwz r30, 0x108(r1) +/* 801BCB38 001B9A98 83 A1 01 04 */ lwz r29, 0x104(r1) +/* 801BCB3C 001B9A9C 7C 08 03 A6 */ mtlr r0 +/* 801BCB40 001B9AA0 38 21 01 10 */ addi r1, r1, 0x110 +/* 801BCB44 001B9AA4 4E 80 00 20 */ blr + +.global LoadMuzzleFx__10CGunWeaponFf +LoadMuzzleFx__10CGunWeaponFf: +/* 801BCB48 001B9AA8 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801BCB4C 001B9AAC 7C 08 02 A6 */ mflr r0 +/* 801BCB50 001B9AB0 90 01 00 44 */ stw r0, 0x44(r1) +/* 801BCB54 001B9AB4 DB E1 00 38 */ stfd f31, 0x38(r1) +/* 801BCB58 001B9AB8 FF E0 08 90 */ fmr f31, f1 +/* 801BCB5C 001B9ABC BF 21 00 1C */ stmw r25, 0x1c(r1) +/* 801BCB60 001B9AC0 7C 7B 1B 78 */ mr r27, r3 +/* 801BCB64 001B9AC4 3C 60 80 3D */ lis r3, lbl_803D1828@ha +/* 801BCB68 001B9AC8 3B 80 00 00 */ li r28, 0 +/* 801BCB6C 001B9ACC 3B DB 01 70 */ addi r30, r27, 0x170 +/* 801BCB70 001B9AD0 3B BB 01 A8 */ addi r29, r27, 0x1a8 +/* 801BCB74 001B9AD4 3B E3 18 28 */ addi r31, r3, lbl_803D1828@l +lbl_801BCB78: +/* 801BCB78 001B9AD8 38 9F 01 B5 */ addi r4, r31, 0x1b5 +/* 801BCB7C 001B9ADC 3B 20 00 00 */ li r25, 0 +/* 801BCB80 001B9AE0 38 60 03 40 */ li r3, 0x340 +/* 801BCB84 001B9AE4 38 A0 00 00 */ li r5, 0 +/* 801BCB88 001B9AE8 48 15 8C E5 */ bl __nw__FUlPCcPCc +/* 801BCB8C 001B9AEC 7C 7A 1B 79 */ or. r26, r3, r3 +/* 801BCB90 001B9AF0 41 82 00 2C */ beq lbl_801BCBBC +/* 801BCB94 001B9AF4 7F C4 F3 78 */ mr r4, r30 +/* 801BCB98 001B9AF8 38 61 00 10 */ addi r3, r1, 0x10 +/* 801BCB9C 001B9AFC 48 18 43 0D */ bl __ct__6CTokenFRC6CToken +/* 801BCBA0 001B9B00 7F 43 D3 78 */ mr r3, r26 +/* 801BCBA4 001B9B04 38 81 00 10 */ addi r4, r1, 0x10 +/* 801BCBA8 001B9B08 3B 20 00 01 */ li r25, 1 +/* 801BCBAC 001B9B0C 38 A0 00 00 */ li r5, 0 +/* 801BCBB0 001B9B10 38 C0 00 01 */ li r6, 1 +/* 801BCBB4 001B9B14 48 16 28 2D */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 801BCBB8 001B9B18 7C 7A 1B 78 */ mr r26, r3 +lbl_801BCBBC: +/* 801BCBBC 001B9B1C 7F 20 07 75 */ extsb. r0, r25 +/* 801BCBC0 001B9B20 41 82 00 10 */ beq lbl_801BCBD0 +/* 801BCBC4 001B9B24 38 61 00 10 */ addi r3, r1, 0x10 +/* 801BCBC8 001B9B28 38 80 00 00 */ li r4, 0 +/* 801BCBCC 001B9B2C 48 18 42 75 */ bl __dt__6CTokenFv +lbl_801BCBD0: +/* 801BCBD0 001B9B30 7F 43 D3 78 */ mr r3, r26 +/* 801BCBD4 001B9B34 38 80 00 00 */ li r4, 0 +/* 801BCBD8 001B9B38 81 9A 00 00 */ lwz r12, 0(r26) +/* 801BCBDC 001B9B3C 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801BCBE0 001B9B40 7D 89 03 A6 */ mtctr r12 +/* 801BCBE4 001B9B44 4E 80 04 21 */ bctrl +/* 801BCBE8 001B9B48 7F 43 D3 78 */ mr r3, r26 +/* 801BCBEC 001B9B4C FC 20 F8 90 */ fmr f1, f31 +/* 801BCBF0 001B9B50 81 9A 00 00 */ lwz r12, 0(r26) +/* 801BCBF4 001B9B54 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801BCBF8 001B9B58 7D 89 03 A6 */ mtctr r12 +/* 801BCBFC 001B9B5C 4E 80 04 21 */ bctrl +/* 801BCC00 001B9B60 80 1B 01 A4 */ lwz r0, 0x1a4(r27) +/* 801BCC04 001B9B64 7C 7A 00 D0 */ neg r3, r26 +/* 801BCC08 001B9B68 7C 63 D3 78 */ or r3, r3, r26 +/* 801BCC0C 001B9B6C 93 41 00 0C */ stw r26, 0xc(r1) +/* 801BCC10 001B9B70 54 00 18 38 */ slwi r0, r0, 3 +/* 801BCC14 001B9B74 54 63 0F FE */ srwi r3, r3, 0x1f +/* 801BCC18 001B9B78 7C 9D 02 15 */ add. r4, r29, r0 +/* 801BCC1C 001B9B7C 98 61 00 08 */ stb r3, 8(r1) +/* 801BCC20 001B9B80 41 82 00 14 */ beq lbl_801BCC34 +/* 801BCC24 001B9B84 98 64 00 00 */ stb r3, 0(r4) +/* 801BCC28 001B9B88 38 00 00 00 */ li r0, 0 +/* 801BCC2C 001B9B8C 93 44 00 04 */ stw r26, 4(r4) +/* 801BCC30 001B9B90 98 01 00 08 */ stb r0, 8(r1) +lbl_801BCC34: +/* 801BCC34 001B9B94 80 7B 01 A4 */ lwz r3, 0x1a4(r27) +/* 801BCC38 001B9B98 88 01 00 08 */ lbz r0, 8(r1) +/* 801BCC3C 001B9B9C 38 63 00 01 */ addi r3, r3, 1 +/* 801BCC40 001B9BA0 28 00 00 00 */ cmplwi r0, 0 +/* 801BCC44 001B9BA4 90 7B 01 A4 */ stw r3, 0x1a4(r27) +/* 801BCC48 001B9BA8 41 82 00 24 */ beq lbl_801BCC6C +/* 801BCC4C 001B9BAC 80 61 00 0C */ lwz r3, 0xc(r1) +/* 801BCC50 001B9BB0 28 03 00 00 */ cmplwi r3, 0 +/* 801BCC54 001B9BB4 41 82 00 18 */ beq lbl_801BCC6C +/* 801BCC58 001B9BB8 81 83 00 00 */ lwz r12, 0(r3) +/* 801BCC5C 001B9BBC 38 80 00 01 */ li r4, 1 +/* 801BCC60 001B9BC0 81 8C 00 08 */ lwz r12, 8(r12) +/* 801BCC64 001B9BC4 7D 89 03 A6 */ mtctr r12 +/* 801BCC68 001B9BC8 4E 80 04 21 */ bctrl +lbl_801BCC6C: +/* 801BCC6C 001B9BCC 3B 9C 00 01 */ addi r28, r28, 1 +/* 801BCC70 001B9BD0 3B DE 00 0C */ addi r30, r30, 0xc +/* 801BCC74 001B9BD4 2C 1C 00 02 */ cmpwi r28, 2 +/* 801BCC78 001B9BD8 41 80 FF 00 */ blt lbl_801BCB78 +/* 801BCC7C 001B9BDC CB E1 00 38 */ lfd f31, 0x38(r1) +/* 801BCC80 001B9BE0 BB 21 00 1C */ lmw r25, 0x1c(r1) +/* 801BCC84 001B9BE4 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801BCC88 001B9BE8 7C 08 03 A6 */ mtlr r0 +/* 801BCC8C 001B9BEC 38 21 00 40 */ addi r1, r1, 0x40 +/* 801BCC90 001B9BF0 4E 80 00 20 */ blr + +.global GetWeaponInfo__10CGunWeaponCFv +GetWeaponInfo__10CGunWeaponCFv: +/* 801BCC94 001B9BF4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801BCC98 001B9BF8 7C 08 02 A6 */ mflr r0 +/* 801BCC9C 001B9BFC 7C 64 1B 78 */ mr r4, r3 +/* 801BCCA0 001B9C00 90 01 00 14 */ stw r0, 0x14(r1) +/* 801BCCA4 001B9C04 80 6D A1 34 */ lwz r3, gpTweakPlayerGun@sda21(r13) +/* 801BCCA8 001B9C08 80 84 02 00 */ lwz r4, 0x200(r4) +/* 801BCCAC 001B9C0C 4B EB 2F D1 */ bl GetBeamInfo__15CTweakPlayerGunCFi +/* 801BCCB0 001B9C10 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801BCCB4 001B9C14 7C 08 03 A6 */ mtlr r0 +/* 801BCCB8 001B9C18 38 21 00 10 */ addi r1, r1, 0x10 +/* 801BCCBC 001B9C1C 4E 80 00 20 */ blr + +.global __dt__10CGunWeaponFv +__dt__10CGunWeaponFv: +/* 801BCCC0 001B9C20 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801BCCC4 001B9C24 7C 08 02 A6 */ mflr r0 +/* 801BCCC8 001B9C28 90 01 00 54 */ stw r0, 0x54(r1) +/* 801BCCCC 001B9C2C 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801BCCD0 001B9C30 7C 9F 23 78 */ mr r31, r4 +/* 801BCCD4 001B9C34 93 C1 00 48 */ stw r30, 0x48(r1) +/* 801BCCD8 001B9C38 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801BCCDC 001B9C3C 93 A1 00 44 */ stw r29, 0x44(r1) +/* 801BCCE0 001B9C40 93 81 00 40 */ stw r28, 0x40(r1) +/* 801BCCE4 001B9C44 41 82 03 54 */ beq lbl_801BD038 +/* 801BCCE8 001B9C48 3C 80 80 3E */ lis r4, lbl_803E52B0@ha +/* 801BCCEC 001B9C4C 38 7E 01 D0 */ addi r3, r30, 0x1d0 +/* 801BCCF0 001B9C50 38 04 52 B0 */ addi r0, r4, lbl_803E52B0@l +/* 801BCCF4 001B9C54 38 80 FF FF */ li r4, -1 +/* 801BCCF8 001B9C58 90 1E 00 00 */ stw r0, 0(r30) +/* 801BCCFC 001B9C5C 48 00 03 61 */ bl sub_801bd05c +/* 801BCD00 001B9C60 34 1E 01 B8 */ addic. r0, r30, 0x1b8 +/* 801BCD04 001B9C64 41 82 00 24 */ beq lbl_801BCD28 +/* 801BCD08 001B9C68 80 7E 01 B8 */ lwz r3, 0x1b8(r30) +/* 801BCD0C 001B9C6C 28 03 00 00 */ cmplwi r3, 0 +/* 801BCD10 001B9C70 41 82 00 18 */ beq lbl_801BCD28 +/* 801BCD14 001B9C74 81 83 00 00 */ lwz r12, 0(r3) +/* 801BCD18 001B9C78 38 80 00 01 */ li r4, 1 +/* 801BCD1C 001B9C7C 81 8C 00 08 */ lwz r12, 8(r12) +/* 801BCD20 001B9C80 7D 89 03 A6 */ mtctr r12 +/* 801BCD24 001B9C84 4E 80 04 21 */ bctrl +lbl_801BCD28: +/* 801BCD28 001B9C88 34 1E 01 A4 */ addic. r0, r30, 0x1a4 +/* 801BCD2C 001B9C8C 41 82 00 60 */ beq lbl_801BCD8C +/* 801BCD30 001B9C90 3B 9E 01 A8 */ addi r28, r30, 0x1a8 +/* 801BCD34 001B9C94 3B A0 00 00 */ li r29, 0 +/* 801BCD38 001B9C98 48 00 00 40 */ b lbl_801BCD78 +lbl_801BCD3C: +/* 801BCD3C 001B9C9C 28 1C 00 00 */ cmplwi r28, 0 +/* 801BCD40 001B9CA0 41 82 00 30 */ beq lbl_801BCD70 +/* 801BCD44 001B9CA4 88 1C 00 00 */ lbz r0, 0(r28) +/* 801BCD48 001B9CA8 28 00 00 00 */ cmplwi r0, 0 +/* 801BCD4C 001B9CAC 41 82 00 24 */ beq lbl_801BCD70 +/* 801BCD50 001B9CB0 80 7C 00 04 */ lwz r3, 4(r28) +/* 801BCD54 001B9CB4 28 03 00 00 */ cmplwi r3, 0 +/* 801BCD58 001B9CB8 41 82 00 18 */ beq lbl_801BCD70 +/* 801BCD5C 001B9CBC 81 83 00 00 */ lwz r12, 0(r3) +/* 801BCD60 001B9CC0 38 80 00 01 */ li r4, 1 +/* 801BCD64 001B9CC4 81 8C 00 08 */ lwz r12, 8(r12) +/* 801BCD68 001B9CC8 7D 89 03 A6 */ mtctr r12 +/* 801BCD6C 001B9CCC 4E 80 04 21 */ bctrl +lbl_801BCD70: +/* 801BCD70 001B9CD0 3B 9C 00 08 */ addi r28, r28, 8 +/* 801BCD74 001B9CD4 3B BD 00 01 */ addi r29, r29, 1 +lbl_801BCD78: +/* 801BCD78 001B9CD8 80 1E 01 A4 */ lwz r0, 0x1a4(r30) +/* 801BCD7C 001B9CDC 7C 1D 00 00 */ cmpw r29, r0 +/* 801BCD80 001B9CE0 41 80 FF BC */ blt lbl_801BCD3C +/* 801BCD84 001B9CE4 38 00 00 00 */ li r0, 0 +/* 801BCD88 001B9CE8 90 1E 01 A4 */ stw r0, 0x1a4(r30) +lbl_801BCD8C: +/* 801BCD8C 001B9CEC 34 1E 01 88 */ addic. r0, r30, 0x188 +/* 801BCD90 001B9CF0 41 82 00 44 */ beq lbl_801BCDD4 +/* 801BCD94 001B9CF4 3B 9E 01 8C */ addi r28, r30, 0x18c +/* 801BCD98 001B9CF8 3B A0 00 00 */ li r29, 0 +/* 801BCD9C 001B9CFC 48 00 00 24 */ b lbl_801BCDC0 +lbl_801BCDA0: +/* 801BCDA0 001B9D00 28 1C 00 00 */ cmplwi r28, 0 +/* 801BCDA4 001B9D04 41 82 00 14 */ beq lbl_801BCDB8 +/* 801BCDA8 001B9D08 41 82 00 10 */ beq lbl_801BCDB8 +/* 801BCDAC 001B9D0C 7F 83 E3 78 */ mr r3, r28 +/* 801BCDB0 001B9D10 38 80 00 00 */ li r4, 0 +/* 801BCDB4 001B9D14 48 18 40 8D */ bl __dt__6CTokenFv +lbl_801BCDB8: +/* 801BCDB8 001B9D18 3B 9C 00 0C */ addi r28, r28, 0xc +/* 801BCDBC 001B9D1C 3B BD 00 01 */ addi r29, r29, 1 +lbl_801BCDC0: +/* 801BCDC0 001B9D20 80 1E 01 88 */ lwz r0, 0x188(r30) +/* 801BCDC4 001B9D24 7C 1D 00 00 */ cmpw r29, r0 +/* 801BCDC8 001B9D28 41 80 FF D8 */ blt lbl_801BCDA0 +/* 801BCDCC 001B9D2C 38 00 00 00 */ li r0, 0 +/* 801BCDD0 001B9D30 90 1E 01 88 */ stw r0, 0x188(r30) +lbl_801BCDD4: +/* 801BCDD4 001B9D34 34 1E 01 6C */ addic. r0, r30, 0x16c +/* 801BCDD8 001B9D38 41 82 00 44 */ beq lbl_801BCE1C +/* 801BCDDC 001B9D3C 3B 9E 01 70 */ addi r28, r30, 0x170 +/* 801BCDE0 001B9D40 3B A0 00 00 */ li r29, 0 +/* 801BCDE4 001B9D44 48 00 00 24 */ b lbl_801BCE08 +lbl_801BCDE8: +/* 801BCDE8 001B9D48 28 1C 00 00 */ cmplwi r28, 0 +/* 801BCDEC 001B9D4C 41 82 00 14 */ beq lbl_801BCE00 +/* 801BCDF0 001B9D50 41 82 00 10 */ beq lbl_801BCE00 +/* 801BCDF4 001B9D54 7F 83 E3 78 */ mr r3, r28 +/* 801BCDF8 001B9D58 38 80 00 00 */ li r4, 0 +/* 801BCDFC 001B9D5C 48 18 40 45 */ bl __dt__6CTokenFv +lbl_801BCE00: +/* 801BCE00 001B9D60 3B 9C 00 0C */ addi r28, r28, 0xc +/* 801BCE04 001B9D64 3B BD 00 01 */ addi r29, r29, 1 +lbl_801BCE08: +/* 801BCE08 001B9D68 80 1E 01 6C */ lwz r0, 0x16c(r30) +/* 801BCE0C 001B9D6C 7C 1D 00 00 */ cmpw r29, r0 +/* 801BCE10 001B9D70 41 80 FF D8 */ blt lbl_801BCDE8 +/* 801BCE14 001B9D74 38 00 00 00 */ li r0, 0 +/* 801BCE18 001B9D78 90 1E 01 6C */ stw r0, 0x16c(r30) +lbl_801BCE1C: +/* 801BCE1C 001B9D7C 34 1E 01 60 */ addic. r0, r30, 0x160 +/* 801BCE20 001B9D80 41 82 00 18 */ beq lbl_801BCE38 +/* 801BCE24 001B9D84 34 1E 01 60 */ addic. r0, r30, 0x160 +/* 801BCE28 001B9D88 41 82 00 10 */ beq lbl_801BCE38 +/* 801BCE2C 001B9D8C 38 7E 01 60 */ addi r3, r30, 0x160 +/* 801BCE30 001B9D90 38 80 00 00 */ li r4, 0 +/* 801BCE34 001B9D94 48 18 40 0D */ bl __dt__6CTokenFv +lbl_801BCE38: +/* 801BCE38 001B9D98 34 1E 01 44 */ addic. r0, r30, 0x144 +/* 801BCE3C 001B9D9C 41 82 00 44 */ beq lbl_801BCE80 +/* 801BCE40 001B9DA0 3B 9E 01 48 */ addi r28, r30, 0x148 +/* 801BCE44 001B9DA4 3B A0 00 00 */ li r29, 0 +/* 801BCE48 001B9DA8 48 00 00 24 */ b lbl_801BCE6C +lbl_801BCE4C: +/* 801BCE4C 001B9DAC 28 1C 00 00 */ cmplwi r28, 0 +/* 801BCE50 001B9DB0 41 82 00 14 */ beq lbl_801BCE64 +/* 801BCE54 001B9DB4 41 82 00 10 */ beq lbl_801BCE64 +/* 801BCE58 001B9DB8 7F 83 E3 78 */ mr r3, r28 +/* 801BCE5C 001B9DBC 38 80 00 00 */ li r4, 0 +/* 801BCE60 001B9DC0 48 18 3F E1 */ bl __dt__6CTokenFv +lbl_801BCE64: +/* 801BCE64 001B9DC4 3B 9C 00 0C */ addi r28, r28, 0xc +/* 801BCE68 001B9DC8 3B BD 00 01 */ addi r29, r29, 1 +lbl_801BCE6C: +/* 801BCE6C 001B9DCC 80 1E 01 44 */ lwz r0, 0x144(r30) +/* 801BCE70 001B9DD0 7C 1D 00 00 */ cmpw r29, r0 +/* 801BCE74 001B9DD4 41 80 FF D8 */ blt lbl_801BCE4C +/* 801BCE78 001B9DD8 38 00 00 00 */ li r0, 0 +/* 801BCE7C 001B9DDC 90 1E 01 44 */ stw r0, 0x144(r30) +lbl_801BCE80: +/* 801BCE80 001B9DE0 34 1E 01 3C */ addic. r0, r30, 0x13c +/* 801BCE84 001B9DE4 41 82 00 10 */ beq lbl_801BCE94 +/* 801BCE88 001B9DE8 38 7E 01 3C */ addi r3, r30, 0x13c +/* 801BCE8C 001B9DEC 38 80 00 00 */ li r4, 0 +/* 801BCE90 001B9DF0 48 18 3F B1 */ bl __dt__6CTokenFv +lbl_801BCE94: +/* 801BCE94 001B9DF4 34 1E 01 2C */ addic. r0, r30, 0x12c +/* 801BCE98 001B9DF8 41 82 00 50 */ beq lbl_801BCEE8 +/* 801BCE9C 001B9DFC 80 1E 01 30 */ lwz r0, 0x130(r30) +/* 801BCEA0 001B9E00 83 9E 01 38 */ lwz r28, 0x138(r30) +/* 801BCEA4 001B9E04 54 00 18 38 */ slwi r0, r0, 3 +/* 801BCEA8 001B9E08 7F BC 02 14 */ add r29, r28, r0 +/* 801BCEAC 001B9E0C 93 81 00 2C */ stw r28, 0x2c(r1) +/* 801BCEB0 001B9E10 93 A1 00 34 */ stw r29, 0x34(r1) +/* 801BCEB4 001B9E14 93 A1 00 30 */ stw r29, 0x30(r1) +/* 801BCEB8 001B9E18 93 81 00 28 */ stw r28, 0x28(r1) +/* 801BCEBC 001B9E1C 48 00 00 14 */ b lbl_801BCED0 +lbl_801BCEC0: +/* 801BCEC0 001B9E20 7F 83 E3 78 */ mr r3, r28 +/* 801BCEC4 001B9E24 38 80 FF FF */ li r4, -1 +/* 801BCEC8 001B9E28 48 18 3F 79 */ bl __dt__6CTokenFv +/* 801BCECC 001B9E2C 3B 9C 00 08 */ addi r28, r28, 8 +lbl_801BCED0: +/* 801BCED0 001B9E30 7C 1C E8 40 */ cmplw r28, r29 +/* 801BCED4 001B9E34 40 82 FF EC */ bne lbl_801BCEC0 +/* 801BCED8 001B9E38 80 7E 01 38 */ lwz r3, 0x138(r30) +/* 801BCEDC 001B9E3C 28 03 00 00 */ cmplwi r3, 0 +/* 801BCEE0 001B9E40 41 82 00 08 */ beq lbl_801BCEE8 +/* 801BCEE4 001B9E44 48 15 8A 4D */ bl Free__7CMemoryFPCv +lbl_801BCEE8: +/* 801BCEE8 001B9E48 34 1E 01 1C */ addic. r0, r30, 0x11c +/* 801BCEEC 001B9E4C 41 82 00 50 */ beq lbl_801BCF3C +/* 801BCEF0 001B9E50 80 1E 01 20 */ lwz r0, 0x120(r30) +/* 801BCEF4 001B9E54 83 9E 01 28 */ lwz r28, 0x128(r30) +/* 801BCEF8 001B9E58 54 00 18 38 */ slwi r0, r0, 3 +/* 801BCEFC 001B9E5C 7F BC 02 14 */ add r29, r28, r0 +/* 801BCF00 001B9E60 93 81 00 1C */ stw r28, 0x1c(r1) +/* 801BCF04 001B9E64 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801BCF08 001B9E68 93 A1 00 20 */ stw r29, 0x20(r1) +/* 801BCF0C 001B9E6C 93 81 00 18 */ stw r28, 0x18(r1) +/* 801BCF10 001B9E70 48 00 00 14 */ b lbl_801BCF24 +lbl_801BCF14: +/* 801BCF14 001B9E74 7F 83 E3 78 */ mr r3, r28 +/* 801BCF18 001B9E78 38 80 FF FF */ li r4, -1 +/* 801BCF1C 001B9E7C 48 18 3F 25 */ bl __dt__6CTokenFv +/* 801BCF20 001B9E80 3B 9C 00 08 */ addi r28, r28, 8 +lbl_801BCF24: +/* 801BCF24 001B9E84 7C 1C E8 40 */ cmplw r28, r29 +/* 801BCF28 001B9E88 40 82 FF EC */ bne lbl_801BCF14 +/* 801BCF2C 001B9E8C 80 7E 01 28 */ lwz r3, 0x128(r30) +/* 801BCF30 001B9E90 28 03 00 00 */ cmplwi r3, 0 +/* 801BCF34 001B9E94 41 82 00 08 */ beq lbl_801BCF3C +/* 801BCF38 001B9E98 48 15 89 F9 */ bl Free__7CMemoryFPCv +lbl_801BCF3C: +/* 801BCF3C 001B9E9C 34 1E 01 0C */ addic. r0, r30, 0x10c +/* 801BCF40 001B9EA0 41 82 00 50 */ beq lbl_801BCF90 +/* 801BCF44 001B9EA4 80 1E 01 10 */ lwz r0, 0x110(r30) +/* 801BCF48 001B9EA8 83 9E 01 18 */ lwz r28, 0x118(r30) +/* 801BCF4C 001B9EAC 54 00 18 38 */ slwi r0, r0, 3 +/* 801BCF50 001B9EB0 7F BC 02 14 */ add r29, r28, r0 +/* 801BCF54 001B9EB4 93 81 00 0C */ stw r28, 0xc(r1) +/* 801BCF58 001B9EB8 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801BCF5C 001B9EBC 93 A1 00 10 */ stw r29, 0x10(r1) +/* 801BCF60 001B9EC0 93 81 00 08 */ stw r28, 8(r1) +/* 801BCF64 001B9EC4 48 00 00 14 */ b lbl_801BCF78 +lbl_801BCF68: +/* 801BCF68 001B9EC8 7F 83 E3 78 */ mr r3, r28 +/* 801BCF6C 001B9ECC 38 80 FF FF */ li r4, -1 +/* 801BCF70 001B9ED0 48 18 3E D1 */ bl __dt__6CTokenFv +/* 801BCF74 001B9ED4 3B 9C 00 08 */ addi r28, r28, 8 +lbl_801BCF78: +/* 801BCF78 001B9ED8 7C 1C E8 40 */ cmplw r28, r29 +/* 801BCF7C 001B9EDC 40 82 FF EC */ bne lbl_801BCF68 +/* 801BCF80 001B9EE0 80 7E 01 18 */ lwz r3, 0x118(r30) +/* 801BCF84 001B9EE4 28 03 00 00 */ cmplwi r3, 0 +/* 801BCF88 001B9EE8 41 82 00 08 */ beq lbl_801BCF90 +/* 801BCF8C 001B9EEC 48 15 89 A5 */ bl Free__7CMemoryFPCv +lbl_801BCF90: +/* 801BCF90 001B9EF0 34 1E 01 04 */ addic. r0, r30, 0x104 +/* 801BCF94 001B9EF4 41 82 00 10 */ beq lbl_801BCFA4 +/* 801BCF98 001B9EF8 38 7E 01 04 */ addi r3, r30, 0x104 +/* 801BCF9C 001B9EFC 38 80 00 00 */ li r4, 0 +/* 801BCFA0 001B9F00 48 18 3E A1 */ bl __dt__6CTokenFv +lbl_801BCFA4: +/* 801BCFA4 001B9F04 38 7E 01 00 */ addi r3, r30, 0x100 +/* 801BCFA8 001B9F08 38 80 FF FF */ li r4, -1 +/* 801BCFAC 001B9F0C 4B F6 2D 5D */ bl "__dt__Q24rstl28single_ptr<14CGunController>Fv" +/* 801BCFB0 001B9F10 34 1E 00 B0 */ addic. r0, r30, 0xb0 +/* 801BCFB4 001B9F14 41 82 00 24 */ beq lbl_801BCFD8 +/* 801BCFB8 001B9F18 88 1E 00 FC */ lbz r0, 0xfc(r30) +/* 801BCFBC 001B9F1C 28 00 00 00 */ cmplwi r0, 0 +/* 801BCFC0 001B9F20 41 82 00 10 */ beq lbl_801BCFD0 +/* 801BCFC4 001B9F24 38 7E 00 B0 */ addi r3, r30, 0xb0 +/* 801BCFC8 001B9F28 38 80 FF FF */ li r4, -1 +/* 801BCFCC 001B9F2C 4B F5 9A 81 */ bl __dt__10CModelDataFv +lbl_801BCFD0: +/* 801BCFD0 001B9F30 38 00 00 00 */ li r0, 0 +/* 801BCFD4 001B9F34 98 1E 00 FC */ stb r0, 0xfc(r30) +lbl_801BCFD8: +/* 801BCFD8 001B9F38 34 1E 00 60 */ addic. r0, r30, 0x60 +/* 801BCFDC 001B9F3C 41 82 00 24 */ beq lbl_801BD000 +/* 801BCFE0 001B9F40 88 1E 00 AC */ lbz r0, 0xac(r30) +/* 801BCFE4 001B9F44 28 00 00 00 */ cmplwi r0, 0 +/* 801BCFE8 001B9F48 41 82 00 10 */ beq lbl_801BCFF8 +/* 801BCFEC 001B9F4C 38 7E 00 60 */ addi r3, r30, 0x60 +/* 801BCFF0 001B9F50 38 80 FF FF */ li r4, -1 +/* 801BCFF4 001B9F54 4B F5 9A 59 */ bl __dt__10CModelDataFv +lbl_801BCFF8: +/* 801BCFF8 001B9F58 38 00 00 00 */ li r0, 0 +/* 801BCFFC 001B9F5C 98 1E 00 AC */ stb r0, 0xac(r30) +lbl_801BD000: +/* 801BD000 001B9F60 34 1E 00 10 */ addic. r0, r30, 0x10 +/* 801BD004 001B9F64 41 82 00 24 */ beq lbl_801BD028 +/* 801BD008 001B9F68 88 1E 00 5C */ lbz r0, 0x5c(r30) +/* 801BD00C 001B9F6C 28 00 00 00 */ cmplwi r0, 0 +/* 801BD010 001B9F70 41 82 00 10 */ beq lbl_801BD020 +/* 801BD014 001B9F74 38 7E 00 10 */ addi r3, r30, 0x10 +/* 801BD018 001B9F78 38 80 FF FF */ li r4, -1 +/* 801BD01C 001B9F7C 4B F5 9A 31 */ bl __dt__10CModelDataFv +lbl_801BD020: +/* 801BD020 001B9F80 38 00 00 00 */ li r0, 0 +/* 801BD024 001B9F84 98 1E 00 5C */ stb r0, 0x5c(r30) +lbl_801BD028: +/* 801BD028 001B9F88 7F E0 07 35 */ extsh. r0, r31 +/* 801BD02C 001B9F8C 40 81 00 0C */ ble lbl_801BD038 +/* 801BD030 001B9F90 7F C3 F3 78 */ mr r3, r30 +/* 801BD034 001B9F94 48 15 88 FD */ bl Free__7CMemoryFPCv +lbl_801BD038: +/* 801BD038 001B9F98 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801BD03C 001B9F9C 7F C3 F3 78 */ mr r3, r30 +/* 801BD040 001B9FA0 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801BD044 001B9FA4 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 801BD048 001B9FA8 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 801BD04C 001B9FAC 83 81 00 40 */ lwz r28, 0x40(r1) +/* 801BD050 001B9FB0 7C 08 03 A6 */ mtlr r0 +/* 801BD054 001B9FB4 38 21 00 50 */ addi r1, r1, 0x50 +/* 801BD058 001B9FB8 4E 80 00 20 */ blr + +.global sub_801bd05c +sub_801bd05c: +/* 801BD05C 001B9FBC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801BD060 001B9FC0 7C 08 02 A6 */ mflr r0 +/* 801BD064 001B9FC4 90 01 00 14 */ stw r0, 0x14(r1) +/* 801BD068 001B9FC8 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801BD06C 001B9FCC 7C 7F 1B 79 */ or. r31, r3, r3 +/* 801BD070 001B9FD0 41 82 01 28 */ beq lbl_801BD198 +/* 801BD074 001B9FD4 34 1F 00 24 */ addic. r0, r31, 0x24 +/* 801BD078 001B9FD8 41 82 00 58 */ beq lbl_801BD0D0 +/* 801BD07C 001B9FDC 80 DF 00 24 */ lwz r6, 0x24(r31) +/* 801BD080 001B9FE0 38 60 00 00 */ li r3, 0 +/* 801BD084 001B9FE4 2C 06 00 00 */ cmpwi r6, 0 +/* 801BD088 001B9FE8 40 81 00 40 */ ble lbl_801BD0C8 +/* 801BD08C 001B9FEC 2C 06 00 08 */ cmpwi r6, 8 +/* 801BD090 001B9FF0 38 A6 FF F8 */ addi r5, r6, -8 +/* 801BD094 001B9FF4 40 81 00 20 */ ble lbl_801BD0B4 +/* 801BD098 001B9FF8 38 05 00 07 */ addi r0, r5, 7 +/* 801BD09C 001B9FFC 54 00 E8 FE */ srwi r0, r0, 3 +/* 801BD0A0 001BA000 7C 09 03 A6 */ mtctr r0 +/* 801BD0A4 001BA004 2C 05 00 00 */ cmpwi r5, 0 +/* 801BD0A8 001BA008 40 81 00 0C */ ble lbl_801BD0B4 +lbl_801BD0AC: +/* 801BD0AC 001BA00C 38 63 00 08 */ addi r3, r3, 8 +/* 801BD0B0 001BA010 42 00 FF FC */ bdnz lbl_801BD0AC +lbl_801BD0B4: +/* 801BD0B4 001BA014 7C 03 30 50 */ subf r0, r3, r6 +/* 801BD0B8 001BA018 7C 09 03 A6 */ mtctr r0 +/* 801BD0BC 001BA01C 7C 03 30 00 */ cmpw r3, r6 +/* 801BD0C0 001BA020 40 80 00 08 */ bge lbl_801BD0C8 +lbl_801BD0C4: +/* 801BD0C4 001BA024 42 00 00 00 */ bdnz lbl_801BD0C4 +lbl_801BD0C8: +/* 801BD0C8 001BA028 38 00 00 00 */ li r0, 0 +/* 801BD0CC 001BA02C 90 1F 00 24 */ stw r0, 0x24(r31) +lbl_801BD0D0: +/* 801BD0D0 001BA030 34 1F 00 1C */ addic. r0, r31, 0x1c +/* 801BD0D4 001BA034 41 82 00 58 */ beq lbl_801BD12C +/* 801BD0D8 001BA038 80 DF 00 1C */ lwz r6, 0x1c(r31) +/* 801BD0DC 001BA03C 38 60 00 00 */ li r3, 0 +/* 801BD0E0 001BA040 2C 06 00 00 */ cmpwi r6, 0 +/* 801BD0E4 001BA044 40 81 00 40 */ ble lbl_801BD124 +/* 801BD0E8 001BA048 2C 06 00 08 */ cmpwi r6, 8 +/* 801BD0EC 001BA04C 38 A6 FF F8 */ addi r5, r6, -8 +/* 801BD0F0 001BA050 40 81 00 20 */ ble lbl_801BD110 +/* 801BD0F4 001BA054 38 05 00 07 */ addi r0, r5, 7 +/* 801BD0F8 001BA058 54 00 E8 FE */ srwi r0, r0, 3 +/* 801BD0FC 001BA05C 7C 09 03 A6 */ mtctr r0 +/* 801BD100 001BA060 2C 05 00 00 */ cmpwi r5, 0 +/* 801BD104 001BA064 40 81 00 0C */ ble lbl_801BD110 +lbl_801BD108: +/* 801BD108 001BA068 38 63 00 08 */ addi r3, r3, 8 +/* 801BD10C 001BA06C 42 00 FF FC */ bdnz lbl_801BD108 +lbl_801BD110: +/* 801BD110 001BA070 7C 03 30 50 */ subf r0, r3, r6 +/* 801BD114 001BA074 7C 09 03 A6 */ mtctr r0 +/* 801BD118 001BA078 7C 03 30 00 */ cmpw r3, r6 +/* 801BD11C 001BA07C 40 80 00 08 */ bge lbl_801BD124 +lbl_801BD120: +/* 801BD120 001BA080 42 00 00 00 */ bdnz lbl_801BD120 +lbl_801BD124: +/* 801BD124 001BA084 38 00 00 00 */ li r0, 0 +/* 801BD128 001BA088 90 1F 00 1C */ stw r0, 0x1c(r31) +lbl_801BD12C: +/* 801BD12C 001BA08C 28 1F 00 00 */ cmplwi r31, 0 +/* 801BD130 001BA090 41 82 00 58 */ beq lbl_801BD188 +/* 801BD134 001BA094 80 DF 00 00 */ lwz r6, 0(r31) +/* 801BD138 001BA098 38 60 00 00 */ li r3, 0 +/* 801BD13C 001BA09C 2C 06 00 00 */ cmpwi r6, 0 +/* 801BD140 001BA0A0 40 81 00 40 */ ble lbl_801BD180 +/* 801BD144 001BA0A4 2C 06 00 08 */ cmpwi r6, 8 +/* 801BD148 001BA0A8 38 A6 FF F8 */ addi r5, r6, -8 +/* 801BD14C 001BA0AC 40 81 00 20 */ ble lbl_801BD16C +/* 801BD150 001BA0B0 38 05 00 07 */ addi r0, r5, 7 +/* 801BD154 001BA0B4 54 00 E8 FE */ srwi r0, r0, 3 +/* 801BD158 001BA0B8 7C 09 03 A6 */ mtctr r0 +/* 801BD15C 001BA0BC 2C 05 00 00 */ cmpwi r5, 0 +/* 801BD160 001BA0C0 40 81 00 0C */ ble lbl_801BD16C +lbl_801BD164: +/* 801BD164 001BA0C4 38 63 00 08 */ addi r3, r3, 8 +/* 801BD168 001BA0C8 42 00 FF FC */ bdnz lbl_801BD164 +lbl_801BD16C: +/* 801BD16C 001BA0CC 7C 03 30 50 */ subf r0, r3, r6 +/* 801BD170 001BA0D0 7C 09 03 A6 */ mtctr r0 +/* 801BD174 001BA0D4 7C 03 30 00 */ cmpw r3, r6 +/* 801BD178 001BA0D8 40 80 00 08 */ bge lbl_801BD180 +lbl_801BD17C: +/* 801BD17C 001BA0DC 42 00 00 00 */ bdnz lbl_801BD17C +lbl_801BD180: +/* 801BD180 001BA0E0 38 00 00 00 */ li r0, 0 +/* 801BD184 001BA0E4 90 1F 00 00 */ stw r0, 0(r31) +lbl_801BD188: +/* 801BD188 001BA0E8 7C 80 07 35 */ extsh. r0, r4 +/* 801BD18C 001BA0EC 40 81 00 0C */ ble lbl_801BD198 +/* 801BD190 001BA0F0 7F E3 FB 78 */ mr r3, r31 +/* 801BD194 001BA0F4 48 15 87 9D */ bl Free__7CMemoryFPCv +lbl_801BD198: +/* 801BD198 001BA0F8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801BD19C 001BA0FC 7F E3 FB 78 */ mr r3, r31 +/* 801BD1A0 001BA100 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801BD1A4 001BA104 7C 08 03 A6 */ mtlr r0 +/* 801BD1A8 001BA108 38 21 00 10 */ addi r1, r1, 0x10 +/* 801BD1AC 001BA10C 4E 80 00 20 */ blr + +.global __ct__10CGunWeaponFUi11EWeaponType9TUniqueId14EMaterialTypesRC9CVector3f +__ct__10CGunWeaponFUi11EWeaponType9TUniqueId14EMaterialTypesRC9CVector3f: +/* 801BD1B0 001BA110 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801BD1B4 001BA114 7C 08 02 A6 */ mflr r0 +/* 801BD1B8 001BA118 3D 20 80 3E */ lis r9, lbl_803E52B0@ha +/* 801BD1BC 001BA11C 90 01 00 44 */ stw r0, 0x44(r1) +/* 801BD1C0 001BA120 38 09 52 B0 */ addi r0, r9, lbl_803E52B0@l +/* 801BD1C4 001BA124 39 20 00 00 */ li r9, 0 +/* 801BD1C8 001BA128 BF 41 00 28 */ stmw r26, 0x28(r1) +/* 801BD1CC 001BA12C 7C 7E 1B 78 */ mr r30, r3 +/* 801BD1D0 001BA130 7C BB 2B 78 */ mr r27, r5 +/* 801BD1D4 001BA134 3C 60 41 4E */ lis r3, 0x414E4353@ha +/* 801BD1D8 001BA138 7C 9F 23 78 */ mr r31, r4 +/* 801BD1DC 001BA13C 7C DC 33 78 */ mr r28, r6 +/* 801BD1E0 001BA140 7C FD 3B 78 */ mr r29, r7 +/* 801BD1E4 001BA144 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801BD1E8 001BA148 90 1E 00 00 */ stw r0, 0(r30) +/* 801BD1EC 001BA14C 38 03 43 53 */ addi r0, r3, 0x414E4353@l +/* 801BD1F0 001BA150 38 61 00 18 */ addi r3, r1, 0x18 +/* 801BD1F4 001BA154 C0 08 00 00 */ lfs f0, 0(r8) +/* 801BD1F8 001BA158 D0 1E 00 04 */ stfs f0, 4(r30) +/* 801BD1FC 001BA15C C0 08 00 04 */ lfs f0, 4(r8) +/* 801BD200 001BA160 D0 1E 00 08 */ stfs f0, 8(r30) +/* 801BD204 001BA164 C0 08 00 08 */ lfs f0, 8(r8) +/* 801BD208 001BA168 D0 1E 00 0C */ stfs f0, 0xc(r30) +/* 801BD20C 001BA16C 99 3E 00 5C */ stb r9, 0x5c(r30) +/* 801BD210 001BA170 99 3E 00 AC */ stb r9, 0xac(r30) +/* 801BD214 001BA174 99 3E 00 FC */ stb r9, 0xfc(r30) +/* 801BD218 001BA178 91 3E 01 00 */ stw r9, 0x100(r30) +/* 801BD21C 001BA17C 90 01 00 20 */ stw r0, 0x20(r1) +/* 801BD220 001BA180 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801BD224 001BA184 93 E1 00 24 */ stw r31, 0x24(r1) +/* 801BD228 001BA188 81 84 00 00 */ lwz r12, 0(r4) +/* 801BD22C 001BA18C 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801BD230 001BA190 7D 89 03 A6 */ mtctr r12 +/* 801BD234 001BA194 4E 80 04 21 */ bctrl +/* 801BD238 001BA198 38 7E 01 04 */ addi r3, r30, 0x104 +/* 801BD23C 001BA19C 38 81 00 18 */ addi r4, r1, 0x18 +/* 801BD240 001BA1A0 48 18 3C 69 */ bl __ct__6CTokenFRC6CToken +/* 801BD244 001BA1A4 38 61 00 18 */ addi r3, r1, 0x18 +/* 801BD248 001BA1A8 38 80 FF FF */ li r4, -1 +/* 801BD24C 001BA1AC 48 18 3B F5 */ bl __dt__6CTokenFv +/* 801BD250 001BA1B0 38 00 00 00 */ li r0, 0 +/* 801BD254 001BA1B4 3C 60 80 3D */ lis r3, lbl_803D17DC@ha +/* 801BD258 001BA1B8 90 1E 01 10 */ stw r0, 0x110(r30) +/* 801BD25C 001BA1BC 38 83 17 DC */ addi r4, r3, lbl_803D17DC@l +/* 801BD260 001BA1C0 38 61 00 10 */ addi r3, r1, 0x10 +/* 801BD264 001BA1C4 80 A4 00 00 */ lwz r5, 0(r4) +/* 801BD268 001BA1C8 90 1E 01 14 */ stw r0, 0x114(r30) +/* 801BD26C 001BA1CC 90 1E 01 18 */ stw r0, 0x118(r30) +/* 801BD270 001BA1D0 90 1E 01 20 */ stw r0, 0x120(r30) +/* 801BD274 001BA1D4 90 1E 01 24 */ stw r0, 0x124(r30) +/* 801BD278 001BA1D8 90 1E 01 28 */ stw r0, 0x128(r30) +/* 801BD27C 001BA1DC 90 1E 01 30 */ stw r0, 0x130(r30) +/* 801BD280 001BA1E0 90 1E 01 34 */ stw r0, 0x134(r30) +/* 801BD284 001BA1E4 90 1E 01 38 */ stw r0, 0x138(r30) +/* 801BD288 001BA1E8 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801BD28C 001BA1EC 81 84 00 00 */ lwz r12, 0(r4) +/* 801BD290 001BA1F0 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801BD294 001BA1F4 7D 89 03 A6 */ mtctr r12 +/* 801BD298 001BA1F8 4E 80 04 21 */ bctrl +/* 801BD29C 001BA1FC 38 7E 01 3C */ addi r3, r30, 0x13c +/* 801BD2A0 001BA200 38 81 00 10 */ addi r4, r1, 0x10 +/* 801BD2A4 001BA204 48 18 3C 05 */ bl __ct__6CTokenFRC6CToken +/* 801BD2A8 001BA208 38 61 00 10 */ addi r3, r1, 0x10 +/* 801BD2AC 001BA20C 38 80 FF FF */ li r4, -1 +/* 801BD2B0 001BA210 48 18 3B 91 */ bl __dt__6CTokenFv +/* 801BD2B4 001BA214 38 00 00 00 */ li r0, 0 +/* 801BD2B8 001BA218 7F 63 DB 78 */ mr r3, r27 +/* 801BD2BC 001BA21C 90 1E 01 44 */ stw r0, 0x144(r30) +/* 801BD2C0 001BA220 48 00 01 29 */ bl GetWeaponIndex__F11EWeaponType +/* 801BD2C4 001BA224 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801BD2C8 001BA228 3C A0 80 3D */ lis r5, lbl_803D17A0@ha +/* 801BD2CC 001BA22C 54 60 10 3A */ slwi r0, r3, 2 +/* 801BD2D0 001BA230 38 61 00 08 */ addi r3, r1, 8 +/* 801BD2D4 001BA234 81 84 00 00 */ lwz r12, 0(r4) +/* 801BD2D8 001BA238 38 A5 17 A0 */ addi r5, r5, lbl_803D17A0@l +/* 801BD2DC 001BA23C 7C A5 00 2E */ lwzx r5, r5, r0 +/* 801BD2E0 001BA240 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801BD2E4 001BA244 7D 89 03 A6 */ mtctr r12 +/* 801BD2E8 001BA248 4E 80 04 21 */ bctrl +/* 801BD2EC 001BA24C 3B 5E 01 60 */ addi r26, r30, 0x160 +/* 801BD2F0 001BA250 38 81 00 08 */ addi r4, r1, 8 +/* 801BD2F4 001BA254 7F 43 D3 78 */ mr r3, r26 +/* 801BD2F8 001BA258 48 18 3B B1 */ bl __ct__6CTokenFRC6CToken +/* 801BD2FC 001BA25C 38 00 00 00 */ li r0, 0 +/* 801BD300 001BA260 38 61 00 08 */ addi r3, r1, 8 +/* 801BD304 001BA264 90 1A 00 08 */ stw r0, 8(r26) +/* 801BD308 001BA268 38 80 FF FF */ li r4, -1 +/* 801BD30C 001BA26C 48 18 3B 35 */ bl __dt__6CTokenFv +/* 801BD310 001BA270 38 80 00 00 */ li r4, 0 +/* 801BD314 001BA274 7F 63 DB 78 */ mr r3, r27 +/* 801BD318 001BA278 90 9E 01 6C */ stw r4, 0x16c(r30) +/* 801BD31C 001BA27C 90 9E 01 88 */ stw r4, 0x188(r30) +/* 801BD320 001BA280 90 9E 01 A4 */ stw r4, 0x1a4(r30) +/* 801BD324 001BA284 90 9E 01 B8 */ stw r4, 0x1b8(r30) +/* 801BD328 001BA288 90 9E 01 BC */ stw r4, 0x1bc(r30) +/* 801BD32C 001BA28C 93 7E 01 C0 */ stw r27, 0x1c0(r30) +/* 801BD330 001BA290 A0 1C 00 00 */ lhz r0, 0(r28) +/* 801BD334 001BA294 B0 1E 01 C4 */ sth r0, 0x1c4(r30) +/* 801BD338 001BA298 93 BE 01 C8 */ stw r29, 0x1c8(r30) +/* 801BD33C 001BA29C 90 9E 01 CC */ stw r4, 0x1cc(r30) +/* 801BD340 001BA2A0 90 9E 01 D0 */ stw r4, 0x1d0(r30) +/* 801BD344 001BA2A4 90 9E 01 EC */ stw r4, 0x1ec(r30) +/* 801BD348 001BA2A8 90 9E 01 F4 */ stw r4, 0x1f4(r30) +/* 801BD34C 001BA2AC 48 00 00 9D */ bl GetWeaponIndex__F11EWeaponType +/* 801BD350 001BA2B0 90 7E 02 00 */ stw r3, 0x200(r30) +/* 801BD354 001BA2B4 38 80 00 00 */ li r4, 0 +/* 801BD358 001BA2B8 7F C3 F3 78 */ mr r3, r30 +/* 801BD35C 001BA2BC 90 9E 02 04 */ stw r4, 0x204(r30) +/* 801BD360 001BA2C0 90 9E 02 08 */ stw r4, 0x208(r30) +/* 801BD364 001BA2C4 80 1E 02 00 */ lwz r0, 0x200(r30) +/* 801BD368 001BA2C8 90 1E 02 0C */ stw r0, 0x20c(r30) +/* 801BD36C 001BA2CC 90 9E 02 10 */ stw r4, 0x210(r30) +/* 801BD370 001BA2D0 93 FE 02 14 */ stw r31, 0x214(r30) +/* 801BD374 001BA2D4 88 1E 02 18 */ lbz r0, 0x218(r30) +/* 801BD378 001BA2D8 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801BD37C 001BA2DC 98 1E 02 18 */ stb r0, 0x218(r30) +/* 801BD380 001BA2E0 88 1E 02 18 */ lbz r0, 0x218(r30) +/* 801BD384 001BA2E4 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 801BD388 001BA2E8 98 1E 02 18 */ stb r0, 0x218(r30) +/* 801BD38C 001BA2EC 88 1E 02 18 */ lbz r0, 0x218(r30) +/* 801BD390 001BA2F0 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 801BD394 001BA2F4 98 1E 02 18 */ stb r0, 0x218(r30) +/* 801BD398 001BA2F8 88 1E 02 18 */ lbz r0, 0x218(r30) +/* 801BD39C 001BA2FC 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 801BD3A0 001BA300 98 1E 02 18 */ stb r0, 0x218(r30) +/* 801BD3A4 001BA304 88 1E 02 18 */ lbz r0, 0x218(r30) +/* 801BD3A8 001BA308 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c +/* 801BD3AC 001BA30C 98 1E 02 18 */ stb r0, 0x218(r30) +/* 801BD3B0 001BA310 88 1E 02 18 */ lbz r0, 0x218(r30) +/* 801BD3B4 001BA314 50 80 17 7A */ rlwimi r0, r4, 2, 0x1d, 0x1d +/* 801BD3B8 001BA318 98 1E 02 18 */ stb r0, 0x218(r30) +/* 801BD3BC 001BA31C 80 9E 02 00 */ lwz r4, 0x200(r30) +/* 801BD3C0 001BA320 4B FF DD D5 */ bl AllocResPools__10CGunWeaponFQ212CPlayerState7EBeamId +/* 801BD3C4 001BA324 80 9E 02 00 */ lwz r4, 0x200(r30) +/* 801BD3C8 001BA328 7F C3 F3 78 */ mr r3, r30 +/* 801BD3CC 001BA32C 4B FF D2 ED */ bl BuildDependencyList__10CGunWeaponFQ212CPlayerState7EBeamId +/* 801BD3D0 001BA330 7F C3 F3 78 */ mr r3, r30 +/* 801BD3D4 001BA334 BB 41 00 28 */ lmw r26, 0x28(r1) +/* 801BD3D8 001BA338 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801BD3DC 001BA33C 7C 08 03 A6 */ mtlr r0 +/* 801BD3E0 001BA340 38 21 00 40 */ addi r1, r1, 0x40 +/* 801BD3E4 001BA344 4E 80 00 20 */ blr + +.global GetWeaponIndex__F11EWeaponType +GetWeaponIndex__F11EWeaponType: +/* 801BD3E8 001BA348 2C 03 00 03 */ cmpwi r3, 3 +/* 801BD3EC 001BA34C 41 82 00 44 */ beq lbl_801BD430 +/* 801BD3F0 001BA350 40 80 00 1C */ bge lbl_801BD40C +/* 801BD3F4 001BA354 2C 03 00 01 */ cmpwi r3, 1 +/* 801BD3F8 001BA358 41 82 00 28 */ beq lbl_801BD420 +/* 801BD3FC 001BA35C 40 80 00 2C */ bge lbl_801BD428 +/* 801BD400 001BA360 2C 03 00 00 */ cmpwi r3, 0 +/* 801BD404 001BA364 40 80 00 14 */ bge lbl_801BD418 +/* 801BD408 001BA368 48 00 00 38 */ b lbl_801BD440 +lbl_801BD40C: +/* 801BD40C 001BA36C 2C 03 00 08 */ cmpwi r3, 8 +/* 801BD410 001BA370 41 82 00 28 */ beq lbl_801BD438 +/* 801BD414 001BA374 48 00 00 2C */ b lbl_801BD440 +lbl_801BD418: +/* 801BD418 001BA378 38 60 00 00 */ li r3, 0 +/* 801BD41C 001BA37C 4E 80 00 20 */ blr +lbl_801BD420: +/* 801BD420 001BA380 38 60 00 01 */ li r3, 1 +/* 801BD424 001BA384 4E 80 00 20 */ blr +lbl_801BD428: +/* 801BD428 001BA388 38 60 00 02 */ li r3, 2 +/* 801BD42C 001BA38C 4E 80 00 20 */ blr +lbl_801BD430: +/* 801BD430 001BA390 38 60 00 03 */ li r3, 3 +/* 801BD434 001BA394 4E 80 00 20 */ blr +lbl_801BD438: +/* 801BD438 001BA398 38 60 00 04 */ li r3, 4 +/* 801BD43C 001BA39C 4E 80 00 20 */ blr +lbl_801BD440: +/* 801BD440 001BA3A0 38 60 00 00 */ li r3, 0 +/* 801BD444 001BA3A4 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Weapons/CProjectileInfo.s b/asm/Kyoto_CWD/Weapons/CProjectileInfo.s new file mode 100644 index 00000000..2e85ad27 --- /dev/null +++ b/asm/Kyoto_CWD/Weapons/CProjectileInfo.s @@ -0,0 +1,333 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global PredictInterceptPos__15CProjectileInfoFRC9CVector3fRC9CVector3fRC7CPlayerbff +PredictInterceptPos__15CProjectileInfoFRC9CVector3fRC9CVector3fRC7CPlayerbff: +/* 8021BC98 00218BF8 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 8021BC9C 00218BFC 7C 08 02 A6 */ mflr r0 +/* 8021BCA0 00218C00 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 8021BCA4 00218C04 DB E1 00 90 */ stfd f31, 0x90(r1) +/* 8021BCA8 00218C08 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 +/* 8021BCAC 00218C0C DB C1 00 80 */ stfd f30, 0x80(r1) +/* 8021BCB0 00218C10 F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 +/* 8021BCB4 00218C14 BF 61 00 6C */ stmw r27, 0x6c(r1) +/* 8021BCB8 00218C18 3D 00 80 5A */ lis r8, skZero3f@ha +/* 8021BCBC 00218C1C 7C 7E 1B 78 */ mr r30, r3 +/* 8021BCC0 00218C20 38 68 66 A0 */ addi r3, r8, skZero3f@l +/* 8021BCC4 00218C24 FF C0 08 90 */ fmr f30, f1 +/* 8021BCC8 00218C28 C0 63 00 00 */ lfs f3, 0(r3) +/* 8021BCCC 00218C2C FF E0 10 90 */ fmr f31, f2 +/* 8021BCD0 00218C30 C0 23 00 04 */ lfs f1, 4(r3) +/* 8021BCD4 00218C34 7C DC 33 78 */ mr r28, r6 +/* 8021BCD8 00218C38 C0 03 00 08 */ lfs f0, 8(r3) +/* 8021BCDC 00218C3C 7C 9B 23 78 */ mr r27, r4 +/* 8021BCE0 00218C40 D0 61 00 50 */ stfs f3, 0x50(r1) +/* 8021BCE4 00218C44 7C BF 2B 78 */ mr r31, r5 +/* 8021BCE8 00218C48 7C FD 3B 78 */ mr r29, r7 +/* 8021BCEC 00218C4C D0 21 00 54 */ stfs f1, 0x54(r1) +/* 8021BCF0 00218C50 7F 84 E3 78 */ mr r4, r28 +/* 8021BCF4 00218C54 38 61 00 20 */ addi r3, r1, 0x20 +/* 8021BCF8 00218C58 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 8021BCFC 00218C5C 48 06 C7 F5 */ bl GetDampedClampedVelocityWR__7CPlayerCFv +/* 8021BD00 00218C60 C0 41 00 20 */ lfs f2, 0x20(r1) +/* 8021BD04 00218C64 7F 83 E3 78 */ mr r3, r28 +/* 8021BD08 00218C68 C0 21 00 24 */ lfs f1, 0x24(r1) +/* 8021BD0C 00218C6C C0 01 00 28 */ lfs f0, 0x28(r1) +/* 8021BD10 00218C70 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 8021BD14 00218C74 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 8021BD18 00218C78 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 8021BD1C 00218C7C 48 06 C6 41 */ bl GetGravity__7CPlayerCFv +/* 8021BD20 00218C80 80 1C 03 04 */ lwz r0, 0x304(r28) +/* 8021BD24 00218C84 38 60 00 00 */ li r3, 0 +/* 8021BD28 00218C88 C0 02 B3 E0 */ lfs f0, lbl_805AD100@sda21(r2) +/* 8021BD2C 00218C8C 2C 00 00 00 */ cmpwi r0, 0 +/* 8021BD30 00218C90 D0 21 00 40 */ stfs f1, 0x40(r1) +/* 8021BD34 00218C94 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 8021BD38 00218C98 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 8021BD3C 00218C9C 41 82 00 E0 */ beq lbl_8021BE1C +/* 8021BD40 00218CA0 41 80 01 28 */ blt lbl_8021BE68 +/* 8021BD44 00218CA4 2C 00 00 06 */ cmpwi r0, 6 +/* 8021BD48 00218CA8 40 80 01 20 */ bge lbl_8021BE68 +/* 8021BD4C 00218CAC 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 8021BD50 00218CB0 3B BC 03 14 */ addi r29, r28, 0x314 +/* 8021BD54 00218CB4 41 82 00 38 */ beq lbl_8021BD8C +/* 8021BD58 00218CB8 80 1C 02 58 */ lwz r0, 0x258(r28) +/* 8021BD5C 00218CBC 2C 00 00 02 */ cmpwi r0, 2 +/* 8021BD60 00218CC0 40 82 00 2C */ bne lbl_8021BD8C +/* 8021BD64 00218CC4 FC 20 F0 90 */ fmr f1, f30 +/* 8021BD68 00218CC8 7F 63 DB 78 */ mr r3, r27 +/* 8021BD6C 00218CCC FC 40 F8 90 */ fmr f2, f31 +/* 8021BD70 00218CD0 7F E4 FB 78 */ mr r4, r31 +/* 8021BD74 00218CD4 7F A7 EB 78 */ mr r7, r29 +/* 8021BD78 00218CD8 38 A1 00 44 */ addi r5, r1, 0x44 +/* 8021BD7C 00218CDC 38 C1 00 38 */ addi r6, r1, 0x38 +/* 8021BD80 00218CE0 39 01 00 50 */ addi r8, r1, 0x50 +/* 8021BD84 00218CE4 4B F2 0F CD */ bl ProjectOrbitalIntersection__18CSteeringBehaviorsFRC9CVector3ffRC9CVector3fRC9CVector3fRC9CVector3fRC9CVector3fR9CVector3f +/* 8021BD88 00218CE8 48 00 00 E0 */ b lbl_8021BE68 +lbl_8021BD8C: +/* 8021BD8C 00218CEC 38 61 00 44 */ addi r3, r1, 0x44 +/* 8021BD90 00218CF0 48 0F 89 69 */ bl CanBeNormalized__9CVector3fCFv +/* 8021BD94 00218CF4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8021BD98 00218CF8 41 82 00 44 */ beq lbl_8021BDDC +/* 8021BD9C 00218CFC 38 61 00 14 */ addi r3, r1, 0x14 +/* 8021BDA0 00218D00 38 81 00 44 */ addi r4, r1, 0x44 +/* 8021BDA4 00218D04 48 0F 8A AD */ bl AsNormalized__9CVector3fCFv +/* 8021BDA8 00218D08 7F 83 E3 78 */ mr r3, r28 +/* 8021BDAC 00218D0C 48 06 C6 7D */ bl GetAverageSpeed__7CPlayerCFv +/* 8021BDB0 00218D10 C0 61 00 14 */ lfs f3, 0x14(r1) +/* 8021BDB4 00218D14 39 01 00 08 */ addi r8, r1, 8 +/* 8021BDB8 00218D18 C0 41 00 18 */ lfs f2, 0x18(r1) +/* 8021BDBC 00218D1C C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 8021BDC0 00218D20 EC 61 00 F2 */ fmuls f3, f1, f3 +/* 8021BDC4 00218D24 EC 41 00 B2 */ fmuls f2, f1, f2 +/* 8021BDC8 00218D28 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8021BDCC 00218D2C D0 61 00 08 */ stfs f3, 8(r1) +/* 8021BDD0 00218D30 D0 41 00 0C */ stfs f2, 0xc(r1) +/* 8021BDD4 00218D34 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 8021BDD8 00218D38 48 00 00 08 */ b lbl_8021BDE0 +lbl_8021BDDC: +/* 8021BDDC 00218D3C 39 01 00 44 */ addi r8, r1, 0x44 +lbl_8021BDE0: +/* 8021BDE0 00218D40 C0 08 00 00 */ lfs f0, 0(r8) +/* 8021BDE4 00218D44 FC 20 F0 90 */ fmr f1, f30 +/* 8021BDE8 00218D48 FC 40 F8 90 */ fmr f2, f31 +/* 8021BDEC 00218D4C 7F 63 DB 78 */ mr r3, r27 +/* 8021BDF0 00218D50 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 8021BDF4 00218D54 7F E4 FB 78 */ mr r4, r31 +/* 8021BDF8 00218D58 7F A6 EB 78 */ mr r6, r29 +/* 8021BDFC 00218D5C C0 08 00 04 */ lfs f0, 4(r8) +/* 8021BE00 00218D60 38 A1 00 2C */ addi r5, r1, 0x2c +/* 8021BE04 00218D64 38 E1 00 50 */ addi r7, r1, 0x50 +/* 8021BE08 00218D68 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 8021BE0C 00218D6C C0 08 00 08 */ lfs f0, 8(r8) +/* 8021BE10 00218D70 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 8021BE14 00218D74 4B F2 13 59 */ bl ProjectOrbitalIntersection__18CSteeringBehaviorsFRC9CVector3ffRC9CVector3fRC9CVector3fRC9CVector3fR9CVector3f +/* 8021BE18 00218D78 48 00 00 50 */ b lbl_8021BE68 +lbl_8021BE1C: +/* 8021BE1C 00218D7C 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 8021BE20 00218D80 41 82 00 30 */ beq lbl_8021BE50 +/* 8021BE24 00218D84 80 1C 02 58 */ lwz r0, 0x258(r28) +/* 8021BE28 00218D88 2C 00 00 02 */ cmpwi r0, 2 +/* 8021BE2C 00218D8C 40 82 00 24 */ bne lbl_8021BE50 +/* 8021BE30 00218D90 FC 20 F0 90 */ fmr f1, f30 +/* 8021BE34 00218D94 7F 63 DB 78 */ mr r3, r27 +/* 8021BE38 00218D98 7F E4 FB 78 */ mr r4, r31 +/* 8021BE3C 00218D9C 38 A1 00 44 */ addi r5, r1, 0x44 +/* 8021BE40 00218DA0 38 C1 00 38 */ addi r6, r1, 0x38 +/* 8021BE44 00218DA4 38 E1 00 50 */ addi r7, r1, 0x50 +/* 8021BE48 00218DA8 4B F2 17 25 */ bl ProjectLinearIntersection__18CSteeringBehaviorsFRC9CVector3ffRC9CVector3fRC9CVector3fRC9CVector3fR9CVector3f +/* 8021BE4C 00218DAC 48 00 00 1C */ b lbl_8021BE68 +lbl_8021BE50: +/* 8021BE50 00218DB0 FC 20 F0 90 */ fmr f1, f30 +/* 8021BE54 00218DB4 7F 63 DB 78 */ mr r3, r27 +/* 8021BE58 00218DB8 7F E4 FB 78 */ mr r4, r31 +/* 8021BE5C 00218DBC 38 A1 00 44 */ addi r5, r1, 0x44 +/* 8021BE60 00218DC0 38 C1 00 50 */ addi r6, r1, 0x50 +/* 8021BE64 00218DC4 4B F2 1A 15 */ bl ProjectLinearIntersection__18CSteeringBehaviorsFRC9CVector3ffRC9CVector3fRC9CVector3fR9CVector3f +lbl_8021BE68: +/* 8021BE68 00218DC8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8021BE6C 00218DCC 40 82 00 44 */ bne lbl_8021BEB0 +/* 8021BE70 00218DD0 C0 A2 B3 E4 */ lfs f5, lbl_805AD104@sda21(r2) +/* 8021BE74 00218DD4 C0 41 00 48 */ lfs f2, 0x48(r1) +/* 8021BE78 00218DD8 C0 21 00 4C */ lfs f1, 0x4c(r1) +/* 8021BE7C 00218DDC C0 01 00 44 */ lfs f0, 0x44(r1) +/* 8021BE80 00218DE0 EC 85 00 B2 */ fmuls f4, f5, f2 +/* 8021BE84 00218DE4 C0 DF 00 04 */ lfs f6, 4(r31) +/* 8021BE88 00218DE8 EC 45 00 72 */ fmuls f2, f5, f1 +/* 8021BE8C 00218DEC C0 7F 00 08 */ lfs f3, 8(r31) +/* 8021BE90 00218DF0 EC 05 00 32 */ fmuls f0, f5, f0 +/* 8021BE94 00218DF4 C0 3F 00 00 */ lfs f1, 0(r31) +/* 8021BE98 00218DF8 EC 86 20 2A */ fadds f4, f6, f4 +/* 8021BE9C 00218DFC EC 43 10 2A */ fadds f2, f3, f2 +/* 8021BEA0 00218E00 EC 01 00 2A */ fadds f0, f1, f0 +/* 8021BEA4 00218E04 D0 81 00 54 */ stfs f4, 0x54(r1) +/* 8021BEA8 00218E08 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 8021BEAC 00218E0C D0 41 00 58 */ stfs f2, 0x58(r1) +lbl_8021BEB0: +/* 8021BEB0 00218E10 C0 01 00 50 */ lfs f0, 0x50(r1) +/* 8021BEB4 00218E14 D0 1E 00 00 */ stfs f0, 0(r30) +/* 8021BEB8 00218E18 C0 01 00 54 */ lfs f0, 0x54(r1) +/* 8021BEBC 00218E1C D0 1E 00 04 */ stfs f0, 4(r30) +/* 8021BEC0 00218E20 C0 01 00 58 */ lfs f0, 0x58(r1) +/* 8021BEC4 00218E24 D0 1E 00 08 */ stfs f0, 8(r30) +/* 8021BEC8 00218E28 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 +/* 8021BECC 00218E2C CB E1 00 90 */ lfd f31, 0x90(r1) +/* 8021BED0 00218E30 E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 +/* 8021BED4 00218E34 CB C1 00 80 */ lfd f30, 0x80(r1) +/* 8021BED8 00218E38 BB 61 00 6C */ lmw r27, 0x6c(r1) +/* 8021BEDC 00218E3C 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 8021BEE0 00218E40 7C 08 03 A6 */ mtlr r0 +/* 8021BEE4 00218E44 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 8021BEE8 00218E48 4E 80 00 20 */ blr + +.global PredictInterceptPos__15CProjectileInfoFRC9CVector3fRC9CVector3fRC7CPlayerbf +PredictInterceptPos__15CProjectileInfoFRC9CVector3fRC9CVector3fRC7CPlayerbf: +/* 8021BEEC 00218E4C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8021BEF0 00218E50 7C 08 02 A6 */ mflr r0 +/* 8021BEF4 00218E54 90 01 00 34 */ stw r0, 0x34(r1) +/* 8021BEF8 00218E58 DB E1 00 28 */ stfd f31, 0x28(r1) +/* 8021BEFC 00218E5C FF E0 08 90 */ fmr f31, f1 +/* 8021BF00 00218E60 BF 61 00 14 */ stmw r27, 0x14(r1) +/* 8021BF04 00218E64 7C 7B 1B 78 */ mr r27, r3 +/* 8021BF08 00218E68 7C BC 2B 78 */ mr r28, r5 +/* 8021BF0C 00218E6C 7C DD 33 78 */ mr r29, r6 +/* 8021BF10 00218E70 7C FE 3B 78 */ mr r30, r7 +/* 8021BF14 00218E74 7D 1F 43 78 */ mr r31, r8 +/* 8021BF18 00218E78 7C 83 23 78 */ mr r3, r4 +/* 8021BF1C 00218E7C 48 00 00 39 */ bl GetProjectileSpeed__15CProjectileInfoCFv +/* 8021BF20 00218E80 FC 40 F8 90 */ fmr f2, f31 +/* 8021BF24 00218E84 7F 63 DB 78 */ mr r3, r27 +/* 8021BF28 00218E88 7F 84 E3 78 */ mr r4, r28 +/* 8021BF2C 00218E8C 7F A5 EB 78 */ mr r5, r29 +/* 8021BF30 00218E90 7F C6 F3 78 */ mr r6, r30 +/* 8021BF34 00218E94 7F E7 FB 78 */ mr r7, r31 +/* 8021BF38 00218E98 4B FF FD 61 */ bl PredictInterceptPos__15CProjectileInfoFRC9CVector3fRC9CVector3fRC7CPlayerbff +/* 8021BF3C 00218E9C CB E1 00 28 */ lfd f31, 0x28(r1) +/* 8021BF40 00218EA0 BB 61 00 14 */ lmw r27, 0x14(r1) +/* 8021BF44 00218EA4 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8021BF48 00218EA8 7C 08 03 A6 */ mtlr r0 +/* 8021BF4C 00218EAC 38 21 00 30 */ addi r1, r1, 0x30 +/* 8021BF50 00218EB0 4E 80 00 20 */ blr + +.global GetProjectileSpeed__15CProjectileInfoCFv +GetProjectileSpeed__15CProjectileInfoCFv: +/* 8021BF54 00218EB4 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8021BF58 00218EB8 7C 08 02 A6 */ mflr r0 +/* 8021BF5C 00218EBC 90 01 00 34 */ stw r0, 0x34(r1) +/* 8021BF60 00218EC0 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 8021BF64 00218EC4 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 8021BF68 00218EC8 C3 E2 B3 E8 */ lfs f31, lbl_805AD108@sda21(r2) +/* 8021BF6C 00218ECC 7C 64 1B 78 */ mr r4, r3 +/* 8021BF70 00218ED0 38 61 00 08 */ addi r3, r1, 8 +/* 8021BF74 00218ED4 48 12 4F 35 */ bl __ct__6CTokenFRC6CToken +/* 8021BF78 00218ED8 38 61 00 08 */ addi r3, r1, 8 +/* 8021BF7C 00218EDC 48 12 4E 91 */ bl GetObj__6CTokenFv +/* 8021BF80 00218EE0 80 63 00 04 */ lwz r3, 4(r3) +/* 8021BF84 00218EE4 80 03 00 04 */ lwz r0, 4(r3) +/* 8021BF88 00218EE8 28 00 00 00 */ cmplwi r0, 0 +/* 8021BF8C 00218EEC 41 82 00 5C */ beq lbl_8021BFE8 +/* 8021BF90 00218EF0 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8021BF94 00218EF4 C4 44 66 A0 */ lfsu f2, skZero3f@l(r4) +/* 8021BF98 00218EF8 38 61 00 08 */ addi r3, r1, 8 +/* 8021BF9C 00218EFC C0 24 00 04 */ lfs f1, 4(r4) +/* 8021BFA0 00218F00 C0 04 00 08 */ lfs f0, 8(r4) +/* 8021BFA4 00218F04 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 8021BFA8 00218F08 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 8021BFAC 00218F0C D0 01 00 18 */ stfs f0, 0x18(r1) +/* 8021BFB0 00218F10 48 12 4E 5D */ bl GetObj__6CTokenFv +/* 8021BFB4 00218F14 80 63 00 04 */ lwz r3, 4(r3) +/* 8021BFB8 00218F18 38 A1 00 10 */ addi r5, r1, 0x10 +/* 8021BFBC 00218F1C 38 80 00 00 */ li r4, 0 +/* 8021BFC0 00218F20 80 63 00 04 */ lwz r3, 4(r3) +/* 8021BFC4 00218F24 81 83 00 00 */ lwz r12, 0(r3) +/* 8021BFC8 00218F28 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8021BFCC 00218F2C 7D 89 03 A6 */ mtctr r12 +/* 8021BFD0 00218F30 4E 80 04 21 */ bctrl +/* 8021BFD4 00218F34 48 09 51 69 */ bl GetTickPeriod__17CProjectileWeaponFv +/* 8021BFD8 00218F38 FF E0 08 90 */ fmr f31, f1 +/* 8021BFDC 00218F3C 38 61 00 10 */ addi r3, r1, 0x10 +/* 8021BFE0 00218F40 48 0F 88 D9 */ bl Magnitude__9CVector3fCFv +/* 8021BFE4 00218F44 EF E1 F8 24 */ fdivs f31, f1, f31 +lbl_8021BFE8: +/* 8021BFE8 00218F48 38 61 00 08 */ addi r3, r1, 8 +/* 8021BFEC 00218F4C 38 80 00 00 */ li r4, 0 +/* 8021BFF0 00218F50 48 12 4E 51 */ bl __dt__6CTokenFv +/* 8021BFF4 00218F54 FC 20 F8 90 */ fmr f1, f31 +/* 8021BFF8 00218F58 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 8021BFFC 00218F5C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8021C000 00218F60 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 8021C004 00218F64 7C 08 03 A6 */ mtlr r0 +/* 8021C008 00218F68 38 21 00 30 */ addi r1, r1, 0x30 +/* 8021C00C 00218F6C 4E 80 00 20 */ blr + +.global sub_8021c010 +sub_8021c010: +/* 8021C010 00218F70 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8021C014 00218F74 7C 08 02 A6 */ mflr r0 +/* 8021C018 00218F78 90 01 00 24 */ stw r0, 0x24(r1) +/* 8021C01C 00218F7C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8021C020 00218F80 7C 9F 23 78 */ mr r31, r4 +/* 8021C024 00218F84 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8021C028 00218F88 7C 7E 1B 78 */ mr r30, r3 +/* 8021C02C 00218F8C 7F E3 FB 78 */ mr r3, r31 +/* 8021C030 00218F90 48 12 2C 55 */ bl ReadLong__12CInputStreamFv +/* 8021C034 00218F94 3C 80 57 50 */ lis r4, 0x57505343@ha +/* 8021C038 00218F98 90 61 00 14 */ stw r3, 0x14(r1) +/* 8021C03C 00218F9C 38 04 53 43 */ addi r0, r4, 0x57505343@l +/* 8021C040 00218FA0 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8021C044 00218FA4 90 01 00 10 */ stw r0, 0x10(r1) +/* 8021C048 00218FA8 38 61 00 08 */ addi r3, r1, 8 +/* 8021C04C 00218FAC 38 A1 00 10 */ addi r5, r1, 0x10 +/* 8021C050 00218FB0 81 84 00 00 */ lwz r12, 0(r4) +/* 8021C054 00218FB4 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8021C058 00218FB8 7D 89 03 A6 */ mtctr r12 +/* 8021C05C 00218FBC 4E 80 04 21 */ bctrl +/* 8021C060 00218FC0 7F C3 F3 78 */ mr r3, r30 +/* 8021C064 00218FC4 38 81 00 08 */ addi r4, r1, 8 +/* 8021C068 00218FC8 48 12 4E 41 */ bl __ct__6CTokenFRC6CToken +/* 8021C06C 00218FCC 38 00 00 00 */ li r0, 0 +/* 8021C070 00218FD0 38 61 00 08 */ addi r3, r1, 8 +/* 8021C074 00218FD4 90 1E 00 08 */ stw r0, 8(r30) +/* 8021C078 00218FD8 38 80 FF FF */ li r4, -1 +/* 8021C07C 00218FDC 48 12 4D C5 */ bl __dt__6CTokenFv +/* 8021C080 00218FE0 7F E4 FB 78 */ mr r4, r31 +/* 8021C084 00218FE4 38 7E 00 0C */ addi r3, r30, 0xc +/* 8021C088 00218FE8 4B EA 74 D9 */ bl __ct__11CDamageInfoFR12CInputStream +/* 8021C08C 00218FEC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8021C090 00218FF0 7F C3 F3 78 */ mr r3, r30 +/* 8021C094 00218FF4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8021C098 00218FF8 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8021C09C 00218FFC 7C 08 03 A6 */ mtlr r0 +/* 8021C0A0 00219000 38 21 00 20 */ addi r1, r1, 0x20 +/* 8021C0A4 00219004 4E 80 00 20 */ blr + +.global __ct__15CProjectileInfoFUiRC11CDamageInfo +__ct__15CProjectileInfoFUiRC11CDamageInfo: +/* 8021C0A8 00219008 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8021C0AC 0021900C 7C 08 02 A6 */ mflr r0 +/* 8021C0B0 00219010 3C C0 57 50 */ lis r6, 0x57505343@ha +/* 8021C0B4 00219014 90 01 00 24 */ stw r0, 0x24(r1) +/* 8021C0B8 00219018 38 06 53 43 */ addi r0, r6, 0x57505343@l +/* 8021C0BC 0021901C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8021C0C0 00219020 7C BF 2B 78 */ mr r31, r5 +/* 8021C0C4 00219024 38 A1 00 10 */ addi r5, r1, 0x10 +/* 8021C0C8 00219028 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8021C0CC 0021902C 7C 7E 1B 78 */ mr r30, r3 +/* 8021C0D0 00219030 38 61 00 08 */ addi r3, r1, 8 +/* 8021C0D4 00219034 90 81 00 14 */ stw r4, 0x14(r1) +/* 8021C0D8 00219038 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8021C0DC 0021903C 90 01 00 10 */ stw r0, 0x10(r1) +/* 8021C0E0 00219040 81 84 00 00 */ lwz r12, 0(r4) +/* 8021C0E4 00219044 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8021C0E8 00219048 7D 89 03 A6 */ mtctr r12 +/* 8021C0EC 0021904C 4E 80 04 21 */ bctrl +/* 8021C0F0 00219050 7F C3 F3 78 */ mr r3, r30 +/* 8021C0F4 00219054 38 81 00 08 */ addi r4, r1, 8 +/* 8021C0F8 00219058 48 12 4D B1 */ bl __ct__6CTokenFRC6CToken +/* 8021C0FC 0021905C 38 00 00 00 */ li r0, 0 +/* 8021C100 00219060 38 61 00 08 */ addi r3, r1, 8 +/* 8021C104 00219064 90 1E 00 08 */ stw r0, 8(r30) +/* 8021C108 00219068 38 80 FF FF */ li r4, -1 +/* 8021C10C 0021906C 48 12 4D 35 */ bl __dt__6CTokenFv +/* 8021C110 00219070 80 1F 00 00 */ lwz r0, 0(r31) +/* 8021C114 00219074 7F C3 F3 78 */ mr r3, r30 +/* 8021C118 00219078 90 1E 00 0C */ stw r0, 0xc(r30) +/* 8021C11C 0021907C 88 1F 00 04 */ lbz r0, 4(r31) +/* 8021C120 00219080 98 1E 00 10 */ stb r0, 0x10(r30) +/* 8021C124 00219084 C0 1F 00 08 */ lfs f0, 8(r31) +/* 8021C128 00219088 D0 1E 00 14 */ stfs f0, 0x14(r30) +/* 8021C12C 0021908C C0 1F 00 0C */ lfs f0, 0xc(r31) +/* 8021C130 00219090 D0 1E 00 18 */ stfs f0, 0x18(r30) +/* 8021C134 00219094 C0 1F 00 10 */ lfs f0, 0x10(r31) +/* 8021C138 00219098 D0 1E 00 1C */ stfs f0, 0x1c(r30) +/* 8021C13C 0021909C C0 1F 00 14 */ lfs f0, 0x14(r31) +/* 8021C140 002190A0 D0 1E 00 20 */ stfs f0, 0x20(r30) +/* 8021C144 002190A4 88 1F 00 18 */ lbz r0, 0x18(r31) +/* 8021C148 002190A8 98 1E 00 24 */ stb r0, 0x24(r30) +/* 8021C14C 002190AC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8021C150 002190B0 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8021C154 002190B4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8021C158 002190B8 7C 08 03 A6 */ mtlr r0 +/* 8021C15C 002190BC 38 21 00 20 */ addi r1, r1, 0x20 +/* 8021C160 002190C0 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Weapons/CShockWave.s b/asm/Kyoto_CWD/Weapons/CShockWave.s new file mode 100644 index 00000000..306000e2 --- /dev/null +++ b/asm/Kyoto_CWD/Weapons/CShockWave.s @@ -0,0 +1,1199 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__10CShockwaveFv +__dt__10CShockwaveFv: +/* 80231674 0022E5D4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80231678 0022E5D8 7C 08 02 A6 */ mflr r0 +/* 8023167C 0022E5DC 90 01 00 14 */ stw r0, 0x14(r1) +/* 80231680 0022E5E0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80231684 0022E5E4 7C 7F 1B 79 */ or. r31, r3, r3 +/* 80231688 0022E5E8 93 C1 00 08 */ stw r30, 8(r1) +/* 8023168C 0022E5EC 7C 9E 23 78 */ mr r30, r4 +/* 80231690 0022E5F0 41 82 00 F0 */ beq lbl_80231780 +/* 80231694 0022E5F4 3C 60 80 3F */ lis r3, lbl_803E8050@ha +/* 80231698 0022E5F8 34 1F 09 74 */ addic. r0, r31, 0x974 +/* 8023169C 0022E5FC 38 03 80 50 */ addi r0, r3, lbl_803E8050@l +/* 802316A0 0022E600 90 1F 00 00 */ stw r0, 0(r31) +/* 802316A4 0022E604 41 82 00 28 */ beq lbl_802316CC +/* 802316A8 0022E608 88 1F 09 7C */ lbz r0, 0x97c(r31) +/* 802316AC 0022E60C 28 00 00 00 */ cmplwi r0, 0 +/* 802316B0 0022E610 41 82 00 14 */ beq lbl_802316C4 +/* 802316B4 0022E614 34 7F 09 74 */ addic. r3, r31, 0x974 +/* 802316B8 0022E618 41 82 00 0C */ beq lbl_802316C4 +/* 802316BC 0022E61C 38 80 00 00 */ li r4, 0 +/* 802316C0 0022E620 48 10 F7 81 */ bl __dt__6CTokenFv +lbl_802316C4: +/* 802316C4 0022E624 38 00 00 00 */ li r0, 0 +/* 802316C8 0022E628 98 1F 09 7C */ stb r0, 0x97c(r31) +lbl_802316CC: +/* 802316CC 0022E62C 34 1F 01 70 */ addic. r0, r31, 0x170 +/* 802316D0 0022E630 41 82 00 58 */ beq lbl_80231728 +/* 802316D4 0022E634 80 BF 01 70 */ lwz r5, 0x170(r31) +/* 802316D8 0022E638 38 60 00 00 */ li r3, 0 +/* 802316DC 0022E63C 2C 05 00 00 */ cmpwi r5, 0 +/* 802316E0 0022E640 40 81 00 40 */ ble lbl_80231720 +/* 802316E4 0022E644 2C 05 00 08 */ cmpwi r5, 8 +/* 802316E8 0022E648 38 85 FF F8 */ addi r4, r5, -8 +/* 802316EC 0022E64C 40 81 00 20 */ ble lbl_8023170C +/* 802316F0 0022E650 38 04 00 07 */ addi r0, r4, 7 +/* 802316F4 0022E654 54 00 E8 FE */ srwi r0, r0, 3 +/* 802316F8 0022E658 7C 09 03 A6 */ mtctr r0 +/* 802316FC 0022E65C 2C 04 00 00 */ cmpwi r4, 0 +/* 80231700 0022E660 40 81 00 0C */ ble lbl_8023170C +lbl_80231704: +/* 80231704 0022E664 38 63 00 08 */ addi r3, r3, 8 +/* 80231708 0022E668 42 00 FF FC */ bdnz lbl_80231704 +lbl_8023170C: +/* 8023170C 0022E66C 7C 03 28 50 */ subf r0, r3, r5 +/* 80231710 0022E670 7C 09 03 A6 */ mtctr r0 +/* 80231714 0022E674 7C 03 28 00 */ cmpw r3, r5 +/* 80231718 0022E678 40 80 00 08 */ bge lbl_80231720 +lbl_8023171C: +/* 8023171C 0022E67C 42 00 00 00 */ bdnz lbl_8023171C +lbl_80231720: +/* 80231720 0022E680 38 00 00 00 */ li r0, 0 +/* 80231724 0022E684 90 1F 01 70 */ stw r0, 0x170(r31) +lbl_80231728: +/* 80231728 0022E688 34 1F 01 10 */ addic. r0, r31, 0x110 +/* 8023172C 0022E68C 41 82 00 24 */ beq lbl_80231750 +/* 80231730 0022E690 80 7F 01 10 */ lwz r3, 0x110(r31) +/* 80231734 0022E694 28 03 00 00 */ cmplwi r3, 0 +/* 80231738 0022E698 41 82 00 18 */ beq lbl_80231750 +/* 8023173C 0022E69C 81 83 00 00 */ lwz r12, 0(r3) +/* 80231740 0022E6A0 38 80 00 01 */ li r4, 1 +/* 80231744 0022E6A4 81 8C 00 08 */ lwz r12, 8(r12) +/* 80231748 0022E6A8 7D 89 03 A6 */ mtctr r12 +/* 8023174C 0022E6AC 4E 80 04 21 */ bctrl +lbl_80231750: +/* 80231750 0022E6B0 34 1F 01 08 */ addic. r0, r31, 0x108 +/* 80231754 0022E6B4 41 82 00 10 */ beq lbl_80231764 +/* 80231758 0022E6B8 38 7F 01 08 */ addi r3, r31, 0x108 +/* 8023175C 0022E6BC 38 80 00 00 */ li r4, 0 +/* 80231760 0022E6C0 48 10 F6 E1 */ bl __dt__6CTokenFv +lbl_80231764: +/* 80231764 0022E6C4 7F E3 FB 78 */ mr r3, r31 +/* 80231768 0022E6C8 38 80 00 00 */ li r4, 0 +/* 8023176C 0022E6CC 4B E2 3F 85 */ bl __dt__6CActorFv +/* 80231770 0022E6D0 7F C0 07 35 */ extsh. r0, r30 +/* 80231774 0022E6D4 40 81 00 0C */ ble lbl_80231780 +/* 80231778 0022E6D8 7F E3 FB 78 */ mr r3, r31 +/* 8023177C 0022E6DC 48 0E 41 B5 */ bl Free__7CMemoryFPCv +lbl_80231780: +/* 80231780 0022E6E0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80231784 0022E6E4 7F E3 FB 78 */ mr r3, r31 +/* 80231788 0022E6E8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8023178C 0022E6EC 83 C1 00 08 */ lwz r30, 8(r1) +/* 80231790 0022E6F0 7C 08 03 A6 */ mtlr r0 +/* 80231794 0022E6F4 38 21 00 10 */ addi r1, r1, 0x10 +/* 80231798 0022E6F8 4E 80 00 20 */ blr + +.global AcceptScriptMsg__10CShockwaveF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__10CShockwaveF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 8023179C 0022E6FC 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 802317A0 0022E700 7C 08 02 A6 */ mflr r0 +/* 802317A4 0022E704 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 802317A8 0022E708 BE E1 00 AC */ stmw r23, 0xac(r1) +/* 802317AC 0022E70C 7C 9D 23 78 */ mr r29, r4 +/* 802317B0 0022E710 2C 1D 00 22 */ cmpwi r29, 0x22 +/* 802317B4 0022E714 7C 7C 1B 78 */ mr r28, r3 +/* 802317B8 0022E718 7C BE 2B 78 */ mr r30, r5 +/* 802317BC 0022E71C 7C DF 33 78 */ mr r31, r6 +/* 802317C0 0022E720 41 82 01 44 */ beq lbl_80231904 +/* 802317C4 0022E724 40 80 01 6C */ bge lbl_80231930 +/* 802317C8 0022E728 2C 1D 00 21 */ cmpwi r29, 0x21 +/* 802317CC 0022E72C 40 80 00 08 */ bge lbl_802317D4 +/* 802317D0 0022E730 48 00 01 60 */ b lbl_80231930 +lbl_802317D4: +/* 802317D4 0022E734 80 7C 01 10 */ lwz r3, 0x110(r28) +/* 802317D8 0022E738 81 83 00 00 */ lwz r12, 0(r3) +/* 802317DC 0022E73C 81 8C 00 64 */ lwz r12, 0x64(r12) +/* 802317E0 0022E740 7D 89 03 A6 */ mtctr r12 +/* 802317E4 0022E744 4E 80 04 21 */ bctrl +/* 802317E8 0022E748 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 802317EC 0022E74C 41 82 01 44 */ beq lbl_80231930 +/* 802317F0 0022E750 7F E4 FB 78 */ mr r4, r31 +/* 802317F4 0022E754 38 61 00 2C */ addi r3, r1, 0x2c +/* 802317F8 0022E758 4B E1 B8 E5 */ bl AllocateUniqueId__13CStateManagerFv +/* 802317FC 0022E75C A0 01 00 2C */ lhz r0, 0x2c(r1) +/* 80231800 0022E760 3C 60 80 3D */ lis r3, lbl_803D3468@ha +/* 80231804 0022E764 38 83 34 68 */ addi r4, r3, lbl_803D3468@l +/* 80231808 0022E768 3B 60 00 00 */ li r27, 0 +/* 8023180C 0022E76C B0 1C 09 80 */ sth r0, 0x980(r28) +/* 80231810 0022E770 3A E0 00 00 */ li r23, 0 +/* 80231814 0022E774 38 60 01 48 */ li r3, 0x148 +/* 80231818 0022E778 38 A0 00 00 */ li r5, 0 +/* 8023181C 0022E77C 83 1C 01 18 */ lwz r24, 0x118(r28) +/* 80231820 0022E780 48 0E 40 4D */ bl __nw__FUlPCcPCc +/* 80231824 0022E784 7C 7A 1B 79 */ or. r26, r3, r3 +/* 80231828 0022E788 41 82 00 AC */ beq lbl_802318D4 +/* 8023182C 0022E78C A0 1C 00 08 */ lhz r0, 8(r28) +/* 80231830 0022E790 3C 60 80 3D */ lis r3, lbl_803D3468@ha +/* 80231834 0022E794 83 3C 01 10 */ lwz r25, 0x110(r28) +/* 80231838 0022E798 38 83 34 68 */ addi r4, r3, lbl_803D3468@l +/* 8023183C 0022E79C B0 01 00 24 */ sth r0, 0x24(r1) +/* 80231840 0022E7A0 38 61 00 48 */ addi r3, r1, 0x48 +/* 80231844 0022E7A4 38 84 00 07 */ addi r4, r4, 7 +/* 80231848 0022E7A8 B0 01 00 28 */ sth r0, 0x28(r1) +/* 8023184C 0022E7AC 4B DD 34 6D */ bl string_l__4rstlFPCc +/* 80231850 0022E7B0 38 61 00 38 */ addi r3, r1, 0x38 +/* 80231854 0022E7B4 38 81 00 48 */ addi r4, r1, 0x48 +/* 80231858 0022E7B8 38 BC 00 10 */ addi r5, r28, 0x10 +/* 8023185C 0022E7BC 3B 60 00 01 */ li r27, 1 +/* 80231860 0022E7C0 4B DD 33 FD */ bl "__pl__4rstlFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80231864 0022E7C4 88 1C 00 30 */ lbz r0, 0x30(r28) +/* 80231868 0022E7C8 7F 24 CB 78 */ mr r4, r25 +/* 8023186C 0022E7CC 80 BC 00 04 */ lwz r5, 4(r28) +/* 80231870 0022E7D0 38 61 00 58 */ addi r3, r1, 0x58 +/* 80231874 0022E7D4 54 19 CF FE */ rlwinm r25, r0, 0x19, 0x1f, 0x1f +/* 80231878 0022E7D8 3A E0 00 01 */ li r23, 1 +/* 8023187C 0022E7DC 90 A1 00 34 */ stw r5, 0x34(r1) +/* 80231880 0022E7E0 A0 1C 09 80 */ lhz r0, 0x980(r28) +/* 80231884 0022E7E4 90 A1 00 30 */ stw r5, 0x30(r1) +/* 80231888 0022E7E8 B0 01 00 20 */ sth r0, 0x20(r1) +/* 8023188C 0022E7EC 81 84 00 00 */ lwz r12, 0(r4) +/* 80231890 0022E7F0 81 8C 00 68 */ lwz r12, 0x68(r12) +/* 80231894 0022E7F4 7D 89 03 A6 */ mtctr r12 +/* 80231898 0022E7F8 4E 80 04 21 */ bctrl +/* 8023189C 0022E7FC 93 01 00 08 */ stw r24, 8(r1) +/* 802318A0 0022E800 38 00 00 01 */ li r0, 1 +/* 802318A4 0022E804 C0 22 B6 A8 */ lfs f1, lbl_805AD3C8@sda21(r2) +/* 802318A8 0022E808 7F 43 D3 78 */ mr r3, r26 +/* 802318AC 0022E80C 90 01 00 0C */ stw r0, 0xc(r1) +/* 802318B0 0022E810 7F 26 CB 78 */ mr r6, r25 +/* 802318B4 0022E814 38 81 00 20 */ addi r4, r1, 0x20 +/* 802318B8 0022E818 38 A1 00 34 */ addi r5, r1, 0x34 +/* 802318BC 0022E81C 38 E1 00 38 */ addi r7, r1, 0x38 +/* 802318C0 0022E820 39 1C 00 34 */ addi r8, r28, 0x34 +/* 802318C4 0022E824 39 21 00 28 */ addi r9, r1, 0x28 +/* 802318C8 0022E828 39 41 00 58 */ addi r10, r1, 0x58 +/* 802318CC 0022E82C 4B E8 3F 59 */ bl "__ct__10CGameLightF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC12CTransform4f9TUniqueIdRC6CLightUiUif" +/* 802318D0 0022E830 7C 7A 1B 78 */ mr r26, r3 +lbl_802318D4: +/* 802318D4 0022E834 7F E3 FB 78 */ mr r3, r31 +/* 802318D8 0022E838 7F 44 D3 78 */ mr r4, r26 +/* 802318DC 0022E83C 4B E1 B4 19 */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +/* 802318E0 0022E840 7E E0 07 75 */ extsb. r0, r23 +/* 802318E4 0022E844 41 82 00 0C */ beq lbl_802318F0 +/* 802318E8 0022E848 38 61 00 38 */ addi r3, r1, 0x38 +/* 802318EC 0022E84C 48 10 C1 F5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_802318F0: +/* 802318F0 0022E850 7F 60 07 75 */ extsb. r0, r27 +/* 802318F4 0022E854 41 82 00 3C */ beq lbl_80231930 +/* 802318F8 0022E858 38 61 00 48 */ addi r3, r1, 0x48 +/* 802318FC 0022E85C 48 10 C1 E5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80231900 0022E860 48 00 00 30 */ b lbl_80231930 +lbl_80231904: +/* 80231904 0022E864 A0 7C 09 80 */ lhz r3, 0x980(r28) +/* 80231908 0022E868 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8023190C 0022E86C 7C 03 00 40 */ cmplw r3, r0 +/* 80231910 0022E870 41 82 00 20 */ beq lbl_80231930 +/* 80231914 0022E874 A0 1C 09 80 */ lhz r0, 0x980(r28) +/* 80231918 0022E878 7F E3 FB 78 */ mr r3, r31 +/* 8023191C 0022E87C 38 81 00 1C */ addi r4, r1, 0x1c +/* 80231920 0022E880 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 80231924 0022E884 4B E1 A9 49 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +/* 80231928 0022E888 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8023192C 0022E88C B0 1C 09 80 */ sth r0, 0x980(r28) +lbl_80231930: +/* 80231930 0022E890 A0 1E 00 00 */ lhz r0, 0(r30) +/* 80231934 0022E894 7F 83 E3 78 */ mr r3, r28 +/* 80231938 0022E898 7F A4 EB 78 */ mr r4, r29 +/* 8023193C 0022E89C 7F E6 FB 78 */ mr r6, r31 +/* 80231940 0022E8A0 B0 01 00 18 */ sth r0, 0x18(r1) +/* 80231944 0022E8A4 38 A1 00 18 */ addi r5, r1, 0x18 +/* 80231948 0022E8A8 4B E2 1C CD */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 8023194C 0022E8AC A0 1E 00 00 */ lhz r0, 0(r30) +/* 80231950 0022E8B0 7F E3 FB 78 */ mr r3, r31 +/* 80231954 0022E8B4 7F A6 EB 78 */ mr r6, r29 +/* 80231958 0022E8B8 38 81 00 14 */ addi r4, r1, 0x14 +/* 8023195C 0022E8BC B0 01 00 10 */ sth r0, 0x10(r1) +/* 80231960 0022E8C0 38 A1 00 10 */ addi r5, r1, 0x10 +/* 80231964 0022E8C4 A0 1C 09 80 */ lhz r0, 0x980(r28) +/* 80231968 0022E8C8 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8023196C 0022E8CC 4B E1 24 E9 */ bl SendScriptMsgAlways__13CStateManagerF9TUniqueId +/* 80231970 0022E8D0 BA E1 00 AC */ lmw r23, 0xac(r1) +/* 80231974 0022E8D4 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 80231978 0022E8D8 7C 08 03 A6 */ mtlr r0 +/* 8023197C 0022E8DC 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 80231980 0022E8E0 4E 80 00 20 */ blr + +.global sub_80231984 +sub_80231984: +/* 80231984 0022E8E4 80 03 01 70 */ lwz r0, 0x170(r3) +/* 80231988 0022E8E8 38 63 01 74 */ addi r3, r3, 0x174 +/* 8023198C 0022E8EC 7C 66 1B 78 */ mr r6, r3 +/* 80231990 0022E8F0 54 00 08 3C */ slwi r0, r0, 1 +/* 80231994 0022E8F4 7C A3 02 14 */ add r5, r3, r0 +/* 80231998 0022E8F8 48 00 00 20 */ b lbl_802319B8 +lbl_8023199C: +/* 8023199C 0022E8FC A0 66 00 00 */ lhz r3, 0(r6) +/* 802319A0 0022E900 A0 04 00 00 */ lhz r0, 0(r4) +/* 802319A4 0022E904 7C 03 00 40 */ cmplw r3, r0 +/* 802319A8 0022E908 40 82 00 0C */ bne lbl_802319B4 +/* 802319AC 0022E90C 38 60 00 01 */ li r3, 1 +/* 802319B0 0022E910 4E 80 00 20 */ blr +lbl_802319B4: +/* 802319B4 0022E914 38 C6 00 02 */ addi r6, r6, 2 +lbl_802319B8: +/* 802319B8 0022E918 7C 06 28 40 */ cmplw r6, r5 +/* 802319BC 0022E91C 40 82 FF E0 */ bne lbl_8023199C +/* 802319C0 0022E920 38 60 00 00 */ li r3, 0 +/* 802319C4 0022E924 4E 80 00 20 */ blr + +.global GetTouchBounds__10CShockwaveCFv +GetTouchBounds__10CShockwaveCFv: +/* 802319C8 0022E928 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 802319CC 0022E92C 7C 08 02 A6 */ mflr r0 +/* 802319D0 0022E930 C0 22 B6 A8 */ lfs f1, lbl_805AD3C8@sda21(r2) +/* 802319D4 0022E934 90 01 00 64 */ stw r0, 0x64(r1) +/* 802319D8 0022E938 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 802319DC 0022E93C 7C 9F 23 78 */ mr r31, r4 +/* 802319E0 0022E940 93 C1 00 58 */ stw r30, 0x58(r1) +/* 802319E4 0022E944 7C 7E 1B 78 */ mr r30, r3 +/* 802319E8 0022E948 C0 44 01 50 */ lfs f2, 0x150(r4) +/* 802319EC 0022E94C FC 02 08 40 */ fcmpo cr0, f2, f1 +/* 802319F0 0022E950 40 81 00 88 */ ble lbl_80231A78 +/* 802319F4 0022E954 FC 60 10 50 */ fneg f3, f2 +/* 802319F8 0022E958 C0 02 B6 AC */ lfs f0, lbl_805AD3CC@sda21(r2) +/* 802319FC 0022E95C D0 41 00 08 */ stfs f2, 8(r1) +/* 80231A00 0022E960 38 61 00 38 */ addi r3, r1, 0x38 +/* 80231A04 0022E964 38 81 00 14 */ addi r4, r1, 0x14 +/* 80231A08 0022E968 38 A1 00 08 */ addi r5, r1, 8 +/* 80231A0C 0022E96C D0 41 00 0C */ stfs f2, 0xc(r1) +/* 80231A10 0022E970 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 80231A14 0022E974 D0 61 00 14 */ stfs f3, 0x14(r1) +/* 80231A18 0022E978 D0 61 00 18 */ stfs f3, 0x18(r1) +/* 80231A1C 0022E97C D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 80231A20 0022E980 48 10 6A E9 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 80231A24 0022E984 38 61 00 20 */ addi r3, r1, 0x20 +/* 80231A28 0022E988 38 81 00 38 */ addi r4, r1, 0x38 +/* 80231A2C 0022E98C 38 BF 00 34 */ addi r5, r31, 0x34 +/* 80231A30 0022E990 48 10 5E CD */ bl GetTransformedAABox__6CAABoxCFRC12CTransform4f +/* 80231A34 0022E994 38 00 00 01 */ li r0, 1 +/* 80231A38 0022E998 28 1E 00 00 */ cmplwi r30, 0 +/* 80231A3C 0022E99C 98 1E 00 18 */ stb r0, 0x18(r30) +/* 80231A40 0022E9A0 41 82 00 40 */ beq lbl_80231A80 +/* 80231A44 0022E9A4 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 80231A48 0022E9A8 D0 1E 00 00 */ stfs f0, 0(r30) +/* 80231A4C 0022E9AC C0 01 00 24 */ lfs f0, 0x24(r1) +/* 80231A50 0022E9B0 D0 1E 00 04 */ stfs f0, 4(r30) +/* 80231A54 0022E9B4 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 80231A58 0022E9B8 D0 1E 00 08 */ stfs f0, 8(r30) +/* 80231A5C 0022E9BC C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 80231A60 0022E9C0 D0 1E 00 0C */ stfs f0, 0xc(r30) +/* 80231A64 0022E9C4 C0 01 00 30 */ lfs f0, 0x30(r1) +/* 80231A68 0022E9C8 D0 1E 00 10 */ stfs f0, 0x10(r30) +/* 80231A6C 0022E9CC C0 01 00 34 */ lfs f0, 0x34(r1) +/* 80231A70 0022E9D0 D0 1E 00 14 */ stfs f0, 0x14(r30) +/* 80231A74 0022E9D4 48 00 00 0C */ b lbl_80231A80 +lbl_80231A78: +/* 80231A78 0022E9D8 38 00 00 00 */ li r0, 0 +/* 80231A7C 0022E9DC 98 1E 00 18 */ stb r0, 0x18(r30) +lbl_80231A80: +/* 80231A80 0022E9E0 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80231A84 0022E9E4 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 80231A88 0022E9E8 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 80231A8C 0022E9EC 7C 08 03 A6 */ mtlr r0 +/* 80231A90 0022E9F0 38 21 00 60 */ addi r1, r1, 0x60 +/* 80231A94 0022E9F4 4E 80 00 20 */ blr + +.global Touch__10CShockwaveFR6CActorR13CStateManager +Touch__10CShockwaveFR6CActorR13CStateManager: +/* 80231A98 0022E9F8 94 21 FE 40 */ stwu r1, -0x1c0(r1) +/* 80231A9C 0022E9FC 7C 08 02 A6 */ mflr r0 +/* 80231AA0 0022EA00 90 01 01 C4 */ stw r0, 0x1c4(r1) +/* 80231AA4 0022EA04 DB E1 01 B0 */ stfd f31, 0x1b0(r1) +/* 80231AA8 0022EA08 F3 E1 01 B8 */ psq_st f31, 440(r1), 0, qr0 +/* 80231AAC 0022EA0C DB C1 01 A0 */ stfd f30, 0x1a0(r1) +/* 80231AB0 0022EA10 F3 C1 01 A8 */ psq_st f30, 424(r1), 0, qr0 +/* 80231AB4 0022EA14 DB A1 01 90 */ stfd f29, 0x190(r1) +/* 80231AB8 0022EA18 F3 A1 01 98 */ psq_st f29, 408(r1), 0, qr0 +/* 80231ABC 0022EA1C DB 81 01 80 */ stfd f28, 0x180(r1) +/* 80231AC0 0022EA20 F3 81 01 88 */ psq_st f28, 392(r1), 0, qr0 +/* 80231AC4 0022EA24 DB 61 01 70 */ stfd f27, 0x170(r1) +/* 80231AC8 0022EA28 F3 61 01 78 */ psq_st f27, 376(r1), 0, qr0 +/* 80231ACC 0022EA2C BE C1 01 48 */ stmw r22, 0x148(r1) +/* 80231AD0 0022EA30 7C 7B 1B 78 */ mr r27, r3 +/* 80231AD4 0022EA34 7C 9C 23 78 */ mr r28, r4 +/* 80231AD8 0022EA38 C0 23 01 58 */ lfs f1, 0x158(r3) +/* 80231ADC 0022EA3C 7C BD 2B 78 */ mr r29, r5 +/* 80231AE0 0022EA40 C0 03 01 5C */ lfs f0, 0x15c(r3) +/* 80231AE4 0022EA44 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80231AE8 0022EA48 4C 41 13 82 */ cror 2, 1, 2 +/* 80231AEC 0022EA4C 41 82 05 64 */ beq lbl_80232050 +/* 80231AF0 0022EA50 A0 BC 00 08 */ lhz r5, 8(r28) +/* 80231AF4 0022EA54 7F A3 EB 78 */ mr r3, r29 +/* 80231AF8 0022EA58 A0 1B 00 E8 */ lhz r0, 0xe8(r27) +/* 80231AFC 0022EA5C 38 81 00 54 */ addi r4, r1, 0x54 +/* 80231B00 0022EA60 B0 A1 00 50 */ sth r5, 0x50(r1) +/* 80231B04 0022EA64 7C 05 00 50 */ subf r0, r5, r0 +/* 80231B08 0022EA68 7C 00 00 34 */ cntlzw r0, r0 +/* 80231B0C 0022EA6C B0 A1 00 54 */ sth r5, 0x54(r1) +/* 80231B10 0022EA70 54 17 D9 7E */ srwi r23, r0, 5 +/* 80231B14 0022EA74 4B E1 AA 91 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80231B18 0022EA78 7C 64 1B 78 */ mr r4, r3 +/* 80231B1C 0022EA7C 38 61 00 68 */ addi r3, r1, 0x68 +/* 80231B20 0022EA80 4B E7 D8 2D */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 80231B24 0022EA84 80 63 00 04 */ lwz r3, 4(r3) +/* 80231B28 0022EA88 28 03 00 00 */ cmplwi r3, 0 +/* 80231B2C 0022EA8C 41 82 00 18 */ beq lbl_80231B44 +/* 80231B30 0022EA90 A0 63 02 5C */ lhz r3, 0x25c(r3) +/* 80231B34 0022EA94 A0 1B 00 E8 */ lhz r0, 0xe8(r27) +/* 80231B38 0022EA98 7C 03 00 50 */ subf r0, r3, r0 +/* 80231B3C 0022EA9C 7C 00 00 34 */ cntlzw r0, r0 +/* 80231B40 0022EAA0 54 17 D9 7E */ srwi r23, r0, 5 +lbl_80231B44: +/* 80231B44 0022EAA4 56 E0 06 3F */ clrlwi. r0, r23, 0x18 +/* 80231B48 0022EAA8 40 82 05 08 */ bne lbl_80232050 +/* 80231B4C 0022EAAC C0 5B 01 50 */ lfs f2, 0x150(r27) +/* 80231B50 0022EAB0 C0 3C 00 40 */ lfs f1, 0x40(r28) +/* 80231B54 0022EAB4 C0 1B 00 40 */ lfs f0, 0x40(r27) +/* 80231B58 0022EAB8 EF E2 00 B2 */ fmuls f31, f2, f2 +/* 80231B5C 0022EABC C0 9B 01 3C */ lfs f4, 0x13c(r27) +/* 80231B60 0022EAC0 C0 7C 00 50 */ lfs f3, 0x50(r28) +/* 80231B64 0022EAC4 EF 81 00 28 */ fsubs f28, f1, f0 +/* 80231B68 0022EAC8 C0 5B 00 50 */ lfs f2, 0x50(r27) +/* 80231B6C 0022EACC EC 1F 01 32 */ fmuls f0, f31, f4 +/* 80231B70 0022EAD0 80 1B 00 EC */ lwz r0, 0xec(r27) +/* 80231B74 0022EAD4 C0 22 B6 AC */ lfs f1, lbl_805AD3CC@sda21(r2) +/* 80231B78 0022EAD8 EF A3 10 28 */ fsubs f29, f3, f2 +/* 80231B7C 0022EADC 90 01 00 F0 */ stw r0, 0xf0(r1) +/* 80231B80 0022EAE0 EF 60 01 32 */ fmuls f27, f0, f4 +/* 80231B84 0022EAE4 C0 0D 96 30 */ lfs f0, lbl_805A81F0@sda21(r13) +/* 80231B88 0022EAE8 88 1B 00 F0 */ lbz r0, 0xf0(r27) +/* 80231B8C 0022EAEC 98 01 00 F4 */ stb r0, 0xf4(r1) +/* 80231B90 0022EAF0 C0 5B 00 F4 */ lfs f2, 0xf4(r27) +/* 80231B94 0022EAF4 D0 41 00 F8 */ stfs f2, 0xf8(r1) +/* 80231B98 0022EAF8 C0 5B 00 F8 */ lfs f2, 0xf8(r27) +/* 80231B9C 0022EAFC D0 41 00 FC */ stfs f2, 0xfc(r1) +/* 80231BA0 0022EB00 C0 5B 00 FC */ lfs f2, 0xfc(r27) +/* 80231BA4 0022EB04 D0 41 01 00 */ stfs f2, 0x100(r1) +/* 80231BA8 0022EB08 C0 5B 01 00 */ lfs f2, 0x100(r27) +/* 80231BAC 0022EB0C D0 41 01 04 */ stfs f2, 0x104(r1) +/* 80231BB0 0022EB10 88 1B 01 04 */ lbz r0, 0x104(r27) +/* 80231BB4 0022EB14 98 01 01 08 */ stb r0, 0x108(r1) +/* 80231BB8 0022EB18 C0 7B 01 60 */ lfs f3, 0x160(r27) +/* 80231BBC 0022EB1C C0 5B 01 58 */ lfs f2, 0x158(r27) +/* 80231BC0 0022EB20 EC 23 08 BC */ fnmsubs f1, f3, f2, f1 +/* 80231BC4 0022EB24 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80231BC8 0022EB28 D0 21 00 64 */ stfs f1, 0x64(r1) +/* 80231BCC 0022EB2C 40 80 00 0C */ bge lbl_80231BD8 +/* 80231BD0 0022EB30 38 6D 96 30 */ addi r3, r13, lbl_805A81F0@sda21 +/* 80231BD4 0022EB34 48 00 00 08 */ b lbl_80231BDC +lbl_80231BD8: +/* 80231BD8 0022EB38 38 61 00 64 */ addi r3, r1, 0x64 +lbl_80231BDC: +/* 80231BDC 0022EB3C C3 C3 00 00 */ lfs f30, 0(r3) +/* 80231BE0 0022EB40 7F A3 EB 78 */ mr r3, r29 +/* 80231BE4 0022EB44 4B E1 23 59 */ bl GetPlayer__13CStateManagerCFv +/* 80231BE8 0022EB48 A0 9C 00 08 */ lhz r4, 8(r28) +/* 80231BEC 0022EB4C 3B C0 00 00 */ li r30, 0 +/* 80231BF0 0022EB50 A0 03 00 08 */ lhz r0, 8(r3) +/* 80231BF4 0022EB54 7C 04 00 50 */ subf r0, r4, r0 +/* 80231BF8 0022EB58 7C 03 00 34 */ cntlzw r3, r0 +/* 80231BFC 0022EB5C 54 60 DE 3F */ rlwinm. r0, r3, 0x1b, 0x18, 0x1f +/* 80231C00 0022EB60 54 7F D9 7E */ srwi r31, r3, 5 +/* 80231C04 0022EB64 41 82 00 18 */ beq lbl_80231C1C +/* 80231C08 0022EB68 80 7D 08 4C */ lwz r3, 0x84c(r29) +/* 80231C0C 0022EB6C 80 03 02 58 */ lwz r0, 0x258(r3) +/* 80231C10 0022EB70 2C 00 00 00 */ cmpwi r0, 0 +/* 80231C14 0022EB74 41 82 00 08 */ beq lbl_80231C1C +/* 80231C18 0022EB78 3B C0 00 01 */ li r30, 1 +lbl_80231C1C: +/* 80231C1C 0022EB7C EC 1D 07 72 */ fmuls f0, f29, f29 +/* 80231C20 0022EB80 C0 22 B6 A8 */ lfs f1, lbl_805AD3C8@sda21(r2) +/* 80231C24 0022EB84 EC 1C 07 3A */ fmadds f0, f28, f28, f0 +/* 80231C28 0022EB88 EC 01 00 2A */ fadds f0, f1, f0 +/* 80231C2C 0022EB8C FC 00 D8 40 */ fcmpo cr0, f0, f27 +/* 80231C30 0022EB90 4C 41 13 82 */ cror 2, 1, 2 +/* 80231C34 0022EB94 40 82 04 1C */ bne lbl_80232050 +/* 80231C38 0022EB98 FC 00 F8 40 */ fcmpo cr0, f0, f31 +/* 80231C3C 0022EB9C 4C 40 13 82 */ cror 2, 0, 2 +/* 80231C40 0022EBA0 40 82 04 10 */ bne lbl_80232050 +/* 80231C44 0022EBA4 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 80231C48 0022EBA8 41 82 00 FC */ beq lbl_80231D44 +/* 80231C4C 0022EBAC 80 9D 08 4C */ lwz r4, 0x84c(r29) +/* 80231C50 0022EBB0 80 04 02 F8 */ lwz r0, 0x2f8(r4) +/* 80231C54 0022EBB4 2C 00 00 00 */ cmpwi r0, 0 +/* 80231C58 0022EBB8 40 82 00 B4 */ bne lbl_80231D0C +/* 80231C5C 0022EBBC 38 61 01 0C */ addi r3, r1, 0x10c +/* 80231C60 0022EBC0 38 84 00 34 */ addi r4, r4, 0x34 +/* 80231C64 0022EBC4 48 0E 0F 11 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80231C68 0022EBC8 C0 3B 00 50 */ lfs f1, 0x50(r27) +/* 80231C6C 0022EBCC 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 80231C70 0022EBD0 C0 01 01 28 */ lfs f0, 0x128(r1) +/* 80231C74 0022EBD4 C0 7B 00 60 */ lfs f3, 0x60(r27) +/* 80231C78 0022EBD8 C0 41 01 38 */ lfs f2, 0x138(r1) +/* 80231C7C 0022EBDC EC 81 00 28 */ fsubs f4, f1, f0 +/* 80231C80 0022EBE0 C0 3B 00 40 */ lfs f1, 0x40(r27) +/* 80231C84 0022EBE4 C0 01 01 18 */ lfs f0, 0x118(r1) +/* 80231C88 0022EBE8 EC 43 10 28 */ fsubs f2, f3, f2 +/* 80231C8C 0022EBEC D0 81 00 B4 */ stfs f4, 0xb4(r1) +/* 80231C90 0022EBF0 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80231C94 0022EBF4 D0 41 00 B8 */ stfs f2, 0xb8(r1) +/* 80231C98 0022EBF8 D0 01 00 B0 */ stfs f0, 0xb0(r1) +/* 80231C9C 0022EBFC 48 0E 2A 5D */ bl CanBeNormalized__9CVector3fCFv +/* 80231CA0 0022EC00 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80231CA4 0022EC04 41 82 00 68 */ beq lbl_80231D0C +/* 80231CA8 0022EC08 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 80231CAC 0022EC0C 48 0E 2C 4D */ bl Normalize__9CVector3fFv +/* 80231CB0 0022EC10 C0 21 00 B4 */ lfs f1, 0xb4(r1) +/* 80231CB4 0022EC14 C0 01 01 20 */ lfs f0, 0x120(r1) +/* 80231CB8 0022EC18 C0 41 00 B0 */ lfs f2, 0xb0(r1) +/* 80231CBC 0022EC1C EC 01 00 32 */ fmuls f0, f1, f0 +/* 80231CC0 0022EC20 C0 21 01 10 */ lfs f1, 0x110(r1) +/* 80231CC4 0022EC24 C0 81 00 B8 */ lfs f4, 0xb8(r1) +/* 80231CC8 0022EC28 C0 61 01 30 */ lfs f3, 0x130(r1) +/* 80231CCC 0022EC2C EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 80231CD0 0022EC30 C0 42 B6 B4 */ lfs f2, lbl_805AD3D4@sda21(r2) +/* 80231CD4 0022EC34 C0 02 B6 B0 */ lfs f0, lbl_805AD3D0@sda21(r2) +/* 80231CD8 0022EC38 EC 24 08 FA */ fmadds f1, f4, f3, f1 +/* 80231CDC 0022EC3C FC 20 0A 10 */ fabs f1, f1 +/* 80231CE0 0022EC40 FC 20 08 18 */ frsp f1, f1 +/* 80231CE4 0022EC44 EC 21 00 72 */ fmuls f1, f1, f1 +/* 80231CE8 0022EC48 EC 22 00 72 */ fmuls f1, f2, f1 +/* 80231CEC 0022EC4C FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80231CF0 0022EC50 D0 21 00 60 */ stfs f1, 0x60(r1) +/* 80231CF4 0022EC54 40 80 00 0C */ bge lbl_80231D00 +/* 80231CF8 0022EC58 38 61 00 60 */ addi r3, r1, 0x60 +/* 80231CFC 0022EC5C 48 00 00 08 */ b lbl_80231D04 +lbl_80231D00: +/* 80231D00 0022EC60 38 62 B6 B0 */ addi r3, r2, lbl_805AD3D0@sda21 +lbl_80231D04: +/* 80231D04 0022EC64 C0 03 00 00 */ lfs f0, 0(r3) +/* 80231D08 0022EC68 EF DE 00 32 */ fmuls f30, f30, f0 +lbl_80231D0C: +/* 80231D0C 0022EC6C 80 9D 08 4C */ lwz r4, 0x84c(r29) +/* 80231D10 0022EC70 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 80231D14 0022EC74 C0 04 01 38 */ lfs f0, 0x138(r4) +/* 80231D18 0022EC78 D0 01 00 A4 */ stfs f0, 0xa4(r1) +/* 80231D1C 0022EC7C C0 04 01 3C */ lfs f0, 0x13c(r4) +/* 80231D20 0022EC80 D0 01 00 A8 */ stfs f0, 0xa8(r1) +/* 80231D24 0022EC84 C0 04 01 40 */ lfs f0, 0x140(r4) +/* 80231D28 0022EC88 D0 01 00 AC */ stfs f0, 0xac(r1) +/* 80231D2C 0022EC8C 48 0E 2B 8D */ bl Magnitude__9CVector3fCFv +/* 80231D30 0022EC90 C0 02 B6 B8 */ lfs f0, lbl_805AD3D8@sda21(r2) +/* 80231D34 0022EC94 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80231D38 0022EC98 40 81 00 0C */ ble lbl_80231D44 +/* 80231D3C 0022EC9C C0 02 B6 BC */ lfs f0, lbl_805AD3DC@sda21(r2) +/* 80231D40 0022ECA0 D0 1B 01 68 */ stfs f0, 0x168(r27) +lbl_80231D44: +/* 80231D44 0022ECA4 C0 1B 01 00 */ lfs f0, 0x100(r27) +/* 80231D48 0022ECA8 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 80231D4C 0022ECAC 38 00 00 01 */ li r0, 1 +/* 80231D50 0022ECB0 EC 1E 00 32 */ fmuls f0, f30, f0 +/* 80231D54 0022ECB4 D0 01 01 04 */ stfs f0, 0x104(r1) +/* 80231D58 0022ECB8 41 82 00 30 */ beq lbl_80231D88 +/* 80231D5C 0022ECBC C0 3B 01 64 */ lfs f1, 0x164(r27) +/* 80231D60 0022ECC0 C0 02 B6 C0 */ lfs f0, lbl_805AD3E0@sda21(r2) +/* 80231D64 0022ECC4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80231D68 0022ECC8 4C 41 13 82 */ cror 2, 1, 2 +/* 80231D6C 0022ECCC 41 82 00 18 */ beq lbl_80231D84 +/* 80231D70 0022ECD0 C0 3B 01 68 */ lfs f1, 0x168(r27) +/* 80231D74 0022ECD4 C0 02 B6 BC */ lfs f0, lbl_805AD3DC@sda21(r2) +/* 80231D78 0022ECD8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80231D7C 0022ECDC 4C 41 13 82 */ cror 2, 1, 2 +/* 80231D80 0022ECE0 40 82 00 08 */ bne lbl_80231D88 +lbl_80231D84: +/* 80231D84 0022ECE4 38 00 00 00 */ li r0, 0 +lbl_80231D88: +/* 80231D88 0022ECE8 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 80231D8C 0022ECEC 41 82 02 C4 */ beq lbl_80232050 +/* 80231D90 0022ECF0 A0 1C 00 08 */ lhz r0, 8(r28) +/* 80231D94 0022ECF4 7F 63 DB 78 */ mr r3, r27 +/* 80231D98 0022ECF8 38 81 00 4C */ addi r4, r1, 0x4c +/* 80231D9C 0022ECFC B0 01 00 48 */ sth r0, 0x48(r1) +/* 80231DA0 0022ED00 B0 01 00 4C */ sth r0, 0x4c(r1) +/* 80231DA4 0022ED04 4B FF FB E1 */ bl sub_80231984 +/* 80231DA8 0022ED08 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80231DAC 0022ED0C 40 82 02 08 */ bne lbl_80231FB4 +/* 80231DB0 0022ED10 80 AD 96 28 */ lwz r5, lbl_805A81E8@sda21(r13) +/* 80231DB4 0022ED14 38 60 00 00 */ li r3, 0 +/* 80231DB8 0022ED18 38 80 00 01 */ li r4, 1 +/* 80231DBC 0022ED1C 48 15 81 39 */ bl __shl2i +/* 80231DC0 0022ED20 39 40 00 00 */ li r10, 0 +/* 80231DC4 0022ED24 38 00 00 03 */ li r0, 3 +/* 80231DC8 0022ED28 90 81 00 DC */ stw r4, 0xdc(r1) +/* 80231DCC 0022ED2C 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80231DD0 0022ED30 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 80231DD4 0022ED34 38 A1 00 3C */ addi r5, r1, 0x3c +/* 80231DD8 0022ED38 90 61 00 D8 */ stw r3, 0xd8(r1) +/* 80231DDC 0022ED3C 38 81 00 44 */ addi r4, r1, 0x44 +/* 80231DE0 0022ED40 7F A3 EB 78 */ mr r3, r29 +/* 80231DE4 0022ED44 38 C1 00 34 */ addi r6, r1, 0x34 +/* 80231DE8 0022ED48 91 41 00 E4 */ stw r10, 0xe4(r1) +/* 80231DEC 0022ED4C 38 E1 00 F0 */ addi r7, r1, 0xf0 +/* 80231DF0 0022ED50 39 01 00 D8 */ addi r8, r1, 0xd8 +/* 80231DF4 0022ED54 91 41 00 E0 */ stw r10, 0xe0(r1) +/* 80231DF8 0022ED58 90 01 00 E8 */ stw r0, 0xe8(r1) +/* 80231DFC 0022ED5C A0 1B 00 08 */ lhz r0, 8(r27) +/* 80231E00 0022ED60 B0 01 00 34 */ sth r0, 0x34(r1) +/* 80231E04 0022ED64 A1 5C 00 08 */ lhz r10, 8(r28) +/* 80231E08 0022ED68 B0 01 00 30 */ sth r0, 0x30(r1) +/* 80231E0C 0022ED6C B1 41 00 3C */ sth r10, 0x3c(r1) +/* 80231E10 0022ED70 A0 1B 00 08 */ lhz r0, 8(r27) +/* 80231E14 0022ED74 B1 41 00 38 */ sth r10, 0x38(r1) +/* 80231E18 0022ED78 B0 01 00 40 */ sth r0, 0x40(r1) +/* 80231E1C 0022ED7C B0 01 00 44 */ sth r0, 0x44(r1) +/* 80231E20 0022ED80 4B E1 82 81 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +/* 80231E24 0022ED84 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 80231E28 0022ED88 41 82 01 60 */ beq lbl_80231F88 +/* 80231E2C 0022ED8C 88 1B 09 7C */ lbz r0, 0x97c(r27) +/* 80231E30 0022ED90 28 00 00 00 */ cmplwi r0, 0 +/* 80231E34 0022ED94 41 82 01 54 */ beq lbl_80231F88 +/* 80231E38 0022ED98 3C 60 80 3D */ lis r3, lbl_803D3468@ha +/* 80231E3C 0022ED9C 3B 40 00 00 */ li r26, 0 +/* 80231E40 0022EDA0 38 83 34 68 */ addi r4, r3, lbl_803D3468@l +/* 80231E44 0022EDA4 3A C0 00 00 */ li r22, 0 +/* 80231E48 0022EDA8 38 60 01 10 */ li r3, 0x110 +/* 80231E4C 0022EDAC 38 A0 00 00 */ li r5, 0 +/* 80231E50 0022EDB0 48 0E 3A 1D */ bl __nw__FUlPCcPCc +/* 80231E54 0022EDB4 7C 77 1B 79 */ or. r23, r3, r3 +/* 80231E58 0022EDB8 41 82 00 C4 */ beq lbl_80231F1C +/* 80231E5C 0022EDBC C0 22 B6 A8 */ lfs f1, lbl_805AD3C8@sda21(r2) +/* 80231E60 0022EDC0 3C 60 80 3D */ lis r3, lbl_803D3468@ha +/* 80231E64 0022EDC4 C0 02 B6 AC */ lfs f0, lbl_805AD3CC@sda21(r2) +/* 80231E68 0022EDC8 38 83 34 68 */ addi r4, r3, lbl_803D3468@l +/* 80231E6C 0022EDCC D0 21 00 98 */ stfs f1, 0x98(r1) +/* 80231E70 0022EDD0 38 61 00 7C */ addi r3, r1, 0x7c +/* 80231E74 0022EDD4 38 84 00 17 */ addi r4, r4, 0x17 +/* 80231E78 0022EDD8 D0 21 00 9C */ stfs f1, 0x9c(r1) +/* 80231E7C 0022EDDC D0 21 00 A0 */ stfs f1, 0xa0(r1) +/* 80231E80 0022EDE0 D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 80231E84 0022EDE4 D0 01 00 90 */ stfs f0, 0x90(r1) +/* 80231E88 0022EDE8 D0 01 00 94 */ stfs f0, 0x94(r1) +/* 80231E8C 0022EDEC 4B DD 2E 2D */ bl string_l__4rstlFPCc +/* 80231E90 0022EDF0 7F A4 EB 78 */ mr r4, r29 +/* 80231E94 0022EDF4 38 61 00 28 */ addi r3, r1, 0x28 +/* 80231E98 0022EDF8 3B 40 00 01 */ li r26, 1 +/* 80231E9C 0022EDFC 4B E1 B2 41 */ bl AllocateUniqueId__13CStateManagerFv +/* 80231EA0 0022EE00 C0 22 B6 AC */ lfs f1, lbl_805AD3CC@sda21(r2) +/* 80231EA4 0022EE04 38 00 00 00 */ li r0, 0 +/* 80231EA8 0022EE08 A0 81 00 28 */ lhz r4, 0x28(r1) +/* 80231EAC 0022EE0C 38 61 00 5C */ addi r3, r1, 0x5c +/* 80231EB0 0022EE10 FC 40 08 90 */ fmr f2, f1 +/* 80231EB4 0022EE14 98 01 00 78 */ stb r0, 0x78(r1) +/* 80231EB8 0022EE18 FC 60 08 90 */ fmr f3, f1 +/* 80231EBC 0022EE1C 3A C0 00 01 */ li r22, 1 +/* 80231EC0 0022EE20 FC 80 08 90 */ fmr f4, f1 +/* 80231EC4 0022EE24 B0 81 00 2C */ sth r4, 0x2c(r1) +/* 80231EC8 0022EE28 48 13 15 25 */ bl __ct__6CColorFffff +/* 80231ECC 0022EE2C 7C 78 1B 78 */ mr r24, r3 +/* 80231ED0 0022EE30 7F A3 EB 78 */ mr r3, r29 +/* 80231ED4 0022EE34 4B EF E3 59 */ bl GetScaleForPOV__19CHUDBillboardEffectFRC13CStateManager +/* 80231ED8 0022EE38 7C 79 1B 78 */ mr r25, r3 +/* 80231EDC 0022EE3C 7F A3 EB 78 */ mr r3, r29 +/* 80231EE0 0022EE40 4B EF E3 19 */ bl GetNearClipDistance__19CHUDBillboardEffectFRC13CStateManager +/* 80231EE4 0022EE44 38 61 00 8C */ addi r3, r1, 0x8c +/* 80231EE8 0022EE48 38 01 00 98 */ addi r0, r1, 0x98 +/* 80231EEC 0022EE4C 90 61 00 08 */ stw r3, 8(r1) +/* 80231EF0 0022EE50 7E E3 BB 78 */ mr r3, r23 +/* 80231EF4 0022EE54 7F 29 CB 78 */ mr r9, r25 +/* 80231EF8 0022EE58 7F 0A C3 78 */ mr r10, r24 +/* 80231EFC 0022EE5C 90 01 00 0C */ stw r0, 0xc(r1) +/* 80231F00 0022EE60 38 81 00 70 */ addi r4, r1, 0x70 +/* 80231F04 0022EE64 38 BB 09 74 */ addi r5, r27, 0x974 +/* 80231F08 0022EE68 38 C1 00 2C */ addi r6, r1, 0x2c +/* 80231F0C 0022EE6C 39 01 00 7C */ addi r8, r1, 0x7c +/* 80231F10 0022EE70 38 E0 00 01 */ li r7, 1 +/* 80231F14 0022EE74 4B EF DF E5 */ bl "__ct__19CHUDBillboardEffectFRCQ24rstl44optional_object<25TToken<15CGenDescription>>RCQ24rstl49optional_object<30TToken<20CElectricDescription>>9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>fRC9CVector3fRC6CColorRC9CVector3fRC9CVector3f" +/* 80231F18 0022EE78 7C 77 1B 78 */ mr r23, r3 +lbl_80231F1C: +/* 80231F1C 0022EE7C 7F A3 EB 78 */ mr r3, r29 +/* 80231F20 0022EE80 7E E4 BB 78 */ mr r4, r23 +/* 80231F24 0022EE84 4B E1 AD D1 */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +/* 80231F28 0022EE88 7E C0 07 75 */ extsb. r0, r22 +/* 80231F2C 0022EE8C 41 82 00 28 */ beq lbl_80231F54 +/* 80231F30 0022EE90 88 01 00 78 */ lbz r0, 0x78(r1) +/* 80231F34 0022EE94 28 00 00 00 */ cmplwi r0, 0 +/* 80231F38 0022EE98 41 82 00 14 */ beq lbl_80231F4C +/* 80231F3C 0022EE9C 34 61 00 70 */ addic. r3, r1, 0x70 +/* 80231F40 0022EEA0 41 82 00 0C */ beq lbl_80231F4C +/* 80231F44 0022EEA4 38 80 00 00 */ li r4, 0 +/* 80231F48 0022EEA8 48 10 EE F9 */ bl __dt__6CTokenFv +lbl_80231F4C: +/* 80231F4C 0022EEAC 38 00 00 00 */ li r0, 0 +/* 80231F50 0022EEB0 98 01 00 78 */ stb r0, 0x78(r1) +lbl_80231F54: +/* 80231F54 0022EEB4 7F 40 07 75 */ extsb. r0, r26 +/* 80231F58 0022EEB8 41 82 00 0C */ beq lbl_80231F64 +/* 80231F5C 0022EEBC 38 61 00 7C */ addi r3, r1, 0x7c +/* 80231F60 0022EEC0 48 10 BB 81 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80231F64: +/* 80231F64 0022EEC4 A0 9B 01 4C */ lhz r4, 0x14c(r27) +/* 80231F68 0022EEC8 38 61 00 58 */ addi r3, r1, 0x58 +/* 80231F6C 0022EECC A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80231F70 0022EED0 38 A0 00 7F */ li r5, 0x7f +/* 80231F74 0022EED4 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80231F78 0022EED8 38 C0 00 40 */ li r6, 0x40 +/* 80231F7C 0022EEDC 38 E0 00 00 */ li r7, 0 +/* 80231F80 0022EEE0 39 20 00 00 */ li r9, 0 +/* 80231F84 0022EEE4 48 0B 7D F1 */ bl SfxStart__11CSfxManagerFUsssbsbi +lbl_80231F88: +/* 80231F88 0022EEE8 80 1B 01 70 */ lwz r0, 0x170(r27) +/* 80231F8C 0022EEEC A0 9C 00 08 */ lhz r4, 8(r28) +/* 80231F90 0022EEF0 54 00 08 3C */ slwi r0, r0, 1 +/* 80231F94 0022EEF4 7C 7B 02 14 */ add r3, r27, r0 +/* 80231F98 0022EEF8 34 63 01 74 */ addic. r3, r3, 0x174 +/* 80231F9C 0022EEFC 41 82 00 08 */ beq lbl_80231FA4 +/* 80231FA0 0022EF00 B0 83 00 00 */ sth r4, 0(r3) +lbl_80231FA4: +/* 80231FA4 0022EF04 80 7B 01 70 */ lwz r3, 0x170(r27) +/* 80231FA8 0022EF08 38 03 00 01 */ addi r0, r3, 1 +/* 80231FAC 0022EF0C 90 1B 01 70 */ stw r0, 0x170(r27) +/* 80231FB0 0022EF10 48 00 00 80 */ b lbl_80232030 +lbl_80231FB4: +/* 80231FB4 0022EF14 C0 02 B6 A8 */ lfs f0, lbl_805AD3C8@sda21(r2) +/* 80231FB8 0022EF18 38 60 00 00 */ li r3, 0 +/* 80231FBC 0022EF1C 80 AD 96 28 */ lwz r5, lbl_805A81E8@sda21(r13) +/* 80231FC0 0022EF20 38 80 00 01 */ li r4, 1 +/* 80231FC4 0022EF24 D0 01 00 F8 */ stfs f0, 0xf8(r1) +/* 80231FC8 0022EF28 48 15 7F 2D */ bl __shl2i +/* 80231FCC 0022EF2C 39 40 00 00 */ li r10, 0 +/* 80231FD0 0022EF30 38 00 00 03 */ li r0, 3 +/* 80231FD4 0022EF34 90 81 00 C4 */ stw r4, 0xc4(r1) +/* 80231FD8 0022EF38 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80231FDC 0022EF3C 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 80231FE0 0022EF40 38 A1 00 1C */ addi r5, r1, 0x1c +/* 80231FE4 0022EF44 90 61 00 C0 */ stw r3, 0xc0(r1) +/* 80231FE8 0022EF48 38 81 00 24 */ addi r4, r1, 0x24 +/* 80231FEC 0022EF4C 7F A3 EB 78 */ mr r3, r29 +/* 80231FF0 0022EF50 38 C1 00 14 */ addi r6, r1, 0x14 +/* 80231FF4 0022EF54 91 41 00 CC */ stw r10, 0xcc(r1) +/* 80231FF8 0022EF58 38 E1 00 F0 */ addi r7, r1, 0xf0 +/* 80231FFC 0022EF5C 39 01 00 C0 */ addi r8, r1, 0xc0 +/* 80232000 0022EF60 91 41 00 C8 */ stw r10, 0xc8(r1) +/* 80232004 0022EF64 90 01 00 D0 */ stw r0, 0xd0(r1) +/* 80232008 0022EF68 A0 1B 00 08 */ lhz r0, 8(r27) +/* 8023200C 0022EF6C B0 01 00 14 */ sth r0, 0x14(r1) +/* 80232010 0022EF70 A1 5C 00 08 */ lhz r10, 8(r28) +/* 80232014 0022EF74 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80232018 0022EF78 B1 41 00 1C */ sth r10, 0x1c(r1) +/* 8023201C 0022EF7C A0 1B 00 08 */ lhz r0, 8(r27) +/* 80232020 0022EF80 B1 41 00 18 */ sth r10, 0x18(r1) +/* 80232024 0022EF84 B0 01 00 20 */ sth r0, 0x20(r1) +/* 80232028 0022EF88 B0 01 00 24 */ sth r0, 0x24(r1) +/* 8023202C 0022EF8C 4B E1 80 75 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +lbl_80232030: +/* 80232030 0022EF90 57 C0 06 3F */ clrlwi. r0, r30, 0x18 +/* 80232034 0022EF94 41 82 00 0C */ beq lbl_80232040 +/* 80232038 0022EF98 38 00 00 01 */ li r0, 1 +/* 8023203C 0022EF9C 98 1B 01 6C */ stb r0, 0x16c(r27) +lbl_80232040: +/* 80232040 0022EFA0 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 80232044 0022EFA4 41 82 00 0C */ beq lbl_80232050 +/* 80232048 0022EFA8 38 00 00 01 */ li r0, 1 +/* 8023204C 0022EFAC 98 1B 01 6D */ stb r0, 0x16d(r27) +lbl_80232050: +/* 80232050 0022EFB0 E3 E1 01 B8 */ psq_l f31, 440(r1), 0, qr0 +/* 80232054 0022EFB4 CB E1 01 B0 */ lfd f31, 0x1b0(r1) +/* 80232058 0022EFB8 E3 C1 01 A8 */ psq_l f30, 424(r1), 0, qr0 +/* 8023205C 0022EFBC CB C1 01 A0 */ lfd f30, 0x1a0(r1) +/* 80232060 0022EFC0 E3 A1 01 98 */ psq_l f29, 408(r1), 0, qr0 +/* 80232064 0022EFC4 CB A1 01 90 */ lfd f29, 0x190(r1) +/* 80232068 0022EFC8 E3 81 01 88 */ psq_l f28, 392(r1), 0, qr0 +/* 8023206C 0022EFCC CB 81 01 80 */ lfd f28, 0x180(r1) +/* 80232070 0022EFD0 E3 61 01 78 */ psq_l f27, 376(r1), 0, qr0 +/* 80232074 0022EFD4 CB 61 01 70 */ lfd f27, 0x170(r1) +/* 80232078 0022EFD8 BA C1 01 48 */ lmw r22, 0x148(r1) +/* 8023207C 0022EFDC 80 01 01 C4 */ lwz r0, 0x1c4(r1) +/* 80232080 0022EFE0 7C 08 03 A6 */ mtlr r0 +/* 80232084 0022EFE4 38 21 01 C0 */ addi r1, r1, 0x1c0 +/* 80232088 0022EFE8 4E 80 00 20 */ blr + +.global AddToRenderer__10CShockwaveCFRC14CFrustumPlanesRC13CStateManager +AddToRenderer__10CShockwaveCFRC14CFrustumPlanesRC13CStateManager: +/* 8023208C 0022EFEC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80232090 0022EFF0 7C 08 02 A6 */ mflr r0 +/* 80232094 0022EFF4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80232098 0022EFF8 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8023209C 0022EFFC 7C 7F 1B 78 */ mr r31, r3 +/* 802320A0 0022F000 4B E2 2A 99 */ bl AddToRenderer__6CActorCFRC14CFrustumPlanesRC13CStateManager +/* 802320A4 0022F004 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 802320A8 0022F008 80 9F 01 10 */ lwz r4, 0x110(r31) +/* 802320AC 0022F00C 81 83 00 00 */ lwz r12, 0(r3) +/* 802320B0 0022F010 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 802320B4 0022F014 7D 89 03 A6 */ mtctr r12 +/* 802320B8 0022F018 4E 80 04 21 */ bctrl +/* 802320BC 0022F01C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 802320C0 0022F020 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 802320C4 0022F024 7C 08 03 A6 */ mtlr r0 +/* 802320C8 0022F028 38 21 00 10 */ addi r1, r1, 0x10 +/* 802320CC 0022F02C 4E 80 00 20 */ blr + +.global Render__10CShockwaveCFRC13CStateManager +Render__10CShockwaveCFRC13CStateManager: +/* 802320D0 0022F030 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 802320D4 0022F034 7C 08 02 A6 */ mflr r0 +/* 802320D8 0022F038 90 01 00 14 */ stw r0, 0x14(r1) +/* 802320DC 0022F03C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 802320E0 0022F040 7C 7F 1B 78 */ mr r31, r3 +/* 802320E4 0022F044 4B E2 26 C1 */ bl Render__6CActorCFRC13CStateManager +/* 802320E8 0022F048 80 7F 01 10 */ lwz r3, 0x110(r31) +/* 802320EC 0022F04C 81 83 00 00 */ lwz r12, 0(r3) +/* 802320F0 0022F050 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 802320F4 0022F054 7D 89 03 A6 */ mtctr r12 +/* 802320F8 0022F058 4E 80 04 21 */ bctrl +/* 802320FC 0022F05C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80232100 0022F060 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80232104 0022F064 7C 08 03 A6 */ mtlr r0 +/* 80232108 0022F068 38 21 00 10 */ addi r1, r1, 0x10 +/* 8023210C 0022F06C 4E 80 00 20 */ blr + +.global Think__10CShockwaveFfR13CStateManager +Think__10CShockwaveFfR13CStateManager: +/* 80232110 0022F070 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 80232114 0022F074 7C 08 02 A6 */ mflr r0 +/* 80232118 0022F078 90 01 00 94 */ stw r0, 0x94(r1) +/* 8023211C 0022F07C DB E1 00 80 */ stfd f31, 0x80(r1) +/* 80232120 0022F080 F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0 +/* 80232124 0022F084 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 80232128 0022F088 93 C1 00 78 */ stw r30, 0x78(r1) +/* 8023212C 0022F08C 93 A1 00 74 */ stw r29, 0x74(r1) +/* 80232130 0022F090 93 81 00 70 */ stw r28, 0x70(r1) +/* 80232134 0022F094 88 03 00 30 */ lbz r0, 0x30(r3) +/* 80232138 0022F098 FF E0 08 90 */ fmr f31, f1 +/* 8023213C 0022F09C 7C 7F 1B 78 */ mr r31, r3 +/* 80232140 0022F0A0 7C 9C 23 78 */ mr r28, r4 +/* 80232144 0022F0A4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80232148 0022F0A8 41 82 00 EC */ beq lbl_80232234 +/* 8023214C 0022F0AC 80 7F 01 10 */ lwz r3, 0x110(r31) +/* 80232150 0022F0B0 81 83 00 00 */ lwz r12, 0(r3) +/* 80232154 0022F0B4 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80232158 0022F0B8 7D 89 03 A6 */ mtctr r12 +/* 8023215C 0022F0BC 4E 80 04 21 */ bctrl +/* 80232160 0022F0C0 C0 1F 01 58 */ lfs f0, 0x158(r31) +/* 80232164 0022F0C4 38 80 00 00 */ li r4, 0 +/* 80232168 0022F0C8 EC 00 F8 2A */ fadds f0, f0, f31 +/* 8023216C 0022F0CC D0 1F 01 58 */ stfs f0, 0x158(r31) +/* 80232170 0022F0D0 C0 3F 01 54 */ lfs f1, 0x154(r31) +/* 80232174 0022F0D4 C0 1F 01 50 */ lfs f0, 0x150(r31) +/* 80232178 0022F0D8 EC 01 07 FA */ fmadds f0, f1, f31, f0 +/* 8023217C 0022F0DC D0 1F 01 50 */ stfs f0, 0x150(r31) +/* 80232180 0022F0E0 C0 3F 01 44 */ lfs f1, 0x144(r31) +/* 80232184 0022F0E4 C0 1F 01 54 */ lfs f0, 0x154(r31) +/* 80232188 0022F0E8 EC 1F 00 7A */ fmadds f0, f31, f1, f0 +/* 8023218C 0022F0EC D0 1F 01 54 */ stfs f0, 0x154(r31) +/* 80232190 0022F0F0 80 7F 01 10 */ lwz r3, 0x110(r31) +/* 80232194 0022F0F4 C0 3F 01 50 */ lfs f1, 0x150(r31) +/* 80232198 0022F0F8 48 0E 54 E5 */ bl SetCEXTValue__11CElementGenFif +/* 8023219C 0022F0FC 3B C0 00 00 */ li r30, 0 +/* 802321A0 0022F100 48 00 00 44 */ b lbl_802321E4 +lbl_802321A4: +/* 802321A4 0022F104 80 7F 01 10 */ lwz r3, 0x110(r31) +/* 802321A8 0022F108 7F C4 F3 78 */ mr r4, r30 +/* 802321AC 0022F10C 48 0E 54 E1 */ bl GetActiveChildParticle__11CElementGenCFi +/* 802321B0 0022F110 81 83 00 00 */ lwz r12, 0(r3) +/* 802321B4 0022F114 7C 7D 1B 78 */ mr r29, r3 +/* 802321B8 0022F118 81 8C 00 74 */ lwz r12, 0x74(r12) +/* 802321BC 0022F11C 7D 89 03 A6 */ mtctr r12 +/* 802321C0 0022F120 4E 80 04 21 */ bctrl +/* 802321C4 0022F124 3C 03 AF BF */ addis r0, r3, 0xafbf +/* 802321C8 0022F128 28 00 52 54 */ cmplwi r0, 0x5254 +/* 802321CC 0022F12C 40 82 00 14 */ bne lbl_802321E0 +/* 802321D0 0022F130 C0 3F 01 50 */ lfs f1, 0x150(r31) +/* 802321D4 0022F134 7F A3 EB 78 */ mr r3, r29 +/* 802321D8 0022F138 38 80 00 00 */ li r4, 0 +/* 802321DC 0022F13C 48 0E 54 A1 */ bl SetCEXTValue__11CElementGenFif +lbl_802321E0: +/* 802321E0 0022F140 3B DE 00 01 */ addi r30, r30, 1 +lbl_802321E4: +/* 802321E4 0022F144 80 7F 01 10 */ lwz r3, 0x110(r31) +/* 802321E8 0022F148 48 0E 54 B5 */ bl GetNumActiveChildParticles__11CElementGenCFv +/* 802321EC 0022F14C 7C 1E 18 00 */ cmpw r30, r3 +/* 802321F0 0022F150 41 80 FF B4 */ blt lbl_802321A4 +/* 802321F4 0022F154 88 1F 01 6C */ lbz r0, 0x16c(r31) +/* 802321F8 0022F158 28 00 00 00 */ cmplwi r0, 0 +/* 802321FC 0022F15C 41 82 00 18 */ beq lbl_80232214 +/* 80232200 0022F160 C0 1F 01 64 */ lfs f0, 0x164(r31) +/* 80232204 0022F164 38 00 00 00 */ li r0, 0 +/* 80232208 0022F168 EC 00 F8 2A */ fadds f0, f0, f31 +/* 8023220C 0022F16C D0 1F 01 64 */ stfs f0, 0x164(r31) +/* 80232210 0022F170 98 1F 01 6C */ stb r0, 0x16c(r31) +lbl_80232214: +/* 80232214 0022F174 88 1F 01 6D */ lbz r0, 0x16d(r31) +/* 80232218 0022F178 28 00 00 00 */ cmplwi r0, 0 +/* 8023221C 0022F17C 41 82 00 18 */ beq lbl_80232234 +/* 80232220 0022F180 C0 1F 01 68 */ lfs f0, 0x168(r31) +/* 80232224 0022F184 38 00 00 00 */ li r0, 0 +/* 80232228 0022F188 EC 00 F8 2A */ fadds f0, f0, f31 +/* 8023222C 0022F18C D0 1F 01 68 */ stfs f0, 0x168(r31) +/* 80232230 0022F190 98 1F 01 6D */ stb r0, 0x16d(r31) +lbl_80232234: +/* 80232234 0022F194 80 7F 01 10 */ lwz r3, 0x110(r31) +/* 80232238 0022F198 81 83 00 00 */ lwz r12, 0(r3) +/* 8023223C 0022F19C 81 8C 00 58 */ lwz r12, 0x58(r12) +/* 80232240 0022F1A0 7D 89 03 A6 */ mtctr r12 +/* 80232244 0022F1A4 4E 80 04 21 */ bctrl +/* 80232248 0022F1A8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8023224C 0022F1AC 41 82 00 40 */ beq lbl_8023228C +/* 80232250 0022F1B0 C0 3F 01 5C */ lfs f1, 0x15c(r31) +/* 80232254 0022F1B4 C0 02 B6 A8 */ lfs f0, lbl_805AD3C8@sda21(r2) +/* 80232258 0022F1B8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8023225C 0022F1BC 40 81 00 30 */ ble lbl_8023228C +/* 80232260 0022F1C0 C0 1F 01 58 */ lfs f0, 0x158(r31) +/* 80232264 0022F1C4 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80232268 0022F1C8 4C 41 13 82 */ cror 2, 1, 2 +/* 8023226C 0022F1CC 40 82 00 20 */ bne lbl_8023228C +/* 80232270 0022F1D0 A0 1F 00 08 */ lhz r0, 8(r31) +/* 80232274 0022F1D4 7F 83 E3 78 */ mr r3, r28 +/* 80232278 0022F1D8 38 81 00 10 */ addi r4, r1, 0x10 +/* 8023227C 0022F1DC B0 01 00 0C */ sth r0, 0xc(r1) +/* 80232280 0022F1E0 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80232284 0022F1E4 4B E1 9F E9 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +/* 80232288 0022F1E8 48 00 00 70 */ b lbl_802322F8 +lbl_8023228C: +/* 8023228C 0022F1EC A0 7F 09 80 */ lhz r3, 0x980(r31) +/* 80232290 0022F1F0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80232294 0022F1F4 7C 03 00 40 */ cmplw r3, r0 +/* 80232298 0022F1F8 41 82 00 60 */ beq lbl_802322F8 +/* 8023229C 0022F1FC A0 1F 09 80 */ lhz r0, 0x980(r31) +/* 802322A0 0022F200 7F 83 E3 78 */ mr r3, r28 +/* 802322A4 0022F204 38 81 00 08 */ addi r4, r1, 8 +/* 802322A8 0022F208 B0 01 00 08 */ sth r0, 8(r1) +/* 802322AC 0022F20C 4B E1 A2 C9 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 802322B0 0022F210 7C 64 1B 78 */ mr r4, r3 +/* 802322B4 0022F214 38 61 00 14 */ addi r3, r1, 0x14 +/* 802322B8 0022F218 4B E7 B7 CD */ bl "__ct__24TCastToPtr<10CGameLight>FP7CEntity" +/* 802322BC 0022F21C 83 C3 00 04 */ lwz r30, 4(r3) +/* 802322C0 0022F220 28 1E 00 00 */ cmplwi r30, 0 +/* 802322C4 0022F224 41 82 00 34 */ beq lbl_802322F8 +/* 802322C8 0022F228 88 1F 00 30 */ lbz r0, 0x30(r31) +/* 802322CC 0022F22C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 802322D0 0022F230 41 82 00 28 */ beq lbl_802322F8 +/* 802322D4 0022F234 80 9F 01 10 */ lwz r4, 0x110(r31) +/* 802322D8 0022F238 38 61 00 1C */ addi r3, r1, 0x1c +/* 802322DC 0022F23C 81 84 00 00 */ lwz r12, 0(r4) +/* 802322E0 0022F240 81 8C 00 68 */ lwz r12, 0x68(r12) +/* 802322E4 0022F244 7D 89 03 A6 */ mtctr r12 +/* 802322E8 0022F248 4E 80 04 21 */ bctrl +/* 802322EC 0022F24C 7F C3 F3 78 */ mr r3, r30 +/* 802322F0 0022F250 38 81 00 1C */ addi r4, r1, 0x1c +/* 802322F4 0022F254 4B E8 34 51 */ bl SetLight__10CGameLightFRC6CLight +lbl_802322F8: +/* 802322F8 0022F258 E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0 +/* 802322FC 0022F25C 80 01 00 94 */ lwz r0, 0x94(r1) +/* 80232300 0022F260 CB E1 00 80 */ lfd f31, 0x80(r1) +/* 80232304 0022F264 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 80232308 0022F268 83 C1 00 78 */ lwz r30, 0x78(r1) +/* 8023230C 0022F26C 83 A1 00 74 */ lwz r29, 0x74(r1) +/* 80232310 0022F270 83 81 00 70 */ lwz r28, 0x70(r1) +/* 80232314 0022F274 7C 08 03 A6 */ mtlr r0 +/* 80232318 0022F278 38 21 00 90 */ addi r1, r1, 0x90 +/* 8023231C 0022F27C 4E 80 00 20 */ blr + +.global Accept__10CShockwaveFR8IVisitor +Accept__10CShockwaveFR8IVisitor: +/* 80232320 0022F280 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80232324 0022F284 7C 08 02 A6 */ mflr r0 +/* 80232328 0022F288 90 01 00 14 */ stw r0, 0x14(r1) +/* 8023232C 0022F28C 7C 60 1B 78 */ mr r0, r3 +/* 80232330 0022F290 7C 83 23 78 */ mr r3, r4 +/* 80232334 0022F294 81 84 00 00 */ lwz r12, 0(r4) +/* 80232338 0022F298 7C 04 03 78 */ mr r4, r0 +/* 8023233C 0022F29C 81 8C 00 08 */ lwz r12, 8(r12) +/* 80232340 0022F2A0 7D 89 03 A6 */ mtctr r12 +/* 80232344 0022F2A4 4E 80 04 21 */ bctrl +/* 80232348 0022F2A8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8023234C 0022F2AC 7C 08 03 A6 */ mtlr r0 +/* 80232350 0022F2B0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80232354 0022F2B4 4E 80 00 20 */ blr + +.global __ct__10CShockWaveFv +__ct__10CShockWaveFv: +/* 80232358 0022F2B8 94 21 FE 60 */ stwu r1, -0x1a0(r1) +/* 8023235C 0022F2BC 7C 08 02 A6 */ mflr r0 +/* 80232360 0022F2C0 90 01 01 A4 */ stw r0, 0x1a4(r1) +/* 80232364 0022F2C4 DB E1 01 90 */ stfd f31, 0x190(r1) +/* 80232368 0022F2C8 F3 E1 01 98 */ psq_st f31, 408(r1), 0, qr0 +/* 8023236C 0022F2CC DB C1 01 80 */ stfd f30, 0x180(r1) +/* 80232370 0022F2D0 F3 C1 01 88 */ psq_st f30, 392(r1), 0, qr0 +/* 80232374 0022F2D4 BF 21 01 64 */ stmw r25, 0x164(r1) +/* 80232378 0022F2D8 FF C0 08 90 */ fmr f30, f1 +/* 8023237C 0022F2DC 7C 7E 1B 78 */ mr r30, r3 +/* 80232380 0022F2E0 FF E0 10 90 */ fmr f31, f2 +/* 80232384 0022F2E4 7C 99 23 78 */ mr r25, r4 +/* 80232388 0022F2E8 7C BD 2B 78 */ mr r29, r5 +/* 8023238C 0022F2EC 7C DC 33 78 */ mr r28, r6 +/* 80232390 0022F2F0 7C FB 3B 78 */ mr r27, r7 +/* 80232394 0022F2F4 7D 1A 43 78 */ mr r26, r8 +/* 80232398 0022F2F8 7D 3F 4B 78 */ mr r31, r9 +/* 8023239C 0022F2FC 38 61 01 0C */ addi r3, r1, 0x10c +/* 802323A0 0022F300 4B E0 84 05 */ bl CModelDataNull__10CModelDataFv +/* 802323A4 0022F304 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 802323A8 0022F308 4B DE 8A 91 */ bl None__16CActorParametersFv +/* 802323AC 0022F30C A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 802323B0 0022F310 38 00 00 00 */ li r0, 0 +/* 802323B4 0022F314 80 AD 96 2C */ lwz r5, lbl_805A81EC@sda21(r13) +/* 802323B8 0022F318 38 60 00 00 */ li r3, 0 +/* 802323BC 0022F31C B0 81 00 10 */ sth r4, 0x10(r1) +/* 802323C0 0022F320 38 80 00 01 */ li r4, 1 +/* 802323C4 0022F324 90 01 00 4C */ stw r0, 0x4c(r1) +/* 802323C8 0022F328 90 01 00 48 */ stw r0, 0x48(r1) +/* 802323CC 0022F32C 48 15 7B 29 */ bl __shl2i +/* 802323D0 0022F330 80 A1 00 48 */ lwz r5, 0x48(r1) +/* 802323D4 0022F334 39 61 00 A4 */ addi r11, r1, 0xa4 +/* 802323D8 0022F338 80 C1 00 4C */ lwz r6, 0x4c(r1) +/* 802323DC 0022F33C 38 01 00 10 */ addi r0, r1, 0x10 +/* 802323E0 0022F340 7C A3 1B 78 */ or r3, r5, r3 +/* 802323E4 0022F344 A0 B9 00 00 */ lhz r5, 0(r25) +/* 802323E8 0022F348 7C C4 23 78 */ or r4, r6, r4 +/* 802323EC 0022F34C 90 61 00 48 */ stw r3, 0x48(r1) +/* 802323F0 0022F350 7F C3 F3 78 */ mr r3, r30 +/* 802323F4 0022F354 7F A6 EB 78 */ mr r6, r29 +/* 802323F8 0022F358 90 81 00 4C */ stw r4, 0x4c(r1) +/* 802323FC 0022F35C 7F 87 E3 78 */ mr r7, r28 +/* 80232400 0022F360 7F 68 DB 78 */ mr r8, r27 +/* 80232404 0022F364 38 81 00 14 */ addi r4, r1, 0x14 +/* 80232408 0022F368 B0 A1 00 14 */ sth r5, 0x14(r1) +/* 8023240C 0022F36C 39 21 01 0C */ addi r9, r1, 0x10c +/* 80232410 0022F370 39 41 00 48 */ addi r10, r1, 0x48 +/* 80232414 0022F374 38 A0 00 01 */ li r5, 1 +/* 80232418 0022F378 91 61 00 08 */ stw r11, 8(r1) +/* 8023241C 0022F37C 90 01 00 0C */ stw r0, 0xc(r1) +/* 80232420 0022F380 4B E2 34 01 */ bl "__ct__6CActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC16CActorParameters9TUniqueId" +/* 80232424 0022F384 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 80232428 0022F388 38 80 FF FF */ li r4, -1 +/* 8023242C 0022F38C 4B ED 41 DD */ bl __dt__16CActorParametersFv +/* 80232430 0022F390 38 61 01 0C */ addi r3, r1, 0x10c +/* 80232434 0022F394 38 80 FF FF */ li r4, -1 +/* 80232438 0022F398 4B EE 46 15 */ bl __dt__10CModelDataFv +/* 8023243C 0022F39C 3C 60 80 3F */ lis r3, lbl_803E8050@ha +/* 80232440 0022F3A0 3C 80 50 41 */ lis r4, 0x50415254@ha +/* 80232444 0022F3A4 38 03 80 50 */ addi r0, r3, lbl_803E8050@l +/* 80232448 0022F3A8 38 61 00 38 */ addi r3, r1, 0x38 +/* 8023244C 0022F3AC 90 1E 00 00 */ stw r0, 0(r30) +/* 80232450 0022F3B0 38 04 52 54 */ addi r0, r4, 0x50415254@l +/* 80232454 0022F3B4 38 A1 00 40 */ addi r5, r1, 0x40 +/* 80232458 0022F3B8 A0 9A 00 00 */ lhz r4, 0(r26) +/* 8023245C 0022F3BC B0 9E 00 E8 */ sth r4, 0xe8(r30) +/* 80232460 0022F3C0 80 9F 00 08 */ lwz r4, 8(r31) +/* 80232464 0022F3C4 90 9E 00 EC */ stw r4, 0xec(r30) +/* 80232468 0022F3C8 88 9F 00 0C */ lbz r4, 0xc(r31) +/* 8023246C 0022F3CC 98 9E 00 F0 */ stb r4, 0xf0(r30) +/* 80232470 0022F3D0 C0 1F 00 10 */ lfs f0, 0x10(r31) +/* 80232474 0022F3D4 D0 1E 00 F4 */ stfs f0, 0xf4(r30) +/* 80232478 0022F3D8 C0 1F 00 14 */ lfs f0, 0x14(r31) +/* 8023247C 0022F3DC D0 1E 00 F8 */ stfs f0, 0xf8(r30) +/* 80232480 0022F3E0 C0 1F 00 18 */ lfs f0, 0x18(r31) +/* 80232484 0022F3E4 D0 1E 00 FC */ stfs f0, 0xfc(r30) +/* 80232488 0022F3E8 C0 1F 00 1C */ lfs f0, 0x1c(r31) +/* 8023248C 0022F3EC D0 1E 01 00 */ stfs f0, 0x100(r30) +/* 80232490 0022F3F0 88 9F 00 20 */ lbz r4, 0x20(r31) +/* 80232494 0022F3F4 98 9E 01 04 */ stb r4, 0x104(r30) +/* 80232498 0022F3F8 80 DF 00 04 */ lwz r6, 4(r31) +/* 8023249C 0022F3FC 90 01 00 40 */ stw r0, 0x40(r1) +/* 802324A0 0022F400 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 802324A4 0022F404 90 C1 00 44 */ stw r6, 0x44(r1) +/* 802324A8 0022F408 81 84 00 00 */ lwz r12, 0(r4) +/* 802324AC 0022F40C 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 802324B0 0022F410 7D 89 03 A6 */ mtctr r12 +/* 802324B4 0022F414 4E 80 04 21 */ bctrl +/* 802324B8 0022F418 38 7E 01 08 */ addi r3, r30, 0x108 +/* 802324BC 0022F41C 38 81 00 38 */ addi r4, r1, 0x38 +/* 802324C0 0022F420 48 10 E9 E9 */ bl __ct__6CTokenFRC6CToken +/* 802324C4 0022F424 38 61 00 38 */ addi r3, r1, 0x38 +/* 802324C8 0022F428 38 80 FF FF */ li r4, -1 +/* 802324CC 0022F42C 48 10 E9 75 */ bl __dt__6CTokenFv +/* 802324D0 0022F430 3C 60 80 3D */ lis r3, lbl_803D3468@ha +/* 802324D4 0022F434 3B 20 00 00 */ li r25, 0 +/* 802324D8 0022F438 38 83 34 68 */ addi r4, r3, lbl_803D3468@l +/* 802324DC 0022F43C 38 A0 00 00 */ li r5, 0 +/* 802324E0 0022F440 38 60 03 40 */ li r3, 0x340 +/* 802324E4 0022F444 48 0E 33 89 */ bl __nw__FUlPCcPCc +/* 802324E8 0022F448 7C 7A 1B 79 */ or. r26, r3, r3 +/* 802324EC 0022F44C 41 82 00 2C */ beq lbl_80232518 +/* 802324F0 0022F450 38 61 00 30 */ addi r3, r1, 0x30 +/* 802324F4 0022F454 38 9E 01 08 */ addi r4, r30, 0x108 +/* 802324F8 0022F458 48 10 E9 B1 */ bl __ct__6CTokenFRC6CToken +/* 802324FC 0022F45C 7F 43 D3 78 */ mr r3, r26 +/* 80232500 0022F460 38 81 00 30 */ addi r4, r1, 0x30 +/* 80232504 0022F464 3B 20 00 01 */ li r25, 1 +/* 80232508 0022F468 38 A0 00 00 */ li r5, 0 +/* 8023250C 0022F46C 38 C0 00 01 */ li r6, 1 +/* 80232510 0022F470 48 0E CE D1 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 80232514 0022F474 7C 7A 1B 78 */ mr r26, r3 +lbl_80232518: +/* 80232518 0022F478 7F 20 07 75 */ extsb. r0, r25 +/* 8023251C 0022F47C 93 5E 01 10 */ stw r26, 0x110(r30) +/* 80232520 0022F480 41 82 00 10 */ beq lbl_80232530 +/* 80232524 0022F484 38 61 00 30 */ addi r3, r1, 0x30 +/* 80232528 0022F488 38 80 00 00 */ li r4, 0 +/* 8023252C 0022F48C 48 10 E9 15 */ bl __dt__6CTokenFv +lbl_80232530: +/* 80232530 0022F490 80 1F 00 00 */ lwz r0, 0(r31) +/* 80232534 0022F494 38 60 00 00 */ li r3, 0 +/* 80232538 0022F498 C0 02 B6 A8 */ lfs f0, lbl_805AD3C8@sda21(r2) +/* 8023253C 0022F49C 3B A0 00 00 */ li r29, 0 +/* 80232540 0022F4A0 90 1E 01 14 */ stw r0, 0x114(r30) +/* 80232544 0022F4A4 3B 80 00 00 */ li r28, 0 +/* 80232548 0022F4A8 3B 60 00 00 */ li r27, 0 +/* 8023254C 0022F4AC 3B 40 00 00 */ li r26, 0 +/* 80232550 0022F4B0 80 1F 00 04 */ lwz r0, 4(r31) +/* 80232554 0022F4B4 90 1E 01 18 */ stw r0, 0x118(r30) +/* 80232558 0022F4B8 80 1F 00 08 */ lwz r0, 8(r31) +/* 8023255C 0022F4BC 90 1E 01 1C */ stw r0, 0x11c(r30) +/* 80232560 0022F4C0 88 1F 00 0C */ lbz r0, 0xc(r31) +/* 80232564 0022F4C4 98 1E 01 20 */ stb r0, 0x120(r30) +/* 80232568 0022F4C8 C0 3F 00 10 */ lfs f1, 0x10(r31) +/* 8023256C 0022F4CC D0 3E 01 24 */ stfs f1, 0x124(r30) +/* 80232570 0022F4D0 C0 3F 00 14 */ lfs f1, 0x14(r31) +/* 80232574 0022F4D4 D0 3E 01 28 */ stfs f1, 0x128(r30) +/* 80232578 0022F4D8 C0 3F 00 18 */ lfs f1, 0x18(r31) +/* 8023257C 0022F4DC D0 3E 01 2C */ stfs f1, 0x12c(r30) +/* 80232580 0022F4E0 C0 3F 00 1C */ lfs f1, 0x1c(r31) +/* 80232584 0022F4E4 D0 3E 01 30 */ stfs f1, 0x130(r30) +/* 80232588 0022F4E8 88 1F 00 20 */ lbz r0, 0x20(r31) +/* 8023258C 0022F4EC 98 1E 01 34 */ stb r0, 0x134(r30) +/* 80232590 0022F4F0 C0 3F 00 24 */ lfs f1, 0x24(r31) +/* 80232594 0022F4F4 D0 3E 01 38 */ stfs f1, 0x138(r30) +/* 80232598 0022F4F8 C0 3F 00 28 */ lfs f1, 0x28(r31) +/* 8023259C 0022F4FC D0 3E 01 3C */ stfs f1, 0x13c(r30) +/* 802325A0 0022F500 C0 3F 00 2C */ lfs f1, 0x2c(r31) +/* 802325A4 0022F504 D0 3E 01 40 */ stfs f1, 0x140(r30) +/* 802325A8 0022F508 C0 3F 00 30 */ lfs f1, 0x30(r31) +/* 802325AC 0022F50C D0 3E 01 44 */ stfs f1, 0x144(r30) +/* 802325B0 0022F510 80 1F 00 34 */ lwz r0, 0x34(r31) +/* 802325B4 0022F514 90 1E 01 48 */ stw r0, 0x148(r30) +/* 802325B8 0022F518 A0 1F 00 38 */ lhz r0, 0x38(r31) +/* 802325BC 0022F51C B0 1E 01 4C */ sth r0, 0x14c(r30) +/* 802325C0 0022F520 C0 3F 00 24 */ lfs f1, 0x24(r31) +/* 802325C4 0022F524 D0 3E 01 50 */ stfs f1, 0x150(r30) +/* 802325C8 0022F528 C0 3F 00 2C */ lfs f1, 0x2c(r31) +/* 802325CC 0022F52C D0 3E 01 54 */ stfs f1, 0x154(r30) +/* 802325D0 0022F530 D0 1E 01 58 */ stfs f0, 0x158(r30) +/* 802325D4 0022F534 D3 DE 01 5C */ stfs f30, 0x15c(r30) +/* 802325D8 0022F538 D3 FE 01 60 */ stfs f31, 0x160(r30) +/* 802325DC 0022F53C D0 1E 01 64 */ stfs f0, 0x164(r30) +/* 802325E0 0022F540 D0 1E 01 68 */ stfs f0, 0x168(r30) +/* 802325E4 0022F544 98 7E 01 6C */ stb r3, 0x16c(r30) +/* 802325E8 0022F548 98 7E 01 6D */ stb r3, 0x16d(r30) +/* 802325EC 0022F54C 90 7E 01 70 */ stw r3, 0x170(r30) +/* 802325F0 0022F550 80 9F 00 34 */ lwz r4, 0x34(r31) +/* 802325F4 0022F554 3C 04 00 01 */ addis r0, r4, 1 +/* 802325F8 0022F558 28 00 FF FF */ cmplwi r0, 0xffff +/* 802325FC 0022F55C 41 82 00 68 */ beq lbl_80232664 +/* 80232600 0022F560 3C 60 45 4C */ lis r3, 0x454C5343@ha +/* 80232604 0022F564 90 81 00 2C */ stw r4, 0x2c(r1) +/* 80232608 0022F568 38 03 53 43 */ addi r0, r3, 0x454C5343@l +/* 8023260C 0022F56C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80232610 0022F570 90 01 00 28 */ stw r0, 0x28(r1) +/* 80232614 0022F574 38 61 00 20 */ addi r3, r1, 0x20 +/* 80232618 0022F578 38 A1 00 28 */ addi r5, r1, 0x28 +/* 8023261C 0022F57C 81 84 00 00 */ lwz r12, 0(r4) +/* 80232620 0022F580 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80232624 0022F584 7D 89 03 A6 */ mtctr r12 +/* 80232628 0022F588 4E 80 04 21 */ bctrl +/* 8023262C 0022F58C 38 61 00 18 */ addi r3, r1, 0x18 +/* 80232630 0022F590 38 81 00 20 */ addi r4, r1, 0x20 +/* 80232634 0022F594 3B A0 00 01 */ li r29, 1 +/* 80232638 0022F598 48 10 E8 71 */ bl __ct__6CTokenFRC6CToken +/* 8023263C 0022F59C 38 00 00 01 */ li r0, 1 +/* 80232640 0022F5A0 34 61 00 68 */ addic. r3, r1, 0x68 +/* 80232644 0022F5A4 98 01 00 70 */ stb r0, 0x70(r1) +/* 80232648 0022F5A8 3B 80 00 01 */ li r28, 1 +/* 8023264C 0022F5AC 41 82 00 0C */ beq lbl_80232658 +/* 80232650 0022F5B0 38 81 00 18 */ addi r4, r1, 0x18 +/* 80232654 0022F5B4 48 10 E8 55 */ bl __ct__6CTokenFRC6CToken +lbl_80232658: +/* 80232658 0022F5B8 38 81 00 68 */ addi r4, r1, 0x68 +/* 8023265C 0022F5BC 3B 60 00 01 */ li r27, 1 +/* 80232660 0022F5C0 48 00 00 10 */ b lbl_80232670 +lbl_80232664: +/* 80232664 0022F5C4 98 61 00 64 */ stb r3, 0x64(r1) +/* 80232668 0022F5C8 38 81 00 5C */ addi r4, r1, 0x5c +/* 8023266C 0022F5CC 3B 40 00 01 */ li r26, 1 +lbl_80232670: +/* 80232670 0022F5D0 88 04 00 08 */ lbz r0, 8(r4) +/* 80232674 0022F5D4 98 1E 09 7C */ stb r0, 0x97c(r30) +/* 80232678 0022F5D8 88 04 00 08 */ lbz r0, 8(r4) +/* 8023267C 0022F5DC 28 00 00 00 */ cmplwi r0, 0 +/* 80232680 0022F5E0 41 82 00 10 */ beq lbl_80232690 +/* 80232684 0022F5E4 34 7E 09 74 */ addic. r3, r30, 0x974 +/* 80232688 0022F5E8 41 82 00 08 */ beq lbl_80232690 +/* 8023268C 0022F5EC 48 10 E8 1D */ bl __ct__6CTokenFRC6CToken +lbl_80232690: +/* 80232690 0022F5F0 7F 40 07 75 */ extsb. r0, r26 +/* 80232694 0022F5F4 41 82 00 28 */ beq lbl_802326BC +/* 80232698 0022F5F8 88 01 00 64 */ lbz r0, 0x64(r1) +/* 8023269C 0022F5FC 28 00 00 00 */ cmplwi r0, 0 +/* 802326A0 0022F600 41 82 00 14 */ beq lbl_802326B4 +/* 802326A4 0022F604 34 61 00 5C */ addic. r3, r1, 0x5c +/* 802326A8 0022F608 41 82 00 0C */ beq lbl_802326B4 +/* 802326AC 0022F60C 38 80 00 00 */ li r4, 0 +/* 802326B0 0022F610 48 10 E7 91 */ bl __dt__6CTokenFv +lbl_802326B4: +/* 802326B4 0022F614 38 00 00 00 */ li r0, 0 +/* 802326B8 0022F618 98 01 00 64 */ stb r0, 0x64(r1) +lbl_802326BC: +/* 802326BC 0022F61C 7F 60 07 75 */ extsb. r0, r27 +/* 802326C0 0022F620 41 82 00 28 */ beq lbl_802326E8 +/* 802326C4 0022F624 88 01 00 70 */ lbz r0, 0x70(r1) +/* 802326C8 0022F628 28 00 00 00 */ cmplwi r0, 0 +/* 802326CC 0022F62C 41 82 00 14 */ beq lbl_802326E0 +/* 802326D0 0022F630 34 61 00 68 */ addic. r3, r1, 0x68 +/* 802326D4 0022F634 41 82 00 0C */ beq lbl_802326E0 +/* 802326D8 0022F638 38 80 00 00 */ li r4, 0 +/* 802326DC 0022F63C 48 10 E7 65 */ bl __dt__6CTokenFv +lbl_802326E0: +/* 802326E0 0022F640 38 00 00 00 */ li r0, 0 +/* 802326E4 0022F644 98 01 00 70 */ stb r0, 0x70(r1) +lbl_802326E8: +/* 802326E8 0022F648 7F 80 07 75 */ extsb. r0, r28 +/* 802326EC 0022F64C 41 82 00 10 */ beq lbl_802326FC +/* 802326F0 0022F650 38 61 00 18 */ addi r3, r1, 0x18 +/* 802326F4 0022F654 38 80 00 00 */ li r4, 0 +/* 802326F8 0022F658 48 10 E7 49 */ bl __dt__6CTokenFv +lbl_802326FC: +/* 802326FC 0022F65C 7F A0 07 75 */ extsb. r0, r29 +/* 80232700 0022F660 41 82 00 10 */ beq lbl_80232710 +/* 80232704 0022F664 38 61 00 20 */ addi r3, r1, 0x20 +/* 80232708 0022F668 38 80 FF FF */ li r4, -1 +/* 8023270C 0022F66C 48 10 E7 35 */ bl __dt__6CTokenFv +lbl_80232710: +/* 80232710 0022F670 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80232714 0022F674 38 80 00 01 */ li r4, 1 +/* 80232718 0022F678 B0 1E 09 80 */ sth r0, 0x980(r30) +/* 8023271C 0022F67C 80 7E 01 10 */ lwz r3, 0x110(r30) +/* 80232720 0022F680 81 83 00 00 */ lwz r12, 0(r3) +/* 80232724 0022F684 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80232728 0022F688 7D 89 03 A6 */ mtctr r12 +/* 8023272C 0022F68C 4E 80 04 21 */ bctrl +/* 80232730 0022F690 83 5E 01 10 */ lwz r26, 0x110(r30) +/* 80232734 0022F694 38 61 00 74 */ addi r3, r1, 0x74 +/* 80232738 0022F698 38 9E 00 34 */ addi r4, r30, 0x34 +/* 8023273C 0022F69C 48 0E 05 05 */ bl GetRotation__12CTransform4fCFv +/* 80232740 0022F6A0 7F 43 D3 78 */ mr r3, r26 +/* 80232744 0022F6A4 38 81 00 74 */ addi r4, r1, 0x74 +/* 80232748 0022F6A8 81 9A 00 00 */ lwz r12, 0(r26) +/* 8023274C 0022F6AC 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 80232750 0022F6B0 7D 89 03 A6 */ mtctr r12 +/* 80232754 0022F6B4 4E 80 04 21 */ bctrl +/* 80232758 0022F6B8 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 8023275C 0022F6BC 38 81 00 50 */ addi r4, r1, 0x50 +/* 80232760 0022F6C0 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 80232764 0022F6C4 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 80232768 0022F6C8 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 8023276C 0022F6CC D0 21 00 54 */ stfs f1, 0x54(r1) +/* 80232770 0022F6D0 D0 41 00 58 */ stfs f2, 0x58(r1) +/* 80232774 0022F6D4 80 7E 01 10 */ lwz r3, 0x110(r30) +/* 80232778 0022F6D8 81 83 00 00 */ lwz r12, 0(r3) +/* 8023277C 0022F6DC 81 8C 00 20 */ lwz r12, 0x20(r12) +/* 80232780 0022F6E0 7D 89 03 A6 */ mtctr r12 +/* 80232784 0022F6E4 4E 80 04 21 */ bctrl +/* 80232788 0022F6E8 88 1E 00 E6 */ lbz r0, 0xe6(r30) +/* 8023278C 0022F6EC 38 60 00 02 */ li r3, 2 +/* 80232790 0022F6F0 50 60 1E F8 */ rlwimi r0, r3, 3, 0x1b, 0x1c +/* 80232794 0022F6F4 7F C3 F3 78 */ mr r3, r30 +/* 80232798 0022F6F8 98 1E 00 E6 */ stb r0, 0xe6(r30) +/* 8023279C 0022F6FC E3 E1 01 98 */ psq_l f31, 408(r1), 0, qr0 +/* 802327A0 0022F700 CB E1 01 90 */ lfd f31, 0x190(r1) +/* 802327A4 0022F704 E3 C1 01 88 */ psq_l f30, 392(r1), 0, qr0 +/* 802327A8 0022F708 CB C1 01 80 */ lfd f30, 0x180(r1) +/* 802327AC 0022F70C BB 21 01 64 */ lmw r25, 0x164(r1) +/* 802327B0 0022F710 80 01 01 A4 */ lwz r0, 0x1a4(r1) +/* 802327B4 0022F714 7C 08 03 A6 */ mtlr r0 +/* 802327B8 0022F718 38 21 01 A0 */ addi r1, r1, 0x1a0 +/* 802327BC 0022F71C 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Weapons/CWaveBuster.s b/asm/Kyoto_CWD/Weapons/CWaveBuster.s new file mode 100644 index 00000000..5c680fb6 --- /dev/null +++ b/asm/Kyoto_CWD/Weapons/CWaveBuster.s @@ -0,0 +1,3319 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global sub_801bd69c +sub_801bd69c: +/* 801BD69C 001BA5FC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801BD6A0 001BA600 7C 08 02 A6 */ mflr r0 +/* 801BD6A4 001BA604 90 01 00 14 */ stw r0, 0x14(r1) +/* 801BD6A8 001BA608 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801BD6AC 001BA60C 7C 9F 23 78 */ mr r31, r4 +/* 801BD6B0 001BA610 93 C1 00 08 */ stw r30, 8(r1) +/* 801BD6B4 001BA614 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801BD6B8 001BA618 41 82 01 3C */ beq lbl_801BD7F4 +/* 801BD6BC 001BA61C 3C 60 80 3E */ lis r3, lbl_803E5318@ha +/* 801BD6C0 001BA620 34 1E 03 90 */ addic. r0, r30, 0x390 +/* 801BD6C4 001BA624 38 03 53 18 */ addi r0, r3, lbl_803E5318@l +/* 801BD6C8 001BA628 90 1E 00 00 */ stw r0, 0(r30) +/* 801BD6CC 001BA62C 41 82 00 24 */ beq lbl_801BD6F0 +/* 801BD6D0 001BA630 80 7E 03 90 */ lwz r3, 0x390(r30) +/* 801BD6D4 001BA634 28 03 00 00 */ cmplwi r3, 0 +/* 801BD6D8 001BA638 41 82 00 18 */ beq lbl_801BD6F0 +/* 801BD6DC 001BA63C 81 83 00 00 */ lwz r12, 0(r3) +/* 801BD6E0 001BA640 38 80 00 01 */ li r4, 1 +/* 801BD6E4 001BA644 81 8C 00 08 */ lwz r12, 8(r12) +/* 801BD6E8 001BA648 7D 89 03 A6 */ mtctr r12 +/* 801BD6EC 001BA64C 4E 80 04 21 */ bctrl +lbl_801BD6F0: +/* 801BD6F0 001BA650 34 1E 03 8C */ addic. r0, r30, 0x38c +/* 801BD6F4 001BA654 41 82 00 24 */ beq lbl_801BD718 +/* 801BD6F8 001BA658 80 7E 03 8C */ lwz r3, 0x38c(r30) +/* 801BD6FC 001BA65C 28 03 00 00 */ cmplwi r3, 0 +/* 801BD700 001BA660 41 82 00 18 */ beq lbl_801BD718 +/* 801BD704 001BA664 81 83 00 00 */ lwz r12, 0(r3) +/* 801BD708 001BA668 38 80 00 01 */ li r4, 1 +/* 801BD70C 001BA66C 81 8C 00 08 */ lwz r12, 8(r12) +/* 801BD710 001BA670 7D 89 03 A6 */ mtctr r12 +/* 801BD714 001BA674 4E 80 04 21 */ bctrl +lbl_801BD718: +/* 801BD718 001BA678 34 1E 03 88 */ addic. r0, r30, 0x388 +/* 801BD71C 001BA67C 41 82 00 24 */ beq lbl_801BD740 +/* 801BD720 001BA680 80 7E 03 88 */ lwz r3, 0x388(r30) +/* 801BD724 001BA684 28 03 00 00 */ cmplwi r3, 0 +/* 801BD728 001BA688 41 82 00 18 */ beq lbl_801BD740 +/* 801BD72C 001BA68C 81 83 00 00 */ lwz r12, 0(r3) +/* 801BD730 001BA690 38 80 00 01 */ li r4, 1 +/* 801BD734 001BA694 81 8C 00 08 */ lwz r12, 8(r12) +/* 801BD738 001BA698 7D 89 03 A6 */ mtctr r12 +/* 801BD73C 001BA69C 4E 80 04 21 */ bctrl +lbl_801BD740: +/* 801BD740 001BA6A0 34 1E 03 84 */ addic. r0, r30, 0x384 +/* 801BD744 001BA6A4 41 82 00 24 */ beq lbl_801BD768 +/* 801BD748 001BA6A8 80 7E 03 84 */ lwz r3, 0x384(r30) +/* 801BD74C 001BA6AC 28 03 00 00 */ cmplwi r3, 0 +/* 801BD750 001BA6B0 41 82 00 18 */ beq lbl_801BD768 +/* 801BD754 001BA6B4 81 83 00 00 */ lwz r12, 0(r3) +/* 801BD758 001BA6B8 38 80 00 01 */ li r4, 1 +/* 801BD75C 001BA6BC 81 8C 00 08 */ lwz r12, 8(r12) +/* 801BD760 001BA6C0 7D 89 03 A6 */ mtctr r12 +/* 801BD764 001BA6C4 4E 80 04 21 */ bctrl +lbl_801BD768: +/* 801BD768 001BA6C8 34 1E 03 78 */ addic. r0, r30, 0x378 +/* 801BD76C 001BA6CC 41 82 00 18 */ beq lbl_801BD784 +/* 801BD770 001BA6D0 34 1E 03 78 */ addic. r0, r30, 0x378 +/* 801BD774 001BA6D4 41 82 00 10 */ beq lbl_801BD784 +/* 801BD778 001BA6D8 38 7E 03 78 */ addi r3, r30, 0x378 +/* 801BD77C 001BA6DC 38 80 00 00 */ li r4, 0 +/* 801BD780 001BA6E0 48 18 36 C1 */ bl __dt__6CTokenFv +lbl_801BD784: +/* 801BD784 001BA6E4 34 1E 03 6C */ addic. r0, r30, 0x36c +/* 801BD788 001BA6E8 41 82 00 18 */ beq lbl_801BD7A0 +/* 801BD78C 001BA6EC 34 1E 03 6C */ addic. r0, r30, 0x36c +/* 801BD790 001BA6F0 41 82 00 10 */ beq lbl_801BD7A0 +/* 801BD794 001BA6F4 38 7E 03 6C */ addi r3, r30, 0x36c +/* 801BD798 001BA6F8 38 80 00 00 */ li r4, 0 +/* 801BD79C 001BA6FC 48 18 36 A5 */ bl __dt__6CTokenFv +lbl_801BD7A0: +/* 801BD7A0 001BA700 34 1E 03 60 */ addic. r0, r30, 0x360 +/* 801BD7A4 001BA704 41 82 00 18 */ beq lbl_801BD7BC +/* 801BD7A8 001BA708 34 1E 03 60 */ addic. r0, r30, 0x360 +/* 801BD7AC 001BA70C 41 82 00 10 */ beq lbl_801BD7BC +/* 801BD7B0 001BA710 38 7E 03 60 */ addi r3, r30, 0x360 +/* 801BD7B4 001BA714 38 80 00 00 */ li r4, 0 +/* 801BD7B8 001BA718 48 18 36 89 */ bl __dt__6CTokenFv +lbl_801BD7BC: +/* 801BD7BC 001BA71C 34 1E 03 54 */ addic. r0, r30, 0x354 +/* 801BD7C0 001BA720 41 82 00 18 */ beq lbl_801BD7D8 +/* 801BD7C4 001BA724 34 1E 03 54 */ addic. r0, r30, 0x354 +/* 801BD7C8 001BA728 41 82 00 10 */ beq lbl_801BD7D8 +/* 801BD7CC 001BA72C 38 7E 03 54 */ addi r3, r30, 0x354 +/* 801BD7D0 001BA730 38 80 00 00 */ li r4, 0 +/* 801BD7D4 001BA734 48 18 36 6D */ bl __dt__6CTokenFv +lbl_801BD7D8: +/* 801BD7D8 001BA738 7F C3 F3 78 */ mr r3, r30 +/* 801BD7DC 001BA73C 38 80 00 00 */ li r4, 0 +/* 801BD7E0 001BA740 4B E7 9C 21 */ bl __dt__15CGameProjectileFv +/* 801BD7E4 001BA744 7F E0 07 35 */ extsh. r0, r31 +/* 801BD7E8 001BA748 40 81 00 0C */ ble lbl_801BD7F4 +/* 801BD7EC 001BA74C 7F C3 F3 78 */ mr r3, r30 +/* 801BD7F0 001BA750 48 15 81 41 */ bl Free__7CMemoryFPCv +lbl_801BD7F4: +/* 801BD7F4 001BA754 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801BD7F8 001BA758 7F C3 F3 78 */ mr r3, r30 +/* 801BD7FC 001BA75C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801BD800 001BA760 83 C1 00 08 */ lwz r30, 8(r1) +/* 801BD804 001BA764 7C 08 03 A6 */ mtlr r0 +/* 801BD808 001BA768 38 21 00 10 */ addi r1, r1, 0x10 +/* 801BD80C 001BA76C 4E 80 00 20 */ blr + +.global sub_801bd810 +sub_801bd810: +/* 801BD810 001BA770 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801BD814 001BA774 7C 08 02 A6 */ mflr r0 +/* 801BD818 001BA778 90 01 00 34 */ stw r0, 0x34(r1) +/* 801BD81C 001BA77C 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801BD820 001BA780 7C 7F 1B 78 */ mr r31, r3 +/* 801BD824 001BA784 88 04 03 D0 */ lbz r0, 0x3d0(r4) +/* 801BD828 001BA788 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 801BD82C 001BA78C 41 82 00 10 */ beq lbl_801BD83C +/* 801BD830 001BA790 38 00 00 00 */ li r0, 0 +/* 801BD834 001BA794 98 1F 00 18 */ stb r0, 0x18(r31) +/* 801BD838 001BA798 48 00 00 4C */ b lbl_801BD884 +lbl_801BD83C: +/* 801BD83C 001BA79C 38 61 00 08 */ addi r3, r1, 8 +/* 801BD840 001BA7A0 4B E7 CA B9 */ bl GetProjectileBounds__15CGameProjectileCFv +/* 801BD844 001BA7A4 38 00 00 01 */ li r0, 1 +/* 801BD848 001BA7A8 28 1F 00 00 */ cmplwi r31, 0 +/* 801BD84C 001BA7AC 98 1F 00 18 */ stb r0, 0x18(r31) +/* 801BD850 001BA7B0 41 82 00 34 */ beq lbl_801BD884 +/* 801BD854 001BA7B4 C0 01 00 08 */ lfs f0, 8(r1) +/* 801BD858 001BA7B8 D0 1F 00 00 */ stfs f0, 0(r31) +/* 801BD85C 001BA7BC C0 01 00 0C */ lfs f0, 0xc(r1) +/* 801BD860 001BA7C0 D0 1F 00 04 */ stfs f0, 4(r31) +/* 801BD864 001BA7C4 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 801BD868 001BA7C8 D0 1F 00 08 */ stfs f0, 8(r31) +/* 801BD86C 001BA7CC C0 01 00 14 */ lfs f0, 0x14(r1) +/* 801BD870 001BA7D0 D0 1F 00 0C */ stfs f0, 0xc(r31) +/* 801BD874 001BA7D4 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 801BD878 001BA7D8 D0 1F 00 10 */ stfs f0, 0x10(r31) +/* 801BD87C 001BA7DC C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 801BD880 001BA7E0 D0 1F 00 14 */ stfs f0, 0x14(r31) +lbl_801BD884: +/* 801BD884 001BA7E4 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801BD888 001BA7E8 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801BD88C 001BA7EC 7C 08 03 A6 */ mtlr r0 +/* 801BD890 001BA7F0 38 21 00 30 */ addi r1, r1, 0x30 +/* 801BD894 001BA7F4 4E 80 00 20 */ blr + +.global sub_801bd898 +sub_801bd898: +/* 801BD898 001BA7F8 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 801BD89C 001BA7FC 7C 08 02 A6 */ mflr r0 +/* 801BD8A0 001BA800 90 01 00 94 */ stw r0, 0x94(r1) +/* 801BD8A4 001BA804 DB E1 00 80 */ stfd f31, 0x80(r1) +/* 801BD8A8 001BA808 F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0 +/* 801BD8AC 001BA80C 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 801BD8B0 001BA810 93 C1 00 78 */ stw r30, 0x78(r1) +/* 801BD8B4 001BA814 93 A1 00 74 */ stw r29, 0x74(r1) +/* 801BD8B8 001BA818 88 07 00 20 */ lbz r0, 0x20(r7) +/* 801BD8BC 001BA81C FF E0 08 90 */ fmr f31, f1 +/* 801BD8C0 001BA820 7C 7D 1B 78 */ mr r29, r3 +/* 801BD8C4 001BA824 7D 1E 43 78 */ mr r30, r8 +/* 801BD8C8 001BA828 28 00 00 00 */ cmplwi r0, 0 +/* 801BD8CC 001BA82C 38 00 00 00 */ li r0, 0 +/* 801BD8D0 001BA830 40 82 00 0C */ bne lbl_801BD8DC +/* 801BD8D4 001BA834 38 00 00 01 */ li r0, 1 +/* 801BD8D8 001BA838 48 00 00 1C */ b lbl_801BD8F4 +lbl_801BD8DC: +/* 801BD8DC 001BA83C C0 27 00 00 */ lfs f1, 0(r7) +/* 801BD8E0 001BA840 C0 05 00 00 */ lfs f0, 0(r5) +/* 801BD8E4 001BA844 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801BD8E8 001BA848 4C 41 13 82 */ cror 2, 1, 2 +/* 801BD8EC 001BA84C 40 82 00 08 */ bne lbl_801BD8F4 +/* 801BD8F0 001BA850 38 00 00 01 */ li r0, 1 +lbl_801BD8F4: +/* 801BD8F4 001BA854 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 801BD8F8 001BA858 41 82 00 F4 */ beq lbl_801BD9EC +/* 801BD8FC 001BA85C 88 06 00 20 */ lbz r0, 0x20(r6) +/* 801BD900 001BA860 28 00 00 00 */ cmplwi r0, 0 +/* 801BD904 001BA864 41 82 00 E0 */ beq lbl_801BD9E4 +/* 801BD908 001BA868 A0 04 00 00 */ lhz r0, 0(r4) +/* 801BD90C 001BA86C 7F C3 F3 78 */ mr r3, r30 +/* 801BD910 001BA870 38 81 00 20 */ addi r4, r1, 0x20 +/* 801BD914 001BA874 B0 01 00 20 */ sth r0, 0x20(r1) +/* 801BD918 001BA878 4B E8 EC 5D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801BD91C 001BA87C 7C 64 1B 78 */ mr r4, r3 +/* 801BD920 001BA880 38 61 00 24 */ addi r3, r1, 0x24 +/* 801BD924 001BA884 4B EF 23 6D */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 801BD928 001BA888 83 E3 00 04 */ lwz r31, 4(r3) +/* 801BD92C 001BA88C 28 1F 00 00 */ cmplwi r31, 0 +/* 801BD930 001BA890 41 82 00 B4 */ beq lbl_801BD9E4 +/* 801BD934 001BA894 7F E3 FB 78 */ mr r3, r31 +/* 801BD938 001BA898 7F A4 EB 78 */ mr r4, r29 +/* 801BD93C 001BA89C 81 9F 00 00 */ lwz r12, 0(r31) +/* 801BD940 001BA8A0 7F C5 F3 78 */ mr r5, r30 +/* 801BD944 001BA8A4 81 8C 00 44 */ lwz r12, 0x44(r12) +/* 801BD948 001BA8A8 7D 89 03 A6 */ mtctr r12 +/* 801BD94C 001BA8AC 4E 80 04 21 */ bctrl +/* 801BD950 001BA8B0 C0 7D 00 58 */ lfs f3, 0x58(r29) +/* 801BD954 001BA8B4 FC 20 F8 90 */ fmr f1, f31 +/* 801BD958 001BA8B8 C0 5D 00 48 */ lfs f2, 0x48(r29) +/* 801BD95C 001BA8BC 38 61 00 50 */ addi r3, r1, 0x50 +/* 801BD960 001BA8C0 C0 1D 00 38 */ lfs f0, 0x38(r29) +/* 801BD964 001BA8C4 38 9D 01 2C */ addi r4, r29, 0x12c +/* 801BD968 001BA8C8 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801BD96C 001BA8CC D0 41 00 30 */ stfs f2, 0x30(r1) +/* 801BD970 001BA8D0 D0 61 00 34 */ stfs f3, 0x34(r1) +/* 801BD974 001BA8D4 80 1D 00 F8 */ lwz r0, 0xf8(r29) +/* 801BD978 001BA8D8 80 BD 00 FC */ lwz r5, 0xfc(r29) +/* 801BD97C 001BA8DC 90 A1 00 3C */ stw r5, 0x3c(r1) +/* 801BD980 001BA8E0 90 01 00 38 */ stw r0, 0x38(r1) +/* 801BD984 001BA8E4 80 1D 01 00 */ lwz r0, 0x100(r29) +/* 801BD988 001BA8E8 80 BD 01 04 */ lwz r5, 0x104(r29) +/* 801BD98C 001BA8EC 90 A1 00 44 */ stw r5, 0x44(r1) +/* 801BD990 001BA8F0 90 01 00 40 */ stw r0, 0x40(r1) +/* 801BD994 001BA8F4 80 1D 01 08 */ lwz r0, 0x108(r29) +/* 801BD998 001BA8F8 90 01 00 48 */ stw r0, 0x48(r1) +/* 801BD99C 001BA8FC 4B F0 5A AD */ bl __ct__11CDamageInfoFRC11CDamageInfof +/* 801BD9A0 001BA900 A0 1D 00 EC */ lhz r0, 0xec(r29) +/* 801BD9A4 001BA904 7F C3 F3 78 */ mr r3, r30 +/* 801BD9A8 001BA908 38 81 00 1C */ addi r4, r1, 0x1c +/* 801BD9AC 001BA90C 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801BD9B0 001BA910 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801BD9B4 001BA914 38 C1 00 0C */ addi r6, r1, 0xc +/* 801BD9B8 001BA918 38 E1 00 50 */ addi r7, r1, 0x50 +/* 801BD9BC 001BA91C 39 01 00 38 */ addi r8, r1, 0x38 +/* 801BD9C0 001BA920 A1 5F 00 08 */ lhz r10, 8(r31) +/* 801BD9C4 001BA924 39 21 00 2C */ addi r9, r1, 0x2c +/* 801BD9C8 001BA928 B0 01 00 08 */ sth r0, 8(r1) +/* 801BD9CC 001BA92C B1 41 00 14 */ sth r10, 0x14(r1) +/* 801BD9D0 001BA930 A0 1D 00 08 */ lhz r0, 8(r29) +/* 801BD9D4 001BA934 B1 41 00 10 */ sth r10, 0x10(r1) +/* 801BD9D8 001BA938 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801BD9DC 001BA93C B0 01 00 1C */ sth r0, 0x1c(r1) +/* 801BD9E0 001BA940 4B E8 C6 C1 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +lbl_801BD9E4: +/* 801BD9E4 001BA944 38 60 00 01 */ li r3, 1 +/* 801BD9E8 001BA948 48 00 00 08 */ b lbl_801BD9F0 +lbl_801BD9EC: +/* 801BD9EC 001BA94C 38 60 00 00 */ li r3, 0 +lbl_801BD9F0: +/* 801BD9F0 001BA950 E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0 +/* 801BD9F4 001BA954 80 01 00 94 */ lwz r0, 0x94(r1) +/* 801BD9F8 001BA958 CB E1 00 80 */ lfd f31, 0x80(r1) +/* 801BD9FC 001BA95C 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 801BDA00 001BA960 83 C1 00 78 */ lwz r30, 0x78(r1) +/* 801BDA04 001BA964 83 A1 00 74 */ lwz r29, 0x74(r1) +/* 801BDA08 001BA968 7C 08 03 A6 */ mtlr r0 +/* 801BDA0C 001BA96C 38 21 00 90 */ addi r1, r1, 0x90 +/* 801BDA10 001BA970 4E 80 00 20 */ blr + +.global sub_801bda14 +sub_801bda14: +/* 801BDA14 001BA974 94 21 F4 70 */ stwu r1, -0xb90(r1) +/* 801BDA18 001BA978 7C 08 02 A6 */ mflr r0 +/* 801BDA1C 001BA97C 90 01 0B 94 */ stw r0, 0xb94(r1) +/* 801BDA20 001BA980 DB E1 0B 80 */ stfd f31, 0xb80(r1) +/* 801BDA24 001BA984 F3 E1 0B 88 */ psq_st f31, -1144(r1), 0, qr0 +/* 801BDA28 001BA988 DB C1 0B 70 */ stfd f30, 0xb70(r1) +/* 801BDA2C 001BA98C F3 C1 0B 78 */ psq_st f30, -1160(r1), 0, qr0 +/* 801BDA30 001BA990 BE 41 0B 38 */ stmw r18, 0xb38(r1) +/* 801BDA34 001BA994 C0 62 A9 F8 */ lfs f3, lbl_805AC718@sda21(r2) +/* 801BDA38 001BA998 38 00 00 00 */ li r0, 0 +/* 801BDA3C 001BA99C C0 42 AA 00 */ lfs f2, lbl_805AC720@sda21(r2) +/* 801BDA40 001BA9A0 FF C0 08 90 */ fmr f30, f1 +/* 801BDA44 001BA9A4 C0 22 A9 FC */ lfs f1, lbl_805AC71C@sda21(r2) +/* 801BDA48 001BA9A8 7C 78 1B 78 */ mr r24, r3 +/* 801BDA4C 001BA9AC C0 02 AA 04 */ lfs f0, lbl_805AC724@sda21(r2) +/* 801BDA50 001BA9B0 7C 99 23 78 */ mr r25, r4 +/* 801BDA54 001BA9B4 7C BA 2B 78 */ mr r26, r5 +/* 801BDA58 001BA9B8 90 01 03 28 */ stw r0, 0x328(r1) +/* 801BDA5C 001BA9BC 7C DB 33 78 */ mr r27, r6 +/* 801BDA60 001BA9C0 7C FC 3B 78 */ mr r28, r7 +/* 801BDA64 001BA9C4 7D 1D 43 78 */ mr r29, r8 +/* 801BDA68 001BA9C8 D0 61 00 20 */ stfs f3, 0x20(r1) +/* 801BDA6C 001BA9CC 7D 3E 4B 78 */ mr r30, r9 +/* 801BDA70 001BA9D0 7D 5F 53 78 */ mr r31, r10 +/* 801BDA74 001BA9D4 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 801BDA78 001BA9D8 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 801BDA7C 001BA9DC 38 81 00 2C */ addi r4, r1, 0x2c +/* 801BDA80 001BA9E0 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801BDA84 001BA9E4 D0 61 00 28 */ stfs f3, 0x28(r1) +/* 801BDA88 001BA9E8 D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 801BDA8C 001BA9EC D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801BDA90 001BA9F0 D0 41 00 34 */ stfs f2, 0x34(r1) +/* 801BDA94 001BA9F4 48 17 AA 75 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801BDA98 001BA9F8 7C 64 1B 78 */ mr r4, r3 +/* 801BDA9C 001BA9FC 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 801BDAA0 001BAA00 38 B8 02 E8 */ addi r5, r24, 0x2e8 +/* 801BDAA4 001BAA04 48 17 9E 59 */ bl GetTransformedAABox__6CAABoxCFRC12CTransform4f +/* 801BDAA8 001BAA08 C0 A1 00 B8 */ lfs f5, 0xb8(r1) +/* 801BDAAC 001BAA0C 38 60 00 00 */ li r3, 0 +/* 801BDAB0 001BAA10 C0 81 00 BC */ lfs f4, 0xbc(r1) +/* 801BDAB4 001BAA14 38 80 00 01 */ li r4, 1 +/* 801BDAB8 001BAA18 C0 61 00 C0 */ lfs f3, 0xc0(r1) +/* 801BDABC 001BAA1C C0 41 00 C4 */ lfs f2, 0xc4(r1) +/* 801BDAC0 001BAA20 C0 21 00 C8 */ lfs f1, 0xc8(r1) +/* 801BDAC4 001BAA24 C0 01 00 CC */ lfs f0, 0xcc(r1) +/* 801BDAC8 001BAA28 80 AD 91 0C */ lwz r5, lbl_805A7CCC@sda21(r13) +/* 801BDACC 001BAA2C D0 A1 00 EC */ stfs f5, 0xec(r1) +/* 801BDAD0 001BAA30 D0 81 00 F0 */ stfs f4, 0xf0(r1) +/* 801BDAD4 001BAA34 D0 61 00 F4 */ stfs f3, 0xf4(r1) +/* 801BDAD8 001BAA38 D0 41 00 F8 */ stfs f2, 0xf8(r1) +/* 801BDADC 001BAA3C D0 21 00 FC */ stfs f1, 0xfc(r1) +/* 801BDAE0 001BAA40 D0 01 01 00 */ stfs f0, 0x100(r1) +/* 801BDAE4 001BAA44 48 1C C4 11 */ bl __shl2i +/* 801BDAE8 001BAA48 80 AD 91 10 */ lwz r5, lbl_805A7CD0@sda21(r13) +/* 801BDAEC 001BAA4C 7C 93 23 78 */ mr r19, r4 +/* 801BDAF0 001BAA50 7C 72 1B 78 */ mr r18, r3 +/* 801BDAF4 001BAA54 38 60 00 00 */ li r3, 0 +/* 801BDAF8 001BAA58 38 80 00 01 */ li r4, 1 +/* 801BDAFC 001BAA5C 48 1C C3 F9 */ bl __shl2i +/* 801BDB00 001BAA60 7E 73 23 78 */ or r19, r19, r4 +/* 801BDB04 001BAA64 7E 52 1B 78 */ or r18, r18, r3 +/* 801BDB08 001BAA68 38 60 FF FF */ li r3, -1 +/* 801BDB0C 001BAA6C 38 80 00 00 */ li r4, 0 +/* 801BDB10 001BAA70 38 00 00 02 */ li r0, 2 +/* 801BDB14 001BAA74 90 61 00 8C */ stw r3, 0x8c(r1) +/* 801BDB18 001BAA78 7F 23 CB 78 */ mr r3, r25 +/* 801BDB1C 001BAA7C 7F 07 C3 78 */ mr r7, r24 +/* 801BDB20 001BAA80 90 81 00 88 */ stw r4, 0x88(r1) +/* 801BDB24 001BAA84 38 81 03 28 */ addi r4, r1, 0x328 +/* 801BDB28 001BAA88 38 A1 00 EC */ addi r5, r1, 0xec +/* 801BDB2C 001BAA8C 38 C1 00 88 */ addi r6, r1, 0x88 +/* 801BDB30 001BAA90 92 61 00 94 */ stw r19, 0x94(r1) +/* 801BDB34 001BAA94 92 41 00 90 */ stw r18, 0x90(r1) +/* 801BDB38 001BAA98 90 01 00 98 */ stw r0, 0x98(r1) +/* 801BDB3C 001BAA9C 4B E8 EB E5 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" +/* 801BDB40 001BAAA0 C0 02 AA 04 */ lfs f0, lbl_805AC724@sda21(r2) +/* 801BDB44 001BAAA4 FC 1E 00 40 */ fcmpo cr0, f30, f0 +/* 801BDB48 001BAAA8 40 81 00 0C */ ble lbl_801BDB54 +/* 801BDB4C 001BAAAC FC 00 F0 90 */ fmr f0, f30 +/* 801BDB50 001BAAB0 48 00 00 08 */ b lbl_801BDB58 +lbl_801BDB54: +/* 801BDB54 001BAAB4 C0 02 AA 08 */ lfs f0, lbl_805AC728@sda21(r2) +lbl_801BDB58: +/* 801BDB58 001BAAB8 FF E0 00 90 */ fmr f31, f0 +/* 801BDB5C 001BAABC 3A C1 03 2C */ addi r22, r1, 0x32c +/* 801BDB60 001BAAC0 FF C0 00 90 */ fmr f30, f0 +/* 801BDB64 001BAAC4 7E D5 B3 78 */ mr r21, r22 +/* 801BDB68 001BAAC8 3A 81 02 F4 */ addi r20, r1, 0x2f4 +/* 801BDB6C 001BAACC 3A E1 02 84 */ addi r23, r1, 0x284 +/* 801BDB70 001BAAD0 48 00 04 18 */ b lbl_801BDF88 +lbl_801BDB74: +/* 801BDB74 001BAAD4 A0 15 00 00 */ lhz r0, 0(r21) +/* 801BDB78 001BAAD8 7F 23 CB 78 */ mr r3, r25 +/* 801BDB7C 001BAADC 38 81 00 0C */ addi r4, r1, 0xc +/* 801BDB80 001BAAE0 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801BDB84 001BAAE4 4B E8 EA 21 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801BDB88 001BAAE8 7C 64 1B 78 */ mr r4, r3 +/* 801BDB8C 001BAAEC 38 61 00 18 */ addi r3, r1, 0x18 +/* 801BDB90 001BAAF0 4B EE EB 55 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" +/* 801BDB94 001BAAF4 82 63 00 04 */ lwz r19, 4(r3) +/* 801BDB98 001BAAF8 28 13 00 00 */ cmplwi r19, 0 +/* 801BDB9C 001BAAFC 41 82 01 54 */ beq lbl_801BDCF0 +/* 801BDBA0 001BAB00 7E 64 9B 78 */ mr r4, r19 +/* 801BDBA4 001BAB04 38 61 01 60 */ addi r3, r1, 0x160 +/* 801BDBA8 001BAB08 81 93 00 00 */ lwz r12, 0(r19) +/* 801BDBAC 001BAB0C 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 801BDBB0 001BAB10 7D 89 03 A6 */ mtctr r12 +/* 801BDBB4 001BAB14 4E 80 04 21 */ bctrl +/* 801BDBB8 001BAB18 80 18 00 F8 */ lwz r0, 0xf8(r24) +/* 801BDBBC 001BAB1C 7E 63 9B 78 */ mr r3, r19 +/* 801BDBC0 001BAB20 80 98 00 FC */ lwz r4, 0xfc(r24) +/* 801BDBC4 001BAB24 90 81 00 74 */ stw r4, 0x74(r1) +/* 801BDBC8 001BAB28 90 01 00 70 */ stw r0, 0x70(r1) +/* 801BDBCC 001BAB2C 80 18 01 00 */ lwz r0, 0x100(r24) +/* 801BDBD0 001BAB30 80 98 01 04 */ lwz r4, 0x104(r24) +/* 801BDBD4 001BAB34 90 81 00 7C */ stw r4, 0x7c(r1) +/* 801BDBD8 001BAB38 90 01 00 78 */ stw r0, 0x78(r1) +/* 801BDBDC 001BAB3C 80 18 01 08 */ lwz r0, 0x108(r24) +/* 801BDBE0 001BAB40 90 01 00 80 */ stw r0, 0x80(r1) +/* 801BDBE4 001BAB44 81 93 00 00 */ lwz r12, 0(r19) +/* 801BDBE8 001BAB48 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 801BDBEC 001BAB4C 7D 89 03 A6 */ mtctr r12 +/* 801BDBF0 001BAB50 4E 80 04 21 */ bctrl +/* 801BDBF4 001BAB54 FC 20 F8 90 */ fmr f1, f31 +/* 801BDBF8 001BAB58 7C 72 1B 78 */ mr r18, r3 +/* 801BDBFC 001BAB5C 7F 84 E3 78 */ mr r4, r28 +/* 801BDC00 001BAB60 7F A5 EB 78 */ mr r5, r29 +/* 801BDC04 001BAB64 38 61 02 B8 */ addi r3, r1, 0x2b8 +/* 801BDC08 001BAB68 48 11 84 65 */ bl __ct__5CMRayFRC9CVector3fRC9CVector3ff +/* 801BDC0C 001BAB6C D3 E1 02 F0 */ stfs f31, 0x2f0(r1) +/* 801BDC10 001BAB70 7E 83 A3 78 */ mr r3, r20 +/* 801BDC14 001BAB74 38 81 01 60 */ addi r4, r1, 0x160 +/* 801BDC18 001BAB78 48 15 4F 5D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801BDC1C 001BAB7C 38 01 00 70 */ addi r0, r1, 0x70 +/* 801BDC20 001BAB80 7E 44 93 78 */ mr r4, r18 +/* 801BDC24 001BAB84 90 01 03 24 */ stw r0, 0x324(r1) +/* 801BDC28 001BAB88 38 61 01 90 */ addi r3, r1, 0x190 +/* 801BDC2C 001BAB8C 38 A1 02 B8 */ addi r5, r1, 0x2b8 +/* 801BDC30 001BAB90 81 92 00 00 */ lwz r12, 0(r18) +/* 801BDC34 001BAB94 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 801BDC38 001BAB98 7D 89 03 A6 */ mtctr r12 +/* 801BDC3C 001BAB9C 4E 80 04 21 */ bctrl +/* 801BDC40 001BABA0 88 81 01 B0 */ lbz r4, 0x1b0(r1) +/* 801BDC44 001BABA4 C0 E1 01 90 */ lfs f7, 0x190(r1) +/* 801BDC48 001BABA8 C0 C1 01 94 */ lfs f6, 0x194(r1) +/* 801BDC4C 001BABAC 28 04 00 00 */ cmplwi r4, 0 +/* 801BDC50 001BABB0 C0 A1 01 98 */ lfs f5, 0x198(r1) +/* 801BDC54 001BABB4 C0 01 01 9C */ lfs f0, 0x19c(r1) +/* 801BDC58 001BABB8 C0 81 01 A0 */ lfs f4, 0x1a0(r1) +/* 801BDC5C 001BABBC C0 61 01 A4 */ lfs f3, 0x1a4(r1) +/* 801BDC60 001BABC0 C0 41 01 A8 */ lfs f2, 0x1a8(r1) +/* 801BDC64 001BABC4 C0 21 01 AC */ lfs f1, 0x1ac(r1) +/* 801BDC68 001BABC8 80 01 01 B8 */ lwz r0, 0x1b8(r1) +/* 801BDC6C 001BABCC 80 61 01 BC */ lwz r3, 0x1bc(r1) +/* 801BDC70 001BABD0 D0 E1 02 18 */ stfs f7, 0x218(r1) +/* 801BDC74 001BABD4 D0 C1 02 1C */ stfs f6, 0x21c(r1) +/* 801BDC78 001BABD8 D0 A1 02 20 */ stfs f5, 0x220(r1) +/* 801BDC7C 001BABDC D0 01 02 24 */ stfs f0, 0x224(r1) +/* 801BDC80 001BABE0 D0 81 02 28 */ stfs f4, 0x228(r1) +/* 801BDC84 001BABE4 D0 61 02 2C */ stfs f3, 0x22c(r1) +/* 801BDC88 001BABE8 D0 41 02 30 */ stfs f2, 0x230(r1) +/* 801BDC8C 001BABEC D0 21 02 34 */ stfs f1, 0x234(r1) +/* 801BDC90 001BABF0 98 81 02 38 */ stb r4, 0x238(r1) +/* 801BDC94 001BABF4 90 61 02 44 */ stw r3, 0x244(r1) +/* 801BDC98 001BABF8 90 01 02 40 */ stw r0, 0x240(r1) +/* 801BDC9C 001BABFC 41 82 02 E8 */ beq lbl_801BDF84 +/* 801BDCA0 001BAC00 FC 07 F8 40 */ fcmpo cr0, f7, f31 +/* 801BDCA4 001BAC04 40 80 02 E0 */ bge lbl_801BDF84 +/* 801BDCA8 001BAC08 D0 FE 00 00 */ stfs f7, 0(r30) +/* 801BDCAC 001BAC0C FF E0 38 90 */ fmr f31, f7 +/* 801BDCB0 001BAC10 80 01 02 1C */ lwz r0, 0x21c(r1) +/* 801BDCB4 001BAC14 80 61 02 20 */ lwz r3, 0x220(r1) +/* 801BDCB8 001BAC18 90 1E 00 04 */ stw r0, 4(r30) +/* 801BDCBC 001BAC1C 80 01 02 24 */ lwz r0, 0x224(r1) +/* 801BDCC0 001BAC20 90 7E 00 08 */ stw r3, 8(r30) +/* 801BDCC4 001BAC24 C8 01 02 40 */ lfd f0, 0x240(r1) +/* 801BDCC8 001BAC28 90 1E 00 0C */ stw r0, 0xc(r30) +/* 801BDCCC 001BAC2C D0 9E 00 10 */ stfs f4, 0x10(r30) +/* 801BDCD0 001BAC30 D0 7E 00 14 */ stfs f3, 0x14(r30) +/* 801BDCD4 001BAC34 D0 5E 00 18 */ stfs f2, 0x18(r30) +/* 801BDCD8 001BAC38 D0 3E 00 1C */ stfs f1, 0x1c(r30) +/* 801BDCDC 001BAC3C 98 9E 00 20 */ stb r4, 0x20(r30) +/* 801BDCE0 001BAC40 D8 1E 00 28 */ stfd f0, 0x28(r30) +/* 801BDCE4 001BAC44 A0 13 00 08 */ lhz r0, 8(r19) +/* 801BDCE8 001BAC48 B0 1A 00 00 */ sth r0, 0(r26) +/* 801BDCEC 001BAC4C 48 00 02 98 */ b lbl_801BDF84 +lbl_801BDCF0: +/* 801BDCF0 001BAC50 A0 15 00 00 */ lhz r0, 0(r21) +/* 801BDCF4 001BAC54 7F 23 CB 78 */ mr r3, r25 +/* 801BDCF8 001BAC58 38 81 00 08 */ addi r4, r1, 8 +/* 801BDCFC 001BAC5C B0 01 00 08 */ sth r0, 8(r1) +/* 801BDD00 001BAC60 4B E8 E8 A5 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801BDD04 001BAC64 7C 64 1B 78 */ mr r4, r3 +/* 801BDD08 001BAC68 38 61 00 10 */ addi r3, r1, 0x10 +/* 801BDD0C 001BAC6C 4B EF 1F 85 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 801BDD10 001BAC70 82 63 00 04 */ lwz r19, 4(r3) +/* 801BDD14 001BAC74 28 13 00 00 */ cmplwi r19, 0 +/* 801BDD18 001BAC78 41 82 02 6C */ beq lbl_801BDF84 +/* 801BDD1C 001BAC7C 7E 64 9B 78 */ mr r4, r19 +/* 801BDD20 001BAC80 38 61 00 50 */ addi r3, r1, 0x50 +/* 801BDD24 001BAC84 81 93 00 00 */ lwz r12, 0(r19) +/* 801BDD28 001BAC88 81 8C 00 40 */ lwz r12, 0x40(r12) +/* 801BDD2C 001BAC8C 7D 89 03 A6 */ mtctr r12 +/* 801BDD30 001BAC90 4E 80 04 21 */ bctrl +/* 801BDD34 001BAC94 88 01 00 68 */ lbz r0, 0x68(r1) +/* 801BDD38 001BAC98 28 00 00 00 */ cmplwi r0, 0 +/* 801BDD3C 001BAC9C 98 01 00 E8 */ stb r0, 0xe8(r1) +/* 801BDD40 001BACA0 41 82 00 3C */ beq lbl_801BDD7C +/* 801BDD44 001BACA4 34 61 00 D0 */ addic. r3, r1, 0xd0 +/* 801BDD48 001BACA8 41 82 00 34 */ beq lbl_801BDD7C +/* 801BDD4C 001BACAC C0 01 00 50 */ lfs f0, 0x50(r1) +/* 801BDD50 001BACB0 D0 03 00 00 */ stfs f0, 0(r3) +/* 801BDD54 001BACB4 C0 01 00 54 */ lfs f0, 0x54(r1) +/* 801BDD58 001BACB8 D0 03 00 04 */ stfs f0, 4(r3) +/* 801BDD5C 001BACBC C0 01 00 58 */ lfs f0, 0x58(r1) +/* 801BDD60 001BACC0 D0 03 00 08 */ stfs f0, 8(r3) +/* 801BDD64 001BACC4 C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 801BDD68 001BACC8 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 801BDD6C 001BACCC C0 01 00 60 */ lfs f0, 0x60(r1) +/* 801BDD70 001BACD0 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 801BDD74 001BACD4 C0 01 00 64 */ lfs f0, 0x64(r1) +/* 801BDD78 001BACD8 D0 03 00 14 */ stfs f0, 0x14(r3) +lbl_801BDD7C: +/* 801BDD7C 001BACDC 88 01 00 E8 */ lbz r0, 0xe8(r1) +/* 801BDD80 001BACE0 38 60 00 00 */ li r3, 0 +/* 801BDD84 001BACE4 98 61 00 68 */ stb r3, 0x68(r1) +/* 801BDD88 001BACE8 28 00 00 00 */ cmplwi r0, 0 +/* 801BDD8C 001BACEC 40 82 00 0C */ bne lbl_801BDD98 +/* 801BDD90 001BACF0 98 61 00 E8 */ stb r3, 0xe8(r1) +/* 801BDD94 001BACF4 48 00 01 F0 */ b lbl_801BDF84 +lbl_801BDD98: +/* 801BDD98 001BACF8 38 61 01 38 */ addi r3, r1, 0x138 +/* 801BDD9C 001BACFC 38 93 00 68 */ addi r4, r19, 0x68 +/* 801BDDA0 001BAD00 48 11 1B 15 */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList +/* 801BDDA4 001BAD04 3C 60 80 3F */ lis r3, lbl_803ECAD0@ha +/* 801BDDA8 001BAD08 C0 C1 00 D0 */ lfs f6, 0xd0(r1) +/* 801BDDAC 001BAD0C 39 03 CA D0 */ addi r8, r3, lbl_803ECAD0@l +/* 801BDDB0 001BAD10 C0 A1 00 D4 */ lfs f5, 0xd4(r1) +/* 801BDDB4 001BAD14 91 01 01 38 */ stw r8, 0x138(r1) +/* 801BDDB8 001BAD18 3C 60 80 3E */ lis r3, lbl_803D97E4@ha +/* 801BDDBC 001BAD1C 38 E3 97 E4 */ addi r7, r3, lbl_803D97E4@l +/* 801BDDC0 001BAD20 C0 81 00 D8 */ lfs f4, 0xd8(r1) +/* 801BDDC4 001BAD24 C0 61 00 DC */ lfs f3, 0xdc(r1) +/* 801BDDC8 001BAD28 FC 20 F0 90 */ fmr f1, f30 +/* 801BDDCC 001BAD2C C0 41 00 E0 */ lfs f2, 0xe0(r1) +/* 801BDDD0 001BAD30 7F 84 E3 78 */ mr r4, r28 +/* 801BDDD4 001BAD34 C0 01 00 E4 */ lfs f0, 0xe4(r1) +/* 801BDDD8 001BAD38 7F A5 EB 78 */ mr r5, r29 +/* 801BDDDC 001BAD3C 90 E1 01 F0 */ stw r7, 0x1f0(r1) +/* 801BDDE0 001BAD40 80 01 01 40 */ lwz r0, 0x140(r1) +/* 801BDDE4 001BAD44 38 61 02 48 */ addi r3, r1, 0x248 +/* 801BDDE8 001BAD48 91 01 01 38 */ stw r8, 0x138(r1) +/* 801BDDEC 001BAD4C 80 C1 01 44 */ lwz r6, 0x144(r1) +/* 801BDDF0 001BAD50 D0 C1 01 48 */ stfs f6, 0x148(r1) +/* 801BDDF4 001BAD54 D0 A1 01 4C */ stfs f5, 0x14c(r1) +/* 801BDDF8 001BAD58 D0 81 01 50 */ stfs f4, 0x150(r1) +/* 801BDDFC 001BAD5C D0 61 01 54 */ stfs f3, 0x154(r1) +/* 801BDE00 001BAD60 D0 41 01 58 */ stfs f2, 0x158(r1) +/* 801BDE04 001BAD64 D0 01 01 5C */ stfs f0, 0x15c(r1) +/* 801BDE08 001BAD68 90 C1 01 FC */ stw r6, 0x1fc(r1) +/* 801BDE0C 001BAD6C 90 01 01 F8 */ stw r0, 0x1f8(r1) +/* 801BDE10 001BAD70 91 01 01 F0 */ stw r8, 0x1f0(r1) +/* 801BDE14 001BAD74 D0 C1 02 00 */ stfs f6, 0x200(r1) +/* 801BDE18 001BAD78 D0 A1 02 04 */ stfs f5, 0x204(r1) +/* 801BDE1C 001BAD7C D0 81 02 08 */ stfs f4, 0x208(r1) +/* 801BDE20 001BAD80 D0 61 02 0C */ stfs f3, 0x20c(r1) +/* 801BDE24 001BAD84 D0 41 02 10 */ stfs f2, 0x210(r1) +/* 801BDE28 001BAD88 D0 01 02 14 */ stfs f0, 0x214(r1) +/* 801BDE2C 001BAD8C 90 E1 01 38 */ stw r7, 0x138(r1) +/* 801BDE30 001BAD90 80 18 00 F8 */ lwz r0, 0xf8(r24) +/* 801BDE34 001BAD94 80 D8 00 FC */ lwz r6, 0xfc(r24) +/* 801BDE38 001BAD98 90 C1 00 3C */ stw r6, 0x3c(r1) +/* 801BDE3C 001BAD9C 90 01 00 38 */ stw r0, 0x38(r1) +/* 801BDE40 001BADA0 80 18 01 00 */ lwz r0, 0x100(r24) +/* 801BDE44 001BADA4 80 D8 01 04 */ lwz r6, 0x104(r24) +/* 801BDE48 001BADA8 90 C1 00 44 */ stw r6, 0x44(r1) +/* 801BDE4C 001BADAC 90 01 00 40 */ stw r0, 0x40(r1) +/* 801BDE50 001BADB0 80 18 01 08 */ lwz r0, 0x108(r24) +/* 801BDE54 001BADB4 90 01 00 48 */ stw r0, 0x48(r1) +/* 801BDE58 001BADB8 48 11 82 15 */ bl __ct__5CMRayFRC9CVector3fRC9CVector3ff +/* 801BDE5C 001BADBC 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 801BDE60 001BADC0 D3 C1 02 80 */ stfs f30, 0x280(r1) +/* 801BDE64 001BADC4 38 83 66 70 */ addi r4, r3, skIdentity4f@l +/* 801BDE68 001BADC8 7E E3 BB 78 */ mr r3, r23 +/* 801BDE6C 001BADCC 48 15 4D 09 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801BDE70 001BADD0 38 01 00 38 */ addi r0, r1, 0x38 +/* 801BDE74 001BADD4 81 81 01 F0 */ lwz r12, 0x1f0(r1) +/* 801BDE78 001BADD8 90 01 02 B4 */ stw r0, 0x2b4(r1) +/* 801BDE7C 001BADDC 38 61 01 08 */ addi r3, r1, 0x108 +/* 801BDE80 001BADE0 38 81 01 F0 */ addi r4, r1, 0x1f0 +/* 801BDE84 001BADE4 38 A1 02 48 */ addi r5, r1, 0x248 +/* 801BDE88 001BADE8 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 801BDE8C 001BADEC 7D 89 03 A6 */ mtctr r12 +/* 801BDE90 001BADF0 4E 80 04 21 */ bctrl +/* 801BDE94 001BADF4 88 81 01 28 */ lbz r4, 0x128(r1) +/* 801BDE98 001BADF8 C0 E1 01 08 */ lfs f7, 0x108(r1) +/* 801BDE9C 001BADFC C0 C1 01 0C */ lfs f6, 0x10c(r1) +/* 801BDEA0 001BAE00 28 04 00 00 */ cmplwi r4, 0 +/* 801BDEA4 001BAE04 C0 A1 01 10 */ lfs f5, 0x110(r1) +/* 801BDEA8 001BAE08 C0 01 01 14 */ lfs f0, 0x114(r1) +/* 801BDEAC 001BAE0C C0 81 01 18 */ lfs f4, 0x118(r1) +/* 801BDEB0 001BAE10 C0 61 01 1C */ lfs f3, 0x11c(r1) +/* 801BDEB4 001BAE14 C0 41 01 20 */ lfs f2, 0x120(r1) +/* 801BDEB8 001BAE18 C0 21 01 24 */ lfs f1, 0x124(r1) +/* 801BDEBC 001BAE1C 80 01 01 30 */ lwz r0, 0x130(r1) +/* 801BDEC0 001BAE20 80 61 01 34 */ lwz r3, 0x134(r1) +/* 801BDEC4 001BAE24 D0 E1 01 C0 */ stfs f7, 0x1c0(r1) +/* 801BDEC8 001BAE28 D0 C1 01 C4 */ stfs f6, 0x1c4(r1) +/* 801BDECC 001BAE2C D0 A1 01 C8 */ stfs f5, 0x1c8(r1) +/* 801BDED0 001BAE30 D0 01 01 CC */ stfs f0, 0x1cc(r1) +/* 801BDED4 001BAE34 D0 81 01 D0 */ stfs f4, 0x1d0(r1) +/* 801BDED8 001BAE38 D0 61 01 D4 */ stfs f3, 0x1d4(r1) +/* 801BDEDC 001BAE3C D0 41 01 D8 */ stfs f2, 0x1d8(r1) +/* 801BDEE0 001BAE40 D0 21 01 DC */ stfs f1, 0x1dc(r1) +/* 801BDEE4 001BAE44 98 81 01 E0 */ stb r4, 0x1e0(r1) +/* 801BDEE8 001BAE48 90 61 01 EC */ stw r3, 0x1ec(r1) +/* 801BDEEC 001BAE4C 90 01 01 E8 */ stw r0, 0x1e8(r1) +/* 801BDEF0 001BAE50 40 82 00 28 */ bne lbl_801BDF18 +/* 801BDEF4 001BAE54 3C 80 80 3F */ lis r4, lbl_803ECAD0@ha +/* 801BDEF8 001BAE58 3C 60 80 3E */ lis r3, lbl_803D97E4@ha +/* 801BDEFC 001BAE5C 38 84 CA D0 */ addi r4, r4, lbl_803ECAD0@l +/* 801BDF00 001BAE60 38 00 00 00 */ li r0, 0 +/* 801BDF04 001BAE64 90 81 01 F0 */ stw r4, 0x1f0(r1) +/* 801BDF08 001BAE68 38 63 97 E4 */ addi r3, r3, lbl_803D97E4@l +/* 801BDF0C 001BAE6C 90 61 01 F0 */ stw r3, 0x1f0(r1) +/* 801BDF10 001BAE70 98 01 00 E8 */ stb r0, 0xe8(r1) +/* 801BDF14 001BAE74 48 00 00 70 */ b lbl_801BDF84 +lbl_801BDF18: +/* 801BDF18 001BAE78 FC 07 F0 40 */ fcmpo cr0, f7, f30 +/* 801BDF1C 001BAE7C 40 80 00 48 */ bge lbl_801BDF64 +/* 801BDF20 001BAE80 D0 FF 00 00 */ stfs f7, 0(r31) +/* 801BDF24 001BAE84 FF C0 38 90 */ fmr f30, f7 +/* 801BDF28 001BAE88 80 01 01 C4 */ lwz r0, 0x1c4(r1) +/* 801BDF2C 001BAE8C 80 61 01 C8 */ lwz r3, 0x1c8(r1) +/* 801BDF30 001BAE90 90 1F 00 04 */ stw r0, 4(r31) +/* 801BDF34 001BAE94 80 01 01 CC */ lwz r0, 0x1cc(r1) +/* 801BDF38 001BAE98 90 7F 00 08 */ stw r3, 8(r31) +/* 801BDF3C 001BAE9C C8 01 01 E8 */ lfd f0, 0x1e8(r1) +/* 801BDF40 001BAEA0 90 1F 00 0C */ stw r0, 0xc(r31) +/* 801BDF44 001BAEA4 D0 9F 00 10 */ stfs f4, 0x10(r31) +/* 801BDF48 001BAEA8 D0 7F 00 14 */ stfs f3, 0x14(r31) +/* 801BDF4C 001BAEAC D0 5F 00 18 */ stfs f2, 0x18(r31) +/* 801BDF50 001BAEB0 D0 3F 00 1C */ stfs f1, 0x1c(r31) +/* 801BDF54 001BAEB4 98 9F 00 20 */ stb r4, 0x20(r31) +/* 801BDF58 001BAEB8 D8 1F 00 28 */ stfd f0, 0x28(r31) +/* 801BDF5C 001BAEBC A0 13 00 08 */ lhz r0, 8(r19) +/* 801BDF60 001BAEC0 B0 1B 00 00 */ sth r0, 0(r27) +lbl_801BDF64: +/* 801BDF64 001BAEC4 3C 80 80 3F */ lis r4, lbl_803ECAD0@ha +/* 801BDF68 001BAEC8 3C 60 80 3E */ lis r3, lbl_803D97E4@ha +/* 801BDF6C 001BAECC 38 84 CA D0 */ addi r4, r4, lbl_803ECAD0@l +/* 801BDF70 001BAED0 38 00 00 00 */ li r0, 0 +/* 801BDF74 001BAED4 90 81 01 F0 */ stw r4, 0x1f0(r1) +/* 801BDF78 001BAED8 38 63 97 E4 */ addi r3, r3, lbl_803D97E4@l +/* 801BDF7C 001BAEDC 90 61 01 F0 */ stw r3, 0x1f0(r1) +/* 801BDF80 001BAEE0 98 01 00 E8 */ stb r0, 0xe8(r1) +lbl_801BDF84: +/* 801BDF84 001BAEE4 3A B5 00 02 */ addi r21, r21, 2 +lbl_801BDF88: +/* 801BDF88 001BAEE8 80 A1 03 28 */ lwz r5, 0x328(r1) +/* 801BDF8C 001BAEEC 54 A0 08 3C */ slwi r0, r5, 1 +/* 801BDF90 001BAEF0 7C 16 02 14 */ add r0, r22, r0 +/* 801BDF94 001BAEF4 7C 15 00 40 */ cmplw r21, r0 +/* 801BDF98 001BAEF8 40 82 FB DC */ bne lbl_801BDB74 +/* 801BDF9C 001BAEFC 2C 05 00 00 */ cmpwi r5, 0 +/* 801BDFA0 001BAF00 38 60 00 00 */ li r3, 0 +/* 801BDFA4 001BAF04 40 81 00 40 */ ble lbl_801BDFE4 +/* 801BDFA8 001BAF08 2C 05 00 08 */ cmpwi r5, 8 +/* 801BDFAC 001BAF0C 38 85 FF F8 */ addi r4, r5, -8 +/* 801BDFB0 001BAF10 40 81 00 20 */ ble lbl_801BDFD0 +/* 801BDFB4 001BAF14 38 04 00 07 */ addi r0, r4, 7 +/* 801BDFB8 001BAF18 54 00 E8 FE */ srwi r0, r0, 3 +/* 801BDFBC 001BAF1C 7C 09 03 A6 */ mtctr r0 +/* 801BDFC0 001BAF20 2C 04 00 00 */ cmpwi r4, 0 +/* 801BDFC4 001BAF24 40 81 00 0C */ ble lbl_801BDFD0 +lbl_801BDFC8: +/* 801BDFC8 001BAF28 38 63 00 08 */ addi r3, r3, 8 +/* 801BDFCC 001BAF2C 42 00 FF FC */ bdnz lbl_801BDFC8 +lbl_801BDFD0: +/* 801BDFD0 001BAF30 7C 03 28 50 */ subf r0, r3, r5 +/* 801BDFD4 001BAF34 7C 09 03 A6 */ mtctr r0 +/* 801BDFD8 001BAF38 7C 03 28 00 */ cmpw r3, r5 +/* 801BDFDC 001BAF3C 40 80 00 08 */ bge lbl_801BDFE4 +lbl_801BDFE0: +/* 801BDFE0 001BAF40 42 00 00 00 */ bdnz lbl_801BDFE0 +lbl_801BDFE4: +/* 801BDFE4 001BAF44 38 00 00 00 */ li r0, 0 +/* 801BDFE8 001BAF48 90 01 03 28 */ stw r0, 0x328(r1) +/* 801BDFEC 001BAF4C E3 E1 0B 88 */ psq_l f31, -1144(r1), 0, qr0 +/* 801BDFF0 001BAF50 CB E1 0B 80 */ lfd f31, 0xb80(r1) +/* 801BDFF4 001BAF54 E3 C1 0B 78 */ psq_l f30, -1160(r1), 0, qr0 +/* 801BDFF8 001BAF58 CB C1 0B 70 */ lfd f30, 0xb70(r1) +/* 801BDFFC 001BAF5C BA 41 0B 38 */ lmw r18, 0xb38(r1) +/* 801BE000 001BAF60 80 01 0B 94 */ lwz r0, 0xb94(r1) +/* 801BE004 001BAF64 7C 08 03 A6 */ mtlr r0 +/* 801BE008 001BAF68 38 21 0B 90 */ addi r1, r1, 0xb90 +/* 801BE00C 001BAF6C 4E 80 00 20 */ blr + +.global sub_801be010 +sub_801be010: +/* 801BE010 001BAF70 94 21 FE E0 */ stwu r1, -0x120(r1) +/* 801BE014 001BAF74 7C 08 02 A6 */ mflr r0 +/* 801BE018 001BAF78 90 01 01 24 */ stw r0, 0x124(r1) +/* 801BE01C 001BAF7C DB E1 01 10 */ stfd f31, 0x110(r1) +/* 801BE020 001BAF80 F3 E1 01 18 */ psq_st f31, 280(r1), 0, qr0 +/* 801BE024 001BAF84 BF 41 00 F8 */ stmw r26, 0xf8(r1) +/* 801BE028 001BAF88 7C 9E 23 78 */ mr r30, r4 +/* 801BE02C 001BAF8C FF E0 08 90 */ fmr f31, f1 +/* 801BE030 001BAF90 80 04 00 F8 */ lwz r0, 0xf8(r4) +/* 801BE034 001BAF94 7C FB 3B 78 */ mr r27, r7 +/* 801BE038 001BAF98 80 84 00 FC */ lwz r4, 0xfc(r4) +/* 801BE03C 001BAF9C 7C DA 33 78 */ mr r26, r6 +/* 801BE040 001BAFA0 7D 1C 43 78 */ mr r28, r8 +/* 801BE044 001BAFA4 90 81 00 24 */ stw r4, 0x24(r1) +/* 801BE048 001BAFA8 7C 7D 1B 78 */ mr r29, r3 +/* 801BE04C 001BAFAC 7C BF 2B 78 */ mr r31, r5 +/* 801BE050 001BAFB0 C0 22 A9 FC */ lfs f1, lbl_805AC71C@sda21(r2) +/* 801BE054 001BAFB4 90 01 00 20 */ stw r0, 0x20(r1) +/* 801BE058 001BAFB8 7F 84 E3 78 */ mr r4, r28 +/* 801BE05C 001BAFBC 7F 45 D3 78 */ mr r5, r26 +/* 801BE060 001BAFC0 7F 66 DB 78 */ mr r6, r27 +/* 801BE064 001BAFC4 80 1E 01 00 */ lwz r0, 0x100(r30) +/* 801BE068 001BAFC8 38 61 00 38 */ addi r3, r1, 0x38 +/* 801BE06C 001BAFCC 81 1E 01 04 */ lwz r8, 0x104(r30) +/* 801BE070 001BAFD0 38 E1 00 20 */ addi r7, r1, 0x20 +/* 801BE074 001BAFD4 91 01 00 2C */ stw r8, 0x2c(r1) +/* 801BE078 001BAFD8 90 01 00 28 */ stw r0, 0x28(r1) +/* 801BE07C 001BAFDC 80 1E 01 08 */ lwz r0, 0x108(r30) +/* 801BE080 001BAFE0 90 01 00 30 */ stw r0, 0x30(r1) +/* 801BE084 001BAFE4 4B E8 EF 15 */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter +/* 801BE088 001BAFE8 C0 22 AA 04 */ lfs f1, lbl_805AC724@sda21(r2) +/* 801BE08C 001BAFEC 38 61 00 10 */ addi r3, r1, 0x10 +/* 801BE090 001BAFF0 C1 21 00 38 */ lfs f9, 0x38(r1) +/* 801BE094 001BAFF4 C1 01 00 3C */ lfs f8, 0x3c(r1) +/* 801BE098 001BAFF8 C0 E1 00 40 */ lfs f7, 0x40(r1) +/* 801BE09C 001BAFFC C0 C1 00 44 */ lfs f6, 0x44(r1) +/* 801BE0A0 001BB000 C0 A1 00 48 */ lfs f5, 0x48(r1) +/* 801BE0A4 001BB004 C0 81 00 4C */ lfs f4, 0x4c(r1) +/* 801BE0A8 001BB008 C0 61 00 50 */ lfs f3, 0x50(r1) +/* 801BE0AC 001BB00C C0 41 00 54 */ lfs f2, 0x54(r1) +/* 801BE0B0 001BB010 88 A1 00 58 */ lbz r5, 0x58(r1) +/* 801BE0B4 001BB014 80 01 00 60 */ lwz r0, 0x60(r1) +/* 801BE0B8 001BB018 80 81 00 64 */ lwz r4, 0x64(r1) +/* 801BE0BC 001BB01C C0 02 AA 0C */ lfs f0, lbl_805AC72C@sda21(r2) +/* 801BE0C0 001BB020 D1 21 00 C8 */ stfs f9, 0xc8(r1) +/* 801BE0C4 001BB024 D1 01 00 CC */ stfs f8, 0xcc(r1) +/* 801BE0C8 001BB028 D0 E1 00 D0 */ stfs f7, 0xd0(r1) +/* 801BE0CC 001BB02C D0 C1 00 D4 */ stfs f6, 0xd4(r1) +/* 801BE0D0 001BB030 D0 A1 00 D8 */ stfs f5, 0xd8(r1) +/* 801BE0D4 001BB034 D0 81 00 DC */ stfs f4, 0xdc(r1) +/* 801BE0D8 001BB038 D0 61 00 E0 */ stfs f3, 0xe0(r1) +/* 801BE0DC 001BB03C D0 41 00 E4 */ stfs f2, 0xe4(r1) +/* 801BE0E0 001BB040 98 A1 00 E8 */ stb r5, 0xe8(r1) +/* 801BE0E4 001BB044 90 81 00 F4 */ stw r4, 0xf4(r1) +/* 801BE0E8 001BB048 90 01 00 F0 */ stw r0, 0xf0(r1) +/* 801BE0EC 001BB04C D0 21 00 98 */ stfs f1, 0x98(r1) +/* 801BE0F0 001BB050 D0 21 00 9C */ stfs f1, 0x9c(r1) +/* 801BE0F4 001BB054 D0 21 00 A0 */ stfs f1, 0xa0(r1) +/* 801BE0F8 001BB058 D0 21 00 A4 */ stfs f1, 0xa4(r1) +/* 801BE0FC 001BB05C D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801BE100 001BB060 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 801BE104 001BB064 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801BE108 001BB068 48 15 67 F1 */ bl Normalize__9CVector3fFv +/* 801BE10C 001BB06C C1 01 00 10 */ lfs f8, 0x10(r1) +/* 801BE110 001BB070 38 00 00 00 */ li r0, 0 +/* 801BE114 001BB074 C0 E1 00 14 */ lfs f7, 0x14(r1) +/* 801BE118 001BB078 7F C3 F3 78 */ mr r3, r30 +/* 801BE11C 001BB07C C0 C1 00 18 */ lfs f6, 0x18(r1) +/* 801BE120 001BB080 7F 84 E3 78 */ mr r4, r28 +/* 801BE124 001BB084 C0 A2 AA 04 */ lfs f5, lbl_805AC724@sda21(r2) +/* 801BE128 001BB088 7F 47 D3 78 */ mr r7, r26 +/* 801BE12C 001BB08C A1 6D A3 8C */ lhz r11, lbl_805A8F4C@sda21(r13) +/* 801BE130 001BB090 7F 68 DB 78 */ mr r8, r27 +/* 801BE134 001BB094 C0 81 00 98 */ lfs f4, 0x98(r1) +/* 801BE138 001BB098 38 A1 00 0C */ addi r5, r1, 0xc +/* 801BE13C 001BB09C C0 61 00 9C */ lfs f3, 0x9c(r1) +/* 801BE140 001BB0A0 38 C1 00 08 */ addi r6, r1, 8 +/* 801BE144 001BB0A4 C0 41 00 A0 */ lfs f2, 0xa0(r1) +/* 801BE148 001BB0A8 39 21 00 98 */ addi r9, r1, 0x98 +/* 801BE14C 001BB0AC C0 01 00 A4 */ lfs f0, 0xa4(r1) +/* 801BE150 001BB0B0 39 41 00 68 */ addi r10, r1, 0x68 +/* 801BE154 001BB0B4 D1 01 00 A8 */ stfs f8, 0xa8(r1) +/* 801BE158 001BB0B8 C0 22 A9 FC */ lfs f1, lbl_805AC71C@sda21(r2) +/* 801BE15C 001BB0BC D0 E1 00 AC */ stfs f7, 0xac(r1) +/* 801BE160 001BB0C0 D0 C1 00 B0 */ stfs f6, 0xb0(r1) +/* 801BE164 001BB0C4 D0 A1 00 B4 */ stfs f5, 0xb4(r1) +/* 801BE168 001BB0C8 98 01 00 B8 */ stb r0, 0xb8(r1) +/* 801BE16C 001BB0CC 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 801BE170 001BB0D0 90 01 00 C0 */ stw r0, 0xc0(r1) +/* 801BE174 001BB0D4 D0 81 00 68 */ stfs f4, 0x68(r1) +/* 801BE178 001BB0D8 D0 61 00 6C */ stfs f3, 0x6c(r1) +/* 801BE17C 001BB0DC D0 41 00 70 */ stfs f2, 0x70(r1) +/* 801BE180 001BB0E0 D0 01 00 74 */ stfs f0, 0x74(r1) +/* 801BE184 001BB0E4 D1 01 00 78 */ stfs f8, 0x78(r1) +/* 801BE188 001BB0E8 D0 E1 00 7C */ stfs f7, 0x7c(r1) +/* 801BE18C 001BB0EC D0 C1 00 80 */ stfs f6, 0x80(r1) +/* 801BE190 001BB0F0 D0 A1 00 84 */ stfs f5, 0x84(r1) +/* 801BE194 001BB0F4 98 01 00 88 */ stb r0, 0x88(r1) +/* 801BE198 001BB0F8 90 01 00 94 */ stw r0, 0x94(r1) +/* 801BE19C 001BB0FC 90 01 00 90 */ stw r0, 0x90(r1) +/* 801BE1A0 001BB100 B1 61 00 0C */ sth r11, 0xc(r1) +/* 801BE1A4 001BB104 B1 61 00 08 */ sth r11, 8(r1) +/* 801BE1A8 001BB108 4B FF F8 6D */ bl sub_801bda14 +/* 801BE1AC 001BB10C 88 01 00 B8 */ lbz r0, 0xb8(r1) +/* 801BE1B0 001BB110 28 00 00 00 */ cmplwi r0, 0 +/* 801BE1B4 001BB114 41 82 00 90 */ beq lbl_801BE244 +/* 801BE1B8 001BB118 FC 20 F8 90 */ fmr f1, f31 +/* 801BE1BC 001BB11C 7F C3 F3 78 */ mr r3, r30 +/* 801BE1C0 001BB120 7F 88 E3 78 */ mr r8, r28 +/* 801BE1C4 001BB124 38 81 00 08 */ addi r4, r1, 8 +/* 801BE1C8 001BB128 38 A1 00 98 */ addi r5, r1, 0x98 +/* 801BE1CC 001BB12C 38 C1 00 68 */ addi r6, r1, 0x68 +/* 801BE1D0 001BB130 38 E1 00 C8 */ addi r7, r1, 0xc8 +/* 801BE1D4 001BB134 4B FF F6 C5 */ bl sub_801bd898 +/* 801BE1D8 001BB138 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801BE1DC 001BB13C 41 82 01 00 */ beq lbl_801BE2DC +/* 801BE1E0 001BB140 A0 01 00 0C */ lhz r0, 0xc(r1) +/* 801BE1E4 001BB144 B0 1F 00 00 */ sth r0, 0(r31) +/* 801BE1E8 001BB148 C0 01 00 98 */ lfs f0, 0x98(r1) +/* 801BE1EC 001BB14C D0 1D 00 00 */ stfs f0, 0(r29) +/* 801BE1F0 001BB150 C0 01 00 9C */ lfs f0, 0x9c(r1) +/* 801BE1F4 001BB154 D0 1D 00 04 */ stfs f0, 4(r29) +/* 801BE1F8 001BB158 C0 01 00 A0 */ lfs f0, 0xa0(r1) +/* 801BE1FC 001BB15C D0 1D 00 08 */ stfs f0, 8(r29) +/* 801BE200 001BB160 C0 01 00 A4 */ lfs f0, 0xa4(r1) +/* 801BE204 001BB164 D0 1D 00 0C */ stfs f0, 0xc(r29) +/* 801BE208 001BB168 C0 01 00 A8 */ lfs f0, 0xa8(r1) +/* 801BE20C 001BB16C D0 1D 00 10 */ stfs f0, 0x10(r29) +/* 801BE210 001BB170 C0 01 00 AC */ lfs f0, 0xac(r1) +/* 801BE214 001BB174 D0 1D 00 14 */ stfs f0, 0x14(r29) +/* 801BE218 001BB178 C0 01 00 B0 */ lfs f0, 0xb0(r1) +/* 801BE21C 001BB17C D0 1D 00 18 */ stfs f0, 0x18(r29) +/* 801BE220 001BB180 C0 01 00 B4 */ lfs f0, 0xb4(r1) +/* 801BE224 001BB184 D0 1D 00 1C */ stfs f0, 0x1c(r29) +/* 801BE228 001BB188 88 01 00 B8 */ lbz r0, 0xb8(r1) +/* 801BE22C 001BB18C 98 1D 00 20 */ stb r0, 0x20(r29) +/* 801BE230 001BB190 80 01 00 C0 */ lwz r0, 0xc0(r1) +/* 801BE234 001BB194 80 61 00 C4 */ lwz r3, 0xc4(r1) +/* 801BE238 001BB198 90 7D 00 2C */ stw r3, 0x2c(r29) +/* 801BE23C 001BB19C 90 1D 00 28 */ stw r0, 0x28(r29) +/* 801BE240 001BB1A0 48 00 00 F4 */ b lbl_801BE334 +lbl_801BE244: +/* 801BE244 001BB1A4 88 01 00 88 */ lbz r0, 0x88(r1) +/* 801BE248 001BB1A8 28 00 00 00 */ cmplwi r0, 0 +/* 801BE24C 001BB1AC 41 82 00 90 */ beq lbl_801BE2DC +/* 801BE250 001BB1B0 FC 20 F8 90 */ fmr f1, f31 +/* 801BE254 001BB1B4 7F C3 F3 78 */ mr r3, r30 +/* 801BE258 001BB1B8 7F 88 E3 78 */ mr r8, r28 +/* 801BE25C 001BB1BC 38 81 00 0C */ addi r4, r1, 0xc +/* 801BE260 001BB1C0 38 A1 00 68 */ addi r5, r1, 0x68 +/* 801BE264 001BB1C4 38 C1 00 98 */ addi r6, r1, 0x98 +/* 801BE268 001BB1C8 38 E1 00 C8 */ addi r7, r1, 0xc8 +/* 801BE26C 001BB1CC 4B FF F6 2D */ bl sub_801bd898 +/* 801BE270 001BB1D0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801BE274 001BB1D4 41 82 00 68 */ beq lbl_801BE2DC +/* 801BE278 001BB1D8 A0 01 00 08 */ lhz r0, 8(r1) +/* 801BE27C 001BB1DC B0 1F 00 00 */ sth r0, 0(r31) +/* 801BE280 001BB1E0 C0 01 00 68 */ lfs f0, 0x68(r1) +/* 801BE284 001BB1E4 D0 1D 00 00 */ stfs f0, 0(r29) +/* 801BE288 001BB1E8 C0 01 00 6C */ lfs f0, 0x6c(r1) +/* 801BE28C 001BB1EC D0 1D 00 04 */ stfs f0, 4(r29) +/* 801BE290 001BB1F0 C0 01 00 70 */ lfs f0, 0x70(r1) +/* 801BE294 001BB1F4 D0 1D 00 08 */ stfs f0, 8(r29) +/* 801BE298 001BB1F8 C0 01 00 74 */ lfs f0, 0x74(r1) +/* 801BE29C 001BB1FC D0 1D 00 0C */ stfs f0, 0xc(r29) +/* 801BE2A0 001BB200 C0 01 00 78 */ lfs f0, 0x78(r1) +/* 801BE2A4 001BB204 D0 1D 00 10 */ stfs f0, 0x10(r29) +/* 801BE2A8 001BB208 C0 01 00 7C */ lfs f0, 0x7c(r1) +/* 801BE2AC 001BB20C D0 1D 00 14 */ stfs f0, 0x14(r29) +/* 801BE2B0 001BB210 C0 01 00 80 */ lfs f0, 0x80(r1) +/* 801BE2B4 001BB214 D0 1D 00 18 */ stfs f0, 0x18(r29) +/* 801BE2B8 001BB218 C0 01 00 84 */ lfs f0, 0x84(r1) +/* 801BE2BC 001BB21C D0 1D 00 1C */ stfs f0, 0x1c(r29) +/* 801BE2C0 001BB220 88 01 00 88 */ lbz r0, 0x88(r1) +/* 801BE2C4 001BB224 98 1D 00 20 */ stb r0, 0x20(r29) +/* 801BE2C8 001BB228 80 01 00 90 */ lwz r0, 0x90(r1) +/* 801BE2CC 001BB22C 80 61 00 94 */ lwz r3, 0x94(r1) +/* 801BE2D0 001BB230 90 7D 00 2C */ stw r3, 0x2c(r29) +/* 801BE2D4 001BB234 90 1D 00 28 */ stw r0, 0x28(r29) +/* 801BE2D8 001BB238 48 00 00 5C */ b lbl_801BE334 +lbl_801BE2DC: +/* 801BE2DC 001BB23C C0 01 00 C8 */ lfs f0, 0xc8(r1) +/* 801BE2E0 001BB240 D0 1D 00 00 */ stfs f0, 0(r29) +/* 801BE2E4 001BB244 C0 01 00 CC */ lfs f0, 0xcc(r1) +/* 801BE2E8 001BB248 D0 1D 00 04 */ stfs f0, 4(r29) +/* 801BE2EC 001BB24C C0 01 00 D0 */ lfs f0, 0xd0(r1) +/* 801BE2F0 001BB250 D0 1D 00 08 */ stfs f0, 8(r29) +/* 801BE2F4 001BB254 C0 01 00 D4 */ lfs f0, 0xd4(r1) +/* 801BE2F8 001BB258 D0 1D 00 0C */ stfs f0, 0xc(r29) +/* 801BE2FC 001BB25C C0 01 00 D8 */ lfs f0, 0xd8(r1) +/* 801BE300 001BB260 D0 1D 00 10 */ stfs f0, 0x10(r29) +/* 801BE304 001BB264 C0 01 00 DC */ lfs f0, 0xdc(r1) +/* 801BE308 001BB268 D0 1D 00 14 */ stfs f0, 0x14(r29) +/* 801BE30C 001BB26C C0 01 00 E0 */ lfs f0, 0xe0(r1) +/* 801BE310 001BB270 D0 1D 00 18 */ stfs f0, 0x18(r29) +/* 801BE314 001BB274 C0 01 00 E4 */ lfs f0, 0xe4(r1) +/* 801BE318 001BB278 D0 1D 00 1C */ stfs f0, 0x1c(r29) +/* 801BE31C 001BB27C 88 01 00 E8 */ lbz r0, 0xe8(r1) +/* 801BE320 001BB280 98 1D 00 20 */ stb r0, 0x20(r29) +/* 801BE324 001BB284 80 01 00 F0 */ lwz r0, 0xf0(r1) +/* 801BE328 001BB288 80 61 00 F4 */ lwz r3, 0xf4(r1) +/* 801BE32C 001BB28C 90 7D 00 2C */ stw r3, 0x2c(r29) +/* 801BE330 001BB290 90 1D 00 28 */ stw r0, 0x28(r29) +lbl_801BE334: +/* 801BE334 001BB294 E3 E1 01 18 */ psq_l f31, 280(r1), 0, qr0 +/* 801BE338 001BB298 CB E1 01 10 */ lfd f31, 0x110(r1) +/* 801BE33C 001BB29C BB 41 00 F8 */ lmw r26, 0xf8(r1) +/* 801BE340 001BB2A0 80 01 01 24 */ lwz r0, 0x124(r1) +/* 801BE344 001BB2A4 7C 08 03 A6 */ mtlr r0 +/* 801BE348 001BB2A8 38 21 01 20 */ addi r1, r1, 0x120 +/* 801BE34C 001BB2AC 4E 80 00 20 */ blr + +.global sub_801be350 +sub_801be350: +/* 801BE350 001BB2B0 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 801BE354 001BB2B4 7C 08 02 A6 */ mflr r0 +/* 801BE358 001BB2B8 90 01 01 04 */ stw r0, 0x104(r1) +/* 801BE35C 001BB2BC DB E1 00 F0 */ stfd f31, 0xf0(r1) +/* 801BE360 001BB2C0 F3 E1 00 F8 */ psq_st f31, 248(r1), 0, qr0 +/* 801BE364 001BB2C4 DB C1 00 E0 */ stfd f30, 0xe0(r1) +/* 801BE368 001BB2C8 F3 C1 00 E8 */ psq_st f30, 232(r1), 0, qr0 +/* 801BE36C 001BB2CC DB A1 00 D0 */ stfd f29, 0xd0(r1) +/* 801BE370 001BB2D0 F3 A1 00 D8 */ psq_st f29, 216(r1), 0, qr0 +/* 801BE374 001BB2D4 DB 81 00 C0 */ stfd f28, 0xc0(r1) +/* 801BE378 001BB2D8 F3 81 00 C8 */ psq_st f28, 200(r1), 0, qr0 +/* 801BE37C 001BB2DC BF 01 00 A0 */ stmw r24, 0xa0(r1) +/* 801BE380 001BB2E0 7C 7A 1B 78 */ mr r26, r3 +/* 801BE384 001BB2E4 38 61 00 38 */ addi r3, r1, 0x38 +/* 801BE388 001BB2E8 38 9A 02 E8 */ addi r4, r26, 0x2e8 +/* 801BE38C 001BB2EC 48 15 48 B5 */ bl GetRotation__12CTransform4fCFv +/* 801BE390 001BB2F0 38 61 00 68 */ addi r3, r1, 0x68 +/* 801BE394 001BB2F4 38 81 00 38 */ addi r4, r1, 0x38 +/* 801BE398 001BB2F8 48 15 47 DD */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801BE39C 001BB2FC C0 5A 03 14 */ lfs f2, 0x314(r26) +/* 801BE3A0 001BB300 38 80 00 01 */ li r4, 1 +/* 801BE3A4 001BB304 C0 3A 03 04 */ lfs f1, 0x304(r26) +/* 801BE3A8 001BB308 C0 1A 02 F4 */ lfs f0, 0x2f4(r26) +/* 801BE3AC 001BB30C D0 21 00 30 */ stfs f1, 0x30(r1) +/* 801BE3B0 001BB310 80 7A 03 8C */ lwz r3, 0x38c(r26) +/* 801BE3B4 001BB314 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801BE3B8 001BB318 D0 41 00 34 */ stfs f2, 0x34(r1) +/* 801BE3BC 001BB31C 81 83 00 00 */ lwz r12, 0(r3) +/* 801BE3C0 001BB320 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801BE3C4 001BB324 7D 89 03 A6 */ mtctr r12 +/* 801BE3C8 001BB328 4E 80 04 21 */ bctrl +/* 801BE3CC 001BB32C 80 1A 03 CC */ lwz r0, 0x3cc(r26) +/* 801BE3D0 001BB330 3C 60 80 3D */ lis r3, lbl_803D19F8@ha +/* 801BE3D4 001BB334 38 63 19 F8 */ addi r3, r3, lbl_803D19F8@l +/* 801BE3D8 001BB338 C0 3A 03 C8 */ lfs f1, 0x3c8(r26) +/* 801BE3DC 001BB33C 54 00 10 3A */ slwi r0, r0, 2 +/* 801BE3E0 001BB340 7C 83 02 14 */ add r4, r3, r0 +/* 801BE3E4 001BB344 7C 63 00 2E */ lwzx r3, r3, r0 +/* 801BE3E8 001BB348 80 84 00 04 */ lwz r4, 4(r4) +/* 801BE3EC 001BB34C 48 1A 4E 29 */ bl Lerp__6CColorFUiUif +/* 801BE3F0 001BB350 83 DA 03 84 */ lwz r30, 0x384(r26) +/* 801BE3F4 001BB354 7C 7D 1B 78 */ mr r29, r3 +/* 801BE3F8 001BB358 83 FA 03 88 */ lwz r31, 0x388(r26) +/* 801BE3FC 001BB35C 3B 60 00 00 */ li r27, 0 +/* 801BE400 001BB360 80 9E 01 60 */ lwz r4, 0x160(r30) +/* 801BE404 001BB364 3B 80 00 00 */ li r28, 0 +/* 801BE408 001BB368 80 7F 01 60 */ lwz r3, 0x160(r31) +/* 801BE40C 001BB36C 38 A4 FF FF */ addi r5, r4, -1 +/* 801BE410 001BB370 80 DE 01 68 */ lwz r6, 0x168(r30) +/* 801BE414 001BB374 38 03 FF FF */ addi r0, r3, -1 +/* 801BE418 001BB378 80 9F 01 68 */ lwz r4, 0x168(r31) +/* 801BE41C 001BB37C 54 A5 38 30 */ slwi r5, r5, 7 +/* 801BE420 001BB380 C3 C2 AA 04 */ lfs f30, lbl_805AC724@sda21(r2) +/* 801BE424 001BB384 54 03 38 30 */ slwi r3, r0, 7 +/* 801BE428 001BB388 C3 E2 AA 10 */ lfs f31, lbl_805AC730@sda21(r2) +/* 801BE42C 001BB38C 38 A5 00 30 */ addi r5, r5, 0x30 +/* 801BE430 001BB390 38 03 00 30 */ addi r0, r3, 0x30 +/* 801BE434 001BB394 7F A6 2C 2E */ lfsx f29, r6, r5 +/* 801BE438 001BB398 7F 84 04 2E */ lfsx f28, r4, r0 +/* 801BE43C 001BB39C 48 00 00 F0 */ b lbl_801BE52C +lbl_801BE440: +/* 801BE440 001BB3A0 80 9E 01 68 */ lwz r4, 0x168(r30) +/* 801BE444 001BB3A4 FC 20 F0 90 */ fmr f1, f30 +/* 801BE448 001BB3A8 80 1F 01 68 */ lwz r0, 0x168(r31) +/* 801BE44C 001BB3AC 38 61 00 14 */ addi r3, r1, 0x14 +/* 801BE450 001BB3B0 C0 7A 00 60 */ lfs f3, 0x60(r26) +/* 801BE454 001BB3B4 7F 24 E2 14 */ add r25, r4, r28 +/* 801BE458 001BB3B8 C0 5A 00 50 */ lfs f2, 0x50(r26) +/* 801BE45C 001BB3BC C0 1A 00 40 */ lfs f0, 0x40(r26) +/* 801BE460 001BB3C0 7F 00 E2 14 */ add r24, r0, r28 +/* 801BE464 001BB3C4 D0 41 00 0C */ stfs f2, 0xc(r1) +/* 801BE468 001BB3C8 38 81 00 08 */ addi r4, r1, 8 +/* 801BE46C 001BB3CC 38 BA 03 24 */ addi r5, r26, 0x324 +/* 801BE470 001BB3D0 38 DA 03 18 */ addi r6, r26, 0x318 +/* 801BE474 001BB3D4 D0 01 00 08 */ stfs f0, 8(r1) +/* 801BE478 001BB3D8 38 E1 00 2C */ addi r7, r1, 0x2c +/* 801BE47C 001BB3DC D0 61 00 10 */ stfs f3, 0x10(r1) +/* 801BE480 001BB3E0 48 15 6A 99 */ bl GetBezierPoint__5CMathFRC9CVector3fRC9CVector3fRC9CVector3fRC9CVector3ff +/* 801BE484 001BB3E4 C0 41 00 14 */ lfs f2, 0x14(r1) +/* 801BE488 001BB3E8 38 79 00 38 */ addi r3, r25, 0x38 +/* 801BE48C 001BB3EC C0 21 00 18 */ lfs f1, 0x18(r1) +/* 801BE490 001BB3F0 38 81 00 68 */ addi r4, r1, 0x68 +/* 801BE494 001BB3F4 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 801BE498 001BB3F8 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 801BE49C 001BB3FC D0 21 00 24 */ stfs f1, 0x24(r1) +/* 801BE4A0 001BB400 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 801BE4A4 001BB404 D0 59 00 0C */ stfs f2, 0xc(r25) +/* 801BE4A8 001BB408 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 801BE4AC 001BB40C D0 19 00 10 */ stfs f0, 0x10(r25) +/* 801BE4B0 001BB410 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 801BE4B4 001BB414 D0 19 00 14 */ stfs f0, 0x14(r25) +/* 801BE4B8 001BB418 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 801BE4BC 001BB41C D0 18 00 0C */ stfs f0, 0xc(r24) +/* 801BE4C0 001BB420 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 801BE4C4 001BB424 D0 18 00 10 */ stfs f0, 0x10(r24) +/* 801BE4C8 001BB428 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 801BE4CC 001BB42C D0 18 00 14 */ stfs f0, 0x14(r24) +/* 801BE4D0 001BB430 48 15 46 71 */ bl __as__12CTransform4fFRC12CTransform4f +/* 801BE4D4 001BB434 38 78 00 38 */ addi r3, r24, 0x38 +/* 801BE4D8 001BB438 38 81 00 68 */ addi r4, r1, 0x68 +/* 801BE4DC 001BB43C 48 15 46 65 */ bl __as__12CTransform4fFRC12CTransform4f +/* 801BE4E0 001BB440 93 B8 00 6C */ stw r29, 0x6c(r24) +/* 801BE4E4 001BB444 38 81 00 20 */ addi r4, r1, 0x20 +/* 801BE4E8 001BB448 C0 19 00 30 */ lfs f0, 0x30(r25) +/* 801BE4EC 001BB44C C0 38 00 30 */ lfs f1, 0x30(r24) +/* 801BE4F0 001BB450 D3 B9 00 30 */ stfs f29, 0x30(r25) +/* 801BE4F4 001BB454 FF A0 00 90 */ fmr f29, f0 +/* 801BE4F8 001BB458 D3 98 00 30 */ stfs f28, 0x30(r24) +/* 801BE4FC 001BB45C FF 80 08 90 */ fmr f28, f1 +/* 801BE500 001BB460 80 7A 03 8C */ lwz r3, 0x38c(r26) +/* 801BE504 001BB464 81 83 00 00 */ lwz r12, 0(r3) +/* 801BE508 001BB468 81 8C 00 18 */ lwz r12, 0x18(r12) +/* 801BE50C 001BB46C 7D 89 03 A6 */ mtctr r12 +/* 801BE510 001BB470 4E 80 04 21 */ bctrl +/* 801BE514 001BB474 80 7A 03 8C */ lwz r3, 0x38c(r26) +/* 801BE518 001BB478 38 80 00 01 */ li r4, 1 +/* 801BE51C 001BB47C 48 15 E3 A5 */ bl ForceParticleCreation__11CElementGenFi +/* 801BE520 001BB480 EF DE F8 2A */ fadds f30, f30, f31 +/* 801BE524 001BB484 3B 9C 00 80 */ addi r28, r28, 0x80 +/* 801BE528 001BB488 3B 7B 00 01 */ addi r27, r27, 1 +lbl_801BE52C: +/* 801BE52C 001BB48C 80 1E 01 60 */ lwz r0, 0x160(r30) +/* 801BE530 001BB490 7C 1B 00 00 */ cmpw r27, r0 +/* 801BE534 001BB494 41 80 FF 0C */ blt lbl_801BE440 +/* 801BE538 001BB498 80 7A 03 8C */ lwz r3, 0x38c(r26) +/* 801BE53C 001BB49C 38 80 00 00 */ li r4, 0 +/* 801BE540 001BB4A0 81 83 00 00 */ lwz r12, 0(r3) +/* 801BE544 001BB4A4 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801BE548 001BB4A8 7D 89 03 A6 */ mtctr r12 +/* 801BE54C 001BB4AC 4E 80 04 21 */ bctrl +/* 801BE550 001BB4B0 80 7A 03 84 */ lwz r3, 0x384(r26) +/* 801BE554 001BB4B4 81 83 00 00 */ lwz r12, 0(r3) +/* 801BE558 001BB4B8 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801BE55C 001BB4BC 7D 89 03 A6 */ mtctr r12 +/* 801BE560 001BB4C0 4E 80 04 21 */ bctrl +/* 801BE564 001BB4C4 80 7A 03 88 */ lwz r3, 0x388(r26) +/* 801BE568 001BB4C8 81 83 00 00 */ lwz r12, 0(r3) +/* 801BE56C 001BB4CC 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801BE570 001BB4D0 7D 89 03 A6 */ mtctr r12 +/* 801BE574 001BB4D4 4E 80 04 21 */ bctrl +/* 801BE578 001BB4D8 80 7A 03 8C */ lwz r3, 0x38c(r26) +/* 801BE57C 001BB4DC 81 83 00 00 */ lwz r12, 0(r3) +/* 801BE580 001BB4E0 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801BE584 001BB4E4 7D 89 03 A6 */ mtctr r12 +/* 801BE588 001BB4E8 4E 80 04 21 */ bctrl +/* 801BE58C 001BB4EC E3 E1 00 F8 */ psq_l f31, 248(r1), 0, qr0 +/* 801BE590 001BB4F0 CB E1 00 F0 */ lfd f31, 0xf0(r1) +/* 801BE594 001BB4F4 E3 C1 00 E8 */ psq_l f30, 232(r1), 0, qr0 +/* 801BE598 001BB4F8 CB C1 00 E0 */ lfd f30, 0xe0(r1) +/* 801BE59C 001BB4FC E3 A1 00 D8 */ psq_l f29, 216(r1), 0, qr0 +/* 801BE5A0 001BB500 CB A1 00 D0 */ lfd f29, 0xd0(r1) +/* 801BE5A4 001BB504 E3 81 00 C8 */ psq_l f28, 200(r1), 0, qr0 +/* 801BE5A8 001BB508 CB 81 00 C0 */ lfd f28, 0xc0(r1) +/* 801BE5AC 001BB50C BB 01 00 A0 */ lmw r24, 0xa0(r1) +/* 801BE5B0 001BB510 80 01 01 04 */ lwz r0, 0x104(r1) +/* 801BE5B4 001BB514 7C 08 03 A6 */ mtlr r0 +/* 801BE5B8 001BB518 38 21 01 00 */ addi r1, r1, 0x100 +/* 801BE5BC 001BB51C 4E 80 00 20 */ blr + +.global sub_801be5c0 +sub_801be5c0: +/* 801BE5C0 001BB520 94 21 FD E0 */ stwu r1, -0x220(r1) +/* 801BE5C4 001BB524 7C 08 02 A6 */ mflr r0 +/* 801BE5C8 001BB528 90 01 02 24 */ stw r0, 0x224(r1) +/* 801BE5CC 001BB52C DB E1 02 10 */ stfd f31, 0x210(r1) +/* 801BE5D0 001BB530 F3 E1 02 18 */ psq_st f31, 536(r1), 0, qr0 +/* 801BE5D4 001BB534 DB C1 02 00 */ stfd f30, 0x200(r1) +/* 801BE5D8 001BB538 F3 C1 02 08 */ psq_st f30, 520(r1), 0, qr0 +/* 801BE5DC 001BB53C DB A1 01 F0 */ stfd f29, 0x1f0(r1) +/* 801BE5E0 001BB540 F3 A1 01 F8 */ psq_st f29, 504(r1), 0, qr0 +/* 801BE5E4 001BB544 DB 81 01 E0 */ stfd f28, 0x1e0(r1) +/* 801BE5E8 001BB548 F3 81 01 E8 */ psq_st f28, 488(r1), 0, qr0 +/* 801BE5EC 001BB54C DB 61 01 D0 */ stfd f27, 0x1d0(r1) +/* 801BE5F0 001BB550 F3 61 01 D8 */ psq_st f27, 472(r1), 0, qr0 +/* 801BE5F4 001BB554 DB 41 01 C0 */ stfd f26, 0x1c0(r1) +/* 801BE5F8 001BB558 F3 41 01 C8 */ psq_st f26, 456(r1), 0, qr0 +/* 801BE5FC 001BB55C DB 21 01 B0 */ stfd f25, 0x1b0(r1) +/* 801BE600 001BB560 F3 21 01 B8 */ psq_st f25, 440(r1), 0, qr0 +/* 801BE604 001BB564 DB 01 01 A0 */ stfd f24, 0x1a0(r1) +/* 801BE608 001BB568 F3 01 01 A8 */ psq_st f24, 424(r1), 0, qr0 +/* 801BE60C 001BB56C DA E1 01 90 */ stfd f23, 0x190(r1) +/* 801BE610 001BB570 F2 E1 01 98 */ psq_st f23, 408(r1), 0, qr0 +/* 801BE614 001BB574 DA C1 01 80 */ stfd f22, 0x180(r1) +/* 801BE618 001BB578 F2 C1 01 88 */ psq_st f22, 392(r1), 0, qr0 +/* 801BE61C 001BB57C DA A1 01 70 */ stfd f21, 0x170(r1) +/* 801BE620 001BB580 F2 A1 01 78 */ psq_st f21, 376(r1), 0, qr0 +/* 801BE624 001BB584 DA 81 01 60 */ stfd f20, 0x160(r1) +/* 801BE628 001BB588 F2 81 01 68 */ psq_st f20, 360(r1), 0, qr0 +/* 801BE62C 001BB58C DA 61 01 50 */ stfd f19, 0x150(r1) +/* 801BE630 001BB590 F2 61 01 58 */ psq_st f19, 344(r1), 0, qr0 +/* 801BE634 001BB594 DA 41 01 40 */ stfd f18, 0x140(r1) +/* 801BE638 001BB598 F2 41 01 48 */ psq_st f18, 328(r1), 0, qr0 +/* 801BE63C 001BB59C DA 21 01 30 */ stfd f17, 0x130(r1) +/* 801BE640 001BB5A0 F2 21 01 38 */ psq_st f17, 312(r1), 0, qr0 +/* 801BE644 001BB5A4 DA 01 01 20 */ stfd f16, 0x120(r1) +/* 801BE648 001BB5A8 F2 01 01 28 */ psq_st f16, 296(r1), 0, qr0 +/* 801BE64C 001BB5AC 93 E1 01 1C */ stw r31, 0x11c(r1) +/* 801BE650 001BB5B0 93 C1 01 18 */ stw r30, 0x118(r1) +/* 801BE654 001BB5B4 93 A1 01 14 */ stw r29, 0x114(r1) +/* 801BE658 001BB5B8 7C 7D 1B 78 */ mr r29, r3 +/* 801BE65C 001BB5BC 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 801BE660 001BB5C0 38 9D 02 E8 */ addi r4, r29, 0x2e8 +/* 801BE664 001BB5C4 48 15 40 7D */ bl GetInverse__12CTransform4fCFv +/* 801BE668 001BB5C8 38 61 00 D8 */ addi r3, r1, 0xd8 +/* 801BE66C 001BB5CC 38 81 00 A8 */ addi r4, r1, 0xa8 +/* 801BE670 001BB5D0 48 15 45 05 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801BE674 001BB5D4 C0 5D 03 14 */ lfs f2, 0x314(r29) +/* 801BE678 001BB5D8 38 61 00 54 */ addi r3, r1, 0x54 +/* 801BE67C 001BB5DC C0 3D 03 04 */ lfs f1, 0x304(r29) +/* 801BE680 001BB5E0 38 81 00 D8 */ addi r4, r1, 0xd8 +/* 801BE684 001BB5E4 C0 1D 02 F4 */ lfs f0, 0x2f4(r29) +/* 801BE688 001BB5E8 38 A1 00 48 */ addi r5, r1, 0x48 +/* 801BE68C 001BB5EC D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 801BE690 001BB5F0 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 801BE694 001BB5F4 D0 41 00 50 */ stfs f2, 0x50(r1) +/* 801BE698 001BB5F8 48 15 44 51 */ bl __ml__12CTransform4fCFRC9CVector3f +/* 801BE69C 001BB5FC C0 41 00 54 */ lfs f2, 0x54(r1) +/* 801BE6A0 001BB600 38 61 00 3C */ addi r3, r1, 0x3c +/* 801BE6A4 001BB604 C0 21 00 58 */ lfs f1, 0x58(r1) +/* 801BE6A8 001BB608 38 81 00 D8 */ addi r4, r1, 0xd8 +/* 801BE6AC 001BB60C C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 801BE6B0 001BB610 38 BD 03 18 */ addi r5, r29, 0x318 +/* 801BE6B4 001BB614 D0 41 00 84 */ stfs f2, 0x84(r1) +/* 801BE6B8 001BB618 D0 21 00 88 */ stfs f1, 0x88(r1) +/* 801BE6BC 001BB61C D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 801BE6C0 001BB620 48 15 44 29 */ bl __ml__12CTransform4fCFRC9CVector3f +/* 801BE6C4 001BB624 C0 41 00 3C */ lfs f2, 0x3c(r1) +/* 801BE6C8 001BB628 38 61 00 30 */ addi r3, r1, 0x30 +/* 801BE6CC 001BB62C C0 21 00 40 */ lfs f1, 0x40(r1) +/* 801BE6D0 001BB630 38 81 00 D8 */ addi r4, r1, 0xd8 +/* 801BE6D4 001BB634 C0 01 00 44 */ lfs f0, 0x44(r1) +/* 801BE6D8 001BB638 38 BD 03 24 */ addi r5, r29, 0x324 +/* 801BE6DC 001BB63C D0 41 00 78 */ stfs f2, 0x78(r1) +/* 801BE6E0 001BB640 D0 21 00 7C */ stfs f1, 0x7c(r1) +/* 801BE6E4 001BB644 D0 01 00 80 */ stfs f0, 0x80(r1) +/* 801BE6E8 001BB648 48 15 44 01 */ bl __ml__12CTransform4fCFRC9CVector3f +/* 801BE6EC 001BB64C C0 61 00 30 */ lfs f3, 0x30(r1) +/* 801BE6F0 001BB650 38 61 00 24 */ addi r3, r1, 0x24 +/* 801BE6F4 001BB654 C0 41 00 34 */ lfs f2, 0x34(r1) +/* 801BE6F8 001BB658 38 81 00 D8 */ addi r4, r1, 0xd8 +/* 801BE6FC 001BB65C C0 21 00 38 */ lfs f1, 0x38(r1) +/* 801BE700 001BB660 38 A1 00 18 */ addi r5, r1, 0x18 +/* 801BE704 001BB664 C0 BD 00 60 */ lfs f5, 0x60(r29) +/* 801BE708 001BB668 C0 9D 00 50 */ lfs f4, 0x50(r29) +/* 801BE70C 001BB66C C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 801BE710 001BB670 D0 61 00 6C */ stfs f3, 0x6c(r1) +/* 801BE714 001BB674 D0 41 00 70 */ stfs f2, 0x70(r1) +/* 801BE718 001BB678 D0 21 00 74 */ stfs f1, 0x74(r1) +/* 801BE71C 001BB67C D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801BE720 001BB680 D0 81 00 1C */ stfs f4, 0x1c(r1) +/* 801BE724 001BB684 D0 A1 00 20 */ stfs f5, 0x20(r1) +/* 801BE728 001BB688 48 15 43 C1 */ bl __ml__12CTransform4fCFRC9CVector3f +/* 801BE72C 001BB68C C2 A2 AA 04 */ lfs f21, lbl_805AC724@sda21(r2) +/* 801BE730 001BB690 3F E0 E0 00 */ lis r31, 0xe000 +/* 801BE734 001BB694 C2 82 AA 14 */ lfs f20, lbl_805AC734@sda21(r2) +/* 801BE738 001BB698 C0 41 00 24 */ lfs f2, 0x24(r1) +/* 801BE73C 001BB69C FF E0 A8 90 */ fmr f31, f21 +/* 801BE740 001BB6A0 C0 21 00 28 */ lfs f1, 0x28(r1) +/* 801BE744 001BB6A4 FE 20 A0 90 */ fmr f17, f20 +/* 801BE748 001BB6A8 C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 801BE74C 001BB6AC D0 41 00 60 */ stfs f2, 0x60(r1) +/* 801BE750 001BB6B0 C3 61 00 84 */ lfs f27, 0x84(r1) +/* 801BE754 001BB6B4 D0 21 00 64 */ stfs f1, 0x64(r1) +/* 801BE758 001BB6B8 C3 41 00 88 */ lfs f26, 0x88(r1) +/* 801BE75C 001BB6BC D0 01 00 68 */ stfs f0, 0x68(r1) +/* 801BE760 001BB6C0 C3 21 00 8C */ lfs f25, 0x8c(r1) +/* 801BE764 001BB6C4 C3 A2 AA 0C */ lfs f29, lbl_805AC72C@sda21(r2) +/* 801BE768 001BB6C8 C3 C2 AA 20 */ lfs f30, lbl_805AC740@sda21(r2) +/* 801BE76C 001BB6CC C2 02 AA 24 */ lfs f16, lbl_805AC744@sda21(r2) +/* 801BE770 001BB6D0 48 00 00 DC */ b lbl_801BE84C +lbl_801BE774: +/* 801BE774 001BB6D4 FC 20 A0 90 */ fmr f1, f20 +/* 801BE778 001BB6D8 38 61 00 0C */ addi r3, r1, 0xc +/* 801BE77C 001BB6DC 38 81 00 84 */ addi r4, r1, 0x84 +/* 801BE780 001BB6E0 38 A1 00 78 */ addi r5, r1, 0x78 +/* 801BE784 001BB6E4 38 C1 00 6C */ addi r6, r1, 0x6c +/* 801BE788 001BB6E8 38 E1 00 60 */ addi r7, r1, 0x60 +/* 801BE78C 001BB6EC 48 15 67 8D */ bl GetBezierPoint__5CMathFRC9CVector3fRC9CVector3fRC9CVector3fRC9CVector3ff +/* 801BE790 001BB6F0 C3 01 00 0C */ lfs f24, 0xc(r1) +/* 801BE794 001BB6F4 3B C0 00 00 */ li r30, 0 +/* 801BE798 001BB6F8 C2 E1 00 10 */ lfs f23, 0x10(r1) +/* 801BE79C 001BB6FC C2 C1 00 14 */ lfs f22, 0x14(r1) +/* 801BE7A0 001BB700 C2 62 AA 04 */ lfs f19, lbl_805AC724@sda21(r2) +lbl_801BE7A4: +/* 801BE7A4 001BB704 C0 22 AA 18 */ lfs f1, lbl_805AC738@sda21(r2) +/* 801BE7A8 001BB708 38 7D 03 94 */ addi r3, r29, 0x394 +/* 801BE7AC 001BB70C C0 42 AA 1C */ lfs f2, lbl_805AC73C@sda21(r2) +/* 801BE7B0 001BB710 48 15 3D 95 */ bl Range__9CRandom16Fff +/* 801BE7B4 001BB714 FE 40 08 90 */ fmr f18, f1 +/* 801BE7B8 001BB718 C0 22 AA 18 */ lfs f1, lbl_805AC738@sda21(r2) +/* 801BE7BC 001BB71C C0 42 AA 1C */ lfs f2, lbl_805AC73C@sda21(r2) +/* 801BE7C0 001BB720 38 7D 03 94 */ addi r3, r29, 0x394 +/* 801BE7C4 001BB724 48 15 3D 81 */ bl Range__9CRandom16Fff +/* 801BE7C8 001BB728 C0 1D 03 98 */ lfs f0, 0x398(r29) +/* 801BE7CC 001BB72C FF 80 08 90 */ fmr f28, f1 +/* 801BE7D0 001BB730 EC 33 00 2A */ fadds f1, f19, f0 +/* 801BE7D4 001BB734 48 15 65 71 */ bl FastCosR__5CMathFf +/* 801BE7D8 001BB738 C0 1D 03 98 */ lfs f0, 0x398(r29) +/* 801BE7DC 001BB73C EE 55 90 7A */ fmadds f18, f21, f1, f18 +/* 801BE7E0 001BB740 EC 33 00 2A */ fadds f1, f19, f0 +/* 801BE7E4 001BB744 48 15 66 0D */ bl FastSinR__5CMathFf +/* 801BE7E8 001BB748 EC 13 F0 24 */ fdivs f0, f19, f30 +/* 801BE7EC 001BB74C 3B DE 00 01 */ addi r30, r30, 1 +/* 801BE7F0 001BB750 2C 1E 00 24 */ cmpwi r30, 0x24 +/* 801BE7F4 001BB754 EC 9D 00 28 */ fsubs f4, f29, f0 +/* 801BE7F8 001BB758 EC 78 00 32 */ fmuls f3, f24, f0 +/* 801BE7FC 001BB75C EC 57 00 32 */ fmuls f2, f23, f0 +/* 801BE800 001BB760 EC 16 00 32 */ fmuls f0, f22, f0 +/* 801BE804 001BB764 EC 7B 19 3A */ fmadds f3, f27, f4, f3 +/* 801BE808 001BB768 EC 5A 11 3A */ fmadds f2, f26, f4, f2 +/* 801BE80C 001BB76C EC B5 E0 7A */ fmadds f5, f21, f1, f28 +/* 801BE810 001BB770 EC 63 90 2A */ fadds f3, f3, f18 +/* 801BE814 001BB774 EC 19 01 3A */ fmadds f0, f25, f4, f0 +/* 801BE818 001BB778 EC 22 F8 2A */ fadds f1, f2, f31 +/* 801BE81C 001BB77C D0 7F 00 00 */ stfs f3, 0(r31) +/* 801BE820 001BB780 EE 73 80 2A */ fadds f19, f19, f16 +/* 801BE824 001BB784 EC 00 28 2A */ fadds f0, f0, f5 +/* 801BE828 001BB788 D0 3F 00 04 */ stfs f1, 4(r31) +/* 801BE82C 001BB78C D0 1F 00 08 */ stfs f0, 8(r31) +/* 801BE830 001BB790 3B FF 00 0C */ addi r31, r31, 0xc +/* 801BE834 001BB794 41 80 FF 70 */ blt lbl_801BE7A4 +/* 801BE838 001BB798 FF 60 C0 90 */ fmr f27, f24 +/* 801BE83C 001BB79C C2 A2 AA 28 */ lfs f21, lbl_805AC748@sda21(r2) +/* 801BE840 001BB7A0 FF 40 B8 90 */ fmr f26, f23 +/* 801BE844 001BB7A4 FF 20 B0 90 */ fmr f25, f22 +/* 801BE848 001BB7A8 EE 94 88 2A */ fadds f20, f20, f17 +lbl_801BE84C: +/* 801BE84C 001BB7AC FC 14 E8 40 */ fcmpo cr0, f20, f29 +/* 801BE850 001BB7B0 4C 40 13 82 */ cror 2, 0, 2 +/* 801BE854 001BB7B4 41 82 FF 20 */ beq lbl_801BE774 +/* 801BE858 001BB7B8 3C 80 80 3D */ lis r4, lbl_803D1A08@ha +/* 801BE85C 001BB7BC 38 61 00 90 */ addi r3, r1, 0x90 +/* 801BE860 001BB7C0 39 24 1A 08 */ addi r9, r4, lbl_803D1A08@l +/* 801BE864 001BB7C4 81 09 00 00 */ lwz r8, 0(r9) +/* 801BE868 001BB7C8 80 E9 00 04 */ lwz r7, 4(r9) +/* 801BE86C 001BB7CC 80 C9 00 08 */ lwz r6, 8(r9) +/* 801BE870 001BB7D0 80 A9 00 0C */ lwz r5, 0xc(r9) +/* 801BE874 001BB7D4 80 89 00 10 */ lwz r4, 0x10(r9) +/* 801BE878 001BB7D8 80 09 00 14 */ lwz r0, 0x14(r9) +/* 801BE87C 001BB7DC 91 01 00 90 */ stw r8, 0x90(r1) +/* 801BE880 001BB7E0 90 E1 00 94 */ stw r7, 0x94(r1) +/* 801BE884 001BB7E4 90 C1 00 98 */ stw r6, 0x98(r1) +/* 801BE888 001BB7E8 90 A1 00 9C */ stw r5, 0x9c(r1) +/* 801BE88C 001BB7EC 90 81 00 A0 */ stw r4, 0xa0(r1) +/* 801BE890 001BB7F0 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 801BE894 001BB7F4 48 14 95 95 */ bl SetVtxDescv__3CGXFPC14_GXVtxDescList +/* 801BE898 001BB7F8 38 60 00 01 */ li r3, 1 +/* 801BE89C 001BB7FC 48 14 A5 B5 */ bl SetNumChans__3CGXFUc +/* 801BE8A0 001BB800 38 60 00 01 */ li r3, 1 +/* 801BE8A4 001BB804 48 14 A3 ED */ bl SetNumTevStages__3CGXFUc +/* 801BE8A8 001BB808 38 60 00 00 */ li r3, 0 +/* 801BE8AC 001BB80C 38 80 00 00 */ li r4, 0 +/* 801BE8B0 001BB810 38 A0 00 01 */ li r5, 1 +/* 801BE8B4 001BB814 38 C0 00 01 */ li r6, 1 +/* 801BE8B8 001BB818 38 E0 00 00 */ li r7, 0 +/* 801BE8BC 001BB81C 39 00 00 00 */ li r8, 0 +/* 801BE8C0 001BB820 39 20 00 02 */ li r9, 2 +/* 801BE8C4 001BB824 48 14 A4 09 */ bl SetChanCtrl__3CGXFQ23CGX10EChannelIdUc11_GXColorSrc11_GXColorSrc10_GXLightID12_GXDiffuseFn9_GXAttnFn +/* 801BE8C8 001BB828 38 60 00 01 */ li r3, 1 +/* 801BE8CC 001BB82C 38 80 00 04 */ li r4, 4 +/* 801BE8D0 001BB830 38 A0 00 01 */ li r5, 1 +/* 801BE8D4 001BB834 38 C0 00 00 */ li r6, 0 +/* 801BE8D8 001BB838 48 14 9F F9 */ bl SetBlendMode__3CGXF12_GXBlendMode14_GXBlendFactor14_GXBlendFactor10_GXLogicOp +/* 801BE8DC 001BB83C 38 60 00 00 */ li r3, 0 +/* 801BE8E0 001BB840 48 14 A5 35 */ bl SetNumTexGens__3CGXFUc +/* 801BE8E4 001BB844 38 60 00 00 */ li r3, 0 +/* 801BE8E8 001BB848 38 80 00 FF */ li r4, 0xff +/* 801BE8EC 001BB84C 38 A0 00 FF */ li r5, 0xff +/* 801BE8F0 001BB850 38 C0 00 04 */ li r6, 4 +/* 801BE8F4 001BB854 48 14 A0 59 */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 801BE8F8 001BB858 80 8D 9C 68 */ lwz r4, lbl_805A8828@sda21(r13) +/* 801BE8FC 001BB85C 38 60 00 00 */ li r3, 0 +/* 801BE900 001BB860 48 14 B9 B9 */ bl SetTevOp__9CGraphicsF12ERglTevStageRCQ213CTevCombiners8CTevPass +/* 801BE904 001BB864 80 8D 9C 68 */ lwz r4, lbl_805A8828@sda21(r13) +/* 801BE908 001BB868 38 60 00 01 */ li r3, 1 +/* 801BE90C 001BB86C 48 14 B9 AD */ bl SetTevOp__9CGraphicsF12ERglTevStageRCQ213CTevCombiners8CTevPass +/* 801BE910 001BB870 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801BE914 001BB874 38 9D 02 E8 */ addi r4, r29, 0x2e8 +/* 801BE918 001BB878 81 83 00 00 */ lwz r12, 0(r3) +/* 801BE91C 001BB87C 81 8C 00 30 */ lwz r12, 0x30(r12) +/* 801BE920 001BB880 7D 89 03 A6 */ mtctr r12 +/* 801BE924 001BB884 4E 80 04 21 */ bctrl +/* 801BE928 001BB888 48 18 B6 85 */ bl White__6CColorFv +/* 801BE92C 001BB88C 7C 7F 1B 78 */ mr r31, r3 +/* 801BE930 001BB890 38 60 00 0C */ li r3, 0xc +/* 801BE934 001BB894 38 80 00 00 */ li r4, 0 +/* 801BE938 001BB898 48 14 9B 81 */ bl SetLineWidth__3CGXFUc12_GXTexOffset +/* 801BE93C 001BB89C 38 60 00 B0 */ li r3, 0xb0 +/* 801BE940 001BB8A0 38 80 00 00 */ li r4, 0 +/* 801BE944 001BB8A4 38 A0 00 D8 */ li r5, 0xd8 +/* 801BE948 001BB8A8 48 14 9C 3D */ bl Begin__3CGXF12_GXPrimitive9_GXVtxFmtUs +/* 801BE94C 001BB8AC 38 00 00 24 */ li r0, 0x24 +/* 801BE950 001BB8B0 3C 80 E0 00 */ lis r4, 0xE0000008@ha +/* 801BE954 001BB8B4 3C 60 CC 01 */ lis r3, 0xCC008000@ha +/* 801BE958 001BB8B8 7C 09 03 A6 */ mtctr r0 +lbl_801BE95C: +/* 801BE95C 001BB8BC C0 44 00 08 */ lfs f2, 0xE0000008@l(r4) +/* 801BE960 001BB8C0 C0 24 00 04 */ lfs f1, 4(r4) +/* 801BE964 001BB8C4 C0 04 00 00 */ lfs f0, 0(r4) +/* 801BE968 001BB8C8 D0 03 80 00 */ stfs f0, 0xCC008000@l(r3) +/* 801BE96C 001BB8CC D0 23 80 00 */ stfs f1, 0xCC008000@l(r3) +/* 801BE970 001BB8D0 D0 43 80 00 */ stfs f2, 0xCC008000@l(r3) +/* 801BE974 001BB8D4 80 1F 00 00 */ lwz r0, 0(r31) +/* 801BE978 001BB8D8 90 03 80 00 */ stw r0, 0xCC008000@l(r3) +/* 801BE97C 001BB8DC C0 44 00 14 */ lfs f2, 0x14(r4) +/* 801BE980 001BB8E0 C0 24 00 10 */ lfs f1, 0x10(r4) +/* 801BE984 001BB8E4 C0 04 00 0C */ lfs f0, 0xc(r4) +/* 801BE988 001BB8E8 D0 03 80 00 */ stfs f0, 0xCC008000@l(r3) +/* 801BE98C 001BB8EC D0 23 80 00 */ stfs f1, 0xCC008000@l(r3) +/* 801BE990 001BB8F0 D0 43 80 00 */ stfs f2, 0xCC008000@l(r3) +/* 801BE994 001BB8F4 80 1F 00 00 */ lwz r0, 0(r31) +/* 801BE998 001BB8F8 90 03 80 00 */ stw r0, 0xCC008000@l(r3) +/* 801BE99C 001BB8FC C0 44 00 20 */ lfs f2, 0x20(r4) +/* 801BE9A0 001BB900 C0 24 00 1C */ lfs f1, 0x1c(r4) +/* 801BE9A4 001BB904 C0 04 00 18 */ lfs f0, 0x18(r4) +/* 801BE9A8 001BB908 D0 03 80 00 */ stfs f0, 0xCC008000@l(r3) +/* 801BE9AC 001BB90C D0 23 80 00 */ stfs f1, 0xCC008000@l(r3) +/* 801BE9B0 001BB910 D0 43 80 00 */ stfs f2, 0xCC008000@l(r3) +/* 801BE9B4 001BB914 80 1F 00 00 */ lwz r0, 0(r31) +/* 801BE9B8 001BB918 90 03 80 00 */ stw r0, 0xCC008000@l(r3) +/* 801BE9BC 001BB91C C0 44 00 2C */ lfs f2, 0x2c(r4) +/* 801BE9C0 001BB920 C0 24 00 28 */ lfs f1, 0x28(r4) +/* 801BE9C4 001BB924 C0 04 00 24 */ lfs f0, 0x24(r4) +/* 801BE9C8 001BB928 D0 03 80 00 */ stfs f0, 0xCC008000@l(r3) +/* 801BE9CC 001BB92C D0 23 80 00 */ stfs f1, 0xCC008000@l(r3) +/* 801BE9D0 001BB930 D0 43 80 00 */ stfs f2, 0xCC008000@l(r3) +/* 801BE9D4 001BB934 80 1F 00 00 */ lwz r0, 0(r31) +/* 801BE9D8 001BB938 90 03 80 00 */ stw r0, 0xCC008000@l(r3) +/* 801BE9DC 001BB93C C0 44 00 38 */ lfs f2, 0x38(r4) +/* 801BE9E0 001BB940 C0 24 00 34 */ lfs f1, 0x34(r4) +/* 801BE9E4 001BB944 C0 04 00 30 */ lfs f0, 0x30(r4) +/* 801BE9E8 001BB948 D0 03 80 00 */ stfs f0, 0xCC008000@l(r3) +/* 801BE9EC 001BB94C D0 23 80 00 */ stfs f1, 0xCC008000@l(r3) +/* 801BE9F0 001BB950 D0 43 80 00 */ stfs f2, 0xCC008000@l(r3) +/* 801BE9F4 001BB954 80 1F 00 00 */ lwz r0, 0(r31) +/* 801BE9F8 001BB958 90 03 80 00 */ stw r0, 0xCC008000@l(r3) +/* 801BE9FC 001BB95C C0 44 00 44 */ lfs f2, 0x44(r4) +/* 801BEA00 001BB960 C0 24 00 40 */ lfs f1, 0x40(r4) +/* 801BEA04 001BB964 C0 04 00 3C */ lfs f0, 0x3c(r4) +/* 801BEA08 001BB968 38 84 00 48 */ addi r4, r4, 0x48 +/* 801BEA0C 001BB96C D0 03 80 00 */ stfs f0, 0xCC008000@l(r3) +/* 801BEA10 001BB970 D0 23 80 00 */ stfs f1, 0xCC008000@l(r3) +/* 801BEA14 001BB974 D0 43 80 00 */ stfs f2, 0xCC008000@l(r3) +/* 801BEA18 001BB978 80 1F 00 00 */ lwz r0, 0(r31) +/* 801BEA1C 001BB97C 90 03 80 00 */ stw r0, 0xCC008000@l(r3) +/* 801BEA20 001BB980 42 00 FF 3C */ bdnz lbl_801BE95C +/* 801BEA24 001BB984 48 14 9B 5D */ bl End__3CGXFv +/* 801BEA28 001BB988 C0 22 AA 0C */ lfs f1, lbl_805AC72C@sda21(r2) +/* 801BEA2C 001BB98C 38 61 00 08 */ addi r3, r1, 8 +/* 801BEA30 001BB990 C0 42 AA 04 */ lfs f2, lbl_805AC724@sda21(r2) +/* 801BEA34 001BB994 FC 60 08 90 */ fmr f3, f1 +/* 801BEA38 001BB998 C0 82 A9 F8 */ lfs f4, lbl_805AC718@sda21(r2) +/* 801BEA3C 001BB99C 48 1A 49 B1 */ bl __ct__6CColorFffff +/* 801BEA40 001BB9A0 38 60 00 30 */ li r3, 0x30 +/* 801BEA44 001BB9A4 38 80 00 00 */ li r4, 0 +/* 801BEA48 001BB9A8 48 14 9A 71 */ bl SetLineWidth__3CGXFUc12_GXTexOffset +/* 801BEA4C 001BB9AC 38 60 00 B0 */ li r3, 0xb0 +/* 801BEA50 001BB9B0 38 80 00 00 */ li r4, 0 +/* 801BEA54 001BB9B4 38 A0 00 D8 */ li r5, 0xd8 +/* 801BEA58 001BB9B8 48 14 9B 2D */ bl Begin__3CGXF12_GXPrimitive9_GXVtxFmtUs +/* 801BEA5C 001BB9BC 38 00 00 24 */ li r0, 0x24 +/* 801BEA60 001BB9C0 80 A1 00 08 */ lwz r5, 8(r1) +/* 801BEA64 001BB9C4 3C 80 E0 00 */ lis r4, 0xE0000008@ha +/* 801BEA68 001BB9C8 3C 60 CC 01 */ lis r3, 0xCC008000@ha +/* 801BEA6C 001BB9CC 7C 09 03 A6 */ mtctr r0 +lbl_801BEA70: +/* 801BEA70 001BB9D0 C0 44 00 08 */ lfs f2, 0xE0000008@l(r4) +/* 801BEA74 001BB9D4 C0 24 00 04 */ lfs f1, 4(r4) +/* 801BEA78 001BB9D8 C0 04 00 00 */ lfs f0, 0(r4) +/* 801BEA7C 001BB9DC D0 03 80 00 */ stfs f0, 0xCC008000@l(r3) +/* 801BEA80 001BB9E0 D0 23 80 00 */ stfs f1, 0xCC008000@l(r3) +/* 801BEA84 001BB9E4 D0 43 80 00 */ stfs f2, 0xCC008000@l(r3) +/* 801BEA88 001BB9E8 90 A3 80 00 */ stw r5, 0xCC008000@l(r3) +/* 801BEA8C 001BB9EC C0 44 00 14 */ lfs f2, 0x14(r4) +/* 801BEA90 001BB9F0 C0 24 00 10 */ lfs f1, 0x10(r4) +/* 801BEA94 001BB9F4 C0 04 00 0C */ lfs f0, 0xc(r4) +/* 801BEA98 001BB9F8 D0 03 80 00 */ stfs f0, 0xCC008000@l(r3) +/* 801BEA9C 001BB9FC D0 23 80 00 */ stfs f1, 0xCC008000@l(r3) +/* 801BEAA0 001BBA00 D0 43 80 00 */ stfs f2, 0xCC008000@l(r3) +/* 801BEAA4 001BBA04 90 A3 80 00 */ stw r5, 0xCC008000@l(r3) +/* 801BEAA8 001BBA08 C0 44 00 20 */ lfs f2, 0x20(r4) +/* 801BEAAC 001BBA0C C0 24 00 1C */ lfs f1, 0x1c(r4) +/* 801BEAB0 001BBA10 C0 04 00 18 */ lfs f0, 0x18(r4) +/* 801BEAB4 001BBA14 D0 03 80 00 */ stfs f0, 0xCC008000@l(r3) +/* 801BEAB8 001BBA18 D0 23 80 00 */ stfs f1, 0xCC008000@l(r3) +/* 801BEABC 001BBA1C D0 43 80 00 */ stfs f2, 0xCC008000@l(r3) +/* 801BEAC0 001BBA20 90 A3 80 00 */ stw r5, 0xCC008000@l(r3) +/* 801BEAC4 001BBA24 C0 44 00 2C */ lfs f2, 0x2c(r4) +/* 801BEAC8 001BBA28 C0 24 00 28 */ lfs f1, 0x28(r4) +/* 801BEACC 001BBA2C C0 04 00 24 */ lfs f0, 0x24(r4) +/* 801BEAD0 001BBA30 D0 03 80 00 */ stfs f0, 0xCC008000@l(r3) +/* 801BEAD4 001BBA34 D0 23 80 00 */ stfs f1, 0xCC008000@l(r3) +/* 801BEAD8 001BBA38 D0 43 80 00 */ stfs f2, 0xCC008000@l(r3) +/* 801BEADC 001BBA3C 90 A3 80 00 */ stw r5, 0xCC008000@l(r3) +/* 801BEAE0 001BBA40 C0 44 00 38 */ lfs f2, 0x38(r4) +/* 801BEAE4 001BBA44 C0 24 00 34 */ lfs f1, 0x34(r4) +/* 801BEAE8 001BBA48 C0 04 00 30 */ lfs f0, 0x30(r4) +/* 801BEAEC 001BBA4C D0 03 80 00 */ stfs f0, 0xCC008000@l(r3) +/* 801BEAF0 001BBA50 D0 23 80 00 */ stfs f1, 0xCC008000@l(r3) +/* 801BEAF4 001BBA54 D0 43 80 00 */ stfs f2, 0xCC008000@l(r3) +/* 801BEAF8 001BBA58 90 A3 80 00 */ stw r5, 0xCC008000@l(r3) +/* 801BEAFC 001BBA5C C0 44 00 44 */ lfs f2, 0x44(r4) +/* 801BEB00 001BBA60 C0 24 00 40 */ lfs f1, 0x40(r4) +/* 801BEB04 001BBA64 C0 04 00 3C */ lfs f0, 0x3c(r4) +/* 801BEB08 001BBA68 38 84 00 48 */ addi r4, r4, 0x48 +/* 801BEB0C 001BBA6C D0 03 80 00 */ stfs f0, 0xCC008000@l(r3) +/* 801BEB10 001BBA70 D0 23 80 00 */ stfs f1, 0xCC008000@l(r3) +/* 801BEB14 001BBA74 D0 43 80 00 */ stfs f2, 0xCC008000@l(r3) +/* 801BEB18 001BBA78 90 A3 80 00 */ stw r5, 0xCC008000@l(r3) +/* 801BEB1C 001BBA7C 42 00 FF 54 */ bdnz lbl_801BEA70 +/* 801BEB20 001BBA80 48 14 9A 61 */ bl End__3CGXFv +/* 801BEB24 001BBA84 38 60 00 06 */ li r3, 6 +/* 801BEB28 001BBA88 38 80 00 00 */ li r4, 0 +/* 801BEB2C 001BBA8C 48 14 99 8D */ bl SetLineWidth__3CGXFUc12_GXTexOffset +/* 801BEB30 001BBA90 E3 E1 02 18 */ psq_l f31, 536(r1), 0, qr0 +/* 801BEB34 001BBA94 CB E1 02 10 */ lfd f31, 0x210(r1) +/* 801BEB38 001BBA98 E3 C1 02 08 */ psq_l f30, 520(r1), 0, qr0 +/* 801BEB3C 001BBA9C CB C1 02 00 */ lfd f30, 0x200(r1) +/* 801BEB40 001BBAA0 E3 A1 01 F8 */ psq_l f29, 504(r1), 0, qr0 +/* 801BEB44 001BBAA4 CB A1 01 F0 */ lfd f29, 0x1f0(r1) +/* 801BEB48 001BBAA8 E3 81 01 E8 */ psq_l f28, 488(r1), 0, qr0 +/* 801BEB4C 001BBAAC CB 81 01 E0 */ lfd f28, 0x1e0(r1) +/* 801BEB50 001BBAB0 E3 61 01 D8 */ psq_l f27, 472(r1), 0, qr0 +/* 801BEB54 001BBAB4 CB 61 01 D0 */ lfd f27, 0x1d0(r1) +/* 801BEB58 001BBAB8 E3 41 01 C8 */ psq_l f26, 456(r1), 0, qr0 +/* 801BEB5C 001BBABC CB 41 01 C0 */ lfd f26, 0x1c0(r1) +/* 801BEB60 001BBAC0 E3 21 01 B8 */ psq_l f25, 440(r1), 0, qr0 +/* 801BEB64 001BBAC4 CB 21 01 B0 */ lfd f25, 0x1b0(r1) +/* 801BEB68 001BBAC8 E3 01 01 A8 */ psq_l f24, 424(r1), 0, qr0 +/* 801BEB6C 001BBACC CB 01 01 A0 */ lfd f24, 0x1a0(r1) +/* 801BEB70 001BBAD0 E2 E1 01 98 */ psq_l f23, 408(r1), 0, qr0 +/* 801BEB74 001BBAD4 CA E1 01 90 */ lfd f23, 0x190(r1) +/* 801BEB78 001BBAD8 E2 C1 01 88 */ psq_l f22, 392(r1), 0, qr0 +/* 801BEB7C 001BBADC CA C1 01 80 */ lfd f22, 0x180(r1) +/* 801BEB80 001BBAE0 E2 A1 01 78 */ psq_l f21, 376(r1), 0, qr0 +/* 801BEB84 001BBAE4 CA A1 01 70 */ lfd f21, 0x170(r1) +/* 801BEB88 001BBAE8 E2 81 01 68 */ psq_l f20, 360(r1), 0, qr0 +/* 801BEB8C 001BBAEC CA 81 01 60 */ lfd f20, 0x160(r1) +/* 801BEB90 001BBAF0 E2 61 01 58 */ psq_l f19, 344(r1), 0, qr0 +/* 801BEB94 001BBAF4 CA 61 01 50 */ lfd f19, 0x150(r1) +/* 801BEB98 001BBAF8 E2 41 01 48 */ psq_l f18, 328(r1), 0, qr0 +/* 801BEB9C 001BBAFC CA 41 01 40 */ lfd f18, 0x140(r1) +/* 801BEBA0 001BBB00 E2 21 01 38 */ psq_l f17, 312(r1), 0, qr0 +/* 801BEBA4 001BBB04 CA 21 01 30 */ lfd f17, 0x130(r1) +/* 801BEBA8 001BBB08 E2 01 01 28 */ psq_l f16, 296(r1), 0, qr0 +/* 801BEBAC 001BBB0C CA 01 01 20 */ lfd f16, 0x120(r1) +/* 801BEBB0 001BBB10 83 E1 01 1C */ lwz r31, 0x11c(r1) +/* 801BEBB4 001BBB14 83 C1 01 18 */ lwz r30, 0x118(r1) +/* 801BEBB8 001BBB18 80 01 02 24 */ lwz r0, 0x224(r1) +/* 801BEBBC 001BBB1C 83 A1 01 14 */ lwz r29, 0x114(r1) +/* 801BEBC0 001BBB20 7C 08 03 A6 */ mtlr r0 +/* 801BEBC4 001BBB24 38 21 02 20 */ addi r1, r1, 0x220 +/* 801BEBC8 001BBB28 4E 80 00 20 */ blr + +.global sub_801bebcc +sub_801bebcc: +/* 801BEBCC 001BBB2C 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 801BEBD0 001BBB30 7C 08 02 A6 */ mflr r0 +/* 801BEBD4 001BBB34 90 01 00 84 */ stw r0, 0x84(r1) +/* 801BEBD8 001BBB38 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 801BEBDC 001BBB3C 7C DF 33 78 */ mr r31, r6 +/* 801BEBE0 001BBB40 93 C1 00 78 */ stw r30, 0x78(r1) +/* 801BEBE4 001BBB44 7C BE 2B 78 */ mr r30, r5 +/* 801BEBE8 001BBB48 93 A1 00 74 */ stw r29, 0x74(r1) +/* 801BEBEC 001BBB4C 7C 9D 23 78 */ mr r29, r4 +/* 801BEBF0 001BBB50 2C 1D 00 22 */ cmpwi r29, 0x22 +/* 801BEBF4 001BBB54 93 81 00 70 */ stw r28, 0x70(r1) +/* 801BEBF8 001BBB58 7C 7C 1B 78 */ mr r28, r3 +/* 801BEBFC 001BBB5C 41 82 00 D8 */ beq lbl_801BECD4 +/* 801BEC00 001BBB60 40 80 00 DC */ bge lbl_801BECDC +/* 801BEC04 001BBB64 2C 1D 00 21 */ cmpwi r29, 0x21 +/* 801BEC08 001BBB68 40 80 00 08 */ bge lbl_801BEC10 +/* 801BEC0C 001BBB6C 48 00 00 D0 */ b lbl_801BECDC +lbl_801BEC10: +/* 801BEC10 001BBB70 80 7C 03 90 */ lwz r3, 0x390(r28) +/* 801BEC14 001BBB74 28 03 00 00 */ cmplwi r3, 0 +/* 801BEC18 001BBB78 41 82 00 60 */ beq lbl_801BEC78 +/* 801BEC1C 001BBB7C 81 83 00 00 */ lwz r12, 0(r3) +/* 801BEC20 001BBB80 81 8C 00 64 */ lwz r12, 0x64(r12) +/* 801BEC24 001BBB84 7D 89 03 A6 */ mtctr r12 +/* 801BEC28 001BBB88 4E 80 04 21 */ bctrl +/* 801BEC2C 001BBB8C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801BEC30 001BBB90 41 82 00 48 */ beq lbl_801BEC78 +/* 801BEC34 001BBB94 3C 80 80 3D */ lis r4, lbl_803D1A20@ha +/* 801BEC38 001BBB98 38 61 00 0C */ addi r3, r1, 0xc +/* 801BEC3C 001BBB9C 38 84 1A 20 */ addi r4, r4, lbl_803D1A20@l +/* 801BEC40 001BBBA0 4B E4 60 79 */ bl string_l__4rstlFPCc +/* 801BEC44 001BBBA4 80 9C 03 90 */ lwz r4, 0x390(r28) +/* 801BEC48 001BBBA8 38 61 00 1C */ addi r3, r1, 0x1c +/* 801BEC4C 001BBBAC 81 84 00 00 */ lwz r12, 0(r4) +/* 801BEC50 001BBBB0 81 8C 00 68 */ lwz r12, 0x68(r12) +/* 801BEC54 001BBBB4 7D 89 03 A6 */ mtctr r12 +/* 801BEC58 001BBBB8 4E 80 04 21 */ bctrl +/* 801BEC5C 001BBBBC 7F 83 E3 78 */ mr r3, r28 +/* 801BEC60 001BBBC0 7F E6 FB 78 */ mr r6, r31 +/* 801BEC64 001BBBC4 38 81 00 0C */ addi r4, r1, 0xc +/* 801BEC68 001BBBC8 38 A1 00 1C */ addi r5, r1, 0x1c +/* 801BEC6C 001BBBCC 4B E7 8C 91 */ bl "CreateProjectileLight__15CGameProjectileFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC6CLightR13CStateManager" +/* 801BEC70 001BBBD0 38 61 00 0C */ addi r3, r1, 0xc +/* 801BEC74 001BBBD4 48 17 EE 6D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801BEC78: +/* 801BEC78 001BBBD8 88 1C 00 E6 */ lbz r0, 0xe6(r28) +/* 801BEC7C 001BBBDC 38 60 00 02 */ li r3, 2 +/* 801BEC80 001BBBE0 50 60 1E F8 */ rlwimi r0, r3, 3, 0x1b, 0x1c +/* 801BEC84 001BBBE4 98 1C 00 E6 */ stb r0, 0xe6(r28) +/* 801BEC88 001BBBE8 C0 5C 03 14 */ lfs f2, 0x314(r28) +/* 801BEC8C 001BBBEC C0 3C 03 04 */ lfs f1, 0x304(r28) +/* 801BEC90 001BBBF0 C0 1C 02 F4 */ lfs f0, 0x2f4(r28) +/* 801BEC94 001BBBF4 D0 1C 03 18 */ stfs f0, 0x318(r28) +/* 801BEC98 001BBBF8 D0 3C 03 1C */ stfs f1, 0x31c(r28) +/* 801BEC9C 001BBBFC D0 5C 03 20 */ stfs f2, 0x320(r28) +/* 801BECA0 001BBC00 C0 5C 00 60 */ lfs f2, 0x60(r28) +/* 801BECA4 001BBC04 C0 3C 00 50 */ lfs f1, 0x50(r28) +/* 801BECA8 001BBC08 C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 801BECAC 001BBC0C D0 1C 03 24 */ stfs f0, 0x324(r28) +/* 801BECB0 001BBC10 D0 3C 03 28 */ stfs f1, 0x328(r28) +/* 801BECB4 001BBC14 D0 5C 03 2C */ stfs f2, 0x32c(r28) +/* 801BECB8 001BBC18 C0 1C 03 24 */ lfs f0, 0x324(r28) +/* 801BECBC 001BBC1C D0 1C 03 30 */ stfs f0, 0x330(r28) +/* 801BECC0 001BBC20 C0 1C 03 28 */ lfs f0, 0x328(r28) +/* 801BECC4 001BBC24 D0 1C 03 34 */ stfs f0, 0x334(r28) +/* 801BECC8 001BBC28 C0 1C 03 2C */ lfs f0, 0x32c(r28) +/* 801BECCC 001BBC2C D0 1C 03 38 */ stfs f0, 0x338(r28) +/* 801BECD0 001BBC30 48 00 00 0C */ b lbl_801BECDC +lbl_801BECD4: +/* 801BECD4 001BBC34 7F E4 FB 78 */ mr r4, r31 +/* 801BECD8 001BBC38 4B E7 8B D1 */ bl DeleteProjectileLight__15CGameProjectileFR13CStateManager +lbl_801BECDC: +/* 801BECDC 001BBC3C A0 1E 00 00 */ lhz r0, 0(r30) +/* 801BECE0 001BBC40 7F 83 E3 78 */ mr r3, r28 +/* 801BECE4 001BBC44 7F A4 EB 78 */ mr r4, r29 +/* 801BECE8 001BBC48 7F E6 FB 78 */ mr r6, r31 +/* 801BECEC 001BBC4C B0 01 00 08 */ sth r0, 8(r1) +/* 801BECF0 001BBC50 38 A1 00 08 */ addi r5, r1, 8 +/* 801BECF4 001BBC54 4B E7 98 D9 */ bl AcceptScriptMsg__15CGameProjectileF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 801BECF8 001BBC58 80 01 00 84 */ lwz r0, 0x84(r1) +/* 801BECFC 001BBC5C 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 801BED00 001BBC60 83 C1 00 78 */ lwz r30, 0x78(r1) +/* 801BED04 001BBC64 83 A1 00 74 */ lwz r29, 0x74(r1) +/* 801BED08 001BBC68 83 81 00 70 */ lwz r28, 0x70(r1) +/* 801BED0C 001BBC6C 7C 08 03 A6 */ mtlr r0 +/* 801BED10 001BBC70 38 21 00 80 */ addi r1, r1, 0x80 +/* 801BED14 001BBC74 4E 80 00 20 */ blr + +.global ResetBeam__11CWaveBusterFb +ResetBeam__11CWaveBusterFb: +/* 801BED18 001BBC78 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801BED1C 001BBC7C 7C 08 02 A6 */ mflr r0 +/* 801BED20 001BBC80 90 01 00 14 */ stw r0, 0x14(r1) +/* 801BED24 001BBC84 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 801BED28 001BBC88 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801BED2C 001BBC8C 7C 7F 1B 78 */ mr r31, r3 +/* 801BED30 001BBC90 41 82 00 4C */ beq lbl_801BED7C +/* 801BED34 001BBC94 81 83 00 00 */ lwz r12, 0(r3) +/* 801BED38 001BBC98 38 80 00 00 */ li r4, 0 +/* 801BED3C 001BBC9C 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801BED40 001BBCA0 7D 89 03 A6 */ mtctr r12 +/* 801BED44 001BBCA4 4E 80 04 21 */ bctrl +/* 801BED48 001BBCA8 88 1F 03 D0 */ lbz r0, 0x3d0(r31) +/* 801BED4C 001BBCAC 38 60 00 00 */ li r3, 0 +/* 801BED50 001BBCB0 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801BED54 001BBCB4 38 80 00 00 */ li r4, 0 +/* 801BED58 001BBCB8 98 1F 03 D0 */ stb r0, 0x3d0(r31) +/* 801BED5C 001BBCBC 80 7F 03 8C */ lwz r3, 0x38c(r31) +/* 801BED60 001BBCC0 81 83 00 00 */ lwz r12, 0(r3) +/* 801BED64 001BBCC4 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801BED68 001BBCC8 7D 89 03 A6 */ mtctr r12 +/* 801BED6C 001BBCCC 4E 80 04 21 */ bctrl +/* 801BED70 001BBCD0 C0 02 AA 20 */ lfs f0, lbl_805AC740@sda21(r2) +/* 801BED74 001BBCD4 D0 1F 03 98 */ stfs f0, 0x398(r31) +/* 801BED78 001BBCD8 48 00 00 2C */ b lbl_801BEDA4 +lbl_801BED7C: +/* 801BED7C 001BBCDC 80 7F 03 8C */ lwz r3, 0x38c(r31) +/* 801BED80 001BBCE0 38 80 00 00 */ li r4, 0 +/* 801BED84 001BBCE4 81 83 00 00 */ lwz r12, 0(r3) +/* 801BED88 001BBCE8 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801BED8C 001BBCEC 7D 89 03 A6 */ mtctr r12 +/* 801BED90 001BBCF0 4E 80 04 21 */ bctrl +/* 801BED94 001BBCF4 88 1F 03 D0 */ lbz r0, 0x3d0(r31) +/* 801BED98 001BBCF8 38 60 00 00 */ li r3, 0 +/* 801BED9C 001BBCFC 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801BEDA0 001BBD00 98 1F 03 D0 */ stb r0, 0x3d0(r31) +lbl_801BEDA4: +/* 801BEDA4 001BBD04 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801BEDA8 001BBD08 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801BEDAC 001BBD0C 7C 08 03 A6 */ mtlr r0 +/* 801BEDB0 001BBD10 38 21 00 10 */ addi r1, r1, 0x10 +/* 801BEDB4 001BBD14 4E 80 00 20 */ blr + +.global sub_801bedb8 +sub_801bedb8: +/* 801BEDB8 001BBD18 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801BEDBC 001BBD1C 7C 08 02 A6 */ mflr r0 +/* 801BEDC0 001BBD20 90 01 00 14 */ stw r0, 0x14(r1) +/* 801BEDC4 001BBD24 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801BEDC8 001BBD28 7C 9F 23 78 */ mr r31, r4 +/* 801BEDCC 001BBD2C 93 C1 00 08 */ stw r30, 8(r1) +/* 801BEDD0 001BBD30 7C 7E 1B 78 */ mr r30, r3 +/* 801BEDD4 001BBD34 4B FF F5 7D */ bl sub_801be350 +/* 801BEDD8 001BBD38 7F C3 F3 78 */ mr r3, r30 +/* 801BEDDC 001BBD3C 4B FF F7 E5 */ bl sub_801be5c0 +/* 801BEDE0 001BBD40 7F C3 F3 78 */ mr r3, r30 +/* 801BEDE4 001BBD44 7F E4 FB 78 */ mr r4, r31 +/* 801BEDE8 001BBD48 4B F4 31 21 */ bl Render__7CWeaponCFRC13CStateManager +/* 801BEDEC 001BBD4C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801BEDF0 001BBD50 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801BEDF4 001BBD54 83 C1 00 08 */ lwz r30, 8(r1) +/* 801BEDF8 001BBD58 7C 08 03 A6 */ mtlr r0 +/* 801BEDFC 001BBD5C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801BEE00 001BBD60 4E 80 00 20 */ blr + +.global sub_801bee04 +sub_801bee04: +/* 801BEE04 001BBD64 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801BEE08 001BBD68 7C 08 02 A6 */ mflr r0 +/* 801BEE0C 001BBD6C 90 01 00 44 */ stw r0, 0x44(r1) +/* 801BEE10 001BBD70 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801BEE14 001BBD74 7C BF 2B 78 */ mr r31, r5 +/* 801BEE18 001BBD78 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801BEE1C 001BBD7C 7C 7E 1B 78 */ mr r30, r3 +/* 801BEE20 001BBD80 7F C4 F3 78 */ mr r4, r30 +/* 801BEE24 001BBD84 C0 43 03 14 */ lfs f2, 0x314(r3) +/* 801BEE28 001BBD88 C0 23 03 04 */ lfs f1, 0x304(r3) +/* 801BEE2C 001BBD8C 38 61 00 14 */ addi r3, r1, 0x14 +/* 801BEE30 001BBD90 C0 1E 02 F4 */ lfs f0, 0x2f4(r30) +/* 801BEE34 001BBD94 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 801BEE38 001BBD98 D0 01 00 08 */ stfs f0, 8(r1) +/* 801BEE3C 001BBD9C D0 41 00 10 */ stfs f2, 0x10(r1) +/* 801BEE40 001BBDA0 81 9E 00 00 */ lwz r12, 0(r30) +/* 801BEE44 001BBDA4 81 8C 00 64 */ lwz r12, 0x64(r12) +/* 801BEE48 001BBDA8 7D 89 03 A6 */ mtctr r12 +/* 801BEE4C 001BBDAC 4E 80 04 21 */ bctrl +/* 801BEE50 001BBDB0 7F C3 F3 78 */ mr r3, r30 +/* 801BEE54 001BBDB4 7F E4 FB 78 */ mr r4, r31 +/* 801BEE58 001BBDB8 38 A1 00 08 */ addi r5, r1, 8 +/* 801BEE5C 001BBDBC 38 C1 00 14 */ addi r6, r1, 0x14 +/* 801BEE60 001BBDC0 4B E9 5C 49 */ bl EnsureRendered__6CActorCFRC13CStateManagerRC9CVector3f +/* 801BEE64 001BBDC4 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801BEE68 001BBDC8 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801BEE6C 001BBDCC 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801BEE70 001BBDD0 7C 08 03 A6 */ mtlr r0 +/* 801BEE74 001BBDD4 38 21 00 40 */ addi r1, r1, 0x40 +/* 801BEE78 001BBDD8 4E 80 00 20 */ blr + +.global UpdateFx__11CWaveBusterFRC12CTransform4ffR13CStateManager +UpdateFx__11CWaveBusterFRC12CTransform4ffR13CStateManager: +/* 801BEE7C 001BBDDC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801BEE80 001BBDE0 7C 08 02 A6 */ mflr r0 +/* 801BEE84 001BBDE4 90 01 00 34 */ stw r0, 0x34(r1) +/* 801BEE88 001BBDE8 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 801BEE8C 001BBDEC F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 801BEE90 001BBDF0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801BEE94 001BBDF4 88 03 00 30 */ lbz r0, 0x30(r3) +/* 801BEE98 001BBDF8 FF E0 08 90 */ fmr f31, f1 +/* 801BEE9C 001BBDFC 7C 7F 1B 78 */ mr r31, r3 +/* 801BEEA0 001BBE00 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801BEEA4 001BBE04 41 82 00 68 */ beq lbl_801BEF0C +/* 801BEEA8 001BBE08 38 7F 02 E8 */ addi r3, r31, 0x2e8 +/* 801BEEAC 001BBE0C 48 15 3C 95 */ bl __as__12CTransform4fFRC12CTransform4f +/* 801BEEB0 001BBE10 C0 42 AA 2C */ lfs f2, lbl_805AC74C@sda21(r2) +/* 801BEEB4 001BBE14 C0 3F 03 98 */ lfs f1, 0x398(r31) +/* 801BEEB8 001BBE18 C0 02 AA 04 */ lfs f0, lbl_805AC724@sda21(r2) +/* 801BEEBC 001BBE1C EC 22 0F FC */ fnmsubs f1, f2, f31, f1 +/* 801BEEC0 001BBE20 D0 3F 03 98 */ stfs f1, 0x398(r31) +/* 801BEEC4 001BBE24 C0 3F 03 98 */ lfs f1, 0x398(r31) +/* 801BEEC8 001BBE28 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801BEECC 001BBE2C 40 80 00 0C */ bge lbl_801BEED8 +/* 801BEED0 001BBE30 C0 02 AA 20 */ lfs f0, lbl_805AC740@sda21(r2) +/* 801BEED4 001BBE34 D0 1F 03 98 */ stfs f0, 0x398(r31) +lbl_801BEED8: +/* 801BEED8 001BBE38 88 1F 03 D0 */ lbz r0, 0x3d0(r31) +/* 801BEEDC 001BBE3C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801BEEE0 001BBE40 41 82 00 0C */ beq lbl_801BEEEC +/* 801BEEE4 001BBE44 C0 22 AA 30 */ lfs f1, lbl_805AC750@sda21(r2) +/* 801BEEE8 001BBE48 48 00 00 08 */ b lbl_801BEEF0 +lbl_801BEEEC: +/* 801BEEEC 001BBE4C C0 22 AA 04 */ lfs f1, lbl_805AC724@sda21(r2) +lbl_801BEEF0: +/* 801BEEF0 001BBE50 C0 02 AA 04 */ lfs f0, lbl_805AC724@sda21(r2) +/* 801BEEF4 001BBE54 38 7F 01 70 */ addi r3, r31, 0x170 +/* 801BEEF8 001BBE58 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 801BEEFC 001BBE5C 38 81 00 08 */ addi r4, r1, 8 +/* 801BEF00 001BBE60 D0 01 00 08 */ stfs f0, 8(r1) +/* 801BEF04 001BBE64 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801BEF08 001BBE68 48 0F 02 35 */ bl SetVelocity__17CProjectileWeaponFRC9CVector3f +lbl_801BEF0C: +/* 801BEF0C 001BBE6C E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 801BEF10 001BBE70 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801BEF14 001BBE74 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 801BEF18 001BBE78 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801BEF1C 001BBE7C 7C 08 03 A6 */ mtlr r0 +/* 801BEF20 001BBE80 38 21 00 30 */ addi r1, r1, 0x30 +/* 801BEF24 001BBE84 4E 80 00 20 */ blr + +.global sub_801bef28 +sub_801bef28: +/* 801BEF28 001BBE88 94 21 FD D0 */ stwu r1, -0x230(r1) +/* 801BEF2C 001BBE8C 7C 08 02 A6 */ mflr r0 +/* 801BEF30 001BBE90 90 01 02 34 */ stw r0, 0x234(r1) +/* 801BEF34 001BBE94 DB E1 02 20 */ stfd f31, 0x220(r1) +/* 801BEF38 001BBE98 F3 E1 02 28 */ psq_st f31, 552(r1), 0, qr0 +/* 801BEF3C 001BBE9C DB C1 02 10 */ stfd f30, 0x210(r1) +/* 801BEF40 001BBEA0 F3 C1 02 18 */ psq_st f30, 536(r1), 0, qr0 +/* 801BEF44 001BBEA4 93 E1 02 0C */ stw r31, 0x20c(r1) +/* 801BEF48 001BBEA8 93 C1 02 08 */ stw r30, 0x208(r1) +/* 801BEF4C 001BBEAC 93 A1 02 04 */ stw r29, 0x204(r1) +/* 801BEF50 001BBEB0 FF C0 08 90 */ fmr f30, f1 +/* 801BEF54 001BBEB4 7C 7E 1B 78 */ mr r30, r3 +/* 801BEF58 001BBEB8 7C 9F 23 78 */ mr r31, r4 +/* 801BEF5C 001BBEBC 4B F4 31 7D */ bl Think__7CWeaponFfR13CStateManager +/* 801BEF60 001BBEC0 88 1E 00 30 */ lbz r0, 0x30(r30) +/* 801BEF64 001BBEC4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801BEF68 001BBEC8 41 82 06 04 */ beq lbl_801BF56C +/* 801BEF6C 001BBECC 80 9F 08 50 */ lwz r4, 0x850(r31) +/* 801BEF70 001BBED0 80 7E 00 04 */ lwz r3, 4(r30) +/* 801BEF74 001BBED4 80 04 00 68 */ lwz r0, 0x68(r4) +/* 801BEF78 001BBED8 7C 03 00 00 */ cmpw r3, r0 +/* 801BEF7C 001BBEDC 41 82 00 1C */ beq lbl_801BEF98 +/* 801BEF80 001BBEE0 90 01 00 34 */ stw r0, 0x34(r1) +/* 801BEF84 001BBEE4 7F E3 FB 78 */ mr r3, r31 +/* 801BEF88 001BBEE8 7F C4 F3 78 */ mr r4, r30 +/* 801BEF8C 001BBEEC 38 A1 00 38 */ addi r5, r1, 0x38 +/* 801BEF90 001BBEF0 90 01 00 38 */ stw r0, 0x38(r1) +/* 801BEF94 001BBEF4 4B E8 62 E5 */ bl SetActorAreaId__13CStateManagerFR6CActor7TAreaId +lbl_801BEF98: +/* 801BEF98 001BBEF8 88 1E 03 D0 */ lbz r0, 0x3d0(r30) +/* 801BEF9C 001BBEFC 38 A0 00 00 */ li r5, 0 +/* 801BEFA0 001BBF00 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 801BEFA4 001BBF04 C3 E2 A9 FC */ lfs f31, lbl_805AC71C@sda21(r2) +/* 801BEFA8 001BBF08 98 1E 03 D0 */ stb r0, 0x3d0(r30) +/* 801BEFAC 001BBF0C 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 801BEFB0 001BBF10 38 81 00 AC */ addi r4, r1, 0xac +/* 801BEFB4 001BBF14 88 1E 03 D0 */ lbz r0, 0x3d0(r30) +/* 801BEFB8 001BBF18 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 801BEFBC 001BBF1C 98 1E 03 D0 */ stb r0, 0x3d0(r30) +/* 801BEFC0 001BBF20 C0 5E 03 14 */ lfs f2, 0x314(r30) +/* 801BEFC4 001BBF24 C0 3E 03 04 */ lfs f1, 0x304(r30) +/* 801BEFC8 001BBF28 C0 1E 02 F4 */ lfs f0, 0x2f4(r30) +/* 801BEFCC 001BBF2C D0 01 00 D0 */ stfs f0, 0xd0(r1) +/* 801BEFD0 001BBF30 D0 21 00 D4 */ stfs f1, 0xd4(r1) +/* 801BEFD4 001BBF34 D0 41 00 D8 */ stfs f2, 0xd8(r1) +/* 801BEFD8 001BBF38 C0 5E 03 0C */ lfs f2, 0x30c(r30) +/* 801BEFDC 001BBF3C C0 3E 02 FC */ lfs f1, 0x2fc(r30) +/* 801BEFE0 001BBF40 C0 1E 02 EC */ lfs f0, 0x2ec(r30) +/* 801BEFE4 001BBF44 D0 01 00 AC */ stfs f0, 0xac(r1) +/* 801BEFE8 001BBF48 D0 21 00 B0 */ stfs f1, 0xb0(r1) +/* 801BEFEC 001BBF4C D0 41 00 B4 */ stfs f2, 0xb4(r1) +/* 801BEFF0 001BBF50 48 15 58 61 */ bl AsNormalized__9CVector3fCFv +/* 801BEFF4 001BBF54 C0 41 00 B8 */ lfs f2, 0xb8(r1) +/* 801BEFF8 001BBF58 C0 21 00 BC */ lfs f1, 0xbc(r1) +/* 801BEFFC 001BBF5C C0 01 00 C0 */ lfs f0, 0xc0(r1) +/* 801BF000 001BBF60 D0 41 00 C4 */ stfs f2, 0xc4(r1) +/* 801BF004 001BBF64 D0 21 00 C8 */ stfs f1, 0xc8(r1) +/* 801BF008 001BBF68 D0 01 00 CC */ stfs f0, 0xcc(r1) +/* 801BF00C 001BBF6C 88 7E 03 D0 */ lbz r3, 0x3d0(r30) +/* 801BF010 001BBF70 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f +/* 801BF014 001BBF74 40 82 01 54 */ bne lbl_801BF168 +/* 801BF018 001BBF78 54 60 DF FF */ rlwinm. r0, r3, 0x1b, 0x1f, 0x1f +/* 801BF01C 001BBF7C 40 82 01 4C */ bne lbl_801BF168 +/* 801BF020 001BBF80 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801BF024 001BBF84 FC 20 F0 90 */ fmr f1, f30 +/* 801BF028 001BBF88 7F C4 F3 78 */ mr r4, r30 +/* 801BF02C 001BBF8C 7F E8 FB 78 */ mr r8, r31 +/* 801BF030 001BBF90 B0 01 00 2C */ sth r0, 0x2c(r1) +/* 801BF034 001BBF94 38 61 01 78 */ addi r3, r1, 0x178 +/* 801BF038 001BBF98 38 A1 00 2C */ addi r5, r1, 0x2c +/* 801BF03C 001BBF9C 38 C1 00 D0 */ addi r6, r1, 0xd0 +/* 801BF040 001BBFA0 38 E1 00 C4 */ addi r7, r1, 0xc4 +/* 801BF044 001BBFA4 4B FF EF CD */ bl sub_801be010 +/* 801BF048 001BBFA8 88 01 01 98 */ lbz r0, 0x198(r1) +/* 801BF04C 001BBFAC C0 21 01 78 */ lfs f1, 0x178(r1) +/* 801BF050 001BBFB0 28 00 00 00 */ cmplwi r0, 0 +/* 801BF054 001BBFB4 41 82 01 14 */ beq lbl_801BF168 +/* 801BF058 001BBFB8 C0 02 A9 FC */ lfs f0, lbl_805AC71C@sda21(r2) +/* 801BF05C 001BBFBC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801BF060 001BBFC0 40 80 01 08 */ bge lbl_801BF168 +/* 801BF064 001BBFC4 A0 01 00 2C */ lhz r0, 0x2c(r1) +/* 801BF068 001BBFC8 FF E0 08 90 */ fmr f31, f1 +/* 801BF06C 001BBFCC 7F E3 FB 78 */ mr r3, r31 +/* 801BF070 001BBFD0 38 81 00 28 */ addi r4, r1, 0x28 +/* 801BF074 001BBFD4 B0 01 00 28 */ sth r0, 0x28(r1) +/* 801BF078 001BBFD8 4B E8 D4 FD */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801BF07C 001BBFDC 7C 64 1B 78 */ mr r4, r3 +/* 801BF080 001BBFE0 38 61 00 44 */ addi r3, r1, 0x44 +/* 801BF084 001BBFE4 4B EF 0C 0D */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 801BF088 001BBFE8 83 A3 00 04 */ lwz r29, 4(r3) +/* 801BF08C 001BBFEC 28 1D 00 00 */ cmplwi r29, 0 +/* 801BF090 001BBFF0 41 82 00 B8 */ beq lbl_801BF148 +/* 801BF094 001BBFF4 7F A3 EB 78 */ mr r3, r29 +/* 801BF098 001BBFF8 7F C4 F3 78 */ mr r4, r30 +/* 801BF09C 001BBFFC 81 9D 00 00 */ lwz r12, 0(r29) +/* 801BF0A0 001BC000 7F E5 FB 78 */ mr r5, r31 +/* 801BF0A4 001BC004 81 8C 00 44 */ lwz r12, 0x44(r12) +/* 801BF0A8 001BC008 7D 89 03 A6 */ mtctr r12 +/* 801BF0AC 001BC00C 4E 80 04 21 */ bctrl +/* 801BF0B0 001BC010 C0 7E 00 58 */ lfs f3, 0x58(r30) +/* 801BF0B4 001BC014 FC 20 F0 90 */ fmr f1, f30 +/* 801BF0B8 001BC018 C0 5E 00 48 */ lfs f2, 0x48(r30) +/* 801BF0BC 001BC01C 38 61 00 F8 */ addi r3, r1, 0xf8 +/* 801BF0C0 001BC020 C0 1E 00 38 */ lfs f0, 0x38(r30) +/* 801BF0C4 001BC024 38 9E 01 2C */ addi r4, r30, 0x12c +/* 801BF0C8 001BC028 D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 801BF0CC 001BC02C D0 41 00 A4 */ stfs f2, 0xa4(r1) +/* 801BF0D0 001BC030 D0 61 00 A8 */ stfs f3, 0xa8(r1) +/* 801BF0D4 001BC034 80 1E 00 F8 */ lwz r0, 0xf8(r30) +/* 801BF0D8 001BC038 80 BE 00 FC */ lwz r5, 0xfc(r30) +/* 801BF0DC 001BC03C 90 A1 00 E4 */ stw r5, 0xe4(r1) +/* 801BF0E0 001BC040 90 01 00 E0 */ stw r0, 0xe0(r1) +/* 801BF0E4 001BC044 80 1E 01 00 */ lwz r0, 0x100(r30) +/* 801BF0E8 001BC048 80 BE 01 04 */ lwz r5, 0x104(r30) +/* 801BF0EC 001BC04C 90 A1 00 EC */ stw r5, 0xec(r1) +/* 801BF0F0 001BC050 90 01 00 E8 */ stw r0, 0xe8(r1) +/* 801BF0F4 001BC054 80 1E 01 08 */ lwz r0, 0x108(r30) +/* 801BF0F8 001BC058 90 01 00 F0 */ stw r0, 0xf0(r1) +/* 801BF0FC 001BC05C 4B F0 43 4D */ bl __ct__11CDamageInfoFRC11CDamageInfof +/* 801BF100 001BC060 A0 1E 00 EC */ lhz r0, 0xec(r30) +/* 801BF104 001BC064 7F E3 FB 78 */ mr r3, r31 +/* 801BF108 001BC068 38 81 00 24 */ addi r4, r1, 0x24 +/* 801BF10C 001BC06C 38 A1 00 1C */ addi r5, r1, 0x1c +/* 801BF110 001BC070 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801BF114 001BC074 38 C1 00 14 */ addi r6, r1, 0x14 +/* 801BF118 001BC078 38 E1 00 F8 */ addi r7, r1, 0xf8 +/* 801BF11C 001BC07C 39 01 00 E0 */ addi r8, r1, 0xe0 +/* 801BF120 001BC080 A1 5D 00 08 */ lhz r10, 8(r29) +/* 801BF124 001BC084 39 21 00 A0 */ addi r9, r1, 0xa0 +/* 801BF128 001BC088 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801BF12C 001BC08C B1 41 00 1C */ sth r10, 0x1c(r1) +/* 801BF130 001BC090 A0 1E 00 08 */ lhz r0, 8(r30) +/* 801BF134 001BC094 B1 41 00 18 */ sth r10, 0x18(r1) +/* 801BF138 001BC098 B0 01 00 20 */ sth r0, 0x20(r1) +/* 801BF13C 001BC09C B0 01 00 24 */ sth r0, 0x24(r1) +/* 801BF140 001BC0A0 4B E8 AF 61 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +/* 801BF144 001BC0A4 48 00 00 14 */ b lbl_801BF158 +lbl_801BF148: +/* 801BF148 001BC0A8 88 1E 03 D0 */ lbz r0, 0x3d0(r30) +/* 801BF14C 001BC0AC 38 60 00 01 */ li r3, 1 +/* 801BF150 001BC0B0 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801BF154 001BC0B4 98 1E 03 D0 */ stb r0, 0x3d0(r30) +lbl_801BF158: +/* 801BF158 001BC0B8 88 1E 03 D0 */ lbz r0, 0x3d0(r30) +/* 801BF15C 001BC0BC 38 60 00 01 */ li r3, 1 +/* 801BF160 001BC0C0 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801BF164 001BC0C4 98 1E 03 D0 */ stb r0, 0x3d0(r30) +lbl_801BF168: +/* 801BF168 001BC0C8 A0 7E 02 C0 */ lhz r3, 0x2c0(r30) +/* 801BF16C 001BC0CC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801BF170 001BC0D0 7C 03 00 40 */ cmplw r3, r0 +/* 801BF174 001BC0D4 41 82 00 24 */ beq lbl_801BF198 +/* 801BF178 001BC0D8 88 1E 03 D0 */ lbz r0, 0x3d0(r30) +/* 801BF17C 001BC0DC 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801BF180 001BC0E0 41 82 00 18 */ beq lbl_801BF198 +/* 801BF184 001BC0E4 FC 20 F0 90 */ fmr f1, f30 +/* 801BF188 001BC0E8 7F C3 F3 78 */ mr r3, r30 +/* 801BF18C 001BC0EC 7F E4 FB 78 */ mr r4, r31 +/* 801BF190 001BC0F0 48 00 08 2D */ bl sub_801bf9bc +/* 801BF194 001BC0F4 48 00 00 C0 */ b lbl_801BF254 +lbl_801BF198: +/* 801BF198 001BC0F8 C0 42 AA 0C */ lfs f2, lbl_805AC72C@sda21(r2) +/* 801BF19C 001BC0FC C0 01 00 C4 */ lfs f0, 0xc4(r1) +/* 801BF1A0 001BC100 EC 9F 10 28 */ fsubs f4, f31, f2 +/* 801BF1A4 001BC104 C0 A1 00 C8 */ lfs f5, 0xc8(r1) +/* 801BF1A8 001BC108 C0 21 00 D0 */ lfs f1, 0xd0(r1) +/* 801BF1AC 001BC10C C0 61 00 CC */ lfs f3, 0xcc(r1) +/* 801BF1B0 001BC110 FC E4 17 EE */ fsel f7, f4, f31, f2 +/* 801BF1B4 001BC114 C0 C1 00 D4 */ lfs f6, 0xd4(r1) +/* 801BF1B8 001BC118 C0 81 00 D8 */ lfs f4, 0xd8(r1) +/* 801BF1BC 001BC11C EC 07 00 32 */ fmuls f0, f7, f0 +/* 801BF1C0 001BC120 EC A7 01 72 */ fmuls f5, f7, f5 +/* 801BF1C4 001BC124 EC 67 00 F2 */ fmuls f3, f7, f3 +/* 801BF1C8 001BC128 EC 01 00 2A */ fadds f0, f1, f0 +/* 801BF1CC 001BC12C EC A6 28 2A */ fadds f5, f6, f5 +/* 801BF1D0 001BC130 EC 24 18 2A */ fadds f1, f4, f3 +/* 801BF1D4 001BC134 D0 1E 03 48 */ stfs f0, 0x348(r30) +/* 801BF1D8 001BC138 D0 BE 03 4C */ stfs f5, 0x34c(r30) +/* 801BF1DC 001BC13C D0 3E 03 50 */ stfs f1, 0x350(r30) +/* 801BF1E0 001BC140 88 1E 03 D0 */ lbz r0, 0x3d0(r30) +/* 801BF1E4 001BC144 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801BF1E8 001BC148 41 82 00 18 */ beq lbl_801BF200 +/* 801BF1EC 001BC14C FC 20 F0 90 */ fmr f1, f30 +/* 801BF1F0 001BC150 7F C3 F3 78 */ mr r3, r30 +/* 801BF1F4 001BC154 7F E4 FB 78 */ mr r4, r31 +/* 801BF1F8 001BC158 48 00 03 A1 */ bl sub_801bf598 +/* 801BF1FC 001BC15C 48 00 00 58 */ b lbl_801BF254 +lbl_801BF200: +/* 801BF200 001BC160 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 801BF204 001BC164 C0 22 AA 34 */ lfs f1, lbl_805AC754@sda21(r2) +/* 801BF208 001BC168 48 15 33 3D */ bl Range__9CRandom16Fff +/* 801BF20C 001BC16C FF E0 08 90 */ fmr f31, f1 +/* 801BF210 001BC170 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 801BF214 001BC174 C0 22 AA 34 */ lfs f1, lbl_805AC754@sda21(r2) +/* 801BF218 001BC178 C0 42 AA 0C */ lfs f2, lbl_805AC72C@sda21(r2) +/* 801BF21C 001BC17C 48 15 33 29 */ bl Range__9CRandom16Fff +/* 801BF220 001BC180 C0 5E 03 48 */ lfs f2, 0x348(r30) +/* 801BF224 001BC184 7F C3 F3 78 */ mr r3, r30 +/* 801BF228 001BC188 C0 02 AA 04 */ lfs f0, lbl_805AC724@sda21(r2) +/* 801BF22C 001BC18C 38 9E 03 48 */ addi r4, r30, 0x348 +/* 801BF230 001BC190 EC 42 F8 2A */ fadds f2, f2, f31 +/* 801BF234 001BC194 D0 5E 03 48 */ stfs f2, 0x348(r30) +/* 801BF238 001BC198 C0 5E 03 4C */ lfs f2, 0x34c(r30) +/* 801BF23C 001BC19C EC 02 00 2A */ fadds f0, f2, f0 +/* 801BF240 001BC1A0 D0 1E 03 4C */ stfs f0, 0x34c(r30) +/* 801BF244 001BC1A4 C0 1E 03 50 */ lfs f0, 0x350(r30) +/* 801BF248 001BC1A8 EC 00 08 2A */ fadds f0, f0, f1 +/* 801BF24C 001BC1AC D0 1E 03 50 */ stfs f0, 0x350(r30) +/* 801BF250 001BC1B0 4B E9 3C 3D */ bl SetTranslation__6CActorFRC9CVector3f +lbl_801BF254: +/* 801BF254 001BC1B4 FC 20 F0 90 */ fmr f1, f30 +/* 801BF258 001BC1B8 7F C3 F3 78 */ mr r3, r30 +/* 801BF25C 001BC1BC 7F E4 FB 78 */ mr r4, r31 +/* 801BF260 001BC1C0 48 00 09 D5 */ bl sub_801bfc34 +/* 801BF264 001BC1C4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801BF268 001BC1C8 41 82 00 10 */ beq lbl_801BF278 +/* 801BF26C 001BC1CC 7F C3 F3 78 */ mr r3, r30 +/* 801BF270 001BC1D0 38 80 00 01 */ li r4, 1 +/* 801BF274 001BC1D4 4B FF FA A5 */ bl ResetBeam__11CWaveBusterFb +lbl_801BF278: +/* 801BF278 001BC1D8 A0 7E 02 C0 */ lhz r3, 0x2c0(r30) +/* 801BF27C 001BC1DC 38 80 00 00 */ li r4, 0 +/* 801BF280 001BC1E0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801BF284 001BC1E4 7C 03 00 40 */ cmplw r3, r0 +/* 801BF288 001BC1E8 41 82 00 14 */ beq lbl_801BF29C +/* 801BF28C 001BC1EC 88 1E 03 D0 */ lbz r0, 0x3d0(r30) +/* 801BF290 001BC1F0 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801BF294 001BC1F4 41 82 00 08 */ beq lbl_801BF29C +/* 801BF298 001BC1F8 38 80 00 01 */ li r4, 1 +lbl_801BF29C: +/* 801BF29C 001BC1FC 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 801BF2A0 001BC200 41 82 00 44 */ beq lbl_801BF2E4 +/* 801BF2A4 001BC204 C0 1E 03 C4 */ lfs f0, 0x3c4(r30) +/* 801BF2A8 001BC208 38 61 01 44 */ addi r3, r1, 0x144 +/* 801BF2AC 001BC20C 38 81 00 30 */ addi r4, r1, 0x30 +/* 801BF2B0 001BC210 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801BF2B4 001BC214 48 15 45 F5 */ bl RotateY__12CTransform4fFRC9CRelAngle +/* 801BF2B8 001BC218 38 61 01 14 */ addi r3, r1, 0x114 +/* 801BF2BC 001BC21C 38 9E 00 34 */ addi r4, r30, 0x34 +/* 801BF2C0 001BC220 38 A1 01 44 */ addi r5, r1, 0x144 +/* 801BF2C4 001BC224 48 15 36 8D */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 801BF2C8 001BC228 3C 80 80 47 */ lis r4, lbl_8046C908@ha +/* 801BF2CC 001BC22C 38 61 00 94 */ addi r3, r1, 0x94 +/* 801BF2D0 001BC230 38 A4 C9 08 */ addi r5, r4, lbl_8046C908@l +/* 801BF2D4 001BC234 38 81 01 14 */ addi r4, r1, 0x114 +/* 801BF2D8 001BC238 48 15 38 11 */ bl __ml__12CTransform4fCFRC9CVector3f +/* 801BF2DC 001BC23C 38 61 00 94 */ addi r3, r1, 0x94 +/* 801BF2E0 001BC240 48 00 00 8C */ b lbl_801BF36C +lbl_801BF2E4: +/* 801BF2E4 001BC244 C0 5E 00 58 */ lfs f2, 0x58(r30) +/* 801BF2E8 001BC248 38 61 00 7C */ addi r3, r1, 0x7c +/* 801BF2EC 001BC24C C0 3E 00 48 */ lfs f1, 0x48(r30) +/* 801BF2F0 001BC250 38 81 00 88 */ addi r4, r1, 0x88 +/* 801BF2F4 001BC254 C0 1E 00 38 */ lfs f0, 0x38(r30) +/* 801BF2F8 001BC258 D0 01 00 88 */ stfs f0, 0x88(r1) +/* 801BF2FC 001BC25C D0 21 00 8C */ stfs f1, 0x8c(r1) +/* 801BF300 001BC260 D0 41 00 90 */ stfs f2, 0x90(r1) +/* 801BF304 001BC264 48 15 55 4D */ bl AsNormalized__9CVector3fCFv +/* 801BF308 001BC268 3C 60 80 47 */ lis r3, lbl_8046C908@ha +/* 801BF30C 001BC26C C0 FE 00 60 */ lfs f7, 0x60(r30) +/* 801BF310 001BC270 38 63 C9 08 */ addi r3, r3, lbl_8046C908@l +/* 801BF314 001BC274 C0 DE 00 50 */ lfs f6, 0x50(r30) +/* 801BF318 001BC278 C0 43 00 08 */ lfs f2, 8(r3) +/* 801BF31C 001BC27C 38 61 00 58 */ addi r3, r1, 0x58 +/* 801BF320 001BC280 C0 01 00 84 */ lfs f0, 0x84(r1) +/* 801BF324 001BC284 C0 21 00 7C */ lfs f1, 0x7c(r1) +/* 801BF328 001BC288 EC 82 00 32 */ fmuls f4, f2, f0 +/* 801BF32C 001BC28C C0 01 00 80 */ lfs f0, 0x80(r1) +/* 801BF330 001BC290 EC 62 00 72 */ fmuls f3, f2, f1 +/* 801BF334 001BC294 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 801BF338 001BC298 EC 42 00 32 */ fmuls f2, f2, f0 +/* 801BF33C 001BC29C D0 C1 00 68 */ stfs f6, 0x68(r1) +/* 801BF340 001BC2A0 EC A7 20 2A */ fadds f5, f7, f4 +/* 801BF344 001BC2A4 D0 61 00 70 */ stfs f3, 0x70(r1) +/* 801BF348 001BC2A8 EC C6 10 2A */ fadds f6, f6, f2 +/* 801BF34C 001BC2AC EC 01 18 2A */ fadds f0, f1, f3 +/* 801BF350 001BC2B0 D0 41 00 74 */ stfs f2, 0x74(r1) +/* 801BF354 001BC2B4 D0 81 00 78 */ stfs f4, 0x78(r1) +/* 801BF358 001BC2B8 D0 21 00 64 */ stfs f1, 0x64(r1) +/* 801BF35C 001BC2BC D0 E1 00 6C */ stfs f7, 0x6c(r1) +/* 801BF360 001BC2C0 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 801BF364 001BC2C4 D0 C1 00 5C */ stfs f6, 0x5c(r1) +/* 801BF368 001BC2C8 D0 A1 00 60 */ stfs f5, 0x60(r1) +lbl_801BF36C: +/* 801BF36C 001BC2CC C0 3E 03 A0 */ lfs f1, 0x3a0(r30) +/* 801BF370 001BC2D0 C0 02 A9 F8 */ lfs f0, lbl_805AC718@sda21(r2) +/* 801BF374 001BC2D4 C0 A3 00 00 */ lfs f5, 0(r3) +/* 801BF378 001BC2D8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801BF37C 001BC2DC C1 03 00 04 */ lfs f8, 4(r3) +/* 801BF380 001BC2E0 C1 23 00 08 */ lfs f9, 8(r3) +/* 801BF384 001BC2E4 40 80 00 64 */ bge lbl_801BF3E8 +/* 801BF388 001BC2E8 A0 7E 02 C0 */ lhz r3, 0x2c0(r30) +/* 801BF38C 001BC2EC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801BF390 001BC2F0 7C 03 00 40 */ cmplw r3, r0 +/* 801BF394 001BC2F4 41 82 00 54 */ beq lbl_801BF3E8 +/* 801BF398 001BC2F8 EC 61 00 24 */ fdivs f3, f1, f0 +/* 801BF39C 001BC2FC C0 02 AA 0C */ lfs f0, lbl_805AC72C@sda21(r2) +/* 801BF3A0 001BC300 C0 5E 03 30 */ lfs f2, 0x330(r30) +/* 801BF3A4 001BC304 C0 DE 03 34 */ lfs f6, 0x334(r30) +/* 801BF3A8 001BC308 C0 9E 03 38 */ lfs f4, 0x338(r30) +/* 801BF3AC 001BC30C C0 22 AA 38 */ lfs f1, lbl_805AC758@sda21(r2) +/* 801BF3B0 001BC310 EC E0 18 28 */ fsubs f7, f0, f3 +/* 801BF3B4 001BC314 EC 05 00 F2 */ fmuls f0, f5, f3 +/* 801BF3B8 001BC318 EC A8 00 F2 */ fmuls f5, f8, f3 +/* 801BF3BC 001BC31C EC 69 00 F2 */ fmuls f3, f9, f3 +/* 801BF3C0 001BC320 EC 02 01 FA */ fmadds f0, f2, f7, f0 +/* 801BF3C4 001BC324 EC A6 29 FA */ fmadds f5, f6, f7, f5 +/* 801BF3C8 001BC328 EC 44 19 FA */ fmadds f2, f4, f7, f3 +/* 801BF3CC 001BC32C D0 1E 03 24 */ stfs f0, 0x324(r30) +/* 801BF3D0 001BC330 D0 BE 03 28 */ stfs f5, 0x328(r30) +/* 801BF3D4 001BC334 D0 5E 03 2C */ stfs f2, 0x32c(r30) +/* 801BF3D8 001BC338 C0 1E 03 A0 */ lfs f0, 0x3a0(r30) +/* 801BF3DC 001BC33C EC 01 07 BA */ fmadds f0, f1, f30, f0 +/* 801BF3E0 001BC340 D0 1E 03 A0 */ stfs f0, 0x3a0(r30) +/* 801BF3E4 001BC344 48 00 00 30 */ b lbl_801BF414 +lbl_801BF3E8: +/* 801BF3E8 001BC348 C0 3E 03 24 */ lfs f1, 0x324(r30) +/* 801BF3EC 001BC34C C0 02 A9 F8 */ lfs f0, lbl_805AC718@sda21(r2) +/* 801BF3F0 001BC350 D0 3E 03 30 */ stfs f1, 0x330(r30) +/* 801BF3F4 001BC354 C0 3E 03 28 */ lfs f1, 0x328(r30) +/* 801BF3F8 001BC358 D0 3E 03 34 */ stfs f1, 0x334(r30) +/* 801BF3FC 001BC35C C0 3E 03 2C */ lfs f1, 0x32c(r30) +/* 801BF400 001BC360 D0 3E 03 38 */ stfs f1, 0x338(r30) +/* 801BF404 001BC364 D0 BE 03 24 */ stfs f5, 0x324(r30) +/* 801BF408 001BC368 D1 1E 03 28 */ stfs f8, 0x328(r30) +/* 801BF40C 001BC36C D1 3E 03 2C */ stfs f9, 0x32c(r30) +/* 801BF410 001BC370 D0 1E 03 A0 */ stfs f0, 0x3a0(r30) +lbl_801BF414: +/* 801BF414 001BC374 A0 7E 02 C8 */ lhz r3, 0x2c8(r30) +/* 801BF418 001BC378 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801BF41C 001BC37C 7C 03 00 40 */ cmplw r3, r0 +/* 801BF420 001BC380 41 82 00 EC */ beq lbl_801BF50C +/* 801BF424 001BC384 80 7E 03 90 */ lwz r3, 0x390(r30) +/* 801BF428 001BC388 FC 20 F0 90 */ fmr f1, f30 +/* 801BF42C 001BC38C 81 83 00 00 */ lwz r12, 0(r3) +/* 801BF430 001BC390 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801BF434 001BC394 7D 89 03 A6 */ mtctr r12 +/* 801BF438 001BC398 4E 80 04 21 */ bctrl +/* 801BF43C 001BC39C A0 1E 02 C8 */ lhz r0, 0x2c8(r30) +/* 801BF440 001BC3A0 7F E3 FB 78 */ mr r3, r31 +/* 801BF444 001BC3A4 38 81 00 0C */ addi r4, r1, 0xc +/* 801BF448 001BC3A8 B0 01 00 08 */ sth r0, 8(r1) +/* 801BF44C 001BC3AC B0 01 00 0C */ sth r0, 0xc(r1) +/* 801BF450 001BC3B0 4B E8 D1 25 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801BF454 001BC3B4 7C 64 1B 78 */ mr r4, r3 +/* 801BF458 001BC3B8 38 61 00 3C */ addi r3, r1, 0x3c +/* 801BF45C 001BC3BC 4B EE E6 29 */ bl "__ct__24TCastToPtr<10CGameLight>FP7CEntity" +/* 801BF460 001BC3C0 83 E3 00 04 */ lwz r31, 4(r3) +/* 801BF464 001BC3C4 28 1F 00 00 */ cmplwi r31, 0 +/* 801BF468 001BC3C8 41 82 00 A4 */ beq lbl_801BF50C +/* 801BF46C 001BC3CC 38 7F 00 34 */ addi r3, r31, 0x34 +/* 801BF470 001BC3D0 38 9E 00 34 */ addi r4, r30, 0x34 +/* 801BF474 001BC3D4 48 15 36 CD */ bl __as__12CTransform4fFRC12CTransform4f +/* 801BF478 001BC3D8 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 801BF47C 001BC3DC 38 A0 00 01 */ li r5, 1 +/* 801BF480 001BC3E0 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 801BF484 001BC3E4 7F E3 FB 78 */ mr r3, r31 +/* 801BF488 001BC3E8 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 801BF48C 001BC3EC 38 81 00 4C */ addi r4, r1, 0x4c +/* 801BF490 001BC3F0 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 801BF494 001BC3F4 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 801BF498 001BC3F8 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 801BF49C 001BC3FC 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 801BF4A0 001BC400 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d +/* 801BF4A4 001BC404 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 801BF4A8 001BC408 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 801BF4AC 001BC40C C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 801BF4B0 001BC410 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801BF4B4 001BC414 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 801BF4B8 001BC418 D0 21 00 50 */ stfs f1, 0x50(r1) +/* 801BF4BC 001BC41C D0 41 00 54 */ stfs f2, 0x54(r1) +/* 801BF4C0 001BC420 4B E9 39 CD */ bl SetTranslation__6CActorFRC9CVector3f +/* 801BF4C4 001BC424 80 7E 03 90 */ lwz r3, 0x390(r30) +/* 801BF4C8 001BC428 28 03 00 00 */ cmplwi r3, 0 +/* 801BF4CC 001BC42C 41 82 00 40 */ beq lbl_801BF50C +/* 801BF4D0 001BC430 81 83 00 00 */ lwz r12, 0(r3) +/* 801BF4D4 001BC434 81 8C 00 64 */ lwz r12, 0x64(r12) +/* 801BF4D8 001BC438 7D 89 03 A6 */ mtctr r12 +/* 801BF4DC 001BC43C 4E 80 04 21 */ bctrl +/* 801BF4E0 001BC440 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801BF4E4 001BC444 41 82 00 28 */ beq lbl_801BF50C +/* 801BF4E8 001BC448 80 9E 03 90 */ lwz r4, 0x390(r30) +/* 801BF4EC 001BC44C 38 61 01 A8 */ addi r3, r1, 0x1a8 +/* 801BF4F0 001BC450 81 84 00 00 */ lwz r12, 0(r4) +/* 801BF4F4 001BC454 81 8C 00 68 */ lwz r12, 0x68(r12) +/* 801BF4F8 001BC458 7D 89 03 A6 */ mtctr r12 +/* 801BF4FC 001BC45C 4E 80 04 21 */ bctrl +/* 801BF500 001BC460 7F E3 FB 78 */ mr r3, r31 +/* 801BF504 001BC464 38 81 01 A8 */ addi r4, r1, 0x1a8 +/* 801BF508 001BC468 4B EF 62 3D */ bl SetLight__10CGameLightFRC6CLight +lbl_801BF50C: +/* 801BF50C 001BC46C C0 42 AA 3C */ lfs f2, lbl_805AC75C@sda21(r2) +/* 801BF510 001BC470 C0 3E 03 C8 */ lfs f1, 0x3c8(r30) +/* 801BF514 001BC474 C0 02 AA 0C */ lfs f0, lbl_805AC72C@sda21(r2) +/* 801BF518 001BC478 EC 22 0F BA */ fmadds f1, f2, f30, f1 +/* 801BF51C 001BC47C D0 3E 03 C8 */ stfs f1, 0x3c8(r30) +/* 801BF520 001BC480 C0 3E 03 C8 */ lfs f1, 0x3c8(r30) +/* 801BF524 001BC484 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801BF528 001BC488 40 81 00 2C */ ble lbl_801BF554 +/* 801BF52C 001BC48C 80 7E 03 CC */ lwz r3, 0x3cc(r30) +/* 801BF530 001BC490 38 03 00 01 */ addi r0, r3, 1 +/* 801BF534 001BC494 90 1E 03 CC */ stw r0, 0x3cc(r30) +/* 801BF538 001BC498 80 1E 03 CC */ lwz r0, 0x3cc(r30) +/* 801BF53C 001BC49C 28 00 00 02 */ cmplwi r0, 2 +/* 801BF540 001BC4A0 40 81 00 0C */ ble lbl_801BF54C +/* 801BF544 001BC4A4 38 00 00 00 */ li r0, 0 +/* 801BF548 001BC4A8 90 1E 03 CC */ stw r0, 0x3cc(r30) +lbl_801BF54C: +/* 801BF54C 001BC4AC C0 02 AA 04 */ lfs f0, lbl_805AC724@sda21(r2) +/* 801BF550 001BC4B0 D0 1E 03 C8 */ stfs f0, 0x3c8(r30) +lbl_801BF554: +/* 801BF554 001BC4B4 80 7E 03 8C */ lwz r3, 0x38c(r30) +/* 801BF558 001BC4B8 FC 20 F0 90 */ fmr f1, f30 +/* 801BF55C 001BC4BC 81 83 00 00 */ lwz r12, 0(r3) +/* 801BF560 001BC4C0 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801BF564 001BC4C4 7D 89 03 A6 */ mtctr r12 +/* 801BF568 001BC4C8 4E 80 04 21 */ bctrl +lbl_801BF56C: +/* 801BF56C 001BC4CC E3 E1 02 28 */ psq_l f31, 552(r1), 0, qr0 +/* 801BF570 001BC4D0 CB E1 02 20 */ lfd f31, 0x220(r1) +/* 801BF574 001BC4D4 E3 C1 02 18 */ psq_l f30, 536(r1), 0, qr0 +/* 801BF578 001BC4D8 CB C1 02 10 */ lfd f30, 0x210(r1) +/* 801BF57C 001BC4DC 83 E1 02 0C */ lwz r31, 0x20c(r1) +/* 801BF580 001BC4E0 83 C1 02 08 */ lwz r30, 0x208(r1) +/* 801BF584 001BC4E4 80 01 02 34 */ lwz r0, 0x234(r1) +/* 801BF588 001BC4E8 83 A1 02 04 */ lwz r29, 0x204(r1) +/* 801BF58C 001BC4EC 7C 08 03 A6 */ mtlr r0 +/* 801BF590 001BC4F0 38 21 02 30 */ addi r1, r1, 0x230 +/* 801BF594 001BC4F4 4E 80 00 20 */ blr + +.global sub_801bf598 +sub_801bf598: +/* 801BF598 001BC4F8 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 801BF59C 001BC4FC 7C 08 02 A6 */ mflr r0 +/* 801BF5A0 001BC500 90 01 00 74 */ stw r0, 0x74(r1) +/* 801BF5A4 001BC504 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801BF5A8 001BC508 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 801BF5AC 001BC50C 7C 7F 1B 78 */ mr r31, r3 +/* 801BF5B0 001BC510 38 61 00 30 */ addi r3, r1, 0x30 +/* 801BF5B4 001BC514 93 C1 00 68 */ stw r30, 0x68(r1) +/* 801BF5B8 001BC518 7C 9E 23 78 */ mr r30, r4 +/* 801BF5BC 001BC51C 7F E4 FB 78 */ mr r4, r31 +/* 801BF5C0 001BC520 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801BF5C4 001BC524 7F C6 F3 78 */ mr r6, r30 +/* 801BF5C8 001BC528 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801BF5CC 001BC52C 48 00 01 21 */ bl sub_801bf6ec +/* 801BF5D0 001BC530 A0 BF 02 C0 */ lhz r5, 0x2c0(r31) +/* 801BF5D4 001BC534 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801BF5D8 001BC538 7C 05 00 40 */ cmplw r5, r0 +/* 801BF5DC 001BC53C 41 82 00 A4 */ beq lbl_801BF680 +/* 801BF5E0 001BC540 B0 A1 00 0C */ sth r5, 0xc(r1) +/* 801BF5E4 001BC544 7F C3 F3 78 */ mr r3, r30 +/* 801BF5E8 001BC548 38 81 00 10 */ addi r4, r1, 0x10 +/* 801BF5EC 001BC54C B0 A1 00 10 */ sth r5, 0x10(r1) +/* 801BF5F0 001BC550 4B E8 CF B5 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801BF5F4 001BC554 7C 64 1B 78 */ mr r4, r3 +/* 801BF5F8 001BC558 38 61 00 18 */ addi r3, r1, 0x18 +/* 801BF5FC 001BC55C 4B EF 06 95 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 801BF600 001BC560 80 A3 00 04 */ lwz r5, 4(r3) +/* 801BF604 001BC564 28 05 00 00 */ cmplwi r5, 0 +/* 801BF608 001BC568 41 82 00 CC */ beq lbl_801BF6D4 +/* 801BF60C 001BC56C 3C 80 80 5A */ lis r4, lbl_805A6724@ha +/* 801BF610 001BC570 7F E3 FB 78 */ mr r3, r31 +/* 801BF614 001BC574 38 C4 67 24 */ addi r6, r4, lbl_805A6724@l +/* 801BF618 001BC578 C0 46 00 00 */ lfs f2, 0(r6) +/* 801BF61C 001BC57C 38 81 00 20 */ addi r4, r1, 0x20 +/* 801BF620 001BC580 C0 26 00 04 */ lfs f1, 4(r6) +/* 801BF624 001BC584 C0 06 00 08 */ lfs f0, 8(r6) +/* 801BF628 001BC588 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 801BF62C 001BC58C D0 21 00 24 */ stfs f1, 0x24(r1) +/* 801BF630 001BC590 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 801BF634 001BC594 48 00 09 55 */ bl sub_801bff88 +/* 801BF638 001BC598 C0 02 AA 40 */ lfs f0, lbl_805AC760@sda21(r2) +/* 801BF63C 001BC59C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801BF640 001BC5A0 40 81 00 24 */ ble lbl_801BF664 +/* 801BF644 001BC5A4 A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 801BF648 001BC5A8 38 60 00 00 */ li r3, 0 +/* 801BF64C 001BC5AC B0 9F 02 C0 */ sth r4, 0x2c0(r31) +/* 801BF650 001BC5B0 88 1F 03 D0 */ lbz r0, 0x3d0(r31) +/* 801BF654 001BC5B4 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 801BF658 001BC5B8 B0 81 00 08 */ sth r4, 8(r1) +/* 801BF65C 001BC5BC 98 1F 03 D0 */ stb r0, 0x3d0(r31) +/* 801BF660 001BC5C0 48 00 00 74 */ b lbl_801BF6D4 +lbl_801BF664: +/* 801BF664 001BC5C4 88 7F 03 D0 */ lbz r3, 0x3d0(r31) +/* 801BF668 001BC5C8 54 60 DF FF */ rlwinm. r0, r3, 0x1b, 0x1f, 0x1f +/* 801BF66C 001BC5CC 41 82 00 68 */ beq lbl_801BF6D4 +/* 801BF670 001BC5D0 38 00 00 00 */ li r0, 0 +/* 801BF674 001BC5D4 50 03 36 72 */ rlwimi r3, r0, 6, 0x19, 0x19 +/* 801BF678 001BC5D8 98 7F 03 D0 */ stb r3, 0x3d0(r31) +/* 801BF67C 001BC5DC 48 00 00 58 */ b lbl_801BF6D4 +lbl_801BF680: +/* 801BF680 001BC5E0 88 7F 03 D0 */ lbz r3, 0x3d0(r31) +/* 801BF684 001BC5E4 54 60 DF FF */ rlwinm. r0, r3, 0x1b, 0x1f, 0x1f +/* 801BF688 001BC5E8 40 82 00 4C */ bne lbl_801BF6D4 +/* 801BF68C 001BC5EC C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 801BF690 001BC5F0 C0 1F 03 04 */ lfs f0, 0x304(r31) +/* 801BF694 001BC5F4 C0 7F 00 40 */ lfs f3, 0x40(r31) +/* 801BF698 001BC5F8 EC 21 00 28 */ fsubs f1, f1, f0 +/* 801BF69C 001BC5FC C0 1F 02 F4 */ lfs f0, 0x2f4(r31) +/* 801BF6A0 001BC600 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 801BF6A4 001BC604 EC 63 00 28 */ fsubs f3, f3, f0 +/* 801BF6A8 001BC608 C0 1F 03 14 */ lfs f0, 0x314(r31) +/* 801BF6AC 001BC60C EC 21 00 72 */ fmuls f1, f1, f1 +/* 801BF6B0 001BC610 EC 42 00 28 */ fsubs f2, f2, f0 +/* 801BF6B4 001BC614 C0 02 AA 44 */ lfs f0, lbl_805AC764@sda21(r2) +/* 801BF6B8 001BC618 EC 23 08 FA */ fmadds f1, f3, f3, f1 +/* 801BF6BC 001BC61C EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 801BF6C0 001BC620 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801BF6C4 001BC624 40 81 00 10 */ ble lbl_801BF6D4 +/* 801BF6C8 001BC628 38 00 00 00 */ li r0, 0 +/* 801BF6CC 001BC62C 50 03 36 72 */ rlwimi r3, r0, 6, 0x19, 0x19 +/* 801BF6D0 001BC630 98 7F 03 D0 */ stb r3, 0x3d0(r31) +lbl_801BF6D4: +/* 801BF6D4 001BC634 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801BF6D8 001BC638 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 801BF6DC 001BC63C 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 801BF6E0 001BC640 7C 08 03 A6 */ mtlr r0 +/* 801BF6E4 001BC644 38 21 00 70 */ addi r1, r1, 0x70 +/* 801BF6E8 001BC648 4E 80 00 20 */ blr + +.global sub_801bf6ec +sub_801bf6ec: +/* 801BF6EC 001BC64C 94 21 F7 10 */ stwu r1, -0x8f0(r1) +/* 801BF6F0 001BC650 7C 08 02 A6 */ mflr r0 +/* 801BF6F4 001BC654 90 01 08 F4 */ stw r0, 0x8f4(r1) +/* 801BF6F8 001BC658 DB E1 08 E0 */ stfd f31, 0x8e0(r1) +/* 801BF6FC 001BC65C F3 E1 08 E8 */ psq_st f31, -1816(r1), 0, qr0 +/* 801BF700 001BC660 BF 41 08 C8 */ stmw r26, 0x8c8(r1) +/* 801BF704 001BC664 FF E0 08 90 */ fmr f31, f1 +/* 801BF708 001BC668 C0 64 00 50 */ lfs f3, 0x50(r4) +/* 801BF70C 001BC66C C0 24 02 9C */ lfs f1, 0x29c(r4) +/* 801BF710 001BC670 7C BA 2B 78 */ mr r26, r5 +/* 801BF714 001BC674 C0 44 00 60 */ lfs f2, 0x60(r4) +/* 801BF718 001BC678 7C 7E 1B 78 */ mr r30, r3 +/* 801BF71C 001BC67C C0 04 02 A0 */ lfs f0, 0x2a0(r4) +/* 801BF720 001BC680 EC 63 08 28 */ fsubs f3, f3, f1 +/* 801BF724 001BC684 C0 24 00 40 */ lfs f1, 0x40(r4) +/* 801BF728 001BC688 38 00 00 00 */ li r0, 0 +/* 801BF72C 001BC68C EC 42 00 28 */ fsubs f2, f2, f0 +/* 801BF730 001BC690 C0 04 02 98 */ lfs f0, 0x298(r4) +/* 801BF734 001BC694 80 AD 91 04 */ lwz r5, lbl_805A7CC4@sda21(r13) +/* 801BF738 001BC698 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801BF73C 001BC69C 7C 9F 23 78 */ mr r31, r4 +/* 801BF740 001BC6A0 D0 61 00 20 */ stfs f3, 0x20(r1) +/* 801BF744 001BC6A4 7C DB 33 78 */ mr r27, r6 +/* 801BF748 001BC6A8 38 60 00 00 */ li r3, 0 +/* 801BF74C 001BC6AC D0 41 00 24 */ stfs f2, 0x24(r1) +/* 801BF750 001BC6B0 38 80 00 01 */ li r4, 1 +/* 801BF754 001BC6B4 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801BF758 001BC6B8 90 01 00 B8 */ stw r0, 0xb8(r1) +/* 801BF75C 001BC6BC 48 1C A7 99 */ bl __shl2i +/* 801BF760 001BC6C0 80 AD 91 08 */ lwz r5, lbl_805A7CC8@sda21(r13) +/* 801BF764 001BC6C4 7C 9C 23 78 */ mr r28, r4 +/* 801BF768 001BC6C8 7C 7D 1B 78 */ mr r29, r3 +/* 801BF76C 001BC6CC 38 60 00 00 */ li r3, 0 +/* 801BF770 001BC6D0 38 80 00 01 */ li r4, 1 +/* 801BF774 001BC6D4 48 1C A7 81 */ bl __shl2i +/* 801BF778 001BC6D8 80 AD 91 00 */ lwz r5, lbl_805A7CC0@sda21(r13) +/* 801BF77C 001BC6DC 7F 9C 23 78 */ or r28, r28, r4 +/* 801BF780 001BC6E0 7F BD 1B 78 */ or r29, r29, r3 +/* 801BF784 001BC6E4 38 60 00 00 */ li r3, 0 +/* 801BF788 001BC6E8 38 80 00 01 */ li r4, 1 +/* 801BF78C 001BC6EC 48 1C A7 69 */ bl __shl2i +/* 801BF790 001BC6F0 38 00 00 03 */ li r0, 3 +/* 801BF794 001BC6F4 90 81 00 2C */ stw r4, 0x2c(r1) +/* 801BF798 001BC6F8 7F E4 FB 78 */ mr r4, r31 +/* 801BF79C 001BC6FC 90 61 00 28 */ stw r3, 0x28(r1) +/* 801BF7A0 001BC700 38 61 00 40 */ addi r3, r1, 0x40 +/* 801BF7A4 001BC704 93 81 00 34 */ stw r28, 0x34(r1) +/* 801BF7A8 001BC708 93 A1 00 30 */ stw r29, 0x30(r1) +/* 801BF7AC 001BC70C 90 01 00 38 */ stw r0, 0x38(r1) +/* 801BF7B0 001BC710 4B E7 AB 49 */ bl GetProjectileBounds__15CGameProjectileCFv +/* 801BF7B4 001BC714 7F 63 DB 78 */ mr r3, r27 +/* 801BF7B8 001BC718 7F E7 FB 78 */ mr r7, r31 +/* 801BF7BC 001BC71C 38 81 00 B8 */ addi r4, r1, 0xb8 +/* 801BF7C0 001BC720 38 A1 00 40 */ addi r5, r1, 0x40 +/* 801BF7C4 001BC724 38 C1 00 28 */ addi r6, r1, 0x28 +/* 801BF7C8 001BC728 4B E8 CF 59 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" +/* 801BF7CC 001BC72C C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 801BF7D0 001BC730 38 61 00 1C */ addi r3, r1, 0x1c +/* 801BF7D4 001BC734 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 801BF7D8 001BC738 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801BF7DC 001BC73C D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801BF7E0 001BC740 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 801BF7E4 001BC744 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 801BF7E8 001BC748 48 15 50 D1 */ bl Magnitude__9CVector3fCFv +/* 801BF7EC 001BC74C 7F E4 FB 78 */ mr r4, r31 +/* 801BF7F0 001BC750 7F 45 D3 78 */ mr r5, r26 +/* 801BF7F4 001BC754 7F 69 DB 78 */ mr r9, r27 +/* 801BF7F8 001BC758 38 61 00 58 */ addi r3, r1, 0x58 +/* 801BF7FC 001BC75C 38 DF 02 98 */ addi r6, r31, 0x298 +/* 801BF800 001BC760 38 E1 00 10 */ addi r7, r1, 0x10 +/* 801BF804 001BC764 39 01 00 B8 */ addi r8, r1, 0xb8 +/* 801BF808 001BC768 4B E7 8E B9 */ bl "RayCollisionCheckWithWorld__15CGameProjectileFR9TUniqueIdRC9CVector3fRC9CVector3ffRQ24rstl32reserved_vector<9TUniqueId,1024>R13CStateManager" +/* 801BF80C 001BC76C 88 81 00 78 */ lbz r4, 0x78(r1) +/* 801BF810 001BC770 38 A1 00 8C */ addi r5, r1, 0x8c +/* 801BF814 001BC774 C0 E1 00 58 */ lfs f7, 0x58(r1) +/* 801BF818 001BC778 C0 C1 00 5C */ lfs f6, 0x5c(r1) +/* 801BF81C 001BC77C 28 04 00 00 */ cmplwi r4, 0 +/* 801BF820 001BC780 C0 A1 00 60 */ lfs f5, 0x60(r1) +/* 801BF824 001BC784 C0 81 00 64 */ lfs f4, 0x64(r1) +/* 801BF828 001BC788 C0 61 00 68 */ lfs f3, 0x68(r1) +/* 801BF82C 001BC78C C0 41 00 6C */ lfs f2, 0x6c(r1) +/* 801BF830 001BC790 C0 21 00 70 */ lfs f1, 0x70(r1) +/* 801BF834 001BC794 C0 01 00 74 */ lfs f0, 0x74(r1) +/* 801BF838 001BC798 80 01 00 80 */ lwz r0, 0x80(r1) +/* 801BF83C 001BC79C 80 61 00 84 */ lwz r3, 0x84(r1) +/* 801BF840 001BC7A0 D0 E1 00 88 */ stfs f7, 0x88(r1) +/* 801BF844 001BC7A4 D0 C1 00 8C */ stfs f6, 0x8c(r1) +/* 801BF848 001BC7A8 D0 A1 00 90 */ stfs f5, 0x90(r1) +/* 801BF84C 001BC7AC D0 81 00 94 */ stfs f4, 0x94(r1) +/* 801BF850 001BC7B0 D0 61 00 98 */ stfs f3, 0x98(r1) +/* 801BF854 001BC7B4 D0 41 00 9C */ stfs f2, 0x9c(r1) +/* 801BF858 001BC7B8 D0 21 00 A0 */ stfs f1, 0xa0(r1) +/* 801BF85C 001BC7BC D0 01 00 A4 */ stfs f0, 0xa4(r1) +/* 801BF860 001BC7C0 98 81 00 A8 */ stb r4, 0xa8(r1) +/* 801BF864 001BC7C4 90 61 00 B4 */ stw r3, 0xb4(r1) +/* 801BF868 001BC7C8 90 01 00 B0 */ stw r0, 0xb0(r1) +/* 801BF86C 001BC7CC 41 82 00 78 */ beq lbl_801BF8E4 +/* 801BF870 001BC7D0 88 1F 03 D0 */ lbz r0, 0x3d0(r31) +/* 801BF874 001BC7D4 38 60 00 00 */ li r3, 0 +/* 801BF878 001BC7D8 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801BF87C 001BC7DC 98 1F 03 D0 */ stb r0, 0x3d0(r31) +/* 801BF880 001BC7E0 A0 7A 00 00 */ lhz r3, 0(r26) +/* 801BF884 001BC7E4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801BF888 001BC7E8 7C 03 00 40 */ cmplw r3, r0 +/* 801BF88C 001BC7EC 41 82 00 48 */ beq lbl_801BF8D4 +/* 801BF890 001BC7F0 A0 1F 02 C0 */ lhz r0, 0x2c0(r31) +/* 801BF894 001BC7F4 7C 03 00 40 */ cmplw r3, r0 +/* 801BF898 001BC7F8 40 82 00 3C */ bne lbl_801BF8D4 +/* 801BF89C 001BC7FC 88 1F 03 D0 */ lbz r0, 0x3d0(r31) +/* 801BF8A0 001BC800 38 60 00 01 */ li r3, 1 +/* 801BF8A4 001BC804 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 801BF8A8 001BC808 A9 22 C5 F8 */ lha r9, lbl_805AE318@sda21(r2) +/* 801BF8AC 001BC80C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801BF8B0 001BC810 98 1F 03 D0 */ stb r0, 0x3d0(r31) +/* 801BF8B4 001BC814 38 C3 66 A0 */ addi r6, r3, skZero3f@l +/* 801BF8B8 001BC818 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 801BF8BC 001BC81C 38 61 00 0C */ addi r3, r1, 0xc +/* 801BF8C0 001BC820 38 80 06 FF */ li r4, 0x6ff +/* 801BF8C4 001BC824 38 E0 00 01 */ li r7, 1 +/* 801BF8C8 001BC828 39 00 00 00 */ li r8, 0 +/* 801BF8CC 001BC82C 48 12 A9 E5 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +/* 801BF8D0 001BC830 48 00 00 24 */ b lbl_801BF8F4 +lbl_801BF8D4: +/* 801BF8D4 001BC834 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801BF8D8 001BC838 B0 01 00 08 */ sth r0, 8(r1) +/* 801BF8DC 001BC83C B0 1F 02 C0 */ sth r0, 0x2c0(r31) +/* 801BF8E0 001BC840 48 00 00 14 */ b lbl_801BF8F4 +lbl_801BF8E4: +/* 801BF8E4 001BC844 FC 20 F8 90 */ fmr f1, f31 +/* 801BF8E8 001BC848 7F E3 FB 78 */ mr r3, r31 +/* 801BF8EC 001BC84C 7F 64 DB 78 */ mr r4, r27 +/* 801BF8F0 001BC850 4B E7 86 0D */ bl UpdateProjectileMovement__15CGameProjectileFfR13CStateManager +lbl_801BF8F4: +/* 801BF8F4 001BC854 C0 01 00 88 */ lfs f0, 0x88(r1) +/* 801BF8F8 001BC858 38 80 00 00 */ li r4, 0 +/* 801BF8FC 001BC85C D0 1E 00 00 */ stfs f0, 0(r30) +/* 801BF900 001BC860 C0 01 00 8C */ lfs f0, 0x8c(r1) +/* 801BF904 001BC864 D0 1E 00 04 */ stfs f0, 4(r30) +/* 801BF908 001BC868 C0 01 00 90 */ lfs f0, 0x90(r1) +/* 801BF90C 001BC86C D0 1E 00 08 */ stfs f0, 8(r30) +/* 801BF910 001BC870 C0 01 00 94 */ lfs f0, 0x94(r1) +/* 801BF914 001BC874 D0 1E 00 0C */ stfs f0, 0xc(r30) +/* 801BF918 001BC878 C0 01 00 98 */ lfs f0, 0x98(r1) +/* 801BF91C 001BC87C D0 1E 00 10 */ stfs f0, 0x10(r30) +/* 801BF920 001BC880 C0 01 00 9C */ lfs f0, 0x9c(r1) +/* 801BF924 001BC884 D0 1E 00 14 */ stfs f0, 0x14(r30) +/* 801BF928 001BC888 C0 01 00 A0 */ lfs f0, 0xa0(r1) +/* 801BF92C 001BC88C D0 1E 00 18 */ stfs f0, 0x18(r30) +/* 801BF930 001BC890 C0 01 00 A4 */ lfs f0, 0xa4(r1) +/* 801BF934 001BC894 D0 1E 00 1C */ stfs f0, 0x1c(r30) +/* 801BF938 001BC898 88 01 00 A8 */ lbz r0, 0xa8(r1) +/* 801BF93C 001BC89C 98 1E 00 20 */ stb r0, 0x20(r30) +/* 801BF940 001BC8A0 80 01 00 B0 */ lwz r0, 0xb0(r1) +/* 801BF944 001BC8A4 80 61 00 B4 */ lwz r3, 0xb4(r1) +/* 801BF948 001BC8A8 90 7E 00 2C */ stw r3, 0x2c(r30) +/* 801BF94C 001BC8AC 90 1E 00 28 */ stw r0, 0x28(r30) +/* 801BF950 001BC8B0 80 A1 00 B8 */ lwz r5, 0xb8(r1) +/* 801BF954 001BC8B4 2C 05 00 00 */ cmpwi r5, 0 +/* 801BF958 001BC8B8 40 81 00 40 */ ble lbl_801BF998 +/* 801BF95C 001BC8BC 2C 05 00 08 */ cmpwi r5, 8 +/* 801BF960 001BC8C0 38 65 FF F8 */ addi r3, r5, -8 +/* 801BF964 001BC8C4 40 81 00 20 */ ble lbl_801BF984 +/* 801BF968 001BC8C8 38 03 00 07 */ addi r0, r3, 7 +/* 801BF96C 001BC8CC 54 00 E8 FE */ srwi r0, r0, 3 +/* 801BF970 001BC8D0 7C 09 03 A6 */ mtctr r0 +/* 801BF974 001BC8D4 2C 03 00 00 */ cmpwi r3, 0 +/* 801BF978 001BC8D8 40 81 00 0C */ ble lbl_801BF984 +lbl_801BF97C: +/* 801BF97C 001BC8DC 38 84 00 08 */ addi r4, r4, 8 +/* 801BF980 001BC8E0 42 00 FF FC */ bdnz lbl_801BF97C +lbl_801BF984: +/* 801BF984 001BC8E4 7C 04 28 50 */ subf r0, r4, r5 +/* 801BF988 001BC8E8 7C 09 03 A6 */ mtctr r0 +/* 801BF98C 001BC8EC 7C 04 28 00 */ cmpw r4, r5 +/* 801BF990 001BC8F0 40 80 00 08 */ bge lbl_801BF998 +lbl_801BF994: +/* 801BF994 001BC8F4 42 00 00 00 */ bdnz lbl_801BF994 +lbl_801BF998: +/* 801BF998 001BC8F8 38 00 00 00 */ li r0, 0 +/* 801BF99C 001BC8FC 90 01 00 B8 */ stw r0, 0xb8(r1) +/* 801BF9A0 001BC900 E3 E1 08 E8 */ psq_l f31, -1816(r1), 0, qr0 +/* 801BF9A4 001BC904 CB E1 08 E0 */ lfd f31, 0x8e0(r1) +/* 801BF9A8 001BC908 BB 41 08 C8 */ lmw r26, 0x8c8(r1) +/* 801BF9AC 001BC90C 80 01 08 F4 */ lwz r0, 0x8f4(r1) +/* 801BF9B0 001BC910 7C 08 03 A6 */ mtlr r0 +/* 801BF9B4 001BC914 38 21 08 F0 */ addi r1, r1, 0x8f0 +/* 801BF9B8 001BC918 4E 80 00 20 */ blr + +.global sub_801bf9bc +sub_801bf9bc: +/* 801BF9BC 001BC91C 94 21 FE F0 */ stwu r1, -0x110(r1) +/* 801BF9C0 001BC920 7C 08 02 A6 */ mflr r0 +/* 801BF9C4 001BC924 90 01 01 14 */ stw r0, 0x114(r1) +/* 801BF9C8 001BC928 DB E1 01 00 */ stfd f31, 0x100(r1) +/* 801BF9CC 001BC92C F3 E1 01 08 */ psq_st f31, 264(r1), 0, qr0 +/* 801BF9D0 001BC930 93 E1 00 FC */ stw r31, 0xfc(r1) +/* 801BF9D4 001BC934 93 C1 00 F8 */ stw r30, 0xf8(r1) +/* 801BF9D8 001BC938 93 A1 00 F4 */ stw r29, 0xf4(r1) +/* 801BF9DC 001BC93C 7C 7F 1B 78 */ mr r31, r3 +/* 801BF9E0 001BC940 7C 9D 23 78 */ mr r29, r4 +/* 801BF9E4 001BC944 A0 03 02 C0 */ lhz r0, 0x2c0(r3) +/* 801BF9E8 001BC948 FF E0 08 90 */ fmr f31, f1 +/* 801BF9EC 001BC94C 7F A3 EB 78 */ mr r3, r29 +/* 801BF9F0 001BC950 38 81 00 28 */ addi r4, r1, 0x28 +/* 801BF9F4 001BC954 B0 01 00 24 */ sth r0, 0x24(r1) +/* 801BF9F8 001BC958 B0 01 00 28 */ sth r0, 0x28(r1) +/* 801BF9FC 001BC95C 4B E8 CB A9 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801BFA00 001BC960 7C 64 1B 78 */ mr r4, r3 +/* 801BFA04 001BC964 38 61 00 2C */ addi r3, r1, 0x2c +/* 801BFA08 001BC968 4B EF 02 89 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 801BFA0C 001BC96C 83 C3 00 04 */ lwz r30, 4(r3) +/* 801BFA10 001BC970 28 1E 00 00 */ cmplwi r30, 0 +/* 801BFA14 001BC974 41 82 01 10 */ beq lbl_801BFB24 +/* 801BFA18 001BC978 7F C3 F3 78 */ mr r3, r30 +/* 801BFA1C 001BC97C 7F A4 EB 78 */ mr r4, r29 +/* 801BFA20 001BC980 81 9E 00 00 */ lwz r12, 0(r30) +/* 801BFA24 001BC984 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801BFA28 001BC988 7D 89 03 A6 */ mtctr r12 +/* 801BFA2C 001BC98C 4E 80 04 21 */ bctrl +/* 801BFA30 001BC990 28 03 00 00 */ cmplwi r3, 0 +/* 801BFA34 001BC994 41 82 00 F0 */ beq lbl_801BFB24 +/* 801BFA38 001BC998 7F C3 F3 78 */ mr r3, r30 +/* 801BFA3C 001BC99C 7F A4 EB 78 */ mr r4, r29 +/* 801BFA40 001BC9A0 81 9E 00 00 */ lwz r12, 0(r30) +/* 801BFA44 001BC9A4 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801BFA48 001BC9A8 7D 89 03 A6 */ mtctr r12 +/* 801BFA4C 001BC9AC 4E 80 04 21 */ bctrl +/* 801BFA50 001BC9B0 C0 03 00 00 */ lfs f0, 0(r3) +/* 801BFA54 001BC9B4 C0 22 AA 04 */ lfs f1, lbl_805AC724@sda21(r2) +/* 801BFA58 001BC9B8 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801BFA5C 001BC9BC 40 81 00 C8 */ ble lbl_801BFB24 +/* 801BFA60 001BC9C0 81 9E 00 00 */ lwz r12, 0(r30) +/* 801BFA64 001BC9C4 7F C4 F3 78 */ mr r4, r30 +/* 801BFA68 001BC9C8 7F A5 EB 78 */ mr r5, r29 +/* 801BFA6C 001BC9CC 38 61 00 70 */ addi r3, r1, 0x70 +/* 801BFA70 001BC9D0 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801BFA74 001BC9D4 7D 89 03 A6 */ mtctr r12 +/* 801BFA78 001BC9D8 4E 80 04 21 */ bctrl +/* 801BFA7C 001BC9DC C0 01 00 70 */ lfs f0, 0x70(r1) +/* 801BFA80 001BC9E0 7F E3 FB 78 */ mr r3, r31 +/* 801BFA84 001BC9E4 38 9F 03 3C */ addi r4, r31, 0x33c +/* 801BFA88 001BC9E8 D0 1F 03 3C */ stfs f0, 0x33c(r31) +/* 801BFA8C 001BC9EC C0 01 00 74 */ lfs f0, 0x74(r1) +/* 801BFA90 001BC9F0 D0 1F 03 40 */ stfs f0, 0x340(r31) +/* 801BFA94 001BC9F4 C0 01 00 78 */ lfs f0, 0x78(r1) +/* 801BFA98 001BC9F8 D0 1F 03 44 */ stfs f0, 0x344(r31) +/* 801BFA9C 001BC9FC 4B E9 33 F1 */ bl SetTranslation__6CActorFRC9CVector3f +/* 801BFAA0 001BCA00 80 1F 00 F8 */ lwz r0, 0xf8(r31) +/* 801BFAA4 001BCA04 FC 20 F8 90 */ fmr f1, f31 +/* 801BFAA8 001BCA08 80 BF 00 FC */ lwz r5, 0xfc(r31) +/* 801BFAAC 001BCA0C 38 61 00 98 */ addi r3, r1, 0x98 +/* 801BFAB0 001BCA10 38 9F 01 2C */ addi r4, r31, 0x12c +/* 801BFAB4 001BCA14 90 A1 00 84 */ stw r5, 0x84(r1) +/* 801BFAB8 001BCA18 90 01 00 80 */ stw r0, 0x80(r1) +/* 801BFABC 001BCA1C 80 1F 01 00 */ lwz r0, 0x100(r31) +/* 801BFAC0 001BCA20 80 BF 01 04 */ lwz r5, 0x104(r31) +/* 801BFAC4 001BCA24 90 A1 00 8C */ stw r5, 0x8c(r1) +/* 801BFAC8 001BCA28 90 01 00 88 */ stw r0, 0x88(r1) +/* 801BFACC 001BCA2C 80 1F 01 08 */ lwz r0, 0x108(r31) +/* 801BFAD0 001BCA30 90 01 00 90 */ stw r0, 0x90(r1) +/* 801BFAD4 001BCA34 4B F0 39 75 */ bl __ct__11CDamageInfoFRC11CDamageInfof +/* 801BFAD8 001BCA38 A0 1F 00 EC */ lhz r0, 0xec(r31) +/* 801BFADC 001BCA3C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801BFAE0 001BCA40 39 23 66 A0 */ addi r9, r3, skZero3f@l +/* 801BFAE4 001BCA44 38 81 00 20 */ addi r4, r1, 0x20 +/* 801BFAE8 001BCA48 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801BFAEC 001BCA4C 7F A3 EB 78 */ mr r3, r29 +/* 801BFAF0 001BCA50 38 A1 00 18 */ addi r5, r1, 0x18 +/* 801BFAF4 001BCA54 38 C1 00 10 */ addi r6, r1, 0x10 +/* 801BFAF8 001BCA58 A1 5F 02 C0 */ lhz r10, 0x2c0(r31) +/* 801BFAFC 001BCA5C 38 E1 00 98 */ addi r7, r1, 0x98 +/* 801BFB00 001BCA60 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801BFB04 001BCA64 39 01 00 80 */ addi r8, r1, 0x80 +/* 801BFB08 001BCA68 B1 41 00 18 */ sth r10, 0x18(r1) +/* 801BFB0C 001BCA6C A0 1F 00 08 */ lhz r0, 8(r31) +/* 801BFB10 001BCA70 B1 41 00 14 */ sth r10, 0x14(r1) +/* 801BFB14 001BCA74 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 801BFB18 001BCA78 B0 01 00 20 */ sth r0, 0x20(r1) +/* 801BFB1C 001BCA7C 4B E8 A5 85 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +/* 801BFB20 001BCA80 48 00 00 F0 */ b lbl_801BFC10 +lbl_801BFB24: +/* 801BFB24 001BCA84 C0 5F 03 0C */ lfs f2, 0x30c(r31) +/* 801BFB28 001BCA88 38 61 00 40 */ addi r3, r1, 0x40 +/* 801BFB2C 001BCA8C C0 3F 02 FC */ lfs f1, 0x2fc(r31) +/* 801BFB30 001BCA90 38 81 00 34 */ addi r4, r1, 0x34 +/* 801BFB34 001BCA94 C0 1F 02 EC */ lfs f0, 0x2ec(r31) +/* 801BFB38 001BCA98 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801BFB3C 001BCA9C D0 21 00 38 */ stfs f1, 0x38(r1) +/* 801BFB40 001BCAA0 D0 41 00 3C */ stfs f2, 0x3c(r1) +/* 801BFB44 001BCAA4 48 15 4D 0D */ bl AsNormalized__9CVector3fCFv +/* 801BFB48 001BCAA8 C0 62 AA 48 */ lfs f3, lbl_805AC768@sda21(r2) +/* 801BFB4C 001BCAAC 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 801BFB50 001BCAB0 C0 41 00 48 */ lfs f2, 0x48(r1) +/* 801BFB54 001BCAB4 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 801BFB58 001BCAB8 C0 21 00 40 */ lfs f1, 0x40(r1) +/* 801BFB5C 001BCABC 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 801BFB60 001BCAC0 EC A3 00 B2 */ fmuls f5, f3, f2 +/* 801BFB64 001BCAC4 C0 01 00 44 */ lfs f0, 0x44(r1) +/* 801BFB68 001BCAC8 EC 83 00 72 */ fmuls f4, f3, f1 +/* 801BFB6C 001BCACC C0 3F 03 50 */ lfs f1, 0x350(r31) +/* 801BFB70 001BCAD0 EC 63 00 32 */ fmuls f3, f3, f0 +/* 801BFB74 001BCAD4 C0 5F 03 4C */ lfs f2, 0x34c(r31) +/* 801BFB78 001BCAD8 C0 1F 03 48 */ lfs f0, 0x348(r31) +/* 801BFB7C 001BCADC EC 21 28 2A */ fadds f1, f1, f5 +/* 801BFB80 001BCAE0 EC 42 18 2A */ fadds f2, f2, f3 +/* 801BFB84 001BCAE4 D0 81 00 4C */ stfs f4, 0x4c(r1) +/* 801BFB88 001BCAE8 EC 00 20 2A */ fadds f0, f0, f4 +/* 801BFB8C 001BCAEC 38 81 00 64 */ addi r4, r1, 0x64 +/* 801BFB90 001BCAF0 D0 21 00 60 */ stfs f1, 0x60(r1) +/* 801BFB94 001BCAF4 38 A1 00 58 */ addi r5, r1, 0x58 +/* 801BFB98 001BCAF8 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 801BFB9C 001BCAFC D0 41 00 5C */ stfs f2, 0x5c(r1) +/* 801BFBA0 001BCB00 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 801BFBA4 001BCB04 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 801BFBA8 001BCB08 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801BFBAC 001BCB0C D0 61 00 50 */ stfs f3, 0x50(r1) +/* 801BFBB0 001BCB10 D0 A1 00 54 */ stfs f5, 0x54(r1) +/* 801BFBB4 001BCB14 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 801BFBB8 001BCB18 D0 21 00 68 */ stfs f1, 0x68(r1) +/* 801BFBBC 001BCB1C D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 801BFBC0 001BCB20 48 15 3F 51 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 801BFBC4 001BCB24 38 7F 00 34 */ addi r3, r31, 0x34 +/* 801BFBC8 001BCB28 38 81 00 B4 */ addi r4, r1, 0xb4 +/* 801BFBCC 001BCB2C 48 15 2F 75 */ bl __as__12CTransform4fFRC12CTransform4f +/* 801BFBD0 001BCB30 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 801BFBD4 001BCB34 38 60 00 01 */ li r3, 1 +/* 801BFBD8 001BCB38 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801BFBDC 001BCB3C C0 02 AA 04 */ lfs f0, lbl_805AC724@sda21(r2) +/* 801BFBE0 001BCB40 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 801BFBE4 001BCB44 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 801BFBE8 001BCB48 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801BFBEC 001BCB4C 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 801BFBF0 001BCB50 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 801BFBF4 001BCB54 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801BFBF8 001BCB58 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 801BFBFC 001BCB5C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801BFC00 001BCB60 B0 1F 02 C0 */ sth r0, 0x2c0(r31) +/* 801BFC04 001BCB64 D0 1F 03 9C */ stfs f0, 0x39c(r31) +/* 801BFC08 001BCB68 B0 01 00 08 */ sth r0, 8(r1) +/* 801BFC0C 001BCB6C D0 1F 03 A0 */ stfs f0, 0x3a0(r31) +lbl_801BFC10: +/* 801BFC10 001BCB70 E3 E1 01 08 */ psq_l f31, 264(r1), 0, qr0 +/* 801BFC14 001BCB74 80 01 01 14 */ lwz r0, 0x114(r1) +/* 801BFC18 001BCB78 CB E1 01 00 */ lfd f31, 0x100(r1) +/* 801BFC1C 001BCB7C 83 E1 00 FC */ lwz r31, 0xfc(r1) +/* 801BFC20 001BCB80 83 C1 00 F8 */ lwz r30, 0xf8(r1) +/* 801BFC24 001BCB84 83 A1 00 F4 */ lwz r29, 0xf4(r1) +/* 801BFC28 001BCB88 7C 08 03 A6 */ mtlr r0 +/* 801BFC2C 001BCB8C 38 21 01 10 */ addi r1, r1, 0x110 +/* 801BFC30 001BCB90 4E 80 00 20 */ blr + +.global sub_801bfc34 +sub_801bfc34: +/* 801BFC34 001BCB94 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 801BFC38 001BCB98 7C 08 02 A6 */ mflr r0 +/* 801BFC3C 001BCB9C 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 801BFC40 001BCBA0 DB E1 00 D0 */ stfd f31, 0xd0(r1) +/* 801BFC44 001BCBA4 F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 +/* 801BFC48 001BCBA8 DB C1 00 C0 */ stfd f30, 0xc0(r1) +/* 801BFC4C 001BCBAC F3 C1 00 C8 */ psq_st f30, 200(r1), 0, qr0 +/* 801BFC50 001BCBB0 DB A1 00 B0 */ stfd f29, 0xb0(r1) +/* 801BFC54 001BCBB4 F3 A1 00 B8 */ psq_st f29, 184(r1), 0, qr0 +/* 801BFC58 001BCBB8 93 E1 00 AC */ stw r31, 0xac(r1) +/* 801BFC5C 001BCBBC 93 C1 00 A8 */ stw r30, 0xa8(r1) +/* 801BFC60 001BCBC0 93 A1 00 A4 */ stw r29, 0xa4(r1) +/* 801BFC64 001BCBC4 3C A0 80 5A */ lis r5, lbl_805A6724@ha +/* 801BFC68 001BCBC8 7C 9E 23 78 */ mr r30, r4 +/* 801BFC6C 001BCBCC 38 85 67 24 */ addi r4, r5, lbl_805A6724@l +/* 801BFC70 001BCBD0 7C 7D 1B 78 */ mr r29, r3 +/* 801BFC74 001BCBD4 C0 44 00 00 */ lfs f2, 0(r4) +/* 801BFC78 001BCBD8 FF C0 08 90 */ fmr f30, f1 +/* 801BFC7C 001BCBDC C0 24 00 04 */ lfs f1, 4(r4) +/* 801BFC80 001BCBE0 7F C3 F3 78 */ mr r3, r30 +/* 801BFC84 001BCBE4 C0 04 00 08 */ lfs f0, 8(r4) +/* 801BFC88 001BCBE8 38 81 00 0C */ addi r4, r1, 0xc +/* 801BFC8C 001BCBEC D0 41 00 34 */ stfs f2, 0x34(r1) +/* 801BFC90 001BCBF0 C3 E2 AA 04 */ lfs f31, lbl_805AC724@sda21(r2) +/* 801BFC94 001BCBF4 D0 21 00 38 */ stfs f1, 0x38(r1) +/* 801BFC98 001BCBF8 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 801BFC9C 001BCBFC A0 1D 02 C0 */ lhz r0, 0x2c0(r29) +/* 801BFCA0 001BCC00 B0 01 00 08 */ sth r0, 8(r1) +/* 801BFCA4 001BCC04 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801BFCA8 001BCC08 4B E8 C8 FD */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801BFCAC 001BCC0C 7C 64 1B 78 */ mr r4, r3 +/* 801BFCB0 001BCC10 38 61 00 14 */ addi r3, r1, 0x14 +/* 801BFCB4 001BCC14 4B EE FF DD */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 801BFCB8 001BCC18 83 E3 00 04 */ lwz r31, 4(r3) +/* 801BFCBC 001BCC1C 28 1F 00 00 */ cmplwi r31, 0 +/* 801BFCC0 001BCC20 41 82 00 A4 */ beq lbl_801BFD64 +/* 801BFCC4 001BCC24 7F E3 FB 78 */ mr r3, r31 +/* 801BFCC8 001BCC28 7F C4 F3 78 */ mr r4, r30 +/* 801BFCCC 001BCC2C 81 9F 00 00 */ lwz r12, 0(r31) +/* 801BFCD0 001BCC30 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801BFCD4 001BCC34 7D 89 03 A6 */ mtctr r12 +/* 801BFCD8 001BCC38 4E 80 04 21 */ bctrl +/* 801BFCDC 001BCC3C 28 03 00 00 */ cmplwi r3, 0 +/* 801BFCE0 001BCC40 41 82 00 84 */ beq lbl_801BFD64 +/* 801BFCE4 001BCC44 7F E3 FB 78 */ mr r3, r31 +/* 801BFCE8 001BCC48 7F C4 F3 78 */ mr r4, r30 +/* 801BFCEC 001BCC4C 81 9F 00 00 */ lwz r12, 0(r31) +/* 801BFCF0 001BCC50 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801BFCF4 001BCC54 7D 89 03 A6 */ mtctr r12 +/* 801BFCF8 001BCC58 4E 80 04 21 */ bctrl +/* 801BFCFC 001BCC5C C0 23 00 00 */ lfs f1, 0(r3) +/* 801BFD00 001BCC60 C0 02 AA 04 */ lfs f0, lbl_805AC724@sda21(r2) +/* 801BFD04 001BCC64 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801BFD08 001BCC68 40 81 00 5C */ ble lbl_801BFD64 +/* 801BFD0C 001BCC6C C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 801BFD10 001BCC70 C0 1D 03 04 */ lfs f0, 0x304(r29) +/* 801BFD14 001BCC74 C0 7F 00 40 */ lfs f3, 0x40(r31) +/* 801BFD18 001BCC78 EC 21 00 28 */ fsubs f1, f1, f0 +/* 801BFD1C 001BCC7C C0 1D 02 F4 */ lfs f0, 0x2f4(r29) +/* 801BFD20 001BCC80 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 801BFD24 001BCC84 EC 63 00 28 */ fsubs f3, f3, f0 +/* 801BFD28 001BCC88 C0 1D 03 14 */ lfs f0, 0x314(r29) +/* 801BFD2C 001BCC8C EC 21 00 72 */ fmuls f1, f1, f1 +/* 801BFD30 001BCC90 EC 42 00 28 */ fsubs f2, f2, f0 +/* 801BFD34 001BCC94 C0 02 AA 4C */ lfs f0, lbl_805AC76C@sda21(r2) +/* 801BFD38 001BCC98 EC 23 08 FA */ fmadds f1, f3, f3, f1 +/* 801BFD3C 001BCC9C EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 801BFD40 001BCCA0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801BFD44 001BCCA4 40 81 00 0C */ ble lbl_801BFD50 +/* 801BFD48 001BCCA8 38 60 00 01 */ li r3, 1 +/* 801BFD4C 001BCCAC 48 00 02 08 */ b lbl_801BFF54 +lbl_801BFD50: +/* 801BFD50 001BCCB0 7F A3 EB 78 */ mr r3, r29 +/* 801BFD54 001BCCB4 7F E5 FB 78 */ mr r5, r31 +/* 801BFD58 001BCCB8 38 81 00 34 */ addi r4, r1, 0x34 +/* 801BFD5C 001BCCBC 48 00 02 2D */ bl sub_801bff88 +/* 801BFD60 001BCCC0 FF E0 08 90 */ fmr f31, f1 +lbl_801BFD64: +/* 801BFD64 001BCCC4 C0 1D 03 A8 */ lfs f0, 0x3a8(r29) +/* 801BFD68 001BCCC8 C0 22 AA 04 */ lfs f1, lbl_805AC724@sda21(r2) +/* 801BFD6C 001BCCCC EC 00 F0 28 */ fsubs f0, f0, f30 +/* 801BFD70 001BCCD0 D0 1D 03 A8 */ stfs f0, 0x3a8(r29) +/* 801BFD74 001BCCD4 C0 1D 03 A8 */ lfs f0, 0x3a8(r29) +/* 801BFD78 001BCCD8 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801BFD7C 001BCCDC 4C 40 13 82 */ cror 2, 0, 2 +/* 801BFD80 001BCCE0 40 82 00 40 */ bne lbl_801BFDC0 +/* 801BFD84 001BCCE4 80 7E 09 00 */ lwz r3, 0x900(r30) +/* 801BFD88 001BCCE8 C0 42 AA 20 */ lfs f2, lbl_805AC740@sda21(r2) +/* 801BFD8C 001BCCEC 48 15 27 B9 */ bl Range__9CRandom16Fff +/* 801BFD90 001BCCF0 FF A0 08 90 */ fmr f29, f1 +/* 801BFD94 001BCCF4 80 7E 09 00 */ lwz r3, 0x900(r30) +/* 801BFD98 001BCCF8 C0 22 AA 50 */ lfs f1, lbl_805AC770@sda21(r2) +/* 801BFD9C 001BCCFC C0 42 AA 28 */ lfs f2, lbl_805AC748@sda21(r2) +/* 801BFDA0 001BCD00 48 15 27 A5 */ bl Range__9CRandom16Fff +/* 801BFDA4 001BCD04 C0 42 AA 0C */ lfs f2, lbl_805AC72C@sda21(r2) +/* 801BFDA8 001BCD08 C0 1D 03 AC */ lfs f0, 0x3ac(r29) +/* 801BFDAC 001BCD0C EC 42 08 24 */ fdivs f2, f2, f1 +/* 801BFDB0 001BCD10 EC 1D 00 28 */ fsubs f0, f29, f0 +/* 801BFDB4 001BCD14 EC 02 00 32 */ fmuls f0, f2, f0 +/* 801BFDB8 001BCD18 D0 1D 03 A4 */ stfs f0, 0x3a4(r29) +/* 801BFDBC 001BCD1C D0 3D 03 A8 */ stfs f1, 0x3a8(r29) +lbl_801BFDC0: +/* 801BFDC0 001BCD20 C0 1D 03 B8 */ lfs f0, 0x3b8(r29) +/* 801BFDC4 001BCD24 C0 22 AA 04 */ lfs f1, lbl_805AC724@sda21(r2) +/* 801BFDC8 001BCD28 EC 00 F0 28 */ fsubs f0, f0, f30 +/* 801BFDCC 001BCD2C D0 1D 03 B8 */ stfs f0, 0x3b8(r29) +/* 801BFDD0 001BCD30 C0 1D 03 B8 */ lfs f0, 0x3b8(r29) +/* 801BFDD4 001BCD34 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801BFDD8 001BCD38 4C 40 13 82 */ cror 2, 0, 2 +/* 801BFDDC 001BCD3C 40 82 00 40 */ bne lbl_801BFE1C +/* 801BFDE0 001BCD40 80 7E 09 00 */ lwz r3, 0x900(r30) +/* 801BFDE4 001BCD44 C0 42 A9 F8 */ lfs f2, lbl_805AC718@sda21(r2) +/* 801BFDE8 001BCD48 48 15 27 5D */ bl Range__9CRandom16Fff +/* 801BFDEC 001BCD4C FF A0 08 90 */ fmr f29, f1 +/* 801BFDF0 001BCD50 80 7E 09 00 */ lwz r3, 0x900(r30) +/* 801BFDF4 001BCD54 C0 22 AA 54 */ lfs f1, lbl_805AC774@sda21(r2) +/* 801BFDF8 001BCD58 C0 42 A9 F8 */ lfs f2, lbl_805AC718@sda21(r2) +/* 801BFDFC 001BCD5C 48 15 27 49 */ bl Range__9CRandom16Fff +/* 801BFE00 001BCD60 C0 42 AA 0C */ lfs f2, lbl_805AC72C@sda21(r2) +/* 801BFE04 001BCD64 C0 1D 03 B0 */ lfs f0, 0x3b0(r29) +/* 801BFE08 001BCD68 EC 42 08 24 */ fdivs f2, f2, f1 +/* 801BFE0C 001BCD6C EC 1D 00 28 */ fsubs f0, f29, f0 +/* 801BFE10 001BCD70 EC 02 00 32 */ fmuls f0, f2, f0 +/* 801BFE14 001BCD74 D0 1D 03 B4 */ stfs f0, 0x3b4(r29) +/* 801BFE18 001BCD78 D0 3D 03 B8 */ stfs f1, 0x3b8(r29) +lbl_801BFE1C: +/* 801BFE1C 001BCD7C C0 1D 03 C0 */ lfs f0, 0x3c0(r29) +/* 801BFE20 001BCD80 C0 22 AA 04 */ lfs f1, lbl_805AC724@sda21(r2) +/* 801BFE24 001BCD84 EC 00 F0 28 */ fsubs f0, f0, f30 +/* 801BFE28 001BCD88 D0 1D 03 C0 */ stfs f0, 0x3c0(r29) +/* 801BFE2C 001BCD8C C0 1D 03 C0 */ lfs f0, 0x3c0(r29) +/* 801BFE30 001BCD90 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801BFE34 001BCD94 4C 40 13 82 */ cror 2, 0, 2 +/* 801BFE38 001BCD98 40 82 00 40 */ bne lbl_801BFE78 +/* 801BFE3C 001BCD9C 80 7E 09 00 */ lwz r3, 0x900(r30) +/* 801BFE40 001BCDA0 C0 42 AA 20 */ lfs f2, lbl_805AC740@sda21(r2) +/* 801BFE44 001BCDA4 48 15 27 01 */ bl Range__9CRandom16Fff +/* 801BFE48 001BCDA8 FF A0 08 90 */ fmr f29, f1 +/* 801BFE4C 001BCDAC 80 7E 09 00 */ lwz r3, 0x900(r30) +/* 801BFE50 001BCDB0 C0 22 AA 50 */ lfs f1, lbl_805AC770@sda21(r2) +/* 801BFE54 001BCDB4 C0 42 AA 28 */ lfs f2, lbl_805AC748@sda21(r2) +/* 801BFE58 001BCDB8 48 15 26 ED */ bl Range__9CRandom16Fff +/* 801BFE5C 001BCDBC C0 42 AA 0C */ lfs f2, lbl_805AC72C@sda21(r2) +/* 801BFE60 001BCDC0 C0 1D 03 AC */ lfs f0, 0x3ac(r29) +/* 801BFE64 001BCDC4 EC 42 08 24 */ fdivs f2, f2, f1 +/* 801BFE68 001BCDC8 EC 1D 00 28 */ fsubs f0, f29, f0 +/* 801BFE6C 001BCDCC EC 02 00 32 */ fmuls f0, f2, f0 +/* 801BFE70 001BCDD0 D0 1D 03 BC */ stfs f0, 0x3bc(r29) +/* 801BFE74 001BCDD4 D0 3D 03 C0 */ stfs f1, 0x3c0(r29) +lbl_801BFE78: +/* 801BFE78 001BCDD8 C0 3D 03 A4 */ lfs f1, 0x3a4(r29) +/* 801BFE7C 001BCDDC 3C 60 80 47 */ lis r3, lbl_8046C914@ha +/* 801BFE80 001BCDE0 C0 1D 03 AC */ lfs f0, 0x3ac(r29) +/* 801BFE84 001BCDE4 EC 01 07 BA */ fmadds f0, f1, f30, f0 +/* 801BFE88 001BCDE8 D0 1D 03 AC */ stfs f0, 0x3ac(r29) +/* 801BFE8C 001BCDEC C0 3D 03 B4 */ lfs f1, 0x3b4(r29) +/* 801BFE90 001BCDF0 C0 1D 03 B0 */ lfs f0, 0x3b0(r29) +/* 801BFE94 001BCDF4 EC 01 07 BA */ fmadds f0, f1, f30, f0 +/* 801BFE98 001BCDF8 D0 1D 03 B0 */ stfs f0, 0x3b0(r29) +/* 801BFE9C 001BCDFC C0 3D 03 BC */ lfs f1, 0x3bc(r29) +/* 801BFEA0 001BCE00 C0 1D 03 C4 */ lfs f0, 0x3c4(r29) +/* 801BFEA4 001BCE04 EC 01 07 BA */ fmadds f0, f1, f30, f0 +/* 801BFEA8 001BCE08 D0 1D 03 C4 */ stfs f0, 0x3c4(r29) +/* 801BFEAC 001BCE0C C4 43 C9 14 */ lfsu f2, lbl_8046C914@l(r3) +/* 801BFEB0 001BCE10 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801BFEB4 001BCE14 C0 23 00 04 */ lfs f1, 4(r3) +/* 801BFEB8 001BCE18 C0 03 00 08 */ lfs f0, 8(r3) +/* 801BFEBC 001BCE1C D0 41 00 28 */ stfs f2, 0x28(r1) +/* 801BFEC0 001BCE20 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 801BFEC4 001BCE24 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801BFEC8 001BCE28 A0 7D 02 C0 */ lhz r3, 0x2c0(r29) +/* 801BFECC 001BCE2C 7C 03 00 40 */ cmplw r3, r0 +/* 801BFED0 001BCE30 41 82 00 0C */ beq lbl_801BFEDC +/* 801BFED4 001BCE34 C0 42 AA 58 */ lfs f2, lbl_805AC778@sda21(r2) +/* 801BFED8 001BCE38 48 00 00 08 */ b lbl_801BFEE0 +lbl_801BFEDC: +/* 801BFEDC 001BCE3C C0 42 AA 0C */ lfs f2, lbl_805AC72C@sda21(r2) +lbl_801BFEE0: +/* 801BFEE0 001BCE40 C0 1D 03 B0 */ lfs f0, 0x3b0(r29) +/* 801BFEE4 001BCE44 38 61 00 40 */ addi r3, r1, 0x40 +/* 801BFEE8 001BCE48 C0 21 00 30 */ lfs f1, 0x30(r1) +/* 801BFEEC 001BCE4C 38 81 00 10 */ addi r4, r1, 0x10 +/* 801BFEF0 001BCE50 EC 00 00 32 */ fmuls f0, f0, f0 +/* 801BFEF4 001BCE54 EC 02 00 28 */ fsubs f0, f2, f0 +/* 801BFEF8 001BCE58 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801BFEFC 001BCE5C D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801BFF00 001BCE60 C0 1D 03 AC */ lfs f0, 0x3ac(r29) +/* 801BFF04 001BCE64 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801BFF08 001BCE68 48 15 39 A1 */ bl RotateY__12CTransform4fFRC9CRelAngle +/* 801BFF0C 001BCE6C 38 61 00 70 */ addi r3, r1, 0x70 +/* 801BFF10 001BCE70 38 9D 02 E8 */ addi r4, r29, 0x2e8 +/* 801BFF14 001BCE74 38 A1 00 40 */ addi r5, r1, 0x40 +/* 801BFF18 001BCE78 48 15 2A 39 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 801BFF1C 001BCE7C 38 61 00 1C */ addi r3, r1, 0x1c +/* 801BFF20 001BCE80 38 81 00 70 */ addi r4, r1, 0x70 +/* 801BFF24 001BCE84 38 A1 00 28 */ addi r5, r1, 0x28 +/* 801BFF28 001BCE88 48 15 2B C1 */ bl __ml__12CTransform4fCFRC9CVector3f +/* 801BFF2C 001BCE8C C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 801BFF30 001BCE90 C0 02 AA 40 */ lfs f0, lbl_805AC760@sda21(r2) +/* 801BFF34 001BCE94 D0 3D 03 18 */ stfs f1, 0x318(r29) +/* 801BFF38 001BCE98 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 801BFF3C 001BCE9C C0 01 00 20 */ lfs f0, 0x20(r1) +/* 801BFF40 001BCEA0 D0 1D 03 1C */ stfs f0, 0x31c(r29) +/* 801BFF44 001BCEA4 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 801BFF48 001BCEA8 D0 1D 03 20 */ stfs f0, 0x320(r29) +/* 801BFF4C 001BCEAC 7C 00 00 26 */ mfcr r0 +/* 801BFF50 001BCEB0 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f +lbl_801BFF54: +/* 801BFF54 001BCEB4 E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 +/* 801BFF58 001BCEB8 CB E1 00 D0 */ lfd f31, 0xd0(r1) +/* 801BFF5C 001BCEBC E3 C1 00 C8 */ psq_l f30, 200(r1), 0, qr0 +/* 801BFF60 001BCEC0 CB C1 00 C0 */ lfd f30, 0xc0(r1) +/* 801BFF64 001BCEC4 E3 A1 00 B8 */ psq_l f29, 184(r1), 0, qr0 +/* 801BFF68 001BCEC8 CB A1 00 B0 */ lfd f29, 0xb0(r1) +/* 801BFF6C 001BCECC 83 E1 00 AC */ lwz r31, 0xac(r1) +/* 801BFF70 001BCED0 83 C1 00 A8 */ lwz r30, 0xa8(r1) +/* 801BFF74 001BCED4 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 801BFF78 001BCED8 83 A1 00 A4 */ lwz r29, 0xa4(r1) +/* 801BFF7C 001BCEDC 7C 08 03 A6 */ mtlr r0 +/* 801BFF80 001BCEE0 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 801BFF84 001BCEE4 4E 80 00 20 */ blr + +.global sub_801bff88 +sub_801bff88: +/* 801BFF88 001BCEE8 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801BFF8C 001BCEEC 7C 08 02 A6 */ mflr r0 +/* 801BFF90 001BCEF0 90 01 00 34 */ stw r0, 0x34(r1) +/* 801BFF94 001BCEF4 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801BFF98 001BCEF8 7C 9F 23 78 */ mr r31, r4 +/* 801BFF9C 001BCEFC 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801BFFA0 001BCF00 7C 7E 1B 78 */ mr r30, r3 +/* 801BFFA4 001BCF04 7F E3 FB 78 */ mr r3, r31 +/* 801BFFA8 001BCF08 C0 25 00 40 */ lfs f1, 0x40(r5) +/* 801BFFAC 001BCF0C C0 1E 02 F4 */ lfs f0, 0x2f4(r30) +/* 801BFFB0 001BCF10 C0 85 00 50 */ lfs f4, 0x50(r5) +/* 801BFFB4 001BCF14 C0 7E 03 04 */ lfs f3, 0x304(r30) +/* 801BFFB8 001BCF18 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801BFFBC 001BCF1C C0 45 00 60 */ lfs f2, 0x60(r5) +/* 801BFFC0 001BCF20 C0 3E 03 14 */ lfs f1, 0x314(r30) +/* 801BFFC4 001BCF24 EC 64 18 28 */ fsubs f3, f4, f3 +/* 801BFFC8 001BCF28 D0 04 00 00 */ stfs f0, 0(r4) +/* 801BFFCC 001BCF2C EC 02 08 28 */ fsubs f0, f2, f1 +/* 801BFFD0 001BCF30 D0 64 00 04 */ stfs f3, 4(r4) +/* 801BFFD4 001BCF34 D0 04 00 08 */ stfs f0, 8(r4) +/* 801BFFD8 001BCF38 48 15 47 21 */ bl CanBeNormalized__9CVector3fCFv +/* 801BFFDC 001BCF3C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801BFFE0 001BCF40 41 82 00 10 */ beq lbl_801BFFF0 +/* 801BFFE4 001BCF44 7F E3 FB 78 */ mr r3, r31 +/* 801BFFE8 001BCF48 48 15 49 11 */ bl Normalize__9CVector3fFv +/* 801BFFEC 001BCF4C 48 00 00 1C */ b lbl_801C0008 +lbl_801BFFF0: +/* 801BFFF0 001BCF50 C0 5E 00 58 */ lfs f2, 0x58(r30) +/* 801BFFF4 001BCF54 C0 3E 00 48 */ lfs f1, 0x48(r30) +/* 801BFFF8 001BCF58 C0 1E 00 38 */ lfs f0, 0x38(r30) +/* 801BFFFC 001BCF5C D0 1F 00 00 */ stfs f0, 0(r31) +/* 801C0000 001BCF60 D0 3F 00 04 */ stfs f1, 4(r31) +/* 801C0004 001BCF64 D0 5F 00 08 */ stfs f2, 8(r31) +lbl_801C0008: +/* 801C0008 001BCF68 C0 3F 00 00 */ lfs f1, 0(r31) +/* 801C000C 001BCF6C 38 61 00 08 */ addi r3, r1, 8 +/* 801C0010 001BCF70 C0 5F 00 04 */ lfs f2, 4(r31) +/* 801C0014 001BCF74 48 15 41 ED */ bl __ct__9CVector2fFff +/* 801C0018 001BCF78 C0 5E 02 FC */ lfs f2, 0x2fc(r30) +/* 801C001C 001BCF7C 38 61 00 10 */ addi r3, r1, 0x10 +/* 801C0020 001BCF80 C0 3E 02 EC */ lfs f1, 0x2ec(r30) +/* 801C0024 001BCF84 C0 1E 03 0C */ lfs f0, 0x30c(r30) +/* 801C0028 001BCF88 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801C002C 001BCF8C D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 801C0030 001BCF90 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801C0034 001BCF94 48 15 41 CD */ bl __ct__9CVector2fFff +/* 801C0038 001BCF98 38 61 00 10 */ addi r3, r1, 0x10 +/* 801C003C 001BCF9C 38 81 00 08 */ addi r4, r1, 8 +/* 801C0040 001BCFA0 48 15 3F 85 */ bl GetAngleDiff__9CVector2fFRC9CVector2fRC9CVector2f +/* 801C0044 001BCFA4 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801C0048 001BCFA8 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801C004C 001BCFAC 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801C0050 001BCFB0 7C 08 03 A6 */ mtlr r0 +/* 801C0054 001BCFB4 38 21 00 30 */ addi r1, r1, 0x30 + +.global sub_801c0058 +sub_801c0058: +/* 801C0058 001BCFB8 4E 80 00 20 */ blr + +.global SetNewTarget__11CWaveBusterF9TUniqueId +SetNewTarget__11CWaveBusterF9TUniqueId: +/* 801C005C 001BCFBC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801C0060 001BCFC0 7C 08 02 A6 */ mflr r0 +/* 801C0064 001BCFC4 90 01 00 34 */ stw r0, 0x34(r1) +/* 801C0068 001BCFC8 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801C006C 001BCFCC 7C BF 2B 78 */ mr r31, r5 +/* 801C0070 001BCFD0 A0 C4 00 00 */ lhz r6, 0(r4) +/* 801C0074 001BCFD4 B0 C3 02 C0 */ sth r6, 0x2c0(r3) +/* 801C0078 001BCFD8 A0 84 00 00 */ lhz r4, 0(r4) +/* 801C007C 001BCFDC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801C0080 001BCFE0 B0 C1 00 08 */ sth r6, 8(r1) +/* 801C0084 001BCFE4 7C 04 00 40 */ cmplw r4, r0 +/* 801C0088 001BCFE8 41 82 00 78 */ beq lbl_801C0100 +/* 801C008C 001BCFEC 88 03 03 D0 */ lbz r0, 0x3d0(r3) +/* 801C0090 001BCFF0 38 80 00 01 */ li r4, 1 +/* 801C0094 001BCFF4 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 801C0098 001BCFF8 C0 02 AA 04 */ lfs f0, lbl_805AC724@sda21(r2) +/* 801C009C 001BCFFC 98 03 03 D0 */ stb r0, 0x3d0(r3) +/* 801C00A0 001BD000 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801C00A4 001BD004 38 C4 66 A0 */ addi r6, r4, skZero3f@l +/* 801C00A8 001BD008 A9 22 C5 F8 */ lha r9, lbl_805AE318@sda21(r2) +/* 801C00AC 001BD00C D0 03 03 A0 */ stfs f0, 0x3a0(r3) +/* 801C00B0 001BD010 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801C00B4 001BD014 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 801C00B8 001BD018 38 80 06 FF */ li r4, 0x6ff +/* 801C00BC 001BD01C C0 43 00 60 */ lfs f2, 0x60(r3) +/* 801C00C0 001BD020 38 E0 00 01 */ li r7, 1 +/* 801C00C4 001BD024 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801C00C8 001BD028 39 00 00 00 */ li r8, 0 +/* 801C00CC 001BD02C C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801C00D0 001BD030 38 61 00 0C */ addi r3, r1, 0xc +/* 801C00D4 001BD034 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801C00D8 001BD038 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 801C00DC 001BD03C D0 41 00 18 */ stfs f2, 0x18(r1) +/* 801C00E0 001BD040 48 12 A1 D1 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +/* 801C00E4 001BD044 80 7F 08 8C */ lwz r3, 0x88c(r31) +/* 801C00E8 001BD048 7F E4 FB 78 */ mr r4, r31 +/* 801C00EC 001BD04C C0 22 A9 F8 */ lfs f1, lbl_805AC718@sda21(r2) +/* 801C00F0 001BD050 38 A0 00 0B */ li r5, 0xb +/* 801C00F4 001BD054 38 C0 00 03 */ li r6, 3 +/* 801C00F8 001BD058 48 06 E1 4D */ bl Rumble__14CRumbleManagerFR13CStateManager11ERumbleFxIdf15ERumblePriority +/* 801C00FC 001BD05C 48 00 00 14 */ b lbl_801C0110 +lbl_801C0100: +/* 801C0100 001BD060 88 03 03 D0 */ lbz r0, 0x3d0(r3) +/* 801C0104 001BD064 38 80 00 00 */ li r4, 0 +/* 801C0108 001BD068 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 801C010C 001BD06C 98 03 03 D0 */ stb r0, 0x3d0(r3) +lbl_801C0110: +/* 801C0110 001BD070 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801C0114 001BD074 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801C0118 001BD078 7C 08 03 A6 */ mtlr r0 +/* 801C011C 001BD07C 38 21 00 30 */ addi r1, r1, 0x30 +/* 801C0120 001BD080 4E 80 00 20 */ blr + +.global sub_801c0124 +sub_801c0124: +/* 801C0124 001BD084 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801C0128 001BD088 7C 08 02 A6 */ mflr r0 +/* 801C012C 001BD08C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801C0130 001BD090 4B E9 42 D9 */ bl Touch__6CActorFR6CActorR13CStateManager +/* 801C0134 001BD094 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801C0138 001BD098 7C 08 03 A6 */ mtlr r0 +/* 801C013C 001BD09C 38 21 00 10 */ addi r1, r1, 0x10 + +.global sub_801c0140 +sub_801c0140: +/* 801C0140 001BD0A0 4E 80 00 20 */ blr + +.global sub_801c0144 +sub_801c0144: +/* 801C0144 001BD0A4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801C0148 001BD0A8 7C 08 02 A6 */ mflr r0 +/* 801C014C 001BD0AC 90 01 00 14 */ stw r0, 0x14(r1) +/* 801C0150 001BD0B0 7C 60 1B 78 */ mr r0, r3 +/* 801C0154 001BD0B4 7C 83 23 78 */ mr r3, r4 +/* 801C0158 001BD0B8 81 84 00 00 */ lwz r12, 0(r4) +/* 801C015C 001BD0BC 7C 04 03 78 */ mr r4, r0 +/* 801C0160 001BD0C0 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 801C0164 001BD0C4 7D 89 03 A6 */ mtctr r12 +/* 801C0168 001BD0C8 4E 80 04 21 */ bctrl +/* 801C016C 001BD0CC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801C0170 001BD0D0 7C 08 03 A6 */ mtlr r0 +/* 801C0174 001BD0D4 38 21 00 10 */ addi r1, r1, 0x10 +/* 801C0178 001BD0D8 4E 80 00 20 */ blr + +.global "__ct__11CWaveBusterFRC28TToken<18CWeaponDescription>11EWeaponTypeRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId7TAreaId9TUniqueId9TUniqueIdUi" +"__ct__11CWaveBusterFRC28TToken<18CWeaponDescription>11EWeaponTypeRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId7TAreaId9TUniqueId9TUniqueIdUi": +/* 801C017C 001BD0DC 94 21 FE F0 */ stwu r1, -0x110(r1) +/* 801C0180 001BD0E0 7C 08 02 A6 */ mflr r0 +/* 801C0184 001BD0E4 3D 60 80 3D */ lis r11, lbl_803D1A20@ha +/* 801C0188 001BD0E8 90 01 01 14 */ stw r0, 0x114(r1) +/* 801C018C 001BD0EC 39 6B 1A 20 */ addi r11, r11, lbl_803D1A20@l +/* 801C0190 001BD0F0 BE 01 00 D0 */ stmw r16, 0xd0(r1) +/* 801C0194 001BD0F4 7C 7F 1B 78 */ mr r31, r3 +/* 801C0198 001BD0F8 7C 97 23 78 */ mr r23, r4 +/* 801C019C 001BD0FC 83 81 01 18 */ lwz r28, 0x118(r1) +/* 801C01A0 001BD100 83 A1 01 1C */ lwz r29, 0x11c(r1) +/* 801C01A4 001BD104 7C B8 2B 78 */ mr r24, r5 +/* 801C01A8 001BD108 83 C1 01 20 */ lwz r30, 0x120(r1) +/* 801C01AC 001BD10C 7C D9 33 78 */ mr r25, r6 +/* 801C01B0 001BD110 7C FA 3B 78 */ mr r26, r7 +/* 801C01B4 001BD114 7D 1B 43 78 */ mr r27, r8 +/* 801C01B8 001BD118 7D 31 4B 78 */ mr r17, r9 +/* 801C01BC 001BD11C 7D 50 53 78 */ mr r16, r10 +/* 801C01C0 001BD120 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 801C01C4 001BD124 38 8B 00 11 */ addi r4, r11, 0x11 +/* 801C01C8 001BD128 4B E4 4A F1 */ bl string_l__4rstlFPCc +/* 801C01CC 001BD12C C0 02 AA 0C */ lfs f0, lbl_805AC72C@sda21(r2) +/* 801C01D0 001BD130 38 00 00 00 */ li r0, 0 +/* 801C01D4 001BD134 98 01 00 A4 */ stb r0, 0xa4(r1) +/* 801C01D8 001BD138 3A 41 00 38 */ addi r18, r1, 0x38 +/* 801C01DC 001BD13C 82 10 00 00 */ lwz r16, 0(r16) +/* 801C01E0 001BD140 3A 61 00 3C */ addi r19, r1, 0x3c +/* 801C01E4 001BD144 D0 01 00 A8 */ stfs f0, 0xa8(r1) +/* 801C01E8 001BD148 3A 81 00 34 */ addi r20, r1, 0x34 +/* 801C01EC 001BD14C A2 31 00 00 */ lhz r17, 0(r17) +/* 801C01F0 001BD150 3A A1 00 30 */ addi r21, r1, 0x30 +/* 801C01F4 001BD154 D0 01 00 AC */ stfs f0, 0xac(r1) +/* 801C01F8 001BD158 3A C1 00 A8 */ addi r22, r1, 0xa8 +/* 801C01FC 001BD15C 39 81 00 98 */ addi r12, r1, 0x98 +/* 801C0200 001BD160 A1 62 C5 FC */ lhz r11, lbl_805AE31C@sda21(r2) +/* 801C0204 001BD164 D0 01 00 B0 */ stfs f0, 0xb0(r1) +/* 801C0208 001BD168 7F E3 FB 78 */ mr r3, r31 +/* 801C020C 001BD16C 7E E5 BB 78 */ mr r5, r23 +/* 801C0210 001BD170 7F 07 C3 78 */ mr r7, r24 +/* 801C0214 001BD174 A0 9D 00 00 */ lhz r4, 0(r29) +/* 801C0218 001BD178 7F 28 CB 78 */ mr r8, r25 +/* 801C021C 001BD17C 7F 49 D3 78 */ mr r9, r26 +/* 801C0220 001BD180 7F 6A DB 78 */ mr r10, r27 +/* 801C0224 001BD184 B0 81 00 30 */ sth r4, 0x30(r1) +/* 801C0228 001BD188 38 C1 00 B4 */ addi r6, r1, 0xb4 +/* 801C022C 001BD18C 38 80 00 01 */ li r4, 1 +/* 801C0230 001BD190 A2 FC 00 00 */ lhz r23, 0(r28) +/* 801C0234 001BD194 B2 E1 00 34 */ sth r23, 0x34(r1) +/* 801C0238 001BD198 92 01 00 3C */ stw r16, 0x3c(r1) +/* 801C023C 001BD19C B2 21 00 38 */ sth r17, 0x38(r1) +/* 801C0240 001BD1A0 92 41 00 08 */ stw r18, 8(r1) +/* 801C0244 001BD1A4 92 61 00 0C */ stw r19, 0xc(r1) +/* 801C0248 001BD1A8 92 81 00 10 */ stw r20, 0x10(r1) +/* 801C024C 001BD1AC 92 A1 00 14 */ stw r21, 0x14(r1) +/* 801C0250 001BD1B0 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801C0254 001BD1B4 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801C0258 001BD1B8 92 C1 00 20 */ stw r22, 0x20(r1) +/* 801C025C 001BD1BC 91 81 00 24 */ stw r12, 0x24(r1) +/* 801C0260 001BD1C0 91 61 00 28 */ stw r11, 0x28(r1) +/* 801C0264 001BD1C4 90 01 00 2C */ stw r0, 0x2c(r1) +/* 801C0268 001BD1C8 4B E7 A2 1D */ bl "__ct__15CGameProjectileFbRC28TToken<18CWeaponDescription>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>11EWeaponTypeRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId7TAreaId9TUniqueId9TUniqueIdUibRC9CVector3fRCQ24rstl50optional_object<31TLockedToken<15CGenDescription>>sb" +/* 801C026C 001BD1CC 88 01 00 A4 */ lbz r0, 0xa4(r1) +/* 801C0270 001BD1D0 28 00 00 00 */ cmplwi r0, 0 +/* 801C0274 001BD1D4 41 82 00 1C */ beq lbl_801C0290 +/* 801C0278 001BD1D8 34 61 00 98 */ addic. r3, r1, 0x98 +/* 801C027C 001BD1DC 41 82 00 14 */ beq lbl_801C0290 +/* 801C0280 001BD1E0 28 03 00 00 */ cmplwi r3, 0 +/* 801C0284 001BD1E4 41 82 00 0C */ beq lbl_801C0290 +/* 801C0288 001BD1E8 38 80 00 00 */ li r4, 0 +/* 801C028C 001BD1EC 48 18 0B B5 */ bl __dt__6CTokenFv +lbl_801C0290: +/* 801C0290 001BD1F0 38 00 00 00 */ li r0, 0 +/* 801C0294 001BD1F4 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 801C0298 001BD1F8 98 01 00 A4 */ stb r0, 0xa4(r1) +/* 801C029C 001BD1FC 48 17 D8 45 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801C02A0 001BD200 3C 60 80 3E */ lis r3, lbl_803E5318@ha +/* 801C02A4 001BD204 7F 24 CB 78 */ mr r4, r25 +/* 801C02A8 001BD208 38 03 53 18 */ addi r0, r3, lbl_803E5318@l +/* 801C02AC 001BD20C 38 7F 02 E8 */ addi r3, r31, 0x2e8 +/* 801C02B0 001BD210 90 1F 00 00 */ stw r0, 0(r31) +/* 801C02B4 001BD214 48 15 28 C1 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801C02B8 001BD218 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801C02BC 001BD21C 38 61 00 8C */ addi r3, r1, 0x8c +/* 801C02C0 001BD220 38 A4 66 A0 */ addi r5, r4, skZero3f@l +/* 801C02C4 001BD224 38 81 00 80 */ addi r4, r1, 0x80 +/* 801C02C8 001BD228 C0 05 00 00 */ lfs f0, 0(r5) +/* 801C02CC 001BD22C D0 1F 03 18 */ stfs f0, 0x318(r31) +/* 801C02D0 001BD230 C0 05 00 04 */ lfs f0, 4(r5) +/* 801C02D4 001BD234 D0 1F 03 1C */ stfs f0, 0x31c(r31) +/* 801C02D8 001BD238 C0 05 00 08 */ lfs f0, 8(r5) +/* 801C02DC 001BD23C D0 1F 03 20 */ stfs f0, 0x320(r31) +/* 801C02E0 001BD240 C0 05 00 00 */ lfs f0, 0(r5) +/* 801C02E4 001BD244 D0 1F 03 24 */ stfs f0, 0x324(r31) +/* 801C02E8 001BD248 C0 05 00 04 */ lfs f0, 4(r5) +/* 801C02EC 001BD24C D0 1F 03 28 */ stfs f0, 0x328(r31) +/* 801C02F0 001BD250 C0 05 00 08 */ lfs f0, 8(r5) +/* 801C02F4 001BD254 D0 1F 03 2C */ stfs f0, 0x32c(r31) +/* 801C02F8 001BD258 C0 05 00 00 */ lfs f0, 0(r5) +/* 801C02FC 001BD25C D0 1F 03 30 */ stfs f0, 0x330(r31) +/* 801C0300 001BD260 C0 05 00 04 */ lfs f0, 4(r5) +/* 801C0304 001BD264 D0 1F 03 34 */ stfs f0, 0x334(r31) +/* 801C0308 001BD268 C0 05 00 08 */ lfs f0, 8(r5) +/* 801C030C 001BD26C D0 1F 03 38 */ stfs f0, 0x338(r31) +/* 801C0310 001BD270 C0 05 00 00 */ lfs f0, 0(r5) +/* 801C0314 001BD274 D0 1F 03 3C */ stfs f0, 0x33c(r31) +/* 801C0318 001BD278 C0 05 00 04 */ lfs f0, 4(r5) +/* 801C031C 001BD27C D0 1F 03 40 */ stfs f0, 0x340(r31) +/* 801C0320 001BD280 C0 05 00 08 */ lfs f0, 8(r5) +/* 801C0324 001BD284 D0 1F 03 44 */ stfs f0, 0x344(r31) +/* 801C0328 001BD288 C0 5F 03 0C */ lfs f2, 0x30c(r31) +/* 801C032C 001BD28C C0 3F 02 FC */ lfs f1, 0x2fc(r31) +/* 801C0330 001BD290 C0 1F 02 EC */ lfs f0, 0x2ec(r31) +/* 801C0334 001BD294 D0 01 00 80 */ stfs f0, 0x80(r1) +/* 801C0338 001BD298 D0 21 00 84 */ stfs f1, 0x84(r1) +/* 801C033C 001BD29C D0 41 00 88 */ stfs f2, 0x88(r1) +/* 801C0340 001BD2A0 48 15 45 11 */ bl AsNormalized__9CVector3fCFv +/* 801C0344 001BD2A4 C0 82 A9 FC */ lfs f4, lbl_805AC71C@sda21(r2) +/* 801C0348 001BD2A8 3C 60 80 3D */ lis r3, lbl_803D1A20@ha +/* 801C034C 001BD2AC C0 01 00 8C */ lfs f0, 0x8c(r1) +/* 801C0350 001BD2B0 38 83 1A 20 */ addi r4, r3, lbl_803D1A20@l +/* 801C0354 001BD2B4 C0 61 00 90 */ lfs f3, 0x90(r1) +/* 801C0358 001BD2B8 38 61 00 78 */ addi r3, r1, 0x78 +/* 801C035C 001BD2BC EC 04 00 32 */ fmuls f0, f4, f0 +/* 801C0360 001BD2C0 C0 3F 02 F4 */ lfs f1, 0x2f4(r31) +/* 801C0364 001BD2C4 C0 41 00 94 */ lfs f2, 0x94(r1) +/* 801C0368 001BD2C8 EC 64 00 F2 */ fmuls f3, f4, f3 +/* 801C036C 001BD2CC C0 BF 03 04 */ lfs f5, 0x304(r31) +/* 801C0370 001BD2D0 38 A4 00 1C */ addi r5, r4, 0x1c +/* 801C0374 001BD2D4 EC 01 00 2A */ fadds f0, f1, f0 +/* 801C0378 001BD2D8 C0 DF 03 14 */ lfs f6, 0x314(r31) +/* 801C037C 001BD2DC EC 24 00 B2 */ fmuls f1, f4, f2 +/* 801C0380 001BD2E0 EC 45 18 2A */ fadds f2, f5, f3 +/* 801C0384 001BD2E4 D0 1F 03 48 */ stfs f0, 0x348(r31) +/* 801C0388 001BD2E8 EC 06 08 2A */ fadds f0, f6, f1 +/* 801C038C 001BD2EC D0 5F 03 4C */ stfs f2, 0x34c(r31) +/* 801C0390 001BD2F0 D0 1F 03 50 */ stfs f0, 0x350(r31) +/* 801C0394 001BD2F4 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801C0398 001BD2F8 81 84 00 00 */ lwz r12, 0(r4) +/* 801C039C 001BD2FC 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801C03A0 001BD300 7D 89 03 A6 */ mtctr r12 +/* 801C03A4 001BD304 4E 80 04 21 */ bctrl +/* 801C03A8 001BD308 3A 1F 03 54 */ addi r16, r31, 0x354 +/* 801C03AC 001BD30C 38 81 00 78 */ addi r4, r1, 0x78 +/* 801C03B0 001BD310 7E 03 83 78 */ mr r3, r16 +/* 801C03B4 001BD314 48 18 0A F5 */ bl __ct__6CTokenFRC6CToken +/* 801C03B8 001BD318 7E 03 83 78 */ mr r3, r16 +/* 801C03BC 001BD31C 48 18 0A 51 */ bl GetObj__6CTokenFv +/* 801C03C0 001BD320 80 03 00 04 */ lwz r0, 4(r3) +/* 801C03C4 001BD324 38 61 00 78 */ addi r3, r1, 0x78 +/* 801C03C8 001BD328 38 80 FF FF */ li r4, -1 +/* 801C03CC 001BD32C 90 10 00 08 */ stw r0, 8(r16) +/* 801C03D0 001BD330 48 18 0A 71 */ bl __dt__6CTokenFv +/* 801C03D4 001BD334 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801C03D8 001BD338 3C 60 80 3D */ lis r3, lbl_803D1A20@ha +/* 801C03DC 001BD33C 38 A3 1A 20 */ addi r5, r3, lbl_803D1A20@l +/* 801C03E0 001BD340 38 61 00 70 */ addi r3, r1, 0x70 +/* 801C03E4 001BD344 81 84 00 00 */ lwz r12, 0(r4) +/* 801C03E8 001BD348 38 A5 00 2A */ addi r5, r5, 0x2a +/* 801C03EC 001BD34C 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801C03F0 001BD350 7D 89 03 A6 */ mtctr r12 +/* 801C03F4 001BD354 4E 80 04 21 */ bctrl +/* 801C03F8 001BD358 3A 1F 03 60 */ addi r16, r31, 0x360 +/* 801C03FC 001BD35C 38 81 00 70 */ addi r4, r1, 0x70 +/* 801C0400 001BD360 7E 03 83 78 */ mr r3, r16 +/* 801C0404 001BD364 48 18 0A A5 */ bl __ct__6CTokenFRC6CToken +/* 801C0408 001BD368 7E 03 83 78 */ mr r3, r16 +/* 801C040C 001BD36C 48 18 0A 01 */ bl GetObj__6CTokenFv +/* 801C0410 001BD370 80 03 00 04 */ lwz r0, 4(r3) +/* 801C0414 001BD374 38 61 00 70 */ addi r3, r1, 0x70 +/* 801C0418 001BD378 38 80 FF FF */ li r4, -1 +/* 801C041C 001BD37C 90 10 00 08 */ stw r0, 8(r16) +/* 801C0420 001BD380 48 18 0A 21 */ bl __dt__6CTokenFv +/* 801C0424 001BD384 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801C0428 001BD388 3C 60 80 3D */ lis r3, lbl_803D1A20@ha +/* 801C042C 001BD38C 38 A3 1A 20 */ addi r5, r3, lbl_803D1A20@l +/* 801C0430 001BD390 38 61 00 68 */ addi r3, r1, 0x68 +/* 801C0434 001BD394 81 84 00 00 */ lwz r12, 0(r4) +/* 801C0438 001BD398 38 A5 00 38 */ addi r5, r5, 0x38 +/* 801C043C 001BD39C 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801C0440 001BD3A0 7D 89 03 A6 */ mtctr r12 +/* 801C0444 001BD3A4 4E 80 04 21 */ bctrl +/* 801C0448 001BD3A8 3A 1F 03 6C */ addi r16, r31, 0x36c +/* 801C044C 001BD3AC 38 81 00 68 */ addi r4, r1, 0x68 +/* 801C0450 001BD3B0 7E 03 83 78 */ mr r3, r16 +/* 801C0454 001BD3B4 48 18 0A 55 */ bl __ct__6CTokenFRC6CToken +/* 801C0458 001BD3B8 7E 03 83 78 */ mr r3, r16 +/* 801C045C 001BD3BC 48 18 09 B1 */ bl GetObj__6CTokenFv +/* 801C0460 001BD3C0 80 03 00 04 */ lwz r0, 4(r3) +/* 801C0464 001BD3C4 38 61 00 68 */ addi r3, r1, 0x68 +/* 801C0468 001BD3C8 38 80 FF FF */ li r4, -1 +/* 801C046C 001BD3CC 90 10 00 08 */ stw r0, 8(r16) +/* 801C0470 001BD3D0 48 18 09 D1 */ bl __dt__6CTokenFv +/* 801C0474 001BD3D4 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801C0478 001BD3D8 3C 60 80 3D */ lis r3, lbl_803D1A20@ha +/* 801C047C 001BD3DC 38 A3 1A 20 */ addi r5, r3, lbl_803D1A20@l +/* 801C0480 001BD3E0 38 61 00 60 */ addi r3, r1, 0x60 +/* 801C0484 001BD3E4 81 84 00 00 */ lwz r12, 0(r4) +/* 801C0488 001BD3E8 38 A5 00 45 */ addi r5, r5, 0x45 +/* 801C048C 001BD3EC 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801C0490 001BD3F0 7D 89 03 A6 */ mtctr r12 +/* 801C0494 001BD3F4 4E 80 04 21 */ bctrl +/* 801C0498 001BD3F8 3A 1F 03 78 */ addi r16, r31, 0x378 +/* 801C049C 001BD3FC 38 81 00 60 */ addi r4, r1, 0x60 +/* 801C04A0 001BD400 7E 03 83 78 */ mr r3, r16 +/* 801C04A4 001BD404 48 18 0A 05 */ bl __ct__6CTokenFRC6CToken +/* 801C04A8 001BD408 7E 03 83 78 */ mr r3, r16 +/* 801C04AC 001BD40C 48 18 09 61 */ bl GetObj__6CTokenFv +/* 801C04B0 001BD410 80 03 00 04 */ lwz r0, 4(r3) +/* 801C04B4 001BD414 38 61 00 60 */ addi r3, r1, 0x60 +/* 801C04B8 001BD418 38 80 FF FF */ li r4, -1 +/* 801C04BC 001BD41C 90 10 00 08 */ stw r0, 8(r16) +/* 801C04C0 001BD420 48 18 09 81 */ bl __dt__6CTokenFv +/* 801C04C4 001BD424 3C 60 80 3D */ lis r3, lbl_803D1A20@ha +/* 801C04C8 001BD428 3A 20 00 00 */ li r17, 0 +/* 801C04CC 001BD42C 38 83 1A 20 */ addi r4, r3, lbl_803D1A20@l +/* 801C04D0 001BD430 38 60 02 10 */ li r3, 0x210 +/* 801C04D4 001BD434 38 84 00 51 */ addi r4, r4, 0x51 +/* 801C04D8 001BD438 38 A0 00 00 */ li r5, 0 +/* 801C04DC 001BD43C 48 15 53 91 */ bl __nw__FUlPCcPCc +/* 801C04E0 001BD440 7C 70 1B 79 */ or. r16, r3, r3 +/* 801C04E4 001BD444 41 82 00 28 */ beq lbl_801C050C +/* 801C04E8 001BD448 38 61 00 58 */ addi r3, r1, 0x58 +/* 801C04EC 001BD44C 38 9F 03 54 */ addi r4, r31, 0x354 +/* 801C04F0 001BD450 48 18 09 B9 */ bl __ct__6CTokenFRC6CToken +/* 801C04F4 001BD454 7E 03 83 78 */ mr r3, r16 +/* 801C04F8 001BD458 38 81 00 58 */ addi r4, r1, 0x58 +/* 801C04FC 001BD45C 3A 20 00 01 */ li r17, 1 +/* 801C0500 001BD460 38 A0 00 00 */ li r5, 0 +/* 801C0504 001BD464 48 16 E8 E1 */ bl "__ct__15CParticleSwooshF28TToken<18CSwooshDescription>i" +/* 801C0508 001BD468 7C 70 1B 78 */ mr r16, r3 +lbl_801C050C: +/* 801C050C 001BD46C 7E 20 07 75 */ extsb. r0, r17 +/* 801C0510 001BD470 92 1F 03 84 */ stw r16, 0x384(r31) +/* 801C0514 001BD474 41 82 00 10 */ beq lbl_801C0524 +/* 801C0518 001BD478 38 61 00 58 */ addi r3, r1, 0x58 +/* 801C051C 001BD47C 38 80 00 00 */ li r4, 0 +/* 801C0520 001BD480 48 18 09 21 */ bl __dt__6CTokenFv +lbl_801C0524: +/* 801C0524 001BD484 3C 60 80 3D */ lis r3, lbl_803D1A20@ha +/* 801C0528 001BD488 3A 20 00 00 */ li r17, 0 +/* 801C052C 001BD48C 38 83 1A 20 */ addi r4, r3, lbl_803D1A20@l +/* 801C0530 001BD490 38 60 02 10 */ li r3, 0x210 +/* 801C0534 001BD494 38 84 00 51 */ addi r4, r4, 0x51 +/* 801C0538 001BD498 38 A0 00 00 */ li r5, 0 +/* 801C053C 001BD49C 48 15 53 31 */ bl __nw__FUlPCcPCc +/* 801C0540 001BD4A0 7C 70 1B 79 */ or. r16, r3, r3 +/* 801C0544 001BD4A4 41 82 00 28 */ beq lbl_801C056C +/* 801C0548 001BD4A8 38 61 00 50 */ addi r3, r1, 0x50 +/* 801C054C 001BD4AC 38 9F 03 60 */ addi r4, r31, 0x360 +/* 801C0550 001BD4B0 48 18 09 59 */ bl __ct__6CTokenFRC6CToken +/* 801C0554 001BD4B4 7E 03 83 78 */ mr r3, r16 +/* 801C0558 001BD4B8 38 81 00 50 */ addi r4, r1, 0x50 +/* 801C055C 001BD4BC 3A 20 00 01 */ li r17, 1 +/* 801C0560 001BD4C0 38 A0 00 00 */ li r5, 0 +/* 801C0564 001BD4C4 48 16 E8 81 */ bl "__ct__15CParticleSwooshF28TToken<18CSwooshDescription>i" +/* 801C0568 001BD4C8 7C 70 1B 78 */ mr r16, r3 +lbl_801C056C: +/* 801C056C 001BD4CC 7E 20 07 75 */ extsb. r0, r17 +/* 801C0570 001BD4D0 92 1F 03 88 */ stw r16, 0x388(r31) +/* 801C0574 001BD4D4 41 82 00 10 */ beq lbl_801C0584 +/* 801C0578 001BD4D8 38 61 00 50 */ addi r3, r1, 0x50 +/* 801C057C 001BD4DC 38 80 00 00 */ li r4, 0 +/* 801C0580 001BD4E0 48 18 08 C1 */ bl __dt__6CTokenFv +lbl_801C0584: +/* 801C0584 001BD4E4 3C 60 80 3D */ lis r3, lbl_803D1A20@ha +/* 801C0588 001BD4E8 3A 20 00 00 */ li r17, 0 +/* 801C058C 001BD4EC 38 83 1A 20 */ addi r4, r3, lbl_803D1A20@l +/* 801C0590 001BD4F0 38 60 03 40 */ li r3, 0x340 +/* 801C0594 001BD4F4 38 84 00 51 */ addi r4, r4, 0x51 +/* 801C0598 001BD4F8 38 A0 00 00 */ li r5, 0 +/* 801C059C 001BD4FC 48 15 52 D1 */ bl __nw__FUlPCcPCc +/* 801C05A0 001BD500 7C 70 1B 79 */ or. r16, r3, r3 +/* 801C05A4 001BD504 41 82 00 2C */ beq lbl_801C05D0 +/* 801C05A8 001BD508 38 61 00 48 */ addi r3, r1, 0x48 +/* 801C05AC 001BD50C 38 9F 03 6C */ addi r4, r31, 0x36c +/* 801C05B0 001BD510 48 18 08 F9 */ bl __ct__6CTokenFRC6CToken +/* 801C05B4 001BD514 7E 03 83 78 */ mr r3, r16 +/* 801C05B8 001BD518 38 81 00 48 */ addi r4, r1, 0x48 +/* 801C05BC 001BD51C 3A 20 00 01 */ li r17, 1 +/* 801C05C0 001BD520 38 A0 00 00 */ li r5, 0 +/* 801C05C4 001BD524 38 C0 00 01 */ li r6, 1 +/* 801C05C8 001BD528 48 15 EE 19 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 801C05CC 001BD52C 7C 70 1B 78 */ mr r16, r3 +lbl_801C05D0: +/* 801C05D0 001BD530 7E 20 07 75 */ extsb. r0, r17 +/* 801C05D4 001BD534 92 1F 03 8C */ stw r16, 0x38c(r31) +/* 801C05D8 001BD538 41 82 00 10 */ beq lbl_801C05E8 +/* 801C05DC 001BD53C 38 61 00 48 */ addi r3, r1, 0x48 +/* 801C05E0 001BD540 38 80 00 00 */ li r4, 0 +/* 801C05E4 001BD544 48 18 08 5D */ bl __dt__6CTokenFv +lbl_801C05E8: +/* 801C05E8 001BD548 3C 60 80 3D */ lis r3, lbl_803D1A20@ha +/* 801C05EC 001BD54C 3A 20 00 00 */ li r17, 0 +/* 801C05F0 001BD550 38 83 1A 20 */ addi r4, r3, lbl_803D1A20@l +/* 801C05F4 001BD554 38 60 03 40 */ li r3, 0x340 +/* 801C05F8 001BD558 38 84 00 51 */ addi r4, r4, 0x51 +/* 801C05FC 001BD55C 38 A0 00 00 */ li r5, 0 +/* 801C0600 001BD560 48 15 52 6D */ bl __nw__FUlPCcPCc +/* 801C0604 001BD564 7C 70 1B 79 */ or. r16, r3, r3 +/* 801C0608 001BD568 41 82 00 2C */ beq lbl_801C0634 +/* 801C060C 001BD56C 38 61 00 40 */ addi r3, r1, 0x40 +/* 801C0610 001BD570 38 9F 03 78 */ addi r4, r31, 0x378 +/* 801C0614 001BD574 48 18 08 95 */ bl __ct__6CTokenFRC6CToken +/* 801C0618 001BD578 7E 03 83 78 */ mr r3, r16 +/* 801C061C 001BD57C 38 81 00 40 */ addi r4, r1, 0x40 +/* 801C0620 001BD580 3A 20 00 01 */ li r17, 1 +/* 801C0624 001BD584 38 A0 00 00 */ li r5, 0 +/* 801C0628 001BD588 38 C0 00 01 */ li r6, 1 +/* 801C062C 001BD58C 48 15 ED B5 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 801C0630 001BD590 7C 70 1B 78 */ mr r16, r3 +lbl_801C0634: +/* 801C0634 001BD594 7E 20 07 75 */ extsb. r0, r17 +/* 801C0638 001BD598 92 1F 03 90 */ stw r16, 0x390(r31) +/* 801C063C 001BD59C 41 82 00 10 */ beq lbl_801C064C +/* 801C0640 001BD5A0 38 61 00 40 */ addi r3, r1, 0x40 +/* 801C0644 001BD5A4 38 80 00 00 */ li r4, 0 +/* 801C0648 001BD5A8 48 18 07 F9 */ bl __dt__6CTokenFv +lbl_801C064C: +/* 801C064C 001BD5AC 38 7F 03 94 */ addi r3, r31, 0x394 +/* 801C0650 001BD5B0 38 80 00 63 */ li r4, 0x63 +/* 801C0654 001BD5B4 48 15 1F 99 */ bl __ct__9CRandom16FUi +/* 801C0658 001BD5B8 C0 02 AA 20 */ lfs f0, lbl_805AC740@sda21(r2) +/* 801C065C 001BD5BC 38 80 00 00 */ li r4, 0 +/* 801C0660 001BD5C0 C0 22 A9 F8 */ lfs f1, lbl_805AC718@sda21(r2) +/* 801C0664 001BD5C4 38 60 00 01 */ li r3, 1 +/* 801C0668 001BD5C8 D0 1F 03 98 */ stfs f0, 0x398(r31) +/* 801C066C 001BD5CC 3A 00 00 00 */ li r16, 0 +/* 801C0670 001BD5D0 C0 02 AA 04 */ lfs f0, lbl_805AC724@sda21(r2) +/* 801C0674 001BD5D4 D0 3F 03 9C */ stfs f1, 0x39c(r31) +/* 801C0678 001BD5D8 D0 3F 03 A0 */ stfs f1, 0x3a0(r31) +/* 801C067C 001BD5DC D0 1F 03 A4 */ stfs f0, 0x3a4(r31) +/* 801C0680 001BD5E0 D0 1F 03 A8 */ stfs f0, 0x3a8(r31) +/* 801C0684 001BD5E4 D0 1F 03 AC */ stfs f0, 0x3ac(r31) +/* 801C0688 001BD5E8 D0 1F 03 B0 */ stfs f0, 0x3b0(r31) +/* 801C068C 001BD5EC D0 1F 03 B4 */ stfs f0, 0x3b4(r31) +/* 801C0690 001BD5F0 D0 1F 03 B8 */ stfs f0, 0x3b8(r31) +/* 801C0694 001BD5F4 D0 1F 03 BC */ stfs f0, 0x3bc(r31) +/* 801C0698 001BD5F8 D0 1F 03 C0 */ stfs f0, 0x3c0(r31) +/* 801C069C 001BD5FC D0 1F 03 C4 */ stfs f0, 0x3c4(r31) +/* 801C06A0 001BD600 D0 1F 03 C8 */ stfs f0, 0x3c8(r31) +/* 801C06A4 001BD604 90 9F 03 CC */ stw r4, 0x3cc(r31) +/* 801C06A8 001BD608 88 1F 03 D0 */ lbz r0, 0x3d0(r31) +/* 801C06AC 001BD60C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801C06B0 001BD610 98 1F 03 D0 */ stb r0, 0x3d0(r31) +/* 801C06B4 001BD614 88 1F 03 D0 */ lbz r0, 0x3d0(r31) +/* 801C06B8 001BD618 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801C06BC 001BD61C 98 1F 03 D0 */ stb r0, 0x3d0(r31) +/* 801C06C0 001BD620 88 1F 03 D0 */ lbz r0, 0x3d0(r31) +/* 801C06C4 001BD624 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 801C06C8 001BD628 98 1F 03 D0 */ stb r0, 0x3d0(r31) +/* 801C06CC 001BD62C 88 1F 03 D0 */ lbz r0, 0x3d0(r31) +/* 801C06D0 001BD630 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 801C06D4 001BD634 98 1F 03 D0 */ stb r0, 0x3d0(r31) +/* 801C06D8 001BD638 88 1F 03 D0 */ lbz r0, 0x3d0(r31) +/* 801C06DC 001BD63C 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801C06E0 001BD640 98 1F 03 D0 */ stb r0, 0x3d0(r31) +/* 801C06E4 001BD644 82 FF 03 84 */ lwz r23, 0x384(r31) +/* 801C06E8 001BD648 48 00 00 60 */ b lbl_801C0748 +lbl_801C06EC: +/* 801C06EC 001BD64C 80 7F 03 84 */ lwz r3, 0x384(r31) +/* 801C06F0 001BD650 38 80 00 01 */ li r4, 1 +/* 801C06F4 001BD654 C8 22 AA 60 */ lfd f1, lbl_805AC780@sda21(r2) +/* 801C06F8 001BD658 88 03 01 D0 */ lbz r0, 0x1d0(r3) +/* 801C06FC 001BD65C 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 801C0700 001BD660 98 03 01 D0 */ stb r0, 0x1d0(r3) +/* 801C0704 001BD664 80 7F 03 84 */ lwz r3, 0x384(r31) +/* 801C0708 001BD668 81 83 00 00 */ lwz r12, 0(r3) +/* 801C070C 001BD66C 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801C0710 001BD670 7D 89 03 A6 */ mtctr r12 +/* 801C0714 001BD674 4E 80 04 21 */ bctrl +/* 801C0718 001BD678 80 7F 03 88 */ lwz r3, 0x388(r31) +/* 801C071C 001BD67C 38 80 00 01 */ li r4, 1 +/* 801C0720 001BD680 C8 22 AA 60 */ lfd f1, lbl_805AC780@sda21(r2) +/* 801C0724 001BD684 88 03 01 D0 */ lbz r0, 0x1d0(r3) +/* 801C0728 001BD688 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 801C072C 001BD68C 98 03 01 D0 */ stb r0, 0x1d0(r3) +/* 801C0730 001BD690 80 7F 03 88 */ lwz r3, 0x388(r31) +/* 801C0734 001BD694 81 83 00 00 */ lwz r12, 0(r3) +/* 801C0738 001BD698 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801C073C 001BD69C 7D 89 03 A6 */ mtctr r12 +/* 801C0740 001BD6A0 4E 80 04 21 */ bctrl +/* 801C0744 001BD6A4 3A 10 00 01 */ addi r16, r16, 1 +lbl_801C0748: +/* 801C0748 001BD6A8 80 77 01 60 */ lwz r3, 0x160(r23) +/* 801C074C 001BD6AC 38 03 FF FF */ addi r0, r3, -1 +/* 801C0750 001BD6B0 7C 10 00 00 */ cmpw r16, r0 +/* 801C0754 001BD6B4 41 80 FF 98 */ blt lbl_801C06EC +/* 801C0758 001BD6B8 7F E3 FB 78 */ mr r3, r31 +/* 801C075C 001BD6BC BA 01 00 D0 */ lmw r16, 0xd0(r1) +/* 801C0760 001BD6C0 80 01 01 14 */ lwz r0, 0x114(r1) +/* 801C0764 001BD6C4 7C 08 03 A6 */ mtlr r0 +/* 801C0768 001BD6C8 38 21 01 10 */ addi r1, r1, 0x110 +/* 801C076C 001BD6CC 4E 80 00 20 */ blr + +.global __sinit_CWaveBuster_cpp +__sinit_CWaveBuster_cpp: +/* 801C0770 001BD6D0 C0 82 AA 04 */ lfs f4, lbl_805AC724@sda21(r2) +/* 801C0774 001BD6D4 3C 80 80 47 */ lis r4, lbl_8046C908@ha +/* 801C0778 001BD6D8 3C 60 80 47 */ lis r3, lbl_8046C914@ha +/* 801C077C 001BD6DC C0 62 AA 68 */ lfs f3, lbl_805AC788@sda21(r2) +/* 801C0780 001BD6E0 D4 84 C9 08 */ stfsu f4, lbl_8046C908@l(r4) +/* 801C0784 001BD6E4 C0 42 AA 6C */ lfs f2, lbl_805AC78C@sda21(r2) +/* 801C0788 001BD6E8 C0 22 AA 70 */ lfs f1, lbl_805AC790@sda21(r2) +/* 801C078C 001BD6EC D4 83 C9 14 */ stfsu f4, lbl_8046C914@l(r3) +/* 801C0790 001BD6F0 C0 02 AA 74 */ lfs f0, lbl_805AC794@sda21(r2) +/* 801C0794 001BD6F4 D0 64 00 04 */ stfs f3, 4(r4) +/* 801C0798 001BD6F8 D0 44 00 08 */ stfs f2, 8(r4) +/* 801C079C 001BD6FC D0 23 00 04 */ stfs f1, 4(r3) +/* 801C07A0 001BD700 D0 03 00 08 */ stfs f0, 8(r3) +/* 801C07A4 001BD704 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Weapons/GunController/CGSComboFire.s b/asm/Kyoto_CWD/Weapons/GunController/CGSComboFire.s new file mode 100644 index 00000000..123f7707 --- /dev/null +++ b/asm/Kyoto_CWD/Weapons/GunController/CGSComboFire.s @@ -0,0 +1,279 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global SetAnim__12CGSComboFireFR9CAnimDataiiR13CStateManagerf +SetAnim__12CGSComboFireFR9CAnimDataiiR13CStateManagerf: +/* 801CD0A0 001CA000 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 801CD0A4 001CA004 7C 08 02 A6 */ mflr r0 +/* 801CD0A8 001CA008 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 801CD0AC 001CA00C DB E1 00 E0 */ stfd f31, 0xe0(r1) +/* 801CD0B0 001CA010 F3 E1 00 E8 */ psq_st f31, 232(r1), 0, qr0 +/* 801CD0B4 001CA014 BF 61 00 CC */ stmw r27, 0xcc(r1) +/* 801CD0B8 001CA018 88 03 00 10 */ lbz r0, 0x10(r3) +/* 801CD0BC 001CA01C FF E0 08 90 */ fmr f31, f1 +/* 801CD0C0 001CA020 7C 7C 1B 78 */ mr r28, r3 +/* 801CD0C4 001CA024 7C 9D 23 78 */ mr r29, r4 +/* 801CD0C8 001CA028 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801CD0CC 001CA02C 7C BE 2B 78 */ mr r30, r5 +/* 801CD0D0 001CA030 7C FF 3B 78 */ mr r31, r7 +/* 801CD0D4 001CA034 3B 60 00 02 */ li r27, 2 +/* 801CD0D8 001CA038 40 82 00 08 */ bne lbl_801CD0E0 +/* 801CD0DC 001CA03C 7C DB 33 78 */ mr r27, r6 +lbl_801CD0E0: +/* 801CD0E0 001CA040 88 1C 00 10 */ lbz r0, 0x10(r28) +/* 801CD0E4 001CA044 38 60 00 00 */ li r3, 0 +/* 801CD0E8 001CA048 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801CD0EC 001CA04C 38 61 00 10 */ addi r3, r1, 0x10 +/* 801CD0F0 001CA050 98 1C 00 10 */ stb r0, 0x10(r28) +/* 801CD0F4 001CA054 48 11 5F 89 */ bl NoParameter__12CPASAnimParmFv +/* 801CD0F8 001CA058 38 61 00 18 */ addi r3, r1, 0x18 +/* 801CD0FC 001CA05C 48 11 5F 81 */ bl NoParameter__12CPASAnimParmFv +/* 801CD100 001CA060 38 61 00 20 */ addi r3, r1, 0x20 +/* 801CD104 001CA064 48 11 5F 79 */ bl NoParameter__12CPASAnimParmFv +/* 801CD108 001CA068 38 61 00 28 */ addi r3, r1, 0x28 +/* 801CD10C 001CA06C 48 11 5F 71 */ bl NoParameter__12CPASAnimParmFv +/* 801CD110 001CA070 38 61 00 30 */ addi r3, r1, 0x30 +/* 801CD114 001CA074 48 11 5F 69 */ bl NoParameter__12CPASAnimParmFv +/* 801CD118 001CA078 38 61 00 38 */ addi r3, r1, 0x38 +/* 801CD11C 001CA07C 48 11 5F 61 */ bl NoParameter__12CPASAnimParmFv +/* 801CD120 001CA080 7F 64 DB 78 */ mr r4, r27 +/* 801CD124 001CA084 38 61 00 40 */ addi r3, r1, 0x40 +/* 801CD128 001CA088 48 11 5E 5D */ bl FromEnum__12CPASAnimParmFi +/* 801CD12C 001CA08C 7F C4 F3 78 */ mr r4, r30 +/* 801CD130 001CA090 38 61 00 48 */ addi r3, r1, 0x48 +/* 801CD134 001CA094 48 11 5F 19 */ bl FromInt32__12CPASAnimParmFi +/* 801CD138 001CA098 38 61 00 18 */ addi r3, r1, 0x18 +/* 801CD13C 001CA09C 38 01 00 10 */ addi r0, r1, 0x10 +/* 801CD140 001CA0A0 90 61 00 08 */ stw r3, 8(r1) +/* 801CD144 001CA0A4 38 61 00 80 */ addi r3, r1, 0x80 +/* 801CD148 001CA0A8 38 A1 00 48 */ addi r5, r1, 0x48 +/* 801CD14C 001CA0AC 38 C1 00 40 */ addi r6, r1, 0x40 +/* 801CD150 001CA0B0 90 01 00 0C */ stw r0, 0xc(r1) +/* 801CD154 001CA0B4 38 E1 00 38 */ addi r7, r1, 0x38 +/* 801CD158 001CA0B8 39 01 00 30 */ addi r8, r1, 0x30 +/* 801CD15C 001CA0BC 39 21 00 28 */ addi r9, r1, 0x28 +/* 801CD160 001CA0C0 39 41 00 20 */ addi r10, r1, 0x20 +/* 801CD164 001CA0C4 38 80 00 04 */ li r4, 4 +/* 801CD168 001CA0C8 4B EB 01 5D */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 801CD16C 001CA0CC 80 DF 09 00 */ lwz r6, 0x900(r31) +/* 801CD170 001CA0D0 38 61 00 50 */ addi r3, r1, 0x50 +/* 801CD174 001CA0D4 38 9D 00 3C */ addi r4, r29, 0x3c +/* 801CD178 001CA0D8 38 A1 00 80 */ addi r5, r1, 0x80 +/* 801CD17C 001CA0DC 38 E0 FF FF */ li r7, -1 +/* 801CD180 001CA0E0 48 11 7E E1 */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i +/* 801CD184 001CA0E4 34 A1 00 84 */ addic. r5, r1, 0x84 +/* 801CD188 001CA0E8 83 E1 00 54 */ lwz r31, 0x54(r1) +/* 801CD18C 001CA0EC 41 82 00 58 */ beq lbl_801CD1E4 +/* 801CD190 001CA0F0 80 C5 00 00 */ lwz r6, 0(r5) +/* 801CD194 001CA0F4 38 60 00 00 */ li r3, 0 +/* 801CD198 001CA0F8 2C 06 00 00 */ cmpwi r6, 0 +/* 801CD19C 001CA0FC 40 81 00 40 */ ble lbl_801CD1DC +/* 801CD1A0 001CA100 2C 06 00 08 */ cmpwi r6, 8 +/* 801CD1A4 001CA104 38 86 FF F8 */ addi r4, r6, -8 +/* 801CD1A8 001CA108 40 81 00 20 */ ble lbl_801CD1C8 +/* 801CD1AC 001CA10C 38 04 00 07 */ addi r0, r4, 7 +/* 801CD1B0 001CA110 54 00 E8 FE */ srwi r0, r0, 3 +/* 801CD1B4 001CA114 7C 09 03 A6 */ mtctr r0 +/* 801CD1B8 001CA118 2C 04 00 00 */ cmpwi r4, 0 +/* 801CD1BC 001CA11C 40 81 00 0C */ ble lbl_801CD1C8 +lbl_801CD1C0: +/* 801CD1C0 001CA120 38 63 00 08 */ addi r3, r3, 8 +/* 801CD1C4 001CA124 42 00 FF FC */ bdnz lbl_801CD1C0 +lbl_801CD1C8: +/* 801CD1C8 001CA128 7C 03 30 50 */ subf r0, r3, r6 +/* 801CD1CC 001CA12C 7C 09 03 A6 */ mtctr r0 +/* 801CD1D0 001CA130 7C 03 30 00 */ cmpw r3, r6 +/* 801CD1D4 001CA134 40 80 00 08 */ bge lbl_801CD1DC +lbl_801CD1D8: +/* 801CD1D8 001CA138 42 00 00 00 */ bdnz lbl_801CD1D8 +lbl_801CD1DC: +/* 801CD1DC 001CA13C 38 00 00 00 */ li r0, 0 +/* 801CD1E0 001CA140 90 05 00 00 */ stw r0, 0(r5) +lbl_801CD1E4: +/* 801CD1E4 001CA144 88 1C 00 10 */ lbz r0, 0x10(r28) +/* 801CD1E8 001CA148 39 00 00 00 */ li r8, 0 +/* 801CD1EC 001CA14C 51 00 3E 30 */ rlwimi r0, r8, 7, 0x18, 0x18 +/* 801CD1F0 001CA150 C0 02 AB 90 */ lfs f0, lbl_805AC8B0@sda21(r2) +/* 801CD1F4 001CA154 98 1C 00 10 */ stb r0, 0x10(r28) +/* 801CD1F8 001CA158 FC 00 F8 00 */ fcmpu cr0, f0, f31 +/* 801CD1FC 001CA15C 93 DC 00 0C */ stw r30, 0xc(r28) +/* 801CD200 001CA160 93 7C 00 04 */ stw r27, 4(r28) +/* 801CD204 001CA164 41 82 00 10 */ beq lbl_801CD214 +/* 801CD208 001CA168 D3 FC 00 00 */ stfs f31, 0(r28) +/* 801CD20C 001CA16C 93 FC 00 08 */ stw r31, 8(r28) +/* 801CD210 001CA170 48 00 00 68 */ b lbl_801CD278 +lbl_801CD214: +/* 801CD214 001CA174 20 1B 00 01 */ subfic r0, r27, 1 +/* 801CD218 001CA178 88 7D 02 20 */ lbz r3, 0x220(r29) +/* 801CD21C 001CA17C 7C 00 00 34 */ cntlzw r0, r0 +/* 801CD220 001CA180 38 E0 00 01 */ li r7, 1 +/* 801CD224 001CA184 50 03 0E 72 */ rlwimi r3, r0, 1, 0x19, 0x19 +/* 801CD228 001CA188 C0 02 AB 94 */ lfs f0, lbl_805AC8B4@sda21(r2) +/* 801CD22C 001CA18C 98 7D 02 20 */ stb r3, 0x220(r29) +/* 801CD230 001CA190 38 00 FF FF */ li r0, -1 +/* 801CD234 001CA194 7F A3 EB 78 */ mr r3, r29 +/* 801CD238 001CA198 38 81 00 58 */ addi r4, r1, 0x58 +/* 801CD23C 001CA19C 88 DD 02 20 */ lbz r6, 0x220(r29) +/* 801CD240 001CA1A0 50 E6 3E 30 */ rlwimi r6, r7, 7, 0x18, 0x18 +/* 801CD244 001CA1A4 38 A0 00 00 */ li r5, 0 +/* 801CD248 001CA1A8 98 DD 02 20 */ stb r6, 0x220(r29) +/* 801CD24C 001CA1AC 93 E1 00 58 */ stw r31, 0x58(r1) +/* 801CD250 001CA1B0 90 01 00 5C */ stw r0, 0x5c(r1) +/* 801CD254 001CA1B4 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 801CD258 001CA1B8 98 E1 00 64 */ stb r7, 0x64(r1) +/* 801CD25C 001CA1BC 91 01 00 68 */ stw r8, 0x68(r1) +/* 801CD260 001CA1C0 91 01 00 6C */ stw r8, 0x6c(r1) +/* 801CD264 001CA1C4 99 01 00 70 */ stb r8, 0x70(r1) +/* 801CD268 001CA1C8 91 01 00 74 */ stw r8, 0x74(r1) +/* 801CD26C 001CA1CC 91 01 00 78 */ stw r8, 0x78(r1) +/* 801CD270 001CA1D0 91 01 00 7C */ stw r8, 0x7c(r1) +/* 801CD274 001CA1D4 4B E5 FB 09 */ bl SetAnimation__9CAnimDataFRC18CAnimPlaybackParmsb +lbl_801CD278: +/* 801CD278 001CA1D8 7F E3 FB 78 */ mr r3, r31 +/* 801CD27C 001CA1DC E3 E1 00 E8 */ psq_l f31, 232(r1), 0, qr0 +/* 801CD280 001CA1E0 CB E1 00 E0 */ lfd f31, 0xe0(r1) +/* 801CD284 001CA1E4 BB 61 00 CC */ lmw r27, 0xcc(r1) +/* 801CD288 001CA1E8 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 801CD28C 001CA1EC 7C 08 03 A6 */ mtlr r0 +/* 801CD290 001CA1F0 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 801CD294 001CA1F4 4E 80 00 20 */ blr + +.global Update__12CGSComboFireFR9CAnimDatafR13CStateManager +Update__12CGSComboFireFR9CAnimDatafR13CStateManager: +/* 801CD298 001CA1F8 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801CD29C 001CA1FC 7C 08 02 A6 */ mflr r0 +/* 801CD2A0 001CA200 90 01 00 54 */ stw r0, 0x54(r1) +/* 801CD2A4 001CA204 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801CD2A8 001CA208 7C 9F 23 78 */ mr r31, r4 +/* 801CD2AC 001CA20C 93 C1 00 48 */ stw r30, 0x48(r1) +/* 801CD2B0 001CA210 7C 7E 1B 78 */ mr r30, r3 +/* 801CD2B4 001CA214 93 A1 00 44 */ stw r29, 0x44(r1) +/* 801CD2B8 001CA218 93 81 00 40 */ stw r28, 0x40(r1) +/* 801CD2BC 001CA21C 7C BC 2B 78 */ mr r28, r5 +/* 801CD2C0 001CA220 80 03 00 08 */ lwz r0, 8(r3) +/* 801CD2C4 001CA224 2C 00 FF FF */ cmpwi r0, -1 +/* 801CD2C8 001CA228 41 82 00 AC */ beq lbl_801CD374 +/* 801CD2CC 001CA22C C0 5E 00 00 */ lfs f2, 0(r30) +/* 801CD2D0 001CA230 C0 02 AB 90 */ lfs f0, lbl_805AC8B0@sda21(r2) +/* 801CD2D4 001CA234 EC 22 08 28 */ fsubs f1, f2, f1 +/* 801CD2D8 001CA238 D0 3E 00 00 */ stfs f1, 0(r30) +/* 801CD2DC 001CA23C C0 3E 00 00 */ lfs f1, 0(r30) +/* 801CD2E0 001CA240 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801CD2E4 001CA244 4C 40 13 82 */ cror 2, 0, 2 +/* 801CD2E8 001CA248 40 82 01 4C */ bne lbl_801CD434 +/* 801CD2EC 001CA24C 80 1E 00 04 */ lwz r0, 4(r30) +/* 801CD2F0 001CA250 39 00 00 01 */ li r8, 1 +/* 801CD2F4 001CA254 88 9F 02 20 */ lbz r4, 0x220(r31) +/* 801CD2F8 001CA258 38 C0 FF FF */ li r6, -1 +/* 801CD2FC 001CA25C 20 00 00 01 */ subfic r0, r0, 1 +/* 801CD300 001CA260 C0 02 AB 94 */ lfs f0, lbl_805AC8B4@sda21(r2) +/* 801CD304 001CA264 7C 03 00 34 */ cntlzw r3, r0 +/* 801CD308 001CA268 54 65 DE 3E */ rlwinm r5, r3, 0x1b, 0x18, 0x1f +/* 801CD30C 001CA26C 38 00 00 00 */ li r0, 0 +/* 801CD310 001CA270 50 A4 36 72 */ rlwimi r4, r5, 6, 0x19, 0x19 +/* 801CD314 001CA274 7F E3 FB 78 */ mr r3, r31 +/* 801CD318 001CA278 98 9F 02 20 */ stb r4, 0x220(r31) +/* 801CD31C 001CA27C 38 81 00 18 */ addi r4, r1, 0x18 +/* 801CD320 001CA280 38 A0 00 00 */ li r5, 0 +/* 801CD324 001CA284 88 FF 02 20 */ lbz r7, 0x220(r31) +/* 801CD328 001CA288 51 07 3E 30 */ rlwimi r7, r8, 7, 0x18, 0x18 +/* 801CD32C 001CA28C 98 FF 02 20 */ stb r7, 0x220(r31) +/* 801CD330 001CA290 80 FE 00 08 */ lwz r7, 8(r30) +/* 801CD334 001CA294 90 E1 00 18 */ stw r7, 0x18(r1) +/* 801CD338 001CA298 90 C1 00 1C */ stw r6, 0x1c(r1) +/* 801CD33C 001CA29C D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801CD340 001CA2A0 99 01 00 24 */ stb r8, 0x24(r1) +/* 801CD344 001CA2A4 90 01 00 28 */ stw r0, 0x28(r1) +/* 801CD348 001CA2A8 90 01 00 2C */ stw r0, 0x2c(r1) +/* 801CD34C 001CA2AC 98 01 00 30 */ stb r0, 0x30(r1) +/* 801CD350 001CA2B0 90 01 00 34 */ stw r0, 0x34(r1) +/* 801CD354 001CA2B4 90 01 00 38 */ stw r0, 0x38(r1) +/* 801CD358 001CA2B8 90 01 00 3C */ stw r0, 0x3c(r1) +/* 801CD35C 001CA2BC 4B E5 FA 21 */ bl SetAnimation__9CAnimDataFRC18CAnimPlaybackParmsb +/* 801CD360 001CA2C0 C0 02 AB 90 */ lfs f0, lbl_805AC8B0@sda21(r2) +/* 801CD364 001CA2C4 38 00 FF FF */ li r0, -1 +/* 801CD368 001CA2C8 D0 1E 00 00 */ stfs f0, 0(r30) +/* 801CD36C 001CA2CC 90 1E 00 08 */ stw r0, 8(r30) +/* 801CD370 001CA2D0 48 00 00 C4 */ b lbl_801CD434 +lbl_801CD374: +/* 801CD374 001CA2D4 3C 80 80 3D */ lis r4, lbl_803D1AC8@ha +/* 801CD378 001CA2D8 38 61 00 08 */ addi r3, r1, 8 +/* 801CD37C 001CA2DC 38 84 1A C8 */ addi r4, r4, lbl_803D1AC8@l +/* 801CD380 001CA2E0 4B E3 79 39 */ bl string_l__4rstlFPCc +/* 801CD384 001CA2E4 C0 22 AB 98 */ lfs f1, lbl_805AC8B8@sda21(r2) +/* 801CD388 001CA2E8 7F E3 FB 78 */ mr r3, r31 +/* 801CD38C 001CA2EC 38 81 00 08 */ addi r4, r1, 8 +/* 801CD390 001CA2F0 4B E5 F0 5D */ bl "IsAnimTimeRemaining__9CAnimDataCFfRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801CD394 001CA2F4 7C 7D 1B 78 */ mr r29, r3 +/* 801CD398 001CA2F8 38 61 00 08 */ addi r3, r1, 8 +/* 801CD39C 001CA2FC 48 17 07 45 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801CD3A0 001CA300 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 801CD3A4 001CA304 40 82 00 90 */ bne lbl_801CD434 +/* 801CD3A8 001CA308 80 1E 00 04 */ lwz r0, 4(r30) +/* 801CD3AC 001CA30C 2C 00 00 01 */ cmpwi r0, 1 +/* 801CD3B0 001CA310 41 82 00 84 */ beq lbl_801CD434 +/* 801CD3B4 001CA314 40 80 00 10 */ bge lbl_801CD3C4 +/* 801CD3B8 001CA318 2C 00 00 00 */ cmpwi r0, 0 +/* 801CD3BC 001CA31C 40 80 00 14 */ bge lbl_801CD3D0 +/* 801CD3C0 001CA320 48 00 00 74 */ b lbl_801CD434 +lbl_801CD3C4: +/* 801CD3C4 001CA324 2C 00 00 03 */ cmpwi r0, 3 +/* 801CD3C8 001CA328 40 80 00 6C */ bge lbl_801CD434 +/* 801CD3CC 001CA32C 48 00 00 58 */ b lbl_801CD424 +lbl_801CD3D0: +/* 801CD3D0 001CA330 80 BE 00 0C */ lwz r5, 0xc(r30) +/* 801CD3D4 001CA334 7F C3 F3 78 */ mr r3, r30 +/* 801CD3D8 001CA338 C0 22 AB 90 */ lfs f1, lbl_805AC8B0@sda21(r2) +/* 801CD3DC 001CA33C 7F E4 FB 78 */ mr r4, r31 +/* 801CD3E0 001CA340 7F 87 E3 78 */ mr r7, r28 +/* 801CD3E4 001CA344 38 C0 00 01 */ li r6, 1 +/* 801CD3E8 001CA348 4B FF FC B9 */ bl SetAnim__12CGSComboFireFR9CAnimDataiiR13CStateManagerf +/* 801CD3EC 001CA34C 80 1E 00 0C */ lwz r0, 0xc(r30) +/* 801CD3F0 001CA350 2C 00 00 04 */ cmpwi r0, 4 +/* 801CD3F4 001CA354 41 82 00 1C */ beq lbl_801CD410 +/* 801CD3F8 001CA358 40 80 00 3C */ bge lbl_801CD434 +/* 801CD3FC 001CA35C 2C 00 00 02 */ cmpwi r0, 2 +/* 801CD400 001CA360 40 80 00 34 */ bge lbl_801CD434 +/* 801CD404 001CA364 2C 00 00 00 */ cmpwi r0, 0 +/* 801CD408 001CA368 40 80 00 08 */ bge lbl_801CD410 +/* 801CD40C 001CA36C 48 00 00 28 */ b lbl_801CD434 +lbl_801CD410: +/* 801CD410 001CA370 88 1E 00 10 */ lbz r0, 0x10(r30) +/* 801CD414 001CA374 38 60 00 01 */ li r3, 1 +/* 801CD418 001CA378 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801CD41C 001CA37C 98 1E 00 10 */ stb r0, 0x10(r30) +/* 801CD420 001CA380 48 00 00 14 */ b lbl_801CD434 +lbl_801CD424: +/* 801CD424 001CA384 38 00 FF FF */ li r0, -1 +/* 801CD428 001CA388 38 60 00 01 */ li r3, 1 +/* 801CD42C 001CA38C 90 1E 00 04 */ stw r0, 4(r30) +/* 801CD430 001CA390 48 00 00 08 */ b lbl_801CD438 +lbl_801CD434: +/* 801CD434 001CA394 38 60 00 00 */ li r3, 0 +lbl_801CD438: +/* 801CD438 001CA398 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801CD43C 001CA39C 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801CD440 001CA3A0 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 801CD444 001CA3A4 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 801CD448 001CA3A8 83 81 00 40 */ lwz r28, 0x40(r1) +/* 801CD44C 001CA3AC 7C 08 03 A6 */ mtlr r0 +/* 801CD450 001CA3B0 38 21 00 50 */ addi r1, r1, 0x50 +/* 801CD454 001CA3B4 4E 80 00 20 */ blr + +.global __ct__12CGSComboFireFv +__ct__12CGSComboFireFv: +/* 801CD458 001CA3B8 C0 02 AB 90 */ lfs f0, lbl_805AC8B0@sda21(r2) +/* 801CD45C 001CA3BC 38 00 FF FF */ li r0, -1 +/* 801CD460 001CA3C0 38 80 00 00 */ li r4, 0 +/* 801CD464 001CA3C4 D0 03 00 00 */ stfs f0, 0(r3) +/* 801CD468 001CA3C8 90 03 00 04 */ stw r0, 4(r3) +/* 801CD46C 001CA3CC 90 03 00 08 */ stw r0, 8(r3) +/* 801CD470 001CA3D0 90 03 00 0C */ stw r0, 0xc(r3) +/* 801CD474 001CA3D4 88 03 00 10 */ lbz r0, 0x10(r3) +/* 801CD478 001CA3D8 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801CD47C 001CA3DC 98 03 00 10 */ stb r0, 0x10(r3) +/* 801CD480 001CA3E0 88 03 00 10 */ lbz r0, 0x10(r3) +/* 801CD484 001CA3E4 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 801CD488 001CA3E8 98 03 00 10 */ stb r0, 0x10(r3) +/* 801CD48C 001CA3EC 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Weapons/GunController/CGSFidget.s b/asm/Kyoto_CWD/Weapons/GunController/CGSFidget.s new file mode 100644 index 00000000..e240ed9e --- /dev/null +++ b/asm/Kyoto_CWD/Weapons/GunController/CGSFidget.s @@ -0,0 +1,322 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global IsAnimLoaded__9CGSFidgetCFv +IsAnimLoaded__9CGSFidgetCFv: +/* 801F10C8 001EE028 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801F10CC 001EE02C 7C 08 02 A6 */ mflr r0 +/* 801F10D0 001EE030 90 01 00 14 */ stw r0, 0x14(r1) +/* 801F10D4 001EE034 48 09 A1 59 */ bl "are_tokens_ready__12NWeaponTypesFRCQ24rstl42vector<6CToken,Q24rstl17rmemory_allocator>" +/* 801F10D8 001EE038 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801F10DC 001EE03C 7C 08 03 A6 */ mtlr r0 +/* 801F10E0 001EE040 38 21 00 10 */ addi r1, r1, 0x10 +/* 801F10E4 001EE044 4E 80 00 20 */ blr + +.global UnLoadAnim__9CGSFidgetFv +UnLoadAnim__9CGSFidgetFv: +/* 801F10E8 001EE048 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801F10EC 001EE04C 7C 08 02 A6 */ mflr r0 +/* 801F10F0 001EE050 90 01 00 34 */ stw r0, 0x34(r1) +/* 801F10F4 001EE054 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801F10F8 001EE058 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801F10FC 001EE05C 80 03 00 04 */ lwz r0, 4(r3) +/* 801F1100 001EE060 2C 00 00 00 */ cmpwi r0, 0 +/* 801F1104 001EE064 41 82 00 68 */ beq lbl_801F116C +/* 801F1108 001EE068 38 00 00 00 */ li r0, 0 +/* 801F110C 001EE06C 38 81 00 18 */ addi r4, r1, 0x18 +/* 801F1110 001EE070 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801F1114 001EE074 90 01 00 20 */ stw r0, 0x20(r1) +/* 801F1118 001EE078 90 01 00 24 */ stw r0, 0x24(r1) +/* 801F111C 001EE07C 4B E1 56 E9 */ bl sub_80006804 +/* 801F1120 001EE080 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 801F1124 001EE084 83 C1 00 24 */ lwz r30, 0x24(r1) +/* 801F1128 001EE088 54 00 18 38 */ slwi r0, r0, 3 +/* 801F112C 001EE08C 7F FE 02 14 */ add r31, r30, r0 +/* 801F1130 001EE090 93 C1 00 0C */ stw r30, 0xc(r1) +/* 801F1134 001EE094 93 E1 00 14 */ stw r31, 0x14(r1) +/* 801F1138 001EE098 93 E1 00 10 */ stw r31, 0x10(r1) +/* 801F113C 001EE09C 93 C1 00 08 */ stw r30, 8(r1) +/* 801F1140 001EE0A0 48 00 00 14 */ b lbl_801F1154 +lbl_801F1144: +/* 801F1144 001EE0A4 7F C3 F3 78 */ mr r3, r30 +/* 801F1148 001EE0A8 38 80 FF FF */ li r4, -1 +/* 801F114C 001EE0AC 48 14 FC F5 */ bl __dt__6CTokenFv +/* 801F1150 001EE0B0 3B DE 00 08 */ addi r30, r30, 8 +lbl_801F1154: +/* 801F1154 001EE0B4 7C 1E F8 40 */ cmplw r30, r31 +/* 801F1158 001EE0B8 40 82 FF EC */ bne lbl_801F1144 +/* 801F115C 001EE0BC 80 61 00 24 */ lwz r3, 0x24(r1) +/* 801F1160 001EE0C0 28 03 00 00 */ cmplwi r3, 0 +/* 801F1164 001EE0C4 41 82 00 08 */ beq lbl_801F116C +/* 801F1168 001EE0C8 48 12 47 C9 */ bl Free__7CMemoryFPCv +lbl_801F116C: +/* 801F116C 001EE0CC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801F1170 001EE0D0 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801F1174 001EE0D4 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801F1178 001EE0D8 7C 08 03 A6 */ mtlr r0 +/* 801F117C 001EE0DC 38 21 00 30 */ addi r1, r1, 0x30 +/* 801F1180 001EE0E0 4E 80 00 20 */ blr + +.global LoadAnimAsync__9CGSFidgetFR9CAnimDataiiiR13CStateManager +LoadAnimAsync__9CGSFidgetFR9CAnimDataiiiR13CStateManager: +/* 801F1184 001EE0E4 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 801F1188 001EE0E8 7C 08 02 A6 */ mflr r0 +/* 801F118C 001EE0EC 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 801F1190 001EE0F0 BF 41 00 A8 */ stmw r26, 0xa8(r1) +/* 801F1194 001EE0F4 7C 7A 1B 78 */ mr r26, r3 +/* 801F1198 001EE0F8 7C 9B 23 78 */ mr r27, r4 +/* 801F119C 001EE0FC 7C BC 2B 78 */ mr r28, r5 +/* 801F11A0 001EE100 7C DD 33 78 */ mr r29, r6 +/* 801F11A4 001EE104 7C FE 3B 78 */ mr r30, r7 +/* 801F11A8 001EE108 7D 1F 43 78 */ mr r31, r8 +/* 801F11AC 001EE10C 38 61 00 10 */ addi r3, r1, 0x10 +/* 801F11B0 001EE110 48 0F 1E CD */ bl NoParameter__12CPASAnimParmFv +/* 801F11B4 001EE114 38 61 00 18 */ addi r3, r1, 0x18 +/* 801F11B8 001EE118 48 0F 1E C5 */ bl NoParameter__12CPASAnimParmFv +/* 801F11BC 001EE11C 38 61 00 20 */ addi r3, r1, 0x20 +/* 801F11C0 001EE120 48 0F 1E BD */ bl NoParameter__12CPASAnimParmFv +/* 801F11C4 001EE124 38 61 00 28 */ addi r3, r1, 0x28 +/* 801F11C8 001EE128 48 0F 1E B5 */ bl NoParameter__12CPASAnimParmFv +/* 801F11CC 001EE12C 38 61 00 30 */ addi r3, r1, 0x30 +/* 801F11D0 001EE130 48 0F 1E AD */ bl NoParameter__12CPASAnimParmFv +/* 801F11D4 001EE134 7F C4 F3 78 */ mr r4, r30 +/* 801F11D8 001EE138 38 61 00 38 */ addi r3, r1, 0x38 +/* 801F11DC 001EE13C 48 0F 1E 71 */ bl FromInt32__12CPASAnimParmFi +/* 801F11E0 001EE140 7F A4 EB 78 */ mr r4, r29 +/* 801F11E4 001EE144 38 61 00 40 */ addi r3, r1, 0x40 +/* 801F11E8 001EE148 48 0F 1E 65 */ bl FromInt32__12CPASAnimParmFi +/* 801F11EC 001EE14C 7F 84 E3 78 */ mr r4, r28 +/* 801F11F0 001EE150 38 61 00 48 */ addi r3, r1, 0x48 +/* 801F11F4 001EE154 48 0F 1D 91 */ bl FromEnum__12CPASAnimParmFi +/* 801F11F8 001EE158 38 61 00 18 */ addi r3, r1, 0x18 +/* 801F11FC 001EE15C 38 01 00 10 */ addi r0, r1, 0x10 +/* 801F1200 001EE160 90 61 00 08 */ stw r3, 8(r1) +/* 801F1204 001EE164 38 61 00 58 */ addi r3, r1, 0x58 +/* 801F1208 001EE168 38 A1 00 48 */ addi r5, r1, 0x48 +/* 801F120C 001EE16C 38 C1 00 40 */ addi r6, r1, 0x40 +/* 801F1210 001EE170 90 01 00 0C */ stw r0, 0xc(r1) +/* 801F1214 001EE174 38 E1 00 38 */ addi r7, r1, 0x38 +/* 801F1218 001EE178 39 01 00 30 */ addi r8, r1, 0x30 +/* 801F121C 001EE17C 39 21 00 28 */ addi r9, r1, 0x28 +/* 801F1220 001EE180 39 41 00 20 */ addi r10, r1, 0x20 +/* 801F1224 001EE184 38 80 00 01 */ li r4, 1 +/* 801F1228 001EE188 4B E8 C0 9D */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 801F122C 001EE18C 80 DF 09 00 */ lwz r6, 0x900(r31) +/* 801F1230 001EE190 38 61 00 50 */ addi r3, r1, 0x50 +/* 801F1234 001EE194 38 9B 00 3C */ addi r4, r27, 0x3c +/* 801F1238 001EE198 38 A1 00 58 */ addi r5, r1, 0x58 +/* 801F123C 001EE19C 38 E0 FF FF */ li r7, -1 +/* 801F1240 001EE1A0 48 0F 3E 21 */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i +/* 801F1244 001EE1A4 34 C1 00 5C */ addic. r6, r1, 0x5c +/* 801F1248 001EE1A8 80 81 00 54 */ lwz r4, 0x54(r1) +/* 801F124C 001EE1AC 41 82 00 58 */ beq lbl_801F12A4 +/* 801F1250 001EE1B0 80 E6 00 00 */ lwz r7, 0(r6) +/* 801F1254 001EE1B4 38 60 00 00 */ li r3, 0 +/* 801F1258 001EE1B8 2C 07 00 00 */ cmpwi r7, 0 +/* 801F125C 001EE1BC 40 81 00 40 */ ble lbl_801F129C +/* 801F1260 001EE1C0 2C 07 00 08 */ cmpwi r7, 8 +/* 801F1264 001EE1C4 38 A7 FF F8 */ addi r5, r7, -8 +/* 801F1268 001EE1C8 40 81 00 20 */ ble lbl_801F1288 +/* 801F126C 001EE1CC 38 05 00 07 */ addi r0, r5, 7 +/* 801F1270 001EE1D0 54 00 E8 FE */ srwi r0, r0, 3 +/* 801F1274 001EE1D4 7C 09 03 A6 */ mtctr r0 +/* 801F1278 001EE1D8 2C 05 00 00 */ cmpwi r5, 0 +/* 801F127C 001EE1DC 40 81 00 0C */ ble lbl_801F1288 +lbl_801F1280: +/* 801F1280 001EE1E0 38 63 00 08 */ addi r3, r3, 8 +/* 801F1284 001EE1E4 42 00 FF FC */ bdnz lbl_801F1280 +lbl_801F1288: +/* 801F1288 001EE1E8 7C 03 38 50 */ subf r0, r3, r7 +/* 801F128C 001EE1EC 7C 09 03 A6 */ mtctr r0 +/* 801F1290 001EE1F0 7C 03 38 00 */ cmpw r3, r7 +/* 801F1294 001EE1F4 40 80 00 08 */ bge lbl_801F129C +lbl_801F1298: +/* 801F1298 001EE1F8 42 00 00 00 */ bdnz lbl_801F1298 +lbl_801F129C: +/* 801F129C 001EE1FC 38 00 00 00 */ li r0, 0 +/* 801F12A0 001EE200 90 06 00 00 */ stw r0, 0(r6) +lbl_801F12A4: +/* 801F12A4 001EE204 2C 04 FF FF */ cmpwi r4, -1 +/* 801F12A8 001EE208 41 82 00 14 */ beq lbl_801F12BC +/* 801F12AC 001EE20C 7F 63 DB 78 */ mr r3, r27 +/* 801F12B0 001EE210 7F 45 D3 78 */ mr r5, r26 +/* 801F12B4 001EE214 38 C0 00 01 */ li r6, 1 +/* 801F12B8 001EE218 48 09 A0 B1 */ bl "get_token_vector__12NWeaponTypesFR9CAnimDataiRQ24rstl42vector<6CToken,Q24rstl17rmemory_allocator>b" +lbl_801F12BC: +/* 801F12BC 001EE21C BB 41 00 A8 */ lmw r26, 0xa8(r1) +/* 801F12C0 001EE220 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 801F12C4 001EE224 7C 08 03 A6 */ mtlr r0 +/* 801F12C8 001EE228 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 801F12CC 001EE22C 4E 80 00 20 */ blr + +.global SetAnim__9CGSFidgetFR9CAnimDataiiiR13CStateManager +SetAnim__9CGSFidgetFR9CAnimDataiiiR13CStateManager: +/* 801F12D0 001EE230 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 801F12D4 001EE234 7C 08 02 A6 */ mflr r0 +/* 801F12D8 001EE238 90 01 01 04 */ stw r0, 0x104(r1) +/* 801F12DC 001EE23C BF 21 00 E4 */ stmw r25, 0xe4(r1) +/* 801F12E0 001EE240 7C 9C 23 78 */ mr r28, r4 +/* 801F12E4 001EE244 7C 7B 1B 78 */ mr r27, r3 +/* 801F12E8 001EE248 7C B9 2B 78 */ mr r25, r5 +/* 801F12EC 001EE24C 7C DD 33 78 */ mr r29, r6 +/* 801F12F0 001EE250 7C FE 3B 78 */ mr r30, r7 +/* 801F12F4 001EE254 7D 1F 43 78 */ mr r31, r8 +/* 801F12F8 001EE258 3B 5C 00 3C */ addi r26, r28, 0x3c +/* 801F12FC 001EE25C 38 61 00 18 */ addi r3, r1, 0x18 +/* 801F1300 001EE260 48 0F 1D 7D */ bl NoParameter__12CPASAnimParmFv +/* 801F1304 001EE264 38 61 00 20 */ addi r3, r1, 0x20 +/* 801F1308 001EE268 48 0F 1D 75 */ bl NoParameter__12CPASAnimParmFv +/* 801F130C 001EE26C 38 61 00 28 */ addi r3, r1, 0x28 +/* 801F1310 001EE270 48 0F 1D 6D */ bl NoParameter__12CPASAnimParmFv +/* 801F1314 001EE274 38 61 00 30 */ addi r3, r1, 0x30 +/* 801F1318 001EE278 48 0F 1D 65 */ bl NoParameter__12CPASAnimParmFv +/* 801F131C 001EE27C 38 61 00 38 */ addi r3, r1, 0x38 +/* 801F1320 001EE280 48 0F 1D 5D */ bl NoParameter__12CPASAnimParmFv +/* 801F1324 001EE284 7F C4 F3 78 */ mr r4, r30 +/* 801F1328 001EE288 38 61 00 40 */ addi r3, r1, 0x40 +/* 801F132C 001EE28C 48 0F 1D 21 */ bl FromInt32__12CPASAnimParmFi +/* 801F1330 001EE290 7F A4 EB 78 */ mr r4, r29 +/* 801F1334 001EE294 38 61 00 48 */ addi r3, r1, 0x48 +/* 801F1338 001EE298 48 0F 1D 15 */ bl FromInt32__12CPASAnimParmFi +/* 801F133C 001EE29C 7F 24 CB 78 */ mr r4, r25 +/* 801F1340 001EE2A0 38 61 00 50 */ addi r3, r1, 0x50 +/* 801F1344 001EE2A4 48 0F 1C 41 */ bl FromEnum__12CPASAnimParmFi +/* 801F1348 001EE2A8 38 61 00 20 */ addi r3, r1, 0x20 +/* 801F134C 001EE2AC 38 01 00 18 */ addi r0, r1, 0x18 +/* 801F1350 001EE2B0 90 61 00 08 */ stw r3, 8(r1) +/* 801F1354 001EE2B4 38 61 00 90 */ addi r3, r1, 0x90 +/* 801F1358 001EE2B8 38 A1 00 50 */ addi r5, r1, 0x50 +/* 801F135C 001EE2BC 38 C1 00 48 */ addi r6, r1, 0x48 +/* 801F1360 001EE2C0 90 01 00 0C */ stw r0, 0xc(r1) +/* 801F1364 001EE2C4 38 E1 00 40 */ addi r7, r1, 0x40 +/* 801F1368 001EE2C8 39 01 00 38 */ addi r8, r1, 0x38 +/* 801F136C 001EE2CC 39 21 00 30 */ addi r9, r1, 0x30 +/* 801F1370 001EE2D0 39 41 00 28 */ addi r10, r1, 0x28 +/* 801F1374 001EE2D4 38 80 00 01 */ li r4, 1 +/* 801F1378 001EE2D8 4B E8 BF 4D */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 801F137C 001EE2DC 80 DF 09 00 */ lwz r6, 0x900(r31) +/* 801F1380 001EE2E0 7F 44 D3 78 */ mr r4, r26 +/* 801F1384 001EE2E4 38 61 00 58 */ addi r3, r1, 0x58 +/* 801F1388 001EE2E8 38 A1 00 90 */ addi r5, r1, 0x90 +/* 801F138C 001EE2EC 38 E0 FF FF */ li r7, -1 +/* 801F1390 001EE2F0 48 0F 3C D1 */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i +/* 801F1394 001EE2F4 34 A1 00 94 */ addic. r5, r1, 0x94 +/* 801F1398 001EE2F8 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 801F139C 001EE2FC 41 82 00 58 */ beq lbl_801F13F4 +/* 801F13A0 001EE300 80 C5 00 00 */ lwz r6, 0(r5) +/* 801F13A4 001EE304 38 60 00 00 */ li r3, 0 +/* 801F13A8 001EE308 2C 06 00 00 */ cmpwi r6, 0 +/* 801F13AC 001EE30C 40 81 00 40 */ ble lbl_801F13EC +/* 801F13B0 001EE310 2C 06 00 08 */ cmpwi r6, 8 +/* 801F13B4 001EE314 38 86 FF F8 */ addi r4, r6, -8 +/* 801F13B8 001EE318 40 81 00 20 */ ble lbl_801F13D8 +/* 801F13BC 001EE31C 38 04 00 07 */ addi r0, r4, 7 +/* 801F13C0 001EE320 54 00 E8 FE */ srwi r0, r0, 3 +/* 801F13C4 001EE324 7C 09 03 A6 */ mtctr r0 +/* 801F13C8 001EE328 2C 04 00 00 */ cmpwi r4, 0 +/* 801F13CC 001EE32C 40 81 00 0C */ ble lbl_801F13D8 +lbl_801F13D0: +/* 801F13D0 001EE330 38 63 00 08 */ addi r3, r3, 8 +/* 801F13D4 001EE334 42 00 FF FC */ bdnz lbl_801F13D0 +lbl_801F13D8: +/* 801F13D8 001EE338 7C 03 30 50 */ subf r0, r3, r6 +/* 801F13DC 001EE33C 7C 09 03 A6 */ mtctr r0 +/* 801F13E0 001EE340 7C 03 30 00 */ cmpw r3, r6 +/* 801F13E4 001EE344 40 80 00 08 */ bge lbl_801F13EC +lbl_801F13E8: +/* 801F13E8 001EE348 42 00 00 00 */ bdnz lbl_801F13E8 +lbl_801F13EC: +/* 801F13EC 001EE34C 38 00 00 00 */ li r0, 0 +/* 801F13F0 001EE350 90 05 00 00 */ stw r0, 0(r5) +lbl_801F13F4: +/* 801F13F4 001EE354 7F 43 D3 78 */ mr r3, r26 +/* 801F13F8 001EE358 38 80 00 01 */ li r4, 1 +/* 801F13FC 001EE35C 48 0F 3A C9 */ bl GetAnimState__12CPASDatabaseCFi +/* 801F1400 001EE360 7C 64 1B 78 */ mr r4, r3 +/* 801F1404 001EE364 7F E5 FB 78 */ mr r5, r31 +/* 801F1408 001EE368 38 61 00 10 */ addi r3, r1, 0x10 +/* 801F140C 001EE36C 38 C0 00 03 */ li r6, 3 +/* 801F1410 001EE370 48 0F 2B E5 */ bl GetAnimParmData__13CPASAnimStateCFiUi +/* 801F1414 001EE374 80 81 00 10 */ lwz r4, 0x10(r1) +/* 801F1418 001EE378 38 61 00 60 */ addi r3, r1, 0x60 +/* 801F141C 001EE37C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801F1420 001EE380 90 81 00 60 */ stw r4, 0x60(r1) +/* 801F1424 001EE384 90 01 00 64 */ stw r0, 0x64(r1) +/* 801F1428 001EE388 48 0F 1B 3D */ bl GetBoolValue__12CPASAnimParmCFv +/* 801F142C 001EE38C 93 BB 00 14 */ stw r29, 0x14(r27) +/* 801F1430 001EE390 2C 1F FF FF */ cmpwi r31, -1 +/* 801F1434 001EE394 93 DB 00 18 */ stw r30, 0x18(r27) +/* 801F1438 001EE398 41 82 00 6C */ beq lbl_801F14A4 +/* 801F143C 001EE39C 88 1C 02 20 */ lbz r0, 0x220(r28) +/* 801F1440 001EE3A0 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801F1444 001EE3A4 38 E0 00 01 */ li r7, 1 +/* 801F1448 001EE3A8 C0 02 AE C8 */ lfs f0, lbl_805ACBE8@sda21(r2) +/* 801F144C 001EE3AC 98 1C 02 20 */ stb r0, 0x220(r28) +/* 801F1450 001EE3B0 38 C0 FF FF */ li r6, -1 +/* 801F1454 001EE3B4 38 00 00 00 */ li r0, 0 +/* 801F1458 001EE3B8 7F 83 E3 78 */ mr r3, r28 +/* 801F145C 001EE3BC 88 BC 02 20 */ lbz r5, 0x220(r28) +/* 801F1460 001EE3C0 50 E5 3E 30 */ rlwimi r5, r7, 7, 0x18, 0x18 +/* 801F1464 001EE3C4 38 81 00 68 */ addi r4, r1, 0x68 +/* 801F1468 001EE3C8 98 BC 02 20 */ stb r5, 0x220(r28) +/* 801F146C 001EE3CC 38 A0 00 00 */ li r5, 0 +/* 801F1470 001EE3D0 93 E1 00 68 */ stw r31, 0x68(r1) +/* 801F1474 001EE3D4 90 C1 00 6C */ stw r6, 0x6c(r1) +/* 801F1478 001EE3D8 D0 01 00 70 */ stfs f0, 0x70(r1) +/* 801F147C 001EE3DC 98 E1 00 74 */ stb r7, 0x74(r1) +/* 801F1480 001EE3E0 90 01 00 78 */ stw r0, 0x78(r1) +/* 801F1484 001EE3E4 90 01 00 7C */ stw r0, 0x7c(r1) +/* 801F1488 001EE3E8 98 01 00 80 */ stb r0, 0x80(r1) +/* 801F148C 001EE3EC 90 01 00 84 */ stw r0, 0x84(r1) +/* 801F1490 001EE3F0 90 01 00 88 */ stw r0, 0x88(r1) +/* 801F1494 001EE3F4 90 01 00 8C */ stw r0, 0x8c(r1) +/* 801F1498 001EE3F8 4B E3 B8 E5 */ bl SetAnimation__9CAnimDataFRC18CAnimPlaybackParmsb +/* 801F149C 001EE3FC 7F 63 DB 78 */ mr r3, r27 +/* 801F14A0 001EE400 4B FF FC 49 */ bl UnLoadAnim__9CGSFidgetFv +lbl_801F14A4: +/* 801F14A4 001EE404 7F E3 FB 78 */ mr r3, r31 +/* 801F14A8 001EE408 BB 21 00 E4 */ lmw r25, 0xe4(r1) +/* 801F14AC 001EE40C 80 01 01 04 */ lwz r0, 0x104(r1) +/* 801F14B0 001EE410 7C 08 03 A6 */ mtlr r0 +/* 801F14B4 001EE414 38 21 01 00 */ addi r1, r1, 0x100 +/* 801F14B8 001EE418 4E 80 00 20 */ blr + +.global Update__9CGSFidgetFR9CAnimDatafR13CStateManager +Update__9CGSFidgetFR9CAnimDatafR13CStateManager: +/* 801F14BC 001EE41C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801F14C0 001EE420 7C 08 02 A6 */ mflr r0 +/* 801F14C4 001EE424 3C 60 80 3D */ lis r3, lbl_803D2038@ha +/* 801F14C8 001EE428 90 01 00 24 */ stw r0, 0x24(r1) +/* 801F14CC 001EE42C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801F14D0 001EE430 7C 9F 23 78 */ mr r31, r4 +/* 801F14D4 001EE434 38 83 20 38 */ addi r4, r3, lbl_803D2038@l +/* 801F14D8 001EE438 38 61 00 08 */ addi r3, r1, 8 +/* 801F14DC 001EE43C 4B E1 37 DD */ bl string_l__4rstlFPCc +/* 801F14E0 001EE440 C0 22 AE CC */ lfs f1, lbl_805ACBEC@sda21(r2) +/* 801F14E4 001EE444 7F E3 FB 78 */ mr r3, r31 +/* 801F14E8 001EE448 38 81 00 08 */ addi r4, r1, 8 +/* 801F14EC 001EE44C 4B E3 AF 01 */ bl "IsAnimTimeRemaining__9CAnimDataCFfRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801F14F0 001EE450 54 60 06 3E */ clrlwi r0, r3, 0x18 +/* 801F14F4 001EE454 38 61 00 08 */ addi r3, r1, 8 +/* 801F14F8 001EE458 7C 00 00 34 */ cntlzw r0, r0 +/* 801F14FC 001EE45C 54 1F D9 7E */ srwi r31, r0, 5 +/* 801F1500 001EE460 48 14 C5 E1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801F1504 001EE464 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801F1508 001EE468 7F E3 FB 78 */ mr r3, r31 +/* 801F150C 001EE46C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801F1510 001EE470 7C 08 03 A6 */ mtlr r0 +/* 801F1514 001EE474 38 21 00 20 */ addi r1, r1, 0x20 +/* 801F1518 001EE478 4E 80 00 20 */ blr + +.global __ct__9CGSFidgetFv +__ct__9CGSFidgetFv: +/* 801F151C 001EE47C 38 80 00 00 */ li r4, 0 +/* 801F1520 001EE480 38 00 FF FF */ li r0, -1 +/* 801F1524 001EE484 90 83 00 04 */ stw r4, 4(r3) +/* 801F1528 001EE488 90 83 00 08 */ stw r4, 8(r3) +/* 801F152C 001EE48C 90 83 00 0C */ stw r4, 0xc(r3) +/* 801F1530 001EE490 90 03 00 10 */ stw r0, 0x10(r3) +/* 801F1534 001EE494 90 03 00 14 */ stw r0, 0x14(r3) +/* 801F1538 001EE498 90 03 00 18 */ stw r0, 0x18(r3) +/* 801F153C 001EE49C 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Weapons/GunController/CGSFreeLook.s b/asm/Kyoto_CWD/Weapons/GunController/CGSFreeLook.s new file mode 100644 index 00000000..95b57024 --- /dev/null +++ b/asm/Kyoto_CWD/Weapons/GunController/CGSFreeLook.s @@ -0,0 +1,280 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global SetAnim__11CGSFreeLookFR9CAnimDataiiiR13CStateManagerf +SetAnim__11CGSFreeLookFR9CAnimDataiiiR13CStateManagerf: +/* 801CCCA8 001C9C08 94 21 FE F0 */ stwu r1, -0x110(r1) +/* 801CCCAC 001C9C0C 7C 08 02 A6 */ mflr r0 +/* 801CCCB0 001C9C10 90 01 01 14 */ stw r0, 0x114(r1) +/* 801CCCB4 001C9C14 DB E1 01 00 */ stfd f31, 0x100(r1) +/* 801CCCB8 001C9C18 F3 E1 01 08 */ psq_st f31, 264(r1), 0, qr0 +/* 801CCCBC 001C9C1C BF 01 00 E0 */ stmw r24, 0xe0(r1) +/* 801CCCC0 001C9C20 88 03 00 14 */ lbz r0, 0x14(r3) +/* 801CCCC4 001C9C24 FF E0 08 90 */ fmr f31, f1 +/* 801CCCC8 001C9C28 7C 7B 1B 78 */ mr r27, r3 +/* 801CCCCC 001C9C2C 7C 9C 23 78 */ mr r28, r4 +/* 801CCCD0 001C9C30 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801CCCD4 001C9C34 7C BD 2B 78 */ mr r29, r5 +/* 801CCCD8 001C9C38 7C D8 33 78 */ mr r24, r6 +/* 801CCCDC 001C9C3C 7C FE 3B 78 */ mr r30, r7 +/* 801CCCE0 001C9C40 7D 1F 43 78 */ mr r31, r8 +/* 801CCCE4 001C9C44 3B 40 00 01 */ li r26, 1 +/* 801CCCE8 001C9C48 40 82 00 08 */ bne lbl_801CCCF0 +/* 801CCCEC 001C9C4C 7F DA F3 78 */ mr r26, r30 +lbl_801CCCF0: +/* 801CCCF0 001C9C50 88 1B 00 14 */ lbz r0, 0x14(r27) +/* 801CCCF4 001C9C54 38 60 00 00 */ li r3, 0 +/* 801CCCF8 001C9C58 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801CCCFC 001C9C5C 3B 3C 00 3C */ addi r25, r28, 0x3c +/* 801CCD00 001C9C60 98 1B 00 14 */ stb r0, 0x14(r27) +/* 801CCD04 001C9C64 38 61 00 18 */ addi r3, r1, 0x18 +/* 801CCD08 001C9C68 48 11 63 75 */ bl NoParameter__12CPASAnimParmFv +/* 801CCD0C 001C9C6C 38 61 00 20 */ addi r3, r1, 0x20 +/* 801CCD10 001C9C70 48 11 63 6D */ bl NoParameter__12CPASAnimParmFv +/* 801CCD14 001C9C74 38 61 00 28 */ addi r3, r1, 0x28 +/* 801CCD18 001C9C78 48 11 63 65 */ bl NoParameter__12CPASAnimParmFv +/* 801CCD1C 001C9C7C 38 61 00 30 */ addi r3, r1, 0x30 +/* 801CCD20 001C9C80 48 11 63 5D */ bl NoParameter__12CPASAnimParmFv +/* 801CCD24 001C9C84 38 61 00 38 */ addi r3, r1, 0x38 +/* 801CCD28 001C9C88 48 11 63 55 */ bl NoParameter__12CPASAnimParmFv +/* 801CCD2C 001C9C8C 7F 44 D3 78 */ mr r4, r26 +/* 801CCD30 001C9C90 38 61 00 40 */ addi r3, r1, 0x40 +/* 801CCD34 001C9C94 48 11 62 51 */ bl FromEnum__12CPASAnimParmFi +/* 801CCD38 001C9C98 7F 04 C3 78 */ mr r4, r24 +/* 801CCD3C 001C9C9C 38 61 00 48 */ addi r3, r1, 0x48 +/* 801CCD40 001C9CA0 48 11 63 0D */ bl FromInt32__12CPASAnimParmFi +/* 801CCD44 001C9CA4 7F A4 EB 78 */ mr r4, r29 +/* 801CCD48 001C9CA8 38 61 00 50 */ addi r3, r1, 0x50 +/* 801CCD4C 001C9CAC 48 11 63 01 */ bl FromInt32__12CPASAnimParmFi +/* 801CCD50 001C9CB0 38 61 00 20 */ addi r3, r1, 0x20 +/* 801CCD54 001C9CB4 38 01 00 18 */ addi r0, r1, 0x18 +/* 801CCD58 001C9CB8 90 61 00 08 */ stw r3, 8(r1) +/* 801CCD5C 001C9CBC 38 61 00 90 */ addi r3, r1, 0x90 +/* 801CCD60 001C9CC0 38 A1 00 50 */ addi r5, r1, 0x50 +/* 801CCD64 001C9CC4 38 C1 00 48 */ addi r6, r1, 0x48 +/* 801CCD68 001C9CC8 90 01 00 0C */ stw r0, 0xc(r1) +/* 801CCD6C 001C9CCC 38 E1 00 40 */ addi r7, r1, 0x40 +/* 801CCD70 001C9CD0 39 01 00 38 */ addi r8, r1, 0x38 +/* 801CCD74 001C9CD4 39 21 00 30 */ addi r9, r1, 0x30 +/* 801CCD78 001C9CD8 39 41 00 28 */ addi r10, r1, 0x28 +/* 801CCD7C 001C9CDC 38 80 00 03 */ li r4, 3 +/* 801CCD80 001C9CE0 4B EB 05 45 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 801CCD84 001C9CE4 80 DF 09 00 */ lwz r6, 0x900(r31) +/* 801CCD88 001C9CE8 7F 24 CB 78 */ mr r4, r25 +/* 801CCD8C 001C9CEC 38 61 00 58 */ addi r3, r1, 0x58 +/* 801CCD90 001C9CF0 38 A1 00 90 */ addi r5, r1, 0x90 +/* 801CCD94 001C9CF4 38 E0 FF FF */ li r7, -1 +/* 801CCD98 001C9CF8 48 11 82 C9 */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i +/* 801CCD9C 001C9CFC 34 A1 00 94 */ addic. r5, r1, 0x94 +/* 801CCDA0 001C9D00 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 801CCDA4 001C9D04 41 82 00 58 */ beq lbl_801CCDFC +/* 801CCDA8 001C9D08 80 C5 00 00 */ lwz r6, 0(r5) +/* 801CCDAC 001C9D0C 38 60 00 00 */ li r3, 0 +/* 801CCDB0 001C9D10 2C 06 00 00 */ cmpwi r6, 0 +/* 801CCDB4 001C9D14 40 81 00 40 */ ble lbl_801CCDF4 +/* 801CCDB8 001C9D18 2C 06 00 08 */ cmpwi r6, 8 +/* 801CCDBC 001C9D1C 38 86 FF F8 */ addi r4, r6, -8 +/* 801CCDC0 001C9D20 40 81 00 20 */ ble lbl_801CCDE0 +/* 801CCDC4 001C9D24 38 04 00 07 */ addi r0, r4, 7 +/* 801CCDC8 001C9D28 54 00 E8 FE */ srwi r0, r0, 3 +/* 801CCDCC 001C9D2C 7C 09 03 A6 */ mtctr r0 +/* 801CCDD0 001C9D30 2C 04 00 00 */ cmpwi r4, 0 +/* 801CCDD4 001C9D34 40 81 00 0C */ ble lbl_801CCDE0 +lbl_801CCDD8: +/* 801CCDD8 001C9D38 38 63 00 08 */ addi r3, r3, 8 +/* 801CCDDC 001C9D3C 42 00 FF FC */ bdnz lbl_801CCDD8 +lbl_801CCDE0: +/* 801CCDE0 001C9D40 7C 03 30 50 */ subf r0, r3, r6 +/* 801CCDE4 001C9D44 7C 09 03 A6 */ mtctr r0 +/* 801CCDE8 001C9D48 7C 03 30 00 */ cmpw r3, r6 +/* 801CCDEC 001C9D4C 40 80 00 08 */ bge lbl_801CCDF4 +lbl_801CCDF0: +/* 801CCDF0 001C9D50 42 00 00 00 */ bdnz lbl_801CCDF0 +lbl_801CCDF4: +/* 801CCDF4 001C9D54 38 00 00 00 */ li r0, 0 +/* 801CCDF8 001C9D58 90 05 00 00 */ stw r0, 0(r5) +lbl_801CCDFC: +/* 801CCDFC 001C9D5C 7F 23 CB 78 */ mr r3, r25 +/* 801CCE00 001C9D60 38 80 00 03 */ li r4, 3 +/* 801CCE04 001C9D64 48 11 80 C1 */ bl GetAnimState__12CPASDatabaseCFi +/* 801CCE08 001C9D68 7C 64 1B 78 */ mr r4, r3 +/* 801CCE0C 001C9D6C 7F E5 FB 78 */ mr r5, r31 +/* 801CCE10 001C9D70 38 61 00 10 */ addi r3, r1, 0x10 +/* 801CCE14 001C9D74 38 C0 00 01 */ li r6, 1 +/* 801CCE18 001C9D78 48 11 71 DD */ bl GetAnimParmData__13CPASAnimStateCFiUi +/* 801CCE1C 001C9D7C 80 81 00 10 */ lwz r4, 0x10(r1) +/* 801CCE20 001C9D80 38 61 00 60 */ addi r3, r1, 0x60 +/* 801CCE24 001C9D84 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801CCE28 001C9D88 90 81 00 60 */ stw r4, 0x60(r1) +/* 801CCE2C 001C9D8C 90 01 00 64 */ stw r0, 0x64(r1) +/* 801CCE30 001C9D90 93 BB 00 0C */ stw r29, 0xc(r27) +/* 801CCE34 001C9D94 48 11 61 49 */ bl GetInt32Value__12CPASAnimParmCFv +/* 801CCE38 001C9D98 C0 02 AB 80 */ lfs f0, lbl_805AC8A0@sda21(r2) +/* 801CCE3C 001C9D9C 90 7B 00 10 */ stw r3, 0x10(r27) +/* 801CCE40 001C9DA0 FC 00 F8 00 */ fcmpu cr0, f0, f31 +/* 801CCE44 001C9DA4 93 5B 00 08 */ stw r26, 8(r27) +/* 801CCE48 001C9DA8 41 82 00 10 */ beq lbl_801CCE58 +/* 801CCE4C 001C9DAC D3 FB 00 00 */ stfs f31, 0(r27) +/* 801CCE50 001C9DB0 93 FB 00 04 */ stw r31, 4(r27) +/* 801CCE54 001C9DB4 48 00 00 6C */ b lbl_801CCEC0 +lbl_801CCE58: +/* 801CCE58 001C9DB8 20 7E 00 01 */ subfic r3, r30, 1 +/* 801CCE5C 001C9DBC 88 1C 02 20 */ lbz r0, 0x220(r28) +/* 801CCE60 001C9DC0 7C 63 00 34 */ cntlzw r3, r3 +/* 801CCE64 001C9DC4 39 00 00 01 */ li r8, 1 +/* 801CCE68 001C9DC8 50 60 0E 72 */ rlwimi r0, r3, 1, 0x19, 0x19 +/* 801CCE6C 001C9DCC C0 02 AB 84 */ lfs f0, lbl_805AC8A4@sda21(r2) +/* 801CCE70 001C9DD0 98 1C 02 20 */ stb r0, 0x220(r28) +/* 801CCE74 001C9DD4 38 C0 FF FF */ li r6, -1 +/* 801CCE78 001C9DD8 38 00 00 00 */ li r0, 0 +/* 801CCE7C 001C9DDC 7F 83 E3 78 */ mr r3, r28 +/* 801CCE80 001C9DE0 88 FC 02 20 */ lbz r7, 0x220(r28) +/* 801CCE84 001C9DE4 51 07 3E 30 */ rlwimi r7, r8, 7, 0x18, 0x18 +/* 801CCE88 001C9DE8 38 81 00 68 */ addi r4, r1, 0x68 +/* 801CCE8C 001C9DEC 38 A0 00 00 */ li r5, 0 +/* 801CCE90 001C9DF0 98 FC 02 20 */ stb r7, 0x220(r28) +/* 801CCE94 001C9DF4 93 E1 00 68 */ stw r31, 0x68(r1) +/* 801CCE98 001C9DF8 90 C1 00 6C */ stw r6, 0x6c(r1) +/* 801CCE9C 001C9DFC D0 01 00 70 */ stfs f0, 0x70(r1) +/* 801CCEA0 001C9E00 99 01 00 74 */ stb r8, 0x74(r1) +/* 801CCEA4 001C9E04 90 01 00 78 */ stw r0, 0x78(r1) +/* 801CCEA8 001C9E08 90 01 00 7C */ stw r0, 0x7c(r1) +/* 801CCEAC 001C9E0C 98 01 00 80 */ stb r0, 0x80(r1) +/* 801CCEB0 001C9E10 90 01 00 84 */ stw r0, 0x84(r1) +/* 801CCEB4 001C9E14 90 01 00 88 */ stw r0, 0x88(r1) +/* 801CCEB8 001C9E18 90 01 00 8C */ stw r0, 0x8c(r1) +/* 801CCEBC 001C9E1C 4B E5 FE C1 */ bl SetAnimation__9CAnimDataFRC18CAnimPlaybackParmsb +lbl_801CCEC0: +/* 801CCEC0 001C9E20 7F E3 FB 78 */ mr r3, r31 +/* 801CCEC4 001C9E24 E3 E1 01 08 */ psq_l f31, 264(r1), 0, qr0 +/* 801CCEC8 001C9E28 CB E1 01 00 */ lfd f31, 0x100(r1) +/* 801CCECC 001C9E2C BB 01 00 E0 */ lmw r24, 0xe0(r1) +/* 801CCED0 001C9E30 80 01 01 14 */ lwz r0, 0x114(r1) +/* 801CCED4 001C9E34 7C 08 03 A6 */ mtlr r0 +/* 801CCED8 001C9E38 38 21 01 10 */ addi r1, r1, 0x110 +/* 801CCEDC 001C9E3C 4E 80 00 20 */ blr + +.global Update__11CGSFreeLookFR9CAnimDatafR13CStateManager +Update__11CGSFreeLookFR9CAnimDatafR13CStateManager: +/* 801CCEE0 001C9E40 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801CCEE4 001C9E44 7C 08 02 A6 */ mflr r0 +/* 801CCEE8 001C9E48 90 01 00 54 */ stw r0, 0x54(r1) +/* 801CCEEC 001C9E4C 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801CCEF0 001C9E50 7C 9F 23 78 */ mr r31, r4 +/* 801CCEF4 001C9E54 93 C1 00 48 */ stw r30, 0x48(r1) +/* 801CCEF8 001C9E58 7C 7E 1B 78 */ mr r30, r3 +/* 801CCEFC 001C9E5C 93 A1 00 44 */ stw r29, 0x44(r1) +/* 801CCF00 001C9E60 93 81 00 40 */ stw r28, 0x40(r1) +/* 801CCF04 001C9E64 7C BC 2B 78 */ mr r28, r5 +/* 801CCF08 001C9E68 80 03 00 04 */ lwz r0, 4(r3) +/* 801CCF0C 001C9E6C 2C 00 FF FF */ cmpwi r0, -1 +/* 801CCF10 001C9E70 41 82 00 AC */ beq lbl_801CCFBC +/* 801CCF14 001C9E74 C0 5E 00 00 */ lfs f2, 0(r30) +/* 801CCF18 001C9E78 C0 02 AB 80 */ lfs f0, lbl_805AC8A0@sda21(r2) +/* 801CCF1C 001C9E7C EC 22 08 28 */ fsubs f1, f2, f1 +/* 801CCF20 001C9E80 D0 3E 00 00 */ stfs f1, 0(r30) +/* 801CCF24 001C9E84 C0 3E 00 00 */ lfs f1, 0(r30) +/* 801CCF28 001C9E88 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801CCF2C 001C9E8C 4C 40 13 82 */ cror 2, 0, 2 +/* 801CCF30 001C9E90 40 82 01 1C */ bne lbl_801CD04C +/* 801CCF34 001C9E94 80 1E 00 08 */ lwz r0, 8(r30) +/* 801CCF38 001C9E98 39 00 00 01 */ li r8, 1 +/* 801CCF3C 001C9E9C 88 9F 02 20 */ lbz r4, 0x220(r31) +/* 801CCF40 001C9EA0 38 C0 FF FF */ li r6, -1 +/* 801CCF44 001C9EA4 20 00 00 01 */ subfic r0, r0, 1 +/* 801CCF48 001C9EA8 C0 02 AB 84 */ lfs f0, lbl_805AC8A4@sda21(r2) +/* 801CCF4C 001C9EAC 7C 03 00 34 */ cntlzw r3, r0 +/* 801CCF50 001C9EB0 54 65 DE 3E */ rlwinm r5, r3, 0x1b, 0x18, 0x1f +/* 801CCF54 001C9EB4 38 00 00 00 */ li r0, 0 +/* 801CCF58 001C9EB8 50 A4 36 72 */ rlwimi r4, r5, 6, 0x19, 0x19 +/* 801CCF5C 001C9EBC 7F E3 FB 78 */ mr r3, r31 +/* 801CCF60 001C9EC0 98 9F 02 20 */ stb r4, 0x220(r31) +/* 801CCF64 001C9EC4 38 81 00 18 */ addi r4, r1, 0x18 +/* 801CCF68 001C9EC8 38 A0 00 00 */ li r5, 0 +/* 801CCF6C 001C9ECC 88 FF 02 20 */ lbz r7, 0x220(r31) +/* 801CCF70 001C9ED0 51 07 3E 30 */ rlwimi r7, r8, 7, 0x18, 0x18 +/* 801CCF74 001C9ED4 98 FF 02 20 */ stb r7, 0x220(r31) +/* 801CCF78 001C9ED8 80 FE 00 04 */ lwz r7, 4(r30) +/* 801CCF7C 001C9EDC 90 E1 00 18 */ stw r7, 0x18(r1) +/* 801CCF80 001C9EE0 90 C1 00 1C */ stw r6, 0x1c(r1) +/* 801CCF84 001C9EE4 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801CCF88 001C9EE8 99 01 00 24 */ stb r8, 0x24(r1) +/* 801CCF8C 001C9EEC 90 01 00 28 */ stw r0, 0x28(r1) +/* 801CCF90 001C9EF0 90 01 00 2C */ stw r0, 0x2c(r1) +/* 801CCF94 001C9EF4 98 01 00 30 */ stb r0, 0x30(r1) +/* 801CCF98 001C9EF8 90 01 00 34 */ stw r0, 0x34(r1) +/* 801CCF9C 001C9EFC 90 01 00 38 */ stw r0, 0x38(r1) +/* 801CCFA0 001C9F00 90 01 00 3C */ stw r0, 0x3c(r1) +/* 801CCFA4 001C9F04 4B E5 FD D9 */ bl SetAnimation__9CAnimDataFRC18CAnimPlaybackParmsb +/* 801CCFA8 001C9F08 C0 02 AB 80 */ lfs f0, lbl_805AC8A0@sda21(r2) +/* 801CCFAC 001C9F0C 38 00 FF FF */ li r0, -1 +/* 801CCFB0 001C9F10 D0 1E 00 00 */ stfs f0, 0(r30) +/* 801CCFB4 001C9F14 90 1E 00 04 */ stw r0, 4(r30) +/* 801CCFB8 001C9F18 48 00 00 94 */ b lbl_801CD04C +lbl_801CCFBC: +/* 801CCFBC 001C9F1C 3C 80 80 3D */ lis r4, lbl_803D1AB8@ha +/* 801CCFC0 001C9F20 38 61 00 08 */ addi r3, r1, 8 +/* 801CCFC4 001C9F24 38 84 1A B8 */ addi r4, r4, lbl_803D1AB8@l +/* 801CCFC8 001C9F28 4B E3 7C F1 */ bl string_l__4rstlFPCc +/* 801CCFCC 001C9F2C C0 22 AB 88 */ lfs f1, lbl_805AC8A8@sda21(r2) +/* 801CCFD0 001C9F30 7F E3 FB 78 */ mr r3, r31 +/* 801CCFD4 001C9F34 38 81 00 08 */ addi r4, r1, 8 +/* 801CCFD8 001C9F38 4B E5 F4 15 */ bl "IsAnimTimeRemaining__9CAnimDataCFfRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801CCFDC 001C9F3C 7C 7D 1B 78 */ mr r29, r3 +/* 801CCFE0 001C9F40 38 61 00 08 */ addi r3, r1, 8 +/* 801CCFE4 001C9F44 48 17 0A FD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801CCFE8 001C9F48 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 801CCFEC 001C9F4C 40 82 00 60 */ bne lbl_801CD04C +/* 801CCFF0 001C9F50 80 1E 00 08 */ lwz r0, 8(r30) +/* 801CCFF4 001C9F54 2C 00 00 01 */ cmpwi r0, 1 +/* 801CCFF8 001C9F58 41 82 00 54 */ beq lbl_801CD04C +/* 801CCFFC 001C9F5C 40 80 00 10 */ bge lbl_801CD00C +/* 801CD000 001C9F60 2C 00 00 00 */ cmpwi r0, 0 +/* 801CD004 001C9F64 40 80 00 14 */ bge lbl_801CD018 +/* 801CD008 001C9F68 48 00 00 44 */ b lbl_801CD04C +lbl_801CD00C: +/* 801CD00C 001C9F6C 2C 00 00 03 */ cmpwi r0, 3 +/* 801CD010 001C9F70 40 80 00 3C */ bge lbl_801CD04C +/* 801CD014 001C9F74 48 00 00 28 */ b lbl_801CD03C +lbl_801CD018: +/* 801CD018 001C9F78 80 BE 00 0C */ lwz r5, 0xc(r30) +/* 801CD01C 001C9F7C 7F C3 F3 78 */ mr r3, r30 +/* 801CD020 001C9F80 80 DE 00 10 */ lwz r6, 0x10(r30) +/* 801CD024 001C9F84 7F E4 FB 78 */ mr r4, r31 +/* 801CD028 001C9F88 C0 22 AB 80 */ lfs f1, lbl_805AC8A0@sda21(r2) +/* 801CD02C 001C9F8C 7F 88 E3 78 */ mr r8, r28 +/* 801CD030 001C9F90 38 E0 00 01 */ li r7, 1 +/* 801CD034 001C9F94 4B FF FC 75 */ bl SetAnim__11CGSFreeLookFR9CAnimDataiiiR13CStateManagerf +/* 801CD038 001C9F98 48 00 00 14 */ b lbl_801CD04C +lbl_801CD03C: +/* 801CD03C 001C9F9C 38 00 FF FF */ li r0, -1 +/* 801CD040 001C9FA0 38 60 00 01 */ li r3, 1 +/* 801CD044 001C9FA4 90 1E 00 08 */ stw r0, 8(r30) +/* 801CD048 001C9FA8 48 00 00 08 */ b lbl_801CD050 +lbl_801CD04C: +/* 801CD04C 001C9FAC 38 60 00 00 */ li r3, 0 +lbl_801CD050: +/* 801CD050 001C9FB0 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801CD054 001C9FB4 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801CD058 001C9FB8 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 801CD05C 001C9FBC 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 801CD060 001C9FC0 83 81 00 40 */ lwz r28, 0x40(r1) +/* 801CD064 001C9FC4 7C 08 03 A6 */ mtlr r0 +/* 801CD068 001C9FC8 38 21 00 50 */ addi r1, r1, 0x50 +/* 801CD06C 001C9FCC 4E 80 00 20 */ blr + +.global __ct__11CGSFreeLookFv +__ct__11CGSFreeLookFv: +/* 801CD070 001C9FD0 C0 02 AB 80 */ lfs f0, lbl_805AC8A0@sda21(r2) +/* 801CD074 001C9FD4 38 00 FF FF */ li r0, -1 +/* 801CD078 001C9FD8 38 80 00 00 */ li r4, 0 +/* 801CD07C 001C9FDC D0 03 00 00 */ stfs f0, 0(r3) +/* 801CD080 001C9FE0 90 03 00 04 */ stw r0, 4(r3) +/* 801CD084 001C9FE4 90 03 00 08 */ stw r0, 8(r3) +/* 801CD088 001C9FE8 90 83 00 0C */ stw r4, 0xc(r3) +/* 801CD08C 001C9FEC 90 03 00 10 */ stw r0, 0x10(r3) +/* 801CD090 001C9FF0 88 03 00 14 */ lbz r0, 0x14(r3) +/* 801CD094 001C9FF4 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801CD098 001C9FF8 98 03 00 14 */ stb r0, 0x14(r3) +/* 801CD09C 001C9FFC 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Weapons/GunController/CGunController.s b/asm/Kyoto_CWD/Weapons/GunController/CGunController.s new file mode 100644 index 00000000..a68bd6d9 --- /dev/null +++ b/asm/Kyoto_CWD/Weapons/GunController/CGunController.s @@ -0,0 +1,817 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global ReturnToBasePosition__14CGunControllerFR13CStateManager +ReturnToBasePosition__14CGunControllerFR13CStateManager: +/* 801CC12C 001C908C 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 801CC130 001C9090 7C 08 02 A6 */ mflr r0 +/* 801CC134 001C9094 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 801CC138 001C9098 93 E1 00 DC */ stw r31, 0xdc(r1) +/* 801CC13C 001C909C 7C 7F 1B 78 */ mr r31, r3 +/* 801CC140 001C90A0 93 C1 00 D8 */ stw r30, 0xd8(r1) +/* 801CC144 001C90A4 93 A1 00 D4 */ stw r29, 0xd4(r1) +/* 801CC148 001C90A8 7C 9D 23 78 */ mr r29, r4 +/* 801CC14C 001C90AC 80 83 00 00 */ lwz r4, 0(r3) +/* 801CC150 001C90B0 38 61 00 10 */ addi r3, r1, 0x10 +/* 801CC154 001C90B4 83 C4 00 10 */ lwz r30, 0x10(r4) +/* 801CC158 001C90B8 48 11 6F 25 */ bl NoParameter__12CPASAnimParmFv +/* 801CC15C 001C90BC 38 61 00 18 */ addi r3, r1, 0x18 +/* 801CC160 001C90C0 48 11 6F 1D */ bl NoParameter__12CPASAnimParmFv +/* 801CC164 001C90C4 38 61 00 20 */ addi r3, r1, 0x20 +/* 801CC168 001C90C8 48 11 6F 15 */ bl NoParameter__12CPASAnimParmFv +/* 801CC16C 001C90CC 38 61 00 28 */ addi r3, r1, 0x28 +/* 801CC170 001C90D0 48 11 6F 0D */ bl NoParameter__12CPASAnimParmFv +/* 801CC174 001C90D4 38 61 00 30 */ addi r3, r1, 0x30 +/* 801CC178 001C90D8 48 11 6F 05 */ bl NoParameter__12CPASAnimParmFv +/* 801CC17C 001C90DC 38 61 00 38 */ addi r3, r1, 0x38 +/* 801CC180 001C90E0 48 11 6E FD */ bl NoParameter__12CPASAnimParmFv +/* 801CC184 001C90E4 38 61 00 40 */ addi r3, r1, 0x40 +/* 801CC188 001C90E8 48 11 6E F5 */ bl NoParameter__12CPASAnimParmFv +/* 801CC18C 001C90EC 38 61 00 48 */ addi r3, r1, 0x48 +/* 801CC190 001C90F0 48 11 6E ED */ bl NoParameter__12CPASAnimParmFv +/* 801CC194 001C90F4 38 61 00 18 */ addi r3, r1, 0x18 +/* 801CC198 001C90F8 38 01 00 10 */ addi r0, r1, 0x10 +/* 801CC19C 001C90FC 90 61 00 08 */ stw r3, 8(r1) +/* 801CC1A0 001C9100 38 61 00 80 */ addi r3, r1, 0x80 +/* 801CC1A4 001C9104 38 A1 00 48 */ addi r5, r1, 0x48 +/* 801CC1A8 001C9108 38 C1 00 40 */ addi r6, r1, 0x40 +/* 801CC1AC 001C910C 90 01 00 0C */ stw r0, 0xc(r1) +/* 801CC1B0 001C9110 38 E1 00 38 */ addi r7, r1, 0x38 +/* 801CC1B4 001C9114 39 01 00 30 */ addi r8, r1, 0x30 +/* 801CC1B8 001C9118 39 21 00 28 */ addi r9, r1, 0x28 +/* 801CC1BC 001C911C 39 41 00 20 */ addi r10, r1, 0x20 +/* 801CC1C0 001C9120 38 80 00 06 */ li r4, 6 +/* 801CC1C4 001C9124 4B EB 11 01 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 801CC1C8 001C9128 80 DD 09 00 */ lwz r6, 0x900(r29) +/* 801CC1CC 001C912C 38 61 00 50 */ addi r3, r1, 0x50 +/* 801CC1D0 001C9130 38 9E 00 3C */ addi r4, r30, 0x3c +/* 801CC1D4 001C9134 38 A1 00 80 */ addi r5, r1, 0x80 +/* 801CC1D8 001C9138 38 E0 FF FF */ li r7, -1 +/* 801CC1DC 001C913C 48 11 8E 85 */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i +/* 801CC1E0 001C9140 34 A1 00 84 */ addic. r5, r1, 0x84 +/* 801CC1E4 001C9144 83 A1 00 54 */ lwz r29, 0x54(r1) +/* 801CC1E8 001C9148 41 82 00 58 */ beq lbl_801CC240 +/* 801CC1EC 001C914C 80 C5 00 00 */ lwz r6, 0(r5) +/* 801CC1F0 001C9150 38 60 00 00 */ li r3, 0 +/* 801CC1F4 001C9154 2C 06 00 00 */ cmpwi r6, 0 +/* 801CC1F8 001C9158 40 81 00 40 */ ble lbl_801CC238 +/* 801CC1FC 001C915C 2C 06 00 08 */ cmpwi r6, 8 +/* 801CC200 001C9160 38 86 FF F8 */ addi r4, r6, -8 +/* 801CC204 001C9164 40 81 00 20 */ ble lbl_801CC224 +/* 801CC208 001C9168 38 04 00 07 */ addi r0, r4, 7 +/* 801CC20C 001C916C 54 00 E8 FE */ srwi r0, r0, 3 +/* 801CC210 001C9170 7C 09 03 A6 */ mtctr r0 +/* 801CC214 001C9174 2C 04 00 00 */ cmpwi r4, 0 +/* 801CC218 001C9178 40 81 00 0C */ ble lbl_801CC224 +lbl_801CC21C: +/* 801CC21C 001C917C 38 63 00 08 */ addi r3, r3, 8 +/* 801CC220 001C9180 42 00 FF FC */ bdnz lbl_801CC21C +lbl_801CC224: +/* 801CC224 001C9184 7C 03 30 50 */ subf r0, r3, r6 +/* 801CC228 001C9188 7C 09 03 A6 */ mtctr r0 +/* 801CC22C 001C918C 7C 03 30 00 */ cmpw r3, r6 +/* 801CC230 001C9190 40 80 00 08 */ bge lbl_801CC238 +lbl_801CC234: +/* 801CC234 001C9194 42 00 00 00 */ bdnz lbl_801CC234 +lbl_801CC238: +/* 801CC238 001C9198 38 00 00 00 */ li r0, 0 +/* 801CC23C 001C919C 90 05 00 00 */ stw r0, 0(r5) +lbl_801CC240: +/* 801CC240 001C91A0 88 1E 02 20 */ lbz r0, 0x220(r30) +/* 801CC244 001C91A4 39 00 00 00 */ li r8, 0 +/* 801CC248 001C91A8 51 00 36 72 */ rlwimi r0, r8, 6, 0x19, 0x19 +/* 801CC24C 001C91AC 38 E0 00 01 */ li r7, 1 +/* 801CC250 001C91B0 98 1E 02 20 */ stb r0, 0x220(r30) +/* 801CC254 001C91B4 38 00 FF FF */ li r0, -1 +/* 801CC258 001C91B8 C0 02 AB 70 */ lfs f0, lbl_805AC890@sda21(r2) +/* 801CC25C 001C91BC 7F C3 F3 78 */ mr r3, r30 +/* 801CC260 001C91C0 88 DE 02 20 */ lbz r6, 0x220(r30) +/* 801CC264 001C91C4 50 E6 3E 30 */ rlwimi r6, r7, 7, 0x18, 0x18 +/* 801CC268 001C91C8 38 81 00 58 */ addi r4, r1, 0x58 +/* 801CC26C 001C91CC 38 A0 00 00 */ li r5, 0 +/* 801CC270 001C91D0 98 DE 02 20 */ stb r6, 0x220(r30) +/* 801CC274 001C91D4 93 A1 00 58 */ stw r29, 0x58(r1) +/* 801CC278 001C91D8 90 01 00 5C */ stw r0, 0x5c(r1) +/* 801CC27C 001C91DC D0 01 00 60 */ stfs f0, 0x60(r1) +/* 801CC280 001C91E0 98 E1 00 64 */ stb r7, 0x64(r1) +/* 801CC284 001C91E4 91 01 00 68 */ stw r8, 0x68(r1) +/* 801CC288 001C91E8 91 01 00 6C */ stw r8, 0x6c(r1) +/* 801CC28C 001C91EC 99 01 00 70 */ stb r8, 0x70(r1) +/* 801CC290 001C91F0 91 01 00 74 */ stw r8, 0x74(r1) +/* 801CC294 001C91F4 91 01 00 78 */ stw r8, 0x78(r1) +/* 801CC298 001C91F8 91 01 00 7C */ stw r8, 0x7c(r1) +/* 801CC29C 001C91FC 4B E6 0A E1 */ bl SetAnimation__9CAnimDataFRC18CAnimPlaybackParmsb +/* 801CC2A0 001C9200 93 BF 00 54 */ stw r29, 0x54(r31) +/* 801CC2A4 001C9204 38 60 00 00 */ li r3, 0 +/* 801CC2A8 001C9208 88 1F 00 58 */ lbz r0, 0x58(r31) +/* 801CC2AC 001C920C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801CC2B0 001C9210 98 1F 00 58 */ stb r0, 0x58(r31) +/* 801CC2B4 001C9214 83 E1 00 DC */ lwz r31, 0xdc(r1) +/* 801CC2B8 001C9218 83 C1 00 D8 */ lwz r30, 0xd8(r1) +/* 801CC2BC 001C921C 83 A1 00 D4 */ lwz r29, 0xd4(r1) +/* 801CC2C0 001C9220 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 801CC2C4 001C9224 7C 08 03 A6 */ mtlr r0 +/* 801CC2C8 001C9228 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 801CC2CC 001C922C 4E 80 00 20 */ blr + +.global Reset__14CGunControllerFv +Reset__14CGunControllerFv: +/* 801CC2D0 001C9230 88 03 00 58 */ lbz r0, 0x58(r3) +/* 801CC2D4 001C9234 38 80 00 01 */ li r4, 1 +/* 801CC2D8 001C9238 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801CC2DC 001C923C 38 80 00 00 */ li r4, 0 +/* 801CC2E0 001C9240 98 03 00 58 */ stb r0, 0x58(r3) +/* 801CC2E4 001C9244 88 03 00 58 */ lbz r0, 0x58(r3) +/* 801CC2E8 001C9248 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 801CC2EC 001C924C 98 03 00 58 */ stb r0, 0x58(r3) +/* 801CC2F0 001C9250 90 83 00 50 */ stw r4, 0x50(r3) +/* 801CC2F4 001C9254 4E 80 00 20 */ blr + +.global ReturnToDefault__14CGunControllerFR13CStateManagerf +ReturnToDefault__14CGunControllerFR13CStateManagerf: +/* 801CC2F8 001C9258 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801CC2FC 001C925C 7C 08 02 A6 */ mflr r0 +/* 801CC300 001C9260 7C 88 23 78 */ mr r8, r4 +/* 801CC304 001C9264 90 01 00 14 */ stw r0, 0x14(r1) +/* 801CC308 001C9268 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801CC30C 001C926C 7C BF 2B 78 */ mr r31, r5 +/* 801CC310 001C9270 93 C1 00 08 */ stw r30, 8(r1) +/* 801CC314 001C9274 7C 7E 1B 78 */ mr r30, r3 +/* 801CC318 001C9278 80 03 00 50 */ lwz r0, 0x50(r3) +/* 801CC31C 001C927C 80 C3 00 00 */ lwz r6, 0(r3) +/* 801CC320 001C9280 2C 00 00 05 */ cmpwi r0, 5 +/* 801CC324 001C9284 80 E6 00 10 */ lwz r7, 0x10(r6) +/* 801CC328 001C9288 41 82 00 9C */ beq lbl_801CC3C4 +/* 801CC32C 001C928C 40 80 00 1C */ bge lbl_801CC348 +/* 801CC330 001C9290 2C 00 00 03 */ cmpwi r0, 3 +/* 801CC334 001C9294 41 82 00 70 */ beq lbl_801CC3A4 +/* 801CC338 001C9298 40 80 00 24 */ bge lbl_801CC35C +/* 801CC33C 001C929C 2C 00 00 02 */ cmpwi r0, 2 +/* 801CC340 001C92A0 40 80 00 2C */ bge lbl_801CC36C +/* 801CC344 001C92A4 48 00 00 98 */ b lbl_801CC3DC +lbl_801CC348: +/* 801CC348 001C92A8 2C 00 00 07 */ cmpwi r0, 7 +/* 801CC34C 001C92AC 41 82 00 80 */ beq lbl_801CC3CC +/* 801CC350 001C92B0 40 80 00 8C */ bge lbl_801CC3DC +/* 801CC354 001C92B4 38 00 00 02 */ li r0, 2 +/* 801CC358 001C92B8 90 1E 00 50 */ stw r0, 0x50(r30) +lbl_801CC35C: +/* 801CC35C 001C92BC 88 1E 00 18 */ lbz r0, 0x18(r30) +/* 801CC360 001C92C0 38 60 00 00 */ li r3, 0 +/* 801CC364 001C92C4 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801CC368 001C92C8 98 1E 00 18 */ stb r0, 0x18(r30) +lbl_801CC36C: +/* 801CC36C 001C92CC 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 801CC370 001C92D0 40 82 00 6C */ bne lbl_801CC3DC +/* 801CC374 001C92D4 80 BE 00 10 */ lwz r5, 0x10(r30) +/* 801CC378 001C92D8 7C E4 3B 78 */ mr r4, r7 +/* 801CC37C 001C92DC 80 DE 00 14 */ lwz r6, 0x14(r30) +/* 801CC380 001C92E0 38 7E 00 04 */ addi r3, r30, 4 +/* 801CC384 001C92E4 38 E0 00 02 */ li r7, 2 +/* 801CC388 001C92E8 48 00 09 21 */ bl SetAnim__11CGSFreeLookFR9CAnimDataiiiR13CStateManagerf +/* 801CC38C 001C92EC 90 7E 00 54 */ stw r3, 0x54(r30) +/* 801CC390 001C92F0 38 60 00 00 */ li r3, 0 +/* 801CC394 001C92F4 88 1E 00 58 */ lbz r0, 0x58(r30) +/* 801CC398 001C92F8 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801CC39C 001C92FC 98 1E 00 58 */ stb r0, 0x58(r30) +/* 801CC3A0 001C9300 48 00 00 3C */ b lbl_801CC3DC +lbl_801CC3A4: +/* 801CC3A4 001C9304 80 BE 00 28 */ lwz r5, 0x28(r30) +/* 801CC3A8 001C9308 7C E4 3B 78 */ mr r4, r7 +/* 801CC3AC 001C930C 7D 07 43 78 */ mr r7, r8 +/* 801CC3B0 001C9310 38 7E 00 1C */ addi r3, r30, 0x1c +/* 801CC3B4 001C9314 38 C0 00 02 */ li r6, 2 +/* 801CC3B8 001C9318 48 00 0C E9 */ bl SetAnim__12CGSComboFireFR9CAnimDataiiR13CStateManagerf +/* 801CC3BC 001C931C 90 7E 00 54 */ stw r3, 0x54(r30) +/* 801CC3C0 001C9320 48 00 00 1C */ b lbl_801CC3DC +lbl_801CC3C4: +/* 801CC3C4 001C9324 4B FF FD 69 */ bl ReturnToBasePosition__14CGunControllerFR13CStateManager +/* 801CC3C8 001C9328 48 00 00 14 */ b lbl_801CC3DC +lbl_801CC3CC: +/* 801CC3CC 001C932C 88 1E 00 18 */ lbz r0, 0x18(r30) +/* 801CC3D0 001C9330 38 60 00 00 */ li r3, 0 +/* 801CC3D4 001C9334 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801CC3D8 001C9338 98 1E 00 18 */ stb r0, 0x18(r30) +lbl_801CC3DC: +/* 801CC3DC 001C933C 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 801CC3E0 001C9340 41 82 00 0C */ beq lbl_801CC3EC +/* 801CC3E4 001C9344 38 00 00 01 */ li r0, 1 +/* 801CC3E8 001C9348 90 1E 00 50 */ stw r0, 0x50(r30) +lbl_801CC3EC: +/* 801CC3EC 001C934C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801CC3F0 001C9350 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801CC3F4 001C9354 83 C1 00 08 */ lwz r30, 8(r1) +/* 801CC3F8 001C9358 7C 08 03 A6 */ mtlr r0 +/* 801CC3FC 001C935C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801CC400 001C9360 4E 80 00 20 */ blr + +.global EnterIdle__14CGunControllerFR13CStateManager +EnterIdle__14CGunControllerFR13CStateManager: +/* 801CC404 001C9364 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 801CC408 001C9368 7C 08 02 A6 */ mflr r0 +/* 801CC40C 001C936C 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 801CC410 001C9370 93 E1 00 EC */ stw r31, 0xec(r1) +/* 801CC414 001C9374 7C 7F 1B 78 */ mr r31, r3 +/* 801CC418 001C9378 38 61 00 60 */ addi r3, r1, 0x60 +/* 801CC41C 001C937C 93 C1 00 E8 */ stw r30, 0xe8(r1) +/* 801CC420 001C9380 93 A1 00 E4 */ stw r29, 0xe4(r1) +/* 801CC424 001C9384 7C 9D 23 78 */ mr r29, r4 +/* 801CC428 001C9388 48 11 6C 55 */ bl NoParameter__12CPASAnimParmFv +/* 801CC42C 001C938C 80 61 00 60 */ lwz r3, 0x60(r1) +/* 801CC430 001C9390 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801CC434 001C9394 90 61 00 68 */ stw r3, 0x68(r1) +/* 801CC438 001C9398 90 01 00 6C */ stw r0, 0x6c(r1) +/* 801CC43C 001C939C 80 1F 00 50 */ lwz r0, 0x50(r31) +/* 801CC440 001C93A0 2C 00 00 03 */ cmpwi r0, 3 +/* 801CC444 001C93A4 41 82 00 44 */ beq lbl_801CC488 +/* 801CC448 001C93A8 40 80 01 DC */ bge lbl_801CC624 +/* 801CC44C 001C93AC 2C 00 00 02 */ cmpwi r0, 2 +/* 801CC450 001C93B0 40 80 00 08 */ bge lbl_801CC458 +/* 801CC454 001C93B4 48 00 01 D0 */ b lbl_801CC624 +lbl_801CC458: +/* 801CC458 001C93B8 38 61 00 58 */ addi r3, r1, 0x58 +/* 801CC45C 001C93BC 38 80 00 01 */ li r4, 1 +/* 801CC460 001C93C0 48 11 6B 25 */ bl FromEnum__12CPASAnimParmFi +/* 801CC464 001C93C4 80 81 00 58 */ lwz r4, 0x58(r1) +/* 801CC468 001C93C8 38 60 00 01 */ li r3, 1 +/* 801CC46C 001C93CC 80 01 00 5C */ lwz r0, 0x5c(r1) +/* 801CC470 001C93D0 90 81 00 68 */ stw r4, 0x68(r1) +/* 801CC474 001C93D4 90 01 00 6C */ stw r0, 0x6c(r1) +/* 801CC478 001C93D8 88 1F 00 18 */ lbz r0, 0x18(r31) +/* 801CC47C 001C93DC 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801CC480 001C93E0 98 1F 00 18 */ stb r0, 0x18(r31) +/* 801CC484 001C93E4 48 00 00 38 */ b lbl_801CC4BC +lbl_801CC488: +/* 801CC488 001C93E8 38 61 00 50 */ addi r3, r1, 0x50 +/* 801CC48C 001C93EC 38 80 00 01 */ li r4, 1 +/* 801CC490 001C93F0 48 11 6A F5 */ bl FromEnum__12CPASAnimParmFi +/* 801CC494 001C93F4 80 81 00 50 */ lwz r4, 0x50(r1) +/* 801CC498 001C93F8 38 60 00 01 */ li r3, 1 +/* 801CC49C 001C93FC 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801CC4A0 001C9400 90 81 00 68 */ stw r4, 0x68(r1) +/* 801CC4A4 001C9404 90 01 00 6C */ stw r0, 0x6c(r1) +/* 801CC4A8 001C9408 88 1F 00 2C */ lbz r0, 0x2c(r31) +/* 801CC4AC 001C940C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801CC4B0 001C9410 98 1F 00 2C */ stb r0, 0x2c(r31) +/* 801CC4B4 001C9414 48 00 00 08 */ b lbl_801CC4BC +/* 801CC4B8 001C9418 48 00 01 6C */ b lbl_801CC624 +lbl_801CC4BC: +/* 801CC4BC 001C941C 80 9F 00 00 */ lwz r4, 0(r31) +/* 801CC4C0 001C9420 38 61 00 10 */ addi r3, r1, 0x10 +/* 801CC4C4 001C9424 83 C4 00 10 */ lwz r30, 0x10(r4) +/* 801CC4C8 001C9428 48 11 6B B5 */ bl NoParameter__12CPASAnimParmFv +/* 801CC4CC 001C942C 38 61 00 18 */ addi r3, r1, 0x18 +/* 801CC4D0 001C9430 48 11 6B AD */ bl NoParameter__12CPASAnimParmFv +/* 801CC4D4 001C9434 38 61 00 20 */ addi r3, r1, 0x20 +/* 801CC4D8 001C9438 48 11 6B A5 */ bl NoParameter__12CPASAnimParmFv +/* 801CC4DC 001C943C 38 61 00 28 */ addi r3, r1, 0x28 +/* 801CC4E0 001C9440 48 11 6B 9D */ bl NoParameter__12CPASAnimParmFv +/* 801CC4E4 001C9444 38 61 00 30 */ addi r3, r1, 0x30 +/* 801CC4E8 001C9448 48 11 6B 95 */ bl NoParameter__12CPASAnimParmFv +/* 801CC4EC 001C944C 38 61 00 38 */ addi r3, r1, 0x38 +/* 801CC4F0 001C9450 48 11 6B 8D */ bl NoParameter__12CPASAnimParmFv +/* 801CC4F4 001C9454 38 61 00 40 */ addi r3, r1, 0x40 +/* 801CC4F8 001C9458 48 11 6B 85 */ bl NoParameter__12CPASAnimParmFv +/* 801CC4FC 001C945C 38 61 00 18 */ addi r3, r1, 0x18 +/* 801CC500 001C9460 38 01 00 10 */ addi r0, r1, 0x10 +/* 801CC504 001C9464 90 61 00 08 */ stw r3, 8(r1) +/* 801CC508 001C9468 38 61 00 98 */ addi r3, r1, 0x98 +/* 801CC50C 001C946C 38 A1 00 68 */ addi r5, r1, 0x68 +/* 801CC510 001C9470 38 C1 00 40 */ addi r6, r1, 0x40 +/* 801CC514 001C9474 90 01 00 0C */ stw r0, 0xc(r1) +/* 801CC518 001C9478 38 E1 00 38 */ addi r7, r1, 0x38 +/* 801CC51C 001C947C 39 01 00 30 */ addi r8, r1, 0x30 +/* 801CC520 001C9480 39 21 00 28 */ addi r9, r1, 0x28 +/* 801CC524 001C9484 39 41 00 20 */ addi r10, r1, 0x20 +/* 801CC528 001C9488 38 80 00 05 */ li r4, 5 +/* 801CC52C 001C948C 4B EB 0D 99 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 801CC530 001C9490 80 DD 09 00 */ lwz r6, 0x900(r29) +/* 801CC534 001C9494 38 61 00 48 */ addi r3, r1, 0x48 +/* 801CC538 001C9498 38 9E 00 3C */ addi r4, r30, 0x3c +/* 801CC53C 001C949C 38 A1 00 98 */ addi r5, r1, 0x98 +/* 801CC540 001C94A0 38 E0 FF FF */ li r7, -1 +/* 801CC544 001C94A4 48 11 8B 1D */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i +/* 801CC548 001C94A8 34 A1 00 9C */ addic. r5, r1, 0x9c +/* 801CC54C 001C94AC 83 A1 00 4C */ lwz r29, 0x4c(r1) +/* 801CC550 001C94B0 41 82 00 58 */ beq lbl_801CC5A8 +/* 801CC554 001C94B4 80 C5 00 00 */ lwz r6, 0(r5) +/* 801CC558 001C94B8 38 60 00 00 */ li r3, 0 +/* 801CC55C 001C94BC 2C 06 00 00 */ cmpwi r6, 0 +/* 801CC560 001C94C0 40 81 00 40 */ ble lbl_801CC5A0 +/* 801CC564 001C94C4 2C 06 00 08 */ cmpwi r6, 8 +/* 801CC568 001C94C8 38 86 FF F8 */ addi r4, r6, -8 +/* 801CC56C 001C94CC 40 81 00 20 */ ble lbl_801CC58C +/* 801CC570 001C94D0 38 04 00 07 */ addi r0, r4, 7 +/* 801CC574 001C94D4 54 00 E8 FE */ srwi r0, r0, 3 +/* 801CC578 001C94D8 7C 09 03 A6 */ mtctr r0 +/* 801CC57C 001C94DC 2C 04 00 00 */ cmpwi r4, 0 +/* 801CC580 001C94E0 40 81 00 0C */ ble lbl_801CC58C +lbl_801CC584: +/* 801CC584 001C94E4 38 63 00 08 */ addi r3, r3, 8 +/* 801CC588 001C94E8 42 00 FF FC */ bdnz lbl_801CC584 +lbl_801CC58C: +/* 801CC58C 001C94EC 7C 03 30 50 */ subf r0, r3, r6 +/* 801CC590 001C94F0 7C 09 03 A6 */ mtctr r0 +/* 801CC594 001C94F4 7C 03 30 00 */ cmpw r3, r6 +/* 801CC598 001C94F8 40 80 00 08 */ bge lbl_801CC5A0 +lbl_801CC59C: +/* 801CC59C 001C94FC 42 00 00 00 */ bdnz lbl_801CC59C +lbl_801CC5A0: +/* 801CC5A0 001C9500 38 00 00 00 */ li r0, 0 +/* 801CC5A4 001C9504 90 05 00 00 */ stw r0, 0(r5) +lbl_801CC5A8: +/* 801CC5A8 001C9508 88 1E 02 20 */ lbz r0, 0x220(r30) +/* 801CC5AC 001C950C 39 00 00 00 */ li r8, 0 +/* 801CC5B0 001C9510 51 00 36 72 */ rlwimi r0, r8, 6, 0x19, 0x19 +/* 801CC5B4 001C9514 38 E0 00 01 */ li r7, 1 +/* 801CC5B8 001C9518 98 1E 02 20 */ stb r0, 0x220(r30) +/* 801CC5BC 001C951C 38 00 FF FF */ li r0, -1 +/* 801CC5C0 001C9520 C0 02 AB 70 */ lfs f0, lbl_805AC890@sda21(r2) +/* 801CC5C4 001C9524 7F C3 F3 78 */ mr r3, r30 +/* 801CC5C8 001C9528 88 DE 02 20 */ lbz r6, 0x220(r30) +/* 801CC5CC 001C952C 50 E6 3E 30 */ rlwimi r6, r7, 7, 0x18, 0x18 +/* 801CC5D0 001C9530 38 81 00 70 */ addi r4, r1, 0x70 +/* 801CC5D4 001C9534 38 A0 00 00 */ li r5, 0 +/* 801CC5D8 001C9538 98 DE 02 20 */ stb r6, 0x220(r30) +/* 801CC5DC 001C953C 93 A1 00 70 */ stw r29, 0x70(r1) +/* 801CC5E0 001C9540 90 01 00 74 */ stw r0, 0x74(r1) +/* 801CC5E4 001C9544 D0 01 00 78 */ stfs f0, 0x78(r1) +/* 801CC5E8 001C9548 98 E1 00 7C */ stb r7, 0x7c(r1) +/* 801CC5EC 001C954C 91 01 00 80 */ stw r8, 0x80(r1) +/* 801CC5F0 001C9550 91 01 00 84 */ stw r8, 0x84(r1) +/* 801CC5F4 001C9554 99 01 00 88 */ stb r8, 0x88(r1) +/* 801CC5F8 001C9558 91 01 00 8C */ stw r8, 0x8c(r1) +/* 801CC5FC 001C955C 91 01 00 90 */ stw r8, 0x90(r1) +/* 801CC600 001C9560 91 01 00 94 */ stw r8, 0x94(r1) +/* 801CC604 001C9564 4B E6 07 79 */ bl SetAnimation__9CAnimDataFRC18CAnimPlaybackParmsb +/* 801CC608 001C9568 93 BF 00 54 */ stw r29, 0x54(r31) +/* 801CC60C 001C956C 38 00 00 04 */ li r0, 4 +/* 801CC610 001C9570 38 60 00 00 */ li r3, 0 +/* 801CC614 001C9574 90 1F 00 50 */ stw r0, 0x50(r31) +/* 801CC618 001C9578 88 1F 00 58 */ lbz r0, 0x58(r31) +/* 801CC61C 001C957C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801CC620 001C9580 98 1F 00 58 */ stb r0, 0x58(r31) +lbl_801CC624: +/* 801CC624 001C9584 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 801CC628 001C9588 83 E1 00 EC */ lwz r31, 0xec(r1) +/* 801CC62C 001C958C 83 C1 00 E8 */ lwz r30, 0xe8(r1) +/* 801CC630 001C9590 83 A1 00 E4 */ lwz r29, 0xe4(r1) +/* 801CC634 001C9594 7C 08 03 A6 */ mtlr r0 +/* 801CC638 001C9598 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 801CC63C 001C959C 4E 80 00 20 */ blr + +.global Update__14CGunControllerFfR13CStateManager +Update__14CGunControllerFfR13CStateManager: +/* 801CC640 001C95A0 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801CC644 001C95A4 7C 08 02 A6 */ mflr r0 +/* 801CC648 001C95A8 90 01 00 44 */ stw r0, 0x44(r1) +/* 801CC64C 001C95AC 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801CC650 001C95B0 7C 9F 23 78 */ mr r31, r4 +/* 801CC654 001C95B4 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801CC658 001C95B8 7C 7E 1B 78 */ mr r30, r3 +/* 801CC65C 001C95BC 38 60 00 00 */ li r3, 0 +/* 801CC660 001C95C0 93 A1 00 34 */ stw r29, 0x34(r1) +/* 801CC664 001C95C4 80 BE 00 00 */ lwz r5, 0(r30) +/* 801CC668 001C95C8 88 1E 00 58 */ lbz r0, 0x58(r30) +/* 801CC66C 001C95CC 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801CC670 001C95D0 83 A5 00 10 */ lwz r29, 0x10(r5) +/* 801CC674 001C95D4 98 1E 00 58 */ stb r0, 0x58(r30) +/* 801CC678 001C95D8 80 1E 00 50 */ lwz r0, 0x50(r30) +/* 801CC67C 001C95DC 28 00 00 07 */ cmplwi r0, 7 +/* 801CC680 001C95E0 41 81 01 54 */ bgt lbl_801CC7D4 +/* 801CC684 001C95E4 3C 60 80 3E */ lis r3, lbl_803E5728@ha +/* 801CC688 001C95E8 54 00 10 3A */ slwi r0, r0, 2 +/* 801CC68C 001C95EC 38 63 57 28 */ addi r3, r3, lbl_803E5728@l +/* 801CC690 001C95F0 7C 03 00 2E */ lwzx r0, r3, r0 +/* 801CC694 001C95F4 7C 09 03 A6 */ mtctr r0 +/* 801CC698 001C95F8 4E 80 04 20 */ bctr +/* 801CC69C 001C95FC 7F A4 EB 78 */ mr r4, r29 +/* 801CC6A0 001C9600 7F E5 FB 78 */ mr r5, r31 +/* 801CC6A4 001C9604 38 7E 00 04 */ addi r3, r30, 4 +/* 801CC6A8 001C9608 48 00 08 39 */ bl Update__11CGSFreeLookFR9CAnimDatafR13CStateManager +/* 801CC6AC 001C960C 88 1E 00 58 */ lbz r0, 0x58(r30) +/* 801CC6B0 001C9610 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801CC6B4 001C9614 98 1E 00 58 */ stb r0, 0x58(r30) +/* 801CC6B8 001C9618 88 7E 00 58 */ lbz r3, 0x58(r30) +/* 801CC6BC 001C961C 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f +/* 801CC6C0 001C9620 41 82 01 14 */ beq lbl_801CC7D4 +/* 801CC6C4 001C9624 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f +/* 801CC6C8 001C9628 41 82 01 0C */ beq lbl_801CC7D4 +/* 801CC6CC 001C962C 80 BE 00 10 */ lwz r5, 0x10(r30) +/* 801CC6D0 001C9630 7F C3 F3 78 */ mr r3, r30 +/* 801CC6D4 001C9634 7F E4 FB 78 */ mr r4, r31 +/* 801CC6D8 001C9638 48 00 04 71 */ bl EnterComboFire__14CGunControllerFR13CStateManageri +/* 801CC6DC 001C963C 88 1E 00 58 */ lbz r0, 0x58(r30) +/* 801CC6E0 001C9640 38 60 00 00 */ li r3, 0 +/* 801CC6E4 001C9644 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801CC6E8 001C9648 98 1E 00 58 */ stb r0, 0x58(r30) +/* 801CC6EC 001C964C 48 00 00 E8 */ b lbl_801CC7D4 +/* 801CC6F0 001C9650 7F A4 EB 78 */ mr r4, r29 +/* 801CC6F4 001C9654 7F E5 FB 78 */ mr r5, r31 +/* 801CC6F8 001C9658 38 7E 00 1C */ addi r3, r30, 0x1c +/* 801CC6FC 001C965C 48 00 0B 9D */ bl Update__12CGSComboFireFR9CAnimDatafR13CStateManager +/* 801CC700 001C9660 88 1E 00 58 */ lbz r0, 0x58(r30) +/* 801CC704 001C9664 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801CC708 001C9668 98 1E 00 58 */ stb r0, 0x58(r30) +/* 801CC70C 001C966C 48 00 00 C8 */ b lbl_801CC7D4 +/* 801CC710 001C9670 7F A4 EB 78 */ mr r4, r29 +/* 801CC714 001C9674 7F E5 FB 78 */ mr r5, r31 +/* 801CC718 001C9678 38 7E 00 30 */ addi r3, r30, 0x30 +/* 801CC71C 001C967C 48 02 4D A1 */ bl Update__9CGSFidgetFR9CAnimDatafR13CStateManager +/* 801CC720 001C9680 88 1E 00 58 */ lbz r0, 0x58(r30) +/* 801CC724 001C9684 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801CC728 001C9688 98 1E 00 58 */ stb r0, 0x58(r30) +/* 801CC72C 001C968C 48 00 00 A8 */ b lbl_801CC7D4 +/* 801CC730 001C9690 3C 80 80 3D */ lis r4, lbl_803D1AA8@ha +/* 801CC734 001C9694 38 61 00 18 */ addi r3, r1, 0x18 +/* 801CC738 001C9698 38 84 1A A8 */ addi r4, r4, lbl_803D1AA8@l +/* 801CC73C 001C969C 4B E3 85 7D */ bl string_l__4rstlFPCc +/* 801CC740 001C96A0 C0 22 AB 74 */ lfs f1, lbl_805AC894@sda21(r2) +/* 801CC744 001C96A4 7F A3 EB 78 */ mr r3, r29 +/* 801CC748 001C96A8 38 81 00 18 */ addi r4, r1, 0x18 +/* 801CC74C 001C96AC 4B E5 FC A1 */ bl "IsAnimTimeRemaining__9CAnimDataCFfRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801CC750 001C96B0 7C 7D 1B 78 */ mr r29, r3 +/* 801CC754 001C96B4 38 61 00 18 */ addi r3, r1, 0x18 +/* 801CC758 001C96B8 48 17 13 89 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801CC75C 001C96BC 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 801CC760 001C96C0 40 82 00 74 */ bne lbl_801CC7D4 +/* 801CC764 001C96C4 80 9E 00 00 */ lwz r4, 0(r30) +/* 801CC768 001C96C8 7F E8 FB 78 */ mr r8, r31 +/* 801CC76C 001C96CC 80 BE 00 10 */ lwz r5, 0x10(r30) +/* 801CC770 001C96D0 38 7E 00 04 */ addi r3, r30, 4 +/* 801CC774 001C96D4 80 84 00 10 */ lwz r4, 0x10(r4) +/* 801CC778 001C96D8 38 E0 00 00 */ li r7, 0 +/* 801CC77C 001C96DC 80 DE 00 14 */ lwz r6, 0x14(r30) +/* 801CC780 001C96E0 C0 22 AB 78 */ lfs f1, lbl_805AC898@sda21(r2) +/* 801CC784 001C96E4 48 00 05 25 */ bl SetAnim__11CGSFreeLookFR9CAnimDataiiiR13CStateManagerf +/* 801CC788 001C96E8 90 7E 00 54 */ stw r3, 0x54(r30) +/* 801CC78C 001C96EC 38 00 00 02 */ li r0, 2 +/* 801CC790 001C96F0 90 1E 00 50 */ stw r0, 0x50(r30) +/* 801CC794 001C96F4 48 00 00 40 */ b lbl_801CC7D4 +/* 801CC798 001C96F8 3C 80 80 3D */ lis r4, lbl_803D1AA8@ha +/* 801CC79C 001C96FC 38 61 00 08 */ addi r3, r1, 8 +/* 801CC7A0 001C9700 38 84 1A A8 */ addi r4, r4, lbl_803D1AA8@l +/* 801CC7A4 001C9704 4B E3 85 15 */ bl string_l__4rstlFPCc +/* 801CC7A8 001C9708 C0 22 AB 74 */ lfs f1, lbl_805AC894@sda21(r2) +/* 801CC7AC 001C970C 7F A3 EB 78 */ mr r3, r29 +/* 801CC7B0 001C9710 38 81 00 08 */ addi r4, r1, 8 +/* 801CC7B4 001C9714 4B E5 FC 39 */ bl "IsAnimTimeRemaining__9CAnimDataCFfRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801CC7B8 001C9718 54 63 06 3E */ clrlwi r3, r3, 0x18 +/* 801CC7BC 001C971C 88 1E 00 58 */ lbz r0, 0x58(r30) +/* 801CC7C0 001C9720 7C 64 00 34 */ cntlzw r4, r3 +/* 801CC7C4 001C9724 50 80 16 30 */ rlwimi r0, r4, 2, 0x18, 0x18 +/* 801CC7C8 001C9728 38 61 00 08 */ addi r3, r1, 8 +/* 801CC7CC 001C972C 98 1E 00 58 */ stb r0, 0x58(r30) +/* 801CC7D0 001C9730 48 17 13 11 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801CC7D4: +/* 801CC7D4 001C9734 88 1E 00 58 */ lbz r0, 0x58(r30) +/* 801CC7D8 001C9738 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801CC7DC 001C973C 41 82 00 20 */ beq lbl_801CC7FC +/* 801CC7E0 001C9740 38 80 00 00 */ li r4, 0 +/* 801CC7E4 001C9744 38 60 00 01 */ li r3, 1 +/* 801CC7E8 001C9748 90 9E 00 50 */ stw r4, 0x50(r30) +/* 801CC7EC 001C974C 88 1E 00 58 */ lbz r0, 0x58(r30) +/* 801CC7F0 001C9750 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 801CC7F4 001C9754 98 1E 00 58 */ stb r0, 0x58(r30) +/* 801CC7F8 001C9758 48 00 00 08 */ b lbl_801CC800 +lbl_801CC7FC: +/* 801CC7FC 001C975C 38 60 00 00 */ li r3, 0 +lbl_801CC800: +/* 801CC800 001C9760 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801CC804 001C9764 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801CC808 001C9768 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801CC80C 001C976C 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 801CC810 001C9770 7C 08 03 A6 */ mtlr r0 +/* 801CC814 001C9774 38 21 00 40 */ addi r1, r1, 0x40 +/* 801CC818 001C9778 4E 80 00 20 */ blr + +.global LoadFidgetAnimAsync__14CGunControllerFR13CStateManageriii +LoadFidgetAnimAsync__14CGunControllerFR13CStateManageriii: +/* 801CC81C 001C977C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801CC820 001C9780 7C 08 02 A6 */ mflr r0 +/* 801CC824 001C9784 7C 88 23 78 */ mr r8, r4 +/* 801CC828 001C9788 90 01 00 14 */ stw r0, 0x14(r1) +/* 801CC82C 001C978C 81 23 00 00 */ lwz r9, 0(r3) +/* 801CC830 001C9790 38 63 00 30 */ addi r3, r3, 0x30 +/* 801CC834 001C9794 80 89 00 10 */ lwz r4, 0x10(r9) +/* 801CC838 001C9798 48 02 49 4D */ bl LoadAnimAsync__9CGSFidgetFR9CAnimDataiiiR13CStateManager +/* 801CC83C 001C979C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801CC840 001C97A0 7C 08 03 A6 */ mtlr r0 +/* 801CC844 001C97A4 38 21 00 10 */ addi r1, r1, 0x10 +/* 801CC848 001C97A8 4E 80 00 20 */ blr + +.global EnterStruck__14CGunControllerFR13CStateManagerf +EnterStruck__14CGunControllerFR13CStateManagerf: +/* 801CC84C 001C97AC 94 21 FE C0 */ stwu r1, -0x140(r1) +/* 801CC850 001C97B0 7C 08 02 A6 */ mflr r0 +/* 801CC854 001C97B4 90 01 01 44 */ stw r0, 0x144(r1) +/* 801CC858 001C97B8 DB E1 01 30 */ stfd f31, 0x130(r1) +/* 801CC85C 001C97BC F3 E1 01 38 */ psq_st f31, 312(r1), 0, qr0 +/* 801CC860 001C97C0 BF 61 01 1C */ stmw r27, 0x11c(r1) +/* 801CC864 001C97C4 7C 7C 1B 78 */ mr r28, r3 +/* 801CC868 001C97C8 FF E0 08 90 */ fmr f31, f1 +/* 801CC86C 001C97CC 80 03 00 50 */ lwz r0, 0x50(r3) +/* 801CC870 001C97D0 7C 9D 23 78 */ mr r29, r4 +/* 801CC874 001C97D4 7C BE 2B 78 */ mr r30, r5 +/* 801CC878 001C97D8 7C DB 33 78 */ mr r27, r6 +/* 801CC87C 001C97DC 2C 00 00 02 */ cmpwi r0, 2 +/* 801CC880 001C97E0 41 82 00 20 */ beq lbl_801CC8A0 +/* 801CC884 001C97E4 40 80 00 10 */ bge lbl_801CC894 +/* 801CC888 001C97E8 2C 00 00 00 */ cmpwi r0, 0 +/* 801CC88C 001C97EC 41 82 00 2C */ beq lbl_801CC8B8 +/* 801CC890 001C97F0 48 00 02 54 */ b lbl_801CCAE4 +lbl_801CC894: +/* 801CC894 001C97F4 2C 00 00 05 */ cmpwi r0, 5 +/* 801CC898 001C97F8 41 82 00 20 */ beq lbl_801CC8B8 +/* 801CC89C 001C97FC 48 00 02 48 */ b lbl_801CCAE4 +lbl_801CC8A0: +/* 801CC8A0 001C9800 88 1C 00 18 */ lbz r0, 0x18(r28) +/* 801CC8A4 001C9804 38 60 00 01 */ li r3, 1 +/* 801CC8A8 001C9808 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801CC8AC 001C980C 98 1C 00 18 */ stb r0, 0x18(r28) +/* 801CC8B0 001C9810 48 00 00 08 */ b lbl_801CC8B8 +/* 801CC8B4 001C9814 48 00 02 30 */ b lbl_801CCAE4 +lbl_801CC8B8: +/* 801CC8B8 001C9818 83 FC 00 10 */ lwz r31, 0x10(r28) +/* 801CC8BC 001C981C 38 61 00 18 */ addi r3, r1, 0x18 +/* 801CC8C0 001C9820 48 11 67 BD */ bl NoParameter__12CPASAnimParmFv +/* 801CC8C4 001C9824 38 61 00 20 */ addi r3, r1, 0x20 +/* 801CC8C8 001C9828 48 11 67 B5 */ bl NoParameter__12CPASAnimParmFv +/* 801CC8CC 001C982C 38 61 00 28 */ addi r3, r1, 0x28 +/* 801CC8D0 001C9830 48 11 67 AD */ bl NoParameter__12CPASAnimParmFv +/* 801CC8D4 001C9834 38 61 00 30 */ addi r3, r1, 0x30 +/* 801CC8D8 001C9838 48 11 67 A5 */ bl NoParameter__12CPASAnimParmFv +/* 801CC8DC 001C983C 38 61 00 38 */ addi r3, r1, 0x38 +/* 801CC8E0 001C9840 57 64 06 3E */ clrlwi r4, r27, 0x18 +/* 801CC8E4 001C9844 48 11 66 D1 */ bl FromBool__12CPASAnimParmFb +/* 801CC8E8 001C9848 38 61 00 40 */ addi r3, r1, 0x40 +/* 801CC8EC 001C984C 57 C4 06 3E */ clrlwi r4, r30, 0x18 +/* 801CC8F0 001C9850 48 11 66 C5 */ bl FromBool__12CPASAnimParmFb +/* 801CC8F4 001C9854 FC 20 F8 90 */ fmr f1, f31 +/* 801CC8F8 001C9858 38 61 00 48 */ addi r3, r1, 0x48 +/* 801CC8FC 001C985C 48 11 66 ED */ bl FromReal32__12CPASAnimParmFf +/* 801CC900 001C9860 7F E4 FB 78 */ mr r4, r31 +/* 801CC904 001C9864 38 61 00 50 */ addi r3, r1, 0x50 +/* 801CC908 001C9868 48 11 67 45 */ bl FromInt32__12CPASAnimParmFi +/* 801CC90C 001C986C 38 61 00 20 */ addi r3, r1, 0x20 +/* 801CC910 001C9870 38 01 00 18 */ addi r0, r1, 0x18 +/* 801CC914 001C9874 90 61 00 08 */ stw r3, 8(r1) +/* 801CC918 001C9878 38 61 00 80 */ addi r3, r1, 0x80 +/* 801CC91C 001C987C 38 A1 00 50 */ addi r5, r1, 0x50 +/* 801CC920 001C9880 38 C1 00 48 */ addi r6, r1, 0x48 +/* 801CC924 001C9884 90 01 00 0C */ stw r0, 0xc(r1) +/* 801CC928 001C9888 38 E1 00 40 */ addi r7, r1, 0x40 +/* 801CC92C 001C988C 39 01 00 38 */ addi r8, r1, 0x38 +/* 801CC930 001C9890 39 21 00 30 */ addi r9, r1, 0x30 +/* 801CC934 001C9894 39 41 00 28 */ addi r10, r1, 0x28 +/* 801CC938 001C9898 38 80 00 02 */ li r4, 2 +/* 801CC93C 001C989C 4B EB 09 89 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 801CC940 001C98A0 80 61 00 80 */ lwz r3, 0x80(r1) +/* 801CC944 001C98A4 38 C1 00 84 */ addi r6, r1, 0x84 +/* 801CC948 001C98A8 80 01 00 84 */ lwz r0, 0x84(r1) +/* 801CC94C 001C98AC 3B E1 00 CC */ addi r31, r1, 0xcc +/* 801CC950 001C98B0 90 61 00 C8 */ stw r3, 0xc8(r1) +/* 801CC954 001C98B4 38 A6 00 04 */ addi r5, r6, 4 +/* 801CC958 001C98B8 38 9F 00 04 */ addi r4, r31, 4 +/* 801CC95C 001C98BC 90 01 00 CC */ stw r0, 0xcc(r1) +/* 801CC960 001C98C0 7C 09 03 A6 */ mtctr r0 +/* 801CC964 001C98C4 2C 00 00 00 */ cmpwi r0, 0 +/* 801CC968 001C98C8 40 81 00 28 */ ble lbl_801CC990 +lbl_801CC96C: +/* 801CC96C 001C98CC 28 04 00 00 */ cmplwi r4, 0 +/* 801CC970 001C98D0 41 82 00 14 */ beq lbl_801CC984 +/* 801CC974 001C98D4 80 65 00 00 */ lwz r3, 0(r5) +/* 801CC978 001C98D8 80 05 00 04 */ lwz r0, 4(r5) +/* 801CC97C 001C98DC 90 64 00 00 */ stw r3, 0(r4) +/* 801CC980 001C98E0 90 04 00 04 */ stw r0, 4(r4) +lbl_801CC984: +/* 801CC984 001C98E4 38 84 00 08 */ addi r4, r4, 8 +/* 801CC988 001C98E8 38 A5 00 08 */ addi r5, r5, 8 +/* 801CC98C 001C98EC 42 00 FF E0 */ bdnz lbl_801CC96C +lbl_801CC990: +/* 801CC990 001C98F0 28 06 00 00 */ cmplwi r6, 0 +/* 801CC994 001C98F4 41 82 00 58 */ beq lbl_801CC9EC +/* 801CC998 001C98F8 80 A1 00 84 */ lwz r5, 0x84(r1) +/* 801CC99C 001C98FC 38 60 00 00 */ li r3, 0 +/* 801CC9A0 001C9900 2C 05 00 00 */ cmpwi r5, 0 +/* 801CC9A4 001C9904 40 81 00 40 */ ble lbl_801CC9E4 +/* 801CC9A8 001C9908 2C 05 00 08 */ cmpwi r5, 8 +/* 801CC9AC 001C990C 38 85 FF F8 */ addi r4, r5, -8 +/* 801CC9B0 001C9910 40 81 00 20 */ ble lbl_801CC9D0 +/* 801CC9B4 001C9914 38 04 00 07 */ addi r0, r4, 7 +/* 801CC9B8 001C9918 54 00 E8 FE */ srwi r0, r0, 3 +/* 801CC9BC 001C991C 7C 09 03 A6 */ mtctr r0 +/* 801CC9C0 001C9920 2C 04 00 00 */ cmpwi r4, 0 +/* 801CC9C4 001C9924 40 81 00 0C */ ble lbl_801CC9D0 +lbl_801CC9C8: +/* 801CC9C8 001C9928 38 63 00 08 */ addi r3, r3, 8 +/* 801CC9CC 001C992C 42 00 FF FC */ bdnz lbl_801CC9C8 +lbl_801CC9D0: +/* 801CC9D0 001C9930 7C 03 28 50 */ subf r0, r3, r5 +/* 801CC9D4 001C9934 7C 09 03 A6 */ mtctr r0 +/* 801CC9D8 001C9938 7C 03 28 00 */ cmpw r3, r5 +/* 801CC9DC 001C993C 40 80 00 08 */ bge lbl_801CC9E4 +lbl_801CC9E0: +/* 801CC9E0 001C9940 42 00 00 00 */ bdnz lbl_801CC9E0 +lbl_801CC9E4: +/* 801CC9E4 001C9944 38 00 00 00 */ li r0, 0 +/* 801CC9E8 001C9948 90 01 00 84 */ stw r0, 0x84(r1) +lbl_801CC9EC: +/* 801CC9EC 001C994C 80 9C 00 00 */ lwz r4, 0(r28) +/* 801CC9F0 001C9950 38 61 00 10 */ addi r3, r1, 0x10 +/* 801CC9F4 001C9954 80 DD 09 00 */ lwz r6, 0x900(r29) +/* 801CC9F8 001C9958 38 A1 00 C8 */ addi r5, r1, 0xc8 +/* 801CC9FC 001C995C 83 A4 00 10 */ lwz r29, 0x10(r4) +/* 801CCA00 001C9960 38 E0 FF FF */ li r7, -1 +/* 801CCA04 001C9964 38 9D 00 3C */ addi r4, r29, 0x3c +/* 801CCA08 001C9968 48 11 86 59 */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i +/* 801CCA0C 001C996C 83 61 00 14 */ lwz r27, 0x14(r1) +/* 801CCA10 001C9970 39 00 00 00 */ li r8, 0 +/* 801CCA14 001C9974 88 1D 02 20 */ lbz r0, 0x220(r29) +/* 801CCA18 001C9978 51 00 36 72 */ rlwimi r0, r8, 6, 0x19, 0x19 +/* 801CCA1C 001C997C 38 E0 00 01 */ li r7, 1 +/* 801CCA20 001C9980 C0 02 AB 70 */ lfs f0, lbl_805AC890@sda21(r2) +/* 801CCA24 001C9984 98 1D 02 20 */ stb r0, 0x220(r29) +/* 801CCA28 001C9988 38 00 FF FF */ li r0, -1 +/* 801CCA2C 001C998C 7F A3 EB 78 */ mr r3, r29 +/* 801CCA30 001C9990 38 81 00 58 */ addi r4, r1, 0x58 +/* 801CCA34 001C9994 88 DD 02 20 */ lbz r6, 0x220(r29) +/* 801CCA38 001C9998 50 E6 3E 30 */ rlwimi r6, r7, 7, 0x18, 0x18 +/* 801CCA3C 001C999C 38 A0 00 00 */ li r5, 0 +/* 801CCA40 001C99A0 98 DD 02 20 */ stb r6, 0x220(r29) +/* 801CCA44 001C99A4 93 61 00 58 */ stw r27, 0x58(r1) +/* 801CCA48 001C99A8 90 01 00 5C */ stw r0, 0x5c(r1) +/* 801CCA4C 001C99AC D0 01 00 60 */ stfs f0, 0x60(r1) +/* 801CCA50 001C99B0 98 E1 00 64 */ stb r7, 0x64(r1) +/* 801CCA54 001C99B4 91 01 00 68 */ stw r8, 0x68(r1) +/* 801CCA58 001C99B8 91 01 00 6C */ stw r8, 0x6c(r1) +/* 801CCA5C 001C99BC 99 01 00 70 */ stb r8, 0x70(r1) +/* 801CCA60 001C99C0 91 01 00 74 */ stw r8, 0x74(r1) +/* 801CCA64 001C99C4 91 01 00 78 */ stw r8, 0x78(r1) +/* 801CCA68 001C99C8 91 01 00 7C */ stw r8, 0x7c(r1) +/* 801CCA6C 001C99CC 4B E6 03 11 */ bl SetAnimation__9CAnimDataFRC18CAnimPlaybackParmsb +/* 801CCA70 001C99D0 57 C0 06 3F */ clrlwi. r0, r30, 0x18 +/* 801CCA74 001C99D4 93 7C 00 54 */ stw r27, 0x54(r28) +/* 801CCA78 001C99D8 38 00 00 06 */ li r0, 6 +/* 801CCA7C 001C99DC 41 82 00 08 */ beq lbl_801CCA84 +/* 801CCA80 001C99E0 38 00 00 07 */ li r0, 7 +lbl_801CCA84: +/* 801CCA84 001C99E4 28 1F 00 00 */ cmplwi r31, 0 +/* 801CCA88 001C99E8 90 1C 00 50 */ stw r0, 0x50(r28) +/* 801CCA8C 001C99EC 41 82 00 58 */ beq lbl_801CCAE4 +/* 801CCA90 001C99F0 80 A1 00 CC */ lwz r5, 0xcc(r1) +/* 801CCA94 001C99F4 38 60 00 00 */ li r3, 0 +/* 801CCA98 001C99F8 2C 05 00 00 */ cmpwi r5, 0 +/* 801CCA9C 001C99FC 40 81 00 40 */ ble lbl_801CCADC +/* 801CCAA0 001C9A00 2C 05 00 08 */ cmpwi r5, 8 +/* 801CCAA4 001C9A04 38 85 FF F8 */ addi r4, r5, -8 +/* 801CCAA8 001C9A08 40 81 00 20 */ ble lbl_801CCAC8 +/* 801CCAAC 001C9A0C 38 04 00 07 */ addi r0, r4, 7 +/* 801CCAB0 001C9A10 54 00 E8 FE */ srwi r0, r0, 3 +/* 801CCAB4 001C9A14 7C 09 03 A6 */ mtctr r0 +/* 801CCAB8 001C9A18 2C 04 00 00 */ cmpwi r4, 0 +/* 801CCABC 001C9A1C 40 81 00 0C */ ble lbl_801CCAC8 +lbl_801CCAC0: +/* 801CCAC0 001C9A20 38 63 00 08 */ addi r3, r3, 8 +/* 801CCAC4 001C9A24 42 00 FF FC */ bdnz lbl_801CCAC0 +lbl_801CCAC8: +/* 801CCAC8 001C9A28 7C 03 28 50 */ subf r0, r3, r5 +/* 801CCACC 001C9A2C 7C 09 03 A6 */ mtctr r0 +/* 801CCAD0 001C9A30 7C 03 28 00 */ cmpw r3, r5 +/* 801CCAD4 001C9A34 40 80 00 08 */ bge lbl_801CCADC +lbl_801CCAD8: +/* 801CCAD8 001C9A38 42 00 00 00 */ bdnz lbl_801CCAD8 +lbl_801CCADC: +/* 801CCADC 001C9A3C 38 00 00 00 */ li r0, 0 +/* 801CCAE0 001C9A40 90 01 00 CC */ stw r0, 0xcc(r1) +lbl_801CCAE4: +/* 801CCAE4 001C9A44 E3 E1 01 38 */ psq_l f31, 312(r1), 0, qr0 +/* 801CCAE8 001C9A48 CB E1 01 30 */ lfd f31, 0x130(r1) +/* 801CCAEC 001C9A4C BB 61 01 1C */ lmw r27, 0x11c(r1) +/* 801CCAF0 001C9A50 80 01 01 44 */ lwz r0, 0x144(r1) +/* 801CCAF4 001C9A54 7C 08 03 A6 */ mtlr r0 +/* 801CCAF8 001C9A58 38 21 01 40 */ addi r1, r1, 0x140 +/* 801CCAFC 001C9A5C 4E 80 00 20 */ blr + +.global EnterFidget__14CGunControllerFR13CStateManageriii +EnterFidget__14CGunControllerFR13CStateManageriii: +/* 801CCB00 001C9A60 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801CCB04 001C9A64 7C 08 02 A6 */ mflr r0 +/* 801CCB08 001C9A68 7C 88 23 78 */ mr r8, r4 +/* 801CCB0C 001C9A6C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801CCB10 001C9A70 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801CCB14 001C9A74 7C 7F 1B 78 */ mr r31, r3 +/* 801CCB18 001C9A78 81 23 00 00 */ lwz r9, 0(r3) +/* 801CCB1C 001C9A7C 38 7F 00 30 */ addi r3, r31, 0x30 +/* 801CCB20 001C9A80 80 89 00 10 */ lwz r4, 0x10(r9) +/* 801CCB24 001C9A84 48 02 47 AD */ bl SetAnim__9CGSFidgetFR9CAnimDataiiiR13CStateManager +/* 801CCB28 001C9A88 90 7F 00 54 */ stw r3, 0x54(r31) +/* 801CCB2C 001C9A8C 38 00 00 05 */ li r0, 5 +/* 801CCB30 001C9A90 90 1F 00 50 */ stw r0, 0x50(r31) +/* 801CCB34 001C9A94 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801CCB38 001C9A98 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801CCB3C 001C9A9C 7C 08 03 A6 */ mtlr r0 +/* 801CCB40 001C9AA0 38 21 00 10 */ addi r1, r1, 0x10 +/* 801CCB44 001C9AA4 4E 80 00 20 */ blr + +.global EnterComboFire__14CGunControllerFR13CStateManageri +EnterComboFire__14CGunControllerFR13CStateManageri: +/* 801CCB48 001C9AA8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801CCB4C 001C9AAC 7C 08 02 A6 */ mflr r0 +/* 801CCB50 001C9AB0 90 01 00 14 */ stw r0, 0x14(r1) +/* 801CCB54 001C9AB4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801CCB58 001C9AB8 7C 7F 1B 78 */ mr r31, r3 +/* 801CCB5C 001C9ABC 80 03 00 50 */ lwz r0, 0x50(r3) +/* 801CCB60 001C9AC0 2C 00 00 02 */ cmpwi r0, 2 +/* 801CCB64 001C9AC4 41 82 00 28 */ beq lbl_801CCB8C +/* 801CCB68 001C9AC8 80 DF 00 00 */ lwz r6, 0(r31) +/* 801CCB6C 001C9ACC 7C 87 23 78 */ mr r7, r4 +/* 801CCB70 001C9AD0 C0 22 AB 78 */ lfs f1, lbl_805AC898@sda21(r2) +/* 801CCB74 001C9AD4 38 7F 00 1C */ addi r3, r31, 0x1c +/* 801CCB78 001C9AD8 80 86 00 10 */ lwz r4, 0x10(r6) +/* 801CCB7C 001C9ADC 38 C0 00 00 */ li r6, 0 +/* 801CCB80 001C9AE0 48 00 05 21 */ bl SetAnim__12CGSComboFireFR9CAnimDataiiR13CStateManagerf +/* 801CCB84 001C9AE4 90 7F 00 54 */ stw r3, 0x54(r31) +/* 801CCB88 001C9AE8 48 00 00 0C */ b lbl_801CCB94 +lbl_801CCB8C: +/* 801CCB8C 001C9AEC 80 1F 00 0C */ lwz r0, 0xc(r31) +/* 801CCB90 001C9AF0 90 1F 00 20 */ stw r0, 0x20(r31) +lbl_801CCB94: +/* 801CCB94 001C9AF4 38 00 00 03 */ li r0, 3 +/* 801CCB98 001C9AF8 38 60 00 01 */ li r3, 1 +/* 801CCB9C 001C9AFC 90 1F 00 50 */ stw r0, 0x50(r31) +/* 801CCBA0 001C9B00 88 1F 00 58 */ lbz r0, 0x58(r31) +/* 801CCBA4 001C9B04 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801CCBA8 001C9B08 98 1F 00 58 */ stb r0, 0x58(r31) +/* 801CCBAC 001C9B0C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801CCBB0 001C9B10 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801CCBB4 001C9B14 7C 08 03 A6 */ mtlr r0 +/* 801CCBB8 001C9B18 38 21 00 10 */ addi r1, r1, 0x10 +/* 801CCBBC 001C9B1C 4E 80 00 20 */ blr + +.global EnterFreeLook__14CGunControllerFR13CStateManagerii +EnterFreeLook__14CGunControllerFR13CStateManagerii: +/* 801CCBC0 001C9B20 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801CCBC4 001C9B24 7C 08 02 A6 */ mflr r0 +/* 801CCBC8 001C9B28 90 01 00 14 */ stw r0, 0x14(r1) +/* 801CCBCC 001C9B2C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801CCBD0 001C9B30 7C 7F 1B 78 */ mr r31, r3 +/* 801CCBD4 001C9B34 80 03 00 50 */ lwz r0, 0x50(r3) +/* 801CCBD8 001C9B38 2C 00 00 03 */ cmpwi r0, 3 +/* 801CCBDC 001C9B3C 41 82 00 34 */ beq lbl_801CCC10 +/* 801CCBE0 001C9B40 88 1F 00 58 */ lbz r0, 0x58(r31) +/* 801CCBE4 001C9B44 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801CCBE8 001C9B48 40 82 00 28 */ bne lbl_801CCC10 +/* 801CCBEC 001C9B4C 80 FF 00 00 */ lwz r7, 0(r31) +/* 801CCBF0 001C9B50 7C 88 23 78 */ mr r8, r4 +/* 801CCBF4 001C9B54 C0 22 AB 78 */ lfs f1, lbl_805AC898@sda21(r2) +/* 801CCBF8 001C9B58 38 7F 00 04 */ addi r3, r31, 4 +/* 801CCBFC 001C9B5C 80 87 00 10 */ lwz r4, 0x10(r7) +/* 801CCC00 001C9B60 38 E0 00 00 */ li r7, 0 +/* 801CCC04 001C9B64 48 00 00 A5 */ bl SetAnim__11CGSFreeLookFR9CAnimDataiiiR13CStateManagerf +/* 801CCC08 001C9B68 90 7F 00 54 */ stw r3, 0x54(r31) +/* 801CCC0C 001C9B6C 48 00 00 0C */ b lbl_801CCC18 +lbl_801CCC10: +/* 801CCC10 001C9B70 80 1F 00 20 */ lwz r0, 0x20(r31) +/* 801CCC14 001C9B74 90 1F 00 0C */ stw r0, 0xc(r31) +lbl_801CCC18: +/* 801CCC18 001C9B78 38 00 00 02 */ li r0, 2 +/* 801CCC1C 001C9B7C 90 1F 00 50 */ stw r0, 0x50(r31) +/* 801CCC20 001C9B80 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801CCC24 001C9B84 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801CCC28 001C9B88 7C 08 03 A6 */ mtlr r0 +/* 801CCC2C 001C9B8C 38 21 00 10 */ addi r1, r1, 0x10 +/* 801CCC30 001C9B90 4E 80 00 20 */ blr + +.global __ct__14CGunControllerFR10CModelData +__ct__14CGunControllerFR10CModelData: +/* 801CCC34 001C9B94 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801CCC38 001C9B98 7C 08 02 A6 */ mflr r0 +/* 801CCC3C 001C9B9C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801CCC40 001C9BA0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801CCC44 001C9BA4 7C 7F 1B 78 */ mr r31, r3 +/* 801CCC48 001C9BA8 90 83 00 00 */ stw r4, 0(r3) +/* 801CCC4C 001C9BAC 38 7F 00 04 */ addi r3, r31, 4 +/* 801CCC50 001C9BB0 48 00 04 21 */ bl __ct__11CGSFreeLookFv +/* 801CCC54 001C9BB4 38 7F 00 1C */ addi r3, r31, 0x1c +/* 801CCC58 001C9BB8 48 00 08 01 */ bl __ct__12CGSComboFireFv +/* 801CCC5C 001C9BBC 38 7F 00 30 */ addi r3, r31, 0x30 +/* 801CCC60 001C9BC0 48 02 48 BD */ bl __ct__9CGSFidgetFv +/* 801CCC64 001C9BC4 38 A0 00 00 */ li r5, 0 +/* 801CCC68 001C9BC8 38 00 FF FF */ li r0, -1 +/* 801CCC6C 001C9BCC 90 BF 00 50 */ stw r5, 0x50(r31) +/* 801CCC70 001C9BD0 38 80 00 01 */ li r4, 1 +/* 801CCC74 001C9BD4 7F E3 FB 78 */ mr r3, r31 +/* 801CCC78 001C9BD8 90 1F 00 54 */ stw r0, 0x54(r31) +/* 801CCC7C 001C9BDC 88 1F 00 58 */ lbz r0, 0x58(r31) +/* 801CCC80 001C9BE0 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801CCC84 001C9BE4 98 1F 00 58 */ stb r0, 0x58(r31) +/* 801CCC88 001C9BE8 88 1F 00 58 */ lbz r0, 0x58(r31) +/* 801CCC8C 001C9BEC 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 801CCC90 001C9BF0 98 1F 00 58 */ stb r0, 0x58(r31) +/* 801CCC94 001C9BF4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801CCC98 001C9BF8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801CCC9C 001C9BFC 7C 08 03 A6 */ mtlr r0 +/* 801CCCA0 001C9C00 38 21 00 10 */ addi r1, r1, 0x10 +/* 801CCCA4 001C9C04 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Weapons/GunController/CGunMotion.s b/asm/Kyoto_CWD/Weapons/GunController/CGunMotion.s new file mode 100644 index 00000000..2b7335b9 --- /dev/null +++ b/asm/Kyoto_CWD/Weapons/GunController/CGunMotion.s @@ -0,0 +1,558 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global LoadAnimations__10CGunMotionFv +LoadAnimations__10CGunMotionFv: +/* 801D8F74 001D5ED4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D8F78 001D5ED8 7C 08 02 A6 */ mflr r0 +/* 801D8F7C 001D5EDC 7C 65 1B 78 */ mr r5, r3 +/* 801D8F80 001D5EE0 38 80 00 00 */ li r4, 0 +/* 801D8F84 001D5EE4 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D8F88 001D5EE8 38 C5 00 A8 */ addi r6, r5, 0xa8 +/* 801D8F8C 001D5EEC 38 A0 00 0E */ li r5, 0xe +/* 801D8F90 001D5EF0 38 E0 00 01 */ li r7, 1 +/* 801D8F94 001D5EF4 80 63 00 10 */ lwz r3, 0x10(r3) +/* 801D8F98 001D5EF8 48 0B 22 D5 */ bl "get_token_vector__12NWeaponTypesFR9CAnimDataiiRQ24rstl42vector<6CToken,Q24rstl17rmemory_allocator>b" +/* 801D8F9C 001D5EFC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D8FA0 001D5F00 7C 08 03 A6 */ mtlr r0 +/* 801D8FA4 001D5F04 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D8FA8 001D5F08 4E 80 00 20 */ blr + +.global EnterFidget__10CGunMotionFR13CStateManagerQ28SamusGun11EFidgetTypei +EnterFidget__10CGunMotionFR13CStateManagerQ28SamusGun11EFidgetTypei: +/* 801D8FAC 001D5F0C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D8FB0 001D5F10 7C 08 02 A6 */ mflr r0 +/* 801D8FB4 001D5F14 38 E0 00 01 */ li r7, 1 +/* 801D8FB8 001D5F18 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D8FBC 001D5F1C 88 03 00 B8 */ lbz r0, 0xb8(r3) +/* 801D8FC0 001D5F20 50 E0 3E 30 */ rlwimi r0, r7, 7, 0x18, 0x18 +/* 801D8FC4 001D5F24 7C C7 33 78 */ mr r7, r6 +/* 801D8FC8 001D5F28 38 C0 00 00 */ li r6, 0 +/* 801D8FCC 001D5F2C 98 03 00 B8 */ stb r0, 0xb8(r3) +/* 801D8FD0 001D5F30 38 63 00 4C */ addi r3, r3, 0x4c +/* 801D8FD4 001D5F34 4B FF 3B 2D */ bl EnterFidget__14CGunControllerFR13CStateManageriii +/* 801D8FD8 001D5F38 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D8FDC 001D5F3C 7C 08 03 A6 */ mtlr r0 +/* 801D8FE0 001D5F40 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D8FE4 001D5F44 4E 80 00 20 */ blr + +.global BasePosition__10CGunMotionFb +BasePosition__10CGunMotionFb: +/* 801D8FE8 001D5F48 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801D8FEC 001D5F4C 7C 08 02 A6 */ mflr r0 +/* 801D8FF0 001D5F50 39 00 00 00 */ li r8, 0 +/* 801D8FF4 001D5F54 90 01 00 34 */ stw r0, 0x34(r1) +/* 801D8FF8 001D5F58 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 801D8FFC 001D5F5C 38 80 00 01 */ li r4, 1 +/* 801D9000 001D5F60 80 63 00 10 */ lwz r3, 0x10(r3) +/* 801D9004 001D5F64 88 A3 02 20 */ lbz r5, 0x220(r3) +/* 801D9008 001D5F68 51 05 36 72 */ rlwimi r5, r8, 6, 0x19, 0x19 +/* 801D900C 001D5F6C 98 A3 02 20 */ stb r5, 0x220(r3) +/* 801D9010 001D5F70 88 03 02 20 */ lbz r0, 0x220(r3) +/* 801D9014 001D5F74 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801D9018 001D5F78 98 03 02 20 */ stb r0, 0x220(r3) +/* 801D901C 001D5F7C 41 82 00 08 */ beq lbl_801D9024 +/* 801D9020 001D5F80 39 00 00 06 */ li r8, 6 +lbl_801D9024: +/* 801D9024 001D5F84 C0 02 AC 98 */ lfs f0, lbl_805AC9B8@sda21(r2) +/* 801D9028 001D5F88 38 00 00 00 */ li r0, 0 +/* 801D902C 001D5F8C 38 E0 FF FF */ li r7, -1 +/* 801D9030 001D5F90 38 C0 00 01 */ li r6, 1 +/* 801D9034 001D5F94 91 01 00 08 */ stw r8, 8(r1) +/* 801D9038 001D5F98 38 81 00 08 */ addi r4, r1, 8 +/* 801D903C 001D5F9C 38 A0 00 00 */ li r5, 0 +/* 801D9040 001D5FA0 90 E1 00 0C */ stw r7, 0xc(r1) +/* 801D9044 001D5FA4 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801D9048 001D5FA8 98 C1 00 14 */ stb r6, 0x14(r1) +/* 801D904C 001D5FAC 90 01 00 18 */ stw r0, 0x18(r1) +/* 801D9050 001D5FB0 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801D9054 001D5FB4 98 01 00 20 */ stb r0, 0x20(r1) +/* 801D9058 001D5FB8 90 01 00 24 */ stw r0, 0x24(r1) +/* 801D905C 001D5FBC 90 01 00 28 */ stw r0, 0x28(r1) +/* 801D9060 001D5FC0 90 01 00 2C */ stw r0, 0x2c(r1) +/* 801D9064 001D5FC4 4B E5 3D 19 */ bl SetAnimation__9CAnimDataFRC18CAnimPlaybackParmsb +/* 801D9068 001D5FC8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801D906C 001D5FCC 7C 08 03 A6 */ mtlr r0 +/* 801D9070 001D5FD0 38 21 00 30 */ addi r1, r1, 0x30 +/* 801D9074 001D5FD4 4E 80 00 20 */ blr + +.global GetFreeLookSetId__10CGunMotionCFv +GetFreeLookSetId__10CGunMotionCFv: +/* 801D9078 001D5FD8 80 63 00 60 */ lwz r3, 0x60(r3) +/* 801D907C 001D5FDC 4E 80 00 20 */ blr + +.global ReturnToDefault__10CGunMotionFR13CStateManager +ReturnToDefault__10CGunMotionFR13CStateManager: +/* 801D9080 001D5FE0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801D9084 001D5FE4 7C 08 02 A6 */ mflr r0 +/* 801D9088 001D5FE8 C0 22 AC 9C */ lfs f1, lbl_805AC9BC@sda21(r2) +/* 801D908C 001D5FEC 38 63 00 4C */ addi r3, r3, 0x4c +/* 801D9090 001D5FF0 90 01 00 14 */ stw r0, 0x14(r1) +/* 801D9094 001D5FF4 4B FF 32 65 */ bl ReturnToDefault__14CGunControllerFR13CStateManagerf +/* 801D9098 001D5FF8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801D909C 001D5FFC 7C 08 03 A6 */ mtlr r0 +/* 801D90A0 001D6000 38 21 00 10 */ addi r1, r1, 0x10 +/* 801D90A4 001D6004 4E 80 00 20 */ blr + +.global Draw__10CGunMotionCFRC13CStateManagerRC12CTransform4f +Draw__10CGunMotionCFRC13CStateManagerRC12CTransform4f: +/* 801D90A8 001D6008 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801D90AC 001D600C 7C 08 02 A6 */ mflr r0 +/* 801D90B0 001D6010 C0 22 AC 98 */ lfs f1, lbl_805AC9B8@sda21(r2) +/* 801D90B4 001D6014 38 C0 00 00 */ li r6, 0 +/* 801D90B8 001D6018 90 01 00 24 */ stw r0, 0x24(r1) +/* 801D90BC 001D601C 38 00 00 03 */ li r0, 3 +/* 801D90C0 001D6020 FC 40 08 90 */ fmr f2, f1 +/* 801D90C4 001D6024 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801D90C8 001D6028 FC 60 08 90 */ fmr f3, f1 +/* 801D90CC 001D602C FC 80 08 90 */ fmr f4, f1 +/* 801D90D0 001D6030 7C BF 2B 78 */ mr r31, r5 +/* 801D90D4 001D6034 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801D90D8 001D6038 7C 9E 23 78 */ mr r30, r4 +/* 801D90DC 001D603C 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801D90E0 001D6040 7C 7D 1B 78 */ mr r29, r3 +/* 801D90E4 001D6044 38 61 00 0C */ addi r3, r1, 0xc +/* 801D90E8 001D6048 98 C1 00 08 */ stb r6, 8(r1) +/* 801D90EC 001D604C 98 C1 00 09 */ stb r6, 9(r1) +/* 801D90F0 001D6050 B0 01 00 0A */ sth r0, 0xa(r1) +/* 801D90F4 001D6054 48 18 A2 F9 */ bl __ct__6CColorFffff +/* 801D90F8 001D6058 7F A3 EB 78 */ mr r3, r29 +/* 801D90FC 001D605C 7F C4 F3 78 */ mr r4, r30 +/* 801D9100 001D6060 7F E5 FB 78 */ mr r5, r31 +/* 801D9104 001D6064 38 E1 00 08 */ addi r7, r1, 8 +/* 801D9108 001D6068 38 C0 00 00 */ li r6, 0 +/* 801D910C 001D606C 4B F3 BC B1 */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags +/* 801D9110 001D6070 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801D9114 001D6074 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801D9118 001D6078 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801D911C 001D607C 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801D9120 001D6080 7C 08 03 A6 */ mtlr r0 +/* 801D9124 001D6084 38 21 00 20 */ addi r1, r1, 0x20 +/* 801D9128 001D6088 4E 80 00 20 */ blr + +.global Update__10CGunMotionFfR13CStateManager +Update__10CGunMotionFfR13CStateManager: +/* 801D912C 001D608C 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801D9130 001D6090 7C 08 02 A6 */ mflr r0 +/* 801D9134 001D6094 38 E0 00 01 */ li r7, 1 +/* 801D9138 001D6098 90 01 00 44 */ stw r0, 0x44(r1) +/* 801D913C 001D609C 38 C1 00 08 */ addi r6, r1, 8 +/* 801D9140 001D60A0 DB E1 00 38 */ stfd f31, 0x38(r1) +/* 801D9144 001D60A4 FF E0 08 90 */ fmr f31, f1 +/* 801D9148 001D60A8 93 E1 00 34 */ stw r31, 0x34(r1) +/* 801D914C 001D60AC 7C 9F 23 78 */ mr r31, r4 +/* 801D9150 001D60B0 7F E5 FB 78 */ mr r5, r31 +/* 801D9154 001D60B4 93 C1 00 30 */ stw r30, 0x30(r1) +/* 801D9158 001D60B8 7C 7E 1B 78 */ mr r30, r3 +/* 801D915C 001D60BC 7F C4 F3 78 */ mr r4, r30 +/* 801D9160 001D60C0 38 61 00 0C */ addi r3, r1, 0xc +/* 801D9164 001D60C4 80 0D A3 90 */ lwz r0, lbl_805A8F50@sda21(r13) +/* 801D9168 001D60C8 90 01 00 08 */ stw r0, 8(r1) +/* 801D916C 001D60CC 4B F3 C9 C9 */ bl AdvanceAnimation__10CModelDataFfR13CStateManager7TAreaIdb +/* 801D9170 001D60D0 FC 20 F8 90 */ fmr f1, f31 +/* 801D9174 001D60D4 7F E4 FB 78 */ mr r4, r31 +/* 801D9178 001D60D8 38 7E 00 4C */ addi r3, r30, 0x4c +/* 801D917C 001D60DC 4B FF 34 C5 */ bl Update__14CGunControllerFfR13CStateManager +/* 801D9180 001D60E0 2C 03 00 01 */ cmpwi r3, 1 +/* 801D9184 001D60E4 41 82 00 08 */ beq lbl_801D918C +/* 801D9188 001D60E8 48 00 00 14 */ b lbl_801D919C +lbl_801D918C: +/* 801D918C 001D60EC 88 1E 00 B8 */ lbz r0, 0xb8(r30) +/* 801D9190 001D60F0 38 60 00 00 */ li r3, 0 +/* 801D9194 001D60F4 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801D9198 001D60F8 98 1E 00 B8 */ stb r0, 0xb8(r30) +lbl_801D919C: +/* 801D919C 001D60FC 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801D91A0 001D6100 CB E1 00 38 */ lfd f31, 0x38(r1) +/* 801D91A4 001D6104 83 E1 00 34 */ lwz r31, 0x34(r1) +/* 801D91A8 001D6108 83 C1 00 30 */ lwz r30, 0x30(r1) +/* 801D91AC 001D610C 7C 08 03 A6 */ mtlr r0 +/* 801D91B0 001D6110 38 21 00 40 */ addi r1, r1, 0x40 +/* 801D91B4 001D6114 4E 80 00 20 */ blr + +.global PlayPasAnim__10CGunMotionFQ28SamusGun15EAnimationStateR13CStateManagerfb +PlayPasAnim__10CGunMotionFQ28SamusGun15EAnimationStateR13CStateManagerfb: +/* 801D91B8 001D6118 94 21 FD E0 */ stwu r1, -0x220(r1) +/* 801D91BC 001D611C 7C 08 02 A6 */ mflr r0 +/* 801D91C0 001D6120 90 01 02 24 */ stw r0, 0x224(r1) +/* 801D91C4 001D6124 DB E1 02 10 */ stfd f31, 0x210(r1) +/* 801D91C8 001D6128 F3 E1 02 18 */ psq_st f31, 536(r1), 0, qr0 +/* 801D91CC 001D612C BF 21 01 F4 */ stmw r25, 0x1f4(r1) +/* 801D91D0 001D6130 7C 7E 1B 78 */ mr r30, r3 +/* 801D91D4 001D6134 7C 99 23 78 */ mr r25, r4 +/* 801D91D8 001D6138 80 63 00 10 */ lwz r3, 0x10(r3) +/* 801D91DC 001D613C FF E0 08 90 */ fmr f31, f1 +/* 801D91E0 001D6140 2C 19 00 03 */ cmpwi r25, 3 +/* 801D91E4 001D6144 7C BA 2B 78 */ mr r26, r5 +/* 801D91E8 001D6148 7C DB 33 78 */ mr r27, r6 +/* 801D91EC 001D614C 3B A3 00 3C */ addi r29, r3, 0x3c +/* 801D91F0 001D6150 3B E0 00 01 */ li r31, 1 +/* 801D91F4 001D6154 3B 80 FF FF */ li r28, -1 +/* 801D91F8 001D6158 41 82 03 24 */ beq lbl_801D951C +/* 801D91FC 001D615C 40 80 00 1C */ bge lbl_801D9218 +/* 801D9200 001D6160 2C 19 00 01 */ cmpwi r25, 1 +/* 801D9204 001D6164 41 82 03 40 */ beq lbl_801D9544 +/* 801D9208 001D6168 40 80 02 0C */ bge lbl_801D9414 +/* 801D920C 001D616C 2C 19 00 00 */ cmpwi r25, 0 +/* 801D9210 001D6170 40 80 00 18 */ bge lbl_801D9228 +/* 801D9214 001D6174 48 00 03 30 */ b lbl_801D9544 +lbl_801D9218: +/* 801D9218 001D6178 2C 19 00 05 */ cmpwi r25, 5 +/* 801D921C 001D617C 41 82 01 00 */ beq lbl_801D931C +/* 801D9220 001D6180 40 80 03 24 */ bge lbl_801D9544 +/* 801D9224 001D6184 48 00 03 10 */ b lbl_801D9534 +lbl_801D9228: +/* 801D9228 001D6188 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 801D922C 001D618C 48 10 9E 51 */ bl NoParameter__12CPASAnimParmFv +/* 801D9230 001D6190 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 801D9234 001D6194 48 10 9E 49 */ bl NoParameter__12CPASAnimParmFv +/* 801D9238 001D6198 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 801D923C 001D619C 48 10 9E 41 */ bl NoParameter__12CPASAnimParmFv +/* 801D9240 001D61A0 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 801D9244 001D61A4 48 10 9E 39 */ bl NoParameter__12CPASAnimParmFv +/* 801D9248 001D61A8 38 61 00 C0 */ addi r3, r1, 0xc0 +/* 801D924C 001D61AC 48 10 9E 31 */ bl NoParameter__12CPASAnimParmFv +/* 801D9250 001D61B0 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 801D9254 001D61B4 48 10 9E 29 */ bl NoParameter__12CPASAnimParmFv +/* 801D9258 001D61B8 38 61 00 D0 */ addi r3, r1, 0xd0 +/* 801D925C 001D61BC 48 10 9E 21 */ bl NoParameter__12CPASAnimParmFv +/* 801D9260 001D61C0 38 61 00 D8 */ addi r3, r1, 0xd8 +/* 801D9264 001D61C4 48 10 9E 19 */ bl NoParameter__12CPASAnimParmFv +/* 801D9268 001D61C8 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 801D926C 001D61CC 38 01 00 A0 */ addi r0, r1, 0xa0 +/* 801D9270 001D61D0 90 61 00 08 */ stw r3, 8(r1) +/* 801D9274 001D61D4 7F 24 CB 78 */ mr r4, r25 +/* 801D9278 001D61D8 38 61 01 A0 */ addi r3, r1, 0x1a0 +/* 801D927C 001D61DC 38 A1 00 D8 */ addi r5, r1, 0xd8 +/* 801D9280 001D61E0 90 01 00 0C */ stw r0, 0xc(r1) +/* 801D9284 001D61E4 38 C1 00 D0 */ addi r6, r1, 0xd0 +/* 801D9288 001D61E8 38 E1 00 C8 */ addi r7, r1, 0xc8 +/* 801D928C 001D61EC 39 01 00 C0 */ addi r8, r1, 0xc0 +/* 801D9290 001D61F0 39 21 00 B8 */ addi r9, r1, 0xb8 +/* 801D9294 001D61F4 39 41 00 B0 */ addi r10, r1, 0xb0 +/* 801D9298 001D61F8 4B EA 40 2D */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 801D929C 001D61FC 80 DA 09 00 */ lwz r6, 0x900(r26) +/* 801D92A0 001D6200 7F A4 EB 78 */ mr r4, r29 +/* 801D92A4 001D6204 38 61 00 E0 */ addi r3, r1, 0xe0 +/* 801D92A8 001D6208 38 A1 01 A0 */ addi r5, r1, 0x1a0 +/* 801D92AC 001D620C 38 E0 FF FF */ li r7, -1 +/* 801D92B0 001D6210 48 10 BD B1 */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i +/* 801D92B4 001D6214 34 C1 01 A4 */ addic. r6, r1, 0x1a4 +/* 801D92B8 001D6218 80 81 00 E4 */ lwz r4, 0xe4(r1) +/* 801D92BC 001D621C 41 82 00 58 */ beq lbl_801D9314 +/* 801D92C0 001D6220 80 E6 00 00 */ lwz r7, 0(r6) +/* 801D92C4 001D6224 38 60 00 00 */ li r3, 0 +/* 801D92C8 001D6228 2C 07 00 00 */ cmpwi r7, 0 +/* 801D92CC 001D622C 40 81 00 40 */ ble lbl_801D930C +/* 801D92D0 001D6230 2C 07 00 08 */ cmpwi r7, 8 +/* 801D92D4 001D6234 38 A7 FF F8 */ addi r5, r7, -8 +/* 801D92D8 001D6238 40 81 00 20 */ ble lbl_801D92F8 +/* 801D92DC 001D623C 38 05 00 07 */ addi r0, r5, 7 +/* 801D92E0 001D6240 54 00 E8 FE */ srwi r0, r0, 3 +/* 801D92E4 001D6244 7C 09 03 A6 */ mtctr r0 +/* 801D92E8 001D6248 2C 05 00 00 */ cmpwi r5, 0 +/* 801D92EC 001D624C 40 81 00 0C */ ble lbl_801D92F8 +lbl_801D92F0: +/* 801D92F0 001D6250 38 63 00 08 */ addi r3, r3, 8 +/* 801D92F4 001D6254 42 00 FF FC */ bdnz lbl_801D92F0 +lbl_801D92F8: +/* 801D92F8 001D6258 7C 03 38 50 */ subf r0, r3, r7 +/* 801D92FC 001D625C 7C 09 03 A6 */ mtctr r0 +/* 801D9300 001D6260 7C 03 38 00 */ cmpw r3, r7 +/* 801D9304 001D6264 40 80 00 08 */ bge lbl_801D930C +lbl_801D9308: +/* 801D9308 001D6268 42 00 00 00 */ bdnz lbl_801D9308 +lbl_801D930C: +/* 801D930C 001D626C 38 00 00 00 */ li r0, 0 +/* 801D9310 001D6270 90 06 00 00 */ stw r0, 0(r6) +lbl_801D9314: +/* 801D9314 001D6274 7C 9C 23 78 */ mr r28, r4 +/* 801D9318 001D6278 48 00 02 2C */ b lbl_801D9544 +lbl_801D931C: +/* 801D931C 001D627C 38 61 00 58 */ addi r3, r1, 0x58 +/* 801D9320 001D6280 48 10 9D 5D */ bl NoParameter__12CPASAnimParmFv +/* 801D9324 001D6284 38 61 00 60 */ addi r3, r1, 0x60 +/* 801D9328 001D6288 48 10 9D 55 */ bl NoParameter__12CPASAnimParmFv +/* 801D932C 001D628C 38 61 00 68 */ addi r3, r1, 0x68 +/* 801D9330 001D6290 48 10 9D 4D */ bl NoParameter__12CPASAnimParmFv +/* 801D9334 001D6294 38 61 00 70 */ addi r3, r1, 0x70 +/* 801D9338 001D6298 48 10 9D 45 */ bl NoParameter__12CPASAnimParmFv +/* 801D933C 001D629C 38 61 00 78 */ addi r3, r1, 0x78 +/* 801D9340 001D62A0 48 10 9D 3D */ bl NoParameter__12CPASAnimParmFv +/* 801D9344 001D62A4 38 61 00 80 */ addi r3, r1, 0x80 +/* 801D9348 001D62A8 48 10 9D 35 */ bl NoParameter__12CPASAnimParmFv +/* 801D934C 001D62AC 38 61 00 88 */ addi r3, r1, 0x88 +/* 801D9350 001D62B0 48 10 9D 2D */ bl NoParameter__12CPASAnimParmFv +/* 801D9354 001D62B4 38 61 00 90 */ addi r3, r1, 0x90 +/* 801D9358 001D62B8 38 80 00 00 */ li r4, 0 +/* 801D935C 001D62BC 48 10 9C 29 */ bl FromEnum__12CPASAnimParmFi +/* 801D9360 001D62C0 38 61 00 60 */ addi r3, r1, 0x60 +/* 801D9364 001D62C4 38 01 00 58 */ addi r0, r1, 0x58 +/* 801D9368 001D62C8 90 61 00 08 */ stw r3, 8(r1) +/* 801D936C 001D62CC 7F 24 CB 78 */ mr r4, r25 +/* 801D9370 001D62D0 38 61 01 58 */ addi r3, r1, 0x158 +/* 801D9374 001D62D4 38 A1 00 90 */ addi r5, r1, 0x90 +/* 801D9378 001D62D8 90 01 00 0C */ stw r0, 0xc(r1) +/* 801D937C 001D62DC 38 C1 00 88 */ addi r6, r1, 0x88 +/* 801D9380 001D62E0 38 E1 00 80 */ addi r7, r1, 0x80 +/* 801D9384 001D62E4 39 01 00 78 */ addi r8, r1, 0x78 +/* 801D9388 001D62E8 39 21 00 70 */ addi r9, r1, 0x70 +/* 801D938C 001D62EC 39 41 00 68 */ addi r10, r1, 0x68 +/* 801D9390 001D62F0 4B EA 3F 35 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 801D9394 001D62F4 80 DA 09 00 */ lwz r6, 0x900(r26) +/* 801D9398 001D62F8 7F A4 EB 78 */ mr r4, r29 +/* 801D939C 001D62FC 38 61 00 98 */ addi r3, r1, 0x98 +/* 801D93A0 001D6300 38 A1 01 58 */ addi r5, r1, 0x158 +/* 801D93A4 001D6304 38 E0 FF FF */ li r7, -1 +/* 801D93A8 001D6308 48 10 BC B9 */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i +/* 801D93AC 001D630C 34 C1 01 5C */ addic. r6, r1, 0x15c +/* 801D93B0 001D6310 80 81 00 9C */ lwz r4, 0x9c(r1) +/* 801D93B4 001D6314 41 82 00 58 */ beq lbl_801D940C +/* 801D93B8 001D6318 80 E6 00 00 */ lwz r7, 0(r6) +/* 801D93BC 001D631C 38 60 00 00 */ li r3, 0 +/* 801D93C0 001D6320 2C 07 00 00 */ cmpwi r7, 0 +/* 801D93C4 001D6324 40 81 00 40 */ ble lbl_801D9404 +/* 801D93C8 001D6328 2C 07 00 08 */ cmpwi r7, 8 +/* 801D93CC 001D632C 38 A7 FF F8 */ addi r5, r7, -8 +/* 801D93D0 001D6330 40 81 00 20 */ ble lbl_801D93F0 +/* 801D93D4 001D6334 38 05 00 07 */ addi r0, r5, 7 +/* 801D93D8 001D6338 54 00 E8 FE */ srwi r0, r0, 3 +/* 801D93DC 001D633C 7C 09 03 A6 */ mtctr r0 +/* 801D93E0 001D6340 2C 05 00 00 */ cmpwi r5, 0 +/* 801D93E4 001D6344 40 81 00 0C */ ble lbl_801D93F0 +lbl_801D93E8: +/* 801D93E8 001D6348 38 63 00 08 */ addi r3, r3, 8 +/* 801D93EC 001D634C 42 00 FF FC */ bdnz lbl_801D93E8 +lbl_801D93F0: +/* 801D93F0 001D6350 7C 03 38 50 */ subf r0, r3, r7 +/* 801D93F4 001D6354 7C 09 03 A6 */ mtctr r0 +/* 801D93F8 001D6358 7C 03 38 00 */ cmpw r3, r7 +/* 801D93FC 001D635C 40 80 00 08 */ bge lbl_801D9404 +lbl_801D9400: +/* 801D9400 001D6360 42 00 00 00 */ bdnz lbl_801D9400 +lbl_801D9404: +/* 801D9404 001D6364 38 00 00 00 */ li r0, 0 +/* 801D9408 001D6368 90 06 00 00 */ stw r0, 0(r6) +lbl_801D940C: +/* 801D940C 001D636C 7C 9C 23 78 */ mr r28, r4 +/* 801D9410 001D6370 48 00 01 34 */ b lbl_801D9544 +lbl_801D9414: +/* 801D9414 001D6374 38 61 00 10 */ addi r3, r1, 0x10 +/* 801D9418 001D6378 48 10 9C 65 */ bl NoParameter__12CPASAnimParmFv +/* 801D941C 001D637C 38 61 00 18 */ addi r3, r1, 0x18 +/* 801D9420 001D6380 48 10 9C 5D */ bl NoParameter__12CPASAnimParmFv +/* 801D9424 001D6384 38 61 00 20 */ addi r3, r1, 0x20 +/* 801D9428 001D6388 48 10 9C 55 */ bl NoParameter__12CPASAnimParmFv +/* 801D942C 001D638C 38 61 00 28 */ addi r3, r1, 0x28 +/* 801D9430 001D6390 48 10 9C 4D */ bl NoParameter__12CPASAnimParmFv +/* 801D9434 001D6394 38 61 00 30 */ addi r3, r1, 0x30 +/* 801D9438 001D6398 38 80 00 00 */ li r4, 0 +/* 801D943C 001D639C 48 10 9B 79 */ bl FromBool__12CPASAnimParmFb +/* 801D9440 001D63A0 38 61 00 38 */ addi r3, r1, 0x38 +/* 801D9444 001D63A4 57 64 06 3E */ clrlwi r4, r27, 0x18 +/* 801D9448 001D63A8 48 10 9B 6D */ bl FromBool__12CPASAnimParmFb +/* 801D944C 001D63AC FC 20 F8 90 */ fmr f1, f31 +/* 801D9450 001D63B0 38 61 00 40 */ addi r3, r1, 0x40 +/* 801D9454 001D63B4 48 10 9B 95 */ bl FromReal32__12CPASAnimParmFf +/* 801D9458 001D63B8 38 61 00 48 */ addi r3, r1, 0x48 +/* 801D945C 001D63BC 38 80 00 00 */ li r4, 0 +/* 801D9460 001D63C0 48 10 9B ED */ bl FromInt32__12CPASAnimParmFi +/* 801D9464 001D63C4 38 61 00 18 */ addi r3, r1, 0x18 +/* 801D9468 001D63C8 38 01 00 10 */ addi r0, r1, 0x10 +/* 801D946C 001D63CC 90 61 00 08 */ stw r3, 8(r1) +/* 801D9470 001D63D0 7F 24 CB 78 */ mr r4, r25 +/* 801D9474 001D63D4 38 61 01 10 */ addi r3, r1, 0x110 +/* 801D9478 001D63D8 38 A1 00 48 */ addi r5, r1, 0x48 +/* 801D947C 001D63DC 90 01 00 0C */ stw r0, 0xc(r1) +/* 801D9480 001D63E0 38 C1 00 40 */ addi r6, r1, 0x40 +/* 801D9484 001D63E4 38 E1 00 38 */ addi r7, r1, 0x38 +/* 801D9488 001D63E8 39 01 00 30 */ addi r8, r1, 0x30 +/* 801D948C 001D63EC 39 21 00 28 */ addi r9, r1, 0x28 +/* 801D9490 001D63F0 39 41 00 20 */ addi r10, r1, 0x20 +/* 801D9494 001D63F4 4B EA 3E 31 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 801D9498 001D63F8 80 DA 09 00 */ lwz r6, 0x900(r26) +/* 801D949C 001D63FC 7F A4 EB 78 */ mr r4, r29 +/* 801D94A0 001D6400 38 61 00 50 */ addi r3, r1, 0x50 +/* 801D94A4 001D6404 38 A1 01 10 */ addi r5, r1, 0x110 +/* 801D94A8 001D6408 38 E0 FF FF */ li r7, -1 +/* 801D94AC 001D640C 48 10 BB B5 */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i +/* 801D94B0 001D6410 34 C1 01 14 */ addic. r6, r1, 0x114 +/* 801D94B4 001D6414 80 81 00 54 */ lwz r4, 0x54(r1) +/* 801D94B8 001D6418 41 82 00 58 */ beq lbl_801D9510 +/* 801D94BC 001D641C 80 E6 00 00 */ lwz r7, 0(r6) +/* 801D94C0 001D6420 38 60 00 00 */ li r3, 0 +/* 801D94C4 001D6424 2C 07 00 00 */ cmpwi r7, 0 +/* 801D94C8 001D6428 40 81 00 40 */ ble lbl_801D9508 +/* 801D94CC 001D642C 2C 07 00 08 */ cmpwi r7, 8 +/* 801D94D0 001D6430 38 A7 FF F8 */ addi r5, r7, -8 +/* 801D94D4 001D6434 40 81 00 20 */ ble lbl_801D94F4 +/* 801D94D8 001D6438 38 05 00 07 */ addi r0, r5, 7 +/* 801D94DC 001D643C 54 00 E8 FE */ srwi r0, r0, 3 +/* 801D94E0 001D6440 7C 09 03 A6 */ mtctr r0 +/* 801D94E4 001D6444 2C 05 00 00 */ cmpwi r5, 0 +/* 801D94E8 001D6448 40 81 00 0C */ ble lbl_801D94F4 +lbl_801D94EC: +/* 801D94EC 001D644C 38 63 00 08 */ addi r3, r3, 8 +/* 801D94F0 001D6450 42 00 FF FC */ bdnz lbl_801D94EC +lbl_801D94F4: +/* 801D94F4 001D6454 7C 03 38 50 */ subf r0, r3, r7 +/* 801D94F8 001D6458 7C 09 03 A6 */ mtctr r0 +/* 801D94FC 001D645C 7C 03 38 00 */ cmpw r3, r7 +/* 801D9500 001D6460 40 80 00 08 */ bge lbl_801D9508 +lbl_801D9504: +/* 801D9504 001D6464 42 00 00 00 */ bdnz lbl_801D9504 +lbl_801D9508: +/* 801D9508 001D6468 38 00 00 00 */ li r0, 0 +/* 801D950C 001D646C 90 06 00 00 */ stw r0, 0(r6) +lbl_801D9510: +/* 801D9510 001D6470 7C 9C 23 78 */ mr r28, r4 +/* 801D9514 001D6474 3B E0 00 00 */ li r31, 0 +/* 801D9518 001D6478 48 00 00 2C */ b lbl_801D9544 +lbl_801D951C: +/* 801D951C 001D647C 7F 44 D3 78 */ mr r4, r26 +/* 801D9520 001D6480 38 7E 00 4C */ addi r3, r30, 0x4c +/* 801D9524 001D6484 38 A0 00 00 */ li r5, 0 +/* 801D9528 001D6488 38 C0 FF FF */ li r6, -1 +/* 801D952C 001D648C 4B FF 36 95 */ bl EnterFreeLook__14CGunControllerFR13CStateManagerii +/* 801D9530 001D6490 48 00 00 14 */ b lbl_801D9544 +lbl_801D9534: +/* 801D9534 001D6494 7F 44 D3 78 */ mr r4, r26 +/* 801D9538 001D6498 38 7E 00 4C */ addi r3, r30, 0x4c +/* 801D953C 001D649C 38 A0 00 00 */ li r5, 0 +/* 801D9540 001D64A0 4B FF 36 09 */ bl EnterComboFire__14CGunControllerFR13CStateManageri +lbl_801D9544: +/* 801D9544 001D64A4 2C 1C FF FF */ cmpwi r28, -1 +/* 801D9548 001D64A8 41 82 00 70 */ beq lbl_801D95B8 +/* 801D954C 001D64AC 88 1E 00 B8 */ lbz r0, 0xb8(r30) +/* 801D9550 001D64B0 39 20 00 01 */ li r9, 1 +/* 801D9554 001D64B4 51 20 3E 30 */ rlwimi r0, r9, 7, 0x18, 0x18 +/* 801D9558 001D64B8 C0 02 AC 98 */ lfs f0, lbl_805AC9B8@sda21(r2) +/* 801D955C 001D64BC 98 1E 00 B8 */ stb r0, 0xb8(r30) +/* 801D9560 001D64C0 38 C0 FF FF */ li r6, -1 +/* 801D9564 001D64C4 38 00 00 00 */ li r0, 0 +/* 801D9568 001D64C8 38 81 00 E8 */ addi r4, r1, 0xe8 +/* 801D956C 001D64CC 80 7E 00 10 */ lwz r3, 0x10(r30) +/* 801D9570 001D64D0 38 A0 00 00 */ li r5, 0 +/* 801D9574 001D64D4 88 E3 02 20 */ lbz r7, 0x220(r3) +/* 801D9578 001D64D8 53 E7 36 72 */ rlwimi r7, r31, 6, 0x19, 0x19 +/* 801D957C 001D64DC 98 E3 02 20 */ stb r7, 0x220(r3) +/* 801D9580 001D64E0 88 E3 02 20 */ lbz r7, 0x220(r3) +/* 801D9584 001D64E4 51 27 3E 30 */ rlwimi r7, r9, 7, 0x18, 0x18 +/* 801D9588 001D64E8 98 E3 02 20 */ stb r7, 0x220(r3) +/* 801D958C 001D64EC 93 81 00 E8 */ stw r28, 0xe8(r1) +/* 801D9590 001D64F0 90 C1 00 EC */ stw r6, 0xec(r1) +/* 801D9594 001D64F4 D0 01 00 F0 */ stfs f0, 0xf0(r1) +/* 801D9598 001D64F8 99 21 00 F4 */ stb r9, 0xf4(r1) +/* 801D959C 001D64FC 90 01 00 F8 */ stw r0, 0xf8(r1) +/* 801D95A0 001D6500 90 01 00 FC */ stw r0, 0xfc(r1) +/* 801D95A4 001D6504 98 01 01 00 */ stb r0, 0x100(r1) +/* 801D95A8 001D6508 90 01 01 04 */ stw r0, 0x104(r1) +/* 801D95AC 001D650C 90 01 01 08 */ stw r0, 0x108(r1) +/* 801D95B0 001D6510 90 01 01 0C */ stw r0, 0x10c(r1) +/* 801D95B4 001D6514 4B E5 37 C9 */ bl SetAnimation__9CAnimDataFRC18CAnimPlaybackParmsb +lbl_801D95B8: +/* 801D95B8 001D6518 57 E3 06 3E */ clrlwi r3, r31, 0x18 +/* 801D95BC 001D651C E3 E1 02 18 */ psq_l f31, 536(r1), 0, qr0 +/* 801D95C0 001D6520 CB E1 02 10 */ lfd f31, 0x210(r1) +/* 801D95C4 001D6524 BB 21 01 F4 */ lmw r25, 0x1f4(r1) +/* 801D95C8 001D6528 80 01 02 24 */ lwz r0, 0x224(r1) +/* 801D95CC 001D652C 7C 08 03 A6 */ mtlr r0 +/* 801D95D0 001D6530 38 21 02 20 */ addi r1, r1, 0x220 +/* 801D95D4 001D6534 4E 80 00 20 */ blr + +.global __dt__10CGunMotionFv +__dt__10CGunMotionFv: +/* 801D95D8 001D6538 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801D95DC 001D653C 7C 08 02 A6 */ mflr r0 +/* 801D95E0 001D6540 90 01 00 34 */ stw r0, 0x34(r1) +/* 801D95E4 001D6544 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801D95E8 001D6548 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801D95EC 001D654C 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801D95F0 001D6550 7C 9D 23 78 */ mr r29, r4 +/* 801D95F4 001D6554 93 81 00 20 */ stw r28, 0x20(r1) +/* 801D95F8 001D6558 7C 7C 1B 79 */ or. r28, r3, r3 +/* 801D95FC 001D655C 41 82 00 80 */ beq lbl_801D967C +/* 801D9600 001D6560 34 1C 00 A8 */ addic. r0, r28, 0xa8 +/* 801D9604 001D6564 41 82 00 50 */ beq lbl_801D9654 +/* 801D9608 001D6568 80 1C 00 AC */ lwz r0, 0xac(r28) +/* 801D960C 001D656C 83 DC 00 B4 */ lwz r30, 0xb4(r28) +/* 801D9610 001D6570 54 00 18 38 */ slwi r0, r0, 3 +/* 801D9614 001D6574 7F FE 02 14 */ add r31, r30, r0 +/* 801D9618 001D6578 93 C1 00 0C */ stw r30, 0xc(r1) +/* 801D961C 001D657C 93 E1 00 14 */ stw r31, 0x14(r1) +/* 801D9620 001D6580 93 E1 00 10 */ stw r31, 0x10(r1) +/* 801D9624 001D6584 93 C1 00 08 */ stw r30, 8(r1) +/* 801D9628 001D6588 48 00 00 14 */ b lbl_801D963C +lbl_801D962C: +/* 801D962C 001D658C 7F C3 F3 78 */ mr r3, r30 +/* 801D9630 001D6590 38 80 FF FF */ li r4, -1 +/* 801D9634 001D6594 48 16 78 0D */ bl __dt__6CTokenFv +/* 801D9638 001D6598 3B DE 00 08 */ addi r30, r30, 8 +lbl_801D963C: +/* 801D963C 001D659C 7C 1E F8 40 */ cmplw r30, r31 +/* 801D9640 001D65A0 40 82 FF EC */ bne lbl_801D962C +/* 801D9644 001D65A4 80 7C 00 B4 */ lwz r3, 0xb4(r28) +/* 801D9648 001D65A8 28 03 00 00 */ cmplwi r3, 0 +/* 801D964C 001D65AC 41 82 00 08 */ beq lbl_801D9654 +/* 801D9650 001D65B0 48 13 C2 E1 */ bl Free__7CMemoryFPCv +lbl_801D9654: +/* 801D9654 001D65B4 38 7C 00 4C */ addi r3, r28, 0x4c +/* 801D9658 001D65B8 38 80 FF FF */ li r4, -1 +/* 801D965C 001D65BC 4B F4 44 C1 */ bl __dt__14CGunControllerFv +/* 801D9660 001D65C0 7F 83 E3 78 */ mr r3, r28 +/* 801D9664 001D65C4 38 80 FF FF */ li r4, -1 +/* 801D9668 001D65C8 4B F3 D3 E5 */ bl __dt__10CModelDataFv +/* 801D966C 001D65CC 7F A0 07 35 */ extsh. r0, r29 +/* 801D9670 001D65D0 40 81 00 0C */ ble lbl_801D967C +/* 801D9674 001D65D4 7F 83 E3 78 */ mr r3, r28 +/* 801D9678 001D65D8 48 13 C2 B9 */ bl Free__7CMemoryFPCv +lbl_801D967C: +/* 801D967C 001D65DC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801D9680 001D65E0 7F 83 E3 78 */ mr r3, r28 +/* 801D9684 001D65E4 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801D9688 001D65E8 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801D968C 001D65EC 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801D9690 001D65F0 83 81 00 20 */ lwz r28, 0x20(r1) +/* 801D9694 001D65F4 7C 08 03 A6 */ mtlr r0 +/* 801D9698 001D65F8 38 21 00 30 */ addi r1, r1, 0x30 +/* 801D969C 001D65FC 4E 80 00 20 */ blr + +.global __ct__10CGunMotionFUiRC9CVector3f +__ct__10CGunMotionFUiRC9CVector3f: +/* 801D96A0 001D6600 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801D96A4 001D6604 7C 08 02 A6 */ mflr r0 +/* 801D96A8 001D6608 90 01 00 34 */ stw r0, 0x34(r1) +/* 801D96AC 001D660C 38 00 00 00 */ li r0, 0 +/* 801D96B0 001D6610 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801D96B4 001D6614 7C 7F 1B 78 */ mr r31, r3 +/* 801D96B8 001D6618 C0 45 00 00 */ lfs f2, 0(r5) +/* 801D96BC 001D661C C0 25 00 04 */ lfs f1, 4(r5) +/* 801D96C0 001D6620 C0 05 00 08 */ lfs f0, 8(r5) +/* 801D96C4 001D6624 90 81 00 08 */ stw r4, 8(r1) +/* 801D96C8 001D6628 38 81 00 08 */ addi r4, r1, 8 +/* 801D96CC 001D662C 90 01 00 0C */ stw r0, 0xc(r1) +/* 801D96D0 001D6630 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 801D96D4 001D6634 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 801D96D8 001D6638 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801D96DC 001D663C 98 01 00 1C */ stb r0, 0x1c(r1) +/* 801D96E0 001D6640 90 01 00 20 */ stw r0, 0x20(r1) +/* 801D96E4 001D6644 4B F3 D4 71 */ bl __ct__10CModelDataFRC8CAnimRes +/* 801D96E8 001D6648 7F E4 FB 78 */ mr r4, r31 +/* 801D96EC 001D664C 38 7F 00 4C */ addi r3, r31, 0x4c +/* 801D96F0 001D6650 4B FF 35 45 */ bl __ct__14CGunControllerFR10CModelData +/* 801D96F4 001D6654 38 80 00 00 */ li r4, 0 +/* 801D96F8 001D6658 7F E3 FB 78 */ mr r3, r31 +/* 801D96FC 001D665C 90 9F 00 AC */ stw r4, 0xac(r31) +/* 801D9700 001D6660 90 9F 00 B0 */ stw r4, 0xb0(r31) +/* 801D9704 001D6664 90 9F 00 B4 */ stw r4, 0xb4(r31) +/* 801D9708 001D6668 88 1F 00 B8 */ lbz r0, 0xb8(r31) +/* 801D970C 001D666C 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801D9710 001D6670 98 1F 00 B8 */ stb r0, 0xb8(r31) +/* 801D9714 001D6674 4B FF F8 61 */ bl LoadAnimations__10CGunMotionFv +/* 801D9718 001D6678 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801D971C 001D667C 7F E3 FB 78 */ mr r3, r31 +/* 801D9720 001D6680 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801D9724 001D6684 7C 08 03 A6 */ mtlr r0 +/* 801D9728 001D6688 38 21 00 30 */ addi r1, r1, 0x30 +/* 801D972C 001D668C 4E 80 00 20 */ blr diff --git a/asm/text.s.REMOVED.git-id b/asm/text.s.REMOVED.git-id index b49ce129..4e30f810 100644 --- a/asm/text.s.REMOVED.git-id +++ b/asm/text.s.REMOVED.git-id @@ -1 +1 @@ -9d571e23b20f1bc92651650c5f3c644f4861a665 \ No newline at end of file +ba29e83f8974609636bc4350addd9f6786e029d5 \ No newline at end of file diff --git a/ldscript.lcf b/ldscript.lcf index 444d49a3..247a7d37 100644 --- a/ldscript.lcf +++ b/ldscript.lcf @@ -41,4 +41,5 @@ FORCEFILES uart_console_io.o mslsupp.o CBallFilter.o + CABSIdle.o } diff --git a/obj_files.mk b/obj_files.mk index 62d5a886..a46b5ccb 100644 --- a/obj_files.mk +++ b/obj_files.mk @@ -29,9 +29,9 @@ KYOTO_CWD :=\ $(BUILD_DIR)/asm/Kyoto_CWD/CAnimData.o\ $(BUILD_DIR)/asm/Kyoto_CWD/Factories/CCharacterFactory.o\ $(BUILD_DIR)/asm/Kyoto_CWD/Factories/CAssetFactory.o\ - $(BUILD_DIR)/asm/Kyoto_CWD/CTweakPlayer.o\ - $(BUILD_DIR)/asm/Kyoto_CWD/CTweaks.o\ - $(BUILD_DIR)/asm/Kyoto_CWD/CTweakGame.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Tweaks/CTweakPlayer.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Tweaks/CTweaks.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Tweaks/CTweakGame.o\ $(BUILD_DIR)/asm/Kyoto_CWD/CGameProjectile.o\ $(BUILD_DIR)/asm/Kyoto_CWD/Player/CPlayerGun.o\ $(BUILD_DIR)/asm/Kyoto_CWD/CStateManager.o\ @@ -45,20 +45,20 @@ KYOTO_CWD :=\ $(BUILD_DIR)/asm/Kyoto_CWD/CIOWin.o\ $(BUILD_DIR)/asm/Kyoto_CWD/CActor.o\ $(BUILD_DIR)/asm/Kyoto_CWD/CWorld.o\ - $(BUILD_DIR)/asm/Kyoto_CWD/CTweakParticle.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Tweaks/CTweakParticle.o\ $(BUILD_DIR)/asm/Kyoto_CWD/Clamp_int.o\ $(BUILD_DIR)/asm/Kyoto_CWD/CArchMsgParmControllerStatus.o\ $(BUILD_DIR)/asm/Kyoto_CWD/CExplosion.o\ $(BUILD_DIR)/asm/Kyoto_CWD/CGameCamera.o\ $(BUILD_DIR)/asm/Kyoto_CWD/CGameArea.o\ - $(BUILD_DIR)/asm/Kyoto_CWD/CSamusHud.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/HUD/CSamusHud.o\ $(BUILD_DIR)/asm/Kyoto_CWD/CAnimationDatabaseGame.o\ $(BUILD_DIR)/asm/Kyoto_CWD/CTransitionDatabaseGame.o\ - $(BUILD_DIR)/asm/Kyoto_CWD/CTweakPlayerControl.o\ - $(BUILD_DIR)/asm/Kyoto_CWD/CTweakPlayerGun.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Tweaks/CTweakPlayerControl.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Tweaks/CTweakPlayerGun.o\ $(BUILD_DIR)/asm/Kyoto_CWD/CPauseScreenBase.o\ $(BUILD_DIR)/asm/Kyoto_CWD/CPauseScreen.o\ - $(BUILD_DIR)/asm/Kyoto_CWD/CTweakGui.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Tweaks/CTweakGui.o\ $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptActor.o\ $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptTrigger.o\ $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptWaypoint.o\ @@ -68,8 +68,8 @@ KYOTO_CWD :=\ $(BUILD_DIR)/asm/Kyoto_CWD/CMapArea.o\ $(BUILD_DIR)/asm/Kyoto_CWD/CBallCamera.o\ $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptEffect.o\ - $(BUILD_DIR)/asm/Kyoto_CWD/CBomb.o\ - $(BUILD_DIR)/asm/Kyoto_CWD/CTweakBall.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Weapons/CBomb.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Tweaks/CTweakBall.o\ $(BUILD_DIR)/asm/Kyoto_CWD/Player/CPlayerState.o\ $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptTimer.o\ $(BUILD_DIR)/asm/Kyoto_CWD/CCinematicCamera.o\ @@ -85,12 +85,12 @@ KYOTO_CWD :=\ $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptGenerator.o\ $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptCameraWaypoint.o\ $(BUILD_DIR)/asm/Kyoto_CWD/CGameLight.o\ - $(BUILD_DIR)/asm/Kyoto_CWD/CTweakTargeting.o\ - $(BUILD_DIR)/asm/Kyoto_CWD/CTweakAutoMapper.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Tweaks/CTweakTargeting.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Tweaks/CTweakAutoMapper.o\ $(BUILD_DIR)/asm/Kyoto_CWD/CParticleGenInfoGeneric.o\ $(BUILD_DIR)/asm/Kyoto_CWD/CParticleGenInfo.o\ $(BUILD_DIR)/asm/Kyoto_CWD/CParticleDatabase.o\ - $(BUILD_DIR)/asm/Kyoto_CWD/CTweakGunRes.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Tweaks/CTweakGunRes.o\ $(BUILD_DIR)/asm/Kyoto_CWD/CTargetReticles.o\ $(BUILD_DIR)/asm/Kyoto_CWD/CWeaponMgr.o\ $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptPickup.o\ @@ -111,7 +111,7 @@ KYOTO_CWD :=\ $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptSpawnPoint.o\ $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptRandomRelay.o\ $(BUILD_DIR)/asm/Kyoto_CWD/Enemies/CBeetle.o\ - $(BUILD_DIR)/asm/Kyoto_CWD/CHUDMemoParms.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/HUD/CHUDMemoParms.o\ $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptHUDMemo.o\ $(BUILD_DIR)/asm/Kyoto_CWD/CMappableObject.o\ $(BUILD_DIR)/asm/Kyoto_CWD/Player/CPlayerCameraBob.o\ @@ -224,6 +224,107 @@ KYOTO_CWD :=\ $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptTargetingPoint.o\ $(BUILD_DIR)/asm/Kyoto_CWD/BodyState/CBSWallHang.o\ $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptEMPulse.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/HUD/CHudDecoInterface.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Weapons/CFlameThrower.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Weapons/CBeamProjectile.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CFluidPlaneCPU.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CFluidPlaneDoor.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptRoomAcoustics.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Enemies/CIceSheegoth.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CCollisionActorManager.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CCollisionActor.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptPlayerActor.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Tweaks/CTweakPlayerRes.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Enemies/CBurstFire.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Enemies/CFlaahgra.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Player/CPlayerEnergyDrain.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CFlameWarp.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Weapons/CIceImpact.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/GameObjectLists.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Weapons/CAuxWeapon.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Weapons/CPlayerGun.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptAreaAttributes.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Weapons/CWaveBuster.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Player/CStaticInterference.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Enemies/CMetroidBeta.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/PathFinding/CPathFindSearch.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/PathFinding/CPathFindRegion.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/PathFinding/CPathFindArea.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Weapons/GunController/CGunController.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Weapons/GunController/CGSFreeLook.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Weapons/GunController/CGSComboFire.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/HUD/CHudBallInterface.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Tweaks/CTweakGuiColors.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CFishCloud.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CHealthInfo.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Player/CGameState.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptVisorFlare.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptWorldTeleporter.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptVisorGoo.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Enemies/CJellyZap.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptControllerAction.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Weapons/GunController/CGunMotion.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptSwitch.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/BodyState/CABSIdle.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/BodyState/CABSFlinch.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/BodyState/CABSAim.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptPlayerStateChange.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Enemies/CThardus.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CActorParticles.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Enemies/CWallCrawlerSwarm.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptAiJumpPoint.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CMessageScreen.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Enemies/CFlaahgraTentacle.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Weapons/GunController/CGSFidget.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/BodyState/CABSReaction.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Weapons/CIceProjectile.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Enemies/CFlyingPirate.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptColorModulate.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CMapUniverse.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Enemies/CThardusRockProjectile.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CInventoryScreen.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CVisorFlare.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Enemies/CFlaahgraPlants.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CWorldTransManager.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptMidi.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptStreamedAudio.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CRagDoll.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Player/CGameOptions.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CRepulsor.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CEnvFxManager.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Weapons/CEnergyProjectile.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptGunTurret.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Weapons/CProjectileInfo.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CInGameTweakManager.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Enemies/CBabygoth.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Enemies/CEyeBall.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CIkChain.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptCameraPitchVolume.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/RumbleFxTable.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Enemies/CElitePirate.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CRumbleManager.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Enemies/CBouncyGrenade.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Enemies/CGrenadeLauncher.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Weapons/CShockWave.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Enemies/CRipperControlledPlatform.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Enemies/CKnockBackController.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Player/CWorldLayerState.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Enemies/CMagdolite.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Enemies/CTeamAiMgr.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Enemies/CSnakeWeedSwarm.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CBallCameraFailsafeState.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Enemies/CActorContraption.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptSpindleCamera.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptMemoryRelay.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CPauseScreenFrame.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CQuitGameScreen.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Enemies/CAtomicAlpha.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CLogBookScreen.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CGBASupport.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Player/CSaveWorld.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptCameraHintTrigger.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Enemies/CAmbientAI.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CMemoryCardDriver.o\ $(BUILD_DIR)/asm/text.o\ AI_FILES :=\